Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS638652B2 - - Google Patents
[go: Go Back, main page]

JPS638652B2 - - Google Patents

Info

Publication number
JPS638652B2
JPS638652B2 JP57128453A JP12845382A JPS638652B2 JP S638652 B2 JPS638652 B2 JP S638652B2 JP 57128453 A JP57128453 A JP 57128453A JP 12845382 A JP12845382 A JP 12845382A JP S638652 B2 JPS638652 B2 JP S638652B2
Authority
JP
Japan
Prior art keywords
metric
path
circuit
memory
update
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP57128453A
Other languages
Japanese (ja)
Other versions
JPS5919455A (en
Inventor
Yukitsuna Furuya
Shuji Murakami
Katsuhiro Nakamura
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP12845382A priority Critical patent/JPS5919455A/en
Publication of JPS5919455A publication Critical patent/JPS5919455A/en
Publication of JPS638652B2 publication Critical patent/JPS638652B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 本発明はビタビ復号器、特に複数の候補パタン
の選択を時分割処理で行なうビタビ復号器の最適
パス判定回路に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a Viterbi decoder, and particularly to an optimal path determination circuit for a Viterbi decoder that selects a plurality of candidate patterns by time-division processing.

従来、ビタビ復号器は畳み込み符号を復号する
のに最もパフオーマンスの良い復号器として知ら
れているが反面ハードウエアの規模が大きくなる
という欠点がる。例えば良く用いられる符号化率
1/2の畳み込み符号で符号器の拘束長をKとする
と、ビタビ復号器では常に2K1個の候補パタン
を考えその候補パタンと受信系列を比較してパス
メトリツクといわれる相関値を計算し新たな候補
パタンを選択しているため、パス・メトリツクの
計算と候補パタンを記憶するメモリ(これは通常
パス・メモリと呼ばれる)には2K1個の回路が
必要となる。この回路を小さくするために上述の
2K1個の回路のうち同じ処理をする部分を単一
の回路で置き換え時分割処理することで回路規模
を小さくする方式が考えられている。この時分割
処理をするビタビ復号器においては、判定出力は
最適パス判定回路によつて得られる。最適パス判
定回路では、全ての候補パタンに対する処理の終
了後に対応するパス・メトリツクが最大のパタン
を選択しそのパタンの最終ビツトを判定出力とし
ている。しかし、この方式では候補パタンの選択
の他に判定出力を得るための動作が加わるため一
定時間内に処理すべき動作数が増す、いいかえる
と信号の処理速度が遅れるという欠点があつた。
Conventionally, the Viterbi decoder has been known as the decoder with the best performance for decoding convolutional codes, but on the other hand, it has the disadvantage of increasing the scale of the hardware. For example, if the constraint length of the encoder is K in a commonly used convolutional code with a coding rate of 1/2, the Viterbi decoder always considers 2K - 1 candidate patterns and performs path metric analysis by comparing the candidate patterns with the received sequence. Since a new candidate pattern is selected by calculating correlation values called It becomes necessary. In order to make this circuit smaller, the above
2K - A method is being considered to reduce the circuit size by replacing parts of one circuit that perform the same processing with a single circuit and performing time-sharing processing. In the Viterbi decoder that performs this time-division processing, the determination output is obtained by the optimal path determination circuit. After completing the processing for all candidate patterns, the optimal path determination circuit selects the pattern with the largest corresponding path metric, and outputs the final bit of that pattern as the determination output. However, this method has the disadvantage that the number of operations to be processed within a certain period of time increases because an operation for obtaining a determination output is added in addition to selecting a candidate pattern, or in other words, the signal processing speed is delayed.

本発明の目的は上述の従来のビタビ復号器の最
適パス判定回路の欠点を取り除き、全ての候補パ
タンに対する処理が終了すると同時に判定出力の
得られる最適パス判定回路を得ることにある。
An object of the present invention is to eliminate the drawbacks of the optimal path determination circuit of the conventional Viterbi decoder described above, and to obtain an optimal path determination circuit that can obtain a determination output at the same time as processing for all candidate patterns is completed.

本発明によれば受信信号と複数の受信候補信号
との相関を計算する相関回路と、該相関回路出力
を用いて時分割処理によつて複数の受信パタンに
対応した複数のパスメトリツク値を更新するとと
もにパス選択情報を出力するメトリツク更新回路
と、前記パス選択情報に基いて、時分割処理によ
つて複数の復号候補パタンを選択するパスメモリ
とから構成されるビタビ復号器において、前記メ
トリツク更新回路で順次得られる新たなメトリツ
ク値の各時点での最大値を記憶する最大メトリツ
ク・メモリと、該最大メトリツク・メモリと新た
に得られたメトリツク値を比較し新たに得られた
メトリツク値がより大きい場合には最大メトリツ
クの内容を更新する最大値更新パルスを送出する
比較回路と、前記最大値更新パルスが到着したと
きの順次選択される前記パスメモリの最終ビツト
を記憶する判定出力記憶回路から構成され、前記
パルスメモリが全てのパスに対して更新された時
点での判定出力記憶回路の内容を最適パスによる
復号結果として出力することを特徴としたビタビ
復号器の最適パス判定回路を提供することができ
る。
According to the present invention, a correlation circuit calculates the correlation between a received signal and a plurality of reception candidate signals, and a plurality of path metric values corresponding to a plurality of reception patterns are updated by time-division processing using the output of the correlation circuit. In the Viterbi decoder, the Viterbi decoder is composed of a metric update circuit that outputs path selection information along with the path selection information, and a path memory that selects a plurality of decoding candidate patterns by time-sharing processing based on the path selection information. A maximum metric memory that stores the maximum value of new metric values obtained at each point in time is compared with the maximum metric memory and the newly obtained metric value, and the newly obtained metric value is larger. A comparison circuit that sends out a maximum value update pulse that updates the contents of the maximum metric when the maximum value update pulse arrives, and a judgment output storage circuit that stores the final bit of the path memory that is sequentially selected when the maximum value update pulse arrives. To provide an optimal path determination circuit for a Viterbi decoder, characterized in that the content of the determination output storage circuit at the time when the pulse memory is updated for all paths is output as a decoding result by the optimal path. Can be done.

以下説明の都合上まずビタビ復号法について詳
細に説明し、その後本発明と従来の回路との違い
について説明する。
For convenience of explanation, the Viterbi decoding method will first be explained in detail, and then the differences between the present invention and conventional circuits will be explained.

第1図は畳み込み符号器の実施例を示すブロツ
ク図である。第1図の畳み込み符号器は拘束長
3、符号化率1/2の符号器を構成している。入力
端子100から入力された1又は0の信号はレジ
スタ1および2に順次蓄えられる。入力信号とレ
ジスタ1の内容と、レジスタ2の内容の2を法と
した加算が排他論理和3で求められ、出力端子1
01から出力される。また入力信号とレジスタ2
の2を法とした加算が排他論理和4で求められ出
力端子102から出力される。このようにして1
ビツトの入力信号が2ビツトに変換されて送信さ
れる。出力の2ビツトはレジスタ1および2の内
容と入力信号で決定されるのでこの符号器の状態
遷移図は第2図のようになる。第2図で4つの状
態(00)、(10)、(01)、(11)はそれぞれレジスタ
1,2の内部状態に対応しておりそれぞれの状態
と次の状態を結ぶ線は入力信号の値によつて次に
異つた状態に移ることを意味している。また結線
上の(00)、(11)、(10)、(01)の表現は端子10
1および端子102から出力される値を表現して
いる。例えばレジスタ1,2の初期値が(0,
0)であつて信号“1”が入力されたとすると出
力は(1,1)となりレジスタ1,2の状態は
(1,0)に変わる。
FIG. 1 is a block diagram showing an embodiment of a convolutional encoder. The convolutional encoder shown in FIG. 1 constitutes an encoder with a constraint length of 3 and a coding rate of 1/2. Signals of 1 or 0 input from input terminal 100 are stored in registers 1 and 2 sequentially. Addition of the input signal, the contents of register 1, and the contents of register 2 modulo 2 is obtained by exclusive OR 3, and output terminal 1
Output from 01. Also input signal and register 2
The addition modulo 2 of 2 is obtained by exclusive OR 4 and output from the output terminal 102. In this way 1
A bit input signal is converted to 2 bits and transmitted. Since the two output bits are determined by the contents of registers 1 and 2 and the input signal, the state transition diagram of this encoder is as shown in FIG. In Figure 2, the four states (00), (10), (01), and (11) correspond to the internal states of registers 1 and 2, respectively, and the line connecting each state to the next state is the input signal. This means that it will move to a different state depending on the value. Also, the expressions (00), (11), (10), and (01) on the wiring are terminal 10.
1 and the value output from the terminal 102. For example, the initial values of registers 1 and 2 are (0,
0) and a signal "1" is input, the output becomes (1, 1) and the states of registers 1 and 2 change to (1, 0).

第2図にはこれに続いて1,0,1と信号が入
力されたときの状態の変化を太線で示す。このよ
うに各データ系列に1対1に対応して状態遷移図
上の折線が形成される。この折線のことを通常パ
スと呼んでいる。ビタビ復号器は各パスに対応し
た送信系列と、受信系列の相関を計算し、相関の
最大になるパスを判定して復号を行つている。受
信系列と各パスとの相関は通常パス・メトリツク
と呼ばれている。ビタビ復号器は第2図の4通り
の状態に対応するパス・メトリツクを記憶してお
き、1ビツトの情報に対応する2シンボルが受信
される毎にパス・メトリツクを更新する。
In FIG. 2, the change in state when the signals 1, 0, 1 are inputted subsequently is shown by a thick line. In this way, broken lines on the state transition diagram are formed in one-to-one correspondence to each data series. This broken line is called a normal path. The Viterbi decoder calculates the correlation between the transmitted sequence and the received sequence corresponding to each path, determines the path with the maximum correlation, and performs decoding. The correlation between the received sequence and each path is usually called a path metric. The Viterbi decoder stores path metrics corresponding to the four states shown in FIG. 2, and updates the path metrics every time two symbols corresponding to one bit of information are received.

第2図から明らかなように、4通りの各状態は
送信信号に対応して2本の枝を出し再び4通りの
いずれかの状態になる。新たな状態の側から見れ
ば、以前の状態のうち2つの状態から異つた符号
を送信した結果として新たな状態が得られてい
る。例えば(1,0)という状態は(0,0)と
いう状態に“1”が加えられて(1,1)を出力
し(1,0)に達する場合と(0,1)という状
態に“1”が加えられて(0,0)を出力し
(1,0)に達する場合とがある。今k番目のデ
ータに対応するビタビ復号器ではこの2通りの場
合について前回のパス・メトリツク値に受信信号
と各枝に対応する受信候補信号との相関を加え、
大きい方を新たなパス・メトリツクとするという
方法でパス・メトリツクの更新を行なう。このパ
ス・メトリツクの更新動作をより詳しく説明す
る。
As is clear from FIG. 2, each of the four states produces two branches corresponding to the transmitted signal and returns to one of the four states. From the perspective of the new state, the new state is the result of transmitting different codes from two of the previous states. For example, the state (1,0) is created by adding "1" to the state (0,0), outputting (1,1), and reaching (1,0), and the state (0,1) is "1". 1" may be added to output (0,0) and reach (1,0). The Viterbi decoder corresponding to the k-th data now adds the correlation between the received signal and the reception candidate signal corresponding to each branch to the previous path metric value for these two cases,
The path metric is updated by using the larger one as the new path metric. This path metric update operation will be explained in more detail.

今k番目のデータに対応するパス・メトリツク
を今の状態に合せて kM00, kM10kM01k
M11,と表現し、k+1番目の2ビツトの受信信
号と各枝に対応した2ビツトの受信候補信号との
相関を受信候補信号をi1,i2としたときに k+1
Ri1,i2と表現したとするとk+1番目のパスメト
リツク k+1M10kM00k+1R11kM01k+1
R00の大きい方となる。従つて k+1M00k+1
M10k+1M01k+1M11を式で表現すると k+1M00=Max( kM00k+1R00kM01k+1R
11k+1M10=Max( kM00k+1R11kM01k+1R00k+1M01=Max( kM10k+1R10kM11k+1R01k+1M01=Max( kM10k+1R10kM11k+1R01k+1M11=Max( kM10k+1R01kM11k+1R10
(1) となる。2本の枝のうち、どちらを選択したか
でどのようなパスをとつたかがわかるのでその選
択信号をもとにビタビ復号器は常に4通りのパス
を記憶してゆく。このパスを記憶する回路は通常
パス・メモリと呼ばれる。
Adjust the path metric corresponding to the k-th data to the current state and write k M 0 0, k M 10 , k M 01 , k
M 11 , and the correlation between the k+1st 2-bit received signal and the 2-bit reception candidate signal corresponding to each branch is k+1 when the reception candidate signals are i 1 and i 2 .
If expressed as R i1,i2, then the k+1st path metric k+1 M 10 is k M 00 + k+1 R 11 and k M 01 + k+1
It will be the larger of R 00 . Therefore k+1 M 00 , k+1
Expressing M 10 , k+1 M 01 , k+1 M 11 in the formula, k+1 M 00 = Max( k M 00 + k+1 R 00 , k M 01 + k+1 R
11 ) k+1 M 10 = Max ( k M 00 + k+1 R 11 , k M 01 + k+1 R 00 ) k+1 M 01 = Max ( k M 10 + k+1 R 10 , k M 11 + k+1 R 01 ) k+1 M 01 = Max ( k M 10 + k+1 R 10 , k M 11 + k+1 R 01 ) k+1 M 11 = Max ( k M 10 + k+ 1 R 01 , k M 11 + k+1 R 10 )
(1) becomes. Since the path taken can be determined by which of the two branches is selected, the Viterbi decoder always stores four paths based on the selection signal. The circuit that stores this path is usually called a path memory.

第3図はパス・メモリに記憶されるパスの例を
示す図である。第3図には選択されたパスのみが
記されている。第3図において時刻Aにおいてパ
ス・メモリに記憶されている全てのパスを逆にた
どると時刻B以前の部分は全て同一のパスに帰着
していることがわかる。従つて今後どのような信
号が受信されようと時刻B以前のパス(太線の部
分)から外れることはあり得ない。この現象はマ
ージと言われるが、マージが起れば、それ以前に
受信された系列は一意的に決定されるのでこれか
ら判定出力を得ることができる。一般にマージン
するまでのパスの長さは伝送路誤りのパタンによ
つて異り、誤りパタンによつては無限にマージン
しない場合もあり得る。現実の回路では無限の長
さのパスを記憶することは不可能なのでどこかで
パスの長さを打切ることになる。この場合には4
本のパスがマージンしないうちに判定をしなくて
はならない場合が生じる。パスがマージンしてな
いときの判定誤りを少なするには現在(判定時
刻)で最も確からしいパスを正しいパスとする方
法が用いられる。従つて通常のビタビ復号器では
一定長のパスメモリを用い、各判定時刻で最大の
パス・メトリツクを持つパスの最も前のシンボル
に対応する値を判定出力としている。
FIG. 3 is a diagram showing an example of paths stored in the path memory. Only the selected path is shown in FIG. In FIG. 3, if all the paths stored in the path memory at time A are traced backwards, it can be seen that all the portions before time B result in the same path. Therefore, no matter what kind of signal is received in the future, it is impossible for the signal to deviate from the path before time B (thick line portion). This phenomenon is called merging, and when merging occurs, previously received sequences are uniquely determined, so a decision output can be obtained from them. Generally, the length of the path until the margin is achieved varies depending on the transmission path error pattern, and depending on the error pattern, there may be cases where the margin is not infinite. In an actual circuit, it is impossible to store a path of infinite length, so the length of the path must be truncated at some point. In this case 4
There are cases where it is necessary to make a judgment before the book path reaches the margin. In order to reduce judgment errors when the path does not have a margin, a method is used in which the most probable path at the current (judgment time) is determined to be the correct path. Therefore, a normal Viterbi decoder uses a path memory of a fixed length, and outputs the value corresponding to the earliest symbol of the path having the maximum path metric at each determination time.

第4図は従来のビタビ復号器の一構成例を示す
ブロツク図である。第4図のビタビ復号器は式(1)
の4通りのパス・メトリツクの更新を時分割処理
で実現している。
FIG. 4 is a block diagram showing an example of the configuration of a conventional Viterbi decoder. The Viterbi decoder in Figure 4 is expressed by formula (1)
The path metrics are updated in four ways using time-sharing processing.

入力端子103,104からは2シンボルの受
信信号が入力され相関回路5へ入力される。一
方、受信候補信号は端子106から入力される高
速クロツクに基いて生成されるアドレス・発生回
路9で作られるアドレス信号に基いてリード・オ
ンリ・メモリROM6から受信候補信号を読み出
す。アドレス・発生回路9の出力は第2図の4通
りの状態のいずれかに対応している。状態が決る
とそれに対応した候補信号が決まりROM6から
受信候補信号が出力される。相関回路5では受信
シンボルと受信候補信号をビツト毎に比較し、一
致していれば“1”を加え一致していなければ
“1”を減ずる。従つて相関回路の出力は+2,
0,−2のいずれかになる。これがRi1,i2に相当す
る。メトリツク更新回路はランダム・アクセス・
メモリ(RAM)で構成され式(1)のM00,M10
M01,M11を記憶するメトリツク・メモリ8と式
(1)の加算および比較を行う演算回路7で構成され
ている。メトリツク・メモリではアドレス発生回
路9で生成されるアドレス信号に基いてメトリツ
ク・メモリ8から kMj1,j2が読出され相関回路5
からの k+1Ri1,i2との加算および比較が演算回路7
で行なわれる。式(1)より書き込みアドレスは読出
しアドレスとは異つたものにしなくてはならな
い。書込みアドレスは書込みアドレス生成器10
で生成される。読出しアドレスと書込みアドレス
は異つているため式1内の4式を上から順に実行
してゆくと下の方の式を実行するときにはメトリ
ツク・メモリの内容が既に書き換えられたものに
なつてしまつている場合が生じる。これを避ける
ために、2組のメトリツク・メモリを用いてある
時点では第1のメトリツク・メモリから読出して
第2のメトリツク・メモリへ書込み次のシンボル
を復号するときには第2のメトリツク・メモリか
ら読出して第1のメトリツク・メモリへ書込む、
というように交互に読出しと書込みを繰り返すよ
うになつている。このメモリ切換信号は端子10
5から入力される。演算回路7はパス・メトリツ
クを更新すると同時にどちらのパスが選択される
かというパス選択信号を出力する。パス・メモリ
は状態数だけのパスを記憶している必要があるた
めワード数が状態数でワード長がパスの長さに相
当するRAMで構成される。RAMの各ワードに
はそのアドレスに対応する状態に達するパスに相
当した復号結果が記憶されている。パス・メモリ
もメモリ切換信号により切換えられる2つのメモ
リを有している。例として第3図の時刻Cにおけ
るパスの内容を示す。今、パス・メモリ長は4と
する。状態(0,0)に達するパスは常に状態
(0,0)を経ている。従つてこのパスに相当す
るワードは(0,0,0,0)である。(左側が
古い状態に対応している)状態(1,0)に達す
るパスは状態(0,0)から状態(1,0)に最
後で変つている。これは信号としては0が続いて
最後に1が来たことに相当する。従つてこのパス
は(0,0,0,1)と表現される。状態(0,
1)に達するパスは状態(0,0)から状態
(1,0)を経て状態(0,1)に達している。
このパスは(0,0,1,0)となる。最後に状
態(1,1)は状態(0,0)から状態(1,
0)を経て状態(1,1)に達している。従つて
このパスは(0,0,1,1)となる。
Two symbols of received signals are input from input terminals 103 and 104 and input to correlation circuit 5 . On the other hand, the reception candidate signal is read out from the read-only memory ROM 6 based on the address signal generated by the address generation circuit 9, which is generated based on the high-speed clock inputted from the terminal 106. The output of the address/generating circuit 9 corresponds to one of the four states shown in FIG. When the state is determined, a candidate signal corresponding to the state is determined, and the reception candidate signal is output from the ROM 6. Correlation circuit 5 compares the received symbol and the received candidate signal bit by bit, and adds "1" if they match, and subtracts "1" if they do not match. Therefore, the output of the correlation circuit is +2,
It will be either 0 or -2. This corresponds to R i1,i2 . The metric update circuit uses random access
Consists of memory (RAM), M 00 , M 10 ,
Metric memory 8 that stores M 01 and M 11 and the formula
It is composed of an arithmetic circuit 7 that performs addition and comparison (1). In the metric memory, k M j1,j2 are read out from the metric memory 8 based on the address signal generated by the address generation circuit 9, and the correlation circuit 5
Arithmetic circuit 7 performs addition and comparison with k+1 R i1,i2 from
It will be held in From equation (1), the write address must be different from the read address. The write address is the write address generator 10
is generated. The read address and write address are different, so if you execute the four expressions in Expression 1 in order from the top, by the time you execute the lower expression, the contents of the metric memory will have already been rewritten. There may be cases where To avoid this, two sets of metric memories are used, at one time reading from the first metric memory and writing to the second metric memory, and then reading from the second metric memory when decoding the next symbol. write to the first metric memory,
Reading and writing are repeated alternately. This memory switching signal is at terminal 10.
It is input from 5. The arithmetic circuit 7 updates the path metrics and at the same time outputs a path selection signal indicating which path is selected. Since the path memory must store as many paths as the number of states, it is composed of RAM whose number of words corresponds to the number of states and whose word length corresponds to the length of the path. Each word of the RAM stores the decoding result corresponding to the path that reaches the state corresponding to that address. The path memory also has two memories that are switched by a memory switch signal. As an example, the contents of the path at time C in FIG. 3 are shown. Now, assume that the path memory length is 4. A path to reach state (0,0) always passes through state (0,0). Therefore, the word corresponding to this path is (0, 0, 0, 0). The path that reaches state (1,0) (the left side corresponds to the old state) changes from state (0,0) to state (1,0) at the end. As a signal, this corresponds to a series of 0's followed by a 1. Therefore, this path is expressed as (0, 0, 0, 1). state (0,
The path to reach 1) is from state (0,0) to state (1,0) and then to state (0,1).
This path becomes (0, 0, 1, 0). Finally, state (1, 1) changes from state (0, 0) to state (1, 1).
0) and reaches the state (1, 1). Therefore, this path becomes (0, 0, 1, 1).

ここで時刻Cから時刻Aに移つたときのパスの
変化からパス・メモリがどのように更新されるか
を説明する。まずアドレス発生回路9では状態
(0,0)と状態(0,1)に相当するアドレス
(0,0)と状態(0,1)に相当するアドレス
(0,0)と(0,1)を出力するROM6では
このアドレスに基いて受信候補信号(0,0)と
(1,1)を相関回路5へ出力し、相関回路5で
k+1R00k+1R11を計算する。一方メトリツ
ク・メモリ8ではアドレス(0,0)と(0,
1)に基いて、 kM00kM01を読出す。演算回
路では相関回路5の出力とメトリツク・メモリ8
の出力から式(1)の1行目の式を計算する。第3図
kM00k+1R00が大きかつたため、 k+1M00
kM00k+1R00となりパス選択信号としては
(0,0)を選択したことを示す“0”が出る。
パス・メモリではアドレス・レジスタ11にアド
レス(0,0)と(0,1)を記憶しておきパス
選択信号に基いてアドレス(0,0)が選択され
る。このアドレスに基いてRAM12から状態
(0,0)に相当するパス(0,0,0,0)が
読み出されシフト・レジスタ13で1ビツト左へ
シフトされて、最も右には新ビツト生成回路14
によつて生成される新たなビツトが入力される。
k+1M00が求まつたため書込みアドレス生成器
10によつて決まる書込みアドレス(0,0)へ
k+1M00が書込まれ、パス・メモリのRAM1
2へもアドレス(0,0)に(0,0,0,0)
が書込まれる。式(1)を上から順に実行してゆくと
すると、書込みアドレスは(0,0)、(1,0)、
(0,1)、(1,1)に順に変わる。同様にして
k+1M10には kM00k+1R11が書き込まれRAM1
2のアドレス(1,0)にはアドレス(0,0)
の内容(0,0,0,0)を1ビツト左へシフト
して右端へ“1”を入れ(0,0,0,1)とな
る。また k+1M01には kM10k+1R10が書込まれ、
RAM12のアドレス(0,1)はアドレス
(1,0)の内容(0,0,0,1)を1ビツト
左へシフトして右端へ“0”を入れ(0,0,
0,1)となる。最後に k+1M11には kM11k+1
R10が書込まれ、RAM12のアドレス(1,1)
はアドレス(1,1)の内容(0,0,1,1,)
を1ビツト左へシフトして右端へ“1”を入れ
(0,1,1,1)となる。本実施例では右端へ
入れるべき最新ビツトは書込みアドレスの左側の
ビツトになつている。
Here, a description will be given of how the path memory is updated based on changes in the path when moving from time C to time A. First, the address generation circuit 9 generates the state (0,0), the address (0,0) corresponding to the state (0,1), and the addresses (0,0) and (0,1) corresponding to the state (0,1). Based on this address, the ROM 6 outputs the reception candidate signals (0, 0) and (1, 1) to the correlation circuit 5, and the correlation circuit 5 calculates k+1 R 00 and k+1 R 11 . . On the other hand, in the metric memory 8, addresses (0, 0) and (0,
Based on 1), read k M 00 and k M 01 . In the arithmetic circuit, the output of the correlation circuit 5 and the metric memory 8
Calculate the first line of equation (1) from the output of . In Figure 3, k M 00 + k+1 R 00 was large, so k+1 M 00 =
kM 00 + k+1 R 00 , and "0" indicating that (0,0) has been selected is output as the path selection signal.
In the path memory, addresses (0,0) and (0,1) are stored in an address register 11, and address (0,0) is selected based on a path selection signal. Based on this address, the path (0, 0, 0, 0) corresponding to the state (0, 0) is read out from the RAM 12, shifted one bit to the left in the shift register 13, and a new bit is generated at the far right. circuit 14
A new bit generated by is input.
Since k+1 M 00 has been found, k+1 M 00 is written to the write address (0,0) determined by the write address generator 10, and the RAM 1 of the path memory
2 also to address (0,0) (0,0,0,0)
is written. If we execute equation (1) in order from the top, the write addresses will be (0,0), (1,0),
It changes sequentially to (0, 1) and (1, 1). in the same way
k M 00 + k+1 R 11 is written to k +1 M 10 and RAM1
Address (1,0) of 2 is address (0,0)
The contents (0, 0, 0, 0) are shifted to the left by 1 bit and "1" is inserted to the right end, resulting in (0, 0, 0, 1). Also, k M 10 + k+1 R 10 is written to k+1 M 01 ,
Address (0, 1) of RAM12 is obtained by shifting the contents (0, 0, 0, 1) of address (1, 0) to the left by 1 bit and inserting "0" to the right end (0, 0,
0,1). Finally k+1 M 11 has k M 11 + k+1
R 10 is written, RAM12 address (1,1)
is the content (0,0,1,1,) of address (1,1)
Shift 1 bit to the left and insert "1" to the right end, resulting in (0, 1, 1, 1). In this embodiment, the latest bit to be entered at the right end is the left bit of the write address.

第4図の実施例ではシフト・レジスタ13でシ
フトして出される左端のビツトを復号結果として
いる。これは第3図の例のようにパス・メモリの
長さ以内でマージンしている場合には良いがマー
ジンしていない場合には判定結果が定まらず正し
い復号ができない。この誤りを減少させるために
は書き込まれた新たなメトリツクのうちの最大メ
トリツクの書込みアドレスを記憶しておきこの最
大メトリツクのアドレスの左端のビツトを判定出
力とする方法がある。しかし、この方法を用いる
と式(1)に対応する4通りの計算が終了した後で再
びアドレスを設定して読み出さねばならないた
め、シンボル周期内で実行する演算数が増大し回
路の高速化が要求される。いいかえると、同じ回
路でも適用可能なビツトレートの最大値が小さく
なる。本発明ではこれを避けかつ最大メトリツク
のアドレスのパスから読み出す回路を実現する。
In the embodiment shown in FIG. 4, the leftmost bit shifted by the shift register 13 is taken as the decoding result. This is good if there is a margin within the length of the path memory, as in the example of FIG. 3, but if there is no margin, the determination result will not be determined and correct decoding will not be possible. In order to reduce this error, there is a method of storing the write address of the largest metric among the newly written metrics and using the leftmost bit of the address of this largest metric as the judgment output. However, when this method is used, the address must be set and read again after the four calculations corresponding to equation (1) are completed, which increases the number of operations to be executed within a symbol period and increases the speed of the circuit. required. In other words, the maximum bit rate that can be applied to the same circuit becomes smaller. The present invention avoids this and implements a circuit that reads from the path of the address with the maximum metric.

次に図面を参照して本発明について詳細に説明
する。
Next, the present invention will be explained in detail with reference to the drawings.

第5図は本発明の一実施例を示すブロツク図で
ある。入力端子110からは第4図のメトリツク
更新回路の出力として得られる更新されたメトリ
ツク値、つまりメトリツク・メモリ8への書込み
データ108が入力される。式(1)に基いた演算が
始まると、まず入力端子105からのモード切換
信号で最大メトリツク・メモリ21が初期設定さ
れる。新たなメトリツク値が入力端子110から
入力されると比較器20で最大メトリツク・メモ
リの値と新たなメトリツク値とが比較され、比較
器20は新たなメトリツク値の方が大きい場合に
のみ最大値更新パルスである書込みパルスを最大
メトリツク・メモリ21へ出力し、端子110か
らの入力を最大メトリツク・メモリへ書込む。こ
のようにすれば式(1)の演算をメトリツク更新回路
が終了する時点ではメトリツク・メモリの最大値
が最大メトリツクに記憶される。比較器20の出
力の最大値更新パルスは同時に判定出力記憶回路
22へのラツチ信号として供給されている。入力
端子111は第4図の端子107に接続されてお
り、第4図のシフト・レジスタ13の最終出力が
入力される。判定出力記憶回路22はラツチ回路
で実現され、最大値更新パルスが到着したときの
端子111からの値を記憶している。こうする
と、式(1)の全ての演算が終了したときの判定出力
記憶回路の内容は最後に最大値更新パルスが出力
されたときのパス・メモリの最終ビツトつまりメ
トリツクが最大のときのパス・メモリの最終ビツ
トが記憶されることになり、パスがマージしてい
ないときにも、誤り率の小さい判定結果を得るこ
とができる。
FIG. 5 is a block diagram showing one embodiment of the present invention. The updated metric value obtained as the output of the metric update circuit shown in FIG. When the calculation based on equation (1) begins, the maximum metric memory 21 is first initialized by a mode switching signal from the input terminal 105. When a new metric value is input from the input terminal 110, the comparator 20 compares the value in the maximum metric memory with the new metric value, and the comparator 20 returns the maximum value only if the new metric value is larger. A write pulse, which is an update pulse, is output to the maximum metric memory 21, and the input from the terminal 110 is written to the maximum metric memory. In this way, the maximum value of the metric memory is stored in the maximum metric when the metric update circuit completes the calculation of equation (1). The maximum value update pulse of the output of the comparator 20 is simultaneously supplied to the judgment output storage circuit 22 as a latch signal. Input terminal 111 is connected to terminal 107 in FIG. 4, and receives the final output of shift register 13 in FIG. The judgment output storage circuit 22 is realized by a latch circuit, and stores the value from the terminal 111 when the maximum value update pulse arrives. In this way, the contents of the judgment output storage circuit when all the calculations in equation (1) are completed will be the last bit of the path memory when the maximum value update pulse was last output, that is, the path path when the metric is maximum. Since the last bit of the memory is stored, a determination result with a small error rate can be obtained even when paths are not merged.

このようにすれば判定出力は式(1)の演算終了と
同時に得られるもので回路の動作速度を特に上げ
る必要もない。
In this way, the judgment output can be obtained at the same time as the calculation of equation (1) is completed, and there is no need to particularly increase the operating speed of the circuit.

以上記したように本発明によれば受信信号と複
数の受信候補信号との相関を計算する相関回路
と、該相関回路出力を用いて時分割処理よつて複
数の受信パタンに対応した複数のパスメトリツク
値を更新するとともにパス選択情報を出力するメ
トリツク更新回路と、前記パス選択情報に基いて
時分割処理によつて複数の復号候補パタンを選択
するパスメモリとから構成されるビタビ復号器に
おいてパスがマージしない場合にも誤り率が小さ
くしかも回路の動作速度に余裕のある最適パス判
定回路を得ることができる。
As described above, according to the present invention, there is provided a correlation circuit that calculates the correlation between a received signal and a plurality of reception candidate signals, and a plurality of path metrics corresponding to a plurality of reception patterns by time-division processing using the output of the correlation circuit. A Viterbi decoder consists of a metric update circuit that updates values and outputs path selection information, and a path memory that selects multiple decoding candidate patterns by time-sharing processing based on the path selection information. Even when merging is not performed, it is possible to obtain an optimal path determination circuit that has a small error rate and has a margin for operating speed.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は畳み込み符号器の例を示すブロツク
図、第2図は畳み込み符号の構造を示す状態遷移
図、第3図はビタビ復号器の内部状態を示す図、
第4図は従来のビタビ復号器の実施例を示すブロ
ツク図である。第5図は本発明の一実施例を示す
ブロツク図で、参照数字20,21,22はそれ
ぞれ比較回路、最大メトリツク・メモリ、判定出
力記憶回路を示す。
FIG. 1 is a block diagram showing an example of a convolutional encoder, FIG. 2 is a state transition diagram showing the structure of a convolutional code, and FIG. 3 is a diagram showing the internal state of a Viterbi decoder.
FIG. 4 is a block diagram showing an embodiment of a conventional Viterbi decoder. FIG. 5 is a block diagram showing one embodiment of the present invention, in which reference numerals 20, 21, and 22 indicate a comparison circuit, a maximum metric memory, and a judgment output storage circuit, respectively.

Claims (1)

【特許請求の範囲】[Claims] 1 受信信号と複数の受信候補信号との相関を計
算する相関回路と、該相関回路出力を用いて時分
割処理によつて複数の受信パタンに対応した複数
のパスメトリツク値を更新するとともにパス選択
情報を出力するメトリツク更新回路と、前記パス
選択情報に基いて、時分割処理によつて複数の復
号候補パタンを選択するパスメモリとから構成さ
れるビタビ復号器において、前記メトリツク更新
回路で順次得られる新たなメトリツク値の各時点
での最大値を記憶する最大メトリツク・メモリ
と、該最大メトリツク・メモリと新たに得られた
メトリツク値を比較し新たに得られたメトリツク
値がより大きい場合には最大メトリツクの内容を
更新する最大値更新パルスを送出する比較回路
と、前記最大値更新パルスが到着したときの順次
選択される前記パスメモリの最終ビツトを記憶す
る判定出力記憶回路から構成され、前記パスメモ
リが全てのパスに対して更新された時点での判定
出力記憶回路の内容を最適パスによる復号結果と
して出力することを特徴としたビタビ復号器の最
適パス判定回路。
1 A correlation circuit that calculates the correlation between a received signal and a plurality of reception candidate signals, and a correlation circuit that uses the output of the correlation circuit to update a plurality of path metric values corresponding to a plurality of reception patterns through time-division processing, and also to update path selection information. In the Viterbi decoder, which is composed of a metric update circuit that outputs a metric update circuit, and a path memory that selects a plurality of decoding candidate patterns by time-sharing processing based on the path selection information, the metric update circuit sequentially obtains A maximum metric memory that stores the maximum value of new metric values at each point in time, and compares the maximum metric memory with the newly obtained metric value, and if the newly obtained metric value is larger, the maximum metric memory is stored. It consists of a comparison circuit that sends out a maximum value update pulse that updates the content of the metric, and a judgment output storage circuit that stores the final bit of the path memory that is sequentially selected when the maximum value update pulse arrives, and An optimal path determination circuit for a Viterbi decoder, characterized in that the contents of the determination output storage circuit at the time when the memory is updated for all paths are output as a decoding result by the optimal path.
JP12845382A 1982-07-23 1982-07-23 Optimum path discriminating circuit of viterbi decoder Granted JPS5919455A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12845382A JPS5919455A (en) 1982-07-23 1982-07-23 Optimum path discriminating circuit of viterbi decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12845382A JPS5919455A (en) 1982-07-23 1982-07-23 Optimum path discriminating circuit of viterbi decoder

Publications (2)

Publication Number Publication Date
JPS5919455A JPS5919455A (en) 1984-01-31
JPS638652B2 true JPS638652B2 (en) 1988-02-24

Family

ID=14985081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12845382A Granted JPS5919455A (en) 1982-07-23 1982-07-23 Optimum path discriminating circuit of viterbi decoder

Country Status (1)

Country Link
JP (1) JPS5919455A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62233933A (en) * 1986-04-03 1987-10-14 Toshiba Corp Viterbi decoding method
CA2115445A1 (en) * 1992-06-22 1994-01-06 Masami Abe Device for and method of continuing bit errors and device for and method of identifying signals

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5542440A (en) * 1978-09-20 1980-03-25 Chiyou Lsi Gijutsu Kenkyu Kumiai Decoding device for convolutional code

Also Published As

Publication number Publication date
JPS5919455A (en) 1984-01-31

Similar Documents

Publication Publication Date Title
KR100426712B1 (en) Viterbi decoder
US4777636A (en) Path trace viterbi decoder
US4905317A (en) Path memory control method in Viterbi decoder
KR100538730B1 (en) Viterbi decoding apparatus and viterbi decoding method
US4606027A (en) Error correction apparatus using a Viterbi decoder
KR940010435B1 (en) Path memory of Viterbi decoder
KR100528424B1 (en) Viterbi decoding apparatus and viterbi decoding method
JPH0144058B2 (en)
US5257263A (en) Circuit for decoding convolutional codes for executing the survivor path storage and reverse scanning stage of a Viterbi algorithm
US6697442B1 (en) Viterbi decoding apparatus capable of shortening a decoding process time duration
US5878060A (en) Viterbi decoding apparatus and viterbe decoding method
JP3784896B2 (en) Viterbi decoder logic block
KR100311504B1 (en) state metric memory in viterbi decoder and method for decoding using the same
JPS638652B2 (en)
JP4580927B2 (en) Viterbi decoding apparatus and Viterbi decoding method
JP4047697B2 (en) Viterbi decoder
JP2904271B2 (en) Path memory unit for Viterbi decoder and decoding method
JPS6319097B2 (en)
KR100205547B1 (en) Trace-back device for viterbi decoder
KR960001471B1 (en) Vitervi decoder
KR100240663B1 (en) Vitervi decoder with add comparative selecting circuit
KR100359805B1 (en) Viterbi decoder and method for decoding in viterbi decoder
JP2004120791A (en) Viterbi decoder
JPH07288478A (en) Viterbi decoding method and Viterbi decoding device
KR20010008761A (en) Fast viterbi decoder for cdma mobile station employing parallel add-select-compare and traceback architecture