Active-HDLを初めて利用する方へ

はじめに

このページはActive-HDLの基本機能の使い方を学ぶチュートリアルです。Active-HDLはVHDL, Verilog, System Verilog, EDIF, System Cでデザインを開発し、検証するための統合環境です。このチュートリアルでは、Active-HDLと一緒にインストールされるPressControllerというサンプルデザインを用いて、デザインエントリとシミュレーションを行います。

利用を開始する

チュートリアルを始めるにあたっては、まず、Active-HDLの最新バージョンをコンピュータにインストールする必要があります。http://www.aldec.com/Productsから無料でダウンロードできます。

ワークスペースとデザインを作る

Active-HDLでは、デザインとそのリソース (ソースファイル、シミュレーション結果の出力ファイルなど) はデザインごとにまとめてワークスペースに置いておくことができます。ワークスペースではいくつかのデザインを同時に追加したり処理したりすることができます。

ファイルを作成してデザインに追加

HDLソースコードの作成

VHDL/Verilog/System Cのソースファイルを作成するには、Add New Fileオプションをダブルクリックしてから、ソースファイルのタイプを選択します。Design Browserの右側に新しいエディタウィンドウが開きます。テキストによるデザインエントリは図6のような形になります。

図6: VHDLソースコードファイルの作成

State Diagram Editorで新規ステートダイアグラムを作成

ポートをダイアグラムに追加

ダイアグラムに信号や変数を追加

ダイアグラムにステートを追加

ステート間遷移を描く

今まで説明したものをすべて追加すると、ステートダイアグラムは図7のようになります。

図7: ステートダイアグラム

Block Diagram Editorで新規ブロックダイアグラムを作成

ブロックダイアグラムにシンボルを追加

新規ワイヤを追加

ワイヤを描く方法は2つあります。1つは2回クリック、もう1つはマウスボタンを押し続けながら描く方法です。

  1. DiagramメニューからWireをクリックします。

  2. ワイヤの始点にしたい場所をクリックします。

  3. ワイヤの終点にしたい場所までマウスカーソルを動かします。マウスカーソルを動かしている間、始点からカーソルの位置までワイヤの線が伸びていきます。ワイヤを曲げたい場合は、その位置でマウスボタンをクリックします。

  4. ワイヤの終点にしたい位置でクリックします。ダイアグラム内の何もない場所でワイヤを切りたい場合は、シングルクリックでなくダブルクリックする必要があります。

  5. 別のワイヤを描くにはステップ2から4を繰り返します。

マウスボタンを押し続ける方法でワイヤを描く方法は次の通りです。

  1. Diagramメニューから、Wireをクリックします。

  2. ワイヤの始点にしたい位置にマウスカーソルを動かし、マウスボタンを押します。

  3. マウスボタンを押し続けながら、マウスカーソルをワイヤの終点にしたい位置まで動かします。始点からカーソルの位置までワイヤの線が伸びていきます。ワイヤを曲げたい場合は、その位置でマウスボタンを押したままSpaceキーを押します。

  4. 終点にしたい位置でマウスボタンを放します。

  5. 別のワイヤを描くにはステップ2から4を繰り返します。

バスの追加

新規バスの描画方法はワイヤと同じです。DiagramメニューでWireの代わりにBusを選び、その後は新規ワイヤを追加のステップ2〜4を繰り返します。

FUBを追加

新規FUB (関数ユニットブロック) の描画方法はワイヤと同じです。DiagramメニューでWireの代わりにFUBを選び、その後はワイヤのステップ2から4までを実行します。

すべてを追加し終えたところで、ブロックダイアグラムは図8のようになっています。

図8: ブロックダイアグラム

テストベンチを生成

Testbench Wizardはユーザー定義要件に基づいてテストベンチファイル (マクロファイル1つとソースファイル多数から構成) を自動生成します。ユーザーの指定する情報でもっとも重要なのは、テストベクタファイル名です。テストベンチはそのファイルに定義されたテストベクタをベースにしてUUTエンティティに対してスティミュラスを生成します。

Testbench Wizardは次のファイルタイプを扱えます。

テストベンチの生成方法

コンパイル

コンパイルとはソースファイルを解析する工程です。ファイル内にあるデザインユニットが解析され、シミュレータに理解できるフォーマットでワーキングライブラリに保存されます。Active-HDLでは、ソースファイルはVHDLファイル、Verilogファイル、EDIFネットリストファイル、ステートダイアグラムファイル、およびブロックダイアグラムファイルです。

