JPH11274942A - ビタビ復号器 - Google Patents

ビタビ復号器

Info

Publication number
JPH11274942A
JPH11274942A JP10070255A JP7025598A JPH11274942A JP H11274942 A JPH11274942 A JP H11274942A JP 10070255 A JP10070255 A JP 10070255A JP 7025598 A JP7025598 A JP 7025598A JP H11274942 A JPH11274942 A JP H11274942A
Authority
JP
Japan
Prior art keywords
metric
path
data
path metric
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.)
Pending
Application number
JP10070255A
Other languages
English (en)
Inventor
Hiroshi Yoshioka
裕視 吉岡
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.)
Anritsu Corp
Original Assignee
Anritsu Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Anritsu Corp filed Critical Anritsu Corp
Priority to JP10070255A priority Critical patent/JPH11274942A/ja
Publication of JPH11274942A publication Critical patent/JPH11274942A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】高速な復号動作を可能なビタビ復号器を提供す
ること。 【解決手段】生き残りパスとそれに付随するステートメ
トリックとでなるパスメトリックデータをそれぞれ記憶
する第1及び第2のパスメトリックメモリ40,50を
設け、ACS演算回路30で、ブランチメトリック生成
回路によって生成されたブランチメトリックと、読み出
し用として設定された上記第1及び第2のパスメトリッ
クメモリの一方から読み出した2ステート分のパスメト
リックデータと、受信系列符号化データとから、新たな
パスメトリックを計算して、それを書き込み用として設
定された上記第1及び第2のパスメトリックメモリの他
方に書き込むようにし、コントローラ70で、所定の一
定処理毎に、上記第1及び第2のパスメトリックメモリ
の読み出し用及び書き込み用の設定を切り替える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、移動体通信システ
ム等に利用されるビタビ復号器に関する。
【0002】
【従来の技術】ビタビ復号は、畳み込み符号の持つ繰り
返し構造を利用して最尤復号を効率的に実行する復号方
法であり、伝送路上でデータに雑音が加わった場合で
も、その誤りを訂正しながら復号を行うことができる。
【0003】以下、簡単な符号例を用いてビタビ復号の
原理を説明する。図9の(A)及び(B)はそれぞれ拘
束長が4である送信側の符号器の構成を示す図で、
(A)は符号化レートが2の場合、(B)は符号化レー
トが3の場合をそれぞれ示している。
【0004】符号化レートが2の場合の符号器は3つの
レジスタR1,R2,R3でなるシフトレジスタと2個
の排他的論理和回路OE1,OE2とから構成され、符
号化レートが3の場合の符号器は3個のレジスタR1,
R2,R3と3個の排他的論理和回路OE1,OE2,
OE3とから構成され、いずれもノードの取り得る数
(符号器への入力点も含む)が4点であるので、拘束長
は4となる。なお、復号器が扱う符号化レートが2と3
であった場合、内部の処理に影響を及ぼさないように、
符号化レートが2の場合の符号器は、図9の(A)に示
すように、未使用の出力ポート(out3)にはダミー
として「0」を出力する。
【0005】受信側の復号器は、図9の(C)及び
(D)に示すように、符号器の出力out1,out
2,out3をパラレルで受信する。拘束長が4の場合
には、符号器のレジスタは3つあるので、取り得る状態
数は、図10に示すように、8である。即ち、拘束長が
nの場合には、2n-1 の状態を取る。
【0006】図10において、前状態のとに「0」
が入力されてシフトすると、3つのレジスタの中は’
の状態になる。また、前状態のとに「1」が入力さ
れてシフトすると、3つのレジスタの中は’の状態に
なる。このように、図10中の実線は「0」の入力、破
線は「1」の入力を示す。
【0007】次にブランチメトリックの説明をする。例
えば、図10における→’でのブランチメトリック
は、図9の(A)に示した符号化レート2の場合は、図
11の(A)に示すように、「00」となる。図1の
(B)に示した符号化レート3の場合は、同様にして、
図11の(B)に示すように、「011」となる。
【0008】復号器側では、このブランチメトリックと
受信データを比較する。符号化レート3の場合、図10
にける→’のブランチメトリックは「011」、
→’のブランチメトリックは「110」である。
【0009】ここで、「100」というデータを受信し
た場合、→’のメトリックは「2」、→’のメ
トリックは「1」となる(メトリックは、ブランチメト
リックと受信データの各ビットの排他的論理和であ
る)。
【0010】ここで、メトリックの小さい方(尤度が大
きい方)の経路を確からしいパスとして選択し、前状態
までの情報に新たにメトリックを加算し、またルート
(この例では→’なので「1」)の情報も加えて、
’の新しい情報として内部に構成したメモリに記憶す
る。
【0011】また、符号化レートが2の場合には、復号
器への入力の3ビット目がオール「0」のダミーとして
あるので、ブランチメトリックも3ビット目をダミー
「0」とすることで、メトリックの演算には影響しない
ようにしている。
【0012】このように、ある時刻において8つの各状
態に合流するパスは2つあるが、ビタビ復号において
は、この中からその時点までの受信データ系列とのメト
リックの小さい(度が大きい)方のパスを各状態ごとに
生き残りパスとして選択し、それ以外のパスは以後の検
討から除外する、というような手順を繰り返しながら、
各時刻における生き残りパスを順次定めていくことで、
データを復号することができる。
【0013】このようなビタビ復号を行うビタビ復号装
置は、例えば、特開平9−148943号公報に開示さ
れている。この公報に開示されたビタビ復号装置は、受
信系列からブランチメトリックを求め正規化を行うブラ
ンチメトリック計算及び正規化回路と、得られたブラン
チメトリックを対にして記憶するブランチメトリック記
憶回路と、ステートメトリックを記憶するステートメト
リック記憶回路と、ブランチメトリック対を読み出すと
ともに、対応するステートメトリックを読み出し2ステ
ート分の加算、比較、選択を行うACS演算回路と、得
られたパスメモリを記憶するパスメモリ記憶回路と、パ
スメモリに基づいて復号系列を出力する最尤復号回路と
を備えることにより、メモリ量を減少させ、回路構成を
簡略化するとともに、ACS回路における演算処理の効
率を向上させたというものである。
【0014】
【発明が解決しようとする課題】しかしながら、上記特
開平9−148943号公報に開示されたビタビ復号装
置は、ステートメトリック記憶回路が単一のもので構成
されているため、2ステート分の演算が終了するまで、
次の2ステートの演算を開始することができない。従っ
て、高速に演算を行うことができないので、拘束長の大
きなビタビ復号器を実現することができない。本発明
は、上記の点に鑑みてなされたもので、高速な復号動作
を可能なビタビ復号器を提供することを目的とする。
【0015】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明によるビタビ復号器は、畳み込み符号化さ
れた受信系列符号化データをビタビアルゴリズムに基づ
いて最尤復号するビタビ復号器であって、ブランチメト
リックを生成するブランチメトリック生成回路(20)
と、読み出し用又は書き込み用に切り替え可能にされ、
生き残りパスとそれに付随するステートメトリックとで
なるパスメトリックデータを記憶する第1及び第2のパ
スメトリックメモリ(40,50)と、上記ブランチメ
トリック生成回路によって生成されたブランチメトリッ
クと、読み出し用として設定された上記第1又は第2の
パスメトリックメモリのいずれか一方から読み出した2
ステート分のパスメトリックデータと、上記受信系列符
号化データとから、新たなパスメトリックを計算して、
それを書き込み用として設定された上記第1又は第2の
パスメトリックメモリの他方に書き込む演算回路(3
0)と、上記演算回路の処理に基づいて、上記第1及び
第2のパスメトリックメモリの読み出し用及び書き込み
用の設定を切り替えるコントローラ(70)と、上記演
算回路によって計算されたパスメトリックに基づいて復
号を行う最尤判定回路(60)とを備えることを特徴と
する。
【0016】なお、上記演算回路は、上記ブランチメト
リック生成回路によって生成されたブランチメトリック
の上位ビットと、上記読み出し用として設定された上記
第1又は第2のパスメトリックメモリの一方から読み出
した2ステート分のパスメトリックデータと、上記受信
系列符号化データとから、1ステート分の新たなパスメ
トリックを計算して出力すると共に、該パスメトリック
に新たな0パスを追加した最尤判定用データを出力する
0パス用演算回路(31)と、上記ブランチメトリック
生成回路によって生成されたブランチメトリックの下位
ビットと、読み出し用として設定された上記第1又は第
2のパスメトリックメモリの一方から読み出した2ステ
ート分のパスメトリックデータと、上記受信系列符号化
データとから、上記0パス用演算回路で計算された1ス
テートの次の1ステート分の新たなパスメトリックを計
算して出力すると共に、該パスメトリックに新たな1パ
スを追加した最尤判定用データを出力する1パス用演算
回路(32)と、上記0パス用演算回路及び1パス用演
算回路から出力されたパスメトリックを、書き込み用と
して設定された上記第1又は第2のパスメトリックメモ
リの他方に出力するマルチプレクサ(37)と、上記0
パス用演算回路及び1パス用演算回路から出力された最
尤判定用データを比較して、その内のメトリックの小さ
い方を上記最尤判定回路に出力する比較器(36)とを
含む。
【0017】また、本発明によるビタビ復号器は、さら
に、生成多項式、符号化レート、遅延ビット、拘束長、
及び復号するデータ長に対応した演算回数を受領し、記
憶する手段(10)を備え、上記ブランチメトリック生
成回路は、記憶された生成多項式、符号化レート、及び
拘束長に応じたブランチメトリックを生成し、上記コン
トローラは、記憶された演算回数に応じて上記第1及び
第2のパスメトリックメモリの設定切り替えを行うと共
に、設定された遅延ビットに応じて上記最尤判定回路の
動作開始を制御することを特徴とする。
【0018】また、本発明によるビタビ復号器は、上記
ブランチメトリック生成回路、第1及び第2のパスメト
リックメモリ、演算回路、コントローラ、及び最尤判定
回路が、1つの書き換え可能なゲートアレイチップに形
成されることを特徴とする。
【0019】即ち、本発明のビタビ復号器によれば、特
開平9−148943号公報におけるステートメトリッ
ク記憶回路とパスメモリ記憶回路の両方の機能を果たす
パスメトリックメモリを2個備え、そのうちの読み出し
用として設定された第1又は第2のパスメトリックメモ
リのいずれか一方から読み出した2ステート分のパスメ
トリックデータと、ブランチメトリック生成回路によっ
て生成されたブランチメトリックと、受信系列符号化デ
ータとから、演算回路が、新たなパスメトリックを計算
して、それを書き込み用として設定された上記第1又は
第2のパスメトリックメモリの他方に書き込むものと
し、また、コントローラが、上記演算回路の処理に基づ
いて、例えば所定の一定処理毎つまり拘束長に応じて決
まるステート数分(例えば、拘束長9の場合256ステ
ート分)である1サイクル毎に、上記第1及び第2のパ
スメトリックメモリの読み出し用及び書き込み用の設定
を切り替える。このように、パスメトリックメモリを読
み込み用と書き込み用に分離させたことにより、高速な
復号動作を可能なビタビ復号器を提供することができ
る。これにより、従来では難しいとされてきた拘束長9
までのビタビ復号器を実用レベルで実現することができ
る。
【0020】そして、上記演算回路を、ブランチメトリ
ックの上位ビットと2ステート分のパスメトリックデー
タと受信系列符号化データとから、1ステート分の新た
なパスメトリックを計算して出力すると共に、該パスメ
トリックに新たな0パスを追加した最尤判定用データを
出力する0パス用演算回路と、上記ブランチメトリック
の下位ビットと2ステート分のパスメトリックデータと
受信系列符号化データとから、上記0パス用演算回路で
計算された1ステートの次の1ステート分の新たなパス
メトリックを計算して出力すると共に、該パスメトリッ
クに新たな1パスを追加した最尤判定用データを出力す
る1パス用演算回路と、これら0パス用演算回路及び1
パス用演算回路から出力されたパスメトリックを、書き
込み用として設定された上記第1又は第2のパスメトリ
ックメモリの他方に出力するマルチプレクサと、上記0
パス用演算回路及び1パス用演算回路から出力された最
尤判定用データを比較して、その内のメトリックの小さ
い方を上記最尤判定回路に出力する比較器とから構成す
ることで、パイプライン処理により高速に復号を行うこ
とが可能となっている。
【0021】また、本発明のビタビ復号器によれば、さ
らに、受信機のプロセッサ等の設定手段によって、生成
多項式、符号化レート、遅延ビット、拘束長、及び復号
するデータ長に対応した演算回数を受領して記憶してお
き、それらの記憶内容に応じて、ブランチメトリック生
成回路及びコントローラが動作するようにしている。こ
れにより、生成多項式の変更や異なる符号化レートでの
復号、遅延ビットの設定、任意の長さの符号化データの
復号を行うことが可能なビタビ復号器を提供することが
できる。
【0022】また、本発明のビタビ復号器によれば、ブ
ランチメトリック生成回路、第1及び第2のパスメトリ
ックメモリ、演算回路、コントローラ、及び最尤判定回
路を、1つの書き換え可能なゲートアレイチップに形成
している。これにより、遅延ビットの設定に伴うパスメ
トリックメモリのデータバス幅の変更を容易に行えるビ
タビ復号器を提供することができる。例えば拘束長9、
遅延ビット30、任意の計算回数の最大回数を1600
程度とした場合、データバス幅は、パスメモリ用として
30ビット、メトリックメモリ用として10ビット程度
必要となり、計40ビット程度のバス幅となり、パスメ
トリックメモリを外部に設けた場合には、その接続や取
り回しが困難となるが、このようにチップ内にバスメト
リックメモリを設ければそのような心配もない。
【0023】
【発明の実施の形態】以下、本発明の一実施の形態を図
面を参照して説明する。図1は本実施の形態に係るビタ
ビ復号器1の構成を示す図で、このビタビ復号器1は、
セットアップレジスタ10、ブランチメトリック生成回
路20、加算・比較・選択(ACS)演算回路30、2
つのパスメトリックメモリ40,50、最尤判定回路6
0、コントローラ70、及びインバータ80が、1つの
ゲートアレイチップに形成された構造となっている。
【0024】ここで、該ビタビ復号器1は、図2に示す
ように、当該ビタビ復号器1が内蔵される受信機のプロ
セッサ2やその他の図示しない構成部から、該受信機に
設けられた図示しない各種スイッチの操作等に応じて、
生成多項式情報、符号化レート、遅延ビット、拘束長情
報、復号するデータ長に対応した演算回数、等の各種デ
ータを受け、それをセットアップレジスタ10に保存す
る。なお、上記遅延ビットとは、次のようなものであ
る。即ち、ビタビ復号器1は、当該ビタビ復号器1で得
られた復号データを直ちに出力するようにした場合、符
号化されたデータの先頭付近の誤りデータに対して、誤
り訂正能力が十分に発揮できないため、何ビット分か遅
延させてビタビアルゴリズムの誤り訂正能力が有効とな
る頃に出力するよう構成されるのが普通である。そし
て、そのための遅延を何ビットにするかを設定するため
に、上記遅延ビットが供給される。この遅延ビットは、
拘束長の3倍から4倍程度に設定される。
【0025】ビタビ復号器1におけるブランチメトリッ
ク生成回路20は、上記セットアップレジスタ10に保
存された符号化レート及び生成多項式情報及び符号化レ
ートに基づいてブランチメトリックを生成し、それをr
ef_bitとしてACS演算回路30に供給する。即
ち、このブランチメトリック生成回路20は、符号器側
の生成多項式の変更に対応可能な構成としており、上記
したように外部より設定される生成多項式情報により変
更が可能となっている。
【0026】ここで、ブランチメトリック生成回路20
は、符号器側の最大符号化レートをnとしたとき、2ス
テートの並列演算に必要な4nビットのブランチメトリ
ックを生成する。符号化レートがm(<n)の場合には
ブランチメトリック4mビット、ダミービットとして4
(n−m)ビットの、合計4nビットをブランチメトリ
ック生成回路20の出力とする。当該ビタビ復号器1に
対する入力は、符号化レートがmの場合には、データが
mビット、ダミービットが(n−m)ビットのnビット
固定入力とすることで、符号化レートによらず復号が可
能となる。
【0027】受信機においてプロセッサ2は、受信した
mビットの符号化データと(n−m)ビットの出力に対
するダミー出力「0」をメモリ3に書き込む。即ち、図
2は、最大符号化レートn=3のビタビ復号器1を符号
化レート2で使用した例を示しており、この場合は、プ
ロセッサ2は、受信データ「y0 y1 」にさらに「0」
でなるデータy2 を付加して、メモリ3に書き込む。こ
のメモリ3に記憶されたデータは、ビタビ復号器1から
のリード信号によって受信系列符号化データin_da
taとしてビタビ復号器1に入力される。
【0028】この例の場合、送信側においては、例えば
図3に示すように、送信しようとするデータ列を4個の
レジスタR1 〜R4 でなるシフトレジスタSRと2個の
排他的論理和回路OE1 ,OE2 とから構成された符号
化レート2、拘束長5の符号器4により、上記符号化デ
ータ「y0 y1 」を作成する。
【0029】また、この例のような最大符号化レートが
n、符号化レートが2、拘束長が5の場合におけるブラ
ンチメトリック生成回路20は、図4に示すように、カ
ウンタレジスタCR01、8個の論理積回路AND01〜A
ND08、及び2個の排他的論理和回路OE01,OE02で
なる0パス用のブランチメトリック生成回路21と、カ
ウンタレジスタCR11、8個の論理積回路AND11〜A
ND18、及び2個の排他的論理和回路OE11,OE12で
なる1パス用のブランチメトリック生成回路22とから
構成される。
【0030】即ち、0パス用のブランチメトリック生成
回路21においては、論理積回路AND01〜AND04
で、カウンタレジスタCR01の値とセットアップレジス
タ10のレジスタ11に設定されたy0 用生成多項式情
報との各ビットについて論理積をとり、それらの結果と
「0」データとの排他的論理和を排他的論理和回路OE
01でとることによって、0パス用ブランチメトリックの
nビットの内のビット0の値branch_met0_
0が演算される。
【0031】なおここで、カウンタレジスタCR01は、
初期値として「0000」が設定されており、拘束長が
5であるので状態数は16となり、「0000」から
「1111」までカウントアップするものである。但
し、図3に示したように、入力が左からとすると、この
カウンタレジスタCR01における4ビットのLSBは左
側である。1パス用ブランチメトリック生成回路22に
おけるカウンタレジスタCR11も、このカウンタレジス
タCR01と同様である。
【0032】また、この0パス用のブランチメトリック
生成回路21においては、論理積回路AND05〜AND
08で、カウンタレジスタCR01の値とセットアップレジ
スタ10のレジスタ12に設定されたy1 用生成多項式
情報との各ビットについて論理積をとり、それらの結果
と「0」データとの排他的論理和を排他的論理和回路O
E02でとることによって、0パス用ブランチメトリック
のnビットの内のビット1の値branch_met0
_1が演算される。そして、0パス用ブランチメトリッ
クのnビットの内のビット2乃至n−1の値branc
h_met0_2〜branch_met0_n−1と
しては、「0」が出力される。
【0033】同様に、1パス用のブランチメトリック生
成回路22においては、論理積回路AND11〜AND14
で、カウンタレジスタCR11の値とセットアップレジス
タ10のレジスタ11に設定されたy0 用生成多項式情
報との各ビットについて論理積をとり、それらの結果と
「1」データとの排他的論理和を排他的論理和回路OE
11でとることによって、1パス用ブランチメトリックの
nビットの内のビット0の値branch_met1_
0が演算される。また、論理積回路AND15〜AND18
で、カウンタレジスタCR11の値とセットアップレジス
タ10のレジスタ12に設定されたy1 用生成多項式情
報との各ビットについて論理積をとり、それらの結果と
「1」データとの排他的論理和を排他的論理和回路OE
12でとることによって、1パス用ブランチメトリックの
nビットの内のビット1の値branch_met1_
1が演算される。そして、1パス用ブランチメトリック
のnビットの内のビット2乃至n−1の値branch
_met1_2〜branch_met1_n−1とし
ては、「0」が出力される。
【0034】また、ACS演算回路30は、前状態のデ
ータを格納した読み取り用パスメトリックメモリとして
の一方のパスメトリックメモリ40(又は50)からデ
ータqを読取って、それと上記ブランチメトリック生成
回路20からのブランチメトリックref_bit及び
受信系列符号化データin_dataとから、生き残り
パスと該生き残りパスに付随したメトリック(ステート
メトリック)とを演算して、両者を結合してなるデータ
を書き込みデータdataとして他方のパスメトリック
メモリ50(又は40)に書き込む。なお、このACS
演算回路30は、並列に2ステートの演算が行えるよう
に、内部に0パス用演算回路と1パス用演算回路とを有
しており、そのそれぞれで上記のような演算を行う。そ
して、0パス用演算回路では演算した書き込みデータに
新たな0パスを追加することで最尤判定用データを作成
し、同様に1パス用演算回路でも最尤判定用データを作
成して、両最尤判定用データのうちメトリックの小さい
方を、最尤判定用データdata_tempとして最尤
判定回路60に供給する。
【0035】最尤判定回路60は、上記ACS演算回路
30から受け取った最尤判定用データdata_tem
pを0ステートから順次最尤判定(判定の区間が0〜2
55(拘束長9の場合))を行い、一定処理間で最尤な
結果を復号データとして出力する。
【0036】コントローラ70は、ビタビアルゴリズム
の定常演算及び収束演算の計算ステートを常に監視し、
各部の制御を行うもので、上記セットアップレジスタ1
0に保存された演算数と外部から供給される計算開始要
求信号STARTin及びリセット信号NRESETを
受けて、計算リセット信号cal_reset、アドレ
ス信号ADDR1,ADDR2、ライトイネーブル信号
w_enb、ライトAクロック信号w_A_clk、出
力書き込み信号outNWR、及び計算終了信号cal
_endを出力する。
【0037】即ち、計算開始要求信号STARTinは
外部から当該ビタビ復号器1に動作開始を指示するため
の信号であり、リセット信号NRESETは、この計算
開始要求信号STARTinの前に各部のリセットを指
示する信号である。計算リセット信号cal_rese
tは、一定処理(1サイクル処理)をスタートさせるた
めの信号であり、一定処理をするために、ブランチメト
リック生成回路20内に構成された関連するレジスタな
どのリセットに用いられる。
【0038】アドレス信号ADDR1,ADDR2は、
上記2つのパスメトリックメモリ40,50のアドレス
信号であり、ライトイネーブル信号w_enbは、これ
ら2つのパスメトリックメモリ40,50を書き込み状
態にするための信号である。このライトイネーブル信号
w_enbは、パスメトリックメモリ50に対してはイ
ンバータ80を介して供給されるようになっている。そ
して、コントローラ70は、このライトイネーブル信号
w_enbを1サイクル処理(例えば、拘束長9の場合
は256ステート分の処理)毎に反転出力することで、
2つのパスメトリックメモリ40,50を、データ読み
取り用パスメトリックメモリと書き込み用パスメトリッ
クメモリとして、1サイクル処理毎に交互にその機能を
切り替える。
【0039】ライトAクロック信号w_A_clkは、
上記ACS演算回路30内部のレジスタ等の書き込みタ
イミング等を設定するための信号である。出力書き込み
信号outNWRは、復号結果を外部に出力するとき
に、そのことを示すための信号であり、例えば、復号結
果を外部ののFIFOメモリ4に書き込むためのライト
イネーブル信号として使用される。そして、計算終了信
号cal_endは、計算終了をプロセッサ2に知らせ
るための信号である。
【0040】なお、このビタビ復号器1内の各部は、外
部から供給されるクロック信号clockを基に動作す
る。このように、本実施の形態に係るビタビ復号器1
は、従来のビタビ復号器よりも高速な復号動作をさせる
ため、前状態のデータを格納した読み取り用パスメトリ
ックメモリ40(又は50)と演算結果を書き込むパス
メトリックメモリ50(又は40)とを分離させて復号
器内部に構成している。また、ACS演算回路30は、
上述したように、並列に2ステートの演算を行うため、
図5に示すように、内部に0パス用演算回路31と1パ
ス用演算回路32とを有している。
【0041】即ち、ACS演算回路30は、これら0パ
ス用演算回路31及び1パス用演算回路32と、ブラン
チメトリック用レジスタ33、2つのデータレジスタD
ata_A_reg34,Data_B_reg35、
比較器36、マルチプレクサMUX37を有している。
【0042】ここで、ブランチメトリック用レジスタ3
3は、上記ブランチメトリック生成回路から供給される
ブランチメトリックref_bitを一時記憶し、その
上位2nビット(nは最大符号化レートを表す)をre
f_bit0として0パス用演算回路31に、下位2n
ビットをref_bit1として1パス用演算回路32
に入力する。
【0043】データレジスタData_A_reg34
及びData_B_reg35は、それぞれ外部からの
クロック信号clockと上記コントローラからのライ
トAクロックw_A_clkを受けて、パスメトリック
メモリ40(又は50)からの読み取りデータqをそれ
ぞれ1ステート分づつ記憶する。つまり、データレジス
タData_A_reg34はあるステートの読み取り
データqを記憶し、データレジスタData_B_re
g35は次ステートの読み取りデータqを記憶する。
【0044】0パス用演算回路31は、これらデータレ
ジスタData_A_reg34及びData_B_r
eg35に記憶された2ステート分のデータData_
A及びData_Bと、上記ブランチメトリック用レジ
スタ33からのブランチメトリックref_bit0
と、受信系列符号化データin_dataとから、最尤
判定用データdata_temp0と出力データdat
a_out0とを演算する。同様に、1パス用演算回路
32は、データレジスタData_A_reg34及び
Data_B_reg35に記憶された2ステート分の
データData_A及びData_Bと、上記ブランチ
メトリック用レジスタ33からのブランチメトリックr
ef_bit1と、受信系列符号化データin_dat
aとから、最尤判定用データdata_temp1と出
力データdata_out1とを演算する。
【0045】そして、比較器36は、上記0パス用演算
回路31からの最尤判定用データdata_temp0
と1パス用演算回路32からの最尤判定用データdat
a_temp1とを比較して、その内のメトリックの小
さい方を最尤判定用データdata_tempとして上
記最尤判定回路60へ出力する。また、マルチプレクサ
MUX37は、0パス用演算回路31からの出力データ
data_out0と1パス用演算回路32からの出力
データdata_out1とを、書き込み用パスメトリ
ックメモリ50(又は40)に切り替え供給する。
【0046】上記0パス用演算回路31と1パス用演算
回路32は、同様の構成を有しており、よって0パス用
演算回路31のみについて説明する。図6は、最大符号
化レートn=3、遅延ビット=30ビット、メトリック
=10ビットの場合の0パス用演算回路31の構成を示
す図である。なお、この場合は、パスメトリックメモリ
40,50に記憶されたパスメトリックデータは、その
上位30ビットがパスを示し、下位10ビットがメトリ
ックを示すものとする。
【0047】即ち、この場合の0パス用演算回路31
は、タイミング補正用レジスタ31A、排他的論理和回
路31B、加算器31C、メトリックA出力レジスタm
et_A_out_reg31D、排他的論理和回路3
1E、加算器31F、メトリックB出力レジスタmet
_B_out_reg31G、比較器31H、選択回路
31I、生き残りパスレジスタpath_next31
J、選択回路31K、メトリックレジスタmet_ne
xt31L、データ結合及び0パス追加回路31M(1
パス用演算回路32の場合にはデータ結合及び1パス追
加回路)から構成されている。
【0048】タイミング補正用レジスタData_A_
temp31Aは、上記データレジスタData_A_
reg34のデータを、データレジスタData_B_
reg35のデータとのタイミングに合わせるために一
時記憶する。排他的論理和回路31Bは、上記ブランチ
メトリック用レジスタ33からのブランチメトリックr
ef_bitの上位2nビットであるref_bit0
の内の上位nビット(この場合は3ビット)と受信系列
符号化データin_dataとの各ビットについて排他
的論理をとる。加算器31Cはこの排他的論理和結果と
タイミング補正用レジスタData_A_temp31
Aに記憶されたデータData_Aの内の下位10ビッ
ト(つまりメトリック)とを加算し、その結果をメトリ
ックA出力レジスタmet_A_out_reg31D
に書き込む。
【0049】同様に、排他的論理和回路31Eは、上記
ブランチメトリック用レジスタ33からのブランチメト
リックref_bitの上位2nビットであるref_
bit0の内の下位3ビットと受信系列符号化データi
n_dataとの各ビットについて排他的論理をとり、
加算器31Fは、この排他的論理和結果と上記データレ
ジスタData_B_reg35に記憶されたデータD
ata_Bの内の下位10ビットとを加算し、その結果
をメトリックB出力レジスタmet_B_out_re
g31Gに書き込む。
【0050】比較器31Hは、メトリックA出力レジス
タmet_A_out_reg31Dに書き込まれたメ
トリックとメトリックB出力レジスタmet_B_ou
t_reg31Gに書き込まれたメトリックの比較を行
う。
【0051】選択回路31Iは、上記タイミング補正用
レジスタData_A_temp31Aに記憶されたデ
ータData_Aの内の上位30ビット(つまりパス)
と、上記データレジスタData_B_reg35に記
憶されたデータData_Bの内の上位30ビットと
で、上記比較器31Hの結果から2ステートでメトリッ
クの小さい方のパスを選択し、それを生き残りパスレジ
スタpath_next31Jに生き残りパスとして書
き込む。同様に、選択回路31Kは、比較器31Hの結
果から、メトリックA出力レジスタmet_A_out
_reg31Dに書き込まれたメトリックとメトリック
B出力レジスタmet_B_out_reg31Gとで
小さい方、即ち2ステートで小さい方のメトリックを選
択し、それを生き残りパスに付随したメトリックとして
メトリックレジスタmet_next31Lに書き込
む。
【0052】そして、データ結合及び0パス追加回路3
1Mは、上記生き残りパスレジスタpath_next
31Jに記憶された生き残りパスと、上記メトリックレ
ジスタmet_next31Lに記憶された生き残りパ
スに付随したメトリックとを連結させて40ビットの出
力データdata_out0を生成し、これを上記マル
チプレクサMUXに供給することで、それを書き込みデ
ータdataとして、書き込み用のパスメトリックメモ
リ50(又は40)に供給、記憶させる。また、このデ
ータ結合及び0パス追加回路31Mは、上記40ビット
の出力データdata_out0にさらに新たな0パス
(1パス用演算回路32内では1パス)を追加すること
で、41ビットの最尤判定用データdata_temp
0を生成し、上記比較器36へ出力する。
【0053】図7及び図8は、このようなビタビ復号器
1のタイミングチャートを示している。なお、これらの
タイミングチャートは、拘束長が9、遅延ビットが30
ビットの場合を示すものである。
【0054】即ち、図7に示すように、コントローラ7
0は、外部から与えられるリセット信号NRESETに
応じてパスメトリックメモリ40,50等の初期化を行
い、該リセット信号NRESETに続けて外部から与え
られる計算開始要求信号STARTinに応じて復号動
作を開始する。
【0055】この復号動作においては、計算リセット信
号cal_resetを1サイクル(256ステート
分)毎にブランチメトリック生成回路20に与えると共
に、その1サイクル毎にパスメトリックメモリ40及び
50に与えるライトイネーブル信号w_enbの状態を
反転する。これにより、1サイクル処理毎に、読み取り
用と書き込み用のパスメトリックメモリが交互に切り替
わることになる。例えば、このライトイネーブル信号w
_enbは、計算回数が奇数回数のときにローとなる。
【0056】なお、この復号動作の始まりの部分では、
得られた復号データを外部に出力することなく、遅延ビ
ットに相当する間だけ待ってから出力する。そして、出
力開始とともに出力書き込み信号outNWRをFIF
Oメモリ4に対して出力することで、この復号データを
書き込んでいる。
【0057】各サイクルで、前述したような動作(定常
計算)を行うためのタイミングは、図8に示すようにな
っている。このように、パスメトリックメモリを2つに
したことで、所定の1サイクル演算処理中は、一方のパ
スメトリックメモリ40(又は50)へのアクセスはリ
ードのみ、他方のパスメトリックメモリ50(又は4
0)へのアクセスはライトのみとすることで高遠な処理
を実現することができる。また、所定の1サイクルの演
算中の一方のパスメトリックメモリ40(又は50)か
らのデータの読み込みから他方のパスメトリックメモリ
50(又は40)への演算結果書き込みまでをパイプラ
イン処理することにより、高速な処理を実現することが
できる。
【0058】なお、このような定常計算は、設定された
演算数全てに対して行う必要なく、終わりつまりテイル
の8ビット分の処理については、収束計算を行う。これ
は、演算の終わりの方においては、確かめなければなら
ないパスの数が収束していくため、256ステート分の
処理をしなくても良いからである。
【0059】そして、この収束計算も終了したならば、
上記計算リセット信号cal_reset及びライトイ
ネーブル信号w_enbを停止する。このとき、まだ上
記遅延ビット分の復号データが出力されていないので、
一方のバスメトリックメモリ40(又は50)に残って
いる30ビット分のデータを出力する。そして、このデ
ータ掃き出し処理が終了したならば、計算終了として、
プロセッサ2に計算終了信号cal_endを出力す
る。
【0060】このように、パスメトリックメモリを2つ
にしたことで、所定の演算処理中は、一方のパスメトリ
ックメモリへのアクセスはリードのみ、もう一方のパス
メトリックメモリへのアクセスはライトのみとすること
で高遠な処理を実現することができる。また、所定の演
算中のデータの読み込みから演算結果書き込みまでをパ
イプライン処理することにより高速な処理を実現するこ
とができる。
【0061】なお、以上実施の形態に基づいて本発明を
説明したが、本発明は上述した実施の形態に限定される
ものではなく、本発明の要旨の範囲内で種々の変形や応
用が可能なことは勿論である。
【0062】
【発明の効果】以上詳述したように、本発明によれば、
パスメトリックメモリを読み込み用と書き込み用に分離
させたことにより、高速な復号動作を可能なビタビ復号
器を提供することができる。これにより、従来では難し
いとされてきた拘束長9までのビタビ復号器を実用レベ
ルで実現することができる。
【0063】また、本発明によれば、生成多項式の変更
や異なる符号化レートでの復号、遅延ビットの設定、任
意の長さの符号化データの復号を行うことが可能なビタ
ビ復号器を提供することができる。
【0064】さらに、本発明によれば、当該パスメトリ
ックメモリを復号器内部に構成し復号器を1チップ化し
たことにより、遅延ビットの設定に伴うパスメトリック
メモリのデータバス幅の変更を容易に行えるビタビ復号
器を提供することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るビタビ復号器の構
成を示す図である。
【図2】最大符号化レート3のシステムを符号化レート
2で使用した場合を説明するための図である。
【図3】送信側における符号化レート2、拘束長5の符
号器の構成を示す図である。
【図4】最大符号化レートがn、符号化レートが2、拘
束長が5の場合におけるブランチメトリック生成回路の
構成を示す図である。
【図5】図1中のACS演算回路の構成を示す図であ
る。
【図6】図5中の0パス用演算回路の構成を示す図であ
る。
【図7】図1のビタビ復号器のタイミングチャートを示
す図である。
【図8】1サイクル分のより詳細なタイミングチャート
を示す図である。
【図9】(A)は拘束長が4で符号化レートが2の場合
の送信側の符号器の構成を示す図、(B)は拘束長が4
で符号化レートが3の場合の送信側の符号器の構成を示
す図、(C)は(A)に対応する受信側の復号器の入出
力関係を示す図であり、(D)は(B)に対応する受信
側の復号器の入出力関係を示す図である。
【図10】拘束長が4の場合の前状態と次状態の関係を
示す図である。
【図11】(A)は符号化レート2の場合のブランチメ
トリックを説明するための図であり、(B)は符号化レ
ート3の場合のブランチメトリックを説明するための図
である。
【符号の説明】
1 ビタビ復号器 2 プロセッサ 3 メモリ 10 セットアップレジスタ 20 ブランチメトリック生成回路 30 加算・比較・選択(ACS)演算回路 40,50 パスメトリックメモリ 60 最尤判定回路 70 コントローラ 80 インバータ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 畳み込み符号化された受信系列符号化デ
    ータをビタビアルゴリズムに基づいて最尤復号するビタ
    ビ復号器において、 ブランチメトリックを生成するブランチメトリック生成
    回路(20)と、 読み出し用又は書き込み用に切り替え可能にされ、生き
    残りパスとそれに付随するステートメトリックとでなる
    パスメトリックデータを記憶する第1及び第2のパスメ
    トリックメモリ(40,50)と、 上記ブランチメトリック生成回路によって生成されたブ
    ランチメトリックと、読み出し用として設定された上記
    第1又は第2のパスメトリックメモリのいずれか一方か
    ら読み出した2ステート分のパスメトリックデータと、
    上記受信系列符号化データとから、新たなパスメトリッ
    クを計算して、それを書き込み用として設定された上記
    第1又は第2のパスメトリックメモリの他方に書き込む
    演算回路(30)と、 上記演算回路の処理に基づいて、上記第1及び第2のパ
    スメトリックメモリの読み出し用及び書き込み用の設定
    を切り替えるコントローラ(70)と、 上記演算回路によって計算されたパスメトリックに基づ
    いて復号を行う最尤判定回路(60)と、 を具備することを特徴とするビタビ復号器。
  2. 【請求項2】 上記演算回路は、 上記ブランチメトリック生成回路によって生成されたブ
    ランチメトリックの上位ビットと、上記読み出し用とし
    て設定された上記第1又は第2のパスメトリックメモリ
    の一方から読み出した2ステート分のパスメトリックデ
    ータと、上記受信系列符号化データとから、1ステート
    分の新たなパスメトリックを計算して出力すると共に、
    該パスメトリックに新たな0パスを追加した最尤判定用
    データを出力する0パス用演算回路(31)と、 上記ブランチメトリック生成回路によって生成されたブ
    ランチメトリックの下位ビットと、読み出し用として設
    定された上記第1又は第2のパスメトリックメモリの一
    方から読み出した2ステート分のパスメトリックデータ
    と、上記受信系列符号化データとから、上記0パス用演
    算回路で計算された1ステートの次の1ステート分の新
    たなパスメトリックを計算して出力すると共に、該パス
    メトリックに新たな1パスを追加した最尤判定用データ
    を出力する1パス用演算回路(32)と、 上記0パス用演算回路及び1パス用演算回路から出力さ
    れたパスメトリックを、書き込み用として設定された上
    記第1又は第2のパスメトリックメモリの他方に出力す
    るマルチプレクサ(37)と、 上記0パス用演算回路及び1パス用演算回路から出力さ
    れた最尤判定用データを比較して、その内のメトリック
    の小さい方を上記最尤判定回路に出力する比較器(3
    6)と、 を含むことを特徴とする請求項1に記載のビタビ復号
    器。
  3. 【請求項3】 生成多項式、符号化レート、遅延ビッ
    ト、拘束長、及び復号するデータ長に対応した演算回数
    を受領し、記憶する手段(10)をさらに具備し、 上記ブランチメトリック生成回路は、記憶された生成多
    項式、符号化レート、及び拘束長に応じたブランチメト
    リックを生成し、 上記コントローラは、記憶された演算回数に応じて上記
    第1及び第2のパスメトリックメモリの設定切り替えを
    行うと共に、設定された遅延ビットに応じて上記最尤判
    定回路の動作開始を制御することを特徴とする請求項1
    に記載のビタビ復号器。
  4. 【請求項4】 上記ブランチメトリック生成回路、第1
    及び第2のパスメトリックメモリ、演算回路、コントロ
    ーラ、及び最尤判定回路が、1つの書き換え可能なゲー
    トアレイチップに形成されることを特徴とする請求項1
    に記載のビタビ復号器。
JP10070255A 1998-03-19 1998-03-19 ビタビ復号器 Pending JPH11274942A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10070255A JPH11274942A (ja) 1998-03-19 1998-03-19 ビタビ復号器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10070255A JPH11274942A (ja) 1998-03-19 1998-03-19 ビタビ復号器

Publications (1)

Publication Number Publication Date
JPH11274942A true JPH11274942A (ja) 1999-10-08

Family

ID=13426275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10070255A Pending JPH11274942A (ja) 1998-03-19 1998-03-19 ビタビ復号器

Country Status (1)

Country Link
JP (1) JPH11274942A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007214918A (ja) * 2006-02-09 2007-08-23 Fujitsu Ltd ビタビ復号回路および無線機
WO2012108411A1 (ja) * 2011-02-10 2012-08-16 日本電気株式会社 符号化/復号化処理プロセッサ、および無線通信装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007214918A (ja) * 2006-02-09 2007-08-23 Fujitsu Ltd ビタビ復号回路および無線機
WO2012108411A1 (ja) * 2011-02-10 2012-08-16 日本電気株式会社 符号化/復号化処理プロセッサ、および無線通信装置
US8989242B2 (en) 2011-02-10 2015-03-24 Nec Corporation Encoding/decoding processor and wireless communication apparatus

Similar Documents

Publication Publication Date Title
US6324226B1 (en) Viterbi decoder
EP0234558A2 (en) Path trace viterbi decoder
US7581160B2 (en) ACS circuit and Viterbi decoder with the circuit
JPS6356728B2 (ja)
JPH0144058B2 (ja)
JP3250550B2 (ja) パスメモリ回路およびビタビ復号回路
JP3262251B2 (ja) 減少長トレースバック
US5878060A (en) Viterbi decoding apparatus and viterbe decoding method
JP2001320284A (ja) ビタビ復号器
JP2003530753A (ja) 高速acsビタビデコーダの実行のためにメモリ内の状態の距離を効率的に読出して記憶するための方法および装置
JPH11274942A (ja) ビタビ復号器
JP3753822B2 (ja) ビタビ復号方法および装置
JP3260714B2 (ja) ビタビ復号化装置およびビタビ復号化方法
JPH0361375B2 (ja)
KR19990076528A (ko) 비터비 알고리즘 처리를 위한 가산 비교 선택 고속화 장치 및방법
KR20040031323A (ko) 비터비 복호기의 경로 메트릭 저장 장치 및 방법
Rokhani et al. Optimality of bus-invert coding
JPH0964756A (ja) ビタビ復号回路
JPH04421B2 (ja)
JP3348086B2 (ja) ビタビ復号装置およびビタビ復号方法
RU2022473C1 (ru) Устройство вычисления метрик путей декодера витерби
JP3120342B2 (ja) ビタビ復号器
JP2001024526A (ja) ビタビ復号装置
JPH0361376B2 (ja)
JP2004120791A (ja) ビタビ復号器