FC2カウンター FPGAの部屋 2012年04月20日
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

ISimの unexpected error

昨日、ISimでシミュレーションしていたのですが、unexpected error で落ちまくっていました。
ISim_unexpected_error_120420.png

Waveウインドウに信号をたくさん入れるとこうなりました。デフォルトの信号数のままだと1ms 程度シミュレーションできるのですが、たくさん入れるとシミュレーション開始してすぐにISimが落ちてしまいます。
ISEのバージョンはISE13.4、OSはWindows 7 professional 64ビット版です。
この現象で1日悩んでしまいました。MIGなどを含めた全体でシミュレーションしているのですが、部分的にシミュレーションしても、Wave波形をスライドさせた時に落ちてしまい、どうもおかしいようでした。

Google で検索すると、”Isim crashing Windows 7 VM”という記事が見つかりました。それによると、Xilinxの方がWin7 64ビット版でおかしい時は、Win XPの32/64ビット版かWin 7の32ビット版を使ってくれとのことでした。ちなみにISE13.4では直るとかいてあるようですが、直ってないです。

Win 7 32ビット版のパソコンがあったので、それにISE13.4 を入れてISimでシミュレーションしてみましたが問題ないようです。Win 7 64ビット版でISimが unexpected error で落ちる場合には、Win XPの32/64ビット版かWin 7の32ビット版を使ってみてください。

(追加です)
以前の同じような回路では大丈夫だったと思うのですが?なぜダメに成ったか不思議です。今回はVHDLでconstantによるパラメタライズな回路にしたので、2次元配列を多用しています。モジュール間も2次元配列で受け渡ししたりしています。そのような回路構成がダメなんでしょうかね?パラーメータを変えると回路規模が変化するので、簡単に推測できなかったのでしょうか?でも、Win7 32ビット版で動いてますから、そんなことはないはずですね?
  1. 2012年04月20日 09:28 |
  2. ISim
  3. | トラックバック:0
  4. | コメント:2

Altium Designer のFPGA設計入門をやってみる3

Altium Designer のFPGA設計入門をやってみる2”の続き。

前回は、エラーが出てしまって困ったと言うことで終わってしまったが、エラーの原因を調べることにした。(当たり前)
その前に参考となるPDFファイルを示す。”FPGA デザイン入門”と”制約条件ファイルリファレンス”だ。いつもながらWebページみるより、PDFファイル見るほうが見やすい。

・前回のエラー画面を下に示す。
Altium_Desiger_FPGA_14_120419.png

・一番上のエラーを表示してみた。どうやらターゲットのデバイスを指定していないためらしい。
Altium_Desiger_FPGA_18_120419.png

他のチュートリアルのコンストレイント・ファルを見てみたが、PCBが指定してあった。どうやらコンストレイント・ファイルで指定すれば良いようだ。

・”制約条件ファイルリファレンス”を見ると、ターゲットのデバイスを指定する制約があった。これを真似して、Spartan-3A Starter Kit のFPGAデバイスの制約を加えた。

Record=Constraint | TargetKind=Part | TargetId=XC3S700A-4FGG484C

Record=Constraint | TargetKind=Port | TargetId=LEDS[7..0] | FPGA_PINNUM=W21,Y22,V20,V19,U19,U20,T19,R20 | FPGA_IOSTANDARD=LVTTL33,LVTTL33,LVTTL33,LVTTL33,LVTTL33,LVTTL33,LVTTL33,LVTTL33 | FPGA_DRIVE=4mA,4mA,4mA,4mA,4mA,4mA,4mA,4mA
Record=Constraint | TargetKind=Port | TargetId=SW[7..0] | FPGA_PINNUM=,,,,,U8,U10,V8 | FPGA_IOSTANDARD=,,,,,LVTTL33,LVTTL33,LVTTL33
Record=Constraint | TargetKind=Port | TargetId=CLK_REF | FPGA_PINNUM=E12 | FPGA_IOSTANDARD=LVCMOS33
Record=Constraint | TargetKind=Port | TargetId=TEST_BUTTON | FPGA_PINNUM=T15 | FPGA_IOSTANDARD=LVTTL33



・次に、プロジェクトメニューからプロジェクトのコンパイルをした。

・デバイスビューを見てみると、FPGAのメニューがデバイスの上に出てきた。(現在の状態はミスって最初のコンパイルを行った状態で青丸になっている)
Altium_Desiger_FPGA_19_120420.png

・最初の項目のCompile を実行した状態だ。ワーニングが出ている。
Altium_Desiger_FPGA_20_120420.png

・次にSynthesize を行った。メッセージでは Compile successful,no error found. が出ている。
Altium_Desiger_FPGA_21_120420.png

・Build をしたらリザルトサマリが出た。ビットファイルまで生成されたようだ。
Altium_Desiger_FPGA_22_120420.png

・Map Design To FPGA のOpen Report File をクリックしてみた。
Altium_Desiger_FPGA_23_120420.png

・おなじみのISEのMAPリポートが表示された。
Altium_Desiger_FPGA_24_120420.png

・Program FPGA でエラーが出てしまった。
Altium_Desiger_FPGA_25_120420.png

・エラーは出たが、Spartan-3A Starter Kit のDONEランプはコンフィギュレーションの時に消えて、新たに点灯しているし、ボタンを押すと何らかの動作はするので、何らかのコンフィギュレーションはできているようだ。

  1. 2012年04月20日 05:24 |
  2. Altium Designer
  3. | トラックバック:0
  4. | コメント:0