(57)【要約】【課題】信頼性の向上が実現可能な半導体装置を提供する。【解決手段】データ領域ＤＡＲは、ＤＲＡＭメモリセルを含み、メモリアドレス毎のデータを記憶する。符号領域ＰＡＲは、メモリアドレスに応じてデータ領域ＤＡＲと共にアクセスされ、データ領域ＤＡＲのデータに対して生成される誤り訂正符号を記憶する。ロウアドレスカウンタＲＡＣＵＮＴは、リフレッシュコマンドを受けた際に、リフレッシュ対象のロウアドレスを定め、カラムアドレスカウンタＣＡＣＵＮＴは、当該リフレッシュ対象のロウアドレスにおける読み出し対象のカラムアドレスを定める。誤り訂正回路ＥＤＡＣは、ロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレスから読み出されたデータの誤りを訂正する。【選択図】図１
2020071589.tif 000002
【特許請求の範囲】
【請求項１】
メモリアドレスの一部であるロウアドレスで選択されるワード線と、メモリアドレスの他の一部であるカラムアドレスで選択されるビット線と、前記ワード線と前記ビット線の交点に配置されるＤＲＡＭメモリセルとを含み、前記メモリアドレス毎のデータを記憶するデータ領域と、
前記メモリアドレスに応じて前記データ領域と共にアクセスされ、前記データ領域のデータに対して生成される誤り訂正符号を記憶する符号領域と、
前記メモリアドレスにデータを書き込む際に前記符号領域に書き込む前記誤り訂正符号を生成し、前記メモリアドレスからデータを読み出す際に前記符号領域から読み出された前記誤り訂正符号を用いて当該データの誤りを訂正する誤り訂正回路と、
リフレッシュコマンドを受けた際に、リフレッシュ対象の前記ロウアドレスを定めるロウアドレスカウンタと、
前記リフレッシュコマンドを受けた際に、前記リフレッシュ対象の前記ロウアドレスにおける読み出し対象の前記カラムアドレスを定めるカラムアドレスカウンタと、
を有し、
前記誤り訂正回路は、前記ロウアドレスカウンタおよび前記カラムアドレスカウンタに基づくリフレッシュ対象アドレスから読み出されたデータの誤りを訂正する、
半導体装置。
【請求項２】
請求項１記載の半導体装置において、さらに、
前記データ領域内の前記ＤＲＡＭメモリセルに置き換わる置換用セルを含んだ冗長領域と、
指定されたＤＲＡＭメモリセルの置換命令に応じて、当該ＤＲＡＭメモリセルを前記冗長領域内の前記置換用セルに置き換える置換回路と、
前記誤り訂正回路が前記リフレッシュ対象アドレスから読み出されたデータの誤りを訂正した場合に、当該誤り訂正の対象であるＤＲＡＭメモリセルの前記置換命令を前記置換回路へ発行するシーケンス制御回路と、
を有する、
半導体装置。
【請求項３】
請求項２記載の半導体装置において、
前記誤り訂正回路は、前記リフレッシュ対象アドレスにおける誤り訂正後のデータを保持するバッファを備え、書き戻し命令に応じて前記バッファに保持されるデータを前記リフレッシュ対象アドレスへ書き戻し、
前記シーケンス制御回路は、前記置換回路へ前記置換命令を発行したのち、前記誤り訂正回路へ前記書き戻し命令を発行する、
半導体装置。
【請求項４】
請求項３記載の半導体装置において、
さらに、指定されたメモリアドレスのテスト命令に応じて、当該メモリアドレスへのテストデータの書き込みおよび読み出しを行うことで当該メモリアドレスのパス／フェイルを判定するメモリＢＩＳＴ（Built In Self Test）回路を有し、
前記シーケンス制御回路は、
前記誤り訂正回路が前記リフレッシュ対象アドレスから読み出されたデータの誤りを訂正した場合に、前記置換回路へ前記置換命令を発行する前に前記メモリＢＩＳＴ回路へ前記リフレッシュ対象アドレスの前記テスト命令を発行し、
前記メモリＢＩＳＴ回路のテスト結果が前記フェイルの場合には、前記置換回路へ前記置換命令を発行したのち、前記誤り訂正回路へ前記書き戻し命令を発行し、
前記メモリＢＩＳＴ回路のテスト結果が前記パスの場合には、前記置換回路へ前記置換命令を発行せずに、前記誤り訂正回路へ前記書き戻し命令を発行する、
半導体装置。
【請求項５】
請求項４記載の半導体装置において、
前記メモリＢＩＳＴ回路は、さらに、ホストからアイドル通知を受けた際に、読み出しアドレスを順次変更しながら読み出しコマンドを発行し、
前記シーケンス制御回路は、前記誤り訂正回路が前記読み出しアドレスから読み出されたデータの誤りを訂正した場合に、前記置換回路へ前記置換命令を発行する前に前記メモリＢＩＳＴ回路へ前記読み出しアドレスの前記テスト命令を発行する、
半導体装置。
【請求項６】
請求項２記載の半導体装置において、
さらに、ホストからアイドル通知を受けた際に、読み出しアドレスを順次変更しながら読み出しコマンドを発行するコマンドアドレス生成回路を有し、
前記シーケンス制御回路は、前記誤り訂正回路が前記読み出しアドレスから読み出されたデータの誤りを訂正した場合に、当該誤り訂正の対象であるＤＲＡＭメモリセルの前記置換命令を前記置換回路へ発行する、
半導体装置。
【請求項７】
請求項１記載の半導体装置において、
さらに、前記リフレッシュコマンドを、前記リフレッシュ対象アドレスを読み出しアドレスとする読み出しコマンドに変換するコマンド変換回路を有する、
半導体装置。
【請求項８】
請求項７記載の半導体装置において、
前記データ領域および前記符号領域は、単数または複数のメモリチップに実装され、
前記誤り訂正回路、前記ロウアドレスカウンタ、前記カラムアドレスカウンタおよび前記コマンド変換回路は、ホストと前記単数または複数のメモリチップとの間のインタフェースを担うロジックチップに実装される、
半導体装置。
【請求項９】
請求項１記載の半導体装置において、
前記ロウアドレスカウンタは、前記リフレッシュコマンドを受ける毎にカウント動作を行い、
前記カラムアドレスカウンタは、前記ロウアドレスカウンタが一巡する毎にカウント動作を行う、
半導体装置。
【請求項１０】
ロジックチップと、
前記ロジックチップに順次積層搭載され、貫通ビアを介して前記ロジックチップと接続される複数のメモリチップと、
を有する半導体装置であって、
前記複数のメモリチップは、
メモリアドレスの一部であるロウアドレスで選択されるワード線と、前記メモリアドレスの他の一部であるカラムアドレスで選択されるビット線と、前記ワード線と前記ビット線の交点に配置されるＤＲＡＭメモリセルとを含み、前記メモリアドレス毎のデータを記憶するデータ領域と、
前記メモリアドレスに応じて前記データ領域と共にアクセスされ、前記データ領域のデータに対して生成される誤り訂正符号を記憶する符号領域と、
を有し、
前記ロジックチップは、
前記メモリアドレスにデータを書き込む際に前記符号領域に書き込む前記誤り訂正符号を生成し、前記メモリアドレスからデータを読み出す際に前記符号領域から読み出された前記誤り訂正符号を用いて当該データの誤りを訂正する誤り訂正回路と、
リフレッシュコマンドを受けた際に、リフレッシュ対象の前記ロウアドレスを定めるロウアドレスカウンタと、
前記リフレッシュコマンドを受けた際に、前記リフレッシュ対象の前記ロウアドレスにおける読み出し対象のカラムアドレスを定めるカラムアドレスカウンタと、
を有し、
前記誤り訂正回路は、前記ロウアドレスカウンタおよび前記カラムアドレスカウンタに基づくリフレッシュ対象アドレスから読み出されたデータの誤りを訂正する、
半導体装置。
【請求項１１】
請求項１０記載の半導体装置において、
前記複数のメモリチップは、さらに、前記データ領域の前記ＤＲＡＭメモリセルに置き換わる置換用セルを含んだ冗長領域を有し、
前記ロジックチップは、さらに、
指定されたＤＲＡＭメモリセルの置換命令に応じて、当該ＤＲＡＭメモリセルを前記冗長領域内の前記置換用セルに置き換える置換回路と、
前記誤り訂正回路が前記リフレッシュ対象アドレスから読み出されたデータの誤りを訂正した場合に、当該誤り訂正の対象であるＤＲＡＭメモリセルの前記置換命令を前記置換回路へ発行するシーケンス制御回路と、
を有する、
半導体装置。
【請求項１２】
請求項１１記載の半導体装置において、
前記誤り訂正回路は、前記リフレッシュ対象アドレスにおける誤り訂正後のデータを保持するバッファを備え、書き戻し命令に応じて前記バッファに保持されるデータを前記リフレッシュ対象アドレスへ書き戻し、
前記シーケンス制御回路は、前記置換回路へ前記置換命令を発行したのち、前記誤り訂正回路へ前記書き戻し命令を発行する、
半導体装置。
【請求項１３】
請求項１０記載の半導体装置において、
前記ロジックチップは、さらに、前記リフレッシュコマンドを、前記リフレッシュ対象アドレスを読み出しアドレスとする読み出しコマンドに変換するコマンド変換回路を有する、
半導体装置。
【請求項１４】
請求項１０記載の半導体装置において、
前記ロウアドレスカウンタは、前記リフレッシュコマンドを受ける毎にカウント動作を行い、
前記カラムアドレスカウンタは、前記ロウアドレスカウンタが一巡する毎にカウント動作を行う、
半導体装置。
【請求項１５】
メモリアドレスの一部であるロウアドレスで選択されるワード線と、前記メモリアドレスの他の一部であるカラムアドレスで選択されるビット線と、前記ワード線と前記ビット線の交点に配置されるＤＲＡＭメモリセルとを含み、前記メモリアドレス毎のデータを記憶するデータ領域と、
前記メモリアドレスに応じて前記データ領域と共にアクセスされ、前記データ領域のデータに対して生成される誤り訂正符号を記憶する符号領域と、
前記メモリアドレスにデータを書き込む際に前記符号領域に書き込む前記誤り訂正符号を生成し、前記メモリアドレスからデータを読み出す際に前記符号領域から読み出された前記誤り訂正符号を用いて当該データの誤りを訂正する誤り訂正回路と、
ホストからアイドル通知を受けた際に、読み出しアドレスを順次変更しながら読み出しコマンドを発行するコマンドアドレス生成回路と、
を有し、
前記誤り訂正回路は、前記読み出しコマンドに応じて前記読み出しアドレスから読み出されたデータの誤りを訂正する、
半導体装置。
【請求項１６】
請求項１５記載の半導体装置において、さらに、
前記データ領域の前記ＤＲＡＭメモリセルに置き換わる置換用セルを含んだ冗長領域と、
指定されたＤＲＡＭメモリセルの置換命令に応じて、当該ＤＲＡＭメモリセルを前記冗長領域内の前記置換用セルに置き換える置換回路と、
前記誤り訂正回路が前記読み出しアドレスから読み出されたデータの誤りを訂正した場合に、当該誤り訂正の対象であるＤＲＡＭメモリセルの前記置換命令を前記置換回路へ発行するシーケンス制御回路と、
を有する、
半導体装置。
【請求項１７】
請求項１６記載の半導体装置において、
前記誤り訂正回路は、前記読み出しアドレスにおける誤り訂正後のデータを保持するバッファを備え、書き戻し命令に応じて前記バッファに保持されるデータを前記読み出しアドレスへ書き戻し、
前記シーケンス制御回路は、前記置換回路へ前記置換命令を発行したのち、前記誤り訂正回路へ前記書き戻し命令を発行する、
半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、例えば、ＤＲＡＭ（Dynamic Random Access Memory）を含む半導体装置のエラー訂正技術に関する。
【背景技術】
【０００２】
特許文献１には、メモリのコードワードにおける誤りを訂正する方式が示される。具体的には、誤り検出訂正エンジンは、コードワードにおける１ビット誤りを訂正し、その誤り訂正情報をキャッシュに格納する。誤り検出訂正エンジンは、その後に当該コードワードで新たに１ビット誤りが生じた場合に、キャッシュ内の誤り訂正情報を用いて当該新たな１ビット誤りを訂正する。また、永久修復アルゴリズムは、キャッシュ内の誤り訂正情報を用いて、メモリ内の誤りを有するワードを誤り訂正されたワードに置換する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１０−５１２６０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、高信頼化が求められるネットワーク機器やサーバー機器等では、ＥＣＣ（Error Checking and Correction）機能を搭載したメモリが用いられる。ＥＣＣ機能は、データに検査ビットを加えることで１ビット誤りの訂正と、２ビット誤りの検出を行う。一方、ネットワーク機器等では、広帯域化などを図れるＨＢＭ（High Bandwidth Memory）と呼ばれるメモリが着目されている。ＨＢＭは、ロジックチップとＤＲＡＭチップとを積層搭載することで構成され、ＥＣＣ機能も搭載可能となっている。
【０００５】
ここで、仮に、ＥＣＣ機能を搭載したＨＢＭに特許文献１のような方式を適用すると、ＥＣＣ機能によって、同一メモリアドレスで時間差を経て生じた２ビット誤りを訂正できる。ただし、当該方式では、ＥＣＣ機能を用いた誤り訂正能力は、読み出しアクセスの頻度等に依存する。すなわち、例えば、あるメモリアドレスに対して所定の期間を挟んで２回の読み出しアクセスが行われた場合、当該期間が短かければ訂正可能であった誤り（１ビット誤り）が、当該期間に長くなることによって訂正不可能な誤り（２ビット誤り）に変わる恐れがある。その結果、メモリの高信頼化を十分に図れない恐れがある。
【０００６】
後述する実施の形態は、このようなことに鑑みてなされたものであり、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
一実施の形態による半導体装置は、データ領域と、符号領域と、誤り訂正回路と、ロウアドレスカウンタと、カラムアドレスカウンタとを有する。データ領域は、メモリアドレスの一部であるロウアドレスで選択されるワード線と、メモリアドレスの他の一部であるカラムアドレスで選択されるビット線と、ワード線とビット線の交点に配置されるＤＲＡＭメモリセルとを含み、メモリアドレス毎のデータを記憶する。符号領域は、メモリアドレスに応じてデータ領域と共にアクセスされ、データ領域のデータに対して生成される誤り訂正符号を記憶する。誤り訂正回路は、メモリアドレスにデータを書き込む際に符号領域に書き込む誤り訂正符号を生成し、メモリアドレスからデータを読み出す際に符号領域から読み出された誤り訂正符号を用いて当該データの誤りを訂正する。ロウアドレスカウンタは、リフレッシュコマンドを受けた際に、リフレッシュ対象のロウアドレスを定める。カラムアドレスカウンタは、リフレッシュコマンドを受けた際に、リフレッシュ対象のロウアドレスにおける読み出し対象のカラムアドレスを定める。ここで、誤り訂正回路は、ロウアドレスカウンタおよびカラムアドレスカウンタに基づくリフレッシュ対象アドレスから読み出されたデータの誤りを訂正する。
【発明の効果】
【０００８】
前記一実施の形態によれば、ＤＲＡＭを含む半導体装置において、信頼性の向上が実現可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１による半導体装置の構成例を示す概略図である。
【図２】図１のメモリチップにおけるメモリアレイ周りの模式的（論理的）な構成例を示す回路図である。
【図３】（ａ）、（ｂ）および（ｃ）は、図１のロジックチップにおける誤り訂正回路の動作例を説明する図である。
【図４】図１の半導体装置の動作例を説明する概略図である。
【図５】図１の半導体装置における概略的な実装構造の一例を示す断面図である。
【図６】本発明の実施の形態２による半導体装置の構成例を示す概略図である。
【図７】図６の半導体装置の動作例を説明する概略図である。
【図８】本発明の実施の形態３による半導体装置の構成例を示す概略図である。
【図９】図８の半導体装置の動作例を説明する概略図である。
【図１０】本発明の実施の形態４による半導体装置において、図１を変形した構成例を示す概略図である。
【図１１】本発明の実施の形態４による半導体装置において、図１を変形した構成例を示す概略図である。
【図１２】本発明の比較例として検討した半導体装置の構成例を示す概略図である。
【発明を実施するための形態】
【００１０】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１１】
さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１２】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１３】
（実施の形態１）
《半導体装置の構成》
図１は、本発明の実施の形態１による半導体装置の構成例を示す概略図である。図２は、図１のメモリチップにおけるメモリアレイ周りの模式的（論理的）な構成例を示す回路図である。図３（ａ）、図３（ｂ）および図３（ｃ）は、図１のロジックチップにおける誤り訂正回路の動作例を説明する図である。図１に示す半導体装置ＤＥＶａは、複数（この例では４個）のメモリチップＭＣＰ［１］〜ＭＣＰ［４］と、ロジックチップＬＣＰとを備える。ただし、メモリチップは、複数に限らず単数であってもよい。
【００１４】
明細書では、複数のメモリチップＭＣＰ［１］〜ＭＣＰ［４］を総称して、メモリチップＭＣＰと呼ぶ。メモリチップＭＣＰは、メモリアレイＭＡと、冗長領域ＲＡＲと、置換情報保持回路ＲＰＩＭｍとを備える。メモリアレイＭＡは、図２に示されるように、ロウアドレスＲＡで選択されるワード線（ＷＬ［０］〜ＷＬ［ｎ］）と、カラムアドレスＣＡで選択されるビット線（ＢＬ［０］〜ＢＬ［ｍ］）と、ワード線とビット線の交点に配置されるＤＲＡＭメモリセルＭＣとを含む。ロウアドレスＲＡは、メモリアドレスの一部であり、カラムアドレスＣＡは、メモリアドレスの他の一部である。
【００１５】
明細書では、複数のワード線ＷＬ［０］〜ＷＬ［ｎ］を総称してワード線ＷＬと呼び、複数のビット線ＢＬ［０］〜ＢＬ［ｍ］を総称してビット線ＢＬと呼ぶ。ワード線ＷＬは、ワードドライバＷＤによって駆動される。ロウデコーダＲＤＥＣは、ロウアドレスＲＡに基づいて、ワードドライバＷＤを介して複数のワード線ＷＬ［０］〜ＷＬ［ｎ］のいずれか１本を選択（活性化）する。ＤＲＡＭメモリセルＭＣは、記憶素子となる容量Ｃｓと、対応するワード線ＷＬの活性化に応じて、対応するビット線ＢＬと容量Ｃｓとを導通させるメモリセルトランジスタＭＳとを有する。
【００１６】
このようなＤＲＡＭメモリセルＭＣによって、メモリアレイＭＡには、メモリアドレス毎の複数（ｊ＋１）ビットのデータＩＯ［０］〜ＩＯ［ｊ］を記憶するデータ領域ＤＡＲと、メモリアドレス毎の複数（ｋ＋１）ビットの誤り訂正符号Ｐ［０］〜Ｐ［ｋ］を記憶する符号領域ＰＡＲとが設けられる。複数のビット線ＢＬ［０］〜ＢＬ［ｍ］は、当該データＩＯ［０］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］の各ビット毎に設けられる。
【００１７】
例えば、データＩＯ［０］を例として、複数のビット線ＢＬ［０］〜ＢＬ［ｍ］のそれぞれは、センスアンプＳＡおよびカラムスイッチＹＳを介してデータ（詳細にはデータ線）ＩＯ［０］に結合される。カラムデコーダＣＤＥＣは、カラムアドレスＣＡに基づいて、複数のカラムスイッチＹＳのいずれか１個をオンに制御することで、複数のビット線ＢＬ［０］〜ＢＬ［ｍ］のいずれか１本を選択してデータ（データ線）ＩＯ［０］に結合する。データＩＯ［１］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］の各ビットに関しても当該データＩＯ［０］の場合と同様である。
【００１８】
ここで、ロウアドレスＲＡに応じてワード線ＷＬ［０］が選択され、カラムアドレスＣＡに応じてビット線ＢＬ［０］が選択された場合を想定する。この場合、データ領域ＤＡＲでは、“ｊ＋１”本のビット線ＢＬ［０］が選択され、符号領域ＰＡＲでは、“ｋ＋１”本のビット線ＢＬ［０］が選択される。データ領域ＤＡＲでは、ワード線ＷＬ［０］と“ｊ＋１”本のビット線ＢＬ［０］の交点に位置する“ｊ＋１”個のＤＲＡＭメモリセルＭＣが、それぞれ、“ｊ＋１”ビットのデータＩＯ［０］〜ＩＯ［ｊ］に結合される。これと並行して、符号領域ＰＡＲでは、ワード線ＷＬ［０］と“ｋ＋１”本のビット線ＢＬ［０］の交点に位置する“ｋ＋１”個のＤＲＡＭメモリセルＭＣが、それぞれ、“ｋ＋１”ビットの誤り訂正符号Ｐ［０］〜Ｐ［ｋ］に結合される。
【００１９】
このように、符号領域ＰＡＲは、メモリアドレスに応じてデータ領域ＤＡＲと共にアクセスされる。そして、符号領域ＰＡＲは、メモリアドレス毎に、データ領域ＤＡＲのデータＩＯ［０］〜ＩＯ［ｊ］に対して生成される誤り訂正符号Ｐ［０］〜Ｐ［ｋ］を記憶する。誤り訂正符号Ｐ［０］〜Ｐ［ｋ］は、例えば、ＥＣＣなどである。この場合、データのビット数をＮとすると、誤り訂正符号のビット数は、通常、“ｌｏｇ２Ｎ＋２”に定められる。なお、ここでは、メモリアレイＭＡ周りの模式的（論理的）な構成例を示したが、実際の物理的な構成は、各種設計思想などに応じて適宜異なり得る。
【００２０】
図１のメモリチップＭＣＰにおいて、冗長領域ＲＡＲは、図２に示したデータ領域ＤＡＲ（または符号領域ＰＡＲ）内のＤＲＡＭメモリセルＭＣに置き換わる置換用セルを含む。置換情報保持回路ＲＰＩＭｍは、データ領域ＤＡＲ（または符号領域ＰＡＲ）のＤＲＡＭメモリセルＭＣを置換用セルに置き換える場合に、当該置き換えを行うために必要とされる各種置換情報を保持する。冗長領域ＲＡＲは、例えば、スペアのビット線ＢＬおよびＤＲＡＭメモリセルＭＣを設ける方式や、スペアのワード線ＷＬおよびＤＲＡＭメモリセルＭＣを設ける方式等を代表に、様々な方式で実装され得る。また、冗長領域ＲＡＲは、場合によっては、ロジックチップＬＣＰ内に搭載されてもよい。
【００２１】
ロジックチップＬＣＰは、ホストＨＳＴとメモリチップＭＣＰとの間のインタフェースを担う。ホストＨＳＴは、メモリチップＭＣＰに対してアクセスを行うＣＰＵ（Central Processing Unit）や、ＧＰＵ（Graphics Processing Unit）や、ＳｏＣ（System on a Chip）等である。ロジックチップＬＣＰは、メモリインタフェースＭＩＦと、ホストインタフェースＨＩＦと、誤り訂正回路ＥＤＡＣと、コマンド変換回路ＣＭＤＣと、ロウアドレスカウンタＲＡＣＵＮＴと、カラムアドレスカウンタＣＡＣＵＮＴと、置換判定回路ＲＰＪＣと、シーケンス制御回路ＳＱＣとを備える。
【００２２】
メモリインタフェースＭＩＦおよびホストインタフェースＨＩＦは、それぞれ、メモリチップＭＣＰおよびホストＨＳＴとの間で各種信号を送信または受信する。誤り訂正回路ＥＤＡＣは、データ領域ＤＡＲのメモリアドレスにデータＩＯ［０］〜ＩＯ［ｊ］を書き込む際に符号領域ＰＡＲに書き込む誤り訂正符号Ｐ［０］〜Ｐ［ｋ］を生成する。また、誤り訂正回路ＥＤＡＣは、データ領域ＤＡＲのメモリアドレスからデータＩＯ［０］〜ＩＯ［ｊ］を読み出す際に符号領域ＰＡＲから読み出された誤り訂正符号Ｐ［０］〜Ｐ［ｋ］を用いて当該データＩＯ［０］〜ＩＯ［ｊ］の誤りを訂正する。誤り訂正回路ＥＤＡＣは、誤り訂正を行った場合、誤り訂正後のデータをバッファＢＵＦに保持する。
【００２３】
誤り訂正回路ＥＤＡＣは、図３（ｂ）に示されるように、データ領域ＤＡＲから読み出された“ｊ＋１”ビットのデータＩＯ［０］〜ＩＯ［ｊ］内の１ビットに誤りが生じた場合、符号領域ＰＡＲから読み出された“ｋ＋１”ビットの誤り訂正符号（例えば、ＥＣＣ）Ｐ［０］〜Ｐ［ｋ］を用いて当該１ビット誤りを訂正する。一方、誤り訂正回路ＥＤＡＣは、図３（ｃ）に示されるように、データ領域ＤＡＲから読み出された“ｊ＋１”ビットのデータＩＯ［０］〜ＩＯ［ｊ］内の２ビットに誤りが生じた場合、誤りが生じたことを検出することは可能であるが、誤りを訂正することは不可能である。この場合、誤り訂正回路ＥＤＡＣは、例えば、ホストＨＳＴへその旨の通知を行う。
【００２４】
図１において、ロウアドレスカウンタＲＡＣＵＮＴは、ホストＨＳＴからのリフレッシュコマンドを受けた際に、リフレッシュ対象のロウアドレスＲＡを定める。具体的には、ロウアドレスカウンタＲＡＣＵＮＴは、例えば、リフレッシュコマンドを受ける毎にカウント動作を行うことでリフレッシュ対象のロウアドレスＲＡを更新する。カラムアドレスカウンタＣＡＣＵＮＴは、リフレッシュコマンドを受けた際に、ロウアドレスカウンタＲＡＣＵＮＴのロウアドレスＲＡ（リフレッシュ対象のロウアドレス）における読み出し対象のカラムアドレスＣＡを定める。この際に、カラムアドレスカウンタＣＡＣＵＮＴは、例えば、ロウアドレスカウンタＲＡＣＵＮＴが一巡する毎にカウント動作を行うことで読み出し対象のカラムアドレスＣＡを更新する。
【００２５】
コマンド変換回路ＣＭＤＣは、ホストＨＳＴからのリフレッシュコマンドを、ロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレス（すなわちロウアドレスＲＡおよびカラムアドレスＣＡ）を読み出しアドレスとする読み出しコマンドに変換する。これにより、誤り訂正回路ＥＤＡＣは、メモリチップＭＣＰにおけるリフレッシュ対象アドレスから読み出されたデータの誤りを訂正することができる。なお、この場合、当該リフレッシュ対象アドレスから読み出されたデータは、ホストＨＳＴへ出力されないように制御される。
【００２６】
置換判定回路ＲＰＪＣは、置換情報保持回路ＲＰＩＭｌを含み、メモリチップＭＣＰ内の置換情報保持回路ＲＰＩＭｍと共に置換回路を構成する。置換回路は、指定されたＤＲＡＭメモリセルＭＣの置換命令に応じて、当該ＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換える。この際に、置換判定回路ＲＰＪＣは、置換用セルの数および実装方式等を反映した規定のアルゴリズムを用いて、指定されたＤＲＡＭメモリセルＭＣを置換用セルに置き換え可能か否かを判定する。
【００２７】
置換判定回路ＲＰＪＣは、置き換え可能と判定した場合、置き換えに必要とされる所定の置換情報を生成したのち置換情報保持回路ＲＰＩＭｌに保持する。また、置換判定回路ＲＰＪＣは、例えば、メモリチップＭＣＰ［１］で必要とされる置換情報をメモリチップＭＣＰ［１］内の置換情報保持回路ＲＰＩＭｍに書き込みといったように、各メモリチップＭＣＰへの置換情報の振り分けを行う。シーケンス制御回路ＳＱＣは、ロジックチップＬＣＰ内の各回路間の通信制御や、ホストＨＳＴとの通信制御や、各回路の処理手順の制御を含めて、ロジックチップＬＣＰ全体を制御する。
【００２８】
《半導体装置の動作》
図４は、図１の半導体装置の動作例を説明する概略図である。図４では、前提として、メモリチップＭＣＰ内のデータ領域ＤＡＲおよび符号領域ＰＡＲに、それぞれ、データＩＯ［０］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］が書き込まれているものとする。具体的には、ロジックチップＬＣＰは、ホストＨＳＴからの書き込みコマンド、書き込みアドレスおよび書き込みデータを受け、誤り訂正回路ＥＤＡＣを用いて、当該書き込みデータに対する誤り訂正符号を生成する。そして、ロジックチップＬＣＰは、書き込みコマンド、書き込みアドレスおよび書き込みデータに加えて誤り訂正符号をメモリチップＭＣＰへ送信することで、メモリチップＭＣＰに書き込み動作を行わせる。
【００２９】
この前提で、ホストＨＳＴは、ロジックチップＬＣＰへ、所定のリフレッシュ間隔で定期的にリフレッシュコマンドを発行する（ステップＳ１０１）。当該リフレッシュコマンドを受け、ロウアドレスカウンタＲＡＣＵＮＴは、リフレッシュ対象のロウアドレスＲＡを定め、カラムアドレスカウンタＣＡＣＵＮＴは、読み出し対象のカラムアドレスＣＡを定める。具体的には、例えば、ロウアドレスカウンタＲＡＣＵＮＴは、リフレッシュコマンドを受ける度にロウアドレスＲＡを更新し、カラムアドレスカウンタＣＡＣＵＮＴは、ロウアドレスカウンタＲＡＣＵＮＴが一巡する毎にカラムアドレスＣＡを更新する。
【００３０】
コマンド変換回路ＣＭＤＣは、受信したリフレッシュコマンドを、ロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレスを読み出しアドレスとする読み出しコマンドに変換してメモリチップＭＣＰへ送信する（ステップＳ１０２）。これにより、図２に示したメモリアレイＭＡでは、リフレッシュ対象のロウアドレスＲＡに対応するワード線ＷＬ上の各ＤＲＡＭメモリセルＭＣが、センスアンプＳＡを介してリフレッシュされる。これに加えて、当該ワード線ＷＬ上の読み出し対象のカラムアドレスＣＡに対応するＤＲＡＭメモリセルＭＣから、データＩＯ［０］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］が読み出される（ステップＳ１０３）。
【００３１】
誤り訂正回路ＥＤＡＣは、読み出されたデータＩＯ［０］〜ＩＯ［ｊ］を誤り訂正符号Ｐ［０］〜Ｐ［ｋ］で検証する。ここで、誤り訂正回路ＥＤＡＣは、誤り訂正を行った場合（すなわち、１ビット誤りを訂正した場合）には、誤り訂正後のデータをバッファＢＵＦに保持し、訂正通知を発行する（ステップＳ１０４）。この訂正通知には、ロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレスの情報と、訂正したビットの位置情報とが含まれる。なお、誤り訂正回路ＥＤＡＣは、誤り検出のみを行った場合（すなわち、２ビット誤りを検出した場合）には、その旨をホストＨＳＴに向けて通知する。
【００３２】
置換判定回路ＲＰＪＣは、ステップＳ１０４の訂正通知を受けて、１ビット誤りが生じたＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換え可能か否かを判定し、その判定結果や誤りが生じたメモリアドレスなどを含む置換可否通知を、シーケンス制御回路ＳＱＣを介してホストＨＳＴへ発行する（ステップＳ１０５）。ホストＨＳＴは、置換可否通知が置換可能を表す場合（すなわち、リフレッシュ対象アドレスから読み出されたデータの誤りが訂正され、当該誤り訂正の対象であるＤＲＡＭメモリセルＭＣが置換可能である場合）には、必要に応じて、置換命令を発行する（ステップＳ１０６）。
【００３３】
ステップＳ１０６の置換命令（すなわち、誤り訂正の対象であるＤＲＡＭメモリセルＭＣの置換命令）は、シーケンス制御回路ＳＱＣを介して置換判定回路ＲＰＪＣに向けて発行される。一方、ホストＨＳＴは、置換命令を発行した場合には、例えば、全メモリアドレスか、場合によっては、通知されたメモリアドレスへのメモリアクセスを一定期間禁止するなどの処理を行う。
【００３４】
置換判定回路ＲＰＪＣは、シーケンス制御回路ＳＱＣからの置換命令を受けて、誤り訂正の対象であるＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換える（ステップＳ１０７）。具体的には、置換判定回路ＲＰＪＣは、例えば、ステップＳ１０５の処理に伴い生成した置換情報を、対応するメモリチップＭＣＰ内の置換情報保持回路ＲＰＩＭｍに書き込むことで置換を実行する。
【００３５】
置換が行われたのち、シーケンス制御回路ＳＱＣは、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行する（ステップＳ１０８）。誤り訂正回路ＥＤＡＣは、書き戻し命令に応じてバッファＢＵＦに保持される誤り訂正後のデータをロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレスに書き戻す（ステップＳ１０９）。このリフレッシュ対象アドレスのメモリセルには、ステップＳ１０７の処理に伴い置換用セルが含まれている。このため、誤り訂正後のデータは、正しく書き戻される。
【００３６】
なお、図１（後述する各図も同様）において、シーケンス制御回路ＳＱＣは、説明の便宜上、独立した回路ブロックとして配置されるが、例えば、誤り訂正回路ＥＤＡＣや置換判定回路ＲＰＪＣなどの内部に適宜分散する形で配置されてもよい。例えば、ステップＳ１０８の処理では、置換判定回路ＲＰＪＣ内のシーケンス制御回路ＳＱＣが、ステップＳ１０７で置換を実行したのち、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行してもよい。
【００３７】
《半導体装置の実装構造》
図５は、図１の半導体装置における概略的な実装構造の一例を示す断面図である。図５において、複数のメモリチップＭＣＰ［１］〜ＭＣＰ［４］は、ロジックチップＬＣＰに順次積層搭載され、貫通ビアＴＳＶおよびバンプＢＰを介してロジックチップＬＣＰに接続される。ロジックチップＬＣＰは、図１のホストＨＳＴを担うホストチップＨＳＴＣＰと共にインタポーザＩＮＴＰ上に搭載される。インタポーザＩＮＴＰは、ホストチップＨＳＴＣＰとロジックチップＬＣＰとの間を内部に形成された配線によって接続する。また、インタポーザＩＮＴＰは、プリント基板ＰＣＢ上に実装される。
【００３８】
このような実装構造を備える半導体装置として、ＨＢＭ等が挙げられる。例えば、ＨＢＭでは、複数のメモリチップＭＣＰ［１］〜ＭＣＰ［４］のそれぞれは、並列動作可能なチャネルを２個備える。各チャネルは、独立した複数のバンクを含み、１２８ビットのデータ（ＩＯ）アクセスを行う。その結果、ホストチップＨＳＴＣＰ（ロジックチップＬＣＰ）は、複数のメモリチップＭＣＰ［１］〜ＭＣＰ［４］に対して、貫通ビアＴＳＶを介して１０２４ビット（１２８ビット×８チャネル）のデータ（ＩＯ）アクセスを行える。
【００３９】
また、ロジックチップＬＣＰと複数のメモリチップＭＣＰ［１］〜ＭＣＰ［４］との間は、１０２４ビットのデータ（ＩＯ）幅に加えて、誤り訂正符号（ＥＣＣ）に伴う所定のビット幅で接続される。通常は、チャネル毎の１２８ビットのデータ（ＩＯ）に対して誤り訂正符号が付加される。なお、リフレッシュは、バンク毎に独立に行うことが可能となっている。この場合、図１に示したロウアドレスカウンタＲＡＣＵＮＴには、バンクアドレスも含まれる。
【００４０】
このような半導体装置を用いると、ホストチップＨＳＴＣＰは、メモリチップＭＣＰに対して広帯域なメモリアクセスを行うことが可能となる。この際に、図１に示したような構成例を用いると、リフレッシュを利用して誤り訂正を行えるため、メモリ帯域が消費されない。その結果、ＨＢＭのような広帯域メモリの特性を維持することができる。
【００４１】
《実施の形態１の主要な効果》
図１２は、本発明の比較例として検討した半導体装置の構成例を示す概略図である。図１２に示す半導体装置ＤＥＶ’は、データおよび誤り訂正符号を記憶するメインアレイＡＲＹと、その置き換え領域として設けられるリペア領域ＲＡＲＹと、誤り訂正回路ＥＤＡＣ’と、エラーキャッシュＣＣＨと、修復アルゴリズムＲＡＬとを備える。誤り訂正回路ＥＤＡＣ’は、ホストＨＳＴからの読み出しコマンドに応じてメインアレイＡＲＹから読み出されたデータを誤り訂正符号で訂正し、その誤り訂正情報をエラーキャッシュＣＣＨに格納する。
【００４２】
ここで、例えば、同一メモリアドレスに対して所定の期間を挟んで２回の読み出しアクセスが行われた場合で、読み出しアクセス毎に、異なるビットに１ビットずつの誤りが生じた場合を想定する。この場合、誤り訂正回路ＥＤＡＣ’は、エラーキャッシュＣＣＨ内の誤り訂正情報を用いて先行訂正を行うことで合計２ビットの誤りを訂正する。すなわち、誤り訂正回路ＥＤＡＣ’は、１回目の読み出しアクセス時の誤り訂正情報を保持しているため、２回目の読み出しアクセス時に生じている合計２ビットの誤りを実効的に１ビット誤りとして取り扱うことができる。
【００４３】
修復アルゴリズムＲＡＬは、適宜、エラーキャッシュＣＣＨ内の誤り訂正情報を用いて、誤りが生じたメモリアドレスに対応する記憶領域をメインアレイＡＲＹからリペア領域ＲＡＲＹに置き換える。これにより、当該メモリアドレスにおける誤りを根本的に修復することが可能になる。
【００４４】
しかし、図１２の方式では、誤り訂正回路ＥＤＡＣ’による実効的な誤り訂正能力は、読み出しアクセスの頻度等に依存することになる。具体的には、前述した２回の読み出しアクセスの間の期間が短かければ訂正可能であった誤り（１ビット誤り）が、当該期間に長くなることによって訂正不可能な誤り（２ビット誤り）に変わる恐れがある。
【００４５】
一方、実施の形態１の半導体装置を用いると、リフレッシュを利用して誤り訂正が行われるため、全メモリアドレスに対して、定期的に誤り訂正を行うことが可能になる。これにより、ホストＨＳＴからの読み出しアクセスの頻度が低い場合であっても、誤り訂正の実行間隔を所定値以下に保つことができるため、当該実行間隔が長くなることで訂正不可能な誤り（２ビット誤り）が生じるような事態を抑制することが可能になる。その結果、半導体装置の信頼性の向上が実現可能になる。さらに、リフレッシュを利用することで、メモリ帯域に影響を与えずに、全メモリアドレスに対して誤り訂正を行うことが可能になる。
【００４６】
（実施の形態２）
《半導体装置の構成および動作》
図６は、本発明の実施の形態２による半導体装置の構成例を示す概略図である。図６に示す半導体装置ＤＥＶｂでは、図１に示した構成例と比較して、ロジックチップＬＣＰ内にコマンドアドレス生成回路ＲＤＧＥＮが設けられ、これに応じて、シーケンス制御回路ＳＱＣの処理内容が若干異なっている。その他の構成および動作に関しては、図１の場合と同様である。
【００４７】
コマンドアドレス生成回路ＲＤＧＥＮは、ホストＨＳＴからアイドル通知を受けた際に、読み出しアドレスを順次変更しながら読み出しコマンドを発行する。これに応じて、誤り訂正回路ＥＤＡＣは、読み出しアドレスから読み出されたデータの誤りを訂正する。ここで、誤り訂正が行われた場合、シーケンス制御回路ＳＱＣは、当該誤り訂正の対象であるＤＲＡＭメモリセルＭＣの置換命令を置換判定回路ＲＰＪＣへ発行する。
【００４８】
図７は、図６の半導体装置の動作例を説明する概略図である。図７では、図４の場合と同様に、前提として、メモリチップＭＣＰ内のデータ領域ＤＡＲおよび符号領域ＰＡＲに、それぞれ、データＩＯ［０］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］が書き込まれているものとする。また、図６の半導体装置ＤＥＶｂは、図４に示したような動作を行うことに加えて、図７に示したような動作を行う。
【００４９】
図７において、ホストＨＳＴは、半導体装置ＤＥＶｂへメモリアクセスを行わないアイドル期間で半導体装置ＤＥＶｂへアイドル通知を発行する（ステップＳ２０１）。当該アイドル通知は、シーケンス制御回路ＳＱＣを介してコマンドアドレス生成回路ＲＤＧＥＮに向けて発行される。コマンドアドレス生成回路ＲＤＧＥＮは、当該アイドル通知に応じて、読み出しアドレスを順次変更しながら読み出しコマンドを発行することで、メモリチップＭＣＰのリードスキャンを行う（ステップＳ２０２）。
【００５０】
メモリチップＭＣＰは、読み出しコマンドに応じて、読み出しアドレスに記憶されるデータ（ＩＯ）と当該データに対する誤り訂正符号（Ｐ）とを出力する（ステップＳ２０３）。その後は、ステップＳ２０４〜Ｓ２０９において、図４のステップＳ１０４〜Ｓ１０９の場合と同様の処理が行われる。簡単に説明すると、誤り訂正回路ＥＤＡＣは、読み出されたデータの誤りを検証し、誤り訂正を行った場合には、誤り訂正後のデータをバッファＢＵＦに保持し、訂正通知を発行する（ステップＳ２０４）。
【００５１】
置換判定回路ＲＰＪＣは、ステップＳ２０４の訂正通知を受けて、誤りが生じたＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換え可能か否かを判定し、その判定結果などを含む置換可否通知を、シーケンス制御回路ＳＱＣを介してホストＨＳＴへ発行する（ステップＳ２０５）。ホストＨＳＴは、置換可否通知が置換可能を表す場合に、必要に応じて、置換命令を発行する（ステップＳ２０６）。シーケンス制御回路ＳＱＣは、当該置換命令を置換判定回路ＲＰＪＣに向けて発行する。
【００５２】
置換判定回路ＲＰＪＣは、シーケンス制御回路ＳＱＣからの置換命令を受けて、誤り訂正の対象であるＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換える（ステップＳ２０７）。その後、シーケンス制御回路ＳＱＣは、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行する（ステップＳ２０８）。誤り訂正回路ＥＤＡＣは、書き戻し命令に応じてバッファＢＵＦに保持される誤り訂正後のデータを、前述したコマンドアドレス生成回路ＲＤＧＥＮからの読み出しアドレスに書き戻す（ステップＳ２０９）。この読み出しアドレスのメモリセルには、ステップＳ２０７の処理に伴い置換用セルが含まれている。このため、誤り訂正後のデータは、正しく書き戻される。
【００５３】
《実施の形態２の主要な効果》
以上、実施の形態２の半導体装置を用いることで、実施の形態１の場合と同様の効果が得られる。これに加えて、コマンドアドレス生成回路ＲＤＧＥＮによってメモリチップＭＣＰのリードスキャンを行うことで、誤り訂正の実行間隔をより短くすることが可能になり、当該実行間隔が長くなることで訂正不可能な誤りが生じるような事態をより抑制可能になる。その結果、半導体装置の信頼性の更なる向上が実現可能になる。さらに、リードスキャンは、ホストＨＳＴのアイドル期間で行われるため、メモリ帯域を消費しない。なお、ここでは、半導体装置は、図４の動作に加えて図７の動作を行ったが、場合によっては、図４の動作を行わない構成であってもよい。
【００５４】
（実施の形態３）
《半導体装置の構成および動作》
図８は、本発明の実施の形態３による半導体装置の構成例を示す概略図である。図８に示す半導体装置ＤＥＶｃでは、図１に示した構成例と比較して、ロジックチップＬＣＰ内にメモリＢＩＳＴ（Built In Self Test）回路ＭＢＩＳＴが設けられ、これに応じて、シーケンス制御回路ＳＱＣの処理内容が若干異なっている。その他の構成および動作に関しては、図１の場合と同様である。
【００５５】
メモリＢＩＳＴ回路ＭＢＩＳＴは、指定されたメモリアドレスのテスト命令に応じて、当該メモリアドレスへのテストデータの書き込みおよび読み出しを行うことで当該メモリアドレスのパス／フェイルを判定する。シーケンス制御回路ＳＱＣは、誤り訂正回路ＥＤＡＣが図４の場合と同様にして誤り訂正を行った場合に、図４の場合と異なり、置換判定回路ＲＰＪＣへ置換命令を発行する前にメモリＢＩＳＴ回路ＭＢＩＳＴへ誤り訂正の対象であるメモリアドレスのテスト命令を発行する。
【００５６】
ここで、シーケンス制御回路ＳＱＣは、メモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果がフェイルの場合には、置換判定回路ＲＰＪＣへ置換命令を発行したのち、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行する。一方、シーケンス制御回路ＳＱＣは、メモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果がパスの場合には、置換判定回路ＲＰＪＣへ置換命令を発行せずに、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行する。
【００５７】
図９は、図８の半導体装置の動作例を説明する概略図である。図９では、図４の場合と同様に、前提として、メモリチップＭＣＰ内のデータ領域ＤＡＲおよび符号領域ＰＡＲに、それぞれ、データＩＯ［０］〜ＩＯ［ｊ］および誤り訂正符号Ｐ［０］〜Ｐ［ｋ］が書き込まれているものとする。図９では、まず、ステップＳ３０１〜Ｓ３０４において、図４のステップＳ１０１〜Ｓ１０４の場合と同様の処理が行われる。
【００５８】
簡単に説明すると、ホストＨＳＴは、ロジックチップＬＣＰへ定期的にリフレッシュコマンドを発行する（ステップＳ３０１）。これに応じて、ロウアドレスカウンタＲＡＣＵＮＴは、リフレッシュ対象のロウアドレスＲＡを定め、カラムアドレスカウンタＣＡＣＵＮＴは、読み出し対象のカラムアドレスＣＡを定める。コマンド変換回路ＣＭＤＣは、受信したリフレッシュコマンドを、リフレッシュ対象アドレスを読み出しアドレスとする読み出しコマンドに変換してメモリチップＭＣＰへ送信する（ステップＳ３０２）。
【００５９】
メモリチップＭＣＰは、読み出しコマンドに応じて、リフレッシュ対象アドレスに記憶されるデータ（ＩＯ）と当該データに対する誤り訂正符号（Ｐ）とを出力する（ステップＳ３０３）。誤り訂正回路ＥＤＡＣは、読み出されたデータを検証し、誤り訂正を行った場合には、誤り訂正後のデータをバッファＢＵＦに保持し、訂正通知を発行する（ステップＳ３０４）。
【００６０】
その後は、図４の場合と異なり、シーケンス制御回路ＳＱＣは、ステップＳ３０４の訂正通知を受けて、メモリＢＩＳＴ回路ＭＢＩＳＴへ、誤り訂正の対象であるメモリアドレス（すなわち、リフレッシュ対象アドレス）のテスト命令を発行する（ステップＳ３０５）。メモリＢＩＳＴ回路ＭＢＩＳＴは、当該テスト命令を受けて、リフレッシュ対象アドレスへのテストデータの書き込みおよび読み出しを行うことでリフレッシュ対象アドレスのパス／フェイルを判定する（ステップＳ３０６）。そして、メモリＢＩＳＴ回路ＭＢＩＳＴは、当該パス／フェイルのテスト結果をシーケンス制御回路ＳＱＣへ返信する（ステップＳ３０７）。
【００６１】
ここで、メモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果がフェイルの場合、シーケンス制御回路ＳＱＣは、置換判定回路ＲＰＪＣへ置換判定命令を発行する（ステップＳ３０８ａ）。置換判定回路ＲＰＪＣは、置換判定命令を受けて、誤りが生じたＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置き換え可能か否かを判定し、その判定結果などを含む置換可否通知を、シーケンス制御回路ＳＱＣを介してホストＨＳＴへ発行する（ステップＳ３０９ａ）。以降は、図４のステップＳ１０６〜Ｓ１０９の場合と同様の処理が行われる。
【００６２】
すなわち、シーケンス制御回路ＳＱＣは、ホストＨＳＴからの置換命令を置換判定回路ＲＰＪＣへ発行し（ステップＳ３１０ａ）、これに応じて、置換判定回路ＲＰＪＣは、誤り訂正の対象であるＤＲＡＭメモリセルＭＣを冗長領域ＲＡＲ内の置換用セルに置換する（ステップＳ３１１ａ）。その後、シーケンス制御回路ＳＱＣは、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行し（ステップＳ３１２ａ）、これに応じて、誤り訂正回路ＥＤＡＣは、バッファＢＵＦ内のデータをリフレッシュ対象アドレスへ書き戻す（ステップＳ３１３ａ）。
【００６３】
一方、ステップＳ３０７におけるメモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果がパスの場合、シーケンス制御回路ＳＱＣは、置換判定回路ＲＰＪＣへ置換判定命令（ひいては置換命令）を発行せずに、誤り訂正回路ＥＤＡＣへ書き戻し命令を発行する（ステップＳ３０８ｂ）。これに応じて、誤り訂正回路ＥＤＡＣは、バッファＢＵＦ内のデータをリフレッシュ対象アドレスへ書き戻す（ステップＳ３０９ｂ）。
【００６４】
また、図示は省略するが、メモリＢＩＳＴ回路ＭＢＩＳＴは、図９に示したような動作に加えて、図７に示したコマンドアドレス生成回路ＲＤＧＥＮの動作に、図９の動作を組み合わせたような動作を行ってもよい。具体的には、メモリＢＩＳＴ回路ＭＢＩＳＴは、図７のステップＳ２０１，Ｓ２０２の処理と同様に、ホストＨＳＴからアイドル通知を受けた際に、読み出しアドレスを順次変更しながら読み出しコマンドを発行することで、メモリチップＭＣＰのリードスキャンを行う。これに応じて、誤り訂正回路ＥＤＡＣは、図７のステップＳ２０３，Ｓ２０４の処理と同様に、読み出しアドレスから読み出されたデータの誤りを訂正し、訂正通知を発行する。
【００６５】
その後、シーケンス制御回路ＳＱＣは、訂正通知を受信した場合（すなわち、誤り訂正回路ＥＤＡＣが読み出しアドレスから読み出されたデータの誤りを訂正した場合）、置換判定回路ＲＰＪＣへ置換命令を発行する前にメモリＢＩＳＴ回路ＭＢＩＳＴへ当該読み出しアドレスのテスト命令を発行する。これによって、図９のステップＳ３０５以降と同様の処理が行われる。なお、メモリＢＩＳＴ回路ＭＢＩＳＴは、このように図７と図９を組みわせた動作の代わりに、図７と同様の動作（図９を組み合わせない動作）を行ってもよい。
【００６６】
《実施の形態３の主要な効果》
以上、実施の形態３の半導体装置を用いることで、実施の形態１および２の場合と同様の効果が得られる。さらに、メモリＢＩＳＴ回路ＭＢＩＳＴを用いて、誤り訂正の対象メモリアドレス（例えばリフレッシュ対象アドレスなど）のテストを行うことで、誤りのタイプ（すなわち、ソフトエラーかハードエラーか）を区別することができる。ソフトエラーの場合、一時的（偶発的）なエラーであるため、メモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果はパスとなる。一方、ハードエラーの場合、恒久的なエラーであるため、メモリＢＩＳＴ回路ＭＢＩＳＴのテスト結果はフェイルとなる。そして、ハードエラーの場合のみでメモリセルの置換を行うことで、冗長領域ＲＡＲを効率的に使用することが可能になる。その結果、置換可能な数を実効的に増やすことができるため、半導体装置の信頼性を更に向上させることが可能になる。
【００６７】
（実施の形態４）
《半導体装置の構成（各種変形例）》
図１０および図１１は、本発明の実施の形態４による半導体装置において、図１を変形した構成例を示す概略図である。図１０に示す半導体装置ＤＥＶｄでは、図１に示したロジックチップＬＣＰとホストＨＳＴとが１個のホストチップＨＣＰに搭載される。具体的には、図５に示したホストチップＨＳＴＣＰとロジックチップＬＣＰとが１個のホストチップＨＣＰで実現される。この場合、ホストチップＨＣＰ内に貫通ビアを設ける必要性が生じるが、チップ数の削減とインタポーザＩＮＴＰの削減によって、半導体装置の小型化を実現できる。また、半導体装置の低消費電力化が図れる場合がある。
【００６８】
図１１に示す半導体装置は、メモリチップＭＣＰａで構成され、当該メモリチップＭＣＰａは、メモリアレイＭＡ等に加えて図１に示したようなロジックチップＬＣＰの機能を搭載している。図１１において、コマンドデコーダＣＭＤＤＥＣは、受信したコマンドＣＭＤおよびアドレスＡＤＲに基づいて、メモリアレイＭＡへのアクセスを制御する。コマンドデコーダＣＭＤＤＥＣは、コマンド変換回路ＣＭＤＣを備える。
【００６９】
コマンド変換回路ＣＭＤＣは、受信したリフレッシュコマンドを、ロウアドレスカウンタＲＡＣＵＮＴおよびカラムアドレスカウンタＣＡＣＵＮＴに基づくリフレッシュ対象アドレスに対する読み出しコマンドとして解釈する。ただし、この場合、読み出しコマンドに応じて読み出されたデータは、外部へ出力されないように制御される。なお、この例では、メモリチップＭＣＰａは、図１に示したようなロジックチップＬＣＰの機能を全て備えた。ただし、勿論、メモリチップとロジックチップを併用する形で、図１におけるロジックチップＬＣＰの機能の一部をメモリチップに搭載するような構成であってもよい。
【００７０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【００７１】
ＢＬ  ビット線
ＢＰ  バンプ
ＢＵＦ  バッファ
ＣＡ  カラムアドレス
ＣＡＣＵＮＴ  カラムアドレスカウンタ
ＣＭＤＣ  コマンド変換回路
ＤＡＲ  データ領域
ＤＥＶ  半導体装置
ＥＤＡＣ  誤り訂正回路
ＨＣＰ，ＨＳＴＣＰ  ホストチップ
ＨＩＦ  ホストインタフェース
ＨＳＴ  ホスト
ＩＮＴＰ  インタポーザ
ＩＯ  データ
ＬＣＰ  ロジックチップ
ＭＡ  メモリアレイ
ＭＢＩＳＴ  メモリＢＩＳＴ回路
ＭＣ  ＤＲＡＭメモリセル
ＭＣＰ  メモリチップ
ＭＩＦ  メモリインタフェース
Ｐ  誤り訂正符号
ＰＡＲ  符号領域
ＲＡ  ロウアドレス
ＲＡＣＵＮＴ  ロウアドレスカウンタ
ＲＡＲ  冗長領域
ＲＤＧＥＮ  コマンドアドレス生成回路
ＲＰＩＭ  置換情報保持回路
ＲＰＪＣ  置換判定回路
ＳＱＣ  シーケンス制御回路
ＴＳＶ  貫通ビア
ＷＬ  ワード線
【図１】
2020071589.tif 000003
【図２】
2020071589.tif 000004
【図３】
2020071589.tif 000005
【図４】
2020071589.tif 000006
【図５】
2020071589.tif 000007
【図６】
2020071589.tif 000008
【図７】
2020071589.tif 000009
【図８】
2020071589.tif 000010
【図９】
2020071589.tif 000011
【図１０】
2020071589.tif 000012
【図１１】
2020071589.tif 000013
【図１２】
2020071589.tif 000014