(57)【要約】【課題】  使い勝手の良い大記憶容量のROMとRAMを含むメモリシステムを提供する。【解決手段】  不揮発性メモリ、キャッシュメモリ、制御回路、情報処理装置を含むメモリシステムを構成する。不揮発性メモリのデータをキャッシュメモリへ転送させ、保持することにより高速化を図る。不揮発性メモリのデータをキャッシュメモリへ転送させる際は、エラー訂正を行い、信頼性の向上を図る。情報処理装置から、独立にキャッシュメモリと不揮発性メモリへのアクセスを行えることにより、使い勝手の向上を図る。これら複数のチップからなるメモリシステムを、各チップが相互に積層して配置され、ボールグリッドアレイ(BGA)やチップ間のボンディングによって配線されたメモリシステム・モジュールとして構成する。【選択図】図１
2006323739.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリと、キャッシュメモリと、前記不揮発性メモリと前記キャッシュメモリとの間でアクセスを行う制御回路を含むメモリモジュールであって、
前記メモリモジュールの外部からキャッシュメモリへアクセスするための第１の不揮発性メモリインターフェースと、前記不揮発性メモリへアクセスするための第２の不揮発性メモリインターフェースを有することを特徴とするメモリモジュール。
【請求項２】
請求項１において、
電源投入直後、前記不揮発性メモリの所定のアドレス領域のデータをキャッシュメモリへ転送することを特徴とするメモリモジュール。
【請求項３】
請求項１において、
前記第１の不揮発性メモリインターフェースから不揮発性メモリへの読み出しアクセスは、前記キャッシュメモリを経由して行い、前記第２の不揮発性メモリインターフェースからのアクセスは前記キャッシュメモリを経由せず、不揮発性メモリへアクセスすることを特徴とするメモリモジュール。
【請求項４】
請求項１において、
前記不揮発性メモリから前記キャッシュメモリへの間のデータ転送は、前記前記第１の不揮発性メモリインターフェースからのアクセスによって行われることを特徴とするメモリモジュール。
【請求項５】
請求項１において、
前記不揮発性メモリから前記キャッシュメモリへのデータ転送および前記不揮発性メモリから前記第２の不揮発性メモリインターフェースへのデータ転送は、エラー訂正されたデータを転送することを特徴とするメモリモジュール。
【請求項６】
請求項１において、
前記不揮発性メモリへのデータ転送は、アドレス代替処理が行われることを特徴とするメモリモジュール。
【請求項７】
請求項１において、
前記不揮発性メモリには、ブートプログラムを保持することを特徴とするメモリモジュール。
【請求項８】
請求項１において、
前記不揮発性メモリから前記キャッシュメモリへ動作電源が投入された初期に転送されるデータの範囲を示す転送範囲データが、前記不揮発性メモリに保持されていることを特徴とするメモリモジュール。
【請求項９】
請求項１において、
前記不揮発性メモリと前記キャッシュメモリは不揮発性メモリの1/100以下のメモリ容量であることを特徴とするメモリモジュール。
【請求項１０】
請求項２において、
前記不揮発性メモリの所定のアドレス領域の範囲を示す転送範囲データを前記不揮発性メモリが保持することを特徴とするメモリモジュール。
【請求項１１】
請求項１において、
前記第１の不揮発性メモリインターフェースからのキャッシュメモリへの読み出しアクセスと、前記第２の不揮発性メモリインターフェースからの不揮発性メモリへアクセスと、前記ダイナミックランダムアクセスメモリインターフェースからのダイナミックランダムアクセスメモリへのアクセスは同時に行うことができることを特徴とするメモリシステム。
【請求項１２】
請求項１において、
前記メモリモジュールの前記第１不揮発性インターフェースからの読み出しアクセスによる、前記フラッシュメモリから前記キャッシュメモリへのデータ転送を第１優先、前記第２不揮発性インターフェースからのアクセスによる前記フラッシュメモリと前記第２不揮発性インターフェース間のデータ転送を第２優先、前記第１不揮発性インターフェースからの書き込みアクセスによるデータ転送を第３優先とするメモリモジュール。
【請求項１３】
請求項１において、
前記前記キャッシュメモリはスタティックランダムメモリから構成されることを特徴とするメモリモジュール。
【請求項１４】
請求項１において、
前記前記キャッシュメモリは不揮発性ランダムアクセスメモリから構成されることを特徴とするメモリモジュール。
【請求項１５】
請求項１において、
前記不揮発性メモリはＮＡＮＤ型フラッシュメモリであることを特徴とするメモリモジュール。
【請求項１６】
請求項１において、
前記不揮発性メモリはＡＮＤ型フラッシュメモリであることを特徴とするメモリモジュール。
【請求項１７】
請求項１において、
前記不揮発性メモリはハードディスクであることを特徴とするメモリモジュール。
【請求項１８】
請求項１において、
前記第１不揮発性メモリインターフェースはNOR型フラッシュメモリインターフェースであり、前記第２不揮発性メモリインターフェースはNAND型フラッシュメモリインターフェースであることを特徴とするメモリモジュール。
【請求項１９】
請求項１において、
前記第１不揮発性メモリインターフェースはNOR型フラッシュメモリインターフェースであり、前記第２不揮発性メモリインターフェースはAND型フラッシュメモリインターフェースであることを特徴とするメモリモジュール。
【請求項２０】
請求項１において、
前記キャッシュメモリからのデータ転送は、エラーチェックを行うことを特徴とするメモリモジュール。
【請求項２１】
請求項５において、
前記キャッシュメモリからのデータ転送は、エラーチェックを行うことを特徴とするメモリモジュール。
【請求項２２】
請求項２１において、
前記エラーチェックにてエラーを発見した場合は、前記不揮発性メモリから、前キャッシュメモリへデータを転送することを特徴とするメモリモジュール。
【請求項２３】
請求項１において、
前記制御回路はアドレス変換回路を含み、前記アドレス変換回路は第１不揮発性メモリインターフェースから入力したアドレスを変換し、前記キャッシュメモリのデータ検索に利用することを特徴とするメモリモジュール。
【請求項２４】
請求項２３において、
前記アドレス変換回路によるアドレス変換方法をプログラムできることを特徴とするメモリモジュール。
【請求項２５】
請求項１において、
前記不揮発性メモリはエラー検出訂正回路とアドレス代替処理回路を装備していることを特徴とするメモリモジュール。
【請求項２６】
請求項１において、
前記不揮発性メモリのメモリアレイの構成はＮＡＮＤ構成であることを特徴とするメモリモジュール。
【請求項２７】
請求項１において、
前記不揮発性メモリのメモリアレイの構成はＡＮＤ構成であることを特徴とするメモリモジュール。
【請求項２８】
不揮発性メモリと、キャッシュメモリと、前記不揮発性メモリと前記キャッシュメモリとの間でアクセスを行う制御回路と、ダイナミックランダムアクセスメモリを含むメモリモジュールであって、
前記メモリモジュールの外部からキャッシュメモリへアクセスするための第１の不揮発性メモリインターフェースと、前記不揮発性メモリへアクセスするための第２の不揮発性メモリインターフェースと、ダイナミックランダムアクセスメモリへアクセスするためのダイナミックランダムアクセスメモリインターフェースを有することを特徴とするメモリモジュール。
【請求項２９】
請求項２８において、
電源投入直後、前記不揮発性メモリの所定のアドレス領域のデータをキャッシュメモリへ転送することを特徴とするメモリモジュール。
【請求項３０】
請求項２８において、
前記第１の不揮発性メモリインターフェースから不揮発性メモリへの読み出しアクセスは、前記キャッシュメモリを経由して行い、前記第２の不揮発性メモリインターフェースからのアクセスは前記キャッシュメモリを経由せず、不揮発性メモリへアクセスし、前記ダイナミックランダムアクセスメモリインターフェースからのアクセスは前記キャッシュメモリを経由せず、ダイナミックランダムアクセスメモリへアクセスすることを特徴とするメモリモジュール。
【請求項３１】
請求項２８において、
前記不揮発性メモリと前記キャッシュメモリとの間のデータ転送は、前記前記第１の不揮発性メモリインターフェースからの命令によって行われることを特徴とするメモリモジュール。
【請求項３２】
請求項２８において、
前記不揮発性メモリから前記キャッシュメモリへのデータ転送および前記不揮発性メモリから前記第２の不揮発性メモリインターフェースへのデータ転送は、エラー訂正されたデータを転送することを特徴とするメモリモジュール。
【請求項３３】
請求項２８において、
前記第２の不揮発性メモリインターフェースから前記不揮発性メモリへのデータ転送は、アドレス代替処理が行われることを特徴とするメモリモジュール。
【請求項３４】
請求項２８において、
前記不揮発性メモリには、ブートプログラムを保持することを特徴とするメモリモジュール。
【請求項３５】
請求項２８において、
前記不揮発性メモリから前記キャッシュメモリへ動作電源が投入された初期に転送されるデータの範囲を示す転送範囲データが、前記不揮発性メモリに保持されていることを特徴とするメモリモジュール。
【請求項３６】
請求項２８において、
前記不揮発性メモリと前記キャッシュメモリは不揮発性メモリの1/100以下のメモリ容量であることを特徴とするメモリモジュール。
【請求項３７】
請求項２９において、
前記不揮発性メモリの所定のアドレス領域の範囲を示す転送範囲データを前記不揮発性メモリが保持することを特徴とするメモリモジュール。
【請求項３８】
請求項２８において、
前記メモリモジュールの前記第１不揮発性インターフェースからの読み出しアクセスによるデータ転送を第１優先、前記第２不揮発性インターフェースからのアクセスによるデータ転送を第２優先、前記第１不揮発性インターフェースからの書き込みアクセスによるデータ転送を第３優先とするメモリモジュール。
【請求項３９】
請求項２８において、
前記前記キャッシュメモリはスタティックランダムアクセスメモリから構成されることを特徴とするメモリモジュール。
【請求項４０】
請求項２８において、
前記キャッシュメモリは不揮発性ランダムアクセスメモリから構成されることを特徴とするメモリモジュール。
【請求項４１】
請求項２８において、
前記不揮発性メモリはＮＡＮＤ型フラッシュメモリであることを特徴とするメモリモジュール。
【請求項４２】
請求項２８において、
前記不揮発性メモリはＡＮＤ型フラッシュメモリであることを特徴とするメモリモジュール。
【請求項４３】
請求項２８において、
前記不揮発性メモリはハードディスクであることを特徴とするメモリモジュール。
【請求項４４】
請求項２８において、
前記第１不揮発性メモリインターフェースはNOR型フラッシュメモリインターフェースであり、前記第２不揮発性メモリインターフェースはNAND型フラッシュメモリインターフェースであることを特徴とするメモリモジュール。
【請求項４５】
請求項２８において、
前記第１不揮発性メモリインターフェースはNOR型フラッシュメモリインターフェースであり、前記第２不揮発性メモリインターフェースはAND型フラッシュメモリインターフェースであることを特徴とするメモリモジュール。
【請求項４６】
請求項２８において、
前記キャッシュメモリからのデータ転送は、エラーチェックを行うことを特徴とするメモリモジュール。
【請求項４７】
請求項４６において、
前記エラーチェックにてエラーを発見した場合は、前記不揮発性メモリから、前キャッシュメモリへデータを転送することを特徴とするメモリモジュール。
【請求項４８】
請求項２８において、
前記制御回路はアドレス変換回路を含み、前記アドレス変換回路は第１不揮発性メモリインターフェースから入力したアドレスを変換し、前記キャッシュメモリのデータ検索に利用することを特徴とするメモリモジュール。
【請求項４９】
請求項２８において、
前記アドレス変換回路によるアドレス変換方法をプログラムできることを特徴とするメモリモジュール。
【請求項５０】
不揮発性メモリと、キャッシュメモリと、前記不揮発性メモリと前記キャッシュメモリとの間でアクセスを行う制御回路を含むメモリモジュールと、ダイナミックランダムアクセスメモリと、情報処理装置とを有し、前記情報処理装置は第１の不揮発性メモリインターフェースを介して、前記キャッシュメモリとのデータ転送を行い、第２の不揮発性メモリインターフェースを介して前記不揮発性メモリとのデータ転送を行い、前記ダイナミックランダムアクセスメモリインターフェースを介してダイナミックランダムアクセスメモリとのデータ転送を行うことを特徴とするメモリシステム。
【請求項５１】
請求項５０において、
電源投入直後の初期化期間においては前記情報処理装置は第１の不揮発性メモリインターフェースを介して、前記メモリモジュール内のキャッシュメモリからブートプログラムを読み出すことを特徴とするメモリシステム。
【請求項５２】
請求項５０において、
前記第１の不揮発性メモリインターフェースから不揮発性メモリへの読み出しアクセスは、前記キャッシュメモリを経由して行い、前記第２の不揮発性メモリインターフェースからのアクセスは前記キャッシュメモリを経由せず、不揮発性メモリへアクセスし、前記ダイナミックランダムアクセスメモリインターフェースからのアクセスは前記キャッシュメモリを経由せず、ダイナミックランダムアクセスメモリへアクセスすることを特徴とするメモリシステム。
【請求項５３】
請求項５０において、
前記第１の不揮発性メモリインターフェースからのキャッシュメモリへの読み出しアクセスと、前記第２の不揮発性メモリインターフェースからの不揮発性メモリへアクセスは同時に行うことができることを特徴とするメモリシステム。
【請求項５４】
請求項５０において、
前記第１の不揮発性メモリインターフェースからのキャッシュメモリへの読み出しアクセスと、前記第２の不揮発性メモリインターフェースからの不揮発性メモリへアクセスと、前記ダイナミックランダムアクセスメモリインターフェースからのダイナミックランダムアクセスメモリへのアクセスは同時に行うことができることを特徴とするメモリシステム。
【請求項５５】
不揮発性メモリと、キャッシュメモリを含むキャッシュシステムであって、
前記不揮発性メモリはデータバッファを装備しており、前記データバッファをキャッシュメモリとして利用することを特徴とするキャッシュシステム。
【請求項５６】
請求項５５において、
前記不揮発性メモリのデータバッファのサイズが前記キャッシュメモリのラインサイズより大きいことを特徴とするメモリモジュール。
【請求項５７】
請求項５５において、
前記キャッシュメモリと前記不揮発性メモリのデータバッファを同時に検索することを特徴とするキャッシュシステム。
【請求項５８】
キャッシュメモリと不揮発性メモリとを含むキャッシュシステムであって、不揮発性メモリからキャッシュメモリへのデータ転送は、複数ページ分のデータを転送することを特徴とするキャッシュシステム。
【請求項５９】
請求項５８において、
前記不揮発性メモリから前記キャッシュメモリへ転送する複数ページデータは、Nページ目のデータとN＋１ページ目のデータを転送することを特徴とするキャッシュシステム。
【請求項６０】
不揮発性メモリと、キャッシュメモリを含むキャッシュシステムであって、
前記キャッシュメモリは、アドレス変換された後に、前記キャッシュメモリのデータ検索に利用することを特徴とするキャッシュシステム。
【請求項６１】
請求項６０において、
前記アドレス変換によるアドレス変換方法をプログラムできることを特徴とするメモリモジュール。
【請求項６２】
キャッシュメモリの記憶容量が、２Nバイトで、ラインサイズアドレスがLine[L-1:0]で、インデックスアドレスはIndex[I-1:0]で、タグアドレスがTag[N-I-L-1:0]で表される時、
前記キャッシュメモリへ入力するアドレスをADD[N-1:0]とすると、ADD[L-1:0]をLine[L-1:0]へ対応させ、ADD[N-1:I+L]をTag[N-I-L-1:0]へ対応させ、ADD[I+L-1:L]をアドレスINDX0[I-1:0]へ対応させ、ADD[I+I+L-1:I+L]をアドレスINDX1[I-1:0]へ対応させ、INDX0[I-1:0]とINDX1[I-1:0]を加算した結果SUM[I-1:0]をIndex[I-1:0]に対応させることを特徴とするアドレス変換方式。
【請求項６３】
キャッシュメモリを装備している情報処理装置であって、前記キャッシュメモリは、請求の範囲第６２項に記載のアドレス変換方式によって変換されたアドレスを利用しデータ検索されるキャッシュメモリであることを特徴とする情報処理装置。
【請求項６４】
キャッシュメモリを装備しているメモリモジュールであって、前記キャッシュメモリは請求の範囲第６２項に記載のアドレス変換方式によって変換されたアドレスを利用しデータ検索されるキャッシュメモリであることを特徴とするメモリモジュール。
【請求項６５】
請求項６０において、
前記アドレス変換によるアドレス変換方法は、請求の範囲第６０項記載のアドレス変換方法であることを特徴とするメモリモジュール。
【請求項６６】
情報処理装置と、キャッシュメモリと、不揮発性メモリとを含むキャッシュシステムであって、前記情報処理装置はキャッシュメモリを装備しており、前記不揮発性メモリはバッファを装備しており、前記情報処理装置のキャッシュメモリはレベル１キャッシュメモリであり、前記キャッシュメモリはレベル２キャッシュメモリであり、前記不揮発性メモリのバッファはレベル３キャッシュメモリであることを特徴とするメモリシステム。
【請求項６７】
不揮発性メモリと、キャッシュメモリとを含むキャッシュシステムであって、前記不揮発性メモリはキャッシュ領域を持ち、前記不揮発性メモリからキャッシュメモリへの転送は、前記キャッシュ領域内のデータが転送されることを特徴とするキャッシュシステム。
【請求項６８】
請求項６７において、
前記不揮発性メモリのキャッシュ領域をプログラムできることを特徴とするキャッシュシステム。
【請求項６９】
不揮発性メモリと、キャッシュメモリとを含むキャッシュシステムであって、前記不揮発性メモリはキャッシュロック領域を持ち、前記不揮発性メモリのキャッシュロック領域からキャッシュメモリへ転送され、保持されたデータは、前記キャッシュメモリのデータ更新の対象外となることを特徴とするキャッシュシステム。
【請求項７０】
請求項６９において、
前記不揮発性メモリのキャッシュロック領域をプログラムできることを特徴とするキャッシュシステム。
【請求項７１】
請求項６９において、
前記不揮発性メモリのキャッシュロック領域を解除できることを特徴とするキャッシュシステム。
【請求項７２】
不揮発性メモリと、キャッシュメモリとを含むメモリモジュールであって、前記不揮発性メモリはライトプロテクト領域を持ち、前記不揮発性メモリのライトプロテクト領域は書き込みを禁止することを特徴とするメモリモジュール。
【請求項７３】
請求項７２において、
前記不揮発性メモリのライトプロテクト領域はプログラム可能であることを特徴とするメモリモジュール。
【請求項７４】
不揮発性メモリと、キャッシュメモリとを含むメモリモジュールであって、前記不揮発性メモリは書き込み回数平均化処理領域を持ち、前記不揮発性メモリの書き込み回数平均化処理領域は、書き込み回数平均化処理が行われることを特徴とするメモリモジュール。
【請求項７５】
請求項７４において、
前記不揮発性メモリの書き込み回数平均化処理領域はプログラム可能であることを特徴とするメモリモジュール。
【請求項７６】
請求項１において、
前記不揮発性メモリは第１半導体チップに、前記制御回路はキャッシュメモリメモリを含み第２半導体チップに、それぞれ形成され、かつ前記第１〜第２の半導体チップは回路基板上に搭載されて封止されたマルチチップメモリモジュールであることを特徴とするメモリシステム。
【請求項７７】
請求項２８において、
前記不揮発性メモリは第１半導体チップに、前記制御回路はキャッシュメモリメモリを含み第２半導体チップに、前記ダイナミックランダムアクセスメモリは第３半導体チップに、それぞれ形成され、かつ前記第１〜第３の半導体チップは回路基板上に搭載されて封止されたマルチチップメモリモジュールであることを特徴とするメモリシステム。
【請求項７８】
請求項５０において、
前記不揮発性メモリは第１半導体チップに、前記制御回路はキャッシュメモリメモリを含み、第２半導体チップに、前記ダイナミックランダムアクセスメモリは第３半導体チップに、前記情報処理装置は第４半導体チップに、それぞれ形成され、かつ前記第１〜第４の半導体チップは回路基板上に搭載されて封止されたマルチチップメモリモジュールであることを特徴とするメモリシステム。
【請求項７９】
情報処理装置と記憶装置と出力装置から構成される情報機器であって、前記記憶装置は、請求の範囲第１項に記載のメモリシステムであることを特徴とする情報機器。
【請求項８０】
情報処理装置と記憶装置と出力装置から構成される情報機器であって、前記記憶装置は、請求の範囲第１７項に記載のメモリシステムであることを特徴とする情報機器。
【請求項８１】
情報処理装置と記憶装置と出力装置から構成される情報機器であって、前記情報処理装置と記憶装置は、請求の範囲第２８項記載のメモリシステムであることを特徴とする情報機器。
【請求項８２】
情報処理装置と記憶装置と出力装置から構成される情報機器であって、前記情報処理装置と記憶装置は、請求の範囲第４３項記載のメモリシステムであることを特徴とする情報機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリを含むメモリシステムおよびメモリシステムの制御方法に関する。
【背景技術】
【０００２】
従来、フラッシュメモリ(32M bit容量)とスタティックランダムアクセスメモリ(NOR(4M bit容量))とがスタックチップでＦＢＧＡ（Fine pitch Ball Grid Array）型パッケージに一体封止された複合型半導体メモリがある。フラッシュメモリとNORとは、ＦＢＧＡ型パッケージの入出力電極に対してアドレス入力端子とデータ入出力端子が共通化されている。但し各々の制御端子はそれぞれ独立とされている（例えば、非特許文献１参照。）。
【０００３】
また、フラッシュメモリチップとDRAMチップとがリードフレーム型パッケージに一体封止された複合型半導体メモリもある。この複合型半導体メモリはフラッシュメモリとDRAMとはパッケージの入出力電極に対してアドレス入力端子、データ入出力端子、及び制御端子が共通化されて入出力される（例えば、特許文献１の図１及び図１５、特許文献２参照。）。
【０００４】
また、主記憶装置として扱われるフラッシュメモリとキャッシュメモリとコントローラとCPUから構成されるシステムもある（例えば、特許文献３の図１参照。）。
【０００５】
また、フラッシュメモリとＤＲＡＭと転送制御回路からなる半導体メモリもある（例えば、特許文献４の図２、特許文献５参照。）。
【非特許文献１】“複合メモリ（スタックドCSP）フラッシュメモリ＋RAM  データシート”、形名LRS1380、［online］、平成１３年１２月１０日、シャープ株式会社、［平成１４年８月２１日検索］、インターネット＜URL:http://www.sharp.co.jp/products/device/flash/cmlist.html＞
【特許文献１】特開平０５−２９９６１６号公報
【特許文献２】欧州特許出願公開第０５６６３０６号明細書
【特許文献３】特開平０７−１４６８２０号公報
【特許文献４】特開２００１−５７２３号公報
【特許文献５】特開２００２−３６６４２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本願発明者等は、本願に先立って携帯電話及びそれに使用されるプロセッサと、フラッシュメモリと、ランダムアクセスメモリから構成されたメモリシステムとその動作について検討を行った。
【０００７】
図３３に示すように携帯電話には情報処理装置PRCとメモリモジュールMCMが使用されている。
【０００８】
情報処理装置PRCは中央演算装置CPUとSRAMコントローラから構成される。メモリモジュールMCMはNOR型フラッシュメモリNOR  FLASHとSRAMから構成される。情報処理装置PRCはメモリモジュールMCMにアクセスを行い、データの読み出しおよび書き込みを行う。
【０００９】
電源投入後、情報処理装置PRCは、NOR型フラッシュメモリNOR  FLASHに格納されているブートデータを読み出し、自らを立ち上げる。その後、情報処理装置PRCはNOR型フラッシュメモリNOR  FLASHより必要に応じてアプリケーションプログラムを読みだし、中央演算装置CPUで実行する。SRAMはワークメモリとして機能し、中央演算装置CPUでの演算結果などが保存される。
【００１０】
近年、携帯電話が取り扱うアプリケーション、データ、ワークエリアは携帯電話に付加される機能（音楽やゲーム等配信等）が増えるにつれて大きくなり、より大きな記憶容量のフラッシュメモリおよびランダムアクセスメモリが必要と予想される。さらに最近の携帯電話は高機能化が目覚しく、高速かつ大容量メモリのニーズが高まっている。
【００１１】
現在、携帯電話に用いられているNOR型フラッシュメモリは、NOR構成と呼ばれるメモリアレイ方式を用いたNOR型フラッシュメモリである。NOR型は、メモリセルアレイの寄生抵抗を小さく抑えたアレイ構成であり、並列接続したメモリセル２個につき１個の割合でメタルビット線コンタクトを設けることで低抵抗化を図っている。このため、読み出し時間は約８０ｎｓとNORの読み出し時間とほぼ同等にすることができる。しかし、その反面、セル２個につき１個のコンタクトを設ける必要があるため、コンタクト部のチップ面積に占める割合が高く、１ビットのメモリセル当たりの面積が大きくなり、大容量化には対応仕切れないという課題がある。
【００１２】
また、代表的な大容量フラッシュメモリには、メモリアレイにAND構成を用いているAND型フラッシュメモリとNAND構成を用いているNAND型フラッシュメモリがある。これらのフラッシュメモリは、１６〜１２８個のセルに対し１個のビット線コンタクトを設けるため、高密度のメモリアレイを実現できる。したがって、１ビットのメモリセル当たりの面積をNOR型フラッシュメモリより小さくでき、大容量化に対応できる。しかし、その反面、最初のデータを出力するまでの読み出し時間が、約２５μｓから１００μｓと遅く、NOR型フラッシュメモリとの整合性が取れないことが判明した。
【００１３】
フラッシュメモリは書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にあることが判明した。
【００１４】
また、半導体封止材中のウランなどの放射性物質から放出されるα線がランダムアクセスメモリRAMのメモリアレイに入射することによって、このメモリアレイに保持されている記憶データが破壊されることが稀にあり、ランダムアクセスメモリRAMの信頼性を劣化させる要因となっていることが判明した。
【００１５】
そこで本発明の目的の一つは、記憶容量が大きくかつ低コストで、使い勝手の良いROMとRAMを含むメモリシステムを提供することである。
【課題を解決するための手段】
【００１６】
本発明の代表的な手段を示せば以下の通りである。情報処理装置と、フラッシュメモリと、キャッシュメモリと、メモリコントローラを一つの封止体に実装し、封止体に半導体チップとの配線を行うための電極と、封止体と封止体外部との接続を行うための電極を設ける。
【００１７】
この際に、情報処理装置からのフラッシュメモリ内のデータの読み出し要求に対する読み出し時間を高速化するため、キャッシュメモリとフラッシュメモリへメモリコントローラを接続し、メモリコントローラによりフラッシュメモリからキャッシュメモリへデータ転送を行う。
【００１８】
電源投入後は、フラッシュメモリのデータの少なくとも一部をキャッシュメモリへ転送する制御を行うとよい。
【００１９】
情報処理装置から入力したアドレスをキャッシュメモリのインデックスアドレスへ分散されるように制御すると良い。
【００２０】
前記メモリコントローラは前もって、情報処置装置が利用するデータをキャッシュメモリへ転送するように制御すると良い。
【００２１】
また、フラッシュメモリ内のバッファをキャッシュメモリとして利用すると良い。
【００２２】
前記メモリコントローラはフラッシュメモリからデータを読み出し時は、エラー検出と訂正を行い、書きこみ時は、書きこみが正しく行われなかった不良アドレスに対して代替処理を行うと良い。また、フラッシュメモリ内のメモリセルへの書き込み回数を平均化する制御を行うと良い。さらに、キャッシュメモリからデータをも読み出した後エラー検出を行うと良い。
【００２３】
情報処理装置が要求したデータの到着を知ることができる信号線を設けると良い。
【００２４】
前記メモリコントローラは、キャッシュメモリからデータを読み出している間でも、前記情報処置装置よりフラッシュメモリへの読出し及び書きこみのアクセスを受付け、データの読出し及び書きこみが行われるように制御しても良い。
【発明の効果】
【００２５】
高機能なメモリを実現できる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施の形態例につき添付図面を参照しながら詳細に説明する。実施の形態例において各ブロックを構成する回路素子は、特に制限されないが、公知のCMOS（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような１個の半導体基板上に形成される。
【実施例１】
【００２７】
図１は本発明を適用した第１の実施の形態例である情報処理装置CPU_CHIPとメモリモジュールMSMとから構成されるメモリシステムを示したものである。以下におのおのについて説明する。
【００２８】
メモリモジュールMSMはFLASH_CHIPとCT_CHIPとから構成される。FLASH_CHIPは不揮発性メモリである。不揮発性メモリにはROM(リードオンリーメモリ)、EEPROM(エレクトリカリイレーサブルアンドプログラマブルROM)、フラッシュメモリ等を用いることができる。本実施の形態例ではフラッシュメモリを例に説明する。
【００２９】
代表的な大容量フラッシュメモリには、メモリアレイにAND構成を用いているAND型フラッシュメモリとNAND構成を用いているNAND型フラッシュメモリがあり、本発明には双方のフラッシュメモリを利用することができる。また、NANDインターフェースを装備している大容量フラッシュメモリと、ANDインターフェースを装備している大容量フラッシュメモリとがあり、本発明には双方のフラッシュメモリを利用することができる。本実施例ではNANDインターフェースを装備している大容量フラッシュメモリを例に説明する。
【００３０】
特に限定しないが、FLASH_CHIPとして用いられる典型的なフラッシュメモリはNANDインターフェースを装備している大容量フラッシュメモリであり、約2Gbitの大きな記憶容量をもち、読み出し時間（読み出し要求からデータが出力されるまでの時間）は約２５μｓから１００μｓと比較的遅い。
【００３１】
DRAM_CHIPはダイナミックランダムアクセスメモリで内部構成やインターフェースの違いから、EDO（Extended Data Out）、SDRAM（Synchronous DRAM）、DDR（Double Data Rate）等様々な種類がある。メモリモジュールMSMにはいずれのDRAMでも用いることができる。本実施の形態例ではSDRAMを例に説明する。ダイナミックランダムアクセスメモリDRAM_CHIPは情報処理装置CPU_CHIPにてアプリケーションプログラムを実行するため一時的なワークメモリとして利用される。
【００３２】
特に限定しないが、DRAM_CHIPとして用いられる典型的なSDRAMは約２５６Mbitの大きな記憶容量を持っている。
【００３３】
制御回路CT_CHIPは、FLASH_CHIPと情報処理装置CPU_CHIPとのデータ転送を制御する制御回路であり、特に限定しないが記憶容量が１MバイトであるキャッシュメモリL2Cacheを内蔵しており、読み出し時間は30nsから90ns程度で、従来のNOR型フラッシュより短時間あるいは同等である。
【００３４】
キャッシュメモリL2Cacheは、不揮発性メモリであるマグネティックランダムアクセスメモリMRAMおよび相変化メモリPRAMや、揮発性メモリであるスタティックランダムアクセスメモリSRAMにて実現でき、メモリモジュールMSMにはいずれのランダムアクセスメモリでも用いることができる。本実施の形態例では、キャッシュメモリL2Cacheに揮発性メモリであるスタティックランダムアクセスメモリSRAMを利用した例に説明する。
【００３５】
フラッシュメモリFLASH_CHIPと制御回路CT_CHIP間のデータ転送はNANDインターフェースNAND IF2で行われ、情報処理装置CPU_CHIPとイナミックランダムアクセスメモリDRAM_CHIPとのデータ転送はSDRAMインターフェースSDRAM IFで行われる。
【００３６】
情報処理装置CPU_CHIPは中央演算装置CPUと、NORフラッシュコントローラNRCと、NANDフラッシュコントローラNDCと、DRAMコントローラSDCとから構成される。NORコントローラNRCはNORインターフェースでメモリモジュールMSM へアクセスを行い、データの読み書きを行う。DRAMコントローラSDCはSDRAMインターフェース（SDRAM  IF）でDRAM_CHIPへアクセスを行いデータの読み書きを行う。
【００３７】
NANDフラッシュコントローラNDCは、ＮＡＮＤインターフェース（NAND IF1）でメモリモジュールMSM へアクセスを行い、データの読み書きを行う。
【００３８】
フラッシュメモリFLASH_CHIPは、制御回路FCNTと、データバッファDREGと、メモリセルアレイMARYとから構成される。制御回路FCNTは、制御回路CT_CHIPのNANDインターフェースNAND IF2からの読み出し及び書き込み命令によって動作する回路である。
【００３９】
読み出し要求が制御回路FCNTへ入力されると、メモリセルアレイMARYからデータバッファDREGへ、特に限定しないが、データサイズが2KB程度のデータが転送され、NANDインターフェースNAND IF2より制御回路CT_CHIPへ転送される。
【００４０】
また、データバッファDREGへ転送されたデータはそのまま保持される。
【００４１】
書き込み要求および書き込みデータが制御回路FCNTへ入力されると、特に限定しないが、データサイズが2KB程度のデータがデータバッファDREGへ入力され、最終的にメモリセルアレイMARYへ書き込まれる。また、データバッファDREGへ入力されたデータはそのまま保持される。
【００４２】
フラッシュメモリFLASH_CHIPは、特に制限はないが、メインデータ領域と代替領域REPAREAに分かれている。
【００４３】
メインデータ領域には初期プログラム領域が含まれており、初期プログラム領域内には、電源投入直後に、情報処理装置CPU_CHIPを立ち上げるためのブートプログラムと、フラッシュメモリFLASH_CHIPからキャッシュメモリL2Cacheへ自動転送するためのキャッシュ領域内のデータ範囲を示す自動転送領域指定データが格納されている。
＜制御回路CT_CHIPの構成＞
制御回路CT_CHIPは、NORインターフェース（NOR IF）からの読み出しおよび書き込み要求を受け取るNORインターフェース回路NRIF、NANDインターフェース（NAND IF）からの読み出しおよび書き込み要求を受け取るNANDインターフェース回路NDIF、レジスタブロックREG、アドレス変換回路DSTR、キャッシュメモリL2Cache、PL2A,PL2B、プリフェッチ制御回路ＰＲＥＦ、フラッシュ制御回路FLCT、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPから構成される。
【００４４】
キャッシュメモリL2Cacheは、特に限定しないが、1Mバイト程度の容量をもつ。また、キャッシュメモリPL2AおよびPL2Bは、特に限定しないが、それぞれ512バイトの容量を持つ。
【００４５】
プリフェッチ制御回路ＰＲＥＦは、ヒット判定回路ＰＬ２Ｈｉｔ、Ｌ３Ｈｉｔ、先読み制御回路から構成される。バッファ回路ＢＦＢＫは、リードバッファＲＢＵＦ、書き込みバッファＷＢＵＦから構成される。
【００４６】
フラッシュ制御回路FLCTは、クロック制御回路ＯＳＣ、メモリアドレス管理回路ＭＭＧ、アクセス調停回路ＡＲＢ、制御回路ＲＷＣＬから構成される。
【００４７】
フラッシュエラー制御回路FLSPは、エラー検出訂正回路ＥＣＣ、バッファ回路ＢＵＦ、代替処理回路ＲＥＰ、書き込み回数平均化回路ＷＬＶから構成される。
【００４８】
以下に本メモリシステムの動作を説明する。先ず、電源投入直後の動作について説明する。
＜電源投入直後の動作説明＞
情報処理装置CPU_CHIP、ダイナミックランダムアクセスメモリDRAM_CHIP、制御回路CT_CHIPおよびフラッシュメモリFLASH_CHIPへ電源投入を行うと、フラッシュ制御回路FLCTは、FLASH_CHIPの初期プログラム領域のデータをバッファ回路ＢＵＦへ読み出し、エラー検出訂正回路ECCにて、エラーがあるかどうかをチェックする。エラーがなければ、初期プログラム領域内のブートプログラムをキャッシュメモリＰＬ２Ａへ転送し、エラーがあれば訂正を行い、初期プログラム領域内のブートプログラムをキャッシュメモリＰＬ２Ａへ転送する。このように、電源投入直後にブートプログラムをFLASH_CHIPからキャッシュメモリＰＬ２Ａへ自動転送することにより、情報処理装置CPU_CHIPはこのブートプログラムを読み出し、すばやく自らを立ち上げ、さらにダイナミックランダムアクセスメモリDRAM_CHIPの初期設定を行うことができる。
【００４９】
情報処理装置ＣＰＵ＿ＣＨＩＰが立ち上げを行っている間にフラッシュ制御回路ＦＬＣＴは自動転送領域指定データをバッファ回路ＢＵＦより読み出し、このデータに示されている範囲のフラッシュメモリFLASH_CHIP内のデータをバッファ回路ＢＵＦへ順に読み出し、エラー検出訂正回路ECCにてエラーがあるかどうかをチェックする。エラーがなければ、キャッシュメモリPL2Bを経由しキャッシュメモリL2Cacheへ転送し、エラーがあれば訂正を行い、キャッシュメモリPL2Bを経由し、キャッシュメモリL2Cacheへ転送する。この自動データ転送が終了した時点で、メモリモジュールMSMは、一連の初期動作が終了したことを示す初期動作完了信号PCMPをHighにする。
【００５０】
また、アクセス調停回路ＡＲＢは、レジスタブロックREGに対してデータ転送の完了を示す転送完了フラグを書き込む構成にしても良い。この場合、初期動作完了信号PCMPは必要ないため信号ピンを減らすことができる。
【００５１】
情報処理装置CPU_CHIPは、メモリモジュールMSMの初期動作完了信号PCMPをチェックすることによって電源投入直後のデータ転送が完了したことを知ることができるため、すぐにキャッシュメモリL2Cahceアクセスすることができる。
【００５２】
このように、電源投入直後にブートプログラムをFLASH_CHIPからキャッシュメモリL2Cacheへ自動転送することにより、情報処理装置CPU_CHIPは、このブートデータを読み出し、すばやく自らを立ち上げることができる。さらに、情報処理装置CPU_CHIPが立ち上げを行っている間に、FLASH_CHIPのデータをキャッシュメモリL2Cacheへ自動転送することにより、情報処理装置CPU_CHIPが立ちあがった時点で、すぐにメモリモジュールＭＳＭへアクセスすることができるため高性能化が図れる。
＜レジスタブロックの説明＞
次に、レジスタブロックREGについて説明する。レジスタブロックREGには、特に限定しないが、読み出しモード設定レジスタRModeReg、キャッシュ領域設定レジスタCAreaReg、キャッシュロック領域設定レジスタCaLockReg、ライトプロテクト領域設定レジスタWproReg、書き込み回数平均化処理領域設定レジスタWlvlRegがある。
【００５３】
キャッシュ領域および非キャッシュ領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからキャッシュ領域設定レジスタCAreaRegの値を書き換えることで、キャッシュ領域および非キャッシュ領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域がキャッシュ領域となっている。
【００５４】
キャッシュ領域内データはキャッシュメモリL2Cache,PL2A,PL2Bへ転送され、非キャッシュ領域内データはキャッシュメモリL2Cache,PL2A,PL2Bへ転送されない。
【００５５】
キャッシュロック領域、非キャッシュロック領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからキャッシュ領域設定レジスタCAreaRegの値を書き換えることで、キャッシュロック領域、非キャッシュロック領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域が非キャッシュロック領域となっている。
【００５６】
キャッシュロック領域内のデータは、一旦キャッシュメモリL2Cacheへ転送されると、キャッシュロック解除命令によってキャッシュ領域設定レジスタが書き換えられるまで、キャッシュメモリL2Cacheに存在することができる。また、非キャッシュロック領域内データは、キャッシュメモリL2Cacheから追い出される可能性がある。
【００５７】
書き込み回数平均化処理領域、非書き込み回数平均化処理領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFから書き込み回数平均化処理領域設定レジスタWlvlRegの値を書き換えることで、書き込み回数平均化処理領域、非書き込み回数平均化処理領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの半分の領域が書き込み回数平均化処理領域となっている。
【００５８】
書き込み回数平均化処理領域内データには、書き込み回数平均化回路ＷＬＶが、書き換えが集中していたと判断した場合は、書き込み回数平均化処理が行われる。
【００５９】
非書き込み回数平均化処理領域内データには書き込み回数平均化処理が行われない。
【００６０】
ライトプロテクト領域、非ライトプロテクト領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからライトプロテクト領域設定レジスタWproRegの値を書き換えることで、ライトプロテクト領域、非ライトプロテクト領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域が非ライトプロテクト領域となっている。
【００６１】
ライトプロテクト領域には書き込みが行われず、非ライトプロテクト領域には、書込みが可能である。
【００６２】
メモリモジュールMSMが装備するNORインターフェースは、クロック信号CLKに同期して動作する同期型NORインターフェースと、クロック信号CLKには同期しない非同期型NORインターフェースであり、いずれかのNORインターフェースで動作する。特に限定しないが、メモリモジュールMSMは、電源投入直後には非同期NORインターフェースで動作する。
【００６３】
アドレス変換回路DSTRは、特に限定しないが、複数のアドレス変換方式（簡易インデックス変換方式、インデックスビットシフト変換方式、インデックス演算方式）を実現でき、いずれかのアドレス変換方式で動作する。特に限定しないが電源投入直後には、アドレス変換回路DSTRはインデックス演算方式にて動作する。
【００６４】
特に限定しないが、NORインターフェースNOR IFから読み出しモード設定レジスタRModeRegの値を書き換えることで、メモリモジュールMSMが装備するNORインターフェースやアドレス変換方式を変更することができる。
【００６５】
以上説明したように、同期型NORインターフェースや非同期型NORインターフェース、アドレス変換方式、キャッシュ領域および非キャッシュ領域、キャッシュロック領域および非キャッシュロック領域、書き込み回数平均化処理領域および非書き込み回数平均化処理領域、ライトプロテクト領域および非ライトプロテクト領域は、それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
＜通常動作の説明＞
電源投入時のパワーオンシーケンスが終了した後のフラッシュメモリFLASH_CHIPと情報処理装置CPU_CHIP間のデータ転送について説明する。
【００６６】
先ず、情報処理装置CPU_CHIPがNORインターフェースNOR  IFより読み出し要求を入力した場合の動作について説明する。
【００６７】
情報処理装置CPU_CHIPがNORインターフェース（NOR  IF）より読み出し命令およびアドレスRADDを制御回路CT_CHIPへ入力すると、制御回路CT_CHIP 内のNORインターフェース回路NRIFは、これらの読み出し命令およびアドレスを保持する。NORインターフェース回路NRIFへ保持された読み出し命令及びアドレスRADDはメモリアドレス管理回路MMG、アクセス調停回路ARBおよびアドレス変換回路DSTRへ入力される。
【００６８】
メモリアドレス管理回路MMGはレジスタブロックREGに保持されているキャッシュ領域を示すアドレス情報とアドレスRADDとを比較する。
【００６９】
アドレスRADDがキャッシュ領域の範囲外であれば、キャッシュ領域範囲外情報がメモリアドレス管理回路MMGからNORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ通達される。
【００７０】
アクセス調停回路は、NORインターフェース回路NRIFから入力された読み出し要求と、NANDインターフェース回路NDIFからの読み出しや書き込み要求との調停を行う。
【００７１】
まず、アクセス調停回路へNORインターフェース回路NRIFから読み出し要求が入力されると、アクセス調停回路は、NANDインターフェース回路NDIFからの読み出しや書き込み要求があるかないか、さらに、NANDインターフェース回路NDIFからの読み出しや書き込み要求に対する動作を行っているかどうかをチェックする。
【００７２】
NANDインターフェース回路NDIFからの読み出しや書き込み要求があり、この要求に対する動作がまだ行われていない場合は、NANDインターフェース回路NDIFからの読み出しや書き込み要求を後回しに、NORインターフェース回路NRIFから読み出し要求を優先的に許可する。
【００７３】
NANDインターフェース回路NDIFからの読み出しや書き込み要求に対する動作が実行中の場合は、この実行中の動作を一旦中断し、NORインターフェース回路NRIFから読み出し要求を優先的に許可する。
【００７４】
アクセス調停回路へNANDインターフェース回路NDIFから読み出し及び書き込み要求が入力されると、アクセス調停回路は、NORインターフェース回路NRIFからの読み出しや書き込み要求があるかないか、さらに、NORインターフェース回路NRIFからの読み出しや書き込み要求に対する動作を行っているかどうかをチェックする。
【００７５】
NORインターフェース回路NRIFからの読み出しや書き込み要求に対する動作が実行中の場合は、この動作が完了して後に、NANDインターフェース回路NDIFから読み出し及び書き込み要求を許可する。
【００７６】
NORインターフェース回路NRIFからの読み出しや書き込み要求がなく、この要求に対する動作が行われていない場合は、NANDインターフェース回路NDIFから読み出し及び書き込み要求を許可する。
【００７７】
アドレス変換回路は、キャッシュメモリL2Cache,PL2A,PL2Bの利用率やヒット率を高める目的で、アドレスRADDをアドレスMRADDへ変換する。
【００７８】
アドレス変換回路によって変換されたアドレスMRADDは、キャッシュメモリL2Cache及びプリフェッチ制御回路PREFへ入力される。
【００７９】
キャッシュメモリL2Cacheでは、先ず、アドレスMRADDで指定されたデータがキャッシュメモリL2Cache内に存在するかどうかのヒット判定を行う。アドレスMRADDで指定されたデータがキャッシュメモリL2Cache内に存在した場合はL2Cacheヒットとなり、存在しない場合はL2Cacheミスとなる。
【００８０】
プリフェッチ制御回路PREF内のヒット判定回路PL2Hitでは、アドレスMRADDで指定されたデータがキャッシュメモリPLA2およびPL2Bのいずれかに存在するかどうかのヒット判定を行う。
【００８１】
アドレスMRADDで指定されたデータがキャッシュメモリPL2A及びPL2Bのいずれかに存在した場合はPL2ヒットとなり、存在しない場合はPL2ミスとなる。
【００８２】
また、プリフェッチ制御回路PREF内のヒット判定回路L3Hitでは、アドレスMRADDで指定されたデータがフラッシュメモリFLASH_CHIP内のデータレジスタDREGに存在するかどうかのヒット判定を行う。
【００８３】
アドレスMRADDで指定されたデータがフラッシュメモリFLASH_CHIP内のデータレジスタDREGに存在した場合はL3ヒットとなり、存在しない場合はL3ミスとなる。
＜L2Cacheヒットの動作説明＞
L2Cacheヒットの場合は、直接キャッシュメモリL2Cacheよりデータが出力され、NORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【００８４】
Wait信号がLowになると情報処理装置CPU_CHIPは、要求したデータが到着したことを知り、この要求データを取り込む。
【００８５】
つまりL2Cacheヒット場合は、フラッシュメモリFLASH_CHIPからキャッシュメモリL2Cacheへのデータ転送を行う必要がなく、直接キャッシュメモリL2Cacheからデータを読み出すことができ、データ転送を高速に行うことができる。
＜PL2ヒットの動作説明＞
L2Cacheミスで、PL2ヒットの場合は、直接キャッシュメモリPL2AおよびPL2Bのいずれかよりデータが出力され、NORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。この際の読み出し時間はL2Cacheからの読み出し時間と同等となる。
【００８６】
つまり、PL2ヒット場合は、フラッシュメモリFLASH_CHIPからキャッシュメモリPL2AおよびPL2Bへのデータ転送を行う必要がなく、直接キャッシュメモリPL2AあるいはPL2Bからデータを読み出すことができ、データ転送を高速に行うことができる。
【００８７】
このように、キャッシュメモリL2Cache、PL2AおよびPL2Bへヒットした場合は、キャッシュメモリL2Cache、PL2A,PL2Bから直接データを出力でき、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。
＜L2Cacheミス、PL2ミス、L3ヒットの動作説明＞
次に、L2Cacheミスで、PL2ミス且つL3ヒットの場合のデータ転送について説明する。
【００８８】
L2Cacheミスで、PL2ミス且つL3ヒットの場合は先ず、アクセス調停回路にてNORインターフェース回路NRIFからの読み出し要求が許可されると、制御回路RWCLが制御回路FCNTへ、Ｎページ目データの読み出し要求を入力し、データレジスタDREG内のＮページ目データをバッファ回路BUFへ転送する。
【００８９】
データレジスタDREG内のＮページ目データをバッファ回路BUFへ転送している時間を利用し、現在、キャッシュメモリPL2A及びPL2Bへ保持されているデータをキャッシュメモリL2Cacheへ転送し、キャッシュメモリL2Cacheを更新する。
【００９０】
バッファ回路BUFへ転送されたＮページ目データはエラー検出訂正回路ECCにて、エラー検出を行われる。バッファ回路BUFへ転送されたＮページ目データにエラーが無ければ、このＮページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送され、エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される。キャッシュメモリPL2Aへ転送されたＮページ目データの中の情報処理装置CPU_CHIPに要求されたデータはNORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【００９１】
特に限定しないが、データが出力されるまではWait信号はHighとなり、情報処理装置CPU_CHIPはデータの到着を待つ。Wait信号がLowになると情報処理装置CPU_CHIPは、要求したデータが到着したことを知り、この要求データを取り込む。
【００９２】
さらに、先読み指示回路PRECTが制御回路RWCLへデータの先読みを指示し、制御回路RWCLが制御回路FCNTへ読み出し要求を入力し、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータをバッファ回路BUFへ転送する。
【００９３】
バッファ回路BUFへ転送されたＮ＋１ページ目データはエラー検出訂正回路ECCにて、特に限定しないが512B毎にエラー検出を行う。バッファ回路BUFへ転送されたＮ＋１ページ目データにエラーが無ければ、このＮ＋１ページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送され、エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った後、Ｎ＋１ページ目データは制御回路RWCLによってキャッシュメモリPL2Bへ転送される。フラッシュメモリFLASH_CHIPのデータレジスタDREGへヒットした場合は、メモリセルアレイMARYからデータレジスタDREGへのデータ転送を行う必要がなく、直接データレジスタDREGからデータを読み出すことができ、データを高速に転送することができる。
【００９４】
このように、フラッシュメモリFLASH_CHIPのデータレジスタDREGをキャッシュメモリとして利用することで、キャッシュメモリの容量を実効的に増やすことでヒット率を向上でき、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。
【００９５】
さらに、データの先読み機能により、情報処理装置CPU_CHIPが要求したデータの、次ページ目のデータを前もってキャッシュメモリPL2Bへ転送することにより、ヒット率を向上させることができデータ転送を高速化できる。
＜L2Cacheミス、PL2ミス、L3ミスの動作説明＞
L2Cacheミスで、PL2ミス且つL3ミスが生じた場合のデータ転送動作を説明する。
【００９６】
アクセス調停回路にてNORインターフェース回路NRIFからの読み出し要求が許可されると、まず、制御回路RWCLが制御回路FCNTへ、Ｎページ目データの読み出し要求を入力する。制御回路FCNTは、メモリセルアレイMARY内のＮページ目データをデータレジスタDREGへ転送する。次にデータレジスタDREGＮページ目データを制御回路RWCLへ出力する。制御回路RWCLは、このデータをバッファ回路BUFへ転送する。
【００９７】
データレジスタDREGからバッファ回路BUFへのデータ転送中に、現在、キャッシュメモリPL2A及びPL2Bへ保持されているデータをキャッシュメモリL2Cacheへ転送し、キャッシュメモリL2Cacheを更新する。
【００９８】
バッファ回路BUFへ転送されたＮページ目データはエラー検出訂正回路ECCにて、特に限定しないが512B毎にエラー検出を行う。バッファ回路BUFへ転送されたＮページ目データにエラーが無ければ、このＮページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送され、エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される。キャッシュメモリPL2Aへ転送されたＮページ目データの中の情報処理装置CPU_CHIPに要求されたデータはNORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【００９９】
特に限定しないが、データが出力されるまでは、Wait信号はHighとなり、情報処理装置CPU_CHIPはデータの到着を待つ。
【０１００】
さらに、先読み指示回路PRECTが制御回路RWCLへデータの先読みを支持すると、制御回路RWCLが制御回路FCNTへ読み出し要求を入力し、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータをバッファ回路BUFへ転送する。
【０１０１】
バッファ回路BUFへ転送されたＮ＋１ページ目データはエラー検出訂正回路ECCにて、特に限定しないが512B毎にエラー検出を行う。バッファ回路BUFへ転送されたＮ＋１ページ目データにエラーが無ければ、このＮ＋１ページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送され、エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った後、Ｎ＋１ページ目データは制御回路RWCLによってキャッシュメモリPL2Bへ転送される。
【０１０２】
また、データレジスタDREGへ転送されたデータはそのまま保持され、データレジスタDREGはキャッシュメモリとして利用される。
【０１０３】
さらに、先読み機能により、情報処理装置CPU_CHIPが要求したデータがNページ目データの、次のN+1ページ目のデータをキャッシュメモリPL2Bへ転送することにより、ヒット率を向上させることができ高速にデータ転送を行うことができる。
【０１０４】
このように、フラッシュメモリFLASH_CHIPのデータバッファDREGをキャッシュメモリとして扱い、このデータバッファDREGへヒットすることで、直接メモリセルアレイMARYからデータバッファDREGへのデータ転送を行う必要が無いため高速なデータ転送を実現できる。
【０１０５】
さらに、データの先読み機能により、情報処理装置CPU_CHIPが要求したデータの、次ページ目のデータを前もってキャッシュメモリPL2Bへ転送することにより、ヒット率を向上させることができデータ転送を高速化できる。
【０１０６】
また、キャッシュメモリPL2A及びPL2BからキャッシュメモリL2Cacheへのデータ更新は、L2CacheミスかつPL2ミス時に行われるデータレジスタDREGからバッファ回路BUFへのデータ転送と同時に行うため、キャッシュメモリL2Cacheへのデータ更新時間を隠蔽し、無駄のないデータ転送を実現できる。
＜NANDインターフェースNAND IF1からの読み出し動作の説明＞
次に、情報処理装置CPU_CHIPがNANDインターフェースNAND IF1より読み出し要求を入力した場合の動作について説明する。
【０１０７】
アクセス調停回路ARB にてNANDインターフェース回路NDIFから読み出し要求が許可されると、まず、制御回路RWCLが制御回路FCNTへデータの読み出し要求を入力する。制御回路FCNTは、メモリセルアレイMARY内のデータをデータレジスタDREGへ転送する。次にデータレジスタDREGのデータを制御回路RWCLへ出力する。制御回路RWCLは、このデータをバッファ回路BUFへ転送する。
【０１０８】
バッファ回路BUFへ転送されたデータはエラー検出訂正回路ECCにてエラー検出を行う。バッファ回路BUFへ転送されたデータにエラーが無ければ、制御回路RWCLによってリードバッファRBUFへ転送され、エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った後、制御回路RWCLによってリードバッファRBUFへ転送される。
【０１０９】
リードバッファRBUFへ転送されたデータの中で、情報処理装置CPU_CHIPに要求されたデータはNANDインターフェース回路NDIFを通じてNANDインターフェースNAND IF1より情報処理装置CPU_CHIPへ出力される。
＜NANDインターフェースNAND IF1からの書込み動作の説明＞
次に、情報処理装置CPU_CHIPがNANDインターフェースNAND IF1より書き込み要求を入力した場合の動作について説明する。
【０１１０】
NANDインターフェース回路NDIFへ書き込み要求、書き込みアドレスNWADDおよび書き込みデータNWDATAが入力されると、書き込みデータNWDATAはライトバッファWBUFへ転送され、書き込みアドレスNWADDはアドレス調停回路ARBへ転送される。
【０１１１】
アドレス調停回路ARBは、書き込みアドレスNWADDをアドレス変換回路DSTRへ転送する。アドレス変換回路DSTRはアドレスNWADDへ演算を施し、アドレスMNWADDへ変換しキャッシュメモリL2Cacheヒット判定回路PL2Hitへ入力する。
【０１１２】
この後、キャッシュメモリL2Cacheはおよびヒット判定回路PL2Hitは、アドレスMNWADDを利用しキャッシュメモリL2Cache,PL2A,PL2Bとのデータの一貫性を保つための処理を行う。具体的には、キャッシュメモリL2Cacheは、アドレスMNWADDのデータが存在するかどうかをチェックし、存在すれば、そのデータを無効にする。また、ヒット判定回路PL2Hitは、キャッシュメモリPL2AおよびPL2BにアドレスMNWADDのデータが存在するかどうかをチェックし、存在すれば、そのデータを無効にする。キャッシュメモリL2Cache,PL2A,PL2B内データの無効化が終了すると、ヒット判定回路L3HitによってデータバッファDREGのデータを無効にする。
【０１１３】
すべてのキャッシュメモリの無効化が完了すると、アクセス調停回路ARBがNANDインターフェース回路NDIFからの書き込み要求を許可する。
【０１１４】
アクセス調停回路ARB にてNANDインターフェース回路NDIFからの書き込み要求が許可されると、まず、制御回路RWCLが制御回路FCNTへデータの書き込み要求および書き込みデータWDataを入力する。制御回路FCNTは、書き込みデータWdataをデータレジスタDREGへ転送し、さらにデータレジスタDREGへ転送したデータをメモリセルアレイMARYへ書き込む。
【０１１５】
代替処理回路REPは、メモリセルアレイMARYへの書き込みが成功したかどうかをチェックし、成功すれば処理を終了する。書き込みが失敗した時には、フラッシュメモリFLASH_CHIPにあらかじめ用意されている代替用の新たなアドレスに対して書き込みを行う。代替え処理を行った際は、不良アドレスと、不良アドレスに対して、どのアドレスに代替え処理を行ったかというアドレス情報を保持し管理する。
【０１１６】
また、メモリアドレス管理回路MMGは、書き込みアドレスNWADDが書き込み回数平均化処理領域内のアドレスかどうかをチェックする。
【０１１７】
書き込みアドレスNWADDが書き込み回数平均化処理領域内のアドレスであった場合は、メモリセルアレイMARYへデータWDATAが書きこまれた後に、書き込み回数平均化回路WLVが管理している書き込み回数と消去回数の総和を一つ増やす。さらに、この書き込み回数と消去回数の総和が、書き込み回数平均化回路WLVが保持している書き込み回数と消去回数の総和閾値に到達した場合は、書き込み回数平均化回路WLVは、書き換えが集中していると判断し、特に限定しないが、６４ページ単位のデータ毎に物理アドレスと論理アドレスの対応を変更し、この物理アドレスと論理アドレスの対応情報を保持する。このように書き込み回数平均化回路WLVによってメモリアレイの書き換え回数を平均化することができ、信頼性を向上させることができる。
＜NANDインターフェースNAND IF1からの消去動作の説明＞
次に、情報処理装置CPU_CHIPがNANDインターフェースNAND IF1より消去要求を入力した場合の動作について説明する。
【０１１８】
NANDインターフェース回路NDIFへ消去要求、消去アドレスNEADDが入力されると、消去要求及び消去アドレスNEADDアドレスが調停回路ARBへ転送される。
【０１１９】
アドレス調停回路ARBは、消去アドレスNEADDをアドレス変換回路DSTRへ転送する。アドレス変換回路DSTRはアドレスNEADDへ演算を施し、アドレスMNEADDへ変換し、キャッシュメモリL2Cacheヒット判定回路PL2Hitへ入力する。
【０１２０】
この後、キャッシュメモリL2Cacheはおよびヒット判定回路PL2Hitは、アドレスMNEADDを利用しキャッシュメモリL2Cache,PL2A,PL2Bとのデータの一貫性を保つための処理を行う。具体的には、キャッシュメモリL2Cacheは、アドレスMNEADDのデータが存在するかどうかをチェックし、存在すれば、そのデータを無効にする。また、ヒット判定回路PL2Hitは、キャッシュメモリPL2AおよびPL2BにアドレスMNEADDのデータが存在するかどうかをチェックし、存在すれば、そのデータを無効にする。キャッシュメモリL2Cache,PL2A,PL2B内データの無効化が終了すると、ヒット判定回路L3HitによってデータバッファDREGのデータを無効にする。
【０１２１】
すべてのキャッシュメモリの無効化が完了すると、アクセス調停回路ARBがNANDインターフェース回路NDIFからの消去要求を許可する。
【０１２２】
アクセス調停回路ARB にてNANDインターフェース回路NDIFからの消去要求が許可されると、まず、制御回路RWCLが制御回路FCNTへデータの消去要求および消去アドレスMNEADDを入力する。制御回路FCNTは、消去要求および消去アドレスMNEADDに従ってメモリセルアレイMARYのデータを消去する。
【０１２３】
また、メモリアドレス管理回路MMGは、消去アドレスNEADDが書き込み回数平均化処理領域内のアドレスかどうかをチェックする。
【０１２４】
消去アドレスNEADDが書き込み回数平均化処理領域内のアドレスであった場合は、メモリセルアレイMARYのデータが消去された後に、書き込み回数平均化回路WLVが管理している書き込み回数と消去回数の総和を一つ増やす。さらに、この書き込み回数と消去回数の総和が、書き込み回数平均化回路WLVが保持している書き込み回数と消去回数の総和閾値に到達した場合は、書き込み回数平均化回路WLVは、書き換えが集中していると判断し、特に限定しないが６４ページ単位のデータ毎に物理アドレスと論理アドレスの対応を変更し、この物理アドレスと論理アドレスの対応情報を保持する。このように書き込み回数平均化回路WLVによってメモリアレイの書き換え回数を平均化することができ、信頼性を向上させることができる。
【０１２５】
なお、図１ではエラー検出訂正回路ECCと代替処理回路REP及び書き込み回数平均化回路WLVは、制御回路CT_CHIPに設けたが、もちろんフラッシュメモリFLASH_CHIPに設けて、フラッシュメモリFLASH_CHIP側でエラー検出、エラー訂正、アドレス代替処理および書き込み回数平均化処理を構成としても良い。
＜NORインターフェースNOR IFからの書込み動作の説明＞
次に、情報処理装置CPU_CHIPがNORインターフェースNOR IFより書き込み要求を入力した場合の動作について説明する。
【０１２６】
特に限定しないが、NORインターフェース回路NRIFへ書き込み要求、書き込みアドレスNORWADDおよび書き込みデータNORWDATAが入力されると、書き込みデータNWDATAはフラッシュ制御回路FLCTを介してライトバッファWBUFへ転送され、書き込みアドレスNORWADDは、NANDインターフェース回路NDIFを介して 調停回路ARBへ転送される。この後メモリモジュールMSMは、NANDインターフェースNAND IF1へ書き込み要求が入力された場合と同じの動作を行う。
【０１２７】
このように、NORインターフェースNOR IFからの書き込みアドレスNORWADDおよび書き込みデータNORWDATAを、NANDインターフェース回路NDIFへ引き渡すことで、NORインターフェースNOR IFからの書き込み動作を実現できる。
＜NORインターフェースNOR IFからの消去動作の説明＞
次に、情報処理装置CPU_CHIPがNORインターフェースNOR IFより消去要求を入力した場合の動作について説明する。
【０１２８】
特に限定しないが、NORインターフェース回路NRIFへ消去要求、消去アドレスNOREADDが入力されると、消去アドレスNOREADDは、NANDインターフェース回路NDIFを介して 調停回路ARBへ転送される。
【０１２９】
後のメモリモジュールMSMは、上述したNANDインターフェースNAND IF1へ消去要求が入力された場合と同じの動作を行う。
【０１３０】
このように、NORインターフェースNOR IFからの消去アドレスNOREADDを、NANDインターフェース回路NDIFへ引き渡すことで、NORインターフェースNOR IFからの消去動作を実現できる。
【０１３１】
クロック制御回路ＯＳＣは、特に限定しないが、電源投入直後のメモリモジュールMSMでのデータ転送、NORインターフェースNOR IFおよびNANDインターフェースからメモリモジュールMSMへのアクセスが発生した際のデータ転送開始にクロック動作を開始し、データ転送が終了した時点でロック動作を止める。
【０１３２】
このように、クロック制御回路ＯＳＣは、データ転送に必要な場合のみ、動作し低電力化を図ることができる。
＜実施例１の効果＞
以上説明したように、NORインターフェースおよびNANDインターフェース方式を踏襲し、電源投入直後にフラッシュメモリFLASH_CHIP内のブートプログラムをキャッシュメモリL2Cacheへ自動転送することにより、情報処理装置CPU_CHIPはこのブートプログラムですばやく自らを立ち上げることができる。さらに、情報処理装置CPU_CHIPが立ち上げを行っている間に、フラッシュメモリFLASH_CHIPのデータをキャッシュメモリL2Cacheへ自動転送することにより、情報処理装置CPU_CHIPが立ちあがった時点で、すぐにメモリモジュールMSMへアクセスすることができるため高性能化が図れる。フラッシュメモリ内のアドレスマップを設定できる。また、同期型NORインターフェースや非同期型NORインターフェース、アドレス変換方式、キャッシュ領域および非キャッシュ領域、キャッシュロック領域および非キャッシュロック領域、書き込み回数平均化処理領域および非書き込み回数平均化処理領域、ライトプロテクト領域および非ライトプロテクト領域は、それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
＜＜キャッシュメモリ＞＞
情報処理装置CPU_CHIPはメモリモジュールMSMが内蔵しているキャッシュメモリLaCache、PL2A、PL2Bから直接データを出力することができるので、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。アドレス変換回路  および  アドレス変換を選択できる。アドレス変換回路は、情報処理装置CPU_CHIPから入力した読み出しアドレスが、キャッシュメモリL2Cacheのインデックスアドレスへ分散されるように、アドレス変換を行うため、キャッシュメモリL2Cache、PL2A、PL2Bの利用率が向上し、ヒット率が向上し、データ転送を高速化できる。
＜＜先読み＞＞
さらに、データの先読み機能により、現在、情報処理装置CPU_CHIPが要求したデータの次ページ目のデータを前もってキャッシュメモリへ転送することで、キャッシュメモリへヒット率を上昇させ、転送を高速化できる。
＜＜L3キャッシュ＞＞
フラッシュメモリFLASH_CHIPのデータレジスタDREGをキャッシュメモリとして利用することで、キャッシュメモリの容量を実効的に増やすことでヒット率を向上でき、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。
＜＜キャッシュデータの更新＞＞
また、キャッシュメモリPL2A及びPL2BからキャッシュメモリL2Cacheへのデータ更新は、L2CacheミスかつPL2ミス時に行われるデータレジスタDREGからバッファ回路BUFへのデータ転送と同時に行うため、キャッシュメモリL2Cacheへのデータ更新時間を隠蔽でき、データ転送時間の無駄を省くことができる。
＜＜エラー検出訂正、アドレス代替処理＞＞
メモリモジュールMMの内部で、FALSHからの読み出し時は、エラー検出と訂正を行い、書きこみ時は、書きこみが正しく行われなかった不良アドレスに対して代替処理を行うため、処理が高速にでき、かつ信頼性を保つことができる。
＜＜書き込み回数の平均化＞＞
書き込み回数平均化回路WLVによってメモリアレイの書き換え回数を平均化することができ、さらに信頼性を向上させることができる。
＜＜Wait信号＞＞
Wait信号によって、情報処理装置CPU_CHIPは要求データの到着を知ることができ、キャッシュメモリL2Cacheのヒット判定、ヒット判定回路PL2HitおよびL3Hit でのヒット判定結果によってデータの読み出し時間が異なる場合でも、確実に要求データを取り込むことができる。
【０１３３】
また、本実施例では、メモリモジュールMSMには一つのフラッシュメモリが含まれているを例について説明しているが、メモリモジュールMSMに複数個のフラッシュメモリが含まれる場合であっても本発明を実現できるのは言うまでもない。
＜メモリマップの説明＞
図２は、レジスタブロックREG内の各レジスタ（モード設定レジスタRModeReg、キャッシュ領域設定レジスタCAreaReg、キャッシュロック領域設定レジスタCaLockReg、ライトプロテクト領域設定レジスタWproReg、書き込み回数平均化処理領域設定レジスタWlvlReg）に設定された値を基に、メモリアドレス管理回路MMGが管理するフラッシュメモリFLASH_CHIPに対するメモリマップの一例を示したものである。本実施の形態例では、特に限定されないが、フラッシュメモリFLASH_CHIPの記憶領域が1Gbit＋32Mbit（32Mbitは代替領域）であるメモリモジュールを例に代表的なメモリマップを説明する。
【０１３４】
特に制限はないが、フラッシュメモリFLASH_CHIPはメイン領域MAINと代替領域REPAREAに分かれている。また、メイン領域MAINは領域AREA-A、領域AREA-B、、領域AREA-C、、領域AREA-D、初期プログラム領域InitProgに分かれている。
【０１３５】
領域AREA-Aは、非キャッシュ領域NONCAREA、且つ書き込み回数平均化処理領域WLV、且つ非ライトプロテクト領域NONWPROとして管理されている。
【０１３６】
領域AREA-Bは、キャッシュ領域CAREA、且つキャッシュロック領域CALOCK、且つ書き込み回数平均化処理領域WLVL、且つ非ライトプロテクト領域NONWPROとして管理されている。
【０１３７】
領域AREA-Cは、キャッシュ領域CAREA、且つ非キャッシュロック領域UNCALOCK、且つ非書き込み回数平均化処理領域NONWLV、且つ非ライトプロテクト領域NONWRPROとして管理されている。
【０１３８】
領域AREA-Dは、キャッシュ領域CAREA、且つ非キャッシュロック領域UNCALOCK、且つ非書き込み回数平均化処理領域NONWLV、且つライトプロテクト領域WPROとして管理されている。
【０１３９】
初期プログラム領域InitProgは、キャッシュ領域CAREA、且つ非キャッシュロック領域UNCALOCK、且つ非書き込み回数平均化処理領域NONWLV、且つライトプロテクト領域WPROとして管理されている。
【０１４０】
初期プログラム領域InitProgには、特に限定しないが、ブートプログラムや、自動転送領域指定データが格納される。
【０１４１】
領域AREA-Dには、特に限定しないが、オペレイティングシステムなどが格納される。
【０１４２】
領域AREA-B及び領域AREA-Cには、特に限定しないが、アプリケーションプログラムが格納される。
【０１４３】
領域AREA-Aには、特に限定しないが、音楽データ、音声データ、動画データ、静止画データなどのデータが格納される。
【０１４４】
また、FLASHは書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。代替領域REPAREAは、このように不良となったプログラムやデータを新たな領域へ置き換えるために設けられている。代替領域REPAREAの大きさは、特に限定しないが、フラッシュメモリFLASH_CHIPが保証する信頼性が確保できるように決めると良い。
【０１４５】
キャッシュ領域CAREA、非キャッシュ領域NONCAREA、ライトプロテクト領域WRPRO、非ライトプロテクト領域NONWRPRO、書き込み回数平均化処理領域WLVLおよび非書き込み回数平均化処理領域NONWLVLは、キャッシュロック領域CALOCK、非キャッシュロック領域UNCALOCK、NORインターフェースNOR IFよりレジスタブロックREG内の各レジスタへプログラムすることで、独それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
＜電源投入直後の動作＞
電源投入時のフラッシュメモリFLASH_CHIPからキャッシュメモリL2Cache、PL2AおよびPL2Bへのデータ転送について説明する。
【０１４６】
電源投入後、フラッシュ制御回路FLCTは、フラッシュメモリFLASH_CHIPの初期プログラム領域InitProg内のデータを回路ＢＵＦへ読み出し、エラー検出訂正回路ECCにて、エラーがあるかどうかをチェックする。エラーがなければ、初期プログラム領域内のブートプログラムをキャッシュメモリＰＬ２Ａへ転送し、エラーがあれば訂正を行い、初期プログラム領域内のブートプログラムをキャッシュメモリＰＬ２Ａへ転送する。次に制御回路ＦＬＣＴは自動転送領域指定データをバッファ回路ＢＵＦより読み出し、このデータに示されている範囲のフラッシュメモリFLASH_CHIP内のデータをバッファ回路ＢＵＦへ順に読み出し、エラー検出訂正回路ECCにてエラーがあるかどうかをチェックする。エラーがなければ、キャッシュメモリPL2Bを経由しキャッシュメモリL2Cacheへ転送し、エラーがあれば訂正を行い、キャッシュメモリPL2Bを経由し、キャッシュメモリL2Cacheへ転送する。
【０１４７】
このように、電源投入直後に、必要なデータを予めキャッシュメモリへ転送することによって、情報処理装置CPU_CHIPは自らが立ち上がった後、キャッシュメモリからこのブートプログラムを読み出し、すばやく自らを立ち上げ、さらにダイナミックランダムアクセスメモリDRAM_CHIPの初期設定を行うことができる。
＜読み出し動作の説明＞
キャッシュメモリ（L2Cache、PL2AおよびPL2B）には、キャッシュ領域CAREA内のデータが保持されており、キャッシュメモリ（L2Cache、PL2AおよびPL2B）へヒットした場合は、直接、キャッシュメモリ（L2Cache、PL2AおよびPL2B）よりデータが出力され、NORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【０１４８】
キャッシュメモリ（L2Cache、PL2AおよびPL2B）をミスした場合は、フラッシュメモリFLASH_CHIPからキャッシュメモリ（L2Cache、PL2AおよびPL2Bへデータが転送される。つぎに、フラッシュメモリFLASH_CHIPのデータをキャッシュメモリL2Cache、PL2A,PL2Bへ転送する動作を説明する。
【０１４９】
NORインターフェースNOR IFからの読み出し要求が、L2Cacheミス且つPL2ミス且つL3ヒットの場合あるいは、L2Cacheミス且つPL2ミス且つL3ミスの場合に、フラッシュメモリFLASH_CHIPからキャッシュメモリL2Cache、PL2A,PL2Bへのデータ転送が生じる。
【０１５０】
まず、NORインターフェースNOR IFからの読み出し要求が、L2Cacheミス且つPL2ミス且つL3ヒットとなった場合のデータ転送について説明する。
【０１５１】
要求データはキャッシュ領域内のデータであれば、フラッシュメモリFLASH_CHIPのデータレジスタDREG内のＮページ目データをバッファ回路BUFへ転送する。
【０１５２】
データレジスタDREG内の１ページ分のデータをバッファ回路BUFへ転送している間に、現在、キャッシュメモリPL2A及びPL2Bへ保持されているデータをキャッシュメモリL2Cacheへ転送し、キャッシュメモリL2Cacheを更新する。
【０１５３】
バッファ回路BUFへ転送されたＮページ目のデータはエラー検出訂正回路ECCにて、よってエラーがあるかどうかをチェックされ、エラーがなければ、直接、キャッシュメモリPL2Aへ転送される。エラーがあれば、エラー訂正されたデータが、キャッシュメモリPL2Aへ転送される。
【０１５４】
さらに、先読み機能によって、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータがバッファ回路BUFへ転送される。
【０１５５】
バッファ回路BUFへ転送されたN+1ページ目のデータはエラー検出訂正回路ECCにて、よってエラーがあるかどうかをチェックされ、エラーがなければ、直接、キャッシュメモリPL2Bへ転送される。エラーがあれば、エラー訂正されたデータが、キャッシュメモリPL2Bへ転送される。
【０１５６】
次に、NORインターフェースNOR IFからの読み出し要求が、L2Cacheミス且つPL2ミス且つL3ミスとなった場合のデータ転送について説明する。
【０１５７】
読み出し要求のアドレスがキャッシュ領域内であれば、フラッシュメモリFLASH_CHIPのメモリセルアレイMARY内のＮページ目データはデータレジスタDREGへ転送される。その後、データレジスタDREG内のＮページ目データはバッファ回路BUFへ転送される。
【０１５８】
データレジスタDREG内のデータをバッファ回路BUFへ転送している間に、現在、キャッシュメモリPL2A及びPL2Bへ保持されているデータをキャッシュメモリL2Cacheへ転送し、キャッシュメモリL2Cacheを更新する。
【０１５９】
バッファ回路BUFへ転送されたＮページ目のデータはエラー検出訂正回路ECCにて、よってエラーがあるかどうかをチェックされ、エラーがなければ、直接、キャッシュメモリPL2Aへ転送される。エラーがあれば、エラー訂正されたデータが、キャッシュメモリPL2Aへ転送される。
【０１６０】
さらに、先読み機能によって、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータがバッファ回路BUFへ転送される。
【０１６１】
バッファ回路BUFへ転送されたN+1ページ目のデータはエラー検出訂正回路ECCにて、よってエラーがあるかどうかをチェックされ、エラーがなければ、直接、キャッシュメモリPL2Bへ転送される。エラーがあれば、エラー訂正されたデータが、キャッシュメモリPL2Bへ転送される。
【０１６２】
NORインターフェースNOR IFからの読み出し要求が、L2Cacheヒットとなった場合は、キャッシュメモリL2Cacheより直接データを読み出す。また、NORインターフェースNOR IFからの読み出し要求が、PL2ヒットとなった場合は、キャッシュメモリPL2あるいはPL2Bより、直接データを読み出す。
＜効果の説明＞
＜＜キャッシュメモリ＞＞
キャッシュ領域内のデータはキャッシュメモリ(L2Cache、PL2A、PL2B)へ転送され、情報処理装置CPU_CHIPから読み出し要求がキャッシュメモリ(L2Cache、PL2A、PL2B)へヒットした場合は、キャッシュメモリ(L2Cache、PL2A、PL2B)から直接データを出力することができるので、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。
＜＜先読み＞＞
データの先読み機能により、現在情報処理装置CPU_CHIPが要求したデータの次ページ目のデータを前もってキャッシュメモリへ転送することで、キャッシュメモリへヒット率を上昇させ、データ転送を高速化できる。
＜＜L3キャッシュ＞＞
フラッシュメモリFLASH_CHIPのデータレジスタDREGをキャッシュメモリとして利用することで、キャッシュメモリの容量を実効的に増やすことでヒット率を向上でき、情報処理装置CPU_CHIPとメモリモジュールMSM間のデータ転送を高速に行うことができる。
＜＜アドレス代替処理＞＞
フラッシュメモリFLASH_CHIPへのデータ書きこみ時は、書き込みが正しく行われなかった不良アドレスに対して代替処理領域REPAREAへ代替処理を行うことができ、信頼性を保つことができる。
＜レジスタブロックの説明＞
図３は、レジスタブロックREGを構成する複数のレジスタを示す一例である。
【０１６３】
レジスタブロックREGは、特に限定しないが読み出しモード設定レジスタRModeReg、キャッシュ領域設定レジスタCAreaReg、キャッシュロック領域設定レジスタCaLockReg、ライトプロテクト領域設定レジスタWproReg、書き込み回数平均化処理領域設定レジスタWlvlRegから構成される。
【０１６４】
キャッシュ領域および非キャッシュ領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからキャッシュ領域設定レジスタCAreaRegの値を書き換えることで、キャッシュ領域および非キャッシュ領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域がキャッシュ領域となっている。
【０１６５】
キャッシュ領域内データはキャッシュメモリL2Cache,PL2A,PL2Bへ転送され、非キャッシュ領域内データはキャッシュメモリL2Cache,PL2A,PL2Bへ転送されない。
【０１６６】
キャッシュロック領域、非キャッシュロック領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからキャッシュ領域設定レジスタCAreaRegの値を書き換えることで、キャッシュロック領域、非キャッシュロック領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域が非キャッシュロック領域となっている。
【０１６７】
キャッシュロック領域内のデータは、一旦キャッシュメモリL2Cacheへ転送されると、キャッシュロック解除命令によってキャッシュ領域設定レジスタが書き換えられるまで、キャッシュメモリL2Cacheに存在することができる。また、非キャッシュロック領域内データは、キャッシュメモリL2Cacheから追い出される可能性がある。
【０１６８】
書き込み回数平均化処理領域、非書き込み回数平均化処理領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFから書き込み回数平均化処理領域設定レジスタWlvlRegの値を書き換えることで、書き込み回数平均化処理領域、非書き込み回数平均化処理領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの半分の領域が書き込み回数平均化処理領域となっている。
【０１６９】
書き込み回数平均化処理領域内データには、書き込み回数平均化回路ＷＬＶが、書き換えが集中していたと判断した場合は、書き込み回数平均化処理が行われる。
【０１７０】
非書き込み回数平均化処理領域内データには書き込み回数平均化処理が行われない。
【０１７１】
ライトプロテクト領域、非ライトプロテクト領域を変更する場合は、特に限定しないが、NORインターフェースNOR IFからライトプロテクト領域設定レジスタWproRegの値を書き換えることで、ライトプロテクト領域、非ライトプロテクト領域を変更することができる。特に限定しないが、電源投入直後には、フラッシュメモリFLASH_CHIPの全領域が非ライトプロテクト領域となっている。
【０１７２】
ライトプロテクト領域には書き込みが行われず、非ライトプロテクト領域には、書き込みが可能である。
【０１７３】
メモリモジュールMSMが装備するNORインターフェースは、クロック信号CLKに同期して動作する同期型NORインターフェースと、クロック信号CLKには同期しない非同期型NORインターフェースがあり、いずれかのNORインターフェースで動作する。特に限定しないが、メモリモジュールMSMは、電源投入直後には非同期NORインターフェースで動作する。また、メモリモジュールMSMが装備するNORインターフェースを変更する場合は特に限定しないが、NORインターフェースNOR IFから、読み出しモード設定レジスタRModeRegの値を書き換えることで、同期型NORインターフェースや非同期型NORインターフェースへ変更することができる。
【０１７４】
アドレス変換回路DSTRでは、特に限定しないが、複数のアドレス変換方式（簡易インデックス変換方式、インデックスビットシフト変換方式、インデックス演算方式）を実現でき、いずれかのアドレス変換方式で動作する。特に限定しないが電源投入直後には、アドレス変換回路DSTRはインデックス演算方式にて動作する。
【０１７５】
特に限定しないが、NORインターフェースNOR IFから読み出しモード設定レジスタRModeRegの値を書き換えることで、メモリモジュールMSMが装備するNORインターフェースやアドレス変換方式を変更することができる。
【０１７６】
以上説明したように、同期型NORインターフェースや非同期型NORインターフェース、アドレス変換方式、キャッシュ領域および非キャッシュ領域、キャッシュロック領域および非キャッシュロック領域、書き込み回数平均化処理領域および非書き込み回数平均化処理領域、ライトプロテクト領域および非ライトプロテクト領域は、それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
＜電源投入時の初期シーケンス＞
図４は、メモリモジュールMSMの電源投入時の初期シーケンスを示す。
【０１７７】
T1の期間（PWON）で制御回路CT_CHIP、フラッシュメモリFLASH_CHIPおよびダイナミックランダムアクセスメモリDRAM_CHIPへ電源投入を行い、T2の期間（RESET）でリセットを行う。リセットが解除された次のT3の期間（Initload）でFLASH_CHIPの初期プログラム領域InitProg内のデータは制御回路CT_CHIPへ転送される。T4の期間（AutoLoad）初期プログラム領域内の自動転送領域指定データに指定された範囲のデータが、フラッシュメモリFLASH_CHIPから制御回路CT_CHIPへ転送される。動転送領域指定データに指定された範囲のデータの転送が終了すると初期動作完了信号PCMPをHighにする。T5の期間（IDLE）以降、メモリモジュールMSMはアイドル状態となり、情報処理装置CPU_CHPからの要求を待つ状態となる。
＜アドレス変換  ストレート＞
図５から図７は、アドレス変換回路DSTRによって行われるNORインターフェースNOR IFからのアドレスとキャッシュメモリL2Cacheアドレスとのアドレス変換の一例を示している。
【０１７８】
先ず、図５を説明する。図５(a)にはNORインターフェースNOR IFからのアドレスとキャッシュメモリL2Cacheアドレスとのアドレス変換方法の一例を示しており、図５(b)には、キャッシュメモリL2Cacheの構成の一例を示している。
【０１７９】
キャッシュメモリL2Cacheの構成は、特に限定しないが、容量は１Ｍバイト、ラインサイズは512バイト、インデックスアドレスは0から511まであり、セットアソシアティブは4ウェイセットアソシアティブである。
【０１８０】
NORインターフェースNOR IFからのアドレスNRADは０から３１の３２ビットあり、最大４Ｇバイトのアドレス空間に対応可能である。
【０１８１】
本例では、フラッシュメモリFLASH_CHIPの容量が２５６Ｍバイトの場合について説明する。
【０１８２】
アドレスNRADの０〜８ビット目のアドレスＡｄｄ０はキャッシュメモリL2Cacheのラインサイズに対応しており、９〜１７ビット目のアドレスＡｄｄ１はキャッシュメモリL2CacheのインデックスアドレスIndex2に対応しており、１8〜２７ビット目のアドレスＡｄｄ２はキャッシュメモリL2CacheのタグアドレスTag2に対応している。
【０１８３】
つぎに、アドレスＡｄｄ１の値が511で、アドレスＡＤＤ２の値がAdd2-511である場合のキャッシュメモリL2Cacheの動作について説明する。
【０１８４】
アドレスＡｄｄ１でキャッシュメモリL2CacheのインデックスアドレスIndex2が検索され、４ウェイセットアソシアティブなので、４種類のタグアドレスが選択される。
【０１８５】
比較回路COMPはアドレスＡｄｄ２と選択されたタグアドレスを比較する。アドレスＡｄｄ２はAdd2-511でタグアドレスと一致、つまりヒットしたので、データアレイからデータData511が選択される。
【０１８６】
最後に、アドレスＡｄｄ０が選択回路SELへ入力し、５１２バイトのデータData1の中の１バイトを出力する。
＜アドレス変換  ビットシフト＞
つぎに、図６を説明する。図６(a)にはNORインターフェースNOR IFからのアドレスとキャッシュメモリL2Cacheアドレスとのアドレス変換方法の一例を示しており、図６(b)には、キャッシュメモリL2Cacheの構成の一例を示している。
【０１８７】
キャッシュメモリL2Cacheの構成は、特に限定しないが図５と同様である。
【０１８８】
NORインターフェースNOR IFからのアドレスNRADは０から３１の３２ビットあり、最大４Ｇバイトのアドレス空間に対応可能である。
【０１８９】
本例では、フラッシュメモリFLASH_CHIPの容量が２５６Ｍバイトの場合について説明する。
【０１９０】
アドレスNRADの０〜８ビット目のアドレスＡｄｄ０はキャッシュメモリL2CacheのラインサイズLine2に対応している。
【０１９１】
アドレスNRADの９〜１１ビット目及び１３〜１８ビット目は、アドレスＡｄｄ3の０〜２ビット目及び３〜８ビット目に、それぞれ対応し、キャッシュメモリL2CacheのインデックスアドレスIndex2に対応している。
【０１９２】
アドレスNRADの１２ビット目及び１９〜２７ビット目は、アドレスＡｄｄ4の０ビット目及び１〜８ビット目に、それぞれ対応し、キャッシュメモリL2CacheのタグアドレスTag2に対応している。
【０１９３】
つぎに、アドレスＡｄｄ3の値が1で、アドレスＡｄｄ4の値がAdd５-1である場合のキャッシュメモリL2Cacheの動作について説明する。
【０１９４】
アドレスＡｄｄ3でキャッシュメモリL2CacheのインデックスアドレスIndx2 の１が検索され、４ウェイセットアソシアティブなので、４種類のタグアドレスが選択される。
【０１９５】
比較回路COMPはアドレスＡｄｄ4と選択されたタグアドレスを比較する。アドレスＡｄｄ4はAdd5-1でタグアドレスと一致、つまりヒットしたので、データアレイからデータData0が選択される。
【０１９６】
最後に、アドレスＡｄｄ0が選択回路SELへ入力し、５１２バイトのデータData0の中の1バイトを出力する。
＜アドレス変換  拡散＞
次に、図７を説明する。図７(a)にはNORインターフェースNOR IFからのアドレスとキャッシュメモリL2Cacheアドレスとのアドレス変換方法の一例を示しており、図７(b)には、キャッシュメモリL2Cacheの構成の一例を示している。
【０１９７】
キャッシュメモリL2Cacheの構成は、特に限定しないが、図４と同様である。
【０１９８】
NORインターフェースNOR IFからのアドレスNRADは０から３１の３２ビットあり、最大４Ｇバイトのアドレス空間に対応可能である。
【０１９９】
本例では、フラッシュメモリFLASH_CHIPの容量が２５６Ｍバイトの場合について説明する。
【０２００】
アドレスNRADの０〜８ビット目のアドレスＡｄｄ０はキャッシュメモリL2CacheのラインサイズLine2に対応している。アドレスNRADの９〜１７ビット目のアドレスＡｄｄ１と、１８〜２６ビット目のアドレスＡｄｄ５は、アドレス変換回路DSTRによってアドレスＡｄｄ６へ変換される。アドレスＡｄｄ６はキャッシュメモリL2CacheのインデックスアドレスIndex2に対応している。
【０２０１】
アドレスNRADの１８〜２７ビット目のアドレスＡｄｄ２はキャッシュメモリL2CacheのタグアドレスTag2に対応している。
【０２０２】
アドレスＡｄｄ１とアドレスＡｄｄ５のビット幅は、キャッシュメモリのインデックスアドレスと等しく、アドレス変換回路DSTRでは、アドレスＡｄｄ１[8:0]とアドレスＡｄｄ５[8:0]との和をもとめ、さらに、その和の８ビット目から０ビット目をアドレスＡｄｄ６[8:0]へ変換し、インデックスアドレスIndex2へ割り当てる。
【０２０３】
キャッシュメモリの記憶容量や構成によってラインサイズ、インデックスアドレス、タグアドレスは変わるので、一般化して説明する。
【０２０４】
キャッシュメモリL2Cacheの記憶容量が、２Nバイトで、のラインサイズLine2がLビット、インデックスアドレスIndex2のサイズがIビット、タグアドレスTag2のサイズが(N-I-L)ビットである場合、
アドレスNRADは、下位ビットから、Add0[L-1:0]、Add1[I-1:0]、Add2[N-L-I-1:0]に分かれる。
【０２０５】
アドレスAdd0[L-1:0]は、キャッシュメモリL2CacheのラインサイズLine2[L-1:0]に対応し、アドレスAdd2[N-L-I-1:0]はキャッシュメモリL2CacheのタグアドレスTag2[N-I-1:0]に対応する。また、Add1[I-1:0]は、インデックスアドレスIndex2と同じサイズとなる。
【０２０６】
タグアドレスTag2サイズがインデックスアドレスIndex2のサイズ以上であれば、アドレスAdd2[N-L-I-1:0]の下位ビットから、インデックスアドレスIndex2と同じサイズにアドレスAdd5[I-1:0]が割り当てられる。
【０２０７】
タグアドレスTag2サイズがインデックスアドレスIndex2のサイズより小さければ、アドレスAdd2[N-L-I-1:0]はAdd5[N-L-I-1:0]となる。
【０２０８】
タグアドレスTag2サイズがインデックスアドレスIndex2のサイズ以上であれば、
アドレス変換回路DSTRでは、アドレスAdd1[I-1:0]とアドレスAdd5[I-1:0]の和を求め、さらに、その和の（I-1）ビット目から０ビット目をアドレスAdd６[I-1:0]へ変換し、インデックスアドレスIndex2[I-1:0]へ割り当てる。
【０２０９】
タグアドレスTag2サイズがインデックスアドレスIndex2のサイズより小さければ、アドレス変換回路DSTRでは、アドレスAdd1[I-1:0]とアドレスAdd5[N-L-I-1:0]の和を求め、さらに、その和の（I-1）ビット目から０ビット目をアドレスAdd６[I-1:0]へ変換し、インデックスアドレスIndex2[I-1:0]へ割り当てる。
【０２１０】
図８はアドレスＡｄｄ６の値が０で、アドレスＡＤＤ２の値がAdd２-０である場合のキャッシュメモリL2Cacheの動作について説明する。
【０２１１】
アドレスＡｄｄ６でキャッシュメモリL2CacheのインデックスアドレスIndx2が検索され、４ウェイセットアソシアティブなので、４種類のタグアドレスが選択される。
【０２１２】
比較回路COMPはアドレスＡｄｄ２と選択されたタグアドレスを比較する。アドレスＡｄｄ２はAdd２-０でタグアドレスと一致、つまりヒットしたので、データアレイからデータData０が選択される。
最後に、アドレスＡｄｄ０が選択回路SELへ入力し、５１２バイトのデータData０の中の１バイトを出力する。
＜アドレス変換  効果＞
図９および図１０は、図５および図７で説明したアドレス変換を行った際に、キャッシュメモリL2Cacheの更新が発生することを示す一例である。
【０２１３】
情報処理装置CPU_CHIPでアプリケーションを実行している最中に、情報処理装置CPU_CHIPからメモリモジュールMSMへ入力する読み出し要求には特徴があること見出した。
【０２１４】
１つ目の特徴は、アドレスAdd1は分散して生じ、アドレスAdd2は、その中で、特定のアドレス範囲を繰り返すような読み出し要求が連続することである。
【０２１５】
２つ目の特徴は、アドレスAdd2は分散して生じ、アドレスAdd1は、その中で特定のアドレス範囲を繰り返すような読み出し要求が連続することである。
【０２１６】
図９(a)は、上記、１つ目の特徴を持つ読み出し要求がメモリモジュールへ入力した際に、図７で示したインデックス演算方式によるアドレス変換によって生じるキャッシュメモリL2Cacheのデータ更新replaceを示している。
【０２１７】
図９(b)は、上記、１つ目の特徴を持つ読み出し要求がメモリモジュールへ入力した際に、図５で示した簡易インデックス変換方式によるアドレス変換によって生じるキャッシュメモリL2Cacheのデータ更新replaceを示している。
【０２１８】
図１０(a)は、上記、２つ目の特徴を持つ読み出し要求がメモリモジュールへ入力した際に、図７で示したインデックス演算方式によるアドレス変換によって生じるキャッシュメモリL2Cacheのデータ更新replaceを示している。
【０２１９】
図１０(ｂ)は、上記、２つ目の特徴を持つ読み出し要求がメモリモジュールへ入力した際に、図５で示した簡易インデックス変換方式によるアドレス変換によって生じるキャッシュメモリL2Cacheのデータ更新replaceを示している。
【０２２０】
図９(b)に示すように、図５で説明した簡易インデックス変換方式によるアドレス変換方法ではアドレスAdd1をキャッシュメモリL2CacheのインデックスアドレスIndex2へ、アドレスAdd2をタグアドレスTag2へ対応させている。そのため、１つ目の特徴を持つ読み出し要求がメモリモジュールへ入力した際は、インデックスアドレスIndexは分散されるため、インデックスアドレスIndexが分散されるためキャッシュメモリL2Cacheのリプレースreplaceは生じない。
【０２２１】
図９(a)に示すように、図７のインデックス演算方式によるアドレス変換方法では、アドレスAdd1とアドレスAdd2を演算し、分散するようにアドレスAdd10を生成させ、このアドレスAdd10をキャッシュメモリL2CacheのインデックスアドレスIndex2へ対応させている。このため、１つ目の特徴を持つ読み出し要求がL2キャッシュへ入力した場合、インデックスアドレスIndexが分散されるためキャッシュメモリL2Cacheのリプレースreplaceは生じない。つまり、図７で説明したインデックス演算方式によるアドレス変換方法によってキャッシュメモリL2cacheを有効的に利用できヒット率が向上する。
【０２２２】
図１０(b)に示すように、図５で説明した簡易インデックス変換方式によるアドレス変換方法ではアドレスAdd1をキャッシュメモリL2CacheのインデックスアドレスIndex2へ、アドレスAdd2をタグアドレスTag2へ対応させている。そのため、２つ目の特徴を持つ読み出し要求がL2キャッシュへ入力した場合は、特定のインデックスアドレスIndexへの検索が頻繁に発生し、尚且つ、タグアドレスTag2が分散しているためミスが発生しキャッシュメモリL2Cacheのリプレースreplaceが頻繁に生じてしまう。つまり、キャッシュメモリL2Cacheの一部分しか利用できずに、キャッシュメモリL2Cacheのリプレースreplaceが頻繁に生じてしまう。
【０２２３】
図１０(a)に示すように、図７のインデックス演算方式によるアドレス変換方法では、アドレスAdd1とアドレスAdd2を演算し、分散するようにアドレスAdd10を生成させ、このアドレスAdd10をキャッシュメモリL2CacheのインデックスアドレスIndex2へ対応させている。このため、２つ目の特徴を持つ読み出し要求がL2キャッシュへ入力した場合においても、インデックスアドレスIndexが分散されるためキャッシュメモリL2Cacheのリプレースreplaceは生じない。つまり、図７で説明したインデックス演算方式によるアドレス変換方法によってキャッシュメモリL2cacheを有効的に利用できヒット率が上がる。
【０２２４】
このように、図５の簡易インデックス変換方式によるアドレス変換方法では１つ目の特徴を持つ読み出し要求に対してはインデックスを分散させることができるが、２つ目の特徴を持つ読み出し要求に対してはインデックスを分散させることができず、キャッシュメモリL2Cacheのリプレースreplaceが頻繁に生じてしまう。
【０２２５】
図７で示したインデックス演算方式では、上記、１つ目の特徴を持つ読み出し要求および２つ目の特徴を持つ読み出し要求の双方に対応し、インデックスを分散させることができ、キャッシュメモリL2cacheを有効的に利用できヒット率を向上させることができる。
【０２２６】
また、図５で示した簡易インデックス変換方式、図６で示したインデックスビットシフト変換方式および、図７で示したインデックス演算方式は、NORインターフェースNOR IFから読み出しモード設定レジスタRModeRegの値を書き換えることで、選択できる。このように、アドレス変換方式は、システムにあわせて利用者側で自由に選択できる。
＜レジスタへの設定＞
図１１(a),(b)及び(c)は、同期型NORインターフェースおよび非同期型NORインターフェースの選択、バースト長の選択、アドレス変換回路DSTRで行うアドレス変換方法の選択を行うための一例を示すフローチャートである。
【０２２７】
同期型NORインターフェースおよび非同期型NORインターフェースの選択、バースト長の選択、アドレス変換回路DSTRで行うアドレス変換方法の選択は、読み出しモード設定レジスタRmodeRegへ設定値を書き込むことで、同時に選択できる。
【０２２８】
同期型NORインターフェースおよび非同期型NORインターフェースのいずれかの選択、バースト長の選択、アドレス変換回路DSTRで行うアドレス変換方法の選択を行う場合、特に限定しないが、NORインターフェースNOR IFから、読み出しモード設定レジスタRModeRegの値を設定する命令RModeSetを入力し（Step1）、次に読み出しモード設定レジスタRmodeRegへ設定値を書き込む(Step2)。
【０２２９】
図11(a)は、NORインターフェースを同期型NORインターフェースへ、バースト長を４へ、アドレス変換方法をインデックス演算方式へ、選択する一例である。
【０２３０】
図11(b)は、NORインターフェースを同期型NORインターフェースへ、バースト長を８へ、アドレス変換方法をインデックスビットシフト変換方式へ、選択する一例である。
【０２３１】
図11(b)は、NORインターフェースを非同期型NORインターフェースへ、バースト長を４へ、アドレス変換方法を簡易インデックス変換方式へ、選択する一例である。
【０２３２】
図１１(ｄ)は、読み出しモード設定レジスタRmodeReg内の設定値を読み出すための一例を示すフローチャートである。
【０２３３】
読み出しモード設定レジスタRmodeReg内の設定値を読み出すためには、特に限定しないが、NORインターフェースNOR IFから、読み出しモード設定レジスタリード命令RmodeReadを入力すると（Step1）、NORインターフェースNOR IFを通じて、読み出しモード設定レジスタRmodeReg内の設定値がへ出力される(Step2)。
【０２３４】
図１２(a)はキャシュ領域および非キャッシュ領域の範囲を設定するための一例を示すフローチャートである。
【０２３５】
キャシュ領域および非キャッシュ領域の設定を行う場合、特に限定しないが、NORインターフェースNOR IFから、キャッシュ領域を設定するための命令CAreaSetを入力し（Step1）、次にキャッシュ領域設定レジスタCAreaRegへ、キャシュ領域の開始アドレス値を書き込む(Step2)、次にキャッシュ領域設定レジスタCAreaRegへ、キャシュ領域の終了アドレス値を書き込む(Step3)。キャシュ領域の開始アドレス値と終了アドレス値の間がキャッシュ領域となり、それ以外は非キャッシュ領域となる。
【０２３６】
図１２(c)はキャッシュ領域設定レジスタCAreaReg内の設定値を読み出すための一例を示すフローチャートである。
【０２３７】
キャッシュ領域設定レジスタCAreaReg内の設定値を読み出すためには、特に限定しないが、NORインターフェースNOR IFから、キャッシュ領域設定レジスタCAreaRegリード命令CAreaReadを入力すると（Step1）、NORインターフェースNOR IFを通じて、キャッシュ領域設定レジスタCAreaReg内の設定値がへ出力される(Step2)。
【０２３８】
図１２(b)はキャシュロック領域および非キャッシュロック領域の範囲を設定するための一例を示すフローチャートである。
【０２３９】
キャシュロック領域および非キャッシュロック領域の設定を行う場合、特に限定しないが、NORインターフェースNOR IFから、キャッシュロック領域設定を設定するための命令CaLOckSetを入力し（Step1）、次にキャッシュロック領域設定レジスタCaLockRegへ、キャシュロック領域の開始アドレス値を書き込む(Step2)、次にキャッシュロック領域設定レジスタCaLockRegへ、キャシュロック領域の終了アドレス値を書き込む(Step3)。キャシュロック領域の開始アドレス値と終了アドレス値の間がキャッシュロック領域となり、それ以外は非キャッシュロック領域となる。また、キャッシュロック領域は、キャッシュ領域内に設定すると良い。
【０２４０】
図１２(d)はキャッシュロック領域設定レジスタCaLockReg内の設定値を読み出すための一例を示すフローチャートである。
【０２４１】
キャッシュロック領域設定レジスタCaLockReg内の設定値を読み出すためには、特に限定しないが、NORインターフェースNOR IFから、キャッシュロック領域設定レジスタCaLockRegリード命令CaLockReadを入力すると（Step1）、NORインターフェースNOR IFを通じて、キャッシュロック領域設定レジスタCaLockReg内の設定値がへ出力される(Step2)。
【０２４２】
図１３(a)は書き込み回数平均化処理領域および非書き込み回数平均化処理領域を設定するための一例を示すフローチャートである。
【０２４３】
書き込み回数平均化処理領域および非書き込み回数平均化処理領域の設定を行う場合、特に限定しないが、NORインターフェースNOR IFから、書き込み回数平均化処理領域を設定するための命令WlvlSetを入力し（Step1）、次に書き込み回数平均化処理領域設定レジスタWlvlRegへ、書き込み回数平均化処理領域の開始アドレス値を書き込む(Step2)、次に書き込み回数平均化処理領域設定レジスタWlvlRegへ、書き込み回数平均化処理領域の終了アドレス値を書き込む(Step3)。書き込み回数平均化処理領域の開始アドレス値と終了アドレス値の間が書き込み回数平均化処理領域となり、それ以外は非書き込み回数平均化処理領域となる。
【０２４４】
図１３(c)は書き込み回数平均化処理領域設定レジスタWlvlReg内の設定値を読み出すための一例を示すフローチャートである。
【０２４５】
書き込み回数平均化処理領域設定レジスタWlvlReg内の設定値を読み出すためには、特に限定しないが、NORインターフェースNOR IFから、書き込み回数平均化処理領域設定レジスタWlvlRegリード命令WlvlReadを入力すると（Step1）、NORインターフェースNOR IFを通じて、書き込み回数平均化処理領域設定レジスタWlvlReg内の設定値がへ出力される(Step2)。
【０２４６】
図１３(ｂ)はライトプロテクト領域および非ライトプロテクト領域を設定するための一例を示すフローチャートである。
【０２４７】
ライトプロテクト領域および非ライトプロテクト領域の設定を行う場合、特に限定しないが、NORインターフェースNOR IFから、ライトプロテクト領域を設定するための命令WproSetを入力し（Step1）、次にライトプロテクト領域設定レジスタWproRegへ、ライトプロテクト領域の開始アドレス値を書き込む(Step2)、次にライトプロテクト領域設定レジスタWproRegへ、ライトプロテクト領域の終了アドレス値を書き込む(Step3)。ライトプロテクト領域の開始アドレス値と終了アドレス値の間が書き込み回数平均化処理領域となり、それ以外は非ライトプロテクト領域となる。
【０２４８】
図１３(d)はライトプロテクト領域設定レジスタWproReg内の設定値を読み出すための一例を示すフローチャートである。
【０２４９】
ライトプロテクト領域設定レジスタWproReg内の設定値を読み出すためには、特に限定しないが、NORインターフェースNOR IFから、ライトプロテクト領域設定レジスタリード命令WproReadを入力すると（Step1）、NORインターフェースNOR IFを通じて、ライトプロテクト領域設定レジスタWproReg内の設定値がへ出力される(Step2)。
【０２５０】
以上説明したように同期型NORインターフェースや非同期型NORインターフェース、キャッシュ領域および非キャッシュ領域、キャッシュロック領域および非キャッシュロック領域、書き込み回数平均化処理領域および非書き込み回数平均化処理領域、ライトプロテクト領域および非ライトプロテクト領域は、それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
＜読み出しフロー＞
図１４は、NORインターフェースNOR IFより、読み出し要求が入力した場合の、メモリモジュールMSMの読み出し動作の一例を示すフローチャートである。
【０２５１】
NORインターフェースNOR IFより、メモリモジュールMSMへ読み出し要求と読み出しアドレスRAddが入力すると（Step1）、NANDインターフェースNAND IF1からの書き込みあるいは消去要求が発生し、書き込みあるいは消去アドレスWorEAdが読み出しアドレスRaddと一致しているかをチェックし（Step2）、書込みあるいは消去アドレスWorEAddが読み出しアドレスRaddと一致していれば、メモリモジュールMSMはエラーをNORインターフェースNOR IFを通じて出力する（Step3）。
【０２５２】
書込みあるいは消去アドレスWorEAddが読み出しアドレスRaddと一致していなければ、メモリアドレス管理回路MMGがアドレスRaddがキャッシュアドレス範囲内であるかをチェックし（Step4）、アドレスRaddがキャッシュアドレス範囲外であれば、メモリモジュールMSMはエラーをNORインターフェースNOR IFを通じて出力する（Step3）。
【０２５３】
アドレスRaddがキャッシュアドレス範囲内であれば、アクセス調停回路ARBは、NANDインターフェース回路NDIFからの読み出しや書き込み要求があるかないか、さらに、NANDインターフェース回路NDIFからの読み出しや書き込み要求に対する動作を行っているかどうかをチェックする。 NANDインターフェース回路NDIFからの読み出しや書き込み要求があり、この要求に対する動作がまだ行われていない場合は、一旦NANDインターフェース回路NDIFからの読み出しや書き込み要求を後回しに、NORインターフェースNOR IFからの読み出し要求を優先的に許可する(Step4)。また、NANDインターフェース回路NDIFからの読み出しや書き込み要求に対する動作が実行中の場合は、この実行中の動作を一旦中断し、NORインターフェースNOR IFからの読み出し要求を優先的に許可する(Step５)。
【０２５４】
次に、アドレス変換回路DSTRがアドレスRaddをアドレスMRaddへ変換する（Step６）。次にアドレスMraddが、キャッシュメモリL2Cacheと、ヒット判定回路PL2HitおよびL3Hitへ入力され、キャッシュメモリL2Cacheにてヒット判定（Step７）、ヒット判定回路PL2Hitでのヒット判定（Step８）、ヒット判定回路L3Hitでのヒット判定（Step９）が行われる。キャッシュメモリL2Cacheがヒットした場合、キャッシュメモリL2Cacheからデータが出力され(Step１０)、NORインターフェースNOR IFを通じて読み出される（Step１１）。キャッシュメモリL2Cacheがミスし、ヒット判定回路PL2Hitがヒットした場合は、キャッシュメモリPL2AおよびPL2Bのいずれかよりデータが出力され（Step12）、NORインターフェースNOR IFを通じて読み出される（Step１１）。
【０２５５】
キャッシュメモリL2Cacheがミスし、ヒット判定回路PL2Hitがミスし、ヒット判定回路L3Hitがヒットした場合、フラッシュメモリFLASH_CHIP内のデータレジスタDREG内のＮページ目データはバッファ回路BUFへ転送される（Step13）。
【０２５６】
次に、Ｎページ目データはバッファ回路BUFへ転送されながらエラー検出訂正回路ECCにて、エラー検出が行われる（Step14）。次に、エラー検出訂正回路ECCエラーがあったかどうかをチェックし（Step15）、エラーが無ければ、バッファ回路BUFへ転送されたＮページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される。エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った(Step16)後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される(Step17)。
【０２５７】
キャッシュメモリPL2Aへ転送されたＮページ目データの中の情報処理装置CPU_CHIPに要求されたデータはNORインターフェース回路NRIFを通じてNORインターフェースNOR IFから読み出される。
【０２５８】
さらに、先読み指示回路PRECTが制御回路RWCLへデータの先読みを支持し、制御回路RWCLが制御回路FCNTへ読み出し要求を入力し、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータをバッファ回路BUFへ転送する。
【０２５９】
次に、Ｎ+1ページ目データはバッファ回路BUFへ転送されながらエラー検出訂正回路ECCにて、エラー検出が行われる（Step19）。次に、エラー検出訂正回路ECCエラーがあったかどうかをチェックし（Step20）、エラーが無ければ、バッファ回路BUFへ転送されたＮ+1ページ目データは制御回路RWCLによってキャッシュメモリPL2Bへ転送される。エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った(Step12)後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される(Step22)。
【０２６０】
キャッシュメモリL2Cacheがミスし、ヒット判定回路PL2Hitがミスし、ヒット判定回路L3Hitがミスした場合、
まず、制御回路RWCLが制御回路FCNTへ、Ｎページ目データの読み出し要求を入力する。制御回路FCNTは、メモリセルアレイMARY内のＮページ目データをデータレジスタDREGへ転送する（Step23）。次に、データレジスタDREG内のＮページ目データはバッファ回路BUFへ転送される（Step13）。
【０２６１】
次に、Ｎページ目データはバッファ回路BUFへ転送されながらエラー検出訂正回路ECCにて、エラー検出が行われる（Step14）。次に、エラー検出訂正回路ECCエラーがあったかどうかをチェックし（Step15）、エラーが無ければ、バッファ回路BUFへ転送されたＮページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される。エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った(Step16)後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される(Step17)。
【０２６２】
キャッシュメモリPL2Aへ転送されたＮページ目データの中の情報処理装置CPU_CHIPに要求されたデータはNORインターフェース回路NRIFを通じてNORインターフェースNOR IFから読み出される。
【０２６３】
さらに、先読み指示回路PRECTが制御回路RWCLへデータの先読みを支持し、制御回路RWCLが制御回路FCNTへ読み出し要求を入力し、データレジスタDREG内の次ページ目のデータ、つまりＮ＋１目のデータをバッファ回路BUFへ転送する。
【０２６４】
次に、Ｎ+1ページ目データはバッファ回路BUFへ転送されながらエラー検出訂正回路ECCにて、エラー検出が行われる（Step19）。次に、エラー検出訂正回路ECCエラーがあったかどうかをチェックし（Step20）、エラーが無ければ、バッファ回路BUFへ転送されたＮ+1ページ目データは制御回路RWCLによってキャッシュメモリPL2Bへ転送される。エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った(Step12)後、Ｎページ目データは制御回路RWCLによってキャッシュメモリPL2Aへ転送される(Step22)。
＜書き込み動作＞
図１５は、NANDインターフェースNAND IF1より書き込み要求が発生し、NORインターフェースより読み出し要求が発生した場合の、メモリモジュールMSMのアクセス調停および書き込み動作の一例を示すフローチャートである。
【０２６５】
NANDインターフェースNAND IF1より書き込みアドレスNWADDおよび書き込みデータNWDATAが入力される(Step1)と、書き込みアドレスNWADDはメモリアドレス管理回路MMGへ転送され、書き込みデータNWDATAはライトバッファWBUFへ転送される(Step2)。
【０２６６】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step3）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの書き込み要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step4）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの書き込み要求による動作に戻り、書き込みアドレスNWADDがキャッシュアドレス領域内に存在するかをチェックし（Step5）、アドレス変換回路DSTRにてアドレスNWADDをアドレスMNWADDへ変換する（Step6）。
【０２６７】
アドレスMNWADDとキャッシュメモリL2Cacheのタグアドレスを比較し（Step7）、一致したタグアドレスを無効にする(Step8)。
【０２６８】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step9）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの書き込み要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step10）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの書き込み要求による動作に戻り、ライトバッファWBUFへ保持されている書き込みデータNWDATAをデータレジスタDREGへデータを転送する（Step11）。
【０２６９】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step12）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの書き込み要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step13）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの書き込み要求による動作に戻り、データレジスタDREGへ保持されている書き込みデータNWDATAをメモリセルアレイMARYへ書き込む（Step14）。
【０２７０】
代替処理回路REPは、メモリセルアレイMARYへの書き込みが成功したかどうかをチェックし（Step15）、書き込みが失敗した時には、フラッシュメモリFLASH_CHIPにあらかじめ用意されている代替用の新たなアドレスを準備し（Step16）、このアドレスに対して書き込みを行う(Step14)。書き込みが成功した後、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step17）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの書き込み要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step18）。この読み出し動作が完了したら、最後に、書き込みアドレスNWADDをクリアする。
＜NAND IF1より消去動作＞
図１６は、NANDインターフェースNAND IF1より消去要求が発生し、NORインターフェースより読み出し要求が発生した場合の、メモリモジュールMSMのアクセス調停および消去動作の一例を示すフローチャートである。
【０２７１】
NANDインターフェースNAND IF1よ消去命令と消去アドレスNEADDが入力され,消去アドレスNEADDはメモリアドレス管理回路MMGへ転送される(Step1)。
【０２７２】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step2）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの消去要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step3）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの消去要求による動作に戻り、消去アドレスNWADDがキャッシュアドレス領域内に存在するかをチェックし（Step4）、アドレス変換回路DSTRにてアドレスNEADDをアドレスMNEADDへ変換する（Step5）。
【０２７３】
アドレスMNEADDとキャッシュメモリL2Cacheのタグアドレスを比較し（Step6）、一致したタグアドレスを無効にする(Step7)。
【０２７４】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step8）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの消去要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step９）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの消去要求による動作に戻り、メモリセルアレイMARYを消去する(Step11)。
【０２７５】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step11）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの書き込み要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step12）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの消去要求による動作に戻り、アドレスNEADDが書き込み回数平均化領域内に存在しているかをチェックする(Step13)。アドレスNEADDが書き込み回数平均化領域内に存在している場合は、書き込み回数と消去回数の総和が、書き込み回数平均化回路WLVが保持している書き込み回数と消去回数の総和閾値に到達しているかをチェックし(Step14)、その総和閾値に到達すると書き込み回数平均化回路WLVは、書き換えが集中していると判断し、書き込み回数平均化処理を行う（Step15）。この書き込み回数平均化処理はブロック（６４ページ）ごとに物理アドレスと論理アドレスの対応を変更し、この物理アドレスと論理アドレスの対応情報を保持することである。
【０２７６】
アドレスNEADDが書き込み回数平均化領域内に存在しない場合もしくは、書き込み回数平均化処理が終了した後、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step16）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの消去要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step17）。この読み出し動作が完了したら、最後に、消去アドレスNEADDをクリアする(Step18)。
＜NAND IF1よりリード命令＞
図１７は、NANDインターフェースNAND IF1より読み出し要求が発生し、さらにNORインターフェースより読み出し要求が発生した場合の、メモリモジュールMSMのアクセス調停および読み出し動作の一例を示すフローチャートである。
【０２７７】
NANDインターフェースNAND IF1より読み出し命令と読み出しアドレスNRADDが入力されると(Step1)、
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step2）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの読み出し要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step3）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの読み出し要求による動作に戻り、メモリセルアレイMARYからデータ読み出しデータバッファDREG転送する(Step4)。
【０２７８】
次に、アクセス調停回路ARB はNORインターフェースNOR IFから読み出し要求が入力したかをチェックし（Step5）、読み出し要求が入力した場合は、NANDインターフェースNAND IF1からの読み出し要求による動作を一時停止し、優先的に図２０で示した読み出し動作を行う（Step6）。この読み出し動作が完了したら、NANDインターフェースNAND IF1からの読み出し要求による動作に戻り、データバッファDREGに保持されているデータをバッファ回路BUFへ転送する(step7)。
【０２７９】
データはバッファ回路BUFへ転送されながらエラー検出訂正回路ECCにて、エラー検出が行われる（Step8）。次に、エラー検出訂正回路ECCエラーがあったかどうかをチェックし（Step9）、エラーが無ければ、バッファ回路BUFへ転送されたデータはリードバッファRBUFへ転送される(Step11)。エラーがあればエラー検出訂正回路ECCにてエラー訂正を行った(Step10)後、リードバッファRBUFへ転送される(Step11)。最後に、リードバッファRBUFに保持されているデータはNORインターフェースNOR IFへ読み出される(Step12)。
＜キャッシュロック用 L2Cache構成＞
図１８は、キャッシュロック動作を行うために必要なキャッシュメモリL2Cacheの構成を示す一例である。
【０２８０】
アドレスAdd6, アドレスAdd２およびアドレスAdd０は図８で説明したアドレスと同等である。
【０２８１】
キャッシュメモリL2Cacheの構成は、特に限定しないが、アドレスアレイAddressArrayとデータアレイDataArrayから構成されており、データアレイDataArrayの容量は２５６Ｍバイト、ラインサイズは512バイト、インデックスアドレスIndex2は0から511まであり、セットアソシアティブは4ウェイセットアソシアティブである。また、アドレスアレイAddressArrayはタグアドレスTag2と有効ビットvld、ダーティビットdt、キャッシュロックフラグlckから構成され、データアレイDataArrayは一つのインデックスアドレスに対して512バイトのデータが保持される。
【０２８２】
キャッシュロックアドレス範囲内に存在するタグアドレスのキャッシュロックフラグlckの値は1となり、キャッシュロックアドレス範囲外に存在するタグアドレスのキャッシュロックフラグlckの値は0となる。
【０２８３】
キャッシュロックフラグlckの値が1であるデータはデータ更新の対象外のデータであり、キャッシュロックフラグlckが０にならない限りキャッシュメモリL2Cacheから追い出されることはない。
【０２８４】
キャッシュロックフラグlckが０であるデータはデータ更新の対象となるデータであり、キャッシュメモリL2Cacheから追い出される可能性がある。
＜キャッシュロックフラグ解除＞
図２１は、キャッシュロック解除の一例を示すフローチャートである。NORインターフェースNOR IFより、キャッシュロック領域設定レジスタCaLockRegへキャッシュロック解除命令を書き込む（Step1）と、キャッシュメモリL2Cacheは自らのすべてのキャッシュロックフラグlckを０（Low）にし（Step2）、キャッシュロック領域設定レジスタCaLockRegへ設定されたキャッシュロック範囲アドレスを無効にし（Step3）、最後にキャッシュメモリL2Cacheキャッシュロック解除が完了したことを示すキャッシュロック解除完了信号をHighにする（Step4）。以上の手続きにより、キャッシュロックを行うアドレス範囲が無効になったことが、メモリアドレス管理回路MMGへ入力される。
＜キャッシュロック語の読み出し動作＞
図２０は、キャッシュロックが設定された場合の、キャッシュメモリL2Cache、PL2A、PL2Bの動作の一例について説明するフローチャートである。
【０２８５】
NORインターフェースNOR IFよりメモリモジュールMSMへリード要求とアドレスRADDが入力される（Step1）と、メモリアドレス管理回路MMGはアドレスRADDが、キャッシュロックを行うアドレス範囲内であるかをチェックする（Step2）。アドレスRADDが、キャッシュロックを行うアドレス範囲外であればStep26へ進む。Step26からの動作の詳細は、図２１に示されている。
【０２８６】
また、アドレスRADDが、キャッシュロックを行うアドレス範囲内であれば、キャッシュメモリL2Cacheにてヒット判定を行う（Step3）。
【０２８７】
キャッシュメモリL2Cacheへヒットした場合は、ヒットしたタグアドレスに対応したキャッシュロックフラグがHighになっているかどうかをチェックし（Step4）、キャッシュロックフラグがHighの場合には、キャッシュメモリL2Cacheからデータを出力する（Step24）。キャッシュロックフラグがLowの場合には、このキャッシュロックフラグをHighにし(Step5)、キャッシュメモリL2Cacheからデータを出力する（Step24）。
【０２８８】
キャッシュメモリL2Cacheへミスした場合は、キャッシュメモリPL2AおよびPL2Bへのヒット判定を行い（Step6）、ヒットした場合、キャッシュメモリPL2AおよびPL2BのデータをキャッシュメモリL2Cacheへ転送し、更新する（Step12）。データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。次に、キャッシュロックフラグをHighにし(Step13)、キャッシュメモリPL2AおよびPL2Bを無効化し（Step14）、キャッシュメモリPL2AおよびPL2Bからデータを出力する（Step24）。
【０２８９】
キャッシュメモリPL2AおよびPL2Bにてミスの場合、キャッシュメモリPL2AおよびPL2Bが有効であるかをチェックし(Step7)、有効であれば、現在、キャッシュメモリPL2AおよびPL2Bに存在するデータをキャッシュメモリL2Cacheへ転送し、更新する（Step8）。データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。
【０２９０】
次に、キャッシュロックフラグをHighにし(Step9)、キャッシュメモリPL2AおよびPL2Bを無効化する（Step10）。つぎに、要求データをフラッシュメモリFLASH_CHIPからキャッシュメモリPL2Aへ転送し（Step11）、キャッシュメモリPL2AのデータをキャッシュメモリL2Cacheへ転送し、更新する（Step15）。
【０２９１】
データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。次に、キャッシュロックフラグをHighにし(Step16)、キャッシュメモリPL2Aを無効化し（Step17）、キャッシュメモリPL2Aからデータを出力する（Step24）。これと同時に、先読み機能により、次ページのデータをフラッシュメモリFLASH_CHIPからキャッシュメモリPL2Bへ転送し（Step18）、つぎにキャッシュロックを行うアドレス範囲内であるかをチェックする（Step19）。キャッシュロックを行うアドレス範囲内であれば、キャッシュメモリPL2BのデータをキャッシュメモリL2Cacheへ転送し、更新する（Step20）。データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。次に、キャッシュロックフラグをHighにし(Step21)、キャッシュメモリPL2Bを無効化する（Step22）。キャッシュロックを行うアドレス範囲外であれば、キャッシュメモリPL2Bを有効にする（Step23）。
＜キャッシュロックの読み出し動作＞
図２１は、キャッシュロックが設定され、NORインターフェースNOR IFよりメモリモジュールMSMへ入力されたリード要求とアドレスRADDがキャッシュロックを行うアドレス範囲外である場合のキャッシュメモリL2Cache、PL2A、PL2Bの動作の一例について説明するフローチャートである。
【０２９２】
アドレスRADDが、キャッシュロックを行うアドレス範囲外(Step25)であれば、キャッシュメモリL2Cacheにてヒット判定を行う（Step26）。
【０２９３】
キャッシュメモリL2Cacheへヒットした場合は、ヒットしたタグアドレスに対応したキャッシュロックフラグがLowになっているかどうかをチェックし（Step2７）、キャッシュロックフラグがLowの場合には、キャッシュメモリL2Cacheからデータを出力する（Step41）。キャッシュロックフラグがHighの場合には、エラーを出力する(Step28)。
【０２９４】
キャッシュメモリL2Cacheをミスした場合は、キャッシュメモリPL2AおよびPL2Bへのヒット判定を行い（Step29）、ヒットした場合、キャッシュメモリPL2AあるいはPL2Bからデータを出力する（Step41）。
【０２９５】
キャッシュメモリPL2AおよびPL2Bにてミスの場合、キャッシュメモリPL2AおよびPL2Bが有効であるかをチェックし(Step30)、有効であれば、現在、キャッシュメモリPL2AおよびPL2Bに存在するデータをキャッシュメモリL2Cacheへ転送し、更新する（Step31）。データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。
【０２９６】
次に、キャッシュメモリPL2AおよびPL2Bを無効化する（Step32）。つぎに、要求データをフラッシュメモリFLASH_CHIPからキャッシュメモリPL2Aへ転送し（Step33）、キャッシュメモリPL2Aのデータを有効にする（Step34）。つぎにキャッシュメモリPL2Aからデータを出力する（Step41）。
【０２９７】
Step41と同時に、先読み機能により、次ページのデータをフラッシュメモリFLASH_CHIPからキャッシュメモリPL2Bへ転送し（Step35）、つぎにキャッシュロックを行うアドレス範囲内であるかをチェックする（Step36）。キャッシュロックを行うアドレス範囲内であれば、キャッシュメモリPL2BのデータをキャッシュメモリL2Cacheへ転送し、更新する（Step37）。データを更新する際は、キャッシュロックフラグがLowであるデータに対して、ＬＲＵ方式にて更新を行う。次に、キャッシュロックフラグをHighにし(Step38)、キャッシュメモリPL2Bを無効化する（Step39）。また、キャッシュロックを行うアドレス範囲外であれば、キャッシュメモリPL2Bを有効にする（Step40）。
【実施例２】
【０２９８】
＜複数のメモリバンクをもつFLASH＞
図２２は、本発明に、複数のメモリバンクを持つフラッシュメモリFLASH_CHIP２２を適用した第２の実施形態である。
【０２９９】
情報処理装置CPU_CHIPと、メモリモジュールMSM２２と、ダイナミックランダムアクセスメモリDRAM_CHIPから構成されるメモリシステムを示したものである。
【０３００】
メモリモジュールMSM２２はフラッシュメモリFLASH_CHIP２２と制御回路CT_CHIPから構成される。
【０３０１】
情報処理装置CPU_CHIPと、制御回路CT_CHIPと、ダイナミックランダムアクセスメモリDRAM_CHIPは、それぞれ図１で示したものと同等である。
【０３０２】
制御回路CT_CHIPは、NORインターフェース（NOR IF）からの読み出しおよび書き込み要求を受け取るNORインターフェース回路NRIF、  NANDインターフェース（NAND IF）からの読み出しおよび書き込み要求を受け取るNANDインターフェース回路NDIF、レジスタブロックREG、アドレス変換回路DSTR、キャッシュメモリL2Cache、PL2A、PL2B、プリフェッチ制御回路ＰＲＥＦ、フラッシュ制御回路FLCT、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPから構成される。
【０３０３】
これらNORインターフェース（NOR IF）、NORインターフェース回路NRIF、  NANDインターフェース（NAND IF）、NANDインターフェース回路NDIF、SDRAMインターフェース（SDRAM _IF）、レジスタブロックREG、アドレス変換回路DSTR、キャッシュメモリL2Cache、PL2A、PL2B、プリフェッチ制御回路ＰＲＥＦ、フラッシュ制御回路FLCTP、フラッシュ制御回路FLCT、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPは、それぞれ図１で示したものと同等である。
【０３０４】
フラッシュメモリFLASH_CHIP２２は制御回路FCNT２２と、データバッファDREG0からDREG３と、メモリバンクBANK0からBANK3とから構成される。
【０３０５】
特に限定しないが、データバッファとメモリバンク間のデータ転送に関して、メモリバンクBANK0とデータバッファDREG0間のデータ転送と、モリバンクBANK1とデータバッファDREG1間のデータ転送と、メモリバンクBANK2とデータバッファDREG2間のデータ転送と、モリバンクBANK3とデータバッファDREG3間のデータ転送は、それぞれ独立に行うことができる。
【０３０６】
特に限定しないが、１つのメモリバンクの記憶容量は64Mバイトあり、４つのメモリバンクの記憶容量の総和は256Mバイトとなる。
【０３０７】
また、特に限定しないが、１つのデータバッファのデータサイズは2kバイトあり、４つのデータバッファのデータサイズの総和は８ｋバイトとなる。
【０３０８】
制御回路FCNT２２は、制御回路CT_CHIPからの読み出し及び書き込み命令によって、データバッファDREG0からDREG３とメモリバンクBANK0からBANK3間のデータ転送を制御する回路である。
【０３０９】
フラッシュメモリFLASH_CHIP２２は、ANDインターフェースおよびNANDインターフェースのどちらでも動作可能であり、ここではNANDインターフェースの場合を例に、フラッシュメモリFLASH_CHIP２２の動作を説明する。
【０３１０】
制御回路FCNT２２は、制御回路CT_CHIPのNANDインターフェースNAND IF3からの読み出し及び書き込み命令によって、データバッファDREG0からDREG３とメモリバンクBANK0からBANK3間のデータ転送を制御する回路である。
【０３１１】
制御回路CT_CHIPからのNANDインターフェースNAND IF２２を通じて読み出し要求および読み出しアドレスが制御回路FCNT２２へ入力されると、読み出しアドレスが指定したメモリバンクのデータは、このメモリバンクからのデータ転送に対応しているデータバッファへ転送される。つぎに、NANDインターフェースNAND IF3を通じて制御回路CT_CHIPへ転送される。
【０３１２】
読み出しアドレスでは、メモリバンクの指定に関して、一度に全バンクを指定したり、２つのバンクを指定したり、ひとつずつ独立に指定したりできるので、たとえば、データバッファDREG0からデータを読み出している時に、バックグランドでメモリバンクBANK1からデータバッファDREG１へのデータ転送を行うことで、メモリバンクからデータバッファへのデータ転送時間を隠蔽し、データ転送の高速化が図れる。
【０３１３】
また、データバッファへ転送されたデータはそのまま保持されるため、８ｋバイトのL3キャッシュとして利用でき、さらにデータ転送の高速化が図れる。
【０３１４】
このように、複数のメモリバンクを持つフラッシュメモリFLASH_CHIP２２を適用した場合でも本発明は実現できる。
【実施例３】
【０３１５】
本願発明者等は、本願に先立って携帯電話及びそれに使用されるスタティックランダムアクセスメモリSRAMとフラッシュメモリとが１パッケージに実装されたメモリモジュールの信頼性について検討を行った。
【０３１６】
ソフトエラーは半導体封止材中のウランなどの放射性物質から放出されるα線がスタティックランダムアクセスメモリSRAMのメモリアレイに入射することによって、このメモリアレイに保持されている記憶データが破壊される現象であり、スタティックランダムアクセスメモリSRAMの信頼性を劣化させる要因となっている。また、スタティックランダムアクセスメモリSRAMの記憶容量が大きいほど面積も大きくなるので、α線がスタティックランダムアクセスメモリSRAMへ入射する確立が増え、さらに信頼性を劣化させてしまう。
【０３１７】
ダイナミックランダムアクセスメモリDRAMやスタティックランダムアクセスメモリSRAMなどの揮発性メモリはα線によって信頼性を劣化させてしまうが、フラッシュメモリなどの不揮発性メモリでは、そのメモリアレイ構造からα線の影響を受けないとこが判明した。
【０３１８】
そこで、本発明の目的の１つは、信頼性の高いROMとRAMを含むメモリシステムを提供することである。
【０３１９】
図２３は、本発明の第３の実施形態である。情報処理装置CPU_CHIP２３とメモリモジュールMSM２３と、ダイナミックランダムアクセスメモリDRAM_CHIPとから構成されるメモリシステムを示した実施例である。
【０３２０】
メモリモジュールMSM２３はフラッシュメモリFLASH_CHIPと制御回路CT_CHIP２３とから構成される。
【０３２１】
情報処理装置CPU_CHIPと、フラッシュメモリFLASH_CHIPと、ダイナミックランダムアクセスメモリDRAM_CHIPは、それぞれ図１で示したものと同等である。
【０３２２】
制御回路CT_CHIP２３は、NORインターフェース（NOR IF）からの読み出しおよび書き込み要求を受け取るNORインターフェース回路NRIF、  NANDインターフェース（NAND IF）からの読み出しおよび書き込み要求を受け取るNANDインターフェース回路NDIF、レジスタブロックREG、アドレス変換回路DSTR、パリティチェック回路PRCH、キャッシュメモリL2CacheP、PL2AP、PL2BP、プリフェッチ制御回路ＰＲＥＦ、フラッシュ制御回路FLCTP、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPから構成される。
【０３２３】
NORインターフェース（NOR IF）、NORインターフェース回路NRIF、  NANDインターフェース（NAND IF）、NANDインターフェース回路NDIF、SDRAMインターフェース（SDRAM _IF）、レジスタブロックREG、アドレス変換回路DSTR、プリフェッチ制御回路ＰＲＥＦ、フラッシュ制御回路FLCTP、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPは、それぞれ図１で示したものと同等である。
【０３２４】
パリティチェック回路PRCHは、キャッシュメモリL2CachePから読み出したデータとパリティデータを元にパリティチェックを行う回路である。
【０３２５】
パリティチェックは偶数パリティチェックと奇数パリティチェックがあり、パリティチェック回路PRCHはどちらのパリティチェックも行うことができるが、ここでは偶数パリティチェックを例に説明する。
【０３２６】
キャッシュメモリL2CacheP、PL2APおよびPL2BPは、パリティデータを持つキャッシュメモリであり、それ以外の構成および動作は図１で説明したものと同等である。
【０３２７】
フラッシュ制御回路FLCTPは、パリティデータ生成回路を持つ制御回路であり、これ以外の構成及び動作は図１で説明したものと同等である。
＜L2CachePの動作説明＞
キャッシュメモリL2Cahceからデータを読み出す場合の動作の一例について説明する。
【０３２８】
キャッシュメモリL2Cacheへヒットした場合は、直接、キャッシュメモリL2CahcePからデータとパリティデータを読み出し、パリティチェック回路PRCHにてパリティチェックを行う。
【０３２９】
特に限定しないが、偶数パリティチェックでは、８ビットのデータと、これに対応するパリティビットのHighの数が偶数個かどうかをチェックし、偶数個であった場合は、データは正しく読み出されたと判断し、奇数個の場合は読み出されたデータにエラーが生じたと判断される。
【０３３０】
パリティチェック回路PRCHにてデータが正しく読み出されたと判断されると、NORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【０３３１】
ソフトエラーによってキャッシュメモリL2Cacheのデータが破壊され、読み出されたデータにエラーが生じたと判断された場合は、フラッシュ制御回路FLCTPが、エラーが生じたデータの基データをフラッシュメモリFLASH_CHIPから読み出し、フラッシュエラー制御回路FLSPへ転送する。
【０３３２】
プリフェッチ制御回路ＰＲＥＦは、フラッシュメモリFLASH_CHIP内のデータバッファDREG内にフラッシュ制御回路FLSPへのデータ転送が生じている間に、キャッシュメモリPL2AP及びPL2PBへ保持されているデータをキャッシュメモリL2CachePへ転送し、キャッシュメモリL2Cacheを更新する。この更新では、データと同時にパリティデータの更新を行う。
【０３３３】
フラッシュエラー制御回路FLSPは、フラッシュメモリFLASH_CHIPから転送されたデータに対してエラー検出訂正を行い、回路ECCにて、エラーが無ければ、このデータをキャッシュメモリPL2APへ転送し、エラーがあればエラー訂正を行った後、キャッシュメモリPL2APへ転送する。また、フラッシュエラー制御回路FLSPは、このキャッシュメモリPL2APへのデータ転送の際には、特に限定しないが、８ビットのデータに対して１ビットのパリティデータを生成し、パリティデータも同時に、キャッシュメモリPL2APへ転送する。特に限定しないが、偶数パリティでは、8ビットのデータのうち、Highのビットが奇数個存在した場合、パリティデータはHighとなり、Highのビットを偶数個にする。また、8ビットのデータのうち、Highのビットが偶数個存在した場合、パリティデータはLowとなり、Highのビットを偶数個にする。
【０３３４】
キャッシュメモリPL2APへ転送されたデータは、パリティチェック回路PRCHにてパリティチェックを行われる。特に限定しないが、偶数パリティチェックでは、８ビットのデータと、これに対応するパリティビットのHighの数が偶数個かどうかをチェックし、偶数個であった場合は、データは正しく読み出されたと判断し、奇数個の場合は読み出されたデータにエラーが生じたと判断される。
【０３３５】
パリティチェック回路PRCHにてデータが正しく読み出されたと判断されると、NORインターフェース回路NRIFを通じてNORインターフェースNOR IFより情報処理装置CPU_CHIPへ出力される。
【０３３６】
読み出されたデータにエラーが生じた判断された場合は、再度フラッシュメモリからデータ読み出す。
【０３３７】
このように、ソフトエラーによってキャッシュメモリL2Cacheのデータが破壊され、パリティチェック回路PRCHによって読み出されたデータにエラーが生じたと判断された場合は、フラッシュメモリFLASH_CHIPからデータを読み出すことによって、ソフトエラーによる信頼性の劣化を防ぐことができる。
【実施例４】
【０３３８】
＜DRAMがMCP内＞
図２４は本発明を適用した別の実施の形態例である。情報処理装置CPU_CHIPとメモリモジュールMSM２４とから構成されるメモリシステムを示したものである。
【０３３９】
メモリモジュールMSM２４は、フラッシュメモリFLASH_CHIPと制御回路CT_CHIPと、ダイナミックランダムアクセスメモリDRAM_CHIPとから構成される。
【０３４０】
特に限定しないが、フラッシュメモリFLASH_CHIPとして用いられる典型的なフラッシュメモリはNANDインターフェースを装備している大容量フラッシュメモリであり、本実施の形態例ではANDインターフェースを装備している大容量フラッシュメモリを適用している例である。
【０３４１】
ダイナミックランダムアクセスメモリDRAM_CHIPは内部構成やインターフェースの違いから、EDO（Extended Data Out）、SDRAM（Synchronous DRAM）、DDR（Double Data Rate）等様々な種類がある。メモリモジュールMSM２４には、いずれのDRAMでも用いることができる。本実施の形態例ではSDRAMを例に説明する。
【０３４２】
制御回路CT_CHIPは、NORインターフェースNOR  IFと、NANDインターフェースNAND IFを装備しており、フラッシュメモリFLASH＿CHIPと情報処理CPU_CHIPとの間のデータ転送を制御する回路であり、それそれは、図１で示したものと同等である。
【０３４３】
また、ダイナミックランダムアクセスメモリDRAM_CHIPは、メモリモジュールMSM２４へ搭載されており、SDRAMインターフェースSDRAM IFにて情報処理装置CPU_CHIPと直接、データ転送を行う構成になっているため、NORインターフェース、NANDインターフェースおよびSDRAMインターフェースを装備したメモリモジュールMSM２４は、図１に示した本発明を実現することができる。
【０３４４】
このように、ダイナミックランダムアクセスメモリDRAM_CHIPをメモリモジュールに内蔵することによって、装置の小型化を可能とし、本発明を実現できる。
【実施例５】
【０３４５】
＜ハードディスク＞
図２５は本発明を適用した第５の形態例である。
【０３４６】
情報処理装置CPU_CHIPとメモリモジュールMSM２５と、ダイナミックランダムアクセスメモリDRAM_CHIPから構成されるメモリシステムを示したものである。
メモリモジュールMSM２５はハードディスクHDiskと制御回路CT_CHIP２５から構成される。
【０３４７】
情報処理装置CPU_CHIPと、ダイナミックランダムアクセスメモリDRAM_CHIPは、それぞれ図１で示したものと同等である。
【０３４８】
本実施例は、フラッシュメモリの代わりにハードディスクHDiskを適用した一例である。
【０３４９】
ハードディスクHDiskは、フラッシュメモリFLASH_CHIPより大容量かつ低コストを実現できるメモリである。ハードディスクHDiskからデータを読み出すためのインターフェースには、IDE、ATAおよびUltraATAなどがあるが、本実施例ではUltraATAを一例にあげているがIDE、ATAなどを適用できることは言うまでもない。
【０３５０】
データの読み出し単位や、アドレス管理方法や、エラー検出訂正方法に関していえば、もともとハードディスクで実現していたデータの読み出し単位や、アドレス管理方法や、エラー検出訂正方法などをフラッシュメモリが引き継いでおり、フラッシュメモリの代わりにハードディスクHDiskを用いることができる。
【０３５１】
制御回路CT_CHIP２５は、NORインターフェース（NOR IF）からの読み出しおよび書き込み要求を受け取るNORインターフェース回路NRIF、  NANDインターフェース（NAND IF）からの読み出しおよび書き込み要求を受け取るNANDインターフェース回路NDIF、レジスタブロックREG、アドレス変換回路DSTR、キャッシュメモリL2Cache、PL2A、PL2B、プリフェッチ制御回路ＰＲＥＦ、ハードディスク制御回路FLCT２５、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPから構成される。
【０３５２】
NORインターフェース（NOR IF）、NORインターフェース回路NRIF、  NANDインターフェース（NAND IF）、NANDインターフェース回路NDIF、SDRAMインターフェース（SDRAM _IF）、レジスタブロックREG、アドレス変換回路DSTR、キャッシュメモリL2Cache、PL2AおよびPL2B、プリフェッチ制御回路ＰＲＥＦ、バッファ回路ＢＦＢＫ、フラッシュエラー制御回路FLSPは、それぞれ図１で示したものと構成および動作は同等である。
【０３５３】
ハードディスク制御回路FLCT２５は、クロック制御回路ＯＳＣ、メモリアドレス管理回路ＭＭＧ、アクセス調停回路ＡＲＢ、制御回路HRWCLから構成される。
【０３５４】
クロック制御回路ＯＳＣ、メモリアドレス管理回路ＭＭＧ、アクセス調停回路ＡＲＢは、それぞれ図１で示したものと構成および動作は同等である。また、制御回路HRWCLは、図１で示した制御回路RWCLへ、UハードディスクHDiskからデータを読み出すため、UltraATAインターフェースを装備した制御回路であり、ハードディスクHDiskからデータを読み出した後の動作は図1で示した制御回路RWCLと同等である。したがって、ハードディスクHDiskを適用し、本発明が実現できることがわかる。
【０３５５】
以上説明したように、ハードディスクHDiskを利用することによって、より大容量かつ低コストのメモリシステムを実現することができる。
【実施例６】
【０３５６】
図２６は本発明における第６の実施の形態例を示したものである。図２６（ａ）は上面図であり、図２６（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【０３５７】
本実施の形態のマルチチップ・モジュールは、ボールグリッドアレイ(BGA)に
よって装置に実装する基盤(例えばガラスエポキシ基板でできたプリント回路ボード)PCB上に、CHIPM1、CHIPM2が搭載されている。CHIPM1は不揮発性メモリで、CHIPM2はDRAMである。
【０３５８】
本マルチチップ・モジュールにより、図１で示すメモリモジュールMSMおよび、図２２で示すメモリモジュールMSM２２を１つの封止体に集積できる。
【０３５９】
CHIPM1と基盤PCB上のボンディングパットはボンディングワイヤ(PATH2)で接続され、CHIPM2と基盤PCB上のボンディングパットはボンディングワイヤ(PATH1)で接続されている。CHIPM1とCHIPM2はボンディングワイヤ(PATH３)で接続される。
【０３６０】
チップの搭載された基盤PCBの上面は樹脂モールドが行われて各チップと接続配線を保護する。なお、さらにその上から金属、セラミック、あるいは樹脂のカバー(COVER)を使用しても良い。
【０３６１】
本実施の形態例ではプリント回路ボードPCB上にベアチップを直接搭載するため、実装面積の小さなメモリモジュールを構成することができる。また、各チップを積層することができるため、チップと基盤PCB間の配線長を短くすることができ、実装面積を小さくすることができる。チップ間の配線及び各チップと基盤間の配線をボンディングワイヤ方式で統一することによって少ない工程数でメモリモジュールを製造することができる。
【０３６２】
さらにチップ間をボンディングワイヤで直接配線することによって基盤上のボンディングパット数とボンディングワイヤの本数を削減して少ない工程数でメモリモジュールを製造することができる。樹脂のカバーを使用した場合には、より強靭なメモリモジュールを構成することができる。セラミックや金属のカバーを使用した場合には、強度のほか、放熱性やシールド効果に優れたメモリモジュールを構成することができる。
【実施例７】
【０３６３】
図２７は本発明における第６の実施の形態例を示したものである。図２７（ａ）は上面図であり、図２７（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【０３６４】
本実施の形態のマルチチップ・モジュールは、ボールグリッドアレイ(BGA)によって装置に実装する基盤(例えばガラスエポキシ基板でできたプリント回路ボード)PCB上に、CHIPM1、CHIPM2、CHIPM3が搭載されている。CHIPM1は不揮発性メモリ、CHIP2MはDRAMである。CHIP3Mは、中央演算装置CPUとNORコントローラNRCとDRAMコントローラSDCとから構成される情報処理装置、あるいはCHIP1MとCHIP2Mのデータ転送を制御する制御回路である。
【０３６５】
本マルチチップ・モジュールにより、図２４で示すメモリモジュールMSM２４を１つの封止体に集積できる。
【０３６６】
CHIPM1と基盤PCB上のボンディングパットはボンディングワイヤ(PATH2)で接続され、CHIPM2と基盤PCB上のボンディングパットはボンディングワイヤ(PATH1)で接続されている。CHIPM1とCHIPM2はボンディングワイヤ(PATH３)で接続される。また、CHIP3Ｍの実装および配線にボールグリッドアレイが用いられている。
【０３６７】
本実装方法では３チップを積層することができるので実装面積を小さく保つことができる。さらに、CHIPM3と基盤間とのボンディングは不要となりボンディング配線の本数を削減することができるため組み立て工数を削減できる上、より信頼性の高いマルチチップモジュールが実現できる。
【０３６８】
図２７は本発明に係るマルチチップ・モジュールの第８の実施の形態例を示したものである。図２７（ａ）は上面図であり、図２７（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【実施例８】
【０３６９】
図２８は本発明に係るマルチチップ・モジュールの第７の実施の形態例を示したものである。図２８（ａ）は上面図であり、図２８（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【０３７０】
本実施の形態のメモリモジュールは、ボールグリッドアレイ(BGA)によって装置に実装する基盤(例えばガラスエポキシ基板でできたプリント回路ボード)PCB上に、CHIPM1、CHIPM2、CHIPM3、CHIPM4が搭載されている。CHIPM1は不揮発性メモリ、CHIPM3はDRAMである。CHIPM2はCHIPM1とCHIPM2のデータ転送を制御する制御回路であり、CHIPM4は中央演算装置CPUとNORコントローラNRCとDRAMコントローラSDCとから構成される情報処理装置である。
【０３７１】
本実装方法では、  図１で示すメモリシステム、  図２２で示すメモリシステムモジュール、  図２３で示すメモリシステムおよび図２４で示すメモリシステムを１つの封止体に集積できる。
【０３７２】
CHIPM1と基盤PCB上のボンディングパットはボンディングワイヤ(PATH2)で接続され、CHIPM2と基盤PCB上のボンディングパットはボンディングワイヤ(PATH４)で接続され、CHIPM３と基盤PCB上のボンディングパットはボンディングワイヤ(PATH１)で接続されている。
【０３７３】
CHIPM1とCHIPM３はボンディングワイヤ(PATH３)で接続され、CHIPM2とCHIPM3はボンディングワイヤ(PATH５)で接続される。
【０３７４】
CHIPM4の実装および配線にボールグリッドアレイ（BGA）が用いられている。
【０３７５】
本実装方法ではプリント回路ボードPCB上にベアチップを直接搭載するため、実装面積の小さなメモリモジュールを構成することができる。また、各チップを近接して配置することができるため、チップ間配線長を短くすることができる。
【０３７６】
チップ間をボンディングワイヤで直接配線することによって基盤上のボンディングパット数とボンディングワイヤの本数を削減して少ない工程数でメモリモジュールを製造することができる。
【０３７７】
さらに、CHIPM４と基盤間とのボンディングは不要となりボンディング配線の本数を削減することができるため組み立て工数を削減できる上、より信頼性の高いマルチチップモジュールが実現できる。
【実施例９】
【０３７８】
図２９は本発明に係るメモリシステムの第９の実施の形態例を示したものである。図２９（ａ）は上面図であり、図２９（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【０３７９】
本実施の形態のメモリモジュールは、ボールグリッドアレイ(BGA)によって装置に実装する基盤(例えばガラスエポキシ基板でできたプリント回路ボード)PCB上に、CHIPM1、CHIPM2、CHIPM3が搭載されている。CHIPM1は不揮発性メモリ、CHIPM2およびCHIPM3はDRAMである。チップ間の配線及び各チップと基盤間の配線をボンディングワイヤ方式で統一することによって少ない工程数でメモリモジュールを製造することができる。本実装方法では、  図２４で示すモジュールMSM２４を１つの封止体に集積できる。
【０３８０】
CHIPM1と基盤PCB上のボンディングパットはボンディングワイヤ(PATH2)で接続され、CHIPM2と基盤PCB上のボンディングパットはボンディングワイヤ(PATH１)で接続され、CHIPM３と基盤PCB上のボンディングパットはボンディングワイヤ(PATH３)で接続されている。
【０３８１】
本実施の形態例ではプリント回路ボードPCB上にベアチップを直接搭載するため、実装面積の小さなメモリモジュールを構成することができる。また、各チップを近接して配置することができるため、チップ間配線長を短くすることができる。
【０３８２】
各チップと基盤間の配線をボンディングワイヤ方式で統一することによって少ない工程数でメモリモジュールを製造することができる。
【実施例１０】
【０３８３】
図３０は本発明に係るメモリシステムの第９の実施の形態例を示したものである。図３０（ａ）は上面図であり、図３０（ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。
【０３８４】
本実施の形態のメモリモジュールは、ボールグリッドアレイ(BGA)によって装置に実装する基盤(例えばガラスエポキシ基板でできたプリント回路ボード)PCB上に、CHIPM1、CHIPM2、CHIPM3、CHIPM4が搭載されている。CHIPM1は不揮発性メモリ、CHIPM2およびCHIPM3はDRAMである。CHIPM4は中央演算装置CPUとNORコントローラNRCとDRAMコントローラSDCとから構成される情報処理装置である。
【０３８５】
本実装方法では、図１で示すメモリシステム、図２２で示すメモリシステム、図２３で示すメモリシステムおよび図２４で示すメモリシステムを図１で示すメモリシステム、を１つの封止体に集積できる。
【０３８６】
CHIPM1と基盤PCB上のボンディングパットはボンディングワイヤ(PATH2)で接続され、CHIPM2と基盤PCB上のボンディングパットはボンディングワイヤ(PATH１)で接続され、CHIPM３と基盤PCB上のボンディングパットはボンディングワイヤ(PATH３)で接続されている。CHIPM4の実装および配線にボールグリッドアレイ（BGA）が用いられている。
【０３８７】
本実施の形態例ではプリント回路ボードPCB上にベアチップを直接搭載するため、実装面積の小さなメモリモジュールを構成することができる。また、各チップを近接して配置することができるため、チップ間配線長を短くすることができる。CHIPM４と基盤間とのボンディングは不要となりボンディング配線の本数を削減することができるため組み立て工数を削減できる上、より信頼性の高いマルチチップモジュールが実現できる。
【実施例１１】
【０３８８】
図３１に、本発明に係るメモリモジュールを利用した携帯電話機の第１０の実施の形態例を示す。携帯電話は、アンテナANT、無線ブロックRF、ベースバンドブロックBB、音声コーデックブロックSP、スピーカーSK、マイクロホンMK、プロセッサCPU、ダイナミックランダムアクセスメモリDRAM、液晶表示部LCD、キーボードKEYおよび本発明のメモリモジュールMSMで構成される。
【０３８９】
通話時の動作を説明する。
【０３９０】
アンテナANTを通って受信された音声は無線ブロックRFで増幅され、ベースバンドブロックBBへ入力される。ベースバンドブロックBBでは、音声のアナログ信号をデジタル信号に変換し、エラー訂正と復号処理おこない、音声コーデックブロックSPへ出力する。音声コーデックブロックがデジタル信号をアナログ信号に変換しスピーカーSKに出力すると、スピーカーから相手の声が聞こえる。
【０３９１】
携帯電話機から、インターネットのホームページにアクセスし、音楽データをダウンロードし、再生して聞き、最後にダウンロードした音楽データを保存するという一連の作業を行うときの動作を説明する。
【０３９２】
メモリモジュールMSMには、基本プログラム、アプリケーションプログラム（メール、Webブラウザ、音楽再生プログラム、動作再生プログラム、ゲームプログラムなど）、音楽データ、静止画データ、動画データなどが格納されている。
【０３９３】
キーボードより、Webブラウザの起動を指示すると、メモリモジュールMSM内のFLASHに格納されているWebブラウザのプログラムが、同じメモリモジュール内のキャッシュメモリへと転送される。キャッシュへの転送が終了するとプロセッサCPUはDRAM内のWebブラウザのプログラムを実行し、液晶表示LCDにWebブラウザが表示される。所望のホームページにアクセスし、気に入った音楽データのダウンロードをキーボードKEYより指示すると、音楽データは、アンテナANTを通って受信され、無線ブロックRFで増幅され、ベースバンドブロックBBへ入力される。ベースバンドブロックBBでは、アナログ信号である音楽データをデジタル信号に変換し、エラー訂正と復号処理おこなう。デジタル信号化された音楽データはDRAMへ一旦、保持され、最終的に、メモリモジュールMSMのFLASHへと転送され格納される。
【０３９４】
次に、キーボードKEYより、音楽再生プログラムの起動を指示するとメモリモジュールMSM内のFLASHに格納されている音楽再生プログラムが、同じメモリモジュール内のキャッシュメモリへと転送される。キャッシュメモリへの転送が終了するとプロセッサCPUはキャッシュメモリ内の音声再生プログラムを実行し、液晶表示LCDに音楽再生プログラムが表示される。
【０３９５】
キーボードKEYより、FLASHへダウンロードした音楽データを聞くための指示を行うと、プロセッサCPUは音楽再生プログラムを実行し、FLASHに保持している音楽データを処理し、最終的にスピーカーSKから音楽が聞こてくる。
【０３９６】
このとき、本発明のメモリモジュールは大容量のキャッシュメモリを用いているため、Webブラウザと音楽再生プログラムはキャッシュメモリに保持されており、どちらのプログラムもCPUによって同時に実行されている。さらに、電子メールプログラムを起動し、電子メールプログラム、メールの送受信も同時にできる。
【０３９７】
Webのブラウザを停止した場合でも、メモリモジュール内のキャッシュメモリには保持しているため、再起動時はすぐに起動することができる。
【０３９８】
キーボードより電源遮断の指示が入力されると、メモリモジュールは、キャッシュメモリのみ動作させ、最低限のデータ時保持を行い、消費電力を極端に小さくできる。
【０３９９】
このように、本発明に係るメモリモジュールを用いることにより、大量のメール、音楽再生、アプリケ-ションプログラムや音楽データ、静止画像データ、動画データなどを格納でき、さらに複数のプログラムを同時に実行できる。
【実施例１２】
【０４００】
図３２に、本発明に係るメモリシステムを利用した携帯電話機の第１２の実施の形態例を示す。携帯電話は、アンテナANT、無線ブロックRF、ベースバンドブロックBB、音声コーデックブロックSP、スピーカーSK、マイクロホンMK、プロセッサCPU、液晶表示部LCD、キーボードKEYおよび、プロセッサCPUと、ダイナミックランダムアクセスメモリDRAMと、メモリモジュールMSMを１つの封止体に集積した本発明のメモリシステムSLPで構成される。
【０４０１】
本発明のメモリシステムSLでを用いることによって、部品点数を削減できるため、低コスト化ができ、携帯電話の信頼性が向上する、携帯電話機を構成する部品の実装面積を小さくでき、携帯電話小型化ができる。
【０４０２】
以上説明したように本明細書に開示される発明によって得られる主な効果は以下の通りである。
【０４０３】
第１に、電源投入時にブートプログラムをFLASHからキャッシュメモリへ自動転送することで、携帯機器は、キャッシュメモリのブートプログアムを読み出し、すばやくが立ちあがることができる。
【０４０４】
第２に、電源投入時に必要なプログラムをFLASHからキャッシュメモリへ自動転送することで、携帯機器が立ちあがった時点ですぐに本メモリモジュールへアクセスすることができるため携帯機器の高性能化が図れる。
【０４０５】
第３に、本発明に係るメモリシステムを適用したメモリモジュールではFLASHのデータはキャッシュメモリ内に転送及び保持され、携帯機器は、直接キャッシュメモリへアクセスでき、高速データ転送を実現できる。
【０４０６】
第４に、本発明に係るメモリシステムを適用したメモリモジュールではデータの先読み機能を持ち、次に利用されるデータを、あらかじめ、前もってキャッシュメモリへ転送することで、キャッシュメモリへヒット率を向上させ、データ転送を高速化できる。
【０４０７】
第５に、本発明に係るメモリシステムを適用したメモリモジュールでは、フラッシュメモリ内のデータレジスタをキャッシュメモリとして利用することができ、キャッシュメモリの容量を実効的に増やすことでヒット率を向上させ、データ転送を高速に行うことができる。
【０４０８】
第６に、本発明に係るメモリシステムを適用したメモリモジュールでは、アドレス変換を行いキャッシュメモリのインデックスアドレスを分散させ、キャッシュメモリの利用率を高めることで、ヒット率が向上させ、データ転送を高速化できる。
【０４０９】
第７に、フラッシュメモリへの書き込みが行われている場合でも、キャッシュメモリからデータを読み出すことができるため携帯機器の高速化が図れる。
【０４１０】
第８に、同期型および非同期型インターフェースやアドレス変換方式、キャッシュ領域および非キャッシュ領域、キャッシュロック領域および非キャッシュロック領域、書き込み回数平均化処理領域および非書き込み回数平均化処理領域、ライトプロテクト領域および非ライトプロテクト領域は、それぞれ独立に設定することができ、システムにあわせて利用者側で自由に選択できる。
【０４１１】
第９に、本メモリモジュールの内部で、FALSHからの読み出し時は、エラー検出と訂正を行い、書きこみ時は、書きこみが正しく行われなかった不良アドレスに対して代替処理を行うため、処理が高速にでき、かつ信頼性を保つことができる。
【０４１２】
第１０に、本メモリモジュールの内部で、キャッシュメモリの読み出し時は、エラー検出を行い、エラーの場合は、フラッシュメモリからデータ読み出しを行うため、処理が高速にでき、かつ信頼性を保つことができる。
【０４１３】
第１１に、本メモリモジュールの内部で、フラッシュメモリの書き込み平均化処理を行うため、処理が高速にでき、かつ信頼性を保つことができる。
【０４１４】
第１２に、一般的なインターフェースであるNORインターフェースや、NANDインターフェースおよびANDインターフェースを通じてブートプログラムや自動転送領域指定データをFLASHの初期プログラム領域へ書き込み、電源投入直後のブート方法やデータ転送領域を変えることができるため、携帯機器の要求に応じて柔軟に対応でき、高機能化が図れる。
【０４１５】
第１３に、複数の半導体チップを一つの封止体に実装することによって実装面積の小さなシステムメモリ・モジュールを提供できる。
【図面の簡単な説明】
【０４１６】
【図１】本発明を適用したメモリシステムの構成図。
【図２】本発明を適用したメモリシステムのアドレスマップの一例を示す説明図。
【図３】本発明を適用したメモリシステムのレジスタブロックの一例を示す説明図。
【図４】本発明を適用したメモリシステムの電源投入時の動作の一例を示す図。
【図５】本発明を適用したメモリシステムのアドレス変換およびキャッシュメモリの一例を示す図。
【図６】本発明を適用したメモリシステムのアドレス変換およびキャッシュメモリの一例を示す図。
【図７】本発明を適用したメモリシステムのアドレス変換の一例を示す図。
【図８】本発明を適用したメモリシステムのキャッシュメモリの一例を示す図。
【図９】本発明を適用したメモリシステムのキャッシュメモリのデータ更新の一例を示す図。
【図１０】本発明を適用したメモリシステムのキャッシュメモリのデータ更新の一例を示す図。
【図１１】本発明を適用したメモリシステムのレジスタブロックへの設定方法の一例を示す図。
【図１２】本発明を適用したメモリシステムのレジスタブロックへの設定方法の一例を示す図。
【図１３】本発明を適用したメモリシステムのレジスタブロックへの設定方法の一例を示す図。
【図１４】本発明を適用したメモリシステムのデータ読み出し動作の流れの一例を示すフローチャート。
【図１５】本発明を適用したメモリシステムのデータ書込み動作の流れの一例を示すフローチャート。
【図１６】本発明を適用したメモリシステムのデータ消去動作の流れの一例を示すフローチャート。
【図１７】本発明を適用したメモリシステムの読み出し動作の流れの一例を示すフローチャート。
【図１８】本発明を適用したメモリシステムのキャッシュメモリの一例を示す図。
【図１９】本発明を適用したメモリシステムのキャッシュロック解除方法の一例を示す図。
【図２０】本発明を適用したメモリシステムのデータ読み出し動作の流れの一例を示すフローチャート。
【図２１】本発明を適用したメモリシステムのデータ読み出し動作の流れの一例を示すフローチャート。
【図２２】本発明を適用したメモリシステムの構成図。
【図２３】本発明を適用したメモリシステムの構成図。
【図２４】本発明を適用したメモリシステムの構成図。
【図２５】本発明を適用したメモリシステムの構成図。
【図２６】本発明によるメモリシステムの実装形態の一例を示す図。
【図２７】本発明によるメモリシステムの実装形態の一例を示す図。
【図２８】本発明によるメモリシステムの実装形態の一例を示す図。
【図２９】本発明によるメモリシステムの実装形態の一例を示す図。
【図３０】本発明によるメモリシステムの実装形態の一例を示す図。
【図３１】本発明によるメモリシステムを利用した携帯電話の構成例を示すブロック図。
【図３２】本発明によるメモリシステムを利用した携帯電話の構成例を示すブロック図。
【図３３】携帯電話に利用されている従来のメモリ構成例を示すブロック図。
【符号の説明】
【０４１７】
CPU_CHIP…情報処理装置、CPU…情報演算装置、MSM…メモリモジュール、NRC…NORフラッシュコントローラ、NDC…NANDフラッシュコントローラ、SDC…DRAMコントローラ、NOR IF…NORインターフェース、NAND IF1、NAND_IF2…NANDインターフェース、SDRAM IF…SDRAMインターフェース、NRIF…NORインターフェース回路、NDIF…NANDインターフェース回路、CT_CHIP…制御回路、REG…レジスタブロック
DSTR…アドレス変換回路、L2Cache…キャッシュメモリ、PL2A…キャッシュメモリ、PL2B…キャッシュメモリ、PREF…プリフェッチ制御回路、PL2Hit…ヒット判定回路、L3Hit…ヒット判定回路、PRECT…先読み指示回路、FLCT…フラッシュ制御回路、  OSC…クロック制御回路、MMG…メモリアドレス管理回路、ARB…アクセス調停回路、RWCL…制御回路、FLSP…フラッシュエラー制御回路、ECC…エラー検出訂正回路、BUF…バッファ回路、REF…代替処理回路、WLV…書き込み回数平均化回路、
FLASH_CHIP…フラッシュメモリ、FCNT…制御回路、DREG…データバッファ、MARY…メモリセルアレイ、DRAM_CHIP…ダイナミックランダムアクセスメモリ、CLK…クロック信号、Wait…ウエィト信号、PCMP…初期動作完了信号、MSM２２…メモリモジュール、FLASH_CHIP２２…フラッシュメモリ、FCNT２２…制御回路、DREG０，１，２，３…データバッファ、BANK０，１，２，３…メモリバン、NAND IF２２…NANDインターフェース、MSM２３…メモリモジュール、CT_CHIP２３…制御回路、
FLCTP…フラッシュ制御回路、L2CacheP、PL2AP、PL2BP…キャッシュメモリ、MSM２４…メモリモジュール、MSM２５…メモリモジュール、FLCT２５…フラッシュ制御回路、CT_CHIP２５…制御回路、HRWCL…制御回路、HDisk…ハードディスク、MAIN…メイン領域、REPAREA…代替領域、NONCAREA…非キャッシュ領域、CAREA…キャッシュ領域、WLVL…書き込み回数平均化処理領域、NONWLVL…非書き込み回数平均化処理領域、CALOCK…キャッシュロック領域、UNCALOCK…非キャッシュロック領域、WPRO…ライトプロテクト領域、NONWPRO…非ライトプロテクト領域、WPRO…ライトプロテクト領域、NONWPRO…非ライトプロテクト領域、InitProg…初期プログラム領域、AREA-A…メイン領域内領域、AREA-B…メイン領域内領域、AREA-C…メイン領域内領域、AREA-D…メイン領域内領域、RModeReg…読み出しモード設定レジスタ、CAreaReg…キャッシュ領域設定レジスタ、CaLockReg…キャッシュロック領域設定レジスタ、WproReg…ライトプロテクト領域設定レジスタ、WlvlReg…書き込み回数平均化処理領域設定レジスタ、PWON…電源投入期間、RESET…リセット期間、InitLoad…初期ロード期間、AutoLoad…初期プログラム転送期間、IDLE…アイドル期間、NRAD…NORインターフェースからのアドレス信号、Tag2…タグアドレス、Index2…インデックスアドレス、Line2…ラインサイズ、vld…データバリッドビット信号、dt…ダーティビット信号、lck…キャッシュロックビット信号、
LRU…キャッシュデータ更新順序指定信号、AddressArray…キャッシュ・タグアドレスアレイ、DataArray…キャッシュ・データアレイ、COMP…比較回路、SEL…選択回路、CHIPM1、CHIPM2、CHIP3M、CHIP4M…半導体チップ、PCB…プリント回路基板、COVER…モジュールの封止カバー、PATH1〜PATH5…ボンディング配線、ANT…アンテナ、RF…無線ブロック、BB…ベースバンドブロック、SP…音声コーデックブロック、SK…スピーカー、MK…マイクロホン、CPU…プロセッサ、DRAM…ダイナミックランダムアクセスメモリ、LCD…液晶表示部、KEY…キーボード、MSM…メモリモジュール、SLP…プロセッサCPUとメモリモジュールMSMと、ダイナミックランダムアクセスメモリDRAMを１つの封止体に集積したモジュール、PRC…情報処理装置、MCM…メモリモジュール、CPU…中央演算装置、SRC…メモリコントローラ、
NOR FLASH…NOR型フラッシュメモリ、SRAM…スタティックランダムアクセスメモリ。
【図１】
2006323739.tif 000003
【図２】
2006323739.tif 000004
【図３】
2006323739.tif 000005
【図４】
2006323739.tif 000006
【図５】
2006323739.tif 000007
【図６】
2006323739.tif 000008
【図７】
2006323739.tif 000009
【図８】
2006323739.tif 000010
【図９】
2006323739.tif 000011
【図１０】
2006323739.tif 000012
【図１１】
2006323739.tif 000013
【図１２】
2006323739.tif 000014
【図１３】
2006323739.tif 000015
【図１４】
2006323739.tif 000016
【図１５】
2006323739.tif 000017
【図１６】
2006323739.tif 000018
【図１７】
2006323739.tif 000019
【図１８】
2006323739.tif 000020
【図１９】
2006323739.tif 000021
【図２０】
2006323739.tif 000022
【図２１】
2006323739.tif 000023
【図２２】
2006323739.tif 000024
【図２３】
2006323739.tif 000025
【図２４】
2006323739.tif 000026
【図２５】
2006323739.tif 000027
【図２６】
2006323739.tif 000028
【図２７】
2006323739.tif 000029
【図２８】
2006323739.tif 000030
【図２９】
2006323739.tif 000031
【図３０】
2006323739.tif 000032
【図３１】
2006323739.tif 000033
【図３２】
2006323739.tif 000034
【図３３】
2006323739.tif 000035