1

これがこれを投稿するのに適切なスタック交換 Web サイトかどうかはわかりませんが、そうでない場合は、適切な Web サイトに移動してください。

Spartan 3 スターター キットの制約ファイルを作成する際に小さな問題に直面しています。

ザイリンクス (製造元) から提供されたドキュメントを読み、数週間オンラインで検索しましたが、うまくいきませんでした。

私がやろうとしているのは、ネットリスト インターフェイスをボード上の 3 つの 40 ピン ヘッダーのいずれかにリンクすることです。(下の画像を参照)

ここに画像の説明を入力

通常、ボード上のボタンまたは LED をインターフェースしたい場合、ボード上の接続名を読み取るだけです。たとえば、ボタンの 1 つがM13であり、UCF ファイルに次のように書き込みます。

NET "BTN0"       LOC = "M13";

画像でわかるように、ヘッダーはボード上で A1、A2、および B1 という名前になっていますが、奇妙なことに、次のいずれも機能しませんでした。

NET "TestOutputLine"       LOC = "A1(0)"; -- The (0) is to reference a single line on an array
NET "TestOutputBus"       LOC = "A1"; -- The bus is of equal dimension of A1 (which is 40)

私が得たエラーは、ターゲット (LOC で指定) が存在しないか、割り当てが無効であることを意味していました。

アイデアをいただければ幸いです。前もって感謝します

編集: ISEからの出力は次のとおりです。

ConstraintSystem:59 - Constraint <NET "TestOutputBus" LOC = "A1";>
[circuit.ucf(12)]: NET "TestOutputBus" not found.  Please verify that:
   1. The specified design element actually exists in the original design.

しかし、TestOutputBus が存在することは確かです。実際のところ、現在私の設計には他に何もなく、正しい最上位ユニットが使用されています。

ここに画像の説明を入力

EDIT2: UCF ファイルを更新しました。現在は次のようになっています。

NET "TestOutputBus(0)" LOC = "A1(0)";
NET "TestOutputBus(1)" LOC = "A1(1)";

しかし、マッピングで別のエラーが発生しました:

MapLib:30 - LOC constraint A1:0 on TestOutputBus<0> is invalid: No such
   site on the device. To bypass this error set the environment variable
   'XIL_MAP_LOCWARN'.
MapLib:30 - LOC constraint A1:1 on TestOutputBus<1> is invalid: No such
   site on the device. To bypass this error set the environment variable
   'XIL_MAP_LOCWARN'.

解決 :

ピン 5 と 6 をそれぞれ TestOutputBus(0) と TestOutputBus(1) にマップするには、次のようにします。

NET "TestOutputBus(0)" LOC = "N7"; -- A1 pin 5
NET "TestOutputBus(1)" LOC = "L5"; -- A1 pin 6

ピン 0 はマッピング可能ではないことに注意してください。そのため、ピン 5 と 6 を使用しました。すべてのヘッダーとその LOC のマッピング可能なピンを示す表を次に示します。

ここに画像の説明を入力 ここに画像の説明を入力 ここに画像の説明を入力

4

3 に答える 3

2

これを以前のコメントからあなたの質問にコピーしたので、単なるコメントではなく実際の回答になります。

最上位モジュールのすべてのポートに対して、UCF ファイルに LOC 制約を含める必要があります。したがって、最上位の入力または出力として 40 ビット幅のバスがある場合、最上位回路図の論理バスが実際にFPGA の正しいピン。2 つのピンのみを使用している場合は、バスを 2 ビット幅として宣言し、2 つの LOC 制約を使用できます。FPGA は未使用のピンをすべて入力として扱い、無視します。

于 2012-01-03T20:41:45.000 に答える
2

結局のところ、FPGA の各ヘッダーの使用可能なピンごとにアドレスがあります。

データシート (http://forums.xilinx.com/xlnx/attachments/xlnx/Spartan/3411/1/S3BOARD_RM.pdf) は、特に 49 ~ 51 ページが役に立ちました。

于 2012-01-03T17:07:13.530 に答える
0

モジュールの 1 つを誤って最上位モジュールとして選択したときに、元の ConstraintSystem:59 net xyz not found エラーが発生したことがあります。UCF で宣言されたピンが、間違ったモジュールのポート宣言で見つかりませんでした。

また、UCF で宣言されたピンがあるが、最上位モジュールのポート宣言で省略されている場合にも、このエラーが発生します。

于 2013-07-14T15:56:11.177 に答える