JPH11220407A - ビタビ復号方法 - Google Patents

ビタビ復号方法

Info

Publication number
JPH11220407A
JPH11220407A JP10325580A JP32558098A JPH11220407A JP H11220407 A JPH11220407 A JP H11220407A JP 10325580 A JP10325580 A JP 10325580A JP 32558098 A JP32558098 A JP 32558098A JP H11220407 A JPH11220407 A JP H11220407A
Authority
JP
Japan
Prior art keywords
encoder
branch metric
data
branch
state
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.)
Granted
Application number
JP10325580A
Other languages
English (en)
Other versions
JP3281868B2 (ja
Inventor
Richard Adam Cesari
アダム セサリ リチャード
Sivanand Simanapalli
シマナパッリ シヴァナンド
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JPH11220407A publication Critical patent/JPH11220407A/ja
Application granted granted Critical
Publication of JP3281868B2 publication Critical patent/JP3281868B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Error Detection And Correction (AREA)

Abstract

(57)【要約】 【課題】 ビタビ復号において、完全枝メトリックセッ
トを計算するのに必要なサイクル数と、あらかじめ定義
された枝メトリック値を格納するのに必要な記憶領域を
削減する。 【解決手段】 制約長Kの符号器に対して、2K個のメ
トリックのセット全体ではなく、枝メトリックの縮小セ
ットを生成するように受信データシンボルを処理し、ビ
タビ処理で使用するためにその縮小セットをメモリに格
納する。縮小メトリックセットは、完全メトリックセッ
ト内に存在する現データ入力シンボルに対する固有のメ
トリック値の核からなる。K個の基本データ変換の列
が、畳込み符号器の物理的構造に従って定義され、完全
メトリックセットにおける冗長性を消去するために用い
られる。これらの変換を核メトリック値に適用すること
によって、2K個のすべてのメトリック値を補外(外
挿)することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、汎用ディジタル信
号プロセッサ上でのビタビアルゴリズムにおける枝メト
リック計算に関する。
【0002】
【従来の技術】無線および有線のアプリケーション、特
に、大きなシンボル間干渉のあるアプリケーションで
は、畳込み符号化およびビタビ復号を用いてデータ誤り
の検出および訂正が実行される。畳込み符号化は、ハー
ドウェアあるいはソフトウェア符号器へのデータ入力ビ
ットと、1個以上の以前の入力ビットとの畳込みをとる
ことによって実行される。従来のIS−95レート1/
2、制約長9の畳込み符号器10の例を図1に示す。情
報ビットは、複数の点で分岐(タップ)するシフトレジ
スタのような一連の遅延要素12に入力される。分岐さ
れた値は、XOR機能14によって結合されて符号化デ
ータシンボルを生成する。例示した符号器10では、2
個の出力ビットc0およびc1が、各入力ビットごとに生
成される。従って、この符号器のレートは1/2であ
る。制約長は、符号器によって使用される値の全スパン
を表し、記号Kで表す。制約長K=9とは、(9番目の
ビットは入力ビットなので)2(9-1)=256個の符号
器状態があることを意味する。これらの状態は、状態S
0(10進0、2進00000000)〜S255(10進
255、2進11111111)と表される。
【0003】図2に、畳込み符号化およびビタビ復号を
用いた代表的なアプリケーション環境を示す。ソースデ
ータ5が畳込み符号器10に入力される。符号化された
データは、適当にフォーマットされたデータシンボル2
0の列として出力され、通信リンク22を通じて伝送さ
れる。通信リンク22は、データ信号にノイズを導入す
るため、伝送されたデータシンボルは、デスティネーシ
ョンに到達するときまでに破損することがある。受信し
た(そしておそらくは破損した)各データシンボル24
は、畳込み復号器26によって処理され、最も確からし
いソースデータ5の列に対応する復号データ28を生成
する。
【0004】受信したデータ信号24は、ビタビアルゴ
リズムに従って処理される。ビタビアルゴリズムの基本
は、与えられたデータ状態の過去のデータに対する依存
性に基づいて、与えられた状態から次の状態への可能な
符号器状態遷移の知識を用いることにより、畳込み符号
化されたデータシンボルを復号することである。許容さ
れる状態遷移は一般にトレリス線図によって表される。
ビタビアルゴリズムは、受信したデータ列に基づいて、
トレリスを通る状態パスを、送信されたデータ列に一致
する可能性が最も高いパスに制限することによってパス
の数を最小化する方法を提供する。
【0005】図3は、基本的なビタビアルゴリズムバタ
フライ計算の説明図である。現状態(PS(present sta
te))から次状態(NS(next state))への4個の可能
な符号器遷移が示されている。現状態は、符号器10の
K−1個の遅延要素12に格納されているデータの数値
と等価である。1ビットが符号器に入力されると、その
2進値が右にシフトされ、入力ビットは最上位ビット位
置(次状態の太字で示す。)に移動する。図示のよう
に、NS0には、入力ビット0によりPS0またはPS1
のいずれかから到達可能である。同様に、NS128
は、入力ビット1によりPS0またはPS1のいずれかか
ら到達可能である。ビタビアルゴリズムは、2つの可能
な遷移パスのうち最も確からしいほうを判定して「生き
残り」パスを選択するプロセスを提供する。生き残りパ
スの列が判定されると、最も確からしいデータ入力列を
復元し、畳込み符号化されたデータを復号することがで
きる。
【0006】この判定は、3つの基本的ステップからな
る。第1ステップでは、受信したデータシンボル(一般
に、入力信号の電圧または電流の振幅を表す8または1
6ビットのディジタル値)を処理して、受信データシン
ボルと、現状態から次状態への状態遷移から生じる(ノ
イズによって破損されていない)すべての可能な実際の
データシンボルの間のユークリッド距離を判定する。こ
れは、枝メトリック計算として知られており、その結果
は、次のステップで用いるためにメモリに格納される。
枝メトリック計算は、現状態から次状態への与えられた
パスが正しいことの可能性の尺度を与える。時点kにお
ける現状態iから次状態jへの遷移の枝メトリックmは
次式で表現される。
【数1】 ただし、xn(k)は受信したn番目のデータシンボル
であり、cn,ijは、伝送ノイズがない場合にiからjへ
の状態遷移から生じる実際のデータシンボル(これは、
畳込み符号器の構造から決定される。)であり、レート
は1/Rである。レート1/R符号器の場合、2つの可
能な符号器状態遷移があるため、2つの枝メトリックを
各次状態ごとに計算しなければならない。ビタビ復号で
は枝メトリックの相対的大きさのみが重要である。同じ
入力データシンボルが各枝メトリックで処理されるた
め、項Σxn 2はすべての状態iおよびjに対して同一で
あって、除くことができる。さらに、Σcn,ij 2は、極
表現を用いれば(すなわち、cn ,ij=0または1の値は
それぞれ−1または1に対応する。)、一定である。こ
れらの項(および係数の値の−2)を除くと、次の簡約
ユークリッド枝メトリックが得られる。
【数2】 こうして、レート1/R、制約長Kの畳込み符号器から
のデータ信号を復号するには、各データ入力シンボルご
とに全部で2K個のメトリック値を求めることが必要と
なる。ここで、この2K個のメトリック値のセットは、
1つのデータ入力シンボルに対する完全な枝メトリック
セットとして定義される。
【0007】一般に用いられている畳込み符号器のクラ
スの1つの重要な性質は、後半の枝メトリック値が前半
と逆符号であることである。すなわち、図3で、m
0,128=−m0,0、m1,128=−m1,0である。従って、ビ
タビ復号の間、復号器で明示的に計算しなければならな
いのは、与えられたデータ入力シンボルに対する枝メト
リックセットの半分のみである。
【0008】第2のステップでは、すべての可能な状態
遷移に対する以前に格納された枝メトリック値を処理し
て、各入力パスに対する「累積距離」を求める。その
後、最小距離(すなわち、最大確率)のパスを生き残り
パスとして選択する。このステップは、加算比較選択
(ACS(Add-Compare-Select))として知られている。
ACS演算は、(1)加算、すなわち、パスメトリック
計算と、(2)比較選択演算、という2つの演算に分解
することができる。パスメトリック加算は、現状態コス
ト(ビタビ処理のはじめにユーザによって初期化される
値)と、受信データ入力シンボルの枝メトリック値との
累算である。図3に示されるように、次状態00000
000に対するの2つのパスメトリック演算は、 PS0+m0,0 および PS1+m1,0 (3) である。次状態10000000に対するパスメトリッ
ク演算は、後半のメトリックは前半の逆符号であるた
め、次のように書くことができる。 PS0−m0,0 および PS1−m1,0 (4) 復号器は、加算の結果の2つの値を比較して、最小値
(または、実装に応じて、最大値)を求め、選択される
生き残りパスを示す1個以上の「トレースバックビッ
ト」を格納する。
【0009】第3のステップはトレースバックとして知
られている。このステップは、状態遷移のトレリスを通
って、はじめの2つのステップによって決定された最尤
パスをたどり、トレリスを通る最尤パスを再構成して、
符号器に入力されたもとのデータを抽出する。この例で
は、生き残りパスは、現状態の最下位ビット、すなわ
ち、トレースバックビット(図3では太字で示す。)に
よって表される。例えば、現状態S0からのパスではな
く現状態S1からのパスが選ばれる場合、トレースバッ
クビットは1である。トレースバックデータを処理して
符号器に入力されたもとのデータを判定するさまざまな
方法が当業者に周知である。
【0010】
【発明が解決しようとする課題】ビタビ復号はディジタ
ル信号処理アプリケーションにおいて非常に広まってい
るため、畳込み復号器がビタビアルゴリズムを高速かつ
効率的に処理することができることは重要である。従来
の実装は、プログラム可能なディジタル信号プロセッサ
および復号器アルゴリズムを含み、この復号器アルゴリ
ズムは、復号プロセスのはじめに、与えられたデータ入
力シンボル24に対する2K個のすべてのメトリックを
計算し、枝メトリックセット全体をメモリに格納すると
いうものである。しかし、この力任せの方法は、最低2
K回の計算を必要とするため、比較的多数のマシンサイ
クルを消費する可能性がある。さらに、テーブル全体を
格納することは、比較的大量のメモリを消費する可能性
がある。従来技術は、枝メトリック値の後半は前半の単
なる逆符号であることにより前半のみを格納することに
よって多少の削減を達成しているが、メトリックデータ
には依然として多くの冗長性があり、記憶領域を浪費し
ている。
【0011】
【課題を解決するための手段】本発明によれば、ビタビ
畳込み復号器のための効率的な枝メトリック計算は、制
約長Kの符号器に対して、2K個のメトリックのセット
全体ではなく、枝メトリックの縮小セットを生成するよ
うに受信データシンボルを処理し、ビタビ処理で使用す
るためにその縮小セットをメモリに格納することによっ
て、行われる。縮小メトリックセットは、完全メトリッ
クセット内に存在する現データ入力シンボルに対する固
有のメトリック値の核からなる。また、縮小メトリック
セットは、完全セットから事前に計算されたメトリック
値のサブセットを含むことも可能である。K個の基本デ
ータ変換の列が、畳込み符号器の物理的構造に従って定
義され、完全メトリックセットにおける冗長性を消去す
るために用いられる。これらの変換を核メトリック値に
適用することによって、2K個のすべてのメトリック値
を補外(外挿)することができる。
【0012】データ入力シンボルの縮小メトリック列
は、1つ以上の縮小基底セットのメトリック値と、ビタ
ビ処理の加算比較選択(ACS)中に用いられる基底セ
ットと極性の対応の列として、メモリに格納される。A
CS演算のあいだ、各状態計算に必要な枝メトリック値
は、対応する基底セットから取得され、特定のパスメト
リック演算のセットが選択されるか、あるいは、取得さ
れた枝メトリック値の符号が、対応する極性に従って補
正される。各データ入力シンボルごとに計算し格納しな
ければならない枝メトリック数を少なくするこのような
方法により、完全枝メトリックセットを計算するのに必
要なサイクル数と、あらかじめ定義された枝メトリック
値を格納するのに必要な記憶領域は大幅に削減される。
【0013】
【発明の実施の形態】本発明によれば、ビタビ畳込み復
号器26の効率的な枝メトリック計算は、まず、畳込み
符号器10の物理的構造に基づいてデータ変換のセット
を導出することによって達成される。これらの変換は、
与えられたデータ入力シンボルを処理するのに必要な枝
メトリック値の完全セットを、完全枝メトリックセット
のサブセットを収容する少数の基底セットと、この基底
セットに格納された枝メトリックデータをビタビアルゴ
リズムの加算比較選択シーケンス中にどのように使用す
るかを制御するACS対応の列へと縮小するために用い
られる。
【0014】本発明に従って枝メトリックセットを縮小
する最初のステップは、制約長Kの畳込み符号器10に
対するK個のデータ変換を生成することである。これら
の変換(および後述の対応)は、符号化の前にデータ信
号の桁位置に作用する畳込み符号器内の遅延オペレータ
の有無と、符号器から出力される畳込み符号化データに
対するこれらの遅延オペレータの効果に従って導出され
る。
【0015】畳込み符号器10の物理的または論理的遅
延および出力構造は、1個以上の多項式によって記述さ
れる。図1の符号器の場合、表現する多項式は次の通り
である。 g0=1+d+d2+d3+d5+d7+d8 (5) g1=1+d2+d3+d4+d8 (6) ただし、各遅延オペレータdは、符号化されるべきデー
タの歴史的な桁に作用し、シフト演算によって、あるい
は、ソフトウェアにより実装される。従来の制約長Kの
1/R符号器の入力ビットおよび最終遅延状態は常に出
力XOR機能に接続される。従って、表現多項式は常に
g=1+・・・+dK-1の形となる。ただし、dK-1は、
シフトレジスタ内の最終遅延状態の出力である。
【0016】符号器10を通ってシフトされる入力デー
タは、遅延要素12内の入力データの値(すなわち、2
進データの場合「0」または「1」)と、いずれの遅延
要素12が実際に分岐されて出力14を生成するかの両
方に依存する。符号器10の出力20が0および1の両
方の入力ビットで各符号器状態ごとに順に評価されるよ
うな(人工的な)状況において、遅延要素12は、
「1」のデータ値が遅延要素12に格納されるまでは出
力に影響を与えない。従って、例えば、図1の最終遅延
要素12すなわち要素d8は、ビット0がハイであるた
め、符号器状態1から開始する効果を有する。遅延要素
7の効果は、ビット1がハイのとき、符号器状態2か
ら開始し、そのときビット1はハイであり、これは、符
号器状態4まで効果を有する最高次の遅延状態であり、
符号器状態4のとき、ビット2がハイであるため、遅延
要素d6の効果が導入される。遅延要素d6は、状態4〜
7に対する最高次遅延状態である、などとなる。
【0017】符号器状態の与えられたビットが出力に影
響を与える最高次状態である間の連続する符号器状態の
セットを符号器の「ステージ」と定義する。従って、ス
テージ2は符号器状態4〜7に対応する。その理由は、
これらの符号器状態に対してビット2が最高次ビットで
あるからである。符号器状態の2進表現における低次ビ
ットの列は、各高次ビットがセットされるごとに繰り返
すため、各ステージごとの出力ビットのパターンは、与
えられたステージの遅延要素がどのようにが符号化デー
タ出力に影響を与えるかに従って、前の出力ビットのパ
ターンを変換することによって求められる。
【0018】符号器が入力0で状態0に初期化される
と、すべての出力演算に対して、初期出力は常に0とな
る。各ステージkにおいて、そのステージ内の2K-1-k
個の後続の状態における各多項式に対する出力ビットの
パターンは次の通りである。
【0019】(a)そのステージにおける演算のXOR
ゲートへの接続がない(すなわち、遅延項dkが表現多
項式にない)場合、出力ビット列は前の2K-1-k個の連
続する状態と同一である。
【0020】(b)そのステージにおける演算のXOR
ゲートへの接続がある(すなわち、遅延項dkが多項式
にある)場合、出力ビット列は前の2K-1-k個の連続す
る状態の補数である。
【0021】このパターンを用いて、与えられた受信デ
ータシンボル24に対するメトリックの縮小サブセット
に適用される簡潔なデータ変換の列を生成することによ
り、データシンボル24を処理するために要求される完
全な2K個の枝メトリックセットを生成する。
【0022】データ変換の生成について説明するため、
レート1/2の符号器に対する式2(上記)を展開する
と有用である。その結果は、ビタビ復号器26における
データシンボル24の処理中に用いられる次の基本的な
枝メトリックの式である。 m=x00+x11 (7) 極形式では、c0およびc1の値は−1(値「0」に対応
する。)または+1(値「1」に対応する。)のいずれ
かである。従って、可能な枝メトリック値は4個だけで
あり、そのうちの2個は他の2個の補数である。すなわ
ち、1個の入力シンボルに対して求めなければならない
のは2個の固有メトリック値(以下M0およびM1で表
す。)のみである。簡単のため、M0は−x0−x1に等
しいと定義し、M1はx0−x1に等しいと定義する。理
解されるように、これらの定義はある程度任意であり、
他の定義も可能である。例えば、M1は−x0+x1に等
しいと定義することも可能である。固有メトリック値
(ここではM0およびM1)は、枝メトリック値の完全セ
ットの核からなる。
【0023】次に、この解析を、式7の枝メトリック
で、図1の符号器に適用する。状態0で入力ビット0
(すなわち、シフトレジスタのすべてのステージ12が
「0」)の場合、出力は00であるため、(極表示を用
いると)枝メトリック値はM0である。(この定義は、
このクラスのすべての符号器について正しい。その理由
は、この状態では、入力0に対する初期出力ビットは常
に00であるからである。)ステージ0(すなわち、符
号器状態20=1)では、出力ビットは11、すなわ
ち、前の状態20=1の両方のビットの補数である。そ
の理由は、最下位ビットにおいて、g0およびg1に対し
てXORゲートへの接続があるためである。換言すれ
ば、g0およびg1に対する式5および式6の多項式はい
ずれも、符号器状態のビット0に対応するd8項を含
む。これは、このクラスのあらゆる符号器について正し
い。その理由は、dK-1項が常にあるからである。この
値は前の値の補数であるので、枝メトリックは−M0
ある。
【0024】次の21個の状態(すなわち、状態2〜
3)をカバーするステージ1に対する出力ビットは、7
番目の遅延要素(すなわち、多項式のd7項)への接続
を調べることによって同様に生成される。この項はg0
の式にのみ存在するため、7番目の遅延状態はc0出力
ビットのみに影響を与える。従って、ステージ1に対す
るデータ変換は、状態2および3に対する出力は状態0
および1に対する出力で第1ビットの補数をとったもの
に等しい、というものである。残りの状態に対する変換
も同様に生成される。図1の畳込み符号器に対するK個
のデータ変換を図4の表にまとめる。これらの変換を、
図1の符号器の最初の16個の出力に適用した結果、お
よび、対応する枝メトリック値を図5の表にまとめる。
【0025】与えられた畳込み符号器に対するデータ変
換のセットが導出されると、それらを用いて、入力デー
タシンボルおよびACS対応の列から導出されるメトリ
ック値の1つ以上の基底セットを含む、枝メトリック値
の大幅に縮小されたデータセットを生成することができ
る。ビタビアルゴリズムの加算比較選択演算中に必要な
K-1個の各状態に対するあらゆる枝メトリック値が、
最小の計算コストで、この基底セットから取得される。
レート1/2符号器の場合、要求される基底セットは1
個だけであるが、2個の基底セットを用いるのが好まし
い。
【0026】本発明の方法によれば、縮小された1つ以
上の枝メトリック基底セットの所望の長さ(セットサイ
ズ)Lを選択しなければならない。セットサイズLは、
2の累乗の長さとすべきであり、最小の長さは1であり
(複数のセットを用いる場合)、ただ1つのセットのみ
を利用する場合は最小の長さは2であり、最大の長さ
は、枝メトリックセット内の要素の数すなわち2Kに等
しい。各基底セットは同じ長さであることが好ましい。
セットサイズが小さいほど、メモリに格納しなければな
らない枝メトリック値は少なくなるが、必要なACS対
応の数は多くなる。しかし、以下で説明するように、A
CS対応の数が多くなると、プログラムの複雑さは増大
するが、ビタビACS演算の実行時間は増大しない。プ
ログラミングを簡単にするために、セット長Lは、AC
S中に生成されるトレースバックビットを格納するのに
用いられるレジスタの長さに等しいのが好ましい。実施
例では、トレースバックレジスタの長さは16ビットで
あるため、縮小セットサイズLも16である。実施例で
は、2つの基底セットが用いられ、完全セットのうち、
1個の入力シンボルに対して生成しなければならないメ
トリック値は32個だけである。
【0027】基底データセットの長さLが選択される
と、基底データセット内に格納される核メトリック値の
列および符号が生成される。本発明による方法が実行さ
れると、基底セットは、1個の入力データシンボル24
を処理することによって生成される実際の枝メトリック
値で埋められる。これについて以下で説明する。
【0028】第1の基底データセットは、2L個の状態
メトリックのセットに対応する順序づけられた枝メトリ
ック値の列で埋められる。実施例では、最初のL個の偶
状態メトリックが選択される。この列を生成する1つの
方法は、畳込み符号器10に対して導出される最初のl
og2(L)−1個のデータ変換を適用するものであ
る。基底セットサイズL=16の場合、最初の32個の
メトリックは、すべて0という初期状態から開始して、
最初の5個の変換(25=32であるため)を適用する
ことによって計算される。図4および図5に示した変換
に対して、基底セット1の枝メトリック値の列は次のよ
うになる。 M0,M1,M0,M1,M1,M0,M1,M0,−M1,−
0,−M1,−M0,−M0,−M1,−M0,−M1 このクラスの符号器の場合、奇状態メトリックは常に、
直前の偶状態メトリックの逆である(例えば、図5に示
すように、m1,0=−m0,0)ため、基底セット1内のメ
トリックの列は、最初の2L個の枝メトリック値の列を
完全に記述する。順序づけられた状態メトリックの他の
セット(例えば、最後のL個の奇メトリック)も同様に
選択される。
【0029】2個の基底セットが用いられるとき、第2
のデータセット(すなわち、基底セット2)の内容は、
+M0のセットエントリを+M1で、および、−M0のセ
ットエントリを−M1で置き換えることによって、第1
のデータセットから導出される。従って、実施例の基底
セット2は、次の列内のメトリック値を含むことにな
る。 M1,M0,M1,M0,M0,M1,M0,M1,−M0,−
1,−M0,−M1,−M1,−M0,−M1,−M0
【0030】1/2符号器の2個の出力ビットC0,C1
に対して可能な変換は4個しかない(C0の補数、C1
補数、C0およびC1の両方の補数、または何もしない)
ため、このようにして基底セット2は導出される。これ
らの変換は、g0およびg1を定義する符号器内の物理的
接続に対応する。図5に示されるように、C0およびC1
の両方の補数がとられる場合、結果として得られるメト
リック値は単にもとの逆である。例えば、C01=00
はメトリックM0である。両方のビットを反転させるこ
とによりC01=11が得られるが、これはメトリック
−M0に等しい。こうして、この変換を適用すること
は、M0、M1の特定の列を変更せず、メトリック値の符
号を変えるのみである。しかし、データ変換が、第1ビ
ットのみの補数をとる場合、+M0エントリは+M1で置
き換えられ、−M0エントリは−M1となる。第2ビット
のみの補数がとられる場合、+M0エントリは−M1とな
り、−M0エントリは+M1となる。こうして、基底セッ
ト1および基底セット2を組み合わせたデータ列は、メ
トリック値の符号のみが異なることはあるが、セット全
体における2L個のメトリックのあらゆる列に対するM
0、M1のメトリックエントリの正しいパターンを与え
る。
【0031】ここで、基底セット2は、基底セット1の
枝メトリックの補数であると定義する。当業者には明ら
かなように、1/2以外のレートの符号器に対しても、
同様の枝メトリック補数関係を導出することができる。
0およびC1の値ならびに基底セット1および2の対応
するメトリックの列をそれぞれ図6および図7にまとめ
る。実施例によれば、復号プロセス(後述)中に使用し
なければならないポインタレジスタの数を制限するため
に、相補的な(補数関係にある)2個の枝メトリック基
底セットが利用される。しかし、当業者には明らかなよ
うに、本発明による方法は、プログラムの複雑さやハー
ドウェア条件の少しの増大で、単一の基底セットのみで
実施することも可能である。
【0032】本発明によれば、基底セットが基底の列内
の実際の枝メトリック値で埋められると、任意の状態に
対する正しいメトリック値は、1個または複数の基底セ
ット内の適当なエントリを選択し、そのメトリック値の
符号を適当に調整することによって求められる。使用す
べき適当なセットと、特定の符号器状態に対して適用す
べき符号は、その状態に対するACS対応によって判定
される。その生成に付いて以下で説明する。
【0033】ACS処理中、復号器26によって、演算
PS0+m0,0およびPS1+m1,0を評価しなければなら
ない。奇状態メトリックは直前の偶状態メトリックの逆
である(例えば、図5に示すように、m1,0=−m0,0
ため、これらの2つのACS加算は次のものに還元する
ことができる。 PS0+m および PS1−m (8) ただし、mは、使用すべき枝メトリックの適当な値であ
る。ACS対応は、与えられた状態を、メトリック値m
を取り出すべき基底セットおよび加算の極性(すなわ
ち、取り出したmの符号をそのままにすべきかそれとも
反転すべきか)に結び付ける。
【0034】ここで、式8の2つの演算を、正極性のA
CS加算グループと定義する。負極性のグループは、取
り出されたメトリックmの符号を反転するものである。
これは、mの符号を変えることによってではなく、正極
性グループ内のACS加算を反転して次の演算を含む負
極性ACS加算グループを形成することによって行うこ
とが好ましい。 PS0−m および PS1+m (9) 当業者には認識されるように、1/2以外の符号器レー
トの場合には、2個より多くのACS加算グループが要
求されるか、あるいはその代わりに、ただ1つのACS
加算グループのみを用い、取り出されたメトリックmの
符号を変えることが生じる。相異なるACS加算グルー
プどうしを区別する「正」および「負」という用語の使
用は単に便宜上のものであり、異なるレートの符号器で
用いられる可能なグループの数を制限することを意味す
るものではない。
【0035】ACS対応は、完全な枝メトリックセット
を長さ2Lのセグメントに分割することによって導出さ
れる。次に、初期対応を定義し、最後のK−log
2(L)−1個の変換(すなわち、基底セットを導出す
るのに用いられなかったもの)を評価して、それらのデ
ータ変換が適用されるときに最初の2L個のメトリック
(例えば、基底セット1によって表されるもの)をどの
ように修正するかを再帰的に求める。このプロセスは、
K/2L個のセグメントのそれぞれを1個の基底セッ
トおよび1つの極性に対応づける。
【0036】2個の基底セットが定義されたレート1/
2符号器に対する第1のACS対応は、セグメント1
(すなわち、最初の2L個のメトリック)をカバーす
る。デフォルトで、このセグメントは正極性の基底セッ
ト1に対応づけられる。その理由は、最初の2L個のメ
トリックは基底セット1において直接符号化されてお
り、正しい符号を有するからである。この対応を「セッ
ト1/正」と呼ぶ。残りの各ACS対応は、問題として
いるセグメントに適用されるデータ変換によってC0
よびC1がどのように修正されるかに従って、前の対応
から再帰的に導出される。
【0037】第2のACS対応(セグメント2をカバー
する)は、2番目の2L個のメトリック値を生成するの
に用いられるデータ変換から導出される。C0およびC1
がいずれも補数をとられる場合、基底セット対応は同じ
ままであるが、評価すべきACS加算グループの極性
は、基底セット列の導出に関する上記の理由によって切
り替わる。C0のみ補数がとられる場合、対応する基底
セットは切り替わるが、極性は同じままである。C1
み補数がとられる場合、基底セット対応および極性はい
ずれも切り替わる。最後に、図4および図5の状態4〜
7の場合のように、変換がない場合、そのセグメントに
対するACS対応は変化しない。データ変換の再帰的お
よび指数関数的性質のため、次の対応のセットを生成す
るには、各変換を、先行するすべてのACS対応に適用
しなければならない。
【0038】以下、図1の符号器に対するサイズL=1
6の2個の基底セットの実施例の場合のACS対応を導
出する。この対応を図8にまとめる。上記のように、基
底セット1はメトリック0〜31をカバーし、セグメン
ト1に対する第1のACS(デフォルト)対応は「セッ
ト1/正」である。次の2L個のメトリック(番号32
〜63)に対するデータ変換は、両方の出力ビットの補
数をとる。従って、セグメント2に対するACS対応は
「セット1/負」である。第3のデータ変換もまた両方
のビットの補数をとるが、2L個のメトリックからなる
次の2個のセグメント(番号64〜127)のそれぞれ
に適用されるため、第1および第2のセグメントに対す
るACS対応に再帰的に適用されて、第3および第4の
セグメントに対するACS対応を生成する。この変換を
第1のACS対応に適用することにより「セット1/
負」が第3のACS対応として得られる。この変換を第
2のACS対応に適用することにより「セット1/正」
が第4のACS対応として得られる。メトリック128
〜255に対するデータ変換はC0の補数をとる。従っ
て、次のACS対応のセットは、第1のACS対応にお
いて基底セットを切り替え極性は同じにしたものとな
る。最後に、後半の変換(入力1で、メトリック0〜2
55に対するもの)は、C0およびC1の両方の補数をと
る。従って、後半の8個のACS対応は、前半の8個に
おいて極性を逆にしたものとなる。
【0039】本発明によれば、図6および図7に示され
る基底セット列および尾図8に示されるACS対応を用
いて、任意の符号器状態に対する正しい枝メトリック値
を導出することができる。与えられた符号器状態に対す
るメトリック値を抽出するためにに、その状態を含むセ
グメントおよびそのセグメントにおけるその状態の位置
を判定する。これを行う1つの方法は、Lを法とする演
算によるものである。あるいは、この値は、直接にコー
ディングされることも、ルックアップテーブルから取得
されることも可能である。その状態があるセグメント
は、ACS対応によって定義される基底セットおよび極
性を決定する。セグメント内の位置は、対応する基底セ
ット内のL個の値のうちのいずれを抽出すべきかを決定
する。
【0040】例えば、状態8はセグメント1にある。セ
グメント1は基底セット1に対応づけられている。従っ
て、基底セット1内の第9エントリである−M1が、状
態8のメトリック値である。(基底セット内の状態の番
号は0から始まる。)この状態の極性は正であるため、
取得されたメトリック値の符号は正しい。状態88はセ
グメント6にある。このセグメントのACS対応は「セ
ット2/負」である。従って、基底セット2の第9エン
トリが使用される。その値は−M0である。しかし、対
応する極性は負であるため、取得された値の符号を反転
しなければならない。これは、負のACS加算グループ
を用いることによって行うことが好ましい。異なる極性
のACS加算グループのセットを用意し、極性対応に従
って特定のACS加算グループを選択する代わりに、取
得された枝メトリック値の符号は、対応する極性が負の
ときには明示的に符号を変更することによって補正する
ことも可能である。この代替実施例では、必要なパスメ
トリック演算セットは1個だけ(例えば、式8)であ
る。
【0041】本発明による枝メトリック削減およびビタ
ビ処理の方法を、図9および図10の流れ図にまとめ
る。本発明による最初のステップは、制約長Kの畳込み
符号器に対するK個のデータ変換を、出力と遅延要素の
間の接続に従って生成することである(図9、ステップ
100)。与えられた畳込み符号器10に対するデータ
変換が導出された後、それらの変換を用いて、計算され
るメトリック値の1個または複数の基底セットおよびA
CS対応に枝メトリック値が格納される縮小データセッ
トパターンを生成する。1個または複数の枝メトリック
基底セットの所望の長さLを選択し(ステップ10
2)、第1の基底セット内に格納されるデータの列を生
成する(ステップ103)。複数の基底セットを使用す
る場合、残りの基底セットに対するデータの列も生成す
る。2個の基底セットを使用する場合、第2の基底セッ
トは、第1の基底セットの補数の枝メトリックの列を有
する(ステップ104)。基底セットデータの列が設定
された後、符号器状態と、基底セットおよびメトリック
極性の間のACS対応を設定する(ステップ105)。
【0042】デフォルトとして、初期対応は「セット1
/正」である(ステップ106)。残りの対応は、以前
に定義された対応にデータ変換を適用することによって
定義されて、次の対応のセットが生成される。変換を適
用して上記のような正しい対応を決定する方法はステッ
プ200〜214にまとめられている。
【0043】本発明によれば、ビタビ枝メトリック計算
は、与えられたデータ入力シンボルに関連する核メトリ
ック値M0およびM1を決定する(ステップ110)こと
を含む。その後、これらの値を用いて、メモリに格納さ
れている以前に定義された枝メトリック列に従ってデー
タの列を生成して、基底セットを形成する(ステップ1
12)。
【0044】ビタビアルゴリズムの枝メトリック計算が
完了した後、入力データシンボルに対するACS手順を
実行しなければならない。本発明によれば、状態0〜2
K-1−1に対するビタビACS手順中に復号器26によ
って処理されなければならない2K個のすべてのメトリ
ック値は、基底セットに格納されたメトリック値および
そのACS対応のみを使用することによって決定され
る。図10に、ビタビアルゴリズムのACS部分の間に
基底セットから正しい枝メトリック値を抽出する手順を
示す。この手順は、ここでは、2つのネストしたループ
として記述されている。しかし、この表現は便宜上のも
のであり、以下で説明するように、ネストしたループを
使用しない他の実現も可能である。
【0045】外側のループ(ステップ120からステッ
プ144まで)は、各セグメントSを順に通る。各セグ
メントごとに、正しい基底セットおよび極性が、対応す
るACS対応から決定される(ステップ122)。極性
を検査し(ステップ124)、その結果(すなわち、正
極性(ステップ126)または負極性(ステップ12
8)(それぞれ式8および9))を用いて、評価すべき
正しいACS加算グループを選択する。
【0046】内側のループ(ステップ132からステッ
プ142まで)は、選択されたACS加算グループを用
いて、現在のセグメントSにおける2L個のメトリック
に対応するL個のACS状態のそれぞれに対してビタビ
アルゴリズムのACS演算を実行する。本発明によれ
ば、現在のセグメントに対する内側ループの最初の実行
中に、選択されたACS加算グループを評価する際に用
いる適当な枝メトリックmの値は、適当な基底セットに
おける最初のメトリック値である。この値は、内側ルー
プに入ったときにセット1または2の基底アドレスに初
期化されたポインタ(ステップ134)によって選択さ
れることが好ましい(ステップ130)。代替実施例と
して、取得された枝メトリック値は、極性を用いてAC
S加算グループのうちの1つを選択する代わりに、極性
に従って補正される(図示せず)。
【0047】次に、選択されたグループに対するACS
加算は、取得されたmの値を用いて評価される(ステッ
プ136)。次に、ACS演算のうちの残りの比較およ
び選択の演算を従来技術を用いて実行し、トレースバッ
クビットを求めて格納する(ステップ138)。次に、
基底セットポインタをインクリメントし(ステップ14
0)、適当な基底セット内の各エントリを順に使用し
て、内側ループを繰り返す(ステップ142)。当業者
には認識されるように、ポインタ値は、メトリックmが
基底セットから抽出された後の任意の時点で更新するこ
とが可能である。
【0048】内側ループが、特定のセグメントに対する
L個のすべてのACS状態を評価した後、プログラム
は、すべてのセグメントが処理されたかどうかを判定す
る(ステップ144)。すべてのセグメントが処理され
ていない場合、次のセグメントSを選択し(ステップ1
46)、外側ループを繰り返す(ステップ122)。す
べてのセグメントに対するACS手順を実行した後、格
納されているトレースバックデータを用いて、当業者に
周知のさまざまな技術に従って、復号されたデータを抽
出することができる。
【0049】当業者には認識されるように、図10に例
示したACS法は多くの異なる方法で実現することが可
能である。特に、適当な基底セットの選択、および、A
CS対応によるACS加算グループの選択は、実行時に
行うことも可能である。あるいは、適当な基底セットお
よび加算グループ対応を、いくつかのセグメント固有の
「内側」ループに直接にコーディングすることによっ
て、外側および内側のループを「マージ」することも可
能である。実施例では、適当なACS対応は事前に決定
され、2K/2L個の各セグメントごとに1つずつ、2K
/2L個の内側ループに明示的にコーディングされる。
段落番号0052に、実施例のビタビアルゴリズムに対
する擬似コードのリストを示す。このアルゴリズムは、
図6、図7、および図8で定義される基底セット列およ
びACS対応を含む。
【0050】当業者には認識されるように、演算の正確
な手順およびコーディングの方法は、本発明の技術思想
および技術的範囲から離れることなく、変更可能であ
る。さらに、本発明のビタビ畳込み復号に対する効率的
な枝メトリック計算の方法は、IS−95のレート1/
2、制約長9の畳込み符号器に関して説明したが、本発
明の方法は、他の1/2畳込み符号器にも等しく適用可
能である。また、当業者には認識されるように、本発明
は、2N-1個の固有の核メトリックを適当に定義し、必
要に応じて基底セット定義およびACS対応を調整する
ことによって、レート1/Nの一般的な畳込み符号器に
も適用可能である。また、本発明の方法は、符号器を、
並列に動作するM個の1/N符号器として取り扱うこと
によって、一般的なM/N畳込み符号器にも適用可能で
ある。
【0051】
【発明の効果】以上述べたごとく、本発明によれば、ビ
タビ復号において、完全枝メトリックセットを計算する
のに必要なサイクル数と、あらかじめ定義された枝メト
リック値を格納するのに必要な記憶領域は大幅に削減さ
れる。
【0052】[本発明による効率的な枝メトリック計算
方法を用いたビタビアルゴリズムの実装の擬似コードリ
スト]受信データシンボルに従って核メトリック値M0お
よびM1を計算する /* メトリック値を基底セットに所定の順序で格納 */ set1 = M0, M1, M0, M1, M1, M0, M1, M0, -M1, -M0, -M1, -M0, -M0, -M1, -M0 , -M1 set2 = M1, M0, M1, M0, M0, M1, M0, M1, -M0, -M1, -M0, -M1, -M1, -M0, -M1 , -M0 /* ACSを実行 */ /* 状態0〜15に対するACS */ pointer = 0 do 16 { m = set1(pointer++) /* set1からメトリックを抽出 */ a0 = PS0 + m; a1 = PS0 - m /* 正極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } /* 状態16〜31に対するACS */ pointer = 0 do 16 { m = set1(pointer++) /* set1からメトリックを抽出 */ a0 = PS0 - m; a1 = PS0 + m /* 負極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } /* 状態32〜47に対するACS */ pointer = 0 do 16 { m = set1(pointer++) /* set1からメトリックを抽出 */ a0 = PS0 - m; a1 = PS0 + m /* 負極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } /* 状態48〜63に対するACS */ pointer = 0 do 16 { m = set1(pointer++) /* set1からメトリックを抽出 */ a0 = PS0 + m; a1 = PS0 - m /* 正極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } /* 状態64〜79に対するACS */ pointer = 0 do 16 { m = set2(pointer++) /* set2からメトリックを抽出 */ a0 = PS0 + m; a1 = PS0 - m /* 正極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } ・ ・ ・ /* 状態240〜255に対するACS */ pointer = 0 do 16 { m = set2(pointer++) /* set2からメトリックを抽出 */ a0 = PS0 - m; a1 = PS0 + m /* 負極性加算 */ 比較(a0, a1) トレースバックビットを決定し格納 } トレースバック演算を実行
【図面の簡単な説明】
【図1】従来のIS−95、レート1/2、制約長9の
畳込み符号器の図である。
【図2】畳込み符号化およびビタビ復号を用いた代表的
なアプリケーション環境の図である。
【図3】従来の基本ビタビバタフライ計算の説明図であ
る。
【図4】図1の畳込み符号器に対して導出されるデータ
変換の表の図である。
【図5】図4のデータ変換を用いることによって生成さ
れる枝メトリック値を示す表の図である。
【図6】図1の符号器に対して本発明によるビタビ加算
比較選択中に用いられる基底セットを示す表の図であ
る。
【図7】図1の符号器に対して本発明によるビタビ加算
比較選択中に用いられる基底セットを示す表の図であ
る。
【図8】図1の符号器に対して本発明によるビタビ加算
比較選択中に用いられるACS対応を示す表の図であ
る。
【図9】本発明に従って基底セット列およびACS対応
を生成する方法の流れ図である。
【図10】本発明に従って、図6および図7の基底セッ
トおよびACS対応を用いてビタビACS中に枝メトリ
ック値を抽出する方法の流れ図である。
【符号の説明】
5 ソースデータ 10 畳込み符号器 12 遅延要素 14 XOR機能 20 データシンボル 22 通信リンク 24 データシンボル 26 畳込み復号器 28 復号データ
───────────────────────────────────────────────────── フロントページの続き (71)出願人 596077259 600 Mountain Avenue, Murray Hill, New Je rsey 07974−0636U.S.A. (72)発明者 シヴァナンド シマナパッリ アメリカ合衆国,18103 ペンシルヴァニ ア,アレンタウン,ファーナー ストリー ト 2908,アパートメント ナンバーエー −16

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 畳込み符号化されたデータ信号を復号す
    るためにビタビプロセッサを初期化する方法において、
    該方法は、 制約長Kの畳込み符号器から生成された符号化データシ
    ンボルを含む入力信号を処理して、該畳込み符号器およ
    び該入力信号に対する枝メトリックの完全セットから固
    有の核枝メトリック値を決定するステップと、 Lを1から2Kまでの2の累乗として、前記核枝メトリ
    ック値に関連しかつ前記畳込み符号器に対するL個の順
    序づけられた枝メトリック値のセットに対応する枝メト
    リック値の列を、長さLの少なくとも1つの基底セット
    に格納する格納ステップとからなり、 前記符号器の各状態は、前記少なくとも1つの基底セッ
    トのうちの1つおよび極性の異なる複数のACS加算グ
    ループのうちの1つに対応づけられ、各グループは複数
    のビタビパスメトリック演算を含み、前記対応づけは、
    符号化前の前記データ信号の複数の桁位置に作用する前
    記畳込み符号器内の遅延オペレータの有無と、順次符号
    器出力ステージにおいて前記畳込み符号器から出力され
    る畳込み符号化されたデータに対する前記遅延オペレー
    タの効果とに基づいており、 前記入力信号および前記符号器の特定の状態に対するビ
    タビ加算比較選択手順は、該特定状態に対応づけられた
    前記基底セットから枝メトリック値を取得するステップ
    と、該取得された枝メトリック値を用いて該特定状態に
    対応づけられたACS加算グループ内のパスメトリック
    演算を実行するステップとからなることを特徴とする、
    ビタビプロセッサの初期化方法。
  2. 【請求項2】 Lは1より大きく、前記格納ステップ
    は、前記枝メトリック値の完全セット内の最初のL個の
    メトリック値に対応する第1枝メトリック値列を第1基
    底セットに格納するステップと、前記第1枝メトリック
    値列の枝メトリック補数に対応する第2枝メトリック値
    列を第2基底セットに格納するステップとを有すること
    を特徴とする請求項1に記載の方法。
  3. 【請求項3】 前記畳込み符号器は、制約長Kが9のI
    S−95レート1/2符号器であり、 前記基底セットの長さLは16であり、 前記第1枝メトリック値列は、M0,M1,M0,M1,M
    1,M0,M1,M0,−M1,−M0,−M1,−M0,−M
    0,−M1,−M0,−M1に対応し、 前記第2枝メトリック値列は、M1,M0,M1,M0,M
    0,M1,M0,M1,−M0,−M1,−M0,−M1,−M
    1,−M0,−M1,−M0に対応し、 M0およびM1は前記核枝メトリック値であることを特徴
    とする請求項2に記載の方法。
  4. 【請求項4】 前記複数のACS加算グループは、PS
    x+mおよびPSy−mのパスメトリック演算からなる正
    極性ACS加算グループと、PSx−mおよびPSy+m
    のパスメトリック演算からなる負極性ACS加算グルー
    プとを含み、PSxおよびPSyは、現状態xおよび現状
    態yから共通の次の符号器状態への符号器状態遷移に対
    応し、mは該遷移に対応する枝メトリック値であり、前
    記符号器状態のそれぞれと、前記基底セットおよびAC
    S加算グループとの間の前記対応付けは以下の通りであ
    り、 各セグメントSは、状態(S−1)×Lから始まるL個
    の順序づけられた符号器状態を表すことを特徴とする請
    求項3に記載の方法。
  5. 【請求項5】 畳込み符号化されたデータ信号をビタビ
    畳込み復号器で復号する方法において、該方法は、 制約長Kの畳込み符号器から生成された符号化データシ
    ンボルを含む入力信号を処理して、該畳込み符号器およ
    び該入力信号に対する枝メトリックの完全セットから固
    有の核枝メトリック値を決定するステップと、 Lを1から2Kまでの2の累乗として、前記核枝メトリ
    ック値に関連しかつ前記畳込み符号器に対するL個の順
    序づけられた枝メトリック値のセットに対応する枝メト
    リック値の列を、長さLの少なくとも1つの基底セット
    に格納する格納ステップと、 前記復号器において、前記入力信号および複数の可能な
    符号器状態に対するビタビ加算比較選択プロセスを実行
    してトレースバックデータを生成し格納するステップ
    と、 前記トレースバックデータを処理して復号データを生成
    するステップとからなり、 前記加算比較選択プロセスは、 a.符号化前の前記データ信号の複数の桁位置に作用す
    る前記畳込み符号器内の遅延オペレータの有無と、順次
    符号器出力ステージにおいて前記畳込み符号器から出力
    される畳込み符号化されたデータに対する前記遅延オペ
    レータの効果とに基づく、前記可能な符号器状態のそれ
    ぞれと前記少なくとも1つの基底セットとの間のあらか
    じめ定義された対応づけに従って前記少なくとも1つの
    基底セットから前記複数の可能な符号器状態のうちの特
    定の符号器状態に対する1つの基底セットを選択するス
    テップと、 b.符号化前の前記データ信号の前記複数の桁位置に作
    用する前記畳込み符号器内の前記遅延オペレータの有無
    と、順次符号器出力ステージにおいて前記畳込み符号器
    から出力される畳込み符号化されたデータに対する前記
    遅延オペレータの効果とに基づく、前記可能な符号器状
    態のそれぞれと極性の異なる複数のACS加算グループ
    との間のあらかじめ定義された対応づけに従って該複数
    のACS加算グループから前記特定の符号器状態に対す
    るACS加算グループを選択するステップと、 c.選択された基底セットから枝メトリック値を取得す
    るステップと、 d.取得された枝メトリック値を用いて、選択されたA
    CS加算グループ内の複数のパスメトリック演算を評価
    するステップと、 e.評価されたパスメトリック演算の最小値または最大
    値のうちのいずれかを生き残りパスとして選択するステ
    ップと、 f.選択された生き残りパスを示すトレースバックデー
    タを格納するステップとからなることを特徴とするビタ
    ビ復号方法。
  6. 【請求項6】 Lは1より大きく、前記格納ステップ
    は、前記枝メトリック値の完全セット内の最初のL個の
    メトリック値に対応する第1枝メトリック値列を第1基
    底セットに格納するステップと、前記第1枝メトリック
    値列の枝メトリック補数に対応する第2枝メトリック値
    列を第2基底セットに格納するステップとを有すること
    を特徴とする請求項5に記載の方法。
  7. 【請求項7】 前記畳込み符号器は、制約長Kが9のI
    S−95レート1/2符号器であり、 前記基底セットの長さLは16であり、 前記第1枝メトリック値列は、M0,M1,M0,M1,M
    1,M0,M1,M0,−M1,−M0,−M1,−M0,−M
    0,−M1,−M0,−M1に対応し、 前記第2枝メトリック値列は、M1,M0,M1,M0,M
    0,M1,M0,M1,−M0,−M1,−M0,−M1,−M
    1,−M0,−M1,−M0に対応し、 M0およびM1は前記核枝メトリック値であることを特徴
    とする請求項6に記載の方法。
  8. 【請求項8】 前記複数のACS加算グループは、PS
    x+mおよびPSy−mのパスメトリック演算からなる正
    極性ACS加算グループと、PSx−mおよびPSy+m
    のパスメトリック演算からなる負極性ACS加算グルー
    プとを含み、PSxおよびPSyは、現状態xおよび現状
    態yから共通の次の符号器状態への符号器状態遷移に対
    応し、mは該遷移に対応する枝メトリック値であり、 前記符号器状態のそれぞれと、前記基底セットおよびA
    CS加算グループとの間の前記対応付けは以下の通りで
    あり、 各セグメントSは、状態(S−1)×Lから始まるL個
    の順序づけられた符号器状態を表すことを特徴とする請
    求項7に記載の方法。
  9. 【請求項9】 畳込み符号化されたデータ信号をビタビ
    畳込み復号器で復号する方法において、該方法は、 制約長Kの畳込み符号器から生成された符号化データシ
    ンボルを含む入力信号を処理して、該畳込み符号器およ
    び該入力信号に対する枝メトリックの完全セットから固
    有の核枝メトリック値を決定するステップと、 Lを1から2Kまでの2の累乗として、前記核枝メトリ
    ック値に関連しかつ前記畳込み符号器に対するL個の順
    序づけられた枝メトリック値のセットに対応する枝メト
    リック値の列を、長さLの少なくとも1つの基底セット
    に格納する格納ステップと、 前記復号器において、前記入力信号および複数の可能な
    符号器状態に対するビタビ加算比較選択プロセスを実行
    してトレースバックデータを生成し格納するステップ
    と、 前記トレースバックデータを処理して復号データを生成
    するステップとからなり、 前記加算比較選択プロセスは、 a.符号化前の前記データ信号の複数の桁位置に作用す
    る前記畳込み符号器内の遅延オペレータの有無と、順次
    符号器出力ステージにおいて前記畳込み符号器から出力
    される畳込み符号化されたデータに対する前記遅延オペ
    レータの効果とに基づく、前記可能な符号器状態のそれ
    ぞれと前記少なくとも1つの基底セットとの間のあらか
    じめ定義された対応づけに従って前記少なくとも1つの
    基底セットから前記複数の可能な符号器状態のうちの特
    定の符号器状態に対する1つの基底セットを選択するス
    テップと、 b.選択された基底セットから枝メトリック値を取得す
    るステップと、 c.符号化前の前記データ信号の前記複数の桁位置に作
    用する前記畳込み符号器内の前記遅延オペレータの有無
    と、順次符号器出力ステージにおいて前記畳込み符号器
    から出力される畳込み符号化されたデータに対する前記
    遅延オペレータの効果とに基づいて、前記特定の符号器
    状態に対応する極性定義に従って、取得された枝メトリ
    ック値の符号を補正するステップと、 d.補正された枝メトリック値を用いて、選択されたA
    CS加算グループ内の複数のパスメトリック演算を評価
    するステップと、 e.評価されたパスメトリック演算の最小値または最大
    値のうちのいずれかを生き残りパスとして選択するステ
    ップと、 f.選択された生き残りパスを示すトレースバックデー
    タを格納するステップとからなることを特徴とするビタ
    ビ復号方法。
  10. 【請求項10】 Lは1より大きく、前記格納ステップ
    は、前記枝メトリック値の完全セット内の最初のL個の
    メトリック値に対応する第1枝メトリック値列を第1基
    底セットに格納するステップと、前記第1枝メトリック
    値列の枝メトリック補数に対応する第2枝メトリック値
    列を第2基底セットに格納するステップとを有すること
    を特徴とする請求項9に記載の方法。
  11. 【請求項11】 前記畳込み符号器は、制約長Kが9の
    IS−95レート1/2符号器であり、 前記基底セットの長さLは16であり、 前記第1枝メトリック値列は、M0,M1,M0,M1,M
    1,M0,M1,M0,−M1,−M0,−M1,−M0,−M
    0,−M1,−M0,−M1に対応し、 前記第2枝メトリック値列は、M1,M0,M1,M0,M
    0,M1,M0,M1,−M0,−M1,−M0,−M1,−M
    1,−M0,−M1,−M0に対応し、 M0およびM1は前記核枝メトリック値であることを特徴
    とする請求項10に記載の方法。
  12. 【請求項12】 前記符号器状態のそれぞれと、前記補
    正の極性との間の前記対応付けは以下の通りであり、 各セグメントSは、状態(S−1)×Lから始まるL個
    の順序づけられた符号器状態を表すことを特徴とする請
    求項11に記載の方法。
JP32558098A 1997-11-21 1998-11-16 ビタビ復号方法 Expired - Fee Related JP3281868B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/976358 1997-11-21
US08/976,358 US5912908A (en) 1997-11-21 1997-11-21 Method of efficient branch metric computation for a Viterbi convolutional decoder

Publications (2)

Publication Number Publication Date
JPH11220407A true JPH11220407A (ja) 1999-08-10
JP3281868B2 JP3281868B2 (ja) 2002-05-13

Family

ID=25524021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32558098A Expired - Fee Related JP3281868B2 (ja) 1997-11-21 1998-11-16 ビタビ復号方法

Country Status (2)

Country Link
US (1) US5912908A (ja)
JP (1) JP3281868B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3338374B2 (ja) * 1997-06-30 2002-10-28 松下電器産業株式会社 演算処理方法および装置
US6205186B1 (en) * 1997-09-03 2001-03-20 Qualcomm Incorporated Decoding with partial state information on a convolutionally encoded channel
US6690750B1 (en) 1999-12-23 2004-02-10 Texas Instruments Incorporated Flexible Viterbi decoder for wireless applications
JP4213286B2 (ja) * 1999-03-19 2009-01-21 富士通株式会社 ビタビ復号器
US6507628B1 (en) 1999-09-07 2003-01-14 Sicom, Inc. Distortion-compensated digital communications receiver and method therefor
US6901118B2 (en) * 1999-12-23 2005-05-31 Texas Instruments Incorporated Enhanced viterbi decoder for wireless applications
US6289060B1 (en) * 2000-05-12 2001-09-11 Motorola, Inc. Method and apparatus for performing a generalized viterbi search to demodulate a sequence of symbols
US7234100B1 (en) * 2000-09-28 2007-06-19 Intel Corporation Decoder for trellis-based channel encoding
US6848074B2 (en) 2001-06-21 2005-01-25 Arc International Method and apparatus for implementing a single cycle operation in a data processing system
FI111887B (fi) * 2001-12-17 2003-09-30 Nokia Corp Menetelmä ja järjestely trelliksen läpikäymisen tehostamiseksi
TW569549B (en) * 2002-10-25 2004-01-01 Benq Corp Branch metric generator for Viterbi decoder
US7231586B2 (en) * 2004-07-21 2007-06-12 Freescale Semiconductor, Inc. Multi-rate viterbi decoder
US7404139B2 (en) * 2005-01-21 2008-07-22 Freescale Semiconductor, Inc. Decoder with M-AT-A-Time Traceback
US7636397B2 (en) * 2005-09-07 2009-12-22 Mclaughlin Michael Method and apparatus for transmitting and receiving convolutionally coded data for use with combined binary phase shift keying (BPSK) modulation and pulse position modulation (PPM)
US20080152044A1 (en) * 2006-12-20 2008-06-26 Media Tek Inc. Veterbi decoding method for convolutionally encoded signal
CN101889401B (zh) * 2007-10-26 2014-12-31 高通股份有限公司 优化的维特比解码器和全球导航卫星系统接收器
US20110078424A1 (en) * 2009-09-30 2011-03-31 International Business Machines Corporation Optimizing program code using branch elimination
US8644432B2 (en) 2012-04-05 2014-02-04 Freescale Semiconductor, Inc. Viterbi decoder for decoding convolutionally encoded data stream

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5349608A (en) * 1993-03-29 1994-09-20 Stanford Telecommunications, Inc. Viterbi ACS unit with renormalization
US5454014A (en) * 1993-11-16 1995-09-26 At&T Corp. Digital signal processor
US5550870A (en) * 1994-03-02 1996-08-27 Lucent Technologies Inc. Viterbi processor

Also Published As

Publication number Publication date
US5912908A (en) 1999-06-15
JP3281868B2 (ja) 2002-05-13

Similar Documents

Publication Publication Date Title
JP3281868B2 (ja) ビタビ復号方法
US6448910B1 (en) Method and apparatus for convolution encoding and viterbi decoding of data that utilize a configurable processor to configure a plurality of re-configurable processing elements
JP3604955B2 (ja) 畳込み復号装置
US5432803A (en) Maximum likelihood convolutional decoder
US4821268A (en) Soft decision Reed-Solomon decoder
US5802116A (en) Soft decision Viterbi decoding with large constraint lengths
US7765459B2 (en) Viterbi decoder and viterbi decoding method
KR100779782B1 (ko) 비터비 디코더 용 고속 acs 유닛
US7277507B2 (en) Viterbi decoder
US8301990B2 (en) Programmable compute unit with internal register and bit FIFO for executing Viterbi code
KR100785671B1 (ko) 고속 acs 비터비 디코더 구현을 위하여 메모리내의상태 메트릭들을 효과적으로 판독하고 저장하는 방법 및장치
WO2007021057A1 (en) Viterbi decoder and method thereof
JP4152410B2 (ja) 演算回路
US20070201586A1 (en) Multi-rate viterbi decoder
KR20010067413A (ko) 브랜치 메트릭 계산 처리에서 감소된 비트수를 갖는비터비 디코더
JP4295871B2 (ja) 誤り訂正復号器
JP2002198827A (ja) 最尤復号方法及び最尤復号器
CN116073952B (zh) 一种基于MaPU架构的快速并行卷积编译码方法、系统、设备及介质
JP5370487B2 (ja) 復号方法および復号装置
JP3235333B2 (ja) ビタビ復号方法およびビタビ復号化装置
US7260154B1 (en) Method and apparatus for implementing a multiple constraint length Viterbi decoder
KR20010113792A (ko) 재귀적 컨벌루션형 심벌들을 디코딩하기 위한 방법 및 장치
JP3269845B2 (ja) ヴィタビ復号器
JPH0730438A (ja) ビタビ復号方法
JP3351414B2 (ja) ビタビ復号装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090222

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100222

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110222

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110222

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120222

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130222

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130222

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20140222

Year of fee payment: 12

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees