JP4295871B2 - Error correction decoder - Google Patents

Error correction decoder Download PDF

Info

Publication number
JP4295871B2
JP4295871B2 JP27125599A JP27125599A JP4295871B2 JP 4295871 B2 JP4295871 B2 JP 4295871B2 JP 27125599 A JP27125599 A JP 27125599A JP 27125599 A JP27125599 A JP 27125599A JP 4295871 B2 JP4295871 B2 JP 4295871B2
Authority
JP
Japan
Prior art keywords
received
error correction
trace
path
processing
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
JP27125599A
Other languages
Japanese (ja)
Other versions
JP2001094440A (en
Inventor
克也 農人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP27125599A priority Critical patent/JP4295871B2/en
Publication of JP2001094440A publication Critical patent/JP2001094440A/en
Application granted granted Critical
Publication of JP4295871B2 publication Critical patent/JP4295871B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は誤り訂正復号器に関するものである。
【0002】
【従来の技術】
所定の情報源から発生された情報系列を誤りのある伝送路を介して送信する場合には、冗長度を付加することにより符号化して送信することが一般に行なわれている。符号化には情報系列を一定長のブロックに分割し、各ブロックの符号化を他のブロックの符号化とは独立して行うブロック符号化と、ある情報ブロックの符号化にそれ以前の情報ブロックが関与する木符号化とがある。
【0003】
前記木符号化において、任意の時点tにおける符号器の状態σtを考慮して行う符号化はトレリス符号化と呼ばれ、トレリス符号化により得られる符号系列の遷移状態はトレリス線図で表わせることが知られている。また、線形なトレリス符号は畳み込み符号と呼ばれている。
【0004】
ところで、畳み込み符号化された符号系列を復号する際の開始点を復号側で知るために、トレリス符号化時にトレリス符号を終端する処理が行なわれる。このトレリス終端処理は、符号器の状態を全零状態にリセットする処理であり、非再帰符号であれば、テールビットとして、0を符号器内のシフトレジスタの数だけ情報ビットに付け加えることによりトレリス終端を行うことができる。
【0005】
しかし、再帰符号の場合には、このようなテールビットを単に付け加えるだけではトレリス終端処理を行うことができず、以下に述べるように複雑な機構を用いなければならない。また、2つの再帰符号器を連結した構成としてターボコーダが知られているが、このようなターボコーダにおいては、2つの符号器の状態を零にする必要があるので、トレリス終端処理がさらに複雑になってしまう。
【0006】
図7は前記したターボコーダの構成を示す図であり、第1の符号器10Aと第2の符号器10Bとがインターリーブ処理部11を介して接続された構成になっている。第1の符号器10Aはスイッチ12Aと、加算器13A、16Aと、シフトレジスタで構成される遅延器(D)14A、15Aとからなる。第2の符号器10Bも第1の符号器10Aと同様に、スイッチ12Bと、加算器13B、16Bと、遅延器(D)14B、15Bとから構成される。
【0007】
第1の符号器10Aに入力された情報系列を構成する情報ビットIをパリティビットを付加して符号化する場合にはスイッチ12Aは閉じられるが、情報ビットIの符号化が終了したときにはスイッチ12Aが開放されてシフトレジスタの数だけテールビットY1、Y2が送信される。
【0008】
また、情報ビットIはインタリーブ処理部11にも入力されて所定の規則に基づいてデータの並び替えが行なわれた後、第2の符号器10Bに入力されて第1の符号器10Aと同様の処理が行なわれる。
【0009】
しかし、このような構成を用いた場合には、テールビットを求めるためにスイッチ12A、12Bを所定のタイミングで切り換える処理が必要であり、また、図からわかるように、符号化された情報ビットとテールビットとは異なる出力位置から出力されるので、これら2つのビットを結合する回路が新たに必要となり、符号器の構成が複雑になってしまう。
【0010】
また、ターボコーダのトレリス終端処理を行わないで、テールビットとして既知の情報ビットを付加することで、終端処理を行わない場合の性能劣化を防止する方法も知られている。しかし、この場合には十分長いテールビットを付加することが必要であり、結果的に符号化率が低下してしまうという欠点がある。
【0011】
【発明が解決しようとする課題】
以上のように、ターボコーダに用いられる再帰符号のトレリス終端処理を行う場合には、符号器の構成が複雑になったり、トレリス終端処理を回避しようとすると十分長いテールビットが必要になって符号化率が低下してしまうという問題があった。
【0012】
本発明はこのような課題に着目してなされたものであり、その目的とするところは、テールビットを付加する処理を不要にして符号器の構成を簡単にするとともに、符号化率の低下を防止することができる誤り訂正復号器を提供することにある。
【0013】
【課題を解決するための手段】
上記の目的を達成するために、第1の発明に係る誤り訂正復号器は、組織畳み込み符号化して得られた符号系列を、誤りを有する伝送路を介して受信した受信系列に対して誤り訂正を行う誤り訂正復号器において、受信した受信信号から過去の時点に溯って処理を行って生き残りパスを求める加算比較選択手段と、この加算比較選択手段により求められた前記生き残りパスについてのデータを受信した信号から過去に受信した信号の順にアドレスに対応付けて保存するための保存手段と、この保存手段に保存された前記生き残りパスについて、最も過去に受信した信号のアドレスを開始点として受信系列の順にトレース処理を行うトレース手段とを具備する。
【0014】
また、第2の発明に係る誤り訂正復号器は、第1の発明において、前記保存手段には所定長の時間に対応するデータが保存され、この保存された所定時間分のデータごとに前記トレース手段によるトレース処理を繰り返し行って受信系列全体に対する誤り訂正を行う。
【0015】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を詳細に説明する。図1は本発明の誤り訂正復号器を適用したターボデコーダの構成を示す図である。図1に示すようにターボデコーダでは、誤り訂正能力を高めるために2つの軟入力軟出力復号器を有している。第1の軟入力軟出力復号器305は、組織畳み込み符号化して得られた符号系列を、誤りを有する伝送路を介して受信した受信系列の情報ビットIを格納するためのメモリ301Aと、受信系列の第1のパリティビットY1を格納するためのメモリ301Bと、外部情報尤度を格納するためのメモリ310の出力を軟入力として受信して復号処理を行い軟判定結果を加算器309に出力する。加算器309はメモリ301Aの出力と、軟入力軟出力復号器305の出力と、インタリーバにより並び替えられた信号を元の配置に戻す処理を行うデインタリーバ304の出力とを入力として加算演算を行ってその結果を信号の並び替えを行うインタリーバ303Bに出力する。
【0016】
また、第2の軟入力軟出力復号器306は、メモリ301Aの出力をインタリーバ303Aにて並べ替えた信号と、加算器309の出力をインタリーバ303Bにて並び替えた信号と、受信系列の第2のパリティビットY2を格納するためのメモリ301Cの出力を軟入力として受信して復号処理を行い軟判定結果を加算器307に出力する。加算器307は、第2の軟入力軟出力復号器306の出力と、メモリ301Aの出力をインタリーバ303Aにて並べ替えた信号と、加算器309の出力をインタリーバ303Bにて並び替えた信号とを入力として加算演算を行ってその結果をデインタリーバ304に出力する。さらに、硬判定出力部308は第2の軟入力軟出力復号器306の軟判定出力(多値データ)を対応する硬判定出力(2値データ)に変換して出力するものである。
【0017】
図2は、上記した第1の軟入力軟出力復号器305及び第2の軟入力軟出力復号器306の構成を示す図である。図2において、ACS(Add Compare Select)・パスメトリック差分演算部401の第1の出力は保存手段としてのパスメモリ402に、第2の出力はML(Most Likelihood)パストレース・硬判定部403に、第3の出力は競合パストレース・軟出力計算部404に接続されている。また、パスメモリ402は競合パストレース・軟出力計算部404に直接かつML(Most Likelihood)パストレース・硬判定部403を介して接続されている。
【0018】
ACS(Add Compare Select)・パスメトリック差分演算部401では、トレリス線図におけるすべてのブランチ(枝)について求められたブランチメトリックを累積加算してパスメトリックを計算し、各パスのパスメトリックを比較して最大の尤度を与えるパスメトリックを生き残りパスとして選択する。各状態に流入した2つのパスのパスメトリックの差分Δを計算することですべての生き残りパスについてパスメトリックの差分を求める。
【0019】
ただしここでのACS処理は、SOVA(Soft Output Viterbi Algorithm)を用いて図3に示すように受信系列とは逆の順番でデータを入力してACS処理を行うようにしている。すなわち、図3の→で示すように、最も最近の時点tで受信した受信信号から、時点t−1、t−2、…へと過去の時点に溯ってACS処理を行って生き残りパスを求めている。また、この結果、パスメモリ402には、ACS処理により得られた生き残りパスが最も最近受信した信号から過去に受信した信号の順にアドレスに対応付けて保存される。
【0020】
次にトレース手段としてのMLパストレース・硬判定部403及び競合パストレース・軟出力計算部404では、パスメモリ403に保存されている生き残りパスに基づいて、最も過去に受信した信号のアドレスを開始点として受信系列の順にトレース処理を実行する。ここで、従来のトレース処理はトレースバックと呼ばれており、受信系列とは逆の順、すなわち最も最近受信したデータを開始点として過去の受信信号へとトレース処理を行っていた。しかし、本実施形態では図4のトレリス線図の→で示すように、最も過去に受信した信号から時点0,1,2,3,〜t−1,tへと受信系列の順にトレース処理を実行することを特徴とする。ここでトレース処理を開始する状態はS0から行うようにしている。これは符号器の初期状態が0であるので、トレース処理を状態S0から行うとその信頼性が向上するからである。
【0021】
また、本実施形態の誤り訂正復号器はターボデコーダにより構成されておりインタリーブ処理を行うために受信系列をパスメモリ402に記憶しておく必要がある。一方、このようにして受信系列を記憶しているために、トレース処理を開始するためのアドレス位置(状態S0)を容易に検索することができる。さらに、トレース処理は受信したデータの終わりまで行えば良いので、受信系列に従来のようなトレリス終端のテールビットが付加されているかどうかとは無関係に本実施形態を適用することができる。
【0022】
また、実際には、パスメモリ402には窓と呼ばれる所定長の時間に対応するデータが保存され、この保存された所定時間分のデータごとにトレース手段によりトレース処理を繰り返し行うことで受信系列全体に対する誤り訂正を行うようにしている。
【0023】
さらに、トレース処理の最終状態(S3)はトレース長を十分長くとることにより信頼性を上げることができる。
【0024】
以下に図5を参照して本実施形態のトレース処理について詳細に説明する。トレース処理部705において、MLパストレース処理によりパスメモリ402内のMLパス701が選択され、競合パストレース処理により競合パス702が選択される。次に選択されたMLパス701と競合パス702とを比較して異なるデコード結果を与えるトレリス遷移の位置について軟出力計算を行う軟出力計算部703に通知する。軟出力計算部703ではMLパス701と競合パス702の異なるビット位置に関して、ACS・パスメトリック演算部401からのパスメトリックの差分と現在保存されている値とを比較し、小さいほうを選択して保存する。軟出力計算部704の出力とMLパス701によりデコードされた符号とが乗算器704により乗算されて軟判定出力(多値データ)として出力される。
【0025】
図6は上記した本実施形態のターボデコーダに対応するターボコーダの構成を示す図である。図6からわかるように、上記した復号方法を用いることによりテールビットを付加する必要がなくなるので、テールビット付加時の切り換え処理を行うスイッチや、情報ビットとテールビットを結合する回路等が不要となり、ターボコーダの構成が簡略化される。また、ターボコーダの初期値は全零となっている。
【0026】
上記したように、ターボデコーダにおいて、ACS処理を受信系列の逆順で行い、トレース処理を受信系列の順番にて行うようにしたので、ターボコーダの構成が簡略化され、かつ符号化率を低下させることなしにトレリス符号を終端することができる。
【0027】
【発明の効果】
本発明によれば、誤り訂正復号器における復号処理において、ACS処理を受信系列の逆順で行うとともに、トレース処理を受信系列の順番にて行うようにしたので、符号化時にテールビットを付加する必要がなくなり、これによって符号器の構成が簡略化されるとともに、符号化率を低下させることなしにトレリス符号を終端することができる。
【図面の簡単な説明】
【図1】本発明の誤り訂正復号器を適用したターボデコーダの構成を示す図である。
【図2】図1に示す第1の軟入力軟出力復号器305及び第2の軟入力軟出力復号器306の構成を示す図である。
【図3】本実施形態のACS処理の手順を説明するためのトレリス線図である。
【図4】本実施形態のトレース処理の手順を説明するためのトレリス線図である。
【図5】本実施形態のトレース処理について説明するための図である。
【図6】本実施形態のターボデコーダに対応するターボコーダの構成を示す図である。
【図7】従来のターボコーダの構成を示す図である。
【符号の説明】
301A、301B、301C、
303A、303B…インタリーバ、
304…デインタリーバ、
305、306…軟入力軟出力復号器、
307…加算器、
308…硬判定出力部、
309…加算器、
310…メモリ、
401…ACS・パスメトリック差分演算部、
402…パスメモリ、
403…MLパストレース・硬判定部、
404…競合パストレース・軟出力計算部。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an error correction decoder.
[0002]
[Prior art]
When an information sequence generated from a predetermined information source is transmitted through an erroneous transmission line, it is generally performed by encoding by adding redundancy. For coding, the information sequence is divided into fixed-length blocks, and each block is coded independently of the coding of the other blocks. There is a tree coding that involves.
[0003]
In the tree coding, coding performed in consideration of the encoder state σt at an arbitrary time t is called trellis coding, and the transition state of the code sequence obtained by trellis coding can be represented by a trellis diagram. It has been known. A linear trellis code is called a convolutional code.
[0004]
By the way, processing for terminating the trellis code is performed at the time of trellis encoding so that the decoding side knows the starting point when decoding the convolutionally encoded code sequence. This trellis termination process is a process of resetting the encoder state to the all-zero state. If the code is a non-recursive code, the trellis is added by adding 0 to the information bits as the number of shift registers in the encoder. Termination can be performed.
[0005]
However, in the case of recursive codes, trellis termination processing cannot be performed simply by adding such tail bits, and a complicated mechanism must be used as described below. In addition, a turbo coder is known as a configuration in which two recursive encoders are connected. However, in such a turbo coder, the state of the two encoders needs to be zero, so that trellis termination processing is further complicated. Become.
[0006]
FIG. 7 is a diagram showing the configuration of the turbo coder described above, in which a first encoder 10A and a second encoder 10B are connected via an interleave processing unit 11. The first encoder 10A includes a switch 12A, adders 13A and 16A, and delay units (D) 14A and 15A configured by shift registers. Similarly to the first encoder 10A, the second encoder 10B includes a switch 12B, adders 13B and 16B, and delay units (D) 14B and 15B.
[0007]
When the information bits I constituting the information sequence input to the first encoder 10A are encoded by adding parity bits, the switch 12A is closed, but when the encoding of the information bits I is completed, the switch 12A is closed. Is released and tail bits Y1 and Y2 are transmitted by the number of shift registers.
[0008]
The information bit I is also input to the interleave processing unit 11, and after data is rearranged based on a predetermined rule, it is input to the second encoder 10B and the same as the first encoder 10A. Processing is performed.
[0009]
However, when such a configuration is used, it is necessary to perform processing for switching the switches 12A and 12B at a predetermined timing in order to obtain tail bits. Since it is output from an output position different from that of the tail bit, a new circuit for combining these two bits is required, and the configuration of the encoder becomes complicated.
[0010]
There is also known a method of preventing performance degradation when termination processing is not performed by adding known information bits as tail bits without performing trellis termination processing of the turbo coder. However, in this case, it is necessary to add a sufficiently long tail bit, and as a result, there is a disadvantage that the coding rate is lowered.
[0011]
[Problems to be solved by the invention]
As described above, when performing trellis termination processing of a recursive code used in a turbo coder, the structure of the encoder becomes complicated, or when trying to avoid trellis termination processing, a sufficiently long tail bit is required and the code There was a problem that the conversion rate decreased.
[0012]
The present invention has been made paying attention to such a problem, and the object of the present invention is to simplify the configuration of the encoder by eliminating the processing of adding tail bits and to reduce the coding rate. An object of the present invention is to provide an error correction decoder that can be prevented.
[0013]
[Means for Solving the Problems]
In order to achieve the above object, an error correction decoder according to a first aspect of the present invention corrects a code sequence obtained by systematic convolutional coding with respect to a received sequence received via a transmission path having an error. In the error correction decoder that performs the above, an addition comparison / selection unit that obtains a surviving path by performing processing from the received signal received in the past and receives data on the surviving path obtained by the addition comparison / selection unit Storage means for storing in correspondence with addresses in the order of signals received in the past from the received signal, and for the surviving path stored in the storage means, the address of the received sequence starting from the address of the most recently received signal Trace means for sequentially performing trace processing.
[0014]
According to a second aspect of the present invention, in the error correction decoder according to the first aspect, the storage unit stores data corresponding to a predetermined length of time, and the trace is stored for each of the stored predetermined time data. By repeating the tracing process by means, error correction is performed on the entire received sequence.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram showing a configuration of a turbo decoder to which an error correction decoder according to the present invention is applied. As shown in FIG. 1, the turbo decoder has two soft input / soft output decoders in order to increase error correction capability. The first soft input / soft output decoder 305 includes a memory 301A for storing information bits I of a received sequence received via a transmission path having an error in a code sequence obtained by systematic convolutional coding, and a reception The outputs of the memory 301B for storing the first parity bit Y1 of the sequence and the memory 310 for storing the external information likelihood are received as soft inputs, decoding processing is performed, and the soft decision results are output to the adder 309 To do. The adder 309 performs an addition operation using the output of the memory 301A, the output of the soft input / soft output decoder 305, and the output of the deinterleaver 304 that performs processing for returning the signal rearranged by the interleaver to the original arrangement. The result is output to an interleaver 303B that rearranges the signals.
[0016]
The second soft input / soft output decoder 306 also includes a signal obtained by rearranging the output of the memory 301A by the interleaver 303A, a signal obtained by rearranging the output of the adder 309 by the interleaver 303B, and a second received sequence. The output of the memory 301 </ b> C for storing the parity bit Y <b> 2 is received as a soft input, decoding processing is performed, and the soft decision result is output to the adder 307. The adder 307 outputs the output of the second soft input / soft output decoder 306, the signal obtained by rearranging the output of the memory 301A by the interleaver 303A, and the signal obtained by rearranging the output of the adder 309 by the interleaver 303B. An addition operation is performed as an input, and the result is output to the deinterleaver 304. Further, the hard decision output unit 308 converts the soft decision output (multi-valued data) of the second soft input / soft output decoder 306 into a corresponding hard decision output (binary data) and outputs it.
[0017]
FIG. 2 is a diagram showing the configuration of the first soft input / soft output decoder 305 and the second soft input / soft output decoder 306 described above. In FIG. 2, the first output of an ACS (Add Compare Select) / path metric difference calculation unit 401 is stored in a path memory 402 as a storage unit, and the second output is input in an ML (Most Likelihood) path trace / hard decision unit 403. The third output is connected to the competitive path trace / soft output calculation unit 404. The path memory 402 is directly connected to the competitive path trace / soft output calculation unit 404 via an ML (Most Likelihood) path trace / hard decision unit 403.
[0018]
An ACS (Add Compare Select) / path metric difference calculation unit 401 calculates a path metric by cumulatively adding the branch metrics obtained for all branches in the trellis diagram, and compares the path metrics of the paths. The path metric that gives the maximum likelihood is selected as the surviving path. By calculating the path metric difference Δ between the two paths flowing into each state, the path metric difference is obtained for all surviving paths.
[0019]
However, the ACS processing here is performed by inputting data in the reverse order to the reception sequence as shown in FIG. 3 using SOVA (Soft Output Viterbi Algorithm). That is, as indicated by → in FIG. 3, the ACS processing is performed from the received signal received at the most recent time point t to the time points t-1, t-2,. ing. As a result, the surviving path obtained by the ACS processing is stored in the path memory 402 in association with the address in the order of the signal received in the past from the signal received most recently.
[0020]
Next, the ML path trace / hard decision unit 403 and the competing path trace / soft output calculation unit 404 as the trace means start the address of the signal received most recently based on the surviving path stored in the path memory 403. Trace processing is executed in the order of reception series as points. Here, the conventional trace processing is called “trace back”, and the trace processing is performed on the received signal in the reverse order, that is, the most recently received data as the starting point. However, in the present embodiment, as indicated by → in the trellis diagram of FIG. 4, the trace processing is performed in the order of the reception sequence from the signal received most recently to the time points 0, 1, 2, 3, to t−1, t. It is characterized by performing. Here, the state in which the trace processing is started is performed from S0. This is because the initial state of the encoder is 0, so that the reliability is improved when the trace processing is performed from the state S0.
[0021]
In addition, the error correction decoder of this embodiment is configured by a turbo decoder, and it is necessary to store a received sequence in the path memory 402 in order to perform interleaving processing. On the other hand, since the reception sequence is stored in this way, the address position (state S0) for starting the trace processing can be easily searched. Furthermore, since the trace process may be performed up to the end of the received data, the present embodiment can be applied regardless of whether or not the tail bit at the end of the trellis is added to the received sequence.
[0022]
In practice, data corresponding to a predetermined length of time called a window is stored in the path memory 402, and trace processing is repeatedly performed by the tracing means for each of the stored predetermined time data, whereby the entire received sequence is stored. Error correction is performed.
[0023]
Further, in the final state (S3) of the trace processing, the reliability can be improved by taking a sufficiently long trace length.
[0024]
The trace processing of this embodiment will be described in detail below with reference to FIG. In the trace processing unit 705, the ML path 701 in the path memory 402 is selected by the ML path trace process, and the conflict path 702 is selected by the conflict path trace process. Next, the selected ML path 701 and the contention path 702 are compared and notified to the soft output calculation unit 703 that performs the soft output calculation on the position of the trellis transition that gives different decoding results. The soft output calculation unit 703 compares the path metric difference from the ACS / path metric calculation unit 401 with the currently stored value for the different bit positions of the ML path 701 and the competing path 702, and selects the smaller one. save. The output of the soft output calculation unit 704 and the code decoded by the ML path 701 are multiplied by the multiplier 704 and output as a soft decision output (multi-value data).
[0025]
FIG. 6 is a diagram showing a configuration of a turbo coder corresponding to the turbo decoder of the present embodiment. As can be seen from FIG. 6, since it is not necessary to add tail bits by using the above decoding method, a switch for performing a switching process when adding tail bits, a circuit for combining information bits and tail bits, and the like are not required. The configuration of the turbo coder is simplified. The initial value of the turbo coder is all zero.
[0026]
As described above, in the turbo decoder, ACS processing is performed in the reverse order of the reception sequence and trace processing is performed in the order of the reception sequence, so that the configuration of the turbo coder is simplified and the coding rate is reduced. The trellis code can be terminated without
[0027]
【The invention's effect】
According to the present invention, in the decoding process in the error correction decoder, the ACS process is performed in the reverse order of the reception sequence, and the trace process is performed in the order of the reception sequence. Therefore, it is necessary to add a tail bit at the time of encoding. This simplifies the construction of the encoder and allows the trellis code to be terminated without reducing the coding rate.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a turbo decoder to which an error correction decoder of the present invention is applied.
FIG. 2 is a diagram illustrating a configuration of a first soft input / soft output decoder 305 and a second soft input / soft output decoder 306 illustrated in FIG. 1;
FIG. 3 is a trellis diagram for explaining the procedure of ACS processing according to the present embodiment;
FIG. 4 is a trellis diagram for explaining a procedure of trace processing according to the present embodiment;
FIG. 5 is a diagram for explaining trace processing according to the present embodiment;
FIG. 6 is a diagram showing a configuration of a turbo coder corresponding to the turbo decoder of the present embodiment.
FIG. 7 is a diagram showing a configuration of a conventional turbo coder.
[Explanation of symbols]
301A, 301B, 301C,
303A, 303B ... interleaver,
304: Deinterleaver,
305, 306 ... soft input soft output decoder,
307 ... adder,
308: Hard decision output unit,
309 ... adder,
310 ... memory,
401... ACS / path metric difference calculation unit,
402: Path memory,
403 ... ML path trace / hard decision unit,
404: Competing path trace / soft output calculation unit.

Claims (2)

組織畳み込み符号化して得られた符号系列を、誤りを有する伝送路を介して受信した受信系列に対して誤り訂正を行う誤り訂正復号器において、
受信した受信信号から過去の時点に溯って処理を行って生き残りパスを求める加算比較選択手段と、
この加算比較選択手段により求められた前記生き残りパスについてのデータを受信した信号から過去に受信した信号の順にアドレスに対応付けて保存するための保存手段と、
この保存手段に保存された前記生き残りパスについて、最も過去に受信した信号のアドレスを開始点として受信系列の順にトレース処理を行うトレース手段と、
を具備することを特徴とする誤り訂正復号器。
In an error correction decoder that performs error correction on a received sequence received via a transmission line having an error, a code sequence obtained by systematic convolutional coding,
Addition comparison selection means for obtaining a surviving path by performing processing from the received signal received in the past,
Storage means for storing the data about the surviving path obtained by the addition comparison selection means in association with the addresses in the order of the signals received in the past from the received signals;
With respect to the surviving path stored in the storage unit, a tracing unit that performs a trace process in the order of the reception sequence with the address of the signal received most recently as a starting point;
An error correction decoder comprising:
前記保存手段には所定長の時間に対応するデータが保存され、この保存された所定時間分のデータごとに前記トレース手段によるトレース処理を繰り返し行って受信系列全体に対する誤り訂正を行うようにしたことを特徴とする請求項1記載の誤り訂正復号器。Data corresponding to a predetermined length of time is stored in the storage means, and error correction is performed on the entire received sequence by repeatedly performing the trace processing by the trace means for each data stored for the predetermined time. The error correction decoder according to claim 1.
JP27125599A 1999-09-24 1999-09-24 Error correction decoder Expired - Fee Related JP4295871B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27125599A JP4295871B2 (en) 1999-09-24 1999-09-24 Error correction decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27125599A JP4295871B2 (en) 1999-09-24 1999-09-24 Error correction decoder

Publications (2)

Publication Number Publication Date
JP2001094440A JP2001094440A (en) 2001-04-06
JP4295871B2 true JP4295871B2 (en) 2009-07-15

Family

ID=17497531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27125599A Expired - Fee Related JP4295871B2 (en) 1999-09-24 1999-09-24 Error correction decoder

Country Status (1)

Country Link
JP (1) JP4295871B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5177882B2 (en) * 2008-11-11 2013-04-10 日本電気株式会社 Decoding device, decoding method, and program
US8949703B2 (en) * 2012-03-26 2015-02-03 Xilinx, Inc. Parallel encoding for non-binary linear block code

Also Published As

Publication number Publication date
JP2001094440A (en) 2001-04-06

Similar Documents

Publication Publication Date Title
JP3288683B2 (en) Modified inverse tracking two-stage soft output Viterbi algorithm decoder
JP3604955B2 (en) Convolutional decoding device
JP4432781B2 (en) Error correction decoder
US7765459B2 (en) Viterbi decoder and viterbi decoding method
JP2000196469A (en) Data error correction system
JP2007510337A (en) Viterbi / Turbo integrated decoder for mobile communication systems
US7234100B1 (en) Decoder for trellis-based channel encoding
KR100390416B1 (en) Method for decoding Turbo
US8055986B2 (en) Viterbi decoder and method thereof
JP3271663B2 (en) Viterbi decoding device
US8489972B2 (en) Decoding method and decoding device
JP3823731B2 (en) Error correction decoder
JP4295871B2 (en) Error correction decoder
US20050172203A1 (en) Decoder and method for performing decoding operation using map algorithm in mobile communication system
KR100262303B1 (en) Survivor path trace back method in decoding with viterbi algorithm and apparatus thereof
US20050138535A1 (en) Method and system for branch metric calculation in a viterbi decoder
JP5370487B2 (en) Decoding method and decoding apparatus
KR20010113792A (en) Method and apparatus for decoding recursive convolutional symbols
JPH10200419A (en) Viterbi decoding method and device therefor
JPH05335973A (en) Viterbi decoder and decoder for convolution code
JP3351414B2 (en) Viterbi decoding device
KR100726170B1 (en) Apparatus and method for viterbi decoding
KR100333336B1 (en) Traceback method of viterbi decoder
JP2005102274A (en) Error correction decoder
JPH04329026A (en) Viterbi decoder

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060919

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090413

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130417

Year of fee payment: 4

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees