主要内容

リファレンス設計の合成を高速化するためのIP地址キャッシュ

[ipコアの生成]ワ,クフロ,をXilinx®Vivado®でサポ,トするタ,ゲットプラットフォ,ムでは,ipキャッシュを使用できます。IPキャッシュは多数のIPモジュールを含むか,合成実行時間が長時間のIPモジュールを含むリファレンス設計の合成時間を短縮します。IPキャッシュを有効にすると,Vivadoプロジェクトで留下(OOC)ワークフローが使用されます。このワ,クフロ,は最上位の設計のコンテキストからリファレンス設計でIPを合成します。OOCワークフローは,合成ツールがIPキャッシュを再利用し,ワークフローの実行時にIPを再合成する必要がないため,プロジェクトの実行を高速化します。

IPキャッシュを有効にしない場合,既定の設定でVivadoプロジェクトはグローバル合成フローを使用します。このフロは最上位の設計と共にリファレンス設計でIPモジュルを合成します。後続のプロジェクト実行において,このワークフローはリファレンス設計でIPモジュールを再合成します。

IPキャッシュを使用する場合の要件

  • タゲットワクフロ

    • IPコアの生成

    • Xilinx Vivadoを使用するSpeedgoatボ,ドの金宝appSimulink实时FPGA I/O

  • 合成ル: Xilinx Vivado

IPキャッシュとは

IPキャッシュとは,リファレンス設計のIPモジュールに対応するサブフォルダーで構成されるフォルダーのことです。各サブフォルダはファル名に対応するハッシュンデックスで整理されます。各IPモジュールのサブフォルダーは,Xilinx核心实例(XCI)ファイル,设计检查点(DCP)ファイル,合成ログファイルで構成されます。DCPとは,合成されたネットリスト,ブラックボックスHDLのスタブファイル,出力クロック制約が含まれるコンテナーファイルのことです。

ワークフローの実行時にIPキャッシュを再利用するには,IP合成がIPキャッシュのハッシュインデックスと一致しなければなりません。一致したハッシュesc escンデックスはIPキャッシュのヒットに対応します。後続の実行でIPキャッシュにヒットするには,以下にいて同じものを使用します。

  • 部分,言語,タ,ゲットプラットフォ,ム設定

  • リファレンス設計のバ,ジョン

  • タ,ゲット周波数

  • IPキャッシュ作成時のhdl_prjフォルダ

IPキャッシュの動作

IPキャッシュを有効にすると,Xilinx Vivadoプロジェクトで留下(OOC)ワークフローが使用されます。Ooc設計フロ,は,次を行うボトムアップワ,クフロ,です。

  1. 最上位の設計とは別にリファレンス設計でIPモジュ,ルを合成します。合成出力はDCP (Design Checkpoint)ファaapl .ルです。

  2. 最上位の設計を合成するときに,リファレンス設計でDCPで提供されたHDLスタブファイルを使用してIPをブラックボックスとして処理します。

  3. IP設計チェックポイントファイルのネットリストを最上位のネットリストにリンクし,ターゲットデバイスに設計を実装します。

設計を変更してワークフローを実行する際にIPを再合成する必要がないため,大規模なリファレンス設計ではOOCフローによって合成実行時間が短縮されます。OOCワークフローとIP合成オプションの詳細については,Xilinxのドキュメンテーションを参照してください。

IPキャッシュの有効化

IPキャッシュを有効にする前に,タ,ゲットワ,クフロ,として[ipコアの生成]を指定してから,タ,ゲットプラットフォ,ム設定を指定します。IPキャッシュを有効にするには,次を行います。

  • HDLワクフロアドバザの[プロジェクトを作成]タスクで,[ipキャッシュの有効化]チェックボックスをオンにします。

  • コマンドラ@ @ンでhdlcoder。WorkflowConfigクラスのEnableIPCachingプロパティを使用します。このプロパティを使用するには,hdlcoder。WorkflowConfigクラスのオブジェクトを作成するか,高密度脂蛋白ワークフローアドバイザー設定をスクリプトにエクスポートします。

    hWC = hdlcoder。WorkflowConfig (“SynthesisTool”“Xilinx Vivado”“TargetWorkflow”“IP核一代”);%……%……中国。EnableIPCaching = true;

高密度脂蛋白编码器リファレンス設計のIP地址キャッシュ

合成時間が長い大規模なリファレンス設計ではIP地址キャッシュを使用します。たとえば,HDL Coder™リファレンス設計默认视频系统(需要HDMI FMC模块)はIP地址キャッシュを使用する有力候補です。

メモ

