最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ロジック アナライザー

時間の経過に沿った遷移と状態の可視化、測定および解析

説明

ロジック アナライザーは、Simulink® モデルの信号を可視化して検査するためのツールです。ロジック アナライザーを使用することで以下が可能です。

  • モデルのデバッグと解析

  • 多数の信号の同時トレースおよび相関

  • タイミング違反の検出と解析

  • システムの実行のトレース

  • トリガーを使用した信号の変化の検出

キーボード ショートカットについては、More をクリックしてください。

キーボード ショートカット

アクション説明次の場合に適用可能
Ctrl+X切り取り波形が選択されている
Ctrl+Cコピー波形が選択されている
Ctrl+V貼り付け波形が選択されている
Delete削除波形が選択されている
Ctrl+-ズーム アウト常時
Shift+Ctrl+-アクティブなカーソルを中心としてズームアウト常時
Ctrl++ズームイン常時
Shift+Ctrl++アクティブなカーソルを中心としてズームアウト常時
Shift+Ctrl+C表示をアクティブなカーソルに移動カーソルが表示範囲内にない場合
Spaceズーム アウト (フル)常時
TabRight Arrow次の遷移デジタル形式の波形が選択されている
Shift+TabLeft Arrow前の遷移デジタル形式の波形が選択されている
Ctrl+Aすべての波形を選択常時
Up Arrow選択されている波形の上にある波形を選択波形が選択されている
Down Arrow選択されている波形の下にある波形を選択波形が選択されている
Ctrl+Up Arrow選択した波形を上に移動波形が選択されている
Ctrl+Down Arrow選択した波形を下に移動波形が選択されている
Escapeすべての信号の選択を解除波形が選択されている
Page Up上にスクロール常時
Page Down下にスクロール常時

ロジック アナライザー を開く

Simulink ツール バーで、ロジック アナライザー ボタン をクリックします。ボタンが表示されていない場合は、[シミュレーション データ インスペクター] ボタンの矢印をクリックして、メニューから [ロジック アナライザー] を選択します。

Simulink セッションを切り替えた後も最後に選択したデータの可視化が保たれます。

メモ

参照モデルでロジック アナライザーを開くには、先に参照モデルを最上位モデルとして開き、その後にツール バーからロジック エディターを開かなければなりません。ロジック アナライザーのツール バーに参照モデルの名前が表示されます。

解析する信号の選択

ロジック アナライザーでは、可視化するデータを選択する方法がいくつかサポートされています。

  • モデル内の信号を選択します。信号を選択すると、信号線の上に省略記号が表示されます。省略記号の上にカーソルを合わせてオプションを表示し、[データ ログを有効化] オプションを選択します。

  • モデル内の信号を右クリックしてオプション ダイアログ ボックスを開きます。[選択した信号のログ] オプションを選択します。

  • 任意の方法を使用してモデル内の複数の信号線を選択します。たとえば、[Shift] キーを押しながらクリックして複数の線を個別に選択したり、[Ctrl+A] キーを押して一度にすべての線を選択したりします。次に、ロジック アナライザー ボタンの矢印をクリックして [選択した信号のログ] を選択します。

ロジック アナライザーを開くと、ログ記録用にマークが付けられたすべての信号がリストされます。開いているロジック アナライザーから波形の追加および削除を実行できます。

グローバル設定の変更

ロジック アナライザーを開いて、ツールストリップから [設定] を選択します。グローバル設定ダイアログ ボックスが開きます。グローバル設定よりも、個々の信号に関する設定変更の方が優先されます。ロジック アナライザーでの設定の変更はモデル (Simulink) または System object™ (MATLAB®) に保存されます。

信号の表示の [基数] を次のいずれかに設定します。

  • 16 進数 — 値を 0 ~ 9 および A ~ F のシンボルとして表示します。

  • 8 進数 — 値を 0 ~ 7 の数値として表示します。

  • バイナリ — 値を 0 と 1 として表示します。

  • 符号付き 10 進数 — 符号付きの格納された整数値を表示します。

  • 符号なし 10 進数 — 格納された整数値を表示します。

表示の [形式] を次のいずれかに設定します。

  • 自動 — 浮動小数点信号は [アナログ] 形式で表示し、整数および固定小数点信号は [デジタル] 形式で表示します。boolean 信号は 0 または 1 として表示されます。

  • アナログ — 値をアナログ プロットとして表示します。

  • デジタル — 値をデジタル遷移として表示します。

表示の [時間単位] を次のいずれかに設定します。

  • 自動 — 現在のプロットに表示されている時間範囲に適した時間スケールを使用します。

  • ミリ秒

  • マイクロ秒

  • ナノ秒

  • ピコ秒

  • フェムト秒

[boolean の強調表示] を次のいずれかに設定します。

  • None

  • — Boolean 信号の行全体に対して強調表示された背景が追加されます。

    boolean 信号に対する強調表示を追加するには、[ブール値の強調表示] を選択します。

  • 勾配 — 値に基づいて Boolean 信号を強調する色を追加します。信号値が true の場合、強調表示が下にフェード アウトします。信号値が false の場合は、信号が上にフェード アウトします。このオプションを使用することで、信号の値を視覚的に推測できます。

グローバル設定 [波形の色][座標軸の色][高さ][フォント サイズ] および [間隔] の説明については、次の図を参照してください。[フォント サイズ] は座標軸内のテキストにのみ適用されます。

既定の設定では、シミュレーションが停止するとロジック アナライザーの画面上にシミュレーション時間のすべてのデータが表示されます。この動作が望ましくない場合は、[停止時にビューに合わせる] をオフにします。シミュレーション時間が長い場合、このオプションは無効になります。

パス情報を含めずに波形の略称を表示するには、[波形名の略称の表示] を選択します。

固定小数点および整数の信号を展開して個々のビットを表示できます。[最初に最下位ビットを表示] オプションを使用すると、表示されるビットの順序を反対にできます。

バス信号をロジック アナライザーにストリーミングする場合、[バス要素の名前を表示] オプションを使用してバス内の信号の名前を表示できます。バス要素の名前を表示するには、次を行います。

  1. ストリーミングするバス信号を追加します。

  2. ロジック アナライザーの設定で、[バス要素の名前を表示] チェック ボックスをオンにします。

  3. シミュレーションを実行します。

バス信号を展開するとバス信号名が表示されます。

いくつかの特殊な状況:

  • 信号に名前がない場合、ロジック アナライザーは代わりにブロック名を表示します。

  • バスがバス オブジェクトの場合、ロジック アナライザーには Bus Object Editor で指定したバス要素の名前が表示されます。

  • いずれかのバス要素に配列が含まれている場合、配列の各要素には要素のインデックスが付加されます。

  • バス要素に複素数の要素をもつ配列が含まれている場合、実数値と複素数値 (i) は分離されます。

  • Gain ブロックを介して渡されたバス信号には、Gain(1)Gain(2)、...Gain(n) のラベルが付けられます。

  • バスにバスの配列が含まれている場合、ロジック アナライザーによって要素名の前にバス配列のインデックスが付加されます。

個々の波形設定の変更

ロジック アナライザーを開いて、波形名をダブルクリックして波形を選択します。[波形] タブから、選択した個々の波形に固有のパラメーターを設定します。グローバル設定よりも、個々の信号に対する設定の方が優先されます。個々の波形パラメーターをグローバル設定に戻すには、[リセット] をクリックします。

波形の削除と復元

  1. ロジック アナライザーを開いて、波形名をクリックして波形を選択します。

  2. ロジック アナライザーのツールストリップで、 をクリックします。ロジック アナライザーから波形が削除されます。

  3. 波形を復元するには、ロジック アナライザーのツールストリップで をクリックします。

    [復元済み波形] という名前のデバイダーがチャネルの下部に追加され、削除したすべての波形がその下に配置されます。

トリガーの追加

