JP2006217072A - Turbo decoder and turbo decoding method - Google Patents

Turbo decoder and turbo decoding method Download PDF

Info

Publication number
JP2006217072A
JP2006217072A JP2005025523A JP2005025523A JP2006217072A JP 2006217072 A JP2006217072 A JP 2006217072A JP 2005025523 A JP2005025523 A JP 2005025523A JP 2005025523 A JP2005025523 A JP 2005025523A JP 2006217072 A JP2006217072 A JP 2006217072A
Authority
JP
Japan
Prior art keywords
probability
state probability
calculation
window
backward
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.)
Pending
Application number
JP2005025523A
Other languages
Japanese (ja)
Inventor
Ryutaro Hata
龍太郎 端
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005025523A priority Critical patent/JP2006217072A/en
Publication of JP2006217072A publication Critical patent/JP2006217072A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To configure a turbo decoder in which a data stream subjected to error correction coding by a turbo code is decoded by a MAP decoding at a high speed, with a single port memory while suppressing an increase in memory capacity. <P>SOLUTION: A data range in which window processing consisting of calculations of forward probability per window range and calculation of a backward probability per window range is repeated at predetermined times is equally divided into two. In one data range, a second state probability calculation means 104 calculates the backward probability first, and then, a first state probability calculating means 103 calculates the forward probability. In the other data range, a third state probability calculating means 105 calculates the forward probability first, and then, a fourth state probability calculating means 106 calculates the backward probability. A memory selecting means 109 switches a state probability for reading and writing between two state probability storage means 107 and 108 for each window processing. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いた最大事後確率復号法が適用されるターボ復号装置及びターボ復号方法に関する。   The present invention relates to a turbo decoding device and a turbo decoding method to which a maximum a posteriori probability decoding method using a sliding window algorithm is applied to error correction decoding for a data sequence that has been error correction encoded by a turbo code.

ターボ符号は、シャノンが提示した誤り制御符号の訂正能力の理論限界値に近接し、かつ現実的な処理量で実現することのできる符号として、近年、多くの分野で利用されてきている。例えば、第3世代移動通信では、標準符号化の1つとして用いられている。   The turbo code has been used in many fields in recent years as a code that is close to the theoretical limit value of the correction capability of the error control code presented by Shannon and can be realized with a realistic processing amount. For example, in the third generation mobile communication, it is used as one of standard encodings.

ターボ符号器は、複数の要素符号器を交錯器(インターリーバ)を介して並列に使用することで構成される。復号時には、複数の要素復号器が各要素符号器に対応して軟判定復号を行い、相互に外部値である復号情報を交換し合って誤り訂正能力を向上させている。また、符号化後のデータ長を制御するために、各要素符号器出力の冗長データを定期的に削除するパンクチャリング処理を実施することで、符号化率を変える方法が採られている。   The turbo encoder is configured by using a plurality of element encoders in parallel via an interleaver (interleaver). At the time of decoding, a plurality of element decoders perform soft decision decoding corresponding to each element encoder, and mutually exchange decoding information which is an external value to improve error correction capability. In addition, in order to control the data length after encoding, a method of changing the encoding rate by performing puncturing processing that periodically deletes redundant data output from each element encoder is employed.

このターボ符号の復号では、最大事後確率(Maximum A posteriori Probability:MAP)復号法がよく知られている。このMAP復号法は、要素復号器に入力されるデータ系列から、符号器内部データの符号化時の状態を推定し、発生した確率が最も高いと推定される状態に変化させる符号器入力を推定し、それを復号結果とする方法である。   In decoding of this turbo code, the Maximum A posteriori Probability (MAP) decoding method is well known. In this MAP decoding method, the state at the time of encoding of the internal data of the encoder is estimated from the data sequence input to the element decoder, and the encoder input to be changed to the state where the generated probability is estimated to be highest is estimated. In this method, the decoding result is used.

この符号器入力の推定は、データ系列の先頭(始端)から末尾(終端)に向かって逐次的に状態を推定する前方確率の計算で得られる状態確率値と、データ系列の末尾(終端)から先頭(始端)に向かって逐次的に状態を推定する後方確率の計算で得られる状態確率値との両方を用いて行われるが、回路で実現する際は、何れか一方の確率値を先行して計算し、その全てをメモリに記憶し、その後に他方の確率値を逐次計算し、同時にメモリに蓄えられた一方の確率値とから符号器入力を推定する方法が採られる。   The estimation of the encoder input is based on the state probability value obtained by calculating the forward probability that sequentially estimates the state from the beginning (end) to the end (end) of the data sequence, and from the end (end) of the data sequence. It is performed using both the state probability value obtained by calculating the backward probability that sequentially estimates the state toward the beginning (starting edge), but when realized by a circuit, either one of the probability values is preceded. And then storing all of them in the memory, then sequentially calculating the other probability value, and simultaneously estimating the encoder input from one probability value stored in the memory.

この推定方法では、確率値を記憶するメモリには、データ系列の長さ×状態確率数に従う大きさの記憶容量が必要となり回路実現の際に大きな負荷となる。これを解決する方法として、スライディング・ウインドウ・アルゴリズムが知られている(非特許文献1)。このスライディング・ウインドウ・アルゴリズムでは、データ系列をある程度のウインドウ長毎に分断し、それぞれのウインドウ範囲に対してウインドウ境界での状態値を推定しつつ順次復号処理を行うことで、確率値を記憶するメモリの記憶容量をウインドウ長×状態確率数に従う大きさに低減することができる。以下、MAP復号法を用いる従来のターボ復号装置について概略説明する。   In this estimation method, the memory for storing the probability value needs to have a storage capacity of a size according to the length of the data series × the number of state probabilities, which is a heavy load when the circuit is realized. As a method for solving this, a sliding window algorithm is known (Non-Patent Document 1). In this sliding window algorithm, the data series is divided by a certain window length, and the probability value is stored by sequentially performing the decoding process while estimating the state value at the window boundary for each window range. The storage capacity of the memory can be reduced to a size according to window length × number of state probabilities. Hereinafter, a conventional turbo decoding apparatus using the MAP decoding method will be schematically described.

図8は、スライディング・ウインドウ・アルゴリズムを実現する従来のターボ復号装置の構成例を示すブロック図である。図8に示すターボ復号装置800は、入力データ記憶手段801と、遷移確率計算手段802と、第1の状態確率計算手段803と、第2の状態確率計算手段804と、第1の状態確率記憶手段805と、第1の対数尤度計算手段806と、外部値計算手段807と、外部値記憶手段808と、出力データ記憶手段809とを備えている。   FIG. 8 is a block diagram showing a configuration example of a conventional turbo decoding device that realizes a sliding window algorithm. The turbo decoding apparatus 800 shown in FIG. 8 includes an input data storage unit 801, a transition probability calculation unit 802, a first state probability calculation unit 803, a second state probability calculation unit 804, and a first state probability storage. Means 805, first log likelihood calculation means 806, external value calculation means 807, external value storage means 808, and output data storage means 809 are provided.

また、本図ならびに以降で示す図ではインターリーバをさす記号は記載されていないが、ターボ符号として当然所定の位置に付与されているものとする。   In addition, in this figure and the following figures, the symbol indicating the interleaver is not described, but it is assumed that it is given as a turbo code at a predetermined position.

図8において、受信復調された入力データは、一旦入力データ記憶手段801に記憶される。遷移確率計算手段802は、入力データ記憶手段801と外部値記憶手段808とからそれぞれウインドウ長の単位で読み出されるデータ列に基づき、時点間の遷移確率を計算する。計算結果は、第1の対数尤度計算手段806と第1の状態確率計算手段803と第2の状態確率計算手段804とにそれぞれ出力される。   In FIG. 8, the received and demodulated input data is temporarily stored in the input data storage unit 801. The transition probability calculation means 802 calculates transition probabilities between time points based on data strings read in units of window lengths from the input data storage means 801 and the external value storage means 808, respectively. The calculation results are output to the first log likelihood calculation means 806, the first state probability calculation means 803, and the second state probability calculation means 804, respectively.

第1の状態確率計算手段803は、前方確率をウインドウ長毎にそのウインドウ長の始端から終端に向かう昇順で計算することを所定のデータ範囲において繰り返し行い、計算結果を第1の対数尤度計算手段806に出力する。第2の状態確率計算手段804は、後方確率をウインドウ長毎にそのウインドウ長の終端から始端に向かう降順で計算し、計算結果を第1の状態確率記憶手段805に記憶させることを所定のデータ範囲において繰り返し行う。   The first state probability calculation means 803 repeatedly calculates the forward probability for each window length in ascending order from the beginning to the end of the window length in a predetermined data range, and the calculation result is a first log likelihood calculation. Output to means 806. The second state probability calculation means 804 calculates the backward probability for each window length in descending order from the end of the window length to the start end, and stores the calculation result in the first state probability storage means 805 with predetermined data. Repeat in range.

第1の状態確率計算手段803と第2の状態確率計算手段804との間では、先に第2の状態確率計算手段804が後方確率を上記のように計算し、その後に第1の状態確率計算手段803が前方確率を上記のように計算するようになっている。   Between the first state probability calculation means 803 and the second state probability calculation means 804, the second state probability calculation means 804 first calculates the backward probability as described above, and then the first state probability. The calculation means 803 calculates the forward probability as described above.

第1の対数尤度計算手段806は、遷移確率計算手段802から入力する遷移確率と、第1の状態確率計算手段803から入力する前方確率と、第1の状態確率記憶手段805から読み出した同位置の後方確率とによって対数尤度比を計算する。   The first log likelihood calculation means 806 is the same as the transition probability input from the transition probability calculation means 802, the forward probability input from the first state probability calculation means 803, and the same read from the first state probability storage means 805. The log likelihood ratio is calculated according to the backward probability of the position.

外部値計算手段807は、第1の対数尤度計算手段806が求めた対数尤度比から外部値を計算し、それを外部値記憶手段808に記憶させる。以上の動作が所定の復号回数繰り返し行われる。所定の復号回数経過時における第1の対数尤度計算手段806が求めた対数尤度比が硬判定用の出力データとして出力データ記憶手段809に記憶される。   The external value calculation unit 807 calculates an external value from the log likelihood ratio obtained by the first log likelihood calculation unit 806 and stores it in the external value storage unit 808. The above operation is repeated a predetermined number of times of decoding. The log-likelihood ratio obtained by the first log-likelihood calculation unit 806 when the predetermined number of decoding times has elapsed is stored in the output data storage unit 809 as output data for hard decision.

ところで、スライディング・ウインドウ・アルゴリズムでは、ウインドウ単位に独立して計算できることを利用し、通常、前方確率の計算及び後方確率の計算とからなるウインドウ処理を所定の復号回数繰り返すデータ範囲を複数に分割し、各データ範囲においてウインドウ処理を並列に実行することで復号時間の短縮を図ることが行われている。   By the way, the sliding window algorithm takes advantage of the fact that it can be calculated independently for each window, and usually divides the data range that repeats the window processing consisting of forward probability calculation and backward probability calculation a predetermined number of decoding times into a plurality of data ranges. The decoding time is shortened by executing window processing in parallel in each data range.

図9は、ウインドウ処理を所定の復号回数繰り返すデータ範囲を2つに等分割し、各データ範囲においてウインドウ処理を並列に実行する場合での従来のターボ復号装置の構成例を示すブロック図である。なお、図9では、図8に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。   FIG. 9 is a block diagram illustrating a configuration example of a conventional turbo decoding device in a case where a data range in which window processing is repeated a predetermined number of times of decoding is equally divided into two and window processing is executed in parallel in each data range. . In FIG. 9, the same or similar components as those shown in FIG. 8 are denoted by the same reference numerals.

即ち、図9に示すように、2つのデータ範囲においてウインドウ処理の並列に実行する従来のターボ復号装置900は、図8に示した構成に対して、前方確率の計算を行う第3の状態確率計算手段901と、後方確率の計算を行う第4の状態確率計算手段902と、後方確率を記憶する第2の状態確率記憶手段903と、対数尤度比を計算する第2の対数尤度計算手段904とが追加されている。その結果、外部値計算手段807は、第1の対数尤度計算手段806と第2の対数尤度計算手段904とがそれぞれ求めた対数尤度比から外部値を計算し、それを外部値記憶手段808に記憶させることになる。   That is, as shown in FIG. 9, a conventional turbo decoding apparatus 900 that executes window processing in parallel in two data ranges has a third state probability for calculating a forward probability with respect to the configuration shown in FIG. The calculation means 901, the fourth state probability calculation means 902 for calculating the backward probability, the second state probability storage means 903 for storing the backward probability, and the second log likelihood calculation for calculating the log likelihood ratio Means 904 are added. As a result, the external value calculation means 807 calculates an external value from the log likelihood ratios obtained by the first log likelihood calculation means 806 and the second log likelihood calculation means 904, respectively, and stores them as external values. It is stored in the means 808.

