(57)【特許請求の範囲】
【請求項１】
データ処理システムであって、
非バイナリ符号語に対応するサンプルセットを維持するように動作可能なサンプルバッファーと、
データ復号化器回路であって、
前記サンプルセットから導出された復号化器入力に非バイナリデータ復号化アルゴリズムを適用して非バイナリ復号化出力を得て、
前記復号化器入力にバイナリデータ復号化アルゴリズムを適用してバイナリ復号化出力を得て、
前記非バイナリ復号化出力に対応する、満たされていない検査の第１の数を求め、
前記バイナリ復号化出力に対応する、満たされていない検査の第２の数を求め、
前記満たされていない検査の第１の数及び前記満たされていない検査の第２の数に少なくとも部分的に基づいて、前記バイナリ復号化出力及び前記非バイナリ復号化出力のうちの一方を選択された復号化結果として選択する
ように動作可能な、データ復号化器回路と、
を備える、データ処理システム。
【請求項２】
前記非バイナリ復号化出力は第１の非バイナリ復号化出力であり、前記バイナリ復号化出力は第１のバイナリ復号化出力であり、前記データ復号化器回路は、
前記選択された復号化結果によって誘導されて、前記非バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して、第２の非バイナリ復号化出力を得て、
前記選択された復号化結果によって誘導されて、前記バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して第２のバイナリ復号化出力を得る
ように更に動作可能である、請求項１に記載のデータ処理システム。
【請求項３】
前記非バイナリデータ復号化アルゴリズムを適用することは非バイナリＨ行列を利用し、前記バイナリデータ復号化アルゴリズムを適用することはバイナリＨ行列を利用する、請求項１に記載のデータ処理システム。
【請求項４】
前記非バイナリ復号化出力に対応する、前記満たされていない検査の第１の数を求めることは、前記非バイナリ復号化出力に前記バイナリＨ行列を乗算してバイナリ等価物を得ることを含む、請求項３に記載のデータ処理システム。
【請求項５】
前記非バイナリ符号語内の各シンボルは２Ｎ個のパターンを表し、ここでＮはシンボルあたりのゼロでないビット数であり、Ｎは２以上の値をとり、前記バイナリデータ復号化アルゴリズムを適用することは、前記非バイナリ符号語を単一ビットのシンボルを有するものとして扱うことを含む、請求項１に記載のデータ処理システム。
【請求項６】
前記バイナリ復号化出力は、前記満たされていない検査の第２の数が、前記満たされていない検査の第１の数未満であるときに選択される、請求項１に記載のデータ処理システム。
【請求項７】
前記非バイナリ復号化出力は、前記満たされていない検査の第１の数が、前記満たされていない検査の第２の数未満であるときに選択される、請求項１に記載のデータ処理システム。
【請求項８】
前記サンプルセットにデータ検出アルゴリズムを適用して検出出力を得るように動作可能なデータ検出器回路を更に備え、前記復号化器入力は前記検出出力から導出される、請求項１に記載のデータ処理システム。
【請求項９】
前記データ検出器回路は、ビタビアルゴリズムデータ検出器回路と、最大アポステリオリデータ検出器回路とからなる群から選択される、請求項８に記載のデータ処理システム。
【請求項１０】
前記データ復号化器回路は、低密度パリティチェック復号化器回路である、請求項１に記載のデータ処理システム。
【請求項１１】
前記データ処理システムは、記憶デバイス及び受信デバイスからなる群から選択されるデバイスの一部として実施される、請求項１に記載のデータ処理システム。
【請求項１２】
前記データ処理システムは、集積回路の一部として実施される、請求項１に記載のデータ処理システム。
【請求項１３】
復号化器入力に非バイナリデータ復号化アルゴリズムを適用することであって、それにより非バイナリ復号化出力を得る、適用することと、
前記復号化器入力にバイナリデータ復号化アルゴリズムを適用することであって、それによりバイナリ復号化出力を得る、適用することと、
前記非バイナリ復号化出力に対応する、満たされていない検査の第１の数を求めることと、
前記バイナリ復号化出力に対応する、満たされていない検査の第２の数を求めることと、
前記満たされていない検査の第１の数及び前記満たされていない検査の第２の数に少なくとも部分的に基づいて、前記バイナリ復号化出力及び前記非バイナリ復号化出力のうちの一方を選択された復号化結果として選択することと、
を含む、方法。
【請求項１４】
請求項１３に記載の方法であって、
前記非バイナリ復号化出力は第１の非バイナリ復号化出力であり、前記バイナリ復号化出力は第１のバイナリ復号化出力であり、該方法は、
前記選択された復号化結果によって誘導されて、前記非バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用することであって、それにより第２の非バイナリ復号化出力を得る、再適用することと、
前記選択された復号化結果によって誘導されて、前記バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用することであって、それにより第２のバイナリ復号化出力を得る、再適用することと、
を更に含む、請求項１３に記載の方法。
【請求項１５】
前記非バイナリデータ復号化アルゴリズムを適用することは非バイナリＨ行列を利用し、前記バイナリデータ復号化アルゴリズムを適用することはバイナリＨ行列を利用する、請求項１４に記載の方法。
【請求項１６】
前記非バイナリ復号化出力に対応する、前記満たされていない検査の第１の数を求めることは、前記非バイナリ復号化出力に前記バイナリＨ行列を乗算してバイナリ等価物を得ることを含む、請求項１５に記載の方法。
【請求項１７】
前記バイナリ復号化出力は、前記満たされていない検査の第２の数が、前記満たされていない検査の第１の数未満であるときに選択され、
前記非バイナリ復号化出力は、前記満たされていない検査の第１の数が、前記該満たされていない検査の第２の数未満であるときに選択される、請求項１３に記載の方法。
【請求項１８】
データ検出アルゴリズムをサンプルセットに適用することであって、それにより検出出力を得る、適用することを更に含み、前記復号化器入力は前記検出出力から導出される、請求項１３に記載の方法。
【請求項１９】
記憶デバイスであって、
記憶媒体と、
前記記憶媒体に対して配置されるとともに、該記憶媒体上の情報に対応する検知信号を与えるように動作可能なヘッドアセンブリと、
読取りチャネル回路であって、
前記検知信号に対応するアナログ信号を提供するように動作可能なアナログフロントエンド回路と、
前記アナログ信号をサンプリングして一連のデジタルサンプルを得るように動作可能なアナログ／デジタル変換器回路と、
前記デジタルサンプルを等化してサンプルセットを得るように動作可能な等化器回路と、
前記サンプルセットを維持するように動作可能なサンプルバッファーと、
データ復号化器回路であって、
前記サンプルセットから導出された復号化器入力に非バイナリデータ復号化アルゴリズムを適用して非バイナリ復号化出力を得て、
前記復号化器入力にバイナリデータ復号化アルゴリズムを適用してバイナリ復号化出力を得て、
前記非バイナリ復号化出力に対応する、満たされていない検査の第１の数を求め、
前記バイナリ復号化出力に対応する、満たされていない検査の第２の数を求め、
前記満たされていない検査の第１の数及び前記満たされていない検査の第２の数に少なくとも部分的に基づいて、前記バイナリ復号化出力及び前記非バイナリ復号化出力のうちの一方を選択された復号化結果として選択する
ように動作可能な、データ復号化器回路と、
を備える、読取りチャネル回路と、
を備える、記憶デバイス。
【請求項２０】
前記バイナリ復号化出力は第１の非バイナリ復号化出力であり、前記バイナリ復号化出力は第１のバイナリ復号化出力であり、前記データ復号化器回路は、
前記選択された復号化結果によって誘導されて、前記非バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して、第２の非バイナリ復号化出力を得て、
前記選択された復号化結果によって誘導されて、前記バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して第２のバイナリ復号化出力を得る
ように更に動作可能である、請求項１９に記載の記憶デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理を行うためのシステム及び方法に関し、より詳細には、処理データセットに２つ以上のデータ復号化アルゴリズムを適用するためのシステム及び方法に関する。
【背景技術】
【０００２】
データ処理回路は、多くの場合にデータ検出器回路とデータ復号化器回路とを含む。幾つかの場合には、元々書き込まれたデータを復元しようと試みて、データ検出器回路及びデータ復号化器回路の双方を通る多くの通過が生じる。データ検出器回路及びデータ復号化器回路の双方を通る各通過は、データ復号化器回路を通る複数の反復を含む場合がある。幾つかの場合には、データ検出器回路及びデータ復号化器回路を通る許可された数の反復によって正しい結果が得られない場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
したがって、少なくとも上述した理由により、データ処理回路解析のための先進的なシステム及び方法が当該技術分野において必要とされている。
【課題を解決するための手段】
【０００４】
本発明は、データ処理を行うためのシステム及び方法に関し、より詳細には、処理データセットに２つ以上のデータ復号化アルゴリズムを適用するためのシステム及び方法に関する。
【０００５】
本発明の様々な実施の形態は、サンプルバッファーとデータ復号化器回路とを備えるデータ処理システムを提供する。サンプルバッファーは、非バイナリ符号語に対応するサンプルセットを維持するように動作可能である。データ復号化器回路は、前記サンプルセットから導出された復号化器入力に非バイナリデータ復号化アルゴリズムを適用して非バイナリ復号化出力を得て、前記復号化器入力にバイナリデータ復号化アルゴリズムを適用してバイナリ復号化出力を得て、前記非バイナリ復号化出力に対応する、満たされていない検査の第１の数を求め、前記バイナリ復号化出力に対応する、満たされていない検査の第２の数を求め、前記満たされていない検査の第１の数及び前記満たされていない検査の第２の数に少なくとも部分的に基づいて、前記バイナリ復号化出力及び前記非バイナリ復号化出力のうちの一方を選択された復号化結果として選択するように動作可能である。データ処理システムは、例えば記憶デバイス又は受信デバイスとして実施することができる。様々な場合に、データ処理システムは集積回路の一部として実施される。１つ又は複数の場合に、データ復号化器回路は低密度パリティチェック回路である。
【０００６】
上述した実施の形態の幾つかの例では、前記非バイナリ復号化出力は第１の非バイナリ復号化出力であり、前記バイナリ復号化出力は第１のバイナリ復号化出力である。かかる例では、前記データ復号化器回路は、さらに、前記選択された復号化結果によって誘導されて、前記非バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して、第２の非バイナリ復号化出力を得て、前記選択された復号化結果によって誘導されて、前記バイナリデータ復号化アルゴリズムを前記復号化器入力に再適用して第２のバイナリ復号化出力を得るように更に動作可能であっても良い。
【０００７】
上述した実施の形態の様々な例では、前記非バイナリデータ復号化アルゴリズムを適用することは非バイナリＨ行列を利用し、前記バイナリデータ復号化アルゴリズムを適用することはバイナリＨ行列を利用する。幾つかの場合、前記非バイナリ復号化出力に対応する、前記満たされていない検査の第１の数を求めることは、前記非バイナリ復号化出力に前記バイナリＨ行列を乗算してバイナリ等価物を得ることを含む。上述した実施の形態の一つ又は複数の例では、前記非バイナリ符号語内の各シンボルは２Ｎ個のパターンを表し、Ｎはシンボルあたりのゼロでないビット数であり、前記バイナリデータ復号化アルゴリズムを適用することは、前記非バイナリ符号語を単一ビットのシンボルを有するものとして扱うことを含む。上述した実施の形態の特定の例では、前記バイナリ復号化出力は、前記満たされていない検査の第２の数が、前記満たされていない検査の第１の数未満であるときに選択され、及び／又は、前記非バイナリ復号化出力は、前記満たされていない検査の第１の数が、前記満たされていない検査の第２の数未満であるときに選択される。
【０００８】
本発明の他の実施の形態は、復号化器入力に非バイナリデータ復号化アルゴリズムを適用することであって、それにより非バイナリ復号化出力を得る、適用することと、前記復号化器入力にバイナリデータ復号化アルゴリズムを適用することであって、それによりバイナリ復号化出力を得る、適用することと、前記非バイナリ復号化出力に対応する、満たされていない検査の第１の数を求めることと、前記バイナリ復号化出力に対応する、満たされていない検査の第２の数を求めることと、前記満たされていない検査の第１の数及び前記満たされていない検査の第２の数に少なくとも部分的に基づいて、前記バイナリ復号化出力及び前記非バイナリ復号化出力のうちの一方を選択された復号化結果として選択することと、を含む、方法を提供する。
【０００９】
この概要は、本発明の幾つかの実施の形態の概略のみを提供するものである。本発明の多くの他の目的、特徴、利点及び他の実施形態が、以下の詳細な説明、添付の特許請求の範囲及び添付の図面からより完全に明らかとなるであろう。
【００１０】
図面を参照することにより、本発明の様々な実施形態の更なる理解を実現することができ、これらの実施形態については本明細書の残りの部分で説明する。図面において、同様の参照符号が幾つかの図面の全てにわたって類似の構成要素を指すのに用いられている。幾つかの場合には、小文字からなるサブラベルが、複数の類似の構成要素のうちの１つを表すように参照符号に関連付けられている。存在するサブラベルを指定することなく参照符号が参照されるとき、そのような複数の類似の構成要素全てを指すことが意図される。
【図面の簡単な説明】
【００１１】
【図１】本発明の１つ又は複数の実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有する読取りチャネルを備える記憶デバイスを示す図である。
【図２】本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有する受信機を備えるデータ送信デバイスを示す図である。
【図３】本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有するデータ処理回路を示す図である。
【図４ａ】本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重処理のための方法を示す流れ図である。
【図４ｂ】本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重処理のための方法を示す流れ図である。
【図４ｃ】本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重処理のための方法を示す流れ図である。
【発明を実施するための形態】
【００１２】
本発明は、データ処理を行うためのシステム及び方法に関し、より詳細には、処理データセットに２つ以上のデータ復号化アルゴリズムを適用するためのシステム及び方法に関する。
【００１３】
本発明の様々な実施形態は、遅延処理が望ましいときに、データ復号化プロセスの変更を提供する。そのような遅延処理は、データ処理回路の処理要件の低減が生じ、したがって、そうでなければ用いられていない処理リソースの適用が、以前に収束していないデータセットに対して用いられることが可能になるときに行われる。データ処理回路の処理要件におけるそのような低減は、例えば、記憶媒体からのデータにアクセスしているときのトラック内の変化又はデータ送信デバイスの送信終了に起因して生じる場合があり、この結果、データ復号化プロセスに投入されるデータ量が低減する。本明細書において提供される開示に基づいて、当業者であれば、結果としてデータ処理回路の過少使用（under-use）が生じる場合がある様々なシナリオを認識するであろう。変更された復号化プロセスは、過少使用を伴わない他の事象にも同様に適用することができることにも留意すべきである。
【００１４】
本発明の特定の実施形態では、データ処理回路は、データ復号化器回路によって処理されたデータセットを受信し、処理済みのデータセットを、受信者に転送する前にバッファリングする硬判定出力回路と、処理済みデータセットに対応する検出／復号化されていないデータセットを維持するサンプルバッファーとを備える。遅延処理も標準的な処理も進行中でないとき、硬判定出力回路は、標準的な形式で受信者にデータセットを提供するように動作する。標準的な処理が収束に失敗したとき、データセットをサンプルバッファー内に維持することができ、現在の復号化された出力を硬判定出力回路内に維持し、遅延処理中の変更された処理を待つことができる。遅延処理中、バイナリ復号化処理及び非バイナリ復号化処理の双方がデータセットに適用され、満たされていない検査（unsatisfied check）が最も少なくなるのはいずれであるかが求められる。満たされていない検査が最も少なくなるバイナリ復号化又は非バイナリ復号化からの結果が選択され、データ検出アルゴリズム及び／又はデータ復号化アルゴリズムの後続の適用が誘導される。
【００１５】
図１を参照すると、本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有する読取りチャネル回路１１０を備える記憶システム１００が示されている。記憶システム１００は、例えば、ハードディスクドライブとすることができる。記憶システム１００は、前置増幅器１７０、インターフェースコントローラー１２０、ハードディスクコントローラー１６６、モーターコントローラー１６８、スピンドルモーター１７２、ディスクプラッター１７８、及び読取り／書込みヘッドアセンブリ１７６も備える。インターフェースコントローラー１２０はディスクプラッター１７８への／からのデータのアドレス指定及びタイミングを制御する。ディスクプラッター１７８上のデータは、アセンブリがディスクプラッター１７８上に適切に位置決めされているときに読取り／書込みヘッドアセンブリ１７６によって検出することができる磁気信号の群からなる。１つの実施形態では、ディスクプラッター１７８は長手記録方式又は垂直記録方式のいずれかに従って記録される磁気信号を含む。
【００１６】
通常の読取り動作では、読取り／書込みヘッドアセンブリ１７６はモーターコントローラー１６８によって、ディスクプラッター１７８上の所望のデータトラックの上方に正確に位置決めされる。モーターコントローラー１６８は、ハードディスクコントローラー１６６の指示の下で読取り／書込みヘッドアセンブリをディスクプラッター１７８上の適切なデータトラックに移動することによって、ディスクプラッター１７８に対して読取り／書込みヘッドアセンブリ１７６を位置決めし、かつスピンドルモーター１７２を駆動する。スピンドルモーター１７２は所定のスピンレート（ＲＰＭ）でディスクプラッター１７８をスピンさせる。読取り／書込みヘッドアセンブリ１７８が適切なデータトラックに近接して位置決めされると、ディスクプラッター１７８がスピンドルモーター１７２によって回転するのに応じてディスクプラッター１７８上のデータを表す磁気信号が読取り／書込みヘッドアセンブリ１７６によって感知される。感知された磁気信号は、ディスクプラッター１７８上の磁気データを表す連続した微小アナログ信号として与えられる。この微小アナログ信号は、読取り／書込みヘッドアセンブリ１７６から、前置増幅器１７０を介して、読取りチャネル回路１１０に送信される。前置増幅器１７０は、ディスクプラッター１７８からアクセスされた微小アナログ信号を増幅するように動作可能である。そして、読取りチャネル回路１１０は受信したアナログ信号を復号及びデジタル化し、ディスクプラッター１７８に元々書き込まれた情報を再生する。このデータは、読取りデータ１０３として受信回路に与えられる。書込み動作は実質的に、先行する読取り動作の反対であり、書込みデータ１０１が読取りチャネル回路１１０に与えられる。次にこのデータは符号化され、ディスクプラッター１７８に書き込まれる。
【００１７】
読取り動作中、データはディスクプラッター１７８から感知され、標準的な処理を用いて処理される。そのような標準的な処理は、バイナリデータ復号化又は非バイナリデータ復号化のうちの一方を用いて行うことができる。幾つかの場合には、標準的な処理を用いて処理された１つ又は複数のデータセットが収束に失敗する。そのような場合、収束していないデータセットが出力として提供され、それとともに、この収束していないデータセットが使用不可能であり、遅延処理期間中の追加の処理のために、対応する検出／復号化されていないデータセットとともにデータ処理システム内に維持されることが示される。この遅延処理期間は、例えば、読取り／書込みヘッドアセンブリ１７６が現在のトラックから別のトラックに移されるときの期間とすることができる。この遅延処理期間中、収束していないデータセットと、対応する検出／復号化されていないデータセットとの組合せは、再処理のためにアクセスされる。再処理は、データバイナリデータ復号化及び非バイナリデータ復号化の双方を実行し、後続の処理のための残りの満たされていない検査の数が最も少ない結果を選択することを含む。本発明の幾つかの実施形態では、図３に関連して以下で論考するデータ処理回路と同様のデータ処理回路を用いることができ、及び／又は処理は図４ａ〜図４ｃに関連して以下で論考する処理と同様に行うことができる。
【００１８】
例えばＲＡＩＤ（安価なディスクの冗長アレイ又は独立ディスクの冗長アレイ）に基づく記憶システム等のより大型の記憶システムに、記憶システム１００を統合することができることに留意すべきである。このようなＲＡＩＤ記憶システムは、複数のディスクを論理ユニットとして結合し、冗長性を通じて安定性及び信頼性を増大させる。データは、種々のアルゴリズムに従って、ＲＡＩＤ記憶システムに含まれる複数のディスクにわたって拡散させることができ、ＲＡＩＤ記憶システムが単一のディスクであるかのようにオペレーティングシステムがアクセスすることができる。例えば、データはＲＡＩＤ記憶システム内の複数のディスクにミラーリングすることもできるし、複数の技法において複数のディスクにわたってスライスし分散させることもできる。ＲＡＩＤ記憶システム内の少数のディスクが故障するか又は利用不可能になる場合、誤り訂正技法を用いて、ＲＡＩＤ記憶システム内の他のディスクからのデータの残りの部分に基づいて、欠落データを再生することができる。ＲＡＩＤ記憶システム内のディスクは、限定ではないが、記憶システム１００等の個別の記憶システムとすることができ、互いに近接して配置することもできるし、セキュリティを増大させるために、より広範に分散させることもできる。書込み動作において、書込みデータがコントローラーに提供され、コントローラーは、例えば書込みデータのミラーリング又はストライピングによって、ディスクにわたって書込みデータを記憶する。読取り動作において、コントローラーはディスクからデータを検索する。次に、コントローラーは、ＲＡＩＤ記憶システムが単一のディスクであるかのように結果の読取りデータを生成する。
【００１９】
読取りチャネル回路１１０に関して用いられるデータ復号化器回路は、限定ではないが、当該技術分野で知られているような低密度パリティチェック（ＬＤＰＣ）復号化器回路とすることができる。そのような低密度パリティチェック技術は、実質的に任意のチャネルによる情報の送信又は実質的に任意の媒体への情報の記憶に適用可能である。送信に適用されるものには、光ファイバー、無線周波数チャネル、有線又は無線のローカルエリアネットワーク、デジタル加入者線技術、無線セルラー、銅ファイバー又は光ファイバー等の任意の媒体によるイーサネット登録商標、ケーブルテレビ等のケーブルチャネル、及び地球衛星通信が含まれるが、これらに限定されるものではない。記憶に適用されるものには、ハードディスクドライブ、コンパクトディスク、デジタルビデオディスク、磁気テープ、並びにＤＲＡＭ、ＮＡＮＤフラッシュ、ＮＯＲフラッシュ、他の不揮発性メモリ及びソリッドステートドライブ等のメモリデバイスが含まれるが、これらに限定されるものではない。
【００２０】
図２を参照すると、本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有する受信機２２０を備えるデータ送信デバイス２００が示されている。データ送信システム２００は、符号化された情報を当該技術分野において既知の転送媒体２３０を介して送信するように動作可能な送信機２１０を備える。符号化されたデータは、受信機２２０によって転送媒体２３０から受信される。
【００２１】
動作中、データは転送媒体２３０を介して受信機２２０によって受信され、標準的な処理を用いて処理される。幾つかの場合には、標準的な処理を用いて処理された１つ又は複数のデータセットが収束に失敗する。そのような標準的な処理は、バイナリデータ復号化又は非バイナリデータ復号化のうちの一方を用いて行うことができる。そのような場合、収束していないデータセットが出力として提供され、それとともに、この収束していないデータセットが使用不可能であり、遅延処理期間中の追加の処理のために、対応する検出／復号化されていないデータセットとともにデータ処理システム内に維持されることが示される。この遅延処理期間は、例えば、データが転送媒体２３０から受信されていない時間期間とすることができる。この遅延処理期間中、収束していないデータセットと、対応する検出／復号化されていないデータセットとの組合せは、再処理のためにアクセスされる。再処理は、データバイナリデータ復号化及び非バイナリデータ復号化の双方を実行し、後続の処理のための残りの満たされていない検査の数が最も少ない結果を選択することを含む。本発明の幾つかの実施形態では、図３に関連して以下で論考するデータ処理回路と同様のデータ処理回路を用いることができ、及び／又は処理は図４ａ〜図４ｃに関連して以下で論考する処理と同様に行うことができる。
【００２２】
図３を参照すると、本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重回路部を有するデータ処理回路３００が示されている。データ処理回路３００は、アナログ入力３０８を受信するアナログフロントエンド回路３１０を備える。アナログフロントエンド回路３１０はアナログ入力３０８を処理し、処理済みのアナログ信号３１２をアナログ／デジタル変換器回路３１５に与える。アナログフロントエンド回路３１０には、限定ではないが、当該技術分野において既知のアナログフィルター及び増幅器回路を含めることができる。本明細書において提供される開示に基づいて、当業者であれば、アナログフロントエンド回路３１０の一部として含めることができる種々の回路部を認識するであろう。幾つかの場合には、アナログ入力３０８は記憶媒体（図示せず）に関連して配置される読取り／書込みヘッドアセンブリ（図示せず）から取り出される。他の場合、アナログ入力３０８は送信媒体（図示せず）から信号を受信するように動作可能な受信機回路（図示せず）から取り出される。送信媒体は有線又は無線とすることができる。本明細書において提供される開示に基づいて、当業者であれば、アナログ入力３０８を取り出すことができる種々のソースを認識するであろう。
【００２３】
アナログ／デジタル変換器回路３１５は処理済みのアナログ信号３１２を対応する一連のデジタルサンプル３１７に変換する。アナログ／デジタル変換器回路３１５は、アナログ入力信号に対応するデジタルサンプルを生成することが可能な当該技術分野において既知の任意の回路とすることができる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々のアナログ／デジタル変換器回路を認識するであろう。デジタルサンプル３１７が等化器回路３２０に提供される。等化器回路３２０はデジタルサンプル３１７に等化アルゴリズムを適用して、等化出力３２２をもたらす。本発明の幾つかの実施形態では、等化器回路３２０は当該技術分野において既知のデジタル有限インパルス応答フィルターである。
【００２４】
等化出力３２２はデータ検出器回路３２５及びサンプルバッファー回路３７５の双方に提供される。サンプルバッファー回路３７５は、等化出力３２２を、データ検出器回路３２５を通じた後続の反復において用いるためのバッファリングされたデータ３７７として記憶する。データ検出器回路３２５は、検出出力３２７を生成することが可能な当該技術分野において既知の任意のデータ検出器回路とすることができる。幾つかの例として、データ検出器回路３２５は、限定ではないが、当該技術分野において既知のビタビアルゴリズム検出器回路又は最大アプリオリ検出器回路とすることができる。一般的なフレーズ「ビタビデータ検出アルゴリズム」又は「ビタビアルゴリズムデータ検出器回路」は、任意のビタビ検出アルゴリズム若しくはビタビアルゴリズム検出器回路又はそれらの変形を意味するように最も広い意味で用いられることに留意されたい。それらの変形には、限定ではないが、双方向ビタビ検出アルゴリズム又は双方向ビタビアルゴリズム検出器回路が含まれる。また、一般的なフレーズ「最大事後データ検出アルゴリズム」又は「最大事後データ検出器回路」は、任意の最大事後検出アルゴリズム若しくは最大事後検出器回路又はそれらの変形を意味するように最も広い意味で用いられる。それらの変形には、限定ではないが、単純化された最大事後データ検出アルゴリズム、及び最大対数最大事後データ検出アルゴリズム、又は対応する検出器回路が含まれる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々のデータ検出器回路を認識するであろう。検出出力３２５は、硬判定及び軟判定の双方を含むことができる。「硬判定」及び「軟判定」という用語は、それらの最も広い意味で用いられる。特に、「硬判定」は、予測される元の入力値を示す出力（例えばバイナリ「１」若しくは「０」、又は非バイナリデジタル値）であり、「軟判定」は対応する硬判定が正しい尤度を示す。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる多岐にわたる硬判定及び軟判定を認識するであろう。
【００２５】
検出出力３２７は、データ検出器回路３２５とデータ検出器回路３５０との間で渡されるデータをバッファリングするように動作する中央待ち行列メモリ回路３６０に提供される。幾つかの例では、中央待ち行列メモリ回路３６０は、当該技術分野において既知のインターリーブ（すなわちデータシャッフリング）回路部及びデインターリーブ（すなわちデータシャッフリング解除）回路部を含む。データ復号化器回路３５０が利用可能である場合、データ復号化器回路３５０は復号化器入力３５６としての中央待ち行列メモリ回路３６０からの検出出力３２７にアクセスする。データ復号化器回路３５０は、元々書き込まれたデータを復元しようと試みて、復号化器入力３５６にデータ復号化アルゴリズムを適用する。データ復号化器回路３５０は、遅延処理信号３９５のディアサート（de-assertion：アサート停止）によって示されるような標準的な処理中に非バイナリデータ復号化アルゴリズムを復号化器入力３５６に適用するように動作可能である。非バイナリデータ復号化アルゴリズムは、行列出力３９６をデータ復号化器回路３５０に提供する非バイナリＨ行列３９７を用いて適用される。
【００２６】
対照的に、データ復号化器回路３５０は、最初に非バイナリデータ復号化アルゴリズムを復号化器入力３５６に適用し、その後、遅延処理中にバイナリデータ復号化アルゴリズムを復号化器入力３５６に適用するように動作可能である。バイナリデータ復号化アルゴリズムは、行列出力３９８をデータ復号化器回路３５０に提供するバイナリＨ行列３９４を用いて適用される。そのような遅延処理は、遅延処理信号３９５のアサートによって示される。遅延処理信号３９５は、データ処理コントローラー回路３９０によって、遅延処理入力３９２がアサートされるときはいつでもアサートされ、遅延処理入力３９２がディアサートされるときはいつでもディアサートされる。遅延処理入力３９２は、データ処理回路３００の処理要件の低減が生じるとアサートすることができる。処理要件におけるそのような低減は、例えば、記憶媒体を読み取っているときのトラック内の変化又はデータ送信デバイスの送信終了に起因して生じる場合がある。本明細書において提供される開示に基づいて、当業者であれば、結果としてデータ処理回路３００の過少使用が生じる場合がある様々なシナリオを認識するであろう。
【００２７】
標準的な処理中、非バイナリデータ復号化アルゴリズムの適用が完了すると、データ復号化器回路３５０から、結果としての非バイナリ復号化出力３５２が提供される。検出出力３２７と同様に、復号化された出力３５２は、硬判定及び軟判定の双方を含むことができる。例えば、データ復号化器回路３５０は、受信した入力に復号化アルゴリズムを適用することが可能な、当該技術分野において既知の任意のデータ復号化器回路とすることができる。データ復号化器回路３５０は、限定ではないが、当該技術分野において既知の低密度パリティ検査（ＬＤＰＣ）復号化器回路又はリードソロモン復号化器回路とすることができる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる多岐にわたるデータ復号化器回路を認識するであろう。元のデータが復元される（すなわちデータ復号化アルゴリズムが収束する）か、又はタイムアウト条件が発生した場合、復号化された出力３５２は、硬判定出力回路３８０内に含まれるメモリに記憶される。そして、硬判定出力回路３８０が、収束した復号化された出力３５２をデータ出力３８４として受信者（図示せず）に提供する。受信者は、例えば、処理されたデータセットを受信するように動作可能なインターフェース回路とすることができる。本明細書において提供された開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる多岐にわたる受信者を認識するであろう。タイムアウト条件の前に元のデータが回復されなかった（すなわちデータ復号化アルゴリズムが収束に失敗した）場合、復号化された出力３５２は、以下でより詳細に論考するように、データが使用不可能であることを示し、データ出力３８４も同様に使用不可能として識別される。
【００２８】
データ検出器回路３２５及びデータ復号化器回路３５０の組合せを通じた１回又は複数回の反復は、元々書き込まれたデータセットに収束する目的で行うことができる。データ検出器回路及びデータ復号化器回路の双方を通じた処理が「グローバル反復」と呼ばれる。対照的に、データ復号化器回路を通る各通過は「ローカル反復」と呼ばれる。第１のグローバル反復について、データ検出器回路３２５は、復号化された出力から誘導されることなくデータ検出アルゴリズムを等化出力３２２に適用する。後続のグローバル反復について、データ検出器回路３２５は、復号化された出力３５２によって誘導されるようにデータ検出アルゴリズムをバッファリングされたデータ３７７に適用する。復号化された出力３５２は復号化器出力３５４として中央待ち行列メモリ回路３６０に記憶され、中央待ち行列メモリ回路３６０から検出器入力３２９として提供される。
【００２９】
各グローバル反復中、データ復号化器回路３５０は、復号化器入力３５６へのデータ復号化アルゴリズムの適用を含む１回又は複数回のローカル反復を行うことが可能である。第１のローカル反復について、データ復号化器回路３５０は、復号化された出力３５２から誘導されることなくデータ復号化器アルゴリズムを適用する。後続のローカル反復について、データ復号化器回路３５０は、以前に復号化された出力３５２によって誘導されるようにデータ復号化アルゴリズムを復号化器入力３５６に適用する。許可されるローカル反復数は、例えば１０とすることができる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に従って許可することができる多岐にわたる異なるローカル反復数を理解するであろう。データ復号化器回路３５０を通じたローカル反復数が、許可されるローカル反復数を超えているが、データセットの標準処理中に少なくとも１つの追加のグローバル反復が許可されると判断される場合、復号化された出力３５２は復号化された出力３５４として中央待ち行列メモリ回路３６０に戻して提供される。復号化された出力３５４は、データ検出器回路３２５が追加の処理を実行するのに利用可能になるまで中央待ち行列メモリ回路３６０内に保持される。
【００３０】
対照的に、データ復号化器回路３５０を通じたローカル反復数が許可されるローカル反復数を超えており、かつデータセットについて許可可能なグローバル反復数が超過されており、及び／又はタイムアウト若しくはメモリ使用が特定のデータセットの処理の終了を要求していると判断される場合、データセットの標準的な処理が完結し、復号化された出力がデータ出力３５２として提供されるとともに、その出力が使用不可能であることが示される。データセットの標準的な処理が終了した場合、収束していないデータセット（すなわちデータ出力３５２として提供されるデータセット）が硬判定出力回路３８０のメモリに記憶され、収束していないデータセットに対応するサンプルデータ（すなわち、サンプルバッファー回路３７５に維持されるサンプルデータ）が、遅延処理入力３９２のアサートによる遅延処理の指示を待つ少なくとも所定の期間、サンプルバッファー回路３７５に維持される。加えて、収束していないデータセット及び対応するサンプルデータが、保持信号３９１のアサートによって示されるように、遅延処理のために特定される。ここでも、遅延処理は遅延処理入力３９２のアサートによってシグナリングされる。
【００３１】
遅延処理入力３９２のアサートによって示されるような遅延処理中、サンプルバッファー回路３７５内に残っている、以前に収束していないデータセットに対応するサンプルデータセットのうちの１つが、データ処理コントローラー回路３９０からの制御出力３７６によって示されるようにアクセスされる。加えて、データ処理コントローラー回路３９０は、データ復号化器回路３５０及び硬判定出力回路３８０に対し遅延処理信号３９５をアサートする。データ検出器回路３２５は、遅延処理のために特定され、制御出力３７６によって示されるようにアクセスされるサンプルセットにデータ検出アルゴリズムを再適用し、検出出力３２７を得る。検出出力３２７は、中央待ち行列メモリ回路３６０に記憶される。データ復号化器回路３５０が利用可能になると、データ復号化器回路３５０は、復号化器入力３５６としての中央待ち行列メモリ回路３６０からの検出出力３２７にアクセスする。データ復号化器回路３５０は、硬判定出力回路３８０のメモリに以前に記憶された対応する復号化された出力３８２にアクセスし、復号化された出力３８２によって誘導されて、非バイナリＨ行列３９７からの行列出力３９６を用いて、非バイナリ復号化アルゴリズムを復号化器入力３５６に適用し、非バイナリ復号化出力３５２を得る。非バイナリ復号化出力３５２は、遅延処理中に大部分が用いられない硬判定出力回路３８０内のメモリに記憶される。その後、データ復号化器回路３５０は、復号化された出力３８２によって誘導されて、バイナリＨ行列３９４からの行列出力３９８を用いて、バイナリ復号化アルゴリズムを復号化器入力３５６に適用し、バイナリ復号化出力３５２を得る。バイナリ復号化出力３５２は、ここでも遅延処理中に大部分が用いられない硬判定出力回路３８０内のメモリに記憶される。本発明の他の実施形態によれば、バイナリ復号化アルゴリズム及び非バイナリ復号化アルゴリズムの適用順序は逆にすることができることに留意されたい。
【００３２】
次に、データ復号化器回路３５０は、硬判定出力回路３８０のメモリ内に維持された非バイナリ復号化出力に対応する硬判定にバイナリＨ行列３９４を乗算して、複数のバイナリの満たされていない検査を得る。非バイナリの結果からバイナリの満たされていない検査を得るこのプロセスは、当該技術分野において既知である。例えば、F. J. Macwilliams他「The Theory of Error CorrectionCodes」（North-Holland Publishing Company, p. 106）を参照されたい。上述した参考文献の全体が、全ての目的で、引用することにより本明細書の一部をなすものとする。次に、非バイナリ復号化出力から導出されたバイナリの満たされていない検査のこの数は、バイナリ復号化出力を適用することによって得られたバイナリ復号化出力内に残っている、満たされていない検査の数と比較される。非バイナリ復号化アルゴリズムを適用した結果に関連付けられたバイナリの満たされていない検査の数が、バイナリ復号化アルゴリズムを適用した結果に関連付けられたバイナリの満たされていない検査の数よりも少ない場合、非バイナリ復号化アルゴリズムの結果が、今後のデータ検出及び／又はデータ復号化を誘導する際に用いるために保持される。そうでない場合、バイナリ復号化アルゴリズムの結果が、今後のデータ検出及び／又はデータ復号化を誘導する際に用いるために保持される。
【００３３】
データ復号化器回路３５０を通じた別のローカル反復が許可される場合、保持されたデータ復号化結果によって誘導されて、バイナリデータ復号化アルゴリズム及び非バイナリデータ復号化アルゴリズムの双方を適用する上述したプロセスが実施される。このプロセスは、バイナリデータ復号化アルゴリズム若しくは非バイナリデータ復号化アルゴリズムのうちの一方が収束するか、現在のグローバル反復のための最大数のローカル反復が完了するか、又はタイムアウト条件が満たされるまで繰り返される。タイムアウト条件が満たされると、エラーが報告される。エラー条件は、最大数のローカル反復が尽きると満たされ得る。本明細書において提供される開示に基づいて、当業者であれば、タイムアウト条件が満たされたとみなすことができる多岐にわたる他の状況を認識するであろう。最大数のローカル反復が満たされた場合、保持された結果によって誘導されて、データ検出アルゴリズムがサンプルバッファー回路３７５からのデータ入力に適用され、復号化プロセスが再開する。バイナリデータ復号化アルゴリズム又は非バイナリデータ復号化アルゴリズムのいずれかが収束した場合、収束結果がデータ出力として提供される。
【００３４】
図４ａ〜図４ｃを参照すると、流れ図４００、４４５、４７０が、本発明の幾つかの実施形態による、バイナリ復号化及び非バイナリ復号化の二重処理のための本発明の幾つかの実施形態による方法を示している。図４ａを参照し、流れ図４００に従って、アナログ入力が受信される（ブロック４０５）。アナログ入力は、例えば記憶媒体又はデータ伝送チャネルから導出することができる。本明細書において提供される開示に基づいて、当業者であればアナログ入力の多岐にわたるソースを認識するであろう。アナログ入力は一連のデジタルサンプルに変換される（ブロック４１０）。この変換は、当該技術分野において既知のアナログ／デジタル変換器回路又はシステムを用いて行うことができる。アナログ信号を、受信したアナログ信号を表す一連のデジタル値に変換することが可能な当該技術分野において既知の任意の回路を用いることができることに留意されたい。結果として得られるデジタルサンプルは等化され、等化出力が得られる（ブロック４１５）。本発明の幾つかの実施形態では、等化は当該技術分野において既知のデジタル有限インパルス応答回路を用いて行われる。本明細書において提供される開示に基づいて、当業者であれば、そのようなデジタル有限インパルス応答回路の代わりに、本発明の様々な実施形態に従って等化を実行するのに用いることができる多岐にわたる等化器回路を認識するであろう。等化出力はバッファリングされる（ブロック４２０）。
【００３５】
遅延処理が所望されているか否かが判断される（ブロック４２５）。データ処理回路の処理要件の低減が生じたとき、そのような遅延処理が選択される。処理要件におけるそのような低減は、例えば、記憶媒体を読み取っているときのトラック内の変化又はデータ送信デバイスの送信終了に起因して生じる場合がある。本明細書において提供される開示に基づいて、当業者であれば、当業者であれば、結果としてデータ処理回路の過少使用が生じる場合がある様々なシナリオを認識するであろう。
【００３６】
遅延処理が所望されていない場合（ブロック４２５）、標準的な処理が適用される。この標準的な処理は、バッファーから、処理のための次の等化出力を選択すること（ブロック４３０）を含む。この選択は、当該技術分野において既知の任意のデータ処理回路選択アルゴリズムに従って行うことができる。選択された等化出力にデータ検出アルゴリズムが適用され、検出出力が得られ（ブロック４３５）、この検出出力（又はその導出物）が中央メモリ回路に記憶される（ブロック４４０）。次に、この記憶されたデータは、標準的な処理の実行のために中央メモリからアクセスすることができる（流れ図４４５）。この標準的な処理は、図４ｂの流れ図４４５に従って行われる。
【００３７】
遅延処理が所望されている場合（ブロック４２５）、遅延処理が適用される。この遅延処理は、バッファーから、処理のための次の遅延処理等化出力を選択することを含む（ブロック４５０）。遅延処理等化出力は、標準的な処理の間に収束に失敗した１つ又は複数のデータセットから選択される。現在処理中のデータセットに適用される残りのグローバル反復数は、遅延グローバル最大数に等しくなるように設定される（ブロック４８０）。本発明の幾つかの実施形態では、遅延グローバル最大数は２０である。選択された遅延処理等化出力にデータ検出アルゴリズムが適用され、検出出力が得られ（ブロック４８５）、この検出出力（又はその導出物）が中央メモリ回路に記憶される（ブロック４９０）。次に、この記憶されたデータは、遅延処理の実行のために、中央メモリからアクセスすることができる（図４ｃの流れ図４９５）。
【００３８】
図４ｂを参照すると、流れ図４４５が上述した標準的な処理の実施態様を示している。流れ図４４５に従って、復号化器回路が以前に記憶された検出出力を処理するのに利用可能であるか否かが判断される（ブロック４０１）。復号化器回路が利用可能である場合（ブロック４０１）、検出出力の次の導出物が処理のために選択され、中央メモリ回路からアクセスされる（ブロック４０６）。非バイナリデータ復号化アルゴリズムの第１のローカル反復が、データ復号化器回路によって、選択された検出出力に適用され、非バイナリ復号化出力が得られる（ブロック４１１）。
【００３９】
次に、非バイナリ復号化出力が収束している（すなわち正しい結果が得られた）か否かが判断される（ブロック４１６）。復号化された出力が収束している場合（ブロック４１６）、非バイナリ復号化出力は硬判定出力バッファーに提供される（ブロック４２１）。次に、硬判定出力バッファーがアンロードの準備ができているか否かが判断される（ブロック４５６）。幾つかの場合には、硬判定出力バッファーは、最も近時に完了した復号化された出力が、以前にデータ出力として提供された復号化された出力の後の次の復号化された出力であるとき、アンロードする準備ができている。硬判定出力バッファーがアンロードする準備ができている場合（ブロック４５６）、硬判定出力バッファー内に維持されている連続した復号化された出力の全てがデータ出力として受信者デバイスに提供される（ブロック４６１）。本明細書において提供された開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる多岐にわたる受信者デバイスを認識するであろう。
【００４０】
一方、非バイナリ復号化出力が収束に失敗した場合（ブロック４１６）、ローカル反復カウントがローカル反復制限を超えたか否かが判断される（ブロック４２６）。このローカル反復制限は、例えば、１０回のローカル反復とすることができる。ローカル反復数をまだ超えていない場合（ブロック４２６）、非バイナリ復号化出力によって誘導されて、後続のローカル反復について、現在処理中のデータセットにデータ復号化アルゴリズムが再適用され、更新された非バイナリ復号化出力が得られる（ブロック４３１）。次に、ブロック４１６において開始するプロセスが繰り返される。
【００４１】
一方、現在進行中のグローバル反復についてローカル反復数を超えている場合（ブロック４２６）、現在処理中のデータセットに最大数のグローバル反復が既に適用されたか否かが判断される（ブロック４３６）。このグローバル反復数は、例えばタイムアウト条件が発生したか、又はメモリ使用制限を超えた場合に完了し得る。グローバル反復が完了していない場合（ブロック４３６）、非バイナリ復号化出力は標準的な出力として中央メモリに記憶され、中央メモリにおいて、後続のグローバル反復における処理を待つ（ブロック４４１）。一方、グローバル反復が完了した場合（ブロック４３６）、現在処理中のデータセットが遅延処理（すなわち遅延処理期間中の処理）によって特定され（ブロック４４６）、非バイナリ復号化出力が、使用不可能としてマーク付けされたデータ出力として提供される（ブロック４５１）。
【００４２】
図４ｃを参照すると、流れ図４９５が上述した遅延処理の実施態様を示している。流れ図４９５に従って、復号化器回路が以前に記憶された検出出力を処理するのに利用可能であるか否かが判断される（ブロック４０２）。復号化器回路が利用可能である場合（ブロック４０２）、遅延処理のために生成された（すなわち、ブロック４４６において遅延処理のために特定された）検出出力の次の導出物が処理のために選択され、中央メモリ回路からアクセスされる（ブロック４０７）。非バイナリ復号化が選択され（ブロック４１２）、非バイナリデータ復号化アルゴリズムが、以前に選択された復号化結果によって誘導されて、非バイナリＨ行列を用いて検出出力の導出物に適用され、非バイナリ復号化出力が得られる（ブロック４１７）。遅延処理の第１のローカル反復の場合、以前に選択された復号化結果は、ブロック４５１から出力バッファーに記憶された非バイナリ復号化出力である。後続のローカル反復の場合、以前に選択された復号化結果は、非バイナリ復号化出力（ブロック４８２）又はバイナリ復号化出力（ブロック４７７）のうちの選択された一方である。
【００４３】
非バイナリ復号化出力が収束している（すなわち正しい結果が得られた）か否かが判断される（ブロック４２２）。非バイナリ復号化出力が収束している場合（ブロック４２２）、非バイナリ復号化出力はデータ出力として提供され、後続のデータセットに対し動作する別のグローバル反復が開始する（ブロック４３２）。そうではなく、非バイナリ復号化出力が収束に失敗した場合（ブロック４２２）、非バイナリ復号化出力は今後の使用のために記憶される（ブロック４２７）。非バイナリ復号化出力は、例えば出力バッファー、中央メモリバッファー、又は入力バッファーの使用されていない領域に記憶することができる。加えて、非バイナリ復号化出力内の満たされていない検査は、バイナリの満たされていない検査に変換される（ブロック４３７）。これは例えば、非バイナリ復号化出力に対応する硬判定にバイナリＨ行列を乗算して、複数のバイナリの満たされていない検査を得ることによって行うことができる。非バイナリの結果からバイナリの満たされていない検査を得るこのプロセスは、当該技術分野において既知である。例えば、F. J. Macwilliams他「The Theory of Error CorrectionCodes」（North-Holland Publishing Company, p. 106）を参照されたい。
【００４４】
次に、バイナリ復号化が選択され（ブロック４４２）、バイナリ復号化アルゴリズムが、以前に選択された復号化結果によって誘導されて、バイナリＨ行列を用いて検出出力の導出物に適用され、バイナリ復号化出力が得られる（ブロック４４７）。遅延処理の第１のローカル反復の場合、以前に選択された復号化結果は、ブロック４５１からの、出力バッファーに記憶された非バイナリ復号化出力である。後続のローカル反復の場合、以前に選択された復号化結果は、非バイナリ復号化出力（ブロック４８２）又はバイナリ復号化出力（ブロック４７７）のうちの選択された一方である。流れ図４９５はバイナリ復号化（ブロック４４７）に先行して非バイナリ復号化（ブロック４１７）を示しているが、本発明の他の実施形態では、バイナリ復号化は非バイナリ復号化に先行することができる。本発明のまた他の実施形態では、バイナリ復号化は非バイナリ復号化と並列に行うことができる。
【００４５】
バイナリ復号化出力が収束している（すなわち正しい結果が得られた）か否かが判断される（ブロック４５２）。バイナリ復号化出力が収束している場合（ブロック４５２）、バイナリ復号化出力はデータ出力として提供され、後続のデータセットに対し動作する別のグローバル反復が開始する（ブロック４６２）。そうではなく、バイナリ復号化出力が収束に失敗した場合（ブロック４５２）、バイナリ復号化出力は今後の使用のために記憶される（ブロック４５７）。バイナリ復号化出力は、例えば出力バッファー、中央メモリバッファー、又は入力バッファーの使用されていない領域に記憶することができる。
【００４６】
非バイナリ復号化出力に対応するバイナリの満たされていない（正：unsatisfied）検査の数（ブロック４３７）が、バイナリ復号化出力内のバイナリの満たされていない検査の数と比較される（ブロック４６７）。非バイナリ復号化出力に対応するバイナリの満たされていない検査の数が、バイナリ復号化出力（正：binarydecoded output）に対応するバイナリの満たされていない検査の数よりも大きい場合（ブロック４７２）、ブロック４４７からのバイナリ復号化出力が選択された復号化結果として選択される（ブロック４７７）。そうではなく、非バイナリ復号化出力に対応するバイナリの満たされていない検査の数が、バイナリ復号化出力（正：binarydecoded output）に対応するバイナリの満たされていない検査の数以下である場合（ブロック４７２）、ブロック４１７からの非バイナリ復号化出力が選択された復号化結果として選択される（ブロック４８２）。
【００４７】
次に、別のローカル反復が許可されるか否かが判断される（ブロック４８７）。別のローカル反復が許可される場合（ブロック４８７）、ブロック４１２において開始するプロセスが、新たに選択された復号化結果を用いて繰り返される。そうではなく、別のローカル反復が許可されない場合（ブロック４８７）、別のグローバル反復が許可されるか否かが判断される（ブロック４９２）。別のグローバル反復が許可されない場合（ブロック４９２）、エラーが示され、後続のデータセットに対する処理が開始する（ブロック４９９）。そうではなく、別のグローバル反復が許可される場合（ブロック４９２）、データ検出アルゴリズムが、選択された復号化結果によって誘導されて、選択された遅延処理等化出力に適用され、更新された検出出力が得られ（ブロック４９７）、ブロック４０２において開始するプロセスが同じデータセットについて再開される。
【００４８】
上記のアプリケーションにおいて論述した様々なブロックは、他の機能とともに集積回路に実装することができることに留意すべきである。そのような集積回路は、所与のブロック、システム若しくは回路の機能の全て、又はブロック、システム若しくは回路のサブセットのみの機能の全てを含むことができる。また、ブロック、システム又は回路の要素を複数の集積回路にわたって実装することができる。そのような集積回路は、当該技術分野において知られている任意のタイプの集積回路とすることができる。この任意のタイプの集積回路には、モノリシック集積回路、フリップチップ集積回路、マルチチップモジュール集積回路及び／又は混合信号集積回路が含まれるが、これらに限定されるものではない。本明細書において論述されたブロック、システム又は回路の様々な機能を、ソフトウェア又はファームウェアのいずれかで実装することができることにも留意すべきである。そのような幾つかの場合には、システム全体、ブロック全体又は回路全体を、そのソフトウェア等価物又はファームウェア等価物を用いて実装することができる。他の場合には、所与のシステム、ブロック又は回路の一部分をソフトウェア又はファームウェアで実装することができる一方、他の部分はハードウェアで実装される。
【００４９】
結論として、本発明は、データ処理のための新規なシステム、デバイス、方法及び構成を提供する。本発明の１つ又は複数の実施形態の詳細な説明が上記で与えられたが、本発明の趣旨から逸脱することなく、様々な代替形態、変更形態及び均等物が当業者には明らかであろう。したがって、上記の説明は本発明の範囲を限定するものとして解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって画定される。
【図１】
0005415638.tif 000002
【図２】
0005415638.tif 000003
【図３】
0005415638.tif 000004
【図４ａ】
0005415638.tif 000005
【図４ｂ】
0005415638.tif 000006
【図４ｃ】
0005415638.tif 000007