(57)【要約】【課題】ロウアドレス又はカラムアドレスの少なくとも一方が最下位アドレス又は最上位アドレスである境界セルに対し、効率よくテストを行うこと。【解決手段】半導体集積回路は、メモリ４１と、メモリ４１のテストをするＢＩＳＴメイン回路１０、ＢＩＳＴサブ回路２０とを有し、ＢＩＳＴサブ回路２０は、メモリ４１のロウアドレス又はカラムアドレスの少なくとも一方は、当該メモリ４１の最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路２１を有する。ＢＩＳＴメイン回路１０は、複数のメモリに共通に設けられ、ＢＩＳＴサブ回路２０は、メモリに個別に対応して設けられる。境界アドレス生成回路２１は、最上位アドレスを記憶する最上位アドレス記憶部と、当該最上位アドレスを読みだし最下位アドレスと交互に出力する最上位／最下位アドレス生成部とを有する。【選択図】図１
2008084411.tif 000002
【特許請求の範囲】
【請求項１】
メモリと、
前記メモリのテストをするＢＩＳＴ回路とを有し、
前記ＢＩＳＴ回路は、前記メモリのロウアドレス又はカラムアドレスの少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路を有する、半導体集積回路。
【請求項２】
複数のメモリを有することを特徴とする請求項１記載の半導体集積回路。
【請求項３】
アドレス構成が異なる複数のメモリを有することを特徴とする請求項１記載の半導体集積回路。
【請求項４】
前記ＢＩＳＴ回路は、前記メモリに共通のＢＩＳＴメイン回路と、前記メモリに個別に対応して設けられたＢＩＳＴサブ回路とを有し、
前記ＢＩＳＴサブ回路は、前記境界アドレス生成回路を有する
ことを特徴とする請求項２又は３記載の半導体集積回路。
【請求項５】
前記境界アドレス生成回路は、前記ロウアドレス又はカラムアドレスの一方のアドレスとして、前記最上位アドレスと最下位アドレスを交互に生成し、他方のアドレスとして、前記最上位アドレス又は前記最下位アドレス毎にインクリメント又はデクリメントしたアドレスを生成する
ことを特徴とする請求項１記載の半導体集積回路。
【請求項６】
前記境界アドレス生成回路は、前記最上位アドレス又は前記最下位アドレスを有し前記メモリの対角線上に位置するセルに順次アクセスするためのアドレスを生成する
ことを特徴とする請求項１記載の半導体集積回路。
【請求項７】
前記境界アドレス生成回路は、前記最上位アドレスを記憶する最上位アドレス記憶部を有する
ことを特徴とする請求項１記載の半導体集積回路。
【請求項８】
前記境界アドレス生成回路は、最上位アドレスを記憶する最上位アドレス記憶部と、当該最上位アドレスを読みだし最下位アドレスと交互に出力する最上位／最下位アドレス生成部とを有する
ことを特徴とする請求項１記載の半導体集積回路。
【請求項９】
前記ＢＩＳＴメイン回路は、前記境界テスト以外のテストのためのアドレスを生成するアドレス発生器を有し、
前記ＢＩＳＴサブ回路は、前記メモリのサイズと前記アドレス発生器から入力されるアドレスとを比較し、前記アドレスがメモリに存在しない非存在アドレスである場合にテストデータの読み出し及び期待値照合を行なわないよう制御する
ことを特徴とする請求項４記載の半導体集積回路。
【請求項１０】
メモリのロウ又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストのためのアドレスを生成するアドレス生成部と、
前記メモリから読み出したテストデータと期待値とを照合する期待値照合部とを有し、
前記アドレス生成部は、前記メモリのロウアドレス又はカラムアドレスの少なくともいずれか一方は、前記最上位アドレスと前記最下位アドレスを交互に生成する、ＢＩＳＴ回路。
【請求項１１】
複数のメモリに共通に設けられたメインＢＩＳＴ回路と、前記複数のメモリに対し個別に設けられたサブＢＩＳＴ回路とを有し、
前記サブＢＩＳＴ回路は、前記最上位アドレスと前記最下位アドレスを交互に生成する境界アドレス生成回路を有する
ことを特徴とする請求項１０記載のＢＩＳＴ回路。
【請求項１２】
前記境界アドレス生成回路は、前記ロウアドレス又はカラムアドレスの一方のアドレスとして、前記最上位アドレスと最下位アドレスとを交互に生成し、他方のアドレスとして、前記最上位アドレス又は前記最下位アドレス毎にインクリメント又はデクリメントしたアドレスを生成する
ことを特徴とする請求項１０記載のＢＩＳＴ回路。
【請求項１３】
前記境界アドレス生成回路は、前記最上位アドレス又は前記最下位アドレスを有し前記メモリの対角線上に位置するセルに順次アクセスするためのアドレスを生成する
ことを特徴とする請求項１０記載のＢＩＳＴ回路。
【請求項１４】
所定の動作をコンピュータに実行させるためのプログラムであって、
メモリのロウ又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストが可能なＢＩＳＴ回路の雛形を選択する工程と、
前記雛形を使用してＢＩＳＴ回路を生成する工程とを有するＢＩＳＴ回路の設計プログラム。
【請求項１５】
メモリの個数、及びそのサイズを入力するデータ入力部と、
前記データ入力部から入力されるデータと、メモリのロウ又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストが可能なＢＩＳＴ回路の雛形とを使用してＢＩＳＴ回路を生成するＢＩＳＴ回路生成部とを有する、ＢＩＳＴ回路の設計装置。
【請求項１６】
メモリのロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対してアクセスし、
前記境界セルからデータを読み出して期待値照合する、メモリのテスト方法。
【請求項１７】
前記メモリのロウアドレス又はカラムアドレスのいずれか一方のアドレスは最上位アドレスと最下位アドレスを交互に選択すると共に、いずれか他方のアドレスは前記最上位アドレス又は最下位アドレス毎にアドレスをインクリメント又はデクリメントしながら前記境界セルからデータを読み出す
請求項１６記載のメモリのテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン発生器、アドレス発生器及び結果比較器を有し、メモリの動作テストを行うＢＩＳＴ（built in self-test）回路、これを搭載した半導体集積回路、そのテスト方法、並びにＢＩＳＴ回路の設計方法に関する。
【背景技術】
【０００２】
システムＬＳＩ（Large Scale Integration）内部回路、例えばＲＡＭ（Random Access Memory）ブロックのテストを容易化するため、ＬＳＩに組み込んだ回路自身によってそのテストを行なう組み込み自己テスト（ＢＩＳＴ）が利用される。これは、チップ内にパターン発生器、アドレス発生器、結果比較器を埋め込む手法である。テスト・パターンの生成では、マーチングやチェッカ・ボードと呼ばれるアルゴリズムがよく用いられる。メモリＢＩＳＴではＲＡＭブロックに書き込んだデータを読み出し、結果を比較することで、メモリのテストを行うことができる。従来のＢＩＳＴ回路を搭載した半導体集積回路としては次の回路が公知である。
【０００３】
図２３は、特許文献１に記載の半導体集積回路を示すブロック図である。図２３に示すように、従来の半導体集積回路は、データビット幅・アドレスビット幅の構成が異なる２つのメモリ回路部１６１、１６２と、メモリ回路部１６１、１６２の検査を実施する単数のＢＩＳＴ回路部１０５とを有する。ＢＩＳＴ回路部１０５からメモリ回路部１６１、１６２へ各々固有のビット幅のアドレス及びアクセス信号及びリフレッシュ信号が各々独立で接続され、ＢＩＳＴ回路部１０５で発生されるテストデータがメモリ回路部１６１、１６２へ同一のデータ入力ラインにより接続され、メモリ回路部１６１、１６２から読み出されるデータがＢＩＳＴ回路部１０５に各々固有のビット幅で独立にデータ出力ラインで接続されている。
【０００４】
メモリ回路部１６１は、メモリ回路１２１、アドレス・アクセス信号マルチプレクス１１１、データマルチプレクス１３１を有する。メモリ回路部１６２は、メモリ回路１２２、アドレス・アクセス信号マルチプレクス１１２、データマルチプレクス１３２を有する。メモリ回路部１６２は、データビット幅・アドレスビット幅の構成がメモリ回路部１６１と異なる。
【０００５】
ＢＩＳＴ回路部１０５のアドレス・アクセス信号発生回路１０２は、メモリ回路部１６１、１６２の最大アドレス値の中で大きい方のアドレス値を発生することができるアドレスビット幅を持っており、メモリ回路部１６１、１６２へ同じアドレス及びアクセス信号を発生することができる。データ発生回路１０３は、メモリ回路部１６１、１６２の中で大きい方のデータビット幅を発生でき、メモリ回路部１６１、１６２へ同じテストデータを発生する。
【０００６】
メモリ回路部最大アドレス記憶回路１０６は、メモリ回路部１６１、１６２の最大アドレス値を各々記憶しておく。アドレス判別回路１０７は、アドレス・アクセス信号発生回路１０２により発生されたアドレスがメモリ回路部最大アドレス記憶回路１０６により設定されたアドレス以上であることをメモリ回路部１６１、１６２ごとに判別しメモリ回路部１６１、１６２のリフレッシュ動作信号を独立で発生する。
【０００７】
アドレス・アクセス信号制御回路１８１、１８２は、それぞれアドレス判別回路１０７により発生したメモリ回路部１６１、１６２のリフレッシュ動作信号によりアドレス・アクセス信号発生回路１０２により発生されたアドレス及びアクセス信号をディスエーブルにする。リフレッシュ発生回路１９１、１９２は、それぞれアドレス判別回路１０７により発生したメモリ回路部１６１、１６２のリフレッシュ動作信号によりメモリ回路部１６１、１６２のリフレッシュ信号を発生する。比較回路１４１、１４２は、それぞれイネーブル時にメモリ回路部１６１、１６２の読み出しデータとデータ発生回路１０３の発生する期待値を比較し結果を出力し、ディスエーブル時に一致結果を出力する。
【０００８】
データ比較信号制御回路１４３、１４４は、それぞれアドレス判別回路１０７により発生したメモリ回路部１６１、１６２のリフレッシュ動作信号によりメモリ回路部１６１、１６２の比較回路１４１、１４２をディスエーブルにする。ＢＩＳＴ制御回路１０１は、検査アルゴリズムに応じてアドレス・アクセス信号発生回路１０２とデータ発生回路１０３と前記データ比較信号制御回路１４３、１４４を制御しメモリ回路部１６１、１６２を検査し、比較回路１４１、１４２により返却される比較結果によりメモリ回路部１６１、１６２のエラーの有無を出力する。
【０００９】
このように、サイズが異なる複数のメモリ(ＤＲＡＭ)１２１、１２２に対して、１つのＢＩＳＴ回路１０５を共有する。各メモリ１２１、１２２の最大アドレスを記憶しておく最大アドレス記憶回路１０６によりアドレス判別回路１０７で各メモリ１２１、１２２のアドレス・アクセスを制御する。メモリ１２１、１２２をパラレルでテストしている際に、あるメモリで非存在アドレスと判別された場合はアドレス・アクセス及び出力比較をディセーブルにし、リフレッシュ信号をメモリに入れることでテスト動作を止める。
【００１０】
図２４は、特許文献２に記載の半導体集積回路を示す図である。図２４に示すように、特許文献２に記載のＢＩＳＴ回路は、１６ビット×１６Ｋワードのメモリ２０２Ｂ及び８ビット×１Ｋワードのメモリ２０２Ｃをテストする。ＢＩＳＴ回路はメモリ２０２Ｂ、Ｃと同一のＬＳＩに搭載され、ＢＩＳＴサブ回路２０１と、メモリ２０２Ｂ、２０２Ｃと１対１対応の２つのデータ入力回路２０４及びデータ出力回路２０５とを有する。
【００１１】
ＢＩＳＴサブ回路２０１は、代表１ビットデータを２つのデータ入力回路２０４に出力し、２つのデータ出力回路２０５から代表１ビットデータ及び縮退１ビットデータを受け取るとともに、２つのメモリ２０２Ｂ、２０２Ｃとアドレス信号及びコントロール信号群を授受する。この授受はバス２３０を介して行われ、また、デコーダ回路２０３はセレクト信号に応答して、２つのメモリ２０２Ｂ、２０２Ｃのうちの１つのみにイネーブル信号を出力して活性化する。
【００１２】
データ入力回路２０４はメモリ２０２Ｂ、２０２Ｃごとに設けられ、ＢＩＳＴサブ回路２０１から入力した代表１ビットデータ２１３から、正相のテストビットデータ及び逆相のテストビットデータを生成し、対応するメモリに書き込む。テストビットデータ２１６の合計のビット数は、対応するメモリの１語当りのビット数に等しい。したがって、メモリ２Ｂに対しては１６ビット、メモリ２Ｃに対しては８ビットである。
【００１３】
データ出力回路２０５もメモリ２０２Ｂ、２０２Ｃごとに設けられ、対応するメモリから、テストビットデータ２１６対応のテストビットデータ２１８を読み出す。そして、縮退１ビットデータ２１５を生成してＢＩＳＴサブ回路２０１に出力する。この縮退１ビットデータ２１５は、代表１ビットデータ２１３とテストビットデータ２１８との異同を示すものである。
【００１４】
ＢＩＳＴサブ回路２０１は、代表１ビットデータを受け取ると、代表１ビットデータ２１３と比較することによって、その異同により、メモリ２０２Ｂ、２０２Ｃをテストできる。また、縮退１ビットデータ２１５を受け取ると、それが"１"か"０"かにより代表１ビットデータとの異同を知ることにより、メモリ２０２Ｂ、Ｃをテストできる。
【００１５】
このように、特許文献２に記載のＢＩＳＴ回路においては、サイズの異なる複数メモリ２０２Ｂ、２０２Ｃに対して、テスト回路として共有できる部分をＢＩＳＴサブ回路２０１として１つにまとめ、各メモリ固有となるテストデータ入力回路２０４、出力回路２０５などは固有に用意する。また、デコーダ２０３を設けし、各メモリをセレクトしてシリアルでテストする。
【００１６】
図２５は、特許文献３記載の半導体集積回路を示すブロック図である。図２５に示すように、特許文献３に記載のＢＩＳＴ回路は、アドレス発生器３０３、テストモードコントロール＆データ発生器３０１、ＲＡＭインターフェースブロック３０９、比較器３１０を有する。
【００１７】
テストモードコントロール＆データ発生器３０１は、テストモードのコントロールとテストデータの発生を行う。テストモードコントローラ３０１は、クロック、リセット（ＲＳＴ）、テストモード切換信号を入力とし、テストモード信号、データ信号、昇順／降順指定信号、最終値を出力する。
【００１８】
テストモード切換信号は、アドレス発生器３０３が出力するカウントストップ信号３０８ａとアドレスカウンタ初期化信号３１１をＯＲゲート３０２で論理和をとり作成する。アドレス発生器３０３は、ＣＬＫ、ＲＳＴ、アドレスカウンタ初期化信号３１１、テストモード信号３１９、そしてテストモードコントローラ３０１から出力された昇順／降順指定信号３０１ｂ、アドレス最終値指定信号（最終値）３０１ａ、カウントトリガ信号３０１ｄを入力とし、Ｘアドレス（ロウアドレス）とＹアドレス（カラムアドレス）を出力する。
【００１９】
ＲＡＭインターフェースブロック３０９は、Ｘアドレス３１８、Ｙアドレス３１７とテストモード、データ、ＣＬＫ、ＲＳＴを入力にし、これらの入力から被試験ＲＡＭのインターフェイス仕様に合ったＲＡＭ入力コマンド・アドレス・入力データを出力する。
【００２０】
比較器３１０は、被試験ＲＡＭ出力データと期待値データ（データ）を比較し、その比較結果を出力する。アドレス発生器３０３は、アドレスカウンタ３０４、アドレス変調回路３０５、被試験サブアレイ指定回路３０６、アドレススクランブラ３０７、カウント最終値検出回路３０８から構成される。
【００２１】
アドレスカウンタ３０４は、ＲＳＴ、カウントトリガ信号３０１ｄ、昇順／降順指定信号３０１ｂ、カウント最終値検出回路３０８から出力されるカウントストップ信号３０８ａを入力とし、アドレス（カウンタ）カウント値３０４ａを出力する。
【００２２】
カウント最終値検出回路３０８は、テストモードコントローラ３０１から出力された最終値３０１ａとアドレスカウンタ３０４から出力されたカウント値３０４ａを入力とし、カウントストップ信号３０８ａを出力する。
【００２３】
アドレス変調回路３０５は、アドレスカウンタ３０４から出力されたアドレス（カウンタ）３０４ａとテストモード信号３１９、テストモードコントローラからの変調コントロールを入力とし、アドレス（変調後）３０５ａを出力する。被試験サブアレイ指定回路３０６は、アドレス変調回路３０５が出力したアドレス（変調後）３０５ａとテストモード信号３１９を入力とし、アドレス（Ｙアドレス（サブアレイ指定））、Ｘアドレス（サブアレイ指定））を出力する。
【００２４】
アドレススクランブラ３０７は、Ｙアドレス（サブアレイ指定）、Ｘアドレス（サブアレイ指定）を入力とし、Ｙアドレス３１７、Ｘアドレス３１８を出力する。また本実施形態では、テストモード信号、Ｘアドレス３１７、Ｙアドレス３１８をＲＡＭインターフェースブロック３０９を介してメモリ３１１へ出力する。
【００２５】
このように、この半導体集積回路においては、１つのメモリ３１１に対するテスト回路内において、アドレス昇順・降順発生できるカウンタ３０４にアドレス変調回路３０５と被試験サブアレイ指定回路３０６を接続し、テストモードを指定することで単純にアドレス昇順・降順でテストするマーチテスト、チェッカーボードテスト以外のアドレス動作のテストパターンを生成することができる。
【特許文献１】特開２０００−１６３９９３号公報
【特許文献２】特開２０００−１１１６１８号公報
【特許文献３】特開２００２−３５８７９７号公報
【発明の開示】
【発明が解決しようとする課題】
【００２６】
ところで、メモリのテストでは、連続したアドレスへの読み出しテストで検知される不良の他、不連続なアドレスへの読み出しテストによって検知可能な不良がある。よって、離れたアドレスへのデータ読み出しテストを行うことが、より信頼性の高い製品の提供に繋がる。このようなテスト方法として、メモリアドレスの最下位アドレスから最上位アドレスへアクセスしてテストを行うことが考えられる。例えば図４に示すように、ロウアドレスを最下位アドレス（＝０）と最上位アドレス（＝ＭＡＸ）の交互に選択するものとして、カラムアドレスを最上位アドレス毎にインクリメントしていくと、ロウアドレスの最下位アドレスと最上位アドレスのメモリセルに対して順次読み出しテストを行うことができる。
【００２７】
本明細書においては、ロウ又はカラムアドレスの少なくとも一方のアドレスについては、最下位アドレスと最上位アドレスを交互に選択してテストを行うことを、境界テストということとする。境界テストには、そのアドレス選択の方法に応じて、後述する図４乃至図１２等の方法がある。また、ロウ及びカラムにおける最上位アドレス及び最下位アドレスを総称して境界アドレスとし、ロウ及びカラムアドレスのうち、いずれか一方が境界アドレスであるセルを境界セルということとする。すなわち、境界セル間のテストを境界テストということとする。
【００２８】
上述の特許文献１に記載の半導体集積回路は、サイズが異なる複数メモリ（ＤＲＡＭ）に対し、共有したＢＩＳＴでパラレルのテストを行なうことが可能である。しかしながら、その場合、一方の小さいサイズのメモリにおいて、非存在アドレスにアクセスする状態になることがある。その場合にはアドレス・アクセスをディセーブルにし、リフレッシュ信号をメモリに入れることでテスト動作を停止しなければならない。そのため、サイズの小さいメモリではアドレス変化の連続性がなくなったり、アドレスセルの境界テストができなくなる。これを補うためには別途テストを行なう必要がでてきて、テスト時間が増加してしまう。
【００２９】
また、特許文献２に記載の半導体集積回路は、ＢＩＳＴは共有しているが各メモリはシリアルでのテストを前提としている。よって、テスト時間は各メモリ毎のテスト時間の和となり、テスト時間が長いという問題点がある。また、アドレスセル境界テストのみを行なうテストはできない。
【００３０】
更に、特許文献３に記載の半導体集積回路は、複数メモリに対してＢＩＳＴ回路を共有する仕組みがなく、各メモリ毎にＢＩＳＴ回路が用意される。そのため、サイズが異なる複数メモリに対してパラレルでアドレスセル境界テストも含めてテストパターンを生成することができない。また、面積のオーバーヘッドが大きい。
【００３１】
以上のように、特許文献１、特許文献２に関しては、アドレスをインクリメント、デクリメントする以外のテストパターンを生成する回路を有さない。このため、サイズが異なる複数メモリをパラレルでテストする際にアドレスセル境界間のみをテストするパターンを生成できず、境界部分の十分なテストを実現できない。また、マーチテスト、チェッカーボードテストでできるアドレスセル境界間のテストを行なうとしてもテスト時間が増加する。さらに、特許文献３に記載の技術では、複数メモリに対してテスト回路を共有してパラレルでテストするための、メモリのアドレスＭＡＸ値記憶回路やアドレスチェック回路等の回路を有していない。
【課題を解決するための手段】
【００３２】
本発明にかかる半導体集積回路は、メモリと、前記メモリのテストをするＢＩＳＴ回路とを有し、前記ＢＩＳＴ回路は、前記メモリのロウアドレス又はカラムアドレスの少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路を有するものである。
【００３３】
本発明にかかるＢＩＳＴ回路は、メモリのロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストのためのアドレスを生成するアドレス生成部と、前記メモリから読み出したテストデータと期待値とを照合する期待値照合部とを有し、前記アドレス生成部は、前記メモリのロウアドレス又はカラムアドレスの少なくともいずれか一方は、前記最上位アドレスと前記最下位アドレスを交互に生成するものである。
【００３４】
本発明においては、メモリのロウアドレス又はカラムアドレスの少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路又はアドレス生成部を有するので、ロウアドレス又はカラムアドレスのうち少なくともいずれか一方は最上位アドレス又は最下位アドレスを有する境界セルに対し、データを書き込み、又は境界セルからデータを読み出しその書き込み又は読み出し不良検査を行なうことができる。
【００３５】
本発明にかかるＢＩＳＴ回路の設計プログラムは、所定の動作をコンピュータに実行させるためのプログラムであって、メモリのロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストが可能なＢＩＳＴ回路の雛形を選択する工程と、前記雛形を使用してＢＩＳＴ回路を生成する工程とを有する。
【００３６】
本発明にかかるＢＩＳＴ回路の設計装置は、メモリの個数、及びそのサイズを入力するデータ入力部と、前記データ入力部から入力されるデータと、メモリのロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストが可能なＢＩＳＴ回路の雛形とを使用してＢＩＳＴ回路を生成するＢＩＳＴ回路生成部とを有するものである。
【００３７】
本発明においては、境界セルに対するアクセステストを行なうことができるＢＩＳＴ回路の雛形を使用してＢＩＳＴ回路を設計するため、得られたＢＩＳＴ回路は、メモリの境界セルに対して書き込み又は読み出し不良のテストを行なうことができる。
【００３８】
本発明にかかるメモリのテスト方法は、メモリのロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対してアクセスし、前記境界セルからデータを読み出して期待値照合するものである。
【００３９】
本発明においては、ロウアドレス又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対して、読み出し不良のテストを行なうことができる。
【発明の効果】
【００４０】
本発明によれば、ロウアドレス又はカラムアドレスの少なくとも一方が最下位アドレス又は最上位アドレスである境界セルに対し、効率よくテストを行うことができ、信頼性が高いメモリ、当該メモリを搭載した半導体集積回路を提供することができる。
【発明を実施するための最良の形態】
【００４１】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、アドレスセル境界をテストすることのできるメモリテスト回路及びその方法に適用したものである。ここで、上述したように、本明細書においては、ロウ又はカラムアドレスの少なくとも一方のアドレスとして最下位アドレスと最上位アドレスを交互に選択してテストを行うことを境界テストという。また、ロウ及びカラムにおける最上位アドレス及び最下位アドレス、すなわちメモリセル境界にあるアドレスを総称して境界アドレスといい、ロウ又はカラムアドレスの少なくとも一方に境界アドレスを有するセルを境界セルということとする。
【００４２】
本実施の形態にかかるテスト方法においては、境界セル間のみデータＲｅａｄ不良をテストするテストパターンを生成してテストするものである。このため、ロウ／カラムアドレスの一方、又は両方で最上位アドレスと最下位アドレスを交互に発生できるアドレス発生器を設けることでこれを実現する。また、サイズが異なる複数メモリを共有したＢＩＳＴでパラレルテストする際に、アドレスセル境界テストモードでは上述したアドレス発生器で発生した最上位側のアドレス値を各メモリごとの最上位アドレスに変換する回路を設けることで、メモリサイズに関係なくアドレスセル境界のみをテストすることが可能となる。さらに、アドレスセル境界テストパターンを生成できることによるメモリテスト時間の短縮化を図り、マーチテスト、チェッカーボードテストではテストできないパターンの境界テストパターンを生成することも可能となる。
【００４３】
実施の形態１．  
以下、本発明の実施の形態１について詳細に説明する。図１は、本実施の形態にかかるテスト回路を示すブロック図である。本実施の形態にかかるテスト回路１はＢＩＳＴメイン回路１０、ＢＩＳＴサブ回路２０、及びテストモード制御回路３０を有する。このテスト回路１は複数メモリに対してＢＩＳＴメイン回路１０を共有することができる。
【００４４】
テストモード制御回路３０は１チップに１つ用意され、マーチテスト、チェッカーボードテスト、又は境界アドレス間のテストであるアドレスセル境界テスト等、実施するテストを指定するためにテストモードをＢＩＳＴメイン回路に供給する。
【００４５】
ＢＩＳＴメイン回路１０は、ＢＩＳＴ共有化させる複数メモリに対して１つ用意される。このＢＩＳＴメイン回路１０は、テスト制御回路１１、アドレスセル境界テストモードイネーブル（Ｅｎａｂｌｅ）生成器１２、ロウアドレス発生器１３、カラムアドレス発生器１４、テストデータ生成器１５、及び期待値生成器１６を有する。
【００４６】
テスト制御回路１１は、テストモード制御回路３０から受け取ったテストモードを元に各ＢＩＳＴメイン回路１０内の回路を制御するＴＥＳＴ信号を出力する。アドレスセル境界テストモードＥｎａｂｌｅ生成器１２は、アドレスセル境界テストを行なう場合のＥｎａｂｌｅ信号を生成する。すなわち、テスト制御回路１１からアドレスセル境界テストを示すＴＥＳＴ信号を受けたらＥｎａｂｌｅ信号をイネーブルにする。マーチテスト、チェッカーボードテストを示すＴＥＳＴ信号を受けたらＥｎａｂｌｅ信号をディスイネーブルにする。
【００４７】
また、ロウ／カラムアドレス発生器１３、１４、テストデータ生成器１５、期待値生成器１６は、ＴＥＳＴ信号値にあったそれぞれアドレス、データ、期待値を発生する。例えばテストデータ生成器１５は、マーチテストであればマーチングパターンを生成し、チェッカーボードテストであればチェッカボードパターンを生成し、境界テストであれば、境界アドレステストパターンを生成する。同様に、ロウ／カラムアドレス発生器１３、１４は、例えばマーチテストやチェッカーボードテストであれば昇順又は降順アドレスを生成し、境界テストであれば、ロウ／カラムアドレスのいずれか一方、もしくは両方で最上位アドレス値と最下位アドレス値を交互に発生し、後述する図４から図１２に示す境界アドレスをテストするためのアドレスを生成する。
【００４８】
ＢＩＳＴサブ回路２０は、メモリ毎に用意される。このＢＩＳＴサブ回路２０は、境界アドレス生成回路２１、アドレス連結回路２２、アドレスチェック回路２３、メモリ制御回路２４、データＢＩＴ拡張回路２５、期待値比較回路２６、及び結果判定回路２７を有する。境界アドレス生成回路２１は、アドレスセル境界テストモードでは、上述したアドレス発生器１３、１４から交互に出力される最下位アドレス値と最上位のアドレス値のうち最上位アドレス値を、対応するメモリでの最上位アドレスに変換して出力する。また、マーチテストやチェッカーボードテストのモードでは、アドレス生成器１３、１４から出力される昇順又は降順のアドレス値をそのまま出力する。この境界アドレス生成回路２１の詳細は後述する。
【００４９】
アドレス連結回路２２は、境界アドレス生成回路２１から出力されるロウ／カラムアドレス値を受け、メモリに入力するための、ロウ／カラムアドレス値を連結したＡＤＲＳ信号を出力する。アドレスチェック回路２３は、ＢＩＳＴサブ回路対象メモリのロウ／カラムサイズとrow_adrs、col_adrs信号とを比較し、メモリサイズ以上となった場合はＷＥ信号及び期待値比較を行なわないように制御するtest_en信号を出力する。これにより異なるサイズの複数メモリをパラレルでテストできる。
【００５０】
データＢＩＴ拡張回路は１ビットのdi_sig信号を対象メモリのＢＩＴ幅に拡張する。メモリ制御回路２４は、入力されたtest_en信号とwe_sig信号からＷＥ信号を出力する。期待値比較回路２６はメモリ出力のＤＯとex_sig信号とを比較し、結果を結果判定回路２７へ出力する。結果判定回路２７は期待値照合結果により対象メモリの良否を判定して０出力する。
【００５１】
図２は、境界アドレス生成回路の詳細の一例を示すブロック図である。境界アドレス生成回路２１は、メモリロウアドレスＭＡＸ値記憶回路５１、メモリカラムアドレスＭＡＸ値記憶回路６１と、ロウアドレス０ｏｒＭＡＸ値生成回路５２、カラムアドレス０ｏｒＭＡＸ値生成回路６２と、セレクタ５３、６３とを有する。
【００５２】
この境界アドレス生成回路２１は、ＢＩＳＴサブ回路２０内に設けられ、よって、対象メモリ毎に設けられるものである。メモリロウアドレスＭＡＸ値記憶回路５１、メモリカラムアドレスＭＡＸ値記憶回路６１は、対象メモリのロウアドレスＭＡＸ値（ロウアドレスの最上位アドレス）、カラムアドレスＭＡＸ値（カラムアドレスの最上位アドレス）を記憶している。
【００５３】
ロウアドレス０ｏｒＭＡＸ値生成回路５２、６２は、アドレスセル境界テストモードイネーブルのrow_bound_en、col_bound_en信号がイネーブルの場合は、ロウ／カラムアドレスからの入力に基づいて最下位アドレス（＝０）か、ＭＡＸ値を出力する。例えば、境界テストモードでrow_bound_en信号がイネーブルの場合、入力ロウアドレスの最下位ビットrow_adrs[0]が"０"のときは"０"を出力し、最下位ビットが"１"の場合はＭＡＸ値を出力する。アドレスセル境界テストモードでない場合は、row_bound_en、
col_bound_en信号がディスイネーブルとなり、セレクタ５３、６３で入力ロウ／カラムアドレスrow_adrs／col_adrsをそのまま出力する回路構成である。境界アドレス生成回路２１の動作の詳細については後述する。
【００５４】
先ずここで、本実施の形態にかかるテスト回路において生成される境界アドレスについて説明する。図３（ａ）は、メモリアドレスセル構造を示す模式図、図３（ｂ）は、テスト書き込みデータを示す図である。ここで説明の簡単のため、このアドレスセルを、図４乃至図１２に示すアドレスセル境界テストに用いるメモリのアドレスセル構成として説明する
【００５５】
図３（ａ）に示すように、アドレスセル構成の縦方向をロウ、横方向をカラムとする。メモリは、カラム方向に４つのセル（例えばＡｄｒｓ０〜Ａｄｒｓ３）を有し、ロウ方向に４つのセル（例えばＡｄｒｓ０、３、８、１２）を有する。図３（ｂ）は、後述するチェッカーボードテストのデータ書き込み状態を示す。チェッカーボードテストでは、"０１"のデータが交互に書き込まれる。
【００５６】
このようなメモリセルに対し、境界テストを行う場合は、図４乃至図１２に示すようなテスト方法がある。先ず、図４は、カラムアドレスをインクリメント動作、ロウアドレスを０→ＭＡＸ（ｕｐ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図４に示すように、ロウアドレスを０、ＭＡＸ値の交互に変化させ、カラムアドレスは、ロウアドレスが０（最下位アドレス）になる毎にインクリメントする。ロウ方向のアドレス昇順マーチテスト、チェッカーボードテスト中に含まれる境界アドレス部分のパターン動作のみを行なうテストパターンとなる。
【００５７】
図５は、カラムアドレスをデクリメント動作、ロウアドレスを０→ＭＡＸ（ｕｐ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図５に示すように、ロウアドレスを０、ＭＡＸ値の交互に変化させ、カラムアドレスは、ロウアドレスが０になる毎にデクリメントする。この境界テストパターンはマーチテスト、チェッカーボードテスト中には存在しないテストパターンとなっている。
【００５８】
次に、図６は、カラムアドレスをデクリメント動作、ロウアドレスをＭＡＸ→０（ｄｏｗｎ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図６に示すように、ロウアドレスをＭＡＸ値、０の交互に変化させ、カラムアドレスは、ロウアドレスがＭＡＸ値になる毎にデクリメントする。ロウ方向のアドレス降順マーチテスト、チェッカーボードテスト中に含まれるアドレスセル境界部分のパターン動作のみを行なうテストパターンとなる。
【００５９】
そして、図７は、カラムアドレスをインクリメント動作、ロウアドレスをＭＡＸ→０（ｄｏｗｎ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図７に示すように、ロウアドレスをＭＡＸ値、０の交互に変化させ、カラムアドレスは、ロウアドレスがＭＡＸ値になる毎にインクリメントする。このアドレスセル境界テストパターンはマーチテスト、チェッカーボードテスト中には存在しないテストパターンとなる。
【００６０】
図８は、ロウアドレスをインクリメント動作、カラムアドレスを０→ＭＡＸ（ｕｐ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図８に示すように、カラムアドレスを０、ＭＡＸ値の交互に変化させ、ロウアドレスは、カラムアドレスが０になる毎にインクリメントする。カラム方向のアドレス昇順マーチテスト、チェッカーボードテスト中に含まれるアドレスセル境界部分のパターン動作のみを行なうテストパターンとなる。
【００６１】
図９は、ロウアドレスをインクリメント動作、カラムアドレスをＭＡＸ→０（ｄｏｗｎ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図９に示すように、カラムアドレスをＭＡＸ値、０の交互に変化させ、ロウアドレスは、カラムアドレスがＭＡＸになる毎にインクリメントする。このアドレスセル境界テストパターンはマーチテスト、チェッカーボードテスト中には存在しないテストパターンとなっている。
【００６２】
図１０は、ロウアドレスをデクリメント動作、カラムアドレスをＭＡＸ→０（ｄｏｗｎ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図１０に示すように、カラムアドレスをＭＡＸ値、０の交互に変化させ、ロウアドレスは、カラムアドレスがＭＡＸになる毎にデクリメントする。カラム方向のアドレス降順マーチテスト、チェッカーボードテスト中に含まれるアドレスセル境界部分のパターン動作のみを行なうテストパターンとなる。
【００６３】
図１１は、ロウアドレスをデクリメント動作、カラムアドレスを０→ＭＡＸ（ｕｐ）に変化させるアドレスセル境界のＲｅａｄ不良テストを示す。図１１に示すように、カラムアドレスを０、ＭＡＸ値の交互に変化させ、ロウアドレスは、カラムアドレスが０になる毎にデクリメントする。このアドレスセル境界テストパターンはマーチテスト、チェッカーボードテスト中には存在しないテストパターンとなっている。
【００６４】
図１２は、メモリのアドレスセル構成において、四つ端の対角線方向にアドレスセル境界のＲｅａｄ不良テストを行なうテストパターンを示す。ロウアドレスを"０"、カラムアドレスを"０"(以下、（ロウ，カラム)＝（０，０）と示す。)と(ロウ，カラム)＝(ＭＡＸ，ＭＡＸ)の境界アドレス間の動作はマーチテスト、チェッカーボードテストのアドレス昇順、もしくは降順動作を２回繰り返すことで行なうことが可能となる。(ロウ，カラム)＝(０，ＭＡＸ)と(ロウ，カラム)＝(ＭＡＸ，０)の境界アドレス間の動作はマーチテスト、チェッカーボードテストでは行なうことはできないテストパターンである。図１３は、図１２と同様の境界テストを行うことができる他のアドレスパターンを示す。
【００６５】
次に、図２に示す境界アドレス生成回路２１の動作について説明する。ここでは、図４及び図１２に示す境界アドレスを生成する場合を例にとって説明する。先ず、図１４（ａ）、（ｂ）及び図１５は、図４に示す境界アドレスの生成を説明するための図である。ここで、図１４（ａ）に示すように、ロウアドレス、カラムアドレスをいずれも２ビットとし、ロウ（００）、カラム（００）のように示す。また、例えばロウ（ａｂ）、カラム（ｃｄ）で指定されるアドレスをＡＤＲＳ＿ｘ（ａｂｃｄ）のように示すこととする。この場合、ＡＤＲＳ＿０〜ＡＤＲＳ＿ｆ、すなわち（００００）〜（１１１１）がアドレス連結回路２２にて生成されるアドレスＡＤＲＳである。
【００６６】
このように、メモリセルが１６個のメモリセルからなり、そのロウアドレスは、ロウ（００）〜ロウ（１１）からなり、カラムアドレスは、カラム（００）〜カラム（１１）からなる場合、アドレスＡＤＲＳは、ＡＤＲＳ＿０（００００）〜ＡＤＲＳ＿ｆ（１１１１）からなる。
【００６７】
そして、図１４（ｂ）に示すように、図４に示すアドレスセル境界テストは、（ロウ，カラム）＝（０，０）から図中の矢印で示す順序で境界アドレス間のＲｅａｄ動作を行なう。図１５は、このＲｅａｄ動作テストにおけるタイミングチャートを示す図である。この場合、アドレスセル境界テストモードロウイネーブル信号（row_bound_en）がＨｉｇｈ（イネーブル）となると、ロウアドレス０ｏｒＭＡＸ値生成回路５２は、ロウアドレス信号（row_adrs）に応じて０又はＭＡＸ値を生成してセレクタ５３へ出力する。このロウアドレス０ｏｒＭＡＸ値生成回路５２は、ロウアドレス発生器１３からのロウアドレス信号row_adrs（＝row_adrs[1:0]）のうち、最下位ビット（row_adrs[0]）が入力される。また、メモリロウアドレスＭＡＸ値記憶回路５１から、対応するメモリのＭＡＸ値、本例においては、ロウＭＡＸ値（１１）が入力される。
【００６８】
そして、ロウアドレス０ｏｒＭＡＸ値生成回路５２は、アドレスセル境界テストモードロウイネーブル信号row_bound_enがイネーブルのとき、ロウアドレスの最下位ビットrow_adrs[0]が"０"であれば、"０"を、最下位ビットrow_adrs[0]が"１"であれば、ＭＡＸ値＝ロウＭＡＸ値（１１）を出力する。最下位ビットrow_adrs[0]は、"０"と"１"とが交互に現れるデータとなるよう、ロウアドレス発生器１３がそのようなロウアドレス信号row_adrs[1:0]を成している。ここで、[n-1:0]は、０〜ｎ−１ビットの計ｎビットの信号であることを示すものとする。すなわち、ＡＤＲＳ[3:0]は、０から３ビット目までの４ビットの信号であることを示す。
【００６９】
セレクタ５３は、ロウアドレス発生器１３からのロウアドレス信号row_adrs[n:0]と、ロウアドレス０ｏｒＭＡＸ値生成回路５２にて生成された０又はＭＡＸ値とが入力され、アドレスセル境界テストモードロウイネーブル信号row_bound_enに基づき、いずれかを選択出力する。アドレスセル境界テストモードロウイネーブル信号row_bound_enがイネーブルのときは、０又はＭＡＸ値を選択してロウアドレスとして出力する。
【００７０】
以上により、アドレスセル境界テストモードロウイネーブル信号row_bound_enがイネーブルの場合、ロウアドレスとして、０又はＭＡＸ値が出力される。一方、このとき、アドレスセル境界テストモードカラムイネーブル信号column_bound_enはディスイネーブルとなっており、セレクタ６３は、カラムアドレス発生器１４が発生したカラムアドレスcol_adrs[n:0]を選択してカラムアドレスとして出力する。カラムアドレス発生器１４は、図４に示すカラムアドレス、すなわち、カラム（００）、カラム（００）、カラム（０１）、カラム（０１）、・・・、カラム（１１）、カラム（１１）を発生する。
【００７１】
図４乃至図１１に示すアドレスセル境界テストの場合は、境界アドレス生成回路２１のアドレスセル境界テストモードロウイネーブル信号row_bound_enか、アドレスセル境界テストモードｃｌｕｍｎイネーブル信号column_bound_enのいずれか一方がイネーブルとなり、他方がディスイネーブルとなって、それぞれロウアドレス、カラムアドレスを出力する。
【００７２】
次に、図１２に示すアドレスセル境界テストを行う場合について説明する。これは、メモリの四つ端のアドレスセル境界に対して対角線方向にＲｅａｄ不良テストを行なうものである。図１２のアドレスセル境界テストのＲｅａｄ動作は図１６（ｂ）に示すように、(ロウ，カラム)＝（ＭＡＸ，ＭＡＸ）から開始し、対角線にある境界アドレス(ロウ，カラム)＝（０，０）へアクセスする。その後、境界アドレス(ロウ，カラム)＝（ＭＡＸ，０）とその対角線にある(ロウ，カラム)＝（０，ＭＡＸ）へアクセスし、終了する。本アドレスセル境界テストは、ロウアドレス、Ｃｏｌｕｎｎアドレスのいずれも０又はＭＡＸ値しかとらない。このため、アドレスセル境界テストモードロウイネーブル信号row_bound_en、及びアドレスセル境界テストモードｃｌｕｍｎイネーブル信号column_bound_enのいずれもイネーブルになり、ロウアドレス／カラムアドレス０ｏｒＭＡＸ値生成回路５２、６２は、いずれもＭＡＸ値記憶回路５１、６１からＭＡＸ値を読み出す。
【００７３】
ここで、ロウアドレスはＭＡＸ値と０が交互に出力されるよう、図１７に示すように、ロウアドレス信号の最下位ビットrow_adrs[0]が０１０１０１と入力される。そして、この最下位ビットrow_adrs[0]に応じ、ロウアドレス０ｏｒＭＡＸ値生成回路５２が０又はＭＡＸ（ロウ（１１））を選択出力する。すなわち、最下位ビットrow_adrs[0]が"０"であれば"０"、"１"であればＭＡＸ値を選択出力する。セレクタ５３は、アドレスセル境界テストモードロウイネーブル信号row_bound_enがイネーブルなので、ロウアドレス０ｏｒＭＡＸ値生成回路５２の出力を選択出力する。
【００７４】
一方、カラムアドレスは、カラムアドレスの最下位ビットclomun_adrs[0]が図１７に示すように、０１０１１０１と入力される。この最下位ビットclomun_adrs[0]に応じてカラムアドレス０ｏｒＭＡＸ値生成回路６２が０又はＭＡＸ（カラム（１１））を選択出力する。すなわち、最下位ビットclomun_adrs[0]が"０"であれば"０"、"１"であればＭＡＸ値を選択出力する。セレクタ６３は、アドレスセル境界テストモードカラムイネーブル信号column_bound_enがイネーブルなので、カラムアドレス０ｏｒＭＡＸ値生成回路６２の出力を選択出力する。
【００７５】
本実施の形態においては、アドレスセル境界テストパターンを生成する境界アドレス生成部を有する。この境界アドレス生成部は、メモリのロウアドレスとカラムアドレスのセル境界のデータＲｅａｄ不良のみをテストするテストパターンを生成するため、メモリテスト時間を短縮することができる。また、マーチテスト、チェッカーボードテストではテストできない方向の境界アドレス間のデータＲｅａｄ不良をテストできることから、より高品質なテストが可能となる。
【００７６】
従来、アドレスセル境界のみをテストするテストパターンは存在していなかった。そのため、従来のマーチテスト、チェッカーボードテストでは、アドレス０とアドレス最大（ＭＡＸ）との間（アドレスセル境界間）のアドレスデコーダのテストを行なうことができない。しかし、アドレス０とアドレス最大のようにアドレスが離れている厳しい条件でデータをＲｅａｄしてテストしなければ、信頼性が高いメモリを提供することができない。
【００７７】
これに対し、本実施の形態においては、境界アドレス生成回路により、アドレスセル境界のみをテストするパターンが生成できる。よって、従来のマーチテスト、チェッカーボードテストではテストできないアドレス０とアドレス最大での間のアドレスセル境界のＲｅａｄ不良テストも行なえるようになることから、従来よりも高品質のテストを行なうことが可能になる。
【００７８】
さらに、各メモリに対応して、ロウ／カラムアドレスセル境界ＭＡＸ値を生成することができる。このため、サイズが異なる複数メモリでＢＩＳＴメイン回路を共有し、各メモリに対してアドレスセル境界のデータＲｅａｄ不良をパラレルにテストできることから、テスト時間を短縮することができる。
【００７９】
実施の形態２．
次に、実施の形態２について説明する。図１８は、複数メモリに対してＢＩＳＴ回路を共有してパラレルにテストを行なう場合のテスト回路を示す図である。図１８に示す本実施の形態にかかる半導体集積回路において、図１に示す実施の形態１にかかる半導体集積回路と同一の構成要素には同一の符号を付しその詳細な説明は省略する。本実施の形態にかかる半導体集積回路７１は、メモリＡ７２、メモリＢ７３と、これに対応するメモリＡ用ＢＩＳＴサブ回路２０Ａ、メモリＢ用ＢＩＳＴサブ回路２０Ｂと、ＢＩＳＴメイン回路１０と、テストモード制御回路３０と、フリップフロップ（Ｆ／Ｆ）７４、７５とを有する。
【００８０】
メモリＡ用ＢＩＳＴサブ回路２０Ａ、メモリＢ用ＢＩＳＴサブ回路２０Ｂは、上述の図１に示すＢＩＳＴサブ回路２０と同様の構成を有する。メモリＡ用ＢＩＳＴサブ回路２０Ａは、結果判定回路の結果ＲＥＳＵＲＴをＦ／Ｆ７４に出力し、メモリＢ用ＢＩＳＴサブ回路２０Ｂは、結果判定回路の結果ＲＥＳＵＲＴをＦ／Ｆ７５に出力する。Ｆ／Ｆ７４、Ｆ／Ｆ７５は、結果判定結果をシフトチェーンで外部へ出力する。これにより、パラレルでテストしても各メモリの判定結果を得ることができる。
【００８１】
この図１８の回路構成でパラレルにカラム方向アドレス昇順のテストを行った場合の例を図１９に示す。本実施の形態におけるＢＩＳＴ回路のように境界アドレス生成回路により境界テストパターンを生成せずとも、メモリＢにおいては、カラム方向アドレス昇順のテストであっても、図１９（ｂ）に示すように、境界アドレス（ロウ，カラム）＝（０，７）から境界アドレス（ロウ，カラム）＝（１，０）へのＲｅａｄテストをすることができる。
【００８２】
一方、サイズが異なるメモリをパラレルテストするため、メモリＡに関しては、上記に相当する境界テストをすることができない。すなわち、メモリＡは、メモリＢよりサイズが小さいため、非存在アドレスへのアクセス状態が発生する。このアクセスの間はメモリＡへのＷｒｉｔｅ動作及び期待値比較は行なわない。よって、メモリＡに関しては境界アドレス（ロウ，カラム）＝（０，３）と境界アドレス（ロウ，カラム）＝（１，０）との間に非存在アドレスのアクセスが入るため、境界テストを行なうことができない。
【００８３】
次に、本実施の形態にかかるＢＩＳＴ回路の境界アドレス生成回路を使用して、パラレルにアドレスセル境界テストを行なった場合の例を図２０に示す。本実施の形態にかかるテスト回路は、メモリ毎に境界アドレス生成回路を有し、各メモリ毎に、その大きさに応じたロウ／カラムアドレスセル境界のＭＡＸ値を生成できる。
【００８４】
すなわち、メモリＡに対応する境界アドレス生成回路は、カラムアドレスのＭＡＸ値としてＭＡＸ＝３を記憶しており、メモリＢに対応する境界アドレス生成回路は、ＭＡＸ値としてＭＡＸ＝７を記憶しており、このＭＡＸ値を読み出し境界テストパターンを生成する。よって、複数のメモリをパラレルでアドレスセル境界におけるＲｅａｄ不良テストを行なうことができる。これにより、複数メモリに対するパラレルテストでも、図１９で行なえなかったメモリＡでのアドレスセル境界のテストを実行することができる。
【００８５】
本実施の形態においては、ＢＩＳＴメイン回路１０を共有し、複数のメモリに対しパラレルでテストを行う場合であっても、各メモリに対応するＢＩＳＴサブ回路２０Ａ、２０Ｂが境界アドレス生成回路を有し、各メモリに対応する境界アドレスを生成するので、上述の同様、境界アドレステストを行うことができる。次に、この効果について説明する。
【００８６】
従来、半導体集積回路において、複数メモリに対してＢＩＳＴ回路を共有してパラレルにテストを行なう場合、図１９（ｂ）のように大サイズのメモリのアドレスに揃えるため、図１９（ａ）に示すように小サイズメモリに対しては従来のマーチテスト、チェッカーボードテストでテストでも可能であった一部のアドレスセル境界間のテストさえもできなくなってしまう。
【００８７】
これに対し、本実施の形態においては、上述の図１に示すように、各対象メモリ毎にロウ／カラムアドレスセル境界ＭＡＸ値を生成できる境界アドレス生成回路とアドレスチェック回路を備えている。これにより、各メモリに対応したアドレスセル境界のみをテストするテストパターンを生成できる。すなわち、図２０（ａ）、（ｂ）に示すように、メモリサイズが大きくても小さくでも、ＢＩＳＴ共有している複数メモリをパラレルでテストする場合にメモリサイズに関係なくアドレスセル境界テストを行なうことが可能となる。
【００８８】
次に、本実施の形態にかかる半導体集積回路におけるテスト時間短縮の効果について説明する。例えば１６ｗｏｒｄ、４カラムのメモリをシリアルにテストする場合で、アドレス０で"０"Ｒｅａｄとアドレス最大値で"１"Ｒｅａｄの対角アドレスセル境界Ｒｅａｄテストを行なうとする。従来であれば、図３に示したようにデータ書き込み状態となるチェッカーボードテストでこのアドレス０とアドレス最大での対角アドレスセル境界のテストを行なうには、カラム方向にアドレス昇順Ｒｅａｄを連続して２回、アドレス降順Ｒｅａｄを連続して２回繰り返すことでテスト実現可能である。
【００８９】
この場合のメモリテスト時間は
１６ｗｏｒｄ×（アドレス昇順２回＋アドレス降順２回Ｒｅａｄ）＝６４パターン
かかることになる。Ｒｅａｄデータ"０"と"１"を逆にした場合のテストも行うとすると、さらに２倍となり、
６４パターン×２＝１２８パターン
が必要となる。
【００９０】
一方、本実施の形態にかかるアドレスセル境界テストパターンを生成すると、上述と同様にアドレス０とアドレス最大値で対角アドレスセル境界Ｒｅａｄテストを行なう場合、図１２に示す対角アドレスセル境界テストを行なうことになる。上述に含まれない（ロウ，カラム）＝（０，ＭＡＸ）と（ロウ，カラム）＝（ＭＡＸ，０）のテスト実施も含め、データ"０"と"１"を入れ替えた場合でも、
６パターン×データ"０"／"１"（２回）＝１２パターン
でテストすることができる。
【００９１】
さらに、ＢＩＳＴ回路共有した複数メモリをテストする場合の本実施の形態にかかるテスト時間短縮効果について説明する。例えば図１８に示すように１６ｗｏｒｄ、４カラムのメモリＡと３２ｗｏｒｄ、８カラムのメモリＢに関してＢＩＳＴ回路を共有してパラレルにテストする場合について説明する。
【００９２】
図３に示したようにデータ書き込み状態となるチェッカーボードテストでのカラム方向Ｒｅａｄ動作を考えた場合、図１９に示すようにメモリＡを包含するサイズであるメモリＢを基準にパラレルテストが行なわれる。従来方法であればアドレス昇順２回、降順２回、データ"０"と"１"入れ替えでＲｅａｄテストすることで、メモリＢに関しては図８、図１０、及び図１２のアドレス０とアドレス最大値での対角アドレスセル境界に関してはテストすることができる。しかし、メモリＡは、図１９（ａ）に示すように、いずれのアドレスセル境界テストも行うことができない。よって、別途アドレスセル境界テストのためにメモリＡのみシリアルでテストする必要がある。
【００９３】
従って、メモリＢでのテスト時間である
３２Ｗｏｒｄ×（アドレス昇順２回＋アドレス降順２回Ｒｅａｄ）×データ"０"／"１" ２回＝２５６パターン
とメモリＡのテスト時間である
１６Ｗｏｒｄ×（アドレス昇順２回＋アドレス降順２回Ｒｅａｄ）×データ"０"／"１" ２回＝１２８パターン
を合計した３８４パターンが必要となる。
【００９４】
一方、本実施の形態にかかるテスト回路においては、アドレスセル境界テストパターンを生成できるため、メモリＢを基準としたチェッカーボードテストと図８、図１０、及び図１２に示すアドレスセル境界テストを実施すれば、上述と同様のテストが行なえる。この場合のテスト時間は、メモリＢサイズのチェッカーボードテストの
３２Ｗｏｒｄ×（アドレス昇順１回＋アドレス降順１回Ｒｅａｄ）×データ"０"／"１" ２回＝１２８パターン
図８、図１０に示すアドレスセル境界テストの
（（ロウアドレスセル段数４段×カラム境界２段−１）×デ−タ"０"／"０"２回）×テスト２種＝２８パターン
そして、図１２に対角アドレスセル境界テストの
６パターン×データ"０"／"１"（２回）＝１２パターン
の合計である
１２８＋２８＋１２＝１６８パターン
でテストすることができる。
【００９５】
さらに、従来のマーチテスト、チェッカーボードテストではテストできないアドレスセル境界テストパターンを生成することも可能である。すなわち、上述したように図５、図７、図９、図１１に示すようなテストパターンも生成することができる。また、ＢＩＳＴを共有して複数メモリをパラレルでテストすれば、アドレスセル境界テストパターンはＷｏｒｄサイズやメモリの個数にテスト時間が比例することなく、短時間でテストが可能である。
【００９６】
実施の形態３．
次に、このようなＢＩＳＴ回路の設計装置及び設計方法について説明する。図２１、２２は、本実施の形態にかかるＢＩＳＴ回路の設計装置及び設計方法を示す図である。図２１に示すように、設計装置８０は、設計データ（ネットリスト）から、ＢＩＳＴ回路の設計に必要なデータを入力するデータ入力部８５と、ＢＩＳＴ回路の雛形を取得し、データ入力部８５からの入力データを使用してＢＩＳＴ回路を生成するＢＩＳＴ回路生成部８６と、生成したＢＩＳＴ回路を出力するＢＩＳＴ回路出力部８７とを有する。
【００９７】
次に、この設計装置の動作について、図２１、図２２を参照して説明する。図２１に示す設計装置は、図２２に示すように、先ず、データ入力部８５がＬＳＩの設計データ８１からメモリのサイズ、個数等のデータをＢＩＳＴ回路生成部８６へ入力し、ＢＩＳＴ回路の組み込み指示を行なう（ステップＳ１）。次に、ＢＩＳＴ回路にアドレスセル境界テストを組み込むか否かを決定する（ステップＳ２）。アドレスセル境界テストを組み込む場合は、ＢＩＳＴ回路生成部８６は、境界アドレス生成回路を含みアドレスセル境界テストが可能なＢＩＳＴ回路の雛形８２を設計データ８１から取得し、アドレスセル境界テストが可能なＢＩＳＴ回路を生成する。この場合、上述したように、例えば図２に示す境界アドレス生成回路が保持するロウアドレスＭＡＸ値や、カラムアドレスＭＡＸ値等を入力する。一方、アドレスセル境界テストを組み込まない場合には、境界アドレス生成回路を有さないＢＩＳＴ回路の雛形８３を取得し、ＢＩＳＴ回路を生成する（ステップＳ４）。そして、最後に生成したテスト回路を出力する（ステップＳ５）。
【００９８】
本実施の形態においては、メモリセル境界間のＲｅａｄ不良を検出するための境界テストを行うことができるＢＩＳＴ回路を組み込むことができるので、信頼性が高い半導体集積回路を設計することができる。
【００９９】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施の形態１にかかるテスト回路を示すブロック図である。
【図２】本発明の実施の形態１にかかるテスト回路における境界アドレス生成回路の詳細の一例を示すブロック図である。
【図３】（ａ）は、メモリアドレスセル構造を示す模式図、（ｂ）は、テスト書き込みデータを示す図である。
【図４】本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図５】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図６】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図７】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図８】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図９】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図１０】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図１１】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図１２】同じく、本発明の実施の形態１にかかるテスト回路で行なうアドレスセル境界テストの一例を示す図であって、そのアドレス構成及びメモリへのアクセス方法を示す図である。
【図１３】図１２と同様の境界テストを行うことができる他のアドレスパターンを示す図である。
【図１４】（ａ）はメモリセルの構成を示す図、（ｂ）は、図４に示す境界テストの動作を説明するための図である。
【図１５】図４に示す境界テストを行なう境界アドレス生成回路のタイミングチャートである。
【図１６】（ａ）はメモリセルの構成を示す図、（ｂ）は、図１２に示す境界テストの動作を説明するための図である。
【図１７】図１２に示す境界テストを行なう境界アドレス生成回路のタイミングチャートである。
【図１８】複数メモリに対してＢＩＳＴ回路を共有してパラレルにテストを行なう場合のテスト回路を示す図である。
【図１９】図１８の回路構成でパラレルにカラム方向アドレス昇順のテストを行った場合のメモリへのアクセス方法を示す図である。
【図２０】本発明の実施の形態２にかかるＢＩＳＴ回路の境界アドレス生成回路を使用して、パラレルにアドレスセル境界テストを行なった場合のメモリへのアクセス方法を示す図である。
【図２１】本発明の実施の形態３にかかるＢＩＳＴ回路の設計装置を示す図である。
【図２２】本発明の実施の形態３にかかるＢＩＳＴ回路の設計方法を示す図である。
【図２３】特許文献１に記載の半導体集積回路を示すブロック図である。
【図２４】特許文献２に記載の半導体集積回路を示す図である。
【図２５】特許文献３記載の半導体集積回路を示すブロック図である。
【符号の説明】
【０１０１】
１１  テスト制御回路
１２  アドレスセル境界テストモードEnable生成器
１３  ロウアドレス発生器
１４  カラムアドレス発生器
１５  テストデータ生成器
１６  期待値生成器
２０、２０Ａ、２０Ｂ  ＢＩＳＴサブ回路
２１  境界アドレス生成回路
２２  アドレス連結回路
２３  アドレスチェック回路
２４  メモリ制御回路
２５  データＢＩＴ拡張回路
２６  期待値比較回路
２７  結果判定回路
３０  テストモード制御回路
５１  メモリロウアドレスＭＡＸ値記憶回路
５２  ロウアドレス０ｏｒＭＡＸ値生成回路
５３、６３  セレクタ
６１  メモリカラムアドレスＭＡＸ値記憶回路
６２  カラムアドレス０ｏｒＭＡＸ値生成回路
７１  半導体集積回路
７２、７３  メモリ
８０  設計装置
８１  設計データ
８２、８３  雛形
８５  データ入力部
８６  ＢＩＳＴ回路生成部
８７  ＢＩＳＴ回路出力部
【図１】
2008084411.tif 000003
【図２】
2008084411.tif 000004
【図３】
2008084411.tif 000005
【図４】
2008084411.tif 000006
【図５】
2008084411.tif 000007
【図６】
2008084411.tif 000008
【図７】
2008084411.tif 000009
【図８】
2008084411.tif 000010
【図９】
2008084411.tif 000011
【図１０】
2008084411.tif 000012
【図１１】
2008084411.tif 000013
【図１２】
2008084411.tif 000014
【図１３】
2008084411.tif 000015
【図１４】
2008084411.tif 000016
【図１５】
2008084411.tif 000017
【図１６】
2008084411.tif 000018
【図１７】
2008084411.tif 000019
【図１８】
2008084411.tif 000020
【図１９】
2008084411.tif 000021
【図２０】
2008084411.tif 000022
【図２１】
2008084411.tif 000023
【図２２】
2008084411.tif 000024
【図２３】
2008084411.tif 000025
【図２４】
2008084411.tif 000026
【図２５】
2008084411.tif 000027
【手続補正書】
【提出日】平成19年6月29日(2007.6.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
メモリと、
前記メモリのテストをするＢＩＳＴ回路とを有し、
前記ＢＩＳＴ回路は、前記メモリのロウアドレス又はカラムアドレスを生成するものであって、その少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路を有する、半導体集積回路。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項５
【補正方法】変更
【補正の内容】
【請求項５】
前記境界アドレス生成回路は、前記ロウアドレス又はカラムアドレスの一方のアドレス
として、前記最上位アドレスと最下位アドレスを交互に生成し、他方のアドレスとして、前記最上位アドレス又は前記最下位アドレス毎にインクリメント又はデクリメントしたアドレスを出力する
ことを特徴とする請求項１記載の半導体集積回路。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１０
【補正方法】変更
【補正の内容】
【請求項１０】
メモリのロウ又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストのためのアドレスを生成するアドレス生成部と、
前記メモリから読み出したテストデータと期待値とを照合する期待値照合部とを有し、
前記アドレス生成部は、前記メモリのロウアドレス又はカラムアドレスを生成するものであって、その少なくともいずれか一方は、前記最上位アドレスと前記最下位アドレスを交互に生成する、ＢＩＳＴ回路。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
本発明にかかる半導体集積回路はメモリと、前記メモリのテストをするＢＩＳＴ回路とを有し、前記ＢＩＳＴ回路は、前記メモリのロウアドレス又はカラムアドレスを生成するものであって、その少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路を有するものである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
本発明にかかるＢＩＳＴ回路は、メモリのロウ又はカラムアドレスの少なくとも一方が最上位アドレス又は最下位アドレスを有する境界セルに対するアクセステストを行なう境界テストのためのアドレスを生成するアドレス生成部と、前記メモリから読み出したテストデータと期待値とを照合する期待値照合部とを有し、前記アドレス生成部は、前記メモリのロウアドレス又はカラムアドレスを生成するものであって、その少なくともいずれか一方は、前記最上位アドレスと前記最下位アドレスを交互に生成するものである。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
本発明においては、メモリのロウアドレス又はカラムアドレスを生成するものであって、その少なくとも一方は、当該メモリの最上位アドレスと最下位アドレスを交互に生成する境界アドレス生成回路又はアドレス生成部を有するので、ロウアドレス又はカラムアドレスのうち少なくともいずれか一方は最上位アドレス又は最下位アドレスを有する境界セルに対し、データを書き込み、又は境界セルからデータを読み出しその書き込み又は読み出し不良検査を行なうことができる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
また、ロウ／カラムアドレス発生器１３、１４、テストデータ生成器１５、期待値生成器１６は、ＴＥＳＴ信号値にあったそれぞれアドレス、データ、期待値を発生する。例えばテストデータ生成器１５は、マーチテストであればマーチングパターンを生成し、チェッカーボードテストであればチェッカボードパターンを生成し、境界テストであれば、境界アドレステストパターンを生成する。同様に、ロウ／カラムアドレス発生器１３、１４は、例えばマーチテストやチェッカーボードテストであれば昇順又は降順アドレスを生成し、境界テストであれば、後述する境界アドレス生成回路２１の生成するアドレスと組み合わせて、後述する図４から図１２に示す境界アドレスをテストするためのアドレスを生成する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
ＢＩＳＴサブ回路２０は、メモリ毎に用意される。このＢＩＳＴサブ回路２０は、境界アドレス生成回路２１、アドレス連結回路２２、アドレスチェック回路２３、メモリ制御回路２４、データＢＩＴ拡張回路２５、期待値比較回路２６、及び結果判定回路２７を有する。境界アドレス生成回路２１は、アドレスセル境界テストモードでは、上述したアドレス発生器１３、１４から出力されるアドレスに基づいて、ロウ／カラムアドレスのいずれか一方、もしくは両方で最上位アドレス値と最下位アドレス値を交互に発生し、出力する。また、マーチテストやチェッカーボードテストのモードでは、アドレス生成器１３、１４から出力される昇順又は降順のアドレス値をそのまま出力する。この境界アドレス生成回路２１の詳細は後述する。