FC2カウンター FPGAの部屋 Ultra96のDisplayPortを使用するためのプロジェクトを作成する3(デバック)
fc2ブログ

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

FPGAの部屋

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

Ultra96のDisplayPortを使用するためのプロジェクトを作成する3(デバック)

Ultra96のDisplayPortを使用するためのプロジェクトを作成する2(表示失敗)”の続き。

前回は、Ultra96 のDebian を起動し、デバイス・ツリーをロードし、アプリケーション・ソフトを起動して、Displayport への表示を行ったが、テストパターンがうまく表示できなかった。今回は、Vivado Analyzer を使ってデバックを行う。

Vivado Analyzer には2種類のプロービング方法があるが、その2つとも使用した。1つは、ブロック・デザインで配線を選択して、右クリックメニューからDebug を選択して、ブロック・デザインの配線上でSystem ILA を接続する方法と、Open Syntesized Design を開いて、Tools メニューのSet Up Debug... を選択して、論理合成後のネットをプロービングする方法だ。
今回はその両方を使用してデバックした。

最初にブロック・デザインを表示して、pattern_gen_axis IP のAXI4 Lite インターフェースとAXI4-Stream インターフェースにSystem ILA を接続した。
DisplayPort_test_109_19024.png

論理合成を行って、Open Syntesized Design を開いて、Tools メニューのSet Up Debug... を選択し、Zynq UltraSlace+ MPSoC のdp_live_video_in とdp_video_out 、ip_start, ip_done などを論理合成後のネットリストから選択した。

Vivado Anaylzer での波形を貼っておく。
1. 最初に、ネットでプローブビングした信号の画像のピクセルクロックで動作している信号波形を示す。
DisplayPort_test_103_19023.png

axis2video_out_0_de_out の 1 の幅が 1024 クロックで予想通りだ。

2. 次に、ブロック・デザインからプロービングしたAXI4 Lite と AX4-Stream インターフェースの波形を示す。
DisplayPort_test_104_19023.png

特におかしいところは良くわからない。

3. ネットでプロービングした信号のaxi_clk で動作する信号を示す。
DisplayPort_test_105_19023.png

何回もキャプチャすると、tlast と画像出力の位置が変化するようだ。これはおかしい。。。
クロックを変更して、1. と 3. の波形を同じウインドウに表示してみよう。

Open Syntesized Design を開いて、Tools メニューのSet Up Debug... を選択したダイアログでの信号のリストの一部を示す。
すべての信号のクロックを pl_clk0 に変更した。
DisplayPort_test_110_19024.png

これでVivado Analyzer で波形を観測した。
下の波形で ip_start と ip_done に注目して欲しい。ip_done が来た後でも、1クロック分 ip_start が余計に 1 にアサートされている。ip_start が 1クロック分遅延してしまっているので、pattern_gen_axis IP が再スタートと誤認して、axis_tuser を 1 にアサートしているのが分かった。これがバグの原因だ。やっと見つけた。。。
DisplayPort_test_106_19023.png
  1. 2019年01月24日 04:57 |
  2. Ultra96
  3. | トラックバック:0
  4. | コメント:3

コメント

Hi marsee,

May I know what are the steps to run vivado analyzer after we get the project bitstream?

My Ultra96 board is booted with sd card and has a debian os on it. I have no idea what should I do to enable the debugging on the board with Linux.

Thousand thanks.
よろしくお願いします。

tiong
  1. 2019/03/01(金) 09:42:01 |
  2. URL |
  3. tiong #-
  4. [ 編集 ]

tiong さん、こんにちは。

上のブログ記事のように Debug Probe 入りでビットストリームを作って、 .bin ファイルを作り、それでDebian 上で FPGA をコンフィギュレーションしてください。
Vivado のOpen Hardware Manager からOpen Target -> Auto Connect を選択すれば、自動的にVivado Analyzer の画面になるはずです。
  1. 2019/03/01(金) 19:51:55 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

marsee さん、

Thank you very much! It works! :D

tiong
  1. 2019/03/02(土) 12:38:15 |
  2. URL |
  3. tiong #-
  4. [ 編集 ]

コメントの投稿


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

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