JPH10107652A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH10107652A
JPH10107652A JP8258584A JP25858496A JPH10107652A JP H10107652 A JPH10107652 A JP H10107652A JP 8258584 A JP8258584 A JP 8258584A JP 25858496 A JP25858496 A JP 25858496A JP H10107652 A JPH10107652 A JP H10107652A
Authority
JP
Japan
Prior art keywords
sets
register
stored
adder
data
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
JP8258584A
Other languages
English (en)
Inventor
Hidetoshi Suzuki
木 秀 俊 鈴
Toshihiro Ishikawa
川 利 広 石
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 JP8258584A priority Critical patent/JPH10107652A/ja
Publication of JPH10107652A publication Critical patent/JPH10107652A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 メモリへの書き込みも含めたビタビ復号の効
率化 【解決手段】 2回のACS演算において、パスメトリ
ックは同一のものを利用するという特徴を利用し、連続
する2ワードへの書き込みが可能なメモリを用意するこ
とで、ACS演算を1ステップで実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラムを構成
する一連の命令を実行することによって所定の演算処理
を行う装置、特に誤り訂正用畳み込み符号のビタビ復号
( Viterbi decoding )を行うディジタル信号処理プロ
セッサ内部の演算装置に関する。
【0002】
【従来の技術】近年、ディジタル信号処理プロセッサ
(以下、DSPと略称する。)は、移動体通信分野への
ディジタルシステム導入の動きにあわせて、携帯電話な
どへの機器組み込み用途のプロセッサとして注目されて
いる。このようなディジタル移動通信を実現するための
DSPにおいては、音声の符号化処理などの演算の他
に、誤り訂正処理を行う必要がある。誤り訂正の手法に
はビタビ復号を利用するものがある。
【0003】ビタビアルゴリズムは、加算、比較、選択
(Add, Compare, Selectの頭文字を取ってACS演算と
呼ぶ。)という単純な処理の繰り返しで畳み込み符号の
最ゆう復号(Maximum Likelihood decoding)を実現する
ものである。このビタビ復号では、情報ビット1ビット
に対応する符号化データ(受信系列)を得るごとに、そ
の時点での各状態の生き残りパスの累積計量(以下、パ
スメトリックと呼ぶ。)を計算し、更新する。
【0004】図13はビタビ復号における畳み込み符号
器の状態遷移のパスを示す説明図である。拘束長Kの畳
み込み符号器において、ある時点における状態S[2
m](mは正整数)と状態S[2m+1]に対し、一つ
前の状態S[m]と状態S[m+2k-2 ]からそれぞれ
状態遷移を表す2本のパスが伸びている様子を示してい
る。A[2m]、B[2m]は、状態S[2m]および
S[2m+1]に入力するパスと受信系列とのハミング
距離(以下、ブランチメトリックと称する)である。
【0005】パスの選択は、次のようにして行う。各ブ
ランチメトリックの値と、一つ前の時点の生き残りパス
のパスメトリックの値をそれぞれ加えることにより、各
パスの総合のメトリックを算出する。状態S[2m]に
入力する2本のパスのパスメトリック(S[m]+A
[2m]およびS[m+2k-2 ]+B[2m])を比較
し、合計が小さいパスを残し、他は捨てる。ビタビアル
ゴリズムによる畳み込み符号の復号は、ブランチメトリ
ックと一つ前の時点までの入力に対するパスメトリック
との加算、加算結果の比較、最適パスの選択、という加
算、比較、選択演算およびパスメトリックの記憶を、各
時系列ごとに2k-1 個の状態に対して行う必要がある。
【0006】以下、従来の演算装置の一例について図1
4に示す概略ブロック図を参照しながら説明する。図1
4において、101はメモリであり、ビタビ復号におけ
る各状態のパスのメトリック(累積計量)、情報ビット
1ビットに対応する符号化データ(受信系列)の値に対
して各パスが取るブランチメトリック、各状態における
生き残りパスの選択結果(パスセレクト信号)などを記
憶する。102はメモリ101に接続し、データの供給
や演算結果の格納などを行うバス、103は算術論理演
算を行う算術論理演算回路、104と105は算術論理
演算回路103の左側入力の値と右側入力の値をそれぞ
れ一次記憶するラッチ回路、106と107はそれぞれ
演算結果を一次記憶するレジスタである。
【0007】以上のように構成された演算装置におい
て、一つの受信系列に対してビタビ復号の加算、比較、
選択演算により、図13の状態S[2m]、S[2m+
1]におけるパスメトリックを更新する動作について、
以下の12個のステップに分けて説明する。なお、
(1)から(6)までのステップが、S[2m]の状態
に遷移する加算、比較、選択のステップを示し、(7)
から(12)までのステップが、S[2m+1]の状態
に遷移する加算、比較、選択のステップを示す。
【0008】(1)パスメトリックとブランチメトリッ
クの第一の加算ステップ 図13に示した状態S[m]におけるパスメトリックの
値をメモリ101からバス102を介してラッチ回路1
04に格納し、ブランチメトリックA[2m]の値を同
様にメモリ101からバス102を介してラッチ回路1
05に格納する。算術論理演算回路103は、ラッチ回
路104と105の内容の加算を行い、レジスタ106
に格納する。その結果、レジスタ106には、S[m]
+A[2m]が格納される。
【0009】(2)パスメトリックとブランチメトリッ
クの第二の加算ステップ 図13に示した状態S[m+2k-2 ]におけるパスメト
リックの値をメモリ101からバス102を介してラッ
チ回路104に格納し、ブランチメトリックB[2m]
の値を同様にメモリ101からバス102を介してラッ
チ回路105に格納する。算術論理演算回路103は、
ラッチ回路104と105の内容の加算を行い、レジス
タ107に格納する。その結果、レジスタ106には、
S[m+2k-2 ]+B2m]が格納される。
【0010】(3)2個の加算結果の減算(大小比較)
ステップ レジスタ106と107の内容をそれぞれラッチ回路1
04と105に格納する。算術論理演算回路103は、
ラッチ回路104と105の演算を行う。結果は格納し
ない。
【0011】(4)減算結果の符号判定(選択)ステッ
プ 制御部(図示せず)は、上記ステップ(3)の減算結果
の符号を判定し、以下の(11)および(12)のステ
ップでの条件処理を行う。
【0012】(5)小さい側の加算結果の格納(パスメ
トリックの更新)ステップ 上記ステップ(4)の結果により、上記ステップ(3)
の減算結果が負であれば、レジスタ106の内容をメモ
リ101に格納する。ステップ(3)の減算結果が正で
あれば、レジスタ107の内容をメモリ101に格納す
る。
【0013】(6)パス選択信号の記憶ステップ 上記ステップ(4)の結果により、上記ステップ(3)
の減算結果が負であれば、値“0”をメモリ101に格
納する。ステップ(3)の減算結果が正であれば、値
“1”をメモリ101に格納する。
【0014】(7)パスメトリックとブランチメトリッ
クの第一の加算ステップ 図13に示した状態S[m]におけるパスメトリックの
値をメモリ101からバス102を介してラッチ回路1
04に格納し、ブランチメトリックB[2m]の値を同
様にメモリ101からバス102を介してラッチ回路1
05に格納する。算術論理演算回路103は、ラッチ回
路104と105の内容の加算を行い、レジスタ106
に格納する。その結果、レジスタ106には、S[m]
+B[2m]が格納される。
【0015】(8)パスメトリックとブランチメトリッ
クの第二の加算ステップ 図13に示した状態S[m+2k-2 ]におけるパスメト
リックの値をメモリ101からバス102を介してラッ
チ回路104に格納し、ブランチメトリックA[2m]
の値を同様にメモリ101からバス102を介してラッ
チ回路105に格納する。算術論理演算回路103は、
ラッチ回路104と105の内容の加算を行い、レジス
タ107に格納する。その結果、レジスタ106には、
S[m+2k-2 ]+A[2m]が格納される。
【0016】(9)2個の加算結果の減算(大小比較)
ステップ レジスタ106と107の内容をそれぞれラッチ回路1
04と105に格納する。算術論理演算回路103は、
ラッチ回路104と105の演算を行う。結果は格納し
ない。
【0017】(10)減算結果の符号判定(選択)ステ
ップ 制御部(図示せず)は、上記ステップ(9)の減算結果
の符号を判定し、以下の(11)および(12)のステ
ップでの条件処理を行う。
【0018】(11)小さい側の加算結果の格納(パス
メトリックの更新)ステップ 上記ステップ(10)の結果により、上記ステップ
(9)の減算結果が負であれば、レジスタ106の内容
をメモリ101に格納する。ステップ(9)の減算結果
が正であれば、レジスタ107の内容をメモリ101に
格納する。
【0019】(12)パス選択信号の記憶ステップ 上記ステップ(10)の結果により、上記ステップ
(9)の減算結果が負であれば、値“0”をメモリ10
1に格納する。ステップ(9)の減算結果が正であれ
ば、値“1”をメモリ101に格納する。以上の6ステ
ップを2k-2 回繰り返して全状態のパスメトリックを更
新する。
【0020】このように、上記従来の演算装置では、算
術論理演算回路103において、ビタビ復号における加
算と比較を行い、この比較結果によってプログラム制御
を行うことにより、ビタビ復号処理を行うことができ
る。
【0021】なお、以上の説明では、硬判定を例に用い
て説明したため、ブランチメトリックをハミング距離と
称しているが、軟判定の場合はユークリッド距離とな
る。軟判定においても、演算は上記と同様である。
【0022】また、ブランチメトリックの値として、状
態S[2m]およびS[2m+1]に入力するパスと一
致していないビット数をハミング距離としているため、
ハミング距離が大きな値であればあるほど、入力パスと
の違いが大きくなる。このため、以上の説明で用いたよ
うに2つの加算結果の小さな方を選択する。一方、ブラ
ンチメトリックの値として、状態S[2m]およびS
[2m+1]に入力するパスと一致しているビット数を
用いると、ハミング距離が大きな値であるほど、入力パ
スとの違いが小さくなる。この場合は、以上の説明にお
いて用いたように2つの加算結果の小さな方を選択する
のではなく、大きな方を選択することとなる。
【0023】上記したような演算装置では、各時点で各
状態に対して行うACS演算の演算量が多くなるという
問題があった。そこで、特開平7−22969号公報に
記載の演算装置では、以下の構成によりACS演算を行
う演算ステップ数を大幅に軽減している。
【0024】図15は特開平7−22969号公報記載
の演算装置を示す。第1および第2のデータメモリ20
1、202から同一のポインタで指す番地の内容をそれ
ぞれ読み出してALU210と加算器211の一方の入
力とし、対となる複数のレジスタ212〜215の内容
をそれぞれALU210と加算器211の他方の入力と
し、ALU210と加算器211で加算し、それぞれの
演算結果を大小比較器221の比較結果により選択され
る第1および第2のレジスタ218、219に格納する
とともに大小比較器221にも入力し、その比較結果を
シフトレジスタ223に格納する。ALU210と加算
器211で同時に加算することにより、1ステップでA
CS演算を行えるので、従来と比べメモリを増やさず演
算量を大幅に軽減することができる。
【0025】
【発明が解決しようとする課題】しかしながら、上記従
来の演算装置では、第1および第2のレジスタに格納し
た値をメモリに保存する処理が、上記のACS演算実行
後に必要となるため、第1および第2のレジスタの値を
メモリに格納することに多くのステップ数を要する。そ
の結果、ACS演算に要するステップ数が十分に削減で
きないという問題があった。
【0026】本発明は、このような従来の問題を解決す
るものであり、メモリへの格納も考慮した上で、少ない
ハードウェアの増加量でビタビ復号中のACS演算(加
算、比較、選択演算)を短いステップ数で行うことので
きる演算装置を提供することを目的とする。
【0027】
【課題を解決するための手段】本発明は上記目的を達成
するために、ビタビ復号時のACS演算の以下の特徴を
利用することにより、少ないハードウェアの追加でAC
S演算を短いステップ数で実行する演算装置を提供す
る。
【0028】2回のACS演算で、同一のパスメトリ
ックを利用するため、2回のACS演算でパスメトリッ
クのアクセスは2回で充分である。つまり、ディジタル
信号処理プロセッサでは、通常2つのデータの読み出し
機能を備えていることが多いため、2つのパスメトリッ
ク値の読み出しは、1ステップで可能である。また、2
回目のACS演算実行時には、パスメトリックを読み出
すためにメモリにアクセスする必要はない。 ブランチメトリックの種類は、符号化率1/2の時に
は、4種類、符号化率1/3の時には、8種類である。
このため、レジスタが複数本あるプロセッサの場合に
は、レジスタに格納可能である。 2回分のACS演算における更新後のパスメトリック
信号の保存は、連続する2ワードに対する書き込みであ
るため、連続する2ワードに対する書き込みが1回で可
能なメモリを用意することで効率化ができる。連続する
2ワードに対する書き込みを可能とすることによるハー
ドウェアの増加量は非常に少ない。
【0029】
【発明の実施の形態】本発明の請求項1に記載の発明
は、連続する2ワードに対して1回で書き込みが可能な
第1および第2のデータメモリと、データを転送する2
組のバスと、第1および第2のデータメモリからそれぞ
れバスを介して受け取ったデータを保持する2組の入力
ラッチと、符号率1/nの時に2n 個の任意のデータを
保持するレジスタと、各入力ラッチから受け取ったデー
タとレジスタから受け取ったデータとを加算する2組の
加算器と、各加算器の出力を比較する比較器と、比較器
の比較結果を保持するシフトレジスタと、比較器の比較
結果に基づいていずれかの加算器の比較結果を選択する
手段と、選択された加算結果をそれぞれの加算器に対応
して保持し、かつ前記バスに出力する2組の出力ラッチ
とを備えた演算装置であり、2回のACS演算を2ステ
ップで実行可能であるという効果を持つ。
【0030】本発明の請求項2に記載の発明は、2組の
加算器が、1組の加算器のキャリー信号を分断すること
で構成された請求項1記載の演算装置であり、多くのデ
ィジタル信号処理プロセッサで用意されているバスの2
倍以上のビット幅を持った1組の加算器を2組の加算手
段として用いることで、追加するハードウェアの量を削
減できるという効果を持つ。
【0031】本発明の請求項3に記載の発明は、レジス
タ数が2n-1 個で構成され、その2 n-1 個のレジスタの
それぞれが、上位下位にデータを配し、最初の2組の加
算と、2回目の2組の加算とでは、読み出すデータの上
位下位が異なっていることを特徴とする請求項1記載の
演算装置であり、動作を指示する命令コード中のレジス
タ内のデータを指示するのに要するビット数が削減で
き、命令プログラムサイズを削減可能となる。
【0032】本発明の請求項4に記載の発明は、2組の
加算器と比較器との間に配置された2組のパイプライン
ラッチを備えた請求項1記載の演算装置であり、2組の
加算とその加算結果の比較を1マシンサイクル内に実行
する必要がなくなるため、1マシンサイクル中の処理量
が減少し、DSPの動作周波数を上げやすくなるという
効果がある。
【0033】本発明の請求項5に記載の発明は、2組の
入力ラッチをそれぞれパイプラインラッチとした請求項
1記載の演算装置であり、データメモリからのデータの
読み出しと2組の加算とを1マシンサイクル内に実行す
る必要がなくなるため、1マシンサイクル中の処理量が
減少し、DSPの動作速度を上げやすくなるという効果
がある。
【0034】本発明の請求項6に記載の発明は、レジス
タが2つずつペアで構成され、それぞれに2回のACS
演算で必要となる2つのブランチメトリックが保存さ
れ、どちらのペアであるかという情報と2組のACS演
算中の2組の加算にそのペア中のレジスタをどの順序で
供給するかを指示する情報とで、2組のACS演算に要
するブランチメトリックを指示する演算装置であり、A
CS演算の動作を指示するのに要するビット数を削減で
き、命令プログラムサイズを削減できるという効果があ
る。
【0035】以下、本発明の実施の形態について、図面
を用いて説明する。 (実施の形態1)まず本発明の請求項1に対応する実施
の形態1について説明する。図1は本発明の実施の形態
1における演算装置の構成を示すブロック図である。図
1において、1、2は、更新前および更新後のパスメト
リック信号を保存し、それぞれ連続する2ワードへの書
き込みが1マシンサイクルで可能な第1および第2のデ
ータメモリ、3、4はそれぞれデータメモリ1、2に接
続し、データの供給や演算結果の格納を行うためのバ
ス、5、6はそれぞれバス3、4を入力とし、後述する
加算器8、9へデータを出力する入力ラッチ、7は後述
する加算器8、9に接続し、ブランチメトリックを保存
するレジスタ、8はパスメトリックとブランチメトリッ
クの加算を行う加算器、9はパスメトリックとブランチ
メトリックの加算を行う加算器、10は加算器8、9の
出力の比較を行う比較器、11は比較器10の出力によ
り制御されて、加算器8、9のいずれかの出力を選択す
るマルチプレクサ、12は比較器10の出力であるサイ
ンフラグ(正負の判定信号)を複数ビットにわたって保
存するシフトレジスタ、13、14はマルチプレクサ1
1の出力を保存する出力ラッチである。
【0036】以上のように構成された演算装置におい
て、一つの受信系列に対してビタビ復号の加算、比較、
選択演算により、図13の状態S[2m]、S[2m+
1]におけるパスメトリックを更新する動作とパス選択
信号の記憶の動作について説明する。以下に示すステッ
プのうち、(I)のステップが、S[2m]の状態に遷
移する加算、比較、選択のステップを示す。(II)の
ステップが、S[2m+1]の状態に遷移する加算、比
較、選択およびS[2m]、S[2m+1]の状態のパ
スメトリックの保存のステップを示す。
【0037】(I)1回目のACS演算(パスメトリッ
クのメモリへの保存を除いたACS演算) (1)図13での状態S[m]におけるパスメトリック
の値をメモリ1からバス3 を介して入力ラッチ5 に格納
する。ブランチメトリックA[2m]の値をレジスタ7
から読み出す。加算器8は入力ラッチ5とレジスタ7か
ら読み出したデータの加算を行う。その結果、加算器8
は、S[m]+A[2m]を出力する。 (2)以上の動作と同時に、次の動作を行う。図13に
示した状態S[m+2 k-2 ]におけるパスメトリックの
値をメモリ2からバス4を介して入力ラッチ6に格納す
る。ブランチメトリックB[2m]の値をレジスタ7か
ら読み出す。加算器9は入力ラッチ6とレジスタ7から
読み出したデータの加算を行う。その結果、加算器9
は、S[m+2k-2 ]+B[2m]を出力する。 (3)加算器8および加算器9に出力データがそろった
時点で、次の動作に入る。比較器10で、加算器8の出
力8と加算器の出力9の比較を行う。比較結果に基づい
てマルチプレクサ11の出力を選択する。本実施の形態
は、ブランチメトリックの値は、値が小さいほど入力値
と似ているという条件でのACS演算である。そのた
め、マルチプレクサ11は小さな方の値を選択し出力す
る。シフトレジスタ12は、比較器のサインフラグのみ
を保存する。シフトレジスタ11の出力を出力ラッチ1
3に保存する。
【0038】(II)2回目のACS演算(2回目のA
CS演算全てと、1回目のACS演算でのパスメトリッ
クのメモリへの保存を含む) (4)図13に示した状態S[m]におけるパスメトリ
ックの値を入力ラッチ5から読み出し、ブランチメトリ
ックB[2m]の値をレジスタ7から読み出す。加算器
8は入力ラッチ5とレジスタ7の内容の加算を行う。そ
の結果、加算器8は、S[m]+B[2m]を出力す
る。次に、図13に示した状態S[m+2 k-2 ]におけ
るパスメトリックの値を入力ラッチ6から読みだす。ブ
ランチメトリックA[2m]の値をレジスタ7から読み
出す。加算器9は、入力ラッチ6とレジスタ7の内容の
加算を行う。その結果、加算器9は、S[m+2k-2
+A[2m]を出力する。 (5)比較器10で、加算器8の出力8と加算器の出力
9の比較を行う。比較結果に基づいてマルチプレクサ1
1の出力を選択する。マルチプレクサ11は小さな方の
値を出力する。シフトレジスタ12は比較器のサインフ
ラグのみをシフトレジスタに保存する。シフトレジスタ
11の出力を出力ラッチ14に保存する。 (6)次に以下の動作を行う。出力ラッチ13および出
力ラッチ14の値をメモリに保存する。上記した(2)
のステップでは、パスメトリックのデータは、入力ラッ
チ5、6からそれぞれ読み出すため、パスメトリック用
メモリ1、およびパスメトリック用メモリ2へのアクセ
スが発生しない。このため、パスメトリック保存用メモ
リ1、2およびバス3、4は空いた状態となっている。
そこで、パスメトリック保存用メモリ1またはパスメト
リック保存用メモリ2の連続する2ワードに対して、出
力ラッチ13および出力ラッチ14のデータの書き込み
を行う。 以上の6ステップを2k―2 回繰り返すことで全状態の
パスメトリックを更新する。
【0039】本実施の形態によれば、従来例では、2回
につき12ステップで行っていた加算、比較、選択し、
選択結果の保存の演算を、上記の6ステップで実行する
ことができる。
【0040】さらに、本実施の形態の構成要素であるメ
モリ1、2、バス3、4、レジスタ7は、ディジタル信
号処理プロセッサ等には数値演算用にあらかじめ設置さ
れているのが普通であるので、加算器、比較器、シフト
レジスタ等のわずかなハードウェアの追加のみで、AC
S演算を効率よく実現する演算装置を実現できるという
利点を有する。
【0041】(実施の形態2)次に、本発明の請求項2
に対応する実施の形態2について説明する。本実施の形
態2は、図1に示した2組の加算器8、9が、1組の加
算器のキャリー信号を分断することで構成されている点
以外は、図1に示した構成および動作と同様であるた
め、ここでは、図2および図3を用いて2組の加算器
8、9についてのみ説明する。
【0042】図2は16ビット加算器の構成例である。
4ビットの加算器4つが、キャリー信号で接続してい
る。図3は図2に示した16ビット加算器を2組の8ビ
ット加算器として構成した例である。図2に比べて、Ci
n [8]信号とCout[7]との接続が切れていて、Cin
[8]がGnd (論理レベルL)に接続している点が異な
る。
【0043】図1において、加算器8および加算器9の
2組の加算器を図3に示したようにキャリー信号を切断
して構成する。この場合、ディジタル信号処理プロセッ
サ等には、数値演算用にあらかじめ設置されているのが
普通であるバス3、4の2倍以上のビット幅をもつ加算
器(または、算術論理演算ユニット)を使用可能であ
る。その結果、ACS演算の効率化のために2組の加算
器を余分に設置する必要がなくなるため、実施の形態1
よりさらにわずかなハードウェアの追加でACS演算を
効率よく実現する演算装置を実現できるという利点を有
する。
【0044】(実施の形態3)次に、本発明の請求項3
に対応する実施の形態3について説明する。本実施の形
態3は、図1に示したレジスタ7から加算器8および9
へ供給するデータの指示の方法に特徴があるものであ
る。そのため、図1におけるレジスタ7で保持するデー
タを示す図4および図5を用いて説明を行う。また、畳
み込み符号化器の構成を示す図6を用いて説明を行う。
【0045】畳み込み符号の符号化率が1/2の場合
は、ビタビ復号におけるブランチメトリックの種類は4
種類である。ブランチメトリックは、符号化器の出力
が、それぞれ“00”、“01”、“10”、“11”
と受信系列とを比較したものである4種類となる。
【0046】入力値および最も過去の状態を示す値でE
X−OR演算を行う生成多項式を用いた図6に示すよう
な畳み込み符号化器の場合、図13でのA[2m]とB
[2m]で示すブランチメトリックの組は、“00”、
“11”と受信系列とのハミング距離の組、または、
“01”、“10”と受信系列とのハミング距離の組と
なる。そのため、2組の加算器8、9への供給を指示す
るのに要するオペランドには、どちらの組であるかと
いう情報(つまり、“00”、“11”と受信系列との
ハミング距離の組、または、“01”、“10”と受信
系列とのハミング距離の組のどちらであるか)と、そ
の組のうち、どちらの加算器にどちらのオペランドを供
給するかという情報(つまり、“00”と受信系列との
ハミング距離または、“11”と受信系列のハミング距
離のどちらをどちらの加算器に供給するか。“01”、
“10”と受信系列とのハミング距離の組の場合も同
様。)の2種類の情報が必要となる。
【0047】4種のブランチメトリックのうちどれか2
つを指定する場合に、ブランチメトリックが組になるこ
とを利用しないと、1つのオペランドを指定するのに2
ビットを要し、2つのオペランドを指定する必要がある
ため、2ビット+2ビットの合計4ビットが必要とな
る。一方、ブランチメトリックが組になることを利用す
ると、2組の組のどちらかを指定するのに1ビットを要
し、組のなかでどちらをどちらの加算器に読み出すかの
指定に1ビットの合計2ビットが必要である。つまり、
オペランドを指定するのに、ブランチメトリックが、組
になることを利用すると命令中のオペランドを指示する
のに要するビット数が削減できる。
【0048】同様に、図5に示す畳み込み符号の符号化
率が1/3の場合は、ブランチメトリックが組になるこ
とを利用しないと、6ビットを要するものが、ブランチ
メトリックが組になることを利用すると、3ビットで指
示が可能となる。その結果、命令中のオペランドを指示
するのに要するビット数が削減でき、命令コードサイズ
が削減できる。
【0049】(実施の形態4)次に、本発明の請求項4
に対応する実施の形態4につて説明する。本実施の形態
4は、図1における2組の加算器8、9の出力にパイプ
ラインラッチをそれぞれ配置したものである。すなわ
ち、図7に示すように、図1に対しパイプラインラッチ
15、16を加算器8、9と比較器10およびマルチプ
レクサ11との間に配置したものであり、他の構成は図
1と同じなので、同じものには、同じ番号をつけてあ
る。図7において、1、2は、更新前および更新後のパ
スメトリック信号を保存し、それぞれ連続する2ワード
への書き込みが1マシンサイクルで可能な第1および第
2のデータメモリ、3、4はそれぞれデータメモリ1、
2に接続し、データの供給や演算結果の格納を行うため
のバス、5、6はそれぞれバス3、4を入力とし、後述
する加算器8、9へデータを出力する入力ラッチ、7は
後述する加算器8、9に接続し、ブランチメトリックを
保存するレジスタ、8はパスメトリックとブランチメト
リックの加算を行う加算器、9はパスメトリックとブラ
ンチメトリックの加算を行う加算器、10は加算器8、
9の出力の比較を行う比較器、11は比較器10の出力
により制御されて、加算器8、9のいずれかの出力を選
択するマルチプレクサ、12は比較器10の出力である
サインフラグ(正負の判定信号)を複数ビットにわたっ
て保存するシフトレジスタ、13、14はマルチプレク
サ11の出力を保存する出力ラッチ、15は加算器8の
出力を保持するパイプラインラッチ、16は加算器9の
出力を保持するパイプラインラッチである。
【0050】以上のように構成された演算装置におい
て、一つの受信系列に対してビタビ復号の加算、比較、
選択演算により、図13の状態S[2m]、S[2m+
1]におけるパスメトリックを更新する動作とパス選択
信号の記憶の動作について、図8の動作タイミング図を
参照しながら説明する。 (1) t1のタイミング (1.1) 1回目のACS演算の2組の加算 (1.1.1)図13での状態S[m]におけるパスメ
トリックの値をメモリ1からバス3を介して入力ラッチ
5に格納する。ブランチメトリックA[2m]の値をレ
ジスタ7から読み出す。加算器8は入力ラッチ5とレジ
スタ7から読み出したデータの加算を行う。その結果、
加算器8は、S[m]+A[2m]を出力し、ラッチ1
5にデータを保存する。以上の動作と同時に次の動作を
行う。 (1.1.2)図13に示した状態S[m+2k-2 ]に
おけるパスメトリックの値をメモリ2からバス4を介し
て入力ラッチ6に格納する。ブランチメトリックB[2
m]の値をレジスタ7から読み出す。加算器9は入力ラ
ッチ6とレジスタ7から読み出したデータの加算を行
う。その結果、加算器9は、S[m+2k-2 ]+B[2
m]を出力し、ラッチ16にデータを保存する。 (2) t2のタイミング (2.1) 1回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は、比較器のサイン
フラグのみを保存する。シフトレジスタ11の出力を出
力ラッチ13に保存する。 (2.2) 2回目のACS演算の2組の加算 (2.2.1)図13での状態S[m]におけるパスメ
トリックの値は、t1のタイミングでメモリから読み込
んだため、入力ラッチ5に格納されたままである。ブラ
ンチメトリックB[2m]の値をレジスタ7から読み出
す。加算器8は入力ラッチ5とレジスタ7から読み出し
たデータの加算を行う。その結果、加算器8は、S
〔m]+B[2m]を出力し、ラッチ15にデータを保
存する。 (2.2.2)図13での状態S[m+2k-2 ]におけ
るパスメトリックの値は、t1のタイミングでメモリか
ら読み込んだため、入力ラッチ6に格納されたままであ
る。ブランチメトリックA[2m]の値をレジスタ7か
ら読み出す。加算器9は入力ラッチ6とレジスタ7から
読み出したデータの加算を行う。その結果、加算器9は
S[m+2k-2 ]+A[2m]を出力し、ラッチ16に
データを保存する。 (3) t3のタイミング (3.1) 2回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は比較器のサインフ
ラグのみを保存する。シフトレジスタ11の出力を出力
ラッチ14に保存する。 (3.2) 3回目のACS演算の2組の加算 (3.2.1)状態S[m+1]におけるパスメトリッ
クの値をメモリ1からバス3 を介して入力ラッチ5に格
納する。対応するブランチメトリックの値をレジスタ7
から読み出す。加算器8は入力ラッチ5とレジスタ7か
ら読み出したデータの加算を行う。加算結果をラッチ1
5に保存する。 (3.2.2)状態S[m+1+2k-2 ]におけるパス
メトリックの値をメモリ2からバス4を介して入力ラッ
チ6に格納する。対応するブランチメトリックの値をレ
ジスタ7から読み出す。加算器9は入力ラッチ6とレジ
スタ7から読み出したデータの加算を行う。加算結果を
ラッチ16に保存する。 (4) t4のタイミング (4.1) 1回目/2回目のACS演算の比較結果の
保存 出力ラッチ13に保存している1回目のACS演算の比
較結果および出力ラッチ14に保存している2回目のA
CS演算の比較結果を、バス3、4を介してパスメトリ
ック保存用メモリ1に保存する。 (4.2) 3回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は比較器のサインフ
ラグのみを保存する。シフトレジスタ11の出力を出力
ラッチ13に保存する。 (4.3) 4回目のACS演算の2組の加算 (4.3.1)状態S[m+1]におけるパスメトリッ
クの値は、t3 のタイミングでメモリから読み込んだた
め、入力ラッチ5に格納されたままである。対応するブ
ランチメトリックの値をレジスタ7から読み出す。加算
器8は入力ラッチ5とレジスタ7から読み出したデータ
の加算を行う。加算結果をラッチ16に保存する。 (4.3.2)状態S[m+1+2k-2 ]におけるパス
メトリックの値は、t3 のタイミングでメモリから読み
込んだため、入力ラッチ6に格納されたままである。対
応するブランチメトリックの値をレジスタ7から読み出
す。加算器9は入力ラッチ6とレジスタ7から読み出し
たデータの加算を行う。加算結果をラッチ16に保存す
る。最後の2ステップを2k-2 −1回繰り返すことで全
状態のパスメトリックを更新する。
【0051】以上のように、本実施の形態4によれば、
2組の加算および比較動作という処理を2段のパイプラ
インに分割することで、1マシンサイクルあたりの処理
量を削減し、動作時間を高速化できる。
【0052】(実施の形態5)次に、本発明の請求項5
に対応する実施の形態5について説明する。本実施の形
態5は、図7における2組の加算器8、9の入力ラッチ
5、6をパイプラインラッチとして動作させたものであ
る。以下、図7のように構成した演算装置で、入力ラッ
チ5、6をパイプラインラッチとして動作させた場合
の、一つの受信系列に対してビタビ復号の加算、比較、
選択演算により、パスメトリックを更新する動作とパス
選択信号の記憶の動作について、図9の動作タイミング
図を用いながら説明する。 (1) t1のタイミング (1.1) 1回目のACS演算の2組のデータの読み
出し 図13での状態S[m]におけるパスメトリックの値を
メモリ1からバス3を介して入力ラッチ5に格納する。
図13に示した状態S[m+2k-2 ]におけるパスメト
リックの値をメモリ2からバス4を介して入力ラッチ6
に格納する。 (2) t2のタイミング (2.1) 1回目のACS演算の2組の加算 (2.2.1)ブランチメトリックA[2m]の値をレ
ジスタ7から読み出す。加算器8は入力ラッチ5とレジ
スタ7から読み出したデータの加算を行う。その結果、
加算器8は、S[m]+A[2m]を出力し、ラッチ1
5にデータを保存する。 (2.2.2)ブランチメトリックB[2m]の値をレ
ジスタ7から読み出す。加算器9は入力ラッチ6とレジ
スタ7から読み出したデータの加算を行う。その結果、
加算器9はS[m+2k-2 ]+B[2m]を出力し、ラ
ッチ16にデータを保存する。 (3) t3のタイミング (3.1) 1回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は、比較器のサイン
フラグのみを保存する。シフトレジスタ11の出力を出
力ラッチ13に保存する。 (3.2) 2回目のACS演算の2組の加算 (3.2.1)ブランチメトリックB[2m]の値をレ
ジスタ7から読み出す。加算器8は入力ラッチ5とレジ
スタ7から読み出したデータの加算を行う。その結果、
加算器8は、S[m]+B[2m]を出力し、ラッチ1
5にデータを保存する。 (3.2.3)ブランチメトリックA[2m]の値をレ
ジスタ7から読み出す。加算器9は入力ラッチ6とレジ
スタ7から読み出したデータの加算を行う。その結果、
加算器9はS[m+2k-2 ]+A[2m]を出力し、ラ
ッチ16にデータを保存する。 (3.3)3回目および4回目のACS演算の2組のデ
ータの読み出し 状態S[m+1]におけるパスメトリックの値をメモリ
1からバス3を介して入力ラッチ5 に格納する。状態S
[m+1+2k-2 ]におけるパスメトリックの値をメモ
リ2からバス4を介して入力ラッチ6に格納する。 (4) t4のタイミング (4.1) 2回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は比較器のサインフ
ラグのみを保存する。シフトレジスタ11の出力を出力
ラッチ14に保存する。 (4.2) 3回目のACS演算の2組の加算 ブランチメトリックの値をレジスタ7から読み出す。加
算器8は入力ラッチ5とレジスタ7から読み出したデー
タの加算を行う。加算結果をラッチ15に保存する。一
方、別の組のブランチメトリックの値をレジスタ7から
読み出す。加算器9は入力ラッチ6とレジスタ7から読
み出したデータの加算を行う。加算結果をラッチ16に
保存する。 (5) t5のタイミング (5.1) 3回目のACS演算の比較動作 比較器10で、加算器8の出力8と加算器の出力9の比
較を行う。比較結果に基づいてマルチプレクサ11の出
力を選択する。マルチプレクサ11は小さな方の値を選
択し出力する。シフトレジスタ12は比較器のサインフ
ラグのみを保存する。シフトレジスタ11の出力を出力
ラッチ13に保存する。 (5.2) 4回目のACS演算の2組の加算 ブランチメトリックの値をレジスタ7から読み出す。加
算器8は入力ラッチ5とレジスタ7から読み出したデー
タの加算を行う。加算結果をラッチ16に保存する。ブ
ランチメトリックの値をレジスタ7から読み出す。加算
器9は入力ラッチ6とレジスタ7から読み出したデータ
の加算を行う。加算結果をラッチ16に保存する。 (5.3) 5回目および6回目のACS演算の2組の
データの読み出し 状態S[m+2]におけるパスメトリックの値をメモリ
1からバス3 を介して入力ラッチ5に格納する。状態S
[m+2+2k-2 ]におけるパスメトリックの値をメモ
リ2からバス4を介して入力ラッチ6に格納する。 (6) t6のタイミング (6.1) 1回目/2回目のACS演算の比較結果の
保存 出力ラッチ13に保存している1回目のACS演算の比
較結果および出力ラッチ14に保存している2回目のA
CS演算の比較結果を、バス3、4を介してパスメトリ
ック保存用メモリ1に保存する。 (6.2) 4回目のACS演算の比較動作比較器10
で、加算器8の出力8と加算器の出力9の比較を行う。
比較結果に基づいてマルチプレクサ11の出力を選択す
る。マルチプレクサ11は小さな方の値を選択し出力す
る。シフトレジスタ12は比較器のサインフラグのみを
保存する。シフトレジスタ11の出力を出力ラッチ13
に保存する。 (6.3) 5回目のACS演算の2組の加算 ブランチメトリックの値をレジスタ7から読み出す。加
算器8は入力ラッチ5とレジスタ7から読み出したデー
タの加算を行う。加算結果をラッチ16に保存する。ブ
ランチメトリックの値をレジスタ7から読み出す。加算
器9は入力ラッチ6とレジスタ7から読み出したデータ
の加算を行う。加算結果をラッチ16に保存する。最後
の2ステップを2k-2 −2回繰り返すことで全状態のパ
スメトリックを更新する。
【0053】以上のように、本実施の形態5によれば、
メモリからのデータの読み出し、2組の加算および比較
動作というマシンサイクルを要する処理を3段のパイプ
ラインに分割することで、1マシンサイクル当たりの処
理量を削減し、実施の形態4より動作時間を高速化でき
る。
【0054】(実施の形態6)次に、本発明の請求項6
に対応する実施の形態6について説明する。本実施の形
態6における演算装置は、実施の形態3において説明し
た演算装置と類似のものである。実施の形態3では、実
施の形態1で示した演算装置の構成に即した形でレジス
タの指示を行ったが、本実施の形態におけるレジスタの
指示方法は、実施の形態1で示した演算装置の構成でな
くとも実施可能であるため、一般化したものである。以
下、本実施の形態における演算装置について、図10お
よび図13を参照して説明する。
【0055】図10は本実施の形態における演算装置の
構成を示すもので、符号化率が1/2の場合の例であ
る。図10において、301はパスメトリック保存用の
メモリであり、ビタビ復号における各状態のパスメトリ
ック(累積計算)や、各状態における生き残りパスの選
択結果(パスセレクト信号)などを記憶する。302は
メモリ301に接続し、データの供給や演算結果の格納
などを行うバス、303は算術論理演算を行う算術論理
演算回路、304と305は算術論理演算回路303の
左側入力の値と右側入力の値とをそれぞれ一時記憶する
ラッチ回路、306と307は算術論理演算回路303
の演算結果を格納するレジスタ、308、309、31
0、311は、情報ビットの1ビットに対応する符号化
データ(受信系列)の値に対して、各パスが取るブラン
チメトリックを保持するレジスタである。ブランチメト
リックA[2m]はレジスタ308に保存され、ブラン
チメトリックB[2m]はレジスタ309に保存され、
ブランチメトリックC[2m]はレジスタ310に保存
され、ブランチメトリックD[2m]はレジスタ311
に保存される。レジスタ308と309はペアとして指
示でき、レジスタ310と311もペアとして指示する
ことができる。
【0056】以上のように構成された演算装置におい
て、一つの受信系列に対してビタビ復号の加算、比較、
選択演算により、1命令で、図11の状態S[2m]、
S[2m+1]におけるパスメトリックを更新する動作
について、以下の12個のステップに分けて説明する。
なお、ステップ(2)から(7)までがS[2m]の状
態に遷移する加算、比較、選択のステップを示し、ステ
ップ(8)から(13)までがS[2m+1]の状態に
遷移する加算、比較、選択のステップを示す。
【0057】(1)2回のACS演算の動作で利用する
ブランチメトリックを指示するステップ 以下で行う2回のACS演算で利用するブランチメトリ
ックが図13におけるA[2m]およびB[2m]であ
ることを指示する。符号化率1/2では、ブランチメト
リックの種類は、A[2m]、B[2m]、C[2
m]、D[2m]の4種類である。2組のACS演算で
利用するブランチメトリックの組は、図11に示すよう
に4種類でしかない。本実施の形態では、1番目を選択
した場合の動作である。 (2)パスメトリックとブランチメトリックの第一の加
算ステップ 図13に示した状態S[m]におけるパスメトリックの
値をメモリ301からパス302を介してラッチ回路3
04に格納し、ブランチメトリックA[2m]の値をレ
ジスタ308からバス302を介してラッチ回路305
に格納する。算術論理演算回路303は、ラッチ回路3
04と305の内容の加算を行い、レジスタ306に格
納する。その結果、レジスタ306にはS[2m]+A
[2m]が格納される。 (3)パスメトリックとブランチメトリックの第二の加
算ステップ 図13に示した状態S[m+2k-2 ]におけるパスメト
リックの値をメモリ301からバス302を介してラッ
チ回路304に格納し、ブランチメトリックB[2m]
の値を同様にレジスタ309からバス302を介してラ
ッチ回路305に格納する。算術論理演算回路303
は、ラッチ回路304と305の内容の加算を行い、レ
ジスタ307に格納する。その結果、レジスタ306に
は、S[m+2k-2 ]+B[2m]が格納される。 (4)2個の加算結果の減算(大小比較)ステップ レジスタ306と307の内容をそれぞれラッチ回路3
04と305に格納する。算術論理演算回路303は、
ラッチ回路304と305の演算を行う。結果の格納は
しない。 (5)減算結果の符号判定(選択)ステップ 制御部(図示せず)は、上記ステップ(4)の減算結果
の符号を判定し、以下の(6)および(7)のステップ
での条件処理を行う。 (6)小さい側の加算結果の格納(パスメトリックの更
新)ステップ 上記ステップ(5)の結果により、上記ステップ(4)
の減算結果が負であれば、レジスタ306の内容をメモ
リ301に格納する。ステップ(4)の減算結果が正で
あれば、レジスタ307の内容をメモリ301に格納す
る。 (7)パス選択信号の記憶ステップ 上記ステップ(5)の結果により、上記ステップ(4)
の減算結果が負であれば、値“0”をメモリ301に格
納する。ステップ(4)の減算結果が正であれば、値
“1”をメモリ301に格納する。 (8)パスメトリックとブランチメトリックの第一の加
算ステップ 図13に示した状態S[m]におけるパスメトリックの
値をメモリ301からパス302を介してラッチ回路3
04に格納し、ブランチメトリックB[2m]の値をレ
ジスタ309からバス302を介してラッチ回路305
に格納する。算術論理演算回路303は、ラッチ回路3
04と305の内容の加算を行い、レジスタ306に格
納する。その結果、レジスタ306にはS[2m]+B
[2m]が格納される。 (9)パスメトリックとブランチメトリックの第二の加
算ステップ 図13に示した状態S[m+2k-2 ]におけるパスメト
リックの値をメモリ301からバス302を介してラッ
チ回路304に格納し、ブランチメトリックA[2m]
の値を同様にメモリ301からバス302を介してラッ
チ回路305に格納する。算術論理演算回路303は、
ラッチ回路304と305の内容の加算を行い、レジス
タ307に格納する。その結果、レジスタ306には、
S[m+2k-2 ]+A[2m]が格納される。 (10)2個の加算結果の減算(大小比較)ステップ レジスタ306と307の内容をそれぞれラッチ回路3
04と305に格納する。算術論理演算回路303は、
ラッチ回路304と305の演算を行う。結果は格納し
ない。 (11)減算結果の符号判定(選択)ステップ 制御部(図示せず)は、上記ステップ(10)の減算結
果の符号を判定し、以下の(12)および(13)のス
テップでの条件処理を行う。 (12)小さい側の加算結果の格納(パスメトリックの
更新)ステップ 上記ステップ(11)の結果により、上記ステップ(1
0)の減算結果が負であれば、レジスタ306の内容を
メモリ301に格納する。ステップ(10)の減算結果
が正であれば、レジスタ307の内容をメモリ301に
格納する。 (13)パス選択信号の記憶ステップ 上記ステップ(11)の結果により、上記ステップ(1
0)の減算結果が負であれば、値“0”をメモリ301
に格納する。ステップ(10)の減算結果が正であれ
ば、値“1”をメモリ301に格納する。
【0058】上記した(1)から(13)に示す2回の
ACS演算において、従来はブランチメトリックをそれ
ぞれ指示していたため、2ビット+2ビット+2ビット
+2ビットの合計8ビットがブランチメトリックの指示
に必要であったが、本実施の形態では、連続する2回の
ACS演算で用いるブランチメトリックには、上記した
4通りしかないという特徴を利用して指示を行うため、
ブランチメトリックを指示するのに要するビット数は2
ビットで済む。このため、命令中のオペランドの指示に
必要なビット数が削減でき、命令コードサイズを削減で
きるという効果がある。
【0059】なお、本実施の形態では、符号化率1/2
の場合を用いて説明したが、符号化率1/3の場合は、
図12に示すように8通りの組み合わせの中から選択す
る処理となるため、従来は3ビット+3ビット+3ビッ
ト+3ビットの合計12ビットを用いて指示していた2
回分のACS演算で用いるブランチメトリックを3ビッ
トで指示することができる。
【0060】
【発明の効果】以上のように本発明によれば、2回のA
CS演算において、パスメトリックは同一のものを利用
するという特徴を利用し、連続する2ワードへの書き込
みが可能なメモリを用意することで、ACS演算を1ス
テップで実行することができ、メモリへの格納も考慮し
た上で、少ない演算ステップ数でビタビ復号を行うこと
ができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1、2、3における演算装
置の構成を示す概略ブロック図
【図2】実施の形態2における16ビット加算器の構成
を示すブロック図
【図3】実施の形態2における16ビット加算器を分割
して8ビット加算器2組としたときのブロック図
【図4】実施の形態3における符号化率1/2の時のレ
ジスタの組の配置を示す模式図
【図5】実施の形態3における符号化率1/3の時のレ
ジスタの組の配置を示す模式図
【図6】実施の形態3における畳み込み符号化器の構成
を示すブロック図
【図7】本発明の実施の形態4、5における演算装置の
構成を示す概略ブロック図
【図8】実施の形態4における動作タイミング図
【図9】実施の形態5における動作タイミング図
【図10】実施の形態6における演算装置の構成を示す
概略ブロック図
【図11】符号化率1/3の時の2組のACS演算で利
用するブランチメトリックの組の一覧図
【図12】符号化率1/3の時の2組のACS演算で利
用するブランチメトリックの組の一覧図
【図13】ビタビ復号における畳み込み符号器の状態遷
移のパスを示す模式図
【図14】従来の演算装置の構成を示す概略ブロック図
【図15】従来の演算装置の別の構成を示す概略ブロッ
ク図
【符号の説明】
1、2 データメモリ 3、4 バス 5、6 入力ラッチ 7 レジスタ 8、9 加算器 10 比較器 11 マルチプレクサ 12 シフトレジスタ 13、14 出力ラッチ 15、16 パイプラインラッチ 301 パスメトリック保存用メモリ 302 バス 303 算術論理演算回路 304、305 ラッチ回路 305、306 レジスタ 308、309 ペアのレジスタ 310、311 ペアのレジスタ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 連続する2ワードに対して1回で書き込
    みが可能な第1および第2のデータメモリと、データを
    転送する2組のバスと、第1および第2のデータメモリ
    からそれぞれバスを介して受け取ったデータを保持する
    2組の入力ラッチと、符号化率1/nの時に2n 個の任
    意のデータを保持するレジスタと、各入力ラッチから受
    け取ったデータとレジスタから受け取ったデータとを加
    算する2組の加算器と、各加算器の出力を比較する比較
    器と、比較器の比較結果を保持するシフトレジスタと、
    比較器の比較結果に基づいていずれかの加算器の比較結
    果を選択する手段と、選択された加算結果をそれぞれの
    加算器に対応して保持し、かつ前記バスに出力する2組
    の出力ラッチとを備えた演算装置。
  2. 【請求項2】 2組の加算器が、1組の加算器のキャリ
    ー信号を分断することで構成された請求項1記載の演算
    装置。
  3. 【請求項3】 レジスタ数が2n-1 個で構成され、その
    n-1 個のレジスタのそれぞれが、上位下位にデータを
    配し、最初の2組の加算と、2回目の2組の加算とで
    は、読み出すデータの上位下位が異なっていることを特
    徴とする請求項1記載の演算装置。
  4. 【請求項4】 2組の加算器と比較器との間に配置され
    た2組のパイプラインラッチを備えた請求項1記載の演
    算装置。
  5. 【請求項5】 2組の入力ラッチをそれぞれパイプライ
    ンラッチとした請求項1記載の演算装置。
  6. 【請求項6】 レジスタが2つずつペアで構成され、そ
    れぞれに2回のACS演算で必要となる2つのブランチ
    メトリックが保存され、どちらのペアであるかという情
    報と2組のACS演算中の2組の加算にそのペア中のレ
    ジスタをどの順序で供給するかを指示する情報とで、2
    組のACS演算に要するブランチメトリックを指示する
    演算装置。
JP8258584A 1996-09-30 1996-09-30 演算装置 Pending JPH10107652A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8258584A JPH10107652A (ja) 1996-09-30 1996-09-30 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8258584A JPH10107652A (ja) 1996-09-30 1996-09-30 演算装置

Publications (1)

Publication Number Publication Date
JPH10107652A true JPH10107652A (ja) 1998-04-24

Family

ID=17322294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8258584A Pending JPH10107652A (ja) 1996-09-30 1996-09-30 演算装置

Country Status (1)

Country Link
JP (1) JPH10107652A (ja)

Similar Documents

Publication Publication Date Title
US5946361A (en) Viterbi decoding method and circuit with accelerated back-tracing and efficient path metric calculation
US5440504A (en) Arithmetic apparatus for digital signal processor
US7398458B2 (en) Method and apparatus for implementing decode operations in a data processor
JPH11261426A (ja) 自動ビタビトレースバックビット格納機能を有する並列算術論理プロセッサ
JP3274668B2 (ja) 演算処理装置及び演算処理方法
US5742621A (en) Method for implementing an add-compare-select butterfly operation in a data processing system and instruction therefor
JP3266182B2 (ja) ビタビ復号器
US6272188B1 (en) Single-cycle accelerator for extremun state search
US20060115023A1 (en) Apparatus and method for decoding and trace back of convolution codes using the viterbi decoding algorithm
JPH10107652A (ja) 演算装置
EP0936537B1 (en) Cyclic redundancy check in a computer system
JP3191442B2 (ja) ビタビ復号用演算装置
EP1058392A1 (en) Method for implementing a plurality of add-compare-select butterfly operations in parallel, in a data processing system
JP3250363B2 (ja) 演算装置
JP4873546B2 (ja) データ処理装置、データ処理方法
JPH07245567A (ja) ビタビ復号演算装置
US5648921A (en) Digital operational circuit with pathmetrics calculating steps simplified
JP3237267B2 (ja) 演算装置
JPH0722969A (ja) 演算装置
CN109960486B (zh) 二进制数据处理方法及其装置、介质和系统
JP3984790B2 (ja) ビタビ復号処理装置
JPH04352518A (ja) 演算装置
JPH08305563A (ja) データ処理装置
JP2001024526A (ja) ビタビ復号装置
JPH0746145A (ja) 演算装置