JPH0951278A - Viterbi decoder - Google Patents

Viterbi decoder

Info

Publication number
JPH0951278A
JPH0951278A JP20241895A JP20241895A JPH0951278A JP H0951278 A JPH0951278 A JP H0951278A JP 20241895 A JP20241895 A JP 20241895A JP 20241895 A JP20241895 A JP 20241895A JP H0951278 A JPH0951278 A JP H0951278A
Authority
JP
Japan
Prior art keywords
circuit
path
traceback
memory
output
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
JP20241895A
Other languages
Japanese (ja)
Inventor
Shigeru Okita
茂 沖田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP20241895A priority Critical patent/JPH0951278A/en
Publication of JPH0951278A publication Critical patent/JPH0951278A/en
Pending legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

PROBLEM TO BE SOLVED: To facilitate semiconductor circuit integration by reducing the circuit scale of a path memory while keeping high speed decoding performance. SOLUTION: A path memory circuit for the Viterbi decoder is configured by memory circuits 21a-21d storing plural steps of path selection signals, trace back circuits 22a-22d tracing back a storage content of the memory circuits based on a maximum likelihood path selection signal, output buffer circuits 24a-24d rearranging outputs of the trace back circuits in a prescribed order, and a trace back control circuit 25. The trace back control circuit 25 operates plural sets of independent circuit operations a-d each employing each of the memory circuits 21a-21d, the trace back circuits 22a-22d, and output buffer circuits 24a-24d alternately for the memory update operation, the trace back operation and the output operation while shifting the phases among the sets a-d.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、たたみ込み符号の
最尤復号を効率的に実現するビタビ復号器に係り、さら
に詳しくは、そのパスメモリの回路規模を大幅に削減し
集積回路化に有利なビタビ復号器に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a Viterbi decoder that efficiently realizes maximum likelihood decoding of a convolutional code, and more specifically, it is advantageous for integrated circuit integration by greatly reducing the circuit scale of its path memory. Viterbi decoder.

【0002】[0002]

【従来の技術】ビタビ復号法は、訂正能力の高い誤り訂
正法として、ディジタル伝送やディジタル記録の分野で
さかんに採用されている。そのアルゴリズムは、文献
[1] G.D.Forney,Jr.著、“The Viterbi Algorithm ”,
Proceedings of IEEE, Vol.61, No.3, pp.268-278, Ma
r.1973.に詳しく説明されている。
2. Description of the Related Art The Viterbi decoding method has been widely adopted in the field of digital transmission and digital recording as an error correction method having a high correction capability. The algorithm is
[1] GDForney, Jr., “The Viterbi Algorithm”,
Proceedings of IEEE, Vol.61, No.3, pp.268-278, Ma
It is described in detail in r.1973.

【0003】パスメモリの構成を示す前に、たたみ込み
符号を復号するビタビ復号法の動作原理を要約してお
く。図3は、たたみ込み符号の符号器の構成例を示す。
説明の都合で入力側を右側にして示してある。右側の入
力端子から直列に入力される入力信号Si は、順次6bi
t のシフトレジスタに取り込まれるとともに、排他的論
理和回路の出力Y1,Y2 がたたみ込み符号として左側
の出力端子へ出力される。この符号器の拘束長はK=
7、符号化率はR=1/2、状態数はNs =64であ
る。ビタビ復号の操作は、受信された符号に基づいて、
この符号器のレジスタの内容で決まる状態S={S5
4 ,S3 ,S2 ,S1 ,S0 }の遷移を推定すること
と等価である。状態Sは、時刻t−1で図3の状態であ
るとすると、次の時刻tには{S4,S3 ,S2
1 ,S0 ,S-1}になる。
Before showing the structure of the path memory, the operating principle of the Viterbi decoding method for decoding a convolutional code will be summarized. FIG. 3 shows a configuration example of a convolutional code encoder.
For convenience of explanation, the input side is shown on the right side. The input signals S i input in series from the right input terminal are sequentially 6 bi
The outputs Y 1 and Y 2 of the exclusive OR circuit are output to the output terminal on the left side as convolutional codes while being taken into the shift register of t. The constraint length of this encoder is K =
7, the coding rate is R = 1/2, and the number of states is Ns = 64. The Viterbi decoding operation is based on the received code,
State S = {S 5 , determined by the contents of the register of this encoder,
It is equivalent to estimating the transitions of S 4 , S 3 , S 2 , S 1 , S 0 }. If the state S is the state of FIG. 3 at time t−1, then at the next time t, {S 4 , S 3 , S 2 ,
S 1 , S 0 , S -1 }.

【0004】図3の構成の符号器の場合、レジスタのシ
フトアウトビットとシフトインビットとに着目すれば、
レジスタの状態遷移はある状態の組と別の状態の組との
間で起こる。これを図4に示す。遷移先の状態の組を中
心に考えると、それぞれ6bit からなる64通りの状態
Sを10進数で表現し、奇数(m)で現される状態と偶
数(n)で現される状態で場合分けして、図4のように
遷移元(iあるいはj)と遷移先(mあるいはn)を関
係づけることができる。なお、以下の説明において、
“x>>1”は、xをLSB側へ1bit シフトした数を示
し、“x^y”は、xとyとのビット毎の排他的論理和
演算の結果の数を示すものとする。
In the case of the encoder having the configuration shown in FIG. 3, focusing on the shift-out bit and the shift-in bit of the register,
Register state transitions occur between one set of states and another. This is shown in FIG. Considering mainly the set of states at the transition destination, 64 states S each consisting of 6 bits are represented by a decimal number and divided into cases represented by odd numbers (m) and even numbers (n). Then, as shown in FIG. 4, the transition source (i or j) and the transition destination (m or n) can be associated with each other. In the following description,
It is assumed that "x >>1" indicates the number obtained by shifting x to the LSB side by 1 bit, and "x ^ y" indicates the number of results of the exclusive OR operation of each bit of x and y.

【0005】ビタビ復号は復号パスの候補を、各状態に
対応したパスメトリックに基づいて逐次的に切り捨てて
いくことで、常に状態数(Ns )分の復号パス(生き残
りパス)しか残さないようにする。こうすることで、効
率的な最尤復号を実現できるわけである。図5のように
各生き残りパスは、ある適当な長さ(Ms )より過去に
相当するパスについて1本に合流する確率が高い。生き
残りパスのうち対応するパスメトリックが最小のパス
(最尤パス)を、Ms 段分さかのぼった遷移に対応する
情報ビットδ(t−Ms )がビタビ復号出力になる。
In Viterbi decoding, candidates for a decoding path are sequentially truncated based on a path metric corresponding to each state so that only decoding paths (surviving paths) corresponding to the number of states (Ns) are left. To do. By doing so, efficient maximum likelihood decoding can be realized. As shown in FIG. 5, each of the surviving paths has a higher probability of merging into one path corresponding to the past than a certain suitable length (Ms). The information bit δ (t−Ms) corresponding to the transition traced back by Ms stages of the path having the smallest path metric (maximum likelihood path) among the surviving paths becomes the Viterbi decoding output.

【0006】時刻がt−1からtに移るときの遷移先の
状態n,mのパスメトリックΓt (n ) ,Γt (m) の更新
は、図4の状態遷移の組で以下の式(1)及び(2)の
ようにして行われる。
The update of the path metrics Γ t (n ) and Γ t (m) of the transition destination states n and m when the time shifts from t−1 to t is performed by the following equation in the set of state transitions shown in FIG. This is performed as in (1) and (2).

【0007】[0007]

【数1】 Γt (n) =min{Γt-1 (i) +λt (ν),Γt-1 (j) +λt (ν')}…(1) Γt (m) =min{Γt-1 (i) +λt (ν'),Γt-1 (j) +λt (ν)}…(2) ここでνとν’はブランチコードと呼び、状態(i),
(j)から(m),(n)へ遷移するときのそれぞれの
符号化ビット(Y1 0 )に相当し、ν’=ν^(11)で
ある。ブランチメトリックλ(ν)及びλ(ν’)は、
各ブランチコードに対応した(デパンクチャ後の)復調
データの誤差(距離)に相当し、各復号ステップごとに
4つ発生される。例えば3bit で表現する場合は0〜7
の値をとる。各状態遷移の組(Ns /2=32組ある)
では、λ(00)とλ(11)か、あるいはλ(01)とλ(10)のい
ずれかの組を用いてパスメトリックを計算する。
Γ t (n) = min {Γ t-1 (i) + λ t (ν), Γ t-1 (j) + λ t (ν ')} ... (1) Γ t (m) = min {Γ t-1 (i) + λ t (ν '), Γ t-1 (j) + λ t (ν)} ... (2) where ν and ν'are called branch codes, and state (i),
It corresponds to each coded bit (Y 1 Y 0 ) at the time of transition from (j) to (m) and (n), and ν ′ = ν̂ (11). The branch metrics λ (ν) and λ (ν ′) are
It corresponds to the error (distance) of the demodulated data (after depuncturing) corresponding to each branch code, and four are generated at each decoding step. For example, 0 to 7 when expressed in 3 bits
Takes the value of. Each state transition set (Ns / 2 = 32 sets)
Then, the path metric is calculated using either λ (00) and λ (11) or λ (01) and λ (10).

【0008】また、パスメトリックの計算と同時に、い
ずれの状態から状態n,mへ遷移したかを示す選択フラ
グβt (n) ,βt (m) を例えば以下の式(3)及び
(4)に示す条件で発生する。
Simultaneously with the calculation of the path metric, the selection flags β t (n) and β t (m) indicating which state has transited to the states n and m are set by, for example, the following equations (3) and (4). ) Occurs under the conditions shown in.

【0009】[0009]

【数2】 Γt-1 (i) +λt (ν)<Γt-1 (j) +λt (ν’)のとき βt (n) =0, Γt-1 (i) +λt (ν)≧Γt-1 (j) +λt (ν’)のとき βt (n) =1 …(3) Γt-1 (i) +λt (ν’)<Γt-1 (j) +λt (ν)のとき βt (m) =0, Γt-1 (i) +λt (ν’)≧Γt-1 (j) +λt (ν)のとき βt (m) =1 …(4) これらは、後述の生き残りパスの更新等で用いる。式
(1) 〜(4) までの演算は、加算比較選択ユニット(以
下、ACSUと省略する)で実行される。その回路構成
を図6に示す。
When Γ t-1 (i) + λ t (ν) <Γ t-1 (j) + λ t (ν ′), β t (n) = 0, Γ t-1 (i) + λ t ( When ν) ≧ Γ t-1 (j) + λ t (ν ') β t (n) = 1 (3) Γ t-1 (i) + λ t (ν') <Γ t-1 (j) When + λ t (ν), β t (m) = 0, Γ t-1 (i) + λ t (ν ') ≧ Γ t-1 (j) + λ t (ν), β t (m) = 1 (4) These are used in updating survivor paths, which will be described later. formula
The operations (1) to (4) are executed by an addition / comparison / selection unit (hereinafter abbreviated as ACSU). The circuit configuration is shown in FIG.

【0010】各選択フラグに基づき、それぞれの状態で
残す復号パスの候補(生き残りパス)を以下に示す式
(5)及び(6)のようにして更新する(情報ビットを
残す場合である、以下直接的な実現と称す)。
Based on each selection flag, the candidate of the decoding path (surviving path) to be left in each state is updated as shown in the following equations (5) and (6) (when information bits are left, Called direct realization).

【0011】[0011]

【数3】 βt (n) =0のとき Vt (n) ={0,vt-1 (i,0) ,vt-1 (i,1) ,…,vt-1 (i,Ms-1)}, βt (n) =1のとき Vt (n) ={0,vt-1 (j,0) ,vt-1 (j,1) ,…,vt-1 (j,Ms-1)} …(5) βt (m) =0のとき Vt (m) ={1,vt-1 (i,0) ,vt-1 (i,1) ,…,vt-1 (i,Ms-1)}, βt (m) =1のとき Vt (m) ={1,vt-1 (j,0) ,vt-1 (j,1) ,…,vt-1 (j,Ms-1)} …(6) ここで、vt (S,k) は、時刻tで状態Sに対応する生き
残りパスの、現在からkステップさかのぼった(時刻t
−kに対応する)情報ビットである。また、状態SのM
s段の生き残りパスは、次に示す式(7)となる。
When β t (n) = 0, V t (n) = {0, v t-1 (i, 0) , v t-1 (i, 1) , ..., V t-1 (i , Ms-1) }, when β t (n) = 1 V t (n) = {0, v t-1 (j, 0) , v t-1 (j, 1) , ..., v t- 1 (j, Ms-1) } (5) When β t (m) = 0 V t (m) = {1, v t-1 (i, 0) , v t-1 (i, 1) , ..., v t-1 (i, Ms-1) }, when β t (m) = 1 V t (m) = {1, v t-1 (j, 0) , v t-1 (j , 1) , ..., v t-1 (j, Ms-1) } (6) where v t (S, k) is k steps from the present of the surviving path corresponding to state S at time t. Dating back (time t
Information bits (corresponding to -k). In addition, M in state S
The surviving path of s stages is given by the following expression (7).

【0012】[0012]

【数4】 Vt (S) ={vt (S,0) ,vt (S,1) ,vt (S,2) ,…,vt (S,Ms)} ただし、Sが偶数のときvt (S,0) =0、Sが奇数のときvt (S,0) =1 …(7) なお、各生き残りパスの右側(v(S,Ms))が最過去の情
報ビットに相当する。
V t (S) = {v t (S, 0) , v t (S, 1) , v t (S, 2) , ..., V t (S, Ms) } where S is an even number When v t (S, 0) = 0, and S is an odd number v t (S, 0) = 1 (7) In addition, the right side (v (S, Ms) ) of each surviving path is the oldest information. Equivalent to a bit.

【0013】各生き残りパスのうち、それぞれに対応す
るパスメトリックが最小の生き残りパスが最尤パスであ
り、ビタビ復号出力Δt は、以下に示す式(8)のよう
にして決定される。
Among the survivor paths, the survivor path having the smallest path metric corresponding to each survivor path is the maximum likelihood path, and the Viterbi decoding output Δt is determined by the following equation (8).

【0014】[0014]

【数5】 Δt =δ(t−Ms )=vt (SL,Ms) …(8) ここで、[Number 5] Δ t = δ (t-Ms ) = v t (SL, Ms) ... (8) here,

【数6】 Γt (SL)=min{Γt (0) ,Γt (1) ,Γt (2) ,…,Γt (Ns-1)} …(9) であり、状態SL は最尤パスに対応する状態(最尤パス
情報)を表す。
## EQU6 ## Γ t (SL) = min {Γ t (0) , Γ t (1) , Γ t (2) ,…, Γ t (Ns-1) } (9), and the state SL is The state (maximum likelihood path information) corresponding to the maximum likelihood path is shown.

【0015】前記式(5) 〜(8) に対応した操作を実現す
る従来のパスメモリ回路は、図7のような構成をとる。
各レジスタ(フリップフロップ)の入力側の信号が時刻
tに対応した生き残りパスの情報ビットであり、出力側
の信号が時刻t−1に対応した生き残りパスの情報ビッ
トである。ビタビ復号出力は、最尤パス情報SL,t によ
りvt (0,Ms)〜vt (Ns,Ms) のいずれかを選択して得ら
れるので、図8の構成のセレクタにより実現できる。
A conventional path memory circuit which realizes the operations corresponding to the above equations (5) to (8) has a configuration as shown in FIG.
The signal on the input side of each register (flip-flop) is the information bit of the surviving path corresponding to time t, and the signal on the output side is the information bit of the surviving path corresponding to time t-1. Viterbi decoding output, the maximum likelihood path information S L, v by t t (0, Ms) ~v t (Ns, Ms) so obtained by selecting one of, can be realized by the configuration of the selector of FIG.

【0016】高速な(例えば、数+Mbps以上の)ビタビ
復号を情報ビットを残す手法で実現するには、Ns/2
=32の状態遷移の組について、式(5)及び(6)に
示すように1ステップ=1クロックで一気にパスメモリ
(=生き残りパス)の更新を行う必要がある。このた
め、パスメモリをRAMで構成することは不可能で、図
7のパスメモリを構成する場合、Ms ×64個のセレク
タと(Ms −1)×64個のレジスタ(フリップフロッ
プ)が必要となる。
To realize high-speed (for example, several + Mbps or more) Viterbi decoding by a method of leaving information bits, Ns / 2 is required.
For the set of state transitions of = 32, it is necessary to update the path memory (= surviving path) at once in one step = 1 clock as shown in the equations (5) and (6). For this reason, it is impossible to configure the path memory with the RAM, and when configuring the path memory of FIG. 7, Ms × 64 selectors and (Ms −1) × 64 registers (flip-flops) are required. Become.

【0017】[0017]

【発明が解決しようとする課題】状態数64のたたみ込
み符号をマザーコードとした、符号化率R=7/8のパ
ンクチャド符号に対応したビタビ復号を実現するために
は、そのパスメモリの段数Ms を100程度とする必要
がある(文献[2] 安田、平田、小川著、“ヴィタビ復号
の容易な高符号化率たたみ込み符号とその諸特性”,信
学論(B),Vol.J64-B, No7, pp.573-580, Jul.1981. を参
照)。
In order to realize the Viterbi decoding corresponding to the punctured code with the code rate R = 7/8, in which the convolutional code with the number of states 64 is the mother code, the path memory must be It is necessary to set the number of rounds Ms to about 100 (Reference [2], Yasuda, Hirata, and Ogawa, "High-code-rate convolutional codes with easy Viterbi decoding and their characteristics", Theological Theory (B), Vol. See J64-B, No7, pp.573-580, Jul.1981.).

【0018】図7の構成によれば、そのパスメモリを構
成するのに、例えば100×64個のセレクタと99×
64個のレジスタが必要となり、セレクタ当たりのゲー
ト数を3ゲート、レジスタ(フリップフロップ)当たり
のゲート数を5ゲートとすると、合計約50kゲートに
もなり、回路規模が大きくIC化が困難であった。
According to the configuration of FIG. 7, for example, 100 × 64 selectors and 99 × are used to configure the path memory.
64 registers are required, and if the number of gates per selector is 3 and the number of gates per register (flip-flop) is 5, the total is about 50 k gates, and the circuit scale is large and it is difficult to form an IC. It was

【0019】このパスメモリを縮小する有効な方法は、
レジスタをより集積度の高いRAMで構成することであ
る。しかしながら、前記に示した手法でパスメモリの内
容を更新するにはデータバスがレジスタの数だけ必要で
現実的でない。IC化したときには配線の数が膨大とな
り、結局チップサイズは小さくならない。
An effective way to reduce this path memory is:
This is to configure the register with a RAM having a higher degree of integration. However, updating the contents of the path memory by the method described above requires the number of data buses as registers, which is not realistic. When integrated into an IC, the number of wirings becomes enormous, and the chip size does not decrease in the end.

【0020】パスメモリとしてRAMが使える手法に、
トレースバック法がある。これは文献[3]C.M,Rader著、
“Management in a Viterbi Decoder ”,IEEE Trans.
on Commun., Vol.COM-29, No.9, pp.1399-1401, Sep.19
81. に詳しい。トレースバック法は、パスメモリに復号
ステップ(時刻)ごとの選択フラグを記憶しておき、時
刻tにおける最尤パスに対応する状態SL,t からMs 段
分の状態遷移をトレースバックしてビタビ復号出力δ
(t−Ms )を得る手法である。トレースバックは図9
の回路構成で実現できる。ただし、単純に各復号ステッ
プごとにこのトレースバックを行っていたのでは、高速
(数+Mbps)の復号レートを実現することはできない。
A method in which a RAM can be used as a path memory,
There is a traceback method. This is from [3] CM, Rader,
"Management in a Viterbi Decoder", IEEE Trans.
on Commun., Vol.COM-29, No.9, pp.1399-1401, Sep.19
Details on 81. In the traceback method, a selection flag for each decoding step (time) is stored in a path memory, and the state transition corresponding to the maximum likelihood path at time t from the state S L, t to Ms stages is traced back to perform Viterbi. Decoding output δ
This is a method of obtaining (t-Ms). Traceback is shown in Figure 9.
It can be realized with the circuit configuration of. However, simply performing this traceback at each decoding step cannot realize a high-speed (several + Mbps) decoding rate.

【0021】以上の問題に鑑み本発明の課題は、高速復
号性能を保持しつつ、前記パスメモリの回路規模を縮小
した半導体集積回路化が容易なビタビ復号器を提供する
ことである。
In view of the above problems, it is an object of the present invention to provide a Viterbi decoder in which the circuit scale of the path memory is reduced and which can be easily integrated into a semiconductor integrated circuit while maintaining high-speed decoding performance.

【0022】[0022]

【課題を解決するための手段】前記課題を解決するため
の本願第1の発明は、状態遷移のブランチの確かさを示
す量であるブランチメトリックを計算するブランチメト
リック演算回路と、各状態毎にパスメトリックを演算す
るとともにいずれのパスを選択したかを示すパス選択信
号を出力する加算比較選択回路と、各状態毎のパスメト
リックから最尤パスを選択して最尤パス選択信号を出力
する最尤判定回路と、復号の候補であるパスを記憶保持
するパスメモリ回路とを備えて構成されるビタビ復号器
において、前記パスメモリ回路は、前記パス選択信号を
複数ステップ分保持するメモリ回路と、前記最尤パス選
択信号に基づいて前記メモリ回路の記憶内容をトレース
バックするトレースバック回路と、前記トレースバック
回路の出力を所定の順序に並べ替える出力バッファ回路
と、トレースバック制御回路とからなり、前記メモリ回
路、前記トレースバック回路及び前記出力バッファ回路
からなる互いに独立に動作可能な複数組を具備し、前記
トレースバック制御回路は、前記各組のパスメモリ更新
動作と、トレースバック動作と、出力動作とを各組間で
位相をずらして交互に動作せしめることを要旨とする。
According to a first aspect of the present invention for solving the above-mentioned problems, a branch metric operation circuit for calculating a branch metric which is a quantity indicating the certainty of a branch of a state transition, and a branch metric operation circuit for each state are provided. An addition / comparison / selection circuit that calculates a path metric and outputs a path selection signal that indicates which path is selected, and a maximum output that outputs a maximum likelihood path selection signal by selecting the maximum likelihood path from the path metrics for each state. In a Viterbi decoder configured to include a likelihood determination circuit and a path memory circuit that stores and holds a path that is a candidate for decoding, the path memory circuit includes a memory circuit that holds the path selection signal for a plurality of steps, A traceback circuit for tracing back the stored contents of the memory circuit based on the maximum likelihood path selection signal, and a predetermined output of the traceback circuit An output buffer circuit that is rearranged in order, and a traceback control circuit, and a plurality of sets of the memory circuit, the traceback circuit, and the output buffer circuit that are operable independently of each other are provided, and the traceback control circuit is The summary is that the path memory updating operation, the traceback operation, and the output operation of each group are alternately operated by shifting the phase between the groups.

【0023】本願第1の発明は、それぞれメモリ回路と
トレースバック回路と出力バッファ回路とからなる組を
複数組備えることにより、パスメモリの更新動作と、ト
レースバック動作と、トレースバックしながら復号デー
タを所定の順序に並べ替えて出力する出力動作とをそれ
ぞれ複数の組に交互に動作させることができる。これに
よりパスメモリをRAMで構成可能として回路規模を縮
小するとともに、一つの組がパスメモリの更新動作中に
他の組がトレースバック及び出力動作を同時並列的に行
うので、連続的で高速なビタビ復号を実現することが可
能となる。
According to the first invention of the present application, a plurality of sets each including a memory circuit, a traceback circuit, and an output buffer circuit are provided, so that the path memory update operation, the traceback operation, and the decoded data while tracing back are performed. Can be alternately operated in a plurality of sets. As a result, the path memory can be configured with RAM to reduce the circuit scale, and while one group performs traceback and output operations simultaneously in parallel while the path memory is being updated, continuous and high-speed operation is possible. Viterbi decoding can be realized.

【0024】また、本願第2の発明は、状態遷移のブラ
ンチの確かさを示す量であるブランチメトリックを計算
するブランチメトリック演算回路と、各状態毎にパスメ
トリックを演算するとともにいずれのパスを選択したか
を示すパス選択信号を出力する加算比較選択回路と、各
状態毎のパスメトリックから最尤パスを選択して最尤パ
ス選択信号を出力する最尤判定回路と、復号の候補であ
るパスを記憶保持するパスメモリ回路とを備えて構成さ
れるビタビ復号器において、前記パスメモリ回路は、前
記パス選択信号を複数ステップ分保持するメモリ回路
と、前記最尤パス選択信号に基づいて前記メモリ回路の
記憶内容をトレースバックするトレースバック回路と、
前記トレースバック回路の出力を所定の順序に並べ替え
る出力バッファ回路と、トレースバック制御回路とから
なり、前記メモリ回路及び前記トレースバック回路から
なる互いに独立に動作可能な複数組を具備し、前記トレ
ースバック制御回路は、前記各組のパスメモリ更新動作
と、トレースバック動作と、出力動作とを各組間で位相
をずらして交互に動作せしめ、前記出力バッファ回路
は、各トレースバック回路の出力を多重して所定の順序
に並べ替えることを要旨とする。
In the second invention of the present application, a branch metric calculation circuit for calculating a branch metric which is a quantity indicating the certainty of a branch of a state transition, a path metric for each state, and which path is selected. The addition / comparison / selection circuit that outputs a path selection signal that indicates whether or not the maximum likelihood path selection signal that outputs the maximum likelihood path selection signal from the path metric for each state, and the path that is a candidate for decoding In a Viterbi decoder configured to store and hold a path memory circuit that holds the path selection signal for a plurality of steps, and the memory based on the maximum likelihood path selection signal. A traceback circuit that traces back the stored contents of the circuit,
An output buffer circuit for rearranging the output of the traceback circuit in a predetermined order; and a traceback control circuit, comprising a plurality of sets of the memory circuit and the traceback circuit, which are operable independently of each other, The back control circuit causes the path memory update operation, the trace back operation, and the output operation of each set to be alternately operated by shifting the phase between each set, and the output buffer circuit outputs the output of each trace back circuit. The gist is to multiplex and rearrange in a predetermined order.

【0025】本願第2の発明は、パスメモリの更新動作
と、トレースバック動作と、トレースバックしながら復
号データを出力する出力動作とをそれぞれ複数の組に交
互に動作させ、出力バッファは各復号データ出力を切り
かえながら入力して所定の順序に並べ替えて出力するこ
とができる。これによりパスメモリをRAMで構成可能
として回路規模を縮小するとともに、一つの組がパスメ
モリの更新動作中に他の組がトレースバック及び出力動
作を同時並列的に行うので、連続的で高速なビタビ復号
を実現することが可能となる。
In the second invention of the present application, a path memory update operation, a traceback operation, and an output operation for outputting decoded data while tracing back are alternately operated in a plurality of groups, and an output buffer is provided for each decoding. It is possible to input while switching the data output, rearrange in a predetermined order, and output. As a result, the path memory can be configured with RAM to reduce the circuit scale, and while one group performs traceback and output operations simultaneously in parallel while the path memory is being updated, continuous and high-speed operation is possible. Viterbi decoding can be realized.

【0026】また、本願発明においては、前記メモリ回
路を4組具備することができる。また、本願発明におい
ては、リードモディファイライト動作可能な前記メモリ
回路を2組具備することができる。また、本願発明にお
いては、前記メモリ回路を3組具備することができる。
また、本願発明においては、前記トレースバック回路を
複数組の間で時分割共有化することができる。
Further, in the present invention, four sets of the memory circuits can be provided. Further, in the present invention, two sets of the memory circuits capable of the read modify write operation can be provided. In addition, the present invention may include three sets of the memory circuits.
Further, in the present invention, the traceback circuit can be time-shared by a plurality of sets.

【0027】[0027]

【発明の実施の形態】次に、図面を参照して本発明の実
施の形態を詳細に説明する。図1は、本発明に係るビタ
ビ復号器の第1の実施の形態を示すブロック図である。
同図において、ビタビ復号器は、位相同期回路10と、
デパンクチャ回路11と、BMU(Branch Metric Uni
t)12と、正規化回路13と、ACSU14と、最尤
判定部15と、Ms 段パスメモリ20とを備えて構成さ
れている。
Next, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a first embodiment of a Viterbi decoder according to the present invention.
In the figure, the Viterbi decoder includes a phase synchronization circuit 10,
Depuncture circuit 11 and BMU (Branch Metric Uni
t) 12, a normalization circuit 13, an ACSU 14, a maximum likelihood determination section 15, and an Ms stage path memory 20.

【0028】Ms 段パスメモリ20は、それぞれ64ビ
ット×(2×Ms )段の4組のRAM21a〜21d
と、4つのトレースバック回路22a〜22dと、トレ
ースバック回路22a及びトレースバック回路22cの
出力を選択するセレクタ23aと、トレースバック回路
22b及びトレースバック回路22dの出力を選択する
セレクタ23bと、セレクタ23aで選択されたトレー
スバック回路の出力をラストイン・ファーストアウト
(以下、LIFOと略記する)の順序で並べ変えるバッ
ファA(24a)と、セレクタ23bで選択されたトレ
ースバック回路の出力をLIFOの順序で並べ変えるバ
ッファB(24b)と、バッファAまたはバッファBの
出力を選択してビタビ復号出力とするセレクタ26と、
トレースバック制御回路25とから構成されている。
The Ms stage path memory 20 includes four sets of RAMs 21a to 21d each having 64 bits × (2 × Ms) stages.
, Four traceback circuits 22a to 22d, a selector 23a that selects the outputs of the traceback circuits 22a and 22c, a selector 23b that selects the outputs of the traceback circuits 22b and 22d, and a selector 23a. The buffer A (24a) that rearranges the output of the traceback circuit selected in step 1 in the order of last-in first-out (hereinafter abbreviated as LIFO) and the output of the traceback circuit selected by the selector 23b in the order of LIFO. A buffer B (24b) which is rearranged by the above, and a selector 26 which selects the output of the buffer A or the buffer B as a Viterbi decoding output,
And a traceback control circuit 25.

【0029】次に、本実施の形態の動作を説明する。軟
判定されたデータ(復調データId,Qd )は、位相同
期回路10により位相同期確定後、デパンクチャ回路1
1により送信側のパンクチャ処理に対応してデパンクチ
ャ処理が施され、BMU12によりブランチメトリック
が算出される。次いで、正規化回路13によるパスメト
リックのオーバフローを防ぐための正規化処理の後、各
状態に対応したACSU14(図6に示した構成を32
組備える)にてパスメトリックの更新が行われる。各パ
スメトリックのうち最尤パスに対応した最尤パスメトリ
ックΓL (通常最小値)が最尤判定部15にて判定さ
れ、これが前記正規化に用いられる。
Next, the operation of this embodiment will be described. The soft-decision data (demodulated data Id, Qd) is phase-locked by the phase-locking circuit 10, and then the depuncture circuit 1
1 performs depuncture processing corresponding to the puncture processing on the transmission side, and the BMU 12 calculates a branch metric. Next, after the normalization processing by the normalization circuit 13 for preventing the overflow of the path metric, the ACSU 14 (the configuration shown in FIG.
The path metric is updated in (preparation). Among the respective path metrics, the maximum likelihood path metric Γ L (usually the minimum value) corresponding to the maximum likelihood path is judged by the maximum likelihood judging section 15, and this is used for the normalization.

【0030】またこの最尤パスメトリックΓL は、位相
同期とパンクチャのレートが整合していないとき、値が
増大する傾向にあるため、この同期判定を行い、適当な
位相とデパンクチャ処理が選択される。
The value of this maximum likelihood path metric Γ L tends to increase when the rates of phase synchronization and puncture do not match. Therefore, this synchronization determination is performed and appropriate phase and depuncture processing is selected. .

【0031】ビタビ復号の候補を必要段数(Ms 段)記
憶・保持するのが、Ms 段パスメモリ回路20である。
この内容の更新には各状態に対応した選択フラグβ(0)
〜β(63)と、最尤パスに対応した最尤パス情報を用い
る。なお、必要段数よりも十分大なる段数分記憶保持す
ることが可能ならば、必ずしも最尤パス情報を必要とし
ない。
The Ms-stage path memory circuit 20 stores and holds the required number of Viterbi decoding candidates (Ms stages).
To update this content, select flag β (0) corresponding to each state
~ Β (63) and maximum likelihood path information corresponding to the maximum likelihood path are used. Note that the maximum likelihood path information is not necessarily required if it is possible to store and hold the number of stages sufficiently larger than the required number of stages.

【0032】トレースバック法を用いて数十Mbpsの復号
レートを実現する要点は、生き残りパスをいったんMs
段さかのぼったときに、すべての生き残りが1本に合流
している場合には、さらにその先も1本に合流している
(図5の破線部分)という、きわめて明快で単純な原理
を利用することである。
The key point for realizing a decoding rate of several tens of Mbps using the traceback method is that the survivor path is
It uses a very clear and simple principle that when all the survivors join together when going back up, they also join one beyond (dashed line in Fig. 5). That is.

【0033】例えば、メモリ回路として2×Ms 段分用
意しておき、トレースバックの1周期を2×Ms ステッ
プとする。上記の原理から、いったんMs 段トレースバ
ックするとそこから先のトレースバックは、(ビタビ復
号の訂正能力の範囲内で正しい)復号出力を次々と得る
ことができる。kステップのトレースバック後のレジス
タの内容Sr,k を、
For example, 2 × Ms stages are prepared as a memory circuit, and one cycle of traceback is set to 2 × Ms steps. From the above principle, once Ms stages of traceback are performed, subsequent tracebacks can successively obtain decoded outputs (correct within the correction capability of Viterbi decoding). register contents S r, k after traceback of k steps,

【数7】 Sr,k =βt-k (Sr,k-1)^(Sr,k-1 >>1) …(10) とする。ここで、Sr,0 =SL,t である。すると、ビタ
ビ復号出力はMs ≦k≦2×Ms の範囲で有効となり、
## EQU00007 ## Let S r, k = β tk (Sr, k-1) ^ (S r, k-1 >> 1) (10). Here, S r, 0 = S L, t . Then, the Viterbi decoding output becomes valid in the range of Ms ≤ k ≤ 2 × Ms,

【数8】 δ(t−k)=Sr,k ^1 …(11) となる。ただし、時間的に逆の順番で再生されるので、
LIFO機能を有する出力バッファを設けて正しい順に
出力する。出力バッファには、例えば1ビット×Ms ワ
ードのメモリまたは左右シフト可能なシフトレジスタを
用いても良い。このように、1回のトレースバックでビ
タビ復号出力がMs ビット得られる。
(8) δ (t−k) = S r, k ^ 1 (11) However, since they are played in the reverse order in terms of time,
An output buffer having a LIFO function is provided to output in the correct order. As the output buffer, for example, a memory of 1 bit × Ms word or a shift register capable of left / right shift may be used. In this way, the Viterbi decoded output can be obtained with Ms bits by one traceback.

【0034】連続的にビタビ復号を行うには、2×Ms
段のメモリ回路21と図9のトレースバック回路22を
それぞれa〜dの4組用意し、時間差を与えて動作さ
せ、それぞれの復号出力をセレクタ23a,23bで切
り替えて用いる。その動作を説明するタイミング図を図
10に示す。2組でなくて4組用意するのは、RAMの
読み出し1周期のうち出力に直接寄与するのがその半分
の時間だからである。
To perform Viterbi decoding continuously, 2 × Ms
Four sets of the memory circuits 21 of the stages and the traceback circuit 22 of FIG. 9 are prepared respectively a to d, are operated with a time difference, and the respective decoded outputs are switched by the selectors 23a and 23b and used. FIG. 10 shows a timing chart for explaining the operation. The reason why four sets are prepared instead of two sets is that only one half of the one reading cycle of the RAM directly contributes to the output.

【0035】図10のタイミング図において、十分に長
い符号系列のビタビ復号が行われるものとし、それぞれ
64ビットで構成されたパス選択フラグβがACSUよ
りクロック毎に出力されるとする。これによりパス選択
フラグβはクロック毎に状態が変化するが、時系列上
でMs 個ずつのパス選択フラグβにより、本実施の形
態の動作の区切り(位相)がつけられている。
In the timing chart of FIG. 10, it is assumed that a sufficiently long code sequence is subjected to Viterbi decoding and a path selection flag β composed of 64 bits is output from ACSU at each clock. As a result, the state of the path selection flag β t changes with each clock, but the operation delimiter (phase) of this embodiment is provided by the Ms path selection flags β t in time series.

【0036】まず、RAMa及びトレースバック回路a
からなるa組の動作について説明する。RAMaは最初
の2Ms クロックの期間に、2Ms 個のパス選択フラグ
β0〜β2Ms-1 を順次アドレス昇順で各記憶番地に記憶
する。そして、次のMs クロックの期間に、RAMaか
らパス選択フラグβ2Ms-1 〜βMsがアドレス降順で読み
出され、トレースバック回路aによりトレースバックさ
れる(TBa)。このトレースバック回路の“TB”と
は、トレースバック動作のみでは出力しない(有効でな
い)サイクルを示す。
First, RAMa and traceback circuit a
The operation of group a consisting of will be described. The RAMa stores 2Ms path selection flags β 0 to β 2Ms-1 in each memory address in the ascending order of address in the first 2Ms clock period. Then, during the next Ms clock period, the path selection flags β 2Ms-1 to β Ms are read from the RAMa in the descending order of address, and are traced back by the traceback circuit a (TBa). "TB" of the traceback circuit indicates a cycle that is not output (invalid) only by the traceback operation.

【0037】次いで、次のMs クロックの期間に、RA
Maからパス選択フラグβMs-1〜β0 がアドレス降順で
読み出され、トレースバック回路aによりトレースバッ
クされ、有効なMs 個のトレースバック出力が出力され
る(OUTa)とともに、セレクタ23aを介して順次
バッファAに書き込まれる。
Next, during the next Ms clock period, RA
The path selection flags β Ms-1 to β 0 are read from Ma in the address descending order, traceback is performed by the traceback circuit a, and valid Ms traceback outputs are output (OUTa), and also via the selector 23a. Are sequentially written in the buffer A.

【0038】次いで、次のMs クロックの期間に、バッ
ファAから書き込まれた順序と逆の順序(LIFO)で
トレースバックデータを読み出し、セレクタ26を介し
てビタビ復号出力として出力される。
Next, during the next Ms clock period, the traceback data is read from the buffer A in the reverse order (LIFO) from the order in which it was written, and is output as a Viterbi decoded output via the selector 26.

【0039】次に、RAMb及びトレースバック回路b
からなるb組の動作について説明する。b組の動作は、
a組の動作からMs クロックだけ位相が遅れている。す
なわち、RAMaの書き込み開始からMs クロック遅れ
てRAMbの書き込みが始まり、2Ms クロックの期間
に、2Ms 個のパス選択フラグβMs〜β3Ms-1 を順次ア
ドレス昇順で各記憶番地に記憶する。そして、次のMs
クロックの期間に、RAMbからパス選択フラグβ
3Ms-1 〜β2Ms がアドレス降順で読み出され、トレース
バック回路bによりトレースバックされる(TBb)。
Next, RAMb and traceback circuit b
The operation of group b will be described. The operation of group b is
The phase is delayed by Ms clocks from the operation of group a. That is, writing to RAMb is started with a delay of Ms clocks from the start of writing to RAMa, and 2Ms path selection flags β Ms to β 3Ms-1 are sequentially stored in the respective storage addresses in ascending order of addresses during a period of 2 Ms clocks. And next Ms
During the clock period, the path selection flag β is output from the RAMb.
3Ms-1 ~β 2Ms is read at the address descending order, it is traced back by the trace-back circuit b (TBb).

【0040】次いで、次のMs クロックの期間に、RA
Mbからパス選択フラグβ2Ms-1 〜βMsがアドレス降順
で読み出され、トレースバック回路bによりトレースバ
ックされ、有効なMs 個のトレースバック出力が出力さ
れる(OUTb)とともに、セレクタ23bを介して順
次バッファBに書き込まれる。
Next, during the next Ms clock period, RA
The path selection flags β 2Ms-1 to β Ms are read from Mb in the address descending order, traceback is performed by the traceback circuit b, and valid Ms traceback outputs are output (OUTb) and also via the selector 23b. Are sequentially written in the buffer B.

【0041】次いで、次のMs クロックの期間に、バッ
ファBから書き込まれた順序と逆の順序(LIFO)で
トレースバックデータを読み出し、セレクタ26を介し
てビタビ復号出力として出力される。
Next, during the next Ms clock period, the traceback data is read from the buffer B in the reverse order (LIFO) from the order in which it was written, and is output as a Viterbi decoding output via the selector 26.

【0042】同様に、RAMc及びトレースバック回路
cからなるc組の動作は、b組の動作からMs クロック
だけ位相が遅れているが、使用するバッファは、バッフ
ァAである。同様に、RAMd及びトレースバック回路
dからなるd組の動作は、c組の動作からMs クロック
だけ位相が遅れているが、使用するバッファは、バッフ
ァBである。
Similarly, the operation of the c set consisting of the RAMc and the traceback circuit c is delayed in phase by Ms clocks from the operation of the b set, but the buffer used is the buffer A. Similarly, the operation of the d set consisting of the RAMd and the traceback circuit d is delayed in phase by Ms clocks from the operation of the c set, but the buffer used is the buffer B.

【0043】このように、a組とc組とでバッファA、
b組とd組とでバッファBをそれぞれ共用して並べ変え
を行うことにより、セレクタ26からは切れ目のないビ
タビ復号出力、OUTa,OUTb,OUTc,OUT
dが得られる。
In this way, the buffers A,
The buffer B is shared by the b group and the d group and rearranged so that the Viterbi decoding output without interruption, OUTa, OUTb, OUTc, OUT is output from the selector 26.
d is obtained.

【0044】この構成でビタビ復号が連続的に可能であ
ることを計算機による回路動作シミュレーションでも確
認した。このシミュレーション結果と前記文献[2]に
よるビタビ復号器のビット誤り率(BER)の理論的上
界特性を図11に示す。出力バッファは、図1に示すよ
うに、複数のRAM間で共有して時分割動作させても良
いし、図2に示す第2の実施の形態のように、出力バッ
ファ24a〜24dとして各組毎に設けて、並べ替えた
後の出力をセレクタ26で選択する構成としても良い。
It was also confirmed by circuit operation simulation by a computer that Viterbi decoding can be continuously performed with this configuration. FIG. 11 shows the simulation result and the theoretical upper bound characteristic of the bit error rate (BER) of the Viterbi decoder according to the above-mentioned document [2]. As shown in FIG. 1, the output buffer may be shared among a plurality of RAMs for time-division operation, or like the second embodiment shown in FIG. Alternatively, the selector 26 may be provided for each output and the output after the rearrangement may be selected by the selector 26.

【0045】なお、RAMのアクセススピードに余裕が
あって、リードモディファイライトの倍レートアクセス
が可能なときは、トレースバックのための読み出しとパ
スメモリの更新のための書き込みとがリードモディファ
イライトにより行えるので、RAMaとRAMc,RA
MbとRAMdはそれぞれ共通として、2組のRAM回
路により実現することができる。
When the RAM access speed has a margin and double-rate access of read-modify-write is possible, read-write for traceback and write for update of path memory can be performed by read-modify-write. Therefore, RAMa, RAMc, RA
Mb and RAMd are common to each other and can be realized by two sets of RAM circuits.

【0046】4組のメモリ回路によるパスメモリの回路
規模は、同期型のRAMの採用を前提とすると約0.2
ゲート/ビットより、(64bit ×(2×Ms )word)
×4=49k bitで約9.8kゲート相当となる。ビタ
ビ復号全体で約35kゲート実現できる(Ms =96,
R=7/8までのパンクチャド符号に対応)。パスメモ
リの実際の構成は、例えば16bit ×192wordのRA
M・ICを16個使用する構成となる。
The circuit scale of the path memory composed of four sets of memory circuits is about 0.2 assuming that a synchronous RAM is adopted.
From gate / bit, (64bit x (2 x Ms) word)
× 4 = 49k bits corresponds to about 9.8k gates. About 35k gates can be realized in the entire Viterbi decoding (Ms = 96,
Corresponds to punctured codes up to R = 7/8). The actual configuration of the path memory is, for example, 16-bit × 192-word RA
The configuration uses 16 M / ICs.

【0047】次に本発明の第3の実施の形態を説明す
る。回路規模の縮小化において、ICのチップサイズは
ゲート数もさることながら、配線数ないし配線を収容す
るためのチップ面積の比重が大きい。RAMのビット数
を最小とするよりも、個数(あるいはデータ数)を減ら
す方が配線数及び配線の総延長を減少し、回路の小形化
に有利な場合がある。
Next, a third embodiment of the present invention will be described. In reducing the circuit scale, the chip size of an IC has a large number of wirings or a large chip area for accommodating wirings, as well as the number of gates. Reducing the number (or the number of data) of the RAM rather than minimizing the number of bits of the RAM may reduce the number of wirings and the total length of wirings, which may be advantageous for circuit miniaturization.

【0048】この点を考慮して、本発明の第3の実施の
形態として、パスメモリを3組のメモリ回路で構成する
場合のブロック図を図12に、その動作タイミングを図
13に示す。
In consideration of this point, FIG. 12 shows a block diagram in the case where the path memory is composed of three sets of memory circuits, and FIG. 13 shows its operation timing, as a third embodiment of the present invention.

【0049】図12において、Ms 段パスメモリ40
は、それぞれ64ビット×(3×Ms)段の3組のメモ
リ回路RAM21a〜21cと、3つのトレースバック
回路22a〜22cと、それぞれトレースバック回路2
2a〜22cの出力を選択するセレクタ23a、23b
と、セレクタ23a,23bで選択されたトレースバッ
ク回路の出力をLIFOの順序で並べ変えるバッファA
(24a),バッファB(24b)と、バッファA(2
4a)またはバッファB(24b)の出力を選択してビ
タビ復号出力とするセレクタ26と、トレースバック制
御回路25と、から構成されている。
In FIG. 12, the Ms stage path memory 40
Are three sets of memory circuit RAMs 21a to 21c of 64 bits × (3 × Ms) stages, three traceback circuits 22a to 22c, and traceback circuit 2 respectively.
Selectors 23a and 23b for selecting outputs 2a to 22c
And a buffer A that rearranges the outputs of the traceback circuits selected by the selectors 23a and 23b in the order of LIFO.
(24a), buffer B (24b), and buffer A (2
4a) or the output of the buffer B (24b) to select a Viterbi decoding output, and a traceback control circuit 25.

【0050】各メモリ回路RAM21a〜21cは、3
×Ms 段として1回のトレースバックで2×Ms ビット
の復号出力を得る。RAMの総ビット数は3組合計で5
5kビット(11kゲート相当)であるが、配線数は3
/4になる(例えば16bit×288wordのRAM・I
Cを12個(4×3に配列)使用して構成できる)。復
調データが入力されてからビタビ復号出力が得られるま
での遅延量は、4×Ms (ビットタイム)から6×Ms
(ビットタイム)に増加するが、復号レートが速い場合
にはさほど問題にならない。
Each memory circuit RAM 21a-21c has 3
As a × Ms stage, a decoded output of 2 × Ms bits is obtained by one traceback. The total number of bits in RAM is 5 in total of 3 sets
5k bits (corresponding to 11k gates), but the number of wires is 3
/ 4 (for example, 16bit × 288word RAM / I
It can be configured by using 12 Cs (arranged in 4 × 3). The delay amount from the input of the demodulated data to the output of the Viterbi decoding is 4 × Ms (bit time) to 6 × Ms.
(Bit time), but it does not matter so much when the decoding rate is high.

【0051】さらに、本実施の形態の変形例として、ト
レースバック回路も時分割共有化可能である。例えば図
10のタイミング図によれば、トレースバック回路22
aと22cとは同時にトレースバック処理は行わないの
で共有化できる。同様に22bと22dとを共有化する
ことができる。
Further, as a modified example of this embodiment, the traceback circuit can also be shared in a time division manner. For example, according to the timing diagram of FIG.
Since a and 22c do not perform traceback processing at the same time, they can be shared. Similarly, 22b and 22d can be shared.

【0052】以上の実施の形態の説明において、トレー
スバックの初期値Sr,0 は最尤パスに対応する状態S
L,t としたが、前記トレースバックの段数Ms を十分に
大とするとSr,0 は任意(例えば状態(0))とすることが
可能である。
In the above description of the embodiment, the initial value S r, 0 of the traceback is the state S corresponding to the maximum likelihood path.
Although L, t is set, S r, 0 can be set to an arbitrary value (for example, state (0)) if the number Ms of traceback steps is sufficiently large.

【0053】また、上記の実施の形態では、図3に示す
非組織符号であるたたみ込み符号化を例に、そのビタビ
復号の構成を示したきたが、組織符号を含めた任意のた
たみ込み符号化に対するビタビ復号器について本発明が
有効であることは明白である。
In the above embodiment, the configuration of Viterbi decoding has been shown by taking the convolutional coding which is a non-systematic code shown in FIG. 3 as an example. However, any convolutional code including a systematic code is shown. It is clear that the present invention is effective for a Viterbi decoder with respect to encoding.

【0054】[0054]

【発明の効果】以上説明したように本発明によれば、高
速動作を可能としつつ、パスメモリをRAMで構成可能
なので、高速動作のビタビ復号器の回路規模を縮小でき
るという効果がある。
As described above, according to the present invention, the path memory can be constituted by the RAM while enabling the high speed operation, so that there is an effect that the circuit scale of the high speed operation Viterbi decoder can be reduced.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明に係るビタビ復号器の第1の実施の形態
の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a first embodiment of a Viterbi decoder according to the present invention.

【図2】本発明に係るビタビ復号器の第2の実施の形態
の構成を示すブロック図である。
FIG. 2 is a block diagram showing a configuration of a second embodiment of a Viterbi decoder according to the present invention.

【図3】たたみ込み符号の符号器の構成例を示す回路図
である。
FIG. 3 is a circuit diagram showing a configuration example of a convolutional code encoder.

【図4】状態遷移の組を示す状態遷移図である。FIG. 4 is a state transition diagram showing a set of state transitions.

【図5】生き残りパスの説明図である。FIG. 5 is an explanatory diagram of a survival path.

【図6】加算比較選択ユニット(ACSU)の構成を示
すブロック図である。
FIG. 6 is a block diagram showing a configuration of an addition comparison selection unit (ACSU).

【図7】従来のパスメモリの直接的な実現を示すブロッ
ク図である。
FIG. 7 is a block diagram showing a direct implementation of a conventional path memory.

【図8】最尤パス選択による復号出力を示すブロック図
である。
FIG. 8 is a block diagram showing decoded output by maximum likelihood path selection.

【図9】トレースバック回路の構成を示すブロック図で
ある。
FIG. 9 is a block diagram showing a configuration of a traceback circuit.

【図10】トレースバックによる復号動作を示す第1の
タイミング図である。
FIG. 10 is a first timing chart showing a decoding operation by traceback.

【図11】トレースバックによる復号BER特性を示す
グラフである。
FIG. 11 is a graph showing a decoded BER characteristic by traceback.

【図12】本発明に係るビタビ復号器の第3の実施の形
態の構成を示すブロック図である。
FIG. 12 is a block diagram showing the configuration of a third embodiment of a Viterbi decoder according to the present invention.

【図13】トレースバックによる復号動作を示す第2の
タイミング図である。
FIG. 13 is a second timing chart showing the decoding operation by traceback.

【符号の説明】[Explanation of symbols]

10 位相同期回路 11 デパンクチャ回路 1
2 BMU 13正規化回路 14 ACSU
15 最尤判定回路 16 同期判定回路 21a,21b,21c,21d RAM 22a,
22b,22c,22d トレースバック回路 24
a,24b,24c,24d バッファ 25 トレースバック制御回路 26 セレクタ
30 Ms段パスメモリ
10 Phase synchronization circuit 11 Depuncture circuit 1
2 BMU 13 normalization circuit 14 ACSU
15 maximum likelihood determination circuit 16 synchronization determination circuit 21a, 21b, 21c, 21d RAM 22a,
22b, 22c, 22d Traceback circuit 24
a, 24b, 24c, 24d buffer 25 traceback control circuit 26 selector
30 Ms stage path memory

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 状態遷移のブランチの確かさを示す量で
あるブランチメトリックを計算するブランチメトリック
演算回路と、各状態毎にパスメトリックを演算するとと
もにいずれのパスを選択したかを示すパス選択信号を出
力する加算比較選択回路と、各状態毎のパスメトリック
から最尤パスを選択して最尤パス選択信号を出力する最
尤判定回路と、復号の候補であるパスを記憶保持するパ
スメモリ回路とを備えて構成されるビタビ復号器におい
て、 前記パスメモリ回路は、前記パス選択信号を複数ステッ
プ分保持するメモリ回路と、前記最尤パス選択信号に基
づいて前記メモリ回路の記憶内容をトレースバックする
トレースバック回路と、前記トレースバック回路の出力
を所定の順序に並べ替える出力バッファ回路と、トレー
スバック制御回路とからなり、 前記メモリ回路、前記トレースバック回路及び前記出力
バッファ回路からなる互いに独立に動作可能な複数組を
具備し、 前記トレースバック制御回路は、前記各組のパスメモリ
更新動作と、トレースバック動作と、出力動作とを各組
間で位相をずらして交互に動作せしめることを特徴とす
るビタビ復号器。
1. A branch metric calculation circuit for calculating a branch metric, which is a quantity indicating a certainty of a branch of a state transition, and a path selection signal for calculating a path metric for each state and indicating which path is selected. , A maximum likelihood determination circuit that selects the maximum likelihood path from the path metric for each state and outputs a maximum likelihood path selection signal, and a path memory circuit that stores and holds a path that is a candidate for decoding. In the Viterbi decoder configured with, the path memory circuit traces back the stored contents of the memory circuit based on the maximum likelihood path selection signal, and a memory circuit that holds the path selection signal for a plurality of steps. Traceback circuit, an output buffer circuit for rearranging the output of the traceback circuit in a predetermined order, and a traceback control A plurality of sets of the memory circuit, the traceback circuit, and the output buffer circuit that can operate independently of each other, and the traceback control circuit includes a path memory update operation for each set and a trace A Viterbi decoder characterized in that the back operation and the output operation are alternately operated by shifting the phase between each pair.
【請求項2】 状態遷移のブランチの確かさを示す量で
あるブランチメトリックを計算するブランチメトリック
演算回路と、各状態毎にパスメトリックを演算するとと
もにいずれのパスを選択したかを示すパス選択信号を出
力する加算比較選択回路と、各状態毎のパスメトリック
から最尤パスを選択して最尤パス選択信号を出力する最
尤判定回路と、復号の候補であるパスを記憶保持するパ
スメモリ回路とを備えて構成されるビタビ復号器におい
て、 前記パスメモリ回路は、前記パス選択信号を複数ステッ
プ分保持するメモリ回路と、前記最尤パス選択信号に基
づいて前記メモリ回路の記憶内容をトレースバックする
トレースバック回路と、前記トレースバック回路の出力
を所定の順序に並べ替える出力バッファ回路と、トレー
スバック制御回路とからなり、 前記メモリ回路及び前記トレースバック回路からなる互
いに独立に動作可能な複数組を具備し、 前記トレースバック制御回路は、前記各組のパスメモリ
更新動作と、トレースバック動作と、出力動作とを各組
間で位相をずらして交互に動作せしめ、前記出力バッフ
ァ回路は、各トレースバック回路の出力を多重して所定
の順序に並べ替えることを特徴とするビタビ復号器。
2. A branch metric calculation circuit for calculating a branch metric, which is a quantity indicating a certainty of a branch of a state transition, and a path selection signal for calculating a path metric for each state and indicating which path is selected. , A maximum likelihood determination circuit that selects the maximum likelihood path from the path metric for each state and outputs a maximum likelihood path selection signal, and a path memory circuit that stores and holds a path that is a candidate for decoding. In the Viterbi decoder configured with, the path memory circuit traces back the stored contents of the memory circuit based on the maximum likelihood path selection signal, and a memory circuit that holds the path selection signal for a plurality of steps. Traceback circuit, an output buffer circuit for rearranging the output of the traceback circuit in a predetermined order, and a traceback control And a plurality of sets of the memory circuit and the traceback circuit that are operable independently of each other, wherein the traceback control circuit includes a path memory update operation, a traceback operation, and an output of each set. A Viterbi decoder characterized in that the operation and the operation are alternately performed by shifting the phases between the sets, and the output buffer circuit multiplexes the outputs of the traceback circuits and rearranges them in a predetermined order.
【請求項3】 前記メモリ回路を4組具備したことを特
徴とする請求項1または請求項2記載のビタビ復号器。
3. The Viterbi decoder according to claim 1, further comprising four sets of the memory circuit.
【請求項4】 リードモディファイライト動作可能な前
記メモリ回路を2組具備したことを特徴とする請求項1
または請求項2記載のビタビ復号器。
4. The memory device according to claim 1, further comprising two sets of the memory circuits capable of a read modify write operation.
Alternatively, the Viterbi decoder according to claim 2.
【請求項5】 前記メモリ回路を3組具備したことを特
徴とする請求項1または請求項2記載のビタビ復号器。
5. The Viterbi decoder according to claim 1, further comprising three sets of the memory circuit.
【請求項6】 前記トレースバック回路を複数組の間で
時分割共有化したことを特徴とする請求項1または請求
項2記載のビタビ復号器。
6. The Viterbi decoder according to claim 1, wherein the traceback circuit is shared by a plurality of sets in a time division manner.
JP20241895A 1995-08-08 1995-08-08 Viterbi decoder Pending JPH0951278A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20241895A JPH0951278A (en) 1995-08-08 1995-08-08 Viterbi decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20241895A JPH0951278A (en) 1995-08-08 1995-08-08 Viterbi decoder

Publications (1)

Publication Number Publication Date
JPH0951278A true JPH0951278A (en) 1997-02-18

Family

ID=16457186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20241895A Pending JPH0951278A (en) 1995-08-08 1995-08-08 Viterbi decoder

Country Status (1)

Country Link
JP (1) JPH0951278A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0918292A2 (en) * 1997-11-24 1999-05-26 Lucent Technologies Inc. Minimum and maximum value searching method
US6041433A (en) * 1996-01-08 2000-03-21 Matsushita Electric Industrial Co., Ltd. Viterbi decoder and viterbi decoding method
US6263473B1 (en) 1997-04-07 2001-07-17 Matsushita Electric Industrial Co., Ltd. Viterbi decoder and Viterbi decoding method
US6728926B1 (en) 1999-06-29 2004-04-27 Matsushita Electric Industrial Co., Ltd. Encoding rate detection method and encoding rate detection device
JP2006229376A (en) * 2005-02-16 2006-08-31 Nec Corp Viterbi decoder and mobile communication apparatus using the same, base station apparatus, and mobile communication terminal
KR100752659B1 (en) * 2006-03-09 2007-08-29 삼성전자주식회사 Method and apparatus for detecting data and disk drive using the same
JP2010135918A (en) * 2008-12-02 2010-06-17 Nec Corp Arithmetic unit, decoder, memory control method, and program
JP2010206570A (en) * 2009-03-04 2010-09-16 Sony Corp Decoding apparatus and decoding method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041433A (en) * 1996-01-08 2000-03-21 Matsushita Electric Industrial Co., Ltd. Viterbi decoder and viterbi decoding method
US6263473B1 (en) 1997-04-07 2001-07-17 Matsushita Electric Industrial Co., Ltd. Viterbi decoder and Viterbi decoding method
EP0918292A2 (en) * 1997-11-24 1999-05-26 Lucent Technologies Inc. Minimum and maximum value searching method
EP0918292A3 (en) * 1997-11-24 2000-03-01 Lucent Technologies Inc. Minimum and maximum value searching method
US6728926B1 (en) 1999-06-29 2004-04-27 Matsushita Electric Industrial Co., Ltd. Encoding rate detection method and encoding rate detection device
JP2006229376A (en) * 2005-02-16 2006-08-31 Nec Corp Viterbi decoder and mobile communication apparatus using the same, base station apparatus, and mobile communication terminal
KR100752659B1 (en) * 2006-03-09 2007-08-29 삼성전자주식회사 Method and apparatus for detecting data and disk drive using the same
JP2010135918A (en) * 2008-12-02 2010-06-17 Nec Corp Arithmetic unit, decoder, memory control method, and program
JP2010206570A (en) * 2009-03-04 2010-09-16 Sony Corp Decoding apparatus and decoding method

Similar Documents

Publication Publication Date Title
JP3515720B2 (en) Viterbi decoder
JP3747604B2 (en) Viterbi decoder
US6272661B1 (en) Minimum memory implementation of high speed viterbi decoder
JPH0951278A (en) Viterbi decoder
US7840885B2 (en) Distributed ring control circuits for Viterbi traceback
US20050010854A1 (en) Unified serial/parallel concatenated convolutional code decoder architecture and method
US7590928B2 (en) Apparatus and method for Viterbi decoding
CN114448562A (en) Parallel traceback in a viterbi decoder
JP3259725B2 (en) Viterbi decoding device
JPH1155130A (en) Viterbi decoder
JP4047697B2 (en) Viterbi decoder
JP2002534902A (en) ML state selection apparatus and method in decoding apparatus
JP3753822B2 (en) Viterbi decoding method and apparatus
JP2010206570A (en) Decoding apparatus and decoding method
JPH05335973A (en) Viterbi decoder and decoder for convolution code
JP3260714B2 (en) Viterbi decoding device and Viterbi decoding method
JP4702721B2 (en) Addressing method for Viterbi metric calculation
JP2575853B2 (en) Viterbi decoding circuit
JP3288328B2 (en) Apparatus and method for speeding up traceback processing of Viterbi decoder
Hu et al. A Viterbi decoder memory management system using forward traceback and all-path traceback
JP3288262B2 (en) Data interleave circuit
JP2002198827A (en) Maximum likelihood decoding method and decoder thereof
JP2004120791A (en) Viterbi decoder
JPH11186915A (en) Viterbi decoder
KR100410995B1 (en) survivor path memory management method using immediate traceback algorithm for Viterbi decoder and apparatus for the same