JPH07219595A - Digital signal processing method and device therefor - Google Patents
Digital signal processing method and device thereforInfo
- Publication number
- JPH07219595A JPH07219595A JP1511894A JP1511894A JPH07219595A JP H07219595 A JPH07219595 A JP H07219595A JP 1511894 A JP1511894 A JP 1511894A JP 1511894 A JP1511894 A JP 1511894A JP H07219595 A JPH07219595 A JP H07219595A
- Authority
- JP
- Japan
- Prior art keywords
- predetermined
- signal processing
- digital signal
- processing method
- block
- 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.)
- Granted
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Television Receiver Circuits (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、例えば、音声信号、オ
ーディオ信号や画像信号等のディジタル信号の符号化処
理を行うディジタル信号処理方法及びその復号化処理を
行うディジタル信号処理方法と、このディジタル信号処
理方法を実現するディジタル信号処理装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital signal processing method for coding digital signals such as audio signals, audio signals and image signals, a digital signal processing method for decoding the digital signals, and a digital signal processing method for the digital signals. The present invention relates to a digital signal processing device that realizes a signal processing method.
【0002】[0002]
【従来の技術】オーディオ信号等の時系列サンプルデー
タ信号を高能率でビット圧縮して符号化する高能率符号
化の一種として、ディジタルフィルタを用いて符号化を
行う帯域分割符号化、スペクトル変換を用いた変換符号
化などが知られており、この両者を組み合わせた方法も
取られている。2. Description of the Related Art As one type of high-efficiency encoding in which a time-series sample data signal such as an audio signal is bit-compressed and encoded with high efficiency, band division encoding for performing encoding using a digital filter and spectrum conversion are performed. The transform coding used and the like are known, and a method combining both of them is also adopted.
【0003】帯域分割符号化の例としてはISO(国際
標準化機構)規格のISO11172−3などが挙げら
れる。また、ディジタルフィルタとしては、帯域分割に
よるエリアシングが合成後にキャンセルされるためにい
わゆるQMF(Quadratic Mirror Filter)と呼ばれるフ
ィルタが好適である。An example of band division encoding is ISO11172-3 of ISO (International Organization for Standardization) standard. Further, as the digital filter, a so-called QMF (Quadratic Mirror Filter) filter is suitable because aliasing due to band division is canceled after combination.
【0004】なお、上記QMFについては、例えば文献
「時間領域エリアシング・キャンセルを基礎とするフィ
ルタ・バンク設計を用いた分析/合成」("Analysis/Syn
tehsis Filter Bank Design Based on Time Domain Ali
asing Cancellation", J.Princen and A.Bradley, IEEE
Transactions on Acoustics, Speech and Signal Proc
essing, Vol34 pp.1153-1161, 1986) に述べられてい
る。Regarding the above QMF, for example, the document "Analysis / Syn" using "filter bank design based on time domain aliasing cancellation"("Analysis / Syn") is used.
tehsis Filter Bank Design Based on Time Domain Ali
asing Cancellation ", J. Princen and A. Bradley, IEEE
Transactions on Acoustics, Speech and Signal Proc
essing, Vol 34 pp.1153-1161, 1986).
【0005】[0005]
【発明が解決しようとする課題】ところが、上記のよう
な帯域分割符号化において必要なディジタルフィルタの
演算の際において、入力信号のレベルが大きい場合には
問題にはならないものの、入力信号のレベルが小さくな
ると、固定小数点での演算の場合には特に演算誤差が大
きくなりノイズが増加するという問題が生じる。However, when the level of the input signal is high in the operation of the digital filter required in the band division coding as described above, it is not a problem, but the level of the input signal is If the value becomes smaller, there is a problem in that the calculation error becomes particularly large and the noise increases in the case of a fixed-point calculation.
【0006】そこで、本発明は、上述したようなことに
鑑み、ディジタルフィルタの演算の際に、入力信号のレ
ベルが小さくなっても演算誤差が大きくならず、ノイズ
も増加しないディジタル信号処理方法及び装置を提供す
ることを目的とする。Therefore, in view of the above, the present invention provides a digital signal processing method and a digital signal processing method in which, even when the level of the input signal becomes small, the calculation error does not increase and the noise does not increase in the calculation of the digital filter. The purpose is to provide a device.
【0007】[0007]
【課題を解決するための手段】本発明は、上述の目的を
達成するために提案されたものであり、本発明のディジ
タル信号処理方法は、入力信号に対して、所定の非ブロ
ッキング周波数分析を行って当該分析出力を量子化する
符号化処理を施した後、記録或いは伝送を行うものであ
って、上記入力信号を複数サンプル毎にブロック化し、
各ブロックにおいて入力信号のサンプルの絶対値の最大
値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの入力信号の全てのサンプルに対して
所定の係数を乗算した後、所定の演算を行い、上記所定
の演算以降に各サンプルを上記所定の係数で除算するこ
とを特徴とするものである。The present invention has been proposed in order to achieve the above object, and a digital signal processing method of the present invention provides a predetermined non-blocking frequency analysis for an input signal. After performing an encoding process for quantizing the analysis output by performing the recording or transmission, the input signal is divided into blocks for each of a plurality of samples,
When the level of the maximum absolute value of the input signal sample in each block is smaller than the predetermined threshold, all samples of the input signal of the block are multiplied by a predetermined coefficient and then a predetermined calculation is performed. After the predetermined calculation, each sample is divided by the predetermined coefficient.
【0008】また、本発明のディジタル信号処理方法
は、入力信号に対して、所定の非ブロッキング周波数分
析を行い、当該非ブロッキング周波数分析の分析出力を
ブロック化して所定のブロッキング周波数分析を行い、
当該ブロッキング周波数分析の分析出力を量子化する符
号化処理を施した後、記録或いは伝送を行うものでもあ
り、各ブロックにおいて入力信号のサンプルの絶対値の
最大値のレベルが所定のスレシホールドより小さいとき
には、上記ブロックの入力信号の全てのサンプルに対し
て所定の係数を乗算した後、所定の演算を行い、上記所
定の演算以降に各サンプルを上記所定の係数で除算する
ことを特徴とする。In the digital signal processing method of the present invention, a predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is divided into blocks, and a predetermined blocking frequency analysis is performed.
It is also for recording or transmitting after performing an encoding process for quantizing the analysis output of the blocking frequency analysis, and the level of the maximum value of the absolute value of the sample of the input signal in each block is higher than a predetermined threshold. When it is small, all the samples of the input signal of the block are multiplied by a predetermined coefficient, a predetermined operation is performed, and each sample is divided by the predetermined coefficient after the predetermined operation. .
【0009】さらに、本発明のディジタル信号処理方法
は、入力信号に対して所定の非ブロッキング周波数分析
を行うディジタル信号処理方法でもあり、上記入力信号
をブロック化し、各ブロックにおいて入力信号のサンプ
ルの絶対値が所定のスレシホールドより小さいときに
は、上記ブロックの入力信号の全てのサンプルに対して
所定の係数を乗じた後、所定の演算を行って、上記所定
の演算の後に各サンプルを上記係数で除することを特徴
とする。このときの本発明のディジタル信号処理方法で
は、上記各ブロックにおいて入力信号のサンプルの絶対
値の最大値のレベルが所定のスレシホールドより小さい
ときに、上記ブロックの入力信号の全てのサンプルに対
して所定の係数を乗ずる。Furthermore, the digital signal processing method of the present invention is also a digital signal processing method for performing a predetermined non-blocking frequency analysis on an input signal. The input signal is divided into blocks, and in each block, absolute samples of the input signal are sampled. When the value is smaller than the predetermined threshold, all samples of the input signal of the block are multiplied by a predetermined coefficient, and then a predetermined calculation is performed. It is characterized by removing. In this case, in the digital signal processing method of the present invention, when the level of the maximum absolute value of the samples of the input signal in each of the blocks is smaller than a predetermined threshold, for all the samples of the input signal of the block, And multiply by a predetermined coefficient.
【0010】ここで、本発明のディジタル信号処理方法
では、上記最大値として、上記最大値の近似である上記
ブロックの入力信号のサンプルの絶対値の論理和を用い
る。また、上記スレシホールドとしては所定語長におけ
る絶対値の最大値を用い、上記スレシホールド及び上記
係数は上記符号化処理の演算語長及び上記所定の演算の
係数から設定する。また、上記所定の係数は各ブロック
毎に可変され、上記所定の係数としては、上記スレシホ
ールドを上記最大値で除した数を用いたり、2のべき乗
を用いたりし、上記乗算としてはビットシフトを用い
る。さらに、上記ビットシフトはシフト後の上記最大値
の語長が上記符号化処理の符号ビットを除いた演算語長
より定数nだけ短くなるように行う。この定数nには例
えば1を用いる。また、上記所定の演算は固定小数点で
行い、例えば当該所定の演算としてはディジタルのフィ
ルタ演算を行い、当該ディジタルのフィルタ演算にはク
ァドラチュア ミラー フィルタを用いる。この時のフ
ィルタ演算は、供給された信号の帯域を二分割するフィ
ルタを従属的に接続して行う。例えば、上記フィルタ分
割は、第1のフィルタで帯域を二分割した低い帯域側の
出力を、第2のフィルタでさらに二分割することにより
行う。Here, in the digital signal processing method of the present invention, as the maximum value, a logical sum of absolute values of samples of input signals of the blocks, which is an approximation of the maximum value, is used. Further, the maximum absolute value in a predetermined word length is used as the threshold, and the threshold and the coefficient are set from the operation word length of the encoding process and the coefficient of the predetermined operation. The predetermined coefficient is variable for each block. As the predetermined coefficient, a number obtained by dividing the threshold by the maximum value or a power of 2 is used. Use shift. Further, the bit shift is performed so that the word length of the maximum value after the shift is shorter than the operation word length excluding the sign bit of the coding process by a constant n. For example, 1 is used for this constant n. Further, the above-mentioned predetermined calculation is performed with a fixed point, for example, a digital filter calculation is performed as the predetermined calculation, and a quadrature mirror filter is used for the digital filter calculation. The filter calculation at this time is performed by subordinately connecting filters that divide the band of the supplied signal into two. For example, the filter division is performed by dividing the output on the low band side, which is obtained by dividing the band by the first filter into two, into two by the second filter.
【0011】さらに、本発明のディジタル信号処理方法
では、直交変換処理を、上記所定の演算がなされた後の
各帯域毎に行うようにする。ここで、上記直交変換処理
のブロックサイズは可変であり、上記直交変換処理とし
ては変換離散コサイン変換処理を用いる。また、本発明
のディジタル信号処理方法においては、符号化処理の演
算語長が入出力サンプルの語長と比較して略同じであ
る。Further, in the digital signal processing method of the present invention, the orthogonal transform processing is performed for each band after the above-mentioned predetermined calculation is performed. Here, the block size of the orthogonal transform process is variable, and a transform discrete cosine transform process is used as the orthogonal transform process. Further, in the digital signal processing method of the present invention, the operation word length of the encoding process is substantially the same as the word length of the input / output sample.
【0012】次に、本発明のディジタル信号処理方法
は、入力信号に対して、所定の非ブロッキング周波数分
析を行って当該分析出力を量子化する符号化処理を施し
た後、記録或いは伝送された信号を復号化する復号化処
理を行うものでもあり、記録或いは伝送された信号を複
数サンプル毎にブロック化し、各ブロックにおいて信号
のサンプルの絶対値の最大値のレベルが所定のスレシホ
ールドより小さいときには、上記ブロックの信号の全て
のサンプルに対して所定の係数を乗算した後、所定の演
算を行い、上記所定の演算以降に各サンプルを上記所定
の係数で除算することを特徴とする。Next, according to the digital signal processing method of the present invention, the input signal is subjected to a predetermined non-blocking frequency analysis and subjected to an encoding process for quantizing the analysis output, and then recorded or transmitted. It also performs a decoding process to decode the signal, and blocks the recorded or transmitted signal into multiple samples, and the level of the maximum absolute value of the signal sample in each block is smaller than the predetermined threshold. In some cases, all the samples of the signal of the block are multiplied by a predetermined coefficient, a predetermined calculation is performed, and each sample is divided by the predetermined coefficient after the predetermined calculation.
【0013】さらに、本発明のディジタル信号処理方法
は、入力信号に対して、所定の非ブロッキング周波数分
析を行い、当該非ブロッキング周波数分析の分析出力を
ブロック化して所定のブロッキング周波数分析を行い、
当該ブロッキング周波数分析の分析出力を量子化する符
号化処理を施した後、記録或いは伝送された信号を復号
化する復号化処理を行うものでもあり、上記所定のブロ
ッキング周波数分析に対応する逆ブロッキング周波数分
析を行い、各ブロックにおいて上記逆ブロッキング周波
数分析の出力のサンプルの絶対値の最大値のレベルが所
定のスレシホールドより小さいときには、上記ブロック
の逆ブロッキング周波数分析の出力である全てのサンプ
ルに対して所定の係数を乗算した後、所定の演算を行
い、上記所定の演算以降に各サンプルを上記所定の係数
で除算することを特徴とする。Further, according to the digital signal processing method of the present invention, a predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is divided into blocks, and a predetermined blocking frequency analysis is performed.
After performing the encoding process for quantizing the analysis output of the blocking frequency analysis, it also performs the decoding process for decoding the recorded or transmitted signal, and the inverse blocking frequency corresponding to the predetermined blocking frequency analysis. When the analysis is performed and the level of the maximum value of the absolute value of the output of the inverse blocking frequency analysis in each block is smaller than the predetermined threshold, for all the samples that are the output of the inverse blocking frequency analysis of the block. Is multiplied by a predetermined coefficient, a predetermined calculation is performed, and after the predetermined calculation, each sample is divided by the predetermined coefficient.
【0014】ここで、本発明のディジタル信号処理方法
では、上記最大値として、上記最大値の近似である上記
ブロックの逆ブロッキング周波数分析出力の絶対値の論
理和を用い、上記スレシホールドとして所定語長におけ
る絶対値の最大値を用い、上記スレシホールド及び上記
係数を上記復号化処理の演算語長及び上記所定の演算の
係数から設定する。また、上記所定の係数は各ブロック
毎に可変にし、上記所定の係数としては、上記スレシホ
ールドを上記最大値で除した数を用いたり、2のべき乗
を用いたりし、上記乗算としてはビットシフトを用い
る。さらに、上記ビットシフトはシフト後の上記最大値
の語長が上記復号化処理の符号部分を除いた演算語長よ
り定数nだけ短くなるように行い、上記定数nよは例え
ば1を用いる。また、上記所定の演算は固定小数点で行
い、上記所定の演算としてはディジタルのフィルタ演算
を行い、当該ディジタルのフィルタ演算にはインバース
クァドラチュア ミラー フィルタを用いる。このと
きの上記フィルタ演算は、二分割された帯域を合成する
フィルタを従属的に接続して行い、上記フィルタ分割
は、第1のフィルタで低域側の二つの帯域を合成し、第
2のフィルタで第1のフィルタの出力と最高域側の帯域
を構成して全帯域を得る。Here, in the digital signal processing method of the present invention, as the maximum value, a logical sum of absolute values of the inverse blocking frequency analysis outputs of the blocks, which is an approximation of the maximum value, is used, and the threshold is predetermined. Using the maximum absolute value of the word length, the threshold and the coefficient are set from the operation word length of the decoding process and the coefficient of the predetermined operation. The predetermined coefficient is variable for each block, and the predetermined coefficient may be a number obtained by dividing the threshold by the maximum value or a power of 2, and the multiplication may be performed in bits. Use shift. Further, the bit shift is performed so that the word length of the maximum value after the shift is shorter than the operation word length excluding the code part of the decoding process by a constant n, and 1 is used for the constant n, for example. Further, the above-mentioned predetermined calculation is performed with a fixed point, a digital filter calculation is performed as the above-mentioned predetermined calculation, and an inverse quadrature mirror filter is used for the digital filter calculation. At this time, the filter calculation is performed by subordinately connecting filters for synthesizing the two divided bands, and the filter division is performed by synthesizing the two low band side bands by the first filter and the second band. The filter is used to configure the output of the first filter and the band on the highest band side to obtain the entire band.
【0015】さらに本発明のディジタル信号処理方法で
は、逆直交変換処理を、上記各帯域毎に行い、上記逆直
交変換処理のブロックサイズは可変とし、上記逆直交変
換処理としては逆変換離散コサイン変換処理を用いる。
また、本発明のディジタル信号処理方法では、復号化処
理の演算語長が入出力サンプルの語長と比較して略同じ
である。Further, in the digital signal processing method of the present invention, the inverse orthogonal transform processing is performed for each of the bands, the block size of the inverse orthogonal transform processing is variable, and the inverse orthogonal discrete cosine transform is used as the inverse orthogonal transform processing. Use processing.
Further, in the digital signal processing method of the present invention, the operation word length of the decoding process is substantially the same as the word length of the input / output sample.
【0016】最後に、本発明のディジタル信号処理装置
は、上述した本発明の各ディジタル信号処理方法が適用
される演算手段を有するものである。Finally, the digital signal processing apparatus of the present invention has a computing means to which the above-mentioned digital signal processing methods of the present invention are applied.
【0017】[0017]
【作用】本発明のディジタル信号処理方法及び装置によ
れば、所定の演算としてのフィルタ演算の際に、入力信
号を例えば一定数のサンプル毎にブロック化して、この
ブロック内で最も絶対値の大きいサンプルである最大値
を検出し、このサンプルの大きさによってブロック内の
サンプルに所定の係数を乗算してゲインをコントロール
するいわゆるブロックフローティングと呼ばれる手法を
適用することによって、固定小数点演算等の比較的処理
が少ない符号化処理や復号化処理においても小入力時の
演算誤差を低減してダイナミックレンジを改善する。According to the digital signal processing method and apparatus of the present invention, in the filter operation as the predetermined operation, the input signal is divided into blocks, for example, every fixed number of samples, and the absolute value is the largest in this block. By detecting the maximum value that is a sample and applying a so-called block floating method that controls the gain by multiplying the sample in the block by a predetermined coefficient according to the size of this sample, it is possible to relatively Even in a coding process and a decoding process that require a small amount of processing, the calculation error at the time of a small input is reduced and the dynamic range is improved.
【0018】また、本発明のディジタル信号処理方法及
び装置によれば、ブロックフローティングの際、各サン
プルに共通の係数を乗算するために、より簡単な方法と
して、ビットシフトを利用するフローティングを用いる
ことにより、さらに符号化処理や復号化処理を簡略化す
ると共に、装置の場合にはハードウェア規模の縮小と処
理の高速化を図る。Further, according to the digital signal processing method and apparatus of the present invention, in the block floating, in order to multiply each sample by a common coefficient, as a simpler method, floating using bit shift is used. This further simplifies the encoding process and the decoding process, and in the case of the device, reduces the hardware scale and speeds up the process.
【0019】そして、各ブロック内のサンプルの最大値
を検出するかわりに、各ブロック内のサンプルの論理和
を取ってこの最大値の近似値として使用することによ
り、さらに符号化処理や復号化処理を簡略化すると共
に、装置の場合にはハードウェア規模を縮小する。Then, instead of detecting the maximum value of the samples in each block, the logical sum of the samples in each block is taken and used as an approximate value of this maximum value, thereby further performing the encoding process and the decoding process. And the hardware scale is reduced in the case of a device.
【0020】[0020]
【実施例】以下、本発明の一実施例について図面を参照
しながら説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.
【0021】本実施例では、帯域分割符号化と適応変換
符号化を組み合わせ、適応ビット割当の各技術を用いて
ディジタル信号を高能率符号化する技術について説明す
る。In the present embodiment, a technique for combining a band division coding and an adaptive transform coding and highly efficient coding a digital signal using each technique of adaptive bit allocation will be described.
【0022】図1には、本発明のディジタル信号処理方
法の符号化処理を実現する本発明のディジタル信号処理
装置の具体的構成としての高能率符号化装置を示す。こ
の図1に示す高能率符号化装置では、入力ディジタル信
号をフィルタ等により複数の周波数帯域に分割すると共
に、高い周波数ほどバンド幅を広く設定し、各周波数帯
域毎に直交変換を行って、得られた周波数軸のスペクト
ルデータを人間の聴覚特性を考慮したいわゆる臨界帯域
幅(クリティカルバンド)ごと若しくは高域においては
クリティカルバンドをさらに複数帯域に分割した帯域ご
とに適応的にビット割当して符号化している。もちろん
フィルタ等による周波数分割幅は等分割としてもよい。
さらに本発明実施例においては、直交変換の前に入力信
号に応じて適応的に直交変換ブロックサイズを変化させ
ると共に、上記フィルタ演算の際にフローティング処理
を行っている。FIG. 1 shows a high-efficiency coding apparatus as a concrete configuration of the digital signal processing apparatus of the present invention which realizes the coding processing of the digital signal processing method of the present invention. In the high-efficiency encoder shown in FIG. 1, the input digital signal is divided into a plurality of frequency bands by a filter and the like, the bandwidth is set wider for higher frequencies, and orthogonal transformation is performed for each frequency band to obtain The spectrum data of the specified frequency axis is coded by adaptively allocating bits for each so-called critical band (critical band) considering human auditory characteristics or for each high band in which the critical band is further divided into multiple bands. ing. Of course, the frequency division width by the filter or the like may be equally divided.
Further, in the embodiment of the present invention, the orthogonal transform block size is adaptively changed according to the input signal before the orthogonal transform, and the floating process is performed during the filter calculation.
【0023】すなわち、図1において、入力端子100
には例えば0〜20kHzのオーディオPCM信号が供
給されている。これらの入力信号は例えば512サンプ
ル毎にブロック化されて後述する処理が施される。That is, in FIG. 1, the input terminal 100
Is supplied with an audio PCM signal of 0 to 20 kHz, for example. These input signals are divided into blocks, for example, every 512 samples and subjected to the processing described later.
【0024】上記入力端子100に供給された512サ
ンプルからなるブロックの時系列サンプルデータは、最
短シフト量算出回路102に送られる。当該最短シフト
量算出回路102では、先ず、これらのサンプルの絶対
値を求め、その最大値或いは最大値の近似値を算出す
る。またここでは、最大値そのものを求める代わりに、
この最大値の近似値として、512サンプルからなるブ
ロックの上記入力時系列サンプルデータの絶対値の論理
和をとることにしてもよい。なお、このように最大値の
近似値として、入力サンプルの論理和を用いる場合のブ
ロックフローティング部の詳しい説明は図3において後
述することとする。The time-series sample data of the block consisting of 512 samples supplied to the input terminal 100 is sent to the shortest shift amount calculation circuit 102. The shortest shift amount calculation circuit 102 first obtains the absolute values of these samples and calculates the maximum value or an approximate value of the maximum value. Also here, instead of finding the maximum value itself,
As an approximate value of this maximum value, a logical sum of absolute values of the input time-series sample data of a block consisting of 512 samples may be taken. A detailed description of the block floating unit when the logical sum of input samples is used as the approximate value of the maximum value will be given later in FIG.
【0025】当該最短シフト量算出回路102では、上
記のようにして求められた最大値或いはその近似値を用
いて、この最大値等が本実施例符号化装置の符号を除い
た演算語長になるまで左シフトできる回数mbを算出
し、その最短シフト量Mbを(mb−n)とする。上記
最短シフト量Mbが負の値を取る場合には、これを強制
的に0とする。なお、ここで、上記nは、オーバーフロ
ウを防ぐために上記符号化装置の演算語長及びフィルタ
係数を鑑みて設定した定数であって0を含めた正の値で
あり、どのように設定してもよい。In the shortest shift amount calculation circuit 102, the maximum value obtained as described above or its approximate value is used as the operation word length excluding the code of the encoding apparatus of this embodiment. The number of times mb that can be shifted to the left is calculated until, and the shortest shift amount Mb is set to (mb-n). When the shortest shift amount Mb has a negative value, it is forcibly set to 0. Note that, here, n is a constant set in consideration of the operation word length and the filter coefficient of the encoding device in order to prevent overflow, and is a positive value including 0. Good.
【0026】次のシフト量決定回路103からは、上記
のようにして算出された上記ブロックの時系列サンプル
データの最短シフト量Mb及び上記ブロックの時間的に
1つ前のブロックの後述するワークエリアフローティン
グ部において算出されたフィルタ演算のワークエリアに
ある既に左シフトされているサンプルのシフト量Mwの
うちの大きくない方の情報が、上記ブロックのシフト量
Mとしてサンプルデータ・フローティング回路104及
びフィルタワークエリアデータ・シフト量調節回路10
5に送られる。From the next shift amount determination circuit 103, the shortest shift amount Mb of the time-series sample data of the block calculated as described above and the work area of the block immediately preceding the block in time will be described later. The information that is not larger than the shift amount Mw of the sample that has already been left-shifted in the work area of the filter calculation calculated in the floating unit is used as the shift amount M of the block, that is, the sample data floating circuit 104 and the filter work. Area data / shift amount adjustment circuit 10
Sent to 5.
【0027】次に、サンプルデータ・フローティング回
路104では、上記ブロックの512サンプルブロック
の時系列サンプルデータが上記シフト量決定回路103
で決定されたシフト量Mだけ左シフトされるフローティ
ング処理が行われる。ここでは、当該フローティング処
理を簡略化するために、乗数として2のべき乗を選び、
左シフトでこの演算を行うこととしている。なお、実際
には乗数としては2のべき乗のみでなくどのような値を
とってもよい。Next, in the sample data floating circuit 104, the time-series sample data of the 512 sample blocks of the above block is transferred to the shift amount determining circuit 103.
Floating processing is performed in which the shift amount M determined in 1 is shifted to the left. Here, in order to simplify the floating process, a power of 2 is selected as a multiplier,
This operation is supposed to be performed by left shift. Note that in practice, the multiplier is not limited to the power of 2, and may take any value.
【0028】また、上記ブロックの時間的に1つ前のブ
ロックに対する後述するワークエリアフローティング部
におけるワークエリアのデータは、既に上記ワークエリ
ア内のデータの絶対値の最大値の有効語長が符号化装置
の演算語長よりnだけ小さくなるまで左シフトされてい
るので、フィルタワークエリアデータ・シフト量調節回
路105においては、シフト量決定回路103で選択さ
れたシフト量Mが端子101より入力されたフィルタワ
ークエリアのシフト量Mwと等しい場合には処理を行わ
ない。しかし、シフト量決定回路103により選択され
たシフト量Mが端子101より入力されたシフト量Mw
より小さい場合には、その差分(Mw−M)ビットだけ
ワークエリア内の全データを右シフトさせる処理を行う
ことにより、上記ブロックのデータとの入力信号からの
シフト量を等しくする。In the work area data in the work area floating portion, which will be described later, for the block immediately preceding the block in time, the effective word length of the maximum absolute value of the data in the work area has already been encoded. Since it is left-shifted by n smaller than the operation word length of the device, in the filter work area data / shift amount adjusting circuit 105, the shift amount M selected by the shift amount determining circuit 103 is input from the terminal 101. If it is equal to the shift amount Mw of the filter work area, no processing is performed. However, the shift amount M selected by the shift amount determination circuit 103 is the shift amount Mw input from the terminal 101.
If it is smaller than the difference, the process shifts all the data in the work area to the right by the difference (Mw-M) bits to equalize the shift amount from the input signal with the data of the block.
【0029】次の上記帯域分割フィルタ106は、いわ
ゆるQMF等のフィルタからなり、この帯域分割フィル
タ106では、サンプルデータ・フローティング回路1
04においてシフトアップされたデータを、フィルタワ
ークエリアデータ・シフト量調節回路105においてシ
フトされたフィルタワークエリアで0〜10kHz帯域
と10k〜20kHz帯域とに分割する。10k〜20
kHzの帯域の256個のデータは、高域サンプルバッ
ファ110に送られる。The next band division filter 106 comprises a filter such as a so-called QMF. In the band division filter 106, the sample data floating circuit 1 is used.
The data up-shifted in 04 is divided into 0-10 kHz band and 10-20 kHz band in the filter work area shifted in the filter work area data shift amount adjusting circuit 105. 10k to 20
The 256 data in the kHz band are sent to the high frequency sample buffer 110.
【0030】また、帯域分割フィルタ106において分
割された0〜10kHzの帯域のデータは、次に同じく
QMF等のフィルタからなる帯域分割フィルタ107に
送られ、ここでさらに2分割される。当該帯域分割フィ
ルタ107で分割された0〜5kHz帯域の128個の
データは、低域サンプルバッファ108に送られ、5k
〜10kHz帯域の128個のデータは中域サンプルバ
ッファ109に送られる。The data in the band of 0 to 10 kHz divided by the band division filter 106 is then sent to the band division filter 107 which is also a filter such as QMF, and is further divided into two. The 128 pieces of data in the band of 0 to 5 kHz divided by the band division filter 107 are sent to the low-frequency sample buffer 108, and 5 kHz.
128 pieces of data in the band of 10 kHz are sent to the mid-range sample buffer 109.
【0031】ここで、本実施例では帯域分割フィルタと
して、上記QMF等のフィルタを従属的にカスケード状
に接続して用いているが、上記フィルタワークエリアデ
ータ・シフト量調節回路105及び後述するフィルタワ
ークエリアデータ・フローティング回路119における
シフト操作は、このようにフィルタが複数個ある場合に
も全てのフィルタワークエリアのデータに対して行われ
る。Here, in this embodiment, as the band division filter, the filters such as the above QMF are subordinately connected in a cascade form and used. However, the above filter work area data / shift amount adjusting circuit 105 and a filter which will be described later. The shift operation in the work area data floating circuit 119 is performed on the data of all the filter work areas even when there are a plurality of filters in this way.
【0032】次に、各帯域のサンプルバッファ108、
109、110からの各帯域のサンプルデータは、ブロ
ックフローティング解除部のそれぞれ対応する各ブロッ
クフローティング解除回路112、113、114に送
られる。各ブロックフローティング解除回路112、1
13、114では、上記シフト量決定回路103で選択
されたシフト量分すなわちMビットだけ、それぞれ供給
されたサンプルデータを右シフトすることにより、入力
時のレベルに戻す処理を行う。また、上述したように、
フローティングの際に乗数を2のべき乗以外に取った場
合には、上記ブロックフローティングの解除は当然右シ
フトではなく、全てのサンプルを上記乗数で除すること
によって行われる。各ブロックフローティング解除回路
112、113、114の出力データは、それぞれ対応
する直交変換回路115、116、117に送られる。Next, the sample buffer 108 of each band,
The sample data of each band from 109 and 110 are sent to the corresponding block floating canceling circuits 112, 113 and 114 of the block floating canceling unit, respectively. Each block floating release circuit 112, 1
In steps 13 and 114, the supplied sample data is right-shifted by the shift amount selected by the shift amount determining circuit 103, that is, M bits, to restore the input level. Also, as mentioned above,
If a multiplier other than a power of 2 is used during floating, the block floating is not released by the right shift, but all the samples are divided by the multiplier. The output data of each block floating cancellation circuit 112, 113, 114 is sent to the corresponding orthogonal transformation circuit 115, 116, 117, respectively.
【0033】また、各帯域のサンプルバッファ108、
109、110からの各帯域のサンプルデータは、直交
変換ブロックサイズ決定回路111にも送られる。当該
直交変換ブロックサイズ決定回路111では、各帯域の
サンプルバッファ108、109、110からの各帯域
のデータを用いて、人間の聴覚に基づいて、各帯域にお
ける直交変換のブロックサイズを決定し、その直交変換
のブロックサイズを示す情報を各帯域に対応する直交変
換回路115、116、117に送ると共に出力端子1
23に出力する。Further, the sample buffer 108 of each band,
The sample data of each band from 109 and 110 is also sent to the orthogonal transform block size determination circuit 111. The orthogonal transform block size determination circuit 111 uses the data of each band from the sample buffers 108, 109, and 110 of each band to determine the block size of the orthogonal transform in each band based on human hearing. The information indicating the block size of the orthogonal transformation is sent to the orthogonal transformation circuits 115, 116, 117 corresponding to each band and the output terminal 1
To 23.
【0034】ここで、上記直交変換において、一般的に
は当該直交変換の際のブロックサイズが大きい方がスペ
クトルの集中度が高まり、したがって、効果的に符号化
を行うことができるようになるが、例えばアタック部分
のようなレベルの急激に変動する入力信号等の場合に
は、上記直交変換のブロックサイズが大きいままでは上
記アタック部分の前後(特に前)のレベルの小さい部分
でプリエコーと呼ばれる量子化雑音が耳につきやすい。Here, in the above orthogonal transform, generally, the larger the block size at the time of the orthogonal transform is, the higher the degree of concentration of the spectrum is, and therefore the effective coding can be performed. For example, in the case of an input signal or the like in which the level changes abruptly, such as in the attack part, a quantum called a pre-echo is generated in a small level part before and after (particularly in front of) the attack part if the block size of the orthogonal transformation remains large. Noise is easy to hear.
【0035】そこで、本実施例では、入力信号に応じて
適応的にブロックサイズを可変にすることにより、音質
の劣化を防ぎつつ効果的に符号化を行うようにしてい
る。すなわち、上記直交変換ブロックサイズ決定回路1
11では、例えば各帯域において上記と同様の最短シフ
ト量を2.5ms毎に算出し、上記ブロック内で最短シ
フト量が急激に例えば4ビット以上減少するところがあ
る場合に、急激な信号の振幅増加があったとみなして、
例えば直交変換ブロックサイズを半分ないしは1/4に
する。この他にも上記ブロックサイズの具体的な決定方
法についてはさまざまなものが考えられるがここでは特
に限定は行わない。またハードウェア上での制約などが
ある場合にはこのように直交変換ブロックサイズを可変
にせず、固定のブロックサイズで直交変換を行うことに
してもよい。Therefore, in the present embodiment, the block size is adaptively changed according to the input signal, so that the encoding is effectively performed while preventing the deterioration of the sound quality. That is, the orthogonal transform block size determination circuit 1
11, the shortest shift amount similar to the above in each band is calculated every 2.5 ms, and when there is a place where the shortest shift amount sharply decreases by, for example, 4 bits or more, the amplitude of the signal rapidly increases. Assuming that there was
For example, the orthogonal transform block size is halved or ¼. Other than this, various concrete methods of determining the block size can be considered, but the method is not particularly limited here. Further, if there is a constraint on the hardware, the orthogonal transform block size may not be made variable in this way, and orthogonal transform may be performed with a fixed block size.
【0036】この実施例においては、上記フローティン
グ解除部を直交変換部分に入る前に行っているが、これ
以外に例えば直交変換部分でもブロックフローティング
処理を行ったりしたときには、上記フローティング解除
を直交変換の演算途中で段階的に行うことも、また場合
によっては上記直交変換の後でフローティングを解除す
るものとすることもできる。ここでは、どこでフローテ
ィングを解除するかについては特に限定は行わない。In this embodiment, the floating canceling section is carried out before entering the orthogonal transform section. However, when block floating processing is carried out also in the orthogonal transform section, for example, the floating canceling is carried out by the orthogonal transform section. It may be performed stepwise during the calculation, or in some cases, the floating may be released after the orthogonal transformation. Here, there is no particular limitation as to where the floating is released.
【0037】次に、上記直交変換ブロックサイズ決定回
路111で決定された各帯域での直交変換ブロックサイ
ズにしたがって、上記直交変換回路115、116、及
び117においては直交変換の一例である変換離散コサ
イン変換(Modefied DiscreteCosine Transform:MDC
T)が施され、ここでそれぞれの帯域の時系列のデータ
が周波数軸上のスペクトルデータに変換される。Next, according to the orthogonal transform block size in each band determined by the orthogonal transform block size determining circuit 111, the orthogonal transform circuits 115, 116 and 117 transform the discrete cosine which is an example of the orthogonal transform. Transform (Modefied Discrete Cosine Transform: MDC
T) is performed, where the time series data of each band is converted into spectrum data on the frequency axis.
【0038】なお、上記MDCT(変換離散コサイン変
換)については、例えば文献「時間領域エリアシング・
キャンセルを基礎とするフィルタ・バンク設計を用いた
サブバンド/変換符号化」(^Subband/Transform Coding
Using Filter Bank DesignsBased on Time Domain Ali
asing Cancellation," J.P.Princen A.B.Bradley,Uni
v. of Surrey Royal Melbourne Inst. of Tech. ICASSP
1987) に述べられている。Regarding the MDCT (Transform Discrete Cosine Transform), for example, the document “Time Domain Aliasing
Subband / Transform Coding Using Cancellation-Based Filter Bank Design "(^ Subband / Transform Coding
Using Filter Bank Designs Based on Time Domain Ali
asing Cancellation, "JPPrincen ABBradley, Uni
v. of Surrey Royal Melbourne Inst. of Tech. ICASSP
1987).
【0039】上述のようにして各直交変換回路115、
116、及び117において直交変換演算が施された各
帯域のスペクトルデータは、適応ビット割当符号化回路
120に送られる。当該適応ビット割り当て符号化回路
120においては、例えば各クリティカルバンド毎に、
正規化係数すなわちその中に含まれるスペクトル信号の
絶対値の最大値で、各スペクトル信号を正規化すると共
に、当該正規化されたスペクトル信号を、量子化雑音が
そのクリティカルバンドの信号によってマスクされるだ
けのビット数で再量子化を行い、この再量子化されたス
ペクトル信号を、各クリティカルバンド毎に求められた
上記正規化係数と上記再量子化に使われたビット数と共
に出力端子121に出力する。As described above, each orthogonal transformation circuit 115,
The spectrum data of each band subjected to the orthogonal transform calculation at 116 and 117 is sent to the adaptive bit allocation encoding circuit 120. In the adaptive bit allocation encoding circuit 120, for example, for each critical band,
The normalization coefficient, that is, the maximum value of the absolute value of the spectrum signal contained therein, normalizes each spectrum signal, and the normalized spectrum signal is masked by quantization noise of the quantization noise. Requantization is performed with the number of bits only, and the requantized spectrum signal is output to the output terminal 121 together with the normalization coefficient obtained for each critical band and the number of bits used for the requantization. To do.
【0040】一方、ワークエリアフローティング部の最
短シフト量算出回路118においては、上記ブロックに
おける各帯域分割フィルタ106、107でのフィルタ
演算後に、フィルタワークエリアにある全てのデータに
ついて、前記最短シフト量算出回路102で行うものと
同様に最大値或いはその近似値を検出し、上記最大値等
が本実施例符号化装置の符号部分を除いた演算語長にな
るまで左シフト可能な回数mxを算出する。さらに、当
該最短シフト量算出回路118では、前記最短シフト量
算出回路102と同様に、nビットの余裕を見て最短シ
フト量Mx=(mx−n)を算出する。On the other hand, in the shortest shift amount calculation circuit 118 of the work area floating portion, the shortest shift amount calculation is performed for all the data in the filter work area after the filter calculation in each of the band division filters 106 and 107 in the above block. As in the case of the circuit 102, the maximum value or its approximate value is detected, and the number of times mx at which the left shift is possible is calculated until the maximum value or the like becomes the operation word length excluding the code part of the encoding apparatus of this embodiment. . Further, in the shortest shift amount calculation circuit 118, the shortest shift amount Mx = (mx-n) is calculated with a margin of n bits, as in the shortest shift amount calculation circuit 102.
【0041】次のフィルタワークエリアデータ・フロー
ティング回路119では、このシフト量Mxを用いて、
前記サンプルデータ・フローティング回路104で行う
ものと同様に各データをMxビットだけ左シフトしてフ
ローティング処理を行う。In the next filter work area data floating circuit 119, this shift amount Mx is used,
As in the case of the sample data floating circuit 104, each data is left-shifted by Mx bits to perform the floating process.
【0042】さらに次のワークエリアシフト量算出回路
124においては、前記シフト量決定回路103のシフ
ト量Mと上記最短シフト量算出回路118で求めた最短
シフト量Mxを加え合わせることによって、時間的に1
つ後のブロックでの処理に使用するためにフィルタワー
クエリアのデータの入力信号からのシフト量Mw’を求
め、端子122に出力する。Further, in the next work area shift amount calculation circuit 124, the shift amount M of the shift amount determination circuit 103 and the shortest shift amount Mx obtained by the shortest shift amount calculation circuit 118 are added together to temporally 1
The shift amount Mw ′ from the input signal of the data in the filter work area is calculated for use in the processing in the subsequent block and is output to the terminal 122.
【0043】以上で、本実施例装置の処理は終了する。This is the end of the processing of the apparatus of this embodiment.
【0044】次に、図2のフローチャートには、図1の
構成におけるブロックフローティング部の処理をソフト
ウェア的に実現する際の手順を示す。Next, the flowchart of FIG. 2 shows a procedure for implementing the processing of the block floating unit in the configuration of FIG. 1 by software.
【0045】この図2において、図1の最短シフト量算
出回路102に相当する工程としては、先ずステップS
11で各ワードの絶対値を算出する。さらに次のステッ
プS12では、工程の最初には初期値として0となって
いる最大値と上記絶対値との比較を行う。当該ステップ
S12において絶対値が最大値以上であると判断した場
合には、ステップS13に進み、当該ステップS13で
は上記最大値として上記絶対値を代入する。一方、ステ
ップS12において絶対値が最大値以上でないと判断し
た場合にはステップS14に進み、当該ステップS14
で全てのワードが終了したか否かを判別する。このステ
ップS14で全ワードの演算が終了していないと判断し
た場合にはステップS11に戻り、終了していると判断
した場合には次のステップS15に進む。In FIG. 2, the step corresponding to the shortest shift amount calculation circuit 102 of FIG.
At 11, the absolute value of each word is calculated. Further, in the next step S12, the maximum value, which is 0 as an initial value at the beginning of the process, is compared with the absolute value. If it is determined in step S12 that the absolute value is greater than or equal to the maximum value, the process proceeds to step S13, and in step S13, the absolute value is substituted as the maximum value. On the other hand, if it is determined in step S12 that the absolute value is not greater than or equal to the maximum value, the process proceeds to step S14
Determines whether all words have been completed. If it is determined in step S14 that the calculation of all words is not completed, the process returns to step S11, and if it is determined that the calculation is completed, the process proceeds to the next step S15.
【0046】また、この図1の最短シフト量算出回路1
02に相当する各工程では、前述したように、ステップ
S12及びステップS13において最大値を求める代わ
りに各ワードの絶対値の論理和を求めるようにすること
もできる。これにより、ブロック内の最大絶対値を検出
する必要がなくなり、ブロック内の絶対値の論理和をと
るだけの単純な処理によって、フローティングの乗数す
なわち上記シフト量を求めることが出来る。またこれ
は、マイクロプログラムによりソフトウェア的に実現す
る際のステップ数を少なくでき、その分高速処理が図れ
ることとなる。The shortest shift amount calculation circuit 1 shown in FIG.
In each step corresponding to 02, as described above, instead of obtaining the maximum value in steps S12 and S13, the logical sum of absolute values of the words can be obtained. This eliminates the need to detect the maximum absolute value in the block, and the floating multiplier, that is, the shift amount can be obtained by a simple process of taking the logical sum of the absolute values in the block. In addition, this can reduce the number of steps when it is implemented by software by a microprogram, and accordingly high-speed processing can be achieved.
【0047】次のステップS15では、上記ステップS
14までで求められた最大値を左シフトする。次のステ
ップS16では、上記シフト結果の最上位ビット(MS
B)が”1”ととなることを検出したか否かを判定を行
い、このステップS16でMSBに”1”が検出されな
い(NO)と判定したときはステップS15に戻り、”
1”が検出されたと判定したときにはそれまでのシフト
回数をmbとして次のステップS160に進む。In the next step S15, the above step S
The maximum value obtained up to 14 is shifted to the left. In the next step S16, the most significant bit (MS
It is determined whether or not B) becomes "1", and if "1" is not detected in the MSB in this step S16 (NO), the process returns to step S15, and
When it is determined that "1" is detected, the number of shifts up to that time is set to mb, and the process proceeds to the next step S160.
【0048】ステップS160においては、オーバーフ
ロウを防ぐための余分のビット数nをmbから減算して
最大シフト可能量Mbを求め、次のステップS17に進
む。ステップS17では、その値が正の値か否かの判断
を行い、正の値を取ると判断したときには次のステップ
S19に進み、正の値を取らないと判断したときにはス
テップS18に進む。ステップS18では、強制的にM
b=0として、ステップS19に進む。以上の工程が図
1の最短シフト量算出回路102に対応する部分であ
る。In step S160, the extra bit number n for preventing overflow is subtracted from mb to obtain the maximum shiftable amount Mb, and the process proceeds to the next step S17. In step S17, it is determined whether or not the value is a positive value. When it is determined that the value is positive, the process proceeds to step S19, and when it is determined that the value is not positive, the process proceeds to step S18. In step S18, M is forced.
When b = 0, the process proceeds to step S19. The above steps correspond to the shortest shift amount calculation circuit 102 of FIG.
【0049】次のステップS19からステップS21は
図1のシフト量決定回路103に相当する。ステップS
19では、このブロックにおける最短シフト量Mbとワ
ークエリアのデータのシフト量Mwとを比較して、Mb
がMw以上の場合にはステップS20においてこのブロ
ックにおけるシフト量MをMwに決定してステップS2
4に進み、逆にMbがMw未満の場合にはステップS2
1においてシフト量MをMbとしてステップS22に進
む。The following steps S19 to S21 correspond to the shift amount determining circuit 103 in FIG. Step S
In FIG. 19, the shortest shift amount Mb in this block is compared with the work area data shift amount Mw, and Mb
Is greater than or equal to Mw, the shift amount M in this block is determined to be Mw in step S20, and step S2
4 and conversely, if Mb is less than Mw, step S2
In step 1, the shift amount M is set to Mb, and the process proceeds to step S22.
【0050】そして、ステップS22では時間的に1つ
前のブロックで既にMwビットだけ左シフトされている
ワークエリアのデータを(Mw−M)ビットだけ右シフ
トし、次のステップS23ではワークエリア中の全ワー
ドが終了したか否かを判定し、終了していなければステ
ップS22に戻り、終了していればステップS24に進
むという図1のフィルタワークエリアデータ・シフト量
調節回路105に相当する処理を行う。Then, in step S22, the data in the work area, which has been left-shifted by Mw bits in the immediately preceding block in time, is right-shifted by (Mw-M) bits, and in the next step S23, in the work area. Processing of the filter work area data shift amount adjusting circuit 105 of FIG. 1 in which it is determined whether or not all the words have been completed, and if not completed, the processing returns to step S22, and if completed, the processing proceeds to step S24. I do.
【0051】ステップS24では、上記決定されたこの
ブロックでのシフト量Mビットだけ、時系列サンプルデ
ータを左シフトする。ステップS25ではこの処理が全
ワードについて終了したか否かを判定し、終了していな
い場合にはステップS24に戻り、終了したところで図
1でのサンプルデータ・フローティング回路104に相
当する処理は終了し、ブロックフローティング部全体の
処理も同時に終了する。In step S24, the time-series sample data is left-shifted by M bits, which is the shift amount determined in the block. In step S25, it is determined whether or not this process is completed for all words. If not completed, the process returns to step S24, and when completed, the process corresponding to the sample data floating circuit 104 in FIG. 1 is completed. The processing of the entire block floating unit is also ended at the same time.
【0052】次に、図3は図1でのブロックフローティ
ング部の処理すなわち図2の処理の、絶対値の最大値を
その論理和で近似した場合の回路構成を示すものであ
る。Next, FIG. 3 shows a circuit configuration when the maximum value of absolute values in the process of the block floating unit in FIG. 1, that is, the process in FIG. 2 is approximated by the logical sum thereof.
【0053】この図3において、入力端子1にはディジ
タルの時系列サンプルデータが供給されている。このサ
ンプルデータは、絶対値算出回路2に送られて各ワード
の絶対値が算出され、最大値の近似値を求めるための論
理和(OR)回路3に送られる。In FIG. 3, digital time-series sample data is supplied to the input terminal 1. This sample data is sent to the absolute value calculation circuit 2, the absolute value of each word is calculated, and sent to the logical sum (OR) circuit 3 for obtaining the approximate value of the maximum value.
【0054】OR回路3からのデータは、ラッチ或いは
レジスタとして1ワードを記憶するメモリ4に送られ、
このメモリ4からの出力データがOR回路3に戻され
て、上記絶対値算出回路2からの現在のワードの絶対値
と論理和演算される。すなわち、OR回路3からの論理
和演算出力がメモリ4で1ワード遅延されて入力された
現在のワードと論理和されることにより、順次累積的に
各ワードの論理和が取られることになる。The data from the OR circuit 3 is sent to the memory 4 which stores one word as a latch or a register,
The output data from the memory 4 is returned to the OR circuit 3 and logically ORed with the absolute value of the current word from the absolute value calculation circuit 2. That is, the logical sum operation output from the OR circuit 3 is delayed by one word in the memory 4 and logically summed with the input current word, whereby the logical sum of the respective words is sequentially and sequentially taken.
【0055】メモリ4は1ブロックの512ワード(サ
ンプル)のデータが入力される毎にリセット(ゼロクリ
ア)され、結果として1ブロック512ワード(サンプ
ル)の各絶対値全体についての論理和が取られることに
なる。The memory 4 is reset (zero-cleared) each time one block of 512-word (sample) data is input, and as a result, the logical sum of all absolute values of one-block, 512-word (sample) is taken. become.
【0056】OR回路3からの論理和出力データは、シ
フト量検出回路5に送られる。このシフト量検出回路で
は、最上位から下位に向かって各ビットを見るときに初
めて”1”が現れるまでの桁数、或いは論理和出力デー
タを左シフトして最上位ビット(MSB)に初めて”
1”が現れる直前までのシフト量を検出する。すなわち
1ブロック中の各ワードの絶対値の論理和出力の各桁の
値としては、いずれかのワードに”1”がある桁は”
1”となり、いずれのワードも”0”である桁のみが”
0”となるので、論理和出力の有効桁数(最上位から
の”0”を無視した桁数)がブロック内最大絶対値の有
効桁数と等しくなることである。したがって上記シフト
量はブロック内最大絶対値に基づくシフト量と等しいも
のとなる。上記のように検出したシフト量からオーバー
フロウを防ぐために桁数の余裕としてnを減算した値を
このブロックの可能な最大シフト量として出力する。The OR output data from the OR circuit 3 is sent to the shift amount detection circuit 5. In this shift amount detection circuit, the number of digits until "1" appears for the first time when each bit is viewed from the most significant bit or the OR output data is left-shifted to the most significant bit (MSB) for the first time.
The shift amount until just before 1 "appears is detected. That is, as the value of each digit of the logical sum output of the absolute value of each word in one block, the digit with" 1 "in any word is"
1 ", and only the digits that are" 0 "in any word are"
This means that the number of significant digits of the logical sum output (the number of digits ignoring "0" from the most significant digit) becomes equal to the number of significant digits of the maximum absolute value in the block. It is equal to the shift amount based on the maximum absolute value of the above, and the value obtained by subtracting n as a margin of the number of digits to prevent overflow from the shift amount detected as described above is output as the maximum shift amount possible for this block. .
【0057】シフト量決定回路7には、入力端子6から
フィルタワークエリアデータのシフト量が供給されてい
る。当該シフト量決定回路7では、このワークエリアデ
ータのシフト量とシフト量検出回路5の出力の最大シフ
ト量とを比較して大きくないほうを選択し、シフト回路
9及びワークエリアデータ・シフト回路11に出力す
る。The shift amount determining circuit 7 is supplied with the shift amount of the filter work area data from the input terminal 6. The shift amount determining circuit 7 compares the shift amount of the work area data with the maximum shift amount of the output of the shift amount detecting circuit 5 and selects the one that is not larger, and shift circuit 9 and work area data shift circuit 11 are selected. Output to.
【0058】また、遅延回路8を経てシフト回路9に送
られた各データは、シフト量決定回路7からのシフト量
の情報によってシフト或いはフローティング処理され出
力端子10に送られる。また、シフト量決定回路7から
送られたシフト量が入力端子6から供給されたワークエ
リアのシフト量に等しい場合には何も行わない。逆に異
なる場合には入力端子6から供給されたシフト量からシ
フト量決定回路7から送られたシフト量を減算し、その
差のビット数だけワークエリアのデータを右シフトす
る。Further, each data sent to the shift circuit 9 through the delay circuit 8 is shifted or floating-processed according to the shift amount information from the shift amount determining circuit 7 and sent to the output terminal 10. If the shift amount sent from the shift amount determining circuit 7 is equal to the shift amount of the work area supplied from the input terminal 6, nothing is done. On the contrary, if different, the shift amount sent from the shift amount determining circuit 7 is subtracted from the shift amount supplied from the input terminal 6, and the data in the work area is right-shifted by the number of bits of the difference.
【0059】次に、図4のフローチャートは、図1にお
けるワークエリアフローティング部をソフトウェア的に
実現する際の手順を示したものである。Next, the flow chart of FIG. 4 shows a procedure for realizing the work area floating unit in FIG. 1 by software.
【0060】この図4において、ステップS41からス
テップS46まではフィルタワークエリアの各データに
ついて、図2におけるステップS11からステップS1
6までとまったく同様の処理を行って、最短シフト量m
xを求める。In FIG. 4, from step S41 to step S46, for each data in the filter work area, step S11 to step S1 in FIG.
By performing the same processing as up to 6, the shortest shift amount m
Find x.
【0061】次にステップS47において、このワーク
エリアにおける最大可能シフト量Mx=mx−nを求め
る。ここで、nは図2のときと同様に、オーバーフロウ
を防ぐためにとる余裕のビット数である。Next, in step S47, the maximum possible shift amount Mx = mx-n in this work area is obtained. Here, as in the case of FIG. 2, n is the number of spare bits taken to prevent overflow.
【0062】そして、次のステップS48ではこのMx
の値が0であるか否かを判定し、0である場合にはフロ
ーティングの処理を行わず、ステップS51に進む。M
x=0でない場合にはステップS49に進む。Then, in the next step S48, this Mx
It is determined whether the value of is 0, and if it is 0, the floating process is not performed, and the process proceeds to step S51. M
If x is not 0, the process proceeds to step S49.
【0063】ステップS49では、既に入力時の時系列
サンプルに比べて、Mビット左シフトされているワーク
エリアのデータをもうMxビットだけ左シフトする。次
のステップS50では、ワークエリアの全てのデータに
ついて終了したか否かを判定し、終了していなければス
テップS49に戻り、終了していればステップS51に
進む。In step S49, the data in the work area, which has been left-shifted by M bits, is left-shifted by Mx bits, as compared with the time-series sample at the time of input. In the next step S50, it is determined whether or not all the data in the work area has been completed. If not completed, the process returns to step S49, and if completed, the process proceeds to step S51.
【0064】最後にステップS51では、もとの時系列
サンプルからのシフト量(M+Mx)を求めこれを出力
して処理は終了する。Finally, in step S51, the shift amount (M + Mx) from the original time-series sample is calculated and output, and the process ends.
【0065】次に、図5を用いて本実施例の符号化装置
に対応する復号化装置について述べる。Next, a decoding device corresponding to the coding device of this embodiment will be described with reference to FIG.
【0066】この図5において、入力端子500には、
図1の出力端子121から得られる周波数軸上の符号化
データが供給されており、この符号化データはまず適応
ビット割り当ての復号化回路501に送られて復号処理
され、それぞれ低域、中域、高域に対応して設けられて
いるスペクトルバッファ502、503、504に送ら
れる。各バッファ502、503、504のデータは、
それぞれ前記MDCTの逆変換処理(逆直交変換処理)
を行う各逆直交変換回路(IMDCT回路)505、5
06、507に送られ、これら逆直交変換回路505、
506、507おいて入力端子525から供給される直
交変換ブロックサイズデータにしたがって直交変換が解
除される。In FIG. 5, the input terminal 500 is
Encoded data on the frequency axis obtained from the output terminal 121 of FIG. 1 is supplied, and this encoded data is first sent to a decoding circuit 501 for adaptive bit allocation and subjected to decoding processing, and low band and middle band respectively. , And are sent to spectrum buffers 502, 503, and 504 provided corresponding to high frequencies. The data of each buffer 502, 503, 504 is
Inverse transform processing (inverse orthogonal transform processing) of the MDCT, respectively.
Each inverse orthogonal transform circuit (IMDCT circuit) 505, 5
06, 507, and these inverse orthogonal transform circuits 505,
At 506 and 507, the orthogonal transform is canceled according to the orthogonal transform block size data supplied from the input terminal 525.
【0067】次の最短シフト量算出回路508において
は、逆直交変換回路505からの低域のサンプルの絶対
値がとられ、その最大値或いは最大値の近似値が算出さ
れる。ここで、最大値そのものを求める代わりにその最
大値の近似値として、この低域のサンプルの絶対値の論
理和をとることとしてもよい。また、最短シフト量算出
回路508では、上記のようにして求められた最大値或
いはその近似値を用いて、この最大値が復号化装置の符
号を除いた演算後長になるまで左シフトできる回数pL
を算出し、最短シフト量NLを(pL−q)とする。最
短シフト量NLが負の値をとる場合にはこれを強制的に
0として、シフト量決定回路512に送る。なお、上記
qは、フィルタ演算途中でのオーバーフロウを防ぐため
に上記復号化装置の演算語長及びフィルタ係数を鑑みて
設定した定数で0および正の値でどのように設定しても
よい。In the next shortest shift amount calculation circuit 508, the absolute value of the low-frequency sample from the inverse orthogonal transform circuit 505 is taken, and the maximum value or an approximate value of the maximum value is calculated. Here, instead of obtaining the maximum value itself, the absolute value of this low-frequency sample may be ORed as an approximate value of the maximum value. Further, the shortest shift amount calculation circuit 508 uses the maximum value obtained as described above or its approximate value, and the number of times the maximum value can be shifted to the left until it becomes the post-computation length excluding the code of the decoding device. pL
And the shortest shift amount NL is set to (pL-q). When the shortest shift amount NL has a negative value, it is forcibly set to 0 and sent to the shift amount determination circuit 512. Note that q is a constant set in consideration of the operation word length of the decoding device and the filter coefficient in order to prevent overflow during the filter operation, and may be set to 0 or a positive value.
【0068】最短シフト量算出回路509、510にお
いても、中域、高域のサンプルに対して上記最短シフト
量算出回路508と同様の処理を行い、最短シフト量算
出回路509では中域の最短シフト量NMを求め、最短
シフト量算出回路510では高域の最短シフト量NHを
求める。これら各最短シフト量算出回路509、510
からの各最短シフト量もシフト量決定回路512に送ら
れる。Also in the shortest shift amount calculation circuits 509 and 510, the same processing as that of the shortest shift amount calculation circuit 508 is performed on the samples in the middle and high ranges, and the shortest shift amount calculation circuit 509 performs the shortest shift in the middle range. The amount NM is obtained, and the shortest shift amount calculation circuit 510 obtains the shortest shift amount NH in the high frequency range. These shortest shift amount calculation circuits 509 and 510
Each shortest shift amount from 1 to 3 is also sent to the shift amount determining circuit 512.
【0069】シフト量決定回路512においては、上記
ブロックのシフト量Nとして上記最短シフト量算出回路
508、509、510から送られた各最短シフト量N
L、NM、NH、及び入力端子511から供給されたフ
ィルタワークエリアのシフト量Nwのうち最も小さいも
のを選択して、各帯域毎に設けられているフローティン
グ回路513、514、515に送ると共に、フィルタ
ワークエリアデータ・シフト量調節回路516及びフィ
ルタワークエリアデータ・フローティング回路521に
送る。In the shift amount determining circuit 512, the shortest shift amount N sent from the shortest shift amount calculating circuits 508, 509, 510 is set as the shift amount N of the block.
L, NM, NH, and the smallest shift amount Nw of the filter work area supplied from the input terminal 511 are selected and sent to the floating circuits 513, 514, 515 provided for each band, The data is sent to the filter work area data / shift amount adjusting circuit 516 and the filter work area data / floating circuit 521.
【0070】次に、フローティング回路513、51
4、515では各帯域のデータが上記シフト量決定回路
512で決定されたシフト量Nだけ左シフトされるフロ
ーティング処理が行われる。ここでは、処理を簡略化す
るために、乗数として2のべき乗を選び左シフトでこの
演算を行うこととしているが、実際には乗数として2の
べき乗のみでなくどのような値をとってもよい。Next, the floating circuits 513 and 51
In 4 and 515, a floating process is performed in which the data of each band is left-shifted by the shift amount N determined by the shift amount determining circuit 512. Here, in order to simplify the processing, a power of 2 is selected as the multiplier and this operation is performed by left shift, but in practice, not only the power of 2 but any value may be taken.
【0071】また、上記ブロックの時間的に1つ前のブ
ロックに対するワークエリアフローティング部におい
て、上記ワークエリアのデータは既に上記ワークエリア
内のデータの絶対値の最大値の有効語長が復号化装置の
演算語長よりqだけ小さくなるまで左シフトされている
ので、フィルタワークエリアデータ・フローティング回
路516においては、シフト量決定回路512で決定さ
れたシフト量NがNwと等しい場合には処理を行わな
い。しかし、シフト量決定回路512により決定された
シフト量NがNwより小さい場合には、その差分(Nw
−N)ビットだけワークエリア内の全データを右シフト
させる処理を行うことにより、上記ブロックのデータと
の入力信号からのシフト量を等しくする。Further, in the work area floating unit for the block immediately preceding the block in time, the data in the work area is already the effective word length of the maximum absolute value of the data in the work area. Since it is left-shifted by q smaller than the operation word length of, the filter work area data floating circuit 516 performs processing when the shift amount N determined by the shift amount determining circuit 512 is equal to Nw. Absent. However, when the shift amount N determined by the shift amount determining circuit 512 is smaller than Nw, the difference (Nw
By performing a process of right-shifting all the data in the work area by -N) bits, the shift amount from the input signal is made equal to the data of the block.
【0072】上記のようにしてフローティング処理を施
されたデータは、前記帯域分割フィルタ106、107
の逆処理を行うIQMF等のフィルタからなる帯域合成
フィルタ517及び518によって合成されて、フロー
ティング解除回路519に送られる。このフローティン
グ解除回路519では、シフト量決定回路512で決定
されたシフト量分すなわちNビットだけ右シフトするこ
とにより、入力時のレベルに戻され再生信号として端子
523に出力される。また、上述したように、フローテ
ィングの際に乗数を2のべき乗以外の値に取った場合に
は、上記ブロックフローティングの解除は当然右シフト
ではなく全てのサンプルを上記乗数で除することによっ
て行われる。The data which has been subjected to the floating process as described above is the band division filters 106 and 107.
The signals are combined by the band combining filters 517 and 518 composed of filters such as IQMF that perform the inverse processing of the above, and sent to the floating canceling circuit 519. The floating canceling circuit 519 shifts the shift amount determined by the shift amount determining circuit 512, that is, N bits to the right, to be returned to the level at the time of input and output to the terminal 523 as a reproduction signal. Further, as described above, when the multiplier is set to a value other than the power of 2 in the floating, the block floating is not released by the right shift but by dividing all the samples by the multiplier. .
【0073】次に、ワークエリアデータフローティング
部の最短シフト量算出回路520においては、上記ブロ
ックにおける帯域合成フィルタ517、518における
フィルタ演算後に、フィルタワークエリアにある全ての
データについて、さらに上記最短シフト量算出回路50
8、509、510で行うものと同様に最大値或いはそ
の近似値を検出し、上記最大値が上記復号化装置の符号
部分を除いた演算語長になるまで左シフト可能な回数m
yを算出する。Next, in the shortest shift amount calculation circuit 520 of the work area data floating unit, the shortest shift amount is further calculated for all the data in the filter work area after the filter calculation in the band synthesis filters 517 and 518 in the above block. Calculation circuit 50
8, 509, and 510, the maximum value or its approximate value is detected, and the maximum number of times m that can be left-shifted until the maximum value becomes the operation word length excluding the code part of the decoding device.
Calculate y.
【0074】そして、最短シフト量算出回路520で
は、上記最短シフト量算出回路508、509、510
と同様にqビットの余裕を見た最短シフト量Ny=(m
y−q)を算出する。次のフィルタワークエリアデータ
・フローティング回路521においては、このシフト量
Nyを用いて、フローティング回路513、514、5
15で行うものと同様に各データをNyビットだけ左シ
フトしてフローティング処理を行い、ワークエリアシフ
ト量算出回路522に送る。Then, in the shortest shift amount calculation circuit 520, the above-mentioned shortest shift amount calculation circuits 508, 509, 510.
The shortest shift amount Ny = (m
Calculate y−q). In the next filter work area data / floating circuit 521, by using this shift amount Ny, the floating circuits 513, 514, 5
As in the case of 15, the data is left-shifted by Ny bits to be subjected to floating processing and sent to the work area shift amount calculation circuit 522.
【0075】このワークエリアシフト量算出回路522
においては、上記フィルタワークエリアデータ・フロー
ティング回路512で決定されたシフト量Nと最短シフ
ト量算出回路520で求めた最短シフト量Nyを加え合
わせることによって、時間的に1つ後のブロックで使用
するためにフィルタワークエリアのデータの入力信号か
らのシフト量Ny’を求め、これを端子524に出力す
ることによって処理は終了する。This work area shift amount calculation circuit 522
In (1), the shift amount N determined by the filter work area data floating circuit 512 and the shortest shift amount Ny determined by the shortest shift amount calculation circuit 520 are added together to be used in a block one block later in time. Therefore, the shift amount Ny ′ from the input signal of the data of the filter work area is obtained, and the shift amount Ny ′ is output to the terminal 524, whereby the processing ends.
【0076】なお、本実施例では上記帯域合成フィルタ
としていわゆるQMFフィルタを従属的にカスケード上
に接続して用いているが、上記フィルタワークエリアデ
ータ・シフト量調節回路516及びフィルタワークエリ
アデータ・フローティング回路521におけるシフト操
作は、このようにフィルタが複数個ある場合にも全ての
フィルタワークエリアのデータに対して行われる。Although a so-called QMF filter is subordinately connected in cascade as the band synthesizing filter in this embodiment, the filter work area data shift amount adjusting circuit 516 and the filter work area data floating circuit are used. The shift operation in the circuit 521 is performed on the data in all the filter work areas even when there are a plurality of filters in this way.
【0077】また、本発明は上記実施例のみに限定され
るものではなく、例えばオーディオPCM信号のみなら
ずディジタル音声(スピーチ)信号等の信号処理装置に
も適用可能である。Further, the present invention is not limited to the above-mentioned embodiment, but can be applied to a signal processing device for not only audio PCM signals but also digital voice (speech) signals.
【0078】[0078]
【発明の効果】本発明のディジタル信号処理方法及び装
置においては、所定の演算としてのフィルタ演算の際
に、入力信号を例えば一定数のサンプル毎にブロック化
して、このブロック内で最も絶対値の大きいサンプルで
ある最大値を検出し、このサンプルの大きさによってブ
ロック内のサンプルに所定の係数を乗算してゲインをコ
ントロールするいわゆるブロックフローティングと呼ば
れる手法を適用することによって、固定小数点演算等の
比較的処理が少ない符号化処理や復号化処理においても
小入力時の演算誤差を低減してダイナミックレンジを改
善することが可能となる。According to the digital signal processing method and apparatus of the present invention, the input signal is divided into blocks, for example, every fixed number of samples in the filter calculation as the predetermined calculation, and the absolute value in this block is the maximum. Comparison of fixed-point arithmetic, etc. by detecting the maximum value that is a large sample and applying a method called block floating, which controls the gain by multiplying the sample in the block by a predetermined coefficient according to the size of this sample It is possible to reduce the calculation error at the time of a small input and improve the dynamic range even in the encoding process and the decoding process with less dynamic processing.
【0079】また、本発明のディジタル信号処理方法及
び装置によれば、ブロックフローティングの際、各サン
プルに共通の係数を乗算するために、より簡単な方法と
して、ビットシフトを利用する例えば6dB単位のフロ
ーティングを用いることにより、さらに符号化処理や復
号化処理を簡略化すると共に、装置の場合にはハードウ
ェア規模の縮小と処理の高速化を図ることが可能とな
る。Further, according to the digital signal processing method and device of the present invention, in the block floating, as a simpler method for multiplying each sample by a common coefficient, bit shift is used in units of 6 dB, for example. By using the floating, it is possible to further simplify the encoding process and the decoding process, and in the case of a device, reduce the hardware scale and speed up the process.
【0080】そして、各ブロック内のサンプルの最大値
を検出するかわりに、各ブロック内のサンプルの論理和
を取ってこの最大値の近似値として使用することによ
り、さらに符号化処理や復号化処理を簡略化すると共
に、装置の場合にはハードウェア規模を縮小することが
できる。Then, instead of detecting the maximum value of the samples in each block, the logical sum of the samples in each block is taken and used as an approximate value of this maximum value, thereby further performing the encoding process and the decoding process. And the hardware scale can be reduced in the case of a device.
【0081】すなわち、本発明のディジタル信号処理方
法及び装置によれば、フィルタ演算等の非ブロッキング
演算を行う際に入力信号を一定のサンプル毎にブロック
化して、各ブロック毎に演算前に最も適切な係数を各サ
ンプルに乗じて演算を行い、その演算後に上記乗数で各
サンプルを除することによって、オーバーフロウを防ぎ
つつ小入力時のダイナミックレンジを改善することがで
きる。That is, according to the digital signal processing method and apparatus of the present invention, when performing a non-blocking operation such as a filter operation, the input signal is divided into blocks for every fixed sample, and each block is most suitable before the operation. It is possible to improve the dynamic range at the time of small input while preventing overflow by multiplying each sample by such a coefficient to perform the calculation and then dividing each sample by the multiplier after the calculation.
【図1】本発明のディジタル信号処理方法の符号化処理
を行う一実施例となる高能率符号化装置を示すブロック
回路図である。FIG. 1 is a block circuit diagram showing a high-efficiency encoding apparatus as an embodiment for performing encoding processing of a digital signal processing method of the present invention.
【図2】本発明実施例のブロックフローティング処理の
動作を説明するためのフローチャートである。FIG. 2 is a flow chart for explaining the operation of the block floating process of the embodiment of the present invention.
【図3】本発明実施例のブロックフローティング処理の
動作を実現するブロック回路図である。FIG. 3 is a block circuit diagram for realizing the operation of the block floating process according to the embodiment of the present invention.
【図4】本発明実施例のフィルタワークエリアフローテ
ィング処理の動作を説明するためのフローチャートであ
る。FIG. 4 is a flowchart for explaining the operation of a filter work area floating process according to the embodiment of the present invention.
【図5】本発明のディジタル信号処理方法の復号化処理
を行う一実施例となる高能率符号復号化装置を示すブロ
ック回路図である。FIG. 5 is a block circuit diagram showing a high-efficiency code decoding device as an embodiment for performing a decoding process of the digital signal processing method of the present invention.
102,118,508,509,510,520 最
短シフト量算出回路 103,512 シフト量決定回路 104 サンプルデータ・フローティング回路 105,516 フィルタワークエリアデータ・シフト
量調節回路 106,107 帯域分割フィルタ 108 低域サンプルバッファ 109 中域サンプルバッファ 110 高域サンプルバッファ 111 直交変換ブロックサイズ決定回路 112,113,114,519 フローティング解除
回路 115,116,117 直交変換回路(MDCT回
路) 119,521 フィルタワークエリアデータ・フロー
ティング回路 124,522 ワークエリアシフト量算出回路 120 適応ビット割当符号化回路 501 適応ビット割当復号化回路 502 低域スペクトルバッファ 503 中域スペクトルバッファ 504 高域スペクトルバッファ 505,506,507 逆直交変換回路(IMDCT
回路) 513,514,515 フローティング回路 517,518 帯域合成フィルタ102, 118, 508, 509, 510, 520 Shortest shift amount calculation circuit 103, 512 Shift amount determination circuit 104 Sample data floating circuit 105, 516 Filter work area Data shift amount adjustment circuit 106, 107 Band division filter 108 Low band Sample buffer 109 Middle range sample buffer 110 High range sample buffer 111 Orthogonal transform block size determination circuit 112, 113, 114, 519 Floating cancellation circuit 115, 116, 117 Orthogonal transform circuit (MDCT circuit) 119, 521 Filter work area data floating Circuits 124 and 522 Work area shift amount calculation circuit 120 Adaptive bit allocation encoding circuit 501 Adaptive bit allocation decoding circuit 502 Low band spectrum buffer 503 Mid band spectrum Torr buffer 504 high band spectrum buffer 505, 506, 507 inverse orthogonal transform circuit (IMDCT
Circuit) 513, 514, 515 Floating circuit 517, 518 Band synthesis filter
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 5/60 Z 7/24 ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Internal reference number FI technical display location H04N 5/60 Z 7/24
Claims (43)
グ周波数分析を行って当該分析出力を量子化する符号化
処理を施した後、記録或いは伝送を行うディジタル信号
処理方法において、 上記入力信号を複数サンプル毎にブロック化し、 各ブロックにおいて入力信号のサンプルの絶対値の最大
値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの入力信号の全てのサンプルに対して
所定の係数を乗算した後、所定の演算を行い、上記所定
の演算以降に各サンプルを上記所定の係数で除算するこ
とを特徴とするディジタル信号処理方法。1. A digital signal processing method for recording or transmitting an input signal, which is subjected to a predetermined non-blocking frequency analysis and an encoding process for quantizing the analysis output, and then recorded or transmitted. When the maximum level of the absolute value of the sample of the input signal in each block is smaller than a predetermined threshold in each block, all samples of the input signal of the block are multiplied by a predetermined coefficient. After that, a predetermined calculation is performed, and after the predetermined calculation, each sample is divided by the predetermined coefficient.
グ周波数分析を行い、当該非ブロッキング周波数分析の
分析出力をブロック化して所定のブロッキング周波数分
析を行い、当該ブロッキング周波数分析の分析出力を量
子化する符号化処理を施した後、記録或いは伝送を行う
ディジタル信号処理方法において、 各ブロックにおいて入力信号のサンプルの絶対値の最大
値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの入力信号の全てのサンプルに対して
所定の係数を乗算した後、所定の演算を行い、上記所定
の演算以降に各サンプルを上記所定の係数で除算するこ
とを特徴とするディジタル信号処理方法。2. A predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is blocked to perform a predetermined blocking frequency analysis, and the analysis output of the blocking frequency analysis is quantized. In the digital signal processing method of recording or transmitting after performing the encoding process, when the maximum absolute value of the sample of the input signal in each block is smaller than the predetermined threshold, the input signal of the block is input. A digital signal processing method, characterized in that all the samples are multiplied by a predetermined coefficient, a predetermined operation is performed, and each sample is divided by the predetermined coefficient after the predetermined operation.
ある上記ブロックの入力信号のサンプルの絶対値の論理
和を用いることを特徴とする請求項1又は2記載のディ
ジタル信号処理方法。3. The digital signal processing method according to claim 1, wherein a logical sum of absolute values of samples of input signals of the block, which is an approximation of the maximum value, is used as the maximum value.
周波数分析を行って符号化を施すディジタル信号処理方
法において、 上記入力信号を複数サンプル毎にブロック化し、 各ブロックにおいて入力信号のサンプルの絶対値が所定
のスレシホールドより小さいときには、上記ブロックの
入力信号の全てのサンプルに対して所定の係数を乗じた
後、所定の演算を行って、上記所定の演算の後に各サン
プルを上記係数で除することを特徴とするディジタル信
号処理方法。4. A digital signal processing method for performing coding by performing predetermined non-blocking frequency analysis on an input signal, wherein the input signal is divided into blocks, and the absolute value of the sample of the input signal in each block. Is smaller than a predetermined threshold, all samples of the input signal of the block are multiplied by a predetermined coefficient, then a predetermined calculation is performed, and each sample is divided by the coefficient after the predetermined calculation. A digital signal processing method comprising:
プルの絶対値の最大値のレベルが所定のスレシホールド
より小さいときに、上記ブロックの入力信号の全てのサ
ンプルに対して所定の係数を乗じ、 上記最大値として、上記最大値の近似である上記ブロッ
クの入力信号のサンプルの絶対値の論理和を用いること
を特徴とする請求項4記載のディジタル信号処理方法。5. In each of the blocks, when the level of the maximum absolute value of the samples of the input signal is smaller than a predetermined threshold, all samples of the input signal of the block are multiplied by a predetermined coefficient, 5. The digital signal processing method according to claim 4, wherein, as the maximum value, a logical sum of absolute values of samples of input signals of the block, which is an approximation of the maximum value, is used.
おける絶対値の最大値を用いることを特徴とする請求項
1から請求項5のうちのいずれか1項に記載のディジタ
ル信号処理方法。6. The digital signal processing method according to claim 1, wherein a maximum absolute value in a predetermined word length is used as the threshold.
符号化処理の演算語長及び上記所定の演算の係数から設
定することを特徴とする請求項1から請求項5のうちの
いずれか1項に記載のディジタル信号処理方法。7. The threshold and the coefficient are set from an operation word length of the encoding process and a coefficient of the predetermined operation, according to any one of claims 1 to 5. The digital signal processing method described in.
することを特徴とする請求項1から請求項5のうちのい
ずれか1項に記載のディジタル信号処理方法。8. The digital signal processing method according to claim 1, wherein the predetermined coefficient is variable for each block.
ドを上記最大値で除した数を用いることを特徴とする請
求項8記載のディジタル信号処理方法。9. The digital signal processing method according to claim 8, wherein a number obtained by dividing the threshold by the maximum value is used as the predetermined coefficient.
い、上記乗算としてビットシフトを用いることを特徴と
する請求項8記載のディジタル信号処理方法。10. The digital signal processing method according to claim 8, wherein a power of 2 is used as the predetermined coefficient, and a bit shift is used as the multiplication.
大値の語長が上記符号化処理の符号ビットを除いた演算
語長より定数nだけ短くなるように行うことを特徴とす
る請求項10記載のディジタル信号処理方法。11. The bit shift is performed such that the word length of the maximum value after the shift is shorter than the operation word length excluding the sign bit of the encoding process by a constant n. Digital signal processing method.
る請求項11記載のディジタル信号処理方法。12. The digital signal processing method according to claim 11, wherein the constant n is 1.
とを特徴とする請求項1から請求項5のうちのいずれか
1項に記載のディジタル信号処理方法。13. The digital signal processing method according to claim 1, wherein the predetermined arithmetic operation is performed in fixed point.
ィルタ演算を行い、当該ディジタルのフィルタ演算には
クァドラチュア ミラー フィルタを用いることを特徴
とする請求項1から請求項5のうちのいずれか1項に記
載のディジタル信号処理方法。14. The digital filter calculation is performed as the predetermined calculation, and a quadrature mirror filter is used for the digital filter calculation, according to any one of claims 1 to 5. Digital signal processing method.
の帯域を二分割するフィルタを従属的に接続して行うこ
とを特徴とする請求項14記載のディジタル信号処理方
法。15. The digital signal processing method according to claim 14, wherein the filter operation is performed by subordinately connecting filters for dividing the band of the supplied signal into two.
で帯域を二分割した低い帯域側の出力を、第2のフィル
タでさらに二分割することにより行うことを特徴とする
請求項15記載のディジタル信号処理方法。16. The digital signal processing method according to claim 15, wherein the filter calculation is performed by further dividing the output on the low band side obtained by dividing the band by the first filter into two parts by the second filter. Signal processing method.
された後の各帯域毎に行うことを特徴とする請求項1か
ら請求項5のうちのいずれか1項に記載のディジタル信
号処理方法。17. The digital signal processing method according to claim 1, wherein the orthogonal transform process is performed for each band after the predetermined calculation is performed. .
可変であることを特徴とする請求項17記載のディジタ
ル信号処理方法。18. The digital signal processing method according to claim 17, wherein the block size of the orthogonal transform processing is variable.
イン変換処理を用いることを特徴とする請求項18記載
のディジタル信号処理方法。19. The digital signal processing method according to claim 18, wherein a transform discrete cosine transform process is used as the orthogonal transform process.
ルの語長と比較して略同じであることを特徴とする請求
項1から請求項5のうちのいずれか1項に記載のディジ
タル信号処理方法。20. A digital signal according to claim 1, wherein the operation word length of the encoding process is substantially the same as the word length of the input / output sample. Signal processing method.
ング周波数分析を行って当該分析出力を量子化する符号
化処理を施した後に記録或いは伝送された信号を、復号
化する復号化処理を行うディジタル信号処理方法におい
て、 記録或いは伝送された信号を複数サンプル毎にブロック
化し、 各ブロックにおいて信号のサンプルの絶対値の最大値の
レベルが所定のスレシホールドより小さいときには、上
記ブロックの信号の全てのサンプルに対して所定の係数
を乗算した後、所定の演算を行い、上記所定の演算以降
に各サンプルを上記所定の係数で除算することを特徴と
するディジタル信号処理方法。21. A decoding process of decoding a recorded or transmitted signal after performing a predetermined non-blocking frequency analysis on an input signal and performing a coding process of quantizing the analysis output. In the digital signal processing method, the recorded or transmitted signal is divided into blocks for every plural samples, and when the level of the maximum absolute value of the sample of the signal in each block is smaller than a predetermined threshold, all the signals in the block are Is multiplied by a predetermined coefficient, a predetermined calculation is performed, and each sample is divided by the predetermined coefficient after the predetermined calculation.
ング周波数分析を行い、当該非ブロッキング周波数分析
の分析出力をブロック化して所定のブロッキング周波数
分析を行い、当該ブロッキング周波数分析の分析出力を
量子化する符号化処理を施した後に記録或いは伝送され
た信号を、復号化する復号化処理を行うディジタル信号
処理方法において、 上記所定のブロッキング周波数分析に対応する逆ブロッ
キング周波数分析を行い、 各ブロックにおいて上記逆ブロッキング周波数分析の出
力のサンプルの絶対値の最大値のレベルが所定のスレシ
ホールドより小さいときには、上記ブロックの逆ブロッ
キング周波数分析の出力である全てのサンプルに対して
所定の係数を乗算した後、所定の演算を行い、上記所定
の演算以降に各サンプルを上記所定の係数で除算するこ
とを特徴とするディジタル信号処理方法。22. A predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is blocked to perform a predetermined blocking frequency analysis, and the analysis output of the blocking frequency analysis is quantized. In a digital signal processing method for performing a decoding process for decoding a signal recorded or transmitted after performing an encoding process, an inverse blocking frequency analysis corresponding to the above predetermined blocking frequency analysis is performed, and When the level of the maximum absolute value of the samples of the output of the inverse blocking frequency analysis is smaller than the predetermined threshold, after multiplying all the samples of the output of the inverse blocking frequency analysis of the block by the predetermined coefficient. , Perform a predetermined calculation, and perform each sample after the above predetermined calculation Digital signal processing method characterized by dividing the serial predetermined coefficient.
である上記ブロックの逆ブロッキング周波数分析出力の
絶対値の論理和を用いることを特徴とする請求項21又
は22記載のディジタル信号処理方法。23. The digital signal processing method according to claim 21, wherein as the maximum value, a logical sum of absolute values of inverse blocking frequency analysis outputs of the blocks, which is an approximation of the maximum value, is used.
における絶対値の最大値を用いることを特徴とする請求
項21、22、又は23記載のディジタル信号処理方
法。24. The digital signal processing method according to claim 21, 22, or 23, wherein a maximum absolute value in a predetermined word length is used as the threshold.
記復号化処理の演算語長及び上記所定の演算の係数から
設定することを特徴とする請求項21、22、又は23
記載のディジタル信号処理方法。25. The threshold and the coefficient are set from an operation word length of the decoding process and a coefficient of the predetermined operation.
The described digital signal processing method.
にすることを特徴とする請求項21、22、又は23記
載のディジタル信号処理方法。26. The digital signal processing method according to claim 21, 22 or 23, wherein the predetermined coefficient is made variable for each block.
ルドを上記最大値で除した数を用いることを特徴とする
請求項26記載のディジタル信号処理方法。27. The digital signal processing method according to claim 26, wherein a number obtained by dividing the threshold by the maximum value is used as the predetermined coefficient.
い、上記乗算としてビットシフトを用いることを特徴と
する請求項26記載のディジタル信号処理方法。28. The digital signal processing method according to claim 26, wherein a power of 2 is used as the predetermined coefficient, and a bit shift is used as the multiplication.
大値の語長が上記復号化処理の符号部分を除いた演算語
長より定数nだけ短くなるように行うことを特徴とする
請求項28記載のディジタル信号処理方法。29. The bit shift is performed so that the word length of the maximum value after the shift is shorter than the operation word length excluding the code part of the decoding process by a constant n. Digital signal processing method.
る請求項29記載のディジタル信号処理方法。30. The digital signal processing method according to claim 29, wherein the constant n is 1.
とを特徴とする請求高21、22、又は23記載のディ
ジタル信号処理方法。31. The digital signal processing method according to claim 21, 22, or 23, wherein the predetermined arithmetic operation is performed with a fixed point.
ィルタ演算を行い、当該ディジタルのフィルタ演算には
インバース クァドラチュア ミラー フィルタを用い
ることを特徴とする請求項21、22、又は23記載の
ディジタル信号処理方法。32. The digital signal processing method according to claim 21, 22, or 23, wherein a digital filter operation is performed as the predetermined operation, and an inverse quadrature mirror filter is used for the digital filter operation.
域を合成するフィルタを従属的に接続して行うことを特
徴とする請求項32記載のディジタル信号処理方法。33. The digital signal processing method according to claim 32, wherein the filter operation is performed by subordinately connecting filters for synthesizing the divided bands.
で低域側の二つの帯域を合成し、第2のフィルタで第1
のフィルタの出力と最高域側の帯域を構成して全帯域を
得ることを特徴とする請求項33記載のディジタル信号
処理方法。34. In the filter calculation, the first filter combines two low-frequency bands, and the second filter combines the first band.
34. The digital signal processing method according to claim 33, wherein the output of the filter and the band on the highest band side are configured to obtain the entire band.
うことを特徴とする請求項21、22、又は23記載の
ディジタル信号処理方法。35. The digital signal processing method according to claim 21, 22, or 23, wherein inverse orthogonal transform processing is performed for each of the bands.
は可変であることを特徴とする請求項35記載のディジ
タル信号処理方法。36. The digital signal processing method according to claim 35, wherein the block size of the inverse orthogonal transform process is variable.
コサイン変換処理を用いることを特徴とする請求項36
記載のディジタル信号処理方法。37. The inverse transform discrete cosine transform process is used as the inverse orthogonal transform process.
The described digital signal processing method.
ルの語長と比較して略同じであることを特徴とする請求
項21、22、又は23記載のディジタル信号処理方
法。38. The digital signal processing method according to claim 21, 22, or 23, wherein the operation word length of the decoding process is substantially the same as the word length of the input / output sample.
グ周波数分析を行って当該分析出力を量子化する符号化
処理を施した後、記録或いは伝送を行うディジタル信号
処理装置において、 上記入力信号を複数サンプル毎にブロック化して、各ブ
ロックにおいて入力信号のサンプルの絶対値の最大値の
レベルが所定のスレシホールドより小さいときには、上
記ブロックの入力信号の全てのサンプルに対して所定の
係数を乗算した後、所定の演算を行い、上記所定の演算
以降に各サンプルを上記所定の係数で除算する演算手段
を有することを特徴とするディジタル信号処理装置。39. A digital signal processing device for recording or transmitting after performing a predetermined non-blocking frequency analysis on an input signal and performing an encoding process for quantizing the analysis output, Each sample is divided into blocks, and when the level of the maximum absolute value of the sample of the input signal in each block is smaller than a predetermined threshold, all samples of the input signal of the block are multiplied by a predetermined coefficient. Thereafter, a digital signal processing device is provided, which has a calculation means for performing a predetermined calculation and dividing each sample by the predetermined coefficient after the predetermined calculation.
ング周波数分析を行い、当該非ブロッキング周波数分析
の分析出力をブロック化して所定のブロッキング周波数
分析を行い、当該ブロッキング周波数分析の分析出力を
量子化する符号化処理を施した後、記録或いは伝送を行
うディジタル信号処理装置において、 各ブロックにおいて入力信号のサンプルの絶対値の最大
値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの入力信号の全てのサンプルに対して
所定の係数を乗算した後、所定の演算を行い、上記所定
の演算以降に各サンプルを上記所定の係数で除算する演
算手段を有することを特徴とするディジタル信号処理装
置。40. A predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is blocked to perform a predetermined blocking frequency analysis, and the analysis output of the blocking frequency analysis is quantized. In a digital signal processing device that performs recording or transmission after performing encoding processing, when the level of the maximum absolute value of the sample of the input signal in each block is smaller than a predetermined threshold, the input signal of the block is input. A digital signal processing apparatus having a calculating means for multiplying all the samples by a predetermined coefficient, performing a predetermined calculation, and dividing each sample by the predetermined coefficient after the predetermined calculation. .
ング周波数分析を行い、当該分析出力を量子化する、符
号化処理を施した後、記録或いは伝送された信号を復号
化する復号化処理を行うディジタル信号処理装置におい
て、 記録或いは伝送された信号を複数サンプル毎にブロック
化し、各ブロックにおいて信号のサンプルの絶対値の最
大値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの信号の全てのサンプルに対して所定
の係数を乗算した後、所定の演算を行い、上記所定の演
算以降に各サンプルを上記所定の係数で除算する演算手
段を有することを特徴とするディジタル信号処理装置。41. A decoding process for performing a predetermined non-blocking frequency analysis on an input signal, quantizing the analysis output, performing an encoding process, and then decoding a recorded or transmitted signal. In a digital signal processing device for performing, the recorded or transmitted signal is divided into blocks for each of a plurality of samples, and when the level of the maximum absolute value of the sample of the signal in each block is smaller than a predetermined threshold, A digital signal processing apparatus comprising: a calculating unit that multiplies all samples by a predetermined coefficient, performs a predetermined calculation, and divides each sample by the predetermined coefficient after the predetermined calculation.
ング周波数分析を行い、当該非ブロッキング周波数分析
の分析出力をブロック化して所定のブロッキング周波数
分析を行い、当該ブロッキング周波数分析の分析出力を
量子化する、符号化処理を施した後、記録或いは伝送さ
れた信号を復号化する復号化処理を行うディジタル信号
処理装置において、 上記所定のブロッキング周波数分析に対応する逆ブロッ
キング周波数分析を行い、各ブロックにおいて上記逆ブ
ロッキング周波数分析の出力のサンプルの絶対値の最大
値のレベルが所定のスレシホールドより小さいときに
は、上記ブロックの逆ブロッキング周波数分析の出力で
ある全てのサンプルに対して所定の係数を乗算した後、
所定の演算を行い、上記所定の演算以降に各サンプルを
上記所定の係数で除算する演算手段を有することを特徴
とするディジタル信号処理装置。42. A predetermined non-blocking frequency analysis is performed on an input signal, the analysis output of the non-blocking frequency analysis is blocked to perform a predetermined blocking frequency analysis, and the analysis output of the blocking frequency analysis is quantized. In a digital signal processing device that performs a decoding process of decoding a recorded or transmitted signal after performing a coding process, an inverse blocking frequency analysis corresponding to the above predetermined blocking frequency analysis is performed, and in each block. When the maximum absolute value of the sample of the output of the inverse blocking frequency analysis is smaller than a predetermined threshold, all samples which are the output of the inverse blocking frequency analysis of the block are multiplied by a predetermined coefficient. rear,
A digital signal processing apparatus comprising: a calculation unit that performs a predetermined calculation and divides each sample by the predetermined coefficient after the predetermined calculation.
グ周波数分析を行うディジタル信号処理装置において、 上記入力信号を複数サンプル毎にブロック化し、各ブロ
ックにおいて入力信号のサンプルの絶対値が所定のスレ
シホールドより小さいときには、上記ブロックの入力信
号の全てのサンプルに対して所定の係数を乗じた後、所
定の演算を行って、上記所定の演算の後に各サンプルを
上記係数で除する演算手段を有することを特徴とするデ
ィジタル信号処理装置。43. A digital signal processing device for performing a predetermined non-blocking frequency analysis on an input signal, wherein the input signal is divided into blocks, and the absolute value of the sample of the input signal in each block is a predetermined threshold. When it is smaller than the hold, it has a calculating means for multiplying all the samples of the input signal of the block by a predetermined coefficient and then performing a predetermined calculation and dividing each sample by the coefficient after the predetermined calculation. A digital signal processing device characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1511894A JP3334311B2 (en) | 1994-02-09 | 1994-02-09 | Digital signal processing method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1511894A JP3334311B2 (en) | 1994-02-09 | 1994-02-09 | Digital signal processing method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07219595A true JPH07219595A (en) | 1995-08-18 |
JP3334311B2 JP3334311B2 (en) | 2002-10-15 |
Family
ID=11879917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1511894A Expired - Fee Related JP3334311B2 (en) | 1994-02-09 | 1994-02-09 | Digital signal processing method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3334311B2 (en) |
-
1994
- 1994-02-09 JP JP1511894A patent/JP3334311B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3334311B2 (en) | 2002-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3185413B2 (en) | Orthogonal transform operation and inverse orthogonal transform operation method and apparatus, digital signal encoding and / or decoding apparatus | |
KR100279096B1 (en) | Digital signal decoding device | |
JP3508146B2 (en) | Digital signal encoding / decoding device, digital signal encoding device, and digital signal decoding device | |
JP3178026B2 (en) | Digital signal encoding device and decoding device | |
JP3104400B2 (en) | Audio signal encoding apparatus and method | |
JP3278900B2 (en) | Data encoding apparatus and method | |
JPH04304029A (en) | Digital signal coder | |
JPH07326140A (en) | Method and apparatus for processing of signal as well as signal recording medium | |
JPH08223049A (en) | Signal coding method and device, signal decoding method and device, information recording medium and information transmission method | |
JPH0846518A (en) | Information coding and decoding method, information coder and decoder and information recording medium | |
JPH0590974A (en) | Method and apparatus for processing front echo | |
JP3557674B2 (en) | High efficiency coding method and apparatus | |
US6995699B2 (en) | Encoding method, and encoding apparatus, and decoding method and decoding apparatus | |
JP3277705B2 (en) | Information encoding apparatus and method, and information decoding apparatus and method | |
JP3088580B2 (en) | Block size determination method for transform coding device. | |
US5983175A (en) | Audio coding method | |
EP1351218A2 (en) | Audio signal reproducing method and an apparatus for reproducing the same | |
JP3334311B2 (en) | Digital signal processing method and apparatus | |
JPH08328592A (en) | Sound signal processing circuit | |
JP3291948B2 (en) | High-efficiency encoding method and apparatus, and transmission medium | |
JP3318824B2 (en) | Digital signal encoding method, digital signal encoding device, digital signal recording method, digital signal recording device, recording medium, digital signal transmission method, and digital signal transmission device | |
JP3227948B2 (en) | Decryption device | |
JP3227945B2 (en) | Encoding device | |
KR100225822B1 (en) | Audio signal processing method | |
JP3141853B2 (en) | Audio signal processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020702 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080802 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090802 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100802 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110802 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110802 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120802 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120802 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130802 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |