JP3889738B2 - Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program - Google Patents

Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program Download PDF

Info

Publication number
JP3889738B2
JP3889738B2 JP2003335736A JP2003335736A JP3889738B2 JP 3889738 B2 JP3889738 B2 JP 3889738B2 JP 2003335736 A JP2003335736 A JP 2003335736A JP 2003335736 A JP2003335736 A JP 2003335736A JP 3889738 B2 JP3889738 B2 JP 3889738B2
Authority
JP
Japan
Prior art keywords
value
inverse quantization
scf
conversion
shift
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003335736A
Other languages
Japanese (ja)
Other versions
JP2005099629A (en
Inventor
康治 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2003335736A priority Critical patent/JP3889738B2/en
Publication of JP2005099629A publication Critical patent/JP2005099629A/en
Application granted granted Critical
Publication of JP3889738B2 publication Critical patent/JP3889738B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a reverse quantization device with small circuit scale and small operation error. <P>SOLUTION: Reverse quantization processing for inputting a scale factor index Scf, bit allocation Ba and a quantization code X and outputting a reverse quantization value Y is performed by reducing frequency of multiplication by using bit shift processing. Even when the multiplication is performed only once, an error to be generated in a single multiplication is suppressed to be small not only by taking out a part of integer power of 2 as first shift quantity S1 from the scale factor index but taking out a part of the integer power of 2 as second shift quantity S2 from the bit allocation Ba and a reference value R and replacing multiplication processing to the quantization code X with the bit shift processing as much as possible. <P>COPYRIGHT: (C)2005,JPO&amp;NCIPI

Description

本発明は、逆量子化装置、オーディオ復号化装置、画像復号化装置、逆量子化方法および逆量子化プログラムに関し、より特定的には、入力値X、スケールファクタインデックスScfおよびビットアロケーションBaから逆量子化値Yを生成する逆量子化装置、オーディオ復号化装置、画像復号化装置、逆量子化方法および逆量子化プログラムに関する。   The present invention relates to an inverse quantization device, an audio decoding device, an image decoding device, an inverse quantization method, and an inverse quantization program, and more specifically, an inverse from an input value X, a scale factor index Scf, and a bit allocation Ba. The present invention relates to an inverse quantization device, an audio decoding device, an image decoding device, an inverse quantization method, and an inverse quantization program that generate a quantized value Y.

アナログ信号を、デジタル信号処理で扱うためには、信号の定義域を離散化する標本化に加え、信号の値域を離散化する量子化の過程が必要である。また、既に値域の離散化が行なわれたデジタル信号を、より少ないデータで扱う場合などに、さらに粗く離散化することがある。この過程も量子化と呼ぶ。   In order to handle an analog signal by digital signal processing, in addition to sampling for discretizing the domain of the signal, a quantization process for discretizing the range of the signal is necessary. In addition, when a digital signal that has already been discretized in a range is handled with less data, the signal may be further coarsened. This process is also called quantization.

この量子化において離散化後の値を量子化値と呼び、その量子化値を割当てられた符号を量子化符号と呼ぶ。また、隣り合う量子化値の間隔を量子化ステップ幅と呼び、値域全体に含まれる量子化値の個数を量子化ステップ数と呼ぶ。   In this quantization, a value after discretization is called a quantized value, and a code assigned with the quantized value is called a quantized code. The interval between adjacent quantized values is called a quantization step width, and the number of quantized values included in the entire range is called a quantization step number.

逆に、デジタル信号処理を行なった後、アナログ信号として出力する場合などには、量子化符号からもとの連続的な値や、もとの小さなステップ幅で離散化された値を復元する過程が必要である。この過程を逆量子化と呼ぶ。   Conversely, when digital signal processing is performed and then output as an analog signal, the process of restoring the original continuous value from the quantized code or the value discretized with the original small step width is required. This process is called inverse quantization.

逆量子化の過程では、量子化符号に対応する量子化値を、逆量子化後の値(逆量子化値)とする変換が行なわれる。   In the process of inverse quantization, conversion is performed in which the quantization value corresponding to the quantization code is converted to a value after inverse quantization (inverse quantization value).

量子化値は、量子化の過程において連続的な値を近似したものである。このため、量子化値にはもとの値との誤差(量子化誤差)が発生している。   The quantization value approximates a continuous value in the quantization process. For this reason, an error (quantization error) from the original value occurs in the quantized value.

したがって、逆量子化の過程では量子化が行なわれる前の値を復元することはできず、復元される値は量子化誤差を含んだ近似的な値になる。   Accordingly, the value before quantization cannot be restored in the inverse quantization process, and the restored value is an approximate value including a quantization error.

また、量子化の過程において、実際の信号が取る値域の範囲(ダイナミックレンジ)で信号を正規化してから量子化を行なうスケーリング処理が行なわれる場合がある。スケーリング処理を行なう場合には、正規化の係数(スケールファクタ)と正規化後の信号に対する量子化符号が個別に保持される。スケーリング処理が行なわれる場合には逆量子化の過程においては、正規化後の信号に対する量子化符号を逆量子化した後、スケールファクタにより逆正規化を行ない、逆量子化値を算出する逆スケーリング処理が行なわれる。   In addition, in the quantization process, there is a case where scaling processing is performed in which the signal is normalized after being in a range (dynamic range) taken by the actual signal. When performing the scaling process, the normalization coefficient (scale factor) and the quantization code for the normalized signal are individually held. When scaling processing is performed, in the process of inverse quantization, inverse quantization is performed on the quantized code for the signal after normalization, and then inverse normalization is performed using a scale factor to calculate an inverse quantization value. Processing is performed.

スケーリング処理により、実際に信号が存在している値域にだけ量子化符号を割当てることができるので、限られた量子化ステップ数であっても、量子化誤差を抑えて、入力となる信号に応じた効果的な量子化が可能になる。   Since the quantization code can be assigned only to the range where the signal actually exists by the scaling process, even if the number of quantization steps is limited, the quantization error is suppressed and the input signal is Effective quantization is possible.

以上のような量子化、および、スケーリングの技術は、MPEG(Motion Picture Experts Group)規格などに代表される画像符号化やオーディオ符号化など広い分野で用いられている。   The quantization and scaling techniques as described above are used in a wide range of fields such as image coding and audio coding represented by the MPEG (Motion Picture Experts Group) standard.

また、量子化に関する一般的な説明は、たとえば、「画像のデジタル信号処理、日刊工業」の第6章や、「音響システムとデジタル処理、電子情報通信学会」の第1章などに記載されている。   General explanations regarding quantization are described in, for example, Chapter 6 of “Digital Signal Processing of Images, Nikkan Kogyo”, Chapter 1 of “Sound Systems and Digital Processing, Institute of Electronics, Information and Communication Engineers”, and the like. Yes.

ここでは、標準的なオーディオ符号化の1つである、ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式で採用されている量子化方式を例にして、具体的な逆量子化、および逆スケーリング処理を行なう従来の装置について説明する。   Here, specific dequantization is taken by taking as an example the quantization method employed in the MPEG1-Audio Layer II method described in ISO / IEC11172-3, which is one of standard audio encodings, A conventional apparatus that performs inverse scaling processing will be described.

ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式は、高い音質を保ちながら、オーディオ信号のデータ量を圧縮することを目的としたオーディオ符号化方式であり、音質をほとんど劣化させることなく、オーディオ信号のデータ量を約5分の1に圧縮することが可能である。   The MPEG1-Audio Layer II system described in ISO / IEC 11172-3 is an audio encoding system for the purpose of compressing the data amount of an audio signal while maintaining high sound quality, and hardly deteriorates the sound quality. It is possible to compress the data amount of the audio signal to about one fifth.

データの保存や伝送を行なう場合には、時系列のオーディオ信号をMPEG1−Audio Layer IIフォーマットのデータに変換する符号化処理によって、データの圧縮が行なわれる。   When data is stored or transmitted, data compression is performed by an encoding process that converts time-series audio signals into MPEG1-Audio Layer II format data.

また、データの再生を行なう場合は、復号化処理によってデータ圧縮されたMPEG1−Audio Layer IIフォーマットのデータが、時系列のオーディオ信号に変換される。この復号化処理では、オーディオ信号の振幅を符号化する際に、後述するような逆量子化、および、逆スケーリング処理が行なわれる。   When data is reproduced, MPEG1-Audio Layer II format data compressed by decoding processing is converted into a time-series audio signal. In this decoding process, when the amplitude of the audio signal is encoded, inverse quantization and inverse scaling process as described later are performed.

上記の復号化処理を行なう復号化装置の詳細については、ISO/IEC11172−3に記載されている。   Details of the decoding apparatus that performs the above-described decoding processing are described in ISO / IEC 11172-3.

次に、ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式で採用されている逆量子化、および、逆スケーリング処理について説明する。   Next, the inverse quantization and inverse scaling processing employed in the MPEG1-Audio Layer II system described in ISO / IEC 11172-3 will be described.

逆量子化、および、逆スケーリング処理における入力値は、スケーリング処理の係数に対応する符号であるスケールファクタインデックスScf、量子化ステップ数、量子化ステップ幅に対応した符号であるビットアロケーションBa、オーディオ信号の振幅に対応した符号である量子化符号Xである。   The input values in the inverse quantization and inverse scaling processes are a scale factor index Scf that is a code corresponding to the coefficient of the scaling process, a number of quantization steps, a bit allocation Ba that is a code corresponding to the quantization step width, and an audio signal. Quantized code X, which is a code corresponding to the amplitude of.

スケールファクタインデックスScf、ビットアロケーションBaおよび量子化符号Xは、MPEG1−Audio Layer IIフォーマットのデータに所定の形式で格納されており、このデータから対応する箇所のビット列を取出し、所定の加工を行なって生成される。   The scale factor index Scf, the bit allocation Ba, and the quantization code X are stored in a predetermined format in the data of the MPEG1-Audio Layer II format, and a bit string of a corresponding portion is extracted from this data and subjected to predetermined processing. Generated.

以下、この点について詳しく説明する。   Hereinafter, this point will be described in detail.

[ストリームからの数値の取出し]
スケールファクタインデックスScfは、MPEG1−Audio Layer IIフォーマット中に6ビットのビット列として格納されている。このビット列がそのまま整数値として読出され、スケールファクタインデックスScfとして使用される。ただし、ISO/IEC11172−3の中で、この6ビット中の全ビットが“1”となることは禁止されているので、読出されるスケールファクタインデックスScfは、0〜62の範囲の整数値となる。
[Retrieving numbers from a stream]
The scale factor index Scf is stored as a 6-bit bit string in the MPEG1-Audio Layer II format. This bit string is read as an integer value as it is and used as the scale factor index Scf. However, in the ISO / IEC 11172-3, it is prohibited that all of these 6 bits become “1”, so that the scale factor index Scf to be read is an integer value in the range of 0 to 62. Become.

次にビットアロケーションBaの生成について説明する。まずビットアロケーションBaのもととなるデータが、MPEG1−Audio Layer IIフォーマット中に所定のビット数で格納されている。ここでは、このもととなるデータを、インデックス(index)データと呼ぶ。インデックスデータは、所定のビット数に応じた整数値となる。インデックスデータのビット数は、ISO/IEC11172−3のテーブルB.2において定められているように、2〜4ビットのいずれかである。   Next, generation of the bit allocation Ba will be described. First, data that is the basis of the bit allocation Ba is stored in a predetermined number of bits in the MPEG1-Audio Layer II format. Here, the original data is referred to as index data. The index data is an integer value corresponding to a predetermined number of bits. The number of bits of the index data is the table B.1 of ISO / IEC11172-3. 2 to 4 bits as defined in 2.

また、インデックスデータをステップ数に変換する方法もISO/IEC11172−3のテーブルB.2において定められている。ステップ数は、次に図11で説明するように、サンプリング周波数、1チャネル当りのビットレート、および、逆量子化されるオーディオ信号の属する周波数帯域(サブバンド)に応じて決められる。   A method for converting index data into the number of steps is also described in Table B. of ISO / IEC 11172-3. 2 is stipulated. As will be described next with reference to FIG. 11, the number of steps is determined according to the sampling frequency, the bit rate per channel, and the frequency band (subband) to which the audio signal to be dequantized belongs.

図11は、ISO/IEC11172−3のテーブルB.2の一例を示した図である。   FIG. 11 shows the table B. of ISO / IEC 11172-3. It is the figure which showed an example of 2.

ISO/IEC11172−3のテーブルB.2には複数のテーブルがあり、サンプリング周波数、1チャンネル当りのビットレートに基づいて、どのテーブルを使用するかが決定される。   Table B. of ISO / IEC 11172-3. 2 has a plurality of tables, and which table is used is determined based on the sampling frequency and the bit rate per channel.

図11を参照して、sbはサブバンドを示す。nbalという語の下の1列は、インデックスデータがMPEG1−Audio Layer IIフォーマット中に何ビットで入っているかを示す値である。nbalの右には、各インデックスデータ0〜15に対応するステップ数が記載されている。ここで、このステップ数は、「Number of steps」とISO/IEC11172−3では記載されている。   Referring to FIG. 11, sb represents a subband. One column under the word nbal is a value indicating how many bits the index data is included in the MPEG1-Audio Layer II format. On the right side of nbal, the number of steps corresponding to each index data 0 to 15 is described. Here, the number of steps is described in “Number of steps” in ISO / IEC 11172-3.

サンプリング周波数、1チャネル当りのビットレートによってテーブルが選択され、そのテーブルにより逆量子化されるオーディオ信号の属する周波数帯域(サブバンド)に対応するインデックスデータのビット数がいくらであるかが取得される。そしてインデックスデータがストリーム中から読出され、再びこのテーブルを用いてインデックスデータ0〜15が、オーディオ信号のサブバンドでどのようなステップ数に相当するかが取得される。取得されたステップ数は、量子化ステップ数に相当する値である。   A table is selected according to the sampling frequency and the bit rate per channel, and the number of bits of the index data corresponding to the frequency band (subband) to which the audio signal to be inversely quantized belongs is obtained by the table. . Then, the index data is read out from the stream, and again, using this table, the number of steps corresponding to the index data 0 to 15 in the subband of the audio signal is acquired. The acquired number of steps is a value corresponding to the number of quantization steps.

MPEG1−Audio Layer II方式において取り得るステップ数の種類は、図11に示されるように、3,5,7,9,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535の17種類である。この17種類のステップ数にそれぞれ別の符号を割当て、このように得られる符号をビットアロケーションBaと定義する。   As shown in FIG. 11, the types of steps that can be taken in the MPEG1-Audio Layer II system are 3, 5, 7, 9, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191. , 16383, 32767, 65535. A different code is assigned to each of the 17 types of steps, and the code thus obtained is defined as a bit allocation Ba.

図12は、ビットアロケーションBaとステップ数(Number of steps)との対応を示した図である。   FIG. 12 is a diagram showing the correspondence between the bit allocation Ba and the number of steps.

図12では、ステップ数の小さい方から順に0〜16の整数をビットアロケーションBaとして割当てている。   In FIG. 12, integers from 0 to 16 are assigned as bit allocation Ba in order from the smallest number of steps.

量子化符号Xは、MPEG1−Audio Layer IIフォーマットのデータに所定のビット数で格納されている数値をもとに生成される。このビット数は、図11に例示したISO/IEC11172−3のテーブルB.4と図12とに基づいて定められる。   The quantized code X is generated based on a numerical value stored in MPEG1-Audio Layer II format data with a predetermined number of bits. This number of bits corresponds to the table B.1 of ISO / IEC11172-3 illustrated in FIG. 4 and FIG.

図13は、ISO/IEC11172−3のテーブルB.4を示した図である。   FIG. 13 shows the table B. of ISO / IEC 11172-3. FIG.

図12、図13に記載のステップ数(Number of steps)、符号語あたりのサンプル数(Samples per codeword)、符号語あたりのビット数(Bits per codeword)を参照して、ビットアロケーションBaをもとにして所定のビット数が決められる。なお、Samples per codewordは1つの符号に何オーディオサンプルのデータが符号化されているかを示す値である。また、Bits per codewordは、その符号は何ビットで符号化されているかを示す値である。   With reference to the number of steps, the number of samples per codeword (Samples per codeword), and the number of bits per codeword (Bits per codeword) shown in FIGS. Thus, a predetermined number of bits is determined. Samples per codeword is a value indicating how many audio sample data are encoded in one code. Bits per codeword is a value indicating how many bits the code is encoded.

ISO/IEC11172−3では、Samples per codeword、Bits per codewordの組合わせにより、1つのオーディオサンプルが1つの符号で符号化されている場合と、3つのオーディオサンプルが1つの符号で符号化されている場合とがある。しかしいずれの場合も、ISO/IEC11172−3でで定められた処理によって、各オーディオサンプルに対して、0からステップ数の間の整数値が取得される。MPEG1−Audio Layer IIフォーマットのデータから取得された整数値は、ステップ数を2進数表現したときの桁数の最上位ビットを符号ビットとし、それ以降のビットを小数部分とする固定小数点形式の小数値として保持され、さらにその符号ビットが反転された形式に変換される。   In ISO / IEC11172-3, one audio sample is encoded with one code and three audio samples are encoded with one code by a combination of Samples per codeword and Bits per codeword. There are cases. However, in any case, an integer value between 0 and the number of steps is acquired for each audio sample by the process defined in ISO / IEC 11172-3. The integer value obtained from MPEG1-Audio Layer II format data is a fixed-point format small number in which the most significant bit of the number of steps when the step number is expressed in binary is the sign bit and the subsequent bits are the decimal part. It is stored as a numerical value, and further converted into a format in which its sign bit is inverted.

たとえば、DSP(デジタルシグナルプロセッサ)などの24ビットのレジスタ上で、最上位ビットが符号ビットとして保持される場合について述べる。ビットアロケーションBa=5で、データから取得された整数値=5(2進数表現で101)であったとする。図12から、ビットアロケーションBa=5ならばステップ数が31であるので、取得された整数値を2進数表現した場合の桁数は5となる。5桁の2進数は最大で31だからである。この場合、DSPのレジスタ上では5桁目が最上位ビットとなるように最上位ビット側に値が詰められる。保持される値は2進数表現で、
0010 1000 0000 0000 0000 0000として保持される。
For example, a case will be described in which the most significant bit is held as a sign bit on a 24-bit register such as a DSP (digital signal processor). It is assumed that the bit allocation Ba = 5 and the integer value obtained from the data = 5 (101 in binary representation). From FIG. 12, since the number of steps is 31 if bit allocation Ba = 5, the number of digits when the acquired integer value is expressed in binary is 5. This is because the 5-digit binary number is 31 at the maximum. In this case, the value is packed on the most significant bit side so that the fifth digit is the most significant bit on the DSP register. The stored value is in binary notation,
0010 1000 0000 0000 0000 0000 is held.

さらに、その符号ビットが反転されるので、保持される値は、2進数表現で、
1010 1000 0000 0000 0000 0000となる。
Furthermore, since the sign bit is inverted, the value to be held is represented by a binary number,
1010 1000 0000 0000 0000 0000

したがって、この2進数を24ビットの固定小数点形式で読めば、最終的に保持された値は、−0.6875となる。このようにして得られる小数値を量子化符号Xと定義する。   Therefore, if this binary number is read in a 24-bit fixed-point format, the finally held value is -0.6875. The decimal value obtained in this way is defined as a quantization code X.

次式(11)は、ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式の復号化時における逆量子化、および、逆スケーリングの変換式である。
Y=2(P1[Scf]/M)*P2[Ba]*(X+P3[Ba]) …(11)
ここで、「*」は乗算を表す演算符号であり、「/」は除算を表す演算符号である。P2[Ba],P3[Ba]は、ビットアロケーションBaに対して決まる小数値であり、図13に示したテーブルの値C,Dとしてそれぞれ定められている。ビットアロケーションBaと小数値P2[Ba],P3[Ba]との対応付けは、図12、図13を参照することで決定される。
The following equation (11) is a conversion equation for inverse quantization and inverse scaling at the time of decoding of the MPEG1-Audio Layer II system described in ISO / IEC 11172-3.
Y = 2 (P1 [Scf] / M) * P2 [Ba] * (X + P3 [Ba]) (11)
Here, “*” is an operation code representing multiplication, and “/” is an operation code representing division. P2 [Ba] and P3 [Ba] are decimal values determined with respect to the bit allocation Ba, and are defined as values C and D in the table shown in FIG. The association between the bit allocation Ba and the decimal values P2 [Ba] and P3 [Ba] is determined by referring to FIGS.

MPEG1−Audio Layer IIフォーマットのデータから以上のような処理を行ない、スケールファクタインデックスScf,ビットアロケーションBa,量子化符号Xを取出し、式(11)に従って逆量子化値Yに変換することで、逆量子化、および、逆スケーリング処理が行なわれる。   The above processing is performed from the data of the MPEG1-Audio Layer II format, the scale factor index Scf, the bit allocation Ba, and the quantization code X are taken out and converted into the inverse quantized value Y according to the equation (11). Quantization and inverse scaling processing are performed.

[従来の逆量子化および逆スケーリング処理]
次に、ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式で採用されている逆量子化、および、逆スケーリング処理を実現する、従来の逆量子化および逆スケーリング装置について説明する。
[Conventional inverse quantization and inverse scaling]
Next, a conventional inverse quantization and inverse scaling apparatus that implements inverse quantization and inverse scaling processing employed in the MPEG1-Audio Layer II system described in ISO / IEC 11172-3 will be described.

図14は、従来の、逆量子化、および、逆スケーリング装置を説明するための概略ブロック図である。   FIG. 14 is a schematic block diagram for explaining a conventional inverse quantization and inverse scaling apparatus.

図14を参照して、スケールファクタインデックスScf,ビットアロケーションBa,量子化符号Xがこの装置に入力される。これらの入力値は、前述のように、MPEG1−Audio Layer IIフォーマットのデータの中から読出された値に基づいて発生される。テーブル参照部110は、スケールファクタインデックスScfを入力として、変換用テーブルTo1を参照して、スケーリング係数Svを生成し出力する。   Referring to FIG. 14, scale factor index Scf, bit allocation Ba, and quantization code X are input to this apparatus. These input values are generated based on values read out from the data in the MPEG1-Audio Layer II format as described above. The table reference unit 110 receives the scale factor index Scf, refers to the conversion table To1, and generates and outputs the scaling coefficient Sv.

変換用テーブルTo1には、0〜62の範囲のスケールファクタインデックスScfに対応する小数値であるスケーリング係数Svが格納されている。スケーリング係数Svは、次式(12)で予め演算された結果の値である。
Sv=2((3-Scf)/3) …(12)
テーブル参照部111は、ビットアロケーションBaを入力として、変換用テーブルTo2を参照して、変換係数Co1,Co2を生成して出力する。変換用テーブルTo2には、図12で示された0〜16のビットアロケーションBaに対して、対応する図13のCが変換係数Co1の値として格納され、図13の対応するDが変換係数Co2の値として格納されている。
The conversion table To1 stores a scaling coefficient Sv that is a decimal value corresponding to the scale factor index Scf in the range of 0 to 62. The scaling coefficient Sv is a value obtained as a result of calculation in advance by the following equation (12).
Sv = 2 ((3-Scf) / 3) (12)
The table reference unit 111 receives the bit allocation Ba as an input, refers to the conversion table To2, and generates and outputs conversion coefficients Co1 and Co2. In the conversion table To2, the C of FIG. 13 corresponding to the bit allocation Ba of 0 to 16 shown in FIG. 12 is stored as the value of the conversion coefficient Co1, and the corresponding D of FIG. 13 is the conversion coefficient Co2. Is stored as the value of.

変換部112は、変換係数Co1,Co2と、量子化符号Xとを入力として受け、変換値Zoを生成し出力する。変換部112における変換は次式(13)に示された加算および乗算処理によって行なわれる。
Zo=Co1*(X+Co2) …(13)
変換部113は、スケーリング係数Svと、変換値Zoとを入力として受け、逆量子化値Yを生成し出力する。変換部113における変換は、次式(14)に示された乗算処理によって行なわれる。
Y=Sv*Zo …(14)
以上のようにして、従来は、逆量子化、および、逆スケーリングが行なわれていた。
The conversion unit 112 receives the conversion coefficients Co1 and Co2 and the quantization code X as inputs, and generates and outputs a conversion value Zo. The conversion in the conversion unit 112 is performed by the addition and multiplication processing shown in the following equation (13).
Zo = Co1 * (X + Co2) (13)
The conversion unit 113 receives the scaling coefficient Sv and the conversion value Zo as inputs, and generates and outputs an inverse quantization value Y. The conversion in the conversion unit 113 is performed by a multiplication process represented by the following equation (14).
Y = Sv * Zo (14)
As described above, conventionally, inverse quantization and inverse scaling have been performed.

図15は、従来の逆量子化および逆スケーリング処理をDSP等のコンピュータを用いて行なう場合のフローチャートである。   FIG. 15 is a flowchart in the case where conventional inverse quantization and inverse scaling processing are performed using a computer such as a DSP.

図15を参照して、ステップS101において逆量子化および逆スケーリング処理が開始される。続いてステップS102においてテーブルTo1参照処理が行なわれる。DSPにおいては、MPEG1−Audio Layer IIフォーマットのデータの中から、所定の処理を介してスケールファクタインデックスScf,ビットアロケーションBaおよび量子化符号Xが読出されてランダムアクセスメモリ(RAM)に格納されているとする。   Referring to FIG. 15, in step S101, inverse quantization and inverse scaling processing are started. Subsequently, a table To1 reference process is performed in step S102. In the DSP, the scale factor index Scf, the bit allocation Ba, and the quantization code X are read out from the MPEG1-Audio Layer II format data through a predetermined process and stored in a random access memory (RAM). And

テーブルTo1参照処理では、RAMからスケールファクタインデックスScfを読出し、リードオンリメモリ(ROM)に格納された変換用テーブルTo1を参照して、スケーリング係数Svを生成しRAMに格納する。変換用テーブルTo1は図14のものと同じである。   In the table To1 reference processing, the scale factor index Scf is read from the RAM, the scaling coefficient Sv is generated by referring to the conversion table To1 stored in the read only memory (ROM), and stored in the RAM. The conversion table To1 is the same as that in FIG.

ステップS102が終了すると続いてステップS103においてテーブルTo2参照処理が行なわれる。ステップS103では、RAMからビットアロケーションBaを読出し、ROMに格納された変換用テーブルTo2を参照して、変換係数Co1,Co2を生成し、RAMに格納する。変換用テーブルTo2は、図14のものと同じである。   When step S102 ends, table To2 reference processing is performed in step S103. In step S103, the bit allocation Ba is read from the RAM, the conversion coefficients Co1 and Co2 are generated by referring to the conversion table To2 stored in the ROM, and stored in the RAM. The conversion table To2 is the same as that in FIG.

続いてステップS104において第1の変換処理が行なわれる。ステップS104では、RAMから変換係数Co1,Co2と量子化符号Xとを読出して、次の式(15)に示された加算および乗算処理を行ない、変換値Zoを生成しRAMに格納する。
Zo=Co1*(X+Co2) …(15)
ステップS104が終了すると、続いてステップS105において第2の変換処理が行なわれる。ステップS105では、RAMからスケーリング係数Svと、変換値Zoとを読出し、次の式(16)に示された乗算処理を行ない、逆量子化値Yを生成しRAMに格納する。
Y=Sv*Zo …(16)
最後に、ステップS106において逆量子化および逆スケーリング処理が終了する。
Subsequently, in step S104, a first conversion process is performed. In step S104, the conversion coefficients Co1 and Co2 and the quantization code X are read from the RAM, the addition and multiplication processing shown in the following equation (15) is performed, and a conversion value Zo is generated and stored in the RAM.
Zo = Co1 * (X + Co2) (15)
When step S104 ends, a second conversion process is subsequently performed in step S105. In step S105, the scaling coefficient Sv and the conversion value Zo are read from the RAM, the multiplication processing shown in the following equation (16) is performed, and the inverse quantization value Y is generated and stored in the RAM.
Y = Sv * Zo (16)
Finally, in step S106, the inverse quantization and inverse scaling processing ends.

以上のようにしてDSPを用いた場合においても、逆量子化および逆スケーリング処理が行なわれる。   Even when the DSP is used as described above, inverse quantization and inverse scaling processing are performed.

なお、上記の従来技術の説明は、ISO/IEC11172−3に記載されたMPEG1−Audio Layer II方式に限らず、逆量子化および逆スケーリング処理のうち、特に式(11)に従って変換を行なうものに、一般性を失うことなく適用できるものである。
Y=2(P1[Scf]/M)*P2[Ba]*(X+P3[Ba]) …(11)再掲
なお、逆量子化処理の演算の負荷を小さくする関連技術が、特開平8−292795(特許文献1)に開示されている。
特開平8−292795号公報
Note that the above description of the prior art is not limited to the MPEG1-Audio Layer II system described in ISO / IEC 11172-3, but is the one that performs conversion according to Equation (11) among the inverse quantization and inverse scaling processes. It can be applied without losing generality.
Y = 2 (P1 [Scf] / M) * P2 [Ba] * (X + P3 [Ba]) (11) re-displayed A related technique for reducing the operation load of inverse quantization processing is disclosed in Japanese Patent Laid-Open No. 8-292975. (Patent Document 1).
Japanese Patent Application Laid-Open No. 8-292895

式(11)に従う逆量子化、および、逆スケーリングを行なう場合、図14で説明した従来の方法では、1オーディオサンプルに対して2回の乗算を行なう必要がある。   When performing inverse quantization and inverse scaling according to Equation (11), the conventional method described with reference to FIG. 14 needs to perform two multiplications for one audio sample.

一般に、乗算をハードウェアとして実現する場合は、規模の大きな回路が必要であり、ソフトウェアとして実現する場合は、多くの処理ステップ数を必要とする。したがって、DSPなどでこの逆量子化、および、逆スケーリングを実現する場合には、コスト高になるという問題が生ずる。   In general, when the multiplication is realized as hardware, a large-scale circuit is required, and when it is realized as software, a large number of processing steps are required. Therefore, when this inverse quantization and inverse scaling are realized by a DSP or the like, there arises a problem that the cost becomes high.

また、DSPなどを用いてデジタル信号処理を実現する場合、演算の桁数に制限があるので、乗算を繰返すことによって誤差が累積していく。さらに、固定小数点形式で演算する場合にも、1回目の乗算で小さな値を乗じて、2回目の乗算で大きな値を乗ずると、1回目の乗算で有効桁数が少なくなり、2回目の乗算でその誤差が増幅される現象が起こる。このように、乗算回数が増えるほど、大きな演算誤差が発生しやすくなるという問題が生ずる。また、乗算の順序を考慮しないと誤差が増幅されてしまうという問題も生ずる。   Further, when digital signal processing is realized using a DSP or the like, since the number of digits of calculation is limited, errors are accumulated by repeating multiplication. In addition, when calculating in the fixed-point format, if the first multiplication is multiplied by a small value and the second multiplication is multiplied by a large value, the first multiplication reduces the number of significant digits, and the second multiplication. The phenomenon that the error is amplified occurs. Thus, there arises a problem that a larger calculation error is more likely to occur as the number of multiplications increases. There is also a problem that the error is amplified if the order of multiplication is not taken into consideration.

本発明は、このような問題を解決するために提案されたものであり、少ない乗算回数で、精度よく逆量子化および逆スケーリングを実現する逆量子化装置およびオーディオ復号化装置を提供することを目的とする。   The present invention has been proposed to solve such a problem, and provides an inverse quantization device and an audio decoding device that can accurately realize inverse quantization and inverse scaling with a small number of multiplications. Objective.

この発明は、要約すると、量子化符号X、スケールファクタインデックスScfおよびビットアロケーションBaを受けて逆量子化および逆スケーリング処理を行い逆量子化値Yを出力する逆量子化装置であって、第1の記憶手段と、第1の参照手段と、第2の記憶手段と、第2の参照手段と、変換手段と、シフト処理手段とを備える。   In summary, the present invention is an inverse quantization apparatus that receives a quantization code X, a scale factor index Scf, and a bit allocation Ba, performs inverse quantization and inverse scaling processing, and outputs an inverse quantization value Y. Storage means, first reference means, second storage means, second reference means, conversion means, and shift processing means.

第1の記憶手段は、下式(1),(2)に基づき予め算出された各スケールファクタインデックスScfに対応するシフト量S1および参照値Rを格納する。第1の参照手段は、第1の記憶手段を参照して、入力されたスケールファクタインデックスScfに対応するシフト量S1および参照値Rを得る。第2の記憶手段は、下式(3),(4),(5)に基づき予め算出された各参照値Rおよび各ビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を格納する。第2の参照手段は、第2の記憶手段を参照して、第1の参照手段から出力された参照値Rと入力されたビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を得る。変換手段は、入力された量子化符号Xと第2の参照手段から出力された変換係数C1およびC2とを用いて下式(6)に従う変換を行い変換値Zを出力する。シフト処理手段は、変換手段から出力された変換値Zに対し第1、第2の参照手段によってぞれぞれ得られたシフト量S1,S2を用い下式(7)に従うシフト処理を行い逆量子化値Yを出力する。シフト処理手段とを備える。
S1=int(P1[Scf]/M) …(1)
R=mod(P1[Scf],M) …(2)
S2=int((R/M)+log2(P2[Ba]) …(3)
C1=(2(R/M)*P2[Ba])*(2(-S2)) …(4)
C2=P3[Ba] …(5)
Z=C1*(X+C2) …(6)
Y=Z*2(S1+S2) …(7)
ただし、P1[Scf]は、各スケールファクタインデックスScfの値に対し予め定められた整数を示し、P2[Ba],P3[Ba]は、各ビットアロケーションBaの値に対し予め定められた小数を示し、Mは、予め定められた正の整数を示す。
The first storage means stores a shift amount S1 and a reference value R corresponding to each scale factor index Scf calculated in advance based on the following expressions (1) and (2). The first reference means refers to the first storage means to obtain the shift amount S1 and the reference value R corresponding to the input scale factor index Scf. The second storage means stores the reference value R calculated in advance based on the following expressions (3), (4), and (5) and the shift amount S2, the conversion coefficients C1 and C2 corresponding to each bit allocation Ba. . The second reference means refers to the second storage means to obtain the shift value S2 corresponding to the reference value R output from the first reference means and the input bit allocation Ba, and the transform coefficients C1 and C2. . The conversion means performs conversion according to the following equation (6) using the input quantization code X and the conversion coefficients C1 and C2 output from the second reference means, and outputs a conversion value Z. The shift processing means performs a shift process according to the following equation (7) using the shift amounts S1 and S2 respectively obtained by the first and second reference means for the conversion value Z output from the conversion means and performs the reverse operation. The quantized value Y is output. Shift processing means.
S1 = int (P1 [Scf] / M) (1)
R = mod (P1 [Scf], M) (2)
S2 = int ((R / M) + log 2 (P2 [Ba]) (3)
C1 = (2 (R / M) * P2 [Ba]) * (2 (-S2) ) (4)
C2 = P3 [Ba] (5)
Z = C1 * (X + C2) (6)
Y = Z * 2 (S1 + S2) (7)
However, P1 [Scf] indicates a predetermined integer for the value of each scale factor index Scf, and P2 [Ba] and P3 [Ba] indicate a predetermined decimal for the value of each bit allocation Ba. M represents a predetermined positive integer.

好ましくは、シフト処理手段は、シフト処理を、シフト量S1に対応する第1のシフト演算を行ない、さらに、シフト量S2に対応する第2のシフト演算を行なうことにより実行する。   Preferably, the shift processing means performs the shift process by performing a first shift operation corresponding to the shift amount S1 and further performing a second shift operation corresponding to the shift amount S2.

好ましくは、シフト処理手段は、シフト処理を、シフト量S1とシフト量S2の合計値に対応するシフト演算を一括して行なうことにより実行する。   Preferably, the shift processing means performs the shift processing by collectively performing a shift operation corresponding to the total value of the shift amount S1 and the shift amount S2.

好ましくは、変換手段は、変換係数C1,C2および量子化符号Xに基づき次式
Z=C1*X+C2
に従い変換値Zを生成する。
Preferably, the transforming means is based on transform coefficients C1 and C2 and a quantization code X, and the following formula Z = C1 * X + C2
The conversion value Z is generated according to

好ましくは、P1[Scf]は、3−Scfであり、Mは、3である。   Preferably, P1 [Scf] is 3-Scf and M is 3.

または、復号化時に逆量子化処理を含むオーディオ符号化方式に基づいて復号化処理を行なうオーディオ復号化装置であって、上記いずれかの逆量子化装置を備える。   Or it is an audio decoding apparatus which performs a decoding process based on the audio encoding system including a dequantization process at the time of decoding, Comprising: One of the said dequantization apparatuses is provided.

または、復号化時に逆量子化処理を含む画像符号化方式に基づいて復号化処理を行なう画像復号化装置であって、上記いずれかの逆量子化装置を備える。   Or it is an image decoding apparatus which performs a decoding process based on the image coding system including a dequantization process at the time of decoding, Comprising: One of the said dequantization apparatuses is provided.

この発明の他の局面に従うと、量子化符号X、スケールファクタインデックスScfおよびビットアロケーションBaを受けて逆量子化および逆スケーリング処理を行い逆量子化値Yを出力する逆量子化方法であって、下式(1),(2)に基づき予め算出された各スケールファクタインデックスScfに対応するシフト量S1および参照値Rを格納する第1の記憶手段を参照して、入力されたスケールファクタインデックスScfに対応するシフト量S1および参照値Rを得るステップと、下式(3),(4),(5)に基づき予め算出された各参照値Rおよび各ビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を格納する第2の記憶手段を参照して、得られた参照値Rと入力されたビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を得るステップと、入力された量子化符号Xと得られた変換係数C1およびC2とを用いて下式(6)に従う変換を行い変換値Zを出力するステップと、出力された変換値Zに対し得られたシフト量S1,S2を用い下式(7)に従うシフト処理を行い逆量子化値Yを出力するステップとを備える。
S1=int(P1[Scf]/M) …(1)
R=mod(P1[Scf],M) …(2)
S2=int((R/M)+log2(P2[Ba]) …(3)
C1=(2(R/M)*P2[Ba])*(2(-S2)) …(4)
C2=P3[Ba] …(5)
Z=C1*(X+C2) …(6)
Y=Z*2(S1+S2) …(7)
ただし、P1[Scf]は、各スケールファクタインデックスScfの値に対し予め定められた整数を示し、P2[Ba],P3[Ba]は、各ビットアロケーションBaの値に対し予め定められた小数を示し、Mは、予め定められた正の整数を示す。
According to another aspect of the present invention, there is provided an inverse quantization method that receives a quantization code X, a scale factor index Scf, and a bit allocation Ba, performs inverse quantization and inverse scaling processing, and outputs an inverse quantization value Y. Referring to the first storage means for storing the shift amount S1 and the reference value R corresponding to each scale factor index Scf calculated in advance based on the following equations (1) and (2), the inputted scale factor index Scf A step of obtaining a shift amount S1 and a reference value R corresponding to each of the reference values R, and a shift amount S2 corresponding to each reference value R and each bit allocation Ba calculated in advance based on the following equations (3), (4), (5) Referring to the second storage means for storing the conversion coefficients C1 and C2, the obtained reference value R and the shift amount S corresponding to the input bit allocation Ba , Obtaining transform coefficients C1 and C2, using the input quantization code X and the obtained transform coefficients C1 and C2, performing transformation according to the following equation (6), and outputting a transformed value Z: And a step of performing a shift process according to the following equation (7) using the shift amounts S1 and S2 obtained for the converted value Z and outputting an inverse quantized value Y.
S1 = int (P1 [Scf] / M) (1)
R = mod (P1 [Scf], M) (2)
S2 = int ((R / M) + log 2 (P2 [Ba]) (3)
C1 = (2 (R / M) * P2 [Ba]) * (2 (-S2) ) (4)
C2 = P3 [Ba] (5)
Z = C1 * (X + C2) (6)
Y = Z * 2 (S1 + S2) (7)
However, P1 [Scf] indicates an integer predetermined for each scale factor index Scf, and P2 [Ba] and P3 [Ba] indicate a predetermined decimal number for each bit allocation Ba value. M represents a predetermined positive integer.

または、逆量子化プログラムであって、上記逆量子化方法に基づく処理を、コンピュータに実行させる。   Or it is a dequantization program and makes a computer perform the process based on the said dequantization method.

本発明によれば、逆量子化および逆スケーリング装置において、乗算を1回しか行なっていない。したがって、ハードウェアとして実現する場合は、回路規模を小さくすることができる。またソフトウェアとして実現する場合は、処理ステップ数を減らすことができる。これにより低コストで逆量子化および逆スケーリング処理を行なうことが可能となる。   According to the present invention, the inverse quantization and inverse scaling device performs multiplication only once. Therefore, when implemented as hardware, the circuit scale can be reduced. When implemented as software, the number of processing steps can be reduced. This makes it possible to perform inverse quantization and inverse scaling processing at a low cost.

加えて、乗算を1回しか行なわないことにより、演算誤差が累積することや、以前の乗算による誤差が後続の乗算により増幅されることもない。したがってより精度のよい逆量子化および逆スケーリング処理が可能となる。   In addition, since the multiplication is performed only once, the calculation error is not accumulated, and the error due to the previous multiplication is not amplified by the subsequent multiplication. Therefore, more accurate inverse quantization and inverse scaling processing can be performed.

また、本発明によれば、逆量子化および逆スケーリング処理を含むオーディオ符号化方式に対し、少ない乗算回数で精度よく復号化を行なうオーディオ復号化装置を実現することができる。   Further, according to the present invention, it is possible to realize an audio decoding apparatus that performs accurate decoding with a small number of multiplications for an audio encoding system including inverse quantization and inverse scaling processing.

以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、図中同一符号は同一または相当部分を示す。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same reference numerals indicate the same or corresponding parts.

[実施の形態1]
図1は、実施の形態1のオーディオ復号化装置の構成例を示したブロック図である。
[Embodiment 1]
FIG. 1 is a block diagram showing a configuration example of the audio decoding apparatus according to the first embodiment.

図1を参照して、オーディオ復号化装置1は、フォーマット解析部2と、逆量子化・逆スケーリング部3と、フィルタ部4とを含む。   Referring to FIG. 1, audio decoding apparatus 1 includes a format analysis unit 2, an inverse quantization / inverse scaling unit 3, and a filter unit 4.

フォーマット解析部2は、1フレーム分のMPEGストリーム(MPEG1−Audio Layer II方式のデータストリーム)を入力として受取り、規格で定められたフォーマットに従って、フレーム内に格納された各種の情報を分離して、所定の形式で取出す。この取出された情報には、スケールファックインデックスScf,ビットアロケーションBaおよび量子化符号Xが含まれる。   The format analysis unit 2 receives an MPEG stream for one frame (MPEG1-Audio Layer II data stream) as an input, separates various information stored in the frame according to a format defined by the standard, Take out in the prescribed format. This extracted information includes the scale fuck index Scf, the bit allocation Ba, and the quantization code X.

逆量子化・逆スケーリング部3は、分離されたスケールファクタインデックスScf、ビットアロケーションBaおよび量子化符号Xをフォーマット解析部2から受けて、逆量子化と逆スケーリング処理とを行ない、逆量子化値Yを生成する。   The inverse quantization / inverse scaling unit 3 receives the separated scale factor index Scf, bit allocation Ba, and quantization code X from the format analysis unit 2, performs inverse quantization and inverse scaling processing, and performs an inverse quantization value Y is generated.

MPEG1−Audio Layer IIフォーマット内では、オーディオデータはある種の周波数変換がされた状態で格納されており、ここで得られた逆量子化値Yも周波数領域の値である。   In the MPEG1-Audio Layer II format, audio data is stored after being subjected to some kind of frequency conversion, and the inverse quantized value Y obtained here is also a value in the frequency domain.

フィルタ部4は、逆量子化値Yにフィルタ処理を行なうことで、時間領域への変換を行ない、時系列データであるオーディオデータADATAを生成して出力する。   The filter unit 4 performs a filter process on the inverse quantized value Y to perform conversion to the time domain, and generates and outputs audio data ADATA that is time-series data.

以上の処理によって、1フレーム分のMPEG1−Audio Layer II方式のデータが復号化される。これをフレームごとに繰返すことにより、MPEG1−Audio Layer II方式の復号化処理が行なわれる。   Through the above process, one frame of MPEG1-Audio Layer II format data is decoded. By repeating this for each frame, the MPEG1-Audio Layer II decoding process is performed.

図2は、図1における逆量子化・逆スケーリング部3の構成を示すブロック図である。   FIG. 2 is a block diagram showing the configuration of the inverse quantization / inverse scaling unit 3 in FIG.

図2を参照して、スケールファクタインデックスScf、ビットアロケーションBaおよび量子化符号Xは、逆量子化・逆スケーリング部3の入力であり、これらの値はMPEG1−Audio Layer IIフォーマットのデータの中から図1のフォーマット解析部2によって取出された値である。   Referring to FIG. 2, the scale factor index Scf, the bit allocation Ba, and the quantization code X are inputs to the inverse quantization / inverse scaling unit 3, and these values are obtained from the MPEG1-Audio Layer II format data. This is a value extracted by the format analysis unit 2 in FIG.

逆量子化・逆スケーリング部3は、テーブル参照部10と、変換用テーブルT1と、テーブル参照部11と、変換用テーブルT2と、変換部12と、シフト処理部13とを含む。   The inverse quantization / inverse scaling unit 3 includes a table reference unit 10, a conversion table T 1, a table reference unit 11, a conversion table T 2, a conversion unit 12, and a shift processing unit 13.

テーブル参照部10は、スケールファクタインデックスScfを入力として受け、変換用テーブルT1を参照して、シフト量S1と参照値Rとを生成し出力する。変換用テーブルT1には、0〜62の範囲の整数値であるスケールファクタインデックスScfにそれぞれ対応するシフト量S1および参照値Rが格納されている。シフト量S1は次の式(17)で予め求められた値である。また参照値Rは次の式(18)で予め求められた値である。
S1=int((3−Scf)/3) …(17)
R=mod(3−Scf,3) …(18)
ここで、int(A)は、Aを超えない最大の整数を生成する演算である。また、mod(A,B)は、整数A,整数Bに対し、A−int(A/B)*Bを算出する演算である。このとき、参照値Rは、0〜2の範囲の整数値となる。
The table reference unit 10 receives the scale factor index Scf as an input, generates a shift amount S1 and a reference value R with reference to the conversion table T1, and outputs them. The conversion table T1 stores a shift amount S1 and a reference value R respectively corresponding to the scale factor index Scf that is an integer value in the range of 0 to 62. The shift amount S1 is a value obtained in advance by the following equation (17). The reference value R is a value obtained in advance by the following equation (18).
S1 = int ((3-Scf) / 3) (17)
R = mod (3-Scf, 3) (18)
Here, int (A) is an operation for generating a maximum integer that does not exceed A. Mod (A, B) is an operation for calculating A-int (A / B) * B for integer A and integer B. At this time, the reference value R is an integer value in the range of 0-2.

テーブル参照部11は、ビットアロケーションBaと参照値Rとを入力として受ける。そして、テーブル参照部11は、変換用テーブルT2を参照して、シフト量S2と変換係数C1,C2とを生成して出力する。変換用テーブルT2にはシフト量S2と変換係数C1,C2とが格納されている。シフト量S1は、次の式(19)で予め算出された値の整数値である。また、変換係数C1は次の式(20)で予め算出された小数値である。変換係数C2は次の式(21)で予め定められた小数値である。
S2=int((R/3)+log2(P2[Ba]) …(19)
C1=(2(R/3)*P2[Ba])*(2(-S2)) …(20)
C2=P3[Ba] …(21)
ここで、P2[Ba]は、図13のCと図12とを参照してビットアロケーションBaから得られる値である。また、P3[Ba]は、図13のDと図12とを参照してビットアロケーションBaから得られる値である。
The table reference unit 11 receives the bit allocation Ba and the reference value R as inputs. Then, the table reference unit 11 refers to the conversion table T2 to generate and output the shift amount S2 and the conversion coefficients C1 and C2. The conversion table T2 stores a shift amount S2 and conversion coefficients C1 and C2. The shift amount S1 is an integer value calculated in advance by the following equation (19). The conversion coefficient C1 is a decimal value calculated in advance by the following equation (20). The conversion coefficient C2 is a decimal value predetermined by the following equation (21).
S2 = int ((R / 3) + log 2 (P2 [Ba]) (19)
C1 = (2 (R / 3) * P2 [Ba]) * (2 (-S2) ) (20)
C2 = P3 [Ba] (21)
Here, P2 [Ba] is a value obtained from the bit allocation Ba with reference to FIG. 13C and FIG. P3 [Ba] is a value obtained from the bit allocation Ba with reference to FIG. 13D and FIG.

変換部12は、変換係数C1,C2と量子化符号Xとを入力として受けて、変換値Zを生成して出力する。変換値Zは、次の式(6)で示された加算および乗算処理によって変換部12において求められる。
Z=C1*(X+C2) …(6)
シフト処理部13は、シフト量S1,S2と、変換値Zとを入力として受けて逆量子化値Yを生成し出力する。シフト処理部13は、次の式(22)、式(23)に示された演算に基づいて逆量子化値Yを算出する。Yは結局、式(7)で示される値となる。
Z2=Z*2(S1) …(22)
Y=Z2*2(S2) …(23)
Y=Z*2(S1+S2) …(7)
このとき、2の整数乗を乗算することは、ビットシフト処理として容易に実現することができる。
The conversion unit 12 receives the conversion coefficients C1 and C2 and the quantization code X as inputs, and generates and outputs a conversion value Z. The conversion value Z is obtained by the conversion unit 12 by the addition and multiplication processing shown by the following equation (6).
Z = C1 * (X + C2) (6)
The shift processing unit 13 receives the shift amounts S1 and S2 and the converted value Z as inputs, and generates and outputs an inverse quantized value Y. The shift processing unit 13 calculates the inverse quantization value Y based on the calculations shown in the following formulas (22) and (23). Y is eventually the value represented by equation (7).
Z2 = Z * 2 (S1) (22)
Y = Z2 * 2 (S2) (23)
Y = Z * 2 (S1 + S2) (7)
At this time, multiplying by an integer power of 2 can be easily realized as a bit shift process.

なお、以下の式変形により、従来手法の式(11)に対してP1[Scf]=3−Scf、M=3を代入した次式(24)に対して、式(23)で得られた逆量子化値Yが本質的に等価であることが示される。
Y=2((3-Scf)/3)*P2[Ba]*(X+P3[Ba]) …(24)
Y=Z2*2(S2) …(23)再掲
式(23)に式(22)を用いてZ2を展開すると、
Y=Z*2(S1)*2(S2) …(25)
さらに、式(6)を用いてZを展開すると、
Y=C1*(X+C2)*2(S1)*2(S2) …(26)
さらに、式(20)(21)を用いてC1,C2を展開すると
Y=(2(R/3)*P2[Ba])*2(-S2)*(X+P3[Ba])*2(S1)*2(S2) …(27)
式を整理して、
Y=(2(R/3)*P2[Ba])*(X+P3[Ba])*2(S1) …(28)
さらに、式(17)(18)を用いてR,S1を展開して、
Y=(2(mod(3-Scf,3)/3)*P2[Ba])*(X+P3[Ba])*2(int((3-Scf)/3)) …(29)
式を整理して、
Y=(2(mod(3-Scf,3)/3+int((3-Scf)/3))*P2[Ba])*(X+P3[Ba]) …(30)
mod、intの定義より、
Y=2((3-Scf)/3)*P2[Ba]*(X+P3[Ba]) …(31)
以上より式(31)は式(24)と同じになる。したがって、式(23)で得られた逆量子化値Yが従来手法の式(11)に対して本質的に等価であることが示された。
By the following equation modification, the following equation (24) obtained by substituting P1 [Scf] = 3-Scf and M = 3 for equation (11) of the conventional method was obtained by equation (23). It is shown that the inverse quantized values Y are essentially equivalent.
Y = 2 ((3-Scf) / 3) * P2 [Ba] * (X + P3 [Ba]) (24)
Y = Z2 * 2 (S2) (23) re-development If Z2 is expanded using equation (22) in equation (23),
Y = Z * 2 (S1) * 2 (S2) ... (25)
Furthermore, if Z is expanded using Equation (6),
Y = C1 * (X + C2) * 2 (S1) * 2 (S2) (26)
Further, when C1 and C2 are expanded using the equations (20) and (21), Y = (2 (R / 3) * P2 [Ba]) * 2 (-S2) * (X + P3 [Ba]) * 2 (S1 ) * 2 (S2) ... ( 27)
Organize the formula
Y = (2 (R / 3) * P2 [Ba]) * (X + P3 [Ba]) * 2 (S1) (28)
Further, using equations (17) and (18), R and S1 are expanded,
Y = (2 (mod (3-Scf, 3) / 3) * P2 [Ba]) * (X + P3 [Ba]) * 2 (int ((3-Scf) / 3)) (29)
Organize the formula
Y = (2 (mod (3-Scf, 3) / 3 + int ((3-Scf) / 3)) * P2 [Ba]) * (X + P3 [Ba]) (30)
From the definitions of mod and int,
Y = 2 ((3-Scf) / 3) * P2 [Ba] * (X + P3 [Ba]) (31)
Thus, equation (31) is the same as equation (24). Therefore, it was shown that the inverse quantized value Y obtained by Equation (23) is essentially equivalent to Equation (11) of the conventional method.

本発明によれば、逆量子化および逆スケーリング装置において、乗算を1回しか行なっていない。したがって、ハードウェアとして実現する場合は、回路規模を小さくすることができる。またソフトウェアとして実現する場合は、処理ステップ数を減らすことができる。これにより低コストで逆量子化および逆スケーリング処理を行なうことが可能となる。   According to the present invention, the inverse quantization and inverse scaling device performs multiplication only once. Therefore, when implemented as hardware, the circuit scale can be reduced. When implemented as software, the number of processing steps can be reduced. This makes it possible to perform inverse quantization and inverse scaling processing at a low cost.

加えて、乗算を1回しか行なわないことにより、演算誤差が累積することや、以前の乗算による誤差が後続の乗算により増幅されることもない。したがってより精度のよい逆量子化および逆スケーリング処理が可能となる。さらに、乗算を1回しか行なわない場合でも、スケールファクタインデックスから2の整数乗の部分を第1のシフト量S1として取出すことだけでなく、ビットアロケーションBaおよび参照値Rから2の整数乗の部分を第2のシフト量S2として取出し、できる限り量子化符号Xに対する乗算処理をビットシフト処理に置き換えて、1回の乗算で誤差の発生を小さく抑えている。   In addition, since the multiplication is performed only once, the calculation error is not accumulated, and the error due to the previous multiplication is not amplified by the subsequent multiplication. Therefore, more accurate inverse quantization and inverse scaling processing can be performed. Further, even when multiplication is performed only once, not only the integer power of 2 is extracted from the scale factor index as the first shift amount S1, but also the integer power of 2 from the bit allocation Ba and the reference value R. Is taken out as the second shift amount S2, and the multiplication process for the quantized code X is replaced with the bit shift process as much as possible to suppress the occurrence of errors by a single multiplication.

[変形例1]
シフト処理部13は、シフト量S1,S2と、変換値Zとを入力としてまず次の式(32)に従って全体のシフト量を求め、次に式(33)に従ってシフト量S1,S2の両者をまとめてビットシフト処理してもよい。
S3=S1+S2 …(32)
Y=Z*2(S3) …(33)
これにより、1回のビットシフト処理で、逆量子化および逆スケーリング処理を実現することができ、処理がより簡素化される場合もある。
[Modification 1]
The shift processing unit 13 receives the shift amounts S1 and S2 and the conversion value Z as input, first obtains the total shift amount according to the following equation (32), and then calculates both the shift amounts S1 and S2 according to the equation (33). Bit shift processing may be performed collectively.
S3 = S1 + S2 (32)
Y = Z * 2 (S3) (33)
Thereby, inverse quantization and inverse scaling processing can be realized by one bit shift processing, and the processing may be further simplified.

[変形例2]
変換用テーブルT2に、式(21)に代えて、式(34)に基づき予め算出した係数Cを格納しておき、変換部12はテーブル参照部11から係数Cを受けて、式(6)に代えて、式(35)に基づいて加算および乗算処理を行ない変換値Zを生成して出力してもよい。
C2=C1*P3[Ba] …(34)
Z=C1*X+C2 …(35)
なお、式(34),(35)中の係数C1は、実施の形態1と同様に、式(20)で定義されたものである。このような変形例でも同様に逆量子化および逆スケーリング処理を実現することができる。
[Modification 2]
The conversion table T2, instead of the equation (21) may be stored coefficients C 2 which is previously calculated based on the equation (34), the conversion unit 12 receives the coefficients C 2 from the table reference unit 11, the formula ( Instead of 6), addition and multiplication processing may be performed based on equation (35) to generate and output a converted value Z.
C2 = C1 * P3 [Ba] (34)
Z = C1 * X + C2 (35)
The coefficient C1 in the equations (34) and (35) is defined by the equation (20) as in the first embodiment. Even in such a modification, inverse quantization and inverse scaling processing can be realized in the same manner.

また、本実施の形態では、P1[Scf]=3−Scf、M=3となる場合を例に挙げて説明したが、本発明の内容は、この場合に限定されるものではない。   In this embodiment, the case where P1 [Scf] = 3-Scf and M = 3 is described as an example, but the content of the present invention is not limited to this case.

一般に、P1[Scf]がスケールファクタインデックスScfに対して整数値として定められており、Mが整数値であるならば、変換用テーブルT1、変換用テーブルT2に格納される値として、式(17)〜(21)で定められる値の代わりに、式(1)〜(5)の値を用いて定められる値を格納しておき、同様の処理を行なうことで逆量子化および逆スケーリング処理を実現することができる。
S1=int(P1[Scf]/M) …(1)
R=mod(P1[Scf],M) …(2)
S2=int((R/M)+log2(P2[Ba]) …(3)
C1=(2(R/M)*P2[Ba])*(2(-S2)) …(4)
C2=P3[Ba] …(5)
また、本実施の形態では、P2[Ba]、P3[Ba]の値として、ISO/IEC11172−3で定められた値を用いたが、本発明の内容は、この場合に限定されるものではなく、予め定められた係数であれば、同様の処理を行なうことで、逆量子化および逆スケーリング処理を実現することができる。
Generally, P1 [Scf] is defined as an integer value with respect to the scale factor index Scf, and if M is an integer value, the values stored in the conversion table T1 and the conversion table T2 are expressed by the formula (17 ) To (21), instead of the values determined in (1) to (5), store the values determined using the values in (1) to (5) and perform the same processing to perform inverse quantization and inverse scaling processing. Can be realized.
S1 = int (P1 [Scf] / M) (1)
R = mod (P1 [Scf], M) (2)
S2 = int ((R / M) + log 2 (P2 [Ba]) (3)
C1 = (2 (R / M) * P2 [Ba]) * (2 (-S2) ) (4)
C2 = P3 [Ba] (5)
In this embodiment, the values defined in ISO / IEC 11172-3 are used as the values of P2 [Ba] and P3 [Ba]. However, the contents of the present invention are not limited to this case. If it is a predetermined coefficient, the inverse quantization and the inverse scaling process can be realized by performing the same process.

また、従来技術、および、実施の形態では、量子化符号Xとして、MPEG1−Audio Layer IIフォーマットのデータの中から読出された値を最上位ビット側に詰めた場合を説明したが、変換用テーブルT2に格納された変換係数C2の桁位置を最下位ビット側に詰めた量子化符号Xの桁位置と予め合わせておき、変換用テーブルT2に格納されたシフト量S2にその桁数分のオフセットを予め加えておくことで、同様の処理で逆量子化、および、逆スケーリング処理を実現することができる。   In the prior art and the embodiment, the case where the value read out from the data in the MPEG1-Audio Layer II format is packed as the quantization code X on the most significant bit side has been described. The digit position of the transform coefficient C2 stored in T2 is preliminarily matched with the digit position of the quantization code X packed to the least significant bit side, and the shift amount S2 stored in the conversion table T2 is offset by the number of digits. By adding in advance, inverse quantization and inverse scaling processing can be realized by the same processing.

また、従来技術、および実施の形態では、量子化符号XとしてMPEG1−Audio Layer IIフォーマットのデータの中から読出された値を最上位ビットを反転して用いる場合を説明したが、最上位ビットの反転が固定小数点値の2の補数表現において、−1.0を加算することに相当することを考えれば、変換用テーブルT2に格納された変換係数C2に予め−1.0分のオフセットを加えておくことで、同様の処理で逆量子化、および、逆スケーリング処理を実現することができる。   In the prior art and the embodiment, the case where the value read from the data of the MPEG1-Audio Layer II format is used as the quantization code X with the most significant bit inverted is used. Considering that the inversion corresponds to adding -1.0 in the two's complement representation of the fixed-point value, an offset of -1.0 minute is added in advance to the conversion coefficient C2 stored in the conversion table T2. By doing so, inverse quantization and inverse scaling processing can be realized by the same processing.

以上のように、本発明の内容は、値を保持する桁位置や符号ビットの反転処理の有無に関して実施の形態に示したような場合に限定されるものではなく、値が上位ビット詰めである場合、下位ビット詰めである場合、他の適当な位置に合わせられる場合、符号ビットの反転処理がある場合、ない場合にも同様に適用できるものである。   As described above, the contents of the present invention are not limited to the case shown in the embodiment regarding the digit position for holding the value and the presence / absence of the sign bit inversion process, and the value is padded with the upper bits. In this case, the present invention can be similarly applied to the case where the lower bit is packed, the case where it is adjusted to another appropriate position, the case where the sign bit is inverted, and the case where there is no sign bit.

[実施の形態2]
図3は、実施の形態2のオーディオ復号化装置21の構成例を説明するブロック図である。
[Embodiment 2]
FIG. 3 is a block diagram illustrating a configuration example of the audio decoding device 21 according to the second embodiment.

図4は、図3に示したオーディオ復号化装置において行なわれる復号化の処理を説明するためのフローチャートである。   FIG. 4 is a flowchart for explaining a decoding process performed in the audio decoding apparatus shown in FIG.

図3、図4を参照して、演算部23は、図4に示した符号処理が記述されたプログラムコードをROM24から読出して実行するブロックである。演算部23は、復号化処理に必要な各種の演算を行なうとともに、ROM24、RAM25、入力I/F部22および出力I/F部へのアクセスを行なう。   Referring to FIGS. 3 and 4, operation unit 23 is a block that reads and executes the program code in which the encoding process shown in FIG. 4 is described from ROM 24. The calculation unit 23 performs various calculations necessary for the decoding process and accesses the ROM 24, RAM 25, input I / F unit 22, and output I / F unit.

ROM24は、読出可能な記録手段であり、図4の復号処理を記述したプログラムコードやその復号処理に必要なテーブルデータを格納するブロックである。   The ROM 24 is a readable recording means, and is a block for storing program codes describing the decoding process of FIG. 4 and table data necessary for the decoding process.

RAM25は、読出および書込が可能な記録手段であり、復号処理に用いられるMPEGデータや、一時的に生成される演算結果を保存するブロックである。   The RAM 25 is a recording means that can be read and written, and is a block that stores MPEG data used for decoding processing and temporarily generated calculation results.

入力I/F部は、MPEGストリームMSを取得するためのブロックで、メモリ、CD(compact disc)、HDD(hard disk drive)などMPEGストリームを格納した蓄積媒体や、SPDIF(SONY / Philips Digital Interface Format)、インターネットなどMPEGストリームを伝送する通信媒体に接続するためのインターフェイスと、入力されたMPEGストリームを一時的に格納するためのバッファなどからなる。   The input I / F unit is a block for acquiring the MPEG stream MS, and is a storage medium storing an MPEG stream such as a memory, a CD (compact disc), an HDD (hard disk drive), or an SPDIF (SONY / Philips Digital Interface Format). ), An interface for connecting to a communication medium for transmitting MPEG streams such as the Internet, and a buffer for temporarily storing the input MPEG streams.

出力I/F部26は、オーディオデータADATAを出力するためのブロックで、復号されたオーディオデータを一時的に格納するためのバッファと、アンプやスピーカなどの再生装置やMD、CDなどの記録装置に接続するためのインターフェイスなどからなる。   The output I / F unit 26 is a block for outputting audio data ADATA, a buffer for temporarily storing the decoded audio data, a playback device such as an amplifier and a speaker, and a recording device such as an MD and a CD It consists of an interface for connecting to.

なお、図3のような構成は、MPEG規格などに代表される画像符号化されたデータの復号処理においても用いられる構成である。したがって、オーディオ復号化装置に限らず、逆量子化・逆スケーリング処理を行なうものであれば画像復号化装置にも本発明は適用できる。   Note that the configuration shown in FIG. 3 is also used in the decoding process of image-encoded data represented by the MPEG standard. Therefore, the present invention can be applied not only to an audio decoding device but also to an image decoding device as long as it performs inverse quantization / inverse scaling processing.

次に、オーディオ復号化装置21で行なわれる処理を説明する。   Next, processing performed by the audio decoding device 21 will be described.

まず図4のステップS1において復号化処理が開始される。次にステップS2においてMPEGデータの取得が行なわれる。このステップS2では、演算部23が入力I/F部22を介して1フレーム分のMPEGデータを取得し、RAM25に格納する。   First, the decoding process is started in step S1 of FIG. In step S2, MPEG data is acquired. In step S <b> 2, the calculation unit 23 acquires MPEG data for one frame via the input I / F unit 22 and stores it in the RAM 25.

続いてステップS3においてフォーマット解析が行なわれる。フォーマット解析は、RAM25に格納されたMPEGデータを読出して、MPEG1−Audio Layer II方式の規格として定められたフォーマットに従ってフレーム内に格納された各種の情報を分離して、所定の形式で取出す。取出された情報はRAM25に保存される。   Subsequently, format analysis is performed in step S3. In the format analysis, the MPEG data stored in the RAM 25 is read out, and various information stored in the frame is separated according to the format defined as the standard of the MPEG1-Audio Layer II system, and is taken out in a predetermined format. The extracted information is stored in the RAM 25.

この取出された情報の例としては、続くステップS4の逆量子化・逆スケーリング処理における入力となるスケーフファクタインデックスScf、ビットアロケーションBaおよび量子化符号X等が挙げられる。   As an example of the extracted information, there are a scuff factor index Scf, a bit allocation Ba, a quantization code X, and the like which are input in the subsequent inverse quantization / inverse scaling process in step S4.

ステップS4の逆量子化・逆スケーリングでは、スケールファクタインデックスScf、ビットアロケーションBaおよび量子化符号XはRAM24から読出され、これらを用いて逆量子化と逆スケーリング処理が行なわれ、逆量子化値Yが生成される。逆量子化値YはRAM25に格納される。逆量子化・逆スケーリング処理に必要なテーブルデータはRAM24から適宜読出されて用いられる。   In the inverse quantization / inverse scaling in step S4, the scale factor index Scf, the bit allocation Ba, and the quantization code X are read from the RAM 24, and the inverse quantization and the inverse scaling processing are performed using them, and the inverse quantization value Y Is generated. The inverse quantized value Y is stored in the RAM 25. The table data necessary for the inverse quantization / inverse scaling process is appropriately read from the RAM 24 and used.

MPEG1−Audio Layer IIフォーマット内では、オーディオデータは、ある種の周波数変換がされた状態で格納されており、ステップS4の結果得られた逆量子化値Yも周波数領域の値である。そこで、続くステップS5のフィルタ処理において、RAM25から逆量子化値Yが読出され、フィルタ処理が行なわれ、時間領域への変換が行なわれる。   In the MPEG1-Audio Layer II format, audio data is stored in a state where a certain frequency conversion is performed, and the inverse quantization value Y obtained as a result of step S4 is also a value in the frequency domain. Therefore, in the subsequent filtering process in step S5, the inverse quantization value Y is read from the RAM 25, the filtering process is performed, and the conversion to the time domain is performed.

その結果、時系列データであるオーディオデータが生成され、RAM25に格納される。ステップS6においてオーディオデータの出力が行なわれる。すなわち生成されたオーディオデータをRAM25から読出し、出力I/F部26を介してオーディオデータが出力される。   As a result, audio data that is time-series data is generated and stored in the RAM 25. In step S6, audio data is output. That is, the generated audio data is read from the RAM 25 and the audio data is output via the output I / F unit 26.

以上の処理によって、1フレーム分のMPEG1−Audio Layer II方式のデータが復号化される。この処理をフレームごとに繰返すことにより、MPEG1−Audio Layer II方式の復号化処理が行なわれる。   Through the above process, one frame of MPEG1-Audio Layer II format data is decoded. By repeating this process for each frame, the MPEG1-Audio Layer II system decoding process is performed.

そしてステップS7において復号化処理が終了する。   In step S7, the decoding process ends.

図5は、図4におけるステップS4の逆量子化・逆スケーリング処理をさらに詳細に示したフローチャートである。   FIG. 5 is a flowchart showing in more detail the inverse quantization / inverse scaling process of step S4 in FIG.

図5を参照して、ステップS11において逆量子化・逆スケーリング処理が開始される。スケールファクタインデックスScf、ビットアロケーションBaおよび量子化符号Xはこの処理の入力であり、MPEG1−Audio Layer IIフォーマットのデータの中から読出されてRAM25に格納されている。   Referring to FIG. 5, in step S11, inverse quantization / inverse scaling processing is started. The scale factor index Scf, the bit allocation Ba, and the quantization code X are inputs of this processing, and are read out from the data in the MPEG1-Audio Layer II format and stored in the RAM 25.

まず、ステップS12において、テーブルT1を参照する処理が行なわれる。ステップS12では、RAM25からスケールファクタインデックスScfが読出され、ROM24に格納されている変換用テーブルT1が参照され対応するシフト量S1と参照値RとがROMから読出される。読出されたシフト量S1と参照値RはRAM25に格納される。なお、変換用テーブルT1は、図2で示した変換用テーブルT1と同様なものであるので説明は繰返さない。   First, in step S12, processing for referring to the table T1 is performed. In step S12, the scale factor index Scf is read from the RAM 25, the conversion table T1 stored in the ROM 24 is referred to, and the corresponding shift amount S1 and reference value R are read from the ROM. The read shift amount S1 and reference value R are stored in the RAM 25. Note that conversion table T1 is similar to conversion table T1 shown in FIG. 2, and therefore description thereof will not be repeated.

続いて、ステップS13においてテーブルT2を参照する処理が行なわれる。ステップS13では、RAM25からビットアロケーションBaと参照値Rとが読出され、ROMに格納されている変換用テーブルT2を参照してシフト量S2と変換係数C1,C2とが生成される。このシフト量S2および変換係数C1,C2はRAM25に格納される。なお、変換用テーブルT2については図2で説明した変換用テーブルT2と同様であるので説明は繰返さない。   Subsequently, a process of referring to the table T2 is performed in step S13. In step S13, the bit allocation Ba and the reference value R are read from the RAM 25, and a shift amount S2 and conversion coefficients C1 and C2 are generated with reference to the conversion table T2 stored in the ROM. The shift amount S2 and the conversion coefficients C1 and C2 are stored in the RAM 25. Since conversion table T2 is similar to conversion table T2 described in FIG. 2, description thereof will not be repeated.

続いて、ステップS14において変換処理が行なわれる。変換処理は、RAM25から変換係数C1,C2と量子化符号Xとが読出され、次の式(6)に示された加算および乗算処理が行なわれ、変換値Zが生成される。生成された変換値ZはRAM25に格納される。
Z=C1*(X+C2) …(6)再掲
続いてステップS15においてシフト処理が行なわれる。シフト処理は、シフト量S1,S2と変換値ZとがRAM25から読出され、次の式(22)にさらに式(23)に示された演算が行なわれ、逆量子化値Yが生成される。生成された逆量子化値YはRAMに格納される。
Z2=Z*2(S1) …(22)再掲
Y=Z2*2(S2) …(23)再掲
以上のようにして、逆量子化および逆スケーリング処理が行なわれステップS16においてこの処理が終了する。
Subsequently, a conversion process is performed in step S14. In the conversion process, the conversion coefficients C1 and C2 and the quantization code X are read from the RAM 25, the addition and multiplication processes shown in the following equation (6) are performed, and the conversion value Z is generated. The generated conversion value Z is stored in the RAM 25.
Z = C1 * (X + C2) (6) Re-display Subsequently, a shift process is performed in step S15. In the shift process, the shift amounts S1 and S2 and the conversion value Z are read from the RAM 25, and the operation shown in the following equation (22) is further performed to generate the inverse quantization value Y. . The generated inverse quantization value Y is stored in the RAM.
Z2 = Z * 2 (S1) (22) reprinted Y = Z2 * 2 (S2) (23) reprinted As described above, the inverse quantization and inverse scaling processes are performed, and this process ends in step S16. .

実施の形態2で示すように、コンピュータを用いてソフトウェアで逆量子化および逆スケーリング処理を行なう場合でも本発明は適用が可能である。   As shown in the second embodiment, the present invention can be applied even when a computer is used to perform inverse quantization and inverse scaling processing by software.

[演算精度の改善の検討]
以下に、具体的な数値を例に挙げて、本発明による逆量子化および逆スケーリング処理が、従来の手法と比べて演算精度が改善される場合について説明する。
[Examination of improvement of calculation accuracy]
Hereinafter, taking a specific numerical value as an example, a case will be described in which the inverse quantization and inverse scaling processing according to the present invention improves the calculation accuracy as compared with the conventional method.

まず、24ビットの固定小数点演算用のアーキテクチャを装備したDSPを用いて演算を行なうことを想定する。   First, it is assumed that an operation is performed using a DSP equipped with a 24-bit fixed-point arithmetic architecture.

このDSPの仕様について説明する。RAM、ROMへのアクセス単位は24ビット長であり、ROMに格納されたテーブルデータやRAMに格納される演算結果などの値は24ビットデータとして扱われる。   The specifications of this DSP will be described. The access unit to the RAM and ROM is 24 bits long, and values such as table data stored in the ROM and calculation results stored in the RAM are treated as 24-bit data.

また、DSP内のレジスタのビット長は24ビットであり、演算結果を格納するアキュムレータは56ビットである。加算と乗算では、2つのレジスタ内のデータを入力とし、演算結果をアキュムレータに出力する。次の演算を行なうために、その演算結果をRAMやレジスタに格納する場合は、アキュムレータの56ビット中の任意の箇所の24ビットを取出して格納する。つまり、DSPは、24ビットの値を入力とし、24ビットの値を出力とするような加算および乗算が可能である。また、加算、乗算いずれの場合も、24ビット中の最上位ビットは符号ビットとして扱われるものとする。   The bit length of the register in the DSP is 24 bits, and the accumulator for storing the operation result is 56 bits. In addition and multiplication, the data in the two registers is input, and the operation result is output to the accumulator. When storing the result of the operation in the RAM or register to perform the next operation, the 24 bits at an arbitrary location in the 56 bits of the accumulator are extracted and stored. That is, the DSP can perform addition and multiplication such that a 24-bit value is input and a 24-bit value is output. In both addition and multiplication, the most significant bit in 24 bits is treated as a sign bit.

ところで、このようなDSPを用いて演算を行なう場合、次のような性質がある。   By the way, when performing an operation using such a DSP, there are the following properties.

第1に、値を固定小数点の24ビットデータとして扱うので、設定する小数点の位置により表現できる値の範囲が異なる。たとえば、最上位ビットが符号ビット、続く2ビットが整数部、残り21ビットが小数部と設定すると、値の範囲は−4〜+4となり、値がこれを超える場合桁あふれが発生する。   First, since the value is handled as 24-bit data of a fixed decimal point, the range of values that can be expressed differs depending on the position of the decimal point to be set. For example, if the most significant bit is set as a sign bit, the subsequent 2 bits are set as an integer part, and the remaining 21 bits are set as a decimal part, the value range is -4 to +4.

第2に、2の‐21乗未満の値には、対応するビットがないので、四捨五入などにより近似され、丸め誤差が生ずる。小数点の位置を上位ビット側に設定するほど丸め誤差は小さくなるが、桁あふれを起こしやすくなる。逆に、小数点の位置を下位ビット側に設定するほど桁あふれは防げるが丸め誤差は大きくなる。   Second, since a value less than 2 to the power of −21 does not have a corresponding bit, it is approximated by rounding off, and a rounding error occurs. The rounding error becomes smaller as the decimal point position is set to the upper bit side, but overflow tends to occur. On the contrary, as the decimal point position is set to the lower bit side, overflow is prevented, but the rounding error becomes larger.

このような性質があるため、精度よく演算を行なうためには桁あふれの起こらない範囲で、できる限り丸め誤差が小さくなるように小数点の位置を設定する必要がある。   Because of this property, in order to perform calculation with high accuracy, it is necessary to set the position of the decimal point so that the rounding error is as small as possible without causing overflow of digits.

以上のようなDSPを想定して、従来手法で逆量子化および逆スケーリング処理の演算を行なうと次のようになる。従来の手法では、次式に従って処理を行なう。   Assuming the DSP as described above, the inverse quantization and inverse scaling processing are performed by the conventional method as follows. In the conventional method, processing is performed according to the following equation.

Y=Sv*P2[Ba]*(X+P3[Ba]) …(36)
この計算過程で生ずる各値の範囲と最適な小数点の設定によって誤差に大きな影響がある。
Y = Sv * P2 [Ba] * (X + P3 [Ba]) (36)
The range of each value generated in this calculation process and the setting of the optimum decimal point have a great influence on the error.

図6は、従来の手法による演算の計算過程で生ずる値の範囲と小数点の位置を示した図である。   FIG. 6 is a diagram showing a range of values and a decimal point position generated in the calculation process of the calculation by the conventional method.

図6を参照して、スケーリング係数Svの値は、スケールファクタインデックスScfが0〜62の範囲でSv=2((3-Scf)/3)を計算することにより求めた。また、P2[Ba]、P3[Ba]の範囲は、図13により求めた。 Referring to FIG. 6, the value of scaling factor Sv was obtained by calculating Sv = 2 ((3-Scf) / 3) when scale factor index Scf was in the range of 0-62 . Further, the ranges of P2 [Ba] and P3 [Ba] were obtained from FIG.

図7は、図6の最大値、最小値を算出するために計算した計算結果を示す図である。   FIG. 7 is a diagram showing a calculation result calculated to calculate the maximum value and the minimum value of FIG.

図7における、X,(X+P3[Ba]),P2[Ba]*(X+P3[Ba])の各値については、背景技術の説明で記載したXの作成方法と図13とに基づいて各ステップ数に対する最大値、最小値を実際に計算して求めたものである。   In FIG. 7, each value of X, (X + P3 [Ba]), P2 [Ba] * (X + P3 [Ba]) is determined based on the X creation method described in the description of the background art and FIG. The maximum value and the minimum value for the numbers are actually calculated.

図8は、誤差の発生を考慮しない理論値と、従来手法で行なった場合の計算値とを比較した図である。   FIG. 8 is a diagram comparing a theoretical value that does not consider the occurrence of an error and a calculated value when the conventional method is used.

図8では、ステップ数=9、X=0.0、Scf=1(Sv=1.58740105196820に対応)の場合の計算値の例が示されている。従来手法では、逆量子化値Yは、理論値に対して約0.000000256(=1.4110231572988900−1.4110229015350300)の演算誤差が発生する。なお、Svの理論値との差が大きいのは、図6においてSvの小数部ビットが21と他より小さくなっているのがその原因の1つである。   FIG. 8 shows an example of calculated values when the number of steps = 9, X = 0.0, and Scf = 1 (corresponding to Sv = 1.58740105196820). In the conventional method, the inverse quantization value Y causes an operation error of about 0.000000256 (= 1.4110231572988900−1.4110229015350300) with respect to the theoretical value. One reason for the large difference from the theoretical value of Sv is that the fractional bits of Sv in FIG.

これと比較するため、本発明において用いられる演算による誤差の検討を行なう。本発明では次式に従って処理を行なう。
Y=(C1*(X+P3[Ba]))>>(S1+S2) …(37)
但し、>>はビットシフト演算子を示す。また、上式において各変数は、
C1=(2(mod(3-Scf,3)/3)*P2[Ba])*(2(-S2)) …(38)
S2=int((mod(3−Scf,3)/3)+log2(P2[Ba])…(39)
S1=int((3−Scf)/3) …(40)
である。
In order to compare with this, an error due to the calculation used in the present invention is examined. In the present invention, processing is performed according to the following equation.
Y = (C1 * (X + P3 [Ba])) >> (S1 + S2) (37)
However, >> indicates a bit shift operator. In the above equation, each variable is
C1 = (2 (mod (3-Scf, 3) / 3) * P2 [Ba]) * (2 (-S2) ) (38)
S2 = int ((mod (3-Scf, 3) / 3) + log 2 (P2 [Ba]) (39)
S1 = int ((3-Scf) / 3) (40)
It is.

図9は、本発明の演算過程で生じる各値の範囲と最適な小数点位置の設定をまとめた図である。   FIG. 9 is a table summarizing the range of each value generated in the calculation process of the present invention and the setting of the optimum decimal point position.

図9において、X、P3[Ba]、(X+P3[Ba])、Yが、図9に示した範囲となる理由は図6に示した従来の演算の場合と同様であるので説明は繰返さない。また、C1の範囲についての理由は、S2が(2(mod(3-Scf,3)/3)*P2[Ba])を2未満にするためのシフト量を示しており、C1がS2だけシフトされた値として定義されているからである。 In FIG. 9, the reason why X, P3 [Ba], (X + P3 [Ba]), and Y are in the range shown in FIG. 9 is the same as in the case of the conventional calculation shown in FIG. . The reason for the range of C1 is that the shift amount for S2 to make (2 (mod (3-Scf, 3) / 3) * P2 [Ba]) less than 2 is indicated, and C1 is only S2. This is because it is defined as a shifted value.

図9において(C1*(X+P3[Ba]))の範囲について記述されていないのは、Yを求めるときの(S1+S2)のシフト処理が、アキュムレータから24ビットデータを取出す位置の調整で実現できるためである。つまり、(C1*(X+P3[Ba]))の値をアキュムレータに保持したままYの算出ができるので、小数点位置の設定をする必要がないからである。   The reason why the range of (C1 * (X + P3 [Ba])) is not described in FIG. 9 is that the shift process of (S1 + S2) when obtaining Y can be realized by adjusting the position for extracting 24-bit data from the accumulator. It is. In other words, Y can be calculated while the value of (C1 * (X + P3 [Ba])) is held in the accumulator, so there is no need to set the decimal point position.

図10は、本発明の演算手法で算出した計算値と理論値とを比較した図である。   FIG. 10 is a diagram comparing the calculated value calculated by the calculation method of the present invention with the theoretical value.

図10では、ステップ数=9、X=0.0、Scf=1として、図8に対応する計算を行なった結果を示している。   FIG. 10 shows the result of the calculation corresponding to FIG. 8 with the number of steps = 9, X = 0.0, and Scf = 1.

図10では、逆量子化値Yは、理論値に対して約0.0000000017(=1.4110231572988900−1.4110231399536100)の演算誤差が発生している。この演算誤差は、図8で示した従来の手法に比べ演算誤差の大きさが10分の1以下に抑えられている。したがって本発明では、逆量子化値Yを算出する際の演算誤差が低減できる。   In FIG. 10, the inverse quantization value Y has an operation error of about 0.0000000017 (= 1.4110231572988900−1.4110231399536100) with respect to the theoretical value. The calculation error is suppressed to 1/10 or less of the calculation error as compared with the conventional method shown in FIG. Therefore, in the present invention, it is possible to reduce a calculation error when calculating the inverse quantization value Y.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

実施の形態1のオーディオ復号化装置の構成例を示したブロック図である。3 is a block diagram illustrating an exemplary configuration of an audio decoding device according to Embodiment 1. FIG. 図1における逆量子化・逆スケーリング部3の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of an inverse quantization / inverse scaling unit 3 in FIG. 1. 実施の形態2のオーディオ復号化装置21の構成例を説明するブロック図である。FIG. 10 is a block diagram illustrating an exemplary configuration of an audio decoding device 21 according to a second embodiment. 図3に示したオーディオ復号化装置において行なわれる復号化の処理を説明するためのフローチャートである。Fig. 4 is a flowchart for explaining a decoding process performed in the audio decoding device shown in Fig. 3. 図4におけるステップS4の逆量子化・逆スケーリング処理をさらに詳細に示したフローチャートである。5 is a flowchart showing in more detail the inverse quantization / inverse scaling process of step S4 in FIG. 従来の手法による演算の計算過程で生ずる値の範囲と小数点の位置を示した図である。It is the figure which showed the range of the value produced in the calculation process of the calculation by the conventional method, and the position of the decimal point. 図6の最大値、最小値を算出するために計算した計算結果を示す図である。It is a figure which shows the calculation result calculated in order to calculate the maximum value of FIG. 6, and the minimum value. 誤差の発生を考慮しない理論値と、従来手法で行なった場合の計算値とを比較した図である。It is the figure which compared the theoretical value which does not consider generation | occurrence | production of an error, and the calculated value at the time of performing by the conventional method. 本発明の演算過程で生じる各値の範囲と最適な小数点位置の設定をまとめた図である。It is the figure which put together the range of each value which arises in the calculation process of this invention, and the setting of the optimal decimal point position. 本発明の演算手法で算出した計算値と理論値とを比較した図である。It is the figure which compared the calculated value calculated with the calculation method of this invention, and the theoretical value. ISO/IEC11172−3のテーブルB.2の一例を示した図である。Table B. of ISO / IEC 11172-3. It is the figure which showed an example of 2. ビットアロケーションBaとステップ数(Number of steps)との対応を示した図である。It is the figure which showed the response | compatibility with bit allocation Ba and the number of steps (Number of steps). ISO/IEC11172−3のテーブルB.4を示した図である。Table B. of ISO / IEC 11172-3. FIG. 従来の、逆量子化、および、逆スケーリング装置を説明するための概略ブロック図である。It is a schematic block diagram for demonstrating the conventional inverse quantization and an inverse scaling apparatus. 従来の逆量子化および逆スケーリング処理をDSP等のコンピュータを用いて行なう場合のフローチャートである。It is a flowchart in the case of performing the conventional inverse quantization and inverse scaling process using computers, such as DSP.

符号の説明Explanation of symbols

1 オーディオ復号化装置、2 フォーマット解析部、3 逆量子化・逆スケーリング部、4 フィルタ部、10,11 テーブル参照部、12 変換部、13 シフト処理部、21 オーディオ復号化装置、22 入力I/F部、23 演算部、26 出力I/F部、110,111 テーブル参照部、112 変換部、113 変換部、T1,T2 テーブル。   DESCRIPTION OF SYMBOLS 1 Audio decoding apparatus, 2 Format analysis part, 3 Inverse quantization and inverse scaling part, 4 Filter part, 10, 11 Table reference part, 12 Conversion part, 13 Shift processing part, 21 Audio decoding apparatus, 22 Input I / O F part, 23 operation part, 26 output I / F part, 110,111 table reference part, 112 conversion part, 113 conversion part, T1, T2 table.

Claims (9)

量子化符号X、スケールファクタインデックスScfおよびビットアロケーションBaを受けて逆量子化および逆スケーリング処理を行ない逆量子化値Yを出力する逆量子化装置であって、
下式(1),(2)に基づき予め算出された各スケールファクタインデックスScfに対応するシフト量S1および参照値Rを格納する第1の記憶手段と、
前記第1の記憶手段を参照して、入力されたスケールファクタインデックスScfに対応する前記シフト量S1および前記参照値Rを得る第1の参照手段と、
下式(3),(4),(5)に基づき予め算出された各参照値Rおよび各ビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を格納する第2の記憶手段と、
前記第2の記憶手段を参照して、前記第1の参照手段から出力された前記参照値Rと入力されたビットアロケーションBaに対応する前記シフト量S2,前記変換係数C1およびC2を得る第2の参照手段と、
入力された量子化符号Xと前記第2の参照手段から出力された変換係数C1およびC2とを用いて下式(6)に従う変換を行ない変換値Zを出力する変換手段と、
前記変換手段から出力された前記変換値Zに対し前記第1、第2の参照手段によってそれぞれ得られた前記シフト量S1,S2を用い下式(7)に従うシフト処理を行ない前記逆量子化値Yを出力するシフト処理手段とを備える、逆量子化装置:
S1=int(P1[Scf]/M) …(1)
R=mod(P1[Scf],M) …(2)
S2=int((R/M)+log2(P2[Ba]) …(3)
C1=(2(R/M)*P2[Ba])*(2(-S2)) …(4)
C2=P3[Ba] …(5)
Z=C1*(X+C2) …(6)
Y=Z*2(S1+S2) …(7)
ただし、P1[Scf]は、各スケールファクタインデックスScfの値に対し予め定められた整数を示し、P2[Ba],P3[Ba]は、各ビットアロケーションBaの値に対し予め定められた小数を示し、Mは、予め定められた正の整数を示す。
An inverse quantization device that receives a quantization code X, a scale factor index Scf, and a bit allocation Ba, performs inverse quantization and inverse scaling processing, and outputs an inverse quantization value Y;
First storage means for storing a shift amount S1 and a reference value R corresponding to each scale factor index Scf calculated in advance based on the following equations (1) and (2);
Referring to the first storage means, first reference means for obtaining the shift amount S1 and the reference value R corresponding to the inputted scale factor index Scf;
Second storage means for storing a shift amount S2 corresponding to each reference value R and each bit allocation Ba calculated in advance based on the following equations (3), (4), and (5), and transform coefficients C1 and C2;
The second storage means is used to obtain the shift amount S2, the conversion coefficients C1 and C2 corresponding to the reference value R output from the first reference means and the input bit allocation Ba. Means for referencing,
Conversion means for outputting the converted value Z no line conversion according to the following equation (6) by using the transform coefficients C1 and C2 outputted input quantization code X from the second reference means,
Wherein said first to said converted value Z output from the conversion means, second of the shift amount obtained respectively by the reference means S1, S2 no line shift processing according to the following equation (7) using the inverse quantized value Inverse quantization apparatus comprising shift processing means for outputting Y:
S1 = int (P1 [Scf] / M) (1)
R = mod (P1 [Scf], M) (2)
S2 = int ((R / M) + log 2 (P2 [Ba]) (3)
C1 = (2 (R / M) * P2 [Ba]) * (2 (-S2) ) (4)
C2 = P3 [Ba] (5)
Z = C1 * (X + C2) (6)
Y = Z * 2 (S1 + S2) (7)
However, P1 [Scf] indicates an integer predetermined for each scale factor index Scf, and P2 [Ba] and P3 [Ba] indicate a predetermined decimal number for each bit allocation Ba value. M represents a predetermined positive integer.
前記シフト処理手段は、前記シフト処理を、前記シフト量S1に対応する第1のシフト演算を行ない、さらに、前記シフト量S2に対応する第2のシフト演算を行なうことにより実行する、請求項1に記載の逆量子化装置。   The shift processing means performs the shift processing by performing a first shift operation corresponding to the shift amount S1 and further performing a second shift operation corresponding to the shift amount S2. The inverse quantization apparatus according to 1. 前記シフト処理手段は、前記シフト処理を、前記シフト量S1と前記シフト量S2の合計値に対応するシフト演算を一括して行なうことにより実行する、請求項1に記載の逆量子化装置。   2. The inverse quantization apparatus according to claim 1, wherein the shift processing unit performs the shift processing by collectively performing a shift operation corresponding to a total value of the shift amount S <b> 1 and the shift amount S <b> 2. 前記第2の記憶手段は、式(5)に代えて下式(8)に基づき予め算出された変換係数C2を格納しており、
前記変換手段は、変換係数C1,C2および量子化符号Xに基づき、式(6)に代えて、下式(9)に従い前記変換値Zを生成する、請求項1〜3のいずれかに記載の逆量子化装置。
C2=C1*P3[Ba] …(8)
Z=C1*X+C2 …(9)
The second storage means stores a conversion coefficient C2 calculated in advance based on the following equation (8) instead of the equation (5),
The said conversion means produces | generates the said conversion value Z according to the following Formula (9) instead of Formula (6) based on the conversion coefficients C1 and C2 and the quantization code | cord | chord X. Inverse quantization device.
C2 = C1 * P3 [Ba] (8)
Z = C1 * X + C2 (9)
前記P1[Scf]は、3−Scfであり、
前記Mは、3である、請求項1〜4のいずれかに記載の逆量子化装置。
The P1 [Scf] is 3-Scf,
The inverse quantization apparatus according to claim 1, wherein M is three.
復号化時に逆量子化処理を含むオーディオ符号化方式に基づいて復号化処理を行なうオーディオ復号化装置であって、
請求項1〜5のいずれかに記載の逆量子化装置を備える、オーディオ復号化装置。
An audio decoding device that performs a decoding process based on an audio encoding method including an inverse quantization process at the time of decoding,
An audio decoding device comprising the inverse quantization device according to claim 1.
復号化時に逆量子化処理を含む画像符号化方式に基づいて復号化処理を行なう画像復号化装置であって、
請求項1〜5のいずれかに記載の逆量子化装置を備える、画像復号化装置。
An image decoding apparatus that performs a decoding process based on an image encoding method including an inverse quantization process at the time of decoding,
An image decoding apparatus comprising the inverse quantization apparatus according to claim 1.
量子化符号X、スケールファクタインデックスScfおよびビットアロケーションBaを受けて逆量子化および逆スケーリング処理を行ない逆量子化値Yを出力する逆量子化方法であって、
下式(1),(2)に基づき予め算出された各スケールファクタインデックスScfに対応するシフト量S1および参照値Rを格納する第1の記憶手段を参照して、入力されたスケールファクタインデックスScfに対応する前記シフト量S1および前記参照値Rを得るステップと、
下式(3),(4),(5)に基づき予め算出された各参照値Rおよび各ビットアロケーションBaに対応するシフト量S2,変換係数C1およびC2を格納する第2の記憶手段を参照して、得られた前記参照値Rと入力されたビットアロケーションBaに対応する前記シフト量S2,前記変換係数C1およびC2を得るステップと、
入力された量子化符号Xと得られた前記変換係数C1およびC2とを用いて下式(6)に従う変換を行ない変換値Zを出力するステップと、
出力された前記変換値Zに対し得られた前記シフト量S1,S2を用い下式(7)に従うシフト処理を行ない前記逆量子化値Yを出力するステップとを備える、逆量子化方法:
S1=int(P1[Scf]/M) …(1)
R=mod(P1[Scf],M) …(2)
S2=int((R/M)+log2(P2[Ba]) …(3)
C1=(2(R/M)*P2[Ba])*(2(-S2)) …(4)
C2=P3[Ba] …(5)
Z=C1*(X+C2) …(6)
Y=Z*2(S1+S2) …(7)
ただし、P1[Scf]は、各スケールファクタインデックスScfの値に対し予め定められた整数を示し、P2[Ba],P3[Ba]は、各ビットアロケーションBaの値に対し予め定められた小数を示し、Mは、予め定められた正の整数を示す。
A inverse quantization method of outputting the quantization code X, the scale factor index Scf and bit allocation are no rows inverse quantization and inverse scaling processes undergoing Ba dequantized value Y,
Referring to the first storage means for storing the shift amount S1 and the reference value R corresponding to each scale factor index Scf calculated in advance based on the following equations (1) and (2), the inputted scale factor index Scf Obtaining the shift amount S1 and the reference value R corresponding to
Refer to second storage means for storing shift values S2 and transform coefficients C1 and C2 corresponding to each reference value R and each bit allocation Ba calculated in advance based on the following equations (3), (4), and (5) And obtaining the shift amount S2, the conversion coefficients C1 and C2 corresponding to the obtained reference value R and the input bit allocation Ba,
Performing conversion according to the following equation (6) using the input quantization code X and the obtained conversion coefficients C1 and C2, and outputting a conversion value Z;
A step of performing a shift process according to the following equation (7) using the shift amounts S1 and S2 obtained for the output converted value Z and outputting the dequantized value Y:
S1 = int (P1 [Scf] / M) (1)
R = mod (P1 [Scf], M) (2)
S2 = int ((R / M) + log 2 (P2 [Ba]) (3)
C1 = (2 (R / M) * P2 [Ba]) * (2 (-S2) ) (4)
C2 = P3 [Ba] (5)
Z = C1 * (X + C2) (6)
Y = Z * 2 (S1 + S2) (7)
However, P1 [Scf] indicates an integer predetermined for each scale factor index Scf, and P2 [Ba] and P3 [Ba] indicate a predetermined decimal number for each bit allocation Ba value. M represents a predetermined positive integer.
請求項8に記載の逆量子化方法に基づく処理を、コンピュータに実行させるための逆量子化プログラム。   An inverse quantization program for causing a computer to execute processing based on the inverse quantization method according to claim 8.
JP2003335736A 2003-09-26 2003-09-26 Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program Expired - Fee Related JP3889738B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003335736A JP3889738B2 (en) 2003-09-26 2003-09-26 Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003335736A JP3889738B2 (en) 2003-09-26 2003-09-26 Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program

Publications (2)

Publication Number Publication Date
JP2005099629A JP2005099629A (en) 2005-04-14
JP3889738B2 true JP3889738B2 (en) 2007-03-07

Family

ID=34463041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003335736A Expired - Fee Related JP3889738B2 (en) 2003-09-26 2003-09-26 Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program

Country Status (1)

Country Link
JP (1) JP3889738B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007195117A (en) * 2006-01-23 2007-08-02 Toshiba Corp Moving image decoding device
CN112085185B (en) * 2019-06-12 2024-04-02 上海寒武纪信息科技有限公司 Quantization parameter adjustment method and device and related product

Also Published As

Publication number Publication date
JP2005099629A (en) 2005-04-14

Similar Documents

Publication Publication Date Title
JP4049791B2 (en) Floating-point format digital signal lossless encoding method, decoding method, each apparatus, and each program
JP2010537245A (en) Digital content encoding and / or decoding
JP2010537245A5 (en)
JP2001184080A (en) Method and system of electronic watermark of compressed audio data
JP2000323993A (en) Mpeg1 audio layer iii decoding processor and computer- readable recording medium storing program allowing computer to function as mpeg1 audio layer iii decoding processor
JP2002335161A (en) Signal processor and processing method, signal encoder and encoding method, signal decoder and decoding method
JP3208001B2 (en) Signal processing device for sub-band coding system
KR20060084440A (en) A fast codebook selection method in audio encoding
JP3889738B2 (en) Inverse quantization apparatus, audio decoding apparatus, image decoding apparatus, inverse quantization method, and inverse quantization program
JPH07199996A (en) Device and method for waveform data encoding, decoding device for waveform data, and encoding and decoding device for waveform data
JPH0969781A (en) Audio data encoding device
US20120280838A1 (en) Data compression device, data compression method, and program
JP4357852B2 (en) Time series signal compression analyzer and converter
JP3877683B2 (en) Quantization apparatus and inverse quantization apparatus, and audio and image encoding apparatus and decoding apparatus that can use these apparatuses
JP4170795B2 (en) Time-series signal encoding apparatus and recording medium
JP2794842B2 (en) Encoding method and decoding method
JP4736331B2 (en) Acoustic signal playback device
JP3501246B2 (en) MPEG audio decoder
JP4438655B2 (en) Encoding device, decoding device, encoding method, and decoding method
JP2004198559A (en) Encoding method and decoding method for time-series signal
JP2006162774A (en) Signal processor
JP2002300042A (en) Signal decoding method, signal decoder, and recording medium having signal decoding processing program recorded thereon
JP3138100B2 (en) Signal encoding device and signal decoding device
JP3222967B2 (en) Digital signal processor
JP4249540B2 (en) Time-series signal encoding apparatus and recording medium

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060509

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060706

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060808

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060926

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20061020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061130

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101208

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101208

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111208

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees