24
使いやすいロジック・ アナライザ Application Note 1337

使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

使いやすいロジック・アナライザ

Application Note 1337

Page 2: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

2

目次

はじめに

オシロスコープかロジック・アナライザか . . . . . . . . . . . . . . . . . . .3

ロジック・アナライザについて . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

タイミング・アナライザの基礎 . . . . . . . . . . . . . . . . . . . . . . . .5

ステート・アナライザの基礎 . . . . . . . . . . . . . . . . . . . . . . . . .12

デジタル・ツールの効率的な使用方法 . . . . . . . . . . . . . . . . . . . . .17

ターゲット・システムへの接続方法 . . . . . . . . . . . . . . . . . . . . . . .20

まとめ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

デジタル・デバッグに最適なツールを使用すると、問題をより短時間で解決できます。最適なツールを選択するにはまず、ツールの機能を十分に理解する必要があります。

このアプリケーション・ノートでは、ロジック・アナライザの基礎を概説します。詳細な測定が数多く掲載されているわけではありませんが、ロジック・アナライザの機能を理解できます。

Page 3: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

3

オシロスコープかロジック・アナライザか

オシロスコープを使用するかロジック・アナライザを使用するかを選択する場合、多くのエンジニアは、 オシロスコープを使い慣れているという理由からオシロスコープを選択します。しかし、一部のアプリケーションでは、オシロスコープに制限があります。作業内容によっては、ロジック・アナライザの方が役に立つ情報が得られます。オシロスコープとロジック・アナライザには重複する機能があるため、どちらか一方を使用すればよい場合もあります。どちらがアプリケーションに適しているかを、どのようにして判断すればよいのでしょうか? いくつかの基本的なガイドラインを説明します。

オシロスコープを使用した方がよい場合

● 低レベル信号をモニタする必要がある場合

● 高いタイム・インターバル確度が必要な場合

オシロスコープは一般に、高い垂直軸(電圧)分解能が必要な場合に使用されます。すなわち、すべての電圧スイングを確認する必要がある場合は(図1を参照)、オシロスコープを使用します。

デジタル・オシロスコープなどの、多くのオシロスコープは、非常に高いタイム・インターバル分解能を備えていて、2つのイベント間の時間間隔を極めて高い確度で測定できます。一般に、パラメトリック情報が必要な場合はオシロスコープを使用します。

図1. オシロスコープの波形

Page 4: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

4

ロジック・アナライザを使用した方がよい場合

● 多くの信号を同時に表示する必要がある場合

● システム内の信号をハードウェアが行うのと同様の方法でモニタする必要がある場合

● 複数ラインのパターンでトリガし、結果を確認する必要がある場合

ロジック・アナライザはオシロスコープから発展したものです。オシロスコープと同様に、一般的な方法でデータを表示します。水平軸は時間を表し、垂直軸は電圧を表します。ロジック・アナライザは、オシロスコープのように高い電圧分解能/タイム・インターバル確度を備えているわけではありませんが、何百もの信号を同時に捕捉/表示できます。これは、オシロスコープでは不可能です。ロジック・アナライザは、システム内の1つの信号が1つのしきい値を超えると、ロジック回路と同様の応答を示します。すなわち、信号をローまたはハイと認識します。また、これらの信号のハイ/ローのパ

ターンでトリガすることもできます。

一般に、オシロスコープより多くのラインをモニタする必要があり、正確なタイム・インターバルが不要であれば、ロジック・アナライザを使用します。立ち上がり時間や立ち下がり時間などのパラメトリック情報を確認する必要がある場合は、ロジック・アナライザは適していません

(図2を参照)。ロジック・アナライザは、バス上の時間関係やデータ(マイクロプロセッサのアドレス、データ、制御バス)を確認する場合に最適です。マイクロプロセッサのバス上の情報をデコードし、意味のあるフォーマットで示すことができます。

通常は、ロジックのハイ/ローのパターンでトリガする必要がある場合は、ロジック・アナライザが最適です。

図2. オシロスコープのタイミング波形

Page 5: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

5

ロジック・アナライザを使用した方がよい場合について説明してきました。ロジック・アナライザとはどのようなものか、もう少し詳しく説明します。これまでは、「ロジック・アナライザ」という用語を漠然と使用してきましたが、実際には、ほとんどのロジック・アナライザは1台で2台のアナライザの機能を併せ持っています。1つはタイミング・アナライザで、もう1つはステート・アナライザです。それぞれに固有の機能がありますが、これらについては、以下の各セクションで説明します。

タイミング・アナライザの基礎

タイミング・アナライザは、ロジック・アナライザのオシロスコープに似た部分です。タイミング・アナライザは、オシロスコープと同様の、波形で情報を表示します。水平軸は時間を表し、垂直軸は電圧振幅を表します。どちらの測定器の波形も時間に依存し、タイム・ドメイン表示と呼ばれます。

適切なサンプリング方法の選択

タイミング・アナライザは、入力波形をサンプリングすることにより、ハイであるかローであるかを決定します。タイミング・アナライザは、1つの電圧しきい値だけで判断します。サンプリング時にしきい値を上回っている信号があると、アナライザは「1」

(ハイ)で表示します。しきい値を下回っているサンプリング信号はすべて、「0」(ロー)で表示されます。これらのサンプリング・ポイントの0と1の並びで、入力波形が表示されます。タイミング・アナライザに関する限り、波形はハイまたはローのどちらかです。中間ステップは認識されません。この並びはメモリに保存されます(図3を参照)。

ロジック・アナライザについて

図3. タイミング・アナライザのサンプリング・ポイント

しきい値

サンプリング・ポイント

サンプリング結果(0はしきい値を下回っていることを表します)

サンプリング結果(1はしきい値を上回っていることを表します)

サンプリング結果から復元されたタイミング・アナライザの表示

Page 6: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

6

図4の表示を見てください。これらの波形表示は、実際には、デジタイジング・オシロスコープとタイミング・アナライザによる同じ信号(正弦波)の表示です。タイミング・アナライザはすべて方形で表示するので、有用性が限定されるように思われますが、パラメトリック測定用ではないということを忘れてはいけません。信号の立ち上がり時間を確認したい場合は、オシロスコープを使用すべきです。ただし、数本または数百本のラインを一度に表示してタイミングの関係を確認する必要がある場合は、タイミング・アナライザが最適です。

例えば、システムのダイナミックRAMを2 msごとにリフレッシュしなければならないとします。2 ms以内にメモリの内容をリフレッシュするには、カウンタを使ってRAMのすべての行をシーケンシャルにカウントして、それぞれをリフレッシュします。カウンタが行をすべてカウントした後で最初に戻ることを確認したい場合は、カウンタの開始時にトリガし、すべてのカウントを表示するように、タイミング・アナライザを設定することができます。ここでは、パラメトリック情報は重要ではなく、カウンタが1からNまでカウントし、最初に戻ることだけを確認したいだけです。

図4. 同じ信号のオシロスコープとタイミング・アナライザによる表示

Page 7: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

7

図5. タイミング・アナライザによる入力ラインのサンプリング

タイミング・アナライザが入力ラインをサンプリングする場合、入力ラインはハイかローのどちらかです。ラインがあるサンプルでは一方の

(ハイまたはロー)ステートにあり、次のサンプルでは反対のステートにある場合は、アナライザは、入力信号が2つのサンプルの間を遷移したことを「知ります」。いつ遷移したかはアナライザにはわからないので、図5のように、次のサンプルに遷移ポイントが配置されます。このため、実際に遷移が発生した時点とアナライザによって遷移が表示された時点には、不明確なところがあります。

この不明確さのワーストケースは1サンプリング周期であり、前のサンプリング・ポイントの直後に遷移が発生した場合です。

ただし、この方法では、分解能と全捕捉時間の間にはトレードオフがあります。1つのサンプリング・ポイントに1つのメモリが使用されるということを忘れないでください。このため、分解能が高いほど(サンプリング・レートが高速であるほど)、捕捉ウィンドウの幅は短くなります。

入力信号

サンプリング・ポイント

アナライザによる表示

サンプリング・ポイント間に遷移が発生

最大の不確かさ

アナライザは次のサンプリング・ポイントに遷移ポイントを配置

Page 8: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

8

トランジショナル・サンプリング

データ・バーストが存在する入力ラインでデータを捕捉する場合は(図6を参照)、サンプリング・レートを高分解能(例:4 ns)に調整して高速パルスを最初に捕捉する必要があります。この場合、4 K(4096サンプル)のメモリを備えたタイミング・アナライザは16.4 ms後にデータの収集を中止するため、2番目のデータ・バーストを捕捉することができません。

通常のデバッグ作業では、信号変化がない場合も、データをサンプリングして保存し続けます。このため、ロジック・アナライザのメモリを使い切ってしまい追加の情報は得られません。遷移がいつ発生したかわかっている場合や、立ち上がりまたは立ち下がりの遷移の場合は、この問題は解決できます。この情報が遷移のタイミングの基準となり、メモリが効率的に使用されます。

トランジショナル・タイミングでは、カウンタに加えて、タイミング・アナライザの入力に「遷移検出器」を

