JP3574103B2 - 集積回路およびそのテスト方法 - Google Patents

集積回路およびそのテスト方法

Info

Publication number
JP3574103B2
JP3574103B2 JP2001357027A JP2001357027A JP3574103B2 JP 3574103 B2 JP3574103 B2 JP 3574103B2 JP 2001357027 A JP2001357027 A JP 2001357027A JP 2001357027 A JP2001357027 A JP 2001357027A JP 3574103 B2 JP3574103 B2 JP 3574103B2
Authority
JP
Japan
Prior art keywords
integrated circuit
test
output
control logic
input pin
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001357027A
Other languages
English (en)
Other versions
JP2003156536A (ja
Inventor
ホワード・カール・タナー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2001357027A priority Critical patent/JP3574103B2/ja
Publication of JP2003156536A publication Critical patent/JP2003156536A/ja
Application granted granted Critical
Publication of JP3574103B2 publication Critical patent/JP3574103B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、一般的には、データ処理システムの分野に関し、より具体的にはプリント回路基板上の集積回路のような多数のデバイスの間の相互接続をダイナミック・テスト検証することが可能な電子システムに関する。
【0002】
【従来の技術】
極めて複雑なプリント回路基板は、非常に多くの集積回路を備え、その各々は、多くの入出力信号を有している。さらに、電子システムは、相互接続された多くの回路基板を有し、その各々は、自身の一組の集積回路を含んでいる。集積回路の数、および集積回路あたりの信号の数が増大するにつれて、相互接続信号の数が劇的に増大する。多数の集積回路間を伝搬する非常に多数の信号の故に、多数の集積回路間の適切な相互接続についてプリント回路基板をテストする作業は、非常に複雑になる。典型的に、相互接続の検証は、非常に多数の入力を、所定のパターンまたはパターン系列で、高速でドライブすることができ、かつ、多数の出力信号を同時にモニタすることのできる、複雑かつ高価なテスト装置を用いて行われる。この種のテスト装置が利用できない場合には、従来のバウンダリ・スキャン方法のような既存の方法が、電子システムの多くの機能をチェックする経済的な手順を与える。
【0003】
【発明が解決しようとする課題】
しかし、バウンダリ・スキャン方法は、典型的に、或る形式のシリアル通信バス動作を、電子システムが最終的に動作するクロック速度よりもかなり低いクロック速度で実施する。したがって、従来のバウンダリ・スキャン方法は、緩やかなタイミング条件下で、システムまたはデバイスの全機能をテストするのに適している。しかし、漂遊容量のような種々のシステム特性は、緩やかなタイミング条件では、表れないので、従来のバウンダリ・スキャン方法によって可能とされるテスト方法を拡張して、システムおよびその要素がその分野で経験するクロック速度を含むことが、おおいに望まれるであろう。
【0004】
【課題を解決するための手段】
上述した問題は、集積回路をダイナミックにテストするシステム,デバイス,および方法によって解決される。システムは、入力ピンおよび出力ピンと、通常動作ロジックと、テスト制御ロジックとを有する第1の集積回路を備えている。テスト制御ロジックは、入力ピンに接続することができ、入力ピンの状態に基づいてテスト期間を開始するように構成され、およびテスト期間中に、入力ピンの状態を、記憶デバイスに記録するように構成されている。システムの第2の集積回路は、入力ピンおよび出力ピンと、通常動作ロジックと、テスト制御ロジックとを有している。テスト制御ロジックは、出力ピンに接続することができ、ユーザがプログラムできる一組のテスト出力信号を生成するように構成されている。第2の集積回路の出力ピンの少なくとも一部は、第1の集積回路の入力ピンの少なくとも一部に接続される。第1の集積回路のテスト制御ロジックは、入力ピンの状態が所定の状態に一致すると、テスト期間を開始するように構成することができる。第1および第2の集積回路のテスト制御ロジックの一部は、システム・クロックによってドライブでき、このシステム・クロックは、テスト期間中、第2の集積回路のテスト出力信号および第1の集積回路のテスト入力信号がシステム・クロックの周波数で変移するように、動作ロジックをドライブする。テスト出力信号は、一組の可能なテスト出力状態間で変移でき、可能なテスト出力状態は、所定のパターン,所定のパターンの反転,オール0パターン,オール1パターンを含む。
【0005】
【発明の実施の形態】
図1は、本発明の一実施例による電子システム100のブロック図である。図示の実施例において、電子システム100は、マイクロプロセッサ・ベースのコンピュータのようなデータ処理システムに用いるのに適した回路基板101を有している。回路基板101は、例えば、デスクトップ・コンピュータのマザーボード、データ処理システムの周辺バスを接続するのに適したアダプタ・カード、またはデータ処理システムに用いるのに適した他の回路基板を含む。プリント回路基板101の図示の例では、一組の集積回路102−1,102−2,102−3,102−4(以下、一般的または集合的に、集積回路102という)を有している。集積回路102は、参照番号104によって図1に集合的に示される種々の信号によって、互いに情報をやり取りして、通常動作条件下で、システム機能を実現する。信号104は、アドレス信号,データ信号,制御信号を含むことができる。図1に示すように、信号104の各々は、プリント回路基板101上の集積回路102の全てに、または集積回路の一部に与えることができる。図示の実施例を用いた実例として、信号Aは各集積回路102に与えられ、信号Bは集積回路102−4を除いた集積回路102−1,102−2,102−3に与えられ、信号Cは集積回路102−1,102−2,102−4に与えられ、信号Dは集積回路102−2,102−3,102−4に与えられる。
【0006】
プリント回路基板101の図示の実施例は、4つの集積回路102および4つの信号の組104のみ示しているが、データ処理システムの設計に詳しい者であれば、典型的に、かなり複雑なプロセッサは、非常に多数の集積回路(各々は、非常に多数の入出力信号を有する)を含むことができることがわかるであろう。さらに、本発明が意図する電子システム100は、相互接続された多数の回路基板(各々は、自身の組の集積回路を有する)を含むことができる。集積回路の数が増大し、および集積回路あたりの信号の数が増大するにつれて、相互接続信号の数が劇的に増大する。多数の集積回路102間を伝搬する非常に多数の信号の故に、多数の集積回路102間の適切な相互接続についてプリント回路基板をテストする作業は、非常に複雑になる。典型的に、多数の集積回路間の相互接続の検証は、多数の出力信号を同時にモニタしながら、非常に多数の入力を、所定のパターンまたはパターン系列で、高速でドライブすることができる、複雑かつ高価なテスト装置を用いて行われる。
【0007】
本発明は、電子システム100のダイナミック・テストを可能にする経済的な方法および装置を企図している。このテスト方法は、JTAGコンプライアント(compliant)バスまたはI Cバスのような比較的簡単な通信バスを介して、電子システムの集積回路にテストパターンが供給されるバウンダリ・スキャン方法の概念に基づいている。本発明は、電子システム100およびその集積回路102がこの分野で経験するクロック速度で実行されるダイナミックなパターン系列のテストを可能にすることによって、バウンダリ・スキャン方法のテスト能力を拡張している。
【0008】
図1において、テスト・コントローラ120が、回路基板101上のコネクタ110を介して、電子システム100に接続されている。テスト・コントローラ120は、ケーブル122を介して、電子システム100の集積回路102と情報のやり取りをする。典型的に、ケーブル122は、予め選ばれた通信バス・プロトコルによって、電子システム100とコントローラ122との間で、情報をやり取りする。図示の実施例では、コントローラ120が電子システム100と通信するプロトコルとして、I Cプロトコルを説明する。I Cバスは、種々のデバイスを相互接続する簡単な2線バスである。クロック信号(図1では、テスト・クロック(TC)信号として示されている)と、データ信号(図2では、テスト・データ(TD)信号として示されている)とを用いて、情報がI Cバス上を伝送される。I Cバスに関しての詳細な情報は、the IC Bus Specification, Version 2.0, Dec. 1998, Philips Semiconductors B.V. (www. semiconductors.phillips.com) P.O.Box 218, 5600 MD Eindhoven, The Netherlands, および Paret et al., The IC Bus From Theory To Practice (John Wiley & Son Ltd. 1997), ISBN No.0174962686に開示されている。
【0009】
他の実施例では、コントローラ120および集積回路102は、シリアル・バス(図1には、参照文字“J”により示される)を介して通信する。シリアル・バスは、IEEE 1149.1 Specification の ”IEEE Test Port and boundary Scan Architecture”(通常は、“the JTAG標準”と呼ばれ、簡単には“JTAG”と呼ばれる)。この実施例では、コントローラ120は、JTAGコンプライアント信号を電子システム100に与えるJTAG制御ロジックを有している。さらに、各集積回路102は、JTAGに従う。JTAG標準に詳しい人は、JTAGコンプライアント・デバイスは、JTAGシリアル・バスに適切に接続されるバウンダリ・スキャン・レジスタ(BSR)と呼ばれるレジスタを有していることがわかる。このBSRは、内部レジスタの状態のようなデバイスの内部要素についての情報を格納する。内部レジスタに格納される情報は、BSRに格納される。JTAGコンプライアント信号の適切な制御によって、コントローラ120は、集積回路102の内部ノードに読み書きを行うことができる。
【0010】
電子システム100は、図1に参照文字“K”によって示されるシステム・クロック信号を発生するシステム・クロック発生器108を、さらに有している。システム・クロックKは、電子システム100の集積回路102の各々に同期クロックを与える。典型的には、電子システム100の信号104の各々は、システム・クロックKの変移に関連して、送信されまたは受信される。
【0011】
コントローラ120は、汎用プロセッサまたは特殊デバイスとすることができる。一実施例では、コントローラ120は、回路基板101に取付けられたサービス・プロセッサにより構成することができる。この場合、ケーブル122およびコネクタ110を、省略することができる。コントローラ120は、テスト・プログラムを実行し、電子システム100の集積回路102と通信するように構成される。コントローラ120が例えばI Cプロトコルによって集積回路102と通信する一実施例では、コントローラ120は、テスト・データ信号TDによって集積回路102の各々をアドレスすることのできるバス・マスタとして働く。各集積回路102は、コントローラ120によって発生された固有I Cアドレスに応答する。コントローラ120が集積回路102と通信する固有プロトコルにかかわらず、プロトコルは、システム・クロックKの速度に対して、典型的に低速であり、十分に信頼できる。
【0012】
図2には、本発明に従って、各集積回路102に設けられる回路の一実施例を含む電子システム100の集積回路102のさらなる詳細を示す。各集積回路102は、比較的低速で信頼できる通信プロトコルによって、テスト・コントローラ120(図1)と通信するテスト制御ロジック200を有している。図示の実施例では、この通信は、I CバスのクロックTC信号およびテスト・データTD信号により、またはJTAGコンプライアント・シリアル・バスによって発生する。システム・クロックKは、位相ロック・ループ(PLL),クロック・ツリー,または他の適切なクロック回路のようなクロック回路220に接続され、内部クロックK_INTの1つ以上のコピーを生成する。内部クロックK_INTは、集積回路102の通常動作ロジック230へ送られる。通常動作ロジック230は、ここに説明するダイナミック・テスト回路とは無関係の所定の機能を実行するように構成される。
【0013】
集積回路102は、一組のN個の信号を、対応する一組の入力ピンすなわちI/Oピン240(図2には、それらの1つのみが示されている)を介して受信して、一組のM個の出力信号を、対応する一組の出力ピンすなわちI/Oピン240を介して発生する。入力信号および出力信号は、電子システム100の集積回路102の間で通信される、図1に示される信号104を表している。信号のうちのいくつかは、入力のみの信号であり、信号のうちのいくつかは、出力のみの信号であるが、図2は、I/Oピン240に接続される1つの入出力信号I/Oiに対する本発明の特徴を示している。N個の入力信号(I/Oiを含む)の各々は、個別レシーバ214(その1つが、図2に示される)に接続される。各レシーバ214は、その対応する入力信号を、集積回路102の通常動作ロジック230に、および入力信号をテスト制御ロジック200にインタフェースするサンプル/ホールド・ラッチ219に接続する。この構成では、テスト制御ロジック200は、図2に参照番号204によって示される一組のN個のテスト入力信号を受信する。通常動作ロジック230をドライブするシステム・クロックK_INTは、またサンプル/ホールド・ラッチ219をドライブする。したがって、テスト制御ロジック200によって受信されるラッチ219からの各テスト入力信号204は、通常動作ロジック230に送られる対応する入力信号とほぼ同じである。
【0014】
通常動作ロジック230は、一組のM個の通常出力信号を生成するように構成されている。テスト制御ロジック200は、図2に参照番号202によって示される一組のM個のテスト出力信号を生成するように構成されている。各通常出力信号およびその対応するテスト出力信号202は、個別信号マルチプレクサ217(図2には、その1つを示している)の入力端子に送られる。マルチプレクサ217の出力端子は、適切な出力ドライバ216に接続され、このドライバは、集積回路102の対応する出力ピン240に接続される。テスト制御ロジック200によって生成されたテスト選択(TS)信号212は、各信号マルチプレクサ217に選択入力を与える。集積回路102が通常動作モードにあるとき、通常出力信号が選択される。集積回路102がテスト・モードにあり、送信デバイスとして指定される(テスト・コントローラ120からの適切なプログラミングによって)とき、テスト出力信号が選択される。図示の実施例では、出力ドライバ216に、イネーブル信号が入力される。出力ドライバ216へのイネーブル信号は、イネーブル・マルチプレクサ218の出力によってドライブされる。イネーブル・マルチプレクサ218は、通常動作ロジック230から通常イネーブル信号と、制御ロジック200により生成されたテスト・イネーブル(TE)信号とを受信する。典型的には、集積回路102の双方向ピン(すなわちI/Oピン)は、個別イネーブル信号によってイネーブルされる出力ドライバ(図2に示される出力ドライバ216のような)に接続される。I/Oピンが入力ピンとして機能しているとき、イネーブル信号を用いて、出力ドライバが、入力ビットの状態と競合することを避ける。この場合、集積回路102の各I/Oピンに対する出力ドライバは、イネーブル・マルチプレクサ218の1つから出力されるイネーブル信号によってイネーブルされる。各イネーブル・マルチプレクサ218は、通常動作ロジック230から“通常”出力イネーブル信号と、テスト出力イネーブル信号とを受信する。対応する集積回路102がテスト・モードにあり、送信デバイスとして指定されると、テスト制御ロジック200によって、テスト出力イネーブル信号が発生される。テスト制御ロジック200により生成されたテスト選択信号TSは、信号マルチプレクサ217およびイネーブル・マルチプレクサ218へ、選択入力を与える。図2,図3,図4のテスト・ロジックは、NおよびMのパラメータがチップ毎に異なることを除いて、各IC102−1,102−2,102−3等に対するものとほぼ同一であることがわかるであろう。
【0015】
図3には、図2に示されるテスト制御ロジック200の適切な構成が、ブロック図で示されている。一般的に言えば、テスト制御ロジック200は、IC102の入力ピンに接続でき(サンプル/ホールド・ラッチ219を経て)、入力ピンの状態に基づいて、テスト・モードまたはテスト期間を開始するのに適している。テスト制御ロジック200は、テスト期間中、入力ピン240の状態または状態系列を、記憶デバイスに記録することができる。
【0016】
図示の実施例では、制御ロジック200は、IBM CorporationのPowerPC(登録商標)401プロセッサ・セルのような、汎用中央処理ユニット・マクロ・セル(CPU)302によって、ドライブされる。(他の実施例では、テスト制御ロジック200は、組合わせロジックおよび順序ロジックで、完全に構成できる。)CPU302は、不揮発性メモリ・デバイス(ROM)310に記憶された一組の命令(ソフトウェア)を実行して、テスト制御ロジック200の機能的制御を与える。ROM310は、フラッシュ・メモリ・セル,EEPROMデバイス,または他の適切な不揮発性メモリとして構成することができる。さらに、データおよび変数の一時的記憶のために比較的小さなスタティックRAM312が設けられる。
【0017】
図2および図3に示されるように、テスト制御ロジック200は、さらに、一組のテスト入力信号204(図2に示される)を受信する一組のN個の並列ポート入力ビット306を有している。並列ポート入力ビット306の各々は、IC102の対応する入力ピンに接続することができる。図示の実施例では、各入力ピン(すなわちI/Oピン)240は、ドライバ214およびサンプル/ホールド・ラッチ219を経て、対応する並列ポート入力ビットスルー306に接続することができる。並列ポート入力ビット306は、テスト制御ロジック200が集積回路102によって受信されたデータを取込めるようにする。
【0018】
テスト制御ロジック200は、さらに、CPU302に接続されおよびCPU302により制御される、図3に参照番号304によって示される一組の並列ポート出力ビットを含んでいる。並列ポート出力ビット304の数は、テスト制御ロジック200により生成されたテスト出力202の数(N)以上とするのが好ましい。一実施例では、以下に詳細に説明するように、集積回路102が受信モードにあるときに、並列ポート出力ビット304は、マスキング・ビットとしても機能する。この実施例では、並列ポート出力ビット304の数は、テスト出力信号202の数(N)または入力信号204の数(M)の大きい方である。並列ポート出力ビット304は、集積回路102が送信ICとして設計されるときに、CPU302を介して図1のコントローラ120によってプログラムされて、プログラマが集積回路から送信することを望むパターンを記憶する。M個の並列ポート出力ビット304の各々は、M個の信号マルチプレクサ217(図2には、1つが示されている)のうちの1つに接続される。集積回路102がテスト・モードにおかれると、テスト選択信号TSは、集積回路102の対応する出力ピンにドライブされる一組のテスト出力202を選択する。
【0019】
図示の実施例では、並列ポート出力ビット304の各々は、また、図4に示されるコンパレータ404へ入力を与える。この実施例では、並列ポート出力ビット304を用いて、同期状態をプログラムすることができる。受信デバイスとして指定されたIC102の入力ピン240が同期状態に一致するならば、テスト制御ロジック200は、入力ピン240の状態が記録されるテスト期間を開始することができる。並列ポート出力ビットは、集積回路102が受信モードにあるときに用いられるマスクとして機能し、同期パターンを検索するときに、どの入力信号を無視するかを指示することができる。(この理由のために、ポート304におけるビットの実際の数は、特定の集積回路に対しNまたはMの大きい方でなければならない)。他の実施例では、個別ポートを有して、入力信号が比較されるマスク・パターンを与えることができる。個別ポートは、追加の回路を犠牲にして設けて、集積回路102がデバイスのテスト中にデータを同時に送受信できるようにする。
【0020】
テスト制御ロジック200の図示の実施例は、また、CPU302がテスト・コントローラ120と通信できるようにする並列ポート308を有している。CPU302とテスト・コントローラ120との間の通信は、ROM310に記憶されたソフトウェアによって行われる。図示の実施例では、例えば、このソフトウェアは、テスト・クロック信号TCおよびテスト・データ信号TDを周期的にサンプルすることができる。さらに、このソフトウェアは、典型的に、通信プロトコルによって要求されるときに、データをTD信号上にドライブさせるように構成される。図3に示される並列ポート308は、インタフェース信号を集積回路102に与える。このインタフェース信号は、前述したテスト選択信号TS,チップ・ディセーブル信号CD208,テスト・イネーブル信号TE206を含んでいる。テスト選択信号TSは、信号マルチプレクサ217(およびイネーブル・マルチプレクサ218)に、テスト・データを集積回路102の対応する出力ピンに送出させる。テスト・イネーブル信号TEは、その名前が示すように、テスト・データが、集積回路102の対応する出力ピンに送出されるときに、イネーブリングを要求する出力ドライバにイネーブル信号を与える。テスト制御ロジック200によって生成されたチップ・ディセーブル(CD)信号は、アサート(assert)されると、集積回路102の通常動作ロジック230を、非動作状態すなわちリセット状態にして、動作ロジック230がテスト・モードとインタフェースしないようにする。
【0021】
テスト制御ロジック200は、さらに、CPU302に接続される高速順次制御回路307を有している。典型的に、CPU302は、第1のクロック速度で動作するコマンドを用いて、高速順次制御回路307をセットアップする。高速順次制御回路307は、典型的には、CPU302のクロック速度(309)によって制御される。適切なセットアップの後、高速順次制御回路307は、通常動作ロジック320をドライブするクロック信号K(またはK_INT)によって、クロックまたはドライブされる。高速順次制御回路307は、一組のMUXCONTROL信号を生成する。この一組のMUX CONTROL信号は、対応する集積回路102が情報を送出するとき(すなわち、送信モードにある)、一組のテスト出力信号202にドライブされるパターンを制御する。したがって、送信デバイスのテスト出力信号204は、テスト期間中は、システム・クロック(K)の周波数で変移する。
【0022】
以下に図6に関連して詳細に説明するように、MUX CONTROL信号は、一群の出力マルチプレクサの動作を制御するように働いて、送信動作中に、所望のパターン系列が、送信デバイスの出力ピンに供給できるようにする。高速順次制御回路307は、また、集積回路102が情報を受取っているときに、サンプル/ホールド・ラッチ219(図2)をイネーブルおよびディセーブルするSAMPLE信号を生成するためのものである。
【0023】
一実施例では、高速順次制御回路307は、集積回路102が送信デバイスとして指定されると、CPU302を介してテスト・コントローラ120からコマンドを受取って、集積回路102によって生成される所定順序の出力状態を定める。一実施例では、テスト制御ロジック200は、4つの異なる出力状態を生成するように構成される。これら4つの出力状態は、オール0(all 0)の出力状態,オール1(all 1)の出力状態,テスト・パターン出力状態TP,テスト・パターンの反転(!TP)を含むことができる。典型的には、出力パターン・テスト制御ロジック200の1つは、同期(SYNC)パターンとして指定されるパターンを生成する。SYNCパターンは、受信デバイスとして指定される集積回路102上の高速順次制御ロジック307の高速動作をトリガする。(SYNCパターンは、あらゆるパターンをSYNCパターンとして指定することができるが、例示としてオール0パターンであると仮定する。)これらパターンの各々は、並列ポート出力ビット304(図3)に記憶されたビットのパターンに関係している。このパターンは、集積回路102が送信集積回路となるように指定されると、集積回路102の出力ピン(すなわちI/Oピン)240に、最終的にドライブされる。テスト・コントローラ120のプログラマは、送信集積回路102によって生成される一組のパターンの順序を決定する。典型的には、4つのパターンのうちの1つは、SYNCパターンでなければならない。送信集積回路として指定された集積回路102のCPU302は、これらコマンドを解釈して、入出力コマンドを、高速順次ロジック・ブロック307に送出して、送られるべきパターンを4つのタイム・スロットの各々に記憶する。
【0024】
動作中、高速順次制御回路307は、所定の順序に従って、システム・クロックK(またはK_INT)の各エッジで、MUX CONTROL信号を連続的に変更し、集積回路が送信集積回路としてもはや指定されなくなるまで、集積回路102の出力ピン240に、所望出力信号系列を生成する。図4および図6において、MUX CONTROL信号は、参照番号402−0,402−1,…,402−i,…402−Nによって示された一組の4:1マルチプレクサ(一時的または集合的には、マルチプレクサ402と言う)の選択入力をドライブする。各4:1マルチプレクサ402は、並列ポート出力ビット304の1つを、その入力の1つとして受取る。図示の実施例では、各4:1マルチプレクサ402は、対応する並列ポート出力ビット304の反転を生成するインバータ405を有している。さらに、各マルチプレクサ402には、また、1つの入力として論理“0”を、他の入力として論理“1”を受取る。1つのマルチプレクサ402の構成を、図6に詳細に示す。この構成では、マルチプレクサ402の出力は、並列ポート出力ビット304に記憶されたビットよりなるテスト・パターン(TP),テスト・パターンの反転(!TP),オール0パターン,オール1パターンを生成することができる。4:1マルチプレクサ402の出力は、テスト制御ロジック200によって生成された一組のテスト出力202を形成する。このテスト・パターン生成機構を用いて、本発明は、SYNCパターン,ライン事前調整パターン,テスト・パターン,事後調整パターンのような出力パターン系列を生成することができる。この出力パターン系列は、システム・クロックKの速度で変化する。これら4つのパターンを操作して、1つのクロックから次のクロックへの出力信号変移が最大になる最悪スイッチングのシナリオをシミュレートすることができる。一例として、オール0パターンがSYNCパターンを構成し、!TPパターンがライン事前調整パターンを構成し、TPパターンがテスト・パターンを構成し、オール1パターンが事後調整パターンを構成することができる。したがって、テスト制御ロジック200は、テスト・コントローラ120がテスト・パターン系列を決定できるように構成する。テスト制御ロジック200は、集積回路が送信デバイスとして指定されるとき、対応する集積回路102の出力ピンへ、クロック速度で、決定されたパターン系列を供給する。
【0025】
高速順次制御回路307は、SAMPLE信号を制御するロジックをさらに有している。SAMPLE信号は、テスト期間を定める。このテスト期間中には、指定された受信集積回路102のテスト制御ロジック200が、入力信号の状態を記録または取込むことができる。SAMPLE信号は、テスト制御ロジック200がその入力ピンに同期パターンを検出した後に、正確な時刻でアサートすることができる。
【0026】
テスト・コントローラ120から目標とされる集積回路102のCPU302へ適切な命令を送ることによって、集積回路102が受信およびチェック・モードに置かれると、ROM310は、一連の命令を、高速順次制御回路307に送る。これらの命令に応じて、制御回路307は、自動取込みシーケンスを開始させる。この取込みシーケンスでは、制御ロジック307は、SAMPLE信号(サンプル/ホールド・ラッチ219のイネーブル入力に接続される)をアサートし、これによりサンプル/ホールド・ラッチ219の出力に記憶されたパターンを、クロックK_INTの周波数で変更させる。集積回路102が受信集積回路として指定されると、対応する集積回路102のコンパレータ404が利用される。指定された集積回路102によって受信されたテスト入力信号204が、所定のSYNCパターン(以下に説明するように、マスクされたビットは無視する)に一致すると、コンパレータ404は、高速順次回路307によって受信されるSYNC信号を生成する。
【0027】
図示の実施例では、マスク・ビット403は、一組のテスト出力信号202によって与えられる。集積回路102が受信デバイスとして指定されているときに、テスト出力ビット202に“1”がプログラムされると、入力データ・パターンが同期パターンに一致するか否かを決定する際に、対応する入力信号204は無視される。マスク・ビットは有用である。というのは、送信デバイスとして指定された集積回路102によって生成されたすべての信号104は、受信デバイスとして指定された各集積回路102によって受信することができない。同期パターンを検索するときに、特定の集積回路102での未接続の信号は、無視されなければならない。
【0028】
図6のタイミング図において、受信集積回路のコンパレータ404が、マスクされていないすべてのテスト入力204上に、同期パターン(図示の実施例では、オール0パターン)を検出すると、コンパレータ404は、SYNC信号をアサートする。SYNC信号は、高速順次制御回路307にフィードバックされる。アサートされたSYNC信号の検出に応じて、高速順次制御回路307は、1クロック期間遅延し、SAMPLE信号をデアクティブにする。SAMPLE信号がデアクティブされると、集積回路の入力ピン上に存在するパターン(データ)がラッチされ、CPU302が高速順次制御回路307を命令して、他の自動取込みシーケンスを開始させる(SAMPLE信号をリアサートすることにより)まで、サンプル/ホールド・ラッチ219に保持する。SAMPLE信号がデアクティブにされているとき、サンプル/ホールド・ラッチ219に存在するパターンは、並列ポート306を介して読込むことができ、既知の良好パターンとの連続比較のためにSRAM312に記憶される。取込まれたパターンと既知の良好パターンとの間のこの比較は、低速のクロック速度でCPU302によって行うことができる(すなわち、取込まれたデータの分析は、リアルタイムで行う必要はない)。しかし、取込まれたパターンと前に決定された既知の良好パターンとの間の比較を行うことが望まれるならば、追加のハードウェアを、テスト制御論理200に組込んで、取込まれたパターンを既知の良好パターンと比較することができる。
【0029】
前述したすべての特徴を組合わせると、テスト・シーケンスの動作を、以下のように実行することができる。最初に、1つ以上の集積回路の通常動作ロジック230が、リセットされる。次に、テスト・コントローラ120(CPU302を介して)が、1つの集積回路102を送信デバイスとして指定して、指定された送信デバイスの並列ポート出力ビット304にパターンを記憶する。さらに、テスト・コントローラは、所望のパターン・シーケンスをプログラムすることができる。このパターン・シーケンスは、4:1マルチプレクサの各々に供給される選択信号のパターンを有している。テスト・コントローラ120は、また、1つ以上の他の集積回路102を受信デバイスとして指定し、マスク・ビットをプログラムする(各受信デバイスの並列ポート出力ビット304を用いて)。次に、前述したサンプル・シーケンスを開始する。指定された受信デバイスが、マスクされていないビット上にSYNCパターンを検出すると、受信デバイスは、その入力ビットに存在するデータ・パターンを、SYNCパターンが存在した後に2サイクルにわたって取込み保持する。取込まれたデータは、さらなる分析および既知の良好パターンとの比較のために、テスト制御ロジック200のSRAMに記憶される。このようにして、電子システム100のダイナミック・テストが可能になる。
【0030】
この開示を利用する当業者には、本発明が、電子システムの多数の集積回路間の相互接続を、電子システムの実際のクロック速度で、ダイナミックにテストする方法および装置を企図していることがわかるであろう。詳細な説明および図面に開示の本発明の実施形態は、現在好適な例を単に挙げただけであることを理解すべきである。
【0031】
まとめとして、本発明の構成に関して以下の事項を開示する。
(1)入力ピンおよび出力ピンと、
前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、
前記入力ピンに接続することができ、前記入力ピンの状態に基づいてテスト期間を開始するように構成され、およびテスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するように構成されたテスト制御ロジックと、
を備える集積回路。
(2)前記テスト制御ロジックは、前記入力ピンの状態が所定の状態に一致すると、前記テスト期間を開始するように構成されている、上記(1)に記載の集積回路。
(3)前記テスト制御ロジックは、前記所定の状態を定めるプログラム可能な手段を有する、上記(2)に記載の集積回路。
(4)前記テスト制御ロジックは、テスト・コントローラに接続することができ、前記テスト・コントローラは、I CおよびJTAGを含むバス・プロトコルから選択された通信バス・プロトコルにより、前記テスト制御ロジックをプログラムできる、上記(1)に記載の集積回路。
(5)前記テスト制御ロジックの一部は、システム・クロックによってドライブされ、前記システム・クロックは、テスト期間中、テスト出力信号がシステム・クロックの周波数で変移するように、前記動作ロジックをドライブする、上記(1)に記載の集積回路。
(6)前記テスト制御ロジックは、テスト期間中、チップ・ディセーブル(CD)信号をアサートするように構成され、および前記動作ロジックは、前記CD信号を受信し、前記CD信号がアサートされると、リセット状態になるように構成される、上記(1)に記載の集積回路。
(7)前記テスト制御ロジックは、前記集積回路が送信デバイスとして指定されると、前記出力ピンに接続することのできる一組のテスト出力信号を生成するように構成されている、上記(1)に記載の集積回路。
(8)前記テスト出力信号は、前記集積回路のシステム・クロックによって定められるクロック周波数で変移する、上記(7)に記載の集積回路。
(9)前記テスト出力信号は、一組の可能なテスト出力状態間で変移し、前記可能なテスト出力状態は、所定のパターン,前記所定のパターンの反転,オール0パターン,オール1パターンよりなる、上記(7)に記載の集積回路。
(10)前記テスト出力信号は、前記集積回路が受信デバイスとして指定されると、マスキング・パターンを与え、前記マスキング・パターンは、前記テスト期間を開始することのできる前記集積回路の入力ピンを指示する、上記(1)に記載の集積回路。
(11)入力ピンおよび出力ピンと、前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、前記入力ピンに接続することができ、前記入力ピンの状態に基づいてテスト期間を開始するように構成され、およびテスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するように構成されたテスト制御ロジックとを有する第1の集積回路と、入力ピンおよび出力ピンと、前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、前記出力ピンに接続することができ、ユーザがプログラムできる一組のテスト出力信号を生成するように構成されたテスト制御ロジックを有する第2の集積回路とを備え、
前記第2の集積回路の出力ピンの少なくとも一部を、前記第1の集積回路の入力ピンの少なくとも一部に接続する、電子システム。
(12)前記第1の集積回路のテスト制御ロジックは、前記入力ピンの状態が所定の状態に一致すると、前記テスト期間を開始するように構成されている、上記(11)に記載の電子システム。
(13)前記テスト制御ロジックは、前記所定の状態を定めるプログラム可能な手段を有する、上記(12)に記載の電子システム。
(14)前記第1および第2の集積回路のテスト制御ロジックに接続することのできるテスト・コントローラをさらに備え、前記テスト・コントローラは、テスト・コントローラのユーザが、前記第1の集積回路の所定の状態と前記第2の集積回路によって生成される一組の出力信号とをプログラムできるように構成されている、上記(11)に記載の電子システム。
(15)前記テスト・コントローラは、I CおよびJTAGから選択された通信バス・プロトコルにより、前記集積回路と通信する、上記(14)に記載の電子システム。
(16)前記第1および第2の集積回路のテスト制御ロジックの一部は、システム・クロックによってドライブされ、前記システム・クロックは、テスト期間中、前記第2の集積回路のテスト出力信号および前記第1の集積回路のテスト入力信号がシステム・クロックの周波数で変移するように、前記動作ロジックをドライブする、上記(11)に記載の電子システム。
(17)前記テスト制御ロジックは、テスト期間中、チップ・ディセーブル(CD)信号をアサートするように構成され、および前記動作ロジックは、前記CD信号を受信し、前記CD信号がアサートされると、リセット状態になるように構成される、上記(11)に記載の電子システム。
(18)前記第1および第2の集積回路は、プリント回路基板に取付けられる、上記(11)に記載の電子システム。
(19)前記テスト出力信号は、一組の可能なテスト出力状態間で変移し、前記可能なテスト出力状態は、所定のパターン,前記所定のパターンの反転,オール0パターン,オール1パターンを含む、上記(11)に記載の電子システム。
(20)集積回路のテスト方法であって、
前記集積回路の入力ピンに所定の状態を与えるステップと、
前記入力ピンの所定の状態に応じて、前記入力ピンが前記集積回路の動作周波数で変移するテスト期間を開始するステップと、
前記テスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するステップと、
を含む集積回路のテスト方法。
(21)前記入力ピンに所定の状態を与える前に、前記所定の状態を、前記集積回路のプログラマブル・ポートにプログラミングするステップをさらに含む、上記(20)に記載の集積回路のテスト方法。
(22)前記テスト期間が終了した後に、前記記憶デバイスから前記入力ピンの記録状態を検索するステップをさらに含む、上記(20)に記載の集積回路のテスト方法。
(23)前記集積回路の入力ピンに所定の状態を与えるステップは、第2の集積回路の出力ピンに一組の出力信号を生成するステップを含み、
前記第2の集積回路の出力ピンの少なくとも一部を、第1の集積回路の入力ピンの少なくとも一部に接続する、上記(20)に記載の集積回路のテスト方法。(24)前記第1の集積回路を、受信集積回路として指定し、前記第2の集積回路を、送信集積回路として指定し、前記第2の集積回路の出力ピンが前記テスト期間中にとる状態の系列をプログラミングするステップをさらに含む上記(23)に記載の集積回路のテスト方法。
【図面の簡単な説明】
【図1】本発明の一実施例により実現された一組の集積回路よりなる電子システムのブロック図である。
【図2】図1の集積回路の少なくともいくつかにおけるテスト制御ロジックの一実施例の詳細を示すブロック図である。
【図3】図2のテスト制御ロジックの一構成例を示す図である。
【図4】高速順次制御ロジックの一部を含む図3のチップ・テスト制御ロジックの一部を示す図である。
【図5】図4のマルチプレクサの一実施例を示す図である。
【図6】データ取り込みシーケンスを説明する選択された信号のタイミング図である。
【符号の説明】
100 電子システム
101 プリント回路基板
102 集積回路
104 信号
120 テスト・コントローラ
122 ケーブル
200 制御ロジック
214 レシーバ
216 出力ドライバ
217 マルチプレクサ
218 イネーブル・マルチプレクサ
219 サンプル/ホールド・ラッチ
220 クロック回路
230 通常動作ロジック
240 I/Oピン
302 CPU
304,306 並列ポート出力ビット
307 順次制御回路
404 コンパレータ
407 マルチプレクサ

Claims (24)

  1. 入力ピンおよび出力ピンと、
    前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、
    前記入力ピンに接続することができ、前記入力ピンの状態に基づいてテスト期間を開始するように構成され、およびテスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するように構成されたテスト制御ロジックと、
    を備える集積回路。
  2. 前記テスト制御ロジックは、前記入力ピンの状態が所定の状態に一致すると、前記テスト期間を開始するように構成されている、請求項1に記載の集積回路。
  3. 前記テスト制御ロジックは、前記所定の状態を定めるプログラム可能な手段を有する、請求項2に記載の集積回路。
  4. 前記テスト制御ロジックは、テスト・コントローラに接続することができ、前記テスト・コントローラは、I CおよびJTAGを含むバス・プロトコルから選択された通信バス・プロトコルにより、前記テスト制御ロジックをプログラムできる、請求項1に記載の集積回路。
  5. 前記テスト制御ロジックの一部は、システム・クロックによってドライブされ、前記システム・クロックは、テスト期間中、テスト出力信号がシステム・クロックの周波数で変移するように、前記動作ロジックをドライブする、請求項1に記載の集積回路。
  6. 前記テスト制御ロジックは、テスト期間中、チップ・ディセーブル(CD)信号をアサートするように構成され、および前記動作ロジックは、前記CD信号を受信し、前記CD信号がアサートされると、リセット状態になるように構成される、請求項1に記載の集積回路。
  7. 前記テスト制御ロジックは、前記集積回路が送信デバイスとして指定されると、前記出力ピンに接続することのできる一組のテスト出力信号を生成するように構成されている、請求項1に記載の集積回路。
  8. 前記テスト出力信号は、前記集積回路のシステム・クロックによって定められるクロック周波数で変移する、請求項7に記載の集積回路。
  9. 前記テスト出力信号は、一組の可能なテスト出力状態間で変移し、前記可能なテスト出力状態は、所定のパターン,前記所定のパターンの反転,オール0パターン,オール1パターンよりなる、請求項7に記載の集積回路。
  10. 前記テスト出力信号は、前記集積回路が受信デバイスとして指定されると、マスキング・パターンを与え、前記マスキング・パターンは、前記テスト期間を開始することのできる前記集積回路の入力ピンを指示する、請求項1に記載の集積回路。
  11. 入力ピンおよび出力ピンと、前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、前記入力ピンに接続することができ、前記入力ピンの状態に基づいてテスト期間を開始するように構成され、およびテスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するように構成されたテスト制御ロジックとを有する第1の集積回路と、
    入力ピンおよび出力ピンと、前記入力ピンおよび出力ピンに接続することができ、所定の機能を実行するように構成された動作ロジックと、前記出力ピンに接続することができ、ユーザがプログラムできる一組のテスト出力信号を生成するように構成されたテスト制御ロジックを有する第2の集積回路とを備え、
    前記第2の集積回路の出力ピンの少なくとも一部を、前記第1の集積回路の入力ピンの少なくとも一部に接続する、電子システム。
  12. 前記第1の集積回路のテスト制御ロジックは、前記入力ピンの状態が所定の状態に一致すると、前記テスト期間を開始するように構成されている、請求項11に記載の電子システム。
  13. 前記テスト制御ロジックは、前記所定の状態を定めるプログラム可能な手段を有する、請求項12に記載の電子システム。
  14. 前記第1および第2の集積回路のテスト制御ロジックに接続することのできるテスト・コントローラをさらに備え、前記テスト・コントローラは、テスト・コントローラのユーザが、前記第1の集積回路の所定の状態と前記第2の集積回路によって生成される一組の出力信号とをプログラムできるように構成されている、請求項11に記載の電子システム。
  15. 前記テスト・コントローラは、I CおよびJTAGから選択された通信バス・プロトコルにより、前記集積回路と通信する、請求項14に記載の電子システム。
  16. 前記第1および第2の集積回路のテスト制御ロジックの一部は、システム・クロックによってドライブされ、前記システム・クロックは、テスト期間中、前記第2の集積回路のテスト出力信号および前記第1の集積回路のテスト入力信号がシステム・クロックの周波数で変移するように、前記動作ロジックをドライブする、請求項11に記載の電子システム。
  17. 前記テスト制御ロジックは、テスト期間中、チップ・ディセーブル(CD)信号をアサートするように構成され、および前記動作ロジックは、前記CD信号を受信し、前記CD信号がアサートされると、リセット状態になるように構成される、請求項11に記載の電子システム。
  18. 前記第1および第2の集積回路は、プリント回路基板に取付けられる、請求項11に記載の電子システム。
  19. 前記テスト出力信号は、一組の可能なテスト出力状態間で変移し、前記可能なテスト出力状態は、所定のパターン,前記所定のパターンの反転,オール0パターン,オール1パターンを含む、請求項11に記載の電子システム。
  20. 集積回路のテスト方法であって、
    前記集積回路の入力ピンに所定の状態を与えるステップと、
    前記入力ピンの所定の状態に応じて、前記入力ピンの状態が前記集積回路の動作周波数で変移するテスト期間を開始するステップと、
    前記テスト期間中に、前記入力ピンの状態を、記憶デバイスに記録するステップと、
    を含む集積回路のテスト方法。
  21. 前記入力ピンに所定の状態を与える前に、前記所定の状態を、前記集積回路のプログラマブル・ポートにプログラミングするステップをさらに含む、請求項20に記載の集積回路のテスト方法。
  22. 前記テスト期間が終了した後に、前記記憶デバイスから前記入力ピンの記録状態を検索するステップをさらに含む、請求項20に記載の集積回路のテスト方法。
  23. 前記集積回路の入力ピンに所定の状態を与えるステップは、第2の集積回路の出力ピンに一組の出力信号を生成するステップを含み、
    前記第2の集積回路の出力ピンの少なくとも一部を、第1の集積回路の入力ピンの少なくとも一部に接続する、請求項20に記載の集積回路のテスト方法。
  24. 前記第1の集積回路を、受信集積回路として指定し、前記第2の集積回路を、送信集積回路として指定し、前記第2の集積回路の出力ピンが前記テスト期間中にとる状態の系列をプログラミングするステップをさらに含む請求項23に記載の集積回路のテスト方法。
JP2001357027A 2001-11-22 2001-11-22 集積回路およびそのテスト方法 Expired - Fee Related JP3574103B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001357027A JP3574103B2 (ja) 2001-11-22 2001-11-22 集積回路およびそのテスト方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001357027A JP3574103B2 (ja) 2001-11-22 2001-11-22 集積回路およびそのテスト方法

Publications (2)

Publication Number Publication Date
JP2003156536A JP2003156536A (ja) 2003-05-30
JP3574103B2 true JP3574103B2 (ja) 2004-10-06

Family

ID=19168431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001357027A Expired - Fee Related JP3574103B2 (ja) 2001-11-22 2001-11-22 集積回路およびそのテスト方法

Country Status (1)

Country Link
JP (1) JP3574103B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116453581B (zh) * 2023-04-23 2024-04-02 深圳市晶存科技有限公司 存储芯片测试方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
JP2003156536A (ja) 2003-05-30

Similar Documents

Publication Publication Date Title
EP1451599B1 (en) Method and apparatus for embedded built-in self-test (bist) of electronic circuits and systems
US6977960B2 (en) Self test circuit for evaluating a high-speed serial interface
EP2024833B1 (en) Apparatus and method for controlling power, clock, and reset during test and debug procedures for a plurality of processor/cores
JP5302325B2 (ja) プロトコル認識デジタルチャネル装置
JP5272014B2 (ja) 再構成可能なテスターでのテストのための方法
JP3174617B2 (ja) Jtagを用いた高速集積回路試験
US7558984B2 (en) Apparatus and method for test and debug of a processor/core having advanced power management
US6256760B1 (en) Automatic test equipment scan test enhancement
EP0698849B1 (en) Semiconductor integrated circuit which can be tested by an LSI tester having a reduced number of pins
US20030110430A1 (en) Method and system for use of a field programmable gate array (FPGA) function within an application specific integrated circuit (ASIC) to enable creation of a debugger client within the ASIC
US6826100B2 (en) Push button mode automatic pattern switching for interconnect built-in self test
JP2003529145A (ja) 組込み自己試験を使用する信号相互接続を試験するシステムおよび方法
JP2000148528A (ja) 複数のjtag準拠集積回路のテスト装置および複数の集積回路をテストするためのテストシステム
US6578180B2 (en) Method and system for testing interconnected integrated circuits
US6978322B2 (en) Embedded controller for real-time backup of operation states of peripheral devices
JPS61128180A (ja) 自己試験装置
JP3574103B2 (ja) 集積回路およびそのテスト方法
JP3515571B2 (ja) 集積回路の事象認定試験アーキテクチャ
JP4806747B2 (ja) シリアライザ/デシリアライザ・バスコントローラ・インターフェース
JP2006170761A (ja) 半導体集積回路テストシステム
JPH09160802A (ja) テスト装置
TWI774116B (zh) 用於積體電路的自動檢測電路及方法
Dervisoglu Features of a Scan and Clock Resource chip for providing access to board-level test functions
TW200938862A (en) General purpose serial communication using JTAG interface
KR20040098937A (ko) 슬레이브 테스트 버스 제어기능을 갖는 pci 버스 제어기

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040525

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040630

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070709

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees