Crash free irregular repeat accumulate code

申请号 JP2008506770 申请日 2006-04-14 公开(公告)号 JP2008537410A 公开(公告)日 2008-09-11
申请人 トレリスウェア テクノロジーズ インコーポレイテッド; 发明人 ポール, キングスリー グレイ,; キース, マイケル チャグ,;
摘要 データ符号化を実施するための方法、装置、及びシステムを提示する。 これらは、データビットのシーケンスを受け取るステップと、データビットのシーケンスをパリティチェック行列(H行列)に従って符号化して符号化済みビットのシーケンスを生成するステップであって、H行列が第1の行列と第2の行列とに区分化でき、第1の行列が二重対 角 行列であり、第2の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約を満たす、該ステップと、符号化済みビットのシーケンスを出 力 ステップと、を伴う。
【選択図】 図2A
权利要求
  • データ符号化を実施する方法であって、
    データビットのシーケンスを受け取るステップと、
    符号化済みビットのシーケンスを生成するために、前記データビットのシーケンスをパリティチェック行列(H行列)に従って符号化するステップであって、
    前記H行列が第1の行列と第2の行列とに区分化でき、前記第1の行列が二重対角行列であり、前記第2の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、
    前記第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
    該ステップと、
    前記符号化済みビットのシーケンスを出力するステップと、
    を含む方法。
  • 前記符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ(SPC)と、アキュムレータとを備えるイレギュラーリピートアキュムレート(IRA)エンコーダを使用して実施される、請求項1に記載の方法。
  • 前記符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットとを備えるイレギュラーリピートアキュムレート(IRA)エンコーダを使用して実施される、請求項1に記載の方法。
  • 前記符号化するステップは低密度パリティチェック(LDPC)エンコーダを使用して実施される、請求項1に記載の方法。
  • 前記クラッシュフリーインタリーバ制約条件は、クラッシュフリーウィンドウデコーダオペレーションをサポートする、請求項1に記載の方法。
  • 前記クラッシュフリーインタリーバ制約は、クラッシュフリータイルデコーダペレーションをサポートする、請求項1に記載の方法。
  • 前記クラッシュフリーインタリーバ制約はクラッシュフリーウィンドウデコーダ動作及びクラッシュフリータイルデコーダ動作をサポートする、請求項1に記載の方法。
  • 前記符号は、前記クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、前記特定のパリティチェック行列に基づいて対応する第2の行列を計算すること、及び、前記対応する第2の行列が、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される、請求項1に記載の方法。
  • 前記符号は、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第2の行列を見つけること、前記第2の行列に基づいて対応するパリティチェック行列を計算すること、及び、前記パリティチェック行列が前記クラッシュフリーインタリーバ制約条件を満たすか否か評価することによって選択される、請求項1に記載の方法。
  • データ復号を実施する方法であって、
    符号化済みビットのシーケンスを受け取るステップと、
    復号済みビットのシーケンスを生成するために、前記符号化済みビットのシーケンスをパリティチェック行列(H行列)に従って復号するステップであって、
    前記H行列が第1の行列と第2の行列とに区分化でき、前記第1の行列が二重対角行列であり、前記第2の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し 前記第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
    該ステップと、
    前記復号済みビットのシーケンスを出力するステップと、
    を含む方法。
  • データ符号化を実施するための装置であって、
    データビットのシーケンスを受け取るための入力インタフェースと、
    前記入力インタフェースに結合されており、前記データビットのシーケンスをパリティチェック行列(H行列)に従って符号化して符号化済みビットのシーケンスを生成することのできるエンコーダであって、
    前記H行列が第1の行列と第2の行列とに区分化でき、前記第1の行列が二重対角行列であり、前記第2の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、
    前記第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
    該エンコーダと、
    前記エンコーダに結合されており、前記符号化済みビットのシーケンスを出力する出力インタフェースと、
    を備える装置。
  • 前記エンコーダは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ(SPC)と、アキュムレータとを備えるイレギュラーリピートアキュムレート(IRA)エンコーダである、請求項1に記載の装置。
  • 前記エンコーダは、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットとを備えるイレギュラーリピートアキュムレート(IRA)エンコーダである、請求項1に記載の装置。
  • 前記エンコーダは低密度パリティチェック(LDPC)エンコーダである、請求項1に記載の装置。
  • 前記クラッシュフリーインタリーバ制約条件はクラッシュフリーウィンドウデコーダオペレーションをサポートする、請求項1に記載の装置。
  • 前記クラッシュフリーインタリーバ制約条件はクラッシュフリータイルデコーダオペレーションをサポートする、請求項1に記載の装置。
  • 前記クラッシュフリーインタリーバ制約条件はクラッシュフリーウィンドウデコーダオペレーション及びクラッシュフリータイルデコーダオペレーションをサポートする、請求項1に記載の装置。
  • 前記符号は、前記クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、前記特定のパリティチェック行列に基づいて対応する第2の行列を計算すること、及び、前記対応する第2の行列が、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される、請求項1に記載の装置。
  • 前記符号は、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第2の行列を見つけること、前記第2の行列に基づいて対応するパリティチェック行列を計算すること、及び、前記パリティチェック行列が前記クラッシュフリーインタリーバ制約条件を満たすか否かを評価することによって選択される、請求項1に記載の装置。
  • データ復号を実施するための装置であって、
    符号化済みビットのシーケンスを受け取るための入力インタフェースと、
    前記入力インタフェースに結合されており、前記符号化済みビットのシーケンスをパリティチェック行列(H行列)に従って復号して復号済みビットのシーケンスを生成することのできるデコーダであって、
    前記H行列が第1の行列と第2の行列とに区分化でき、前記第1の行列が二重対角行列であり、前記第2の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、
    前記第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
    該デコーダと、
    前記デコーダに結合されており、前記復号済みビットのシーケンスを出力する出力インタフェースと、
    を備える装置。
  • データ符号化を実施するためのシステムであって、
    データビットのシーケンスを受け取る手段と、
    前記データビットのシーケンスをパリティチェック行列(H行列)に従って符号化して符号化済みビットのシーケンスを生成することのできる手段であって、
    前記H行列が第1の行列と第2の行列とに区分化でき、前記第1の行列が二重対角行列であり、前記第2の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、
    前記第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、前記インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、
    該手段と、
    前記符号化済みビットのシーケンスを出力する手段と、
    を備えるシステム。
  • 说明书全文

    関連出願の相互参照

    [0001]本出願は、2005年4月15日に出願された米国特許出願第60/671942号の利益を主張するものであり、この米国特許出願の本出願である。 本出願は、この米国特許出願を、その全体をあらゆる目的のために参照することによって、明示的に援用する。

    発明の背景

    [0002]雑音のあるチャネルを介したデータの伝送は、データストリーム中に誤りを招く可能性がある。 チャネルを介して伝送された後に再構築されたデータシーケンス中の誤りの量を低減するために、このような誤りを訂正する能を提供する符号化技法が開発されてきた。 これは通常、冗長情報を伝送の一部として追加することによって達成される。 ここでは、伝送という用語は、種々のタイプの媒体を介したデータの転送を含むように広く使用する。 この伝送との用語は、有線、無線、衛星、及び他の技術で使用されるものなど、通信媒体を含むことができる。 また、この用語は、磁気、半導体、及び他のタイプのメモリなど、記憶媒体を含むこともできる。

    [0003]前方誤り訂正(FEC)は、誤り訂正能力を提供することによって、このような雑音のあるチャネルを介してデータを送信できるようにする。 概して言えば、FECは、送信機においてソースデータを符号化済みデータへと符号化することを伴う。 送信機は、雑音のあるチャネルを介して符号化済みデータを送信するが、このチャネルは誤りを招く。 受信機において、チャネルから受信されたデータは復号されて、FECが可能とする範囲において誤りが除去され、元のソース信号を再構築した信号が作成される。 使用されるFEC符号化のタイプは、システムの誤り訂正性能に大きく影響する可能性がある。

    [0004]今日知られている最も一般的で強力なFEC符号化技法の幾つかには、イレギュラーリピートアキュムレート(IRA、irregular−repeat−accumulate)符号、及び低密度パリティチェック(LDPC、low density parity check)符号がある。 当技術分野で知られているように、IRA符号は、ソースデータを繰り返すことと、インタリーブ関数又は並べ替え関数を実行することと、累積関数を実行することと、を含む符号化ステップを特徴とする。 また、当技術分野で知られているように、LDPC符号はパリティチェック行列を特徴とし、当該行列は、しばしばH行列と呼ばれ、ソース信号に対して実行される符号化を規定するものである。

    IRA符号又はLDPC符号。 このような厳格さは、システムにとって最も重要な属性に基づいてIRAとLDPCのいずれかのフォーマットによる最適なタイプの符号化構造及び復号構造をシステム設計者が選択できるようにするのではなく、FEC符号設計の仕様が、使用される符号のタイプを指定することになることを意味する。 IRAとLDPCのいずれかとしての符号選択が、システムの特定のニーズ又は制限に応じて変わる可能性があるというシナリオもあり得る。 したがって、システム設計者がIRA符号とLDPC符号との間で柔軟に選択できるようにする技法が、大いに必要とされている。

    発明の簡単な概要

    [0006]本発明は、データ符号化を実施するための方法、装置、及びシステムに関し、これらは、データビットのシーケンスを受け取るステップと、符号化済みビットのシーケンスを生成するようデータビットのシーケンスをパリティチェック行列(H行列)に従って符号化するステップであって、H行列が第1の行列と第2の行列とに区分化でき、第1の行列が二重対行列であり、第2の行列が一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、該ステップと、符号化済みビットのシーケンスを出力するステップと、を伴うものである。

    [0007]符号化するステップは、イレギュラー繰返しエンコーダと、インタリーバと、単一パリティチェックエンコーダ(SPC)と、アキュムレータと、を備えるイレギュラーリピートアキュムレート(IRA)エンコーダを使用して実施することが可能である。 符号化するステップはまた、イレギュラー繰返しエンコーダと、インタリーバと、アキュムレータと、ビットパンクチャユニットと、を備えるイレギュラーリピートアキュムレート(IRA)エンコーダを使用して実施することも可能である。 さらに、符号化するステップは、低密度パリティチェック(LDPC)エンコーダを使用して実施することも可能である。

    [0008]クラッシュフリーインタリーバ制約条件は、クラッシュフリーウィンドウデコーダオペレーション、クラッシュフリータイルデコーダオペレーション、又はクラッシュフリーウィンドウデコーダオペレーションとクラッシュフリータイルデコーダオペレーションの双方をサポートすることができる。

    [0009]一実施形態では、符号は、クラッシュフリーインタリーバ制約条件を満たす特定のパリティチェック行列を見つけること、この特定のパリティチェック行列に基づいて対応する第2の行列を計算すること、及び、対応する第2の行列が、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含むか否かを評価することによって選択される。

    [0010]別の実施形態では、符号は、各部分行列が複数の列からなり各列が1以下の列重みを有するような一以上の垂直に積み重なった部分行列を含む特定の第2の行列を見つけること、第2の行列に基づいて対応するパリティチェック行列を計算すること、及び、パリティチェック行列がクラッシュフリーインタリーバ制約条件を満たすか否かを評価することによって選択される。

    [0011]本発明は、データ復号を実施するための方法、装置、及びシステムに関し、これらは、符号化済みビットのシーケンスを受け取るステップと、復号済みビットのシーケンスを生成するよう、符号化済みビットのシーケンスをパリティチェック行列(H行列)に従って復号するステップであって、H行列が第1の行列と第2の行列とに区分化でき、第1の行列が二重対角行列であり、第2の行列が、一以上の垂直に積み重なった部分行列を含み、各部分行列が複数の列からなり、各列が1以下の列重みを有し、第2の行列がパリティチェック行列とインタリーバ置換行列と繰返しブロック行列との積として表現でき、インタリーバ置換行列がクラッシュフリーインタリーバ制約条件を満たす、該ステップと、復号済みビットのシーケンスを出力するステップと、を伴うものである。

    発明の詳細な説明

    [システムの説明]
    [0027]図1は、本発明の一実施形態によるディジタル通信システム10を示している。 ディジタル通信システム10は、データソース12を有しており、このデータソース12は、閉集合のシンボルで定義されるシンボルを提供する。 例えば、2進閉集合のシンボルが使用される場合、シンボルは{0,1}から選択される。 データソース12は、シンボルの発生源であってよい。 或いは、データソース12は、別のソースからシンボルを受け取る入力インタフェースであってもよい。 データソース12からのシンボルはエンコーダ14に転送され、エンコーダ14は、エンコーダ14の構造に従って、シンボルを符号化済みシンボルに変換する。 次いで、符号化済みシンボルはチャネル16を介して送信されるが、チャネル16は、加法性白色ガウス雑音(AWGN)などの雑音及び歪みを符号化済みシンボルに加えて受信信号を生成する可能性がある。 受信信号に関係する軟情報が、デコーダ18に送られる。 デコーダ18はシンボルに関する軟情報を出力し、この軟情報を閾値化して硬判定復号済みシンボルを生み出すことができる。 復号済みシンボルは、データ出力20に転送される。 データ出力20は、復号済みシンボルの最終宛先であってよい。 或いは、データ出力20は、復号済みシンボルを別の宛先に出力する出力インタフェースであってもよい。

    [0028]図1に示すディジタル通信システムは、基本的な機能の説明となる例を提供する機能ブロック図である。 種々の機能を追加又は省略してもよい。 また、本明細書で論じる革新的な方法の適用は、この特定のブロック図に限定されない。 同様に、以下に論じる他のブロック図も、説明となる例に過ぎず、本明細書で論じる方法の適用可能性を限定するものではない。

    [IRAエンコーダ]
    [0029]図2Aは、本発明の一実施形態によるイレギュラーリピートアキュムレート(IRA)エンコーダとして実現されたエンコーダ14のブロック図である。 IRAエンコーダ14は、繰返し符号ブロック202と、インタリーバ204と、単一パリティチェックブロック206と、アキュムレータ208とを備えている。 ここでは、また後のセクションでは、全てのシンボルは2進シンボル又はビットであるものとして述べる。 これはソースシンボル、符号化済みシンボル、及び復号済みシンボルを含む。 しかしながら、本発明は必ずしも2進シンボルに限定されないことを理解されたい。 このIRA符号のレートはK/Nである。 すなわち、K個のソースビットごとに、N個の符号化済みビットが生成される。

    [0030]IRAエンコーダ14は、組織符号を表す。 これは、符号化済みビットが、組織ビットとパリティビットという二つの部分を含むことを意味する。 組織ビットは、ソースビットと同一である。 パリティビットは、ソースビットに基づいて生成される。 ここでは、組織ビット(これらはソースビットである)を「b」と呼ぶ。 パリティビットを「p」と呼ぶ。

    [0031]図に示すように、IRAエンコーダ14による組織ビット「b」の生成は自明なものである。 ソースビットが単純に転送されて、組織ビットが生成される。 IRAエンコーダ14によるパリティビット「p」の生成について以下に述べる。

    [0032]最初に、ソースビットが繰返し符号ブロック202に提供される。 繰返し符号ブロック202は、各ソースビットを複数回(「Q」)繰り返すことによって形成される出力を生成する。 各ソースビットが繰り返される回数Qは、変動し得る。 Qは、複数の所定値の中から選択することができる。 Qは変動するが、時間が経つにつれて平均値に達し得る。 この図に示す実施形態では、Qの平均値は4である。 本発明の異なる一実施形態によれば、Qは、特定の値に固定され、変化しない。

    [0033]本発明の一実施形態によれば、繰返し符号ブロック202の出力は、インタリーバ204に提供される。 ここで、繰返しブロック202の出力は、並列フォーマットで生成され、直列フォーマットに変換され、次いでインタリーバ204に提供される。 具体的には、Q個の並列ビットのグループごとに、Q個の直列ビットに変換される。 インタリーバ204は、既知のパターンに従ってデータのインタリーブ又は並べ替えを行う。

    [0034]インタリーバ204の出力は、単一パリティチェックブロック206に提供される。 ここで、インタリーバ206の出力は、直列フォーマットで生成され、並列フォーマットに変換され、次いで単一パリティチェックブロック206に提供される。 具体的には、J個の直列ビットのグループごとに、J個の並列ビットに変換される。 単一パリティチェックブロック206は、J個のビットの各組に対して、単一パリティチェックを実施する。 これは、J個のビットに対して排他的論理和演算を実施することによって実現することができる。 本発明の一実施形態によれば、Jは固定数である。 本発明の別の実施形態によれば、Jは時間変動する。

    [0035]最後に、単一パリティチェックブロック206の出力は、アキュムレータ208に提供される。 アキュムレータ208は、1ビット累積関数を実施する。 これは、各現在ビットと前の結果との排他的論理和演算を実施することによって実現することができる。 アキュムレータ208からの出力ビットは、パリティビット「p」として生成される。

    [0036]図2Aには示していないが、パリティチェックブロック206とそれに続くアキュムレータ208の組合せは、本発明の別の実施形態によれば、アキュムレータとそれに続く、Jから1に間引くビットパンクチャ回路で置き換えることができる。

    [0037]図2Bは、本発明の一実施形態によるアキュムレータ208の一実装形態を示している。 ここで、アキュムレータ208は、排他的論理和ゲート212及びDフリップフロップ214を備えている。 アキュムレータ208に到着したビットは、排他的論理和ゲート212への第1の入力に提供される。 アキュムレータ208の前の出力は、Dフリップフロップ214に記憶されており、排他的論理和ゲート212の第2の入力に提供される。 排他的論理和ゲート212の出力は、アキュムレータの現在出力として提供される。 排他的論理和ゲート212の出力はまた、次のビットがアキュムレータ208に到着したときに次の反復を実施するための準備として、Dフリップフロップに記憶される。

    [0038]図2Cは、IRAエンコーダ14の図式モデルを示している。 この図式モデルは、繰返しステージ222と、インタリーバステージ224と、単一パリティチェックステージ226と、アキュムレータステージ228とを備えている。 ソースビットは最初に、繰返しステージ222によって処理される。 ここで、繰返しステージ222は、各ソースビットをQ回繰り返す。 次に、繰り返されたビットはインタリーバステージ224によって処理され、インタリーバステージ224は、インタリーブ関数又は並べ替え関数を実行する。 インタリーブされたビットは、単一パリティチェックステージ226によって、J個のビットのグループで処理される。 次いで、パリティチェックビットは、アキュムレータステージ228によって処理される。 アキュムレータステージ228の出力は、パリティビット「p」である。 この場合もやはり、ソースビットは単純に転送されて、組織ビット「b」が生成される。

    [LDPCエンコーダ]
    [0039]図3Aは、本発明の一実施形態による、低密度パリティチェック(LDPC)エンコーダとして実現されたエンコーダ14のブロック図である。 このLDPC符号のレートはK/Nである。 すなわち、K個のソースビットごとに、N個の符号化済みビットが生成される。

    [0040]LDPCエンコーダ14は、組織符号を表す。 この場合もやはり、これは、符号化済みビットが、組織ビットとパリティビットという二つの部分を含むことを意味する。 組織ビットは、ソースビットと同一である。 パリティビットは、ソースビットに基づいて生成される。 ここでは、組織ビット(これらはソースビットである)を「b」と呼ぶ。 パリティビットを「p」と呼ぶ。

    [0041]図に示すように、LDPCエンコーダ14による組織ビット「b」の生成は自明なものである。 ソースビットが単純に転送されて、組織ビットが生成される。 LDPCエンコーダ14によるパリティビット「p」の生成は、ブロック302を使用して実施される。 このブロック302について、以下に更に詳細に述べる。 ブロック302の動作は、パリティチェック行列Hに従って規定される。 実際、当技術分野で知られているように、パリティチェック行列Hは、LCPCエンコーダ14の動作を完全に定義する。

    [0042]図3Bは、本発明の一実施形態によるパリティチェック行列Hの構造を示している。 ここで、パリティチェック行列Hは、二つの行列H とH とに区分化できるものとして示されている。

    [0043]第1の行列H は、「二重対角」行列である。 ここで、二重対角行列は、「1」の二つの対角線を含む行列とすることができる。 「1」の第1の対角線は、行列H の左上角から右下角に延びる。 「1」の第2の対角線は、「1」の第1の対角線のすぐ下に位置する。

    [0044]第2の行列H は、垂直に積み重なった複数の部分行列


    から構成される行列である。 ここで、各部分行列h

    は、上付き文字「t」で示されるように、転置された形で表現される。 H

    はランダム行列と呼ばれることもある。 H

    は、平均行重みJ及び平均列重みQを有し得る。

    [0045]図3Cは、図3Aのブロック302の実装形態で使用することのできる回路を示している。 前述のように、パリティビット「p」の計算は、パリティチェック行列Hに基づく。 これは、パリティチェック行列Hと符号化済みビット「c」との間に存在する周知の関係を前提とし、この関係は以下のように表現される。
    H*c=0

    [0046]この関係及び以下の二つの式を使用する。

    [0047]パリティビット「p」について、これらがソースビット「b」で表現されるように1組の連立方程式を解くことができる。 実際、H の二重対角構造が与えられれば、パリティビットは容易に得られる。 最初に、第1のパリティビットp を見つけることができる。 その後、後続の各パリティビットp は、前のパリティビットp i−1に基づいて見つけることができる。 これは、以下の二つの加算式で表現される。

    [0048]このような計算は、図3Cに示す単純な構造を利用して実現することができる。 Dフリップフロップ312が、生成されたときに前のパリティビットp を記憶している。 後続のパリティビットp の計算は、前のパリティビットp i−1と、適切な部分行列h及びソースビット「b」に関する総和とに対して実施される排他的論理和演算に基づく。

    [IRA−LDPC等価性]
    [0049]図4は、本発明の一実施形態による、IRAエンコーダとLDPCエンコーダとの間にみられる等価性を示している。 ここで、図2Aに示したIRAエンコーダの様々なコンポーネントを再び提示する。 各コンポーネントは、行列を使用して表されている。 したがって、繰返し符号ブロック202は、行列Tで表されている。 インタリーバ204は、行列Pで表されている。 単一パリティチェックブロック206は、行列Jで表されている。 アキュムレータ208は、行列Dで表されており、これは行列S −1とも表現される。 これらの様々な行列の次元が、図に示されている。

    [0050]具体的には、Sは、サイズ(N−K×N−K)の二重対角アキュムレータ行列である。 Dは、サイズ(N−K×N−K)の下方対角行列(lower-diagonal matrix)である。 Tは、サイズ(QK×K)の繰返し行列である。 Pは、サイズ(QK×QK)のインタリーバ置換行列である。 最後に、Jは、サイズ(N−K×QK)の単一パリティチェックマッピング行列であり、これはJ個の入力ビットの排他的論理和をとって各出力ビットを生成することによって実現することができる。

    [0051]IRAエンコーダの各ステージにおけるデータもまた、行列(より正確にはベクトル)を使用して表されている。 ソースビットは、ベクトルbで表されている。 したがって、繰返し符号ブロック202の出力は、ベクトルTbで表されている。 したがって、インタリーバ204の出力は、ベクトルPTbで表されている。 したがって、単一パリティチェックブロック206の出力は、ベクトルJPTbで表されており、これはベクトルeとも表現される。 最後に、アキュムレータ208の出力は、したがってベクトルDJPTbとして表されており、これはベクトルpとも表現される。 これらの様々なベクトルの次元が、図に示されている。

    [0052]本発明の一実施形態によれば、ここに示すIRAエンコーダは、次のように、等価なLDPCエンコーダとして表現することができる。 行列[S|JPT]は、パリティチェック行列Hと同等と見なすことができ、H=[H |H ]=[S|JPT]と表現される。 パリティビットp及びソースビットbを垂直に積み重ねて符号ビットcを形成できることは既知であり、


    と表現される。 これが与えられれば、IRAエンコーダの行列は、以下の形にすることができる。



    上式は、以下の、LDPCエンコーダのパリティチェック行列の既知の形に直接対応する。


    [H

    |H

    ]*c=0


    H*c=0

    [0053]本発明の一実施形態によれば、次のように、IRA符号を等価なLDPC符号に変換することができる。 ここで、HのH 部分はちょうどSである。 HのH 部分はJPTである。 Pは、インタリーバ置換によって完全に定義される。 Jは、単一パリティチェック幅Jによって完全に定義される。 Tは、繰返し符号の繰返し値Q ,Q ,. . . ,Q によって完全に定義される。

    [0054]J及びTは、行と列の組合せを定義する。 JPは、一度にJ個の行をPからとり、2を法とする加算によってこれらを加算することによって形成することができる。 JPTは、一度にQ 個の列をJPからとり、2を法とする加算によってこれらを加算することによって形成することができる。 Pが正しく設計されていれば、H は行重みJ及び列重みQ を有することになる。

    [0055]本発明の一実施形態によれば、次のように、LDPC符号をIRA符号に変換することができる。 Hが二重対角形式[H |H ]であれば、JPTはちょうどH である。 Pは、J及びTの行演算及び列演算を「反転」することによって決定することができる。 具体的には、JPTの重みJの各行を、重み1のJ個の行に分離して、PTを形成することができる。 また、PTの重みQ の各列を、重み1のQ 個の列に分離して、Pを形成することができる。 Pは一意ではないことに留意されたい。 すなわち、重み1のJ個の行、及び重み1のQ 個の列の順序は、変更することができる。

    [0056]図5は、例示的な値と共に示すIRA符号の行列を示している。 図に示すように、Sは二重対角行列である。 Dは下方対角行列である。 Pは、ビットがどのように置換されることになるかを示すインタリーバ置換行列である。 ここでは、擬似ランダム置換パターンが示されている。 Tは、各ソースビットをQ回繰り返す繰返し行列である。 ここで、Qは、各ソースビットについて異なることのある値である。 Jは、単一パリティチェックマッピング行列であり、これは階段構造を有するものとして示されている。

    [IRAnインタリーバクラッシュフリー制約条件]
    [0057]図6及び7は、二つの異なるタイプのインタリーバクラッシュフリー制約条件を示している。 これに関連してインタリーバの一般的な動作について、以下に簡単に論じる。 インタリーバに入力されたビットのシーケンスは、入力フレームと称するフレームに編成される。 このようなインタリーバの一例は、図2Aに示したインタリーバ204である。 各入力フレームについて、インタリーバは、対応する出力フレームを生成する。 対応する出力フレームは、入力フレーム中にみられるビットと同じだが異なる順序で再構成されたビットを含む。 各入力フレームは、長さQKをもつ。 すなわちQ×Kの長さをもつ。 したがって、各出力フレームもまた、サイズQKをもつ。 各入力フレームに対して同じインタリーブ関数i=π(j)が実施されて、対応する出力フレームが生成される。

    [0058]図に示すように、入力のインデックス「i」は、入力フレーム内のビットの位置を特定するものである。 出力のインデックス「j」は、対応する出力フレーム内のビットの位置を特定するものである。 関数i=π(j)は、入力フレームを出力フレームに変形するのに使用される再構成又はインタリーブを厳密に定義する。

    [0059]非常に単純な例として、フレームサイズQK=8の場合、インデックスiは[0,1,. . . ,7]の範囲にわたり、インデックスjは[0,1,. . . ,7]の範囲にわたる。 インタリーブ関数i=π(j)が、0=π(0)、1=π(1)、2=π(2)、3=π(3)、7=π(4)、6=π(5)、5=π(6)、及び4=π(7)として定義される場合、入力フレーム及び対応する出力フレームは、以下のように生成されることになる。
    入力フレーム=[a,b,c,d,e,f,g,h]
    出力フレーム=[a,b,c,d,h,g,f,e]

    [0060]この非常に単純な例では、フレームサイズQK=8が使用されている。 実際のシステムでは、より大きいフレームサイズを実現してもよい。

    [0061]M個のサブバンクを含むメモリに入力フレームのビットを記憶することによって、高速インタリーブが実施される。 次いで、一度にM個のビットをメモリから読み出すことによって、出力フレームが生成される。 具体的には、各サイクルで、各サブバンクから一つずつ、出力フレームのM個のビットを同時にメモリから読み出すことができる。 一度にM個のビットずつ出力フレームを生成できることは、本質的に、インタリーブプロセスの速度をM倍に上げる。 メモリのサブバンクは、種々の方式で実現することができる。

    [0062]図6は、本発明の一実施形態によるウィンドウデコーダクラッシュフリー制約条件をしている。 これは、インタリーブ関数i=π(j)に対する制約条件であり、インタリーバ置換行列P(サイズQK×QK)によって表される。 ここで、各入力フレームは、サイズMのグループに分割される。 第1グループのM個のビットは、並列に生成され、各ビットが別々のサブバンクに記憶されるように、「0」〜「M−1」のラベルの付いたM個のメモリサブバンクに分配される。 第2グループのM個のビットも、同様にして生成されてM個のメモリサブバンクに分配することができる。 これが第3グループ、第4グループなどにも繰り返される。 このようにして、入力フレーム全体がM個のメモリサブバンクに分配される。

    [0063]ここでは、出力フレームのM個の連続した値が、並列にアクセスされる。 具体的には、図に示す「π」ブロックが、M個のメモリサブバンクにアクセスする。 このブロックは、1クロックサイクルなどでM個のメモリサブバンクに並列方式で別々にアクセスするM個の個別プロセスを利用して、関数i=π(j)を実施する。 これには、出力フレーム中のM個の連続した値が、M個のメモリサブバンクのうちの異なるサブバンクに位置することを要する。 この要件を、ここではウィンドウデコーダクラッシュフリー制約条件と呼ぶ。

    [0064]言い換えれば、ウィンドウデコーダクラッシュフリー制約条件は、出力フレーム中のM個の連続した値の同一グループからの各j 及びj について、π(j )を含むメモリサブバンクが、π(j )を含むメモリサブバンクと等しくないことを必要とする。 メモリサブバンクのインデックスは、i modulo M、又はi%Mとして表現することができる。 したがって、出力フレーム中のM個の値の同一グループからの各j 及びj について、ウィンドウデコーダクラッシュフリー制約条件は、以下のように表現することもできる。
    π(j )%M≠π(j )%M

    [0065]図7は、本発明の一実施形態によるタイルデコーダクラッシュフリー制約条件を示している。 この場合も同様に、この制約条件は、インタリーブ関数i=π(j)に対する制約条件であり、インタリーバ置換行列P(サイズQK×QK)によって表される。 ここでは、各入力フレームは、サイズQK/Mのグループに分割される。 入力フレーム内の相互にQK/Mの間隔を空けたM個のビットの第1バッチが、並列に生成される。 このM個のビットの第1バッチは、「0」〜「M−1」のラベルの付いたM個のメモリサブバンクに分配され、各ビットが別々のサブバンクに記憶される。 次いで、入力フレーム内の相互にQK/Mの間隔を空けたM個のビットの第2バッチが、並列に生成される。 入力フレーム内のこのM個のビットの第2バッチの位置は、入力フレーム内のM個のビットの第1バッチの位置と比較して、一つずれているものとすることができる。 M個のビットの第2バッチも、同様にしてM個のメモリサブバンクに分配される。 これが第3バッチ、第4バッチなどにも繰り返される。 このようにして、入力フレーム全体がM個のメモリサブバンクに分配される。

    [0066]ここでは、QK/Mの間隔を空けた出力フレームのM個の値が、並列にアクセスされる。 具体的には、図に示す「π」ブロックが、M個のメモリサブバンクにアクセスする。 このブロックは、1クロックサイクルなどでM個のメモリサブバンクに並列方式で別々にアクセスするM個の個別プロセスを利用して、関数i=π(j)を実施する。 これには、出力フレームのQK/Mの間隔を空けたM個の値が、M個のメモリサブバンクのうちの異なるサブバンクに位置することが必要である。 この要件を、ここではタイルデコーダクラッシュフリー制約条件と呼ぶ。

    [0067]言い換えれば、タイルデコーダクラッシュフリー制約条件は、出力フレーム中のQK/M離れた各j 及びj について、π(j )を含むメモリサブバンクが、π(j )を含むメモリサブバンクと等しくないことを必要とする。 メモリサブバンクのインデックスは、[i/(QK/M)]として表現することができる。 したがって、出力フレーム中のM個の値の同一グループからの各j 及びj について、ウィンドウデコーダクラッシュフリー制約条件は、以下のように表現することもできる。
    [π(j )/(QK/M)]≠[π(j )/(QK/M)]

    [LDPCのH行列の階層型確率伝播制約条件]
    [0068]図8は、本発明の一実施形態による、LDPCのH行列の階層型確率伝播制約条件を示している。 この制約条件は、ここでは、H 行列の構造に対する制約条件として表現され、前述のようにH=[H |H ]である。 当技術分野で知られているように、LDPC符号化済みデータの高速復号を可能にするには、図に示すような方式でH行列を制約する必要があることがあり、ハイブリッドアクティベーションスケジュールを使用する必要があることがある。 ハイブリッドアクティベーションスケジュールの例は、周知であり、「ターボ復号メッセージパッシング」及び「階層型確率伝播」を含む。 ハイブリッドアクティベーションスケジュールに関するこれ以上の詳細は、当業者の知るところであり、ここで更に論じることはしない。

    [0069]H行列に対する階層型確率伝播制約条件について、以下に述べる。 具体的には、H 行列が、垂直に積み重なった幾つかの部分行列からなるものとして示されている。 各部分行列はZ個の行を有する。 本発明の一実施形態によれば、行の数Zは、ある部分行列と別の部分行列とで変化してもよい。 Zの値は、限られた数の所定値から選択することができる。 幾つかの例示的なZの値として、Z=54、Z=81、Z=27等がある。 本発明の別の実施形態によれば、行の数Zは、全ての部分行列について固定されていてもよい。

    [0070]ここで、階層型確率伝播制約条件は、H の各部分行列が1以下の列重みを有するべきだというものである。 これは、図に示す各部分行列にみることができる。 部分行列の各列における0でない値の総数は、1以下である。 図示のように、幾つかの列は列重み1を有し、幾つかの列は列重み0を有する。 1よりも大きい列重みを有する列はない。

    [0071]この制約条件を順守すると、クラッシュ無しにZ個の行の並列処理が同時に可能になり、別々のプロセスが、LDPC符号の復号に関連するメッセージメモリの異なる部分にアクセスする。 当業者には理解されるであろうが、パリティチェック行列HのH 部分に対するこのような制約条件は、前述のハイブリッドアクティブ化スケジュールの使用と共に、高速LDPC復号を容易にする。

    [双方の制約条件を満たす符号の選択]
    [0072]本発明の一実施形態によれば、IRAインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たすように、FEC符号を生成することができる。 具体的には、符号が、そのIRA形式であって、


    として表すことのできる形式で表現される場合には、インタリーブ関数i=π(j)を表すインタリーバ置換行列P(サイズQK×QK)は、適切なインタリーバクラッシュフリー制約条件を満たすように構築されなければならない。 さらに、同じ符号が、そのLDPC形式であって、


    H*c=0


    として表すことのできる形式で表現される場合には、パリティチェック行列Hは、適切な階層型確率伝播制約条件を満たすように構築されなければならない。

    [0073]双方の制約条件を満たすFEC符号を生成するために、本発明の様々な実施形態により、幾つかの手法を採用することができる。 一つの手法は、クラッシュフリーなIRAインタリーバであり、且つ、階層型確率伝播をサポートする等価なパリティチェック行列をも有するIRAインタリーバを見つけることを含む。 例えば、クラッシュフリーインタリーバ制約条件を満たすインタリーバ行列Jを有する特定のパリティチェック行列H=[H |H ]=[S|JPT]を見つけることができる。 次いで、対応するH 行列を見つけることができる。 最後に、H 行列を評価して、各部分行列が複数の列からなり各列が1以下の列重みを有する一以上の垂直に積み重なった部分行列を含むようなフォーマットを、H 行列が順守するか否かを判定する。

    [0074]別の手法は、階層型確率伝播をサポートするパリティチェック行列を見つけて、当該パリティチェック行列を、等価なIRAインタリーバがクラッシュフリーであるように制約することを含む。 例えば、特定のパリティチェック行列H=[H |H ]=[S|JPT]であって、各部分行列が複数の列からなり各列が1以下の列重みを有する一以上の垂直に積み重なった部分行列を含むようなフォーマットを順守するH 行列を有する当該パリティチェック行列Hを見つけることができる。 次いで、対応するパリティチェック行列Hを見つけることができる。 最後に、パリティチェック行列H(より具体的には、そのインタリーバ置換行列コンポーネントJ)を評価して、クラッシュフリーインタリーバ制約条件を満たすかどうか判定する。

    [0075]インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たすFEC符号が見つかれば、適切なエンコーダ及びデコーダを構築して、周知の技法を使用して符号を実現することができる。 エンコーダは、既知のIRA符号化構造又は既知のLDPC符号化構造を使用して構築することができる。 同様に、デコーダは、既知のIRA復号構造又は既知のLDPC復号構造を使用して構築することができる。 様々なIRA及びLDPCエンコーダ、並びに、IRA及びLDPCデコーダの具体的な設計は周知であり、ここで更に論じることはしない。

    [0076]重要なことに、インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たす符号は、種々のIRA又はLDPCエンコーダとIRA又はLDPCデコーダの組合せを使用して、柔軟に実現することができる。 先に確立したIRA−LDPC等価性が、これを可能にする。 例えば、このような符号を実現するIRAエンコーダを使用して元々符号化された受信信号を、同じ符号を実現するIRAデコーダを使用して復号することができる。 或いは、受信信号を、同じ符号を実現するLCPCデコーダを使用して復号することもできる。 符号がインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たすので、IRAデコーダ及び等価なLDPCデコーダの双方を、高速な処理で構築することができる。

    [0077]同様に、このような符号を実現するLDPCエンコーダを使用して元々符号化された受信信号を、同じ符号を実現するLDPCデコーダを使用して復号することができる。 或いは、受信信号を、同じ符号を実現するIRAデコーダを使用して復号することもできる。 この場合も同様に、符号がインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件との双方を満たすので、IRAデコーダ及び等価なLDPCデコーダの双方を、高速な処理で構築することができる。 したがって、双方の制約条件を満たす符号を使用することにより、システムの特定のニーズ又は制限に応じて、IRAとLDPCのいずれかのフォーマットの符号化構造及び復号構造を柔軟に選択することができる。

    [例示的な符号の説明]
    [0078]図9は、レート1/2符号用のIRAインタリーバの例を示している。 ここでは、インタリーブ関数πは、長さ5832のベクトルとして表現される。 インタリーバ関数中では繰返しが存在する。 したがって、図に示すように、インタリーバは、規定のオフセットと共に、5832個の値のうち最初の54個によって完全に定義される。 このように、5832個の値のうち最初の54個の指定により、インタリーブ関数πの全体を定義することができる。

    [0079]図10は、レート1/2符号用のパリティチェック行列Hであって、図9で述べたIRAインタリーバに対応するパリティチェック行列Hの例を示している。 このレート1/2符号は、本発明の一実施形態により、インタリーバクラッシュフリー制約条件と階層型伝播制約条件の双方を満たすように生成された。 パリティチェック行列Hは、後述するようにシード行列H seedに基づいて定義される。

    [0080]前に論じたように、パリティチェック行列は、区分形式H=[H |H ]で書くことができる。 すなわち、パリティチェック行列Hは、二つの行列H とH とに区分化することができる。 H は、すでに述べたように二重対角行列である。 H は、図に示すように、シード行列H seed (サイズ9×6)から生成される。 具体的には、H 行列(サイズ972×6)が、(H seed +17442j) mod 5832によって定義される108個の部分行列を連結することによって最初に形成される。 ここで、jは部分行列のインデックスである。 次に、H 行列(サイズ972×6)が、図に定義するように、H 行列に基づく関数を適用することによって形成される。 ここで、Qは、ソース符号が繰返し符号ブロックによって繰り返される回数を表す。 図でわかるように、Qは変動し、異なるソースビットに対して異なる値をとる。 H 行列が得られれば、これを使用してH 行列が定義される。 具体的には、H 行列は、H 行列中の1の列位置を定義する。

    [0081]これは、本発明の一実施形態に係る符号であって、インタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たす符号の一例に過ぎない。 ここで明示的に列挙しない他の符号であって、本発明の実施形態に従って双方の制約条件を満たす符号を生成することが可能である。

    [性能]
    [0082]図11は、選択された例示的符号であって、本発明の一実施形態によるインタリーバクラッシュフリー制約条件と階層型確率伝播制約条件の双方を満たす符号の性能を示すブロック誤り率(BLER)対雑音(Eb/N0)チャートである。 この特定の例示的符号は、そのIRAフォーマットでは、K=972及びN=1944の、レート1/2符号である。 この符号は、J=9のSPCを有し、繰返しの50%はQ =9、繰返しの50%はQ =3である。 したがって、ソース符号が繰り返される平均回数はQ=6である。 インタリーバサイズは、QK=5832である。

    [0083]ここでは、特定のインタリーバはDRP(dithered relative prime)インタリーバとして選択されているが、これは当技術分野で周知なので、更に述べることはしない。 このインタリーバは、ウィンドウとタイルの双方のデコーダに対して、生成可能でありクラッシュフリーである。

    [0084]これらのパラメータを用いてDRPインタリーバの探索を行い、それらに対応するパリティチェック行列Hを決定した。 対応するパリティチェック行列HがZ=54で階層型確率伝播制約条件を満たし、M=54でクラッシュフリーであったものだけを、候補として選択した。 これらの候補から、最良の性能を有すると評価されたインタリーバを選択した。 図でわかるように、選択された符号は、加法性ガウス白色雑音(AWGN)がある状態で、優れたBLER性能を特徴とする。

    [0085]本発明を特定の実施形態から述べたが、本発明の範囲は、説明した特定の実施形態に限定されないことは、当業者には明らかなはずである。 したがって、本明細書及び図面は、限定的ではなく例示的な意味で考えるべきである。 しかし、特許請求の範囲で述べる本発明のより広範な精神及び範囲から逸脱することなく、追加、除去、代用、及び他の修正を行ってもよいことは明白であろう。

    本発明の一実施形態によるディジタル通信システムを示す図である。

    本発明の一実施形態に係るイレギュラーリピートアキュムレート(IRA)エンコーダとして実現されたエンコーダのブロック図である。

    本発明の一実施形態に係るIRAエンコーダのアキュムレータの一実装形態を示す図である。

    IRAエンコーダの図式モデルを提示する図である。

    本発明の一実施形態に係る、低密度パリティチェック(LDPC)エンコーダとして実現されたエンコーダのブロック図である。

    本発明の一実施形態に係るパリティチェック行列Hの構造を示す図である。

    図3AのLDPCエンコーダ内のブロックの実装形態で使用することのできる回路を示す図である。

    本発明の一実施形態に係り、IRAエンコーダとLDPCエンコーダとの間にみられる等価性を示す図である。

    例示的な値と共に示すIRA符号の行列を提示する図である。

    本発明の一実施形態によるウィンドウデコーダクラッシュフリー制約を示す図である。

    本発明の一実施形態によるタイルデコーダクラッシュフリー制約を示す図である。

    本発明の一実施形態によるLDPCのH行列の階層型確率伝播制約を示す図である。

    レート1/2符号の場合のIRAインタリーバの例を提示する図である。

    図9で述べたIRAインタリーバに対応する、レート1/2符号の場合のパリティチェック行列Hの例を提示する図である。

    例示的符号であって本発明の一実施形態によるインタリーバクラッシュフリー制約と階層型確率伝播制約との双方を満たす符号の性能を示すブロック誤り率(BLER)対雑音(Eb/N0)チャートである。

    QQ群二维码
    意见反馈