(57)【要約】  データ符号化を実施するための方法、装置、及びシステムを提示する。これらは、データビットのシーケンスを受け取るステップと、データビットのシーケンスをパリティチェック行列（Ｈ行列）に従って符号化して符号化済みビットのシーケンスを生成するステップであって、Ｈ行列が第１の行列と第２の行列とに区分化でき、第１の行列が二重対角行列であり、第２の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約を満たす、該ステップと、符号化済みビットのシーケンスを出力ステップと、を伴う。【選択図】  図２Ａ
2008537410.tif 000002
【特許請求の範囲】
【請求項１】
データ符号化を実施する方法であって、
データビットのシーケンスを受け取るステップと、
符号化済みビットのシーケンスを生成するために、前記データビットのシーケンスをパリティチェック行列（Ｈ行列）に従って符号化するステップであって、
前記Ｈ行列が第１の行列と第２の行列とに区分化でき、前記第１の行列が二重対角行列であり、前記第２の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、
前記第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
該ステップと、
前記符号化済みビットのシーケンスを出力するステップと、
を含む方法。
【請求項２】
前記符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ（ＳＰＣ）と、アキュムレータとを備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダを使用して実施される、請求項１に記載の方法。
【請求項３】
前記符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットとを備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダを使用して実施される、請求項１に記載の方法。
【請求項４】
前記符号化するステップは低密度パリティチェック（ＬＤＰＣ）エンコーダを使用して実施される、請求項１に記載の方法。
【請求項５】
前記クラッシュフリーインタリーバ制約条件は、クラッシュフリーウィンドウデコーダオペレーションをサポートする、請求項１に記載の方法。
【請求項６】
前記クラッシュフリーインタリーバ制約は、クラッシュフリータイルデコーダペレーションをサポートする、請求項１に記載の方法。
【請求項７】
前記クラッシュフリーインタリーバ制約はクラッシュフリーウィンドウデコーダ動作及びクラッシュフリータイルデコーダ動作をサポートする、請求項１に記載の方法。
【請求項８】
前記符号は、前記クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、前記特定のパリティチェック行列に基づいて対応する第２の行列を計算すること、及び、前記対応する第２の行列が、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される、請求項１に記載の方法。
【請求項９】
前記符号は、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第２の行列を見つけること、前記第２の行列に基づいて対応するパリティチェック行列を計算すること、及び、前記パリティチェック行列が前記クラッシュフリーインタリーバ制約条件を満たすか否か評価することによって選択される、請求項１に記載の方法。
【請求項１０】
データ復号を実施する方法であって、
符号化済みビットのシーケンスを受け取るステップと、
復号済みビットのシーケンスを生成するために、前記符号化済みビットのシーケンスをパリティチェック行列（Ｈ行列）に従って復号するステップであって、
前記Ｈ行列が第１の行列と第２の行列とに区分化でき、前記第１の行列が二重対角行列であり、前記第２の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し
前記第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
該ステップと、
前記復号済みビットのシーケンスを出力するステップと、
を含む方法。
【請求項１１】
データ符号化を実施するための装置であって、
データビットのシーケンスを受け取るための入力インタフェースと、
前記入力インタフェースに結合されており、前記データビットのシーケンスをパリティチェック行列（Ｈ行列）に従って符号化して符号化済みビットのシーケンスを生成することのできるエンコーダであって、
前記Ｈ行列が第１の行列と第２の行列とに区分化でき、前記第１の行列が二重対角行列であり、前記第２の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、
前記第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
該エンコーダと、
前記エンコーダに結合されており、前記符号化済みビットのシーケンスを出力する出力インタフェースと、
を備える装置。
【請求項１２】
前記エンコーダは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ（ＳＰＣ）と、アキュムレータとを備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダである、請求項１に記載の装置。
【請求項１３】
前記エンコーダは、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットとを備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダである、請求項１に記載の装置。
【請求項１４】
前記エンコーダは低密度パリティチェック（ＬＤＰＣ）エンコーダである、請求項１に記載の装置。
【請求項１５】
前記クラッシュフリーインタリーバ制約条件はクラッシュフリーウィンドウデコーダオペレーションをサポートする、請求項１に記載の装置。
【請求項１６】
前記クラッシュフリーインタリーバ制約条件はクラッシュフリータイルデコーダオペレーションをサポートする、請求項１に記載の装置。
【請求項１７】
前記クラッシュフリーインタリーバ制約条件はクラッシュフリーウィンドウデコーダオペレーション及びクラッシュフリータイルデコーダオペレーションをサポートする、請求項１に記載の装置。
【請求項１８】
前記符号は、前記クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、前記特定のパリティチェック行列に基づいて対応する第２の行列を計算すること、及び、前記対応する第２の行列が、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される、請求項１に記載の装置。
【請求項１９】
前記符号は、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第２の行列を見つけること、前記第２の行列に基づいて対応するパリティチェック行列を計算すること、及び、前記パリティチェック行列が前記クラッシュフリーインタリーバ制約条件を満たすか否かを評価することによって選択される、請求項１に記載の装置。
【請求項２０】
データ復号を実施するための装置であって、
符号化済みビットのシーケンスを受け取るための入力インタフェースと、
前記入力インタフェースに結合されており、前記符号化済みビットのシーケンスをパリティチェック行列（Ｈ行列）に従って復号して復号済みビットのシーケンスを生成することのできるデコーダであって、
前記Ｈ行列が第１の行列と第２の行列とに区分化でき、前記第１の行列が二重対角行列であり、前記第２の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、
前記第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
該デコーダと、
前記デコーダに結合されており、前記復号済みビットのシーケンスを出力する出力インタフェースと、
を備える装置。
【請求項２１】
データ符号化を実施するためのシステムであって、
データビットのシーケンスを受け取る手段と、
前記データビットのシーケンスをパリティチェック行列（Ｈ行列）に従って符号化して符号化済みビットのシーケンスを生成することのできる手段であって、
前記Ｈ行列が第１の行列と第２の行列とに区分化でき、前記第１の行列が二重対角行列であり、前記第２の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、
前記第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
該手段と、
前記符号化済みビットのシーケンスを出力する手段と、
を備えるシステム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
[0001]本出願は、２００５年４月１５日に出願された米国特許出願第６０／６７１９４２号の利益を主張するものであり、この米国特許出願の本出願である。本出願は、この米国特許出願を、その全体をあらゆる目的のために参照することによって、明示的に援用する。
【発明の背景】
【０００２】
[0002]雑音のあるチャネルを介したデータの伝送は、データストリーム中に誤りを招く可能性がある。チャネルを介して伝送された後に再構築されたデータシーケンス中の誤りの量を低減するために、このような誤りを訂正する能力を提供する符号化技法が開発されてきた。これは通常、冗長情報を伝送の一部として追加することによって達成される。ここでは、伝送という用語は、種々のタイプの媒体を介したデータの転送を含むように広く使用する。この伝送との用語は、有線、無線、衛星、及び他の技術で使用されるものなど、通信媒体を含むことができる。また、この用語は、磁気、半導体、及び他のタイプのメモリなど、記憶媒体を含むこともできる。
【０００３】
[0003]前方誤り訂正（ＦＥＣ）は、誤り訂正能力を提供することによって、このような雑音のあるチャネルを介してデータを送信できるようにする。概して言えば、ＦＥＣは、送信機においてソースデータを符号化済みデータへと符号化することを伴う。送信機は、雑音のあるチャネルを介して符号化済みデータを送信するが、このチャネルは誤りを招く。受信機において、チャネルから受信されたデータは復号されて、ＦＥＣが可能とする範囲において誤りが除去され、元のソース信号を再構築した信号が作成される。使用されるＦＥＣ符号化のタイプは、システムの誤り訂正性能に大きく影響する可能性がある。
【０００４】
[0004]今日知られている最も一般的で強力なＦＥＣ符号化技法の幾つかには、イレギュラーリピートアキュムレート（ＩＲＡ、ｉｒｒｅｇｕｌａｒ−ｒｅｐｅａｔ−ａｃｃｕｍｕｌａｔｅ）符号、及び低密度パリティチェック（ＬＤＰＣ、ｌｏｗ  ｄｅｎｓｉｔｙ  ｐａｒｉｔｙ  ｃｈｅｃｋ）符号がある。当技術分野で知られているように、ＩＲＡ符号は、ソースデータを繰り返すことと、インタリーブ関数又は並べ替え関数を実行することと、累積関数を実行することと、を含む符号化ステップを特徴とする。また、当技術分野で知られているように、ＬＤＰＣ符号はパリティチェック行列を特徴とし、当該行列は、しばしばＨ行列と呼ばれ、ソース信号に対して実行される符号化を規定するものである。
【０００５】
ＩＲＡ符号又はＬＤＰＣ符号。このような厳格さは、システムにとって最も重要な属性に基づいてＩＲＡとＬＤＰＣのいずれかのフォーマットによる最適なタイプの符号化構造及び復号構造をシステム設計者が選択できるようにするのではなく、ＦＥＣ符号設計の仕様が、使用される符号のタイプを指定することになることを意味する。ＩＲＡとＬＤＰＣのいずれかとしての符号選択が、システムの特定のニーズ又は制限に応じて変わる可能性があるというシナリオもあり得る。したがって、システム設計者がＩＲＡ符号とＬＤＰＣ符号との間で柔軟に選択できるようにする技法が、大いに必要とされている。
【発明の簡単な概要】
【０００６】
[0006]本発明は、データ符号化を実施するための方法、装置、及びシステムに関し、これらは、データビットのシーケンスを受け取るステップと、符号化済みビットのシーケンスを生成するようデータビットのシーケンスをパリティチェック行列（Ｈ行列）に従って符号化するステップであって、Ｈ行列が第１の行列と第２の行列とに区分化でき、第１の行列が二重対角行列であり、第２の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、該ステップと、符号化済みビットのシーケンスを出力するステップと、を伴うものである。
【０００７】
[0007]符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ（ＳＰＣ）と、アキュムレータと、を備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダを使用して実施することが可能である。符号化するステップはまた、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットと、を備えるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダを使用して実施することも可能である。さらに、符号化するステップは、低密度パリティチェック（ＬＤＰＣ）エンコーダを使用して実施することも可能である。
【０００８】
[0008]クラッシュフリーインタリーバ制約条件は、クラッシュフリーウィンドウデコーダオペレーション、クラッシュフリータイルデコーダオペレーション、又はクラッシュフリーウィンドウデコーダオペレーションとクラッシュフリータイルデコーダオペレーションの双方をサポートすることができる。
【０００９】
[0009]一実施形態では、符号は、クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、この特定のパリティチェック行列に基づいて対応する第２の行列を計算すること、及び、対応する第２の行列が、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される。
【００１０】
[0010]別の実施形態では、符号は、各部分行列が複数の列からなり各列が１以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第２の行列を見つけること、第２の行列に基づいて対応するパリティチェック行列を計算すること、及び、パリティチェック行列がクラッシュフリーインタリーバ制約条件を満たすか否かを評価することによって選択される。
【００１１】
[0011]本発明は、データ復号を実施するための方法、装置、及びシステムに関し、これらは、符号化済みビットのシーケンスを受け取るステップと、復号済みビットのシーケンスを生成するよう、符号化済みビットのシーケンスをパリティチェック行列（Ｈ行列）に従って復号するステップであって、Ｈ行列が第１の行列と第２の行列とに区分化でき、第１の行列が二重対角行列であり、第２の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が１以下の列重みを有し、第２の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、該ステップと、復号済みビットのシーケンスを出力するステップと、を伴うものである。
【発明の詳細な説明】
【００１２】
［システムの説明］
[0027]図１は、本発明の一実施形態によるディジタル通信システム１０を示している。ディジタル通信システム１０は、データソース１２を有しており、このデータソース１２は、閉集合のシンボルで定義されるシンボルを提供する。例えば、２進閉集合のシンボルが使用される場合、シンボルは｛０，１｝から選択される。データソース１２は、シンボルの発生源であってよい。或いは、データソース１２は、別のソースからシンボルを受け取る入力インタフェースであってもよい。データソース１２からのシンボルはエンコーダ１４に転送され、エンコーダ１４は、エンコーダ１４の構造に従って、シンボルを符号化済みシンボルに変換する。次いで、符号化済みシンボルはチャネル１６を介して送信されるが、チャネル１６は、加法性白色ガウス雑音（ＡＷＧＮ）などの雑音及び歪みを符号化済みシンボルに加えて受信信号を生成する可能性がある。受信信号に関係する軟情報が、デコーダ１８に送られる。デコーダ１８はシンボルに関する軟情報を出力し、この軟情報を閾値化して硬判定復号済みシンボルを生み出すことができる。復号済みシンボルは、データ出力２０に転送される。データ出力２０は、復号済みシンボルの最終宛先であってよい。或いは、データ出力２０は、復号済みシンボルを別の宛先に出力する出力インタフェースであってもよい。
【００１３】
[0028]図１に示すディジタル通信システムは、基本的な機能の説明となる例を提供する機能ブロック図である。種々の機能を追加又は省略してもよい。また、本明細書で論じる革新的な方法の適用は、この特定のブロック図に限定されない。同様に、以下に論じる他のブロック図も、説明となる例に過ぎず、本明細書で論じる方法の適用可能性を限定するものではない。
【００１４】
［ＩＲＡエンコーダ］
[0029]図２Ａは、本発明の一実施形態によるイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダとして実現されたエンコーダ１４のブロック図である。ＩＲＡエンコーダ１４は、繰返し符号ブロック２０２と、インタリーバ２０４と、単一パリティチェックブロック２０６と、アキュムレータ２０８とを備えている。ここでは、また後のセクションでは、全てのシンボルは２進シンボル又はビットであるものとして述べる。これはソースシンボル、符号化済みシンボル、及び復号済みシンボルを含む。しかしながら、本発明は必ずしも２進シンボルに限定されないことを理解されたい。このＩＲＡ符号のレートはＫ／Ｎである。すなわち、Ｋ個のソースビットごとに、Ｎ個の符号化済みビットが生成される。
【００１５】
[0030]ＩＲＡエンコーダ１４は、組織符号を表す。これは、符号化済みビットが、組織ビットとパリティビットという二つの部分を含むことを意味する。組織ビットは、ソースビットと同一である。パリティビットは、ソースビットに基づいて生成される。ここでは、組織ビット（これらはソースビットである）を「ｂ」と呼ぶ。パリティビットを「ｐ」と呼ぶ。
【００１６】
[0031]図に示すように、ＩＲＡエンコーダ１４による組織ビット「ｂ」の生成は自明なものである。ソースビットが単純に転送されて、組織ビットが生成される。ＩＲＡエンコーダ１４によるパリティビット「ｐ」の生成について以下に述べる。
【００１７】
[0032]最初に、ソースビットが繰返し符号ブロック２０２に提供される。繰返し符号ブロック２０２は、各ソースビットを複数回（「Ｑ」）繰り返すことによって形成される出力を生成する。各ソースビットが繰り返される回数Ｑは、変動し得る。Ｑは、複数の所定値の中から選択することができる。Ｑは変動するが、時間が経つにつれて平均値に達し得る。この図に示す実施形態では、Ｑの平均値は４である。本発明の異なる一実施形態によれば、Ｑは、特定の値に固定され、変化しない。
【００１８】
[0033]本発明の一実施形態によれば、繰返し符号ブロック２０２の出力は、インタリーバ２０４に提供される。ここで、繰返しブロック２０２の出力は、並列フォーマットで生成され、直列フォーマットに変換され、次いでインタリーバ２０４に提供される。具体的には、Ｑ個の並列ビットのグループごとに、Ｑ個の直列ビットに変換される。インタリーバ２０４は、既知のパターンに従ってデータのインタリーブ又は並べ替えを行う。
【００１９】
[0034]インタリーバ２０４の出力は、単一パリティチェックブロック２０６に提供される。ここで、インタリーバ２０６の出力は、直列フォーマットで生成され、並列フォーマットに変換され、次いで単一パリティチェックブロック２０６に提供される。具体的には、Ｊ個の直列ビットのグループごとに、Ｊ個の並列ビットに変換される。単一パリティチェックブロック２０６は、Ｊ個のビットの各組に対して、単一パリティチェックを実施する。これは、Ｊ個のビットに対して排他的論理和演算を実施することによって実現することができる。本発明の一実施形態によれば、Ｊは固定数である。本発明の別の実施形態によれば、Ｊは時間変動する。
【００２０】
[0035]最後に、単一パリティチェックブロック２０６の出力は、アキュムレータ２０８に提供される。アキュムレータ２０８は、１ビット累積関数を実施する。これは、各現在ビットと前の結果との排他的論理和演算を実施することによって実現することができる。アキュムレータ２０８からの出力ビットは、パリティビット「ｐ」として生成される。
【００２１】
[0036]図２Ａには示していないが、パリティチェックブロック２０６とそれに続くアキュムレータ２０８の組合せは、本発明の別の実施形態によれば、アキュムレータとそれに続く、Ｊから１に間引くビットパンクチャ回路で置き換えることができる。
【００２２】
[0037]図２Ｂは、本発明の一実施形態によるアキュムレータ２０８の一実装形態を示している。ここで、アキュムレータ２０８は、排他的論理和ゲート２１２及びＤフリップフロップ２１４を備えている。アキュムレータ２０８に到着したビットは、排他的論理和ゲート２１２への第１の入力に提供される。アキュムレータ２０８の前の出力は、Ｄフリップフロップ２１４に記憶されており、排他的論理和ゲート２１２の第２の入力に提供される。排他的論理和ゲート２１２の出力は、アキュムレータの現在出力として提供される。排他的論理和ゲート２１２の出力はまた、次のビットがアキュムレータ２０８に到着したときに次の反復を実施するための準備として、Ｄフリップフロップに記憶される。
【００２３】
[0038]図２Ｃは、ＩＲＡエンコーダ１４の図式モデルを示している。この図式モデルは、繰返しステージ２２２と、インタリーバステージ２２４と、単一パリティチェックステージ２２６と、アキュムレータステージ２２８とを備えている。ソースビットは最初に、繰返しステージ２２２によって処理される。ここで、繰返しステージ２２２は、各ソースビットをＱ回繰り返す。次に、繰り返されたビットはインタリーバステージ２２４によって処理され、インタリーバステージ２２４は、インタリーブ関数又は並べ替え関数を実行する。インタリーブされたビットは、単一パリティチェックステージ２２６によって、Ｊ個のビットのグループで処理される。次いで、パリティチェックビットは、アキュムレータステージ２２８によって処理される。アキュムレータステージ２２８の出力は、パリティビット「ｐ」である。この場合もやはり、ソースビットは単純に転送されて、組織ビット「ｂ」が生成される。
【００２４】
［ＬＤＰＣエンコーダ］
[0039]図３Ａは、本発明の一実施形態による、低密度パリティチェック（ＬＤＰＣ）エンコーダとして実現されたエンコーダ１４のブロック図である。このＬＤＰＣ符号のレートはＫ／Ｎである。すなわち、Ｋ個のソースビットごとに、Ｎ個の符号化済みビットが生成される。
【００２５】
[0040]ＬＤＰＣエンコーダ１４は、組織符号を表す。この場合もやはり、これは、符号化済みビットが、組織ビットとパリティビットという二つの部分を含むことを意味する。組織ビットは、ソースビットと同一である。パリティビットは、ソースビットに基づいて生成される。ここでは、組織ビット（これらはソースビットである）を「ｂ」と呼ぶ。パリティビットを「ｐ」と呼ぶ。
【００２６】
[0041]図に示すように、ＬＤＰＣエンコーダ１４による組織ビット「ｂ」の生成は自明なものである。ソースビットが単純に転送されて、組織ビットが生成される。ＬＤＰＣエンコーダ１４によるパリティビット「ｐ」の生成は、ブロック３０２を使用して実施される。このブロック３０２について、以下に更に詳細に述べる。ブロック３０２の動作は、パリティチェック行列Ｈに従って規定される。実際、当技術分野で知られているように、パリティチェック行列Ｈは、ＬＣＰＣエンコーダ１４の動作を完全に定義する。
【００２７】
[0042]図３Ｂは、本発明の一実施形態によるパリティチェック行列Ｈの構造を示している。ここで、パリティチェック行列Ｈは、二つの行列ＨｐとＨｄとに区分化できるものとして示されている。
【００２８】
[0043]第１の行列Ｈｐは、「二重対角」行列である。ここで、二重対角行列は、「１」の二つの対角線を含む行列とすることができる。「１」の第１の対角線は、行列Ｈｄの左上角から右下角に延びる。「１」の第２の対角線は、「１」の第１の対角線のすぐ下に位置する。
【００２９】
[0044]第２の行列Ｈｄは、垂直に積み重なった複数の部分行列
【数１】
2008537410.tif 000003
から構成される行列である。ここで、各部分行列ｈｔは、上付き文字「ｔ」で示されるように、転置された形で表現される。Ｈｄはランダム行列と呼ばれることもある。Ｈｄは、平均行重みＪ及び平均列重みＱを有し得る。
【００３０】
[0045]図３Ｃは、図３Ａのブロック３０２の実装形態で使用することのできる回路を示している。前述のように、パリティビット「ｐ」の計算は、パリティチェック行列Ｈに基づく。これは、パリティチェック行列Ｈと符号化済みビット「ｃ」との間に存在する周知の関係を前提とし、この関係は以下のように表現される。
Ｈ＊ｃ＝０
【００３１】
[0046]この関係及び以下の二つの式を使用する。
【数２】
2008537410.tif 000004
【００３２】
[0047]パリティビット「ｐ」について、これらがソースビット「ｂ」で表現されるように１組の連立方程式を解くことができる。実際、Ｈｐの二重対角構造が与えられれば、パリティビットは容易に得られる。最初に、第１のパリティビットｐ１を見つけることができる。その後、後続の各パリティビットｐｉは、前のパリティビットｐｉ−１に基づいて見つけることができる。これは、以下の二つの加算式で表現される。
【数３】
2008537410.tif 000005
【００３３】
[0048]このような計算は、図３Ｃに示す単純な構造を利用して実現することができる。Ｄフリップフロップ３１２が、生成されたときに前のパリティビットｐｉを記憶している。後続のパリティビットｐｉの計算は、前のパリティビットｐｉ−１と、適切な部分行列ｈ及びソースビット「ｂ」に関する総和とに対して実施される排他的論理和演算に基づく。
【００３４】
［ＩＲＡ−ＬＤＰＣ等価性］
[0049]図４は、本発明の一実施形態による、ＩＲＡエンコーダとＬＤＰＣエンコーダとの間にみられる等価性を示している。ここで、図２Ａに示したＩＲＡエンコーダの様々なコンポーネントを再び提示する。各コンポーネントは、行列を使用して表されている。したがって、繰返し符号ブロック２０２は、行列Ｔで表されている。インタリーバ２０４は、行列Ｐで表されている。単一パリティチェックブロック２０６は、行列Ｊで表されている。アキュムレータ２０８は、行列Ｄで表されており、これは行列Ｓ−１とも表現される。これらの様々な行列の次元が、図に示されている。
【００３５】
[0050]具体的には、Ｓは、サイズ（Ｎ−Ｋ×Ｎ−Ｋ）の二重対角アキュムレータ行列である。Ｄは、サイズ（Ｎ−Ｋ×Ｎ−Ｋ）の下方対角行列（lower-diagonal matrix）である。Ｔは、サイズ（ＱＫ×Ｋ）の繰返し行列である。Ｐは、サイズ（ＱＫ×ＱＫ）のインタリーバ置換行列である。最後に、Ｊは、サイズ（Ｎ−Ｋ×ＱＫ）の単一パリティチェックマッピング行列であり、これはＪ個の入力ビットの排他的論理和をとって各出力ビットを生成することによって実現することができる。
【００３６】
[0051]ＩＲＡエンコーダの各ステージにおけるデータもまた、行列（より正確にはベクトル）を使用して表されている。ソースビットは、ベクトルｂで表されている。したがって、繰返し符号ブロック２０２の出力は、ベクトルＴｂで表されている。したがって、インタリーバ２０４の出力は、ベクトルＰＴｂで表されている。したがって、単一パリティチェックブロック２０６の出力は、ベクトルＪＰＴｂで表されており、これはベクトルｅとも表現される。最後に、アキュムレータ２０８の出力は、したがってベクトルＤＪＰＴｂとして表されており、これはベクトルｐとも表現される。これらの様々なベクトルの次元が、図に示されている。
【００３７】
[0052]本発明の一実施形態によれば、ここに示すＩＲＡエンコーダは、次のように、等価なＬＤＰＣエンコーダとして表現することができる。行列［Ｓ｜ＪＰＴ］は、パリティチェック行列Ｈと同等と見なすことができ、Ｈ＝［Ｈｐ｜Ｈｄ］＝［Ｓ｜ＪＰＴ］と表現される。パリティビットｐ及びソースビットｂを垂直に積み重ねて符号ビットｃを形成できることは既知であり、
【数４】
2008537410.tif 000006
と表現される。これが与えられれば、ＩＲＡエンコーダの行列は、以下の形にすることができる。
【数５】
2008537410.tif 000007
上式は、以下の、ＬＤＰＣエンコーダのパリティチェック行列の既知の形に直接対応する。
［Ｈｐ｜Ｈｄ］＊ｃ＝０
Ｈ＊ｃ＝０
【００３８】
[0053]本発明の一実施形態によれば、次のように、ＩＲＡ符号を等価なＬＤＰＣ符号に変換することができる。ここで、ＨのＨｄ部分はちょうどＳである。ＨのＨｐ部分はＪＰＴである。Ｐは、インタリーバ置換によって完全に定義される。Ｊは、単一パリティチェック幅Ｊによって完全に定義される。Ｔは、繰返し符号の繰返し値Ｑ１，Ｑ２，．．．，Ｑｋによって完全に定義される。
【００３９】
[0054]Ｊ及びＴは、行と列の組合せを定義する。ＪＰは、一度にＪ個の行をＰからとり、２を法とする加算によってこれらを加算することによって形成することができる。ＪＰＴは、一度にＱｉ個の列をＪＰからとり、２を法とする加算によってこれらを加算することによって形成することができる。Ｐが正しく設計されていれば、Ｈｄは行重みＪ及び列重みＱｉを有することになる。
【００４０】
[0055]本発明の一実施形態によれば、次のように、ＬＤＰＣ符号をＩＲＡ符号に変換することができる。Ｈが二重対角形式［Ｈｐ｜Ｈｄ］であれば、ＪＰＴはちょうどＨｄである。Ｐは、Ｊ及びＴの行演算及び列演算を「反転」することによって決定することができる。具体的には、ＪＰＴの重みＪの各行を、重み１のＪ個の行に分離して、ＰＴを形成することができる。また、ＰＴの重みＱｉの各列を、重み１のＱｋ個の列に分離して、Ｐを形成することができる。Ｐは一意ではないことに留意されたい。すなわち、重み１のＪ個の行、及び重み１のＱｋ個の列の順序は、変更することができる。
【００４１】
[0056]図５は、例示的な値と共に示すＩＲＡ符号の行列を示している。図に示すように、Ｓは二重対角行列である。Ｄは下方対角行列である。Ｐは、ビットがどのように置換されることになるかを示すインタリーバ置換行列である。ここでは、擬似ランダム置換パターンが示されている。Ｔは、各ソースビットをＱ回繰り返す繰返し行列である。ここで、Ｑは、各ソースビットについて異なることのある値である。Ｊは、単一パリティチェックマッピング行列であり、これは階段構造を有するものとして示されている。
【００４２】
［ＩＲＡｎインタリーバクラッシュフリー制約条件］
[0057]図６及び７は、二つの異なるタイプのインタリーバクラッシュフリー制約条件を示している。これに関連してインタリーバの一般的な動作について、以下に簡単に論じる。インタリーバに入力されたビットのシーケンスは、入力フレームと称するフレームに編成される。このようなインタリーバの一例は、図２Ａに示したインタリーバ２０４である。各入力フレームについて、インタリーバは、対応する出力フレームを生成する。対応する出力フレームは、入力フレーム中にみられるビットと同じだが異なる順序で再構成されたビットを含む。各入力フレームは、長さＱＫをもつ。すなわちＱ×Ｋの長さをもつ。したがって、各出力フレームもまた、サイズＱＫをもつ。各入力フレームに対して同じインタリーブ関数ｉ＝π（ｊ）が実施されて、対応する出力フレームが生成される。
【００４３】
[0058]図に示すように、入力のインデックス「ｉ」は、入力フレーム内のビットの位置を特定するものである。出力のインデックス「ｊ」は、対応する出力フレーム内のビットの位置を特定するものである。関数ｉ＝π（ｊ）は、入力フレームを出力フレームに変形するのに使用される再構成又はインタリーブを厳密に定義する。
【００４４】
[0059]非常に単純な例として、フレームサイズＱＫ＝８の場合、インデックスｉは［０，１，．．．，７］の範囲にわたり、インデックスｊは［０，１，．．．，７］の範囲にわたる。インタリーブ関数ｉ＝π（ｊ）が、０＝π（０）、１＝π（１）、２＝π（２）、３＝π（３）、７＝π（４）、６＝π（５）、５＝π（６）、及び４＝π（７）として定義される場合、入力フレーム及び対応する出力フレームは、以下のように生成されることになる。
入力フレーム＝［ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ］
出力フレーム＝［ａ，ｂ，ｃ，ｄ，ｈ，ｇ，ｆ，ｅ］
【００４５】
[0060]この非常に単純な例では、フレームサイズＱＫ＝８が使用されている。実際のシステムでは、より大きいフレームサイズを実現してもよい。
【００４６】
[0061]Ｍ個のサブバンクを含むメモリに入力フレームのビットを記憶することによって、高速インタリーブが実施される。次いで、一度にＭ個のビットをメモリから読み出すことによって、出力フレームが生成される。具体的には、各サイクルで、各サブバンクから一つずつ、出力フレームのＭ個のビットを同時にメモリから読み出すことができる。一度にＭ個のビットずつ出力フレームを生成できることは、本質的に、インタリーブプロセスの速度をＭ倍に上げる。メモリのサブバンクは、種々の方式で実現することができる。
【００４７】
[0062]図６は、本発明の一実施形態によるウィンドウデコーダクラッシュフリー制約条件をしている。これは、インタリーブ関数ｉ＝π（ｊ）に対する制約条件であり、インタリーバ置換行列Ｐ（サイズＱＫ×ＱＫ）によって表される。ここで、各入力フレームは、サイズＭのグループに分割される。第１グループのＭ個のビットは、並列に生成され、各ビットが別々のサブバンクに記憶されるように、「０」〜「Ｍ−１」のラベルの付いたＭ個のメモリサブバンクに分配される。第２グループのＭ個のビットも、同様にして生成されてＭ個のメモリサブバンクに分配することができる。これが第３グループ、第４グループなどにも繰り返される。このようにして、入力フレーム全体がＭ個のメモリサブバンクに分配される。
【００４８】
[0063]ここでは、出力フレームのＭ個の連続した値が、並列にアクセスされる。具体的には、図に示す「π」ブロックが、Ｍ個のメモリサブバンクにアクセスする。このブロックは、１クロックサイクルなどでＭ個のメモリサブバンクに並列方式で別々にアクセスするＭ個の個別プロセスを利用して、関数ｉ＝π（ｊ）を実施する。これには、出力フレーム中のＭ個の連続した値が、Ｍ個のメモリサブバンクのうちの異なるサブバンクに位置することを要する。この要件を、ここではウィンドウデコーダクラッシュフリー制約条件と呼ぶ。
【００４９】
[0064]言い換えれば、ウィンドウデコーダクラッシュフリー制約条件は、出力フレーム中のＭ個の連続した値の同一グループからの各ｊ１及びｊ２について、π（ｊ１）を含むメモリサブバンクが、π（ｊ２）を含むメモリサブバンクと等しくないことを必要とする。メモリサブバンクのインデックスは、ｉ  ｍｏｄｕｌｏ  Ｍ、又はｉ％Ｍとして表現することができる。したがって、出力フレーム中のＭ個の値の同一グループからの各ｊ１及びｊ２について、ウィンドウデコーダクラッシュフリー制約条件は、以下のように表現することもできる。
π（ｊ１）％Ｍ≠π（ｊ２）％Ｍ
【００５０】
[0065]図７は、本発明の一実施形態によるタイルデコーダクラッシュフリー制約条件を示している。この場合も同様に、この制約条件は、インタリーブ関数ｉ＝π（ｊ）に対する制約条件であり、インタリーバ置換行列Ｐ（サイズＱＫ×ＱＫ）によって表される。ここでは、各入力フレームは、サイズＱＫ／Ｍのグループに分割される。入力フレーム内の相互にＱＫ／Ｍの間隔を空けたＭ個のビットの第１バッチが、並列に生成される。このＭ個のビットの第１バッチは、「０」〜「Ｍ−１」のラベルの付いたＭ個のメモリサブバンクに分配され、各ビットが別々のサブバンクに記憶される。次いで、入力フレーム内の相互にＱＫ／Ｍの間隔を空けたＭ個のビットの第２バッチが、並列に生成される。入力フレーム内のこのＭ個のビットの第２バッチの位置は、入力フレーム内のＭ個のビットの第１バッチの位置と比較して、一つずれているものとすることができる。Ｍ個のビットの第２バッチも、同様にしてＭ個のメモリサブバンクに分配される。これが第３バッチ、第４バッチなどにも繰り返される。このようにして、入力フレーム全体がＭ個のメモリサブバンクに分配される。
【００５１】
[0066]ここでは、ＱＫ／Ｍの間隔を空けた出力フレームのＭ個の値が、並列にアクセスされる。具体的には、図に示す「π」ブロックが、Ｍ個のメモリサブバンクにアクセスする。このブロックは、１クロックサイクルなどでＭ個のメモリサブバンクに並列方式で別々にアクセスするＭ個の個別プロセスを利用して、関数ｉ＝π（ｊ）を実施する。これには、出力フレームのＱＫ／Ｍの間隔を空けたＭ個の値が、Ｍ個のメモリサブバンクのうちの異なるサブバンクに位置することが必要である。この要件を、ここではタイルデコーダクラッシュフリー制約条件と呼ぶ。
【００５２】
[0067]言い換えれば、タイルデコーダクラッシュフリー制約条件は、出力フレーム中のＱＫ／Ｍ離れた各ｊ１及びｊ２について、π（ｊ１）を含むメモリサブバンクが、π（ｊ２）を含むメモリサブバンクと等しくないことを必要とする。メモリサブバンクのインデックスは、［ｉ／（ＱＫ／Ｍ）］として表現することができる。したがって、出力フレーム中のＭ個の値の同一グループからの各ｊ１及びｊ２について、ウィンドウデコーダクラッシュフリー制約条件は、以下のように表現することもできる。
［π（ｊ１）／（ＱＫ／Ｍ）］≠［π（ｊ２）／（ＱＫ／Ｍ）］
【００５３】
［ＬＤＰＣのＨ行列の階層型確率伝播制約条件］
[0068]図８は、本発明の一実施形態による、ＬＤＰＣのＨ行列の階層型確率伝播制約条件を示している。この制約条件は、ここでは、Ｈｄ行列の構造に対する制約条件として表現され、前述のようにＨ＝［Ｈｐ｜Ｈｄ］である。当技術分野で知られているように、ＬＤＰＣ符号化済みデータの高速復号を可能にするには、図に示すような方式でＨ行列を制約する必要があることがあり、ハイブリッドアクティベーションスケジュールを使用する必要があることがある。ハイブリッドアクティベーションスケジュールの例は、周知であり、「ターボ復号メッセージパッシング」及び「階層型確率伝播」を含む。ハイブリッドアクティベーションスケジュールに関するこれ以上の詳細は、当業者の知るところであり、ここで更に論じることはしない。
【００５４】
[0069]Ｈ行列に対する階層型確率伝播制約条件について、以下に述べる。具体的には、Ｈｄ行列が、垂直に積み重なった幾つかの部分行列からなるものとして示されている。各部分行列はＺ個の行を有する。本発明の一実施形態によれば、行の数Ｚは、ある部分行列と別の部分行列とで変化してもよい。Ｚの値は、限られた数の所定値から選択することができる。幾つかの例示的なＺの値として、Ｚ＝５４、Ｚ＝８１、Ｚ＝２７等がある。本発明の別の実施形態によれば、行の数Ｚは、全ての部分行列について固定されていてもよい。
【００５５】
[0070]ここで、階層型確率伝播制約条件は、Ｈｄの各部分行列が１以下の列重みを有するべきだというものである。これは、図に示す各部分行列にみることができる。部分行列の各列における０でない値の総数は、１以下である。図示のように、幾つかの列は列重み１を有し、幾つかの列は列重み０を有する。１よりも大きい列重みを有する列はない。
【００５６】
[0071]この制約条件を順守すると、クラッシュ無しにＺ個の行の並列処理が同時に可能になり、別々のプロセスが、ＬＤＰＣ符号の復号に関連するメッセージメモリの異なる部分にアクセスする。当業者には理解されるであろうが、パリティチェック行列ＨのＨｄ部分に対するこのような制約条件は、前述のハイブリッドアクティブ化スケジュールの使用と共に、高速ＬＤＰＣ復号を容易にする。
【００５７】
［双方の制約条件を満たす符号の選択］
[0072]本発明の一実施形態によれば、ＩＲＡインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たすように、ＦＥＣ符号を生成することができる。具体的には、符号が、そのＩＲＡ形式であって、
【数６】
2008537410.tif 000008
として表すことのできる形式で表現される場合には、インタリーブ関数ｉ＝π（ｊ）を表すインタリーバ置換行列Ｐ（サイズＱＫ×ＱＫ）は、適切なインタリーバクラッシュフリー制約条件を満たすように構築されなければならない。さらに、同じ符号が、そのＬＤＰＣ形式であって、
Ｈ＊ｃ＝０
として表すことのできる形式で表現される場合には、パリティチェック行列Ｈは、適切な階層型確率伝播制約条件を満たすように構築されなければならない。
【００５８】
[0073]双方の制約条件を満たすＦＥＣ符号を生成するために、本発明の様々な実施形態により、幾つかの手法を採用することができる。一つの手法は、クラッシュフリーなＩＲＡインタリーバであり、且つ、階層型確率伝播をサポートする等価なパリティチェック行列をも有するＩＲＡインタリーバを見つけることを含む。例えば、クラッシュフリーインタリーバ制約条件を満たすインタリーバ行列Ｊを有する特定のパリティチェック行列Ｈ＝［Ｈｐ｜Ｈｄ］＝［Ｓ｜ＪＰＴ］を見つけることができる。次いで、対応するＨｄ行列を見つけることができる。最後に、Ｈｄ行列を評価して、各部分行列が複数の列からなり各列が１以下の列重みを有する一以上の垂直に積み重なった部分行列を含むようなフォーマットを、Ｈｄ行列が順守するか否かを判定する。
【００５９】
[0074]別の手法は、階層型確率伝播をサポートするパリティチェック行列を見つけて、当該パリティチェック行列を、等価なＩＲＡインタリーバがクラッシュフリーであるように制約することを含む。例えば、特定のパリティチェック行列Ｈ＝［Ｈｐ｜Ｈｄ］＝［Ｓ｜ＪＰＴ］であって、各部分行列が複数の列からなり各列が１以下の列重みを有する一以上の垂直に積み重なった部分行列を含むようなフォーマットを順守するＨｄ行列を有する当該パリティチェック行列Ｈを見つけることができる。次いで、対応するパリティチェック行列Ｈを見つけることができる。最後に、パリティチェック行列Ｈ（より具体的には、そのインタリーバ置換行列コンポーネントＪ）を評価して、クラッシュフリーインタリーバ制約条件を満たすかどうか判定する。
【００６０】
[0075]インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たすＦＥＣ符号が見つかれば、適切なエンコーダ及びデコーダを構築して、周知の技法を使用して符号を実現することができる。エンコーダは、既知のＩＲＡ符号化構造又は既知のＬＤＰＣ符号化構造を使用して構築することができる。同様に、デコーダは、既知のＩＲＡ復号構造又は既知のＬＤＰＣ復号構造を使用して構築することができる。様々なＩＲＡ及びＬＤＰＣエンコーダ、並びに、ＩＲＡ及びＬＤＰＣデコーダの具体的な設計は周知であり、ここで更に論じることはしない。
【００６１】
[0076]重要なことに、インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たす符号は、種々のＩＲＡ又はＬＤＰＣエンコーダとＩＲＡ又はＬＤＰＣデコーダの組合せを使用して、柔軟に実現することができる。先に確立したＩＲＡ−ＬＤＰＣ等価性が、これを可能にする。例えば、このような符号を実現するＩＲＡエンコーダを使用して元々符号化された受信信号を、同じ符号を実現するＩＲＡデコーダを使用して復号することができる。或いは、受信信号を、同じ符号を実現するＬＣＰＣデコーダを使用して復号することもできる。符号がインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たすので、ＩＲＡデコーダ及び等価なＬＤＰＣデコーダの双方を、高速な処理で構築することができる。
【００６２】
[0077]同様に、このような符号を実現するＬＤＰＣエンコーダを使用して元々符号化された受信信号を、同じ符号を実現するＬＤＰＣデコーダを使用して復号することができる。或いは、受信信号を、同じ符号を実現するＩＲＡデコーダを使用して復号することもできる。この場合も同様に、符号がインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たすので、ＩＲＡデコーダ及び等価なＬＤＰＣデコーダの双方を、高速な処理で構築することができる。したがって、双方の制約条件を満たす符号を使用することにより、システムの特定のニーズ又は制限に応じて、ＩＲＡとＬＤＰＣのいずれかのフォーマットの符号化構造及び復号構造を柔軟に選択することができる。
【００６３】
［例示的な符号の説明］
[0078]図９は、レート１／２符号用のＩＲＡインタリーバの例を示している。ここでは、インタリーブ関数πは、長さ５８３２のベクトルとして表現される。インタリーバ関数中では繰返しが存在する。したがって、図に示すように、インタリーバは、規定のオフセットと共に、５８３２個の値のうち最初の５４個によって完全に定義される。このように、５８３２個の値のうち最初の５４個の指定により、インタリーブ関数πの全体を定義することができる。
【００６４】
[0079]図１０は、レート１／２符号用のパリティチェック行列Ｈであって、図９で述べたＩＲＡインタリーバに対応するパリティチェック行列Ｈの例を示している。このレート１／２符号は、本発明の一実施形態により、インタリーバクラッシュフリー制約条件と階層型伝播制約条件の双方を満たすように生成された。パリティチェック行列Ｈは、後述するようにシード行列Ｈｓｅｅｄに基づいて定義される。
【００６５】
[0080]前に論じたように、パリティチェック行列は、区分形式Ｈ＝［Ｈｐ｜Ｈｄ］で書くことができる。すなわち、パリティチェック行列Ｈは、二つの行列ＨｐとＨｄとに区分化することができる。Ｈｐは、すでに述べたように二重対角行列である。Ｈｄは、図に示すように、シード行列Ｈｓｅｅｄ（サイズ９×６）から生成される。具体的には、Ｈ１行列（サイズ９７２×６）が、（Ｈｓｅｅｄ＋１７４４２ｊ）  ｍｏｄ  ５８３２によって定義される１０８個の部分行列を連結することによって最初に形成される。ここで、ｊは部分行列のインデックスである。次に、Ｈ２行列（サイズ９７２×６）が、図に定義するように、Ｈ１行列に基づく関数を適用することによって形成される。ここで、Ｑは、ソース符号が繰返し符号ブロックによって繰り返される回数を表す。図でわかるように、Ｑは変動し、異なるソースビットに対して異なる値をとる。Ｈ２行列が得られれば、これを使用してＨｄ行列が定義される。具体的には、Ｈ２行列は、Ｈｄ行列中の１の列位置を定義する。
【００６６】
[0081]これは、本発明の一実施形態に係る符号であって、インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たす符号の一例に過ぎない。ここで明示的に列挙しない他の符号であって、本発明の実施形態に従って双方の制約条件を満たす符号を生成することが可能である。
【００６７】
［性能］
[0082]図１１は、選択された例示的符号であって、本発明の一実施形態によるインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たす符号の性能を示すブロック誤り率（ＢＬＥＲ）対雑音（Ｅｂ／Ｎ０）チャートである。この特定の例示的符号は、そのＩＲＡフォーマットでは、Ｋ＝９７２及びＮ＝１９４４の、レート１／２符号である。この符号は、Ｊ＝９のＳＰＣを有し、繰返しの５０％はＱ１＝９、繰返しの５０％はＱ２＝３である。したがって、ソース符号が繰り返される平均回数はＱ＝６である。インタリーバサイズは、ＱＫ＝５８３２である。
【００６８】
[0083]ここでは、特定のインタリーバはＤＲＰ（ｄｉｔｈｅｒｅｄ  ｒｅｌａｔｉｖｅ  ｐｒｉｍｅ）インタリーバとして選択されているが、これは当技術分野で周知なので、更に述べることはしない。このインタリーバは、ウィンドウとタイルの双方のデコーダに対して、生成可能でありクラッシュフリーである。
【００６９】
[0084]これらのパラメータを用いてＤＲＰインタリーバの探索を行い、それらに対応するパリティチェック行列Ｈを決定した。対応するパリティチェック行列ＨがＺ＝５４で階層型確率伝播制約条件を満たし、Ｍ＝５４でクラッシュフリーであったものだけを、候補として選択した。これらの候補から、最良の性能を有すると評価されたインタリーバを選択した。図でわかるように、選択された符号は、加法性ガウス白色雑音（ＡＷＧＮ）がある状態で、優れたＢＬＥＲ性能を特徴とする。
【００７０】
[0085]本発明を特定の実施形態から述べたが、本発明の範囲は、説明した特定の実施形態に限定されないことは、当業者には明らかなはずである。したがって、本明細書及び図面は、限定的ではなく例示的な意味で考えるべきである。しかし、特許請求の範囲で述べる本発明のより広範な精神及び範囲から逸脱することなく、追加、除去、代用、及び他の修正を行ってもよいことは明白であろう。
【図面の簡単な説明】
【００７１】
【図１】本発明の一実施形態によるディジタル通信システムを示す図である。
【図２Ａ】本発明の一実施形態に係るイレギュラーリピートアキュムレート（ＩＲＡ）エンコーダとして実現されたエンコーダのブロック図である。
【図２Ｂ】本発明の一実施形態に係るＩＲＡエンコーダのアキュムレータの一実装形態を示す図である。
【図２Ｃ】ＩＲＡエンコーダの図式モデルを提示する図である。
【図３Ａ】本発明の一実施形態に係る、低密度パリティチェック（ＬＤＰＣ）エンコーダとして実現されたエンコーダのブロック図である。
【図３Ｂ】本発明の一実施形態に係るパリティチェック行列Ｈの構造を示す図である。
【図３Ｃ】図３ＡのＬＤＰＣエンコーダ内のブロックの実装形態で使用することのできる回路を示す図である。
【図４】本発明の一実施形態に係り、ＩＲＡエンコーダとＬＤＰＣエンコーダとの間にみられる等価性を示す図である。
【図５】例示的な値と共に示すＩＲＡ符号の行列を提示する図である。
【図６】本発明の一実施形態によるウィンドウデコーダクラッシュフリー制約を示す図である。
【図７】本発明の一実施形態によるタイルデコーダクラッシュフリー制約を示す図である。
【図８】本発明の一実施形態によるＬＤＰＣのＨ行列の階層型確率伝播制約を示す図である。
【図９】レート１／２符号の場合のＩＲＡインタリーバの例を提示する図である。
【図１０】図９で述べたＩＲＡインタリーバに対応する、レート１／２符号の場合のパリティチェック行列Ｈの例を提示する図である。
【図１１】例示的符号であって本発明の一実施形態によるインタリーバクラッシュフリー制約と階層型確率伝播制約との双方を満たす符号の性能を示すブロック誤り率（ＢＬＥＲ）対雑音（Ｅｂ／Ｎ０）チャートである。
【図１】
2008537410.tif 000009
【図２Ａ】
2008537410.tif 000010
【図２Ｂ】
2008537410.tif 000011
【図２Ｃ】
2008537410.tif 000012
【図３Ａ】
2008537410.tif 000013
【図３Ｂ】
2008537410.tif 000014
【図３Ｃ】
2008537410.tif 000015
【図４】
2008537410.tif 000016
【図５】
2008537410.tif 000017
【図６】
2008537410.tif 000018
【図７】
2008537410.tif 000019
【図８】
2008537410.tif 000020
【図９】
2008537410.tif 000021
【図１０】
2008537410.tif 000022
【図１１】
2008537410.tif 000023
【国際調査報告】
2008537410.tif 000024
2008537410.tif 000025
2008537410.tif 000026
2008537410.tif 000027