(57)【特許請求の範囲】
【請求項１】
第一の信号と第二の信号を入力して加減算演算を行い、第一の演算結果を出力する第一の加減算手段と、
第一の信号と第三の信号を入力して加減算演算を行い、第二の演算結果を出力する第二の加減算手段と、
前記第一及び第二の演算結果を入力して尤度を比較し、比較結果を出力する第一の比較手段と、
前記比較結果と前記第一及び第二の演算結果とを入力して前記比較結果に応じた前記第一又は第二の演算結果を現時刻の第１のパスメトリックとして出力する第１の選択手段と、
前記第１の選択手段から出力された前記第一又は第二の演算結果を入力して記憶する記憶手段と、
前記記憶手段から出力された前記第１のパスメトリックと第三の信号とを入力して加減算演算を行い、第三の演算結果を出力する第三の加減算手段と、
前記記憶手段から出力された前記第１のパスメトリックと第四の信号とを入力して加減算演算を行い、第四の演算結果を出力する第四の加減算手段と、
前記第三及び第四の演算結果を入力して尤度を比較し、比較結果を出力する第二の比較手段と、
前記比較結果と前記第三及び第四の演算結果とを入力して前記比較結果に応じた前記第三又は第四の演算結果を次時刻の第２のパスメトリックとして出力する第２の選択手段とにより構成されることを特徴とするディジタル演算回路。
【請求項２】
前記第一の信号及び第三の信号はパスメトリックを示す信号であり、
前記第二の信号はブランチメトリックを示す信号であることを特徴とする請求項１に記載のディジタル演算回路。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、数値演算処理及び信号処理用のディジタル・シグナル・プロセッサ（ＤＳＰ）、またはそれに類する大規模集積回路（ＬＳＩ）に設けられるディジタル演算回路に関するものである。
【０００２】
【従来の技術】
従来のディジタル演算回路は、各時刻ごとに以下のような処理を行っていた。
図４は、時刻ｔから時刻ｔ＋２における、符号化率１／２、拘束長Ｋ＝４、状態数８（＝２Ｋ−１＝２３）の畳込み符号器の内部状態の遷移を示すトレリス図である。ここで、Ｓ０（ｔ）、…、Ｓ７（ｔ）は時刻ｔにおける状態を示し、Ｐ０（ｔ）、…、Ｐ７（ｔ）は状態Ｓ０（ｔ）、…、Ｓ７（ｔ）に対応するパスメトリックを示す。Ｂ０（ｔ＋１）、…、Ｂ７（ｔ＋１）は、時刻ｔから時刻ｔ＋１における枝メトリックを示す。ここで、状態Ｓ０（ｔ＋１）におけるパスメトリックＰ０（ｔ＋１）は、下記の式（１）又は（２）
Ｐ０（ｔ＋１）＝Ｐ０（ｔ）＋Ｂ０（ｔ＋１）      …（１）
Ｐ０（ｔ＋１）＝Ｐ１（ｔ）＋Ｂ１（ｔ＋１）      …（２）
を計算して得られた２つのＰ０（ｔ＋１）のうちで、尤度の高いＰ０（ｔ＋１）である。ここで、枝メトリックにはＢ１（ｔ＋１）＝−Ｂ０（ｔ＋１）という関係が成り立つことより、式（２）は
Ｐ０（ｔ＋１）＝Ｐ１（ｔ）−Ｂ０（ｔ＋１）      …（２’）
のように表せる。
【０００３】
以下、図４を用いて時刻ｔから時刻ｔ＋２における従来のディジタル演算回路の動作を具体的に説明する。初めに、ディジタル演算回路はＰ０（ｔ）とＰ１（ｔ）とＢ０（ｔ＋１）とを入力し、式（１）及び（２’）を計算して２つのＰ０（ｔ＋１）を求める。そして、得られた２つのＰ０（ｔ＋１）を比較し、その１ビットの比較結果を用いて２つのＰ０（ｔ＋１）のうちで尤度の高いＰ０（ｔ＋１）の値をパスメトリックとし、図示しないパスメトリック保管用メモリに退避する。また、比較結果も図示しない保管用メモリに退避させる（ステップ（１））。次に、ディジタル演算回路はＰ０（ｔ）、Ｐ１（ｔ）、Ｂ０（ｔ＋１）の値をそのまま保持し、式（３）及び（４）
Ｐ４（ｔ＋１）＝Ｐ０（ｔ）−Ｂ０（ｔ＋１） …（３）
Ｐ４（ｔ＋１）＝Ｐ１（ｔ）−Ｂ１（ｔ＋１）
＝Ｐ１（ｔ）＋Ｂ０（ｔ＋１） …（４）
を計算して２つのＰ４（ｔ＋１）を求める。そして、得られた２つのＰ４（ｔ＋１）のうちで尤度の高いＰ４（ｔ＋１）の値をパスメトリックとして求める（ステップ（２））。このように、状態Ｓ０（ｔ＋１）のパスメトリックを計算した後すぐに状態Ｓ４（ｔ＋１）のパスメトリックを計算すると、状態Ｓ４（ｔ＋１）のパスメトリックを計算する時に状態Ｓ１（ｔ＋１）で用いた同じデータＰ０（ｔ）、Ｐ１（ｔ）、Ｂ０（ｔ＋１）をもう一度入力する必要がなくなる。同様にして、ステップ（３）→（４）→…→（７）→（８）を行い、パスメトリックＰ１（ｔ＋１）、Ｐ５（ｔ＋１）…、Ｐ３（ｔ＋１）、Ｐ７（ｔ＋１）を求める。そして、時刻ｔ＋１のすべての状態におけるパスメトリックを計算した後に、ステップ（９）→（１０）→…→（１５）→（１６）を行い、時刻ｔ＋２におけるパスメトリックを得ていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来のディジタル演算回路にあっては、状態数が増加するにつれ、状態数の増加と等価な時間だけ次の時刻に対する処理が遅れるという問題点があった。
【０００５】
本発明は、状態数が増加しても、状態数の増加と等価な時間分の処理遅延を防ぐディジタル演算回路を提供することを目的とする。
【０００６】
【課題を解決するための手段】
第一の信号と第二の信号を入力して加減算演算を行い、第一の演算結果を出力する第一の加減算手段と、第一の信号と第三の信号を入力して加減算演算を行い、第二の演算結果を出力する第二の加減算手段と、前記第一及び第二の演算結果を入力して尤度を比較し、比較結果を出力する第一の比較手段と、前記比較結果と前記第一及び第二の演算結果とを入力して前記比較結果に応じた前記第一又は第二の演算結果を現時刻の第１のパスメトリックとして出力する第１の選択手段と、前記第１の選択手段から出力された前記第一又は第二の演算結果を入力して記憶する記憶手段と、前記記憶手段から出力された前記第１のパスメトリックと第三の信号とを入力して加減算演算を行い、第三の演算結果を出力する第三の加減算手段と、前記記憶手段から出力された前記第１のパスメトリックと第四の信号とを入力して加減算演算を行い、第四の演算結果を出力する第四の加減算手段と、前記第三及び第四の演算結果を入力して尤度を比較し、比較結果を出力する第二の比較手段と、前記比較結果と前記第三及び第四の演算結果とを入力して前記比較結果に応じた前記第三又は第四の演算結果を次時刻の第２のパスメトリックとして出力する第２の選択手段とにより構成する。
【０００７】
【作用】
上記のように構成されたディジタル演算回路においては、第一の加減算手段及び第二の加減算手段で計算された後に選択手段から出力された現時刻でのパスメトリックを記憶手段でいったん記憶させ、記憶手段から出力されたパスメトリックを用いて第三の加減算手段及び第四の加減算手段で次時刻でのパスメトリックを計算する。
【０００８】
【実施例】
以下、本発明のディジタル演算回路の第一の実施例を図面を参照して説明する。ここで、図１は、第一の実施例の詳細構成を示すブロック図である。
【０００９】
初めに、本発明のディジタル演算回路の構成を説明する。本発明のディジタル演算回路は、第一のデータバス１０１と、第二のデータバス１０２と、加減算データ記憶回路１０３と、第一の加減算回路１０４と、第二の加減算回路１０５と、第一の比較回路１０６と、第一のシフトレジスタ１０７と、第一の選択回路１０８と、選択結果格納用記憶回路１０９と、第三の加減算回路１１０と、第四の加減算回路１１１と、第二の比較回路１１２と、第二のシフトレジスタ１１３と、第二の選択回路１１４とにより構成される。
【００１０】
第一のデータバス１０１は加減算データ記憶回路１０３及び第一の加減算回路１０４と接続され、加減算データ記憶回路１０３は第一の加減算回路１０４及び第二の加減算回路１０５と接続される。第一の加減算回路１０４及び第二の加減算回路１０５は第一の比較回路１０６及び第一の選択回路１０８と接続され、第一の比較回路１０６は第一のシフトレジスタ１０７及び第一の選択回路１０８と接続される。第一のシフトレジスタ１０７はデータバス１０１に準ずるビット幅を有し、第一のデータバス１０１と接続され、第一の選択回路１０８は選択結果格納用記憶回路１０９と接続される。選択結果格納用記憶回路１０９は第三の加減算回路１１０及び第四の加減算回路１１１と接続され、第三の加減算回路１１０及び第四の加減算回路１１１は第二の比較回路１１２及び第二の選択回路１１４と接続される。第二の比較回路１１２は第二のシフトレジスタ１１３及び第二の選択回路１１４と接続され、第二のシフトレジスタ１１３はデータバス１０２に準ずるビット幅を有し、第二の選択回路１１４とともに第二のデータバス１０２と接続される。第二のデータバス１０２は第二の加減算回路１０５、第三の加減算回路１１０及び第四の加減算回路１１１と接続される。
【００１１】
次に、図２を参照して、時刻ｔから時刻ｔ＋２までにおける本発明のディジタル演算回路の動作を説明する。
【００１２】
以下、ステップ（１）の動作について説明する。初めに、第一の加減算回路１０４は第一のデータバス１０１からパスメトリックＰ０（ｔ）を入力し、第二の加減算回路１０５は第二のデータバス１０２からパスメトリックＰ１（ｔ）を入力する。加減算データ記憶回路１０３は第一のデータバス１０１からブランチメトリックＢ０（ｔ＋１）を入力・記憶し、第一の加減算回路１０４及び第二の加減算回路１０５に出力する。そして、第一の加減算回路１０４は、式Ｐ０（ｔ）＋Ｂ０（ｔ＋１）を計算してＰ０（ｔ＋１）を求める。また、第二の加減算回路１０５は、式Ｐ１（ｔ）−Ｂ０（ｔ＋１）を計算してＰ０（ｔ＋１）を求める。そして、第一の加減算回路１０４及び第二の加減算回路１０５は、計算結果Ｐ０（ｔ＋１）を第一の比較回路１０６及び第一の選択回路１０８に出力する。第一の比較回路１０６は入力した２つのＰ０（ｔ＋１）の尤度を比較し、尤度の高いＰ０（ｔ＋１）をパスメトリックと判断する。ここで、比較回路１０６は比較結果として『０』または『１』を出力する。ここでは、第一の加減算回路１０４から入力されたＰ０（ｔ＋１）の尤度が高い場合は『０』を出力し、第二の加減算回路１０５から入力されたＰ０（ｔ＋１）の尤度が高い場合は『１』を出力する。第一のシフトレジスタ１０７は、第一の比較回路１０６から出力される比較結果を蓄え、格納し得るビット数を１単位として第一のデータバス１０１に出力する。第一の選択回路１０８は第一の比較回路１０６から比較結果を入力し、第一の比較回路１０６において尤度が高いと判断されたＰ０（ｔ＋１）を選択・出力する。選択結果格納用記憶回路１０９は第一の比較回路１０６から入力されたＰ０（ｔ＋１）を記憶する。
【００１３】
次に、ステップ（２）の動作について説明する。ここで、加減算データ記憶回路１０３、第一の加減算回路１０４及び第二の加減算回路１０５はステップ（１）で入力されたパスメトリック値及びブランチメトリック値をそのまま保持している。そして、第一の加減算回路１０４は、式Ｐ０（ｔ）−Ｂ０（ｔ＋１）を計算してＰ４（ｔ＋１）を求める。また、第二の加減算回路１０５は、式Ｐ１（ｔ）＋Ｂ０（ｔ＋１）を計算してＰ４（ｔ＋１）を求める。ここで、第一の比較回路１０６等の動作は、ステップ（１）と同様である。
【００１４】
同様にステップ（３）を行い、パスメトリックＰ１（ｔ＋１）を求める。
【００１５】
次に、ステップ（４）の動作について説明する。ステップ（１）と同様に、第一の加減算回路１０４はＰ２（ｔ）を入力し、第二の加減算回路１０５はＰ３（ｔ）を入力し、加減算データ記憶回路１０３はＢ１（ｔ＋１）を入力・記憶する。そして、第一の加減算回路１０４は式Ｐ２（ｔ）＋Ｂ１（ｔ＋１）を計算し、第二の加減算回路１０５は式Ｐ３（ｔ）−Ｂ１（ｔ＋１）を計算して、各々Ｐ５（ｔ＋１）を求める。ここで、第一の比較回路１０６等の動作は、ステップ（１）と同様である。また、ステップ（４）では、パスメトリックＰ５（ｔ＋１）を求めると同時に、ステップ（１）及び（３）で求められたパスメトリックＰ０（ｔ＋１）及びＰ１（ｔ＋１）を用いてパスメトリックＰ０（ｔ＋２）を求める。
【００１６】
以下、パスメトリックＰ０（ｔ＋２）を求める動作を説明する。選択結果格納用記憶回路１０９は記憶していたパスメトリックＰ０（ｔ＋１）を第三の加減算回路１１０に出力し、Ｐ１（ｔ＋１）を第四の加減算回路１１１に出力する。第三の加減算回路１１０及び第四の加減算回路１１１は、第二のデータバス１０２からブランチメトリックＢ０（ｔ＋２）を入力する。そして、第三の加減算回路１１０は式Ｐ０（ｔ＋１）＋Ｂ０（ｔ＋２）を計算し、第四の加減算回路１１１は式Ｐ１（ｔ＋１）−Ｂ０（ｔ＋２）を計算して、各々Ｐ０（ｔ＋２）を求め、出力する。そして、第三の加減算回路１１０及び第四の加減算回路１１１は、計算結果Ｐ０（ｔ＋２）を第二の比較回路１１２及び第二の選択回路１１４に出力する。第二の比較回路１１２は入力した２つのＰ０（ｔ＋２）の尤度を比較し、尤度の高いＰ０（ｔ＋２）をパスメトリックと判断する。ここで、第二の比較回路１１２は比較結果として『０』または『１』を出力し、ここでは、第三の加減算回路１１０から入力されたＰ０（ｔ＋２）の尤度が高い場合は『０』を出力し、第四の加減算回路１１１から入力されたＰ０（ｔ＋２）の尤度が高い場合は『１』を出力する。第二のシフトレジスタ１１３は、第二の比較回路１１２から比較結果を入力し、格納し得るビット数を１単位として第二のデータバス１０２に出力する。第二の選択回路１１４は第二の比較回路１１２から比較結果を入力し、第二の比較回路１１２において尤度が高いと判断されたＰ０（ｔ＋２）を選択して第二のデータバス１０２に出力する。以上の動作によりパスメトリックＰ０（ｔ＋２）は求められる。
【００１７】
以下同様に、ステップ（５）においてパスメトリックＰ２（ｔ＋１）及びＰ４（ｔ＋２）を同時に求め、ステップ（６）においてパスメトリックＰ６（ｔ＋１）及びＰ２（ｔ＋２）を同時に求め、ステップ（７）においてパスメトリックＰ３（ｔ＋１）及びＰ６（ｔ＋２）を同時に求め、ステップ（８）においてパスメトリックＰ７（ｔ＋１）及びＰ１（ｔ＋２）を同時に求める。そして、ステップ（９）においてパスメトリックＰ５（ｔ＋２）を求め、ステップ（１０）においてパスメトリックＰ３（ｔ＋２）を求め、ステップ（１１）においてパスメトリックＰ７（ｔ＋２）を求める。以上により、時刻ｔから時刻ｔ＋２の各状態におけるパスメトリックが求められる。
【００１８】
次に、本発明のディジタル演算回路の第二の実施例を図面を参照して説明する。ここで、図３は第二の実施例の詳細構成を示すブロック図であり、図１と同一、対応部分には、同一符号を付して示している。
【００１９】
初めに、本発明のディジタル演算回路の第二の実施例の構成を説明する。本発明のディジタル演算回路は、第一のデータバス１０１と、第二のデータバス１０２と、加減算データ記憶回路１０３と、第一の加減算回路１０４と、第二の加減算回路１０５と、第一の比較回路１０６と、第一のシフトレジスタ１０７と、第一の選択回路１０８と、選択結果格納用記憶回路１０９と、第二の加減算データ記憶回路３０１と、第三の加減算回路１１０と、第四の加減算回路１１１と、第二の比較回路１１２と、第二のシフトレジスタ１１３と、第二の選択回路１１４とにより構成される。
【００２０】
第一のデータバス１０１は加減算データ記憶回路１０３及び第一の加減算回路１０４と接続され、加減算データ記憶回路１０３は第一の加減算回路１０４及び第二の加減算回路１０５と接続される。第一の加減算回路１０４及び第二の加減算回路１０５は第一の比較回路１０６及び第一の選択回路１０８と接続され、第一の比較回路１０６は第一のシフトレジスタ１０７及び第一の選択回路１０８と接続される。第一のシフトレジスタ１０７は第一のデータバス１０１と接続され、第一の選択回路１０８は選択結果格納用記憶回路１０９と接続される。選択結果格納用記憶回路１０９は第三の加減算回路１１０及び第四の加減算回路１１１と接続され、第三の加減算回路１１０及び第四の加減算回路１１１は第二の比較回路１１２及び第二の選択回路１１４と接続される。第二の比較回路１１２は第二のシフトレジスタ１１３及び第二の選択回路１１４と接続される。第二のシフトレジスタ１１３は第二のデータバス１０２に準ずるビット幅を有し、第二の選択回路１１４とともに第二のデータバス１０２と接続される。第二のデータバス１０２は第二の加減算回路１０５及び第二の加減算データ記憶回路３０１と接続され、第二の加減算データ記憶回路３０１は第三の加減算回路１１０及び第四の加減算回路１１１と接続される。
【００２１】
次に、時刻ｔから時刻ｔ＋２までにおける本発明のディジタル演算回路の動作を説明する。第二の加減算データ記憶回路３０１を除いては、第一の実施例と同様な動作である。そのため、第二の加減算データ記憶回路３０１の動作についてのみ以下に説明する。第二の加減算データ記憶回路３０１は第二のデータバス１０２からブランチメトリックを入力して記憶し、記憶したブランチメトリックを第三の加減算回路１１０及び第四の加減算回路１１１に出力する。
【００２２】
このように、第二の加減算データ記憶回路３０１を設けると、第一の実施例とは異なり、第三の加減算回路１１０及び第四の加減算回路１１１にブランチメトリックを入力するごとに、図示しないメモリ等からブランチメトリックを読み出す必要がなくなる。そのため、ブランチメトリックを読み出す処理時間が短縮される。
【００２３】
【発明の効果】
本発明は以上説明したように構成されているので、従来２つの時刻におけるパスメトリックを算出するのに１６ステップかかっていたが、１１ステップと大幅にステップ数が削減されるため、処理時間が短縮される。なお、この実施例では、状態数８（拘束長Ｋ＝４）の場合について記載しているため、５ステップ数の削減になっているが、北米規格ＣＤＭＡ方式では状態数２５６（拘束長Ｋ＝９）であることより、ステップ数は５１２ステップから２５９ステップとなり、約半数に削減できる。
【００２４】
また、計算及び選択されたパスメトリックは、メモリに格納され、従来では各時刻毎に状態Ｓ０、Ｓ１、…の順番に並び替えが行われていたが、本発明によれば、並び替えが２時刻に１回となり、並び替えにかかるステップ数が半減できる。
【図面の簡単な説明】
【図１】本発明のディジタル演算回路の第一の実施例を示すブロック図である。
【図２】本発明のディジタル演算回路の動作を示すトレリス図である。
【図３】本発明のディジタル演算回路の第二の実施例を示すブロック図である。
【図４】従来のディジタル演算回路の動作を示すトレリス図である。
【符号の説明】
１０３、３０１  加減算データ記憶回路
１０４、１０５、１１０、１１１  加減算回路
１０６、１１２  比較回路
１０８、１１４  選択回路
１０９  選択結果格納用記憶回路
【図１】
0003711290.tif 000002
【図２】
0003711290.tif 000003
【図３】
0003711290.tif 000004
【図４】
0003711290.tif 000005