JPH05327524A - ビット・シリアル・ヴィタービ(viterbi)デコーダの加算/比較/選択アレイ - Google Patents

ビット・シリアル・ヴィタービ(viterbi)デコーダの加算/比較/選択アレイ

Info

Publication number
JPH05327524A
JPH05327524A JP3084370A JP8437091A JPH05327524A JP H05327524 A JPH05327524 A JP H05327524A JP 3084370 A JP3084370 A JP 3084370A JP 8437091 A JP8437091 A JP 8437091A JP H05327524 A JPH05327524 A JP H05327524A
Authority
JP
Japan
Prior art keywords
state
acs
array
circuit
distance
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
JP3084370A
Other languages
English (en)
Inventor
Mark W Rossman
マ−ク・ダブリュ−・ロスマン
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.)
Motorola Solutions Inc
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Publication of JPH05327524A publication Critical patent/JPH05327524A/ja
Pending 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's

Abstract

(57)【要約】 【目的】各ユニットが加算/比較/選択(ACS)機能
を実行する回路ユニットのアレイを有するデジタル通信
システム、ヴィタービ復号機能を実行する改良さた方法
および高い効率と高いデータ処理量を有するACS回路
が開示される。 【構成】アレイ18は、ACS回路(20ないし23)
によって構成され、これらの回路は並列に動作しデジタ
ル通信システムのエラー訂正用のコンボルーションコー
ド化を実行することに必要な動作を実行する。このAC
S回路(20ないし23)は通常ヴィタービ・デコーダ
に使用される。アレイの各ACS回路は、単一ビット幅
の加算器によってシリアルに動作し、これらの加算器は
分岐距離の加算、累算距離の比較、ステート・マシン中
の各状態に対する最小累算距離の選択および各状態に対
する経路履歴の保持を実行するために機能し、その結
果、ACS回路(20ないし23)間の相互接続は最小
となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、デジタル通信に関し、
さらに詳しくは、エラー訂正技術に関する。
【従来の技術および解決しようとする課題】デジタル通
信の主要な目的は、エラーのない形態でデータを送信す
ることである。送信中に、データは雑音を受け易く、こ
のことによって受信されたデータにエラーを生じる可能
性がある。データ送信の信頼性を改善するために、通常
種々のエラー訂正技術の1つが使用される。周知のエラ
ー訂正技術は、コンボルーション・コード法( con
volutional coding) である。この
技術は、効果的なエラー訂正能力を提供するが、複雑な
復号技術を必要とする。
【0002】コンボルーション・コードを復号するため
の最適の解決法はアンドリュー・ヴィタービの功績であ
り、これはヴィタービ・アルゴリズム(VA)としてよ
く知られている。このヴィタービ・アルゴリズムは、メ
モリ・レス雑音(memory−less nois
e) 中で観察される、時間がディスクリートの有限状
態でのマルコフ決定過程の状態シーケンスを評価する問
題に対する帰納的解法である。ヴィタービ・デコード
は、コンボルーション・コードに限定されるものではな
く、チャンネル等化器のような他のシーケンス評価問題
にも適用できる。コンボルーション・コードの復号は、
個々のビット対ビット基準に基づくのではなく、受信し
たビットのシーケンスに基づいて確立的決定を行う必要
がある。ヴィタービ・デコードの基本動作は、雑音が存
在する状態で、格子配列を通過する経路を選択すること
であり、これはコンボルーション・エンコーダによって
発生された最も可能性の高いシーケンスを表わす。ヴィ
タービ・アルゴリズムは、コンボルーション・コードの
循環特性を使用してこの問題に対する効果的な解答を提
供するものである。各々のシンボル間隔で、このアルゴ
リズムは、各分岐に対して確率の距離(metric)
、すなわち尺度を発生する。各々の状態に対する最良
の経路は、その状態に入る全ての経路から累算距離を調
べることと最良の距離を有する1つを選択することによ
って決定される。もう1つの経路または複数の経路は廃
棄される。したがって、エラーを有する経路はより小さ
い距離を累算し、したがってエンコーダによって発生さ
れる可能性が最も高いシーケンスを表わす経路のみを残
して廃棄される。このヴィタービ・アルゴリズムを実行
するには、複数の加算/比較/選択(ACS)動作を行
ない、各々の状態に対する最良経路を演算しなければな
らない。このヴィタービ・アルゴリズムを実行する今日
の中央処理アーキテクチャは、シーケンシャル処理を使
用してこのACS動作を実行する。CPU手法では、複
数のシーケンシャルなメモリのフェッチ,加算,記憶お
よび比較動作が実行されなければならない。このシーケ
ンス動作は、シンボルすなわちデータ・ビット当たり必
要な命令の数が多いのでデータの処理量を制限する。こ
の問題に対する代替は、ワード幅が完全並列または半並
列の処理を行うアーキテクチャを使用することである。
例えば、必要な各々の状態に対してハードウエア回路を
実行することによって、ACS動作をパラレルに行う。
分岐および経路の距離は複合ビット値として表わされる
ので、各々のACS回路は複合ビットの算術演算を行わ
なければならない。このパラレル動作アーキテクチャを
実行するには広い領域のシリコンを必要とするが、その
理由は、(1)ワード幅で処理を実行するには、各状態
に対して加算器、比較器のような多数の複数の部品が必
要であり、(2)複合ビット・データ・バスを使用する
必要があるので、相互接続が膨大になるからである。
【0003】したがって、本発明の目的は、改良された
ビット・シリアル・ヴィタービ・デコーダ・アレイを提
供することである。
【0004】本発明の他の目的は、デジタル通信システ
ムでヴィタービ復号機能を実行する改良された方法およ
びACS回路を提供することである。
【0005】
【課題を解決するための手段】本発明の上述の目的およ
び他の目的を実行するために、1つの形態として、各々
のユニットが加算/比較/選択(ACS)機能を実行す
る回路ユニットのアレイを有するデジタル通信システム
が提供される。このアレイは、所定のコンボルーション
・アルゴリズムにしたがって所定のコード格子配列図を
実行する。このアレイは、相互に接続された複数の回路
ユニットによって構成され、この複数とは所定のコード
格子配列図に存在する状態の数と等しい数である。これ
らの回路ユニットのそれぞれは、少なくとも2つの入力
および1つの出力を有する。これらユニットは全て1ビ
ット幅の導体によって相互に接続され、これらのユニッ
トおよび同時に動作している全てのユニットの間にデー
タをシリアルに送信する。これらの回路ユニットのそれ
ぞれは、所定のコード格子配列図の状態に対してACS
機能を実行すると共にまた経路の履歴を保持する。
【0006】
【実施例】図1は、デジタル通信システムの2メモリ、
4状態ステート・マシンに対する周知のコンボルーショ
ン・コード格子配列図を示す。各々の状態は縦軸の円す
なわち状態接続点によって表わされ、時間は水平軸で表
わされる。図1の格子配列図は、4状態マシンに対して
存在する可能性のある多くの可能な図の1つにすぎな
い。図示した形態では、分岐はある時点から連続する時
点への遷移を表わす。実線の分岐は、論理ゼロの値を有
するシンボル・ビットの受信を表わし、破線の分岐は論
理1の値を有するシンボル・ビットの受信を表わす。こ
の例では、受信した入力シンボルの値によって、いずれ
かの特定の時点での4つの状態のいずれか1つから、2
つの所定の状態の1つへの遷移が可能となる。例えば、
最初にステート・マシンが状態2であるならば、次の時
点で、もし入力データがそれぞれ論理ゼロまたは論理1
ならば、結果としてそれぞれ状態ゼロまたは状態1のい
ずれかに遷移が行われる。格子配列図の各経路すなわち
分岐は、複合ビット2進数値によって表わされる固有の
値すなわち距離を有する。各々の分岐の距離は、受信し
たシンボルと格子配列図の対応する分岐との間を何等か
の形態で比較することによって決定される距離の尺度と
して定義される。この距離の測定動作は本発明とは関係
がなく、既存の文献で十分紹介されているのでこれ以上
説明は行わない。以下の議論の目的のために、用語「シ
ンボル」は通信システムの送信機のエンコーダと受信機
のデコーダとの間で通信される情報を表すことをよく理
解するべきである。これに対して、用語「データ」は、
ここでは通信システムの受信機のACS回路内およびA
CS回路の間で通信される情報を表す。
【0007】ヴィタービ・アルゴリズム・デコーダの基
本動作は、雑音が存在する状態で、コンボルーション・
エンコーダ(図示せず)によって発生された経路の履歴
の最も可能性の高いシーケンスを表わす格子配列図を通
過する経路を選択することである。このシーケンスは、
デジタル通信受信機で受信されたデータに応答してある
時間間隔に渡って状態遷移を実行するためにとられる経
路を表わす。状態距離が受信されたシンボル・シーケン
スと与えられた状態に導く格子配列図の特定の経路との
間の「距離」の測定を累算したものである場合、ヴィタ
ービ・デコーダは、最も低い状態距離を累算する格子配
列図を通過する経路を選択することによって、最も可能
性の高い経路を選択する。ヴィタービ・デコーダは、格
子配列の各々の状態に対する経路距離を演算し、最低の
距離を有する経路を選択することによってこの決定を行
う。この動作は、受信されたシンボルそれぞれに対して
繰り返される。各々の状態に対する経路距離は、各々の
分岐距離をそのそれぞれのこれまでの状態距離に加算
し、最低の累算距離を有する経路を選択することによっ
て計算される。この動作は、この明細書では通常「加算
−比較−選択」すなわちACSと呼ぶ。ACSユニット
の他に、従来のヴィタービ・アルゴリズム・デコーダは
遷移距離を演算するユニットおよびこれまでの経路情報
を記憶するサヴァイバ・メモリ(survivor m
emory)部によって構成される。
【0008】図2は、ヴィタービ・アルゴリズムに関連
する加算−比較−選択機能を実行する従来のACSユニ
ット10を示す。図示の形態では、ACSユニット10
は図示された第2期間中における図1の状態ゼロに対し
て機能している。加算器12は、状態ゼロからこれまで
累算された距離を受ける第1入力、および状態ゼロの第
1状態接続点と第2状態接続点との間の状態ゼロから状
態ゼロへの分岐の距離値を受ける第2入力を有する。加
算器12の出力は、比較器14の第1入力とマルチプレ
クサ15の第1入力に接続される。加算器16は、状態
2からこれまで累算された距離を受ける第1入力、およ
び状態2の第1状態接続点と状態ゼロの第2状態接続点
との間の状態2から状態ゼロへの分岐の距離値を受ける
第2入力を有する。加算器16の出力は、比較器14の
第2入力およびマルチプレクサ15の第2入力に接続さ
れる。比較器14の出力は、マルチプレクサ15の制御
入力に接続される。マルチプレクサ15の出力は状態ゼ
ロの第2状態接続点で状態ゼロに対する新しい距離を与
える。加算器12,16は、それぞれの加算動作を実行
し、比較器14はマルチプレクサ15を制御して生じた
2つの合計のうち最小のものを出力する。
【0009】ユニット10によって実行される加算−比
較−選択動作は、受信された全てのシンボルすなわちデ
ータ値に対する各々の状態に適用しなければならない。
ACS演算は比較的簡単ではあるが、1つの命令処理装
置に対する命令の数は非常に多く、データの処理量を制
限する。したがって、ACS演算を並列で実行すること
によって、最適の復号性能が得られる。
【0010】図3は、本発明によるACSアレイ18を
示す。アレイ18は複数のACS回路20ないし23に
よって構成され、ここで各ACS回路はマルコフ過程の
所定の状態に対応する。各々のACS回路は2つの入力
と1つの出力を有する。ACS回路20は、ACS回路
22の出力に接続された第1入力、およびACS回路2
0の出力に接続された第2入力を有する。ACS回路2
0の出力は、ACS回路21の第1入力に接続される。
ACS回路21の第2入力は、ACS回路22の出力に
接続される。ACS回路21の出力は、ACS回路2
2,23の両方の第1入力に接続される。ACS回路2
3の出力は、ACS回路22,23の両方の第2入力に
接続される。
【0011】図示の形態では、ACSアレイ18は、ビ
ット・シリアルなACS回路のアレイであり、図1の格
子配列図の各々の状態に対するものである。各々の状態
に対してACS回路が存在するので、マルコフ過程の全
ての状態に対してACS動作が同時に実行される。しか
し、ビット・シリアルの相互接続が存在し、データはア
レイ18中をシリアルに転送されるので、アレイ18中
の相互接続は最小である。ACS回路20ないし23の
相互接続は、図1の格子配列図から得られ、図示の格子
配列図に対して累算された状態距離を実行する。例え
ば、もし図1の格子配列図の第2時間間隔の状態ゼロに
対する状態接続点がACS回路20と比較されるなら
ば、ACS回路20は第2状態(ACS回路22)から
の累算された距離を受け、状態ゼロ(ACS回路20)
からも累算された距離を受けることに留意できる。アレ
イ18と図1の格子配列図との直接の相関は、さらに容
易に実証できる。
【0012】アレイ18のACS回路はビット・シリア
ル回路として実行されるので、各々のACS回路を実行
するには、比較的少ない回路しか必要としない。コンボ
ルーション・コードの大部分の実行には4状態よりかな
り多い状態を必要とするが、多重ビット幅のACS回路
を使用する場合と異なり、並列動作を実行するために必
要な回路全体の領域はかなり低減される。より多くの状
態を実行するにしたがって、従来の周知のシーケンシャ
ル手法と異なり本発明によって実現される速度節約もま
た向上する。
【0013】図4は、ACS回路30であり、ACS回
路20のような図3のACS回路のいずれにも使用する
ことができる。ACS回路30は、一般的に演算部31
および経路履歴部32によって構成される。演算部31
の内部では、1ビット全加算器36が、図3に示す「入
力」端子のうちの1つと等価な第1状態累算距離値を受
ける第1入力を有する。第1状態分岐距離は全加算器3
6の第2入力に接続される。「CO」という名称の桁上
げ出力端子は、フリップフロップ38のデータ入力に接
続される。フリップフロップ38の出力は、フリップフ
ロップ36の「CI」という名称の桁上げ入力端子に接
続される。フリップフロップ38は、またクロック入力
とリセット入力を有する。全加算器36の出力はインバ
ータ40の入力に接続され、このインバータ40は1ビ
ット全加算器42の第1入力に接続された出力を有す
る。全加算器42の桁上げ出力はフリップフロップ44
のデータ入力に接続される。フリップフロップ44の出
力は、全加算器42の桁上げ入力に接続される。フリッ
プフロップ44は、またプリセット入力とクロック入力
を有する。1ビット全加算器46は、第2状態累算距離
値を受ける第1入力を有し、これは図3に示す第2「入
力」端子と等価である。第2状態分岐距離は全加算器4
6の第2入力に接続される。全加算器46の出力は全加
算器42の第2入力に接続される。全加算器46の桁上
げ出力はフリップフロップ48のデータ入力に接続され
る。フリップフロップ48の出力は、全加算器46の桁
上げ入力に接続される。クロック信号はフリップフロッ
プ48のクロック入力に接続される。全加算器42の出
力は、ラッチ50の入力に接続される。制御信号Cはラ
ッチ50の起動入力に接続される。ラッチ50の出力
は、マルチプレクサ52の制御入力に接続される。マル
チプレクサ52の出力は、図3に示すACS回路のいず
れか1つの「出力」端子と等価である。全加算器36の
出力は、また1ビット全加算器54の第1入力に接続さ
れる。正規化信号は全加算器54の第2入力に接続され
る。全加算器54の桁上げ出力はフリップフロップ56
のデータ入力に接続される。フリップフロップ56の出
力は、全加算器54の桁上げ入力に接続される。フリッ
プフロップ56は、またクロック信号を受けるクロック
入力を有する。起動制御信号は距離レジスタ58の「E
n」という名称の起動入力に接続される。距離レジスタ
58の第1出力は、マルチプレクサ52の第1入力に接
続される。全加算器46の出力は、また1ビット前加算
器60の第1入力に接続される。正規化信号は、また全
加算器60の第2入力に接続される。全加算器60の桁
上げ出力は、フリップフロップ62のデータ入力に接続
される。フリップフロップ62の出力は、全加算器60
の桁上げ入力に接続される。クリア信号は、フリップフ
ロップ38,48,56,62のリセット入力並びにフ
リップフロップ44のプリセット入力に接続される。全
加算器60の出力は、距離レジスタ64の第1入力に接
続される。起動制御信号は、また距離レジスタ64の第
2入力に接続される。それぞれの距離レジスタ58,6
4および経路履歴レジスタ84は、シリアル入力/シリ
アル出力のシフト・レジスタである。距離レジスタ64
の第1出力は、マルチプレクサ52の第2入力に接続さ
れる。距離レジスタ58の第2出力は、Nチャンネル・
トランジスタ70のゲートに接続され、距離レジスタ6
4の第2出力は、Nチャンネル・トランジスタ72のゲ
ートに接続される。トランジスタ70,72は、それぞ
れ互いに接続されたドレインを有し、オーバーフロー出
力信号を与える。トランジスタ70,72は、またそれ
ぞれ互いに接続されると共にNチャンネル・トランジス
タ74のドレインに接続されたソースを有する。トラン
ジスタ74のゲートは、制御信号Cに接続され、トラン
ジスタ74のソースはアース電位に接続される。
【0014】経路履歴部32で、マルチプレクサ80
は、第1状態経路値に接続された第1入力を有する。第
2状態経路値はマルチプレクサ80の第2入力に接続さ
れる。マルチプレクサ80の出力は、マルチプレクサ8
2の第1入力に接続される。ラッチ50の出力は、マル
チプレクサ80の制御入力に接続される。状態固有デジ
タル値はマルチプレクサ82の第2入力に接続される。
「A」という名称の制御信号は、マルチプレクサ82の
制御入力に接続される。マルチプレクサ82の出力は、
経路履歴レジスタ84の第1入力に接続される。「B」
という名称の制御信号は、経路履歴レジスタ84の第2
入力に接続される。経路履歴レジスタ84の出力は、所
定のACS回路によって表わされる格子配列図の状態の
1つに至るデコードされたシンボルのシリアルな履歴を
与える。
【0015】動作上、加算器36はフリップフロップ3
8と共に、および加算器46はフリップフロップ48と
共に、ACS演算の加算部分を実行するために機能す
る。加算器42、インバータ40およびフリップフロッ
プ44は、ACS演算の比較部分を実行するために機能
する。ラッチ50によって制御されるマルチプレクサ5
2は、ACS演算の選択部分を実行するために機能す
る。先ず、クリア信号がフリップフロップ38,48,
56,62のそれぞれを論理ゼロ出力にリセットし、フ
リップフロップ44を論理1出力にプリセットする。全
加算器36,46は、それぞれ所定の加算するべき距離
値を受ける。図示の形態では、加算器42はインバータ
40およびフリップフロップ44と共に減算回路として
機能する。加算器36,46は、各々の分岐の新しい累
算した距離を表わす合計を形成するので、これらの合計
はそれぞれレジスタ58,64に記憶されマルチプレク
サ58に結合される。同時に差が形成され、サイン・ビ
ットがラッチ50に記憶される。この差は、第1状態か
らの累算した距離と第2状態からの累算した距離との間
の比較を表わす。比較のサイン・ビットの値は、マルチ
プレクサ52によって使用されどの経路を選択するべき
か(すなわち、いずれの合計を出力するか)決定する。
ACS回路30はクロック信号に応答して同時に動作す
る。
【0016】距離レジスタ58,64は、記憶容量が制
限されているので、正規化を使用して各々の距離レジス
タを所定の範囲内の値に保持する。通常負である所定の
正規化数を全加算器36の出力に加算することによっ
て、全加算器54は、定義した範囲内の正規化値を距離
レジスタ58に与える。図示した形態では、この正規化
機能は距離レジスタ58,64のような全てのACS回
路のそれぞれの距離レジスタに負の定数を加算すること
によって実行される。この正規化機能は距離レジスタを
範囲内に保持するために機能する。
【0017】もし距離レジスタ58または64のいずれ
かが正方向にオーバーフローを始めたならば、オーバー
フロー信号を発生する目的のために、飽和すなわちオー
バーフロー機能がACS回路に組み込まれる。距離レジ
スタ58の第2出力はトランジスタ70のゲートに接続
され、距離レジスタ64の第2出力はトランジスタ72
のゲートに接続され、これらは各々それぞれのレジスタ
が正にオーバーフローを始めることを表わす飽和信号を
発生する。オーバーフローが正に始まるまたはオーバー
フローした場合、飽和信号が現れトランジスタ70また
は72の1つを導通させる。トランジスタ70,72
は、論理ORとして機能する。各々の演算周期の所定の
部分の期間中、制御信号Cが現れトランジスタ74を導
通させる。図示の形態では、制御信号Cは、ラッチ50
を負荷し同じ時間間隔の間に距離レことによって、重複
機能を実行する。各々の機能は、また独立して制御でき
ることを理解しなければならない。トランジスタ70ま
たは72いずれかが導通し、トランジスタ74が導通し
た場合、オーバーフロー出力は論理Lレベルに引き下げ
られ、距離レジスタがオーバーフローし、希望するなら
手当てが必要であることを表わす。オーバーフロー信号
が現れた場合、一般的に正規化定数が全てのACS回路
に分配される。
【0018】経路履歴部32に関して、制御信号Aはス
テート・マシン(図示せず)からの制御信号である。経
路履歴部32は、マルチプレクサ80,82および経路
履歴レジスタ84によって実行される。第1と第2経路
履歴は、前の状態接続点のデコードされた経路履歴を表
わす。制御信号Bは、経路履歴の転送をイネーブルする
ために使用される。制御信号Aは、このACS回路のデ
コードされたビット(単数または複数)を経路履歴に付
加することに使用される。制御信号Aが論理ゼロ値を有
する場合、マルチプレクサ80の出力は経路履歴レジス
タ84に渡される。制御信号Aが論理1の値を有する場
合、特定のACS回路に関連する状態への遷移を生じる
この(これらの)ビットに対応する状態固有の値がマル
チプレクサ82によって出力され、その後に使用するた
め経路履歴レジスタ84に付加される。ACS回路30
の出力は、ヴィタービ・デコーダ内で最終出力を発生す
るために使用される。この最終出力は、アレイ18のA
CS回路20ないし23の各々からの一番古いビット
(単数または複数)の多数決機能によって引き出される
か、または最小の累算距離を有するアレイ18のACS
回路の一番古いビット(単数または複数)を使用するこ
とによって引き出されるかのいずれかである。分岐距離
を異なった方法で演算する幾つかの周知の方法が存在す
ることにもまた留意しなければならない。幾つかの方法
では、最大値を有する距離を選択することによって累算
された距離を最大にすることが必要である。この機能
は、マルチプレクサ52,82の制御論理の定義を変更
するだけで、本発明によって容易に実行することが可能
である。
【0019】
【発明の効果】ヴィタービ・デコーダの各々の状態が必
要とする加算/比較/選択機能を実行するアレイに使用
するビット・シリアルACS回路が提供されたことが明
らかになった。このアレイは、全ての状態に対する新し
い距離を同時に演算し、したがって高い効率と高いデー
タ処理量を有する。ACSユニット間の同時並列動作
は、アレイの各々のACSユニット間の並列相互接続を
必要とすることなく達成される。しかし、並列動作を得
るために必要とされる回路領域を最小にするために、ア
レイの各々のACS回路に対して、シリアル単一ビット
幅のACS回路が使用される。この並列動作の結果とし
て実現されたアレイのデータ処理量が高いことによっ
て、完全にシーケンシャルな加算/比較/選択の実行と
比較して、遅いクロック速度を使用することができる。
各々のACS回路内のシリアル動作によって、全ての状
態距離に対する新しい値の演算に要する時間は、距離レ
ジスタ58,64のいずれが最も長いかの正確な関数で
ある。また、状態距離は各々のACS回路内に記憶され
るので、外部メモリやアドレス論理を必要としない。本
発明はヴィタービ・デコーダに関して説明したが、本発
明はデジタル通信システムのエラー訂正用のコンボルー
ション・コードを使用しているいずれの用途にも使用す
ることができる。
【0020】ここで本発明の原理を説明したが、この説
明は例としてのみ行われたものであり発明の範囲を限定
するものではないことを当業者は明らかに理解するべき
である。したがって、添付の請求項によって、本発明の
真の精神と範囲から逸脱することなく本発明の全ての変
形を包含することを意図する。
【図面の簡単な説明】
【図1】4状態ステート・マシンのグラフィック形式の
周知のコンボルーションコード格子配列図を示す。
【図2】図1の格子配列の状態ゼロに対する周知のAC
S回路のブロック図を示す。
【図3】本発明によるビット・シリアルACSアレイの
ブロック図を示す。
【図4】図3のアレイで使用するACS回路の部分概略
図を示す。
【符号の説明】
10 従来のACSユニット 12,16 加算器 14 比較器 15,52,80,82 マルチプレクサ 18 本発明によるACSアレイ 20,21,22,23,30 ACS回路 31 演算部 32 履歴部 36,42,46,54,60 1ビット全加算器 38,44,48,56,62 フリップフロップ 50 ラッチ 58,64 距離レジスタ 84 経路履歴レジスタ 70,72,74 Nチャンネル・トランジスタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 所定のコンボルーション・コードにした
    がってデジタル通信システムの受信器内の所定のコード
    格子配列図を実行するビット・シリアル・ヴィタービ・
    デコーダの加算/比較/選択(ACS)アレイにおい
    て、前記アレイは: 所定のコンボルーション・デコー
    ド・アルゴリズムを実行する複数の相互接続された回路
    ユニットによって構成され、前記複数とは所定のコード
    格子配列図に存在する状態の数と等しい数であり、前記
    回路ユニットの各々は少なくとも2つの入力と1つの出
    力を有し、全てのユニットは単一ビット幅の導体によっ
    て相互接続され複数のユニットおよび同時に動作してい
    る全てのユニットの間にデータをシリアルに送信し、前
    記ユニットの各々はコード格子配列図の所定の状態に対
    してACS機能を実行することを特徴とするヴィタービ
    ・デコーダ・アレイ。
  2. 【請求項2】 相互に接続された回路ユニットの各々は
    コード格子配列図の状態の所定の1つに対応し、各回路
    ユニットは:受信器によって受信されたシンボルとコー
    ド格子配列図の所定の第1分岐との間を比較し、この第
    1分岐距離をこれまで累算した第1状態距離値に加算し
    て第1合計を得ることによって決定される値を有する第
    1分岐距離を受ける第1手段であって、1ビット幅のデ
    ジタル回路によってシリアルに実行される前記第1手
    段;受信器によって受信されたシンボルとコード格子配
    列図の所定の第2分岐との間を比較し、この第2分岐距
    離をこれまで累算した第2状態距離値に加算して第2合
    計を得ることによって決定される値を有する第2分岐距
    離を受ける第2手段であって、また1ビット幅デジタル
    回路によってシリアルに実行される前記第2手段;第1
    および第2手段に結合され、第1合計と第2合計の大き
    さを比較し、いずれの合計がより大きいかを示す第3手
    段であって、また1ビット幅デジタル回路によってシリ
    アルに実行される前記第3手段;および第1,第2およ
    び第3手段に結合され、所定の状態に対する新しく演算
    された累算距離として第1合計または第2合計の1つを
    出力する第4手段;によって構成されることを特徴とす
    る請求項1記載のデジタル通信システムのヴィタービ・
    デコーダ・アレイ。
  3. 【請求項3】 所定のコンボルーション・デコード・ア
    ルゴリズムはヴィタービ・アルゴリズムであることを特
    徴とする請求項1記載のデジタル通信システムのヴィタ
    ービ・デコーダ・アレイ。
  4. 【請求項4】 各回路ユニットは:第3手段に結合され
    た第5手段であって、所定のこれまでの状態接続点の経
    路履歴を受け、前記第3手段に応答してデコードされた
    経路履歴の1つかまたは固有の状態値のいずれかを使用
    して前記回路ユニットに対応する状態に対する現在の経
    路履歴を発生し、1ビット幅デジタル回路によってシリ
    アルに実行される前記第5手段によってさらに構成され
    ることを特徴とする請求項2記載のデジタル通信システ
    ムのヴィタービ・デコーダ・アレイ。
JP3084370A 1990-03-26 1991-03-26 ビット・シリアル・ヴィタービ(viterbi)デコーダの加算/比較/選択アレイ Pending JPH05327524A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US498800 1983-05-27
US07/498,800 US5027374A (en) 1990-03-26 1990-03-26 Bit serial Viterbi decoder add/compare/select array

Publications (1)

Publication Number Publication Date
JPH05327524A true JPH05327524A (ja) 1993-12-10

Family

ID=23982555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3084370A Pending JPH05327524A (ja) 1990-03-26 1991-03-26 ビット・シリアル・ヴィタービ(viterbi)デコーダの加算/比較/選択アレイ

Country Status (4)

Country Link
US (1) US5027374A (ja)
EP (1) EP0448809A3 (ja)
JP (1) JPH05327524A (ja)
KR (1) KR910017795A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008244592A (ja) * 2007-03-26 2008-10-09 Nippon Telegr & Teleph Corp <Ntt> ビタビ復号器

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5448583A (en) * 1989-08-28 1995-09-05 Fujitsu Limited Apparatus and method using analog viterbi decoding techniques
JP2876497B2 (ja) * 1991-08-23 1999-03-31 松下電器産業株式会社 誤り訂正符復号化方法およびその装置
DE4135318C1 (ja) * 1991-10-25 1992-11-26 Siemens Ag, 8000 Muenchen, De
US5377133A (en) * 1992-04-07 1994-12-27 Digital Equipment Corporation System for enhanced implementation of add-compare-select (ACS) functions
US5349608A (en) * 1993-03-29 1994-09-20 Stanford Telecommunications, Inc. Viterbi ACS unit with renormalization
WO1996002973A1 (en) * 1993-03-29 1996-02-01 Stanford Telecommunications, Inc. Viterbi acs unit with renormalization
GB2281179B (en) * 1993-08-18 1998-03-11 Roke Manor Research Apparatus for use in equipment providing a digital radio link between a fixed and a mobile radio unit
US5412669A (en) * 1993-12-09 1995-05-02 Cirrus Logic, Inc. Add, compare and select circuit
US5717723A (en) * 1994-08-17 1998-02-10 Roke Manor Research Limited Apparatus for use in equipment providing a digital radio link between a fixed radio unit and a mobile radio unit
FR2724273B1 (fr) * 1994-09-05 1997-01-03 Sgs Thomson Microelectronics Circuit de traitement de signal pour mettre en oeuvre un algorithme de viterbi
US5621800A (en) * 1994-11-01 1997-04-15 Motorola, Inc. Integrated circuit that performs multiple communication tasks
US5659698A (en) * 1994-11-01 1997-08-19 Motorola, Inc. Method and apparatus for generating a circular buffer address in integrated circuit that performs multiple communications tasks
EP0710908A3 (en) 1994-11-01 1998-04-29 Motorola, Inc. A co-processor that performs multiple communication tasks on an integrated circuit
US5612974A (en) * 1994-11-01 1997-03-18 Motorola Inc. Convolutional encoder for use on an integrated circuit that performs multiple communication tasks
US5652903A (en) * 1994-11-01 1997-07-29 Motorola, Inc. DSP co-processor for use on an integrated circuit that performs multiple communication tasks
KR0138875B1 (ko) * 1994-12-23 1998-06-15 양승택 비터비 복호기의 가지 메트릭 모듈
US5841796A (en) * 1995-03-14 1998-11-24 Comsat Corporation Apparatus and method for calculating viterbi path metric using exponentially-weighted moving average
FR2738427B1 (fr) * 1995-08-31 1997-11-21 Sgs Thomson Microelectronics Decodeur convolutif utilisant l'algorithme de viterbi
JP3280834B2 (ja) * 1995-09-04 2002-05-13 沖電気工業株式会社 符号化通信方式における信号判定装置および受信装置ならびに信号判定方法および通信路状態推定方法
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
US6023492A (en) * 1995-11-24 2000-02-08 Telefonaktiebolaget Lm Ericsson Method and apparatus for conditionally combining bit metrics in a communication system
CN1099165C (zh) * 1996-03-18 2003-01-15 三星电子株式会社 维特比译码器
US5949820A (en) * 1996-08-01 1999-09-07 Nec Electronics Inc. Method for optimizing an equalization and receive filter
US5808573A (en) * 1996-08-01 1998-09-15 Nec Electronics Incorporated Methods and structure for sampled-data timing recovery with reduced complexity and latency
US6055619A (en) * 1997-02-07 2000-04-25 Cirrus Logic, Inc. Circuits, system, and methods for processing multiple data streams
US5914989A (en) * 1997-02-19 1999-06-22 Nec Electronics, Inc. PRML system with reduced complexity maximum likelihood detector
US5987638A (en) * 1997-04-22 1999-11-16 Lsi Logic Corporation Apparatus and method for computing the result of a viterbi equation in a single cycle
JP3338374B2 (ja) * 1997-06-30 2002-10-28 松下電器産業株式会社 演算処理方法および装置
US6257756B1 (en) 1997-07-16 2001-07-10 Motorola, Inc. Apparatus and method for implementing viterbi butterflies
KR100437818B1 (ko) * 1998-03-05 2004-07-16 주식회사 하이닉스반도체 디코더의acs회로
EP0945989A1 (en) * 1998-03-12 1999-09-29 Hitachi Micro Systems Europe Limited Viterbi decoding
US6148431A (en) * 1998-03-26 2000-11-14 Lucent Technologies Inc. Add compare select circuit and method implementing a viterbi algorithm
US6477680B2 (en) * 1998-06-26 2002-11-05 Agere Systems Inc. Area-efficient convolutional decoder
US6219389B1 (en) * 1998-06-30 2001-04-17 Motorola, Inc. Receiver implemented decoding method of selectively processing channel state metrics to minimize power consumption and reduce computational complexity
JP2000138595A (ja) * 1998-10-29 2000-05-16 Nec Corp ビタビ復号器
WO2001050240A2 (de) * 1999-12-29 2001-07-12 Systemonic Ag Anordnung und verfahren zur steuerung des datenflusses
AUPR679401A0 (en) * 2001-08-03 2001-08-30 Lucent Technologies Inc. High speed add-compare-select processing
US7161994B2 (en) * 2001-09-17 2007-01-09 Digeo, Inc. System and method for shared decoding
US7167531B2 (en) 2001-09-17 2007-01-23 Digeo, Inc. System and method for shared decoding using a data replay scheme
US7073118B2 (en) * 2001-09-17 2006-07-04 Digeo, Inc. Apparatus and method for saturating decoder values
US7382838B2 (en) * 2001-09-17 2008-06-03 Digeo, Inc. Frequency drift compensation across multiple broadband signals in a digital receiver system
US7069284B2 (en) 2001-09-17 2006-06-27 Digeo, Inc. Apparatus and method for correcting signal imbalances using complex multiplication
US7131054B2 (en) * 2001-09-17 2006-10-31 Digeo, Inc. Apparatus and method for efficient decoder normalization
US7251294B2 (en) * 2001-09-17 2007-07-31 Digeo, Inc. System and method for concurrently demodulating and decoding multiple data streams
FI20021656A0 (fi) * 2002-09-16 2002-09-16 Nokia Corp Menetelmä ja järjestely dekoodauksen suorittamiseksi
US7430704B2 (en) * 2003-12-19 2008-09-30 Stmicroelectronics S.R.L. Trellis-based detection process and system
US20070006058A1 (en) * 2005-06-30 2007-01-04 Seagate Technology Llc Path metric computation unit for use in a data detector
KR100787214B1 (ko) * 2005-08-25 2007-12-21 삼성전자주식회사 아날로그 비터비 디코더
US8392174B2 (en) * 2006-08-07 2013-03-05 International Characters, Inc. Method and apparatus for lexical analysis using parallel bit streams
US8718202B2 (en) * 2008-08-11 2014-05-06 Texas Instruments Incorporated Reduced complexity viterbi decoding
CN101494464B (zh) * 2009-03-12 2011-10-05 华为技术有限公司 一种译码方法、装置及电子设备
TWI441181B (zh) 2010-09-09 2014-06-11 Silicon Motion Inc 用來進行資料整形之方法以及其記憶裝置及控制器
WO2014041401A1 (en) * 2012-09-14 2014-03-20 Freescale Semiconductor, Inc. Viterbi decoding device and method for decoding a signal produced by a convolutional encoder
CN105634509A (zh) * 2015-12-29 2016-06-01 中国科学院微电子研究所 一种维特比译码方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4500994A (en) * 1982-10-04 1985-02-19 Motorola, Inc. Multi-rate branch metric processor for maximum-likelihood convolutional decoder
JPS6081925A (ja) * 1983-10-12 1985-05-10 Nec Corp 誤り訂正装置
JPS62101128A (ja) * 1985-10-29 1987-05-11 Fujitsu Ltd ビタビ復号器の試験方法
JPS62233933A (ja) * 1986-04-03 1987-10-14 Toshiba Corp ヴイタビ復号法
FR2612025B1 (fr) * 1987-03-06 1989-05-26 Labo Electronique Physique Dispositif de decodage de signaux codes en duobinaire
US4979175A (en) * 1988-07-05 1990-12-18 Motorola, Inc. State metric memory arrangement for a viterbi decoder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008244592A (ja) * 2007-03-26 2008-10-09 Nippon Telegr & Teleph Corp <Ntt> ビタビ復号器

Also Published As

Publication number Publication date
KR910017795A (ko) 1991-11-05
US5027374A (en) 1991-06-25
EP0448809A2 (en) 1991-10-02
EP0448809A3 (en) 1992-05-27

Similar Documents

Publication Publication Date Title
JPH05327524A (ja) ビット・シリアル・ヴィタービ(viterbi)デコーダの加算/比較/選択アレイ
EP0152947B1 (en) Viterbi decoder with the pipeline processing function
US5349608A (en) Viterbi ACS unit with renormalization
US5502735A (en) Maximum likelihood sequence detector
US7398458B2 (en) Method and apparatus for implementing decode operations in a data processor
US7581160B2 (en) ACS circuit and Viterbi decoder with the circuit
US4500994A (en) Multi-rate branch metric processor for maximum-likelihood convolutional decoder
JPH10107651A (ja) ビタビ復号装置
US6257756B1 (en) Apparatus and method for implementing viterbi butterflies
US20050157823A1 (en) Technique for improving viterbi decoder performance
JP3266182B2 (ja) ビタビ復号器
Riocreux et al. A low-power self-timed Viterbi decoder
CN111030711B (zh) 一种维特比译码器并行加比选处理方法
EP1322041A1 (en) Viterbi decoder using restructured trellis
US7120851B2 (en) Recursive decoder for switching between normalized and non-normalized probability estimates
Muhammad et al. Low complexity FPGA implementation of register exchange based viterbi decoder
US7852960B2 (en) Method of computing path metrics in a high-speed Viterbi detector and related apparatus thereof
US7020831B2 (en) Pipelined add-compare-select circuits and methods, and applications thereof
JP3260714B2 (ja) ビタビ復号化装置およびビタビ復号化方法
KR100414152B1 (ko) 프로그래머블 프로세서에서의 비터비 디코딩 연산방법 및그 연산방법을 실행하기 위한 연산회로
RU2247471C2 (ru) Компонентный декодер и способ декодирования в системе мобильной связи
US5309494A (en) Circuit configuration for generating logical butterfly structures
KR0169777B1 (ko) 고속 비터비 복호기의 구현을 위한 정규화 방법 및 장치
US20040153958A1 (en) Path metric calculation circuit in viterbi decoders
JPH06112848A (ja) ビタビ復号用演算装置