(57)【要約】【課題】データ保持特性を改善でき、低消費電力化を図れることはもとより、余計な回路を増やすことなく自由度の高いシステムを実現できる半導体装置を提供する。【解決手段】起動信号およびモードセレクト信号を受けると、モードに応じて所定のパターンをもってＤＲＡＭ回路１１に対するコマンドおよびアドレスを生成し、各モードにおけるパターン発生処理が終了すると終了信号を出力するＡＬＰＧ１２と、起動信号およびパリティ生成モードを示すモードセレクト信号を受けてＤＲＡＭ回路１１から読み出されたデータに基づいてパリティを生成し、起動信号およびエラー訂正モードを示すモードセレクト信号を受けてＤＲＡＭ回路１１から読み出されたデータに対してパリティ生成モードにおいて生成したパリティに基づいてエラー訂正処理を行い、エラー訂正後のデータを出力するＥＣＣ回路１３と、インタフェース回路１４とを有する。【選択図】      図１
2005302250.tif 000002
【特許請求の範囲】
【請求項１】
ダイナミック型メモリセルを含むメモリ回路を有し、スタンバイモードにおいて上記メモリ回路のデータ保持のためのリフレッシュ動作を行う半導体装置であって、
上記スタンバイモードに入る前に起動信号およびパリティ生成モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると、上記スタンバイモードに入り上記メモリ回路に対するリフレッシュ動作を行った後、起動信号およびエラー訂正モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると通常モードに入るシステムブロックと、
上記起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号を受けると、モードに応じて所定のパターンをもって上記メモリ回路に対するコマンドおよびアドレスを生成し、各モードにおけるパターン発生処理が終了すると上記終了信号を出力するパターン発生回路と、
上記起動信号およびパリティ生成モードを示すモードセレクト信号を受けて上記メモリ回路から読み出されたデータに基づいてパリティを生成し、上記起動信号およびエラー訂正モードを示すモードセレクト信号を受けて上記メモリ回路から読み出されたデータに対してパリティ生成モードにおいて生成したパリティに基づいてエラー訂正処理を行い、エラー訂正後のデータを出力するエラー訂正回路と、
上記システムブロックによる上記起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号を上記パターン発生回路およびエラー訂正回路に入力させ、上記パターン発生回路によるコマンドおよびアドレスを上記メモリ回路に与えて、上記メモリ回路から読み出されたデータを上記エラー訂正回路に入力させ、上記エラー訂正回路によるエラー訂正モード処理後のデータを上記メモリ回路に出力するインタフェース回路と
を有する半導体装置。
【請求項２】
上記メモリ回路、システムブロック、パターン発生回路、エラー訂正回路、およびインタフェース回路は、一つのチップに集積化されている
請求項１記載の半導体装置。
【請求項３】
上記パターン発生は、BIST(Built In Self Test)回路により構成されている
請求項２記載の半導体装置。
【請求項４】
上記パターン発生回路は、内部にプログラム保持用メモリを有し、上記起動信号を受けて上記プログラム保持用メモリのプログラムに従って規定されたパターンを発生する
請求項３記載の半導体装置。
【請求項５】
上記プログラム保持用メモリは、保持内容を変更可能である
請求項４記載の半導体装置。
【請求項６】
上記メモリ回路は、記録領域において実データ領域とパリティ領域とを、異なる領域に割り当てている
請求項２記載の半導体装置。
【請求項７】
上記メモリ回路は、複数のブロックに区分けされており、上記パリティデータは、対応する実データが記録されるブロックと異なるブロックに記憶される
請求項６記載の半導体装置。
【請求項８】
上記メモリ回路は、２つのブロックを一つのセットして、一方のブロックの実データ領域に実データを記憶し、対応するパリティデータを他方ブロックのパリティ領域に記憶する
請求項７記載の半導体装置。
【請求項９】
上記インタフェース回路は、上記エラー訂正モードにおいては、訂正ビットがあったときのみ、データを上記メモリ回路に供給して書き戻させる
請求項２記載の半導体装置。
【請求項１０】
上記インタフェース回路は、上記エラー訂正モードにおいては、訂正ビットがあったときのみ、データを上記メモリ回路に供給して書き戻させる
請求項８記載の半導体装置。
【請求項１１】
上記パターン発生回路により発生され、上記インタフェース回路を通して上記メモリ回路に供給されるコマンドは各セットで共通となっており、
上記インタフェース回路は、一のセットに訂正ビットがあり、他のセットに訂正ビットがない場合であっても、データを全セットに対して書き戻させる
請求項１０記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ダイナミック型ＲＡＭ（ＤＲＡＭ）を混載する半導体装置に係り、特に、ＤＲＡＭのデータ保持特性を改善するためのシステム回路に関するものである。
【背景技術】
【０００２】
従来のＤＲＡＭのデータ保持特性は、搭載されるメモリセルの中で一番悪いもので決定されていた。
これらはメモリセル内の結晶欠陥などによるリーク電流特性によって決定され、メモリセルマトリクスにおける単ビットランダム不良として観測される。
しかもこれらの要因によって生じる不良セルは、いかに製造プロセスの改善を行っても完全に消えるものではない。
そこで、従来のＤＲＡＭでは、データ保持特性の悪いものを冗長セルと置き換えることにより、歩留まりを確保していた。
【０００３】
しかし、この方式は救済する不良の数に応じて冗長セルを追加する必要があり、それによる面積増加が問題となる。
また、搭載可能な冗長セル数の制限により、リテンションサイクルの大幅な改善は難しい。
【０００４】
これにより、近年、特にモバイル系アプリケーション用ＤＲＡＭのスタンバイ時の消費電力の改善要求を、スタンバイ時のリフレッシュサイクルを大幅に延ばすことによって、消費電力を削減するという施策に制限が加えられることとなる。
【０００５】
近年、ＤＲＡＭのデータ保持制御回路として、ＥＣＣ回路およびリフレッシュ周期設定回路を有する半導体集積回路装置が提案されている（たとえば特許文献１参照）。
【０００６】
この半導体集積回路装置のＥＣＣ回路は、メモリ回路の情報保持モードに入るときに起動され、メモリ回路に保持された複数のデータを読み出して誤り検出訂正用の検査ビットを生成して記憶させる第１動作と、情報保持モードから他の回路との間で読み出しまたは書き込み動作が行われる通常動作に復帰するときに起動され、メモリ回路に保持された複数のデータと検査ビットを読み出してデータの誤りビットを修正して対応するメモリセルに書き込む第２動作を行う。
また、リフレッシュ周期設定回路は、ＥＣＣ回路での検査ビットを用いたエラー発生の許容範囲内で長くされた周期を設定してリフレッシュ動作を行わせる。
【特許文献１】特開２００２−５６６７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載された半導体集積回路装置は、ＤＲＡＭのデータ保持特性を改善することが可能で、低消費電力化を図ることができるが、専用のパターン発生回路を用意する必要がある。また、効率的なパターンを発生させられる回路を設計すると、回路規模が大きくなり、回路規模を小さくしようとするとパターンが冗長となり、動作時間が増大するというジレンマを抱える。そこで、通常は必要最小限の回路のみを搭載することになるが、上記の通りパターンが冗長となり動作時間が問題となる。
上記より特許文献１の半導体集積回路装置は、以下の点において不利益がある。
（１）．専用回路を搭載するということは、すなわち余計な回路を増やすこととなる。
（２）．回路規模を小さく抑えるためには、動作時間の増大を招く。
【０００８】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、データ保持特性を改善することが可能で、低消費電力化を図ることができることはもとより、余計な回路を増やすことなく、自由度の高いシステムを実現できる半導体装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明は、ダイナミック型メモリセルを含むメモリ回路を有し、スタンバイモードにおいて上記メモリ回路のデータ保持のためのリフレッシュ動作を行う半導体装置であって、上記スタンバイモードに入る前に起動信号およびパリティ生成モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると、上記スタンバイモードに入り上記メモリ回路に対するリフレッシュ動作を行った後、起動信号およびエラー訂正モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると通常モードに入るシステムブロックと、上記起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号を受けると、モードに応じて所定のパターンをもって上記メモリ回路に対するコマンドおよびアドレスを生成し、各モードにおけるパターン発生処理が終了すると上記終了信号を出力するパターン発生回路と、上記起動信号およびパリティ生成モードを示すモードセレクト信号を受けて上記メモリ回路から読み出されたデータに基づいてパリティを生成し、上記起動信号およびエラー訂正モードを示すモードセレクト信号を受けて上記メモリ回路から読み出されたデータに対してパリティ生成モードにおいて生成したパリティに基づいてエラー訂正処理を行い、エラー訂正後のデータを出力するエラー訂正回路と、上記システムブロックによる上記起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号を上記パターン発生回路およびエラー訂正回路に入力させ、上記パターン発生回路によるコマンドおよびアドレスを上記メモリ回路に与えて、上記メモリ回路から読み出されたデータを上記エラー訂正回路に入力させ、上記エラー訂正回路によるエラー訂正モード処理後のデータを上記メモリ回路に出力するインタフェース回路とを有する。
【００１０】
好適には、上記メモリ回路、システムブロック、パターン発生回路、エラー訂正回路、およびインタフェース回路は、一つのチップに集積化されている。
【００１１】
好適には、上記パターン発生は、BIST(Built In Self Test)回路により構成されている。
【００１２】
好適には、上記パターン発生回路は、内部にプログラム保持用メモリを有し、上記起動信号を受けて上記プログラム保持用メモリのプログラムに従って規定されたパターンを発生する。
また、好適には、上記プログラム保持用メモリは、保持内容を変更可能である。
【００１３】
また、好適には、上記メモリ回路は、記録領域において実データ領域とパリティ領域とを、異なる領域に割り当てている。
【００１４】
好適には、上記メモリ回路は、複数のブロックに区分けされており、上記パリティデータは、対応する実データが記録されるブロックと異なるブロックに記憶される。
【００１５】
好適には、上記メモリ回路は、２つのブロックを一つのセットして、一方のブロックの実データ領域に実データを記憶し、対応するパリティデータを他方ブロックのパリティ領域に記憶する。
【００１６】
好適には、上記インタフェース回路は、上記エラー訂正モードにおいては、訂正ビットがあったときのみ、データを上記メモリ回路に供給して書き戻させる。
【００１７】
好適には、上記パターン発生回路により発生され、上記インタフェース回路を通して上記メモリ回路に供給されるコマンドは各セットで共通となっており、上記インタフェース回路は、一のセットに訂正ビットがあり、他のセットに訂正ビットがない場合であっても、データを全セットに対して書き戻させる。
【００１８】
本発明によれば、たとえばまず、パリティ生成モードにおいてパリティ生成を行わせるために、システムブロックが、モードセレクト信号および起動信号をインタフェース回路を通してパターン発生回路およびエラー訂正回路に出力する。
モードセレクト信号および起動信号を受けたパターン発生回路において、メモリ回路からデータを読み出して、エラー訂正回路に入力させてパリティを生成させるため、読み出しコマンドやアドレスを所定のパターンで生成してインタフェース回路に出力する。
これらのコマンドやアドレスは、インタフェース回路により選択的にメモリ回路に供給される。
これにより、メモリ回路から実データおよびパリティデータが読み出される。そして、メモリ回路のデータはインタフェース回路により選択的にエラー訂正回路に入力される。
エラー訂正回路において、インタフェース回路を介してシステムブロックにより起動信号およびパリティ生成モードを示すセレクト信号を受けて、スタンバイ状態におけるＥＣＣ動作モードのパリティ生成モードにおいて、メモリ回路から読み出され、インタフェース回路を通して入力されたデータを基にパリティビットが生成される。このパリティデータは、スタンバイモード毎のエラー訂正モードのエラー訂正処理において用いるために記憶される。
そして、所定時間が経過してパリティ生成モードが終了するとパターン発生回路は、終了信号をインタフェース回路を介してシステムブロックに出力する。
【００１９】
終了信号を受けたシステムブロックは、スタンバイモードに入る（長時間データ保持が可能な状態になる）。
システムブロックは、データ保持のためのスタンバイリフレッシュをメモリ回路に対して行う。
【００２０】
次に、エラー訂正モードにおいてエラー訂正を行わせるために、システムブロックが、モードセレクト信号および起動信号をインタフェース回路を通してパターン発生回路およびエラー訂正回路に出力する。
パターン発生回路は、スタンバイモードへの導入期間、および同モードからの復帰期間において、インタフェース回路を介してシステムブロックにより起動信号およびエラー訂正モードを示すモードセレクト信号を受けて、メモリ回路から読み出されたデータをエラー訂正回路に入力させて不良ビットのエラー訂正を行わせ、訂正後あるいはそのままの実データおよびパリティビットデータをエラー訂正回路から読み出して、メモリ回路に対して書き込みをさせるため、読み出しコマンドやアドレスを所定のパターンで生成してインタフェース回路に出力する。
これらのコマンドやアドレスは、インタフェース回路により選択的にメモリ回路に供給される。
これにより、メモリ回路から実データおよびパリティデータが読み出される。そして、メモリ回路のデータはインタフェース回路により選択的にエラー訂正回路に入力される。  エラー訂正回路は、インタフェース回路を介してシステムブロックにより起動信号およびエラー訂正モードを示すセレクト信号を受けて、スタンバイ状態におけるＥＣＣ動作モードのエラー訂正モードにおいて、インタフェース回路を通してメモリ回路から読み出されたデータを入力し、パリティ生成モードで生成したパリティを基に不良化したデータに対してエラー訂正を行う。
そして、エラー訂正回路は、エラー訂正後またはエラー訂正の必要がなかった元のデータおよびパリティビットデータをインタフェース回路に出力する。これにより、エラー訂正されたデータがメモリ回路に書き戻される。
そして、所定動作が完了してエラー訂正モードが終了するとパターン発生回路は、終了信号をインタフェース回路を介してシステムブロックに出力する。
以上の処理を全てのデータに対して行う。
終了信号を受けたシステムブロックは、通常モード（通常データ保持モード）に入る。
【発明の効果】
【００２１】
本発明によれば、メモリ回路のスタンバイ状態におけるデータ保持特性を改善することが可能となる。
また、内部に混載するパターン発生回路によってコントロールすることにより、システムブロックからは起動信号のみを発生するだけで、パリティーデータの生成およびデータ訂正の一連の動作が完結可能なシステムを実現でき、システム全体をコントロールするシステムブロックの負荷を軽減することが可能となる。
また、パターン発生回路は、BIST(Built In Self Test)回路であることからシステムに搭載する余計な回路を減らし、システムを最適化することが可能となる。また、BIST回路を用いることにより、ＤＲＡＭへのアクセスに対する制約がなくなるため、効率の良いデータの転送が可能となる。
また、パターン発生回路は、内部にプログラム保持用メモリを持つことから起動信号のみを与えることにより、規定されたパターン（コマンド群）を発生することが可能となる。またこの規定パターンを変更する際は、メモリの内容を変更するだけで容易に変更が可能となる。
また、スタンバイ状態におけるリフレッシュ周期設定回路は、メモリ回路に内蔵せずに外部メモリコントローラより行うことができ、これによりスタンバイ状態のリフレッシュ周期は周囲の環境（Chip温度など）を考慮に入れた最適な値に設定を変更することが可能となる。
また、パリティビットはメモリ領域の一部を使用して保持することから、スタンバイ導入時にデータをスワップさせることによりパリティー領域を確保することができ、またパリティー領域は別バンクもしくは別ブロックもしくは別アドレスに保持することにより、実データとパリティデータ転送時に効率的なデータ転送が可能になる。
また、ＢＩＳＴ回路を用いた制御であるため、メモリの情報を書き換えることにより、実データとパリティデータ領域を自由に設定することが可能となる利点がある。
また、ＢＩＳＴ回路を用いた制御であるため、生産時の品質テストにおけるＥＣＣシステムの故障検出率を向上させることが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の好適な実施形態を添付図面に関連付けて説明する。
【００２３】
図１は、本発明に係る半導体装置の一実施形態を示すシステム構成図である。
【００２４】
本実施形態に係る半導体装置１０は、ＤＲＡＭ回路１１、ＤＲＡＭパターン発生回路としてのアルゴリズムパターン生成器（ＡＬＰＧ：Algorithmic Pattern Generator ）１２、エラー訂正回路としてのＥＣＣ回路１３、インタフェース回路としてのテスト回路１４、およびシステムブロック１５を、一つのチップＣＰに集積化して構成されている。
また、本実施形態に係る半導体装置１０は、チップＣＰ外のメモリテスタ２０をシステムブロック１５と接続して、ＤＲＡＭ回路（ｅＤＲＡＭ０〜３）１１に対する所定のテストが可能である。
【００２５】
本半導体装置１０は、スタンバイ導入時にパリティービットを生成し、スタンバイからの復帰時にＥＣＣ回路（ＥＣＣデコーダ）によりＤＲＡＭデータを訂正することにより、ＤＲＡＭのスタンバイ状態におけるデータ保持特性を改善することを可能としている。
また、半導体装置１０は、システムを内部に混載されるＤＲＡＭパターン発生回路をコントロールするために、全体システムからは起動信号のみを発生するだけで、パリティーデータの生成およびデータ訂正の一連の動作が完結可能なシステムを実現している。
そして、パターン発生回路をDRAM  BIST(Built In Self Test)回路（本実施形態ではＡＬＰＧ１２）とすることにより、システムに搭載する余計な回路を減らし、システムを最適化することを可能としている。
また、ＢＩＳＴ回路を用いることにより、ＤＲＡＭへのアクセスに対する制約がなくなるため、効率の良いデータの転送を可能としている。
以下、各部の構成、機能について説明する。
【００２６】
ＤＲＡＭ回路１１は、たとえば６４メガビットの容量を有し、それぞれが１６メガビットの容量を有する４つのバンク（ｅＤＲＡＭ０〜３）１１−０〜１１−３に区分けされている。
ＤＲＡＭ回路１１は、スタンバイ状態におけるリフレッシュ周期設定回路を内蔵せずに、リフレッシュ周期設定はシステムブロック１５により行われる。また、ＤＲＡＭ回路１１は、システムブロック１５によりクロックの供給を受ける。メモリテスタ２０を用いるときは、メモリテスタ２０によるクロックをシステムブロック１５を通して供給される。  ＤＲＡＭ回路１１は、システムブロック１５との間で、バス１６を介して１つのバンク１１−０〜１１−３で１２８ビット単位でデータの転送（書き込みおよび読み出し）が行われる。
また、ＤＲＡＭ回路１１は、テスト回路１４との間で、バス１７を介して１つのバンクで８ビット単位でデータおよびパリティの転送が行われる。
また、ＤＲＡＭ回路１１は、テスト回路１４との間で、バス１８を介してシステムブロック１５によるコマンドあるいはＡＬＰＧ１２によるコマンドの転送が行われる。
【００２７】
ＤＲＡＭ回路１１において、各バンク１１−０〜−３には実データとパリティビットデーが格納されることになる。
本実施形態においては、各バンク１１−０〜１１−３においてデータ領域とパリティ領域とを図２に示すように配置する。
図２の例は、１つのバンクが１０２４ロウ、３２カラム×１２８ビットの記憶領域を有し、データ領域として、０〜８１８の８１９ロウを割り当て、パリティ領域として８１９〜１０２３の２０５ロウを割り当てている。
【００２８】
そして、本実施形態においては、図３に示すように、バンク１１−０と１１−１、バンク１１−２と１１−３を組として、たとえばバンク１１−０の実データに対するパリティ領域をバンク１１−１、バンク１１−１の実データに対するパリティ領域をバンク１１−０というように配置している。
これにより、パリティビットはメモリ領域の一部を使用して保持し、かつ、スタンバイ導入時にデータをスワップさせることによりパリティ領域を確保する。
【００２９】
図４は、バンク１１−０（ＢＡＮＫ０）のデータおよびパリティアドレス対応を示している。バンク１１−０において、開始位置は〔３１：０〕であり、終了位置は〔９５：６４〕となっている。
図５は、バンク１１−１（ＢＡＮＫ１）のデータおよびパリティアドレス対応を示している。バンク１１−１において、開始位置は〔１２７：９６〕であり、終了位置は〔６３：３２〕となっている。
同様にして、図６に示すように、バンク１１−２（ＢＡＮＫ２）において、開始位置は〔９５：６４〕であり、終了位置は〔３１：０〕となっている。また、バンク１１−３（ＢＡＮＫ３）において、開始位置は〔６３：３２〕であり、終了位置は〔１２７：９６〕となっている。
【００３０】
このような構成を有するＤＲＡＭ回路１１を適用することにより、以下の効果を得ることができる。
ＤＲＡＭの場合、データを読み出す際、対象となるデータ領域を活性化（Activate動作）する必要がある。
このため通常は、図７（Ａ）に示すように、実データの読み出しを完了した後、領域の非活性化（Pre-charge動作）を行い、パリティー領域を活性化させ、読み出しを再開するため読み出しデータをストールしていた。
一方、本実施形態に係るＤＲＡＭ回路１１では、図７（Ｂ）に示すように、実データ領域とパリティー領域をマクロ（Macro）間もしくはバンク（Bank）間で離して保存することにより、実データ読み出しとパリティ読み出しが連続的に行えるようになり、効率的なデータ転送が可能となる。
【００３１】
ＤＲＡＭパターン発生回路としてのＡＬＰＧ１２は、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびパリティ生成モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのパリティ生成モードにおいて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３からデータを読み出して、ＥＣＣ回路１３に入力させてパリティを生成させるためのコマンド、アドレス等を所定のパターンで生成してテスト回路１４に出力し、所定時間が経過してパリティ生成モードが終了すると終了信号ｅｎｄをテスト回路１４を介してシステムブロック１５に出力する。
ＡＬＰＧ１２は、スタンバイモード、リフレッシュ期間をおいて、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびエラー訂正モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのエラー訂正モードにおいて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３からデータを読み出して、ＥＣＣ回路１３に入力させてエラー訂正を行わせ、ＥＣＣ回路１３から出力された実データおよびパリティビットデータを、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３に対して書き込みをさせるためのコマンド、アドレス等を所定のパターンで生成してテスト回路１４に出力し、所定時間が経過してエラー訂正モードが終了すると終了信号ｅｎｄをテスト回路１４を介してシステムブロック１５に出力する。
【００３２】
このように、タンバイ導入時にパリティービットを生成し、スタンバイからの復帰時にＥＣＣ回路（ＥＣＣデコーダ）によりＤＲＡＭデータを訂正するといった一連の動作は、システムブロック１５からの起動信号ｒｕｎに応じて、ＡＬＰＧ１２によってコントロールされる。
ＡＬＰＧ１２は、ＢＩＳＴシステムの中で、コマンドやデータを発生させるパターン発生回路であるため、ＤＲＡＭをテストするために必要な数々のパターンを自由に発生させられる自由度を持っている。
特に、混載ＤＲＡＭなど多ビットＩ／Ｏを所有するデバイスの場合、チップＣＰ外部に引き出せるテスト用バス配線は限られてくる（本例では８ビット）。
そのため、このＡＬＰＧ１２を用いることによって、ＤＲＡＭ（もしくはデータバス）をストールさせることなく、効率の良いコマンドパターンを発生させることが可能となる。
【００３３】
図８は、本実施形態に係るＤＲＡＭパターン発生回路としてのＡＬＰＧ１２の構成例を示すブロック図である。
図８のＡＬＰＧ１２は、命令記憶部１２１、記憶命令読出制御部１２２、および発生パターン演算部１２３を有している。
このＡＬＰＧ１２は、内部に内蔵している命令記憶部１２１のデータを記憶命令読出制御部１２２で読み出し、読み出した命令を発生パターン演算部１２３でコマンドパターン、アドレスパターンを生成させている。
このため、命令記憶部１２１のデータを書き換えることにより、容易にコマンドパターンを書き換えられる利点も有する。
【００３４】
ＥＣＣ回路１３は、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびパリティ生成モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのパリティ生成モードにおいて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３から読み出され、テスト回路１４を通して入力されたデータを基に３２ビットのパリティビットを生成する。
ＥＣＣ回路１３は、スタンバイモード、リフレッシュ期間をおいて、通常の動作に戻る前に、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびエラー訂正モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのエラー訂正モードにおいて、テスト回路１４を通してＤＲＡＭ回路１１の各バンク１１−０〜１１−３から読み出されたデータを入力して、パリティ生成モードで生成したパリティを基に不良化したデータに対してエラー訂正を行い、エラー訂正後またはエラー訂正の必要がなかった元のデータおよびパリティビットデータをテスト回路１４に出力する。
また、ＥＣＣ回路１３は、エラーステイタスをテスト回路１４を通してシステムブロック１５に転送する。
【００３５】
テスト回路１４は、システムブロック１５による起動信号ｒｕｎおよびパリティ生成モードまたはエラー訂正モードを示すセレクト信号ｅｍｓｅｌをＡＬＰＧ１２およびＥＣＣ回路１３に供給し、ＡＬＰＧ１２により生成されたコマンドやアドレス情報に基づいて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３とＥＣＣ回路１３との間のデータ転送のインタフェース回路として機能する。
テスト回路１４は、ＥＣＣ回路１３のエラーステータス情報をシステムブロック１５に供給する。
【００３６】
なお、エラー訂正モードにおいては、訂正ビットがあったときのみ１２８ビットのデータがＤＲＡＭ回路１１のバンク１１−０〜１１−３に書き戻す制御が行われる。
訂正の必要がないときには、バンク１１−０〜１１−３の書き込み動作を行わないように制御される。
この条件の参照先は、ＥＣＣ回路１３の訂正ビット数信号であり、この訂正ビット数が０以外のときにバンク１１−０〜１１−３に書き戻す制御が行われる。
誤りが多くて訂正しきれない場合や、ＥＣＣ回路１３が誤った訂正を行った場合でも、訂正ビット数のみを参照して、バンク１１−０〜１１−３に書き込みを行う。
また、コマンド信号は、図９に示すように、バンク１１−０と１１−１の第１セット、バンク１１−２と１１−３の第２セットで共通になっており、一方のセットに訂正ビットがあり、他方に訂正ビットがなかったとしても、両セットに対して書き込みを行う。
この訂正ビット数信号は、たとえばテスト回路１４で判別されて、上記のような制御が行われる。
【００３７】
図１０は、テスト回路１４の具体的な構成を示す機能ブロック図である。
テスト回路１４は、図１０に示すように、アドレスＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）１４１、データＦＩＦＯ１４２，１４３、エラーステータス部１４４、セレクタ１４５〜１４７を有している。
【００３８】
アドレスＦＩＦＯ１４１は、ＡＬＰＧ１２による信号ｉｏｒおよび信号ｅｓを受けて、ＡＬＰＧ１２によるアドレスデータを保持して、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３に供給する。
データＦＩＦＯ１４２は、ＡＬＰＧ１２による信号ｏ ｓｔａｒｔを受けて、ＥＣＣ回路１３によるデータを保持し、信号ｉｏｒを受けてバンク１１−０および１１−１に保持データを供給する。
データＦＩＦＯ１４３は、ＡＬＰＧ１２による信号ｏ ｓｔａｒｔを受けて、ＥＣＣ回路１３によるデータを保持し、信号ｉｏｒを受けてバンク１１−２および１１−３に保持データを供給する。
エラーステータス部１４４は、ＥＣＣ回路１３によるエラーステータス情報を受けて、信号ｅｃｃｓｔｓとしてシステムブロック１５に出力する。
セレクタ１４５は、ＡＬＰＧ１２によるセレクト信号に基づいてバンク１１−０の読み出しデータまたはバンク１１−１の読み出しデータをＥＣＣ回路１３に選択的に入力させる。
セレクタ１４６は、ＡＬＰＧ１２によるセレクト信号に基づいてバンク１１−２の読み出しデータまたはバンク１１−３の読み出しデータをＥＣＣ回路１３に選択的に入力させる。
セレクタ１４７は、ＡＬＰＧ１２によるセレクト信号に基づいてＡＬＰＧ１２によるコマンドをバンク１１−０，１１−２、またはバンク１１−１，１１−３に選択的に供給する。
【００３９】
システムブロック１５は、装置全体の制御を行い、ＥＣＣ動作モードにおいて、図１１（Ａ）〜（Ｆ）に示すように、モードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎをテスト回路１４を通してＡＬＰＧ１２およびＥＣＣ回路１３に出力する。
システムブロック１５は、まず、パリティ生成モードにおいてパリティ生成を行わせるためにモードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎをテスト回路１４を通してＡＬＰＧ１２およびＥＣＣ回路１３に出力する。
システムブロック１５は、パリティ生成モードが終了した後に、スタンバイ信号ＳＴＢＹ、スタンバイクロックＳＣＬＫに基づいてデータ保持のためのスタンバイリフレッシュをＤＲＡＭ回路１１に対して行う。
システムブロック１５は、スタンバイリフレッシュを終了させた後、不良ビットの訂正を行うエラー訂正モード動作を行わせるために、モードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎをテスト回路１４を通してＡＬＰＧ１２およびＥＣＣ回路１３に出力する。  システムブロック１５は、エラー訂正モードが終了すると、通常モードとなり、たとえばバス１６を通しての通常のメモリアクセス制御等を行う。
【００４０】
次に、上記構成によるスタンバイへの導入および復帰シーケンスについて、図１２〜図１５のタイミングチャートに関連付けて説明する。
【００４１】
図１２は、パリティ生成モードにおけるパリティ生成ページサイクル開始時のタイミングチャートである。図１３は、パリティ生成モードにおけるパリティ生成ページサイクル終了時のタイミングチャートである。
図１４は、エラー訂正モードにおけるエラー訂正ページサイクル開始時のタイミングチャートである。図１５は、エラー訂正モードにおけるエラー訂正ページサイクル終了時のタイミングチャートである。
【００４２】
スタンバイへの導入：
まず、パリティ生成モードにおいてパリティ生成を行わせるために、システムブロック１５が、モードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎをテスト回路１４を通してＡＬＰＧ１２およびＥＣＣ回路１３に出力する。
【００４３】
モードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎを受けたＡＬＰＧ１２において、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３からデータを読み出して、ＥＣＣ回路１３に入力させてパリティを生成させるため、図１２および図１３に示すような、読み出しコマンドＲＤやアドレスａｙ，ｔａｙ等を所定のパターンで生成してテスト回路１４に出力する。
データ側の読み出しコマンドＲＤは１２８ビット分のデータが読み出すためのコマンドであり、バンク１１−０〜１１−３とテスト回路１４およびＥＣＣ回路１３間のデータは８ビットで転送されることから、８ビットに分けて転送するためにコマンドＲが生成される。
生成された３２ビットのパリティデータは読み出し時と同様に８ビットに分けてバンクに転送される。また、マクロへの書き込みはライト機能マスクを用いて８ビットずつ４回に分けて書き込まれる。
【００４４】
これらのコマンドやアドレスは、テスト回路１４のセレクタ１４７により選択的にＤＲＡＭ回路１１のバンク１１−０〜１１−３に供給される。
これにより、各バンク１１−０〜１１−３から実データおよびパリティデータが８ビット単位で読み出される。そして、バンク１１−０，１１−１のデータはテスト回路１４のセレクタ１４５により選択的にＥＣＣ回路１３に入力される。同様に、バンク１１−２，１１−３のデータはテスト回路１４のセレクタ１４６により選択的にＥＣＣ回路１３に入力される。
【００４５】
ＥＣＣ回路１３において、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびパリティ生成モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのパリティ生成モードにおいて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３から読み出され、テスト回路１４を通して入力されたデータを基に３２ビットのパリティビットを生成する。このパリティデータは、スタンバイモード毎のエラー訂正モードのエラー訂正処理において用いるために記憶される。
【００４６】
そして、所定時間が経過してパリティ生成モードが終了するとＡＬＰＧ１２は、終了信号ｅｎｄをテスト回路１４を介してシステムブロック１５に出力する。
【００４７】
終了信号ｅｎｄを受けたシステムブロック１５は、ＤＲＡＭスタンバイモードに入る（長時間データ保持が可能な状態になる）。
システムブロック１５は、スタンバイ信号ＳＴＢＹ、スタンバイクロックＳＣＬＫに基づいてデータ保持のためのスタンバイリフレッシュをＤＲＡＭ回路１１に対して行う。
【００４８】
スタンバイからの復帰：
次に、エラー訂正モードにおいてエラー訂正を行わせるために、システムブロック１５が、モードセレクト信号ｅｍｓｅｌおよび起動信号ｒｕｎをテスト回路１４を通してＡＬＰＧ１２およびＥＣＣ回路１３に出力する。
【００４９】
ＡＬＰＧ１２は、スタンバイモード、リフレッシュ期間後において、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびエラー訂正モードを示すモードセレクト信号ｅｍｓｅｌを受けて、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３からデータを読み出して、ＥＣＣ回路１３に入力させて不良ビットのエラー訂正を行わせ、訂正後あるいはそのままの実データをＥＣＣ回路１３から読み出して、ＤＲＡＭ回路１１の各バンク１１−０〜１１−３に対して書き込みをさせるため、図１４および図１５に示すような、読み出しコマンドＲＤ、書き込みコマンドＷやアドレスａｙ，ｔａｙ等を所定のパターンで生成してテスト回路１４に出力する。
【００５０】
これらのコマンドやアドレスは、テスト回路１４のセレクタ１４７により選択的にＤＲＡＭ回路１１のバンク１１−０〜１１−３に供給される。
また、書き込み時のアドレスはテスト回路１４のアドレスＦＩＦＯを通して各バンク１１−０〜１１−３に供給される。
これにより、各バンク１１−０〜１１−３から実データおよびパリティデータが８ビット単位で読み出される。そして、バンク１１−０，１１−１のデータはテスト回路１４のセレクタ１４５により選択的にＥＣＣ回路１３に入力される。同様に、バンク１１−２，１１−３のデータはテスト回路１４のセレクタ１４６により選択的にＥＣＣ回路１３に入力される。
【００５１】
ＥＣＣ回路１３は、テスト回路１４を介してシステムブロック１５により起動信号ｒｕｎおよびエラー訂正モードを示すセレクト信号ｅｍｓｅｌを受けて、スタンバイ状態におけるＥＣＣ動作モードのエラー訂正モードにおいて、テスト回路１４を通してＤＲＡＭ回路１１の各バンク１１−０〜１１−３から読み出されたデータを入力し、パリティ生成モードで生成したパリティを基に不良化したデータに対してエラー訂正を行う。
そして、ＥＣＣ回路は、エラー訂正後またはエラー訂正の必要がなかった元のデータおよびパリティビットデータをテスト回路１４に出力する。これにより、エラー訂正されたデータが所定のバンク１１−０〜１１−３に書き戻される。
また、ＥＣＣ回路１３からは、エラーステイタスをテスト回路１４を通してシステムブロック１５に転送される。
【００５２】
そして、所定動作が完了してエラー訂正モードが終了するとＡＬＰＧ１２は、終了信号ｅｎｄをテスト回路１４を介してシステムブロック１５に出力する。
以上の処理を全てのデータに対して行う。
【００５３】
終了信号ｅｎｄを受けたシステムブロック１５は、通常モード（通常データ保持モード）に入る。
【００５４】
以上説明したように、本実施形態によれば、スタンバイモードに入る前に起動信号およびパリティ生成モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると、スタンバイモードにＤＲＡＭ回路１１に対するリフレッシュ動作を行った後、起動信号およびエラー訂正モードを示すモードセレクト信号を出力し、所定時間後に終了信号を受けると通常モードに入るシステムブロック１５と、起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号を受けると、モードに応じて所定のパターンをもってＤＲＡＭ回路１１に対するコマンドおよびアドレスを生成し、各モードにおけるパターン発生処理が終了すると終了信号を出力するＡＬＰＧ１２と、起動信号およびパリティ生成モードを示すモードセレクト信号を受けてＤＲＡＭ回路１１から読み出されたデータに基づいてパリティを生成し、起動信号およびエラー訂正モードを示すモードセレクト信号を受けてＤＲＡＭ回路１１から読み出されたデータに対してパリティ生成モードにおいて生成したパリティに基づいてエラー訂正処理を行い、エラー訂正後のデータを出力するＥＣＣ回路１３と、システムブロック１５による起動信号およびパリティ生成モードを示すモードセレクト信号、並びに、起動信号およびエラー訂正モードを示すモードセレクト信号をＡＬＰＧ１２およびＥＣＣ回路１３に入力させ、ＡＬＰＧ１２によるコマンドおよびアドレスをＤＲＡＭ回路１１に与えて、ＤＲＡＭ回路１１から読み出されたデータをＥＣＣ回路１３に入力させ、ＥＣＣ回路１３によるエラー訂正モード処理後のデータをＤＲＡＭ回路に出力するテスト回路１４を有することから、以下の効果を得ることができる。
【００５５】
ＤＲＡＭのスタンバイ状態におけるデータ保持特性を改善することが可能となる。
また、内部に混載するＤＲＡＭパターン発生回路としてのＡＬＰＧ１２によってコントロールすることにより、システムブロック１５からは起動信号のみを発生するだけで、パリティーデータの生成およびデータ訂正の一連の動作が完結可能なシステムを実現でき、システム全体をコントロールするシステムブロック１５の負荷を軽減することが可能となる。
また、パターン発生回路であるＡＬＰＧ１２は、DRAM  BIST(Built In Self Test)回路であることからシステムに搭載する余計な回路を減らし、システムを最適化することが可能となる。また、BIST回路を用いることにより、ＤＲＡＭへのアクセスに対する制約がなくなるため、効率の良いデータの転送が可能となる。
また、ＡＬＰＧ１２が、内部にプログラム保持用メモリを持つことから起動信号のみを与えることにより、規定されたパターン（コマンド群）を発生することが可能となる。またこの規定パターンを変更する際は、メモリの内容を変更するだけで容易に変更が可能となる。
また、スタンバイ状態におけるリフレッシュ周期設定回路は、eDRAM システムに内蔵せずに外部メモリコントローラより行うことができ、これによりスタンバイ状態のリフレッシュ周期は周囲の環境（Chip温度など）を考慮に入れた最適な値に設定を変更することが可能となる。
【００５６】
また、パリティビットはメモリ領域の一部を使用して保持することから、スタンバイ導入時にデータをスワップさせることによりパリティー領域を確保することができ、またパリティー領域は別バンクもしくは別ブロックに保持することにより、実データとパリティデータ転送時に効率的なデータ転送が可能になる。
また、ＢＩＳＴ回路を用いた制御であるため、メモリの情報を書き換えることにより、実データとパリティデータ領域を自由に設定することが可能となる利点がある。
また、ＢＩＳＴ回路を用いた制御であるため、生産時の品質テストにおけるＥＣＣシステムの故障検出率を向上させることが可能となる。
【００５７】
以上のように、この発明を用いることにより、スタンバイ時のＤＲＡＭリフレッシュサイクルを大幅に延ばすことが可能となり、これによる消費電力を下げる効果が、回路規模の増大を最小限にしながら達成することが可能となる。
【図面の簡単な説明】
【００５８】
【図１】本発明に係る半導体装置の一実施形態を示すシステム構成図である。
【図２】本実施形態に係るＤＲＡＭのデータ領域とパリティ領域の割り付け例を示す図である。
【図３】２つのマクロをセットにして実データとパリティデータの一記憶方法を説明するための図である。
【図４】本実施形態におけるバンク１１−０のデータアドレスとパリティアドレスの対応関係を示す図である。
【図５】本実施形態におけるバンク１１−１のデータアドレスとパリティアドレスの対応関係を示す図である。
【図６】本実施形態におけるバンク１１−０〜１１−３のアドレスの開始位置と終了位置を示す図である。
【図７】本実施形態に係るＤＲＡＭ回路を適用することによる効果を説明するための図である。
【図８】本実施形態に係るＤＲＡＭパターン発生回路としてＡＬＰＧの具体的な構成例を示すブロック図である。
【図９】エラー訂正時のデータの書き戻し制御を説明するための図である。
【図１０】本実施形態に係るテスト回路の具体的な構成を示す機能ブロック図である。
【図１１】本実施形態に係るシステムブロックのＥＣＣ動作モードにおける制御動作を説明するための図である。
【図１２】パリティ生成モードにおけるパリティ生成ページサイクル開始時のタイミングチャートである。
【図１３】パリティ生成モードにおけるパリティ生成ページサイクル終了時のタイミングチャートである。
【図１４】エラー訂正モードにおけるエラー訂正ページサイクル開始時のタイミングチャートである。
【図１５】エラー訂正モードにおけるエラー訂正ページサイクル終了時のタイミングチャートである。
【符号の説明】
【００５９】
１０…半導体装置、１１…ＤＲＡＭ回路、１１−０〜１１−３…バンク、１２…パターン発生回路としてのアルゴリズムパターン生成器（ＡＬＰＧ）、１２１…命令記憶部、１２２…記憶命令読出制御部、１２３…発生パターン演算部、１３…ＥＣＣ回路、１４…テスト回路、１４１…アドレスＦＩＦＯ、１４２，１４３…データＦＩＦＯ、１４４…エラーステータス部、１４５〜１４７…セレクタ、１５…システムブロック、１６〜１８…バス、２０…メモリテスタ。
【図１】
2005302250.tif 000003
【図２】
2005302250.tif 000004
【図３】
2005302250.tif 000005
【図４】
2005302250.tif 000006
【図５】
2005302250.tif 000007
【図６】
2005302250.tif 000008
【図７】
2005302250.tif 000009
【図８】
2005302250.tif 000010
【図９】
2005302250.tif 000011
【図１０】
2005302250.tif 000012
【図１１】
2005302250.tif 000013
【図１２】
2005302250.tif 000014
【図１３】
2005302250.tif 000015
【図１４】
2005302250.tif 000016
【図１５】
2005302250.tif 000017