AR# 5193

LogiCORE PCI - マスタ アボートの処理について

説明

キーワード : master, abort, PCI, abnormal, termination, マスタ, 停止, 終了, マスタ アボート, 異常

重要度 : 標準

概要 :
LogiCORE インターフェイスでは、マスタ アボートはどのように処理されますか。

ソリューション

マスタは、トランザクションが完了すると、PCI トランザクションを終了します。また、マスタの GNT# ラインがアサート解除され、内部レイテンシのタイマが時間切れになると、タイムアウトが使用される場合があります。

マスタ側から停止されるのは、FRAME# がアサート解除され、IRDY# がアサートされた場合です。 この状態になると、最後のデータ フェーズが行われていることがターゲットに通知されます。 最後のデータ フェーズは、IRDY# および TRDY# の両方がアサートされた場合に行われます。 FRAME# および IRDY# がアサート解除されると (アイドル状態)、トランザクションが完了します。

また、ターゲットからの応答がない場合にも、マスタ側からトランザクションが終了されます。 これは、「マスタ アボート」と呼ばれます。 通常、マスタが FRAME# 信号をアサートし、アドレスを AD 信号ラインに駆動すると、ターゲットの 1 つが指定のクロック サイクル以内に DEVSEL# 信号をアサートし、アクセス サイクルを要求します。 マスタがトランザクションを終了するのは、一番早い場合で FRAME# がアサートされていることが最初に確認されてから 5 サイクル後です。 これ以上長くすることも可能で、マスタ アボートも含め、すべてのトランザクションで FRAME# と IRDY# の関係をサポートすることが必要です。 ターゲットから応答がない場合、アクセスのターゲットが要求されたトランザクションを処理できない、またはアドレスが不正でトランザクションを繰り返してはならないことが、マスタで想定される必要があります。

マスタ アボートでトランザクションが終了した場合、ホスト バス ブリッジは読み出しトランザクションに対してはすべて 1 を返し、書き込みトランザクションに対してはデータをすべて破棄しなければなりません。 ブリッジでは、ステータス レジスタのマスタ アボート検出ビットがセットされます。 マスタがデバイス ドライバを介してエラーをレポートできない場合、ほかのマスタ デバイスで SERR# 信号が送信され、この状態をエラーとしてレポートする場合があります。

LogiCORE PCI は、指定されたターゲットから DEVSEL_IO が受信されなければ、FRAME_IO をアサート解除します。

LogiCORE イニシエータは、開始したトランザクションに対してマスタ アボートを受信すると、ビット CSR[29] をセットします。 また、PCI バスでマスタ アボートが検出されると、指定されたターゲットがトランザクション要求に応答しないと判断し、クロック サイクルで CSR[39] をアサートします。 LogiCORE インターフェイスはこの情報を使用し、マスタ アボートが発生したことを示す信号をステート マシンに送信します。
AR# 5193
日付 12/15/2012
ステータス アクティブ
種類 一般