FC2カウンター FPGAの部屋 ZedBoardにビットマップ・ディスプレイ・コントローラを追加する6(完成とは言えない)
FC2ブログ

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

FPGAの部屋

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

ZedBoardにビットマップ・ディスプレイ・コントローラを追加する6(完成とは言えない)

ZedBoardにビットマップ・ディスプレイ・コントローラを追加する5(ChipScopeデバック)”の続き。

あれからいろいろデバックをしてきたが、原因がよく分からなかった。最初のAXI4バスのRead address channelのやり取りは完了している様な波形だったので、スタートのAXI4バス、Read address channelのRead要求をみるために、85秒間のWaitを回路に挿入してみた。そうしたところ、ビットマップ・ディスプレイ・コントローラが動作し始めた。多分、DDR3 SDRAMコントローラをARMが設定する期間(トレーニングシーケンスが終了するまでかも?)はAXI_HP0に要求出してはダメなのかも知れない?init_done の様な信号があるかな?と思って探してみたのだが、見つからない。ARESETNがディアサートされてから、すぐ始めてはダメなのだと思う。どの位Waitすれば良いかは分からない?とりあえず、85秒Waitすれば動作することはわかった。

・SDKのデバックモードではCソフトウェアの最初の行で停止している。
ZedBoad_BitMap_DispCnt_59_120930.png

・その時の画面の様子を下に示す。ランダムなデータの画面だ。
ZedBoad_BitMap_DispCnt_69_120930.jpg

・VGAの画面を全てクリアする予定のルーチンを実行した。
ZedBoad_BitMap_DispCnt_60_120930.png

・Atlysボードではうまく動いたと思ったのだが、ZedBoardのARMでは、途中だけクリアされていた。
ZedBoad_BitMap_DispCnt_70_120930.jpg

・VGA画面いっぱいにキャラクタを描画するルーチンを実行した。
ZedBoad_BitMap_DispCnt_61_120930.png

・画面いっぱいに字は書かれているようなのだが、おかしいのがわかる。
ZedBoad_BitMap_DispCnt_71_120930.jpg

・もう一度、画面にキャラクタを描画すると、状況が変わった。ただし、画面は揺らいでいないので、ビットマップ・ディスプレイ・コントローラがDDR3 SDRAMのフレームバッファからReadしたデータは一定していると思われる。
ZedBoad_BitMap_DispCnt_72_120930.jpg

・ChipScopeの画面を示す。最初に、画像フレームが始まった時の64ビット幅のデータをDDR3 SDRAMから128バーストで読んでくる時のものだ。S_AXI_HP0はAXI3で16バーストしかバーストしないが、どうやらAXIインターコネクトで、その辺を吸収してくれているようだ。
ZedBoad_BitMap_DispCnt_62_120930.png

・前のWaveウインドウの前の部分を拡大するとこうなる。要求してからデータが来るまでに約20クロック、200nsec かかっていた。
ZedBoad_BitMap_DispCnt_63_120930.png

・通常の動作では、ピクセルデータでReadしたデータを出力して、ピクセルを貯めておくFIFOが半分になると、容量の半分だけDDR3 SDRAMからReadする。その状況を下に示す。
ZedBoad_BitMap_DispCnt_64_120930.png

・XカーソルとOカーソルの差分が63なので、64クロック期間データを読んできている。
ZedBoad_BitMap_DispCnt_65_120930.png

・Readバースト間のクロック数は513クロックなので、64 / 513 x 100 = 12.5% バス帯域の占有率は12.5% だった。(VGA (640x480ピクセル)解像度です。1ピクセル = 32bit (4Bytes))
ZedBoad_BitMap_DispCnt_66_120930.png

次に、キャラクタがおかしい原因を追求しようと思ったが、先に確実に動作するようにしようか?と思う。(実はやってみたい、良いと思われる案があるのだ)
  1. 2012年09月30日 17:58 |
  2. ZedBoard
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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