インテル® FPGA SDK for OpenCL: カスタム・プラットフォーム・ツールキット・ユーザーガイド

ID 683085
日付 10/31/2016
Public
ドキュメント目次

2.3.13. aocl_mmd_reprogram

aocl_mmd_reprogram関数は、指定されたデバイスでの再プログラム動作です。
ホストは、再プログラム動作中に他のOpenCL™動作がデバイス上で実行されていないことを保証していなければなりません。aocl_mmd_reprogramの実行中、カーネルはアイドル状態であり、読み取り、書き込み、およびコピー動作は実行できません。

割り込みを無効にし、size引数で指定されたサイズを持つuser_dataからのデータを使用して FPGA を再プログラミングします。次に、ホストは、aocl_mmd_set_status_handlerおよびaocl_mmd_set_interrupt_handlerを再度コールし、割り込みを有効にします。 aocl_mmd_reprogramの実行中に割り込みなどのイベントが生じると、競合状態またはデータ破損が発生する可能性があります。

構文

int aocl_mmd_reprogram( int handle,
                        void* user_data,
                        size_t size );

関数の引数

  1. handleaocl_mmd_open()コールで入手したボードへのハンドルを表す正のint値です。

  2. user_data—コンパイル中に作成されるfpga.binファイルのvoid*型のバイナリー内容です。

  3. sizeuser_dataのバイト単位のサイズです。size 引数はsize_tです。

戻り値

aocl_mmd_reprogramが正常に実行された場合、戻り値はホストが共有メモリーへのアクセスに使用するポインターの値です。