(57)【要約】【課題】フェイル情報を格納するのに必要なテスト回路の記憶領域を縮小することができる半導体装置を提供する。【解決手段】メモリアクセスによって得られる情報の正否を判定するテスト回路に、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報を第１記憶部（５１）に保持させ、前記特定のフェイル情報に順次連続する前後のフェイル情報の差分を第２記憶部（６１）に保持させる。テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算して後続のフェイル情報を復元する。【選択図】図１
2009181600.tif 000002
【特許請求の範囲】
【請求項１】
テスト回路を有する半導体装置であって、
前記テスト回路は、メモリアクセスによって得られる情報の正否を判定し、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報と、前記特定のフェイル情報に順次連続する前後のフェイル情報の差分とを保持する、半導体装置。
【請求項２】
前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算して後続のフェイル情報を復元する、請求項１記載の半導体装置。
【請求項３】
前記フェイル情報はメモリからリードされたメモリデータとこれに対応するメモリアドレスとを含む、請求項１記載の半導体装置。
【請求項４】
前記テスト回路は、前記フェイル情報に含まれる前記メモリデータとメモリアドレスを分けて差分を取得する、請求項３記載の半導体装置。
【請求項５】
前記テスト回路は、前記特定のフェイル情報に順次連続する前後のフェイル情報に含まれる前記メモリデータとメモリアドレスの夫々を複数のグループに分けて対応するグループ毎に差分を取得して保持する、請求項４記載の半導体装置。
【請求項６】
前記テスト回路は、グループに分けて取得された差分とグループとの対応を規定するグループ情報を生成し、差分がゼロのグループの差分の情報を保持の対象から除外する、請求項５記載の半導体装置。
【請求項７】
前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算する処理を前記対応するグループ毎に行なって後続のフェイル情報を復元する、請求項６記載の半導体装置。
【請求項８】
前記テスト回路は、前記復元する場合に、前記グループ情報に基づいてグループ毎の加算対象を整合させる、請求項７記載の半導体装置。
【請求項９】
前記テスト回路をテスタに接続するためのテストインタフェース回路を更に有し、
前記テストインタフェース回路は前記テスト回路によるメモリアクセス速度よりも遅いデータ入出力速度を有する、請求項１記載の半導体装置。
【請求項１０】
メモリをアクセスするための制御回路を更に有する、請求項９記載の半導体装置。
【請求項１１】
前記メモリを更に有する、請求項１０記載の半導体装置。
【請求項１２】
前記制御回路、前記テスト回路、前記テストインタフェース回路及び前記メモリは１個の半導体チップに形成されている、請求項１１記載の半導体装置。
【請求項１３】
前記制御回路、前記テスト回路及び前記テストインタフェース回路は１個の半導体チップに形成され、前記メモリは別の半導体チップに形成され、
当該１個の半導体チップと前記別の半導体チップは、配線基板に搭載されて電気的に接続され樹脂で封止された、請求項１２記載の半導体装置。
【請求項１４】
テスト回路を有する半導体装置であって、
前記テスト回路は、メモリアクセスによって得られる情報の正否を判定する判定部と、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報を保持すると共に、前記特定のフェイル情報に順次連続する前後のフェイル情報の夫々を複数のグループに分けて対応するグループ毎に取得された差分を保持する記憶部とを有する、半導体装置。
【請求項１５】
前記テスト回路は、グループに分けて取得された差分とグループとの対応を規定するグループ情報を生成し、差分がゼロのグループの差分の情報を保持の対象から除外する、請求項１４記載の半導体装置。
【請求項１６】
前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算する処理を前記対応するグループ毎に行なって後続のフェイル情報を復元する、請求項１５記載の半導体装置。
【請求項１７】
前記テスト回路は、前記復元する場合に、前記グループ情報に基づいてグループ毎の加算対象を整合させる、請求項１６記載の半導体装置。
【請求項１８】
テスト回路と、前記テスト回路をテスタに接続するためのテストインタフェース回路とを有する半導体装置であって、
前記テスト回路は、メモリアクセスによって得られる情報の正否を判定する判定部と、所定のタイミングで前記判定部により得られた否の判定結果に応ずるフェイル情報を保持する第１記憶部と、連続する前後の否の判定結果に応ずるフェイル情報の差分を順次取得する差分取得部と、前記差分取得部で取得された差分情報を保持する第２記憶部と、を有し、
前記テストインタフェース回路は前記テスト回路によるメモリアクセス速度よりも遅いデータ入出力速度を有する、半導体装置。
【請求項１９】
前記テストインタフェース回路は、IEEE１１４９．１準拠のＴＡＰコントローラである、請求項１８記載の半導体装置。
【請求項２０】
前記テスト回路は更に、第１記憶部のフェイル情報と第２記憶部の差分情報を用いて連続するフェイル情報を復元する復元部を有する請求項１８記載の半導体装置。
【請求項２１】
前記差分取得部は、前記第１記憶部にフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得し、
前記復元部は、前記第１記憶部が保持するフェイル情報に順次後続の差分を加算して後続のフェイル情報を復元する、請求項２０記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリのテストを行うＢＩＳＴ（ビルトインセルフテスト）回路のようなテスト回路を備えた半導体装置に関し、システム・オン・チップ形態の半導体装置、更には当該システム・オン・チップ形態のデータプロセッサチップと共にメモリチップを搭載したシステム・イン・パッケージ形態の半導体装置に適用して有効な技術に関する。
【背景技術】
【０００２】
本発明の完成後に行った先行技術調査において以下の公知文献が見出された。特許文献１には、同一パッケージに搭載されたロジックとメモリをＢＩＳＴ回路でテストする動作モードを備えた半導体装置について記載がある。特許文献２には、自己診断回路を有し、メモリを内蔵する半導体において故障を検出した場合その位置情報を記憶し、これを圧縮して出力するテスト回路について記載がある。特許文献３には、ＤＲＡＭのテストにおいてギャロッピングモードのようなテストにおいて複数回の同一アドレスエラーを圧縮部で圧縮してフェイルデータの書き込み頻度を低減する技術について記載がある。
【０００３】
【特許文献１】特開２００６−１３８６４５号公報
【特許文献２】特開平１１−１６３９３号公報
【特許文献３】特開平１０−５５６９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明者は、メモリをアクセス制御可能なデータプロセッサのような半導装置におけるメモリのセルフテスト機能について先に検討した。データプロセッサにオンチップされたメモリ、或いはデータプロセッサと一緒に実装されて単一モジュール化されたメモリに対するテストは、当該データプロセッサのＣＰＵにテストプログラムを実行させてメモリコントローラ経由で行うことも可能である。この手法により種々のメモリテストを行うには、メモリコントローラの仕様が明らかにされていなければならない。顧客仕様によってメモリコントローラの設計が行われ、或いはＩＰ（Intellectual Property）モジュールと称されるような設計資産をそのまま用いたメモリコントローラを採用する場合には、そのメモリコントローラの仕様が明らかになっていないので、当該メモリコントローラを用いたメモリテストに機能的な制約を受けることが余儀なくされる。これらを考慮すれば、テスト設計のコストを低減するには、メモリテストにはＢＩＳＴ回路を採用することが有用である。この観点については、本出願人が先に特許出願（平成１９年４月１７日提出の特願２００７−１０７７７２）を行っており、また、それについては上記何れの特許文献にも記載はない。
【０００５】
本発明者は、メモリテスト動作でフェイルメモリデータやフェイルメモリアドレス等のフェイル情報を複数取得することができるＢＩＳＴについて検討した。特許文献２はフェイル情報の出力に際して情報圧縮を行って、テスタへの情報出力時間の短縮を図っているが、フェイル情報を保持する記憶領域の縮小には寄与しない。特許文献３は同一アドレスについて発生した複数回のエラーに係るフェイルデータを圧縮することによって不良解析メモリにフェイルデータを書き込む頻度を低減するに止む。何れの文献においても、メモリテストによって取得したフェイル情報の格納に必要な記憶領域（フェイルメモリ領域）を小さくするには限界がある。一度のメモリテストでまとまったフェイルデータを保持することができなければ、メモリテストを複数回に分けることが必要になり、テスト効率が低下する。その上、ノイズに起因するフェイルの場合には測定する毎にフェイルを生ずるアドレスが変動することがあるため、メモリテストを複数回に分けたのではノイズに起因するフェイルの状態を把握することが困難になることも考えられる。
【０００６】
本発明の目的は、フェイル情報を格納するのに必要なテスト回路の記憶領域を縮小することができる半導体装置を提供することにある。
【０００７】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００９】
すなわち、メモリアクセスによって得られる情報の正否を判定するテスト回路に、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報と、前記特定のフェイル情報に順次連続する前後のフェイル情報の差分とを保持させる。
【発明の効果】
【００１０】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１１】
すなわち、フェイル情報を格納するのに必要なテスト回路の記憶領域を縮小することができる。
【発明を実施するための最良の形態】
【００１２】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１３】
〔１〕本発明に係る半導体装置はテスト回路（４１）を有する。前記テスト回路は、メモリアクセスによって得られる情報の正否を判定し、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報（１ｓｔＦＭＡ，１ｓｔＦＭＤｒ）と、前記特定のフェイル情報に順次連続する前後のフェイル情報の差分とを保持する。前後のフェイル情報に対してその差分を保持するから、フェイル情報を格納するのに必要なテスト回路の記憶領域を縮小することができる。
【００１４】
〔２〕項１において、例えば前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算して後続のフェイル情報を復元する。これによれば、フェイル情報の復元順序を昇順（フェイル情報の発生順序）とすることができる。これに対して、差分に加算してフェイル情報を復元するための基準とするフェイル情報を最後の差分を取得するのに用いたフェイル情報とした場合には、当該フェイル情報を基点に遡る方向に順次続く差分を加算してフェイル情報を復元することになり、フェイル情報の復元順序が降順になる。
【００１５】
〔３〕項１において、前記フェイル情報は、例えばメモリからリードされたメモリデータとこれに対応するメモリアドレスとを含む。場合によっては何れか一方だけとすることも可能である。
【００１６】
〔４〕項３において、例えば前記テスト回路は、前記フェイル情報に含まれる前記メモリデータとメモリアドレスを分けて差分を取得する。メモリテストにおいてフェイルの発生要因若しくはフェイルの傾向はアドレスとデータの間で大きく相違される場合がある。
【００１７】
〔５〕項４において、前記テスト回路は、例えば前記特定のフェイル情報に順次連続する前後のフェイル情報に含まれる前記メモリデータとメモリアドレスの夫々を複数のグループに分けて対応するグループ毎に差分を取得して保持する。差分を採るフェイル情報の間で部分的に一致する部分があるか否かをグループ単位で把握可能になる。
【００１８】
〔６〕項５において、前記テスト回路は、例えばグループに分けて取得された差分とグループとの対応を規定するグループ情報（ＧｒＩＮＦ）を生成し、差分がゼロのグループの差分の情報を保持の対象から除外する。フェイル情報を格納するのに必要な記憶領域を更に縮小することが可能になる。保持の対象から除外されたグループはこれによって欠落したグループ情報から明らかになる。
【００１９】
〔７〕項６において、前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算する処理を前記対応するグループ毎に行なって後続のフェイル情報を復元する。
【００２０】
〔８〕項７において、前記テスト回路は、前記復元する場合に、前記グループ情報に基づいてグループ毎の加算対象を整合させる。
【００２１】
〔９〕項１において、例えば前記テスト回路をテスタに接続するためのテストインタフェース回路を更に有する。前記テストインタフェース回路は前記テスト回路によるメモリアクセス速度よりも遅いデータ入出力速度を有する。フェイル情報を格納する記憶領域があればそのような速度差があっても大丈夫である。
【００２２】
〔１０〕項９において、例えばメモリをアクセスするための制御回路を更に有する。テスト回路があるのでテストに制御回路を流用することを要しない。
【００２３】
〔１１〕項１０において、例えば半導体装置は前記メモリを更に有する。
【００２４】
〔１２〕項１１において、前記制御回路、前記テスト回路、前記テストインタフェース回路及び前記メモリは例えば１個の半導体チップに形成されている。
【００２５】
〔１３〕項１２において、前記制御回路、前記テスト回路及び前記テストインタフェース回路は１個の半導体チップに形成され、前記メモリは別の半導体チップに形成され、当該１個の半導体チップと前記別の半導体チップは、配線基板に搭載されて電気的に接続され樹脂で封止されている。前記１個の半導体チップと前記別の半導体チップとの間を接続する配線はノイズの影響を受け易くなりそれに起因するノイズよりフェイルが起きた場合に前記テスト回路により複数のフェイル情報を取得することができるから、ノイズに起因したフェイ状態を把握してフェイル解析を行うことができる。
【００２６】
〔１４〕本発明に係る半導体装置はテスト回路を有する。このテスト回路は、メモリアクセスによって得られる情報の正否を判定する判定部と、否の判定結果に応じて順次得られるフェイル情報の内の特定のフェイル情報を保持すると共に、前記特定のフェイル情報に順次連続する前後のフェイル情報の夫々を複数のグループに分けて対応するグループ毎に取得された差分を保持する記憶部とを有する。前後のフェイル情報に対してその差分を保持するから、フェイル情報を格納するのに必要なテスト回路の記憶領域を縮小することができる。しかも、差分を採るフェイル情報の間で部分的に一致する部分があるか否かをグループ単位で把握可能になる。
【００２７】
〔１５〕項１４において、例えば前記テスト回路は、グループに分けて取得された差分とグループとの対応を規定するグループ情報を生成し、差分がゼロのグループの差分の情報を保持の対象から除外する。フェイル情報を格納するのに必要な記憶領域を更に縮小することが可能になる。保持の対象から除外されたグループはこれによって欠落したグループ情報から明らかになる。
【００２８】
〔１６〕項１５において、例えば前記テスト回路は、前記特定のフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する場合、前記特定のフェイル情報に順次後続の差分を加算する処理を前記対応するグループ毎に行なって後続のフェイル情報を復元する。
【００２９】
〔１７〕項１６において、例えば前記テスト回路は、前記復元する場合に、前記グループ情報に基づいてグループ毎の加算対象を整合させる。
【００３０】
〔１８〕本発明に係る半導体装置はテスト回路と、前記テスト回路をテスタに接続するためのテストインタフェース回路とを有する。前記テスト回路は、メモリアクセスによって得られる情報の正否を判定する判定部（５０）と、所定のタイミングで前記判定部により得られた否の判定結果に応ずるフェイル情報を保持する第１記憶部（５１）と、連続する前後の否の判定結果に応ずるフェイル情報の差分を順次取得する差分取得部（６０）と、前記差分取得部で取得された差分情報を保持する第２記憶部（６１）とを有する。前記テストインタフェース回路は前記テスト回路によるメモリアクセス速度よりも遅いデータ入出力速度を有する。そのような速度差を吸収するのに必要とされる記憶領域としての第２記憶部は前後のフェイル情報に対してその差分を保持するから必要な記憶領域の縮小が可能にされる。
【００３１】
〔１９〕項１８において、前記テストインタフェース回路は、例えばIEEE１１４９．１準拠のＴＡＰコントローラである。
【００３２】
〔２０〕項１８において、例えば前記テスト回路は更に、第１記憶部のフェイル情報と第２記憶部の差分情報を用いて連続するフェイル情報を復元する復元部（６２）を有する。
【００３３】
〔２１〕項２０において、例えば前記差分取得部は、前記第１記憶部にフェイル情報を保持した時の否の判定結果を基点に順次得られるフェイル情報に基づいて差分を取得する。例えば前記復元部は、前記第１記憶部が保持するフェイル情報に順次後続の差分を加算して後続のフェイル情報を復元する。
【００３４】
２．実施の形態の詳細
実施の形態について更に詳述する。以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。なお、発明を実施するための最良の形態を説明するための全図において、同一の機能を有する部材には同一の符号を付し、その繰り返しの説明は省略する。
【００３５】
《半導体モジュール》
図２には本発明に係る半導体装置の一例である半導体モジュールが例示される。同図に示される半導体モジュール1は、裏面に半田バンプ電極等の外部接続電極を多数備え表面に配線パターンが形成されたモジュール基板２に、ＳｏＣ（System on Chip）化されたマイクロコンピュータ（ＭＣＵ）３と、ＤＤＲ２（Double Data Rate2）等のＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）４が搭載され、表面が樹脂パッケージ(ＰＫＧ)５で封止された、ＳｉＰ(System in Package)形態で構成される。ＳＤＲＡＭ４はスペーサ（ＳＰＣ）６を介して２個が積層される。マイクロコンピュータ３とＳＤＲＡＭ４は夫々個別の半導体チップに形成されており、ベアチップであってもよいし、パッケージされていてもよい。マイクロコンピュータ３とＳＤＲＡＭ４はボンディングワイヤ等のワイヤ（ＷＩＲ）７で対応する配線パターンに接続される。８はマイクロコンピュータ３とＳＤＲＡＭ４を接続するデータ、アドレス及びアクセス制御信号の信号配線を総称する。
【００３６】
図３には半導体モジュール１の機能ブロックが示される。ここでは、ＳＤＲＡＭ4に対するメモリテストのためのマイクロコンピュータ３の構成を特に示している。マイクロコンピュータ３による本来のデータ処理機能を実現するための大部分の構成は簡略化して回路ブロック１０で総称される。回路ブロック１０は、命令をフェッチして実行する中央処理装置（ＣＰＵ）、アクセス頻度の高いデータや命令を連想検索によって出力可能に保持するキャッシュメモリ（ＣＡＣＨＥ）、ＣＰＵ等からのアクセス対象アドレスエリアに応じたバス制御を行うバスステートコントローラ（ＢＳＣ）、及びＢＳＣに周辺バスを介して接続するタイマ等の周辺回路（ＰＲＰＨ）等を含んでいる。メモリコントローラ（ＭＣＮＴ）１２は周辺回路の一つであり、前記ＣＰＵ等からのアクセス要求に応答して外部メモリに対するメモリ制御を行う回路であり、例えばＳＤＲＡＭ４に対するＲＡＳ（ロウ・アドレス・ストローブ）、ＣＡＳ（カラム・アドレス・ストローブ）に同期するアドレスマルチプレクスを行ったアドレス出力制御、コマンド出力制御、リフレッシュ制御等を行う。特にここでは、ＳＤＲＡＭ４としてデータストローブの夫々のエッジ変化に同期してデータの入出力が可能にされるＤＤＲ２形態を想定しており、ＤＤＲ２の物理インタフェース仕様に対応した物理インタフェース回路（ＰＨＹ）１３を備え、ＳＤＲＡＭ４は物理インタフェース回路１３を介してメモリコントローラ１２に接続される。物理インタフェース回路１３はＤＤＲ２形態のＳＤＲＡＭの外部インタフェースの内の物理層のインタフェース仕様を満足させる回路である。例えばＤＤＲ２形態のＳＤＲＡＭの物理インタフェース回路１３はクロック信号の差動出力、データストローブ信号に対する差動入出力やデータ入出力のための回路等を有する。ＤＤＲ形態ＳＤＲＡＭの場合の物理インタフェース回路はデータストローブ信号の差動入出力を行うことを要しない。物理インタフェースの回路の構成は使用する外部メモリの仕様によって一義的に決まり、ＤＲＡＭ或いはＳＤＲ（Single Data Rate）形態にＳＤＲＡＭの場合には単なる外部端子で済む。
【００３７】
図３において、テスト回路（ＢＩＳＴ）２０、テスト制御回路（ＢＩＳＴＣ）２１、クロック選択回路（ＣＬＫＳＥＬ）２２、ＴＡＰコントローラ（ＴＡＰＣ）２３、及びマルチプレクサ（ＭＵＸ）２４は、ＳＤＲＡＭ４に対するセルフテストのために組み込まれた構成である。
【００３８】
マルチプレクサ２４は物理インタフェース回路１３に前記メモリコントローラ１２又テスト回路２０を切り替え可能に接続する。その制御はテスト制御回路２１によって行われる。
【００３９】
ＴＡＰコントローラ２３はＩＥＥＥ１１４９．１に準拠した外部インタフェース機能を備え、外部のテスタ（ＴＳＴＲ）２４とＪＴＡＧ端子を介してインタフェースされ、テスト制御回路との間で制御信号やテスト信号の入出力を行う。
【００４０】
ＴＡＰコントローラ２３の具体的な構成は図４に例示される。ＴＡＰコントローラ２３は、テストアクセスポート（ＴＡＰ）３０、コマンドレジスタ（ＳＤＩＲ）３１、デコーダ（ＳＤＤＥＣ）３２、バイパスレジスタ（ＳＤＢＰＲ）３３、及びマルチプレクサ（ＭＵＸ＿ＳＤ）３４を有する。ＴＡＰコントローラ２３はモード端子ＴＭＳ、クロック端子ＴＣＫ、リセット端子ＴＲＳＴ、データ入力端子ＴＤＩ、及びデータ出力端子ＴＤＯの全５ビットを有する。メモリテストを行うとき、それら端子は前記テスタ２４に接続される。ＴＡＰコントローラ２３は、クロック端子ＴＣＫに入力されるクロック信号に同期して、データ入力端子ＴＤＩからデータを取り込み、データ出力端子ＴＤＯからデータを出力する。クロック端子ＴＣＫに入力されるクロック信号に同期してモード端子ＴＭＳの値を変化させることで、入力端子ＴＤＩから入力するデータの意味を決定することができる。このプロトコルはＩＥＥＥ１１４９．１で規定されている状態遷移に準拠し、それに従って入力データがコマンドであるのかデータであるのかが決まる。データ入力端子ＴＤＩからデータ出力端子ＴＤＯの間には幾つかのスキャンレジスタの直列回路であるスキャンパスレジスタ回路（ＳＰＲＥＧ）３５が配置される。スキャンパスレジスタ回路３５はテスト回路２１の内部に配置されたデータレジスタや制御レジスタ等を所定の順番でシフトレジスタ形態に直列された回路構成を有する。デコーダ３２はコマンドレジスタ３１に入力されたコマンドをデコードして、ＢＩＳＴ制御信号３６を生成する。ＢＩＳＴ制御信号３６は前記スキャンパスの選択とその切り替え、入力データがコマンドであるのかデータであるのかの選択をする。これによって、テスト回路２１内部のスキャンパスレジスタ回路３５を構成する内部データレジスタや制御レジスタ等にデータ入力端子ＴＤＩからデータや制御情報をセットし、また、データレジスタ等が保有するフェイル情報等のテスト結果をデータ出力端子ＴＤＯから取り出すことができる。テスト回路２０のテスト動作、マルチプレクサ１３の選択動作、クロック選択回路２２の選択動作は、前記スキャンパスレジスタ３５内の制御レジスタにセットされた制御情報に従って制御される。尚、バイパスレジスタ３３はデータ入力端子ＴＤＩから入力したデータをＴＤＯにバイパスさせるためのレジスタである。マルチプレクサ３４はデータ出力端子ＴＤＯに接続する経路を選択する。
【００４１】
図３に示されるクロック選択回路２２はテスタ２４から選択信号ＴＣＫＳＥＬ、ＩＣＫＳＥＬに従ってテスト回路２０の同期クロックを選択する。選択信号ＴＣＫＳＥＬがイネーブルにされると、テスト回路２０はクロック端子ＴＣＬに供給されるテストクロック信号に同期して低速動作される。選択信号ＩＣＫＳＥＬがイネーブルにされると、テスト回路２０はマイクロコンピュータ３のデータ処理動作に用いるシステムクロック信号に同期して高速動作される。システムクロック信号に同期するテスト回路２０の動作は、例えばＳＤＲＡＭ４をリードライトしながらリードデータの正否（pass:パス／fail:フェイル）を判定する動作である。テストクロックに同期するテスト回路２０の動作は、例えばテスト回路２０で取得した正否判定結果に係るフェイル情報をテスト制御回路２１およびＴＡＰコントローラ２３を介してテスタ２４に読み出す動作等とされる。
【００４２】
テスト回路２０は図３に例示されるようにパターンジェネレータ（ＡＰＧ）４０とフェイル情報取得回路（ＦＬＩＧＣ）４１を有する。テスタ２４からＪＴＡＧ端子（ＴＣＫ、ＴＭＳ、ＴＤＩ、ＴＤＯ、ＴＲＳＴ）に信号が与えられると、ＴＡＰコントローラ２３がテスト制御回路２１へ制御信号（ＣＮＴＤ）を送り、それに従ってテスト回路２０が起動される。これによりパターンジェネレータ４０はＳＤＲＡＭ４をコントロールするコマンド（ＣＭＤ）、メモリアドレス（ＭＡ）、データ（ＭＤｗ，Ｄｅｘｐ）を発生し、物理インタフェース回路１３を介してＳＤＲＡＭ４のテストを行う。ＡＰＧ４０はライトコマンドを発行するときメモリライトデータＭＤｗをＳＤＲＡＭ４に供給して書き込む。ＡＰＧ４０はリードコマンドを発行するとき期待値データＤｅｘｐをフェイル情報取得回路４１に供給する。フェイル情報取得回路４１は、ＳＤＲＡＭ４から読み出されたメモリリードデータＭＤｒと期待値データＤｅｘｐを参照してパス／フェイルの判定を行い、その判定結果に従った情報を取得する。
【００４３】
《フェイル情報取得回路》
図１にはフェイル情報取得回路４１の具体例が示される。フェイル情報取得回路４１は、パス・フェイル（Pass/Fail）判定部（ＰＦＤＥＴ）５０、特定フェイル情報格納部（ＦＬＩｎＳ）５１、及び複数フェイル情報取得部（ＰＩＰＵ）５２を有する。
【００４４】
パス・フェイル判定部５０では比較イネーブル信号ＥＮｃｍｐが有効（ハイレベル）なときにメモリリードデータＭＤｒと期待値データＤｅｘｐとの比較を行う。メモリリードデータＭＤｒと期待値データＤｅｘｐが不一致のときパス・フェイル判定部５０はハイレベルのフェイルフラグＦＦＬＧを出力する。比較結果が不一致の時のメモリリードデータＭＤｒをフェイルデータＦＭＤｒｙと称し、これに対応するメモリアドレスＭＡをフェイルアドレスＦＭＡと称する。フェイルフラグＦＦＬＧはフラグラッチ（ＬＡＴＦ）５９にラッチされる。フラグラッチ５９は、一旦ハイレベルのフェイルフラグＦＦＬＧをラッチすると、テスト制御回路２１からリセットが指示されるまでその状態を保持する。ラッチ回路５９の出力はパス／フェイル信号ＰＳ／ＦＬとしてテスト制御回路２１に供給される。
【００４５】
特定フェイル情報格納部５１は一つのフェイルデータＦＭＤｒをラッチするためのラッチ回路（ＬＡＴＤ）５３と、それに対応する一つのフェイルアドレスＦＭＡをラッチするためのラッチ回路（ＬＡＴＡ）５４を有する。ラッチ回路５３，５４に任意のフェイル箇所のフェイルデータとフェイルアドレスを取得できるように、ハイレベルのフェイルフラグの発生回数がプリセット値に達したときカウントアップ信号を出力するフェイルカウンタ（ＦＬＣＵＮＴ）５５と、カウントアップ信号を受けてラッチイネーブルパルスＥＮｌａｔを生成するラッチイネーブル生成回路（ＬＴＥＮＧ）５６を有する。解析モード信号ＭＤａｎが有効な場合にはプリセット値は１にされ、最初にフェイルフラグＦＬＦＬＧが有効になったときラッチイネーブルパルスＥＮｌａｔを発生させて、ラッチ回路５３に最初のフェイルデータ（１ｓｔＦＭＤｒ）を、ラッチ回路５４に最初のフェイルアドレス（１ｓｔＦＭＡ）をラッチさせる。ラッチ回路５３，５４に対するリセット指示はテスト制御回路２１から与えられる。尚、解析モード信号ＭＤａｎが無効なときフェイルカウンタ５５にはテスト制御回路２１から任意の値がプリセット可能にされる。
【００４６】
特定フェイル情報取得部５２は差分取得回路（ＤＩＦＧ）６０、差分情報格納レジスタ（ＤＩＦＲｅｇ）６１、復元回路（ＤＥＣＭＰ）６２で構成される。差分取得回路６０は解析モード信号ＭＤａｎが有効にされているとき、フェイルデータ（ＦＭＤｒ）とフェイルアドレス(ＦＭＡ)の夫々について前後のデータ間の差分を取得する。取得された差分は差分情報格納レジスタ６１に格納される。差分情報格納レジスタ６１に格納された差分情報は順次復元回路６２に読み出される。復元回路６２は、ラッチ回路５３，５４から供給される最初のフェイル情報１ｓｔＦＭＧｒ，１ｓｔＦＭＡに順次後続の差分を加算して後続のフェイル情報を復元する。復元されたフェイル情報ＦＬＩはテスト制御回路２１に供給される。尚、解析モード信号ＭＤａｎが無効な場合にはラッチ回路５３，５４にラッチされたフェイル情報ＦＭＡ，ＦＭＤｒがそのままフェイル情報ＦＬＩとしてテスト制御回路２１に供給される。
【００４７】
図５には差分取得回路６０の具体例が示される。ここではメモリアドレスＭＡをｘメモリアドレスＭＡｘ＝１２ビット、ｙメモリアドレスＭＡｙ=８ビット、ｚメモリアドレスＭＡｚ＝２ビットとし、メモリデータＭＤｒ＝１２８ビットとするバス構成の場合について説明する。差分取得回路６０はｘフェイルアドレス差分取得回路（ＡｘＤＩＦＧ）１００、ｙフェイルアドレス差分取得回路（ＡｙＤＩＦＧ）１０１、ｚフェイルアドレス差分取得回路（ＡｚＤＩＦＧ）１０２、及びフェイルデータ差分取得回路（ＤｒＤＩＦＧ）１０３から成る。
【００４８】
ｘフェイルアドレス差分取得回路１００は、直列２段に接続されたシフトレジスタ形式のｎ番目ｘフェイルアドレスラッチ１１０とｎ−１番目ｘフェイルアドレスラッチ１１１とを有し、フェイル発生時にn番目ｘフェイルアドレスラッチ１１０とｎ−１番目ｘフェイルアドレスラッチ１１１とで前後二つのフェイルアドレスを保持し、保持されたフェイルアドレスは夫々は４ビット毎のグループに分割される。分割されたグループ毎に差分回路（ＧｒＡＤＩＦ，ＧｒＢＤＩＦ，ＧｒＣＤＩＦ）１１３，１１４，１１５が設けられる。各グループ毎に分割されたフェイルアドレスは減算器（ＳＵＢ）１１６で差分が演算される。演算された差分は、１ビットの符号ビットを有する全５ビットにされる。各グループの差分には、グループ毎に差分があるか否かを示す１ビットのグループフェイルフラグＦａｉｌ＿ＧｒＡと、４ビットのグループ識別情報が付加される。差分回路１１３に例示されるように、グループフェイルフラグＦａｉｌ＿ＧｒＡは、差分が全ビット０でなければ（当該グループに差分あり）、そのときのフェイルフラグＦＦＬＧの論理値（論理値１）が与えられ、差分が全ビット０であれば（当該グループに差分なし）、論理値０が与えられる。グループ識別情報はグループ情報追加回路（ＧｒｎＧ）１１７によって付加される。ここではアドレスとデータに分けてグループ情報を付与し、アドレスを６グループに分割するので、アドレスのグループ識別情報は３ビットとされる。差分回路１１３は、５ビットの差分値、１ビットのグループフェイルフラグ、および３ビットのグループ識別情報の全部で９ビットの差分情報ｄｉｆｆＡを出力する。同様に差分回路１１４、１１５は夫々９ビットの差分情報ｄｉｆｆＢ，ｄｉｆｆＣを同様に生成して出力する。
【００４９】
ｙフェイルアドレス差分取得回路１０１およびｚフェイルアドレス差分取得回路１０２についてもｘフェイルアドレス差分取得回路１００と同様に構成される。ｙフェイルアドレス差分取得回路１０１は２グループに分けて差分情報ｄｉｆｆＤ、ｄｉｆｆＥを生成し、ｚフェイルアドレス差分取得回路１０３はグループに分けを行わずに差分情報ｄｉｆｆＦを生成する。
【００５０】
フェイルデータ差分取得回路１０３も上記同様に構成され、１２８ビットのフェイルデータを８ビット単位で１６グループに分割し、グループ単位に、９ビットの差分値、１ビットのグループフェイルフラグ、及び４ビットのグループ識別情報を含む夫々14ビットの差分情報ｄｉｆｆＧ〜ｄｉｆｆＶを出力する。
【００５１】
上記差分取得回路６０はｎ番目とｎ−１番目の前後のフェイル情報の間で差分を求め、差分のあったグループのフェイル情報のみを蓄積の対象にしようとするものである。これは、ノイズ起因等でのフェイルが発生したような場合には、フェイル発生アドレスから連続でフェイルが起こることがあり、差分を取ることによって蓄積する情報量を小さくする為である。差分取得方法として、ｎ番目とｎ−１番目の前後のフェイル情報の間で差分を求める方法以外にも、常に最初のフェイル情報（１ｓｔＦＭＤｒ，１ｓｔＦＭＡ）との差分を取る方法もある。ただし、その場合は差分値の変化が大きく、蓄積する情報量が多くなってしまう。隣り合うフェイルアドレスの差分を取ることで情報量を大きく削減することができる。また、グループ分割せずに、フェイル情報を蓄積する方法もあるが、常に全ビットの情報を蓄積することになるため、分割する場合に比べて回路規模が大きくなってしまう。
【００５２】
グループ分による回路規模縮小の効果について説明する。例えば、アドレスを（ｘ，ｙ，ｚ）＝（０，０，０）→（９９，０，０）まで＋１ずつ動かし、データ[7:0]が毎回フェイルした場合を一例とする。この条件の下で、フェイル情報をそのまま蓄積(差分取得せず、且つグループ分割しない)とした場合、フェイルアドレスのデータ量は、アドレス全ビット(２２ビット)×フェイル数(１００)=２２００ビットとなり、フェイルデータのデータ量は、データ幅(１２８ビット)×フェイル数(１００)=１２８００ビットとなる。データ量の合計は、２２００ビット＋１２８００ビット＝１５０００ビットになる。一方、本発明を適用した場合(差分取得し、且つグループ分割するには、フェイルアドレスのデータ量は、１ｓｔＦＭＡ（２２ビット）＋１グループ(９ビット)×フェイル数(９９+６)=９６７ビットとなり、フェイルデータのデータ量は、１ｓｔＦＭＤｒ（１２８ビット）＋1グループ(１４ビット)×フェイル数(９９)=１５１４ビットとなる。データ量の合計は、９６７ビット＋１５１４ビット＝２４８１ビットになる。この結果を踏まえ、１ビット保持するためのレジスタのゲート数を４ゲート（Ｇ）とすると、本発明の適用前のレジスタゲート数は１５０００×４=６００００ゲート、本発明の適用後のレジスタゲート数は２４８１×４＝９９２４ゲートになり、回路規模を大凡１／6に縮小することができる。尚、上記フェイルアドレスのデータ量を求める際の“フェイル数(９９+６)”は以下の考え方により求まる。即ち、Xアドレス(１２ビット)を[11:8],[7:4],[3:0]の3グループに分けると、Xアドレスが0〜99まで連続フェイルした時、すなわち12'b000000000000〜12'b000001100011まで連続フェイルした場合、[3:0]のグループは毎回フェイルするのでフェイル数は９９となり、[7:4]のグループは１６回に１回フェイルするのでフェイル数は６となり、[11:8]のグループは変化しないのでフェイル数は０となる。従って、フェイル数の合計は(９９＋６)となる。
【００５３】
メモリテストにおいてフェイルの発生要因若しくはフェイル内容の傾向はアドレスとデータの間で大きく相違されることがあり、これを考慮すれば、上述のようにグループ分けをアドレスとデータで夫々別々に行うことにより、グループ内での差分の発生要因がアドレスとデータのグループ間にまたがることがなくなり、結果として、蓄積すべきフェイル情報量が無駄に大きくなる事態を抑制することができる。
【００５４】
図６には差分情報格納レジスタ６１の具体例が示される。差分情報格納レジスタ６１はフェイルアドレス格納部（ＦａＤＩＦＲｅｇ）１２０とフェイルデータ格納部（ＦｄＤＩＦＲｅｇ）１２１に有する。
【００５５】
フェイルアドレス格納部１２０はレジスタアレイ（ＲＡＲＹ）１２３、レジスタセレクタ１２４、および書き込み制御回路（ＷＲＣＮＴ）１２５を有する。書き込み制御回路１２５はアドレス系の差分情報ｄｉｆｆＡ〜ｄｉｆｆＦを入力し、差分情報をレジスタアレイ１２３に書き込むためのライトポインタアドレスＷＲＰｎｔの生成、ライトポインタアドレスＷＲＰｎｔに従って書き込むべき差分情報ｄｉｆｆＡ〜ｄｉｆｆＦの並び替え、差分の在る最終グループを識別するための最終グループフラグＥＧｒＦＬＧの付加を行う。差分情報の並び替えは、差分情報ｄｉｆｆＡ〜ｄｉｆｆＦの夫々に対してグループ毎のグループフェイルフラグ（Ｆａｉｌ＿ＧｒＡ）を参照し、グループフェイルフラグが０の差分情報を差分情報の配列の最後尾に移す操作とされる。したがって、グループフェイルフラグが０の差分情報すなわち差分の無い差分情報は、グループフェイルフラグが１の差分情報すなわち差分の在る差分情報の後ろに配置される。最終グループフラグＥＧｒＦＬＧは夫々の差分情報の最上位に付加され、差分の在る最終グループの最終グループフラグＥＧｒＦＬＧはＨ（論理値１若しくはハイレベル）にセットされる。一つのフェイルアドレスにつき最終グループフラグがＨにされた差分情報までの範囲が差分の在る情報の配列になる。ライトポインタアドレスは差分情報を書き込む先頭番地を指し、レジスタセレクタ１２４はその先頭番地から６グループ分の差分情報ｄｉｆｆＡ〜ｄｉｆｆＦを同時にレジスタアレイ１２１３に書き込むようにレジスタの選択を行う。このとき差分のなかった差分情報を上書きするように次のライトポインタアドレスＷＲＰｎｔの値を更新する。したがって、最終的に差分の在ったグループの差分情報がレジスタアレイ１２３に保持されることになり、差分の無いグループの差分情報を保持するためにレジスタを無駄に使用することを抑制でき、この点においても記憶容量の縮小に寄与することができる。テスト終了後にレジスタアレイ１２３から差分情報を読出すときは、レジスタアレイ１２３をシフトレジスタ動作に切換えて、差分情報単位で最終グループフラグ（ＥＧｒＦＬＧ）、グループ情報（ＧｒＩＮＦ）、及び差分値（ＤＩＦ）を順次並列的に読出し可能にされる。特に詳細な図示は省略するがフェイルデータ格納部（ＦｄＤＩＦＲｅｇ）１２１も上記同様に構成される。
【００５６】
図７にはフェイルアドレス取得時のタイミング波形が例示される。図では(ｘ，ｙ，ｚ)=(０，０，０)で第１フェイル、(１，０，１)で第２フェイル,(７，４，３)で第３フェイルを生じた場合の波形を示す。比較イネーブル信号ＥＮｃｍｐがH（ハイレベル）の期間にリードデータＭＤｒと期待値Ｄｅｘｐを比較し、(ｘ，ｙ，ｚ)=(０，０，０)ではデータＡとデータＢ、(ｘ，ｙ，ｚ)=(１，０，１)ではデータＣとデータＤ、(ｘ，ｙ，ｚ)=(７，４，３)ではデータＥとデータＦを比較し、いずれも不一致の為、フェイルフラグＦＦＬＧがHとなる。フェイルフラグＦＦＬＧが２回目にHになると、次クロックで差分取得回路６０から各グループの差分値ｄｉｆｆＡ〜ｄｉｆｆＦが出力される。この場合は差分値ｄｉｆｆＣと差分値ｄｉｆｆＦに差分変化があり、diffC=9’h141、diffF=9’h1A1となる。次に、レジスタアレイ（ＲＡＲＹ）１２３ではライトポインタアドレスＷＲｐｎｔの０番地を生成し、差分値に変化のあったグループを優先させて並び替えが行われる。差分情報の最上位ビットが最終グループフラグとされている為、Ｃグループの差分情報ｄｉｆｆＣは9’h041、Ｆグループの差分情報ｄｉｆｆＦは9’h1A1とされる。その後、６グループ分の差分情報がレジスタアレイ１２３に格納される。同様に３回目のフェイルフラグがHの時には、差分情報ｄｉｆｆＣ，ｄｉｆｆＥ，ｄｉｆｆＦに差分変化があり、フェイルグループの並び替え、最終グループフラグの追加が行われ、それら差分情報は、先ほど差分情報に変化の無かった２番地（ＲＡＲＹ＃２）以降に書き込まれる。即ち、第２回目にフェイルフラグがＨになった場合に対応される（ａ）の範囲の差分情報については、差分情報の差分有り無しに拘わらず６番地分の差分情報がレジスタアレイ１２３に書き込まれ、次にフェイルが発生した場合には差分のなかった２番地から当該次に差分情報が上書きされる。第３回目にフェイルフラグがＨになった場合に対応される（ｂ）の範囲の差分情報については、第２回目のフェイル発生時に差分のなかった２番地を基点に６個の差分情報が書き込まれ、次に次にフェイルが発生した場合には差分のなかった５番地から当該次に差分情報が上書きされる。
【００５７】
図８には復元回路６２の具体例が示される。復元回路６２はテスト終了後に差分値格納レジスタ６１から差分情報を読み出し、フェイル情報を復元するための回路である。復元回路６２はフェイルアドレス復元回路（ＦＬＡ＿ＤＥＣＭＰ）１３０、フェイルデータ復元回路（ＦＬＤ＿ＤＥＣＭＰ）１３１、及びシフトフラグ生成回路（ＳＦＴＦＬＧＧ）１３２を有する。
【００５８】
フェイルアドレス復元回路１３０はアドレスの差分情報に係るグループ毎に復元部（ＧｒＡＤＣ〜ＧｒＦＤＣ）１３３〜１３５を有し、フェイルデータ復元回路１３１はデータの差分情報に係るグループ毎に復元部（ＧｒＧＤＣ〜ＧｒＶＤＣ）１３６を有する。差分値セレクタ（ＤＩＦＳＥＬ）１３７はグループ情報ＧｒＩＮＦで指定される復元部に差分値ＤＩＦを供給する。復元部（ＧｒＡＤＣ〜ＧｒＦＤＣ）１３３〜１３５は、復元動作の第１サイクルで、帰還セレクタ（ＦＢＳＥＬ）１４０で選択された第１フェイルアドレス１ｓｔＦＬＡと差分値ＤＩＦとを加算回路（ＡＤＤ）１４１で加算してラッチ（ＤＣＬＡＴ）１４２に保持し、復元動作の第２サイクル以降において、帰還セレクタ（ＦＢＳＥＬ）１４０で選択されたラッチ回路１４２の加算値と次の差分値ＤＩＦとを加算回路１４１で加算してラッチ１４２の値を書換えて、累積的な加算を行うことができる。復元部（ＧｒＧＤＣ〜ＧｒＶＤＣ）１３６も同様に機能される。夫々の復元部１３３〜１３５，１３６の出力にはセレクタ（ＶＳＥＬ）１５０とラッチ回路（ＶＬＡＴ）１５１が直列接続される。シフトフラグ生成回路１３２は一つのフェイルに係るフェイルアドレス差分情報の最終グループフラグＥＧｒＦＬＧとフェイルデータ差分情報の最終グループフラグＥＧｒＦＬＧとが共にＨになるとシフトフラグ（ＳＦＴＦＬＧ）１６０を有効にしてセレクタ１５０で各ラッチ１５１を直列形態に接続してシフトレジスタ構造に切り替える。
【００５９】
復元回路６２による復元動作はグループ毎に行われ、最初は第１フェイルアドレス（１ｓｔＦＭＡ）、第１フェイルデータ（１ｓｔＦＭＤｒ）に差分値を加算し、第２フェイルアドレス及び第２フェイルデータを復元する。フェイルアドレスとフェイルデータの最終グループフラグＥＧｒＦＬＧはシフトフラグ生成回路１３２に入力され、それぞれの最終グループフラグが共にHになると1つのフェイルの復元が完了し、ラッチ１５１をシフトレジスタ構造に切り替えてフェイル情報をテスト制御回路２１に出力する。その後は、これを繰り返し、差分値格納レジスタ６１に格納した全てのフェイル情報を復元してテスト制御回路に出力する。
【００６０】
図９にはフェイル情報復元タイミング波形が示される。図では(ｘ，ｙ，ｚ)=(０，０，０)で第１フェイルが発生し、(１，０，１)で第２フェイルが発生した場合における、当該第２フェイルに対する復元時の波形を示す。データも同時に復元が行われていると仮定し、ここでは主にフェイルアドレスの復元について説明を行う。仮定として、データのフェイルグループは１グループのみ、復元データは128’h000000000000000000000000000000F0とする。
【００６１】
時刻ｔ１のタイミングでフェイルアドレス差分値格納レジスタ１２０より、差分情報9’h041が読み出されると、復元回路６２ではＣグループの復元回路（ＧｒＣＤＣ）が選択され、第１フェイルアドレスに差分値を加算し、Ｃグループ復元アドレスが4’b0001となる。同様に時刻ｔ２で差分値格納レジスタ１２０より読み出された差分情報9’h1A1から、Ｆグループの復元回路（ＧｒＦＤＣ）が選択され、こちらも復元アドレスは4’b0001となる。このとき、最終フェイルアドレスグループフラグＥＧｒＦＬＧがHとなり、時刻ｔ３でシフトフラグ（ＳＦＴＦＬＧ）１６０がHとなる。すると時刻ｔ４で復元アドレス、復元データのレジスタ１５１がシフトレジスタ構造に切り替わり、アドレス(２２ビット)とデータ(１２８ビット)の合計１５０ビット分の情報がテスト制御回路２１及びＴＡＰコントローラ２３を介してデータ端子ＴＤＯからテスタ２４に出力される。シフト出力が終了すると次のフェイル情報の復元が行われる。これを繰り返し、全てのフェイル情報がテスタ２４に出力される。図９において１ｓｔＦＭＡ＿ＧｒＡは第１フェイルアドレスのグループＡのアドレス情報、ｄｉｆｆＭＡはアドレス差分値、ＤＣＭＡ＿ＧｒＡはグループＡの復元アドレス、ＥＧｒＦＬＧ＿ＭＡはフェイルアドレスに関する最終グループフラグ、ＥＧｒＦＬＧ＿ＭＤｒはフェイルデータに関する最終グループフラグ、ＤＣＭＡは復元アドレス、ＤＣＭＤｒは復元データである。
【００６２】
図１０にはメモリテスト時の外部信号波形が例示される。テスト回路２０に対する制御には、ＪＴＡＧ端子（ＴＣＫ，ＴＭＳ，ＴＤＩ，ＴＤＯ，ＴＲＳＴ）とクロック切替信号（ＴＣＫＳＥＬ，ＩＣＫＳＥＬ）で行う。ＴＲＳＴはローイネーブル端子である。フェイル情報取得までには（１）テストプログラム設定（ＴＰＧＭ＿ＳＥＴ）、（２）テスト回路２０によるテスト実行（ＴＳＴ＿ＥＸＥＣ）、（３）テスト結果確認（ＶＲＦＹ）、（４）フェイル情報回収（ＣＬＢＣＫ）の４つの工程がある。（１）のテストプログラム設定では低速な外部クロック（ＴＣＫ）でテスト回路２０内部のレジスタにテストプログラムをロードする。（２）のテスト実行では高速な内部クロック（ＩＣＫ）に切替え、メモリコントローラ１２によるＳＤＲＡＭ４に対する実際のアクセス制御動作と同じ速度でＳＤＲＡＭ４のテストを行う。この時、フェイルした場合はテスト回路２０のフェイル情報取得回路４１にてフェイル情報が保持される。（３）のテスト結果確認では、再び低速な外部クロック（ＴＣＫ）に切替えられて、ＳＤＲＡＭのテスト結果がパスかフェイルかの確認を行う。最後に（４）のフェイル情報回収で、取得したフェイル情報を1ビットずつ端子ＴＤＯから出力し、複数フェイル情報を取得する。
【００６３】
図２で説明した実装例のように、ＳｏＣのマイクロコンピュータ３とＳＤＲＡＭ４が平置きで1個のパッケージ５に搭載されている場合は、マイクロコンピュータ３とＳＤＲＡＭ４との間を接続する８の部分のワイヤが長い為、ノイズの影響を受けやすい。その為、上述のＢＩＳＴ構造のテスト回路により、ノイズ起因によるフェイルが起きた場合に複数のフェイル情報を取得することが、ノイズに起因したフェイ状態を把握してフェイル解析を行うことができる。
【００６４】
以上説明したテスト回路２０を採用することにより1度のテストで複数のフェイル情報(アドレス、データ)を取得できる為、ノイズ起因等により測定する毎にフェイル箇所が変動する場合でも、フェイルアドレスの分布や複数フェイルデータの情報からフェイル原因の切り分けを容易に行うことができる。
【００６５】
メモリのテストはアドレスを+1ずつインクリメントまたはデクリメントしながら動かすため、前フェイル値との差分を取ることで、蓄積すべき情報を削減することができる。
【００６６】
フェイルアドレス、及びフェイルデータを特定ビット幅の複数グループに分割し、変化グループのみを蓄積することにより、複数フェイル情報取得に必要なデータ容量を圧縮し、回路規模削減を図ることができる。
【００６７】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００６８】
例えば、半導体装置は図３のようなＳｉＰに限定されず、図１１に例示されるように、種々の半導体装置が実装されるシステム基板（ＳＢＤ）にマイクロコンピュータのようなＳｏＣとＳＤＲＡＭのようなメモリが実装される場合にも本発明は適用可能である。また、図１２に例示されるように単一の半導体チップに、ＳＤＲＡＭのようなテスト対象メモリとテスト回路ＢＩＳＴをその他の回路と一緒に搭載した、ＳｏＣのような半導体装置にも適用することができる。更に半導体装置はＣＰＵによるデータ処理機能を備えたＳｏＣに限定されず、図１３に例示されるように、ＳＤＲＡＭ等のメモリデバイスにも適用することができ、テスト回路ＢＩＳＴはアドレスデコーダ（ＡＤＥＣ）等を介してメモリセルアレイ（ＡＲＹ）をテスト対象とする。また、図１４に例示されるようにテスト回路ＢＩＳＴは復元回路（ＤＥＣＭＰ）を備えなくてもよい。その場合に、復元回路（ＤＥＣＭＰ）の機能を例えばテスタ（ＴＳＴＲ）で実現し、テスト回路ＢＩＳＴはテスタ（ＴＳＴＲ）に差分情報ｄｉｆｆを供給し、復元回路（ＤＥＣＭＰ）は復元情報（ＤＥＩＮＦ）を生成する。テスト対象はＳＤＲＡＭに限定されず、ＤＲＡＭ、ＳＲＡＭ（Static RAM）、フラッシュメモリ、ＭＲＡＭ（Magnetoresistive RAM）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）等の各種メモリを対象にすることができる。テスタとの外部インタフェースはIEEE１１４９．１準拠のＴＡＰコントローラ以外を用いることも可能である。
【図面の簡単な説明】
【００６９】
【図１】図１はフェイル情報取得回路の具体例を示すブロック図である。
【図２】図２は本発明に係る半導体装置の一例である半導体モジュールを例示する説明図である。
【図３】図３は半導体モジュールのブロック図である。
【図４】図４はＴＡＰコントローラの具体例を示すブロック図である。
【図５】図５は差分取得回路の具体例を示すブロック図である。
【図６】図６は差分情報格納レジスタの具体例を示すブロック図である。
【図７】図７はフェイルアドレス取得時の動作タイミングを例示するタイミングチャートである。
【図８】図８は復元回路の具体例を示すブロック図である。
【図９】図９はフェイル情報復元動作を例示するタイミングチャートである。
【図１０】図１０はメモリテスト時の外部信号波形を示すタイミングチャートである。
【図１１】図１１はマイクロコンピュータのようなＳｏＣとＳＤＲＡＭのようなメモリをマルチチップでシステム基板に実装した本発明の例を示す概略説明図である。
【図１２】図１２は単一の半導体チップにＳＤＲＡＭのようなテスト対象メモリとテスト回路をその他の回路と一緒に搭載した本発明の例を示す概略説明図である。
【図１３】図１３はＳＤＲＡＭ等のメモリデバイスに本発明を適用した例を示す概略説明図である。
【図１４】図１４はテスト回路ＢＩＳＴの復元回路（ＤＥＣＭＰ）を設けずに復元回路（ＤＥＣＭＰ）の機能をテスタ（ＴＳＴＲ）で実現した本発明の例を示す概略説明図である。
【符号の説明】
【００７０】
１  半導体モジュール
２  モジュール基板
３  マイクロコンピュータ（ＭＣＵ）
４  ＳＤＲＡＭ
５  樹脂パッケージ（ＰＫＧ）
６  スペーサ（SPC）
７  ワイヤ（ＷＩＲ）
８  SDRAM制御信号、アドレス、データ
１２  メモリコントローラ（ＭＣＮＴ）
１３  物理インタフェース回路（ＰＨＹ）
２０  テスト回路（ＢＩＳＴ）
２１  テスト制御回路（ＢＩＳＴＣ）
２２  クロック選択回路（ＣＬＫＳＥＬ）
２３  ＴＡＰコントローラ（ＴＡＰＣ）
２４  マルチプレクサ（ＭＵＸ）
４０  パターンジェネレータ（ＡＰＧ）
４１  フェイル情報取得回路（ＦＬＩＧＣ）
ＭＤｒ  メモリリードデータ
Ｄｅｘｐ  期待値データ
５０  パス・フェイル（Pass/Fail）判定部（ＰＦＤＥＴ）
５１  特定フェイル情報格納部（ＦＬＩｎＳ）
５２  複数フェイル情報取得部（ＰＩＰＵ）
ＥＮｃｍｐ  比較イネーブル信号
ＦＦＬＧ  フェイルフラグ
ＦＭＤｒ  フェイルデータ
ＦＭＡ  フェイルアドレス
ＰＳ／ＦＬ  パス／フェイル信号
５３  ラッチ回路（ＬＡＴＤ）
５４  ラッチ回路（ＬＡＴＡ）
５５  フェイルカウンタ（ＦＬＣＵＮＴ）
５６  ラッチイネーブル生成回路（ＬＴＥＮＧ）
ＥＮｌａｔ  ラッチイネーブルパルス
６０  差分取得回路（ＤＩＦＧ）
６１  差分情報格納レジスタ（ＤＩＦＲｅｇ）
６２  復元回路（ＤＥＣＭＰ）
１ｓｔＦＭＧｒ，１ｓｔＦＭＡ  最初のフェイル情報
ＦＬＩ  フェイル情報
１００  ｘフェイルアドレス差分取得回路（ＡｘＤＩＦＧ）
１０１  ｙフェイルアドレス差分取得回路（ＡｙＤＩＦＧ）
１０２  ｚフェイルアドレス差分取得回路（ＡｚＤＩＦＧ）
１０３フェイルデータ差分取得回路（ＤｒＤＩＦＧ）
１１０  ｎ番目ｘフェイルアドレスラッチ
１１１  ｎ−１番目ｘフェイルアドレスラッチ
１１３，１１４，１１５  グループ毎に差分回路（ＧｒＡＤＩＦ，ＧｒＢＤＩＦ，ＧｒＣＤＩＦ）
１１６  減算器（ＳＵＢ）
１１７  グループ情報追加回路（ＧｒｎＧ）
ｄｉｆｆＡ〜ｄｉｆｆＶ  差分情報
１２０  フェイルアドレス格納部（ＦａＤＩＦＲｅｇ）
１２１  フェイルデータ格納部（ＦｄＤＩＦＲｅｇ）
１２３  レジスタアレイ（ＲＡＲＹ）
１２４  レジスタセレクタ
１２５  書き込み制御回路（ＷＲＣＮＴ）
ＥＧｒＦＬＧ  最終グループフラグ
ＧｒＩＮＦ  グループ情報
ＤＩＦ  差分値
１３０  フェイルアドレス復元回路（ＦＬＡ＿ＤＥＣＭＰ）
１３１  フェイルデータ復元回路（ＦＬＤ＿ＤＥＣＭＰ）
１３２  シフトフラグ生成回路（ＳＦＴＦＬＧＧ）
１３３〜１３５  復元部（ＧｒＡＤＣ〜ＧｒＦＤＣ）
１３６  復元部（ＧｒＧＤＣ〜ＧｒＶＤＣ）
１３７  差分値セレクタ（ＤＩＦＳＥＬ）
１４０  帰還セレクタ（ＦＢＳＥＬ）
１４１  加算回路（ＡＤＤ）１４１
１４２  ラッチ（ＤＣＬＡＴ）
１５０  セレクタ（ＶＳＥＬ）
１５１  ラッチ回路（ＶＬＡＴ）
１６０  シフトフラグ（ＳＦＴＦＬＧ）
【図１】
2009181600.tif 000003
【図２】
2009181600.tif 000004
【図３】
2009181600.tif 000005
【図４】
2009181600.tif 000006
【図５】
2009181600.tif 000007
【図６】
2009181600.tif 000008
【図７】
2009181600.tif 000009
【図８】
2009181600.tif 000010
【図９】
2009181600.tif 000011
【図１０】
2009181600.tif 000012
【図１１】
2009181600.tif 000013
【図１２】
2009181600.tif 000014
【図１３】
2009181600.tif 000015
【図１４】
2009181600.tif 000016