なお、第1の対数尤度計算手段806は、遷移確率計算手段802から入力する遷移確率と、第1の状態確率計算手段803から入力する前方確率と、第2の状態確率記憶手段903から読み出した同位置の後方確率とによって対数尤度比を計算する。また、第2の対数尤度計算手段904は、遷移確率計算手段802から入力する遷移確率と、第3の状態確率計算手段901から入力する前方確率と、第1の状態確率記憶手段805から読み出した同位置の後方確率とによって対数尤度比を計算するとしている。   The first log likelihood calculation means 806 reads out the transition probability input from the transition probability calculation means 802, the forward probability input from the first state probability calculation means 803, and the second state probability storage means 903. The log likelihood ratio is calculated according to the backward probability of the same position. The second log likelihood calculation means 904 reads out the transition probability input from the transition probability calculation means 802, the forward probability input from the third state probability calculation means 901, and the first state probability storage means 805. The log likelihood ratio is calculated based on the backward probability of the same position.

次に、図10を参照して、動作について概略説明する。図10は、図9に示す第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートである。図10に示すように、データ範囲は48であるとし、上記したウインドウ長であるスライディング・ウインドウ範囲は8であるとする。したがって、復号開始時で言えば、時点「0」〜時点「47」のデータ範囲は、時点「0」を始端とし時点「23」を終端とするデータ範囲と、時点「24」を始端とし時点「47」を終端とするデータ範囲とに2等分割される。それぞれのデータ範囲では、3つのウインドウ処理が順に実行されるが、分割した2つのデータ範囲の間では対応する2つのウインドウ処理が並列に実行されることになる。   Next, the operation will be outlined with reference to FIG. FIG. 10 is a time chart for explaining the access timing to the first and second state probability storage means shown in FIG. As shown in FIG. 10, it is assumed that the data range is 48, and the sliding window range that is the window length described above is 8. Therefore, at the start of decoding, the data range from the time point “0” to the time point “47” includes a data range starting at the time point “0” and ending at the time point “23”, and a data range starting from the time point “24” as the starting point. The data range is divided into two equal parts, with the data range terminating at “47”. In each data range, three window processes are sequentially executed, but two corresponding window processes are executed in parallel between the two divided data ranges.

なお、図10では、時点の順序番号を“□”内に示してあるが、この“□”表示は、「メモリへの書き込み要求」発生と、「メモリへの読み出し要求」発生と、「メモリ内のデータ占有期間」とを同時に示したものである。この“□”表示は、以下に示す各図において共通である。   In FIG. 10, the sequence number at the time is shown in “□”, but this “□” display indicates that a “write request to the memory”, a “read request to the memory”, and a “memory” The data occupation period "is shown at the same time. This “□” display is common in the following drawings.

さて、図10において、復号処理が開始すると、スライディング・ウインドウ範囲を単位として各対象データ範囲の先頭から復号処理が実行される。ここでは、第1の状態確率計算手段803、第2の状態確率計算手段804及び第1の状態確率記憶手段805の対象データ範囲は、時点「0」を始端とし時点「23」を終端とするデータ範囲であるとする。また、第3の状態確率計算手段901、第4の状態確率計算手段902及び第2の状態確率記憶手段903の対象データ範囲は、時点「24」を始端とし時点「47」を終端とするデータ範囲であるとする。双方とも同内容の復号処理が同様の手順で行われる。ここでは、時点「0」を始端とし時点「23」を終端とするデータ範囲での復号処理について説明する。   Now, in FIG. 10, when the decoding process starts, the decoding process is executed from the beginning of each target data range in units of the sliding window range. Here, the target data ranges of the first state probability calculation unit 803, the second state probability calculation unit 804, and the first state probability storage unit 805 have the time point “0” as the start point and the time point “23” as the end point. Suppose that it is a data range. Further, the target data ranges of the third state probability calculation unit 901, the fourth state probability calculation unit 902, and the second state probability storage unit 903 are data having the time point “24” as the start point and the time point “47” as the end point. Suppose that it is a range. In both cases, the decryption process with the same content is performed in the same procedure. Here, the decoding process in the data range starting at time “0” and ending at time “23” will be described.

時点「0」を始端とし時点「23」を終端とするデータ範囲では、復号処理が開始されると、まず、時点「7」から時点「0」まで降順にデータがデータ入力記憶手段801から読み出される。そして、時点「7」の後方確率が第2の状態確率計算手段804にて計算される。計算された後方確率は、第1の状態確率記憶手段805にてアドレス「7」に書き込まれる。次に、時点「6」の後方確率が第2の状態確率計算手段804にて計算され、第1の状態確率記憶手段805にてアドレス「6」に書き込まれる。この処理が時点「0」の後方確率計算まで繰り返され、時点「0」の後方確率計算後に第1の状態確率計算手段803による前方確率の計算が開始される。   In the data range starting at the time “0” and ending at the time “23”, when the decoding process is started, first, data is read from the data input storage unit 801 in the descending order from the time “7” to the time “0”. It is. Then, the backward probability of the time “7” is calculated by the second state probability calculation means 804. The calculated backward probability is written to the address “7” in the first state probability storage means 805. Next, the backward probability at the time “6” is calculated by the second state probability calculating means 804 and written to the address “6” by the first state probability storing means 805. This process is repeated until the backward probability calculation at time “0”, and after the backward probability calculation at time “0”, the calculation of the forward probability by the first state probability calculation means 803 is started.

前方確率の計算は、時点「0」から昇順で開始される。前方確率の計算と同時に第1の状態確率記憶手段805から同位置の後方確率が昇順で読み出されて対数尤度比の計算に用いられる。つまり、第1の状態確率記憶手段805では、書き込みは降順に行われ、時点「0」の後方確率計算を終了すると、直後のタイミングから、時点「0」から昇順に時点「7」までの後方確率が読み出されることとなる。   The calculation of the forward probability starts from the time “0” in ascending order. Simultaneously with the calculation of the forward probability, the backward probabilities at the same position are read out in ascending order from the first state probability storage means 805 and used for calculating the log likelihood ratio. That is, in the first state probability storage unit 805, writing is performed in descending order. When the backward probability calculation at the time point “0” is finished, the backward from the time point “0” to the time point “7” in ascending order from the immediately subsequent timing. The probability is read out.

以上のウインドウ処理が、次の時点「8」〜時点「15」までのデータ、時点「16」〜時点「23」までのデータについて同様に行われる。時点「24」を始端とし時点「47」を終端とするデータ範囲についても同様である。このように所定のデータ範囲を2等分割して並列処理が行えるので、高速に復号することができる。   The above window processing is similarly performed on the data from the next time point “8” to the time point “15” and the data from the time point “16” to the time point “23”. The same applies to the data range starting at time “24” and ending at time “47”. As described above, since the predetermined data range is divided into two equal parts and parallel processing can be performed, decoding can be performed at high speed.

ここで、第1の状態確率記憶手段805と第2の状態確率記憶手段903の記憶幅は、通常、それぞれ、スライディング・ウインドウ範囲8と同じ幅8である。そのため、第1の状態確率記憶手段805及び第2の状態確率記憶手段903の読み出しが完了してからでないと、書込要求を発行できないので、復号の更なる高速化を図るのが困難である。例えば、時点「13」の後方確率の書込要求が第1の状態確率記憶手段805のアドレス「5」に対して行われるタイミングでは、対数尤度比の計算では第1の状態確率記憶手段805のアドレス「2」の読み出しタイミングであるので、前回のウインドウ処理で書き込まれた時点「5」の後方確率が読み出されていない。この場合に、復号の更なる高速化を目的としてこの前回のウインドウ処理で書き込まれた時点「5」の後方確率が読み出される前に時点「13」の後方確率の書込要求を発行すると、上書きが発生し、データの正確性が保障されなくなることが起こるからである。   Here, the storage widths of the first state probability storage unit 805 and the second state probability storage unit 903 are usually the same width 8 as the sliding window range 8 respectively. For this reason, since the write request cannot be issued until the reading of the first state probability storage unit 805 and the second state probability storage unit 903 is completed, it is difficult to further increase the speed of decoding. . For example, at the timing when the backward probability writing request at the time “13” is made to the address “5” of the first state probability storage unit 805, the first state probability storage unit 805 is used for calculating the log likelihood ratio. Therefore, the backward probability at the time “5” written in the previous window processing is not read. In this case, if the backward probability write request at the time point “13” is issued before the backward probability at the time point “5” written in the previous window processing is read for the purpose of further speeding up the decoding, This is because the accuracy of data cannot be guaranteed.

そのため、復号の更なる高速化を図るためには、例えば、図11に示すように、第1の状態確率記憶手段805及び第2の状態確率記憶手段903の容量を、それぞれスライディング・ウインドウ範囲×状態数以上の大きさにしてデータの正確性を保障する必要がある。図11は、図10に示すMAP復号の更なる高速化を従来技術によって図る場合の一例を示す図である。図11(1)(2)では、第1の状態確率記憶手段805及び第2の状態確率記憶手段903を、それぞれスライディング・ウインドウ範囲8と同じ容量を有する2つのバンク(バンク1、バンク2)で構成し、ウインドウ範囲の単位で使用バンクを交互に変更する例が示されている。   Therefore, in order to further increase the speed of decoding, for example, as shown in FIG. 11, the capacities of the first state probability storage means 805 and the second state probability storage means 903 are set to the sliding window range × It is necessary to ensure the accuracy of the data by making it larger than the number of states. FIG. 11 is a diagram illustrating an example in the case of further increasing the speed of the MAP decoding illustrated in FIG. 11 (1) and 11 (2), the first state probability storage means 805 and the second state probability storage means 903 are divided into two banks (bank 1, bank 2) each having the same capacity as the sliding window range 8. In this example, the banks used are alternately changed in units of window ranges.

この問題を解決する方策として、例えば特許文献1では、移動通信システム等のシステム内で要求される降順書き込み及び昇順読み出しのアドレスを仮想アドレスとし、実際にメモリ(第1の状態確率記憶手段805及び第2の状態確率記憶手段903)に与える物理アドレスを、昇順読み出しの後に行われる処理では昇順書き込み降順読み出しとなり、降順読み出しの後に行われる処理では降順書き込み昇順読み出しとなるようにメモリアドレスを制御する方法を提案されている。
特開2003−32126号公報 “An intuitive justification and a simplified implementation of the MAP decoder for convolutional codes”, IEEE J. Sel. Areas Commun., vol.16, no.2, pp.260-264, Feb.1998.
As a measure for solving this problem, for example, in Patent Document 1, the addresses of descending order writing and ascending order reading required in a system such as a mobile communication system are assumed to be virtual addresses, and the actual memory (first state probability storage means 805 and The memory address is controlled so that the physical address given to the second state probability storage means 903) is ascending write descending read in the processing performed after the ascending read, and descending write ascending read is performed in the processing performed after the descending read. A method has been proposed.
JP 2003-32126 A “An intuitive justification and a simplified implementation of the MAP decoder for convolutional codes”, IEEE J. Sel. Areas Commun., Vol.16, no.2, pp.260-264, Feb.1998.

しかし、特許文献1に開示される方法では、システム内で要求される仮想アドレスを物理アドレスに変換するアドレス変換手段を必要とする。また、読み出しの完了以前に書き込みを開始するために、メモリをシングル・ポート・メモリで構成することができず、デュアル・ポート・メモリで構成することが必要となってしまう。   However, the method disclosed in Patent Document 1 requires an address translation unit that translates a virtual address required in the system into a physical address. In addition, since writing is started before the completion of reading, the memory cannot be configured with a single port memory, and it is necessary to configure with a dual port memory.

通常、デュアル・ポート・メモリは、シングル・ポート・メモリと比較して回路規模が大きいので、大規模化する。また、ASICを用いた回路設計では、シングル・ポート・メモリを基本として設計が行われることが多いので、シングル・ポート・メモリを用いて構成できることが望まれる。   Usually, the dual port memory has a larger circuit scale than the single port memory, and therefore becomes larger. In circuit design using an ASIC, design is often performed on the basis of a single port memory. Therefore, it is desirable that the circuit can be configured using a single port memory.

本発明は、かかる点に鑑みてなされたものであり、ターボ符号により誤り訂正符号化されたデータ列をMAP復号によって高速に復号する場合に、メモリ容量の増加を抑えつつシングル・ポート・メモリで構成することのできるターボ復号装置及びターボ復号方法を提供することを目的とする。   The present invention has been made in view of such a point, and in the case of decoding a data sequence error-corrected by a turbo code at a high speed by MAP decoding, a single-port memory while suppressing an increase in memory capacity. An object of the present invention is to provide a turbo decoding device and a turbo decoding method that can be configured.

かかる課題を解決するため、本発明に係るターボ復号装置は、ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いた最大事後確率復号法が適用されるターボ復号装置において、ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を偶数個に等分割し、そのうち2つのデータ範囲での一方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記後方確率の計算を行い、その後に前記前方確率の計算を行う第1のウインドウ処理手段と、他方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記前方確率の計算を行い、その後に前記後方確率の計算を行う第2のウインドウ処理手段と、2つの記憶領域を有し前記第1のウインドウ処理手段での後方確率の計算結果と前記第2のウインドウ処理手段での前方確率の計算結果とをそれぞれ記憶する状態確率記憶手段と、前記第1のウインドウ処理手段での前方確率の計算結果と前記状態確率記憶手段が記憶する後方確率の計算結果とに基づく対数尤度比及び前記第2のウインドウ処理手段での後方確率の計算結果と前記状態確率記憶手段が記憶する前方確率の計算結果とに基づく対数尤度比をそれぞれ計算する対数尤度計算手段と、前記状態確率記憶手段が有する2つの記憶領域の間で、前記第1のウインドウ処理手段が後方確率の計算結果を書き込みそれを前記対数尤度計算手段が読み出す記憶領域と、前記第2のウインドウ処理手段が前方確率の計算結果を書き込みそれを前記対数尤度計算手段が読み出す記憶領域とを前記ウインドウ処理毎に交互に切り替えるメモリ選択手段とを具備する構成を採る。   In order to solve such a problem, the turbo decoding apparatus according to the present invention employs a maximum a posteriori probability decoding method using a sliding window algorithm for error correction decoding of a data sequence error-corrected by a turbo code. In a turbo decoding device, a data range that repeats a predetermined number of times a window process consisting of forward probability calculation and backward probability calculation in units of window ranges is equally divided into even numbers, and one of the two data ranges The first window processing means for calculating the backward probability first as the window processing for the data sequence in the above, and then calculating the forward probability, and the window processing for the data sequence in the other data range first as the window processing. Calculate the forward probability, and then calculate the backward probability. State probability storage means having window storage means, two storage areas, and storing the calculation result of the backward probability in the first window processing means and the calculation result of the forward probability in the second window processing means, respectively. Log likelihood ratio based on the forward probability calculation result in the first window processing means and the backward probability calculation result stored in the state probability storage means, and the backward probability in the second window processing means. Between the log likelihood calculation means for calculating the log likelihood ratio based on the calculation result and the calculation result of the forward probability stored in the state probability storage means, and between the two storage areas of the state probability storage means, The first window processing means writes the calculation result of the backward probability, and the log likelihood calculation means reads the storage area, and the second window processing means calculates the forward probability. Results writes it with the log-likelihood calculation unit reads the storage area employs a configuration having a memory selection means for switching alternately every the window processing.

この構成によれば、全てのウインドウ処理を通常通りに同一方向から行うのではなく、2つのデータ範囲において、対応するウインドウ処理が互いに逆となるように進行する。その結果、同一タイミングで発生する状態確率記憶手段への書き込み要求は、昇順降順共に存在し、また、読み出し要求も昇順降順共に存在する。そこで、状態確率を記憶手段に書き込む際に、昇順読み出しが行われた記憶手段に対しては昇順書き込みを行うウインドウの状態確率を選択し、降順読み出しが行われた記憶手段に対しては降順書き込みを行うウインドウの状態確率を選択することで、特別のアドレス変換手段を不要にすることができる。これによって、回路規模を増加させることなく、また記憶手段の容量を増加することなく、記憶手段内のデータの正確性を保障することができ、高速MAP復号が実現できる。   According to this configuration, not all window processes are performed from the same direction as usual, but the corresponding window processes proceed in opposite directions in the two data ranges. As a result, write requests to the state probability storage means that occur at the same timing exist in both ascending and descending order, and read requests also exist in both ascending and descending order. Therefore, when writing the state probabilities into the storage means, the state probability of the window that performs ascending order writing is selected for the storage means that has been read in ascending order, and descending order writing is performed for the storage means that has been read in descending order By selecting the state probability of the window for performing the special address conversion means can be eliminated. As a result, the accuracy of the data in the storage means can be ensured without increasing the circuit scale and the capacity of the storage means, and high-speed MAP decoding can be realized.

本発明に係るターボ復号装置は、上記の発明において、前記状態確率記憶手段が有する2つの記憶領域のそれぞれをウインドウ幅以下の容量を有する複数個の小領域に区分して管理し、前記メモリ選択手段が選択した記憶領域において書き込みと読み出しが競合しないように、アクセスするアドレスを前記複数個の小領域に割り当てる制御を行うアドレス制御手段を具備する構成を採る。   The turbo decoding device according to the present invention, in the above invention, manages each of the two storage areas of the state probability storage means by dividing each of the two storage areas into a plurality of small areas having a capacity equal to or less than a window width. In order to prevent contention between writing and reading in the storage area selected by the means, an address control means is provided which performs control for assigning addresses to be accessed to the plurality of small areas.

この構成によれば、状態確率記憶手段が有する2つの記憶領域のそれぞれでは、降順書き込み昇順読み出しと昇順書き込み降順読み出しとが交互に発生するが、各記憶手段の持つ記憶領域を複数に分割して管理し、アクセスアドレスを割り当てるので、書き込み要求と読み出し要求との同時発生を回避することができる。したがって、状態確率記憶手段を実装面積の小さいシングル・ポート・メモリで構成することが可能となる。   According to this configuration, in each of the two storage areas possessed by the state probability storage means, descending order writing ascending order reading and ascending order writing descending order reading occur alternately, but the storage area of each storage means is divided into a plurality of Since the management and the access address are assigned, it is possible to avoid the simultaneous occurrence of the write request and the read request. Therefore, the state probability storage means can be constituted by a single port memory having a small mounting area.

本発明に係るターボ復号装置は、上記の発明において、前記アドレス制御手段は、前記複数個の小領域への割り当てをアクセスするアドレスの下位ビットの論理値によって制御する構成を採る。   The turbo decoding device according to the present invention employs a configuration in which, in the above invention, the address control means controls the allocation to the plurality of small areas by a logical value of lower bits of an address to be accessed.

この構成によれば、アドレス制御手段を簡素な構成で実現することができる。   According to this configuration, the address control means can be realized with a simple configuration.

本発明に係るターボ復号方法は、ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いた最大事後確率復号法が適用されるターボ復号方法において、ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を偶数個に等分割し、そのうち2つのデータ範囲において、一方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記後方確率の計算を行い、その後に前記前方確率の計算を行う第1のウインドウ処理工程と、他方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記前方確率の計算を行い、その後に前記後方確率の計算を行う第2のウインドウ処理工程と、前記第1のウインドウ処理工程での後方確率の計算結果と前記第2のウインドウ処理工程での前方確率の計算結果とを状態確率記憶手段が有する2つの記憶領域にそれぞれ記憶する工程と、前記第1のウインドウ処理工程での前方確率の計算結果と前記状態確率記憶手段が記憶する後方確率の計算結果とに基づく対数尤度比及び前記第2のウインドウ処理工程での後方確率の計算結果と前記状態確率記憶手段が記憶する前方確率の計算結果とに基づく対数尤度比をそれぞれ計算する対数尤度計算工程と、前記状態確率記憶手段が有する2つの記憶領域の間で、前記第1のウインドウ処理工程にて後方確率の計算結果を書き込みそれを前記対数尤度計算工程にて読み出す記憶領域と、前記第2のウインドウ処理工程にて前方確率の計算結果を書き込みそれを前記対数尤度計算工程にて読み出す記憶領域とを前記ウインドウ処理毎に交互に切り替えるメモリ選択工程とを具備するようにした。   A turbo decoding method according to the present invention is a turbo decoding method in which a maximum a posteriori probability decoding method using a sliding window algorithm is applied to error correction decoding for a data sequence that has been error correction encoded by a turbo code. A data range in which a window process consisting of forward probability calculation and backward probability calculation in units is repeated a predetermined number of times is divided into even numbers, and the window process is performed on a data string in one data range of two data ranges. First calculating the backward probability, and then calculating the forward probability, and then calculating the forward probability as the window processing for the data string in the other data range, A second window processing step for calculating the backward probability thereafter Storing the calculation result of the backward probability in the first window processing step and the calculation result of the forward probability in the second window processing step in two storage areas of the state probability storage means, A log likelihood ratio based on the calculation result of the forward probability in the first window processing step and the calculation result of the backward probability stored in the state probability storage means, and the calculation result of the backward probability in the second window processing step; Between the log likelihood calculation step of calculating the log likelihood ratio based on the calculation result of the forward probability stored in the state probability storage means, and between the two storage areas of the state probability storage means, the first A storage area in which the calculation result of the backward probability is written in the window processing step and is read in the log likelihood calculation step, and the calculation result of the forward probability in the second window processing step And a storage area for reading writes it in the log-likelihood calculation step was to and a memory selection step alternately switching every said window processing.

この方法によれば、全てのウインドウ処理を通常通りに同一方向から行うのではなく、2つのデータ範囲において、対応するウインドウ処理が互いに逆となるように進行する。その結果、同一タイミングで発生する状態確率記憶手段への書き込み要求は、昇順降順共に存在し、また、読み出し要求も昇順降順共に存在する。そこで、状態確率を記憶手段に書き込む際に、昇順読み出しが行われた記憶手段に対しては昇順書き込みを行うウインドウの状態確率を選択し、降順読み出しが行われた記憶手段に対しては降順書き込みを行うウインドウの状態確率を選択することで、特別のアドレス変換手段を不要にすることができる。これによって、回路規模を増加させることなく、また記憶手段の容量を増加することなく、記憶手段内のデータの正確性を保障することができ、高速MAP復号が実現できる。   According to this method, not all window processes are performed from the same direction as usual, but the corresponding window processes proceed in opposite directions in the two data ranges. As a result, write requests to the state probability storage means that occur at the same timing exist in both ascending and descending order, and read requests also exist in both ascending and descending order. Therefore, when writing the state probabilities into the storage means, the state probability of the window that performs ascending order writing is selected for the storage means that has been read in ascending order, and descending order writing is performed for the storage means that has been read in descending order By selecting the state probability of the window for performing the special address conversion means can be eliminated. As a result, the accuracy of the data in the storage means can be ensured without increasing the circuit scale and the capacity of the storage means, and high-speed MAP decoding can be realized.

本発明に係るターボ復号方法は、上記の発明において、前記状態確率記憶手段が有する2つの記憶領域のそれぞれをウインドウ幅以下の容量を有する複数個の小領域に区分して管理し、前記メモリ選択工程にて選択された記憶領域において書き込みと読み出しが競合しないように、アクセスするアドレスを前記複数個の小領域に割り当てる制御を行うアドレス制御工程を具備するようにした。   In the turbo decoding method according to the present invention, in the above invention, each of the two storage areas of the state probability storage means is divided into a plurality of small areas having a capacity equal to or less than a window width and managed, and the memory selection is performed. An address control step of performing control to allocate addresses to be accessed to the plurality of small regions is provided so that writing and reading do not compete in the storage area selected in the step.

この方法によれば、状態確率記憶手段が有する2つの記憶領域のそれぞれでは、降順書き込み昇順読み出しと昇順書き込み降順読み出しとが交互に発生するが、各記憶手段の持つ記憶領域を複数に分割して管理し、アクセスアドレスを割り当てるので、書き込み要求と読み出し要求との同時発生を回避することができる。したがって、状態確率記憶手段を実装面積の小さいシングル・ポート・メモリで構成することが可能となる。   According to this method, in each of the two storage areas of the state probability storage means, descending order writing ascending order reading and ascending order writing descending order reading occur alternately, but the storage area of each storage means is divided into a plurality of Since the management and the access address are assigned, it is possible to avoid the simultaneous occurrence of the write request and the read request. Therefore, the state probability storage means can be constituted by a single port memory having a small mounting area.

本発明に係るターボ復号方法は、上記の発明において、前記アドレス制御工程では、前記複数個の小領域への割り当てをアクセスするアドレスの下位ビットの論理値によって制御するようにした。   In the turbo decoding method according to the present invention, in the above invention, in the address control step, allocation to the plurality of small areas is controlled by a logical value of lower bits of an address to be accessed.

この方法によれば、アドレス制御を簡単な方法で実現することができる。   According to this method, the address control can be realized by a simple method.

本発明によれば、ターボ符号により誤り訂正符号化されたデータ列をMAP復号によって高速に復号するターボ復号装置をメモリ容量の増加を抑えつつシングル・ポート・メモリで構成することができる。   According to the present invention, a turbo decoding device that decodes a data sequence that has been error correction encoded by a turbo code at a high speed by MAP decoding can be configured with a single-port memory while suppressing an increase in memory capacity.

本発明の骨子は、ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いたMAP復号法が適用されるターボ復号装置において、ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を偶数個に等分割し、そのうちの2つのデータ範囲において、対応するウインドウ処理では、前方確率の計算と後方確率を計算とが互いに逆の関係で進行するようにし、2つの状態確率記憶手段では、降順書き込み昇順読み出しの要求と昇順書き込み降順読み出しの要求とが交互に行われるようにするが、2つの状態確率記憶手段間での書き込みと読み出しをウインドウ処理毎に切り替えるようにし、実際には1つの状態確率記憶手段では、順次読み出しが完了する前にこの読み出しと同方向の順次書き込みが行われるようにすることである。   The essence of the present invention is that, in a turbo decoding device to which a MAP decoding method using a sliding window algorithm is applied to error correction decoding of a data sequence that has been error correction encoded by a turbo code, the forward direction in units of window ranges is used. A data range that repeats the window processing consisting of probability calculation and backward probability calculation a predetermined number of times is equally divided into even numbers, and in the two data ranges, the corresponding window processing calculates the forward probability and backward probability. And the two state probability storage means alternately perform a descending write ascending read request and an ascending write descending read request alternately. To switch between writing and reading between each window processing, actually one state The rate storage unit is to ensure that the sequential writing of the read in the same direction takes place before the sequential reading is completed.

以下、本発明の実施の形態について図面を参照して詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

(実施の形態1)
図1は、本発明の実施の形態1に係るターボ復号装置の構成を示すブロック図である。図1に示すターボ復号装置100は、入力データ記憶手段101と、遷移確率計算手段102と、第1の状態確率計算手段103と、第2の状態確率計算手段104と、第3の状態確率計算手段105と、第4の状態確率計算手段106と、第1の状態確率記憶手段107と、第2の状態確率記憶手段108と、メモリ選択手段109と、アドレス制御手段110と、第1の対数尤度計算手段111と、第2の対数尤度計算手段112と、外部値計算手段113と、外部値記憶手段114と、出力データ記憶手段115とを備えている。
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of a turbo decoding apparatus according to Embodiment 1 of the present invention. The turbo decoding apparatus 100 shown in FIG. 1 includes an input data storage unit 101, a transition probability calculation unit 102, a first state probability calculation unit 103, a second state probability calculation unit 104, and a third state probability calculation. Means 105, fourth state probability calculation means 106, first state probability storage means 107, second state probability storage means 108, memory selection means 109, address control means 110, and first logarithm. Likelihood calculation means 111, second log likelihood calculation means 112, external value calculation means 113, external value storage means 114, and output data storage means 115 are provided.

図1において、受信復調された入力データは、一旦入力データ記憶手段101に記憶される。遷移確率計算手段102は、入力データ記憶手段101と外部値記憶手段114とからそれぞれウインドウ長の単位で読み出されるデータ列に基づき、時点間の遷移確率を計算する。計算結果は、第1の状態確率計算手段103と、第2の状態確率計算手段104と、第3の状態確率計算手段105と、第4の状態確率計算手段106と、第1の対数尤度計算手段111と、第2の対数尤度計算手段112とにそれぞれ出力される。   In FIG. 1, received and demodulated input data is temporarily stored in the input data storage means 101. The transition probability calculation means 102 calculates the transition probability between time points based on the data strings read in units of window lengths from the input data storage means 101 and the external value storage means 114, respectively. The calculation results are the first state probability calculation unit 103, the second state probability calculation unit 104, the third state probability calculation unit 105, the fourth state probability calculation unit 106, and the first log likelihood. It is output to the calculation means 111 and the second log likelihood calculation means 112, respectively.

第1の状態確率計算手段103は、前方確率をウインドウ長毎にそのウインドウ長の始端から終端に向かう昇順で計算することを所定のデータ範囲において繰り返し行い、計算結果を第1の対数尤度計算手段111に出力する。第2の状態確率計算手段104は、後方確率をウインドウ長毎にそのウインドウ長の終端から始端に向かう降順で計算し、計算結果を第1の状態確率記憶手段107と第2の状態確率記憶手段108のうちメモリ選択手段109が選択した状態確率記憶手段に書き込むことを所定のデータ範囲において繰り返し行う。   The first state probability calculating means 103 repeatedly calculates the forward probability for each window length in ascending order from the beginning to the end of the window length in a predetermined data range, and the calculation result is a first log likelihood calculation. Output to means 111. The second state probability calculation means 104 calculates backward probabilities for each window length in descending order from the end of the window length to the start end, and the calculation results are the first state probability storage means 107 and the second state probability storage means. Of the data 108, the writing to the state probability storage means selected by the memory selection means 109 is repeated in a predetermined data range.

第1の状態確率計算手段103と第2の状態確率計算手段104との間では、先に第2の状態確率計算手段104が後方確率を上記のように計算し、その後に第1の状態確率計算手段103が前方確率を上記のように計算するようになっている。   Between the first state probability calculation means 103 and the second state probability calculation means 104, the second state probability calculation means 104 first calculates the backward probability as described above, and then the first state probability The calculation means 103 calculates the forward probability as described above.

第3の状態確率計算手段105は、前方確率をウインドウ長毎にそのウインドウ長の始端から終端に向かう昇順で計算し、計算結果を第1の状態確率記憶手段107と第2の状態確率記憶手段108のうちメモリ選択手段109が選択した状態確率記憶手段に書き込むことを所定のデータ範囲において繰り返し行う。第4の状態確率計算手段106は、後方確率をウインドウ長毎にそのウインドウ長の終端から始端に向かう降順で計算することを所定のデータ範囲において繰り返し行い、計算結果を第2の対数尤度計算手段112に出力される。   The third state probability calculation means 105 calculates the forward probability for each window length in ascending order from the beginning to the end of the window length, and the calculation results are the first state probability storage means 107 and the second state probability storage means. Of the data 108, the writing to the state probability storage means selected by the memory selection means 109 is repeated in a predetermined data range. The fourth state probability calculation means 106 repeatedly calculates backward probabilities for each window length in descending order from the end of the window length to the start end in the predetermined data range, and calculates the result of the second log likelihood calculation. It is output to the means 112.

第3の状態確率計算手段105と第4の状態確率計算手段106との間では、先に第3の状態確率計算手段105が前方確率を上記のように計算し、その後に第4の状態確率計算手段106が後方確率を上記のように計算するようになっている。   Between the third state probability calculation means 105 and the fourth state probability calculation means 106, the third state probability calculation means 105 first calculates the forward probability as described above, and then the fourth state probability The calculation means 106 calculates the backward probability as described above.

第1の対数尤度計算手段111は、遷移確率計算手段102から入力する遷移確率と、第1の状態確率計算手段103から入力する前方確率と、第1の状態確率記憶手段107と第2の状態確率記憶手段108のうちメモリ選択手段109が選択した状態確率記憶手段から読み出した同位置の後方確率とによって対数尤度比を計算する。   The first log likelihood calculation means 111 includes a transition probability input from the transition probability calculation means 102, a forward probability input from the first state probability calculation means 103, a first state probability storage means 107, and a second state probability storage means 107. The log likelihood ratio is calculated based on the backward probability at the same position read from the state probability storage means selected by the memory selection means 109 in the state probability storage means 108.

また、第2の対数尤度計算手段112は、遷移確率計算手段102から入力する遷移確率と、第4の状態確率計算手段106から入力する後方確率と、第1の状態確率記憶手段107と第2の状態確率記憶手段108のうちメモリ選択手段109が選択した状態確率記憶手段から読み出した同位置の前方確率とによって対数尤度比を計算する。   The second log likelihood calculation means 112 includes a transition probability input from the transition probability calculation means 102, a backward probability input from the fourth state probability calculation means 106, a first state probability storage means 107, and a first state probability storage means 107. The log likelihood ratio is calculated based on the forward probability at the same position read from the state probability storage means selected by the memory selection means 109 among the two state probability storage means 108.

外部値計算手段113は、第1の対数尤度計算手段111と第2の対数尤度計算手段112が、それぞれ求めた対数尤度比から外部値を計算し、それを外部値記憶手段114に記憶させる。以上の動作が所定の復号回数繰り返し行われる。所定の復号回数経過時における第1の対数尤度計算手段111と第2の対数尤度計算手段112が求めた対数尤度比が硬判定用の出力データとして出力データ記憶手段115に記憶される。   The external value calculation means 113 calculates external values from the log likelihood ratios obtained by the first log likelihood calculation means 111 and the second log likelihood calculation means 112, respectively, and stores them in the external value storage means 114. Remember. The above operation is repeated a predetermined number of times of decoding. The log likelihood ratio obtained by the first log likelihood calculation means 111 and the second log likelihood calculation means 112 when the predetermined number of decoding times has elapsed is stored in the output data storage means 115 as hard decision output data. .

ここで、メモリ選択手段109は、第1の状態確率記憶手段107と第2の状態確率記憶手段108とをウインドウ処理毎に交互に選択して、書き込みを一方の状態確率記憶手段に実行し、読み出しを他方の状態確率記憶手段に実行することを実現する。   Here, the memory selection unit 109 alternately selects the first state probability storage unit 107 and the second state probability storage unit 108 for each window process, and executes writing to one state probability storage unit, The reading is executed to the other state probability storage means.

アドレス制御手段110は、後述(図3)するように、各ウインドウ処理において第1の状態確率記憶手段107及び第2の状態確率記憶手段108における書き込みアドレスと読み出しアドレスとを管理し、書き込みアドレスと読み出しアドレスとが競合しないように、メモリ選択手段109が選択する状態確率記憶手段における書き込みアドレスと読み出しアドレスとを制御する。   As will be described later (FIG. 3), the address control unit 110 manages the write address and the read address in the first state probability storage unit 107 and the second state probability storage unit 108 in each window process. The write address and the read address in the state probability storage unit selected by the memory selection unit 109 are controlled so as not to conflict with the read address.

次に、図2を参照して、全体的な動作について説明する。図2は、図1に示す第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートである。図2(1)は一連の処理動作を説明するタイムチャート、図2(2)は第2の状態確率記憶手段108へのアクセスタイミングを説明するタイムチャート、図2(3)は第1の状態確率記憶手段107へのアクセスタイミングを説明するタイムチャートである。   Next, the overall operation will be described with reference to FIG. FIG. 2 is a time chart for explaining the access timing to the first and second state probability storage means shown in FIG. 2 (1) is a time chart for explaining a series of processing operations, FIG. 2 (2) is a time chart for explaining the access timing to the second state probability storage means 108, and FIG. 2 (3) is a first state. It is a time chart explaining the access timing to the probability memory | storage means 107. FIG.

図2(1)に示すように、データ範囲は48であるとし、スライディング・ウインドウ範囲は8であるとする。したがって、復号開始時で言えば、時点「0」〜時点「47」のデータ範囲は、時点「0」を始端とし時点「23」を終端とするデータ範囲と、時点「24」を始端とし時点「47」を終端とするデータ範囲とに2等分割される。それぞれのデータ範囲では、3つのウインドウ処理が順に実行されるが、分割した2つのデータ範囲の間では対応する2つのウインドウ処理が並列に実行されることになる。   As shown in FIG. 2A, it is assumed that the data range is 48 and the sliding window range is 8. Therefore, at the start of decoding, the data range from the time point “0” to the time point “47” includes a data range starting at the time point “0” and ending at the time point “23”, and a data range starting from the time point “24” as the starting point. The data range is divided into two equal parts, with the data range terminating at “47”. In each data range, three window processes are sequentially executed, but two corresponding window processes are executed in parallel between the two divided data ranges.

この図2(1)と図10(1)との比較から理解できるように、本実施の形態1では、時点「0」を始端とし時点「23」を終端とするデータ範囲と、時点「24」を始端とし時点「47」を終端とするデータ範囲とにおいて、対応するウインドウ処理では、前方確率の計算と後方確率を計算とが互いに逆の関係で進行するようになっている。そして、第1の状態確率記憶手段107及び第2の状態確率記憶手段108への書き込みと読み出しは、メモリ選択手段109がウインドウ処理毎に切り替えるようにしている。   As can be understood from the comparison between FIG. 2 (1) and FIG. 10 (1), in the first embodiment, the data range starting at time “0” and ending at time “23” and the time “24” In the corresponding window processing, the calculation of the forward probability and the calculation of the backward probability proceed in an inverse relationship with each other in the data range starting with “” and ending with time “47”. Then, the memory selection unit 109 switches the writing and reading to the first state probability storage unit 107 and the second state probability storage unit 108 for each window process.

図2では、第1の状態確率計算手段103及び第2の状態確率計算手段104の対象データ範囲は、時点「0」を始端とし時点「23」を終端とするデータ範囲であるとし、第3の状態確率計算手段105及び第4の状態確率計算手段106の対象データ範囲は、時点「24」を始端とし時点「47」を終端とするデータ範囲であるとしている。   In FIG. 2, the target data range of the first state probability calculation unit 103 and the second state probability calculation unit 104 is a data range starting from the time point “0” and ending at the time point “23”. It is assumed that the target data ranges of the state probability calculation means 105 and the fourth state probability calculation means 106 are data ranges starting from the time “24” and ending at the time “47”.

さて、図2(1)において、復号処理が開始すると、スライディング・ウインドウ範囲を単位として各対象データ範囲の先頭から復号処理が実行される。なお、メモリ選択手段109は、復号処理の開始直後に行われる最初のウインドウ処理の期間では、初期状態として、第1の状態確率記憶手段107と第2の状態確率計算手段104及び第2の対数尤度計算手段112との間を接続し、第2の状態確率記憶手段108と第3の状態確率計算手段105及び第1の対数尤度計算手段111との間を接続している。その後の各ウインドウ処理では、交互に選択を切り替えるようになっている。このとき、アドレス制御手段110が、第1の状態確率記憶手段107及び第2の状態確率記憶手段108に書き込むアドレスと読み出すアドレスの制御を行うようになっている。   In FIG. 2A, when the decoding process is started, the decoding process is executed from the beginning of each target data range in units of the sliding window range. It should be noted that the memory selection means 109 is the first state probability storage means 107, the second state probability calculation means 104, and the second logarithm as the initial state during the initial window processing period immediately after the start of the decoding process. The likelihood calculation means 112 is connected, and the second state probability storage means 108, the third state probability calculation means 105, and the first log likelihood calculation means 111 are connected. In each subsequent window process, the selection is switched alternately. At this time, the address control means 110 controls the addresses to be written to and read from the first state probability storage means 107 and the second state probability storage means 108.

