(57)【要約】【課題】本発明の様々な実施形態は、データ処理のためのシステムおよび方法を提供する。【解決手段】一例として、デコーダ回路およびスカラ回路を含むデータ処理回路が開示される。デコーダ回路は、少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であり、スカラ回路は、デコーダ・メッセージに可変スカラ値を掛けるように動作することが可能である。【選択図】図２
2011229119.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であるデコーダ回路と、
前記デコーダ・メッセージに可変スカラ値を掛けるように動作可能であるスカラ回路と
を含む、データ処理回路。
【請求項２】
前記可変スカラ値が第１のスカラ値と第２のスカラ値とを含み、前記デコーダ回路が第１の復号処理と第２の復号処理とを行うように動作可能であり、前記スカラ回路が、前記デコーダ・メッセージに第１の復号処理中に第１のスカラ値を掛け、第２の復号処理中に第２のスカラ値を掛ける、請求項１に記載のデータ処理回路。
【請求項３】
前記第１の復号処理が前記データ処理回路の第１のグローバル反復の一部として行われ、前記第２の復号処理が前記データ処理回路の第２のグローバル反復の一部として行われる、請求項２に記載のデータ処理回路。
【請求項４】
前記第１の復号処理が前記データ処理回路の第１のローカル反復の一部として行われ、前記第２の復号処理が前記データ処理回路の第２のローカル反復の一部として行われる、請求項２に記載のデータ処理回路。
【請求項５】
前記第１のスカラ値が前記第２のスカラ値より大きく、前記第１のスカラ値が、前記データ復号アルゴリズムの高速の収束を促進するように選択され、前記第２のスカラ値が、強化された情報を前記データ復号アルゴリズムに提供するように選択される、請求項２に記載のデータ処理回路。
【請求項６】
前記デコーダ回路が低密度パリティ検査デコーダである、請求項１に記載のデータ処理回路。
【請求項７】
前記低密度パリティ検査デコーダが少なくとも１つの可変ノードと少なくとも１つの検査ノードとを含み、前記デコーダ・メッセージが前記可変ノードから前記検査ノードへ渡される、請求項６に記載のデータ処理回路。
【請求項８】
前記低密度パリティ検査デコーダが少なくとも１つの可変ノードと少なくとも１つの検査ノードとを含み、前記デコーダ・メッセージが前記検査ノードから前記可変ノードへ渡される、請求項６に記載のデータ処理回路。
【請求項９】
前記データ処理回路が記憶装置の一部として実装される、請求項１に記載のデータ処理回路。
【請求項１０】
前記データ処理回路がデータ伝送装置の一部として実装される、請求項１に記載のデータ処理回路。
【請求項１１】
データ入力を受信し、検出された出力を提供するように動作可能なデータ検出器回路と、
前記検出された出力に１つまたは複数のローカル反復を行い、復号された出力を提供するように動作可能なデータ・デコーダ回路とを含み、前記デコーダ回路は、少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であり、前記デコーダ回路は、前記デコーダ・メッセージに可変スカラ値を掛けるように動作可能である、データ処理システム。
【請求項１２】
前記可変スカラ値が第１のスカラ値と第２のスカラ値とを含み、前記デコーダ回路が、第１の復号処理と第２の復号処理とを行うように動作可能であり、前記スカラ回路が、前記デコーダ・メッセージに第１の復号処理中に第１のスカラ値を掛け、第２の復号処理中に第２のスカラ値を掛ける、請求項１１に記載のデータ処理システム。
【請求項１３】
前記第１の復号処理が、前記データ検出器回路と前記データ・デコーダ回路の両方を介して処理することを含む第１のグローバル反復の一部として行われ、前記第２の復号処理が、前記データ検出器回路と前記データ・デコーダ回路の両方を介して処理することを含む第２のグローバル反復の一部として行われる、請求項１２に記載のデータ処理システム。
【請求項１４】
前記第１の復号処理が前記データ・デコーダ回路内の第１のローカル反復の一部として行われ、前記第２の復号処理が前記データ・デコーダ回路内の第２のローカル反復の一部として行われる、請求項１２に記載のデータ処理システム。
【請求項１５】
前記第１のスカラ値が前記第２のスカラ値より大きく、前記第１のスカラ値が、前記データ復号アルゴリズムの高速の収束を促進するように選択され、前記第２のスカラ値が、強化された情報を前記データ復号アルゴリズムに提供するように選択される、請求項１２に記載のデータ処理回路。
【請求項１６】
データセットに対応する少なくとも１つのデコーダ・メッセージを処理することを含む、データ復号アルゴリズムを前記データセットに適用し、
前記デコーダ・メッセージに可変スカラ値を掛ける、データ処理のための方法。
【請求項１７】
前記可変スカラ値が第１のスカラ値と第２のスカラ値とを含み、前記デコーダ・メッセージが第１のデコーダ・メッセージであり、前記第１のデコーダ・メッセージに前記可変スカラ値を掛けることが、前記第１のデコーダ・メッセージに前記第１のスカラ値を掛けることであり、
前記データセットの派生物に対応する少なくとも第２のデコーダ・メッセージを処理することを含む、前記データセットの前記派生物に前記データ復号アルゴリズムを適用することと、
前記第２のデコーダ・メッセージに前記第２のスカラ値を掛けることとをさらに含む、請求項１６に記載の方法。
【請求項１８】
少なくとも前記第１のデコーダ・メッセージを処理することを含む、前記データセットに前記データ復号アルゴリズムを適用することが、データ・デコーダ回路の第１のローカル反復の一部として行われ、少なくとも前記第２のデコーダ・メッセージを処理することを含む、前記データセットの前記派生物に前記データ復号アルゴリズムを適用することが、前記デコーダ回路の第２のローカル反復の一部として行われる、請求項１７に記載の方法。
【請求項１９】
少なくとも前記第１のデコーダ・メッセージを処理することを含む、前記データセットに前記データ復号アルゴリズムを適用することが、データ・デコーダ回路とデータ検出器回路とを含むデータ処理回路の第１のグローバル反復の一部として行われ、少なくとも前記第２のデコーダ・メッセージを処理することを含む、前記データセットの前記派生物に前記データ復号アルゴリズムを適用することが、前記データ処理回路の第２のグローバル反復の一部として行われる、請求項１７に記載の方法。
【請求項２０】
前記データ復号アルゴリズムが低密度パリティ検査復号アルゴリズムである、請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を検出および／または復号するためのシステムおよび方法に関し、より詳細には可変的にスケール調整されるデータ処理を行うためのシステムおよび方法に関する。
【背景技術】
【０００２】
記憶システム、携帯電話システム、および無線伝送システムなど、様々なデータ伝送システムが開発されてきた。このシステムのそれぞれにおいて、データはいくつかの媒体を介して送る側から受け取る側へ転送される。例えば、記憶システムにおいてデータは、記憶媒体を介して送る側（すなわち書込み機能）から受け取る側（すなわち読取り機能）に送られる。いかなる転送の有効性も、様々な要因によって引き起こされるデータの損失によって影響を受ける。場合によっては、データエラーを検出して、該データエラーを訂正する能力を強化するために、符号化／復号化処理が使用される。一例として、簡単なデータ検出および復号が行われる場合があるが、このような簡単な処理は、訂正されたデータストリーム上で収束する能力がないことが多い。
【０００３】
収束の可能性を高めるために、様々な既存の処理は、２回以上の検出および復号の反復を利用する。図１を見ると、例示的な従来技術の２段階のデータ検出および復号回路１００が示されている。２段階のデータ検出および復号回路１００は、データ入力１０５を受け取り、これが検出器１１０に加えられる。検出器１１０からの硬出力および軟出力は、低密度パリティ検査デコーダ（「ＬＤＰＣデコーダ」）１１５に提供される。入力１０５は、バッファ１３０を介して別の検出器１２０にフィードフォワードされる。検出器１２０は、ＬＤＰＣ判定器１１５の軟出力および入力１０５を使用して、さらなるデータ検出処理を行う。検出器１２０からの硬出力および軟出力は、ＬＤＰＣデコーダ１２５に提供され、このＬＤＰＣデコーダ１２５が第２の復号処理を行い、出力１３５を提供する。検出器１１０およびＬＤＰＣデコーダ１１５によって行われる最初の検出および復号が収束しない場合、検出器１２０およびＬＤＰＣデコーダ１２５によって行われるその後の検出および復号は、収束するためのさらなる機会を提供する。こうしたシステムでは、処理の様々な段階の間でデータを操作するために、様々なスカラがシステムに設計される。こうしたスカラは設計時に固定されるか、またはシステムが記憶媒体に導入されると調整されることが可能であるプログラム可能な静的な値である。しかしながら場合によっては、ある段階から別の段階へのデータが飽和状態になり、システムの機能を制限する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、少なくとも前述の理由により、データ処理のための高度なシステムおよび方法の技術分野における必要性がある。
【課題を解決するための手段】
【０００５】
本発明は、情報を検出および／または復号するためのシステムおよび方法に関し、より詳細には可変的にスケール調整されるデータ処理を行うためのシステムおよび方法に関する。
【０００６】
本発明の様々な実施形態は、デコーダ回路およびスカラ回路を含むデータ処理回路を提供する。デコーダ回路は、少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であり、スカラ回路は、デコーダ・メッセージに可変スカラ値を掛けるように動作可能である。前述の実施形態のいくつかの場合では、スカラ回路は第１の復号処理の間に可変デコーダ値の第１のインスタンスを、および第２の復号処理の間に可変スカラ値の第２のインスタンスをデコーダ・メッセージに掛ける。場合によっては、第１の復号処理は、データ処理回路の第１のグローバル反復の一部として行われ、第２の復号処理は、データ処理回路の第２のグローバル反復の一部として行われる。他の場合では、第１の復号処理は、データ処理回路の第１のローカル反復の一部として行われ、第２の復号処理は、データ処理回路の第２のローカル反復の一部として行われる。特定の場合では、第１の値は、第２の値より大きい。第１の値は、データ復号アルゴリズムの高速の収束を促進するように選択され、第２のスカラは、強化された情報をデータ復号アルゴリズムに提供するように選択される。前述の諸実施形態の特定の場合では、デコーダ回路は低密度パリティ検査デコーダである。いくつかのこのような場合では、低密度パリティ検査デコーダは、少なくとも１つの可変ノードと少なくとも１つの検査ノードとを含み、デコーダ・メッセージは可変ノードから検査ノードへ渡される。他のこのような場合では、低密度パリティ検査デコーダは、少なくとも１つの可変ノードと少なくとも１つの検査ノードとを含み、デコーダ・メッセージは検査ノードから可変ノードへ渡される。
【０００７】
本発明の他の実施形態は、データ検出器回路およびデータ・デコーダ回路を含むデータ処理システムを提供する。データ検出器回路は、データ入力を受信するように、および検出された出力を提供するように動作可能である。データ・デコーダ回路は、検出された出力に１つまたは複数のローカル反復を行うように、および復号された出力を提供するように動作可能である。デコーダ回路は、少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であり、またデコーダ回路は、デコーダ・メッセージに可変スカラ値を掛けるように動作可能であるスカラ回路を含む。
【０００８】
本発明のさらに他の実施形態は、データセットに対応する少なくとも１つのデコーダ・メッセージを処理することを含む、データ復号アルゴリズムをデータセットに適用することと、デコーダ・メッセージに可変スカラ値を掛けることとを含むデータ処理のための方法を提供する。場合によっては、可変スカラ値は、第１のスカラ値と第２のスカラ値とを含み、デコーダ・メッセージは第１のデコーダ・メッセージであり、第１のデコーダ・メッセージに可変スカラ値を掛けることは、第１のデコーダ・メッセージに第１のスカラ値を掛けることを含む。このような方法は、データセットの派生物に対応する少なくとも第２のデコーダ・メッセージを処理することを含む、データセットの派生物にデータ復号アルゴリズムを適用することと、第２のデコーダ・メッセージに第２のスカラ値を掛けることとをさらに含む。
【０００９】
この概略は、本発明のいくつかの実施形態の単に大まかな要点を提供する。次の詳細な説明、添付の特許請求の範囲、および添付の図面から、本発明の他の多くの目的、特徴、利点、および他の実施形態がより十分に明らかになるであろう。
【００１０】
本発明の様々な実施形態のさらなる理解は、本明細書の残りの部分に記載される図を参照して実現可能である。図中において、同様の構成要素を指すために、いくつかの図を通して同じ参照符号が使用される。場合によっては、複数の同様の構成要素の１つを示すために、小文字からなるサブラベルが参照符号に関連付けられる。既存のサブラベルへの指定なしに参照符号が参照されるときは、このような複数の同様の構成要素すべてを指すものとする。
【図面の簡単な説明】
【００１１】
【図１】従来技術の２段階データ検出および復号システムを示す図である。
【図２】図２ａは、本発明の１つまたは複数の実施形態に従った内部動的スケーリングを備えるデコーダ回路を含むデータ処理回路を示す図であり、図２ｂは、本発明の一部の実施形態に従った内部動的スケーリングおよびグローバル動的スケーリングを有する別のデータ処理回路を示す図である。
【図３】本発明の一部の実施形態に従った動的スケーリングを示すＬＤＰＣデコーダ回路を示す図である。
【図４ａ】本発明の様々な実施形態に従って示されるデコーダ・メッセージの動的スケーリングを含む待ち行列検出および復号回路を示す図である。
【図４ｂ】本発明の様々な実施形態に従ったデコーダ・メッセージの動的スケーリングおよびグローバル・ループにおける動的スケーリングを含む、待ち行列検出および復号回路を示す図である。
【図５ａ】本発明の一部の実施形態に従った、デコーダ・メッセージの動的スケーリングを使用するデータ処理のための方法を示すフロー図である。
【図５ｂ】本発明の一部の実施形態に従った、デコーダ・メッセージの動的スケーリングおよびグローバル処理ループにおける動的スケーリングを使用するデータ処理のための方法を示すフロー図である。
【図６ａ】図６ａ乃至ｄは、本発明の様々な実施形態に従ってスケーリング係数を動的に計算するための様々な手法を示す４つのフロー図である。
【図６ｂ】図６ａ乃至ｄは、本発明の様々な実施形態に従ってスケーリング係数を動的に計算するための様々な手法を示す４つのフロー図である。
【図６ｃ】図６ａ乃至ｄは、本発明の様々な実施形態に従ってスケーリング係数を動的に計算するための様々な手法を示す４つのフロー図である。
【図６ｄ】図６ａ乃至ｄは、本発明の様々な実施形態に従ってスケーリング係数を動的に計算するための様々な手法を示す４つのフロー図である。
【図７】本発明の様々な実施形態に従った動的デコーダ・スケーリングを備える記憶システムを示す図である。
【図８】本発明の様々な実施形態に従って可変的にスケール調整されるデコーダの処理を備えるリード・チャネル回路を有する受信機を含む通信システムを示す図である。
【発明を実施するための形態】
【００１２】
本発明は、情報を検出するおよび／または復号するためのシステムおよび方法に関し、より詳細には可変にスケール調整されたデータ処理を行うためのシステムおよび方法に関する。
【００１３】
本発明の様々な実施形態は、リード・チャネル、無線伝送、および他の用途に好適な復号のための解決法を提供する。このような復号／検出回路は、データをデータ・デコーダに提供する軟判定デコーダを含む。軟判定デコーダ内のメッセージは、ローカル・スケーリング値を使用してスケール調整される。このような手法により、比較的高いローカル・スカラ値を最初に使用することにより比較的少量のノイズで符号語の収束をスピードアップすることができ、別の方法では比較的低いローカル・スカラ値を後で使用することにより収束していなかった可能性がある符号語に対するより良好な復号性能を実現する。
【００１４】
本発明のいくつかの実施形態は、デコーダ回路およびスカラ回路を含むデータ処理回路を提供する。本明細書で使用される「デコーダ回路」という語句は、その最も広い意味で使用されて、事前に符号化されたデータセットを復号するように動作可能であるいかなる回路をも意味する。したがって、一例としてデコーダ回路は、ＬＤＰＣデコーダ回路であることが可能である。本明細書に提供される開示に基づいて、当業者は、本発明の異なる実施形態との関連で使用されることが可能である様々なデコーダ回路を理解するであろう。本明細書で使用される「スカラ回路」という語句は、その最も広い意味で使用されて、受け取られた入力をスケール調整するように動作可能であるいかなる回路をも意味する。本明細書に提供される開示に基づいて、当業者は、本発明の異なる実施形態との関連で使用されることが可能である様々なスカラ回路を理解するであろう。デコーダ回路は、少なくとも１つのデコーダ・メッセージを処理することによってデータ復号アルゴリズムを実行するように動作可能であり、スカラ回路は、デコーダ・メッセージに可変スカラ値を掛けるように動作可能である。本明細書で使用される「デコーダ・メッセージ」という語句は、その最も広い意味で使用されて、デコーダ回路の内部で渡されるいかなる値をも意味する。したがって、一例としてデコーダ・メッセージは、ＬＤＰＣデコーダ内で可変ノードから検査ノードへ渡されるデータセットであることが可能であり、またはＬＤＰＣデコーダ内で検査ノードから可変ノードへ渡されるデータセットであることが可能である。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態との関連で使用されることが可能である様々なデコーダ・メッセージを理解するであろう。
【００１５】
前述の諸実施形態のいくつかの場合において、スカラ回路は、第１の復号処理中に可変デコーダ値の第１のインスタンス（すなわち第１の値）を、および第２の復号処理中に可変スカラ値の第２のインスタンス（すなわち第２の値）を、デコーダ・メッセージに掛ける。場合によっては、第１の復号処理は、データ処理回路の第１のグローバル反復の一部として行われ、第２の復号処理は、データ処理回路の第２のグローバル反復の一部として行われる。本明細書で使用される「グローバル反復」という語句は、その最も広い意味で使用されて、データ検出アルゴリズムとデータ復号アルゴリズムが共に適用される処理を意味する。したがって、一例としてグローバル反復は、あるデータセットにデータ検出アルゴリズムを適用し、続いてこのデータ検出の結果にデータ復号アルゴリズムを１回または複数回適用することを含むことができる。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態との関連で使用されることが可能である様々なグローバル反復を理解するであろう。他の場合では、第１の復号処理は、データ処理回路の第１のローカル反復の一部として行われ、第２の復号処理は、データ処理回路の第２のローカル反復の一部として行われる。本明細書で使用される「ローカル反復」という語句は、その最も広い意味で使用されて、データ検出アルゴリズムまたはデータ復号アルゴリズムのうちの１つが適用される処理を意味する。したがって、一例としてローカル反復は、データ検出器回路がデータ復号アルゴリズムを適用することを含むことができる。グローバル反復中にデータ復号アルゴリズムをただ１回適用する場合、１回のローカル反復が行われたと言われる。一方、データ復号アルゴリズムを２回以上適用する場合、２回以上のローカル反復が適用されたと言われる。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態との関連で使用されることが可能である様々なローカル反復を理解するであろう。
【００１６】
図２ａを見ると、本発明の１つまたは複数の実施形態に従った内部動的スケーリングを含むデコーダ回路２９５を含むデータ処理回路２００が示されている。さらに、データ処理回路２００は、チャネル検出器回路２１０を含んでいる。データ処理回路２００は、チャネル検出器２１０でデータ入力２０５を受け取る。データ入力２０５は、例えば記憶媒体から、または伝送チャネルから得られる場合がある。特定の場合には、データ入力２０５は、符号語と呼ばれることがあるデータ群またはデータセットとして提供される。ハードディスクドライブの場合には、受け取られるデータセットは、ハードディスクドライブの記憶媒体からのデータのセクタである場合がある。本明細書で提供する開示に基づいて、当業者は、データ入力の他のソース、および本発明の異なる実施形態に従って処理されることが可能である他のデータセットを理解するであろう。
【００１７】
チャネル検出器２１０は、当技術分野で知られているいかなるチャネル検出器であってもよく、軟出力ビタビ（Ｖｉｔｅｒｂｉ）アルゴリズム（ＳＯＶＡ）検出器または最大事後（ＭＡＰ）検出器を含むが、これらに限定されない。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態に従って使用されることが可能である様々なチャネル検出器を理解するであろう。チャネル検出器２１０の出力は、デコーダ回路２９５に提供される。
【００１８】
デコーダ回路２９５は、ＬＤＰＣデコーダ２１５および可変スカラ回路２２０を含む。ＬＤＰＣデコーダ２１５は最初に、チャネル検出器２１０から受け取った出力のＬＤＰＣ復号を行う。この最初の復号通過（すなわち最初のローカル反復）において、ＬＤＰＣデコーダ２１５は、可変スカラ回路２２０からの出力２９０として提供された最初のスカラ値をチャネル検出器２１０の出力に掛ける。この復号処理が完了すると、ＬＤＰＣデコーダ２１５をもう一度通過すること（すなわち別のローカル反復）が要求されているかどうかが判断される。この判断は、ＬＤＰＣデコーダ２１５が収束したかどうか、および収束しなかったことはＬＤＰＣデコーダ２１５をさらに通過することによって利益を得られるかどうかに基づいて行われることが可能である。当技術分野で知られている、さらなるローカル・デコーダ・ループが必要であるかどうかを判断するためのいかなる手法も使用することができる。さらなるローカル反復が行われるべきである場合、ＬＤＰＣデコーダ２１５が信号２９９をアサートし、可変スカラ回路２２０は出力２９０として提供されるスカラ値を動的に変更する。さらに、ＬＤＰＣデコーダ２１５の出力２９７は、再処理に備えてフィードバックされる。ＬＤＰＣデコーダ２１５をその後に通過するとき、出力２９７に復号処理が行われ、この出力２９７に、出力２９０として受け取られる変更されたスカラ値が掛けられる。この処理は、ＬＤＰＣデコーダ２１５を通るローカル反復毎に繰り返される。
【００１９】
本発明の１つの特定の実施形態では、出力２９０として提供される最初のスカラ値は０．７５であり、ＬＤＰＣデコーダ２１５を通る次のローカル反復の度に、可変スカラ回路２２０は、１／３２というハードウェアに適した値だけ出力２９０として提供されるスカラ値を減少させる。したがって、第２のローカル反復ではスカラ値は０．７１８８であり、第３のローカル反復ではスカラ値は０．６８７５であり、第４のローカル反復ではスカラ値は０．６５６３であり、第５のローカル反復ではスカラ値は０．６２５であり、第６のローカル反復ではスカラ値は０．５９３８であり、第７のローカル反復ではスカラ値は０．５６２５であり、第８のローカル反復ではスカラ値は０．５３１３であり、第９のローカル反復ではスカラ値は０．５である。ある時点で、可変スカラ回路２２０は出力２９０として提供されるスカラ値の変更をやめ、スカラ値を一定に維持する。したがって、前述の例を使用すると、第１０以降のローカル反復において可変スカラ回路２２０はスカラ値を０．５に維持する。ローカル反復のすべてが完了すると、ＬＤＰＣデコーダ２１５はデータ出力２２５を提供する。
【００２０】
図２ｂを見ると、本発明のいくつかの実施形態に従った内部動的スケーリングおよびグローバル動的スケーリングを有するデコーダ回路２９６を含むデータ処理回路２０１が示されている。さらに、データ処理回路２０１は、データ入力２０６が受け取られるチャネル検出回路２１１を含む。データ入力２０６は、記憶媒体から、または伝送チャネルから得られる場合がある。特定の場合には、データ入力２０６は、符号語と呼ばれることがあるデータ群またはデータセットとして提供される。ハードディスクドライブの場合には、受け取られるデータセットは、ハードディスクドライブの記憶媒体からのデータのセクタである場合がある。本明細書で提供される開示に基づいて、当業者は、他のデータ入力のソース、および本発明の異なる実施形態に従って処理されることが可能である他のデータセットを理解するであろう。
【００２１】
チャネル検出器２１１は、当技術分野で知られるいかなるチャネル検出器であってもよく、軟出力ビタビアルゴリズム検出器（ＳＯＶＡ）または最大事後（ＭＡＰ）検出器を含むが、これらに限定されない。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態に従って使用されることが可能である様々なチャネル検出器を理解するであろう。チャネル検出器２１１の出力は、デコーダ回路２９６に提供される。
【００２２】
デコーダ回路２９６は、ＬＤＰＣデコーダ２１６と、可変スカラ回路２２１とを含む。ＬＤＰＣデコーダ２１６は最初に、チャネル検出器２１１から受け取られた出力のＬＤＰＣ復号を行う。この最初の復号通過（すなわち最初のローカル反復）において、ＬＤＰＣデコーダ２１６は、可変スカラ回路２２１からの出力２９４として提供された最初のスカラ値をチャネル検出器２１１の出力に掛ける。復号処理が完了すると、ＬＤＰＣデコーダ２１６をもう一度通過することが要求されているかどうかが判断される。この判断は、ＬＤＰＣデコーダ２１６が収束したかどうか、収束しなかったことはＬＤＰＣデコーダ２１６をさらに通ることよって利益を得られるかどうかに基づいて行われることが可能である。当技術分野で知られているさらなるローカル・デコーダ・ループの必要性を判断するためのいかなる手法も利用可能である。さらなるローカル反復が行われるべきである場合、ＬＤＰＣデコーダ２１６は信号２９６をアサートし、可変スカラ回路２２１は出力２９４として提供されるスカラ値を動的に変更する。さらに、ＬＤＰＣデコーダ２１６の出力２９８は、再処理に備えてフィードバックされる。ＬＤＰＣデコーダ２１６をその後に通過するとき、復号処理は出力２９８に適用され、出力２９４として受け取られる変更されたスカラ値を掛けられる。この処理は、ＬＤＰＣデコーダ２１６を通るローカル反復毎に繰り返される。
【００２３】
本発明の１つの特定の実施形態では、出力２９４として提供される最初のスカラ値は０．７５であり、ＬＤＰＣデコーダ２１６を通る次のローカル反復の度に、可変スカラ回路２２１は、１／３２というハードウェアに適した値だけ出力２９４として提供される値を減少させる。したがって、第２のローカル反復ではスカラ値は０．７１８８であり、第３のローカル反復ではスカラ値は０．６８７５であり、第４のローカル反復ではスカラ値は０．６５６３であり、第５のローカル反復ではスカラ値は０．６２５であり、第６のローカル反復ではスカラ値は０．５９３８であり、第７のローカル反復ではスカラ値は０．５６２５であり、第８のローカル反復ではスカラ値は０．５３１３であり、第９のローカル反復ではスカラ値は０．５である。ある時点で、可変スカラ回路２２１は出力２９４として提供されるスカラ値の変更をやめ、スカラ値を一定に維持する。したがって、前述の例を使用すると、第１０以降のローカル反復において可変スカラ回路２２１はスカラ値を０．５に維持する。ローカル反復のすべてが完了すると、ＬＤＰＣデコーダ２１６はデータ出力２２６を提供する。
【００２４】
さらに、複数のグローバル反復（すなわちチャネル検出器２１１とデコーダ回路２９６の両方を通る処理）が可能である。さらなるグローバル反復が求められる場合、データ出力２２６はチャネル検出器２１１にフィードバックされ、チャネル検出器２１１とデコーダ回路２９６の両方を通って再処理される。別のグローバル動作を行うべきかどうかに関する決定は、当技術分野で知られているいかなる基準を使用して行われることも可能である。
【００２５】
図３を見ると、ＬＤＰＣデコーダ回路の図形表示３００が、本発明のいくつかの実施形態に従った動的スケーリングを示している。図形表示３００は、ＬＤＰＣデコーダの例示的動作を表している。図形表示３００は、アップストリーム検出器（図示せず）の出力から受け取られる入力３１０、および回路の出力としてまたはアップストリームもしくはダウンストリーム検出器（図示せず）へ提供される出力３２０を示している。入力データは、Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７として示すいくつかの可変ノードへ提供される。可変ノードからのメッセージは、矢印で示すように、Ｃ１、Ｃ２、Ｃ３として示す検査ノードへ渡される。これらのメッセージは、Ｓ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６、Ｓ７、Ｓ８、Ｓ９、Ｓ１０、Ｓ１１、Ｓ１２として示す乗算器を使用してローカル・スカラ値を掛けられる。乗算器Ｓ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６、Ｓ７、Ｓ８、Ｓ９、Ｓ１０、Ｓ１１、Ｓ１２のそれぞれによって乗算されたローカル・スカラ値は、ローカル反復の数とグローバル反復の数の一方または両方に応じて動的に変更されることが可能である。検査ノードＣ１、Ｃ２、Ｃ３によって行われた検査の結果は、矢印で示すように、乗算されずに可変ノードＶ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７に戻される。これらの結果は、出力３２０として提供されることが可能であり、あるいは別のローカル・デコーダ反復が要求される場合、変数Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７における値は矢印で示すように再び検査ノードＣ１、Ｃ２、Ｃ３に転送され、可変ローカル・スカラ値による乗算が行われる。この処理において、変数Ｖ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６、Ｖ７と検査ノードＣ１、Ｃ２、Ｃ３との間で渡されるメッセージは、次の公式に従ってローカル・スカラ値を掛けられる：
（ＶからＣへのメッセージ）＝（ローカル・スカラ値）（ＶからＣへのメッセージ）
このようなスケーリングは、いかなる更新スケジュールとも無関係にＬＤＰＣデコーダに適用されることが可能であり、階層化されたデコーダおよびフラッディング・スケジュールを使用するデコーダとの関連で使用されることが可能である。さらに、このような内部スケーリングは、可変ノードから検査ノードへ転送されるメッセージに適用されるように記載しているが、本発明の他の実施形態では、スケーリングは検査ノードから可変ノードへ転送されるメッセージに適用されることが可能であることに注意されたい。
【００２６】
図４ａを見ると、本発明の様々な実施形態に従って、デコーダ・メッセージの動的スケーリングを含む待ち行列検出および復号回路４００が示されている。待ち行列検出および復号回路４００は、チャネル検出器４０９にフィードされるデータ入力４０５を含む。いくつかの実施形態では、データ入力４０５は記憶媒体から、または伝送チャネルから得られる場合がある。特定の場合には、データ入力４０５は、符号語と呼ばれることがあるデータ群またはデータセットとして提供される。ハードディスクドライブの場合には、受け取られるデータセットはハードディスクドライブの記憶媒体からのデータのセクタである場合がある。本明細書で提供される開示に基づいて、当業者は、他のデータ入力のソース、および本発明の異なる実施形態に従って処理されることが可能である他のデータセットを理解するであろう。
【００２７】
チャネル検出器４０９は、当技術分野で知られるいかなるタイプのチャネル検出器であってもよく、軟出力ビタビアルゴリズム検出器（ＳＯＶＡ）または最大事後（ＭＡＰ）検出器を含むが、これらに限定されない。本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態に従って使用されることが可能である様々なチャネル検出器を理解するであろう。さらにデータ入力４０５は、データ入力４０５から受け取られるいくつかのデータセットを保持するように設計されたメモリバッファ４１３に提供される。メモリバッファ４１３のサイズは、データ入力４０５を介して提供されるデータセットが少なくとも同じデータセットの第１の反復処理が完了するまで引き続き利用できる状態にするように、十分なバッファリングを提供するように選択されることが可能であり、処理されたデータは、以下でより十分に説明するように、待ち行列バッファ４４９の中で利用可能である。メモリバッファ４１３は、データセットをチャネル検出器４１７に提供する。チャネル検出器４０９と同様に、チャネル検出器４１７は当技術分野で知られているいかなるタイプのチャネル検出器であってもよく、ＳＯＶＡ検出器またはＭＡＰ検出器を含むが、これらに限定されない。やはり本明細書で提供される開示に基づいて、当業者は、本発明の異なる実施形態に従って使用されることが可能である様々なチャネル検出器を理解するであろう。
【００２８】
チャネル検出器４０９の出力４８１はインターリーバ回路４９４に提供され、チャネル検出器４１７の出力４８３は別のインターリーバ回路４９２に提供される。インターリーバ回路４９４は、ピンポンバッファ４９６を使用してチャネル検出器４０９の出力をインターリーブし、インターリーバ回路４９２は、ピンポンバッファ４９８を使用してチャネル検出器４１７の出力をインターリーブする。ピンポンバッファ４９６のバッファのうちの一方は、チャネル検出器４０９からの出力の前のインターリーブ処理の結果を保持し、マルチプレクサ４２１を介してＬＤＰＣデコーダ４３７にアンロードされ、ピンポンバッファ４９６の他方のバッファは、現在インターリーブされている、チャネル検出器４０９からのデータセットを保持する。同様に、ピンポンバッファ４９８のバッファのうちの一方は、チャネル検出器４１７からの出力の前のインターリーブ処理の結果を保持し、マルチプレクサ４２１を介してＬＤＰＣデコーダ４３７にアンロードされ、ピンポンバッファ４９８の他方のバッファは、現在インターリーブされている、チャネル検出器４１７からのデータセットを保持する。本発明の異なる実施形態では、ＬＤＰＣデコーダ４３７の代わりに他の軟判定データ・デコーダを使用することができるということに注意されたい。
【００２９】
ＬＤＰＣデコーダ４３７は、１つまたは複数のデータセットを同時に復号することができる。一例として、ＬＤＰＣデコーダ４３７は、ピンポンバッファ４９６からのインターリーブされたデータセットを復号する、ピンポンバッファ４９８からのインターリーブされたデータセットを復号する、またはピンポンバッファ４９６およびピンポンバッファ４９８からのインターリーブされたデータセットを同時に復号するように設計されることが可能である。ＬＤＰＣデコーダ４３７を１回または複数回通過することが要求される場合がある。やはりこのような通過は、本明細書ではローカル反復と呼ばれ、ＬＤＰＣデコーダによってもう一度ＬＤＰＣデコーダ４３７の出力を再処理することを含む。このような場合、ＬＤＰＣデコーダ４３７の内部メッセージは、ローカル動的スカラ回路４３９によって生成されるローカル動的スカラ値を掛けられることが可能である。この乗算処理は、図３に関して上述した乗算処理と同様に実行されることが可能である。
【００３０】
本発明のいくつかの実施形態では、ローカル動的スカラ回路４３９は、第１のグローバル反復（すなわちチャネル検出器４０９およびＬＤＰＣデコーダ４３７を通る処理）において使用される最初のローカル・スカラ値を提供し、この同じローカル・スカラ値が、特定のグローバル反復に続く次の各ローカル反復に使用される。さらなるグローバル反復が行われる（すなわちチャネル検出器４１７およびＬＤＰＣデコーダ４３７を通る処理）度に、スカラ値は定義された量だけ削減され、削減されたスカラ値は、次に続くローカル反復に使用される。本発明の１つの特定の実施形態では、最初のスカラ値は０．７５であり、次のグローバル反復の度にローカル動的スカラ回路４３９は１／３２というハードウェアに適した値だけスカラ値を減少させる。したがって、第２のグローバル反復ではスカラ値は０．７１８８であり、第３のグローバル反復ではスカラ値は０．６８７５であり、第４のグローバル反復ではスカラ値は０．６５６３であり、第５のグローバル反復ではスカラ値は０．６２５であり、第６のグローバル反復ではスカラ値は０．５９３８であり、第７のグローバル反復ではスカラ値は０．５６２５であり、第８のグローバル反復ではスカラ値は０．５３１３であり、第９のグローバル反復ではスカラ値は０．５である。ある時点で、ローカル動的スカラ回路４３９はローカル・スカラ値の変更をやめ、ローカル・スカラ値を一定に維持する。したがって、前述の例を使用すると、第１０以降のグローバル反復においてローカル動的スカラ回路４３９はローカル・スカラ値を０．５に維持する。復号処理を行う前に、ＬＤＰＣデコーダ４３７は、ローカル動的スカラ回路４３９からのローカル・スカラ値をマルチプレクサ４２１からのデータ出力４８７に掛ける。本発明の他の諸実施形態では、各グローバル反復の後に行われる変更に加えて、またはこれに代わって、各ローカル反復の後にローカル・スカラ値の値が変更されることが可能であることに注意されたい。
【００３１】
一般的な法則として、より高いローカル・スカラ値を使用すると、デコーダによる収束の割合が増大し、低ノイズがもたらされる。対照的に、より低いローカル・スカラ値を使用すると、収束の可能性が増大するが収束の割合が減少し、データストリーム中のビットの１つまたは複数により高いノイズが示される。より小さいスカラを掛けられたビットは、デコーダ回路を飽和状態にすることが少なく、したがって復号プロセスにより多くのデータが使用されるように維持されるので、より高い収束の確率がもたらされる。可変ローカル・スカラ値を使用することにより、本発明のいくつかの実施形態は、より低いノイズレベルを示す符号語中の様々な領域における比較的高速の収束を提供する。その後、より高いノイズレベルを示す符号語中の領域は、収束の割合を減少させるが、収束を達成するために利用されることが可能であるデータの範囲を増大させる、次第により低いスカラ値で処理される。
【００３２】
所望のローカル反復がＬＤＰＣデコーダ４３７によって完了されると、その結果もたらされる復号されたデータは、硬判定出力４４１として提供されるか、またはデインターリーバ回路４４５への出力４８５として提供され、デインターリーバ回路は、待ち行列バッファ４４９を使用して復号されたデータをデインターリーブし、チャネル検出器４１７が将来の処理に利用できるまで、デインターリーブされたデータを格納する。
【００３３】
待ち行列バッファ４４９中のバッファの１つが、前のデインターリーブ処理の結果を保持し、チャネル検出器４１７にアンロードされ、待ち行列バッファ４４９の別のバッファは、現在デインターリーブされている復号されたデータセットを保持し、待ち行列バッファ４４９中の１つまたは複数の他のバッファは、他の非収束データを維持し、チャネル検出器４１７による処理に備えて待機する。待ち行列バッファ４４９からの非収束データは、デインターリーバ４４５によってデインターリーブされ、メモリバッファ４１３中の対応するデータセットにアクセスできるチャネル検出器４１７に渡される。チャネル検出器４１７によって行われるデータ検出は、チャネル検出器４０９によって行われるデータ検出と同様である。あるいは、データセットがＬＤＰＣデコーダ４３７中で収束する場合、これはデインターリーバ回路４５７へ硬判定出力４４１として提供され、デインターリーバ回路４５７は、受信した硬判定出力４４１をデインターリーブし、デインターリーブした結果をいくつかのメモリバッファ４６１のうちの１つに格納する。最終的には、デインターリーバ回路４５７が、メモリバッファ４６１に格納されたデインターリーブされたデータを出力４７１として提供する。
【００３４】
待ち行列検出／復号回路４００により、導入されるデータに応じて可変数の検出および復号の反復を行うことが可能になる。さらに、場合によっては、待ち行列検出／復号回路４００を使用することによってかなりの電力の節減を実現することができる。さらにまた場合によっては、複数の反復が必ずしも必要とされないので実質的な第１の反復のデータの収束が存在する場合、スループットを増大させることが可能である、より速いＬＤＰＣデコーダを実装することができる。またさらに、ＬＤＰＣデコーダ４３７の結果が順不同に報告されることを可能にすることによって、アップストリームの処理は、ダウンストリームの処理の完了を待つ必要がない。順不同の結果の並べ替えは、待ち行列検出／復号回路４００によって、または出力４７１のダウンストリームの受信部によって行われることが可能である。また、デコーダ４３７内で動的スカラを使用することにより、比較的高いローカル・スカラ値を迅速に使用して符号語の実質的にノイズのない領域を解決し、比較的小さいローカル・スカラ値を使用して符号語のよりノイズの多い領域を解決することができる。本明細書で提供される開示に基づいて、当業者は、本発明の１つまたは複数の実施形態を実施することによって実現されることが可能である様々な他の利点を理解するであろう。
【００３５】
図４ｂを見ると、本発明の様々な実施形態に従って、デコーダ・メッセージの動的スケーリングおよびグローバル・ループにおける動的スケーリングを含む待ち行列検出および復号回路４９９が示されている。待ち行列検出および復号回路４９９は、チャネル検出器４０９にフィードされるデータ入力４０５を含んでいる。さらにデータ入力４０５は、データ入力４０５から受け取られるいくつかのデータセットを保持するように設計されたメモリバッファ４１３に提供される。メモリバッファ４１３のサイズは、十分なバッファリングを行うように選択されて、以下にさらに十分に説明するように、データ入力４０５によって提供されるデータセットが少なくともこの同じデータセットの第１の反復処理が完了するまで利用可能に維持されて、処理されたデータが待ち行列バッファ４４９で利用できるようにすることが可能である。メモリバッファ４１３は、チャネル検出器４１７にデータセットを提供することができる。
【００３６】
チャネル検出器４０９の出力４８１はインターリーバ回路４９４に提供され、チャネル検出器４１７の出力４８３はインターリーバ回路４９２に提供される。インターリーバ回路４９４は、ピンポンバッファ４９６を使用してチャネル検出器４０９の出力をインターリーブし、インターリーバ回路４９２は、ピンポンバッファ４９８を使用してチャネル検出器４１７の出力をインターリーブする。ピンポンバッファ４９６のバッファのうちの一方は、チャネル検出器４０９からの出力の前のインターリーブ処理の結果を保持し、マルチプレクサ４２１を介してＬＤＰＣデコーダ４３７にアンロードされ、ピンポンバッファ４９６の他方のバッファは、現在インターリーブされている、チャネル検出器４０９からのデータセットを保持する。同様に、ピンポンバッファ４９８のバッファのうちの一方は、チャネル検出器４１７からの出力の前のインターリーブ処理の結果を保持し、マルチプレクサ４２１を介してＬＤＰＣデコーダ４３７にアンロードされ、ピンポンバッファ４９８の他方のバッファは、現在インターリーブされている、チャネル検出器４１７からのデータセットを保持する。
【００３７】
ＬＤＰＣデコーダ４３７を通る１つまたは複数の通過（すなわちローカル反復）が求められる場合がある。このような場合、ＬＤＰＣデコーダ４３７の内部メッセージは、ローカル動的スカラ回路４３９によって生成されるローカル動的スカラ値を掛けられることが可能である。この乗算処理は、図３に関して上述した乗算処理と同様に実行されることが可能である。
【００３８】
本発明のいくつかの実施形態では、ローカル動的スカラ回路４３９は、第１のグローバル反復（すなわちチャネル検出器４０９およびＬＤＰＣデコーダ４３７を通る処理）において使用される最初のローカル・スカラ値を提供し、この同じローカル・スカラ値は、特定のグローバル反復に続く次の各ローカル反復に使用される。さらなるグローバル反復が行われる（すなわちチャネル検出器４１７およびＬＤＰＣデコーダ４３７を通って処理する）度に、スカラ値は定義された量だけ削減され、削減されたスカラ値は、次に続くローカル反復に使用される。
【００３９】
所望のローカル反復がＬＤＰＣデコーダ４３７によって完了されると、結果として生じる復号されたデータは、硬判定出力４４１として提供されるか、またはデインターリーバ回路４４５への出力４８５として提供され、デインターリーバ回路４４５は待ち行列バッファ４４９を使用して、復号されたデータをデインターリーブし、チャネル検出器４１７がさらなる処理に利用できるまでデインターリーブされたデータを格納する。
【００４０】
待ち行列バッファ４４９のバッファの一方は、前のデインターリーブ処理の結果を保持し、チャネル検出器４１７にアンロードされ、待ち行列バッファ４４９のもう一方は、現在デインターリーブされている復号されたデータセットを保持し、待ち行列バッファ４４９の１つまたは複数の他のバッファは、他の非収束データをチャネル検出器４１７による処理に備えて待機状態に維持する。待ち行列バッファ４４９からの非収束データは、デインターリーバ４４５によってデインターリーブされ、メモリバッファ４１３中の対応するデータセットにアクセスすることができるチャネル検出器４１７に渡される。詳細には、デインターリーバ４４５からのデインターリーブされたデータは、乗算器回路４２７を使用して動的スケーリング係数４０７（βｘ）を掛けられ、乗算器４２９の積の出力は、チャネル検出器４１７に提供される。チャネル検出器４１７によって行われるデータ検出は、チャネル検出器４０９によって行われるデータ検出と同様である。あるいは、データセットがＬＤＰＣデコーダ４３７中で収束する場合、これは硬判定出力４４１としてデインターリーバ回路４５７に提供され、デインターリーバ回路４５７は、受信した硬判定出力４４１をデインターリーブし、デインターリーブした結果をいくつかのメモリバッファ４６１のうちの１つに格納する。最終的には、デインターリーバ回路４５７は、メモリバッファ４６１に格納したデインターリーブしたデータを出力４７１として提供する。
【００４１】
動的スケーリング係数４０３および動的スケーリング係数４０７は、それぞれの符号語に対応する復号された出力４８５に基づき符号語毎に計算される。待ち行列バッファ４４９の各バッファは、それぞれの符号語についての復号された出力４８５を格納するための領域４４１、およびそれぞれの符号語に対応する動的スケーリング係数４０３および動的スケーリング係数４０７を格納するための別の領域４４３を含む。復号された出力が、デインターリーブするために、およびチャネル検出器４１７によって処理するために、それぞれの待ち行列バッファから引き出されるとき、スケーリング係数４０３およびスケーリング係数４０７の値は、対応する待ち行列バッファの領域４４１から引き出され、乗算器４９３による乗算のために使用される。
【００４２】
動的スカラ計算回路４９７は、それぞれの符号語に対応する復号された出力４８５に基づいてそれぞれの符号語毎にスケーリング係数４０３およびスケーリング係数４０７の値を計算する。計算されたスケーリング係数は、このスケーリング係数を計算する基となった復号された出力４８５に対応する待ち行列バッファ４４９のバッファに格納される。
【００４３】
復号された出力４８５を使用して、動的スカラ計算回路４９７は、まず、スケーリング係数４０３およびスケーリング係数４０７の値が更新されるべきかどうかを判断する。詳細には、動的スカラ演算回路４９７は、ＬＤＰＣデコーダ回路４３７によって一般に処理される、依然として違反するデータセットのパリティ検査の数の表示を受け取る。この数は、本明細書では違反カウントと呼ぶ。さらに、動的スカラ演算回路４９７は、飽和状態である（すなわち最大達成値に等しい値を有する）復号された出力４８５中のビット周期の数をカウントする。この値は、飽和カウントと呼ぶ。動的スカラ演算回路４９７は、違反カウントをしきい値４２３と比較し、飽和カウントを別のしきい値４２５と比較する。いくつかの実施形態では、しきい値４２３およびしきい値４２５は共にプログラム可能である。スケーリング係数４０３およびスケーリング係数４０７の値は、違反カウントがしきい値４２３より小さい場合か、飽和カウントがしきい値４２５より大きい場合に更新される。次の擬似コードは、更新条件を記述している：
ｉｆ（違反カウント＜しきい値４２３||飽和カウント＞しきい値４２５）｛
スケーリング係数を更新する
｝
ｅｌｓｅ｛
スケーリング係数を維持する
｝
例示的な場合では、かなりの数の飽和した軟判定があるときは、単にスケーリング係数４０３およびスケーリング係数４０７の動的変更が行われる。
【００４４】
更新が要求されるときは、スケーリング係数４０３およびスケーリング係数４０７の更新は、実施に応じて様々な方法で行われることが可能である。例えば更新は、最初にスケーリング係数４０３およびスケーリング係数４０７をデフォルト値に等しく設定することによって行われることが可能である。次の擬似コードは、初期条件を記述している：
スケーリング係数４０７＝βｄｅｆａｕｌｔ；および
スケーリング係数４０３＝αｄｅｆａｕｌｔ
デフォルト値、βｄｅｆａｕｌｔおよびαｄｅｆａｕｌｔは、設計時にハードコードされる場合があり、またはプログラム可能であって、待ち行列検出および復号回路４９９の特定の配置に応じて更新することが可能である場合がある。デフォルト値、βｄｅｆａｕｌｔおよびαｄｅｆａｕｌｔは、最小の飽和のみを有する良好な性能を提供するように選択されることが可能である。１つの実施形態では、スケーリング係数４０３およびスケーリング係数４０７の値の更新を決定すると、スケーリング係数４０３およびスケーリング係数４０７は、次の擬似コードに従って最小値のスケーリング係数に変更される。
ｉｆ（違反カウント＜しきい値４２３||飽和カウント＞しきい値４２５）｛ 
スケーリング係数４０７＝βｍａｘｉｍｕｍ；および 
スケーリング係数４０３＝αｍｉｎｉｍｕｍ
｝
ｅｌｓｅ｛
スケーリング係数４０７＝βｄｅｆａｕｌｔ；および 
スケーリング係数４０３＝αｄｅｆａｕｌｔ
｝
βｍａｘｉｍｕｍおよびαｍｉｎｉｍｕｍの値は、設計時にハードコードされる場合があり、または特定の配置に応じて更新できるようにプログラム可能である場合がある。デフォルト値、βｍａｘｉｍｕｍ、αｍｉｎｉｍｕｍは、良好な性能を提供するように選択されることが可能であるが、デフォルトのスケーリング係数によって飽和が許容されるのを避けるように値を設定する。
【００４５】
待ち行列検出／復号回路４９９により、導入されるデータに応じて可変数の検出および復号反復を行うことが可能になる。さらに場合によっては、待ち行列検出／復号回路４９９を使用することによってかなりの電力の節減を実現することができる。さらにまた場合によっては、複数の反復が必ずしも必要とされないので実質的な第１の反復のデータの収束が存在する場合、スループットを増大させることが可能であり、より速いＬＤＰＣデコーダを実装することができる。さらにまた、ＬＤＰＣデコーダ４３７の結果が順不同に報告されることを可能にすることによって、アップストリームの処理はダウンストリームの処理の完了を待つ必要がない。順不同の結果の並べ替えは、待ち行列検出／復号回路４９９によって、または出力４７１のダウンストリームの受信部によって行われることが可能である。また、デコーダ４３７内で動的スカラを使用することにより、比較的高いローカル・スカラ値を高速に使用して符号語の実質的にノイズのない領域を解決すること、および比較的小さいローカル・スカラ値を使用して符号語のよりノイズのある領域を解決することができる。本明細書で提供される開示に基づいて、当業者は、本発明の１つまたは複数の実施形態を実施することによって実現されることが可能である様々な他の利点を理解するであろう。
【００４６】
図５ａを見ると、フロー図５００は、本発明のいくつかの実施形態に従った、デコーダ・メッセージの動的スケーリングを使用するデータ処理のための方法を示している。フロー図５００に従って、データ入力が受け取られる（ブロック５２０）。このデータ入力は、磁気記録媒体から受け取られる一連のデータビット、または伝送チャネルから受け取られる一連のビットであることが可能であるが、これらに限定されない。本明細書で提供する開示に基づいて、当業者は受け取られるデータ入力の様々なソースおよびフォーマットを理解するであろう。受け取られるデータのサンプルが、バッファに格納され、後の処理に備えて保管される（ブロック５２５）。受け取られたデータにデータ検出処理が行われる（ブロック５５５）。結果として得られる検出されたデータがインターリーブされる（ブロック５６０）。
【００４７】
インターリーブされたデータが復号される（ブロック５６５）。次に、別のローカル反復（すなわちデコーダをもう一度通過すること）が要求されているかどうかを判断する（ブロック５９２）。この判断は、デコーダが収束したかどうか、および収束しなかったことがデコーダをさらに通過することによって利益を得られるかどうかに基づいて行われる。当技術分野で知られている、さらなるローカル・デコーダのループの必要性を判断するためのいかなる手法を使用することもできる。さらなるローカル反復（すなわち復号処理をもう一度通過すること）が要求されている場合（ブロック５９２）、ローカル・スカラが計算される（ブロック５９４）。場合によっては、このローカル・スカラの計算は、いくつかの所定のスカラ値のうちの１つから選択することを含む。本発明のいくつかの実施形態では、初期ローカル・スカラ値は、第１のグローバル反復（すなわちデータ検出とデータ復号の両方の実行）で使用され、この同じローカル・スカラ値は、グローバル反復に続く次の各ローカル反復に使用される。さらなるグローバル反復が行われる度に、スカラ値は定義された量だけ削減され、削減されたスカラ値は、次に続くローカル反復に使用される。本発明の１つの特定の実施形態では、最初のスカラ値は０．７５であり、次のグローバル反復の度にスカラ値は１／３２というハードウェアに適した値だけ削減される。したがって、第２のグローバル反復ではスカラ値は０．７１８８であり、第３のグローバル反復ではスカラ値は０．６８７５であり、第４のグローバル反復ではスカラ値は０．６５６３であり、第５のグローバル反復ではスカラ値は０．６２５であり、第６のグローバル反復ではスカラ値は０．５９３８であり、第７のグローバル反復ではスカラ値は０．５６２５であり、第８のグローバル反復ではスカラ値は０．５３１３であり、第９のグローバル反復ではスカラ値は０．５である。ある時点で、スカラ値は削減されず、一定となる。したがって、前述の例を使用すると、第１０以降のグローバル反復においてスカラ値は０．５に維持される。本発明の他の実施形態では、スカラ値は、各グローバル反復の後に行われる変更に加えて、またはこれに代わって、各ローカル反復の後に変更されることが可能であることに注意されたい。デコーダ回路の内部値は、ローカル・スカラ値を掛けられ（ブロック５９６）、デコーダの処理は繰り返される（ブロック５６５）。その後、別のローカル反復が要求されているかどうかが判断される（ブロック５９２）。
【００４８】
一般的な法則として、より高いローカル・スカラ値を使用すると、デコーダによる収束の割合が増大し、低ノイズがもたらされる。対照的に、より低いローカル・スカラ値を使用すると、収束の可能性が増大するが収束の割合が減少し、データストリーム中のビットの１つまたは複数でより高いノイズが示される。より小さいスカラを掛けられるビットはデコーダ回路を飽和させる可能性が低く、したがってより多くのデータが復号処理に使用されるように維持されるので、収束のより高い確率が発生する。可変ローカル・スカラ値を使用することによって、本発明のいくつかの実施形態は、より低いノイズのレベルを示す、符号語中の様々な領域では比較的速い収束を提供する。その後、より高いノイズレベルを示す符号語中の領域は、次第により低いスカラで処理され、これにより収束の割合を減少させるが、収束を実現するために使用されることが可能であるデータの領域を増大させる。
【００４９】
さらなるローカル反復が要求されていないと判断される場合（ブロック５９２）、復号処理が収束したかどうか（ブロック５４５）、およびデータを再処理するのに利用できる十分なバッファリングがあるかどうか（ブロック５５０）が判断される。復号処理が収束した（ブロック５４５）か、または利用できるバッファリングが不足している（ブロック５５０）場合、復号されたデータはデインターリーブされ（ブロック５７０）、バッファに格納される（ブロック５７５）。バッファは、利用できるようになった様々な結果を順不同に含んでおり、したがって様々な結果は、対応するデータ入力がもともと受け取られた順序を表すようにバッファの中で並べ替えられる（ブロック５８０）。その後、バッファにおいて完全な時間セットが利用可能であるかどうかを判断する（ブロック５８５）。完全な時間セットは、所与の時間にわたって受け取られた入力に対応するすべての結果を含む。したがって例えば第１の結果が遅れ、後の２つの結果が報告される場合、第１の結果が最終的にバッファで利用可能となると、３つの結果に対して完全な時間セットが存在する。本発明のいくつかの実施形態では、結果は順不同に受信部に報告されることに注意されたい。このような場合、結果を並べ替える、または完全な時間セットが利用できるかどうかを判断する必要がない。完全な時間セットが利用できる場合（ブロック５８５）、または結果が順序に関係なく受け取られるように報告されるべきである場合、結果は受信部に出力される（ブロック５９０）。
【００５０】
あるいは、復号処理が収束しなかった（ブロック５４５）、および十分なバッファリングが利用できる（ブロック５５０）場合、もう一度グローバル反復が行われる。グローバル反復は、復号されたデータをデインターリーブすること（ブロック５０５）、およびデインターリーブされ復号されたデータをバッファに格納すること（ブロック５１０）を含む。データ検出器が利用可能になると、デインターリーブされたデータは、データ入力の対応するサンプルと整合される（ブロック５１５）。デインターリーブされたデータおよび対応するサンプルデータの入力は、データ検出器に提供され、同じデータ入力の先行する処理（ブロック５５５、５６０、５６５、５９２、５９４、５９６、５４５、５５０、５０５、５１０、５１５）において作り出された軟入力を使用して、もともと格納されていたデータ入力のサンプル（ブロック５２５）において、その後のデータ検出が行われる（ブロック５３０）。データ検出処理の結果はインターリーブされ（ブロック５３５）、インターリーブされたデータは復号される（ブロック５６５）。この時点で、ブロック５９２、５９４、５９６、５４５、５５０の処理は繰り返される。
【００５１】
図５ｂを見ると、フロー図５０１は、本発明のいくつかの実施形態に従った、デコーダ・メッセージの動的スケーリング、およびグローバル処理ループ中の動的スケーリングを使用するデータ処理のための方法を示している。フロー図５０１に従って、データ入力が受け取られる（ブロック５２１）。このデータ入力は、磁気記録媒体から受け取られる一連のデータビット、または伝送チャネルから受け取られる一連のビットであることが可能であるが、これらに限定されない。本明細書に提供する開示に基づいて、当業者は、受け取られるデータ入力の様々なソースおよびフォーマットを理解するであろう。受け取られたデータのサンプルはバッファに格納され、後の処理に備えて保管され（ブロック５２６）、受け取られたデータ上でデータ検出処理が行われる（ブロック５５６）。結果として生じる検出されたデータは、スケーリング係数（α）を掛けられ（ブロック５５８）、この乗算の積がインターリーブされる（ブロック５６１）。
【００５２】
インターリーブされたデータは復号される（ブロック５６６）。その後、別のローカル反復（すなわちデコーダをもう一度通過すること）が要求されているかどうかが判断される（ブロック５９３）。この判断は、デコーダが収束したかどうか、および収束しなかったことがデコーダをさらに通過することによって利益を得られるかどうかに基づいて行われることが可能である。当技術分野で知られている、さらなるローカル・デコーダ・ループの必要性を判断するいかなる手法を使用することもできる。さらなるローカル反復（すなわち復号処理をもう一度通過すること）が要求されている場合（ブロック５９２）、ローカル・スカラが計算される（ブロック５９５）。場合によっては、このローカル・スカラの計算は、いくつかの所定のスカラ値のうちの１つから選択することを含む。本発明のいくつかの実施形態では、初期ローカル・スカラ値は、第１のグローバル反復（すなわちデータ検出とデータ復号の両方の実行）で使用され、この同じローカル・スカラ値は、グローバル反復に続く次の各ローカル反復に使用される。さらなるグローバル反復が行われる度に、スカラ値は定義された量だけ削減され、削減されたスカラ値は、次に続くローカル反復に使用される。本発明の１つの特定の実施形態では、最初のスカラ値は０．７５であり、次のグローバル反復の度にスカラ値は１／３２というハードウェアに適した値だけ削減される。したがって、第２のグローバル反復ではスカラ値は０．７１８８であり、第３のグローバル反復ではスカラ値は０．６８７５であり、第４のグローバル反復ではスカラ値は０．６５６３であり、第５のグローバル反復ではスカラ値は０．６２５であり、第６のグローバル反復ではスカラ値は０．５９３８であり、第７のグローバル反復ではスカラ値は０．５６２５であり、第８のグローバル反復ではスカラ値は０．５３１３であり、第９のグローバル反復ではスカラ値は０．５である。ある時点で、スカラ値は削減されず、一定となる。したがって、前述の例を使用すると、第１０以降のグローバル反復においてスカラ値は０．５に維持される。本発明の他の実施形態では、スカラ値は、各グローバル反復の後に行われる変更に加えて、またはこれに代わって、各ローカル反復の後に変更されることが可能であることに注意されたい。デコーダ回路の内部値は、ローカル・スカラ値を掛けられ（ブロック５９７）、デコーダの処理は繰り返される（ブロック５６６）。その後、別のローカル反復が要求されているかどうかが判断される（ブロック５９３）。
【００５３】
一般的な法則として、より高いローカル・スカラ値を使用すると、デコーダによる収束の割合が増大し、低ノイズがもたらされる。対照的に、より低いローカル・スカラ値を使用すると、収束の可能性が増大するが収束の割合が減少し、データストリーム中のビットの１つまたは複数により高いノイズが示される。より小さいスカラを掛けられたビットは、デコーダ回路を飽和させる可能性が少なく、したがってより多くのデータが復号処理に使用されるように維持されるので、収束の確率がより高くなる。様々なローカル・スカラ値を使用することによって、本発明のいくつかの実施形態は、より低いレベルのノイズを示す符号語の様々な領域では比較的高速の収束を提供する。その後、より高いレベルのノイズを示す符号語中の領域は、次第に低いスカラ値で処理され、これにより収束の割合は減少するが、収束を実現するために使用されることが可能であるデータの範囲は増大する。
【００５４】
さらなるローカル反復が要求されていないと判断される場合（ブロック５９３）、復号処理が収束したかどうか（ブロック５４６）、およびデータを再処理するのに利用できる十分なバッファリングがあるかどうか（ブロック５５１）が判断される。復号処理が収束した（ブロック５４６）か、または利用できるバッファリングが不足している（ブロック５５１）場合、復号されたデータはデインターリーブされ（ブロック５７１）、バッファに格納される（ブロック５７６）。バッファは、利用できるようになった様々な結果を順不同に含んでおり、したがって様々な結果は、対応するデータ入力がもともと受け取られた順序を表すようにバッファの中で並べ替えられる（ブロック５８１）。次に、完全な時間セットが利用できるかどうかが判断される（ブロック５８６）。完全な時間セットは、所与の期間にわたる受信された入力に対応するすべての結果を含む。したがって例えば、第１の結果が遅れているが、後の２つの結果が報告される場合、第１の結果がバッファの中で最終的に利用できるようになると、３つの結果に対して完全な時間セットが存在する。本発明のいくつかの実施形態では、結果は順不同に受信部に報告されることに注意されたい。このような場合、結果を並べ替える、または完全な時間セットが利用できるかどうかを判断する必要がない。完全な時間セットが利用できる場合（ブロック５８６）、または結果が順序に関係なく受け取られるように報告されるべきである場合、結果は受信部に出力される（ブロック５９１）。
【００５５】
あるいは、復号処理が収束しなかった（ブロック５４６）、および十分なバッファリングが利用できる（ブロック５５１）場合、もう一度グローバル反復が行われる。グローバル反復は、復号されたデータに基づいてグローバルスケーリング係数βｘおよびαｘを計算することを含む（ブロック５０３）。スケーリング係数は、図６ａ〜６ｃに関して以下に説明する手法のうちの１つを使用して計算されることが可能である。また復号されたデータは、デインターリーブされ（ブロック５０６）、デインターリーブされ復号されたデータがバッファに格納される（ブロック５１０）。データ検出が利用可能になると、デインターリーブされたデータは、データ入力の対応するサンプルと整合され（ブロック５１６）、スケーリング係数βｘを掛けられる（ブロック５１２）。デインターリーブされたデータおよび対応するサンプルデータの入力は、データ検出器に提供され、同じデータ入力の先行する処理（ブロック５５６、５５８、５６１、５６６、５９３、５９５、５９７、５４６、５５１、５０３、５０６、５１１、５１２、５１６）において作り出された軟入力を使用して、もともと格納されていたデータ入力のサンプル（ブロック５２６）上で、その後のデータ検出が行われる（ブロック５３１）。検出されたデータは、スケーリング係数αｘを掛けられる（ブロック５３２）。データ検出処理の結果はインターリーブされ（ブロック５３６）、インターリーブされたデータは復号される（ブロック５６６）。この時点で、ブロック５９３、５９５、５９７、５４６、５５１の処理は繰り返される。
【００５６】
図６ａ〜６ｃを見ると、本発明の様々な実施形態に従って、グローバル・ループのスケーリング係数を動的に計算するための３つの異なる手法が示されている。図６ａのフロー図７００に従って、復号処理が完了する度に、違反カウントが第１のしきい値（すなわちしきい値Ａ）より小さいかどうか（ブロック７０１）、または飽和カウントが第２のしきい値（すなわちしきい値Ｂ）より大きいかどうか（ブロック７０３）が判断される。いずれかが真である場合（ブロック７０１、７０３）、スケーリング係数は更新される（ブロック７０７）。詳細には、スケーリング係数は、次の式に従って更新される：
βスケーリング係数＝βｍａｘｉｍｕｍ、および
αスケーリング係数＝αｍｉｎｉｍｕｍ
その他の場合、更新は要求されず（ブロック７０１、７０３）、次の式に従ってスケーリング係数はデフォルトレベルに設定される（ブロック７０５）：
βスケーリング係数＝βｄｅｆａｕｌｔ、および
αスケーリング係数＝αｄｅｆａｕｌｔ
【００５７】
図６ｂのフロー図７１０に従って、復号処理が完了する度に、違反カウントが第１のしきい値（すなわちしきい値Ａ）より小さいかどうか（ブロック７１１）、または飽和カウントが第２のしきい値（すなわちしきい値Ｂ）より大きいかどうか（ブロック７１３）が判断される。いずれかが真である場合（ブロック７１１、７１３）、ルックアップテーブルからスケーリングデータにアクセスするために使用されるインデックス（ｉ）は、インクリメントされる（ブロック７１７）。次にスケーリング係数が、このインデックスを使用してルックアップテーブルから取り出される（ブロック７２９）。詳細には、スケーリング係数は、次の式に従って更新される：
βスケーリング係数＝β（ｉ）、および
αスケーリング係数＝α（ｉ）
β（ｉ＋１）はβ（ｉ）より大きく、α（ｉ＋１）はα（ｉ）より小さい。その他の場合、更新は要求されず（ブロック７１１、７１３）、次の式に従ってスケーリング係数はデフォルトレベルに設定される（ブロック７１５）：
βスケーリング係数＝βｄｅｆａｕｌｔ、および
αスケーリング係数＝αｄｅｆａｕｌｔ
【００５８】
図６ｃのフロー図７２０に従って、復号処理が完了する度に、違反カウントが第１のしきい値（すなわちしきい値Ａ）より小さいかどうか（ブロック７２１）、または飽和カウントが第２のしきい値（すなわちしきい値Ｂ）より大きいかどうか（ブロック７２３）が判断される。いずれかが真である場合（ブロック７２１、７２３）、飽和カウントに対応するインデックスが計算される（ブロック７２７）。場合によっては、インデックスは、スカラ値を掛けられて次の整数まで引き上げられた飽和カウントである。次にスケーリング係数が、このインデックスを使用してルックアップテーブルから取り出される（ブロック７２９）。詳細には、スケーリング係数は、次の式に従って更新される：
βスケーリング係数＝β（ｉｎｄｅｘ）、および
αスケーリング係数＝α（ｉｎｄｅｘ）
β（ｉ＋１）はβ（ｉ）より大きく、α（ｉ＋１）はα（ｉ）より小さい。その他の場合、更新は要求されず（ブロック７２１、７２３）、次の式に従ってスケーリング係数はデフォルトレベルに設定される（ブロック７２５）：
βスケーリング係数＝βｄｅｆａｕｌｔ、および
αスケーリング係数＝αｄｅｆａｕｌｔ
【００５９】
図６ｂのフロー図８２０に従って、復号処理が完了する度に、違反カウントがしきい値より小さいかどうかが判断される（ブロック８２１）。これが真である場合（ブロック８２１）、スケーリング係数（βｘ、αｘ）が計算される（ブロック８２９）。その他の場合、更新は要求されず（ブロック８２１）、次の式に従ってスケーリング係数はデフォルトレベルに設定される（ブロック８２５）：
βスケーリング係数＝βｄｅｆａｕｌｔ、および
αスケーリング係数＝αｄｅｆａｕｌｔ
【００６０】
図７を見ると、記憶システム７００が、本発明の様々な実施形態に従って動的なデコーダ・スケーリングを含んだリード・チャネル７１０を含んでいる。記憶システム７００は、例えばハードディスクドライブである場合がある。リード・チャネル７１０には、図２または図４に関連して上述したものと同様の、動的スケーリングを含んだデコーダ回路を含むデータ処理コーデックが含まれるが、これに限定されない。場合によっては、データ処理コーデックは、図５の１つと関連して述べたものと同様に動作することができる。
【００６１】
また記憶システム７００は、プリアンプ７７０、インターフェース・コントローラ７２０、ハードディスク・コントローラ７６６、モーター・コントローラ７６８、スピンドル・モーター７７２、ディスク・プラッタ７７８、および読取り／書込みヘッド機構７７６を含んでいる。インターフェース・コントローラ７２０は、ディスク・プラッタ７７８へのデータ／ディスク・プラッタ７７８からのデータのアドレス指定およびタイミングを制御する。ディスク・プラッタ７７８上のデータは、ディスク・プラッタ７７８上に読取り／書込みヘッド機構７７６が適切に配置されているとき、この機構７７６によって検出されることが可能である磁気信号群からなる。１つの実施形態では、ディスク・プラッタ７７８は、垂直記録方式に従って記録された磁気信号を含む。例えば磁気信号は、水平記録信号または垂直記録信号として記録されることが可能である。
【００６２】
一般的な読取り動作において、読取り／書込みヘッド機構７７６は、ディスク・プラッタ７７８上の所望のデータトラックの上に、モーター・コントローラ７６８によって正確に配置される。適切なデータトラックは、インターフェース・コントローラ７２０を介して受け取られるアドレスによって定義される。モーター・コントローラ７６８は、ディスク・プラッタ７７８との関連で読取り／書込みヘッド機構７７６を配置し、かつ、ハードディスク・コントローラ７６６の指示に従って読取り／書込みヘッド機構をディスク・プラッタ７７８上の適切なデータトラックに移動することによってスピンドル・モーター７７２を駆動する。スピンドル・モーター７７２は、決められた回転速度（ＲＰＭ）でディスク・プラッタ７７８を回転させる。読取り／書込みヘッド機構７７８が適切なデータトラックに隣接して配置されると、ディスク・プラッタ７７８がスピンドル・モーター７７２によって回転させられるとき、読取り／書込みヘッド機構７７６によって、ディスク・プラッタ７７８上のデータを表す磁気信号が検知される。検知された磁気信号は、ディスク・プラッタ７７８上の磁気データを表す連続的な微小のアナログ信号として提供される。この微小なアナログ信号は、プリアンプ７７０を介して読取り／書込みヘッド機構７７６からリード・チャネル７１０へ転送される。プリアンプ７７０は、ディスク・プラッタ７７８がアクセスした微小なアナログ信号を増幅するように動作する。次に、リード・チャネル・モジュール７１０が、受け取られたアナログ信号を復号してデジタル化し、ディスク・プラッタ７７８にもともと書き込まれた情報を再現する。復号処理は、ローカル反復ループを使用し、デコーダ回路の出力が動的にスケール調整され、デコーダ回路への入力として提供されることが可能である。この入力は、再び復号される。読み取られたデータは、読取りデータ７０３として提供される。書込み動作は、実質的に前述の読取り動作の反対であり、書込みデータ７０１はリード・チャネル・モジュール７１０に提供される。このデータは次に符号化されて、ディスク・プラッタ７７８に書き込まれる。
【００６３】
図８を見ると、通信システム８９１が、本発明の異なる実施形態に従って可変的にスケール調整されるデコーダの処理を備えるリード・チャネル回路を有する受信機８９５を含んでいる。通信システム８９１は、当業者には知られるように、転送媒体８９７を介して符号化された情報を送信するように動作可能である送信機８９３を含んでいる。符号化されたデータは、受信機８９５によって転送媒体８９７から受信される。受信機８９５は、可変的にスケール調整されるデコーダの処理を備えたリード・チャネル回路を組み込んでいる。組み込まれたリード・チャネル回路は、入力ストリームの処理に基づいてデコーダのスケーリング係数を適応的に計算することができる。したがって、適応的計算回路は、図２〜５に関連して述べた計算回路に従って実装されることが可能である。本明細書で提供される開示に基づいて、当業者は、本発明の実施形態に従った等化および対象化が行われることが可能である様々な媒体を理解するであろう。
【００６４】
結論として本発明は、データの復号および／または検出を行うための新規のシステム、装置、方法、および配列を提供する。本発明の１つまたは複数の実施形態について詳細に述べたが、本発明の趣旨を外れることなく、様々な代替物、修正物、および等価物が当業者には明らかであろう。例えば、本発明の１つまたは複数の実施形態は、例えばテープ記録システム、光ディスクドライブ、無線システム、およびデジタル加入者線システムなど、様々なデータ記憶システムおよびデジタル通信システムに適用可能である。したがって、上記の説明は、本発明の範囲を限定するものとみなされるべきではなく、本発明の範囲は、添付の特許請求の範囲によって定義される。
【図１】
2011229119.tif 000003
【図２】
2011229119.tif 000004
【図３】
2011229119.tif 000005
【図４ａ】
2011229119.tif 000006
【図４ｂ】
2011229119.tif 000007
【図５ａ】
2011229119.tif 000008
【図５ｂ】
2011229119.tif 000009
【図６ａ】
2011229119.tif 000010
【図６ｂ】
2011229119.tif 000011
【図６ｃ】
2011229119.tif 000012
【図６ｄ】
2011229119.tif 000013
【図７】
2011229119.tif 000014
【図８】
2011229119.tif 000015