使用します。これにより、タイミング・アナライザは、最後の遷移からの経過時間と、遷移前のサンプルだけを保存します。この方法では、遷移当たりの使用メモリは2つだけで、入力に信号変化がない場合はメモリはまったく使用されません。このトランジショナル・タイミングは、Agilent 16800/16900シリーズ・ロジック・アナライザに採用されています。例では、2番目だけでなく、バースト当たりのパルス数に応じて、3番目、4番目、5番目のバーストも捕捉できます。同時に、4 nsの高いタイミング分解能を維持することもできます

(図7)。

トランジショナル・サンプリングを使用しない場合、「必要なメモリ長」は、捕捉したい時間をサンプリング周期(4 ns)で割ったものになります。

注記:これは、トランジショナル・タイミング手法の概念を説明したものです。

図6. 高分解能でのサンプリング

図7. 遷移検出器を併用したサンプリング

サンプリング・ポイント(すべてメモリに保存)

メモリが一杯

サンプリング・ポイント

メモリに保存されるサンプリング・ポイント

28個のメモリのみが必要(14個のサンプリング・ポイント+14個のタイム・インターバル)

Page 9: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

9

グリッチの捕捉

デジタル・システムのグリッチが問題になる場合があります。グリッチは、悪いタイミングで発生すると重大な影響を及ぼすという性質があります。36時間に1度発生し、システムの機能を低下させるグリッチを、どのようにして捕捉すればよいでしょうか? この場合も、タイミング・アナライザが最適です。Agilentのロジック・アナライザは、グリック捕捉/トリガ機能を備え、見つけ難いグリッチの問題を簡単に検出できます。

グリッチの原因としては、トレース間の容量性結合、電源リップル、数台のデバイスによる瞬時高電流などの多くのイベントが考えられます。タイミング・アナライザは、入力データをサンプリングし、サンプル間で発生する遷移を常時モニタできるので、グリッチをすぐに認識できます。タイミング・アナライザの場合、グリッチは、サンプル間で2度以上ロジックしきい値を超える遷移と定義されています。(図8)。

前述のように、アナライザは、サンプル間で発生するすべての単一の遷移を常時モニタしています。グリッチを認識するには、複数の遷移をすべてトラッキングし、グリッチとして表示するように、アナライザに

「教えます」。

グリッチの表示は便利な機能ですが、グリッチでトリガし、その前に発生したデータを表示できるようにするとさらに便利です。これにより、グリッジの原因を簡単に特定できます。この機能を用いることにより、必要な時(グリッチが発生した時)だけ、アナライザにデータを捕捉させることもできます。

このセクションの最初に説明した例について考えます。グリッチがラインの1つに発生することにより、定期的にクラッシュするシステムがあるとします。発生頻度は低いため、データを記録し続けると(十分な記憶容量があると仮定)、非常に大量の情報を分類することになります。もう1つの方法は、グリッチ・トリガ機能のないアナライザを使用し、[Run]ボタンを押して、グリッチが現れるまで待つことです。

残念ながら、上述の方法はいずれも実用的な方法ではありません。グリッジでトリガできれば、アナライザはグリッチを検出すると停止するので、その前に発生したデータをすべて捕捉できます。このようにすれば、システムがクラッシュしたときに、エラーの原因を記録することができます。

図8. グリッチ

アナライザの入力

グリッチ

サンプリング・ポイント

次のサンプルに現われたグリッチ

アナライザの表示

Page 10: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

10

タイミング・アナライザのトリガ

オシロスコープのユーザが覚えなけばならないもう1つの用語が、「トリガ」です。これもロジック・アナライザで用いられる用語ですが、通常は「トレース・ポイント」と呼ばれます。トリガの直後にトレースを開始するオシロスコープと違って、ロジック・アナライザはデータを連続的に捕捉し、トレース・ポイントを検出すると捕捉を中止します。このため、ロジック・アナライザは、トレース・ポイントより後の情報だけでなく、トレース・ポイントより前の情報も表示できます。

パターン・トリガタイミング・アナライザのトレースの設定は、オシロスコープのトリガ・レベルやスロープの設定とは少し異なります。多くのアナライザは、複数の入力ラインのハイ/ローのパターンでトリガします。図9のメニューを見てください。‘INT4’のチャネ

ル0、2、4、6がハイ(ロジック1)、チャネル1、3、5、7がロー(ロジック0)の場合に、データの捕捉を開始するように、アナライザを設定したときの条件です。図10は結果を示したもので、トレース・ポイントを表すラインが中央に表示されています。トレース・ポイント・チャネル0、2、4、6はすべてハイで、チャネル1、3、5、7はすべてローです。

簡単に設定できるように、ほとんどのアナライザのトリガ・ポイントは、2進法(1と0)、16進法、8進法、ASCII、10進法で設定することができます。例えば、前の例を16進法で設定するには、トリガ仕様は0101 0101ではなく、55になります。4、8、16、24、32ビット幅のバスをモニタする場合は、トリガ・ポイントに16進法を使用すると便利です。24ビット・バスを2進法で設定することがいかに大変か想像してみてください。

図9. ハイ/ローのパターンでトリガするように設定されたINT4

Page 11: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

11

図11. エッジ・トリガ型シフト・レジスタ

図10. 波形とトリガ・ポイント

エッジ・トリガエッジ・トリガは、オシロスコープと概念です。オシロスコープのトリガ・レベル・ノブの調整は、電圧コンパレータのレベルの設定と考えることができます。電圧コンパレータは、入力電圧がそのレベルを超えた場合にトリガするように、オシロスコープに指示します。タイミング・アナライザは、トリガ・レベルがロジックしきい値にプリセットされている点を除いて、本質的には同じエッジ・トリガ方式です。

どうしてタイミング・アナライザにはエッジ・トリガ機能が内蔵されているのでしょうか? 多くのロジック・デバイスはレベル依存型ですが、これらのデバイスのクロック/制御信号は通常はエッジ依存型です。エッジ・トリガ機能を使用すれば、デバイスにクロック信号が入力されたときに、データの捕捉を開始できます。

簡単な例として、データを正しくシフトしていないエッジ・トリガ型シフト・レジスタを考えてみましょう。この場合に問題となるのは、データ関連の問題でしょうか、それともクロック・エッジ関連の問題でしょうか? デバイスを検査するには、クロック信号が送られた時のデータを検証する必要があります(図11)。

クロック・エッジ(立ち上がりまたは立ち下がり)が発生した時にデータを捕捉して、シフト・レジスタの出力をすべて取り込むように、アナライザを設定できます。もちろん、この場合はトレース・ポイントを遅延させて、シフト・レジスタの伝搬遅延に対応する必要があります。

データ

クロック

出力3 出力2 出力1 出力0

Page 12: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

12

ステート・アナライザの基礎

本書の第1部では、ロジック・アナライザの2つの重要な機能のうちの1つ、タイミング・アナライザについて説明しました。次に、ロジック・アナライザのもう1つの重要な機能、ステート・アナライザについて説明します。

ステート・アナライザを一度も使用したことがない場合は、習得に時間がかかる非常に複雑な測定器だと思われるかもしれません。「ステート・アナライザは何のために役立つのだろうか?私が設計しているのはハードウェアなのだが」と思われるかもしれません。

実際には、多くのハードウェア・デザイナは、ソフトウェアやハードウェアのバグを特定する場合には特に、ステート・アナライザが非常に有用なツールであることに気が付きます。ステート・アナライザを使用すると、問題が表面化した場合に、ハードウェア・チームとソフトウェア・チームの間で「責任を押し付け」合うことはなくなります。さらに、ステート・アナライザがタイミング・アナライザより理解し難いということもありません。

ステート・アナライザを使用した方がよい場合ステート・アナライザを使用した方がよい場合を知りたければまず、「ステート」とは何かを理解する必要が

あります。ロジック回路の「ステート」とは、バスまたはラインのデータが有効な時のサンプルです。

図12に示す、簡単な“D”フリップ・フロップを考えます。“D”入力でのデータは、立ち上がりクロック・エッジが出現するまで有効ではありません。したがって、フリップ・フロップのステートは、立ち上がりクロック・エッジが出現する時に発生します。

これらのフリップ・フロップを8個並列に接続しているとします。8個すべてが同じクロック信号に接続されています(図13)。

立ち上がりエッジがクロック・ラインで発生すると、8個のフリップ・フロップすべてが“D”入力でデータを捕捉します。ここでも、クロック・ラインに立ち上がりエッジが出現するたびに、ステートが発生します。これら8本のラインはマイクロプロセッサ・バスに似ています。

これら8本のラインにステート・アナライザを接続して、クロック・ラインに立ち上がりエッジが出現した時にデータを収集するように指示すると、アナライザはそれだけを実行します。クロックがハイにならない限り、入力での波形変化がステート・アナライザによって捕捉されることはありません。

図12. Dフリップ・フロップ

図13. 同じクロック信号に接続された、並列接続の8個のDフリップ・フロップ

データ

クロック

クロック

データ有効=ステート

Page 13: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

13

図14. RAMのタイミング波形

以下では、タイミング ・アナライザとステート・アナライザの主な違いを明らかにします。タイミング・アナライザにはサンプリングを制御するためのクロックが内蔵されているので、被試験システムは非同期でサンプリングされます。ステート・アナライザは、システムからサンプリング・クロックを得るので、システムと同期してサンプリングされます。

経験則として、バス上で発生した「イベント」の確認にはステート・アナライザを、発生した「時期」の確認にはタイミング・アナライザを使用すると覚えておくとよいでしょう。通常は、ステート・アナライザはデータをリスト形式で表示し、タイミング・アナライザはデータを波形で表示します。ロジック・アナライザがステート・データを波形として、タイミング・データをリストとして表示できる場合は、データの解釈を誤らないように十分に気を付ける必要があります。

