(57)【要約】【課題】信頼性の高い復号処理を行う復号器、前記復号器を有するメモリコントローラ、および前記復号器を有する半導体メモリ装置を実現する。【解決手段】確率に基づく反復計算により符号化されたデータの復号を行う復号器１であって、反復計算において、対数事後確率比Ｐｂ（ｉ）の対数外部値比αの符号が全て同一で、かつ対数尤度比ＬＬＲと異なる第１の場合、または、対数事後確率比Ｐｂ（ｉ）の過半数の対数外部値比αの符号が対数尤度比ＬＬＲと異なる第２の場合に、一時推定語の符号を反転する。【選択図】  図５
2010109468.tif 000002
【特許請求の範囲】
【請求項１】
符号化データの復号を確率に基づく反復計算により行う復号器であって、
前記反復計算において、対数事後確率比の対数外部値比の符号が全て同一で、かつ対数尤度比と異なる第１の場合、または、前記対数事後確率比の過半数の対数外部値比の符号が対数尤度比と異なる第２の場合に、一時推定語の符号を反転することを特徴とする復号器。
【請求項２】
前記第１の場合または前記第２の場合に、次回の反復計算のときに、前記対数尤度比の信頼度を減ずることを特徴とする復号器。
【請求項３】
前記データがＬＤＰＣ符号により符号化されたデータであることを特徴とする請求項１または請求項２に記載の復号器。
【請求項４】
請求項１から請求項３のいずれか１項に記載の復号器を有することを特徴とするメモリコントローラ。
【請求項５】
請求項１から請求項３のいずれか１項に記載の復号器と、ＮＡＮＤ型フラッシュメモリ部とを有することを特徴とする半導体メモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化されたデジタルデータを復号する復号器、前記復号器を有するメモリコントローラ、および前記復号器を有する半導体メモリ装置に関し、特に確率に基づく反復計算による復号を行う復号器、前記復号器を有するメモリコントローラ、および前記復号器を有する半導体メモリ装置に関する。
【背景技術】
【０００２】
移動体通信やＷＬＡＮ等の通信分野、地上波または衛星デジタル放送等の放送分野における高速データ送受信のために、および半導体メモリ等のストレージ分野での高密度記録のために、デジタルデータの誤り訂正符号に関する開発が盛んに行われている。
【０００３】
誤り訂正符号は、代数系の誤り訂正方式と確率に基づく反復計算による誤り訂正方式とに大別できる。そして、後者に属する低密度パリティ検査符号(Low Density Parity Check codes、以下、「ＬＤＰＣ符号」という。）が、近年、特に注目されている。ＬＤＰＣ符号は、R. G. Gallagerにより、１９６３年に最初に提案されたものである。その後、符号長を長くしていくに従って、符号性能の理論的限界である、いわゆるシャノン  (C. E. Shannon)  の通信路符号化定理によって与えられるシャノン限界に迫る優れた性能が報告されている。
【０００４】
ここで、ＮＡＮＤ型フラッシュメモリ部を有する半導体メモリ装置においては、メモリセルの電荷蓄積層に注入した電荷をその電荷量に応じてデジタルビット情報として用いる。そして、データ書き換えはブロックと呼ぶ複数のメモリセル単位で消去することにより簡単な構造で高密度化を実現している。メモリセルには不良が発生することがある。しかし、半導体メモリ装置のメモリコントローラがメモリセルをブロック毎に管理し置き換え処理を行うカラムリダンダンシー技術を用いることにより、セル不良を含む半導体メモリ装置であっても、信頼性の高いストレージデバイスとして利用することが可能となっている。しかしながら、回路微細化につれて、ブロック単位で管理可能な不良ではなく、カラム不良と呼ばれるビット線に起因する不良の発生が顕在化しつつある。カラム不良が発生した場合、影響は同一ビット線を共有する全てのメモリセル、すなわち複数のブロックに属するメモリセルにおよぶ。特に、カラム不良が後天的に発生した場合、つまり、半導体メモリ装置の出荷後に発生した場合には、メモリコントローラによるカラムリダンダンシー技術を用いても対処は困難で、信頼性の高い復号処理を行うことが容易ではない。
【０００５】
一方、デジタルテレビ放送等では、外符号としてＢＣＨ符号を、内符号としてＬＤＰＣ符号を用いた連接符号を用いた誤り訂正方式が定められている。しかし、伝送路において、半導体メモリのカラム不良と同様の復号困難な障害が発生することがある。するとテレビジョン受信機の復号器が信頼性の高い復号を行うことができないために、ノイズの多い画面となったり、いわゆるフレーム落ちが連続して発生してしまったりする。
【０００６】
なお、特開２００６−３３７２０号公報には、インターリブ処理が介在するターボ復号装置においては、誤り検出結果に応じて、対数尤度比を補正する補正部を有する復号装置が開示されている。
【非特許文献１】電波法（昭和二十五年法律第百三十一号）第三十八条の規定に基づく標準テレビジョン放送等のうちデジタル放送に関する送信の標準方式、別表第三十九号
【特許文献１】特開２００６−３３７２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記事情に鑑みて、本発明はなされたものであり、本発明は信頼性の高い復号処理を行う復号器、前記復号器を有するメモリコントローラ、および前記復号器を有する半導体メモリ装置を実現することを目的とする。
【課題を解決するための手段】
【０００８】
本願発明の一態様の復号器は、確率に基づく反復計算により符号化されたデータの復号を行う復号器であって、前記反復計算において、対数事後確率比の対数外部値比の符号が全て同一で、かつ対数尤度比と異なる第１の場合、または前記対数事後確率比の過半数の対数外部値比の符号が対数尤度比と異なる第２の場合に、一時推定語の符号を反転することを特徴とする復号器である。
【０００９】
また、本願発明の別の一態様のメモリコントローラは、確率に基づく反復計算により符号化されたデータの復号を行う復号器であって、前記反復計算において、対数事後確率比の対数外部値比の符号が全て同一で、かつ対数尤度比と異なる第１の場合、または前記対数事後確率比の過半数の対数外部値比の符号が対数尤度比と異なる第２の場合に、一時推定語の符号を反転することを特徴とする復号器を有する。
【００１０】
さらに、本願発明の別の一態様の半導体メモリ装置は、確率に基づく反復計算により符号化されたデータの復号を行う復号器であって、前記反復計算において、対数事後確率比の対数外部値比の符号が全て同一で、かつ対数尤度比と異なる第１の場合、または前記対数事後確率比の過半数の対数外部値比の符号が対数尤度比と異なる第２の場合に、一時推定語の符号を反転することを特徴とする復号器を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、信頼性の高い復号処理を行う復号器、前記復号器を有するメモリコントローラ、および前記復号器を有する半導体メモリ装置を実現することができる。
【発明を実施するための最良の形態】
【００１２】
＜第１の実施の形態＞
以下、図面を参照して本発明の第１の実施の形態を説明する。  
最初に、図１を用いて本発明の第１の実施の形態の復号器１、復号器１を有するメモリコントローラ２および復号器１を有する半導体メモリ装置であるメモリカード３の概略構成を説明する。図１は、本実施の形態のメモリカードの概略構成を示す構成図である。
【００１３】
図１に示すように、メモリカード３はパソコンまたはデジタルカメラ等のホスト４から受信したデータを記憶し、記憶したデータをホスト４に送信する記憶媒体である。メモリカード３は、半導体メモリ部（以下、単に「メモリ部」ともいう。）１３と、復号器１を具備したメモリコントローラ２とを有する。メモリ部１３は、ＮＡＮＤ型フラッシュメモリから構成されており、単位セルである多数のメモリセル１３Ｄが、ビット線１３Ｅ等で接続された構造を有する。
【００１４】
そして、メモリコントローラ２は、バス１７を介して接続された、ＲＯＭ１０と、ＣＰＵコア１１と、ＲＡＭ１８と、ホスト  Ｉ／Ｆ（インターフェイス）１４と、誤り訂正（ＥＣＣ：Error Correcting Code）部１５と、ＮＡＮＤ  Ｉ／Ｆ（インターフェイス）１６とを有する。
【００１５】
メモリコントローラ２は、ＣＰＵコア１１を用いて、ホスト  Ｉ／Ｆ１４を介してホスト４とのデータ送受信を、ＮＡＮＤ  Ｉ／Ｆ１６を介してメモリ部１３とのデータ送受信を行う。またメモリコントローラ２は、書き換え回数の制限を含めたメモリ部１３のアドレス管理をＣＰＵコア１１で実行されるＦＷ（Firm Ware）で実現している。また、ホスト４からのコマンド入力に応じたメモリカード３全体の制御もＦＷで実行される。ＲＯＭ１０には、メモリカード３の制御プログラム等が格納されており、ＲＡＭ１８には、アドレス管理で必要となるアドレス変換デーブルおよび異常回路の情報等が記憶される。
【００１６】
ＥＣＣ部１５は、データ記憶時に誤り訂正符号を生成し付与する符号化器１２と、データ読み出し時に、読み出された符号化データを復号する復号器１とを有する。本実施の形態のＥＣＣ部１５は、確率に基づく反復計算により復号処理される誤り訂正符号であるＬＤＰＣ符号を用いる。後に詳述するが、ＬＤＰＣ符号により符号化されたデータの復号処理においては、最初にデータの確からしさを示す対数尤度比の初期値が算出される。そして、対数尤度比の初期値をもとに、確率に基づく反復計算によりにより誤り訂正処理が行われる。
【００１７】
次に、図２、図３および図４を用いて、ＬＤＰＣ符号について説明する。図２は、対数尤度比を説明するための説明図であり、図３はＬＤＰＣ符号における反復復号について説明するための図であり、図３（Ａ）は、パリティ検査行列Ｈの例を示しており、図３（Ｂ）は、パリティ検査行列Ｈに対応するタナーグラフＧであり、図４（Ａ）から図４（Ｄ）は、タナーグラフＧの一部を示している図である。
【００１８】
最初に図２を用いて、対数尤度比（Log Likelihood Ratio  以下、「ＬＬＲ」ともいい、記号「λ」で表示する。）について説明する。図２に示すように、数直線上で、ビット「０」に対応するマッピング点を「Ｄ」とし、ビット「１」に対応するマッピング点を「−Ｄ」としたときに、あるメモリセル１３Ｄの閾値電圧から算出されるデータの位置が、「Ｘ」であったとする。このときの、対数尤度比λは、以下の（式１）を用いて計算される。
【００１９】
λ＝−（Ｄ−Ｘ）２＋（−Ｄ−Ｘ）２  ・・（式１）
ここで、（式１）より明らかなように、対数尤度比λの絶対値｜λ｜を信頼度といい、信頼度が、Ｍｘ、に近いほど信頼性が高く、反対に、信頼度が０に近いほど信頼性が低いことを意味する。なお、後述のように、対数尤度比λは、対数尤度比テーブルを用いて算出してもよい。
【００２０】
次に、図３および図４を用いて、ＬＤＰＣ符号における確率に基づく反復計算について説明する。
【００２１】
図３に示すように、ＬＤＰＣ符号における反復計算は、パリティ検査行列Ｈに対応する２部グラフであるタナーグラフを用いると分かりやすい。図３において、タナーグラフＧのノードは、変数ノードとチェックノードとの２種類に分類される。変数ノードは行列Ｈの列に対応し、チェックノードは行列Ｈの行に対応している。そして行列Ｈの要素の中で、「１」であるノード間をエッジで結ぶことによりタナーグラフＧが構成されている。
【００２２】
ＬＤＰＣ符号の復号処理はタナーグラフのエッジに割り当てられた対数尤度比情報をノードにおいて反復的に更新することで実行される。対数尤度比情報には、チェックノードから変数ノードへの対数尤度比情報（以下、記号「α」で表示する。）と、変数ノードからチェックノードへの対数尤度比情報（以下、「β」で表示する。）の２種類が存在する。ＬＤＰＣ符号の復号処理では、変数ノード処理とチェックノード処理とを１回ずつ実行した単位のことを１イタレーション処理と呼び、復号処理はイタレーション処理を繰り返す反復処理により行われる。
【００２３】
変数ノードおよびチェックノードにおける対数尤度比情報更新アルゴリズム、すなわち、メッセージ伝達アルゴリズムについては、Sum-Productアルゴリズム、Min-Sumアルゴリズム等の方法が知られている。ここでは対数尤度比情報更新アルゴリズムとして、比較的計算量の少ないMin-Sumアルゴリズムについて説明する。
【００２４】
最初に、図４（Ａ）および図４（Ｂ）を用いて、変数ノード処理について説明する。図４（Ａ）および図４（Ｂ）は、図３（Ｂ）のタナーグラフにおいて、変数ノード３に関係する部分を抜き出した図である。
【００２５】
ある変数ノード、例えば変数ノード３、に対応する符号語ビットの受信時の対数尤度比（Log Likelihood Ratio  ：  以下、「ＬＬＲ」といい、記号「λ」で表示する。）、をλ（３）とし、この変数ノード３へのチェックノードからの対数尤度比情報を、α（ｊ、３）とする。ここで、ｊは変数ノード３に接続しているチェックノード番号を示し、図３（Ｂ）に示したタナーグラフＧでは「１」および「２」に該当する。
【００２６】
変数ノード３は、α（１、３）に対応するエッジのチェックノードすなわち、チェックノード１に対して、以下の（式１）で表される計算を行う。
【００２７】
β（３、１）＝  λ（３）＋α（２、３）    ・・・（式２）
同様に、ノード番号ｊのチェックノードに対して、以下の（式３）で表される計算を行う。
【００２８】
β（３、ｊ）＝  λ（３）＋Σα（ｋ、３）    ・・・（式３）
ここで、Σは変数ノード３に接続しているチェックノードの中で、ｋ＝ｊ以外の総和を意味する。
【００２９】
以上の計算を全ての変数ノードに対して行い、以下の（式４）で表されるβ（i、ｊ）を計算する。なお、ここで、符号長をＮ、ノード番号を、iとすると、i＝１〜Ｎである。また、Σは変数ノードiに接続しているチェックノードの中で、k＝ｊ以外の総和を意味する。
【００３０】
β（i、ｊ）＝  λ（i）＋Σα（ｋ、i）    ・・・（式４）
次に、図４（Ｃ）および図４（Ｄ）を用いて、チェックノード処理について説明する。図４（Ｃ）および図４（Ｄ）は、図３（Ｂ）のタナーグラフにおいて、チェックノード１に関係する部分を抜き出した図である。  
あるチェックノード、例えばチェックノード１、へのメッセージである対数尤度比情報を、β（ｋ、１）としたとき、このチェックノードはβ（１、１）に対応するエッジの変数ノードである変数ノード１に対して以下の（式５）で表されるα（１、１）を計算する。
【００３１】
α（１、１）＝ｓｉｇｎ（Πβ（ｍ、１））×ｍｉｎ（｜β（ｍ、１）｜）    ・・・（式５）
ただし、ｋはこのチェックノード１に接続されている変数ノード番号であり図３（Ｂ）の例では、「１」、「２」、「３」である。そして、ｍは「２」から「３」の中から選択される。ここで、ｓｉｇｎ（Πβ（ｍ、１））は、β（ｍ、１）を、ｍ＝２から３、まで乗算した結果の符合（「＋１」あるいは「−１」）を意味する。また、｜β（ｍ、１）｜は、β（ｍ、１）の絶対値であり、ｍｉｎは複数の｜β（ｍ、１）｜の中から最小値を選択する関数である。
【００３２】
同様にして、α（１、i）についても、以下の（式６）を使って算出する。
【００３３】
α（１、i）＝ｓｉｇｎ（Πβ（ｍ、１））×ｍｉｎ｛｜β（ｍ、１）｜｝    ・・・（式６）
ただし、ｉはチェックノード１に接続している変数ノード番号であり、図３（Ｂ）のタナーグラフの例では、「１」、「２」、「３」である。また、ｍはチェックノード１に接続した変数ノードの中で、ｍ＝i、以外とする。
【００３４】
以上の計算を全てのチェックノードに対して行い、α（ｊ、i）を以下の（式７）を使って計算する。
【００３５】
α（ｊ、i）＝ｓｉｇｎ（Πβ（ｍ、ｊ））×ｍｉｎ（｜β（ｍ、ｊ）｜）    ・・・（式７）
ただし、ｍはチェックノードｊに接続した変数ノードの中で、ｍ＝i、以外とする。
【００３６】
そして、反復計算では、以上に示した変数ノード処理とチェックノード処理とを１回ずつ実行した１イタレーション処理毎に、以下の（式７）によって、対数事後確率比Ｐｂ（ｉ）を求める。
【００３７】
Ｐｂ（ｉ）＝λ（i）＋Σα（ｋ、i）    ・・・（式７）
ここで、i＝１〜Ｎであり、Ｎは符号長であり、Σは変数ノードiに接続された全ての和であり、αは対数外部値比である。
【００３８】
この事後確率Ｐｂをもとにビット判定、すなわち、当該ビットの一時推定語が、「０」または「１」のいずれであるかが推定される。そして、この一時推定語を使用して、ＬＤＰＣ符号のパリティチェックを行い、誤りないことが確認された時点で反復処理を終了する。
【００３９】
ここで、図５は、本実施の形態の復号器１の基本構成を示す構成図である。ＬＬＲ生成器２０はメモリセル１３Ｄの閾値電圧データから尤度比テーブル２１をもとに、ビット毎のＬＬＲ初期値を生成する。ＬＬＲ生成器２０は（式１）の計算を、ＬＤＰＣ符号のＮ個の全ビットに対して計算し、λ（ｊ）  ：  ｊ＝１〜Ｎ、を得る。λ（ｊ）が、ＬＬＲである。ＬＬＲは、ＬＤＰＣ復号器２２およびＬＤＰＣパリティチェック器２３において、イタレーション処理が行われ、誤りないことが確認された時点で復号データが出力される。そして、ＬＤＰＣ制御部２５は、後述するように、ＬＤＰＣ復号器２２およびＬＬＲ更新器２４を制御する。なお、ＬＬＲ制御部２５は、独立した部ではなく、ＬＤＰＣ復号器２２またはＬＬＲ更新器２４の一部であってもよい。
【００４０】
図６は、４値記憶メモリセルの場合の閾値電圧データに対応した尤度比テーブルのイメージ図である。図６に示すように、上段の閾値電圧分布に従った誤り率から算出された１と０の確率の対数尤度比が下段に示した尤度比テーブル２１に格納されている。
【００４１】
例えば、２値記録セルの場合には、確率密度関数Ｐ（ｘ）とすると、λ＝＝  Ｐ（１）／Ｐ（０）  で算出されるが、さらに閾値電圧の所定の範囲毎に代表値を算出して尤度比テーブル２１に格納される。ここで、Ｐ（ｘ）は確率密度関数であり、Ｐ（０）は０である確率、Ｐ（１）は１である確立である。
【００４２】
４値記録セルにおいて、図６に示す確率密度関数Ｐ（ｘ）の場合には、Ｈｉｇｈｅｒビットの（１の確率）／（０の確率）は、（Ｐ１(ｘ)＋Ｐ４（ｘ））／（Ｐ２(ｘ)＋Ｐ３(x)）で、Ｌｏｗｅｒビットの（１の確率）／（０の確率）は、（Ｐ１(ｘ)＋Ｐ２（ｘ））／（Ｐ３(ｘ)＋Ｐ４(x)）で、計算される。  
例えば図６において閾値電圧がＶ１の場合、ＨｉｇｈｅｒビットのＬＬＲは−１０、ＬｏｗｅｒビッのＬＬＲは３０となる。
【００４３】
ここで、図７は、メモリ部１３の構成を示した構成図である。複数のメモリセル１３Ｄにより、ひとつのブロック１３Ｂを構成しているが、ビット線１３Ｅは複数のブロック１３Ｂにまたがって配線されている。このため、ビット線１３Ｅの不良、例えば、ショート不良またはオープン不良が発生すると、複数のブロック１３Ｂに属する複数のメモリセル１３Ｄに記憶されていたデータが影響を受ける。例えば、図８に示すように、カラム不良発生時は、閾値電圧分布が正常の閾値電圧分布と全く異なる。このため、尤度比テーブルから入力されるＬＬＲ初期値λが、真のＬＬＲ、と大きくかけ離れる。この異常ＬＬＲを用いて、反復計算を行うとＬＤＰＣ符号の復号特性が低下してしまう。すなわち、カラム不良等の対数尤度比λに沿わない誤りが発生したとききには、復号器は、復号処理の反復計算（イタレーション）回数が増えたり、誤訂正を行ったりしてしまう。
【００４４】
例えば、ＬＬＲが負の大きな値を取るとききに、対数外部値比αの総和の絶対値がＬＬＲの絶対値より小さいと、対数事後確率比の符号を反転させることができない。あるいは、全てのαが正の値を取っても、αの絶対値が小さいとαの総和の絶対値がＬＬＲの絶対値を超えることができない。このため、誤り訂正を行うためめの反復計算回数が増えてしまったり、最終的なＬＤＰＣ符号による復号結果も誤訂正してしまったりすることがある。
【００４５】
これに対して、本実施の形態の復号器１では、反復計算において、対数事後確率比の対数外部値比の符号が全て同一で、かつ対数尤度比と異なる場合に、ＬＤＰＣ復号器２２を制御して一時推定語の符号を反転するＬＤＰＣ制御部２５を有する。さらに、ＬＤＰＣ制御部２５は、ＬＬＲ更新器２４を制御して、次回の反復計算のときに、前記対数尤度比の絶対値、すなわち、信頼度を減じて、例えば０とする。
【００４６】
ここで、図９を用いて、本実施の形態の復号器１の動作の流れについて説明する。図９は本実施の形態の復号器の処理の流れを説明するためのフローチャートである。
【００４７】
＜ステップＳ１＞  データ受信  
復号器１は、メモリ部１３に記憶されていた符号化データを受信する。
【００４８】
＜ステップＳ２＞  ＬＬＲ初期値生成  
ＬＬＲ生成器２０は、尤度比テーブル２１をもとに、ＬＬＲ初期値を生成する。
【００４９】
＜ステップＳ３＞  ＬＬＲ、対数外部値比算出  
ＬＤＰＣ復号器２２は、ＬＬＲと対数外部値比とを算出し、対数事後確率比Ｐｂを算出する。
【００５０】
＜ステップＳ４＞  対数外部値比判定によるカラム異常検出  
ＬＤＰＣ復号器２２のＬＬＲ制御部２５は、対数外部値比αの符号が全て同一、すなわち、全て正または全て負であり、かつ、ＬＬＲの符号と反対の場合、このメモリセル１３Ｄは異常、例えば、カラム不良であると判定する。
【００５１】
＜ステップＳ５＞  一時推定語の符号反転  
ＬＤＰＣ制御部２５は、メモリセル１３Ｄが異常と判定した場合（Ｓ４：Ｙｅｓ）には、一時推定語の符号を反転する。すなわち、一時推定語が０だった場合には１とし、１だった場合には０とする。
【００５２】
＜ステップＳ６＞  パリティチェック  
ＬＤＰＣパリティチェック器２３は、一時推定語を用いてパリティチェックを行う。
【００５３】
＜ステップＳ７＞  パリティチェック  
ＬＤＰＣパリティチェック器２３は、パリティチェックの結果、誤りがないことが確認された場合（Ｙｅｓ）には、復号データをホストＩ／Ｆ１４を介してホスト４に出力する。
【００５４】
＜ステップＳ８＞  ＬＬＲ更新  
パリティチェックの結果、誤りがあった場合（Ｓ７：Ｎｏ）、ＬＤＰＣ制御部２５は、ＬＬＲ更新器２４を制御して、ＬＬＲを０に設定する。すなわち、当該メモリセル１３Ｄに記憶されていたデータは、最も信頼性が低いとする。
【００５５】
そして、復号器１は、Ｓ３からのイタレーション処理を繰り返す。なお、所定の回数、イタレーション処理を行っても、パリティチェックの結果、誤りがある場合には、復号器１は、エラーを出力する。
【００５６】
本実施の形態の復号器１は、たとえ、カラム不良が発生しても、ＬＤＰＣ符号の復号特性を向上させることができる。また、復号器１を有するメモリコントローラ２、および、半導体メモリ装置は、ＮＡＮＤフラッシュメモリ装置の誤り訂正をＬＤＰＣ符号にて行う際に、正常な閾値電圧分布に従わない誤りが発生したときに、ＬＤＰＣ符号の復号特性を向上させることである。また、復号器１は、真チャネルに従わない誤りが発生した場合に、ＬＤＰＣ復号特性を向上させることができると同時に復号反復処理回数を低減させられる。
【００５７】
＜第２の実施の形態＞
以下、図面を参照して本発明の第２の実施の形態を説明する。第２の実施の形態の復号器、メモリコントローラ、およびメモリカードは、第１の実施の形態の復号器１、メモリコントローラ２、およびメモリカード３と類似しているので、同じ説明は省略する。
【００５８】
ここで、図１０を用いて、本実施の形態の復号器の動作の流れについて説明する。図１０は本実施の形態の復号器の処理の流れを説明するためのフローチャートである。
【００５９】
＜ステップＳ１１〜Ｓ１３＞  
第１の実施の形態の復号器１の処理Ｓ１〜Ｓ３と同じであるので説明は省略する。
【００６０】
＜ステップＳ１４＞  対数外部値比判定によるカラム異常検出  
本実施の形態のＬＤＰＣ復号器の制御部は、対数外部値比αの過半数の符号が、ＬＬＲの符号と反対の場合、このメモリセル１３Ｄは異常、例えば、カラム不良であると判定する。
【００６１】
＜ステップＳ１５〜Ｓ１７＞  
第１の実施の形態の復号器１の処理Ｓ５〜Ｓ７と同じであるので説明は省略する。
【００６２】
＜ステップＳ１８＞  ＬＬＲ更新  
パリティチェックの結果、誤りがあった場合（Ｓ７：Ｎｏ）、本実施の形態のＬＤＰＣ制御部は、ＬＬＲ更新器２４を制御して、ＬＬＲの信頼性を減じて、信頼性ｍすなわち、ＬＬＲの絶対値を半分にする。すなわち、当該メモリセル１３Ｄに記憶されていたデータは、信頼性が低いとする。
【００６３】
そして、復号器は、Ｓ１３からのイタレーション処理を繰り返す。なお、所定の回数、イタレーション処理を行っても、パリティチェックの結果、誤りがある場合には、復号器は、エラーを出力する。
【００６４】
本実施の形態の復号器、メモリコントローラおよびメモリカードは、第１の実施の形態の復号器１、メモリコントローラ２およびメモリカード３と同様の効果を有する。
【００６５】
なお、第１の実施の形態の復号器１の対数外部値比判定によるカラム異常検出ステップＳ４処理と、第２の実施の形態の復号器の対数外部値比判定によるカラム異常検出ステップＳ１４と処理は、互いに入れ替えても同様の効果を得ることができる。また、第１の実施の形態の復号器１のＬＬＲ更新ステップＳ８処理と、第２の実施の形態のＬＬＲ更新ステップＳ１８処理とは、互いに入れ替えても同様の効果を得ることができる。
【００６６】
また、以上の説明では、ＬＬＲ更新ステップにおいて、ＬＬＲの信頼度を減ずる場合、信頼度を０にする場合および半分にする場合を例示したが、これに限られるものではなく、１／４または１／１０等としてもよい。
【００６７】
また、ホスト４と接続されるメモリカード３からなるメモリシステムを例に説明したが、メモリシステムとしては、ホスト４の内部に収納され、ホスト４の起動データ等を記憶する、いわゆるエンベデッドタイプのＮＡＮＤ型フラッシュメモリ装置等でもメモリカード３等と同じ効果を得ることができる。さらには、符号化データの復号を確率に基づく反復計算により行う復号器であれば、デジタルテレビ放送受信機等の復号器でも半導体メモリシステムと同じ効果を得ることができる。
【００６８】
また、確率に基づく反復計算により符号化されたデータの復号であれば、Sum-product復号に限らず、min-sum復号や、正規化min-sum復号においても、同様の効果を得ることができる。
【００６９】
上記のように、本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【図面の簡単な説明】
【００７０】
【図１】第１の実施の形態のメモリカードの概略構成を示す構成図である。
【図２】ＬＤＰＣ符号における対数尤度比を説明するための図である。
【図３】ＬＤＰＣ符号における反復復号について説明するための図である。
【図４】タナーグラフＧの一部を示している図である。
【図５】第１の実施の形態の復号器の構成を示す構成図である。
【図６】４値記憶メモリセルの場合の閾値電圧データに対応した尤度比テーブルのイメージ図である。
【図７】メモリ部の構成を示した構成図である。
【図８】４値記憶メモリセルにおいてカラム不良が発生した場合の閾値電圧分布のイメージ図である。
【図９】第１の実施の形態の復号器の処理の流れを説明するためのフローチャートである。
【図１０】第２の実施の形態の復号器の処理の流れを説明するためのフローチャートである。
【符号の説明】
【００７１】
１…復号器
２…メモリコントローラ
３…メモリカード
４…ホスト
１１…ＣＰＵコア
１１…符号化器
１３…メモリ部
１３Ｂ…ブロック
１３Ｄ…メモリセル
１３Ｅ…ビット線
１５…ＥＣＣ部
１７…バス
２０…ＬＬＲ生成器
２１…尤度比テーブル
２２…ＬＤＰＣ復号器
２３…ＬＤＰＣパリティチェック器
２４…ＬＬＲ更新器
２５…ＬＤＰＣ制御部
【図１】
2010109468.tif 000003
【図２】
2010109468.tif 000004
【図３】
2010109468.tif 000005
【図４】
2010109468.tif 000006
【図５】
2010109468.tif 000007
【図６】
2010109468.tif 000008
【図７】
2010109468.tif 000009
【図８】
2010109468.tif 000010
【図９】
2010109468.tif 000011
【図１０】
2010109468.tif 000012