時点「0」を始端とし時点「23」を終端とするデータ範囲での最初のウインドウ処理では、時点「7」の後方確率が第2の状態確率計算手段104にて計算され、第1の状態確率記憶手段107に書き込まれる。次に、時点「6」の後方確率が第2の状態確率計算手段104にて計算され、第1の状態確率記憶手段107に書き込まれる。この処理が時点「0」の後方確率まで繰り返され、時点「0」の後方確率計算後に第1の状態確率計算手段103による前方確率の計算が開始される。   In the first window process in the data range starting at the time “0” and ending at the time “23”, the backward probability at the time “7” is calculated by the second state probability calculation means 104, and the first state It is written in the probability storage means 107. Next, the backward probability of the time “6” is calculated by the second state probability calculation means 104 and written to the first state probability storage means 107. This process is repeated until the backward probability at time “0”, and after the backward probability at time “0” is calculated, calculation of the forward probability by the first state probability calculation means 103 is started.

前方確率の計算は、時点「0」から昇順で開始され、計算結果が第1の対数尤度計算手段111に与えられる。前方確率の計算と同時に第1の状態確率記憶手段107から同位置の後方確率が昇順で読み出され、第1の対数尤度計算手段111による対数尤度比の計算に用いられる。つまり、第1の状態確率記憶手段107では、時点「7」から時点「0」までの後方確率の書き込みが降順に行われ、時点「0」の後方確率の計算を終了すると時点「0」から昇順に時点「7」までの後方確率が読み出されることとなる。   The calculation of the forward probability is started in ascending order from the time “0”, and the calculation result is given to the first log likelihood calculation means 111. Simultaneously with the calculation of the forward probability, the backward probabilities at the same position are read out from the first state probability storage means 107 in ascending order and used for the log likelihood ratio calculation by the first log likelihood calculation means 111. That is, in the first state probability storage means 107, the backward probabilities are written in descending order from the time point “7” to the time point “0”, and when the calculation of the backward probability of the time point “0” is finished, the time point “0” The backward probabilities up to time “7” are read out in ascending order.

一方、時点「24」を始端とし時点「47」を終端とするデータ範囲での最初のウインドウ処理では、時点「40」の前方確率が第3の状態確率計算手段105にて計算され、第2の状態確率記憶手段108に書き込まれる。次に、時点「41」の前方確率が第3の状態確率計算手段105にて計算され、第2の状態確率記憶手段108に書き込まれる。この処理が時点「47」の前方確率まで繰り返され、時点「47」の前方確率計算後に第4の状態確率計算手段106による後方確率の計算が開始される。   On the other hand, in the first window processing in the data range starting at the time “24” and ending at the time “47”, the forward probability at the time “40” is calculated by the third state probability calculating means 105, and the second Is written in the state probability storage means 108. Next, the forward probability of the time “41” is calculated by the third state probability calculation means 105 and written to the second state probability storage means 108. This process is repeated until the forward probability at the time “47”, and the calculation of the backward probability by the fourth state probability calculation means 106 is started after the forward probability at the time “47” is calculated.

後方確率の計算は、時点「47」から降順で開始され、計算結果が第2の対数尤度計算手段112に与えられる。後方確率の計算と同時に第2の状態確率記憶手段108から同位置の前方確率が降順で読み出され、第2の対数尤度計算手段112による対数尤度比の計算に用いられる。つまり、第2の状態確率記憶手段108では、時点「40」から時点「47」までの前方確率の書き込みが昇順に行われ、時点「47」の前方確率の計算を終了すると、時点「47」から時点「40」までの前方確率が降順で読み出されることとなる。   The calculation of the backward probability is started in descending order from the time point “47”, and the calculation result is given to the second log likelihood calculation means 112. Simultaneously with the calculation of the backward probability, the forward probabilities at the same position are read from the second state probability storage means 108 in descending order and used for the calculation of the log likelihood ratio by the second log likelihood calculation means 112. That is, the second state probability storage means 108 writes the forward probabilities from the time point “40” to the time point “47” in ascending order, and when the calculation of the forward probability at the time point “47” is completed, the time point “47”. The forward probabilities from time to time “40” are read out in descending order.

2回目のウインドウ処理は、上記した1回目のウインドウ処理において読み出しが開始された直後のタイミングから開始される。同時に、メモリ選択手段109は、第1の状態確率記憶手段107及び第2の状態確率記憶手段108への接続を切り替える。即ち、メモリ選択手段109は、第1の状態確率記憶手段107と第3の状態確率計算手段105及び第1の対数尤度計算手段111との間を接続し、第2の状態確率記憶手段108と第2の状態確率計算手段104及び第2の対数尤度計算手段112との間を接続している。   The second window process is started from the timing immediately after the reading is started in the first window process described above. At the same time, the memory selection unit 109 switches the connection to the first state probability storage unit 107 and the second state probability storage unit 108. That is, the memory selection unit 109 connects the first state probability storage unit 107 to the third state probability calculation unit 105 and the first log likelihood calculation unit 111, and the second state probability storage unit 108. And the second state probability calculation means 104 and the second log likelihood calculation means 112 are connected.

時点「0」を始端とし時点「23」を終端とするデータ範囲での2回目のウインドウ処理では、1回目のウインドウ処理において時点「1」の前方確率の計算が行われるタイミングで、時点「15」の後方確率が第2の状態確率計算手段104にて計算され、第2の状態確率記憶手段108に書き込まれる。次に、時点「14」の後方確率が第2の状態確率計算手段104にて計算され、第2の状態確率記憶手段108に書き込まれる。この処理が時点「8」の後方確率計算まで繰り返され、時点「8」の後方確率計算後に第1の状態確率計算手段103による前方確率の計算が開始される。   In the second window process in the data range starting from the time point “0” and ending at the time point “23”, the forward probability of the time point “1” is calculated in the first window process at the time point “15”. ”Is calculated by the second state probability calculation means 104 and written to the second state probability storage means 108. Next, the backward probability of the time “14” is calculated by the second state probability calculating means 104 and written to the second state probability storing means 108. This process is repeated until the backward probability calculation at time “8”. After the backward probability calculation at time “8”, calculation of the forward probability by the first state probability calculation means 103 is started.

前方確率の計算は、時点「8」から昇順で開始される。前方確率の計算と同時に第2の状態確率記憶手段108から同位置の後方確率が昇順で読み出されて対数尤度比の計算に用いられる。つまり、第2の状態確率記憶手段108では、後方確率の書き込みは降順に行われ、時点「8」の後方確率計算を終了すると、時点「8」から昇順に時点「15」までの後方確率が読み出されることとなる。   The calculation of the forward probability starts from the time “8” in ascending order. Simultaneously with the calculation of the forward probability, the backward probabilities at the same position are read out in ascending order from the second state probability storage means 108 and used for calculating the log likelihood ratio. That is, in the second state probability storage means 108, the backward probabilities are written in descending order. When the backward probability calculation at the time point “8” is completed, the backward probabilities from the time point “8” to the time point “15” are increased in ascending order. It will be read out.

ここで、第2の状態確率記憶手段108では、図2(2)に示すように、時点「47」の前方確率が読み出された次のタイミングで時点「15」の後方確率が書き込まれるというように、時点「47」から時点「40」までの前方確率が降順で読み出された直後に時点「15」から時点「8」までの後方確率が降順で書き込まれることになるので、データの上書きが発生せず、データの正確性が確保される。   Here, in the second state probability storage means 108, as shown in FIG. 2B, the backward probability of the time point “15” is written at the next timing after the forward probability of the time point “47” is read. Thus, immediately after the forward probabilities from time “47” to time “40” are read in descending order, the backward probabilities from time “15” to time “8” are written in descending order. Overwriting does not occur and data accuracy is ensured.

時点「24」を始端とし時点「47」を終端とするデータ範囲での2回目のウインドウ処理では、1回目のウインドウ処理において時点「48」の前方確率の計算が行われるタイミングで、時点「32」の前方確率が第3の状態確率計算手段105にて計算され、第1の状態確率記憶手段107に書き込まれる。以降、第3の状態確率計算手段105にて計算される時点「32」から時点「39」まで前方確率が第1の状態確率記憶手段107に書き込まれる。   In the second window process in the data range starting at the time point “24” and ending at the time point “47”, the forward probability of the time point “48” is calculated in the first window process at the time point “32”. ”Is calculated by the third state probability calculating means 105 and written in the first state probability storing means 107. Thereafter, the forward probabilities are written in the first state probability storage means 107 from the time point “32” calculated by the third state probability calculation means 105 to the time point “39”.

この場合、第1の状態確率記憶手段107では、図2(3)に示すように、時点「0」の後方確率が読み出された次のタイミングで時点「32」の前方確率が書き込まれるというように、時点「0」から時点「7」までの後方確率が昇順で読み出された直後に時点「32」から時点「39」までの前方確率が昇順で書き込まれることになるので、データの上書きが発生せず、データの正確性が確保される。   In this case, in the first state probability storage means 107, as shown in FIG. 2 (3), the forward probability of the time point “32” is written at the next timing after the backward probability of the time point “0” is read. Thus, since the backward probabilities from the time “0” to the time “7” are read in ascending order, the forward probabilities from the time “32” to the time “39” are written in ascending order. Overwriting does not occur and data accuracy is ensured.

3回目のウインドウ処理は、上記した2回目のウインドウ処理において読み出しが開始された直後のタイミングから開始される。同時に、メモリ選択手段109は、第1の状態確率記憶手段107及び第2の状態確率記憶手段108への接続を切り替える。即ち、メモリ選択手段109は、第1の状態確率記憶手段107と第2の状態確率計算手段104及び第2の対数尤度計算手段112との間を接続し、第2の状態確率記憶手段108と第3の状態確率計算手段105及び第1の対数尤度計算手段111との間を接続している。これは、最初のウインドウ処理での接続関係である。   The third window process is started from the timing immediately after the reading is started in the second window process described above. At the same time, the memory selection unit 109 switches the connection to the first state probability storage unit 107 and the second state probability storage unit 108. That is, the memory selection unit 109 connects the first state probability storage unit 107 to the second state probability calculation unit 104 and the second log likelihood calculation unit 112, and the second state probability storage unit 108. And the third state probability calculating means 105 and the first log likelihood calculating means 111 are connected. This is a connection relationship in the first window process.

時点「0」を始端とし時点「23」を終端とするデータ範囲での3回目のウインドウ処理では、2回目のウインドウ処理において時点「9」の前方確率の計算が行われるタイミングで、時点「23」の後方確率が第2の状態確率計算手段104にて計算され、第1の状態確率記憶手段107に書き込まれる。以降、第2の状態確率計算手段104にて計算される時点「23」から時点「16」まで後方確率が第1の状態確率記憶手段107に書き込まれる。   In the third window process in the data range starting from the time point “0” and ending at the time point “23”, the forward probability of the time point “9” is calculated in the second window process. ”Is calculated by the second state probability calculation means 104 and written in the first state probability storage means 107. Thereafter, backward probabilities are written in the first state probability storage means 107 from the time “23” to the time “16” calculated by the second state probability calculation means 104.

この場合、第1の状態確率記憶手段107では、図2(3)に示すように、時点「39」の前方確率が読み出された次のタイミングで時点「23」の後方確率が書き込まれるというように、時点「39」から時点「32」までの前方確率が降順で読み出された直後に時点「23」から時点「16」までの後方確率が降順で書き込まれることになるので、データの上書きが発生せず、データの正確性が確保される。   In this case, in the first state probability storage means 107, as shown in FIG. 2 (3), the backward probability of the time point “23” is written at the next timing after the forward probability of the time point “39” is read. Thus, immediately after the forward probabilities from time “39” to time “32” are read in descending order, the backward probabilities from time “23” to time “16” are written in descending order. Overwriting does not occur and data accuracy is ensured.

また、時点「24」を始端とし時点「47」を終端とするデータ範囲での3回目のウインドウ処理では、2回目のウインドウ処理において時点「38」の前方確率の計算が行われるタイミングで、時点「24」の前方確率が第3の状態確率計算手段105にて計算され、第2の状態確率記憶手段108に書き込まれる。以降、第3の状態確率計算手段105にて計算される時点「24」から時点「31」まで前方確率が第2の状態確率記憶手段108に書き込まれる。   In the third window processing in the data range starting at time “24” and ending at time “47”, the forward probability of time “38” is calculated in the second window processing. The forward probability of “24” is calculated by the third state probability calculation means 105 and written to the second state probability storage means 108. Thereafter, forward probabilities are written in the second state probability storage means 108 from the time “24” to the time “31” calculated by the third state probability calculation means 105.

この場合、第2の状態確率記憶手段108では、図2(2)に示すように、時点「8」の後方確率が読み出された次のタイミングで時点「24」の前方確率が書き込まれるというように、時点「8」から時点「15」までの後方確率が昇順で読み出された直後に時点「24」から時点「31」までの前方確率が昇順で書き込まれることになるので、データの上書きが発生せず、データの正確性が確保される。   In this case, in the second state probability storage means 108, as shown in FIG. 2 (2), the forward probability of the time point “24” is written at the next timing after the backward probability of the time point “8” is read. Thus, immediately after the backward probabilities from time “8” to time “15” are read in ascending order, the forward probabilities from time “24” to time “31” are written in ascending order. Overwriting does not occur and data accuracy is ensured.

次に、図3は、図1に示す第1及び第2の状態確率記憶手段107、108の構成と図1に示すアドレス制御手段の動作とを説明する図である。図3(1)は、図2(3)に示す第1の状態確率記憶手段107のアクセス内容を転記したものである。図3(2)(3)は、各状態確率記憶手段が備える記憶領域を構成する2つのバンクのアクセス内容を示す図である。   FIG. 3 is a diagram for explaining the configuration of the first and second state probability storage means 107 and 108 shown in FIG. 1 and the operation of the address control means shown in FIG. FIG. 3 (1) is a copy of the access contents of the first state probability storage means 107 shown in FIG. 2 (3). FIGS. 3 (2) and 3 (3) are diagrams showing access contents of two banks constituting a storage area included in each state probability storage means.

図2で示したタイミングで復号処理がなされるときは、状態確率記憶手段にアクセスする書き込みアドレスと読み出しアドレスが偶数アドレスと奇数アドレスとで競合する。一方、アドレスは昇順列又は降順列で発生するため、読み出しアドレスと書き込みアドレスとの競合が偶数アドレスと奇数アドレスとで発生する場合には、偶数同士或いは奇数同士の読み出し書き込みが競合することはありえない。   When the decoding process is performed at the timing shown in FIG. 2, the write address and the read address that access the state probability storage unit compete with each other between the even address and the odd address. On the other hand, since addresses occur in ascending or descending permutation, even if read-address and write-address conflicts occur between even-numbered addresses and odd-numbered addresses, even-numbered or odd-numbered read-writes cannot compete. .

そこで、状態確率記憶手段が備える記憶領域をスライディング・ウインドウ範囲と同じ幅8で構成する。そして、アドレス制御手段110は、その幅8の記憶領域を幅4の領域に区分し、一方を奇数アドレス用バンク(図3(2))とし、他方を偶数アドレス用バンク(図3(3))として用いる。   Therefore, the storage area of the state probability storage means is configured with the same width 8 as the sliding window range. Then, the address control means 110 divides the storage area of width 8 into areas of width 4, one of which is an odd address bank (FIG. 3 (2)) and the other is an even address bank (FIG. 3 (3)). ).

具体的には、アドレス制御手段110は、各状態確率記憶手段にアクセスするアドレスの最下位ビットを確認し、値「1」、値「3」等の奇数であるときは、奇数アドレス用バンク(図3(2))にアクセスし、値「0」、値「2」等の偶数であるときは、偶数アドレス用バンク(図3(3))にアクセスする制御を行うようにしている。   Specifically, the address control means 110 confirms the least significant bit of the address accessing each state probability storage means, and if it is an odd number such as a value “1”, a value “3”, etc., it is an odd address bank ( 3 (2)) is accessed, and when the value is an even number such as “0” or “2”, the access to the even address bank (FIG. 3 (3)) is controlled.

読み出しと書き込みとが競合する場合は、両者のアドレスの一方が奇数であり、他方が偶数であるので、実際に状態確率記憶手段への要求時に読み書きの競合が発生する場合において、それぞれ、奇数アドレス用バンク、偶数用アドレス用バンクへと異なるバンクに対してアクセスが行われる。   When read and write conflicts, one of the addresses is an odd number and the other is an even number. Therefore, in the case where a read / write conflict actually occurs when a request is made to the state probability storage means, Access is made to a different bank to the bank for address and the bank for address for even number.

書き込みの具体例を示す。例えば、時点「0」を始端とし時点「23」を終端とするデータ範囲での最初のウインドウ処理の例で言えば、時点「7」の後方確率が第2の状態確率計算手段104にて計算され、第1の状態確率記憶手段107にてアドレス「7」に記憶しようとする場合、アドレス「7」の最下位ビットが“1”であるので、図3(2)に示すうに、奇数アドレス用バンクのアドレス「3」に時点「7」の後方確率を書き込む。   A specific example of writing will be shown. For example, in the example of the first window processing in the data range starting at the time “0” and ending at the time “23”, the backward probability of the time “7” is calculated by the second state probability calculation unit 104. When the first state probability storage means 107 stores the address “7”, since the least significant bit of the address “7” is “1”, as shown in FIG. The backward probability of the time “7” is written in the bank address “3”.

次の時点「6」の後方確率が第2の状態確率計算手段104にて計算され、第1の状態確率記憶手段107にてアドレス「6」に記憶しようとする場合、アドレス「6」の最下位ビットが“0”であるので、図3(3)に示すように、偶数アドレス用バンクのアドレス「3」に時点「6」の後方確率を書き込む。   When the backward probability of the next time point “6” is calculated by the second state probability calculation means 104 and is to be stored in the address “6” by the first state probability storage means 107, Since the lower bit is “0”, as shown in FIG. 3 (3), the backward probability of the time “6” is written into the address “3” of the even-numbered address bank.

以上のように、実施の形態1によれば、ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を2つに等分割し、その分割した2つのデータ範囲において、対応するウインドウ処理では、前方確率の計算と後方確率を計算とが互いに逆の関係で進行するようにし、2つの状態確率記憶手段では、降順書き込み昇順読み出しの要求と昇順書き込み降順読み出しの要求とが交互に行われるようにするが、2つの状態確率記憶手段間での書き込みと読み出しをウインドウ処理毎に切り替えるようにし、実際には1つの状態確率記憶手段では、順次読み出しが完了する前にこの読み出しと同方向の順次書き込みが行われるので、データの上書きが発生せず、データの正確性を確保することができる。   As described above, according to the first embodiment, the data range in which the window process including the calculation of the forward probability and the calculation of the backward probability in units of the window range is repeated a predetermined number of times is equally divided into two. In the two data ranges, in the corresponding window processing, the calculation of the forward probability and the calculation of the backward probability proceed in an inverse relationship with each other, and the two state probability storage means perform the descending order writing ascending order reading request and the ascending order writing. The request for reading in descending order is alternately performed, but writing and reading between the two state probability storage units are switched for each window process. In fact, one state probability storage unit can perform sequential reading. Before completion, sequential writing in the same direction as this reading is performed, so data overwriting does not occur and data accuracy is ensured. Door can be.

したがって、状態確率記憶手段の記憶領域を有効に利用しつつ、つまりメモリ容量を節約しつつ読み出しの完了前に書き込みが行えるので、MAP復号の高速化を図ることができる。そして、特許文献1のように特別のアドレス変換手段を用いてアドレスそのものを変更することなく、アクセスするアドレスの順序を逆にすることができるので、回路規模の小型化が図れる。   Therefore, writing can be performed before reading is completed while effectively using the storage area of the state probability storage means, that is, saving the memory capacity, so that the speed of MAP decoding can be increased. And since the order of the address to access can be reversed without changing an address itself using a special address conversion means like patent document 1, size reduction of a circuit can be achieved.

また、2つの状態確率記憶手段では、それぞれへのアクセス制御を読み書きのアクセス競合が偶数と奇数との間で起きないように、ウインドウ幅以下の複数の小容量記憶領域で構成できるので、シングル・ポート・メモリを用いた構成が可能となり、実装面積を小さくすることができる。   Further, the two state probability storage means can be configured with a plurality of small-capacity storage areas having a window width or less so that read / write access contention does not occur between the even and odd numbers. A configuration using a port memory is possible, and the mounting area can be reduced.

ところで、ウインドウ処理間の処理タイミングとして、図2では、第2の状態確率計算手段104によって計算された時点「0」の後方確率が第1の状態確率記憶手段107から読み出される次のタイミングで、第3の状態確率計算手段105によって計算された時点「32」の前方確率が第1の状態確率記憶手段107に書き込まれる場合を示したが、実際には、その他、各種のタイミングが考えられる。この場合には、第1の状態確率記憶手段107及び第2の状態確率記憶手段108の構成とアドレス制御手段110の動作とが異なることになる。以下、若干の変形態様を実施の形態2、3に示す。   By the way, as the processing timing between the window processes, in FIG. 2, at the next timing when the backward probability of the time point “0” calculated by the second state probability calculating unit 104 is read from the first state probability storing unit 107, Although the case where the forward probability of the time point “32” calculated by the third state probability calculation unit 105 is written in the first state probability storage unit 107 has been shown, various other timings are actually conceivable. In this case, the configuration of the first state probability storage unit 107 and the second state probability storage unit 108 and the operation of the address control unit 110 are different. Hereinafter, some modifications will be described in the second and third embodiments.

(実施の形態2)
図4は、本発明の実施の形態2に係るターボ復号装置における第1及び第2の状態確率記憶手段107、108へのアクセスタイミングを説明するタイムチャートである。図4(1)は一連の処理動作を説明するタイムチャート、図4(2)は第2の状態確率記憶手段108へのアクセスタイミングを説明するタイムチャート、図4(3)は第1の状態確率記憶手段107へのアクセスタイミングを説明するタイムチャートである。
(Embodiment 2)
FIG. 4 is a time chart for explaining the access timing to the first and second state probability storage means 107 and 108 in the turbo decoding device according to Embodiment 2 of the present invention. 4 (1) is a time chart for explaining a series of processing operations, FIG. 4 (2) is a time chart for explaining access timing to the second state probability storage means 108, and FIG. 4 (3) is a first state. It is a time chart explaining the access timing to the probability memory | storage means 107. FIG.

また、図5は、本発明の実施の形態2に係るターボ復号装置における第1及び第2の状態確率記憶手段107、108の構成とアドレス制御手段の動作とを説明する図である。図5(1)は、図4(3)に示す第1の状態確率記憶手段107のアクセス内容を転記したものである。図5(2)(3)は、状態確率記憶手段が備える記憶領域を構成する2つのバンクのアクセス内容を示す図である。   FIG. 5 is a diagram for explaining the configuration of the first and second state probability storage means 107 and 108 and the operation of the address control means in the turbo decoding device according to Embodiment 2 of the present invention. FIG. 5 (1) is a copy of the access contents of the first state probability storage means 107 shown in FIG. 4 (3). FIGS. 5 (2) and 5 (3) are diagrams showing access contents of two banks constituting the storage area provided in the state probability storage means.

本実施の形態2では、図4(1)に示すように、ウインドウ処理間の処理タイミングとして、第2の状態確率計算手段104によって計算された時点「0」の後方確率が第1の状態確率記憶手段107から読み出される同じタイミングで、第3の状態確率計算手段105によって計算された時点「32」の前方確率が第1の状態確率記憶手段107に書き込まれる場合について説明する。   In the second embodiment, as shown in FIG. 4 (1), as the processing timing between the window processes, the backward probability of the time point “0” calculated by the second state probability calculating unit 104 is the first state probability. A case will be described in which the forward probability at the time “32” calculated by the third state probability calculation unit 105 is written in the first state probability storage unit 107 at the same timing read from the storage unit 107.

2つの状態確率記憶手段が用意すべき記憶領域の幅は、図2(1)に示すタイミング関係でのウインドウ処理ではウインドウ幅と同じで良いが、図4(1)に示すタイミング関係でのウインドウ処理ではウインドウ幅よりも1つ多く必要となる。したがって、図4(2)(3)に示すように、2つの状態確率記憶手段の何れもがアクセスアドレスを1つインクリメントした幅を有する記憶領域を用意する必要がある。   The width of the storage area to be prepared by the two state probability storage means may be the same as the window width in the window processing in the timing relationship shown in FIG. 2 (1), but the window in the timing relationship shown in FIG. 4 (1). Processing requires one more than the window width. Therefore, as shown in FIGS. 4 (2) and 4 (3), it is necessary to prepare a storage area having a width obtained by incrementing the access address by either of the two state probability storage means.

これによって、例えば、第2の状態確率計算手段104によって計算される時点「7」の後方確率は、図4(3)に示すように、アドレス制御手段110によって第1の状態確率記憶手段107のアドレス「8」に書き込むデータとして以後扱い、同様に時点「0」の後方確率はアドレス「1」に書き込むデータとして以後扱うことができる。   Thereby, for example, the backward probability at the time point “7” calculated by the second state probability calculation means 104 is stored in the first state probability storage means 107 by the address control means 110 as shown in FIG. The backward probability at the time “0” can be handled as data to be written to the address “1” thereafter.

また、第2の状態確率計算手段104によって計算される時点「15」の後方確率は、図4(2)に示すように、アドレス制御手段110によって、第2の状態確率記憶手段108のアドレス「8」に書き込むデータとして以後扱い、同様に時点「8」の後方確率はアドレス「1」に書き込むデータとして以後扱うことができる。   Further, the backward probability of the time “15” calculated by the second state probability calculation means 104 is calculated by the address control means 110 by using the address “2” of the second state probability storage means 108 as shown in FIG. The backward probability at the time point “8” can be handled as data to be written at the address “1”.

