インテル上位レベルのシンセシス・アクセラレーター機能ユニットのデザイン例のユーザーガイド

ID 683025
日付 11/30/2018
Public
ドキュメント目次

3. HLS AFUデザイン例のコンポーネントの変更

別のHLSアクセラレーターをこのAFUに置き換えて、独自のHLSアクセラレーターを作成できます。 このプロシージャーは、fpVectorReduce_floatコンポーネントをfpVectorReduce_ac_intコンポーネントに置き換えます。
ご使用になる前に インテルは代替HLSコンポーネントを提供しているため、これらの手順はこのタスクには必要ありません。
  1. HLS AFU Avalon-MM I/OスレーブおよびHLS AFU Avalon-MMマスターインターフェイスの要件を満たすHLSコンポーネントを作成します。HLS AFU Avalon-MM I/Oスレーブ・インターフェイスおよびHLS AFU Avalon-MMマスター・インターフェイスを参照してください。
  2. i ++コマンドでRTLを生成します。
  3. 新しいAFUの新しいUUIDを作成します。 Accelerator Functional Unit(AFU)開発者ガイドを参照してください。
図 5. ディレクトリー構造とファイルこの図は、編集できるファイルのみを示しています。

STEPS

  1. qsysフォルダーに移動し、Platform Designer v17.1.1でシステムを開きます。
    $ qsys-edit hls_afu_container.qsys
  2. hls_afu_container.qsysを編集するには、 Create New Quartus Projectをクリックして インテル® Quartus® Primeプロジェクトを作成します。
    図 6. 新しいQuartusプロジェクト
  3. quartus_tempというフォルダーにquartus_temp_prjプロジェクトを作成します。
  4. Open SystemウィンドウでOpenをクリックします。 
    図 7. Open System
  5. コンポーネントの新しいUUIDを作成した場合、 afu_id_avmm_slaveコンポーネントに入力します。
    図 8. UUID
  6. fpVectorReduce_floatコンポーネントを右クリックし、Removeをクリックして削除します。
    図 9. コンポーネントの削除
  7. Delete IP Variantダイアログで、Noをクリックして、Platform DesignerがfpVectorReduce_float IPファイルを削除しないようにします。
  8. IP CatalogfpVectorReduce_ac_intコンポーネントをダブルクリックして追加します 。
    図 10. コンポーネントの追加
  9. Component Instantiationウィンドウで、 hls_outputsフォルダーの前にあるすべてのテキスト(先頭の「/」を含む)を削除します。
    このテキストを削除すると.qsys.ipファイルへの相対パスを提出できますので、別のファイルシステムに安全にお使いAFUプロジェクトを移動することができます。
    図 11. 相対パス
  10. HLSコンポーネントを接続します。
    コンポーネントのAvalon-MMスレーブのベースアドレスを0x0040に設定して、HLSコンポーネントとAFU Idスレーブが同じメモリースペースを共有し、ホスト・アプリケーションが両方にアクセスできるようにしてください。
    図 12. ベース・アドレスを設定する
  11. Sync System Infoをクリックして、Platform Designerシステムを更新します。 Platform Designerウィンドウの下部に、成功を示すメッセージが表示されます。 
  12. アクセラレーション・スタック のコンフィグレーション・ファイルfilelist.txtおよびhls_afu.jsonを変更して、AFUを構成します。
    これらのファイルの例については、 アクセラレーション・スタック のコンフィグレーション・ファイルfilelist.txtおよびhls_afu.jsonを参照してください。
  13. ホスト・アプリケーションを変更して、HLSによって生成されるAvalon-MMスレーブ・レジスター・マップを含めます。
    1. test-fpga.prj/components/fpVectorReduce_ac_int/fpVectorReduce_ac_int_csr.hヘッダーファイルをホスト・アプリケーション・プロジェクトにコピーします。
    2. hls_afu_host.cに、 fpVectorReduce_float_csr.hの代わりにfpVectorReduce_ac_int_csr.hを含めます。また、 fpVectorReduce_floatレジスターへの参照をfpVectorReduce_ac_intレジスターへの参照に置き換えます。
WHAT TO DO NEXT
  1. ASEテストベンチを生成します。 ASEテストベンチの生成を参照してください。
  2. AFビットストリームをコンパイルします。 AFビットストリームのコンパイルを参照してください。