(57)【特許請求の範囲】
【請求項１】
半導体回路の内部信号群を観測する内部信号観測回路であって、入力する選択信号に基づいて前記半導体回路の内部信号群の中から観測対象の内部信号を選択し、選択した観測対象の内部信号の状態を観測する内部信号観測回路に対する内部信号観測方法において、
前記半導体回路に所定の時系列試験パターンを複数回繰り返し付与するとともに、前記所定の時系列試験パターンを１回付与する度に観測対象の内部信号を切り替える選択信号を前記内部信号観測回路に付与し、
前記内部信号観測回路が、付与された選択信号を入力して、前記所定の時系列試験パターンが付与されている期間に観測する観測対象の内部信号を選択し、
前記内部信号観測回路が、選択された観測対象の内部信号の状態を出力し、
前記内部信号観測回路から出力された観測対象の内部信号の状態を記憶装置に順次記憶し、
前記記憶装置に順次記憶された複数の観測対象の内部信号の状態を前記所定の時系列試験パターンの１回分の時間軸に対応付けて表示装置に表示することを特徴とする内部信号観測方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＬＳＩ等の複数要素搭載回路のテスト、検証、デバックに関するものである。
【０００２】
【従来の技術】
図１１は、第１の従来例として、特開昭６４−４１２５７号公報に開示されている内部回路観測部の構成を示す図である。これは入力端子１５と出力端子１６を持つ論理回路の内部信号１９を、選択回路２０を使って選択し、選択信号１８で指定した信号を選択回路の出力１７から取り出して観測するものである。
【０００３】
同様に図１２は、第２の従来例として、特開平２−３１０４８２号公報に開示されている内部回路観測部の構成を示す図である。これは観測したいＬＩＳ等の内部の信号をセレクタ回路２１経由でセレクタ回路２４へ入力し、これらの信号のうち観測したい信号を、デコード回路２５へ入力されている選択信号２３によって切替えセレクタ回路２４から出力されるセレクタ回路出力２２から取り出して観測するものである。
【０００４】
従来の内部信号の観測方法は上記のように構成されているので、観測対象を切替えるために切替え信号を入力する必要があり、この切替え信号に対してもＬＳＩの端子を使ってしまい、限られた端子数内で任意の要素部分を観測するには制限があるという課題があった。
【０００５】
この発明は、かかる課題を解決するためになされたもので、内部信号の観測のために必要とする信号の端子を減らして、かつ任意の要素部分を観測する方法を得ることを目的とする。
【０００６】
【課題を解決するための手段】
この発明に係る内部信号観測回路は、信号観測対象の半導体内に搭載されて、観測対象の選択箇所を指定する外部からのシリアル入力を記憶するシフトレジスタと、
このシフトレジスタからの複数信号に基づき、必要によりデコードして観測対象の信号群から選択出力するセレクタとを備えた。
【０００７】
また更に、シフトレジスタとして、半導体内に搭載されるＴＡＰコントローラを使用するようにした。
【０００８】
この発明に係る内部信号観測方法は、観測対象を指定する外部からのシリアル入力を記憶するシフトレジスタと、このシフトレジスタからの複数信号に基づき上記観測対象の信号群から選択出力するセレクタとを備えて、
セレクタにより選択された観測対象に対して、選択された期間に、同一の時系列変化信号パターンを所定回繰り返すようにした。
【０００９】
【発明の実施の形態】
実施の形態１．
図１はこの発明の実施の形態１における内部信号観測装置の構成図である。図において、１はこの発明で内部信号を観測しようとする対象のＬＳＩである。２は新規な要素である選択信号をシリアルに入力するためのシフトレジスタである。３はパラレルに再現された観測信号選択コードを、実際の内部信号の１ビットづつに対応した選択信号に変換するためのデコード回路である。シフトレジスタ２から出力される信号が、すでに内部信号の１ビットごとに対応した選択信号になっている場合は、特にこの回路を必要としない。
４は選択信号に対応して実際の内部信号を切替えるセレクタ回路であり、５は対象となるＬＳＩ本来の論理回路である。セレクタ回路４の入力は予め決めておいたこの論理回路５内部の配線に接続されている。２６はセレクタ回路の出力で選択された観測信号を出力する。
【００１０】
次に、この装置の動作を説明する。
外部からのシリアル入力端子７から、シフトレジスタ２のクロック６に同期して内部信号選択コードを１ビットづつ入力する。１ビットづつ入力された内部信号選択コードは、デコード回路３において、対象となるＬＳＩに設定した内部信号１つ１つに対応した内部信号の選択信号にデコードされる。逆にいえば、所望の選択信号に順になるようにシリアル信号列を設定して入力していく。
この信号はセレクタ回路４に入力され、この信号に従って、予めセレクタ回路に入力されている対象論理回路５の内部信号を選択して、選択された信号が観測信号出力２６から出力される。
【００１１】
このように、図１に示す内部信号の選択信号をシリアル入力し、シフトレジスタでデコードするようにしたので、選択信号のための信号線を、シフトクロックと選択信号のシリアル入力の２つに減らすことができる。しかし、ここでいうクロック６は、ＬＳＩ論理回路５の動作を進めるクロックとは異なり、セレクタ回路４の選択で切換が必要なときのみ入力をするものである。この切換クロック６の入力は、以降の実施の形態においても同様である。
【００１２】
実施の形態２．
シフトレジスタとして特別の要素を用いて、選択信号として別のものを用意しないですむようにした場合を説明する。
図２は、実施の形態１のシフトレジスタ２を、ＩＥＥＥ  １１９４．１  ＪＴＡＧ準処のＴＡＰコントローラ１１とセル１０（レジスタ群）に置換えたものである。シフトレジスタ２にクロックに同期して１ビットづつ切替え信号を入力する代りに、ＪＴＡＧの仕様にしたがってＴＡＰコントローラ１１を制御してセル１０に選択信号をセットする。
【００１３】
まず、ＪＴＡＧそのものの構成と動作について説明する。
図３は、図２のＴＡＰコントローラの動作を説明するための詳細構成図である。また図４は図３のＴＡＰコントローラの状態遷移図である。
図３において、ＴＡＰコントローラへの入出力の５信号は以下の通りである。
ＴＣＬＫ…クロック（ステートマシンの動作クロック、データのシフトクロックとなる）
ＴＭＳ…ステートマシンのコントロール
ＴＤＩ…データの入力（シリアル）
ＴＤＯ…データの出力（シリアル）
ｎＴＲＳＴ…リセット（オプション）
ＴＡＰコントローラ１１とセル１０は、詳細にはＴＡＰコントローラ・コア１１１と、インストラクションレジスタ１１２と、各種のデータレジスタ１１３などで構成されており、ＴＡＰコントローラ・コア１１１のステートマシンを使い、インストラクションレジスタ１１２、各種データレジスタ１１３にデータをセットしたり読み出したりする。
インストラクションレジスタ１１２はセットされる命令に従って、データレジスタ１１３の選択、および、動作をコントロールする。また、入力データを次に伝えるために、バイパスレジスタがある。
【００１４】
次に上述構成のＴＡＰコントローラ１１自体の動作を説明する。
まず、リセットであるが、リセットはｎＴＲＳＴ端子をＬｏｗにすることによってもできるが、ｎＴＲＳＴ端子はオプションのため、ＴＭＳ＝１でＴＣＬＫに５クロック以上のクロックを加える。そうすると、ＴＥＳＴ＿ＬＯＧＩＣ＿ＲＥＳＥＴの状態に移行する。
即ち、図４の状態遷移図において、任意の状態からＴＭＳ＝１の矢印をたどって５コマ移動すると、このＴＥＳＴ＿ＬＯＧＩＣ＿ＲＥＳＥＴ  １３１になる。
ＴＥＳＴ＿ＬＯＧＩＣ＿ＲＥＳＥＴ  １３１の状態になったら、実際にＴＭＳをクロックごとにコントロールして任意の状態に移ることができる。
状態遷移の経路としては大きく２つあり、図４のＳＥＬＥＣＴ＿ＤＲ＿ＳＣＡＮ  １３２と、ＳＥＬＥＣＴ＿ＩＲ＿ＳＣＡＮ  １３３の左右の列である。右側がインストラクションレジスタへ命令をセットする動作で、左側がインストラクションレジスタの命令に従って、各データレジスタへデータをセットする動作である。ここではセットとしたが、レジスタに保持されているデータのセットと同時に実はシフト動作により出力される。
【００１５】
このデータの出し入れをする状態がそれぞれ図４のＳＨＩＦＴ＿ＩＲとＳＨＩＦＴ＿ＤＲで、それぞれインストラクションレジスタ、データレジスタのデータを１クロックごとにシフトする。シフトするデータはＴＤＩから入力し、ＴＤＯから出力される。
また、上記の各レジスタと接続される信号によるデータのやり取りは、ＣＡＰＴＵＲＥ＿ＩＲ／ＤＲフェーズ、ＵＰＤＡＴＥ＿ＩＲ／ＤＲフェーズで行われ、その動作は図５のＳＡＭＰＬＥ／ＰＲＥＬＯＡＤモード、または図６のＥＸＴＥＳＴモードのキャプチャ・フェーズ（Ａ）、シフト及びアップデータ・フェーズ（Ｂ）で示される。このように、インストラクションレジスタにセットされた命令、ＳＡＭＰＬＥ／ＰＲＥＬＯＡＤ、または、ＥＸＴＥＳＴの違いによって異なる。
本実施の形態においてはＪＴＡＧで標準とされている目的のための実行を行うデータレジスタに対して、標準の目的以外の定義をする。従がって、このための命令も独自に定義する。図２のセル１０は、このようにデータ・レジスタ１１３で詳細が示される。
【００１６】
本実施の形態に対する適用は即ち以下の通りとなる。
インストラクション・レジスタ１１２に、追加したセル１０としてのデータ・レジスタの１つを指定するインストラクションを書き込み、このデータ・レジスタ（セル１０）に選択信号を書き込む。すると、このセル１０からの並列出力がデコード回路３に伝えられて、以後は実施の形態１と同様に動作する。
なお、ＴＤＩから入力された選択信号は、ＳＨＩＦＴ＿ＤＲ動作において、ＴＡＰのＪＴＡＧ  ５信号の１つであるＴＣＬＫに同期して１ビットづつデータレジスタ（セル１０）にセットされる。セットができたらＵＰＤＡＴＥ＿ＤＲ動作において、セットされた信号がデータレジスタ（セル１０）からデコード回路３へ与えられる。
【００１７】
ＴＡＰコントローラは、状態遷移をたどって移動するステートマシンになっているので、この状態をＩＥＥＥ  １１９４．１  ＪＡＴＧの制御方法にしたがって制御することにより、セル１０（データ・レジスタ１１３）に値を設定して、その値でコード回路３に内部信号選択コードを送ることができる。ＴＡＰコントローラを内部に埋め込むことでシリアル入力を別に準備する必要がなくなる。
その他の部分は実施の形態１と同様にして、セレクタ回路４の出力２６から内部信号を取出すことができる。この構成は実施の形態１の構成と比較して、選択信号を入力するための信号線が多く、また、設定手順も複雑であるが、対象となるＬＳＩがバウンダリスキャンテストなどをサポートするために、もともとＪＴＡＧ信号１２を持っている場合には、ＴＡＰコントローラに選択信号を入力するための機能を付加するだけで、ＪＴＡＧ信号線１２自体は共用して、実質的に選択信号入力のために新たなシリアル入力端子７を設ける必要がない。
【００１８】
上記の構成は、入力信号端子数を少なくするものである。一方、図１、図２のいずれの構成においても、出力端子はセレクタ回路４で選択された出力端子２６の１本のみである。
通常は、試験項目毎に内部の対象部分が異なり、対応して試験の時系列パターンが異なる。しかし、発想を変えて、内部対象部分のみを切換えて、時系列試験パターンを同一とし、かつ外部の観測装置で切換えた内部対象を縦軸に表示し、横軸に時系列パターンを表示すれば、同一時系列試験パターンに対する内部の内部対象部分の並列表示が出来ることになる。
具体的には、図１または図２の構成で、時系列試験パターンを１回終える毎に、セレクタ回路４の選択する内部対象を順切り替え、同じ入力の時系列試験パターンを何度も実行する。当然セレクタ回路の選択毎にリセットを与え、内部状態をクリアする。
【００１９】
外部では、この出力結果を記憶しておいて、たとえば縦軸にそれぞれの出力を入力パターンが重なり合うように合成すれば、あたかも同時に内部信号を取出して観測したかのように表示できる。
内部状態を記憶するフリップフロップの状態を一定の値に初期化できれば、論理回路の動作には再現性があるので、この同一時系列試験パターンの繰返し印加は有効である。一般的に、リセットにより内部状態を一定の値に初期化できるように設計されているのが普通だが、初期化の必要がなく初期化されない部分が有ったとしても、その部分の期待は特定する必要がないので、依然としてこの方法は有効である。
【００２０】
図７は、観測信号の出力端子の数よりも多くの内部信号を、あたかも同時に出力したかのように波形を、外部の記憶機能を持つ表示装置で表示した例を示す図である。これはリセット信号と、それに続く対象ＬＳＩ  １への時系列変化信号パターンを同じにして、内部信号の選択を切換えながらその観測信号を記録し、さらに入力信号に対応づけて並列に並べて表示したものである。
図７において、（Ａ）の入力Ａ、入力Ｂ（Ｂ）の出力Ａ、出力Ｂは、一般的なＬＳＩの動作入力信号である図１等における対象ＬＳＩの入出力信号９の例を示している。一方、図７（Ｃ）は観測対象となるＬＳＩの論理回路５からセレクタ回路４に出力される信号であり、かつ図７の例ではセレクタ回路の出力２６に得られる、リセットに同期して切り換えられる論理回路５の選択後の出力である。図７（Ｃ）では、リセットに同期して１回目と２回目の出力２６を示している。従って本実施の形態では、リセットを同期信号として同一入力パターンを与えて外部観測を行えば、図７（Ｃ）の内部観測波形が得られて、論理回路５の内部における動作関係を知ることができる。
【００２１】
図８は、セレクタ回路４で選択した内部信号の出力をシフトレジスタ２８で受け、このレジスタに一旦記憶した後、シフトクロックに同期して１ビットづつ出力するようにしたものである。出力する信号が複数ある場合にはシステムクロックを出力ビット数倍したシフトクロックを入力する。
【００２２】
図の構成は、複数のセレクタ回路４の出力を出力用のシフトレジスタ２８に一旦記憶し、さらに、シフトクロック端子１３から入力されるシフトクロックに同期して１ビットづつ取出して、観測信号出力のための信号線を少なくするようにしたものである。この場合、システムクロックごとにすべてのセレクタ回路４の出力信号を観測するためにはシステムクロックよりも出力ビット数倍以上高いクロックを出力用シフトレジスタ２８のシフトクロックとして与えなくてはならない。クロック分周回路１４４はこの作用を行うもので、シフトクロックをビット数以上で分周したクロックをシステムクロックとして対象となる論理回路に加えれば出力用シフトレジスタ２８のシフトクロックのための信号線とシステムクロックの信号線を共有できるので、信号線の数を減らすことができる。
【００２３】
実施の形態３．
実施の形態２で、さらに出力側のデータ制御も行わせる場合を説明する。
図９（Ａ）は、図８のシフトレジスタ２８の代りに、ＩＥＥＥ  １１９４．１ＪＴＡＧ準拠のＴＡＰコントローラ１１によって制御されるセル１４を設けた構成である。この場合は、観測する内部信号の選択出力が一旦セル１４に記憶され、ＴＡＰコントローラを制御してＪＴＡＧの出力端子ＴＤＯから外部へ出力される。
このように、観測信号出力用の端子の代りにＪＴＡＧ信号の出力ＴＤＯを使うことができるので、さらに内部信号観測のために使用する端子の数を減らすことができる。この場合、やはりＴＡＰコントローラに出力用のセル１４を制御するための機能を追加する必要がある。
【００２４】
図９（Ｂ）はＴＡＰコントローラの動作を説明するタイミングチャートである。なお、セル１４は、図３で詳細構成を示したＴＡＰコントローラ１１のデータ・レジスタ１１３の一部として設定したセル１０の代わりに、または同様に追加したデータ・レジスタである。
図９（ａ）は、被測定対象である論理回路５のシステムクロックを表し、このシステムクロックの変化に同期して、論理回路５の内部信号は図９（ｂ）または（ｃ）に示されるように変化する。これらの信号はシステムクロックが変化するまでの間に図３に示されるＴＡＰコントローラ１１を制御して、セル１４にキャプチャーする。即ちセル１０へセットするのと逆の動作をする。また、これらＴＡＰコントローラ１１の制御は、既に述べたようにＪＴＡＧのＴＡＰ信号１２を使って内部のステートマシンを動作させることによって行う。
こうすれば、観測出力をＪＴＡＧ信号を制御することでＪＴＡＧ信号端子から出力することができるので、特別に内部信号の観測出力のための端子を新たに設ける必要がない。
【００２５】
同じく図１０は、ＪＴＡＧのクロック信号ＴＣＫをシステムクロックと同期させた場合の構成図である。図は、セレクタ回路４の観測出力が１ビットの場合を示している。複数のビットがある場合にはシステムクロックはＪＴＡＧのクロックをビット数倍以上に分周する。図１０における観測信号出力用のセルは、特別なセルで、Ｓｈｉｆｔ／ＤＲと同時に、観測信号入力をキャプチャーする。
【００２６】
図の構成は、さらにＩＥＥＥ  １１９４．１  ＪＴＡＧのクロックＴＣＬＫとシステムクロックを同期させて、早いクロックで動作させているときでもＪＴＡＧの信号を使って内部信号を出力できるようにしたものである。一般にＬＳＩを構成する素子の最高のクロック動作周波数は共通である。従がって、このクロックで内部信号を観測するためにＴＡＰコントローラ１１を動作させると、内部対象部分の動作用に多くのクロックを使ってしまい、結果として論理回路の最高クロック周波数は、ＪＴＡＧを使って内部信号を１回取出すのに必要なクロック数分の１になってしまう。この実施の形態では、このような不具合を解決するために、ＪＴＡＧの使用を一部拡張して、Ｓｈｉｆｔ／ＤＲを実行すると同時にデータをキャプチャーする特別なセルを使う。
こうすれば、ＴＡＰコントローラ１１のステートマシンをＳｈｉｆｔ／ＤＲのフェーズに保つことができ、あたかも図８で示した単純なシフトレジスタの状態となり、ＪＴＡＧのクロック信号ＴＣＫに一つのクロックを加える毎に一つの観測出力信号を出力できる。
こうして、観測信号出力をキャプチャーさせることにより、ＪＴＡＧの操作に起因するシステムクロック周波数の低下を低減することができる。
【００２７】
【発明の効果】
以上のように本発明は、内部にシフトレジスタ相当とセレクタとを備えたので端子数を少なくして多くの内部動作を観察できる効果がある。
【００２８】
また更に、ＪＴＡＧのＴＡＰコントローラを内部観測用にも転用するようにしたので、観測のための端子数を更に減らせる効果がある。
【図面の簡単な説明】
【図１】  本発明の実施の形態１における内部信号観測装置の構成図である。
【図２】  本発明の実施の形態２におけるＪＴＡＧのＴＡＰコントローラを用いた構成図である。
【図３】  ＴＡＰコントローラの動作を説明するための詳細構成図である。
【図４】  ＴＡＰコントローラの動作を説明するための状態遷移図である。
【図５】  ＴＡＰコントローラのＳＡＭＰＬＥ／ＰＲＥＬＯＡＤモード動作説明図である。
【図６】  ＴＡＰコントローラのＥＸＴＥＳＴモード動作説明図である。
【図７】  実施の形態２における同一の時系列変化信号パターンを与えた入出力信号図である。
【図８】  実施の形態２における他の内部信号観測装置の構成図である。
【図９】  実施の形態３における内部信号観測装置の構成図である。
【図１０】  実施の形態３における他の内部信号観測装置の構成図である。
【図１１】  第１の従来例における内部回路観測部の構成図である。
【図１２】  第２の従来例における内部回路観測部の構成図である。
【符号の説明】
１  内部信号の観測対象となるＬＳＩ、２  シフトレジスタ、３  デコード回路、４  セレクタ回路、５  観測対象となるＬＳＩの論理回路、６  シフトレジスタ２のクロック、７  シフトレジスタ２のシリアル入力、９  対象ＬＳＩの入出力信号、１０  選択信号設定用のセル、１１  ＴＡＰコントローラ、１２  ＴＡＰ  ５信号、１３  システムクロック入力、１４  セル、１５  制御回路入力、１６  制御回路出力、１７  選択回路出力、１８  選択信号入力、１９  内部信号、２０  選択回路、２１  セレクタ回路入力、２２  セレクタ回路出力、２３  選択信号入力、２４  セレクタ回路、２５  デコード回路、２６  セレクタ回路の出力、２７  シフトレジスタの出力、２８  観測信号出力用シフトレジスタ、１１１  ＴＡＰコントローラ・コア、１１２  インストラクション・レジスタ、１１３  データ・レジスタ、１１４  セレクタ、１４４  クロック分周回路。
【図１】
0004489870.tif 000002
【図２】
0004489870.tif 000003
【図３】
0004489870.tif 000004
【図４】
0004489870.tif 000005
【図５】
0004489870.tif 000006
【図６】
0004489870.tif 000007
【図７】
0004489870.tif 000008
【図９】
0004489870.tif 000009
【図１０】
0004489870.tif 000010
【図１１】
0004489870.tif 000011
【図１２】
0004489870.tif 000012
【図８】
0004489870.tif 000013