JP5219699B2 - 符号化装置及び復号装置 - Google Patents

符号化装置及び復号装置 Download PDF

Info

Publication number
JP5219699B2
JP5219699B2 JP2008219825A JP2008219825A JP5219699B2 JP 5219699 B2 JP5219699 B2 JP 5219699B2 JP 2008219825 A JP2008219825 A JP 2008219825A JP 2008219825 A JP2008219825 A JP 2008219825A JP 5219699 B2 JP5219699 B2 JP 5219699B2
Authority
JP
Japan
Prior art keywords
ldpc
sequence
decoding
parity
encoding
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.)
Active
Application number
JP2008219825A
Other languages
English (en)
Other versions
JP2009077391A (ja
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008219825A priority Critical patent/JP5219699B2/ja
Priority to US12/674,896 priority patent/US8473823B2/en
Priority to PCT/JP2008/002368 priority patent/WO2009028207A1/ja
Priority to CN200880104296.4A priority patent/CN101785189B/zh
Publication of JP2009077391A publication Critical patent/JP2009077391A/ja
Application granted granted Critical
Publication of JP5219699B2 publication Critical patent/JP5219699B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/2957Turbo codes and decoding
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6527IEEE 802.11 [WLAN]
    • 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
    • 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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • 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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Description

本発明は、畳み込み符号を用いて誤り訂正符号化を施す符号化装置及び畳み込み符号化された符号系列を復号する復号装置に関する。例えば、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号を用いる符号化装置及び復号装置に関する。
近年、実現可能な回路規模で高い誤り訂正能力を発揮する誤り訂正符号として、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号に注目が集まっている。LDPC符号は、その誤り訂正能力の高さと、実装の容易さとから、IEEE802.11nの高速無線LANシステム、デジタル放送システムなどの誤り訂正符号化方式に採用されている。
LDPC符号は低密度なパリティ検査行列Hで定義される誤り訂正符号である。なお、低密度とは、行列中に含まれる1の要素数が0の要素数に比べて大幅に少ないことである。LDPC符号は、検査行列Hの列数Nと等しいブロック長を持つブロック符号である。
ところで、現在の通信システムの多くは、イーサネット(登録商標)のように可変長のパケット、または、フレームに基づいて通信を行うという特徴がある。このようなシステムにブロック符号であるLDPC符号を適用する場合、例えば、可変長なイーサネット(登録商標)のフレームに対して、固定長のLDPC符号のブロックをどのように対応させるかといった課題が発生する。ここで、LDPC符号は、無線LANの規格であるIEEE802.11nに規格に採用されている。IEEE802.11nでは、送信情報系列にパディング、または、パンクチャなどを適用して、送信情報系列の長さと、LDPC符号のブロック長の調節を行っている。しかし、パディング、パンクチャにより符号化率の変化、または、冗長な系列の送信が必要になるという問題がある。
このようなブロック符号のLDPC符号(以降「LDPC−BC(Low-Density Parity-Check Block Code)」と標記する)において、任意の長さの情報系列に対して、符号化・復号化が可能なLDPC畳み込み符号(以降「LDPC−CC(Low-Density Parity-Check Convolutional Code)」と標記する)の検討が行われている(非特許文献1参照)。
LDPC−CCは、低密度なパリティ検査行列により定義される畳み込み符号である。図23に、一例として、符号化率R=1/2(=b/c)のLDPC−CCのパリティ検査行列H[0、n] を示す。なお、nは、送信情報系列の長さを表し、Tは転置行列を表す。
同図から分かるように、検査行列H[0、n] の要素h (m)(t),h (m)(t)は、0又は1をとる(m=0,1,…,M)。また、検査行列H[0、n] に含まれるh (m)(t),h (m)(t)以外の要素は全て0である(m=0,1,…,M)。図23に示されるように、LDPC−CCの検査行列は行列の対角項とその近辺の要素のみが1であり、行列の左下及び右上の要素はゼロであるという特徴がある。
ここで、符号化率R=1/2(=b/c)の例を示すと、h (0)(t)=1,h (0)(t)=1であるとき、LDPC−CCの符号化は検査行列H[0、n] に従って式(1)及び式(2)により行われる。
Figure 0005219699
Figure 0005219699
は送信情報系列、v1,t、v2,tは送信符号語系列を表す。また、Mは、LDPC−CCにおけるメモリ長を表す。
図24に、式(1)及び式(2)を行うLDPC−CCの符号化器の構成例を示す。図24に示すように、LDPC−CC符号化器10は、シフトレジスタ11−1〜11−M,14−1〜14−M、ウェイト乗算器12−0〜12−M,13−0〜13−M、ウェイト制御部14、及びmod2加算(排他的論理和演算)器15を備えて構成される。
シフトレジスタ11−1〜11−M及び14−1〜14−Mはそれぞれ、v1,t−i、v2,t−i(i=0,…,M)を保持するレジスタであり、次の入力が入ってくるタイミングで、保持している値を右隣のシフトレジスタに送り、左隣のシフトレジスタから出力される値を保持する。
ウェイト乗算器12−0〜12−M,13−0〜13−Mは、ウェイト制御部14から出力される制御信号に従ってh (m),h (m)(m=0,1,…,M)の値を0/1に切り替える。ウェイト制御部14は、内部に保持している検査行列に基づいて、そのタイミングにおけるh (m),h (m)の値をウェイト乗算器12−0〜12−M,13−0〜13−Mに送出する。mod2加算器15は、ウェイト乗算器12−0〜12−M,13−0〜13−Mの出力結果のmod2加算(排他的論理和演算)を行い、v2,t−iを算出する。
このような構成を採ることで、LDPC−CC符号化器10は、検査行列に従ったLDPC−CCの符号化を行うことができる。
このように、LDPC−CCの符号化器は、シフトレジスタと加算器、ウェイト乗算器のみで構成できるため、非常に簡易な回路で実現できるという特徴がある。また、LDPC−CCは畳み込み符号の一種であるため、送信情報系列を固定長のブロックに区切って符号化する必要はなく、任意の長さの情報系列を符号化できる。
LDPC−CC復号には、LDPC−BCと同様に検査行列Hに基づいてSum−Productアルゴリズムを適用することができる。そのため、ビタビアルゴリズムのような最尤系列推定に基づく復号アルゴリズムを使用する必要がなく、低処理遅延で復号処理を完了できる。さらに、非特許文献1では、行列の対角項付近にのみ1が存在するという検査行列の形を利用した復号アルゴリズムが提案されている。
Alberto Jimenez Felstorom, and Kamil Sh. Zigangirov,"Time-Varying Periodic Convolutional Codes With Low-Density Parity-Check-Matrix",IEEE Transactions on Information Theory, Vol.45, No.6, pp.2181-2191, September 1999.
しかしながら、前述の通り、検査行列の対角項付近にのみに、値が1の要素(重み)が分布している。このため、重みがブロック長全体にわたってランダムに分布した検査行列を用いることができるLDPC−BCに比べ、LDPC−CCの符号語の最小距離は、短くなるという特徴がある。そのため、LDPC−CCは、復号後のビット誤り率特性に、高い誤り率でのエラーフロアが生じる傾向がある。
本発明はかかる点に鑑みてなされたものであり、任意の長さの情報系列に対して、符号化・復号が可能な畳み込み符号の特徴を用いて、エラーフロアを改善することができる符号化装置及び復号装置を提供することを目的とする。
本発明の符号化装置は、入力系列に畳み込み符号化を施すことにより畳み込み符号語系列を取得する畳み込み符号化部と、前記畳み込み符号語系列にブロック符号化を施すことによりパリティ系列を取得するとともに、当該パリティ系列を前記畳み込み符号化部に出力するブロック符号化部と、を具備する構成を採る。
この構成によれば、復号側で、畳み込み符号に対する復号処理により訂正困難であった誤りが残存するような場合であっても、当該誤りをブロック符号に対する復号処理によって訂正することができるので、任意の長さの送信情報系列に対し符号化・復号が可能な畳み込み符号の特徴を用いて、エラーフロアを改善することができる。
本発明の復号装置の一つの態様は、入力系列に畳み込み復号を施すことにより復号系列を取得する畳み込み復号部と、前記復号系列にブロック復号を施すブロック復号部と、を具備する構成を採る。
この構成によれば、符号化側で、送信情報系列の畳み込み符号化系列にブロック符号化を施すことにより取得されたパリティ系列に対し、さらに畳み込み符号化を施した場合に、復号側で、畳み込み符号に対する復号処理により訂正困難であった誤りが残存するような場合であっても、当該誤りをブロック符号に対する復号処理によって訂正することができ、任意の長さの送信情報系列に対し符号化・復号が可能な畳み込み符号の特徴を用いて、エラーフロアを改善することができる。
本発明によれば、任意の長さの情報系列に対し符号化・復号が可能な畳み込み符号の特徴を用いて、エラーフロアを改善することができる。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
本実施の形態では、LDPC−CC符号化後の符号語系列をさらにLDPC−BCで符号化することで、連接符号の効果を得て、エラーフロアを解消するLDPC符号化器及びLDPC復号器について説明する。
(送信装置の全体構成)
図1に本実施の形態における送信装置の構成を示す。図1の送信装置100は、LDPC符号化部110、インタリーブ部120、変調部130、制御情報生成部140、無線部150、及び送信アンテナ160を備えて構成される。
LDPC符号化部110は、送信情報系列に対し、誤り訂正符号化処理を行い、得られた送信符号語系列をインタリーブ部120に出力する。
インタリーブ部120は、送信符号語系列に対して、系列の順序の並び替え処理(インタリーブ)を行い、インタリーブ後の送信符号語系列を変調部130に出力する。
変調部130は、インタリーブ後の送信符号語系列を、PSK(Phase Shift Keying),QAM(Quadrature Amplitude-Modulation)などの変調方式で変調し、送信変調シンボル系列を無線部150に出力する。
制御情報生成部140は、送信装置と受信装置との間で信号を受信するために必要な制御情報を生成し、変調部130に送出する。制御情報の例として、変調方式、送信情報系列長、時間・周波数同期のためのプリアンブル信号がある。
無線部150は、送信変調シンボル系列に対して、D/A(Digital to Analog)変換、周波数変換、RF(Radio Frequency)フィルタ処理などの無線変調処理を行い、送信RF信号を生成する。
送信アンテナ160は、送信RF信号を送信する。
(LDPC符号化部の構成)
図2に、LDPC符号化部の構成例を示す。図2のLDPC符号化部110は、LDPC−CC符号化器111、LDPC−BC符号化器112、及び切り替え器113を備えて構成される。
LDPC−CC符号化器111は、入力系列に対しLDPC−CC符号化を施す。LDPC−CC符号化器の構成は、図24と同様であり、既に図24において符号化率R=1/2の場合の構成例を示しているので、説明を省略する。LDPC−CC符号化器111は、符号化後の送信符号語系列v1,t,v2,tをインタリーブ部120へ出力するとともに、LDPC−BC符号化器112に出力する。
LDPC−BC符号化器112は、LDPC−CC符号化器111から出力される送信符号語系列v1,t,v2,tにLDPC−BC符号化処理を施し、符号化によって得られるパリティ系列vBC,tを切り替え器113に出力する。
切り替え器113は、送信情報系列uを所定長だけLDPC−CC符号化器111に出力すると、LDPC−BC符号化器112から出力されるパリティ系列vBC,tをLDPC−CC符号化器111に出力する。
(LDPC−BC符号化器の構成)
図3に、LDPC−BC符号化器の構成例を示す。図3のLDPC−BC符号化器112は、並列・直列変換部1121、切り替え器1122、ウェイト乗算部1123−1〜1123−P、加算器1124−1〜1124−P、遅延器1125−1〜1125−P、検査行列記憶部1126、並列・直列変換部1127、及びLDPC−BC符号化制御部1128を備えて構成される。
並列・直列変換部1121は、LDPC−CC符号化器111から並列に出力されるLDPC−CC符号化後の送信符号語系列v1,t,v2,tを直列の系列に変換し、切り替え器1122に出力する。
切り替え器1122は、LDPC−BC符号化制御部1128から出力される情報・パリティ切り替え信号に従い、送信符号語系列v1,t,v2,t又はLDPC−BCパリティ系列vBC,pのうち一方をウェイト乗算部1123−1〜1123−Pに送出する。
ウェイト乗算部1123−1〜1123−Pは、検査行列記憶部1126に記憶されている検査行列の重みの位置に従い、入力されてきたビットに対して1又は0のウェイトを乗算する。なお、ウェイト乗算部1123−1〜1123−Pは、入力されてきたビットに直接1又は0を乗算する構成にしても良いし、重みが1の場合は、入力ビットを後段に出力し、0の場合は、入力ビットに関わらず、0を出力するという構成を採っても良い。
加算器1124−1〜1124−Pは、ウェイト乗算部1123−1〜1123−Pから出力されるビットと、遅延器1125−1〜1125−Pから出力されるビットのmod2加算(排他的論理和演算)を行い、その結果を並列・直列変換部1127に出力する。
遅延器1125−1〜1125−Pは、入力ビットを1ビット分遅延させて加算器1124−1〜1124−Pに出力する。
検査行列記憶部1126は、LDPC−BCを行う検査行列HBCを記憶しており、時刻に応じて、ウェイト乗算部1123−1〜1123−Pに1又は0の重みを出力する。
並列・直列変換部1127は、加算器1124−1〜1124−Pの出力結果であるパリティビットを並列にアキュムレート(蓄積)し、アキュムレートしたP個のパリティビットを直列に変換してパリティ系列vBC,pとして切り替え器1122及び切り替え器113に出力する。なお、並列・直列変換部1127は、パリティビットをアキュムレートするタイミングと、アキュムレートしたパリティビットを直列に出力するタイミングとを、LDPC−BC符号化制御部1128からの指示信号に応じて切り替える。
LDPC−BC符号化制御部1128は、LDPC−CC符号語系列の系列長に基づいて、切り替え器1122及び検査行列記憶部1126に情報・パリティ切り替え信号を出力し、並列・直列変換部1127に指示信号を出力する。なお、LDPC−BC符号化制御部1128は、送信符号語系列長に対応するnの値について、予めシステムなどから取得している。
具体的には、LDPC−BC符号化制御部1128は、送信情報系列のLDPC−CC符号語の系列(v1,0,v2,0)が入力されたタイミングで、情報・パリティ切り替え信号及び指示信号を出力する。このタイミングで出力される情報・パリティ切り替え信号は、切り替え器1122に、並列・直列変換部1121の出力信号(S12及びS13)をS15として出力するよう指示を与える。また、このタイミングで出力される情報・パリティ切り替え信号は、検査行列記憶部1126に、図7に示す検査行列HBCのシステマティック部分、すなわち、HBCsの第1列目から順にウェイトを出力するよう指示を与える。また、このタイミングで出力される指示信号は、並列・直列変換部1127に、パリティビットをアキュムレートする指示を与える。
LDPC−BC符号化制御部1128は、送信情報系列のLDPC−CC符号語の系列(v1,t,v2,t)をカウントする。
次に、LDPC−BC符号化制御部1128は、送信情報系列のLDPC−CC符号語系列が入力し終わったタイミング(v1,n,v2,nまで入力されたタイミング、又は、カウントの値がLDPC−CC符号語系列の系列長になったタイミング)で、情報・パリティ切り替え信号及び指示信号を切り替え、切替後の情報・パリティ切り替え信号を切り替え器1122及び検査行列記憶部1126に出力し、切替後の指示信号を並列・直列変換部1127に出力する。
切替後の情報・パリティ切り替え信号は、切り替え器1122に、並列・直列変換部1127の出力信号(S14)をS15として出力するよう指示を与える。また、切替後の情報・パリティ切り替え信号は、検査行列記憶部1126に、図7に示す検査行列HBCのパリティビット部分、すなわちHBCpの第1列目(HBCの第KBC+1列目)から順にウェイトをウェイト乗算部1123−1〜1123−Pに出力していくよう指示を与える。
また、切替後の指示信号は、並列・直列変換部1127に、アキュムレート(蓄積)したパリティビットを直列に変換してパリティ系列vBC,pとして出力するよう指示を与える。具体的には、LDPC−BC符号化制御部1128は、並列・直列変換部1127に、加算器1124−1の出力を初めに出力し、以降、加算器1124−Pまで順に各加算器1124−Pの出力を出力していくよう指示する。
これら切替後の情報・パリティ切り替え信号及び指示信号により、並列・直列変換部1127は、パリティ系列vBC,pを出力し、切り替え器1122は、当該パリティ系列vBC,pをウェイト乗算部1123−1〜1123−Pに出力する。
このように、送信装置100は、LDPC−CC符号化器111において、送信情報系列にLDPC−CC符号化を施すことによりLDPC−CC符号語系列を取得し、LDPC−BC符号化器112において、当該LDPC−CC符号語系列にLDPC−BC符号化を施すことによりパリティ系列を取得し、さらに、LDPC−CC符号化器111において、当該パリティ系列にLDPC−CC符号化を施す。
(受信装置の全体構成)
図4に本実施の形態における受信装置の構成を示す。図4の受信装置200は、受信アンテナ210、無線部220、直交復調部230、チャネル変動推定部240、制御情報検波部250、対数尤度演算部260、デインタリーブ部270、及びLDPC復号部280を備えて構成される。
受信アンテナ210は、送信装置100から送信された送信RF信号を受信し、無線部220に送出する。
無線部220は、RFフィルタ処理、周波数変換、A/D(Analog to Digital)変換などの無線復調処理を行い、無線復調処理後の受信信号を直交復調部230に出力する。
直交復調部230は、無線復調処理後の受信信号からIチャネル、Qチャネルそれぞれのベースバンド信号を検出し、検出したベースバンド信号をチャネル変動推定部240、制御情報検波部250、及び対数尤度演算部260に送出する。
チャネル変動推定部240は、ベースバンド信号に含まれる既知信号を利用して、送信装置100と受信装置200との間の無線伝搬路におけるチャネル変動を推定し、推定結果を対数尤度演算部260に送出する。
また、制御情報検波部250は、ベースバンド信号に含まれる制御信号を検出し、対数尤度演算部260に送出する。
対数尤度演算部260は、ベースバンド信号から、送信された各符号語ビットの対数尤度比を求め、デインタリーブ部270に送出する。
デインタリーブ部270は、対数尤度比の系列の順序を、送信装置100でのインタリーブ部120で行った並び替え処理の逆の処理を用いて並び替える。
LDPC復号部280は、対数尤度比系列を用いて誤り訂正復号を行い、復号結果の硬判定値を出力する。
(LDPC復号部の構成)
図5に、LDPC復号部の構成例を示す。図5のLDPC復号部280は、LDPC−CC復号器281、LDPC−BC復号器282、及び硬判定部283を備えて構成される。
LDPC−CC復号器281は、デインタリーブ部270から出力される受信対数尤度系列に対し、LDPC−CC検査行列Hccに基づいたLDPC−CC復号処理を施す。LDPC−CC復号処理の詳細は、非特許文献1などに記載されているため説明を省略する。LDPC−CC復号器281は、LDPC−CC復号処理によって得られた、CC復号後軟判定値をLDPC−BC復号器282に出力する。
LDPC−BC復号器282は、LDPC−CC復号器281から出力されるCC復号後軟判定値に対し、LDPC−BC検査行列HBCに基づいたLDPC−BC復号処理を施す。LDPC−BC復号処理は、Belief Propagation復号、Sum-Product復号などのよく知られた復号アルゴリズムを用いて実施することができるため、その説明を省略する。
LDPC−BC復号器282は、LDPC−BC復号後のBC復号後軟判定値を硬判定部283に出力する。
硬判定部283は、BC復号後軟判定値を硬判定し、受信情報系列を取得する。
このように、受信装置200は、LDPC−CC復号部281において、受信対数尤度比系列にLDPC−CC復号を施すことにより、CC復号後軟判定値を取得する。次に、受信装置200は、LDPC−BC復号器282において、CC復号後軟判定値に対し、LDPC−BC復号を施すことによりBC復号後軟判定値を取得する。次に、受信装置200は、硬判定部283において、BC復号後軟判定値を硬判定することにより受信情報系列を取得する。
(動作)
以下、上述のように構成された送信装置100の動作について、図6のタイミング図を参照しながら、主にLDPC符号化部110の動作を中心に説明する。なお、図6には、図2及び図3に対応する系列(S11〜S17)と同一の符号が付されている。
送信情報系列u(t=1,…,n)は、まず、LDPC符号化部110に入力されると、切り替え器113を経由してLDPC−CC符号化器111に入力される。なお、送信情報系列uの添字「t」は、時刻を表し、nは、送信情報系列長に対応する時刻を表す。図6(a)には、時刻t1〜t3の間、LDPC−CC符号化器111に、入力系列S11として、送信情報系列uが入力される場合を示している。
送信情報系列uは、LDPC符号化部110のLDPC−CC符号化器111によって、LDPC−CC符号化される。LDPC−CC符号化器111によってLDPC−CC符号化されて取得された送信符号語系列v1,t,v2,t(符号化率R=1/2の場合)は、後段のインタリーブ部120に出力し、さらに、LDPC−BC符号化器112に出力される。図6(b)には、LDPC−CC符号化器111の出力系列S12,S13として、送信符号語系列v1,t,v2,tが、時刻t2〜t4の間に出力される様子が示されている。
LDPC−BC符号化器112の並列・直列変換部1121では、まず、並列に入力される送信符号語系列v1,t,v2,tが直列に変換され、直列変換後の送信符号語系列v1,t,v2,tは、切り替え器1122に出力される。
LDPC−BC符号化制御部1128は、時刻tがt≦nの場合、すなわち、送信符号語系列v1,t,v2,tの入力がある場合(以降、この時刻を「システマティック符号化期間」と呼ぶ)、送信符号語系列v1,t,v2,tをウェイト乗算部1123−1〜1123−Pに送出するように、切り替え器1122を制御する。図6に示す例では、時刻t2〜t4が、「システマティック符号化期間」となる。また、図6(d)に示すように、切り替え器1122の出力系列S15として、直列変換された送信符号語系列v1,t,v2,tが、刻t2〜t4の間に出力される様子が示されている。このとき、ウェイト乗算部1123−1〜1123−Pには、同一の送信符号語が送られる。なお、LDPC−BC符号化制御部1128は、送信符号後系列長に対応する時刻nについて予めシステム等から取得している。
ウェイト乗算部1123−1〜1123−Pでは、検査行列記憶部1126に記憶されている検査行列に基づいて、送信符号語系列v1,t,v2,tに対して1又は0の乗算が行われる。
図7に、検査行列の一例を示す。図7に示す検査行列HBCの各行は、LDPC−BCのパリティ検査方程式に対応し、各列はLDPC−BC符号語に対応する。また、検査行列HBCは、HBCsとHBCpの2つの部分から構成される。HBCsは、LDPC−BCにおいて、システマティックビット部分、すなわち、入力された送信符号語系列v1,t,v2,tに対応する部分の部分行列である。また、HBCpは、LDPC−BC符号化によって得られるパリティビット部分に対応する。また、HBCpは、下三角行列であり、このような特徴を持つ検査行列はLDGM(Low-Density Generation-Matrix)と呼ばれる。
システマティック符号化期間では、検査行列記憶部1126から、部分検査行列HBCsの各列の重みが、それぞれウェイト乗算部1123−1〜1123−Pに送出される。また、ウェイト乗算部1123−1〜1123−P、加算器1124−1〜1124−P、遅延器1125−1〜1125−Pのそれぞれでは、検査行列HBCの1行目からP行目のパリティ検査方程式に対応する演算が行なわれ、結果が並列・直列変換部1127に出力される。なお、並列・直列変換部1127では、LDPC−BC符号化制御部1128から、システマティック符号化期間であることが通知されている間は、加算器1124−1〜1124−Pの出力がそれぞれ蓄積(アキュムレート)される。
次に、時刻tがt>nの場合、すなわち、LDPC−CC符号化器111からの送信符号語系列v1,t,v2,tの入力が終了した場合(以降「パリティ符号化期間」と呼ぶ)について説明する。図6に示す例では、時刻t5〜時刻t7が、「パリティ符号化期間」となる。
パリティ符号化期間になると、LDPC−BC符号化制御部1128は、パリティ符号化期間であることを示す情報・パリティ切り替え信号及び指示信号を、切り替え器1122及び並列・直列変換部1127に通知する。
並列・直列変換部1127からは、パリティ符号化期間の場合、検査行列HBCの第1行に対応する加算器1124−1の出力から順に加算器1124−1〜1124−Pの出力が直列に変換される。また、変換後のパリティ系列(以降「BCパリティ系列」と呼ぶ)は、LDPC−CC符号化器111及び切り替え器1122に出力される(図6(c)参照)。
そして、切り替え器1122では、パリティ符号化期間の場合、ウェイト乗算部1123−1〜1123−Pに送出するビットが、LDPC−CC符号化器111から出力される送信符号語系列v1,t,v2,tに代えて、並列・直列変換部1127から出力されるBCパリティ系列vBC,tに切り替えられる(図6(d)参照)。
パリティ符号化期間になり、検査行列HBCのパリティビット部分、すなわちHBCpの第1列目(HBCの第KBC+1列目)から順にウェイトをウェイト乗算部1123−1〜1123−Pに出力していくよう指示を与える情報・パリティ切り替え信号が、LDPC−BC符号化制御部1128から、検査行列記憶部1126に出力される。次に、検査行列記憶部1126は、検査行列HBCの第KBCまでのウェイトを、ウェイト乗算部1123−1〜1123−Pに出力していない場合においても、第KBC列までの列をスキップし、第KBC+1列目のウェイトをウェイト乗算部1123−1〜1123−Pに出力する。そして、以降、検査行列記憶部1126は、第KBC+2列目、第KBC+3列目、と第NBC列目まで順にウェイト乗算部1123−1〜1123−Pにウェイトを出力する。
これにより、ウェイト乗算部1123−1〜1123−Pでは、BCパリティビット系列vBC,tのビット(以降「BCパリティビット」と呼ぶ)と検査行列の重みとが乗算される。
部分検査行列HBCpは、下三角行列になるように設計されているため、第2番目のBCパリティビットのウェイト乗算を行う際には、既に第1番目のBCパリティビットが求まっている。従って、ウェイト乗算部1123−1,加算器1124−1、遅延器1125−1の一連の処理を行わなくても良い。以降、同様に、第p番目のBCパリティビットのウェイト乗算を行う際には、p−1番目までのウェイト乗算部、加算器、遅延器の一連の処理を省略することができる。
このようにして、LDPC−BC符号化器112は、上述の処理で求めたBCパリティビットを直列変換して、BCパリティ系列vBC,tをLDPC−CC符号化器111に出力する。
これにより、LDPC−CC符号化器111は、送信情報系列uの後に、LDPC−BC符号化器112から出力されるBCパリティ系列vBC,tを接続して、LDPC−CC符号化を行うことになる(図6(a)参照)。ただし、LDPC−CC符号化器111は、BCパリティ系列vBC,tをLDPC−CC符号化することで得られる送信符号語系列v1,t+p,v2,t+pを、LDPC−BC符号化器112に対しては出力せずに、インタリーブ部120に対してのみ出力する(図6(e)参照)。
なお、LDPC−BC符号化器112は、パリティ符号化期間になると、検査行列記憶部1126から出力する重みを、強制的にHBCpの重みに切り替えるという処理を行う。
具体的には、パリティ符号化期間では、検査行列記憶部1126からは、部分検査行列HBCpの各列に対応する重みがそれぞれウェイト乗算部1123−1〜1123−Pに出力される。ここで、時刻tがKBCよりも小さい場合、すなわち、HBCsの全ての列の出力が終了していない場合であっても、パリティ符号化期間になると、検査行列記憶部1126から、HBCpの重みが出力される。このようにすることで、入力される送信符号語系列の長さがLDPC−BCのシステマティックブロック長KBCより短い場合でも、送信符号後系列の入力が終わったタイミングにおいて、LDPC−BC符号化により得られるパリティ系列を出力することができる。
パリティ符号化期間になると、検査行列記憶部1126から出力する重みを、強制的にHBCpの重みに切り替えるという処理は、時刻n以降KBCまでに得られる送信符号語系列が、全て0であると仮定してLDPC−BCの符号化を行っていることと等価である。そのため、復号時に、この仮定に基づいて復号処理を実施すれば、復号特性の劣化を招くことはない。
なお、検査行列HBCにおいて、システマティック部分に対応する部分行列HBCsのサイズ(列数)を、送信装置100を含む通信システムが取りうる、送信情報系列のLDPC−CC符号語系列数の最大値とする。これにより、送信情報系列のLDPC−CC符号語系列の数がHBCsのサイズを超え、この結果、LDPC−BC符号化されない送信情報系列のLDPC−CC符号語が発生するのを回避することができる。
このようにして、LDPC符号化部110から、誤り訂正符号化後の送信符号語系列がインタリーブ部120に送出されると、インタリーブ部120では、送信符号語系列がインタリーブされる。次に、変調部130では、インタリーブ後の送信符号語系列と、制御情報生成部140から出力される制御情報とが変調される。次に、変調後の変調シンボル系列に対し、無線部150によって無線変調処理が行われ、生成された送信RF信号は、送信アンテナ160を介して送信される。
次に、上述のように構成された受信装置200の動作について主にLDPC復号部280の動作を中心に説明する。
送信装置100から送信されたRF信号は、受信装置200の受信アンテナ210を介して受信され、無線部220に送出される。
無線部220では、送信装置100から送信されたRF信号に対し無線復調処理が施され、直交復調部230によって、Iチャネル、Qチャネルそれぞれのベースバンド信号が検出される。
制御情報検波部250では、ベースバンド信号に含まれる制御信号が検出され、検出された制御信号は対数尤度演算部260に送出される。
対数尤度演算部260によって、ベースバンド信号から、送信された各符号語ビットの対数尤度比が求められる。次に、デインタリーブ部270によって、対数尤度比の系列の順序が送信装置100でのインタリーブ部120で行った並び替え処理と逆の処理が用いられて並び替えられる。デインタリーブ後の受信対数尤度系列は、LDPC復号部280のLDPC−CC復号器281に送出される。
LDPC復号部280のLDPC−CC復号器281では、デインタリーブ部270から出力される受信対数尤度系列に対し、LDPC−CC検査行列Hccに基づいたLDPC−CC復号処理が施さる。LDPC−BC復号器282では、LDPC−CC復号器281から出力されるCC復号後軟判定値に対し、LDPC−BC検査行列HBCに基づいたLDPC−BC復号処理が施される。
硬判定部283では、BC復号後軟判定値が硬判定され、受信情報系列が取得される。
このように、LDPC復号部280では、LDPC−CC復号処理が行なわれた後に得られたLDPC−CC復号後軟判定値系列に対し、さらにLDPC−BC復号処理が行なわれる。このLDPC−CC復号後軟判定値系列は、送信情報系列に対しLDPC−CC符号化して取得されたLDPC−CC符号語に対し、さらにLDPC−BC符号を施して取得されたパリティ系列を付加した系列に対応する。
このようにして、LDPC−CC復号後軟判定値系列をLDPC−BC復号を行うようにすることで、LDPC−CCの最小距離が短いことによりLDPC−CC復号結果に誤りが残ったとしても、LDPC−BCの復号利得により、その誤りを訂正することができる。その結果、LDPC−CCのみを用いる場合に問題となっていたエラーフロアを改善することができる。
また、通常、複数の誤り訂正符号を連接符号化する場合、第1の符号の符号化器と第2の符号の符号化器との間にインタリーバが必要となり、また、第2の符号の復号器と第1の符号の復号器との間にデインタリーバが必要になる。これに対し、本実施の形態で用いるLDPC−BC符号は、ブロック長に相当する長さのインタリーブ効果を内包している。このため、本構成のように、連接符号化する符号の一方にLDPC−BC符号を用いることで、符号化器間のインタリーバ、復号器間のデインタリーバが不要となる。
以上のように、本実施の形態によれば、LDPC符号化部110は、LDPC−CC符号化を施すことによりLDPC−CC符号語系列を取得するLDPC−CC符号化器111と、得られたLDPC−CC符号語系列にLDPC−BC符号化を施すことによりパリティ系列を取得し、当該パリティ系列をLDPC−CC符号化器111に出力するLDPC−BC符号化器112と、を備え、LDPC−CC符号化器111は、送信情報系列にLDPC−CC符号化を施すことによりLDPC−CC符号語系列を取得し、LDPC−BC符号化器112は、当該LDPC−CC符号語系列にLDPC−BC符号化を施すことによりパリティ系列を取得し、LDPC−CC符号化器111は、当該パリティ系列に、さらに、LDPC−CC符号化を施すようにした。
また、LDPC復号部280は、入力系列にLDPC−CC復号を施すLDPC−CC復号部281と、LDPC−CC復号部281からの出力系列にLDPC−BC復号を施すLDPC−BC復号部282と、を備え、LDPC−CC復号器281は、受信対数尤度比系列をLDPC−CC復号することによりLDPC−CC復号後軟判定値を取得し、LDPC−BC復号器282は、当該LDPC−CC復号後軟判定値を用いてLDPC−BC復号を行うようにした。
このようにすることで、LDPC符号化部110からは、送信情報系列のLDPC−CC符号化系列に連接して、当該LDPC−CC符号化系列にLDPC−BC符号化を施し取得されるパリティ系列に対し、さらにLDPC−CC符号化を施し得られたLDPC−CC符号化系列が出力されるようになる。このため、LDPC復号部280で、送信情報系列のLDPC−CC符号化系列に対する復号処理が施された結果、誤りが生じた場合であっても、さらに、当該LDPC−CC符号化系列に対するパリティ系列の復号処理結果を用いることで、誤り訂正を行うことができるようになり、エラーフロアを改善することができる。
(変形例)
図8に、LDPC復号部の別の構成例を示す。図5に示したLDPC復号部280では、LDPC−CC復号器281及びLDPC−BC復号器282の双方に軟入力軟出力(SISO:Soft Input Soft Output)復号器を用いることにより、高い誤り訂正復号利得を得る。これに対し、図8に示すように、LDPC−CC復号器281とLDPC−BC復号器282との間に硬判定部283を設け、LDPC−BC復号器282が硬判定のLDPC−BC復号処理を行う構成としても良い。このようにすることで、LDPC−CC復号器281及びLDPC−BC復号器282の双方が、ともにSISO復号アルゴリズムを適用する場合に比べ、誤り訂正復号利得が低下してしまうものの、LDPC−BC復号器282の構成を簡易にすることができる。また、LDPC−BC復号処理にかかる時間も短縮される。
図9に、LDPC復号部のさらに別の構成例を示す。図9のLDPC復号部280は、LDPC−CC復号器281、誤り検出・ラベル付け部284、及びLDPC−BC消失訂正復号器285を備えて構成される。
誤り検出・ラベル付け部284は、LDPC−CC復号器281から出力されるCC復号後軟判定値を硬判定し、受信符号語系列を得る。さらに、誤り検出・ラベル付け部284は、検査行列Hccに基づいたパリティ検査を行う。LDPC−CC符号化された符号語は、LDPC−CC符号のメモリ長Mの単位で、パリティ検査を満たすかどうかを判定することができる。具体的には、LDPC−CCでは、式(3)を用いることにより、メモリ長Mの区切りごとに、パケット検査を行うことができる。
Figure 0005219699
このとき、誤り検出・ラベル付け部284は、受信符号語系列をメモリ長Mの区切りで、パリティ検査を満たす場合、誤り無しとしてその区切りに含まれる符号語を出力する。一方、パリティ検査を満たさない場合、誤り検出・ラベル付け部284は、誤りありと判定して、その区切りに含まれる符号語を全て「ε(消失)」として出力する。
LDPC−BC消失訂正復号器285は、誤り検出・ラベル付け部284から出力される消失ラベル付きの受信符号語系列に対し、LDPC−BCに基づく消失訂正復号アルゴリズムを適用し、消失訂正を行う。LDPC−BC消失訂正復号器285は、消失訂正復号処理を適用した後の受信情報系列を出力する。
このように、LDPC−CCのメモリ長Mの区切りでパリティ検査を行えるという特徴と、LDPC−BCの消失訂正復号処理を組み合わせることで、少ない演算量、復号処理時間で連接符号の復号処理を実施することが可能となる。
図10に、LDPC復号部のさらに別の構成例を示す。図10のLDPC復号部280は、LDPC−CC復号器281、LDPC−BC復号器282、硬判定部283、及び減算器286,287を備えて構成される、ターボ復号器である。
LDPC−CC復号器281は、まず、デインタリーブ部270から出力される受信対数尤度系列をLDPC−CC復号し、LDPC−CC復号処理後のCC復号後軟判定値を減算器286に出力する。次に、減算器286は、CC復号後軟判定値から減算器287から出力されるBC復号後外部値系列を減算し、CC復号後外部値系列をLDPC−BC復号器282及び減算器287に出力する。なお、初回のLDPC−CC復号時は、BC復号後外部値系列としてオールゼロ系列が与えられる。
次に、LDPC−BC復号器282は、CC復号後外部値系列を用いてLDPC−BC復号処理を行い、BC復号後軟判定値を硬判定部283及び減算器287に出力する。
減算器287は、BC復号後軟判定値から、CC復号後外部値系列を減算し、BC復号後外部値系列をLDPC−CC復号器281に出力する。
LDPC−CC復号器281は、減算器287から出力されるBC復号後外部値系列と、受信対数尤度比系列を用いて再度復号処理を行う。
この繰り返し復号処理を所定の回数繰り返した後、硬判定部283は、BC復号後軟判定値を硬判定した値から、受信情報系列を得る。
このように、LDPC復号部280を、LDPC−CC復号とLDPC−BC復号とのターボ復号の構成にすることで、2つの復号処理による反復復号利得が得られるため、復号利得が向上し、誤り率特性が改善する。
また、以上の説明では、LDPC符号化部110は、LDPC−CC符号化後に得られる送信符号語系列を用いてLDPC−BC符号化を行う場合について説明した。LDPC−CC符号化後の送信符号語系列を用いてLDPC−BC符号化を行う場合には、LDPC−BC符号の符号長を長くすることができ、LDPC−BCの訂正能力を向上することができる。また、図10で説明したようなターボ復号型の復号アルゴリズムを適用することができる。
なお、LDPC−BC符号化は、送信符号語系列に代えて、送信情報系列に直接施して実施することもできる。つまり、LDPC−CC符号化器111は、送信情報系列にLDPC−CC符号化を施すことによりLDPC−CC符号語系列を取得する。LDPC−BC符号化器112は、当該送信情報系列にLDPC−BC符号化を施すことによりパリティ系列を取得する。LDPC−CC符号化器111は、当該パリティ系列に、さらに、LDPC−CC符号化を施すようにしても良い。送信情報系列に直接LDPC−BC符号化を施す場合には、符号化されるビット数が、LDPC−BC検査行列の大きさに依存するため、符号化ビットが少なくなり、符号化・復号処理の演算量、遅延時間を削減できるという効果が得られる。
また、以上の説明では、LDPC−BCの検査行列HBCとして図7に示す検査行列の場合を例に説明したが、これに限るものではなく、例えばQC(Quasi Cyclic)−LDPC符号、Array−LDPC符号などの構造的(Structured)LDPC符号であっても良い。構造的LDPC符号の検査行列HBCは、単位行列、単位行列を任意の回数巡回シフトした行列、及びゼロ行列を縦・横に複数並べた形を採る。構造的LDPC符号の一例を図11に示す。ここで、HBCの各要素は、z×zの単位行列の巡回シフト量を表している。要素が0の場合は単位行列であり、要素が1以上の場合は、単位行列をその数だけ右に巡回シフトした行列を表す。また、要素が−の場合は、z×zのゼロ行列を表す。
このような構造的LDPC符号をLDPC−BCの検査行列として用いる際、単位行列のサイズzをLDPC−CCのメモリ長Mと同じか、メモリ長よりも大きく設定することが効果的である。LDPC−CCは畳み込み符号であるため、誤りが発生した場合、その誤りが影響する範囲はメモリ長M程度となる。そのため、この長さを超えるサイズの単位行列を用いて構造的LDPC符号を構成すれば、一つのLDPC−CCの誤りの影響は、パリティ検査方程式の中の1ビットのみとなるので、効果的にLDPC−BCによる誤り訂正を行うことができる。
また、LDPC−BCの検査行列HBCは、RA(Repeat and Accumulate)符号であっても良い。RA符号の例を図12に示す。RA符号は、システマティックビット部分に対応するHRAsとパリティビット部分に対応するHRApから構成される。
RA符号を用いた場合のLDPC−BC符号化器の構成例を図13に示す。なお、図13のLDPC−BC符号化器312において、図3のLDPC−BC符号化器112と共通する構成部分には、図3と同一の符号を付して説明を省略する。図13のLDPC−BC符号化器312は、図3のLDPC−BC符号化器112に対し、切り替え器1122を削除し、並列・直列変換部1127及びLDPC−BC符号化制御部1128に代え、並列・直列変換部3121及びLDPC−BC符号化制御部3124を備え、加算器3122及び遅延器3123を含む構成を採る。
並列・直列変換部3121は、LDPC−BC符号化制御部3124から、パリティ系列の出力を指示する指示信号を受け取ると、並列に蓄積していた加算器1124−1〜1124−Pの計算結果を、加算器1124−1の計算結果から順に直列に加算器3122に出力する。
加算器3122は、並列・直列変換部3121から出力された値と遅延器3123から出力された値とのmod2加算を行い、その結果をパリティ系列として出力する。
RA符号のHRApは、図12に示すような構成を採るので、RA符号の符号化は、図13に示すように送信情報系列にHRAsの乗算を行った後、得られたPRA個のビットを順にアキュムレートすることで実現することができる。
RA符号を用いた場合においても、送信情報系列の終了のタイミングで、LDPC−BC符号化で得られるパリティ系列を出力することができ、任意の長さの送信情報系列に対するLDPC符号化を行うことができる。
(実施の形態2)
本実施の形態では、LDPC−CCとLDPC−BCの双方の特徴を併せ持った検査行列を用いることで、LDPC−CCのエラーフロアを改善することができるLDPC符号化器及びLDPC復号器について説明する。
図14に、本実施の形態における検査行列の一例を示す。図14の検査行列400の重みが存在する位置は、部分行列410と部分行列420の内部のみで、それ以外は全て0である。部分行列410は、検査行列400の対角線に沿った台形の行列であり、これは、LDPC−CCの検査行列に対応する。また、部分行列420は、検査行列400の右端に位置する複数の列で構成される、部分行列420は、送信情報系列の全体にわたって重みが分布しており、これはLDPC−BCの検査行列に対応する。部分行列420の列数をPとする。このような行列により、LDPC−CCとLDPC−BCの双方の特徴を併せ持った検査行列を表現できる。
検査行列400に基づいたLDPC−CC符号の符号化を行うLDPC符号化器の構成例を図15に示す。なお、図15のLDPC符号化部510において、図3のLDPC−BC符号化器112と共通する構成部分には、図3と同一の符号を付して説明を省略する。
図15のLDPC符号化部510は、シフトレジスタ5121−1〜5121−M,5124−1〜5124−M、ウェイト乗算部5122−0〜5122−M,5123−0〜5123−M、ウェイト制御部5124、mod2加算器5125、ウェイト乗算部1123−1〜1123−P、加算器1124−1〜1124−P、遅延器1125−1〜1125−P、部分検査行列記憶部5126、並列・直列変換部5127、LDPC−BC符号化制御部5128を含む構成である。
部分検査行列記憶部5126は、検査行列400のうちの部分行列420を記憶しており、重みの位置にあわせて1又は0をウェイト乗算部1123−1〜1123−Pに送出する。
並列・直列変換部5127は、LDPC−BC符号化制御部5128からの指示信号に応じて、加算器1124−1〜1124−Pの出力を並列に蓄積するという動作(並列蓄積動作)と、加算器1124−1〜1124−Pの出力を加算器1124−1の出力から順に直列にmod2加算器5125に出力するという動作(直列出力動作)を行う。なお、並列蓄積動作中は、並列・直列変換部5127は、並列・直列変換部5127の出力を常に0にする。このようにすれば、並列蓄積動作中において、並列・直列変換部5127の出力がmod2加算器5125の計算結果に影響を与えない。
LDPC−BC符号化制御部5128は、送信情報系列数をnとする場合に、現在符号化を行っている送信情報系列のインデックスが、(n−P)以下の場合、並列・直列変換部5127に並列蓄積動作をするように指示信号を送出する。一方、送信情報系列のインデックスが、(n−P)より大きくなった場合は、並列・直列変換部5127に直列出力動作を行うように指示信号を送出する。
このようにすることで、送信情報系列のインデックスが(n−P)より大きくなった場合に、部分行列420と送信情報系列との演算結果がmod2加算器5125で加算されるようになる。
このように、LDPC符号化部510は、上記のような構成をとることにより、検査行列400に基づいたLDPC−CC符号の符号化を行うことができる。
次に、検査行列400に基づいてLDPC−CC復号を行うLDPC復号部について説明する。
図16に、検査行列400に基づいてLDPC−CC復号を行うLDPC復号部の構成例を示す。図16のLDPC復号部680は、LDPC−BCパリティ演算器681、LDPC−CC復号器682及びLDPC−BC復号器282を備えて構成される。
LDPC−BCパリティ演算器681は、検査行列400の部分行列420の重みの位置に基づき、受信対数尤度系列の入力に従ってP個の列に対応するパリティ検査式の演算を行う。また、受信対数尤度比系列のインデックスが、(n−P)より大きくなると、P個あるパリティ演算結果(q1〜qp)を順にLDPC−CC復号器682に出力する。
図17に、LDPC−BCパリティ演算器681の具体的な構成例を示す。図17に示すLDPC−BCパリティ演算器681の構成は、図15に示したLDPC符号化部510のLDPC−BC符号化部分と同様の構成を採っている。
LDPC−CC復号器682は、LDPC−CC復号を行う。詳細には、LDPC−CC復号器682は、受信対数尤度比系列のインデックスが(n−P)以下の場合はLDPC−CC復号を行う。一方、インデックスが(n−P)より大きい場合は、LDPC−BCパリティ演算器681から出力されるパリティ演算結果を含めてLDPC−CC復号を行う。以下、インデックスが(n−P)より大きい場合のLDPC−CC復号の例について説明する。
図18は、インデックスが(n−P)より大きい場合のLDPC−CC復号に用いるLDPC−CC検査行列を示す。図18のLDPC−CC検査行列700は、部分行列410と、追加部分行列710とから構成される。図14の部分行列420の列数をPとした場合、追加部分行列710は、P×Pの正方行列となる(図18の例では9×9の正方行列)。また、追加部分行列710の各行は、それぞれ、図17のLDPC−BCパリティ演算器681から出力されるLDPC−BCパリティビットq1〜qpに対応している。
LDPC−CC復号器682は、この追加部分行列710中に含まれる重みも考慮して、LDPC−CC復号を行う。LDPC−CC復号器682は、LDPC−CC復号後のCC復号後対数尤度比系列を、LDPC−BC復号器282に送出する。
LDPC−BC復号器282は、部分行列410を用いて取得されたCC復号後対数尤度比系列に対し、LDPC−BC復号処理を施す。LDPC−BC復号器282は、LDPC−BC復号後のBC復号後対数尤度比系列を硬判定した後出力する。
このようにLDPC復号部680は、LDPC−CC復号後に、LDPC−BC復号を行うという構成を採る。このため、LDPC復号部680は、LDPC−CCの最小距離が小さいことによりエラーフロアが生じた場合でも、発生した誤りをLDPC−BC復号により適切に訂正することができる。
以上のように、本実施の形態によれば、LDPC符号化部510は、対角成分がLDPC−CC検査行列の対角成分であって、かつ、右端の複数行列がLDPC−BC検査行列と入力データとを用いてLDPC−CC符号語系列を生成するようにした。LDPC−CCとLDPC−BCの双方の特徴を併せ持った検査行列を用いることで、LDPC−CCの最小距離が小さいことによりエラーフロアが生じた場合でも、発生した誤りをLDPC−BC復号に訂正しエラーフロアを改善することができる。
(変形例)
なお、図19に、LDPC復号部の別の構成例を示す。図19に示すLDPC復号部680aは、LDPC−BCパリティ演算器681a、LDPC−CC復号器682a及びLDPC−BC復号器683を備えて構成され、LDPC−CCの復号処理と、LDPC−BCの復号処理を反復して行う。
LDPC−CC復号器682aは、LDPC−CC復号器682と同様に、LDPC−CC復号を行い、LDPC−CC復号後のCC復号後対数尤度比系列をLDPC−BC復号器683に送出する。
LDPC−BC復号器683は、取得されたCC復号後対数尤度比系列に対し、LDPC−BC復号処理を施し、LDPC−BC復号後のBC復号後対数尤度比系列を、LDPC−BCパリティ演算器681a及びLDPC−CC復号器682aに出力する。
このように、LDPC復号部680aは、LDPC復号部680と同様の一連の動作を行った後、LDPC−BC復号器683が出力したBC復号後対数尤度比系列をLDPC−CC復号器682a及びLDPC−BCパリティ演算器681aに送出する。
LDPC−BCパリティ演算器681aは、BC復号後対数尤度比系列を事前値としてLDPC−BCのパリティ演算を行う。また、LDPC−CC復号器682aは、BC復号後対数尤度比系列を事前値としてLDPC−CC復号を行う。このようにすることで、LDPC−BC復号により利得が向上した対数尤度比系列を用いて、再度LDPC−CC復号処理を行うことができるので、LDPC−CC復号によって得られる符号化ゲインを大きくすることができる。その結果LDPC−CCのエラーフロア改善効果がさらに向上する。
また、図20にLDPC復号部にさらに別の構成例を示す。図20に示すLDPC復号部680bは、LDPC−CC・BC復号器684を備える。LDPC−CC・BC復号器684は、検査行列400で与えられるLDPC符号を一つのブロック符号と考えて、一括して復号する。このようにすることで、LDPC−CCとLDPC−BCの復号を一つの復号器で実施することができ、また、エラーフロア改善効果も得ることができる。
LDPC−CC・BC復号器684は、図14に示す検査行列400を用いて、よく知られたBelief Propagation、または、Sum-Productアルゴリズムを用いた復号を行う。
(実施の形態3)
実施の形態1では、LDPC−BC符号化器が、検査行列HBCを用いてLDPC−BC符号化を行う場合について説明した。LDPC−BCの符号化方法としては、検査行列を用いる方法に代えて、生成行列を用いる方法も適用することができる。本実施の形態では、生成行列を用いてLDPC−BC符号化を行うLDPC−BC符号化器について説明する。
なお、生成行列を用いてLDPC−BC符号化されたLDPC−BC符号語の復号には、検査行列を用いてLDPC−BC符号化されたLDPC−BC符号語を復号する場合と同様に、Belief Propagation復号、または、Sum-Product復号などの反復復号を適用することができる。そのため、以下では、復号方法についての説明を省略し、符号化方法のみについて説明する。
始めに、検査行列HBCを用いて生成行列GBCを導出する方法について説明する。
検査行列HBC(K×N行列)のうち、情報ビット部分に対応する部分行列をHBCs(K×(N−K)行列)、パリティビット部分に対応する部分行列をHBCp(K×K行列)とすると、以下の等式が成立する。
Figure 0005219699
式(4)において、sは情報系列を表し、pはパリティ系列を表す。
これらは全てGF(2)上で考えることができ、このとき式(4)は以下のように変形することができる。
Figure 0005219699
Figure 0005219699
ここで、式(5)及び式(6)のGBC(K×(N−K)行列)を生成行列と定義する。式(5)より、情報系列sに生成行列GBCを乗算することでパリティ系列pが得られる。すなわち、生成行列GBCを用いたLDPC−BC符号化が実現される。
LDPC−BCの検査行列HBCは、GF(2)上の行列(行列の各要素が0又は1)であるため、HBCを変形して得られた生成行列GBCもGF(2)上の行列となる。そのため、生成行列GBCと情報ビット系列sとの乗算は、mod2加算(排他的論理和)のみで実現することができる。
(LDPC−BC符号化器の構成)
次に、上述の生成行列GBCを用いてLDPC―BC符号化を行うLDPC−BC符号化器について説明する。
図21に、本実施の形態におけるLDPC−BC符号化器812の構成を示す。なお、図21のLDPC−BC符号化器812において、図3のLDPC−BC符号化器112と共通する構成部分には、図3と同一の符号を付して詳しい説明を省略する。
LDPC−BC符号化器812は、並列・直列変換部1121、ウェイト乗算部1123−1〜1123−P、加算器1124−1〜1124−P、遅延器1125−1〜1125−P、生成行列記憶部8126、並列・直列変換部8127、及びLDPC−BC符号化制御部8128を含む構成である。
並列・直列変換部1121は、LDPC−CC符号化器111から並列に出力されるLDPC−CC符号化後の送信符号語系列v1,t、v2,tを直列の系列に変換し、ウェイト乗算部1123−1〜1123−Pに出力する。
ウェイト乗算部1123−1〜1123−Pは、生成行列記憶部8126に記憶されている生成行列の重みの位置に従い、入力されてきたビットに対して1又は0のウェイトを乗算する。なお、ウェイト乗算部1123−1〜1123−Pは、入力されてきたビットに直接1又は0を乗算する構成にしても良い。また、ウェイト乗算部1123−1〜1123−Pは、重みが1の場合は、入力ビットを後段に出力し、0の場合は、入力ビットに関わらず0を出力するという構成を採っても良い。
加算器1124−1〜1124−Pは、ウェイト乗算部1123−1〜1123−Pから出力されるビットと、遅延器1125−1〜1125−Pから出力されるビットのmod2加算(排他的論理和演算)を行い、その結果を並列・直列変換部8127に出力する。
遅延器1125−1〜1125−Pは、入力ビットを1ビット分遅延させて出力する。
生成行列記憶部8126は、LDPC−BC符号化を行う生成行列GBCを記憶しており、時刻に応じて、ウェイト乗算部1123−1〜1123−Pに1又は0の重みを出力する。
並列・直列変換部8127は、加算器1124−1〜1124−Pの出力結果であるパリティビットを並列にアキュムレートし、アキュムレートしたP個のパリティビットを直列に変換してパリティ系列vBC,pとして出力する。なお、並列・直列変換部8127は、パリティビットをアキュムレートするタイミングと、アキュムレートしたパリティビットを直列に出力するタイミングとを、LDPC−BC符号化制御部8128からの指示信号に応じて切り替える。
LDPC−BC符号化制御部8128は、並列・直列変換部8127に指示信号を出力することにより、並列・直列変換部8127が、パリティビットをアキュムレートするか、アキュムレートしたパリティビットを直列に出力するか、切り替える。
具体的には、LDPC−BC符号化制御部8128は、送信情報系列のLDPC−CC符号語の系列(v1,0、v2,0)が入力されたタイミングで、並列・直列変換部8127に、パリティビットをアキュムレートする指示を与える指示信号を出力する。
次に、LDPC−BC符号化制御部8128は、送信情報系列のLDPC−CC符号語系列が入力し終わったタイミング(v1,n、v2,nまで入力されたタイミング(パリティ符号化期間))において、並列・直列変換部8127に、アキュムレートしたパリティビットを、パリティ系列vBC,pとして直列に出力する指示を与える指示信号を出力する。具体的には、LDPC−BC符号化制御部8128は、並列・直列変換部8127に、加算器1124−1の出力を初めに出力し、以降、加算器1124−Pの出力まで順に出力していくよう指示する。この指示信号により、並列・直列変換部8127は、パリティ系列vBCを出力する。
なお、生成行列記憶部8126から生成行列GBCの最終列のウェイトが出力される途中で、パリティ系列vBC,pを直列に出力するよう指示信号が出された場合、並列・直列変換部8127は、アキュムレートしたパリティビットを直ちにパリティ系列vBCとして直列に出力する。
パリティ系列vBC,pを直列に出力するよう指示信号が出されたタイミングで、生成行列記憶部8126から生成行列GBCの第k列までのウェイトまでしかウェイト乗算部1123−1〜1123−Pに出力されていなかった場合、当該タイミングで並列・直列変換部8127から出力されるパリティ系列vBCは、情報ビットの第k+1番目から第KBC番目までが全て0であると仮定して符号化を行った場合に得られるパリティ系列vBCと等価になる。なお、2n=k、KBC>2nとなる。従って、復号時に、この仮定に基づいて復号処理を実施することにより、復号特性の劣化を防ぐことができる。
LDPC−BC符号化器812の並列・直列変換部1121では、まず、並列に入力される送信符号語系列v1,t、v2,tが直列に変換され、直列変換後の送信符号語系列v1,t、v2,tは、ウェイト乗算部1123−1〜1123−Pに送出される。
ウェイト乗算部1123−1〜1123−Pでは、検査行列記憶部8126に記憶されている検査行列に基づいて、送信符号語系列v1,t、v2,tに対して1又は0の乗算が行われる。
図22に、符号化率R1/2の場合の生成行列GBCの一例を示す。図22の生成行列GBCは、PBC列KBC行の行列である。生成行列GBCの各行は、パリティ系列pの生成多項式に対応し、各列は情報系列sに対応する。
送信符号語系列v1,t,v2,tの入力がある場合(システマティック符号化期間)、生成行列記憶部8126から、生成行列GBCの各列の重みがそれぞれウェイト乗算部1123−1〜1123−Pに送出される。ここで、ウェイトは、生成行列GBCの第1列目から順に送出される。次に、ウェイト乗算部1123−1〜1123−P、加算器1124−1〜1124−P、遅延器1125−1〜1125−Pのそれぞれでは、生成行列GBCの1行目からP行目のパリティ生成多項式に対応する演算が行なわれ、結果が並列・直列変換部8127に出力される。なお、並列・直列変換部8127では、LDPC−BC符号化制御部8128から、システマティック符号化期間であることが通知されている間は、加算器1124−1〜1124−Pの出力がそれぞれ蓄積(アキュムレート)される。
パリティ符号化期間では、LDPC−BC符号化制御部8128から、パリティ符号化期間であることを示す指示信号が並列・直列変換部8127に通知される。
並列・直列変換部8127からは、パリティ符号化期間の場合、検査行列GBCの第1行に対応する加算器1124−1の出力から順に、LDPC−CC符号化器111に、それぞれ対応する加算器1124−1〜1124−Pの出力が直列に出力される。
以上のように、本実施の形態では、誤り訂正符号化部110に、生成行列GBCを用いたLDPC−BC符号化を行うLDPC−BC符号化器812を備えるようにした。実施の形態1におけるLDPC−BC符号化器112では、検査行列HBCがLDGMのように下三角行列を含むことを利用して、パリティビットを算出するようにした。これに対し、本実施の形態では、パリティビットは生成行列GBCを用いて算出されるため、検査行列HBCが下三角行列を含まない場合においても、LDPC−BCの符号化を行うことができる。
また、実施の形態1におけるLDPC−BC符号化器112は、部分検査行列HBCpが下三角行列の検査行列HBCを用いてパリティビットを逐次的に求めるため、パリティ系列vBC,pをフィードバックするための結線及び切り替え器1122が必要であった。これに対し、本実施の形態におけるLDPC−BC符号化器812は、生成行列GBCを用いてパリティビットを一斉に算出するため、パリティ系列vBC,pをフィードバックするための結線及び切り替え器1122が不要となる。また、本実施の形態では、フィードバックされたパリティ系列vBC,pに対するLDPC−BC符号化処理が不要となる。
なお、上記実施の形態では、畳み込み符号としてLDPC−CCを用いる場合について説明したが、畳み込み符号はLDPC−CCに限られない。拘束長が比較的短く、検査行列が低密度にならない畳み込み符号であっても、本発明により、上記と同様に、エラーフロアを改善することができる。特に、畳み込み符号にLDPC−CCを用いると、復号側でSum-Product法などの反復復号を用いることにより、拘束長の長い畳み込み符号を使うことができるので、さらにより高い復号特性を得ることができる。
また、上記実施の形態では、ブロック符号として、LDPC−BC、RA符号を用いる場合について説明したが、ブロック符号はLDPC−BC、RA符号に限られない。LDPC−BC符号化器は、ブロック符号のシステマティックビット部分に相当する部分行列HBCsのサイズ(列数)を、送信装置を含む通信システムが取りうる、送信情報系列の畳み込み符号語系列数の最大値とする。これにより、上記と同様に、LDPC−BC符号化器は、ブロック符号化されない送信情報系列の畳み込み符号語が発生するのを回避することができる。
また、この符号化方法及び復号方法をソフトウェアとして行うことも可能である。例えば、上記符号化方法及び通信方法を実行するプログラムを予めROM(Read Only Memory)に格納しておき、そのプログラムをCPU(Central Processor Unit)によって動作させるようにしても良い。
また、上記符号化方法及び復号方法を実行するプログラムを、コンピュータで読み取り可能な記憶媒体に格納し、記憶媒体に格納されたプログラムをコンピュータのRAM(Random Access Memory)に記録して、コンピュータをそのプログラムに従って動作させるようにしても良い。
また、本発明は、無線通信に限らず、電灯線通信(PLC:Power Line Communication)、可視光通信、光通信においても有用であることは言うまでもない。
本発明にかかる符号化装置及び復号装置は、任意の長さの情報系列に対して、符号化・復号が可能な畳み込み符号の特徴を用いて、エラーフロアを改善することができる。例えば、本発明に係る符号化装置及び復号装置は、LDPC符号を用いて誤り訂正符号化を施す符号化装置、LDPC符号化された符号系列を復号する復号装置などに有用である。
本発明の実施の形態1における送信装置の構成を示すブロック図 実施の形態1におけるLDPC符号化部の構成例を示すブロック図 実施の形態1におけるLDPC−BC符号化器の構成例を示すブロック図 実施の形態1における受信装置の構成を示すブロック図 実施の形態1におけるLDPC復号部の構成例を示すブロック図 LDPC符号化部の動作を説明するためのタイミング図 検査行列記憶部に記憶されている検査行列の一例 LDPC復号部の別の構成例を示すブロック図 LDPC復号部の別の構成例を示すブロック図 LDPC復号部の別の構成例を示すブロック図 構造的LDPC符号の一例を示す図 RA符号の一例を示す図 RA符号を用いた場合のLDPC−BC符号化器の構成例を示すブロック図 本発明の実施の形態2における検査行列の一例を示す図 実施の形態2におけるLDPC符号化部の構成例を示すブロック図 実施の形態2におけるLDPC復号部の構成例を示すブロック図 実施の形態2におけるLDPC−BCパリティ演算器の構成例を示すブロック図 実施の形態2における検査行列の一例を示す図 LDPC復号部の別の構成例を示すブロック図 LDPC復号部の別の構成例を示すブロック図 本発明の実施の形態3におけるLDPC−BC符号化器の構成例を示すブロック図 実施の形態3における生成行列の一例を示す図 LDPC−CCの検査行列の一例を示す図 LDPC−CC符号化器の構成例を示すブロック図
符号の説明
100 送信装置
110,510 LDPC符号化部
120 インタリーブ部
130 変調部
140 制御情報生成部
150,220 無線部
160 送信アンテナ
111 LDPC−CC符号化器
112,312,812 LDPC−BC符号化器
113 切り替え器
200 受信装置
210 受信アンテナ
230 直交復調部
240 チャネル変動推定部
250 制御情報検波部
260 対数尤度演算部
270 デインタリーブ部
280,680,680a,680b LDPC復号部
281,682,682a LDPC−CC復号器
282,683 LDPC−BC復号器
283 硬判定部
284 誤り検出・ラベル付け部
285 LDPC−BC消失訂正復号器
286,287 減算器
681,681a LDPC−BCパリティ演算器
684 LDPC−CC・BC復号器
1121 並列・直列変換部
1122 切り替え器
1123−1〜1123−P,5122−0〜5122−M,5123−0〜5123−M ウェイト乗算部
1124−1〜1124−P,3122 加算器
1125−1〜1125−P,3123 遅延器
1126,8126 検査行列記憶部
1127,3121,5127,8127 並列・直列変換部
1128,3124,5128 LDPC−BC符号化制御部
5121−1〜5121−M,5124−1〜5124−M シフトレジスタ
5124 ウェイト制御部
5125 mod2加算器
5126 部分検査行列記憶部

Claims (13)

  1. 入力系列に畳み込み符号化を施すことにより畳み込み符号語系列を取得する畳み込み符号化部と、
    前記畳み込み符号語系列にブロック符号化を施すことによりパリティ系列を取得するとともに、当該パリティ系列を前記畳み込み符号化部に出力するブロック符号化部と、
    を具備する符号化装置。
  2. 前記畳み込み符号化部は、前記入力系列にLDPC−CC(Low-Density Parity-Check
    Convolutional Codes:低密度パリティ検査畳み込み符号)符号化を施すことにより前記畳み込み符号語系列としてLDPC−CC符号語系列を取得し、
    前記ブロック符号化部は、前記LDPC−CC符号語系列にLDPC−BC(Low-Density Parity-Check Block Codes:低密度パリティ検査ブロック符号)符号化を施すことによりパリティ系列を取得するとともに、前記パリティ系列を前記畳み込み符号化部に出力する、
    請求項1に記載の符号化装置。
  3. 前記ブロック符号化部は、前記LDPC−BC符号化により得られたパリティビットを並列にアキュムレートし、並列にアキュムレートした前記パリティビットを直列変換して前記パリティ系列として出力する出力部を有し、
    前記出力部は、前記パリティビットをアキュムレートするタイミングと、アキュムレートした前記パリティビットを直列に出力するタイミングとを、前記ブロック符号化部に入力される前記LDPC−CC符号語系列の系列長に基づいて切り替える、
    請求項2に記載の符号化装置。
  4. 前記パリティビットをアキュムレートするタイミングは、前記畳み込み符号化部から前記ブロック符号化部に、前記入力系列が送信情報系列の場合の前記LDPC−CC符号語系列が出力されるタイミングである、
    請求項3に記載の符号化装置。
  5. 前記パリティビットを直列変換して出力するタイミングは、前記畳み込み符号化部から前記ブロック符号化部に、前記入力系列が送信情報系列の場合の前記LDPC−CC符号語系列の出力が終了したタイミングである、
    請求項3に記載の符号化装置。
  6. 前記ブロック符号化部は、低密度生成行列(LDGM:Low-Density Generation Matrix)を用いて前記LDPC−BC符号化を行う、
    請求項2に記載の符号化装置。
  7. 前記ブロック符号化部は、RA(Repeat Accumulate)符号を用いて前記LDPC−B
    C符号化を行う、
    請求項2に記載の符号化装置。
  8. 前記ブロック符号化部は、前記LDPC−BCとして構造的LDPC符号を用い、
    前記構造的LDPC符号を構成する要素単位行列の行数をLDPC−CCのメモリ長以上とする、
    請求項2に記載の符号化装置。
  9. 前記ブロック符号化部は、LDPC−BCの検査行列から得られる生成行列を用いて前記LDPC−BC符号化を行う、
    請求項2に記載の符号化装置。
  10. 力系列の受信対数尤度比系列にLDPC−CC復号を施すことによりLDPC−CC復号後軟判定値を取得するLDPC−CC復号部と、
    記LDPC−CC復号後軟判定値を用いてLDPC−BC復号を行うLDPC−BC復号部と、
    を具備する復号装置。
  11. 力系列の受信対数尤度比系列にLDPC−CC復号を施すことによりLDPC−CC復号後軟判定値を取得するLDPC−CC復号部と、
    前記LDPC−CC復号後軟判定値を硬判定することにより硬判定値を取得する硬判定部
    該硬判定値を用いてLDPC−BC復号を行うLDPC−BC復号部と、
    を具備する復号装置。
  12. 力系列の受信対数尤度比系列にLDPC−CC復号を施すことにより軟判定値を取得するLDPC−CC復号部と、
    前記軟判定値を硬判定することにより受信符号語系列を取得し、前記LDPC−CC復号に用いられるLDPC−CC検査行列のメモリ長ごとに、前記受信符号語系列に対し誤り検出を行い、誤り検出結果に基づいて前記受信符号系列に誤りラベルを付加する誤り検出部
    記誤りラベルに基づいて前記メモリ長ごとに前記受信符号語系列に対し消失訂正復号を行う消失訂正復号部と、
    を具備する復号装置。
  13. 力系列の受信対数尤度比系列にLDPC−CC復号を施すことにより軟判定値を取得するLDPC−CC復号部と、
    該軟判定値を用いてLDPC−BC復号を行うことにより軟判定値を取得するLDPC−BC復号部と、
    を具備し、
    前記LDPC−CC復号部は、前記LDPC−BC復号部により取得された前記軟判定値を事前値として前記LDPC−CC復号を行う、
    号装置。
JP2008219825A 2007-08-30 2008-08-28 符号化装置及び復号装置 Active JP5219699B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2008219825A JP5219699B2 (ja) 2007-08-30 2008-08-28 符号化装置及び復号装置
US12/674,896 US8473823B2 (en) 2007-08-30 2008-08-29 Encoding device and decoding device
PCT/JP2008/002368 WO2009028207A1 (ja) 2007-08-30 2008-08-29 符号化装置及び復号装置
CN200880104296.4A CN101785189B (zh) 2007-08-30 2008-08-29 编码装置和解码装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007224622 2007-08-30
JP2007224622 2007-08-30
JP2008219825A JP5219699B2 (ja) 2007-08-30 2008-08-28 符号化装置及び復号装置

Publications (2)

Publication Number Publication Date
JP2009077391A JP2009077391A (ja) 2009-04-09
JP5219699B2 true JP5219699B2 (ja) 2013-06-26

Family

ID=40611885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008219825A Active JP5219699B2 (ja) 2007-08-30 2008-08-28 符号化装置及び復号装置

Country Status (3)

Country Link
US (1) US8473823B2 (ja)
JP (1) JP5219699B2 (ja)
CN (1) CN101785189B (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5247355B2 (ja) * 2007-10-31 2013-07-24 パナソニック株式会社 送信装置
WO2010001502A1 (ja) * 2008-06-30 2010-01-07 国立大学法人愛媛大学 復号化装置、垂直磁気記録再生装置、受信装置、および、復号化方法
US8595588B2 (en) 2009-11-13 2013-11-26 Panasonic Corporation Encoding method, decoding method, coder and decoder
US8401105B2 (en) 2010-06-10 2013-03-19 Intel Mobile Communications GmbH Method for transmitting a data signal in a MIMO system
WO2012098909A1 (ja) * 2011-01-21 2012-07-26 パナソニック株式会社 符号化方法、復号方法、符号化器、及び、復号器
US8910025B2 (en) * 2011-10-03 2014-12-09 Samsung Electronics Co., Ltd. Method and apparatus of QC-LDPC convolutional coding and low-power high throughput QC-LDPC convolutional encoder and decoder
KR101296773B1 (ko) 2011-10-07 2013-08-14 한국전기연구원 Ldpc 부호 복호화 장치 및 방법
US9048876B2 (en) * 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
JP5796510B2 (ja) * 2012-02-16 2015-10-21 富士通株式会社 電子装置、受信装置及び誤り訂正方法
WO2014017062A1 (ja) * 2012-07-24 2014-01-30 パナソニック株式会社 符号化方法、復号方法
US9270417B2 (en) * 2013-11-21 2016-02-23 Qualcomm Incorporated Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions
KR101484066B1 (ko) 2013-11-29 2015-01-19 한국과학기술원 엘디피시 부호의 디코딩 방법
CN105322970B (zh) * 2014-07-23 2019-02-26 上海数字电视国家工程研究中心有限公司 针对下一代无线广播的ldpc码字及编码方法和编解码器
US9667274B2 (en) * 2015-03-19 2017-05-30 Telefonaktiebolaget Lm Ericsson (Publ) Method of constructing a parity-check matrix for using message-passing algorithm to decode the repeat-accumulate type of modulation and coding schemes
CN105005511A (zh) * 2015-06-30 2015-10-28 宁波东海仪表水道有限公司 一种串行通信数据校验方法
CN105515588B (zh) * 2015-07-15 2017-10-17 北京理工大学 一种ldpc‑cc高速译码器
WO2017197561A1 (zh) * 2016-05-16 2017-11-23 华为技术有限公司 一种卷积ldpc译码方法、装置、译码器及系统
EP3832922A1 (en) * 2016-07-15 2021-06-09 Sharp Kabushiki Kaisha Transmission apparatus, reception apparatus, transmission method, and reception method
US10114569B2 (en) * 2016-10-07 2018-10-30 Cnex Labs, Inc. Computing system with shift expandable coding mechanism and method of operation thereof
WO2020164751A1 (en) * 2019-02-13 2020-08-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder and decoding method for lc3 concealment including full frame loss concealment and partial frame loss concealment
US11637657B2 (en) * 2019-02-15 2023-04-25 Intel Corporation Low-latency forward error correction for high-speed serial links
US11249837B2 (en) 2019-03-01 2022-02-15 Intel Corporation Flit-based parallel-forward error correction and parity
US11740958B2 (en) 2019-11-27 2023-08-29 Intel Corporation Multi-protocol support on common physical layer

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002076923A (ja) * 2000-08-30 2002-03-15 Sony Corp 信号処理装置および方法、並びに記録媒体
JP2002313035A (ja) * 2001-04-18 2002-10-25 Sharp Corp 符号化方法および記録媒体、復号方法、並びに、記録媒体再生装置
US8046662B2 (en) * 2004-08-20 2011-10-25 Broadcom Corporation Method and system for decoding control data in GSM-based systems using inherent redundancy
JP4595574B2 (ja) * 2005-02-07 2010-12-08 ソニー株式会社 復号装置および方法、並びにプログラム
JP4822932B2 (ja) * 2005-05-27 2011-11-24 パナソニック株式会社 受信品質推定装置、無線通信システム及び受信品質推定方法
JP4729726B2 (ja) * 2006-02-06 2011-07-20 学校法人 名城大学 誤り訂正装置、受信装置、誤り訂正方法および誤り訂正プログラム

Also Published As

Publication number Publication date
US20110138258A1 (en) 2011-06-09
CN101785189A (zh) 2010-07-21
CN101785189B (zh) 2014-01-22
US8473823B2 (en) 2013-06-25
JP2009077391A (ja) 2009-04-09

Similar Documents

Publication Publication Date Title
JP5219699B2 (ja) 符号化装置及び復号装置
JP5354979B2 (ja) 低密度パリティ検査畳み込み符号(ldpc−cc)符号化器及びldpc−cc復号器
US10038576B2 (en) Method and apparatus for transmitting and receiving data in a communication system
US10903857B2 (en) Data retransmission method for polar code, and device therefor
US8261152B2 (en) Apparatus and method for channel encoding/decoding in communication system using variable-length LDPC codes
US7519895B2 (en) Channel encoding/decoding apparatus and method using a parallel concatenated low density parity check code
JP4392924B2 (ja) 符号化装置及び方法、記憶媒体
EP1783916B1 (en) Apparatus and method for stopping iterative decoding in a mobile communication system
US10116332B2 (en) Method for configuring circular buffer including outer code parity and apparatus therefor
JP2002185336A (ja) 大最小距離を用いたターボ符号化方法及びそれを実現するシステム
KR20060048403A (ko) 반구조적 블록 저밀도 패리티 검사 부호 부호화/복호 장치및 방법
JP2007531385A (ja) 可変符号化率を有するブロック低密度パリティ検査符号の符号化/復号装置及び方法
US11777525B2 (en) Method for transmitting LDPC code using row-orthogonal and apparatus therefor
CN109644009B (zh) 纠错解码装置以及光发送接收装置
US11206042B2 (en) Layered decoding method for LDPC code and device therefor
US11082060B2 (en) LPDC code transmission method using row-orthogonal structure and apparatus therefor
US10819372B2 (en) Method for dividing transport block of LDPC code and apparatus therefor
US10756761B2 (en) Method for dividing carrying block of LDPC code and apparatus therefor
Synthia et al. Performance study of turbo code with interleaver design
KR101354731B1 (ko) 통신 시스템에서 연접 저밀도 생성 행렬 부호 부호화/복호장치 및 방법
JP2009177648A (ja) 低密度パリティ検査畳み込み符号(ldpc−cc)符号化器及び送信装置
JP2001326577A (ja) 直接連接畳込み符号器、及び、直接連接畳込み符号化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130305

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5219699

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350