カスタム IP コアの生成
HDL ワークフロー アドバイザーを使用し、モデルまたはアルゴリズムからカスタム IP コアを生成できます。生成された IP コアは共有や再利用が可能です。IP コアを大規模な設計に統合するには、Intel® Qsys、Xilinx® EDK、Xilinx IP インテグレーターなどの組み込みシステム統合環境で IP コアを追加します。
カスタム IP コアを生成する方法は、次を参照してください。
カスタム IP コアのアーキテクチャ
IP コアは次の方法で生成できます。
AXI4 または AXI4-Lite インターフェイスを使用。
AXI4 または AXI4-Lite インターフェイスと AXI4-Stream Video インターフェイスを使用。
AXI4 または AXI4-Lite インターフェイスを使用しない。詳細については、ボードに依存しない HDL IP コアの Simulink モデルからの生成を参照してください。
MATLAB および Simulink のアルゴリズムのブロックが DUT を表します。ターゲット プラットフォーム インターフェイスの設定とプロセッサまたは FPGA の同期モードに基づいて、HDL Coder™ により IP コアの残りの部分が生成されます。
ターゲット プラットフォーム インターフェイス
DUT 内の各端子は、IP コアにある次のターゲット プラットフォーム インターフェイスのいずれかにマッピングできます。
AXI4-Lite: このインターフェイスは、制御レジスタへのアクセスや少量のデータ転送に使用します。HDL Coder はメモリマップド レジスタを生成し、端子のアドレス オフセットを割り当てます。AXI4 スレーブ インターフェイスの生成のための設計のモデル化を参照してください。
AXI4: このインターフェイスは、データのバースト転送をサポートするコンポーネントに接続するために使用します。HDL Coder はメモリマップド レジスタを生成し、端子のアドレス オフセットを割り当てます。生成された HDL IP コアには、AXI4 インターフェイスまたは AXI4-Lite インターフェイスを設定できますが、両方のインターフェイスを設定することはできません。AXI4 スレーブ インターフェイスの生成のための設計のモデル化を参照してください。
AXI4-Master: このインターフェイスは、外部メモリからの大規模なデータ セットへのアクセスを必要とする設計で使用します。詳細については、AXI4 Master インターフェイスを生成するためのモデル設計を参照してください。
AXI4-stream: このインターフェイスは、高速データ転送を必要とする設計で使用します。AXI4-Stream インターフェイス生成向けのモデル設計を参照してください。
AXI4-Stream Video: このインターフェイスは、32 ビットのスカラー ビデオ データ ストリームを送受信する場合に使用します。AXI4-Stream Video インターフェイス生成向けのモデル設計を参照してください。
External ports: 外部端子は、FPGA 外部 IO ピンや、外部端子がある別の IP コアに接続する場合に使用します。
FPGA データの取得: JTAG またはイーサネット インターフェイスを介した FPGA Data Capture は、FPGA での設計の実行中にテスト ポイント信号と DUT 出力端子の信号を観察するために使用します。内部信号をテスト ポイントとしてマークする例については、FPGA Data Capture を使用した IP コアのデバッグを参照してください。データの取得の詳細については、データキャプチャワークフロー (HDL Verifier)を参照してください。
メモ
このインターフェイスを使用するには、FPGA ボード用のハードウェア サポート パッケージをダウンロードしなければなりません。FPGAボードサポートパッケージをダウンロード (HDL Verifier)を参照してください。
AXI4、AXI4-Lite および AXI4-Stream Video のプロトコルの詳細については、ターゲット ハードウェアのドキュメンテーションを参照してください。複数の AXI4-Stream インターフェイスおよび AXI4 Master インターフェイスを追加し、複数のインターフェイスをもつ IP コアを生成するには、複数の AXI4-Stream および AXI4 Master インターフェイスを使用した HDL IP コアの生成を参照してください。
プロセッサと FPGA の同期
選択したプロセッサおよび FPGA の同期モードに基づいて、HDL Coder が IP コアの同期ロジックを生成します。
カスタム IP コアを生成する場合、次のプロセッサおよび FPGA の同期オプションを使用できます。
フリー ラン
(既定の設定)コプロセッシング - ブロック
詳細については、プロセッサと FPGA の同期を参照してください。
カスタム IP コアにより生成されたファイル
カスタム IP コアを生成すると、IP コア ファイルがプロジェクト フォルダー内の ipcore
フォルダーに配置されます。IP コア フォルダーの名前は、HDL ワークフロー アドバイザーの [HDL コード生成] 、 [RTL コードと IP コアの生成] タスクにある [IP コア フォルダー] フィールドに表示されます。
IP コア フォルダーには以下が含まれます。
IP コア定義ファイル。
HDL ソース ファイル (
.vhd
または.v
)。レジスタ アドレス マップがある C ヘッダー ファイル。
(オプション) IP コアの使用と組み込みシステム プロジェクトへの統合手順が記載された HTML レポート。
タイミング要件を満たすためにマルチサイクル パス制約を使用する場合、Xilinx ワークフローの場合は XDC 形式 (
.xdc
)、Intel ワークフローの場合は SDC 形式 (.sdc
) の制約ファイルが HDL Coder によって生成されます。
制限
IP コアの生成ワークフローでは、[クロック イネーブルを使用しない汎用 RAM]
に設定されている [RAM アーキテクチャ] はサポートされていません。
クロック ドメイン クロッシング (CDC) を無効にした場合、IP コアと AXI インターフェイスに異なるクロックを使用できません。IPCore_Clk
および AXILite_ACLK
は同期していて、同じクロック ソースに接続されていなければなりません。IPCore_RESETN
および AXILite_ARESETN
は、同じリセット ソースに接続されていなければなりません。グローバル リセット信号の IP コア クロック領域への同期を参照してください。CDC を有効にした場合、IP コアと AXI インターフェイスに異なるクロックを接続できます。CDC の詳細については、Enable Clock Domain Crossing on AXI4-Lite Interfacesを参照してください。
関連する例
- Access DUT Registers on Xilinx Pure FPGA Board Using IP Core Generation Workflow
- Access DUT Registers on Intel Pure FPGA Board Using IP Core Generation Workflow