FC2カウンター FPGAの部屋 SignalTapⅡを使ってみる2(SignalTapⅡをやってみたがエラーで悩む)
FC2ブログ

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

FPGAの部屋

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

SignalTapⅡを使ってみる2(SignalTapⅡをやってみたがエラーで悩む)

前回、”SignalTapⅡを使ってみる1(TalkBack機能をONにしてSignalTapⅡを起動)”でSignalTapⅡは起動できた。
さてこれから、観測信号を追加して観測する。
Tutorial for Quartus’ SignalTap II Logic Analyzer”を参考にしながら、SignalTapⅡを設定していった。(実際には左の真ん中のSetupタブの白い部分でダブルクリックするとNode Finderが起動するので、そこで観測する信号を選らんだ。後は右の真ん中でクロックを設定した)
一応設定が終了して、Run Analysis アイコンをクリックしてコンパイルした。
Quartus2_signaltap2_34_090718.png

そうすると、一旦QuartusⅡに戻ってコンパイルするが、エラー発生。どうもライセンスがないのに、incremental compilation しているということらしい。
Quartus2_signaltap2_35_090718.png

どうも、incremental compilation しているつもりはないのだが。。。
いろいろ検索してみて、良くわからなかったのだが、”Error: SignalTap and incremental compilation”を見つけた。
それによると、CharDispCtrlerTest.qsf に

set_global_assignment -name INCREMENTAL_COMPILATION OFF


を追加すると、incremental compilation をしなくなるらしい。追加してQuartusⅡでコンパイルすると、今度はその部分はコンパイルが通ったが、今度はメモリを使いすぎたようだ。
Quartus2_signaltap2_36_090718.png

SignalTapⅡに入れる信号を減らすことにした。上から3つの信号を削除して、もう一度QuartusⅡでコンパイルするとコンパイルが通った。
Quartus2_signaltap2_37_090718.png

SignalTapⅡでトリガーを設定した。トリガーは一番下のv_sync_node が1の時とした。
Quartus2_signaltap2_39_090720.png

これで、一番前の図で行ったRun Analysis アイコンをクリックするがなにも反応しない。どうもコンフィギュレーションされていないようだった。それではということで、QuartusⅡに戻ってProgrammer を起動して、コンフィギュレーションした。
Quartus2_signaltap2_40_090720.png

その後、もう一度、Run Analysis アイコンをクリックすると信号のキャプチャが行われて、信号が表示された。
Quartus2_signaltap2_41_090720.png

h_sync_pulse でトリガするとこんな感じの波形になる。
Quartus2_signaltap2_42_090720.png

これでやっと波形をキャプチャすることができた。結構ハードルがあった気がする。ネットでもSignalTapⅡで検索しても、あまり情報は出てこなかったし、おまじないをする必要があるし、皆さん、あまりSignalTapⅡを使っていないのだろうか?
やはり、QuartusⅡのWeb Edition だと、インクリメンタル・コンパイルに対応していないので、.qsfファイルに”set_global_assignment -name INCREMENTAL_COMPILATION OFF”を書く必要があるのが面倒だ。。。


追記: SignalTapⅡからコンフィギュレーション
くりさんに教えていただいたSignalTapⅡからのコンフィギュレーション方法をやってみた。

右上のSOF Managerのところの... ボタンをクリックする。
Quartus2_signaltap2_43_090721.png

Select Programming File ダイアログが開く。CharDispCtrlerTest.sof を選択し、”開く”ボタンをクリックする。
Quartus2_signaltap2_44_090721.png

これで... ボタンの右の四角にCharDispCtrlerTest.sof が入ったので、Program Device アイコンをクリックして、FPGAにダウンロードする。
Quartus2_signaltap2_45_090721.png

これでFPGAにコンフィグデータがダウンロードされ、SignalTapⅡで波形をキャプチャできる準備が整った。
  1. 2009年07月20日 04:22 |
  2. SignalTapⅡ
  3. | トラックバック:0
  4. | コメント:2

コメント

こんにちは。

>set_global_assignment -name INCREMENTAL_COMPILATION OFF”を書く必要があるのが面倒だ。。。

これは、Quratus側のバグのようです。何かの拍子に、.qsfにINCREMENTAL_COMPILATION のオプションが設定され、ダイアログから削除しようとしても、Web Editionでは、チェック・ボックス自体がイネーブルにはなっておらず・・・、といったところです。私も2度ほど経験していますが、常に、このバグが露見するという訳でもないようです。

>どうもコンフィギュレーションされていないようだった。

で、何よりもコンフィグしなければ始まりませんが、Run Analysisとコンフィグレーションは別物です。Run AnalysisはSignalTapⅡにトリガ待ちを指示するだけで、コンフィグも同時に行う訳ではありません。で、一旦コンフィグしてしまえば、Run Analysisによって何度でもトリガを掛けることが出来ます。また、コンフィグはSignalTapⅡダイアログ内からも可能というか、ここからコンフィグするのが本筋です。ダイアログ右上の SOF Managerあたりを弄ってみて下さい。目的のSOFファイルを選んで、いかにも「石に焼きこむぞ」という感じのアイコンを押すとコンフィグできます。この辺、Nios IDEなんかと共に使い始めると、お互いがUSB Blasterを取り合うために、何処からコンフィグするかが結構、問題になったりします。
 あと、観測した信号を一時保存するために内部メモリを使いますので、サンプル数を多くしすぎると、当然、FPGAに入りきりません。
  1. 2009/07/20(月) 12:06:33 |
  2. URL |
  3. くり #mQop/nM.
  4. [ 編集 ]

くりさん、詳しい説明ありがとうございます。

やはりバグなんですね。いつもインクリメンタル・コンパイルの問題に遭遇するわけでもないんですね。私は運が悪かったのかな?情報ありがとうございました。

Run Analysisをすると自動的にQuartusⅡでコンパイルが始まったので、てっきりコンフィグもしてくれるものと勘違いしました。
SignalTapⅡからのコンフィギュレーション方法を追加しておきました。ありがとうございました。

>あと、観測した信号を一時保存するために内部メモリを使いますので、サンプル数を多くしすぎると、当然、FPGAに入りきりません。
これは、ChipScopeでも同じなので、分かっているつもりです。今回は使うRAMブロックの計算をしないでやっていたので、多すぎてはいらなくなってしまいました。
  1. 2009/07/21(火) 04:39:09 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

コメントの投稿


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

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