FC2カウンター FPGAの部屋 2018年11月21日
FC2ブログ

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

FPGAの部屋

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

Ultra96用PMOD拡張ボードでカメラ入力10(Vivado 2018.2のcam_test_182プロジェクト7)

Ultra96用PMOD拡張ボードでカメラ入力9(Vivado 2018.2のcam_test_182プロジェクト6)”の続き。

前回は、DMA_Write_sFB が動作しないということで、再度作り直して、ソースコードを貼った。今回は、再度Vivado HLS でC シミュレーションや合成、C/RTL 強調シミュレーション、Export RTL を行う。

考えてみれば、今回のトリプル・フレーム・バッファのソースコードは、ダブル・フレーム・バッファは出来ないが、シングルとトリプルにはなるよね。シングル・フレーム・バッファには、3 つのフレーム・バッファ・アドレス・レジスタに同じアドレスを書けば良い。

さて、最初に C シミュレーションを行った。
DMA_Write_sFB_56_181119.png

C コードの合成を行った。結果を示す。
DMA_Write_sFB_57_181119.png
DMA_Write_sFB_58_181119.png

3 つ分なので、1440024 クロックかかっている。正常だし、1 処理 1 クロックに近い。

C/RTL 強調シミュレーションを行った。
DMA_Write_sFB_59_181119.png

今度はうまく行った。1440098 クロックだった。問題ない。

C/RTL 強調シミュレーションの波形を示す。
まずは全体波形から。
DMA_Write_sFB_60_181119.png

ins(axis) -> ins_TREADY を見ると、3 回ほど 0 に落ちているところはあるが、ほとんど 1 のままということが分かる。スループットが大きいことがわかった。
ins(axis) -> ins_TREADY が 0 に落ちている辺り、つまり、DMA の切り替え部分を拡大してみよう。
DMA_Write_sFB_61_181119.png

うまく行っているようだ。

Export RTL を行った。
DMA_Write_sFB_62_181119.png

全く問題なさそうだ。
  1. 2018年11月21日 05:01 |
  2. Ultra96
  3. | トラックバック:0
  4. | コメント:0