sds_alloc() を malloc() に変更

この演習では、lab3 のソース ファイルで sds_alloc()malloc() に変更し、データ ムーバーがシンプル DMA からスキャッター ギャザー DMA に変更されることを確認します。

  1. [Project Explorer] タブで src フォルダーの下の main.cpp をダブルクリックし、ソース エディター ビューで開きます。
  2. バッファーが sds_alloc() で割り当てられている行をすべて検索して、sds_alloc()malloc() に置き換えます。また、すべての sds_free() 呼び出しも free() に置換します。
  3. ファイルを保存します。
  4. プロジェクトの最上位フォルダーを右クリックして、[Clean Project] をクリックします。
  5. プロジェクトの最上位フォルダーを右クリックして、[Build Project] をクリックします。
    重要: ビルド プロセスが完了するまでに、約 5 ~ 10 分かかります。
  6. ビルドが完了したら、[Project Explorer] タブで Release/_sds/reports/data_motion.html をダブルクリックして開きます。
  7. 一番右の [Connection] 行に、行列乗算の入力配列に割り当てられた DMA のタイプ (AXIDMA_SG = スキャッター ギャザー DMA) と使用された Processing System 7 IP ポート (S_AXI_ACP) が示されます。[Accelerator Callsites] の表には、各転送に使用されるメモリ割り当てが連続なのか、ページなのかが示されます。

  8. 手順 2 の変更をすべて取り消して、ファイルを保存します。