JPWO2015045899A1 - データ処理装置、及びデータ処理方法 - Google Patents

データ処理装置、及びデータ処理方法 Download PDF

Info

Publication number
JPWO2015045899A1
JPWO2015045899A1 JP2015539103A JP2015539103A JPWO2015045899A1 JP WO2015045899 A1 JPWO2015045899 A1 JP WO2015045899A1 JP 2015539103 A JP2015539103 A JP 2015539103A JP 2015539103 A JP2015539103 A JP 2015539103A JP WO2015045899 A1 JPWO2015045899 A1 JP WO2015045899A1
Authority
JP
Japan
Prior art keywords
ldpc code
bits
check matrix
parity
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP2015539103A
Other languages
English (en)
Inventor
雄二 篠原
雄二 篠原
山本 真紀子
真紀子 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JPWO2015045899A1 publication Critical patent/JPWO2015045899A1/ja
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint

Abstract

本技術は、LDPC符号を用いたデータ伝送において、良好な通信品質を確保することができるようにするデータ処理装置、及びデータ処理方法に関する。グループワイズインターリーブでは、符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号が、360ビットのビットグループ単位でインターリーブされる。グループワイズデインターリーブでは、グループワイズインターリーブ後のLDPC符号の並びが元の並びに戻される。本技術は、例えば、LDPC符号を用いたデータ伝送等を行う場合に適用できる。

Description