金宝appSimulink实时FPGA I/Oワ,クフロ,で使用するSpeedgoat io333 - 325 kボドにはIPキャッシュが付属しています。ワークフローの初回実行時にコードジェネレーターはこのIPキャッシュを再利用するため,リファレンス設計の合成時間が短縮されます。

IPキャッシュを有効にするには,hdlワクフロアドバザで[ipコアの生成]をタゲットワクフロとして指定してから,タゲットプラットフォム設定を指定します。ワ,クフロ,をはじめて実行する前に,次を行います。

  1. [プロジェクトを作成]タスクで,[ipキャッシュの有効化]チェックボックスをオンにします。

    このタスクを実行すると,ワ,クフロ,によって空のIPキャッシュフォルダ,が作成されます。ipcacheフォルダ,はhdl_prj / vivado_ip_prjパスで確認できます。

  2. [fpgaビットストリ.ムのビルド]タスクを実行します。

    このタスクにより,合成ログとHDL IPコアに生成された設計チェックポイントファイルやリファレンス設計のその他のIPブロックがIPキャッシュフォルダーに取り込まれます。このタスクが正常に実行されると,生成されたファipcacheフォルダ,で確認できます。

IP核生成ワ,クフロ,を2度目に実行すると,[fpgaビットストリ.ムのビルド]タスクでタスクの実行時間が短縮されたことを確認できます。ワ,クフロ,の初回実行時と同じIP設定とhdl_prjフォルダ,を必ず使用してください。このタスクが正常に実行された際にワークフローがIPキャッシュを再利用したかどうかを確認するには,workflow_task_buildFPGABitstream.logファ@ @ルを開きます。

このコードの抜粋には,Vivadoプロジェクトがジョブの最大数を起動して設計を合成し,IPキャッシュフォルダー内のIPモジュールを再利用したことが示されます。IPモジュ,ルのcacheIDipcacheフォルダ内のサブフォルダのファル名と一致することを確認できます。

...# reset_run impl_1 # reset_run synth_1 # launch_runs -jobs 4 synth_1 ... ... ...[IP_Flow 19-4760] Using cached IP synthesis design for IP system_top_RGBtoYCbCr_0_0, cacheID = 3575924730488800 INFO: [IP_Flow 19-4760] Using cached IP synthesis design for IP system_top_YCbCrtoRGB_0_0, cacheID = e71459f41e26e141 INFO: [IP_Flow 19-4760] Using cached IP synthesis design for IP system_top_xbar_0, cacheID = d0f0971cb77bcaed INFO: [IP_Flow 19-4760] Using cached IP synthesis design for IP system_top_axis2hdmi_0_0, cacheID = 7601a322f9fdd0ec4…

カスタムリファレンス設計のIP地址キャッシュ

独自のカスタムリファレンス設計を使用する場合,はじめてワークフローを実行するときにIPキャッシュでリファレンス設計の合成を高速化できます。IPキャッシュを再利用するには,IPキャッシュのzipファイルを作成してから,リファレンス設計定義ファイルがこのzipファイルを指していることを確認します。

IPキャッシュのzipファaaplルを作成するには,次を行います。

  1. DUTサブシステムをも任意のSim金宝appulink®モデルに対してHDLワクフロアドバザを開き,[rtlコドとIPコアの生成]タスクに対する[ipコアの生成]ワ,クフロ,を実行します。

  2. [プロジェクトを作成]タスクで,[ipキャッシュの有効化]チェックボックスをオンにしてから,[このタスクを実行]をクリックします。このタスクにより空のIPキャッシュフォルダ,が作成されます。

  3. [fpgaビットストリ.ムのビルド]タスクに対するワ,クフロ,を実行します。このタスクによりHDL IPコアとリファレンス設計のIPモジュールがIPキャッシュに取り込まれます。

  4. IPキャッシュフォルダで,dutに生成されたIPコアファルを削除します。このフォルダの残りのファルを1のzipファルにして,ipcache.zipと名前を付けてから,リファレンス設計フォルダ,にファ,ルを保存します。

IPキャッシュを再利用するには,リファレンス設計の定義ファ化学键ルplugin_rd.mhdlcoder。ReferenceDesignクラスのIPCacheZipFileプロパティを使用します。そのプロパティを使用し,ipcache.zipファaapl . exeルをXilinx Vivadoプロジェクトに追加します。

函数hRD = plugin_rd(%参考设计定义hRD = hdlcoder。ReferenceDesign(“SynthesisTool”“Xilinx Vivado”);%……%……hRD。IPCacheZipFile =“ipcache.zip”
カスタムリファレンス設計をタゲットとするワクフロを使用すると,コドジェネレタは[ipキャッシュの有効化]チェックボックスをオンにします。合成時間が短縮されたことを確認するには,[fpgaビットストリ.ムのビルド]タスクを実行します。

参考

|

関連するトピック