JP2917577B2 - Arithmetic unit - Google Patents

Arithmetic unit

Info

Publication number
JP2917577B2
JP2917577B2 JP3127150A JP12715091A JP2917577B2 JP 2917577 B2 JP2917577 B2 JP 2917577B2 JP 3127150 A JP3127150 A JP 3127150A JP 12715091 A JP12715091 A JP 12715091A JP 2917577 B2 JP2917577 B2 JP 2917577B2
Authority
JP
Japan
Prior art keywords
arithmetic
output
addition
control signal
circuit
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 - Lifetime
Application number
JP3127150A
Other languages
Japanese (ja)
Other versions
JPH04352518A (en
Inventor
利広 石川
勝彦 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP3127150A priority Critical patent/JP2917577B2/en
Publication of JPH04352518A publication Critical patent/JPH04352518A/en
Application granted granted Critical
Publication of JP2917577B2 publication Critical patent/JP2917577B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)
  • Dc Digital Transmission (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は誤り訂正用畳み込み符号
のビタビ復号を行うディジタル信号処理プロセッサ内部
の演算装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic unit in a digital signal processor for performing Viterbi decoding of a convolutional code for error correction.

【0002】[0002]

【従来の技術】近年、ディジタル信号処理プロセッサ
(以下DSPと略称する)は、移動体通信分野へのディ
ジタルシステム導入の動きに合わせて、携帯電話等への
機器組み込み用途のプロセッサとして注目されている。
このようなディジタル移動通信用音声符号化装置を実現
するためのDSPにおいては、音声の符号化処理等の演
算の他に、誤り訂正処理を行う必要がある。誤り訂正の
手法にはビタビ復号を使用するものがある。
2. Description of the Related Art In recent years, a digital signal processor (hereinafter abbreviated as DSP) has been receiving attention as a processor for use in incorporating a device into a portable telephone or the like in accordance with the trend of introduction of a digital system in the field of mobile communication. .
In a DSP for realizing such a voice coding apparatus for digital mobile communication, it is necessary to perform error correction processing in addition to calculations such as voice coding processing. Some error correction techniques use Viterbi decoding.

【0003】ビタビアルゴリズムは、加算、比較、選択
と言う単純な処理の繰り返しで畳み込み符号の最尤復号
を実現するものである。このビタビ復号では、情報ビッ
ト1ビットに対応する符号化データ(受信系列)を得る
ごとに、その時点での各状態の生き残りパスのメトリッ
クを計算し、更新する。図3は拘束長kの畳み込み符号
器において、ある時点における状態S2n(nは正整数)
に対し、一つ前の時点の状態Snと状態Sn+2k-1から状
態遷移を表す2本のパスが延びている様子を示してい
る。a、bは状態S2nに入力するパスの出力シンボルと
受信系列とのハミング距離(ブランチメトリック)であ
る。パスの選択はまずあらかじめ計算しておいた各ブラ
ンチのメトリックのテーブルから、一つ前の時点の生き
残りパスのそれぞれのメトリックの値に上記ブランチメ
トリックを加えることにより各パスの総合のメトリック
を算出する。状態S2nに入力する2本のパスのメトリッ
クを比較し、ハミング距離の合計が小さいパスを残し、
他は捨てる。ビタビアルゴリズムによる畳み込み符号の
復号は以上のように、ブランチメトリックと一つ前の時
点までの入力に対するパスメトリックとの加算、メトリ
ックの比較、最適パスの選択。という加算比較選択演算
及びパスメトリックの記憶を、各時系列ごとに k-1
の状態に対して行う必要がある。
The Viterbi algorithm realizes maximum likelihood decoding of a convolutional code by repeating simple processing such as addition, comparison and selection. In this Viterbi decoding, every time encoded data (reception sequence) corresponding to one information bit is obtained, the metric of the surviving path in each state at that time is calculated and updated. FIG. 3 shows a state S2n (n is a positive integer) at a certain time point in a convolutional encoder having a constraint length k.
On the other hand, two paths representing the state transition from the state Sn and the state Sn + 2k-1 at the immediately preceding time point are extended. a and b are Hamming distances (branch metrics) between the output symbols of the path input to the state S2n and the reception sequence. In selecting a path, a total metric of each path is calculated by adding the above branch metric to the value of each metric of the surviving path at the immediately preceding time from a metric table of each branch calculated in advance. . The metric of the two paths input to the state S2n is compared, and a path having a small total Hamming distance is left.
Discard others. As described above, the decoding of the convolutional code by the Viterbi algorithm is the addition of the branch metric to the path metric for the input up to the immediately preceding point, comparison of the metric, and selection of the optimal path. It is necessary to perform the addition / comparison / selection operation and storage of the path metric for 2 k−1 states for each time series.

【0004】図2は従来の演算装置のブロック図を示す
ものである。図2において、1はプロセッサの命令語や
ビタビ復号における各状態のパスのメトリック(累積計
量)、情報ビット1ビットに対応する符号化データ(受
信系列)の値に対して各パスがとるブランチメトリック
の値のテーブル、各状態における生き残りパスの選択結
果などを記憶する主記憶部、2は主記憶部1に接続され
データの供給や演算結果の格納等を行うバス、12は算
術論理演算を行う算術論理演算回路である。10は論理
演算回路12の左側入力の値を一時記憶するラッチ回路
で6は右側入力の値を一時記憶するラッチ回路、18と
19は演算結果を一時記憶するレジスタである。
FIG. 2 shows a block diagram of a conventional arithmetic unit. In FIG. 2, reference numeral 1 denotes a metric (cumulative metric) of a path in each state in a command word of a processor or Viterbi decoding, and a branch metric taken by each path with respect to a value of encoded data (reception sequence) corresponding to one information bit. , A main storage unit that stores a selection result of a surviving path in each state, a bus 2 connected to the main storage unit 1 for supplying data, storing a calculation result, and the like, and 12 performing an arithmetic and logic operation. It is an arithmetic logic operation circuit. 10 is a latch circuit for temporarily storing the value of the left input of the logical operation circuit 12, 6 is a latch circuit for temporarily storing the value of the right input, and 18 and 19 are registers for temporarily storing the operation results.

【0005】以上のように構成された演算装置につい
て、1つの受信系列に対して行うビタビ復号の加算比較
選択演算とパス選択信号の記憶の動作について以下のよ
うな6つのステップに分けて説明する。
[0005] In the arithmetic unit configured as described above, the operation of addition / comparison / selection operation of Viterbi decoding performed on one received sequence and the operation of storing the path selection signal will be described in the following six steps. .

【0006】(1)パスメトリックとブランチメトリッ
クの第1の加算ステップ 図3に示した状態Snにおけるパスメトリックの値を主
記憶部1からバス2を介してラッチ回路10に格納し、
ブランチメトリックaの値を同様に主記憶部1からバス
2を介してラッチ回路6に格納する。算術論理演算回路
12はラッチ回路10と6の内容の加算を行いレジスタ
18に格納する。
(1) First Addition Step of Path Metric and Branch Metric The value of the path metric in the state Sn shown in FIG. 3 is stored in the latch circuit 10 from the main storage unit 1 via the bus 2,
Similarly, the value of the branch metric a is stored in the latch circuit 6 from the main storage unit 1 via the bus 2. The arithmetic and logic operation circuit 12 adds the contents of the latch circuits 10 and 6 and stores the result in the register 18.

【0007】(2)パスメトリックとブランチメトリッ
クの第2の加算ステップ 図3に示した状態Sn+2k-1におけるパスメトリックの値
を主記憶部1からバス2を介してラッチ回路10に格納
し、ブランチメトリックbの値を同様に主記憶部1から
バス2を介してラッチ回路6に格納する。算術論理演算
回路12はラッチ回路10と6の内容の加算を行いレジ
スタ19に格納する。
(2) Second Addition Step of Path Metric and Branch Metric The value of the path metric in the state Sn + 2 k-1 shown in FIG. 3 is stored in the latch circuit 10 from the main storage unit 1 via the bus 2. Then, the value of the branch metric b is similarly stored in the latch circuit 6 from the main storage unit 1 via the bus 2. The arithmetic and logic operation circuit 12 adds the contents of the latch circuits 10 and 6 and stores the result in the register 19.

【0008】(3)2個の加算結果の減算(大小比較)
ステップ レジスタ18と19の内容をそれぞれラッチ回路10と
6に格納する。算術論理演算回路12はラッチ回路10
と6の減算を行う。結果の格納はしない。
(3) Subtraction of two addition results (comparing large and small)
The contents of the step registers 18 and 19 are stored in the latch circuits 10 and 6, respectively. The arithmetic and logic operation circuit 12 includes the latch circuit 10
And 6 are subtracted. No result is stored.

【0009】(4)演算結果の符号判定(選択)ステッ
プ 制御部(図示せず)は(3)の減算結果の符号を判断し
て下記(5)(6)のステップのプログラム制御(分
岐)を行う。
(4) Step of judging (selecting) sign of operation result A control unit (not shown) judges the sign of the subtraction result of (3) and performs program control (branch) of the following steps (5) and (6). I do.

【0010】(5)小であると判定された加算結果の格
納(パスメトリックの更新)ステップ (4)の結果により(3)の減算結果が負であればレジ
スタ18の内容を主記憶部1に格納する。(3)の減算
結果が正であればレジスタ19の内容を主記憶部1に格
納する。
(5) Storing the addition result determined to be small (updating the path metric) Step If the subtraction result of (3) is negative according to the result of (4), the contents of the register 18 are stored in the main storage unit 1. To be stored. If the subtraction result of (3) is positive, the contents of the register 19 are stored in the main storage unit 1.

【0011】(6)パス選択信号の記憶ステップ (4)の結果により(3)の減算結果が負であれば、
値″0″を主記憶部1に格納する。(3)の減算結果が
正であれば値″1″を主記憶部1に格納する。
(6) Step of storing path selection signal If the result of (3) is negative according to the result of (4),
The value “0” is stored in the main storage unit 1. If the subtraction result of (3) is positive, the value “1” is stored in the main storage unit 1.

【0012】このように上記従来の演算装置では、算術
論理演算回路においてビタビ復号における加算と比較を
行い、この比較結果によってプログラム制御を行うこと
により、ビタビ復号処理を行うことができる。
As described above, in the above-described conventional arithmetic device, the arithmetic and logic operation circuit performs addition and comparison in Viterbi decoding, and performs program control based on the comparison result, thereby performing Viterbi decoding processing.

【0013】[0013]

【発明が解決しようとする課題】しかしながら上記従来
の演算装置では、1回の加算比較選択演算に要する演算
ステップ数が多く、またパス選択信号1ビットをメモリ
ーの1ワードに記憶するため大きいメモリー量を必要と
するという問題点があった。
However, in the above-mentioned conventional arithmetic unit, the number of operation steps required for one addition / comparison / selection operation is large, and a large amount of memory is required because one bit of the path selection signal is stored in one word of the memory. There was a problem that required.

【0014】本発明はこのような従来の問題点を解決す
るものであり、少ない演算ステップ数と少ないメモリー
量でビタビ復号を行うことができる優れた演算装置を提
供することを目的とするものである。
An object of the present invention is to solve such a conventional problem and to provide an excellent arithmetic unit capable of performing Viterbi decoding with a small number of operation steps and a small memory amount. is there.

【0015】[0015]

【課題を解決するための手段】本発明は前記目的を達成
するために、少なくともビタビ復号におけるパスメトリ
ックとブランチメトリックを記憶する記憶手段と、この
記憶手段から読み出したパスメトリックとブランチメト
リックの加算を行う算術論理演算手段と、この算術論理
演算手段が出力する複数の加算結果の内の少なくとも1
つを一時記憶する一時記憶手段と、前記算術論理演算手
段が出力する複数の加算結果を比較して、どの加算結果
が小さいかを示す選択制御信号を出力する比較手段と、
この比較手段が出力する選択制御信号に従って加算結果
を選択して出力する選択手段とを備えた構成である。
According to the present invention, in order to achieve the above object, at least storage means for storing a path metric and a branch metric in Viterbi decoding, and addition of the path metric and the branch metric read out from the storage means. Arithmetic logic operation means for performing , and at least one of a plurality of addition results output by the arithmetic logic operation means
Temporary storage means for temporarily storing one, and comparing means for comparing a plurality of addition results output by the arithmetic and logic operation means, and outputting a selection control signal indicating which addition result is smaller,
Selection means for selecting and outputting the addition result according to the selection control signal output by the comparison means.

【0016】[0016]

【作用】したがって本発明によれば、加算器による加算
結果とあらかじめ第1のレジスタに一時記憶した加算結
果との大小比較を比較器が行い、比較器で小であると判
定した加算結果を第2のメモリが記憶し、定数出力手段
が出力する定数をシフタがnビット左にシフトして出力
した結果と選択制御信号の格納先データとの算術論理演
算を、算術論理演算回路が行って、比較器が出力する選
択制御信号を格納先データの第n番目のビット位置に格
納することにより、ビタビ復号における生き残りパスの
累積計量の加算比較選択演算とパス選択信号の記憶を少
ないステップ数でまた小さいメモリー量で行うことがで
きるという効果を有する。
Therefore, according to the present invention, the comparator compares the result of the addition by the adder with the result of the addition temporarily stored in the first register, and compares the result of the addition determined to be small by the comparator with the result of the comparison. The arithmetic and logic circuit performs an arithmetic and logic operation on a result stored in the memory of the second memory and output by the shifter by shifting the constant output to the left by n bits to the storage destination data of the selection control signal. By storing the selection control signal output from the comparator in the n-th bit position of the storage destination data, the addition / comparison / selection operation of the cumulative metric of the surviving path in Viterbi decoding and the storage of the path selection signal can be performed with a small number of steps. This has the effect that it can be performed with a small amount of memory.

【0017】[0017]

【実施例】以下本発明の一実施例の演算装置について、
図面を参照しながら説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An arithmetic unit according to one embodiment of the present invention will be described below.
This will be described with reference to the drawings.

【0018】図1は本発明の実施例における演算装置の
構成図を示すものである。図1において、符号1は第1
のメモリ部材としての主記憶部で、この主記憶部1に
は、プロセッサの命令語やビタビ復号における各状態の
パスのメトリック(累積計量)、情報ビット1ビットに
対応する符号化データ(受信系列)の値に対して各パス
がとるブランチメトリックの値のテーブル、各状態にお
ける生き残りパスの選択結果などが記憶される。
FIG. 1 is a diagram showing the configuration of an arithmetic unit according to an embodiment of the present invention. In FIG. 1, reference numeral 1 denotes a first
The main storage unit 1 stores a command word of a processor, a metric (cumulative metric) of a path in each state in Viterbi decoding, and encoded data (received sequence) corresponding to one information bit. ), A table of branch metric values taken by each path for each value, a selection result of a surviving path in each state, and the like are stored.

【0019】2は主記憶部1に接続されデータの供給や
演算結果の格納等を行なうバス、3は最下位ビットの値
が1で他のビットが全て0である定数を出力する定数回
路、4はバス2に接続されたプロセッサの命令デコート
部(図示せず)から出力されるシフトビット数を一時記
憶してバス2等に出力するレジスタ、5は定数回路3ま
たはレジスタ4の出力を入力として、レジスタ4で示さ
れるシフトビット数だけシフトしてまたはシフトせずに
出力するバレルシフタ、6はバレルシフタ5の出力をラ
ッチするラッチ回路、9は排他的論理和ゲートから構成
されラッチ回路6の出力を反転または非反転して出力す
る反転回路、10はデータバス出力をラッチするラッチ
回路である。
Reference numeral 2 denotes a bus connected to the main storage unit 1 for supplying data, storing operation results, and the like, 3 denotes a constant circuit for outputting a constant in which the value of the least significant bit is 1 and all other bits are 0; Reference numeral 4 denotes a register for temporarily storing the number of shift bits output from an instruction decoding unit (not shown) of a processor connected to the bus 2 and outputting it to the bus 2 or the like. Reference numeral 5 denotes an output of the constant circuit 3 or the register 4 , A barrel shifter for shifting the shift bit number indicated by the register 4 or outputting without shifting, 6 a latch circuit for latching the output of the barrel shifter 5, 9 an exclusive OR gate, and an output of the latch circuit 6 Is an inverting circuit that inverts or non-inverts and outputs a latch circuit 10 that latches the data bus output.

【0020】また、7は反転回路9に反転動作をするか
しないかを指示する制御信号8と論理演算回路12に論
理和をとるか論理積をとるかを指示する制御信号11を
出力する演算制御部、12はラッチ回路10と反転回路
9の出力を入力として算術論理演算を行う演算手段とし
ての算術論理演算回路、13は算術論理演算回路12の
出力を一時記憶するレジスタ、14はレジスタ13の内
容と算術論理演算回路12の出力との大小比較を行って
演算制御部7とセレクタ16に選択制御信号15を出力
する比較器、16は選択制御信号15に従ってレジスタ
13の内容と算術論理演算回路12の出力のうち小さい
方を選択するセレクタ、17はセレクタ出力を格納する
第2のメモリ部材としてのレジスタである。
An operation 7 outputs a control signal 8 for instructing the inversion circuit 9 to perform an inversion operation or not and a control signal 11 for instructing the logical operation circuit 12 to perform a logical sum or a logical product. A control unit 12 is an arithmetic and logic operation circuit as an arithmetic means for performing an arithmetic and logic operation by using the outputs of the latch circuit 10 and the inversion circuit 9 as inputs, 13 is a register for temporarily storing the output of the arithmetic and logic operation circuit 12, and 14 is a register 13 The comparator 16 compares the contents of the register 13 with the output of the arithmetic and logic operation circuit 12 and outputs a selection control signal 15 to the operation control unit 7 and the selector 16. A selector 17 selects the smaller one of the outputs of the circuit 12, and 17 is a register as a second memory member for storing the selector output.

【0021】このように構成された演算装置について、
以下動作を説明する。まず(表1)は選択制御信号15
の値と反転回路9、算術論理演算回路12の動作内容の
関係を示したものである。
With respect to the arithmetic unit configured as described above,
The operation will be described below. First, (Table 1) shows the selection control signal 15
And the operation contents of the inversion circuit 9 and the arithmetic and logic operation circuit 12 are shown.

【0022】[0022]

【表1】 [Table 1]

【0023】演算制御部7は(表1)に示した関係にし
たがって反転回路9と論理演算回路12を制御する。す
なわち、選択制御信号15が″0″の場合(レジスタ1
3の値が小の場合)反転回路9は反転動作を行なう一
方、算術論理演算回路12は論理積を演算によって求め
る。他方、選択制御信号15が″1″の場合(加算結果
が小の場合)反転回路9は非反転動作を行なう一方、算
術論理演算回路12は論理和を演算によって求める。
The arithmetic control unit 7 controls the inverting circuit 9 and the logical operation circuit 12 according to the relationship shown in (Table 1). That is, when the selection control signal 15 is “0” (register 1
The inversion circuit 9 performs an inversion operation, while the arithmetic and logic operation circuit 12 obtains a logical product by an operation. On the other hand, when the selection control signal 15 is "1" (when the addition result is small), the inversion circuit 9 performs a non-inversion operation, while the arithmetic and logic operation circuit 12 obtains a logical sum by operation.

【0024】以下、畳み込み符号器の1状態に対して行
うビタビ復号の加算比較選択演算とパス選択信号の記憶
の動作につき、図3を参照して、(1)パスメトリック
とブランチメトリックの第1の加算ステップ、(2)第
2の加算と比較選択のステップ、(3)パス選択信号の
ビット転送のステップの3つのステップに分けて説明す
る。
Referring to FIG. 3, the operation of addition / comparison / selection operation of Viterbi decoding performed for one state of the convolutional encoder and storage of the path selection signal will be described with reference to FIG. (2) a second addition and comparison selection step, and (3) a bit selection signal transfer step.

【0025】(1)パスメトリックとブランチメトリッ
クの第1の加算ステップ 図3に示した状態Snにおけるパスメトリックの値を主
記憶部1からバス2を介してラッチ回路10に格納し、
ブランチメトリックaの値を同様に主記憶部1からバス
2を介してラッチ回路6に格納する。このとき、バレル
シフタ6はシフト動作を行わない。算術論理演算回路1
2は、ラッチ回路10と6の内容の加算を行いレジスタ
13に格納する。またレジスタ17に一時記憶されてい
る1サイクル前の加算比較選択演算で更新されたパスメ
トリックの値を主記憶部1に格納する。
(1) First Addition Step of Path Metric and Branch Metric The value of the path metric in the state Sn shown in FIG. 3 is stored in the latch circuit 10 from the main storage unit 1 via the bus 2,
Similarly, the value of the branch metric a is stored in the latch circuit 6 from the main storage unit 1 via the bus 2. At this time, the barrel shifter 6 does not perform the shift operation. Arithmetic logic operation circuit 1
2 adds the contents of the latch circuits 10 and 6 and stores the result in the register 13. Further, the value of the path metric temporarily stored in the register 17 and updated by the addition / comparison / selection operation one cycle before is stored in the main storage unit 1.

【0026】(2)第2の加算と比較選択のステップ 図3に示した状態Sn+2k-1におけるパスメトリックの値
を主記憶部1からバス2を介してラッチ回路10に格納
し、ブランチメトリックbの値を同様に主記憶部1から
バス2を介してラッチ回路6に格納する。このときバレ
ルシフタ6はシフト動作を行なわない。算術論理演算回
路12はラッチ回路10と6の内容の加算を行い比較器
14に出力する。比較器14は加算結果とレジスタ13
の値との大小比較を行い、レジスタ13の値が小の場合
は″0″、加算結果が小の場合は″1″の1ビットの選
択制御信号15をセレクタ16と演算制御部7に出力す
る。セレクタ16は選択制御信号15が″0″の場合は
レジスタ13の値を、″1″の場合は算術論理演算回路
出力を選択してレジスタ17に格納する。
(2) Step of Second Addition and Comparison Selection The value of the path metric in the state Sn + 2 k-1 shown in FIG. 3 is stored in the latch circuit 10 from the main storage unit 1 via the bus 2; Similarly, the value of the branch metric b is stored in the latch circuit 6 from the main storage unit 1 via the bus 2. At this time, the barrel shifter 6 does not perform the shift operation. The arithmetic and logic operation circuit 12 adds the contents of the latch circuits 10 and 6 and outputs the result to the comparator 14. The comparator 14 calculates the addition result and the register 13
And outputs a 1-bit selection control signal 15 of "0" to the selector 16 and the arithmetic control unit 7 when the value of the register 13 is small and "1" when the addition result is small. I do. When the selection control signal 15 is “0”, the selector 16 selects the value of the register 13, and when the selection control signal 15 is “1”, selects the output of the arithmetic logic operation circuit and stores it in the register 17.

【0027】(3)パス選択信号のビット転送のステッ
プ まず主記憶部1内のパス選択信号を格納するデスティネ
ーションワードをバス2を介してラッチ回路10にラッ
チする。同時にバレルシフタ5は定数回路3から入力し
た定数(00000001)を、命令デコード部からレ
ジスタ4に格納されている値nだけ左にシフトして出力
し、ラッチ回路6にラッチする。次に反転回路9は(表
1)に示したように、ラッチ回路6の内容を、(2)の
ステップで演算制御部に入力された選択制御信号15
が″0″の場合は反転して、″1″の場合は非反転で算
術論理演算回路12に出力する。算術論理演算回路12
はラッチ回路10に格納されているデスティネーション
ワードと反転回路9の出力の論理演算を、(表1)に示
したように選択制御信号15が″0″の場合は論理
積、″1″の場合は論理和を算出し、バス2に出力し主
記憶部1に格納する。これによりパス選択信号(選択制
御信号15)を1ビット単位で主記憶部1の任意のビッ
ト位置に格納することができる。
(3) Step of Bit Transfer of Path Selection Signal First, a destination word for storing the path selection signal in the main storage unit 1 is latched by the latch circuit 10 via the bus 2. At the same time, the barrel shifter 5 shifts the constant (00000001) input from the constant circuit 3 to the left by the value n stored in the register 4 from the instruction decoding unit and outputs the same, and latches it in the latch circuit 6. Next, as shown in (Table 1), the inversion circuit 9 changes the contents of the latch circuit 6 to the selection control signal 15 input to the arithmetic control unit in the step (2).
Is "0", it is inverted, and if it is "1", it is output to the arithmetic and logic operation circuit 12 without being inverted. Arithmetic logic operation circuit 12
Indicates the logical operation of the destination word stored in the latch circuit 10 and the output of the inverting circuit 9, as shown in (Table 1), the logical product when the selection control signal 15 is “0”, and the logical operation of “1” In this case, a logical sum is calculated, output to the bus 2 and stored in the main storage unit 1. As a result, the path selection signal (selection control signal 15) can be stored in an arbitrary bit position of the main storage unit 1 in 1-bit units.

【0028】以上のように本実施例によれば、(2)の
ステップにおける算術論理演算回路12による加算結果
と(1)のステップであらかじめレジスタ13に一時記
憶した加算結果との大小比較を比較器14が行い、比較
器14が小であると判定した加算結果をセレクタ16が
選んでレジスタ17に一時記憶し、定数回路3が出力す
る定数をバレルシフタ5がnビット左にシフトして出力
した結果と選択制御信号の格納先データとの論理演算
を、(表1)に示す制御規則に従って反転回路9と算術
論理演算回路12が行なって、比較器14が出力する選
択制御信号15を格納先データの第n番目のビット位置
に1ビット単位で格納することにより、ビタビ復号にお
ける生き残りパスの累積計量の加算比較選択演算とパス
選択信号の記憶を従来例の半分という少ないステップ数
で、さらに小さいメモリー量で行うことができるという
効果を有する。
As described above, according to the present embodiment, the magnitude comparison between the addition result by the arithmetic and logic operation circuit 12 in the step (2) and the addition result temporarily stored in the register 13 in the step (1) is compared. The selector 16 selects and temporarily stores in the register 17 the addition result determined by the comparator 14 to be small, and the barrel shifter 5 shifts the constant output by the constant circuit 3 to the left by n bits and outputs it. The inversion circuit 9 and the arithmetic and logic operation circuit 12 perform a logical operation on the result and the storage data of the selection control signal in accordance with the control rules shown in (Table 1), and the selection control signal 15 output from the comparator 14 is stored in the storage destination. By storing the data in bit units at the n-th bit position of the data, the addition / comparison / selection operation of the accumulated metric of the surviving path in Viterbi decoding and the storage of the path selection signal are performed. A small number of steps that half the example has the effect that can be performed in smaller amount of memory.

【0029】また定数回路3が出力する最下位ビットの
みが1でそれ以外のビットが全て0である定数をバレル
シフタ5がシフトすることにより、パス選択信号の格納
先データのビット更新に必要なビットパターンデータを
生成することができ、プロセッサの命令語の中にビット
パターンデータ(データ幅16ビットの場合16ビッ
ト)を保持する代わりに、ビット転送先のビット位置に
対応したシフトビット数(データ幅16ビットの場合4
ビット)のみを保持すればよいので、短い語長の命令語
でビタビ復号処理を行うことができる。さらに本実施例
の構成要素であるバレルシフタ5や反転回路9、算術論
理演算回路12等は、ディジタル信号処理プロセッサ等
には数値演算用にあらかじめ設置されているのが普通で
あるため、わずかなハードウェアの追加のみで演算装置
を実現できるという効果も有する。
The barrel shifter 5 shifts a constant in which only the least significant bit output from the constant circuit 3 is 1 and all the other bits are 0, so that the bits necessary for updating the bit of the storage destination data of the path selection signal are changed. Pattern data can be generated. Instead of holding bit pattern data (16 bits for a data width of 16 bits) in a processor instruction word, the number of shift bits (data width) corresponding to the bit position of the bit transfer destination 4 for 16 bits
Bit) only, the Viterbi decoding process can be performed with an instruction word having a short word length. Further, the barrel shifter 5, the inverting circuit 9, the arithmetic and logic operation circuit 12 and the like, which are the components of the present embodiment, are usually installed in a digital signal processor or the like in advance for numerical operation, so that a slight hardware There is also an effect that an arithmetic unit can be realized only by adding hardware.

【0030】なお、実施例において、定数回路3の値は
最下位ビットのみを1、他のビットを0としたが、最上
位ビットのみを1としてバレルシフタ5で右シフトする
ようにしたり、最下位ビットのみを0、他のビットを1
として(表1)に於ける反転回路9の反転、非反転の制
御を逆にしたりしてもよい。
In the embodiment, the value of the constant circuit 3 is set such that only the least significant bit is 1 and the other bits are 0. However, only the most significant bit is set to 1 and the value is shifted to the right by the barrel shifter 5, Bit only 0, other bits 1
Alternatively, the control of inversion and non-inversion of the inversion circuit 9 in (Table 1) may be reversed.

【0031】[0031]

【発明の効果】本発明は上記実施例より明らかなよう
に、演算手段による加算結果とあらかじめ第1のレジス
タに一時記憶した加算結果との大小比較を比較器が行
い、比較器で小であると判定した加算結果を第2のメモ
リが記憶し、定数出力手段が出力する定数をシフタがシ
フトして出力した結果と選択制御信号の格納先データと
の算術論理演算を、演算手段が行って、比較器が出力す
る選択制御信号を格納先データの所定のビット位置に格
納するようにしたため、ビタビ復号における生き残りパ
スの累積計量の加算比較選択演算とパス選択信号の記憶
を少ないステップ数で、さらに小さいメモリー量で行う
ことができるという効果を有する。
According to the present invention, as is apparent from the above embodiment, the comparator compares the addition result by the arithmetic means with the addition result temporarily stored in the first register in advance, and the comparator compares the addition result with the addition result. The addition result determined by the second memory is stored in the second memory, and the arithmetic means performs an arithmetic and logic operation on the result of shifting and outputting the constant output by the constant output means and the storage data of the selection control signal. Since the selection control signal output by the comparator is stored at a predetermined bit position of the storage destination data, the addition and selection of the cumulative metric of the surviving path in Viterbi decoding and the storage of the path selection signal can be performed with a small number of steps. There is an effect that the operation can be performed with a smaller memory amount.

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

【図1】本発明の一実施例における演算装置の構成を示
すブロック図
FIG. 1 is a block diagram illustrating a configuration of an arithmetic unit according to an embodiment of the present invention.

【図2】従来の演算装置の概略構成を示すブロック図FIG. 2 is a block diagram showing a schematic configuration of a conventional arithmetic unit.

【図3】演算装置の動作説明のためのビタビ復号におけ
る畳み込み符号器の状態遷移のパスを示す図
FIG. 3 is a diagram showing a state transition path of a convolutional encoder in Viterbi decoding for explaining the operation of an arithmetic unit;

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

1 主記憶部(第1のメモリ部材) 2 バス 3 定数回路 4 レジスタ 5 バレルシフタ 6 ラッチ回路 7 演算制御部 8 制御信号 9 反転回路 10 ラッチ回路 11 制御信号 12 算術論理演算回路(演算手段) 13 レジスタ 14 比較器 15 選択制御信号 16 セレクタ 17 レジスタ(第2のメモリ部材) DESCRIPTION OF SYMBOLS 1 Main storage part (1st memory member) 2 Bus 3 Constant circuit 4 Register 5 Barrel shifter 6 Latch circuit 7 Operation control part 8 Control signal 9 Inverting circuit 10 Latch circuit 11 Control signal 12 Arithmetic logic operation circuit (Operation means) 13 Register 14 comparator 15 selection control signal 16 selector 17 register (second memory member)

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) H03M 13/00 G06F 11/10 310 G06F 17/10 H04L 25/08 ──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 6 , DB name) H03M 13/00 G06F 11/10 310 G06F 17/10 H04L 25/08

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 少なくともビタビ復号におけるパスメト
リックとブランチメトリックを記憶する記憶手段と、こ
の記憶手段から読み出したパスメトリックとブランチメ
トリックの加算を行う算術論理演算手段と、この算術論
演算手段が出力する複数の加算結果の内の少なくとも
1つを一時記憶する一時記憶手段と、前記算術論理演算
手段が出力する複数の加算結果を比較して、どの加算結
果が小さいかを示す選択制御信号を出力する比較手段
と、この比較手段が出力する選択制御信号に従って加算
結果を選択して出力する選択手段とを備えた演算装置。
Storage means for storing path metrics and branch metrics in claim 1 wherein at least Viterbi decoding, and arithmetic logic means for adding the path metric and the branch metric read out from the storage means, the arithmetic Theory
At least one of the plurality of addition results output by the logical operation means.
Temporary storage means for temporarily storing one of them, comparison means for comparing a plurality of addition results outputted by the arithmetic and logic operation means and outputting a selection control signal indicating which addition result is smaller, Selecting means for selecting and outputting an addition result according to a selection control signal to be output.
【請求項2】 あらかじめ定められた定数を出力する定
数出力手段と、この定数出力手段の出力をシフトするシ
フタと、このシフタのシフト動作に必要なシフトビット
数を出力するシフトビット数出力手段と、前記算術論理
演算手段が加算のほかに前記比較手段からの選択制御信
号により、前記シフタの出力またはその反転結果と前記
記憶手段に記憶されたデータとの論理積または論理和を
行い、前記比較手段が出力する選択制御信号を1ビット
単位で前記記憶手段の任意のビット位置に格納すること
を特徴とする請求項1記載の演算装置。
2. A constant output means for outputting a predetermined constant, a shifter for shifting an output of the constant output means, and a shift bit number output means for outputting a shift bit number necessary for a shift operation of the shifter. , the selection control signal from the arithmetic logic <br/> calculating means said comparing means in addition to the sum, logical product of the data stored in the <br/> storage means output or the inverted result of the shifter 2. The arithmetic unit according to claim 1, wherein a logical sum is performed, and the selection control signal output from the comparing unit is stored in an arbitrary bit position of the storage unit in units of one bit.
JP3127150A 1991-05-30 1991-05-30 Arithmetic unit Expired - Lifetime JP2917577B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3127150A JP2917577B2 (en) 1991-05-30 1991-05-30 Arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3127150A JP2917577B2 (en) 1991-05-30 1991-05-30 Arithmetic unit

Publications (2)

Publication Number Publication Date
JPH04352518A JPH04352518A (en) 1992-12-07
JP2917577B2 true JP2917577B2 (en) 1999-07-12

Family

ID=14952862

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3127150A Expired - Lifetime JP2917577B2 (en) 1991-05-30 1991-05-30 Arithmetic unit

Country Status (1)

Country Link
JP (1) JP2917577B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU652896B2 (en) * 1992-09-29 1994-09-08 Matsushita Electric Industrial Co., Ltd. Arithmetic apparatus
US5465275A (en) * 1993-11-16 1995-11-07 At&T Ipm Corp. Efficient utilization of present state/next state registers
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6188334A (en) * 1984-10-06 1986-05-06 Nec Corp Divider circuit
JPS62151031A (en) * 1985-12-25 1987-07-06 Nec Corp Data processor
JPS63229531A (en) * 1987-03-19 1988-09-26 Matsushita Electric Ind Co Ltd Residue arithmetic unit

Also Published As

Publication number Publication date
JPH04352518A (en) 1992-12-07

Similar Documents

Publication Publication Date Title
AU652896B2 (en) Arithmetic apparatus
US5946361A (en) Viterbi decoding method and circuit with accelerated back-tracing and efficient path metric calculation
US8495119B2 (en) Efficient check node message transform approximation for LDPC decoder
JPH10107651A (en) Viterbi decoder
US5440504A (en) Arithmetic apparatus for digital signal processor
KR100439211B1 (en) The arithmetic processing unit
US20050157823A1 (en) Technique for improving viterbi decoder performance
JP3274668B2 (en) Arithmetic processing device and arithmetic processing method
US7131055B2 (en) Fast bit-parallel Viterbi decoder add-compare-select circuit
JP2917577B2 (en) Arithmetic unit
US7437657B2 (en) High speed add-compare-select processing
US6910177B2 (en) Viterbi decoder using restructured trellis
JP3191442B2 (en) Arithmetic unit for Viterbi decoding
US7852960B2 (en) Method of computing path metrics in a high-speed Viterbi detector and related apparatus thereof
JP3259387B2 (en) Viterbi decoder
JP3250363B2 (en) Arithmetic unit
JP3237267B2 (en) Arithmetic unit
JP3269845B2 (en) Viterbi decoder
JP2591332B2 (en) Error correction decoding device
JPH0722969A (en) Arithmetic unit
KR100414152B1 (en) The Processing Method and Circuits for Viterbi Decoding Algorithm on Programmable Processors
JP3996858B2 (en) Arithmetic processing unit
JPH0766735A (en) Viterbi decoding device and state metric normalizing method
JP3351414B2 (en) Viterbi decoding device
JP2001024526A (en) Viterbi decoder

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080423

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100423

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110423

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120423

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120423

Year of fee payment: 13