(57)【特許請求の範囲】
【請求項１】
周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路と、
前記乱数発生回路から供給された乱数パターンを所要ビット分格納するアドレスレジスタと、
前記アドレスレジスタから供給される乱数パターンを所要ビット分格納するデータ入力レジスタと、
前記アドレスレジスタの各ビット出力が入力アドレスとして供給され、前記データ入力レジスタの各ビット出力が入力データとして供給され、書きこみ動作から読み出し動作への切り替えを前記乱数発生回路の動作周期で行うテスト対象となるシングルポートランダムアクセスメモリと、
前記アドレスレジスタの各ビット出力を所要ビット分格納するコンペアレジスタと、
前記コンペアレジスタの各ビット出力と対応する前記シングルポートランダムアクセスメモリの出力データとをそれぞれ比較し前記シングルポートランダムアクセスメモリの動作を確認するための判定信号を得る比較回路と、
を具備したことを特徴とする診断機能を備えた半導体集積回路。
【請求項２】
周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路と、
前記乱数発生回路から供給された乱数パターンを所要ビット分格納するアドレスレジスタと、
前記アドレスレジスタの各ビット出力が入力アドレスとして供給され、書きこみ動作から読み出し動作への切り替えを前記乱数発生回路の動作周期で行うテスト対象となるシングルポートランダムアクセスメモリと、
前記アドレスレジスタから供給される乱数パターンを、書きこみ動作時にはテスト対象となる前記シングルポートランダムアクセスメモリへの入力データとして所要ビット分格納し、読み出し動作時にはテスト対象となる前記シングルポートランダムアクセスメモリからの出力データとの比較用データとして所要ビット分格納するデータ入力およびコンペアレジスタと、
前記データ入力およびコンペアレジスタの各ビット出力と対応する前記シングルポートランダムアクセスメモリの出力データとをそれぞれ比較し前記シングルポートランダムアクセスメモリの動作を確認するための判定信号を得る比較回路と、
を具備したことを特徴とする診断機能を備えた半導体集積回路。
【請求項３】
周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路と、
前記乱数発生回路から供給された乱数パターンを格納する書きこみアドレスレジスタと、
前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する書きこみデータレジスタと、
前記書きこみデータレジスタから供給される乱数パターンを所要ビット分格納する、前記書きこみアドレスレジスタと同じ段数で構成される読み出しアドレスレジスタと、
前記書きこみアドレスレジスタの各ビット出力が書きこみ入力アドレスとして供給され、前記書きこみデータレジスタの各ビット出力が入力データとして供給され、前記読み出しアドレスレジスタの各ビット出力が読み出し入力アドレスとして供給されるテスト対象となるデュアルポートランダムアクセスメモリと、
前記読み出しアドレスレジスタの各ビット出力を所要ビット分格納する、前記書きこみデータ入力レジスタと同じ段数で構成されるコンペアレジスタと、
前記コンペアレジスタの各ビット出力と対応する前記デュアルポートランダムアクセスメモリの出力データとをそれぞれ比較し前記シングルポートランダムアクセスメモリの動作を確認するための判定信号を得る比較回路と、
を具備したことを特徴とする診断機能を備えた半導体集積回路。
【請求項４】
周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路と、
前記乱数発生回路から供給された乱数パターンを格納する書きこみアドレスレジスタと、
前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する書きこみデータレジスタと、
前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する、前記書きこみアドレスレジスタと同じ段数で構成される読み出しアドレスレジスタと、
前記書きこみアドレスレジスタの各ビット出力が書きこみ入力アドレスとして供給され、前記書きこみデータ入力レジスタの各ビット出力が入力データとして供給され、前記読み出しアドレスレジスタの各ビット出力が読み出し入力アドレスとして供給されるテスト対象となるデュアルポートランダムアクセスメモリと、
前記書きこみデータレジスタの各ビット出力を所要ビット分格納する、前記書きこみデータ入力レジスタと同じ段数で構成されるコンペアレジスタと、
前記コンペアレジスタの各ビット出力と対応する前記デュアルポートランダムアクセスメモリの出力データとをそれぞれ比較し前記デュアルポートランダムアクセスメモリの動作を確認するための判定信号を得る比較回路と、
前記デュアルポートランダムアクセスメモリに供給されるクロックに対して２分の１に分周したクロックを前記書きこみアドレスレジスタ、前記書きこみデータレジスタ、前記読み出しアドレスレジスタおよび前記コンペアレジスタに供給するクロック分周回路と、
を具備したことを特徴とする診断機能を備えた半導体集積回路。
【請求項５】
前記シングルポートランダムアクセスメモリまたは前記デュアルポートランダムアクセスメモリのアドレス入力ポートおよびデータ入力ポートに接続されたレジスタならびに前記コンペアレジスタに、スキャンパステストが実行可能に設計されシフト動作モード時にシフトレジスタ構成となる論理回路の回路要素を利用する請求項１ないし請求項４の何れか１項記載の診断機能を備えた半導体集積回路。
【請求項６】
オーバーフロー検出により前記シングルポートランダムアクセスメモリを書きこみ動作から読み出し動作へ切り替えるための切り替え信号を発生させる時間をカウントするカウンタを備える請求項１、請求項２または請求項５記載の診断機能を備えた半導体集積回路。
【請求項７】
オーバーフロー検出により前記デュアルポートランダムアクセスメモリのテストを開始するための開始信号を発生させる時間をカウントするカウンタを備える請求項３、請求項４または請求項５記載の診断機能を備えた半導体集積回路。
【請求項８】
請求項５ないし請求項７の何れか１項記載の診断機能を備えた半導体集積回路において、
さらにスキャン設計された論理回路を含み、該論理回路および前記シングルポートメモリまたは前記デュアルポートメモリに対し前記乱数発生回路から供給された乱数パターンを供給することによりストレスを印加し、前記シングルポートメモリまたは前記デュアルポートメモリおよび前記論理回路の動作を確認することを特徴とする診断機能を備えた半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、組みこまれたメモリの動作をテストする診断機能を備えた半導体集積回路に関する。
【０００２】
【従来の技術】
半導体集積回路内に組みこまれたＲＡＭ（ランダムアクセスメモリ）が正しく動作するかの確認をするため、外部からの制御により直接テストすることが必要である。このため、内部ＲＡＭに対し外部から直接入出力を制御することが可能となるように、テスト用回路を組みこむか、またはＲＡＭのテスト時に内部の制御回路を利用し自己診断が可能になるような設計を行っている。
【０００３】
【発明が解決しようとする課題】
半導体集積回路内に組みこまれたＲＡＭが正しく動作するかどうかの確認をするため、外部から直接入出力を制御する回路を組みこむか、あるいは自己診断回路を組みこむなどのテスト回路の追加により半導体集積回路の回路規模は増大し、面積ダメージが大きくなる。そこでＲＡＭ単体テストを行うために必要なテスト回路の規模をできるだけ小さく抑えることが望まれている。
【０００４】
本発明は、上記課題の解決を図るため、特に、内部ＲＡＭを自己診断するためのテスト回路を備えた回路構成において、テスト回路設計による回路追加を必要最小限に抑えることができる診断機能を備えた半導体集積回路を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記した従来技術の課題を解決するため、請求項１にかかわる発明は、周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路（乱数発生回路１）と、前記乱数発生回路から供給された乱数パターンを所要ビット分格納するアドレスレジスタ（アドレスレジスタ３）と、前記アドレスレジスタから供給される乱数パターンを所要ビット分格納するデータ入力レジスタ（データ入力レジスタ４）と、前記アドレスレジスタの各ビット出力が入力アドレスとして供給され、前記データ入力レジスタの各ビット出力が入力データとして供給され、書きこみ動作から読み出し動作への切り替えを前記乱数発生回路の動作周期で行うテスト対象となるシングルポートＲＡＭ（シングルポートＲＡＭ２）と、前記アドレスレジスタの各ビット出力を所要ビット分格納するコンペアレジスタ（コンペアレジスタ５）と、前記コンペアレジスタの各ビット出力と対応する前記シングルポートＲＡＭの出力データとをそれぞれ比較し前記シングルポートＲＡＭの動作を確認するための判定信号を得る比較回路（比較回路６）と、を具備したことを特徴とする。
【０００６】
請求項２にかかわる発明は、周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路（乱数発生回路１）と、前記乱数発生回路から供給された乱数パターンを所要ビット分格納するアドレスレジスタ（アドレスレジスタ３）と、前記アドレスレジスタの各ビット出力が入力アドレスとして供給され、書きこみ動作から読み出し動作への切り替えを前記乱数発生回路の動作周期で行うテスト対象となるシングルポートＲＡＭ（シングルポートＲＡＭ２）と、前記アドレスレジスタから供給される乱数パターンを、書きこみ動作時にはテスト対象となる前記シングルポートＲＡＭへの入力データとして所要ビット分格納し、読み出し動作時にはテスト対象となる前記シングルポートＲＡＭからの出力データとの比較用データとして所要ビット分格納するデータ入力およびコンペアレジスタ（データ入力兼コンペアレジスタ４）と、前記データ入力およびコンペアレジスタの各ビット出力と対応する前記シングルポートＲＡＭの出力データとをそれぞれ比較し前記シングルポートＲＡＭの動作を確認するための判定信号を得る比較回路（比較回路６）と、を具備したことを特徴とする。
【０００７】
請求項３にかかわる発明は、周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路（乱数発生回路１１）と、前記乱数発生回路から供給された乱数パターンを格納する書きこみアドレスレジスタ（書きこみアドレスレジスタ１３）と、前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する書きこみデータレジスタ（書きこみデータ入力レジスタ１４）と、前記書きこみデータレジスタから供給される乱数パターンを所要ビット分格納する、前記書きこみアドレスレジスタと同じ段数で構成される読み出しアドレスレジスタ（読み出しアドレスレジスタ１５）と、前記書きこみアドレスレジスタの各ビット出力が書きこみ入力アドレスとして供給され、前記書きこみデータ入力レジスタの各ビット出力が入力データとして供給され、前記読み出しアドレスレジスタの各ビット出力が読み出し入力アドレスとして供給されるテスト対象となるデュアルポートＲＡＭ（デュアルポートＲＡＭ１２）と、前記読み出しアドレスレジスタの各ビット出力を所要ビット分格納する、前記書きこみデータ入力レジスタと同じ段数で構成されるコンペアレジスタ（コンペアレジスタ１６）と、前記コンペアレジスタの各ビット出力と対応する前記デュアルポートＲＡＭの出力データとをそれぞれ比較し前記シングルポートＲＡＭの動作を確認するための判定信号を得る比較回路（比較回路１７）と、を具備したことを特徴とする。
【０００８】
請求項４にかかわる発明は、周期性をもち、かつ同一周期内で互いに重複しない乱数パターンを発生する乱数発生回路（乱数発生回路１１）と、前記乱数発生回路から供給された乱数パターンを格納する書きこみアドレスレジスタ（書きこみアドレスレジスタ１３）と、前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する書きこみデータレジスタ（書きこみデータ入力レジスタ１４）と、前記書きこみアドレスレジスタから供給される乱数パターンを所要ビット分格納する、前記書きこみアドレスレジスタと同じ段数で構成される読み出しアドレスレジスタ（読み出しアドレスレジスタ１５）と、前記書きこみアドレスレジスタの各ビット出力が書きこみ入力アドレスとして供給され、前記書きこみデータ入力レジスタの各ビット出力が入力データとして供給され、前記読み出しアドレスレジスタの各ビット出力が読み出し入力アドレスとして供給されるテスト対象となるデュアルポートＲＡＭ（デュアルポートＲＡＭ１２）と、前記書きこみデータレジスタの各ビット出力を所要ビット分格納する、前記書きこみデータ入力レジスタと同じ段数で構成されるコンペアレジスタ（コンペアレジスタ１６）と、前記コンペアレジスタの各ビット出力と対応する前記デュアルポートＲＡＭの出力データとをそれぞれ比較し前記シングルポートＲＡＭの動作を確認するための判定信号を得る比較回路（比較回路１７）と、前記デュアルポートメモリに供給されるクロックに対して２分の１に分周したクロックを前記書きこみアドレスレジスタ、前記書きこみデータレジスタ、前記読み出しアドレスレジスタおよび前記コンペアレジスタに供給するクロック分周回路（１／２分周回路２３）と、を具備したことを特徴とする。
【０００９】
請求項５にかかわる発明は、前記シングルポートＲＡＭまたは前記デュアルポートＲＡＭのアドレス入力ポートおよびデータ入力ポートに接続されたレジスタ（アドレスレジスタ３、データ入力レジスタ４：アドレスレジスタ３、データ入力兼コンペアレジスタ４’：書きこみアドレスレジスタ１３、書きこみデータ入力レジスタ１４、読み出しアドレスレジスタ１５）ならびに前記コンペアレジスタに、スキャンパステストが実行可能に設計されシフト動作モード時にシフトレジスタ構成となる論理回路の回路要素を利用する。
【００１０】
請求項６にかかわる発明は、オーバーフロー検出により前記シングルポートＲＡＭを書きこみ動作から読み出し動作へ切り替えるための切り替え信号を発生させる時間をカウントするカウンタ（クロックカウンタ７）を備える。
【００１１】
請求項７にかかわる発明は、オーバーフロー検出により前記デュアルポートＲＡＭのテストを開始するための開始信号を発生させる時間をカウントするカウンタ（クロックカウンタ１８）を備える。
【００１２】
請求項８にかかわる発明は、請求項５ないし請求項７の何れか１項記載の診断機能を備えた半導体集積回路において、さらにスキャン設計された論理回路（論理回路３５）を含み、該論理回路および前記シングルポートメモリまたは前記デュアルポートメモリに対し前記乱数発生回路から供給された乱数パターンを供給することによりストレスを印加し、前記シングルポートメモリまたは前記デュアルポートメモリおよび前記論理回路の動作を確認することを特徴とする。
【００１３】
請求項１の発明によれば、周期性をもった乱数パターンにより、すべてのアドレスにデータを書きこむ。書きこみ周期の次の周期を読み出し周期とすると、任意のアドレスを決定した場合に、書きこみ周期で書きこまれる、データ入力レジスタに格納されるビット列と、読み出し周期でデータ入力レジスタに並列に配置されたコンペアレジスタに格納されるビット列と、シングルポートＲＡＭから読み出されるデータのビット列は一致する。そのため、読み出し周期において、シングルポートＲＡＭから読み出されたビット列と、コンペアレジスタに格納されるビット列を比較することにより、シングルポートＲＡＭの故障を自己診断することができる。シングルポートＲＡＭのアドレス入力ポートおよびデータ入力ポートに対し順次乱数パターンを供給しながらすべてのアドレスに対しデータを書きこむことができるので、アドレス入力およびデータ入力用にデータを別々に用意することがなくなり回路追加を必要最小限に抑えることができる。
【００１４】
請求項２の発明によれば、請求項１に記載されたコンペアレジスタを削除し、データ入力レジスタの代わりにコンペアレジスタの機能を持たせたデータ入力およびコンペアレジスタを用いることで、さらに回路規模を縮小することができる。
【００１５】
請求項３の発明によれば、周期性をもった乱数パターンにより、すべてのアドレスにデータを書きこむことができる。書きこみアドレスレジスタ、書きこみデータレジスタ、読み出しアドレスレジスタとコンペアレジスタの順に接続されたシフトレジスタチェーンにおいて、書きこみアドレスレジスタに格納されるアドレスに書きこまれるデュアルポートＲＡＭのデータのビット列は書きこみデータレジスタに格納されるデータのビット列である。この状態で、アドレス幅とデータ幅の和分シフトレジスタチェーンをデータシフトすると、読み出しアドレスレジスタに格納されるアドレスは、書きこみアドレスレジスタに格納されていたアドレスと等しく、また、コンペアレジスタに格納されるデータのビット列は、書きこみデータレジスタに格納されていたデータのビット列に等しくなる。そのため、デュアルポートＲＡＭが読み出し状態にあるとき、読み出しアドレスレジスタに格納されているアドレスから読み出されるデュアルポートＲＡＭのデータのビット列と、コンペアレジスタに格納されるデータのビット列が互いに一致、または、不一致を検出することにより、メモリの故障を検出することができる。デュアルポートＲＡＭのアドレス入力ポートおよびデータ入力ポートに対し順次乱数パターンを供給しながらすべてのアドレスに対しデータを書きこむことができるので、アドレス入力およびデータ入力用にデータを別々に用意することがなくなり回路追加を必要最小限に抑えることができる。
【００１６】
請求項４の発明によれば、周期性をもった乱数パターンにより、すべてのアドレスにデータを書きこむことができる。書きこみアドレスレジスタに格納されるアドレスに書きこまれるデュアルポートＲＡＭのデータのビット列は、書きこみデータレジスタに格納されるデータのビット列である。この状態で、1クロックだけレジスタチェーンをデータシフトすると、読み出しアドレスレジスタに格納されるアドレスは、書きこみアドレスレジスタに格納されていたアドレスと等しく、また、コンペアレジスタに格納されるデータのビット列は、書きこみデータレジスタに格納されていたデータのビット列に等しくなる。そのため、デュアルポートＲＡＭが読み出し状態にあるとき、読み出しアドレスレジスタに格納されているアドレスから読み出されるデュアルポートＲＡＭのデータのビット列と、コンペアレジスタに格納されるデータのビット列が互いに一致、または、不一致を検出することにより、メモリの故障を検出することができる。同じくデュアルポートＲＡＭを用いた請求項５にかかわる発明と比べると、書きこみデータレジスタをシフトした乱数パターンは、読み出しアドレスレジスタに供給されることなくコンペアレジスタに供給される。従って、データ入力ポートに供給された乱数データをすぐに比較回路へ供給することができ、迅速な診断が可能となる。
【００１７】
請求項５の発明によれば、請求項１ないし請求項４に記載の各シフトレジスタ部に、スキャンパステストが実行可能なシフト動作モードにおいて、シフトレジスタ構成となる回路要素を利用することで、回路規模を必要最小限に押さえることができる。
【００１８】
請求項８の発明によれば、論理回路とＲＡＭを含む半導体集積回路において、請求項５ないし請求項７の何れか１項記載の半導体集積回路の構成を適用して論理回路およびＲＡＭに適切なストレスを印加し回路動作を確認するもので、特に、バーンインテストにおいて有効である。
【００１９】
【発明の詳細な説明】
（実施の形態１）
本発明の実施の形態１は請求項１に記載の半導体集積回路に関するもので、図１を参照しながら説明する。図１において、１は乱数発生回路、２はテスト対象となるシングルポートＲＡＭ、３はシフトレジスト可能にシングルポートＲＡＭ２のアドレス幅Ｎ＋１段のフリップフロップがチェーン状に接続されたアドレスレジスタ、４はシフトレジスト可能にシングルポートＲＡＭ２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続されたデータ入力レジスタ、５はシフトレジスト可能にシングルポートＲＡＭ２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続されたコンペアレジスタ、６は比較回路、７はクロックカウンタ、８はインバータ回路、９、１０はＯＲ回路である。
【００２０】
上記構成において、乱数発生回路１は周期２N+1 −１で一巡し、同一周期内で互いに重複しないＮ＋１ビット列の乱数パターンを生成し、乱数発生回路１で生成された乱数パターンは、アドレスレジスタ３に供給される。乱数発生回路１は、最終段のフリップフロップの出力と任意段のフリップフロップの出力との排他的論理和を入力とするＮ＋１段のフリップフロップから構成される（図１３参照）。アドレスレジスタ３の最上位ビットが“０”のとき、書きこみおよび読み出し動作が可能となる。カウンタ７は一端に供給されるクロックをカウントする。カウンタ値があらかじめ設定されたクロック数に達し、かつアドレスレジスタ３の最上位ビットが“０”であるときにシングルポートＲＡＭ２はデータ書きこみ動作からデータ読み出し動作への切り替えが行われる。
【００２１】
アドレスレジスタ３に供給された乱数パターンはアドレスレジスタ３内のレジスタチェーンを構成するフリップフロップでシフトされデータ入力レジスタ４と並列に接続されたコンペアレジスタ５へ供給される。データ入力レジスタ４へ供給された乱数パターンはデータ入力レジスタ４内のレジスタチェーンを構成するフリップフロップでシフトされる。コンペアレジスタ５へ供給された乱数パターンはコンペアレジスタ５内のフリップフロップをシフト動作を繰り返しながら伝播される。クロックカウンタ７があらかじめ設定されたクロック数に設定されたクロック数に達するまではクロックカウンタ７はシングルポートＲＡＭ２へデータ書きこみ動作信号を供給しているため、アドレスレジスタ３の最上位ビットが“０”の場合にＲＡＭ２のすべてのアドレスにデータの書きこみが行われる。
【００２２】
クロックカウンタ７があらかじめ設定されたクロック数に達した後、クロックカウンタ７はＲＡＭ２へデータ読み出し動作信号を供給し、アドレスレジスタ３の最上位ビットが“０”の場合にシングルポートＲＡＭ２は読み出し動作状態となる。コンペアイネーブル信号がイネーブル状態にあり、さらに、アドレスレジスタ３の最上位ビットが“０”の場合に比較回路６はＲＡＭ２の出力データの値とコンペアレジスタ５の値を比較し、故障判定信号を出力する。
【００２３】
シングルポートＲＡＭ２が正常動作をしていれば、乱数発生回路１の周期性によりアドレスレジスタ３に格納されたアドレスの指すＲＡＭ２のデータとコンペアレジスタ５に格納されるデータは一致または反転一致で等しいために比較回路６は正常判定信号を出力する。
【００２４】
（実施の形態２）
本発明の実施の形態２は請求項２に記載の半導体集積回路に関するもので、図２を参照しながら説明する。図２において、実施の形態１と同一部分には同一符号を付して詳細な説明を省略する。実施の形態１と異なる点は、コンペアレジスタ５を省略した点である。データ入力兼コンペアレジスタ４’は、アドレスレジスタ３から供給される乱数パターンを、書きこみ動作時にはテスト対象となるＲＡＭ２への入力データとして所要ビット分格納し、読み出し動作時にはＲＡＭ２からの出力データとの比較用データとして所要ビット分格納する。これにより、コンペアレジスタ５に格納されるデータはデータ入力兼コンペアレジスタ４’に格納されるデータと同じデータであるため、コンペアレジスタ５を設けなくともデータ入力兼コンペアレジスタ４’の値とＲＡＭ２の出力データの値を比較回路６に入力することで同じ回路動作結果を得ることができる。実施の形態２によれば、実施の形態１で設けられていたコンペアレジスタ５が不用になる。従って、回路規模を削減することができる。
【００２５】
（実施の形態３）
本発明の実施の形態３は請求項３に記載の半導体集積回路に関するもので、図３を参照しながら説明する。図３において、１１は乱数発生回路、１２はテスト対象となる１リード、１ライト型デュアルポートＲＡＭ（以下、単にデュアルポートＲＡＭと記す）、１３はシフトレジスト可能にデュアルポートＲＡＭ１２のアドレス幅Ｎ＋１段のフリップフロップがチェーン状に接続された書きこみアドレスレジスタ、１４はシフトレジスト可能にデュアルポートＲＡＭ１２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続された書きこみデータレジスタ、１５はシフトレジスト可能にデュアルポートＲＡＭ１０のアドレス幅Ｎ＋１段のフリップフロップがチェーン状に接続された読み出しアドレスレジスタ、１６はデュアルポートＲＡＭ１２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続されたコンペアレジスタ、１７は比較回路、１８はクロックカウンタ、１９、２０はＡＮＤ回路である。
【００２６】
上記構成において、乱数発生回路１１は周期２N+1 −１で一巡し、同一周期内で互いに重複しないＮ＋１ビット列の乱数パターンを生成し、乱数発生回路１１で生成された乱数パターンは、書きこみアドレスレジスタ１３に供給される。ただし、乱数発生回路１１の発生するパターン数は書きこみアドレスレジスタ１３と書きこみデータレジスタ１４と読み出しアドレスレジスタ１５とコンペアレジスタ１６のフリップフロップ段数の総和よりも大きいとする。
【００２７】
書きこみアドレスレジスタ１３に供給された乱数パターンは書きこみアドレスレジスタ１３内のレジスタチェーンを構成するフリップフロップでシフトされ書きこみデータレジスタ１４へ供給される。書きこみデータレジスタ１４へ供給された乱数パターンは書きこみデータレジスタ１４内のレジスタチェーンを構成するフリップフロップでシフトされ読み出しアドレスレジスタ１５へ供給される。読み出しアドレスレジスタ１５へ供給された乱数パターンは読み出しアドレスレジスタ１５内のレジスタチェーンを構成するフリップフロップでシフトされコンペアレジスタ１６へ供給される。コンペアレジスタ１６に供給された乱数パターンはコンペアレジスタ１６内のフリップフロップをシフト動作を繰り返しながら伝播される。
【００２８】
クロックカウンタ１８があらかじめ設定されたクロック数に達し、かつ、書きこみアドレスレジスタ１３の最上位ビットが“０”のとき、書きこみアドレスレジスタ１３が指すアドレスに、書きこみデータレジスタブロック１４に格納されているデータをＲＡＭ１２に書きこむ。書きこみアドレスレジスタの段数と書きこみデータレジスタの段数の和、Ｎ＋Ｍ＋１クロックだけデータをシフトさせることにより、読み出しアドレスレジスタブロック１５にはＮ＋Ｍ＋１クロック前の書きこみアドレスレジスタ１１と同じデータが格納され、コンペアレジスタ１６にはＮ＋Ｍ＋１クロック前の書きこみデータレジスタ１４と同じデータが格納される。クロックカウンタ１８があらかじめ設定されたクロック数に達し、かつ、読み出しアドレスレジスタ１５の最上位ビットが“０”のとき、デュアルポートＲＡＭ１２からは、読み出しアドレスレジスタ１５が指すアドレスのデータを読み出し、デュアルポートＲＡＭ１２が正常に動作していれば、Ｎ＋Ｍ＋１クロック前に書きこみアドレスレジスタ１３が指すアドレスに書きこまれた書きこみデータレジスタブロック１４に格納されていたデータと同じデータが出力されていることになる。つまり、デュアルポートＲＡＭ１２から出力されるデータとコンペアレジスタ１６に格納されるデータは等しくなる。
【００２９】
比較回路１７はデュアルポートＲＡＭ１２から出力されたデータとコンペアレジスタ１６に格納されているデータとを比較し、データが一致または反転一致すれば正常判定信号を、データが不一致の場合は故障判定信号を出力する。
【００３０】
（実施の形態４）
本発明の実施の形態４は請求項４に記載の半導体集積回路に関するもので、図４を参照しながら説明する。図４において、１１は乱数発生回路、１２はテスト対象となるデュアルポートＲＡＭ、１３はシフトレジスト可能にデュアルポートＲＡＭ１２のアドレス幅Ｎ＋１段のフリップフロップがチェーン状に接続された書きこみアドレスレジスタ、１４はシフトレジスト可能にデュアルポートＲＡＭ１２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続された書きこみデータレジスタ、１５はシフトレジスト可能にデュアルポートＲＡＭ１２のアドレス幅Ｎ＋１段のフリップフロップがチェーン状に接続された読み出しアドレスレジスタ、１６はデュアルポートＲＡＭ１２のデータビット幅Ｍと同じＭ段のフリップフロップがチェーン状に接続されたコンペアレジスタ、１７は比較回路、１８はクロックカウンタ、２３は読み出しおよび書きこみのタイミングをとるために、デュアルポートＲＡＭ１２に供給されるクロックに対して２分の１に分周したクロックを書きこみアドレスレジスタ１３、書きこみデータ入力レジスタ１４、読み出しアドレスレジスタ１５およびコンペアレジスタ１６に供給する１／２分周回路、２４、２５、２６はインバータ回路、２７、２８はＯＲ回路、２９、３０はＡＮＤ回路である。実施の形態３と異なる点は、書きこみアドレスレジスタ１３の後段に、書きこみデータレジスタ１４と読み出しアドレスレジスタ１５を並列に接続し、さらにコンペアレジスタ１６を書きこみデータレジスタ１４の後段に直列に接続した点である。
【００３１】
上記構成において、乱数発生回路１１は周期２N+1−１で一巡し、同一周期内で互いに重複しないＮ＋１ビット列の乱数パターンを生成し、乱数発生回路１１で生成された乱数パターンは、書きこみアドレスレジスタ１３に供給される。ただし、乱数発生回路１１の発生するパターン数は書きこみアドレスレジスタ１３と書きこみデータレジスタ１４と読み出しアドレスレジスタ１５とコンペアレジスタ１６のフリップフロップ段数の総和よりも大きいとする。
【００３２】
書きこみアドレスレジスタ１３に供給された乱数パターンは書きこみアドレスレジスタ１３内のレジスタチェーンを構成するフリップフロップでシフトされ書きこみデータレジスタ１４と読み出しアドレスレジスタ１５へ供給される。さらに、書きこみデータレジスタ１４へ供給された乱数パターンは書きこみデータレジスタ１４内のレジスタチェーンを構成するフリップフロップでシフトされコンペアレジスタ１６へ供給される。コンペアレジスタ１６に供給された乱数パターンはコンペアレジスタ１６内のフリップフロップをシフト動作を繰り返しながら伝播される。
【００３３】
書きこみアドレスレジスタ１３の最上位ビットが“０”のとき、書きこみアドレスレジスタ１３が指すアドレスに、書きこみデータレジスタ１４に格納されているデータをデュアルポートＲＡＭ１２に書きこむ。つぎに、1クロックデータをシフトさせると、読み出しアドレスレジスタ１５には１クロック前の書きこみアドレスレジスタ１１と同じデータが格納され、コンペアレジスタ１６には１クロック前の書きこみデータレジスタ１４と同じデータが格納される。読み出しアドレスレジスタ１５の最上位ビットが“０”のとき、デュアルポートＲＡＭ１２からは、読み出しアドレスレジスタ１５が指すアドレスのデータを読み出し、デュアルポートＲＡＭ１２が正常に動作していれば、１クロック前に書きこみアドレスレジスタ１３が指すアドレスに書きこまれた書きこみデータレジスタブロック１４に格納されていたデータと同じデータが出力されていることになる。つまり、デュアルポートＲＡＭ２２から出力されるデータとコンペアレジスタ１６に格納されるデータは等しくなる。
【００３４】
クロックカウンタ１８があらかじめ設定されたクロック数に達し、かつコンペアイネーブル信号がイネーブル状態であるときに、比較回路１７はデュアルポートＲＡＭ１２から出力されたデータとコンペアレジスタ１６に格納されているデータとを比較し、データが一致または反転一致すれば正常判定信号を、データが不一致の場合は故障判定信号を出力する。
【００３５】
（実施の形態５）
本発明の実施の形態５は請求項５に記載の半導体集積回路に関するもので、図５ないし図８を参照して説明する。図５において実施の形態１と同一部分には同一符号を付して説明を省略する。実施の形態１と異なる点は、アドレスレジスタ３と、データ入力レジスタ４と、コンペアレジスタ５を、フリップフロップが組み合わせ回路２１を挟んでチェーン状に接続しスキャンパス設計された既存のスキャンチェーンを用いたことである。既存のスキャンチェーンを利用することにより、回路規模の縮小となる。また、図６ないし図８はそれぞれ実施の形態２ないし実施の形態４に対応し、各実施の形態と同一部分には同一符号を付して説明を省略する。図６ないし図８においても同様にメモリの前後にあるレジスタを、スキャンパス設計された既存のスキャンチェーンを用いている。
【００３６】
（実施の形態６）
本発明の実施の形態６は請求項８に記載の半導体集積回路に関するもので、図９ないし図１２を参照しながら説明する。図９において、実施の形態５と同一部分には同一符号を付して説明を省略する。図９において、３３は出力判定回路、３４はＯＲ回路、３５はスキャン設計された論理回路である。
【００３７】
図９の回路構成でバーンインテストを行うとき、乱数発生回路１から出力される乱数パターンによってＲＡＭ２およびスキャン設計された論理回路３５に対して適切なストレスを与えることができる。出力判定回路３３は論理回路３５が正常に動作しているかを確認する手段として用いる。ＲＡＭ２に対しては実施の形態１に示した方法により故障を検出する。出力判定回路３３または比較回路６のいずれか一方から故障判定信号が出力された場合、バーンイン判定信号として故障判定信号が出力され、バーンインテスト対象の半導体集積回路を不良品と判定することができる。また、図１０ないし図１２はそれぞれ実施の形態２ないし実施の形態４に対応し、各実施の形態と同一部分には同一符号を付して説明を省略する。図１０ないし図１２においても、バーンインテストを行うとき、乱数発生回路１から出力される乱数パターンによってＲＡＭおよびスキャン設計された論理回路に対して適切なストレスを与え、不良品となる半導体集積回路を判別することができる。
【００３８】
【発明の効果】
以上説明したように本発明によれば、特に、内部ＲＡＭを自己診断するためのテスト回路を備えた回路構成において、ＲＡＭのアドレス入力ポートおよびデータ入力ポートに対し共通のデータを順次供給することでＲＡＭのアクセスを簡易化し、さらに、半導体集積回路内でスキャンパス設計された論理回路を有効に利用することで回路構成を簡易化し、これによりテスト回路設計による回路追加を必要最小限に抑えることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１を示す構成図。
【図２】本発明の実施の形態２を示す構成図。
【図３】本発明の実施の形態３を示す構成図。
【図４】本発明の実施の形態４を示す構成図。
【図５】本発明の実施の形態１における各レジスタ部を、スキャンパス設計されたスキャンチェーンに置き換えた、実施の形態５を示す構成図。
【図６】本発明の実施の形態２における各レジスタ部を、スキャンパス設計されたスキャンチェーンに置き換えた、実施の形態５を示す構成図。
【図７】本発明の実施の形態３における各レジスタ部を、スキャンパス設計されたスキャンチェーンに置き換えた、実施の形態５を示す構成図。
【図８】本発明の実施の形態４における各レジスタ部を、スキャンパス設計されたスキャンチェーンに置き換えた、実施の形態５を示す構成図。
【図９】本発明の実施の形態１に示す構成をバーンインテストに適用した、実施の形態６を示す構成図。
【図１０】本発明の実施の形態２に示す構成をバーンインテストに適用した、実施の形態６を示す構成図。
【図１１】本発明の実施の形態３に示す構成をバーンインテストに適用した、実施の形態６を示す構成図。
【図１２】本発明の実施の形態４に示す構成をバーンインテストに適用した、実施の形態６を示す構成図。
【図１３】実施の形態１〜６で示した、周期２N+1―１で一巡し、同一周期内で互いに重複しないＮ＋１ビット列の乱数パターンを生成する乱数発生回路の構成図。
【符号の説明】
１  乱数発生回路
２  シングルポートＲＡＭ
３  アドレスレジスタ
４  データ入力レジスタ
４’  データ入力兼コンペアレジスタ
５  コンペアレジスタ
６  比較回路
７  クロックカウンタ
８  インバータ回路
９  ＯＲ回路
１０  ＯＲ回路
１１  乱数発生回路
１２  デュアルポートＲＡＭ
１３  書きこみアドレスレジスタ
１４  書きこみデータレジスタ
１５  読み出しアドレスレジスタ
１６  コンペアレジスタ
１７  比較回路
１８  クロックカウンタ
１９  ＡＮＤ回路
２０  ＡＮＤ回路
２１  組み合わせ回路部
２３  １／２分周回路
２４  インバータ回路
２５  インバータ回路
２６  インバータ回路
２７  ＯＲ回路
２８  ＯＲ回路
２９  ＡＮＤ回路
３０  ＡＮＤ回路
３３  出力判定回路
３４  ＯＲ回路
３５  スキャン設計された論理回路
３６  排他的論路和回路
３７  フリップフロップ
【図１】
0003791757.tif 000002
【図２】
0003791757.tif 000003
【図３】
0003791757.tif 000004
【図４】
0003791757.tif 000005
【図５】
0003791757.tif 000006
【図６】
0003791757.tif 000007
【図７】
0003791757.tif 000008
【図８】
0003791757.tif 000009
【図９】
0003791757.tif 000010
【図１０】
0003791757.tif 000011
【図１１】
0003791757.tif 000012
【図１２】
0003791757.tif 000013
【図１３】
0003791757.tif 000014