(57)【特許請求の範囲】
【請求項１】
低密度パリティ検査（LDPC）符号を復号するように構成される復号デバイスであって、
第1の符号語を取得するように構成される取得ユニットであって、前記第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である、取得ユニットと、
検査行列のn番目の行に対応するP個の第1の符号要素を取得し、前記P個の第1の符号要素に対応するP個の第1の更新値を取得し、前記P個の第1の更新値に従って、前記P個の第1の符号要素に対応するP個の第2の更新値を得て、前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、前記P個の第2の更新値のa番目の第2の更新値が前記符号要素量子化範囲を超えるとき、前記a番目の第1の符号要素を更新されないままにし、前記P個の第2の更新値のb番目の第2の更新値が前記符号要素量子化範囲を超えないとき、前記b番目の第2の更新値を使用することによって、前記b番目の第1の符号要素を更新し、前述の更新操作に従って、前記検査行列の前記n番目の行に対応するP個の第2の符号要素を得て、前記検査行列の前記n番目の行に対応する前記P個の第2の符号要素に従って、第2の符号語を生成するように構成される処理ユニットであって、前記検査行列は、前記生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、処理ユニットと、
前記第2の符号語を取得するとともに、前記第2の符号語が成功裏に復号されたかどうかを決定するように構成される、決定ユニットとを含み、
前記第2の符号語が成功裏に復号された場合、前記検査行列の別の行に対応する更新を前記処理ユニットにより実行して、前記検査行列の前記別の行に対応する別の第2の符号語を生成し続け、
前記別の第2の符号語が前記検査行列内の連続する行について成功裏に復号された場合、前記連続する行の最後の行に対応する前記別の第2の符号語をマッピングした結果が復号結果である、復号デバイス。
【請求項２】
前記処理ユニットは、記憶モジュールを含み、
前記記憶モジュールは、前記P個の第1の符号要素を記憶するように構成されるとともに、前記P個の第2の更新値を記憶するようにさらに構成され、
前記処理ユニットは、前記P個の第2の更新値の前記a番目の第2の更新値が前記符号要素量子化範囲を超えると決定するとき、前記記憶モジュール内に記憶された前記a番目の第1の符号要素を読み出し、
前記処理ユニットは、前記P個の第2の更新値の前記b番目の第2の更新値が前記符号要素量子化範囲を超えないと決定するとき、前記b番目の第1の符号要素を更新するために、前記記憶モジュール内に記憶された前記b番目の第2の更新値を読み出す、請求項1に記載の復号デバイス。
【請求項３】
前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、
前記P個の第2の更新値の各第2の更新値が前記符号要素量子化範囲を超えるかどうかを順次決定することを含む、請求項1または2に記載の復号デバイス。
【請求項４】
前記取得ユニット、前記処理ユニットおよび前記決定ユニットのそれぞれは回路によって形成される、請求項1乃至3のいずれか1項に記載の復号デバイス。
【請求項５】
低密度パリティ検査（LDPC）符号を復号するように構成される復号デバイスであって、
第1の符号語を取得するように構成される取得ユニットであって、前記第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である、取得ユニットと、
検査行列のn番目の行に対応するP個の第1の符号要素を取得し、前記P個の第1の符号要素に対応するP個の第1の更新値を取得し、前記P個の第1の更新値に従って、前記P個の第1の符号要素に対応するP個の第2の更新値を得て、前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、前記P個の第2の更新値のいずれか1つが前記符号要素量子化範囲を超えるとき、前記P個の第1の符号要素を更新されないままにし、前記P個の第2の更新値の全ての第2の更新値が前記符号要素量子化範囲を超えないとき、前記P個の第2の更新値を使用することによって、前記P個の第1の符号要素を更新し、前述の更新操作に従って、前記検査行列の前記n番目の行に対応するP個の第2の符号要素を得て、前記P個の第2の符号要素に従って、第2の符号語を生成するように構成される処理ユニットであって、前記検査行列は、前記生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、処理ユニットと、
前記第2の符号語を取得するとともに、前記第2の符号語が成功裏に復号されたかどうかを決定するように構成される、決定ユニットとを含む、復号デバイス。
【請求項６】
前記処理ユニットは、記憶モジュールを含み、
前記記憶モジュールは、前記P個の第1の符号要素を記憶するように構成されるとともに、前記P個の第2の更新値を記憶するようにさらに構成され、
前記処理ユニットは、前記P個の第2の更新値のいずれか1つが前記符号要素量子化範囲を超えると決定するとき、前記記憶モジュール内に記憶された前記P個の第1の符号要素を読み出し、
前記処理ユニットは、前記P個の第2の更新値の全ての第2の更新値が前記符号要素量子化範囲を超えないと決定するとき、前記P個の第1の符号要素を更新するために、前記記憶モジュール内に記憶された前記P個の第2の更新値を読み出す、請求項5に記載の復号デバイス。
【請求項７】
前記P個の第2の更新値の全ての第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、
前記P個の第2の更新値の各第2の更新値が前記符号要素量子化範囲を超えるかどうかを順次決定することを含む、請求項5または6に記載の復号デバイス。
【請求項８】
前記取得ユニット、前記処理ユニットおよび前記決定ユニットのそれぞれは回路によって形成される、請求項5乃至7のいずれか1項に記載の復号デバイス。
【請求項９】
低密度パリティ検査（LDPC）符号を復号するために使用される復号方法であって、
第1の符号語を取得するステップであって、前記第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である、ステップと、
検査行列のn番目の行に対応するP個の第1の符号要素を取得し、前記P個の第1の符号要素に対応するP個の第1の更新値を取得し、前記P個の第1の更新値に従って、前記P個の第1の符号要素に対応するP個の第2の更新値を得て、前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、前記P個の第2の更新値のa番目の第2の更新値が前記符号要素量子化範囲を超えるとき、前記a番目の第1の符号要素を更新されないままにし、前記P個の第2の更新値のb番目の第2の更新値が前記符号要素量子化範囲を超えないとき、前記b番目の第2の更新値を使用することによって、前記b番目の第1の符号要素を更新し、前述の更新操作に従って、前記検査行列の前記n番目の行に対応するP個の第2の符号要素を得て、前記検査行列の前記n番目の行に対応する前記P個の第2の符号要素に従って、第2の符号語を生成するステップであって、前記検査行列は、前記生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、ステップと、
前記第2の符号語が成功裏に復号されたかどうかを決定ステップとを含み、
前記第2の符号語が成功裏に復号された場合、前記検査行列の別の行に対応する更新を実行し、
前記検査行列の前記別の行に対応する別の第2の符号語を生成し、
前記別の第2の符号語が前記検査行列内の連続する行について成功裏に復号された場合、前記連続する行の最後の行に対応する前記別の第2の符号語の結果を復号結果になるようにマッピングする、復号方法。
【請求項１０】
前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定する前記ステップは、
前記P個の第2の更新値の各第2の更新値が前記符号要素量子化範囲を超えるかどうかを順次決定するステップを含む、請求項9に記載の復号方法。
【請求項１１】
低密度パリティ検査（LDPC）符号を復号するために使用される復号方法であって、
第1の符号語を取得するステップであって、前記第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である、ステップと、
検査行列のn番目の行に対応するP個の第1の符号要素を取得し、前記P個の第1の符号要素に対応するP個の第1の更新値を取得し、前記P個の第1の更新値に従って、前記P個の第1の符号要素に対応するP個の第2の更新値を得て、前記P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、前記P個の第2の更新値のいずれか1つが前記符号要素量子化範囲を超えるとき、前記P個の第1の符号要素を更新されないままにし、前記P個の第2の更新値の全ての第2の更新値が前記符号要素量子化範囲を超えないとき、前記P個の第2の更新値を使用することによって、前記P個の第1の符号要素を更新し、前述の更新操作に従って、前記検査行列の前記n番目の行に対応するP個の第2の符号要素を得て、前記P個の第2の符号要素に従って、第2の符号語を生成するステップであって、前記検査行列は、前記生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、ステップと、
前記第2の符号語が成功裏に復号されたかどうかを決定するステップとを含む、復号方法。
【請求項１２】
前記P個の第2の更新値の各第2の更新値が前記符号要素量子化範囲を超えるかどうかを順次決定して、前記P個の第2の更新値の全ての第2の更新値が符号要素量子化範囲を超えるかどうかを決定するステップをさらに含む、請求項11に記載の復号方法。
【請求項１３】
LDPC符号符号化デバイスと請求項1乃至4のいずれか1項に記載の前記復号デバイスとを含む信号送信システムであって、
前記LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成し、通信チャネルを介して、前記第1の符号語を前記復号デバイスに送信するように構成される、信号送信システム。
【請求項１４】
LDPC符号符号化デバイスと請求項5乃至8のいずれか1項に記載の前記復号デバイスとを含む信号送信システムであって、
前記LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成し、通信チャネルを介して、前記第1の符号語を前記復号デバイスに送信するように構成される、信号送信システム。
【請求項１５】
LDPC符号符号化デバイス、請求項1乃至4のいずれか1項に記載の前記復号デバイスおよび記憶媒体を含むデータ記憶システムであって、
前記LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成して、前記記憶媒体内に前記第1の符号語を記憶するように構成され、且つ、前記復号デバイスは、前記記憶媒体から前記第1の符号語を取得するように構成される、データ記憶システム。
【請求項１６】
LDPC符号符号化デバイス、請求項5乃至8のいずれか1項に記載の前記復号デバイスおよび記憶媒体を含むデータ記憶システムであって、
前記LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成して、前記記憶媒体内に前記第1の符号語を記憶するように構成され、且つ、前記復号デバイスは、前記記憶媒体から前記第1の符号語を取得するように構成される、データ記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理技術の分野に関し、詳細には、LDPC符号に適用される復号デバイスおよび復号方法、およびLDPC符号を使用する信号送信システムおよびデータ記憶システムに関する。
【背景技術】
【０００２】
低密度パリティ検査（英語のフルネーム: Low Density Parity Check; 英語の省略形: LDPC）符号は、1963年にGallagerによって最初に提案されたとともに、情報ビットおよびパリティビットを含む線形ブロック符号である。LDPC符号がnの符号長を有するとともに、情報ビットのサイズ（長さ）がkであると仮定すると、パリティビットのサイズはn-kであり、且つ、比R=k/nは符号レートと呼ばれる。LDPC符号符号化デバイスは、生成行列（G行列とも呼ばれる）に従って、送信されるべき信号を処理して、符号語を生成する。一般に、この符号語のいくつかの符号要素は、送信されるべき信号を含むとともに、情報ビットとも呼ばれ、且つ、いくつかの符号要素は、検査のために使用されるパリティビットを含む。その後、LDPC符号符号化デバイスは、通信チャネルを介して、符号語をLDPC符号復号デバイスに送信する。次いで、LDPC符号復号デバイスは、符号語を復号し、すなわち、符号語が検査判定を通過するかどうかを検証する。符号語が判定を通過しない場合、これは、符号語が、通信チャネルを介した送信のプロセスにおいてノイズによって干渉されるため、エラーが生じたことを示し、LDPC符号復号デバイスは、更新された符号語が判定を通過することができるまで、検査行列Hを使用することによって、符号語に対して反復更新を実行する必要がある。
【０００３】
記憶コントローラでは、一般に、LDPC符号復号デバイスを実施するために、論理/チップ等が使用される。従って、具体的な実施プロセスでは、復号デバイスによって内部で処理されるデータは量子化され、計算され且つ記憶されるとともに、量子化プロセスは、LDPC符号復号デバイスのエラー補正能力の低下を引き起こす。
【発明の概要】
【課題を解決するための手段】
【０００４】
本願は復号デバイスを提供し、ここで、復号デバイスは、符号要素更新プロセスにおいて、符号要素量子化範囲が超えられた場合に処理を実行することができるとともに、復号デバイスのLDPC符号エラー補正能力を改善することができる。
【０００５】
1つの態様によると、本願の実施形態は復号デバイスを提供し、ここで、復号デバイスは、LDPC符号を復号するように構成され、且つ、第1の符号語、例えば、-9, +7, -12, +4, +7, +10, -11を取得するように構成される取得ユニットであって、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、Mは正の整数であるとともに前の例におけるMは7である、取得ユニットと、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成するように構成される処理ユニットであって、ここで、例えば、nが1に設定されるとき、検査行列の1番目の行上の3つの要素は1であり、従って、Pは3であり、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、処理ユニットと、第2の符号語を取得するとともに、第2の符号語が成功裏に復号されたかどうかを決定するように構成される決定ユニットとを含む。復号されるべき第1の符号語を取得した後、復号デバイスは、第1の符号語に対して、検査行列のn番目の行に対応する処理を実行する必要があり、処理プロセスにおいて第1の符号語における符号要素を更新してよく、更新された符号要素が、符号要素量子化範囲を超えた場合、この更新をやめる必要がある。すなわち、本態様においては、符号要素に対応する更新が、符号要素量子化範囲を超えた場合、符号要素に対応する更新が中止される。
【０００６】
任意で、本態様では、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の第1の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【０００７】
任意で、本態様における復号デバイスは回路によって実施され、且つ、復号デバイスに含まれる取得ユニット、処理ユニットおよび決定ユニットもまた、回路によって実施される。
【０００８】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列のn番目の行に対応するP個の第2の符号要素と第1の符号語の中にあるとともに検査行列のn番目の行とは無関係な別の第1の符号要素とに従って、第2の符号語を生成することを含む。
【０００９】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列の各行に対応するP個の第2の符号要素に従って、第2の符号語を生成することを含む。
【００１０】
可能な設計では、上述の処理ユニットは、記憶モジュールを含み、記憶モジュールは、P個の第1の符号要素を記憶するように構成されるとともに、P個の第2の更新値を記憶するようにさらに構成され、処理ユニットは、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定するとき、記憶モジュール内に記憶されたa番目の第1の符号要素を読み出し、処理ユニットは、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定するとき、b番目の第1の符号要素を更新するために、記憶モジュール内に記憶されたb番目の第2の更新値を読み出す。更新された符号要素が符号要素量子化範囲を超える前述のケースが発生した場合、更新前の符号要素は、この更新をやめるために読み出される必要がある。従って、記憶モジュールは、更新された符号要素が符号要素量子化範囲を超えるかどうかに関係なく、必要とされる値が記憶モジュールから取得されることができることを実施するために、且つ、復号デバイスが、復号プロセスにおいて、第2の更新値が符号要素量子化範囲を超える場合または超えない場合に柔軟に応答することができることを保証するために、P個の第2の更新値およびP個の第1の符号要素を記憶するように構成される。
【００１１】
別の態様によると、本願の実施形態は復号デバイスを提供し、ここで、復号デバイスは、LDPC符号を復号するように構成され、且つ、第1の符号語、例えば、-9, +7, -12, +4, +7, +10, -11を取得するように構成される取得ユニットであって、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、Mは正の整数であるとともに前の例におけるMは7である、取得ユニットと、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成するように構成される処理ユニットであって、ここで、例えば、検査行列の1番目の行上の3つの要素が1であるとき、Pは3であり、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計であり、P個の第2の符号要素は、少なくとも1つのP個の第1の符号要素を含む、処理ユニットと、第2の符号語を取得するとともに、第2の符号語が成功裏に復号されたかどうかを決定するように構成される決定ユニットとを含む。復号されるべき第1の符号語を取得した後、復号デバイスは、符号語に対して、検査行列のn番目の行に対応する処理を実行する必要があるとともに、処理プロセスにおいて第1の符号語における符号要素を更新してよい。すなわち、本態様では、符号要素に対応する更新が符号要素量子化範囲を超える場合、検査行列のこの行に対応するP個の第2の更新値の全てを使用することによる、P個の第1の符号要素に対応する更新が中止される。
【００１２】
任意で、本態様では、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の第1の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【００１３】
任意で、本態様における復号デバイスは回路によって実施され、且つ、復号デバイスに含まれる取得ユニット、処理ユニットおよび決定ユニットもまた、回路によって実施される。
【００１４】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列のn番目の行に対応するP個の第2の符号要素と第1の符号語の中にあるとともに検査行列のn番目の行とは無関係な別の第1の符号要素とに従って、第2の符号語を生成することを含む。
【００１５】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列の各行に対応するP個の第2の符号要素に従って、第2の符号語を生成することを含む。
【００１６】
可能な設計では、上述の処理ユニットは、記憶モジュールを含み、記憶モジュールは、P個の第1の符号要素を記憶するように構成されるとともに、P個の第2の更新値を記憶するようにさらに構成され、処理ユニットは、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定するとき、記憶モジュール内に記憶されたP個の第1の符号要素を読み出し、処理ユニットは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定するとき、P個の第1の符号要素を更新するために、記憶モジュール内に記憶されたP個の第2の更新値を読み出す。更新された符号要素が符号要素量子化範囲を超える前述のケースが発生した場合、更新前のP個の第1の符号要素の全ては、この更新をやめるために読み出される必要がある。従って、記憶モジュールは、更新された符号要素が符号要素量子化範囲を超えるかどうかに関係なく、必要とされる値が記憶モジュールから取得されることができることを実施するために、且つ、復号デバイスが、復号プロセスにおいて、第2の更新値が符号要素量子化範囲を超える場合または超えない場合に柔軟に応答することができることを保証するために、P個の第2の更新値およびP個の第1の符号要素を記憶するように構成される。
【００１７】
別の態様によると、本願の実施形態は復号方法を提供し、ここで、復号方法は、LDPC符号を復号するために使用され、且つ、第1の符号語、例えば、-9, +7, -12, +4, +7, +10, -11を取得するステップであって、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、Mは正の整数であるとともに前の例におけるMは3である、ステップと、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成するステップであって、ここで、例えば、検査行列の1番目の行上の3つの要素が1であるとき、Pは3であり、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、ステップと、第2の符号語が成功裏に復号されたかどうかを決定するステップとを含む。復号プロセスでは、復号されるべき第1の符号語が取得された後、第1の符号語に対して、検査行列のn番目の行に対応する処理が実行される必要があり、第1の符号語における符号要素は処理プロセスにおいて更新されてよく、更新された符号要素が、符号要素量子化範囲を超えた場合、この更新は中止される必要がある。すなわち、本態様においては、符号要素に対応する更新が、符号要素量子化範囲を超えた場合、符号要素に対応する更新が中止される。
【００１８】
任意で、本態様では、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の第1の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【００１９】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列のn番目の行に対応するP個の第2の符号要素と第1の符号語の中にあるとともに検査行列のn番目の行とは無関係な別の第1の符号要素とに従って、第2の符号語を生成することを含む。
【００２０】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列の各行に対応するP個の第2の符号要素に従って、第2の符号語を生成することを含む。
【００２１】
別の態様によると、本願の実施形態は復号方法を提供し、ここで、復号方法は、LDPC符号を復号するために使用され、且つ、第1の符号語、例えば、-9, +7, -12, +4, +7, +10, -11を取得するステップであって、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、Mは正の整数であるとともに前の例におけるMは7である、ステップと、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成するステップであって、ここで、例えば、検査行列の1番目の行上の3つの要素が1であるとき、Pは3であり、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である、ステップと、第2の符号語が成功裏に復号されたかどうかを決定するステップとを含む。復号プロセスでは、復号されるべき第1の符号語が取得された後、符号語に対して、検査行列のn番目の行に対応する処理が実行される必要があり、処理プロセスにおいて第1の符号語における符号要素が更新されてよい。すなわち、本態様では、符号要素に対応する更新が符号要素量子化範囲を超える場合、検査行列のこの行に対応するP個の第2の更新値の全てを使用することによる、P個の第1の符号要素に対応する更新が中止される。
【００２２】
任意で、本態様では、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の第1の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【００２３】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列のn番目の行に対応するP個の第2の符号要素と第1の符号語の中にあるとともに検査行列のn番目の行とは無関係な別の第1の符号要素とに従って、第2の符号語を生成することを含む。
【００２４】
任意で、本態様では、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成することは、検査行列の各行に対応するP個の第2の符号要素に従って、第2の符号語を生成することを含む。
【００２５】
別の態様によると、本願の実施形態は、LDPC符号符号化デバイスと前述の態様のうちのいずれか1つで述べられた復号デバイスとを含む信号送信システムを提供し、ここで、LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成し、通信チャネルを介して、第1の符号語を復号デバイスに送信するように構成される。信号送信システムを使用するプロセスでは、通信チャネルにおいて送信中の送信されるべき信号へのノイズの影響が考慮され、従って、復号デバイスの復号結果が元の送信されるべき信号を含むことを保証するために、LDPC符号符号化デバイスは、送信されるべき信号をLDPC符号に符号化するために使用され、且つ、LDPC符号は復号デバイス側で復号される。この信号送信システムでは、前述の態様のうちのいずれか1つで述べられた復号デバイスが使用され、このことは、LDPC符号を復号することにおける復号デバイスの精度を改善するとともに、信号送信システムで送信された信号の信頼度を改善もまたする。
【００２６】
別の態様によると、本願の実施形態は、LDPC符号符号化デバイス、前述の態様のうちのいずれか1つで述べられた復号デバイスおよび記憶媒体を含むデータ記憶システムを提供し、ここで、LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成して、記憶媒体内に第1の符号語を記憶するように構成され、且つ、復号デバイスは、記憶媒体から第1の符号語を取得するように構成される。データ記憶システムを使用するプロセスでは、記憶されるべき信号が、過度に長い期間記憶媒体に記憶されるときに生じる信号変化、または別の要因によって影響を受ける信号変化が考慮され、従って、復号デバイスの復号結果が元の記憶されるべき信号を含むことを保証するために、LDPC符号符号化デバイスは、記憶されるべき信号をLDPC符号に符号化して、次いで、LDPC符号を記憶媒体内に記憶するために使用され、LDPC符号は復号デバイス側で読み出され且つ復号される。このデータ記憶システムでは、前述の態様のうちのいずれか1つで述べられた復号デバイスが使用され、このことは、LDPC符号を復号することにおける復号デバイスの精度を改善するとともに、データ記憶システムで記憶された信号の信頼度を改善もまたする。
【００２７】
従来技術と比較すると、本願で提供される解決手段における符号語更新プロセスでは、復号デバイスは、更新された符号要素の値が符号要素量子化範囲を超える場合に処理を実行し、このことは、復号デバイスが、符号要素量子化範囲を超える更新された符号要素を直接量子化することから防ぐとともに、復号プロセスにおける復号デバイスのエラー補正能力を改善する。
【図面の簡単な説明】
【００２８】
本発明の実施形態における、または従来技術における技術的解決手段をより明確に説明するために、以下では、実施形態を説明するために必要な添付図面を簡潔に導入する。明らかに、以下の説明における添付図面は、本発明のいくつかの実施形態を示し、且つ、当業者は、創造的努力無しに、これらの添付図面から他の図面をさらに導出することができる。
【００２９】
【図１】図1は、本発明の実施形態に係るLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャの図である。
【図２】図2は、本発明の実施形態に係る別のLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャの図である。
【図３】図3は、本発明のデバイスの実施形態1に係る復号デバイスの複合構造の概略図である。
【図４】図4は、本発明のデバイスの実施形態2に係る復号デバイスの複合構造の概略図である。
【図５】図5は、本発明のデバイスの実施形態3に係る復号デバイスの複合構造の概略図である。
【図６】図6は、本発明のデバイスの実施形態3およびデバイスの実施形態4に係る復号デバイスにおいて適用される検査行列に対応するタナー図である。
【図７】図7は、本発明のデバイスの実施形態4に係る復号デバイスの複合構造の概略図である。
【図８】図8は、本発明の方法の実施形態1に係る復号方法の概略フローチャートである。
【図９】図9は、本発明の方法の実施形態2に係る復号方法の概略フローチャートである。
【図１０】図10は、本発明の方法の実施形態3に係る復号方法の概略フローチャートである。
【図１１】図11は、本発明に係る復号デバイスおよび従来の復号デバイスのエミュレーション結果である。
【発明を実施するための形態】
【００３０】
本発明の実施形態の目的、技術的解決手段および利点をより明確にするために、以下では、本発明の実施形態における添付図面を参照して、本発明の実施形態における技術的解決手段を明確且つ完全に説明する。明らかに、説明される実施形態は、本発明の実施形態の一部であるが全てではない。創造的努力無しに、本発明の実施形態に基づいて、当業者によって得られる全ての他の実施形態は、本発明の保護範囲に包含されるべきである。
【００３１】
本明細書を通して、“低密度パリティ検査符号”（英語のフルネーム: Low Density Parity Check Code）という用語は、線形エラー補正符号の1つのタイプを指すとともに、通常、通信チャネルを介して信号を送信するために、または、通信フィールドにおいて記憶媒体内にデータを記憶するために使用される。
【００３２】
本明細書を通して、“符号語”（英語のフルネーム: Code Word）という用語は、通信チャネルを介して送信されるか、または記憶デバイス内に記憶される、符号要素（英語のフルネーム: Code Element）のグループを含む信号を指す。例えば、LDPC符号の符号語が7の長さを有する場合、符号語は7個の符号要素を含む。
【００３３】
本明細書を通して、“符号要素量子化範囲”という用語はまた、変数ノード（Variable Node）量子化範囲と呼ばれてもよい。LDPC符号を復号するプロセスでは、復号されるべき符号の各符号要素は、1つの変数ノードに対応し、且つ、検査行列の各行は、1つの検査ノード（Check Node）に対応する。詳細については、図6におけるタナー図を参照されたい。符号要素量子化範囲はまた、LDPC符号復号デバイスによって各符号要素に割り当てられるアドレス空間のサイズでもある。例えば、各符号要素に割り当てられたアドレス空間が6ビットである場合、符号要素量子化範囲は、-31から+31である（以下-31および+31を含む）。
【００３４】
本発明の実施形態におけるLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャ
【００３５】
図1は、本発明の実施形態に係る、LDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャを描写する。一般に、送信されるべき信号（実際の情報を搬送し、情報ビットとも呼ばれる）のグループについて、LDPC符号符号化デバイスは、最初に、G行列とも呼ばれる、生成行列に従って、送信されるべき信号のための1つの符号語を生成し、次いで、LDPC符号符号化デバイスは、通信チャネルを介して、符号語をLDPC符号復号デバイスに送信する。一般に、符号語は、通信チャネルを介した送信のプロセスにおいて、ノイズによって影響を受け、従って、通信チャネルを介した送信のプロセスでは、符号語においてエラーが発生し得る。従って、LDPC符号復号デバイスは、通信チャネルを介して送信された符号語について、エラー補正および検査能力を有する。例えば、送信されるべき信号のグループは、1, 0, 1, 1である。送信されるべき信号および生成行列に従って、LDPC符号符号化デバイスによって生成される符号語は、1, 0, 1, 1, 0, 0, 1である。LDPC符号符号化デバイスが、電位信号を使用することによって、符号語をLDPC符号復号デバイスに送信した後、LDPC符号復号デバイスによって受信された電位信号は、-9ボルト, +7ボルト, -12ボルト, +4ボルト, +7ボルト, +10ボルト, -11ボルトである。本発明では、通信チャネルを介してLDPC符号復号デバイスに送信される電位信号は、符号語とも呼ばれ、ここで、正電位は0に対応するとともに、負電位は1に対応する。従って、通信チャネルを介して送信された後、第4の符号要素1は0に対応する+4ボルトになり、すなわち、通信チャネルを介して符号語の第4の符号要素を送信するプロセスにおいてエラーが発生し、且つ、LDPC符号復号デバイスは、正しい符号語1, 0, 1, 1, 0, 0, 1を取得するために、LDPC符号符号化デバイスによって使用される生成行列に対応する検査行列に従って、エラーを補正する必要がある。
【００３６】
図2は、本発明の実施形態に係る、別のLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャの使用シナリオを描写する。前述の例によると、記憶されるべき信号1, 0, 1, 1を受信した後、LDPC符号符号化デバイスは、記憶されるべき信号および生成行列に従って、符号語1, 0, 1, 1, 0, 0, 1を生成して、符号語を記憶媒体内に記憶する。LDPC符号復号デバイスが記憶媒体にアクセスするとき、記憶媒体は通常、電位信号を使用することによってデータを記録する。例えば、LDPC符号復号デバイスによって記憶媒体から取得される電位信号は、-9ボルト, +7ボルト, -12ボルト, +4ボルト, +7ボルト, +10ボルト, -11ボルトである。記憶媒体の老化または別の要因によって、記憶プロセスでは、第4の符号要素においてエラーが発生し、且つ、LDPC符号復号デバイスは、正しい符号語1, 0, 1, 1, 0, 0, 1を取得するために、LDPC符号符号化デバイスによって使用される生成行列に対応する検査行列に従って、エラーを補正する必要がある。
【００３７】
実際、一般には、LDPC符号符号化デバイスおよびLDPC符号復号デバイスは、例えば、特定用途向け集積回路（英語のフルネーム: Application Specific Integrated Circuit; 英語の省略形: ASIC）、フィールド・プログラマブル・ゲート・アレイ（英語のフルネーム: Field Programmable Gate Array; 英語の省略形: FPGA）等の、専用ハードウェアデバイスを使用することによって実行を行う。通信チャネルを介してLDPC符号復号デバイスに送信される電位信号は、通常、浮動小数点数である。加えて、ノイズの存在により、電位信号の値の範囲は決定されることができない。従って、一般に、設計では、LDPC符号復号デバイスは、LDPC符号復号デバイスによって取得される、またはエラー補正プロセスにおいて使用される符号語の電位値を量子化する。例えば、量子化のために6ビットが使用されるとき、値の範囲は-31から+31であり、+31よりも大きい値が+31に設定され、-31よりも小さい値が-31に設定される。実際には複数の量子化方法があり、且つ、量子化結果は必ずしも整数ではないが、整数部および小数部を含んでもまたよい。しかしながら、設計において、割り当てられた量子化された値のビットの数に従って、量子化結果は、量子化範囲とも呼ばれる、固定の値の範囲を有する。一般に、変数ノードと検査ノードのそれぞれが、それらのそれぞれの量子化範囲を有する。本願のこの文書では、符号要素量子化範囲はまた、変数ノード量子化範囲でもある。
【００３８】
デバイスの実施形態1
【００３９】
デバイスの実施形態1は、復号デバイス200を提供し、ここで、復号デバイス200は、LDPC符号を復号するように構成される。図3は、復号デバイス200の複合構造の概略図を示す。デバイス200は、取得ユニット202、処理ユニット204および決定ユニット206を含む。
【００４０】
取得ユニット202は、第1の符号語を取得するように構成され、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である。詳細については、上述のLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャを参照されたい。取得ユニット202によって取得される符号語は、通信チャネルを介して送信されてよく、または、記憶媒体から読み出されてよい。ここでの第1の符号要素は、第1の符号語における任意の符号要素である。
【００４１】
処理ユニット204は、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成するように構成され、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。
【００４２】
決定ユニット206は、決定処理ユニット204によって生成される、第2の符号語を取得するとともに、第2の符号語が成功裏に復号されたかどうかを決定するように構成される。
【００４３】
【数１】
0006426272.tif 000002
【００４４】
本実施形態では、例えば、前述の検査行列は復号デバイスによって使用され、すなわち、Nは3と等しく、且つ、取得ユニット202によって取得される第1の符号語は、-9, +7, -12, +4, +7, +10, -11であり、すなわち、Mは7と等しい。処理ユニット204は、第1の符号語内にあるとともに検査行列の1番目の行に関する符号要素に従って、符号語内にあるとともに検査行列の1番目の行に関する符号要素に対応する更新値を生成し、すなわち、nは1と等しい。実際の操作中、処理ユニット204は、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って処理を行ってよく、または、別の順序に従って処理を行ってよく、ここで、ここでのnの値は、検査行列の行数以下の任意の正の整数であってよいことは留意されるべきである。検査行列の1番目の行に関する符号要素、すなわち、第1の符号要素-9、第2の符号要素+7および第4の符号要素+4を取得した後、ここで、第1の符号要素は、-9, +7および+4を含み、処理ユニット204は、第1の符号語における第1の符号要素に対応する更新値+4、第2の符号要素に対応する更新値-4および第4の符号要素に対応する更新値-７を生成し、すなわち、Pは3と等しく、且つ、第1の更新値は、+4, -4および-7を含む。P個の第1の符号要素の各第1の符号要素に対応する第1の更新値のシンボルは、この第1の符号要素を除いた他の第1の符号要素のシンボルの積であり、且つ、P個の第1の符号要素の各第1の符号要素に対応する第1の更新値の絶対値は、最も小さい絶対値を有する第1の符号要素の絶対値である（この第1の符号要素自身が、最も小さい絶対値を有する第1の符号要素である場合、この第1の符号要素に対応する第1の更新値の絶対値は、2番目に小さい絶対値を有する第1の符号要素の絶対値に設定される）。例えば、第1の符号要素が符号要素A、符号要素Bおよび符号要素Cを含む場合、符号要素Aに対応する更新値のシンボルは、符号要素Bおよび符号要素Cのシンボルの積であり、且つ、符号要素Aに対応する更新値の絶対値は、符号要素Bおよび符号要素Cの絶対値のうちのより小さい絶対値である。
【００４５】
第1の符号語内にあるとともに検査行列の1番目の行に関する符号要素に対応する更新値を取得した後、処理ユニット204は、その対応する第1の符号要素に各第1の更新値を追加して、第2の更新値を取得し、すなわち、第2の更新値は、-5（+4および-9の合計）、+3（+7および-4の合計）および-3（+4および-7の合計）を含む。
【００４６】
第2の更新値を取得した後、処理ユニット204は、各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、処理ユニット204がa番目の第2の更新値が符号要素量子化範囲を超えると決定した場合、処理ユニット204は、a番目の第2の更新値を使用することによって、a番目の第1の符号要素を更新せず、すなわち、a番目の第1の符号要素を更新されないままにし、且つ、処理ユニット204がb番目の第2の更新値が符号要素量子化範囲を超えないと決定した場合、処理ユニット204は、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新する。
【００４７】
前述の例によると、この例において、Pは3と等しいため、aの値は1, 2または3であってよいとともに、第2の更新値-5, +3または-3にそれぞれ対応する。例えば、aは1に設定され、且つ、処理ユニット204は、第2の更新値-5が符号要素量子化範囲を超えるかどうかを決定し、第2の更新値-5が符号要素量子化範囲を超える場合、-9は-5を使用することによって更新されず、すなわち、符号要素-9は変更されないままであり、第2の更新値-5が符号要素量子化範囲を超えない場合、-9は-5を使用することによって更新され、すなわち、符号要素-9は-5に更新される。処理ユニット204は、方法に従って、第1の符号要素-9, +7および+4を順次処理する。例えば、本実施形態における符号要素量子化範囲は-15から+15である（以下-15および+15を含む）。その後、第2の更新値のうちのいずれも符号要素量子化範囲を超えない。処理ユニット204は、検査行列の1番目の行に対応する処理を完了した後、第2の符号要素を生成する。第2の符号要素は、-5, +3および-3を含む。第2の符号要素の各符号要素の生成は、対応する第1の符号要素を維持することであるか（対応する第2の更新値が符号要素量子化範囲を超える場合）、または、対応する第2の更新値を使用することによって、対応する第1の符号要素を更新することである（対応する第2の更新値が符号要素量子化範囲を超えない場合）。
【００４８】
処理ユニット204は、第2の符号要素に従って、第2の符号語を生成する。第2の符号語を生成するための主に2つの方法は、以下のように示される：
【００４９】
方法1: 第2の符号語が、第1の符号語-9, +7, -12, +4, +7, +10, -11内にあるとともに検査行列のn番目（この例では、nは1と等しい）の行に関する符号要素（すなわち、第1の符号要素）を第2の符号要素に更新することによって生成され、且つ、第1の符号語内にあるとともに検査行列のn番目の行とは無関係な第1の符号要素が確保され、すなわち、第2の符号語は、-5, +3, -12, -3, +7, +10, -11である。
【００５０】
方法2: 第1の一時的な符号語が、第1の符号語内にあるとともに検査行列のn番目（この例では、nは1と等しい）の行に関する第1の符号要素を第2の符号要素に更新することによって生成され、且つ、第1の符号語内にあるとともに検査行列の1番目の行とは無関係な第1の符号要素が確保され、すなわち、第1の一時的な符号語は、-5, +3, -12, -3, +7, +10, -11である。
【００５１】
第2の一時的な符号語は、第1の一時的な符号語内にあるとともに検査行列の2番目の行に関する符号要素を更新することによって生成される。第1の符号語内にあるとともに検査行列の2番目の行に関する符号要素-12, +4および+7が最初に取得される。第1の符号語内にあるとともに検査行列の2番目の行に関する符号要素に対応している+4, -7および-4を含む第3の更新値が生成される。+4, -7および-4を、第1の一時的な符号語内にあるとともに検査行列の2番目の行に関する符号要素-12, -3および+7に追加することによって第4の更新値が生成され、ここで、第4の更新値は、-8, -10および+3を含む。-8, -10および+3のうちのいずれか1つが符号要素量子化範囲を超えるかどうかが決定される。第4の更新値のうちのいずれか1つが符号要素量子化範囲を超える場合、第1の一時的な符号語内の対応する符号要素は、第4の更新値を使用することによって更新されない。第4の更新値のうちのいずれも符号要素量子化範囲を超えない場合、第1の一時的な符号語-5, +3, -12, -3, +7, +10, -11は、第2の一時的な符号語-5, +3, -8, -10, +3, +10, -11を取得するために、第4の更新値-8, -10および+3を使用することによって更新される。
【００５２】
第2の符号語は、第2の一時的な符号語内にあるとともに検査行列の3番目の行に関する符号要素を更新することによって生成される。第1の符号語内にあるとともに検査行列の3番目の行に関する符号要素+4, +10および-11が最初に取得される。第1の符号語内にあるとともに検査行列の3番目の行に関する符号要素に対応している-10, -4および+4を含む第5の更新値が生成される。-10, -4および+4を、第2の一時的な符号語内にあるとともに検査行列の3番目の行に関する符号要素-10, +10および-11に追加することによって、-20, +6および-7を含む第6の更新値が生成される。-20, +6および-7のうちのいずれか1つが符号要素量子化範囲を超えるかどうかが決定される。第6の更新値のうちのいずれか1つが符号要素量子化範囲を超える場合、第2の一時的な符号語内の対応する符号要素は、第6の更新値を使用することによって更新されない。第6の更新値のうちのいずれも符号要素量子化範囲を超えない場合、第2の一時的な符号語-5, +3, -8, -10, +3, +10, -11は、第6の更新値-20, +6および-7を使用することによって更新される。-20が符号要素量子化範囲を超えるため、第2の符号語-5, +3, -8, -10, +3, +6, -7が、この例において取得される。
【００５３】
方法2では、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って、第1の符号語を処理することによって第2の符号語が取得されるが、方法2の実際の使用プロセスにおいては、第1の符号語は、検査行列の別の順序に従って処理されてよいことは留意されるべきである。例えば、第1の一時的な符号語を得るために、1番目の行が最初に処理されてよく、次いで、第2の一時的な符号語を得るために、3番目の行が処理され、次いで、第2の符号語を得るために、2番目の行が処理される。複数の処理順序があってよい。第1の符号語を使用することによって、第2の符号語を生成するプロセスにおいて、検査行列の各行は、対応して処理され、且つ、検査行列の各行に対応する処理が一度だけ実行されることのみが必要とされる。
【００５４】
任意で、処理ユニット204は、P個の第1の符号要素を記憶するように構成される記憶モジュールを含むとともに、P個の第2の更新値を記憶するようにさらに構成される。P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定するとき、処理ユニット204は、記憶モジュール内に記憶されたa番目の第1の符号要素を読み出し、すなわち、第2の更新値が符号要素量子化範囲を超える場合、処理ユニット204は、第2の更新値を使用することによって、対応する第1の符号要素を更新せず、従って、第2の符号要素を取得するために、記憶モジュールから、第2の更新値に対応する第1の符号要素を読み出す。P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定するとき、処理ユニット204は、b番目の第1の符号要素を更新するために、記憶モジュール内に記憶されたb番目の第2の更新値を読み出し、すなわち、第2の更新値が符号要素量子化範囲を超えない場合、処理ユニット204は、第2の更新値を使用することによって、対応する第1の符号要素を更新し、従って、第2の符号要素を取得するために、記憶モジュールから、第2の更新値を読み出すとともに、対応する第1の符号要素を置換する。
【００５５】
前述の例によると、記憶モジュールは、第1の符号要素-9, +7および+4を記憶するとともに、記憶モジュールは、第2の更新値-5, +3および-3をさらに記憶する。処理ユニット204が、第2の更新値が符号要素量子化範囲を超えると決定する場合、処理ユニット204は、対応する第1の符号要素を読み出し、処理ユニット204が、第2の更新値が符号要素量子化範囲を超えないと決定する場合、処理ユニット204は、対応する第2の更新値を読み出す。処理ユニット204が、方法1を使用することによって、第2の符号語を生成する例では、処理ユニット204は、第2の更新値-5, +3および-3のうちのいずれも符号要素量子化範囲を超えないと決定し、従って、第2の更新値を読み出して、第1の符号語を更新するとともに、第2の符号語-5, +3, -12, -3, +7, +10, -11を生成する。
【００５６】
処理ユニット204は、第2の符号語を決定ユニット206に送信し、ここで、決定ユニット206は、第2の符号語が成功裏に復号されたかどうかを決定するように構成される。
【００５７】
処理ユニット204が、上述の方法1を使用することによって、第2の符号語を生成する場合、決定ユニット206が、第2の符号語-5, +3, -12, -3, +7, +10, -11が成功裏に復号されたと決定する場合、復号デバイス200は、検査行列の別の行に対応する更新を実行して、検査行列の行に対応する第2の符号語を生成し続ける。ここでは、2番目の行が例として使用される。検査行列の2番目の行に対応する更新が完了した後、取得された第2の符号語は、-5, +3, -8, -10, +3, +10, -11である。決定ユニット206が、第2の符号語-5, +3, -8, -10, +3, +10, -11が成功裏に復号されたと決定する場合、復号デバイス200は、検査行列の別の行に対応する更新を実行して、検査行列の行に対応する第2の符号語を生成し続ける。ここでは、3番目の行が例として使用される。検査行列の3番目の行に対応する更新が完了した後、取得された第2の符号語は、-5, +3, -8, -10, +3, +6, -7である。決定ユニット206が、第2の符号語-5, +3, -8, -10, +3, +6, -7が成功裏に復号されたと決定する場合、復号デバイス200は、復号結果として、-5, +3, -8, -10, +3, +6, -7をマッピングした結果1, 0, 1, 1, 0, 0, 1を使用する。一般に、処理ユニット204が、上述の方法1を使用することによって、第2の符号語を生成する場合、復号デバイス200は、第2の符号語が検査行列内の連続する行の数に対応する判定を通過することができると決定する必要があり、次いで、検査行列の最後の行に対応する第2の符号語をマッピングした結果が、復号結果である。例えば、復号デバイス200は、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って処理を実行するとともに、検査行列の3つの連続する行の判定を通過する必要がある。検査行列の2番目の行によって出力される第2の符号語の判定が失敗し、3番目の行によって出力される第2の符号語は成功裏に復号され、且つ、更新の次の回における1番目の行および2番目の行の両方によって出力される第2の符号語は復号において成功した場合、更新の次の回における、検査行列の2番目の行に対応する第2の符号語をマッピングした結果が、復号結果である。更新の各回は、検査行列の各行に対応する処理を含み、且つ、更新の回において、検査行列の行に対応する処理の前に、更新の前の回において、検査行列の行を処理するプロセスにおける、行に対応する符号要素の励起が取り除かれる必要がある。
【００５８】
処理ユニット204が、上述の方法2を使用することによって、第2の符号語を生成する場合、決定ユニット206が、第2の符号語-5, +3, -8, -10, +3, +6, -7が成功裏に復号されたと決定する場合、第2の符号語をマッピングした結果1, 0, 1, 1, 0, 0, 1が復号結果である。第2の符号語が復号されることを失敗する場合、更新の次の回が実行される。
【００５９】
本実施形態は復号デバイスを提供する。復号デバイスは、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理を実行し、このことは、復号デバイスが、量子化範囲を超える更新された符号語を直接量子化することから防ぐとともに、LDPC符号復号プロセスにおける、復号デバイスのエラー補正能力を改善する。
【００６０】
デバイスの実施形態2
【００６１】
デバイスの実施形態2は、復号デバイス400を提供し、ここで、復号デバイス400は、LDPC符号を復号するように構成される。図4は、復号デバイス400の複合構造の概略図を示す。デバイス400は、取得ユニット402、処理ユニット404および決定ユニット406を含む。
【００６２】
取得ユニット402は、第1の符号語を取得するように構成され、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともにM個の第1の符号要素を含み、且つ、Mは正の整数である。詳細については、上述のLDPC符号符号化アーキテクチャおよびLDPC符号復号アーキテクチャを参照されたい。取得ユニット402によって取得される符号語は、通信チャネルを介して送信されてよく、または、記憶媒体から読み出されてよい。ここでの第1の符号要素は、第1の符号語における任意の符号要素である。
【００６３】
処理ユニット404は、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成するように構成され、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。
【００６４】
決定ユニット406は、決定処理ユニット404によって生成される、第2の符号語を取得するとともに、第2の符号語が成功裏に復号されたかどうかを決定するように構成される。
【００６５】
【数２】
0006426272.tif 000003
【００６６】
本実施形態では、例えば、前述の検査行列は復号デバイスによって使用され、すなわち、Nは3と等しく、且つ、取得ユニット402によって取得される第1の符号語は、-9, +7, -12, +4, +7, +10, -11であり、すなわち、Mは7と等しい。処理ユニット404は、第1の符号語内にあるとともに検査行列の1番目の行に関する符号要素に従って、符号語内にあるとともに検査行列の1番目の行に関する符号要素に対応する更新値を生成し、すなわち、nは1と等しい。実際の操作中、処理ユニット404は、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って処理を行ってよく、または、別の順序に従って処理を行ってよく、ここで、ここでのnの値は、検査行列の行数以下の任意の正の整数であってよいことは留意されるべきである。検査行列の1番目の行に関する符号要素、すなわち、第1の符号要素-9、第2の符号要素+7および第4の符号要素+4を取得した後、ここで、第1の符号要素は、-9, +7および+4を含み、処理ユニット404は、第1の符号語における第1の符号要素に対応する更新値+4、第2の符号要素に対応する更新値-4および第4の符号要素に対応する更新値-７を生成し、すなわち、Pは3と等しく、且つ、第1の更新値は、+4, -4および-7を含む。P個の第1の符号要素の各第1の符号要素に対応する第1の更新値のシンボルは、この第1の符号要素を除いた他の第1の符号要素のシンボルの積であり、且つ、P個の第1の符号要素の各第1の符号要素に対応する第1の更新値の絶対値は、最も小さい絶対値を有する第1の符号要素の絶対値である（この第1の符号要素自身が、最も小さい絶対値を有する第1の符号要素である場合、この第1の符号要素に対応する第1の更新値の絶対値は、2番目に小さい絶対値を有する第1の符号要素の絶対値に設定される）。例えば、第1の符号要素が符号要素A、符号要素Bおよび符号要素Cを含む場合、符号要素Aに対応する更新値のシンボルは、符号要素Bおよび符号要素Cのシンボルの積であり、且つ、符号要素Aに対応する更新値の絶対値は、符号要素Bおよび符号要素Cの絶対値のうちのより小さい絶対値である。
【００６７】
第1の符号語内にあるとともに検査行列の1番目の行に関する符号要素に対応する更新値を取得した後、処理ユニット404は、その対応する第1の符号要素に各第1の更新値を追加して、第2の更新値を取得し、すなわち、第2の更新値は、-5（+4および-9の合計）、+3（+7および-4の合計）および-3（+4および-7の合計）を含む。
【００６８】
第2の更新値を取得した後、処理ユニット404は、各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、処理ユニット404がa番目の第2の更新値が符号要素量子化範囲を超えると決定した場合、処理ユニット404は、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新せず、すなわち、P個の第1の符号要素を更新されないままにし、且つ、処理ユニット404がP個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定した場合、処理ユニット404は、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新する。
【００６９】
前述の例によると、この例において、Pは3と等しいため、aの値は1, 2または3であってよいとともに、第2の更新値-5, +3または-3にそれぞれ対応する。例えば、aは1に設定され、且つ、処理ユニット404は、第2の更新値-5が符号要素量子化範囲を超えるかどうかを決定し、第2の更新値-5が符号要素量子化範囲を超える場合、-9は-5を使用することによって更新されず、-4は+3を使用することによって更新されず、-7は-3を使用することによって更新されず、同様に、別の第2の更新値が符号要素量子化範囲を超える場合、第2の更新値のうちのいずれか1つを使用することによる、第1の符号要素を更新することは中止され、第2の更新値-5, +3および-3のうちのいずれも符号要素量子化範囲を超えない場合、-9は-5を使用することによって更新され、-4は+3を使用することによって更新され、-7は-3を使用することによって更新される。例えば、本実施形態における符号要素量子化範囲は-15から+15である。その後、第2の更新値のうちのいずれも符号要素量子化範囲を超えない。処理ユニット404は、検査行列の1番目の行に対応する処理を完了した後、第2の符号要素を生成する。第2の符号要素は、-5, +3および-3を含む。第2の符号要素の各符号要素の生成は、対応する第1の符号要素を維持することであるか（第2の更新値のうちのいずれか1つが符号要素量子化範囲を超える場合）、または、対応する第2の更新値を使用することによって、対応する第1の符号要素を更新することである（第2の更新値のうちのいずれも符号要素量子化範囲を超えない場合）。
【００７０】
処理ユニット404は、第2の符号要素に従って、第2の符号語を生成する。第2の符号語を生成するための主に2つの方法は、以下のように示される：
【００７１】
方法1: 第2の符号語が、第1の符号語-9, +7, -12, +4, +7, +10, -11内にあるとともに検査行列のn番目（この例では、nは1と等しい）の行に関する符号要素（すなわち、第1の符号要素）を第2の符号要素に更新することによって生成され、且つ、第1の符号語内にあるとともに検査行列のn番目の行とは無関係な第1の符号要素が確保され、すなわち、第2の符号語は、-5, +3, -12, -3, +7, +10, -11である。
【００７２】
方法2: 第1の一時的な符号語が、第1の符号語内にあるとともに検査行列のn番目（この例では、nは1と等しい）の行に関する第1の符号要素を第2の符号要素に更新することによって生成され、且つ、第1の符号語内にあるとともに検査行列の1番目の行とは無関係な第1の符号要素が確保され、すなわち、第1の一時的な符号語は、-5, +3, -12, -3, +7, +10, -11である。
【００７３】
第2の一時的な符号語は、第1の一時的な符号語内にあるとともに検査行列の2番目の行に関する符号要素を更新することによって生成される。第1の符号語内にあるとともに検査行列の2番目の行に関する符号要素-12, +4および+7が最初に取得される。第1の符号語内にあるとともに検査行列の2番目の行に関する符号要素に対応している+4, -7および-4を含む第3の更新値が生成される。+4, -7および-4を、第1の一時的な符号語内にあるとともに検査行列の2番目の行に関する符号要素-12, -3および+7に追加することによって第4の更新値が生成され、ここで、第4の更新値は、-8, -10および+3を含む。-8, -10および+3のうちのいずれか1つが符号要素量子化範囲を超えるかどうかが決定される。第4の更新値のうちのいずれか1つが符号要素量子化範囲を超える場合、第1の一時的な符号語は、第4の更新値を使用することによって更新されない。第4の更新値のうちのいずれも符号要素量子化範囲を超えない場合、第1の一時的な符号語-5, +3, -12, -3, +7, +10, -11は、第2の一時的な符号語-5, +3, -8, -10, +3, +10, -11を取得するために、第4の更新値-8, -10および+3を使用することによって更新される。
【００７４】
第2の符号語は、第2の一時的な符号語内にあるとともに検査行列の3番目の行に関する符号要素を更新することによって生成される。第1の符号語内にあるとともに検査行列の3番目の行に関する符号要素+4, +10および-11が最初に取得される。第1の符号語内にあるとともに検査行列の3番目の行に関する符号要素に対応している-10, -4および+4を含む第5の更新値が生成される。-10, -4および+4を、第2の一時的な符号語内にあるとともに検査行列の3番目の行に関する符号要素-10, +10および-11に追加することによって、-20, +6および-7を含む第6の更新値が生成される。-20, +6および-7のうちのいずれか1つが符号要素量子化範囲を超えるかどうかが決定される。第6の更新値のうちのいずれか1つが符号要素量子化範囲を超える場合、第2の一時的な符号語は、第6の更新値を使用することによって更新されない。第6の更新値のうちのいずれも符号要素量子化範囲を超えない場合、第2の一時的な符号語-5, +3, -8, -10, +3, +10, -11は、第6の更新値-20, +6および-7を使用することによって更新される。第6の更新値-20が符号要素量子化範囲を超えるため、第2の符号語-5, +3, -8, -10, +3, +10, -11が、この例において取得される。
【００７５】
方法2では、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って、第1の符号語を処理することによって第2の符号語が取得されるが、方法2の実際の使用プロセスにおいては、第1の符号語は、検査行列の別の順序に従って処理されてよいことは留意されるべきである。例えば、第1の一時的な符号語を得るために、1番目の行が最初に処理されてよく、次いで、第2の一時的な符号語を得るために、3番目の行が処理され、次いで、第2の符号語を得るために、2番目の行が処理される。複数の処理順序があってよい。第1の符号語を使用することによって、第2の符号語を生成するプロセスにおいて、検査行列の各行は、対応して処理され、且つ、検査行列の各行に対応する処理が一度だけ実行されることのみが必要とされる。
【００７６】
任意で、処理ユニット404は、P個の第1の符号要素を記憶するように構成される記憶モジュールを含むとともに、P個の第2の更新値を記憶するようにさらに構成される。P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定するとき、処理ユニット404は、記憶モジュール内に記憶されたP個の第1の符号要素を読み出し、すなわち、第2の更新値が符号要素量子化範囲を超える場合、処理ユニット404は、第2の更新値を使用することによって、第1の符号要素を更新せず、従って、第2の符号要素を取得するために、記憶モジュールから、P個の第1の符号要素を読み出す。P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定するとき、処理ユニット404は、記憶モジュール内に記憶されたP個の第2の更新値を読み出し、すなわち、第2の更新値のうちのいずれも符号要素量子化範囲を超えない場合、処理ユニット404は、P個の第2の更新値を使用することによって、対応するP個の第1の符号要素を更新し、従って、第2の符号要素を取得するために、記憶モジュールから、P個の第2の更新値を読み出すとともに、P個の第1の符号要素を置換する。
【００７７】
前述の例によると、記憶モジュールは、第1の符号要素-9, +7および+4を記憶するとともに、記憶モジュールは、第2の更新値-5, +3および-3をさらに記憶する。処理ユニット404が、第2の更新値が符号要素量子化範囲を超えると決定する場合、処理ユニット404は、第1の符号要素-9, +7および+4を読み出すとともに、第2の更新値のうちのいずれか1つを使用することによって、第1の符号要素を更新することをやめる。処理ユニット404が、第2の更新値のうちのいずれも符号要素量子化範囲を超えないと決定する場合、処理ユニット404は、P個の第2の更新値を読み出す。例えば、処理ユニット404は、方法1を使用することによって、第2の符号語を生成する。処理ユニット404は、第2の更新値-5, +3および-3のうちのいずれも符号要素量子化範囲を超えないと決定し、処理ユニット404は、第2の更新値-5, +3および-3を読み出して、第1の符号語を更新するとともに、第2の符号語-5, +3, -12, -3, +7, +10, -11を生成する。
【００７８】
処理ユニット404は、第2の符号語を決定ユニット406に送信し、ここで、決定ユニット406は、第2の符号語が成功裏に復号されたかどうかを決定するように構成される。
【００７９】
処理ユニット404が、上述の方法1を使用することによって、第2の符号語を生成する場合、決定ユニット406が、第2の符号語-5, +3, -12, -3, +7, +10, -11が成功裏に復号されたと決定する場合、復号デバイス400は、検査行列の別の行に対応する更新を実行して、検査行列の行に対応する第2の符号語を生成し続ける。ここでは、2番目の行が例として使用される。検査行列の2番目の行に対応する更新が完了した後、取得された第2の符号語は、-5, +3, -8, -10, +3, +10, -11である。決定ユニット406が、第2の符号語-5, +3, -8, -10, +3, +10, -11が成功裏に復号されたと決定する場合、復号デバイス400は、検査行列の別の行に対応する更新を実行して、検査行列の行に対応する第2の符号語を生成し続ける。ここでは、3番目の行が例として使用される。検査行列の3番目の行に対応する更新が完了した後、符号要素-10に対応する更新値は符号要素量子化範囲を超えるため、検査行列の3番目の行に対応する更新は無効であり、且つ、第2の符号語-5, +3, -8, -10, +3, +10, -11が取得される。決定ユニット406が、第2の符号語-5, +3, -8, -10, +3, +10, -11が成功裏に復号されたと決定する場合、復号デバイス400は、復号結果として、-5, +3, -8, -10, +3, +10, -11をマッピングした結果1, 0, 1, 1, 0, 0, 1を使用する。一般に、処理ユニット404が、上述の方法1を使用することによって、第2の符号語を生成する場合、復号デバイス400は、第2の符号語が検査行列内の連続する行の数に対応する判定を通過することができると決定する必要があり、次いで、検査行列の最後の行に対応する第2の符号語をマッピングした結果が、復号結果である。例えば、復号デバイス400は、検査行列の1番目の行から、2番目の行、3番目の行までの順序に従って処理を実行するとともに、検査行列の3つの連続する行の判定を通過する必要がある。検査行列の2番目の行によって出力される第2の符号語の判定が失敗し、3番目の行によって出力される第2の符号語は成功裏に復号され、且つ、更新の次の回における1番目の行および2番目の行の両方によって出力される第2の符号語は復号において成功した場合、更新の次の回における、検査行列の2番目の行に対応する第2の符号語をマッピングした結果が、復号結果である。更新の各回は、検査行列の各行に対応する処理を含み、且つ、更新の回において、検査行列の行に対応する処理の前に、更新の前の回において、検査行列の行を処理するプロセスにおける、行に対応する符号要素の励起が取り除かれる必要がある。
【００８０】
処理ユニット404が、上述の方法2を使用することによって、第2の符号語を生成する場合、決定ユニット406が、第2の符号語-5, +3, -8, -10, +3, +10, -11が成功裏に復号されたと決定する場合、第2の符号語をマッピングした結果1, 0, 1, 1, 0, 0, 1が復号結果である。第2の符号語が復号されることを失敗する場合、更新の次の回が実行される。
【００８１】
本実施形態は復号デバイスを提供する。復号デバイスは、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理を実行し、このことは、復号デバイスが、量子化範囲を超える更新された符号語を直接量子化することから防ぐとともに、LDPC符号復号プロセスにおける、復号デバイスのエラー補正能力を改善する。
【００８２】
デバイスの実施形態3
【００８３】
デバイスの実施形態3は、復号デバイス600を提供する。図5は、復号デバイス600の複合構造の概略図を示す。本実施形態では、デバイスの実施形態1における処理ユニット204の内部複合構造が、処理ユニット604として詳述される。本実施形態における処理ユニット604の全体の機能は、デバイスの実施形態1における処理ユニット204の全体の機能と同じである。
【００８４】
以下では、復号デバイス600によって取得される符号語が-9, +7, -12, +4, +7, +10, -11であり、符号要素量子化範囲が-15から+15であり、以下の検査行列が復号デバイス600によって使用される例を使用することによって、デバイスの実施形態3において提供される復号デバイス600の操作原理を詳細に説明する。
【００８５】
【数３】
0006426272.tif 000004
【００８６】
符号語-9, +7, -12, +4, +7, +10, -11を取得した後、取得ユニット602は、最初に、符号語を決定ユニット606に送信し、且つ、決定ユニット606は、符号語における負の値を1にマッピングするとともに正の値を0にマッピングして、マッピングされた符号語1, 0, 1, 0, 0, 0, 1を取得し、検査式に従って、マッピングされた符号語における各符号要素に対して、合計モジュロ2または加算モジュロ2操作とも呼ばれる、排他的OR操作を実行する。検査行列の1番目の行に対する操作によると、(1+0+0) mod (2)=1であり、且つ、符号語は復号されることを失敗する。符号語が処理ユニット604によって処理される前に、復号デバイス600によって取得される符号語が、決定ユニット606の判定を通過する場合、符号語は次の処理を必要とせず、且つ、復号デバイス600は、符号語のマッピング結果を復号結果として直接使用する。決定ユニット606が符号語が成功裏に復号されたと決定する前に、符号語1, 0, 1, 0, 0, 0, 1は、検査行列の3つの行全てに対応する検査を通過する必要がある。
【００８７】
変数ノード処理ユニット6042は、符号語-9, +7, -12, +4, +7, +10, -11を受信して、-9, +7, -12, +4, +7, +10, -11を記憶モジュール6043に記憶する。第1、第2および第4の変数ノードが検査行列の1番目の行に関し、すなわち、3つの符号要素-9, +7および+4が、検査行列の1番目の行に関することが、検査行列の1番目の行からわかる。変数ノード処理ユニット6042は、-9, +7および+4を検査ノード処理ユニット6044に送信する。実際には、処理は、検査行列の任意の行から開始してよい。検査行列の対応する行の更新または検査行列の全ての行に対応する更新が既に実行されている場合、変数ノード処理ユニット6042は、更新のこの回を実行する前に、符号語に対する更新値の前の回の影響を取り除く必要がさらにあることは留意されるべきである。
【００８８】
-9, +7および+4を受信した後、検査ノード処理ユニット6044は、検査行列の1番目の行に従って、第1の変数ノードに返すための更新値+4、第2の変数ノードに返すための更新値-4、第4の変数ノードに返すための更新値-7を生成するとともに、3つの更新値を、変数ノード処理ユニット6042に送信する。
【００８９】
変数ノード処理ユニット6042は、以下の2つの解決手段のいずれかをその後実行してよい：
【００９０】
解決手段1: 更新値を受信した後、変数ノード処理ユニット6042は、第1、第2および第4の変数ノードの符号要素を、それらの対応する更新値に追加し、従って、第1の変数ノードに対応する符号要素は-5に更新され、第2の変数ノードに対応する符号要素は+3に更新され、第4の変数ノードに対応する符号要素は-3に更新され、第1、第2および第4の変数ノードの更新された符号要素を記憶モジュール6043に記憶し、更新プロセスにおける、任意の変数ノードに対応する符号要素の更新値が、符号要素量子化範囲、すなわち、-15から+15を超える場合、変数ノードに対応する符号要素の更新をやめ、記憶モジュール6043から、更新前の符号要素を読み出し、次の変数ノードに対応する符号要素を更新し続け、第1の変数ノード、第2の変数ノードおよび第4の変数ノードに対応する全ての符号要素の処理が完了するまで、次の変数ノードに対応する符号要素の更新のために前述の決定動作を繰り返す。
【００９１】
解決手段2: 更新値を受信した後、変数ノード処理ユニット6042は、全ての更新値を記憶し、第1、第2および第4の変数ノードの符号要素を、それらの対応する更新値に追加し、更新プロセスにおける任意の変数ノードに対応する符号要素の更新値が、符号要素量子化範囲、すなわち、-15から+15を超える場合、変数ノードに対応する符号要素の更新をやめ、記憶モジュール6043から、更新前の符号要素を読み出し、次の変数ノードに対応する符号要素を更新し続け、検査行列の1番目の行の更新が完了した後、検査行列の2番目の行を更新し続け、すなわち、図6で示されるタナー図における、検査ノード2に対応する更新処理を実行する。図6では、変数ノード1から変数ノード7は、変数ノード処理ユニット6042によって受信される、7個の符号要素にそれぞれ対応し、且つ、検査ノード1から検査ノード3は、検査行列の1番目の行から3番目の行にそれぞれ対応する。図6では、変数ノード1から変数ノード7によって実行される処理動作もまた、図5における変数ノード処理ユニット6042によって実行され、且つ、検査ノード1から検査ノード3によって実行される処理動作もまた、図5における検査ノード処理ユニット6044によって実行される。
【００９２】
検査ノード1が変数ノード1、変数ノード2および変数ノード4に更新値を返した後、変数ノード1、変数ノード2および変数ノード4に対応する更新された符号要素のうちのいずれも符号要素量子化範囲を超えない場合、変数ノード3、変数ノード4および変数ノード5は、検査ノード2に対応する符号要素を送信し続け、且つ、検査ノード2は、対応する更新値を生成するとともに、次いで、更新値を対応する変数ノードに返し、符号要素量子化範囲が依然として超えられない場合、検査ノード3に対応する更新が続く。この場合、変数ノード4に対応する符号要素は、検査ノード1に対応する処理に参加するとともに、検査ノード2に対応する処理および検査ノード3に対応する処理にもまた参加するため、図6では、変数ノード4に対応する符号要素+4と、検査ノード1によって返される更新値-7との合計が符号要素量子化範囲を超えない場合、変数ノードに対応する符号要素と、別の検査ノードによって返される更新値との合計が、符号要素量子化範囲を超える場合がある。図6に示される例では、検査ノード1、検査ノード2および検査ノード3によって変数ノード4に返される更新は、それぞれ-7, -7および-10である。3つの更新値が、符号要素+4に追加された後、取得された-20は、符号要素量子化範囲を超える。全ての更新値は既に記憶されているため、3つの更新値は、符号要素量子化範囲の超えることに対して、最も大きい影響を有する更新値を取得するためにソートされる。この例における符号要素は、符号要素量子化範囲の最小値を超えるため、最も大きい影響を持つ更新値は、最も小さい値を持つ更新値、すなわち、-10であり、変数ノード4は、検査ノード3によって返される更新値-10を捨て、すなわち、更新のこの回の後、変数ノード4に対応する符号要素は+4 + (-7) + (-7)であるとともに-10と等しい。解決手段2では、任意の変数ノードの符号要素と、複数の検査ノードによって返される更新値との合計が、符号要素量子化範囲を超えた後、変数ノードによって受信された更新値がソートされ、変数ノードの符号要素と更新値との合計が、符号要素量子化範囲の最大値を超えるとき、変数ノードは、最初に、更新値の最も大きい値を捨て、変数ノードの符号要素と更新値との合計が、符号要素量子化範囲の最小値を超えるとき、変数ノードは、最初に、更新値の最も小さい値を捨て、このことは、捨てられた更新値は、復号プロセスに対しても最も少ない影響を有することを保証する。
【００９３】
変数ノード処理ユニット6042が検査行列の1つの行に対応する符号要素を更新することを完了する度、すなわち、1つの検査ノードによって送信された更新値を処理する度、変数ノード処理ユニット6042は、決定ユニット606に更新された符号語を送信し、且つ、決定ユニット606は、更新された符号語をマッピングするとともに符号語のこの行が判定を通過するかどうかを決定する。前の例では、検査行列の1番目の行に対応する変数ノードに対応する符号要素の更新が完了した後、更新された符号語は-5, +3, -12, -3, +7, +10, -11であり、且つ、決定ユニット606は、更新された符号語に対して判定を行う。詳細については、デバイスの実施形態1において、方法1を使用することによって、どのように処理ユニット204が第2の符号語を生成するかを参照されたい。検査行列の1つの行に対応する符号要素を更新して、更新された符号語を取得した後、変数ノード処理ユニット6042はさらに、デバイスの実施形態1における処理ユニット204によって使用される方法2を使用することによって、第2の符号語を生成して、第2の符号語を決定ユニット606に送信し続けてよい。符号語に対するマッピングおよび判定を行う前に、決定ユニット606は、符号語に対して最小オフセットアルゴリズム処理をさらに実行してよく、または、符号語に対して正規化min-sumアルゴリズム処理をさらに実行してよいことは留意されるべきである。
【００９４】
本実施形態は復号デバイスを提供する。復号デバイスは、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理を実行し、このことは、復号デバイスが、符号要素量子化範囲を超える更新された符号語を直接量子化することから防ぐとともに、復号プロセスにおける、復号デバイスのエラー補正能力を改善する。
【００９５】
デバイスの実施形態4
【００９６】
デバイスの実施形態4は、復号デバイス800を提供する。図7は、復号デバイス800の複合構造の概略図を示す。本実施形態では、デバイスの実施形態2における処理ユニット404の内部複合構造が、処理ユニット804として詳述される。本実施形態における処理ユニット804の全体の機能は、デバイスの実施形態2における処理ユニット404の全体の機能と同じである。
【００９７】
以下では、復号デバイス800によって取得される符号語が-9, +7, -12, +4, +7, +10, -11であり、符号要素量子化範囲が-15から+15であり、以下の検査行列が復号デバイス800によって使用される例を使用することによって、デバイスの実施形態4において提供される復号デバイス800の操作原理を詳細に説明する。
【００９８】
【数４】
0006426272.tif 000005
【００９９】
符号語-9, +7, -12, +4, +7, +10, -11を取得した後、取得ユニット802は、最初に、符号語を決定ユニット806に送信し、且つ、決定ユニット806は、符号語における負の値を1にマッピングするとともに正の値を0にマッピングして、マッピングされた符号語1, 0, 1, 0, 0, 0, 1を取得し、検査式に従って、マッピングされた符号語における各符号要素に対して、合計モジュロ2または加算モジュロ2操作とも呼ばれる、排他的OR操作を実行する。検査行列の1番目の行に対する操作によると、(1+0+0) mod (2)=1であり、且つ、符号語は復号されることを失敗する。符号語が処理ユニット804によって処理される前に、復号デバイス800によって取得される符号語が、決定ユニット806の判定を通過する場合、符号語は次の処理を必要とせず、且つ、復号デバイス800は、符号語のマッピング結果を復号結果として直接使用する。決定ユニット806が符号語が成功裏に復号されたと決定する前に、符号語1, 0, 1, 0, 0, 0, 1は、検査行列の3つの行全てに対応する検査を通過する必要がある。
【０１００】
変数ノード処理ユニット8042は、符号語-9, +7, -12, +4, +7, +10, -11を受信して、-9, +7, -12, +4, +7, +10, -11を記憶モジュール8043に記憶する。第1、第2および第4の変数ノードが検査行列の1番目の行に関し、すなわち、3つの符号要素-9, +7および+4が、検査行列の1番目の行に関することが、検査行列の1番目の行からわかる。変数ノード処理ユニット8042は、-9, +7および+4を検査ノード処理ユニット8044に送信する。実際には、処理は、検査行列の任意の行から開始してよい。検査行列の対応する行の更新または検査行列の全ての行に対応する更新が既に実行されている場合、変数ノード処理ユニット8042は、更新のこの回を実行する前に、符号語に対する更新値の前の回の影響を取り除く必要がさらにあることは留意されるべきである。
【０１０１】
-9, +7および+4を受信した後、検査ノード処理ユニット8044は、検査行列の1番目の行に従って、第1の変数ノードに返すための更新値+4、第2の変数ノードに返すための更新値-4、第4の変数ノードに返すための更新値-7を生成するとともに、3つの更新値を、変数ノード処理ユニット8042に送信する。
【０１０２】
変数ノード処理ユニット8042は、更新値を受信した後、第1、第2および第4の変数ノードの符号要素を、それらの対応する更新値に追加し、ここで、第1の変数ノードに対応する符号要素は-5に更新され、第2の変数ノードに対応する符号要素は+3に更新され、第4の変数ノードに対応する符号要素は-3に更新され、第1、第2および第4の変数ノードの更新された符号要素を記憶モジュール8043に記憶し、更新プロセスにおいて、任意の変数ノードに対応する符号要素の更新値が、符号要素量子化範囲を超える場合、第1、第2および第4の変数ノードに対応する符号要素の更新のこの回をやめ、更新の前に、記憶モジュール8043から、第1、第2および第4の変数ノードに対応する符号要素を読み出す、という解決手段をその後実行する。
【０１０３】
変数ノード処理ユニット8042が検査行列の1つの行に対応する符号要素を更新することを完了する度、すなわち、1つの検査ノードによって送信された更新値を処理する度、変数ノード処理ユニット8042は、決定ユニット806に更新された符号語を送信し、且つ、決定ユニット806は、更新された符号語をマッピングするとともに符号語のこの行が判定を通過するかどうかを決定する。前の例では、検査行列の1番目の行に対応する変数ノードに対応する符号要素の更新が完了した後、更新された符号語は-5, +3, -12, -3, +7, +10, -11であり、且つ、決定ユニット806は、更新された符号語に対して判定を行う。詳細については、デバイスの実施形態2において、方法1を使用することによって、どのように処理ユニット404が第2の符号語を生成するかを参照されたい。検査行列の1つの行に対応する符号要素を更新して、更新された符号語を取得した後、変数ノード処理ユニット8042はさらに、デバイスの実施形態2における処理ユニット404によって使用される方法2を使用することによって、第2の符号語を生成して、第2の符号語を決定ユニット806に送信し続けてよい。符号語に対するマッピングおよび判定を行う前に、決定ユニット806は、符号語に対して最小オフセットアルゴリズム処理をさらに実行してよく、または、符号語に対して正規化min-sumアルゴリズム処理をさらに実行してよいことは留意されるべきである。
【０１０４】
本実施形態は復号デバイスを提供する。復号デバイスは、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理を実行し、このことは、復号デバイスが、符号要素量子化範囲を超える更新された符号語を直接量子化することから防ぐとともに、復号プロセスにおける、復号デバイスのエラー補正能力を改善する。
【０１０５】
方法の実施形態1
【０１０６】
この方法の実施形態は復号方法を提供し、ここで、復号方法は、LDPC符号を復号するために使用される。この方法は、デバイスの実施形態1に係る復号デバイス200によって実行されてよく、または、デバイスの実施形態3に係る復号デバイス600によって実行されてよい。図8は、復号方法の概略フローチャートを示す。方法は以下を含む：
【０１０７】
ステップ1002: 第1の符号語を取得し、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、且つ、Mは正の整数である。ステップ1002の実行に関する詳細については、デバイスの実施形態1における取得ユニット202またはデバイスの実施形態3における取得ユニット602を参照されたい。
【０１０８】
ステップ1004: 検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成し、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。ステップ1004の実行に関する詳細については、デバイスの実施形態1における処理ユニット204またはデバイスの実施形態3における処理ユニット604および処理ユニット604の全てのサブユニットを参照されたい。
【０１０９】
ステップ1006: ステップ1004で生成された第2の符号語が成功裏に復号されたかどうかを決定する。ステップ1006の実行に関する詳細については、デバイスの実施形態1における決定ユニット206またはデバイスの実施形態3における決定ユニット606を参照されたい。
【０１１０】
本実施形態で提供される復号方法によると、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理が実行され、このことは、復号プロセスにおける、符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぐとともにLDPC符号エラー補正能力を改善する。
【０１１１】
方法の実施形態2
【０１１２】
この方法の実施形態は復号方法を提供し、ここで、復号方法は、LDPC符号を復号するために使用される。この方法は、デバイスの実施形態2に係る復号デバイス400によって実行されてよく、または、デバイスの実施形態4に係る復号デバイス800によって実行されてよい。図9は、復号方法の概略フローチャートを示す。方法は以下を含む：
【０１１３】
ステップ1202: 第1の符号語を取得し、ここで、第1の符号語は、生成行列に従って、LDPC符号符号化デバイスによって生成されるとともに、M個の第1の符号要素を含み、且つ、Mは正の整数である。ステップ1202の実行に関する詳細については、デバイスの実施形態2における取得ユニット402またはデバイスの実施形態4における取得ユニット802を参照されたい。
【０１１４】
ステップ1204: 検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成し、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。ステップ1204の実行に関する詳細については、デバイスの実施形態2における処理ユニット404またはデバイスの実施形態4における処理ユニット804および処理ユニット804の全てのサブユニットを参照されたい。
【０１１５】
ステップ1206: ステップ1204で生成された第2の符号語が成功裏に復号されたかどうかを決定する。ステップ1206の実行に関する詳細については、デバイスの実施形態2における決定ユニット406またはデバイスの実施形態4における決定ユニット806を参照されたい。
【０１１６】
本実施形態で提供される復号方法によると、符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理が実行され、このことは、復号プロセスにおける、符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぐとともにLDPC符号エラー補正能力を改善する。
【０１１７】
方法の実施形態3
【０１１８】
この方法の実施形態は復号方法を提供する。LDPC符号は復号されるものであるため、この方法は、デバイスの実施形態1、またはデバイスの実施形態2、またはデバイスの実施形態3、またはデバイスの実施形態4に係る、復号デバイスのうちのいずれか1つによって実行されてよい。本実施形態は、処理ユニット204、処理ユニット404、処理ユニット604および処理ユニット804が、方法1を使用することによって、第2の符号語を取得するとともに、第2の符号語に対して判定を実行するプロセスにおいて、どのように最終的な復号結果が取得されるかを主に説明する。図10は、復号方法の概略フローチャートを示す。方法は、以下を含む：
【０１１９】
ステップ1402: LDPC符号符号化デバイスによって処理される符号語を取得する。この方法の実施形態では、例えば、取得された符号語は-9, +7, -12, +4, +7, +10, -11であり、且つ、以下の検査行列が使用される。実際には、ステップ1402の実行の前に、符号語に対して、更新の1つの回または複数の回が既に実行されている場合、ステップ1402では、符号語に対する更新の前の回によってもたらされた影響は取り除かれる必要がさらにあり、すなわち、前の回の更新値が差し引かれる。
【０１２０】
【数５】
0006426272.tif 000006
【０１２１】
ステップ1404: 符号語-9, +7, -12, +4, +7, +10, -11が成功裏に復号されたかどうかを決定する。符号要素における負の値は1にマッピングされるとともに正の値は0にマッピングされ、マッピングされた符号語1, 0, 1, 0, 0, 0, 1を取得し、検査式に従って、マッピングされた符号語における各符号要素に対して、合計モジュロ2または加算モジュロ2操作とも呼ばれる、排他的OR操作が実行される。検査行列のK番目の行に対する操作によると、(1+0+0) mod (2)=1であり、且つ、符号語は復号されることを失敗する。ステップ1404において復号が成功する場合、復号結果が出力される。
【０１２２】
ステップ1406: 検査行列のK番目の行に対応する符号要素に従って、K番目の行に対応する符号要素に対応する更新値を生成する。すなわち、第1の符号要素-9、第2の符号要素+7および第4の符号要素+4について、3つの符号要素に対応する更新値が生成され、すなわち、第1の符号要素の更新値+4、第2の符号要素の更新値-4および第4の符号要素の更新値-7が生成される。ここでは、Kは1から開始してよい。
【０１２３】
ステップ1406の後、ステップ1408またはステップ1410のいずれかが実行されてよい。
【０１２４】
ステップ1408: 検査行列のK番目の行に対応する符号要素の更新値に従って、検査行列のK番目の行に対応する符号要素を更新し、且つ、任意の符号要素の更新値が符号要素量子化範囲を超える場合、符号要素の更新をやめる。この方法の実施形態では、符号要素量子化範囲は、-15から+15に設定され、且つ、符号語-9, +7, -12, +4, +7, +10, -11は符号語-5, +3, -12, -3, +7, +10, -11に更新される。
【０１２５】
ステップ1410: 検査行列のK番目の行に対応する符号要素の更新値に従って、検査行列のK番目の行に対応する符号要素を更新し、且つ、任意の符号要素の更新値が符号要素量子化範囲を超える場合、検査行列のK番目の行に対応する全ての符号要素の更新をやめる。同様に、符号要素量子化範囲を超える更新された符号要素はないため、符号語-9, +7, -12, +4, +7, +10, -11は符号語-5, +3, -12, -3, +7, +10, -11に更新される。
【０１２６】
ステップ1412: ステップ1408またはステップ1410で更新された符号語が成功裏に復号されたかどうかを決定する。復号が成功した場合、カウンタは1増え（復号デバイスが新たな復号されるべき符号語を取得する度、カウンタの初期値は0であり、または、復号デバイスが、ステップ1412で得られた符号語が復号されることに失敗すると分かる度、カウンタの値は0に戻る）、復号が失敗した場合、ステップ1402で取得された符号語として更新された符号語を使用することによって、検査行列の別の行に対して、ステップ1402からステップ1412が再び実行される。
【０１２７】
ステップ1414: カウンタが事前に設定された閾値に達したかどうかを決定し、事前に設定された閾値に達しない場合、ステップ1402で取得された符号語として更新された符号語を使用することによって、検査行列の別の行に対して、ステップ1402からステップ1412を再び実行し、事前に設定された閾値に達した場合、符号語の復号結果として、最終的に取得された更新された符号語のマッピング結果を使用して、復号結果を出力する。
【０１２８】
ステップ1404は、符号語の最初の更新プロセスを除いて、その後の更新プロセスでは必要とされないことは留意されるべきである。ステップ1402が実行された後、ステップ1406は直接実行される。
【０１２９】
本実施形態で提供される復号方法によると、LDPC符号復号プロセスの符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合において処理が実行され、このことは、LDPC符号復号プロセスにおける、符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぐとともにLDPC符号エラー補正能力を改善する。
【０１３０】
システムの実施形態1
【０１３１】
このシステムの実施形態は、復号デバイス、LDPC符号化デバイスおよび通信チャネルを含む信号送信システムを提供する。復号デバイスは、デバイスの実施形態1に係る復号デバイス200であってよく、またはデバイスの実施形態3に係る復号デバイス600であってよい。
【０１３２】
LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成し、通信チャネルを介して、第1の符号語を復号デバイスに送信するように構成される。復号デバイスが第1の符号語を処理するその後のプロセスについては、デバイスの実施形態1に係る復号デバイス200の実施の詳細、または、デバイスの実施形態3に係る復号デバイス600の実施の詳細を参照されたい。
【０１３３】
この実施形態は信号送信システムを提供する。信号送信システムにおける復号デバイスは、LDPC符号復号プロセスの符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合に処理を実行し、このことは、LDPC符号復号プロセスにおいて符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぎ、信号送信システムにおいて送信されるLDPC符号におけるエラーを補正する能力を改善し、信号送信システムにおいて送信される信号の信頼度もまた改善する。
【０１３４】
システムの実施形態2
【０１３５】
このシステムの実施形態は、復号デバイス、LDPC符号化デバイスおよび通信チャネルを含む信号送信システムを提供する。復号デバイスは、デバイスの実施形態2に係る復号デバイス400であってよく、またはデバイスの実施形態4に係る復号デバイス800であってよい。
【０１３６】
LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成し、通信チャネルを介して、第1の符号語を復号デバイスに送信するように構成される。復号デバイスが第1の符号語を処理するその後のプロセスについては、デバイスの実施形態2に係る復号デバイス400の実施の詳細、または、デバイスの実施形態4に係る復号デバイス800の実施の詳細を参照されたい。
【０１３７】
この実施形態は信号送信システムを提供する。信号送信システムにおける復号デバイスは、LDPC符号復号プロセスの符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合に処理を実行し、このことは、LDPC符号復号プロセスにおいて符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぎ、信号送信システムにおいて送信されるLDPC符号におけるエラーを補正する能力を改善し、信号送信システムにおいて送信される信号の信頼度もまた改善する。
【０１３８】
システムの実施形態3
【０１３９】
このシステムの実施形態は、復号デバイス、LDPC符号化デバイスおよび記憶媒体を含むデータ記憶システムを提供する。復号デバイスは、デバイスの実施形態1に係る復号デバイス200であってよく、またはデバイスの実施形態3に係る復号デバイス600であってよい。
【０１４０】
LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成するとともに、第1の符号語を記憶媒体に記憶するように構成され、且つ、復号デバイスは、記憶媒体から、第1の符号語を取得するように構成される。復号デバイスが第1の符号語を処理するその後のプロセスについては、デバイスの実施形態1に係る復号デバイス200の実施の詳細、または、デバイスの実施形態3に係る復号デバイス600の実施の詳細を参照されたい。
【０１４１】
この実施形態はデータ記憶システムを提供する。データ記憶システムにおける復号デバイスは、LDPC符号復号プロセスの符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合に処理を実行し、このことは、LDPC符号復号プロセスにおいて符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぎ、データ記憶システムにおける、復号デバイスのLDPC符号エラー補正能力を改善し、データ記憶システムに記憶されたデータの信頼度もまた改善する。
【０１４２】
システムの実施形態4
【０１４３】
このシステムの実施形態は、復号デバイス、LDPC符号化デバイスおよび記憶媒体を含むデータ記憶システムを提供する。復号デバイスは、デバイスの実施形態2に係る復号デバイス400であってよく、またはデバイスの実施形態4に係る復号デバイス800であってよい。
【０１４４】
LDPC符号符号化デバイスは、生成行列に従って、第1の符号語を生成するとともに、第1の符号語を記憶媒体に記憶するように構成され、且つ、復号デバイスは、記憶媒体から、第1の符号語を取得するように構成される。復号デバイスが第1の符号語を処理するその後のプロセスについては、デバイスの実施形態2に係る復号デバイス400の実施の詳細、または、デバイスの実施形態4に係る復号デバイス800の実施の詳細を参照されたい。
【０１４５】
この実施形態はデータ記憶システムを提供する。データ記憶システムにおける復号デバイスは、LDPC符号復号プロセスの符号語更新プロセスにおいて生じるとともに、更新された符号要素の値が符号要素量子化範囲を超える場合に処理を実行し、このことは、LDPC符号復号プロセスにおいて符号要素量子化範囲を超える更新された符号語の直接的な量子化を防ぎ、データ記憶システムにおける、復号デバイスのLDPC符号エラー補正能力を改善し、データ記憶システムに記憶されたデータの信頼度もまた改善する。
【０１４６】
図11は、従来の復号デバイスと本願で提案される復号デバイスとのエミュレーション結果の比較図である。エミュレーションは、LDPC FPGAエミュレーションプラットフォームに基づいて、FPGAを使用することによって、ランダムなシーケンス（すなわち、上述の送信されるべき信号）を生成して、次いで、LDPC符号化および変調を実行するとともに、符号語（すなわち、上述の第1の符号語）を生成するために、ランダムな白色ガウスノイズを追加して、最後に、符号語に対してLDPC復号を実行することである。FPGAエミュレーションプラットフォームは、RAWBERおよびUBERに対する統計収集を完了する。UBERのフルネームは、Uncorrected Bit Error Rateであり、すなわち、補正されることができないビットエラーレートである。RAWBERのフルネームは、Raw Bit Error Rateであり、すなわち、符号化を実行するとともに白色ノイズを追加することによって生成される符号語のビットエラーレートである。従って、RAWBERのより小さい値は、理論的に、復号されるべき符号語自身のより低いビットエラーレートを示し、従って、UBERレートもまた、適宜低下するべきである。従来の解決手段では、RAWBERが0.0021よりも小さいとき、UBERはもはや適宜低下せず、且つ、LDPC符号エラー補正能力は、ボトルネックに達することが、図11から見てとれる。しかしながら、本願で提供されるLDPC符号復号デバイスが使用され、且つ、RAWERが0.0021よりも小さいとき、UBERは依然として適宜低下し続け、このことは、従来のLDPC符号復号デバイスの性能ボトルネックを打ち破るとともに、LDPC符号エラー補正能力を効果的に改善する。
【０１４７】
デバイスの実施形態1では、処理ユニット204は、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成するように構成され、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。
【０１４８】
任意で、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、すなわち、P個の第2の更新値の各第2の更新値を取得した後、処理ユニット204は、P個の第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定し、または、検査行列のn番目の行に対応するP個の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【０１４９】
任意で、復号デバイス200に含まれる取得ユニット202、処理ユニット204および決定ユニット206のそれぞれは、回路を使用することによって実施される。
【０１５０】
第2の更新値を取得した後、処理ユニット204は、各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、処理ユニット204がa番目の第2の更新値が符号要素量子化範囲を超えると決定した場合、処理ユニット204は、a番目の第2の更新値を使用することによって、a番目の第1の符号要素を更新せず、すなわち、a番目の第1の符号要素を更新されないままにし、処理ユニット204がb番目の第2の更新値が符号要素量子化範囲を超えないと決定した場合、処理ユニット204は、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新する。
【０１５１】
デバイスの実施形態1における例によると、この例において、Pは3と等しいため、aの値は1, 2または3であってよいとともに、第2の更新値-5, +3または-3にそれぞれ対応する。例えば、aは1に設定され、処理ユニット204は、第2の更新値-5が符号要素量子化範囲を超えるかどうかを決定し、第2の更新値-5が符号要素量子化範囲を超える場合、-9は-5を使用することによって更新されず、すなわち、符号要素-9は変更されないままであり、第2の更新値-5が符号要素量子化範囲を超えない場合、-9は-5を使用することによって更新され、すなわち、符号要素-9は-5に更新される。処理ユニット204は、第2の更新値-5, +3および-3が符号要素量子化範囲を超えるかどうかを同時に決定してよく、または、検査行列の1番目の行上のビット1に対応する第1の符号要素の順序に従って、すなわち、最初に-5、次に+3、次に-3に従って、第2の更新値-5, +3および-3が符号要素量子化範囲を超えるかどうかを決定してよい。
【０１５２】
デバイスの実施形態2では、処理ユニット404は、検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成するように構成され、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。
【０１５３】
任意で、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、すなわち、P個の第2の更新値の各第2の更新値を取得した後、処理ユニット404は、P個の第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定し、または、検査行列のn番目の行に対応するP個の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【０１５４】
任意で、復号デバイス400に含まれる取得ユニット402、処理ユニット404および決定ユニット406のそれぞれは、回路を使用することによって実施される。
【０１５５】
第2の更新値を取得した後、処理ユニット404は、各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、処理ユニット404がa番目の第2の更新値が符号要素量子化範囲を超えると決定した場合、処理ユニット404は、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新せず、すなわち、P個の第1の符号要素を更新されないままにし、処理ユニット404がP個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定した場合、処理ユニット404は、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新する。
【０１５６】
デバイスの実施形態1における例によると、この例において、Pは3と等しいため、aの値は1, 2または3であってよいとともに、第2の更新値-5, +3または-3にそれぞれ対応する。例えば、aは1に設定され、処理ユニット404は、第2の更新値-5が符号要素量子化範囲を超えるかどうかを決定し、第2の更新値-5が符号要素量子化範囲を超える場合、-9は-5を使用することによって更新されず、-4は+3を使用することによって更新されず、-7は-3を使用することによって更新されず、同様に、別の第2の更新値が符号要素量子化範囲を超える場合、第2の更新値のうちのいずれか1つを使用することによって第1の符号要素を更新することは中止される。第2の更新値-5, +3および-3のうちのいずれも符号要素量子化範囲を超えない場合、-9は-5を使用することによって更新され、-4は+3を使用することによって更新され、-7は-3を使用することによって更新される。処理ユニット404は、第2の更新値-5, +3および-3が符号要素量子化範囲を超えるかどうかを同時に決定してよく、または、検査行列の1番目の行上のビット1に対応する第1の符号要素の順序に従って、すなわち、最初に-5、次に+3、次に-3に従って、第2の更新値-5, +3および-3を決定してよく、且つ、第1の符号要素のうちのいずれか1つが符号要素量子化範囲を超える場合、残りの第1の符号要素について決定することは必要とされない。
【０１５７】
デバイスの実施形態3では、変数ノード処理ユニット6042は、回路を使用することによって実施され、且つ、検査ノード処理ユニット6044は、回路を使用することによって実施される。
【０１５８】
デバイスの実施形態4では、変数ノード処理ユニット8042は、回路を使用することによって実施され、且つ、検査ノード処理ユニット8044は、回路を使用することによって実施される。
【０１５９】
方法の実施形態1では、ステップ1004: 検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、a番目の第1の符号要素を更新されないままにし、P個の第2の更新値のb番目の第2の更新値が符号要素量子化範囲を超えないと決定されたとき、b番目の第2の更新値を使用することによって、b番目の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、検査行列のn番目の行に対応するP個の第2の符号要素に従って、第2の符号語を生成し、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。ステップ1004の実行に関する詳細については、デバイスの実施形態1における処理ユニット204、または、デバイスの実施形態3における処理ユニット604および処理ユニット604の全てのサブユニットを参照されたい。
【０１６０】
任意で、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定すること、すなわち、P個の第2の更新値の各第2の更新値を取得した後、P個の第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【０１６１】
方法の実施形態2では、ステップ1204: 検査行列のn番目の行に対応するP個の第1の符号要素を取得し、P個の第1の符号要素に対応するP個の第1の更新値を取得し、P個の第1の更新値に従って、P個の第1の符号要素に対応するP個の第2の更新値を得て、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定し、P個の第2の更新値のa番目の第2の更新値が符号要素量子化範囲を超えると決定されたとき、P個の第1の符号要素を更新されないままにし、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えないと決定されたとき、P個の第2の更新値を使用することによって、P個の第1の符号要素を更新し、前述の更新操作に従って、検査行列のn番目の行に対応するP個の第2の符号要素を得て、P個の第2の符号要素に従って、第2の符号語を生成し、ここで、検査行列は、生成行列に対応するとともにN個の行を含み、1≦n≦N、P≦M、1≦a≦P、1≦b≦Pであり、且つ、各第2の更新値は、各第1の更新値および対応する第1の符号要素の合計である。ステップ1204の実行に関する詳細については、デバイスの実施形態2における処理ユニット404またはデバイスの実施形態4における処理ユニット804および処理ユニット804の全てのサブユニットを参照されたい。
【０１６２】
任意で、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを決定することは、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定すること、すなわち、P個の第2の更新値の各第2の更新値を取得した後、P個の第2の更新値が符号要素量子化範囲を超えるかどうかを同時に決定することであってよく、または、検査行列のn番目の行に対応するP個の符号要素の順序に従って、左から右へ、P個の第2の更新値の各第2の更新値が符号要素量子化範囲を超えるかどうかを順次決定することであってよい。
【０１６３】
本願の実施形態における詳細な説明の無い部分については、別の実施形態の関連する説明を参照されたい。最後に、前述の実施形態は単に、本発明の技術的解決手段を説明するために意図されるが、本発明を限定するために意図されないことは留意されるべきである。本発明は、前述の実施形態を参照して詳細に説明されるが、当業者は、彼らが、本発明の実施形態の技術的解決手段の範囲から逸脱することなく、前述の実施形態において説明された技術的解決手段に対してさらに修正を行うことができ、または、それらのいくつかの技術的特徴に対して均等置換をさらに行うことができることを理解するべきである。
【符号の説明】
【０１６４】
200  復号デバイス
202  取得ユニット
204  処理ユニット
206  決定ユニット
400  復号デバイス
402  取得ユニット
404  処理ユニット
406  決定ユニット
600  復号デバイス
602   取得ユニット
604  処理ユニット
6042  変数ノード処理ユニット
6043  記憶モジュール
6044  検査ノード処理ユニット
606  決定ユニット
800  復号デバイス
802  取得ユニット
804  処理ユニット
8042  変数ノード処理ユニット
8043  記憶モジュール
8044  検査ノード処理ユニット
806  決定ユニット
【図１】
0006426272.tif 000007
【図２】
0006426272.tif 000008
【図３】
0006426272.tif 000009
【図４】
0006426272.tif 000010
【図５】
0006426272.tif 000011
【図６】
0006426272.tif 000012
【図７】
0006426272.tif 000013
【図８】
0006426272.tif 000014
【図９】
0006426272.tif 000015
【図１０】
0006426272.tif 000016
【図１１】
0006426272.tif 000017