インテルのみ表示可能 — GUID: iga1431722470159
Ixiasoft
インテルのみ表示可能 — GUID: iga1431722470159
Ixiasoft
13.2. 機能の説明
インテル FPGA Avalon® Mailboxは、プロセッサー間のメッセージの受け渡しにCommandレジスター (0x0) とPointerレジスター (0x1) の2つの32ビット・レジスターを提供します。メッセージ送信側のプロセッサーとメッセージ受信側のプロセッサーには、Mailboxコンポーネントへの個別の Avalon® Memory Mapped ( Avalon® -MM) インターフェイスがあります。送信側のプロセッサーがCommandレジスターに書き込むと、Mailbox内の保留中のメッセージが示され、受信側のプロセッサーに割り込みが発行されます。受信側のプロセッサーが読み出しトランザクションを介してメッセージを取得すると、メッセージは消費され、Mailboxは空になります。Statusレジスター (0x2) を使用し、Mailboxがフルの状態か空の状態かを示します。
メッセージを受信する、もしくは送信側のインターフェイスとして識別されるMailbox Avalon® -MMインターフェイスは、Mailboxに保留中のメッセージがある場合、送信元にバックプレッシャーを行います。これにより、Mailboxに渡されるすべてのメッセージが上書きされないようにしています。メッセージが到着すると、受信側のプロセッサーはMailboxからレベル割り込みを受信します。割り込みは、単一のメッセージが受信側のプロセッサーの Avalon® -MMインターフェイスを介してMailboxから取得されるまでHighに保持されます。
さらに、Interrupt Masking Register (0x3) を Avalon® -MMインターフェイスによって書き込み、専用の割り込み出力をマスクすることが可能です。例えば、受信側のインターフェイスでマスクビットを設定し、Mailboxによって生成されるMessage Pending Interruptをマスクすることができます。また、送信側のインターフェイスでは、マスクビットを設定してMessage Space Interrupt出力をマスクすることができます。
Mailboxは単一のソースによってクロックが提供されます。両方の Avalon® -MMスレーブ・インターフェイスには、FullビットとMessage Pendingビットを設定およびクリアする個別の機能があります。送信側プロセッサーの Avalon® -MMスレーブはStatusビットの設定のみを行い、受信側プロセッサーの Avalon® -MMスレーブではStatusビットのクリアのみを行います。
割り込みは、Statusレジスターのビットから派生します。また、Mailbox内のメッセージが読み出されるまでHighに維持されます。