ブロックダイアグラムファイルまたはステートダイアグラムファイルの場合、コンパイラはダイアグラムから生成されたHDLコード (またはネットリスト) を持つVHDL/Verilog/EDIFの中間ファイルを解析します ($dsn\compile)。Active-HDLはVHDL, Verilog, EDIF用に別々のコンパイラを用意しています。メニューコマンドやツールバーボタンからコンパイルを選択すると、Active-HDLは自動的にコンパイル対象のソースファイルのフォーマットに適合したコンパイラを選び出します。

ファイルのコンパイル

:

  • コンパイル中に出されたメッセージ (情報、警告、エラー) はConsoleウィンドウか、(指定した場合には) Compilationタブに表示されます。

  • ソースファイルのコンパイルで生成されたライブラリユニットはソースファイル用に指定されたワーキングライブラリに格納されます。デフォルトでは、デザインのソースファイルはすべてデフォルトのワーキングライブラリにコンパイルされます。

シミュレーションの初期化

必要なデザインユニットのコンパイルがすべて成功したら、シミュレーションの初期化が可能になります。シミュレーションの初期化の前に、次を確認してください。

トップレベルユニットを選択せずにシミュレーションを実行すると、Active-HDLはすぐに選択するよう促すダイアログボックスを表示します。

シミュレーションを開始するには、SimulationメニューからInitialize Simulationを選択します。選択すると、シミュレーションモデルのエラボレーションと初期化が始まります。エラボレーションでは、シミュレータはデザインユニットを読み込んでシミュレーションモデルをコンピュータのメモリ上に構築します。初期化では、モデルのオブジェクト (信号、変数など) すべてに初期値 (デフォルト値または明示的に指定した値) が与えられ、同時並行処理がすべて停止まで実行されます (図11参照)。

図11: シミュレーションの初期化

時間を指定せずにシミュレーションを実行するには、SimulationメニューからRunを選びます。所定のタイムステップの間だけシミュレーションを進めたい場合は、メインツールバーのSimulation Stepボックスに所定のタイムステップを入力します (図12参照)。SimulationメニューからRun Forを選択するか、Run Untilを選択します。シミュレーションを実行したい時間を指定し、OKをクリックします。

図12: Simulation Stepボックス

シミュレーションの一時停止と終了

波形ビューア

Active-HDLには2種類の波形ビューアがあります。:

デフォルトではAccelerated Waveform Viewerが有効で、*.asdbシミュレーションデータベースがシミュレーション初期化中に作成されます。Accelerated Waveform Viewerはデザインで大規模なシミュレーションデータを扱う場合に適しています。このビューアは大規模デザインと長時間のシミュレーション実行に最適化されています。

Standard Waveform Viewer/Editorは小規模なデザインを、特に対話的モードで扱いたい場合に適しています。例えば、このビューアは現在のシミュレーションが前回のシミュレーション結果をどう上書きするか表示できるだけでなく、ホットキーシミュレータを使うこともできます。

新規波形ファイルを開き信号を追加

図13: 信号を波形ビューアに追加

波形ファイルを保存してオフラインで表示

: シミュレーションを停止してから波形ファイルを保存してください。

リスタートボタンをクリックすれば波形の信号を消すことなくシミュレーションを再初期化できます。

後のシミュレーションで再利用するために波形ファイルを保存

The Waveform | Save to macroメニューオプション、またはFile | Exportメニューは、後のシミュレーションで波形ビューアの表示を復活させられるマクロファイル (.do) を生成するコマンドです。マクロファイルには*.asdbファイルにあるすべての信号についてadd waveコマンドやlistコマンドが記述されています (図14)。

図14 : マクロに保存

マクロファイルを実行

保存したマクロファイルを利用することで別のシミュレーション実行時に信号を波形に追加できます。シミュレーションを初期化した直後に、スクリプトでマクロファイルを実行します。

ヘルプ

ツール内

Help | Product HelpでActive-HDLのヘルプを開き、ツールについて色々学びましょう。

ウェブサイトのヘルプ

www.aldec.com/supportから、Active-HDLに関するオンラインデータベースや技術ドキュメントにアクセスできます。

サポートアカウント

www.aldec.com/supportからアルデックのサポートアカウントに登録すれば、サポート事例を開いたりソフトウェアをダウンロードしたりすることができます。



Printed version of site: www.aldec.com/jp/support/resources/documentation/articles/1054