JP2001358598A - ビタビデコーダ - Google Patents
ビタビデコーダInfo
- Publication number
- JP2001358598A JP2001358598A JP2000178287A JP2000178287A JP2001358598A JP 2001358598 A JP2001358598 A JP 2001358598A JP 2000178287 A JP2000178287 A JP 2000178287A JP 2000178287 A JP2000178287 A JP 2000178287A JP 2001358598 A JP2001358598 A JP 2001358598A
- Authority
- JP
- Japan
- Prior art keywords
- data
- units
- memory
- unit
- traceback
- 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
Links
Landscapes
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Abstract
簡単な構成で、連続的なビタビ復号を実現することがで
き、しかもパスメモリのサイズを小さくすることができ
るビタビデコーダを提供する。 【解決手段】 ブランチメトリックを求めてその大小を
比較し、パスの候補を出力する加算比較演算器1と、こ
のパスを記憶する4つのメモリユニット3A〜3Dと、
パスメモリを後戻りしてパスを確定する2つのトレース
バックユニット7A〜7Bと、上記メモリユニットから
このトレースバックユニットに適切なデータが出力され
るようにデータの流れを制御する4入力1出力の2つの
マルチプレクサ5A〜5Bと、上記メモリユニット、ト
レースバックユニットおよびマルチプレクサが適切な順
序で動作するようにコントロールする制御ユニット10
とを備え、上記トレースバックユニットが互いに時間的
に出力を補うように動作し、連続的に出力を得る構成と
したものである。
Description
号を実現するビタビデコーダに関する。
リブロックを1つ有したビタビデコーダが知られてい
る。この種のものでは、ビタビ復号において、トレース
バックを行う場合、アルゴリズム的特徴により連続した
入力データに対し、そのデータレートより低いデータレ
ートで間欠的に出力が行われる。
め、トレースバックユニットを4つ有したビタビデコー
ダが提案されている(特開平9−51278号公報)。
トレースバックユニットを4つ必要とするため、冗長で
あり、構造が複雑化しコスト高になる等の問題がある。
技術が有する課題を解消し、ビタビ復号のトレースバッ
ク方式において、簡単な構成で、連続的なビタビ復号を
実現することができ、しかもパスメモリのサイズを小さ
くすることができるビタビデコーダを提供することにあ
る。
ブランチメトリックを求めてその大小を比較し、パスの
候補を出力する加算比較演算器と、このパスを記憶する
4つのメモリユニットと、パスメモリを後戻りしてパス
を確定する2つのトレースバックユニットと、上記メモ
リユニットからこのトレースバックユニットに適切なデ
ータが出力されるようにデータの流れを制御する4入力
1出力の2つのマルチプレクサと、上記メモリユニッ
ト、トレースバックユニットおよびマルチプレクサが適
切な順序で動作するようにコントロールする制御ユニッ
トとを備え、上記トレースバックユニットが互いに時間
的に出力を補うように動作し、連続的に出力を得る構成
としたことを特徴とするものである。
のにおいて、上記2つのトレースバックユニットからの
出力を交互に選択する2入力1出力のマルチプレクサを
有したことを特徴とするものである。
のにおいて、上記加算比較演算器からのパス情報のデー
タを4つのメモリユニットに対して適宜なクロック数分
のデータ数ずつ格納し、上記メモリユニットの内の、2
つのメモリユニットから逆順にデータを読み出して、一
方のトレースバックユニットに渡してパス確定し、上記
メモリユニットの内の、1つのメモリユニットとそれと
クロック数分だけ遅れた期間のデータを記憶しているメ
モリユニットとから逆順にデータを読み出して、他方の
トレースバックユニットに渡してパス確定し、これらト
レースバックユニットからの出力を、2入力1出力のマ
ルチプレクサで交互に選択する構成としたことを特徴と
するものである。
のにおいて、トレースバックユニットは2つのメモリユ
ニット分のデータ数だけ処理し、その内の半分のデータ
だけを出力データに採用することを特徴とする。
した図面を参照して説明する。
す。このビタビデコーダは、加算比較演算器1と、この
加算比較演算器1から出力されるパスを記憶する4つの
メモリユニット3A〜3Dと、4入力1出力の2つのマ
ルチプレクサ5A,5Bと、パスメモリを後戻りしてパ
スを確定する2つのトレースバックユニット7A,7B
と、2入力1出力のマルチプレクサ9と、メモリユニッ
ト3、トレースバックユニット7およびマルチプレクサ
5,9が適切な順序で動作するようにコントロールする
制御ユニット10とを備えて構成される。
基づいてメトリック計算を行い、これをもとに、より尤
度の高い状態を選択し、そのどれを選択したかという情
報をメモリユニット3A〜3Dに出力する。
算器1から受け取った各状態のデータを、一時保管す
る。このデータの読み出しは、書き込みとは逆順に読み
出される。メモリサイズは、拘束長を7とした場合、メ
モリ1個あたりデータ幅64bit(=2(7-1))、ア
ドレス空間5bit(>7×4)を必要とする。
は、適切なメモリブロックを選択し、その読み出したデ
ータをトレースバックユニット7A,7Bに渡す。
ータを後戻りすることにより信号を復元する。この出力
は64クロックごとに32ビットずつ確定して出力され
る。2つのトレースバックユニット7A,7Bはデータ
を交互に出力する。
ースバックユニット7A,7Bから交互に出力されるデ
ータの内、いずれか一方のデータを選択する。
トレースバックユニット7およびマルチプレクサ5,9
が適切な順序で動作するようにコントロールする。この
場合、入力信号および、加算比較演算器1からのイネー
ブル信号をもとに、全体のタイミングを合わせている。
また、制御ユニット10は、メモリユニット3やトレー
スバックユニット7で使用される、アドレスやイネーブ
ル信号の生成をおこない、しかも、トレースバックユニ
ット7の出力に合わせて、出力正当性表示(VALI
D)信号を出力し、その正当性を示している。
リックを計算する2つのブロック(ブランチメトリック
ジェネレータ)11を有する。入力データは、このブラ
ンチメトリックジェネレータ11に入力され、ここで生
成されたブランチメトリックは、接続テーブル12に記
述された情報に基づき、適切な加算比較演算セル(AC
SCELL)13に入力される。この加算比較演算セル
13は拘束長が7の場合、32個存在する。加算比較演
算セル13は、ブランチメトリックMBと、METRI
C_IN(OX)、METRIC_IN(IX)をもと
に尤度計算する演算子であって、より尤度の高い状態を
求めて、その結果をPATH_DATAとして出力す
る。
ックは、出力(METRIC_OUT)された後、加算
比較演算器1の外でフイードバックループを形成し、M
ETRIC_INとして、再び加算比較演算器1に入力
される。ここでは図示を省略したが、このフイードバッ
クの際にオーバーフローを起こさないよう、外部で正規
化する処理が行われている。
タビ復号法において、ある時刻のある状態にいるときに
入力されるべき符号(理論値)と、実際の入力符号との
距離を表す。ここでは、この2つの符号のユークリッド
距離(ただし、軟判定の場合であって、硬判定ではハミ
ング距離)を求めてブランチメトリックとする。例え
ば、硬判定で01が受信されるべき場合に受信符号が0
0であれば、一致が一つで+1、不一致が一つで−1、
合計でMB=0となる。
組み合わせは4通りであり、このうち半分は互いに極性
が異なるだけである。
メトリックMBを求め、極性を反転させることですべて
を求める方式を採用する。
算比較演算セル13の対応は、比較的複雑である。その
ため、接続テーブル12での接続規則はROMで保持し
ており、この接続規則に基づき接続される。
いる、トレリス線図上の合流において、生き残るパスを
選択する。X番目の加算比較演算CELLは、状態0X
と状態1X(例えばX=13=”01101”であれ
ば、0X=13=”001101”、1X=45=”1
01101”)のメトリックにブランチメトリックを加
算して比較し、より尤度の高い方を選択して、X0とX
l(先の例でいえば、X0=26=”011010”、
Xl=27=”011011”)に出力する。
は、0Xと1Xで尤度を比較して0Xを選択するなら’
0’、1Xを選択するなら’1’となる。
特にK=7を用いている。この場合は状態数が2(K−
1)通り、加算比較演算セル13の数は2(K−2)個
になるので、32個の加算比較演算CELLがあり、M
ETRIC及びPATHを運ぶバスは64となる。
に、4つのブロックに分けられ、それぞれのブロックは
独立する。従って、同一クロック時に書き込み1つと読
み出し2つを行うことができる。
リのライトイネーブルとアドレスは制御ユニット10に
よって、図4に示すように制御されており、書き込み側
の加算比較演算器1からは見かけ上、ひとつの大きな
(32×4=128のアドレス空間を持つ)メモリと見
ることができる。
よって、メモリユニット3A〜3Dから必要な順に読み
出されるので、トレースバックユニット7としてはデー
タの格納場所を意識する必要がない。
あたりのサイズはトレースバックユニット7が一度に処
理するサイズ(例では64)の半分となっている。これ
によりトレースバックの読み出し操作によってロックさ
れる期間が半分で済むため、メモリの時間的な使用効率
が向上する。
256のメモリサイズを必要とするのに対し、その半分
のサイズで動作を可能とする。
ク2つ分(32クロック×2)を戻りながら出力データ
を生成する。
は、制御ユニット10によって、マルチプレクサ5で適
切に選択されたメモリブロックから逆順に読み出され、
トレースバックユニット7に入力される。従って、トレ
ースバックユニット7自体は後戻りや、データの選択と
いったことを処理する必要はなく、機械的に受け取った
データを処理すればよい。
憶している現状態Sの最上位ビットにパスデータのS番
目のデータを作用させ、次回の状態として記憶するとい
う動作のみを繰り返す。この動作中に使用したパスデー
タのS番目の値を順番に記録し、32ビットバッファリ
ングした後、復号結果としている。
は、32クロック処理する毎に、32ビット出力する。
しかし、そのままでは、データの後ろ側が誤りを含む可
能性がある。そこで、64ビットトレースバックして、
データの前側32ビットを結果として採用することにす
る。
ぞれには、データが64ビットを1セットとして32ク
ロック分ずれて入力される。従って、2つのトレースバ
ックユニット7A,7Bは、32クロックごと交互に、
しかも64クロックに一回、有効なデータを32bit
ずつ出力する。この結果を、後段の2入力1出力のマル
チプレクサ9が正しく選択することになる。
のトレースバックを処理する時に制御ユニット10は強
制的に0が入力されたものとみなし動作させる信号をト
レースバックユニット7に渡す。こうすることで、符号
器の状態0に合うように状態を保って、トレースバック
を行うことができる。
リ管理、VALID信号の生成、終了位置の記憶、タイ
ミング管理等である。
内部にステートマシンとカウンタを持っており、現在の
動作状態を管理している。メインカウンタにより状態の
遷移、アドレスの生成などを行っている。そして、これ
らの状況に応じて、各ブロックに指示を与え、図3のよ
うに動作させる。
状態INITにする。内部のカウンタや、各部のコント
ロール出力がクリアされる。リセット信号はすべての入
力に優先し、いつでもINITステートに移行できる。
STステートに入る。メモリの書き込み制御や、トレー
スバック動作を開始させる。メモリにデータが記録され
始め、データの揃ったところから、トレースバックを開
始する。
入力しておく。信号が一時停止する時などにOFFにす
ると動作を止めることができる。
ートにし、出力信号が出ていることを示すVALID信
号をアクティブにする。以後LOOP状態を維持し、以
後繰り返しの動作になる。
テートに遷移し、入力の受け付けをやめ、メモリ内のデ
ータの吐出し処理を行う。
ら、VALID信号を切り、IDLEステートに遷移す
る。IDLEではリセット信号によって内部がクリアさ
れるまで、カウンタ動作が停止状態となる。
の動作を、図1および図3を参照して説明する。ここ
で、全体のタイミングは、制御ユニット10によってコ
ントロールされるものとする。
され、符号器の状態遷移(パス)情報としてメモリユニ
ット3に向かって出力される。
は64通りあるので加算比較演算器1からのデータは6
4bitの幅を持つ。
10により制御されており、加算比較演算器1からの6
4bit幅のデータを、メモリユニット3A→メモリユ
ニット3B→メモリユニット3C→メモリユニット3D
→メモリユニット3Aの順に32クロックずつ記憶して
いく。アドレス指定やメモリ動作は制御ユニット10に
よりコントロールされる。ここで、アドレス空間は、拘
束長Kの4、5倍の値を基準にして決めている。
ト3Bにデータ(64bit幅×64クロック分)が記
憶されるのを待つ(時刻0〜63)。
方向と反対に、メモリユニット3B→メモリユニット3
Aの順に読み出して、トレースバックユニット7Aに入
力する(時刻64〜127)。
力(メモリユニット3B,メモリユニット3Aの内容)
をもとに、64bit分戻して状態の遷移を書き出して
いき、元信号を求める(時刻64〜127)。
ユニット3Bの分を戻り終わった時、時刻95)でメモ
リユニット3Cが一杯になる。この時点からメモリユニ
ット3C、メモリユニット3Bの記憶内容を使って、ト
レースバックユニット7Bがトレースバック動作を開始
する。
バックユニット7Aは、復号した32bitのデータを
出力する。そして、この時点で、データがすべて揃った
メモリユニット3Dおよびメモリユニット3Cを使っ
て、新たにトレースバックを開始する(時刻128)。
してから32クロック後、トレースバックユニット7B
の復号が終了し、32bitの出力をする。
す。トレースバックユニット7Aとトレースバックユニ
ット7Bとが交互に出力を繰り返し、32クロック毎に
32bitずつのデータが出力として得られる。
レースバックユニット7Bは後段の2入力1出力のマル
チプレクサ9で適切に選択され、1ビットづつ出力され
る。出力データには、その正当性を示すVALID信号
を同期して出力する。
コーダはデータの受付を終了し、内部データを吐出すよ
うに動作する。この間、一切の入力データを受け付けな
い。
つ、データをすべて吐出すと、アイドリング状態とな
り、リセット信号を待つ。
入力データに対して間欠的にしか出力することができな
い。しかし、この動作説明で示した通り、本実施形態で
は、2つのトレースバックユニット7を持ち、交互に出
力を行うため、連続的な出力が可能になる、等の効果が
得られる。
る。
常は3ビット程度であり、硬判定を行う場合は、1ビッ
ト程度とする。イネーブル信号は、入力データに同期し
て入力する。Highの場合にデータを認識して演算を
行う。クロック信号は、その速さが、データレートと同
じものを入力する。リセット信号は、すべての入力信号
に優先して処理される。データ終結信号は、通常Low
を出力し、データパケットの終了後にHighを入力す
る。これ以降は、内部でデータの終臨処理および、デー
タの吐出し処理を行うため、この間はリセット信号のみ
を受け付け、入力データ信号はすべて無視される。
信号、Q入力信号に対応し、ビットを立てると、その時
刻のデータのメトリック計算を行わないようにする。こ
れはパンクチャド符号を想定したもので、符号化率を上
げるためにデータが抜き取られて穴になっているものを
受信したときに用いられる。出力データとしては、ビッ
トが出力される。
力データに同期して変化する。VALIDがアクティブ
のときの出力データのみが有効となる。
して説明する。
号Highを入力する。リセット信号はクロックに同期
し、内部の状態を初期状態に戻す。リセットがLowに
戻ると、データ受付状態となり、復号が開始できる。
みが、ビタビデコーダで認識されて、処理される。
次、VALID信号を伴ってデータが出力される。
わらず、終結信号TERMがアクティブになると、吐出
し処理を開始する。これ以後のデータは認識しない。
吐出し終わると、ビタビデコーダは、VALIDをLo
wに落とし、アイドリング状態となる。そして、再びリ
セットがかかるまで休止する。
クユニット7を交互に動作させるため、連続的な出力が
可能になる。また、トレースバック式の復号を行うので
パスメモリのサイズが小さくて済む。
尤度の高いものを求めるたびにメモリ内の値を全て変え
る必要が無いので、処理や演算のコストが小さくて済
む。従来、3つ以上のトレースバックユニットを持つの
に対し、その数を2つに減らすことができる、等の効果
が得られる。
したが、本発明は、これに限定されるものでないことは
明らかである。
ットを交互に動作させるため、連続的な出力が可能にな
る。また、トレースバック式の復号を行うのでパスメモ
リのサイズが小さくて済む等の効果が得られる。
すブロック図である。
Claims (4)
- 【請求項1】 ブランチメトリックを求めてその大小を
比較し、パスの候補を出力する加算比較演算器と、この
パスを記憶する4つのメモリユニットと、パスメモリを
後戻りしてパスを確定する2つのトレースバックユニッ
トと、上記メモリユニットからこのトレースバックユニ
ットに適切なデータが出力されるようにデータの流れを
制御する4入力1出力の2つのマルチプレクサと、上記
メモリユニット、トレースバックユニットおよびマルチ
プレクサが適切な順序で動作するようにコントロールす
る制御ユニットとを備え、上記トレースバックユニット
が互いに時間的に出力を補うように動作し、連続的に出
力を得る構成としたことを特徴とするビタビデコーダ。 - 【請求項2】 上記2つのトレースバックユニットから
の出力を交互に選択する2入力1出力のマルチプレクサ
を有したことを特徴とする請求項1記載のビタビデコー
ダ。 - 【請求項3】 上記加算比較演算器からのパス情報のデ
ータを4つのメモリユニットに対して適宜なクロック数
分のデータ数ずつ格納し、上記メモリユニットの内の、
2つのメモリユニットから逆順にデータを読み出して、
一方のトレースバックユニットに渡してパス確定し、上
記メモリユニットの内の、1つのメモリユニットとそれ
とクロック数分だけ遅れた期間のデータを記憶している
メモリユニットとから逆順にデータを読み出して、他方
のトレースバックユニットに渡してパス確定し、これら
トレースバックユニットからの出力を、2入力1出力の
マルチプレクサで交互に選択する構成としたことを特徴
とする請求項1記載のビタビデコーダ。 - 【請求項4】 上記トレースバックユニットは2つのメ
モリユニット分のデータ数だけ処理し、その半分のデー
タ数だけを出力データに採用することを特徴とする請求
項3記載のビタビデコーダ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000178287A JP4422867B2 (ja) | 2000-06-14 | 2000-06-14 | ビタビデコーダ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000178287A JP4422867B2 (ja) | 2000-06-14 | 2000-06-14 | ビタビデコーダ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001358598A true JP2001358598A (ja) | 2001-12-26 |
JP4422867B2 JP4422867B2 (ja) | 2010-02-24 |
Family
ID=18679741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000178287A Expired - Fee Related JP4422867B2 (ja) | 2000-06-14 | 2000-06-14 | ビタビデコーダ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4422867B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040050754A (ko) * | 2002-12-09 | 2004-06-17 | 한국전자통신연구원 | 고속 비터비 디코더 |
KR100675389B1 (ko) | 2005-01-27 | 2007-01-29 | 삼성전자주식회사 | 역추적 작업을 병렬적으로 수행하는 비터비 디코더 및 그디코딩 방법 |
JPWO2005117272A1 (ja) * | 2004-05-27 | 2008-04-03 | 松下電器産業株式会社 | ビタビ復号装置、およびビタビ復号方法 |
-
2000
- 2000-06-14 JP JP2000178287A patent/JP4422867B2/ja not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040050754A (ko) * | 2002-12-09 | 2004-06-17 | 한국전자통신연구원 | 고속 비터비 디코더 |
JPWO2005117272A1 (ja) * | 2004-05-27 | 2008-04-03 | 松下電器産業株式会社 | ビタビ復号装置、およびビタビ復号方法 |
JP4580927B2 (ja) * | 2004-05-27 | 2010-11-17 | パナソニック株式会社 | ビタビ復号装置、およびビタビ復号方法 |
US7861146B2 (en) | 2004-05-27 | 2010-12-28 | Panasonic Corporation | Viterbi decoding apparatus and Viterbi decoding method |
KR100675389B1 (ko) | 2005-01-27 | 2007-01-29 | 삼성전자주식회사 | 역추적 작업을 병렬적으로 수행하는 비터비 디코더 및 그디코딩 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP4422867B2 (ja) | 2010-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH10107651A (ja) | ビタビ復号装置 | |
JPH11154874A (ja) | ビタビデコーダ | |
JP2717032B2 (ja) | ビタビ復号器 | |
JP3262250B2 (ja) | 現状態/次状態レジスタの効率的利用 | |
JP2001156651A (ja) | ビタビ復号器 | |
JPH09191258A (ja) | ビタビ復号装置及びその方法 | |
JPS59157811A (ja) | デ−タ補間回路 | |
JP3293731B2 (ja) | ビタビ復号器におけるトレースバック遂行装置 | |
US8401126B2 (en) | Viterbi decoding apparatus | |
US5878060A (en) | Viterbi decoding apparatus and viterbe decoding method | |
JP2001358598A (ja) | ビタビデコーダ | |
JP4580927B2 (ja) | ビタビ復号装置、およびビタビ復号方法 | |
JP2003530753A (ja) | 高速acsビタビデコーダの実行のためにメモリ内の状態の距離を効率的に読出して記憶するための方法および装置 | |
JP2001320284A (ja) | ビタビ復号器 | |
JP3316724B2 (ja) | ビタビ復号器 | |
JP4047697B2 (ja) | ビタビ復号装置 | |
JP3753822B2 (ja) | ビタビ復号方法および装置 | |
JP2904271B2 (ja) | ビタビ復号器用パスメモリユニットおよび復号方法 | |
JPH11186915A (ja) | ビタビ復号装置 | |
JPS63275227A (ja) | ビタビ復号器用パスメモリ回路 | |
JPS6326035A (ja) | ビタビ復号器 | |
JPH0746145A (ja) | 演算装置 | |
JP2001186025A (ja) | ビタビ復号装置 | |
JP2571384B2 (ja) | シ−ケンシャル復号器 | |
KR20040031323A (ko) | 비터비 복호기의 경로 메트릭 저장 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090818 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091014 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20091014 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091207 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131211 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |