FC2カウンター FPGAの部屋 ZedBoardにキャラクタ・ディスプレイ・コントローラを追加する4(ChipScopeデバック1)
FC2ブログ

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

FPGAの部屋

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

ZedBoardにキャラクタ・ディスプレイ・コントローラを追加する4(ChipScopeデバック1)

ZedBoardにキャラクタ・ディスプレイ・コントローラを追加する3(SDK)”の続き。

前回、VGA画面に文字は表示されなかったので、ChipScopeでデバックを行うことにした。

・PlanAheadでChipScopeを掛けた。そしてインプリメントを行い、ChipScopeを起動した。(”PlanAhead14.1でChipScope Proを試してみた1(ChipScope の設定)”と”PlanAhead14.1でChipScope Proを試してみた2(ChipScope Analyzer)”を参考にした)
ZedBoard_CDC_SVGA_35_120921.png

この状態では、T! アイコンのTriger Immediate をクリックしてもWaveウインドウに波形が出てこない。クロックが止まっているということになる。”ZedBoardにキャラクタ・ディスプレイ・コントローラを追加する1(XPSプロジェクト)”でも設定したように、AXI4バスのクロックに processing_system7_0::FCLK_CLK0 、キャラクタ・ディスプレイ・コントローラのピクセルクロックに processing_system7_0::FCLK_CLK1 を使用している。これは、ARMプロセッサの初期化ルーチンを起動するまでクロックが来ないようだ。SDKでデバックモードでデバックを始めるとクロックが来て、Triger Immediate でトリガするようになった。
これは、ハードウェア単体で実装されるべき機能では注意する必要があると思う。その様な回路はZedBoardのPL部に接続してある100MHzのクロック・ジェネレータを使用するのが妥当であると考える。

・ChipScopeで、S_AXI_AWVALID でトリガをかけた。
ZedBoard_CDC_SVGA_36_120921.png

・SDKを立ちあげて、デバックモードにした。

・XMDで、キャラクタ・ディスプレイ・コントローラへのWriteアクセスを行ったところ、XMDが強制終了されてしまった。エラーも出ている。下にエラーを示す。
ZedBoard_CDC_SVGA_37_120921.png

04:02:24 INFO : ps7 initialization is done.
04:03:17 INFO : FPGA Cable Disconnected. All active launches will be terminated.
04:03:17 WARN : Terminating existing sessions on processor ps7_cortexa9_0
04:03:17 ERROR : Unexpected Interrupt before obtaining results for {"command": "targets 64"}, java.lang.InterruptedException.


・Xilinxのアンサーを検索してみたところ、”14.2 - SDK - SDK および ChipScope デバッグを同時に実行するとシステムが停止する”というアンサーが見つかった。
それによると、Digilent 社のケーブルでは、SDKとChipScopeデバックを同時にできないそうだ。アンサーの結果と今回の結果は異なるが、不具合が発生するということでは同じだ。。

・ChipScopeでJTAG Chain -> Get Cable Infomation を実行した。その結果を下に示す。

COMMAND: get_cable_information
INFO: 
    Name:         Digilent Zed
    Port:         0
    Frequency:     10000000 Hz
    Target UID:     00E00153

    Vendor:         Digilent, Inc.
    Target Name:     digilent_plugin
    Plugin Name:     libCseDigilent
    Plugin Version:     2.2.10
    Driver Version:     
    Firmware Version:     0103


やはり、Digilent社のケーブルだった。
アンサーによると、Xilinxの純正ケーブルを使用すると問題ないとのことだ。

(追加)
XUP USB-JTAG Programming Cableがあったので、ZedBoardのPROGポートにUSBケーブルを付ける代わりに、XUP USB-JTAG Programming Cableを使ったら、SDK、ChipScopeともに使用することが出来た。
ZedBoard_CDC_SVGA_38_120921.png

ZedBoard_CDC_SVGA_39_120921.png

ZedBoardにキャラクタ・ディスプレイ・コントローラを追加する5(完成)”に続く。

  1. 2012年09月21日 05:20 |
  2. ZedBoard
  3. | トラックバック:0
  4. | コメント:3

コメント

Xilinxのアンサーが更新されていて、対応策が一応書いてあるのですが、
「添付のパッチ ファイル」って何のことでしょうね?

Xilinxの純正ケーブルや同等品を持っていないので、気になるところです。
DigilentのHS1でも、無対策だとダメなのでしょうね。

なかなか時間が取れなくて箱に入ったままのZedBoardですが、
このサイトを見て、いじっているつもりになっています。
  1. 2012/09/27(木) 14:47:15 |
  2. URL |
  3. K林 #-
  4. [ 編集 ]

こんにちは。K林さん。アンサーが変更されていることを教えてくださってありがとうございました。
添付のパッチファイルはピ~ンと来ました。英語のアンサーに付いていることがあるんです。案の定、
http://www.xilinx.com/support/answers/51534.htm
に51534.zip がありました。中を開けて見るとxmd.exe がありました。とりあえず入れ替えましたが、まだ確かめていません。
  1. 2012/09/27(木) 19:17:35 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

xmd.exeを入れ替えたら、microUSBケーブルでZedBoardにつなぐだけで、ChipScopeとSDKを同時に使用することができました。
  1. 2012/09/28(金) 20:42:04 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

コメントの投稿


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

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