本技術は、データ処理装置、及びデータ処理方法に関し、特に、例えば、LDPC符号を用いたデータ伝送において、良好な通信品質を確保することができるようにするデータ処理装置、及び、データ処理方法に関する。
本明細書および図面中に掲載する情報の一部は、ソニー株式会社と共同開発を行うSamsung Electronics Co., Ltd.(以下、Samsungと表記)から提供を受けたものである(図面中に明示)。
LDPC(Low Density Parity Check)符号は、高い誤り訂正能力を有し、近年では、例えば、欧州等のDVB(Digital Video Broadcasting)-S.2や、DVB-T.2、DVB-C.2、米国等のATSC(Advanced Television Systems Committee)3.0等のディジタル放送を含む伝送方式に広く採用されている(例えば、非特許文献1を参照)。
LDPC符号は、近年の研究により、ターボ符号等と同様に、符号長を長くしていくにしたがって、シャノン限界に近い性能が得られることがわかりつつある。また、LDPC符号は、最小距離が符号長に比例するという性質があることから、その特徴として、ブロック誤り確率特性がよく、さらに、ターボ符号等の復号特性において観測される、いわゆるエラーフロア現象が殆ど生じないことも利点として挙げられる。
DVB-S.2 : ETSI EN 302 307 V1.2.1 (2009-08)
LDPC符号を用いたデータ伝送では、例えば、LDPC符号が、QPSK(Quadrature Phase Shift Keying)等の直交変調(ディジタル変調)のシンボルとされ(シンボル化され)、そのシンボルが、直交変調の信号点にマッピングされて送信される。
以上のようなLDPC符号を用いたデータ伝送は、世界的に拡がりつつあり、良好な通信品質を確保することが要請されている。
本技術は、このような状況に鑑みてなされたものであり、LDPC符号を用いたデータ伝送において、良好な通信品質を確保することができるようにするものである。
本技術の第1のデータ処理装置/データ処理方法は、符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部/ステップを備え、前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
の並びにインターリーブするデータ処理装置/データ処理方法である。
本技術の第1のデータ処理装置/データ処理方法においては、符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブが行われる。前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びが、ビットグループ
6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
の並びにインターリーブされる。
本技術の第2のデータ処理装置/データ処理方法は、符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部を備え、前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
の並びにインターリーブする送信装置から送信されてくるデータから得られる、グループワイズインターリーブ後の前記LDPC符号の並びを元の並びに戻すグループワイズデインターリーブ部/ステップを備えるデータ処理装置/データ処理方法である。
本技術の第2のデータ処理装置/データ処理方法においては、符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部を備え、前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
の並びにインターリーブする送信装置から送信されてくるデータから得られる、グループワイズインターリーブ後の前記LDPC符号の並びが元の並びに戻される。
なお、データ処理装置は、独立した装置であっても良いし、1個の装置を構成している内部ブロックであっても良い。
本技術によれば、LDPC符号を用いたデータ伝送において、良好な通信品質を確保することができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
LDPC符号の検査行列Hを説明する図である。 LDPC符号の復号手順を説明するフローチャートである。 LDPC符号の検査行列の例を示す図である。 検査行列のタナーグラフを示す図である。 バリアブルノードを示す図である。 チェックノードを示す図である。 本技術を適用した伝送システムの一実施の形態の構成例を示す図である。 送信装置11の構成例を示すブロック図である。 ビットインターリーバ116の構成例を示すブロック図である。 検査行列を示す図である。 パリティ行列を示す図である。 DVB-T.2の規格に規定されているLDPC符号の検査行列を説明する図である。 DVB-T.2の規格に規定されているLDPC符号の検査行列を説明する図である。 LDPC符号の復号についてのタナーグラフを示す図である。 階段構造になっているパリティ行列HTと、そのパリティ行列HTに対応するタナーグラフを示す図である。 パリティインターリーブ後のLDPC符号に対応する検査行列Hのパリティ行列HTを示す図である。 ビットインターリーバ116、及び、マッパ117で行われる処理を説明するフローチャートである。 LDPCエンコーダ115の構成例を示すブロック図である。 LDPCエンコーダ115の処理を説明するフローチャートである。 符号化率1/4、符号長16200の検査行列初期値テーブルの例を示す図である。 検査行列初期値テーブルから検査行列Hを求める方法を説明する図である。 符号長Nが64kビットで、符号化率rが7/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが7/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが7/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが9/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが9/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが9/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが11/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが11/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが11/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが13/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが13/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが13/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが6/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが8/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが10/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが12/15の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが6/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが6/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが8/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが8/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが8/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが10/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが10/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが10/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが12/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが12/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが64kビットで、符号化率rが12/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが7/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが9/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが11/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 符号長Nが16kビットで、符号化率rが13/15の第2の新LDPC符号の検査行列初期値テーブルを示す図である。 列重みが3で、行重みが6であるというデグリーシーケンスのアンサンブルのタナーグラフの例を示す図である。 マルチエッジタイプのアンサンブルのタナーグラフの例を示す図である。 符号長Nが64kビットで、符号化率rが7/15,9/15,11/15,13/15の第1の新LDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長Nが64kビットで、符号化率rが7/15,9/15,11/15,13/15の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが64kビットで、符号化率rが7/15,9/15,11/15,13/15の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが64kビットで、符号化率rが7/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが9/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが11/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが13/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが6/15,8/15,10/15,12/15の第1の新LDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長Nが16kビットで、符号化率rが6/15,8/15,10/15,12/15の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが6/15,8/15,10/15,12/15の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが6/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが8/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが10/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが12/15の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号についてのBERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号の検査行列の最小サイクル長と性能閾値とを示す図である。 符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが6/15,8/15,10/15,12/15の第2の新LDPC符号の検査行列を説明する図である。 符号長Nが64kビットで、符号化率rが6/15,8/15,10/15,12/15の第2の新LDPC符号の検査行列を説明する図である。 符号長Nが64kビットで、符号化率rが6/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが8/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが10/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが64kビットで、符号化率rが12/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが7/15,9/15,11/15,13/15の第2の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが7/15,9/15,11/15,13/15の第2の新LDPC符号の検査行列を説明する図である。 符号長Nが16kビットで、符号化率rが7/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが9/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが11/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 符号長Nが16kビットで、符号化率rが13/15の第2の新LDPC符号についてのBER/FERを計測するシミュレーションのシミュレーション結果を示す図である。 コンスタレーションの種類の例を示す図である。 変調方式が16QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。 変調方式が64QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。 変調方式が256QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。 変調方式が1024QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。 変調方式が16QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。 変調方式が64QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。 変調方式が256QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。 変調方式が1024QAMである場合のコンスタレーションとして、UC、及び、1D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。 変調方式がQPSKである場合に、LDPC符号の8種類の符号化率rについて共通に使用されるUCの信号点の座標を示す図である。 変調方式が16QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。 変調方式が64QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。 変調方式が256QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。 変調方式が1024QAMである場合に、LDPC符号の8種類の符号化率rについて使用される1D NUCの信号点の座標を示す図である。 シンボルyと、そのシンボルyに対応する1D NUCの信号点zqの座標としての複素数のリアルパートRe(zq)及びイマジナリパートIm(zq)それぞれとの関係を示す図である。 ブロックインターリーバ25の構成例を示すブロック図である。 符号長Nと変調方式との組み合わせに対するパート1及び2のカラム数C、並びに、パートカラム長R1及びR2を示す図である。 ブロックインターリーバ25で行われるブロックインターリーブを説明する図である。 グループワイズインターリーバ24で行われるグループワイズインターリーブを説明する図である。 符号長Nが64kビットのLDPC符号に対するGWパターンの第1の例を示す図である。 符号長Nが64kビットのLDPC符号に対するGWパターンの第2の例を示す図である。 符号長Nが64kビットのLDPC符号に対するGWパターンの第3の例を示す図である。 符号長Nが64kビットのLDPC符号に対するGWパターンの第4の例を示す図である。 符号長Nが16kビットのLDPC符号に対するGWパターンの第1の例を示す図である。 符号長Nが16kビットのLDPC符号に対するGWパターンの第2の例を示す図である。 符号長Nが16kビットのLDPC符号に対するGWパターンの第3の例を示す図である。 符号長Nが16kビットのLDPC符号に対するGWパターンの第4の例を示す図である。 受信装置12の構成例を示すブロック図である。 ビットデインターリーバ165の構成例を示すブロック図である。 デマッパ164、ビットデインターリーバ165、及び、LDPCデコーダ166が行う処理を説明するフローチャートである。 LDPC符号の検査行列の例を示す図である。 検査行列に行置換と列置換を施した行列(変換検査行列)を示す図である。 5×5単位に分割した変換検査行列を示す図である。 ノード演算をP個まとめて行う復号装置の構成例を示すブロック図である。 LDPCデコーダ166の構成例を示すブロック図である。 ブロックデインターリーバ54の構成例を示すブロック図である。 ビットデインターリーバ165の他の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第1の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第2の構成例を示すブロック図である。 受信装置12を適用可能な受信システムの第3の構成例を示すブロック図である。 本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
以下、本技術の実施の形態について説明するが、その前に、LDPC符号について説明する。
<LDPC符号>
なお、LDPC符号は、線形符号であり、必ずしも2元である必要はないが、ここでは、2元であるものとして説明する。
LDPC符号は、そのLDPC符号を定義する検査行列(parity check matrix)が疎なものであることを最大の特徴とする。ここで、疎な行列とは、行列の要素の"1"の個数が非常に少ない行列(ほとんどの要素が0の行列)である。
図1は、LDPC符号の検査行列Hの例を示す図である。
図1の検査行列Hでは、各列の重み(列重み)("1"の数)(weight)が"3"であり、且つ、各行の重み(行重み)が"6"になっている。
LDPC符号による符号化(LDPC符号化)では、例えば、検査行列Hに基づいて生成行列Gを生成し、この生成行列Gを2元の情報ビットに対して乗算することで、符号語(LDPC符号)が生成される。
具体的には、LDPC符号化を行う符号化装置は、まず、検査行列Hの転置行列HTとの間に、式GHT=0が成立する生成行列Gを算出する。ここで、生成行列Gが、K×N行列である場合には、符号化装置は、生成行列Gに対してKビットからなる情報ビットのビット列(ベクトルu)を乗算し、Nビットからなる符号語c(=uG)を生成する。この符号化装置によって生成された符号語(LDPC符号)は、所定の通信路を介して受信側において受信される。
LDPC符号の復号は、Gallagerが確率復号(Probabilistic Decoding)と称して提案したアルゴリズムであって、バリアブルノード(variable node(メッセージノード(message node)とも呼ばれる))と、チェックノード(check node)とからなる、いわゆるタナーグラフ(Tanner graph)上での確率伝播(belief propagation)によるメッセージ・パッシング・アルゴリズムによって行うことが可能である。ここで、以下、適宜、バリアブルノードとチェックノードを、単に、ノードともいう。
図2は、LDPC符号の復号の手順を示すフローチャートである。
なお、以下、適宜、受信側で受信したLDPC符号(1符号語)のi番目の符号ビットの、値の"0"らしさを対数尤度比(log likelihood ratio)で表現した実数値(受信LLR)を、受信値u0iともいう。また、チェックノードから出力されるメッセージをujとし、バリアブルノードから出力されるメッセージをviとする。
まず、LDPC符号の復号においては、図2に示すように、ステップS11において、LDPC符号が受信され、メッセージ(チェックノードメッセージ)ujが"0"に初期化されるとともに、繰り返し処理のカウンタとしての整数をとる変数kが"0"に初期化され、ステップS12に進む。ステップS12において、LDPC符号を受信して得られる受信値u0iに基づいて、式(1)に示す演算(バリアブルノード演算)を行うことによってメッセージ(バリアブルノードメッセージ)viが求められ、さらに、このメッセージviに基づいて、式(2)に示す演算(チェックノード演算)を行うことによってメッセージujが求められる。
Figure 2015045899
・・・(1)
Figure 2015045899
・・・(2)
ここで、式(1)と式(2)におけるdvとdcは、それぞれ、検査行列Hの縦方向(列)と横方向(行)の"1"の個数を示す任意に選択可能とされるパラメータである。例えば、図1に示したような列重みが3で、行重みが6の検査行列Hに対するLDPC符号((3,6)LDPC符号)の場合には、dv=3,dc=6となる。
なお、式(1)のバリアブルノード演算、及び(2)のチェックノード演算においては、それぞれ、メッセージを出力しようとする枝(edge)(バリアブルノードとチェックノードとを結ぶ線)から入力されたメッセージを、演算の対象としないことから、演算の範囲が、1ないしdv-1又は1ないしdc-1となっている。また、式(2)のチェックノード演算は、実際には、2入力v1,v2に対する1出力で定義される式(3)に示す関数R(v1,v2)のテーブルを予め作成しておき、これを式(4)に示すように連続的(再帰的)に用いることによって行われる。
Figure 2015045899
・・・(3)
Figure 2015045899
・・・(4)
ステップS12では、さらに、変数kが"1"だけインクリメントされ、ステップS13に進む。ステップS13では、変数kが所定の繰り返し復号回数Cよりも大きいか否かが判定される。ステップS13において、変数kがCよりも大きくないと判定された場合、ステップS12に戻り、以下、同様の処理が繰り返される。
また、ステップS13において、変数kがCよりも大きいと判定された場合、ステップS14に進み、式(5)に示す演算を行うことによって最終的に出力する復号結果としてのメッセージviが求められて出力され、LDPC符号の復号処理が終了する。
Figure 2015045899
・・・(5)
ここで、式(5)の演算は、式(1)のバリアブルノード演算とは異なり、バリアブルノードに接続している全ての枝からのメッセージujを用いて行われる。
図3は、(3,6)LDPC符号(符号化率1/2、符号長12)の検査行列Hの例を示す図である。
図3の検査行列Hでは、図1と同様に、列の重みが3に、行の重みが6に、それぞれなっている。
図4は、図3の検査行列Hのタナーグラフを示す図である。
ここで、図4において、プラス"+"で表わされるのが、チェックノードであり、イコール"="で表わされるのが、バリアブルノードである。チェックノードとバリアブルノードは、それぞれ、検査行列Hの行と列に対応する。チェックノードとバリアブルノードとの間の結線は、枝(edge)であり、検査行列の要素の"1"に相当する。
すなわち、検査行列の第j行第i列の要素が1である場合には、図4において、上からi番目のバリアブルノード("="のノード)と、上からj番目のチェックノード("+"のノード)とが、枝により接続される。枝は、バリアブルノードに対応する符号ビットが、チェックノードに対応する拘束条件を持つことを表す。
LDPC符号の復号方法であるサムプロダクトアルゴリズム(Sum Product Algorithm)では、バリアブルノード演算とチェックノード演算とが繰り返し行われる。
図5は、バリアブルノードで行われるバリアブルノード演算を示す図である。
バリアブルノードでは、計算しようとしている枝に対応するメッセージviは、バリアブルノードに繋がっている残りの枝からのメッセージu1およびu2と、受信値u0iを用いた式(1)のバリアブルノード演算により求められる。他の枝に対応するメッセージも同様に求められる。
図6は、チェックノードで行われるチェックノード演算を示す図である。
ここで、式(2)のチェックノード演算は、式a×b=exp{ln(|a|)+ln(|b|)}×sign(a)×sign(b)の関係を用いて、式(6)に書き直すことができる。但し、sign(x)は、x≧0のとき1であり、x<0のとき-1である。
Figure 2015045899
・・・(6)
x≧0において、関数φ(x)を、式φ(x)=ln(tanh(x/2))と定義すると、式φ-1(x)=2tanh-1(e-x)が成り立つから、式(6)は、式(7)に変形することができる。
Figure 2015045899
・・・(7)
チェックノードでは、式(2)のチェックノード演算が、式(7)に従って行われる。
すなわち、チェックノードでは、図6のように、計算しようとしている枝に対応するメッセージujは、チェックノードに繋がっている残りの枝からのメッセージv1,v2,v3,v4,v5を用いた式(7)のチェックノード演算によって求められる。他の枝に対応するメッセージも同様に求められる。
なお、式(7)の関数φ(x)は、式φ(x)=ln((ex+1)/(ex-1))で表すことができ、x>0において、φ(x)=φ-1(x)である。関数φ(x)およびφ-1(x)をハードウェアに実装する際には、LUT(Look Up Table)を用いて実装される場合があるが、両者共に同一のLUTとなる。
<本技術を適用した伝送システムの構成例>
図7は、本技術を適用した伝送システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは、問わない)の一実施の形態の構成例を示す図である。
図7において、伝送システムは、送信装置11と受信装置12とから構成される。
送信装置11は、例えば、テレビジョン放送の番組等の送信(放送)(伝送)を行う。すなわち、送信装置11は、例えば、番組としての画像データや音声データ等の、送信の対象である対象データをLDPC符号に符号化し、例えば、衛星回線や、地上波、ケーブル(有線回線)等の通信路13を介して送信する。
受信装置12は、送信装置11から通信路13を介して送信されてくるLDPC符号を受信し、対象データに復号して出力する。
ここで、図7の伝送システムで使用されるLDPC符号は、AWGN(Additive White Gaussian Noise)通信路で極めて高い能力を発揮することが知られている。
一方、通信路13では、バースト(burst)誤りやイレージャ(erasure)を発生することがある。例えば、特に、通信路13が地上波である場合、OFDM(Orthogonal Frequency Division Multiplexing)システムでは、D/U(Desired to Undesired Ratio)が0dB(Undesired=echoのパワーがDesired=メインパスのパワーと等しい)のマルチパス環境において、エコー(echo)(メインパス以外のパス)の遅延(delay)に応じて、特定のシンボルのパワーが0になってしまう(erasure)ことがある。
また、フラッタ(flutter)(遅延が0でドップラ(dopper)周波数の掛かったechoが加算される通信路)でも、D/Uが0dBである場合には、ドップラ周波数によって、特定の時刻のOFDMのシンボル全体のパワーが0になる(erasure)場合が生じる。
さらに、受信装置12側の、送信装置11からの信号を受信するアンテナ等の受信部(図示せず)から受信装置12までの配線の状況や、受信装置12の電源の不安定性により、バースト誤りが発生することがある。
一方、LDPC符号の復号においては、検査行列Hの列、ひいては、LDPC符号の符号ビットに対応するバリアブルノードにおいて、前述の図5に示したように、LDPC符号の符号ビット(の受信値u0i)の加算を伴う式(1)のバリアブルノード演算が行われるため、そのバリアブルノード演算に用いられる符号ビットにエラーが生じると、求められるメッセージの精度が低下する。
そして、LDPC符号の復号では、チェックノードにおいて、そのチェックノードに繋がっているバリアブルノードで求められるメッセージを用いて、式(7)のチェックノード演算が行われるため、繋がっている複数のバリアブルノード(に対応するLDPC符号の符号ビット)が同時にエラー(イレージャを含む)となるチェックノードの数が多くなると、復号の性能が劣化する。
すなわち、例えば、チェックノードは、そのチェックノードに繋がっているバリアブルノードの2個以上が同時にイレージャになると、全バリアブルノードに、値が0である確率と1である確率とが等確率のメッセージを戻す。この場合、等確率のメッセージを戻すチェックノードは、1回の復号処理(1セットのバリアブルノード演算及びチェックノード演算)に寄与しないこととなり、その結果、復号処理の繰り返し回数を多く必要とすることになって、復号の性能が劣化し、さらに、LDPC符号の復号を行う受信装置12の消費電力が増大する。
そこで、図7の伝送システムでは、AWGN通信路(AWGNチャネル)での性能を維持しつつ、バースト誤りやイレージャへの耐性を向上させることが可能になっている。
<送信装置11の構成例>
図8は、図7の送信装置11の構成例を示すブロック図である。
送信装置11では、対象データとしての1以上のインプットストリーム(Input Streams)が、モードアダプテーション/マルチプレクサ(Mode Adaptation/Multiplexer)111に供給される。
モードアダプテーション/マルチプレクサ111は、モード選択、及び、そこに供給される1以上のインプットストリームの多重化等の処理を必要に応じて行い、その結果得られるデータを、パダー(padder)112に供給する。
パダー112は、モードアダプテーション/マルチプレクサ111からのデータに対して、必要なゼロ詰め(Nullの挿入)を行い、その結果得られるデータを、BBスクランブラ(BB Scrambler)113に供給する。
BBスクランブラ113は、パダー112からのデータに、BBスクランブル(Base-Band Scrambling)を施し、その結果得られるデータを、BCHエンコーダ(BCH encoder)114に供給する。
BCHエンコーダ114は、BBスクランブラ113からのデータをBCH符号化し、その結果得られるデータを、LDPC符号化の対象であるLDPC対象データとして、LDPCエンコーダ(LDPC encoder)115に供給する。
LDPCエンコーダ115は、BCHエンコーダ114からのLDPC対象データについて、LDPC符号のパリティビットに対応する部分であるパリティ行列が階段構造になっている検査行列に従ったLDPC符号化を行い、LDPC対象データを情報ビットとするLDPC符号を出力する。
すなわち、LDPCエンコーダ115は、LDPC対象データを、例えば、DVB-S.2や、DVB-T.2,DVB-C.2等の所定の規格に規定されている(検査行列に対応する)LDPC符号や、ATSC3.0で採用予定の(検査行列に対応する)LDPC符号等に符号化するLDPC符号化を行い、その結果得られるLDPC符号を出力する。
ここで、DVB-T.2の規格に規定されているLDPC符号や、ATSC3.0で採用予定のLDPC符号は、IRA(Irregular Repeat Accumulate)符号であり、そのLDPC符号の検査行列におけるパリティ行列は、階段構造になっている。パリティ行列、及び、階段構造については、後述する。また、IRA符号については、例えば、"Irregular Repeat-Accumulate Codes," H. Jin, A. Khandekar, and R. J. McEliece, in Proceedings of 2nd International Symposium on Turbo codes and Related Topics, pp. 1-8, Sept. 2000に記載されている。
LDPCエンコーダ115が出力するLDPC符号は、ビットインターリーバ(Bit Interleaver)116に供給される。
ビットインターリーバ116は、LDPCエンコーダ115からのLDPC符号について、後述するビットインターリーブを行い、そのビットインターリーブ後のLDPC符号を、マッパ(Mapper)117に供給する。
マッパ117は、ビットインターリーバ116からのLDPC符号を、そのLDPC符号の1ビット以上の符号ビットの単位(シンボル単位)で、直交変調の1つのシンボルを表す信号点にマッピングして直交変調(多値変調)を行う。
すなわち、マッパ117は、ビットインターリーバ116からのLDPC符号を、搬送波と同相のI成分を表すI軸と、搬送波と直交するQ成分を表すQ軸とで規定されるIQ平面(IQコンスタレーション)上の、LDPC符号の直交変調を行う変調方式で定める信号点にマッピングして直交変調を行う。
マッパ117で行われる直交変調の変調方式で定める信号点の数が、2m個である場合、LDPC符号のmビットの符号ビットを、シンボル(1シンボル)として、マッパ117では、ビットインターリーバ116からのLDPC符号が、シンボル単位で、2m個の信号点のうちの、シンボルを表す信号点にマッピングされる。
ここで、マッパ117で行われる直交変調の変調方式としては、例えば、DVB-T.2の規格等に規定されている変調方式や、ATSC3.0で採用予定の変調方式、その他の変調方式、すなわち、例えば、BPSK(Binary Phase Shift Keying)や、QPSK(Quadrature Phase Shift Keying),8PSK(Phase-Shift Keying),16APSK(Amplitude Phase-Shift Keying),32APSK,16QAM(Quadrature Amplitude Modulation),16QAM,64QAM,256QAM,1024QAM,4096QAM,4PAM(Pulse Amplitude Modulation)等がある。マッパ117において、いずれの変調方式による直交変調が行われるかは、例えば、送信装置11のオペレータの操作等に従って、あらかじめ設定される。
マッパ117での処理により得られるデータ(シンボルを信号点にマッピングしたマッピング結果)は、時間インターリーバ(Time Interleaver)118に供給される。
時間インターリーバ118は、マッパ117からのデータについて、シンボル単位での時間インターリーブ(時間方向のインターリーブ)を行い、その結果得られるデータを、SISO/MISOエンコーダ(SISO/MISO(Single Input Single Output/Multiple Input Single Output) encoder)119に供給する。
SISO/MISOエンコーダ119は、時間インターリーバ118からのデータに、時空間符号化を施し、周波数インターリーバ(Frequency Interleaver)120に供給する。
周波数インターリーバ120は、SISO/MISOエンコーダ119からのデータについて、シンボル単位での周波数インターリーブ(周波数方向のインターリーブ)を行い、フレームビルダ/リソースアロケーション部(Frame Builder & Resource Allocation)131に供給する。
一方、BCHエンコーダ121には、例えば、BBシグナリング(Base Band Signalling)(BB Header)等の伝送制御用の制御データ(signalling)が供給される。
BCHエンコーダ121は、そこに供給される制御データを、BCHエンコーダ114と同様にBCH符号化し、その結果得られるデータを、LDPCエンコーダ122に供給する。
LDPCエンコーダ122は、BCHエンコーダ121からのデータを、LDPC対象データとして、LDPCエンコーダ115と同様にLDPC符号化し、その結果得られるLDPC符号を、マッパ123に供給する。
マッパ123は、マッパ117と同様に、LDPCエンコーダ122からのLDPC符号を、そのLDPC符号の1ビット以上の符号ビットの単位(シンボル単位)で、直交変調の1つのシンボルを表す信号点にマッピングして直交変調を行い、その結果得られるデータを、周波数インターリーバ124に供給する。
周波数インターリーバ124は、周波数インターリーバ120と同様に、マッパ123からのデータについて、シンボル単位での周波数インターリーブを行い、フレームビルダ/リソースアロケーション部131に供給する。
フレームビルダ/リソースアロケーション部131は、周波数インターリーバ120、及び、124からのデータ(シンボル)の必要な位置に、パイロット(Pilot)のシンボルを挿入し、その結果得られるデータ(シンボル)から、所定の数のシンボルで構成されるフレーム(例えば、PL(Physical Layer)フレームや、T2フレーム、C2フレーム等)を構成して、OFDM生成部(OFDM generation)132に供給する。
OFDM生成部132は、フレームビルダ/リソースアロケーション部131からのフレームから、そのフレームに対応するOFDM信号を生成し、通信路13(図7)を介して送信する。
なお、送信装置11は、例えば、時間インターリーバ118、SISO/MISOエンコーダ119、周波数インターリーバ120、及び、周波数インターリーバ124等の、図8に図示したブロックの一部を設けずに構成することができる。
<ビットインターリーバ116の構成例>
図9は、図8のビットインターリーバ116の構成例を示すブロック図である。
ビットインターリーバ116は、データをインターリーブする機能を有し、パリティインターリーバ(Parity Interleaver)23、グループワイズインターリーバ(Group-Wise Interleaver)24、及びブロックインターリーバ(Block Interleaver)25から構成される。
パリティインターリーバ23は、LDPCエンコーダ115からのLDPC符号のパリティビットを、他のパリティビットの位置にインターリーブするパリティインターリーブを行い、そのパリティインターリーブ後のLDPC符号を、グループワイズインターリーバ24に供給する。
グループワイズインターリーバ24は、パリティインターリーバ23からのLDPC符号について、グループワイズインターリーブを行い、そのグループワイズインターリーブ後のLDPC符号を、ブロックインターリーバ25に供給する。
ここで、グループワイズインターリーブでは、1符号分のLDPC符号を、その先頭から、後述する巡回構造の単位の列数Pに等しい360ビット単位に区分した、その1区分の360ビットを、ビットグループとして、パリティインターリーバ23からのLDPC符号が、ビットグループ単位でインターリーブされる。
グループワイズインターリーブを行う場合には、グループワイズインターリーブを行わない場合に比較して、エラーレートを向上させることができ、その結果、データ伝送において、良好な通信品質を確保することができる。
ブロックインターリーバ25は、グループワイズインターリーバ24からのLDPC符号を逆多重化するためのブロックインターリーブを行うことで、1符号分のLDPC符号を、マッピングの単位であるmビットのシンボルにシンボル化し、マッパ117(図8)に供給する。
ここで、ブロックインターリーブでは、例えば、カラム(column)(縦)方向に所定のビット数を記憶する記憶領域としてのカラムが、ロウ(row)(横)方向に、シンボルのビット数mに等しい数だけ並んだ記憶領域に対して、グループワイズインターリーバ24からのLDPC符号が、カラム方向に書き込まれ、ロウ方向に読み出されることで、1符号分のLDPC符号が、mビットのシンボルにされる。
<LDPC符号の検査行列>
図10は、図8のLDPCエンコーダ115でLDPC符号化に用いられる検査行列Hを示す図である。
検査行列Hは、LDGM(Low-Density Generation Matrix)構造になっており、LDPC符号の符号ビットのうちの、情報ビットに対応する部分の情報行列HAと、パリティビットに対応するパリティ行列HTとによって、式H=[HA|HT](情報行列HAの要素を左側の要素とし、パリティ行列HTの要素を右側の要素とする行列)で表すことができる。
ここで、1符号のLDPC符号(1符号語)の符号ビットのうちの情報ビットのビット数と、パリティビットのビット数を、それぞれ、情報長Kと、パリティ長Mというとともに、1個のLDPC符号の符号ビットのビット数を、符号長N(=K+M)という。
ある符号長NのLDPC符号についての情報長Kとパリティ長Mは、符号化率によって決まる。また、検査行列Hは、行×列がM×Nの行列となる。そして、情報行列HAは、M×Kの行列となり、パリティ行列HTは、M×Mの行列となる。
図11は、図8のLDPCエンコーダ115でLDPC符号化に用いられる検査行列Hのパリティ行列HTの例を示す図である。
LDPCエンコーダ115でLDPC符号化に用いられる検査行列Hのパリティ行列HTは、例えば、DVB-T.2等の規格に規定されているLDPC符号の検査行列Hのパリティ行列HTと同様になっている。
DVB-T.2等の規格に規定されているLDPC符号の検査行列Hのパリティ行列HTは、図11に示すように、1の要素が、いわば階段状に並ぶ階段構造の行列(lower bidiagonal matrix)になっている。パリティ行列HTの行重みは、1行目については1で、残りの全ての行については2になっている。また、列重みは、最後の1列については1で、残りの全ての列で2になっている。
以上のように、パリティ行列HTが階段構造になっている検査行列HのLDPC符号は、その検査行列Hを用いて、容易に生成することができる。
すなわち、LDPC符号(1符号語)を、行ベクトルcで表すとともに、その行ベクトルを転置して得られる列ベクトルを、cTと表す。また、LDPC符号である行ベクトルcのうちの、情報ビットの部分を、行ベクトルAで表すとともに、パリティビットの部分を、行ベクトルTで表すこととする。
この場合、行ベクトルcは、情報ビットとしての行ベクトルAと、パリティビットとしての行ベクトルTとによって、式c =[A|T](行ベクトルAの要素を左側の要素とし、行ベクトルTの要素を右側の要素とする行ベクトル)で表すことができる。
検査行列Hと、LDPC符号としての行ベクトルc=[A|T]とは、式HcT=0を満たす必要があり、かかる式HcT=0を満たす行ベクトルc=[A|T]を構成するパリティビットとしての行ベクトルTは、検査行列H=[HA|HT]のパリティ行列HTが、図11に示した階段構造になっている場合には、式HcT=0における列ベクトルHcTの1行目の要素から順に、各行の要素を0にしていくようにすることで、逐次的(順番)に求めることができる。
図12は、DVB-T.2等の規格に規定されているLDPC符号の検査行列Hを説明する図である。
DVB-T.2等の規格に規定されているLDPC符号の検査行列Hの1列目からのKX列については、列重みがXに、その後のK3列については、列重みが3に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX+K3+M-1+1は、符号長Nに等しい。
図13は、DVB-T.2等の規格に規定されているLDPC符号の各符号化率rについての、列数KX,K3、及びM、並びに、列重みXを示す図である。
DVB-T.2等の規格では、64800ビットと16200ビットの符号長NのLDPC符号が規定されている。
そして、符号長Nが64800ビットのLDPC符号については、11個の符号化率(nominal rate)1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6,8/9、及び9/10が規定されており、符号長Nが16200ビットのLDPC符号については、10個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6、及び8/9が規定されている。
ここで、以下、64800ビットの符号長Nを、64kビットともいい、16200ビットの符号長Nを、16kビットともいう。
LDPC符号については、検査行列Hの列重みが大の列に対応する符号ビットほど、エラーレートが低い傾向がある。
図12及び図13に示した、DVB-T.2等の規格に規定されている検査行列Hでは、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、その検査行列Hに対応するLDPC符号については、先頭の符号ビットほど、エラーに強く(エラーに対する耐性があり)、終わりの符号ビットほど、エラーに弱い傾向がある。
<パリティインターリーブ>
図14ないし図16を参照して、図9のパリティインターリーバ23によるパリティインターリーブについて説明する。
図14は、LDPC符号の検査行列のタナーグラフ(の一部)の例を示す図である。
チェックノードは、図14に示すように、そのチェックノードに繋がっているバリアブルノード(に対応する符号ビット)の2個等の複数が同時にイレージャ等のエラーになると、そのチェックノードに繋がっている全バリアブルノードに、値が0である確率と1である確率とが等確率のメッセージを戻す。このため、同一のチェックノードに繋がっている複数のバリアブルノードが同時にイレージャ等になると、復号の性能が劣化する。
ところで、図8のLDPCエンコーダ115が出力するLDPC符号は、DVB-S.2等の規格に規定されているLDPC符号と同様に、IRA符号であり、検査行列Hのパリティ行列HTは、図11に示したように、階段構造になっている。
図15は、図11に示したように、階段構造になっているパリティ行列HTと、そのパリティ行列HTに対応するタナーグラフの例を示す図である。
図15のAは、階段構造になっているパリティ行列HTの例を示しており、図15のBは、図15のAのパリティ行列HTに対応するタナーグラフを示している。
階段構造になっているパリティ行列HTでは、各行において、1の要素が隣接する(1行目を除く)。このため、パリティ行列HTのタナーグラフにおいて、パリティ行列HTの値が1になっている隣接する2つの要素の列に対応する、隣接する2つのバリアブルノードは、同一のチェックノードに繋がっている。
したがって、バースト誤りやイレージャ等によって、上述の隣接する2つのバリアブルノードに対応するパリティビットが同時にエラーとなると、そのエラーとなった2つのパリティビットに対応する2つのバリアブルノード(パリティビットを用いてメッセージを求めるバリアブルノード)に繋がっているチェックノードは、値が0である確率と1である確率とが等確率のメッセージを、そのチェックノードに繋がっているバリアブルノードに戻すため、復号の性能が劣化する。そして、バースト長(連続してエラーとなるパリティビットのビット数)が大になると、等確率のメッセージを戻すチェックノードが増加し、復号の性能は、さらに劣化する。
そこで、パリティインターリーバ23(図9)は、上述した復号の性能の劣化を防止するため、LDPCエンコーダ115からの、LDPC符号のパリティビットを、他のパリティビットの位置にインターリーブするパリティインターリーブを行う。
図16は、図9のパリティインターリーバ23が行うパリティインターリーブ後のLDPC符号に対応する検査行列Hのパリティ行列HTを示す図である。
ここで、LDPCエンコーダ115が出力するLDPC符号に対応する検査行列Hの情報行列HAは、DVB-T.2等の規格に規定されているLDPC符号に対応する検査行列Hの情報行列と同様に、巡回構造になっている。
巡回構造とは、ある列が、他の列をサイクリックシフトしたものと一致している構造をいい、例えば、P列ごとに、そのP列の各行の1の位置が、そのP列の最初の列を、パリティ長Mを除算して得られる値qに比例する値だけ、列方向にサイクリックシフトした位置になっている構造も含まれる。以下、適宜、巡回構造におけるP列を、巡回構造の単位の列数という。
DVB-T.2等の規格に規定されているLDPC符号としては、図12及び図13で説明したように、符号長Nが64800ビットと16200ビットとの、2種類のLDPC符号があり、その2種類のLDPC符号のいずれについても、巡回構造の単位の列数Pが、パリティ長Mの約数のうちの、1とMを除く約数の1つである360に規定されている。
また、パリティ長Mは、符号化率によって異なる値qを用いて、式M=q×P=q×360で表される素数以外の値になっている。したがって、値qも、巡回構造の単位の列数Pと同様に、パリティ長Mの約数のうちの、1とMを除く約数の他の1つであり、パリティ長Mを、巡回構造の単位の列数Pで除算することにより得られる(パリティ長Mの約数であるP及びqの積は、パリティ長Mとなる)。
パリティインターリーバ23は、上述したように、情報長をKとし、また、0以上P未満の整数をxとするとともに、0以上q未満の整数をyとすると、パリティインターリーブとして、NビットのLDPC符号の符号ビットのうちの、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブする。
K+qx+y+1番目の符号ビット、及び、K+Py+x+1番目の符号ビットは、いずれも、K+1番目以降の符号ビットであるから、パリティビットであり、したがって、パリティインターリーブによれば、LDPC符号のパリティビットの位置が移動される。
このようなパリティインターリーブによれば、同一のチェックノードに繋がれるバリアブルノード(に対応するパリティビット)が、巡回構造の単位の列数P、すなわち、ここでは、360ビットだけ離れるので、バースト長が360ビット未満である場合には、同一のチェックノードに繋がっているバリアブルノードの複数が同時にエラーになる事態を避けることができ、その結果、バースト誤りに対する耐性を改善することができる。
なお、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブ後のLDPC符号は、元の検査行列Hの、K+qx+y+1番目の列を、K+Py+x+1番目の列に置換する列置換を行って得られる検査行列(以下、変換検査行列ともいう)のLDPC符号に一致する。
また、変換検査行列のパリティ行列には、図16に示すように、P列(図16では、360列)を単位とする擬似巡回構造が現れる。
ここで、擬似巡回構造とは、一部を除く部分が巡回構造になっている構造を意味する。
DVB-T.2等の規格に規定されているLDPC符号の検査行列に対して、パリティインターリーブに相当する列置換を施して得られる変換検査行列は、変換検査行列の右隅部分の360行×360列の部分(後述するシフト行列)に、1の要素が1つだけ足らず(0の要素になっており)、その点で、(完全な)巡回構造ではなく、いわば、擬似巡回構造になっている。
LDPCエンコーダ115が出力するLDPC符号の検査行列に対する変換検査行列は、DVB-T.2等の規格に規定されているLDPC符号の検査行列に対する変換検査行列と同様に、擬似巡回構造になっている。
なお、図16の変換検査行列は、元の検査行列Hに対して、パリティインターリーブに相当する列置換の他、変換検査行列が、後述する構成行列で構成されるようにするための行の置換(行置換)も施された行列になっている。
図17は、図8のLDPCエンコーダ115、ビットインターリーバ116、及び、マッパ117で行われる処理を説明するフローチャートである。
LDPCエンコーダ115は、BCHエンコーダ114から、LDPC対象データが供給されるのを待って、ステップS101において、LDPC対象データを、LDPC符号に符号化し、そのLDPC符号を、ビットインターリーバ116に供給して、処理は、ステップS102に進む。
ビットインターリーバ116は、ステップS102において、LDPCエンコーダ115からのLDPC符号を対象として、ビットインターリーブを行い、そのビットインターリーブによって得られるシンボルを、マッパ117に供給して、処理は、ステップS103に進む。
すなわち、ステップS102では、ビットインターリーバ116(図9)において、パリティインターリーバ23が、LDPCエンコーダ115からのLDPC符号を対象として、パリティインターリーブを行い、そのパリティインターリーブ後のLDPC符号を、グループワイズインターリーバ24に供給する。
グループワイズインターリーバ24は、パリティインターリーバ23からのLDPC符号を対象として、グループワイズインターリーブを行い、ブロックインターリーバ25に供給する。
ブロックインターリーバ25は、グループワイズインターリーバ24によるグループワイズインターリーブ後のLDPC符号を対象として、ブロックインターリーブを行い、その結果得られるmビットのシンボルを、マッパ117に供給する。
マッパ117は、ステップS103において、ブロックインターリーバ25からのシンボルを、マッパ117で行われる直交変調の変調方式で定める2m個の信号点のいずれかにマッピングして直交変調し、その結果得られるデータを、時間インターリーバ118に供給する。
以上のように、パリティインターリーブや、グループワイズインターリーブを行うことで、LDPC符号の複数の符号ビットを1個のシンボルとして送信する場合のエラーレートを向上(改善)することができる。
ここで、図9では、説明の便宜のため、パリティインターリーブを行うブロックであるパリティインターリーバ23と、グループワイズインターリーブを行うブロックであるグループワイズインターリーバ24とを、別個に構成するようにしたが、パリティインターリーバ23とグループワイズインターリーバ24とは、一体的に構成することができる。
すなわち、パリティインターリーブと、グループワイズインターリーブとは、いずれも、メモリに対する符号ビットの書き込み、及び読み出しによって行うことができ、符号ビットの書き込みを行うアドレス(書き込みアドレス)を、符号ビットの読み出しを行うアドレス(読み出しアドレス)に変換する行列によって表すことができる。
したがって、パリティインターリーブを表す行列と、グループワイズインターリーブを表す行列とを乗算して得られる行列を求めておけば、それらの行列によって、符号ビットを変換することで、パリティインターリーブを行い、さらに、そのパリティインターリーブ後のLDPC符号をグループワイズインターリーブした結果を得ることができる。
また、パリティインターリーバ23とグループワイズインターリーバ24に加えて、ブロックインターリーバ25も、一体的に構成することが可能である。
すなわち、ブロックインターリーバ25で行われるブロックインターリーブも、LDPC符号を記憶するメモリの書き込みアドレスを、読み出しアドレスに変換する行列によって表すことができる。
したがって、パリティインターリーブを表す行列、グループワイズインターリーブを表す行列、及び、ブロックインターリーブを表す行列を乗算して得られる行列を求めておけば、それらの行列によって、パリティインターリーブ、グループワイズインターリーブ、及び、ブロックインターリーブを、一括して行うことができる。
<LDPCエンコーダ115の構成例>
図18は、図8のLDPCエンコーダ115の構成例を示すブロック図である。
なお、図8のLDPCエンコーダ122も、同様に構成される。
図12及び図13で説明したように、DVB-S.2等の規格では、64800ビットと16200ビットとの2通りの符号長NのLDPC符号が規定されている。
そして、符号長Nが64800ビットのLDPC符号については、11個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6,8/9、及び9/10が規定されており、符号長Nが16200ビットのLDPC符号については、10個の符号化率1/4,1/3,2/5,1/2,3/5,2/3,3/4,4/5,5/6、及び8/9が規定されている(図12及び図13)。
LDPCエンコーダ115は、例えば、このような、符号長Nが64800ビットや16200ビットの各符号化率のLDPC符号による符号化(誤り訂正符号化)を、符号長Nごと、及び符号化率ごとに用意された検査行列Hに従って行うことができる。
LDPCエンコーダ115は、符号化処理部601と記憶部602とから構成される。
符号化処理部601は、符号化率設定部611、初期値テーブル読み出し部612、検査行列生成部613、情報ビット読み出し部614、符号化パリティ演算部615、及び制御部616から構成され、LDPCエンコーダ115に供給されるLDPC対象データのLDPC符号化を行い、その結果得られるLDPC符号を、ビットインターリーバ116(図8)に供給する。
すなわち、符号化率設定部611は、例えば、オペレータの操作等に応じて、LDPC符号の符号長Nと符号化率とを設定する。
初期値テーブル読み出し部612は、符号化率設定部611が設定した符号長N及び符号化率に対応する、後述する検査行列初期値テーブルを、記憶部602から読み出す。
検査行列生成部613は、初期値テーブル読み出し部612が読み出した検査行列初期値テーブルに基づいて、符号化率設定部611が設定した符号長N及び符号化率に応じた情報長K(=符号長N-パリティ長M)に対応する情報行列HAの1の要素を列方向に360列(巡回構造の単位の列数P)ごとの周期で配置して検査行列Hを生成し、記憶部602に格納する。
情報ビット読み出し部614は、LDPCエンコーダ115に供給されるLDPC対象データから、情報長K分の情報ビットを読み出す(抽出する)。
符号化パリティ演算部615は、検査行列生成部613が生成した検査行列Hを記憶部602から読み出し、その検査行列Hを用いて、情報ビット読み出し部614が読み出した情報ビットに対するパリティビットを所定の式に基づいて算出することにより、符号語(LDPC符号)を生成する。
制御部616は、符号化処理部601を構成する各ブロックを制御する。
記憶部602には、例えば、64800ビットや16200ビット等の符号長Nそれぞれについての、図12及び図13に示した複数の符号化率等それぞれに対応する複数の検査行列初期値テーブル等が格納されている。また、記憶部602は、符号化処理部601の処理上必要なデータを一時記憶する。
図19は、図18のLDPCエンコーダ115の処理の例を説明するフローチャートである。
ステップS201において、符号化率設定部611は、LDPC符号化を行う符号長N及び符号化率rを決定(設定)する。
ステップS202において、初期値テーブル読み出し部612は、符号化率設定部611により決定された符号長N及び符号化率rに対応する、予め定められた検査行列初期値テーブルを、記憶部602から読み出す。
ステップS203において、検査行列生成部613は、初期値テーブル読み出し部612が記憶部602から読み出した検査行列初期値テーブルを用いて、符号化率設定部611により決定された符号長N及び符号化率rのLDPC符号の検査行列Hを求め(生成し)、記憶部602に供給して格納する。
ステップS204において、情報ビット読み出し部614は、LDPCエンコーダ115に供給されるLDPC対象データから、符号化率設定部611により決定された符号長N及び符号化率rに対応する情報長K(=N×r)の情報ビットを読み出すとともに、検査行列生成部613が求めた検査行列Hを、記憶部602から読み出し、符号化パリティ演算部615に供給する。
ステップS205において、符号化パリティ演算部615は、情報ビット読み出し部614からの情報ビットと検査行列Hとを用い、式(8)を満たす符号語cのパリティビットを順次演算する。
HcT=0
・・・(8)
式(8)において、cは、符号語(LDPC符号)としての行ベクトルを表し、cTは、行ベクトルcの転置を表す。
ここで、上述したように、LDPC符号(1符号語)としての行ベクトルcのうちの、情報ビットの部分を、行ベクトルAで表すとともに、パリティビットの部分を、行ベクトルTで表す場合には、行ベクトルcは、情報ビットとしての行ベクトルAと、パリティビットとしての行ベクトルTとによって、式c =[A|T]で表すことができる。
検査行列Hと、LDPC符号としての行ベクトルc=[A|T]とは、式HcT=0を満たす必要があり、かかる式HcT=0を満たす行ベクトルc=[A|T]を構成するパリティビットとしての行ベクトルTは、検査行列H=[HA|HT]のパリティ行列HTが、図11に示した階段構造になっている場合には、式HcT=0における列ベクトルHcTの1行目の要素から順に、各行の要素を0にしていくようにすることで、逐次的に求めることができる。
符号化パリティ演算部615は、情報ビット読み出し部614からの情報ビットAに対して、パリティビットTを求め、その情報ビットAとパリティビットTとによって表される符号語c =[A|T]を、情報ビットAのLDPC符号化結果として出力する。
その後、ステップS206において、制御部616は、LDPC符号化を終了するかどうかを判定する。ステップS206において、LDPC符号化を終了しないと判定された場合、すなわち、例えば、LDPC符号化すべきLDPC対象データが、まだある場合、処理は、ステップS201(又は、ステップS204)に戻り、以下、ステップS201(又は、ステップS204)ないしS206の処理が繰り返される。
また、ステップS206において、LDPC符号化を終了すると判定された場合、すなわち、例えば、LDPC符号化すべきLDPC対象データがない場合、LDPCエンコーダ115は、処理を終了する。
以上のように、各符号長N、及び、各符号化率rに対応する検査行列初期値テーブルが用意されており、LDPCエンコーダ115は、所定の符号長Nの、所定の符号化率rのLDPC符号化を、その所定の符号長N、及び、所定の符号化率rに対応する検査行列初期値テーブルから生成される検査行列Hを用いて行う。
<検査行列初期値テーブルの例>
検査行列初期値テーブルは、検査行列Hの、LDPC符号(検査行列Hによって定義されるLDPC符号)の符号長N及び符号化率rに応じた情報長Kに対応する情報行列HA(図10)の1の要素の位置を360列(巡回構造の単位の列数P)ごとに表すテーブルであり、各符号長N及び各符号化率rの検査行列Hごとに、あらかじめ作成される。
図20は、検査行列初期値テーブルの例を示す図である。
すなわち、図20は、DVB-T.2の規格に規定されている、符号長Nが16200ビットの、符号化率(DVB-T.2の表記上の符号化率)rが1/4の検査行列Hに対する検査行列初期値テーブルを示している。
検査行列生成部613(図18)は、検査行列初期値テーブルを用いて、以下のように、検査行列Hを求める。
図21は、検査行列初期値テーブルから検査行列Hを求める方法を説明する図である。
すなわち、図21は、DVB-T.2の規格に規定されている、符号長Nが16200ビットの、符号化率rが2/3の検査行列Hに対する検査行列初期値テーブルを示している。
検査行列初期値テーブルは、上述したように、LDPC符号の符号長N及び符号化率rに応じた情報長Kに対応する情報行列HA(図10)の1の要素の位置を、360列(巡回構造の単位の列数P)ごとに表すテーブルであり、そのi行目には、検査行列Hの1+360×(i-1)列目の1の要素の行番号(検査行列Hの1行目の行番号を0とする行番号)が、その1+360×(i-1)列目の列が持つ列重みの数だけ並んでいる。
ここで、検査行列Hの、パリティ長Mに対応するパリティ行列HT(図10)は、図15に示したように決まっているので、検査行列初期値テーブルによれば、検査行列Hの、情報長Kに対応する情報行列HA(図10)が求められる。
検査行列初期値テーブルの行数k+1は、情報長Kによって異なる。
情報長Kと、検査行列初期値テーブルの行数k+1との間には、式(9)の関係が成り立つ。
K=(k+1)×360
・・・(9)
ここで、式(9)の360は、図16で説明した巡回構造の単位の列数Pである。
図21の検査行列初期値テーブルでは、1行目から3行目までに、13個の数値が並び、4行目からk+1行目(図21では、30行目)までに、3個の数値が並んでいる。
したがって、図21の検査行列初期値テーブルから求められる検査行列Hの列重みは、1列目から、1+360×(3-1)-1列目までは、13であり、1+360×(3-1)列目から、K列目までは、3である。
図21の検査行列初期値テーブルの1行目は、0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622となっており、これは、検査行列Hの1列目において、行番号が、0,2084,1613,1548,1286,1460,3196,4297,2481,3369,3451,4620,2622の行の要素が1であること(かつ、他の要素が0であること)を示している。
また、図21の検査行列初期値テーブルの2行目は、1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108となっており、これは、検査行列Hの361(=1+360×(2−1))列目において、行番号が、1,122,1516,3448,2880,1407,1847,3799,3529,373,971,4358,3108の行の要素が1であることを示している。
以上のように、検査行列初期値テーブルは、検査行列Hの情報行列HAの1の要素の位置を360列ごとに表す。
検査行列Hの1+360×(i-1)列目以外の列、つまり、2+360×(i-1)列目から、360×i列目までの各列は、検査行列初期値テーブルによって定まる1+360×(i-1)列目の1の要素を、パリティ長Mに従って下方向(列の下方向)に、周期的にサイクリックシフトして配置したものになっている。
すなわち、例えば、2+360×(i-1)列目は、1+360×(i-1)列目を、M/360(=q)だけ下方向にサイクリックシフトしたものとなっており、次の3+360×(i-1)列目は、1+360×(i-1)列目を、2×M/360(=2×q)だけ下方向にサイクリックシフトしたもの(2+360×(i-1)列目を、M/360(=q)だけ下方向にサイクリックシフトしたもの)となっている。
いま、検査行列初期値テーブルのi行目(上からi番目)のj列目(左からj番目)の数値を、hi,jと表すとともに、検査行列Hのw列目の、j個目の1の要素の行番号を、Hw-jと表すこととすると、検査行列Hの1+360×(i-1)列目以外の列であるw列目の、1の要素の行番号Hw-jは、式(10)で求めることができる。
Hw-j=mod{hi,j+mod((w-1),P)×q,M)
・・・(10)
ここで、mod(x,y)はxをyで割った余りを意味する。
また、Pは、上述した巡回構造の単位の列数であり、例えば、DVB-S.2,DVB-T.2、及び、DVB-C.2の規格では、上述のように、360である。さらに、qは、パリティ長Mを、巡回構造の単位の列数P(=360)で除算することにより得られる値M/360である。
検査行列生成部613(図18)は、検査行列初期値テーブルによって、検査行列Hの1+360×(i-1)列目の1の要素の行番号を特定する。
さらに、検査行列生成部613(図18)は、検査行列Hの1+360×(i-1)列目以外の列であるw列目の、1の要素の行番号Hw-jを、式(10)に従って求め、以上により得られた行番号の要素を1とする検査行列Hを生成する。
<新LDPC符号>
ところで、現在、ATSC3.0と呼ばれる、地上波のディジタルテレビジョン放送の規格が策定中である。
そこで、ATSC3.0その他のデータ伝送において用いることができる、新たなLDPC符号(以下、新LDPC符号ともいう)について説明する。
なお、新LDPC符号については、DVB-T.2等との親和性(compatibility)を、なるべく維持する観点から、DVB-T.2等に規定されているLDPC符号と同様に、検査行列Hのパリティ行列HTは、階段構造とする(図11)。
さらに、新LDPC符号については、DVB-T.2等に規定されているLDPC符号と同様に、検査行列Hの情報行列HAは、巡回構造とし、巡回構造の単位の列数Pは、360とする。
LDPCエンコーダ115(図8、図18)は、以下のような、符号長Nが16kビット又は64kビットで、符号化率rが6,15,7/15,8/15,9/15,10/15,11/15,12/15、若しくは、13/15のうちのいずれかの新LDPC符号の検査行列初期値テーブルから求められる検査行列Hを用いて、新LDPC符号へのLDPC符号化を行うことができる。
この場合、LDPCエンコーダ115(図8)の記憶部602には、新LDPC符号の検査行列初期値テーブルが記憶される。
図22、図23、及び、図24は、符号長Nが64kビットで、符号化率rが7/15の第1の新LDPC符号(以下、(64k,7/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図23は、図22に続く図であり、図24は、図23に続く図である。
図25、図26、及び、図27は、符号長Nが64kビットで、符号化率rが9/15の第1の新LDPC符号(以下、(64k,9/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図26は、図25に続く図であり、図27は、図26に続く図である。
図28、図29、及び、図30は、符号長Nが64kビットで、符号化率rが11/15の第1の新LDPC符号(以下、(64k,11/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図29は、図28に続く図であり、図30は、図29に続く図である。
図31、図32、及び、図33は、符号長Nが64kビットで、符号化率rが13/15の第1の新LDPC符号(以下、(64k,13/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図32は、図31に続く図であり、図33は、図32に続く図である。
図34は、符号長Nが16kビットで、符号化率rが6/15の第1の新LDPC符号(以下、(16k,6/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図35は、符号長Nが16kビットで、符号化率rが8/15の第1の新LDPC符号(以下、(16k,8/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図36は、符号長Nが16kビットで、符号化率rが10/15の第1の新LDPC符号(以下、(16k,10/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図37は、符号長Nが16kビットで、符号化率rが12/15の第1の新LDPC符号(以下、(16k,12/15)の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図38は、符号長Nが16kビットで、符号化率rが10/15の他の第1の新LDPC符号(以下、(16k,10/15)の他の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図39は、符号長Nが16kビットで、符号化率rが12/15の他の第1の新LDPC符号(以下、(16k,12/15)の他の第1の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図40、及び、図41は、符号長Nが64kビットで、符号化率rが6/15の第2の新LDPC符号(以下、(64k,6/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図41は、図40に続く図である。
図42、図43、及び、図44は、符号長Nが64kビットで、符号化率rが8/15の第2の新LDPC符号(以下、(64k,8/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図43は、図42に続く図であり、図44は、図43に続く図である。
図45、図46、及び、図47は、符号長Nが64kビットで、符号化率rが10/15の第2の新LDPC符号(以下、(64k,10/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図46は、図45に続く図であり、図47は、図46に続く図である。
図48、図49、及び、図50は、符号長Nが64kビットで、符号化率rが12/15の第2の新LDPC符号(以下、(64k,12/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図49は、図48に続く図であり、図50は、図49に続く図である。
図51は、符号長Nが16kビットで、符号化率rが7/15の第2の新LDPC符号(以下、(16k,7/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図52は、符号長Nが16kビットで、符号化率rが9/15の第2の新LDPC符号(以下、(16k,9/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図53は、符号長Nが16kビットで、符号化率rが11/15の第2の新LDPC符号(以下、(16k,11/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
図54は、符号長Nが16kビットで、符号化率rが13/15の第2の新LDPC符号(以下、(16k,13/15)の第2の新LDPC符号ともいう)の検査行列Hに対する検査行列初期値テーブルを示す図である。
なお、図40ないし図54の第2のLDPC符号(の検査行列Hに対する検査行列初期値テーブル)は、Samsungより提供されたLDPC符号である。
第1の新LDPC符号、及び、他の第1の新LDPC符号は、性能の良いLDPC符号になっている。
ここで、性能の良いLDPC符号とは、適切な検査行列Hから得られるLDPC符号である。
また、適切な検査行列Hとは、検査行列Hから得られるLDPC符号を、低いEs/N0、又はEb/No(1ビットあたりの信号電力対雑音電力比)で送信したときに、BER(及びFER)をより小にする、所定の条件を満たす検査行列である。
適切な検査行列Hは、例えば、所定の条件を満たす様々な検査行列から得られるLDPC符号を、低いEs/Noで送信したときのBERを計測するシミュレーションを行うことにより求めることができる。
適切な検査行列Hが満たすべき所定の条件としては、例えば、デンシティエボリューション(Density Evolution)と呼ばれる符号の性能の解析法で得られる解析結果が良好であること、サイクル4と呼ばれる、1の要素のループが存在しないこと、等がある。
ここで、情報行列HAにおいて、サイクル4のように、1の要素が密集していると、LDPC符号の復号性能が劣化することが知られており、このため、適切な検査行列Hが満たすべき所定の条件として、サイクル4が存在しないことが要求される。
なお、適切な検査行列Hが満たすべき所定の条件は、LDPC符号の復号性能の向上や、LDPC符号の復号処理の容易化(単純化)等の観点から適宜決定することができる。
図55及び図56は、適切な検査行列Hが満たすべき所定の条件としての解析結果が得られるデンシティエボリューションを説明する図である。
デンシティエボリューションとは、後述するデグリーシーケンス(degree sequence)で特徴付けられる符号長Nが∞のLDPC符号全体(アンサンブル(ensemble))に対して、そのエラー確率の期待値を計算する、符号の解析法である。
例えば、AWGNチャネル上で、ノイズの分散値を0からどんどん大きくしていくと、あるアンサンブルのエラー確率の期待値は、最初は0であるが、ノイズの分散値が、ある閾値(threshold)以上となると、0ではなくなる。
デンシティエボリューションによれば、そのエラー確率の期待値が0ではなくなる、ノイズの分散値の閾値(以下、性能閾値ともいう)を比較することで、アンサンブルの性能(検査行列の適切さ)の良し悪しを決めることができる。
なお、具体的なLDPC符号に対して、そのLDPC符号が属するアンサンブルを決定し、そのアンサンブルに対してデンシティエボリューションを行うと、そのLDPC符号のおおまかな性能を予想することができる。
したがって、性能の良いLDPC符号は、性能の良いアンサンブルを見つければ、そのアンサンブルに属するLDPC符号の中から見つけることができる。
ここで、上述のデグリーシーケンスとは、LDPC符号の符号長Nに対して、各値の重みをもつバリアブルノードやチェックノードがどれくらいの割合だけあるかを表す。
例えば、符号化率が1/2のregular(3,6)LDPC符号は、すべてのバリアブルノードの重み(列重み)が3で、すべてのチェックノードの重み(行重み)が6であるというデグリーシーケンスによって特徴付けられるアンサンブルに属する。
図55は、そのようなアンサンブルのタナーグラフ(Tanner graph)を示している。
図55のタナーブラフでは、図中丸印(○印)で示すバリアブルノードが、符号長Nに等しいN個だけ存在し、図中四角形(□印)で示すチェックノードが、符号長Nに符号化率1/2を乗算した乗算値に等しいN/2個だけ存在する。
各バリアブルノードには、列重みに等しい3本の枝(edge)が接続されており、したがって、N個のバリアブルノードに接続している枝は、全部で、3N本だけ存在する。
また、各チェックノードには、行重みに等しい6本の枝が接続されており、したがって、N/2個のチェックノードに接続している枝は、全部で、3N本だけ存在する。
さらに、図55のタナーグラフでは、1つのインターリーバが存在する。
インターリーバは、N個のバリアブルノードに接続している3N本の枝をランダムに並べ替え、その並べ替え後の各枝を、N/2個のチェックノードに接続している3N本の枝のうちのいずれかに繋げる。
インターリーバでの、N個のバリアブルノードに接続している3N本の枝を並べ替える並べ替えパターンは、(3N)!(=(3N)×(3N-1)×・・・×1)通りだけある。したがって、すべてのバリアブルノードの重みが3で、すべてのチェックノードの重みが6であるというデグリーリーケンスによって特徴付けられるアンサンブルは、(3N)!個のLDPC符号の集合となる。
性能の良いLDPC符号(適切な検査行列)を求めるシミュレーションでは、デンシティエボリューションにおいて、マルチエッジタイプ(multi-edge type)のアンサンブルを用いた。
マルチエッジタイプでは、バリアブルノードに接続している枝と、チェックノードに接続している枝とが経由するインターリーバが、複数(multi edge)に分割され、これにより、アンサンブルの特徴付けが、より厳密に行われる。
図56は、マルチエッジタイプのアンサンブルのタナーグラフの例を示している。
図56のタナーグラフでは、第1インターリーバと第2インターリーバとの2つのインターリーバが存在する。
また、図56のタナーグラフでは、第1インターリーバに繋がる枝が1本で、第2インターリーバに繋がる枝が0本のバリアブルノードがv1個だけ、第1インターリーバに繋がる枝が1本で、第2インターリーバに繋がる枝が2本のバリアブルノードがv2個だけ、第1インターリーバに繋がる枝が0本で、第2インターリーバに繋がる枝が2本のバリアブルノードがv3個だけ、それぞれ存在する。
さらに、図56のタナーグラフでは、第1インターリーバに繋がる枝が2本で、第2インターリーバに繋がる枝が0本のチェックノードがc1個だけ、第1インターリーバに繋がる枝が2本で、第2インターリーバに繋がる枝が2本のチェックノードがc2個だけ、第1インターリーバに繋がる枝が0本で、第2インターリーバに繋がる枝が3本のチェックノードがc3個だけ、それぞれ存在する。
ここで、デンシティエボリューションと、その実装については、例えば、"On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit", S.Y.Chung, G.D.Forney, T.J.Richardson,R.Urbanke, IEEE Communications Leggers, VOL.5, NO.2, Feb 2001に記載されている。
第1の新LDPC符号及び、他の第1の新LDPC符号(の検査行列初期値テーブル)を求めるシミュレーションでは、マルチエッジタイプのデンシティエボリューションによって、BERが落ち始める(小さくなっていく)Eb/N0(1ビットあたりの信号電力対雑音電力比)である性能閾値が、所定値以下になるアンサンブルを見つけ、そのアンサンブルに属するLDPC符号の中から、QPSK等の1以上の直交変調を用いた場合のBERを小さくするLDPC符号を、性能の良いLDPC符号として選択した。
上述の第1の新LDPC符号及び、他の第1の新LDPC符号の検査行列初期値テーブルは、以上のようなシミュレーションにより求められた。
したがって、かかる検査行列初期値テーブルから得られる第1の新LDPC符号及び、他の第1の新LDPC符号によれば、データ伝送において、良好な通信品質を確保することができる。
図57は、図22ないし図33の(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列初期値テーブルから求められる検査行列H(以下、「(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列H」のようにも記載する)の最小サイクル長と性能閾値とを示す図である。
ここで、最小サイクル長(girth)とは、検査行列Hにおいて、1の要素によって構成されるループの長さ(ループ長)の最小値を意味する。
(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列初期値テーブルから求められる検査行列Hには、いずれにも、サイクル4(ループ長が4の、1の要素のループ)は、存在しない。
また、(64k,7/15)の第1の新LDPC符号の性能閾値は、-0.093751に、(64k,9/15)の第1の新LDPC符号の性能閾値は、1.658523に、(64k,11/15)の第1の新LDPC符号の性能閾値は、3.351930に、(64k,13/15)の第1の新LDPC符号の性能閾値は、5.301749に、それぞれなっている。
図58は、図22ないし図33の(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列Hを説明する図である。
(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列Hの1列目からのKX1列については、列重みがX1に、その後のKX2列については、列重みがX2に、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX1+KX2+KY1+KY2+M-1+1は、(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の符号長N=64800ビットに等しい。
図59は、(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列Hの、図58の列数KX1,KX2,KY1,KY2、及びM、並びに、列重みX1,X2,Y1、及び、Y2を示す図である。
(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い(エラーに対する耐性がある)傾向がある。
図60は、(64k,7/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FER(Bit Error Rate/Frame Error Rate)を計測するシミュレーションのシミュレーション結果を示す図である。
図61は、(64k,9/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図62は、(64k,11/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図63は、(64k,13/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図60ないし図63において、横軸は、Es/N0を表し、縦軸は、BER/FERを表す。なお、実線がBERを表し、点線がFERを表す。
図60ないし図63によれば、(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号について、良好なBER/FERが得られており、したがって、(64k,7/15),(64k,9/15),(64k,11/15)、及び、(64k,13/15)の第1の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
図64は、図34ないし図37の(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列Hの最小サイクル長と性能閾値とを示す図である。
(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列初期値テーブルから求められる検査行列Hには、いずれにも、サイクル4は、存在しない。
また、(16k,6/15)の第1の新LDPC符号の性能閾値は、0.01に、(16k,8/15)の第1の新LDPC符号の性能閾値は、0.805765に、(16k,10/15)の第1の新LDPC符号の性能閾値は、2.471011に、(16k,12/15)の第1の新LDPC符号の性能閾値は、4.269922に、それぞれなっている。
図65は、図34ないし図37の(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列Hを説明する図である。
(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列Hの1列目からのKX1列については、列重みがX1に、その後のKX2列については、列重みがX2に、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX1+KX2+KY1+KY2+M-1+1は、(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の符号長N=16200ビットに等しい。
図66は、(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列Hの、図65の列数KX1,KX2,KY1,KY2、及びM、並びに、列重みX1,X2,Y1、及び、Y2を示す図である。
(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い傾向がある。
図67は、(16k,6/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FER(Bit Error Rate/Frame Error Rate)を計測するシミュレーションのシミュレーション結果を示す図である。
図68は、(16k,8/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図69は、(16k,10/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図70は、(16k,12/15)の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図67ないし図70において、横軸は、Es/N0を表し、縦軸は、BER/FERを表す。なお、実線がBERを表し、点線がFERを表す。
図67ないし図70によれば、(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号について、良好なBER/FERが得られており、したがって、(16k,6/15),(16k,8/15),(16k,10/15)、及び、(16k,12/15)の第1の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
図71は、図38の(16k,10/15)の他の第1の新LDPC符号の検査行列Hの最小サイクル長と性能閾値とを示す図である。
(16k,10/15)の他の第1の新LDPC符号の検査行列初期値テーブルから求められる検査行列Hには、サイクル4は、存在しない。
(16k,10/15)の他の第1の新LDPC符号の性能閾値は、1.35になっている。
図72は、(16k,10/15)の他の第1の新LDPC符号の検査行列Hを説明する図である。
(16k,10/15)の他の第1の新LDPC符号の検査行列Hの1列目からのKX列については、列重みがXに、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX+KY1+KY2+M-1+1は、(16k,10/15)の他の第1の新LDPC符号の符号長N=16200ビットに等しい。
図73は、(16k,10/15)の他の第1の新LDPC符号の検査行列Hの、図72の列数KX,KY1,KY2、及びM、並びに、列重みX,Y1、及び、Y2を示す図である。
(16k,10/15)の他の第1の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い傾向がある。
図74は、(16k,10/15)の他の第1の新LDPC符号について、変調方式としてBPSKを採用して行った、BERを計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図74において、横軸は、Es/N0を表し、縦軸は、BERを表す。
図74によれば、(16k,10/15)の他の第1の新LDPC符号について、良好なBERが得られており、したがって、(16k,10/15)の他の第1の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
図75は、図39の(16k,12/15)の他の第1の新LDPC符号の検査行列Hの最小サイクル長と性能閾値とを示す図である。
(16k,12/15)の他の第1の新LDPC符号の検査行列初期値テーブルから求められる検査行列Hには、サイクル4は、存在しない。
また、(16k,12/15)の他の第1の新LDPC符号の性能閾値は、4.237556になっている。
図76は、図39の(16k,12/15)の他の第1の新LDPC符号の検査行列Hを説明する図である。
(16k,12/15)の他の第1の新LDPC符号の検査行列Hの1列目からのKX1列については、列重みがX1に、その後のKX2列については、列重みがX2に、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX1+KX2+KY1+KY2+M-1+1は、(16k,12/15)の他の第1の新LDPC符号の符号長N=16200ビットに等しい。
図77は、(16k,12/15)の他の第1の新LDPC符号の検査行列Hの、図76の列数KX1,KX2,KY1,KY2、及びM、並びに、列重みX1,X2,Y1、及び、Y2を示す図である。
(16k,12/15)の他の第1の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い傾向がある。
図78は、(16k,12/15)の他の第1の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FER(Bit Error Rate/Frame Error Rate)を計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図78において、横軸は、Es/N0を表し、縦軸は、BER/FERを表す。なお、実線がBERを表し、点線がFERを表す。
図78によれば、(16k,12/15)の他の第1の新LDPC符号について、良好なBER/FERが得られており、したがって、(16k,12/15)の他の第1の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
図79は、図40ないし図50の(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号の検査行列Hを説明する図である。
(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号の検査行列Hの1列目からのKX1列については、列重みがX1に、その後のKX2列については、列重みがX2に、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX1+KX2+KY1+KY2+M-1+1は、(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号の符号長N=64800ビットに等しい。
図80は、(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号の検査行列Hの、図79の列数KX1,KX2,KY1,KY2、及びM、並びに、列重みX1,X2,Y1、及び、Y2を示す図である。
(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い傾向がある。
図81は、(64k,6/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図82は、(64k,8/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図83は、(64k,10/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図84は、(64k,12/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図81ないし図84において、横軸は、Es/N0を表し、縦軸は、BER/FERを表す。なお、実線がBERを表し、点線がFERを表す。
図81ないし図84によれば、(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号について、良好なBER/FERが得られており、したがって、(64k,6/15),(64k,8/15),(64k,10/15)、及び、(64k,12/15)の第2の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
図85は、図51ないし図54の(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号の検査行列Hを説明する図である。
(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号の検査行列Hの1列目からのKX1列については、列重みがX1に、その後のKX2列については、列重みがX2に、その後のKY1列については、列重みがY1に、その後のKY2列については、列重みがY2に、その後のM-1列については、列重みが2に、最後の1列については、列重みが1に、それぞれなっている。
ここで、KX1+KX2+KY1+KY2+M-1+1は、(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号の符号長N=16200ビットに等しい。
図86は、(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号の検査行列Hの、図85の列数KX1,KX2,KY1,KY2、及びM、並びに、列重みX1,X2,Y1、及び、Y2を示す図である。
(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号の検査行列Hについては、図12及び図13で説明した検査行列と同様に、先頭側(左側)の列ほど、列重みが大の傾向にあり、したがって、新LDPC符号の先頭の符号ビットほど、エラーに強い傾向がある。
図87は、(16k,7/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図88は、(16k,9/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図89は、(16k,11/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
図90は、(16k,13/15)の第2の新LDPC符号について、変調方式としてQPSKを採用して行った、BER/FERを計測するシミュレーションのシミュレーション結果を示す図である。
シミュレーションでは、LDPC符号を復号する際の繰り返し復号回数Cとして、50回を採用するとともに、通信路13(図7)として、AWGNチャネルを想定した。
図87ないし図90において、横軸は、Es/N0を表し、縦軸は、BER/FERを表す。なお、実線がBERを表し、点線がFERを表す。
図87ないし図90によれば、(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号について、良好なBER/FERが得られており、したがって、(16k,7/15),(16k,9/15),(16k,11/15)、及び、(16k,13/15)の第2の新LDPC符号を用いたデータ伝送において、良好な通信品質が確保されることを確認することができる。
なお、図79ないし図90は、Samsungより提供されたデータに基づく。
<コンスタレーション>
図91は、図7の伝送システムで採用するコンスタレーションの種類の例を示す図である。
図7の伝送システムでは、例えば、ATSC3.0で採用予定のコンスタレーションを採用することができる。
図91は、ATSC3.0で採用予定の(IQ)コンスタレーションの種類を示している。
ATSC3.0では、変調方式とLDPC符号との組み合わせであるMODCODに対して、そのMODCODで使用するコンスタレーションが設定される。
ここで、ATSC3.0では、QPSK,16QAM,64QAM,256QAM、及び、1024QAM(1kQAM)の5種類の変調方式が採用予定である。
また、ATSC3.0では、16kビットと64kビットとの2種類の符号長Nそれぞれについて、6/15,7/15,8/15,9/15,10/15,11/15,12,15、及び、13/15の8種類の符号化率rのLDPC符号、すなわち、16種類のLDPC符号の採用が予定されている。
ATSC3.0では、16種類のLDPC符号を、符号化率rによって、(符号長Nによらない)8種類に分類し、その8種類のLDPC符号(符号化率rが、6/15,7/15,8/15,9/15,10/15,11/15,12,15、及び、13/15のLDPC符号それぞれ)と、5種類の変調方式との40(=8×5)種類の組み合わせを、コンスタレーションの設定が可能なMODCODとして採用することが予定されている。
したがって、ATSC3.0では、MODCODは、LDPC符号の8種類の符号化率rと、5種類の変調方式との組み合わせを表す。
図91において、"NUC Shape"の欄に記載されている、例えば、"NUC_16_6/15"等が、その"NUC Shape"の欄の行に対応するMODCODに使用するコンスタレーションを表す。
ここで、例えば、"NUC_16_6/15"は、変調方式が16QAMであり、LDPC符号の符号化率rが6/15のMODCODで使用するコンスタレーションを表す。
図91によれば、変調方式がQPSKである場合には、LDPC符号の8種類の符号化率rについて、同一のコンスタレーションが使用される。
また、図91によれば、変調方式が、16QAM,64QAM,256QAM、又は、1024QAMである場合には、LDPC符号の8種類の符号化率rそれぞれごとに異なるコンスタレーションが使用される。
したがって、ATSC3.0では、QPSKについては、1種類のコンスタレーションが用意され、16QAM,64QAM,256QAM、及び、1024QAMについては、それぞれ、8種類のコンスタレーションが用意されている。
ここで、コンスタレーションには、信号点の配置が一様になっているUC(Uniform Constellation)と、一様になっていないNUC(Non Uniform Constellation)とがある。
また、NUCには、例えば、1D NUC(1-dimensional M2-QAM non-uniform constellation)と呼ばれるコンスタレーションや、2D NUC(2-dimensional QQAM non-uniform constellation)と呼ばれるコンスタレーション等がある。
QPSKのコンスタレーションとしては、UCが採用される。また、16QAM,64QAM、及び、256QAMのコンスタレーションとしては、例えば、2D NUCが採用され。1024QAMのコンスタレーションとしては、例えば、1D NUCが採用される。
図92は、変調方式が16QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。
図93は、変調方式が64QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。
図94は、変調方式が256QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。
図95は、変調方式が1024QAMである場合のLDPC符号の8種類の符号化率rそれぞれに対するコンスタレーションの例を示す図である。
図92ないし図95において、横軸及び縦軸は、それぞれ、I軸及びQ軸であり、Re{xl}及びIm{xl}は、それぞれ、信号点xlの座標としての、信号点xlのリアルパート及びイマジナリパートを表す。
また、図92ないし図95において、"for CR"の後に記載されている数値は、LDPC符号の符号化率rを表す。
なお、LDPC符号の符号化率rが、7/15,9/15,11/15、及び、13/15のコンスタレーションは、Samsungより提供されたデータに基づく。
図96は、変調方式が16QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。
図97は、変調方式が64QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。
図98は、変調方式が256QAMである場合のコンスタレーションとして、UC,1D NUC、及び、2D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。
図99は、変調方式が1024QAMである場合のコンスタレーションとして、UC、及び、1D NUCのそれぞれを使用した場合のBERを計測するシミュレーションのシミュレーション結果を示す図である。
図96ないし図99において、横軸は、SNR(Signal to Noise Ratio)を表し、縦軸は、BERを表す。
変調方式が、16QAM,64QAM、又は、256QAMである場合には、図96ないし図98に示すように、UCよりも1D NUCの方が、BERが改善し、さらに、1D NUCよりも2D NUCの方が、BERが改善することを確認することができる。
また、変調方式が、1024QAMである場合には、図99に示すように、UCよりも1D NUCの方が、BERが改善することを確認することができる。
図100は、変調方式がQPSKである場合に、LDPC符号の8種類の符号化率r(=6/15,7/15,8/15,9/15,10/15,11/15,12,15、及び、13/15)について共通に使用されるUCの信号点の座標を示す図である。
図100において、"Input cell word y"は、QPSKのUCにマッピングする2ビットのシンボルを表し、"Constellation point zq"は、信号点zqの座標を表す。なお、信号点zqのインデクスqは、シンボルの離散時間(あるシンボルと次のシンボルとの間の時間間隔)を表す。
図100では、信号点zqの座標は、複素数の形で表されており、iは、虚数単位(√(-1))を表す。
図101は、変調方式が16QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。
図102は、変調方式が64QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。
図103は、変調方式が256QAMである場合に、LDPC符号の8種類の符号化率rについて使用される2D NUCの信号点の座標を示す図である。
図101ないし図103において、NUC_2m_rは、変調方式が2mQAMで、LDPC符号の符号化率がrである場合に使用される2D NUCの信号点の座標を表す。
図101ないし図103では、図100と同様に、信号点zqの座標は、複素数の形で表されており、iは、虚数単位を表す。
図101ないし図103において、w#kは、コンスタレーションの第1象限の信号点の座標を表す。
2D NUCにおいて、コンスタレーションの第2象限の信号点は、第1象限の信号点を、Q軸に対して対称に移動した位置に配置され、コンスタレーションの第3象限の信号点は、第1象限の信号点を、原点に対して対称に移動した位置に配置される。そして、コンスタレーションの第4象限の信号点は、第1象限の信号点を、I軸に対して対称に移動した位置に配置される。
ここで、変調方式が2mQAMである場合には、mビットを1個のシンボルとして、その1個のシンボルが、そのシンボルに対応する信号点にマッピングされる。
mビットのシンボルは、例えば、0ないし2m-1の整数値で表現されるが、いま、b=2m/4とすると、0ないし2m-1の整数値で表現されるシンボルy(0),y(1),・・・,y(2m-1)は、シンボルy(0)ないしy(b-1),y(b)ないしy(2b-1),y(2b)ないしy(3b-1)、及び、y(3b)ないしy(4b-1)の4つに分類することができる。
図101ないし図103において、w#kのサフィックスkは、0ないしb-1の範囲の整数値をとり、w#kは、シンボルy(0)ないしy(b-1)の範囲のシンボルy(k)に対応する信号点の座標を表す。
そして、シンボルy(b)ないしy(2b-1)の範囲のシンボルy(k+b)に対応する信号点の座標は、-conj(w#k)で表され、シンボルy(2b)ないしy(3b-1)の範囲のシンボルy(k+2b)に対応する信号点の座標は、conj(w#k)で表される。また、シンボルy(3b)ないしy(4b-1)の範囲のシンボルy(k+3b)に対応する信号点の座標は、-w#kで表される。
ここで、conj(w#k)は、w#kの複素共役を表す。
例えば、変調方式が16QAMである場合には、m=4ビットのシンボルy(0),y(1),・・・,y(15)は、b=24/4=4として、シンボルy(0)ないしy(3),y(4)ないしy(7),y(8)ないしy(11)、及び、y(12)ないしy(15)の4つに分類される。
そして、シンボルy(0)ないしy(15)のうちの、例えば、シンボルy(12)は、シンボルy(3b)ないしy(4b-1)の範囲のシンボルy(k+3b)=y(0+3×4)であり、k=0であるから、シンボルy(12)に対応する信号点の座標は、-w#k=-w0となる。
いま、LDPC符号の符号化率rが、例えば、9/15であるとすると、図101によれば、変調方式が16QAMで、符号化率rが、9/15である場合(NUC_16_9/15)のw0は、0.4909+1.2007iであるので、シンボルy(12)に対応する信号点の座標-w0は、-(0.4909+1.2007i)となる。
図104は、変調方式が1024QAMである場合に、LDPC符号の8種類の符号化率rについて使用される1D NUCの信号点の座標を示す図である。
図104において、NUC_1k_rの列は、変調方式が1024QAMで、LDPC符号の符号化率がrである場合に使用される1D NUCの信号点の座標を表すu#kがとる値を表す。
u#kは、1D NUCの信号点zqの座標としての複素数のリアルパートRe(zq)及びイマジナリパートIm(zq)を表す。
図105は、シンボルyと、そのシンボルyに対応する1D NUCの信号点zqの座標を表す複素数のリアルパートRe(zq)及びイマジナリパートIm(zq)それぞれとしてのu#kとの関係を示す図である。
いま、1024QAMの10ビットのシンボルyを、その先頭のビット(最上位ビット)から、y0,q,y1,q,y2,q,y3,q,y4,q,y5,q,y6,q,y7,q,y8,q,y9,qと表すこととする。
図105のAは、シンボルyの奇数番目の5ビットy0,q,y2,q,y4,q,y6,q,y8,qと、そのシンボルyに対応する信号点zqの(座標の)リアルパートRe(zq)を表すu#kとの対応関係を表している。
図105のBは、シンボルyの偶数番目の5ビットy1,q,y3,q,y5,q,y7,q,y9,qと、そのシンボルyに対応する信号点zqの(座標の)イマジナリパートIm(zq)を表すu#kとの対応関係を表している。
1024QAMの10ビットのシンボルy=(y0,q,y1,q,y2,q,y3,q,y4,q,y5,q,y6,q,y7,q,y8,q,y9,q)が、例えば、(0,0,1,0,0,1,1,1,0,0)である場合、奇数番目の5ビット(y0,q,y2,q,y4,q,y6,q,y8,q)は、(0,1,0,1,0)であり、偶数番目の5ビット(y1,q,y3,q,y5,q,y7,q,y9,q)は、(0,0,1,1,0)である。
図105のAでは、奇数番目の5ビット(0,1,0,1,0)は、u3に対応付けられており、したがって、シンボルy=(0,0,1,0,0,1,1,1,0,0)に対応する信号点zqのリアルパートRe(zq)は、u3になる。
また、図105のBでは、偶数番目の5ビット(0,0,1,1,0)は、u11に対応付けられており、したがって、シンボルy=(0,0,1,0,0,1,1,1,0,0)に対応する信号点zqのイマジナリパートIm(zq)は、u11になる。
一方、LDPC符号の符号化率rが、例えば、7/15であるとすると、上述の図104によれば、変調方式が1024QAMで、LDPC符号の符号化率r7/15である場合に使用される1D NUC(NUC_1k_7/15)については、u3は、1.04であり、u11は、6.28である。
したがって、シンボルy=(0,0,1,0,0,1,1,1,0,0)に対応する信号点zqのリアルパートRe(zq)は、u3=1.04になり、Im(zq)は、u11=6.28になる。その結果、シンボルy=(0,0,1,0,0,1,1,1,0,0)に対応する信号点zqの座標は、1.04+6.28iで表される。
なお、1D NUCの信号点は、I軸に平行な直線上やQ軸に平行な直線上に、格子状に並ぶ。但し、信号点どうしの間隔は、一定にはならない。また、信号点(にマッピングされたデータ)の送信にあたって、コンスタレーション上の信号点の平均電力は正規化される。正規化は、コンスタレーション上の信号点(の座標)のすべてについての絶対値の自乗平均値をPaveと表すこととすると、その自乗平均値Paveの平方根√Paveの逆数1/(√Pave)を、コンスタレーション上の各信号点zqに乗算することによって行われる。
図92ないし図105で説明したコンスタレーションによれば、良好なエラーレートが得られることが確認されている。
<ブロックインターリーバ25>
図106は、図9のブロックインターリーバ25の構成例を示すブロック図である。
ブロックインターリーバ25は、パート1(part 1)と呼ばれる記憶領域と、パート2(part 2)と呼ばれる記憶領域とを有する。
パート1及び2は、いずれも、ロウ(横)方向に、1ビットを記憶し、カラム(縦)方向に所定のビット数を記憶する記憶領域としてのカラム(column)が、ロウ方向に、シンボルのビット数mに等しい数Cだけ並んで構成される。
パート1のカラムがカラム方向に記憶するビット数(以下、パートカラム長ともいう)を、R1と表すとともに、パート2のカラムのパートカラム長を、R2と表すこととすると、(R1+R2)×Cは、ブロックインターリーブの対象のLDPC符号の符号長N(本実施の形態では、64800ビット、又は、16200ビット)に等しい。
また、パートカラム長R1は、巡回構造の単位の列数Pである360ビットの倍数に等しく、パートカラム長R2は、パート1のパートカラム長R1とパート2のパートカラム長R2との和(以下、カラム長ともいう)R1+R2を、巡回構造の単位の列数Pである360ビットで除算したときの剰余に等しい。
ここで、カラム長R1+R2は、ブロックインターリーブの対象のLDPC符号の符号長Nを、シンボルのビット数mで除算した値に等しい。
例えば、符号長Nが16200ビットのLDPC符号について、変調方式として、16QAMを採用する場合には、シンボルのビット数mは、4ビットであるから、カラム長R1+R2は、4050(=16200/4)ビットになる。
さらに、カラム長R1+R2=4050を、巡回構造の単位の列数Pである360ビットで除算したときの剰余は、90であるから、パート2のパートカラム長R2は、90ビットとなる。
そして、パート1のパートカラム長R1は、R1+R2-R2=4050-90=3960ビットとなる。
図107は、符号長Nと変調方式との組み合わせに対するパート1及び2のカラム数C、並びに、パートカラム長(行数)R1及びR2を示す図である。
図107には、符号長Nが16200ビット及び64800ビットのLDPC符号のそれぞれと、変調方式が、16QAM,64QAM,256QAM、及び、1024QAMである場合のそれぞれとの組み合わせに対するパート1及び2のカラム数C、並びに、パートカラム長R1及びR2が示されている。
図108は、図106のブロックインターリーバ25で行われるブロックインターリーブを説明する図である。
ブロックインターリーバ25は、パート1及び2に対して、LDPC符号を書き込んで読み出すことにより、ブロックインターリーブを行う。
すなわち、ブロックインターリーブでは、図108のAに示すように、1符号語のLDPC符号の符号ビットを、パート1のカラムの上から下方向(カラム方向)に書き込むことが、左から右方向のカラムに向かって行われる。
そして、符号ビットの書き込みが、パート1のカラムの最も右のカラム(C番目のカラム)の一番下まで終了すると、残りの符号ビットをパート2のカラムの上から下方向(カラム方向)に書き込むことが、左から右方向のカラムに向かって行われる。
その後、符号ビットの書き込みが、パート2のカラムの最も右のカラム(C番目のカラム)の一番下まで終了すると、図108のBに示すように、パート1のC個すべてのカラムの1行目から、ロウ方向に、C=mビット単位で、符号ビットが読み出される。
そして、パート1のC個すべてのカラムからの符号ビットの読み出しは、下の行に向かって順次行われ、その読み出しが最後の行であるR1行目まで終了すると、パート2のC個すべてのカラムの1行目から、ロウ方向に、C=mビット単位で、符号ビットが読み出される。
パート2のC個すべてのカラムからの符号ビットの読み出しは、下の行に向かって順次行われ、最後の行であるR2行目まで行われる。
以上のようにして、パート1及び2からmビット単位で読み出される符号ビットは、シンボルとして、マッパ117(図8)に供給される。
<グループワイズインターリーブ>
図109は、図9のグループワイズインターリーバ24で行われるグループワイズインターリーブを説明する図である。
グループワイズインターリーブでは、1符号語のLDPC符号を、その先頭から、巡回構造の単位の列数Pに等しい360ビット単位に区分した、その1区分の360ビットを、ビットグループとして、1符号語のLDPC符号が、ビットグループ単位で、所定のパターン(以下、GWパターンともいう)に従ってインターリーブされる。
ここで、1符号語のLDPC符号をビットグループに区分したときの先頭からi+1番目のビットグループを、以下、ビットグループiとも記載する。
例えば、符号長Nが1800ビットのLDPC符号は、ビットグループ0,1,2,3,4の5(=1800/360)個のビットグループに区分される。さらに、例えば、符号長Nが16200ビットのLDPC符号は、ビットグループ0,1,・・・,44の45(=16200/360)個のビットグループに区分され、符号長Nが64800ビットのLDPC符号は、ビットグループ0,1,・・・,179の180(=64800/360)個のビットグループに区分される。
また、以下では、GWパターンを、ビットグループを表す数字の並びで表すこととする。例えば、符号長Nが1800ビットのLDPC符号について、例えば、GWパターン4,2,0,3,1は、ビットグループ0,1,2,3,4の並びを、ビットグループ4,2,0,3,1の並びにインターリーブする(並び替える)ことを表す。
GWパターンは、少なくとも、LDPC符号の符号長Nごとに設定することができる。
図110は、符号長Nが64kビットのLDPC符号に対するGWパターンの第1の例を示す図である。
図110のGWパターンによれば、64kビットのLDPC符号のビットグループ0ないし179の並びが、ビットグループ
178,140,44,100,107,89,169,166,36,52,33,160,14,165,109,35,74,136,99,97,28,59,7,29,164,119,41,55,17,115,138,93,96,24,31,179,120,91,98,43,6,56,148,68,45,103,5,4,10,58,1,76,112,124,110,66,0,85,64,163,75,105,117,87,159,146,34,57,145,143,101,53,123,48,79,13,134,71,135,81,125,30,131,139,46,12,157,23,127,61,82,84,32,22,94,170,167,126,176,51,102,171,18,104,73,152,72,25,83,80,149,142,77,137,177,19,20,173,153,54,69,49,11,156,133,162,63,122,106,42,174,88,62,78,86,116,155,129,3,9,47,50,144,114,154,121,161,92,37,38,39,108,95,70,113,141,15,147,151,111,2,118,158,60,132,168,150,21,16,175,27,90,128,130,67,172,65,26,40,8
の並びにインターリーブされる。
図111は、符号長Nが64kビットのLDPC符号に対するGWパターンの第2の例を示す図である。
図111のGWパターンによれば、64kビットのLDPC符号のビットグループ0ないし179の並びが、ビットグループ
32,84,49,56,54,99,76,178,65,48,87,125,121,51,130,70,90,2,73,123,174,20,46,31,3,89,16,66,30,158,19,137,0,12,153,147,91,33,122,57,36,129,135,24,168,141,52,71,80,96,50,44,10,93,81,22,152,29,41,95,172,107,173,42,144,63,163,43,150,60,69,58,101,68,62,9,166,78,177,146,118,82,6,21,161,4,169,18,106,176,162,175,117,8,128,97,100,111,23,114,45,34,165,28,59,131,143,83,25,61,105,35,104,156,38,102,85,142,164,26,17,160,109,40,11,47,72,124,79,7,136,159,67,1,5,14,94,110,98,145,75,149,119,74,55,155,115,113,53,151,39,92,171,154,179,139,148,103,86,37,27,77,157,108,167,13,127,126,120,133,138,134,140,116,64,88,170,132,15,112
の並びにインターリーブされる。
図112は、符号長Nが64kビットのLDPC符号に対するGWパターンの第3の例を示す図である。
図112のGWパターンによれば、64kビットのLDPC符号のビットグループ0ないし179の並びが、ビットグループ
90,64,100,166,105,61,29,56,66,40,52,21,23,69,31,34,10,136,94,4,123,39,72,129,106,16,14,134,152,142,164,37,67,17,48,99,135,54,2,0,146,115,20,76,111,83,145,177,156,174,28,25,139,33,128,1,179,45,153,38,62,110,151,32,70,101,143,77,130,50,84,127,103,109,5,63,92,124,87,160,108,26,60,98,172,102,88,170,6,13,171,97,95,91,81,137,119,148,86,35,30,140,65,82,49,46,133,71,42,43,175,141,55,93,79,107,173,78,176,96,73,57,36,44,154,19,11,165,58,18,53,126,138,117,51,113,114,162,178,3,150,8,22,131,157,118,116,85,41,27,80,12,112,144,68,167,59,75,122,132,149,24,120,47,104,147,121,74,155,125,15,7,89,161,163,9,159,168,169,158
の並びにインターリーブされる。
図113は、符号長Nが64kビットのLDPC符号に対するGWパターンの第4の例を示す図である。
図113のGWパターンによれば、64kビットのLDPC符号のビットグループ0ないし179の並びが、ビットグループ
0,154,6,53,30,97,105,121,12,156,94,77,47,78,13,19,82,60,85,162,62,58,116,127,48,177,80,138,8,145,132,134,90,28,83,170,87,59,49,11,39,101,31,139,148,22,37,15,166,1,42,120,106,119,35,70,122,56,24,140,136,126,144,167,29,163,112,175,10,73,41,99,98,107,117,66,17,57,7,151,51,33,158,141,150,110,137,123,9,18,14,71,147,52,164,45,111,108,21,91,109,160,74,169,88,63,174,89,2,130,124,146,84,176,149,159,155,44,43,173,179,86,168,165,95,135,27,69,23,65,125,104,178,171,46,55,26,75,129,54,153,114,152,61,68,103,16,40,128,3,38,72,92,81,93,100,34,79,115,133,102,76,131,36,32,5,64,143,20,172,50,157,25,113,118,161,142,96,4,67
の並びにインターリーブされる。
図114は、符号長Nが16kビットのLDPC符号に対するGWパターンの第1の例を示す図である。
図114のGWパターンによれば、16kビットのLDPC符号のビットグループ0ないし44の並びが、ビットグループ
15,23,9,19,5,29,4,25,8,41,13,2,22,12,26,6,37,17,38,7,20,1,39,34,18,31,10,44,32,24,14,42,11,30,27,3,36,40,33,21,28,43,0,16,35
の並びにインターリーブされる。
図115は、符号長Nが16kビットのLDPC符号に対するGWパターンの第2の例を示す図である。
図115のGWパターンによれば、16kビットのLDPC符号のビットグループ0ないし44の並びが、ビットグループ
6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
の並びにインターリーブされる。
図116は、符号長Nが16kビットのLDPC符号に対するGWパターンの第3の例を示す図である。
図116のGWパターンによれば、16kビットのLDPC符号のビットグループ0ないし44の並びが、ビットグループ
21,0,34,5,16,7,1,25,9,24,19,11,6,15,39,38,42,30,18,14,13,23,20,33,3,10,4,8,26,27,41,40,31,2,35,37,43,22,17,12,29,36,28,32,44
の並びにインターリーブされる。
図117は、符号長Nが16kビットのLDPC符号に対するGWパターンの第4の例を示す図である。
図117のGWパターンによれば、16kビットのLDPC符号のビットグループ0ないし44の並びが、ビットグループ
15,25,9,27,5,38,13,10,19,16,28,1,36,0,11,17,32,35,7,26,14,21,6,4,23,22,3,18,20,24,30,12,37,2,40,8,33,29,31,34,41,42,43,44,39
の並びにインターリーブされる。
ところで、グループワイズインターリーブについては、GWパターンを、LDPC符号の符号長Nの他、LDPC符号の符号化率rや変調方式との組み合わせごとに設定することで、各組み合わせについて、エラーレートをより向上させることができる。
しかしながら、GWパターンを、LDPC符号の符号長Nと、符号化率rと、変調方式との全通り組み合わせそれぞれに対して、別個に設定したのでは、送信装置11で採用するLDPC符号や変調方式を変更するごとに、GWパターンも変更しなければならず、処理が煩雑になる。
そこで、グループワイズインターリーブについては、例えば、LDPC符号の符号化率rを、低レート(例えば、6/15,7/15/,8/15,9/15)と、高レート(例えば、10/15,11/15/,12/15,13/15)とに分け、LDPC符号の符号長Nが、16kビット及び64kビットのうちのいずれであるかと、LDPC符号の符号化率rが、低レート及び高レートのうちのいずれであるかと、変調方式が、16QAM,64QAM,256QAM、及び、1024QAMのうちのいずれであるかとの組み合わせごとに、GWパターンを設定することができる。
いま、上述の符号長N、符号化率r、及び、変調方式の組み合わせを、(符号長N、符号化率r、変調方式)で表すこととすると、符号長N、符号化率r、及び、変調方式の組み合わせとしては、例えば、(16k、低レート、16QAM)、(16k、低レート、64QAM)、(16k、低レート、256QAM)、(16k、低レート、1024QAM)、(16k、高レート、16QAM)、(16k、高レート、64QAM)、(16k、高レート、256QAM)、(16k、高レート、1024QAM)、(64k、低レート、16QAM)、(64k、低レート、64QAM)、(64k、低レート、256QAM)、(64k、低レート、1024QAM)、(64k、高レート、16QAM)、(64k、高レート、64QAM)、(64k、高レート、256QAM)、及び、(64k、高レート、1024QAM)の16通りの組み合わせを想定することができる。
LDPC符号の符号長Nが64kになっている組み合わせ(64k、低レート、16QAM)、(64k、低レート、64QAM)、(64k、低レート、256QAM)、(64k、低レート、1024QAM)、(64k、高レート、16QAM)、(64k、高レート、64QAM)、(64k、高レート、256QAM)、及び、(64k、高レート、1024QAM)に対しては、それぞれ、図110ないし図113の4パターンのGWパターンのうちの、エラーレートを最も向上させるGWパターンを適用することができる。
例えば、図110のGWパターンは、組み合わせ(64k、高レート、16QAM)に、図111のGWパターンは、組み合わせ(64k、低レート、64QAM)に、図112のGWパターンは、組み合わせ(64k、高レート、256QAM)に、図113のGWパターンは、組み合わせ(64k、低レート、1024QAM)に、それぞれ適用することができる。
LDPC符号の符号長Nが16kになっている組み合わせ(16k、低レート、16QAM)、(16k、低レート、64QAM)、(16k、低レート、256QAM)、(16k、低レート、1024QAM)、(16k、高レート、16QAM)、(16k、高レート、64QAM)、(16k、高レート、256QAM)、及び、(16k、高レート、1024QAM)に対しては、それぞれ、図114ないし図117の4パターンのGWパターンのうちの、エラーレートを最も向上させるGWパターンを適用することができる。
例えば、図114のGWパターンは、組み合わせ(16k、低レート、16QAM)に、図115のGWパターンは、組み合わせ(16k、高レート、64QAM)に、図116のGWパターンは、組み合わせ(16k、低レート、256QAM)に、図117のGWパターンは、組み合わせ(16k、高レート、1024QAM)に、それぞれ適用することができる。
本件発明者が行ったシミュレーションによれば、図110のGWパターンについては、(64k,10/15)の第2の新LDPC符号、(64k,11/15)の第1の新LDPC符号、(64k,12/15)の第2の新LDPC符号、及び、(64k,13/15)の第1の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの16QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図111のGWパターンについては、(64k,6/15)の第2の新LDPC符号、(64k,7/15)の第1の新LDPC符号、(64k,8/15)の第2の新LDPC符号、及び、(64k,9/15)の第1の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの64QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図112のGWパターンについては、(64k,10/15)の第2の新LDPC符号、(64k,11/15)の第1の新LDPC符号、(64k,12/15)の第2の新LDPC符号、及び、(64k,13/15)の第1の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの256QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図113のGWパターンについては、(64k,6/15)の第2の新LDPC符号、(64k,7/15)の第1の新LDPC符号、(64k,8/15)の第2の新LDPC符号、及び、(64k,9/15)の第1の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの1024QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図114のGWパターンについては、(16k,6/15)の第1の新LDPC符号、(16k,7/15)の第2の新LDPC符号、(16k,8/15)の第1の新LDPC符号、及び、(16k,9/15)の第2の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの16QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図115のGWパターンについては、(16k,10/15)の第1の新LDPC符号、(16k,11/15)の第2の新LDPC符号、(16k,12/15)の第1の新LDPC符号、及び、(16k,13/15)の第2の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの64QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図116のGWパターンについては、(16k,6/15)の第1の新LDPC符号、(16k,7/15)の第2の新LDPC符号、(16k,8/15)の第1の新LDPC符号、及び、(16k,9/15)の第2の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの256QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
図117のGWパターンについては、(16k,10/15)の第1の新LDPC符号、(16k,11/15)の第2の新LDPC符号、(16k,12/15)の第1の新LDPC符号、及び、(16k,13/15)の第2の新LDPC符号それぞれと、図92ないし図105でコンスタレーションを説明した変調方式のうちの1024QAMとの組み合わせに対して、特に、良好なエラーレートを達成することができることが確認された。
<受信装置12の構成例>
図118は、図7の受信装置12の構成例を示すブロック図である。
OFDM処理部(OFDM operation)151は、送信装置11(図7)からのOFDM信号を受信し、そのOFDM信号の信号処理を行う。OFDM処理部151が信号処理を行うことにより得られるデータは、フレーム管理部(Frame Management)152に供給される。
フレーム管理部152は、OFDM処理部151から供給されるデータで構成されるフレームの処理(フレーム解釈)を行い、その結果得られる対象データの信号と、制御データの信号とを、周波数デインターリーバ(Frequency Deinterleaver)161と153とに、それぞれ供給する。
周波数デインターリーバ153は、フレーム管理部152からのデータについて、シンボル単位での周波数デインターリーブを行い、デマッパ(Demapper)154に供給する。
デマッパ154は、周波数デインターリーバ153からのデータ(コンスタレーション上のデータ)を、送信装置11側で行われる直交変調で定められる信号点の配置(コンスタレーション)に基づいてデマッピング(信号点配置復号)して直交復調し、その結果得られるデータ(LDPC符号(の尤度))を、LDPCデコーダ(LDPC decoder)155に供給する。
LDPCデコーダ155は、デマッパ154からのLDPC符号のLDPC復号を行い、その結果得られるLDPC対象データ(ここでは、BCH符号)を、BCHデコーダ(BCH decoder)156に供給する。
BCHデコーダ156は、LDPCデコーダ155からのLDPC対象データのBCH復号を行い、その結果得られる制御データ(シグナリング)を出力する。
一方、周波数デインターリーバ161は、フレーム管理部152からのデータについて、シンボル単位での周波数デインターリーブを行い、SISO/MISOデコーダ(SISO/MISO decoder)162に供給する。
SISO/MISOデコーダ162は、周波数デインターリーバ161からのデータの時空間復号を行い、時間デインターリーバ(Time Deinterleaver)163に供給する。
時間デインターリーバ163は、SISO/MISOデコーダ162からのデータについて、シンボル単位での時間デインターリーブを行い、デマッパ(Demapper)164に供給する。
デマッパ164は、時間デインターリーバ163からのデータ(コンスタレーション上のデータ)を、送信装置11側で行われる直交変調で定められる信号点の配置(コンスタレーション)に基づいてデマッピング(信号点配置復号)して直交復調し、その結果得られるデータを、ビットデインターリーバ(Bit Deinterleaver)165に供給する。
ビットデインターリーバ165は、デマッパ164からのデータのビットデインターリーブを行い、そのビットデインターリーブ後のデータであるLDPC符号(の尤度)を、LDPCデコーダ166に供給する。
LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を行い、その結果得られるLDPC対象データ(ここでは、BCH符号)を、BCHデコーダ167に供給する。
BCHデコーダ167は、LDPCデコーダ155からのLDPC対象データのBCH復号を行い、その結果得られるデータを、BBデスクランブラ(BB DeScrambler)168に供給する。
BBデスクランブラ168は、BCHデコーダ167からのデータに、BBデスクランブルを施し、その結果得られるデータを、ヌル削除部(Null Deletion)169に供給する。
ヌル削除部169は、BBデスクランブラ168からのデータから、図8のパダー112で挿入されたNullを削除し、デマルチプレクサ(Demultiplexer)170に供給する。
デマルチプレクサ170は、ヌル削除部169からのデータに多重化されている1以上のストリーム(対象データ)それぞれを分離し、必要な処理を施して、アウトプットストリーム(Output stream)として出力する。
なお、受信装置12は、図118に図示したブロックの一部を設けずに構成することができる。すなわち、例えば、送信装置11(図8)を、時間インターリーバ118、SISO/MISOエンコーダ119、周波数インターリーバ120、及び、周波数インターリーバ124を設けずに構成する場合には、受信装置12は、送信装置11の時間インターリーバ118、SISO/MISOエンコーダ119、周波数インターリーバ120、及び、周波数インターリーバ124にそれぞれ対応するブロックである時間デインターリーバ163、SISO/MISOデコーダ162、周波数デインターリーバ161、及び、周波数デインターリーバ153を設けずに構成することができる。
<ビットデインターリーバ165の構成例>
図119は、図118のビットデインターリーバ165の構成例を示すブロック図である。
ビットデインターリーバ165は、ブロックデインターリーバ54、及びグループワイズデインターリーバ55から構成され、デマッパ164(図118)からのデータであるシンボルのシンボルビットの(ビット)デインターリーブを行う。
すなわち、ブロックデインターリーバ54は、デマッパ164からのシンボルのシンボルビットを対象として、図9のブロックインターリーバ25が行うブロックインターリーブに対応するブロックデインターリーブ(ブロックインターリーブの逆の処理)、すなわち、ブロックインターリーブによって並び替えられたLDPC符号の符号ビット(の尤度)の位置を元の位置に戻すブロックデインターリーブを行い、その結果得られるLDPC符号を、グループワイズデインターリーバ55に供給する。
グループワイズデインターリーバ55は、ブロックデインターリーバ54からのLDPC符号を対象として、図9のグループワイズインターリーバ24が行うグループワイズインターリーブに対応するグループワイズデインターリーブ(グループワイズインターリーブの逆の処理)、すなわち、例えば、図110ないし図117で説明したグループワイズインターリーブによってビットグループ単位で並びが変更されたLDPC符号の符号ビットを、ビットグループ単位で並び替えることにより、元の並びに戻すグループワイズデインターリーブを行う。
ここで、デマッパ164から、ビットデインターリーバ165に供給されるLDPC符号に、パリティインターリーブ、グループワイズインターリーブ、及びブロックインターリーブが施されている場合、ビットデインターリーバ165では、パリティインターリーブに対応するパリティデインターリーブ(パリティインターリーブの逆の処理、すなわち、パリティインターリーブによって並びが変更されたLDPC符号の符号ビットを、元の並びに戻すパリティデインターリーブ)、ブロックインターリーブに対応するブロックデインターリーブ、及び、グループワイズインターリーブに対応するグループワイズデインターリーブのすべてを行うことができる。
但し、図119のビットデインターリーバ165では、ブロックインターリーブに対応するブロックデインターリーブを行うブロックデインターリーバ54、及び、グループワイズインターリーブに対応するグループワイズデインターリーブを行うグループワイズデインターリーバ55は、設けられているが、パリティインターリーブに対応するパリティデインターリーブを行うブロックは、設けられておらず、パリティデインターリーブは、行われない。
したがって、ビットデインターリーバ165(のグループワイズデインターリーバ55)から、LDPCデコーダ166には、ブロックデインターリーブ、及び、グループワイズデインターリーブが行われ、かつ、パリティデインターリーブが行われていないLDPC符号が供給される。
LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行い、その結果得られるデータを、LDPC対象データの復号結果として出力する。
図120は、図119のデマッパ164、ビットデインターリーバ165、及び、LDPCデコーダ166が行う処理を説明するフローチャートである。
ステップS111において、デマッパ164は、時間デインターリーバ163からのデータ(信号点にマッピングされたコンスタレーション上のデータ)をデマッピングして直交復調し、ビットデインターリーバ165に供給して、処理は、ステップS112に進む。
ステップS112では、ビットデインターリーバ165は、デマッパ164からのデータのデインターリーブ(ビットデインターリーブ)を行って、処理は、ステップS113に進む。
すなわち、ステップS112では、ビットデインターリーバ165において、ブロックデインターリーバ54が、デマッパ164からのデータ(シンボル)を対象として、ブロックデインターリーブを行い、その結果得られるLDPC符号の符号ビットを、グループワイズデインターリーバ55に供給する。
グループワイズデインターリーバ55は、ブロックデインターリーバ54からのLDPC符号を対象として、グループワイズデインターリーブを行い、その結果得られるLDPC符号(の尤度)を、LDPCデコーダ166に供給する。
ステップS113では、LDPCデコーダ166が、グループワイズデインターリーバ55からのLDPC符号のLDPC復号を、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hを用いて行い、すなわち、検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行い、その結果得られるデータを、LDPC対象データの復号結果として、BCHデコーダ167に出力する。
なお、図119でも、図9の場合と同様に、説明の便宜のため、ブロックデインターリーブを行うブロックデインターリーバ54と、グループワイズデインターリーブを行うグループワイズデインターリーバ55とを、別個に構成するようにしたが、ブロックデインターリーバ54とグループワイズデインターリーバ55とは、一体的に構成することができる。
<LDPC復号>
図118のLDPCデコーダ166で行われるLDPC復号について、さらに説明する。
図118のLDPCデコーダ166では、上述したように、グループワイズデインターリーバ55からの、ブロックデインターリーブ、及び、グループワイズデインターリーブが行われ、かつ、パリティデインターリーブが行われていないLDPC符号のLDPC復号が、図8のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行われる。
ここで、LDPC復号を、変換検査行列を用いて行うことで、回路規模を抑制しつつ、動作周波数を十分実現可能な範囲に抑えることが可能となるLDPC復号が先に提案されている(例えば、特許第4224777号を参照)。
そこで、まず、図121ないし図124を参照して、先に提案されている、変換検査行列を用いたLDPC復号について説明する。
図121は、符号長Nが90で、符号化率が2/3のLDPC符号の検査行列Hの例を示す図である。
なお、図121では(後述する図122及び図123においても同様)、0を、ピリオド(.)で表現している。
図121の検査行列Hでは、パリティ行列が階段構造になっている。
図122は、図121の検査行列Hに、式(11)の行置換と、式(12)の列置換を施して得られる検査行列H'を示す図である。
行置換:6s+t+1行目→5t+s+1行目
・・・(11)
列置換:6x+y+61列目→5y+x+61列目
・・・(12)
但し、式(11)及び(12)において、s,t,x,yは、それぞれ、0≦s<5,0≦t<6,0≦x<5,0≦t<6の範囲の整数である。
式(11)の行置換によれば、6で割って余りが1になる1,7,13,19,25行目を、それぞれ、1,2,3,4,5行目に、6で割って余りが2になる2,8,14,20,26行目を、それぞれ、6,7,8,9,10行目に、という具合に置換が行われる。
また、式(12)の列置換によれば、61列目以降(パリティ行列)に対して、6で割って余りが1になる61,67,73,79,85列目を、それぞれ、61,62,63,64,65列目に、6で割って余りが2になる62,68,74,80,86列目を、それぞれ、66,67,68,69,70列目に、という具合に置換が行われる。
このようにして、図121の検査行列Hに対して、行と列の置換を行って得られた行列(matrix)が、図122の検査行列H'である。
ここで、検査行列Hの行置換を行っても、LDPC符号の符号ビットの並びには影響しない。
また、式(12)の列置換は、上述の、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブの、情報長Kを60と、巡回構造の単位の列数Pを5と、パリティ長M(ここでは、30)の約数q(=M/P)を6と、それぞれしたときのパリティインターリーブに相当する。
したがって、図122の検査行列H'は、図121の検査行列(以下、適宜、元の検査行列という)Hの、K+qx+y+1番目の列を、K+Py+x+1番目の列に置換する列置換を、少なくとも行って得られる変換検査行列である。
図122の変換検査行列H'に対して、図121の元の検査行列HのLDPC符号に、式(12)と同一の置換を行ったものを乗じると、0ベクトルが出力される。すなわち、元の検査行列HのLDPC符号(1符号語)としての行ベクトルcに、式(12)の列置換を施して得られる行ベクトルをc'と表すこととすると、検査行列の性質から、HcTは、0ベクトルとなるから、H'c'Tも、当然、0ベクトルとなる。
以上から、図122の変換検査行列H'は、元の検査行列HのLDPC符号cに、式(12)の列置換を行って得られるLDPC符号c'の検査行列になっている。
したがって、元の検査行列HのLDPC符号cに、式(12)の列置換を行い、その列置換後のLDPC符号c'を、図122の変換検査行列H'を用いて復号(LDPC復号)し、その復号結果に、式(12)の列置換の逆置換を施すことで、元の検査行列HのLDPC符号を、その検査行列Hを用いて復号する場合と同様の復号結果を得ることができる。
図123は、5×5の行列の単位に間隔を空けた、図122の変換検査行列H'を示す図である。
図123においては、変換検査行列H'は、5×5(=P×P)の単位行列、その単位行列の1のうち1個以上が0になった行列(以下、適宜、準単位行列という)、単位行列または準単位行列をサイクリックシフト(cyclic shift)した行列(以下、適宜、シフト行列という)、単位行列、準単位行列、またはシフト行列のうちの2以上の和(以下、適宜、和行列という)、5×5の0行列の組合わせで表されている。
図123の変換検査行列H'は、5×5の単位行列、準単位行列、シフト行列、和行列、0行列で構成されているということができる。そこで、変換検査行列H'を構成する、これらの5×5の行列(単位行列、準単位行列、シフト行列、和行列、0行列)を、以下、適宜、構成行列という。
P×Pの構成行列で表される検査行列のLDPC符号の復号には、チェックノード演算、及びバリアブルノード演算を、P個同時に行うアーキテクチャ(architecture)を用いることができる。
図124は、そのような復号を行う復号装置の構成例を示すブロック図である。
すなわち、図124は、図121の元の検査行列Hに対して、少なくとも、式(12)の列置換を行って得られる図123の変換検査行列H'を用いて、LDPC符号の復号を行う復号装置の構成例を示している。
図124の復号装置は、6つのFIFO3001ないし3006からなる枝データ格納用メモリ300、FIFO3001ないし3006を選択するセレクタ301、チェックノード計算部302、2つのサイクリックシフト回路303及び308、18個のFIFO3041ないし30418からなる枝データ格納用メモリ304、FIFO3041ないし30418を選択するセレクタ305、受信データを格納する受信データ用メモリ306、バリアブルノード計算部307、復号語計算部309、受信データ並べ替え部310、復号データ並べ替え部311からなる。
まず、枝データ格納用メモリ300と304へのデータの格納方法について説明する。
枝データ格納用メモリ300は、図123の変換検査行列H'の行数30を構成行列の行数(巡回構造の単位の列数P)5で除算した数である6つのFIFO3001ないし3006から構成されている。FIFO300y(y=1,2,・・・,6)は、複数の段数の記憶領域からなり、各段の記憶領域については、構成行列の行数及び列数(巡回構造の単位の列数P)である5つの枝に対応するメッセージを同時に読み出すこと、及び、書き込むことができるようになっている。また、FIFO300yの記憶領域の段数は、図123の変換検査行列の行方向の1の数(ハミング重み)の最大数である9になっている。
FIFO3001には、図123の変換検査行列H'の第1行目から第5行目までの1の位置に対応するデータ(バリアブルノードからのメッセージvi)が、各行共に横方向に詰めた形に(0を無視した形で)格納される。すなわち、第j行第i列を、(j,i)と表すこととすると、FIFO3001の第1段の記憶領域には、変換検査行列H'の(1,1)から(5,5)の5×5の単位行列の1の位置に対応するデータが格納される。第2段の記憶領域には、変換検査行列H'の(1,21)から(5,25)のシフト行列(5×5の単位行列を右方向に3つだけサイクリックシフトしたシフト行列)の1の位置に対応するデータが格納される。第3から第8段の記憶領域も同様に、変換検査行列H'と対応付けてデータが格納される。そして、第9段の記憶領域には、変換検査行列H'の(1,86)から(5,90)のシフト行列(5×5の単位行列のうちの1行目の1を0に置き換えて1つだけ左にサイクリックシフトしたシフト行列)の1の位置に対応するデータが格納される。
FIFO3002には、図123の変換検査行列H'の第6行目から第10行目までの1の位置に対応するデータが格納される。すなわち、FIFO3002の第1段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列(5×5の単位行列を右に1つだけサイクリックシフトした第1のシフト行列と、右に2つだけサイクリックシフトした第2のシフト行列の和である和行列)を構成する第1のシフト行列の1の位置に対応するデータが格納される。また、第2段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列を構成する第2のシフト行列の1の位置に対応するデータが格納される。
すなわち、重みが2以上の構成行列については、その構成行列を、重みが1であるP×Pの単位行列、単位行列の要素の1のうち1個以上が0になった準単位行列、又は単位行列もしくは準単位行列をサイクリックシフトしたシフト行列のうちの複数の和の形で表現したときの、その重みが1の単位行列、準単位行列、又はシフト行列の1の位置に対応するデータ(単位行列、準単位行列、又はシフト行列に属する枝に対応するメッセージ)は、同一アドレス(FIFO3001ないし3006のうちの同一のFIFO)に格納される。
以下、第3から第9段の記憶領域についても、変換検査行列H'に対応付けてデータが格納される。
FIFO3003ないし3006も同様に変換検査行列H'に対応付けてデータを格納する。
枝データ格納用メモリ304は、変換検査行列H'の列数90を、構成行列の列数(巡回構造の単位の列数P)である5で割った18個のFIFO3041ないし30418から構成されている。FIFO304x(x=1,2,・・・,18)は、複数の段数の記憶領域からなり、各段の記憶領域については、構成行列の行数及び列数(巡回構造の単位の列数P)である5つの枝に対応するメッセージを同時に読み出すこと、及び、書き込むことができるようになっている。
FIFO3041には、図123の変換検査行列H'の第1列目から第5列目までの1の位置に対応するデータ(チェックノードからのメッセージuj)が、各列共に縦方向に詰めた形に(0を無視した形で)格納される。すなわち、FIFO3041の第1段の記憶領域には、変換検査行列H'の(1,1)から(5,5)の5×5の単位行列の1の位置に対応するデータが格納される。第2段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列(5×5の単位行列を右に1つだけサイクリックシフトした第1のシフト行列と、右に2つだけサイクリックシフトした第2のシフト行列との和である和行列)を構成する第1のシフト行列の1の位置に対応するデータが格納される。また、第3段の記憶領域には、変換検査行列H'の(6,1)から(10,5)の和行列を構成する第2のシフト行列の1の位置に対応するデータが格納される。
すなわち、重みが2以上の構成行列については、その構成行列を、重みが1であるP×Pの単位行列、単位行列の要素の1のうち1個以上が0になった準単位行列、又は単位行列もしくは準単位行列をサイクリックシフトしたシフト行列のうちの複数の和の形で表現したときの、その重みが1の単位行列、準単位行列、又はシフト行列の1の位置に対応するデータ(単位行列、準単位行列、又はシフト行列に属する枝に対応するメッセージ)は、同一アドレス(FIFO3041ないし30418のうちの同一のFIFO)に格納される。
以下、第4及び第5段の記憶領域についても、変換検査行列H'に対応付けて、データが格納される。このFIFO3041の記憶領域の段数は、変換検査行列H'の第1列から第5列における行方向の1の数(ハミング重み)の最大数である5になっている。
FIFO3042と3043も同様に変換検査行列H'に対応付けてデータを格納し、それぞれの長さ(段数)は、5である。FIFO3044ないし30412も同様に、変換検査行列H'に対応付けてデータを格納し、それぞれの長さは3である。FIFO30413ないし30418も同様に、変換検査行列H'に対応付けてデータを格納し、それぞれの長さは2である。
次に、図124の復号装置の動作について説明する。
枝データ格納用メモリ300は、6つのFIFO3001ないし3006からなり、前段のサイクリックシフト回路308から供給される5つのメッセージD311が、図123の変換検査行列H'のどの行に属するかの情報(Matrixデータ)D312に従って、データを格納するFIFOを、FIFO3001ないし3006の中から選び、選んだFIFOに5つのメッセージD311をまとめて順番に格納していく。また、枝データ格納用メモリ300は、データを読み出す際には、FIFO3001から5つのメッセージD3001を順番に読み出し、次段のセレクタ301に供給する。枝データ格納用メモリ300は、FIFO3001からのメッセージの読み出しの終了後、FIFO3002ないし3006からも、順番に、メッセージを読み出し、セレクタ301に供給する。
セレクタ301は、セレクト信号D301に従って、FIFO3001ないし3006のうちの、現在データが読み出されているFIFOからの5つのメッセージを選択し、メッセージD302として、チェックノード計算部302に供給する。
チェックノード計算部302は、5つのチェックノード計算器3021ないし3025からなり、セレクタ301を通して供給されるメッセージD302(D3021ないしD3025)(式(7)のメッセージvi)を用いて、式(7)に従ってチェックノード演算を行い、そのチェックノード演算の結果得られる5つのメッセージD303(D3031ないしD3035)(式(7)のメッセージuj)をサイクリックシフト回路303に供給する。
サイクリックシフト回路303は、チェックノード計算部302で求められた5つのメッセージD3031ないしD3035を、対応する枝が変換検査行列H'において元となる単位行列(又は準単位行列)を幾つサイクリックシフトしたものであるかの情報(Matrixデータ)D305を元にサイクリックシフトし、その結果をメッセージD304として、枝データ格納用メモリ304に供給する。
枝データ格納用メモリ304は、18個のFIFO3041ないし30418からなり、前段のサイクリックシフト回路303から供給される5つのメッセージD304が変換検査行列H'のどの行に属するかの情報D305に従って、データを格納するFIFOを、FIFO3041ないし30418の中から選び、選んだFIFOに5つのメッセージD304をまとめて順番に格納していく。また、枝データ格納用メモリ304は、データを読み出す際には、FIFO3041から5つのメッセージD3061を順番に読み出し、次段のセレクタ305に供給する。枝データ格納用メモリ304は、FIFO3041からのデータの読み出しの終了後、FIFO3042ないし30418からも、順番に、メッセージを読み出し、セレクタ305に供給する。
セレクタ305は、セレクト信号D307に従って、FIFO3041ないし30418のうちの、現在データが読み出されているFIFOからの5つのメッセージを選択し、メッセージD308として、バリアブルノード計算部307と復号語計算部309に供給する。
一方、受信データ並べ替え部310は、通信路13を通して受信した、図121の検査行列Hに対応するLDPC符号D313を、式(12)の列置換を行うことにより並べ替え、受信データD314として、受信データ用メモリ306に供給する。受信データ用メモリ306は、受信データ並べ替え部310から供給される受信データD314から、受信LLR(対数尤度比)を計算して記憶し、その受信LLRを5個ずつまとめて受信値D309として、バリアブルノード計算部307と復号語計算部309に供給する。
バリアブルノード計算部307は、5つのバリアブルノード計算器3071ないし3075からなり、セレクタ305を通して供給されるメッセージD308(D3081ないしD3085)(式(1)のメッセージuj)と、受信データ用メモリ306から供給される5つの受信値D309(式(1)の受信値u0i)を用いて、式(1)に従ってバリアブルノード演算を行い、その演算の結果得られるメッセージD310(D3101ないしD3105)(式(1)のメッセージvi)を、サイクリックシフト回路308に供給する。
サイクリックシフト回路308は、バリアブルノード計算部307で計算されたメッセージD3101ないしD3105を、対応する枝が変換検査行列H'において元となる単位行列(又は準単位行列)を幾つサイクリックシフトしたものであるかの情報を元にサイクリックシフトし、その結果をメッセージD311として、枝データ格納用メモリ300に供給する。
以上の動作を1巡することで、LDPC符号の1回の復号(バリアブルノード演算及びチェックノード演算)を行うことができる。図124の復号装置は、所定の回数だけLDPC符号を復号した後、復号語計算部309及び復号データ並べ替え部311において、最終的な復号結果を求めて出力する。
すなわち、復号語計算部309は、5つの復号語計算器3091ないし3095からなり、セレクタ305が出力する5つのメッセージD308(D3081ないしD3085)(式(5)のメッセージuj)と、受信データ用メモリ306から供給される5つの受信値D309(式(5)の受信値u0i)を用い、複数回の復号の最終段として、式(5)に基づいて、復号結果(復号語)を計算して、その結果得られる復号データD315を、復号データ並べ替え部311に供給する。
復号データ並べ替え部311は、復号語計算部309から供給される復号データD315を対象に、式(12)の列置換の逆置換を行うことにより、その順序を並べ替え、最終的な復号結果D316として出力する。
以上のように、検査行列(元の検査行列)に対して、行置換と列置換のうちの一方又は両方を施し、P×Pの単位行列、その要素の1のうち1個以上が0になった準単位行列、単位行列もしくは準単位行列をサイクリックシフトしたシフト行列、単位行列、準単位行列、もしくはシフト行列の複数の和である和行列、P×Pの0行列の組合せ、つまり、構成行列の組み合わせで表すことができる検査行列(変換検査行列)に変換することで、LDPC符号の復号を、チェックノード演算とバリアブルノード演算を、検査行列の行数や列数より小さい数のP個同時に行うアーキテクチャ(architecture)を採用することが可能となる。ノード演算(チェックノード演算とバリアブルノード演算)を、検査行列の行数や列数より小さい数のP個同時に行うアーキテクチャを採用する場合、ノード演算を、検査行列の行数や列数に等しい数だけ同時に行う場合に比較して、動作周波数を実現可能な範囲に抑えて、多数の繰り返し復号を行うことができる。
図118の受信装置12を構成するLDPCデコーダ166は、例えば、図124の復号装置と同様に、チェックノード演算とバリアブルノード演算をP個同時に行うことで、LDPC復号を行うようになっている。
すなわち、いま、説明を簡単にするために、図8の送信装置11を構成するLDPCエンコーダ115が出力するLDPC符号の検査行列が、例えば、図121に示した、パリティ行列が階段構造になっている検査行列Hであるとすると、送信装置11のパリティインターリーバ23では、K+qx+y+1番目の符号ビットを、K+Py+x+1番目の符号ビットの位置にインターリーブするパリティインターリーブが、情報長Kを60に、巡回構造の単位の列数Pを5に、パリティ長Mの約数q(=M/P)を6に、それぞれして行われる。
このパリティインターリーブは、上述したように、式(12)の列置換に相当するから、LDPCデコーダ166では、式(12)の列置換を行う必要がない。
このため、図118の受信装置12では、上述したように、グループワイズデインターリーバ55から、LDPCデコーダ166に対して、パリティデインターリーブが行われていないLDPC符号、つまり、式(12)の列置換が行われた状態のLDPC符号が供給され、LDPCデコーダ166では、式(12)の列置換を行わないことを除けば、図124の復号装置と同様の処理が行われる。
すなわち、図125は、図118のLDPCデコーダ166の構成例を示す図である。
図125において、LDPCデコーダ166は、図124の受信データ並べ替え部310が設けられていないことを除けば、図124の復号装置と同様に構成されており、式(12)の列置換が行われないことを除いて、図124の復号装置と同様の処理を行うため、その説明は省略する。
以上のように、LDPCデコーダ166は、受信データ並べ替え部310を設けずに構成することができるので、図124の復号装置よりも、規模を削減することができる。
なお、図121ないし図125では、説明を簡単にするために、LDPC符号の符号長Nを90と、情報長Kを60と、巡回構造の単位の列数(構成行列の行数及び列数)Pを5と、パリティ長Mの約数q(=M/P)を6と、それぞれしたが、符号長N、情報長K、巡回構造の単位の列数P、及び約数q(=M/P)のそれぞれは、上述した値に限定されるものではない。
すなわち、図8の送信装置11において、LDPCエンコーダ115が出力するのは、例えば、符号長Nを64800や16200等と、情報長KをN-Pq(=N-M)と、巡回構造の単位の列数Pを360と、約数qをM/Pと、それぞれするLDPC符号であるが、図125のLDPCデコーダ166は、そのようなLDPC符号を対象として、チェックノード演算とバリアブルノード演算をP個同時に行うことで、LDPC復号を行う場合に適用可能である。
<ブロックデインターリーバ54の構成例>
図126は、図119のブロックデインターリーバ54の構成例を示すブロック図である。
ブロックデインターリーバ54は、図106で説明したブロックインターリーバ25と同様に構成される。
したがって、ブロックデインターリーバ54は、パート1(part 1)と呼ばれる記憶領域と、パート2(part 2)と呼ばれる記憶領域とを有し、パート1及び2は、いずれも、ロウ方向に、1ビットを記憶し、カラム方向に所定のビット数を記憶する記憶領域としてのカラムが、ロウ方向に、シンボルのビット数mに等しい数Cだけ並んで構成される。
ブロックデインターリーバ54は、パート1及び2に対して、LDPC符号を書き込んで読み出すことにより、ブロックデインターリーブを行う。
但し、ブロックデインターリーブでは、(シンボルとなっている)LDPC符号の書き込みは、図106のブロックインターリーバ25がLDPC符号を読み出す順に行われる。
さらに、ブロックデインターリーブでは、LDPC符号の読み出しは、図106のブロックインターリーバ25がLDPC符号を書き込む順に行われる。
すなわち、図106のブロックインターリーバ25によるブロックインターリーブでは、LDPC符号が、パート1及び2に対して、カラム方向に書き込まれ、ロウ方向に読み出されるが、図126のブロックデインターリーバ54によるブロックデインターリーブでは、LDPC符号が、パート1及び2に対して、ロウ方向に書き込まれ、カラム方向に読み出される。
<ビットデインターリーバ165の他の構成例>
図127は、図118のビットデインターリーバ165の他の構成例を示すブロック図である。
なお、図中、図119の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
すなわち、図127のビットデインターリーバ165は、パリティデインターリーバ1011が新たに設けられている他は、図119の場合と同様に構成されている。
図127では、ビットデインターリーバ165は、ブロックデインターリーバ54、グループワイズデインターリーバ55、及び、パリティデインターリーバ1011から構成され、デマッパ164からのLDPC符号の符号ビットのビットデインターリーブを行う。
すなわち、ブロックデインターリーバ54は、デマッパ164からのLDPC符号を対象として、送信装置11のブロックインターリーバ25が行うブロックインターリーブに対応するブロックデインターリーブ(ブロックインターリーブの逆の処理)、すなわち、ブロックインターリーブによって入れ替えられた符号ビットの位置を元の位置に戻すブロックデインターリーブを行い、その結果得られるLDPC符号を、グループワイズデインターリーバ55に供給する。
グループワイズデインターリーバ55は、ブロックデインターリーバ54からのLDPC符号を対象として、送信装置11のグループワイズインターリーバ24が行う並び替え処理としてのグループワイズインターリーブに対応するグループワイズデインターリーブを行う。
グループワイズデインターリーブの結果得られるLDPC符号は、グループワイズデインターリーバ55からパリティデインターリーバ1011に供給される。
パリティデインターリーバ1011は、グループワイズデインターリーバ55でのグループワイズデインターリーブ後の符号ビットを対象として、送信装置11のパリティインターリーバ23が行うパリティインターリーブに対応するパリティデインターリーブ(パリティインターリーブの逆の処理)、すなわち、パリティインターリーブによって並びが変更されたLDPC符号の符号ビットを、元の並びに戻すパリティデインターリーブを行う。
パリティデインターリーブの結果得られるLDPC符号は、パリティデインターリーバ1011からLDPCデコーダ166に供給される。
したがって、図127のビットデインターリーバ165では、LDPCデコーダ166には、ブロックデインターリーブ、グループワイズデインターリーブ、及び、パリティデインターリーブが行われたLDPC符号、すなわち、検査行列Hに従ったLDPC符号化によって得られるLDPC符号が供給される。
LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hを用いて行う。すなわち、LDPCデコーダ166は、ビットデインターリーバ165からのLDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hそのものを用いて、又は、その検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行う。
ここで、図127では、ビットデインターリーバ165(のパリティデインターリーバ1011)からLDPCデコーダ166に対して、検査行列Hに従ったLDPC符号化によって得られるLDPC符号が供給されるため、そのLDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hそのものを用いて行う場合には、LDPCデコーダ166は、例えば、メッセージ(チェックノードメッセージ、バリバブルノードメッセージ)の演算を1個のノードずつ順次行うフルシリアルデコーディング(full serial decoding)方式によるLDPC復号を行う復号装置や、メッセージの演算をすべてのノードについて同時(並列)に行うフルパラレルデコーディング(full parallel decoding)方式によるLDPC復号を行う復号装置で構成することができる。
また、LDPCデコーダ166において、LDPC符号のLDPC復号を、送信装置11のLDPCエンコーダ115がLDPC符号化に用いた検査行列Hに対して、パリティインターリーブに相当する列置換を少なくとも行って得られる変換検査行列を用いて行う場合には、LDPCデコーダ166は、チェックノード演算、及びバリアブルノード演算を、P(又はPの1以外の約数)個同時に行うアーキテクチャ(architecture)の復号装置であって、変換検査行列を得るための列置換と同様の列置換を、LDPC符号に施すことにより、そのLDPC符号の符号ビットを並び替える受信データ並べ替え部310を有する復号装置(図124)で構成することができる。
なお、図127では、説明の便宜のため、ブロックデインターリーブを行うブロックデインターリーバ54、グループワイズデインターリーブを行うグループワイズデインターリーバ55、及び、パリティデインターリーブを行うパリティデインターリーバ1011それぞれを、別個に構成するようにしたが、ブロックデインターリーバ54、グループワイズデインターリーバ55、及び、パリティデインターリーバ1011の2以上は、送信装置11のパリティインターリーバ23、グループワイズインターリーバ24、及び、ブロックインターリーバ25と同様に、一体的に構成することができる。
<受信システムの構成例>
図128は、受信装置12を適用可能な受信システムの第1の構成例を示すブロック図である。
図128において、受信システムは、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103から構成される。
取得部1101は、番組の画像データや音声データ等のLDPC対象データを、少なくともLDPC符号化することで得られるLDPC符号を含む信号を、例えば、地上ディジタル放送、衛星ディジタル放送、CATV網、インターネットその他のネットワーク等の、図示せぬ伝送路(通信路)を介して取得し、伝送路復号処理部1102に供給する。
ここで、取得部1101が取得する信号が、例えば、放送局から、地上波や、衛星波、CATV(Cable Television)網等を介して放送されてくる場合には、取得部1101は、チューナやSTB(Set Top Box)等で構成される。また、取得部1101が取得する信号が、例えば、webサーバから、IPTV(Internet Protocol Television)のようにマルチキャストで送信されてくる場合には、取得部1101は、例えば、NIC(Network Interface Card)等のネットワークI/F(Inter face)で構成される。
伝送路復号処理部1102は、受信装置12に相当する。伝送路復号処理部1102は、取得部1101が伝送路を介して取得した信号に対して、伝送路で生じる誤りを訂正する処理を少なくとも含む伝送路復号処理を施し、その結果得られる信号を、情報源復号処理部1103に供給する。
すなわち、取得部1101が伝送路を介して取得した信号は、伝送路で生じる誤りを訂正するための誤り訂正符号化を、少なくとも行うことで得られた信号であり、伝送路復号処理部1102は、そのような信号に対して、例えば、誤り訂正処理等の伝送路復号処理を施す。
ここで、誤り訂正符号化としては、例えば、LDPC符号化や、BCH符号化等がある。ここでは、誤り訂正符号化として、少なくとも、LDPC符号化が行われている。
また、伝送路復号処理には、変調信号の復調等が含まれることがある。
情報源復号処理部1103は、伝送路復号処理が施された信号に対して、圧縮された情報を元の情報に伸張する処理を少なくとも含む情報源復号処理を施す。
すなわち、取得部1101が伝送路を介して取得した信号には、情報としての画像や音声等のデータ量を少なくするために、情報を圧縮する圧縮符号化が施されていることがあり、その場合、情報源復号処理部1103は、伝送路復号処理が施された信号に対して、圧縮された情報を元の情報に伸張する処理(伸張処理)等の情報源復号処理を施す。
なお、取得部1101が伝送路を介して取得した信号に、圧縮符号化が施されていない場合には、情報源復号処理部1103では、圧縮された情報を元の情報に伸張する処理は行われない。
ここで、伸張処理としては、例えば、MPEGデコード等がある。また、伝送路復号処理には、伸張処理の他、デスクランブル等が含まれることがある。
以上のように構成される受信システムでは、取得部1101において、例えば、画像や音声等のデータに対して、MPEG符号化等の圧縮符号化が施され、さらに、LDPC符号化等の誤り訂正符号化が施された信号が、伝送路を介して取得され、伝送路復号処理部1102に供給される。
伝送路復号処理部1102では、取得部1101からの信号に対して、例えば、受信装置12が行うのと同様の処理等が、伝送路復号処理として施され、その結果得られる信号が、情報源復号処理部1103に供給される。
情報源復号処理部1103では、伝送路復号処理部1102からの信号に対して、MPEGデコード等の情報源復号処理が施され、その結果得られる画像、又は音声が出力される。
以上のような図128の受信システムは、例えば、ディジタル放送としてのテレビジョン放送を受信するテレビチューナ等に適用することができる。
なお、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103は、それぞれ、1つの独立した装置(ハードウェア(IC(Integrated Circuit)等)、又はソフトウエアモジュール)として構成することが可能である。
また、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103については、取得部1101と伝送路復号処理部1102とのセットや、伝送路復号処理部1102と情報源復号処理部1103とのセット、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103のセットを、1つの独立した装置として構成することが可能である。
図129は、受信装置12を適用可能な受信システムの第2の構成例を示すブロック図である。
なお、図中、図128の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
図129の受信システムは、取得部1101、伝送路復号処理部1102、及び、情報源復号処理部1103を有する点で、図128の場合と共通し、出力部1111が新たに設けられている点で、図128の場合と相違する。
出力部1111は、例えば、画像を表示する表示装置や、音声を出力するスピーカであり、情報源復号処理部1103から出力される信号としての画像や音声等を出力する。すなわち、出力部1111は、画像を表示し、あるいは、音声を出力する。
以上のような図129の受信システムは、例えば、ディジタル放送としてのテレビジョン放送を受信するTV(テレビジョン受像機)や、ラジオ放送を受信するラジオ受信機等に適用することができる。
なお、取得部1101において取得された信号に、圧縮符号化が施されていない場合には、伝送路復号処理部1102が出力する信号が、出力部1111に供給される。
図130は、受信装置12を適用可能な受信システムの第3の構成例を示すブロック図である。
なお、図中、図128の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
図130の受信システムは、取得部1101、及び、伝送路復号処理部1102を有する点で、図128の場合と共通する。
但し、図130の受信システムは、情報源復号処理部1103が設けられておらず、記録部1121が新たに設けられている点で、図128の場合と相違する。
記録部1121は、伝送路復号処理部1102が出力する信号(例えば、MPEGのTSのTSパケット)を、光ディスクや、ハードディスク(磁気ディスク)、フラッシュメモリ等の記録(記憶)媒体に記録する(記憶させる)。
以上のような図130の受信システムは、テレビジョン放送を録画するレコーダ等に適用することができる。
なお、図130において、受信システムは、情報源復号処理部1103を設けて構成し、情報源復号処理部1103で、情報源復号処理が施された後の信号、すなわち、デコードによって得られる画像や音声を、記録部1121で記録することができる。
<コンピュータの一実施の形態>
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図131は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク705やROM703に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体711に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体711は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体711からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部708で受信し、内蔵するハードディスク705にインストールすることができる。
コンピュータは、CPU(Central Processing Unit)702を内蔵している。CPU702には、バス701を介して、入出力インタフェース710が接続されており、CPU702は、入出力インタフェース710を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部707が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)703に格納されているプログラムを実行する。あるいは、また、CPU702は、ハードディスク705に格納されているプログラム、衛星若しくはネットワークから転送され、通信部708で受信されてハードディスク705にインストールされたプログラム、又はドライブ709に装着されたリムーバブル記録媒体711から読み出されてハードディスク705にインストールされたプログラムを、RAM(Random Access Memory)704にロードして実行する。これにより、CPU702は、上述したフローチャートに従った処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU702は、その処理結果を、必要に応じて、例えば、入出力インタフェース710を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部706から出力、あるいは、通信部708から送信、さらには、ハードディスク705に記録等させる。
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
また、プログラムは、1つのコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
すなわち、例えば、上述した新LDPC符号(の検査行列初期値テーブル)は、通信路13(図7)は、衛星回線や、地上波、ケーブル(有線回線)、その他のいずれであっても用いることが可能である。さらに、新LDPC符号は、ディジタル放送以外のデータ伝送にも用いることができる。
また、上述のGWパターンは、新LDPC符号以外にも適用することができる。さらに、上述のGWパターンを適用する変調方式は、16QAMや、64QAM,256QAM,1024QAMに限定されるものではない。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
11 送信装置, 12 受信装置, 23 パリティインターリーバ, 24 グループワイズインターリーバ, 25 ブロックインターリーバ, 31 メモリ, 32 入れ替え部, 54 ブロックデインターリーバ, 55 グループワイズデインターリーバ, 111 モードアダプテーション/マルチプレクサ, 112 パダー, 113 BBスクランブラ, 114 BCHエンコーダ, 115 LDPCエンコーダ, 116 ビットインターリーバ, 117 マッパ, 118 時間インターリーバ, 119 SISO/MISOエンコーダ, 120 周波数インターリーバ, 121 BCHエンコーダ, 122 LDPCエンコーダ, 123 マッパ, 124 周波数インターリーバ, 131 フレームビルダ/リソースアロケーション部 132 OFDM生成部, 151 OFDM処理部, 152 フレーム管理部, 153 周波数デインターリーバ, 154 デマッパ, 155 LDPCデコーダ, 156 BCHデコーダ, 161 周波数デインターリーバ, 162 SISO/MISOデコーダ, 163 時間デインターリーバ, 164 デマッパ, 165 ビットデインターリーバ, 166 LDPCデコーダ, 167 BCHデコーダ, 168 BBデスクランブラ, 169 ヌル削除部, 170 デマルチプレクサ, 300 枝データ格納用メモリ, 301 セレクタ, 302 チェックノード計算部, 303 サイクリックシフト回路, 304 枝データ格納用メモリ, 305 セレクタ, 306 受信データ用メモリ, 307 バリアブルノード計算部, 308 サイクリックシフト回路, 309 復号語計算部, 310 受信データ並べ替え部, 311 復号データ並べ替え部, 601 符号化処理部, 602 記憶部, 611 符号化率設定部, 612 初期値テーブル読み出し部, 613 検査行列生成部, 614 情報ビット読み出し部, 615 符号化パリティ演算部, 616 制御部, 701 バス, 702 CPU, 703 ROM, 704 RAM, 705 ハードディスク, 706 出力部, 707 入力部, 708 通信部, 709 ドライブ, 710 入出力インタフェース, 711, リムーバブル記録媒体, 1001 逆入れ替え部, 1002 メモリ, 1011 パリティデインターリーバ, 1101 取得部, 1101 伝送路復号処理部, 1103 情報源復号処理部, 1111 出力部, 1121 記録部

Claims (14)

  1. 符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部を備え、
    前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、
    前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
    6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
    の並びにインターリーブする
    データ処理装置。
  2. 前記LDPC符号を、6ビット単位で、変調方式で定める64個の信号点のうちのいずれかにマッピングするマッピング部をさらに備える
    請求項1に記載のデータ処理装置。
  3. 符号長が16200ビットであり符号化率が10/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    352 747 894 1437 1688 1807 1883 2119 2159 3321 3400 3543 3588 3770 3821 4384 4470 4884 5012 5036 5084 5101 5271 5281 5353
    505 915 1156 1269 1518 1650 2153 2256 2344 2465 2509 2867 2875 3007 3254 3519 3687 4331 4439 4532 4940 5011 5076 5113 5367
    268 346 650 919 1260 4389 4653 4721 4838 5054 5157 5162 5275 5362
    220 236 828 1590 1792 3259 3647 4276 4281 4325 4963 4974 5003 5037
    381 737 1099 1409 2364 2955 3228 3341 3473 3985 4257 4730 5173 5242
    88 771 1640 1737 1803 2408 2575 2974 3167 3464 3780 4501 4901 5047
    749 1502 2201 3189
    2873 3245 3427
    2158 2605 3165
    1 3438 3606
    10 3019 5221
    371 2901 2923
    9 3935 4683
    1937 3502 3735
    507 3128 4994
    25 3854 4550
    1178 4737 5366
    2 223 5304
    1146 5175 5197
    1816 2313 3649
    740 1951 3844
    1320 3703 4791
    1754 2905 4058
    7 917 5277
    3048 3954 5396
    4804 4824 5105
    2812 3895 5226
    0 5318 5358
    1483 2324 4826
    2266 4752 5387
    である
    請求項1に記載のデータ処理装置。
  4. 符号長が16200ビットであり符号化率が11/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    108 297 703 742 1345 1443 1495 1628 1812 2341 2559 2669 2810 2877 3442 3690 3755 3904 4264
    180 211 477 788 824 1090 1272 1578 1685 1948 2050 2195 2233 2546 2757 2946 3147 3299 3544
    627 741 1135 1157 1226 1333 1378 1427 1454 1696 1757 1772 2099 2208 2592 3354 3580 4066 4242
    9 795 959 989 1006 1032 1135 1209 1382 1484 1703 1855 1985 2043 2629 2845 3136 3450 3742
    230 413 801 829 1108 1170 1291 1759 1793 1827 1976 2000 2423 2466 2917 3010 3600 3782 4143
    56 142 236 381 1050 1141 1372 1627 1985 2247 2340 3023 3434 3519 3957 4013 4142 4164 4279
    298 1211 2548 3643
    73 1070 1614 1748
    1439 2141 3614
    284 1564 2629
    607 660 855
    1195 2037 2753
    49 1198 2562
    296 1145 3540
    1516 2315 2382
    154 722 4016
    759 2375 3825
    162 194 1749
    2335 2422 2632
    6 1172 2583
    726 1325 1428
    985 2708 2769
    255 2801 3181
    2979 3720 4090
    208 1428 4094
    199 3743 3757
    1229 2059 4282
    458 1100 1387
    1199 2481 3284
    1161 1467 4060
    959 3014 4144
    2666 3960 4125
    2809 3834 4318
    である
    請求項1に記載のデータ処理装置。
  5. 符号長が16200ビットであり符号化率が12/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    3 394 1014 1214 1361 1477 1534 1660 1856 2745 2987 2991 3124 3155
    59 136 528 781 803 928 1293 1489 1944 2041 2200 2613 2690 2847
    155 245 311 621 1114 1269 1281 1783 1995 2047 2672 2803 2885 3014
    79 870 974 1326 1449 1531 2077 2317 2467 2627 2811 3083 3101 3132
    4 582 660 902 1048 1482 1697 1744 1928 2628 2699 2728 3045 3104
    175 395 429 1027 1061 1068 1154 1168 1175 2147 2359 2376 2613 2682
    1388 2241 3118 3148
    143 506 2067 3148
    1594 2217 2705
    398 988 2551
    1149 2588 2654
    678 2844 3115
    1508 1547 1954
    1199 1267 1710
    2589 3163 3207
    1 2583 2974
    2766 2897 3166
    929 1823 2742
    1113 3007 3239
    1753 2478 3127
    0 509 1811
    1672 2646 2984
    965 1462 3230
    3 1077 2917
    1183 1316 1662
    968 1593 3239
    64 1996 2226
    1442 2058 3181
    513 973 1058
    1263 3185 3229
    681 1394 3017
    419 2853 3217
    3 2404 3175
    2417 2792 2854
    1879 2940 3235
    647 1704 3060
    である
    請求項1に記載のデータ処理装置。
  6. 符号長が16200ビットであり符号化率が13/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    37 144 161 199 220 496 510 589 731 808 834 965 1249 1264 1311 1377 1460 1520 1598 1707 1958 2055 2099 2154
    20 27 165 462 546 583 742 796 1095 1110 1129 1145 1169 1190 1254 1363 1383 1463 1718 1835 1870 1879 2108 2128
    288 362 463 505 638 691 745 861 1006 1083 1124 1175 1247 1275 1337 1353 1378 1506 1588 1632 1720 1868 1980 2135
    405 464 478 511 566 574 641 766 785 802 836 996 1128 1239 1247 1449 1491 1537 1616 1643 1668 1950 1975 2149
    86 192 245 357 363 374 700 713 852 903 992 1174 1245 1277 1342 1369 1381 1417 1463 1712 1900 1962 2053 2118
    101 327 378 550
    186 723 1318 1550
    118 277 504 1835
    199 407 1776 1965
    387 1253 1328 1975
    62 144 1163 2017
    100 475 572 2136
    431 865 1568 2055
    283 640 981 1172
    220 1038 1903 2147
    483 1318 1358 2118
    92 961 1709 1810
    112 403 1485 2042
    431 1110 1130 1365
    587 1005 1206 1588
    704 1113 1943
    375 1487 2100
    1507 1950 2110
    962 1613 2038
    554 1295 1501
    488 784 1446
    871 1935 1964
    54 1475 1504
    1579 1617 2074
    1856 1967 2131
    330 1582 2107
    40 1056 1809
    1310 1353 1410
    232 554 1939
    168 641 1099
    333 437 1556
    153 622 745
    719 931 1188
    237 638 1607
    である
    請求項1に記載のデータ処理装置。
  7. 符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブステップを備え、
    前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、
    前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
    6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
    の並びにインターリーブする
    データ処理方法。
  8. 符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部を備え、
    前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、
    前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
    6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
    の並びにインターリーブする
    送信装置
    から送信されてくるデータから得られる、グループワイズインターリーブ後の前記LDPC符号の並びを元の並びに戻すグループワイズデインターリーブ部を備える
    データ処理装置。
  9. 前記LDPC符号を、6ビット単位で、変調方式で定める64個の信号点のうちのいずれかにマッピングするマッピング部をさらに備える
    前記送信装置
    から送信されてくるデータから得られる前記マッピングされたデータをデマッピングするデマッピング部をさらに備える
    請求項8に記載のデータ処理装置。
  10. 符号長が16200ビットであり符号化率が10/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    352 747 894 1437 1688 1807 1883 2119 2159 3321 3400 3543 3588 3770 3821 4384 4470 4884 5012 5036 5084 5101 5271 5281 5353
    505 915 1156 1269 1518 1650 2153 2256 2344 2465 2509 2867 2875 3007 3254 3519 3687 4331 4439 4532 4940 5011 5076 5113 5367
    268 346 650 919 1260 4389 4653 4721 4838 5054 5157 5162 5275 5362
    220 236 828 1590 1792 3259 3647 4276 4281 4325 4963 4974 5003 5037
    381 737 1099 1409 2364 2955 3228 3341 3473 3985 4257 4730 5173 5242
    88 771 1640 1737 1803 2408 2575 2974 3167 3464 3780 4501 4901 5047
    749 1502 2201 3189
    2873 3245 3427
    2158 2605 3165
    1 3438 3606
    10 3019 5221
    371 2901 2923
    9 3935 4683
    1937 3502 3735
    507 3128 4994
    25 3854 4550
    1178 4737 5366
    2 223 5304
    1146 5175 5197
    1816 2313 3649
    740 1951 3844
    1320 3703 4791
    1754 2905 4058
    7 917 5277
    3048 3954 5396
    4804 4824 5105
    2812 3895 5226
    0 5318 5358
    1483 2324 4826
    2266 4752 5387
    である
    前記送信装置
    から送信されてくるデータから得られる前記LDPC符号を復号する復号部をさらに備える
    請求項8に記載のデータ処理装置。
  11. 符号長が16200ビットであり符号化率が11/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    108 297 703 742 1345 1443 1495 1628 1812 2341 2559 2669 2810 2877 3442 3690 3755 3904 4264
    180 211 477 788 824 1090 1272 1578 1685 1948 2050 2195 2233 2546 2757 2946 3147 3299 3544
    627 741 1135 1157 1226 1333 1378 1427 1454 1696 1757 1772 2099 2208 2592 3354 3580 4066 4242
    9 795 959 989 1006 1032 1135 1209 1382 1484 1703 1855 1985 2043 2629 2845 3136 3450 3742
    230 413 801 829 1108 1170 1291 1759 1793 1827 1976 2000 2423 2466 2917 3010 3600 3782 4143
    56 142 236 381 1050 1141 1372 1627 1985 2247 2340 3023 3434 3519 3957 4013 4142 4164 4279
    298 1211 2548 3643
    73 1070 1614 1748
    1439 2141 3614
    284 1564 2629
    607 660 855
    1195 2037 2753
    49 1198 2562
    296 1145 3540
    1516 2315 2382
    154 722 4016
    759 2375 3825
    162 194 1749
    2335 2422 2632
    6 1172 2583
    726 1325 1428
    985 2708 2769
    255 2801 3181
    2979 3720 4090
    208 1428 4094
    199 3743 3757
    1229 2059 4282
    458 1100 1387
    1199 2481 3284
    1161 1467 4060
    959 3014 4144
    2666 3960 4125
    2809 3834 4318
    である
    前記送信装置
    から送信されてくるデータから得られる前記LDPC符号を復号する復号部をさらに備える
    請求項8に記載のデータ処理装置。
  12. 符号長が16200ビットであり符号化率が12/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    3 394 1014 1214 1361 1477 1534 1660 1856 2745 2987 2991 3124 3155
    59 136 528 781 803 928 1293 1489 1944 2041 2200 2613 2690 2847
    155 245 311 621 1114 1269 1281 1783 1995 2047 2672 2803 2885 3014
    79 870 974 1326 1449 1531 2077 2317 2467 2627 2811 3083 3101 3132
    4 582 660 902 1048 1482 1697 1744 1928 2628 2699 2728 3045 3104
    175 395 429 1027 1061 1068 1154 1168 1175 2147 2359 2376 2613 2682
    1388 2241 3118 3148
    143 506 2067 3148
    1594 2217 2705
    398 988 2551
    1149 2588 2654
    678 2844 3115
    1508 1547 1954
    1199 1267 1710
    2589 3163 3207
    1 2583 2974
    2766 2897 3166
    929 1823 2742
    1113 3007 3239
    1753 2478 3127
    0 509 1811
    1672 2646 2984
    965 1462 3230
    3 1077 2917
    1183 1316 1662
    968 1593 3239
    64 1996 2226
    1442 2058 3181
    513 973 1058
    1263 3185 3229
    681 1394 3017
    419 2853 3217
    3 2404 3175
    2417 2792 2854
    1879 2940 3235
    647 1704 3060
    である
    前記送信装置
    から送信されてくるデータから得られる前記LDPC符号を復号する復号部をさらに備える
    請求項8に記載のデータ処理装置。
  13. 符号長が16200ビットであり符号化率が13/15のLDPC符号の検査行列に基づき、LDPC符号化を行う符号化部をさらに備え、
    前記LDPC符号は、情報ビットとパリティビットを含み、
    前記検査行列は、前記情報ビットに対応する情報行列部及び前記パリティビットに対応するパリティ行列部とを含み、
    前記情報行列部は、検査行列初期値テーブルによって表され、
    前記検査行列初期値テーブルは、前記情報行列部の1の要素の位置を360列ごとに表すテーブルであって、
    37 144 161 199 220 496 510 589 731 808 834 965 1249 1264 1311 1377 1460 1520 1598 1707 1958 2055 2099 2154
    20 27 165 462 546 583 742 796 1095 1110 1129 1145 1169 1190 1254 1363 1383 1463 1718 1835 1870 1879 2108 2128
    288 362 463 505 638 691 745 861 1006 1083 1124 1175 1247 1275 1337 1353 1378 1506 1588 1632 1720 1868 1980 2135
    405 464 478 511 566 574 641 766 785 802 836 996 1128 1239 1247 1449 1491 1537 1616 1643 1668 1950 1975 2149
    86 192 245 357 363 374 700 713 852 903 992 1174 1245 1277 1342 1369 1381 1417 1463 1712 1900 1962 2053 2118
    101 327 378 550
    186 723 1318 1550
    118 277 504 1835
    199 407 1776 1965
    387 1253 1328 1975
    62 144 1163 2017
    100 475 572 2136
    431 865 1568 2055
    283 640 981 1172
    220 1038 1903 2147
    483 1318 1358 2118
    92 961 1709 1810
    112 403 1485 2042
    431 1110 1130 1365
    587 1005 1206 1588
    704 1113 1943
    375 1487 2100
    1507 1950 2110
    962 1613 2038
    554 1295 1501
    488 784 1446
    871 1935 1964
    54 1475 1504
    1579 1617 2074
    1856 1967 2131
    330 1582 2107
    40 1056 1809
    1310 1353 1410
    232 554 1939
    168 641 1099
    333 437 1556
    153 622 745
    719 931 1188
    237 638 1607
    である
    前記送信装置
    から送信されてくるデータから得られる前記LDPC符号を復号する復号部をさらに備える
    請求項8に記載のデータ処理装置。
  14. 符号長が16200ビットであり符号化率が10/15,11/15,12/15、又は、13/15のLDPC符号を、360ビットのビットグループ単位でインターリーブするグループワイズインターリーブを行うグループワイズインターリーブ部を備え、
    前記16200ビットのLDPC符号の先頭からi+1番目のビットグループを、ビットグループiとして、
    前記グループワイズインターリーブでは、前記16200ビットのLDPC符号のビットグループ0ないし44の並びを、ビットグループ
    6,14,24,36,30,12,33,16,37,20,21,3,11,26,34,5,7,0,1,18,2,22,19,9,32,28,27,23,42,15,13,17,35,25,8,29,38,40,10,44,31,4,43,39,41
    の並びにインターリーブする
    送信装置
    から送信されてくるデータから得られる、グループワイズインターリーブ後の前記LDPC符号の並びを元の並びに戻すグループワイズデインターリーブステップを備える
    データ処理方法。
JP2015539103A 2013-09-26 2014-09-12 データ処理装置、及びデータ処理方法 Abandoned JPWO2015045899A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013199087 2013-09-26
JP2013199087 2013-09-26
PCT/JP2014/074198 WO2015045899A1 (ja) 2013-09-26 2014-09-12 データ処理装置、及びデータ処理方法

Publications (1)

Publication Number Publication Date
JPWO2015045899A1 true JPWO2015045899A1 (ja) 2017-03-09

Family

ID=52743041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015539103A Abandoned JPWO2015045899A1 (ja) 2013-09-26 2014-09-12 データ処理装置、及びデータ処理方法

Country Status (8)

Country Link
US (1) US20160197625A1 (ja)
EP (1) EP3051707A4 (ja)
JP (1) JPWO2015045899A1 (ja)
KR (1) KR20160061329A (ja)
CN (1) CN105556854A (ja)
CA (1) CA2924780A1 (ja)
MX (1) MX2016003576A (ja)
WO (1) WO2015045899A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150318868A1 (en) 2013-06-12 2015-11-05 Sony Coporation Data processing apparatus and data processing method
KR102113943B1 (ko) * 2013-09-20 2020-05-21 새턴 라이센싱 엘엘씨 데이터 처리 장치 및 데이터 처리 방법
CN105556858A (zh) * 2013-09-24 2016-05-04 索尼公司 数据处理装置和数据处理方法
CA2918520C (en) 2014-05-21 2023-10-10 Sony Corporation Data processing device and data processing method
EP3148085B1 (en) * 2014-05-21 2021-02-24 Sony Corporation Bit interleaved coded modulation with a group-wise interleaver adapted to a rate 10/15 ldpc code of length 16200
WO2018053854A1 (en) * 2016-09-26 2018-03-29 Nokia Technologies Oy Error detection and channel coding of transport blocks
WO2019136741A1 (en) * 2018-01-15 2019-07-18 Zte Corporation Methods and computing device for facilitating multiple access in a wireless communication network

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078416A1 (en) * 2000-12-01 2002-06-20 Hitachi, Ltd. Method of recording/reproducing digital data and apparatus for same
JP3875693B2 (ja) * 2004-03-24 2007-01-31 株式会社東芝 Lpc符号を用いた符号化ビットのマッピング方法及び送信装置
US7543197B2 (en) * 2004-12-22 2009-06-02 Qualcomm Incorporated Pruned bit-reversal interleaver
DE602006011240D1 (de) * 2005-06-21 2010-02-04 Samsung Electronics Co Ltd Vorrichtung und Methode zum Übermitteln/Empfangen von Daten in einem Mehrantennenkommunikationssystem unter Verwendung eines strukturierten Low Density Parity Check (LDPC) Codes
KR101481854B1 (ko) * 2007-11-26 2015-01-12 소니 주식회사 데이터 처리 장치, 및 데이터 처리 방법, 및 부호화 장치, 및 부호화 방법
CN101488819B (zh) * 2008-01-15 2013-02-27 华为技术有限公司 一种低密度奇偶校验码编码调制方法及装置
EP2134051A1 (en) * 2008-06-13 2009-12-16 THOMSON Licensing An adaptive QAM transmission scheme for improving performance on an AWGN channel
JP5630278B2 (ja) * 2010-12-28 2014-11-26 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5664919B2 (ja) * 2011-06-15 2015-02-04 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2560311A1 (en) * 2011-08-17 2013-02-20 Panasonic Corporation Cyclic-block permutations for spatial multiplexing with quasi-cyclic LDPC codes
KR20150005853A (ko) * 2013-07-05 2015-01-15 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법
KR20160064085A (ko) * 2013-09-26 2016-06-07 소니 주식회사 데이터 처리 장치 및 데이터 처리 방법
US9735809B2 (en) * 2013-09-26 2017-08-15 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof

Also Published As

Publication number Publication date
CA2924780A1 (en) 2015-04-02
EP3051707A1 (en) 2016-08-03
KR20160061329A (ko) 2016-05-31
CN105556854A (zh) 2016-05-04
US20160197625A1 (en) 2016-07-07
EP3051707A4 (en) 2017-06-21
WO2015045899A1 (ja) 2015-04-02
MX2016003576A (es) 2016-06-02

Similar Documents

Publication Publication Date Title
JP6428650B2 (ja) データ処理装置、及び、データ処理方法
WO2015045901A1 (ja) データ処理装置、及びデータ処理方法
WO2015133321A1 (ja) データ処理装置、及び、データ処理方法
WO2015045897A1 (ja) データ処理装置、及びデータ処理方法
WO2015045896A1 (ja) データ処理装置、及びデータ処理方法
WO2015045898A1 (ja) データ処理装置、及びデータ処理方法
JP2015156530A (ja) データ処理装置、及び、データ処理方法
JP2015156534A (ja) データ処理装置、及び、データ処理方法
JP2018082368A (ja) 送信装置、送信方法、受信装置、及び、受信方法
WO2015125614A1 (ja) データ処理装置、及び、データ処理方法
JP6428649B2 (ja) データ処理装置、及び、データ処理方法
WO2015045900A1 (ja) データ処理装置、及びデータ処理方法
JPWO2015178215A1 (ja) データ処理装置、及び、データ処理方法
JPWO2015178213A1 (ja) データ処理装置、及び、データ処理方法
JP2015170912A (ja) データ処理装置、及び、データ処理方法
JP2018082367A (ja) 送信装置、送信方法、受信装置、及び、受信方法
WO2015045899A1 (ja) データ処理装置、及びデータ処理方法
JP2018082364A (ja) 送信装置、送信方法、受信装置、及び、受信方法
JPWO2015178212A1 (ja) データ処理装置、及び、データ処理方法
JP2015156533A (ja) データ処理装置、及び、データ処理方法
JP2018082369A (ja) 送信装置、送信方法、受信装置、及び、受信方法
JP2018082365A (ja) 送信装置、送信方法、受信装置、及び、受信方法
JP2018129565A (ja) 送信方法、及び、受信装置
WO2015141489A1 (ja) データ処理装置、及び、データ処理方法
JPWO2015178211A1 (ja) データ処理装置、及び、データ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170908

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20170915