アドバンスドデータフローの使用方法

アドバンスドデータフローウィンドウは、設計者がアクティブなデザインの接続を調べ、シミュレーション中にインスタンス、コンカレント文、信号、ネットおよびレジスタ間のデータフローを解析できる強力なツールです。データフロー・ビューワで表示するデータフロー・ダイアグラムには階層、フラット、およびグレーの3種類があり、プロジェクト全体を伝搬するイベントを追跡し、予期しない出力値の原因となっている部分を特定するのに力を発揮します。

本ドキュメントでは、サンプルデザイン Freq_meter を使って、アドバンスドデータフローの使用方法を紹介します。

アドバンスドデータフロー

デザインを開くには、メニューの File | Open workspace/design Explorer を選択し、Active-HDL/samples/VHDL_Designs の下の Freq_meter を開きます。開いたデザインのテストベンチフォルダに移動して、下図1に示すように testbench (entity/architecture) をデザイントップレベルに指定します。

図 1

イニシャライズシミュレーションを実行しアドバンスドデータフローへ信号を追加する前に、必要な設定があります。メニューの Tools | Preferences | Simulation | Advanced Dataflow を選択し、下図2に示すように設定します。アドバンスドデータフローが正常に動作するように、Generate data for Advanced Dataflow にチェックを入れます。

図 2

イニシャライズシミュレーション実行後、Design Browser の Structuresタブにて freq_topを選択し 、下のウィンドウにてGATE 信号を右クリックして、図3に示すように Add to Advanced Dataflowを選びます。

図 3

アドバンスドデータフローウィンドウが開いて、図4のようにフラットモードで GATE 信号が追加されます。

図 4

アドバンスドデータフローには3つのモードがあります。

  1. 階層

  2. フラット

  3. グレー

Hierarchy modeアイコンを使って、フラットモードと階層モードを切り替えることができます。アドバンスドデータフローで選択したGATE信号に対して階層モードに切り替えると、下図5が表示されGATE信号を使って UUT/U0 cnt_bcd が繋がっていることが分かります。

図 5

グレーモードは特定信号を詳細にトレースするのに有効で、特に複雑なデザインの大きなデータフロー図におけるトレースが容易になります。グレーモードはアイコンを使って切り替え可能です。グレーモードに切り替えた後、LED_A を右クリックして X-wayを選択します。これにより、他の全てのブロックがグレーアウトとなり、図6のようにトレースされるブロックだけが青色でハイライト表示されます。

図 6

アドバンスドデータフローウィンドウで特定の信号を右クリックすると、図7のコンテキストメニューからオプションを選択でき、シミュレーションモデルの接続を調べ、デザイン全体を伝搬するイベントをトレースすることができます。

図 7

アドバンスドデータフローウィンドウは、ストラクチャタブや波形ウィンドウ、HDLエディタのような他のウィンドウとも強固に統合されています。特定オブジェクトのソースコードを表示するには、view source を使います。アドバンスドデータフローから波形ウィンドウへオブジェクトを追加するには、add to waveform windowを使用します。

HDLエディタ、ブロック/ステートダイアグラムエディタ、以前の波形ビューワ/エディタ、およびプロセス/ウォッチウィンドウでのオブジェクトの指定も同様で、コンテキストメニューから Add to Advanced Dataflow を選択します。Add to Advanced Dataflow や Add to Advanced Dataflow Recursively コマンドはツールバーからも利用できます。

アドバンスドデータフロートレース

選択された作業モードに関わらず、アドバンスドデータフローウィンドウはドック可能なツールボックスadvanced Dataflow Traceと常に同期しています。アドバンスドデータフロートレースオプションは、次の目的で用意されています。

アドバンスドデータフロートレースツールボックスを開くには、メニューのadvanced Dataflow | View Trace またはツールバーのView Trace ボタンを使います。図9では LED_C信号の情報をadvanced Dataflow Trace ツールボックスで表示しています。

図 9

上記2つのウィンドウは同期しており、アドバンスドデータフローウィンドウで選択した信号の詳細情報(名前、タイプ、値、デザイン階層パス)が、アドバンスドデータフロートレースツールボックスに表示されます。

ユーザは一定時間シミュレーションを実行し、アドバンスドデータフローでダイナミックに値の変化を観測することができます。図10では、コンソールウィンドウにrun 20usとタイプし、アドバンスドデータフローウィンドウでGATE信号の値の変化を観測しています。本機能はデザインのデバッグに大変有効で、シミュレーション実行時に生成される値を観測することができます。

図 10



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