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

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

FPGAの部屋

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

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

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

前回は、Ultra96 ボードの低速拡張コネクタにPMOD 変換基板を付けて、MT9D111 カメラを接続する回路の論理合成、インプリメンテーション、ビットストリームの生成を行ったが、タイミング・エラーが出てしまった。今回は、そのタイミング・エラーを解消したい。

最初に、Open Implemented Design をクリックして、タイミング・エラーの内容を確認する。
Timing タブのInter-Clock Paths にエラーが出ている。Inter-Clock Paths -> clk_pl_0 to pclk にエラーがある。
Setup -3.431ns (10) をクリックしてエラー内容を表示する。
すると、mt9d111_inf_axis_0 の信号間のセットアップ時間のエラーだということが分かる。init_done 関係なので、最初の電源立ち上がりのときの1発出る信号だ。
DMA_Write_sFB_31_181109.png

次に、Inter-Clock Paths -> pclk to clk_pl_0 にもエラーがある。こちらは ila 関係のエラーだということがわかった。Vivado Analyzer で pclk の信号を clk_pl_0 でサンプルしているようだ。これは仕方ない。
DMA_Write_sFB_32_181109.png

clk_pl_0 to pclk のエラーだけ問題ないか?を調べよう。
Reports メニューからTiming -> Report CDC... を選択して、Clock Domain Closing について調べてみよう。

clk_pl_0 to pclk のレポートを設定した。
DMA_Write_sFB_33_181109.png

結果として Unsafe はないので、大丈夫のようだ。
DMA_Write_sFB_34_181109.png

DMA_Write_sFB_35_181109.png

それでは、次に、Open Implemented Design のEdit Timing Constrains をクリックして、False Path を設定しよう。
DMA_Write_sFB_36_181109.png

clk_pl_0 から pclk へのFalse Path の設定。
DMA_Write_sFB_37_181109.png

pclk から clk_pl_0 へのFalse Path の設定。
DMA_Write_sFB_38_181109.png

2つのFalse Path を設定した。
DMA_Write_sFB_39_181109.png

この制約をセーブして、Implemented Design を終了した。
cam_test.xdc にFalse Path が追加されている。
DMA_Write_sFB_40_181109.png

もう一度、cam_test.xdc をセーブして、論理合成、インプリメンテーション、ビットストリームの生成をやり直した。
結果は、タイミング・エラーが無くなった。
DMA_Write_sFB_41_181109.png
  1. 2018年11月09日 05:35 |
  2. Ultra96
  3. | トラックバック:0
  4. | コメント:0