isplever 6.x waveform simulation manual...task3 :波形による入力パターン作成 p7 task4...
TRANSCRIPT
ispLEVER6.x_waveform_Rev1.0.ppt Page: 1May 2007
ispLEVER 6.x Waveform Simulation Manual
Rev. 1.0
ispLEVER6.x_waveform_Rev1.0.ppt Page: 2May 2007
ispLEVER V6.x は、Lattice Semiconductor 社 のFPGA/CPLD の設計ツール
です。本マニュアルをご使用頂くことで、波形入力によるシミュレーション、テストベクター入力によるシミュレーション手法を習得頂けます。
WDLシミュレーションでは、ラティス社独自開発ツールであるSimulator Control PanelとModel Technology社ツールのModelSimにより、シミュレー
ションを実行・解析ができます。ModelSimシミュレータの詳細なご使用方法は、別冊の「Lattice版 ModelSimUser Manual」をご参照ください。
はじめにはじめに
ispLEVER6.x_waveform_Rev1.0.ppt Page: 3May 2007
ispLEVERの起動Appendix1 :ウィンドウの詳細 P4テストスティミュラスの作成Task1 :テスト・スティミュラスの作成 P5Task2 :テスト・スティミュラスの取り込み P6Waveform Editorの使用方法Task3 :波形による入力パターン作成 P7Task4 :時間単位を変更する P8Task5 :入力信号名を表示する P9Task6 :波形を描く P10Task7 :信号・波形を編集する P11Task8 :時間軸を拡大・縮小する P12Task9 :オプション機能 P13Test-Vectorの使用方法Task10 :Test-Vectorによる入力パターン作成 P14シミュレーションの実行Task11 :シミュレーションの実行 P15Task12 :Simulator Control Panel P16
フロー順に各項目をリストしています。スライドショーでご覧いただくと、各項目のTask部分をクリックすることで
ご覧になりたいページにジャンプします。(メニューバーからスライドショー→実行で、スライドショー画面になります)
シミュレーション結果の表示・解析・保存Task13 :信号表示/削除・信号バス化 P17Task14 :表示時間を調整する P18Task15 :その他の機能 P19Task16 :クロス・プロービング機能 P20Task17 :シミュレーション結果の保存 P21
- PDFファイルで本マニュアルが配布されている方は、上記機能は使用できません。
目次目次
ispLEVER6.x_waveform_Rev1.0.ppt Page: 4May 2007
Project NavigatorispLEVER を立ち上げると以下のような画面が現れます。このGUI上でLattice 社のすべての
デバイス(ispLSI、GAL、MACH、PALCE)が設計できます。(ispGDX,ispPAC は除く)
ソース・ウィンドウ
ツール・バーメニュー・バータイトル・バー
ステータス・バー
プロセス・ウィンドウ
waveformスティミュラスABEL-HDLテスト・ベクタ
ターゲット・デバイス
下位レベルファイル
最上位ファイル
各ソースは設計の階層毎に表示されます。プロジェクトを読み込んだ時、ispLEVER は自動的に
設計の階層構造を調べ、最上位のソースから順に表示します。
1 1 ispLEVERispLEVER の起動の起動
ispLEVER6.x_waveform_Rev1.0.ppt Page: 5May 2007
ispLEVERは、シミュレーションをする際、下記の2種類の方法があります。
A) 波形入力によるテストパターン作成ispLEVERに内蔵しているWaveform Editing Toolを使って、グラフィカルに波形スティミュラスを作成します。作成された波形スティミュラスは、波形記述ファイル(***.wdl)として保存されます。波形スティミュラスによるシミュレーションは、Functional Simulation / Timing Simulationをサポートしています。
B) ABELテストベクターによるテストパターン作成ABELテスト・ベクター固有のキーワードを使ってテキストエディタからテスト・ベクターを作成します。テスト・ベクターは、最上位のABEL-HDLソースの中に記述することもできますし、***.abvファイルと呼ばれるABEL-HDLテスト・ベクターのフォーマットファイルに分けることもできます。ABELテスト・ベクターによるシミュレーションは、Functional Simulation / Timing Simulationと期待値出力を
サポートしています。
A) 波形入力によるテストパターン作成例 B) ABELテストベクターによるテストパターン作成例
11--1 1 テスト・スティミュラスの作成テスト・スティミュラスの作成
ispLEVER6.x_waveform_Rev1.0.ppt Page: 6May 2007
既存ソースのインポート手順
すでに、テスト・スティミュラス(波形テストパターン、ABELテストベクター)を作成してある場合、
ファイルをインポートすることができます。
1. [Source] → [Import]2. ***.wdlまたは、***.abvを選択して、 [開く(O)] ボタンを
押します。3.Associate Waveform Stimulusダイアログが開きますので、シミュレーションパターンをどの階層(設計全体なのか、ある設計ソースのみのか)に関連つけるかを指定して、 [OK]を押します。
4.下図の通り、ソースウィンドウ内に取り込まれます。(図の場合、clock.wdl)
11--2 2 テスト・スティミュラスの取り込みテスト・スティミュラスの取り込み
ispLEVER6.x_waveform_Rev1.0.ppt Page: 7May 2007
波形入力によりテストパターンを作成する手順
1. [Source] → [New]
2. New Source ダイアログからWaveform Stimulusを選択。(プロジェクトのタイプには依存しません)
3. Associate Waveform Stimulusダイアログからシミュレーション
パターンをどの階層(設計全体なのか、ある設計ソースのみのか)に関連つけるかを指定します。設計全体に対するシミュレーションパターンを作成するのであれば、表示されているデバイス(右図のispLSI2128VE-100LT100部分)を選択して[OK]を押します。
ある階層の設計ソースに対するシミュレーションパターンを作成するのであれば、その設計ソースを選択して[OK]を押します。
4. Waveform Editing Toolが起動しますので、ファイル名を入力し、[OK]を押します。
□Note:Waveformスティミュラスをデバイス名に関連付けると、Functional / Timing Simulationが行えます。モジュールや回路図に関連付けるとFunctional Simulationだけが行えます。
22--1 1 波形による入力パターンの作成波形による入力パターンの作成
ispLEVER6.x_waveform_Rev1.0.ppt Page: 8May 2007
シミュレーションの時間軸の単位がWaveform Editing Toolの左上に表示されますが、変更する必要がある場合は、入力パターンを作成する前に時間単位を変更します。
1. [Options] → [Timing Options]
2. Timing Optionsダイアログが開きますので、時間の分解能(0.1等)と時間の単位(ns等)を選択します。
3. [Save As Defaults]を押します。これにより、
時間単位が固定され、次回からはこの設定した単位がデフォルトになります。
22--2 2 時間単位を変更する時間単位を変更する
ispLEVER6.x_waveform_Rev1.0.ppt Page: 9May 2007
続いて、シミュレーションに使用する入力信号名をWaveform Editing Tool上に表示します。表示するための方法は、下記の通り2種類あります。
信号リストから選択する方法1. [Edit] → [Import Wave]2. Importダイアログから必要な信号名を選択し、
[Add]ボタンを押します。右側のウィンドウに入ります。また、入力信号のみを表示したい場合、左側のInput以外のチェックマークを外
します。3. [Show]ボタンを押します。Waveform Editing Tool
上に信号名が表示されます。
手動で信号を入力する方法1. [Edit] → [New Wave]2. Add New Waveダイアログが開くので、Polarityを選択します。引き続き入力欄に信号名を入力します。
3. [Add]ボタンを押します。Waveform Editing Tool上に信号名が表示されます。
□Note:設計ソースで使用しているバス信号をそのままバス化
した状態で表示するためには、上記の「手動で信号を入力する方法」を行ってください。例えば、信号名Dで8ビットの場合、D[7:0]と入力します。「信号リストから選択する方法」では、バス信号がすべて展開されるため、バス化した状態で表示することができません。
22--3 3 入力信号名を表示する入力信号名を表示する
ispLEVER6.x_waveform_Rev1.0.ppt Page: 10May 2007
続いて、入力パターンを波形で描いていきます。
1. 入力する信号を選択する
表示されている信号名をクリックします。そうすると、斜め線が付きます。
2. 波形を描きます
選択した信号に対して、カーソルを左右に移動します。そうすると画面左上の時間表示が変化します。任意の時間の時に左クリックします。一本の波形が表示されます。
3. 波形のレベルを変更するSelected Bit Pulseダイアログの中のstates部分を変更します。
4. 波形時間を変更するSelected Bit Pulseダイアログの中のDuration部分に直接数値
を入力します。5. 繰り返し波形を描きます下図の通り、LOW/HIGHの波形を描いて、波形部分を2回クリックすると、波形全体が選択されます。この状態で、Selected Entire Patternダイアログの中のrepeat部分に繰り
返し回数値を入力するかforever部分
をチェックします。forever部分をチェ
ックした場合、永久繰り返しになります。
22--4 4 波形を描く波形を描く
ispLEVER6.x_waveform_Rev1.0.ppt Page: 11May 2007
ここでは、表示した信号や波形の編集方法を説明します。
1. 表示してある信号を削除する[Edit] → [Remove]Remove Patternsダイアログが開きますので、削除したい信号を選択し、 [Remove]ボタンを押します。
2. 表示してある信号を隠します隠したい信号を選択します。次に、 [Edit] → [Hide]
3. 隠してある信号を表示する[Edit] → [Show]Show Patternsダイアログが開きますので、表示したい信号を選択し、 [Show]ボタンを押します。
4. 表示してあるバス信号を展開する展開したいバス信号を選択します。次に、 [Edit] → [Expand Bus]
5. 波形のDuty比を変更する
変更したい波形部分を選択し、次にその部分を左クリックした状態で、左右に動かします。
6. 波形をコピーする
コピーしたい波形部分を左クリックした状態で選択し、[Edit] → [Copy]
7. 波形をカットするカットしたい波形部分を左クリックした状態で選択し、[Edit] → [Cut]
8. 波形を削除する削除したい波形部分を左クリックした状態で選択し、[Edit] → [Delete]またはキーボード上の[Delete]を押す。
□Note:操作を誤った場合は、Edit → Undoで元に戻ります。ファイルをセーブしたところまでUndoできます。
22--5 5 信号・波形を編集する信号・波形を編集する
ispLEVER6.x_waveform_Rev1.0.ppt Page: 12May 2007
ここでは、画面の時間軸を拡大したり縮小したりする方法を説明します。
1. 時間軸を拡大する[View] → [Zoom In]またはTool Barの中の を押します。そうすると、画面カーソル上に ‘Z’ マークが現れます。
次に、拡大したい部分にカーソルを移動させ、左クリックを押します。また、解除したい場合には、右クリックを押します。そうすると、画面カーソル上の ‘Z’ マークは消えます。
2. 時間軸を縮小する[View] → [Zoom Out]またはTool Barの中の を押します。同様に、画面カーソル上に ‘Z’ マークが現れます。
次に、縮小したい部分にカーソルを移動させ、左クリックを押します。また、解除したい場合には、右クリックを押します。同様に、画面カーソル上の ‘Z’ マークは消えます。
3. 時間軸を画面サイズに合わせる[View] → [Full Fit]またはTool Barの中の を押します。同様に、画面カーソル上に ‘Z’ マークが現れます。次に、画面の適当な位置で左クリックを押します。また、解除したい場合には、右クリックを押します。同様に、画面カーソル上の ‘Z’ マークは消えます。 □Note:時間軸を変更した場合、右クリックを押して
解除しない限り、選択した処理が継続されます。
22--6 6 時間軸を拡大・縮小する時間軸を拡大・縮小する
ispLEVER6.x_waveform_Rev1.0.ppt Page: 13May 2007
ここでは、Waveform Editing Toolのその他のオプション機能について説明します。
1. Selected Bit Pulseダイアログを表示させるには[Object] → [Edit Mode]
Selected Bit Pulseダイアログ(波形のレベルや時間を指定する)が画面上から消えている場合に操作します。
2. 時間間隔(ΔT)を測定するには測定したい時間のスタートポイントをカーソルを移動させて指定し、[Object] → [Place Marker]次に、エンドポイントを指定します。そうすると、画面左下にDelta = 760.0 nsと表されます。また、 [Object] → [Hide Marker]でMarkerは消えます。
3. バス信号の表示形式(Hex、Binary等)を変更するには[Options] → [Display Options]
Display Optionsダイアログの中のBus Radixを変更します。4. Waveform Editing Tool画面の各部の色を変更するには
[Options] → [Colors]背景、信号名、選択した信号のハイライト表示、バス波形、信号波形、ドントケア波形、Hi-Z波形の色を変更できます。
22--7 7 オプション機能オプション機能
ispLEVER6.x_waveform_Rev1.0.ppt Page: 14May 2007
ABELテストベクター入力によりテストパターンを
作成する手順
ABEL-HDL設計ソース内に記述する場合1. [Source] → [New]2. New Source ダイアログからABEL-HDL Moduleを選択。
(プロジェクトのタイプには依存しません)3. ABEL-HDL論理記述の後に、test_vectorsキーワードを使用してベクター形式でシミュレーションパターンを作成します。
ABEL-テストベクターファイルとして作成する場合1. [Source] → [New]2. New Source ダイアログからABEL-Test Vectorsを選択。
(プロジェクトのタイプには依存しません)3. ファイル名を入力する。4. シミュレーション対象の回路と同様のピン宣言を行い、以下test_vectorsキーワードを使用して、ベクター形式でシミュレーションパターンを作成します。
□Note:@repeat、CYCLE、WAITなどのキーワードを使ってより簡単に記述することもできます。ABELテストベクターに関する詳細は、ABEL-HDL Reference Manualをご参照ください。
33--1 Test1 Test--VectorVectorによる入力パターンの作成による入力パターンの作成
ispLEVER6.x_waveform_Rev1.0.ppt Page: 15May 2007
波形パターン(***.wdl)によるシミュレーション
波形パターンを使用したシミュレーションとして、ラティス社独自開発ツールであるSimulator Control PanelとModel Technology社ツールであるModelSimによりシミュレーションを実行・表示・解析することができます。ソースファイルの種類及び選択したデバイスの種類によって、各シミュレータの実行方法が異なります。
A. 波形パターン(***.wdl)を作成後、Simulator Control Panelでシミュレーション実行可能。
B. 波形パターン(***.wdl)を作成後、そのままModelSimでシミュレーション実行可能。(Verilog Simulationのみ対応)
C. 波形パターン(***.wdl)を作成後、Waveform Editing Toolの中でFile → Exportを行い、Verilog Test FixtureまたはVHDLTest Benchを自動生成後、ModelSimでシミュレーション実行可能。(Verilog Simulation及びVHDL Simulation対応)
設計ソースが、回路図の場合 :A、B、C対応ABEL-HDLの場合 :A、B、C対応
(デバイスがMACHの時はA、C)Verilog-HDLの場合 :A、B、C対応
(CについてはVerilog Simulationのみ)VHDLの場合 :A、C対応
(CについてはVHDL Simulationのみ)
44--1 1 シミュレーションの実行シミュレーションの実行
ispLEVER6.x_waveform_Rev1.0.ppt Page: 16May 2007
Simulator Control Panelによるシミュレーション
1. 波形パターン(***.wdl)を作成後、Project Navigatorのソースウィンドウ内の***.wdl部分をクリックします。
2. そうすると、プロセスウィンドウ内に右図のようにFunctional SimulationTiming Simulationが表示されますので、これを[ダブルクリック]します。
3. コンパイル後シミュレータ(Simulator Control Panel)が起動します。
4. [Simulate] → [Run]またはTool Barの中の を押しますWaveform Viewerが起動し、シミュレーションが実行されます。 [Run]を実行した場合、Waveform Editing Toolで作成した波形パターンと同じ時間までシミュレーションを行います。
5. シミュレータを途中でストップさせたい場合Simulator Control Panelの[Simulate] → [Pause]または
Tool Barの中の を押します。6. ある時間までシミュレーションしたい場合
Simulator Control PanelのTool Bar右側のStep欄に、時間を入力し、 [Simulate] → [Step]またはTool Barの中の
を押します。あるいは、Simulator Control PanelのTool Bar右側のRun to欄に、時間を入力し、 [Simulate] → [Run]またはTool Barの中の
を押します。
44--2 Simulator Control Panel2 Simulator Control Panel
ispLEVER6.x_waveform_Rev1.0.ppt Page: 17May 2007
Waveform Viewerによるシミュレーション結果表示
シミュレーションした結果をWaveform Viewer上に表示します。1. [Edit] → [Show]2. Show Waveformsダイアログから必要な信号名を選択し、
[Show]ボタンを押します。Waveform Viewer上に表示され
ます。3. 信号を削除したい場合削除したい信号を画面上から選択し、 [Edit] → [Hide]
4. 信号をバス化して表示したい場合Show Waveformsダイアログからバス化したい信号を複数選択し、 [Bus]ボタンを押します。Show Waveformsダイアログが横に広がるので、 [Add Nets]ボタンを押します。MSBとLSBが逆の場合には、 [Reverse]ボタンを押します。Bus Nameに任意の名前(Data[7:0]等)を入力し、 [SaveBus]ボタンを押します。左画面の[Show]ボタンを押します。
6. 表示されている信号をバス化したい場合バス化したい信号を選択します(左クリックをしたまま選択します)。[Edit] → [Add to Bus]
Show Waveformsダイアログが開くので、MSBとLSBが合っていることを確認後、 [Save Bus]ボタンを押します。次に、 [Show]ボタンを押します。
7. 内部信号を表示したい場合[Edit] → [Show]で、Show Waveformsダイアログが開くので
InstancesウィンドウのDをダブルクリックします。その右側のNets欄に内部信号名が表示されますので、同様に
表示します。
55--1 1 信号表示/削除・信号バス化信号表示/削除・信号バス化
ispLEVER6.x_waveform_Rev1.0.ppt Page: 18May 2007
表示されたシミュレーション結果の時間軸を拡大・縮小したり、特定の時間間隔を測定する方法を説明します。
1. 時間軸を拡大する[View] → [Zoom In]またはTool Barの中の を押します。そうすると、画面カーソル上に ‘Z’ マークが現れます。次に、拡大したい部分にカーソルを移動させ、左クリックを押します。また、解除したい場合には、右クリックを押します。そうすると、画面カーソル上の ‘Z’ マークは消えます。
2. 時間軸を縮小する[View] → [Zoom Out]またはTool Barの中の を押します。同様に、画面カーソル上に ‘Z’ マークが現れます。
次に、縮小したい部分にカーソルを移動させ、左クリックを押します。また、解除したい場合には、右クリックを押します。同様に、画面カーソル上の ‘Z’ マークは消えます。
3. 時間軸を画面サイズに合わせる[View] → [Full Fit]またはTool Barの中の を押します。同様に、画面カーソル上に ‘Z’ マークが現れます。次に、画面の適当な位置で左クリックを押します。また、解除したい場合には、右クリックを押します。同様に、画面カーソル上の ‘Z’ マークは消えます。
4.時間間隔(ΔT)を測定する
測定したい時間のスタートポイントをカーソルを移動させて指定し、[Object] → [Place Marker]次に、エンドポイントを指定します。そうすると、画面左下にDelta = 760.0 nsと表されます。また、 [Object] → [Hide Marker]でMarkerは消えます。
□Note:時間軸を変更した場合、右クリック
を押して解除しない限り、選択した処理が継続されます。
55--2 2 表示時間を調整する表示時間を調整する
ispLEVER6.x_waveform_Rev1.0.ppt Page: 19May 2007
ここでは、Waveform Viewerのその他のオプション機能について説明します。
1. 表示されている信号順を変更するには
移動したい信号をクリックして選択します。一度に複数移動する時は、左クリックしたまま信号を選択します。次に、再度左クリックしたまま、上下に移動させます。
2. バス信号の表示形式(Hex、Binary等)を変更するには[Options] → [Display Options]
Display Optionsダイアログの中のBus Radixを変更します。
3. Waveform Editing Tool画面の各部の色を変更するには[Options] → [Colors]背景、信号名、選択した信号のハイライト表示、バス波形、信号波形、ドントケア波形、Hi-Z波形の色を変更できます。
55--3 3 その他の機能その他の機能
ispLEVER6.x_waveform_Rev1.0.ppt Page: 20May 2007
クロス・プロービング機能とは、Waveform Viewerで表示した
シミュレーション値を回路図上に反映できる機能です。これを使用することにより、シミュレーション上で不良であった箇所を設計ソース(回路図)上で、確認・発見することが可能です。
1. Hierarchy Browserを起動するProject Navigatorに戻り、ソースウィンドウ内のトップの
回路図をクリックします。そうすると、プロセスウィンドウ内にHierarchy Browserが表示されますので、これをダブル
クリックします。2. シミュレーションを実行する
Task11以降を参照して、Waveform Viewerを表示します。3. Hierarchy Navigator(回路画面)上の入出力信号ピンに、
Waveform Viewer上のカーソル時の値が表示されます。4. Hierarchy NavigatorからWaveform Viewerに信号を追加するにはHierarchy Navigatorから[Tools] → [Probe Item]を選択します。次に、Hierarchy Navigator のネットをクリックします。Waveform Viewerにネットが追加され、そのネットの現在のシミュレーション値がHierarchy Navigatorに反映されます。
5. Waveform Viewerから信号を選択し、 Hierarchy Navigator上に反映させるにはWaveform Viewerから[Object] → [Query]を選択します。
次に、信号を選択し、波形の上をマウスカーソルでクリックすると、その時の値がHierarchy Navigator のネットに表示されます。
Hierarchy Navigator
Waveform Viewer
55--4 4 クロス・プロービング機能クロス・プロービング機能
ispLEVER6.x_waveform_Rev1.0.ppt Page: 21May 2007
Waveform Viewer上に信号を表示した後には、その時の表示情報を保存します。そうすると、次回シミュレーションした時には、再度信号を表示し直す手間を省くことができます。また、信号の追加表示、削除、設定の変更等を行った後に、Waveform Viewerを閉じようとすると、右図のように保存の確認画面が現れます。保存して良い場合は、YESをクリックします。
55--4 4 シミュレーション結果の保存シミュレーション結果の保存
ispLEVER6.x_waveform_Rev1.0.ppt Page: 22May 2007
以上でispLEVER6.x Waveform Simulation Manualは終了です。
より詳細なお問合せ、ご質問等に関しましては、技術サポート貴社担当FAEまたは下記技術サポート窓口までお気軽にお問い合わせ下さい。
株式会社 マクニカ テクスターカンパニー ラティス製品 技術サポート窓口電話 045-470-9841/FAX 045-470-9842Email [email protected] http://www.tecstar.macnica.co.jp/contact/index.html
終わりに終わりに
ispLEVER6.x_waveform_Rev1.0.ppt Page: 23May 2007
日付 Revision Old-page New-Page 変更内容の概要 更新担当者
2007/6/1 1.0 改訂版 恩賀
Revision HistoryRevision History