クロックについて

タイミング・アナライザでは、サンプリングは内部クロックの管理下にあります。このため非常に簡単に事は進みますが、マイクロプロセッサの世界では、システムに複数の「クロック」が存在している場合もあります。簡単な例で説明します。

RAMの特定のアドレスでトリガをかけ、そこに記憶されているデータを確認したいとします。さらに、システムがZilog Z80を採用していると仮定します。

ステート・アナライザを使ってZ80からのアドレスを捕捉するには、MREQラインがローになった時に捕捉する必要があります。しかし、データを捕捉するには、WRラインがローになった時(書込みサイクル)か、RDがローになった時(読取りサイクル)に、アナライザにサンプリングさせる必要があります。マイクロプロセッサの中には、同じライン上のデータやアドレスを多重化するものもあります。アナライザは、同じラインからの異なるクロックを使用して、情報を記録できなければなりません。

読取り/書込みサイクルでは、Z80はまずアドレスをアドレス・バスに出力します。次に、そのアドレスがメモリの読取り/書込みが有効であることを示すMREQをアサートします。最後に、読取りと書込みのいずれを実行するかに応じて、RDまたはWRラインをアサートします。WRラインは、バス上のデータが有効にならないとアサートされません。

したがって、タイミング・アナライザはデマルチプレクサとして機能して、適切な時にアドレスを捕捉し、同じライン上で発生しているデータを取り込みます。

クロック有効なアドレス

読取り動作

書込み動作

有効なデータ

データ出力

Page 14: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

14

ステート・アナライザのトリガ

ステート・アナライザには、タイミング・アナライザと同様に、保存するデータのクオリファイ機能があります。アドレス・バス上の特定のハイ/ローのパターンを検索する場合、パターンを検出したら記録を開始し、アナライザのメモリが一杯になるまで記録するように、アナライザに指示することができます。以下の例では、トリガ・ポイントをFFF03187

(16進数)に設定しました(図15)。ここでは、メモリFFF03187の内容を確認するために、データ・トリガを不定(XXXX)に設定します。

これにより、記録されているデータの 内 容 に 関 係 な く 、 ア ド レ スFFF03187でトリガします。

アナライザは、アドレスFFF03187とそれに続くすべてのステートを捕捉しました。アドレスFFF03187のデータは554103E7であり(図16)、情報はすべて16進数表記です。2進数表記の方が便利であれば、2進数で表示することもできます。プログラムの場合には、16進数をアセンブリ・コードにデコードした方が便利です。

バス上の情報をすべて16進数表記するように指定した場合は、図16のような表示になります。

図15. ステート・アナライザのトリガ設定

Page 15: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

15

これらの16進コードにはどのような意味があるのでしょうか? プロセッサの場合は、特定の16進文字で命令が記述されます。16進コードを熟知していれば、図16の16進リストを見れば、それがどのような命令を表しているかわかりますが、ほとんどの人には不可能です。このため、アナライザのメーカの多くは、逆アセンブラと呼ばれるソフトウェア・パッケージを用意しています。これらのパッケージの役割は、16進コードをアセンブリ・コードに変換して、読みやすくすることです。

例えば、図16には0000 41B0と000041B1が示されています。これらのコードをMotorola PowerQUICCのマニュアルで調べると、mem write 0x00命令であることがわかります。コードを1つ1つ調べなくても、逆アセンブラが代わりに実行してくれます。図17は、アセンブラ表示です。

図16. ステート・アナライザによって捕捉されたデータ

図17. 16進コードのアセンブリ・コードへの変換

Page 16: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

16

シーケンス・レベルについて

ステート・アナライザには、トリガ/保存を支援するための「シーケンス・レベル」があります。シーケンス・レベルを使用すると、単一のトリガ・ポイントより正確にデータを選択保存できます。これにより、データにウィンドウを適用して、不要な情報が保存されないようにできます。シーケンス・レベルは通常、以下のようになります。

1 find xxxx else on xxxx go to level x 2

then find xxxx else on xxxx go to level x 3

trigger on xxxx

シーケンス・レベルは、プログラムの特定のポイントからサブルーチンに入るのに便利です。

選択保存によるメモリと時間の節約シーケンス・レベルにより、いわゆる選択保存が可能になります。選択保存とは、大きな1つのまとまりの中から一部分だけを保存することです。例えば、与えられた数の2乗を計算するアセンブリ・ルーチンがあるとします。このルーチンで2乗が正しく計算されていない場合は、そのルーチンを捕捉するようにステート・アナライザに指示することができます。そのためにはまず、ルーチンの始まりを検出するようにアナライザに指示します。アナライザが開始アドレスを検出したら、終了アドレスを検索すると同時に、その間にあるものをすべて保存するように指示します。ルーチンの終わりが検出されたら、保存を中止する(ステートを保存しない)ようにアナライザに指示します。図18は、選択保存がどのように機能するか示したものです。

図18. 選択保存

トリガ機能の使用方法各シーケンス・レベルを最初から定義しなくても、既定義のトリガ機能を使用できます。「N番目のエッジの検出」や「‘n’回のイベントの検出」などのライブラリを使用すると、一般的なイベント/条件でトリガするように、アナライザを簡単に設定できます。この機能は、ステートとタイミングの両方のモードに対応しています。

独自のトリガ条件の作成に、既定義のトリガ機能を使用することもできます。機能を分解する場合は、リソース割当てフィールドや分岐オプションを使用できます。これらのフィールドを変更することにより、トリガ構造を変更できます。

カスタム・トリガを作成したり、トリガ・シーケンスにループやジャンプを作成するには、トリガ構造を変更しなければならない場合があります。

ステップ1:セクションの最初のラインの検索検索中は保存しない

ステップ2:目的の最初のラインが検出されたら、保存を開始。目的の最後のラインが検出されるまで、すべての保存を続行

ステップ3:最後のラインが検出されたら、保存を中止

捕捉したいセクション

Page 17: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

17

図19. 異なる領域にある症状と原因の例

これまでは、オシロスコープ、ステート/タイミング・アナライザ、それらのアプリケーションについて説明してきました。デジタル・ハードウェアの設計/保守を行っている場合は、それぞれのツールを活用することができます。このセクションでは、システムの障害をより迅速かつ効率的に特定するためのこれらのツールの使用方法について説明します。

症状と原因

デジタル回路のトラブルシューティングを行う場合は通常、「この症状の原因は何か?」自問自答する必要があります。障害の症状を特定することは非常に簡単かもしれませんが、原因を突き止めて問題を解決する必要

があります。原因と症状が異なる領域にあることがよくあります。例えば、メモリ制御ライン上にグリッチがあると、誤ったデータがメモリから読み取られたり、メモリに書き込まれる可能性があります。こうした症状(誤ったデータ)は、ステート・アナライザを使って疑わしいメモリ・アドレスでトリガをかけることにより、データ・ドメインで検出できます。しかし、原因はデータ・ドメインでは特定することができません。症状はタイム・ドメイン(例えば、I/Oライン上の不正ハンドシェーク信号)に、原因はデータ・ドメイン(例えば、誤ったソフトウェアI/Oルーチン)に存在することもあります。

デジタル・ツールの効率的な使用方法

症状 原因

原因症状

メモリの不正データ

ステート解析

ステート解析 ステート解析

制御ライン上の

グリッチ

オシロスコープ

誤った信号

ハンドシェーク

ソフトウェア

I/Oルーチン

Page 18: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

18

インタモジュール測定

2台以上の測定器が必要な測定は、「インタモジュール測定」と呼ばれます。インタモジュール測定では、すべての測定ツールが1台の測定器に統合されていること、すべての測定ツールが同時にデータを捕捉できることが求められます。図20に、16800シリーズ・ロジック・アナライザのシステム構成メニューと統合されたオシロスコープの表示を示します。このセットアップでは、ステート解析の不正データからオシロスコープ・ドメインのグリッチを見つけることができます。

クロスドメイン・トリガ

これまでの例では、問題の症状に対してモジュール(ステート/タイミング・アナライザ、オシロスコープ)をトリガする方法を説明しました。症状が発生し、適切なアナライザがトリガした後、原因をモニタするモジュールがデータの捕捉を開始する必要があります。これは、ひとつのモジュールから他のモジュールへのアーミングによって行います。そのためには、各モジュールがトリガ信号を送受信できなければなりません。これらのトリガ信号を送信するバスは、「インタモジュール・バス」またはIMBと呼ばれます(図20)。

図20. システム構成メニューとインタモジュール・バス

Page 19: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

19

図21. インタモジュール測定のセットアップ

図22. クロスドメイン測定

クロスドメインでの時間相関すべての測定モジュールのトリガに成功し、データの捕捉が完了すると、捕捉したデータを調べる必要があります。誰もがオシロスコープの波形表示に慣れ親しんでいるので、ステート/タイミング・アナライザで捕捉したデータの表示方法については前述しました。ドメイン間の相関関係を明らかにするには、両方のドメインのデータを1つの画面に表示するのが便利です。しかし、ステートとトレース・ポイント以外のタイミングの相関関係を明らかにするにはどうすればよいでしょうか? タイミング・アナライザがシステムと非同期の内部サンプリング・クロックを使用するのに対して、ステート・アナライザはターゲット・システムと同期してサンプリングしています。外部ステート・サンプルの時間間隔をカウントすれば、タイミング・アナ

ライザの波形とステート・アナライザのリストの相関関係に十分な時間情報が得られます

アプリケーション例図22からは、特定のメモリへのアクセスでトリガするために、ステート・アナライザが用いられています。チャネルのパラメトリック情報に加えて、複数のチャネルのタイミング情報を表示するために、タイミング・アナライザとオシロスコープの両方がステート・アナライザによってトリガされています。タイム・ドメイン(オシロスコープとタイミング・アナライザ)とデータ・ドメイン(ステート・アナライザ)を相関させるために、カーソルが用いられています。

Page 20: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

20

これまでは、オシロスコープとタイミング/ステート・アナライザの違いをいくつか説明してきました。これらの新しいツールを使用する前に、もう1つ、プロービング・システムについて説明しておく必要があります。

オシロスコープ・プローブは、ターゲット・システムへのアクセスを容易にすると同時に、信号の歪みを最小限に抑えるように設計されています。電圧レベルや立ち上がり時間などのパラメトリック情報を調べたいので、プローブが被試験回路に著しい負荷を与えないことが重要です。代表的なオシロスコープ・スコープのインピーダンスは、必要な帯域幅にもよりますが、1 MΩ(並列に10 pF)です。

これに対して、ロジック・アナライザ・プローブは、被試験信号の振幅

確度を犠牲にして、多くのチャネルをターゲット・システムに簡単に接続できるようになっています。ロジック・アナライザは2種類の電圧レベルの区別しかしないということを思い出してください。ロジック・アナライザは従来、信号検出回路を内蔵したアクティブ・プローブ・ポッドを採用することにより、チャネル当たり16 pFの容量になります。

抵抗負荷と容量性負荷

プローブのインピーダンスは測定にどのような影響を及ぼすでしょうか?抵抗負荷と容量性負荷は、信号歪みの2つの主要因です。抵抗負荷は、抵抗ディバイダ効果により、出力の振幅に影響を与えます。

ターゲット・システムへの接続方法

図23. 抵抗負荷と容量性負荷の影響

振幅 抵抗負荷誤差

容量性負荷誤差

時間

Page 21: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

21

容量性負荷は、エッジをなまらせ、被試験信号のタイミングに影響を与えます。10 kΩ抵抗の1 GHzオシロスコープ・プローブでプロービングしている場合でも、回路の性能に影響を与えるほど、抵抗負荷による振幅誤差は重大ではありません。実際に、ロジック・ファミリの多くは、10%程度の振幅誤差で正確に動作することができます。これらのデジタルICは通常、数百Ω未満の低い出力インピーダンス(代表値)を持っているので、プローブのチップ抵抗を使用して、数kΩの出力インピーダンスを測定できます。

新しいデザインではクロックが高速化しているため、プローブの容量性負荷がより重要になります。こうしたクロック速度の高速化により、回路は数nsのタイミング誤差でも影響を受けやすくなっています。一方、基本的なタイミング誤差に対するイミュニティは、回路のクロック速度によって制限されます。与えられた負荷をドライブするCMOS回路は、より高速のクロック速度でも正しく動作しますが、プローブによる余分の容量性負荷により、予期せぬタイミング問題が発生する可能性があります。

表1. プローブのキャパシタンスによる、CMOSのゲート遅延の増加

キャパシタンス 標準的なCMOSのデルタT 高速CMOSのデルタT

15 pF 25 ns 2.5 ns

8 pF 13 ns 1.3 ns

2 pF 3 ns 0.3 ns

Page 22: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/logic

22

プロービング・ソリューション

デバッグのためのデジタル・システムへの物理的な接続は、信頼性が高く、正確なデータをロジック・アナライザに送るために便利で、デバッグするターゲット・システムへの影響が最小限である必要があります。Agilentは、ターゲット・システムに接続するためのプローブやアクセサリを豊富に取り揃えています。

一般的なプロービング・ソリューションは、ケーブル当たり16個のチャネルを備えたパッシブ・プローブです。各チャネルの両端は、100 kΩ

(並列に8 pF)で終端されています。パッシブ・プローブとオシロスコープ・プローブを電気的に比較できます。パッシブ・プロービング・システムの利点は、小型で信頼性が高いことに加えて、ターゲット・システムへの接続ポイントでプローブを終端できる点です。このため、より大きなアクティブ・ポッドと被試験回路を結ぶワイヤに起因する浮遊容量の増加を抑えることができます。その結果、被試験回路の負荷容量は、これまでのプロービング・システムでは16 pFでしたが、8 pFになっています。

