Main Content

カスタム IP コアの生成

HDL ワークフロー アドバイザーを使用し、モデルまたはアルゴリズムからカスタム IP コアを生成できます。生成された IP コアは共有や再利用が可能です。IP コアを大規模な設計に統合するには、Intel® Qsys、Xilinx® EDK、Xilinx IP インテグレーターなどの組み込みシステム統合環境で IP コアを追加します。

カスタム IP コアを生成する方法は、次を参照してください。

カスタム IP コアのアーキテクチャ

IP コアは次の方法で生成できます。

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を参照してください。

関連する例

詳細