エンベデッド・ペリフェラルIPユーザーガイド

ID 683130
日付 9/21/2020
Public
ドキュメント目次
1. 概要 2. Avalon® -ST Multi-Channel Shared Memory FIFOコア 3. Avalon® -STシングルクロックFIFOコアおよびデュアルクロックFIFOコア 4. Avalon® -STシリアル・ペリフェラル・インターフェイス・コア 5. SPIコア 6. SPI Slave to Avalon® Master Bridgeコア/JTAG to Avalon® Master Bridgeコア 7. インテル eSPIスレーブコア 8. eSPI to LPCブリッジコア 9. イーサネットMDIOコア 10. インテルFPGA 16550互換UARTコア 11. UARTコア 12. JTAG UARTコア 13. インテル FPGA Avalon® Mailboxコア 14. インテル FPGA Avalon® ミューテックス・コア 15. インテル FPGA Avalon® I2C (Master) コア 16. インテル FPGA I2C Slave to Avalon® -MM Master Bridgeコア 17. インテルFPGA Avalon® コンパクト・フラッシュ・コア 18. EPCS/EPCQAシリアル・フラッシュ・コントローラー・コア 19. インテルFPGAシリアル・フラッシュ・コントローラー・コア 20. インテルFPGAシリアル・フラッシュ・コントローラーIIコア 21. インテルFPGA汎用クアッドSPIコントローラー・コア 22. インテルFPGA汎用クアッドSPIコントローラーIIコア 23. インターバル・タイマー・コア 24. インテルFPGA Avalon FIFOメモリーコア 25. オンチップメモリー (RAMおよびROM) コア 26. Optrex 16207 LCDコントローラー・コア 27. PIOコア 28. PLLコア 29. DMAコントローラー・コア 30. Modular Scatter-Gather DMAコア 31. Scatter-Gather DMAコントローラー・コア 32. SDRAMコントローラー・コア 33. トライステートSDRAMコア 34. Video Sync GeneratorコアとPixel Converterコア 35. インテル FPGA Interrupt Latency Counterコア 36. パフォーマンス・カウンター・ユニット・コア 37. ベクトル割り込みコントローラー・コア 38. Avalon® -STデータ・パターン・ジェネレーター・コアとデータ・パターン・チェッカー・コア 39. Avalon® -STテスト・パターン・ジェネレーター・コアとテスト・パターン・チェッカー・コア 40. システムIDペリフェラル・コア 41. Avalon® Packets to Transactions Converterコア 42. Avalon® -STマルチプレクサー・コアとデマルチプレクサー・コア 43. Avalon® -ST Bytes to Packets ConverterコアとPackets to Bytes Converterコア 44. Avalon® -ST Delayコア 45. Avalon® -STラウンド・ロビン・スケジューラー・コア 46. Avalon® -ST Splitterコア 47. Avalon® -MM DDR Memory Half Rate Bridgeコア 48. インテル FPGA GMII to RGMIIコンバーター・コア 49. インテル FPGA MII to RMIIコンバーター・コア 50. インテルFPGA HPS GMII to TSE 1000BASE-X/SGMII PCSブリッジコア 51. インテル FPGA HPS EMAC to Multi-rate PHY GMIIアダプターコア 52. インテル FPGA MSI to GICジェネレーター・コア

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出力をマスクすることができます。

図 42.  インテル FPGA Avalon® Mailbox (simple) のブロック図

Mailboxは単一のソースによってクロックが提供されます。両方の Avalon® -MMスレーブ・インターフェイスには、FullビットとMessage Pendingビットを設定およびクリアする個別の機能があります。送信側プロセッサーの Avalon® -MMスレーブはStatusビットの設定のみを行い、受信側プロセッサーの Avalon® -MMスレーブではStatusビットのクリアのみを行います。

割り込みは、Statusレジスターのビットから派生します。また、Mailbox内のメッセージが読み出されるまでHighに維持されます。