(57)【要約】  【課題】  内蔵メモリの不良原因の解析時間を短縮することができると共に、内蔵メモリの不良原因解析用の回路規模を小さくすることができる半導体集積回路を提供することを目的とする。  【解決手段】  アドレス・データ生成部５はＲＡＭ１〜４の夫々の対象アドレスにテストデータを書き込む。照合部７は、ＲＡＭ１〜４の夫々の対象アドレスに実際に記憶されたデータを読み出し、記憶データの夫々と期待値としてのテストデータとを照合する。記憶データの何れかとテストデータに相違があった場合、保存データ生成部８は、その相違内容を示すデータと相違の生じているＲＡＭが何れのＲＡＭであるかを表すデータと対象アドレスを表すデータとを含む保存データをＲＡＭ１に設けられた保存データ格納領域に保存する。【選択図】      図１
2006038782.tif 000002
【特許請求の範囲】
【請求項１】
データの読み書きが可能なメモリと、
前記メモリの所定の対象アドレスに所定のデータを書き込むアドレス・データ生成部と、
前記アドレス・データ生成部による書き込みによって前記対象アドレスに実際に記憶されたデータを前記メモリから読み出し、その実際の記憶データと前記所定のデータが相違する場合、その相違内容を表すデータと前記対象アドレスを表すデータとを含む保存データを前記メモリに設けられた保存データ格納領域に保存する照合結果保存制御部と、
を備えたことを特徴とする半導体集積回路。
【請求項２】
データの読み書きが可能な複数のメモリと、
各メモリの所定の対象アドレスに所定のデータを書き込むアドレス・データ生成部と、
前記アドレス・データ生成部による書き込みよって各対象アドレスに実際に記憶されたデータを各メモリから読み出して、各対象アドレスの実際の記憶データと前記所定のデータが相違するかをメモリ毎に判断し、何れかの記憶データが前記所定のデータと相違する場合は、その相違内容を表すデータと相違の生じているメモリが何れのメモリであるかを表すデータと前記対象アドレスを表すデータとを含む保存データを前記複数のメモリの何れか１つのメモリに設けられた保存データ格納領域に保存する照合結果保存制御部と、
を備えたことを特徴とする半導体集積回路。
【請求項３】
前記保存データ格納領域への前記保存データの保存処理を行う前に、前記保存データ格納領域に不良領域が存在しないかを判断し、不良領域がある場合、前記照合結果保存制御部は前記不良領域を避けて前記保存データを保存する
ことを特徴とする請求項１又は請求項２に記載の半導体集積回路。
【請求項４】
前記保存データには、前記不良領域が存在するアドレスに関する情報が含まれている
ことを特徴とする請求項３に記載の半導体集積回路。
【請求項５】
前記相違内容を表すデータは、前記所定のデータと対応付けられたデータ又は前記所定のデータと前記記憶データとから構成される
ことを特徴とする請求項１〜請求項４の何れかに記載の半導体集積回路。
【請求項６】
前記保存データ格納領域が設けられたメモリは不揮発性メモリである
ことを特徴とする請求項１〜請求項５の何れかに記載の半導体集積回路。
【請求項７】
請求項１〜請求項６の何れかに記載の半導体集積回路を備えたことを特徴とする電気機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ（Large Scale Integration）等の半導体集積回路（以下、ＩＣという）に関し、特にＲＡＭ（Random Access Memory）等の内蔵メモリを検査するためのＢＩＳＴ（Built In Self Test）回路を有するＩＣに関する。
【背景技術】
【０００２】
内部に比較的大きな記憶容量を有するＲＡＭを備えたＳＯＣ（System On a Chip）等のＩＣにおいては、通常、そのＲＡＭを自ら検査するためのＢＩＳＴ回路が備えられている。
【０００３】
図７は、従来のＢＩＳＴ回路を備えたＩＣの構成ブロック図である。ＩＣ１００は、アドレス・データ生成部１０１と、ＲＡＭ１０２と、照合部１０３と、セレクタ１０４と、を備えている。
【０００４】
ＲＡＭ１０２の検査時においては、「ＲＡＭ１０２のテスト」を示す信号が外部よりセレクタ１０４に与えられ、アドレス・データ生成部１０１に接続されているバス１２１がＲＡＭ１０２に接続される。そして、アドレス・データ生成部１０１は、ＲＡＭ１０２の検査の対象となるアドレス（対象アドレス）を示すアドレス信号、所定のテストデータを示す信号、及びライト信号をセレクタ１０４を介してＲＡＭ１０２に与えることにより、ＲＡＭ１０２の対象アドレスにテストデータを書き込む。
【０００５】
尚、検査ではなく、ＲＡＭ１０２が通常に使用される時（通常使用時）は、ＣＰＵ（Central Processing Unit；不図示）等からのアドレス信号／データ信号を伝送するバス１２０がセレクタ１０４を介してＲＡＭ１０２に接続され、それらのアドレス信号／データ信号がＲＡＭ１０２に与えられる（通常入力）。また、ＲＡＭ１〜４からのデータは、前記ＣＰＵ等に与えられる。
【０００６】
その後、照合部１０３は、その対象アドレスに実際に記憶されているデータ（記憶データ）をＲＡＭ１０２から読み出し、その実際の記憶データとアドレス・データ生成部１０１から与えられた期待値としてのテストデータとを照合する。
【０００７】
このアドレス・データ生成部１０１によるテストデータの書き込み及び照合部１０３による照合をＲＡＭ１０２の全アドレスを対象として繰り返し行い、照合部１０３は、全アドレスにおいて記憶データと期待値とが一致している場合はＩＣ１００の外部端子（不図示）にＲＡＭ１０２に不良がないことを示す信号を出力する一方、１つでも不一致がある場合はＲＡＭ１０２が不良であることを示す信号を出力する。
【０００８】
ＲＡＭ１０２が不良であるか否かを示すこれらの信号は、ＩＣ１００の外部に設けたれた検査用機器（汎用ロジックテスタ等；不図示）に与えられる。このようにして、ＩＣ１００に内蔵されたＲＡＭ１０２の良／不良が検査される。
【０００９】
ＩＣの製造歩留まりを向上させるためには、不良品となったＩＣの不良原因を解析（不良箇所を特定；即ち、ＲＡＭ１０２のどのアドレスのどのビットが不良箇所であるかを特定）する必要がある。例えば、特定アドレスの特定ビットばかりが不良になることが解析により分かれば、「ＩＣのパターン形成用のマスクの特定の部分に傷があるのではないか」等の歩留まり改善のための情報が得られるからである。
【００１０】
図７のＩＣ１００において、不良箇所を特定する際には、ＲＡＭ１０２の記憶データを外部の検査用機器（不図示）が読み出すことができるように、セレクタ１０４を制御してアドレスバス、データバス等を切り換える（これにより、アドレスバス１２２がセレクタ１０４を介してＲＡＭ１０２に接続される）。そして、外部よりアドレス信号を与えてＲＡＭ１０２の全アドレスの記憶内容を外部に読み出すことにより、ＲＡＭ１０２のどのアドレスのどのビットが不良であるのか、即ち不良箇所を特定する。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
通常、不良アドレス（不良ビットを含むアドレス）が全アドレスに占める割合は、ごく僅か（例えば、数万分の１）である。しかしながら、図７の従来構成例においては、ＲＡＭ１０２の不良箇所を特定するために、即ち、どのアドレスのどのビットが不良であるのかを特定するために、ＲＡＭ１０２の全アドレスの記憶データを外部に読み出して検証する必要がある。このため、解析時間が長くなってしまうという問題（以下、「問題点１」ということがある）があった。この解析時間の長時間化は、ＩＣの開発及び製造コストの増大を招く。
【００１２】
また、ＩＣ１００の動作速度（例えば、動作クロックが２００ＭＨｚ）が如何に高速であっても、ＲＡＭ１０２の記憶データの読み出し速度は検査用機器の動作速度（例えば、動作クロックが４０ＭＨｚ。通常、ＩＣの動作速度より遅いことが多い）で制限されることになる。従って、検査用機器の動作速度が低速である場合、解析時間は非常に長くなってしまう。
【００１３】
デジタルカメラ等に用いられる画像処理用等のＩＣには、複数のＲＡＭ（例えば、数１０個）が内蔵されていることも多いが、その場合には、どのＲＡＭのどのアドレスのどのビットに不良であるのかを特定する必要がある。ところが、ＩＣに含まれるＲＡＭが複数であっても、各ＲＡＭにアクセスしているデータバスやアドレスバスに接続される外部端子は１セットしかないのが通常である（なぜなら、ＲＡＭごとに外部端子を設けているとＩＣが大きくなってしまうから）ため、１つ１つのＲＡＭごとに順番に上述の解析を行う必要が生じる。例えば、図７のようにＲＡＭが１つしかない場合の解析時間が０．１秒必要であったとすると、１００個のＲＡＭが設けられたＩＣにおいては、解析時間が１０秒も必要となってくる。従って、複数のＲＡＭを備えたＩＣにおいては、上記問題点１は、非常に顕著なものとなる。
【００１４】
また、不良箇所を特定するためには、上述したように、外部の検査用機器がＲＡＭ１０２の記憶データを読み出せるようにする必要があり、その読み出しのための配線領域及びセレクタ（図７のセレクタ１０４）が必要となってくるが、ＩＣに複数のＲＡＭが備えられている場合は、ＲＡＭの個数分のセレクタ（セレクタ１０４のような３つのバスを切り換えるためのセレクタ）が必要となると共に、そのセレクタに接続するための配線量が膨大になってくる。つまり、メモリ（ＲＡＭ）の不良原因の解析用の回路規模が非常に大きなものとなってしまうという問題（以下、「問題点２」ということがある）がある。
【００１５】
本発明は、上記の点に鑑み、内蔵メモリの不良原因の解析時間を短縮することができる
半導体集積回路（ＩＣ）を提供することを目的とする。また、本発明は、内蔵メモリの不良原因解析用の回路規模を小さくすることができる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するために本発明に係る半導体集積回路は、データの読み書きが可能なメモリと、前記メモリの所定の対象アドレスに所定のデータを書き込むアドレス・データ生成部と、前記アドレス・データ生成部による書き込みによって前記対象アドレスに実際に記憶されたデータを前記メモリから読み出し、その実際の記憶データと前記所定のデータが相違する場合、その相違内容を表すデータと前記対象アドレスを表すデータとを含む保存データを前記メモリに設けられた保存データ格納領域に保存する照合結果保存制御部と、を備えたことを特徴とする。
【００１７】
これにより、保存データ格納領域に格納された小容量の保存データを読み出すだけで、不良箇所の特定（不良原因の解析）、即ち、どのアドレスのどのビットに不良があるかの特定ができるようになる。従って、不良原因の解析時間が大幅に短縮され、半導体集積回路の開発及び製造コストの削減にも寄与する。
【００１８】
データの読み書きが可能な複数のメモリと、各メモリの所定の対象アドレスに所定のデータを書き込むアドレス・データ生成部と、前記アドレス・データ生成部による書き込みよって各対象アドレスに実際に記憶されたデータを各メモリから読み出して、各対象アドレスの実際の記憶データと前記所定のデータが相違するかをメモリ毎に判断し、何れかの記憶データが前記所定のデータと相違する場合は、その相違内容を表すデータと相違の生じているメモリが何れのメモリであるかを表すデータと前記対象アドレスを表すデータとを含む保存データを前記複数のメモリの何れか１つのメモリに設けられた保存データ格納領域に保存する照合結果保存制御部と、を備えたことを特徴とする。
【００１９】
これにより、保存データ格納領域に格納された小容量の保存データを読み出すだけで、不良箇所の特定、即ち、どのメモリのどのアドレスのどのビットに不良があるかの特定ができるようになる。従って、不良原因の解析時間が大幅に短縮され、半導体集積回路の開発及び製造コストの削減にも寄与する。
【００２０】
また、複数のメモリの何れか１つのメモリにのみアクセスすれば不良原因の解析ができるため、従来のようなセレクタ（セレクタ１０４のような３つのバスを切り換えるためのセレクタ）をメモリの個数分、用意する必要はないし、メモリの個数分の配線領域を確保する必要もない。つまり、不良解析用の回路規模を大幅に削減することができる。
【００２１】
また、例えば、前記保存データ格納領域への前記保存データの保存処理を行う前に、前記保存データ格納領域に不良領域が存在しないかを判断し、不良領域がある場合、前記照合結果保存制御部は前記不良領域を避けて前記保存データを保存するようにするとよい。
【００２２】
これにより、正確な保存データを前記保存データ格納領域に格納することができる。
【００２３】
また、例えば、前記保存データには、前記不良領域が存在するアドレスに関する情報が含まれているようにすればよい。
【００２４】
これにより、保存データ格納領域に不良領域が存在していても、外部の検査用機器等は、保存データ格納領域中のどのアドレスに保存データが格納されているかを正確に知ることができる。
【００２５】
また、具体的には、前記相違内容を表すデータは、前記所定のデータと対応付けられたデータ又は前記所定のデータと前記記憶データとから構成される。
【００２６】
また、前記保存データ格納領域が設けられたメモリを不揮発性メモリとしてもよい。
【００２７】
これにより、上記半導体集積回路が電気機器に組み込まれた後であっても、保存データを用いることが可能となる。そして、保存データを参照すれば、メモリの不良箇所を避けてデータの読み書きを行うといったことが可能となるため、メモリ中に多少の不良箇所が存在しても、メモリは正常に動作する。つまり、これによって半導体集積回路の製造時の歩留まりが向上する。
【発明の効果】
【００２８】
上述した通り、本発明に係る半導体集積回路によれば、内蔵メモリの不良原因の解析時間を大幅に短縮することができる。また、メモリの不良原因解析用の回路規模を小さくすることができる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明に係る半導体集積回路（ＩＣ）の実施の形態につき、図面を参照して説明する。図１は、本発明の実施の形態に係るＩＣの構成ブロック図である。
【００３０】
ＩＣ１０は、データの読み書きが可能なメモリとしてのＲＡＭ１、２、３及び４と、ＲＡＭ１〜４の夫々にＲＡＭ１〜４を検査するためのアドレス信号、データ信号及び制御信号（ライト信号等）を与えるアドレス・データ生成部５と、照合結果保存制御部６と、から概略構成される。照合結果保存制御部６は、ＲＡＭ１〜４の夫々の記憶データを読み出して、その記憶データとアドレス・データ生成部５が書き込んだデータとを照合する（一致／不一致を判断する）照合部７と、照合部７の照合結果を入力し、ＲＡＭ１〜４に不良があった場合（記憶データとテストデータに相違があった場合）、その不良内容を表すデータを生成すると共にそのデータを保存データとしてＲＡＭ１に格納する保存データ生成部８と、ＲＡＭ１、２、３、４に夫々接続されるバスを切り換えるためのセレクタ３１、３２、３３、３４と、から構成されている。
【００３１】
ＲＡＭ１〜４の検査時においては、「ＲＡＭ１〜４のテスト」を示す信号が外部よりセレクタ３１、３２、３３及び３４に与えられ、アドレス・データ生成部５に接続されているバス２１（ｐ（ｐは３以上の整数）本の信号線から成る）がＲＡＭ１、２、３、４に接続される。これにより、アドレス・データ生成部５は、ＲＡＭ１、２、３、４の夫々にＲＡＭ１〜４を検査するためのアドレス信号、データ信号及び制御信号（ライト信号等）を与えることが可能となる。
【００３２】
検査ではなく、ＲＡＭ１、２、３、４が通常に使用される時（通常使用時）は、ＣＰＵ（不図示）等からのアドレス信号／データ信号を伝送するバス２０（ｑ（ｑは３以上の整数）本の信号線から成る）が、セレクタ３１、３２、３３、３４を介して、ＲＡＭ１、２、３、４に接続され、それらのアドレス信号／データ信号がＲＡＭ１、２、３、４に与えられる（通常入力）。また、ＲＡＭ１〜４からのデータは、前記ＣＰＵ等に与えられる（通常出力）。
【００３３】
ＲＡＭ１〜４の夫々は、１６ビットから成るデータ（１ワード）を４キロワード（４０９６ワード）分、記憶できるものとする。ＲＡＭ１〜４の夫々の最下位アドレスを１６進数表示で０００ｈとし、最上位アドレスを１６進数表示でＦＦＦｈとして、以下の説明を行う。
【００３４】
（図２；検査の動作フローチャート）
図１のＩＣ１０において、ＲＡＭ１〜４の夫々に不良ビット（不良セル）が存在しないかを検査する動作（ＲＡＭ１〜４の検査時の動作）を、図２のフローチャートを用いて説明する。
【００３５】
まず、ステップＳ１において、アドレス・データ生成部５は、検査の対象のアドレス（対象アドレス）を初期値の０００ｈとする。続くステップＳ２において、アドレス・データ生成部５は、ＲＡＭ１〜４の夫々の対象アドレスに予め定められたテストデータ（例えば、５５５５ｈ）を書き込む。
【００３６】
ステップＳ２を終えて移行するステップＳ３において、照合部７は、アドレス・データ生成部５による書き込み（ステップＳ２）によってＲＡＭ１〜４の夫々の対象アドレスに実際に記憶されたデータをＲＡＭ１〜４の夫々から読み出し、後述するステップＳ４に移行する。
【００３７】
照合部７には、ステップＳ３にて読み出された記憶データの期待値として、ステップＳ２でＲＡＭ１〜４の各対象アドレスに書き込まれたテストデータがアドレス・データ生成部５から与えられている。そして、ステップＳ４において、照合部７は、ステップＳ３にて読み出された各対象アドレス（ＲＡＭ１〜４の夫々の対象アドレス）の実際の記憶データ（実際に記憶されたデータ）とアドレス・データ生成部５から与えられた期待値としてのテストデータとをＲＡＭ毎に照合する（相違している否かを判断する）。
【００３８】
ステップＳ４において、各対象アドレスの記憶データが、全てテストデータと一致していると判断された場合は（ステップＳ４のＯＫ）、ステップＳ５に移行する。ステップＳ５において、照合部７は、各対象アドレスに不良がないことを示す信号（例えば、ハイレベルの信号）を、保存データ生成部８とＩＣ１０の外部に接続される検査用機器（汎用ロジックテスタ等；不図示）とに与えて、後述するステップＳ９に移行する。
【００３９】
一方、ステップＳ４において、各対象アドレスの記憶データが、１つでもテストデータと相違していると判断された場合は（ステップＳ４のＮＧ）、ステップＳ６に移行する。ステップＳ６において、照合部７は、ＲＡＭ１〜４の何れかの対象アドレスに不良があることを示す信号（例えば、ローレベルの信号）を、保存データ生成部８とＩＣ１０の外部に接続される検査用機器（不図示）とに与えて、後述するステップＳ７に移行する。
【００４０】
保存データ生成部８には、ステップＳ４において照合の対象となった対象アドレス（初期値は０００ｈ）を示すアドレス信号及びテストデータを示すデータ信号がアドレス・データ生成部５から与えられていると共に、各対象アドレスの記憶データもＲＡＭ１〜４の夫々から与えられている。そして、ステップＳ７において、保存データ生成部８は、与えられた対象アドレス、テストデータ及び各対象アドレスの記憶データに基づいて、ＲＡＭ１〜４の不良内容を表す保存データを生成し、後述するステップＳ８に移行する。この保存データの詳細については、後述する。
【００４１】
ステップＳ８において、保存データ生成部８は、ステップＳ７で生成した保存データをＲＡＭ１に設けられた保存データ格納領域１ａに保存する。この際、保存データ生成部８が保存データを保存データ格納領域１ａに格納することができるように、セレクタ３１が制御される。ここで、ＲＡＭ１の記憶領域の配分を図３に示す。ＲＡＭ１において、全アドレス領域０００ｈ〜ＦＦＦｈの内の、Ｆ００ｈ〜ＦＦＦｈの領域は、保存データ格納用に確保された保存データ格納領域１ａとなっている。ステップＳ８において、保存データは、この保存データ格納領域１ａの上位アドレス側から保存される。勿論、下位アドレス側から保存するようにしてもよい。
【００４２】
また、後述の説明にて明らかになるが、保存データ格納領域１ａ（Ｆ００ｈ〜ＦＦＦｈ）に不良領域（不良ビットが存在する領域）が存在しないかどうかの検査が、図２の動作の前（保存データの保存処理を行う前）に別途行われており、保存データ生成部８は、保存データ格納領域１ａ中の不良領域に対応するアドレスを自身の内部レジスタ（不図示）に記憶している。そして、ステップＳ８において、保存データ生成部８は、保存データ格納領域１ａ中の不良領域を避けて（不良アドレスを避けて）保存データを保存する。これにより、正確な保存データが保存データ格納領域１ａに格納される。
【００４３】
前述したステップＳ５を終えて移行する、又はステップＳ８を終えて移行するステップＳ９においては、対象アドレス（初期値は０００ｈ）が検査対象の最終アドレスと一致しているかが判断される。ＲＡＭ１〜４の夫々には、０００ｈからＦＦＦｈまでのアドレスがあるので、検査対象の最終アドレスはＦＦＦｈとなる。
【００４４】
対象アドレス＝ＦＦＦｈが成立しない場合は（ステップＳ９のＮｏ）、ステップＳ１０に移行して、対象アドレスの更新が行われる。具体的には、対象アドレスを１だけインクリメントする（１だけ増加させる）。尚、この際、テストデータを異なるデータに更新してもよい（例えば、５５５ｈからＡＡＡｈに更新）。
【００４５】
そして、ステップＳ１０を終えると、前述したステップＳ２に移行し、更新された対象アドレスを検査の対象として再度ステップＳ２〜Ｓ１０の処理が行われる。
【００４６】
全てのアドレスに対してステップＳ２〜Ｓ１０の処理が行われると、ステップＳ９において、対象アドレス＝ＦＦＦｈが成立し（ステップＳ９のＹｅｓ）、後述するステップ１１に移行する。また、ステップＳ９の判定が肯定（ステップＳ９のＹｅｓ）となった後、ステップＳ１１に移行する前にテストデータを更新して（例えば、５５５ｈからＡＡＡｈに更新）ステップＳ１に戻り、再度ステップＳ２〜Ｓ１０の処理を繰り返した上で、ステップＳ１１に移行するようにしてもいい。
【００４７】
尚、対象アドレスがＦ００ｈ〜ＦＦＦｈのとき、ＲＡＭ１についてはステップＳ２〜ステップＳ８の処理は行われない。ＲＡＭ１のＦ００ｈ〜ＦＦＦｈの領域は、保存データを格納する保存データ格納領域１ａとして確保されるものであるため、テストデータの書き込み（ステップＳ２）を行うべきではないからである。従って、ＲＡＭ１についてはアドレス０００ｈ〜ＥＦＦｈが図２の動作における検査対象領域となり、ＲＡＭ２〜４については全アドレス（０００ｈ〜ＦＦＦｈ）が図２の動作における検査対象領域となる。
【００４８】
例えば、アドレス・データ生成部５のライト信号を出力する端子（不図示）と、ＲＡＭ１のライト入力端子（書き込み動作を制御するための端子；不図示）との間にスリーステートバッファ（不図示）を設け、対象アドレスがＦ００ｈ〜ＦＦＦｈの時にステップＳ２の処理を行う際には、ＲＡＭ１のライト入力端子にアドレス・データ生成部５からのライト信号（例えば、ローレベル信号）が加わらないように上記スリーステートバッファを制御すればいい。
【００４９】
ステップＳ１１においては、ＲＡＭ１〜４の検査対象領域に不良アドレス（不良ビットを含むアドレス）があったか否かが判断される。ステップＳ１１に移行するまでに一度もステップＳ６の処理を行わなかった場合（ステップＳ１１のＮｏ）、照合部７は全ての検査対象領域に不良がないことを示す信号（例えば、ハイレベルの信号）を、外部に接続される検査用機器に与える一方（ステップＳ１２）、ステップＳ１１に移行するまでに一度でもステップＳ６の処理を行った場合、照合部７は検査対象領域に不良があることを示す信号（例えば、ローレベルの信号）を、外部に接続される検査用機器に与える（ステップＳ１３）。これらの信号により、ＲＡＭ１〜４に不良領域が存在するか否かが判断可能となる。ステップＳ１２又はステップＳ１３を終えると、図２の検査動作は終了する。
【００５０】
（図４；保存データ格納領域の検査）
次に、図２の動作の前に別途行われるＲＡＭ１の保存データ格納領域１ａの検査について、図４のフローチャートを用いて説明する。
【００５１】
まず、ステップＳ２１において、アドレス・データ生成部５は、検査の対象のアドレス（対象アドレス）を初期値のＦ００ｈとする。続くステップＳ２２において、アドレス・データ生成部５は、ＲＡＭ１の対象アドレスに予め定められたテストデータ（例えば、５５５５ｈ）を書き込む。
【００５２】
ステップＳ２２を終えて移行するステップＳ２３において、照合部７は、アドレス・データ生成部５による書き込み（ステップＳ２２）によってＲＡＭ１の対象アドレスに実際に記憶されたデータをＲＡＭ１から読み出し、後述するステップＳ２４に移行する。
【００５３】
照合部７には、ステップＳ２３にて読み出されたデータの期待値として、ステップＳ２２でＲＡＭ１の対象アドレスに書き込まれたテストデータがアドレス・データ生成部５から与えられている。そして、ステップＳ２４において、照合部７は、ステップＳ２３にて読み出された対象アドレスの実際の記憶データ（実際に記憶されたデータ）とアドレス・データ生成部５から与えられた期待値としてのテストデータとを照合する。
【００５４】
ステップＳ２４において、対象アドレスの記憶データがテストデータと一致していると判断された場合は（ステップＳ２４のＯＫ）、後述するステップＳ２６に移行する。
【００５５】
一方、ステップＳ２４において、対象アドレスの記憶データがテストデータと相違していると判断された場合は（ステップＳ２４のＮＧ）、ステップＳ２５に移行し、保存データ生成部８は、その対象アドレスを不良アドレスとして自身の内部レジスタ（不図示）に記憶する。尚、保存データ生成部８には、ステップＳ２４において照合の対象となった対象アドレス（初期値はＦ００ｈ）を示すアドレス信号がアドレス・データ生成部５から与えられている。
【００５６】
前述したステップＳ２４又はＳ２５を終えて移行するステップＳ２６においては、対象アドレス（初期値はＦ００ｈ）が検査対象の最終アドレスと一致しているかが判断される。ＲＡＭ１の保存データ格納領域１ａはアドレスＦ００ｈからＦＦＦｈまでであるので、検査対象の最終アドレスはＦＦＦｈとなる。
【００５７】
対象アドレス＝ＦＦＦｈが成立しない場合は（ステップＳ２６のＮｏ）、ステップＳ２７に移行して、対象アドレスの更新が行われる。具体的には、対象アドレスを１だけインクリメントする。尚、この際、テストデータを異なるデータに更新してもよい（例えば、５５５ｈからＡＡＡｈに更新）。
【００５８】
そして、ステップＳ２７を終えると、前述したステップＳ２２に移行し、更新された対象アドレスを検査の対象として再度ステップＳ２２〜Ｓ２７の処理が行われる。
【００５９】
保存データ格納領域１ａに含まれる全てのアドレスに対してステップＳ２２〜Ｓ２７の処理が行われると、ステップＳ２６において、対象アドレス＝ＦＦＦｈが成立し（ステップＳ２６のＹｅｓ）、後述するステップ２８に移行する。また、ステップＳ２６の判定が肯定（ステップＳ２６のＹｅｓ）となった後、ステップＳ２８に移行する前にテストデータを更新して（例えば、５５５ｈからＡＡＡｈに更新）ステップＳ２１に戻り、再度ステップＳ２２〜Ｓ２７の処理を繰り返した上で、ステップＳ２８に移行するようにしてもいい。
【００６０】
ステップＳ２８においては、ＲＡＭ１の保存データ格納領域１ａ（図４の動作における検査対象領域）に不良アドレスがあったか否かが判断される。ステップＳ２８に移行するまでに一度もステップＳ２５の処理を行わなかった場合（ステップＳ２８のＮｏ）、照合部７は保存データ格納領域１ａに不良がないことを示す信号（例えば、ハイレベルの信号）を、外部に接続される検査用機器に与える一方（ステップＳ２９）、ステップＳ２８に移行するまでに一度でもステップＳ２５の処理を行った場合は、照合部７は保存データ格納領域１ａに不良があることを示す信号（例えば、ローレベルの信号）を、外部に接続される検査用機器に与える（ステップＳ３０）。これらの信号により、保存データ格納領域１ａに不良領域が存在するか否かが判断可能となる。ステップＳ２９又はステップＳ３０を終えると、図４の検査動作は終了する。
【００６１】
（図５；保存データの内容）
図５は、図２のステップＳ７の処理において生成される保存データの内容を示したものである。１つの保存データは、第１ワード、第２ワード及び第３ワードの３つのワード（１ワードは１６ビット）から構成されている。第１ワードには、不良アドレス（不良ビットが存在するアドレス）、即ち、ステップＳ７に至った時における対象アドレス（１２ビットデータ；ＡＤＤ［１１：０］）が格納される。
【００６２】
第３ワードには、検査プログラム番号（６ビットデータ；ＰＲＯＧ［５：０］）が格納される。この検査プログラム番号は、アドレス・データ生成部５がＲＡＭ１〜４の夫々に書き込む（ステップＳ２）テストデータと対応付けられており、検査プログラム番号を特定すれば検査用機器はテストデータが何であるかを判断可能となっている。勿論、検査プログラム番号に代えて、テストデータを直接保存データに格納するようにしてもいい（但し、その場合は、１つ保存データに４ワードが必要になる）。
【００６３】
第３ワードには、更にステップＳ４にて不良ビットが存在していると判断されたＲＡＭがＲＡＭ１〜４の何れであるかを示すＲＡＭ番号（２ビットデータ：ＲＡＭＩＤ［１：０］）が格納される。不良ビットが存在していると判断されたＲＡＭが、ＲＡＭ１である場合、ＲＡＭＩＤ［１：０］＝「００」（２進数表示）となり、ＲＡＭ２、３、４である場合、ＲＡＭＩＤ［１：０］は夫々、「０１」、「１０」、「１１」（２進数表示）となる。また、第２ワードから第３ワードにかけて、不良ビットのあると判断された対象アドレスの実際の記憶データ（１６ビットデータ：ＤＡＴＡ［１５：０］）が格納される。
【００６４】
例えば、図２のステップＳ２にてアドレス・データ生成部５がプログラム番号１に対応するテストデータ５５５５ｈを各対象アドレスＡ００ｈに書き込み、ステップＳ３にて照合部７に読み出されたＲＡＭ１、２、３、４の記憶データが、夫々５５５５ｈ、５５５５ｈ、５５５４ｈ、５５５５ｈであった場合を考える。その場合に作成される保存データでは、不良アドレス（ＡＤＤ［１１：０］）がＡ００ｈ、記憶データＤＡＴＡ［１５：０］が５５５４ｈ、検査プログラム番号ＰＲＯＧ［５：０］が０１ｈ、不良ビットが存在していると判断されたＲＡＭ番号ＲＡＭＩＤ［１：０］が「１０」（２進数表示）となる。
【００６５】
上述したように、図２のステップＳ４にて、検査の対象アドレスに不良がある（テストデータと実際の記憶データに相違がある）と一度でも判断された場合、ステップＳ１３に移行して不良の存在が外部の検査用機器（不図示）に知らされる。不良の存在を知った検査用機器（不図示）は、ＩＣ１０に設けられたアドレス入力用端子及び制御信号用入力端子（双方不図示）、並びにセレクタ（不図示）等を介してＲＡＭ１にアドレス信号及び制御信号（リード信号）を与え、ＩＣ１０に設けられたデータ出力用端子（不図示）を介して保存データ格納領域１ａに格納された保存データを読み出す。
【００６６】
この保存データには、上述したように、テストデータ（又はテストデータと対応付けられた検査プログラム番号）と不良アドレス（図２のステップＳ４にて、実際の記憶データがテストデータと相違すると判断されたアドレス）の記憶データとから構成されるテストデータと記憶データとの相違内容を表すデータの他、その不良アドレス及び不良が存在しているＲＡＭ番号が含まれているため、検査用機器は保存データ格納領域１ａに格納された小容量の保存データを読み出すだけで、不良箇所の特定（不良原因の解析）、即ち、どのＲＡＭのどのアドレスのどのビットに不良があるかの特定が完了する。これにより、不良原因の解析時間（不良箇所を特定するための時間）が大幅に短縮される（従来、問題となっていた上記「問題点１」が解消される）。
【００６７】
また、従来の複数ＲＡＭを内蔵したＩＣにおいては、全てのＲＡＭの記憶データを外部に読み出す必要があったため、ＲＡＭの個数分のセレクタやＲＡＭの個数分の配線領域を確保する必要があった。一方、図１のＩＣ１０においては、外部の検査用機器は、ＲＡＭ１にのみアクセスすれば不良箇所の特定ができるため、従来例のようなセレクタ（図７のセレクタ１０４のような３つのバスを切り換えるためのセレクタ）をメモリの個数分、用意する必要はないし、ＲＡＭの個数分の配線領域を確保する必要もない。つまり、不良解析用の回路規模を大幅に削減することができる（従来、問題となっていた上記「問題点２」が解消される）。
【００６８】
また、保存データの第１ワード〜第３ワードにかけて、保存データ格納領域１ａ中の不良領域が保存データ格納領域１ａ中のどのアドレスに存在するかを表すデータ（６ビットデータ；ＩＮＣ［５：０］）が格納されている。図２のステップＳ１１にて、検査対象領域に不良があると判断された場合（ステップＳ１１のＹｅｓ）、外部の検査用機器は保存データ格納領域１ａ中に記憶されているデータを読み出すことになるが、検査用機器は上記のデータＩＮＣ［５：０］を参照することで、保存データが保存データ格納領域１ａのどのアドレスに保存されているかを知ることができる。
【００６９】
図６は、図２及び図４の動作後における上記データＩＮＣ［５：０］の一例を示すものである。この例においては、図４の動作で保存データ格納領域１ａ中のアドレスＦＦ２ｈ、ＦＦ３ｈ、ＦＦ４ｈ、ＦＦ５ｈ及びＦＦ９ｈが不良アドレスであると判断されている。そして、図４に示す保存データ格納領域１ａを検査する動作の後、図２に示す動作によって、ＲＡＭ１〜４の何れかに４つの不良アドレスがあることが発見されたとする。
【００７０】
この場合、１つめの保存データＡは、ＲＡＭ１のアドレスＦＦＤｈ〜ＦＦＦｈに格納される。アドレスＦＦＦｈ、ＦＦＥｈ、ＦＦＤｈが、夫々保存データＡの第１ワード、第２ワード、第３ワードに対応している（図５参照）。同様に、保存データ格納領域１ａ中の不良アドレスを避けつつ、保存データＢ、Ｃ、Ｄが、夫々ＲＡＭ１のアドレスＦＦＡｈ〜ＦＦＣｈ、アドレスＦＦ６ｈ〜ＦＦ８ｈ、アドレスＦＥＦｈ〜ＦＦ１ｈに格納される。
【００７１】
保存データＡのＩＮＣ［５：０］は、２進数表示で「００００００」（１０進数表示で「０」）となっており、次の保存データＢが保存データＡの下位アドレス側に隙間なく保存されていることを示している。保存データＢのＩＮＣ［５：０］は、２進数表示で「０００００１」（１０進数表示で「１」）となっており、次の保存データＣが保存データＢの下位アドレス側に１つのアドレスを空けて保存されていることを示している。保存データＣのＩＮＣ［５：０］は、２進数表示で「０００１００」（１０進数表示で「４」）となっており、次の保存データＤが保存データＣの下位アドレス側に４つのアドレスを空けて保存されていることを示している。保存データＤのＩＮＣ［５：０］は、２進数表示で「００００００」（１０進数表示で「０」）となっており、次に保存される保存データが保存データＤの下位アドレス側に隙間なく保存されていることを示している（しかしながら、この例では保存データＤの次に保存される保存データはない）。
【００７２】
即ち、ＩＮＣ［５：０］は、次に保存される保存データが幾つのアドレスを空けて保存されているかを示すポインタとして機能する。このようなデータＩＮＣ［５：０］を各保存データに設けるようにすることで、外部の出荷用検査機器は、保存データＡ、Ｂ、Ｃ及びＤが保存データ格納領域１ａのどのアドレスに保存されているかを知ることができる。
【００７３】
尚、保存データの第１ワード、第２ワード及び第３ワードの夫々には、誤り検出のためのデータ（２ビットデータ：ＣＲＣ）が設けられている（図５参照）。
【００７４】
＜＜その他、変形等＞＞
上述の実施形態では、ＩＣに内蔵されるＲＡＭの数は４つであるが、ＲＡＭの数は幾つでも本発明は適用可能である。内蔵ＲＡＭの数が１つであっても、本発明は適用可能であるが、内蔵ＲＡＭの数が増えれば増えるほど、本発明を適用したことによる効果は増大する。尚、内蔵ＲＡＭの数が１つの場合、保存データには不良ビットが存在していると判断されたＲＡＭが何れのＲＡＭであるかを示すＲＡＭ番号（ＲＡＭＩＤ［１：０］；図５参照）は不要である。
【００７５】
また、ＲＡＭ１の保存データ格納領域１ａは、ＲＡＭ１〜４の不良箇所を特定するために用いられるものであるため、ＲＡＭ１〜４が電気機器に組み込まれて通常に使用される際には、基本的に必要のないものである。従って、ＲＡＭ１〜４が電気機器に組み込まれて通常に使用される際には、保存データ格納領域１ａも通常に読み書きされる領域となる。
【００７６】
しかしながら、ＲＡＭ１を不揮発性メモリとし、検査時において保存データ格納領域１ａに保存された保存データを、電気機器に組み込まれた後も保存データ格納領域１ａに格納し続けるようにしてもよい。このようにしておくと、ＲＡＭ１〜４にデータの読み書きを行うＣＰＵ等（メモリ使用部）は、ＲＡＭ１の保存データ格納領域１ａに格納されている保存データを参照することにより、ＲＡＭ１〜４の不良箇所を避けてデータの読み書きを行うことが可能となる。
【００７７】
通常、ＲＡＭ１〜４中に不良箇所が１つでも存在していた場合、ＩＣ１０を電気機器に組み込むことはできないが、上記のようにＲＡＭ１を不揮発性メモリとし、ＲＡＭ１〜４の不良箇所を避けてデータの読み書きを行うようにすれば、ＲＡＭ１〜４中に多少の不良箇所が存在しても、ＲＡＭ１〜４は正常に動作する。つまり、これによってＩＣ１０の製造時の歩留まりが向上する。
【００７８】
（本発明の別の表現）
また、本発明は、以下のように表現することもできる。
データの読み書きが可能なメモリと、
前記メモリの第１対象アドレス、第２対象アドレス、・・・、第ｎ対象アドレス（ｎ；２以上の整数）に、夫々第１データ、第２データ、・・・、第ｎデータを書き込むアドレス・データ生成部と、
前記アドレス・データ生成部による書き込みよって第１対象アドレス、第２対象アドレス、・・・、第ｎ対象アドレスの夫々に実際に記憶されたデータを前記メモリから読み出し、
第１対象アドレスの実際の記憶データと前記第１データが相違するとき、その相違内容を表すデータと前記第１対象アドレスを表すデータとを含む保存データを前記メモリに設けられた保存データ格納領域に保存し、
第２対象アドレスの実際の記憶データと前記第２データが相違するとき、その相違内容を表すデータと前記第２対象アドレスを表すデータとを含む保存データを前記保存データ格納領域に保存し、・・・、
第ｎ対象アドレスの実際の記憶データと前記第ｎデータが相違するとき、その相違内容を表すデータと前記第ｎ対象アドレスを表すデータとを含む保存データを前記保存データ格納領域に保存する照合結果保存制御部と、
を備えたことを特徴とする半導体集積回路（以下、「別表現１」という）。
【００７９】
更に、本発明は、以下のように表現することもできる。
データの読み書きが可能な複数のメモリと、
各メモリの第１対象アドレス、第２対象アドレス、・・・、第ｎ対象アドレス（ｎ；２以上の整数）に、夫々第１データ、第２データ、・・・、第ｎデータを書き込むアドレス・データ生成部と、
前記アドレス・データ生成部による書き込みよって各メモリの第１対象アドレス、第２対象アドレス、・・・、第ｎ対象アドレスの夫々に実際に記憶されたデータを各メモリから読み出し、
各メモリの第１対象アドレスの実際の記憶データと前記第１データとの間に相違があるとき、その相違内容を表すデータと相違の生じているメモリが何れのメモリであるかを表すデータと前記第１対象アドレスを表すデータとを含む保存データを、前記複数のメモリの何れか１つのメモリに設けられた保存データ格納領域に保存し、
各メモリの第２対象アドレスの実際の記憶データと前記第２データとの間に相違があるとき、その相違内容を表すデータと相違の生じているメモリが何れのメモリであるかを表すデータと前記第２対象アドレスを表すデータとを含む保存データを、前記保存データ格納領域に保存し、・・・、
各メモリの第ｎ対象アドレスの実際の記憶データと前記第ｎデータとの間に相違があるとき、その相違内容を表すデータと相違の生じているメモリが何れのメモリであるかを表すデータと前記第ｎ対象アドレスを表すデータとを含む保存データを、前記保存データ格納領域に保存する照合結果保存制御部と、
を備えたことを特徴とする半導体集積回路（以下、「別表現２」という）。
【００８０】
上記「別表現１」及び「別表現２」における第１データ、第２データ、・・・、第ｎデータは、夫々に任意の値を取りうる。従って、第１データ、第２データ、・・・、第ｎデータは、夫々互いに異なっていてもいいし、一部が一致していてもいい。また、全部が一致していてもいい。
【産業上の利用可能性】
【００８１】
本発明によれば、メモリの不良原因の解析時間を短くすることができ、また不良原因解析用の回路規模を縮小することができる。従って、本発明は、ＢＩＳＴ回路を備えた半導体集積回路（ＩＣ）として、ＳＯＣ（System On a Chip）等に好適である。また、本発明を適用すれば低コスト化及び小型化が実現されるため、携帯電話機及びＰＨＳ（Personal Handyphone System）等の低コスト化や小型化が望まれる移動体通信機、並びにパーソナルコンピュータに代表される情報処理機器等、様々な電気機器に本発明は好適である。特に、内蔵メモリの数が増えれば増えるほど本発明の効果は顕著となるため、多数のメモリが内蔵されることが多い画像処理用のＩＣ（デジタルカメラ等に用いられる）に本発明は好適である。
【図面の簡単な説明】
【００８２】
【図１】本発明の実施形態に係るＩＣの構成ブロック図である。
【図２】図１のＩＣの動作を説明するためのフローチャートである。
【図３】図１のＲＡＭの記憶領域の配分を示す図である。
【図４】図１のＩＣの動作を説明するためのフローチャートである。
【図５】図２の動作において保存される保存データの内容を示したものである。
【図６】図２の動作において保存される保存データの内容を示したものである。
【図７】従来のＩＣの構成ブロック図である。
【符号の説明】
【００８３】
１、２、３、４    ＲＡＭ
５    アドレス・データ生成部
６    照合結果保存制御部
７    照合部
８    保存データ生成部
３１、３２、３３、３４    セレクタ
１０    ＩＣ
１ａ    保存データ格納領域
【図１】
2006038782.tif 000003
【図２】
2006038782.tif 000004
【図３】
2006038782.tif 000005
【図４】
2006038782.tif 000006
【図５】
2006038782.tif 000007
【図６】
2006038782.tif 000008
【図７】
2006038782.tif 000009