(57)【要約】【課題】試験時にエラー訂正回数の上限値を任意に設定可能な半導体記憶装置を提供する。【解決手段】カウンタ１５ａはエラー訂正回数を計数し、レジスタ１６ａは外部からエラー訂正回数の上限値を変更する旨の上限値設定信号（図１の場合は外部上限値取り込み信号）が入力されると上限値を変更し、比較回路１７は、エラー訂正回数と、変更した上限値とを比較する。【選択図】図１
2010282725.tif 000002
【特許請求の範囲】
【請求項１】
不良ビットを訂正するエラー訂正機能を有する半導体記憶装置において、
１ビットエラー訂正可能な符号を構築するために必要なデータビットとパリティビットごとに、エラー訂正を行ったか否かのエラー訂正情報を記憶するエラー訂正記憶部を有することを特徴とする半導体記憶装置。
【請求項２】
前記エラー訂正記憶部は、４ビットまたは８ビット単位で構成されているメモリセルアレイを、前記１ビットエラー訂正可能な符号を構築するために必要なデータビットとパリティビットに割り当てた余剰分であることを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記エラー訂正情報を基に、エラー訂正回数を計数する計数部を更に有することを特徴とする請求項１記載の半導体記憶装置。
【請求項４】
不良ビットを訂正するエラー訂正機能を有する半導体記憶装置において、
エラー訂正回数を計数する計数部と、
外部から上限値設定信号が入力されると、前記計数部での前記エラー訂正回数の計数結果を前記エラー訂正回数の上限値として設定する上限値設定部と、
前記上限値と、所定時間経過後の前記計数部での計数結果とを比較する比較部と、
を有することを特徴とする半導体記憶装置。
【請求項５】
不良ビットを訂正するエラー訂正機能を有する半導体記憶装置において、
エラー訂正回数を計数する計数部と、
前記エラー訂正回数の上限値を記憶し、前記計数部での計数後、外部から上限値設定信号が入力されると、クロック信号に同期して前記上限値をインクリメントまたはデクリメントする上限値設定部と、
前記計数部での計数結果と前記上限値とを比較する比較部と、
を有することを特徴とする半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体記憶装置に関し、特にエラー訂正機能を有する半導体記憶装置に関する。
【背景技術】
【０００２】
近年、情報機器に搭載されるＤＲＡＭ（Dynamic Random Access Memory）などの半導体記憶装置において、必要となるメモリ容量は急速に増大している。このメモリ容量の増大には微細化技術の進展で対応してきたが、微細化技術が進むとメモリセルの信頼性が低下してくる。これを防止するために、メモリセルアレイに余分に記憶領域（冗長領域）を設けて、通常のメモリセルアレイ領域の不良のあるメモリセルの代わりに、冗長領域の良品のメモリセルを選択して、不良を救済する冗長技術があった。この技術により、製品そのものの信頼性の低下は防止できるが、近年、ＤＲＡＭのようなリフレッシュ動作を必要とするメモリセルで、保持時間が突発的に変動することにより、製品出荷後に不良が発生する問題があった。
【０００３】
このような保持期間の突発的な変動による不良の対応策の１つとして、ＥＣＣ（Error Checking and Correcting）機能を搭載するということが挙げられる。一般的によく使われている１ビット訂正可能なＥＣＣを用いた場合、読み出しデータに１ビットのエラーがあってもＥＣＣを使って訂正することができる。また、ＥＣＣ機能を搭載することで、冗長技術による不良の救済の肩代わりをさせるという方法も考えられる。つまり、ＥＣＣコード（例えばハミング符号）内のエラーが１ビットの場合には、冗長領域を使用することはせず、毎回１ビットエラーの状態で読み出してエラー訂正を行うということである。
【０００４】
このようにすることで、ある程度までの単ビット不良（１回の読み出し動作で２個以上の不良が出てしまうのではなく、ＢＬ（ビット線）ショート／断線などが原因で、１回の読み出しで１個の不良しかでないもの）には冗長領域を使用しなくてすむ。それにより、今まででは不良ビットが多すぎて所定の冗長領域では救済できないため不良チップとなって捨てていたものも良品チップとすることができるので、歩留まり向上に寄与することができる。
【０００５】
しかし、ＥＣＣ機能によって冗長技術による不良ビットの救済の肩代わりをした単ビット不良の数が多すぎると、保持時間の突発的な変動による不良ビットを救える確率が低くなってしまう。ここで重要になるのが、製品として出荷するときにどれだけの数までなら、ＥＣＣ機能によって冗長技術による不良ビットの救済の肩代わりをすることができるかを決めておくことと、それを試験することができるということである。
【０００６】
そのために、エラー訂正を行った回数を計数できるカウンタと、エラー訂正回数の上限を設定できるレジスタを配置し、且つ比較回路を用いてこのカウンタとレジスタの値を比較して、比較結果を出力するという機能が必要となる。
【０００７】
上記のような機能を有する半導体記憶装置は、例えば、特許文献１、２、３などに開示されており、以下のような構成となる。
図９は、従来の半導体記憶装置の構成を示す図である。
【０００８】
従来の半導体記憶装置２０は、図示しないメモリコアのメモリセルアレイに記憶されたデータのうち、データビットを記憶するデータビット部２１とパリティビットを記憶するパリティビット部２２と、データビットとパリティビットを参照してエラー訂正を行うエラー訂正回路２３と、入力データに応じて、例えばハミング符号に基づく演算などによりパリティビットを生成するパリティ演算回路２４と、エラー訂正回数を計数するカウンタ２５と、エラー訂正回数の上限値を格納するレジスタ２６と、計数したエラー訂正回数とレジスタ２６に格納されたエラー訂正の上限値を比較する比較回路２７と、出力回路２８及び入力回路２９を有している。
【０００９】
この従来の半導体記憶装置２０において、エラー訂正回路２３は、例えば６４ビットのデータビットと、７ビットのパリティビットを参照して１ビットエラー検出及びエラー訂正を行う。検出された不良ビットが反転されることでエラー訂正がなされ、その結果が出力回路２８を介して出力される。カウンタ２５は、試験時に計数開始信号が入力されるとエラー訂正回数の計数を行う。そして比較回路２７は、エラー訂正回数と、予めレジスタ２６に格納されていたエラー訂正回数の上限値とを比較し、エラー訂正回数が所定の上限値を超えたか否かが判定される。上限値を超えた場合には、出力回路２８はアラームを出力する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開昭４９−６０４５０号公報（ｐ３，第２図）
【特許文献２】特開平１−９４５９９号公報（ｐ４、ｐ５，第１図）
【特許文献３】特開平６−１３１８８４号公報（段落番号〔０００６〕〜〔０００８〕，第１図）
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、従来の半導体記憶装置では、試験パターンによっては、同じアドレスのデータに複数回アクセスすることがあるが、この際に不良ビットを複数回カウントしてしまうという問題があった。
【課題を解決するための手段】
【００１２】
発明の一観点によれば、不良ビットを訂正するエラー訂正機能を有する半導体記憶装置において、１ビットエラー訂正可能な符号を構築するために必要なデータビットとパリティビットごとに、エラー訂正を行ったか否かのエラー訂正情報を記憶するエラー訂正記憶部を備えた半導体記憶装置が提供される。
【発明の効果】
【００１３】
開示の半導体記憶装置によれば、エラー訂正回数の計数の際に、試験パターンによっては、同じアドレスのエラーを複数回訂正して、正確なエラー訂正回数が把握できなくなる問題を解決できる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施の形態の半導体記憶装置の構成を示す図である。
【図２】第２の実施の形態の半導体記憶装置の構成を示す図である。
【図３】第３の実施の形態の半導体記憶装置の構成を示す図である。
【図４】第４の実施の形態の半導体記憶装置の構成を示す図である。
【図５】エラー訂正記憶ビットへのエラー訂正情報の書き込みの様子を示すタイミングチャートである。
【図６】エラー訂正記憶ビットへのエラー訂正情報のライト後におけるメモリコアの記憶状態を示す図である。
【図７】エラー訂正記憶ビットの読み出し及び計数の様子を示すタイミングチャートである。
【図８】第５の実施の形態の半導体記憶装置の構成を示す図である。
【図９】従来の半導体記憶装置の構成を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
図１は、第１の実施の形態の半導体記憶装置の構成を示す図である。
第１の実施の形態の半導体記憶装置１０ａは、データビットを記憶するデータビット部１１とパリティビットを記憶するパリティビット部１２と、データビットとパリティビットを参照してエラー訂正を行うエラー訂正回路１３と、入力データに応じて、例えばハミング符号に基づく演算などによりパリティビットを生成するパリティ演算回路１４と、エラー訂正回数を計数するカウンタ１５ａと、エラー訂正回数の上限値を設定するレジスタ１６ａと、計数したエラー訂正回数とレジスタ１６ａに格納したエラー訂正回数の上限値とを比較する比較回路１７と、出力回路１８及び入力回路１９を有している。
【００１６】
データビット部１１とパリティビット部１２は、図示しないメモリコアのメモリセルアレイにより構成されている。メモリセルアレイは、例えば、１つのコラム選択線で４つまたは８つのメモリセルを選択するような、４ビットもしくは８ビット単位で構成されている。
【００１７】
なお、センスアンプやライトアンプ、アドレスを指定するコラムデコーダやロウデコーダなどは図示を省略している。
第１の実施の形態の半導体記憶装置１０ａにおいて、エラー訂正回数の上限値を記憶するレジスタ１６ａは、従来のものと異なり、外部から入力される上限値設定信号（以下第１の実施の形態では外部上限値取り込み信号という。）に応じて上限値を変更する。設定用上限値は、例えば、試験時に外部上限値取り込み信号がハイレベルになると、図示しないデータ入出力ピンを介してレジスタ１６ａに取り込まれる。この上限値が、ＥＣＣ機能によって冗長技術による不良ビットの救済の肩代わりをする上限の値となる。
【００１８】
以下、半導体記憶装置１０ａの動作を説明する。
データ書き込み時には、図示しないデータ入出力ピンより入力されたデータは、入力回路１９を介して、データビット部１１の指定されたアドレスに記憶される。この際、パリティ演算回路１４にて入力データに応じ、ＥＣＣコード（例えばハミング符号）に基づく演算によりパリティビットが生成され、パリティビット部１２の所定のアドレスに記憶される。
【００１９】
例えば、１ビットエラー訂正のＥＣＣコードを構築する場合、８ビットのデータビットに対して４ビットのパリティビットが生成され、１６ビットのデータビットに対しては５ビットのパリティビット、６４ビットのデータビットに対して７ビットのパリティビット、１２８ビットのデータビットに対しては８ビットのパリティビットが生成されて、パリティビット部１２に記憶される。
【００２０】
一方、データ読み出し時には、１回の読み出しで、データビット部１１とパリティビット部１２の指定されたアドレスから、ＥＣＣコードを構築する例えば６４ビットのデータビットと７ビットのパリティビットが読み出される。この際エラー訂正回路１３は、データビットと、パリティビットとを参照して、１ビットエラー検出及びエラー訂正を行い、不良ビットが検出された場合にはそのビットを反転することにより訂正したデータを出力する。
【００２１】
次に試験時の動作を説明する。
試験時には、所定の試験パターンに応じて、アドレスをインクリメントまたはデクリメントして、データビット部１１及びパリティビット部１２の全てのアドレスのデータへのアクセスを行う。エラー訂正回路１３では、ＥＣＣコードを構築する例えば６４ビットのデータビットと、それに対応した７ビットのパリティビットを参照して、１ビットのエラー検出及びエラー訂正を行う。カウンタ１５ａは、試験時に外部ピンから入力される計数開始信号がハイレベルになるとエラー訂正回数の計数を開始する。このとき、カウンタから出力される計数値と、レジスタ１６ａに記憶されたエラー訂正回数の上限値が、比較回路１７に入力されて比較される。比較回路１７での比較結果は、出力回路１８を介して出力される。カウンタ１５ａでの計数値が、レジスタ１６ａに設定された上限値に満たなければ、カウンタ１５ａはそのままエラー訂正回数の計数を継続して行う。所定の試験パターンを終えると、例えばカウンタ１５ａに入力される計数開始信号がロウレベルになって、エラー訂正回数の計数を停止する。また、試験中に上限値に達すると、出力回路１８は例えばアラームを出力し、カウンタ１５ａは計数を中止する。
【００２２】
ところで、この上限値は、ＥＣＣ機能によって冗長技術による不良ビットの救済の肩代わりをする上限であるから、上限値が小さすぎるとエラー訂正回数によっては冗長領域が多く必要になってしまう。また、上限値が大きすぎるとエラー訂正回数が多い場合に保持時間の突発的な変動による不良ビットを救える確率が低くなる。そのため、第１の実施の形態の半導体記憶装置１０ａでは、試験時に、このレジスタ１６ａに設定される上限値の調整ができるようにしている。具体的には、エラー訂正回数のカウントの終了後、入力される外部上限値取り込み信号を例えばハイレベルにして、図示しないデータ入出力ピンより、設定用上限値をレジスタ１６ａに取り込み、新たな上限値として設定する。
【００２３】
例えば、エラー訂正回数のカウントの終了後、アラーム発生の有無に応じて、上限値を変更して、それによってアラーム発生の有無が変化するかで、おおよそのエラー訂正回数を検出し、さらに保持期間の突発的な変動による不良の分を見積もって上限値を設定する。これにより、試験時のエラー訂正回数に合わせて上限値を設定することができるようになる。
【００２４】
次に、第２の実施の形態の半導体記憶装置を説明する。
図２は、第２の実施の形態の半導体記憶装置の構成を示す図である。
第１の実施の形態の半導体記憶装置１０ａと同じ構成要素については同一符号とし、説明を省略する。
【００２５】
第２の実施の形態の半導体記憶装置１０ｂにおいて、上限値を設定するレジスタ１６ｂは、第１の実施の形態の半導体記憶装置１０ａと異なり、外部から上限値設定信号（第２の実施の形態では、計数値記憶信号という。）が入力されると（ハイレベルになると）、カウンタ１５ａでのエラー訂正回数の計数結果をエラー訂正回数の上限値として設定する。
【００２６】
以下、第２の実施の形態の半導体記憶装置１０ｂの動作を説明する。リード及びライト時の動作は、第１の実施の形態の半導体記憶装置１０ａと同様であるので説明を省略する。
【００２７】
試験時には、カウンタ１５ａによるエラー訂正回数の計数後、例えば、計数値記憶信号をハイレベルにして、レジスタ１６ｂに計数結果を記憶する。そして、ストレス試験などを行った所定時間経過後に、再び前回と同じ試験パターンで試験を行い、比較回路１７によりレジスタ１６ｂに設定した前回の計数結果とカウンタ１５ａから出力される今回の計数結果とを比較する。今回の計数結果が前回のものよりも増えていれば、例えばアラームが出力回路１８から出力され、経時劣化を把握することができる。
【００２８】
なお、第１の実施の形態の半導体記憶装置１０ａのレジスタ１６ａに、上記の計数値記憶信号を入力するようにして、計数値記憶信号がハイレベルのときに、外部から上限値を取り込む代わりに、カウンタ１５ａの計数値をレジスタ１６ａに記憶するようにしてもよい。
【００２９】
次に、第３の実施の形態の半導体記憶装置を説明する。
図３は、第３の実施の形態の半導体記憶装置の構成を示す図である。
第１乃至第２の実施の形態の半導体記憶装置１０ａと同じ構成要素については同一符号とし、説明を省略する。
【００３０】
第３の実施の形態の半導体記憶装置１０ｃにおいて、レジスタ１６ｃは、第１の実施の形態の半導体記憶装置１０ａと異なり、外部から上限値設定信号（第３の実施の形態では、上限値インクリメント／デクリメント信号という。）が入力されると（ハイレベルになると）、クロック信号に同期して上限値をインクリメントまたはデクリメントする。
【００３１】
以下、第３の実施の形態の半導体記憶装置１０ｃの動作を説明する。リード及びライト時の動作は、第１乃至第２の実施の形態の半導体記憶装置１０ａと同様であるので説明を省略する。
【００３２】
試験時には、カウンタ１５ａによるエラー訂正回数の計数後、例えば、上限値インクリメント／デクリメント信号をハイレベルにすると、レジスタ１６ｃは、予め記憶していた上限値をクロック信号に同期してインクリメントまたはデクリメントする。そしてそのたびに、エラー訂正回数の計数結果と比較する。例えば、アラームが発生していない場合、上限値をデクリメントしていくと、ある値でエラー訂正回数の計数結果より小さくなり、アラームが発生する。一方、アラームが発生している場合、上限値をインクリメントしていくと、ある値でエラー訂正回数の計数結果を上回るのでアラームが発生しなくなる。すなわち、比較回路１７からの信号によりエラー訂正回数の詳細を把握することができる。
【００３３】
なお、第１の実施の形態の半導体記憶装置１０ａのレジスタ１６ａに、カウンタ１５ａでのエラー訂正回数の計数後、上記の上限値インクリメント／デクリメント信号を入力するようにして、エラー訂正回数の詳細を把握できるようにしてもよい。
【００３４】
次に、第４の実施の形態の半導体記憶装置を説明する。
図４は、第４の実施の形態の半導体記憶装置の構成を示す図である。
第１乃至第３の実施の形態の半導体記憶装置１０ａと同じ構成要素については、同一符号とし、説明を省略する。
【００３５】
第４の実施の形態の半導体記憶装置１０ｄは、同じアドレスのデータに複数回アクセスすることがあるような試験パターンで試験を行う場合に、不良ビットを複数回カウントしてしまうことを防止する機能を有する。そのような機能を実現するために、半導体記憶装置１０ｄは、１ビットエラー訂正可能なＥＣＣコード（例えば、ハミング符号）を構築するために必要なデータビットとパリティビットごとに、エラー訂正を行ったか否かのエラー訂正情報を記憶するエラー訂正記憶ビット１２ａを有している。そして、カウンタ１５ｂは、計数開始信号が入力されると、エラー訂正記憶ビット１２ａに記憶されたエラー訂正情報を基に、エラー訂正を行った回数を計数する。
【００３６】
通常、メモリセルアレイは、４ビットまたは８ビット単位で構成されている。つまり、１つのコラム選択線で、４つまたは８つのメモリセルが選択される。例えば、８ビット構成の場合、データビット６４ビットに対してパリティビット７ビットでハミング符号が構築される場合、パリティビットを記憶するには７ビットでよいので１ビットの余剰分が存在する。この１ビットをエラー訂正記憶ビット１２ａに割り当てることで、メモリセルアレイの増加なしにこの機能を実現できる。
【００３７】
以下、第４の実施の形態の半導体記憶装置１０ｄの動作を説明する。
リード及びライト時の動作は、第１乃至第３の実施の形態の半導体記憶装置１０ａと同様であるので説明を省略する。
【００３８】
試験時には、まず、半導体記憶装置１０ｄは、メモリセルアレイの全てのアドレスのデータにアクセスして、エラー訂正回路１３にて１ビットエラー検出及びエラー訂正を行う。
【００３９】
図５は、エラー訂正記憶ビットへのエラー訂正情報の書き込みの様子を示すタイミングチャートである。
ここでは、まずロウアドレスＡｄｄ（０）を選択して、メモリコア（Ｃｏｒｅ）より例えばデータビット６４ビット及びパリティビット７ビットごとリードして、エラー訂正回路１３によるエラーの検出及びエラー訂正を行う。その結果を、エラー訂正情報として、メモリコアのエラー訂正記憶ビット１２ａにライトする。例えば、エラー訂正を行った場合には“１”、エラー訂正を行わなかった場合には“０”を記憶する。以上の処理を、全てのロウアドレスＡｄｄ（１）、Ａｄｄ（２）、…、Ａｄｄ（ｍ−１）、Ａｄｄ（ｍ）に対して行うことで、全てのアドレスのデータがアクセスされ、エラー訂正情報がエラー訂正記憶ビット１２ａにライトされる。
【００４０】
図６は、エラー訂正記憶ビットへのエラー訂正情報のライト後におけるメモリコアの記憶状態を示す図である。
１ビットエラー訂正可能なＥＣＣコードを構築するために必要なデータビット６４ビットとパリティビット７ビットごとに、エラー訂正記憶ビットにはエラー訂正を行った場合には“１”、エラー訂正を行わなかった場合には“０”が記憶される。
【００４１】
次に、エラー訂正回数を計数する際の動作を説明する。
図７は、エラー訂正記憶ビットの読み出し及び計数の様子を示すタイミングチャートである。
【００４２】
例えば、カウンタ１５ｂに計数開始信号が入力されると、全てのロウアドレスＡｄｄ（０）〜Ａｄｄ（ｍ）が順に選択されリードが行われる。これにより、図示しないメモリコアの内部では、エラー訂正記憶ビット１２ａのデータ読み出される。カウンタ１５ｂは、エラー訂正記憶ビット１２ａに記憶されたデータが、エラー訂正を行ったことを示す“１”の場合のみカウントアップしていく。図７では、計数の結果、エラーの個数が５８０７個（１６進数で１６ＡＦ個）あったことを示している。計数結果は、出力回路１８を介して出力される。
【００４３】
通常の試験パターンでは、全てのアドレスのデータへのアクセスを複数回繰り返すため、エラー訂正の回数をカウンタ１５ｂでそのまま計数すると、同じアドレスを複数回カウントしてしまう。そのため、正確なエラー訂正回数が把握できないという問題があった。しかし、第４の実施の形態の半導体記憶装置１０ｄでは、エラー訂正記憶ビット１２ａを用いているので、同じアドレスのエラーを複数回訂正しても、エラー訂正記憶ビットには“１”が上書きされるだけなので、最後にこの数を計数することで正確なエラー訂正回数を計数できる。
【００４４】
次に、第５の実施の形態の半導体記憶装置を説明する。
図８は、第５の実施の形態の半導体記憶装置の構成を示す図である。
第１乃至第４の実施の形態の半導体記憶装置１０ａと同じ構成要素については同一符号とし、説明を省略する。
【００４５】
第５の実施の形態の半導体記憶装置１０ｅは、第４の実施の形態の半導体記憶装置１０ｄに、第１の実施の形態の半導体記憶装置１０ａで示した上限値設定用のレジスタ１６ａと、比較回路１７を追加した構成となっている。
【００４６】
このような構成によれば、正確なエラー訂正回数の計数結果に応じて、レジスタ１６ａに設定した上限値を任意に設定できる。
なお、第５の実施の形態の半導体記憶装置１０ｅに、更に、図２で示したような計数値記憶信号を入力するようにして、計数値記憶信号がハイレベルのときには、外部からの設定用上限値の代わりにカウンタ１５ａでの計数結果をレジスタ１６ａに記憶するようにしてもよい。これにより経時劣化をより正確に把握できる。
【符号の説明】
【００４７】
１０ａ  半導体記憶装置
１１  データビット部
１２  パリティビット部
１３  エラー訂正回路
１４  パリティ演算回路
１５ａ  カウンタ
１６ａ  レジスタ
１７  比較回路
１８  出力回路
１９  入力回路
【図１】
2010282725.tif 000003
【図２】
2010282725.tif 000004
【図３】
2010282725.tif 000005
【図４】
2010282725.tif 000006
【図５】
2010282725.tif 000007
【図６】
2010282725.tif 000008
【図７】
2010282725.tif 000009
【図８】
2010282725.tif 000010
【図９】
2010282725.tif 000011