JPS6063593A - Waveform generator for electronic musical instrument - Google Patents

Waveform generator for electronic musical instrument

Info

Publication number
JPS6063593A
JPS6063593A JP58171350A JP17135083A JPS6063593A JP S6063593 A JPS6063593 A JP S6063593A JP 58171350 A JP58171350 A JP 58171350A JP 17135083 A JP17135083 A JP 17135083A JP S6063593 A JPS6063593 A JP S6063593A
Authority
JP
Japan
Prior art keywords
data
waveform
exponent
mantissa
musical instrument
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
Application number
JP58171350A
Other languages
Japanese (ja)
Other versions
JPH043556B2 (en
Inventor
秀雄 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Gakki Co Ltd
Original Assignee
Nippon Gakki Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Gakki Co Ltd filed Critical Nippon Gakki Co Ltd
Priority to JP58171350A priority Critical patent/JPS6063593A/en
Publication of JPS6063593A publication Critical patent/JPS6063593A/en
Publication of JPH043556B2 publication Critical patent/JPH043556B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 技術分野 この発明は電子楽器における波形発生装置に関し、特に
波形データを圧縮した表現形式で波形メモリに記憶し、
記憶容量の縮減を図ると共にその後の波形演算の簡単化
を図ったことに関する。
[Detailed Description of the Invention] Technical Field The present invention relates to a waveform generator for an electronic musical instrument, and particularly to a waveform generator for storing waveform data in a compressed representation format in a waveform memory.
This invention relates to reducing storage capacity and simplifying subsequent waveform calculations.

従来技術 従来、電子楽器の波形記憶装置においては波形デー°夕
の値をリニア又は対数表現形式でそのまま記憶するよう
にしていた。そのため、データのビット数が多くなり、
記憶容量が増す傾向にあった。
BACKGROUND OF THE INVENTION Conventionally, in waveform storage devices for electronic musical instruments, waveform data values are stored as they are in a linear or logarithmic representation format. Therefore, the number of bits of data increases,
There was a tendency for memory capacity to increase.

特に、楽音の発音開始から終了までの全波形又は複数周
期の波形のデータをメモリに記憶し、これを読み出すこ
とにより自然楽器音と同等の高品質の楽音波形信号を得
ようとする場合、1サンプル点分の波形データが多ピッ
トであると全体としてのメモリ容量は膨大なものとなっ
てしまうおそれがある。この点を避けるために1データ
当りのビット数を少なくすると、ダイナミックレンジが
狭くなってしまい、音質を損ねる原因となってしまう。
In particular, when attempting to obtain a high-quality musical waveform signal equivalent to that of a natural musical instrument by storing data of the entire waveform or multiple periods of waveforms from the start to the end of a musical tone in a memory and reading it out, 1 If the waveform data for the sample points has many pits, the overall memory capacity may become enormous. If the number of bits per piece of data is reduced in order to avoid this problem, the dynamic range will become narrower, resulting in a loss of sound quality.

また、波形データが多ビットであると、レベル制御のた
めの演算回路も大型化し、更に、ディジタルアナログ変
換器も大型化し、コスト高であった0 発明の目的 この発明は上述の欠点を除去することを目的とするもの
で、少ないビット数でありながら十分なダイナミックレ
ンジをとることのできるデータ表現形式でディジタル波
形データを処理し得るようにし、最終的に望み通りの波
形を確実に発生し得るようにした電子楽器における波形
発生装置を提供しようとするものである。
In addition, if the waveform data is multi-bit, the arithmetic circuit for level control becomes large, and the digital-to-analog converter also becomes large, resulting in high cost.Objective of the InventionThe present invention eliminates the above-mentioned drawbacks. The purpose is to process digital waveform data in a data representation format that has a small number of bits but has sufficient dynamic range, and ultimately generates the desired waveform reliably. It is an object of the present invention to provide a waveform generator for an electronic musical instrument.

発明の概要 コノ発明の特徴は、望みの波形の谷サンプル点に関して
隣接するサンプル点間の振幅値の差分データを仮数部と
指数部とから成る浮動小数点表示で夫々表わし、これを
波形メモリに記憶した点にある。そして、浮動型ディジ
タルアナログ変換器を用いて波形メモリの読み出し出力
に対応する仮数部データを指数部データに応じた比率で
アナログ変換することにより各サンプル点毎の差分デー
タの実数値をアナログ信号でめる。こうしてめられた差
分データのアナログ信号をアナログアキュムレータで累
積的に加減算することにより各サンプル点毎のアナログ
振幅値がめられる。波形振幅値そのものではなく差分デ
ータを記憶することにより1サンプル点当りのデータビ
ット数を縮減することができ、しかもその差分データを
浮動小数点表示で表わすことによりデータビット数を更
に縮減することができる。また、波形メモリから読み出
したデータに重みづけ演算を施す場合、浮動小数点型の
演算回路を用いることができるので、演算回路の構成を
簡単化することができる。
Summary of the Invention The feature of the present invention is to represent difference data of amplitude values between adjacent sample points regarding the valley sample point of a desired waveform in a floating point representation consisting of a mantissa part and an exponent part, and to store this in a waveform memory. That's the point. Then, by using a floating digital-to-analog converter to convert the mantissa data corresponding to the read output of the waveform memory into analog at a ratio according to the exponent data, the real value of the difference data for each sample point is converted into an analog signal. Melt. By cumulatively adding and subtracting the analog signal of the differential data determined in this way by an analog accumulator, an analog amplitude value for each sample point can be determined. By storing the difference data rather than the waveform amplitude value itself, the number of data bits per sample point can be reduced, and by representing the difference data in floating point representation, the number of data bits can be further reduced. . Further, when weighting calculation is performed on data read from the waveform memory, a floating point type calculation circuit can be used, so the configuration of the calculation circuit can be simplified.

また、浮動小数点型の差分データを実数値のアナログ信
号に変換した後に累積的加減算を行うので、そのための
演算回路として構成の簡単なアナログ7−+ユムレータ
を使用することができる。
Further, since cumulative addition and subtraction are performed after converting the floating point type difference data into a real-value analog signal, an analog 7-+ umulator with a simple configuration can be used as an arithmetic circuit for this purpose.

実施例 第1図において、波形メモリ10には1例えば第2図に
示すような発音開始から終了に至るまでの複数周期から
成る楽音波形の各サンプル点に関して隣接するサンプル
点間の振幅値の差分データを浮動小数点表示で表わした
データが記憶されている。波形サンプル点振幅値の一例
を拡大して示すと第3図のようであり、サンプル点0,
1,2゜3.4・・・の振幅値をA。g Al 1 A
2 ) A3 p A4・・・とすると、サンプル点1
,2,3,4・・・の差分データ△al、ΔFLts△
a3tΔa4・・・は夫々△a1=AI AO、△a2
 =A2 A1 gΔa、=A、−A2 、△a4 =
A4 A3 、−である。波形メモリ10では、このよ
うな各サンプル点に対応する差分データΔal、△a2
・・・のディジタル値(代表してΔaiで表わす)を△
ai=M−Bl!+ なる浮動小数点表示で分解して表わし、その仮数部Mの
データと指数部Eのデータを記憶している。
Embodiment In FIG. 1, the waveform memory 10 stores, for example, the difference in amplitude value between adjacent sample points for each sample point of a musical sound waveform consisting of multiple cycles from the start to the end of sound as shown in FIG. Data expressed in floating point representation is stored. An enlarged example of the waveform sample point amplitude value is shown in Figure 3, where sample points 0,
The amplitude value of 1,2°3.4... is A. g Al 1 A
2) If A3 p A4..., sample point 1
, 2, 3, 4... difference data △al, ΔFLts△
a3tΔa4... are respectively Δa1=AI AO, Δa2
=A2 A1 gΔa, =A, -A2, △a4 =
A4 A3, -. The waveform memory 10 stores differential data Δal, Δa2 corresponding to each sample point.
The digital value of ... (representatively expressed as Δai) is △
ai=M-Bl! + is decomposed and expressed in floating point representation, and the data of the mantissa part M and the data of the exponent part E are stored.

Bは基数であり、2進法においては一般にB=2である
B is the base number, and in binary system, B=2 in general.

波形メモリ10の記憶フォーマットの一例は第4図のよ
うであり、以上のようにして各サンプル点毎に確定され
る差分データΔaiの仮数部MのデータM。−Mnと指
数部EのデータE。−Enを各サンプル点アドレス0−
NK対応して夫々記憶している。
An example of the storage format of the waveform memory 10 is as shown in FIG. 4, in which data M of the mantissa part M of the difference data Δai determined for each sample point as described above. -Mn and data E of exponent part E. −En for each sample point address 0−
I remember each one in response to NK.

発生すべき楽音の音高を指定するための手段として鍵盤
11が用いられ、この鍵盤11で押圧された鍵を示す情
報(キーコードKC)がアドレスデータ発生器12に与
えられる。アドレスデータ発生器12は、鍵盤11で指
定された音高に応じて波形メモリ10から波形データを
読み出すための手段であり、指定された音高に対応する
レートで順次変化するサンプル点アドレスデータを発生
する。このアドレスデータ発生器12から発生されたサ
ンプル点アドレスデータは波形メモリ10のアドレス入
力に与えられ、そこに記憶されている各サンプル点アド
レスO−Nに対応する仮数部データM。−Mnと指数部
データE。−Enを順次読み出す。尚、アドレスデータ
発生器12は、鍵盤11で成る鍵が押圧されたとき瞬時
に発生するキーオンパルスKONPによって初期アドレ
ス(すなわちサンプル点アドレスO)にリセットされる
ようになっている。このアドレスデータ発生器12にお
けるアドレスデータ発生技術は公知の如何なる技術でも
用いることができるのでその詳細は特に示さない。
A keyboard 11 is used as a means for specifying the pitch of a musical tone to be generated, and information (key code KC) indicating the key pressed on the keyboard 11 is given to an address data generator 12. The address data generator 12 is a means for reading waveform data from the waveform memory 10 in accordance with the pitch specified on the keyboard 11, and reads sample point address data that sequentially changes at a rate corresponding to the specified pitch. Occur. The sample point address data generated from the address data generator 12 is applied to the address input of the waveform memory 10, and the mantissa data M corresponding to each sample point address O-N stored therein. -Mn and exponent data E. - Read out En sequentially. The address data generator 12 is reset to the initial address (ie, sample point address O) by a key-on pulse KONP that is generated instantaneously when a key on the keyboard 11 is pressed. Since any known technique can be used for the address data generation technique in the address data generator 12, its details will not be particularly shown.

波形メモリ10から読み出された仮数部データMと指数
部データEはレベル制御用の乗算器16及び加算器14
に夫々入力される。キースケーリング又はタッチ関数発
生器15は、キースケーリング用のレベル係数データを
押圧鍵のキーコードKCをパラメータとして所定のキー
スケーリング関数に従って発生する、もしくはタッチレ
スポンス制御用のレベル係数データをタッチ検出データ
をパラメータとして所定のタッチ関数に従って発生する
ものであり、このレベル係数データは、k = m・2
8 (但し、kはレベル係数)なる浮動小数点表示で表
わされた仮数部データmと指数部データeとから成る。
The mantissa data M and the exponent data E read from the waveform memory 10 are sent to a multiplier 16 and an adder 14 for level control.
are input respectively. The key scaling or touch function generator 15 generates level coefficient data for key scaling according to a predetermined key scaling function using the key code KC of the pressed key as a parameter, or generates level coefficient data for touch response control by generating touch detection data. It is generated according to a predetermined touch function as a parameter, and this level coefficient data is k = m・2
8 (where k is a level coefficient) consisting of mantissa data m and exponent data e expressed in floating point representation.

乗′x、器16は仮数部データM、m同士を乗算し、加
算器14は指数部データE 、 e同士を加算し、その
結果、「k・△aIJなる実数レベルでの重みづけ演算
と等価の浮動小数点レベルでの重みづけ演算を行う。す
なわち、 k・△ai=m・2°・M・21e:(m6M)、(2
e十z)であり、最右辺の第1項(m−’M )の乗算
を乗算器16で行い、第2項(2e+”)の指数部の加
算を加算器14で行う。
The multiplier 16 multiplies the mantissa data M and m, and the adder 14 adds the exponent data E and e, resulting in a weighted operation at the real number level of ``k・△aIJ''. Perform the equivalent weighting operation at the floating point level, i.e. k・△ai=m・2°・M・21e: (m6M), (2
The first term (m-'M) on the right-most side is multiplied by the multiplier 16, and the exponent part of the second term (2e+'') is added by the adder 14.

ところで、仮数部データMの数列を見ると、第1表に示
すように、指数部データEの各値に対応して最大値11
11・・・(オール″1#)から最小値0000・・・
(オール″0”)まで連続性を示すが、指数部データE
の値が異なるものの間では不連続である。すなわち、指
数部データEがrO」のときの仮数部データMはそのま
ま実数に対応しているが、指数部データEが「0」以外
のときは仮数部データMはそのままでは実数に対応して
いす、第1表の右欄に示すように仮数部データMの上位
ビットに“1″を付加したものが実数に対応しており、
こうすることによって指数部データEの値が異なるもの
の間での仮数部データMの数列の連続性が確保される。
By the way, looking at the sequence of mantissa data M, as shown in Table 1, the maximum value 11 corresponds to each value of exponent data E.
11... (all "1#") to minimum value 0000...
(All “0”) shows continuity, but the exponent data E
There is discontinuity between different values of . In other words, when the exponent part data E is "rO", the mantissa part data M directly corresponds to a real number, but when the exponent part data E is other than "0", the mantissa part data M does not directly correspond to a real number. As shown in the right column of Table 1, the mantissa data M with "1" added to the upper bit corresponds to the real number.
By doing so, the continuity of the sequence of mantissa data M is ensured between the exponent data E having different values.

第1表 そこで、第1図の例では、波形メモリ10から読み出さ
れた指数部データEの全ビットをオア回路16に入力し
、E\0ならばオア回路16から信号“1″を出力し、
これを波形メモリ10から読み出された仮数部データM
の最上位ピッ)MSBに相当するデータとして追加し、
乗算器16に入力するようにしている。同様に、レベル
係数の指数部データeの全ピットをオア回路17に入力
し。
Table 1 Therefore, in the example shown in FIG. 1, all bits of the exponent data E read from the waveform memory 10 are input to the OR circuit 16, and if E\0, the signal "1" is output from the OR circuit 16. death,
This is the mantissa data M read out from the waveform memory 10.
Add it as data corresponding to the MSB (most significant bit),
The signal is input to a multiplier 16. Similarly, all pits of the exponent part data e of the level coefficient are input to the OR circuit 17.

e\0ならばオア回路17から信号“1”を出力し、こ
れをレベル係数の仮数部データmの最上位ビットMSH
に相当するデータとして追加し、乗′X器16に入力す
るようにしている。
If e\0, the OR circuit 17 outputs a signal “1”, which is sent to the most significant bit MSH of the mantissa data m of the level coefficient.
is added as data corresponding to , and is input to the multiplier 16.

乗算器16から出力された仮数部データと加算器14か
ら出力された指数部データはフローティング(浮動型)
ディジタルアナログ変換器18に入力され、浮動小数点
表示からサンプル点振幅値の実数に変換されると共にア
ナログ変換される。
The mantissa data output from the multiplier 16 and the exponent data output from the adder 14 are floating (floating type).
The signal is input to a digital-to-analog converter 18, where it is converted from a floating point representation to a real number representing a sampling point amplitude value, and is also converted into an analog signal.

このフローティングディジタルアナログ変換器18は、
仮数部データをアナログ信号に変換するためのディジタ
ルアナログ変換器19と、変換された仮数部データのア
ナログ電圧を指数部データの値に応じた比率で分圧(レ
ベルシフト)する可変分圧器20とを含んでいる。可変
分圧器20では、浮動小数点表示の基数Bが「2」のと
き、指数部データの値が最大値「7」ならば2°=1の
分圧比。
This floating digital to analog converter 18 is
A digital-to-analog converter 19 for converting mantissa data into an analog signal, and a variable voltage divider 20 for dividing (level shifting) the analog voltage of the converted mantissa data at a ratio according to the value of exponent data. Contains. In the variable voltage divider 20, when the base B of the floating point representation is "2" and the value of the exponent part data is the maximum value "7", the voltage division ratio is 2°=1.

て浮動小数点表示の仮数部データを指数部データに応じ
た比率でアナログ変換し、これにより浮動小数点表示の
差分データ△ai (詳しくは係数にで重みづけした差
分データk・△ai) をアナログの実数値に変換する
The mantissa data in floating point representation is converted into analog data at a ratio according to the exponent data, and thereby the difference data △ai in floating point representation (more specifically, the difference data k・△ai weighted by the coefficients) is converted into analog data. Convert to real value.

ディジタルアナログ変換器18から出力されたアナログ
差分データはアナログアキュムレータ21に入力され、
累積的に加減算される。その結果、谷すンプル点i毎に Σ k・△ai i==0 なる波形振幅値のアナログ信号がアキュムレータ21で
得られる。例えば、第3図のサンプル点4では =k −A。
The analog difference data output from the digital-to-analog converter 18 is input to the analog accumulator 21,
Additions and subtractions are cumulative. As a result, the accumulator 21 obtains an analog signal having a waveform amplitude value of Σ k ·Δai i ==0 for each valley sample point i. For example, at sample point 4 in FIG. 3, =k - A.

(但し、△a、=Ao=Oとする) がまる。アキュムレータ21の出力はサウンドシステム
22に与えられる。
(However, △a, = Ao = O) is complete. The output of accumulator 21 is provided to a sound system 22.

上記実施例ではレベル係数には時間的に変化しないとし
ているが時間的に変化してもよい。また、レベル係数k
を実数のままで表わし、これを仮数部データMに掛けて
もよい。
In the above embodiment, it is assumed that the level coefficient does not change over time, but it may change over time. Also, the level coefficient k
may be expressed as a real number, and the mantissa data M may be multiplied by this.

上記実施例では、波形メモリー0において、各サンプル
点アドレス毎に指数部データEを記憶しているが、次の
ように各フレーム毎に記憶するようにしてもよい。記憶
すべき波形の全区間を時間軸に沿って複数のフレームに
分割し、かつ個々のフレーム内では指数部データEの値
が共通となるようにこのフレーム分割及び浮動小数表示
への分解を行う。第2図にはフレーム分割の一例が併記
されており、フレーム数が8であり、フレーム0〜7に
対応する指数部データEの値が夫々「7」〜「0」であ
る。この場合、波形メモリ10は第5図のように仮数部
データメモリ10Aと指数部データメモリIOBから成
り、仮数部データメモリ10Aには第6図(a)のよう
に各サンプル点に対応する仮数部データM。−Mnが谷
サンプル点アドレス0−Hに夫々記憶されており、指数
部データメモリ10Bには第6図(b)のように各フレ
ームに対応する指数部データE=7〜0とサンプル点ア
ドレス範囲データが各フレームアドレス0〜7に夫々記
憶されている。
In the above embodiment, the exponent part data E is stored in the waveform memory 0 for each sample point address, but it may be stored for each frame as follows. Divide the entire section of the waveform to be stored into multiple frames along the time axis, and perform this frame division and decomposition into floating point representation so that the value of exponent data E is common within each frame. . FIG. 2 also shows an example of frame division, in which the number of frames is 8, and the values of exponent part data E corresponding to frames 0 to 7 are "7" to "0", respectively. In this case, the waveform memory 10 consists of a mantissa data memory 10A and an exponent data memory IOB as shown in FIG. 5, and the mantissa data memory 10A has a mantissa corresponding to each sample point as shown in FIG. Department data M. -Mn are stored in the valley sample point addresses 0-H, respectively, and the exponent part data memory 10B has the exponent part data E=7 to 0 and the sample point address corresponding to each frame as shown in FIG. 6(b). Range data is stored in each frame address 0-7, respectively.

仮数部データメモリ10Aの記憶フォーマットについて
第6図(a)を参照して詳しく説明すると、フレームO
に対応するサンプル点アドレス0−Gには該フレーム0
の各サンプル点に対応する仮数部データM。〜IVIg
が夫々記憶され、 フレーム1に対応するサンプル点ア
ドレスG+1〜Hには該フレーム1の各サンプル点に対
応する仮数部データ町+1〜臨が夫々記憶され、以下図
示のように、各フレーム2〜7に対応するサンプル点ア
ドレスH+1〜I、H+1〜J 、J+1〜K 、 K
十1〜L、L+1〜M、M+1〜Nには夫々のサンプル
点に対応する仮数部データMh+1〜Mnが夫々記憶さ
れる。ここで、G−NはG<H< I < J< K 
< L < M< Nなる関数の任意の整数であり。
The storage format of the mantissa data memory 10A will be explained in detail with reference to FIG. 6(a).
The sample point address 0-G corresponding to the corresponding frame 0
Mantissa data M corresponding to each sample point. ~IVIg
are stored in the sample point addresses G+1 to H corresponding to frame 1, and mantissa data cho +1 to 2 corresponding to each sample point of frame 1 are stored, respectively, and as shown below, each frame 2 to Sample point addresses corresponding to 7 H+1~I, H+1~J, J+1~K, K
Mantissa data Mh+1 to Mn corresponding to the respective sample points are stored in 11 to L, L+1 to M, and M+1 to N, respectively. Here, GN is G<H<I<J<K
< L < M < N is any integer of the function.

rN+IJが全サンプル数に相当する。そして、指数部
データメモ!710Bでは、第6図(b)に示すように
フレームO〜7に対応する各フレームアドレスO〜7に
は各フレームに対応する値の指数部データE=7〜0が
夫々記憶される。メモリ10Bの各フレームアドレスに
は更にそのフレームに対応するサンプル点アドレスの範
囲を特定するためのデータが夫々記憶されている。この
サンプル点アドレス範囲データは一例として各フレーム
の最終のサンプル点アドレスG、H,I、J、に、L、
 IVf 、 Nを示すデータである。
rN+IJ corresponds to the total number of samples. And exponent data memo! In 710B, as shown in FIG. 6(b), exponent part data E=7 to 0 of the value corresponding to each frame is stored in each frame address O to 7 corresponding to frames O to 7, respectively. Each frame address in the memory 10B further stores data for specifying the range of sample point addresses corresponding to that frame. This sample point address range data includes, for example, the final sample point address G, H, I, J, L,
This is data showing IVf, N.

第5図において、カウンタ23と比較器24はフレーム
アドレスデータを発生するためのものである。カウンタ
23のカウント出力がフレームアドレスデータとして指
数データメモリ10Bのプアドレス入力に与えられ、そ
こに記憶されている各フレームアドレスO〜7に対応す
る指数部データE=7〜0とサンプル点アドレス範囲デ
ータ(最終アドレスデータ)を順次読み出す。メモ1月
OBから読み出されたサンプル点アドレス範囲データが
比較器24の一方入力に与えられ、その他方入力にはア
ドレスデータ発生器12からのサンプル点アドレスデー
タが与えられる。比較器24は両人力が一致したとき一
致出力EQから信号“1”を出力し、これがカウンタ2
6のカウント入力に与えられる。カウンタ26は、キー
オンパルスKONPによって発音開始時に初期アドレス
「0」にリセットされる。従って最初はフレームアドレ
スOからフレーム0に対応する指数部データE−7とサ
ンプル点アドレス範囲データGがメモ1月DBから読み
出される。サンプル点アドレスが0,1゜2.3・・・
と順次変化してゆき、フレーム0における最終のサンプ
ル点アドレスGになったとき比較器24から信号u 1
71が出力され、カウンタ26が1カウントアツプされ
る。こうしてフレームアドレスデータが「1」に切換わ
り、フレーム1に対応するデータがメモリ10Bから読
み出されるようになり、サンプル点アドレスがフレーム
1の最終アドレスHに到達するまではカウンタ26のカ
ウント内容は変化しない。このように、アドレスデータ
発生器12から発生されるサンプル点アドレスデータが
同じフレームに属している間はカウンタ23の内容は変
化せず、そのフレームに対応するフレームアドレスデー
タを出力し、サンプル点アドレスデータの所属フレーム
が変わる毎にフレームアドレスデータが変化する。従っ
て、仮数部データメモリ10Aから読み出された各サン
プル点の仮数部データM(bio−Mn)とそれと同時
に指数部データメモリ10Bから読み出された指数部デ
ータE(7〜0)との組合せにより各サンプル点の波形
振幅値の実数を特定することができる。尚、カウンタ2
6のカウント出力が最大値「7」になったときアンド回
路25の条件が成立し、カウンタ26のカウント動作を
ストップする。このようにフレームアドレスに対応して
指数部データEを記憶するようにすると、波形メモリ1
0の記憶構成を一層縮減することができる。
In FIG. 5, counter 23 and comparator 24 are for generating frame address data. The count output of the counter 23 is given as frame address data to the address input of the exponent data memory 10B, and the exponent part data E=7 to 0 corresponding to each frame address O to 7 stored therein and the sample point address range Read data (final address data) sequentially. The sample point address range data read from the memo January OB is applied to one input of the comparator 24, and the sample point address data from the address data generator 12 is applied to the other input. The comparator 24 outputs a signal “1” from the coincidence output EQ when the two forces match, and this is output to the counter 2.
6 count input. The counter 26 is reset to the initial address "0" at the start of sound generation by the key-on pulse KONP. Therefore, first, exponent part data E-7 and sample point address range data G corresponding to frame 0 from frame address O are read from the memo DB. The sample point address is 0.1°2.3...
When the final sample point address G in frame 0 is reached, the signal u 1 is output from the comparator 24.
71 is output, and the counter 26 is incremented by one. In this way, the frame address data is switched to "1", the data corresponding to frame 1 is read from the memory 10B, and the count contents of the counter 26 change until the sample point address reaches the final address H of frame 1. do not. In this way, while the sample point address data generated from the address data generator 12 belongs to the same frame, the contents of the counter 23 do not change, and the frame address data corresponding to that frame is output, and the sample point address The frame address data changes every time the frame to which the data belongs changes. Therefore, the combination of the mantissa data M (bio-Mn) of each sample point read from the mantissa data memory 10A and the exponent data E (7 to 0) read from the exponent data memory 10B at the same time. The real number of the waveform amplitude value of each sample point can be specified by In addition, counter 2
When the count output of 6 reaches the maximum value "7", the condition of the AND circuit 25 is satisfied and the counting operation of the counter 26 is stopped. If the exponent part data E is stored in correspondence with the frame address in this way, the waveform memory 1
The storage configuration of 0 can be further reduced.

上記実施例では波形メモリ10に全発音期間の楽音波形
の各サンプル点に関する振幅値差分データを浮動小数点
表示で記憶するようにしているが、1周期波形又は任意
の複数周期波形のデータを同様の形式で記憶するように
してもよい。
In the above embodiment, the waveform memory 10 stores the amplitude value difference data regarding each sample point of the musical sound waveform during the entire sound generation period in floating point representation. It may also be stored in a format.

更にこの発明の波形発生装置は、上述のような楽音波形
に限らず、エンベロープ波形その他の任意の波形の発生
に応用することができる。
Further, the waveform generator of the present invention is not limited to the above-mentioned musical waveforms, but can be applied to the generation of envelope waveforms and other arbitrary waveforms.

発明の効果 以上の通りこの発明によれば、各サンプル点間の振幅値
の差分データを浮動小数点表示で表わすようにしたので
、1サンプル点当りの波形データのビット数を大幅に縮
減することができると共に十分なダイナミックレンジも
確保することができる。従って、波形メモリの記憶量を
縮減することができると共に、浮動小数点型の演算回路
により重みづけ用演算回路も簡単化することができ、経
済的である。また、ディジタルアナログ変換器は仮数部
と指数部とから成る少数ビットのディジタルデータを入
力する浮動型のものを用いればよいのでその回路構成を
小型化かつ低コスト化することができる。更に、差分デ
ータの累算はアナログアキュムレータによって行うので
アキュムレータの構成が簡単となる。
Effects of the Invention As described above, according to the present invention, the difference data of amplitude values between each sample point is expressed in floating point representation, so the number of bits of waveform data per sample point can be significantly reduced. At the same time, a sufficient dynamic range can be secured. Therefore, the amount of storage in the waveform memory can be reduced, and the weighting arithmetic circuit can be simplified by using a floating point type arithmetic circuit, which is economical. Further, since the digital-to-analog converter may be of a floating type that inputs a small number of bits of digital data consisting of a mantissa part and an exponent part, the circuit configuration can be made smaller and lower in cost. Furthermore, since the differential data is accumulated by an analog accumulator, the structure of the accumulator is simplified.

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

第1図はこの発明の一実施例を示す電子楽器全体構成の
電気的ブロック図、第2図は同実施例における波形メモ
リに記憶すべき波形の一例として全発音期間にわたる楽
音波形を示す図、第3図は波形サンプル点振幅値の一例
を拡大して示す図、第4図は同実施例における波形メモ
リのデータ記憶フォーマットの一例を示す図、第5図は
波形メモリの変更例を示すブロック図、第6図は第5図
の波形メモリのデータ記憶フォーマットの−fPf−示
す図、である。 10・・・波形メモリ、11・・・錐盤、12・・・ア
ドレスデータ発生器、18・・・フローティングディジ
タルアナログ変換器、21・・・アナログアキュムレー
タ、13,14・・・重みづけ演算用の乗算器及び加算
器。 出願人 日本楽器製造株式会社 代理人 飯塚義仁 1%AQ 特開昭GO−63593(7) 1 −絆
FIG. 1 is an electrical block diagram of the overall configuration of an electronic musical instrument showing one embodiment of the present invention, and FIG. 2 is a diagram showing a musical sound waveform over the entire sound generation period as an example of the waveform to be stored in the waveform memory in the same embodiment. FIG. 3 is an enlarged view of an example of the waveform sample point amplitude value, FIG. 4 is a view showing an example of the data storage format of the waveform memory in the same embodiment, and FIG. 5 is a block diagram showing an example of changing the waveform memory. FIG. 6 is a diagram illustrating -fPf- the data storage format of the waveform memory of FIG. 10... Waveform memory, 11... Conical disk, 12... Address data generator, 18... Floating digital to analog converter, 21... Analog accumulator, 13, 14... For weighting calculation multipliers and adders. Applicant: Nippon Musical Instruments Manufacturing Co., Ltd. Agent: Yoshihito Iizuka 1% AQ JP-A-Sho GO-63593 (7) 1 - Kizuna

Claims (1)

【特許請求の範囲】 1、望みの波形の各サンプル点に関して隣接するサンプ
ル点間の振幅値の差分データを係数部と指数部とから成
る浮動小数点表示で夫々表わし、予め記憶した波形メモ
リと、この波形メモリの読み出し出力に対応する仮数部
データを指数部データに応じた比率でアナログ変換する
浮動型ディジタルアナログ変換器と、アナログ変換され
た信号を累積的に加減算することにより前記各サンプル
点振幅値に対応するアナログ信号を得るアナログアキュ
ムレータとを具えた電子楽器における波形発生装置。 2、前記浮動型ディジタルアナログ変換器で変換される
べき前記波形メモリの読み出し出力に対応する仮数部デ
ータと指数部データは、前記波形メモリから読み出した
仮数部データと指数部データを適宜重みづけしたデータ
である特許請求の範囲第1項記載の電子楽器における波
形発生装置。 3、前記重みづけのための係数が仮数部と指数部とから
成る浮動小数点表示で表わされており、仮数部データ同
士を乗算し、指数部データ同士を加算することにより前
記重みづけが行われる特許請求の範囲第2項記載の電子
楽器における波形発生装置。 4、前記望みの波形が、楽音波形である特許請求の範囲
第1項記載の電子楽器における波形発生装置。 5、前記望みの波形が、エンベロープ波形である特許請
求の範囲第1項記載の電子楽器における波形発生装置。
[Scope of Claims] 1. A waveform memory in which the difference data of amplitude values between adjacent sample points for each sample point of a desired waveform is represented in a floating point representation consisting of a coefficient part and an exponent part, and is stored in advance; A floating digital-to-analog converter converts the mantissa data corresponding to the read output of the waveform memory into analog at a ratio according to the exponent data; A waveform generator for an electronic musical instrument, comprising an analog accumulator that obtains an analog signal corresponding to a value. 2. The mantissa data and exponent data corresponding to the readout output of the waveform memory to be converted by the floating digital-to-analog converter are obtained by appropriately weighting the mantissa data and exponent data read from the waveform memory. A waveform generating device for an electronic musical instrument according to claim 1, which is data. 3. The weighting coefficients are expressed in a floating point representation consisting of a mantissa and an exponent, and the weighting is performed by multiplying the mantissa data and adding the exponent data. A waveform generating device for an electronic musical instrument according to claim 2. 4. The waveform generator for an electronic musical instrument according to claim 1, wherein the desired waveform is a musical sound waveform. 5. The waveform generator for an electronic musical instrument according to claim 1, wherein the desired waveform is an envelope waveform.
JP58171350A 1983-09-19 1983-09-19 Waveform generator for electronic musical instrument Granted JPS6063593A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58171350A JPS6063593A (en) 1983-09-19 1983-09-19 Waveform generator for electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58171350A JPS6063593A (en) 1983-09-19 1983-09-19 Waveform generator for electronic musical instrument

Publications (2)

Publication Number Publication Date
JPS6063593A true JPS6063593A (en) 1985-04-11
JPH043556B2 JPH043556B2 (en) 1992-01-23

Family

ID=15921573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58171350A Granted JPS6063593A (en) 1983-09-19 1983-09-19 Waveform generator for electronic musical instrument

Country Status (1)

Country Link
JP (1) JPS6063593A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02223995A (en) * 1989-02-26 1990-09-06 Kawai Musical Instr Mfg Co Ltd Electronic musical instrument
JPH0320796A (en) * 1989-01-26 1991-01-29 Kawai Musical Instr Mfg Co Ltd Representation system for musical sound information
US5220523A (en) * 1990-03-19 1993-06-15 Yamaha Corporation Wave form signal generating apparatus
US5290965A (en) * 1990-03-20 1994-03-01 Yamaha Corporation Asynchronous waveform generating device for use in an electronic musical instrument

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5543552A (en) * 1978-09-25 1980-03-27 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5687098A (en) * 1979-12-17 1981-07-15 Casio Computer Co Ltd Piezoelectric buzzer sounddpressure control system in musical tone generator
JPS5789796A (en) * 1980-11-25 1982-06-04 Kawai Musical Instr Mfg Co Generator for envelope of electronic musical instrument

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5543552A (en) * 1978-09-25 1980-03-27 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5687098A (en) * 1979-12-17 1981-07-15 Casio Computer Co Ltd Piezoelectric buzzer sounddpressure control system in musical tone generator
JPS5789796A (en) * 1980-11-25 1982-06-04 Kawai Musical Instr Mfg Co Generator for envelope of electronic musical instrument

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0320796A (en) * 1989-01-26 1991-01-29 Kawai Musical Instr Mfg Co Ltd Representation system for musical sound information
JPH02223995A (en) * 1989-02-26 1990-09-06 Kawai Musical Instr Mfg Co Ltd Electronic musical instrument
US5220523A (en) * 1990-03-19 1993-06-15 Yamaha Corporation Wave form signal generating apparatus
US5290965A (en) * 1990-03-20 1994-03-01 Yamaha Corporation Asynchronous waveform generating device for use in an electronic musical instrument

Also Published As

Publication number Publication date
JPH043556B2 (en) 1992-01-23

Similar Documents

Publication Publication Date Title
JP3293240B2 (en) Digital signal processor
US4036096A (en) Musical tone waveshape generator
US4219880A (en) Signal-processing and conversion systems
US4246823A (en) Waveshape generator for electronic musical instruments
EP0177934B1 (en) Musical tone generating apparatus
US4612838A (en) Electronic musical instrument
EP0217357B1 (en) Waveform normalizer for electronic musical instrument
JP2605916B2 (en) Waveform signal generator
JPH0145078B2 (en)
JPS6063593A (en) Waveform generator for electronic musical instrument
JPH07199996A (en) Device and method for waveform data encoding, decoding device for waveform data, and encoding and decoding device for waveform data
JPS59168493A (en) Musical tone waveform generator
JP2725524B2 (en) Waveform data compression method and waveform data reproducing apparatus
JP3527396B2 (en) Waveform recording device and waveform reproducing device
JPS61124994A (en) Musical sound signal generator
JP2900076B2 (en) Waveform generator
US4549459A (en) Integral and a differential waveshape generator for an electronic musical instrument
JP3538512B2 (en) Data converter
US5745743A (en) Digital signal processor integrally incorporating a coefficient interpolator structured on a hardware basis
JPH0519799A (en) Voice synthesizing circuit
JP2900078B2 (en) Waveform recording / playback method and waveform playback device
JP2900077B2 (en) Waveform recording / playback method and waveform playback device
JP2699886B2 (en) Music control information generator
JPS6278599A (en) Musical tone signal generator
JPS6213120Y2 (en)