Xilinx® デバイスの利用、配置配線ツール
Application note AP0112 (v2.0) February 28, 2008
このアプリケーションノートは先進のザイリンクスデザイナの情報を配置配線ツールのオプションと属性をコントロールする方法とともに提供します。また、ライブラリに関する情報も含まれます。
Altium DesignerのFPGA開発環境は、デジタルシステムのデザインキャプチャ、合成、配置、配線、FPGAへのダウンロードまでカバーしています。 設計をターゲットに落とし込むためのプロセス、配置配線には、デバイスについての機能的、構造的詳細な理解が求められ、ベンダから提供されるソフトウェアツールによる高度な作業が必要です。 自動的にすべてのプロジェクトやファイルの取り扱いを管理し、FPGAにプログラムするファイルを生成するAltium Designerの環境で、ベンダのソフトウェアは実行されます。 Altium Designerには、このプロセスを効果的にコントロールするための機能があります。このアプリケーションノートでそれを紹介しましょう。
イントロダクション
Xilinx ツールはAltium Designerの環境に統合され、デバイスビュー(View » Devices View)から効果的にアクセスできるようになっています。 このビューにより、FPGA設計プロセスをステップ・バイ・ステップで進めていくことができるので、FPGAのシステムデザインの効果的なプログラムとデバッグが可能です。
Devices ビューを設計プロセスで使用する際の詳細については、Processing the Captured FPGA Design のアプリケーションノートを参照してください。
このアプリケーションノートは、何種類かのザイリンクスドキュメントを参照しています。 デフォルト設定を変更したいユーザは、それらのドキュメント、Xilinx Development System Reference Guide, Constraints Guide, または XST User Guide. を参照してください。
ザイリンクスツールに習熟していない方には、デフォルト設定で設計を始めることをお勧めします。
サポートするアーキテクチャ
Altium Designerは最新のザイリンクス製FPGAテクノロジをサポートしており、FPGAとPCB 回路図ライブラリのサポートも提供しています。 下記の表は、サポートデバイステクノロジと利用可能なライブラリサポートについて要約したものです(英語版リリース時)。
デバイステクノロジ | アーキテクチャに依存しないライブラリのサポートがあるか | アーキテクチャに依存するFPGAライブラリ名(.IntLib)* | 関連する PCB ライブラリ名 (.IntLib)* |
---|---|---|---|
CoolRunner-II | Yes | Xilinx CoolRunner-II FPGA | Xilinx CoolRunner II |
CoolRunner XPLA3 | Yes | Xilinx CoolRunner-XPLA3 FPGA | Xilinx CoolRunner XPLA3 |
Spartan-II | Yes | Xilinx Spartan-II FPGA | Xilinx Spartan-II |
Spartan-IIE | Yes | Xilinx Spartan-IIE FPGA | Xilinx Spartan-IIE |
Spartan-3 | Yes | Xilinx Spartan-3 FPGA | Xilinx Spartan-3 |
Spartan-3E | Yes | Xilinx Spartan3E FPGA | Xilinx Spartan-3E |
Virtex | Yes | Xilinx Virtex FPGA | Xilinx Virtex |
Virtex-II | Yes | Xilinx Virtex-II FPGA | Xilinx Virtex-II |
Virtex-II PRO | Yes | Xilinx Virtex-II Pro FPGA | Xilinx Virtex-II Pro |
Virtex-4 | Yes | Xilinx Virtex-4 FPGA | Xilinx Virtex-4 |
Virtex-E | Yes | Xilinx Virtex-E FPGA | Xilinx Virtex-E |
XC18V00 | N/A (利用不可) PROMデバイスのコンフィギュレーションなので利用できません。 | N/A (利用不可)1 | Xilinx XC18V00 |
XC9500 | Yes | Xilinx XC9500 FPGA | Xilinx PLD XC9500 |
XC9500XL | Yes | Xilinx XC9500XL FPGA | Xilinx PLD XC9500XL |
XC9500XV | Yes | Xilinx XC9500XV FPGA | Xilinx PLD XC9500XV |
XCF | N/A (利用不可)1 | N/A (利用不可)1 | Xilinx XCF |
FPGA アーキテクチャに依存しないライブラリ
デバイスへの非依存性を保つため、Altium Designerには、典型的で一般的なデザインコンポーネントの豊富なライブラリ FPGA Generic Library が含まれています。 この統合ライブラリは、Altium Designerをインストールしたフォルダの \Library\FPGA ディレクトリにあります。
FPGA の一般的なライブラリについての詳細は、FPGA Generic Library Guide を参照してください。
FPGA アーキテクチャに依存したライブラリ
デバイス非依存が要求されない場合、ザイリンクスのFPGA ライブラリが提供されています。 これらの統合ライブラリには、コンポーネントの Unisim と Macro の両タイプが含まれています。
ベンダに特化した統合ライブラリは、Xilinx Libraries Guide で提供されるセレクションガイドのパッケージです。 この場合、ターゲットデバイスに使用できるのは特化したコンポーネントだけであることに注意してください。 このFPGA設計ライブラリは、Altium Designerをインストールしたフォルダの \Library\Xilinx ディレクトリにあります。
ザイリンクスのコアジェネレーター コンポーネントのサポート
ザイリンクスのコアジェネレーターを使用して作成される特定のコアをFPGAデザインに使うことができます。 コアを生成し、生成されたEDIFファイルを回路図コンポーネントにリンクさせ、そのコンポーネントをFPGAデザインに配置します。
EDIF ファイルからコンポーネントシンボルを作成するには、ソフトウェアからファイルを開き、メニューから Design » Create Schematic Part From File を選択します。 EDIF ファイルはFPGA プロジェクトのフォルダ、または、ユーザがあらかじめ合成しておいたモデルのフォルダ(Preferences ダイアログ(DXP » Preferences)のFPGA - Synthesis のページで指定)に置いておく必要があります。
統合PCBライブラリ
ザイリンクスの多くのプログラマブルデバイス用に、PCB デザインのライブラリも提供されています。 Altium Designerがインストールされているフォルダの \Library\Xilinx ディレクトリをご覧ください。 これらのライブラリには、回路図シンボル、PCB フットプリント、3Dモデル、シグナルインテグリティモデルが含まれています。
ザイリンクスの配置配線ツールの構成
配置配線ツールは、Device ビュー内のターゲット(物理的デバイス)に関連する Process Flow の Build ステージから、アクセスし、設定することができます。 ザイリンクス製のデバイスがターゲットのときに、Process Flow を有効にし、表示させるには、以下のようにする必要があります。
- 適切なザイリンクスの配置配線ツールをインストールする - ツールのフルセット、または、ザイリンクスウェブからのフリーダウンロード版
- ザイリンクスのターゲットアーキテクチャに適合するデザインを作成 これは、既存のプロジェクト構成(Project » Configuration Manager)に属するプロジェクト制約ファイルに、適切なデバイス制約条件を含めることによって達成されます。。
ターゲットFPGAのデザインの作成や設定の例についての詳細は、Getting Started with FPGA Design を参照してください。
ビルドのオプション
レポートオプションBuild プロセスは、 ザイリンクスのツールとのインターフェースであり、ビットストリーム(BIT)ファイルを提供して、FPGAへのダウンロードができるようにします。 下向きの矢印をクリックすると、Build プロセスを完成させるのに使う各ステップのリストが表示されます。
各ステージの隣にあるオプションアイコンをクリックして、機能を設定します。 エラー、またはターゲットのアーキテクチャや設計上の許されない設計ルールがあった場合は、Build プロセスの各ステージで警告されます。 デザイン内の場所や、エラー、警告は、レポートファイルにログが残ります。目的のレポートアイコンをクリックしてください。
ザイリンクスツールでもう少し詳細なオプションコントロールを行いたい経験豊富なユーザの場合は、Build プロセスの各ステージがスクリプトファイルにリンクされていることを知っておいてください。ファイルはAltium Designer がインストールされているフォルダの \System ディレクトリにあります。 これらのスクリプトでは、標準の最適化がデフォルトであることに注意してください。変更には、ザイリンクスの Development System Reference Guide にしたがった注意が必要です。 Build ステージ、オプション、関連するデフォルトのスクリプトファイルについては、以降のセクションでそれぞれ説明します。
設計の変換
このステージでは、ザイリンクスの NGDBuild ツールを起動し、EDIF 出力を FPGA プロジェクトの合成プロセスから、NGD(Native Generic Database)ファイルやNPL(Navigator project)ファイルに変換します。 このプロセスでは、論理設計のルールチェックも実行され、設計がターゲットFPGAへのマッピングに適合していることを確認します。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第6章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_NGBuild.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、NGDBuild スイッチをこのファイル内に設定することができます。 必要なら、ザイリンクスプロジェクトはXilinx Project Navigatoに開くことができます。
FPGAへのデザインマッピング
このステージでは、ザイリンクスのMAP ツールを起動して、NGD ファイルをザイリンクスのターゲットFPGAで利用可能なロジックにマッピングします。 このプロセスで、フィジカルデザインのルールチェックが実行され、ターゲットFPGAに潜在しているフィジカルとロジカルのエラーを発見します。 プロセスの出力は、NCD(Native Circuit Description)ファイルです。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第8章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_MAP.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、Map スイッチをこのファイル内に設定することができます。
配置配線
このステージでは、ザイリンクスのPAR ツールを起動し、MAP プロセスから NCD ファイル出力を使用して、配置と配線を行います。 配置、配線された NCD ファイルは、ビットストリームジェネレーターに適合するように供給されます。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第10章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_PlaceAndRoute.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、PAR スイッチをこのファイル内に設定することができます。
タイミング解析
このステージでは、ザイリンクスの Trace(タイミングのレポートと評価)ツールをを起動します。 このツールは、タイミング制約の入力を基にして、スタティックなタイミング解析を行います。 デザインがタイミング制約にマッチしていることを検証、解析レポートを生成します。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第13章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_Trace.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、Trace スイッチをこのファイル内に設定することができます。 タイミング解析の機能は必要に応じてオフにすることができます。Timing Analysis のオプションアイコンをクリックしてください。
BIT ファイルの作成
このステージでは、ザイリンクスの BitGen ツールを起動して、ビットストリーム(BIT)ファイルを配置配線されたデザイン(NCD)ファイルから作成します。 BIT ファイルは、FPGAのダウンロードとプログラミングに使用します。あるいは、PROM ファイルを作成するステージで、PROM ファイルを作成するのに使用します。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第15章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_BitGen.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、BitGen スイッチをこのファイル内に設定することができます。
PROM ファイルの作成
このオプションステージは、ザイリンクスのコンフィギュレーションデバイス用にプログラムファイルを生成するのに使用します。 ターゲットPROM がオプションアイコンのクリックで選択されると、このオプションが利用できるようになります。 ザイリンクスの PromGen ツールが起動します。出力フォーマットは選択したターゲットデバイスに依存しています。 このプロセスで有効なオプションについての詳細は、ザイリンクスのDevelopment System Reference Guide の第16章を参照してください。
オプションアイコンをクリックしても出てこない、さらに進んだオプションの使い方については、DefaultScript_Xilinx_PromGen.Txt のスクリプトファイルにアクセスしてください。 ザイリンクスのドキュメントにしたがって、PromGen スイッチをこのファイル内に設定することができます。
ザイリンクスの制約条件のエントリ
Altium DesignerのFPGA 設計環境は、デバイスに依存しない幅広い制約条件をサポートしています。 しかしながら、すべての FPGA ファミリーが同じテクノロジを共有しているわけではないので、使用可能なベンダの制約条件を使う場合があります。 ザイリンクスのツールは、さまざまな制約条件をサポートすることで、内部テクノロジやその他の設計オプションの長所を引き出しています。 ザイリンクスのFPGA 制約条件についての詳細は、ザイリンクスの Constraints Guide を参照してください。
特定のデザインに対するザイリンクスの制約条件には、FPGA プロジェクトに UCF(User Constraint File)を追加することが含まれる場合があります。 複数の制約条件ファイルを追加することができます。Ignore UCF file オプションを無効にし、Build プロセスのTranslate Design のステージに関連するオプションボタンをクリックすると、プロジェクト内で使用できるようになります。
ザイリンクス XSTシンセサイザのコンフィギュレーション
Altium Designerには、強力な合成エンジンがビルトインされており、デフォルトで使用することができます 合成エンジンはAltium Designer環境内でのザイリンクスのXSTシンセサイザの使用をサポートしています。 FPGA プロジェクトがこの合成ツールを活用できるようにするため、プロジェクト合成オプションが XST Synthesizer に設定される必要があります。 実行するには、Project » Project Options をメニューから選択し、Synthesis タブをクリック。XST Synthesizer を Synthesizer リストのドロップダウンから選びます。 この選択が行われると、XST バイナリ実行ファイルが常駐するフォルダを、関連する閲覧ボタン(...)のドロップダウンを使って指定しなくてはなりません。 Synthesis タブのオプションの領域は、XSTの関連オプションになります。 デザインに最適な構成を行ってください。
Synthesis タブに出てこない、さらに進んだオプションの使い方については、\System フォルダにある DefaultScript_XST_CPLD.Txt および DefaultScript_XST_FPGA.Txt のスクリプトファイルにアクセスしてください。 XST スイッチはザイリンクスの XST User Guide にしたがって設定してください。
図1 ザイリンクス XST シンセサイザのオプション設定
ザイリンクスの合成ツールに習熟していない方には、Altium DesignerにビルトインされているDXP、またはアルティウムの合成エンジンで設計を始めることをお勧めします。