また、第3の状態確率計算手段105によって計算される時点「40」の前方確率は、図4(2)に示すように、アドレス制御手段110によって第2の状態確率記憶手段108のアドレス「0」に書き込むデータとて以後扱い、同様に時点「47」の前方確率はアドレス「7」に書き込むデータとして以後扱うことができる。   Further, as shown in FIG. 4B, the forward probability of the time “40” calculated by the third state probability calculation means 105 is set to the address “0” of the second state probability storage means 108 by the address control means 110. The forward probability at the time point “47” can be treated as data to be written at the address “7”.

また、第3の状態確率計算手段105によって計算される時点「32」の前方確率は、図4(3)に示すように、アドレス制御手段110によって第1の状態確率記憶手段107のアドレス「0」に書き込むデータとして以後扱い、同様に時点「39」の前方確率はアドレス「7」に書き込むデータとして以後扱うことができる。   Further, as shown in FIG. 4 (3), the forward probability of the time point “32” calculated by the third state probability calculation means 105 is set to the address “0” of the first state probability storage means 107 by the address control means 110. The forward probability at time “39” can be handled as data to be written to address “7”.

このような処理では、2つの状態確率記憶手段へのアクセスアドレスが昇順列又は降順列で発生するので、2つの状態確率記憶手段では、読み出しと書き込みのアクセス競合が偶数同士、奇数同士で発生することとなる。この場合には、図5(2)(3)に示すように、2つの状態確率記憶手段に幅9の記憶領域をそれぞれ用意する。そして、実施の形態1にて説明したように、アクセスするアドレスの最下位ビットの偶奇を判定するアドレス制御手段110が、その幅9の記憶領域を幅5の領域と幅4の領域とに区分して管理し、幅5の領域(図5(2))を偶数アドレス用バンクとし、幅4の領域(図5(3))を奇数アドレス用バンクとして用いるようにする。但し、ウインドウ幅の始端と終端では、一方を偶数アドレス用バンクに割り当てるときは、他方は奇数アドレス用バンクに割り当てるようにする。   In such processing, the access addresses to the two state probability storage means are generated in ascending or descending permutation, so in the two state probability storage means, read and write access conflicts occur between even numbers and odd numbers. It will be. In this case, as shown in FIGS. 5 (2) and 5 (3), a storage area of width 9 is prepared in each of the two state probability storage means. Then, as described in the first embodiment, the address control means 110 that determines even / odd of the least significant bit of the address to be accessed divides the storage area with the width 9 into the area with the width 5 and the area with the width 4. Thus, the area of width 5 (FIG. 5 (2)) is used as an even address bank, and the area of width 4 (FIG. 5 (3)) is used as an odd address bank. However, at the start and end of the window width, when one is assigned to the even address bank, the other is assigned to the odd address bank.

例えば、第2の状態確率計算手段104で計算される時点「7」の後方確率は、第1の状態確率記憶手段107に対してアドレス「8」に書き込まれるデータとして送られる。このアドレス番号の最下位ビットは“0”、つまり偶数であるので、アドレス制御手段110は図5(2)に示すように偶数アドレス用バンクのアドレス「4」に割り当てる。この場合、第2の状態確率計算手段104で計算される時点「0」の後方確率は、図5(3)に示すように、奇数アドレス用バンクのアドレス「0」に割り当てる。   For example, the backward probability at the time point “7” calculated by the second state probability calculation unit 104 is sent to the first state probability storage unit 107 as data to be written at the address “8”. Since the least significant bit of this address number is “0”, that is, an even number, the address control means 110 assigns it to the address “4” of the even address bank as shown in FIG. In this case, the backward probability at the time “0” calculated by the second state probability calculation means 104 is assigned to the address “0” of the bank for odd addresses as shown in FIG.

また、第3の状態確率計算手段105で計算される時点「32」の前方確率は、第1の状態確率記憶手段107に対してアドレス「0」に書き込まれるデータとして送られる。このアドレスの最下位ビットは“0”、つまり偶数であるので、アドレス制御手段110は図5(2)に示すように、偶数アドレス用バンクのアドレス「0」に割り当てる。この場合、第3の状態確率計算手段105で計算される時点「39」の前方確率は、図5(3)に示すように、奇数アドレス用バンクのアドレス「3」に割り当てる。   Further, the forward probability at the time point “32” calculated by the third state probability calculation unit 105 is sent to the first state probability storage unit 107 as data to be written at the address “0”. Since the least significant bit of this address is “0”, that is, an even number, the address control means 110 assigns it to the address “0” of the even address bank as shown in FIG. In this case, the forward probability at the time “39” calculated by the third state probability calculating means 105 is assigned to the address “3” of the odd address bank as shown in FIG.

図5(2)(3)に示すように、適切にバンク分けした記憶領域に、アクセスアドレスの下位ビットに従って割り当てることで、偶数同士、奇数同士で発生する読み出しと書き込みの競合を回避することができる。   As shown in FIGS. 5 (2) and 5 (3), read and write contention that occurs between even numbers and odd numbers can be avoided by allocating the storage areas appropriately divided into banks according to the lower bits of the access address. it can.

このように、本実施の形態2によれば、2つの状態確率記憶手段へのアクセスアドレスが昇順列又は降順列で発生する場合においても、読み出しと書き込みの競合を回避することが可能となり、シングル・ポート・メモリを用いた実装が可能となる。ウインドウ幅が実施の形態1よりも増加することになるが、復号処理に影響を与えない。   As described above, according to the second embodiment, even when the access addresses to the two state probability storage units are generated in the ascending permutation or the descending permutation, it is possible to avoid contention between reading and writing.・ Mounting using port memory becomes possible. Although the window width is increased as compared with the first embodiment, the decoding process is not affected.

(実施の形態3)
図6は、本発明の実施の形態3に係るターボ復号装置における第1及び第2の状態確率記憶手段107、108へのアクセスタイミングを説明するタイムチャートである。図6(1)は一連の処理動作を説明するタイムチャート、図6(2)は第2の状態確率記憶手段108へのアクセスタイミングを説明するタイムチャート、図6(3)は第1の状態確率記憶手段107へのアクセスタイミングを説明するタイムチャートである。
(Embodiment 3)
FIG. 6 is a time chart for explaining the access timing to the first and second state probability storage means 107 and 108 in the turbo decoding device according to Embodiment 3 of the present invention. 6 (1) is a time chart for explaining a series of processing operations, FIG. 6 (2) is a time chart for explaining access timing to the second state probability storage means 108, and FIG. 6 (3) is a first state. It is a time chart explaining the access timing to the probability memory | storage means 107. FIG.

また、図7は、本発明の実施の形態3に係るターボ復号装置における第1及び第2の状態確率記憶手段107、108の構成とアドレス制御手段の動作とを説明する図である。図7(1)は、図6(3)に示す第1の状態確率記憶手段107のアクセス内容を転記したものである。図7(2)(3)は、各状態確率記憶手段が備える記憶領域を構成する2つのバンクのアクセス内容を示す図である。   FIG. 7 is a diagram for explaining the configuration of the first and second state probability storage means 107 and 108 and the operation of the address control means in the turbo decoding device according to Embodiment 3 of the present invention. FIG. 7 (1) is a copy of the access contents of the first state probability storage means 107 shown in FIG. 6 (3). FIGS. 7 (2) and 7 (3) are diagrams showing access contents of two banks constituting a storage area included in each state probability storage means.

本実施の形態3では、ウインドウ処理間の処理タイミングとして、状態確率記憶手段への読み出しと書き込みとを連続的に実行するのではなく、時間を置いて実行する場合について説明する。図6(1)では、読み出しが発生するタイミングから2時点遅れた時点で書き込みが開始される形態が示されている。この場合には、2つの状態確率記憶手段へのアクセス内容は、図6(2)(3)に示すようになる。   In the third embodiment, as a processing timing between window processes, a case will be described in which reading and writing to the state probability storage unit are not performed continuously but are performed at intervals. FIG. 6A shows a form in which writing is started at a point delayed by two points from the timing at which reading occurs. In this case, the contents of access to the two state probability storage means are as shown in FIGS.

本実施の形態3に示す処理形態でも、状態確率記憶手段での読み出し書き込みの競合は、実施の形態2と同様に、偶数同士、奇数同士のアドレスで発生する。但し、実施の形態2と異なり、本実施の形態3では、各状態確率記憶手段が備える記憶領域の幅は、実施の形態1と同様に、ウインドウ幅と同じ幅8にして構成することができる。   Also in the processing mode shown in the third embodiment, the read / write conflict in the state probability storage means occurs at even and odd addresses as in the second embodiment. However, unlike Embodiment 2, in Embodiment 3, the width of the storage area included in each state probability storage means can be configured to be the same width 8 as the window width, as in Embodiment 1. .

つまり、アドレス制御手段110は、実施の形態1(図3)と同様に、その幅8の記憶領域を幅4の領域に2分して管理する。但し、本実施の形態3では、アドレス制御手段110は、第2の状態確率計算手段104で計算される奇数番目のデータと第3の状態確率計算手段105とで計算される偶数番目のデータとを同じバンク(図7(2))にアクセスされるように制御し、また第2の状態確率計算手段104で計算される偶数番目のデータと第3の状態確率計算手段105とで計算される奇数番目のデータとを同じバンク(図7(3))にアクセスされるように制御する。この場合も、アドレス制御手段110は、アドレスの最下位ビットによって判断することが可能である。   That is, the address control unit 110 manages the storage area with the width of 8 by dividing it into the area with the width of 4, as in the first embodiment (FIG. 3). However, in the third embodiment, the address control unit 110 includes the odd number data calculated by the second state probability calculation unit 104 and the even number data calculated by the third state probability calculation unit 105. Are accessed by the same bank (FIG. 7 (2)) and are calculated by the even-numbered data calculated by the second state probability calculating means 104 and the third state probability calculating means 105. Control is performed so that the odd-numbered data is accessed in the same bank (FIG. 7 (3)). Also in this case, the address control means 110 can make a determination based on the least significant bit of the address.

このように、本実施の形態3によれば、状態確率記憶手段への読み出しと書き込みとが時間を置いて実行される場合においても、適切にバンク分けした記憶領域にアクセスアドレスの下位ビットに従って割り当てることで、偶数同士、奇数同士で発生する読み出しと書き込みの競合を回避することができるので、シングル・ポート・メモリを用いた実装が可能となる。ウインドウ処理間に遅延が生ずるが、その遅延量は復号処理に影響を与えない。   As described above, according to the third embodiment, even when reading and writing to the state probability storage means are performed with a time interval, the storage areas are appropriately banked according to the lower bits of the access address. As a result, contention between reading and writing that occurs between even numbers and odd numbers can be avoided, and mounting using a single-port memory becomes possible. Although a delay occurs between the window processes, the delay amount does not affect the decoding process.

本発明は、ターボ符号により誤り訂正符号化されたデータ列をMAP復号によって高速に復号するターボ復号装置をメモリ容量の増加を抑えつつシングル・ポート・メモリで構成するのに有用であり、特にMAP復号を高速かつ小規模回路で行うことを要求するシステム、例えば移動通信システムに好適である。   INDUSTRIAL APPLICABILITY The present invention is useful for constructing a turbo decoding device that decodes a data sequence error-corrected by a turbo code at a high speed by MAP decoding with a single port memory while suppressing an increase in memory capacity. This is suitable for a system that requires high-speed decoding with a small-scale circuit, for example, a mobile communication system.

本発明の実施の形態1に係るターボ復号装置の構成を示すブロック図FIG. 1 is a block diagram showing a configuration of a turbo decoding device according to Embodiment 1 of the present invention. 図1に示す第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートTime chart for explaining the access timing to the first and second state probability storage means shown in FIG. 図1に示す第1及び第2の状態確率記憶手段の構成と図1に示すアドレス制御手段の動作とを説明する図The figure explaining the structure of the 1st and 2nd state probability memory | storage means shown in FIG. 1, and operation | movement of the address control means shown in FIG. 本発明の実施の形態2に係るターボ復号装置における第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートTime chart for explaining the access timing to the first and second state probability storage means in the turbo decoding device according to the second embodiment of the present invention 本発明の実施の形態2に係るターボ復号装置における第1及び第2の状態確率記憶手段の構成とアドレス制御手段の動作とを説明する図The figure explaining the structure of the 1st and 2nd state probability memory | storage means and operation | movement of an address control means in the turbo decoding apparatus which concerns on Embodiment 2 of this invention. 本発明の実施の形態3に係るターボ復号装置における第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートTime chart for explaining the access timing to the first and second state probability storage means in the turbo decoding device according to Embodiment 3 of the present invention 本発明の実施の形態3に係るターボ復号装置における第1及び第2の状態確率記憶手段の構成とアドレス制御手段の動作とを説明する図The figure explaining the structure of the 1st and 2nd state probability memory | storage means and operation | movement of an address control means in the turbo decoding apparatus which concerns on Embodiment 3 of this invention. スライディング・ウインドウ・アルゴリズムを実現する従来のターボ復号装置の構成例を示すブロック図A block diagram showing a configuration example of a conventional turbo decoding device that realizes a sliding window algorithm ウインドウ処理を所定の復号回数繰り返すデータ範囲を2つに等分割し、各データ範囲においてウインドウ処理を並列に実行する従来のターボ復号装置の構成例を示すブロック図FIG. 2 is a block diagram showing a configuration example of a conventional turbo decoding device that equally divides a data range in which window processing is repeated a predetermined number of times into two and executes window processing in parallel in each data range 図9に示す第1及び第2の状態確率記憶手段へのアクセスタイミングを説明するタイムチャートTime chart explaining the access timing to the first and second state probability storage means shown in FIG. 図10に示すMAP復号の更なる高速化を従来技術によって図る場合の一例を示す図The figure which shows an example in the case of aiming at further speeding-up of the MAP decoding shown in FIG.

