JP3549519B2 - 軟出力復号器 - Google Patents

軟出力復号器 Download PDF

Info

Publication number
JP3549519B2
JP3549519B2 JP2002125494A JP2002125494A JP3549519B2 JP 3549519 B2 JP3549519 B2 JP 3549519B2 JP 2002125494 A JP2002125494 A JP 2002125494A JP 2002125494 A JP2002125494 A JP 2002125494A JP 3549519 B2 JP3549519 B2 JP 3549519B2
Authority
JP
Japan
Prior art keywords
soft
state
metric
output
metrics
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.)
Expired - Fee Related
Application number
JP2002125494A
Other languages
English (en)
Other versions
JP2003318746A (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2002125494A priority Critical patent/JP3549519B2/ja
Priority to US10/420,002 priority patent/US20040032347A1/en
Publication of JP2003318746A publication Critical patent/JP2003318746A/ja
Priority to US10/852,654 priority patent/US6879267B2/en
Application granted granted Critical
Publication of JP3549519B2 publication Critical patent/JP3549519B2/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/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
    • H03M13/2975Judging correct decoding, e.g. iteration stopping criteria
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3961Arrangements of methods for branch or transition metric calculation
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3994Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using state pinning or decision forcing, i.e. the decoded sequence is forced through a particular trellis state or a particular set of trellis states or a particular decoded symbol

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、受信データ列から送信データ列をターボ復号するターボ復号装置を構成して、上記送信データ列を軟判定復号する軟出力復号器に関するものである。
【0002】
【従来の技術】
図19はターボ符号通信システムの構成図である。図19のターボ符号通信システムは、ターボ符号装置100と、変調器200と、通信路300と、復調器400と、ターボ復号装置500とによって構成されている。
【0003】
ターボ符号装置100は、第1の再帰的組織畳込み符号器101aと、第2の再帰的組織畳込み符号器101bと、インターリーバ102とを備えている。このターボ符号装置100の入力データDinは2値のデータであり、ターボ符号装置100の符号化レートは1/3、拘束長は4である。
【0004】
データ列Dinが入力されると、ターボ符号装置100は、符号化レートが1/3であるので、3つのデータ列X,Y,Yを出力する。出力データ列Xは、入力データ列Dinをそのまま出力したものである。また、出力データ列Yは、入力データ列Dinを第1の再帰的組織畳込み符号器101aに入力し、この第1の再帰的組織畳込み符号器101aから出力されたデータ列である。また、出力データ列Yは、入力データ列Dinをインターリーバ102に入力し、ある手順に従って入力データ列Dinのデータの順序を変換し、この順序変換された入力データ列Dinを第2の再帰的組織畳込み符号器101bに入力し、この第2の再帰的組織畳込み符号器101bから出力されたデータ列である。
【0005】
第1の再帰的組織畳込み符号器101aと第2の再帰的組織畳込み符号器101bは、同じ構成である。図20は再帰的組織畳込み符号器101(図19の第1の再帰的組織畳込み符号器101aまたは第2の再帰的組織畳込み符号器101b)の構成図である。
【0006】
再帰的組織畳込み符号器101は、拘束長が4であるので、3つのレジスタ111,112,113で構成されたシフトレジスタと、4つの排他的論理和回路114,115,116,117とを備えている。
【0007】
初期条件では、レジスタ111,112,113は、全てクリアされている。そこに、データ列Dinが入力端子INから入力されると、レジスタ112と113の出力の排他的論理和演算が排他的論理和回路117においてなされ、この排他的論理和回路117の出力と、入力データ列Dinのデータの排他的論理和演算が排他的論理和回路114においてなされる。
【0008】
排他的論理和回路114の出力は、レジスタ111に入力されると同時に、排他的論理和回路115にレジスタ111の出力とともに入力され、排他的論理和回路114の出力とレジスタ111の出力の排他的論理和演算が排他的論理和回路115においてなされる。
【0009】
排他的論理和回路115の出力は、排他的論理和回路116にレジスタ113の出力とともに入力され、排他的論理和回路115の出力とレジスタ113の出力の排他的論理和演算が排他的論理和回路116においてなされる。
【0010】
そして、排他的論理和回路116の出力が、再帰的組織畳込み符号器101の出力(ターボ符号装置の出力データ列YまたはY)として、出力端子OUTから出力される。
【0011】
再帰的組織畳込み符号器101は、データ列Dinのビットが入力されるごとに、上記の動作を繰り返す。3つのレジスタ111,112,113によって構成されるシフトレジスタのステートは、それぞれのレジスタの出力が0または1であるから8つ存在し、それぞれのステートから次の入力データに従って遷移できるステートは必ず2つしか存在しない。
【0012】
図19において、変調器200は、ターボ符号装置100の3つの出力データ列(送信データ列)X,Y,Yを変調し、通信路300に送出する。変調器200では、例えばQPSK(Quadrature Phase Shift Keying)変調がなされる。
【0013】
変調器200からの送信信号には通信路300において雑音が付加され、この雑音が付加された信号が復調器400で受信される。
【0014】
復調器400は、変調器200とは逆の処理によって上記の受信信号を復調し、送信データ列Xに雑音が付加された受信データ列X’、送信データ列Yに雑音が付加された受信データ列Y’、送信データ列Yに雑音が付加された受信データ列Y’をターボ復号装置500に出力する。なお、受信データ列X’,Y’,Y’を構成するそれぞれのデータは、3値以上のデータである。
【0015】
図21は従来のターボ復号装置のブロック構成図である。図21の従来のターボ復号装置は、従来の軟出力復号器である第1の軟出力復号器501aおよび第2の軟出力復号器501bと、インターリーバ51,52と、デインターリーバ53,54と、選択器55と、硬判定器56とを備えている。
【0016】
なお、図19のターボ符号通信システムおよび図21の従来のターボ復号装置は、例えば日経エレクトロニクス(1998.7.13,NO.721)のp.163−p.177に記載がある。
【0017】
図21の従来のターボ復号装置において、雑音を含む受信データ列X’は第1の軟出力復号器501aおよびインターリーバ51に入力され、雑音を含む受信データ列Y’は第1の軟出力復号器501aに入力され、雑音を含む受信データ列Y’は第2の軟出力復号器501bに入力される。
【0018】
第1の軟出力復号器501aの出力である外部情報尤度列Leout−aは、インターリーバ52に入力され、第2の軟出力復号器501bの出力である外部情報尤度列Leout−bは、デインターリーバ53に入力される。また、インターリーバ51の出力である順序変換された受信データ列X’およびインターリーバ52の出力である事前情報尤度列Lin−b(外部情報尤度列Leout−aの順序変換されたもの)は、第2の軟出力復号器501bに入力され、デインターリーバ53の出力である事前情報尤度列Lin−a(外部情報尤度列Leout−bの順序逆変換されたもの)は、第1の軟出力復号器501aに入力される。
【0019】
第1の軟出力復号器501aのもう1つの出力である軟判定データ列Lout−aは、選択器55に入力され、第2の軟出力復号器501bのもう1つの出力である軟判定データ列Lout−bは、デインターリーバ54に入力される。デインターリーバ54の出力(軟判定データ列Lout−bの順序逆変換されたもの)も、選択器55に入力される。選択器55の出力は、硬判定器56に入力される。そして、硬判定器56の出力が、送信データ列Din(図19参照)のターボ復号されたデータ列Doutとなる。
【0020】
図21の従来のターボ復号装置の動作について以下に説明する。インターリーバ51は、図19のターボ符号装置100のインターリーバ102と同じ構成であり、ある手順に従ってデータ列X’のデータの順序を変換して、第2の軟出力復号器501bに出力する。また、インターリーバ52は、インターリーバ51と同じ構成であり、上記の手順に従って外部情報尤度列Leout−aのデータの順序を変換し、この外部情報尤度列Leout−aを順序変換した事前情報尤度列Lin−bを、第2の軟出力復号器501bに出力する。
【0021】
デインターリーバ53は、インターリーバ51,52と逆の手順に従って外部情報尤度列Leout−bのデータの順序を逆変換し、この外部情報尤度列Leout−bを順序逆変換した事前情報尤度列Lin−aを、第1の軟出力復号器501aに出力する。また、デインターリーバ54は、デインターリーバ53と同じ構成であり、上記逆の手順に従って軟判定データ列Lout−bのデータの順序を逆変換し、選択器54に出力する。デインターリーバは、インターリーバで変換されたデータ順序をもとの順序に戻すものである。
【0022】
まず、第1の軟出力復号器501aは、雑音を含むデータ列X’および雑音を含むデータ列Y’用いて、送信データ列X(Din)を推定する演算をして、その演算によって得られた軟判定データ列Lout−aおよび外部情報尤度列Leout−aを出力する。なお、第1の軟出力復号器501aには、事前情報尤度列Lin−aも入力されるが、この第1の軟出力復号器501aでの最初の軟判定復号では、事前情報尤度列Lin−aの初期値は全て0であり、事前情報尤度列Lin−aは用いられない。
【0023】
次に、第2の軟出力復号器501bは、順序変換された雑音を含むデータ列X’、雑音を含むデータ列Y’、および上記外部情報尤度列Leout−aを順序変換した事前情報尤度列Lin−bを用いて、順序変換された送信データ列X(Din)を推定する演算をして、その演算によって得られた軟判定データ列Lout−bおよび外部情報尤度列Leout−bを出力する。
【0024】
次に、第1の軟出力復号器501aは、上記雑音を含むデータ列X’,Y’および上記外部情報尤度列Leout−bを順序逆変換した事前情報尤度列Lin−aを用いて、送信データ列X(Din)を推定する軟判定復号を再びして、その再度の軟判定復号によって得られた軟判定データ列Lout−aおよび外部情報尤度列Leout−aを出力する。
【0025】
次に、第2の軟出力復号器501bは、上記順序変換されたデータ列X’、上記データ列Y’、および上記再度の演算によって第1の軟出力復号器501aから出力された外部情報尤度列Leout−aを順序変換した事前情報尤度列Lin−bを用いて、順序変換された送信データX(Din)を推定する軟判定復号を再びして、その再度の軟判定復号によって得られた軟判定データ列Lout−bおよび外部情報尤度列Leout−bを出力する。
【0026】
このようにして、第1の軟出力復号器501aおよび第2の軟出力復号器501bにおいて、上記のような軟判定復号の演算があらかじめ設定された回数だけ繰り返される。
【0027】
選択器55は、第1の軟出力復号器501aおよび第2の軟出力復号器501bにおいて上記軟判定復号の繰り返し演算が終了したら、第1の軟出力復号器501aから出力された軟判定データ列Lout−a、または第2の軟出力復号器501bから出力されて順序逆変換された軟判定データ列Lout−bのいずれかを選択し、その選択した軟判定データ列を硬判定器56に出力する。
【0028】
硬判定器56は、上記の軟判定データ列を用いて、送信データ列X(Din)のそれぞれの場所について硬判定演算(0または1の2値判定演算)をして、得られた硬判定データ列を復号データ列(ターボ復号装置の出力)Doutとして出力する。
【0029】
図22はターボ符号通信システムにおいての送受信データ列のデータ配列を説明する図である。図22において、(a)は送信データ列X(第1の再帰的組織畳込み符号器101aの入力)、(b)は送信データ列Xのインターリーバ102出力(第2の再帰的組織畳込み符号器101bの入力)、(c)は送信データ列Y(第1の再帰的組織畳込み符号器101aの出力)、(d)は送信データ列Y(第2の再帰的組織畳込み符号器101bの出力)、(e)は受信データ列X’(第1の軟出力復号器501aの入力)、(f)は受信データ列X’のインターリーバ51出力、(g)は受信データ列Y’(第1の軟出力復号器501aの入力)、(h)は受信データ列Y’のインターリーバ出力(ただし、受信データ列Y’はインターリーバには入力されないので、仮想的なものである)、(i)は受信データ列Y’(第2の軟出力復号器501bの入力)、(j)は受信データ列Y’のデインターリーバ出力(ただし、受信データ列Y’はデインターリーバには入力されないので、仮想的なものである)である。また、k,k,k,kは、上記(a)〜(j)のデータ列においての場所(受信データ列においては復号の場所)である。また、x,x,x,xは送信データ列Xを構成するデータ、y,y,y,yは送信データ列Yを構成するデータ、z,z,z,zは送信データ列Yを構成するデータ、x’,x’,x’,x’は受信データ列X’を構成するデータ、y’,y’,y’,y’は受信データ列Y’を構成するデータ、z’,z’,z’,z’は送信データ列Y’を構成するデータである。なお、図22では、説明を簡単にするために、それぞれのデータ列を4つのデータで構成している。
【0030】
まず、図22(a)のように、送信データ列であるとともに第1の再帰的組織畳込み符号器101aの入力データ列であるデータ列Xの場所k,k,k,kには、それぞれデータx,x,x,xが配列されている。このデータ列Xは、データx,x,x,xの順に第1の再帰的組織畳込み符号器101aに入力され、送信データ列であるとともに第1の再帰的組織畳込み符号器101aの出力データ列であるデータ列Yは、図22(c)のように、場所k,k,k,kにそれぞれデータy,y,y,yが配列されたものとなっている。
【0031】
また、データ列Xのインターリーバ102出力は、構成データの順序が変換され、図22(b)のように、場所k,k,k,kにそれぞれデータx,x,x,xが配列されたものとなる。なお、この順序変換手順は一例に過ぎない。このデータ列Xのインターリーバ出力は、データx,x,x,xの順に第2の再帰的組織畳込み符号器101bに入力され、送信データ列であるとともに第2の再帰的組織畳込み符号器101bの出力データ列であるデータ列Yは、図22(d)のように、場所k,k,k,kにそれぞれデータz,z,z,zが配列されたものとなっている。
【0032】
次に、図22(e)のように、送信データ列Xの受信データ列であるとともに、第1の軟出力復号器501aの入力データ列であるデータ列X’の場所k,k,k,kには、それぞれデータx’,x’,x’,x’(送信データx,x,x,xの受信データ)が配列されている。同様に、図22(g)のように、送信データ列Yの受信データ列であるとともに、第1の軟出力復号器501aの入力データ列であるデータ列Y’の場所k,k,k,kには、それぞれデータy’,y’,y’,y’(送信データy,y,y,yの受信データ)が配列されている。
【0033】
また、受信データ列X’のインターリーバ51出力(第2の軟出力復号器501bの入力データ列)は、構成データの順序が変換され、図22(f)のように、場所k,k,k,kにそれぞれデータx’,x’,x’,x’が配列されたものとなる。なお、このインターリーバ51での順序変換手順は、インターリーバ102での順序変換手順と同じではあるが、一例に過ぎない。同様に、受信データ列Y’をインターリーバ51に入力したときには、そのインターリーバ出力は、構成データの順序が変換され、図22(h)のように、場所k,k,k,kにそれぞれデータy’,y’,y’,y’が配列されたものとなる。
【0034】
さらに、図22(i)のように、送信データ列Yの受信データ列であるとともに第2の軟出力復号器501bの入力データ列であるデータ列Y’の場所k,k,k,kには、それぞれデータz’,z’,z’,z’(送信データz,z,z,zの受信データ)が配列されている。
【0035】
この受信データ列Y’をデインターリーバ53に入力したときには、そのデインターリーバ出力は、構成データの順序が逆変換され、図22(j)のように、場所k,k,k,kにそれぞれデータz’,z’,z’,z’が配列されたものとなる。
【0036】
第1の軟出力復号器501aの他の入出力データ列Lin−a,Lout−a,Leout−aのデータ配列は、図22(e),(g),(j)のデータ配列に準ずる。
例えば、事前情報尤度列Lin−aの場所kには、受信データx’,y’,z’についての事前情報尤度が配列されている。
【0037】
また、第2の軟出力復号器501bの他の入出力データ列Lin−b,Lout−b,Leout−bのデータ配列は、図22(f),(h),(i)のデータ配列に準ずる。例えば、事前情報尤度列Lin−bの場所kには、受信データx’,y’,z’についての事前情報尤度が配列されている。
【0038】
図23は軟判定復号の演算アルゴリズムを説明するフローチャートである。この図23の演算アルゴリズムは、MAP(maximum a posteriori probability decoding)復号と称されるものである。
【0039】
まず、ステップS2において、受信データ列Xin(図21においてはX’または順序変換されたX’)および受信データ列Yin(図21においてはY’またはY’)、ならびに事前情報尤度列Lin(図21においてはLin−aまたはLin−b)を用いて、ブランチメトリックスを演算する。ただし、初回の軟判定復号では、受信データ列XinおよびYinを用いてブランチメトリックスを演算する。ブランチメトリックスは、データ列のそれぞれの場所について順次演算される。
【0040】
このブランチメトリックスは、ターボ符号装置側においてデータ入力によって推移するステート間のパスの存在確率である。
【0041】
次、ステップS3において、上記ステップS2で求められたブランチメトリックスを用いて順方向再帰ステートメトリックスを演算する。順方向再帰ステートメトリックスは、データ列のそれぞれの場所について順次演算される。
【0042】
この順方向再帰ステートメトリックスは、ブランチメトリックスをもとに時間的にパスを逆方向にトレースしたときのそれぞれのステートの存在確率である。
【0043】
次、ステップS4において、上記ステップS2で求められたブランチメトリックスを用いて逆方向再帰ステートメトリックスを演算する。逆方向再帰ステートメトリックスも、データ列のそれぞれの場所について順次演算される。
【0044】
この逆方向再帰ステートメトリックスは、ブランチメトリックスをもとに時間的にパスを逆方向にトレースしたときのそれぞれのステートの存在確率である。
【0045】
そして、ステップS5において、上記ステップS2で求められたブランチメトリックス、上記ステップS3で求められた順方向再帰ステートメトリックス、および上記ステップS4で求められた逆方向再帰ステートメトリックスを用いて、送信データ列X(Din、図19参照)のそれぞれの復号の場所について軟判定演算をして、得られた軟判定データ列を出力する。
【0046】
なお、図23では、便宜上、順方向再帰ステートメトリックスの演算と、逆方向再帰ステートメトリックスとをこの順で演算するようになっているが、MAP復号の演算アルゴリズムでは、逆方向再帰ステートメトリックスと順方向再帰ステートメトリックスとを同時並列に演算することや、逆方向再帰ステートメトリックス、順方向再帰ステートメトリックスの順に演算することも可能である。
【0047】
図24は従来の軟出力復号器501(図21の第1の軟出力復号器501aまたは第2の軟出力復号器501b)のブロック構成図である。図24において、入力データ列Xinは図21のX’または順序変換されたX’、入力データ列Yinは図21のY’またはY’、事前情報尤度列Linは図21のLin−aまたはLin−b、外部情報尤度列Leoutは図21のLeout−aまたはLeout−b、軟判定データ列Loutは図21のLout−aまたはLout−bである。
【0048】
従来の軟出力復号器501は、ブランチメトリックス演算手段511と、情報尤度値RAM12と、ブランチメトリックス値RAM13と、順方向再帰ステートメトリックス演算手段516fと、逆方向再帰ステートメトリックス演算手段516r、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19とを備えている。
【0049】
図24の従来の軟出力復号器501の動作について以下に説明する。この従来の軟出力復号器501は、データ長n(nは正の整数)のデータ列を処理単位として軟判定復号動作をする。上記のデータ列は、第1の場所のデータから第nの場所のデータまでによって構成されている。
【0050】
まず、ブランチメトリックス演算手段511は、入力された受信データ列Xin,Yinおよび事前情報尤度列Lin(初回の軟判定復号では受信データ列Xin,Yin)を用いて、データ列のそれぞれの場所についてブランチメトリックスを順次演算し(図23のステップS2に相当する演算)、得られたブランチメトリックス値をブランチメトリックス値RAM13に書き込む。これと同時に、ブランチメトリックス演算手段11は、データ列のそれぞれの場所について事前情報尤度に通信路値を加算して情報尤度を求め、得られた情報尤度を情報尤度値RAM12に書き込む。
【0051】
順方向再帰ステートメトリックス演算手段516fは、必要とされるブランチメトリックスをブランチメトリックス値RAM13から読み出し、読み出したブランチメトリックスを用いて、データ列のそれぞれの場所について順方向再帰ステートメトリックスを順次演算し(図23のステップS3に相当する演算)、得られた順方向再帰ステートメトリックス値を順方向再帰ステートメトリックス値RAM17fに書き込む。
【0052】
同様に、逆方向再帰ステートメトリックス演算手段516rは、必要とされるブランチメトリックスをブランチメトリックス値RAM13から読み出し、読み出したブランチメトリックスを用いて、データ列のそれぞれの場所について逆方向再帰ステートメトリックスを順次演算し(図23のステップS4に相当する演算)、得られた逆方向再帰ステートメトリックス値を逆方向再帰ステートメトリックス値RAM17rに書き込む。
【0053】
軟判定演算手段18は、必要とされるブランチメトリックスをブランチメトリックス値RAM13から読み出し、必要とされる順方向再帰ステートメトリックスを順方向再帰ステートメトリックス値RAM17fから読み出し、必要とされる逆方向再帰ステートメトリックスを逆方向再帰ステートメトリックス値RAM17rから読み出し、読み出したこれらのメトリックス値を用いて、データ列のそれぞれの場所について軟判定演算をして、得られた軟判定データ列Loutを差分演算手段19に出力する。なお、この軟判定データ列Loutは、軟出力復号器の出力として、図21の選択器55またはデインターリーバ54にも出力され、硬判定演算に用いられる。
【0054】
差分演算手段19は、情報尤度値RAM12から必要な情報尤度を読み出し、データ列のそれぞれの場所について、軟判定演算手段18から入力された軟判定データと上記読み出した情報尤度との差分を演算して外部情報尤度を生成し、得られた外部情報尤度列Leoutを出力する。この外部情報尤度列Leoutは、図19のインターリーバ52またはデインターリーバ53に入力され、インターリーバ52またはデインターリーバ53の出力が、次段の軟出力復号器(他方の軟出力復号器)に入力される事前情報尤度列Linとなる。
【0055】
【発明が解決しようとする課題】
しかしながら、ターボ復号装置を構成する従来の軟出力復号器では、それぞれのステートの存在確率を計算する演算量が非常に多くなるという問題があった。また、ターボ復号装置は、原理として、前回の軟出力復号の情報をもとに今回の軟出力復号の演算をする手順を繰り返すものであり、この繰り返し演算の回数は、伝送信号に対する雑音比を考慮して、あらかじめ設定されている。このように軟出力復号の繰り返し演算の回数があらかじめ設定された従来の軟出力復号器では、雑音比が良好である伝送ブロックについては、過剰な繰り返し演算が過剰になされ、余分な演算が繰り返されるという問題があった。これらの軟出力復号器においての問題によって、従来のターボ復号装置には、ターボ復号の処理時間が長くなり、消費電力が増大するという問題があった。
【0056】
本発明は、このような従来の問題を解決するためになされたものであり、ターボ復号装置においての全体の処理時間および消費電力を低減できる軟出力復号器を提供することを目的とするものである。
【0057】
【課題を解決するための手段】
この発明に係る軟出力復号器は、前述の課題を解決するためになされたものであり、その代表的なものは、演算判定手段と、ブランチマトリックス演算手段と、ステートメトリックス演算手段と、軟判定演算手段とを有する。演算判定手段は、情報尤度に基づいて、ブランチメトリックス演算及びステートマトリックス演算のメトリックス演算を行うか否かを判定する。ブランチメトリックス演算手段は、演算判定手段の判定結果に応じて、受信データと情報尤度とに基づくブランチメトリックス演算を行うか否かが制御される。ステートメトリックス演算手段は、メトリックス演算を行わない場合に、前回の軟判定復号時において最も存在確率が高かったステートを検出する検出器と、メトリックス演算を行わない場合に、検出器の検出結果に応じて、ステートメトリックスのとり得る値の最大値若しくはステートメトリックスのとり得る最小値を選択し出力するステートメトリックス生成器とを有する。そして、ステートメトリックス演算手段は、メトリックス演算を行うことを示す判定結果に応じて、ブランチメトリックス演算手段の演算結果に基づくステートメトリックス演算を行う。軟判定演算手段は、ブランチメトリックス演算手段の演算結果とステートメトリックス演算手段の演算結果とに基づいて軟判定演算を行う。

【0059】
【発明の実施の形態】
実施の形態1
図1は本発明の実施の形態1の軟出力復号器を設けたターボ復号装置のブロック構成図である。図1において、図21と同じものには同じ符号を付してある。
【0060】
図1のターボ復号装置は、実施の形態1の軟出力復号器である第1の軟出力復号器1aおよび第2の軟出力復号器1bと、インターリーバ51,52と、デインターリーバ53,54と、選択器55と、硬判定器56とを備えている。
【0061】
つまり、図1の実施の形態1のターボ復号装置は、上記従来のターボ復号装置(図21参照)において、従来の軟出力復号器501a,501bを、それぞれ実施の形態1の軟出力復号器1a,1bに変更したものである。
【0062】
図1のターボ復号装置において、第1の軟出力復号器1aは、軟判定データ列Lout−aおよび外部情報尤度列Leout−aの他に、終了判定フラグEin−aを出力し、第2の軟出力復号器1bは、軟判定データ列Lout−bおよび外部情報尤度列Leout−bの他に、終了判定フラグEin−bを出力する。
【0063】
なお、第1の軟出力復号器1aの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501aと同様であり、第2の軟出力復号器1bの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501bと同様である。
【0064】
図1のターボ復号装置の動作について以下に説明する。なお、図21の従来のターボ復号装置と同じ動作についてはその説明を割愛する。
【0065】
第1の軟出力復号器1aは、雑音を含む受信データ列X’、雑音を含む受信データ列Y’、および事前情報尤度列Lin−a(ただし、初回の軟判定復号ではデータ列X’およびY’)用いて、送信データ列X(Din)を推定する演算をして、その演算によって得られた軟判定データ列Lout−aおよび外部情報尤度列Leout−aを出力する。さらに、第1の軟出力復号器1aは、軟判定復号を終了できるか否かを判定し、この終了判定の結果を示す終了判定フラグEin−aを出力する。
【0066】
同様に、第2の軟出力復号器1bは、順序変換された雑音を含む受信データ列X’、雑音を含む受信データ列Y’、および事前情報尤度列Lin−bを用いて、順序変換された送信データ列X(Din)を推定する演算をして、その演算によって得られた軟判定データ列Lout−bおよび外部情報尤度列Leout−bを出力する。さらに、第2の軟出力復号器1bは、軟判定復号を終了できるか否かを判定し、この終了判定の結果を示す終了判定フラグEin−bを出力する。
【0067】
図2は本発明の実施の形態1の軟出力復号器1(図1の第1の軟出力復号器1aまたは第2の軟出力復号器1b)のブロック構成図である。図2において、図24と同じものには同じ符号を付してあり、Jinは演算判定フラグ列、Einは図1の終了判定フラグEin−aまたはEin−bである。
【0068】
実施の形態1の軟出力復号器1は、ブランチメトリックス演算手段11と、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定手段14と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16fと、逆方向再帰ステートメトリックス演算手段16r、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19と、終了判定手段20とを備えている。
【0069】
つまり、実施の形態1の軟出力復号器1は、上記従来の軟出力復号器501(図24参照)において、演算判定手段14、演算判定フラグRAM15、終了判定手段20を設け、ブランチメトリックス演算手段511、順方向再帰ステートメトリックス演算手段516f、逆方向再帰ステートメトリックス演算手段516rを、それぞれブランチメトリックス演算手段11、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16rに変更したものである。
【0070】
図3は軟出力復号器1においてのステートメトリックス演算手段16(順方向再帰ステートメトリックス演算手段16fまたは逆方向再帰ステートメトリックス演算手段16r)の構成図である。図3において、実施の形態1のステートメトリックス演算手段16は、ステートメトリックス演算器25と、選択器26と、レジスタ27とを備えている。
【0071】
図4は軟出力復号器1においての演算判定手段14の構成図である。図4において、演算判定手段14は、比較器35からなる。比較器35の第1の入力には、事前情報尤度列Linを構成する事前情報尤度(データ列のそれぞれの場所についての事前情報尤度)が順次入力され、比較器35の第2の入力には、あらかじめ設定された判定しきい値が入力される。比較器35の出力は、それぞれの場所についての演算判定フラグから構成される演算判定フラグ列Jinである。
【0072】
図5は軟出力復号器1においての終了判定手段20の構成図である。図5において、終了判定手段20は、論理積回路41と、レジスタ42とを備えている。論理積回路41の第1の入力には、演算判定フラグ列Jinを構成している演算判定フラグ(データ列のそれぞれの場所についての演算判定フラグ)が順次入力され、論理積回路41の第2の入力には、レジスタ42の出力が順次入力される。論理積回路41の出力は、レジスタ42に入力され、演算判定フラグ列Jinの演算判定フラグ列が全て論理積回路41に入力されたときのレジスタ42の出力は、終了判定フラグEinである。
【0073】
実施の形態1の軟出力復号器1の動作について以下に説明する。なお、上記従来の軟出力復号器501(図24参照)と同じ動作については、その説明を割愛する。
【0074】
この実施の形態1の軟出力復号器1も、上記従来の軟出力復号器501(図24参照)と同様に、データ長n(nは正の整数)のデータ列を処理単位として軟判定復号動作をする。
【0075】
軟出力復号器1に入力される事前情報尤度列Linは、データ長nのデータ列においてのそれぞれの復号の場所の事前情報尤度から構成されている。
【0076】
[演算判定手段14]
演算判定手段14は、上記の事前情報尤度をもとに、その場所のメトリックス演算(ブランチメトリックス演算、順方方向再帰ステートメトリックス演算、および逆方方向再帰ステートメトリックス演算)をする必要があるか否かを順次判定して、演算判定の結果を示す演算判定フラグを順次生成し、これらそれぞれの場所の演算判定フラグから構成される演算判定フラグ列Jinを、演算判定フラグRAM15に書き込むとともに、ブランチメトリックス演算手段11および終了判定手段20に出力する。
【0077】
ここでは、演算の必要があると判定した場所の演算判定フラグの値を0とし、演算の必要がないと判定した場所の演算判定フラグの値を1とする。
【0078】
図4の演算判定手段14の構成例においては、比較器35において、事前情報尤度とあらかじめ設定された判定しきい値と比較して、その事前情報尤度が判定しきい値よりも小さい(あるいは逆に大きい)ときに、値が0の演算判定フラグを出力し、その事前情報尤度が判定しきい値よりも大きい(あるいは逆に小さい)ときに、値が1の演算判定フラグを出力する。
【0079】
つまり、図4の演算判定手段14では、事前情報尤度とあらかじめ設定された判定しきい値と比較して、その事前情報尤度が判定しきい値よりも小さい(あるいは逆に大きい)ときに、その場所のメトリックス演算の必要があると判定し、その事前情報尤度が判定しきい値よりも大きい(あるいは逆に小さい)ときに、その場所のメトリックス演算の必要がないと判定する。
【0080】
なお、軟出力復号器1が図1の第1の軟出力復号器1aであるときの初回の軟判定復号では、前段の軟出力復号器(他方の軟出力復号器)から外部情報尤度列Leoutが出力されないので、事前情報尤度列Linの全ての事前情報尤度の値は0である。このため、上記初回の軟判定復号では、演算判定手段14は、演算判定フラグ列Jinの全ての演算判定フラグを0とする。あるいは、上記初回の軟判定復号では、演算判定手段14を動作させない。
【0081】
[ブランチメトリックス演算手段11]
ブランチメトリックス演算手段11は、演算判定フラグRAM15から演算判定フラグを読み出し、読み出した演算判定フラグの値に従って、以下のように動作する。
【0082】
演算判定フラグが0である場所については、上記従来のブランチメトリックス演算手段511(図24参照)と同様にして、ブランチメトリックスおよび情報尤度を演算し、得られたブランチメトリックスをブランチメトリックス値RAM13に書き込み、得られた情報尤度を情報尤度値RAM12に書き込む。
【0083】
また、演算判定フラグが1である場所については、ブランチメトリックスおよび情報尤度の演算をせず、ブランチメトリックス値RAM13および情報尤度値RAM12に書き込みをしない。従って、ブランチメトリックス値RAM13および情報尤度値RAM12には、前回の軟判定復号時に求められたブランチメトリックスおよび情報尤度が更新されずに保持される。
【0084】
なお、上記初回の軟判定復号では、ブランチメトリックス演算手段11は、上記従来のブランチメトリックス演算手段511(図24参照)と同様にして、全ての場所についてブランチメトリックスおよび情報尤度を順次演算する。
【0085】
[順方向再帰ステートメトリックス演算手段16f]
順方向再帰ステートメトリックス演算手段16fは、演算判定フラグRAM15から演算判定フラグを読み出し、読み出した演算判定フラグの値に従って、以下のように動作する。
【0086】
演算判定フラグが0である場所については、上記従来の順方向再帰ステートメトリックス演算手段516f(図24)と同様にして、その場所の順方向再帰ステートメトリックス演算に必要とされるブランチメトリックスをブランチメトリックス値RAM13から読み出し、読み出したブランチメトリックスを用いて、その場所の順方向再帰ステートメトリックスを演算し(図23のステップS3に相当する演算)、得られた順方向再帰ステートメトリックス値を順方向再帰ステートメトリックス値RAM17fに書き込む。
【0087】
また、演算判定フラグが1である場所については、順方向再帰ステートメトリックスを演算をせず、順方向再帰ステートメトリックス値RAM17fに書き込みをしない。従って、順方向再帰ステートメトリックス値RAM17fには、前回の軟判定復号時に求められたその場所の順方向再帰ステートメトリックスが更新されずに保持される。
【0088】
[逆方向再帰ステートメトリックス演算手段16r]
同様に、逆方向再帰ステートメトリックス演算手段16rは、演算判定フラグRAM15から演算判定フラグを読み出し、読み出した演算判定フラグの値に従って、以下のように動作する。
【0089】
演算判定フラグが0である場所については、上記従来の逆方向再帰ステートメトリックス演算手段516r(図24)と同様にして、その場所の逆方向再帰ステートメトリックス演算に必要とされるブランチメトリックスをブランチメトリックス値RAM13から読み出し、読み出したブランチメトリックスを用いて、その場所の逆方向再帰ステートメトリックスを演算し、得られた逆方向再帰ステートメトリックス値を逆方向再帰ステートメトリックス値RAM17rに書き込む。
【0090】
また、演算判定フラグが1である場所については、逆方向再帰ステートメトリックスの演算をせず、逆方向再帰ステートメトリックス値RAM17rに書き込みをしない。従って、逆方向再帰ステートメトリックス値RAM17rには、前回の軟判定復号時に求められたその場所の逆方向再帰ステートメトリックスが更新されずに保持される。
【0091】
なお、上記初回の軟判定復号では、順方向再帰ステートメトリックス演算手段16fおよび逆方向再帰ステートメトリックス演算手段16rは、上記従来の順方向再帰ステートメトリックス演算手段516fおよび逆方向再帰ステートメトリックス演算手段516r(図24参照)と同様にして、全ての場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを順次演算する。
【0092】
第k(kは1からnまでのいずれかの整数)の場所の順方向再帰ステートメトリックスの演算では、必要なブランチメトリックスの他に、第(k−1)の場所の順方向再帰ステートメトリックスが用いられる。このため、順方向再帰ステートメトリックス演算手段16fは、第kの場所の演算判定フラグが1であって第kの場所の順方向再帰ステートメトリックス演算をしなかったときには、前回の軟判定復号時に求めた第kの場所の順方向再帰ステートメトリックスを順方向再帰ステートメトリックス値RAM17fから読み出し、第(k+1)の場所の順方向再帰ステートメトリックスの演算に用いる。
【0093】
同様に、第kの場所の逆方向再帰ステートメトリックスの演算では、必要なブランチメトリックスの他に、第(k+1)の場所の逆方向再帰ステートメトリックスが用いられる。このため、逆方向再帰ステートメトリックス演算手段16rは、第kの場所の演算判定フラグが1であって第kの場所の逆方向再帰ステートメトリックスを演算をしなかったときには、前回の軟判定復号時に求めた第kの場所の逆方向再帰ステートメトリックスを逆方向再帰ステートメトリックス値RAM17rから読み出し、第(k−1)の場所の逆方向再帰ステートメトリックスの演算に用いる。
【0094】
図3のステートメトリックス演算手段16(順方向再帰ステートメトリックス演算手段16fまたは逆方向再帰ステートメトリックス演算手段16r)において、想定されるステートは4つであるとする。選択器26に第kの場所の演算判定フラグが入力され、この演算フラグに従ってステートメトリックス演算手段16が動作するとき、レジスタ27には、第(k−1)または第(k+1)の場所の第m(mは1から4までのいずれかの整数)のステートのステートメトリックス値が保持されている。
【0095】
第kの場所の演算判定フラグが0であるときには、ステートメトリックス演算器25は、レジスタ27に保持されている第(k−1)または第(k+1)の場所の第mのステートのステートメトリックスと、ブランチメトリックス値RAM13(図2参照)から読み出した必要なブランチメトリックスとを用いて、第kの場所の第mのステートのステートメトリックスを演算する。
【0096】
そして、選択器26は、ステートメトレクス演算器25で得られた第kの場所の第mのステートのステートメトリックス値を選択し、このステートメトリックス値を、レジスタ27に書き込むとともに、ステートメトリックス値RAM(順方向再帰ステートメトリックス値RAM17fまたは逆方向再帰ステートメトリックス値RAM17r)に書き込む。
【0097】
レジスタ27に書き込まれた第kの場所の第mのステートのステートメトリックス値は、次の第(k+1)または第(k−1)の場所の第mのステートのステートメトリックスの演算に用いられる。
【0098】
また、第kの場所の演算判定フラグが1であるときには、ステートメトリックス演算器25は、ステートメトリックスの演算をせず、選択器26は、前回の軟判定復号時に求めた第kの場所の第mのステートのステートメトリックス値を上記のステートメトリックス値RAMから読み出してこれらを選択し、レジスタ27に書き込む。このとき、上記ステートメトリックス値RAMから読み出した値をステートメトリックス値RAMの同じアドレスに書き戻すことになるので、ステートメトリックス値RAMには書き込みをしない。
【0099】
レジスタ27に書き込まれた前回の軟判定復号時の第kの場所の第mのステートのステートメトリックス値は、次の第(k+1)または第(k−1)の場所の第mのステートのステートメトリックスの演算に用いられる。
【0100】
[軟判定演算手段18]
軟判定演算手段18は、ブランチメトリックス、順方向再帰ステートメトリックス、逆方向再帰ステートメトリックスを用いて、送信データ列X(Din、図19参照)のそれぞれの場所について軟判定演算をするが、演算判定フラグが1である場所については、軟判定演算に用いるメトリックスがいずれも前回の軟判定復号時の値から更新されていないので、前回の軟判定復号時と同じ値の軟判定データを出力することになる。従って、軟判定演算手段18から出力される軟判定データ列Loutにおいて、演算判定フラグが0である場所の軟判定データは、今回の軟判定復号で求めた値であるが、演算判定フラグが1である場所の軟判定データは、前回の軟判定復号時と同じ値である。
【0101】
[差分演算手段19]
同様に、差分演算手段19は、軟判定データおよび情報尤度を用いて外部情報尤度を生成するが、演算判定フラグが1である場所については、外部情報尤度の生成に用いる軟判定データおよび情報尤度がいずれも前回の軟判定復号時の値から更新されていないので、前回の軟判定復号時と同じ値の外部情報尤度を出力することになる。従って、差分演算手段19から出力される外部情報尤度列Leoutにおいて、演算判定フラグが0である場所の外部情報尤度は、今回の軟判定復号で求めた値であるが、演算判定フラグが1である場所の外部情報尤度は、前回の軟判定復号時と同じ値である。
【0102】
[終了判定手段20]
終了判定手段20は、演算判定手段14から入力された演算判定フラグ列Jinをもとに、軟判定復号を終了することが可能か否かを判定し、この終了判定の結果を示す終了判定フラグEinを出力する。
【0103】
ここでは、軟判定復号を終了することが可能でないと判定したときに、終了判定フラグEinの値を0とし、軟判定復号を終了することが可能であると判定したときに、終了判定フラグEinの値を1とする。
【0104】
図5の終了判定手段20の構成例においては、レジスタ42の初期値を1として、入力されたいずれかの演算判定フラグが0であれば、全ての演算判定フラグが入力されたときに、レジスタ42から出力される終了判定フラグEinは0となり、入力された全ての演算判定フラグが1であれば、これら全ての演算判定フラグが入力されたときに、レジスタ42から出力される終了判定フラグEinは1となる。
【0105】
つまり、図5の終了判定手段20では、データ列のいずれかの場所の演算判定フラグが0であれば、さらに軟判定復号をする必要があると判定して、終了判定フラグEin=0を出力し、データ列の全ての場所の演算判定フラグが1であれば、それ以上軟判定復号をする必要がないと判定して、終了判定フラグEin=1を出力する。
【0106】
以上のように実施の形態1によれば、事前情報尤度を用いてデータ列においての復号の場所についてさらにメトリックス演算をする必要があるか否かを判定し、必要がないと判定した場合については演算しないことにより、演算回路が余計に動作するのを回避できる。また、従来のように雑音比によってあらかじめ設定された回数だけ軟判定復号を繰り返すのでなく、受信データ列に依存したメトリックス演算の収束度合に応じて軟判定復号の繰り返し回数を決定できるので、ターボ復号装置においての全体の処理時間および回路で発生する消費電力を低減できる。
【0107】
実施の形態2
図6は本発明の実施の形態2の軟出力復号器を設けたターボ復号装置のブロック構成図である。図6において、図1と同じものには同じ符号を付してある。
【0108】
図6のターボ復号装置は、実施の形態2の軟出力復号器である第1の軟出力復号器2aおよび第2の軟出力復号器2bと、インターリーバ51,52と、デインターリーバ53,54と、選択器55と、硬判定器56とを備えている。
【0109】
つまり、図6の実施の形態2のターボ復号装置は、上記実施の形態1のターボ復号装置(図1参照)において、軟出力復号器1a,1bを、それぞれ実施の形態2の軟出力復号器2a,2bに変更したものである。
【0110】
図6のターボ復号装置において、第1の軟出力復号器2aは、軟判定データ列Lout−a、外部情報尤度列Leout−a、および終了判定フラグEin−aの他に、次段演算判定フラグ列Jout−aを出力し、第2の軟出力復号器2bは、軟判定データ列Lout−b、外部情報尤度列Leout−b、および終了判定フラグEin−bの他に、次段演算判定フラグ列Jout−bを出力する。
【0111】
また、第1の軟出力復号器2aには、雑音を含む受信データ列X’,Y’および事前情報尤度列Lin−aの他に、デインターリーバ53で順序逆変換された次段演算判定フラグ列Jout−bである事前演算判定フラグ列Jin−aが入力され、第2の軟出力復号器2bには、インターリーバ51で順序変換された雑音を含む受信データ列X’、雑音を含む受信データ列Y’、および事前情報尤度列Lin−bの他に、インターリーバ52で順序逆変換された次段演算判定フラグ列Jout−aである事前演算判定フラグ列Jin−bが入力される。
【0112】
なお、第1の軟出力復号器2aの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501aと同様であり、第2の軟出力復号器2bの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501bと同様である。
【0113】
図7は本発明の実施の形態2の軟出力復号器2(図6の第1の軟出力復号器2aまたは第2の軟出力復号器2b)のブロック構成図である。図7において、図2と同じものには同じ符号を付してあり、Jinは図6の事前演算判定フラグJin−aまたはJin−bである。
【0114】
実施の形態2の軟出力復号器2は、ブランチメトリックス演算手段11Bと、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16fと、逆方向再帰ステートメトリックス演算手段16rと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19と、次段演算判定手段21と、次段終了判定手段22とを備えている。
【0115】
つまり、実施の形態2の軟出力復号器2は、上記実施の形態1の軟出力復号器(図1参照)において、演算判定手段14および終了判定手段20を削除して次段演算判定手段21および次段終了判定手段22を設け、ブランチメトリックス演算手段11をブランチメトリックス演算手段11Bに変更したものである。
【0116】
図8は軟出力復号器2においての次段演算判定手段21の構成図である。図8において、次段演算判定手段21は、軟判定演算器36と、絶対値演算器37と、比較器38とを備えている。軟判定演算器36の構成は、軟判定演算手段18(図7参照)と同様である。絶対値演算器37には、軟判定演算器36から出力された軟判定データ列Loutを構成する軟判定データ(送信データ列のそれぞれの場所の軟判定データ)が順次入力される。比較器38の第1の入力には、絶対値演算器37の出力が順次入力され、比較器38の第2の入力には、あらかじめ設定された判定しきい値が入力される。比較器38の出力は、それぞれの場所についての次段演算判定フラグから構成される次段演算判定フラグ列Joutである。
【0117】
実施の形態2の軟出力復号器2の動作について以下に説明する。なお、上記実施の形態1の軟出力復号器1(図2参照)と同じ動作については、その説明を割愛する。
【0118】
軟出力復号器2に入力される事前演算判定フラグ列Jinは、上記実施の形態1の演算判定フラグ列Jinと同様の構成であり、データ長nのデータ列においてのそれぞれの復号の場所についてのメトリックス演算が必要であるか否かを示す事前演算判定フラグから構成されている。
【0119】
[ブランチメトリックス演算手段11B]
ブランチメトリックス演算手段11Bは、上記実施の形態1のブランチメトリックス演算手段11(図2参照)において、事前演算判定フラグが1である場所(ブランチメトリックスの演算をしない場所)について、メトリックス演算が必要ないことを示す演算停止情報をブランチメトリックス値RAM13に書き込むようにしたものである。
【0120】
[次段演算判定手段21]
次段演算判定手段21は、全てのステートメトリックス演算(順方向再帰ステートメトリックス演算および逆方向再帰ステートメトリックス演算)が終了したあとに、ブランチメトリックス値RAM13に書き込まれた演算停止情報に従って、以下のように動作する。
【0121】
演算停止情報が検出されなかった場所(事前演算判定フラグが0であってメトリックス演算がなされた場所)については、次段演算判定手段21は、ブランチメトリックス値RAM13、順方向再帰ステートメトリックス値RAM17f、および逆方向再帰ステートメトリックス値RAM17rから、それぞれ必要なブランチメトリックス、ならびにその場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを読み出し、これら読み出したメトリックスを用いて、次段の軟出力復号器においてメトリックス演算が必要か否かを判定し、この次段演算判定の結果を示す次段演算判定フラグを出力する。
【0122】
例えば、上記読み出したメトリックスを用いて、それぞれのブランチメトリックスの存在確率を計算し、これらブランチメトリックスの存在確率を用いて、次段の軟出力復号器においてその場所のメトリックス演算が必要か否かを判定する。それぞれのブランチメトリックスの存在確率を計算することによって、第kの場所のステートと次の第(k+1)または第(k−1)の場所のステートとを結ぶブランチが決まり、その場所の復号データ列の硬判定出力(0または1)を決定できるので、その場所の演算はそれ以降する必要がないと判定できる。
【0123】
また、演算停止情報が検出された場所(事前演算判定フラグが1であってメトリックス演算がなされなかった場所)については、次段演算判定手段21は、次段の軟出力復号器においてメトリックス演算の必要はないと判定し、この次段判定結果を示す次段演算判定フラグを出力する。
【0124】
ここでは、次段のメトリックス演算が必要であると判定したとき、次段演算判定フラグの値を0とし、次段のメトリックス演算が必要でないと判定したとき、次段演算判定フラグの値を1とする。
【0125】
このようにして、次段演算判定手段21は、次段の軟出力復号器においてその場所のメトリックス演算をする必要があるか否かを順次判定して、次演算判定の結果を示す演算判定フラグを順次生成し、これらそれぞれの場所の次段演算判定フラグから構成される次段演算判定フラグ列Joutを出力する。
【0126】
図8の演算判定手段21の構成例においては、軟判定演算器36において、軟判定演算手段18と同様にして軟復号データを演算し、絶対値演算器37において、上記軟復号データの絶対値を演算する。そして、比較器38において、上記軟復号データの絶対値とあらかじめ設定された判定しきい値と比較して、その軟復号データの絶対値が判定しきい値よりも小さい(あるいは逆に大きい)ときに、値が0の演算判定フラグを出力し、その軟復号データの絶対値が判定しきい値よりも大きい(あるいは逆に小さい)ときに、値が1の演算判定フラグを出力する。なお、図8は演算停止情報が検出されなかった場所の演算判定についての構成例である。
【0127】
つまり、次段演算判定手段21は、演算停止情報が検出されなかった場所については、軟判定データの絶対値とあらかじめ設定された判定しきい値と比較して、その軟判定データの絶対値が判定しきい値よりも小さい(あるいは逆に大きい)ときに、メトリックス演算の必要があると判定し、その軟判定データの絶対値が判定しきい値よりも大きい(あるいは逆に小さい)ときに、メトリックス演算の必要がないと判定する。
【0128】
[次段終了判定手段22]
次段終了判定手段22は、次段演算判定手段21から入力された次段演算判定フラグ列Joutをもとに、次段の軟出力復号器において軟判定復号を終了することが可能であるか否かを判定し、この次段終了判定の結果を示す次段終了判定フラグEoutを出力する。
【0129】
ここでは、次段の軟判定復号を終了することが可能でないと判定したときに、次段終了判定フラグEoutの値を0とし、次段の軟判定復号を終了することが可能であると判定したときに、次段終了判定フラグEoutの値を1とする。
【0130】
例えば、次段終了判定手段22は、データ列のいずれかの場所の次段演算判定フラグが0であれば(次段演算判定フラグ列Joutのいずれかの演算判定フラグが0であれば)、次段でさらに軟判定復号をする必要があると判定して、次段終了判定フラグEout=0を出力し、データ列の全ての場所の演算判定フラグが1であれば(次段演算判定フラグ列Joutの全ての演算判定フラグが1であれば)、次段でそれ以上軟判定復号をする必要がないと判定して、次段終了判定フラグEout=1を出力する。なお、この次段終了判定手段22の構成例は、上記実施の形態1の終了判定手段20の構成例(図4参照)において、論理積回路41の入力を次段演算判定フラグ列Joutとし、レジスタ42の出力を次段終了判定フラグEoutとしたものである。
【0131】
以上のように実施の形態2によれば、上記実施の形態1と同様の効果が得られる。さらに、次段演算判定をして、次段演算判定フラグ列Joutを次段の軟出力復号器に出力することにより、次段の軟出力復号器では、演算判定をすることなくメトリックス演算が必要か否かを認識できるので、ターボ復号装置全体の処理時間および消費電力を低減できる。
【0132】
実施の形態3
図9は本発明の実施の形態3の軟出力復号器を設けたターボ復号装置のブロック構成図である。図9において、図1と同じものには同じ符号を付してある。
【0133】
図9のターボ復号装置は、実施の形態3の軟出力復号器である第1の軟出力復号器3aおよび第2の軟出力復号器3bと、インターリーバ51,52と、デインターリーバ53,54と、選択器55と、硬判定器56とを備えている。
【0134】
つまり、図9の実施の形態3のターボ復号装置は、上記実施の形態1のターボ復号装置(図1参照)において、軟出力復号器1a,1bを、それぞれ実施の形態3の軟出力復号器3a,3bに変更したものである。
【0135】
図9のターボ復号装置において、第1の軟出力復号器3aは、軟判定データ列Lout−aおよび次段終了判定フラグEout−aを出力する他に、外部情報尤度列Leout−aに代えて外部情報尤度列LCeout−aを出力し、第2の軟出力復号器2bは、軟判定データ列Lout−bおよび次段終了判定フラグEout−bを出力する他に、外部情報尤度列Leout−bに代えて外部情報尤度列LCeout−bを出力する。
【0136】
また、第1の軟出力復号器3aには、雑音を含む受信データ列X’,Y’が入力される他に、事前情報尤度列Lin−aに代えて事前情報尤度列LCin−aが入力され、第2の軟出力復号器3bには、インターリーバ51で順序変換された雑音を含む受信データ列X’および雑音を含む受信データ列Y’が入力される他に、事前情報尤度列Lin−bに代えて事前情報尤度列LCin−bが入力される。
【0137】
なお、第1の軟出力復号器3aの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501aと同様であり、第2の軟出力復号器3bの入出力データ列のデータ配列は、図22において説明した従来の軟出力復号器501bと同様である。
【0138】
図10は本発明の実施の形態3の軟出力復号器3(図9の第1の軟出力復号器3aまたは第2の軟出力復号器3b)のブロック構成図である。図10において、図7と同じものには同じ符号を付してあり、LCinは図9の事前情報尤度列LCin−aまたはLCin−bである。
【0139】
実施の形態3の軟出力復号器3は、ブランチメトリックス演算手段11Cと、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16Cfと、逆方向再帰ステートメトリックス演算手段16Crと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19Cと、次段演算判定手段21と、次段終了判定手段22とを備えている。
【0140】
つまり、実施の形態3の軟出力復号器3は、上記実施の形態2の軟出力復号器2(図7参照)において、ブランチメトリックス演算手段11B、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16r、差分演算手段19を、それぞれブランチメトリックス演算手段11C、順方向再帰ステートメトリックス演算手段16Cf、逆方向再帰ステートメトリックス演算手段16Cr、差分演算手段19Cに変更し、演算判定フラグRAM15を削除したものである。
【0141】
実施の形態3の軟出力復号器3の動作について以下に説明する。なお、上記実施の形態2の軟出力復号器2(図7参照)と同じ動作については、その説明を割愛する。
【0142】
実施の形態3の軟出力復号器3は、上記実施の形態2の軟出力復号器2(図7参照)において、次段演算判定フラグを埋め込んだ外部情報尤度列LCeoutを次段の軟出力復号器(他方の軟出力復号器)に出力するようにしたものである。軟出力復号器3には、前段の軟出力復号器(他方の軟出力復号器)から事前演算判定フラグが埋め込まれた事前情報尤度列LCinが入力される。
【0143】
[差分演算手段19C]
差分演算手段19Cは、上記実施の形態1の差分演算手段19(図2参照)において、次段演算判定フラグが0である場所についてのみ外部情報尤度を差分演算し、次段演算判定フラグが0である場所については、この値が0の次段演算判定フラグおよび上記外部情報尤度を出力し、次段演算判定フラグが1である場所については、この値が1の次段演算判定フラグを出力するようにしたものである。
【0144】
このようにして、次段演算判定フラグが外部情報尤度列LCoutに埋め込まれ、外部情報尤度列LCoutは、次段演算判定フラグが0である場所については、この値が0の次段演算判定フラグおよびその場所の外部情報尤度によって構成され、次段演算判定フラグが1である場所については、この値が1の次段演算判定フラグによって構成される。この外部情報尤度列LCoutは、順序変換または順序逆変換され、事前情報尤度列LCinとして(次段演算判定フラグは事前演算判定フラグとして)、次段の軟出力復号器(他方の軟出力復号器)に入力される。
【0145】
[ブランチメトリックス演算手段11C]
ブランチメトリックス演算手段11Cは、上記実施の形態2のブランチメトリックス演算手段11B(図7参照)において、入力された事前情報尤度列LinCから事前演算判定フラグを検出するようにしたものである。
【0146】
この実施の形態3の軟出力復号器3では、事前演算判定フラグが1である場所については、ブランチメトリックス演算手段11Cによって、上記実施の形態2と同様に演算停止情報がブランチメトリックス値RAM13に書き込まれるが、事前演算判定フラグが事前情報尤度列LinCに埋め込まれて入力されるので、演算判定フラグRAM15は設けられていない。
【0147】
[順方向再帰ステートメトリックス演算手段16Cf]
順方向再帰ステートメトリックス演算手段16Cfは、上記実施の形態1の順方向再帰ステートメトリックス演算手段16f(図2参照)において、ブランチメトリックス値RAM13に書き込まれた演算停止情報に従って動作するようにしたものである。
【0148】
順方向再帰ステートメトリックス演算手段16Cfは、演算停止情報が検出されなかった場所(事前演算判定フラグが0である場所)については、順方向再帰ステートメトリックスを演算して順方向再帰ステートメトリックス値RAM17fに書き込み、演算停止情報が検出された場所(事前演算判定フラグが1である場所)については、前回の軟判定復号時に求めた順方向再帰ステートメトリックスを順方向再帰ステートメトリックス値RAM17fから読み出す。
【0149】
[逆方向再帰ステートメトリックス演算手段16Cr]
同様に、逆方向再帰ステートメトリックス演算手段16Crは、上記実施の形態1の逆方向再帰ステートメトリックス演算手段16r(図2参照)において、ブランチメトリックス値RAM13に書き込まれた演算停止情報に従って動作するようにしたものである。
【0150】
逆方向再帰ステートメトリックス演算手段16Crは、演算停止情報が検出されなかった場所(事前演算判定フラグが0である場所)については、逆方向再帰ステートメトリックスを演算して逆方向再帰ステートメトリックス値RAM17rに書き込み、演算停止情報が検出された場所(事前演算判定フラグが1である場所)については、前回の軟判定復号時に求めた逆方向再帰ステートメトリックスを逆方向再帰ステートメトリックス値RAM17rから読み出す。
【0151】
以上のように実施の形態3によれば、上記実施の形態2と同様の効果が得られる。さらに、次段演算判定フラグを外部情報尤度列に埋め込んで次段の軟出力復号器に出力することにより、次段演算判定フラグを伝送するための専用の信号線、入力された事前演算判定フラグを格納するための専用のRAM(演算判定フラグRAM15)、および上記専用のRAMから事前演算判定フラグを読み出すための回路、などが必要なくなるので、回路規模および消費電力を低減できる。
【0152】
実施の形態4
図11は本発明の実施の形態4の軟出力復号器のブロック構成図である。図11において、図2と同じものには同じ符号を付してある。なお、実施の形態4のターボ復号装置の構成は、図1の実施の形態1のターボ復号装置において、第1の軟出力復号器1aおよび第2の軟出力復号器1bを、図11の実施の形態4の軟出力復号器4に変更したものである。
【0153】
実施の形態4の軟出力復号器4は、ブランチメトリックス演算手段11と、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定手段14と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16Dfと、逆方向再帰ステートメトリックス演算手段16Drと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19と、終了判定手段20とを備えている。
【0154】
つまり、実施の形態4の軟出力復号器4は、上記実施の形態1の軟出力復号器1(図2参照)において、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16rを、それぞれ順方向再帰ステートメトリックス演算手段16Df、逆方向再帰ステートメトリックス演算手段16Drに変更したものである。
【0155】
図12は軟出力復号器4のステートメトリックス演算手段16D(順方向再帰ステートメトリックス演算手段16Dfまたは逆方向再帰ステートメトリックス演算手段16Dr)の構成図である。図12において、図3と同じものには同じ符号を付してある。
【0156】
この実施の形態4のステートメトリックス演算手段16Dは、ステートメトリックス演算器25と、選択器26と、レジスタ27,28a,28b,28c,28dと、最大値検出器29と、ステートメトリックス生成器30とを備えている。
【0157】
つまり、実施の形態4ステートメトリックス演算手段16Dは、上記実施の形態1のステートメトリックス演算手段16(図3参照)において、レジスタ28a,28b,28c,28d、最大値検出器29、およびステートメトリックス生成器30を設けたものである。
【0158】
[ステートメトリックス演算手段16D]
図12の実施の形態4のステートメトリックス演算手段16Dの動作について以下に説明する。図12においても、図3と同様に、想定されるステートは4つであるとする。
【0159】
第kの場所の演算判定フラグが0であるときには、ステートメトリックス演算手段16Dの動作は、上記実施の形態1のステートメトリックス演算手段16(図3参照)と同じであり、選択器26は、ステートメトリックス演算器25から出力された第kの場所の第mのステートのステートメトリックス値を選択し、レジスタ27およびステートメトリックス値RAM(順方向ステートメトリックス値RAM17fまたは逆方向ステートメトリックス値RAM17r)に書き込む。
【0160】
第kの場所の演算判定フラグが1であるときには、選択器26は、ステートメトリックス生成器30から出力された第kの場所の第mのステートのステートメトリックス値を選択し、レジスタ27に書き込む。なお、このとき、上記ステートメトリックス値RAMには書き込みをしない。
【0161】
第kの場所の演算判定フラグが1であるときには、レジスタ28a〜28dには、上記ステートメトリックス値RAMから読み出された前回の軟判定復号時に求められた第kの場所のそれぞれのステートのステートメトリックス値が保持される。なお、図12では、想定されるステートを4つとしているので、前回の軟判定復号時のステートメトリックス値を保持するレジスタが4つ設けられている。
【0162】
第kの場所の演算判定フラグが1であるとき、最大値検出器29は、レジスタ28a〜28dにそれぞれ保持されている前回の軟判定復号時のそれぞれのステートのステートメトリックス値を比較して、前回の軟判定復号時において最も存在確率が高かったステートを検出し、その結果をステートメトリックス生成器30に出力する。
【0163】
第kの場所の演算判定フラグが1であるとき、ステートメトリックス生成器30は、今回演算をしなかった第kの場所の第mのステートが前回の軟判定復号時において最も存在確率が高かったステートであれば、今回演算をしなかった第kの場所の第mのステートのステートメトリックス値としてステートメトリックスのとり得る値の最大値を選択し、選択器26に出力する。また、今回演算をしなかった第kの場所の第mのステートが前回の軟判定復号時において最も存在確率が高かったステートでなければ、今回演算をしなかった第kの場所の第mのステートのステートメトリックス値としてステートメトリックスのとり得る値の最小値を選択し、選択器26に出力する。
【0164】
これによって、第kの場所の演算判定フラグが1であるとき、レジスタ27には、今回演算しなかった第kの場所の第mのステートのステートメトリックス値として、前回の軟判定復号時において最も存在確率が高かったステートについては上記最大値が書き込まれ、その他のステートについては上記最小値が書き込まれることになる。
【0165】
以上のように実施の形態4によれば、上記実施の形態1と同様の効果が得られる。さらに、演算判定フラグが1である場所のそれぞれのステートのステートメトリックス値を、前回の軟判定復号時においての存在確率に従ってステートメトリックスのとり得る値の最大値または最小値とし、この最大値または最小値からなるステートメトリックスを次の場所のステートメトリックスの演算に用いることにより、他の場所のステートおよびブランチの収束を早めることができ、軟判定復号の繰り返し演算回数を減らすことができる。
【0166】
なお、上記実施の形態4は、ステートメトリックス演算手段16Dを上記実施の形態1に適用したものであるが、このステートメトリックス演算手段16Dを上記実施の形態2または3に適用することも可能である。
【0167】
実施の形態5
図13は本発明の実施の形態5の軟出力復号器のブロック構成図である。図13において、図1と同じものには同じ符号を付してあり、91fは他方の軟出力復号器の順方向再帰ステートメトリックス値RAM、91rは他方の軟出力復号器の逆方向再帰ステートメトリックス値RAMである。なお、実施の形態5のターボ復号装置の構成は、図1の実施の形態1のターボ復号装置において、第1の軟出力復号器1aおよび第2の軟出力復号器1bを、図13の実施の形態5の軟出力復号器5に変更したものである。
【0168】
実施の形態5の軟出力復号器5は、ブランチメトリックス演算手段11と、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定手段14と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16Efと、逆方向再帰ステートメトリックス演算手段16Erと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値格納RAM17rと、軟判定演算手段18と、差分演算手段19とを備えている。
【0169】
つまり、実施の形態5の軟出力復号器5は、上記実施の形態1の軟出力復号器1(図2参照)において、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16rを、それぞれ順方向再帰ステートメトリックス演算手段16Ef、逆方向再帰ステートメトリックス演算手段16Erに変更したものである。
【0170】
図14は軟出力復号器5のステートメトリックス演算手段16E(順方向再帰ステートメトリックス演算手段16Efまたは逆方向再帰ステートメトリックス演算手段16Er)の構成図である。図14において、図12と同じものには同じ符号を付してある。
【0171】
この実施の形態5のステートメトリックス演算手段16Eは、ステートメトリックス演算器25と、選択器26と、レジスタ27,28a,28b,28c,28d,31a,31b,31c,31dと、ステートメトリックス生成器30Eと、比較器32,33とを備えている。
【0172】
つまり、実施の形態5のステートメトリックス演算手段16Eは、上記実施の形態2のステートメトリックス演算手段16D(図12参照)において、最大値検出器29を削除して、レジスタ31a〜31dおよび比較器32,33を設け、ステートメトリックス生成器30をステートメトリックス生成器30Eに変更したものである。
【0173】
[ステートメトリックス演算手段16E]
図14の実施の形態5のステートメトリックス演算手段16Eの動作について以下に説明する。図14においても、図12と同様に、想定されるステートは4つであるとする。
【0174】
第kの場所の演算判定フラグが0であるときには、ステートメトリックス演算手段16Eの動作は、上記実施の形態2のステートメトリックス演算手段16D(図12参照)と同じであり、選択器26は、ステートメトリックス演算器25から出力された第kの場所の第mのステートのステートメトリックス値を選択し、レジスタ27およびステートメトリックス値RAM(順方向ステートメトリックス値RAM17fまたは逆方向ステートメトリックス値RAM17r)に書き込む。
【0175】
第kの場所の演算判定フラグが1であるときには、選択器26は、ステートメトリックス生成器30Eから出力された第kの場所の第mのステートのステートメトリックス値を選択し、レジスタ27に書き込む。なお、このとき、上記ステートメトリックス値RAMには書き込みをしない。
【0176】
レジスタ31a〜31dには、他方の軟出力復号器のステートメトリックス値RAM(順方向再帰ステートメトリックス値RAM91fまたは逆方向再帰ステートメトリックス値RAM91r)から読み出されたそれぞれのステートのステートメトリックスが保持される。なお、図14では、想定されるステートを4つとしているので、他方の軟出力復号器のステートメトリックス値を保持するレジスタが4つ設けられている。
【0177】
第kの場所の演算判定フラグが1であるとき、比較器32は、レジスタ28a〜28dに保持されている前回の軟判定復号時のそれぞれのステートのステートメトリックス値を比較して、今回演算しなかった第kの場所の第mのステートの前回の軟判定復号時においての存在確率の順位(存在確率が何番目に高かったか)を検出し、その結果を比較器33に出力する。
【0178】
第kの場所の演算判定フラグが1であるとき、比較器32は、レジスタ31a〜31dに保持されている他方の軟出力復号器のステートメトリックス値を比較して、比較器32で検出された存在確率順位(今回演算しなかった第mのステートの前回の軟判定復号時においての存在確率順位)と他方の軟出力復号器において同じ存在確率順位だったステートを検出し、その結果をステートメトリックス生成器30Eに出力する。
【0179】
第kの場所の演算判定フラグが1であるとき、ステートメトリックス生成器30Eは、比較器33で検出されたステートのステートメトリックス値(レジスタ31a〜31dのいずれかのレジスタ値)を、今回演算をしなかった第kの場所の第mのステートのステートメトリックス値として選択し、選択器26に出力する。
【0180】
これによって、第kの場所の演算判定フラグが1であるとき、レジスタ27には、今回演算しなかった第kの場所の第mのステートのステートメトリックス値として、この第kの場所の第mのステートの前回の軟判定復号時においての存在確率順位と他方の軟出力復号器において同じ順位だったステートの他方の軟出力復号器においてのステートメトリックス値が書き込まれることになる。
【0181】
例えば、第1,第2,第3,第4のステートのステートメトリックス値が、それぞれレジスタ28aおよび31a,28bおよび31b,28cおよび31c,28dおよび31dに書き込まれるものとし、今回演算をしなかったステートが第2のステートであるとすれば、第2のステートの前回の軟判定復号時の存在確率であるレジスタ28bのレジスタ値が、レジスタ28a〜28dのレジスタ値の内で何番値に高いかを比較器32で検出し、レジスタ28a〜28dのレジスタ値の内で、その存在確率順位と同じ順位のものが比較器33で検出され、そのレジスタ値が、今回演算をしなかった第2のステートのステートメトリックス値としてステートメトリックス生成器30Eで選択される。
【0182】
例えば、レジスタ28a,28b,28c,28dのレジスタ値がそれぞれ100,150,250,350であり、レジスタ31a,31b,31c,31dのレジスタ値がそれぞれ100,200,300,400であれば、レジスタ28bのレジスタ値である前回の軟判定復号時の第2のステートの存在確率は、3番目に高く、それぞれレジスタ31a〜31dのレジスタ値である他方の軟出力復号器においての第1〜第4のステートの存在確率の内で、同じく3番目に高いのは、レジスタ31bのレジスタ値200(他方の軟出力復号器においての第2のステートの存在確率)なので、このレジスタ値200が、今回演算をしなかった第2のステートのステートメトリックス値としてステートメトリックス生成器30Eで選択され、レジスタ27に書き込まれる。
【0183】
以上のように実施の形態5によれば、上記実施の形態1と同様の効果が得られる。さらに、演算判定フラグが1である場所のそれぞれのステートのステートメトリックス値を、前回の軟判定復号時の存在確率に従って他方の軟出力復号器のいずれかのステートのステートメトリックス値とし、この他方の軟出力復号器のステートメトリックスを次の場所のステートメトリックスの演算に用いることにより、事前情報尤度と同様に事前のステートメトリックス値を用いることができるので、他の場所のステートおよびブランチの収束を早めることができ、軟判定復号の繰り返し演算回数を減らすことができる。
【0184】
なお、上記実施の形態5は、ステートメトリックス演算手段16Eを上記実施の形態1に適用したものであるが、このステートメトリックス演算手段16Eを上記実施の形態2または3に適用することも可能である。
【0185】
実施の形態6
図15は本発明の実施の形態6の軟出力復号器のブロック構成図である。図15において、図7または図13と同じものには同じ符号を付してある。なお、実施の形態6のターボ復号装置の構成は、図6の実施の形態2のターボ復号装置において、第1の軟出力復号器2aおよび第2の軟出力復号器2bを、図15の実施の形態6の軟出力復号器6に変更したものである。
【0186】
実施の形態6の軟出力復号器6は、ブランチメトリックス演算手段11Bと、情報尤度値RAM12と、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16Efと、逆方向再帰ステートメトリックス演算手段16Erと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値格納RAM17rと、軟判定演算手段18と、差分演算手段19と、次段演算判定手段21Fと、次段終了判定手段22とを備えている。
【0187】
つまり、実施の形態6の軟出力復号器6は、上記実施の形態2の軟出力復号器2(図7参照)において、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16rを、それぞれ上記実施の形態5の順方向再帰ステートメトリックス演算手段16Ef、逆方向再帰ステートメトリックス演算手段16Erに変更し、次段演算判定手段21を次段演算判定手段21Fに変更したものである。
【0188】
図16は軟出力復号器6においての次段演算判定手段21Fの構成図である。図16において、図8と同じものには同じ符号を付してある。
【0189】
図16の次段演算判定手段21Fは、軟判定演算器36,39と、絶対値演算器37と、比較器38と、加算器40とを備えている。つまり、図16の次段演算判定手段21Fは、図8の実施の形態2の次段演算判定手段21において、軟判定演算器39および加算器40をさらに設けたものである。
【0190】
図16において、軟判定演算器36および39の構成は、軟判定演算手段18(図15参照)と同様である。軟判定演算器36には、実施の形態6の軟出力復号器6において求められたブランチメトリックス、順方向再帰ステートメトリックス、および逆方向再帰ステートメトリックスが入力される。また、軟判定演算器39には、他方の軟出力復号器において求められた順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスが入力される。軟判定演算器36の出力および軟判定演算器39の出力は、加算器40に入力され、加算器40の出力は、絶対値演算器に入力される。
【0191】
[次段演算判定手段21F]
実施の形態6の次段演算判定手段21Fの動作について以下に説明する。次段演算判定手段21Fは、上記実施の形態2の次段演算判定手段21(図7参照)において、演算停止情報が検出されなかった場所(事前演算判定フラグが0であってメトリックス演算がなされた場所)については、次段演算判定手段21は、ブランチメトリックス値RAM13、順方向再帰ステートメトリックス値RAM17f、および逆方向再帰ステートメトリックス値RAM17rから、それぞれ必要なブランチメトリックス、ならびにその場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを読み出すとともに、他方の軟出力復号器の順方向再帰ステートメトリックス値RAM91fおよび逆方向再帰ステートメトリックス値RAM91rから、他方の軟出力復号器においてのその場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを読み出し、これら読み出したステートメトリックス値を用いて、次段の軟出力復号器においてメトリックス演算が必要か否かを判定し、この次段演算判定の結果を示す次段演算判定フラグを出力するようにしたものである。
【0192】
図16の演算判定手段21Fの構成例においては、軟判定演算器36において、軟判定演算手段18と同様にして軟復号データを演算し、絶対値演算器37において、上記軟復号データの絶対値を演算する。また、軟判定演算器39において、他方の軟出力演算器の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを用いて、他方の軟出力復号器においての軟復号データを演算する。なお、軟判定演算器39では、ブランチメトリックスの値は0とする。
【0193】
さらに、加算器40において、軟判定演算器36から出力された軟復号データ列Loutを構成するそれぞれの場所の軟復号データと、軟判定演算器39から出力された他方の軟出力復号器の軟復号データ列Lout’を構成するそれぞれの場所の軟復号データとを加算し、絶対値演算器37において、上記軟復号データの加算値の絶対値を演算する。
【0194】
そして、比較器38において、上記軟復号データの絶対値とあらかじめ設定された判定しきい値と比較して、その軟復号データの絶対値が判定しきい値よりも小さい(あるいは逆に大きい)ときに、値が0の演算判定フラグを出力し、その軟復号データの絶対値が判定しきい値よりも大きい(あるいは逆に小さい)ときに、値が1の演算判定フラグを出力する。なお、図16は演算停止情報が検出されなかった場所の演算判定についての構成例である。
【0195】
つまり、次段演算判定手段21Fは、演算停止情報が検出されなかった場所については軟出力復号器6の軟判定データと他方の軟出力復号器の軟判定データの加算値のの絶対値と、あらかじめ設定された判定しきい値と比較して、その軟判定データの絶対値が判定しきい値よりも小さい(あるいは逆に大きい)ときに、メトリックス演算の必要があると判定し、その軟判定データの絶対値が判定しきい値よりも大きい(あるいは逆に小さい)ときに、メトリックス演算の必要がないと判定する。
【0196】
以上のように実施の形態6によれば、上記実施の形態2および5と同様の効果が得られる。さらに、他方の軟出力復号器のステートメトリックス値を用いて次段演算判定をすることにより、次段演算判定の精度を上げることができるので、他方の軟出力復号器においてのステートおよびブランチの収束を早めることができ、軟判定復号の繰り返し演算回数を減らすことができる。
【0197】
実施の形態7
図17は本発明の実施の形態7の軟出力復号器のブロック構成図である。図17において、図10と同じものには同じ符号を付してある。なお、実施の形態7のターボ復号装置の構成は、図9の実施の形態3のターボ復号装置において、第1の軟出力復号器3aおよび第2の軟出力復号器3bを、図17の実施の形態7の軟出力復号器7に変更したものである。この実施の形態7のターボ復号装置では、外部情報尤度列LCeout−a,LCeout−bは、それぞれ外部情報尤度列LGeout−a,LGeout−bに変更され、事前情報尤度列LCin−a,LCin−bは、それぞれ事前情報尤度列LGin−a,LGin−bに変更される。
【0198】
実施の形態7の軟出力復号器7は、ブランチメトリックス演算手段11Gと、情報尤度値RAM12と、ブランチメトリックス値RAM13と、順方向再帰ステートメトリックス演算手段16Gfと、逆方向再帰ステートメトリックス演算手段16Grと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、差分演算手段19Gと、次段演算判定手段21Gと、次段終了判定手段22とを備えている。
【0199】
つまり、実施の形態7の軟出力復号器7は、上記実施の形態3の軟出力復号器3(図10参照)において、ブランチメトリックス演算手段11C、順方向再帰ステートメトリックス演算手段16Cf、逆方向再帰ステートメトリックス演算手段16Cr、差分演算手段19C、次段演算判定手段21を、それぞれブランチメトリックス演算手段11G、順方向再帰ステートメトリックス演算手段16Gf、逆方向再帰ステートメトリックス演算手段16Gr、差分演算手段19G、次段演算判定手段21Gに変更したものである。
【0200】
実施の形態7の軟出力復号器7の動作について以下に説明する。なお、上記実施の形態3の軟出力復号器3(図10参照)と同じ動作については、その説明を割愛する。
【0201】
実施の形態7の軟出力復号器7は、上記実施の形態3の軟出力復号器3(図10参照)において、次段演算判定フラグならびに順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを埋め込んだ外部情報尤度データLGeoutを、次段の軟出力復号器(他方の軟出力復号器)に出力するようにしたものである。軟出力復号器7には、前段の軟出力復号器(他方の軟出力復号器)から事前演算判定フラグならびに前段の軟出力復号器の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスが埋め込まれた事前情報尤度列LGinが入力される。
【0202】
[次段演算判定手段21G]
次段演算判定手段21Gは、上記実施の形態2の次段演算判定手段21(図7参照)において、次段演算判定フラグの値が1である場所については、この値が1の次段演算判定フラグを出力するとともに、その場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを差分演算手段19Gに出力するようにしたものである。
【0203】
[差分演算手段19G]
差分演算手段19Gは、上記実施の形態3の差分演算手段19C(図10参照)において、次段演算判定フラグが1である場所については、この値が1の次段演算判定フラグならびにその場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを出力するようにしたものである。
【0204】
このようにして、次段演算判定フラグが外部情報尤度列LGoutに埋め込まれるともに、次段演算判定フラグが1である場所については順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスが埋め込まれ、外部情報尤度列LGoutは、次段演算判定フラグが0である場所については、この値が0の次段演算判定フラグおよびその場所の外部情報尤度によって構成され、次段演算判定フラグが1である場所については、この値が1の次段演算判定フラグならびのその場所の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスによって構成される。この外部情報尤度列LGoutは、順序変換または順序逆変換され、事前情報尤度列LGinとして(次段演算判定フラグは事前演算判定フラグとして)、次段の軟出力復号器(他方の軟出力復号器)に入力される。
【0205】
[ブランチメトリックス演算手段11G]
ブランチメトリックス演算手段11Gは、上記実施の形態3のブランチメトリックス演算手段11C(図10参照)において、入力された事前情報尤度LGinから他方の軟出力復号器の順方向再帰ステートメトリックスおよび逆方向再帰ステートメトリックスを検出し、これら他方の軟出力復号器のステートメトリックスをブランチメトリックス値RAM13に書き込むようにしたものである。
【0206】
[順方向再帰ステートメトリックス演算手段16Gf]
順方向再帰ステートメトリックス演算手段16Gfは、上記実施の形態3の順方向再帰ステートメトリックス演算手段16Cf(図9参照)同様に、ブランチメトリックス値RAM13に書き込まれた演算停止情報に従って動作する。
【0207】
また、順方向再帰ステートメトリックス演算手段16Gfは、演算停止情報が検出された場所(事前演算判定フラグが1である場所)については、ブランチメトリックス値RAM13から他方の軟出力復号器の順方向再帰ステートメトリックスを読み出し、上記実施の形態5の順方向再帰ステートメトリックス演算手段16Ef(図13参照)と同様の動作をする。
【0208】
[逆方向再帰ステートメトリックス演算手段16Gr]
同様に、逆方向再帰ステートメトリックス演算手段16Grは、上記実施の形態3の逆方向再帰ステートメトリックス演算手段16Cr(図9参照)同様に、ブランチメトリックス値RAM13に書き込まれた演算停止情報に従って動作する。
【0209】
また、逆方向再帰ステートメトリックス演算手段16Grは、演算停止情報が検出された場所(事前演算判定フラグが1である場所)については、ブランチメトリックス値RAM13から他方の軟出力復号器の逆方向再帰ステートメトリックスを読み出し、上記実施の形態5の逆方向再帰ステートメトリックス演算手段16Er(図13参照)と同様の動作をする。
【0210】
この実施の形態7のステートメトリックス演算手段16G(順方向再帰ステートメトリックス演算手段16Gfまたは逆方向再帰ステートメトリックス演算手段16Gr)の構成は、上記実施の形態5のステートメトリックス演算手段16E(図14参照)において、他方の軟出力復号器のステートメトリックスをブランチメトリックス値RAM13から読み出し、さらに選択器26がブランチメトリックス値RAM13に書き込まれた演算停止情報に従って動作するようにしたものである。
【0211】
以上のように実施の形態7によれば、上記実施の形態3および6と同様の効果が得られる。さらに、次段演算判定フラグおよびステートメトリックスを事前情報尤度列に埋め込んで次段の軟出力復号器に出力することにより、次段演算判定フラグを伝送するための専用の信号線、入力された事前演算判定フラグを格納するための専用のRAM(演算判定フラグRAM15)、および上記専用のRAMから事前演算判定フラグを読み出すための回路、他方の軟出力復号器からステートメトリックスを読み出すための専用の信号線および回路、などが必要なくなるので、回路規模および消費電力を低減できる。
【0212】
実施の形態8
図18は本発明の実施の形態8の軟出力復号器のブロック構成図である。図18において、図7と同じものには同じ符号を付してある。なお、実施の形態8のターボ復号装置の構成は、図6の実施の形態2のターボ復号装置において、第1の軟出力復号器2aおよび第2の軟出力復号器2bを、図18の実施の形態8の軟出力復号器8に変更したものである。
【0213】
実施の形態8の軟出力復号器8は、第1の演算群10aと、第2の演算群10bと、第3の演算群10cと、ブランチメトリックス演算手段11Bと、情報尤度値RAM12と、差分演算手段19と、軟判定値RAM23と、次段演算判定フラグRAM24とを備えている。
【0214】
演算群10(第1の演算群10a、第2の演算群10b、第3の演算群10c)のそれぞれは、同じ構成であり、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16fと、逆方向再帰ステートメトリックス演算手段16rと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18とを備えている。
【0215】
つまり、実施の形態8の軟出力復号器8は、上記実施の形態2の軟出力復号器(図7参照)において、順方向再帰ステートメトリックス演算手段16f、逆方向再帰ステートメトリックス演算手段16r、および軟判定演算手段18を含む演算群10を3つ並列に設け、さらに軟判定値RAM23および次段演算判定フラグRAM24を設けたものである。
【0216】
[軟判定値RAM23]
軟判定値RAM23は、3つの演算群10a,10b,10cから出力された軟判定データを保持し、これらの軟判定データによって構成した軟判定データ列Loutを差分演算手段19他に出力する。
【0217】
[次段演算判定フラグRAM24]
次段演算判定フラグRAM24は、3つの演算群10a,10b,10cから出力された次段演算判定フラグを保持し、これらの次段演算判定フラグによって構成した次段演算判定フラグ列Joutを次段終了判定手段22他に出力する。
【0218】
実施の形態8の軟出力復号器8の動作について以下に説明する。上記実施の形態2と同様の動作については説明を割愛する。
【0219】
2回目以降の軟判定復号においては、例えば、データ列の第1の場所から第(k−1)の場所までの事前演算判定フラグがいずれも0であり、第kの場所の事前演算判定フラグが1であるときに、第kの場所のステートメトリックスを演算せずに、前回の軟判定復号時に求められた第kの場所のステートメトリックスを次の第(k+1)の場所のステートメトリックスの演算に用いることにより、第1の場所から第kの場所までの演算(ステートメトリックス演算、軟判定演算、および次段演算判定)と並列に、第(k+1)の場所以降についての演算をすることが可能である。
【0220】
そこで、この実施の形態8の軟出力復号器8では、事前演算判定フラグが1である場所でデータ列を分割し、分割したそれぞれの区間をそれぞれの演算群10に割り振って並列に演算ができるようにしている。ただし、それぞれの演算群10の順方向再帰ステートメトリックス値RAM17fおよび逆方向再帰ステートメトリックス値RAM17rの内容は、軟判定復号ごとに最新のデータに更新されるものとする。
【0221】
まず、初回の軟判定復号においては、事前演算判定フラグ列Jinの全ての事前演算判定フラグが0であるので、例えば、第1の演算群10aで全ての場所についてのステートメトリックスを演算し、第2の演算群10bおよび第3の演算群10cは動作させない。なお、初回の軟判定復においての第1の演算群10aの順方向再帰ステートメトリックス値RAM17fおよび逆方向再帰ステートメトリックス値RAM17rの内容は、第2の演算群10bおよび第3の演算群10cの順方向再帰ステートメトリックス値RAM17fおよび逆方向再帰ステートメトリックス値RAM17rにコピーしておく。
【0222】
第1の演算群10aの軟判定演算手段18から出力された全ての場所の軟判定データは、軟判定値RAM23に保持され、軟判定値RAM23から軟判定データ列Loutとして出力される。
【0223】
また、第1の演算群10aの次段演算演算手段21から出力された全ての場所の次段演算判定フラグは、次段演算判定フラグRAM24に保持され、次段演算判定フラグRAM24から次段演算判定フラグJoutとして出力される。
【0224】
次に、2回目以降の軟判定復号において、データ列の全ての場所について事前演算判定フラグが0(事前演算判定フラグ列Jinを構成する全ての事前演算判定フラグが0)であれば、初回の軟判定復号と同じ動作となる。
【0225】
また、2回目以降の軟判定復号において、いずれかの場所について事前演算判定フラグが1(事前演算判定フラグ列Jinを構成するいずれかの事前演算判定フラグが1)であれば、以下のようにして並列演算をする。
【0226】
例えば、第kおよび第kの場所の事前演算判定フラグのみが1であったときには、第1の場所から第kの場所までの順方向再帰ステートメトリックスおよび第のkの場所から第1の場所までの逆方向再帰ステートメトリックスを、第1の演算群10aで演算し、第(k+1)の場所から第kの場所までの順方向再帰ステートメトリックスおよび第kの場所から第(k+1)の場所までの逆方向再帰ステートメトリックスを、第2の演算群10bで第1の演算群10aと並列に演算し、第(k+1)の場所から第nの場所までの順方向再帰ステートメトリックスおよび第nの場所から第(k+1)の場所までの逆方向再帰ステートメトリックスを、第3の演算群10cで第1の演算群10aおよび第2の演算群10bと並列に演算する。
【0227】
また、例えば、第k,第k,第kの場所の事前演算判定フラグのみが1であったときには、第1の場所から第kの場所までの順方向再帰ステートメトリックスおよび第kの場所から第1の場所までの逆方向再帰ステートメトリックスについては、演算群10a,10b,10cで上記のように演算し、第(k+1)の場所から第nの場所までの順方向再帰ステートメトリックスおよび第nの場所から第(k+1)の場所までの逆方向再帰ステートメトリックスについては、演算群10a,10b,10cの内、最初に演算を終了した演算群で演算する。
【0228】
また、例えば、第kの場所の事前演算判定フラグのみが1であったときには、第1の場所から第kの場所までについては、第1の演算群10aで演算し、第(k+1)の場所から第nの場所までについては、第2の演算群10bで第1の演算群10aと並列に演算し、第3の演算群10cは動作させない。
【0229】
演算群10a,10b,10cの3つの軟判定演算手段18から出力された軟判定データはいずれも軟判定値RAM23に書き込まれ、演算群10a,10b,10cの3つの次段演算判定手段21から出力された次段演算判定フラグはいずれも次段演算判定フラグRAM24に書き込まれる。
【0230】
従って、演算群10a,10b,10cにおいて全ての場所についての演算が終了したときには、軟判定値RAM23には全ての場所の軟判定データが書き込まれており、次段終了判定フラグRAM24には全ての場所の次段終了判定フラグが書き込まれていることになる。
【0231】
軟判定値RAM23は、上記全ての場所の軟判定データを軟判定データ列Loutとして差分演算手段19他に出力し、次段終了判定フラグRAM24は、上記全ての場所の次段終了判定フラグを次段終了判定フラグ列Joutとして次段終了判定手段22他に出力する。
【0232】
以上のように実施の形態8によれば、上記実施の形態2と同様の効果が得られる。さらに、演算群を複数設けることにより、並列演算が可能になるので、高速に演算ができ、演算時間を短縮することができる。
【0233】
なお、上記実施の形態8において、2つの演算群を設けた構成とすることも可能であるし、4つ以上の演算群を設けた構成とすることも可能である。
【0234】
また、上記実施の形態8は、上記実施の形態2において、演算群を複数設けたものであるが、上記実施の形態1または3などにおいて、演算群を複数設けた構成とすることも可能である。上記実施の形態1に適用する場合には、それぞれの演算群を、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16fと、逆方向再帰ステートメトリックス演算手段16r、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18とによって構成する。また、上記実施の形態3に適用する場合には、それぞれの演算群を、ブランチメトリックス値RAM13と、演算判定フラグRAM15と、順方向再帰ステートメトリックス演算手段16Cfと、逆方向再帰ステートメトリックス演算手段16Crと、順方向再帰ステートメトリックス値RAM17fと、逆方向再帰ステートメトリックス値RAM17rと、軟判定演算手段18と、次段演算判定手段21とによって構成する。
【0235】
また、上記実施の形態1から8までにおいては、説明を判りやすくするために主にハードウェアによる構成および動作を説明したが、それぞれの実施の形態の軟出力復号器を、CPUまたはDSPなどのソフトウェアによって実現すること、あるいはハードウェアとソフトウェアの組合せによって実現することも可能である。
【0236】
【発明の効果】
以上説明したように本発明の軟出力復号器によれば、ターボ復号装置においての全体の処理時間および消費電力を低減できるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の形態1の軟出力復号器を設けたターボ復号装置のブロック構成図である。
【図2】本発明の実施の形態1の軟出力復号器のブロック構成図である。
【図3】本発明の実施の形態1の軟出力復号器においてのステートメトリックス演算手段の構成図である。
【図4】本発明の実施の形態1の軟出力復号器においての演算判定手段の構成図である。
【図5】本発明の実施の形態1の軟出力復号器においての終了判定手段の構成図である。
【図6】本発明の実施の形態2の軟出力復号器を設けたターボ復号装置のブロック構成図である。
【図7】本発明の実施の形態2の軟出力復号器のブロック構成図である。
【図8】本発明の実施の形態2の軟出力復号器においての次段演算判定手段の構成図である。
【図9】本発明の実施の形態3の軟出力復号器を設けたターボ復号装置のブロック構成図である。
【図10】本発明の実施の形態3の軟出力復号器のブロック構成図である。
【図11】本発明の実施の形態4の軟出力復号器のブロック構成図である。
【図12】本発明の実施の形態4の軟出力復号器においてのステートメトリックス演算手段の構成図である。
【図13】本発明の実施の形態5の軟出力復号器のブロック構成図である。
【図14】本発明の実施の形態5の軟出力復号器においてのステートメトリックス演算手段の構成図である。
【図15】本発明の実施の形態6の軟出力復号器のブロック構成図である。
【図16】本発明の実施の形態6の軟出力復号器においての次段演算判定手段の構成図である。
【図17】本発明の実施の形態7の軟出力復号器のブロック構成図である。
【図18】本発明の実施の形態8の軟出力復号器のブロック構成図である。
【図19】ターボ符号通信システムの構成図およびそれを構成するターボ符号装置の構成図である。
【図20】ターボ符号装置においての再帰的組織畳込み符号化器の構成である。
【図21】従来のターボ復号装置のブロック構成図である。
【図22】ターボ符号通信システムにおいての送受信データ列のデータ配列を説明する図である。
【図23】軟出力復号器においての演算アルゴリズムを説明するフローチャートである。
【図24】従来の軟出力復号器のブロック構成図である。
【符号の説明】
1,2,3,4、5,6,7,8 軟出力復号器、 1a,2a,3a 第1の軟出力復号器、 1b,2b,3b 第2の軟出力復号器、 10a 第1の演算群、 10b 第2の演算群、 10c 第3の演算群、 11,11B,11C,11G ブランチメトリックス演算手段、 12 情報尤度値RAM、13 ブランチメトリックス値RAM、 14 演算判定手段、 15 演算判定フラグRAM、 16,16D,16E ステートメトリックス演算手段、16f,16Cf,16Df,16Ef,16Gf 順方向再帰ステートメトリックス演算手段、 16r,16Cf,16Dr,16Er,16Gr 逆方向再帰ステートメトリックス演算手段、 17f 順方向再帰ステートメトリックス値RAM、 17r 逆方向再帰ステートメトリックス値RAM、 18 軟判定演算手段、 19,19C,19G 差分演算手段、 20 終了判定手段、 21,21F,21G 次段演算判定手段、 22 次段終了判定手段、23 軟判定値RAM、 24 次段演算判定フラグRAM、 25 ステートメトリックス演算器、 26 選択器、 27 レジスタ、 28a,28b,28c,28d レジスタ、 29 最大値検出器、 30,30E ステートメトリックス生成器、 31a,31b,31c,31d レジスタ、 32,33 比較器、 35 比較器、 36 軟判定演算器、 37 絶対値演算器、 38 比較器、 39 軟判定演算器、 40 加算器、 41 論理積回路、 42 レジスタ、 51,52 インターリーバ、 53,54 デインターリーバ、 55 選択器、 56 硬判定器、 91f 他方の軟出力復号器の順方向再帰ステートメトリックス値RAM、 91r 他方の軟出力復号器の逆方向再帰ステートメトリックス値RAM、 100 ターボ符号装置、 101 再帰的畳込み符号器、 101a 第1の再帰的畳込み符号器、 101a 第2の再帰的畳込み符号器、 111,112,113 レジスタ、 114,115,116,117 排他的論理和回路、 200 変調器、 300 通信路、 400 復調器、 500 ターボ復号装置。

Claims (3)

  1. 受信データを復号する復号装置を構成して、前記受信データを軟判定復号する軟出力復号器であって
    報尤度に基づいて、ブランチメトリックス演算及びステートマトリックス演算のメトリックス演算を行うか否かを判定する演算判定手段と、
    前記演算判定手段の判定結果に応じて、前記受信データと前記情報尤度とに基づく前記ブランチメトリックス演算を行うか否かが制御されるブランチメトリックス演算手段と、
    前記メトリックス演算を行わない場合に、前回の軟判定復号時において最も存在確率が高かったステートを検出する検出器と、前記メトリックス演算を行わない場合に、前記検出器の検出結果に応じて、ステートメトリックスのとり得る値の最大値若しくはステートメトリックスのとり得る最小値を選択し出力するステートメトリックス生成器とを有し、前記メトリックス演算を行うことを示す前記判定結果に応じて、前記ブランチメトリックス演算手段の演算結果に基づく前記ステートメトリックス演算を行うステートメトリックス演算手段と、
    前記ブランチメトリックス演算手段の前記演算結果と前記ステートメトリックス演算手段の演算結果とに基づいて軟判定演算を行う軟判定演算手段とを有することを特徴とする軟出力復号器。
  2. 前記ステートメトリックス生成器は、前記メトリックス演算を行わない前記受信データのステートが前回の軟判定復号時において最も存在確率が高かったステートである場合に前記最大値を選択し、前記メトリックス演算を行わない前記受信データのステートが前回の軟判定復号時において最も存在確率が高かったステートでない場合に前記最小値を選択することを特徴とする請求項1記載の軟出力復号器。
  3. 受信データを復号し、複数の軟出力復号器を備えた復号装置を構成し、前記受信データを軟判定復号する軟出力復号器であって、
    情報尤度に基づいて、ブランチメトリックス演算及びステートメトリックス演算のメトリックス演算を行うか否かを判定する演算判定手段と、
    前記演算判定手段の判定結果に応じて、前記受信データと前記情報尤度とに基づく前記ブランチメトリックス演算を行うか否かが制御されるブランチメトリックス演算手段と、
    前記メトリックス演算を行わない場合に、前回の軟判定復号時に求められた前記ステートメトリックス演算結果における前記ステートを比較する第1の比較器と、前記メトリックス演算を行わない場合に、前記第1の比較器の比較結果に応じて、他の軟出力復号器から出力されたステートメトリックス演算結果を比較する第2の比較器と、前記メトリックス演算を行わない場合に、前記第2の比較器の比較結果に応じて、前記他の軟出力復号器から出力された前記ステートメトリックス演算結果を出力するステートメトリックス生成器とを有し、前記メトリックス演算を行うことを示す前記判定結果に応じて、前記ブランチメトリックス演算手段の演算結果に基づく前記ステートメトリックス演算を行うステートメトリックス演算手段と、
    前記ブランチメトリックス演算手段の前記演算結果と前記ステートメトリックス演算手段の演算結果とに基づいて軟判定演算を行う軟判定演算手段とを有することを特徴とする軟出力復号器。
JP2002125494A 2002-04-26 2002-04-26 軟出力復号器 Expired - Fee Related JP3549519B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002125494A JP3549519B2 (ja) 2002-04-26 2002-04-26 軟出力復号器
US10/420,002 US20040032347A1 (en) 2002-04-26 2003-04-22 Soft-output decoder with computation decision unit
US10/852,654 US6879267B2 (en) 2002-04-26 2004-05-25 Soft-output decoder with computation decision unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002125494A JP3549519B2 (ja) 2002-04-26 2002-04-26 軟出力復号器

Publications (2)

Publication Number Publication Date
JP2003318746A JP2003318746A (ja) 2003-11-07
JP3549519B2 true JP3549519B2 (ja) 2004-08-04

Family

ID=29540195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002125494A Expired - Fee Related JP3549519B2 (ja) 2002-04-26 2002-04-26 軟出力復号器

Country Status (2)

Country Link
US (2) US20040032347A1 (ja)
JP (1) JP3549519B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961921B2 (en) * 2001-09-06 2005-11-01 Interdigital Technology Corporation Pipeline architecture for maximum a posteriori (MAP) decoders
US20040015676A1 (en) * 2002-07-17 2004-01-22 Pierre-Yvan Liardet Sharing of a logic operator having a work register
JP4713487B2 (ja) * 2003-10-24 2011-06-29 タイコ エレクトロニクス サブシー コミュニケーションズ エルエルシー 軟判定誤り訂正システムにおける軟判定閾値を調整するためのシステムおよび方法
JP2006115145A (ja) * 2004-10-14 2006-04-27 Nec Electronics Corp 復号装置及び復号方法
US7865148B2 (en) * 2005-04-04 2011-01-04 Research In Motion Limited System and method for encoding and decoding information signals using a priori information
JP4619926B2 (ja) * 2005-10-28 2011-01-26 Kddi株式会社 復号化装置
JP2006280010A (ja) * 2006-07-13 2006-10-12 Nec Electronics Corp 復号装置及び復号方法
US8165224B2 (en) 2007-03-22 2012-04-24 Research In Motion Limited Device and method for improved lost frame concealment
EP2178001A1 (en) * 2007-07-12 2010-04-21 Fujitsu Limited Calculation device, calculation method and calculation program
US8171384B2 (en) * 2008-06-27 2012-05-01 Freescale Semiconductor, Inc. Device having turbo decoding capabilities and a method for turbo decoding
JP5535219B2 (ja) * 2008-09-30 2014-07-02 エルエスアイ コーポレーション 基準セルを使用する、メモリ・デバイスの軟データ生成の方法および装置
US8429475B2 (en) * 2009-02-27 2013-04-23 Research In Motion Limited State dependent advanced receiver processing in a wireless mobile device
RU2009116361A (ru) * 2009-04-30 2010-11-10 ЭлЭсАй Корпорейшн (US) Декодер кодов рида-соломона с мягким решением на основе декодера кодов рида-соломона с исправлением ошибок и стираний
WO2011006051A1 (en) * 2009-07-09 2011-01-13 Georgia Tech Research Corporation Systems and methods for providing physical layer security
US8929488B2 (en) * 2010-05-06 2015-01-06 Telefonaktiebolaget L M Ericsson (Publ) Technique for processing encoded information in a wireless communication network
US9292377B2 (en) 2011-01-04 2016-03-22 Seagate Technology Llc Detection and decoding in flash memories using correlation of neighboring bits and probability based reliability values
US9502117B2 (en) 2011-03-14 2016-11-22 Seagate Technology Llc Cell-level statistics collection for detection and decoding in flash memories
KR101923701B1 (ko) * 2011-12-14 2018-11-30 한국전자통신연구원 무선 통신 시스템에서의 반복적 검출 및 복호 방법 및 이의 장치
US10344567B2 (en) 2014-06-23 2019-07-09 Rockwell Automation Asia Pacific Business Center Pte. Ltd. Systems and methods for cloud-based automatic configuration of remote terminal units
KR102467072B1 (ko) 2017-10-26 2022-11-11 삼성전자주식회사 반복 연산 과정을 이용하여 디코딩을 수행하는 디코더 및 이를 이용한 스토리지 장치
JP2021149769A (ja) * 2020-03-23 2021-09-27 キオクシア株式会社 メモリシステムおよびシフトレジスタ型メモリ

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5706313A (en) * 1994-11-01 1998-01-06 Motorola, Inc. Soft decision digital communication method and apparatus
US5721745A (en) * 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor
US5721746A (en) * 1996-04-19 1998-02-24 General Electric Company Optimal soft-output decoder for tail-biting trellis codes
US6377610B1 (en) * 1997-04-25 2002-04-23 Deutsche Telekom Ag Decoding method and decoding device for a CDMA transmission system for demodulating a received signal available in serial code concatenation
FR2756996A1 (fr) * 1996-12-10 1998-06-12 Philips Electronics Nv Systeme et procede de transmission numerique comportant un code produit combine a une modulation multidimensionnelle
US5970098A (en) * 1997-05-02 1999-10-19 Globespan Technologies, Inc. Multilevel encoder
US5887035A (en) * 1997-10-31 1999-03-23 Ericsson, Inc. Method for joint equalization and detection of multiple user signals
US6665357B1 (en) 1999-01-22 2003-12-16 Sharp Laboratories Of America, Inc. Soft-output turbo code decoder and optimized decoding method
EP1083752A1 (en) * 1999-09-08 2001-03-14 STMicroelectronics S.r.l. Video decoder with reduced memory
US6634007B1 (en) * 1999-11-08 2003-10-14 Codevector Technology Algebraic soft decoding of reed-solomon codes
US6671852B1 (en) * 2000-09-06 2003-12-30 Motorola, Inc. Syndrome assisted iterative decoder for turbo codes
JP3730885B2 (ja) 2001-07-06 2006-01-05 株式会社日立製作所 誤り訂正ターボ符号の復号器

Also Published As

Publication number Publication date
US20050052293A1 (en) 2005-03-10
JP2003318746A (ja) 2003-11-07
US20040032347A1 (en) 2004-02-19
US6879267B2 (en) 2005-04-12

Similar Documents

Publication Publication Date Title
JP3549519B2 (ja) 軟出力復号器
US5537444A (en) Extended list output and soft symbol output viterbi algorithms
US6477680B2 (en) Area-efficient convolutional decoder
KR100350502B1 (ko) 이동통신시스템의 구성 복호기 및 방법
US6757865B1 (en) Turbo-code error correcting decoder, turbo-code error correction decoding method, turbo-code decoding apparatus, and turbo-code decoding system
CN100517984C (zh) 用于移动通信系统的维特比/涡轮联合译码器
EP0800280A1 (en) Soft decision viterbi decoding in two passes with reliability information derived from a path-metrics difference
US6563890B2 (en) Maximum a posteriori probability decoding method and apparatus
KR100779782B1 (ko) 비터비 디코더 용 고속 acs 유닛
JPH07221655A (ja) 通信システムおよび情報処理方法
US20130007568A1 (en) Error correcting code decoding device, error correcting code decoding method and error correcting code decoding program
KR100390416B1 (ko) 터보 디코딩 방법
JP2004511162A (ja) チャネルコード化のためのシステム及び方法
US7178090B2 (en) Error correction code decoding device
EP1322041A1 (en) Viterbi decoder using restructured trellis
JP4049620B2 (ja) ビットシーケンスを復号するための方法および装置
US20050138535A1 (en) Method and system for branch metric calculation in a viterbi decoder
KR101134806B1 (ko) 부호 복호 방법
CN116073952B (zh) 一种基于MaPU架构的快速并行卷积编译码方法、系统、设备及介质
US6904105B1 (en) Method and implemention of a traceback-free parallel viterbi decoder
US20030058969A1 (en) Turbo decoding method and apparatus for wireless communications
JP4295871B2 (ja) 誤り訂正復号器
KR100531840B1 (ko) 비터비 디코더의 가지 메트릭 계산 방법 및 그 회로
US20110202819A1 (en) Configurable Error Correction Encoding and Decoding
JP3632206B2 (ja) ターボ復号器及びターボ復号方法

Legal Events

Date Code Title Description
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: 20040420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040420

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080430

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090430

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090430

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100430

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20100430

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110430

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120430

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees