2.3.1. aocl_mmd_get_offline_info
2.3.2. aocl_mmd_get_info
2.3.3. aocl_mmd_open
2.3.4. aocl_mmd_close
2.3.5. aocl_mmd_read
2.3.6. aocl_mmd_write
2.3.7. aocl_mmd_copy
2.3.8. aocl_mmd_set_interrupt_handler
2.3.9. aocl_mmd_set_status_handler
2.3.10. aocl_mmd_yield
2.3.11. aocl_mmd_shared_mem_alloc
2.3.12. aocl_mmd_shared_mem_free
2.3.13. aocl_mmd_reprogram
2.1. ボード Qsys サブシステム
ボード・ハードウェアでデザインする際、すべての非カーネルロジックを含むトップレベルの Qsys システム (system.qsys) 内に Qsys サブシステムを作成するオプションがあります。
ボード Qsys サブシステムは、新しいアクセラレーター・ボードにおいてメイン・デザイン・エントリー・ポイントです。OpenCL™ホストのインスタンス化とグローバルメモリーのインターフェイスが行われる場所です。ボードデザインは、外部メモリーの最小 128 KB ( キロバイト ) を有します。すべてのAvalon® メモリーマップド (Avalon-MM) スレーブ・インターフェイス ( ブロック RAM など ) は、潜在的にメモリー・インターフェイスになり得ます。
下の図は、ボードシステムの実装を詳しく示しています。
注: アスタリスク (*) で示されたブロックは、ボード Qsys サブシステムに追加する必要があるブロックです。
OpenCL ホスト通信インターフェイスとグローバルメモリー・インタフェースは、ボードシステムのメイン・コンポーネントです。MMD ( メモリー・マップド・デバイス ) レイヤーは、何らかの媒体を介して、この Qsys システムのインスタンス化された IP (Intellectual Property) コアと通信します。
例えば、MMD レイヤーはPCI Express® (PCIe®) ベースのホスト・インターフェイス上で実行され、ホスト・インターフェイスは FPGA 上の インテル® PCIe エンドポイントから Avalon インターフェイスの要求を生成します。
ボード Qsys サブシステム内では、OpenCL カーネルで使用可能なグローバルメモリー・システムを定義することもできます。グローバルメモリー・システムは異なるタイプのメモリー・インターフェイスから構成されています。各メモリータイプは、1、2、4、または 8 バンクの物理メモリーで成っています。すべての特定のメモリータイプのバンクは、バイトで同じサイズで、同等のインターフェイスを有していなければなりません。万一、ストリーミング I/O がある場合は、Qsys システムに対応する IP もボード 含める必要があります。加えて、チャネル・インターフェイスを記述するために、board_spec.xmlファイルを更新しなければなりません。