(57)【特許請求の範囲】
【請求項１】
入力信号を圧縮する圧縮回路であって、
入力信号をＡ／Ｄ変換するＡ／Ｄ変換手段と、
Ａ／Ｄ変換出力の絶対値を求める絶対値計算手段と、
絶対値計算手段によって求めた入力信号の少なくとも半周期分にわたる絶対値中の最大値を検出するレベル検出手段と、
レベル検出手段によって検出した最大値と前記最大値の直前回に検出した最大値に対してアタック時間処理、リリース時間処理した信号値とを比較した結果、前記最大値と前記信号値とが等しいときは前記最大値として前記信号値を新たな信号値として保存し、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一でないときは前記最大値と前記信号値とアタック時間、リリース時間とに基づく変化値を求めて該変化値に前記信号値を加えて新たな信号値として保存し、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一のときは直前回に求めた変化値に前記信号値を加えて前記第１の最大値として保存するアタック時間、リリース時間処理手段と、
を備え、前記保存した第１の最大値に対して圧縮比に基づく圧縮処理を行い、該圧縮処理の結果に値１／Ｂ（Ｂは１よりも大きい正の数）を乗算し、該乗算結果に対しＡ／Ｄ変換された入力信号を乗算し、この乗算結果に値Ｂを乗算することにより圧縮演算することを特徴とする圧縮回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は無線通信機に設けるシラブルコンパンダ等に用いることができる圧縮回路に関する。
【０００２】
【従来の技術】
従来の圧縮回路は、アナログ信号処理によって行われている。具体的には、図５に示すように、音声信号などの入力信号Ｖｉｎは整流器１２に供給して、整流器１２において入力信号Ｖｉｎのレベルに応じた直流信号を生成し、該直流信号のレベルに比例して増幅器１１の利得を可変して、増幅器１１によって入力信号Ｖｉｎを増幅し、緩衝器１４を介して増幅器１１の増幅出力Ｖｏｕｔを圧縮出力として送出している。
【０００３】
ここで、入力信号のレベルが変化する速度に対する整流器１２の応答速度は、整流器１２と協働するコンデンサ１３の静電容量と整流器１２の入力インピーダンスによって決定される。
【０００４】
例えば圧縮比２の圧縮処理の時には、整流器１２の出力に基づいて入力信号Ｖｉｎと出力信号Ｖｏｕｔの関係を、Ｖｏｕｔ＝０．３１６２×√（Ｖｉｎ）となるように増幅器１１の利得を制御する。この結果、デシベル表現では、Ｖｏｕｔ＝０．５×Ｖｉｎ（ｄＢ）となり圧縮比２が得られる。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記したような従来の圧縮回路により入力信号を圧縮するときは、増幅器、整流器、緩衝器などの構成部品の電気的特性のバラツキや、周囲温度の変化によって特性が変化するという問題点があった。さらに、コンデンサの静電容量の変化によって整流器から出力される信号の応答速度が変化するという問題点もある。
【０００６】
本発明は、構成部品の電気特性のバラツキ、周囲温度変化による特性変化のない圧縮回路を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明にかかる圧縮回路は、入力信号を圧縮する圧縮回路であって、
入力信号をＡ／Ｄ変換するＡ／Ｄ変換手段と、
Ａ／Ｄ変換出力の絶対値を求める絶対値計算手段と、
絶対値計算手段によって求めた入力信号の少なくとも半周期分にわたる絶対値中の最大値を検出するレベル検出手段と、
レベル検出手段によって検出した最大値と前記最大値の直前回に検出した最大値に対してアタック時間処理、リリース時間処理した信号値とを比較した結果、前記最大値と前記信号値とが等しいときは前記最大値として前記信号値を新たな信号値として保存し、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一でないときは前記最大値と前記信号値とアタック時間、リリース時間とに基づく変化値を求めて該変化値に前記信号値を加えて新たな信号値として保存し、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一のときは直前回に求めた変化値に前記信号値を加えて前記第１の最大値として保存するアタック時間、リリース時間処理手段と、
を備え、前記保存した第１の最大値に対して圧縮比に基づく圧縮処理を行い、該圧縮処理の結果に値１／Ｂ（Ｂは１よりも大きい正の数）を乗算し、該乗算結果に対しＡ／Ｄ変換された入力信号を乗算し、この乗算結果に値Ｂを乗算することにより圧縮演算することを特徴とする。
【０００８】
本発明にかかる圧縮回路によれば、圧縮のための入力信号の最大値は入力信号の絶対値を求め、入力信号の少なくとも半周期にわたって求めた絶対値の最大値で求められるために、最大値を求めるためデジタル変換された入力信号データの保存期間も半周期の期間で済み、この最大値を元に圧縮演算が行われることになる。しかるに最大値を求めるためにデジタル変換された入力信号データの絶対値を入力信号の半周期分記憶すれば足り、記憶のためのメモリの記憶容量も少なくて済む。
【００１０】
さらに、本発明にかかる圧縮回路によれば、レベル検出手段によって検出した最大値と前記最大値の直前回に検出した最大値に対してアタック時間処理、リリース時間処理した信号値とを比較した結果、前記最大値と前記信号値とが等しいときは前記最大値として前記信号値を新たな信号値として保存され、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一でないときは前記最大値と前記信号値とアタック時間、リリース時間とに基づく変化値を求めて該変化値に前記信号値を加えて新たな信号値として保存され、前記比較した結果等しくないときにおいて前記最大値と前記信号値との差の極性が前回の比較結果の場合と同一のときは直前回に求めた変化値に前記信号値を加えて前記第１の最大値として保存されるため、圧縮作用のための最大値の急激な変化が抑制されることになって、圧縮作用の実行において入力信号の瞬間的な変化に処理が追従するようなことはなくなって、圧縮回路をアナログ回路で構成した場合と同様となる一方、アナログ回路による場合の電気回路部品の電気的特性の変化によって生じた追従特性の変化はなくなる。
【００１２】
さらにまた、本発明にかかる圧縮回路によれば、圧縮演算がレベル検出手段によって検出された最大値に対して行われ、ついで最大値に対する圧縮処理の結果に値１／Ｂが乗算されて、レベルが一旦低減された後に、値Ｂが乗算されるため、前記限られた数値範囲内で圧縮演算が行われる場合にも支障が生じない。
【００１３】
【発明の実施の形態】
以下、本発明にかかる圧縮回路を実施の一形態によって説明する。
【００１４】
図１は本発明の実施の一形態にかかる圧縮回路の構成を示すブロック図である。
【００１５】
図１に示す本発明の実施の一形態にかかる圧縮回路１０は、圧縮比２の場合を例示している。
【００１６】
圧縮回路１０は、入力信号をＡ／Ｄ変換器１に供給してデジタル信号に変換し、Ａ／Ｄ変換器１から出力されるデジタル信号はデジタルシグナルプロセッサ等からなるコンプレッサ回路２に供給して、コンプレッサ回路２において圧縮作用を行わせ、コンプレッサ回路２において圧縮されたデジタル信号はＤ／Ａ変換器３に供給してアナログ信号に変換のうえ出力する。
【００１７】
コンプレッサ回路２は、予め定めた時間的範囲の入力信号の絶対値を求める絶対値計算回路２１と求められた絶対値の最大レベルを検出するレベル検出回路２２とからなる絶対値レベル検出回路２０と、絶対値レベル検出回路２０によって検出された絶対値レベルに対してアタック時間、またはリリース時間に基づく処理を行うアタック時間、リリース時間処理回路２３と、アタック時間、リリース時間処理回路２３によって処理された信号レベルとＡ／Ｄ変換された入力信号とを乗算して圧縮処理を行う圧縮演算処理回路２４とを機能的に備え、圧縮演算処理出力をＤ／Ａ変換器３に送出する。
【００１８】
上記のように構成された圧縮回路１０の作用を図２に示すフローチャートに基づいて、入力信号Ｖｉｎを音声信号とし、かつＶｉｎ＝Ａ・ｓｉｎωｔとして説明する。
【００１９】
圧縮処理前における入力信号と出力信号との関係は図４（ａ）に示す如くであって、圧縮回路の基準レベルに対応している。
【００２０】
入力信号はＡ／Ｄ変換器１においてデジタル信号に変換され（ステップＳ１）、デジタル変換された入力信号の絶対値が計算される（ステップＳ２）。ここで、ステップＳ１における処理が絶対値計算回路２１の処理に対応している。
【００２１】
ステップＳ２に続いて絶対値データが所定時間にわたってコンプレッサ回路２のメモリに保存される。ここで入力信号（音声信号）に必要な周波数の下限は３００Ｈｚであるため、その半周期分（約１．６７ｍｓｅｃ）のデータがあれば入力信号レベルの検出が可能であることから、余裕を見て所定時間は例えば１．８６ｍｓｅｃ時間とし、１．８６ｍｓｅｃの時間にわたってメモリに保存する（ステップＳ３）。ステップＳ３に続いて、Ａ／Ｄ変換のサンプリングを行う毎に前記メモリ内の最大値を検出する（ステップＳ４）。
【００２２】
ここで、ステップＳ３およびステップＳ４における処理がレベル検出回路２２の処理に対応している。このように絶対値を取ることによって、正側と負側の振幅の最大レベルを正側だけで求めることができ、さらに、絶対値を取って最大レベルを求めるために、デジタル変換された入力信号データの保存時間もほぼ半周期の時間で済むことになる。
【００２３】
入力信号の圧縮動作をさせる前に、コンプレッサ回路２の応答速度を調整して、入力信号の瞬間的な変化に処理が追従しないように実質的に時定数を持たせて、入力信号の瞬間的な変化を吸収させる。すなわちステップＳ４において検出された最大レベルとステップＳ７において保存されたアタック時間、リリース時間処理後の検出レベルとが比較されてその差と変化の方向が検出される（ステップＳ５）。
【００２４】
ステップＳ５における比較の結果、ステップＳ４において検出された最大レベルがステップＳ７において保存されているアタック時間、リリース時間処理後の検出レベルより増加しておれば保存された検出レベルを増加させ、減少しておれば保存された検出レベルを減少させ、比較の結果に変化が無ければ検出レベルの増減をさせず、こうして得られた検出レベルの値を次のサンプル時の最大データと比較するために保存する（ステップＳ６〜ステップＳ７）。
【００２５】
ここで、ステップＳ５〜ステップＳ７の処理がアタック時間、リリース時間処理回路２３の処理に対応している。
【００２６】
ステップＳ６における増加、減少のための定数は、最大レベルが減少する方向に対する定数をアタック時間（アタックタイム）と称し、最大レベルが増加する方向に対する定数をリリース時間（リリースタイム）と称する。ＩＴＵ−Ｔ勧告に規定されている標準アタックタイムは３ｍｓｅｃ、標準リリースタイムは１３．５ｍｓｅｃであって、ステップＳ６においてはこの値に設定されている。
【００２７】
次に、圧縮回路１０におけるアタック時間、リリース時間処理について、図３によって、さらに詳細に説明する。
【００２８】
ステップＳ４において検出された最大レベルＡと、ステップＳ７において保存されているアタック時間、リリース時間処理がなされたレベルＡ´とのレベル比較がなされ（ステップＳ５）、（最大レベルＡ−レベルＡ´）＞０か否かがチェックされる（ステップＳ６１）。ステップＳ６１において（最大レベルＡ−レベルＡ´）＞０でないと判別されると、（最大レベルＡ−レベルＡ´）＜０か否かがチェックされる（ステップＳ６２）。ステップＳ６２において（最大レベルＡ−レベルＡ´）＜０でないと判別されると、最大レベルＡ＝レベルＡ´の場合であって、ステップＳ６２に続いて前回の処理によるレベルＡ´が検出レベルとして使用されて（ステップＳ６３）、後記のステップＳ８が実行される。
【００２９】
ステップＳ６１において、（最大レベルＡ−レベルＡ´）＞０であると判別されると、ステップＳ６１に続いて前回も同じ状態、すなわち（最大レベルＡ−レベルＡ´）＞０であったか、（最大レベルＡ＝レベルＡ´）であったか、否かがチェックされる（ステップＳ６４）。ステップＳ６４において前回も同じ状態でなかったと判別されたときは増加率ΔＡが、増加率ΔＡ＝｛（Ａ―Ａ´）／リリース時間に達するサンプリング回数｝によって求められ（ステップＳ６５）、Ａ´＝（Ａ´＋ΔＡ）が演算されて（ステップＳ６６）、ステップＳ６６によって演算されたＡ´が新たな検出レベルとして保存される（ステップＳ７）。
【００３０】
ステップＳ６４において前回と同じ状態であったと判別されたときは、ステップＳ６５がスキップされて、続いてステップＳ６６、ステップＳ７が実行されて、演算されたＡ´が新たな検出レベルとして保存される。
【００３１】
ステップＳ６２において、（最大レベルＡ−レベルＡ´）＜０であると判別されると、ステップＳ６２に続いて前回も同じ状態、すなわち（最大レベルＡ−レベルＡ´）＜０であったか、（最大レベルＡ＝レベルＡ´）であったか、否かがチェックされる（ステップＳ６７）。ステップＳ６７において前回は同じ状態でなかったと判別されたときは減少率ΔＡが、減少率ΔＡ＝｛（Ａ´−Ａ）／アタック時間に達するサンプリング回数｝によって求められ（ステップＳ６８）、Ａ´＝（Ａ´−ΔＡ）が演算されて（ステップＳ６９）、ステップＳ６９によって演算されたＡ´が新たな検出レベルとして保存される（ステップＳ７）。
【００３２】
ステップＳ６７において前回も同じ状態であったと判別されたときは、ステップＳ６８がスキップされてステップＳ６９、ステップＳ７が実行されて、演算されたＡ´が新たな検出レベルとして保存される。
【００３３】
上記を具体的に説明すれば、ステップＳ６１においてＡ＝１００ｍＶ、Ａ´＝８０ｍＶであり、前回Ａ＝Ａ´であったとすると、Ａ−Ａ´＞０のために、ステップＳ６４において前回と同じ状態ではないと判別されて、ステップＳ６５において増加率ΔＡ＝（１００ｍＶ−８０ｍＶ）／１０＝２ｍＶが演算される。ここで分母の１０は、１０回のサンプリングによってリリースタイム１３．５ｍｓｅｃになる場合を示している。したがって、新Ａ´＝（旧Ａ´＋ΔＡ）＝８０ｍＶ＋２ｍＶ＝８２ｍＶとなり、この８２ｍＶが新たな検出レベルとなって、保存される。
【００３４】
次のステップＳ５の実行において、ステップＳ６１においてＡ＝１００ｍＶ、Ａ´＝（上記の新たな検出レベル）８２ｍＶであり、前回もＡ（１００ｍＶ）−Ａ´（８２ｍＶ）＞０であるため、ステップＳ６４において前回と同じ状態であると判別されて、ステップＳ６５がスキップされて、新Ａ´＝（旧Ａ´＋ΔＡ）＝（８２ｍＶ＋２ｍＶ）＝８４ｍＶとなり、この８４ｍＶが新たな検出レベルとなって、保存される。
【００３５】
次のステップＳ５の実行において、ステップＳ６２においてＡ＝６４ｍＶ、Ａ´＝（上記の新たな検出レベル）８４ｍＶであり、前回はＡ−Ａ´＞０であったとすると、Ａ−Ａ´＜０なので前回と同じ状態ではなく、減少率が、減少率ΔＡ＝（８４ｍＶ−６４ｍＶ）／２＝１０ｍＶにより演算される。ここで分母の２は、２回のサンプリングによってアタックタイム３ｍｓｅｃになる場合を示している。したがって、新Ａ´＝（旧Ａ´＋ΔＡ）＝（８４ｍＶ−１０ｍＶ）＝７４ｍＶとなり、この７４ｍＶが新たな検出レベルとなって、保存される。
【００３６】
次に図２に戻って説明する。ステップＳ６３において使用される検出レベル、または、ステップＳ７において保存された検出レベルの値の平方根を求める圧縮演算がなされる（ステップ８）。ここで、ステップＳ６３において使用される検出レベルおよびステップＳ７において保存されたレベルの値はＡであるため、ステップＳ８における演算によって√Ａが求められて、圧縮比２で圧縮されることになる。この結果を模式的に示すと図４（ｂ）の如くになり、図４（ｂ）において実線が圧縮処理後の状態を模式的に示し、破線は入力信号を示している。
【００３７】
図４（ｂ）において示すようにステップＳ８における圧縮処理後のレベルが入力信号レベルを超えているのは、デジタルシグナルプロセッサからなるコンプレッサ回路２において処理される信号の大きさは（−１〜＋１）の範囲であるため、平方根演算を行うと元の数値よりも値が大きくなるからである。
【００３８】
ステップＳ８に続いて、基準レベルを合わせるための基準レベル係数αを乗算する（ステップＳ９）。ここで、基準レベルとは、コンプレッサ回路２０の入力と出力とが等しくなるレベルであって、この点において入出力信号間のゲインは０ｄＢである。ステップＳ９の実行によってα√Ａが求められる。ステップＳ９の実行の結果は図４（ｃ）に示す如くである。図４（ｃ）において、１点鎖線はステップＳ８において圧縮処理された信号レベルを示し、この圧縮処理された信号レベルにステップＳ９において基準レベル係数αが乗算されて、実線で示す圧縮信号レベルとなる。この両方の交点が基準レベルである。図４（ｃ）において、破線は入力信号レベルを示している。
【００３９】
ステップＳ９の処理によって圧縮する信号のレベルの計算はできたが、図４（ｃ）の表示からも明らかなように、基準レベル以下の入力信号に対して出力信号はゲインを持つ。しかるに、デジタルシグナルプロセッサからなるコンプレッサ回路２では、直接的にゲインの計算はできない。これは、コンプレッサ回路２において処理される信号の大きさは（−１〜＋１）の範囲であるためである。したがって、ゲインが１未満になるように、ステップＳ９に続いてステップＳ９における演算結果α√Ａに１／Ｂを乗算する（ステップＳ１０）。ステップＳ１０の実行の結果、α√Ａ／Ｂとなる。ここで、Ｂは１より大きい正の数である。
【００４０】
この状態を図示すれば、図４（ｄ）に示す如く、１点鎖線で示すステップＳ９の演算結果が実線で示すように１／Ｂされてレベルが下げられる。図４（ｃ）において、破線は入力信号レベルを示している。この場合、１／Ｂされた結果、後記のように入力信号レベルより大きいレベルの部分、すなわち、ゲインを持つ部分は入力信号レベルの部分を採る。
【００４１】
ステップＳ１０に続いて、ステップＳ１０における演算結果を、ステップＳ６３、ステップＳ７において保存されている検出レベルＡにて除算して係数を求める（ステップＳ１１）。ステップＳ１１の演算の結果、求められた係数はα√Ａ／（Ａ・Ｂ）＝α／（Ｂ√Ａ）となる。ステップＳ１１に続いて、ステップＳ１１にて求めた係数にＡ／Ｄ変換された入力信号を乗算する（ステップＳ１２）。ステップＳ１２における乗算結果は、Ａ・ｓｉｎωｔ・α／（Ｂ√Ａ）＝α√Ａ・ｓｉｎωｔ／Ｂとなる。
【００４２】
ステップＳ１２に続いて、ステップＳ１０において一旦下げたゲインを元に戻すべく、ステップＳ１２の演算結果にステップＳ１０におけるＢを乗算して元の信号レベルに戻す（ステップＳ１３）。ステップＳ１３による演算結果は、α√Ａ・ｓｉｎωｔとなり、圧縮による最大ゲインはＢ倍となる。この結果、図４（ｅ）に示すように、破線で示す圧縮処理前の入力信号に対して実線で示す圧縮処理された出力信号が得られる。ステップＳ１３によって得られた信号がＤ／Ａ変換器３にてアナログ信号として出力される（ステップＳ１４）。
【００４３】
ここで、ステップＳ１０におけるＢとして例えば２４を採用する。このようにすると圧縮による最大ゲインは１６倍となって、微少信号のゲインが落ちてしまうが、実際に測定した結果、１６倍のゲインとなる信号（入力信号で約１０Ｈｚ）は微弱であり、ノイズ成分の圧縮によるＳ／Ｎ悪化を防ぐため、１６倍を圧縮によるゲインの最大としても、不都合はなかった。
【００４４】
【発明の効果】
以上説明したように本発明にかかる圧縮回路によれば、デジタル信号処理によって圧縮演算を行うことができて、部品の電気特性のバラツキ、周囲温度変化による特性の変化のない圧縮回路が得られる。
【図面の簡単な説明】
【図１】本発明の実施の一形態にかかる圧縮回路の構成を示すブロック図である。
【図２】本発明の実施の一形態にかかる圧縮回路の作用の説明に供するフローチャートである。
【図３】本発明の実施の一形態にかかる圧縮回路におけるアタック時間、リリース時間処理の説明に供するフローチャートである。
【図４】本発明の実施の一形態にかかる圧縮回路の作用の説明に供する説明図である。
【図５】従来の圧縮回路の回路図である。
【符号の説明】
１  Ａ／Ｄ変換器
２  コンプレッサ回路
３  Ｄ／Ａ変換器
１０  圧縮回路
２０  絶対値レベル検出回路
２１  絶対値計算回路
２２  レベル検出回路
２３  アタック時間、リリース時間処理回路
２４  圧縮演算処理回路
【図１】
0003679310.tif 000002
【図２】
0003679310.tif 000003
【図３】
0003679310.tif 000004
【図４】
0003679310.tif 000005
【図５】
0003679310.tif 000006