解析プローブとその他のアクセサリステート・アナライザをマイクロプロセッサ・システムに接続する場合は、メカニカル接続やクロック選択の点である程度の労力を要します。バス上のデータやアドレスが有効な時に、ステート・アナライザにクロック信号を送る必要があります。マイクロプロセッサによっては、外部回路を使用していくつかの信号をデコードし、ステート・アナライザ用のクロックを作成する必要があります。解析プローブは、ターゲット・システムへの信頼性の高い正確な接続をすばやく実現するだけでなく、クロック方式やデマルチプレックス方式などの、システムの動作を正確に捕捉するために必要な機能を備えています。

一部のマイクロプロセッサはメモリから情報をプリフェッチしますが、実行されない場合もあります。解析プローブは、プリフェッチ情報と実行情報を区別することもできます。さらに、前述のように、解析プローブには通常、16進情報をマイクロプロセッサのニーモニックにデコードするための逆アセンブラが付属しています。

図24. 解析プローブ

Page 23: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

23

このアプリケーション・ノートでは、ロジック・アナライザとは何か、またどのような機能を備えているかについて説明しました。ほとんどのアナライザはタイミング・アナライザとステート・アナライザの2つの主要機能から構成されているため、それらを個別に説明しましたが、両方を組み合わせることによって、デジタル・デザイナに最適な高性能ツールが実現します。

タイミング・アナライザはオシロスコープとよく似ていますが、バス構造や多くのラインを扱うアプリケーションに適しています。また、ライン間のパターンまたはグリッチでトリガをかけることもできます。

多くの場合、ステート・アナライザはソフトウェア・ツールと考えられています。しかし実際には、ハードウェアの領域で、さまざまなアプリケーションに使用されています。被試験システムからクロックを得るので、システムが検出した時に、システムのクロックでデータを取り込むことができます。

こうした基本的な知識を身につけておけば、ロジック・アナライザを有効に活用でき、開発期間やトラブルシューティングの時間が短縮できます。

Agilentの関連カタログ

● 『16800シリーズ・ポータブル・ロジック・アナライザ』Data sheet、5989-5063JAJP

● 『16900シリーズ ロジック解析システム・メインフレーム』Data sheet、5989-0421JAJP

これらのカタログについては、計測お客様窓口までお問い合わせになるか、以下のWebサイトをご覧ください。www.agilent.co.jp/find/logic

まとめ

Page 24: 使いやすいロジック・ アナライザliterature.cdn.keysight.com/litweb/pdf/5968-8291JAJP.pdf3 オシロスコープか ロジック・ アナライザか オシロスコープを使用するかロジッ

www.agilent.co.jp/find/emailupdates-Japan

Agilentからの最新情報を記載した電子メールを無料でお送りします。

www.agilent.co.jp/find/agilentdirect

測定器ソリューションを迅速に選択して、使用できます。

www.agilent.co.jp/find/openAgilentは、テスト・システムの接続とプログラミングのプロセスを簡素化することにより、電子製品の設計、検証、製造に携わるエンジニアを支援します。Agilentの広範囲のシステム対応測定器、オープン・インダストリ・ソフトウェア、PC標準I/O、ワールドワイドのサポートは、テスト・システムの開発を加速します。

電子計測UPDATE確実なサービス

修理/校正サービスは機器を新品同様の動作状態に戻し、お約束した納期に短期間で返却いたします。Agilentでは、Agilent機器を十分活用できるように、さまざまなサポートを提供しています。またAgilentの技術者による最新の工場校正、自動修理診断、純正部品を使用したサービスを受けられます。さらに、必要に応じて、工場の専門家にもアクセスできます。これは測定に対する最高の信頼性を意味し、不安感を抱くことなく、Agilentの修理/校正サービスを利用できます。

Agilentでは、デザイン/システム・インテグレーション/プロジェクト管理に加えて、最初のスタートアップ・アシスタンス、オンサイト教育/トレーニングなどの、機器に対するさまざまなテスト/測定サービスを提供しています。

修理/校正サービスの詳細情報については、以下をご覧下さい。

www.agilent.co.jp/find/removealldoubt

March 7, 2007

5968-8291JAJP0000-00DEP

アジレント・テクノロジー株式会社本社〒192-8510 東京都八王子市高倉町9-1

計測お客様窓口受付時間 9:00-19:00(土・日・祭日を除く)FAX、E-mail、Webは24時間受け付けています。

TEL■■ 0120-421-345(042-656-7832)

FAX■■ 0120-421-678(042-656-7840)

Email [email protected]

電子計測ホームページwww.agilent.co.jp

● 記載事項は変更になる場合があります。ご発注の際はご確認ください。

Copyright 2007アジレント・テクノロジー株式会社

はLXI Consortiumの米国登録商標です。