ISim
チ ュ ー ト リ アル
Xilinx is disclosing this user guide, manual, release note, and/or specification (the "Documentation") to you solely for use in the development of designs to operate with Xilinx hardware devices.You may not reproduce, distribute, republish, download, display, post, or transmit the Documentation in any form or by any means including, but not limited to, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of Xilinx.Xilinx expressly disclaims any liability arising out of your use of the Documentation.Xilinx reserves the right, at its sole discretion, to change the Documentation without notice at any time.Xilinx assumes no obligation to correct any errors contained in the Documentation, or to advise you of any corrections or updates.Xilinx expressly disclaims any liability in connection with technical support or assistance that may be provided to you in connection with the Information.
THE DOCUMENTATION IS DISCLOSED TO YOU “AS-IS” WITH NO WARRANTY OF ANY KIND.XILINX MAKES NO OTHER WARRANTIES, WHETHER EXPRESS, IMPLIED, OR STATUTORY, REGARDING THE DOCUMENTATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT OF THIRD-PARTY RIGHTS.IN NO EVENT WILL XILINX BE LIABLE FOR ANY CONSEQUENTIAL, INDIRECT, EXEMPLARY, SPECIAL, OR INCIDENTAL DAMAGES, INCLUDING ANY LOSS OF DATA OR LOST PROFITS, ARISING FROM YOUR USE OF THE DOCUMENTATION.
© 2011 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respective owners.
本資料は英語版 (v13.3) を翻訳 し た も ので、 内容に相違が生 じ る 場合には原文を優先 し ます。 資料に よ っ ては英語版の更新に対応 し ていない も のがあ り ます。 日本語版は参考用 と し て ご使用の上、 最新情報につ き ま し ては、 必ず最新英語版を ご参照 く だ さ い。 こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、[email protected] ま でお知 ら せ く だ さ い。 いただ き ま し た ご意見を参考に早急に対応 さ せていただ き ます。 なお、 こ の メ ールア ド レ スへのお問い合わせは受け 付けてお り ません。 あ ら か じ めご了承 く だ さ い。
改訂履歴
次の表に、 こ の資料の改訂履歴を示 し ます。 日付 バージ ョ ン 改訂内容 10/19/2011 13.3 • 「 こ のチ ュ ー ト リ アルについて」 の章を削除 • 13.3 リ リ ース に合わせて更新。 書式お よ び表現の改善のみ。改訂履歴. . . 2
第
1
章
: ISim
の概要
チ ュ ー ト リ アルフ ロ ー . . . 5 ISim コ ンポーネ ン ト. . . 6 vhpcomp お よ び vlogcomp パーサー. . . .6 fuse コ マ ン ド . . . .6 ISE シ ミ ュ レーシ ョ ン実行フ ァ イ ル . . . .6 isimgui.exe . . . .6第
2
章
: ISim
の実行
必要な ソ フ ト ウ ェ ア . . . 7 チ ュ ー ト リ アルデザ イ ン フ ァ イ ルの イ ン ス ト ール. . . 7 デザ イ ンの概要 . . . 8 論理ブ ロ ッ ク . . . .8 デザ イ ンセルフ チ ェ ッ ク テ ス ト ベンチ . . . .9 デザ イ ンのシ ミ ュ レーシ ョ ン. . . 9ISE Project Navigator でのプ ロ ジ ェ ク ト の作成 . . . .10
ビヘ イ ビ アーシ ミ ュ レーシ ョ ンの設定お よ び起動. . . .14 操作後の結果 . . . .16 次の操作. . . .16
第
3
章
:
ス タ ン ド ア ロ ン
ISim
の実行
は じ めに. . . 17 必要な ソ フ ト ウ ェ ア. . . .17 チ ュ ー ト リ アルデザ イ ン フ ァ イ ルの イ ン ス ト ール . . . .17 デザ イ ンの概要 . . . 18 論理ブ ロ ッ ク . . . .18 デザ イ ンセルフ チ ェ ッ ク テ ス ト ベンチ . . . .19 シ ミ ュ レーシ ョ ンの準備. . . 20 ISim プ ロ ジ ェ ク ト フ ァ イ ルの作成. . . .20 シ ミ ュ レーシ ョ ン実行フ ァ イ ルの構築 . . . .21 デザ イ ンのシ ミ ュ レーシ ョ ン. . . .22 操作後の結果. . . 22 次の操作. . . 22第
4
章
: ISim
グ ラ フ ィ カル
ユーザー
イ ン タ ー フ ェ イ スの使用
ISim GUI の説明 . . . .24 デザ イ ンの検証 . . . 28 信号の追加 . . . .28 特定時間のシ ミ ュ レーシ ョ ンの実行 . . . .30 シ ミ ュ レーシ ョ ンの再ス タ ー ト . . . .31 グループの追加 . . . .32 仕切 り の追加 . . . .33 サブモジ ュ ールか ら の信号の追加. . . .34 信号お よ び波形ウ ィ ン ド ウ のプ ロ パテ ィ の変更. . . .36 波形ウ ィ ン ド ウ の設定の保存. . . .38目次
デザ イ ンのシ ミ ュ レーシ ョ ン. . . .38 マーカーの使用 . . . .39 カー ソ ルの使用 . . . .40 複数の波形 コ ン フ ィ ギ ュ レーシ ョ ンの使用. . . .43 デザ イ ンのデバ ッ グ . . . 45 ソ ース コ ー ド の表示 . . . .45 ブ レー ク ポ イ ン ト の使用 と ソ ース コ ー ド の 1 行ずつの実行 . . . .46 バグ修正の確認 . . . .50 ま と め. . . .50
付録
A :
その他の リ ソ ース
ザ イ リ ン ク ス リ ソ ース . . . 51第
1
章
ISim
の概要
ISim チ ュ ー ト リ アルでは、 ザ イ リ ン ク ス設計者向けに ISim ソ フ ト ウ ェ ア を詳細に説明 し ます。 こ のチ ュ ー ト リ アルは、Windows 環境で ISim ソ フ ト ウ ェ ア を実行す る ユーザー向けに設計 さ れて い ます。 ほかのオペレーテ ィ ン グ シ ス テ ムでは、 一部の手順を正 し く 実行で き る よ う に変更が必要 にな る 場合があ り ます。 ISim は、VHDL、Verilog、 お よ び混合言語デザ イ ンで論理 (ビヘ イ ビ アー) シ ミ ュ レーシ ョ ンお よ び タ イ ミ ン グ シ ミ ュ レ ーシ ョ ン を 実行で き る ハー ド ウ ェ ア記述言語 (HDL) シ ミ ュ レ ー タ です。 ISim 環境は、 次の主要エ レ メ ン ト で構成 さ れてい ます。• vhpcomp (VHDL) お よび vlogcomp (Verilog) パーサー • fuse (HDL エ ラ ボ レー タ ーお よ び リ ン カー) コ マン ド • シ ミ ュ レーシ ョ ン実行フ ァ イ ル • ISim グ ラ フ ィ カルユーザーイ ン タ ーフ ェ イ ス (GUI) 注記 : ISim の詳細は、 『ISim ユーザーガ イ ド 』 を参照 し て く だ さ い。 こ の資料への リ ン ク は、付 録A 「その他の リ ソ ース」 に含まれてい ます。
チ ュ ー ト リ アル
フ ロー
こ のチ ュ ー ト リ アルでは、ISim を使用 し て論理 (ビヘ イ ビ アー)シ ミ ュ レーシ ョ ン を実行す る 2 つ の フ ロ ーを紹介 し ます。• ISE Project Navigator ま たは PlanAhead™ ソ フ ト ウ ェ アか ら の実行 : こ の フ ロ ーでは、ISE Project Navigator ま たは PlanAhead ソ フ ト ウ ェ アで実行可能な シ ミ ュ レーシ ョ ンプ ロ セ ス か ら ISim を起動 し ます。 こ のチ ュ ー ト リ アルでは ISE Project Navigator を使用 し ます。 こ の フ ロ ーは Project Navigator を使用 し てザ イ リ ン ク ス FPGA ま たは CPLD を イ ンプ リ メ ン ト す る プ ロ ジ ェ ク ト を作成 し ていて、 回路図や コ ア な ど の HDL 以外の ソ ース を含むデザ イ ンに最適 です。 こ れ ら の ソ ースは、ISim で コ ンパ イ ルで き る よ う に Project Navigator に よ り HDL ソ ー ス フ ァ イ ルに変換 さ れ る 必要があ り ます。 こ の フ ロ ーに関連する 章は、 次の と お り です。 - 第1章 「ISim の概要」 - 第2章 「ISim の実行」 - 第4章 「ISim グ ラ フ ィ カルユーザーイ ン タ ーフ ェ イ ス の使用」 • ス タ ン ド ア ロ ン ISim : ス タ ン ド ア ロ ン モー ド では、 コ マン ド ラ イ ン ま たはバ ッ チ フ ァ イ ル モー ド で ISim プ ロ ジ ェ ク ト フ ァ イ ルを作成 し て、HDL リ ン カーお よ びシ ミ ュ レーシ ョ ン実行 フ ァ イ ルを実行す る こ と で、デザ イ ン を シ ミ ュ レーシ ョ ン し ます。HDL デザ イ ン管理に Project Navigator ま たは PlanAhead ソ フ ト ウ ェ アが不要な場合は、 こ の フ ロ ーを使用 し て く だ さ い。 こ の フ ロ ーに関連す る 章は、 次の と お り です。 - 第1章 「ISim の概要」 - 第3章 「ス タ ン ド ア ロ ン ISim の実行」
第 1 章 : ISim の概要
- 第4章 「ISim グ ラ フ ィ カルユーザーイ ン タ ーフ ェ イ ス の使用」
ISim
コ ンポーネ ン ト
こ のセ ク シ ョ ンでは、ISim の コ ン ポーネ ン ト について説明 し ます。
vhpcomp
お よび
vlogcomp
パーサー
vhpcomp では VHDL ソ ース フ ァ イ ル、vlogcomp では Verilog ソ ース フ ァ イ ルが解析、 コ ンパ イ ル さ れます。 次に、fuse コ マ ン ド で解析 さ れたダ ンプ を使用 し てオブジ ェ ク ト コ ー ド が生成 さ れ、 こ の コ ー ド がシ ミ ュ レーシ ョ ン カーネル ラ イ ブ ラ リ と リ ン ク さ れシ ミ ュ レ ーシ ョ ン実行フ ァ イ ル が生成 さ れます。
fuse
コ マ ン ド
fuse コ マ ン ド は、ISim で使用 さ れ る HDL エ ラ ボ レー タ ーお よ び リ ン カーです。最上位デザ イ ンユ ニ ッ ト があ る 場合、 ス タ テ ィ ッ ク エ ラ ボ レーシ ョ ン (既存デザ イ ンのエ ラ ボ レーシ ョ ン) をデザ イ ンで実行 し 、 こ れ ら のユニ ッ ト を コ ー ド に コ ンパ イ ル し ます。 次にデザ イ ンユニ ッ ト のオブジ ェ ク ト フ ァ イ ル間が リ ン ク さ れて、 シ ミ ュ レーシ ョ ン実行フ ァ イ ルが作成 さ れます。 fuse コ マン ド では、プ ロ ジ ェ ク ト フ ァ イ ル (.prj) に含まれてい る VHDL ま たは Verilog ソ ースコ ー ド それぞれに vlogcomp ま たは vhpcomp を自動的に実行 し て、 オンザ フ ラ イ で ソ ー ス を コ ンパ イ ルで き ます。ISE
シ ミ ュ レ ーシ ョ ン実行 フ ァ イル
シ ミ ュ レーシ ョ ン実行フ ァ イ ルは、fuse コ マ ン ド に よ り 生成 さ れます。デフ ォ ル ト 名は x.exe、 ISim でデザ イ ンのシ ミ ュ レーシ ョ ン を実行す る と き に使用で き ます。
• ISim を ISE Project Navigator ま たは PlanAhead ソ フ ト ウ ェ アか ら 実行する と き は、 こ れ ら の ソ フ ト ウ ェ アで生成 し た x.exe が起動 さ れます。
• ISim を コ マ ン ド ラ イ ンか ら 実行す る と き は、 生成 し た実行フ ァ イ ルを明示的に指定 し て起動 す る 必要があ り ます。
シ ミ ュ レーシ ョ ン実行フ ァ イ ルでは、 デザ イ ン を駆動、 プ ロ ーブす る Tcl コ マ ン ド を使用 し て イ ベ ン ト ド リ ブンのシ ミ ュ レーシ ョ ンが開始 さ れます。
注記 : ISE シ ミ ュ レ ーシ ョ ン実行 フ ァ イ ルの拡張子は Linux お よ び Windows 共に .exe です。 デ フ ォ ル ト の実行フ ァ イ ル名フ ォーマ ッ ト は、 x.exe です。
isimgui.exe
isimgui.exe (Linux では isimgui) は ISim GUI で、 波形 ウ ィ ン ド ウ、 ツールバー、 パネル、 お よ び ス テー タ スバーが含ま れてい ます。 メ イ ン ウ ィ ン ド ウ では、 デザ イ ン でシ ミ ュ レーシ ョ ンが可能 な箇所の表示、 波形 ウ ィ ン ド ウ での信号の追加お よ び表示、ISim コ マ ン ド を使用 し た シ ミ ュ レ ー シ ョ ンの実行、 デザ イ ンの検証、 お よ びデバ ッ グ を実行で き ます。
第
2
章
ISim
の実行
ザ イ リ ン ク ス ISE® Design Suite では、ISim を使用 し た統合フ ロ ーが提供 さ れてお り 、ISE Project Navigator ま たは PlanAhead™ ソ フ ト ウ ェ アか ら 直接シ ミ ュ レ ーシ ョ ン を実行で き ます。ISim シ ミ ュ レ ーシ ョ ン を実行す る シ ミ ュ レ ーシ ョ ン コ マ ン ド は こ の フ ロ ーを使用 し てデザ イ ン を シ ミ ュ レーシ ョ ンす る と き に生成 さ れて、 自動的にバ ッ ク グ ラ ン ド で実行 さ れます。
必要な ソ フ ト ウ ェ ア
こ のチ ュ ー ト リ アルを実行す る には、 次のいずれかの ソ フ ト ウ ェ ア を イ ン ス ト ールす る 必要があ り ます。 • ISE WebPACK™ 13.3• ISE Design Suite 13.3 Edition (Logic、DSP、Embedded、System)
ザ イ リ ン ク ス ソ フ ト ウ ェ アの イ ン ス ト ールに関す る 詳細は、 『ISE Design Suite 13 : イ ン ス ト ール お よ び ラ イ セ ン スガ イ ド 』 UG798) を参照 し て く だ さ い。 こ の資料への リ ン ク は、付録A 「その他 の リ ソ ース」 に含まれてい ます。
チ ュ ー ト リ アル
デザイ ン
フ ァ イルのイ ン ス ト ール
こ のチ ュ ー ト リ アルのデザ イ ン フ ァ イ ルは、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト のチ ュ ー ト リ アルペー ジか ら 入手で き ます。 • ISim_In-Depth_Tutorial.zip デザ イ ン フ ァ イ ルを ダ ウ ン ロ ー ド し ます。 • デザ イ ン フ ァ イ ルを書 き 込み/読み取 り 権があ る デ ィ レ ク ト リ に解凍 し ます。 デザ イ ン フ ァ イ ルには、 次が含まれてい ます。 表 2-1 : チ ュ ー ト リ アルデザイ ン フ ァ イル フ ォルダー 説明sources
デザ イ ンの論理シ ミ ュ レーシ ョ ンに必要な HDL フ ァ イ ルが含まれてい ます。scripts
シ ミ ュ レ ーシ ョ ン を実行す る ための未完成の ス ク リ プ ト フ ァ イ ルが含 ま れて い ま す。 こ れ ら の ス ク リ プ ト フ ァ イ ルは、 チ ュ ー ト リ アルの進行に伴い完成 さ せてい き ます。completed
完成 し た ス ク リ プ ト フ ァ イ ル、 シ ミ ュ レーシ ョ ン フ ァ イ ル、 お よ び波形 コ ン フ ィ ギ ュ レ ーシ ョ ン フ ァ イ ルに加え、 完成 し てい る ISE 13 プ ロ ジ ェ ク ト の チ ュ ー ト リ アルデザ イ ンが含まれてお り 、 進行中のデザ イ ン フ ァ イ ル と 比較 で き ます。 readme.txt こ のチ ュ ー ト リ アルデザ イ ンに関す る リ ー ド ミ ーフ ァ イ ル第 2 章 : ISim の実行
デザイ ンの概要
チ ュ ー ト リ アルデザ イ ン は、Virtex®-5 デジ タ ル ク ロ ッ ク マネージ ャ ー (DCM) のダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン機能を示 し た も のです。 Virtex-5 DCM を使用す る と 、 デザ イ ンで次の式に基づいて出力 ク ロ ッ ク が生成 さ れます。 出力 ク ロ ッ ク = 入力 ク ロ ッ ク * (倍周率 / 分周率) DCM のダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト (DRP) を使用す る と 、 倍周率お よ び分周 率を定義 し 直 し て さ ま ざ ま な出力周波数を生成で き ます。詳細は、 『Virtex-5 FPGA ユーザーガ イ ド 』 (UG190) の 「 ク ロ ッ ク リ ソ ース」 セ ク シ ョ ン を参照 し て く だ さ い。 こ の資料への リ ン ク は、付録A 「その他の リ ソ ース」 に含まれてい ます。
論理ブ ロ ッ ク
こ のチ ュ ー ト リ アルデザ イ ンには、 次の論理ブ ロ ッ ク が含まれてい ます。drp_dcm (drp_dcm.vhd)
内部フ ィ ー ド バ ッ ク 付 き 、 周波数制御出力、 デ ュ ーテ ィ サ イ ク ル調整、 お よ びダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン機能を含んだ Virtex-5 DCM マ ク ロ です。 CLKFX_OUT 出力では、 次の式で定義 さ れた ク ロ ッ ク が供給 さ れます。 CLKFX_OUT = CLKIN_IN * (倍周率/分周率) た と えば、100MHz 入力 ク ロ ッ ク を使用す る と き 、 倍周率を 6、 分周率を 5 にす る と 120MHz の CLKFX_OUT 出力 ク ロ ッ ク が生成 さ れます。 DCM の DRP ポー ト を使用す る と 、 倍周率 (M) お よ び分周率 (D) パ ラ メ ー タ ーを ダ イ ナ ミ ッ ク に 定義 し 直 し て異な る CLKFX_OUT 周波数を生成で き ます。 こ のチ ュ ー ト リ アルでは、 こ れ ら の倍 周率お よ び分周率のパ ラ メ ー タ ーが 16 ビ ッ ト 幅の DI-IN ポー ト を使用 し て 16 進数フ ォーマ ッ ト で DCM に渡 さ れ る 方法を示 し ます。 DI_IN[15:8] = M – 1 DI_IN[7:0] = D – 1 た と えば、M/D が 6/5 の と き 、DI_IN は 0504h にな り ます。drp_stmach (drp_stmach.vhd)
drp_stmach.vhd モジ ュ ールでは、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンコ ン ト ロ ー ラ ー (DRP) が記述 さ れてい ます。DRP コ ン ト ロ ー ラ ーでは、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンサ イ ク ルを実行す る ために DCM の DRP 信号を アサー ト 、 監視 し ます。 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン サ イ ク ルは、drp_start 信号がアサー ト さ れ る と 開始 し ま す。 こ の手順に従 う と 、DRP コ ン ト ロ ー ラ ーで該当す る DCM の DRP ピ ンがアサー ト さ れ、 フル サ イ ク ルが完了 し ます。 drp_done 信号は、DRP が正 し く 完了 し た こ と を通知 し ます。drp_demo (drp_demo.vhd)
チ ュ ー ト リ ア ルデザ イ ン の最上位モ ジ ュ ールで、DCM マ ク ロ お よ び DRP コ ン ト ロ ー ラ ーモ ジ ュ ールが外部の I/O ポー ト に接続 さ れてい ます。デザイ ンのシ ミ ュ レーシ ョ ン
drp_demo_tb (drp_demo_tb.vhd)
セルフチ ェ ッ ク HDL テ ス ト ベンチです。 詳細は、 次のサブセ ク シ ョ ン を参照 し て く だ さ い。デザイ ン
セル フ チ ェ ッ ク
テ ス ト ベ ン チ
こ のデザ イ ン の機能性を テ ス ト で き る よ う に、 セルフ チ ェ ッ ク テ ス ト ベンチが提供 さ れてい ま す ([sources] フ ォ ルダーに含まれてい る drp_demo_tb.vhd)。 セルフチ ェ ッ ク テ ス ト ベンチには、 予期 す る 結果 と シ ミ ュ レ ーシ ョ ン でのサ ン プル値を比較す る 検証ルーチ ン ま たは関数が含 ま れてい ま す。 こ のデザ イ ンで提供 さ れ る セルフチ ェ ッ ク テ ス ト ベンチでは、 次が実行 さ れます。 • デザ イ ンのシ ス テ ム ク ロ ッ ク (clk_in) 向けに 100MHz 入力 ク ロ ッ ク を生成 • デザ イ ンの出力周波数を ダ イ ナ ミ ッ ク に変更す る ため、4 つの異な る テ ス ト を実行。 各テ ス ト では、drp_start 信号を使用 し て DRP サ イ ク ルが開始 さ れ、 出力 ク ロ ッ ク に個別の周波数が設 定 さ れます。表2-2に、 各テ ス ト で使用 さ れ る 出力周波数お よ び倍周率/分周率パ ラ メ ー タ ーを 示 し ます。 • 各テ ス ト では、 テ ス ト ベンチで予期 さ れ る ク ロ ッ ク 周期 と シ ミ ュ レーシ ョ ン中に計測 さ れた ク ロ ッ ク 周期が比較 さ れます。 比較結果に基づいて、 テ ス ト が正常に完了 し たか、 ま たはエ ラ ー が発生 し た を示す メ ッ セージがシ ミ ュ レー タ で表示 さ れます。 テ ス ト ベンチで使用 さ れ る ソ ー ス フ ァ イ ルの 2 つにはエ ラ ーが含ま れてい る ので、 チ ュ ー ト リ アル後半では ISim ソ フ ト ウ ェ アに含まれ る デバ ッ グ機能を使用 し ます。 • シ ミ ュ レーシ ョ ンの完了時に生成 さ れ る サマ リ レ ポー ト には、正常に完了 し た テ ス ト と エ ラ ー が発生 し た テ ス ト の両方を含む リ ス ト が含まれてい ます。 こ のデザ イ ン の機能の詳細は、 デザ イ ン の ソ ー ス に含 ま れ る イ ン ラ イ ン コ メ ン ト を参照 し て く だ さ い。ヒ ン ト : Project Navigator でテ ス ト ベンチ を作成す る には、[Project] → [Create New Sources] を ク リ ッ ク し 、[VHDL Testbench] ま たは [Verilog Text Fixture] を選択 し ます。
注記 : HDL テ ス ト ベンチ設計方法の詳細は、 アプ リ ケーシ ョ ン ノ ー ト XAPP199 『効率的なテ ス
ト ベンチの作成』 を参照 し て く だ さ い。
デザイ ンのシ ミ ュ レーシ ョ ン
ISim 統合フ ロ ーでは、ISE Project Navigator ま たは PlanAhead ソ フ ト ウ ェ アでデザ イ ンの ビヘ イ ビ アシ ミ ュ レーシ ョ ンお よび タ イ ミ ン グシ ミ ュ レーシ ョ ン を実行で き ます。 こ のチ ュ ー ト リ アルフ ロ ーでは、 最初にチ ュ ー ト リ アルデザ イ ン向けの ISE プ ロ ジ ェ ク ト を作成 し ます。 次に、 ビヘ イ ビ アーシ ミ ュ レーシ ョ ンのプ ロ パテ ィ を設定 し てか ら ISim シ ミ ュ レー タ を 起動 し てデザ イ ンのビヘ イ ビ アーシ ミ ュ レーシ ョ ン を実行 し ます。 表 2-2 : 出力周波数および倍周率/分周率パラ メ ー タ ー テ ス ト 周波数(MHz) 周期 (ps) 倍周率 (M) 分周率 (D) 1 75 13,332 3 4 2 120 8,332 6 5 3 250 4000 5 2 4 400 2,500 4 1
第 2 章 : ISim の実行
ISE Project Navigator
でのプ ロ ジ ェ ク ト の作成
ISE Project Navigator の New Project Wizard を使用 し て、 チ ュ ー ト リ アルデザ イ ン向けの ISE プ ロ ジ ェ ク ト を作成 し ます。
注記 : 必ず7ページの 「チ ュ ー ト リ アルデザ イ ン フ ァ イ ルの イ ン ス ト ール」 を読んでデザ イ ン に 必要な フ ァ イ ルを入手 し て く だ さ い。
Project Navigator
の起動 と
New Project Wizard
の使用
Project Navigator を起動 し て、ISE プ ロ ジ ェ ク ト を作成 し ます。 1. ISE Project Navigator を起動 し ます。
2. [File] → [New Project] を ク リ ッ ク し て New Project Wizard を起動 し ます。
3. [Create New Project] ページでプ ロ ジ ェ ク ト の名前 (例 : ISim_Tutorial) お よ び保存先を入力 し ます。
4. [Next] を ク リ ッ ク し ます。
5. [Project Settings] ページで、 デバ イ スお よ びプ ロ ジ ェ ク ト のプ ロ パテ ィ を選択 し ます。図2-1
の設定に合わせて設定を変更 し てか ら [Next] を ク リ ッ ク し ます。
6. [Project Summary] ページ を確認 し てか ら [Finish] を ク リ ッ ク し ます。
X-Ref Target - Figure 2-1
デザイ ンのシ ミ ュ レーシ ョ ン
プ ロ ジ ェ ク ト へのチ ュ ー ト リ アル
フ ァ イルの追加
1. [Project] → [Add Source] を ク リ ッ ク し て ソ ース フ ァ イ ルを追加 し ます。
2. 7ページの 「チ ュ ー ト リ アルデザ イ ン フ ァ イ ルの イ ン ス ト ール」 で ソ ース フ ァ イ ルを保存 し たデ ィ レ ク ト リ に移動 し ます。 3. [sources] フ ォルダーでフ ァ イ ルをすべて選択 し て [開 く] を ク リ ッ ク し ます。 4. 次の ウ ィ ン ド ウ で、 こ れ ら のチ ュ ー ト リ アル ソ ース に対 し て関連付け と ラ イ ブ ラ リ が正 し く 設 定 さ れてい る こ と を確認 し ます。図2-2の設定 と 比較 し て く だ さ い。 5. [OK] を ク リ ッ ク し ます。 こ れで、 ソ ース フ ァ イ ルがプ ロ ジ ェ ク ト に追加 さ れます。Project Navigator は、12ページの 図2-3の よ う に表示 さ れます。
X-Ref Target - Figure 2-2
第 2 章 : ISim の実行
VHDL
ラ イ ブ ラ リ の作成
次に、 こ のデザ イ ンのテ ス ト ベンチで使用 さ れ る VHDL パ ッ ケージ (drp_tb_pkg.vhd) のユーザー VHDL ラ イ ブ ラ リ を作成 し ま す。VHDL パ ッ ケージには、 テ ス ト ベンチで検証ルーチン を実行す る と き に使用 さ れ る VHDL 関数が含まれてい ます。 VHDL パ ッ ケージ を作成 し た ら 、[work] ラ イ ブ ラ リ か ら 新 し く 作成 し た VHDL ラ イ ブ ラ リ に移動 し ます。 VHDL ラ イ ブ ラ リ の作成1. Project Navigator で [Project] → [New Source] を ク リ ッ ク し 、 New Source Wizard を開 き ます。 2. ソ ース タ イ プに [VHDL Library] を選択 し ます。
3. VHDL の ラ イ ブ ラ リ 名に 「drp_tb_lib」 と 入力 し ます (13ページの図2-4)。 注記 : [Add to project] をオンに し た ま ま に し ます。
4. [Next] を ク リ ッ ク し ます。
X-Ref Target - Figure 2-3
デザイ ンのシ ミ ュ レーシ ョ ン
5. [Summary] ページ を確認 し てか ら [Finish] を ク リ ッ ク し ます。
ラ イ ブ ラ リ への
VHDL
フ ァ イルの移動
VHDL パ ッ ケージフ ァ イ ルを [drp_tb_lib] ラ イ ブ ラ リ に移動 し ます。
1. [Sources] パネルで [Libraries] パネルを ク リ ッ ク し て [Libraries] パネルに表示を切 り 替え ます。 2. [work] ラ イ ブ ラ リ を展開表示 し ます (図2-5)。
3. drp_tb_pkg.vhd フ ァ イ ルを右 ク リ ッ ク し て、[Move to Library] を ク リ ッ ク し ます。
X-Ref Target - Figure 2-4
図 2-4 : ソ ース タ イ プの選択
X-Ref Target - Figure 2-5
第 2 章 : ISim の実行 4. [Move to Library] ダ イ ア ロ グ ボ ッ ク ス で、VHDL パ ッ ケージフ ァ イ ル drp_tb_pkg.vhd の移 動先 ラ イ ブ ラ リ に [drp_tb_lib] を選択 し ます。 ま たは、 フ ァ イ ルを こ の ラ イ ブ ラ リ に ド ラ ッ グ ア ン ド ド ロ ッ プす る こ と も で き ます。 fuse コ マ ン ド では、 プ ロ ジ ェ ク ト フ ァ イ ル (.prj) に含ま れてい る VHDL ま たは Verilog ソ ー ス コ ー ド それぞれに vlogcomp ま たは vhpcomp を自動的に実行 し て、 オンザ フ ラ イ で ソ ース を コ ンパ イ ルで き ます。 5. [OK] を ク リ ッ ク し ます。 [drp_tb_lib] ラ イ ブ ラ リ に VHDL drp_tb_pkg.vhd パ ッ ケージ フ ァ イ ルが含まれてい る こ と を 確認 し て く だ さ い (図2-6)。
ビヘ イ ビ アー
シ ミ ュ レーシ ョ ンの設定および起動
ISE プ ロ ジ ェ ク ト を作成 し たので、 次に ISim ビヘ イ ビ アーシ ミ ュ レーシ ョ ン を設定、 起動 し ます。ビ ヘ イ ビ アー
シ ミ ュ レ ーシ ョ ン
プ ロパテ ィ の設定
次の手順に従い、ISE で ビヘ イ ビ アーシ ミ ュ レーシ ョ ンのプ ロ パテ ィ を設定 し ます。 1. [Sources] パネルの [Design] パネル上部にあ る [Simulation] ボ タ ン を ク リ ッ ク し ます。シ ミ ュ レーシ ョ ン タ イ プを示す ド ロ ッ プダ ウ ン リ ス ト が表示 さ れます。 2. [Behavioral] を選択 し ます。
3. drp_demo_tb テ ス ト ベンチフ ァ イ ルを選択し て、 階層ツ リ ーを展開し て フ ァ イルを表示し ます。 [Processes] ペ イ ン に デ ザ イ ン で 使 用可 能 な シ ミ ュ レ ー シ ョ ン プ ロ セ ス が 表 示 さ れ ま す (15ページの図2-7)。
X-Ref Target - Figure 2-6
デザイ ンのシ ミ ュ レーシ ョ ン
4. [ISim Simulator] の下位の [Simulate Behavioral Model] を右 ク リ ッ ク し て [Process Properties] を ク リ ッ ク し、 [Process Properties - ISim Properties] ダ イ ア ロ グボ ッ ク ス を表示し ます (図2-8)。 こ のダ イ ア ロ グボ ッ ク ス では、 次の よ う な さ ま ざ ま なシ ミ ュ レ ーシ ョ ン プ ロ パテ ィ を設定で き ます。
• シ ミ ュ レーシ ョ ン実行時間
• 波形デー タ ベース フ ァ イ ルの保存先
• ユーザー定義のシ ミ ュ レーシ ョ ン コ マ ン ド フ ァ イ ル
5. [Run for Specified Time] を オ フ に し て、[OK] を ク リ ッ ク し ます。
X-Ref Target - Figure 2-7
図 2-7 : ビヘ イ ビ アーシ ミ ュ レーシ ョ ン プ ロ セス
X-Ref Target - Figure 2-8
第 2 章 : ISim の実行
ビ ヘ イ ビ アー
シ ミ ュ レ ーシ ョ ンの起動
ISim を起動し てチ ュー ト リ アルデザ イ ンのビヘイ ビ アーシ ミ ュ レーシ ョ ン を実行し ます。 [Processes] ペ イ ンで、[Simulate Behavioral Model] を ダブル ク リ ッ ク し ます。
操作後の結果
デザ イ ンの解析、 コ ンパ イ ル後に ISim GUI (図2-9) が開き ます。
次の操作
第4章 「ISim グ ラ フ ィ カルユーザー イ ン タ ーフ ェ イ ス の使用」 に進み、HDL デザ イ ン の解析お よ びデバ ッ グに使用す る ISim GUI 機能お よ びツールについて学びます。
X-Ref Target - Figure 2-9
第
3
章
ス タ ン ド ア ロ ン
ISim
の実行
ISim ス タ ン ド ア ロ ン フ ロ ーでは、ISE® Project Navigator でプ ロ ジ ェ ク ト を設定せずにデザ イ ン を シ ミ ュ レーシ ョ ンで き ます。 こ の フ ロ ーでは、 次を実行 し ます。 • fuse コ マン ド を使用 し てシ ミ ュ レーシ ョ ン実行フ ァ イ ルを作成で き る よ う 、ISim プ ロ ジ ェ ク ト フ ァ イ ルを手動で作成 し ます。 • fuse コ マン ド で生成 し たシ ミ ュ レーシ ョ ン実行フ ァ イ ルを実行 し 、ISim グ ラ フ ィ カル ユー ザーイ ン ターフ ェ イ ス (GUI) を起動 し ます。
は じ めに
必要な ソ フ ト ウ ェ ア
こ のチ ュ ー ト リ アルを実行す る には、 次のいずれかの ソ フ ト ウ ェ ア を イ ン ス ト ール し て く だ さ い。 • ISE WebPACK™ 13.3• ISE Design Suite 13.3 Edition (Logic、DSP、Embedded、System) のいずれか
ザ イ リ ン ク ス ソ フ ト ウ ェ アの イ ン ス ト ールに関す る 詳細は、 『ISE Design Suite 13 : イ ン ス ト ール お よ び ラ イ セ ン スガ イ ド 』 UG798) を参照 し て く だ さ い。 こ の資料への リ ン ク は、付録A 「その他 の リ ソ ース」 に含まれてい ます。
チ ュ ー ト リ アル
デザイ ン
フ ァ イルのイ ン ス ト ール
こ のチ ュ ー ト リ アルのデザ イ ン フ ァ イ ルは、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト のチ ュ ー ト リ アルペー ジか ら 入手で き ます。 • ウ ェ ブサ イ ト か ら チ ュ ー ト リ アルのデザ イ ン ZIP フ ァ イ ルを ダ ウ ン ロ ー ド し ます。 • デザ イ ン フ ァ イ ルを書 き 込み/読み取 り 権があ る デ ィ レ ク ト リ に解凍 し ます。第 3 章 : ス タ ン ド ア ロ ン ISim の実行 チ ュ ー ト リ アルデザ イ ン フ ァ イ ルの内容は、 次の と お り です。
デザイ ンの概要
チ ュ ー ト リ アルデザ イ ン は、Virtex®-5 デジ タ ル ク ロ ッ ク マネージ ャ ー (DCM) のダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン機能を簡単に示 し た も のです。 Virtex-5 DCM を使用す る と 、 デザ イ ンで次の式に基づいて出力 ク ロ ッ ク が生成 さ れます。 出力 ク ロ ッ ク = 入力 ク ロ ッ ク * (倍周率 / 分周率) DCM のダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト (DRP) を使用す る と 、 倍周率お よ び分周 率を定義 し 直 し て さ ま ざ ま な出力周波数を生成で き ます。論理ブ ロ ッ ク
チ ュ ー ト リ アルデザ イ ンは、 次の論理ブ ロ ッ ク か ら 構成 さ れてい ます。drp_dcm (drp_dcm.vhd)
内部フ ィ ー ド バ ッ ク 付 き 、 周波数制御出力、 デ ュ ーテ ィ サ イ ク ル調整、 お よ びダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン機能を含んだ Virtex-5 DCM マ ク ロ です。 CLKFX_OUT 出力では、 次の式で定義 さ れた ク ロ ッ ク が供給 さ れます。 CLKFX_OUT = CLKIN_IN * (倍周率/分周率) た と えば、100MHz 入力 ク ロ ッ ク を使用す る と き 、 倍周率を 6、 分周率を 5 にす る と 120MHz の CLKFX_OUT 出力 ク ロ ッ ク が生成 さ れます。 DCM の DRP ポー ト を使用す る と 、 倍周率 (M) お よ び分周率 (D) パ ラ メ ー タ ーを ダ イ ナ ミ ッ ク に 定義 し 直 し て異な る CLKFX_OUT 周波数を生成で き ます。 こ のチ ュ ー ト リ アルでは、 こ れ ら の倍 周率お よ び分周率のパ ラ メ ー タ ーが 16 ビ ッ ト 幅の DI_IN ポー ト か ら DCM に ど の よ う に渡 さ れ る かを示 し ます。 DI_IN[15:8] = M – 1 DI_IN[7:0] = D – 1 た と えば、M/D が 6/5 の と き 、DI_IN は 0504h にな り ます。 表 3-1 : チ ュ ー ト リ アルデザイ ン フ ァ イル フ ォルダー 説明sources
デザ イ ンの論理シ ミ ュ レーシ ョ ンに必要な HDL フ ァ イ ルが含まれてい ます。scripts
シ ミ ュ レ ーシ ョ ン を実行す る ための未完成の ス ク リ プ ト フ ァ イ ルが含ま れて い ます。 こ れ ら の ス ク リ プ ト フ ァ イ ルは、 チ ュ ー ト リ アルの進行に伴い完成 さ せてい き ます。completed
完成 し た ス ク リ プ ト フ ァ イ ル、 シ ミ ュ レーシ ョ ン フ ァ イ ル、 お よ び波形 コ ン フ ィ ギ ュ レ ーシ ョ ン フ ァ イ ルに加え、 完成 し てい る ISE 13 プ ロ ジ ェ ク ト の チ ュ ー ト リ アルデザ イ ンが含ま れてお り 、 進行中のデザ イ ン フ ァ イ ル と 比較 で き ます。 readme.txt こ のチ ュ ー ト リ アルデザ イ ンに関す る リ ー ド ミ ーフ ァ イ ルデザイ ンの概要
drp_stmach (drp_stmach.vhd)
こ のモジ ュ ールでは、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レ ーシ ョ ン コ ン ト ロ ー ラ ーが記述 さ れてい ま す。DRP コ ン ト ロ ー ラ ーでは、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンサ イ ク ルを実行す る ため に DCM の DRP 信号を アサー ト 、 監視 し ます。 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン サ イ ク ルは、drp_start 信号がアサー ト さ れ る と 開始 し ま す。 こ の手順に従 う と 、DRP コ ン ト ロ ー ラ ーで該当す る DCM の DRP ピ ンがアサー ト さ れ、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンサ イ ク ルが完了 し ます。 drp_done 信号は、 ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンサ イ ク ルが正 し く 完了 し た こ と を通知 し ます。drp_demo (drp_demo.vhd)
チ ュ ー ト リ ア ルデザ イ ン の最上位モ ジ ュ ールで、DCM マ ク ロ お よ び DRP コ ン ト ロ ー ラ ーモ ジ ュ ールが外部の I/O ポー ト に接続 さ れてい ます。drp_demo_tb (drp_demo_tb.vhd)
セルフチ ェ ッ ク HDL テ ス ト ベンチ。 詳細は、「デザ イ ンセルフ チ ェ ッ ク テ ス ト ベンチ」 を参照 し て く だ さ い。デザイ ン
セル フ チ ェ ッ ク
テ ス ト ベ ン チ
こ のデザ イ ン の機能性を テ ス ト で き る よ う に、 セルフ チ ェ ッ ク テ ス ト ベンチが提供 さ れてい ま す ([sources] フ ォ ルダーに含ま れてい る drp_demo_tb.vhd を参照)。 セルフ チ ェ ッ ク テ ス ト ベンチに は、 予期す る 結果 と シ ミ ュ レーシ ョ ンでのサンプル値を比較す る 検証ルーチン ま たは関数が含まれ てい ます。 こ のデザ イ ンで提供 さ れ る セルフチ ェ ッ ク テ ス ト ベンチでは、 次が実行 さ れます。 • デザ イ ンのシ ス テ ム ク ロ ッ ク (clk_in) 向けに 100MHz 入力 ク ロ ッ ク を生成 • デザ イ ンの出力周波数を ダ イ ナ ミ ッ ク に変更す る ため、4 つの異な る テ ス ト を実行。 各テ ス ト では、drp_start 信号を使用 し て DRP サ イ ク ルが開始 さ れ、 出力 ク ロ ッ ク に個別の周波数が設 定 さ れます。表3-2に、 各テ ス ト で使用す る 出力周波数お よ び倍周率/分周率パ ラ メ ー タ ーを示 し ます。 • 各テ ス ト では、 テ ス ト ベンチで予期 さ れ る ク ロ ッ ク 周期 と シ ミ ュ レーシ ョ ン中に計測 さ れた ク ロ ッ ク 周期が比較 さ れます。 比較結果に基づいて、 テ ス ト が正常に完了 し たか、 ま たはエ ラ ー が発生 し た を示す メ ッ セージがシ ミ ュ レー タ で表示 さ れます。 • シ ミ ュ レーシ ョ ンの完了時に生成 さ れ る サマ リ レ ポー ト には、正常に完了 し た テ ス ト と エ ラ ー が発生 し た テ ス ト の両方を含む リ ス ト が含まれてい ます。 こ のデザ イ ン の機能の詳細は、 デザ イ ン の ソ ー ス に含 ま れ る イ ン ラ イ ン コ メ ン ト を参照 し て く だ さ い。 表 3-2 : 各テ ス ト で使用 さ れる出力周波数および倍周率/分周率パラ メ ー タ ー テ ス ト 周波数(MHz) 周期 (ps) 倍周率 (M) 分周率 (D) 1 75 13,332 3 4 2 120 8,332 6 5 3 250 4,000 5 2 4 400 2,500 4 1第 3 章 : ス タ ン ド ア ロ ン ISim の実行
シ ミ ュ レーシ ョ ンの準備
ISim ス タ ン ド ア ロ ン フ ロ ーでは、ISE Project Navigator でプ ロ ジ ェ ク ト を設定せずにデザ イ ン を シ ミ ュ レーシ ョ ンで き ます。 こ の フ ロ ーでは、fuse コ マン ド でシ ミ ュ レーシ ョ ン実行フ ァ イ ルを作 成す る のに使用す る ISim プ ロ ジ ェ ク ト フ ァ イ ルを手動で作成 し ます。 こ の手順を完了 さ せ る と 、 シ ミ ュ レーシ ョ ン実行フ ァ イ ルを実行 し て ISim GUI を起動で き ます。
ISim
プ ロ ジ ェ ク ト
フ ァ イルの作成
次に、 通常の ISimフ ァ イ ルの構文を示 し ます。
verilog|vhdl <library_name> {<file_name_1>.v|.vhd} 説明 : • verilog|vhdl : ソ ース フ ァ イ ルが Verilog ま たは VHDL フ ァ イ ルであ る こ と を示 し ます。 Verilog ま たは VHDL ソ ース フ ァ イ ルを含め ます。 • <library_name> : 指定行の ソ ース が コ ンパ イ ル さ れ る ラ イ ブ ラ リ を指定 し ます。[work] がデフ ォ ル ト の ラ イ ブ ラ リ です。 • <file_name> : ラ イ ブ ラ リ に関連す る ソ ース フ ァ イ ルを指定 し ます。 注記 : Verilog ソ ース フ ァ イ ルは 1 行に複数指定で き ますが、VHDL ソ ース フ ァ イ ルは 1 つのみ し か指定で き ません。 次の手順に従い、 チ ュ ー ト リ アルデザ イ ンの ISim プ ロ ジ ェ ク ト フ ァ イ ルを構築 し ます。 1. チ ュ ー ト リ アルフ ァ イ ルの [scripts] フ ォルダーを参照 し ます。 2. テキ ス ト エデ ィ ターで simulate_isim.prj プ ロ ジ ェ ク ト フ ァ イ ルを開 き ます。 こ の時点では、 プ ロ ジ ェ ク ト フ ァ イ ルは未完成です。 3. 前述の構文ガ イ ド ラ イ ンに従い、 含まれていない ソ ース を リ ス ト し ます。 含まれていない ソ ース : • drp_dcm.vhd : VHDL ソ ース フ ァ イ ル。[work] ラ イ ブ ラ リ に コ ンパ イ ルす る 必要があ り ます。 • drp_tb_pkg.vhd : VHDL パ ッ ケージフ ァ イ ル。[drp_tb_lib] ラ イ ブ ラ リ に コ ンパ イ ルす る 必要があ り ます。 注記 : ソ ース フ ァ イ ルは、 依存順に リ ス ト す る 必要はあ り ません。fuse コ マン ド では依存順が 自動的に解決 さ れ、 正 し い順序で フ ァ イ ルが処理 さ れます。 チ ュ ー ト リ アル フ ァ イ ルの [completed] フ ォ ルダーには完成 し たプ ロ ジ ェ ク ト フ ァ イ ルが含 まれてい る ので、 作成 し たプ ロ ジ ェ ク ト フ ァ イ ル と 比較で き ます。 4. フ ァ イ ルを保存 し てか ら 閉 じ ます。
シ ミ ュ レーシ ョ ンの準備
シ ミ ュ レーシ ョ ン実行 フ ァ イルの構築
こ の手順では、fuse コ マ ン ド で作成 し たプ ロ ジ ェ ク ト フ ァ イ ルが使用 さ れ、 デザ イ ン のすべての ソ ース が解析、 コ ンパ イ ル、 リ ン ク さ れ ます。 こ れで、ISim GUI でシ ミ ュ レーシ ョ ン を実行で き る シ ミ ュ レーシ ョ ン実行フ ァ イ ルが生成 さ れます。fuse
の使用
次に、 通常の fuse 構文を示 し ます。fuse –incremental –prj <project file> -o <simulation executable> <library.top_unit> 説明 : • -incremental : 最後に コ ンパ イ ル さ れてか ら変更さ れた フ ァ イ ルのみを再コ ンパ イ ル し ます。 • -prj : 入力 と し て使用す る ISim プ ロ ジ ェ ク ト フ ァ イ ルを指定 し ます。 • -o : シ ミ ュ レーシ ョ ン実行出力フ ァ イ ルの名前を指定 し ます。 • <library.top_unit> : 最上位デザ イ ンユニ ッ ト を指定 し ます。 次の手順に従い、fuse を使用 し てチ ュ ー ト リ アルデザ イ ンの解析、 コ ンパ イ ル、 お よ びエ ラ ボ レー シ ョ ン を実行 し ます。 1. チ ュ ー ト リ アルフ ァ イ ルの [scripts] フ ォルダーを参照 し ます。 2. テキ ス ト エデ ィ ターで fuse_batch.bat フ ァ イ ルを開 き ます。 3. こ の fuse コ マン ド は未完成の状態です。 上記の構文情報を使用 し て、 次のオプシ ョ ン を含む よ う に コ マ ン ド 行を編集 し ます。 a. イ ン ク リ メ ン タ ル コ ンパ イ ルを使用 b. simulate_isim.prj を プ ロ ジ ェ ク ト フ ァ イ ル と し て使用 c. simulate_isim.exe を シ ミ ュ レーシ ョ ンフ ァ イ ル と し て使用 d. work.drp_demo_tb を シ ミ ュ レーシ ョ ンの最上位デザ イ ンユニ ッ ト と し て使用 4. バ ッ チフ ァ イ ルを保存 し てか ら 閉 じ ます。
5. ISE の コ マン ド プ ロ ンプ ト で fuse_batch.bat フ ァ イ ルま で移動 し て、fuse を実行 し ます。 注記 : ISE の コ マ ン ド プ ロ ン プ ト を 開 く に は、[ス タ ー ト] → [プ ロ グ ラ ム] → [Xilinx ISE Design Suite] → [Accessories] で [ISE Design Suite Command Prompt] を ク リ ッ ク し ます。 fuse コ マ ン ド で ソ ース の コ ンパ イ ル、 デザ イ ンユニ ッ ト のエ ラ ボ レーシ ョ ン、 オブジ ェ ク ト コ ー
ド の リ ン ク が完了す る と 、 シ ミ ュ レ ーシ ョ ン実行フ ァ イ ル (simulate_isim.exe) が [scripts] フ ォ ル ダーに含め ら れます。
[completed] フ ォルダーには完成 し た simulate_isim.bat バ ッ チフ ァ イ ルが含まれてい る ので、 作成 し た フ ァ イ ル と 比較 し て く だ さ い。
第 3 章 : ス タ ン ド ア ロ ン ISim の実行
デザイ ンのシ ミ ュ レーシ ョ ン
21ページの 「シ ミ ュ レーシ ョ ン実行フ ァ イ ルの構築」 セ ク シ ョ ンで fuse コ マ ン ド を使用 し て生成 し た シ ミ ュ レーシ ョ ン実行フ ァ イ ルを実行 し て ISim GUI を起動 し ま す。 こ の手順を完了す る と 、 ISim GUI で詳細にデザ イ ン を調べ る こ と がで き ます。シ ミ ュ レ ーシ ョ ン実行 フ ァ イルの実行
次に、 シ ミ ュ レーシ ョ ン実行フ ァ イ ルを起動す る と き に使用す る 構文を示 し ます。 Simulation_executable –gui –view <wave_configuration_file> -wdb <waveform_database_file>説明 :
• -gui : ISim を GUI モー ド で起動 し ます。
• -view : ISim GUI で指定の波形フ ァ イ ルを開き ます。
• -wdb : シ ミ ュ レーシ ョ ンデー タ ベース出力フ ァ イ ルの名前を指定 し ます。 シ ミ ュ レーシ ョ ン を起動す る には、 次を実行 し ます。 1. チ ュ ー ト リ アルフ ァ イ ルの [scripts] フ ォルダーを参照 し ます。 2. テキ ス ト エデ ィ ターで simulate_isim.bat バ ッ チフ ァ イ ルを開 き ます。 バ ッ チ フ ァ イ ルは意図 的に空白にな っ てい ます。 3. 上記の構文情報を使用 し て、 次の設定を含む よ う にバ ッ チフ ァ イ ルを編集 し ます。 a. シ ミ ュ レーシ ョ ン実行フ ァ イ ル名 : simulate_isim.exe b. GUI モー ド で実行 c. シ ミ ュ レーシ ョ ンデー タ ベース出力名を simulate_isim.wdb に設定 注記 : 波形コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イ ルは、こ のチ ュ ー ト リ アルフ ァ イ ルに含まれてい ま せん。 こ の フ ァ イ ルは、 シ ミ ュ レーシ ョ ン中に作成 さ れます。 4. フ ァ イ ルを保存 し てか ら 閉 じ ます。 5. ISE の コ マン ド プ ロ ンプ ト で simulate_isim.bat フ ァ イ ルま で移動 し て、 シ ミ ュ レー タ を実行 し ます。
操作後の結果
ISim GUI が開 き 、 デザ イ ン が読み込ま れ ます。 シ ミ ュ レーシ ョ ン時間は、 実行時間を指定す る ま で 0ns にな っ てい ます。 [completed] フ ォルダーには完成 し た simulate_isim.bat バ ッ チフ ァ イ ルが含まれてい る ので、 作成 し た フ ァ イ ル と 比較で き ます。次の操作
第4章 「ISim グ ラ フ ィ カルユーザー イ ン タ ーフ ェ イ ス の使用」 に進み、HDL デザ イ ン の解析お よ びデバ ッ グに使用す る ISim GUI 機能お よ びツールについて学びます。第
4
章
ISim
グ ラ フ ィ カル
ユーザー
イ ン タ ー フ ェ
イ スの使用
ISim グ ラ フ ィ カルユーザーイ ン タ ーフ ェ イ ス (GUI) には、 波形 ウ ィ ン ド ウ、 ツールバー、 パネル、 お よ び ス テー タ スバーが含 まれてい ます。 メ イ ン ウ ィ ン ド ウ では、 デザ イ ン でシ ミ ュ レ ーシ ョ ン が可能な箇所の表示、 波形 ウ ィ ン ド ウ での信号の追加お よ び表示、ISim コ マン ド を使用 し た シ ミ ュ レーシ ョ ンの実行、 デザ イ ンの検証、 お よ びデバ ッ グ を実行で き ます (図4-1)。GUI コ ン ポーネ ン ト の詳細は、 『ISim ユーザーガ イ ド 』 (UG660) を参照 し て く だ さ い。 こ の資料へ の リ ン ク は、付録A 「その他の リ ソ ース」に含まれてい ます。
X-Ref Target - Figure 4-1
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
ISim GUI
の説明
主要ツールバー
ISim の メ イ ン ウ ィ ン ド ウ で提供 さ れてい る ツールバーでは、 さ ま ざ ま な機能を実行で き ます。 こ れ ら の ツールバーでは、 メ ニ ュ ーで よ く 使用す る コ マ ン ド にア ク セ ス で き ます。GUI コ ン ポーネ ン ト の詳細は、 『ISim ユーザーガ イ ド 』 (UG660) を参照 し て く だ さ い。 こ の資料への リ ン ク は、付 録A 「その他の リ ソ ース」に含まれてい ます。 メ イ ン ウ ィ ン ド ウ の ツールバーア イ コ ンは、ISim GUI 上部に配置 さ れてい ます。図4-2に、 ツー ルバーア イ コ ン を示 し ます。 ツールバーはカ ス タ マ イ ズ可能で、 必要な ツールバーのみを表示で き ます。[Instances and Processes]
パネル
[Instances and Processes] パネルには、 波形 ウ ィ ン ド ウ の波形 コ ン フ ィ ギ ュ レ ーシ ョ ン と 関連す る ブ ロ ッ ク (イ ン ス タ ン スお よ びプ ロ セ ス) の階層が表示 さ れ ま す。 イ ン ス タ ン シエー ト 、 エ ラ ーボ レー ト さ れたエン テ ィ テ ィ (VHDL) お よ びモジ ュ ール (Verilog) は、 ポー ト 、 信号、 お よ び ク ロ ッ ク コ ンポーネ ン ト と 共に ツ リ ー構造で表示 さ れます (図4-3)。
X-Ref Target - Figure 4-2
図 4-2 : 主要ツールバー
X-Ref Target - Figure 4-3
[Source Files]
パネル
[Source Files] パネルには、デザ イ ンに関連す る フ ァ イ ルの リ ス ト が表示 さ れます。 こ の フ ァ イ ルの リ ス ト は、fuse コ マ ン ド に よ り デザ イ ンの解析お よ びエ ラ ボ レーシ ョ ン中に供給 さ れます。 こ の操 作は、GUI ではバ ッ ク グ ラ ウ ン ド で実行 さ れます。HDL ソ ースフ ァ イ ルは、 ソ ース コ ー ド を読み 取 り 専用で開 く こ と がで き ます。図4-4に [Source Files] パネルを示 し ます。[Objects]
パネル
[Objects] パネルでは、[Instances and Processes] パネルで選択 し た イ ン ス タ ン スお よ びプ ロ セ ス に 関連す る ポー ト お よ び信号が表示 さ れます。
パネル上部には [Instances and Processes] パネルで選択 し た イ ン ス タ ン スお よ びプ ロ セ ス が表示 さ れ、 そのオブジ ェ ク ト お よ び値が [Objects] パネルの表に表示 さ れます。
次に、[Objects] パネルの表の各列について説明 し ます。
• [Object Name] : 信号名 と その タ イ プを示すシ ン ボルが表示 さ れます。
• [Valure] : [Sync Time] ボ タ ン に基づ き シ ミ ュ レーシ ョ ン時間ま たは メ イ ン カー ソ ルの場 所の信号の値を表示 し ます。
• [Data Type] : シ ミ ュ レーシ ョ ンオブジ ェ ク ト 、 ロ ジ ッ ク 、 ま たはア レ イ のデー タ タ イ プを表 示 し ます。
26ページの図4-5に [Objects] パネルを示 し ます。
X-Ref Target - Figure 4-4
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
波形ウ ィ ン ド ウ
波形 ウ ィ ン ド ウ には、 信号、 バ ス、 お よ び こ れ ら の波形が表示 さ れ ます (図4-6)。 波形 ウ ィ ン ド ウ の各 タ ブには、 信号お よ びバ ス の リ ス ト と そのプ ロ パテ ィ 、 仕切 り 、 カー ソ ル、 ま たはマーカーな ど の波形オブジ ェ ク ト か ら 構成 さ れ る 波形 コ ン フ ィ ギ ュ レーシ ョ ンが表示 さ れます。 GUI では波形 コ ン フ ィ ギ ュ レ ーシ ョ ン の信号お よ びバ ス がシ ミ ュ レ ーシ ョ ン中に ト レ ー ス さ れ る ため、 波形 コ ン フ ィ ギ ュ レーシ ョ ンはシ ミ ュ レーシ ョ ン を実行 し てシ ミ ュ レーシ ョ ン結果を調べる と き に使用 さ れます。 デザ イ ンお よ びシ ミ ュ レーシ ョ ンデー タ はフ ラ ッ ト フ ァ イ ルデー タ ベース に含まれ る ので、 波形 コ ン フ ィ ギ ュ レ ーシ ョ ン に信号 を追加 し た り 、 ま た そ こ か ら 信号を削除 し て も シ ミ ュ レ ーシ ョ ン デー タ は影響を受け ません。X-Ref Target - Figure 4-5
図 4-5 : [Objects] パネル
テキス ト
エデ ィ タ ー
ウ ィ ン ド ウ
テ キ ス ト エデ ィ タ ー ウ ィ ン ド ウ では、 シ ミ ュ レーシ ョ ンで使用 さ れ る HDL ソ ース フ ァ イ ルに簡 単にア ク セ ス で き ます。 テキ ス ト エデ ィ タ ーでは、 次を実行で き ます。 • HDL ソ ースフ ァ イ ルを表示 し て編集 • ソ ースフ ァ イ ルにブ レー ク ポ イ ン ト を設定 し てデバ ッ グ • ソ ース コ ー ド を 1 行ずつ進め る[Breakpoints]
パネル
[Breakpoints] パネルでは、 デザ イ ン に現在設定 さ れてい る ブ レ ー ク ポ イ ン ト が リ ス ト 表示 さ れ ま す。 こ の リ ス ト では、 ソ ース フ ァ イ ルに設定 さ れてい る 各ブ レー ク ポ イ ン ト に対 し て、 フ ァ イ ルの 保存場所、 フ ァ イ ル名、 お よ び行番号が表示 さ れます。[Breakpoints] パネルの ツールバーや文脈依 存 メ ニ ュ ーを使用 し て、選択 し たブ レー ク ポ イ ン ト ま たはすべてのブ レー ク ポ イ ン ト を削除 し た り 、 ソ ース コ ー ド に移動で き ます。 詳細は、 『ISim ユーザーガ イ ド 』 (UG660) の第 4 章 「デザ イ ンのデバ ッ グ」 を参照 し て く だ さ い。 こ の資料への リ ン ク は、付録A 「その他の リ ソ ース」に含まれてい ます。X-Ref Target - Figure 4-7
図 4-7 : テキス ト エデ ィ タ ーウ ィ ン ド ウ
X-Ref Target - Figure 4-8
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
[Console]
パネル
[Console] パネルでは、ISim で生成 さ れ る メ ッ セージ ロ グ を確認 し 、 コ マ ン ド プ ロ ン プ ト で標準 Tcl コ マ ン ド お よ び ISim 特有の コ マン ド を入力で き ます。デザイ ンの検証
こ のセ ク シ ョ ンでは、 手順に従いチ ュ ー ト リ アルデザ イ ンの論理動作を確認 し ます。 • 信号を波形ウ ィ ン ド ウ で使用 し た り 、[Console] パネルに表示 さ れてい る テ ス ト ベンチの メ ッ セージ を確認 し なが ら 、 シ ミ ュ レーシ ョ ン を実行、 再実行 し てデザ イ ンの機能を確認 し ます。 • テ ス ト ベンチの信号お よ びその他のデザ イ ンユニ ッ ト を波形ウ ィ ン ド ウ に追加 し 、 こ れ ら の ス テー タ ス を監視 し ます。 • 波形ウ ィ ン ド ウ の信号を識別 し やす く す る よ う 、 グループや仕切 り を追加 し ます。 • 信号お よ び波形 ウ ィ ン ド ウ のプ ロ パテ ィ を変更 し 、 波形 ウ ィ ン ド ウ で信号を確認 し やす く し ま す。 • マーカーお よ びカー ソ ルを使用 し て シ ミ ュ レ ーシ ョ ン での主な イ ベン ト を ハ イ ラ イ ト し た り 、 ズーム機能や時間計測機能を使用 し ます。 • 複数の波形ウ ィ ン ド ウ コ ン フ ィ ギ ュ レーシ ョ ン を使用 し て、1 つのシ ミ ュ レーシ ョ ン セ ッ シ ョ ンで複数の信号を確認 し やす く し ます。信号の追加
注記 : 第2章 「ISim の実行」 を完了 し てい る 場合は、 こ の手順を飛ば し て進んで く だ さ い。 テ ス ト ベンチのシ ミ ュ レーシ ョ ンオブジ ェ ク ト すべてが波形ウ ィ ン ド ウ に追加 さ れてい ます。 特定時間シ ミ ュ レーシ ョ ン を実行す る 前に、 信号の ス テー タ ス を観察で き る よ う 波形ウ ィ ン ド ウ に 信号を追加す る 必要があ り ます。 テ ス ト ベン チのすべてのシ ミ ュ レ ーシ ョ ンオブジ ェ ク ト を波形 ウ ィ ン ド ウ に追加 し ます。 シ ミ ュ レーシ ョ ン オブジ ェ ク ト には、 次が含まれます。 • 入力 ク ロ ッ ク (clk_in) : テ ス ト ベンチで生成 さ れ る 100MHz ク ロ ッ ク で、デジ タ ル ク ロ ッ クマ ネージ ャ ー (DCM) への入力 ク ロ ッ ク です。 • ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト (DRP) (drp_*) : DCM の DRP 機能に関連す る 信号です。 テ ス ト ベンチでは こ れ ら の信号が アサー ト 、 監視 さ れ、DCM の DRP 機能が確 認、 制御 さ れます。 • DCM 出力信号 (dcm_*) : DCM の出力 ク ロ ッ ク です。X-Ref Target - Figure 4-9
デザイ ンの検証
信号を波形ウ ィ ン ド ウ に追加す る には、 次の手順に従い ます。
1. [Instances and Processes] パネルで drp_demo_tb イ ン ス タ ン ス ユニ ッ ト を右 ク リ ッ ク し ます。 2. [Add to Wave Window] を ク リ ッ ク し ます。
注記 : イ ン ス タ ン ス を選択 し て波形ウ ィ ン ド ウ に ド ラ ッ グする こ と も 可能です。
drp_demo_tb テ ス ト ベンチのシ ミ ュ レ ーシ ョ ンオブジ ェ ク ト が波形 ウ ィ ン ド ウ に表示 さ れ ま す (図4-10)。
X-Ref Target - Figure 4-10
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
特定時間のシ ミ ュ レーシ ョ ンの実行
特定時間だけシ ミ ュ レーシ ョ ン を実行で し ます (5 マ イ ク ロ 秒 (us))。
1. ISim ツールバーにあ る [Run for the time specified on the toolbar] に 「5us」 と 入力 し て [Run] ボ タ ン を ク リ ッ ク し ます。
注記 : Tcl プ ロ ンプ ト に 「run 5 us」 と 入力 し 、Enter キーを押 し て も 実行で き ます。 波形ウ ィ ン ド ウ では、5us シ ミ ュ レーシ ョ ン時間ま での信号の ト レース が表示 さ れます (図4-11)。
2. 波形ウ ィ ン ド ウ で スペ ク ト ラ ム全体を表示す る 場合は、[View] → [Zoon] → [To Full View] を ク リ ッ ク す る か、[Zoom Full View] ボ タ ン を ク リ ッ ク し ます。
水平方向ま たは垂直方向の ス ク ロ ールバーを使用 し て、波形 コ ン フ ィ ギ ュ レーシ ョ ン全体を表 示で き ます。
シ ミ ュ レーシ ョ ン中にテ ス ト ベンチか ら のアサー ト があ り ます。
3. [Console] パネルでテ ス ト ベンチか ら 出力 さ れた メ ッ セージ を確認 し ます (図4-12)。
X-Ref Target - Figure 4-11
図 4-11 : 波形ウ ィ ン ド ウ
X-Ref Target - Figure 4-12
デザイ ンの検証 Test 2 が予測どお り エ ラ ーにな っ てい る こ と を確認 し て く だ さ い。 こ の問題をチ ュ ー ト リ アル 後半で修正 し ます。
シ ミ ュ レーシ ョ ンの再ス タ ー ト
次に、[Restart] ボ タ ン を ク リ ッ ク し てシ ミ ュ レーシ ョ ン を再ス タ ー ト し ます。 再ス タ ー ト では波形ウ ィ ン ド ウ が ク リ アに さ れ、 シ ミ ュ レーシ ョ ン時間が 0 ピ コ 秒 (9ps) に設 定 さ れます。 注記 : Tcl プ ロ ンプ ト に 「restart」 と 入力 し て も シ ミ ュ レーシ ョ ン を再ス タ ー ト で き ます。 波形ウ ィ ン ド ウ は、図4-13の よ う に表示 さ れます。 次のセ ク シ ョ ンでは、 波形ウ ィ ン ド ウ の仕切 り 、 グループ、 カー ソ ル、 お よ びマーカーな ど の機能 を使用 し て、 チ ュ ー ト リ アルデザ イ ンのシ ミ ュ レーシ ョ ン を詳細に解析 し ます。X-Ref Target - Figure 4-13
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
グループの追加
こ のデザ イ ンの機能を さ ら に解析で き る よ う 、次の手順に従っ て別のデザ イ ンユニ ッ ト の信号を追 加 し ます。 波形ウ ィ ン ド ウ に信号を多 く 追加す る と 、 すべての信号が波形ウ ィ ン ド ウ のサ イ ズ内に収ま ら な く な り ます。すべての信号を確認す る のに波形 ウ ィ ン ド ウ の垂直方向ス ク ロ ールバーを使用す る こ と にな る ため、 確認作業が面倒にな り ます。 信号を グループに ま と め る こ と で、 表示環境を向上で き ます。 グループを使用す る と 、 同 じ 目的の 複数の信号を ま と めて表示/非表示で き ます。 波形 コ ン フ ィ ギ ュ レーシ ョ ンの信号を グループ化す る には、 次の手順に従い ます。 1. 波形ウ ィ ン ド ウ で、Ctrl キーを押 し た ま ま に し て、drp_ で始ま る drp_demo_tb デザ イ ンユニ ッ ト に含まれてい る 信号すべて を選択 し ます。 2. 選択 さ れてい る 信号を右 ク リ ッ ク し 、[New Group] を ク リ ッ ク し ます。 ま たは、 信号を選択 し て波形ウ ィ ン ド ウ に ド ラ ッ グす る こ と も 可能です。 3. 新 し いグループに名前を入力 し ます。 こ こ では、 「DRP Test Signals」 と い う 名前を付け ます。 波形ウ ィ ン ド ウ に階層が閉 じ た状態でグループが作成 さ れます。 4. グループの階層を展開す る には、 グループ名左横のプ ラ ス記号を ク リ ッ ク し ます。 5. デザ イ ンユニ ッ ト drp_demo_tb に含まれ る 「dcm_」 で始ま る すべての信号を含め る グループ を作成 し ます。 6. こ のグループに 「DCM Test Signals」 と い う 名前を付け ます。 7. 作成 し た グループをすべて展開表示 し ます。 波形ウ ィ ン ド ウ は、図4-14の よ う に表示 さ れます。 信号グループが図 と 一致 し ない場合は、 次の方法で修正で き ます。 • 無関係の信号を含めた場合は、 カ ッ ト アン ド ペース ト で信号を メ イ ン リ ス ト に移動し ます。X-Ref Target - Figure 4-14=
デザイ ンの検証 • グループを作成 し たが メ イ ン リ ス ト の信号を含め忘れた場合は、 ド ラ ッ グ ア ン ド ド ロ ッ プ で信号を グループに移動 し ます。 • [Edit] → [Undo] を ク リ ッ ク す る と 、 グループを解除で き ます。 • グループを解除す る こ と でや り 直す こ と がで き ます。 こ の場合はグループを右 ク リ ッ ク し て [Ungroup] を ク リ ッ ク し ます。
仕切 り の追加
ど のデザ イ ンユニ ッ ト に属す る 信号か を わか り やす く 表示で き る よ う 、 デザ イ ン ユニ ッ ト ご と に 信号を分け る 仕切 り を追加 し ます。 仕切 り を 波形 ウ ィ ン ド ウ に追加す る には、 波形 ウ ィ ン ド ウ の任意の場所 を 右 ク リ ッ ク し て [New Divider] を ク リ ッ ク し 、 仕切 り 名を入力 し ます。 1. 次の 3 つの仕切 り 名を追加 し ます。 • TESTBENCH • DCM • DRP CONTROLLER 2. [TESTBENCH] を ク リ ッ ク し て リ ス ト の一番上ま で ド ラ ッ グ し ます。 3. その他の仕切 り は、 リ ス ト の最後に移動 し ます。 注記 : 仕切 り 名は、 ダブル ク リ ッ ク する か、F2 キーを押す と いつで も 変更可能です。 波形ウ ィ ン ド ウ は、図4-15の よ う に表示 さ れます。X-Ref Target - Figure 4-15
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
サブ モ ジ ュ ールか ら の信号の追加
こ のセ ク シ ョ ンでは、 サブモジ ュ ール と テ ス ト ベンチのテ ス ト 信号間の通信を調べ る ために、 イ ン ス タ ン シ エ ー ト さ れ て い る DCM モ ジ ュ ー ル (Inst_drp_dcm) お よ び DRP コ ン ト ロ ー ラ ー モ ジ ュ ール (Inst_drp_stmach) の信号を追加 し ます。信号を グループに追加する 最 も 簡単な方法は、信 号を フ ィ ル タ ー し てか ら 選択す る 方法です。 次の手順に従い、 必要な信号を追加 し ます。1. [Instances and Processes] パネルで、図4-16に示すよ う に drp_demo_tb の階層を展開表示し ます。 2. Inst_drp_dcm エン テ ィ テ ィ を ク リ ッ ク し ます。
現在ハ イ ラ イ ト さ れてい る デザ イ ン ユ ニ ッ ト に関連す る シ ミ ュ レ ーシ ョ ン オブ ジ ェ ク ト が [Objects] パネルに表示 さ れます (図4-17)。
デフ ォ ル ト では、変数、定数な ど のすべての種類のシ ミ ュ レーシ ョ ンオブジ ェ ク ト が [Objects] パネルに表示 さ れます。 オブジ ェ ク ト の タ イ プは、35ページの図4-18の よ う に示 さ れます。
X-Ref Target - Figure 4-16
図 4-16 : [Instances and Processes] パネル
X-Ref Target - Figure 4-17
デザイ ンの検証
こ のパネルでは表示す る シ ミ ュ レーシ ョ ンオブジ ェ ク ト の種類を フ ィ ル タ ーで き ます。 こ のパ ネルの ツールバーを ク リ ッ ク し て、 入力、 出力、 双方向、 内部、 定数、 お よ び変数ご と に フ ィ ル タ ー し て表示 し ます。
3. ボ タ ン を切 り 替え る ご と に表示 さ れ る オブジ ェ ク ト の種類が切 り 替わ り ます。
4. [Instances and Processes] パネルで Inst_drp_dcm デザ イ ンユニ ッ ト が選択 さ れてい る 状態で、 [Objects] パネルで入力ポー ト 、 出力ポー ト 、 お よ び内部信号を ツールバーで ク リ ッ ク し ます。 5. [Objects] パネルに表示 さ れてい る すべてのオブジ ェ ク ト を選択 し 、 波形ウ ィ ン ド ウ の [DCM]
仕切 り の下に ド ラ ッ グ ア ン ド ド ロ ッ プ し ます。
注記 : ISim Tcl プ ロ ンプ ト で wave add Tcl コ マ ン ド を使用 し て も 、波形ウ ィ ン ド ウ に こ れ ら の 信号を追加で き ます。 次に例を示 し ます。
wave add /drp_demo_tb/uut/inst_drp_dcm
6. 同様に、[DRP CONTROLLER] 仕切 り の下に イ ン ス タ ン シエー ト 済みデザ イ ン ユニ ッ ト Inst_drp_stmach の入力ポー ト 、 出力ポー ト 、 お よ び内部信号を追加 し ます。
7. 追加 し た信号にグループを作成 し ます。 各信号セ ッ ト を[Inputs]、[Outputs]、 お よ び[Internal] のグループに分け ます。
X-Ref Target - Figure 4-18
図 4-18 : 信号およびア イ コ ン
X-Ref Target - Figure 4-19
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用 波形ウ ィ ン ド ウ は、図4-20の よ う に表示 さ れます。
信号お よび波形ウ ィ ン ド ウのプ ロパテ ィ の変更
次に、 波形ウ ィ ン ド ウ に表示 さ れてい る 信号の一部のプ ロ パテ ィ を変更 し 、 シ ミ ュ レーシ ョ ンの表 示を わか り やす く し ます。信号名の表示形式の変更
ISim ではデフ ォル ト で階層 リ フ ァ レ ン ス を省いた短い名前で信号が波形に追加 さ れます。一部の信 号では、 属 し てい る モジ ュ ールを知 る こ と が重要です。 次の手順に従っ て、drp_multiply お よ び drp_divide バ ス信号の信号名の表示形式を変更 し ます。 1. 波形ウ ィ ン ド ウ で DRP Test Signals グループに含まれてい る drp_multiply お よ び drp_divide信号を Crtl キーを押 し なが ら 選択 し ます。 2. 右 ク リ ッ ク し て [Name] → [Long] を ク リ ッ ク し ます。 こ れで、 信号名の表示形式が変更 さ れます。
信号名の基数変更
一部の信号は 2 進数 よ り 16 進数で表示 さ れたほ う が認識 し やす く な る も のがあ り ます。 た と えば、 信号 drp_multiply お よ び drp_divide がその例です。 次の手順に従っ て、 こ れ ら の信号の基数オプシ ョ ン を変更 し ます。 1. 波形 ウ ィ ン ド ウ で drp_demo_tb/drp_multiply お よ び drp_demo_tb/drp_divide 信号を選択 し ま す。 2. 右 ク リ ッ ク し て [Radix] → [Hexadecimal] を ク リ ッ ク し ます。信号の表示色の変更
ISim では、波形ウ ィ ン ド ウ に表示 さ れる信号の色を変更し、類似する信号を見分け る こ と がで き ます。X-Ref Target - Figure 4-20
デザイ ンの検証 1. 波形ウ ィ ン ド ウ で [Name] 列に リ ス ト さ れてい る 信号名を右 ク リ ッ ク し ます。 2. [Signal Color] を ク リ ッ ク し て カ ラ ーパ レ ッ ト か ら 色を選択する か、(…) ボ タ ン を ク リ ッ ク し てカ ス タ ムカ ラ ーを選択 し ます。 注記 : [Divider Color] オプシ ョ ン を使用す る と 、 波形ウ ィ ン ド ウ で作成 し た仕切 り の色を変更で き ます。
波形ウ ィ ン ド ウのフ ロ ー ト 表示
画面の解像度設定に よ っ ては、 波形ウ ィ ン ド ウ に表示で き る 以上の信号が含め ら れてい る 場合があ り ます。 波形ウ ィ ン ド ウ を フ ロ ー ト す る と 、 表示エ リ ア を拡張で き ます。 フ ロ ー ト さ せ る と 、 波形 の内容のみを含む新 し い ウ ィ ン ド ウ が開 き ます。 ウ ィ ン ド ウ を フ ロ ー ト す る には、[Float Window] ボ タ ン を ク リ ッ ク し ます。 こ れで、 波形ウ ィ ン ド ウ での変更が終了 し ま し た。 波形 ウ ィ ン ド ウ は、 テ ス ト ベンチグループが展 開表示 さ れてい る と き 、図4-22の よ う に表示 さ れます。X-Ref Target - Figure 4-21
図 4-21 : 信号の表示色の変更
X-Ref Target - Figure 4-22
第 4 章 : ISim グ ラ フ ィ カルユーザー イ ン タ ー フ ェ イ スの使用
波形ウ ィ ン ド ウの設定の保存
今後の ISim シ ミ ュ レーシ ョ ンセ ッ シ ョ ンで使用で き る よ う 、現在の波形ウ ィ ン ド ウ (波形 コ ン フ ィ ギ ュ レーシ ョ ン) を保存 し ます。
波形 コ ン フ ィ ギ ュ レーシ ョ ン を保存す る には、 次の手順に従い ます。
1. 現在の波形コ ン フ ィ ギ ュ レーシ ョ ンに名前を付け る には、[File] → [Save As] を ク リ ッ ク し ます。 2. 作業中の波形 コ ン フ ィ ギ ュ レーシ ョ ン を 「tutorial_1.wcfg」 と い う 名前で保存 し ます。 こ れで、 波形 コ ン フ ィ ギ ュ レーシ ョ ンが保存 さ れま し た。 注記 : 保存し た波形ウ ィ ン ド ウ設定は、[File] → [Open] を ク リ ッ ク する と 読み込むこ と がで き ます。
デザイ ンのシ ミ ュ レーシ ョ ン
ア ッ プデー ト し た波形 コ ン フ ィ ギ ュ レ ーシ ョ ン でデザ イ ン を も う 一度シ ミ ュ レ ーシ ョ ン し ま す。 [Run All] ボ タ ン を ク リ ッ ク し て、 シ ミ ュ レーシ ョ ン を再実行 し ます。 注記 : Tcl プ ロ ンプ ト に 「run all」 と 入力 し て も シ ミ ュ レーシ ョ ン を再実行で き ます。 シ ミ ュ レーシ ョ ンが約 13 マ イ ク ロ 秒 (us) 間実行 さ れます。シ ミ ュ レーシ ョ ンが完了 し た ら 、[Zoom to Full View] ボ タ ン を ク リ ッ ク し て波形全体を表示 し ます。
波形 コ ン フ ィ ギ ュ レーシ ョ ンは、図4-23の よ う に表示 さ れます。
X-Ref Target - Figure 4-23