FC2カウンター FPGAの部屋 ISEで任意のパスのディレイを見る方法
FC2ブログ

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

FPGAの部屋

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

ISEで任意のパスのディレイを見る方法

ISE7.1iで任意のパスのディレイを見る方法を紹介しようと思う。
サンプル回路は7セグメントLEDのダイナミック点灯の回路。サンプルはここにあります。
ファイルをダウンロードするとdynadisp_test_1ms.ZIPというファイルが出てくる。これをWindows XPだったらダブルクリックで、それ以外だったらソフト(Winzip等)を使って解凍する。
解凍すると、dynadisp_testというフォルダが出てくる。それを開けるとVHDLファイルとまたdynadisp_testというフォルダが出てくる。そのフォルダをまたダブルクリックすると、ISEのプロジェクトファイルdynadisp_test.iseがあるので、それをダブルクリックしてISEを起動する。
そうすると、すでにコンパイル済みのプロジェクトが出てくるので、"Processes for Source"の"Synthesize-XST"を展開して、"View Technology Schematic"をダブルクリックする。(下図参照)
Tech_Schma_1_051213.png

そうすると、一番上の回路図が出てくる。ここで、赤丸の所のアンドックアイコンをクリックして、ISEの外に出そう。(下図参照)
Tech_Schma_2_051213.png

下の図のウインドウが開く。これは一番トップの回路図。赤い矢印のところをダブルクリックすると、下の回路図が開く。
Tech_Schma_3_051213.png

Spartan3のテクノロジにマッピングした回路図が出てくる。(下図参照、注:下図の回路図は上図をクリックしてから、拡大して位置を調整してあります)
Tech_Schma_4_051213.png

CLKから線がつながっている箱がBUFGだ。クロックがファンアウトが大きいのでそれ用のバッファ。黄色いダイアログがプロパティ。赤い線がネットで名前はclk_BUFGPである。
今度は、Inst_ssgdisp_FreqDivi_lcnt_12とswl_3のDフリップフロップを見てみよう。
Tech_Schma_5_051213.png

Tech_Schma_6_051213.png

検索するには左下のInstance ContentsペインからInstancesを展開するとインスタンスがあるので、swl_3とかをクリックすると右の回路図に赤でインスタンスが表示される。
これを覚えておいて、次にTiminig Analyzerを起動しよう。
例によって、Process View - Implement Design - Place & Route - Generate Post-Place & Route Static Timing - Analyze Post-Place & Route Static Timing(Timing Analyzer)をダブルクリックして、Timing Analyzerを起動。起動したら、ツールバーの右から5番目の砂時計マーク(Analyze against Users Paths by defining Endpoint)をクリックする。
下図のようなダイアログが開く。
Tech_Schma_7_051213.png

ここではclkパッドから上で見たInst_ssgdisp_FreqDivi_lcnt_12とswl_3のDフリップフロップまでのクロックパスのディレイを見てみよう。
Find whatのテキストボックスに正規表現で名前を指定してもいいが、今回は数が少ないので左下のResourcesペインからPadsを展開しよう。そうすると、clkパッドがある。clkをクリックして、右真ん中のSourcesペインの>ボタンをクリック。Resourcesの1行目にclkが入る。
次に左下のResourcesペインからFlip-Flopsを展開しよう。Inst_ssgdisp_FreqDivi_lcnt_12を見つけて、クリック。右下のDestinationsペインで>ボタンをクリックすると、同様にResourcesの1行目にInst_ssgdisp_FreqDivi_lcnt_12が入る。同様にswl_3もDestinationsペインの2行目に入れる。
Tech_Schma_8_051213.png

OKボタンをクリックすると、ディレイを計算して表示する。
Tech_Schma_9_051213.png

赤で囲んだのがclkパッドからswl_3フリップフロップまでのディレイ、緑で囲んだのがclkパッドからInst_ssgdisp_FreqDivi_lcnt_12フリップフロップまでのディレイ。それぞれ2.991nsと2.952nsで異なっている。何が違うかというと、clk_BUFGPネットが1.051nsと1.012nsで違っている。これはグローバルバッファのネットである。このようにフリップフロップによっては、クロックのスキューが生じる。
これ以上はFPGA Editorでなければ視覚的にわからない。今日はここまでだが、FPGA Editorでどう見えるかも紹介したい。
  1. 2005年12月13日 20:29 |
  2. Timing Analyzerの使い方
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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