(57)【要約】【課題】  要求される復号性能に応じて消費電力を容易に増減させることができ、かつ回路規模を低減できるビタビ復号器を提供する。【解決手段】  ビタビ復号器で復号処理を行うディジタル信号は、所定範囲の軟判定ビット数が割り当てられたディジタル信号系列である。ブランチメトリック演算手段は、多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数をディジタル信号系列のビット幅に応じて調整する制御部とを含み、ディジタル信号系列を入力してブランチメトリック値を計算する。ステートメトリック演算手段は、多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数をディジタル信号系列のビット幅に応じて調整する制御部とを含み、ブランチメトリック値を入力してステートメトリック値を計算する。【選択図】        図１
2008244592.tif 000002
【特許請求の範囲】
【請求項１】
畳み込み符号化されたディジタル信号の復号処理を行うビタビ復号器において、
前記ディジタル信号は、所定範囲の軟判定ビット数が割り当てられたディジタル信号系列であり、
多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数を前記ディジタル信号系列のビット幅に応じて調整する制御部とを含み、前記ディジタル信号系列を入力してブランチメトリック値を計算するブランチメトリック演算手段と、
多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数を前記ディジタル信号系列のビット幅に応じて調整する制御部とを含み、前記ブランチメトリック演算手段から出力されるブランチメトリック値を入力し、ステートメトリック値を計算するステートメトリック演算手段と
を備えたことを特徴とするビタビ復号器。
【請求項２】
請求項１に記載のビタビ復号器において、
前記ブランチメトリック演算手段および前記ステートメトリック演算手段は、演算サイクルの開始と同時に前記シリアル演算処理部へのクロック信号の供給を開始し、演算サイクルの終了と同時に前記シリアル演算処理部へのクロック信号の供給を停止するクロック供給制御手段を含む
ことを特徴とするビタビ復号器。
【請求項３】
請求項１に記載のビタビ復号器において、
前記ブランチメトリック演算手段および前記ステートメトリック演算手段は、演算サイクルの開始と同時に前記シリアル演算処理部への電源の供給を開始し、演算サイクルの終了と同時に前記シリアル演算処理部への電源の供給を停止する電源供給制御手段を含む
ことを特徴とするビタビ復号器。
【請求項４】
請求項１に記載のビタビ復号器において、
前記ブランチメトリック演算手段および前記ステートメトリック演算手段は、前記演算サイクル数の調整に応じて、前記シリアル演算処理部へ供給するクロック信号の周波数を調整するクロック周波数調整手段を含む
ことを特徴とするビタビ復号器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、畳み込み符号化されたディジタル信号の復号処理を行うビタビ復号器に関する。
【背景技術】
【０００２】
図１８は、ビタビ復号器の演算処理の概要を示す（非特許文献１）。ビタビ復号器は、ｍ個の多ビット入力信号｛ｙ0j, ｙ1j, …, ｙm-1j｝をある周期Ｔs で入力し、復号したｋ個のビット列｛ｘ0j, ｘ1j, …, ｘk-1j｝を周期Ｔb で出力する。符号化率がｋ／ｍの場合、ｍＴs ＝ｋＴb の関係がある。
【０００３】
復号処理では、ｍ個の入力信号ｙ0j , ｙ1j , …, ｙm-1jを入力するごとに以下の処理を行う。
(1) ブランチメトリック値の更新
(2) ステートメトリック値の更新
(3) トレースバック用分岐判断フラグの更新
(4) トレースバック
(5) ＬＩＦＯ(Last-In First-Out) 処理
【０００４】
図１９は、従来のビタビ復号器の全体構成を示す。図において、ビタビ復号器は、ブランチメトリック演算部（ＢＭＵ：Branch Metric Unit) １０’、ステートメトリック＆トレースバック用分岐判断フラグ演算部（ＡＣＳ：Add-Compare-Select) ２０’、パスメモリ３０、ステートメトリックメモリ４０、後入れ先出しメモリ（ＬＩＦＯ：Last-In First-Out)５０、制御部６０’により構成される。
【０００５】
図２０は、従来のＢＭＵ１０’の構成例を示す。図において、ＢＭＵ１０’は、演算部１０１〜１０３と、ＲＯＭ１０４〜１０６と、加算処理を行う加算部１９１〜１９３およびレジスタ１９４〜１９６により構成される。ＲＯＭ１０４〜１０６は、畳み込み符号時の拘束長Ｌのシフトレジスタ列で表されるある状態ｐから次状態ｑへの遷移に伴い出力されるｍ個の畳み込み符号化ビット列｛ｂ0g, ｂ1g, …, ｂm-1g｝を格納する。ここで、添え字ｇは、状態遷移（ｐ→ｑ）を表すシンボルである。図中の｛ｂ0,ｂ1,…,ｂm-1｝p->qは、｛ｂ0g, ｂ1g, …, ｂm-1g｝，ｇ＝（ｐ→ｑ）を略記したものである。なお、拘束長Ｌのシフトレジスタ列で表される状態の番号付けは、このシフトレジスタの入力側をＭＳＢとする符号無し整数とする。
【０００６】
ブランチメトリック値ＢＭjgの更新では、ｍ個の入力信号（尤度ビット）ｙ0j, ｙ1j, …, ｙm-1jを入力するごとに、以下の演算をｍ個の畳み込み符号化ビット列｛ｂ0g, ｂ1g, …, ｂm-1g｝のある集合Ｇについて行う。
ＢＭjg ＝−Σｓ(ｂkg) ｙkj   （ｋについては０〜(m-1) の和をとる) 
｛ｂ0g , ｂ1g , …, ｂm-1g｝∈Ｇ
ただし、
ｓ(x) ＝１  （ｘ＝１）
ｓ(x) ＝−１（ｘ＝０）
【０００７】
ここで、集合Ｇとは、状態遷移ｐからｑのすべての組（ｐ，ｑ）に対応する畳み込み符号化ビット列の集合である。
【０００８】
また、畳み込み符号化ビット列｛ｂ0g , ｂ1g , …, ｂm-1g｝は、状態遷移ｐからｑと１対１に対応するので、ブランチメトリック値ＢＭjg をλjP->qで表す。ブランチメトリック値の更新に関する従来のＢＭＵ１０’の動作シーケンスを図２１に示す。
【０００９】
図２２は、従来のＡＣＳ２０’の構成例を示す。図２２において、ＡＣＳ２０’は、単位ブロックごとに、ブランチメトリック値λとステートメトリック値ＳＭを加算する加算部２０１〜２０４と、各加算値の大小を判定したトレースバック用分岐判断フラグＤを出力する判定部２０５，２０６と、そのトレースバック用分岐判断フラグＤに応じて各加算値の一方を選択してステートメトリック値ＳＭの更新値として出力する選択部２０７，２０８を備えた構成である。
【００１０】
ステートメトリック値ＳＭj+12P の更新では、ｍ個の入力信号（尤度ビット）ｙ0j , ｙ1j, …, ｙm-1jを入力するごとに、以下の演算を上記の状態ｐ（０≦ｐ≦２L-1 −１）について行う。
ＳＭj+12P＝min(ＳＭjP＋λP->2P ，ＳＭjP+2＾(L-1)＋λP+2＾(L-1)->2P)
Ｄj+12P＝１（ＳＭjP＋λP->2P ≧ＳＭjP+2＾(L-1)＋λP+2＾(L-1)->2P)
Ｄj+12P＝０（その他）
ＳＭj+12P+1＝min(ＳＭjP＋λP->2P+1,ＳＭjP+2＾(L-1)＋λP+2＾(L-1)->2P+1)
Ｄj+12P+1＝１（ＳＭjP＋λP->2P≧ＳＭjP+2＾(L-1)＋λP+2＾(L-1)->2P+1) 
Ｄj+12P+1＝０（その他）
【００１１】
ＳＭj+1Pは、ｍ個の入力信号（尤度ビット）ｙ0j , ｙ1j , …, ｙm-1jを受信した後の状態ｐにおけるステートメトリック値である。Ｄj+1Pは、この入力信号に対する状態ｐにおけるトレースバック用分岐判断フラグである。トレースバック処理を可能とするため、トレースバック用分岐判断フラグＤj+1Pを、すべての状態ｐ（０≦ｐ≦２L-1 −１）および直近の複数の入力信号数ｊ（０≦ｊ≦Ｋ）についてメモリに格納する。ステートメトリック値およびトレースバック用分岐判断フラグの更新に関するタイミングチャートを図２３に示す。
【００１２】
トレースバック用分岐判断フラグＤj+12P は、畳み込み符号内の長さＬのシフトレジスタが表す現状態２ｐに遷移したときの前サイクルのシフトレジスタのＭＳＢを表す。このため、トレースバック用分岐判断フラグＤj+12P を順次トレースバックすることにより、復元したビット列を得ることができる。
【００１３】
トレースバックの処理では、ｍ個の入力信号（尤度ビット）ｙ0j, ｙ1j, …, ｙm-1jを入力するごとに、メモリに格納したトレースバック用分岐判断フラグをもとに状態遷移を逆行する。経験的に得られるある段数分以上だけ逆行した後、ＤjPの逆シーケンス｛ＤjP，Ｄj-1P，Ｄj-2P, …｝を得る。ＬＩＦＯ処理では、このＤjPの逆シーケンスを逆読みして、正規の復号結果とする。
【非特許文献１】Yun-Nan Chang,Hiroshi Suzuki,and Keshab K.Parhi,"A 2-Mb/s 256-State 10-mW Rate-1/3 Viterbi Decoder", IEEE JOURNAL OF SOLID-STATE CIRCUITS,VOL.35, NO.6, JUNE 2000
【発明の開示】
【発明が解決しようとする課題】
【００１４】
以上の処理を行う従来のビタビ復号器では、予め定められた軟判定ビット数に応じたビット幅の算術演算を高速に行うため、固定的な並列構造になっている。このため、軟判定ビット数を小さくして演算ビット幅が縮小した場合でも、回路規模および消費電力などの点で、演算コスト減少の効果を反映しにくい問題があった。
【００１５】
本発明は、要求される復号性能に応じて消費電力を容易に増減させることができ、かつ回路規模を低減できるビタビ復号器を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明は、畳み込み符号化されたディジタル信号の復号処理を行うビタビ復号器において、ディジタル信号は、所定範囲の軟判定ビット数が割り当てられたディジタル信号系列であり、多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数をディジタル信号系列のビット幅に応じて調整する制御部とを含み、ディジタル信号系列を入力してブランチメトリック値を計算するブランチメトリック演算手段と、多ビットのディジタル信号の算術演算を逐次的に行うシリアル演算処理部と、その演算サイクル数をディジタル信号系列のビット幅に応じて調整する制御部とを含み、ブランチメトリック演算手段から出力されるブランチメトリック値を入力し、ステートメトリック値を計算するステートメトリック演算手段とを備える。
【００１７】
本発明のビタビ復号器におけるブランチメトリック演算手段およびステートメトリック演算手段は、演算サイクルの開始と同時にシリアル演算処理部へのクロック信号の供給を開始し、演算サイクルの終了と同時にシリアル演算処理部へのクロック信号の供給を停止するクロック供給制御手段を含むことを特徴とする。
【００１８】
本発明のビタビ復号器におけるブランチメトリック演算手段およびステートメトリック演算手段は、演算サイクルの開始と同時にシリアル演算処理部への電源の供給を開始し、演算サイクルの終了と同時にシリアル演算処理部への電源の供給を停止する電源供給制御手段を含むことを特徴とする。
【００１９】
本発明のビタビ復号器におけるブランチメトリック演算手段およびステートメトリック演算手段は、演算サイクル数の調整に応じて、シリアル演算処理部へ供給するクロック信号の周波数を調整するクロック周波数調整手段を含むことを特徴とする。
【発明の効果】
【００２０】
本発明のビタビ復号器では、ブランチメトリック演算手段およびおよびステートメトリック演算手段において、シリアル演算処理部の演算サイクル数をディジタル信号系列のビット幅に応じて調整する。これにより、軟判定ビット数が大きい場合には演算サイクル数が大になって消費電力が大きくなるものの、軟判定ビット数が小さい場合には演算サイクル数が小になって消費電力を小さくすることができる。
【００２１】
すなわち、軟判定ビット数に対応する復号性能と消費電力を同時にスケーリングすることができる。特に、必要とされる復号性能が通信環境により時々刻々に変化する場合、例えば通信環境が良好な場合に復号性能を落とすことによって消費電力を抑えるなど、復号性能と消費電力とを同時に適応的に変化させることにより、平均的な消費電力を低減させることができる。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明のビタビ復号器の基本構成を示す。
図において、本発明のビタビ復号器は、ＢＭＵ１０、ＡＣＳ２０、パスメモリ３０、ステートメトリックメモリ４０、ＬＩＦＯ５０、制御部６０を備える構成において、尤度の割当ビット数（軟判定ビット数）ｎｂを動的に変更させたときに、それに応じてＢＭＵ１０、ＡＣＳ２０の動作を動的に変更可能にすることを特徴とする。
【００２３】
本発明のビタビ復号器が適用される受信装置の構成例を図１(2) に示す。アンテナ１に受信した受信信号を入力するＲＦ部２は、周波数変換、自動利得制御、直交検波により、水平成分のＩ信号、直交成分のＱ信号、受信レベル信号RSSIを出力する。Ｉ信号およびＱ信号はアナログ／ディジタル（Ａ／Ｄ）変換器３−１，３−２を介してディジタル信号に変換され、同期／検波回路４で復調される。受信レベル信号RSSIは、Ａ／Ｄ変換器３−３を介してディジタル信号に変換され、信号レベル検出／軟判定ビット数決定部５で受信レベルに応じて割り当てる軟判定ビット数ｎｂを決定する。受信データおよび軟判定ビット数は尤度計算部６に入力され、軟判定ビット数に応じた判定段数で尤度計算を行い、ビタビ復号器７に出力する。ビタビ復号器７は、尤度ビットＹと軟判定ビット数（尤度の割当ビット数）ｎｂを入力する構成である。
【００２４】
（ＢＭＵ１０，ＡＣＳ２０の第１の実施形態）
図２は、本発明のビタビ復号器におけるＢＭＵ１０の第１の実施形態を示す。図２０に示す従来のＢＭＵ１０’との違いは、ブランチメトリック値を求めるための加算演算部をシリアル処理型で構成し、尤度の割当ビット数ｎｂに応じた演算サイクル数を設定するところにある。すなわち、図２０に示すパラレル処理型の加算器１９１〜１９３およびレジスタ１９４〜１９６に代えて、シリアル処理型の１ビット加算器１１３，１２３，１３３、レジスタ１１４，１２４，１３４、選択器１１５，１２５，１３５、シフトレジスタ１１６，１２６，１３６を用い、演算部１０１〜１０３の各出力をＰ／Ｓ（パラレル／シリアル）変換器１１１，１２１，１３１を介して１ビット加算器１１３，１２３，１３３にそれぞれ入力し、シフトレジスタ１１６，１２６，１３６の各出力をＳ／Ｐ（シリアル／パラレル）変換器１１２，１２２，１３２を介してそれぞれ出力する。制御部１１７，１２７，１３７は、Ｐ／Ｓ変換器１１１，１２１，１３１、Ｓ／Ｐ変換器１１２，１２２，１３２、選択器１１５，１２５，１３５、シフトレジスタ１１６，１２６，１３６を尤度の割当ビット数ｎｂに応じてそれぞれ制御する。なお、図中の｛ｂ0,ｂ1,…,ｂm-1｝p->qは、｛ｂ0g, ｂ1g, …, ｂm-1g｝，ｇ＝（ｐ→ｑ）を略記したものである。
【００２５】
従来のＢＭＵ’におけるパラレル処理型の加算演算では、尤度の割当ビット数ｎｂの増減に応じてＢＭＵ内の加算器１９１〜１９３に入力するデータのビット幅が変化するので、予め最大のビット幅に合わせて加算器１９１〜１９３を構成する必要がある。したがって、尤度の割当ビット数ｎｂが小さく、ビット幅の小さいデータの加算演算が大部分の場合には、加算器１９１〜１９３の演算能力がオーバースペックとなり、占有面積や消費電力に対してコストが高くなっていた。
【００２６】
本発明のビタビ復号器におけるＢＭＵ１０では、加算演算をシリアル形式で行い、尤度の割当ビット数ｎｂが増減した場合の加算演算のビット幅の変化を、制御部１１７がＰ／Ｓ変換器１１１と選択器１１５とシフトレジスタ１１６とＳ／Ｐ変換器１１２を制御して演算サイクル数を調整し、制御部１２７がＰ／Ｓ変換器１２１と選択器１２５とシフトレジスタ１２６とＳ／Ｐ変換器１２２を制御して演算サイクル数を調整し、制御部１３７がＰ／Ｓ変換器１３１と選択器１３５とシフトレジスタ１３６とＳ／Ｐ変換器１３２を制御して演算サイクル数を調整することにより対応する。これにより、１ビット加算器１１３，１２３，１３３の占有面積を最小化したまま、尤度の割当ビット数ｎｂの増減に対応することができる。
【００２７】
図３は、ＢＭＵ１０の第１の実施形態の動作シーケンスを示す。上記のシリアル形式の加算演算により、中間結果が得られるまでの時間ｔ0j ，ｔ1j ，…，ｔm-1jが尤度の割当ビット数ｎｂに応じて変化する。ここで、ｔzj（０≦ｚ≦ｍ−１）は、尤度ビットｙzjが演算部１０１，１０２，１０３に入力された時点から、シフトレジスタ１１６，１２６，１３６に格納されている第１の中間結果Σk=0z-1s(bkg)ykj との和をとり、第２の中間結果Σk=0zs(bkg)ykj を生成するまでの時間を指す。尤度の割当ビット数ｎｂj が相対的に大きい値の場合、ｔ0j ，ｔ1j ，…，ｔm-1jは全体に大きくなる。逆に、尤度の割当ビット数ｎｂj+1 が相対的に小さい値の場合、ｔ0j+1 ，ｔ1j+1 ，…，ｔm-1j+1は全体に小さくなる。後者の場合、ｔ0j+1 ，ｔ1j+1 ，…，ｔm-1j+1がそれぞれ経過した後、次の尤度ビットｙ1j+1, …, ｙm-1j+1が到着するまでに時間的猶予がある。この時間的猶予の間に、加算器へのクロック供給を停止して消費電力を低減することができる。
【００２８】
図４は、本発明のビタビ復号器におけるＡＣＳ２０の単位ブロックの第１の実施形態を示す。図２２，２３に示す従来のＡＣＳ２０’の単位ブロックとの違いは、ステートメトリック値およびトレースバック用分岐判断フラグを求めるための加算演算部をシリアル型で構成し、尤度の割当ビット数ｎｂに応じた演算サイクル数を設定するところにある。すなわち、図２２，２３に示すパラレル処理型の加算器２０１〜２０４に代えて、それぞれシリアル処理型の１ビット加算器２１４，２２４，２３４，２４４、レジスタ２１５，２２５，２３５，２４５、選択器２１６，２２６，２３６，２４６、シフトレジスタ２１７，２２７，２３７，２４７を用いる。ブランチメトリック値λおよびステートメトリック値ＳＭは、Ｐ／Ｓ変換器２１１，２１２、２２１，２２２，２３１，２３２、２４１，２４２を介して、それぞれ１ビット加算器２１４，２２４，２３４，２４４に入力する。シフトレジスタ２１７，２２７，２３７，２４７の各出力は、Ｓ  ／Ｐ変換器２１３，２２３，２３３，２４３を介して判定部２０５，２０６および選択部２０７，２０８に入力する。制御部２１８，２２８は、Ｐ／Ｓ変換器２１１，２１２、２２１，２２２、２３１，２３２、２４１，２４２、Ｓ／Ｐ変換器２１３，２２３，２３３，２４３、選択器２１６，２２６，２３６，２４６、シフトレジスタ２１７，２２７，２３７，２４７を尤度の割当ビット数ｎｂに応じて制御する。
【００２９】
ＡＣＳ２０の単位ブロックでは、尤度ビットｙ0j, ｙ1j, …, ｙm-1jごとに、ブランチメトリック値λjP->2P，λjP+2＾(L-1)->2P と、ステートメトリック値ＳＭjP，ＳＭjP+2＾(L-1) から、次回のステートメトリック値ＳＭj+12P を求めて選択器２０７から出力し、トレースバック用分岐判断フラグＤj+12P を判定器２０５から出力する。また、同時にブランチメトリック値λjP->2P+1，λjP+2＾(L-1)->2P+1 と、ステートメトリック値ＳＭjP，ＳＭjP+2＾(L-1) から、次回のステートメトリック値ＳＭj+12P+1 を求めて選択器２０８から出力し、トレースバック用分岐判断フラグＤj+12P+1 を判定器２０６から出力する。
【００３０】
従来のパラレル処理型の加算処理では、尤度の割当ビット数ｎｂに応じてＡＣＳ２０’内の加算器２０１〜２０４へ入力するステートメトリック値とブランチメトリック値のビット幅が増減するので、これらのデータの中でビット幅が最も大きな場合に合わせて加算器２０１〜２０４を構成する必要があった。したがって、尤度の割当ビット数が小さい場合には、加算器２０１〜２０４の演算能力がオーバースペックとなり、占有面積や消費電力に対してコストが高くなっていた。
【００３１】
本発明のビタビ復号器におけるＡＣＳ２０では、加算演算をシリアル形式で行い、尤度の割当ビット数ｎｂが増減した場合の加算演算のビット幅の変化を、制御部２１８がＰ／Ｓ変換器２１１，２１２、２２１，２２２と、選択器２１６，２２６と、シフトレジスタ２１７，２２７と、Ｓ／Ｐ変換器２１３，２２３を制御して演算サイクル数を調整し、制御部２２８がＰ／Ｓ変換器２３１，２３２、２４１，２４２と、選択器２３６，２４６と、シフトレジスタ２３７，２４７と、Ｓ／Ｐ変換器２３３，２４３を制御して演算サイクル数を調整することにより対応する。これにより、１ビット加算器２１４，２２４，２３４，２４４の占有面積を最小化したまま、尤度の割当ビット数ｎｂの増減に対応することができる。
【００３２】
図５は、ＡＣＳ２０の第１の実施形態の動作シーケンスを示す。上記のシリアル形式の加算演算により、中間結果が得られるまでの時間ｔj が尤度の割当ビット数ｎｂに応じて変化する。ここで、ｔj はステートメトリック値ＳＭjP，ＳＭjP+2＾(L-1) とブランチメトリック値λjP->2P，λjP+2＾(L-1)->2P をＰ／Ｓ変換器に入力した時点から、シリアル型加算器、Ｓ／Ｐ変換器、比較器、選択器を経て、新たなステートメトリック値ＳＭj+12p と新たなトレースバック用分岐判断フラグＤj+12P とを生成するまでの時間を指す。尤度の割当ビット数ｎｂj ，ｎｂj+1 ，…が相対的に大きい値の場合、ｔj ，ｔj+1 ，…は大きくなる。逆に、尤度の割当ビット数ｎｂj+q ，ｎｂj+q+1 ，…が相対的に小さい値の場合、上記の加算演算に要するサイクル数が小さくなり、ｔj+q ，ｔj+q+1 ，…は小さくなる。後者の場合、ｔj+q ，ｔj+q+1 ，…が経過した後に、次の尤度ビットｙ0j+q+1，…が到着するまでに時間的猶予がある。この時間的猶予の間に、加算器へのクロック供給を停止して消費電力を低減することができる。
【００３３】
（ＢＭＵ１０，ＡＣＳ２０の第２の実施形態）
図６は、本発明のビタビ復号器おけるＢＭＵ１０の第２の実施形態を示す。本実施形態のＢＭＵ１０は、図２に示す第１の実施形態のＢＭＵ１０の構成に、演算終了時点判定部１４１〜１４３およびクロック供給回路１４４〜１４６を加える。演算終了時点判定部１４１〜１４３は、加算演算の途中結果が得られた時点（図３のｔ0j，ｔ1j，…に示す）を検出する。クロック供給回路１４４〜１４６は、新しい尤度ビット系列の受信を開始すると同時にシリアル型加算部にクロック信号を供給し、演算終了時点判定部１４１〜１４３が演算終了を検出すると同時にクロック信号の供給を停止する。ＢＭＵ１０の第２の実施形態の動作シーケンスを図７に示す。
【００３４】
図８は、本発明のビタビ復号器おけるＡＣＳ２０の単位ブロックの第２の実施形態を示す。本実施形態のＡＣＳ２０の単位ブロックは、図４に示す第１の実施形態のＡＣＳ２０の単位ブロックの構成に、演算終了時点判定部２５１，２５２およびクロック供給回路２５３，２５４を加える。演算終了時点判定部２５１，２５２は、加算演算の途中結果が得られた時点（図５のｔj ，ｔj+1 ，…に示す）を検出する。クロック供給回路２５３，２５４は、新しい尤度ビット系列の受信を開始すると同時にシリアル型加算部にクロック信号を供給し、演算終了時点判定部２５１，２５２が演算終了を検出すると同時にクロック信号の供給を停止する。ＡＣＳ２０の第２の実施形態の動作シーケンスを図９に示す。
【００３５】
（ＢＭＵ１０，ＡＣＳ２０の第３の実施形態）
図１０は、本発明のビタビ復号器おけるＢＭＵ１０の第３の実施形態を示す。本実施形態のＢＭＵ１０は、図６に示す第２の実施形態のＢＭＵ１０の構成に電源供給回路１５１〜１５３を加える。電源供給回路１５１〜１５３は、新しい尤度ビット系列の受信を開始すると同時にシリアル型加算部に電源を供給し、演算終了時点判定部１４１〜１４３が演算終了を検出すると同時に電源供給を停止する。ただし、次の演算サイクルで必要となるデータは、電源供給を停止しない記憶回路に格納する。ＢＭＵ１０の第３の実施形態の動作シーケンスを図１１に示す。
【００３６】
図１２は、本発明のビタビ復号器おけるＡＣＳ２０の単位ブロックの第３の実施形態を示す。本実施形態のＡＣＳ２０の単位ブロックは、図８に示す第２の実施形態のＡＣＳ２０の単位ブロックの構成に電源供給回路２６１，２６２を加える。電源供給回路２６１，２６２は、新しい尤度ビット系列の受信を開始すると同時にシリアル型加算部に電源を供給し、演算終了時点判定部２５１，２５２が演算終了を検出すると同時に電源の供給を停止する。ただし、次の演算サイクルで必要となるデータは、電源供給を停止しない記憶回路に格納する。ＡＣＳ２０の第３の実施形態の動作シーケンスを図１３に示す。
【００３７】
（ＢＭＵ１０，ＡＣＳ２０の第４の実施形態）
図１４は、本発明のビタビ復号器おけるＢＭＵ１０の第４の実施形態を示す。本実施形態のＢＭＵ１０は、図６に示す第２の実施形態のＢＭＵ１０のクロック供給回路１４４〜１４６に代えて、クロック周波数調整回路１６１〜１６３を用いる。クロック周波数調整回路１６１〜１６３は、演算終了時点判定部１４１〜１４３からの情報をもとに、演算終了時点が次の尤度ビットの開始時点にできるだけ近くなるように、シリアル型加算部に供給するクロック信号の周波数を調整する。ＢＭＵ１０の第４の実施形態の動作シーケンスを図１５に示す。
【００３８】
なお、尤度の割当ビット数ｎｂj が相対的に大きい場合、尤度ビットが入力されてからＢＭＵ値の中間計算値が得られるまでのクロック数が大きくなる。このため、クロック周波数を大きくする。一方、尤度の割当ビット数ｎｂj+1 が相対的に小さい場合、尤度ビットが入力されてからＢＭＵ値の中間計算値が得られるまでのクロック数が小さくなる。このため、クロック周波数を小さくする。
【００３９】
図１６は、本発明のビタビ復号器おけるＡＣＳ２０の単位ブロックの第４の実施形態を示す。本実施形態のＡＣＳ２０の単位ブロックは、図８に示す第２の実施形態のＡＣＳ２０のクロック供給回路２５３，２５４に代えて、クロック周波数調整回路２７１，２７２を用いる。クロック周波数調整回路２７１，２７２は、演算終了時点判定部２５１，２５２からの情報をもとに、演算終了時点が次の尤度ビットの開始時点にできるだけ近くなるように、シリアル型加算部に供給するクロック信号の周波数を調整する。ＡＣＳ２０の第４の実施形態の動作シーケンスを図１７に示す。
【００４０】
なお、尤度の割当ビット数ｎｂj が相対的に大きい場合、尤度ビットのシリアル入力が始まってからＡＣＳ値の中間データが得られるまでのクロック数が大きくなる。このため、クロック周波数を大きくする。一方、尤度の割当ビット数ｎｂj+1 が相対的に小さい場合、尤度ビットのシリアル入力が始まってからＡＣＳ値の中間データが得られるまでのクロック数が小さくなる。このため、クロック周波数を小さくする。
【図面の簡単な説明】
【００４１】
【図１】本発明のビタビ復号器の基本構成を示す図。
【図２】ＢＭＵ１０の第１の実施形態を示す図。
【図３】第１の実施形態のＢＭＵ１０の動作シーケンスのタイミングチャート。
【図４】ＡＣＳ２０の第１の実施形態を示す図。
【図５】第１の実施形態のＡＣＳ２０の動作シーケンスのタイミングチャート。
【図６】ＢＭＵ１０の第２の実施形態を示す図。
【図７】第２の実施形態のＢＭＵ１０の動作シーケンスのタイミングチャート。
【図８】ＡＣＳ２０の第２の実施形態を示す図。
【図９】第２の実施形態のＡＣＳ２０の動作シーケンスのタイミングチャート。
【図１０】ＢＭＵ１０の第３の実施形態を示す図。
【図１１】第３の実施形態のＢＭＵ１０の動作シーケンスのタイミングチャート。
【図１２】ＡＣＳ２０の第３の実施形態を示す図。
【図１３】第３の実施形態のＡＣＳ２０の動作シーケンスのタイミングチャート。
【図１４】ＢＭＵ１０の第４の実施形態を示す図。
【図１５】第４の実施形態のＢＭＵ１０の動作シーケンスのタイミングチャート。
【図１６】ＡＣＳ２０の第４の実施形態を示す図。
【図１７】第４の実施形態のＡＣＳ２０の動作シーケンスのタイミングチャート。
【図１８】ビタビ復号器の演算処理の概要を示す図。
【図１９】従来のビタビ復号器の全体構成を示す図。
【図２０】従来のＢＭＵ１０の構成例を示す図。
【図２１】従来のＢＭＵ１０の動作シーケンスのタイミングチャート。
【図２２】従来のＡＣＳ２０の構成例を示す図。
【図２３】従来のＡＣＳ２０の動作シーケンスのタイミングチャート。
【符号の説明】
【００４２】
１０  ブランチメトリック演算部（ＢＭＵ）
２０  ステートメトリック＆トレースバック用分岐判断フラグ演算部（ＡＣＳ）
３０  パスメモリ
４０  ステートメトリックメモリ
５０  後入れ先出しメモリ（ＬＩＦＯ）
６０  制御部
１０１〜１０３  演算部
１０４〜１０６  ＲＯＭ
１１１，１２１，１３１  パラレル／シリアル（Ｐ／Ｓ）変換器
１１２，１２２，１３２  シリアル／パラレル（Ｓ／Ｐ）変換器
１１３，１２３，１３３  １ビット加算器
１１４，１２４，１３４  レジスタ
１１５，１２５，１３５  選択器
１１６，１２６，１３６  シフトレジスタ
１９１〜１９３  加算部
１９４〜１９６  レジスタ
２０１〜２０４  加算部
２０５，２０６  判定部
２０７，２０８  選択部
２１１，２２１，２３１，２４１  パラレル／シリアル（Ｐ／Ｓ）変換器
２１２，２２２，２３２，２４２  パラレル／シリアル（Ｐ／Ｓ）変換器
２１３，２２３，２３３，２４３  シリアル／パラレル（Ｓ／Ｐ）変換器
２１４，２２４，２３４，２４４  １ビット加算器
２１５，２２５，２３５，２４５  レジスタ
２１６，２２６，２３６，２４６  選択器
２１７，２２７，２３７，２４７  シフトレジスタ
２１８，２２８  制御部
１４１〜１４３，２５１，２５２  演算終了時点判定部
１４４〜１４６，２５３，２５４  クロック供給部
１５１〜１５３，２６１，２６２  電源供給部
１６１〜１６３，２７１，２７２  クロック周波数調整部
【図１】
2008244592.tif 000003
【図２】
2008244592.tif 000004
【図３】
2008244592.tif 000005
【図４】
2008244592.tif 000006
【図５】
2008244592.tif 000007
【図６】
2008244592.tif 000008
【図７】
2008244592.tif 000009
【図８】
2008244592.tif 000010
【図９】
2008244592.tif 000011
【図１０】
2008244592.tif 000012
【図１１】
2008244592.tif 000013
【図１２】
2008244592.tif 000014
【図１３】
2008244592.tif 000015
【図１４】
2008244592.tif 000016
【図１５】
2008244592.tif 000017
【図１６】
2008244592.tif 000018
【図１７】
2008244592.tif 000019
【図１８】
2008244592.tif 000020
【図１９】
2008244592.tif 000021
【図２０】
2008244592.tif 000022
【図２１】
2008244592.tif 000023
【図２２】
2008244592.tif 000024
【図２３】
2008244592.tif 000025