JPH03189700A - Vector quantizing system - Google Patents

Vector quantizing system

Info

Publication number
JPH03189700A
JPH03189700A JP1329228A JP32922889A JPH03189700A JP H03189700 A JPH03189700 A JP H03189700A JP 1329228 A JP1329228 A JP 1329228A JP 32922889 A JP32922889 A JP 32922889A JP H03189700 A JPH03189700 A JP H03189700A
Authority
JP
Japan
Prior art keywords
matrix
vector
code
drive signal
product
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.)
Pending
Application number
JP1329228A
Other languages
Japanese (ja)
Inventor
Yuji Okuda
裕二 奥田
Masami Akamine
政巳 赤嶺
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1329228A priority Critical patent/JPH03189700A/en
Publication of JPH03189700A publication Critical patent/JPH03189700A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PURPOSE:To reduce the calculation quantity of all filter operations related to a search, to curtail the number of arithmetic circuit, to miniaturize the circuit and to attain the reduction in cost by executing recursively the filter operation in the case of a prescribed search by utilizing a toeplitz matrix. CONSTITUTION:The system is constituted so that a specific filter operation is shown by the product of a matrix of a code vector and a square triangular matrix are constituted of the toeplitz matrix, respectively, only an initial element in each element of the product of the matrix of the code vector and the square triangular matrix is derived by a regular matrix operation, and other each element is derived recursively, respectively, based on the element derived before by one. By this constitution, a code book is searched, and in the case of searching a pitch period, as well, it is executed similarly in its fundamental constitution. In such a manner, the calculation quantity required for executing the search of the code book and the search of the pitch period can be decreased, respectively. Accordingly, the number of arithmetic circuits can be reduced remarkably.

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、音声信号や映像信号等の信号系列を情報圧縮
して伝送するために用いられるベクトル量子化に関する
ものである。
[Detailed Description of the Invention] [Object of the Invention] (Industrial Application Field) The present invention relates to vector quantization used to compress and transmit information in signal sequences such as audio signals and video signals. .

(従来の技術) ベクトル量子化は、音声信号や画像信号の符号化を効率
的に行なう手法として現在最も注目されている技術の一
つである。特に、音声信号の符号化の分野においては、
CE L P (Code ExcltedLinea
r Prediction)方式またはVX C(Ve
ctorExClted Coding )方式が、ベ
クトル量子化を適用した優れた方式として知られている
。CELP方式の詳細な点については、M、R,5ch
roeder氏とB、S、Ata1氏の“Code−E
xcited I、1near Prediction
(CELP):Illgh−Quality 5pee
ch At Very Low BitRates  
in Proc、1CASSP、1985.pp、93
7−939に述べられている。
(Prior Art) Vector quantization is one of the technologies that is currently attracting the most attention as a method for efficiently encoding audio signals and image signals. Especially in the field of audio signal encoding,
CE L P (Code Exclted Linea
r Prediction) method or VXC (Ve
ctorExClted Coding) method is known as an excellent method that applies vector quantization. For details on the CELP method, please refer to M, R, 5ch.
“Code-E” by Mr. roeder and Mr. B, S, Ata1
xcited I, 1near Prediction
(CELP):Illgh-Quality 5pee
ch At Very Low BitRates
in Proc, 1CASSP, 1985. pp, 93
7-939.

以下、図面を参照して簡単にCELP方式について説明
する。第6図はCELP方式を適用した音声符号化回路
の原理的な構成を示すブロック図である。同図において
、音声信号の信号系列は入力端子11を経てブロック切
出し部12に導かれ、このブロック切出し部12おいて
L個のサンプル値を1つのフレームとして長さしの入力
音声信号ベクトルに分割される。そしてこの音声信号ベ
クトルはLPG分析部13に導入される。このLPC分
析部13では、自己相関法等により音声信号のLPG分
析が行なわれ、これによりLPG予測パラメータ(ai
l  (i=1.・・・、P)が抽出される。このLP
C予測パラメータはLPG合成フィルタ19に供給にさ
れる。尚、Pは予測次数である。
The CELP method will be briefly explained below with reference to the drawings. FIG. 6 is a block diagram showing the basic configuration of a speech encoding circuit to which the CELP method is applied. In the figure, a signal sequence of an audio signal is led to a block extraction unit 12 via an input terminal 11, and this block extraction unit 12 divides L sample values into one frame into length input audio signal vectors. be done. This audio signal vector is then introduced into the LPG analysis section 13. This LPC analysis section 13 performs LPG analysis of the audio signal using an autocorrelation method or the like, and thereby LPG prediction parameters (ai
l (i=1. . . , P) is extracted. This LP
The C prediction parameter is supplied to the LPG synthesis filter 19. Note that P is the predicted order.

また、上記LPC分析部13からはLPG予測残差信号
ベクトルが出力され、このLPG予測残差信号ベクトル
はピッチ分析部14に入力される。
Further, the LPC analysis section 13 outputs an LPG prediction residual signal vector, and this LPG prediction residual signal vector is input to the pitch analysis section 14.

ピッチ分析部14では、上記LPC予71111残差信
号ベクトルを用いて音声の長期的予測であるピッチ分析
が行なわれ、ピッチ周期Tpと、ゲインパラメータbと
が抽出される。この抽出されたピッチ周期Tpおよびゲ
インパラメータは、ともにピッチ合成フィルタ18に供
給される。
The pitch analysis unit 14 performs pitch analysis, which is a long-term prediction of speech, using the LPC pre-71111 residual signal vector, and extracts the pitch period Tp and the gain parameter b. Both the extracted pitch period Tp and gain parameter are supplied to the pitch synthesis filter 18.

次に合成音声生成の過程について説明する。コードブッ
ク15には、次元数(ベクトルの要素数)kのn個の白
色雑音ベクトルが予め記憶されている。ここで、kは一
般にL/kが整数になるように選ばれる。上記各白色雑
音ベクトルはコードブック15から一つずつ読み出され
、乗算器16で先ずゲインパラメータ発生部17から発
生されたゲインパラメータと乗算される。そして、上記
ピッチ合成フィルタ18およびLPG合成フィルタ19
によりそれぞれフィルタ演算が行なわれて、合成音声ベ
クトルが生成される。この時のピッチ合成フィルタ18
の伝達関数P (Z)とLPG合成フィルタ19の伝達
関数A (Z)は次の通りである。
Next, the process of generating synthesized speech will be explained. The codebook 15 stores in advance n white noise vectors having k dimensions (number of vector elements). Here, k is generally chosen such that L/k is an integer. Each of the above white noise vectors is read out one by one from the codebook 15, and first multiplied by a gain parameter generated from a gain parameter generation section 17 in a multiplier 16. Then, the pitch synthesis filter 18 and the LPG synthesis filter 19
A filter operation is performed by each of these methods, and a synthesized speech vector is generated. Pitch synthesis filter 18 at this time
The transfer function P (Z) of and the transfer function A (Z) of the LPG synthesis filter 19 are as follows.

A (Z) −1,/ (1+Σa i Z 力、、、
 mP  (Z)−1/ (1+bZ−TP)    
      ・・・(2)そうして生成された合成音声
ベクトルは、比較器20で目標ベクトルである入力音声
ベクトルと比較される。そして、その比較出力は重み付
はフィルタ21を経たのち2乗誤差計算部22に導入さ
れ、ここで2乗距離歪Ejが求められる。さらにこの2
乗距離歪Ejの値は最小歪探索部23i導入され、ここ
でその最小値が検出される。
A (Z) −1, / (1+Σa i Z force,,,
mP (Z)-1/ (1+bZ-TP)
(2) The synthesized speech vector thus generated is compared with the input speech vector, which is a target vector, in the comparator 20. Then, the comparison output passes through a weighted filter 21 and is then introduced into a squared error calculation section 22, where a squared distance distortion Ej is determined. In addition, these two
The value of the multiplicative distance distortion Ej is introduced into the minimum distortion search unit 23i, where its minimum value is detected.

以上の合成音声生成過程は、n個の白色雑音ベクトル量
てについて行なわれ、これにより2乗距離歪Ejの最小
値を与える白色雑音ベクトルの番号jが選ばれる。つま
り、CELP方式は音声合成の過程における合成フィル
タの駆動信号にコードブックを用いることによってベク
トル量子化を行なっているところに特徴がある。尚、人
力音声ベクトルは長さしであるため、この過程はL/に
回繰り返されることになる。また、図中の重み付はフィ
ルタ5は誤差信号のスペクトルを整形して、人間の耳に
よって知覚されるであろう歪を低減するために用いられ
ており、その伝達関数は次式で与えられる。
The above synthetic speech generation process is performed for n white noise vector quantities, and thereby the white noise vector number j that gives the minimum value of the squared distance distortion Ej is selected. In other words, the CELP method is characterized in that vector quantization is performed by using a codebook for the drive signal of the synthesis filter in the process of speech synthesis. Note that since the human voice vector is long, this process will be repeated L/ times. Also, the weighting in the figure is used by the filter 5 to shape the spectrum of the error signal and reduce the distortion that would be perceived by the human ear, and its transfer function is given by the following equation. .

W (Z) −H(Z/γ) /HCZ)      
・・・(3)H(Z) −A (Z) XP (Z) 
       ・・・(4)尚、実際にCELP方式を
用いて人力信号を符号化し伝送する場合には、LPG予
測パラメータ、ピッチ周期、ピッチのゲインパラメータ
、コードブック番号およびコードブックゲインがそれぞ
れ符号化されて伝送される。
W (Z) −H(Z/γ) /HCZ)
...(3) H (Z) -A (Z) XP (Z)
...(4) In addition, when actually encoding and transmitting a human signal using the CELP method, the LPG prediction parameter, pitch period, pitch gain parameter, codebook number, and codebook gain are each encoded. transmitted.

一方、第7図はCELP方式を適用した音声符号化回路
の他の原理的な構成例を示すブロック図である。尚、同
図において前記第6図と同一部分には同一符号を付しで
ある。
On the other hand, FIG. 7 is a block diagram showing another example of the basic configuration of a speech encoding circuit to which the CELP method is applied. In this figure, the same parts as in FIG. 6 are designated by the same reference numerals.

i7図において、重み付はフィルタ21は、コードブッ
ク15の探索ループ内からループ外に移動させられてい
る。これは、ピッチ合成フィルタ18のP (Z)をP
 (Z/7) 、LPG合成フィルタ19のA (Z)
をA (Z/γ)とすることにより、同じ機能をもたせ
たまま計算量を少なくすることを可能とする。
In Figure i7, the weighting filter 21 has been moved from inside the search loop of the codebook 15 to outside the loop. This changes P (Z) of the pitch synthesis filter 18 to P
(Z/7), A (Z) of LPG synthesis filter 19
By setting A (Z/γ), it is possible to reduce the amount of calculation while maintaining the same function.

また、ピッチ合成フィルタ18とLPG合成フィルタ1
つのフィルタ演算における初期メモリが、コードブック
15の探索に影響を与えないようにしている。すなわち
、初期メモリを持ったピッチ合成フィルタ24とLPG
合成フィルタ25とが新たに設けられている。このLP
G合成フィルタ25からは零入力ベクトルが出力され、
減算器26に供給される。この減算器26では、重み付
はフィルタ21から出力された重み付き人力音声ベクト
ルから、上記零入力ベクトルが差し引かれる。比較器2
0では、上記減算器26から出力される初期化された重
み付は入力音声ベクトルと、LPC合成フィルタ19の
出力ベクトルとの比較が行なわれる。すなわち、上記重
み付はフィルタ21の出力ベクトルから上記LPG合成
フィルタ25を予め差し引いた重み付き人力音声ベクト
ルが目標ベクトルとなり、これによりピッチ合成フィル
タ18とLPG合成フィルタ19の初期メモリが零に設
定される。
In addition, the pitch synthesis filter 18 and the LPG synthesis filter 1
The initial memory in the two filter operations is prevented from affecting the search of the codebook 15. That is, the pitch synthesis filter 24 with initial memory and the LPG
A synthesis filter 25 is newly provided. This LP
A zero input vector is output from the G synthesis filter 25,
It is supplied to a subtracter 26. In this subtracter 26, the weighted human speech vector outputted from the filter 21 is subtracted from the zero input vector. Comparator 2
0, the initialized weighting output from the subtracter 26 is compared with the input speech vector and the output vector of the LPC synthesis filter 19. That is, the weighted human speech vector obtained by subtracting the LPG synthesis filter 25 from the output vector of the filter 21 becomes the target vector, and thereby the initial memories of the pitch synthesis filter 18 and the LPG synthesis filter 19 are set to zero. Ru.

また、同時にこの回路であれば、第6図では合成フィル
タで行なわれていたフィルタ演算を、コードベクトルと
次のkXkの下方の三角行列との積で表わすことが可能
になる。
At the same time, with this circuit, the filter operation performed by the synthesis filter in FIG. 6 can be expressed by the product of the code vector and the next kXk lower triangular matrix.

ここで、kはコードブック15のコードベクトルの次元
数(要素数)であり、h (1)  (i−1゜・・・
、k)は、H(Z/γ)の初期メモリが零の時の長さk
のインパルス応答である。
Here, k is the number of dimensions (number of elements) of the code vector of codebook 15, and h (1) (i-1°...
, k) is the length k when the initial memory of H(Z/γ) is zero
is the impulse response of

上記比較器20から出力された音声合成ベクトルは、2
乗誤差計算部22で次式の2乗距離歪Ejが求められ、
最小歪探索部23によりその最小値が求められる。
The speech synthesis vector output from the comparator 20 is 2
The squared distance distortion Ej of the following formula is calculated by the multiplicative error calculation unit 22,
The minimum distortion search unit 23 finds the minimum value.

Ej −1lXt−γjHcjll         
   ・・・(6)ここで、Xtは目標とする入力ベク
トル、Cjはj番目のコードベクトルγjはj番目のコ
ードベクトルに対する最適なゲインパラメータである。
Ej -1lXt-γjHcjll
(6) Here, Xt is the target input vector, Cj is the j-th code vector, and γj is the optimal gain parameter for the j-th code vector.

上記Ejを求めて、その最小値を与えるベクトル番号j
を求めるためのフローチャートを第8図に示す。この処
理においては、先ず、個々のjに対してHCjを求める
必要があり、k(k+1)/2xn回の乗算を必要とし
、−船釣に用いられるに−40,n−1024の場合に
は、839680回の乗算を必要とする。またフロー全
体においてはL/に−4とすると、1フレーム当り10
48736回の乗算を必要とする。
Find the above Ej and find the vector number j that gives its minimum value.
A flowchart for determining the is shown in FIG. In this process, it is first necessary to find HCj for each j, which requires k(k+1)/2xn multiplications. , requires 839680 multiplications. Also, in the entire flow, if L/ is set to -4, 10
It requires 48736 multiplications.

すると1フレームのサンプル数L=160で、人力音声
のサンプリング周波数が8kllzの時には52旧PS
程度の乗算を必要とし、20MIPSの乗算能力をもツ
D S P (Digital Signal Pro
cesscr)でも3個必要となる。
Then, when the number of samples in one frame L = 160, and the sampling frequency of human voice is 8kllz, 52 old PS
DSP (Digital Signal Pro
cesscr) also requires three.

また、CELP方式の音質の改善としてピッチ予測の閉
ループ化あるいは適応コードブックと呼ばれる方法が知
られている。この方式の詳細な点については、W、B、
Kleijln、D、J、Kraslnski、and
RIl、Ketchum、  ”Improved 5
peech Quality andEff’1cle
nt Vector Quantization in
 CELP ’ 1nProc ICASSP、198
8.pp、155−158に述べられている。
Furthermore, a method called closed-loop pitch prediction or an adaptive codebook is known as a method for improving the sound quality of the CELP method. For details of this method, see W, B,
Kleijln, D. J., Kraslnski, and
RIl, Ketchum, “Improved 5
peach Quality andEff'1cle
nt Vector Quantization in
CELP' 1nProc ICASSP, 198
8. pp. 155-158.

以下、簡単にピッチ予測の閉ループ化あるいは適応コー
ドブックと呼ばれる方法を用いたCELP方式について
説明する。前記第7図に示したCELP方式と、ピッチ
予測の閉ループ化あるいは適応コードブックと呼ばれる
方法を用いたCELP方式との違いは、ピッチ分析の方
式にある。前者では、LPG分析部13から出力された
LPG予測残差信号ベクトルによりピッチ分析が行なわ
れている。一方後者では、ピッチ分析がコードブックの
探索同様に閉ループ化されているところに特徴がある。
Hereinafter, a CELP method using a method called closed-loop pitch prediction or an adaptive codebook will be briefly described. The difference between the CELP method shown in FIG. 7 and the CELP method using a method called closed-loop pitch prediction or an adaptive codebook lies in the method of pitch analysis. In the former, pitch analysis is performed using the LPG prediction residual signal vector output from the LPG analysis section 13. On the other hand, the latter is characterized in that the pitch analysis is a closed loop similar to the codebook search.

ピッチ予測の閉ループ化あるいは適応コードブックと呼
ばれる方法を用いたCELP方式においては、LPG合
成フィルタの駆動信号を、ピッチの探索範囲a−bに渡
って可変される遅延器で遅延することによりピッチ周期
jに対する駆動信号ベクトルを作る。そして、この駆動
信号ベクトルに所定のゲインパラメータを乗算したのち
、LPG合成フィルタでフィルタ演算し、その演算出力
を目標ベクトルである前のフレームの影響を除いた重み
付き人力ベクトルと比較する。そして、その比較結果を
基に次式の2乗距離歪を求め、この2乗距離歪が最小と
なるときの上記駆動信号ベクトルを探す。
In the CELP method, which uses a method called closed-loop pitch prediction or adaptive codebook, the pitch period is determined by delaying the driving signal of the LPG synthesis filter with a delay device that is variable over the pitch search range a-b. Create a drive signal vector for j. After this drive signal vector is multiplied by a predetermined gain parameter, filter calculation is performed using an LPG synthesis filter, and the calculation output is compared with a weighted human vector, which is a target vector, from which the influence of the previous frame has been removed. Then, based on the comparison results, the square distance distortion is determined by the following equation, and the drive signal vector at which this square distance distortion is minimized is searched.

Ej−llXt−γjHBjll         ・
・・(7)ただし、jはa≦j≦bであり、Xtは目標
ベクトル、Bjはピッチ周期jの時の駆動信号ベクトル
、γjはピッチ周期jに対する最適な利得因数、Hは前
記第(5)式で与えられるkXkの下方三角行列、h 
(1)  (i −1、・・・、k)はA (Z/γ)
の初期メモリが零の時の長さkのインパルス応答である
Ej-llXt-γjHBjll ・
...(7) However, j is a≦j≦b, Xt is the target vector, Bj is the drive signal vector at pitch period j, γj is the optimal gain factor for pitch period j, and H is the above-mentioned ( 5) A lower triangular matrix of kXk, h given by Eq.
(1) (i −1, ..., k) is A (Z/γ)
is an impulse response of length k when the initial memory of is zero.

上記Ejを求めて、その最小値を与えるピ・ソチ周斯j
を求めるフローチャートを第9図に示す。
Find the above Ej and give its minimum value.
A flowchart for determining is shown in FIG.

この処理においては、先ず個々のtとjに対してHBj
を求める必要があり、そのためにはk (k+ 1 )
 / 2 X (b −a + 1 ) X L / 
k回の乗算を必要とする。例えばに=40.L−160
,a−20、b−147の場合には、419840回の
乗算を必要とする。またフロー全体においては、1フレ
ーム当り461312回の乗算を必要とする。そうする
と、入力音声信号のサンプリング周波数が8 kHzの
時には、23旧PS程度の乗算を必要とし20 MIP
Sの乗算能力をもつDSPでも2個必要となる。
In this process, first, for each t and j, HBj
It is necessary to find k (k+ 1)
/ 2 X (b − a + 1) X L /
Requires k multiplications. For example = 40. L-160
, a-20, and b-147, 419840 multiplications are required. Additionally, the entire flow requires 461,312 multiplications per frame. Then, when the sampling frequency of the input audio signal is 8 kHz, a multiplication of about 23 old PS is required, and 20 MIP is required.
Even a DSP with a multiplication capacity of S requires two.

(発明が解決しようとする課題) 上述の如(CELP方式を適用した従来の回路では、コ
ードブック探索および閉ループあるいは適応コードブッ
クと呼ばれるピッチ周期の探索を行なうために多大な計
算量を必要とする。このため、実時間処理を行なうには
多くのDSP等の演算回路が必要となり、この結果回路
構成の大型化と高価格化とを招いていた。
(Problems to be Solved by the Invention) As mentioned above, in the conventional circuit applying the CELP method, a large amount of calculation is required to perform a codebook search and a pitch period search called a closed loop or adaptive codebook. Therefore, a large number of arithmetic circuits such as DSPs are required to perform real-time processing, resulting in an increase in the size and cost of the circuit configuration.

そこで本発明は上記事情に着目し、コードブックの探索
を行なうために必要な計算量を減らし、これにより演算
回路の数を減らして回路の小形化および低価格化を図り
得るベクトル量子化方式を提供することを目的とする。
Therefore, the present invention focuses on the above-mentioned circumstances and develops a vector quantization method that can reduce the amount of calculation required to search the codebook, thereby reducing the number of arithmetic circuits and making the circuit smaller and cheaper. The purpose is to provide.

また本発明の別の目的は、ピッチ周期の探索を行なうた
めに必要な計算量を減らし、これにより演算回路の数を
減らして回路の小形化および低価格化を図り得るベクト
ル量子化方式を提供することを目的とする。
Another object of the present invention is to provide a vector quantization method that can reduce the amount of calculation required to search for pitch periods, thereby reducing the number of arithmetic circuits and making the circuit smaller and cheaper. The purpose is to

さらに本発明の他の目的は、コードブックの探索および
ピッチ周期の探索を行なうために必要な計算量をそれぞ
れ減らし、これにより演算回路の数をさらに減らして回
路のより一層の小形化および低価格化を図り得るベクト
ル量子化方式を提供することを目的とする。
Still another object of the present invention is to reduce the amount of computation required for codebook search and pitch period search, respectively, thereby further reducing the number of arithmetic circuits, resulting in further miniaturization and lower cost of the circuit. The purpose of this study is to provide a vector quantization method that can achieve quantization.

[発明の構成] (課題を解決するための手段) 上記目的を達成するために本発明は、コードブックに予
め蓄えられた複数のコードベクトルに対しそれぞれ所定
のフィルタ演算を行ない、これにより?5られた演算ベ
クトルと入力信号ベクトルとの歪みが最小となる上記コ
ードベクトルを上記コードブック中から探索する手段を
備えたベクトル量子化方式において、上記フィルタ演算
を、上記コードベクトルの行列と、上記コードベクトル
の次元数の正方三角行列との積により表わし、かつ上記
コードベクトルの行列および正方三角行列をそれぞれテ
プリッツ行列により構成して、上記コードベクトルの行
列と正方三角行列との積の各要素のうち初期要素のみを
通常の行列演算により求め、他の各要素は一つ前に求め
た要素を基に再帰的にそれぞれ求めるようにしたもので
ある。
[Structure of the Invention] (Means for Solving the Problems) In order to achieve the above object, the present invention performs predetermined filter operations on each of a plurality of code vectors stored in advance in a codebook, and thereby? In the vector quantization method, the filter operation is performed using the matrix of the code vectors and the It is expressed by the product of the number of dimensions of the code vector with a square triangular matrix, and the matrix of the code vector and the square triangular matrix are each constructed by a Toeplitz matrix, and each element of the product of the matrix of the code vector and the square triangular matrix is Among them, only the initial element is determined by ordinary matrix operations, and each of the other elements is determined recursively based on the previously determined element.

また上記別の目的を達成するために別の本発明は、ピッ
チ周期に応じて作成された複数の駆動信号ベクトルに対
しそれぞれ所定のフィルタ演算を行ない、これにより得
られた演算ベクトルと入力信号ベクトルとの歪みが最小
となる駆動信号ベクトルを上記複数の駆動信号ベクトル
中から探索する手段を備えたベクトル量子化方式におい
て、上記フィルタ演算を、上記駆動信号ベクトルの行列
と、予め用意されているコードベクトルの次元数の正方
三角行列との積により表わし、かつ上記駆動信号ベクト
ルの行列および正方三角行列をそれぞれテプリッツ行列
により構成して、上記駆動信号ベクトルの行列と正方三
角行列との積の各要素のうち初期要素のみを通常の行列
演算により求め、他の各要素は一つ前に求めた要素を基
に再帰的にそれぞれ求めるようにしたものである。
In order to achieve the above-mentioned other object, another present invention performs predetermined filter calculations on each of a plurality of drive signal vectors created according to the pitch period, and the calculated vectors and input signal vectors obtained thereby are In the vector quantization method, the filter operation is performed using a matrix of the drive signal vectors and a code prepared in advance. Each element of the product of the drive signal vector matrix and the square triangular matrix is represented by the product of the number of dimensions of the vector with a square triangular matrix, and the matrix of the drive signal vector and the square triangular matrix are each constructed by a Toeplitz matrix. Among them, only the initial element is determined by ordinary matrix operations, and each of the other elements is determined recursively based on the previously determined element.

さらに上記他の目的を達成するために他の本発明は、コ
ードブックの探索を行うための上記第1のフィルタ演算
を、コードベクトルの行列と、コードベクトルの次元数
の正方三角行列との積により表わし、かつ上記コードベ
クトルの行列および正方三角行列をそれぞれテプリッツ
行列により構成して、上記コードベクトルの行列と正方
三角行列との積の各要素のうち初期要素のみを通常の行
列演算により求め、他の各要素は一つ前に求めた要素を
基に再帰的にそれぞれ求めるようにし、さらにピッチ周
期を探索するための第2のフィルタ演算を、駆動信号ベ
クトルの行列と正方三角行列との積により表わし、かつ
上記駆動信号ベクトルの行列および正方三角行列をそれ
ぞれテプリッツ行列により構成して、上記駆動信号ベク
トルの行列と正方三角行列との積の各要素のうち初期要
素のみを通常の行列演算により求め、他の各要素は一つ
前に求めた要素を基に再帰的にそれぞれ求めるようにし
たものである。
Furthermore, in order to achieve the other object described above, another present invention provides that the first filter operation for performing the codebook search is performed by multiplying a matrix of code vectors and a square triangular matrix having the number of dimensions of the code vectors. and the matrix of the code vector and the square triangular matrix are each constructed by a Toeplitz matrix, and only the initial element of each element of the product of the matrix of the code vector and the square triangular matrix is determined by ordinary matrix operation, Each of the other elements is calculated recursively based on the previously calculated element, and the second filter operation for searching the pitch period is performed by multiplying the drive signal vector matrix and the square triangular matrix. The matrix of the drive signal vector and the square triangular matrix are each constructed by a Toeplitz matrix, and only the initial element of the product of the matrix of the drive signal vector and the square triangular matrix is calculated by ordinary matrix operations. Each other element is calculated recursively based on the previously calculated element.

(作用) この結果本発明によれば、コードブックの探索において
、フィルタ演算がテプリッツ行列を利用して再帰的に行
なわれることになる。このため、コードブックの探索に
係わる全てのフィルタ演算を通常の行列演算により行な
う場合に比べて計算量を減すことが可能となり、これに
より演算回路の数も減って回路の小形化および低価格化
が図られる。
(Operation) As a result, according to the present invention, in the search of the codebook, the filter operation is performed recursively using the Toeplitz matrix. Therefore, it is possible to reduce the amount of calculation compared to when all filter operations related to codebook search are performed using ordinary matrix operations, and this reduces the number of arithmetic circuits, resulting in smaller circuits and lower costs. will be promoted.

また別の本発明によれば、ピッチ周期の探索において、
フィルタ演算がテプリッツ行列を利用して再帰的に行な
われることになる。このため、ピッチ周期の探索に係わ
る全てのフィルタ演算を通常の行列演算により行なう場
合に比べて計算量を減すことが可能となり、これにより
演算回路の数も減って回路の小形化および低価格化が図
られる。
According to another aspect of the present invention, in searching for a pitch period,
Filter operations are performed recursively using Toeplitz matrices. Therefore, it is possible to reduce the amount of calculation compared to the case where all filter calculations related to pitch period search are performed using normal matrix calculations, and this reduces the number of calculation circuits, resulting in smaller circuits and lower costs. will be promoted.

さらに他の本発明によれば、コードブックの探索とピッ
チ周期の探索との両方において、それぞれフィルタ演算
がテプリッツ行列を利用して再帰的に行なわれることに
なる。このため、コードブックの探索およびピッチ周期
の探索に係わる全てのフィルタ演算を通常の行列演算に
より行なう場合に比べて計算量を大幅に減すことが可能
となり、これにより演算回路の数も減って回路のより一
層の小形化および低価格化が図られる。
According to still another aspect of the present invention, filter operations are performed recursively using a Toeplitz matrix in both the codebook search and the pitch period search. Therefore, compared to the case where all filter operations related to codebook search and pitch period search are performed using normal matrix operations, the amount of calculation can be significantly reduced, and the number of calculation circuits is also reduced. Further miniaturization and cost reduction of the circuit can be achieved.

(実施例) 第1図は、本発明の一実施例に係るベクトル量子化方式
を適用した音声符号化回路の原理的な構成を示すブロッ
ク図である。
(Embodiment) FIG. 1 is a block diagram showing the basic configuration of a speech encoding circuit to which a vector quantization method is applied according to an embodiment of the present invention.

同図において、音声信号の信号系列は入力端子31から
入力され、ブロック切出し部32に導入される。このブ
ロック切出し部32では、L個のサンプル値を1つのフ
レームとして長さしの入力音声ベクトルにブロック分け
され、このブロック分けされた人力音声ベクトルはLP
C分析部33および重み付はフィルタ34に供給される
In the figure, a signal sequence of an audio signal is input from an input terminal 31 and introduced into a block extraction section 32. In this block extraction unit 32, the L sample values are divided into blocks into length input speech vectors as one frame, and the human input speech vectors divided into blocks are
The C analysis unit 33 and weighting are supplied to a filter 34.

LPG分析部33は、自己相関法等を用いて音声信号の
LPG分析を行い、LPG予測パラメータ(all  
(i−1,・・・、P)を抽出する。この抽出されたL
PG予測パラメータは、LPG合成フィルタ36で利用
される。
The LPG analysis unit 33 performs LPG analysis of the audio signal using an autocorrelation method or the like, and calculates LPG prediction parameters (all
Extract (i-1,..., P). This extracted L
The PG prediction parameters are used in the LPG synthesis filter 36.

重み付はフィルタ34は、入力音声ベクトルに重み付け
を行なうもので、コードブックの探索およびピッチ周期
の探索の各ループの外に設けられている。この重み付は
フィルタ34により、LPG合成フィルタ36,38.
47でA (Z)をA (Z/γ)として誤差信号のス
ペクトルを整形し、これにより人間の耳によって知覚さ
れるであろう歪を低減することが可能となる。また、重
み付はフィルタ34を探索ループ外に設けたことにより
、コードブックおよびピッチ周期を探索する際の計算量
を少なくすることが可能となる。上記重み付はフィルタ
34の伝達関数W (Z)は次の式で与えられる。
A weighting filter 34 weights the input speech vector, and is provided outside each loop of codebook search and pitch period search. This weighting is performed by the filter 34 and the LPG synthesis filters 36, 38 .
At 47, the spectrum of the error signal is shaped by changing A (Z) to A (Z/γ), thereby making it possible to reduce the distortion that would be perceived by the human ear. Furthermore, by providing the weighting filter 34 outside the search loop, it is possible to reduce the amount of calculation when searching for the codebook and pitch period. The transfer function W (Z) of the weighting filter 34 is given by the following equation.

W (Z) −A (Z/γ) /A (Z)    
  ・・・(8)ここにおいてγは(O≦γ≦1)であ
り、またA (Z)は A (Z)−1/ (1+Σ aiZ−つ      
−(9)で示される。
W (Z) −A (Z/γ) /A (Z)
...(8) Here, γ is (O≦γ≦1), and A (Z) is A (Z)-1/ (1+Σ aiZ-
−(9).

また、本実施例の回路は、LPG合成フィルタ38.4
7のフィルタ演算で使用する初期メモリが、ピッチ周期
の探索およびコードブックの探索に影響を与えないよう
にしている。すなわち、初期メモリを持ったLPG合成
フィルタ36が新たに設けられており、このLPG合成
フィルタ36により客人力応答ベクトルが作成される。
Further, the circuit of this embodiment has an LPG synthesis filter 38.4.
The initial memory used in the filter operation in step 7 does not affect the pitch period search and codebook search. That is, an LPG synthesis filter 36 having an initial memory is newly provided, and the customer force response vector is created by this LPG synthesis filter 36.

そして、減算器35において、上記重み付はフィルタ3
4から出力された重み付は入力音声ベクトルから、上記
零入力応答ベクトルが差し引かれ、これによりLPG合
成フィルタ38.47の初期メモリは零に設定される。
Then, in the subtracter 35, the weighting is applied to the filter 3.
The weighting output from 4 is obtained by subtracting the zero input response vector from the input speech vector, thereby setting the initial memory of the LPG synthesis filter 38, 47 to zero.

また、同時にこれは、ピッチ周期を探索するために使用
されるLPG合成フィルタ38のフィルタ演算およびコ
ードブックを探索するために使用されるLPG合成フィ
ルタ47のフィルタ演算を、それぞれ駆動信号ベクトル
とに×にの下方三角行列との積およびコード−ベクトル
とkXkの下方三角行列との積で表わすことを可能にし
ている。上記kXkの下方三角行列Hは、のように表さ
れる。ここで、kは駆動信号ベクトルおよびコードベク
トルの次元数(要素数)であり、kは一般にL/kが整
数になるように選ばれる。また、h (1)  (i 
−1、・・・、k)は、A(Z/γ)の初期メモリが零
の時の長さkのインパルス応答である。
At the same time, this also changes the filter operation of the LPG synthesis filter 38 used for searching the pitch period and the filter operation of the LPG synthesis filter 47 used for searching the codebook into the drive signal vector and × It is possible to express this by the product of a lower triangular matrix and the product of a code-vector and a lower triangular matrix of kXk. The above kXk lower triangular matrix H is expressed as follows. Here, k is the number of dimensions (number of elements) of the drive signal vector and the code vector, and k is generally selected so that L/k is an integer. Also, h (1) (i
−1, . . . , k) is an impulse response of length k when the initial memory of A(Z/γ) is zero.

ところで、ピッチ周期の探索ループは次のように構成さ
れる。すなわち、先ず駆動信号部40には、ピッチ周期
jに対応する駆動信号ベクトルが蓄積される。この駆動
信号ベクトルは、乗算器46でゲインパラメータが乗算
されたコードベクトルと、乗算器39でゲインパラメー
タが乗算された駆動信号ベクトルとを加算器43で加算
し、これにより得られたフィルタ駆動信号eを遅延器4
4で可変遅延することにより作成される。上記遅延器4
4は、ピッチ周期の探索範囲a−bに渡って遅延量が変
化するように構成されている。上記駆動信号部12から
出力された駆動信号ベクトルは、乗算器39でゲインパ
ラメータが乗算されたのちLPC合成フィルタ38で合
成音声ベクトルを作成するためのフィルタ演算が行われ
、比較器37に入力される。この比較器37では、前記
減算器35から出力された重み付き人力音声ベクトルか
ら、上記LPG合成フィルタ38から出力された合成音
声ベクトルが差し引かれる。そして、その誤差が2乗誤
差計算部41に導入されてここでその2乗距離による歪
みEjが求められ、この歪みEjの最小値が最小歪探索
部42で検出されて、その検出情報が駆動信号部40に
入力される。
By the way, the pitch period search loop is configured as follows. That is, first, the drive signal vector corresponding to the pitch period j is accumulated in the drive signal section 40. This drive signal vector is obtained by adding the code vector multiplied by the gain parameter in the multiplier 46 and the drive signal vector multiplied by the gain parameter in the multiplier 39 in the adder 43, and the resulting filter drive signal delayer 4
4 with a variable delay. The delay device 4
4 is configured such that the delay amount changes over the search range a-b of the pitch period. The drive signal vector outputted from the drive signal section 12 is multiplied by a gain parameter in a multiplier 39, then subjected to a filter operation to create a synthesized speech vector in an LPC synthesis filter 38, and then input to a comparator 37. Ru. In this comparator 37, the synthesized speech vector output from the LPG synthesis filter 38 is subtracted from the weighted human speech vector output from the subtracter 35. Then, the error is introduced into the square error calculation unit 41, where the distortion Ej due to the squared distance is found, the minimum value of this distortion Ej is detected by the minimum distortion search unit 42, and the detected information is used for driving. The signal is input to the signal section 40.

すなわち、上記駆動信号部40から乗算器39、LPG
合成フィルタ38、比較器37.2乗誤差計算部41お
よび最小歪探索部42を介して駆動信号部40に戻るル
ープでは、減算器35から出力される前のフレームの影
響を除去した重み付き人力音声ベクトルを目標ベクトル
とするピッチ探索が行なわれる。ここで、上記2乗誤差
計算部41で求められる歪みEjは、 Ej−11Xt−γjHBjl+        ・・
・(11)で表される。ただし、jはピッチ周期であっ
てa≦j≦bの範囲に設定される。また、Xtは目標ベ
クトル、Bjはピッチ周期jの時の駆動信号ベクトル、
γjはピッチ周期jに対する最適な利得因数、Hは第(
10)式で与えられるkXkの下方三角行列である。
That is, from the drive signal section 40 to the multiplier 39, the LPG
In the loop returning to the drive signal unit 40 via the synthesis filter 38, the comparator 37, the squared error calculation unit 41, and the minimum distortion search unit 42, the weighted human input signal from which the influence of the previous frame is removed is output from the subtractor 35. A pitch search is performed using the audio vector as a target vector. Here, the distortion Ej calculated by the square error calculation section 41 is Ej-11Xt-γjHBjl+...
・Represented by (11). However, j is a pitch period and is set in the range of a≦j≦b. In addition, Xt is a target vector, Bj is a drive signal vector at pitch period j,
γj is the optimal gain factor for pitch period j, H is the (
10) is a lower triangular matrix of kXk given by Equation 10).

ところで、上記駆動信号ベクトルBjの各要素は(b 
j(1)、  b j(2)、・・・bj(k))”に
より表される。第2図にBjの各列ベクトルを示す。こ
のとき、各要素はb j(+a)−b j−1(11−
1) (a+1≦j≦b。
By the way, each element of the drive signal vector Bj is (b
j (1), b j (2), ... b j (k))". Figure 2 shows each column vector of Bj. At this time, each element is b j (+a) - b j-1(11-
1) (a+1≦j≦b.

2≦m≦k)の関係を有しており、このため駆動信号ベ
クトルBjを各列ベクトルとした駆動信号行列はテプリ
ッツ行列となる。また、重み付LPG合成フィルタも下
方の三角行列でかつテプリッツ行列である。したがって
、HBjの各要素を(V j(1)、  V 02)、
 ・・・Vj(k)) ”とすると、次式の関係式が成
り立つ。
2≦m≦k), and therefore, the drive signal matrix with the drive signal vector Bj as each column vector becomes a Toeplitz matrix. Further, the weighted LPG synthesis filter is also a lower triangular matrix and a Toeplitz matrix. Therefore, each element of HBj is (V j (1), V 02),
...Vj(k))'', the following relational expression holds true.

Vm) −h (1) e (−j)        
  −(12)Vj(m)−Vj−1(m−1)+ h
 (+a) e (−j)     −(13)ただし
mおよびjは、それぞれ2≦m≦に、a+1≦j≦bで
ある。この関係式から明らかなように、HBjの各要素
はそれぞれ一つ前の要素から再帰的に求めることが可能
である。
Vm) -h (1) e (-j)
-(12)Vj(m)-Vj-1(m-1)+h
(+a) e (-j) - (13) where m and j are 2≦m≦ and a+1≦j≦b, respectively. As is clear from this relational expression, each element of HBj can be determined recursively from the previous element.

第3図はこの点に着目して構成されたピッチ探索ループ
の演算手順を示すフローチャートである。
FIG. 3 is a flowchart showing the calculation procedure of a pitch search loop constructed with this point in mind.

このフローチャートに従えば、先ずステップS41でt
の値が初期設定されたのち、ステップS42でHBaが
行列−ベクトル積演算で求められる。
According to this flowchart, first, in step S41, t
After the value of is initialized, HBa is determined by matrix-vector product operation in step S42.

そして、このHBaを基にステップS43.S44で1
lHBallおよび(Xt 、HBa ) 2が求めら
れる。
Then, based on this HBa, step S43. 1 in S44
lHBall and (Xt, HBa)2 are determined.

そうして初期要素が求められると、次にステップS45
〜ステツプS49により他の各要素が再帰的に繰り返し
算出される。すなわち、ステップS45にてjの値がa
ll −bの範囲で順に一つ設定される毎に、ステップ
54Bで一つ前の要素HB j−1に基づいて要素HB
jが再帰的に求められる。そして、このHBjを基にス
テップS47およびステップ848でそれぞれ1lHB
jllおよび(XtHBj )2が求められる。またス
テップS49では、上記算出結果から2乗距離歪Ejの
大小判定が行なわれる。そうして、すべてのjについて
HBjが求められ、それに応じた歪みEjの大小判定が
終了すると、この判定結果に従って歪みEjが最も小さ
い駆動信号ベクトルが選ばれる。
After the initial elements are obtained, step S45
- In step S49, each of the other elements is repeatedly calculated recursively. That is, in step S45, the value of j is a
Each time one is set in the range of ll-b, the element HB is set based on the previous element HB j-1 in step 54B.
j is found recursively. Then, based on this HBj, 1lHB is calculated in step S47 and step 848, respectively.
jll and (XtHBj)2 are found. Further, in step S49, the magnitude of the squared distance distortion Ej is determined based on the above calculation result. Then, when HBj is determined for all j and the magnitude determination of distortion Ej is completed, the drive signal vector with the smallest distortion Ej is selected according to the determination result.

すなわち、以上のピッチ探索のための演算ループでは、
初期要素のみが通常の行列−ベクトル積演算で求められ
、他のすべての要素はそれぞれ一つ前に求められた要素
に基づいて再帰的に求められる。つまり、このような演
算に必要な乗算回数はfk (k+1) /2+k ・
(b−a) l ・L/にとなる。このため、例えば一
般によく使用されるに−40,L−160,a−20,
b−147の場合には、23600回の乗算回数となる
。またフロー全体においては65072回の乗算となり
、第9図に示した従来の方式による演算と比べると14
%程度の計算量となる。したがって、入力音声信号のサ
ンプリング周波数が例えば8kHzの場合には3.3旧
PS程度の乗算回数で済むことになる。この結果、例え
ば20旧PSのDSPであれば、1個用いるだけで十分
足りることになり、さらに演算能力の小さい安価なりS
Pを使用することも可能となる。
In other words, in the above calculation loop for pitch search,
Only the initial element is determined by a normal matrix-vector product operation, and all other elements are determined recursively based on the previously determined element. In other words, the number of multiplications required for such an operation is fk (k+1) /2+k ・
(b-a) becomes l ・L/. For this reason, for example, commonly used -40, L-160, a-20,
In the case of b-147, the number of multiplications is 23,600. In addition, the total number of multiplications is 65,072 times in the entire flow, which is 14 times compared to the conventional method shown in Figure 9.
The amount of calculation is about %. Therefore, if the sampling frequency of the input audio signal is, for example, 8 kHz, the number of multiplications required is approximately 3.3 old PS. As a result, for example, if it is a 20 old PS DSP, it will be sufficient to use just one, and even cheaper SPS with less computing power will be enough.
It is also possible to use P.

そうして上記ピッチ周期の探索により最適なピッチ周期
jが求まると、比較器37では減算器35から出力され
た前のフレームの影響を除いた重み付き人力音声ベクト
ルから、上記最適なピッチ周期jによる合成音声ベクト
ルが差し引かれ、これにより前のフレームの影響とピッ
チによる影響を除いた重み付き人力音声ベクトルが得ら
れる。
When the optimum pitch period j is found by searching for the pitch period, the comparator 37 calculates the optimum pitch period j from the weighted human voice vector outputted from the subtractor 35 and excluding the influence of the previous frame. The synthesized speech vector is subtracted, thereby obtaining a weighted human speech vector that removes the influence of the previous frame and the influence of pitch.

この入力音声ベクトルはコードブック探索ループの比較
器48に供給される。
This input speech vector is fed to a comparator 48 of the codebook search loop.

一方、コードブックの探索ループは次のように構成され
る。すなわち、このループはコードブック17を有して
おり、このコードブック45には白色雑音から構成され
るn個のコードベクトルが蓄積されている。このコード
ブック17から読み出されたコードベクトルは、乗算器
46でゲインパラメータが乗算されたのち、LPC合成
フィルタ47で合成音声ベクトルを作成するためのフィ
ルタ演算が行なわれる。このLPG合成フィルタ47に
より作成された合成音声ベクトルが入力される比較器4
8では、前記ピッチ周期探索ループの比較器37から供
給された重み付き人力音声ベクトルから、上記合成音声
ベクトルが差し引かれ、これにより得られた誤差ベクト
ルは2乗誤差計算部49に供給される。この2乗誤差計
算部4つでは2乗距離による歪みEjが求められ、この
歪みEjの最小値の探索が最小歪探索部50で行なわれ
る。すなわち、以上のループでは、前記ピッチ周期探索
ループの比較器37から出力された、前のフレームの影
響とピッチによる影響とを除いた重み付き人力音声ベク
トルを目標ベクトルとして、コードブック17中のコー
ドベクトルのうちからその誤差の2乗距離による歪Ej
が最も小さくなるコードベクトル番号jを選択するため
の演算が繰り返し行なわれる。この演算は次式で表わさ
れる。
On the other hand, the codebook search loop is constructed as follows. That is, this loop has a codebook 17, and this codebook 45 stores n codevectors composed of white noise. The code vector read from the codebook 17 is multiplied by a gain parameter in a multiplier 46, and then filtered in an LPC synthesis filter 47 to create a synthesized speech vector. A comparator 4 to which the synthesized speech vector created by this LPG synthesis filter 47 is input.
At step 8, the synthesized speech vector is subtracted from the weighted human speech vector supplied from the comparator 37 of the pitch period search loop, and the error vector obtained thereby is supplied to the squared error calculation section 49. These four squared error calculation units calculate the distortion Ej due to the squared distance, and the minimum distortion search unit 50 searches for the minimum value of this distortion Ej. That is, in the above loop, the weighted human voice vector output from the comparator 37 of the pitch period search loop, excluding the influence of the previous frame and the influence of pitch, is used as the target vector, and the code in the codebook 17 is used as the target vector. Distortion Ej due to the square distance of the error from the vector
Calculation is repeated to select the code vector number j that gives the smallest value. This calculation is expressed by the following equation.

Ej −11Xt−IIHcIII         
 ・・・(14)ここで、Xは前のフレームの影響とピ
ッチによる影響とを除いた重み付き人力ベクトル、Cj
はj番目のコードベクトル、γjはj番目のコードベク
トルに対する最適な利得因数、nはコードベクトルの個
数である。
Ej-11Xt-IIHcIII
...(14) Here, X is a weighted human vector excluding the influence of the previous frame and the influence of pitch, Cj
is the jth codevector, γj is the optimal gain factor for the jth codevector, and n is the number of codevectors.

ところで、上記コードベクトルCjは、第3図に示すよ
うに長さがn+に−1からなる1ケの白色雑音系列Uの
後方側より、1サンプルずつシフトしながらそれぞれ切
り出された長さがkのサンプルから構成される。この場
合、第3図かられかるようにCj(Ig)= Cj−1
(a+−1) (2≦j≦n、2≦m≦k)の関係があ
り、これらのコードベクトルCjを各列ベクトルとした
コードブック行列Cはテプリッツ行列となる。またこの
時、HCjの各要素を(Wj(1)、 Wj(2)、・
・・Wj(k)) ”とすると、次式の関係式が成り立
つ。
By the way, as shown in FIG. 3, the code vector Cj is cut out from the rear side of the one-digit white noise sequence U whose length is n+-1 while shifting one sample at a time, and has a length k. Consists of samples. In this case, as shown in Figure 3, Cj (Ig) = Cj-1
There is a relationship of (a+-1) (2≦j≦n, 2≦m≦k), and the codebook matrix C with these code vectors Cj as each column vector becomes a Toeplitz matrix. Also, at this time, each element of HCj is expressed as (Wj (1), Wj (2), ・
...Wj(k))'', the following relational expression holds true.

Wj(1)= h (1) u (n+1−j)   
      −・・(15)Wj(+a)−Wj−L(
11−1)+ h (m) u (n+1−j)   
 ・= (1B)ただしmおよびjは、それぞれ2≦m
≦に、2≦j≦nである。この関係式から明らかなよう
に、HCjの各要素はそれぞれ一つ前の要素から再帰的
に求めることが可能である。
Wj (1) = h (1) u (n+1-j)
-...(15)Wj(+a)-Wj-L(
11-1)+ h (m) u (n+1-j)
・= (1B) However, m and j are each 2≦m
≦, and 2≦j≦n. As is clear from this relational expression, each element of HCj can be determined recursively from the previous element.

第5図はこの点に着目して構成されたコードブック探索
ループの演算手順を示すフローチャートである。このフ
ローチャートに従えば、先ずステップS51で初期要素
であるMCIが通常の行列−ベクトル積演算で求められ
る。そして、このMCIを基にステップS52でIIH
cIIIが求められる。
FIG. 5 is a flowchart showing the calculation procedure of a codebook search loop constructed with this point in mind. According to this flowchart, first, in step S51, MCI, which is an initial element, is obtained by a normal matrix-vector product operation. Then, based on this MCI, in step S52, IIH
cIII is required.

そうして初期要素が求められると、次に他の要素を再帰
的に求めるための演算が繰り返し行なわれる。すなわち
、ステップS53によりjの値が2〜nの範囲で一つ設
定される毎に、ステップS54で一つ前に求められた要
素HCj−1を基に要素HCjが求められる。そして、
この要素HCjよリステップS55で1lHcj11が
求められる。そうしてすべてのjについてHCjが求ま
ると、続いてステップ858でtの値が1〜L/にの範
囲で一つ設定される毎に、ステップS57によりXtH
が求められる。また、このXtHが一つ求められる毎に
、ステップ358〜ステツプShoによりjの各位につ
いての(Xt”H,Cj)2が求められ、さらにこれら
の(Xt”H,Cj)2と前記ステップS55により求
められた1lHcjllとから2乗距離の歪Ejの大小
判定が行なわれる。
Once the initial element is determined, operations are then repeated to recursively determine other elements. That is, each time a value of j is set in the range of 2 to n in step S53, element HCj is determined in step S54 based on the previously determined element HCj-1. and,
1lHcj11 is obtained from this element HCj in restep S55. After HCj is determined for all j, each time a value of t is set in the range of 1 to L/ in step 858, XtH is determined in step S57.
is required. Furthermore, each time this XtH is obtained, (Xt"H, Cj)2 for each position of j is obtained from step 358 to step Sho, and these (Xt"H, Cj)2 and the step S55 The magnitude of the distortion Ej of the square distance is determined from 1lHcjll obtained by .

そうして一つのXtHを基に求められたすべての(Xt
”H,Cj)2による2乗距離の歪Ejの大小判定が終
了すると、上記ステップS56に戻ってtの値がインク
リメントされ、しかるのち上記ステップ357〜S60
による演算および歪Ejの大小判定が繰り返される。
Then, all (Xt
When the determination of the magnitude of the distortion Ej of the squared distance by ``H, Cj)2 is completed, the process returns to step S56, where the value of t is incremented, and then steps 357 to S60 are performed.
The calculation and the determination of the magnitude of the distortion Ej are repeated.

すなわち、以上のコードブック探索のための演算ループ
でも、初期要素のみが通常の行列−ベクトル積演算で求
められ、他のすべての要素はそれぞれ一つ前に求められ
た要素に基づいて再帰的に求められる。つまり、このよ
うな演算に必要な乗算回数は、lk (k+1) /2
+k ・(n−1) 1となる。例えば、−船釣に用い
られるに−40゜n−1024の場合には、41.74
0回の乗算回数となる。また、フロー全体においては2
50796回となり、前記第8図に示した従来ノモノに
比べて24%程度の計算量となり、その計算量は大幅に
低減される。したがって、入力音声信号のサンプリング
周波数が8kHzの時には12.5旧PS程度の乗算で
済むことになり、この演算に必要なりSPは20旧PS
の乗算能力をもつ場合1個で間に合うことになる。
In other words, even in the above calculation loop for codebook search, only the initial element is calculated using the usual matrix-vector product operation, and all other elements are recursively calculated based on the previously calculated element. Desired. In other words, the number of multiplications required for such an operation is lk (k+1) /2
+k ・(n-1) 1. For example, in the case of -40°n-1024 used for boat fishing, 41.74
The number of multiplications is 0. Also, in the entire flow, 2
The number of calculations is 50,796 times, which is approximately 24% of the amount of calculation compared to the conventional product shown in FIG. 8, and the amount of calculation is significantly reduced. Therefore, when the sampling frequency of the input audio signal is 8kHz, a multiplication of about 12.5 old PS is sufficient, and the SP required for this calculation is 20 old PS.
If you have a multiplication ability of , you can make do with just one.

以上のように本実施例であれば、ピッチ周期の探索にお
いても、またコードブックの探索においても、探索ルー
プの演算量を従来に比べて大幅に減らすことが可能とな
り、これにより従来では少なくとも2個以上必要だった
DSPの数を1個に減らすことができる。このため、符
号化回路の構成を小形化しかつ低価格化することができ
る。
As described above, with this embodiment, it is possible to significantly reduce the amount of computation in the search loop in both pitch period searches and codebook searches, compared to conventional methods. The number of required DSPs can be reduced to one. Therefore, the configuration of the encoding circuit can be downsized and the cost can be reduced.

尚、本発明は上記実施例に限定されるものではない。例
えば、上記実施例ではピッチ予測の閉ループ化あるいは
適応コードブックと呼ばれるCELP方式において実施
した場合について説明したが、それ以外に前記第7図に
回路構成を示したCELP方式においても同様に実施可
能である。
Note that the present invention is not limited to the above embodiments. For example, in the above embodiment, a case has been described in which pitch prediction is implemented in a closed-loop method or in a CELP method called an adaptive codebook, but it can also be implemented in the same manner in a CELP method whose circuit configuration is shown in FIG. 7 above. be.

この場合には、第(10)式におけるkXkの下方三角
行列Hのh (i)を第(4)式によるH (Z/γ)
に置き換えればよい。
In this case, h (i) of the lower triangular matrix H of kXk in equation (10) is converted to H (Z/γ) according to equation (4).
You can replace it with

また前記実施例では、コードベクトルCjを、第3図に
示すように長さがn+に−1からなる1ケの白色雑音系
列Uの後方側より、1サンプルずつシフトしながらそれ
ぞれ切り出された長さがkのサンプルにより構成したが
、白色雑音系列Uの前方側より1サンプルずつシフトし
ながらそれぞれ切出された長さがkのサンプルにより構
成してもよい。この場合、個々のCjに対してHCjを
再帰的に求めるためには、k (K+1)/2+(2に
−1)(n−1)回の乗算が必要となり、前記実施例の
乗算回数よりも(k−1)  (n−1)回だけ乗算回
数が多くなる。しかるに、従来の方式の乗算回数に比べ
れば、十分に少なくすることができ、これによりDSP
の個数を減らして回路構成を小形化しかつ安価にするこ
とができる。
Further, in the above embodiment, the code vector Cj is divided into lengths that are cut out from the rear side of the one-digit white noise sequence U whose length is n+ and -1 while being shifted one sample at a time, as shown in FIG. Although it is composed of samples of length k, it may be composed of samples of length k that are cut out from the front side of the white noise sequence U while shifting one sample at a time. In this case, in order to recursively obtain HCj for each Cj, k (K+1)/2+(2-1)(n-1) multiplications are required, which is smaller than the number of multiplications in the previous example. The number of multiplications increases by (k-1) (n-1) times. However, compared to the number of multiplications in the conventional method, the number of multiplications can be sufficiently reduced.
By reducing the number of circuits, the circuit configuration can be made smaller and cheaper.

その他、コードブック探索ループおよびピッチ周期探索
ループの回路構成や演算手順等についても、本発明の要
旨を逸脱しない範囲で種々変形して実施できる。
In addition, the circuit configurations, calculation procedures, etc. of the codebook search loop and pitch period search loop can be modified in various ways without departing from the gist of the present invention.

[発明の効果] 以上詳述したように本発明は、コードブックの探索を行
うためのフィルタ演算を、コードベクトルの行列と、コ
ードベクトルの次元数の正方三角行列との積により表わ
し、かつ上記コードベクトルの行列および正方三角行列
をそれぞれテプリッツ行列により構成して、上記コード
ベクトルの行列と三角行列との積の各要素のうち初期要
素のみを通常の行列演算により求め、他の各要素は−つ
前に求めた要素を基に再帰的にそれぞれ求めるようにし
たものである。
[Effects of the Invention] As detailed above, the present invention expresses a filter operation for searching a codebook by the product of a matrix of code vectors and a square triangular matrix of the number of dimensions of the code vector, and The code vector matrix and the square triangular matrix are each constructed by Toeplitz matrices, and only the initial element of the product of the code vector matrix and the triangular matrix is determined by ordinary matrix operations, and each other element is − Each element is calculated recursively based on the previously calculated element.

したがってこの発明によれば、フードブックの探索を行
なうために必要な計算量を減らすことができ、これによ
り演算回路の数を減らして回路の小形化および低価格化
を図り得るベクトル量子化方式を提供することができる
Therefore, according to the present invention, the vector quantization method can reduce the amount of calculation required to search a food book, thereby reducing the number of arithmetic circuits and making the circuit smaller and cheaper. can be provided.

また別の本発明は、ピッチ周期の探索を行うためのフィ
ルタ演算を、駆動信号ベクトルの行列と、予め用意され
ているコードベクトルの次元数の正方三角行列との積に
より表わし、かつ上記駆動信号ベクトルの行列および正
方三角行列をそれぞれテプリッツ行列により構成して、
上記駆動信号ベクトルの行列と正方三角行列との積の各
要素のうち初期要素のみを通常の行列演算により求め、
他の各要素は一つ前に求めた要素を基に再帰的にそれぞ
れ求めるようにしたものである。
In another aspect of the present invention, the filter operation for searching the pitch period is expressed by the product of a matrix of drive signal vectors and a square triangular matrix of the number of dimensions of a code vector prepared in advance, and the drive signal Construct the vector matrix and square triangular matrix using Toeplitz matrices,
Only the initial element of each element of the product of the matrix of the drive signal vector and the square triangular matrix is found by ordinary matrix operation,
Each of the other elements is calculated recursively based on the previously calculated element.

したがってこの発明によれば、ピッチ周期の探索を行な
うために必要な計算量を減らすことができ、これにより
演算回路の数を減らして回路の小形化および低価格化を
図り得るベクトル量子化方式を提供することができる。
Therefore, according to the present invention, the vector quantization method can reduce the amount of calculation required to search for the pitch period, thereby reducing the number of arithmetic circuits and making the circuit smaller and cheaper. can be provided.

さらに他の本発明は、コードブックを探索するための第
1のフィルタ演算を、コードベクトルの行列と、コード
ベクトルの次元数の正方三角行列との積により表わし、
かつ上記コードベクトルの行列および正方三角行列をそ
れぞれテプリッツ行列により構成して、上記コードベク
トルの行列と正方三角行列との積の各要素のうち初期要
素のみを通常の行列演算により求め、他の各要素は一つ
前に求めた要素を基に再帰的にそれぞれ求めるようにし
、さらにピッチ周期を探索するための第2のフィルタ演
算を、駆動信号ベクトルの行列と正方三角行列との積に
より表わし、かつ上記駆動信号ベクトルの行列および正
方三角行列をそれぞれテプリッツ行列により構成して、
上記駆動信号ベクトルの行列と正方三角行列との積の各
要素のうち初期要素のみを通常の行列演算により求め、
他の各要素は一つ前に求めた要素を基に再帰的にそれぞ
れ求めるようにしたものである。
In still another aspect of the present invention, the first filter operation for searching the codebook is expressed by the product of a matrix of code vectors and a square triangular matrix of the number of dimensions of the code vector,
The matrix of the above code vector and the square triangular matrix are respectively constructed by Toeplitz matrices, and only the initial element of the product of the matrix of the above code vector and the square triangular matrix is determined by normal matrix operation, and each of the other The elements are determined recursively based on the previously determined element, and the second filter operation for searching the pitch period is expressed by the product of the drive signal vector matrix and the square triangular matrix. And the matrix of the drive signal vector and the square triangular matrix are each constructed by a Toeplitz matrix,
Only the initial element of each element of the product of the matrix of the drive signal vector and the square triangular matrix is found by ordinary matrix operation,
Each of the other elements is calculated recursively based on the previously calculated element.

したがってこの発明によれば、コードブックの探索およ
びピッチ周期の探索を行なうために必要な計算量をそれ
ぞれ減らすことができ、これにより演算回路の数をさら
に減らして回路のより一層の小形化および低価格化を図
り得るベクトル量子化方式を提供することができる。
Therefore, according to the present invention, it is possible to reduce the amount of calculation required for codebook search and pitch period search, which further reduces the number of arithmetic circuits and further reduces the size and cost of the circuit. It is possible to provide a vector quantization method that can be reduced in price.

【図面の簡単な説明】[Brief explanation of drawings]

第1図乃至第5図は本発明の一実施例におけるベクトル
量子化方式を説明するためのもので、第1図は同方式を
適用した音声符号化回路の原理的な構成を示すブロック
図、第2図および第3図は同回路の動作説明に使用する
模式図、第4図および第5図は同回路の演算手順を示す
フローチャート、第6図および第7図はそれぞれ従来の
異なるベクトル量子化方式を適用した音声符号化回路の
原理的な構成を示すブロック図、第8図および第9図は
それぞれ上記第6図および第7図に示した回路の演算手
順を示すフローチャートである。 31・・・音声信号の入力端子、32・・・ブロック切
出し部、33・・・LPC分析部、34・・・重み付は
フィルタ、35・・・減算器、36.38.47・・・
LPG合成フィルタ、37.48・・・比較器、39゜
46・・・乗算器、40・・・駆動信号部、41.49
・・・2乗誤差計算部、42.50・・・最小歪探索部
、44・・・遅延回路、45・・・コードブック。
1 to 5 are for explaining a vector quantization method according to an embodiment of the present invention, and FIG. 1 is a block diagram showing the basic configuration of a speech encoding circuit to which the same method is applied. Figures 2 and 3 are schematic diagrams used to explain the operation of the circuit, Figures 4 and 5 are flowcharts showing the calculation procedure of the circuit, and Figures 6 and 7 are respectively diagrams of different conventional vector quantum FIGS. 8 and 9 are block diagrams illustrating the basic configuration of a speech encoding circuit to which this method is applied, and are flowcharts illustrating the operational procedures of the circuits shown in FIGS. 6 and 7, respectively. 31... Audio signal input terminal, 32... Block extraction section, 33... LPC analysis section, 34... Weighting filter, 35... Subtractor, 36.38.47...
LPG synthesis filter, 37.48... Comparator, 39°46... Multiplier, 40... Drive signal section, 41.49
... Squared error calculation section, 42.50 ... Minimum distortion search section, 44 ... Delay circuit, 45 ... Code book.

Claims (3)

【特許請求の範囲】[Claims] (1)コードブックに予め蓄えられた複数のコードベク
トルに対しそれぞれ所定のフィルタ演算を行ない、これ
により得られた演算ベクトルと入力信号ベクトルとの歪
みが最小となる前記コードベクトルを前記コードブック
中から探索する手段を備えたベクトル量子化方式におい
て、 前記フィルタ演算を、前記コードベクトルの行列と、前
記コードベクトルの次元数の正方三角行列との積により
表わし、かつ前記コードベクトルの行列および正方三角
行列をそれぞれテプリッツ行列により構成して、前記コ
ードベクトルの行列と正方三角行列との積の各要素のう
ち初期要素のみを通常の行列演算により求め、他の各要
素は一つ前に求めた要素を基に再帰的にそれぞれ求める
ことを特徴とするベクトル量子化方式。
(1) A predetermined filter operation is performed on each of a plurality of code vectors stored in advance in a codebook, and the code vector that minimizes distortion between the calculated vector and the input signal vector is selected in the codebook. In the vector quantization method, the filter operation is represented by the product of a matrix of the code vector and a square triangular matrix of the number of dimensions of the code vector, and the matrix of the code vector and a square triangular Each matrix is constructed by a Toeplitz matrix, and only the initial element of each element of the product of the code vector matrix and the square triangular matrix is calculated by ordinary matrix operations, and each other element is the previously calculated element. A vector quantization method that is characterized by recursively calculating each based on .
(2)ピッチ周期に応じて作成された複数の駆動信号ベ
クトルに対しそれぞれ所定のフィルタ演算を行ない、こ
れにより得られた演算ベクトルと入力信号ベクトルとの
歪みが最小となる駆動信号ベクトルを前記複数の駆動信
号ベクトル中から探索する手段を備えたベクトル量子化
方式において、前記フィルタ演算を、前記駆動信号ベク
トルの行列と、予め用意されているコードベクトルの次
元数の正方三角行列との積により表わし、かつ前記駆動
信号ベクトルの行列および正方三角行列をそれぞれテプ
リッツ行列により構成して、前記駆動信号ベクトルの行
列と正方三角行列との積の各要素のうち初期要素のみを
通常の行列演算により求め、他の各要素は一つ前に求め
た要素を基に再帰的にそれぞれ求めることを特徴とする
ベクトル量子化方式。
(2) Perform predetermined filter calculations on each of the plurality of drive signal vectors created according to the pitch period, and select the plurality of drive signal vectors that minimize distortion between the calculated vector and the input signal vector. In the vector quantization method, the filter operation is represented by the product of a matrix of the drive signal vector and a square triangular matrix of the number of dimensions of the code vector prepared in advance. , and the matrix of the drive signal vector and the square triangular matrix are each configured by a Toeplitz matrix, and only the initial element of each element of the product of the matrix of the drive signal vector and the square triangular matrix is determined by ordinary matrix operation, A vector quantization method characterized by recursively determining each other element based on the previously determined element.
(3)コードブックに予め蓄えられた複数のコードベク
トルに対しそれぞれ所定の第1のフィルタ演算を行ない
、これにより得られた演算ベクトルと入力信号ベクトル
との歪みが最小となる前記コードベクトルを前記コード
ブック中から探索する手段と、ピッチ周期に応じて作成
された複数の駆動信号ベクトルに対しそれぞれ所定の第
2のフィルタ演算を行ない、これにより得られた演算ベ
クトルと入力信号ベクトルとの歪みが最小となる駆動信
号ベクトルを前記複数の駆動信号ベクトル中から探索す
る手段とを備えたベクトル量子化方式において、 前記第1のフィルタ演算を、前記コードベクトルの行列
と、前記コードベクトルの次元数の正方三角行列との積
により表わし、かつ前記コードベクトルの行列および正
方三角行列をそれぞれテプリッツ行列により構成して、
前記コードベクトルの行列と正方三角行列との積の各要
素のうち初期要素のみを通常の行列演算により求め、他
の各要素は一つ前に求めた要素を基に再帰的にそれぞれ
求め、 前記第2のフィルタ演算を、前記駆動信号ベクトルの行
列と前記正方三角行列との積により表わし、かつ前記駆
動信号ベクトルの行列および正方三角行列をそれぞれテ
プリッツ行列により構成して、前記駆動信号ベクトルの
行列と正方三角行列との積の各要素のうち初期要素のみ
を通常の行列演算により求め、他の各要素は一つ前に求
めた要素を基に再帰的にそれぞれ求めることを特徴とす
るベクトル量子化方式。
(3) Perform a predetermined first filter operation on each of a plurality of code vectors stored in advance in a codebook, and select the code vector that minimizes the distortion between the calculated vector and the input signal vector. A means for searching from the codebook and a predetermined second filter operation are performed on each of the plurality of drive signal vectors created according to the pitch period, and the distortion between the calculated vector and the input signal vector obtained by this is In the vector quantization method, the first filter operation is performed using a matrix of the code vectors and a dimension number of the code vectors. represented by a product with a square triangular matrix, and the matrix of the code vector and the square triangular matrix are each constructed by a Toeplitz matrix,
Of each element of the product of the code vector matrix and the square triangular matrix, only the initial element is determined by normal matrix operations, and each of the other elements is determined recursively based on the previously determined element, A second filter operation is represented by a product of the matrix of the drive signal vector and the square triangular matrix, and the matrix of the drive signal vector and the square triangular matrix are each configured by a Toeplitz matrix, and the matrix of the drive signal vector is A vector quantum that is characterized in that only the initial element of the product of and a square triangular matrix is found by normal matrix operations, and each of the other elements is found recursively based on the previously found element. method.
JP1329228A 1989-12-19 1989-12-19 Vector quantizing system Pending JPH03189700A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1329228A JPH03189700A (en) 1989-12-19 1989-12-19 Vector quantizing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1329228A JPH03189700A (en) 1989-12-19 1989-12-19 Vector quantizing system

Publications (1)

Publication Number Publication Date
JPH03189700A true JPH03189700A (en) 1991-08-19

Family

ID=18219085

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1329228A Pending JPH03189700A (en) 1989-12-19 1989-12-19 Vector quantizing system

Country Status (1)

Country Link
JP (1) JPH03189700A (en)

Similar Documents

Publication Publication Date Title
EP0424121B1 (en) Speech coding system
Giacobello et al. Sparse linear prediction and its applications to speech processing
US5187745A (en) Efficient codebook search for CELP vocoders
CA2160749C (en) Speech coding apparatus, speech decoding apparatus, speech coding and decoding method and a phase amplitude characteristic extracting apparatus for carrying out the method
CA2061803C (en) Speech coding method and system
US5359696A (en) Digital speech coder having improved sub-sample resolution long-term predictor
KR100194775B1 (en) Vector quantizer
US5179594A (en) Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook
CA2037899C (en) Digital speech coder having improved long-term predictor
JPH04270398A (en) Voice encoding system
JPH056199A (en) Voice parameter coding system
EP0824750A1 (en) A gain quantization method in analysis-by-synthesis linear predictive speech coding
JPH06138896A (en) Device and method for encoding speech frame
US5873060A (en) Signal coder for wide-band signals
JPH05216500A (en) Speech encoding device
JPH1097294A (en) Voice coding device
JPH03189700A (en) Vector quantizing system
JPH08328597A (en) Sound encoding device
JP3233184B2 (en) Audio coding method
JP3249144B2 (en) Audio coding device
JP3256215B2 (en) Audio coding device
JPH113098A (en) Method and device of encoding speech
JP3290704B2 (en) Vector quantization method
JP3112462B2 (en) Audio coding device
JP3749838B2 (en) Acoustic signal encoding method, acoustic signal decoding method, these devices, these programs, and recording medium thereof