配置配線処理


次は、配置・配線のステップになります。配置・配線を行う前に重要な設定ファ イルを作成する必要があります。それは、FPGA の端子と 入力した回路の入出 力端子の物理的な対応付けをすることです。この設定を行わなかった場合、配 置・配線処理プログラムは自動的に端子の割り付けを行います。今回は、前もっ て用意されているテストボードを用いて後の動作検証を行いますので、そのテ ストボードに合われて端子の割当をしておく必要があります。

端子の割当は counter_top.cst ファイルを編集することで行います。この制 約ファイルでは、配置・配線する回路に対し遅延情報を付加したり、端子の割 当を行うことができます。ここでは、端子の物理配置のみ指定することにしま す。

counter_top.cst をエディタにかけると、ファイルの最後の部分に以下のよう な記述があるはずです。
#place instance QO<3> : ?;
#place instance QO<2> : ?;
#place instance QO<1> : ?;
#place instance QO<0> : ?;
#place instance RESET : ?;
#place instance CLOCK_E : ?;
#place instance CLOCK : ?;
これを以下のように修正しセーブしてください。
行頭の#はコメントとなるので、#を外し忘れないこと。 KITE Microprocessor Board PLUS+ (XC4010/13)の場合
place instance QO<3> :   D1;
place instance QO<2> :   F2;
place instance QO<1> :   E1;
place instance QO<0> :   F1;
place instance RESET :   J1;
place instance CLOCK_E : T8;
place instance CLOCK :   C3;
例えば、"D1"等の文字列はFPGAのピン番号に当たります。通常ICのピン番号 は純粋な数字ですが、このFPGAはPGAパッケージであるためアルファベットと 数字の組合せになっています。

設定ファイルの設定が終ったら、
xmake counter_top
のように、xmake コマンドを実行し配置・配線処理を始めます。今回作成した カウンタ程度では数分で正常に終了します。大規模な回路になると数十分かか ることもあります。この過程では主にxnfmerge、xnfprep、ppr、xdelay、 makebits の5つのプログラムが実行されます。

設計入力した回路は、変換後は複数のファイルに分かれています、xnfmerge はそれらのファイルを統合し一つのファイルにします。

xnfprep は使用した部品間の配線状況をチェックするプログラムです。回路に よっては使用しない端子とかが存在することもあるでしょう。そのような箇所 をチェックし不必要な部品を自動できに削除したりします。xnfprep でエラー が発生することがあります。その場合は、Show Log において xnfprep Log File を確認しエラー箇所を訂正してください

pprは実際の配置配線処理を行います。詳細なログは Show Log において Report File を確認しエラー箇所を訂正してください。特にFPGA の最大実装 規模に対してぎりぎりの論理資源を使用している場合など、配置や配線処理が 不可能になる場合もあります。

xdelay は配置配線された回路がどの程度の周波数で動作することが可能なの か等の遅延情報を解析するためのツールです。配線遅延情報が内部情報として 付加されます。

makebits は配置配線されたデータを FPGA に転送する際に必要なファイルに 変換するプログラムです。最終的には、拡張子が ".bit" というファイルが作 成されます。

makebits プログラムまで終了し、".bit"ファイルが正常に作成されていれば OKです。もし counter_top.out ファイル中にErrorの文字がある場合は配置・ 配線処理中にエラーがあったことを示します。適宜誤りを修正してxmakeを再 実行してください。


ひとまず、配置・配線は終了しました。さて、FPGA内では論理回路はどのよう に配置配線されているのでしょうか? では、FPGA の中身を覗いて見ましょう。


| Back | CMS CAD Group |

My mail address is kuga@cs.kumamoto-u.ac.jp .
Last modified on .