(57)【特許請求の範囲】
【請求項１】
入力された第１の複素数の実数値と虚数値の和と差を計算し出力する第１の和差演算回路と、
入力された第２の複素数の実数値と虚数値の和と差を計算し出力する第２の和差演算回路と、
前記第１の和差演算回路の和または差のどちらか一方の出力と前記第２の和差演算回路の和または差のどちらか一方の出力を乗算し出力する第１の乗算器と、
前記第１の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力と前記第２の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力を乗算し出力する第２の乗算器と、
前記第１の乗算器の出力と前記第２の乗算器の出力の和と差を計算し出力する第３の和差演算回路と、
前記第１の和差演算回路と前記第２の和差演算回路から得た２入力値を乗算し４倍したものを前記第３の和差演算回路の１つの出力値に加減算を行ったうえで１／２倍あるいは−１／２倍した値と、
前記第３の和差演算回路のもう一方の出力値に１／２倍あるいは−１／２倍した値を、前記第１の複素数と前記第２の複素数の複素乗算結果として出力する補正項演算回路と、
を備えたことを特徴とする複素乗算器。
【請求項２】
入力された第１の複素数の実数値と虚数値の和と差を計算し出力する第１の和差演算回路と、
入力された第２の複素数の実数値と虚数値の和と差を計算し出力する第２の和差演算回路と、
前記第１の和差演算回路の和または差のどちらか一方の出力と前記第２の和差演算回路の和または差のどちらか一方の出力を乗算し出力する第１の乗算器と、
前記第１の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力と前記第２の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力を乗算し出力する第２の乗算器と、
前記第１の乗算器の出力と前記第２の乗算器の出力の和と差を計算し出力する第３の和差演算回路と、
前記第１の和差演算回路の２つの出力値の和または差と前記第２の和差演算回路の２つの出力値の和又は差を乗算したものを前記第３の和差演算回路の１つの出力値に加減算を行ったうえで１／２倍あるいは−１／２倍した値と、
前記第３の和差演算回路のもう一方の出力値に１／２倍あるいは−１／２倍した値を、前記第１の複素数と前記第２の複素数の複素乗算結果として出力する補正項演算回路と、
を備えたことを特徴とする複素乗算器。
【請求項３】
入力された複素数の実数値と虚数値の和と差を計算し出力する第１の和差演算回路と、
前記第１の和差演算回路の和の出力を入力する第１の実数相関器と、
前記第１の和差演算回路の差の出力を入力する第２の実数相関器と、
前記第１の和差演算回路より得た前記入力された複素数の実数値または虚数値を入力する第３の実数相関器と、
前記第１の実数相関器の出力と前記第２の実数相関器の出力を入力し和と差を計算して出力する第２の和差演算回路と、
前記第３の実数相関器の出力から補正値を演算し前記第２の和差演算回路の出力の実数値または虚数値に加減算を行い補正した値を複素相関演算結果として出力する補正項演算回路と、
を備えたことを特徴とする複素相関器。
【請求項４】
入力された複素数の実数値と虚数値の和を出力する第１の加算器と、
前記入力された複素数の実数値から虚数値を減算した結果を出力する第１の減算器と、
前記第１の加算器の出力値を入力するＮ（Ｎは１以上の整数）段の第１のシフトレジスタと、
第１のＮ個の値を記憶する第１の記憶回路と、
前記第１のシフトレジスタのｎ（ｎは１からＮまでの整数）番目のレジスタ値と前記第１の記憶回路のｎ番目の値を入力し乗算した結果を出力するＮ個の乗算器から成る第１の乗算器群と、
前記第１の乗算器群のＮ個の出力を加算する第１のＮ入力加算器と、
前記第１の減算器の出力値を入力するＮ段の第２のシフトレジスタと、
第２のＮ個の値を記憶する第２の記憶回路と、
前記第２のシフトレジスタのｎ番目のレジスタ値と前記第２の記憶回路のｎ番目の値を入力し乗算した結果を出力するＮ個の乗算器から成る第２の乗算器群と、
前記第２の乗算器群のＮ個の出力を加算する第２のＮ入力加算器と、
前記第１の記憶回路のｎ番目の値から前記第２の記憶回路のｎ番目の値をそれぞれ減算するＮ個の減算器から成る減算器群と、
前記第１のシフトレジスタのｎ番目のレジスタ値と前記第２のシフトレジスタのｎ番目のレジスタ値を入力し加算した結果をそれぞれ出力するＮ個の加算器から成る加算器群と、
前記減算器群の出力を前記加算器群の出力とそれぞれ乗算して出力するＮ個の乗算器から成る第３の乗算器群と、
前記第３の乗算器群のＮ個の出力を加算する第３のＮ入力加算器と、
前記第１のＮ入力加算器の出力と前記第２のＮ入力加算器の出力を入力し加算した結果を出力する第２の加算器と、
前記第１のＮ入力加算器の出力と前記第２のＮ入力加算器の出力を入力し前記第１のＮ入力加算器の出力値から前記第２のＮ入力加算器の出力値を減算した結果を出力する第２の減算器と、
前記第２の減算器の出力と前記第３のＮ入力加算器の出力を入力し前記第２の減算器の出力値から前記第３のＮ入力加算器の出力値を減算した結果を出力する第３の減算器とから構成され、
前記第２の加算器の出力を複素相関演算結果の実数値出力とし、前記第３の減算器の出力を複素相関演算結果の虚数値出力とする
ことを特徴とする複素相関器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
デイシタル回路により複素信号の乗算を行うディジタル複素乗算器、または入力複素信号と複素信号系列との複素相関演算を行うディジタル複素相関器に関する。これらの複素乗算や複素相関処理は一般的なディジタル演算処理であり、ディジタル変調を行うディジタル通信装置でも一般的に複数必要とされる演算である。
【０００２】
【従来の技術】
従来の複素乗算回路は、図６に示す構成にて実現される。第１の複素数Ｉ＋ｊＱ（ｊは虚数単位）と第２の複素数ａ＋ｊｂの複素乗算結果は（Ｉａ−Ｑｂ）＋ｊ（Ｑａ＋Ｉｂ）であるので、各項を算出する４つの乗算器６１〜６４と、乗算器６１，６２の算出結果を差し引いて実数項を求める減算器６５と、乗算器６３，６４の算出結果を加えて虚数項を求める加算器６６とを図６に示すように接続し、複素乗算器を構成する。
【０００３】
一方、従来の複素相関器は、図７に示す構成にて実現される。入力複素信号をＩ（ｔ）＋ｊＱ（ｔ）とし、複素相関器の複素係数をａn＋ｊｂn（０≦ｎ≦Ｎ−１、Ｎは相関器の段数）とすると、複素相関器は、４つの実数相関器７１〜７４と、実数相関器７１，７２の結果を差し引いて実数項を求める減算器７５と、実数相関器７３，７４の結果を加えて虚数項を求める加算器７６とを図７のように接続し、構成できる。
【０００４】
【発明が解決しようとする課題】
図６に示したように、従来の複素乗算器には４つの乗算器を用いる。ディジタル回路において乗算器は加算器や減算器などに比べて所要のゲート数が非常に大きいため、乗算器の必要数はディジタル回路の回路規模を大きく左右する。複素数を取り扱うディジタル演算処理において複素乗算は極めて一般的な処理であり、複素乗算演算に必要となる乗算器の個数を低減することは回路全体のゲート規模に大きな影響を与える。
【０００５】
本発明は、従来４つの乗算器が必要であった複素乗算演算を３つの乗算器により行うディジタル複素乗算器を提供することを第１の課題とする。
【０００６】
また、図７に示したように、従来の複素相関器には４つの実数相関器を用いる。Ｎ段の実数相関器は各段に係数を乗算する乗算器を持つため、非常に回路規模が大きい。
【０００７】
本発明は、従来４つの実数相関器が必要であった複素相関器を３つの実数相関器を用いて小さい回路規模にて実現するディジタル複素相関器を提供することを第２の課題とする。
【０００８】
【課題を解決するための手段】
上述の第１の課題を解決するため、本発明の複素乗算器は、入力された第１の複素数の実数値と虚数値の和と差を計算し出力する第１の和差演算回路と、入力された第２の複素数の実数値と虚数値の和と差を計算し出力する第２の和差演算回路と、前記第１の和差演算回路の和または差のどちらか一方の出力と前記第２の和差演算回路の和または差のどちらか一方の出力を乗算し出力する第１の乗算器と、前記第１の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力と前記第２の和差演算回路の出力のうち前記第１の乗算器に入力されなかった和または差のどちらか一方の出力を乗算し出力する第２の乗算器と、前記第１の乗算器の出力と前記第２の乗算器の出力の和と差を計算し出力する第３の和差演算回路と、前記第１の和差演算回路と前記第２の和差演算回路から得た２入力値を乗算し４倍したものを前記第３の和差演算回路の１つの出力値に加減算を行ったうえで１／２倍あるいは−１／２倍した値と、前記第３の和差演算回路のもう一方の出力値に１／２倍あるいは−１／２倍した値を、前記第１の複素数と前記第２の複素数の複素乗算結果として出力する補正項演算回路と、を備えたことを特徴とする。あるいは、前記第１の和差演算回路の２つの出力値の和または差と前記第２の和差演算回路の２つの出力値の和又は差を乗算したものを前記第３の和差演算回路の１つの出力値に加減算を行ったうえで１／２倍あるいは−１／２倍した値と、前記第３の和差演算回路のもう一方の出力値に１／２倍あるいは−１／２倍した値を、前記第１の複素数と前記第２の複素数の複素乗算結果として出力する補正項演算回路と、を備えたことを特徴とする。
【０００９】
また、上述の第２の課題を解決するため、本発明の複素相関器は、入力された複素数の実数値と虚数値の和と差を計算し出力する第１の和差演算回路と、前記第１の和差演算回路の和の出力を入力する第１の実数相関器と、前記第１の和差演算回路の差の出力を入力する第２の実数相関器と、前記第１の和差演算回路より得た前記入力された複素数の実数値または虚数値を入力する第３の実数相関器と、前記第１の実数相関器の出力と前記第２の実数相関器の出力を入力し和と差を計算して出力する第２の和差演算回路と、前記第３の実数相関器の出力から補正値を演算し前記第２の和差演算回路の出力の実数値または虚数値に加減算を行い補正した値を複素相関演算結果として出力する補正項演算回路と、を備えたことを特徴とする。
【００１０】
あるいは、入力された複素数の実数値と虚数値の和を出力する第１の加算器と、前記入力された複素数の実数値から虚数値を減算した結果を出力する第１の減算器と、前記第１の加算器の出力値を入力するＮ（Ｎは１以上の整数）段の第１のシフトレジスタと、第１のＮ個の値を記憶する第１の記憶回路と、前記第１のシフトレジスタのｎ（ｎは１からＮまでの整数）番目のレジスタ値と前記第１の記憶回路のｎ番目の値を入力し乗算した結果を出力するＮ個の乗算器から成る第１の乗算器群と、前記第１の乗算器群のＮ個の出力を加算する第１のＮ入力加算器と、前記第１の減算器の出力値を入力するＮ段の第２のシフトレジスタと、第２のＮ個の値を記憶する第２の記憶回路と、前記第２のシフトレジスタのｎ番目のレジスタ値と前記第２の記憶回路のｎ番目の値を入力し乗算した結果を出力するＮ個の乗算器から成る第２の乗算器群と、前記第２の乗算器群のＮ個の出力を加算する第２のＮ入力加算器と、前記第１の記憶回路のｎ番目の値から前記第２の記憶回路のｎ番目の値をそれぞれ減算するＮ個の減算器から成る減算器群と、前記第１のシフトレジスタのｎ番目のレジスタ値と前記第２のシフトレジスタのｎ番目のレジスタ値を入力し加算した結果をそれぞれ出力するＮ個の加算器から成る加算器群と、前記減算器群の出力を前記加算器群の出力とそれぞれ乗算して出力するＮ個の乗算器から成る第３の乗算器群と、前記第３の乗算器群のＮ個の出力を加算する第３のＮ入力加算器と、前記第１のＮ入力加算器の出力と前記第２のＮ入力加算器の出力を入力し加算した結果を出力する第２の加算器と、前記第１のＮ入力加算器の出力と前記第２のＮ入力加算器の出力を入力し前記第１のＮ入力加算器の出力値から前記第２のＮ入力加算器の出力値を減算した結果を出力する第２の減算器と、前記第２の減算器の出力と前記第３のＮ入力加算器の出力を入力し前記第２の減算器の出力値から前記第３のＮ入力加算器の出力値を減算した結果を出力する第３の減算器とから構成され、前記第２の加算器の出力を複素相関演算結果の実数値出力とし、前記第３の減算器の出力を複素相関演算結果の虚数値出力とすることを特徴とする。
【００１１】
本発明の複素乗算器では、第１、第２、第３の３個の乗算器を用いて複素乗算を実現することにより、回路規模の低減を図る。また、本発明の複素相関器では、第１、第２、第３の３個の実数相関器を用いて複素相関演算を実現することにより、回路規模の低減を図る。なお、上記において、第１のシフトレジスタ、第１の乗算器群、および第１のＮ入力加算器は第１の実数相関器に、第２のシフトレジスタ、第２の乗算器群、および第２のＮ入力加算器は第２の実数相関器に、減算器群、加算器群、および第３の乗算器群は第３の実数相関器に、それぞれ相当している。
【００１２】
【発明の実施の形態】
以下、本発明の実施の形態について図を用いて詳細に説明する。
【００１３】
本発明の複素乗算器の実施形態例のブロック構成を図１に示し、その動作例を以下に示す。
【００１４】
入力された第１の複素数をＩ＋ｊＱとし、第２の複素数をａ＋ｊｂとおく。第１の和差演算回路１１には第１の複素数Ｉ＋ｊＱが入力され、実数値Ｉと虚数値Ｑの和Ｉ＋Ｑと差Ｉ−Ｑが出力される。第２の和差演算回路１２には第２の複素数ａ＋ｊｂが入力され、実数値ａと虚数値ｂの和ａ＋ｂと差ａ−ｂが出力される。
【００１５】
第１の乗算器１３には第１の和差演算回路１１により得たＩ＋Ｑの値と第２の和差演算回路１２により得たａ＋ｂの値が入力され、両者の積（Ｉ＋Ｑ）（ａ＋ｂ）が出力される。第２の乗算器１４には第１の和差演算回路１１により得たＩ−Ｑの値と第２の和差演算回路１２により得たａ−ｂの値が入力され、両者の積（Ｉ−Ｑ）（ａ−ｂ）が出力される。
【００１６】
次に第３の和差演算回路１５には第１の乗算器１３により得た（Ｉ＋Ｑ）（ａ＋ｂ）の値と第２の乗算器１４により得た（Ｉ−Ｑ）（ａ−ｂ）の値が入力される。第３の和差演算回路１５の入力値の和は
（Ｉ＋Ｑ）（ａ＋ｂ）＋（Ｉ−Ｑ）（ａ−ｂ）＝２（Ｉａ＋Ｑｂ）
となり、差は
（Ｉ＋Ｑ）（ａ＋ｂ）−（Ｉ−Ｑ）（ａ−ｂ）＝２（Ｑａ＋Ｉｂ）
となる。ここで、所望の複素乗算結果は
（Ｉ＋ｊＱ）（ａ＋ｊｂ）＝Ｉａ−Ｑｂ＋ｊ（Ｑａ＋Ｉｂ）
であり、虚数項は第３の和差演算回路１５の差の出力信号の１／２の値である。１／２倍の演算は１ビットシフト操作により容易に得られるため、補正項演算回路１６は第３の和差演算回路１５の差の出力信号を１／２倍した値を複素乗算結果の虚数項として出力する。一方、所望の実数項はＩａ−Ｑｂであり、第３の和差演算回路１５の和の出力信号から４Ｑｂを減算し、１／２倍した値である。この補正項４Ｑｂは補正項演算回路１６にて第１の和差演算回路１１より得たＱの値と第２の和差演算回路１２より得たｂの値を乗算して得ることができ、補正項演算回路１６は第３の和差演算回路１５の和の出力信号から４Ｑｂを減算し、１／２倍した値を複素乗算結果の実数項として出力する。
【００１７】
以上のように図１に示した回路構成を用いると、第１および第２の乗算器と補正項演算回路に含まれる１つの乗算器の計３個の乗算器を用いて複素乗算演算を実現することができる。
【００１８】
上記の複素乗算器の動作例を実現するさらに具体的な回路構成例を図４に示す。図４では和差演算回路を構成する加算器と減算器や補正項演算回路の内部構成や接続を明示した。
【００１９】
第１の乗算器４３には第１の和差演算回路４１により得たＩ＋Ｑの値と第２の和差演算回路４２により得たａ＋ｂの値が入力され、両者の積（Ｉ＋Ｑ）（ａ＋ｂ）が出力されている。第２の乗算器４４には第１の和差演算回路４１により得たＩ−Ｑの値と第２の和差演算回路４２により得たａ−ｂの値が入力され、両者の積（Ｉ−Ｑ）（ａ−ｂ）が出力されている。
【００２０】
第１、第２の乗算器４３，４４の出力は和差演算後、補正項演算回路４６に入力され、補正項演算回路４６は第３の和差演算回路４５の差の出力信号を１／２倍した値を複素乗算結果の虚数項として出力する。また、補正項演算回路４６は第１、第２の和差演算回路４１，４２の入力信号よりＱおよびｂの値を得て、両者を乗算後４倍して求めた４Ｑｂの値を第３の和差演算回路４５の和の出力値より減算し、１／２倍した値を複素乗算結果の実数項として出力する。
【００２１】
ところで、補正項演算回路が必要とするＱおよびｂの値は第１および第２の和差演算回路の出力値の差を求めることによっても得ることができる。この場合の回路構成例を図５に示す。
【００２２】
図５の回路構成例では、第１の和差演算回路５１において、その出力値の差から２Ｑの値を得、第２の和差演算回路５２において、その出力値の差から２ｂの値を得、補正項演算回路５６において、両者を乗算して４Ｑｂの値を得る。他は図４の動作例と同様である。ただし、図５において、第１の乗算器は５３、第２の乗算器は５４、第３の和差演算回路は５５で示してある。
【００２３】
ここで、以上の動作例は、第１の乗算器は第１の和差演算回路の和の出力値と第２の和差演算回路の和の出力値を乗算し、第２の乗算器は第１の和差演算回路の差の出力値と第２の和差演算回路の差の出力値を乗算する場合の動作例であるが、乗算演算の組み合わせ項を入れ替えた場合でも同様の演算が可能である。すなわち、第１の乗算器は第１の和差演算回路の和の出力値Ｉ＋Ｑと第２の和差演算回路の差の出力値ａ−ｂを乗算し、第２の乗算器は第１の和差演算回路の差の出力値Ｉ−Ｑと第２の和差演算回路の和の出力値ａ＋ｂを乗算する場合、第１の乗算器の出力値は（Ｉ＋Ｑ）（ａ−ｂ）となり、第２の乗算器の出力値は（Ｉ−Ｑ）（ａ＋ｂ）となる。従って、第３の和差演算回路の和の出力値は
（Ｉ＋Ｑ）（ａ−ｂ）＋（Ｉ−Ｑ）（ａ＋ｂ）＝２（Ｉａ−Ｑｂ）
となり、差の出力値は
（Ｉ＋Ｑ）（ａ−ｂ）−（Ｉ−Ｑ）（ａ＋ｂ）＝２（−Ｉｂ＋Ｑａ）
となる。この場合、第３の和差演算回路の和の出力値は所望の複素乗算結果の実数項の１／２値に等しく、補正項演算回路は第３の和差演算回路の和の出力信号を１／２倍した値を複素乗算結果の実数項として出力する。一方、所望の複素乗算結果の虚数項はＱａ＋Ｉｂであり、第３の和差演算回路の差の出力信号に４Ｉｂを加算し、１／２倍した値である。この補正項４Ｉｂは補正項演算回路にて第１の和差演算回路より得たＩの値と第２の和差演算回路より得たｂの値を乗算して得ることができ、あるいは、図５と同様にしても得ることができ、補正項演算回路は第３の和差演算回路の和の出力信号に４Ｉｂを加算し、１／２倍した値を複素乗算結果の虚数項として出力する。
【００２４】
また、以上の動作例は、第１の和差演算回路の差の出力値はＩ−Ｑの値を出力し、第２の和差演算回路の差の出力値はａ−ｂの値を出力する場合の動作例であるが、例えば、第１の和差演算回路の差の出力値がＱ−Ｉの値を出力する場合など、差分演算の極性が異なる場合でも有効である。すなわち、第１の和差演算回路の差の出力値がＩ−Ｑの値を出力し、第２の和差演算回路の差の出力値がｂ−ａの値を出力し、第１の乗算器が（Ｉ＋Ｑ）（ｂ−ａ）を演算し、第２の乗算器が（Ｉ−Ｑ）（ａ＋ｂ）を演算する場合には、第３の和差演算回路の和の出力値は２（Ｉｂ−Ｑａ）であり、差の出力値は２（−Ｉａ＋Ｑｂ）となるため、補正項演算回路は第３の和差演算回路の差の出力信号を−１／２倍した値を複素乗算結果の実数項として出力し、第３の和差演算回路の和の出力信号に４Ｑａを加算し、１／２倍した値を複素乗算結果の虚数項として出力する。
【００２５】
以上のように第１、第２の乗算器の入力の組み合わせや差分演算の極性の違いによって、様々な構成が考えられるが、いずれも補正項演算回路にて演算する補正項の設定により、複素乗算演算を実現することができる。
【００２６】
さらに、複素乗算演算には片方の入力複素数の共役複素数との乗算を行う場合も頻繁であるが、この場合にも同様の回路構成にて共役複素乗算演算が可能である。
【００２７】
本発明の複素相関器の第１の実施形態例の構成を図２に示し、その動作を以下に示す。
【００２８】
入力複素信号をＩ（ｔ）＋ｊＱ（ｔ）とし、複素相関器の複素係数をａn−ｊｂn（０≦ｎ≦Ｎ−１、Ｎは相関器の段数）とすると、複素相関器の出力信号は次式のように表される。
【００２９】
Σn=0N-1｛（Ｉ（ｔ−ｎＴ）ａn＋Ｑ（ｔ−ｎＴ）ｂn）＋ｊ（Ｑ（ｔ−ｎＴ）ａn−Ｉ（ｔ−ｎＴ）ｂn）｝
この演算を実現するため、入力複素信号Ｉ（ｔ）＋ｊＱ（ｔ）の実数値Ｉ（ｔ）と虚数値Ｑ（ｔ）は第１の和差演算回路２１に入力され、第１の和差演算回路２１は和の出力Ｉ（ｔ）＋Ｑ（ｔ）と差の出力Ｉ（ｔ）−Ｑ（ｔ）を出力する。和差演算回路２１の和の出力Ｉ（ｔ）＋Ｑ（ｔ）は、相関係数をａn＋ｂn（０≦ｎ≦Ｎ−１、Ｎは相関器の段数）に設定した第１の実数相関器２２に入力される。また、和差演算回路２１の差の出力Ｉ（ｔ）−Ｑ（ｔ）は、相関係数をａn−ｂn（０≦ｎ≦Ｎ−１）に設定した第２の実数相関器２３に入力される。その結果、第１の実数相関器２２の出力信号は
Σn=0N-1（ａn＋ｂn）（Ｉ（ｔ−ｎＴ）＋Ｑ（ｔ−ｎＴ））
となり、第２の実数相関器２３の出力信号は
Σn=0N-1（ａn−ｂn）（Ｉ（ｔ−ｎＴ）−Ｑ（ｔ−ｎＴ））
となる。
【００３０】
これら第１、第２の実数相関器２２，２３の出力信号は第２の和差演算回路２５に入力され、第２の和差演算回路２５の和の出力信号は
Σn=0N-1｛２（Ｉ（ｔ−ｎＴ）ａn＋Ｑ（ｔ−ｎＴ）ｂn）｝
となり、差の出力信号は
Σn=0N-1｛２（Ｑ（ｔ−ｎＴ）ａn＋Ｉ（ｔ−ｎＴ）ｂn）｝
となる。
【００３１】
ここで、第２の和差演算回路２５の和の出力信号は所望の複素相関器の出力信号の実数値の２倍の値であるので、補正項演算回路２６は第２の和差演算回路２５の和の出力信号を１／２倍した値を複素相関演算結果の実数項として出力する。
【００３２】
一方、第２の和差演算回路２５の差の出力信号と所望の相関演算結果の虚数項の２倍の値との差分は
Σn=0N-1（４Ｉ（ｔ−ｎＴ）ｂn）
であり、この補正項は４ｂn（０≦ｎ≦Ｎ−１）を相関係数とする第３の実数相関器２４にＩ（ｔ）を入力して得る。従って、補正項演算回路２６は第２の和差演算回路２５の差の出力信号から第３の実数相関器２４の出力信号を減算し、その出力を１／２倍した値を複素相関演算結果の虚数項として出力する。
【００３３】
上記の実施形態例は、第１の和差演算回路の差の出力値はＩ−Ｑの値を出力する場合の実施形態例であり、第２の相関器の相関係数をａn−ｂn（０≦ｎ≦Ｎ−１）に設定した場合の例を示したが、複素乗算器の場合と同様にこれらの差分演算の極性が異なる場合でも補正項演算回路にて演算する補正項の設定により、複素相関演算を実現することができる。
【００３４】
本発明の複素相関器の第２の実施形態例の構成を図３に示し、その動作を以下に示す。
【００３５】
図３に示した実施形態例は、図２の実施形態例のように３つの実数相関器を備えるのではなく、補正項演算のための第３の実数相関器の一部を第１、第２の実数相関器と兼用する回路構成である。具体的には、実数相関器を構成するＮ段のシフトレジスタと係数を記憶するＮ個の記憶回路とＮ個の乗算器とＮ入力の加算器のうち、Ｎ段のシフトレジスタとＮ個の記憶回路を第１および第２の実数相関器のＮ段のシフトレジスタとＮ個の記憶回路の値から演算して用いる回路構成である。
【００３６】
すなわち、図３に示すように、入力された複素信号系列Ｉ（ｔ）＋ｊＱ（ｔ）の実数値Ｉ（ｔ）と虚数値Ｑ（ｔ）の和Ｉ（ｔ）＋Ｑ（ｔ）を出力する加算器と、前記入力された複素信号系列Ｉ（ｔ）＋ｊＱ（ｔ）の実数値Ｉ（ｔ）から虚数値Ｑ（ｔ）を減算した結果Ｉ（ｔ）−Ｑ（ｔ）を出力する減算器により第１の和差演算回路３１が構成されており、第１の和差演算回路３１の和の出力値Ｉ（ｔ）＋Ｑ（ｔ）は第１の実数相関器を構成するＮ（Ｎは１以上の整数）段の第１のシフトレジスタ３２１に入力され、第１の和差演算回路３１の差の出力値Ｉ（ｔ）−Ｑ（ｔ）は第２の実数相関器を構成するＮ（Ｎは１以上の整数）段の第２のシフトレジスタ３３１に入力される。
【００３７】
第１の実数相関器のＮ個の相関係数ａn＋ｂn（０≦ｎ≦Ｎ−１）は第１の記憶回路（図略）に保持されており、第１のシフトレジスタ３２１のｎ（ｎは１からＮまでの整数）番目のレジスタ値と前記第１の記憶回路のｎ番目の値がＮ個の乗算器から成る第１の乗算器群３２２にそれぞれを入力される。次に前記第１の乗算器群３２２のＮ個の出力値はそれらを全て加算する第１のＮ入力加算器３２３に入力され、第１のＮ入力加算器３２３の出力信号は第１の実数相関器の出力信号として出力される。
【００３８】
同様に第２のシフトレジスタ３３１のｎ番目のレジスタ値はそれぞれＮ個の第２の乗算器群３３２に入力され、第２の記憶回路（図略）に記憶された相関係数ａn−ｂn（０≦ｎ≦Ｎ−１）とそれぞれ乗算される。前記第２の乗算器群３３２のＮ個の出力は第２のＮ入力加算器３３３により加算され、その結果は第２の実数相関器の出力信号として出力される。
【００３９】
補正項を演算する第３の実数相関器の代わりとして、まずＮ個の加算器群３４１により第１のシフトレジスタ３２１のｎ番目のレジスタ値Ｉ（ｔ−ｎＴ）＋Ｑ（ｔ−ｎＴ）と第２のシフトレジスタ３３１のｎ番目のレジスタ値Ｉ（ｔ−ｎＴ）−Ｑ（ｔ−ｎＴ）をそれぞれ加算し２Ｉ（ｔ−ｎＴ）を得る。また、第１の記憶回路に保持された相関係数ａn＋ｂn（０≦ｎ≦Ｎ−１）と第２の記憶回路に保持された相関係数ａn−ｂn（０≦ｎ≦Ｎ−１）をＮ個の減算器群３４２にそれぞれ入力し、Ｎ個の相関係数２ｂn（０≦ｎ≦Ｎ−１）を得る。次にＮ個の加算器群３４１の出力値２Ｉ（ｔ−ｎＴ）とＮ個の減算器群３４２の出力値２ｂnは第３の乗算器群３４３にそれぞれ入力され、前記Ｎ個の第３の乗算器群３４３の出力値４Ｉ（ｔ−ｎＴ）ｂnは全て第３のＮ入力加算器３４４に入力され、第３のＮ入力加算器３４４の出力値は第３の実数相関器の出力値として出力される。
【００４０】
その後、第１の実数相関器の出力、すなわち第１のＮ入力加算器３２３の出力信号と第２の実数相関器の出力、すなわち第２のＮ入力加算器３３３の出力信号は第２の和差演算回路３５に入力される。第２の和差演算回路３５の和の出力値は
Σn=0N-1｛２（Ｉ（ｔ−ｎＴ）ａn＋Ｑ（ｔ−ｎＴ）ｂn）｝
となり、差の出力信号は
Σn=0N-1｛２（Ｑ（ｔ−ｎＴ）ａn＋Ｉ（ｔ−ｎＴ）ｂn）｝
となる。
【００４１】
ここで、第２の和差演算回路３５の和の出力信号は所望の複素相関器の出力信号の実数値の２倍の値であるので、補正項演算回路３６は第２の和差演算回路３５の和の出力信号を１／２倍した値を複素相関演算結果の実数項として出力する。
【００４２】
一方、第２の和差演算回路３５の差の出力信号と所望の相関演算結果の虚数項の２倍の値との差分は
Σn=0N-1（４Ｉ（ｔ−ｎＴ）ｂn）
であり、この補正項は第３の実数相関器の出力信号、すなわち第３のＮ入力加算器３４４の出力値に等しい。従って、補正項演算回路３６は第２の和差演算回路３５の差の出力信号から第３の実数相関器の出力信号を減算し、その出力を１／２倍した値を複素相関演算結果の虚数項として出力する。
【００４３】
上記の実施形態例は、第１の和差演算回路の差の出力値はＩ−Ｑの値を出力する場合の実施形態例であり、第２の相関器の相関係数をａn−ｂn（０≦ｎ≦Ｎ−１）に設定した場合の例を示したが、複素乗算器の場合と同様にこれらの差分演算の極性が異なる場合でも補正項演算回路にて演算する補正項の設定により、複素相関演算を実現することができる。
【００４４】
以上の実施形態例では定数係数の相関器を示したが、外部入力した２つの時系列信号の相関値を演算するコンボルバ（畳み込み演算器）も同様の方法を用いて回路規模の簡易化が可能である。
【００４５】
【発明の効果】
以上述べたように、本発明によれば、従来４個の乗算器を含む回路構成にて実現していた複素乗算器を、３個の乗算器を用いた回路構成にて実現可能であり、複素乗算処理を合むディジタル回路の回路規模を低減することができる。また、複素相関器についても、従来４個の実数相関器を含む回路構成にて実現していたものを、３個の実数相関器を用いた回路構成にて実現可能であり、同様に回路規模の低減が可能である。
【図面の簡単な説明】
【図１】本発明の複素乗算器の一実施形態例を示す構成図
【図２】本発明の複素相関器の第１の実施形態例を示す構成図
【図３】本発明の複素相関器の第２の実施形態例を示す回路構成図
【図４】上記複素乗算器の実施形態例の具体的な一回路構成例を示す図
【図５】上記複素乗算器の実施形態例の具体的な別の回路構成例を示す図
【図６】従来の複素乗算器の構成図
【図７】従来の複素相関器の構成図
【符号の説明】
１１…第１の和差演算回路
１２…第２の和差演算回路
１３…第１の乗算器
１４…第２の乗算器
１５…第３の和差演算回路
１６…補正項演算回路
２１…第１の和差演算回路
２２…第１の実数相関器
２３…第２の実数相関器
２４…第３の実数相関器
２５…第２の和差演算回路
２６…補正項演算回路
３１…第１の和差演算回路
３２１…第１のシフトレジスタ
３２２…第１の乗算器群
３２３…第１のＮ入力加算器
３３１…第２のシフトレジスタ
３３２…第２の乗算器群
３３３…第２のＮ入力加算器
３４１…Ｎ個の加算器群
３４２…Ｎ個の減算器群
３４３…第３の乗算器群
３４４…第３のＮ入力加算器
３５…第２の和差演算回路
３６…補正項演算回路
４１…第１の和差演算回路
４２…第２の和差演算回路
４３…第１の乗算器
４４…第２の乗算器
４５…第３の和差演算回路
４６…補正項演算回路
５１…第１の和差演算回路
５２…第２の和差演算回路
５３…第１の乗算器
５４…第２の乗算器
５５…第３の和差演算回路
５６…補正項演算回路
【図１】
0003684314.tif 000002
【図２】
0003684314.tif 000003
【図３】
0003684314.tif 000004
【図４】
0003684314.tif 000005
【図５】
0003684314.tif 000006
【図６】
0003684314.tif 000007
【図７】
0003684314.tif 000008