ロジック アナライザーのトリガーを使用すると、特定の条件に基づいてデータ点を検出できます。この機能は、特定の信号の変化を検出する必要がある場合、デバッグやテストに便利です。

  1. ロジック アナライザーを開いて、[トリガー] タブを選択します。

  2. 信号をトリガーに接続するには、[信号を接続] を選択し、トリガーをオンにする信号を選択します。最大 20 の信号をトリガーに接続できます。各信号はトリガー条件を 1 つのみもつことができます。

  3. 既定の設定では、トリガーは接続された信号の立ち上がりエッジを探します。立ち上がりエッジ、立ち下がりエッジ、ビット シーケンスまたは比較値を探すようにトリガーを設定できます。トリガー条件を変更するには、[条件設定] を選択します。

    複数の信号をトリガーに追加した場合、[演算子] オプションを使用してトリガー ロジックを制御できます。

    • AND - すべての条件に一致。

    • OR - いずれかの条件に一致。

  4. サンプルをいくつ表示した後でトリガーするかを制御するには、[表示サンプル] オプションを設定します。たとえば、このオプションを 500 に設定すると、ロジック アナライザーは 500 サンプル後にトリガーしようとします。シミュレーションによっては、ロジック アナライザーがトリガー前に表示するサンプルは 500 より多かったり少なかったりします。ただし、500 番目のサンプルの前にこのトリガーが検出された場合でも、ロジック アナライザーはトリガーを表示します。

  5. [表示モード] を使用してトリガー モードを制御します。

    • 1 回のみ - ロジック アナライザーはトリガー条件に一致する最初の場所のみをマークし、ロジック アナライザーへの更新の表示を停止します。トリガーをリセットする場合は、[トリガーをリセット] を選択します。現在のシミュレーション時間に対して、ロジック アナライザーは一致する次のトリガー イベントを表示します。

    • 自動 - ロジック アナライザーはトリガー条件に一致するすべての場所をマークします。

  6. シミュレーションを実行する前に、[トリガーを有効にする] を選択します。青いカーソルが時間 0 として表示されます。次にシミュレーションを実行します。トリガーが検出されると、ロジック アナライザーはその場所をロックされた青いカーソルでマークします。

マルチ参照 Model ブロックの表示インスタンスの選択

ロジック アナライザーでは、マルチインスタンスの Model ブロックの単一インスタンスのみをストリーミングできます。同じモデルを複数の異なるウィンドウで開くと、それらのモデルで同じロジック アナライザーが共有されます。この例では、ロジック アナライザーでのストリーミング用に、マルチインスタンス Model ブロックのインスタンスを選択する方法を示します。

  1. multipleModelInstances モデルを開きます。

    open_system(fullfile(matlabroot,'examples','dsp','multipleModelInstances.slx'))

    このモデルには、referencedModel モデルの 3 つのインスタンスが含まれています。

  2. いずれかの Model ブロックをダブルクリックして、3 つすべての Model ブロックが参照するモデルを開きます。

  3. Moving Average ブロックの横にあるログのシンボルをダブルクリックしてロジック アナライザーを開きます。

    ロジック アナライザーのツール バーに referencedModel と表示されます。

  4. Simulink モデルからこのモデルを実行します。モデル ウィンドウからシミュレーションを実行すると、Simulink で最上位モデルと参照モデルが実行されます。ロジック アナライザーに、マルチインスタンス Model ブロックの単一インスタンスが表示されます。

    メモ

    ロジック アナライザーで [実行] をクリックすると、ロジック アナライザーのツール バーに表示されているモデルが実行されます。このモデルが参照モデルの場合、最上位モデルなしで個別にモデルが実行されるため異なる結果になります。

    ロジック アナライザーには、最後に開いたモデルのシミュレーション結果が表示されます。ロジック アナライザーの再生制御では、ログに記録されたその信号を含むモデルがシミュレートされます。

  5. インスタンスを切り替えるには、Simulink エディターのメニューから、[ブロック線図][サブシステムとモデル参照][Model ブロックのノーマル モードの可視性] を選択します。[Model Instance 3] を選択して [OK] をクリックします。

  6. multipleModelInstances モデルを再実行します。ロジック アナライザーModel Instance 3 のデータが表示されます。

ビット拡張される波形の表示とビットの表示順序の反転

