(57)【要約】【課題】マルチポートメモリをテストするのに好適な組み込み自己テスト回路を備える集積回路装置を実現する。【解決手段】第１のクロック信号が入力される第１のポートと、第２のクロック信号が入力される第２のポートとを有するメモリと；前記第１のクロック信号が入力される第１の信号生成回路と、前記第２のクロック信号が入力される第２の信号生成回路と、前記第１及び第２のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力するクロック選択回路と、前記第１又は第２のクロック信号を要求するクロック要求信号を前記クロック選択回路に出力し、前記クロック選択回路により選択され出力されたクロック信号に基づいて動作し、前記第１又は第２の信号生成回路を制御するための制御信号を出力する制御回路とを有する組み込み自己テスト回路と；を備えることを特徴とする集積回路装置。【選択図】図１
2008123604.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロック信号が入力される第１のポートと、
第２のクロック信号が入力される第２のポートと、
を有するメモリと；
前記第１のクロック信号が入力され、前記第１のクロック信号に基づいて動作し、前記メモリをテストするための信号を生成し出力する第１の信号生成回路と、
前記第２のクロック信号が入力され、前記第２のクロック信号に基づいて動作し、前記メモリをテストするための信号を生成し出力する第２の信号生成回路と、
前記第１及び第２のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力するクロック選択回路と、
前記第１又は第２のクロック信号を要求するクロック要求信号を前記クロック選択回路に出力し、前記クロック選択回路により選択され出力されたクロック信号に基づいて動作し、前記第１又は第２の信号生成回路を制御するための制御信号を出力する制御回路と、
を有する組み込み自己テスト回路と；
を備えることを特徴とする集積回路装置。
【請求項２】
前記制御回路は、前記クロック要求信号で要求するクロック信号の切り替えを、現在のクロック信号の立ち上がり又は立ち下がりを基準として行うことを特徴とする請求項１に記載の集積回路装置。
【請求項３】
前記クロック選択回路は、パルス幅が閾値以下又は閾値未満のパルスをキャンセルするパルスキャンセル回路を有することを特徴とする請求項１又は２に記載の集積回路装置。
【請求項４】
前記第１及び第２の信号出力回路はそれぞれ、アドレス信号を生成し出力するアドレス生成回路と、データ信号を生成し出力するデータ生成回路と、前記メモリ用の制御信号を生成し出力する制御信号生成回路とを有することを特徴とする請求項１乃至３のいずれか１項に記載の集積回路装置。
【請求項５】
第１のクロック信号が入力される第１のポートと、
第２のクロック信号が入力される第２のポートと、
を有する第１のメモリと；
第３のクロック信号が入力される第３のポートと、
第４のクロック信号が入力される第４のポートと、
を有する第２のメモリと；
前記第１のクロック信号が入力され、前記第１のクロック信号に基づいて動作し、前記第１のメモリをテストするための信号を生成し出力する第１の信号生成回路と、
前記第２のクロック信号が入力され、前記第２のクロック信号に基づいて動作し、前記第１のメモリをテストするための信号を生成し出力する第２の信号生成回路と、
前記第３のクロック信号が入力され、前記第３のクロック信号に基づいて動作し、前記第２のメモリをテストするための信号を生成し出力する第３の信号生成回路と、
前記第４のクロック信号が入力され、前記第４のクロック信号に基づいて動作し、前記第２のメモリをテストするための信号を生成し出力する第４の信号生成回路と、
前記第１及び第２のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する第１のクロック選択回路と、
前記第３及び第４のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する第２のクロック選択回路と、
前記第１のクロック選択回路により選択され出力されたクロック信号及び前記第２のクロック選択回路により選択され出力されたクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する選択回路と、
前記第１又は第２のクロック信号を要求するクロック要求信号を前記第１のクロック選択回路に出力し、前記第３又は第４のクロック信号を要求するクロック要求信号を前記第２のクロック選択回路に出力し、前記選択回路により選択され出力されたクロック信号に基づいて動作し、前記第１、第２、第３、又は第４の信号生成回路を制御するための制御信号を出力する制御回路と、
を有する組み込み自己テスト回路と；
を備えることを特徴とする集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路装置、例えば、組み込み自己テスト回路を具備する半導体集積回路に関する。
【背景技術】
【０００２】
埋め込みメモリが埋め込まれた半導体集積回路に、組み込み自己テスト回路（Built-In Self Test回路。以下「ＢＩＳＴ回路」と呼ぶ）を組み込み、半導体集積回路の製造テストにおいて、メモリの故障をＢＩＳＴ回路により検出する方法が広く用いられている。故障検出方法の具体例としては、書き込みデータと読み出しデータとを読み出し毎に比較し、比較結果を元に故障の有無を判別する「比較器型ＢＩＳＴ」や、読み出し結果をまとめて圧縮し、圧縮結果を元に故障の有無を判別する「圧縮器型ＢＩＳＴ」が挙げられる。
【０００３】
ＢＩＳＴ回路の動作クロックは、メモリの動作クロックと周期を合わせる必要がある。特に、高速のテスト動作を行う場合は、ＢＩＳＴ回路のクロックとメモリのクロックとを同源にして、クロックのスキューが最小限となるよう、クロックツリー合成等の調整処理を行わなければならない。
【０００４】
ところで、複数のポートを有するマルチポートメモリでは、クロック入力がポート毎に別々に設けられているのが一般的である。そして、これらのポートにはそれぞれ、互いに周波数の独立したクロックが与えられている場合がある。このような場合、このままではＢＩＳＴ回路の動作クロックをこれらの全てのポートと同期させることはできず、テストを正しく進めることができない。ＢＩＳＴ回路の動作クロックを各ポートと同期させるために、テストの際には各ポートに同源のクロックが供給されるよう、各ポートのクロック入力に切り替え回路を設けることもできる。しかし、マルチポートメモリの動作クロックは高速であることが多く、切り替え回路の挿入は、マルチポートメモリの性能への影響が大きい。また、切り替え回路の挿入には、システムクロックのクロック周波数でのテストができなくなるという難点もある。
【０００５】
特許文献１には、切り替え回路なしでＢＩＳＴ回路によるテストを行う回路構成が開示されている。特許文献１では、第１のクロックに応じてメモリの全アドレスへの書き込みを行った後、第２のクロックに応じてメモリの全アドレスからの読み出しを行っている。しかしながらこれは、ＢＩＳＴ回路によるテストのアルゴリズムとしては最も単純なアルゴリズムであり、一般的には、アドレス毎に書き込みと読み出しとを交互に行う「マーチテスト」等の、より複雑なアルゴリズムが用いられる。このような複雑なアルゴリズムによるテストでは、動作途中で頻繁にポートが切り替わるので、特許文献１の回路構成ではこれを実行することはできない。
【特許文献１】特開２００３−２１７２９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、マルチポートメモリをテストするのに好適な組み込み自己テスト回路を具備する集積回路装置を実現することを課題とする。
【課題を解決するための手段】
【０００７】
本発明は例えば、第１のクロック信号が入力される第１のポートと、第２のクロック信号が入力される第２のポートとを有するメモリと；前記第１のクロック信号が入力され、前記第１のクロック信号に基づいて動作し、前記メモリをテストするための信号を生成し出力する第１の信号生成回路と、前記第２のクロック信号が入力され、前記第２のクロック信号に基づいて動作し、前記メモリをテストするための信号を生成し出力する第２の信号生成回路と、前記第１及び第２のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力するクロック選択回路と、前記第１又は第２のクロック信号を要求するクロック要求信号を前記クロック選択回路に出力し、前記クロック選択回路により選択され出力されたクロック信号に基づいて動作し、前記第１又は第２の信号生成回路を制御するための制御信号を出力する制御回路とを有する組み込み自己テスト回路と；を備えることを特徴とする集積回路装置に係る。
【０００８】
本発明は例えば、第１のクロック信号が入力される第１のポートと、第２のクロック信号が入力される第２のポートとを有する第１のメモリと；第３のクロック信号が入力される第３のポートと、第４のクロック信号が入力される第４のポートとを有する第２のメモリと；前記第１のクロック信号が入力され、前記第１のクロック信号に基づいて動作し、前記第１のメモリをテストするための信号を生成し出力する第１の信号生成回路と、前記第２のクロック信号が入力され、前記第２のクロック信号に基づいて動作し、前記第１のメモリをテストするための信号を生成し出力する第２の信号生成回路と、前記第３のクロック信号が入力され、前記第３のクロック信号に基づいて動作し、前記第２のメモリをテストするための信号を生成し出力する第３の信号生成回路と、前記第４のクロック信号が入力され、前記第４のクロック信号に基づいて動作し、前記第２のメモリをテストするための信号を生成し出力する第４の信号生成回路と、前記第１及び第２のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する第１のクロック選択回路と、前記第３及び第４のクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する第２のクロック選択回路と、前記第１のクロック選択回路により選択され出力されたクロック信号及び前記第２のクロック選択回路により選択され出力されたクロック信号が入力され、入力されたクロック信号の内のいずれか１つを選択し出力する選択回路と、前記第１又は第２のクロック信号を要求するクロック要求信号を前記第１のクロック選択回路に出力し、前記第３又は第４のクロック信号を要求するクロック要求信号を前記第２のクロック選択回路に出力し、前記選択回路により選択され出力されたクロック信号に基づいて動作し、前記第１、第２、第３、又は第４の信号生成回路を制御するための制御信号を出力する制御回路とを有する組み込み自己テスト回路と；を備えることを特徴とする集積回路装置に係る。
【発明の効果】
【０００９】
本発明は、マルチポートメモリをテストするのに好適な組み込み自己テスト回路を具備する集積回路装置を実現することを可能にする。
【発明を実施するための最良の形態】
【００１０】
（第１実施例）
図１は、第１実施例の集積回路装置１０１の回路構成図である。該集積回路装置１０１は、共通のＩＣ基盤上に設けられた、１つのメモリ１１１と、１つのＢＩＳＴ回路１１２と、システム論理１１３Ａ，Ｂとを備える。
【００１１】
メモリ１１１は、複数のポートを有するマルチポートメモリであり、ここでは、２つのポート１２１Ａ，Ｂを有している。ポート１２１Ａは、書き込み用のポートであり、ポート１２１Ａには、書き込み用のシステム信号２０１Ａがシステム論理１１３Ａから入力される。ポート１２１Ｂは、読み出し用のポートであり、ポート１２１Ｂからは、読み出し用のシステム信号２０１Ｂがシステム論理１１３Ｂに出力される。更に、ポート１２１Ａには、書き込み用のクロック信号２０２Ａがシステム論理１１３Ａのクロック生成回路１１４Ａから入力され、ポート１２１Ｂには、読み出し用のクロック信号２０２Ｂがシステム論理１１３Ｂのクロック生成回路１１４Ｂから入力される。クロック信号２０２Ａ，Ｂはここでは、互いに異なるクロック生成回路１１４Ａ，Ｂから生成される、互いに周波数の独立したクロック信号である。
【００１２】
ポート１２１Ａ，Ｂのピン構成の具体例をそれぞれ、図２Ａ，Ｂに示す。ポート１２１Ａ，Ｂはここではそれぞれ、複数本のアドレスピンと、複数本のデータピンと、１本のチップイネーブルピンと、１本のライトイネーブルピン又はリードイネーブルピンと、１本のクロックピンにより構成されている。
【００１３】
ＢＩＳＴ回路１１２は、メモリ１１１をテストするための集積回路であり、ここでは、２つの信号生成回路１３１Ａ，Ｂと、１つのクロック選択回路１３２と、１つの制御回路１３３とを有している。信号生成回路１３１Ａ，Ｂはそれぞれ、アドレス生成回路１４１Ａ，Ｂと、データ生成回路１４２Ａ，Ｂと、制御信号生成回路１４３Ａ，Ｂとを有する。クロック選択回路１３２は、パルスキャンセル回路１４４を有する。
【００１４】
信号生成回路１３１Ａ，Ｂにはそれぞれ、クロック信号２０２Ａ，Ｂが入力される。信号生成回路１３１Ａ，Ｂはそれぞれ、クロック信号２０２Ａ，Ｂに基づいて動作し、メモリ１１１をテストするためのＢＩＳＴ信号２１１Ａ，Ｂを生成し出力する。ＢＩＳＴ信号２１１Ａ，Ｂはここではそれぞれ、アドレス生成回路１４１Ａ，Ｂにより生成され出力されるアドレス信号２２１Ａ，Ｂと、データ生成回路１４２Ａ，Ｂにより生成され出力されるデータ信号２２２Ａ，Ｂと、制御信号生成回路１４３Ａ，Ｂにより生成され出力されるメモリ１１１用の制御信号２２３Ａ，Ｂにより構成される。信号生成回路１３１Ａ，Ｂによって生成され出力されたＢＩＳＴ信号２１１Ａ，Ｂは、メモリ１１１に入力される。
【００１５】
クロック選択回路１３２には、クロック信号２０２Ａ及びクロック信号２０２Ｂが入力される。クロック選択回路１３２は、入力されたクロック信号の内のいずれか１つ（ここではクロック信号２０２Ａ又はクロック信号２０２Ｂ）を選択し出力する。クロック選択回路１３２によって選択され出力されたクロック信号２０２Ｘは、制御回路１３３に入力される。
【００１６】
制御回路１３３は、有限状態マシン（ＦＳＭ）の一種であり、ここでは、書き込み用のクロック信号２０２Ａで動作する書き込みモードと、読み出し用のクロック信号２０２Ｂで動作する読み出しモードとを有する。
【００１７】
制御回路１３３は、読み出しモードから書き込みモードに遷移する際には、書き込み用のクロック信号２０２Ａを要求するクロック要求信号２１２を、クロック選択回路１３２に出力する。これに応じて、クロック選択回路１３２は、クロック信号２０２Ａを選択し出力する。そして、書き込みモードの制御回路１３３は、クロック選択回路１３２により選択され出力されたクロック信号２０２Ｘ（即ちクロック信号２０２Ａ）に基づいて動作し、信号生成回路１３１Ａを制御するための制御信号２１３を出力する。これに応じて、信号生成回路１３１Ａは、メモリ１１１をテストするためのＢＩＳＴ信号２１１Ａを生成し出力する。
【００１８】
制御回路１３３は、書き込みモードから読み出しモードに遷移する際には、読み出し用のクロック信号２０２Ｂを要求するクロック要求信号２１２を、クロック選択回路１３２に出力する。これに応じて、クロック選択回路１３２は、クロック信号２０２Ｂを選択し出力する。そして、読み出しモードの制御回路１３３は、クロック選択回路１３２により選択され出力されたクロック信号２０２Ｘ（即ちクロック信号２０２Ｂ）に基づいて動作し、信号生成回路１３１Ｂを制御するための制御信号２１３を出力する。これに応じて、信号生成回路１３１Ｂは、メモリ１１１をテストするためのＢＩＳＴ信号２１１Ｂを生成し出力する。
【００１９】
ここで、単純なテストアルゴリズムの具体例と複雑なテストアルゴリズムの具体例とをそれぞれ、図３と図４とに示す。図３では、メモリの全アドレスへの「０」の書き込みを行った後、該メモリの全アドレスからの「０」の読み出しを行っており、更に該メモリの全アドレスへの「１」の書き込みを行った後、該メモリの全アドレスからの「１」の読み出しを行っている。図３に対応する状態遷移図を、図５に示す。一方、図４では、メモリの全アドレスへの「０」の書き込みを行った後、該メモリの各アドレス毎に「０」の読み出しと「１」の書き込みと「１」の読み出しとを交互に行っている。図４に対応する状態遷移図を、図６に示す。
【００２０】
図１のＢＩＳＴ回路１１２は、図１のメモリ１１１をテストする場合、書き込み時には書き込み用のクロック信号２０２Ａで動作する必要があり、読み出し時には読み出し用のクロック信号２０２Ｂで動作する必要がある。そのため、該ＢＩＳＴ回路１１２による該メモリ１１１のテストでは、クロック信号の切り替えの頻度が問題となる。図３のような単純なテストアルゴリズムが採用される場合には、クロック信号を頻繁に切り替える必要はないが、図４のような複雑なテストアルゴリズムが採用される場合には、クロック信号を頻繁に切り替える必要がある。
【００２１】
図１のＢＩＳＴ回路１１２では、テストアルゴリズムの進行は、有限状態マシンである制御回路１３３によって制御される。図３のテストアルゴリズムが採用される場合、制御回路１３３の状態は図５の状態遷移図のように遷移し、図４のテストアルゴリズムが採用される場合、制御回路１３３の状態は図６の状態遷移図のように遷移する。クロック信号の切り替えは、制御回路１３３の状態遷移に伴うアクションである、制御回路１３３からクロック選択回路１３２へのクロック要求信号２１２の出力によって実行される。図１のＢＩＳＴ回路１１２は、このような制御回路１３３の存在によって、クロック信号の頻繁な切り替えにも対応可能となっている。制御回路１３３が制御可能なテストアルゴリズムの具体例としては、マーチテストアルゴリズムが挙げられる。
【００２２】
ここで、クロック要求信号２１２の波形図を、図７に示す。正（ハイ）のクロック要求信号２１２はここでは、クロック信号２０２Ａを要求する信号に相当し、負（ロー）のクロック要求信号２１２はここでは、クロック信号２０２Ｂを要求する信号に相当する。クロック要求信号２１２が正から負に切り替わることで、該クロック要求信号２１２で要求されるクロック信号がクロック信号２０２Ａからクロック信号２０２Ｂに切り替わり、クロック要求信号２１２が負から正に切り替わることで、該クロック要求信号２１２で要求されるクロック信号がクロック信号２０２Ｂからクロック信号２０２Ａに切り替わる。
【００２３】
制御回路１３３は、最低限のクロックパルス幅を確保するために、図７のように、クロック要求信号２１２で要求するクロック信号の切り替えを、現在のクロック信号２０２Ｘの立ち下がりを基準として行う。図７では、クロック要求信号２１２で要求するクロック信号の切り替えが、時刻α，β，γにおいてそれぞれ、クロック信号２０２Ａ，クロック信号２０２Ｂ，クロック信号２０２Ａの立ち下がりを基準として行われている。
【００２４】
この場合、時刻β直後のクロック信号２０２Ｘのように、切り替え直後のクロック信号２０２Ｘに、パルス幅の狭い負のパルス（ローのパルス）が発生することがある。これを防止するため、クロック選択回路１３２には、パルス幅が閾値以下（又は閾値未満）の負のパルスをキャンセルするパルスキャンセル回路１４４が設けられている。これにより、クロック信号２０２Ｘはクロック信号２０２Ｘ’のようになり、最低パルス幅以下（又は最低パルス幅未満）の負のパルスがキャンセルされることになる。パルスキャンセル回路１４４の回路構成図の具体例を、図８に示す。
【００２５】
なお、制御回路１３３は、クロック要求信号２１２で要求するクロック信号の切り替えを、クロック信号２０２Ｘの立ち上がりを基準として行うようにしてもよい。この場合、クロック選択回路１３２には、パルス幅が閾値以下（又は閾値未満）の正のパルス（ハイのパルス）をキャンセルするパルスキャンセル回路１４４が設けられることになる。
【００２６】
以上のような構成及び処理により、図１の集積回路装置１０１は、複数の互いに独立なクロックを有するメモリ１１１のＢＩＳＴ回路１１２によるテストを、システムクロックに変更を加えることなく行うことができるようになる。本実施例は、マーチアルゴリズムを用いるテストのように、同一アドレスに対して書き込みと読み出しとが交互に行われ、その都度クロック信号の切り替えが要求されるようなテストについても適用可能である。本実施例は例えば、比較器型ＢＩＳＴや圧縮器型ＢＩＳＴに適用可能である。前者の場合には比較器や比較結果解析器が、後者の場合には圧縮器や圧縮結果解析器が、図１の集積回路装置１０１に設けられることになる。該圧縮器としては例えば、「Built-In Test for VLSI: Pseudo Random Techniques, Paul H. Bardell, William H. McAnney and Jacob Savir, John Wiley & Sons, 1987」にあるような、Linear Feedback Shift Registerの変形形態であるMultiple Input Signature Register（ＭＩＳＲ）が使用可能である。
【００２７】
本実施例は、２つのポートを有するマルチポートメモリだけでなく、３つ以上のポートを有するマルチポートメモリにも適用可能である。メモリ１１１がＮ個のポート１２１を有し、メモリ１１１にＮ種類のシステム信号２０１及びクロック信号２０２が入力される場合（Ｎは２以上の整数）、ＢＩＳＴ回路１１２には、Ｎ個の信号生成回路１３１と、１個のクロック選択回路１３２と、１個の制御回路１３３とが設けられる。
【００２８】
この場合、第１，第２，，，第Ｎの信号生成回路１３１はそれぞれ、第１，第２，，，第Ｎのクロック信号２０２が入力され、第１，第２，，，第Ｎのクロック信号２０２に基づいて動作し、メモリ１１１をテストするための第１，第２，，，第ＮのＢＩＳＴ信号２１１を生成し出力する。また、クロック選択回路１３２は、第１，第２，，，及び第Ｎのクロック信号２０２が入力され、第１，第２，，，又は第Ｎのクロック信号２０２を選択し出力する。また、制御回路１３３は、第１，第２，，，又は第Ｎのクロック信号２０２を要求するクロック要求信号２１２をクロック選択回路１３２に出力し、クロック選択回路１３２により選択され出力されたクロック信号２０２に基づいて動作し、第１，第２，，，又は第Ｎの信号生成回路１３１を制御するための制御信号２１３を出力する。
【００２９】
本実施例は更に、１つのＢＩＳＴ回路が１つのマルチポートメモリをテストするような集積回路装置だけでなく、１つのＢＩＳＴ回路が２つ以上（例えば数十個〜数百個ほど）のマルチポートメモリをテストするような集積回路装置にも適用可能である。このような実施例については、第２実施例において説明する。
【００３０】
（第２実施例）
図９は、第２実施例の集積回路装置１０１の回路構成図である。該集積回路装置１０１は、共通のＩＣ基盤上に設けられた、２つのメモリ１１１Ａ，Ｂと、１つのＢＩＳＴ回路１１２と、システム論理１１３Ａ，Ｂ，Ｃ，Ｄとを備える。
【００３１】
メモリ１１１Ａは、複数のポートを有するマルチポートメモリであり、ここでは、２つのポート１２１Ａ，Ｂを有している。メモリ１１１Ｂも同様に、複数のポートを有するマルチポートメモリであり、ここでは、２つのポート１２１Ｃ，Ｄを有している。ポート１２１Ａ，Ｃは、書き込み用のポートであり、ポート１２１Ａ，Ｃにはそれぞれ、書き込み用のシステム信号２０１Ａ，Ｃがシステム論理１１３Ａ，Ｃから入力される。ポート１２１Ｂ，Ｄは、読み出し用のポートであり、ポート１２１Ｂ，Ｄからはそれぞれ、読み出し用のシステム信号２０１Ｂ，Ｄがシステム論理１１３Ｂ，Ｄに出力される。更に、ポート１２１Ａ，Ｃにはそれぞれ、書き込み用のクロック信号２０２Ａ，Ｃがシステム論理１１３Ａ，Ｃのクロック生成回路１１４Ａ，Ｃから入力され、ポート１２１Ｂ，Ｄにはそれぞれ、読み出し用のクロック信号２０２Ｂ，Ｄがシステム論理１１３Ｂ，Ｄのクロック生成回路１１４Ｂ，Ｄから入力される。クロック信号２０２Ａ，Ｂはここでは、互いに異なるクロック生成回路１１４Ａ，Ｂから生成される、互いに周波数の独立したクロック信号である。クロック信号２０２Ｃ，Ｄもここでは、互いに異なるクロック生成回路１１４Ｃ，Ｄから生成される、互いに周波数の独立したクロック信号である。
【００３２】
ＢＩＳＴ回路１１２は、メモリ１１１Ａ，Ｂをテストするための集積回路であり、ここでは、４つの信号生成回路１３１Ａ，Ｂ，Ｃ，Ｄと、２つのクロック選択回路１３２Ａ，Ｂと、１つの制御回路１３３と、１つの選択回路１３４とを有している。信号生成回路１３１Ａ，Ｂ，Ｃ，Ｄはそれぞれ、アドレス生成回路１４１Ａ，Ｂ，Ｃ，Ｄと、データ生成回路１４２Ａ，Ｂ，Ｃ，Ｄと、制御信号生成回路１４３Ａ，Ｂ，Ｃ，Ｄとを有する。クロック選択回路１３２Ａ，Ｂはそれぞれ、パルスキャンセル回路１４４Ａ，Ｂを有する。
【００３３】
信号生成回路１３１Ａ，Ｂ，Ｃ，Ｄにはそれぞれ、クロック信号２０２Ａ，Ｂ，Ｃ，Ｄが入力される。信号生成回路１３１Ａ，Ｂはそれぞれ、クロック信号２０２Ａ，Ｂに基づいて動作し、メモリ１１１ＡをテストするためのＢＩＳＴ信号２１１Ａ，Ｂを生成し出力する。信号生成回路１３１Ｃ，Ｄはそれぞれ、クロック信号２０２Ｃ，Ｄに基づいて動作し、メモリ１１１ＢをテストするためのＢＩＳＴ信号２１１Ｃ，Ｄを生成し出力する。ＢＩＳＴ信号２１１Ａ，Ｂ，Ｃ，Ｄはここではそれぞれ、アドレス生成回路１４１Ａ，Ｂ，Ｃ，Ｄにより生成され出力されるアドレス信号２２１Ａ，Ｂ，Ｃ，Ｄと、データ生成回路１４２Ａ，Ｂ，Ｃ，Ｄにより生成され出力されるデータ信号２２２Ａ，Ｂ，Ｃ，Ｄと、制御信号生成回路１４３Ａ，Ｂ，Ｃ，Ｄにより生成され出力されるメモリ１１１Ａ又は１１１Ｂ用の制御信号２２３Ａ，Ｂ，Ｃ，Ｄにより構成される。信号生成回路１３１Ａ，Ｂによって生成され出力されたＢＩＳＴ信号２１１Ａ，Ｂは、メモリ１１１Ａに入力される。信号生成回路１３１Ｃ，Ｄによって生成され出力されたＢＩＳＴ信号２１１Ｃ，Ｄは、メモリ１１１Ｂに入力される。
【００３４】
クロック選択回路１３２Ａには、クロック信号２０２Ａ及びクロック信号２０２Ｂが入力される。クロック選択回路１３２Ｂには、クロック信号２０２Ｃ及びクロック信号２０２Ｄが入力される。クロック選択回路１３２Ａは、入力されたクロック信号の内のいずれか１つ（ここではクロック信号２０２Ａ又はクロック信号２０２Ｂ）を選択し出力する。クロック選択回路１３２Ｂも同様に、入力されたクロック信号の内のいずれか１つ（ここではクロック信号２０２Ｃ又はクロック信号２０２Ｄ）を選択し出力する。クロック選択回路１３２Ａ，Ｂによって選択され出力されたクロック信号２０２Ｘ，Ｙは、選択回路１３４に入力される。
【００３５】
選択回路１３４には、クロック選択回路１３２Ａによって選択され出力されたクロック信号２０２Ｘ、及びクロック選択回路１３２Ｂによって選択され出力されたクロック信号２０２Ｙが入力される。選択回路１３４は、入力されたクロック信号の内のいずれか１つ（ここではクロック信号２０２Ｘ又はクロック信号２０２Ｙ）を選択し出力する。該選択回路１３４によって選択され出力されたクロック信号２０２Ｚは、制御回路１３３に入力される。
【００３６】
なお、選択回路１３４が選択し出力するクロック信号２０２Ｚは、その際にテスト対象となっているメモリに対応するクロック信号である。例えば、メモリ１１１Ａのテスト時にはクロック信号２０２Ｘが選択され出力され、メモリ１１１Ｂのテスト時にはクロック信号２０２Ｙが選択され出力される。テスト対象のメモリの切り替えについては、ＢＩＳＴ回路１１２が制御するようにしてもよいし、ＣＰＵが制御するようにしてもよい。後者の場合、選択回路１３４には、テスト対象のメモリに関する情報がＣＰＵから与えられることになる。
【００３７】
制御回路１３３は、有限状態マシン（ＦＳＭ）の一種であり、ここでは、書き込み用のクロック信号２０２Ａ又は２０２Ｃで動作する書き込みモードと、読み出し用のクロック信号２０２Ｂ又は２０２Ｄで動作する読み出しモードとを有する。
【００３８】
制御回路１３３は、読み出しモードから書き込みモードに遷移する際には、書き込み用のクロック信号２０２Ａを要求するクロック要求信号２１２を、クロック選択回路１３２Ａに出力し、書き込み用のクロック信号２０２Ｃを要求するクロック要求信号２１２を、クロック選択回路１３２Ｂに出力する。これに応じて、クロック選択回路１３２Ａは、クロック信号２０２Ａを選択し出力し、クロック選択回路１３２Ｂは、クロック信号２０２Ｃを選択し出力する。続いて、選択回路１３４は、メモリ１１１Ａのテスト時にはクロック信号２０２Ｘ（即ちクロック信号２０２Ａ）を選択し出力し、メモリ１１１Ｂのテスト時にはクロック信号２０２Ｙ（即ちクロック信号２０２Ｃ）を選択し出力する。そして、書き込みモードの制御回路１３３は、選択回路１３４により選択され出力されたクロック信号２０２Ｚ（即ちクロック信号２０２Ａ又は２０２Ｃ）に基づいて動作し、信号生成回路１３１Ａ又は１３１Ｃを制御するための制御信号２１３を出力する。これに応じて、信号生成回路１３１Ａ又は１３１Ｃは、メモリ１１１Ａ又は１１１ＢをテストするためのＢＩＳＴ信号２１１Ａ又は２１１Ｃを生成し出力する。
【００３９】
制御回路１３３は、読み出しモードから書き込みモードに遷移する際には、読み出し用のクロック信号２０２Ｂを要求するクロック要求信号２１２を、クロック選択回路１３２Ａに出力し、書き込み用のクロック信号２０２Ｄを要求するクロック要求信号２１２を、クロック選択回路１３２Ｂに出力する。これに応じて、クロック選択回路１３２Ａは、クロック信号２０２Ｂを選択し出力し、クロック選択回路１３２Ｂは、クロック信号２０２Ｄを選択し出力する。続いて、選択回路１３４は、メモリ１１１Ａのテスト時にはクロック信号２０２Ｘ（即ちクロック信号２０２Ｂ）を選択し出力し、メモリ１１１Ｂのテスト時にはクロック信号２０２Ｙ（即ちクロック信号２０２Ｄ）を選択し出力する。そして、読み出しモードの制御回路１３３は、選択回路１３４により選択され出力されたクロック信号２０２Ｚ（即ちクロック信号２０２Ｂ又は２０２Ｄ）に基づいて動作し、信号生成回路１３１Ｂ又は１３１Ｄを制御するための制御信号２１３を出力する。これに応じて、信号生成回路１３１Ｂ又は１３１Ｄは、メモリ１１１Ａ又は１１１ＢをテストするためのＢＩＳＴ信号２１１Ｂ又は２１１Ｄを生成し出力する。
【００４０】
本実施例は、１つのＢＩＳＴ回路が２つのマルチポートメモリをテストするような集積回路装置だけでなく、１つのＢＩＳＴ回路が３つ以上のマルチポートメモリをテストするような集積回路装置にも適用可能である。第１，第２，，，第Ｋのメモリ１１１がそれぞれＮ個のポート１２１を有し、第１，第２，，，第Ｋのメモリ１１１にそれぞれＮ種類のシステム信号２０１及びクロック信号２０２が入力される場合（Ｋ，Ｎは２以上の整数）、ＢＩＳＴ回路１１２には、Ｋ＊Ｎ個の信号生成回路１３１と、Ｋ個のクロック選択回路１３２と、１個の制御回路１３３と、１個の選択回路１３４とが設けられる。これらの信号生成回路１３１、クロック選択回路１３２、制御回路１３３、及び選択回路１３４の動作態様はそれぞれ、上述の動作態様と同様である。第１，第２，，，第Ｋの各々のメモリ１１１のポート１２１の個数は、同じ個数に統一されていてもいなくてもよい。
【００４１】
以上のように、本実施例によれば、２つ以上のメモリ１１１のテストを、簡単な構成の１つのＢＩＳＴ回路１１２で行うことができるようになる。複数のメモリ１１１のテストを１つのＢＩＳＴ回路１１２で行う場合、本実施例では、信号生成回路１３１やクロック選択回路１３２は複数必要であるが、制御回路１３３は１つで十分である。これにより、本実施例によれば、ＢＩＳＴ回路１１２の複雑化を最小限にしつつ、複数のメモリ１１１のテストを１つのＢＩＳＴ回路１１２で実行可能な集積回路装置１０１を実現することができる。なお、クロック信号源が共通するメモリ同士については、信号生成回路１３１やクロック選択回路１３２を共通化できるので、ＢＩＳＴ回路１１２の複雑化を更に抑えることが可能である。
【図面の簡単な説明】
【００４２】
【図１】第１実施例の集積回路装置の回路構成図である。
【図２Ａ】書き込み用のポートのピン構成の具体例を説明するための図である。
【図２Ｂ】読み出し用のポートのピン構成の具体例を説明するための図である。
【図３】単純なテストアルゴリズムの具体例を説明するための図である。
【図４】複雑なテストアルゴリズムの具体例を説明するための図である。
【図５】図３に対応する状態遷移図である。
【図６】図４に対応する状態遷移図である。
【図７】クロック要求信号及びクロック信号の波形図である。
【図８】パルスキャンセル回路の回路構成図の具体例である。
【図９】第２実施例の集積回路装置の回路構成図である。
【符号の説明】
【００４３】
１０１  集積回路装置
１１１  メモリ
１１２  ＢＩＳＴ回路
１１３  システム論理
１１４  クロック生成回路
１２１  ポート
１３１  信号生成回路
１３２  クロック選択回路
１３３  制御回路
１３４  選択回路
１４１  アドレス生成回路
１４２  データ生成回路
１４３  制御信号生成回路
１４４  パルスキャンセル回路
２０１  システム信号
２０２  クロック信号
２１１  ＢＩＳＴ信号
２１２  クロック要求信号
２１３  制御信号
２２１  アドレス信号
２２２  データ信号
２２３  制御信号
【図１】
2008123604.tif 000003
【図２Ａ】
2008123604.tif 000004
【図２Ｂ】
2008123604.tif 000005
【図３】
2008123604.tif 000006
【図４】
2008123604.tif 000007
【図５】
2008123604.tif 000008
【図６】
2008123604.tif 000009
【図７】
2008123604.tif 000010
【図８】
2008123604.tif 000011
【図９】
2008123604.tif 000012