(57)【特許請求の範囲】
【請求項１】
第１の入力に応じて制御量を決定する決定手段と、
前記第１の入力の極性に基づいて加算又は減算の判定を行う判定手段と、
第２の入力の信号レベルを１／２倍する１／２手段と、
前記第２の入力を前記決定手段によって決定された前記制御量に応じたシフト量だけシフトするシフト手段と、
前記判定手段の判定結果に基づいて前記シフト手段の出力と前記１／２手段の出力とを加算又は減算する演算手段と
を備えることを特徴とする信号処理回路。
【請求項２】
前記第２の入力は少なくとも２つの入力からなるとともに、この少なくとも２つの入力に対応して前記１／２手段、前記シフト手段および前記演算手段が少なくとも２系統設けられており、
前記少なくとも２系統の演算手段の各々において前記２つの入力のうちの一方の入力に対して加算を行った場合には他方の入力に対して減算を行い、一方の入力に対して減算を行った場合には他方の入力に対して加算を行う
ことを特徴とする請求項１記載の信号処理回路。
【請求項３】
請求項２記載の信号処理回路において、
前記少なくとも２系統の演算手段の各々の出力を加算して出力する加算手段を有する
ことを特徴とする信号処理回路。
【請求項４】
前記決定手段は、前記第１の入力と所定の参照値とを比較することによって前記制御量を決定する
ことを特徴とする請求項１記載の信号処理回路。
【請求項５】
前記決定手段は、前記第１の入力の絶対値と正の参照値とを比較することによって前記制御量を決定する
ことを特徴とする請求項４記載の信号処理回路。
【請求項６】
前記シフト手段は、その最大シフト量をＮ、前記制御量をｎ（Ｎ＞ｎ≧０）とするとき、前記第２の入力を（１／２）N-n 倍する
ことを特徴とする請求項１記載の信号処理回路。
【請求項７】
前記決定手段は、前記シフト手段の最大シフト量をＮ、前記制御量をｎ（Ｎ＞ｎ≧０）、前記参照値をＤとするとき、
前記第１の入力の絶対値が０≦ｊ＜Ｎを満たす整数値ｊに対してｊ×Ｄ／Ｎよりも大きくかつ（ｊ＋１）×（Ｄ／Ｎ）以下である場合にはｎ＝ｊとし、前記第１の入力が０の場合にはｎ＝０とし、前記第１の入力の絶対値が前記参照値Ｄよりも大きい場合にはｎ＝Ｎ−１とする
ことを特徴とする請求項５記載の信号処理回路。
【請求項８】
前記決定手段は、前記シフト手段の最大シフト量をＮ、前記制御量をｎ（Ｎ＞ｎ≧０）、前記参照値をＤとするとき、
前記第１の入力の絶対値が０≦ｊ＜Ｎを満たす整数値ｊに対してｊ×Ｄ／Ｎ以上でかつ（ｊ＋１）×（Ｄ／Ｎ）よりも小さい場合にはｎ＝ｊとし、前記第１の入力が０の場合にはｎ＝０とし、前記第１の入力の絶対値が前記参照値Ｄ以上の場合にはｎ＝Ｎ−１とする
ことを特徴とする請求項５記載の信号処理回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、２つの入力に対して所定の信号処理を行う信号処理回路に関し、特に２つの入力のうちの一方の入力とある参照値とを比較して係数を算出し、その算出した係数を他方の入力に掛け合わせる処理を行う信号処理回路に関する。
【０００２】
【従来の技術】
従来、この種の信号処理回路としては、例えば、入力Ａをある参照値Ｄと比較し、その比較結果を基に入力Ｂと入力Ｃとの混合比を変えて加算する処理を行う回路がある。その具体的な構成例としては、
▲１▼比較用にＲＯＭ(Read-Only Memory)などによるＬＵＴ(Look-Up Table) を用いて係数を算出し、この算出した係数を乗算器を用いて入力Ｂと入力Ｃに掛け合わせた後に加算する構成のもの
▲２▼入力Ａと参照値Ｄを比較する際に、除算器を用いて（Ａ／Ｄ）の計算を行って係数を算出し、この算出した係数を乗算器を用いて入力Ｂと入力Ｃに掛け合わせた後に加算する構成のもの
などが知られている。
【０００３】
【発明が解決しようとする課題】
しかしながら、ＲＯＭを使用した前者のＬＵＴ方式では、参照値Ｄに対応して予めＲＯＭに格納されている係数を用いることになるため、参照値Ｄを任意に変化させることが難しいという問題がある。一方、後者の方式では、除算器を使用するため、ゲート規模が大きくなるという問題がある。また、いずれの方式の場合でも、乗算器を使用していることから、回路規模の縮小化に有利なブースアルゴリズムなどを使用したとしてもゲート規模が大きくなってしまうという問題がある。
【０００４】
本発明は、上記課題に鑑みてなされたものであり、その目的とするところは、参照値を任意に変化させることが可能で、かつ、ゲート規模の小さい回路を実現可能な信号処理回路を提供することにある。
【０００５】
【課題を解決するための手段】
本発明による信号処理回路は、第１の入力に応じて制御量を決定する決定手段と、第１の入力の極性に基づいて加算又は減算の判定を行う判定手段と、第２の入力の信号レベルを１／２倍する１／２手段と、第２の入力を上記制御量に応じたシフト量だけシフトするシフト手段と、判定手段の判定結果に基づいてシフト手段の出力と１／２手段の出力とを加算又は減算する演算手段とを備えた構成となっている。
【０００６】
上記構成の信号処理回路において、第２の入力の信号レベルを１／２倍したものと、第１の入力に応じて決定された制御量に応じたシフト量だけシフトしたものとを、第１の入力の極性の判定結果に基づいて加算又は減算することで、第１の入力が０のときを基準として、第１の入力の正負のレベルに応じて第２の入力のレベルが連続的に変化する。
【０００７】
したがって、第２の入力を例えば２つとし、この２つの入力を混合する処理を行う際に、２つの入力のうちの一方の入力に対して加算を行った場合には他方の入力に対して減算を行い、一方の入力に対して減算を行った場合には他方の入力に対して加算を行うことで、上記制御量を基に２つの入力の混合比を変えて加える処理が行える。
【０００８】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。図１は、本発明の一実施形態を示すブロック図である。
【０００９】
図１から明らかなように、本実施形態に係る信号処理回路は、回路入力として入力Ａ、入力Ｂ、入力Ｃおよび参照値Ｄの４つを持ち、入力Ａと参照値Ｄを比較して係数１、係数２を算出し、その算出した係数１，２を（１）式のように入力Ｂと入力Ｃにそれぞれ掛け合わせた後加算して出力する構成を採っている。
出力＝係数１×入力Ｂ＋係数２×入力Ｃ      ……（１）
【００１０】
ここで、（係数１＋係数２）は常に一定であり、図２の特性図に示すように、通常は（係数１＋係数２）＝１．０である。図２の特性図において、実線が係数１を、一点鎖線が係数２をそれぞれ示している。ただし、システムの構成によっては、（係数１＋係数２）＝１．０とならない場合もあり得る。
【００１１】
図１において、入力Ａは絶対値化回路１１で絶対値化された後ｎ算出回路１２に供給されるとともに、正負判定回路１３で正極性であるか負極性であるかの判定が行われる。ｎ算出回路１２は、入力Ａの絶対値と正の参照値Ｄとを比較することによって制御量ｎ（ｎは整数）を算出する。このｎ算出回路１２の具体的な構成については後で詳細に説明する。
【００１２】
入力Ｂは、複数ビットのシフトが可能なバレルシフタ(barrel shifter)１４に供給されるとともに、１／２回路１５でその信号レベルが１／２倍された後加算／減算回路１６に供給される。バレルシフタ１４には、ｎ算出回路１２で算出された制御量ｎも入力される。バレルシフタ１４は、その最大シフト量をＮ（Ｎは整数）とすると、入力Ｂを制御量ｎの値に基づいて（１／２）N-n 倍して加算／減算回路１６に供給する。
【００１３】
入力Ｃも同様に、バレルシフタ１７に供給されるとともに、１／２回路１８でその信号レベルが１／２倍された後減算／加算回路１９に供給される。バレルシフタ１７にも、ｎ算出回路１２で算出された制御量ｎが入力される。バレルシフタ１９は、入力Ｃを制御量ｎの値に基づいて（１／２）N-n 倍して減算／加算回路１９に供給する。そして、加算／減算回路１６および減算／加算回路１９の各出力は、加算器２０で加算されて回路出力となる。
【００１４】
入力Ｂ用の加算／減算回路１６と入力Ｃ用の減算／加算回路１９とは、加算と減算の動作が逆になる。すなわち、入力Ｂ側が加算のときは入力Ｃ側は減算となり、逆に入力Ｂ側が減算のときは入力Ｃ側は加算となる。また、減算を行う場合は、（１／２回路１５，１８の出力値−バレルシフタ１４，１７の出力値）の処理となる。この加算／減算の制御は、正負判定回路１３の判定結果に基づいて行われる。
【００１５】
図３は、Ｎ＝８の場合のｎ算出回路１２の具体的な回路構成の一例を示すブロック図である。
【００１６】
図３において、入力Ａの絶対値は、７個のコンパレータ２１〜２７の各一方の入力Ａとなる。一方、参照値Ｄは、１ビットシフト回路２８、２ビットシフト回路２９および３ビットシフト回路３０に供給されるとともに、減算器３１，３２の各一方の入力となる。１ビットシフト回路２８で１ビット分シフトされた参照値Ｄは、加算器３３の一方の入力になるとともに、コンパレータ２４の他方の入力Ｂとなる。
【００１７】
２ビットシフト回路２９で２ビット分シフトされた参照値Ｄは、減算器３２の他方の入力および加算器３４の一方の入力になるとともに、コンパレータ２６の他方の入力Ｂとなる。３ビットシフト回路３０で３ビット分シフトされた参照値Ｄは、減算器３１、加算器３３および加算器３４の各他方の入力になるとともに、コンパレータ２７の他方の入力Ｂとなる。減算器３１，３２の各減算出力は、コンパレータ２１，２２の各他方の入力Ｂとなる。また、加算器３３，３４の各加算出力は、コンパレータ２３，２５の各他方の入力Ｂとなる。
【００１８】
以上説明した１ビットシフト回路２８、２ビットシフト回路２９、３ビットシフト回路３０、減算器３１，３２および加算器３３，３４により、参照値Ｄを８等分する回路が構成されている。
【００１９】
すなわち、参照値Ｄから３ビットシフト回路３０の出力を減算器３１で引いた結果が７Ｄ／８となり、参照値Ｄから２ビットシフト回路２９の出力を減算器３２で引いた結果が６Ｄ／８となり、１ビットシフト回路２８の出力と３ビットシフト回路３０の出力を加算器３３で足した結果が５Ｄ／８となり、１ビットシフト回路２８の出力がそのまま４Ｄ／８となり、２ビットシフト回路２９の出力と３ビットシフト回路３０の出力を加算器３４で足した結果が３Ｄ／８となり、２ビットシフト回路２９の出力がそのまま２Ｄ／８となり、３ビットシフト回路３０の出力がそのままＤ／８となる。そして、これらの各値がコンパレータ２１〜２７の各他方の入力Ｂとなる。
【００２０】
コンパレータ２１〜２７は、一方の入力Ａと他方の入力Ｂとを比較し、Ａ＞Ｂのとき、高レベルの比較結果を出力する。すなわち、入力Ａの絶対値が、７Ｄ／８よりも大のときコンパレータ２１が、６Ｄ／８よりも大のときコンパレータ２２が、５Ｄ／８よりも大のときコンパレータ２３が、４Ｄ／８よりも大のときコンパレータ２４が、３Ｄ／８よりも大のときコンパレータ２５が、２Ｄ／８よりも大のときコンパレータ２６が、Ｄ／８よりも大のときコンパレータ２７がそれぞれ比較結果を出力する。
【００２１】
コンパレータ２１の比較出力は、８ビット入力のデコーダ３５の８ビット目の入力になるとともに、インバータ３６を介してＡＮＤ回路３７の一方の入力となる。コンパレータ２２の比較出力は、ＡＮＤ回路３８の他方の入力になるとともに、インバータ３８を介してＡＮＤ回路３９の一方の入力となる。コンパレータ２３の比較出力は、ＡＮＤ回路３９の他方の入力になるとともに、インバータ４０を介してＡＮＤ回路４１の一方の入力となる。コンパレータ２４の比較出力は、ＡＮＤ回路４１の他方の入力になるとともに、インバータ４２を介してＡＮＤ回路４３の一方の入力となる。
【００２２】
コンパレータ２５の比較出力は、ＡＮＤ回路４３の他方の入力になるとともに、インバータ４４を介してＡＮＤ回路４５の一方の入力となる。コンパレータ２６の比較出力は、ＡＮＤ回路４５の他方の入力になるとともに、インバータ４６を介してＡＮＤ回路４７の一方の入力となる。コンパレータ２７の比較出力は、ＡＮＤ回路４７の他方の入力になるとともに、デコーダ３５の１ビット目の入力となる。ＡＮＤ回路３７，３９，４１，４３，４５，４７の各出力は、デコーダ３５の７ビット目、６ビット目、５ビット目、４ビット目、３ビット目、２ビット目の各入力となる。
【００２３】
以上により、デコーダ３５の８ビットの入力データは、入力Ａの絶対値が、７Ｄ／８よりも大のとき８ビット目が、６Ｄ／８よりも大のとき７ビット目が、５Ｄ／８よりも大のとき６ビット目が、４Ｄ／８よりも大のとき５ビット目が、３Ｄ／８よりも大のとき４ビット目が、２Ｄ／８よりも大のとき３ビット目が、Ｄ／８よりも大のとき２ビット目が、Ｄ／８以下のとき１ビット目がそれぞれ高レベルとなる。そして、デコーダ３５は、これら８ビットの入力データを３ビットのｎ値（制御量）にデコードする。
【００２４】
上記構成のｎ算出回路１２において、制御量ｎの設定を一般式で表わすと、参照値Ｄを最大シフト量Ｎで割ったものをＥとした場合、入力Ａの絶対値が０≦ｊ＜Ｎを満たす整数値ｊに対してｊ×Ｅよりも大きくかつ（ｊ＋１）×Ｅ以下である場合にはｎ＝ｊとし、入力Ａが０の場合にはｎ＝０とし、入力Ａの絶対値が参照値Ｄよりも大きい場合にはｎ＝Ｎ−１とする。なお、入力Ａの絶対値がｊ×Ｅ以上でかつ（ｊ＋１）×Ｅよりも小さい場合にはｎ＝ｊとし、入力Ａの絶対値が参照値Ｄ以上の場合にはｎ＝Ｎ−１とすることも可能である。
【００２５】
以上説明した本実施形態に係る信号処理回路において、絶対値化回路１１およびｎ算出回路１２により、係数１／係数２を決めるための制御量ｎの算出が行われることになる。係数１／係数２の特性は、実際には、制御量ｎとバレルシフタ１４，１７、１／２回路１５，１８および加算／減算（減算／加算）回路１６，１９の特性によって決まる。係数１／係数２は、入力Ａによって変化するが、入力Ａが正のときに係数１＞係数２になる設定とし、以下、係数１の特性について説明する。
【００２６】
なお、正負判定回路１３は入力Ａの正負の極性判定を行い、入力Ａが正極性の場合には加算／減算回路１６での演算を加算とし、減算／加算回路１９での演算を減算とし、また入力Ａが負極性の場合には加算／減算回路１６での演算を減算とし、減算／加算回路１９での演算を加算とする。
【００２７】
制御量ｎは、図３からも分かるように、｜Ａ｜＜Ｄ×（Ｎ−１）／Ｎでは、
ｎ＝ｉｎｔ（Ａ＊Ｎ／Ｄ）
である。ここで、ｉｎｔ（ｘ）は、ｘを超えない整数の最大値を示す。以下、入力Ａのレベル範囲ごとに場合分けして説明する。
【００２８】
・Ａ＜−Ｄ×（Ｎ−１）／Ｎのとき
ｎ＝Ｎ−１となり、バレルシフタ１４では係数が（１／２）N-n より１／２となり、また加算／減算回路１６では入力Ａが負であることから、１／２回路１５の出力からバレルシフタ１４の出力を減算する処理が行われるため、係数１＝１／２−１／２＝０となる。このとき、バレルシフタ１７側では、係数２＝１となる。
【００２９】
・−Ｄ×（Ｎ−１）／Ｎ≦Ａ＜０のとき
バレルシフタ１４では係数が１／２の（Ｎ−ｎ）乗となり、また加算／減算回路１６では入力Ａが負であることから、１／２回路１５の出力からバレルシフタ１４の出力を減算する処理が行われるため、係数１＝１／２−（１／２）N-n となる。
【００３０】
・０＜Ａ≦Ｄ×（Ｎ−１）／Ｎのとき
バレルシフタ１４では係数が１／２の（Ｎ−ｎ）乗となり、また加算／減算回路１６では入力Ａが正であることから、１／２回路１５の出力とバレルシフタ１４の出力とを加算する処理が行われるため、係数１＝１／２＋（１／２）N-n となる。
【００３１】
・Ｄ×（Ｎ−１）／Ｎ＜Ａのとき
ｎ＝Ｎ−１となり、バレルシフタ１４では係数が（１／２）N-n より１／２となり、また加算／減算回路１６では入力Ａが正であることから、１／２回路１５の出力とバレルシフタ１４の出力とを加算する処理が行われるため、係数１＝１／２＋１／２＝１となる。このとき、バレルシフタ１７側では、係数２＝０となる。
【００３２】
なお、本例では、入力Ａが正のとき加算／減算回路１４が加算を、減算／加算回路１９が減算を行い、入力Ａが負のとき加算／減算回路１４が減算を、減算／加算回路１９が加算を行う場合について説明したが、その逆であっても良い。すなわち、入力Ａが正のとき加算／減算回路１４が減算を、減算／加算回路１９が加算を行い、入力Ａが負のとき加算／減算回路１４が加算を、減算／加算回路１９が減算を行うようにしても良い。
【００３３】
上述したように、入力Ａをある参照値Ｄと比較し、その比較結果を基に入力Ｂと入力Ｃとの混合比を変えて加算する信号処理回路において、入力Ａの絶対値をある参照値Ｄと比較することで制御量ｎを算出するとともに、入力Ａの極性の基づいて加算又は減算の判定を行う一方、入力Ｂの信号レベルを１／２倍したものに対して入力Ｂを制御量ｎに応じたシフト量だけシフトしたものを加算又は減算した値と、入力Ｃの信号レベルを１／２倍したものに対して入力Ｃを制御量ｎに応じたシフト量だけシフトしたものを減算又は加算した値とを算出し、これらの値を加算した結果を出力することにより、ＬＵＴや除算器を用いて係数を算出したり、乗算器を用いて入力Ｂ，Ｃに係数を掛け合わせるなどの処理を行わなくても良いため、参照値Ｄを任意に変化させることが可能となるとともに、ゲート規模の小さい回路の実現が可能となる。
【００３４】
また、入力Ｂと入力Ｃを混合する際の混合比を、入力Ａの絶対値と参照値Ｄとの比較結果に基づく制御量ｎに応じてほぼ連続的に決定することが可能となる。さらに、図２の特性図から明らかなように、ノイズなどにより入力Ａが０付近でばらついても係数１／係数２の変化は僅かであり、したがって入力Ｂと入力Ｃの混合比があまり変化しないためノイズに強いものとなる。
【００３５】
なお、上記実施形態においては、入力Ａと参照値Ｄの比較結果を基に入力Ｂ，Ｃの２つの入力の混合比を変えて加算する信号処理を行う構成について説明したが、入力は必ずしも２つである必要はなく、１つの場合であっても良く、また３つ以上の場合であっても良い。ただし、入力が１つの場合には、混合比を変えるという概念ではなく、その入力の信号レベルを１／２倍したものに対して、その入力を制御量ｎに応じたシフト量だけシフトしたものを加算又は減算する信号処理となる。
【００３６】
以上説明した本実施形態に係る信号処理回路の用途としては、ＣＣＤ(Charge Coupled Device) 固体撮像素子の信号処理システムにおいて、輝度やエッジ検出の結果などから、２つの信号を混合比を変化させながら混合する処理を行う場合などが考えられる。
【００３７】
例えば、図４に示すように、水平方向と垂直方向の２つの直交する方向に対して、それぞれの方向に対する２つの相関値を水平相関値算出回路５１および垂直相関値算出回５２でそれぞれ算出し、その２つの相関値の大小を比較回路５３で比較し、その比較結果を用いて相関値の小さい方向の補間係数が大きくなるような処理を想定する。
【００３８】
この場合では、入力Ａとして（水平方向相関値−垂直方向相関値）を使用し、入力Ａが正の場合に係数１が小さく、負の場合に係数１が大きくなるものとし、入力Ｂとして水平方向補間信号を、入力Ｃとして垂直方向補間信号をそれぞれ用いる。そして、その出力結果を補間係数の設定に用いるようにする。
【００３９】
これにより、先述したように、入力Ｂと入力Ｃを混合する際の混合比をぼ連続的に決定することが可能であることに伴って補間係数が徐々に切り替わるため、“１”／“０”で切り替わる方式のものに比べて、切り替わり付近に境目ができたり、ノイズによる切り替わりの誤動作を抑えることが可能となる。
【００４０】
他の用途としては、サンプリング周波数の１／２付近、つまりナイキスト周波数付近の信号のレベルを示す値を入力Ａとして使用し、入力Ｂとして通常の補間信号、入力ＣとしてＬＰＦ（ローパスフィルタ）を通した信号とした場合には、入力信号がナイキスト周波数付近よりも低い場合は通常の補間信号を用い、ナイキスト周波数付近はＬＰＦを通した信号を使用することができる。
【００４１】
入力Ｃを使用しない例としては、画像の輪郭補正（強調）回路において、輪郭補正信号を入力Ｂとし、別途輪郭補正を行わない場所を検出する信号発生回路を設け、その出力を入力Ａとする。このようにすることで、輪郭補正を行いたくない領域では輪郭補正信号の絶対レベルが小さくなり、輪郭を強調しなくなる。別途輪郭補正を行わない場所を検出する信号発生回路としては、例えばＣＣＤ固体撮像素子からの信号レベルが小さい場合にはノイズが大きくなり、ノイズが大きい領域では輪郭補正を行いたくない場合に、輝度レベルを別途算出し、輝度が低いときに係数１が小さくなるような回路構成のものが考えられる。
【００４２】
【発明の効果】
以上説明したように、本発明によれば、第２の入力の信号レベルを１／２倍したものと、第１の入力に応じて決定された制御量に応じたシフト量だけシフトしたものとを、第１の入力の極性の判定結果に基づいて加算又は減算するようにしたことにより、ＬＵＴや除算器を用いて係数を算出したする必要がないため、参照値を任意に変化させることが可能で、かつ、ゲート規模の小さい回路を実現可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すブロック図である。
【図２】入力Ａに対する係数１／係数２の特性図である。
【図３】ｎ算出回路の具体的な回路構成の一例を示すブロック図である。
【図４】本発明の用途の一例を示すブロック図である。
【符号の説明】
１１…絶対値化回路、１２…ｎ算出回路、１３…正負判定回路、１４，１７…バレルシフタ、１５，１８…１／２回路、１６…加算／減算回路、１９…減算／加算回路、２０…加算器、２１〜２７…コンパレータ、２８…１ビットシフト回路、２９…２ビットシフト回路、３０…３ビットシフト回路、３５…デコーダ
【図１】
0003651215.tif 000002
【図２】
0003651215.tif 000003
【図３】
0003651215.tif 000004
【図４】
0003651215.tif 000005