【手続補正書】
【提出日】平成17年1月14日(2005.1.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１メモリセルあたりｍビット（ｍは２以上の整数）のデータを記憶する複数のメモリセルを有するセルアレイと、
入力データをリード・ソロモン符号に変換して上記セルアレイに書き込むための書き込みデータを得る符号化器と、
上記セルアレイより読み出される読み出しデータに誤り訂正処理を施して出力データを得るリード・ソロモン符号復号器とを備えるメモリ装置であって、
上記リード・ソロモン符号は、１個または複数個の上記メモリセルで記憶し得るビット数を１バイトとする
ことを特徴とするメモリ装置。
【請求項２】
上記入力データおよび出力データは所定ビットのパラレルデータまたはシリアルデータであって、
上記符号化器の前段に、上記入力データを１バイトのパラレルデータに変換する第１のビット変換器を設け、
上記リード・ソロモン符号復号器の後段に、この復号器より出力される１バイトのパラレルデータを上記所定ビットのパラレルデータまたはシリアルデータに変換する第２のビット変換器を設ける
ことを特徴とする請求項１に記載のメモリ装置。
【請求項３】
上記符号化器と上記セルアレイとの間に、上記符号化器より出力される１バイトのパラレルデータをｍビットのパラレルデータに変換する第３のビット変換器を設け、
上記セルアレイと上記リード・ソロモン符号復号器との間に、上記セルアレイより出力されるｍビットのパラレルデータを１バイトのパラレルデータに変換する第４のビット変換器を設ける
ことを特徴とする請求項１に記載のメモリ装置。
【請求項４】
１メモリセルあたりｍビット（ｍは２以上の整数）のデータを記憶する複数のメモリセルを有するセルアレイを持つメモリ部と、
上記メモリ部に対してデータの書き込みや読み出しを行うためのコントローラとを備え、
上記コントローラは、入力データをリード・ソロモン符号に変換して上記メモリ部に書き込むための書き込みデータを得る符号化器と、上記メモリ部より読み出される読み出しデータに誤り訂正処理を施して出力データを得るリード・ソロモン符号復号器とを有し、
上記リード・ソロモン符号は、１個または複数個の上記メモリセルで記憶し得るビット数を１バイトとする
ことを特徴とするメモリ装置。
【請求項５】
上記メモリ部は、１個または複数個のフラッシュメモリで構成される
ことを特徴とする請求項４に記載のメモリ装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
一方、データの読み出しは以下のように行われる。フラッシュインタフェース１３７のコントロールに従ってフラッシュメモリ１３１またはフラッシュメモリ１３２より読み出された読み出しデータＲＤはＢＣＨ符号復号器１３６に入力される。ＢＣＨ符号復号器１３６では、読み出しデータＲＤの１符号内に誤りがなければ情報データがそのまま出力データＤoutとして出力され、また読み出しデータＲＤの１符号内の誤りのビット数が１または２であるときは、誤りが訂正された後に情報データが出力データＤoutとして出力される。このようにＢＣＨ符号復号器１３６より出力される出力データＤoutはカードインタフェース１３４を介してカード外部に出力される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
また、フラッシュメモリ１４０は、セルアレイ１４１より読み出される読み出しデータＲＤを４ビットのパラレルデータからシリアルデータに変換する４ビット／１ビット変換器１４４と、この４ビット／１ビット変換器１４４でシリアルデータに変換された読み出しデータＲＤに誤り訂正処理を施して出力データＤoutを得るＢＣＨ符号復号器１４５とを有している。この場合、符号化器１４２およびＢＣＨ符号復号器１４５は誤り訂正回路を構成している。そして、符号化器１４２では、入力データＤinの５１２ビット毎に２０ビットの検査データが付加され、情報データが５１２ビットの２誤り訂正可能な短縮化ＢＣＨ符号が生成される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
例えば、１メモリセルで４ビットのデータの記憶を行うフラッシュメモリでは、１つのメモリセルにアクセス不能になってしまうと、その誤りを訂正するために４訂正の符号を用いなければならなくなるということが起こる。ここで、前述した通り、誤り訂正符号で多くの誤りを訂正しようとすると誤り訂正回路が大きくなるため、回路規模が増大するという問題が生じる。また多くの誤りを訂正するためには、より多くの冗長データを付加する必要があるため、多くのメモリセルが必要になるという問題も生じる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
【課題を解決するための手段】
この発明に係るメモリ装置は、１メモリセルあたりｍビット（ｍは２以上の整数）のデータを記憶する複数のメモリセルを有するセルアレイと、入力データをリード・ソロモン符号に変換してセルアレイに書き込むための書き込みデータを得る符号化器と、セルアレイより読み出される読み出しデータに誤り訂正処理を施して出力データを得るリード・ソロモン符号復号器とを備えるメモリ装置であって、リード・ソロモン符号は、１個または複数個のメモリセルで記憶し得るビット数を１バイトとするものである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
また、この発明に係るメモリ装置は、１メモリセルあたりｍビット（ｍは２以上の整数）のデータを記憶する複数のメモリセルを有するセルアレイを持つメモリ部と、このメモリ部に対してデータの書き込みや読み出しを行うためのコントローラとを備え、コントローラは、入力データをリード・ソロモン符号に変換して上記メモリ部に書き込むための書き込みデータを得る符号化器と、メモリ部より読み出される読み出しデータに誤り訂正処理を施して出力データを得るリード・ソロモン符号復号器とを有し、リード・ソロモン符号は、１個または複数個のメモリセルで記憶し得るビット数を１バイトとするものである。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
セルアレイの各メモリセルには、それぞれｍビット（ｍは２以上の整数）のデータが記憶される。書き込み時、入力データは符号化器によって書き込みデータとしてのリード・ソロモン符号に変換され、このリード・ソロモン符号がセルアレイに書き込まれる。リード・ソロモン符号は、複数ビットをまとめて１バイトとし、バイト単位で誤り訂正を行う誤り訂正符号である。読み出し時、セルアレイの各メモリセルに記憶されていたｍビットのデータが読み出され、この読み出しデータに対してリード・ソロモン符号復号器で誤り訂正処理が施されて出力データが得られる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
このように、ｍビットのデータを記憶するメモリセルからなるメモリに対する誤り訂正符号としてバイト単位で誤り訂正を行うリード・ソロモン符号が用いられることで、少ない誤り訂正数で充分な性能を得、誤り訂正回路の回路規模を小さくすると共に、使用するメモリセルの数も少なくすることが可能となる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
また、コントローラ２３は、フラッシュメモリ２１，２２より読み出される読み出しデータＲＤを、図３に示すように、４ビットのパラレルデータから１バイト（８ビット）のパラレルデータに変換する４ビット／８ビット変換器２７と、この４ビット／８ビット変換器２７で１バイトのパラレルデータに変換された読み出しデータＲＤに誤り訂正処理を施して出力データＤoutを得るリード・ソロモン符号復号器２８と、フラッシュメモリ２１，２２に対するデータの書き込み／読み出しをコントロールするフラッシュインタフェース２９とを有している。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
【発明の効果】
この発明によれば、ｍビット（ｍは２以上の整数）のデータを記憶するメモリセルからなるメモリに対する誤り訂正符号としてバイト単位で誤り訂正を行うリード・ソロモン符号が用いられるものであり、少ない誤り訂正数で充分な性能を得、誤り訂正回路の回路規模を小さくすると共に、使用するメモリセルの数も少なくできるという効果がある。