生産用基板へのデザインのリターゲティング

Application Note AP0104 (v2.0) February 28, 2008

このアプリケーションノートは、合成に必要なコンフィギュレーションファイルと制約条件ファイルの情報を追加するプロセスや、ベンダの配置配線ツールの実行について説明しています。
デザインが回路図や VHDL のソースファイルとしてキャプチャされた後、最初にしておきたいのは、合成できるかどうか そして、配置配線を 実行できるかどうかです。

デザインをボードにターゲッティングするときに必要なものは何か?

回路図や VHDL にキャプチャされたデザインはサーキットの動作を決定します。 このデザインをさらに大規模なPCBデザインの一部として FPGA にマッピングするには、必要なインプリメンテーション情報をすべて追加しなくてはなりません。 追加が必要な情報は以下のとおりです。

  • ターゲットPCBのプロジェクト
  • ターゲットFPGA
  • FPGA のネットからフィジカルデバイスへの ピンの割り付け
  • ピンのコンフィギュレーション情報、出力電圧設定
  • デザインタイミングの制約条件、特定のネットを特別なFPGA ピンの機能に割り付けする、など。
  • FPGA 配置配線の制約条件.

デザイン内のネットをFPGAのピンにどのように接続するか

FPGA 上の物理的なピンに接続したいどのネットも、トップ回路図シート上のポートに接続されている必要があります。 デザインがコンパイルされる際には、トップシートがスキャンされ、ポートに接続されているすべてのネットがFPGA上の物理的なピンに接続されているものとみなされます。
FPGA デザインでは、これらの接続ポイントはポートと呼ばれることもあります。 ポートは回路図で定義されますが、割り付けられているピンは制約条件ファイルでファイルで定義されています。
ネット(やバス)を物理的ピン(またはピンセット)に接続するものとして特定するためにポートを配置する場合と同じく、PortComponent = True のパラメータを含んでいるコンポーネントも利用できます。 デザインが合成されると、ポートコンポーネント 内のそれぞれのピンがポートに変換されます。ポート名はピンのデジグネータ(識別子)と同じになります。

インプリメンテーション情報はどのように含められるか

合成に必要な最小の制約条件の情報はデバイスの仕様です。インプリメンテーション情報は 制約条件 ファイルの中にあります。 制約条件ファイルは、制約条件レコードのセットであり、各レコード(あるいは制約条件のグループ)が1つまたは複数の制約条件を定義、FPGA プロジェクト内のターゲットに適応されます。 制約条件のファイルシステムには、この種の情報をすべて、単一の制約条件ファイルに収める方式と、複数のファイルに分割する方式とがあります。
ソースドキュメントと同じく、制約条件ファイルはプロジェクトに追加されます。 その後、適切な コンフィギュレーション を作成することで FPGA プロジェクトにマッピングされます。コンフィギュレーションは、FPGA デザインをターゲットインプリメンテーションに(PCB上の実際のデバイスに)マッピングするための制約条件のセットです。
コンフィギュレーションと制約条件ファイルについての詳細は、Design Portability, Configurations and Constraints を参照してください。
制約条件のシンタックスについての詳細は、Constraint File Reference を参照してください。

制約条件ファイルの作成とデバイスの指定

  1. 新しい制約条件ファイルをプロジェクトに追加するには、Projects パネルのプロジェクト名の上で右クリックし、表示されるメニューから Add New to Project » Constraint File を選択します。
  2. 新しい制約条件ファイルが表示されます。 ターゲットデバイスを指定するには、制約条件ファイルのエディタメニューから Design » Add/Modify Constraint » Part を選択します。 Choose Physical Device ダイアログが表示されます。ここから、必要なターゲットデバイスを閲覧、選択することができます。 選択したら OK をクリックします。レコードが制約条件ファイルに追加されて、次のようにデバイスが指定されます。

Record=Constraint | TargetKind=Part | TargetId=XC2S300E-6PQ208C

  1. 制約条件ファイルを保存します。 一般的には、その役割を反映した名前がつけられます。例えば、ターゲットデバイスが Altera Cyclone 搭載のプロジェクトPCBの場合、制約条件ファイルの名前には MyProject_Cyclone.Constraint が考えられます。

制約条件ファイル内のFPGAピンへのネットの割り付け

ネット(やポート)から物理的ピンへの割り付けについても、制約条件ファイルに定義しておく必要があります。 主導で割り付けを定義することができます。また、配置配線ツールに割り付けを定義させ、それを制約条件ファイルにインポートすることもできます。
一般的には、割り付けをしたい任意のポートが存在して、それがクロックネットだったら、配置配線プロセスには残りの割り付けをやらせます。 FPGAがPCB上に配置された後でも、ピン割り付けを変えることができるので、PCBの配線とFPGAプロジェクトに対するバックアノテーションの変化を最適化できます。

  1. 制約条件ファイルに追加ポートを割り付けるには、Design » Import Port Constraints from Project を制約条件エディタメニューから選択します。 制約条件レコードが、FPGA プロジェクト内のそれぞれのポートに追加されます。 このステージでは、実際のピンはポートに割り付けされません。
  2. 手動でポートをFPGA ピンに割り付けするには、制約条件ファイル FPGA_PINNUM をレコードに追加してください。 例えば、CLK_REF をザイリンクスデバイスのピン185に割り付けするには、制約条件は次のようになります。

Record=Constraint | TargetKind=Port | TargetId=CLK_REF | FPGA_PINNUM=P185

  1. クロック用については、どのポートがクロックピンに割り付けられるべきか、ユーザが自分で配置配線ツールに指示したほうがいいかも知れません。その後、配置配線ツールにターゲットデバイス上で利用可能なクロックピンを選ばせます。 CLK_REF ポートを FPGA クロックリソースとして制約をかけるには、制約条件は次のようになります。

