(57)【要約】【課題】向上された信頼性及び低減された複雑度を有する、不揮発性メモリ装置を制御するように構成されるコントローラの動作方法を提供する。【解決手段】本発明の動作方法は、情報ビットを極符号化して符号語（ｃｏｄｅ  ｗｏｒｄ）を生成する段階と、マッピングパターンを読み出す段階と、マッピングパターンを反復して反復されたマッピングパターンを生成する段階と、反復されたマッピングパターンに従って符号語の各ビットを不揮発性メモリ装置のマルチビットデータの中の特定ビットにマッピングする段階と、で構成される。【選択図】図７
2013225307.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリ装置を制御するように構成されるコントローラの動作方法において、
情報ビットを極符号化して符号語を生成する段階と、
マッピングパターンを読み出す段階と、
前記マッピングパターンを反復して反復されたマッピングパターンを生成する段階と、
前記反復されたマッピングパターンに従って、前記符号語の各ビットを前記不揮発性メモリ装置のマルチビットデータの中で特定ビットにマッピングする段階と、を含むことを特徴とする動作方法。
【請求項２】
前記反復されたマッピングパターンの長さは前記符号語の長さと同一であることを特徴とする請求項１に記載の動作方法。
【請求項３】
前記マッピングする段階は、
前記反復されたマッピングパターンに従って、前記符号語の各ビットを最下位ビット又は最上位ビットにマッピングする段階を含むことを特徴とする請求項１に記載の動作方法。
【請求項４】
前記マッピングする段階は、
前記反復されたマッピングパターンに従って、前記符号語の各ビットを最下位ビット、中間ビット、又は最上位ビットにマッピングする段階を含むことを特徴とする請求項１に記載の動作方法。
【請求項５】
前記マッピングされた符号語をマルチビット書込みデータに前記不揮発性メモリ装置へ伝送する段階をさらに含むことを特徴とする請求項１に記載の動作方法。
【請求項６】
前記不揮発性メモリ装置からマルチビット読出しデータを受信する段階と、
前記反復されたマッピングパターンに基づいて前記マルチビット読出しデータを読み出された符号語に変換する段階と、
前記読み出された符号語をデコーディングする段階と、をさらに含むことを特徴とする請求項５に記載の動作方法。
【請求項７】
極符号化された符号語を不揮発性メモリ装置のマルチビットにマッピングするマッピングパターンを選択するマッピングパターン選択方法において、
複数のパターンを生成する段階と、
前記複数のパターンを各々反復して複数の反復されたパターンを生成する段階と、
前記複数の反復されたパターンのエラー率を各々計算する段階と、
前記計算されたエラー率に従って、前記複数の反復されたパターンの中で１つの反復されたパターンを選択する段階と、を含むことを特徴とするマッピングパターン選択方法。
【請求項８】
前記エラー率を各々計算する段階は前記マルチビットの確率密度関数に基づいて遂行されることを特徴とする請求項７に記載のマッピングパターン選択方法。
【請求項９】
前記エラー率を各々計算する段階は、
前記マルチビットの確率密度関数に基づいて、極符号化器の入力端のビットのエラー率を各々計算する段階を含むことを特徴とする請求項８に記載のマッピングパターン選択方法。
【請求項１０】
前記極符号化器の入力端のビットのエラー率の中で少なくとも１つのエラー率が基準値より大きい時、該当反復されたパターンは非選択されることを特徴とする請求項９に記載のマッピングパターン選択方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体メモリに係り、より詳細には不揮発性メモリ装置を制御するコントローラの動作方法、及び、極符号化された符号語（ｐｏｌａｒ  ｃｏｄｅｄ  ｃｏｄｅ  ｗｏｒｄ）を不揮発性メモリ装置のマルチビットデータにマッピングするマッピングパターン選択方法に関する。
【背景技術】
【０００２】
半導体メモリ装置（ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）はシリコン（Ｓｉ、ｓｉｌｉｃｏｎ）、ゲルマニウム（Ｇｅ、ｇｅｒｍａｎｉｕｍ）、砒素ガリウム（ＧａＡｓ、ｇａｌｌｉｕｍ  ａｒｓｅｎｉｄｅ）、リン化インジウム（ＩｎＰ、ｉｎｄｉｕｍ  ｐｈｏｓｐｉｄｅ）等の半導体を利用して具現される記憶装置である。半導体メモリ装置は大きく、揮発性メモリ装置（Ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）と不揮発性メモリ装置（Ｎｏｎｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）とに区分される。
【０００３】
揮発性メモリ装置は、電源供給が遮断されると格納されたデータが消滅するメモリ装置であり、揮発性メモリ装置にはＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  ＤＲＡＭ）等がある。不揮発性メモリ装置は電源供給が遮断されても格納されたデータを維持するメモリ装置であり、不揮発性メモリ装置にはＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、フラッシュメモリ装置、ＰＲＡＭ（Ｐｈａｓｅ−ｃｈａｎｇｅ  ＲＡＭ）、ＭＲＡＭ（Ｍａｇｎｅｔｉｃ  ＲＡＭ）、ＲＲＡＭ(登録商標)（Ｒｅｓｉｓｔｉｖｅ  ＲＡＭ）、ＦＲＡＭ(登録商標)（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  ＲＡＭ）等がある。フラッシュメモリ装置は大きく、ＮＯＲタイプとＮＡＮＤタイプとに区分される。
【０００４】
最近、極符号化（ｐｏｌａｒ＿ｅｎｃｏｄｉｎｇ）が、大きいクラスのチャネルに対する簡素な符号化スキームとして導入された。極符号化では通常、２つのレベルの極性、即ち、正と負の振幅を用いてビットを表わす。極符号化の普通の型はＮＲＺ（Ｎｏｎ−Ｒｅｔｕｒｎ−ｔｏ−Ｚｅｒｏ）であり、ＮＲＺの場合信号レベルは送信されたバイナリデジットにより決定される。即ち、バイナリ‘１’は正電圧で、バイナリ‘０’は負電圧で示される。しかしながら、極符号化を使用する不揮発性メモリを制御する方法と装置が必要になる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許公開第２００９／０２８２３１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、不揮発性メモリ装置を制御する、向上された信頼性と低減された複雑度とを有するコントローラの動作方法、及び、極符号化された符号語を不揮発性メモリ装置のマルチビットデータにマッピングする、向上された信頼性と低減された複雑度とを有するマッピングパターン選択方法を提供することにある。
【課題を解決するための手段】
【０００７】
不揮発性メモリ装置を制御するように構成される本発明の実施形態によるコントローラの動作方法は、情報ビットを極符号化して符号語（ｃｏｄｅ  ｗｏｒｄ）を生成する段階と、マッピングパターンを読み出す段階と、前記マッピングパターンを反復して反復されたマッピングパターンを生成する段階と、前記反復されたマッピングパターンに従って、前記符号語の各ビットを前記不揮発性メモリ装置のマルチビットデータの中の特定ビットにマッピングする段階と、を含む。
【０００８】
実施形態として、前記反復されたマッピングパターンの長さは前記符号語の長さと同一である。
実施形態として、前記マッピングする段階は、前記反復されたマッピングパターンに従って、前記符号語の各ビットを最下位ビット又は最上位ビットにマッピングする段階を含む。
実施形態として、前記マッピングする段階は、前記反復されたマッピングパターンに従って、前記符号語の各ビットを最下位ビット、中間ビット（ＣＳＢ：Ｃｅｎｔｒａｌ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）、又は最上位ビットにマッピングする段階を含む。
実施形態として、前記マッピングされた符号語をマルチビット書込みデータに前記不揮発性メモリ装置へ伝送する段階をさらに含む。
実施形態として、前記不揮発性メモリ装置からマルチビット読出しデータを受信する段階と、前記反復されたマッピングパターンに基づいて前記マルチビット読出しデータを読み出された符号語に変換する段階と、前記読み出された符号語をデコーディングする段階と、をさらに含む。
【０００９】
実施形態として、前記マッピングされた符号語をエラー訂正エンコーディングする段階と、前記エラー訂正エンコーディングされた符号語をマルチビット書込みデータに前記不揮発性メモリ装置へ伝送する段階と、をさらに含む。
実施形態として、前記不揮発性メモリ装置から最上位ビット読出しデータ及び最下位ビット読出しデータを受信する段階と、前記最上位ビット読出しデータ及び最下位ビット読出しデータをエラー訂正デコーディングする段階と、前記反復されたマッピングパターンに基づいて前記エラー訂正デコーディングされた最上位ビット読出しデータ及び最下位ビット読出しデータを読み出された符号語に変換する段階と、前記読み出された符号語を復号する段階と、をさらに含む。
【００１０】
極符号化された符号語を不揮発性メモリ装置のマルチビットにマッピングする本発明の実施形態によるマッピングパターンを選択するマッピングパターン選択方法は、複数のパターンを生成する段階と、前記複数のパターンを各々反復して複数の反復されたパターンを生成する段階と、前記複数の反復されたパターンのエラー率を各々計算する段階と、前記計算されたエラー率に従って、前記複数の反復されたパターンの中で１つの反復されたパターンを選択する段階と、を含む。
【００１１】
実施形態として、前記エラー率を各々計算する段階は前記マルチビットの確率密度関数に基づいて遂行される。
実施形態として、前記エラー率を各々計算する段階は、前記マルチビットの確率密度関数に基づいて、極符号化器の入力端のビットのエラー率を各々計算する段階を含む。
実施形態として、前記極符号化器の入力端のビットのエラー率の中で少なくとも１つのエラー率が基準値より大きい時、該当反復されたパターンは非選択される。
【００１２】
実施形態として、前記極符号化器の入力端のビットのエラー率の平均が最も低い反復されたパターンが選択される。
実施形態として、前記選択された反復されたパターンに対応するパターンを不揮発性メモリ装置のコントローラに格納する段階をさらに含む。
実施形態として、前記反復されたパターンの長さは前記極符号化された符号語の長さと同一である。
【発明の効果】
【００１３】
本発明によれば、反復されたパターンに従って極符号化された符号語がマルチビットデータにマッピングされる。従って、不揮発性メモリ装置を制御する、向上された信頼性と低減された複雑度とを有するコントローラの動作方法、及び、極符号化された符号語を不揮発性メモリ装置のマルチビットデータにマッピングする、向上された信頼性と低減された複雑度とを有するマッピングパターン選択方法が提供される。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態によるメモリシステムを示すブロック図である
【図２】図１の不揮発性メモリ装置を示すブロック図である。
【図３】第１実施形態によるメモリセルアレイを示す回路図である。
【図４】第２実施形態によるメモリセルアレイを示す回路図である。
【図５】第１実施形態によるコントローラを示すブロック図である。
【図６】極符号エンコーダー／デコーダーが符号語をマルチビットデータにマッピングする例を示すテーブルである。
【図７】本発明の実施形態によるコントローラの動作方法を示す順序図である。
【図８】極符号エンコーダー／デコーダーの例を示すブロック図である。
【図９】極符号エンコーダー／デコーダーのエンコーディング過程の例を示すテーブルである。
【図１０】第１例に従う生成行列エンコーディング部を示す。
【図１１】第２例に従う生成行列エンコーディング部を示す。
【図１２】第３例に従う生成行列エンコーディング部を示す。
【図１３】図１の不揮発性メモリ装置及びコントローラ、そしてコントローラと連結されたテスト装置を示すブロック図である。
【図１４】本発明の実施形態によるマッピングパターン選択方法を示す順序図である。
【図１５】図１３のテスト装置を示すブロック図である。
【図１６】第２実施形態によるコントローラを示すブロック図である。
【図１７】図１のメモリシステムの応用例を示すブロック図である。
【図１８】本発明の実施形態によるメモリカードを示す。
【図１９】本発明の実施形態によるソリッドステートドライブを示す。
【図２０】本発明の実施形態によるコンピューティングシステムを示すブロック図である。
【発明を実施するための形態】
【００１５】
以下で、本発明が属する技術分野で通常の知識を有する者が本発明の技術的思想を容易に実施できるようにするために、本発明の実施形態を添付した図面を参照して詳細に説明する。
【００１６】
図１は本発明の実施形態によるメモリシステム１０００を示すブロック図である。図１を参照すれば、メモリシステム１０００は不揮発性メモリ装置１１００及びコントローラ１２００を含む。
不揮発性メモリ装置１１００はコントローラ１２００の制御に従って書込み、読出し、及び消去を遂行するように構成される。
【００１７】
コントローラ１２００はホスト（Ｈｏｓｔ）１４００及び不揮発性メモリ装置１１００に連結される。ホスト１４００からの要請に応答して、コントローラ１２００は不揮発性メモリ装置１１００にアクセスするように構成されている。例えば、コントローラ１２００は不揮発性メモリ装置１１００の読出し、書込み、及び消去動作を制御するように構成されている。そのために、コントローラ１２００は不揮発性メモリ装置１１００及びホスト１４００の間にインターフェイスを提供し、不揮発性メモリ装置１１００を制御するためのファームウェア（ｆｉｒｍｗａｒｅ）を駆動するように構成されている。
【００１８】
コントローラ１２００はホスト１４００からデータＤＡＴＡを受信し、受信したデータを符号化して符号化された（ｃｏｄｅｄ）データＤＡＴＡ＿Ｃを生成する。コントローラ１２００は不揮発性メモリ装置１１００に制御信号ＣＴＲＬ及びアドレスＡＤＤＲに提供し、不揮発性メモリ装置１１００と符号化されたデータＤＡＴＡ＿Ｃを交換するように構成されている。コントローラ１２００は不揮発性メモリ装置１１００から符号化されたデータＤＡＴＡ＿Ｃを受信し、これを逆符号化してデータＤＡＴＡを復元するように構成されている。コントローラ１２００は復元されたデータＤＡＴＡをホストへ伝送する。
【００１９】
図２は図１の不揮発性メモリ装置１１００を示すブロック図である。図２を参照すれば、不揮発性メモリ装置１１００はメモリセルアレイ１１１０、アドレスデコーダー１１２０、読出し／書込み回路１１３０、及び制御ロジック１１４０を含む。
【００２０】
メモリセルアレイ１１１０はワードラインＷＬを通じてアドレスデコーダー１１２０に連結され、ビットラインＢＬを通じて読出し／書込み回路１１３０に連結される。メモリセルアレイ１１１０は複数のメモリセルを含む。例示的に、同一の行方向に配列されたメモリセルは同一のワードラインＷＬに連結される。同一の列方向に配列されたメモリセルは同一のビットラインＢＬに対応する。その場合、同一の列方向に配列されるメモリセルはセルグループ（セルストリングという）を形成する。そして、ビットラインＢＬに各々対応して連結される。例示的に、メモリセルアレイ１１１０はセルストリング当たり１つ又はその以上のビットを格納できる複数のメモリセルで構成される。
【００２１】
アドレスデコーダー１１２０はワードラインＷＬを通じてメモリセルアレイ１１１０に連結される。アドレスデコーダー１１２０は制御ロジック１１４０の制御に応答して動作するように構成される。アドレスデコーダー１１２０は外部からアドレスＡＤＤＲを受信する。
【００２２】
アドレスデコーダー１１２０は受信されたアドレスＡＤＤＲの中の行アドレスをデコーディングするように構成される。デコーディングされた行アドレスを利用して、アドレスデコーダー１１２０はワードラインＷＬを選択する。アドレスデコーダー１１２０は、伝達されたアドレスＡＤＤＲの中の列アドレスをデコーディングするように構成される。デコーディングされた列アドレスＤＣＡは読出し／書込み回路１１３０へ伝達される。例示的に、アドレスデコーダー１１２０は行デコーダー、列デコーダー、アドレスバッファ等の構成要素を含む。
【００２３】
読出し／書込み回路１１３０はビットラインＢＬを通じてメモリセルアレイ１１１０に連結され、外部と符号化されたデータＤＡＴＡ＿Ｃを交換する。読出し／書込み回路１１３０は制御ロジック１１４０の制御に応答して動作する。読出し／書込み回路１１３０はアドレスデコーダー１１２０からデコーディングされた列アドレスＤＣＡを受信するように構成される。デコーディングされた列アドレスＤＣＡを利用して、読出し／書込み回路１１３０はビットラインＢＬを選択する。
【００２４】
例示的に、読出し／書込み回路１１３０は外部から符号化されたデータＤＡＴＡ＿Ｃを受信し、受信されたデータＤＡＴＡ＿Ｃをメモリセルアレイ１１１０に書き込む。読出し／書込み回路１１３０はメモリセルアレイ１１１０から符号化されたデータＤＡＴＡ＿Ｃを読出し、読み出されたデータＤＡＴＡ＿Ｃを外部へ伝達する。読出し／書込み回路１１３０はメモリセルアレイ１１１０の第１格納領域からデータを読出し、読み出されたデータをメモリセルアレイ１１１０の第２格納領域に書き込む。例えば、読出し／書込み回路１１３０はコピーバック（ｃｏｐｙ−ｂａｃｋ）動作を遂行するように構成される。
【００２５】
例示的に、読出し／書込み回路１１３０はページバッファ（又はページレジスター）、列選択回路、データバッファ等の構成要素を含む。他の例として、読出し／書込み回路１１３０は感知増幅器、書込みドライバー、列選択回路、データバッファ等構成要素を含む。
【００２６】
制御ロジック１１４０はアドレスデコーダー１１２０と読出し／書込み回路１１３０に連結される。制御ロジック１１４０は不揮発性メモリ装置１１００の諸般動作を制御するように構成される。
【００２７】
図３は第１実施形態によるメモリセルアレイ１１１０ａを示す回路図である。図３を参照すれば、同一の列方向に沿って提供され、一つのセルストリングを構成するメモリセルＭＣ１〜ＭＣｍは各々、対応するワードラインＷＬ１〜ＷＬｍに連結される。同一行のメモリセルＭＣは同一のワードラインＷＬに連結される。
【００２８】
異なる列方向に沿って提供され、各々メモリセルＭＣ１〜ＭＣｍからなるセルストリングは、ビットラインＢＬ１〜ＢＬｎに対応する。即ち、同一の列のメモリセルＭＣ１〜ＭＣｍは同一のビットラインＢＬに対応する。
【００２９】
ビットラインＢＬ１〜ＢＬｎと、メモリセルＭＣ１〜ＭＣｍから構成された対応するセルストリングとの間にストリング選択トランジスターＳＳＴが連結される。ストリング選択トランジスターＳＳＴはストリング選択ラインＳＳＬに連結される。共通ソースラインＣＳＬとメモリセルＭＣ１〜ＭＣｍとの間に接地選択トランジスターＧＳＴが連結される。接地選択トランジスターＧＳＴは接地選択ラインＧＳＬに連結され得る。
【００３０】
メモリセルアレイ１１１０ａは平面型（ｐｌａｎａｒ）ＮＡＮＤフラッシュメモリアレイであり得、メモリセルＭＣ１〜ＭＣｍは縦続接続されてセルストリングを形成する。
【００３１】
図４は第２実施形態によるメモリセルアレイ１１１０ｂを示す回路図である。図４を参照すれば、ビットラインＢＬ１、ＢＬ２及び共通ソースラインＣＳＬの間にセルストリングＣＳ１１、ＣＳ１２、ＣＳ２１、ＣＳ２２が提供される。第１ビットラインＢＬ１と共通ソースラインＣＳＬとの間にセルストリングＣＳ１１、ＣＳ２１が連結され、第２ビットラインＢＬ２と共通ソースラインＣＳＬとの間にセルストリングＣＳ１２、ＣＳ２２が連結される。
【００３２】
セルストリング中の同一高さの（同一位置に配置された）メモリセルは１つのワードライン（又はダミーワードライン）に共通に連結されている。従って、特定の高さのワードライン（又はダミーワードライン）へ電圧が供給される時、すべてのセルストリングＣＳ１１、ＣＳ１２、ＣＳ２１、ＣＳ２２の対応する位置に配置されたセルへ電圧が供給される。
【００３３】
同一の列に属する異なるセルストリングは、異なるストリング選択ラインＳＳＬ１、ＳＳＬ２に各々連結される。第１及び第２ストリング選択ラインＳＳＬ１、ＳＳＬ２を選択及び非選択することによって、セルストリングＣＳ１１、ＣＳ１２、ＣＳ２１、ＣＳ２２が選択及び非選択され得る、例えば非選択されたストリング選択ラインＳＳＬ１（又は、ＳＳＬ２）に連結されたセルストリングＣＳ１１及びＣＳ１２（又は、ＣＳ２１及びＣＳ２２）はビットラインＢＬ１、ＢＬ２から電気的に分離される。一方、選択されたストリング選択ラインＳＳＬ２（又は、ＳＳＬ１）に連結されたセルストリングＣＳ２１及びＣＳ２２（又は、ＣＳ１１及びＣＳ１２）はビットラインＢＬ１、ＢＬ２に電気的に連結される。
【００３４】
セルストリングＣＳ１１、ＣＳ１２、ＣＳ２１、ＣＳ２２はビットラインＢＬ１、ＢＬ２に連結され、より具体的には、第１ビットラインＢＬ１にセルストリングＣＳ１１、ＣＳ２１が連結され、第２ビットラインＢＬ２にセルストリングＣＳ１２、ＣＳ２２が連結される。ビットラインＢＬ１、ＢＬ２を選択（又は、非選択）することによって、各々、セルストリングの組（ＣＳ１１、ＣＳ２１）、（ＣＳ１２、ＣＳ２２）が選択（又は、非選択）される。
【００３５】
メモリセルアレイ１１１０ｂは垂直形（ｖｅｒｔｉｃａｌ）ＮＡＮＤフラッシュメモリアレイであり得、メモリセルＭＣ１〜ＭＣｍは縦続接続されてセルストリングを形成する。
【００３６】
図５は第１実施形態によるコントローラ１２００を示すブロック図である。図５を参照すれば、コントローラ１２００はシステムバス１２１０、プロセッサー１２２０、ＲＡＭ１２３０、ホストインターフェイス１２４０、メモリインターフェイス１２５０、及び極符号エンコーダー／デコーダー１２６０を含む。
【００３７】
システムバス１２１０はプロセッサー１２２０、ＲＡＭ１２３０、ホストインターフェイス１２４０、メモリインターフェイス１２５０、及び極符号エンコーダー／デコーダー１２６０の間にチャンネルを提供する。
【００３８】
プロセッサー１２２０はコントローラ１２００の諸般動作を制御する。
ＲＡＭ（１２３０）はプロセッサー１２２０の動作メモリ（ｗｏｒｋｉｎｇ＿ｍｅｍｏｒｙ、スクラッチパッドともいう）、キャッシュメモリ、及びバッファメモリの中で少なくとも１つに利用され得る。
【００３９】
ホストインターフェイス１２４０は特定の通信規格に従って、不揮発性メモリ装置１１００と通信できる。例示的に、コントローラ１２００はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＭＭＣ（ｍｕｌｔｉｍｅｄｉａ  ｃａｒｄ）、ＰＣＩ（ｐｅｒｉｐｈｅｒａｌ  ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ）、ＰＣＩ−Ｅ（ＰＣＩ−ｅｘｐｒｅｓｓ）、ＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）、Ｓｅｒｉａｌ−ＡＴＡ、Ｐａｒａｌｌｅｌ−ＡＴＡ、ＳＣＳＩ（ｓｍａｌｌ  ｃｏｍｐｕｔｅｒ  ｓｍａｌｌ  ｉｎｔｅｒｆａｃｅ）、ＥＳＤＩ（ｅｎｈａｎｃｅｄ  ｓｍａｌｌ  ｄｉｓｋ  ｉｎｔｅｒｆａｃｅ）、ＩＤＥ（Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ）、及びファイアーワイヤ（Ｆｉｒｅｗｉｒｅ）等の多様な通信規格の中で少なくとも１つを通じて外部（ホスト）と通信するように構成される。
【００４０】
メモリインターフェイス１２５０は不揮発性メモリ装置１１００（図１参照）とインターフェイシングする。例えば、メモリインターフェイス１２５０はＮＡＮＤインターフェイス又はＮＯＲインターフェイスを含む。
【００４１】
極符号エンコーダー／デコーダー１２６０は外部ホストから受信されるデータを極符号エンコーディングし、不揮発性メモリ装置１１００から受信されるデータを極符号デコーディングするように構成される。
【００４２】
不揮発性メモリ装置１１００が１つのメモリセルにマルチビットデータ（例えば、２又はその以上のビット）を格納するマルチビットセルを包含する時、極符号エンコーダー／デコーダー１２６０は極符号化された符号語（ｃｏｄｅ  ｗｏｒｄ）のビットをマルチビットデータ（例えば、最下位ビット（ＬＳＢ、Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）、中間ビット（ＣＳＢ、Ｃｅｎｔｅａｌ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）、及び最上位ビット（ＭＳＢ、Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）にマッピング（ｍａｐｐｉｎｇ）するように構成される。最上位ビットＭＳＢにマッピングされた符号語ビットは不揮発性メモリ装置１１００に最上位ビットＭＳＢとして書き込まれる。中間ビットＣＳＢにマッピングされた符号語ビットは不揮発性メモリ装置１１００に中間ビットＣＳＢとして書き込まれる。最下位ビットＬＳＢにマッピングされた符号語ビットは不揮発性メモリ装置１１００に最下位ビットＬＳＢとして書き込まれる。
【００４３】
また、極符号エンコーダー／デコーダー１２６０は不揮発性メモリ装置１１００から読み出される最下位ビットＬＳＢ、中間ビットＣＳＢ及び最上位ビットＭＳＢをデマッピング（ｄｅｍａｐｐｉｎｇ）して符号語（ｃｏｄｅ  ｗｏｒｄ）を復元するように構成される。
【００４４】
図６は極符号エンコーダー／デコーダー１２６０が符号語をマルチビットデータにマッピングする例を示すテーブルである。図５及び図６を参照すれば、１つのメモリセルに２ビットデータが格納され、符号語の長さが２ビットである時、符号語は２つのパターンの中で１つに従って、マルチビットデータにマッピングされ得る。例えば、符号語の第１番目ビットはＬＳＢにマッピングされ、第２番目ビットはＭＳＢにマッピングされ得る。反対に、符号語の第１番目ビットはＭＳＢにマッピングされ、第２番目ビットはＬＳＢにマッピングされ得る。
【００４５】
１つのメモリセルに２ビットデータが格納され、符号語の長さが４ビットである時、符号語は６つのパターンの中の１つに従って、マルチビットデータにマッピングされる。
例えば、符号語の第１番目ビットはＭＳＢにマッピングされ、第２番目ビットはＭＳＢにマッピングされ、第３番目ビットはＬＳＢにマッピングされ、そして第４番目ビットはＬＳＢにマッピングされる。
【００４６】
他の例として、符号語の第１番目ビットはＭＳＢにマッピングされ、第２番目ビットはＬＳＢにマッピングされ、第３番目ビットはＭＳＢにマッピングされ、そして第４番目ビットはＬＳＢにマッピングされる。
【００４７】
更に他の例として、符号語の第１番目ビットはＭＳＢにマッピングされ、第２番目ビットはＬＳＢにマッピングされ、第３番目ビットはＬＳＢにマッピングされ、そして第４番目ビットはＭＳＢにマッピングされる。
【００４８】
更に他の例として、符号語の第１番目ビットはＬＳＢにマッピングされ、第２番目ビットはＬＳＢにマッピングされ、第３番目ビットはＭＳＢにマッピングされ、そして第４番目ビットはＭＳＢにマッピングされる。
【００４９】
更に他の例として、符号語の第１番目ビットはＬＳＢにマッピングされ、第２番目ビットはＬＳＢにマッピングされ、第３番目ビットはＬＳＢにマッピングされ、そして第４番目ビットはＭＳＢにマッピングされる。
【００５０】
更に他の例として、符号語の第１番目ビットはＬＳＢにマッピングされ、第２番目ビットはＭＳＢにマッピングされ、第３番目ビットはＭＳＢにマッピングされ、そして第４番目ビットはＬＳＢにマッピングされ得る。
【００５１】
１つのメモリセルに２ビットデータが格納され、符号語の長さがｎビットである時、符号語は数学式１に従って計算される数のパターンの中の１つに従ってマルチビットデータにマッピングされる。
［数学式１］
（ｎ！）／（（ｎ／２）！）２
【００５２】
１つのメモリセルにｍビットデータが格納され、符号語の長さがｎビットである時、符号語は数学式２に従って計算される数のパターンの中で１つに従ってマルチビットデータにマッピングされる。
［数学式２］
（ｎ！）／（（ｎ／ｍ）！）ｍ
【００５３】
即ち、符号語の長さが増加するほど、又は１つのメモリセルに格納されるマルチビットデータの個数が増加するほど、符号語がマッピングされるパターンの数は増加する。
【００５４】
パターンの中で最も低いエラー率を有するパターンが選択され、選択されたパターンに従って、符号語のビットとマルチビットデータとの間でマッピングされれば、メモリシステム１０００の信頼性が向上される。しかし、最も低いエラー率を有するパターンを探すためには、数学式２に該当する数のパターンのエラー率を全て計算し、計算結果を比較しなければならないオーバーヘッドが要求される。
【００５５】
このような問題を防止するために、本発明の実施形態による極符号エンコーダー／デコーダー１２６０は符号語の長さより短い長さを有するパターンを反復して反復されたパターンを生成し、そして反復されたパターンに従って符号語ビットをマルチビットデータにマッピングする。
【００５６】
図７は本発明の実施形態によるコントローラ１２００の動作方法を示す順序図である。例示的に、図７の動作方法はコントローラ１２００の極符号エンコーダー／デコーダー１２６０によって遂行される。図５及び図７を参照すれば、Ｓ１１０段階で、コントローラ１２００は情報ビットを極符号エンコーディングする。コントローラ１２００は外部（ホスト）から情報ビットを受信し、受信された情報ビットに固定ビット（ｆｒｏｚｅｎ  ｂｉｔｓ）を追加して入力語（ｉｎｐｕｔ  ｗｏｒｄ）を生成し、そして入力語に生成行列（Ｇｅｎｅｒａｔｉｏｎ  Ｍａｔｒｉｘ）を演算して極符号化された符号語（ｃｏｄｅ  ｗｏｒｄ）を生成する。
【００５７】
Ｓ１２０段階で、コントローラ１２００はマッピングパターンを読み出す。例えばコントローラ１２００はコントローラ１２００の内部に予め格納されているマッピングパターンを読み出す。
【００５８】
Ｓ１３０段階で、コントローラ１２００はマッピングパターンを繰り返す。コントローラ１２００は読み出されたパターンを反復して反復されたパターンを生成する。反復して生成されたパターンの長さは極符号化された符号語の長さと同一であり得る。
【００５９】
Ｓ１４０段階で、コントローラ１２００は反復されたマッピングパターンに従って符号語をマルチビットデータにマッピングする。不揮発性メモリ装置１１００が１つのメモリセルに２ビットデータを格納する時、コントローラ１２００は反復されたマッピングパターンに従って符号語の各ビットをＬＳＢ又はＭＳＢにマッピングできる。
【００６０】
不揮発性メモリ装置１１００が１つのメモリセルに３ビットデータを格納する時、コントローラ１２００は反復されたマッピングパターンに従って符号語の各ビットをＬＳＢ、ＣＳＢ又はＭＳＢにマッピングできる。
【００６１】
不揮発性メモリ装置１１００が１つのメモリセルにｍビットデータを格納する時、コントローラ１２００は反復されたマッピングパターンに従って符号語の各ビットをｍ個のマルチビットデータの中の１つにマッピングできる。
【００６２】
例示的に、エンコーディング及びマッピングは図５の極符号エンコーダー／デコーダー１２６０によって遂行できる。他の例として、エンコーディングは図５の極符号エンコーダー／デコーダー１２６０によって遂行され、マッピングを遂行する別の機能ブロックがコントローラ１２００に提供される。
【００６３】
図８は極符号エンコーダー／デコーダー１２６０の例を示すブロック図である。図５及び図８を参照すれば、極符号エンコーダー／デコーダー１２６０はパターン及び位置情報格納部１２６１、固定ビット挿入部１２６２、生成行列エンコーディング部１２６３、パターン反復部１２６４、ビット分類部１２６５、マッピング及びデマッピング部１２６６、及び連続除去デコーディング部１２６７を含む。
【００６４】
パターン及び位置情報格納部１２６１はパターンＰ及び位置情報ＬＩを格納するように構成される。パターンＰは符号語Ｃｎとマルチビットデータとの間をマッピングするためのデータであり得る。パターン及び位置情報格納部１２６１に格納されたパターンＰの長さは符号語Ｃｎの長さより短い。パターン及び位置情報格納部１２６１に格納されたパターンＰの長さは符号語Ｃｎの長さの素因数の中の１つか、又は２つ以上の素因数の積の１つである。
位置情報ＬＩは固定ビット（ｆｒｏｚｅｎ  ｂｉｔ）が挿入される位置に関する情報を示す。
【００６５】
固定ビット挿入部１２６２は情報ビットＩｋを受信する。例えば、外部のホストからホストインターフェイス１２４０を通じて情報ビットＩｋが受信される。情報ビットの長さはｋである。
【００６６】
固定ビット挿入部１２６２はパターン及び位置情報格納部１２６１から位置情報ＬＩを受信する。固定ビット挿入部１２６２は情報ビットＩｋに対して位置情報ＬＩが示す位置に固定ビットを挿入する。固定ビットは‘０’、‘１’、又は特定のビットパターンを有し得る。固定ビット挿入部１２６２は情報ビットＩｋへ固定ビットを挿入して、入力語（Ｕｎ：ｉｎｐｕｔ  ｗｏｒｄ）を生成する。入力語の長さはｎであり、ｎはｋより大きい量の整数である。
【００６７】
生成行列エンコーディング部１２６３は固定ビット挿入部１２６２から入力語Ｕｎを受信する。生成行列エンコーディング部１２６３は入力語Ｕｎに対して生成行列を演算してエンコードし、エンコーディング結果を符号語Ｃｎとして出力する。符号語Ｃｎの長さはｎであり得る。
【００６８】
パターン反復部１２６４はパターン及び位置情報格納部１２６１からパターンＰを受信する。パターン反復部１２６４は受信されたパターンＰを反復して、反復されたパターンＲＰを生成する。パターン反復部１２６４は反復されたパターンＲＰの長さが符号語Ｃｎの長さと同一になるように、パターンＰを反復する。
【００６９】
ビット分類部１２６５はパターン反復部１２６４から反復されたパターンＲＰを受信する。ビット分類部１２６５は反復されたパターンＲＰに基づいて、ビット集合データＳ１〜Ｓｍを生成する。ビット集合データＳ１はマルチビットデータの中で第１番目ビット（例えば、ＬＳＢ）にマッピングされる符号語ビットを示す。ビット集合データＳ２はマルチビットデータの中で第２番目ビット（例えば、ＣＳＢ）にマッピングされる符号語ビットを示す。ビット集合データＳｍはマルチビットデータの中でｍ番目ビット（例えば、ＭＳＢ）にマッピングされる符号語ビットを示す。例示的に、ビット集合データＳ１〜Ｓｍは符号語ビットの位置を示す。
【００７０】
マッピング及びデマッピング部１２６６は生成行列デコーディング部１２６３から符号語Ｃｎを受信し、ビット分類部１２６５からビット集合データＳ１〜Ｓｍを受信する。マッピング及びデマッピング部１２６６はビット集合データＳ１に該当する符号語ビットを例えば、ＬＳＢデータにマッピングする。マッピング及びデマッピング部１２６６はビット集合データＳ２に該当する符号語ビットを例えば、ＣＳＢデータにマッピングする。マッピング及びデマッピング部１２６６はビット集合データＳｍに該当する符号語ビットを例えば、ＭＳＢデータにマッピングする。マッピング結果は符号化されたデータＤＡＴＡ＿Ｃとして出力される。例えば、符号化されたデータＤＡＴＡ＿Ｃはメモリインターフェイス１２５０を通じて不揮発性メモリ装置１１００へ伝送される。
【００７１】
一方、マッピング及びデマッピング部１２６６は符号化されたデータＤＡＴＡ＿Ｃ’を受信する。例えば、不揮発性メモリ装置１１００に書かれた符号化されたデータＤＡＴＡ＿Ｃが読み出され、読み出されたデータＤＡＴＡ＿Ｃ’がメモリインターフェイス１２５０を通じてマッピング及びデマッピング部１２６６に受信される。
【００７２】
読み出されたデータＤＡＴＡ＿Ｃ’はマルチビットデータである。読み出されたデータＤＡＴＡ＿Ｃ’はＬＳＢデータ、ＣＳＢデータ及びＭＳＢデータを包含する。マッピング及びデマッピング部１２６６はビット分類部１２６５から受信されるビット集合データＳ１〜Ｓｍに基づいて、読み出された符号語Ｃｎ’を復元する。マッピング及びデマッピング部１２６６はビット集合データＳ１〜Ｓｍに含まれたマッピング情報を参照して、読み出されたデータＤＡＴＡ＿Ｃを１つのビットずつ順次的に配列して、読み出された符号語Ｃｎ’を復元する。読み出された符号語Ｃｎ’の長さはｎである。
【００７３】
連続除去デコーディング部１２６７はパターン及び位置情報格納部１２６１から位置情報ＬＩを受信し、マッピング及びデマッピング部１２６６から読み出された符号語Ｃｎ’を受信する。連続除去デコーディング部１２６７は位置情報ＬＩ及び読み出された符号語Ｃｎ’に基づいて連続除去デコーディング（Ｓｕｃｃｅｓｓｉｖｅ  Ｃａｎｃｅｌａｔｉｏｎ  Ｄｅｃｏｄｉｎｇ）を遂行できる。連続除去デコーディングの結果は読み出された情報ビットＩｋ’として出力される。例えば、読み出された情報ビットＩｋ’はホストインターフェイス１２４０を通じて外部のホストへ出力される。読み出された情報ビットＩｋ’の長さはｋである。
【００７４】
他の例として、ビット分類部１２６５とマッピング及びデマッピング部１２６６のマッピング部分はマルチプレクサーを形成できる。該マルチプレクサーはパターン反復部１２６４の出力である反復されたパターンＲＰを選択信号として受信し、生成行列エンコーディング部１２６３の出力である符号語Ｃｎを入力信号として受信する。
【００７５】
マルチプレクサーは選択信号である反復されたパターンＲＰがＭＳＢ、ＣＳＢ、ＬＳＢの中のいずれを示すかに従って、入力信号である符号語Ｃｎの各ビットをＭＳＢ、ＣＳＢ、又はＬＳＢビットとして出力する。
【００７６】
例示的に、連続除去デコーディングが遂行される場合が説明された。しかし、本発明の技術的思想は連続除去デコーディングに限定されない。例えば、本発明の技術的思想は信頼伝達（ｂｅｌｉｅｆ  ｐｒｏｐａｇａｔｉｏｎ、グラフィカルモデルに基づき推論を遂行するメッセージパッシングアルゴリズム）のように、極符号化された符号語をデコーディングできる多様な方法に応用され得る。
【００７７】
図９は極符号エンコーダー／デコーダー１２６０のエンコーディング過程の例を示すテーブルである。図８及び図９を参照すれば、生成行列エンコーディング部１２６３は符号語Ｃｎとして例えば、‘１００１１００１１０１１’を生成する。一方、パターン及び位置情報格納部１２６１はパターンＰとしてＬＳＢ−ＣＳＢ−ＭＳＢ−ＣＳＢ−ＭＳＢ−ＬＳＢを出力する。
【００７８】
パターン反復部１２６４はパターンＰを受信し、符号語Ｃｎと同一の長さの反復されたパターンＲＰが生成されるように受信されたパターンＰを反復する。例示的に、符号語Ｃｎの長さが８であり、パターンＰの長さが６であれば、パターンＰを２回反復して反復されたパターンＲＰが生成される。反復されたパターンＲＰは、この場合、ＬＳＢ−ＣＳＢ−ＭＳＢ−ＣＳＢ−ＭＳＢ−ＬＳＢ−ＬＳＢ−ＣＳＢ−ＭＳＢ−ＣＳＢ−ＭＳＢ−ＬＳＢである。
【００７９】
ビット分類部１２６５は反復されたパターンＲＰに基づいてビット集合データＳ１〜Ｓｍを生成する。例示的に、ビット集合データＳ１はＬＳＢにマッピングされる符号語ビットを示す。反復されたパターンＲＰによれば、第１番目、第６番目、第７番目、及び第１２番目ビットがＬＳＢを示すので、ビット集合データＳ１はＬＳＢにマッピングされる符号語ビットの位置である‘１’、‘６’、‘７’、‘１２’を示す。
【００８０】
ビット集合データＳ２はＣＳＢにマッピングされる符号語ビットを示す。反復されたパターンＲＰで、第２番目、第４番目、第８番目、及び第１０番目ビットがＣＳＢを示すので、ビット集合データＳ２はＣＳＢにマッピングされる符号語ビットの位置である‘２’、‘４’、‘８’、‘１０’を示す。
【００８１】
ビット集合データＳ３はＭＳＢにマッピングされる符号語ビットを示す。反復されたパターンＲＰで、第３番目、第５番目、第９番目、及び第１１番目ビットがＭＳＢを示すので、ビット集合データＳ３はＭＳＢにマッピングされる符号語ビットの位置である‘３’、‘５’、‘９’、‘１１’を示す。
【００８２】
マッピング及びデマッピング部１２６６はビット集合データＳ１、Ｓ２に基づいて、符号語Ｃｎをマルチビットデータにマッピングできる。ＬＳＢデータを示すビット集合データＳ１が‘１’、‘６’、‘７’、‘１２’であるので、符号語Ｃｎの第１番目、第６番目、第７番目、及び第１２番目ビットである‘１００１’がＬＳＢにマッピングされる。ＣＳＢデータを示すビット集合データＳ２が‘２’、‘４’、‘８’、‘１０’であるので、符号語Ｃｎの第２番目、第４番目、第８番目、及び第１０番目ビットである‘０１１０’がＣＳＢにマッピングされる。ＭＳＢデータを示すビット集合データＳ３が‘３’、‘５’、‘９’、‘１１’であるので、符号語Ｃｎの第３番目、第５番目、第９番目、及び第１１番目ビットである‘０１１１’がＭＳＢにマッピングされる。
【００８３】
上述したように、コントローラ１２００は予め格納されたパターンＰを反復して反復されたパターンＲＰを生成し、反復されたパターンＲＰに基づいて符号語Ｃｎをマルチビットデータにマッピングする。パターンＰを格納するための装置が小サイズになるか、或いはパターンＰを演算するための装置が要求されないので、極符号化を使用するコントローラ１２００の複雑度が減少する。また、極符号化を使用するので、コントローラ１２００の信頼性が向上する。
【００８４】
図１０は第１実施例に従う生成行列エンコーディング部１２６３ａを示す。例示的に、生成行列エンコーディング部１２６３ａへ入力される入力語Ｕｎの長さは２であり、生成行列エンコーディング部１２６３ａによって生成される符号語Ｃｎの長さは２である。
【００８５】
図１０を参照すれば、生成行列エンコーディング部１２６３ａは２入力ビットの和を第１番目出力ビットとして出力し、第２番目入力ビットを第２番目出力ビットとして出力する。
【００８６】
図１１は第２実施例に従う生成行列エンコーディング部１２６３ｂを示す。例示的に、生成行列エンコーディング部１２６３ｂへ入力される入力語Ｕｎの長さは４であり、生成行列エンコーディング部１２６３ｂによって生成される符号語Ｃｎの長さは４である。
【００８７】
図１１を参照すれば、生成行列エンコーディング部１２６３ｂは図１０を参照して説明した長さ２の生成行列エンコーディング部１２６３ａを４個含む。長さ２の生成行列エンコーディング部１２６３ａが符号語Ｃｎの長さに合わせて２個、配置され、これらの前段に、長さ２の生成行列エンコーディング部１２６３ａがインタリービングステージとして２個提供される。
【００８８】
図１２は第３実施例に従う生成行列エンコーディング部１２６３ｃを示す。例示的に、生成行列エンコーディング部１２６３ｃへ入力される入力語Ｕｎの長さは８であり、生成行列エンコーディング部１２６３ｃによって生成される符号語Ｃｎの長さは８である。
【００８９】
図１２を参照すれば、生成行列エンコーディング部１２６３ｃは図１０を参照して説明した長さ２の生成行列エンコーディング部１２６３ａを４個、及び図１１を参照して説明された長さ４の生成行列エンコーディング部１２６３ｂを２個含む。長さ４の生成行列エンコーディング部１２６３ｂが符号語Ｃｎの長さに合わせて２個配置され、これらの前段に長さ２の生成行列エンコーディング部１２６３ａがインタリービングステージとして４個提供される。
【００９０】
図１０乃至図１２を参照して説明したように、長さｎの入力語Ｕｎを長さｎの符号語Ｃｎに変換する生成行列エンコーディング部１２６３は長さｎ／２の生成行列エンコーディング部２つとこれらの前段に配置されるインタリービングステージを包含する。
【００９１】
図１０乃至図１２で、２ｐ、即ち２の羃乗（ｐ乗、ｐは整数）の長さを有する符号語Ｃｎを出力する生成行列エンコーディング部１２６３の例が説明された。しかし、生成行列エンコーディング部１２６３は、３の羃乗、５の羃乗のように１つの素数の羃乗、又は２つ以上の素数の積の羃乗に該当する長さを有する符号語Ｃｎを出力するように構成される。
【００９２】
図１３は図１の不揮発性メモリ装置１１００、コントローラ１２００、及びコントローラ１２００と連結されたテスト装置１３００を示すブロック図である。図１３を参照すれば、テスト装置１３００はコントローラ１２００にパターンＰを格納するように構成される。テスト装置１３００は不揮発性メモリ装置１１００及びコントローラ１２００に関する情報に基づいて、パターンＰを選択する。テスト装置１３００は選択されたパターンＰをコントローラ１２００に格納する。
【００９３】
図１４は本発明の実施形態によるマッピングパターン選択方法を示す順序図である。図１３及び図１４を参照すれば、Ｓ２１０段階で、テスト装置１３００はパターンを生成する。Ｓ２２０段階で、テスト装置１３００はパターンを反復して反復されたパターンを生成する。Ｓ２３０段階で、テスト装置１３００は反復されたパターンのエラー率を計算する。例示的に、反復されたパターンのエラー率はＬＳＢの確率密度関数（又は近似化された確率密度関数）、ＣＳＢの確率密度関数（又は近似化された確率密度関数）、及びＭＳＢの確率密度関数（又は近似化された確率密度関数）に基づいて計算される。Ｓ２４０段階で、テスト装置１３００は計算されたエラー率に従ってパターンを選択する。選択されたパターンはコントローラ１２００に格納される。
【００９４】
図１５は図１３のテスト装置１３００を示すブロック図である。図１３乃至図１４を参照すれば、テスト装置１３００はパターン生成部１３１０、パラメーター格納部１３２０、エラー測定部１３３０、及び選択部１３４０を含む。
【００９５】
パターン生成部１３１０は複数のパターンＰを生成するように構成される。例示的に、図１乃至図１２を参照して説明したように、符号語Ｃｎの長さより短い長さを有する長さが選択される。パターン生成部１３１０は選択された長さに該当するパターンＰを生成する。例示的に、パターン生成部１３１０は図６を参照して説明された数のパターンＰを生成する。
【００９６】
パラメーター格納部１３２０は不揮発性メモリ装置１１００及びコントローラ１２００に関する情報を格納するように構成される。パラメーター格納部１３２０は不揮発性メモリ装置１１００のチャンネル情報ＣＩを格納するように構成される。例示的に、メモリセルの確率密度関数（ＰＤＦ：Ｐｒｏｂａｂｉｌｉｔｙ  Ｄｅｎｓｉｔｙ  Ｆｕｎｃｔｉｏｎｓ）（又は近似化された確率密度関数）に関する情報を格納する。符号語Ｃｎは不揮発性メモリ装置１１００のメモリセルにプログラムされ（書き込まれ）、これらから読み出される。
符号語Ｃｎはソースデータであり、不揮発性メモリ装置１１００から読み出されたデータは符号語Ｃｎが複数のメモリメモリセルによって形成されるチャンネルを通じて受信されたデータであり得る。パラメーター格納部１３２０は不揮発性メモリ装置１１００の複数のチャンネル、即ちマルチビットデータが格納されるチャンネル（以下で、メモリセルのチャンネルは第１チャンネルと称する）に各々対応する確率密度関数ＰＤＦに関する情報を格納する。
【００９７】
パラメーター格納部１３２０はコントローラ１２００の生成行列エンコーディング部１２６３の生成行列情報ＧＭＩを格納するように構成される。例えば、パラメーター格納部１３２０は入力語Ｕｎがどのような演算を通じて符号語Ｃｎに変換されるかに関する情報を格納する。
【００９８】
エラー測定部１３３０はパターン生成部１３１０からパターンＰを受信し、パラメーター格納部１３２０からチャンネル情報ＣＩ及び生成行列情報ＧＭＩを受信する。エラー測定部１３３０はチャンネル情報ＣＩ及び生成行列情報ＧＭＩに基づいて、入力語Ｕｎの各ビットが伝送されるチャンネル（以下で、入力語Ｕｎの各ビットが伝送されるチャンネルは第２チャンネルと称する）のエラー率を測定する。例えば、入力語Ｕｎが第２チャンネルを通じて伝送されて極符号化及び極復号化が遂行された時のエラー率、即ちデコーディングされたビットエラー率（ｄｅｃｏｄｅｄ  ＢＥＲ）が測定される。
【００９９】
入力語Ｕｎのビットは符号語Ｃｎに変換されて不揮発性メモリ装置１１００に書き込まれる。不揮発性メモリ装置１１００から読み出されたデータは連続除去デコーディングされて読み出された入力語Ｕｎ’として復元される。この過程で、入力語Ｕｎのビットは各々第２チャンネルを通じて伝送されると理解される。第２チャンネルを通じて送信される情報は入力語Ｕｎであり、受信される情報は読み出された入力語Ｕｎ’であり得る。
【０１００】
符号語Ｃｎのビットは不揮発性メモリ装置１１００のメモリセルに各々プログラムされる（書き込まれる）。不揮発性メモリ装置１１００のメモリセルから読み出されるデータは読み出された符号語Ｃｎ’である。符号語Ｃｎのビットの各々は第２チャンネルを通じて伝送されると理解される。第２チャンネルを通じて送信される情報は符号語Ｃｎであり、受信される情報は読み出された符号語Ｃｎ’である。
【０１０１】
第１チャンネルのエラー率はＬＳＢでエラーが発生する確率とＭＳＢでエラーが発生する確率を含む。第１チャンネルのエラー率は不揮発性メモリ装置１１００のメモリセルの特性から獲得される。例えば、第１チャンネルのエラー率は不揮発性メモリ装置１１００のメモリセルをテストすることによって、又はメモリセルのプログラム及び消去サイクル（Ｐ／Ｅ  ｃｙｃｌｅ）に基づいた演算から獲得される。獲得されたエラー率は符号語Ｃｎのビットでエラーが発生する確率である。
【０１０２】
符号語Ｃｎの特定ビットがＬＳＢにマッピングされるか否か、又はＭＳＢにマッピングされるか否かはパターン生成部１３１０で生成されるパターンＰに従って変わる。ＬＳＢでエラーが発生する確率とＭＳＢでエラーが発生する確率は互いに異なる。従って、符号語Ｃｎの特定ビットでエラーが発生する確率、即ち第２チャンネルの中の特定チャンネルでエラーが発生するエラー率は、パターンＰに従って変わる。
【０１０３】
入力語Ｕｎは生成行列と演算されて符号語Ｃｎに変換される。符号語Ｃｎのビットでエラーが発生する確率が生成行列によって逆変換されれば、変換結果は入力語Ｕｎのビットでエラーが発生する確率（第２チャンネルでエラーが発生する確率）を示す。
【０１０４】
従って、メモリセル（第１チャンネル）でエラーが発生する確率、即ちチャンネル情報ＣＩと生成行列の変換情報、即ち生成行列情報ＧＭＩが獲得されれば、入力語Ｕｎのビットの各々でエラーが発生する確率が測定され得る。
【０１０５】
エラー測定部１３３０はパターンＰの中で１つを選択し、選択されたパターンを利用して入力語Ｕｎのビットの各々でエラーが発生する確率を測定する。エラー測定部１３３０はパターンＰの各々に対してエラーが発生する確率を測定する。エラー測定部１３３０はエラー測定結果ＥＲを選択部１３４０へ伝送する。
【０１０６】
例示的に、エラー測定部１３３０はパターンＰの中で選択されたパターンを反復して反復されたパターンＲＰを生成し、反復されたパターンＲＰを利用してエラーが発生する確率を測定する。
【０１０７】
選択部１３４０はエラー測定部１３３０からエラー測定結果ＥＲを受信し、パターン生成部１３１０からパターンＰを受信する。選択部１３４０はエラー測定結果ＥＲに従って、パターンＰの中で１つを最終パターンに選択する。例えば、選択部１３４０は第２チャンネルの平均エラー率が最も低いパターンを選択する。選択部１３４０は第２チャンネルのエラー率の中の少なくとも１つのエラー率が基準値を超過すれば、該当パターンを選択しない場合がある。最終的に選択されたパターンはコントローラ１２００のパターン及び位置情報格納部１２６１に格納される。
【０１０８】
上述したように、本発明の実施形態によれば、符号語Ｃｎの長さに該当するマッピングパターンのエラー率が測定され選択される代わりに、符号語Ｃｎより短い長さのパターンのエラー率が測定され選択される。極符号化が遂行される時、選択されたパターンを反復して符号語Ｃｎの長さに該当する反復されたパターンＲＰが生成される。そして、反復されたパターンＲＰに基づいて、符号語Ｃｎがマルチビットデータとマッピングされる。減少された長さを有するパターンが使用されるので、コントローラ１２００及びテスト装置１３００の複雑度が減少する。
【０１０９】
図１６は第２実施形態によるコントローラ１２００’を示すブロック図である。図５に示したコントローラ１２００と比較すれば、コントローラ１２００’はエラー訂正ブロック１２７０をさらに含む。エラー訂正ブロック１２７０はエラー訂正コードを利用してエンコーディング及びデコーディングを遂行する。エラー訂正ブロック１２７０はＢＣＨコード、ＲＳコード、ターボコード、ＬＤＰＣコード等を利用してエンコーディング及びデコーディングを遂行する。
【０１１０】
図１、図８及び図１６を参照すれば、反復されたパターンＲＰに基づいてＬＳＢにマッピングされた符号語ビット及びＭＳＢにマッピングされた符号語ビットは、各々エラー訂正ブロック１２７０でエラー訂正エンコーディングされる。エンコーディングされたデータがＬＳＢデータ及びＭＳＢデータとして不揮発性メモリ装置１１００に書き込まれる。不揮発性メモリ装置１１００から読み出されたＬＳＢデータ及びＭＳＢデータはエラー訂正ブロック１２７０で各々エラー訂正デコーディングされる。デコーディングされたＬＳＢデータとＭＳＢデータは極符号エンコーダー／デコーダー１２６０で連続除去デコーディングされる。
【０１１１】
他の実施例では、入力語Ｕｎはエラー訂正ブロック１２７０でエラー訂正エンコーディングされる。エンコーディングされたデータは極符号エンコーダー／デコーダー１２６０でエンコーディングされ、そして反復されたパターンＲＰに従ってＬＳＢデータ及びＭＳＢデータにマッピングされる。マッピングされたＬＳＢデータ及びＭＳＢデータは不揮発性メモリ装置１１００に書き込まれる。不揮発性メモリ装置１１００から読み出されたＬＳＢデータ及びＭＳＢデータは極符号エンコーダー／デコーダー１２６０で連続除去デコーディングされる。デコーディングされたデータはエラー訂正ブロック１２７０でエラー訂正デコーディングされる。
【０１１２】
図１７は図１のメモリシステム１０００の応用例を示すブロック図である。図１７を参照すれば、メモリシステム２０００は不揮発性メモリ装置２１００及びコントローラ２２００を含む。不揮発性メモリ装置２１００は複数の不揮発性メモリチップを含む。複数の不揮発性メモリチップは複数のグループに分割される。複数の不揮発性メモリチップの各グループは１つの共通チャンネルを通じてコントローラ２２００と通信するように構成される。例示的に、複数の不揮発性メモリチップは第１乃至第ｋチャンネルＣＨ１〜ＣＨｋを通じてコントローラ２２００と通信する場合が示されている。
【０１１３】
図１７で、１つのチャンネルに複数の不揮発性メモリチップが連結される場合が説明された。しかし、１つのチャンネルに１つの不揮発性メモリチップが連結されるようにメモリシステム２０００が変形され得る。
【０１１４】
図１８は本発明の実施形態によるメモリカード３０００を示す。図１８を参照すれば、メモリカード３０００は不揮発性メモリ装置３１００、コントローラ３２００、及びコネクター３３００を含む。
【０１１５】
コネクター３３００はメモリカード３０００とホストを電気的に連結するのに使われる。
【０１１６】
メモリカード３０００はＰＣカード、ＰＣＭＣＩＡ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ  ｍｅｍｏｒｙ  ｃａｒｄ  ｉｎｔｅｒｎａｔｉｏｎａｌ  ａｓｓｏｃｉａｔｉｏｎ）、コンパクトフラッシュ(登録商標)カード（ＣＦ）、スマートメディアカード（ＳＭ、ＳＭＣ）、メモリスティック、マルチメディアカード（ＭＭＣ、ＲＳ−ＭＭＣ、ＭＭＣｍｉｃｒｏ）、ＳＤカード（ＳＤ、ｍｉｎｉＳＤ、ｍｉｃｒｏＳＤ、ＳＤＨＣ）、ユニバーサルフラッシュ記憶装置（ＵＦＳ）等のメモリカードを構成できる。
【０１１７】
図１９は本発明の実施形態によるソリッドステートドライブ４０００（ＳＳＤ、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）を示す。図１９を参照すれば、ソリッドステートドライブ４０００は複数の不揮発性メモリ装置４１００、コントローラ４２００、及びコネクター４３００を含む。
【０１１８】
コネクター４３００はソリッドステートドライブ４０００とホストとを電気的に連結するのに使われる。
【０１１９】
図２０は本発明の実施形態によるコンピューティングシステム５０００を示すブロック図である。図２０を参照すれば、コンピューティングシステム５０００は中央処理装置５１００、ＲＡＭ５２００、使用者インターフェイス５３００、モデム５４００、システムバス５５００、及びメモリシステム５６００を含む。
【０１２０】
メモリシステム５６００はシステムバス５５００を通じて、中央処理装置５１００、ＲＡＭ５２００、使用者インターフェイス５３００、及びモデム５４００に電気的に連結される。使用者インターフェイス５３００を通じて提供されるか、或いは、中央処理装置５１００によって処理されたデータ、又はモデム５４００を通じて受信されるデータはメモリシステム５６００に格納される。
【０１２１】
メモリシステム５６００はシステムバス５５００を通じて、中央処理装置５１００、ＲＡＭ（５２００）、使用者インターフェイス５３００、及びモデム５４００に電気的に連結される。使用者インターフェイス５３００を通じて提供されるか、或いは、中央処理装置５１００によって処理されたデータ、又はモデム５４００を通じて受信されるデータはメモリシステム５６００に格納される。
メモリシステム５６００は不揮発性メモリ装置５６１０及びコントローラ５６２０を含む。不揮発性メモリ装置５６１０は複数の不揮発性メモリチップを含む。メモリシステム５６００は図１又は図１７を参照して説明されたメモリシステム１０００、又は２０００の何れかである。
【０１２２】
図２０で、不揮発性メモリ装置５６１０がコントローラ５６２０を通じてシステムバス５５００に連結される場合が示されている。しかし、不揮発性メモリ装置５６１０はシステムバス５５００に直接連結され得る。
【０１２３】
本発明の詳細な説明では具体的な実施形態に関して説明したが、本発明の範囲と技術的思想から逸脱しない限度内で様々な変形が可能である。従って、本発明の範囲は上述した実施形態に限定して定められてはならないし、後述する特許請求の範囲のみでなく、この発明の特許請求の範囲と均等なものによって定められる。
【符号の説明】
【０１２４】
１０００、２０００      メモリシステム
１１００、２１００、３１００、４１００      不揮発性メモリ装置
１１１０、１１１０ａ、１１１０ｂ      メモリセルアレイ
１１２０      アドレスデコーダー
１１３０      読出し／書込み回路
１１４０      制御ロジック
１２００、２２００、３２００、４２００      コントローラ
１２１０      システムバス
１２２０      プロセッサー
１２３０      ＲＡＭ
１２４０      ホストインターフェイス
１２５０      メモリインターフェイス
１２６０      極符号エンコーダー／デコーダー
１２７０      エラー訂正ブロック
１２６１      パターン及び位置情報格納部
１２６２      固定ビット挿入部
１２６３、１２６３ａ、１２６３ｂ      生成行列エンコーディング部
１２６４      パターン反復部
１２６５      ビット分類部
１２６６      マッピング及びデマッピング部
１２６７      連続除去デコーディング部
１３００      テスト装置
１３１０      パターン生成部
１３２０      パラメーター格納部
１３３０      エラー測定部
１３４０      選択部
１４００      ホスト
３０００      メモリカード
３３００、４３００      コネクター
４０００      ソリッドステートドライブ
５０００      コンピューティングシステム
５１００      中央処理装置
５２００      ＲＡＭ
５３００      使用者インターフェイス
５４００      モデム
５５００      システムバス
５６００      メモリシステム
【図１】
2013225307.tif 000003
【図２】
2013225307.tif 000004
【図３】
2013225307.tif 000005
【図４】
2013225307.tif 000006
【図５】
2013225307.tif 000007
【図６】
2013225307.tif 000008
【図７】
2013225307.tif 000009
【図８】
2013225307.tif 000010
【図９】
2013225307.tif 000011
【図１０】
2013225307.tif 000012
【図１１】
2013225307.tif 000013
【図１２】
2013225307.tif 000014
【図１３】
2013225307.tif 000015
【図１４】
2013225307.tif 000016
【図１５】
2013225307.tif 000017
【図１６】
2013225307.tif 000018
【図１７】
2013225307.tif 000019
【図１８】
2013225307.tif 000020
【図１９】
2013225307.tif 000021
【図２０】
2013225307.tif 000022