特許第6016952号(P6016952)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロン テクノロジー, インク.の特許一覧

特許6016952エラーコード化スキームと変調スキームを組合せるための装置及び方法
<>
  • 特許6016952-エラーコード化スキームと変調スキームを組合せるための装置及び方法 図000002
  • 特許6016952-エラーコード化スキームと変調スキームを組合せるための装置及び方法 図000003
  • 特許6016952-エラーコード化スキームと変調スキームを組合せるための装置及び方法 図000004
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6016952
(24)【登録日】2016年10月7日
(45)【発行日】2016年10月26日
(54)【発明の名称】エラーコード化スキームと変調スキームを組合せるための装置及び方法
(51)【国際特許分類】
   H03M 13/19 20060101AFI20161013BHJP
   H03M 13/41 20060101ALI20161013BHJP
   G06F 12/16 20060101ALI20161013BHJP
【FI】
   H03M13/19
   H03M13/41
   G06F12/16 320G
【請求項の数】8
【全頁数】11
(21)【出願番号】特願2014-560983(P2014-560983)
(86)(22)【出願日】2013年3月1日
(65)【公表番号】特表2015-513866(P2015-513866A)
(43)【公表日】2015年5月14日
(86)【国際出願番号】US2013028678
(87)【国際公開番号】WO2013134071
(87)【国際公開日】20130912
【審査請求日】2014年9月29日
(31)【優先権主張番号】13/415,422
(32)【優先日】2012年3月8日
(33)【優先権主張国】US
【前置審査】
(73)【特許権者】
【識別番号】595168543
【氏名又は名称】マイクロン テクノロジー, インク.
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100106851
【弁理士】
【氏名又は名称】野村 泰久
(72)【発明者】
【氏名】バラナシ,チャンドラ シー.
【審査官】 岡 裕之
(56)【参考文献】
【文献】 特表2009−531767(JP,A)
【文献】 国際公開第2009/150707(WO,A1)
【文献】 米国特許出願公開第2006/0236197(US,A1)
【文献】 特開平06−231546(JP,A)
【文献】 特開平08−235593(JP,A)
【文献】 特開2000−312234(JP,A)
【文献】 特開2003−051749(JP,A)
【文献】 特開平04−221464(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H03M 13/19
G06F 12/16
H03M 13/41
IEEE Xplore
CiNii
(57)【特許請求の範囲】
【請求項1】
メモリを動作させる方法であって、
線形エラー訂正コードを使用してデータを符号化すること、
前記符号化されたデータに関してトレリスコード化変調(TCM)を実施し前記符号化されたデータを変調すること、
前記変調されたデータをメモリに書込むこと、及び、
ビタビアルゴリズム及び線形エラー訂正コードデコーダの間の反復的なソフトデータの交換を使用して、前記書込まれたデータを復号化すること
を含み、
前記TCMを実施することは、マルチレベルトレリスを生成することを含み、前記マルチレベルトレリスを生成することは、(1/(1xorD))プリコーダオペレーションを使用して前記符号化されたデータをプリコード化すること、及び、前記プリコード化されたエラーコード化データに関して(1+D)オペレーションを実施することを含み、ここで、Dは、1つのユニットの遅延に対応する、
方法。
【請求項2】
データを符号化することは、低密度パリティチェック(LDPC)コードを使用してデータをエラーコード化することを含む、請求項1に記載の方法。
【請求項3】
変調スキームを実施することは、前記符号化されたデータの信号セットを拡張することを含む、請求項1又は2に記載の方法。
【請求項4】
前記符号化されたデータを変調することは、前記符号化されたデータに関連する2つの最も近いマルチレベルシーケンス間の2乗ユークリッド距離を増加させることを含み、
前記マルチレベルデータ内の2つの最も近いマルチレベルシーケンス間の2乗ユークリッド距離は、前記符号化されたバイナリデータに関連する2つの最も近いマルチレベルシーケンス間の前記2乗ユークリッド距離の約2倍である、
請求項1又は2に記載の方法。
【請求項5】
装置であって、
メモリと、
前記メモリに結合されたコントローラと、
前記コントローラに結合され、バイナリデータを符号化するように構成されるエラー訂正コードエンコーダと、
前記コントローラに結合され、トレリスコード化変調(TCM)を使用して前記符号化されたバイナリデータの信号セットを拡張することによって前記符号化されたバイナリデータを変調するように構成される変調コンポーネントと、
前記コントローラに結合され、ソフト出力ビダビアルゴリズムによって生成されるハードデータ及びソフトデータを復号化するように構成される線形エラー訂正コードデコーダと、
を備え、
前記コントローラは、
前記変調されたデータを前記メモリに書込むこと、
前記変調されたデータを前記メモリから読出すこと、及び、
ビタビアルゴリズムを使用して前記変調されたデータを復号化すること
を制御するように構成されると共に、前記ビタビアルゴリズムと線形エラー訂正コードデコーダとの間でソフトデータを反復的に交換するように構成されることを含み、
前記TCMを、(1/(1xorD))オペレーションを使用し、その後、(1+D)オペレーションを使用して、前記符号化されたバイナリデータに関して実施する、装置。
【請求項6】
前記ソフトデータを反復的に交換する反復プロセスは、前記ビダビアルゴリズムから出力されるソフトデータに関連する雑音が所望の閾値レベルに到達されるまで実行される請求項に記載の装置。
【請求項7】
前記エラー訂正コードエンコーダは、低密度パリティチェック(LDPC)コードを使用してバイナリデータを符号化するように更に構成される、請求項に記載の装置。
【請求項8】
前記ビタビアルゴリズムは、ソフト出力ビタビアルゴリズム(SOVA)を含む、請求項に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、半導体メモリ装置及び方法に関し、より詳細には、エラーコード化スキームと変調スキームを組合せるための装置及び方法に関する。
【背景技術】
【0002】
メモリデバイスは、通常、コンピュータ又は他の電子デバイス内の内部半導体集積回路として提供される。とりわけ、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、ダイナミックランダムアクセスメモリ(DRAM)、同期式ダイナミックランダムアクセスメモリ(SDRAM)、抵抗変化型メモリ(例えば、RRAM(登録商標))、及びフラッシュメモリを含む多くの異なるタイプのメモリが存在する。
【0003】
メモリデバイスは、広い範囲の電子用途について揮発性及び不揮発性データストレージとして利用される。単なる1つのタイプのメモリであるフラッシュメモリは、通常、メモリセルの多数のアレイを備え、高いメモリ密度、高い信頼性、及び低電力消費を可能にする。不揮発性メモリは、例えば、パーソナルコンピュータ、可搬型メモリスティック、固体ドライブ(SSD)、デジタルカメラ、携帯電話、MP3プレーヤ等の可搬型音楽プレーヤ、ムービープレーヤ、及び他の電子デバイス内で使用されることができる。
【図面の簡単な説明】
【0004】
図1】本開示の幾つかの実施形態による、少なくとも1つのメモリシステムを含むコンピューティングシステムの形態の装置のブロック図である。
図2】本開示の幾つかの実施形態による、信号セット拡張と低密度パリティチェック(low density parity check)(LDPC)コードとを組合せることを示す機能ブロック図である。
図3】本開示の幾つかの実施形態に従って生成されるトレリスを示す図である。
【発明を実施するための形態】
【0005】
エラーコード化スキームと変調スキームを組合せるための方法及び装置が提供される。1つの例の方法は、線形エラー訂正コードを使用してデータを符号化すること、符号化されたデータを変調すること、変調されたデータをメモリに書込むこと、及び、ビタビアルゴリズム及び線形エラー訂正コードデコーダを使用して、書込まれたデータを復号化することを含み得る。
【0006】
ボーズ、チョドーリ、及びオッケンジュム(Bose,Chaudhuri,and Hocquenghem)(BCH)コードは、フラッシュデータ内の一定数のエラーを訂正するために使用され得る。低密度パリティチェック(LDPC)コードは、こうしたBCHコードを上回り得る。例えば、LDPCコードは、ソフトデータ(例えば、信頼性情報)によって復号化され得る。
【0007】
ストレージ密度が増加するにつれて、読出しオペレーションに関連する信号対雑音比(SNR)は、減少する可能性があり、例えば、読出しエラーを防止するためのより強力なエラー訂正コードについての必要性をもたらし得る。SNRを増加させる1つのアプローチは、例えば、トレリスコード化変調(trellis coded modulation)(TCM)による信号セットの拡張を含む。例えば、信号セットの拡張は、バイナリデータをマルチレベルデータに変換することを含み得る。
【0008】
本開示の実施形態は、LDPCとTCMとを組合せることによってSNRの増加を提供し得る。実施形態はまた、ビタビコンポーネントによって生成されるソフトデータと連携してデコーダによって生成されるソフトデータを効果的に使用して、SNR利得を増加させ得る。
【0009】
本開示の以下の詳細な説明では、本開示の一部を形成する添付図面に対して参照が行われ、添付図面において、本開示の1つ又は複数の実施形態がどのように実施されることができるかが例証によって示される。これらの実施形態は、当業者が本開示の実施形態を実施することを可能にするのに十分に詳細に述べられ、また、他の実施形態が利用されることができること、及び、本開示の範囲から逸脱することなく、プロセス的、電気的、及び/又は構造的変更が行われることができることが理解される。本明細書で使用されるように、指示子「N」は、そのように設計された特定の特徴の1つ又は複数が、本開示の1つ又は複数の実施形態に関して含まれ得ることを示す。
【0010】
本明細書の図は、1つ又は複数の第1のデジットが図面の図番に対応し、残りのデジットが図面内の要素又はコンポーネントを特定する番号付け慣習に従う。異なる図の間の同様の要素又はコンポーネントは、同様のデジットの使用によって特定されることができる。認識されるように、本明細書の種々の実施形態で示す要素は、本開示の幾つかの更なる実施形態を提供するために、追加され得る、交換され得る、かつ/又はなくされ得る。更に、図で提供される要素の割合及び相対スケールは、本開示の種々の実施形態を示すことを意図され、制限的意味で使用されない。
【0011】
図1は、本開示の幾つかの実施形態による、少なくとも1つのメモリシステム104を含むコンピューティングシステム100の形態の装置のブロック図である。本明細書で使用されるように、メモリシステム104、コントローラ108、又はメモリデバイス110はまた、別々に「装置(apparatus)」と考えられることができる。メモリシステム104は、例えば固体ドライブ(SSD)であり、ホスト(例えば、物理)インタフェース106、コントローラ108(例えば、プロセッサ及び/又は他の制御回路要素)、及び、メモリシステム104用のストレージボリュームを提供する幾つかのメモリデバイス110−1、…、110−N(例えば、NANDフラッシュデバイス等の固体メモリデバイス)を含み得る。別の実施形態では、メモリシステム104は、単に単一メモリデバイスであるとすることができる。
【0012】
図1に示すように、コントローラ108は、複数のチャネルを介してホストインタフェース106及びメモリデバイス110−1、…、110−Nに結合され、メモリシステム104とホスト102との間でデータを転送するために使用され得る。インタフェース106は、標準的なインタフェースの形態であり得る。例えば、メモリシステム104がコンピューティングシステム100内のデータストレージのために使用されるとき、インタフェース106は、他のコネクタ及びインタフェースの中で、シリアル高度技術アタッチメント(serial advanced technology attachment)(SATA)、ペリフェラルコンポーネントインターコネクトエキスプレス(peripheral component interconnect express)(PCIe)、又はユニバーサルシリアルバス(USB)であり得る。しかし、一般に、インタフェース106は、メモリシステム104と、インタフェース106用の互換性のあるレセプタを有するホスト102との間でコントロール、アドレス、データ、及び他の信号を渡すためのインタフェースを提供し得る。
【0013】
ホスト102は、種々の他のタイプのホストの中で、パーソナルラップトップコンピュータ、デスクトップコンピュータ、デジタルカメラ、移動体電話、又はメモリカードリーダ等のホストシステムであり得る。ホスト102は、システムマザーボード及び/又はバックプレーンを含み、幾つかのメモリアクセスデバイス(例えば、幾つかのプロセッサ)を含み得る。ホスト102はまた、メモリシステム104が(例えば、オンダイコントローラを有する)メモリデバイスである場合等にメモリコントローラであり得る。
【0014】
コントローラ108は、幾つかのメモリデバイス110−1、…、110−N(幾つかの実施形態では、単一ダイ上の幾つかのメモリアレイであり得る)と通信して、他のオペレーションの中で、データ読出し、書込み、及び消去オペレーションを制御し得る。幾つかの実施形態では、コントローラ108は、幾つかのメモリデバイス110の任意又は全てのメモリデバイス110と同じダイ又は異なるダイ上にあり得る。
【0015】
具体的に示さないが、幾つかの実施形態では、コントローラ108は、コントローラ108をメモリデバイス110−1、…、110−Nに結合する各チャネル用のディスクリートメモリチャネルコントローラを含み得る。コントローラ108は、例えば、幾つかのメモリデバイス110−1、…、110−Nに対するアクセスを制御するための、及び/又は、ホスト102とメモリデバイス110−1、…、110−Nとの間のデータ転送を容易にするための、ハードウェア及び/又はファームウェア(例えば、1つ又は複数の集積回路)及び/又はソフトウェアの形態の幾つかのコンポーネントを含み得る。
【0016】
図1に示すように、コントローラ108は、エラーコード化コンポーネント107(例えば、エラー訂正コード(error correction code)(ECC)エンジン等のエンコーダ)及び変調コンポーネント109(例えば、TCMで使用するための)を含み得る。エラーコード化コンポーネント107及び変調コンポーネント109のそれぞれは、特定用途向け集積回路(ASIC)等のディスクリートコンポーネントであり得る、又は、コンポーネントは、コントローラ108の他の部分から離れたディスクリートな物理的形態を必ずしも持たない、コントローラ108内の回路要素によって提供される機能を反映することができる。図1においてコントローラ108内のコンポーネントとして示されないが、エラーコード化コンポーネント107及び変調コンポーネント109のそれぞれは、コントローラ108の外部にあり得る、又は、コントローラ108内に配置された幾つかのコンポーネント及びコントローラ108の外部に配置された幾つかのコンポーネントを有し得る。
【0017】
エラーコード化コンポーネント107は、ホスト102から受信されたデータ(例えば、ユーザデータ)を符号化し、メモリデバイス110−1、…、110−N等のメモリに記憶される(例えば、書込まれる)ように構成され得る。例えば、ユーザデータは、本明細書でより詳細に述べるように、LDPCコード等の線形エラー訂正コード(linear error correcting code)を使用して符号化され得る。
【0018】
符号化されたデータは、符号化されたデータに対応するコードレートを有し得る。コードレートは、非冗長的である符号化されたデータの割合を指す。本開示の幾つかの実施形態では、バイナリ符号化されたデータは、マルチレベル信号(例えば、3レベル信号)に変換され得る。例えば、2から3への信号セットの拡張が使用されることができ、それは、コードレート損失なしで、3レベルドメイン内の最も近い信号シーケンスの対の間のユークリッド距離を増加させ得る。
【0019】
幾つかの実施形態では、コントローラ108は、線形エラー訂正コードエンコーダを使用して、バイナリデータを符号化し、変調スキームを使用してバイナリデータをマルチレベルデータに変換し、マルチレベルデータをメモリに書込み、メモリからデータを読出し、ビタビアルゴリズムを使用して、読出されたデータを復号化し、線形エラー訂正コードデコーダによって、ビタビアルゴリズムによって生成されたハードデータ及びソフトデータを復号化するように構成され得る。バイナリデータはLDPCコードを使用して符号化され、バイナリデータを変換するために使用される変調スキームはTCMを含み得る。ビタビアルゴリズムは、ソフト出力ビタビアルゴリズム(soft−output Viterbi algorithm)(SOVA)を含み、線形エラー訂正コードデコーダはLDPCデコーダを含み得る。幾つかの実施形態では、コントローラ108は、SOVAとLDPCデコーダとの間でソフトデータを反復的に交換するように構成され得る。SOVAは、入力シンボルの以前の(former)確率を考慮する修正経路メトリックを使用し、決定の信頼性を示すソフト出力を生成する点で典型的なビタビアルゴリズムと異なり得る。コントローラ108に関連する更なる機能は、本明細書でより詳細に述べられる。
【0020】
幾つかのメモリデバイス110−1、…、110−Nは、メモリセル(例えば、不揮発性メモリセル)の幾つかのアレイを含み得る。アレイは、例えば、NANDアーキテクチャを有するフラッシュアレイであり得る。しかし、実施形態は、特定のタイプのメモリアレイ又はアレイアーキテクチャに限定されない。メモリセルは、例えば、幾つかの物理ページを含む幾つかのブロックにグループ化され得る。幾つかのブロックはメモリセルのプレーンに含まれ、アレイは幾つかのプレーンを含み得る。一例として、メモリデバイスは、1ページ当たり8KB(キロバイト)のユーザデータ、1ブロック当たり128ページのユーザデータ、1プレーン当たり2048ブロック、及び1デバイス当たり16プレーンを記憶するように構成されることができる。
【0021】
動作時、データは、例えば、データのページとして、メモリ(例えば、システム104のメモリデバイス110−1、…、110−N)に書込まれ得る、かつ/又は、メモリから読出され得る。したがって、データのページは、メモリシステムのデータ転送サイズと呼ばれ得る。データは、セクタ(例えば、ホストセクタ)と呼ばれるデータセグメント内でホスト(例えば、ホスト102)に/から転送され得る。したがって、データのセクタは、ホストのデータ転送サイズと呼ばれ得る。
【0022】
データのページはユーザデータ(例えば、データの幾つかのセクタを含むデータペイロード)並びにユーザデータに対応するメタデータの幾つかのバイトを含み得るが、データのページのサイズは、しばしば、ユーザデータのバイト数だけを指し得る。例として、4KBのページサイズを有するデータのページは、4KBのユーザデータ(例えば、512Bのセクタサイズを仮定すると8セクタ)並びにユーザデータに対応するメタデータの幾つかのバイト(例えば、32B、54B、224B等)を含むことができる。メタデータは、ユーザデータに対応する他のメタデータの中で、エラーデータ(例えば、エラー検出及び/又は訂正コードデータ)及び/又はアドレスデータ(例えば、論理アドレスデータ)等の完全性データを含み得る。
【0023】
図2は、本開示の幾つかの実施形態による、信号セット拡張(例えば、TCM)とLDPCコードとを組合せることに関連する機能ブロック図220である。LDPCコードは、代数エラー訂正コード(例えば、BCHコード)と比較して、エラー訂正能力の増加を提供し、例えば、ソフトデータと共に同様に復号化され得る。
【0024】
幾つかの実施形態では、LDPCコードと信号セット拡張とを組合せることは、LDPCコードだけ又は信号セット拡張だけを使用して達成されるSNRと比較してSNR利得をもたらし得る。例えば、信号セット拡張を受けない状態での所与のレートでの単一レベルセルに関するバイナリLDPCコードは、所与のコードレート損失がある状態で約7倍SNRを増加させることができる。同様に、信号セット拡張を受けた同じ又は同様の所与のレートでの非LDPCコードは、同じ又は同様の所与のコードレート損失がある状態で9倍SNRを増加させることができる。しかし、幾つかの実施形態では、(例えば、2レベルから3レベルへの)信号セット拡張を受けた同じ又は同様の所与のレートでのバイナリLDPCコードは、同じ又は同様のコードレート損失がある状態で約18倍SNRを増加させることができる。
【0025】
図2は、線形エラー訂正コードエンコーダ214(例えば、LDPCエンコーダ)によって受信されるホストデータ212−1(例えば、バイナリホストデータ)Hを示す。ホストデータ212−1は、LDPCエンコーダ214によって符号化され、符号化されたデータU216−1は、プリコーダ218に提供される。プリコーダ218は、符号化されたデータ216−1に関してプリコード化オペレーションを実施する。
【0026】
例として、プリコード化オペレーションは、バイナリの符号化されたデータ(例えば、U216−1)をプリコード化されたデータ(例えば、V)に変換する(1/(1xorD))オペレーションであり得る。プリコーダ218によって出力されるプリコード化されたデータVは、オペレータ224によって受信される。オペレータ224は、(1+D)オペレーションによって、バイナリのプリコード化されたデータVをマルチレベルデータ226(例えば、X)に変換し得る。したがって、信号セットは、バイナリドメイン(例えば、2レベル)からマルチレベルドメイン(例えば3レベル)に拡張される。例として、Uデータ216−1に等価な3レベルであり得るXデータ226は、メモリ(例えば、フラッシュメモリ)に書込まれ得る。
【0027】
例のオペレーションでは、Dは、1つのユニットの遅延に対応し得る。例えば、あるオペレーションでは、yn=xn+x(n−1)であり、現在のサンプルxnが、以前のサンプルx(n−1)に加算される。これは、表現(1+D)によって表され得る。「1」は現在時点のサンプル(xn)を表し、Dは1つのユニットの遅延(例えば、x(n−1))を表す。
【0028】
図2に示す例では、(1/(1xorD))先行オペレーションと(1+D)オペレーションとを組合せることは、TCMに関連して利用され、信号セット拡張(例えば、バイナリデータのマルチレベルデータへの変換)をもたらす。信号セット拡張は、例えば、3レベルドメインにおける最も近い信号シーケンスの対の間のユークリッド距離を増加させ得る。幾つかの実施形態では、信号セット拡張は、LDPCに関連するコードレート損失なしで達成され得る。信号セット拡張(例えば、TCM)中に、その例が図3に関して更に詳細に論じられる幾つかの状態(例えば、2状態で3レベルのトレリス)を含み得るマルチレベルトレリスが生成されることができる。
【0029】
マルチレベルデータXに関連する信号雑音n(例えば、X+n)は、メモリ210から読出され、ビタビコンポーネント234によって復号化され得る。幾つかの実施形態では、また、図2に示すように、ビタビコンポーネント234は、読出されたデータ232に対応するソフトデータ(例えば、対数尤度比(log likelihood ratio)(LLR))を生成することが可能なSOVA(例えば、2状態SOVA)であり得る。ビタビコンポーネント234によって生成されるソフトデータは、LDPCコードビットを、LDPCコードビットに対応する信頼性メトリックと共に含み得る。LLRは、2つのモデル(例えば、コードシーケンス内の「0」及び「1」)の適合度(fit)を比較するために使用され得る。例えば、ビットが「0」である確率が0.7であり、ビットが「1」である確率が0.3である場合、LLRは対数(0.7/0.3)と等価である。
【0030】
復号化されたハードデータ及びソフトデータUは、ビタビコンポーネント234から出力され、LDPCデコーダ236を使用して更に復号化され得る。結果として得られる復号化されたホストデータH212−1は、要求側エンティティ(例えば、図1に示すホスト102等のホスト)に提供され得る。幾つかの実施形態では、復号化されたホストデータ212−2は、例えば、過去のLDPCアプローチと比較して増加したSNR利得を含む。
【0031】
幾つかの実施形態では、ビタビコンポーネント234とLDPCデコーダ236との間の反復的なソフトデータ交換は、U216−2に関連するソフトデータを更に洗練するために導入され得る。例えば、LDPCデコーダ236もまた、ソフトデータ(例えば、LLR)を生成し得る。例えば、LDPCデコーダ236は、ホストデータH212−2を有するソフトデータを出力し、このソフトデータは、更に復号化するためにビタビコンポーネント234に送信され、その後、(例えば、反復プロセスで)LDPCデコーダ236に返送され得る。幾つかの実施形態では、この反復プロセスは、データ216−2に関連する雑音が、例えば、所望の閾値レベルまで減少するまで継続し得る。
【0032】
図3は、本開示の幾つかの実施形態の1つの実施形態に従って生成され得るトレリス330を示す。例として、トレリス330は、図2に示すコンポーネント218及び224等のコンポーネントによって実施されるオペレーションを介して生成され得る。トレリス330は、トレリス変調とも呼ばれるTCM変調スキームにおいて利用され得る2状態(例えば、状態1及び状態0)ビタビトレリスである。TCMは、他の変調スキームと比較して、伝送効率の増加をもたらし得る。
【0033】
図3に示す例では、LDPCエンコーダ314は、データ(例えば、ホストデータ212−1)を符号化するために使用され得る。符号化されたデータは、信号セットが(例えば、バイナリドメインから3レベルドメインに)拡張するようにTCMを受け得る。例えば、図2に関連して述べるように、(1/(1xorD))オペレーションと(1+D)オペレーションとの組合せは、314から出力されるデータに関して実施され、それは、信号拡張及びトレリス330等のトレリスの生成をもたらし得る。結果として、2状態トレリス330内の2つの最も近い3レベル信号シーケンス間の2乗ユークリッド距離は、未コード化の3レベル信号シーケンスの2倍の距離であり得る。幾つかの実施形態では、トレリス330のレベルは、約4〜3ボルトの電圧値を含み得る。
【0034】
トレリス330は、「様態0(state 0)」(例えば、状態338−1、338−2、及び338−3)及び「状態1(state 1)」(例えば、状態342−1、342−2、及び342−3)を含む2状態を含む。図3に示す状態間の各ラインはシーケンス経路を示し、各経路は、ビット(例えば、LDPCエンコーダ出力ビット)及び対応する3レベル信号によって表示される。例えば、経路344−1及び344−2は、「0」の対応する3レベル信号と共にビット「0」を示す。同様に、例えば、経路384−1及び384−2は、ビット「0」及び「2」の対応する3レベル信号を示し、一方、経路346−1…346−4は、「1」の対応する3レベル信号と共にビット「1」を示す。
【0035】
状態シーケンス0−0−0によって形成される経路のエッジ上の3レベルのラベルシーケンスは、0−0(例えば、経路344−1及び344−2)によって与えられ、一方、状態シーケンス0−1−0によって形成される経路のエッジ上の3レベルのラベルシーケンスは、1−1(例えば、経路346−1及び346−2)によって与えられ得る。こうした例では、2つの経路間の2乗ユークリッド距離は2に等しい。例えば、(1−0)+(1−0)=2である。他の経路対は、2つの経路間でより長い距離を常に有することになる。
【0036】
トレリス330は、トレリスの少なくとも1つの他のレベルと特定の関係を有するトレリスのレベルを含み得る。例えば、図2のバイナリユーザデータU216は、図2のプリコーダ218によって実施される(1/(1xorD))オペレーション及び図2のオペレータ224によって実施される(1+D)オペレーションに基づいて3レベルデータX226に関連するとすることができる。こうしたオペレーションによって達成される関係は、互いに独立であるレベルに対応する未拡張信号セット(例えば、2レベル、3レベル、又は4レベルデータ)と比較して、雑音に対する頑健性(例えば、SNR利得)をもたらし得る。
【0037】
図3では、経路344−1、344−2、346−1、346−2、346−3、346−4、348−1、及び348−2の値は、U/Xを表し、U図2に示すデータ216−1等のバイナリデータであり、X図2に示すデータ226等の変調されたデータ(例えば、3レベルデータ)である。例えば、本明細書で更に論じるように、経路348−1は0のU値、2のX値を有し、0/2と表示される。これらの経路は、レベルのシーケンスによってとられる考えられる経路に対応し、この情報は、ビタビコンポーネント(例えば、図2に示すコンポーネント234)によって利用されて、マルチレベルデータがトレリス330を通過したときにマルチレベルデータによって使用された経路を特定し、経路情報を全く持たないコンポーネントと比較して、ビタビコンポーネントの性能の増加をもたらし得る。
【0038】
例として、図2に示すプリコーダ218等のプリコーダによって受信されるバイナリユーザデータU={100101011…}を考える。Uに関して特定のオペレーション(例えば、(1/(1xorD))オペレーション)を実施することによって、プリコード化されたデータVが決定され得る。例えば、V=xor(U,Vk−1)は、V={111001101…}をもたらす。
【0039】
に関して(1+D)オペレーションを利用することは、3レベルデータXの生成をもたらし得る。例えば、X={122101211…}であるように、X=V+Vk−1である。したがって、トレリス330のレベル0、1、及び2の間に、特に、UとX(ここで、U=1の場合、X=1である)との間に、或る関係が存在する。この関係は、互いに独立なレベルを有するメモリセルと比較して、SNR利得の増加をもたらし得る。
【0040】
上記例では、1の偶数が、シーケンスの特定の時点においてUシーケンスで通過する場合、0のU値が、経路344−1及び344−2の場合と同様に、X=0を生成する。これは、状態0(例えば、状態338−1、338−2、及び338−3)と呼ばれ得る。1の奇数が、シーケンスの特定の時点においてUシーケンスで通過する場合、0のU値が、経路348−1及び348−2の場合と同様に、X=2を生成する。これは、状態1(例えば、状態342−1、342−2、及び342−3)と呼ばれ得る。
【0041】
TCMからのデータ出力(例えば、マルチレベルデータ)は、メモリ(例えば、フラッシュメモリ)310に書込まれ、図2の232で示すように復号化のためにSOVAに送信され得る。幾つかの実施形態では、SNR利得は、トレリス(例えば、トレリス330)に関してビタビアルゴリズムを使用して、メモリ(例えば、メモリ310)から読出されたソフトデータからバイナリLDPCコードビットを回復させることによって実現されることができる。ソフトデータは、図3に関して論じた3レベル信号(例えば、X)の近似を含むことができる。
【0042】
特定の実施形態が、本明細書で示され述べられたが、同じ結果を達成するために計画される任意の配置構成が、示す特定の実施形態と置換され得ることを当業者は認識するであろう。本開示は、本開示の種々の実施形態の適応形態又は変形形態を包含することを意図される。上記説明が、制限的方法ではなく、例証的な方法で行われていることが理解される。上記実施形態の組合せ及び本明細書で具体的に述べられない他の実施形態は、上記説明を検討すると、当業者に明らかになる。本開示の種々の実施形態の範囲は、上記構造及び方法が使用される他の用途を含む。したがって、本開示の種々の実施形態の範囲は、添付特許請求の範囲を参照して、添付特許請求の範囲が権利を与えられる均等物の全範囲と共に決定されるべきである。
【0043】
先の詳細な説明では、種々の特徴は、本開示を効率化するために単一の実施形態において共に集められる。本開示のこの方法は、本開示の開示される実施形態が、各請求項において明示的に挙げられるものよりも多い特徴を使用しなければならないという意図を反映するものと解釈されない。むしろ、添付特許請求の範囲が反映するように、本発明の主題は、開示される単一の実施形態の全ての特徴より少ない特徴に存在する。したがって、添付特許請求の範囲は、各請求項が別個の実施形態として独立した状態で、詳細な説明に組込まれる。
図1
図2
図3