Record=Constraint | TargetKind=Port | TargetId=CLK_REF | FPGA_CLOCK=TRUE

図1 制約条件ファイルのサンプル。2つのクロックネットが、FPGA_CLOCK=TRUE で制約されています。 ピン割り付けがまだ定義されていないことに注意してください。
配置配線プロセスが完成したら、ピン割り付けを制約条件ファイルにインポートすることができます。

コンフィギュレーションの作成

コンフィギュレーションは制約条件ファイルの名前のリストです。 コンフィギュレーションはプロジェクトファイルの中にあります。制約条件は、いくつかの制約条件ファイルに分割することができます。また、プロジェクトには、いくつかの異なる制約条件ファイルを含めることができ、異なるインプリメンテーションに対するターゲットとして使用することができます。 制約条件ファイルをグループにまとめて、あるインプリメンテーションから別のインプリメンテーションへ移動させやすくするには、コンフィギュレーションを定義します。

  1. コンフィギュレーションを定義するには、Projects パネルのプロジェクト名の上で右クリックして、Configuration Manager を表示されたメニューから選択します。

Configuration Manager ダイアログには、プロジェクト内のすべての制約条件ファイルがリストされています。 また、既存のすべてのコンフィギュレーションが明示されています。 制約条件ファイルは、適切なチェックボックスでコンフィギュレーションに割り付けられます。 Figure 2 は、Configuration Manager ダイアログです。3つの制約条件ファイルが左側にリストされていて、2つはデフォルトの制約条件、1つは FPGA プロジェクト用に特別に生成されています。 3つのコンフィギュレーションが定義されています。2つはNanoBoard用、1つは実際に生産されるボード用です。

図2 コンフィギュレーションマネージャは、3つのコンフィギュレーションを表示しています。それぞれに制約条件ファイルが割り付けられています。

  1. 左下の Configuration Add ボタンをクリックすると、新しいコンフィギュレーションが追加されます。
  2. 適切なチェックボックスを有効にして、制約条件ファイルをコンフィギュレーションに割り付けてください。

これで、デザインの論理合成、配置、配線の準備ができました。

デザインの合成

論理合成は回路図やデザインのVHDLビヘイビア記述を変換して、低位のフォームにし、ベンダの配置配線ツールで使用できるようにするプロセスです。 合成エンジンは、最初、デザインの中間 VHDL 記述を生成します。次に、これをEDIFに合成します。
合成はいくつかの方法で始められます。

  • プロジェクトファイルを右クリックし、Synthesis を表示されるメニューから選びます。
  • Devices ビューを開き、Synthesize ボタンをクリックします。

論理合成が行われるときは、必ず、適切なコンフィギュレーションを有効にしておく必要があります。 複数のコンフィギュレーションが選べるときは、選択ダイアログが表示されます。 Devices ビューでは、プロジェクトとコンフィギュレーションの組み合わせをドロップダウンリストで選択します。
合成中は、Messages パネルを使用して、進行をモニタできます。エラーが発生した場合は、ダブルクリックで解析します。
Devices ビューを設計プロセスで使用する際の詳細については、Processing the Captured FPGA Design のアプリケーションノートを参照してください。

ベンダが提供する配置配線用ソフトウェア

適切な配置配線ツールをインストールする必要があります。ほとんどの FPGA ベンダが無料のダウンロード版をウェブサイトで提供しています。デザインを実際の FPGA にインプリメントする作業は、配置配線ツールと呼ばれる特定のツールによって実行されます。 これらのソフトウェアは FPGA ベンダから提供されます。ベンダには、それぞれの FPGA の機能に対する深い知識があるので、こうしたソフトを作成することで、デザインを低位の記述に変換したり、アレンジする方法を考案したり、あるいは、必要なロジックを FPGAの内部に配置して、相互接続(配線)しています。
実際には、配置配線ソフトの起動は必要はありません。ソフトは自動的に Devices ビューから実行されます。. Devices ビューの Build ボタンをクリックすると、配置配線ソフトがリモートで実行されます。 配置配線ソフトからのすべてのフィードバックは、Output パネルに表示されます。

ピン割り付けのバックアノテーション

配置配線に先立って、制約条件ファイルに割り付けられていないどのピン(ポート)も、配置配線中に物理的なピンに自動的に割り付けられます。 これらの割り付けは、FPGA デザインがPCB デザインにリンクできるようになる前に行わなければなりません。 ピンの割り付けを配置配線からインポートする方法は以下のとおりです。

  1. 制約条件ファイルを開き、Design » Import Pin File » Select File をメニューから選択します。
  2. ベンダが生成した適切なピンファイルを探します。 おそらく、次のような名前のフォルダにあると思われます。 MyFPGAProject\ProjectOutputs\ProjectBoard
  3. ピンファイルを選んで、OKをクリックすると、Constraint Editor Preferences ダイアログが表示されます。 このダイアログのオプションを有効にすると、制約条件の情報がファイル(有効な場合)から抽出され、制約条件ファイルに含められます。
  4. 制約条件ファイルを保存して閉じます。 これで、デザインをターゲットPCBにリンクさせる準備ができました。

FPGA プロジェクトを PCB プロジェクトにリンクさせ、デザイン変更を相互に転送する方法についての詳細は、Linking an FPGA Project to a PCB Project を参照してください。

部品をポートに変換

NanoBoard のポートプラグインコンポーネントを設計に使用している場合は、設計を実際のボードに移動させる際に、それらをポートとして表示する方が良いかもしれません。 Tools » Convert » Convert Part To Ports を使うことで、これは達成されます。 制約条件ファイルにあわせたアップデートが必要な場合、ポート名は変更できます。

You are reporting an issue with the following selected text and/or image within the active document: