(57)【要約】【課題】量子化処理における処理速度の向上と再生信号の品質向上を実現することを課題とする。【解決手段】ＭＤＣＴ回路からの出力信号ｍｃが、閾値Ｋ以上の場合には、第１係数記憶部６０３、第１シフト値記憶部６０５、第２係数記憶部６０７、第２シフト値記憶部６０９から取得した各係数およびシフト値に基づく一次方程式を用いて、「べき乗近似値」（pow_spec_av）を算出する。信号ｍｃが閾値Ｋ未満の場合には、べき乗値記憶部６１１に格納されている「べき乗値」（pow_spec_ac）を取得する。べき乗値記憶部６１１には、閾値Ｋ未満の信号ｍｃに対応したべき乗値が予め計算されて格納されている。【選択図】図３
2005197989.tif 000002
【特許請求の範囲】
【請求項１】
周波数分割された入力信号の周波数帯域ごとの係数信号を入力する入力手段と、
前記係数信号と所定の閾値とを比較する手段と、
前記係数信号のべき乗値を予め格納しているべき乗値記憶手段と、
前記係数信号が所定の閾値を下回る場合には、前記べき乗値記憶手段を参照して、前記係数信号のべき乗値を取得する手段と、
前記係数信号が所定の閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値を算出する近似手段と、
を備えることを特徴とするべき乗演算回路。
【請求項２】
請求項１に記載のべき乗演算回路において、
前記べき乗値記憶手段は、
前記閾値を下回る係数信号に対応するべき乗値のみを格納していることを特徴とするべき乗演算回路。
【請求項３】
請求項１または請求項２に記載のべき乗演算回路において、さらに、
前記係数信号を複数の区分に分割し、各区分に対応させた一次方程式の情報を格納する方程式情報記憶手段、
を備え、
前記近似手段は、前記方程式情報記憶手段を参照することにより入力した係数信号に対応する一次方程式を得て、前記べき乗近似値を算出することを特徴とするべき乗演算回路。
【請求項４】
周波数分割された入力信号の周波数帯域ごとの係数信号を入力する工程と、
前記係数信号が所定の閾値を下回る場合には、前記係数信号のべき乗値を予め格納しているべき乗値記憶手段を参照して、前記係数信号のべき乗値を取得し、前記係数信号が所定の閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値を算出する工程と、
を備えることを特徴とするべき乗演算方法。
【請求項５】
周波数分割された入力信号の周波数帯域ごとの係数信号を入力する入力手段と、
前記係数信号と所定の第１閾値とを比較する手段と、
前記係数信号のべき乗値を予め格納している第１べき乗値記憶手段と、
前記係数信号が所定の第１閾値を下回る場合には、前記第１べき乗値記憶手段を参照して、前記係数信号のべき乗値（以下、第１べき乗値とする。）を取得する手段と、
前記係数信号が所定の第１閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値（以下、第１べき乗近似値とする。）を算出する近似手段と、
前記第１べき乗値あるいは前記第１べき乗近似値に基づいて量子化値を求める手段と、
前記量子化値と所定の第２閾値とを比較する手段と、
前記量子化値のべき乗値を予め格納している第２べき乗値記憶手段と、
前記量子化値が所定の第２閾値を下回る場合には、前記第２べき乗値記憶手段を参照して、前記量子化値のべき乗値（以下、第２べき乗値とする。）を取得する手段と、
前記量子化値が所定の第２閾値を上回る場合には、一次方程式を用いた近似計算を行って前記量子化値のべき乗近似値（以下、第２べき乗近似値とする。）を算出する近似手段と、
前記第２べき乗値あるいは前記第２べき乗近似値に基づいて逆量化値を求める手段と、
を備えることを特徴とする量子化回路。
【請求項６】
周波数帯域に分割された入力信号の周波数帯域ごとの係数信号を入力する工程と、
前記係数信号が所定の第１閾値を下回る場合には、前記係数信号のべき乗値を予め格納している第１べき乗値記憶手段を参照して、前記係数信号のべき乗値（以下、第１べき乗値とする。）を取得し、前記係数信号が所定の第１閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値（以下、第１べき乗近似値とする。）を算出する工程と、
前記第１べき乗値あるいは前記第１べき乗近似値に基づいて量子化値を求める工程と、
前記量子化値が所定の第２閾値を下回る場合には、前記量子化値のべき乗値を予め格納している第２べき乗値記憶手段を参照して、前記量子化値のべき乗値（以下、第２べき乗値とする。）を取得し、前記量子化値が所定の第２閾値を上回る場合には、一次方程式を用いた近似計算を行って前記量子化値のべき乗近似値（以下、第２べき乗近似値とする。）を算出する工程と、
前記第２べき乗値あるいは前記第２べき乗近似値に基づいて逆量化値を求める工程と、
を備えることを特徴とする量子化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号圧縮装置における量子化回路に関する。
【背景技術】
【０００２】
画像信号や音声信号を圧縮処理する方式として、ＭＰＥＧ（Moving Picture Experts Group）が用いられている。ＭＰＥＧは、時間領域の入力信号を周波数領域の信号に変換し、各周波数帯域の係数を量子化、符号化することで圧縮信号を生成する。また、音声信号の圧縮アルゴリズムとしてＭＰＥＧ４／ＡＡＣ（Advanced Audio Coding）が用いられている。
【０００３】
【特許文献１】特開平８−１０１６９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
圧縮された画像信号や音声信号を復号再生する場合、画像や音声の品質は、量子化の精度に影響を受けることになる。しかし、量子化の精度を高くするためには、処理負荷を大きくすることになり、回路規模も大きくなる。また、処理にかかる時間も長くなる。特に、非線形量子化処理は、べき乗演算を行う必要があり、さらに、処理負荷が大きくなる。
【０００５】
上記特許文献１では、折れ線テーブルを用いて簡易に量子化を行う技術が開示されているが、全ての信号を折れ線テーブルを用いて量子化するため、量子化精度の観点からは問題が残っている。
【０００６】
そこで、本発明は前記問題点に鑑み、量子化の処理時間短縮と再生信号の品質向上を実現することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、請求項１記載の発明は、周波数分割された入力信号の周波数帯域ごとの係数信号を入力する入力手段と、前記係数信号と所定の閾値とを比較する手段と、前記係数信号のべき乗値を予め格納しているべき乗値記憶手段と、前記係数信号が所定の閾値を下回る場合には、前記べき乗値記憶手段を参照して、前記係数信号のべき乗値を取得する手段と、前記係数信号が所定の閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値を算出する近似手段と、を備えることを特徴とする。
【０００８】
請求項２記載の発明は、請求項１に記載のべき乗演算回路において、前記べき乗値記憶手段は、前記閾値を下回る係数信号に対応するべき乗値のみを格納していることを特徴とする。
【０００９】
請求項３記載の発明は、請求項１または請求項２に記載のべき乗演算回路において、さらに、前記係数信号を複数の区分に分割し、各区分に対応させた一次方程式の情報を格納する方程式情報記憶手段、を備え、前記近似手段は、前記方程式情報記憶手段を参照することにより入力した係数信号に対応する一次方程式を得て、前記べき乗近似値を算出することを特徴とする。
【００１０】
請求項４記載の発明は、周波数分割された入力信号の周波数帯域ごとの係数信号を入力する工程と、前記係数信号が所定の閾値を下回る場合には、前記係数信号のべき乗値を予め格納しているべき乗値記憶手段を参照して、前記係数信号のべき乗値を取得し、前記係数信号が所定の閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値を算出する工程と、を備えることを特徴とする。
【００１１】
請求項５記載の発明は、周波数分割された入力信号の周波数帯域ごとの係数信号を入力する入力手段と、前記係数信号と所定の第１閾値とを比較する手段と、前記係数信号のべき乗値を予め格納している第１べき乗値記憶手段と、前記係数信号が所定の第１閾値を下回る場合には、前記第１べき乗値記憶手段を参照して、前記係数信号のべき乗値（以下、第１べき乗値とする。）を取得する手段と、前記係数信号が所定の第１閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値（以下、第１べき乗近似値とする。）を算出する近似手段と、前記第１べき乗値あるいは前記第１べき乗近似値に基づいて量子化値を求める手段と、前記量子化値と所定の第２閾値とを比較する手段と、前記量子化値のべき乗値を予め格納している第２べき乗値記憶手段と、前記量子化値が所定の第２閾値を下回る場合には、前記第２べき乗値記憶手段を参照して、前記量子化値のべき乗値（以下、第２べき乗値とする。）を取得する手段と、前記量子化値が所定の第２閾値を上回る場合には、一次方程式を用いた近似計算を行って前記量子化値のべき乗近似値（以下、第２べき乗近似値とする。）を算出する近似手段と、前記第２べき乗値あるいは前記第２べき乗近似値に基づいて逆量化値を求める手段と、を備えることを特徴とする。
【００１２】
請求項６記載の発明は、周波数帯域に分割された入力信号の周波数帯域ごとの係数信号を入力する工程と、前記係数信号が所定の第１閾値を下回る場合には、前記係数信号のべき乗値を予め格納している第１べき乗値記憶手段を参照して、前記係数信号のべき乗値（以下、第１べき乗値とする。）を取得し、前記係数信号が所定の第１閾値を上回る場合には、一次方程式を用いた近似計算を行って前記係数信号のべき乗近似値（以下、第１べき乗近似値とする。）を算出する工程と、前記第１べき乗値あるいは前記第１べき乗近似値に基づいて量子化値を求める工程と、前記量子化値が所定の第２閾値を下回る場合には、前記量子化値のべき乗値を予め格納している第２べき乗値記憶手段を参照して、前記量子化値のべき乗値（以下、第２べき乗値とする。）を取得し、前記量子化値が所定の第２閾値を上回る場合には、一次方程式を用いた近似計算を行って前記量子化値のべき乗近似値（以下、第２べき乗近似値とする。）を算出する工程と、前記第２べき乗値あるいは前記第２べき乗近似値に基づいて逆量化値を求める工程と、を備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、高い精度が求められる範囲においては、予め算出されている「べき乗値」を利用し、その他の範囲では、一次方程式を用いた近似計算により「べき乗値」を算出するので、量子化処理の処理速度の向上と、再生信号の品質向上を図ることが可能である。
【発明を実施するための最良の形態】
【００１４】
｛１．処理全体の流れ｝
以下、図面を参照しつつ本発明の実施の形態について説明する。図１は、ＭＰＥＧ４／ＡＡＣアルゴリズムに基づいた音声データの圧縮処理を行う装置の概略図である。この装置は、時間領域の入力信号（音声信号）を周波数領域の信号へ変換するＭＤＣＴ（Modefied Descrete Cosine Transform；変形離散コサイン変換）回路１と、ＭＤＣＴ回路１が出力した信号を入力し、量子化雑音が許容量以下となり、且つ、符号量が所定のビットレート以下に収まるまで、量子化および符号化の処理を繰り返し行う量子化・符号化回路２とを備えている。また、量子化・符号化回路２は、量子化回路３と符号化回路４の２つの回路ブロックを備えている。
【００１５】
図２は、量子化回路３のブロック構成を示す図である。量子化回路３は、量子化演算回路５と逆量子化演算回路１０と雑音判定回路１１とを備えている。さらに、量子化演算回路５は、量子化べき乗演算回路６と量子化係数演算回路７を備え、逆量子化演算回路１０は、逆量子化べき乗演算回路８と逆量子化係数演算回路９を備えている。
【００１６】
このような構成において、ＭＤＣＴ回路１から出力された信号（mc）は、量子化演算回路５に入力される。信号（mc）は、具体的には、ＭＤＣＴ回路１で周波数分割された入力信号（音声信号）の各周波数帯域における係数（ＭＤＣＴ係数）である。量子化演算回路５では、まず、信号（mc）が量子化べき乗演算回路６に入力され、ここで「べき乗演算」が行われる。べき乗演算は、入力信号（mc）をx、べき乗演算後の信号をyとすると、たとえば数１式で表される。
【００１７】
【数１】
2005197989.tif 000003
【００１８】
量子化べき乗演算回路６において、信号（mc）の「べき乗演算値」が求められると、次に、量子化係数演算回路７において、べき乗演算値がスケールファクタによって除算されて量子化値（quant）が算出される。このように、量子化演算回路５では、非線形量子化処理が行われる。
【００１９】
量子化値（quant）は、次に、逆量子化演算回路１０に入力される。逆量子化演算回路１０では、まず、逆量子化べき乗演算回路８において、量子化値（quant）の「べき乗値」が演算される。べき乗演算は、入力信号（quant）をq、べき乗演算後の信号をy'とすると、たとえば、数２式で表される。
【００２０】
【数２】
2005197989.tif 000004
【００２１】
逆量子化べき乗演算回路８において、量子化値の「べき乗演算値」が求められると、次に、逆量子化係数演算回路９において、べき乗演算値がスケールファクタによって除算されて、逆量子化値（requant）が算出される。このように、逆量子化演算回路１０においても、非線形量子化処理が行われる。
【００２２】
逆量子化値（requant）は、雑音判定回路１１に入力され、量子化雑音が許容量の範囲にあるか否かの判定が行われる。雑音許容量を超えている場合には、上記スケールファクタの値を変化させて、再び、量子化値および逆量子化値が算出される。そして、新たに求めた逆量子化値（requant）を用いて再度雑音判定が行われる。このような処理が量子化雑音が許容量の範囲に収まるまで繰り返される。
【００２３】
量子化雑音が許容量の範囲に収まった場合には、量子化回路３から出力された量子化値（quant）を用いて、符号化回路４においてハフマン符号化が行われる。符号化の結果、符号量が目的としているビットレートを満たしていない場合には、再び、スケールファクタが変更され、量子化回路３において、雑音判定処理ループが行われる。このような処理を繰り返し、符号化量が目的としているビットレートに達したときに、量子化・符号化処理のループが終了する。
【００２４】
｛２．量子化処理｝
次に、図３ないし図５を参照しながら、量子化演算回路５の構成および量子化演算処理について説明する。
【００２５】
量子化べき乗演算回路６は、ＭＤＣＴ回路１から出力された信号（mc）を入力する。この信号（mc）は、７方向に分岐され、比較回路６０１と第１係数取得部６０２と第１シフト値取得部６０４と第２係数取得部６０６と第２シフト値取得部６０８とべき乗変換部６１０と乗算器６１２に対して出力される。
【００２６】
第１係数取得部６０２と第１シフト値取得部６０４と第２係数取得部６０６と第２シフト値取得部６０８とは、入力した信号（mc）の範囲に基づいて、それぞれ第１係数記憶部６０３と第１シフト値記憶部６０５と第２係数記憶部６０７と第２シフト値記憶部６０９から、係数あるいはシフト値を取得する。なお、本実施の形態においては、ＭＤＣＴ回路１から出力される信号（mc）、すなわちＭＤＣＴ係数は、１０進数で１〜６７１０８８６３までの整数である。
【００２７】
図４は、第１係数記憶部６０３と第１シフト値記憶部６０５と第２係数記憶部６０７と第２シフト値記憶部６０９に格納される各係数およびシフト値を１つのテーブルに表したものである。したがって、図３では、第１係数記憶部６０３と第１シフト値記憶部６０５と第２係数記憶部６０７と第２シフト値記憶部６０９とは、別のハードウェア構成として示されているが、これら記憶部は共通のＲＯＭを利用して、図４で示すような単一のテーブルとして格納するようにしてもよい。
【００２８】
図４のテーブルにおいては省略しているが、インデックスは、信号（mc）の値に対応付けられている。図に示すように、信号（mc）の値が８９に区分され、それぞれの区分にインデックスがつけられている。そして、各インデックスに対応して、第１係数、第１シフト値、第２係数、第２シフト値が格納されているのである。これら係数およびシフト値は、近似計算用の一次方程式を規定する情報である。量子化べき乗演算回路６が入力する信号（mc）の範囲は、前述のように１０進数で０〜６７１０８８６３の整数である。そして、信号（mc）の値がＫ未満の場合には、べき乗変換部６１０において「べき乗変換」が行われる。そして、信号（mc）の値がＫ以上の場合、つまり、信号（mc）の値がＫ〜６７１０８８６３の整数の場合には、信号（mc）が属しているインデックスに対応した一次方程式が決定され、その一次方程式を用いた近似演算を行って「べき乗近似値」が求められるのである。
【００２９】
なお、図４で示した各係数あるいは各シフト値は一例であり、シミュレーション等により適宜最適な値を設定すればよい。また、ここでは、信号（mc）を８９のインデックスに区分しているが、このインデックスの区分数もシミュレーション等により適宜設定すればよい。また、各インデックスに含まれる信号の数は一定である必要はなく。量子化誤差が最小となるように設定すればよい。また、図４で”第１シフト値”として表記している数値は、正確には、第１シフト値記憶部６０５が格納している数値に１を加算した値である。この１加算処理は、後で説明する加算器６１３における処理である。第１シフト値として第１シフト値記憶部６０５に最大１６までの整数を格納するようにしてもよいが、ここでは、第１シフト値記憶部６０５の容量を小さくするため（４ビットで収めるため）に最大１５までの整数を格納し、この後の処理で１加算するようにしているのである。ただし、図４では、本来のシフト値を表現するために１加算後の数値を便宜上表記している。
【００３０】
信号（mc）の値がＫ以上である場合、第１係数取得部６０２と第１シフト値取得部６０４と第２係数取得部６０６と第２シフト値取得部６０８は、それぞれ、信号（mc）が所属するインデックスにしたがって、第１係数記憶部６０３と第１シフト値記憶部６０５と第２係数記憶部６０７と第２シフト値記憶部６０９から係数の値あるいはシフト値を取得する。たとえば、インデックスが１０の場合には、第１係数取得部６０２は第１係数として「８２５」を、第１シフト値取得部６０４は第１シフト値として「１６」（前述のように、実際には、「１５」を取得した後、１加算される。）を、第２係数取得部６０６は第２係数として「１６５２」を、第２シフト値取得部６０８は第２シフト値として「５」を取得する。
【００３１】
一方、信号（mc）の値がＫ未満である場合、べき乗変換部６１０は、べき乗値記憶部６１１から、信号（mc）の値に１対１に対応して格納されている「べき乗値」を取得し、「べき乗値」（pow_spec_ac）をセレクタ６１７に対して出力する。べき乗値記憶部６１１は、Ｋ未満の信号（mc）に対する「べき乗値」を予め算出した値を格納しているのである。したがって、べき乗値記憶部６１１は、Ｋ個の「べき乗値」を格納可能な容量を備えていればよい。
【００３２】
次に、乗算器６１２は、信号（mc）と第１係数取得部６０２が出力した第１係数（q_a_int）を入力し、この２つの信号を乗算して、乗算結果（tmp_1）を出力する。また、加算器６１３は、第１シフト値取得部６０４が出力した第１シフト値（q_a_sft）を入力し、第１シフト値に１を加算する。この１加算されたシフト値を加算シフト値（q_a_sft+1）とする（つまり、図４で表記されている”第１シフト値”は、実際には、加算シフト値（q_a_sft+1）である。）。そして、シフタ６１４は、乗算結果（tmp_1）と加算シフト値（q_a_sft+1）を入力し、乗算結果（tmp_1）を、加算シフト値（q_a_sft+1）分だけ右シフト演算を行う。具体的には、乗算結果（tmp_1）を２ビットで表現した場合に、加算シフト値（q_a_sft+1）が示す１０進整数分だけビットシフトを行うのである。たとえば、インデックス１０の場合であれば、乗算結果（８２５×（mc））を２ビット表現した場合に、１６（１５＋１）ビット右シフト演算を行うのである。シフタ６１４は、右シフト演算後の信号（tmp_2）を加算器６１６に出力する。
【００３３】
また、シフタ６１５は、第２係数取得部６０６が出力した第２係数（q_b_int）と第２シフト値取得部６０８が出力した第２シフト値（q_b_sft）を入力し、第２係数（q_b_int）を第２シフト値（q_b_sft）分だけ左シフト演算を行う。具体的には、第２係数（q_b_int）を２ビットで表現した場合に、第２シフト値（q_b_sft）が示す１０進整数分だけビットシフトを行うのである。たとえば、インデックス１０の場合であれば、第２係数（１６５２）を２ビット表現した場合に、５ビット左シフト演算を行うのである。シフタ６１５は、左シフト演算後の信号（tmp_3）を加算器６１６に出力する。
【００３４】
次に、加算器６１６は、シフタ６１４からの出力信号（tmp_2）とシフタ６１５からの出力信号（tmp_3）を入力し、この２つの信号を加算する。そして、加算器６１６は、「べき乗近似値」（pow_spec_av）をセレクタ６１７に対して出力する。
【００３５】
そして、セレクタ６１７は、加算器６１６から出力された「べき乗近似値」（pow_spec_av）と、べき乗変換部６１０から出力された「べき乗値」（pow_spec_ac）を入力する。
【００３６】
比較部６０１は、信号（mc）を入力し、信号（mc）と閾値Ｋとの大小を比較する。そして、信号（mc）の値が閾値Ｋ未満の場合には、「べき乗値」（pow_spec_ac）を出力するようにセレクタ６１７に制御信号「１」を送信する。信号（mc）の値が閾値Ｋ以上の場合には、第１係数、第１シフト値、第２係数、第２シフト値を用いて近似計算を行った結果である「べき乗近似値」（pow_spec_av）を出力するようにセレクタ６１７に制御信号「０」を送信する。セレクタ６１７は、比較部６０１から入力した制御信号に基づいて、「べき乗近似値」（pow_spec_av）あるいは「べき乗値」（pow_spec_ac）のいずれかを「べき乗演算値」（pow_spec）として出力するのである。
【００３７】
量子化べき乗演算回路６が出力した「べき乗演算値」（pow_spec）は、量子化係数演算回路７に入力される。量子化係数演算回路７では、図示せぬ他の回路から与えられたスケールファクタによって「べき乗演算値」（pow_spec）が除算されて量子化値（quant）が算出される。算出された量子化値（quant）は、符号化回路４に出力されるとともに、逆量子化演算回路１０に出力される。なお、入力信号（mc）の範囲０〜６７１０８８６３（１０進数）に対応する量子化値（quant）の範囲は０〜８１９１（１０進数）である。
【００３８】
このように本発明においては、入力する信号（mc）の値が閾値Ｋ未満である場合には、予め「べき乗値」を算出したテーブルを利用して精度の高い「べき乗値変換」を行い、信号（mc）の値が閾値Ｋより大きい場合には、簡易的な一次方程式を用いる方法によって、べき乗値を近似演算して求めるので、全体として、ＲＯＭ等で構成される記憶部の記憶容量を小さくすることが可能である。
【００３９】
ここで、閾値Ｋは、最終的に符号化された音声データの再生音の品質などから実験的に求めるようにすればよい。ただし、信号（mc）の値、すなわちＭＤＣＴ係数の値が小さく、Ｓ／Ｎ比が大きくなる範囲においては、精度の高い「べき乗演算」を行うべきであるので、予め「べき乗値」を算出したテーブルを用い、べき乗変換部６１０の出力を採用するようにした方が好ましい。つまり、図５に示すように、本実施の形態によれば、信号（mc）の値が小さく、Ｓ／Ｎ比が大きい範囲においては、精度の高い量子化を行い、Ｓ／Ｎ比が小さい範囲においては、一次方程式（y=ax+b）を用いた簡易的な近似演算を行うようにしているので、再生信号の品質を高く維持しながら、量子化処理の負荷を軽減させることを可能としているのである。
【００４０】
｛３．逆量子化処理｝
次に、図６および図７を参照しながら逆量子化演算回路１０および逆量子化演算処理について説明する。
【００４１】
逆量子化べき乗演算回路８は、量子化演算回路５から出力された量子化値（quant）を入力する。この量子化値（quant）は、５方向に分岐され、比較回路８０１と第３係数取得部８０２と第４係数取得部８０４とべき乗変換部８０６と乗算器８０８に入力される。
【００４２】
第３係数取得部８０２と第４係数取得部８０４とは、入力した量子化値（quant）の範囲に基づいて、それぞれ第３係数記憶部８０３と第４係数記憶部８０５から係数の値を取得する。
【００４３】
図７は、第３係数記憶部８０３と第４係数記憶部８０５に格納される各係数値を１つのテーブルに表したものである。したがって、図６では、第３係数記憶部８０３と第４係数記憶部８０５とは、別のハードウェア構成として示されているが、これら記憶部は共通のＲＯＭを利用して、図７で示すような単一のテーブルとして格納するようにしてもよい。
【００４４】
図７のテーブルにおいては省略しているが、インデックスは、量子化値（quant）の値に対応付けられている。図に示すように、量子化値（quant）の値が２１に区分され、それぞれの区分にインデックスがつけられている。そして、各インデックスに対応して、第３係数と第４係数が格納されているのである。これら係数は、近似計算用の一次方程式を規定する情報である。逆量子化べき乗演算回路８が入力する量子化値（quant）の範囲は、前述のように０〜８１９１の整数である。そして、量子化値（quant）の値がＬ未満の場合には、べき乗変換部８０６において「べき乗変換」が行われる。そして、量子化値（quant）の値がＬ以上の場合、つまり、量子化値（quant）の値がＬ〜８１９１の整数の場合には、量子化値（quant）が属しているインデックスに対応した一次方程式が決定され、その一次方程式を用いた近似演算を行って「べき乗近似値」が求められるのである。
【００４５】
なお、図７で示した各係数は一例であり、シミュレーション等により適宜最適な値を設定すればよい。また、ここでは、量子化値（quant）を２１のインデックスに区分しているが、このインデックスの区分数もシミュレーション等により適宜設定すればよい。また、各インデックスに含まれる信号の数は一定である必要はなく。量子化誤差が最小となるように設定すればよい。
【００４６】
量子化値（quant）の値がＬ以上である場合、第３係数取得部８０２と第４係数取得部８０４は、それぞれ、量子化値（quant）が所属するインデックスにしたがって、第３係数記憶部８０３と第４係数記憶部８０５から係数値を取得する。たとえば、インデックスが１０の場合には、第３係数取得部８０２は第３係数として「１２．７５」を、第４係数取得部８０６は第４係数として「２７５１」を取得する。
【００４７】
一方、量子化値（quant）がＬ未満である場合、べき乗変換部８０６は、べき乗値記憶部８０７から、量子化値（quant）に１対１に対応して格納されている「べき乗値」を取得する。べき乗値記憶部８０７は、Ｌ未満の量子化値（quant）に対する「べき乗値」を予め算出した値を格納しているのである。したがって、べき乗値記憶部８０７は、Ｌ個の「べき乗値」を格納可能な容量を備えていればよい。
【００４８】
次に、乗算器８０８は、量子化値（quant）と第１係数取得部８０２が出力した第１係数（iq_a）を入力し、この２つの信号を乗算して、乗算結果（tmp_4）を出力する。そして、シフタ８０９は乗算結果（tmp_4）を入力し、乗算結果（tmp_4）に対して２ビット右シフト演算を行う。具体的には、乗算結果（tmp_4）を２ビットで表現した場合に、２ビット分だけビットシフトを行うのである。たとえば、インデックス１０の場合であれば、乗算結果（１２．７５×（quant））を２ビット表現した場合に、２ビット分、右シフト演算を行うのである。シフタ８０９はシフト演算後の信号（tmp_5）を減算器８１０に対して出力する。
【００４９】
次に、減算器８１０は、シフト演算後の信号（tmp_5）と第２係数（iq_b）を入力し、シフト演算後の信号（tmp_5）から第２係数（iq_b）を減算し、「べき乗演算近似値」（pow_quant_av）を出力する。そして、セレクタ８１１は、減算器８１０の出力信号である「べき乗演算近似値」（pow_quant_av）と、べき乗変換部６１０の出力信号である「べき乗値」（pow_quant_ac）を入力する。
【００５０】
比較部８０１は、量子化値（quant）入力し、量子化値（quant）と閾値Ｌとの大小を比較する。そして、量子化値（quant）の値が閾値Ｌ未満の場合には、べき乗変換部８０６の出力信号である「べき乗値」（pow_quant_ac）を出力するようにセレクタ８１１に制御信号「１」を送信する。量子化値（quant）の値が閾値Ｌ以上の場合には、第３係数および第４係数を用いた近似計算により求めた「べき乗演算近似値」（pow_quant_av）を出力するようにセレクタ８１１に制御信号「０」を送信する。セレクタ８１１は、比較部８０１から入力した制御信号に基づいて、「べき乗演算近似値」（pow_quant_av）あるいは「べき乗値」（pow_quant_ac）のいずれかを「べき乗演算値」（pow_spec）として出力するのである。
【００５１】
逆量子化べき乗演算回路８が出力した「べき乗演算値」（pow_spec）は、逆量子化係数演算回路９に入力される。逆量子化係数演算回路９では、図示せぬ他の回路から与えられたスケールファクタによって「べき乗演算値」（pow_spec）が除算されて逆量子化値（requant）が算出される。算出された逆量子化値（requant）は、雑音判定回路１１に入力される。雑音判定回路１１では、ＭＤＣＴ係数である信号（mc）と逆量子化値（requant）から量子化雑音が算出され、この量子化雑音が所定の閾値を満たすか否か、すなわち、量子化雑音が許容量の範囲に収まっているか否かが判定される。この閾値は、要求される量子化の精度に応じて適宜設定される。
【００５２】
量子化雑音が所定の閾値を満たさない場合、つまり、雑音許容量を超えている場合には、スケールファクタを変更して、前述したように、再度、量子化および逆量子化処理が実行され、量子化雑音の判定が行われる。量子化雑音が所定の閾値を満たした場合には、量子化演算回路５が出力した量子化値（quant）を用いて符号化回路４において符号化処理が実行される。その後は、上述したように、符号化回路４において符号化処理が実行される。
【００５３】
このように、逆量子化処理においても、入力する信号（quant）の値が閾値Ｌ未満である場合には、予め「べき乗値」を算出したテーブルを利用して精度の高い「べき乗値変換」を行い、信号（quant）の値が閾値Ｌより大きい場合には、簡易的な一次方程式を用いる方法によって、「べき乗値」を近似演算して求めるので、全体として、ＲＯＭ等で構成される記憶部の記憶容量を小さくすることが可能である。
【００５４】
なお、上記実施の形態では、本発明をＭＰＥＧ４／ＡＡＣアルゴリズムにおける量子化回路に適用させたが、本発明の装置および方法は、一般的な量子化回路および量子化方法に適用させることが可能である。
【図面の簡単な説明】
【００５５】
【図１】本実施の形態にかかる音声符号化装置の全体概略図である。
【図２】量子化回路のブロック図である。
【図３】量子化べき乗演算回路のブロック図である。
【図４】べき乗演算近似テーブルを示す図である。
【図５】べき乗演算の近似方法を示す図である。
【図６】逆べき乗演算回路のブロック図である。
【図７】逆べき乗演算近似テーブルを示す図である。
【符号の説明】
【００５６】
２    量子化・符号化回路
３    量子化回路
４    符号化回路
６    量子化べき乗演算回路
８    逆量子化べき乗演算回路
【図１】
2005197989.tif 000005
【図２】
2005197989.tif 000006
【図３】
2005197989.tif 000007
【図４】
2005197989.tif 000008
【図５】
2005197989.tif 000009
【図６】
2005197989.tif 000010
【図７】
2005197989.tif 000011