(57)【要約】装置は、メモリーセルの行と列とを有するマトリックス（１０）のメモリを備える。読み出しアクセス回路（１４，１６，１８）は、メモリーセルの行からのデータを備える検索単位を、マトリックス（１０）から読み出し、該検索単位からのデータを出力するための読み出し命令を実行する。読み出しアクセス回路（１４，１６，１８）に結合した処理回路（１２）は、読み出し命令を出し、エクストラデータ（２４）を受信し、エクストラデータ（２４）のみに対するエラー検出を実行し、エクストラデータをコード化するエラー検出コードを使用し、エラー検出がエクストラデータ（２４）内のエラーを示す場合に検索単位をコード化するエラー訂正コードによって、ペイロードデータ（２２）を含む検索単位からのデータを用いて、エクストラデータ（２４）からのデータに対するエラー訂正を条件つきで実行するエクストラ読み出し操作を実行するように構成される。処理回路（１２）は、エラー検出がエクストラデータ（２２）内のエラーを示すかどうかにより、エクストラデータ（２２）または修正エクストラデータからのデータを用いて、更なる処理を実行する。
2009529172.tif 000002
【特許請求の範囲】
【請求項１】
メモリーセルの行及び列を有するマトリックスを備えるメモリと、
前記マトリックスのメモリーセルの行からのデータを備える検索単位を読み出し、該検索単位からのデータを出力するための読み出し命令を実行するように構成された読み出しアクセス回路であって、前記検索単位内の前記データが、ペイロードデータおよび該ペイロードデータ用のアドレス空間の外側のアドレス指定可能なエクストラデータを備える読み出しアクセス回路と、
前記読み出しアクセス回路に結合し、前記読み出し命令を出し、前記エクストラデータを受信して前記エクストラデータのみに対するエラー検出を実行し、前記エクストラデータをコード化するエラー検出コードを使用し、前記エラー検出が前記エクストラデータ内のエラーを示す場合に前記検索単位をコード化するエラー訂正コードに従って、前記ペイロードデータを含む前記検索単位からのデータを用いて前記エクストラデータからのデータに対するエラー訂正を条件つきで実行することを備えるエクストラ読み出し処理を実行するように構成された処理回路であって、前記エラー検出が前記エクストラデータ内のエラーを示すかどうかに応じて、前記エクストラデータまたは修正エクストラデータからのデータを用いて更なる処理を実行するように構成された処理回路とを備えることを特徴とする装置。
【請求項２】
前記読み出しアクセス回路が、前記検索単位を読み出し、前記読み出し命令に応じて前記検索単位からのデータを連続的に出力するように構成され、また前記処理回路が、前記読み出し命令に応じて前記ペイロードデータの前に少なくとも部分的に出力され、前記エラー検出が前記エクストラデータ内のエラーの不存在を示す場合に前記出力を終了させる前記エクストラデータを、前記検索単位の一部分から得るように構成される請求項１に記載の装置。
【請求項３】
前記読み出しアクセス回路が、前記ペイロードデータをペイロードデータ処理のために必要とされる際に、前記ペイロードデータ及びエクストラデータを読み出し、該ペイロードデータ及びエクストラデータからのデータを前記エラー訂正コードに従って使用して、前記ペイロードデータに対するエラー訂正を実行することによる通常の読み出し操作の実行をサポートするように構成される請求項１に記載の装置。
【請求項４】
前記処理回路が使用するように構成された前記エラー訂正コードの第一エラー訂正能力が、もしあれば、前記処理回路が使用するように構成された第二のエラー訂正能力より高い請求項１に記載の装置。
【請求項５】
前記処理回路が、書き込み用のペイロードデータを該ペイロードデータ用の論理アドレスと関連したものとして受信し、前記検索単位に対応する前記ペイロードデータ用の物理アドレスを選び、前記エクストラデータ内の前記論理アドレスに関する情報を含むように構成される請求項１に記載の装置。
【請求項６】
メモリーセルの行及び列を有するマトリックスを備えたメモリを操作する方法であって、
前記行の少なくとも一つを備える検索単位にデータを書き込み、該データがペイロードデータ及び該ペイロードデータ用のアドレス空間の外側のエクストラデータを備え、前記ペイロードデータ及びエクストラデータがともにエラー訂正コードのコードワードの一部であり、前記エクストラデータをエラー検出コードのコードワードから選択し、
前記検索単位からのデータを読み出し、
前記エラー検出コードを用いて前記エクストラデータのみに対するエラー検出を実行し、
前記エラー検出が前記エクストラデータ内のエラーを示す場合に、前記エラー訂正コードに従う前記検索単位からの前記ペイロードデータおよびエクストラデータを使用して、前記エクストラデータからのデータに対するエラー訂正を条件つきで実行し、
前記エラー検出が前記エクストラデータ内のエラーを示すかどうかに応じて、前記エクストラデータまたは修正エクストラデータからのデータを用いて更なる処理を実行することを特徴とするメモリの操作方法。
【請求項７】
前記メモリが前記検索単位を読み出し、該検索単位からのデータを連続的に出力させる読み出し命令を前記メモリに出し、前記出力を終了させない場合に前記読み出し命令に応じて、前記ペイロードデータの前に少なくとも部分的に前記エクストラデータを出力し、
前記エラー検出が前記エクストラデータ内のエラーの不存在を示す場合に、前記出力を終わらせることを備える請求項６に記載の方法。
【請求項８】
前記ペイロードデータをペイロードデータ処理のために必要とする際に、前記ペイロードデータ及びエクストラデータを読み出し、前記ペイロードデータからのデータ及び前記エラー訂正コードに従う前記検索単位からのエクストラデータを用いて、前記ペイロードデータに対するエラー訂正を実行することを備える請求項６に記載の方法。
【請求項９】
前記使用するエラー訂正コードの第一エラー訂正能力が、もしあれば、使用するエラー検出コードの第二のエラー訂正能力より高い請求項６に記載の方法。
【請求項１０】
前記ペイロードデータ用の論理アドレスに関連する前記ペイロードデータを受信し、前記検索単位用のマトリックス内で、前記ペイロードデータ用の物理アドレスを選択し、前記エクストラデータ内の前記論理アドレスに関する情報を含むことを備える請求項６に記載の方法。
【請求項１１】
メモリーセルの行及び列を有するマトリックスを備えるメモリからデータを読み出す方法であって、
前記メモリがペイロードデータと、前記マトリックスの少なくとも一行におけるペイロードデータ用のアドレス空間の外側のエクストラデータとを備えたデータを有する検索単位を記憶し、前記ペイロードデータ及びエクストラデータが共にエラー訂正コードのコードワードの一部であり、前記エクストラデータをエラー検出コードのコードワードから選択する方法において、
前記検索単位からのデータを読み出し、
前記エラー検出コードを用いて、前記エクストラデータのみに対するエラー検出を実行し、
前記エラー検出が前記エクストラデータ内のエラーを示す場合に、エラー訂正コードに従う前記検索単位内の前記ペイロードデータ及び前記エクストラデータの両方からのデータを使用して、前記エクストラデータからのデータに対するエラー訂正を条件つきで実行し、
前記エラー検出が前記エクストラデータ内のエラーを示すかどうかに応じて、前記エクストラデータまたは修正データからのデータを使用して更なる処理を実行することを特徴とするデータの読み出し方法。
【請求項１２】
メモリーセルの行及び列を有するマトリックスを備えたメモリにデータに書き込む方法であって、
前記メモリによって画成された検索単位に非論理的にアドレス指定可能なエクストラデータと組み合わされたペイロードデータを書き込む命令を実行し、前記検索単位が前記行の少なくとも一つからのデータを備え、
エラー検出コードに従って前記エクストラデータをエンコードし、
エラー訂正コードに従って、前記ペイロードデータ及び前記エクストラデータを共にエンコードし、
前記エンコードされたエクストラデータ及びペイロードデータを一緒に前記検索単位に書き込むことを特徴とするデータの書き込み方法。
【請求項１３】
少なくとも前記ペイロードデータの一部の前に読み出し命令に応じて、前記エクストラデータを出力するように設計された前記メモリの前記行内の位置に前記エクストラデータを書き込むことを備える請求項１２に記載のデータの書き込み方法。
【請求項１４】
ペイロードデータのアドレス指定を行う論理アドレスを規定し、前記エクストラデータ内の前記論理アドレスに関する情報を含むことを備える請求項１２に記載のデータの書き込み方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子回路及び電子回路内のメモリーマトリックスからデータを読み出す方法に関するものである。
【背景技術】
【０００２】
米国特許５，９５６，７４３号公報は、アドレスデータ及びエラー訂正データを示すオーバーヘッドバイトとを組合せてデータのページを記憶するフラッシュメモリを開示する。
【０００３】
米国特許５，８０５，７９９号公報は、コンピューターシステム内の通信及び記憶用のデータコード化技術を開示する。ここで、オーバーヘッドバイトが、ページの論理アドレス及びエラー訂正データを示すデータのページ内に含まれる。エラー訂正データを用いて、論理アドレスの正確さを確認する。
【０００４】
エラー訂正は、記憶されたデータ内のエラーを訂正するために、フラッシュメモリ内が望ましい。概念的に、エラー訂正は、メモリ中に記憶し得るデータワードのサブセットであるコードワードのセットを規定するエラー訂正コードを使用する。ワードをエンコードすべきデータのコントロール下でコードワードから選択し、この選択したコードワードを記憶する。実際には、エンコードされたデータから計算したチェックコードを加えることによって、コードワードが通常実現される。検索に応じて、シンドローム数を検索されたデータ及びチェックワードから計算し、該シンドローム数を用いて修正を計算する。
【０００５】
フラッシュメモリに対するアクセスは、一般に論理から物理アドレスへの変換を用いることになる。通常操作の間、変換テーブルがこの変換を実行して、論理アドレスによって規定されたテーブルアドレスにブロックの物理アドレスを記憶する。また、ブロックの論理アドレスを、ブロックそれ自体を伴う補助データとして記憶する。これは、どのブロック記憶位置が有効なブロックを含むかを決定し、該記憶位置からこれらブロックの論理アドレスを検索することによって、変換テーブルを構成することを可能とする。
【０００６】
読み出しアクセスのいくつかのタイプが、フラッシュメモリで知られている。フラッシュメモリの一つのタイプにおいて、読み出しアクセス回路がメモリーセルの列及びカラムのマトリックスにおけるメモリーセルの列から、情報の検索を生ずる読み出し命令を支持する。この情報は、記憶されたデータ（以下「ペイロードデータ」）と、チェックワードと、論理アドレス情報（一般的にいえば「エクストラデータ」と呼ばれる一つの例）とを含む。ペイロードデータ、チェックワード及びエクストラデータを、読み出しアクセス回路から連続的に、通常逐語的に移動する。一般に、チェックワード及びエクストラデータを最後に移動する。読み出しアクセス回路は、例えばエクストラデータを必要としない場合に、移動を中断することができる。フラッシュメモリの他のタイプにおいて、読み出しアクセス回路が、正規形読み出し命令及び読み出し予備命令を支持する。正規形読み出し命令に応えて、読み出しアクセス回路が行を読み出し、かかる行からペイロードデータ及びチェックワードのみを出力する。「読み出し予備」タイプの読み出し命令に応えて、読み出しアクセス回路が行を読み出し、エクストラデータ及びチェックワード（共に「予備データ」と呼ばれる）のみを出力する。
【０００７】
エクストラデータのエラー訂正を必要とする時、一つの選択は、エラー訂正コードの下で、ペイロードデータ及びエクストラデータの両方を保護することである。これは、エクストラデータを検索するために、「読み出し予備」タイプの読み出し命令に必要とされる出力時間と比較して、相当なオーバーヘッドタイムで行全体を読み出し、アクセス回路から出力することを必要とすることを意味する。代替案は、エクストラデータ用の別のエラー訂正コードを使用することであるが、これは記憶オーバーヘッドになる。その理由は、エラー訂正コードの記憶効率がエンコードされたデータサイズの低減によって減少するからである。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
とりわけ、本発明の目的は、エラーの訂正を可能にする方法でメモリーマトリックスの行からエクストラデータを、記憶オーバーヘッドそれだけを該エクストラデータ用のエラー訂正コードに招くことなく、且つ行全体用のエラー訂正コードを用いる修正のために必要なものより、平均して少ないオーバーヘッド出力タイムで検索することを提供するものである。
【課題を解決するための手段】
【０００９】
請求項１に記載の装置を提供する。ここで、処理回路並びにメモリーセルの行及び列を有するマトリックスを備えたメモリを用いる。該マトリックスは、論理的にアドレス可能なペイロードデータ及びエクストラデータを有する、検索ユニットを記憶する。エクストラデータは、例えば検索ユニットからペイロードデータの論理アドレスに関する情報を含むことができる。論理アドレスは、処理回路によりペイロードデータをアドレス指定するのに用いる、論理アドレス空間を規定する。論理アドレス空間は、連続検索ユニットにおける論理アドレス間のギャップをアドレス指定することなく、前記ユニットからデータをアドレス指定する論理アドレスを含む。典型的な例においては、ペイロードデータ中のデータを、一連のディジットを含むアドレスによって論理的にアドレス指定し、該ディジットの一部分を用いて論理アドレスを形成し、ディジットの他の部分を用いてペイロードデータ内にアドレスを形成する。
【００１０】
エクストラデータは、それがペイロードデータ用の処理回路によって使用されるアドレス空間から、論理アドレスによってアドレス指定されないという意味で、論理アドレス空間の外にある。処理回路は、エクストラデータのみに対するエラー検出を備え、エクストラデータをコード化するエラー検出コードを使用し、ペイロードデータを含む検索ユニットからのデータを用いて、エクストラデータに対するエラー修正を、エラー検出がエクストラデータ内のエラーを示す場合に、検索ユニットをコード化するエラー訂正コードに従って条件つきで実行する、エクストラ読み出し処理を遂行するように構成される。すなわち、エクストラデータ及びペイロードデータは、同じエラー訂正冗長を共有する。したがって、エクストラデータの速い読み出しがエラーの不在下可能で、エラーがある場合読み出しが緩徐になる。また、エラー検出コードは、ペイロードデータを必要とする小さな訂正を可能にする、いくつかのエラー訂正能力を有するが、これは必須でない。エラー訂正コードのエラー訂正能力は、所要に応じてエラー検出コードのエラー訂正能力より大きいことが好ましい。これは、エラー検出コード用のオーバーヘッドを減ずる。
【００１１】
一実施態様において、メモリの読み出しアクセス回路は、検索単位を読み出し、読み出し命令に応じて検索単位からのデータを連続的に出力するように構成する。処理回路は、全てのペイロードデータの前に読み出し命令に応じて出力される検索単位の部分から、エクストラデータを取得するように構成されるのが好ましい。これは、ペイロードデータをエクストラデータ内のエラーの不在下で、エクストラ読み出し処理において読み出すことを必要としないから、最高速度を提供する。しかし、もちろん、ペイロードデータの少なくとも一部がエクストラデータの前に出力されない場合には、前記速度がすでに達している。
【００１２】
ペイロードデータを読み出しする処理の間に、エクストラデータ及びペイロードデータをともに読み出し、ペイロードデータのエラー修正を実行するのに使用するのが好ましい。
【発明を実施するための最良の形態】
【００１３】
これらおよび他の目的及び有利な本発明の態様は、以下の図を使用して例示的な実施形態から明らかになるだろう。
【００１４】
図１は、メモリーマトリックス１０を有する電子回路の一部を示す。この回路は、簡単な実施例として単に示されていることを強調しなければならない。実際には、より複雑な回路を用いることになるだろう。メモリーマトリックス１０は、メモリーセル（個々に図示せず）の行と、列からなる。電子回路は、データ処理回路１２と、行アドレス指定回路１４と、読み出し回路１６と、読み出し制御回路１８とを備える。データ処理回路１２は、行アドレス指定回路１４に結合した行アドレス出力と、読み出し回路１６に結合したデータ入力と、読み出し制御回路１８に結合した読み出し命令出力とを有する。行アドレス指定回路１４は、それぞれの行のメモリーセルに接続したメモリーマトリックス１０の行制御導体に結合した、行選択出力を有する。読み出し回路１６は、それぞれの列からメモリーセルに接続したメモリーマトリックス１０からの列データ導体に結合した入力を有する。読み出し制御回路１８は、読み出し回路１６に結合した制御出力を有する。読み出し回路１６及び読み出し制御回路１８は、読み出しアクセス回路（厳密に言えば、行アドレス指定回路１４も読み出しアクセス回路の一部分と考慮することができる）を形成する。多くの変更が可能であることを認識すべきである。例えば、行アドレス出力は、読み出し命令出力として二倍にすることができる。他の実施例として、複数のマトリックス１０を並列にアドレス指定することができるので、一組の行の検索単位を、これらマトリックスの異なるもの用の読み出し回路１６からの連続して出力となるデータ用に提供する。
【００１５】
作動中、処理回路１２は、行アドレスを伴う読み出し命令を供給する。行アドレス指定回路１４は、読み出し命令に応じた行アドレスの制御下でマトリックス１０の行（そのコンテンツをこの実施形態では検索単位と呼ぶ）を選ぶ。マトリックス１０は、選択した行からのデータを読み出し回路１６に供給する。読み出し回路１６は、前記行からのデータを処理回路１２に連続的に移動する。ここで用いる「連続的に」は、データのビット供給用のビットを意味するが、一般に並行して供給される複数のビットを含むデータの連続した単位を移動することを意味する。メモリーマトリックス１０中のメモリーセルの行からのデータ、すなわち並行して読み出された種々のマトリックスからの行の組合せは、「ページ」と呼ぶ。
【００１６】
図２は、検索単位の一例であるデータのページ２０を示す。ページ２０は、ペイロードデータ２２、エクストラデータ２４及び補正データ２６を含む。図のデータの位置は、データを移動する時間に対応し、右側よりのデータが後で移動する。ペイロードデータ２２は、ページの大部分を占める。ペイロードデータ２２は、マトリックス１０の行（または複数のマトリックスの行）における記憶用に外部から最初に供給されたデータに対応する。エクストラデータ２４及び補正データ２６は、マトリックス１０（または複数のマトリックス）における記憶の管理用に処理回路１２によって、最初のペイロードデータに加えられたデータに対応する。エクストラデータ２４は、ページ２０の残部と無関係のエクストラデータ用の一以上のパリティービットのような、エクストラデータ用のエラー検出データを含む。その上、一実施形態において、エクストラデータ２４は、例えばペイロードデータ２２用の論理アドレスを含む。すなわち、論理アドレスは、行が一部を形成する一ブロックの論理ブロックアドレス、すなわち行のページアドレスとすることができる。他の実施形態において、エクストラデータ２４は、行をプログラム化した回数についての統計データおよび／またはバージョン番号および／または論理ブロックアドレスを含む。補正データ２６は、ページ２０のコンテンツをエラー訂正コードからのコードワードとするデータを備える。図示するように、エクストラデータ２４の位置は、ページを出力する際に読み出し回路１６によって最初に出力されるようなもので、ペイロードデータ２２及び補正データ２６が続く。
【００１７】
一実施形態において、読み出し制御回路１８が、エクストラデータ、ペイロードデータ及びエラー訂正データを含む行全体からデータを読み出し、連続的に出力するための読み出し命令を支持する。通常作動の間、処理回路１２が論理アドレス（例えば、論理アドレス、すなわち一連の連続した論理アドレスを伴う）と関連している読み出し命令を発生または受信し、該論理アドレスを物理アドレスへ変換し、かかる物理アドレスを有する検索単位用の読み出し命令を出す。読み出し回路１６は、これら通常の読み出し命令に応じてフルページを戻す。処理回路１２は、補正データを発生したエラー訂正コード（例えば読み出しソロモンコード）に従って、補正データ２６を使用してページのエラーを訂正する。続いて、訂正ペイロードデータを使用する。
【００１８】
すなわち、エクストラデータは、論理アドレスを読み出しデータに用いる通常の読み出し作動に関して、事実上見えなくする。かかる読み出し作動に応じて、ペイロードデータのみをエラー訂正後に転送する。ここで使用するように、これは、エクストラデータが論理アドレスに関する読み出し命令によって、論理的にアドレス指定可能でないことを意味する。一般に、ペイロードデータ内のデータを一連のディジットを含むアドレスによって論理的にアドレス指定され、その一部を使用して論理アドレスを形成し、他の部分を使用してペイロードデータ内にアドレスを形成する。後者の部分は、エクストラデータをアドレス指定しない。つまり、検索単位内のペイロードデータをアドレス指定した最後の連続的なアドレスＡが、ペイロードデータ内のデータを他の論理アドレスのためにアドレス指定する次の連続的なアドレスＡ＋１に続く。
【００１９】
図３は、エクストラデータの読み出し操作のフローチャートを示す。このフローチャートの工程は、例えば変換テーブル回復処理の一部とすることができ、ここで論理アドレスを物理ページから回復し、物理アドレス変換テーブルに対する論理を論理アドレスから構成する。第一工程３１において、処理回路１２が物理ページアドレス及び読み出し命令を出力する。第二工程３２において、行アドレス指定回路１４がページを記憶するアドレス指定行を選び、マトリックス１０がアドレス指定行のメモリーセル内のデータに依存する信号を出力し、読み出し回路１６が該信号をデジタルデータ信号に変換し、読み出し回路１６がエクストラデータ２４を含む行の部分から開始するデジタルデータ信号を、処理回路１２に出力する。第三工程３３において、処理回路１２はエクストラデータを受信し、該エクストラデータからチェック値（例えばパリティ値）を計算する。第四工程３４において、処理回路１２は前記チェック値がエクストラデータ内のエラーを示すかどうか検査する。示さない場合、処理回路１２が第八工程３８において終了すべきデータの出力を生じ、第九工程３９におけるエクストラデータの更なる処理、例えば論理から物理へのアドレス変換テーブルの構成を続行する。
【００２０】
第四工程３４がエラーを示す場合、処理回路１２が第五工程３５を実行して、読み出し回路１６から行のデータを受信し続ける。これは処理回路１２が、ペイロードデータ２２及び補正データ２６を受信するまで継続する。第六工程３６において、処理回路１２が受信データからページ２０用の訂正を計算する。第七工程３７において、処理回路１２はエクストラデータ２４に関する訂正の一部分を、エクストラデータ２４に適用する。そこから、処理回路１２は、第九工程３９の更なる処理を実行するが、本来のエクストラデータの代わりに修正エクストラデータを使用する。
【００２１】
いくつかの市販のフラッシュメモリは、二種類の読み出し命令、すなわち通常の読み出し命令及び読み出し予備命令をサポートする。読み出しアクセス回路は、全てのデータをページから読み出し、出力することによって通常の読み出し命令を実行する。読み出しアクセス回路は、ページから全てのデータを読み出し、通常の読み出し命令に応じて全ての他のビットの後に出力することになる最後の数ビットのみを出力することによって、読み出し予備命令を実行する。これらの最後の数ビットは、予備データを含む。すなわち、予備データを、全ての他のデータを出力することなくアクセスすることができる。しかしながら、読み出し予備命令から予備データのみを検査した後に、他のデータを必要とすることを決定される場合には、新たな通常の読み出し命令を必要とし、これはメモリーマトリックスからデータを再度読み出すことを含む。
【００２２】
これを回避するために、本発明の一実施形態においては、通常の読み出し命令に応じて他のデータの前に出力されるようなエラー訂正データを含む他のデータの後に、エクストラデータを記憶することによって出力されるように予備データを記憶する既知の方法から逸脱することが好ましい。
【００２３】
これは、ペイロードデータを出力することができる前に、いくつかの遅延を導入する不利益がある。本発明の他の実施形態において、読み出し命令の異なるセットを有する改良されたフラッシュメモリを提供する。本実施形態において、読み出し回路１６は、新たな読み出しバイパス予備命令と、通常の読み出し命令とを備える、異なったタイプの読み出し命令をサポートするように構成される。この実施形態において、読み出し回路１６は、行の全体から通常の読み出し命令に応じて、エクストラデータ、ペイロードデータ及び補正データを含むデータを、エクストラデータ内のエラー検出データがエラーなしを示す際に直列出力を中止する選択で読み出し、連続的に出力するように構成される。読み出し回路１６は、読み出しバイパス予備命令に応じてエクストラデータをバイパスするように構成され、少なくともペイロードデータを出力する。しかしながら、補正データ２６が通常ペイロードデータ２２及びエクストラデータ２４の組合わせに適用するので、ペイロードデータを必要とする時、エラー訂正を実行するためには、エクストラデータ及びペイロードデータの両方を読み出すことが一般に望ましい。
【００２４】
図４は、データの書き込み（プログラミング）に関連する電子回路の一部を示す。電子回路は、処理回路１２とマトリックス１０との間で結合した書き込み回路４０及びエンコーダ４２を備える。分離のエンコーダ４２を示すけれども、その代わりにエンコーダ４２の機能を処理回路１２の一部として実現することができることを認識すべきである。作動中、処理回路１２が論理アドレス用のデータのページを書き込むことを必要とする時、処理回路が物理アドレスを選択し、選択された物理アドレスでデータを書き込む命令を伴って、エンコーダ４２への論理アドレスを備えるエクストラデータを有するページを供給する。
【００２５】
エンコーダ４２は、エクストラデータからのチェックデータと、ページ、エクストラデータ及びチェックデータの組合せからの補正データを計算する。チェックデータは、例えばパリティービットであるか、または複数のパリティービットを備える。チェックデータは、エクストラデータ内の一ビットエラーの検出を少なくとも可能にすべきである。補正データは、ｎビットエラー（例えばｎ＝４）を可能にすべきである。補正データを計算する方法それ自体は知られている。例えば、読み出しソロモンコードを用いることができる。
【００２６】
エンコーダ４２は、エクストラデータ、チェックデータ、ペイロードデータ及び補正データを書き込み回路４０に供給し、エクストラデータ及びチェックデータを最初に出力するような位置で、このデータをマトリックス内に書き込ませる。
【００２７】
処理回路１２を、少なくとも記載したエクストラ読み出し処理を実行するようにプログラムされたプログラム可能なプロセッサとして、若しくはこのように設計された専用ハードウェアとして、またはプログラム可能で専用のハードウェアの混合物として実現することができる。処理回路１２は、例えば論理読み出し命令を実行するのに用いる論理から物理的なアドレスへの変換テーブルを構築するために、エクストラ読み出し処理を使用することができる。処理回路１２を、マトリックス１０と同じ半導体チップまたは別のチップに設けることができる。一実施形態において、処理回路１２は、論理アドレスと関連した論理読み出し命令を受信し、これら読み出し命令に応じてペイロードデータを戻すように設計される。他の実施形態において、処理回路は、論理読み出し命令それ自体を発生させることができる。
【００２８】
チェックデータのエラー検出能力のみ使用した一実施形態を記載したが、更なる実施形態では、チェックデータを制限された修正能力、例えば一ビットエラーを修正するために付与するように選択する。この実施形態において、処理回路１２が第三工程３３の間にエクストラデータ及びチェックデータからエラーの数を計算し、検出されたエラーの数が所定の閾値下にある場合に、エクストラデータ内のエラーを訂正する。この訂正が可能な場合、処理回路は第四工程３４の後の第五工程３５などをバイパスする。したがって、完全なワードを読み出す必要がしばしば少なくなる。
【００２９】
エクストラデータを先ず読み出し回路１６から出力し、続いてペイロードデータ、次いで補正データを出す実施形態を示したけれども、他のシーケンスを使用し得ることを認めるべきである。例えば、補正データをペイロードデータの前に出力するか、またはペイロードデータと混合することができる。また、非体系的なコードを使用する時、ペイロードデータと補正データとの間に鮮明な差異が必要でない。
【００３０】
他の実施例において、エクストラデータをペイロードデータの後に出力するが、これは、ペイロードデータをエクストラデータに達するために、常に出力しなければならない不利益を有し、かなりのオーバーヘッドになる。これを克服するために、読み出し回路１６は、ペイロードデータをバイパスする追加の読み出しエクストラ命令と、該読み出しエクストラ命令のエクストラデータ後にペイロードデータを出力させる連続命令とを、新たにメモリーマトリックス１０から、このデータを読み出すことなく、読み出しエクストラデータに応じてメモリーマトリックス１０から読み出したデータを用いてサポートするように構成させることができる。しかしながら、当然のことながら、全てのデータ用の標準読み出し命令に応じて、先ずエクストラデータを出力することが、最小のタイミングオーバーヘッドで回路を簡易化する。同様に、エクストラデータを、ペイロードデータの間の所定位置で、いくつかのペイロードデータの後に出力することができる。これも、タイミングオーバーヘッドを減少させることができる。
【００３１】
さらに、単一メモリーマトリックス１０からの単一行を検索単位として読み出し、修正エクストラデータを得るために用いる例を示したけれども、当然ことながら、単一行の検索単位の代わりに、異なるマトリックスまたは同じマトリックスからの複数の行の検索単位を使用して、補正データを複数の行の検索単位に適用できる。この場合、エクストラデータを検索単位内の一つの行に記憶することができ、エラー検出がエクストラデータ内のエラーを示す時に、複数の行を読み出し、出力する。
【図面の簡単な説明】
【００３２】
【図１】メモリーマトリックスを有する電子回路を示す。
【図２】メモリーマトリックス内に記憶したデータのページを概略的に示す。
【図３】読み出し操作のフローチャートを示す。
【図４】メモリーマトリックスを有する電子回路を示す。
【図１】
2009529172.tif 000003
【図２】
2009529172.tif 000004
【図３】
2009529172.tif 000005
【図４】
2009529172.tif 000006
【国際調査報告】
2009529172.tif 000007
2009529172.tif 000008
2009529172.tif 000009