JP2970254B2 - Speech synthesis method and apparatus - Google Patents
Speech synthesis method and apparatusInfo
- Publication number
- JP2970254B2 JP2970254B2 JP4255899A JP25589992A JP2970254B2 JP 2970254 B2 JP2970254 B2 JP 2970254B2 JP 4255899 A JP4255899 A JP 4255899A JP 25589992 A JP25589992 A JP 25589992A JP 2970254 B2 JP2970254 B2 JP 2970254B2
- Authority
- JP
- Japan
- Prior art keywords
- quantization
- difference value
- quantization width
- value data
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、波形符号化方式の一種
であるADPCM(Adaptive Differe
ntial Pulse Code Modulati
on)方式を用いた音声合成装置に関し、差分値データ
を読み出し専用メモリ(ROM)として全て持つものの
差分値データの冗長性削減を行い、差分値データメモリ
を削減する方法とその装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an ADPCM (Adaptive Differe) which is a kind of waveform encoding system.
neutral Pulse Code Modulati
The present invention relates to a method and an apparatus for reducing the difference value data memory by reducing the redundancy of the difference value data even if the difference value data is entirely provided as a read-only memory (ROM).
【0002】[0002]
【従来の技術】まず初めに、従来の音声合成装置におい
て行われていたADPCM(Adaptive Dif
ferential Pulse Code Modu
lation)方式と乗算器を用いないで合成処理をす
るテーブル参照法について図面を参照しながら説明す
る。2. Description of the Related Art First, an ADPCM (Adaptive Dif) performed in a conventional speech synthesizer.
Fermental Pulse Code Modu
With reference to the drawings, a description will be given of a table referencing method for performing a combining process without using a multiplier.
【0003】図5は従来のテーブル参照法によるADP
CM音声合成装置のブロック図、図6は量子化テーブル
説明図、図7は3ビットPCM波形の説明図、図8
(a)は4ビットPCM波形の説明図、図8(b)は、
5ビットPCM波形の説明図、図9はDPCM方式の説
明する、図10はADPCM波形の説明図、図11は3
ビットのADPCM方式の量子化係数kの説明図、図1
2は2〜5ビット時における量子化係数kの説明図であ
る。FIG. 5 shows an ADP by a conventional table reference method.
FIG. 6 is a block diagram of a CM speech synthesizer, FIG. 6 is an explanatory diagram of a quantization table, FIG. 7 is an explanatory diagram of a 3-bit PCM waveform, FIG.
FIG. 8A is an explanatory diagram of a 4-bit PCM waveform, and FIG.
FIG. 9 is an explanatory diagram of a 5-bit PCM waveform, FIG. 9 is an explanatory diagram of a DPCM system, FIG. 10 is an explanatory diagram of an ADPCM waveform, and FIG.
FIG. 1 is an explanatory diagram of a quantization coefficient k of a bit ADPCM method,
2 is an explanatory diagram of the quantization coefficient k at the time of 2 to 5 bits.
【0004】ディジタルコードで音声信号を扱う場合、
まず図7に示したようにある周期でサンプリングして、
各サンプリングした値に対して量子化し、量子化値に対
応した符号に置き換えたものをPCM(Pulse C
ode Modulation)という。一般的にはA
/Dコンバータの出力値がPCMコードである。図7の
斜線で示した部分が量子化による誤差であり、量子化誤
差と呼ばれている。この符号化方式は、アナログ信号に
対して忠実に符号化を試みようとすると、図8(a),
(b)のようにビット数が多く必要となり情報量が増え
る。When a voice signal is handled by a digital code,
First, as shown in FIG. 7, sampling is performed at a certain cycle,
A value obtained by quantizing each sampled value and replacing it with a code corresponding to the quantized value is PCM (Pulse C
Ode Modulation). Generally A
The output value of the / D converter is a PCM code. The hatched portion in FIG. 7 indicates an error due to quantization, which is called a quantization error. This encoding method attempts to faithfully attempt to encode an analog signal, as shown in FIG.
As shown in (b), a large number of bits are required and the amount of information increases.
【0005】PCM方式の音質改善並びに情報量削減と
して考え出されたのが、次に説明するDPCM(Dif
ferential Pulse Code Modu
lation)方式である。[0005] The DPCM (Dif) described below has been devised to improve the sound quality and reduce the amount of information in the PCM system.
Fermental Pulse Code Modu
lation) method.
【0006】PCM方式では、ビットすべてを割り当て
て、音声波形の符号化を行っていた。この方法では、良
質な音声を合成するには、符号ビット数を多くしなけれ
ばならなかった。そこで音声信号の相関性を利用し、図
9に示したように前の音声信号との差分値に対してPC
M符号化を行ったものがDPCMである。In the PCM system, audio bits are encoded by allocating all bits. In this method, the number of code bits must be increased in order to synthesize high quality speech. Therefore, by utilizing the correlation of the audio signal, the difference between the previous audio signal and the PC is calculated as shown in FIG.
The result of the M encoding is the DPCM.
【0007】つまり、同じビット数であれば、差分値に
対して割り当てた方がより良質な音声を合成することが
できる。また逆に同程度の音質で良ければDPCM符号
ビットを少なくでき音声データの情報圧縮を行うことも
できる。In other words, if the number of bits is the same, higher quality speech can be synthesized by assigning the difference value. Conversely, if the sound quality is the same, the DPCM code bits can be reduced and the information of the audio data can be compressed.
【0008】DPCM方式においては差分値に対しての
PCMであるため、量子化のための量子化幅が一定であ
り、急激な音声信号の振幅変化や、あまりにも緩慢な音
声信号の場合はひずみや雑音となって現れる。[0008] In the DPCM system, since the PCM is used for the difference value, the quantization width for the quantization is constant, and the amplitude of the audio signal changes suddenly. And appear as noise.
【0009】さらにDPCM方式に対して適応符号化の
考え方を導入してより高能率に音声信号を符号化したも
のが、次に説明するADPCM(Adaptive D
ifferential Pulse Code Mo
dulation)方式である。Further, a speech signal which is more efficiently coded by introducing the concept of adaptive coding into the DPCM system is referred to as an ADPCM (Adaptive D) described below.
iferential Pulse Code Mo
(duration) method.
【0010】ADPCM方式は、差分信号値の量子化幅
Δi を前のサンプル値の結果から定める方法である。す
なわち、前のサンプルの量子化幅Δi-1 とすると次のサ
ンプル量子化幅は、次式で定められ、係数kの値は前の
サンプルの振幅値の関数として定める。[0010] ADPCM scheme is a method of determining the quantization width delta i of the difference signal value from the results of the previous sample value. That is, assuming that the quantization width of the previous sample is Δ i−1 , the quantization width of the next sample is determined by the following equation, and the value of the coefficient k is determined as a function of the amplitude value of the previous sample.
【0011】Δi =k・Δi-1 Δ i = k · Δ i-1
【0012】ここでも簡単な例を示す。図11に3ビッ
トで量子化を行う場合の係数kの与え方を示す。3ビッ
トで量子化する場合、最上位の1桁は符号ビットとして
割り当てられるので振幅の絶対値を2ビットが担当す
る。そしてこの2ビットの振幅値の中で、図11に矢印
で示す値の半値に相当する振幅値以上のコードに符号化
された場合は、次のサンプルの量子化幅が大きくなるよ
うにkの値を1より大きくする。Here, a simple example is shown. FIG. 11 shows how to give a coefficient k when performing quantization with three bits. When quantizing with three bits, the most significant digit is assigned as a sign bit, so that two bits are responsible for the absolute value of the amplitude. In the case where a code having an amplitude equal to or more than the half value of the value indicated by the arrow in FIG. 11 is encoded in the 2-bit amplitude value, k is set so that the quantization width of the next sample becomes large. Increase the value to greater than 1.
【0013】逆に、半値に相当する振幅値よりも小さな
振幅値である場合、前の量子化幅よりも減少させるた
め、kを1より小さくする。もちろん量子化幅の最小値
と最大値を定めておき、必要以上に小さくなったり、逆
に大きくなったりすることがないようにする必要があ
る。Conversely, if the amplitude value is smaller than the half value, k is made smaller than 1 in order to reduce the quantization value from the previous quantization width. Of course, it is necessary to determine the minimum value and the maximum value of the quantization width so that the quantization width does not become unnecessarily small or vice versa.
【0014】基本的には、適応化された量子化幅Δによ
る量子化結果が、絶対値的に常に許容レベルの中央付近
にあるようにして、オーバーロードひずみの状態(許容
レベルの上限に近づく状態)にも、粒状ノイズ(許容レ
ベルの下限に近づく状態)にも陥らないようにする方式
である。参照までに、いろいろなビットの時の量子化係
数を図12に示す。以上、音声符号化について説明した
が、音声合成においては前述した符号化の逆の動作によ
り復号することで実現する。量子化係数に関しては、符
号化に用いた値と同じ値を用いることで復号化する。Basically, the quantization result based on the adapted quantization width Δ is always absolutely in the vicinity of the center of the allowable level, and the state of overload distortion (approaching the upper limit of the allowable level). State) and granular noise (a state approaching the lower limit of the allowable level). For reference, FIG. 12 shows quantization coefficients at various bits. The speech encoding has been described above. Speech synthesis is realized by decoding by the reverse operation of the above-described encoding. The quantization coefficient is decoded by using the same value as the value used for encoding.
【0015】次にテーブル参照法のアルゴリズムについ
て図5と図6を参照しながら述べる。本従来例は4ビッ
トADPCM方式の音声合成を示したものである。Next, the algorithm of the table reference method will be described with reference to FIGS. This conventional example shows speech synthesis of the 4-bit ADPCM system.
【0016】図5において、103はADPCM復号に
用いる加算器、105は適応制御器、109は音声符号
データを格納しておく音声符号データROM、108は
音声符号データROM109から読み出した値を保持す
る符号レジスタ、110,111,112はそれぞれ復
号作業に用いるレジスタ、501は復号に用いる差分値
をあらかじめ格納しておく量子化テーブル、104は量
子化テーブル501を指し示す量子化幅ポインタであ
る。In FIG. 5, reference numeral 103 denotes an adder used for ADPCM decoding; 105, an adaptive controller; 109, a voice code data ROM for storing voice code data; and 108, a value read from the voice code data ROM 109. Code registers, 110, 111, and 112 are registers used for decoding, 501 is a quantization table that stores difference values used for decoding in advance, and 104 is a quantization width pointer that indicates the quantization table 501.
【0017】テーブル参照法は、量子化係数kの乗算処
理を行わなくて済む方法として知られている(例えば、
特願平3−115210号)。The table reference method is known as a method that does not require the multiplication process of the quantization coefficient k (for example,
Japanese Patent Application No. 3-115210).
【0018】従来のテーブル参照アルゴリズムについて
述べる。基本原理としては1.25という値は次式に示
したように、べき乗の値が近似的に量子化係数に近いこ
とを利用する方法である。 (1.25)-1=0.8 約0.9 (1.25)1 =1.25 約1.2 (1.25)2 =1.5625 約1.6 (1.25)3 =1.953125 約2.0 (1.25)4 =2.44140625 約2.4A conventional table reference algorithm will be described. As a basic principle, a value of 1.25 is a method utilizing the fact that the value of the power is approximately close to the quantization coefficient as shown in the following equation. (1.25) -1 = 0.8 about 0.9 (1.25) 1 = 1.25 about 1.2 (1.25) 2 = 1.5625 about 1.6 (1.25) 3 = 1.953125 about 2.0 (1.25) 4 = 2.4441625 about 2.4
【0019】つまり、最大の差分値データに対して1.
25倍づつ掛け合わされた値を、表としてROM(Re
ad Only Memory)のような記憶媒体にす
べて書き込んでおくことにより(図6参照)、これを読
み出し累算することで音声合成を行う。That is, for the maximum difference value data, 1.
The values multiplied by 25 times are stored in the ROM (Re
By writing all the data into a storage medium such as an ad only memory (see FIG. 6), and reading and accumulating the data, voice synthesis is performed.
【0020】動作について図5を用いて説明する。音声
符号データROM109から読み出された符号化データ
は、符号レジスタ108に格納される。符号化レジスタ
108に格納された値は振幅情報としてそのまま量子化
テーブル501の差分値検索に利用される。さらに、符
号化データは適応制御器105に入力され、所定の適応
アルゴリズムにより量子化ポインタ104の制御がなさ
れる。制御としては振幅情報の絶対値が大きい場合はポ
インタを右へ2〜4程度ずらすことで量子化係数kの所
定の近似倍率を掛けたことに相当する。逆に振幅情報の
絶対値が小さい場合は、ポインタを左へ2〜4程度ずら
すことで量子化係数kの所定の近似倍率で割ったことに
相当する。The operation will be described with reference to FIG. The encoded data read from the audio encoded data ROM 109 is stored in the encoded register 108. The value stored in the encoding register 108 is used as it is as amplitude information in a difference value search of the quantization table 501. Further, the encoded data is input to the adaptive controller 105, and the quantization pointer 104 is controlled by a predetermined adaptive algorithm. When the absolute value of the amplitude information is large, the control is equivalent to multiplying the quantization coefficient k by a predetermined approximate magnification by shifting the pointer to the right by about 2 to 4. Conversely, when the absolute value of the amplitude information is small, it is equivalent to dividing the quantization coefficient k by a predetermined approximate magnification by shifting the pointer by about 2 to 4 to the left.
【0021】量子化幅ポインタ104と符号レジスタ1
08により示された量子化テーブル501の差分値デー
タは読み出され、レジスタ112に格納される。レジス
タ112に格納された差分値データは、あらかじめ計算
されている1つ前の合成波形データが格納されているレ
ジスタ111の内容と加算し、新たな合成波形をレジス
タ110に格納し出力する。出力と同時に次の合成のた
めにレジスタ111にも格納する。Quantization width pointer 104 and code register 1
The difference value data of the quantization table 501 indicated by 08 is read out and stored in the register 112. The difference value data stored in the register 112 is added to the content of the register 111 in which the immediately preceding synthesized waveform data is stored, and a new synthesized waveform is stored in the register 110 and output. At the same time as the output, it is also stored in the register 111 for the next synthesis.
【0022】以降、音声符号データROM109から新
たな符号データを読み出し、上記動作を繰り返す。Thereafter, new code data is read from the voice code data ROM 109, and the above operation is repeated.
【0023】[0023]
【発明が解決しようとする課題】上述したように従来の
ADPCM方式を用いた音声合成装置は、量子化係数の
乗算処理のための乗算回路削減のため乗算結果つまり差
分値データをすべて持つことで解決していたため、差分
値を記憶する大規模な記憶媒体の容量を有する。As described above, the conventional speech synthesizer using the ADPCM method has all the multiplication results, that is, difference value data, in order to reduce the number of multiplication circuits for multiplying quantization coefficients. Since this has been solved, it has a large-capacity storage medium for storing difference values.
【0024】本発明の目的は、メモリを削減し、ハード
ウェア資源の削減を図る音声合成方法及びその装置を提
供することにある。An object of the present invention is to provide a speech synthesizing method and apparatus for reducing memory and hardware resources.
【0025】[0025]
【課題を解決するための手段】前記目的を達成するた
め、本発明に係る音声合成方法は、第1の量子化幅にお
ける第1の差分値データと、第1の量子化幅の1.25
倍に当たる第2の量子化幅における第2の差分値データ
と、第2の量子化幅の1.25倍に当たる第3の量子化
幅における第3の差分値データから成る量子化テーブル
を用いてADPCM符号の復号動作を行う音声合成方法
であって、第1の量子化幅、第2の量子化幅及び第3の
量子化幅と異なる量子化幅における差分値データは量子
化テーブルの第1の差分値データ又は第2の差分値デー
タ又は第3の差分値データをビットシフトさせて求める
ようにしたものである。 Means for Solving the Problems] To achieve the above object, a method speech synthesis according to the present invention, contact with the first quantization width
First difference value data and a first quantization width of 1.25
Second difference value data in a second quantization width corresponding to the double
And a third quantization corresponding to 1.25 times the second quantization width.
Quantization table comprising third difference value data in width
Speech Synthesis Method for Decoding ADPCM Code Using GSM
Wherein the first quantization width, the second quantization width, and the third
The difference value data at the quantization width different from the quantization width is
First difference value data or second difference value data of the conversion table
Data or third difference value data by bit shifting
It is like that.
【0026】また、本発明に係る音声合成方法を実施す
る音声合成装置は、ADPCM符号から量子化幅ポイン
タを決める適応制御器と、適応制御器からの量子化幅ポ
インタに応じて巡回する3進アップダウンカウンタと、
3進アップダウンカウンタの巡回数をカウントするアッ
プダウンカウンタと、第1の量子化幅における第1の差
分値データ、第1の量子化幅の1.25倍に当たる第2
の量子化幅における第2の差分値データ及び第2の量子
化幅の1.25倍に当たる第3の量子化幅における第3
の差分値データから成る量子化テーブルと、3進アップ
ダウンカウンタによるカウント値に応じて量子化テーブ
ルの第1の差分値データ、第2の差分値データ及び第3
の差分値データの何れかの差分値データに対し、アップ
ダウンカウンタが示す巡回数に応じたビット数分シフト
演算を行うシフターと、シフターから出力される差分値
データと1つ前の合成波形データとを加算し合成波形デ
ータを出力する加算器とを有するものである。Further, the speech synthesis apparatus for carrying out the speech synthesis method according to the present invention, the quantization width point from ADPCM code
And the quantization width from the adaptive controller.
A ternary up / down counter that circulates according to the interchange,
Updates the number of ternary up / down counter cycles
And a first difference in a first quantization width.
Separated value data, the second which corresponds to 1.25 times the first quantization width
The second difference value data and the second quantum in the quantization width of
The third in the third quantization width corresponding to 1.25 times the quantization width
Quantization table consisting of differential value data
Quantization table according to count value by down counter
First difference value data, second difference value data,
Of any of the difference value data
Shift by the number of bits according to the number of rounds indicated by the down counter
The shifter that performs the operation and the difference value output from the shifter
The data and the previous synthesized waveform data are added and the synthesized waveform data is added.
And an adder for outputting data .
【0027】[0027]
【作用】ADPCM符号を復号する過程で用いる量子化
テーブルの冗長性を削減することにより、記憶容量を減
らしハードウェア資源の削減を実現する。By reducing the redundancy of the quantization table used in the process of decoding the ADPCM code, the storage capacity is reduced and the hardware resources are reduced.
【0028】[0028]
【実施例】以下、本発明の実施例について図面を参照し
て説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0029】(実施例1)図1は、本発明の実施例1を
示すブロック図、図2は、本実施例1の量子化テーブル
を示す図である。(First Embodiment) FIG. 1 is a block diagram showing a first embodiment of the present invention, and FIG. 2 is a diagram showing a quantization table of the first embodiment.
【0030】本実施例は4ビットADPCM方式の音声
合成を示したものである。図1において、本発明は、A
DPCM音声合成で用いる差分値データを格納してある
量子化テーブル101と、シフタ102と、差分値デー
タの累算に用いる加算器103と、量子化幅ポインタ1
04と、適応制御器105と、3進アップダウンカウン
タ106と、アップダウンカウンタ107と、ADPC
M符号を格納する符号レジスタ108と、音声符号デー
タROM109と、差分値の累算処理に用いるレジスタ
110と、レジスタ111と、レジスタ112とからな
る。The present embodiment shows 4-bit ADPCM speech synthesis. In FIG. 1, the present invention
A quantization table 101 storing difference value data used in DPCM speech synthesis, a shifter 102, an adder 103 used for accumulating difference value data, and a quantization width pointer 1
04, adaptive controller 105, ternary up / down counter 106, up / down counter 107, ADPC
It comprises a code register 108 for storing the M code, a voice code data ROM 109, a register 110 used for accumulating difference values, a register 111, and a register 112.
【0031】まず初めに図2に示す量子化テーブルにつ
いてその構成と本発明の原理について述べる。First, the configuration of the quantization table shown in FIG. 2 and the principle of the present invention will be described.
【0032】図2に示した量子化テーブルは縦方向には
ADPCM符号に対応した差分値の振幅レベルの異なる
ものを格納しておく。振幅レベルは図2において、最も
上側は正の最大差分値振幅を格納し順次下側に向かうに
したがって差分値の振幅レベルの小さいものとなるよう
に配置しておく。中央付近が最も振幅レベルの小さな正
の差分値振幅レベルの値になるようにする。中央より下
の値は負の差分値振幅レベルを格納しておく。最も下側
は負の最大差分値振幅を格納し順次上側に向かうにした
がって差分値の振幅レベルの小さいものとなるように配
置しておく。中央付近が最も振幅レベルの小さな負の差
分値振幅レベルの値になるように配置しておく。The quantization table shown in FIG. 2 stores, in the vertical direction, those having different amplitude levels of difference values corresponding to ADPCM codes. In FIG. 2, the uppermost level stores the positive maximum differential value amplitude in FIG. 2 and is arranged so that the amplitude level of the differential value becomes smaller as going downward. The positive difference value having the smallest amplitude level near the center is set to the value of the amplitude level. The value below the center stores the negative difference amplitude level. The lowermost part stores the amplitude of the maximum negative differential value, and is arranged so that the amplitude level of the differential value becomes smaller as going upward. The negative difference value having the smallest amplitude level near the center is arranged to be the value of the amplitude level.
【0033】図2に示した量子化テーブルの横方向に
は、ある適当な量子化幅の振幅セットを基準にその1.
25倍、さらに1.25倍(最大の量子化幅からみて約
1.6倍)、さらに1.25倍(最大の量子化幅からみ
て約2倍)といった具合に1.25倍づつべき乗倍され
てゆく構成になっている。ところで、そのある適当な量
子化幅からみて約2倍となるということは、最大の量子
化幅の値を呼び出し1ビットディジタルデータとしてシ
フト演算してやれば2倍したデータを読み出したのと同
じこととなり、全ての差分値を保有する必要がなくな
る。In the horizontal direction of the quantization table shown in FIG.
25 times, further 1.25 times (approximately 1.6 times from the maximum quantization width), and further 1.25 times (approximately 2 times from the maximum quantization width), such as a power multiplier of 1.25 times It is configured to be done. By the way, when the value is approximately doubled from the viewpoint of a certain appropriate quantization width, the value of the maximum quantization width is called, and if a shift operation is performed as 1-bit digital data, the doubled data is read out. , There is no need to hold all the difference values.
【0034】さらに、進歩させて逆に考えて、逆方向シ
フト演算で1/2にすることも可能である。むしろ、基
の量子化幅セットから除算する方が、精度良く音声合成
することができる。つまり、そのある適当な量子化幅セ
ットを最大振幅セットの量子化幅とその近傍を選択して
置けば良質な音声合成が実現できることを意味する。Further, it is also possible to make a half by performing a backward shift operation by making progress and thinking in reverse. Rather, the voice synthesis can be performed more accurately by dividing the original quantization width set. In other words, it means that high quality speech synthesis can be realized if the certain appropriate quantization width set is set by selecting the quantization width of the maximum amplitude set and its vicinity.
【0035】故に、3回1/1.25倍すると約1/2
倍の量子化幅となるため、最大の量子化幅の値とその1
/1.25倍の値と1/(1.25)2 倍の3種類の値
を有するだけで簡単なシフト演算だけで図2に示した実
際には実装していない仮想量子化テーブル1に相当する
部分や仮想量子化テーブル2に相当する部分が量子化テ
ーブルを読み出すと同時にシフト演算で容易に算出でき
るのが原理である。Therefore, when 1/25 times is performed three times, about 1/2 is obtained.
Since the quantization width is doubled, the maximum quantization width value and its 1
The virtual quantization table 1 shown in FIG. 2 which has only three types of values, /1.25 times and 1 / (1.25) 2 times, is simply implemented by a simple shift operation. The principle is that a corresponding part or a part corresponding to the virtual quantization table 2 can be easily calculated by a shift operation at the same time as reading out the quantization table.
【0036】続いて動作について図1を参照しながら述
べる。音声合成処理を行うときの初期状態としてはシフ
タ102、3進アップダウンカウンタ106、アップダ
ウンカウンタ107は、最小量子化幅の振幅セットを指
し示すようにシフト演算されている状態から始まるもの
とする。Next, the operation will be described with reference to FIG. It is assumed that the shifter 102, the ternary up / down counter 106, and the up / down counter 107 are shifted from the initial state when performing the voice synthesis processing to indicate the amplitude set of the minimum quantization width.
【0037】音声符号データROM109から読み出さ
れた符号化データは、符号レジスタ108に格納され
る。符号化レジスタ108に格納された値は振幅情報と
してそのまま量子化テーブル101の差分値検索に利用
される。さらに、符号化データは適応制御器105に入
力され、所定の適応アルゴリズムにより量子化幅ポイン
タ104の制御がなされる。制御としては振幅情報の絶
対値が大きい場合はポインタを右へ2〜4程度ずらすこ
とで量子化係数kの所定の近似倍率を掛けたことに相当
する。逆に振幅情報の絶対値が小さい場合は、ポインタ
を左へ2〜4程度ずらすことで量子化係数kの所定の近
似倍率で割ったことに相当する。The coded data read from the voice coded data ROM 109 is stored in the code register 108. The value stored in the encoding register 108 is used as it is as amplitude information in a difference value search of the quantization table 101. Further, the encoded data is input to the adaptive controller 105, and the quantization width pointer 104 is controlled by a predetermined adaptive algorithm. When the absolute value of the amplitude information is large, the control is equivalent to multiplying the quantization coefficient k by a predetermined approximate magnification by shifting the pointer to the right by about 2 to 4. Conversely, when the absolute value of the amplitude information is small, it is equivalent to dividing the quantization coefficient k by a predetermined approximate magnification by shifting the pointer by about 2 to 4 to the left.
【0038】適応制御器105は3進アップダウンカウ
ンタ106に対してアップまたはダウンの制御とその量
を与える。The adaptive controller 105 gives up or down control and the amount to the ternary up / down counter 106.
【0039】3進アップダウンカウンタ106は0,
1,2,0,1,2,…といったようにアップし、逆に
2,1,0,2,1,0,…といったようにダウンす
る。3進アップダウンカウンタ106は、2から0に変
化するときにアップダウンカウンタ107にアップ要求
をし、逆に0から2に変化するときにアップダウンカウ
ンタ107にダウンの要求をする。アップダウンカウン
タ107は3進アップダウンカウンタ106からの要求
に応じてアップダウンを行う。The ternary up / down counter 106 has 0,
Up, such as 1, 2, 0, 1, 2, ..., and conversely, down, such as 2, 1, 0, 2, 1, 0, .... The ternary up / down counter 106 issues an up request to the up / down counter 107 when the value changes from 2 to 0, and requests a down to the up / down counter 107 when the value changes from 0 to 2. The up / down counter 107 performs up / down in response to a request from the ternary up / down counter 106.
【0040】量子化幅ポインタ104と符号レジスタ1
08により示された量子化テーブル501の差分値デー
タは読み出され、アップダウンカウンタ107と3進ア
ップダウンカウンタ106の指示によりシフタ102が
読み出した差分値データに対してシフト演算処理を施し
た後にレジスタ112に格納する。レジスタ112に格
納されたシフト演算された差分値データは、あらかじめ
計算されている1つ前の合成波形データが格納されてい
るレジスタ111の内容と加算器103により加算し、
新たな合成波形をレジスタ110に格納し出力する。出
力と同時に次の合成のためにレジスタ111にも格納す
る。Quantization width pointer 104 and code register 1
The difference value data of the quantization table 501 indicated by 08 is read out, and after the shift value processing is performed on the difference value data read out by the shifter 102 according to the instruction of the up / down counter 107 and the ternary up / down counter 106. Stored in register 112. The adder 103 adds the shift-calculated difference value data stored in the register 112 to the content of the register 111 in which the immediately preceding synthesized waveform data is stored, and
The new synthesized waveform is stored in the register 110 and output. At the same time as the output, it is also stored in the register 111 for the next synthesis.
【0041】以降、音声符号データROM109から新
たな符号データを読み出し、上記動作を繰り返す。Thereafter, new code data is read from the voice code data ROM 109, and the above operation is repeated.
【0042】(実施例2)図3は、本発明の実施例2を
示すブロック図、図4は、本実施例2の量子化テーブル
を示す図である。(Embodiment 2) FIG. 3 is a block diagram showing Embodiment 2 of the present invention, and FIG. 4 is a diagram showing a quantization table of Embodiment 2 of the present invention.
【0043】本実施例は4ビットADPCM方式の音声
合成を示したものである。本実施例2は、実施例1にお
いて量子化テーブルの値を正側と負側の値として正か負
かの違いだけのために同じ絶対値レベルの差分値の値を
2つ持っていたが、符号ビットを持つことにより、差分
値の振幅レベルを正/負兼用し、その符号により加減算
することで実施例1に比べさらに半分の量子化テーブル
容量でADPCM音声合成を実現した例である。This embodiment shows a 4-bit ADPCM speech synthesis. In the second embodiment, the values of the quantization table in the first embodiment are set to the positive side and the negative side, and two values of the difference value of the same absolute value level are provided only for the difference between positive and negative. In this example, ADPCM speech synthesis is realized with a quantization table capacity which is half that of the first embodiment by adding and subtracting the amplitude level of the difference value by using the sign bit.
【0044】図3において、本実施例はADPCM音声
合成で用いる差分値データを格納してある量子化テーブ
ル301と、シフタ102と、差分値データの累算に用
いる加減算器303と、量子化幅ポインタ104と、適
応制御器105と、3進アップダウンカウンタ106
と、アップダウンカウンタ107と、ADPCM符号を
格納する符号レジスタ308と、音声データROM10
9と、差分値の累算処理に用いるレジスタ110と、レ
ジスタ111と、レジスタ112とからなる。Referring to FIG. 3, in this embodiment, a quantization table 301 storing difference value data used in ADPCM speech synthesis, a shifter 102, an adder / subtractor 303 used for accumulating difference value data, a quantization width Pointer 104, adaptive controller 105, ternary up / down counter 106
, An up / down counter 107, a code register 308 for storing an ADPCM code, and a voice data ROM 10
9, a register 110 used for accumulating the difference value, a register 111, and a register 112.
【0045】まず初めに図4に示す量子化テーブルにつ
いてその構成と本発明の原理について述べる。図4に示
した量子化テーブルは縦方向にはADPCM符号に対応
した差分値の振幅レベルの異なるものを格納しておく。
振幅レベルは図4において、最も上側は正/負兼用の最
大差分値振幅を格納し順次下側に向かうにしたがって差
分値の振幅レベルの小さいものとなるように配置してお
く。最も下側が最も振幅レベルの小さな正/負兼用の差
分値振幅レベルの値になるようにする。First, the configuration of the quantization table shown in FIG. 4 and the principle of the present invention will be described. The quantization table shown in FIG. 4 stores, in the vertical direction, those having different amplitude levels of difference values corresponding to ADPCM codes.
In FIG. 4, the amplitude level in FIG. 4 is arranged such that the maximum difference value amplitude for both positive / negative values is stored and the amplitude level of the difference value decreases gradually toward the lower side. The lowermost side is set to the positive / negative differential value amplitude level value having the smallest amplitude level.
【0046】図4に示した量子化テーブルの横方向に
は、ある適当な量子化幅の振幅セットを基準にその1.
25倍、さらに1.25倍(最大の量子化幅からみて約
1.6倍)、さらに1.25倍(最大の量子化幅からみ
て約2倍)といった具合に1.25倍づつべき乗倍され
てゆく構成になっている。ところで、そのある適当な量
子化幅からみて約2倍となるということは、最大の量子
化幅の値を呼び出し1ビットディジタルデータとしてシ
フト演算してやれば2倍したデータを読み出したのと同
じこととなり、全ての差分値を保有する必要がなくな
る。In the horizontal direction of the quantization table shown in FIG. 4, based on an amplitude set having an appropriate quantization width as a reference.
25 times, further 1.25 times (approximately 1.6 times from the maximum quantization width), and further 1.25 times (approximately 2 times from the maximum quantization width), such as a power multiplier of 1.25 times It is configured to be done. By the way, when the value is approximately doubled from the viewpoint of a certain appropriate quantization width, the value of the maximum quantization width is called, and if a shift operation is performed as 1-bit digital data, the doubled data is read out. , There is no need to hold all the difference values.
【0047】さらに、進歩させて逆に考えて、逆方向シ
フト演算で1/2にすることも可能である。むしろ、基
の量子化幅セットから除算する方が、精度良く音声合成
することができる。つまり、そのある適当な量子化幅セ
ットを最大振幅セットの量子化幅とその近傍を選択して
置けば良質な音声合成が実現できることを意味する。Further, it is also possible to make progress and think in the opposite way, and to halve it by a backward shift operation. Rather, the voice synthesis can be performed more accurately by dividing the original quantization width set. In other words, it means that high quality speech synthesis can be realized if the certain appropriate quantization width set is set by selecting the quantization width of the maximum amplitude set and its vicinity.
【0048】故に、3回1/1.25倍すると約1/2
倍の量子化幅となるため、最大の量子化幅の値とその1
/1.25倍の値と1/(1.25)2 倍の3種類の値
を有するだけで簡単なシフト演算だけで図4に示した実
際には実装していない仮想量子化テーブル1に相当する
部分や仮想量子化テーブル2に相当する部分が量子化テ
ーブルを読み出すと同時にシフト演算で容易に算出でき
るのが原理である。Therefore, when 1/25 times is performed three times, about 1/2 is obtained.
Since the quantization width is doubled, the maximum quantization width value and its 1
The virtual quantization table 1 shown in FIG. 4 which has only three types of values of /1.25 times and 1 / (1.25) 2 times is simply implemented by a simple shift operation and is not actually implemented. The principle is that a corresponding part or a part corresponding to the virtual quantization table 2 can be easily calculated by a shift operation at the same time as reading out the quantization table.
【0049】続いて動作について図3を参照しながら述
べる。音声合成処理を行うときの初期状態としてはシフ
タ102、3進アップダウンカウンタ106、アップダ
ウンカウンタ107は、最小量子化幅の振幅セットを指
し示すようにシフト演算されている状態から始まるもの
とする。Next, the operation will be described with reference to FIG. It is assumed that the shifter 102, the ternary up / down counter 106, and the up / down counter 107 are shifted from the initial state when performing the voice synthesis processing to indicate the amplitude set of the minimum quantization width.
【0050】音声符号データROM109から読み出さ
れた符号化データは、符号レジスタ308に格納され
る。符号化レジスタ308に格納された値は振幅情報部
分と符号部分に分けられ、振幅情報部分はそのまま量子
化テーブル101の差分値検索に利用される。さらに、
符号化データの振幅部分は適応制御器105に入力さ
れ、所定の適応アルゴリズムにより量子化幅ポインタ1
04の制御がなされる。制御としては振幅情報の絶対値
が大きい場合はポインタを右へ2〜4程度ずらすことで
量子化係数kの所定の近似倍率を掛けたことに相当す
る。逆に振幅情報の絶対値が小さい場合は、ポインタを
左へ2〜4程度ずらすことで量子化係数kの所定の近似
倍率で割ったことに相当する。The coded data read from the voice coded data ROM 109 is stored in the code register 308. The value stored in the encoding register 308 is divided into an amplitude information part and a code part, and the amplitude information part is used as it is for a difference value search of the quantization table 101. further,
The amplitude part of the encoded data is input to the adaptive controller 105, and the quantization width pointer 1 is calculated by a predetermined adaptive algorithm.
04 is performed. When the absolute value of the amplitude information is large, the control is equivalent to multiplying the quantization coefficient k by a predetermined approximate magnification by shifting the pointer to the right by about 2 to 4. Conversely, when the absolute value of the amplitude information is small, it is equivalent to dividing the quantization coefficient k by a predetermined approximate magnification by shifting the pointer by about 2 to 4 to the left.
【0051】適応制御器105は3進アップダウンカウ
ンタ106に対してアップまたはダウンの制御とその量
を与える。The adaptive controller 105 gives up / down control and its amount to the ternary up / down counter 106.
【0052】3進アップダウンカウンタ106は0,
1,2,0,1,2,…といったようにアップし、逆に
2,1,0,2,1,0,…といったようにダウンす
る。3進アップダウンカウンタ106は、2から0に変
化するときにアップダウンカウンタ107にアップ要求
をし、逆に0から2に変化するときにアップダウンカウ
ンタ107にダウンの要求をする。アップダウンカウン
タ107は3進アップダウンカウンタ106からの要求
に応じてアップダウンを行う。The ternary up / down counter 106 has 0,
Up, such as 1, 2, 0, 1, 2, ..., and conversely, down, such as 2, 1, 0, 2, 1, 0, .... The ternary up / down counter 106 issues an up request to the up / down counter 107 when the value changes from 2 to 0, and requests a down to the up / down counter 107 when the value changes from 0 to 2. The up / down counter 107 performs up / down in response to a request from the ternary up / down counter 106.
【0053】量子化幅ポインタ104と符号レジスタ1
08により示された量子化テーブル501の差分値デー
タは読み出され、アップダウンカウンタ107と3進ア
ップダウンカウンタ106の指示によりシフタ102が
読み出した差分値データに対してシフト演算処理を施し
た後にレジスタ112に格納する。レジスタ112に格
納されたシフト演算された差分値データは、あらかじめ
計算されている1つ前の合成波形データが格納されてい
るレジスタ111の内容と加減算器303により加減算
し、新たな合成波形をレジスタ110に格納し出力す
る。The quantization width pointer 104 and the sign register 1
The difference value data of the quantization table 501 indicated by 08 is read out, and after the shift value processing is performed on the difference value data read out by the shifter 102 according to the instruction of the up / down counter 107 and the ternary up / down counter 106. Stored in register 112. The difference value data subjected to the shift operation stored in the register 112 is added and subtracted by the adder / subtractor 303 with the contents of the register 111 in which the immediately preceding synthesized waveform data is stored, and a new synthesized waveform is registered in the register. Stored in 110 and output.
【0054】加算か減算かの区別は符号レジスタ308
の符号部分の値により区別される。出力と同時に次の合
成のためにレジスタ111にも格納する。The sign register 308 distinguishes between addition and subtraction.
Are distinguished by the value of the sign part of. At the same time as the output, it is also stored in the register 111 for the next synthesis.
【0055】以降、音声符号データROM109から新
たな符号データを読み出し、上記動作を繰り返す。Thereafter, new code data is read from the voice code data ROM 109, and the above operation is repeated.
【0056】[0056]
【発明の効果】以上説明したように本発明は、ADPC
M符号を復号する過程で用いる量子化テーブルの冗長性
を削減することにより、記憶容量を減らすことでハード
ウェア資源の削減を行うことができる効果がある。As described above, the present invention provides an ADPC
There is an effect that hardware resources can be reduced by reducing storage capacity by reducing the redundancy of the quantization table used in the process of decoding the M code.
【0057】また、最大値を用いることにより、差分値
を記憶する量子化テーブルのビット精度を最良に実現す
ることができ、高音質の音声合成ができる効果もある。Further, by using the maximum value, the bit precision of the quantization table for storing the difference value can be realized at the best, and there is an effect that high-quality sound can be synthesized.
【図1】本発明の実施例1を示すブロック図である。FIG. 1 is a block diagram showing a first embodiment of the present invention.
【図2】本発明の実施例1の量子化テーブルを示す図で
ある。FIG. 2 is a diagram illustrating a quantization table according to the first embodiment of the present invention.
【図3】本発明の実施例2を示すブロック図である。FIG. 3 is a block diagram showing a second embodiment of the present invention.
【図4】本発明の実施例2の量子化テーブルを示す図で
ある。FIG. 4 is a diagram illustrating a quantization table according to the second embodiment of the present invention.
【図5】従来のテーブル参照法によるADPCM音声合
成装置のブロック図である。FIG. 5 is a block diagram of a conventional ADPCM speech synthesizer using a table reference method.
【図6】量子化テーブル説明図である。FIG. 6 is an explanatory diagram of a quantization table.
【図7】3ビットPCM波形の説明図である。FIG. 7 is an explanatory diagram of a 3-bit PCM waveform.
【図8】(a)は4ビットPCM波形の説明図、(b)
は5ビットPCM波形の説明図である。FIG. 8A is an explanatory diagram of a 4-bit PCM waveform, and FIG.
FIG. 4 is an explanatory diagram of a 5-bit PCM waveform.
【図9】DPCM方式の説明図である。FIG. 9 is an explanatory diagram of a DPCM method.
【図10】ADPCM波形の説明図である。FIG. 10 is an explanatory diagram of an ADPCM waveform.
【図11】3ビットのADPCM方式の量子化係数kの
説明図である。FIG. 11 is an explanatory diagram of a 3-bit ADPCM quantization coefficient k;
【図12】2〜5ビット時における量子化係数kの説明
図である。FIG. 12 is an explanatory diagram of a quantization coefficient k at the time of 2 to 5 bits.
【符号の説明】 101 量子化テーブル 102 シフタ 103 加算器 104 量子化幅ポインタ 105 適応制御器 106 3進アップダウンカウンタ 107 アップダウンカウンタ 108 符号レジスタ 109 音声符号データROM 110 レジスタ 111 レジスタ 112 レジスタ 301 量子化テーブル 303 加減算器 501 量子化テーブル[Description of Code] 101 Quantization Table 102 Shifter 103 Adder 104 Quantization Width Pointer 105 Adaptive Controller 106 Binary Up / Down Counter 107 Up / Down Counter 108 Code Register 109 Voice Code Data ROM 110 Register 111 Register 112 Register 301 Quantization Table 303 Adder / Subtractor 501 Quantization Table
Claims (2)
ータと、前記第1の量子化幅の1.25倍に当たる第2
の量子化幅における第2の差分値データと、前記第2の
量子化幅の1.25倍に当たる第3の量子化幅における
第3の差分値データから成る量子化テーブルを用いてA
DPCM符号の復号動作を行う音声合成方法であって、
前記第1の量子化幅、前記第2の量子化幅及び前記第3
の量子化幅と異なる量子化幅における差分値データは前
記量子化テーブルの前記第1の差分値データ又は前記第
2の差分値データ又は前記第3の差分値データをビット
シフトさせて求めるようにしたことを特徴とする音声合
成方法。 1. A first difference value data in a first quantization width.
Data and a second quantization width 1.25 times the first quantization width.
Second difference value data at a quantization width of
In a third quantization width corresponding to 1.25 times the quantization width
Using a quantization table composed of third difference value data, A
A speech synthesis method for performing a DPCM code decoding operation,
The first quantization width, the second quantization width, and the third
The difference value data at a quantization width different from that of
The first difference value data or the second
Bit of the second difference value data or the third difference value data
A voice synthesizing method characterized by being obtained by shifting .
決める適応制御器と、該適応制御器からの前記量子化幅
ポインタに応じて巡回する3進アップダウンカウンタ
と、該3進アップダウンカウンタの巡回数をカウントす
るアップダウンカウンタと、第1の量子化幅における第
1の差分値データ、前記第1の量子化幅の1.25倍に
当たる第2の量子化幅における第2の差分値データ及び
前記第2の量子化幅の1.25倍に当たる第3の量子化
幅における第3の差分値データから成る量子化テーブル
と、前記3進アップダウンカウンタによるカウント値に
応じて前記量子化テーブルの前記第1の差分値データ、
前記第2の差分値データ及び前記第3の差分値データの
何れかの差分値データに対し、前記アップダウンカウン
タが示す前記巡回数に応じたビット数分シフト演算を行
うシフターと、該シフターから出力される差分値データ
と1つ前の合成波形データとを加算し合成波形データを
出力する加算器とを有することを特徴とする音声合成装
置。2. A quantization width pointer is obtained from an ADPCM code.
An adaptive controller to determine and the quantization width from the adaptive controller
A ternary up / down counter that cycles according to the pointer
And count the number of rounds of the ternary up / down counter.
An up-down counter, and a first
1 difference value data, 1.25 times the first quantization width.
Second difference value data in a corresponding second quantization width;
Third quantization corresponding to 1.25 times the second quantization width
Quantization table comprising third difference value data in width
And the count value of the ternary up / down counter
The first difference value data of the quantization table,
Of the second difference value data and the third difference value data
For any of the difference value data,
A shift operation by the number of bits corresponding to the number of rounds indicated by the
Shifter and difference value data output from the shifter
And the previous synthesized waveform data to add the synthesized waveform data
A speech synthesizer comprising: an adder for outputting .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4255899A JP2970254B2 (en) | 1992-08-31 | 1992-08-31 | Speech synthesis method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4255899A JP2970254B2 (en) | 1992-08-31 | 1992-08-31 | Speech synthesis method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0683398A JPH0683398A (en) | 1994-03-25 |
JP2970254B2 true JP2970254B2 (en) | 1999-11-02 |
Family
ID=17285121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4255899A Expired - Fee Related JP2970254B2 (en) | 1992-08-31 | 1992-08-31 | Speech synthesis method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2970254B2 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62127897A (en) * | 1985-11-29 | 1987-06-10 | 沖電気工業株式会社 | Adpcm multichannel synthesizer |
JPH0769718B2 (en) * | 1988-03-22 | 1995-07-31 | 日本電気株式会社 | Speech synthesis method |
-
1992
- 1992-08-31 JP JP4255899A patent/JP2970254B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0683398A (en) | 1994-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02125597A (en) | Method of coding color-video signal and coding circuit | |
US5973629A (en) | Differential PCM system with frame word length responsive to magnitude | |
US20100017196A1 (en) | Method, system, and apparatus for compression or decompression of digital signals | |
JP2000286709A (en) | Modulation method, modulation device, demodulation method, demodulation device and recording medium | |
JPH03145335A (en) | Digital modulating method | |
JP2970254B2 (en) | Speech synthesis method and apparatus | |
JPH07199996A (en) | Device and method for waveform data encoding, decoding device for waveform data, and encoding and decoding device for waveform data | |
JPH10233696A (en) | Voice encoding method | |
JP2903986B2 (en) | Waveform synthesis method and apparatus | |
JPH064100A (en) | System and device for speech synthesis | |
JP3269089B2 (en) | Speech synthesizer | |
US4691359A (en) | Speech synthesizer with repeated symmetric segment | |
JPS623516A (en) | Digital filter circuit | |
JP3083119B2 (en) | Encoding / decoding circuit using adaptive delta modulation scheme | |
JP2993344B2 (en) | Waveform generation device, waveform storage device, waveform generation bubble, and waveform storage method | |
JPH03145887A (en) | Prediction coder | |
JP3008668B2 (en) | ADPCM decoder | |
JP3200875B2 (en) | ADPCM decoder | |
JPH03112283A (en) | Coding system for picture signal | |
JP2848610B2 (en) | Voice analysis and synthesis device | |
JP2584761B2 (en) | Predictive coding transmission system | |
JPS6358509B2 (en) | ||
JPS63118800A (en) | Waveform synthesization system | |
JPH10171780A (en) | Hadamard transformation coefficient predict0r | |
JPH0357000A (en) | Voice recorder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19990223 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19990727 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070827 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |