JPH04290315A - ビタビアルゴリズム処理装置 - Google Patents

ビタビアルゴリズム処理装置

Info

Publication number
JPH04290315A
JPH04290315A JP3300819A JP30081991A JPH04290315A JP H04290315 A JPH04290315 A JP H04290315A JP 3300819 A JP3300819 A JP 3300819A JP 30081991 A JP30081991 A JP 30081991A JP H04290315 A JPH04290315 A JP H04290315A
Authority
JP
Japan
Prior art keywords
value
processor
operator
metr
register
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
JP3300819A
Other languages
English (en)
Other versions
JP2524924B2 (ja
Inventor
Lydie Desperben
リデイ・デペルバン
Luc Dartois
リユツク・ダルトワ
Emmanuel Rousseau
エマニユエル・ルソ
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.)
Alcatel CIT SA
Original Assignee
Alcatel Radiotelephone SA
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 Alcatel Radiotelephone SA filed Critical Alcatel Radiotelephone SA
Publication of JPH04290315A publication Critical patent/JPH04290315A/ja
Application granted granted Critical
Publication of JP2524924B2 publication Critical patent/JP2524924B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4107Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6569Implementation on processors, e.g. DSPs, or software implementations
    • 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)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)
  • Non-Silver Salt Photosensitive Materials And Non-Silver Salt Photography (AREA)
  • Photoreceptors In Electrophotography (AREA)
  • Communication Control (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Detection And Correction Of Errors (AREA)
  • Electrotherapy Devices (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】本発明は、プロセッサを含み特にビタビア
ルゴリズム処理を実行するように設計された装置に係る
【0002】信号のディジタル処理において公知のビタ
ビアルゴリズムは、ディジタルシーケンスのビットの値
が推定されるいくつかの分野で使用されている。これら
の分野として特に、畳込み復号及びディジタル復調の等
化がある。
【0003】このアルゴリズムは、汎用型ディジタル信
号処理プロセッサによって使用され得る。かかるプロセ
ッサは、特にこのアルゴリズム処理用には設計されてい
ないので、このアルゴリズム処理のために、極めて多数
の命令が必要である。従って、実行すべき命令の数に伴
って処理時間が延長される。
【0004】更に、信号処理回路では一般に、補助的処
理の実行が必要である。
【0005】第1の解決方法では、信号処理プロセッサ
に、ビタビアルゴリズム処理及び補助的処理を実行し得
るパワーを与える。かかるパワーを備えたプロセッサは
、たとえ得られたとしても極めて高価であろう。
【0006】第2の解決方法では、ビタビアルゴリズム
処理を専用素子に任せる。例えばFUJITSUによっ
てMB  86620として市販されているビタビプロ
セッサを用いる。この場合、信号処理回路は少なくとも
2つの素子を必要とし、従って、その寸法が大きくなり
価格も高くなる。更に、いくつかの用途で不可欠な小型
化に適さない。
【0007】従って本発明の目的は、特にビタビアルゴ
リズム処理用に設計された装置を提供することである。 本発明装置では、専用素子を全く使用せず、ビタビアル
ゴリズム処理に要するパワーが小さい汎用型信号プロセ
ッサを使用する。本発明装置はまた、単一素子に集積さ
れるように設計されている。
【0008】本発明装置は、プロセッサを含んでおり、
ビタビアルゴリズム処理用に設計されている。このアル
ゴリズムは、値n+1の拘束長さとビットシーケンスに
対応付けされたその2n個の状態とによって定義される
。処理の目的は、初期シーケンスに対する伝送オペレー
ションの実行によって得られた伝送されたシーケンスか
ら、ビットb(i)の初期シーケンスを推定することで
ある。装置は更に、r>nのときの状態Ejのランクr
の最大メトリックMetr(Ej)を設定し、該メトリ
ックに対応するシーケンスの(r−n)番目のビットを
状態E2k及びE2k+1のランクr−1の最大メトリ
ックMetr−1(E2k)及びMetr−1(E2k
+1)から成る入力値から設定し、前記状態E2k、E
2k+1に関して、これらの状態に対応付けされたシー
ケンスのr番目のビットが例えばPr(b(r)=O/
E2k)及びPr(b(r)=O/E2k+1)〔但し
、j<2n−1のときはk=2j、j≧2n−1のとき
はk=2(j−2n−1)〕で示される所定の値をとり
、従って、Metr(Ej)が2つの式、即ち、第1の
式Metr−1(E2k)+Pr(b(r)=O/E2
k)及び第2の式Metr−1(E2k+1)+Pr(
b(r)=O/E2k+1)のうちの大きい方の値をと
るような条件付き確率を設定するオペレータを含む。
【0009】従ってオペレータは、多数のオペレーショ
ンを行うプロセッサからいくつかのオペレーションを免
除させる。
【0010】更に、プロセッサを含むビタビアルゴリズ
ム処理装置において、オペレータは、j<2n−1のと
きに入力値から、状態Ejのランクrの最大メトリック
Metr(Ej)及び対応する(r−n)番目のビット
だけでなく、状態Ej+aのランクrの最大メトリック
Metr(Ej+a)〔aは2n−1〕及び対応する(
r−n)ビットを設定し、Metr(Ej+a)が2つ
の式、即ち第1の式Metr−1(E2j)−Pr(b
(r)=O/E2j)及び第2の式Metr−1(E2
j+1)−Pr(b(r)=O/E2j+1)のうちの
大きい方の値をとるように設定するオペレータを含む。
【0011】プロセッサを含むビタビアルゴリズム処理
装置の第1の実施態様においては、オペレータが少なく
とも1つのデータバス及び1つの制御バスを介してプロ
セッサに接続されている。オペレータは4つの入力レジ
スタを含み、各レジスタの入力はデータバスの1つに接
続されており、第1レジスタはMetr−1(E2j)
の値を受容し、第2レジスタはPr(b(i)=O/E
2j)の値を受容し、第3レジスタはMetr−1(E
2j+1)の値を受容し、第4レジスタはPr(b(i
)=O/E2j+1)の値を受容する。オペレータはま
た、第1及び第2の計算回路を含み、各回路は、制御信
号に応じて最初の2つの入力レジスタ及び最後の2つの
入力レジスタの内容の和または差の値を第1及び第2の
結果として夫々生成する。 オペレータはまた、第1の結果が第2の結果よりも小さ
いときに値1、逆の場合に値0の出力信号を送出する比
較器と、比較器によって制御されており値が大きいほう
の結果を出力信号として発生するマルチプレクサを含む
。オペレータは更に、3つの出力レジスタを含み、各レ
ジスタの出力はデータバスの1つに接続され、第1及び
第2レジスタはマルチプレクサの出力信号を受信し、値
Metr(Ej)及びMetr(Ej+a)を夫々記憶
し、第3レジスタは上記メトリックに対応するシーケン
スの(r−n)番目のビットから成る比較器の出力信号
を受信する。オペレータは更に、制御バスにプロセッサ
によってアドレスされた情報の関数として種々の素子を
制御する制御モジュールを含む。
【0012】プロセッサを含むビタビアルゴリズム処理
装置においては更に、第3出力レジスタが2n個の最大
メトリックに対応するすべてのシーケンスの(r−n)
番目のビットを所定のランクに記憶するように設計され
ている。
【0013】プロセッサを含むビタビアルゴリズム処理
装置においては更に、該プロセッサが2つのデータバス
を含み、第1及び第3の入力レジスタの入力が第1デー
タバスに接続され、第2及び第4の入力レジスタの入力
が第2データバスに接続され、第1及び第2の出力レジ
スタの出力が異なるデータバスに夫々接続されている。
【0014】好ましくは、プロセッサを含むビタビアル
ゴリズム処理装置において、オペレータは、状態E2k
及びE2k+1に関して、これらの状態に対応付けされ
たシーケンスのr番目のビットが、r番目のビットに結
合された伝送シーケンスのビット重みと状態E2k、E
2k+1に対応付けされた数kと伝送オペレーションを
定義する関係との関数として決められた所定の状態をも
つような条件付き確率を設定する補助的手段を含む。
【0015】従って、オペレータに含まれる素子の数は
増えるかも知れないが、プロセッサのいくつかの計算が
免除され、従って処理に要する時間が更に短縮される。
【0016】プロセッサを含むビタビアルゴリズム処理
装置の第2の実施態様においては、オペレータが少なく
とも1つのデータバス及び制御バスを介してプロセッサ
に接続されている。オペレータは、データバスの1つに
接続された入力を夫々有し且つ重みの1つを夫々記憶す
る転送レジスタと、転送レジスタの出力に接続され、1
つの状態を識別する値jにアクセスを有し、条件付き確
率を生成するために伝送オペレーションを定義する関係
を設定するワイヤード算術演算ユニットとを含む。オペ
レータは4つの入力レジスタを含み、データバスの1つ
に接続された入力を有する第1の入力レジスタは、値M
etr−1(E2j)を受容し、第2レジスタは算術演
算装置から供給された値Pr(b(r)=O/E2j)
を記憶し、データバスの1つに接続された入力を有する
第3レジスタは値Metr−1(E2j+1)を受容し
、第4レジスタは算術演算装置から供給された値Pr(
b(r)=O/E2j+1)を記憶する。オペレータは
また、第1及び第2の計算回路を含み、これらの回路は
夫々、制御信号に応じて、最初の2つの入力レジスタ及
び最後の2つの入力レジスタの内容の和または差の値を
第1及び第2の結果として生成する。オペレータは、第
1の結果が第2の結果よりも小さいときに値1、逆の場
合に値0の出力信号を送出する比較器と、比較器によっ
て制御され大きいほうの値を有する結果を出力信号とし
て生成するマルチプレクサとを含む。オペレータは更に
3つの出力レジスタを含み、その出力の各々はデータバ
スの1つに接続され、第1及び第2の出力レジスタは、
マルチプレクサの出力信号を受信し、値Metr(Ej
)及びMetr(Ej+a)をそれぞれ記憶し、第3出
力レジスタはこれらのメトリックに対応するシーケンス
の(r−n)番目のビットから成る比較器の出力信号を
受信する。オペレータは、制御バスにプロセッサによっ
てアドレスされた情報の関数として種々の素子を制御す
る制御モジュールを含む。
【0017】更に、プロセッサを含むビタビアルゴリズ
ム処理装置において、第3出力レジスタは、2n個の最
大メトリックに対応するすべてのシーケンスの(r−n
)番目のビットを所定のランクに記憶するように設計さ
れている。
【0018】プロセッサを含むビタビアルゴリズム処理
装置においては更に、プロセッサが2つのデータバスを
含み、転送レジスタの入力が第1及び第2のデータバス
に分配されており、第1及び第3の入力レジスタの入力
の各々が異なるデータバスに接続され、第1及び第2の
出力レジスタの出力の各々が異なるデータバスに接続さ
れている。
【0019】いずれの実施態様を採用するかにかかわり
なく、プロセッサを含むビタビアルゴリズム処理装置に
おいて、オペレータのいくつかの素子はプロセッサに組
み込まれてもよい。
【0020】プロセッサを含むビタビアルゴリズム処理
装置の第1の用途では、伝送オペレーションが畳込み符
号化であり、伝送されたシーケンスの復号が実行される
【0021】プロセッサを含むビタビアルゴリズム処理
装置の第2の用途では、伝送オペレーションが伝送され
たシーケンスへのインターシンボル干渉の導入であり、
該シーケンスの等化が実行される。
【0022】添付図面に示す非限定実施例に基づく以下
の詳細な記載より本発明の種々の特徴及び利点がより十
分に理解されよう。
【0023】2つの図に共通の素子を同じ参照符号で示
す。
【0024】ビタビアルゴリズムは、伝送されたシーケ
ンスから初期シーケンスを推定する問題に解決を与える
。伝送されたシーケンスは、伝送媒体、符号化または既
知の結果を与える別の任意の手段による初期シーケンス
の修飾後に得られたものである。これらの修飾を伝送オ
ペレーションという汎用用語で表現する。各初期シーケ
ンスの推定は、伝送されたシーケンスが当該初期シーケ
ンスから生成された確率を計算することによって行なう
。最大確率を有するシーケンスを初期シーケンスの解と
する。
【0025】本発明の目的となる大きさ(grande
ur)を導入するためのビタビアルゴリズムを以下に説
明する。
【0026】入力される大きさは:長さLtの伝送され
たシーケンスを特性付けるLt個の確率の集合;これら
の確率の各々が伝送されたシーケンスBT(i)〔iは
1〜Ltのすべての値〕の1ビットの値を特性付ける;
及び、伝送オペレーションが行なわれる環境を特性付け
るパラメータ;である。
【0027】このアルゴリズムにおいては概して、計算
を標準化するために重み付けの概念を使用する。重みは
、1ビットの値の確率の関数として式:
【0028】
【数1】
【0029】によって定義される。
【0030】従って、伝送されたシーケンスのビットの
値のLt個の確率に対応するLt個の重みのシーケンス
が入力に得られると考えられる。これらの重みの各々は
、pondmaxと−pondmaxとの間で変動し得
る。伝送オペレーションが行なわれる環境を特性付ける
パラメータは、初期シーケンスのビットと伝送されたシ
ーケンスのビットとの間に存在する関係、即ち、伝送に
よって導入される不測の冗長性を定義し得る。従って、
伝送されるシーケンスの長さLtは式Lt=L.T〔L
は初期シーケンスの長さ、Tは冗長度のオーダ〕を満た
すと考えられる。
【0031】より詳細には、これらのパラメータは、伝
送されたシーケンスのビットBT(i)とその元になる
初期シーケンスのn+1個のビットb(i)との間の関
係を定義する。従って、式:
【0032】
【数2】
【0033】によって示されるT個の関係が存在する。
【0034】例えば、比1/Tの畳み込み符号化はオー
ダTの冗長性を導入し、伝送されたビットと伝送すべき
ビットとの間にT個の関係を記述する。
【0035】インターシンボル干渉の付いたチャネルで
ディジタル信号を伝送すると、冗長性が導入されず、1
つの関係だけが定義される(T=1、従ってLt=L)
。   入力される大きさは、ビタビアルゴリズムの出力に
、伝送されたシーケンスに対応する初期シーケンスであ
るという信憑性が最も高いLビットのシーケンスを与え
る。
【0036】最大信憑性の法則を直接使用する場合、長
さLのシーケンスに対して、可能な2L個のシーケンス
の2L個の確率の計算が必要であり、大きさLのオーダ
からみてこれらの計算にはかなりの時間を要するであろ
う。ビタビアルゴリズムは、確率計算の数をかなり減ら
すことによって問題を解決し得る。シーケンスの信憑性
の確率を計算するために、伝送された各ビットと該ビッ
トに対応するn+1個の伝送すべきビットとをつなぐ関
係を考察し、最大確率を有するシーケンスの(1ビット
ずつの)プログレッシブな推定を行うので、計算回数を
減らすことができる。
【0037】これらのT個の関係から、先行nビット及
び伝送されたビットの重みを認識し、初期シーケンスの
ビットb(i)が2進記号Xに等しくなる確率のT個の
式を記述するT個の新しい関係を定義する。
【0038】
【数3】
【0039】関数Fmから関数Gm(m=1〜T)への
移行の普遍的記述は難しい。何故なら、これらの関係は
伝送オペレーションにのみ依存するからである。しかし
ながら、関数Fm及び伝送されたビットの重みが認識で
きれば必然的に関数Gmも認識できる。
【0040】具体的な例で以下に説明する。
【0041】関数Gmは、式:
【0042】
【数4】
【0043】を満たすb(i)の値の確率の式を定義す
る。
【0044】従って、b(i)の値の総確率は、式:

0045】
【数5】
【0046】によって定義される。
【0047】従ってこの式は、b(i)に先行するnビ
ットを認識することによって得られるb(i)の値の条
件付き確率に対応し、Pr(b(i)=X/n)で示さ
れる。
【0048】次に、L個の2進記号Xiから形成された
推定すべきシーケンスのメトリックを式:
【0049】
【数6】
【0050】によって定義する。
【0051】−初期シーケンスの最初のn個のビットに
対して:これらのビットは長さnの推定すべきシーケン
スのディジタルサブシーケンスを形成する。可能な2n
個のシーケンスの2n個のメトリックを式(1)に従っ
て計算する。
【0052】−その直後の1ビットに対して:2n+1
個のシーケンスが存在し得る。先行メトリックの繰返し
計算を用い、シーケンスの最大信憑性、即ち最重要メト
リックの基準に従って誤りシーケンスを除去することに
よって、シーケンスの存在数を最大確率のシーケンスの
数、即ち2n個まで減らす。
【0053】ビットbi(i=2〜n+1)を固定した
式:
【0054】
【数7】
【0055】で示される2つの2進シーケンスから最重
要メトリックを有するn+1ビットのシーケンスを選択
する。
【0056】この選択を実行するためには、循環式:

0057】
【数8】
【0058】によって2つのシーケンスS0及びS1の
2つのメトリックMet(S0)及びMet(S1)を
計算する必要がある。
【0059】等式の右辺に存在するメトリックは先の計
算から既知である。従って、先行nビットの値を認識す
ることによってbn+1の条件付き確率の式を示すPr
(b(n+1)=bn+1/n)を計算すればよい。
【0060】ここで、最大メトリックのシーケンスと該
シーケンスに対応するメトリックとを記憶し、最大メト
リックのシーケンスの第1ビットを選択する。
【0061】シーケンスS0及びS1の対は2n個存在
し得る。従って、この手順を2n回実行し、各シーケン
スの第1ビットの値に関する選択を行うと、提示された
2n+1のなかから最大確率の2n個のシーケンスに対
応する2n個のメトリックが計算される。
【0062】これらの選択は、シーケンス内の第1ビッ
トの信憑性の最大確率に対応する。従って、n+1個の
ビットから形成された2n個の予め選択されたシーケン
スの第1ビットの値が固定される。
【0063】−その後のビットに対して:(n+2番目
に対応する)次の1ビットに対しては、上記の手順と同
じ手順で、最初のn+2個のビットから形成された2n
+1個のシーケンスのなかから最大確率の2n個のシー
ケンスを推定し得る。
【0064】実際、最初のn+2個のビットによって形
成されたシーケンスは合計で2n+1個存在し得る。何
故なら、これらのシーケンスに対して先に行った第1ビ
ットの選択を考慮するからである。従って、これらのシ
ーケンスに関してはn+1個の可変ビットだけが得られ
るので、2n+1個の組み合わせが可能である。
【0065】次に、前記と同様にして、可能な2n+1
個のシーケンスの第2ビットを固定し、その結果提示さ
れた2n+1個のシーケンスのなかから最大確率の2n
個のシーケンスを推定する。
【0066】ビットbi(i=3〜n+2)が固定され
ており且つ先に選択された第1ビットとしてビットB1
S0及びB1S1を有する式:
【0067】
【数9】
【0068】で示される2つの2進シーケンスから最重
要メトリックを有するn+2ビットのシーケンスを選択
する。
【0069】次に、先行nビットを特性付ける2つのシ
ーケンスS0’’1及びS1’’1とこれらのシーケン
スに関連した条件付き確率とを用い、以下の循環式によ
って2つのシーケンスS0’及びS1’の2つのメトリ
ックMet(S0’)及びMet(S1’)を計算する
【0070】
【数10】
【0071】等式の右辺に存在するメトリックは先の計
算から既知なので、条件付き確率を計算するだけでよい
【0072】最大メトリックのシーケンスと該シーケン
スに対応するメトリックとを記憶し、最大メトリックの
シーケンスの第1ビットを選択する。
【0073】予想される2n個のシーケンスS0’及び
S1’についてこの手順を2n回実行する。前記と同様
に、2n+1個のシーケンスの第2ビットの値に関する
選択を実行することによって、提示された2n+1個の
なかから最大確率の2n個のシーケンスを計算できる。 これらの選択は、シーケンス内のビットの信憑性の最大
確率に対応する。
【0074】(ランクn+3〜Lに位置する)以後のビ
ットに対しては、同じ手順で2n個のシーケンスの最初
のL−n個のビットを該ビットの最大信憑性に従って1
つずつ選択し、その結果として最大確率の2n個のビッ
トを選択し得る。
【0075】アルゴリズムが終了すると、提示された2
n個のシーケンスのなかから最大信憑性のシーケンス、
即ち最重要メトリックを有するシーケンスに対応するシ
ーケンス解を選択する。
【0076】次に、今後有用な変数を定義する。
【0077】拘束長さはn+1に等しく、伝送オペレー
ションを翻訳する関係によってつながれた伝送すべき連
続ビットの数を定義する。
【0078】アルゴリズムの1つの状態は、nより大き
い長さlを有し最終nビットだけが変数であるシーケン
スを定義する。従って、各状態Ejは、nビットを有し
、数jによって示されるシーケンスSjを特性付ける。
【0079】
【数11】
【0080】ビタビアルゴリズムのより普遍的な公式に
おいては、ビットBS0j(i)及びBS1j(i)〔
i=1〜r−n−1〕が先行段階で固定されており且つ
rが1つのランクを示すような以下の2つのシーケンス
S0j,S1jの1つを選択する。
【0081】   S0j:BS0j(1),BS0j(2),...
,BS0j(r−n−1),0,br−n+1,...
,br−1,br  S1j:BS1j(1),BS2
j(2),...,BS0j(r−n−1),1,br
−n+1,...,br−1,br長さrを有するこれ
らの2つの2進シーケンスは、最終nビットが同じなの
で同じ状態Ejに対応する。慣例に従ってこれらのシー
ケンスに対応するメトリックをランクrと呼びMetr
で示す。
【0082】次に、各j(j=0...2n−1)毎に
、2つのシーケンスS0j及びS1jのランクrの2つ
のメトリックMetr(S0j)及びMetr(S1j
)を式:  Metr(S0j)=Metr−1(S0
’j)+Pr(b(r)=br/S0’’j)  Me
tr(S1j)=Metr−1(S1’j)+Pr(b
(r)=br/S1’’j) 〔但し
【0083】
【数12】
【0084】である〕に従って計算し、最重要メトリッ
クを有するシーケンスを最大確率のシーケンスとして選
択する。
【0085】先に与えられたシーケンスの状態の定義を
用い数c=br.2nを導入すると、シーケンスS0’
j及びS1’jは、先の段階で保留されたシーケンスの
状態E2j−c及び2j+1−cにそれぞれ対応するこ
とがわかる。先の段階で保留されたシーケンスの最終ビ
ットがシーケンスS0’’j及びS1’’1をそれぞれ
形成する。
【0086】次に、対応する状態Metr(S0j)及
びMetr(S1j)がそれぞれMet0r(Ej)及
びMet1r(Ej)で置換された新しい識別名のシー
ケンスに対して先の公式と等価の新しい公式を定義し得
る。
【0087】   MetOr(Ej)=Metr−1(E2j−c)
+Pr(b(r)=br/E2j−c)  Met1r
(Ej)=Metr−1(E2j+1−c)+Pr(b
(r)=br/E2j+1−c)次に、シーケンスの状
態Ejのランクrの最大メトリックを、MAX[A,B
]が2つの値A及びBの大きいほうを示す次の式:   Metr(Ej)=MAX[Met1r(Ej),
Met0r(Ej)]によって定義する。
【0088】最大メトリックに従って2n個のシーケン
ス解の(r−n)番目のビットを選択する。
【0089】先に計算された可能なr−1ビットの2n
個のシーケンスの状態のランクr−1の2n個の最大メ
トリックから、最大確率のrビットの2n個のシーケン
スの状態Ej(j=0,...,2n−1)のランクr
の2n個の最大メトリックを計算する手順を繰り返す。
【0090】次に、最終ビットだけが異なっている2つ
のビットシーケンスに対応する2つの特定状態Ej,E
j+a〔j<2n−1〕を考察する。即ちa=2n−1
のときこれらの状態は式: Ej=br−n+1,br−n+2,...,br−2
,br−1,0Ej+a=br−n+1,br−n+2
,...,br−2,br−1,1で示される。
【0091】状態Ejに対応付けられたメトリックの場
合、最終ビットbrが0なので、先に定義した数cは0
である。従って状態Ejに対応付けられたランクrのメ
トリックの式は以下のごとく書き替えられる。
【0092】   MetOr(Ej+a)=Metr−1(E2j)
+Pr(b(r)=O/E2j)  Met1r(Ej
+a)=Metr−1(E2j+1)+Pr(b(r)
=O/E2j+1)状態Ej+aに対応付けられたメト
リックの場合、最終ビットbrが1なので、先に定義し
た数cは2nである。Pr(b(r)=1/Ej)及び
Pr(b(r)=O/Ej)が同じ絶対値を有し且つ反
対の符号を有することを考慮すると、状態Ej+aに対
応付けされたランクrのメトリックを以下の式に書き替
えることができる。
【0093】   c=2a   2(j+a)−c=2j   2(j+a)+1−c=2j+1   MetOr(Ej+a)=Metr−1(E2j)
−Pr(b(r)=O/E2j)  Met1r(Ej
+a)=Metr−1(E2j+1)−Pr(b(r)
=O/E2j+1)その結果として、状態Ej,Ej+
aに対応付けされたランクrの最大メトリックを状態E
2j,E2j+1に対応付けされたランクr−1の最大
メトリックとこれらの2つの最新状態に関するr番目の
ビットb(r)の条件付き確率の式とを用いて計算でき
る。
【0094】本発明は、これらの計算を実行するために
、信号のディジタル処理プロセッサに結合された専用オ
ペレータを装置内で使用するという解決を提案する。 当業者に容易な多少の変更を与えることによって、状態
Ejに関連するランクrの最大メトリックを計算できさ
えすれば本発明の適用が可能である。
【0095】ビタビアルゴリズムの処理は3段階、即ち
初期段階と繰り返し段階と最終段階とに分解できる。
【0096】初期段階では、ランクnの最大メトリック
Metn(Ej)を設定する。
【0097】公知技術に従い、初期シーケンスの前に伝
送された既知のn個の保存ビットからこれらのメトリッ
クを計算する。保存ビットが準備されていないときは、
初期シーケンスのビットの条件付き確率を使用すること
なく、伝送されたビットの重みからこれらのメトリック
を直接計算する。
【0098】特に本発明に関係の深い繰り返し段階に関
しては後述する。多数のスペレーションが必要で長時間
を要するのはこの段階である。
【0099】最終段階では、先行段階で計算されたラン
クLの最大メトリックから最大確率の初期シーケンスを
定義する。初期段階と全く同様にこの段階は当業者に公
知である。
【0100】次に繰り返し段階を説明する。この段階で
は、ランクnの最大メトリックからランクLの最大メト
リックを設定する。
【0101】この段階は、初期シーケンスのビットb(
i)の指数iがn+1〜Lまでのすべての値をとるよう
な第1ループの形態を有する。この第1ループは、アル
ゴリズムの状態Ejに対応付けられた指数jが0〜2n
−1のすべての値をとるように増分される第2ループを
含む。
【0102】状態Ejに対応付けられたj番目のシーケ
ンスの(i−n)番目のビットの値をch(i,j)と
おく。この値は、Met  1i(Ej)>Met  
0i(Ej)のときは1であり、逆の場合は0である。
【0103】ループ1:i=n+1〜Lに対して以下の
演算を行う:初期化 ループ2:j=0〜2n−1−1に対して以下の演算を
行う:   MetOi(Ej)=Meti−1(E2j)+P
r(b(i)=O/E2j) Met1i(Ej)=M
eti−1(E2j+1)+Pr(b(i)=O/E2
j+1)  Meti(Ej)=MAX[Met1i(
Ej),Met0i(Ej)]  ch(i,j)=M
eti(Ej)に対応するj番目のシーケンスの(i−
n)番目のビット   MetOi(Ej+a)=Meti−1(E2j)
−Pr(b(i)=O/E2j)  Met1i(Ej
+a)=Meti−1(E2j+1)−Pr(b(i)
=O/E2j+1)  Meti(Ej+a)=MAX
[Met1i(Ej),Met0i(Ej)]  ch
(i,j+a)=Meti(Ej+a)に対応するj+
a番目のシーケンスの(i−n)番目のビット ループ2終了 更新 ループ1終了。
【0104】わかり易くするために、「初期化」段階及
び「更新」段階を挿入した。これらの段階は当業者に公
知であり、特に、プロセッサに結合されるメモリを最適
に設計することが可能である。
【0105】本発明の第1の実施態様においては、プロ
セッサによって実行される条件付き確率の計算以外の第
2ループの全部のオペレーションをオペレータが実行す
る。
【0106】第2ループの繰返し毎にオペレータの入力
は: Meti−1(E2j) Pr(b(i)=0/E2j) Meti−1(E2j+1) Pr(b(i)=0/E2j+1) を受容する。
【0107】第2ループの繰返し毎にオペレータの出力
は: Meti(Ej) Meti(Ej+a) を供給する。
【0108】第1ループの繰返し毎にオペレータの出力
は: ch(i,j)〔j=0〜2n−1) を供給する。
【0109】第1ループの初期化段階で、第2ループの
外部でjが0に初期化されたと想定すると、ループの各
繰返し毎にjの値が自動的に増分されるので、オペレー
タがjの値を認識する必要はない。
【0110】更に、第1ループの更新段階で、種々のシ
ーケンスの(i−n)番目のビットの値が第2ループの
外部で読取られると考えてよい。
【0111】プロセッサは所謂「HARVARD」型ア
ーキテクチャ、即ち並列マルチバスアーキテクチャを有
する。従ってプロセッサは、複数データの並列転送を実
行し得る複数のデータバスを有する。
【0112】この実施態様では、プロセッサが独立の2
つのデータを並列に転送し得る少なくとも2つのデータ
バスを有する。
【0113】本発明はまた、当業者に容易ないくつかの
変更を与えることによってプロセッサがデータバスを1
つだけ有する場合にも使用できる。但し処理時間は延長
される。
【0114】オペレータの制御は、プロセッサのアドレ
スバスによって行われてもよく、この場合には該バスに
存在する情報の復号が行なわれる。また、オペレータの
制御が、プロセッサの命令バスによって行なわれてもよ
く、この場合には、適応性がより大きい。どちらを使用
するかにかかわりなく、オペレータを制御するバスをプ
ロセッサの制御バスと呼ぶ。
【0115】次に、図1に示す特定回路によるビタビア
ルゴリズム処理を説明する。この回路は単なる1つの実
施例であり、本発明の範囲内で他の多くの変形が可能で
ある。
【0116】オペレータO1は、2つのデータバスDB
1,DB2と制御バスCBとを介してプロセッサDSP
に接続されている。該オペレータは4つの入力レジスタ
を含み、第1レジスタI1及び第3レジスタI3の入力
は第1データバスDB1に接続され、第2レジスタI2
及び第4レジスタI4の入力は第2データバスBD2に
接続されている。オペレータは第1計算回路AS1を含
み、該回路は、制御信号に応じて、第1入力レジスタI
1及び第2入力レジスタI2に存在するデータの加算ま
たは減算の第1結果R1を生成する。オペレータはまた
第2計算回路AS2を含み、該回路は、制御信号に応じ
て、第3入力レジスタI3及び第4入力レジスタI4に
存在するデータの加算または減算の第2結果R2を生成
する。オペレータO1は更に、比較器COMPを含み、
該比較器は、第2結果R2が第1結果R1よりも大きい
ときに状態1、逆の場合に状態0の選択信号を発生する
。オペレータはまた、マルチプレクサMUXを含み、該
マルチプレクサは、選択信号の値が0であるか1である
かに従って第1結果R1または第2結果R2を出力信号
Mとして送出する。オペレータはまた、3つの出力レジ
スタを含み、第1出力レジスタS1及び第2出力レジス
タS2の入力はマルチプレクサの出力信号Mを受信し、
シフトレジスタ型の第3の出力レジスタS3は、選択信
号CHの種々の値を順次記憶する。第1出力レジスタS
1及び第3出力レジスタS3の出力は第1データバスD
B1に接続され、第2出力レジスタS2の出力はデータ
バスDB2に接続されている。オペレータは最後に、制
御モジュールCを含み、該モジュールは制御バスCBに
存在する情報に応じてオペレータの種々の素子の制御信
号を発生する。これらの信号は:第1入力レジスタI1
及び第2入力レジスタ宛ての第1制御信号C1と、第3
入力レジスタI3及び第4入力レジスタI4宛ての第2
制御信号C2と、2つの計算回路AS1,AS2を加算
モードまたは減算モードに位置決めする第3制御信号C
3と、第1出力レジスタS1宛ての第4制御信号C4と
、第2出力レジスタS2宛ての第5制御信号C5と、第
3出力レジスタS3宛ての第6制御信号C6とから成る
【0117】一般に1つの組み合わせ論理回路から成る
制御モジュールCの機能は、後述する装置によって実行
される連続オペレーションから当業者には容易に理解さ
れるであろうから、該制御モジュールに関しては詳述し
ない。
【0118】上述のビタビアルゴリズム処理を完遂する
オペレータ及びプロセッサの役割を以下に詳細に説明す
る。
【0119】ループ2:プロセッサDSPによる値Pr
(b(i)=O/E2j)の計算、プロセッサによる値
Pr(b(i)=O/E2j+1)の計算、値Meti
−1(E2j)及び値Pr(b(i)=O/E2j)を
プロセッサからオペレータO1に転送、値Meti−1
(E2j+1)及び値Pr(b(i)=O/E2j+1
)をプロセッサからオペレータO1に転送、オペレータ
によるMeti(Ej)の計算、j番目のシーケンスの
(i−n)番目のビットCHの計算及び記憶、オペレー
タによるMeti(Ej+a)の計算、(j+a)番目
のシーケンスの(i−n)番目のビットCHの計算及び
記憶、値Meti(Ej)及び値Meti(Ej+a)
をオペレータからプロセッサに転送、ループ2終了、シ
ーケンスの(i−n)番目のビットの2n個の値をオペ
レータからプロセッサに転送。
【0120】上記演算を実行するために第2ループが行
う命令サイクル数を最適にする必要がある。このサイク
ル数は、オペレータに結合されたプロセッサのタイプ及
び所望のビタビアルゴリズムの用途に依存するので正確
な推定は難しい。しかしながら以下の仮説は可能である
【0121】条件付き確率の計算はプロセッサの1命令
サイクルで十分であり第2ループの内部で実行されるで
あろう。
【0122】プロセッサは1つの命令サイクル中に1回
のオペレーションと2回のデータ転送とを実行し得る。
【0123】この場合、オペレータとプロセッサとの間
で並列処理を行なうことによって、第2ループの7段階
がプロセッサの5命令サイクルで実行される。当業者は
このような処理を「パイプライン」と呼ぶ。これらの2
つの手段は、アルゴリズムの対応する2つの状態E2j
0、E2j0+2に関して、連続する2つのjの値J0
及びJ0+1を同時に処理する。
【0124】第1サイクル中は、プロセッサDSPが、
前記のごとく計算された値Meti−1(E2j0)及
び値Pr(b(i)=O/E2j0)のそれぞれを、第
1制御信号C1を用いデータバスDB1,DB2によっ
て第1入力レジスタI1及び第2入力レジスタI2に転
送する。
【0125】第2サイクル中は、プロセッサDSPが、
前記のごとく計算された値Meti−1(E2j0+1
)及び値Pr(b(i)=O/E2j0+1)のそれぞ
れを、第2制御信号を用いデータバスDB1,DB2に
よって第3入力レジスタI3及び第4入力レジスタI4
に転送する。
【0126】第3サイクル中は、プロセッサDSPが値
Pr(b(i)=O/E2j0+2)を計算する。他方
で、オペレータO1は、第3制御信号C3を用いて2つ
の計算回路AS1,AS2を加算モードに位置決めする
ことによって値Meti(Ej0)を計算し、この値を
第4制御信号C4を用いて第1出力レジスタS1に記憶
させ、対応する(i−n)番目のビットCHを第6制御
信号C6を用いて第3出力レジスタS3に記憶させる。
【0127】第4サイクル中は、プロセッサDSPが値
Pr(b(i)=O/E2j0+3)を計算する。他方
で、オペレータO1は、第3制御信号C3を用いて減算
モードで値Meti(Ej0+a)を計算し、この値を
第5制御信号C5を用いて第2出力レジスタS2に記憶
させ、対応する(i−n)番目のビットCHを第6制御
信号C6を用いて第3出力レジスタS3に記憶させる。
【0128】第5サイクル中は、プロセッサDSPが2
つのデータバスDB1,DB2から値Meti(Ej0
)及びMeti(Ej0+a)を得る。
【0129】第2ループを2n−1回繰返した後で、オ
ペレータO1は、(i−n)番目のビットの種々の値を
、第6制御信号C6を用い第1データバスDB1を介し
てプロセッサDSPに転送する。
【0130】更に、条件付け確率の値をj0=0に初期
化する段階が必要であると考えられる。この段階は当業
者に容易である。
【0131】また、言うまでもなく、オペレータは第3
及び第4のサイクルに予定された処理を該サイクルの持
続時間と適合できる時間内に実行できる。
【0132】従って、第1ループに含まれる第2ループ
外部のサイクル数をE1とおくと、インタリーブする2
つのループを実行するための総サイクル数N1は、N1
=(L−n)(2n−1・5+E1)で示される。
【0133】単一信号処理プロセッサが下位のランクの
2つのメトリックから1つの最重要メトリックの計算を
実行する場合に必要な総サイクル数をN2とおき、第1
ループに含まれる第2ループ外部のサイクル数をE2と
おくと、数N2は、N2=(L−n)・(2n・8+E
2)で示される。
【0134】E1及びE2は通常は10未満であり、n
は一般には4〜7であるから、N1はN2のほぼ1/3
である。
【0135】本発明の第2の実施態様においては、オペ
レータが第2ループのすべてのオペレーションを実行す
る。即ち、第1の実施態様で説明したオペレーション以
外に、条件付き確率の計算を実行する。
【0136】第2ループの繰返し毎にオペレータの入力
は、 Pond(BT(I))〔但し、I=i.T,i.T+
1,...,i.T+T−1〕 Meti−1(E2j) Meti−1(E2j+1)を受容する。
【0137】第2ループの繰返し毎にオペレータの出力
は、 Meti(Ej) Meti(Ej+a)を供給する。
【0138】第1ループの繰返し毎にオペレータの出力
は、 ch(i,j)〔但しj=0〜2n−1〕を供給する。
【0139】前述のごとく第1ループの初期化段階で第
2ループ外部でjを0に初期化する。ループの繰返し毎
にjの値が自動的に増分される。更に、オペレータは第
2ループの繰返し毎に伝送されるビットの重み付けを行
なう必要はなく、重み付けは1回だけ行なわれる。従っ
て、値を初期化する際に、これらの値は、第1ループ内
の第2ループ外でオペレータに転送される。
【0140】前述のごとく、種々のシーケンスの(i−
n)番目のビットの値は更新段階で第1ループ内の第2
ループ外で読取られる。
【0141】次に、図2に示す別の回路によるビタビア
ルゴリズムを説明する。使用されるプロセッサは第1の
実施態様で使用したプロセッサと同じである。
【0142】選択された実施例では説明をわかり易くす
るためにTを4に固定した。しかしながら本発明におい
てTがこの値に限定されないこと、当業者に容易な若干
の変更を与えることによって任意のTの値を使用し得る
ことを理解されたい。
【0143】前述のオペレータO1に比べたオペレータ
O2の違いは以下の素子を含むことである。オペレータ
O2は4つの転送レジスタを含み、第1転送レジスタT
1及び第3転送レジスタT3の入力は第1データバスD
B1に接続され、第2転送レジスタT2及び第4転送レ
ジスタT4の入力は第2データバスDB2に接続されて
いる。オペレータO2はまた、Pond(BT(i.4
)、Pond(BT(i.4+1)、Pond(BT(
i.4+2)及びPond(BT(i.4+3)を記憶
するために配備された4つの転送レジスタの出力信号か
ら条件付き確率の式を計算する算術演算ユニットUAを
含む。
【0144】この算術演算ユニットは容易に製造できる
ワイヤード回路である。
【0145】第2入力レジスタI2は、値Pr(b(i
=O/E2j)を第2データバスDB2からでなく算術
演算ユニットUAから直接受信する。同様に、第4入力
レジスタI4は値Pr(b(i=O/E2j+1)を算
術演算ユニットUAから直接受信する。
【0146】更に、転送レジスタ及び算術演算ユニット
を制御するための制御信号が付加されている。これらの
信号は第1の実施態様で説明した機能と同様の機能を果
たすのでここでは詳細に説明しない。また図示しない。 また、第2ループの繰返し数に対応する値jを制御モジ
ュールCから算術演算ユニットUAに伝送する状態信号
Eが付加されている。
【0147】上述のビタビアルゴリズム処理を完遂する
オペレータ及びプロセッサの役割を以下に詳細に説明す
る。
【0148】ループ1:i=n+1〜Lに対して以下の
演算を実行する:Pond(BT(i,4)、Pond
(BT(i,4+1)、Pond(BT(i,4+2)
及びPond(BT(i,4+3)をプロセッサDSP
から4つの転送レジスタT1,T2,T3,T4に転送
する処理を含む初期化、ループ2:j=0〜2n−1に
対して以下の演算を実行する:オペレータO2による値
Pr(b(i)=O/E2j)の計算、オペレータO2
による値Pr(b(i)=O/E2j+1)の計算、値
Meti−1(E2j)をプロセッサDSPからオペレ
ータに転送、値Meti−1(E2j+1)をプロセッ
サDSPからオペレータに転送、オペレータによるMe
ti(Ej)の計算、j番目のシーケンスの(i−n)
番目のビットの計算及び記憶、オペレータによるMet
i(Ej+a)の計算、(j+a)番目のシーケンスの
(i−n)番目のビットの計算及び記憶、値Meti(
Ej)及び値Meti(Ej+a)をオペレータからプ
ロセッサに転送、ループ2終了、種々のシーケンスの(
i−n)番目のビットの2n個の値をオペレータからプ
ロセッサに転送及び更新、ループ1終了。
【0149】第1の実施態様と同様の仮説が可能である
【0150】条件付き確率の計算はプロセッサDSPの
内部で実行されるのであればプロセッサDSPの1つの
命令サイクルで十分であろう。
【0151】プロセッサDSPは1つの命令サイクル中
に1回のオペレーションと2回のデータ転送とを実行し
得る。
【0152】この場合、オペレータとプロセッサとの間
で並列処理を行なうことによって、第2ループの7段階
がプロセッサの2命令サイクルで実行される。
【0153】これらの2つの手段は、アルゴリズムの対
応する2つの状態E2j0、E2j0+2に関する連続
する2つのjの値J0及びJ0+1を同時に処理する。
【0154】第1サイクル中は、プロセッサDSPが、
値Meti−1(E2j0+2)及び値Meti−1(
E2j0+3)を第1入力レジスタI1及び第3入力レ
ジスタI3にそれぞれ転送する。他方で、オペレータO
2は第1の実施態様と同様に、値Meti(Ej0)及
びMeti(Ej0+a)を計算し、これらを記憶し、
且つ対応する(i−n)番目のビットCHを記憶する。
【0155】第2サイクル中は、プロセッサDSPが、
値Meti(Ej0)及びMeti(Ej0+a)を得
る。他方で、オペレータO2は、第2入力レジスタI2
及び第4入力レジスタI4にそれぞれ供給するために値
Pr(B(i)=O/E2j0+2)及びPr(b(i
)=O/E2j0+3)を算術演算ユニットUAにおい
て計算する。
【0156】第2ループを2n−1回繰返した後で、オ
ペレータO2は、(i−n)番目のビットの種々の値を
、プロセッサDSPに転送する。
【0157】j0=0とするために条件付け確率の値の
初期化段階を付加することが必要であると考えられる。 この段階は当業者に容易である。
【0158】また、言うまでもなく、オペレータは2つ
の命令サイクルの各々で行なうべき処理を1サイクルの
持続時間と適合性の時間内に実行できる。
【0159】従って、第1ループに含まれる第2ループ
外部のサイクル数をE3とおくと、インタリーブする2
つのループを実行するための総サイクル数N3は、N3
=(L−n)(2n−1・2+E3)である。
【0160】単一信号処理プロセッサが、下位のランク
の2つのメトリックから1つの最大メトリックの計算を
実行する場合に必要な総サイクル数をN4とおき、第1
ループに含まれる第2ループ外部のサイクル数をE4と
おくと、数N4は、N4=(L−n)・(2n・8+E
4)である。
【0161】N3はN4よりやや大きいが2つの値は2
nに比べれば小さい。第1の実施態様で与えられた大き
さのオーダを維持する場合、N3はN4のほぼ1/8で
ある。
【0162】以上では2つの実施例について説明した。 第2の実施例は処理速度に関してはよりすぐれた性能を
有するが、条件付き確率の式の計算を実行するためにワ
イヤード算術演算ユニットを必要とする。該ユニットの
構造は伝送コンテキストに依存し、従って応用がきき難
い。実際、同じオペレータでビタビアルゴリズムの複数
の使い方をしたい場合には、オペレータが複数の算術演
算ユニットを有し、各ユニットが各1つのアルゴリズム
の使い方に対応する条件付き確率の式を計算するように
しなければならない。従って、オペレータのサイズが大
きくなる。
【0163】逆に、第1の実施例では、変更を要せずに
アルゴリズムの種々の使い方が可能である。実際、使い
方を変える場合に必要なアルゴリズムの唯一の変更は、
プロセッサによって計算される条件付き確率の式の定義
を変更するだけである。
【0164】これらの2つの実施例は性能も違うしコス
トも違う。所望の仕様に従っていずれかを選択するとよ
い。
【0165】本発明のオペレータは異なる2つの方法で
編成され得る。即ち、結合されるプロセッサの完全に外
部に配置されてもよくまたは該プロセッサに一部組み込
まれてもよい。
【0166】第1の場合には、オペレータがプロセッサ
から独立している。
【0167】第2の場合には、オペレータのいくつかの
レジスタをプロセッサの算術演算ユニット及びデータ論
理に含まれたレジスタによって置換し得る。従って、オ
ペレータが占める表面は小さくなる。
【0168】第1の場合には、オペレータとプロセッサ
とが同一素子内に存在してもよくまたは存在しなくても
よい。第2の場合には、プロセッサとオペレータとが同
一素子内に集積されていなければならない。
【0169】本発明の構造を説明したので、伝送の分野
における本発明のいくつかの用途を以下に説明する。
【0170】信号のディジタル処理におけるビタビアル
ゴリズムの最も普及した2つの用途は、畳込み符号の復
号及びインターシンボル干渉の付いた信号の復調の等化
である。
【0171】畳込み符号の復号の場合には、ビタビアル
ゴリズムを処理するために、伝送されたシーケンスのビ
ットの値の確率の重み付け、及び、伝送オペレーション
を翻訳する関係、が必要である。
【0172】通常は、信号処理において、復号は復調後
に行なわれる。重み付けは復調器によって行われる。伝
送オペレーションを翻訳する関係が畳込み符号化である
。この符号化は、式:
【0173】
【数13】
【0174】で示される関係を用いて符号化ビットBC
を初期シーケンスの(n+1)個のビットbに結び付け
る。
【0175】伝送されたビットの値の確率に対応する重
みPond(BT(i)=B(i)),i=1,...
T,Lを認識する。b(i)とBC(T.i)との間の
変数の逆転を実行し、前記式の符号化BC(I)を対応
する重みPond(BT(I))で置換し、式を標準化
することによって、以下のT個の式:
【0176】
【数14】
【0177】〔式中、Xは2進記号、N[bit]:b
it=1ならばN[bit]=1で、bit=0ならば
N[bit]=−1によって定義される標準化関数〕が
得られる。
【0178】従って、これらのT個の式は、ビットb(
k)が先行nビットの値を認識するXに等しくなる条件
付き確率に対応する。これらの項を1つの項にまとめ、
すべての条件付き確率に対応する式:
【0179】
【数15】
【0180】〔式中、Ejは先行nビットによって定義
される状態〕を得る。
【0181】従ってこの式は、本発明で使用される確率
に対応するすべての条件付き確率の式を定義する。
【0182】インターシンボル干渉の付いた信号の復調
の等化の場合には、ビタビのアルゴリズムを処理するた
めに、伝送されたシーケンスのビットの値の確率の重み
付けの式、及び、伝送オペレーションを翻訳する関係が
必要である。
【0183】通常は、信号処理において、伝送チャネル
のパルス応答に適応した濾波後に等化が行なわれる。重
み付けは適応フィルタによって与えられる。
【0184】伝送オペレーションを翻訳する関係は、イ
ンターシンボル干渉の付いたチャネル内で変調されたデ
ィジタル信号を特性付ける関係である。この関係は冗長
性を導入せず(T=1)、伝送すべき各ビットを初期シ
ーケンスの先行nビットに結び付ける。
【0185】この関係は、伝送されたi番目のビットの
状態Ej及び重みを定義する先行nビットを認識する初
期シーケンスのn番目のビットの値の条件付き確率の式
を定義する以下の公式:
【0186】
【数16】
【0187】〔但し、U(k)=2.b(k)−1S(
k)=インターシンボル干渉のk番目の係数〕によって
示される。
【0188】等式の右辺の第2のオペランドは、ビット
b(i)の先行nビットの干渉項を定義する項である。 実際、項U(i−k)〔k=1〜n−1〕はビットb(
i)の先行nビットを示し、項S(k)は先行ビットb
(i−k)に対応付けされたインターシンボル干渉係数
である。
【0189】これらのインターシンボル干渉係数はLビ
ットのシーケンスの伝送中は一定である。これらの係数
は、可能な2n個の状態Ejに対応する2n個の干渉項
を生じさせる。従って、これらの2n個の項は第2ルー
プの外部で計算される。従って、条件付き確率の計算が
重み付けと干渉項との加算だけになる。
【図面の簡単な説明】
【図1】本発明の第1の実施態様に対応する回路の概略
図である。
【図2】本発明の第2の実施態様に対応する別の回路の
概略図である。
【符号の説明】
DSP  プロセッサ DB1,DB2  データバス C  制御モジュール C1,C2,C3,C4,C4,C5,C6  制御信
号I1,I2,I3,I4  レジスタ AS1,AS2  計算回路 MUX  マルチプレクサ COMP  比較器 UA  算術演算ユニット

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】  プロセッサを含んでおり、値n+1の
    拘束長さとビットシーケンスに対応付けされたその2n
    個の状態とによって定義されるビタビアルゴリズム処理
    を想定しており、該処理が、初期シーケンスに対する伝
    送オペレーションの実行によって得られた伝送されたシ
    ーケンスから、ビットb(i)の初期シーケンスを推定
    することを目的とする装置であって、装置が、r>nの
    ときの状態Ejのランクrの最大メトリックMetr(
    Ej)を設定し、該メトリックに対応するシーケンスの
    (r−n)番目のビットを状態E2k及びE2k+1の
    ランクr−1の最大メトリックMetr−1(E2k)
    及びMetr−1(E2k+1)から成る入力値から設
    定し、前記状態E2k、E2k+1に関して、これらの
    状態に対応付けされたシーケンスのr番目のビットが例
    えばPr(b(r)=O/E2k)及びPr(b(r)
    =O/E2k+1)〔但し、j<2n−1のときはk=
    2j、j≧2n−1のときはk=2(j−2n−1)〕
    で示される所定の値をとり、Metr(Ej)が2つの
    式、即ち、第1の式Metr−1(E2k)+Pr(b
    (r)=O/E2k)及び第2の式Metr−1(E2
    k+1)+Pr(b(r)=O/E2k+1)のうちの
    大きい方の値をとるような条件付き確率を設定するオペ
    レータを含むことを特徴とするプロセッサを含むビタビ
    アルゴリズム処理装置。
  2. 【請求項2】  前記オペレータが、j<2n−1のと
    きに前記入力値から、状態Ejのランクrの最大メトリ
    ックMetr(Ej)及び対応する(r−n)番目のビ
    ットだけでなく、状態Ej+aのランクrの最大メトリ
    ックMetr(Ej+a)〔但し、aは2n−1〕及び
    対応する(r−n)ビットを設定し、Metr(Ej+
    a)が2つの式、即ち第1の式Metr−1(E2j)
    −Pr(b(r)=O/E2j)及び第2の式Metr
    −1(E2j+1)−Pr(b(r)=O/E2j+1
    )のうちの大きい方の値をとることを特徴とする請求項
    1に記載のプロセッサを含むビタビアルゴリズム処理装
    置。
  3. 【請求項3】  前記オペレータが少なくとも1つのデ
    ータバス及び1つの制御バスを介してプロセッサに接続
    されており、オペレータが4つの入力レジスタを含み、
    各レジスタの入力は前記データバスの1つに接続されて
    おり、第1レジスタはMetr−1(E2j)の値を受
    容し、第2レジスタはPr(b(i)=O/E2j)の
    値を受容し、第3レジスタはMetr−1(E2j+1
    )の値を受容し、第4レジスタはPr(b(i)=O/
    E2j+1)の値を受容し、オペレータがまた、制御信
    号に応じて最初の2つの入力レジスタ及び最後の2つの
    入力レジスタの内容の和または差の値を第1及び第2の
    結果として夫々生成する第1及び第2の計算回路を含み
    、オペレータはまた、第1の結果が第2の結果よりも小
    さいときに値1、逆の場合に値0の出力信号を送出する
    比較器と、比較器によって制御されており値が大きいほ
    うの結果を出力信号として発生するマルチプレクサとを
    含み、オペレータが更に3つの出力レジスタを含み、各
    レジスタの出力はデータバスの1つに接続され、第1及
    び第2のレジスタはマルチプレクサの出力信号を受信し
    、値Metr(Ej)及びMetr(Ej+a)を夫々
    記憶し、第3レジスタは上記メトリックに対応するシー
    ケンスの(r−n)番目のビットから成る比較器の出力
    信号を受信し、オペレータが更に、制御バスにプロセッ
    サによってアドレスされた情報の関数として種々の素子
    を制御する制御モジュールを含むことを特徴とする請求
    項2に記載のプロセッサを含むビタビアルゴリズム処理
    装置。
  4. 【請求項4】  前記第3出力レジスタが更に、2n個
    の最大メトリックに対応するすべてのシーケンスの(r
    −n)番目のビットを所定のランクに記憶するように設
    計されていることを特徴とする請求項3に記載のプロセ
    ッサを含むビタビアルゴリズム処理装置。
  5. 【請求項5】  前記プロセッサが2つのデータバスを
    含み、前記第1及び第3の入力レジスタの入力が第1デ
    ータバスに接続され、前記第2及び第4の入力レジスタ
    の入力が第2データバスに接続され、前記第1及び第2
    の出力レジスタの出力が異なるデータバスに夫々接続さ
    れていることを特徴とする請求項3または4に記載のプ
    ロセッサを含むビタビアルゴリズム処理装置。
  6. 【請求項6】  前記オペレータが、状態E2k及びE
    2k+1に関して、これらの状態に対応付けされたシー
    ケンスのr番目のビットが、該r番目のビットに結合さ
    れた前記伝送されたシーケンスのビット重みと状態E2
    k、E2k+1に対応付けされた数kと前記伝送オペレ
    ーションを定義する関係との関数として決められた所定
    の状態をもつような条件付け確率を設定する補助的手段
    を含むことを特徴とする請求項2に記載のプロセッサを
    含むビタビアルゴリズム処理装置。
  7. 【請求項7】  前記オペレータが少なくとも1つのデ
    ータバス及び制御バスを介してプロセッサに接続されて
    おり、オペレータが、データバスの1つに接続された入
    力を夫々有し且つ前記重みの1つを夫々記憶する転送レ
    ジスタと、転送レジスタの出力に接続され、1つの状態
    を識別する値jにアクセスを有し、前記条件付き確率を
    生成するために前記伝送オペレーションを定義する関係
    を設定するワイヤード算術演算ユニットとを含み、オペ
    レータが4つの入力レジスタを含み、前記データバスの
    1つに接続された入力を有する第1の入力レジスタは、
    値Metr−1(E2j)を受容し、第2レジスタは算
    術演算装置から供給された値Pr(b(r)=O/E2
    j)を記憶し、前記データバスの1つに接続された入力
    を有する第3レジスタは値Metr−1(E2j+1)
    を受容し、第4レジスタは算術演算装置から供給された
    値Pr(b(r)=O/E2j+1)を記憶し、オペレ
    ータはまた、制御信号に応じて、最初の2つの入力レジ
    スタ及び最後の2つの入力レジスタの内容の和または差
    の値を第1及び第2の結果として夫々生成する第1及び
    第2の計算回路を含み、オペレータは、前記第1の結果
    が前記第2の結果よりも小さいときに値1、逆の場合に
    値0の出力信号を送出する比較器と、前記比較器によっ
    て制御され大きいほうの値を有する前記結果を出力信号
    として生成するマルチプレクサとを含み、オペレータは
    更に3つの出力レジスタを含み、その出力の各々は前記
    データバスの1つに接続され、第1及び第2の出力レジ
    スタは、前記マルチプレクサの出力信号を受信し、値M
    etr(Ej)及びMetr(Ej+a)を夫々記憶し
    、第3出力レジスタはこれらのメトリックに対応するシ
    ーケンスの(r−n)番目のビットから成る前記比較器
    の出力信号を受信し、且つ、オペレータが、前記制御バ
    スにプロセッサによってアドレスされた情報の関数とし
    て種々の素子を制御する制御モジュールを含むことを特
    徴とする請求項6に記載のプロセッサを含むビタビアル
    ゴリズム処理装置。
  8. 【請求項8】  前記第3出力レジスタが更に、2n個
    の最大メトリックに対応するすべてのシーケンスの(r
    −n)番目のビットを所定のランクに記憶することを想
    定していることを特徴とする請求項7に記載のプロセッ
    サを含むビタビアルゴリズム処理装置。
  9. 【請求項9】  前記プロセッサが2つのデータバスを
    含み、前記転送レジスタの入力が前記第1及び第2のデ
    ータバスに分配されており、前記第1及び第3の入力レ
    ジスタの入力の各々が異なるデータバスに接続され、前
    記第1及び第2の出力レジスタの出力の各々が異なるデ
    ータバスに接続されていることを特徴とする請求項7ま
    たは8に記載のプロセッサを含むビタビアルゴリズム処
    理装置。
  10. 【請求項10】  前記オペレータのいくつかの素子が
    前記プロセッサに組み込まれていることを特徴とする請
    求項1から9のいずれか一項に記載のプロセッサを含む
    ビタビアルゴリズム処理装置。
  11. 【請求項11】  前記伝送オペレーションが畳込み符
    号化であり、前記伝送されたシーケンスの復号を実行す
    ることを特徴とする請求項1から10のいずれか一項に
    記載のプロセッサを含むビタビアルゴリズム処理装置。
  12. 【請求項12】  前記伝送オペレーションが前記伝送
    されたシーケンスへのインターシンボル干渉の導入であ
    り、該シーケンスの等化を実行することを特徴とする請
    求項1から10のいずれか一項に記載のプロセッサを含
    むビタビアルゴリズム処理装置。
JP3300819A 1990-11-15 1991-11-15 ビタビアルゴリズム処理装置 Expired - Fee Related JP2524924B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9014230A FR2669445B1 (fr) 1990-11-15 1990-11-15 Dispositif prevu pour le traitement de l'algorithme de viterbi comprenant un processeur et un operateur specialise.
FR9014230 1990-11-15
SG92994A SG92994G (en) 1990-11-15 1994-07-12 Device for the processing of the viterbi algorithm comprising a processor and a specialized unit

Publications (2)

Publication Number Publication Date
JPH04290315A true JPH04290315A (ja) 1992-10-14
JP2524924B2 JP2524924B2 (ja) 1996-08-14

Family

ID=26228335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3300819A Expired - Fee Related JP2524924B2 (ja) 1990-11-15 1991-11-15 ビタビアルゴリズム処理装置

Country Status (14)

Country Link
US (1) US5331664A (ja)
EP (1) EP0485921B1 (ja)
JP (1) JP2524924B2 (ja)
AT (1) ATE91206T1 (ja)
AU (1) AU634676B2 (ja)
CA (1) CA2055575C (ja)
DE (1) DE69100150T2 (ja)
DK (1) DK0485921T3 (ja)
ES (1) ES2043418T3 (ja)
FI (1) FI105429B (ja)
FR (1) FR2669445B1 (ja)
HK (1) HK85794A (ja)
NZ (2) NZ248064A (ja)
SG (1) SG92994G (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4224214C2 (de) * 1992-07-22 1995-02-09 Deutsche Forsch Luft Raumfahrt Verfahren zur quellengesteuerten Kanaldecodierung durch Erweiterung des Viterbi-Algorithmus
US5513220A (en) * 1993-11-16 1996-04-30 At&T Corp. Digital receiver with minimum cost index register
US5465275A (en) * 1993-11-16 1995-11-07 At&T Ipm Corp. Efficient utilization of present state/next state registers
TW243568B (en) * 1993-11-16 1995-03-21 At & T Corp Digital signal processor with an embedded viterbi co-processor
US5454014A (en) * 1993-11-16 1995-09-26 At&T Corp. Digital signal processor
US5432804A (en) * 1993-11-16 1995-07-11 At&T Corp. Digital processor and viterbi decoder having shared memory
US5539757A (en) * 1993-12-22 1996-07-23 At&T Corp. Error correction systems with modified Viterbi decoding
FR2718865B1 (fr) * 1994-04-15 1996-07-19 Texas Instruments France Procédé et dispositif à processeur de signaux numériques pour la mise en Óoeuvre d'un algorithme de Viterbi.
JP3711290B2 (ja) * 1994-07-04 2005-11-02 沖電気工業株式会社 ディジタル演算回路
DE19511015A1 (de) * 1995-03-25 1996-09-26 Sel Alcatel Ag Schaltungsvorrichtung und damit ausgestattete Viterbi-Dekodiereinrichtung für einen Nachrichtenempfänger
US5742621A (en) * 1995-11-02 1998-04-21 Motorola Inc. Method for implementing an add-compare-select butterfly operation in a data processing system and instruction therefor
US5964825A (en) * 1996-02-09 1999-10-12 Texas Instruments Incorporated Manipulation of boolean values and conditional operation in a microprocessor
US6374346B1 (en) 1997-01-24 2002-04-16 Texas Instruments Incorporated Processor with conditional execution of every instruction
ATE323341T1 (de) * 2001-06-21 2006-04-15 Cit Alcatel Log-map dekodierung
US7116732B2 (en) * 2001-06-21 2006-10-03 Alcatel Method and apparatus for decoding a bit sequence
US6848074B2 (en) * 2001-06-21 2005-01-25 Arc International Method and apparatus for implementing a single cycle operation in a data processing system
US6718504B1 (en) 2002-06-05 2004-04-06 Arc International Method and apparatus for implementing a data processor adapted for turbo decoding

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8327084D0 (en) * 1983-10-11 1983-11-09 Gordon J Error correction decoder apparatus
JPS60180222A (ja) * 1984-02-27 1985-09-14 Nec Corp 符号誤り訂正装置
US4583078A (en) * 1984-11-13 1986-04-15 Communications Satellite Corporation Serial Viterbi decoder
FR2585906B1 (fr) * 1985-08-02 1987-09-25 Battail Gerard Procede de decodage d'un code convolutif et decodeur correspondant

Also Published As

Publication number Publication date
DE69100150D1 (de) 1993-08-05
ES2043418T3 (es) 1993-12-16
NZ240522A (en) 1994-04-27
EP0485921A1 (fr) 1992-05-20
AU634676B2 (en) 1993-02-25
NZ248064A (en) 1994-04-27
FI915365A (fi) 1992-05-16
DE69100150T2 (de) 1993-10-07
CA2055575C (fr) 1995-10-10
AU8707191A (en) 1992-06-11
US5331664A (en) 1994-07-19
SG92994G (en) 1994-10-28
HK85794A (en) 1994-08-26
FR2669445A1 (fr) 1992-05-22
DK0485921T3 (da) 1993-11-29
FI915365A0 (fi) 1991-11-13
FI105429B (fi) 2000-08-15
FR2669445B1 (fr) 1993-01-08
EP0485921B1 (fr) 1993-06-30
CA2055575A1 (fr) 1992-05-16
JP2524924B2 (ja) 1996-08-14
ATE91206T1 (de) 1993-07-15

Similar Documents

Publication Publication Date Title
JPH04290315A (ja) ビタビアルゴリズム処理装置
US5502735A (en) Maximum likelihood sequence detector
US5375129A (en) Maximum likelihood sequence detector
CA1219374A (en) Error correction apparatus using a viterbi decoder
US5715470A (en) Arithmetic apparatus for carrying out viterbi decoding at a high speed
US5027374A (en) Bit serial Viterbi decoder add/compare/select array
JPH10107651A (ja) ビタビ復号装置
US6257756B1 (en) Apparatus and method for implementing viterbi butterflies
US5742621A (en) Method for implementing an add-compare-select butterfly operation in a data processing system and instruction therefor
KR20020048975A (ko) 비터비 디코더 용 고속 acs 유닛
CN100499379C (zh) 一种卷积码译码方法
EP0467522A2 (en) Maximum likelihood sequence detector
EP1115209A1 (en) Apparatus and method for performing parallel siso decoding
US5964825A (en) Manipulation of boolean values and conditional operation in a microprocessor
US8694878B2 (en) Processor instructions to accelerate Viterbi decoding
KR100304222B1 (ko) 프로세서를 구비하여 비터비 알고리즘을 처리하는 장치
RU2222105C2 (ru) Способ и устройство для определения состояния максимального правдоподобия в декодирующем устройстве
EP1417768B1 (en) High performance turbo and viterbi channel decoding in digital signal processors
US7852960B2 (en) Method of computing path metrics in a high-speed Viterbi detector and related apparatus thereof
EP1058392A1 (en) Method for implementing a plurality of add-compare-select butterfly operations in parallel, in a data processing system
KR19990076528A (ko) 비터비 알고리즘 처리를 위한 가산 비교 선택 고속화 장치 및방법
US8943392B2 (en) Viterbi butterfly operations
CN117200809B (zh) 用于纠两个误码的rs码的低功耗钱搜索和错误估值电路
JP2904271B2 (ja) ビタビ復号器用パスメモリユニットおよび復号方法
Said et al. Realtime implementation of the Viterbi decoding algorithm on a high-performance microprocessor

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

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350