PCIeソリューションに向けた Arria V Avalon-MMインターフェイス: ユーザーガイド

ID 683773
日付 5/21/2017
Public
ドキュメント目次

6. エンドポイントの割り込み

PCI ExpressのAvalon-MMブリッジは、MSIまたはレガシー割り込みをサポートします。Completer-only Single Dwordバリアントには、INTX割り込みとMSI割り込みの両方を実装する割り込みハンドラーが含まれています。サポートには、割り込みレジスターと制御ロジックが実装されているCRAスレーブ・モジュールのインスタンスが必要です。

PCI Express Avalon‑MMブリッジは、Avalon‑MMの個別の要求割り込みをサポートします。つまり、複数の入力信号は受信する割り込み要求を示し、ソフトウェアは割り込みを同時に処理するために優先順位を決定する必要があります。

RXマスター・モジュール・ポートは、最大で16個のAvalon‑MM割り込み入力信号(RXmirq_irq[ <n> :0]を有します。この場合、<n> ≤15です。)を処理します。割り込み信号はそれぞれ、異なる割り込みソースを示します。これらの信号のいずれかをアサートする、あるいはPCI Express mailboxレジスターがアクセスを書き込むと、Avalon-MM to PCI Express Interrupt Statusレジスター内の1つのビットが設定されます。複数のビットを同時に設定することも可能です。この場合、ホスト側のアプリケーション層のソフトウェアが同時に受信する割り込み要求を処理する優先順位を決定します。Avalon-MM to PCI Express Interrupt Statusレジスター内の各ビットがイネーブルされている場合、ソフトウェアが順番を決定すると、PCI Express割り込みを生成します。ソフトウェアは、CRAスレーブを介してAvalon-MM to PCI Express Interrupt Enable Registerに書き込むことで、個々の割り込みをイネーブルすることが可能です。

割り込み入力信号がアサートされると、対応するビットがAvalon-MM to PCI Express Interrupt Status Registerに書き込まれます。ソフトウェアはこのレジスターを読み込み、要求された割り込みを処理する際の優先順位を決定します。

割り込みを処理した後、ソフトウェアは適切にサービスされた割り込みstatusビットをクリアし、他の割り込みが保留されていないことを確認する必要があります。Avalon-MM to PCI Express Interrupt Status RegisterのMailboxの書き込みによって発生した割り込みの場合、ステータス・ビットは、Avalon-MM to PCI Express Interrupt Status Register内でクリアすべきです。Avalon‑MMインターフェイスで受信する割り込み信号による割り込みの場合、割り込みステータスは、この割り込みを供給したAvalon‑MMコンポーネント内でクリアすべきです。このシーケンスは、割り込み要求が割り込みサービス中に損失されることを防止します。

図 28. PCI ExpressリンクへのAvalon-MM割り込みの伝播