符号の説明Explanation of symbols

100 ターボ復号装置
101 入力データ記憶手段
102 遷移確率計算手段
103 第1の状態確率計算手段
104 第2の状態確率計算手段
105 第3の状態確率計算手段
106 第4の状態確率計算手段
107 第1の状態確率記憶手段
108 第2の状態確率記憶手段
109 メモリ選択手段
110 アドレス制御手段
111 第1の対数尤度計算手段
112 第2の対数尤度計算手段
113 外部値計算手段
114 外部値記憶手段
115 出力データ記憶手段
DESCRIPTION OF SYMBOLS 100 Turbo decoder 101 Input data storage means 102 Transition probability calculation means 103 1st state probability calculation means 104 2nd state probability calculation means 105 3rd state probability calculation means 106 4th state probability calculation means 107 1st State probability storage means 108 Second state probability storage means 109 Memory selection means 110 Address control means 111 First log likelihood calculation means 112 Second log likelihood calculation means 113 External value calculation means 114 External value storage means 115 Output Data storage means

Claims (6)

ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いた最大事後確率復号法が適用されるターボ復号装置において、
ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を偶数個に等分割し、そのうち2つのデータ範囲での一方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記後方確率の計算を行い、その後に前記前方確率の計算を行う第1のウインドウ処理手段と、
他方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記前方確率の計算を行い、その後に前記後方確率の計算を行う第2のウインドウ処理手段と、
2つの記憶領域を有し前記第1のウインドウ処理手段での後方確率の計算結果と前記第2のウインドウ処理手段での前方確率の計算結果とをそれぞれ記憶する状態確率記憶手段と、
前記第1のウインドウ処理手段での前方確率の計算結果と前記状態確率記憶手段が記憶する後方確率の計算結果とに基づく対数尤度比及び前記第2のウインドウ処理手段での後方確率の計算結果と前記状態確率記憶手段が記憶する前方確率の計算結果とに基づく対数尤度比をそれぞれ計算する対数尤度計算手段と、
前記状態確率記憶手段が有する2つの記憶領域の間で、前記第1のウインドウ処理手段が後方確率の計算結果を書き込みそれを前記対数尤度計算手段が読み出す記憶領域と、前記第2のウインドウ処理手段が前方確率の計算結果を書き込みそれを前記対数尤度計算手段が読み出す記憶領域とを前記ウインドウ処理毎に交互に切り替えるメモリ選択手段と、を具備することを特徴とするターボ復号装置。
In a turbo decoding device to which a maximum a posteriori probability decoding method using a sliding window algorithm is applied to error correction decoding of a data sequence error-corrected by a turbo code,
A data range that repeats a predetermined number of times a window process consisting of forward probability calculation and backward probability calculation in units of window ranges is equally divided into an even number, and the data sequence in one data range of two data ranges First window processing means for calculating the backward probability first as window processing and then calculating the forward probability;
Second window processing means for calculating the forward probability first as the window processing for the data string in the other data range, and thereafter calculating the backward probability;
State probability storage means that has two storage areas and stores the calculation result of the backward probability in the first window processing means and the calculation result of the forward probability in the second window processing means,
Log likelihood ratio based on the calculation result of the forward probability in the first window processing means and the calculation result of the backward probability stored in the state probability storage means, and the calculation result of the backward probability in the second window processing means Log likelihood calculation means for calculating a log likelihood ratio based on the calculation result of the forward probability stored in the state probability storage means, and
Between the two storage areas of the state probability storage means, the first window processing means writes the calculation result of the backward probability, and the log likelihood calculation means reads the storage area, and the second window processing A turbo decoding device comprising: memory selecting means for alternately switching a storage area into which a logarithmic likelihood calculating means reads out a calculation result of a forward probability and which is read out by the log likelihood calculating means.
前記状態確率記憶手段が有する2つの記憶領域のそれぞれをウインドウ幅以下の容量を有する複数個の小領域に区分して管理し、前記メモリ選択手段が選択した記憶領域において書き込みと読み出しが競合しないように、アクセスするアドレスを前記複数個の小領域に割り当てる制御を行うアドレス制御手段、を具備することを特徴とする請求項1記載のターボ復号装置。   Each of the two storage areas of the state probability storage means is managed by dividing it into a plurality of small areas having a capacity equal to or less than the window width so that writing and reading do not compete in the storage area selected by the memory selection means. 2. The turbo decoding device according to claim 1, further comprising address control means for performing control for assigning addresses to be accessed to the plurality of small areas. 前記アドレス制御手段は、前記複数個の小領域への割り当てをアクセスするアドレスの下位ビットの論理値によって制御することを特徴とする請求項2記載のターボ復号装置。   3. The turbo decoding apparatus according to claim 2, wherein the address control means controls the allocation to the plurality of small areas by a logical value of lower bits of an address to be accessed. ターボ符号により誤り訂正符号化されたデータ列についての誤り訂正復号にスライディング・ウインドウ・アルゴリズムを用いた最大事後確率復号法が適用されるターボ復号方法において、
ウインドウ範囲を単位とした前方確率の計算と後方確率の計算とからなるウインドウ処理を所定回数繰り返すデータ範囲を偶数個に等分割し、そのうち2つのデータ範囲において、一方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記後方確率の計算を行い、その後に前記前方確率の計算を行う第1のウインドウ処理工程と、
他方のデータ範囲におけるデータ列について前記ウインドウ処理として先に前記前方確率の計算を行い、その後に前記後方確率の計算を行う第2のウインドウ処理工程と、
前記第1のウインドウ処理工程での後方確率の計算結果と前記第2のウインドウ処理工程での前方確率の計算結果とを状態確率記憶手段が有する2つの記憶領域にそれぞれ記憶する工程と、
前記第1のウインドウ処理工程での前方確率の計算結果と前記状態確率記憶手段が記憶する後方確率の計算結果とに基づく対数尤度比及び前記第2のウインドウ処理工程での後方確率の計算結果と前記状態確率記憶手段が記憶する前方確率の計算結果とに基づく対数尤度比をそれぞれ計算する対数尤度計算工程と、
前記状態確率記憶手段が有する2つの記憶領域の間で、前記第1のウインドウ処理工程にて後方確率の計算結果を書き込みそれを前記対数尤度計算工程にて読み出す記憶領域と、前記第2のウインドウ処理工程にて前方確率の計算結果を書き込みそれを前記対数尤度計算工程にて読み出す記憶領域とを前記ウインドウ処理毎に交互に切り替えるメモリ選択工程と、を具備することを特徴とするターボ復号方法。
In a turbo decoding method in which a maximum posterior probability decoding method using a sliding window algorithm is applied to error correction decoding for a data sequence error-corrected by a turbo code,
A data range that repeats a predetermined number of times the window processing consisting of forward probability calculation and backward probability calculation in units of window ranges is equally divided into two data ranges. A first window processing step of calculating the backward probability first as window processing and then calculating the forward probability;
A second window processing step of calculating the forward probability first as the window processing for the data string in the other data range, and then calculating the backward probability;
Storing the calculation result of the backward probability in the first window processing step and the calculation result of the forward probability in the second window processing step respectively in two storage areas of the state probability storage means;
Log likelihood ratio based on the calculation result of the forward probability in the first window processing step and the calculation result of the backward probability stored in the state probability storage means, and the calculation result of the backward probability in the second window processing step And a log likelihood calculation step for calculating a log likelihood ratio based on the calculation result of the forward probability stored in the state probability storage means,
Between the two storage areas of the state probability storage means, a storage area in which the calculation result of the backward probability is written in the first window processing step and read out in the log likelihood calculation step, and the second And a memory selection step of alternately switching a storage area in which a calculation result of a forward probability is written in the window processing step and read out in the log likelihood calculation step for each window processing. Method.
前記状態確率記憶手段が有する2つの記憶領域のそれぞれをウインドウ幅以下の容量を有する複数個の小領域に区分して管理し、前記メモリ選択工程にて選択された記憶領域において書き込みと読み出しが競合しないように、アクセスするアドレスを前記複数個の小領域に割り当てる制御を行うアドレス制御工程、を具備することを特徴とする請求項4記載のターボ復号方法。   Each of the two storage areas of the state probability storage means is divided into a plurality of small areas having a capacity equal to or smaller than the window width, and writing and reading compete in the storage area selected in the memory selection step. 5. The turbo decoding method according to claim 4, further comprising an address control step of performing control for assigning addresses to be accessed to the plurality of small areas. 前記アドレス制御工程では、前記複数個の小領域への割り当てをアクセスするアドレスの下位ビットの論理値によって制御することを特徴とする請求項5記載のターボ復号方法。   6. The turbo decoding method according to claim 5, wherein in the address control step, allocation to the plurality of small areas is controlled by a logical value of lower bits of an address to be accessed.
JP2005025523A 2005-02-01 2005-02-01 Turbo decoder and turbo decoding method Pending JP2006217072A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005025523A JP2006217072A (en) 2005-02-01 2005-02-01 Turbo decoder and turbo decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005025523A JP2006217072A (en) 2005-02-01 2005-02-01 Turbo decoder and turbo decoding method

Publications (1)

Publication Number Publication Date
JP2006217072A true JP2006217072A (en) 2006-08-17

Family

ID=36979944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005025523A Pending JP2006217072A (en) 2005-02-01 2005-02-01 Turbo decoder and turbo decoding method

Country Status (1)

Country Link
JP (1) JP2006217072A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008118628A (en) * 2006-10-12 2008-05-22 Nec Electronics Corp Error correction code decoding device
JP2009060455A (en) * 2007-08-31 2009-03-19 Nec Corp Sliding window turbo decoding processing apparatus and method thereof
KR100895670B1 (en) 2007-01-15 2009-05-08 (주)카이로넷 Turbo decoding method using a sliding window scheme, turbo decoder performing the same, and rf receiver
CN101192837B (en) * 2006-11-29 2011-04-06 美国博通公司 Turbo decoder and method for decoding turbo code signal
US8010867B2 (en) 2006-10-12 2011-08-30 Renesas Electronics Corporation Error correction code decoding device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008118628A (en) * 2006-10-12 2008-05-22 Nec Electronics Corp Error correction code decoding device
US8010867B2 (en) 2006-10-12 2011-08-30 Renesas Electronics Corporation Error correction code decoding device
US8370713B2 (en) 2006-10-12 2013-02-05 Renesas Electronics Corporation Error correction code decoding device
CN101192837B (en) * 2006-11-29 2011-04-06 美国博通公司 Turbo decoder and method for decoding turbo code signal
KR100895670B1 (en) 2007-01-15 2009-05-08 (주)카이로넷 Turbo decoding method using a sliding window scheme, turbo decoder performing the same, and rf receiver
JP2009060455A (en) * 2007-08-31 2009-03-19 Nec Corp Sliding window turbo decoding processing apparatus and method thereof

Similar Documents

Publication Publication Date Title
JP5479580B2 (en) Method and apparatus for parallel TURBO decoding in LTE
KR101323444B1 (en) Iterative decoder
JP2002534836A (en) Apparatus and method for interleaving / deinterleaving in a communication system
EP1775842A2 (en) Communications device and wireless communications system
CN104092470B (en) A kind of Turbo code code translator and method
JP6022085B2 (en) Method and apparatus for realizing multimode decoder
US7584389B2 (en) Turbo decoding apparatus and method
EP1724934A1 (en) Method of maximum a posteriori probability decoding and decoding apparatus
JP2006217072A (en) Turbo decoder and turbo decoding method
JP4837645B2 (en) Error correction code decoding circuit
US20130007568A1 (en) Error correcting code decoding device, error correcting code decoding method and error correcting code decoding program
TWI422166B (en) Address generation for contention-free memory mappings of turbo codes with arp (almost regular permutation) interleaves
KR100628201B1 (en) Method for Turbo Decoding
CN108270452B (en) Turbo decoder and decoding method
JP2009246474A (en) Turbo decoder
EP1912335A1 (en) Turbo decoding apparatus with partial storage and recalculation of state metrics
US9130728B2 (en) Reduced contention storage for channel coding
US9015551B2 (en) Decoding apparatus with de-interleaving efforts distributed to different decoding phases and related decoding method thereof
CN105577196A (en) Turbo code data interleaving method and interleaver based on broadband OFDM power line communication system
CN101373977B (en) Apparatus and method for simultaneously performing maximum posteriori probability decoding interleaving and deinterleaving
May et al. Evaluation of high throughput turbo-decoder architectures
KR20090030378A (en) Apparatus and method for block interleaving in mobile communication system
CN113992212B (en) Data interleaving method and FPGA
Abdel-Hamid et al. Memory conflict analysis for a multi-standard, reconfigurable turbo decoder
CN107302371B (en) Turbo code decoding system and decoding method