JPH06266359A - Waveform generating device for electronic musical instrument - Google Patents
Waveform generating device for electronic musical instrumentInfo
- Publication number
- JPH06266359A JPH06266359A JP5052709A JP5270993A JPH06266359A JP H06266359 A JPH06266359 A JP H06266359A JP 5052709 A JP5052709 A JP 5052709A JP 5270993 A JP5270993 A JP 5270993A JP H06266359 A JPH06266359 A JP H06266359A
- Authority
- JP
- Japan
- Prior art keywords
- waveform
- value
- coefficient
- address signal
- coefficients
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は、波形メモリにより楽
音波形を発生する電子楽器に用いられる波形発生装置に
関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a waveform generator used in an electronic musical instrument for generating a tone waveform by a waveform memory.
【0002】[0002]
【従来の技術】波形メモリを用いて楽音波形を発生する
電子楽器用波形発生装置として、波形メモリに記憶され
ている楽音波形の各サンプル点波形振幅値間をLagr
ange補間法により補間するものが知られている(特
公昭59−17838号公報)。このような電子楽器用
波形発生装置においては、発生すべき楽音の周波数に対
応する周波数情報Fが周波数情報メモリより出力され、
該周波数情報Fが累算器によって累算されて、その累算
値qFの整数部Iおよび小数部lが出力される。整数部
Iは、カウンタによってI,I+1,I+2,I+3の
計数値(I+p)(p=0,1,2,3)とされた後波
形メモリに供給される。波形メモリは、所望の音色の楽
音波形の各サンプル点波形振幅値fI(I=0,1,
2,3,…,m)を記憶しており、カウンタからの計数
値(I+p)を読み出しアドレスとして、記憶している
各サンプル点波形振幅値f(I+p)を順次読み出す。一
方、累算値qFの小数部lは係数メモリに取り込まれ
る。この係数メモリは、lの値に対応する4つの係数値
Ak(k=0,1,2,3)を記憶しており、所定のカ
ウンタによる計数値kによって指定される係数値Akを
出力する。そして、この係数値Akをそれぞれ対応する
上記サンプル点波形振幅値f(I+p)と乗算した後、それ
ぞれ累算することによって波形メモリに記憶されている
各サンプル点波形振幅値の間を補間した楽音波形信号が
形成される。2. Description of the Related Art As a waveform generator for an electronic musical instrument that uses a waveform memory to generate a musical tone waveform, Lagr is provided between waveform amplitude values of each sample point of the musical tone waveform stored in the waveform memory.
There is known one that interpolates by the angle interpolation method (Japanese Patent Publication No. 59-17838). In such a waveform generator for an electronic musical instrument, frequency information F corresponding to the frequency of the musical sound to be generated is output from the frequency information memory,
The frequency information F is accumulated by the accumulator, and the integer part I and the decimal part l of the accumulated value qF are output. The integer part I is supplied to the waveform memory after the count value (I + p) (p = 0, 1, 2, 3) of I, I + 1, I + 2, I + 3 is obtained by the counter. The waveform memory stores waveform amplitude values f I (I = 0, 1, 1) of each sample point of a tone waveform of a desired tone color.
2, 3, ..., M) are stored, and the stored sample point waveform amplitude values f (I + p) are sequentially read using the count value (I + p) from the counter as a read address. On the other hand, the fractional part 1 of the accumulated value qF is taken into the coefficient memory. This coefficient memory stores four coefficient values A k (k = 0, 1, 2, 3) corresponding to the value of l, and stores the coefficient value A k specified by the count value k by a predetermined counter. Output. Then, the coefficient values A k are multiplied by the corresponding sample point waveform amplitude values f (I + p) , respectively, and then the accumulated values are accumulated to obtain the distance between the sample point waveform amplitude values stored in the waveform memory. An interpolated tone waveform signal is formed.
【0003】ここで、波形メモリを、サンプリング周波
数fSに従って変化するアドレス信号により、基本周波
数(ピッチ)f0の波形が得られるように読み出した場
合に生じる折返し成分は nfS±f0(n=1,2,…) に表れる。ここで、波形メモリの読出し時における1サ
ンプリング時間毎のアドレス変化量が「1」でない場合
(周波数情報F≠1の場合)には、再生された波形に1
/2fS以上の周波数成分が残ってしまい、折返し成分
として発生する。上述の電子楽器に用いられるピッチ非
同期音源においては、サンプリング周波数fSでサンプ
リングされた波形が、ピッチ非同期の一定システム周波
数fSYSによってリサンプリングされた状態で読み出さ
れるため、このリサンプリング時に上記折返し成分が更
に低域周波数に折返り、雑音が発生する。上述の電子楽
器用波形発生装置における補間方法は、このようなリサ
ンプリングによる再度の折返しを減少させるものであ
る。Here, the aliasing component generated when the waveform memory is read so that a waveform of the fundamental frequency (pitch) f 0 is obtained by the address signal that changes according to the sampling frequency f S is nf S ± f 0 (n = 1, 2, ...). Here, when the amount of address change for each sampling time at the time of reading the waveform memory is not "1" (when the frequency information F ≠ 1), 1 is added to the reproduced waveform.
A frequency component of / 2f S or more remains, which is generated as a folding component. In the pitch asynchronous sound source used in the electronic musical instrument described above, the waveform sampled at the sampling frequency f S is read out in a state of being resampled by the pitch asynchronous non-uniform system frequency f SYS , and therefore the aliasing component is generated during the resampling. Turns back to a lower frequency range, and noise is generated. The above-mentioned interpolation method in the electronic musical instrument waveform generator reduces the aliasing due to such resampling.
【0004】[0004]
【発明が解決しようとする課題】ところで、上述した従
来の電子楽器用波形発生装置において、各係数値A
0(l)〜A3(l)を求める場合、乗算器等の規模に応
じて適当なビット数に量子化していた。図5(a),
(b)は、上述した電子楽器用波形発生装置における補
間の理想的な条件における周波数特性およびインパルス
応答を示す図である。図5(a)においては、サンプリ
ング周波数fSの整数倍付近のゲインが「0」となって
いる。これは、図5(b)に示すように、計算式から求
めた各係数値A0(l)〜A3(l)の和が「1」となっ
ているためである。しかしながら、実際には、上述した
ように、各係数値A0(l)〜A3(l)は有限ビット数
に量子化されるため、ビットの最下位が繰り上げもしく
は繰り下げられて、係数値A0(l)〜A3(l)の和が
「1」とはならない。従って、図6に示すように、サン
プリング周波数fSの整数倍付近のゲインが「0」とな
らない。このため、折返しノイズが発生するという問題
があった。By the way, in the above-described conventional waveform generator for electronic musical instruments, each coefficient value A
When 0 (l) to A 3 (l) is obtained, quantization is performed to an appropriate number of bits according to the scale of the multiplier or the like. FIG. 5 (a),
(B) is a figure which shows the frequency characteristic and impulse response on the ideal conditions of interpolation in the above-mentioned waveform generator for electronic musical instruments. In FIG. 5A, the gain near the integral multiple of the sampling frequency f S is “0”. This is because, as shown in FIG. 5B, the sum of the coefficient values A 0 (l) to A 3 (l) obtained from the calculation formula is “1”. However, in reality, as described above, since each coefficient value A 0 (l) to A 3 (l) is quantized into a finite number of bits, the least significant bit is moved up or down so that the coefficient value A The sum of 0 (l) to A 3 (l) does not become "1". Therefore, as shown in FIG. 6, the gain near the integral multiple of the sampling frequency f S does not become “0”. Therefore, there is a problem that folding noise occurs.
【0005】この発明は、このような背景の下になされ
たもので、サンプリング周波数の整数倍付近における折
返しノイズの発生を減少させることができる電子楽器用
波形発生装置を提供することを目的とする。The present invention has been made under such a background, and an object thereof is to provide a waveform generator for an electronic musical instrument which can reduce the occurrence of aliasing noise in the vicinity of an integral multiple of the sampling frequency. .
【0006】[0006]
【課題を解決するための手段】この発明による電子楽器
用波形発生装置は、発生すべき楽音の周波数に対応して
値が順次変化し、かつそれぞれ複数ピットの整数部と小
数部とからなるアドレス信号を発生するアドレス信号発
生手段と、所望の楽音波形についての各サンプル点の波
形振幅値を記憶した波形メモリを含み、上記アドレス信
号の整数部に基づき該整数部の値に対応したサンプル点
およびこのサンプル点と順次連続するサンプル点の合計
n(nは3以上の整数)サンプル点分の波形振幅値を読
みだして出力する波形発生手段と、前記アドレス信号の
小数部がとり得る各値に対応して、それぞれn個分の係
数を記憶した係数テーブルを含み、前記アドレス信号発
生部から発生されたアドレス信号の小数部の値に対応す
るn個の係数を該テーブルから読み出して出力する係数
発生手段と、前記波形発生手段から出力されるnサンプ
ル点分の波形振幅値と前記係数発生手段から出力される
n個の係数とをそれぞれ対応するもの同士を乗算すると
共に、この各乗算値を加算合計して波形信号を出力する
補間手段とを備えた電子楽器用波形発生装置において、
前記係数テーブルに記憶される各n個分の係数は、その
n個の係数の和が前記アドレス信号の小数部がとり得る
各値について、同一の「所定の一定値」となるように設
定したことを特徴としている。SUMMARY OF THE INVENTION A waveform generator for an electronic musical instrument according to the present invention has an address whose value sequentially changes in correspondence with the frequency of a musical tone to be generated and which is composed of an integer part and a decimal part of a plurality of pits. Address signal generating means for generating a signal, and a waveform memory storing the waveform amplitude value of each sample point for a desired tone waveform, based on the integer part of the address signal, the sampling point corresponding to the value of the integer part, and Waveform generating means for reading and outputting the waveform amplitude value of the total n (n is an integer of 3 or more) sample points of the sample points successively consecutive to this sample point, and the respective values that the fractional part of the address signal can take. Correspondingly, it includes a coefficient table in which n coefficients are stored, and n coefficients corresponding to the fractional value of the address signal generated from the address signal generator are From the table to output the coefficient, and a waveform amplitude value corresponding to n sample points output from the waveform generating means and n coefficients output from the coefficient generating means are respectively multiplied. In addition, in a waveform generator for an electronic musical instrument, which is provided with an interpolating means for adding and summing the respective multiplied values and outputting a waveform signal,
Each of the n coefficients stored in the coefficient table is set such that the sum of the n coefficients becomes the same "predetermined constant value" for each value that the fractional part of the address signal can take. It is characterized by that.
【0007】[0007]
【作用】上記構成によれば、係数の和が常に「所定の一
定値」となるため、サンプリング周波数の整数倍付近に
おけるゲインが下がり、折返しノイズが減少する。According to the above construction, since the sum of the coefficients is always a "predetermined constant value", the gain in the vicinity of an integral multiple of the sampling frequency is lowered and the aliasing noise is reduced.
【0008】[0008]
【実施例】以下、図面を参照して、この発明の一実施例
について説明する。図1はこの発明の一実施例による電
子楽器用波形発生装置を用いた電子楽器の構成を示すブ
ロック図である。この図において、1は押鍵検出回路で
あり、複数の鍵を有する鍵盤(図示せず)の各鍵が押鍵
されると、押鍵状態であることを示すキーオン信号KO
N、および該鍵に対応するキーコードKCを出力する。
2は周波数ナンバメモリであり、各鍵の音高を周波数ナ
ンバFに対応付けるテーブルを記憶しており、押鍵検出
回路から出力されるキーコードKCに対応した周波数ナ
ンバFを出力する。3はアキュムレータであり、クロッ
クパルスφ1を受けて周波数ナンバFを所定の時間間隔
で繰り返し累算し、その累算値qF(q=1,2,3
…)の整数部Iおよび小数部xを出力する。4はカウン
タであり、クロックパルスφ2を受けてアキュムレータ
3から出力される累算値pFの整数部Iを取り込み、計
数値(I+p)(p=0,1,2,3)として出力す
る。このカウンタ4はクロックパルスφ4が入力される
毎に、計数値をI→(I+1)→(I+2)→(I+
3)と変化させる。5は波形メモリであり、楽音波形の
各サンプル点波形振幅値fI(I=0,1,2,…,
m)を記憶している。波形メモリ5は、カウンタ4から
計数値(I+p)が供給されると、この計数値(I+
p)を読出しアドレスとして、記憶されている波形振幅
値f(I+p)を順次読出す。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. 1 is a block diagram showing the configuration of an electronic musical instrument using a waveform generating apparatus for an electronic musical instrument according to an embodiment of the present invention. In the figure, reference numeral 1 denotes a key-depression detection circuit, which is a key-on signal KO indicating that a key is depressed when each key of a keyboard (not shown) having a plurality of keys is depressed.
N and the key code KC corresponding to the key are output.
Reference numeral 2 denotes a frequency number memory, which stores a table in which the pitch of each key is associated with the frequency number F, and outputs the frequency number F corresponding to the key code KC output from the key depression detection circuit. An accumulator 3 receives a clock pulse φ 1 and repeatedly accumulates a frequency number F at a predetermined time interval, and the accumulated value qF (q = 1, 2, 3).
Output the integer part I and the decimal part x. A counter 4 receives the clock pulse φ 2 and takes in the integer part I of the accumulated value pF output from the accumulator 3 and outputs it as a count value (I + p) (p = 0, 1, 2, 3). The counter 4 changes the count value by I → (I + 1) → (I + 2) → (I +) every time the clock pulse φ 4 is input.
Change to 3). Reference numeral 5 is a waveform memory, and waveform amplitude values f I (I = 0, 1, 2, ...
m) is remembered. When the count value (I + p) is supplied from the counter 4, the waveform memory 5 receives this count value (I + p).
The stored waveform amplitude value f (I + p) is sequentially read using p) as a read address.
【0009】一方、6はカウンタであり、クロックパル
スφ2が入力されることにより計数値k(k=0,1,
2,3)をリセットし、クロックパルスφ4が入力され
ることによって計数値kを0→1→2→3と変化させて
出力する。7は係数メモリであり、アキュムレータ3か
ら累算値pFの小数部x(0≦x≦1)を取り込む。こ
の係数メモリ7は、小数部xの値に対応する4つの係数
値A0(x)〜A3(x)を記憶しており、カウンタ6か
ら計数値kが読み出しアドレス信号として供給され、入
力される小数部xに対応して係数kによって指定される
係数値Ak(x)を出力する。On the other hand, 6 is a counter, the count value by the clock pulses phi 2 is input k (k = 0, 1,
2, 3) are reset and the clock pulse φ 4 is input to change the count value k in the order of 0 → 1 → 2 → 3 and output. Reference numeral 7 is a coefficient memory, which takes in the decimal part x (0 ≦ x ≦ 1) of the accumulated value pF from the accumulator 3. The coefficient memory 7 stores four coefficient values A 0 (x) to A 3 (x) corresponding to the value of the fractional part x, and the count value k is supplied from the counter 6 as a read address signal and input. The coefficient value A k (x) specified by the coefficient k corresponding to the fractional part x is output.
【0010】8は乗算器であり、波形メモリ5の出力で
ある波形振幅値f(I+p)および係数メモリ7の出力であ
る係数値Ak(x)が入力され、これらを乗算して波形
信号Ak(x)・f(I+p)を出力する。9はアキュムレー
タであり、クロックパルスφ2が入力されることにより
クリアされ、クロックパルスφ3が入力されることによ
り乗算器8の出力する波形信号Ak(x)・f(I+p)を累
算して出力する。10はラッチ回路であり、クロックパ
ルスφ1が入力されるとアキュムレータ9の出力する波
形信号3Σp,k=0Ak(x)・f(I+p)をラッチして出力す
る。11はエンベロープ波形発生器であり、キーオン信
号KONを受けてエンベロープ波形EVを発生する。1
2は乗算器であり、ラッチ回路10の出力信号にエンベ
ロープ波形EVを乗算し、サウンドシステム13に出力
する。サウンドシステム13は、乗算器12から出力さ
れる楽音波形を発音する。ここで、図2に示すように、
クロックパルスφ1は時刻t1、クロックパルスφ2は時
刻t2、クロックパルスφ3は時刻t3,t4,t5,t6、
およびクロックパルスφ4は時刻t4,t5,t6に発生す
るようになっている。Reference numeral 8 denotes a multiplier which receives the waveform amplitude value f (I + p) which is the output of the waveform memory 5 and the coefficient value A k (x) which is the output of the coefficient memory 7 and multiplies them. The waveform signal A k (x) · f (I + p) is output. An accumulator 9 is cleared by inputting the clock pulse φ 2 and outputs the waveform signal A k (x) · f (I + p) output from the multiplier 8 by inputting the clock pulse φ 3. Accumulate and output. A latch circuit 10 latches and outputs the waveform signal 3 Σ p, k = 0 A k (x) · f (I + p) output from the accumulator 9 when the clock pulse φ 1 is input. An envelope waveform generator 11 receives the key-on signal KON and generates an envelope waveform EV. 1
Reference numeral 2 denotes a multiplier, which multiplies the output signal of the latch circuit 10 by the envelope waveform EV and outputs it to the sound system 13. The sound system 13 produces the tone waveform output from the multiplier 12. Here, as shown in FIG.
Clock pulse φ 1 is time t 1 , clock pulse φ 2 is time t 2 , clock pulse φ 3 is time t 3 , t 4 , t 5 , t 6 ,
The clock pulse φ 4 is generated at the times t 4 , t 5 and t 6 .
【0011】上述のような構成を有する電子楽器の動作
について説明する前に、まず、上記係数メモリ7に予め
記憶する係数の算出の仕方について図3のフローチャー
トを参照して説明する。Before describing the operation of the electronic musical instrument having the above-described structure, first, a method of calculating coefficients stored in the coefficient memory 7 will be described with reference to the flowchart of FIG.
【0012】ステップS1において、まず、小数部xと
して0を設定する。次にステップS2に進み、以下の式
により、小数部xに対応する4つの係数値A0(x)〜
A3(x)を求める。 A0(x)=−x(x−1)(x−2)/6 …(1) A1(x)=(x+1)(x−1)(x−2)/2 …(2) A2(x)=−(x+1)x(x−2)/2 …(3) A3(x)=(x+1)x(x−1)/6 …(4) 例えば、小数部xの値が0である場合は、係数値A
0(0)=0、A1(0)=1、A2(0)=0、A
3(0)=0となる。In step S1, first, 0 is set as the decimal part x. Next, in step S2, the four coefficient values A 0 (x) -corresponding to the fractional part x are calculated by the following equation.
Find A 3 (x). A 0 (x) =-x (x-1) (x-2) / 6 (1) A 1 (x) = (x + 1) (x-1) (x-2) / 2 (2) A 2 (x) = - (x + 1) x (x-2) / 2 ... (3) a 3 (x) = (x + 1) x (x-1) / 6 ... (4) for example, the value of the fraction x If 0, coefficient value A
0 (0) = 0, A 1 (0) = 1, A 2 (0) = 0, A
3 (0) = 0.
【0013】次に、ステップS3に進み、算出した係数
値A0(x)〜A3(x)をmビット長に量子化する。こ
の場合、端数は四捨五入する。次に、ステップS4に進
み、4つの係数値A0(x)〜A3(x)の合計値sum
を算出する。ここで、例えば小数部xの値が0の場合、
合計値sumは sum=A0(0)+A1(0)+A2(0)+A3(0) =0+1+0+0=1 となる。そして、ステップS5に進み、合計値sumの
値が1であるか否かを判断する。小数部xの値が0の場
合、合計値sumの値は1となるので、ステップS7に
進む。そして、ステップS7において係数メモリ7に、
算出した4つの係数値A0(0)〜A3(0)を、このと
きの小数部xの値に対応するアドレスに書き込む。次
に、ステップS8に進み、小数部xの値が1以上か否か
を判断する。小数部xの値が0の場合、この判断結果は
「NO」となるので、ステップS9に進む。そしてステ
ップS9において、小数部xの値に、小数部xの分解能
である一定の値△xを加算し、再びステップS2に戻
る。Next, in step S3, the calculated coefficient values A 0 (x) to A 3 (x) are quantized into an m-bit length. In this case, the fractions are rounded off. Next, the process proceeds to step S4, and the sum sum of the four coefficient values A 0 (x) to A 3 (x) is sum.
To calculate. Here, for example, when the value of the decimal part x is 0,
The total value sum is sum = A 0 (0) + A 1 (0) + A 2 (0) + A 3 (0) = 0 + 1 + 0 + 0 = 1. Then, the process proceeds to step S5, and it is determined whether or not the value of the total value sum is 1. When the value of the decimal part x is 0, the value of the total value sum is 1, so the process proceeds to step S7. Then, in step S7, in the coefficient memory 7,
The calculated four coefficient values A 0 (0) to A 3 (0) are written to the address corresponding to the value of the decimal part x at this time. Next, in step S8, it is determined whether the value of the fractional part x is 1 or more. If the value of the fractional part x is 0, the result of this determination is "NO", so the flow proceeds to step S9. Then, in step S9, a constant value Δx that is the resolution of the decimal part x is added to the value of the decimal part x, and the process returns to step S2.
【0014】以下、小数部xが1になるまで、ステップ
S2〜S9を繰り返し実行し、小数部xを△xずつイン
クリメントしながら、そのときの小数部xの値に対応す
る係数値A0(x)〜A3(x)を順次求める。このステ
ップS2〜S9の実行において、ステップS5の判断結
果が「NO」の場合、すなわち合計値sumが1でない
場合には、ステップS6に進む。そして、ステップS6
において、4つの係数値A0(x)〜A3(x)のうち絶
対値が最も大きいものに、1から合計値sumを引いた
値を加算して、合計値sumが1となるようにする。例
えば、合計値sumが1より値dだけ小さく、係数値A
0(x)〜A3(x)のうち係数値A2(x)の絶対値が
最大であったとすると、係数値A2(x)に値dを加算
する。それにより、係数値A0(x)〜A3(x)の合計
値sumが値dだけ増加し、1となる。そして、ステッ
プS8の判断結果が「YES」となると、すなわち、小
数部xの値が1となると、当該処理を終了する。以上の
ようにして、小数部xの各値に対して算出された各係数
値A0(x)〜A3(x)(0≦x≦1)は、係数メモリ
7に書き込まれる。この結果、xの各値に対応してそれ
ぞれ記憶される1組の係数値A0(x)〜A3(x)の和
は、いずれも「1」となる。Thereafter, steps S2 to S9 are repeatedly executed until the fractional part x becomes 1, and the coefficient value A 0 (corresponding to the value of the fractional part x at that time is incremented while the fractional part x is incremented by Δx. x) to A 3 (x) are sequentially obtained. In the execution of steps S2 to S9, if the determination result of step S5 is "NO", that is, if the total value sum is not 1, the process proceeds to step S6. Then, step S6
In the above, in the four coefficient values A 0 (x) to A 3 (x), the one having the largest absolute value is added with the value obtained by subtracting the total value sum from 1 so that the total value sum becomes 1. To do. For example, the total value sum is smaller than 1 by the value d, and the coefficient value A
If the absolute value of the coefficient value A 2 (x) among 0 (x) to A 3 (x) is the maximum, the value d is added to the coefficient value A 2 (x). As a result, the total value sum of the coefficient values A 0 (x) to A 3 (x) is increased by the value d to be 1. Then, when the determination result of step S8 is “YES”, that is, when the value of the decimal part x is 1, the process is ended. The coefficient values A 0 (x) to A 3 (x) (0 ≦ x ≦ 1) calculated for each value of the decimal part x as described above are written in the coefficient memory 7. As a result, the sum of the set of coefficient values A 0 (x) to A 3 (x) stored corresponding to each value of x is “1”.
【0015】次に、この実施例による波形補間回路を用
いた電子楽器の動作について説明する。なお、本実施例
は係数メモリ7を除いて構成上前記特公昭59−178
38号公報記載のものと同様であるため、詳細な説明は
省略する。ある鍵が押鍵されると、その鍵に対応する周
波数ナンバFが周波数ナンバメモリ2から読み出され、
アキュムレータ3に供給される。アキュムレータ3はク
ロックパルスφ1が入力されると周波数ナンバFを累算
し、その累算値pFの整数部Iをカウンタ4に、小数部
xを係数メモリ7に出力する。カウンタ4はクロックパ
ルスφ2が入力されると整数部Iを取り込み、クロック
パルスφ4が入力される毎に計数値をIからI+3まで
変化させる。この計数値I、(I+1)、(I+2)、
(I+3)がアドレス信号として波形メモリ5に入力さ
れ、波形メモリ5から波形振幅値fI、f( I+1)、f
(I+2)、f(I+3)が順次読み出される。これと同期して、
カウンタ6はクロックパルスφ4が入力される毎に計数
値kを0から3まで変化させる。係数メモリ7は、前述
した図3に示すフローに従って、予め係数メモリ7に記
憶されている各係数値のうち、小数部xの値に対応する
4つの係数値A0(x)、A1(x)、A2(x)、A
3(x)を、計数値kの変化に同期して順次出力する。
そして、乗算器8は、波形振幅値fIと係数値A
0(x)、f(I+1)とA1(x)、f(I+2)とA2(x)、
およびf(I+3)とA3(x)を各々乗算し、乗算結果Ak
(x)・f(I+p)をアキュムレータ9に出力する。乗算
結果Ak(x)・f(I+p)はアキュムレータ9により累算
され、この累算結果である波形信号3Σp,k=0Ak(x)
・f(I+p)は、ラッチ回路10によりクロックパルスφ1
毎にラッチされる。そして、乗算器12によってエンベ
ロープ波形発生器11から出力されるエンベロープ波形
EVと乗算され、サウンドシステム13に供給されて楽
音として発音される。Next, the operation of the electronic musical instrument using the waveform interpolation circuit according to this embodiment will be described. In this embodiment, except for the coefficient memory 7, the construction is described in JP-B-59-178.
Since it is similar to that described in Japanese Patent No. 38, the detailed description is omitted. When a certain key is pressed, the frequency number F corresponding to the key is read from the frequency number memory 2,
It is supplied to the accumulator 3. When the clock pulse φ 1 is input, the accumulator 3 accumulates the frequency number F, and outputs the integer part I of the accumulated value pF to the counter 4 and the decimal part x to the coefficient memory 7. The counter 4 takes in the integer part I when the clock pulse φ 2 is input, and changes the count value from I to I + 3 every time the clock pulse φ 4 is input. This count value I, (I + 1), (I + 2),
(I + 3) is input to the waveform memory 5 as an address signal, and the waveform amplitude values f I , f ( I + 1) , f are input from the waveform memory 5.
(I + 2) and f (I + 3) are sequentially read. In sync with this,
The counter 6 changes the count value k from 0 to 3 every time the clock pulse φ 4 is input. According to the flow shown in FIG. 3, the coefficient memory 7 has four coefficient values A 0 (x) and A 1 (corresponding to the value of the decimal part x among the coefficient values stored in the coefficient memory 7 in advance. x), A 2 (x), A
3 (x) is sequentially output in synchronization with the change of the count value k.
Then, the multiplier 8 calculates the waveform amplitude value f I and the coefficient value A
0 (x), f (I + 1) and A 1 (x), f (I + 2) and A 2 (x),
And f (I + 3) and A 3 (x) are respectively multiplied, and the multiplication result A k
Output (x) · f (I + p) to the accumulator 9. The multiplication result A k (x) · f (I + p) is accumulated by the accumulator 9, and the waveform signal 3 Σ p, k = 0 A k (x) which is the accumulation result is accumulated.
・ F (I + p) is clock pulse φ 1 by the latch circuit 10.
It is latched every time. Then, the multiplier 12 multiplies the envelope waveform EV output from the envelope waveform generator 11 and supplies it to the sound system 13 to be sounded as a musical tone.
【0016】以上のようにして、補間された状態でラッ
チ回路10から出力される波形信号の周波数特性は、図
5(a)に示すような特性になる。図6に示す従来の補
間回路の特性では、サンプリング周波数fSの整数倍周
辺は完全に「0」とならなかったが、本発明の場合は常
に「0」となる。また、図4に、サンプリング周波数f
S周辺の周波数特性を示す。この図における点線は、従
来のように係数値の量子化の際に束縛条件(補正条件)
を設けない場合の周波数特性を示し、実線は本願のよう
に束縛条件を設ける場合の周波数特性を示す。この図に
示すように、束縛条件(補正条件)のない場合はサンプ
リング周波数fSの周辺において完全に減衰していない
が、束縛条件のある場合は完全に減衰している。As described above, the frequency characteristic of the waveform signal output from the latch circuit 10 in the interpolated state has the characteristic shown in FIG. 5 (a). In the characteristic of the conventional interpolation circuit shown in FIG. 6, the value around the integral multiple of the sampling frequency f S is not completely “0”, but in the case of the present invention, it is always “0”. Further, in FIG. 4, the sampling frequency f
The frequency characteristics around S are shown. The dotted line in this figure is a constraint condition (correction condition) when quantizing coefficient values as in the past.
Shows the frequency characteristic in the case of not providing, and the solid line shows the frequency characteristic in the case of providing the constraint condition as in the present application. As shown in this figure, when there is no constraint condition (correction condition), the attenuation is not complete around the sampling frequency f S , but when there is a constraint condition, it is completely attenuated.
【0017】図4に示すように、この実施例において
は、50kHZのサンプリング周波数fSでサンプリング
を行った場合を示している。従って、40kHZの帯域
(2/4fS〜3/4fS)では減衰が大きく、40kH
Zより低い帯域(1/4fS〜2/4fS)では減衰が小
さくなる。従って、1/4fS〜2/3fSの周波数成分
が余り大きくならないような、0〜5kHZの基本ピッ
チを有する波形を記憶することが適当である。一般に楽
器では、発音する楽音の基本ピッチが数10HZ〜2k
HZの範囲にあるため、上記条件に適合する。そのた
め、本実施例による補間回路を用いることにより、楽音
の基本ピッチの折返しが生じる辺りのノイズが効果的に
除去されることとなる。As shown in FIG. 4, in this embodiment shows a case of performing the sampling at a sampling frequency f S of 50kH Z. Therefore, the bandwidth of 40kH Z (2 / 4f S ~3 / 4f S) the attenuation is large, 40KH
In less than Z bands (1 / 4f S ~2 / 4f S) attenuation decreases. Therefore, 1 / 4f S ~2 / 3f S such frequency components is not too large, it is appropriate to store the waveform having a fundamental pitch of 0~5kH Z. In general, in the musical instrument, the number the basic pitch of the tone to be generated is 10H Z ~2k
Since it is in the range of H Z , it meets the above conditions. Therefore, by using the interpolation circuit according to the present embodiment, the noise around the turn-around of the basic pitch of the musical tone is effectively removed.
【0018】なお、上記実施例では、各係数値A
0(x)〜A3(x)の和が小数部xのどの値に対しても
常に「1」となるように設定した場合について説明した
が、この発明はこれに限定されるものではなく、小数部
xのどの値に対しても係数値A0(x)〜A3(x)の和
が常に同じ値になるように設定すればよいものである。
例えば、前記(1)〜(4)式のそれぞれにおいて、右辺に同
一の値、例えば「0.8」を乗算するようにして係数値
A0(x)〜A3(x)を求めるようにしてもよい。この
場合には、係数値A0(x)〜A3(x)の和は常に
「0.8」となるものである。In the above embodiment, each coefficient value A
The case where the sum of 0 (x) to A 3 (x) is always set to “1” for any value of the decimal part x has been described, but the present invention is not limited to this. The sum of the coefficient values A 0 (x) to A 3 (x) may be set to be always the same for any value of the decimal part x.
For example, in each of the equations (1) to (4), the coefficient values A 0 (x) to A 3 (x) are calculated by multiplying the right side by the same value, for example, “0.8”. May be. In this case, the sum of the coefficient values A 0 (x) to A 3 (x) is always “0.8”.
【0019】また、上記実施例では、4サンプル点分の
波形振幅値と4つの係数を用いて補間処理を行う場合に
ついて説明したが、これに限らず、3サンプル点分の波
形振幅値と3つの係数を用いた補間処理や5サンプル点
分以上の波形振幅値と5以上の係数を用いた補間処理を
行う場合についても、同様に実施することができるもの
である。In the above embodiment, the case where the interpolation processing is performed by using the waveform amplitude values of four sample points and four coefficients has been described. However, the present invention is not limited to this, and the waveform amplitude values of three sample points and three coefficients are used. The same can be applied to the case where the interpolation processing using one coefficient or the interpolation processing using the waveform amplitude value of 5 sample points or more and the coefficient of 5 or more is performed.
【0020】[0020]
【発明の効果】以上説明したように、この発明による電
子楽器用波形発生装置によれば、楽音波形の補間に用い
られる複数の係数値が、各々の和が常に同じ値の「一定
値」となるように補正された状態で用意されているの
で、サンプリング周波数の整数倍付近におけるゲインが
下がり、折返しノイズが減少するという効果がある。As described above, according to the waveform generating apparatus for an electronic musical instrument of the present invention, a plurality of coefficient values used for the interpolation of a musical tone waveform are "constant values" whose sums are always the same value. Since it is prepared in such a state as to be corrected, the gain in the vicinity of an integral multiple of the sampling frequency is reduced, and the aliasing noise is reduced.
【図1】 この発明の一実施例による電子楽器用波形発
生装置を用いた電子楽器の構成を示すブロック図であ
る。FIG. 1 is a block diagram showing a configuration of an electronic musical instrument using a waveform generating device for an electronic musical instrument according to an embodiment of the present invention.
【図2】 同実施例において用いられるクロックパルス
のタイミングチャートである。FIG. 2 is a timing chart of clock pulses used in the embodiment.
【図3】 同実施例による電子楽器用波形発生装置の係
数演算の処理を示すフローチャートである。FIG. 3 is a flowchart showing a coefficient calculation process of the waveform generator for an electronic musical instrument according to the embodiment.
【図4】 係数の量子化の際に束縛条件を設けた場合と
設けない場合の、サンプリング周波数付近のゲインを示
す図である。FIG. 4 is a diagram showing a gain in the vicinity of a sampling frequency with and without a constraint condition when quantizing a coefficient.
【図5】 (a)は波形補間回路の理想的な条件におけ
る周波数特性を示す図、(b)は従来の波形補間回路の
理想的な条件におけるインパルス応答を示す図である。5A is a diagram showing frequency characteristics of a waveform interpolation circuit under ideal conditions, and FIG. 5B is a diagram showing impulse responses of a conventional waveform interpolation circuit under ideal conditions.
【図6】 従来の波形補間回路の周波数特性を示す図で
ある。FIG. 6 is a diagram showing frequency characteristics of a conventional waveform interpolation circuit.
2……周波数ナンバメモリ、3,9……アキュムレー
タ、5……波形メモリ、7……係数メモリ、8……乗算
器。2 ... Frequency number memory, 3, 9 ... Accumulator, 5 ... Waveform memory, 7 ... Coefficient memory, 8 ... Multiplier.
Claims (1)
順次変化し、かつそれぞれ複数ビットの整数部と小数部
とからなるアドレス信号を発生するアドレス信号発生手
段と、 所望の楽音波形についての各サンプル点の波形振幅値を
記憶した波形メモリを含み、上記アドレス信号の整数部
に基づき該整数部の値に対応したサンプル点およびこの
サンプル点と順次連続するサンプル点の合計n(nは3
以上の整数)サンプル点分の波形振幅値を読み出して出
力する波形発生手段と、 前記アドレス信号の小数部がとり得る各値に対応して、
それぞれn個分の係数を記憶した係数テーブルを含み、
前記アドレス信号発生部から発生されたアドレス信号の
小数部の値に対応するn個の係数を該テーブルから読み
出して出力する係数発生手段と、 前記波形発生手段から出力されるnサンプル点分の波形
振幅値と前記係数発生手段から出力されるn個の係数と
をそれぞれ対応するもの同士を乗算すると共に、この各
乗算値を加算合成して波形信号を出力する補間手段とを
備えた電子楽器用波形発生装置において、 前記係数テーブルに記憶される各n個分の係数は、その
n個の係数の和が前記アドレス信号の小数部がとり得る
各値について、同一の「所定の一定値」となるように設
定したことを特徴とする電子楽器用波形発生装置。1. An address signal generating means for generating an address signal whose value sequentially changes corresponding to a frequency of a musical tone to be generated and which is composed of an integer part and a decimal part of a plurality of bits, and a desired musical tone waveform. Including a waveform memory that stores the waveform amplitude value of each sample point, and based on the integer part of the address signal, the total of the sample points corresponding to the value of the integer part and the sample points successively succeeding this sample point (n is n Three
(The above integer) Corresponding to each of the values that can be taken by the fractional part of the address signal, the waveform generating means for reading out and outputting the waveform amplitude value for the sampling points,
Each includes a coefficient table that stores n coefficients,
Coefficient generating means for reading out n coefficients corresponding to the value of the fractional part of the address signal generated from the address signal generating section and outputting the coefficient, and a waveform for n sample points output from the waveform generating means. An electronic musical instrument provided with an interpolating means for multiplying corresponding amplitude values and n coefficients output from the coefficient generating means, and for adding and synthesizing the respective multiplied values to output a waveform signal. In the waveform generator, each of the n coefficients stored in the coefficient table has the same “predetermined constant value” for each value that the sum of the n coefficients can have in the decimal part of the address signal. A waveform generator for an electronic musical instrument, characterized by being set as follows.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5052709A JP2800623B2 (en) | 1993-03-12 | 1993-03-12 | Coefficient storage method and musical tone waveform generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5052709A JP2800623B2 (en) | 1993-03-12 | 1993-03-12 | Coefficient storage method and musical tone waveform generator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06266359A true JPH06266359A (en) | 1994-09-22 |
JP2800623B2 JP2800623B2 (en) | 1998-09-21 |
Family
ID=12922429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5052709A Expired - Fee Related JP2800623B2 (en) | 1993-03-12 | 1993-03-12 | Coefficient storage method and musical tone waveform generator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2800623B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5465020A (en) * | 1977-11-01 | 1979-05-25 | Nippon Gakki Seizo Kk | Waveform generator of electronic musical instruments |
JPH03282596A (en) * | 1990-03-30 | 1991-12-12 | Kawai Musical Instr Mfg Co Ltd | Musical sound signal processor |
-
1993
- 1993-03-12 JP JP5052709A patent/JP2800623B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5465020A (en) * | 1977-11-01 | 1979-05-25 | Nippon Gakki Seizo Kk | Waveform generator of electronic musical instruments |
JPH03282596A (en) * | 1990-03-30 | 1991-12-12 | Kawai Musical Instr Mfg Co Ltd | Musical sound signal processor |
Also Published As
Publication number | Publication date |
---|---|
JP2800623B2 (en) | 1998-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4715257A (en) | Waveform generating device for electronic musical instruments | |
US4246823A (en) | Waveshape generator for electronic musical instruments | |
EP0217357B1 (en) | Waveform normalizer for electronic musical instrument | |
JPS6242515B2 (en) | ||
JPS6140119B2 (en) | ||
JPH06266359A (en) | Waveform generating device for electronic musical instrument | |
JP3435702B2 (en) | Music generator | |
JP3527396B2 (en) | Waveform recording device and waveform reproducing device | |
JP2790160B2 (en) | Waveform generation device and waveform storage device | |
JP2608938B2 (en) | Waveform interpolation device | |
JP2683975B2 (en) | Tone generator | |
JPS62245434A (en) | Waveform generating device for electronic musical instrument | |
JP2669073B2 (en) | PCM sound source device | |
JPH0782337B2 (en) | Electronic musical instrument | |
JP2900076B2 (en) | Waveform generator | |
JPH039478B2 (en) | ||
US20010024478A1 (en) | Signal receiving circuit and signal receiving method | |
JPH07244487A (en) | Music signal generating device | |
JPH02138831A (en) | Pitch detection | |
JP2671648B2 (en) | Digital data interpolator | |
JPH0519767A (en) | Musical tone synthesis device | |
JPH05134674A (en) | Waveform generating device | |
JPH0782338B2 (en) | Electronic musical instrument | |
JPH0652480B2 (en) | Input device for electronic musical instruments | |
JPH06175664A (en) | Musical sound waveform storing method and musical sound waveform generating device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19980609 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090710 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090710 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100710 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100710 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110710 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110710 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120710 Year of fee payment: 14 |
|
LAPS | Cancellation because of no payment of annual fees |