ロジック アナライザーでは、固定小数点と整数の波形をビット拡張できます。

  1. ロジック アナライザーでビットを表示するには、固定小数点または整数の波形の隣にある矢印をクリックします。

    最下位ビットと最上位ビットは、波形名の隣に lsb および msb の表示によってマークされます。

  2. 表示されるビットの順序を反対にするには、[設定] をクリックし、[最初に最下位ビットを表示] を選択します。

トリガーを追加して書き込み処理を検証する

この例では、トリガーを使用して信号が設計と一致していることを検証する方法を示します。

  1. プログラミング可能 FIR フィルター モデル (dspprogfirhdl) を開きます。

  2. ロジック アナライザーを開いて、[トリガー] タブを選択します。

  3. トリガーを追加するために、ツールストリップの [信号を接続] を選択して、Write En 書き込みイネーブル信号を接続します。信号名の前にアイコンが表示され、信号がトリガーに接続されたことが示されます。アイコンはトリガーの種類に応じて変化します。

  4. [条件設定] を選択し、Write En 信号のトリガー条件を [立ち下がりエッジ] に変更します。書き込みイネーブル信号が送信されるとトリガーが表示されます。

  5. Write Done 信号をトリガーに接続します。この信号のトリガー条件を既定の設定である [立ち上がりエッジ] のままにします。これで書き込みが完了したときにもトリガーが表示されます。

    [条件設定] ドロップ ダウンを開くと、[演算子] フィールドが表示されます。このフィールドは、複数の信号がトリガーに接続されている場合に表示されます。演算子を [OR] に変更して、書き込みの開始時または完了時にトリガーによってインスタンスが表示されるようにします。

  6. [表示モード][自動] に設定します。この設定により、ロジック アナライザーはトリガー条件が満たされるすべての場所をマークします。

  7. [トリガーを有効にする] を選択してシミュレーションを実行します。

    トリガー条件が満たされるたび、ロジック アナライザーはその時間をロックされた青いカーソルでマークします。マークされたそれぞれの場所で、Write En0Write Done1 です。トリガーによってマークされたそれぞれの場所を調べると、書き込みが送信されるたびに完了もしていることを確認できます。

関連する例

制限

  • ロジック アナライザーではフレームベースの処理はサポートされません。

  • コンフィギュレーション パラメーター [データセットのデータをファイルにログ] を有効にすると、ログ データをロジック アナライザーにストリーミングできません。

  • シミュレーションの実行中は、ズームとパンおよびトリガーの変更の機能は無効になります。

  • 大規模なシミュレーションの場合、ビューに合わせるズームは無効になります。

  • ロジック アナライザーでのストリーミング用にマークが付けられた信号では、シミュレーション ステップあたりのサンプル数が 8000 未満でなければなりません。

  • ストリーミング用にマークが付けられた定数は直線で可視化されます。

  • Simulink.sdi.markSignalForStreaming または Dashboard Scope を使用してストリーミング用にマークが付けられた信号は、ロジック アナライザーには表示されません。

  • 整数は 64 ビットまでサポートされ、固定小数点信号は 128 ビットまでサポートされます。

  • ロジック アナライザーは、以下のサポートされるシミュレーション モードを実行しているモデルで使用できます。

    モードサポート注意と制限

    ノーマル

    あり

     

    アクセラレータ

    あり

    ロジック アナライザーを使用して、[シミュレーション モード][アクセラレータ] に設定された Model ブロックの信号を可視化することはできません。

    ラピッド アクセラレータ

    あり

    シミュレーション中にロジック アナライザーでデータは利用できません。

    シミュレーション モードがラピッド アクセラレータに設定されたモデルをシミュレーションする場合、以下の信号はロジック アナライザーにストリーミングできません。

    • 複数インスタンスのモデル参照信号

    • 非バーチャル バス信号

    プロセッサインザループ (PIL)

    なし

     

    ソフトウェアインザループ (SIL)

    なし

     

    エクスターナル

    なし

     

    これらのモードの詳細については、アクセラレータ モードの動作 (Simulink)を参照してください。

参考

System object

R2016b で導入