FC2カウンター FPGAの部屋 CoreGenからChipScope Proを使用する3(ChipScope Analyzerで波形を観察)
FC2ブログ

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

FPGAの部屋

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

CoreGenからChipScope Proを使用する3(ChipScope Analyzerで波形を観察)

CoreGenからChipScope Proを使用する2(ILAコアの生成)”の続き。
今回は、ChipScope Analyzer で波形を観察する。だが、その前に、信号名を波形に反映させる必要がある。これをChipScope Analyzer のDataport に信号名をいちいち入れたのでは面倒だ。そこで調べてみるとFPGA EditorのILAダイアログで、ILAのデータポートにネット名を関連付けて、それをCDCファイルとしてエクスポートできることがわかった。そのCDCファイルをChipScope Analyzer でimportすれば、信号名をwaveform ウインドウで使用することができるはずだ。

まずは、FPGA Editorを立ち上げて、CDCファイルを作成しよう。Project NavigatorのProcessesウインドウのImplement Design -> Place & Route -> View / Edit Routed Design (FPGA Editor)をダブルクリックして、FPGA Editorを起動する。ToolsメニューからILA...を選択する。
CS_Core_Gen_18_100531.png

ILAダイアログが開く。ILAダイアログを見るとDataportとNetの対応表がすでに出来ているので、Write CDC...ボタンをクリックする。
CS_Core_Gen_19_100531.png

保存ダイアログが開く。ファイル名をつけてCDCファイルをセーブする。
CS_Core_Gen_20_100531.png

Project NavigatorのProcessesウインドウのAnalyze Design Using ChipScopeをダブルクリックしてChipScopeを立ち上げる。最初のInitialize Chain アイコンをクリックしてFPGA やPROMを認識する。最初のDEV:0(Spartan-3A)を選択して、右クリックメニューからConfigure...を選択して、ダイアログが開く。ここでコンフィギュレーションするbitファイルとcdcファイルを選択するが、ここでは、bitファイルだけ選択して、cdcファイルは選択しない。ここで、FPGA Editorの生成したcdcファイルを選択するとエラーとなる。bitファイルをFPGA にダウンロードすると、下の画面が出るはずだ。(古いChipScopeのバーションだが、詳しい操作は、”ISE10.1iのChipscope Proチュートリアル3 (Verilog版DDR SDRAMコントローラのテスト回路)”を参照されたい)
CS_Core_Gen_21_100531.png

ここではまだ、信号名は入っていない。次にFileメニュー -> Import... を選択する。Signal Importダイアログが開く。Select New Fileボタンをクリックする。
CS_Core_Gen_22_100531.png

ファイル選択ダイアログが開く。先程、FPGA Editorで作ったCDCファイルを選択して、開くボタンをクリックする。
CS_Core_Gen_23_100531.png

Import FileにFPGA Editorで作ったCDCファイルが入力される。次にUint/DeviceのAuto-create Busesにチェックを入れて、OKボタンをクリックする。
CS_Core_Gen_24_100531.png

そうすると、めでたく、信号名を入力することができた。ただし、何故か101~104までは信号名を入力できなかったので、自分で信号名を書き換えた。これはなぜだか分からない?でも4個くらい信号名を書き換えるのであれば、問題ない。
CS_Core_Gen_25_100531.png

ここまでで、CoreGenからChipScope Proを使用するやり方は終了。
Graphic_Controller_Testの動作を見てみるために、DDR2 SDRAMコントローラのコマンド入力にトリガをかけてみてみた。
CS_Core_Gen_26_100531.png

そうしたところ、Char_Gen_Controllerが書くデータはおかしいが、最初の何秒かはDDR2 SDRAMコントローラに正常な読み書きの信号が着ていて、動作しているらしいことがわかった。数秒経ってから、おかしくなってしまう。その時間は不定だ。デバック難しそう。下はおかしくなった時の波形。
CS_Core_Gen_27_100531.png

やはり、ChipScope Proは必須だな~。。。信号名が入れられるのであれば、ChipScopeのコアをHDLに接続する方法の方が信号がなくならなくて良いかもしれない。しかし、HDLを修正してしまうので、SVNでのバージョン管理が面倒になるという欠点はあるかもしれない。
  1. 2010年06月03日 04:59 |
  2. Chipscope
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/1486-e65eb511
この記事にトラックバックする(FC2ブログユーザー)