(57)【要約】  電子デバイスであって、クロック信号に同期して動作する複数の回路と、複数の回路から出力された信号のデータ値をクロック信号に同期して取得して次のクロック信号が入力されるまで保持し、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる複数のフリップフロップと、複数のフリップフロップのそれぞれのディセーブル端子に対して、回路を診断すべきタイミングにおいてホールド信号を出力するタイミング制御部と、複数のフリップフロップのそれぞれに対応して設けられ、対応するフリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線とを備える電子デバイスを提供する。
2009028034.tif 000002
【特許請求の範囲】
【請求項１】
電子デバイスであって、
クロック信号に同期して動作する複数の回路と、
前記複数の回路から出力された信号のデータ値を前記クロック信号に同期して取得して次のクロック信号が入力されるまで保持し、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる複数のフリップフロップと、
前記複数のフリップフロップのそれぞれの前記ディセーブル端子に対して、前記回路を診断すべきタイミングにおいてホールド信号を出力するタイミング制御部と、
前記複数のフリップフロップのそれぞれに対応して設けられ、対応する前記フリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線と
を備える電子デバイス。
【請求項２】
前記タイミング制御部は、前記複数のフリップフロップのうち診断対象のデータ値を取得する前記フリップフロップに対して、前記ホールド信号を出力し、
前記ホールド信号が与えられた前記フリップフロップに対応する前記診断用配線を選択して、当該フリップフロップが前記回路を診断すべきタイミングにおいて保持したデータ値を外部に出力する出力部を更に備える
請求項１に記載の電子デバイス。
【請求項３】
電子デバイスであって、
クロック信号に同期して動作する複数の回路と、
前記複数の回路から出力された信号のデータ値を前記クロック信号に同期して取得して次のクロック信号が入力されるまで保持する複数のフリップフロップと、
前記複数のフリップフロップに対応して設けられ、対応する前記フリップフロップに入力される前記クロック信号をマスクする複数のマスク部と、
診断対象の前記回路に対応する前記マスク部に対して、前記回路を診断すべきタイミングにおいてマスク信号を出力して、診断対象の前記回路に対応する前記フリップフロップに入力される前記クロック信号をマスクさせるタイミング制御部と、
前記複数のフリップフロップのそれぞれに対応して設けられ、対応する前記フリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線と
を備える電子デバイス。
【請求項４】
電子デバイスを診断する診断装置であって、
前記電子デバイスを診断するための入力信号を当該電子デバイスに与える信号供給部と、
前記入力信号に応じて前記電子デバイスから出力された診断用データに基づき、当該電子デバイスの良否を判定する判定部とを備え、
前記電子デバイスは、
クロック信号に同期して動作する複数の回路と、
前記複数の回路から出力された信号のデータ値を前記クロック信号に同期して取得して次のクロック信号が入力されるまで保持し、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる複数のフリップフロップと、
前記複数のフリップフロップのそれぞれの前記ディセーブル端子に対して、前記回路を診断すべきタイミングにおいてホールド信号を出力してクロックディセーブル状態とするタイミング制御部と、
前記複数のフリップフロップのそれぞれに対応して設けられ、対応する前記フリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線と
を有する診断装置。
【請求項５】
電子デバイスを診断する診断装置であって、
前記電子デバイスを診断するための入力信号を当該電子デバイスに与える信号供給部と、
前記入力信号に応じて前記電子デバイスから出力された診断用データに基づき、当該電子デバイスの良否を判定する判定部とを備え、
前記電子デバイスは、
クロック信号に同期して動作する複数の回路と、
前記複数の回路から出力された信号のデータ値を前記クロック信号に同期して取得して次のクロック信号が入力されるまで保持する複数のフリップフロップと、
前記複数のフリップフロップに対応して設けられ、対応する前記フリップフロップに入力される前記クロック信号をマスクする複数のマスク部と、
診断対象の前記回路に対応する前記マスク部に対して、前記回路を診断すべきタイミングにおいてマスク信号を出力して、診断対象の前記回路に対応する前記フリップフロップに入力される前記クロック信号をマスクさせるタイミング制御部と、
前記複数のフリップフロップのそれぞれに対応して設けられ、対応する前記フリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線と
を有する診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子デバイスおよび診断装置に関する。本発明は、特に、クロック信号に同期して動作する電子デバイスおよびこれを診断する診断装置に関する。
【背景技術】
【０００２】
複数の回路を備える電子デバイスを動作させ、任意タイミングでこれら複数の回路のうち対象回路から出力値を取り込み、取り込んだ出力値に基づき対象回路の良否を判断する診断装置が知られている（例えば、特許文献１参照。）。このような診断装置は、診断すべきタイミングにおいて電子デバイス内のクロック信号の出力を停止させ、クロック信号の出力を停止させた状態で診断対象の回路から定常状態の出力値を読み出す。そして、診断装置は、出力値の読み出しを終えた後にクロック信号の出力を開始させる。【０００３】
また、クロック周波数がＧＨｚ帯域で動作するＬＳＩにおいて、他ＬＳＩとの授受データのタイミングを最適マージン条件に調整するタイミング調整回路を備える電子デバイスがある。このような電子デバイスを診断する診断装置は、調整時間を順次に変更しながら最適な条件でデータを授受できるタイミングを探し出す。
【特許文献１】特開平１０−９６７５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、電子デバイスは、クロック信号の出力を一旦停止した後に再開した場合、内部のクロックバッファおよびフリップフロップ等により消費される電力が大きく変動する。従って、電子デバイスは、クロック信号をオン／オフすることにより電源電流に大きな変動が生じて、電源電圧が大きく上下に変動する。【０００５】
このため、クロック信号の出力を停止させた状態で診断対象の回路から出力値を読み出して診断する方式の場合、診断装置は、電子デバイスの電源電圧を例えば数ミリ秒の期間、大きく上下に変動させ、デバイス温度の急激な上下変動を生じさせてしまう。従って、診断装置は、実動作時と異なる過渡的な電源電圧および温度条件で動作させてしまうので、安定した条件で診断することができなかった。また、他デバイスとのデータ授受を保証するための入出力バッファ等のマージン時間を探し出す場合も、クロック信号の出力を停止させた状態で診断対象の回路から出力値を読み出すと、診断装置は、電子デバイスを実動作時と異なる条件で動作させてしまうので、正確なマージン時間を探し出すことが困難であった。【０００６】
さらに、電子デバイスは、クロック信号の出力を停止した時および再開した時に電源負荷が大きく変化する。従って、診断装置は、電子デバイスを複数回連続して診断する場合、電源負荷の変動が収束する数ミリ秒程度の待ち時間を、クロック信号を再開する毎に設定しなければならなかった。【０００７】
そこで本発明は、上記の課題を解決することのできる電子デバイスおよび診断装置を提供することを目的とする。この目的は請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の第１の形態においては、電子デバイスであって、クロック信号に同期して動作する複数の回路と、複数の回路から出力された信号のデータ値をクロック信号に同期して取得して次のクロック信号が入力されるまで保持し、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる複数のフリップフロップと、複数のフリップフロップのそれぞれのディセーブル端子に対して、回路を診断すべきタイミングにおいてホールド信号を出力するタイミング制御部と、複数のフリップフロップのそれぞれに対応して設けられ、対応するフリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線とを備える電子デバイスを提供する。【０００９】
本発明の第２の形態においては、電子デバイスであって、クロック信号に同期して動作する複数の回路と、複数の回路から出力された信号のデータ値をクロック信号に同期して取得して次のクロック信号が入力されるまで保持する複数のフリップフロップと、複数のフリップフロップに対応して設けられ、対応するフリップフロップに入力されるクロック信号をマスクする複数のマスク部と、診断対象の回路に対応するマスク部に対して、回路を診断すべきタイミングにおいてマスク信号を出力して、診断対象の回路に対応するフリップフロップに入力されるクロック信号をマスクさせるタイミング制御部と、複数のフリップフロップのそれぞれに対応して設けられ、対応するフリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線とを備える電子デバイスを提供する。【００１０】
本発明の第３の形態においては、電子デバイスを診断する診断装置であって、電子デバイスを診断するための入力信号を当該電子デバイスに与える信号供給部と、入力信号に応じて電子デバイスから出力された診断用データに基づき、当該電子デバイスの良否を判定する判定部とを備え、電子デバイスは、クロック信号に同期して動作する複数の回路と、複数の回路から出力された信号のデータ値をクロック信号に同期して取得して次のクロック信号が入力されるまで保持し、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる複数のフリップフロップと、複数のフリップフロップのそれぞれのディセーブル端子に対して、回路を診断すべきタイミングにおいてホールド信号を出力してクロックディセーブル状態とするタイミング制御部と、複数のフリップフロップのそれぞれに対応して設けられ、対応するフリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線とを有する診断装置を提供する。【００１１】
本発明の第４の形態においては、電子デバイスを診断する診断装置であって、電子デバイスを診断するための入力信号を当該電子デバイスに与える信号供給部と、入力信号に応じて電子デバイスから出力された診断用データに基づき、当該電子デバイスの良否を判定する判定部とを備え、電子デバイスは、クロック信号に同期して動作する複数の回路と、複数の回路から出力された信号のデータ値をクロック信号に同期して取得して次のクロック信号が入力されるまで保持する複数のフリップフロップと、複数のフリップフロップに対応して設けられ、対応するフリップフロップに入力されるクロック信号をマスクする複数のマスク部と、診断対象の回路に対応するマスク部に対して、回路を診断すべきタイミングにおいてマスク信号を出力して、診断対象の回路に対応するフリップフロップに入力されるクロック信号をマスクさせるタイミング制御部と、複数のフリップフロップのそれぞれに対応して設けられ、対応するフリップフロップが保持しているデータ値を診断用データとして出力する複数の診断用配線とを有する診断装置を提供する。【００１２】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施形態に係る診断装置１０の構成を診断対象回路１００とともに示す。
【図２】図２は、本実施形態に係る診断対象回路１００の具体的な構成例を示す。
【図３】図３は、フリップフロップ４０の内部構成の一例を示す。
【図４】図４は、診断対象回路１００に伝送される各信号の一例を示す。
【図５】図５は、本実施形態の第１変形例に係る診断対象回路１００の具体的な構成例を示す。
【図６】図６は、本実施形態の第２変形例に係る診断対象回路１００の具体的な構成例を示す。
【符号の説明】
【００１４】
１０  診断装置
１２  クロック発生部
１４  信号供給部
１６  判定部
２０  入力バッファ
２２  第１入力バッファ
２４  第２入力バッファ
２６  第３入力バッファ
３０  回路
３２  前段回路
３４  後段回路
３６  マージン調整回路
４０  フリップフロップ
４２  第１フリップフロップ
４４  第２フリップフロップ
４６  第３フリップフロップ
４７  第４フリップフロップ
４８  第５フリップフロップ
４９  第６フリップフロップ
５０  タイミング制御部
６０  診断用配線
６２  第１診断用配線
６４  第２診断用配線
６６  第３診断用配線
７０  出力部
７２  第１マスク回路
７４  第２マスク回路
７６  第３マスク回路
７８  合成回路
８０  クロックバッファ
８２  セレクタ
８４  ラッチ
９０  マスク部
９２  第１マスク部
９４  第２マスク部
１００  診断対象回路
３６２  第１可変遅延素子
３６４  第２可変遅延素子
３６６  第３可変遅延素子
４１０  クロック信号
４２０  ピリオド信号
５１０  入力信号
５２０  読出信号
５３０  解除信号
５６０  診断用データ
５７０  ホールド信号
６００  マスク信号
６１０  前段回路用マスク信号
６２０  後段回路用マスク信号
【発明を実施するための最良の形態】
【００１５】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。【００１６】
図１は、本実施形態に係る診断装置１０の構成を診断対象回路１００とともに示す。診断対象回路１００は、例えば半導体デバイスおよび回路基板等の電子デバイス内に含まれるクロック同期型の回路であって、外部から与えられた信号に応じて動作して、動作結果に基づく出力信号を出力する。【００１７】
診断装置１０は、このような診断対象回路１００を診断する。診断装置１０および診断対象回路１００は、一例として、同一の半導体または基板に実装されてよい。診断対象回路１００は、一例として、半導体試験装置に備えられるタイミング発生器であってよい。また、診断装置１０は、一例として、半導体試験装置に備えられる自己診断装置であってよい。【００１８】
診断装置１０は、クロック発生部１２と、信号供給部１４と、判定部１６と備える。クロック発生部１２は、クロック信号４１０を診断対象回路１００に与える。【００１９】
さらに、本実施形態において、クロック発生部１２は、基準動作周期を表すピリオド信号４２０を診断対象回路１００に与える。ピリオド信号４２０は、一例として、半導体試験装置の試験周期を表すレート信号であってよい。そして、診断対象回路１００は、クロック信号４１０およびピリオド信号４２０を基準として動作する。なお、クロック発生部１２は、診断対象回路１００内に備えられてもよい。【００２０】
信号供給部１４は、診断時において、診断対象回路１００を診断するための入力信号５１０を当該診断対象回路１００に与える。診断対象回路１００は、与えられた入力信号５１０に応じた動作をする。【００２１】
さらに、本実施形態において、信号供給部１４は、診断に先立って、診断タイミングを指定する設定値を診断対象回路１００に与える。設定値は、一例として、診断対象の回路を指定する値、基準タイミングからのピリオド信号４２０のカウント数、および、ピリオド信号４２０の発生タイミングからのクロック信号４１０のカウント数により表わされてよい。診断対象回路１００は、入力信号５１０が与えられたことに応じて動作している最中に、設定値により指定された診断タイミングとなると、回路（クロック同期型のフリップフロップおよびレジスタ等）の出力値（１ビットまたは複数ビットのデータ）を内部で一時的にホールドする。この場合において、診断対象回路１００は、クロック信号４１０およびピリオド信号４２０が停止することなく連続発生しているので、電源電流が変動しない。【００２２】
また、本実施形態において、信号供給部１４は、診断対象回路１００が診断タイミングの出力値を内部でホールドしている状態において、当該出力値を読み出すタイミングを示す読出信号５２０を、診断対象回路１００に与える。診断対象回路１００は、読出信号５２０が与えられたことに応じて、内部でホールドしている回路の出力値を診断用データ５６０として出力する。【００２３】
また、本実施形態において、信号供給部１４は、ホールド状態の診断対象回路１００を再動作させる解除信号５３０を、診断対象回路１００に与える。診断対象回路１００は、解除信号５３０が与えられたことに応じて、ホールド状態を解除して再動作する。【００２４】
判定部１６は、入力信号５１０に応じて診断対象回路１００から出力された診断用データ５６０を作業者のモニタ画面に表示してよい。また、判定部１６は、診断用データ５６０に基づき、当該診断対象回路１００の良否を判定してよい。本実施形態において、判定部１６は、読出信号５２０が与えられたことに応じて診断対象回路１００が出力した診断用データ５６０を受ける。そして、判定部１６は、診断用データ５６０と期待値データとが一致するか否かに応じて診断対象の回路の良否を判定する。【００２５】
ここで、判定部１６は、過去の正常動作する状態において取得したデータを、期待値データとして使用してよい。また、同一条件で繰り返して診断が実行される場合には、判定部１６は、繰り返して実行して得られた複数の診断用データ５６０の各々が同一データ値であるか否かを評価してもよい。【００２６】
図２は、本実施形態に係る診断対象回路１００の具体的な構成例を示す。診断対象回路１００は、クロック信号４１０により動作するクロック同期回路を備える。これに加えて、診断対象回路１００は、クロック同期回路に接続される従属回路を備えてよい。【００２７】
本実施形態において、診断対象回路１００は、入力バッファ２０と、複数の回路３０と、複数のフリップフロップ４０と、タイミング制御部５０と、複数の診断用配線６０と、出力部７０と、クロックバッファ８０とを備える。診断対象回路１００は、入力バッファ２０の一例として、第１入力バッファ２２と、第２入力バッファ２４と、第３入力バッファ２６とを備えてよい。また、診断対象回路１００は、複数の回路３０の一例として、前段回路３２と、後段回路３４とを備えてよい。また、診断対象回路１００は、複数のフリップフロップ４０の一例として、第１フリップフロップ４２と、第２フリップフロップ４４と、第３フリップフロップ４６とを備えてよい。【００２８】
入力バッファ２０は、入力信号５１０をリタイミングする。入力バッファ２０は、クロック信号４１０のタイミングで入力信号５１０のデータ値を取り込む。第１入力バッファ２２は、第１入力信号５１０のデータ値をクロック信号４１０のタイミングで取り込む。第２入力バッファ２４は、第２入力信号５１０のデータ値をクロック信号４１０のタイミングで取り込む。第３入力バッファ２６は、第３入力信号５１０のデータ値をクロック信号４１０のタイミングで取り込む。【００２９】
前段回路３２は、入力バッファ２０と第１フリップフロップ４２との間に挿入される。前段回路３２は、多様な処理回路であってよい。前段回路３２は、第１フリップフロップ４２へ伝播遅延した信号を供給する。第１フリップフロップ４２は、前段回路３２から伝播遅延された信号を受けて、リタイミングする。この場合、クロック信号４１０のジッタ、ジャンクション温度、電源電圧、隣接回路のクロストークノイズ、その他の影響により、第１フリップフロップ４２は、受けた信号をセットアップする時間およびホールドする時間が短くなる場合がある。【００３０】
後段回路３４は、第１フリップフロップ４２および第２フリップフロップ４４と、第３フリップフロップ４６との間に挿入される。後段回路３４は、多様な処理回路であってよい。後段回路３４は、第３フリップフロップ４６へ伝播遅延した信号を供給する。第３フリップフロップ４６も、第１フリップフロップ４２と同様に、受けた信号をセットアップする時間およびホールドする時間が短くなる場合がある。第３フリップフロップ４６は、リタイミングした信号を外部に出力する。【００３１】
複数のフリップフロップ４０のそれぞれは、リタイミング動作をする。すなわち、複数のフリップフロップ４０のそれぞれは、入力した信号のデータ値をクロック信号４１０に同期して取得して次のクロック信号４１０が入力されるまで保持する。更に、複数のフリップフロップ４０のそれぞれは、リタイミング動作を禁止して直前の出力状態を保持させるディセーブル端子（ＤＩＳ）を有する。複数のフリップフロップ４０のそれぞれは、ディセーブル端子に信号が与えられた場合には取得したデータ値を保持し続けるクロックディセーブル状態となる。【００３２】
このようなフリップフロップ４０によれば、ディセーブル端子に信号が与えられたタイミングの出力状態をホールドすることができる。さらに、このようなフリップフロップ４０によれば、クロック信号４１０の供給を受け続けた状態で（すなわち、クロック信号４１０の出力が停止されない状態で）、データ値を保持し続けることができる。【００３３】
タイミング制御部５０は、複数のフリップフロップ４０のそれぞれのディセーブル端子に対して、回路３０を診断すべきタイミングにおいて複数のホールド信号５７０を出力する。タイミング制御部５０は、複数のフリップフロップ４０のそれぞれに対して供給する複数のホールド信号５７０を個別のタイミングで出力してよい。【００３４】
本実施形態において、タイミング制御部５０は、内部にピリオド信号用カウンタ（図示無し）およびクロック信号用カウンタ（図示無し）を有する。タイミング制御部５０は、予め定められた基準タイミング（図示無し）を起点としてクロック信号４１０およびピリオド信号４２０をカウントする。タイミング制御部５０は、信号供給部１４から出力された入力信号５１０の最初の入力時を基準タイミングとしてよい。タイミング制御部５０は、信号供給部１４から出力された入力信号５１０のうちの１つにより指定されたタイミングを基準タイミングとしてよい。また、タイミング制御部５０内のクロック信号用カウンタおよびピリオド信号用カウンタは、動作モードに応じて、ホールド信号５７０を出力する条件が切り換えられてよい。【００３５】
また、タイミング制御部５０のクロック信号用カウンタは、クロック信号毎にカウント数を増加して、ピリオド信号毎にカウント数をリセットする。タイミング制御部５０のピリオド信号用カウンタは、ピリオド信号４２０毎にカウント数を増加する。そして、タイミング制御部５０は、クロック信号４１０のカウント数およびピリオド信号４２０のカウント数と、外部から与えられたピリオド信号設定値とクロック信号用設定値とが一致したタイミングで、選択されたホールド信号５７０を出力する。【００３６】
なお、タイミング制御部５０は、動作モードに応じた他の条件で、ホールド信号５７０を出力してもよい。また、タイミング制御部５０は、発生すべき個々のホールド信号５７０に対応した複数のクロック信号用カウンタおよび複数のピリオド信号用カウンタを有してもよい。【００３７】
タイミング制御部５０は、ホールド信号５７０を出力することにより複数のフリップフロップ４０（第１フリップフロップ４２、第２フリップフロップ４４および第３フリップフロップ４６）をクロックディセーブル状態とすることができる。この場合において、タイミング制御部５０は、複数のフリップフロップ４０に対して個別のタイミングでホールド信号５７０を出力してよい。この結果、診断対象回路１００は、診断タイミングにおける複数の回路３０の出力値を内部に保持したホールド状態となる。これにより、判定部１６は、診断用データ５６０を読み出すことができる。【００３８】
本実施形態において、タイミング制御部５０は、解除信号５３０が与えられたことに応じて、ホールド信号５７０の出力を停止して、ホールド状態を解除する。タイミング制御部５０は、ホールド信号５７０の出力を停止することにより、複数のフリップフロップ４０（第１フリップフロップ４２、第２フリップフロップ４４および第３フリップフロップ４６）をクロックディセーブル状態から解除させることができる。すなわち、タイミング制御部５０は、ホールド信号５７０の出力を停止することにより、複数のフリップフロップ４０に対して、対応する回路３０から出力された信号のデータ値をクロック信号４１０に同期して取得させることができる。この結果、診断対象回路１００は、ホールド状態を解除して通常動作を開始する。【００３９】
複数の診断用配線６０は、複数のフリップフロップ４０のそれぞれに対応して設けられる。複数の診断用配線６０のそれぞれは、対応するフリップフロップ４０が保持しているデータ値を診断用データ５６０として出力する。【００４０】
本実施形態において、診断対象回路１００は、複数の診断用配線６０の一例として、第１診断用配線６２と、第２診断用配線６４と、第３診断用配線６６とを備えてよい。第１診断用配線６２は、第１フリップフロップ４２に対応して設けられ、第１フリップフロップ４２が保持しているデータ値（Ｚ１）を診断用データ５６０として出力する。第２診断用配線６４は、第２フリップフロップ４４に対応して設けられ、第２フリップフロップ４４が保持しているデータ値（Ｚ２）を診断用データ５６０として出力する。第３診断用配線６６は、第３フリップフロップ４６に対応して設けられ、第３フリップフロップ４６が保持しているデータ値（Ｚ３）を診断用データ５６０として出力する。【００４１】
出力部７０は、複数の診断用配線６０を介して出力された診断用データ５６０を、診断装置１０の判定部１６に対して送信する。本実施形態においては、出力部７０は、読出信号５２０により指定されたタイミングにおいて、当該読出信号５２０により選択された診断対象の回路３０から出力されたデータ値を選択して、診断用データ５６０として判定部１６に対して送信する。【００４２】
出力部７０は、一例として、第１マスク回路７２と、第２マスク回路７４と、第３マスク回路７６と、合成回路７８とを有してよい。第１マスク回路７２は、第１フリップフロップ４２に対応して設けられる。第１マスク回路７２は、読出信号５２０により第１フリップフロップ４２が選択されている場合には、第１フリップフロップ４２から第１診断用配線６２を介して出力されたデータ値を通過して、それ以外の場合には、当該データ値を通過させない。【００４３】
第２マスク回路７４は、第２フリップフロップ４４に対応して設けられる。第２マスク回路７４は、読出信号５２０により第２フリップフロップ４４が選択されている場合には、第２フリップフロップ４４から第２診断用配線６４を介して出力されたデータ値を通過して、それ以外の場合には、当該データ値を通過させない。第３マスク回路７６は、第３フリップフロップ４６に対応して設けられる。第３マスク回路７６は、読出信号５２０により第３フリップフロップ４６が選択されている場合には、第３フリップフロップ４６から第３診断用配線６６を介して出力されたデータ値を通過して、それ以外の場合には、当該データ値を通過させない。合成回路７８は、第１マスク回路７２、第２マスク回路７４および第３マスク回路７６を通過したデータ値を、診断用データ５６０として判定部１６に対して送信する。【００４４】
出力部７０は、一例として、１ビット幅から１６ビット幅のデータをフリップフロップ４０から受けて、判定部１６に送信してよい。また、第１マスク回路７２と、第２マスク回路７４とおよび第３マスク回路７６は、フリップフロップ４０の高速動作に影響を与えないことを目的として、対応するフリップフロップ４０の出力端の直近に配置されることが好ましい。【００４５】
クロックバッファ８０は、入力バッファ２０および複数のフリップフロップ４０に与えられるクロック信号４１０を増幅する。本実施形態において、クロックバッファ８０は、外部から入力したクロック信号４１０をバッファして、第１フリップフロップ４２、第２フリップフロップ４４および第３フリップフロップ４６に分配する。【００４６】
なお、タイミング制御部５０は、以上に代えて、複数のフリップフロップ４０のうち診断対象のデータ値を取得するフリップフロップ４０に対して、ホールド信号５７０を出力してもよい。すなわち、タイミング制御部５０は、診断対象となっていないフリップフロップ４０に対しては、ホールド信号５７０を出力しなくてもよい。この場合において、出力部７０は、ホールド信号５７０が与えられた回路３０に対応する診断用配線６０を選択して、当該フリップフロップ４０が回路３０を診断すべきタイミングにおいて保持したデータ値を外部に出力する。【００４７】
図３は、フリップフロップ４０の内部構成の一例を示す。フリップフロップ４０は、一例として、セレクタ８２と、ラッチ８４とを有してよい。【００４８】
セレクタ８２は、ディセーブル端子（ＤＩＳ）にホールド信号５７０が与えられている場合、入力端子に与えられた信号を選択して出力する。セレクタ８２は、ディセーブル端子（ＤＩＳ）にホールド信号５７０が与えられていない場合、ラッチ８４から出力された信号（すなわち、ラッチ８４が保持している信号）を選択して出力する。【００４９】
ラッチ８４は、セレクタ８２が選択して出力した信号のデータ値をクロック信号４１０に同期して取得して、次のクロック信号４１０が入力されるまで保持する。そして、ラッチ８４は、保持しているデータ値を、出力端子から出力する。【００５０】
このようにして、フリップフロップ４０は、ディセーブル端子に信号が与えられない場合には、入力端子に与えられた信号のデータ値をクロック信号４１０に同期して取得して次のクロック信号４１０が入力されるまで保持することができる。さらに、フリップフロップ４０は、ディセーブル端子に信号が与えられた場合、クロック信号４１０の供給を受け続けた状態で、データ値を保持し続けることができる。【００５１】
図４は、診断対象回路１００に伝送される各信号の一例を示す。図４の（Ａ）はクロック信号４１０を示す。図４の（Ｂ）はピリオド信号４２０を示す。図４の（Ｃ）は第１フリップフロップ４２が保持するデータ値（Ｚ１）を示す。図４の（Ｄ）は第２フリップフロップ４４が保持するデータ値（Ｚ２）を示す。【００５２】
図４の（Ｅ）は第３フリップフロップ４６が保持するデータ値（Ｚ３）を示す。図４の（Ｆ）はホールド信号５７０を示す。図４の（Ｇ）は読出信号５２０を示す。図４の（Ｈ）は診断用データ５６０を示す。図４の（Ｉ）は解除信号５３０を示す。【００５３】
まず、診断装置１０は、診断に先立って、ホールド信号５７０を出力するための設定値を診断対象回路１００に対して与える。続いて、診断装置１０は、入力信号５１０を診断対象回路１００に与えて当該診断対象回路１００を診断モードで動作させる。診断対象回路１００のタイミング制御部５０は、診断モードで動作を開始した後、所定の基準タイミングからピリオド信号４２０およびクロック信号４１０のカウントを開始する。そして、タイミング制御部５０は、カウント値と設定値とが一致した診断タイミングにおいて、ホールド信号５７０を出力する（時刻ｔ１）。【００５４】
ホールド信号５７０が出力されると、当該ホールド信号５７０が与えられたフリップフロップ４０は、クロックディセーブル状態となる。従って、時刻ｔ１以後、複数のフリップフロップ４０は、診断タイミング（ｔ１）において対応する回路３０から出力されたデータ値を、保持し続ける。この結果、診断対象回路１００は、クロック信号４１０の供給を受け続けながら、ホールド状態となる。【００５５】
続いて、診断装置１０は、読出信号５２０を診断対象回路１００に与える（時刻ｔ２〜ｔ３）。読出信号５２０が与えられると、出力部７０は、当該読出信号５２０により指定された診断対象の回路３０に対応するフリップフロップ４０を選択して、選択したフリップフロップ４０が保持するデータ値を診断用データ５６０として出力する。図４の例においては、出力部７０は、第１フリップフロップ４２が保持しているデータ値（Ａ２）を、診断用データ５６０として出力する。なお、出力部７０は、複数のフリップフロップ４０が保持するデータ値のいずれかを選択して診断用データ５６０として出力するのに代えて、複数のフリップフロップ４０が保持する複数のデータ値を診断用データ５６０として出力してもよい。【００５６】
続いて、診断装置１０は、診断対象回路１００から診断用データ５６０を取得した後、解除信号５３０を診断対象回路１００に与える（時刻ｔ４）。解除信号５３０が与えられると、タイミング制御部５０は、ホールド信号５７０の出力を停止する（時刻ｔ５）。そして、ホールド信号５７０の出力が停止された結果、複数のフリップフロップ４０は、クロックディセーブル状態を解除する。この結果、診断対象回路１００は、動作を再開する。【００５７】
以上のような診断対象回路１００は、クロック信号４１０の供給を停止させずに、診断対象となる回路３０の任意タイミングにおける出力値をホールドして、診断装置１０に取得させることができる。このため、診断対象回路１００のクロックバッファ８０および複数のフリップフロップ４０により消費される電力は、クロック信号４１０が連続して与えられ続けるので、変化しない。従って、電源電圧の過渡的な変動が生じないので、診断装置１０は、診断時において、診断対象回路１００を実動作時と同様の条件で動作させることができる。これにより、診断装置１０によれば、診断対象回路１００を安定した条件で診断することができる。【００５８】
また、診断対象回路１００は、クロック信号４１０の供給を停止させずに診断用データを出力できるので、動作状態からホールド状態への遷移タイミングおよびホールド状態から動作状態への遷移タイミングでの電源負荷の変動を小さくすることができる。従って、診断装置１０は、診断対象回路１００を複数回連続して診断する場合、電源負荷の変動が無いので待機期間を省略することができる。これにより、診断装置１０によれば、診断対象回路１００の診断期間を短くすることができる。【００５９】
図５は、本実施形態の第１変形例に係る診断対象回路１００の具体的な構成例を示す。本変形例に係る診断対象回路１００は、図２の診断対象回路１００と略同一の構成および機能を採るので、図２の診断対象回路１００が備える部材と略同一の構成および機能の部材に同一の符号を付け、以下相違点を除き説明を省略する。【００６０】
診断対象回路１００は、回路３０の一例として、他の電子デバイスとのデータ授受を保証するためのマージン時間を変更するマージン調整回路３６を備えてよい。マージン調整回路３６は、一例として、第１入力信号５１０−１を遅延する第１可変遅延素子３６２と、第２入力信号５１０−２を遅延する第２可変遅延素子３６４と、第３入力信号５１０−３を遅延する第３可変遅延素子３６６とを有してよい。【００６１】
さらに、この場合、診断対象回路１００は、マージン調整回路３６の後段に、入力バッファ２０に代えて、フリップフロップ４０を備える。すなわち、本実施形態においては、診断対象回路１００は、第１入力バッファ２２、第２入力バッファ２４および第３入力バッファ２６に代えて、第４フリップフロップ４７、第５フリップフロップ４８および第６フリップフロップ４９を備える。【００６２】
この場合、診断装置１０は、マージン時間を順次に変更しながら、マージン調整回路３６の後段のフリップフロップ４０（第４フリップフロップ４７、第５フリップフロップ４８および第６フリップフロップ４９）が正しい出力値が取得できる最短のマージン時間を探し出してよい。このようなマージン時間を探し出す場合においても、診断装置１０は、診断対象回路１００を実動作時と同様の条件で動作させることができるので、正確なマージン時間を得ることができる。【００６３】
さらに、診断装置１０は、電源電圧可変装置（図示無し）を更に備えてよい。そして、診断装置１０は、電源電圧可変装置を用いて、診断対象回路１００の電源電圧変動に対するマージン試験を実行してよい。さらに、診断装置１０は、一例として、診断対象回路１００に含まれる複数の回路のうち、電源電圧変動に対するマージンが最小の回路を検出してもよい。【００６４】
電源電圧可変装置は、診断対象回路１００の全体に与えられる電源電圧を変化させる。電源電圧可変装置は、一例として、電源電圧を±１０％程度変化させることができる。【００６５】
診断装置１０は、電源電圧可変装置により電源電圧をステップ的にまたは連続的に変化させて、電源電圧毎に、同一試験条件で、診断対象となるフリップフロップ４０の出力値を取得して良否を判定する。診断装置１０は、一例として、診断対象回路１００が動作不良を発生する方向（例えば電源電圧を低下させる方向）へ順次電源電圧を変更してよい。診断装置１０は、正常な電源電圧を診断対象回路１００に与えた場合の診断対象となるフリップフロップ４０の出力値を正常値として、当該正常値と異なる出力値が取得された場合に、不良であると判断してよい。そして、診断装置１０は、正しい出力値が取得できる最大または最小の電源電圧を検出して、当該診断対象となるフリップフロップ４０の電源電圧に対する動作マージンを測定する。【００６６】
また、電源電圧が順次に変化した場合、診断対象回路１００は、複数個所のフリップフロップ４０が、順次に不良となる。そこで、診断装置１０は、複数個所のフリップフロップ４０のうち、いずれのフリップフロップ４０が最初に不良を示したかを検出してもよい。これにより、診断装置１０は、診断対象回路１００に含まれる複数の回路のうち、電源電圧変動に対するマージンが最小の回路を検出することができる。【００６７】
また、診断装置１０は、試験条件を順次に変化させ、診断対象となるフリップフロップ４０の試験条件に対する動作マージンを測定してもよい。診断装置１０は、一例として、信号供給部１４から診断対象回路１００へ出力する入力信号５１０を順次に変化させて、診断対象となるフリップフロップ４０の試験条件に対する動作マージンを測定してもよい。【００６８】
また、診断装置１０は、同様に、試験条件の変化に対する動作マージンが最小の回路を検出してもよい。また、診断装置１０は、どのような試験条件または論理状態の場合に動作マージンが小さくなるかを検出してもよい。これにより、診断装置１０は、診断対象回路１００が間欠不良を発生する原因を検出して、診断対象回路１００の動作信頼性を向上させることができる。【００６９】
図６は、本実施形態の第２変形例に係る診断対象回路１００の具体的な構成例を示す。本変形例に係る診断対象回路１００は、図２の診断対象回路１００と略同一の構成および機能を採るので、図２の診断対象回路１００が備える部材と略同一の構成および機能の部材に同一の符号を付け、以下相違点を除き説明を省略する。【００７０】
本変形例に係る診断対象回路１００は、ディセーブル端子を有する複数のフリップフロップ４０に代えて、ディセーブル端子を有さない複数のフリップフロップを備える。また、本変形例に係る診断対象回路１００は、複数のマスク部９０を更に備える。複数のマスク部９０は、複数のフリップフロップ４０に対応して設けられる。複数のマスク部９０のそれぞれは、対応するフリップフロップ４０に入力されるクロック信号４１０をマスクする。【００７１】
本変形例において、診断対象回路１００は、複数のマスク部９０の一例として、第１マスク部９２と、第２マスク部９４とを備えてよい。第１マスク部９２は、第１フリップフロップ４２および第２フリップフロップ４４に入力されるクロック信号４１０をマスクする。第２マスク部９４は、第３フリップフロップ４６に入力されるクロック信号４１０をマスクする。なお、各マスク部９０は、与えられたクロック信号４１０に同期して、クロック信号４１０の出力を禁止する回路であることが好ましい。【００７２】
本変形例において、複数のフリップフロップ４０のそれぞれは、ディセーブル端子（ＤＩＳ）を有さなくてよい。複数のフリップフロップ４０は、クロック信号４１０の入力が停止されることにより、出力状態をホールドできる。なお、この場合、診断対象回路１００の消費電力は、クロック信号４１０の入力が停止されたフリップフロップ４０分減少する。しかし、当該減少分の電力は回路全体の消費電力と比較して微小であるので、診断対象回路１００の消費電力の変動は、実用的に問題ない程度に抑えられる。【００７３】
本変形例において、タイミング制御部５０は、複数のマスク部９０のうち診断対象となる回路３０に対応するマスク部９０に対して、回路３０を診断すべきタイミングにおいてマスク信号６００を出力して、診断対象の回路３０に対応するフリップフロップ４０に入力されるクロック信号４１０をマスクさせる。タイミング制御部５０は、一例として、複数の回路３０のうち診断対象となる回路３０を指定する情報を診断装置１０から受けて、当該情報に応じて診断対象の回路３０に対応するマスク部９０を選択してよい。そして、タイミング制御部５０は、選択したマスク部９０に対して、回路３０を診断すべきタイミングにおいてマスク信号６００を出力してよい。【００７４】
本変形例において、タイミング制御部５０は、マスク信号６００の一例として、第１マスク部９２にクロック信号４１０をマスクさせる前段回路用マスク信号６１０、および、第２マスク部９４にクロック信号４１０をマスクさせる後段回路用マスク信号６２０を出力してよい。タイミング制御部５０は、前段回路３２を診断する場合には、診断タイミングにおいて前段回路用マスク信号６１０を出力する。また、タイミング制御部５０は、後段回路３４を診断する場合には、診断タイミングにおいて後段回路用マスク信号６２０を出力する。【００７５】
タイミング制御部５０は、マスク信号６００を出力することにより、診断対象となるフリップフロップ４０を信号取得動作を停止した状態とすることができる。この結果、診断対象回路１００は、診断タイミングにおける診断対象の回路３０の出力値を内部に保持したホールド状態となる。【００７６】
本変形例において、タイミング制御部５０は、解除信号５３０が与えられたことに応じて、マスク信号６００の出力を停止する。タイミング制御部５０は、マスク信号６００の出力を停止することにより、診断対象のフリップフロップ４０を信号取得動作を停止した状態から解除させることができる。すなわち、タイミング制御部５０は、マスク信号６００の出力を停止することにより、診断対象のフリップフロップ４０を、対応する回路３０から出力された信号のデータ値をクロック信号４１０に同期して取得させることができる。この結果、診断対象回路１００は、ホールド状態を解除して動作を開始する。【００７７】
以上のような診断対象回路１００は、複数の回路３０のうち診断対象となっていない回路３０に入力されるクロック信号４１０の供給を停止させずに、診断対象となる回路３０の任意タイミングにおける出力値を、診断装置１０に取得させることができる。従って、診断装置１０は、診断時において、診断対象回路１００を実動作時と同様の条件で動作させることができる。【００７８】
これにより、本変形例に係る診断装置１０によれば、診断対象回路１００を安定した条件で診断することができる。また、診断装置１０によれば、診断対象回路１００の診断期間を短くすることができる。さらに、他の診断対象回路とのデータ授受を保証するための入出力バッファ量のマージン時間を探し出す場合においても、診断装置１０は、正確なマージン時間を得ることができる。【００７９】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
【図１】
2009028034.tif 000003
【図２】
2009028034.tif 000004
【図３】
2009028034.tif 000005
【図４】
2009028034.tif 000006
【図５】
2009028034.tif 000007
【図６】
2009028034.tif 000008
【国際調査報告】
2009028034.tif 000009
2009028034.tif 000010