JP2005269535A - 復号装置および前処理装置 - Google Patents

復号装置および前処理装置 Download PDF

Info

Publication number
JP2005269535A
JP2005269535A JP2004082768A JP2004082768A JP2005269535A JP 2005269535 A JP2005269535 A JP 2005269535A JP 2004082768 A JP2004082768 A JP 2004082768A JP 2004082768 A JP2004082768 A JP 2004082768A JP 2005269535 A JP2005269535 A JP 2005269535A
Authority
JP
Japan
Prior art keywords
signal
unit
value
minimum value
likelihood
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.)
Granted
Application number
JP2004082768A
Other languages
English (en)
Other versions
JP3891186B2 (ja
Inventor
Takashi Maebatake
貴 前畠
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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries 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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Priority to JP2004082768A priority Critical patent/JP3891186B2/ja
Priority to CA002499177A priority patent/CA2499177A1/en
Priority to US11/080,408 priority patent/US7603607B2/en
Priority to KR1020050022645A priority patent/KR101129942B1/ko
Priority to TW094108540A priority patent/TWI335144B/zh
Priority to CNB2005100548943A priority patent/CN100527637C/zh
Publication of JP2005269535A publication Critical patent/JP2005269535A/ja
Application granted granted Critical
Publication of JP3891186B2 publication Critical patent/JP3891186B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • H03M13/1122Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule storing only the first and second minimum values per check node
    • CCHEMISTRY; METALLURGY
    • C25ELECTROLYTIC OR ELECTROPHORETIC PROCESSES; APPARATUS THEREFOR
    • C25BELECTROLYTIC OR ELECTROPHORETIC PROCESSES FOR THE PRODUCTION OF COMPOUNDS OR NON-METALS; APPARATUS THEREFOR
    • C25B15/00Operating or servicing cells
    • C25B15/08Supplying or removing reactants or electrolytes; Regeneration of electrolytes
    • CCHEMISTRY; METALLURGY
    • C25ELECTROLYTIC OR ELECTROPHORETIC PROCESSES; APPARATUS THEREFOR
    • C25BELECTROLYTIC OR ELECTROPHORETIC PROCESSES FOR THE PRODUCTION OF COMPOUNDS OR NON-METALS; APPARATUS THEREFOR
    • C25B1/00Electrolytic production of inorganic compounds or non-metals
    • C25B1/01Products
    • C25B1/02Hydrogen or oxygen
    • C25B1/04Hydrogen or oxygen by electrolysis of water
    • CCHEMISTRY; METALLURGY
    • C25ELECTROLYTIC OR ELECTROPHORETIC PROCESSES; APPARATUS THEREFOR
    • C25BELECTROLYTIC OR ELECTROPHORETIC PROCESSES FOR THE PRODUCTION OF COMPOUNDS OR NON-METALS; APPARATUS THEREFOR
    • C25B9/00Cells or assemblies of cells; Constructional parts of cells; Assemblies of constructional parts, e.g. electrode-diaphragm assemblies; Process-related cell features
    • C25B9/17Cells comprising dimensionally-stable non-movable electrodes; Assemblies of constructional parts thereof
    • 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/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/30Hydrogen technology
    • Y02E60/36Hydrogen production from non-carbon containing sources, e.g. by water electrolysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Electrochemistry (AREA)
  • Organic Chemistry (AREA)
  • Metallurgy (AREA)
  • Materials Engineering (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Inorganic Chemistry (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

【課題】 低密度パリティ検査符号の復号回路の規模を低減する。
【解決手段】 パリティ検査行列の行処理部における外部値対数比αmnを算出する処理時に、行処理において利用されるデータのうち、絶対値が最小値および2番目の最小値を記憶する。処理データが、最小値と一致する場合には、2番目の最小値を出力し、最小値と不一致の場合には、最小値を出力する。これにより、復号処理時、min−sum復号法に従って復号動作が行なわれる処理において最小値を求めるMin演算を実行する部分の構成を簡略化することができる。
【選択図】 図9

Description

この発明は、入力符号を復号する復号装置およびその復号処理における所定の処理に対する前処理を行なうための回路に関する。より特定的には、この発明は、低密度パリティ検査符号を復号するための回路装置の構成に関する。
データの通信システムを構築する場合には、高速通信、低消費電力、高通信品質(低ビット誤り率)等が要求される。受信符号の誤りを検出して訂正する誤り訂正技術は、これらの要求を満たす1つの技術として、無線、有線および記録システム等において幅広く利用されている。
近年、この誤り訂正技術の1つとして、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号と、sum-product復号法とが注目されている。このLDPC符号を利用する復号操作は、Chung等の非特許文献1(S. Y. Chung et al.,“On the Design of Low-Density Parity-Check Codes within 0.0045dB of the Shannon Limit”IEEE COMUNICATIONS LETTERS, VOL.5, No.2, Feb. 2001, pp.58-60)において議論されている。この非特許文献1においては、符号化率1/2のイレギュラーLDPC符号を利用して白色ガウス通信路のシャノン(Shannon)限界まで0.04dBという復号特性が得られることが示されている。イレギュラーLDPC符号は、パリティ検査行列の行重み(行において1が立つ数)および列重み(列において1が立つ数)が、一定ではない符号を示す。行重みおよび列重みが各行および各列において一定のLDPC符号は、レギュラーLDPC符号と呼ばれる。
この非特許文献1においては、LDPC符号をsum-product復号法に従って復号する数学的なアルゴリズムが示されているものの、その膨大な計算を具体的に行なう回路構成については何ら示していない。
Yeo等の非特許文献2(E. Yeo et al.,“VLSI Architectures for Iterative Decoders in Magnetic Recording Channels”IEEE Trans. Magnetics, Vol,37, No.2, March 2001, pp.748-755)は、LDPC符号の復号装置の回路構成について検討している。この非特許文献2においては、受信系列に基づいて情報シンボルの事後確率を、トレリスに基づくMAP(最大事後確率)アルゴリズム、すなわちBCJRアルゴリズムに従って計算する。このトレリスにおいて前方向および後方向の繰返しを各状態について計算し、これらの前方向および後方向の繰返し値に基づいて、事後確率を求めている。この計算式において、加算/比較/選択/加算装置を用いて計算する。LDPC符号の算出においては、sum-product復号法に基づき、検査行列を生成し、異なるチェックノードからの値を利用して、推定値を算出するように回路を構成している。
また、非特許文献3(和田山正、「低密度パリティ検査符号とその復号法について」、信号技報 MR2001−83、2001年12月)においては、LDPC符号とsum-product復号法を解説し、また対数領域でのmin-sum復号法が解説されている。この非特許文献3においては、加算、最小、正負の判定および正負の符号の乗算という4種類の基本演算のみでギャラガー(Gallager)のf関数に従う処理を実装することができることが示されている。
S. Y. Chung et al.,"On the Design of Low-Density Parity-Check Codes within 0.0045dB of the Shannon Limit"IEEE COMUNICATIONS LETTERS, VOL.5, No.2, Feb. 2001, pp.58-60 E. Yeo et al.,"VLSI Architectures for Iterative Decoders in Magnetic Recording Channels"IEEE Trans. Magnetics, Vol,37, No.2, March 2001, pp.748-755 和田山正、「低密度パリティ検査符号とその復号法について」、信号技報、MR2001−83、2001年12月
上述の非特許文献2および3においては、パリティ検査行列を生成して1次推定語を算出するために、sum-product法に従ってギャラガー(Gallager)のf関数を用いて外部値対数比αを更新し、次いで、この外部値対数比に基づいてシンボルの事前値対数比βを算出する処理が行なわれる。このため、ギャラガー関数の演算に長時間を有し、また回路規模も増大する。
上述の非特許文献3においては、sum-product復号法とmin-sum復号法とは等価であり、min-sum復号法を利用することにより、実装時の回路構成を簡略化することができることを示している。しかしながら、このmin-sum復号法を利用する場合においても、パリティ検査用の検査行列を用いて最小値を算出するMin演算処理においては、各要素ごとにMin演算を行なって最小値を求めており、符号の長さが増大するのに応じて、演算対象の要素数が増大し、同様、処理時間が長時間となり、また回路規模が大きくなり、また、その構成も複雑となる。
それゆえ、この発明の目的は、簡易な回路構成で、受信符号を復号することのできる復号装置を提供することである。
この発明の他の目的は、LDPC符号の復号化処理におけるmin-sum処理ステップを簡易な回路構成で実現することのできる復号装置を提供することである。
この発明の第1の観点に係る復号装置は、所定数の信号で構成される1単位内の信号について、尤度の最も低い第1の信号とこの第1の信号の次に尤度の低い第2の信号とを抽出して記憶する尤度記憶手段と、1単位内の信号それぞれについて、1単位内において自身を除いて最小尤度の信号が選択されるように第1および第2の信号の一方を選択して出力する選択手段と、この選択手段により選択された信号と1単位内の信号の符号とから新たな信号を生成して1単位の信号の推定信号系列を生成する受信信号推定手段を含む。
この発明の第2の観点に係る前処理装置は、パリティ検査行列の第1の方向に整列する要素を用いて入力信号の推定値を算出する処理の前処理を行なう装置であって、入力信号の1処理単位の信号を入力し、絶対値の小さなほうから2つの信号を抽出して記憶する記憶手段と、この1処理単位の信号について、この1処理単位の信号において自身を除く信号のうちの絶対値の一番小さな信号が選択されるように記憶手段に記憶された2つの信号の一方を選択して出力する最小値検出手段とを含む。この最小値検出手段の出力値に従って1処理単位の信号の検査行列の第1の方向に整列する要素に基づく処理が実行される。
第1の観点の復号装置においては、尤度の低い2つの信号値を記憶することが要求されるだけであり、処理単位内の信号値をすべて記憶することは要求されない。したがって、回路規模を低減することができる。また、単に、2つの信号を候補として選択を行なうだけであり、1処理単位内の他の信号すべてを選択対象として選択処理を行なう必要がなく、計算量が低減され、処理時間を短縮することができる。
第2の観点の前処理装置においては、入力信号の1処理単位の信号から絶対値の小さなほうから2つの信号を抽出して記憶し、この1処理単位の信号について、自信を除く信号のうちの絶対値の一番小さな信号が選択されるように記憶手段に記憶された2つの信号の一方を選択している。したがって、この最小値検出時に、すべての信号を記憶してこの1処理単位内の他の信号をすべて選択対象として最小値検出処理を行なう必要がなく、回路規模が低減され、また処理時間も低減される。これにより、復号時の最小値検出という外部値対数比の算出に対する前処理を高速で行なうことができる。
[実施の形態1]
図1は、この発明に従う復号装置を用いる通信システムの構成の一例を示す図である。図1において、通信システムは、送信側において、送信情報に誤り訂正用の冗長ビットを付加して送信符号を生成する符号化器1と、この符号化器1からの(K+M)ビットの符号を所定の方式に従って変調して通信路3へ出力する変調器2とを含む。
符号化器1は、Kビットの情報に対し、パリティ計算用の冗長ビットMビットを付加して、(K+M)ビットのLDPC符号(低密度パリティ検査符号)を生成する。パリティ検査行列においては、行が冗長ビットに対応し、列が符号ビットに対応する。
変調器2は、この通信路3の構成に応じて、振幅変調、位相変調、コード変調、周波数変調または直行周波数分割多重変調などの変調を行なう。たとえば、通信路3が、光ファイバの場合、変調器2においては、レーザダイオードの輝度を送信情報ビット値に応じて変更させることにより、光の強度変調(一種の振幅変調)を行なっている。たとえば、送信データビットが“0”の場合には、このレーザダイオードの発光強度を強くして“+1”として送信し、また送信データビットが“1”の場合、レーザダイオードの発光強度を弱くして、“−1”に変換して送信する。
受信部においては、通信路3を介して送信された変調信号に復調処理を施して、(K+M)ビットのデジタル符号を復調する復調器4と、この復調器4からの(K+M)ビットの符号にパリティ検査行列演算処理を施して元のKビットの情報を再生する復号化器5が設けられる。
復調器4は、この通信路3における送信形態に応じて復調処理を行なう。たとえば、振幅変調、位相変調、コード変調、周波数変調および直行周波数分割多重変調等の場合、復調器4において、振幅復調、位相復調、コード復調、および周波数復調等の処理が行なわれる。
図2は、通信路3が光ファイバの場合の変調器2および復調器4の出力データの対応関係を一覧にして示す図である。図2において、上述のように、通信路3が光ファイバの場合、変調器2においては、送信データが“0”のときには、送信用のレーザダイオード(発光ダイオード)の発光強度を強くし、“1”を出力し、また送信データビットが“1”のときには、この発光強度を弱くしてビット“−1”を送信する。
この通信路3における伝送損失等により、復調器4に伝達される光強度は、最も強い強度から最も弱い強度までの間のアナログ的な強度分布を有する。復調器4においては、この入力された光信号を量子化処理(アナログ/デジタル変換)を行なって、この受光レベルを検出する。図2においては、8段階に受光レベルが量子化された場合の受信信号強度を示す。すなわち、受光レベルがデータ“7”のときには、発光強度がかなり強く、受光レベルが“0”のときには、光強度がかなり弱い状態である。各受光レベルは、符号付きデータに対応づけられ、復調器4から出力される。この復調器4の出力は、受光レベルが“7”のときにはデータ“3”が出力され、受光レベルが“0”のときには、データ“−4”が出力される。したがってこの復調器4からは、1ビットの受信信号に対し、多値量子化された信号が出力される。
復号化器5は、この復調器4から与えられた(K+M)ビットの受信情報(各ビットは、多値情報を含む)を入力し、後に詳細に説明する、min-sum復号法に従ってLDPCパリティ検査行列を適用して、元のKビットの情報を復元する。
なお、この図2においては、復調器4において、8レベルに量子化されたビットが生成されている。しかしながら、一般に、この復調器4においては、L値(L≧2)に量子化されたビットを用いて復号処理を行なうことができる。
また、図2においては、比較器を用いて、あるしきい値を使って受信信号のレベルを判定し、2値信号を生成してもよい。
図3は、この発明に従う復号化器5の構成を概略的に示す図である。この図3においては、復調器4および通信路3も併せて示す。復調器4は、通信路3から与えられた信号を復調する復調回路4aと、この復調回路4aにより生成されたアナログ復調信号をデジタル信号に変換するアナログ/デジタル変換回路4bを含む。このアナログ/デジタル変換回路4bの出力データXnが復号化器5へ与えられる。この復号化器5へ与えられるデータXnは、L値(L≧2)のデータである。以下、データXnは、多値量子化データであるため、シンボルと称す。復号化器5は、この入力シンボルXn系列に対してmin-sum復号法に従って復号処理を行なって符号ビットCnを生成する。
復号化器5は、復調器4からの復調シンボルXnの対数尤度比λnを生成する対数尤度比算出部10と、パリティ検査行列の行処理を行なう行処理部12と、パリティ検査行列の列処理を行なう列処理部14と、対数尤度比算出部10からの対数尤度比λnと行処理部12の出力ビット(外部値対数比)αmnとに従って符号を生成するループ判定部16を含む。
対数尤度比算出部10は、この受信信号のノイズ情報と独立に、対数尤度比λnを生成する。通常、ノイズ情報を考慮した場合、この対数尤度比λnは、Xn/2・σで与えられる。ここで、σは、ノイズの分散を示す。しかしながら、本実施の形態1においては、この対数尤度比算出部10は、バッファ回路または定数乗算回路で形成され、対数尤度比λnは、Xn・fで与えられる。ここで、fは非ゼロの正の数である。このノイズ情報を利用せずに、対数尤度比を算出することにより、回路構成が簡略化され、また計算処理も簡略化される。min-sum復号方法においては、検査行列の処理において、最小値を利用して演算を行なうため、信号処理において線形性が維持される。このため、ノイズ情報に従って出力データを正規化するなどの処理は不要である。
行処理部12および列処理部14は、それぞれ、次式(1)および(2)に従って、演算処理を行ない、パリティ検査行列の行の各要素についての処理(行処理)および列についての各要素についての処理(列処理)を実行する。行処理部12において、列処理部14から与えられる事前値対数比βmnと対数尤度比λnとに従って外部値対数比αmnを更新する。
Figure 2005269535
ここで、上式(1)および(2)それぞれにおいて、n′∈A(m)\nおよびm′∈B(n)\mは、自身を除く要素を意味する。外部値対数比αmnについては、n′≠nであり、事前値対数比βmnについては、m′≠mである。また、αおよびβの行列内の位置を示す添え字“mn”は、通常は下付文字で示されるが、本明細書においては、読みやすさのために、「横並びの文字」で示す。
また、関数sign(x)は、次式(3)で定義される。
Figure 2005269535
ここで、関数minは、最小値を求める演算を示す。
また、集合A(m)およびB(n)は、2元M・N行列H=[Hmn]を復号対象のLDPC符号の検査行列とした場合、集合[1,N]={1,2,…,N}の部分集合である。
A(m)={n:Hmn=1} …(4)
B(n)={m:Hmn=1} …(5)
すなわち、部分集合A(m)は、検査行列Hの第m行目において1が立っている列インデックスの集合を意味し、部分集合B(n)は、検査行列Hの第n列目において1が立っている行インデックスの集合を示す。
具体的に、今、図4に示す検査行列Hを考える。この図4に示す検査行列Hにおいては、第1行の第1列から第3列に“1”が立ち、また第2行の第3列および第4列に“1”が立ち、また第3行の第4列から第6列に、“1”が立つ。したがって、この場合、部分集合A(m)は以下のようになる。
A(1)={1,2,3}、
A(2)={3,4}、
A(3)={4,5,6}。
同様、部分集合B(n)については、以下のようになる。
B(1)=B(2)={1}、
B(3)={1,2}、
B(4)={2,3}
B(5)=B(6)={3}
この検査行列Hにおいて、タナー(Tanner)グラフを用いた場合、列に対応する変数ノードと行に対応するチェックノードの接続関係が、この“1”により示される。これを、本明細書においては「“1”が立つ」と称している。すなわち、図5に示すように、変数ノード1,2,3は、チェックノードX(第1行)に接続され、変数ノード3,4が、チェックノードY(第2行)に接続される。変数ノード4,5,6が、チェックノードZ(第3行)に接続される。この変数ノードが検査行列Hの列に対応し、チェックノードX,YおよびZが、この検査行列Hの各行に対応する。従って、図4に示す検査行列は、情報ビットが3ビット、冗長ビットが3ビットの合計6ビットの符号に対して適用される。
この検査行列Hは、“1”の数は少なく、低密度の検査行列であり、これにより、計算量を低減できる。
この変数ノードとチェックノードの間で各条件確率P(Xi|Yi)を伝播させ、MAPアルゴリズムに従って、もっともらしい符号を各変数ノードについて決定する。ここで、条件付確率P(Xi|Yi)は、Yiの条件下でXiとなる確率を示す。
ループ判定部16は、これらの行処理部12および列処理部14における演算処理結果に基づいて、1次推定語を生成し、これらの1次推定語が符号語を構成しているかを検査する。このパリティ検査時において、シンドロームが“0”とならない場合には、再び処理を繰返し実行する。この処理の繰返し回数が所定値に到達すると、そのときの1次推定語を符号語として出力する。
本発明においては、前述の式(1)における最小値関数minの演算処理操作(以下、Min演算と称す)時に、すべての入力データ(シンボル)Xnの対数尤度比λnおよび事前値対数比βmnを利用する代わりに、符号系列の|λn+βmn|の最小値および次の最小値を記憶し、これらのいずれかを選択することにより、この最小値関数minの演算を実行する。
以下、この行処理部12における外部値対数比αmnを算出する動作について具体的に説明する。今、入力シンボルXnの系列として、次式で示される入力シンボルを考える。
Xn=(3,1,2,−1,1,2)
パリティ検査行列(以下、単に検査行列と称す)Hとしては、図4に示す検査行列Hを利用する。
検査行列Hの第1行の処理としては、図5に示すチェックノードXにおける処理が実行される。この場合、図6(A)に示すように、外部値対数比αmnは、チェックノード2および3の値(λ2+β12)および(λ3+β13)を用いて絶対値の最小値を検出し、かつこれらのチェックノード2および3の値の符号を乗算することにより求められる。したがって、外部値対数比α11は、次式で表わされる。
α11=sign(λ2+β12)・sign(λ3+β13)
・Min(|λ2+β12|,|λ3+β13|)
チェックノード4から6は、検査行列Hの対応の要素が“0”であり、この演算処理には利用されない。符号“・”は、乗算を示す。
図6(B)に示すように、外部値対数比α12は、同様、チェックノード1および3の値(λ1+β11)および(λ3+β13)を用いて、次式で求められる。
α12=sign(λ1+β11)・sign(λ3+β13)
・Min(|λ1+β11|,|λ3+β13|)
また、図6(C)に示すように、外部値対数比α13は、チェックノード1および2の値(λ1+β11)および(λ2+β12)を用いて算出される。この外部値対数比α13は、したがって、次式で表わされる。
α13=sign(λ1+β11)・sign(λ2+β12)
・Min(|λ1+β11|,|λ2+β12|)
上述のように第1行の演算操作においては、図6(A)から図6(C)に示すように、対応の行内において自身を除く最も絶対値の小さな要素を算出し、かつそれらの符号を乗算する。
したがって、処理単位内のシンボルにおいて、絶対値が最も小さいシンボル、すなわち最も尤度の低い情報(正確さについての信頼性に関連する情報、すなわち確率情報に対応)を求めて、外部値対数比を求める。すなわち、パリティ検査行列を利用する場合、“1”が存在するビット位置のシンボルは、通信路における信頼性に関する情報を有している。そこで、信頼性の最も低い(尤度の最も低い)、すなわち絶対値の最も小さい、誤っている可能性の最も高いシンボルを検出し、その及ぼす影響が最も大きいと考えて、それを利用して絶対値を求める。これがMin演算の具体的な処理内容である。
この外部値対数比αmnの符号は、処理単位内の信号系列の影響を及ぼす誤りのある可能性の高い符号に対する符号を全て乗算することにより、この符号(外部値対数比)の符号を推定する。最も信頼性の低い状態から処理を開始し、この処理を繰返し実行することにより、最も信頼性の高い符号値に到達する。この処理操作が、min-sum復号法におけるMin演算処理の内容である。
例えば、図2に示す復調器の出力において、送信符号ビットが“1”または“0”の時には、出力値は、“3”または“−4”となる。しかしながら、通信路における伝送損失などの影響により、値が“0”または“−1”となると、それらの絶対値が小さくなっており、誤りの発生している可能性が高い。このような絶対値の小さな、不確実な受信信号を用いて元の符号を復元する。
以下の説明においては、この絶対値の最も小さな信号を、エラーの発生確率が高いため、尤度が最も低い信号と称す。
これらの求められた外部値対数比αmnは、図3に示す列処理部14およびループ判定部16へ供給される。この列処理部14は、先の式(2)において示された演算処理を行ない、検査行列Hの各行において生成された外部値対数比を用いて、自身を除く行以外の対応の列の“1”が立っている位置の外部値対数比を加算する。したがって、検査行列Hが図4に示される構成の場合、図7に示すように、事前値対数比β11は、第1列において自身が属する第1行以外には“1”が立っていないため、“0”となる。
ループ判定部16は、この行処理部12で生成される外部値対数比αmnと対数尤度比算出部10からの対数尤度比λnとを用いて、複数の符号で構成される符号語を生成する。符号の数は、検査行列の列の数に対応する。
図8は、このループ判定部16の処理動作を示すフロー図である。以下、図8を参照して、ループ判定部16の処理操作について説明する。
まず、初期動作として、ループ回数および事前値対数比βmnの初期設定が行なわれる。このループ回数は、列処理部14で生成された事前値対数比βmnを用いて再び行処理部12で外部値対数比αmnを生成するループにおける演算回数を示す。このループ回数においては、最大値が予め定められる。事前値対数比βmnは、“0”に初期設定される(ステップSP1)。
次いで、受信シンボル系列に従って、対数尤度比λnおよび外部値対数比αmnが、それぞれ、対数尤度比算出部および行処理部により生成されて、ループ判定部16へ供給される(ステップSP2)。
ループ判定部16は、これらの供給された対数尤度比λnおよび外部値対数比αmnに従って、演算λn+Σαm′nを行って推定受信語Qnを算出する(ステップSP3)。ここで、総和Σは、部分集合B(n)の要素m′について実行される。
このステップSP3において算出された値Qnの正負の符号を判定し(ステップSP4)、1次推定符号Cnを生成する(ステップSP5)。この符号の正/負判定においては、たとえば、推定受信語Qnが2の補数表示されているときには、最上位ビット(符号ビット)のビット値を見ることにより、正および負の判定を行なうことができる。
推定符号Cnが全て生成され、符号語(C1,・・・,CN)が生成されると、次いでパリティ検査を実行する(ステップSP6)。このパリティ検査においては、先の検査行列Hの転置行列を用いて、(C1,…,CN)・Ht=0を計算する。この計算により、生成されるシンドロームが0であれば、1次推定語(C1,…,CN)を推定語として出力する(ステップSP9)。
一方、この生成されたシンドロームが0と異なる場合には、ループ回数が最大値であるかの判定が行なわれる(ステップSP7)。すなわち、この1次推定語の生成回数をカウントし、その生成回数が所定の最大回数に到達すると、その符号についての算出をそれ以上をやめて、現在生成されている1次推定語を符号語として出力する(ステップSP9)。これにより、収束性の悪いノイジーな符号に対して、不必要に演算処理時間が要するのを防止する。
ステップSP7において、ループ回数が最大値に到達していないと判定されると、このループ回数を1インクリメントして、再び、行処理部12および列処理部14における処理を開始させて、再びステップSP2からの処理を実行する。
これら一連の処理が、いわゆるLDPCのmin-sum復号法の処理動作である。パリティ計算行列Hとして、疎な行列、すなわち1の数の少ない行列を利用することにより、計算回数を低減する。しかしながら、Min演算においては、“1”が存在するノードの値をすべて利用して最小絶対値を検出する必要がある。したがって、このパリティ検査行列Hの規模が、受信シンボルの数の増大に応じて大きくなった場合、応じて“1”の数も増大し、このMin演算を行なう部分の回路規模が増大する。本発明においては、Min演算を、以下に述べる手順に従って、小規模の回路を用いて高速で演算する。
図9は、この発明の実施の形態1に従う行処理部12の処理操作を示すフロー図である。以下、図9を参照して、この発明の実施の形態1に従う行処理部の操作について説明する。
また、検査行列Hの部分集合A(m)に従って、|λn′+βmn′|の系列を抽出する(ステップSP10)。
これらの抽出された絶対値系列から、最小値および2番目の最小値を検出して記憶する(ステップSP11)。最小値および2番目の最小値は、値が同じ場合も許容される。すなわち、外部値対数比αmnの算出時には、自身を除く集合から、最小絶対値(以下、単に最小値と称す)を選択する操作が必要とされるため、この最小値および2番目の最小値が同じ値であってもよい。次に、Min演算を実行する。入力値|λn′+βmn′|が、記憶された最小値と一致するかの判定が行なわれる(ステップSP12)。
最小値と一致する場合には、2番目の最小値が対応のMin演算値として選択される(ステップSP13)。一方、この最小値と一致しない場合には、比較された最小値をMin演算値として選択して出力する(ステップSP14)。
これらのステップSP13およびSP14により選択されたMin演算値に対し、符号を乗算して、外部値対数比αmnを生成する(ステップSP15)。
したがって、タナーグラフの変数ノード(検査行列の“1”が立ったノード)の値をすべて記憶することは要求されず、1番目および2番目の最小値を記憶することが要求されるだけであり、大幅に回路規模を低減することができる。また、単に、最小値との比較のみでMin演算が実行されるため、残りの絶対値成分との比較を行なう必要がなく、演算時間が短縮される。
ステップSP15における符号の乗算時においては、単に、自身を除く値の符号の乗算だけであり、各ノードに対する値が2の補数表示の場合、1ビットで符号を表示することができ、符号乗算のための符号を記憶する記憶部の容量は大幅に低減される。この場合、すべての変数ノードの符号の乗算値を予め最小値検出時に求めておけば、全符号の積の値と自身の符号とに基づいて、符号の乗算を容易に行なうことができる。すなわち、全変数ノードの符号の積が正のとき、自身が負であれば、自身を除く演算値の符号の積は負である。したがって、たとえば2の補数表示で符号ビットの“1”が負を表わす場合、全ノードの符号の積を示す符号ビットと自身の符号との一致/不一致を見ることにより、符号演算の乗算処理を行なうことができ、同様、符号乗算処理も簡略化され、外部値対数比αmnの算出が大幅に簡略化される。
今、以下に示す部分集合Vmを考える。
Vm={v1,v2,v3,…,vk−1,vk}
ここで、vi=|λi+βmi|
Min演算を考える。今、最小値がv1であり、2番目の最小値がvkであるとする。この場合、Min演算を、外部値対数比αm1に対して行なう場合を考える。この場合、値v2からvkのうちの最小値を算出する。今、最小値が、値v1であるため、この値v1に対するMin演算としては、2番目の最小値vkを選択することにより、正しいMin演算結果が求められる。v2については、値v1およびv3からvkのうちの最小値を求めるため、最小値v1を選択することにより、Min演算結果が求められる。同様、値vkについては、自身以外もv1からvk−1の間の最小値を選択するため、v1を選択する。したがって上述の図9に示すステップSP12からSP14の操作を行なうことにより、正確に、Min演算を行なうことができる。
図10は、図3に示す行処理部12のMin演算を行なう部分の構成を概略的に示す図である。図10において、Min演算部は、入力値λn+βmnを用いてその絶対値を記憶する絶対値記憶部20と、入力値λn+βmnを順次入力して絶対値の最も小さな第1最小値FIMを記憶する第1最小値記憶部22と、入力値λn+βmnの系列を受け、第2番目の最小値SEMを記憶する第2最小値記憶部24と、この入力値系列の位置情報iに従って絶対値記憶部20の対応の絶対値valを読出して、第1最小値FIMと比較しその比較結果に基づいて第1最小値FIMおよび第2最小値SEMの一方を選択してMin演算結果MINを出力する選択器26を含む。
この絶対値記憶部20においては、検査行列Hの対応の行(第m行)の要素が順次入力されてその絶対値が格納される。この場合、検査行列Hにおいて“1”が立つ部分集合A(m)の列インデックスに対応する要素のみが順次入力される。位置情報iは、この部分集合A(m)における各要素の位置を示す。
図11は、図10に示す選択器26の構成の一例を示す図である。図11において、選択器26は、絶対値記憶部20から位置情報iに従って読出された絶対値valと第1最小値記憶部22に格納された第1最小値FIMと比較する比較器30と、比較器30の出力信号に従って第1最小値FIMおよび第2最小値SEMの一方を選択してMin演算結果MINを出力するマルチプレクサ(MUX)32を含む。
比較器30が、絶対値記憶部20から読出された絶対値valと第1最小値FIMとが等しいことを示しているときには、マルチプレクサ32は、第2最小値SEMを選択して、Min演算結果MINとして出力する。一方、比較器30が、絶対値記憶部20からの絶対値valが第1最小値FIMと値が異なることを検出したときには、マルチプレクサ32は、第1最小値FIMを選択して、Min演算結果MINとして出力する。
したがって、図10および図11に示すように、単に各絶対値valと第1最小値FIMの比較結果に基づいて、第1の最小値FIMおよび第2の最小値SEMの一方を選択するだけで、Min演算結果を生成することができ、回路規模および演算時間を大幅に短縮することができる。
なお、この絶対値記憶部20は、たとえばシフトレジスタ回路などのFIFO(ファーストイン・ファーストアウト回路)で構成されている場合、この部分集合A(m)内の要素の位置を示す位置情報iを特に与える必要はない。検査行列の対応の行の“0”に対応する列の要素は用いられないため、このFIFO回路から順次絶対値valを、その入力順序に従って順次出力することができ、位置情報iを用いることなく、絶対値記憶部20から絶対値valを位置順に読出すことができる。
なお、絶対値記憶部20に格納される絶対値は、この演算値が、2の補数表示の場合、単に符号ビットを除くビットを演算値に対して格納する。また、この2の補数表示を利用する場合、符号ビットにおける“1”の数をカウントすることにより、絶対値記憶部20に格納される値の符号の全ての符号の積の正/負を判定することができる。位置情報iに従って、この絶対値記憶部20に格納される絶対値valに対応する符号ビットと全符号積の一致/不一致を判定することにより、Min演算で用いられる要素の符号の乗算結果を求めることができる。
したがって、この場合には、Min演算および符号乗算演算を並行して行なって、外部値対数比αmnを高速で検出することができる。
図12は、M行N列の検査行列に対するMin演算部の構成を示す図である。この図12に示すように、第1行から第M行それぞれに対して、Min演算部35−1〜35−Mが設けられる。第1行Min演算部35−1に対しては、入力値λn+β1nが与えられ、Min演算結果MIN(1)が出力される。第2行Min演算部35−2に対しては、入力値λn+β2nが与えられ、Min演算結果MIN(2)が出力される。第M行Min演算部35−Mにおいては、入力値λn+βMnが与えられ、Min演算結果MIN(M)が出力される。
これらのMin演算部35−1から35−Mは、図10および図11に示す構成を備える。それぞれに対し、対応の行における“1”の存在する列を示す情報が位置情報として与えられて、Min演算処理が実行される。
したがって、パリティ計算行列Hの規模が大きくなる場合においても、単に、この図12に示すように行それぞれに、Min演算部35−1〜35−Mが設けられるだけである。Min演算部35−1〜35−M各々においては、第1および第2の最小値を記憶し、かつ各部分集合A(m)に対応する値を記憶することが要求されるだけであり、回路規模は、行方向において増大するだけであり、列方向における回路規模の増大は抑制される。
このMin演算部は、LDPC符号の復号化処理において用いられる。しかしながら、パリティ検査行列Hが疎(sparce)な行列でなく、“1”の数が大きく、ハニング行重み(行における“1”が存在する数)が大きい場合においても、単に第1および第2の最小値を記憶することが要求されるだけである。したがって、このMin演算部の構成を利用することにより、LDPC符号以外のBCH符号およびCRC符号等においても、同様のmin-sum復号アルゴリズムを用いて復号処理を行うことができる。
なお、位置情報iは、このMin演算処理において、クロック信号に同期した処理が行なわれる場合、この処理サイクルを規定するクロック信号をカウントすることにより、生成することができる。
以上のように、この発明の実施の形態1に従えば、Min演算処理において、部分集合に対応する要素の第1および第2の最小値を記憶して、各要素の絶対値と比較しており、検査行列の行が増大する場合においても、回路規模の増大を抑制して、高速でMin演算処理を実行することができる。
[実施の形態2]
図13は、この発明の実施の形態2に従うMin演算部の構成を概略的に示す図である。図13において、Min演算部は、入力値λn+βmnを用いて、その絶対値の第1および第2の最小値をそれぞれ記憶する第1最小値記憶部22および第2最小値記憶部24と、この第1最小値記憶部22に格納される第1の最小値の行処理の処理単位内の位置情報POSを記憶する最小位置記憶部40と、この最小位置記憶部40の位置POSと演算対象の信号の位置情報iとの比較に基づいて第1最小値FIMおよび第2最小値SEMの一方を選択してMin演算結果MINを出力する選択器42を含む。
この図13に示すMin演算部の構成においては、単に第1の最小値FIMの行処理単位内の位置情報を記憶することが要求されるだけであり、各行処理単位内の信号の値を記憶する必要はなく、回路規模がさらに低減される。
図14は、図13に示す選択器42の構成を概略的に示す図である。図14において、選択器42は、演算対象の値の位置を示す位置情報iと第1の最小値FIMの信号処理単位内の位置を示す位置情報POSとを比較する比較器50と、比較器50の出力信号に従って第1の最小値FIMと第2の最小値SEMの一方を選択してMin演算結果MINを出力するマルチプレクサ(MUX)52を含む。
この選択器42は、比較器50が位置情報iおよびPOSがともに等しいことを示すときには第2の最小値SEMを選択してMin演算結果MINとして出力する。比較器50が、位置情報iおよびPOSが互いに異なることを示す場合には、マルチプレクサ52は、第1の最小値FIMを選択して、Min演算結果MINとして出力する。
第1の最小値FIMを有する位置が複数個存在する場合においても、その位置情報は1つの第1最小値の位置を記憶するだけでよい。
具体的に、図15に示すように、今、変数ノード1から6において、それぞれの値が3,1,2,−1,−1,2が割当てられている状態を考える。この信号系列においてMin演算を行なう場合、まず絶対値の最小値を算出する場合、変数ノード2の値“1”が、第1の最小値FIMとして記憶され、そのノード番号“2”が最小位置情報POSとして記憶される。変数ノード4または5は、その絶対値が1であり、この場合、変数ノード4の値を第2の最小値SEMとして記憶する。変数ノード4の第2の最小値SEMは、絶対値をとるため、“1”である。したがって、この場合には、第1の最小値FIMおよび第2の最小値SEMは互いに等しい値となる。変数ノード2についてのMin演算を行なう場合、この変数ノード2を除く変数ノードの信号値を参照して、絶対値の最小値を選択するため、第2の最小値SEMが選択される。変数ノード4について、Min演算を行なう場合、この変数ノード4を除く変数ノードの信号値を参照してMin演算が行なわれるため、この場合、変数ノード2の第1の最小値FIMが選択される。同様、変数ノード5についても、変数ノード2の第1の最小値FIMが選択される。
したがって、第1の最小値と同じ絶対値の信号値が、複数個存在する場合においても、これらのうちの2つの値を、それぞれ、第1および第2の最小値として記憶し、かつ第1の最小値の位置情報のみを記憶することにより、演算対象の信号値の位置に応じて第1または第2の最小値を選択することにより、正確に、Min演算を行なうことができる。
この図13に示すMin演算部は、図12に示す構成と同様、検査行列の各行に対応して並列に配置され、各行単位で並列に、αmnを求める行処理におけるMin演算が実行される。
図16は、行処理部における外部値対数比αmnの符号SGNを算出する部分の構成の一例を概略的に示す図である。図16において、符号生成部は、入力信号λn+βmnの符号を順次記憶する符号記憶部60と、符号記憶部60に記憶された符号のすべての積を取ってその積結果を保持する全符号積保持回路62と、位置情報iに従って符号記憶部60に記憶された符号を読出す読出回路64と、読出回路64により読出された符号sign(i)と全符号積保持回路62に保持される全符号積の符号ALSとに基づいて外部値対数比αmnの符号SGNを決定する符号判定回路66を含む。
符号記憶部60は、たとえばFIFO回路で構成され、入力信号λn+βmnの符号を順次記憶する。符号積保持回路62は、この符号記憶部60に格納される符号を順次乗算し、最終乗算結果を保持する。読出回路64は、位置情報iに応じて、この符号記憶部60に格納される符号sign(i)を読出す。
符号判定回路66においては、読出回路64により読出された符号sign(i)が正の場合には、全符号積結果ALSを外部値対数比αmnの符号SGNとして出力する。読出回路64からの符号sign(i)が負の場合には、符号判定回路66は、この全符号積保持回路62からの符号ALSを反転して外部値対数比αmnの符号SGNを生成する。
これにより、Min演算と並行して、符号SIGNを検出することができる。この符号判定回路66は、たとえば、各シンボルの復号が1ビットで表わされる場合には、正の符号が符号ビット“0”で表わされ、負の符号が符号ビット“1”で表わされる場合には、この符号判定回路66は、たとえばEXOR回路を用いて実現することができる。
以上のように、この発明の実施の形態2に従えば、Min演算実行時、対応の信号系列の第1および第2の最小値を記憶し、かつその最小値の位置を記憶し、その位置情報に基づいて、第1および第2の最小値の一方を選択してMin演算結果として出力しており、入力信号系列をすべて記憶する必要はなく、検査行列の規模が増大する場合においても、回路規模を低減して高速で行処理を実行することができる。
[実施の形態3]
今、図17に示すように、6行12列の検査行列を考える。入力信号X(1)からX(12)に対して、Min演算を実行する。この図17に示す検査行列の場合、第1行においては、“1”が立っている位置は、第1列、第4列、第6列、第8列、第10列、および第11列である。この第1行の行処理におけるMin演算を実行する場合、これらの列上の入力信号X(1)、X(4)、X(6)、X(8)、X(10)、およびX(11)から、第1および第2の最小値を検出して保持する。この最小値を検出する処理方法としては、入力信号を逐次入力して検出する方法と、これらを並列に処理する方法とが存在する。以下、順に、最小値検出を逐次入力信号を処理して行なう方法および並列に入力信号を処理して最小値を検出する方法について説明する。
図18は、この発明の実施の形態3に従うMin演算部の構成を概略的に示す図である。図18においては、対数尤度比λn(入力信号Xn)から、この検査行列の“1”の位置に応じて尤度比を抽出する尤度比抽出保持回路65と、この尤度比抽出保持回路65の保持する尤度比と列処理部からの事前値対数比βmnとを加算しかつその加算値の絶対値を求める演算ABSを行って入力信号X(n)を生成する加算回路67とが、Min演算の前処理回路として設けられる。
尤度比抽出保持回路65においては、対応の部分集合A(m)に従って、順次与えられる対数尤度比λn(入力シンボルXn)を抽出して保持する。
加算回路67により絶対値|λn+βmn|が生成されて、入力信号X(n)として、Min演算部70へ逐次与えられる。
Min演算部70は、入力信号X(n)と第1の記憶部71に格納される値を比較し、尤度の大きい方を次段回路へ転送し、尤度の小さい方の値を第1記憶部71へ格納する第1大小比較部72と、この第1大小比較部72から転送された値と第2記憶部73に格納された値を比較し、尤度の小さい方を第2記憶部73へ格納する第2大小比較部74を含む。第1記憶部71および第2記憶部73は、それぞれ、初期化時に、その格納データが入力信号X(n)の最大値に設定される。この第1記憶部71には、また、記憶情報の対応の部分集合A(m)内の位置を示す位置情報が格納される。
第1大小比較部72による大小比較により、第1記憶部71には、入力信号X(n)の小さい方の値が対応の位置情報iとともに格納される。この入力信号X(n)と第1の記憶部71に格納される値とが等しい場合には、第1の大小比較部72は、入力信号X(n)を次段の第2大小比較部74へ転送する。したがって、この第1記憶部71には、入力信号X(n)の系列のうちの最も小さな値(絶対値が最も小さい値)が、その位置情報とともに格納される。これにより、第1最小値FIMおよび位置情報POSを抽出することができる。
第2大小比較部74においては、第1大小比較部72から転送された信号値を第2記憶部73の記憶値と比較し、第1大小比較部72から与えられる信号値が第2記憶部73の記憶値よりも小さいときに第2の記憶部73の記憶値を更新する。したがって、第2大小比較部74においては、第1最小値FIMと同じ絶対値の大きさの場合を含む第2最小値が格納される。この第2記憶部73の記憶値が、第2最小値SEMとして出力される。
したがって、入力信号Xnが入力され、尤度比抽出保持回路65により抽出され保持されて、次いで、入力信号X(n)がMin演算部70へ逐次伝送されると、すべての入力信号X(n)の転送が完了した時点で、第1最小値FIMおよびその位置情報POSと、第2最小値SEMの検出動作が完了する。この位置情報POSは、与えられた入力信号X(n)に対する第1大小比較部72における比較動作の回数をカウントすることにより検出することができる。
このMin演算部70は、DSP(デジタル信号プロセサ)などのファームウェアを用いて実現されてもよく、また、ソフトウェアを用いて比較および検出動作が実行されてもよく、また、専用のハードウェアでこれらの回路構成が実現されてもよい。例えば、第1および第2記憶部71および73は、それぞれ、対応の大小比較器72および74からの比較結果指示信号を取込指示信号(記憶更新指示信号)として受けるレジスタ回路またはラッチ回路で構成することができる。比較結果指示信号が、与えられた信号が記憶値よりも小さいことを示すときに、これらの記憶部71または73が、対応の大小比較器72または74から与えられた信号値を取込み保持する。
図19は、この発明の実施の形態3に従う最小値検出部の他の構成を概略的に示す図である。この図19に示す最小値検出部においては、演算対象の入力信号X(1)、X(4)、X(6)、X(8)、X(10)、およびX(11)を2つのグループに分割し、各グループにおいて第1および第2の最小値を暫定的に検出する。すなわち、第1の仮最小値検出部80へは、入力データX(1)、X(4)、およびX(6)が与えられて、仮の第1の最小値F1およびその位置情報P1と仮の第2の最小値S1が検出される。第2の仮最小値検出部82へは、入力データX(8)、X(10)、およびX(11)が与えられて、仮の第1の最小値F2およびその位置情報P2と仮の第2の最小値S2が検出される。これらの仮の最小値F1、S1、F2およびS2が、位置情報P1およびP2とともに最小値検出保持部84へ与えられる。
この最小値検出保持部84は、与えられた仮の最小値F1、S1、F2およびS2から、第1の最小値FIMおよび第2の最小値SEMを検出し、また、検出された第1の最小値の位置情報POSを検出して保持する。
この最小値検出保持部84においては、最小値F1、F2、S1およびS2の大小比較動作が逐次行なわれ、その比較結果に基づいて、第1および第2の最小値FIMおよびSEMが検出されてもよい。また、これに代えて、以下のアルゴリズムに従って、最終的な第1の最小値FIMおよび第2の最小値SEMが検出されてもよい。
(i)S1≦F2のとき、F1≦S1≦F2≦S2である。従って、第1の最小値FIMおよび第2最小値SEMとして、それぞれ、F1およびS1を設定する。
(ii)S2≦F1のとき、F2≦S2≦F1≦S1である。従って、F2およびS2を、それぞれ第1の最小値FIMおよび第2の最小値SEMとして設定する。
(iii)S1>F2かつS2>F1のとき、F1,F2<S1,S2である。従って、F1およびF2の大小関係に従って、小さい方を第1の最小値FIM、大きい方をSEMに設定する。F1=F2の時には、例えば、F1を第1の最小値FIMとして設定する。
したがって、図19に示すように入力データに対して並列に処理を実行することにより、高速で、最小値検出動作を行なうことができる。
これらの最小値検出部80および82並びに最小値検出保持部84は、その検出動作がソフトウェアにより実行するように構成されても良く、ハードウェアにより検出動作が実行されるように構成されても良い。
以上のように、この発明の実施の形態3に従えば、演算対象のデータの比較に基づいて最小値を検出しており、正確な最小値検出を行なうことができる。
この発明に従うmin−sum復号法においては、Min演算実行時、単に第1および第2の最小値を利用して演算を行なっているだけである。したがって、検査行列Hの行の重み(検査行列の行における“1”の数)が大きい場合においても、このMin演算部の規模は増大しない。冗長ビット数に応じて、行方向の数が増大するだけである。したがって、LDPC符号に限定されず、他のBHC符号およびCRC符号などに対しても、同様のmin−sum復号法に従ってパリティ検査行列を生成して符号の復号動作を行なうことができる。すなわち、低密度でない検査行列に対しても、本発明を同様に適用して復号処理を実行することができる。
従って、この発明は、LDPC符号の復号処理を行なう通信システムに適用することができ、また、他の符号を利用する通信システムの受信部における復号装置に対しても適用することができる。
この発明が適用される通信システムの構成を概略的に示す図である。 送信データと復調データの対応の一例を示す図である。 この発明の実施の形態1に従う復号化器の構成を概略的に示す図である。 この発明における復号法において用いられる部分集合を定義するための図である。 図4に示す検査行列のタナーグラフを示す図である。 (A)〜(C)は、図3に示す行処理部の操作内容を示す図である。 図3に示す列処理部の処理操作を示す図である。 図3に示すループ判定部の動作を示すフロー図である。 この発明の実施の形態1に従う行処理部の外部値対数比算出動作を示すフロー図である。 この発明の実施の形態1に従うMin演算部の構成を概略的に示す図である。 図10に示す選択器の構成を概略的に示す図である。 この発明の実施の形態1に従うMin演算部の全体の構成を概略的に示す図である。 この発明の実施の形態2に従うMin演算部の構成を概略的に示す図である。 図13に示す選択器の構成を概略的に示す図である。 図13に示すMin演算部の動作を説明するための図である。 図3に示す行処理部の符号算出部の構成の一例を概略的に示す図である。 この発明の実施の形態3において一例として用いられる検査行列を示す図である。 この発明の実施の形態3に従う最小値記憶部の構成を概略的に示す図である。 この発明の実施の形態3に変更例の最小値記憶部の構成を概略的に示す図である。
符号の説明
4 復調器、5 復号化器、10 対数尤度比算出部、12 行処理部、14 列処理部、16 ループ判定部、20 絶対値記憶部、22 第1最小値記憶部、24 第2最小値記憶部、26 選択器、30 比較器、32 マルチプレクサ、40 最小位置記憶部、42 選択器、50 比較器、52、マルチプレクサ、65 対数尤度比抽出保持回路、67 絶対値加算回路、70 最小値保持部、72 第1大小比較部、74 第2大小比較部、71 第1記憶部、73 第2記憶部、80 第1仮最小値検出部、82 第2仮最小値検出部、84 最小値検出保持部。

Claims (9)

  1. 所定数の信号単位で復号を行なう復号装置であって、
    1単位内の前記所定数の信号について、尤度の最も低い第1の信号と前記第1の信号の次に尤度の低い第2の信号とを抽出して記憶する尤度記憶手段、
    前記1単位の信号それぞれについて、前記1単位内において自身を除いて最小尤度の信号が選択されるように前記第1および第2の信号の一方を選択して出力する選択手段、および
    前記選択手段により選択された信号と前記1単位内の信号の符号とから新たな信号を生成して前記1単位の信号の推定信号系列を生成する受信信号推定手段を備える、復号装置。
  2. 前記選択手段は、
    前記第1および第2の信号と前記1単位内の信号それぞれとを比較し、与えられた信号が前記第1の信号と同じ尤度のときには前記第2の信号を選択し、それ以外のときには前記第1の信号を選択して出力する、請求項1記載の復号装置。
  3. 前記選択手段は、
    前記第1の信号の前記1単位内の位置を記憶する位置情報記憶手段と、
    前記1単位内の信号それぞれの位置情報と前記位置情報記憶手段に記憶された位置情報との比較結果に従って前記第1および第2の信号の一方を選択する信号選択手段を備える、請求項1記載の復号装置。
  4. 前記信号は、符号付の値を有し、その絶対値を尤度として
    前記尤度記憶手段が、前記第1および第2の信号を記憶する、請求項1記載の復号装置。
  5. 入来信号を対数尤度比を算出して前記1単位の各信号を生成して前記尤度記憶手段へ与える手段をさらに備える、請求項1記載の復号装置。
  6. 前記尤度記憶手段は、
    第1の記憶手段と、
    前記1単位の信号を順次入力し、前記第1の記憶手段の記憶値と入力信号とを比較し、尤度の小さいほうを前記第1の記憶手段に格納し、かつ尤度が大きいと判定された信号を次段へ転送する第1の比較手段と、
    第2の記憶手段と、
    前記第1の比較手段から転送された信号と前記第2の記憶手段の記憶値とを比較し、尤度の小さいほうを前記第2の記憶手段へ格納する第2の比較手段を備える、請求項1記載の復号装置。
  7. 前記第1の記憶手段に格納される信号値の前記1単位内の位置を示す情報を格納する位置情報格納手段をさらに備える、請求項6記載の復号装置。
  8. 前記1単位の信号から、検査行列の第1の方向において1の立つ位置に対応する位置に対応する信号を抽出して前記尤度記憶手段へ転送する抽出手段をさらに備える、請求項1記載の復号装置。
  9. パリティ検査行列の第1の方向に整列する要素を用いて入力信号の推定値を算出する処理の前処理を行なう前処理装置であって、
    前記入力信号の1処理の単位の信号を入力し、絶対値の小さなほうから2つの信号を抽出して記憶する記憶手段と、
    前記1処理単位内の信号について、前記記憶手段に記憶された値との比較に基づいて前記1処理単位の信号において自身を除く信号のうちから絶対値の一番小さな信号が選択されるように前記記憶手段に記憶された2つの信号の一方を選択して出力する最小値検出手段とを備え、前記最小値検出手段の出力値に従って前記1処理単位の信号の前記検査行列の第1の方向に整列する要素に基づく処理が実行される、前処理装置。
JP2004082768A 2004-03-22 2004-03-22 復号装置および前処理装置 Expired - Fee Related JP3891186B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2004082768A JP3891186B2 (ja) 2004-03-22 2004-03-22 復号装置および前処理装置
CA002499177A CA2499177A1 (en) 2004-03-22 2005-03-01 Decoding unit and preprocessing unit implemented according to low density parity check code system
US11/080,408 US7603607B2 (en) 2004-03-22 2005-03-16 Decoding unit and preprocessing unit implemented according to low density parity check code system
KR1020050022645A KR101129942B1 (ko) 2004-03-22 2005-03-18 저밀도 패리티검사부호화방식에 따라서 실현되는 복호장치및 전처리장치
TW094108540A TWI335144B (en) 2004-03-22 2005-03-21 Decoding unit and preprocessing unit implemented according to low density parity check code system
CNB2005100548943A CN100527637C (zh) 2004-03-22 2005-03-22 根据低密度奇偶校验码系统实现的解码单元和预处理单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004082768A JP3891186B2 (ja) 2004-03-22 2004-03-22 復号装置および前処理装置

Publications (2)

Publication Number Publication Date
JP2005269535A true JP2005269535A (ja) 2005-09-29
JP3891186B2 JP3891186B2 (ja) 2007-03-14

Family

ID=34987799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004082768A Expired - Fee Related JP3891186B2 (ja) 2004-03-22 2004-03-22 復号装置および前処理装置

Country Status (6)

Country Link
US (1) US7603607B2 (ja)
JP (1) JP3891186B2 (ja)
KR (1) KR101129942B1 (ja)
CN (1) CN100527637C (ja)
CA (1) CA2499177A1 (ja)
TW (1) TWI335144B (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006340016A (ja) * 2005-06-01 2006-12-14 Toshiba Microelectronics Corp 誤り訂正符号復号装置及びそれを用いた復号方法
JP2007281771A (ja) * 2006-04-05 2007-10-25 Mitsubishi Electric Corp 誤り訂正復号装置および誤り訂正復号方法
JP2009135735A (ja) * 2007-11-30 2009-06-18 Sumitomo Electric Ind Ltd 復号器、受信装置及び符号化データの復号方法
KR101021465B1 (ko) 2005-10-26 2011-03-15 삼성전자주식회사 저밀도 패리티 검사 코드를 사용하는 통신 시스템에서 신호수신 장치 및 방법
JP2011082865A (ja) * 2009-10-08 2011-04-21 Fujitsu Ltd 復号化装置
JP2011109228A (ja) * 2009-11-13 2011-06-02 Mitsubishi Electric Corp 復号装置及び方法
JP2012080283A (ja) * 2010-09-30 2012-04-19 Jvc Kenwood Corp 復号装置および復号方法
WO2012056712A1 (ja) * 2010-10-29 2012-05-03 株式会社Jvcケンウッド 復号装置および復号方法
JP2014027704A (ja) * 2008-08-15 2014-02-06 Lsi Corp 複数のチェックノード・アルゴリズムを用いる誤り訂正デコーダ
JP2016149707A (ja) * 2015-02-13 2016-08-18 パナソニック株式会社 最小値選択回路、復号器及び最小値選択方法

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI291290B (en) * 2005-04-21 2007-12-11 Univ Nat Chiao Tung Method for updating check-node of low-density parity-check (LDPC) codes decoder and device using the same
JP4622654B2 (ja) * 2005-04-25 2011-02-02 ソニー株式会社 復号装置および復号方法
US7797613B1 (en) * 2006-02-22 2010-09-14 Aquantia Corporation Digital implementation of an enhanced minsum algorithm for error correction in data communications
EP2025062A1 (en) 2006-04-28 2009-02-18 Intel Corporation Multi-theshold message passing decoding of low density parity check codes using the min-sum principle
FR2904499B1 (fr) * 2006-07-27 2009-01-09 Commissariat Energie Atomique Procede de decodage a passage de messages avec ordonnancement selon une fiabilite de voisinage.
KR100938068B1 (ko) * 2007-01-30 2010-01-21 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
US20080263123A1 (en) * 2007-04-23 2008-10-23 Paul Penzes Method and system for determining a minimum number and a penultimate minimum number in a set of numbers
US8359522B2 (en) 2007-05-01 2013-01-22 Texas A&M University System Low density parity check decoder for regular LDPC codes
US8234320B1 (en) * 2007-10-25 2012-07-31 Marvell International Ltd. Bitwise comparator for selecting two smallest numbers from a set of numbers
DE602007012565D1 (de) * 2007-12-14 2011-03-31 Sony Corp Strahlensteueralgorithmus für NLOS-Drahtlossysteme mit vordefinierten Parametern
US8156409B2 (en) * 2008-02-29 2012-04-10 Seagate Technology Llc Selectively applied hybrid min-sum approximation for constraint node updates of LDPC decoders
US20100169735A1 (en) * 2008-12-31 2010-07-01 Texas Instruments Incorporated Low density parity check code row update instruction
JP5148586B2 (ja) * 2009-12-01 2013-02-20 株式会社東芝 復号装置および復号方法
EP2682860A3 (en) * 2010-07-29 2014-10-08 Nxp B.V. Partial averaging circuit and method
CN103092812A (zh) * 2011-11-04 2013-05-08 Nxp股份有限公司 分类电路和方法
US8930790B1 (en) * 2013-09-13 2015-01-06 U-Blox Ag Method and apparatus for identifying selected values from among a set of values
US10103750B2 (en) * 2013-12-09 2018-10-16 Mitsubishi Electric Corporation Error correction decoding apparatus
JP2015169949A (ja) * 2014-03-04 2015-09-28 株式会社東芝 無線通信装置
US9590657B2 (en) 2015-02-06 2017-03-07 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
US9935654B2 (en) * 2015-02-06 2018-04-03 Alcatel-Lucent Usa Inc. Low power low-density parity-check decoding
US10476524B2 (en) * 2017-11-27 2019-11-12 Goke Us Research Laboratory Method and apparatus for efficient data decoding
US10419026B2 (en) 2017-11-27 2019-09-17 Goke Us Research Laboratory Method and apparatus for efficient data decoding
WO2019126595A1 (en) * 2017-12-20 2019-06-27 Goke Us Research Laboratory Method and apparatus for efficient data decoding
CN111464190B (zh) * 2020-05-14 2023-01-13 中国科学院微电子研究所 Ldpc码与crc结合的交换校验译码方法及装置
TWI774417B (zh) * 2021-06-11 2022-08-11 瑞昱半導體股份有限公司 基於權重調整演算法參數的解碼方法與解碼系統

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421804B1 (en) * 1999-12-20 2002-07-16 Agere Systems Guardian Corp. Generating reliability values for iterative decoding of block codes
CA2404984A1 (en) * 2000-04-04 2001-10-11 Comtech Telecommunications Corp. Enhanced turbo product code decoder system
KR100748501B1 (ko) * 2001-06-15 2007-08-13 엘지전자 주식회사 부분 보정을 이용한 그래프 디코딩 방법
US7219288B2 (en) 2002-11-27 2007-05-15 Koninklijke Philips Electronics N.V. Running minimum message passing LDPC decoding
JP4062435B2 (ja) 2002-12-03 2008-03-19 日本電気株式会社 誤り訂正符号復号装置

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006340016A (ja) * 2005-06-01 2006-12-14 Toshiba Microelectronics Corp 誤り訂正符号復号装置及びそれを用いた復号方法
US8006161B2 (en) 2005-10-26 2011-08-23 Samsung Electronics Co., Ltd Apparatus and method for receiving signal in a communication system using a low density parity check code
KR101021465B1 (ko) 2005-10-26 2011-03-15 삼성전자주식회사 저밀도 패리티 검사 코드를 사용하는 통신 시스템에서 신호수신 장치 및 방법
JP2007281771A (ja) * 2006-04-05 2007-10-25 Mitsubishi Electric Corp 誤り訂正復号装置および誤り訂正復号方法
JP4739086B2 (ja) * 2006-04-05 2011-08-03 三菱電機株式会社 誤り訂正復号装置および誤り訂正復号方法
JP4645640B2 (ja) * 2007-11-30 2011-03-09 住友電気工業株式会社 復号器、受信装置及び符号化データの復号方法
JP2009135735A (ja) * 2007-11-30 2009-06-18 Sumitomo Electric Ind Ltd 復号器、受信装置及び符号化データの復号方法
JP2014027704A (ja) * 2008-08-15 2014-02-06 Lsi Corp 複数のチェックノード・アルゴリズムを用いる誤り訂正デコーダ
JP2011082865A (ja) * 2009-10-08 2011-04-21 Fujitsu Ltd 復号化装置
JP2011109228A (ja) * 2009-11-13 2011-06-02 Mitsubishi Electric Corp 復号装置及び方法
JP2012080283A (ja) * 2010-09-30 2012-04-19 Jvc Kenwood Corp 復号装置および復号方法
JP2012099971A (ja) * 2010-10-29 2012-05-24 Jvc Kenwood Corp 復号装置および復号方法
WO2012056712A1 (ja) * 2010-10-29 2012-05-03 株式会社Jvcケンウッド 復号装置および復号方法
US9143165B2 (en) 2010-10-29 2015-09-22 JVC Kenwood Corporation Decoding apparatus and decoding method for decoding LDPC-encoded data
JP2016149707A (ja) * 2015-02-13 2016-08-18 パナソニック株式会社 最小値選択回路、復号器及び最小値選択方法
US9838036B2 (en) 2015-02-13 2017-12-05 Panasonic Corporation Decoder, minimum value selection circuit, and minimum value selection method

Also Published As

Publication number Publication date
KR101129942B1 (ko) 2012-04-24
TWI335144B (en) 2010-12-21
US20050210366A1 (en) 2005-09-22
JP3891186B2 (ja) 2007-03-14
CA2499177A1 (en) 2005-09-22
TW200612671A (en) 2006-04-16
US7603607B2 (en) 2009-10-13
CN100527637C (zh) 2009-08-12
CN1674446A (zh) 2005-09-28
KR20060044395A (ko) 2006-05-16

Similar Documents

Publication Publication Date Title
JP3891186B2 (ja) 復号装置および前処理装置
KR101093313B1 (ko) 패리티 검사 디코더들에서 사용하기 위한 노드 처리기들
US9203433B2 (en) Error correcting decoding apparatus for decoding low-density parity-check codes
US20120185750A1 (en) Decoding device and decoding method for decoding data encoded by ldpc
JP2014027704A (ja) 複数のチェックノード・アルゴリズムを用いる誤り訂正デコーダ
JP4645640B2 (ja) 復号器、受信装置及び符号化データの復号方法
JP2007323515A (ja) 比較装置および復号装置
JP5385944B2 (ja) 復号器
JP4985843B2 (ja) 復号装置
JP2008153874A (ja) 軟判定復号装置、軟判定復号方法および軟判定復号プログラム
JP4341646B2 (ja) 復号装置
JP4973647B2 (ja) 誤り訂正符号の復号評価装置
JP4728381B2 (ja) 復号装置
JP5811212B2 (ja) 誤り訂正復号装置
JP2010130342A (ja) 復号器
JP2019213217A (ja) 誤り訂正復号装置
JP4341643B2 (ja) 復号装置
JP2009152829A (ja) 復号装置
JP2017212758A (ja) 誤り訂正復号装置
JP2009038662A (ja) 復号器、受信装置及び符号化データの復号方法
JP2011139544A (ja) 復号装置
JP2008147764A (ja) 軟判定復号装置および軟判定復号プログラム
JP2016029805A (ja) 誤り訂正復号装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060921

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: 20061114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061127

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3891186

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101215

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101215

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111215

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111215

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121215

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121215

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131215

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees