JPH02173793A - Envelope waveform generating device - Google Patents

Envelope waveform generating device

Info

Publication number
JPH02173793A
JPH02173793A JP63329699A JP32969988A JPH02173793A JP H02173793 A JPH02173793 A JP H02173793A JP 63329699 A JP63329699 A JP 63329699A JP 32969988 A JP32969988 A JP 32969988A JP H02173793 A JPH02173793 A JP H02173793A
Authority
JP
Japan
Prior art keywords
data
circuit
output
envelope waveform
signal
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
JP63329699A
Other languages
Japanese (ja)
Other versions
JPH0769694B2 (en
Inventor
Tetsuji Ichiki
哲二 市来
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP63329699A priority Critical patent/JPH0769694B2/en
Publication of JPH02173793A publication Critical patent/JPH02173793A/en
Publication of JPH0769694B2 publication Critical patent/JPH0769694B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To generate envelope waveform data exactly as a user images by performing arithmetic for generating the envelope waveform data after shifting a target value temporarily. CONSTITUTION:The arithmetic which shifts the target value until the smallest target value becomes 0 and generates the envelope waveform data according to the shifted target value is carried out. Then the generated envelope waveform data is shifted by the same quantity in the opposite direction to compensate the shift in the target value. In this case, there are initial level data IL, attack level data Al, 1st decay level data 1DL, and 2nd decay level data 2DL as parameter data for setting levels. Namely, the target values IL, AL, 1DL, and 2DL are shifted temporarily up to a maximum and then the envelope waveform data are generated. Consequently, specially when an envelope is varied curvedly, the envelope is generated exactly as the user images.

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は電子楽器等に用いられるエンベロープ波形発
生装置に関する。
DETAILED DESCRIPTION OF THE INVENTION "Field of Industrial Application" The present invention relates to an envelope waveform generator used in electronic musical instruments and the like.

「従来の技術」 従来のエンベロープ波形発生装置として、特開昭63−
125990号公報(発明の名称;エンベロープ制御装
置)に記載されるものが知られている。
``Prior art'' As a conventional envelope waveform generator,
The one described in Japanese Patent No. 125990 (title of invention: envelope control device) is known.

「発明が解決しようとする課題」 ところで、上記従来の装置にあっては、エンベロープ演
算時におけるエンベロープ波形データの大きさく平均レ
ベル)がエンベロープ波形毎に異なるので、特に、ユー
ザが画面によってエンベロープを設定するような場合に
画面で予定したエンベロープと実際のエンベロープとが
異なる場合が生じる問題があった。
``Problem to be Solved by the Invention'' By the way, in the conventional device described above, since the size and average level of the envelope waveform data during envelope calculation differs for each envelope waveform, it is particularly difficult for the user to set the envelope depending on the screen. There was a problem in which the envelope scheduled on the screen and the actual envelope may differ in such cases.

この発明は上述した事情に鑑みてなされたもので、ユー
ザのイメージから大きく異なることがないエンベロープ
波形を発生することができるエンベロープ波形発生装置
を提供することを目的としている。
The present invention has been made in view of the above-mentioned circumstances, and it is an object of the present invention to provide an envelope waveform generator that can generate an envelope waveform that does not differ greatly from the user's image.

「課題を解決するための手段」 この発明は、第1のレートデータを繰り返し演算し、そ
の演算結果が第1の目標値に達すると、次に第2のレー
トデータを繰り返し演算し、その演算結果が第2の目標
値に達すると、次に第3のレートデータを繰り返し演算
し、上記演算を繰り返すことによってエンベロープ波形
データを形成するエンベロープ波形発生装置において、
前記目標値を、最小の目標値の値がOとなる量たけ目標
値が小さくなる方向ヘシフトする第1のシフト手段と、
形成されたエンベロープ波形データを、該データの値が
大きくなる方向へ前記第1のシフト手段のシフト量だけ
シフトする第2のシフト手段とを具備することを特徴と
している。
"Means for Solving the Problem" This invention repeatedly calculates first rate data, and when the calculation result reaches a first target value, then repeatedly calculates second rate data, and When the result reaches the second target value, the envelope waveform generator repeatedly calculates the third rate data and forms envelope waveform data by repeating the above calculation,
a first shifting means for shifting the target value in a direction in which the target value becomes smaller by an amount such that the minimum target value becomes O;
It is characterized by comprising a second shift means for shifting the formed envelope waveform data in a direction in which the value of the data increases by the shift amount of the first shift means.

「作用」 この発明によれば、最小の目標値の値がOとなる量だけ
目標値をシフトし、そして、シフトした目標値に基づい
てエンベロープ波形データを形成する演算を行う。次に
、形成されたエンベロープ波形データを逆方向に同量シ
フトして目標値のシフト分を補正する。
"Operation" According to the present invention, the target value is shifted by an amount such that the minimum target value becomes O, and then calculation is performed to form envelope waveform data based on the shifted target value. Next, the formed envelope waveform data is shifted in the opposite direction by the same amount to correct the shift amount of the target value.

「実施例」 以下、図面を参照してこの発明の一実施例を詳細に説明
する。
"Embodiment" Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

第1図は、この発明の一実施例によるエンベロープ波形
発生装置10の構成を示すブロック図、第2図はこのエ
ンベロープ波形発生装置10を適用した電子楽器の一構
成例を示すブロック図である。
FIG. 1 is a block diagram showing the configuration of an envelope waveform generator 10 according to an embodiment of the present invention, and FIG. 2 is a block diagram showing an example of the configuration of an electronic musical instrument to which this envelope waveform generator 10 is applied.

まず、第2図について説明すると、鍵盤11は発生すべ
き楽音の音高を指定するための複数のキーを備えており
、この鍵盤11で押圧されたキーが押鍵検出回路12で
検出され、また、押鍵の速度がタッチ検出回路17で検
出される。押鍵検出回路12は検出した押圧鍵キーコー
ドKCとキーオン信号KONを出力し、キーコードKC
を楽音信号発生回路13に、キーオン信号KONをエン
ベロープ波形発生装置10にそれぞれ出力する。
First, referring to FIG. 2, the keyboard 11 is equipped with a plurality of keys for specifying the pitch of musical tones to be generated, and a key pressed on the keyboard 11 is detected by a key press detection circuit 12. Further, the speed of key depression is detected by the touch detection circuit 17. The pressed key detection circuit 12 outputs the detected pressed key key code KC and a key-on signal KON, and outputs the detected pressed key key code KC and the key-on signal KON.
is outputted to the musical tone signal generation circuit 13, and a key-on signal KON is outputted to the envelope waveform generation device 10, respectively.

タッチ検出回路17は、検出した押鍵速度を示すタッチ
データTDをエンベロープパラメータ発生回路15へ出
力する。楽音信号発生回路13は、与えられたキーコー
ドKCに対応する音高を有し、音色選択回路14で選択
された音色のディジタル楽音信号CDを発生する。
The touch detection circuit 17 outputs touch data TD indicating the detected key press speed to the envelope parameter generation circuit 15. The musical tone signal generation circuit 13 generates a digital musical tone signal CD having a tone pitch corresponding to the given key code KC and having a tone selected by the tone color selection circuit 14.

エンベロープパラメータ発生回路15は、エンベロープ
波形発生装置IOで発生するエンベロープ波形(第3図
(イ)、第4図参照)のアタック部A1第1デイケイ部
ID、第2デイケイ部2D、レリース部R1フォーシン
グダンプ部Fの各部分の変化レートやレベルを設定する
各種パラメータデータを、音色選択回路14で選択され
た音色およびタッチ検出回路17から出力されるタッチ
データTDに応じて発生する。変化レートを設定するパ
ラメータデータには、アタックレートデータAR。
The envelope parameter generation circuit 15 generates an attack part A1, a first decay part ID, a second decay part 2D, and a release part R1 of the envelope waveform (see FIGS. 3(a) and 4) generated by the envelope waveform generator IO. Various parameter data for setting the change rate and level of each part of the sing dump section F are generated according to the tone selected by the tone color selection circuit 14 and the touch data TD output from the touch detection circuit 17. Parameter data for setting the change rate includes attack rate data AR.

第1デイケイレートデータIDR,第2デイケイレート
データ2DR,レリースレートデータRR。
First decay rate data IDR, second decay rate data 2DR, release rate data RR.

フォーシングダンプレートデータFDRがある。There is forcing dump rate data FDR.

これらの変化レートデータは、第3図(イ)および第4
図に示すエンベロープ波形の各部分の傾きを決定するデ
ータである。レベルを設定するパラメータデータには、
イニシャルレベルデータIL。
These change rate data are shown in Figures 3 (a) and 4.
This is data that determines the slope of each part of the envelope waveform shown in the figure. Parameter data for setting the level includes:
Initial level data IL.

アタックレベルデータAL、第1デイケイレベルデータ
IDL、第2デイケイレベルデータ2DLがある。これ
らのレベルデータは、エンベロープ波形の各変化点のレ
ベルを決定する(第3図(イ)参照)。ここで、各レベ
ルデータIL、AI7.IDL、2DLはいずれも、図
に示すように基準レベルLbからの減衰量を表している
。なお、エンベロープのレベルが基準レベルL bの場
合にエンベロープ波形データがA1212“0”となる
。さらに、他のパラメータとして、アクツクレベル、第
1デイケイレベル、第2デイケイレベル、イニシャルレ
ベルの内でどのレベルが最大であるか、言い替えれば、
同時に出力されるレベルデータAL、IDL、2DL、
IL中でどのパラメータが最大であるかを示す最大値選
択データMO,M1(2ビ、ト)がある。この最大値選
択データMO,Mlと最大値をとるレベルとの関係は次
の第1表の通りである。
There are attack level data AL, first decay level data IDL, and second decay level data 2DL. These level data determine the level at each change point of the envelope waveform (see FIG. 3(a)). Here, each level data IL, AI7. Both IDL and 2DL represent the amount of attenuation from the reference level Lb, as shown in the figure. Note that when the envelope level is the reference level Lb, the envelope waveform data becomes A1212 "0". Furthermore, as another parameter, which level is the maximum among the activation level, the first decay level, the second decay level, and the initial level, in other words,
Level data AL, IDL, 2DL, which are output at the same time,
There is maximum value selection data MO, M1 (2 bits) indicating which parameter in IL is the maximum. The relationship between the maximum value selection data MO, Ml and the level at which the maximum value is taken is shown in Table 1 below.

第1表 ベローブ波形発生装置lOに与えられる。なお、上記の
各パラメータデータはいずれも対数データである。
Table 1 is given for bellow waveform generator lO. Note that each of the above parameter data is logarithmic data.

エンベロープ波形発生装置10は、与えられた各種パラ
メータデータとキーオン信号KONに基づきエンベロー
プ波形データEDを発生する。乗算器16は、ディジタ
ル楽音信号GDにエンベロープ波形データEDを乗算す
ることにより楽音信号に音量振幅エンベロープを付与す
る。このディジタル楽音信号はディジタル/アナログ変
換回路18でアナログ楽音信号に変換され、サウンドシ
ステム19へ供給される。
The envelope waveform generator 10 generates envelope waveform data ED based on various parameter data and a key-on signal KON. The multiplier 16 multiplies the digital musical tone signal GD by the envelope waveform data ED to give a volume amplitude envelope to the musical tone signal. This digital musical tone signal is converted into an analog musical tone signal by a digital/analog conversion circuit 18 and supplied to a sound system 19.

次に、第1図に示すエンベロープ波形発生装置10につ
いて説明する。
Next, the envelope waveform generator 10 shown in FIG. 1 will be explained.

このエンベロープ波形発生装置10において、演算回路
20は、第3図(イ)に示すアタック部A1第1デイケ
イ部ID、第2デイケイ部2D、サスティン部S、レリ
ース部R1さらに、第4図に示すフォーシングダンプ部
F等の各部分に対応してアタックレートデータAR,第
1デイケイレートデータIDR,第2デイケイレートデ
ータ2DR。
In this envelope waveform generator 10, an arithmetic circuit 20 includes an attack part A1 shown in FIG. 3(A), a first decay part ID, a second decay part 2D, a sustain part S, a release part R1, and Attack rate data AR, first decay rate data IDR, and second decay rate data 2DR correspond to each part such as the forcing dump part F.

レリースレートデータRR,フオーンングダンプレート
データFDRをクロックパルスφのタイミングで繰返し
加算若しくは減算することにより、例えば第3図(チ)
に示すように変化するエンベロープ波形データENVD
Bを形成する。このエンベロープ波形データENVDB
は対数データであり、かつ、基準レベルLbからの減衰
量を示している。従って、このデータENVDBの各ビ
ット力A12fl″0”のときエンベロープレベルは基
準レベルLbとなり、A1212″1″のときはエンベ
ロープレベルが0レベルとなる。
By repeatedly adding or subtracting the release rate data RR and the turning damp rate data FDR at the timing of the clock pulse φ, for example, as shown in FIG.
Envelope waveform data ENVD that changes as shown in
Form B. This envelope waveform data ENVDB
is logarithmic data and indicates the amount of attenuation from the reference level Lb. Therefore, when each bit power A12fl of this data ENVDB is ``0'', the envelope level becomes the reference level Lb, and when A1212'' is ``1'', the envelope level becomes 0 level.

上述した演算回路20を制御するための制御信号は第3
図(ロ)に示すキーオン信号KONに基づき作成される
。キーオン信号KONはアンド回路21(第1図下部)
を介して立上り/立下り微分回路22に与えられ、この
微分回路22において、該キーオン信号KONの立上り
時(押鍵されたとき)と立下り時(II鍵されたとき)
にそれぞれキーオンパルスKONP+第3図(ハ))と
キーオフパルスKOFP(第3図(ニ))が発生される
。アンド回路21の他方の人力に与えられるフリップフ
ロップ23の出力は通常は“1”であり、フォーシング
ダンプを行うべき条件の1つが成立したときO”となる
The control signal for controlling the arithmetic circuit 20 described above is the third
It is created based on the key-on signal KON shown in FIG. The key-on signal KON is the AND circuit 21 (lower part of Figure 1)
The key-on signal KON is applied to the rising/falling differentiation circuit 22 via the key-on signal KON at the rising edge (when the key is pressed) and at the falling edge (when the key is pressed).
A key-on pulse KONP+(c) in FIG. 3 and a key-off pulse KOFP ((d) in FIG. 3) are generated respectively. The output of the flip-flop 23 applied to the other input of the AND circuit 21 is normally "1", and becomes "O" when one of the conditions for performing a forcing dump is satisfied.

演算回路20から出力されたエンベロープ波形データE
NVDBの全ビットがアンド回路24に与えられ、この
全ビットが“1″のときのアンド回路24の出力信号“
l”がAQQ“1”検出信号としてフリップフロップ2
3のセット人力Sに与えられる。また、このAff12
“1”検出信号を反転した信号がアンド回路25に与え
られる。アンド回路25の他方の入力にはキーオフパル
スKOFPが与えられ、その出力がフリップフロップ2
3のリセット人力Rに与えられる。離鍵される前に(キ
ーオフパルスKOFPが発生する前に)エンベロープ波
形レベルが0になると、アンド回路24からAu″l”
検出信号(“l”信号)が出力され、この信号を反転し
た信号“0”によりアンド回路25が不動作となり、そ
の後の離鍵によってキーオフパルスKOFPが発生して
もフリップフロ、ブ23はリセットされない。この場合
、フォーシングダンプを行うべき条件は成立しない。
Envelope waveform data E output from the arithmetic circuit 20
All the bits of NVDB are given to the AND circuit 24, and the output signal of the AND circuit 24 when all the bits are "1" is "
l” is the AQQ “1” detection signal and the flip-flop 2
A set of 3 is given to S. Also, this Aff12
A signal obtained by inverting the “1” detection signal is applied to the AND circuit 25. A key-off pulse KOFP is given to the other input of the AND circuit 25, and its output is sent to the flip-flop 2.
3 is given to the reset human power R. When the envelope waveform level becomes 0 before the key is released (before the key-off pulse KOFP is generated), the AND circuit 24 outputs Au"l".
A detection signal ("l" signal) is output, and a signal "0" which is the inversion of this signal makes the AND circuit 25 inoperative, and even if a key-off pulse KOFP is generated by subsequent key release, the flip-flop block 23 is not reset. . In this case, the conditions for performing a forcing dump do not hold.

一方、エンベロープ波形レベルが0になる前に離鍵され
ると、A1212“1”検出信号がまだ発生していない
ときにキーオフパルスKOFPが発生することによりア
ンド回路25の出力が“1″となり、フリップフロップ
23がリセットされる。これによりフリップフロップ2
3の出力が“0”となり、アンド回路21を閉状態にす
ると共に、それを反転した信号″1″によってアンド回
路26を開状態にする。アンド回路26の他方の入力に
はキーオン信号ONが入力される。フリップフロッブ2
3の出力″0”に応じてアンド回路26の一方の人力へ
“l”が供給され、次の新たな鍵が押圧されると、新た
なキーオン信号KOHの立上りによってアンド回路26
の出力が“1”となる。このアンド回路26の出力信号
“1”がフォーシングダンプ信号FDである。他方、次
の新たな鍵が押圧される前に、前音のエンベロープI形
レベルがOになった場合はAff12“l”検出信号に
よりフJ ’yプフロップ23がセットされるので、フ
ォーシングダンプ信号FDは発生されない。
On the other hand, if the key is released before the envelope waveform level reaches 0, the key-off pulse KOFP is generated before the A1212 "1" detection signal has been generated, and the output of the AND circuit 25 becomes "1". Flip-flop 23 is reset. This causes flip-flop 2
The output of 3 becomes "0", which closes the AND circuit 21, and the inverted signal "1" causes the AND circuit 26 to open. The key-on signal ON is input to the other input of the AND circuit 26. flip flop 2
In response to the output "0" of 3, "l" is supplied to one of the AND circuits 26, and when the next new key is pressed, the rise of the new key-on signal KOH causes the AND circuit 26 to
The output of becomes "1". The output signal "1" of this AND circuit 26 is the forcing dump signal FD. On the other hand, if the envelope I-type level of the previous note becomes O before the next new key is pressed, the flip-flop 23 is set by the Aff12 "l" detection signal, so forcing damping is performed. Signal FD is not generated.

こウシて、エンベロープ波形レベルが0になる前に離鍵
され、しかも、次の新たな鍵が押圧されたことを条件に
、フォーシングダンプ信号FDが発生され、このフォー
シングダンプ信号FDに応じてフォーシングダンプ動作
(第4図の符号F参照)が行われる。
Then, on the condition that the key is released before the envelope waveform level becomes 0 and the next new key is pressed, the forcing dump signal FD is generated, and in response to this forcing dump signal FD, the forcing dump signal FD is generated. Then, a forcing dump operation (see reference numeral F in FIG. 4) is performed.

立上り及び立下り微分回路22から発生されたキーオン
パルスKONPとキーオフパルスKOFPは、演算回路
20の演算モードを制御するためのカウンタ27に与え
られる。該カウンタ27は、2ビ、トのバイナリカウン
タであり、キーオンノくルスKONPにより “0,0
”にリセ、ノドされ、クロック端子CLKに加わる信号
のタイミングで1カウントアツプされ、キーオフ/(ル
スKOFPによって “1.1″がロードされる。この
カウンタ27の2ビツト出力がモード信号MDI、MD
Oとして利用される。モード信号MDI、MDOと演算
モードとの関係は次表の通りである(第3図(ホ)〜(
ト)参照)。なお、サスティン部では、第2デイケイレ
ベルを保持するだけで、演算は行なわれない。
The key-on pulse KONP and key-off pulse KOFP generated from the rising and falling differentiating circuit 22 are applied to a counter 27 for controlling the calculation mode of the calculation circuit 20. The counter 27 is a 2-bit binary counter, and is set to “0,0” by the key-on clock KONP.
”, the count is increased by 1 at the timing of the signal applied to the clock terminal CLK, and “1.1” is loaded by the key-off/(russe KOFP). The 2-bit output of this counter 27 is the mode signal MDI, MD.
Used as O. The relationship between the mode signals MDI and MDO and the calculation mode is as shown in the table below (Figure 3 (E) to (E)).
(see g)). Note that the sustain section only holds the second decay level and does not perform any calculations.

第2表 28に加わり、アタ・ツク時またはデイケイ時のみカウ
ンタ27がカウントアツプされることを可能にする。ア
ンド回路28の他方の入力には、立ち上がり微分回路2
9の出力パルスが供給される。
It is added to the second table 28 and allows the counter 27 to be counted up only when attacking or declining. The other input of the AND circuit 28 is connected to the rising differentiation circuit 2.
Nine output pulses are provided.

セレクタ31(第1図左上部)には、エンベロープパラ
メータ発生回路15 (第2図)から出力されるアタッ
クレートデータAR,第1デイケイレートデータIDR
,第2デイケイレートデータ2DR,レリースレートデ
ータRRが入力される。
The selector 31 (upper left in Figure 1) receives attack rate data AR and first decay rate data IDR output from the envelope parameter generation circuit 15 (Figure 2).
, second decay rate data 2DR, and release rate data RR are input.

このセレクタ31はモード信号MDI、MDOに応じて
アタックレートデータAR,第1デイケイレートデータ
ID、R,第2デイケイレートデータ2DR,レリース
レートデータRRの何れかを選択し、セレクタ32のO
入力に与える。セレクタ32の1人力にはフォーシング
ダンプレートデータFDRが与えられている。そして、
セレクタ32は、フォーシングダンプ信号FDに応じて
、フォーシングダンプ動作モード時は1人力のフォーシ
ングダンプレートデータFDRを選択し、それ以外のと
きは0人力のセレクタ31の出力を選択する。セレクタ
32の出力の内の上位にビットは加算回路33.オア回
路34を介して、また、下位(mk)ビットは直接、対
数/リニア変換回路35へ供給され、この対数/リニア
変換回路35においてリニアレートデータRATEに変
換され、演算回路20へ出力される。
This selector 31 selects one of attack rate data AR, first decay rate data ID, R, second decay rate data 2DR, and release rate data RR according to mode signals MDI and MDO, and selects one of attack rate data AR, first decay rate data ID, R, second decay rate data 2DR, and release rate data RR.
give to input. The single-manpower selector 32 is given forcing damp rate data FDR. and,
In accordance with the forcing dump signal FD, the selector 32 selects the one-manpower forcing dump rate data FDR in the forcing dump operation mode, and selects the output of the zero-manpower selector 31 in other cases. The upper bits of the output of the selector 32 are added to the adder circuit 33 . The lower (mk) bits are directly supplied to the logarithmic/linear conversion circuit 35 via the OR circuit 34, where they are converted into linear rate data RATE and output to the arithmetic circuit 20. .

加算回路33の他方の入力には、ゲート回路36を介し
てエンベロープ波形データENVDBの上位にビットが
供給される。このゲート回路36はオア回路37の出力
が“l”の時「開」、“0”の時「閉」となり、また、
オア回路37の入力端には比較回路30から出力される
信号MIおよびアンド回路26から出力されるフォーシ
ングタンプ信号FDが印加される。この加算回路33は
ゲート回路36の出力が「0」の時、すなわち、オア回
路37の出力が“0”の時は、セレクタ32の出力の上
位にビットをそのまま出力し、また、オア回路37の出
力が1′の時は、セレクタ32の出力の上位にビットに
エンベロープ波形データENVDBの上位にビットを加
算し、この加算結果を出力する。なお、セレクタ32の
出力もエンベロープ波形データENVDBも共に対数デ
ータであり、したがって、上記の加算はリニアデータに
おける乗算を行ったことになる。また、上記加算結果が
オーバーフローした場合は、キャリイアウド端子COか
ら“l”信号を出力する。オア回路34は、常時は加算
回路33の出力をそのまま対数/リニア変換回路35へ
供給し、また、加算回路33のキャリイアウド端子Co
から“l”信号が出力された場合はA12g″l”を出
力する。
The other input of the adder circuit 33 is supplied with the upper bit of the envelope waveform data ENVDB via the gate circuit 36. This gate circuit 36 is "open" when the output of the OR circuit 37 is "L", and "closed" when the output is "0", and
A signal MI outputted from the comparison circuit 30 and a forcing stamp signal FD outputted from the AND circuit 26 are applied to the input terminal of the OR circuit 37. When the output of the gate circuit 36 is "0", that is, when the output of the OR circuit 37 is "0", this adder circuit 33 outputs the bit as it is to the higher order of the output of the selector 32, and also outputs the bit as it is to the higher order of the output of the selector 32. When the output is 1', the upper bit of the envelope waveform data ENVDB is added to the upper bit of the output of the selector 32, and the addition result is output. Note that both the output of the selector 32 and the envelope waveform data ENVDB are logarithmic data, so the above addition is equivalent to multiplication of linear data. Furthermore, when the above addition result overflows, an "1" signal is output from the carry terminal CO. The OR circuit 34 normally supplies the output of the adder circuit 33 as is to the logarithmic/linear converter circuit 35, and also supplies the output of the adder circuit 33 as it is to the carry-out terminal Co of the adder circuit 33.
When the "l" signal is output from A12g, "l" is output.

しかして、オア回路37の出力が“0”の場合は、セレ
クタ32から出力される対数によるレートデータが対数
/リニア変換回路35においてリニアレートデータRA
TEに変換され、演算回路20へ供給される。この場合
、モード信号MDI、MDoおよびフォーシングダンプ
信号FDに変化が無ければ、レートデータRATEも一
定である。
Therefore, when the output of the OR circuit 37 is "0", the logarithmic rate data output from the selector 32 is converted into linear rate data RA in the log/linear conversion circuit 35.
It is converted into TE and supplied to the arithmetic circuit 20. In this case, if there is no change in the mode signals MDI, MDo and forcing dump signal FD, the rate data RATE is also constant.

一方、オア回路37の出力が“1”の時は、セレクタ3
2から出力されるレートデータの上位にビットにエンベ
ロープ波形データの上位にビットが加算され、この加算
結果がリニアレートデータRATEに変換される。すな
わち、モード信号MD 1゜MDOおよびフォーシング
タンプ信号FDが変化しない場合においても、レートデ
ータRATEはエンベロープ波形データENVDBの変
化に応じて逐次変化し、データENVDBの値が大きい
場合(エンベロープのレベルが小すい場合) ハL/−
1−データRΔTEも大きくなり、データENVDBの
値が小さい時はレートデータRATEも小さくなる。そ
して、上述したレートデータRATEが演算回路20へ
供給される。
On the other hand, when the output of the OR circuit 37 is "1", the selector 3
The upper bits of the envelope waveform data are added to the upper bits of the rate data outputted from 2, and the result of this addition is converted into linear rate data RATE. That is, even when the mode signal MD 1°MDO and the forcing stamp signal FD do not change, the rate data RATE changes sequentially according to changes in the envelope waveform data ENVDB, and when the value of the data ENVDB is large (the level of the envelope is If it is small) HA L/-
1-Data RΔTE also becomes large, and when the value of data ENVDB is small, rate data RATE also becomes small. The rate data RATE described above is then supplied to the arithmetic circuit 20.

次に、セレクタ40(第1図左部)には、エンベロープ
パラメータ発生回路15(第2図)から出力されるアタ
ックレベルデータAL、第1デイケイレベルデータ1D
L1第2デイケイレへ形データ2DLおよびデータ“1
1・・・11”(Au″l”)が入力される。このセレ
クタ40はモード信号MD1、MDOに応じて上述した
各人力データの何れかを選択し、セレクタ41の0人力
に与える。セレクタ41の1人力にはエンベロープパラ
メータ発生回路15から出力されるイニシャルレベルI
Lが入力される。そして、セレクタ41は、キーオンパ
ルスKONPが1″の時にイニシャルレベル[Lを、ま
た、“O”の時はセレクタ40の出力データを各々、レ
ベルデータLDとして反転回路42へ出力する。反転回
路42はセレクタ41から出力されるレベルデータLD
の各ビットを反転して加算回路43へ出力する。
Next, the selector 40 (left side in FIG. 1) receives attack level data AL and first decay level data 1D output from the envelope parameter generation circuit 15 (FIG. 2).
L1 to the second decal shape data 2DL and data “1”
1...11"(Au"l") is input. This selector 40 selects any of the above-mentioned human power data according to the mode signals MD1 and MDO, and applies it to the 0 human power of the selector 41. 41, the initial level I output from the envelope parameter generation circuit 15
L is input. Then, the selector 41 outputs the initial level [L when the key-on pulse KONP is 1'', and outputs the output data of the selector 40 when it is "O" to the inverting circuit 42 as level data LD. Inverting circuit 42 is the level data LD output from the selector 41
Each bit is inverted and output to the adder circuit 43.

セレクタ44には、上J己アタックレベルデータA L
、第1デイケイレベルデータIDL、12デイケイレベ
ルデータ2DLおよびイニシャルレベルILが各々入力
される。そして、セレクタ44はエンベロープパラメー
タ発生回路15から出力される最大値選択データMl、
MQに応じて上述した各入力データの内の1つを選択し
、最大レベルデータMAXLVとしてアンド回路45を
介して加算回路43へ出力する。アンド回路45はキー
オン信号KOHによって開/閉制御される。
The selector 44 contains upper J attack level data A L
, first decay level data IDL, twelfth decay level data 2DL, and initial level IL are input, respectively. Then, the selector 44 selects the maximum value selection data Ml output from the envelope parameter generation circuit 15,
One of the above-mentioned input data is selected according to MQ and outputted to the adder circuit 43 via the AND circuit 45 as maximum level data MAXLV. AND circuit 45 is controlled to open/close by key-on signal KOH.

加算回路43は反転回路42の出力とアンド回路45の
出力を加算し、加算結果を出力する。ところで、反転回
路42の出力はレベルデータLDの各ビットを各々反転
したデータである。したがって、加算回路43の出力デ
ータDDは、キーオン信号KONが“l”の時次の演算
結果を示している。
The adding circuit 43 adds the output of the inverting circuit 42 and the output of the AND circuit 45, and outputs the addition result. Incidentally, the output of the inversion circuit 42 is data obtained by inverting each bit of the level data LD. Therefore, the output data DD of the adder circuit 43 indicates the result of the following calculation when the key-on signal KON is "1".

DD=MAXLV−LD −,−(LD−MAXLV) ここで、(LD−MΔX L V )は次のようなデー
タである。すなわち、いま、エンベロープパラメータ発
生回路15から第3図(イ)に示す大きさの各レベルデ
ータI L、AL、IDL、2DLが出力されたとする
。この場合、最大値選択データMl。
DD=MAXLV-LD-,-(LD-MAXLV) Here, (LD-MΔXLV) is the following data. That is, assume that the envelope parameter generation circuit 15 outputs level data IL, AL, IDL, and 2DL having the sizes shown in FIG. 3(A). In this case, the maximum value selection data Ml.

MOはアタックレベルALを示す“0,0”となり、最
大レベルデータMAXLVかアタックレベルデータAL
となる。この結果、(LD−MAXLV)if レベル
データLDからレベルデータALを減算した値となる。
MO becomes “0,0” indicating attack level AL, and maximum level data MAXLV or attack level data AL
becomes. As a result, (LD-MAXLV)if becomes the value obtained by subtracting the level data AL from the level data LD.

そして、上述したデータDDは演算回路20の反転回路
45および比較回路30へ供給される。一方、キーオン
信号KONが“O”の場合は、 DD=−LD となる。
The data DD described above is then supplied to the inversion circuit 45 and comparison circuit 30 of the arithmetic circuit 20. On the other hand, when the key-on signal KON is "O", DD=-LD.

比較回路30は加算回路50と、この加算回路50の出
力の各ビットのノア演算を行うノア回路51とから構成
されている。加算回路50はエンベロープ波形データE
NVDBと加算回路43の出力データDDとを加算する
。したがって、この加算回路50は次の演算を行ってい
る。
The comparison circuit 30 is composed of an adder circuit 50 and a NOR circuit 51 that performs a NOR operation on each bit of the output of the adder circuit 50. The adder circuit 50 receives the envelope waveform data E.
NVDB and output data DD of the adder circuit 43 are added. Therefore, this adder circuit 50 performs the following calculation.

ENVDB−(LD−MAXLV) そして、比較回路30はENVDBおよび(LDMAX
LV)の大きさに応じて次の信号を出力する。
ENVDB-(LD-MAXLV) Then, the comparison circuit 30 outputs ENVDB and (LDMAX
The next signal is output depending on the magnitude of LV).

■ENVDB<(LD−MAXLV)の場合加算回路5
0のキャリイアウド端子Coから、信号MIとして“0
”信号を出力する。
■If ENVDB<(LD-MAXLV), adder circuit 5
0 from the carry terminal Co as the signal MI.
”Output a signal.

■ENVDB>(LD−MAXLV)の場合加算回路5
0のキャリイアウド端子COから、信号Mlとして“1
”信号を出力する。
■If ENVDB>(LD-MAXLV), adder circuit 5
0 from the carry terminal CO to “1” as the signal Ml.
”Output a signal.

■ENVDB=(LD−MAXLV)の場合この場合、
加算回路50の出力がAQQ“0”となり、したがって
、ノア回路51から信号EQとして“1”信号を出力す
る。
■When ENVDB=(LD-MAXLV) In this case,
The output of the adder circuit 50 becomes AQQ "0", and therefore the NOR circuit 51 outputs a "1" signal as the signal EQ.

次に、演算回路20において、反転制御回路55は、n
個のイクスクルーシブオアゲートから構成され、信号M
lが“0″の時はレートデータRATEをそのまま出力
し、信号Mlか“1”の時はレートデータRATEの各
ビットを反転して出力する。加算回路56はエンベロー
プ波形データENVDBと反転制御回路55の出力とを
加算し、この加算結果をnビットのセレクタ57のO入
力へ出力する。反転回路45は前述したデータDDの各
ビ・ノドを反転してセレクタ57の1人力の−L位−ビ
ットへ出力する。このセレクタ57の1人力の下位(n
−曽)ビットへは“1”が供給されている。
Next, in the arithmetic circuit 20, the inversion control circuit 55
It consists of exclusive OR gates, and the signal M
When l is "0", the rate data RATE is output as is, and when the signal Ml is "1", each bit of the rate data RATE is inverted and output. The adder circuit 56 adds the envelope waveform data ENVDB and the output of the inversion control circuit 55, and outputs the addition result to the O input of the n-bit selector 57. The inverting circuit 45 inverts each bit and node of the data DD mentioned above and outputs it to the -L bit of the selector 57. This selector 57's one-person lower order (n
-) "1" is supplied to the bit.

セレクタ57は、常時はO入力へ供給されている加算回
路56の出力データを出力し、キーオン/<ルスKON
Pの発生時にのみ1人力のデータを出力する。セレクタ
58は、アンド回路59の出力が“1″の時はエンベロ
ープ発生データENVDBをセレクタ60へ出力し、“
0”の時はセレクタ57の出力データをセレクタ60へ
出力する。ここで、アンド回路59の出力は、モード2
(第3図(ト)参照)であって、かつ、比較回路30の
出力信号EQが“1”の時のみ“l”信号となる。セレ
クタ60はアンド回路61の出力が“1”の時はA12
12“1”なるデータをレジスタ62へ出力し、“0”
の時はセレクタ58の出力データをレジスタ62へ出力
する。ここで、アンド回路61の出力は、モード3であ
って、かつ、比較回路30の出力信号EQが“1”の時
のみl”信号となる。レジスタ62はシステムクロック
φのタイミングでセレクタ60の出力データを読み込み
、エンベロープ波形データENVDBとして出力する。
The selector 57 outputs the output data of the adder circuit 56 which is normally supplied to the O input, and selects the key-on/<rus KON
Outputs data by one person only when P occurs. When the output of the AND circuit 59 is "1", the selector 58 outputs the envelope generation data ENVDB to the selector 60, and outputs "
0", the output data of the selector 57 is output to the selector 60. Here, the output of the AND circuit 59 is mode 2.
(See FIG. 3(g)), and becomes an "l" signal only when the output signal EQ of the comparator circuit 30 is "1". When the output of the AND circuit 61 is "1", the selector 60 selects A12.
12 Outputs data “1” to register 62 and outputs “0”
At this time, the output data of the selector 58 is output to the register 62. Here, the output of the AND circuit 61 becomes an "L" signal only in mode 3 and when the output signal EQ of the comparator circuit 30 is "1". Read the output data and output it as envelope waveform data ENVDB.

上述したエンベロープ波形データENVDBが供給され
る加算回路65は、供給されたデータENVDBと加算
回路66の出力データとを加算し、その加算結果を対数
/リニア変換回路67へ出力する。ここで、加算回路6
6は前述した最大レベルデータMAXLVと、音量調整
用の操作子(図示路)の出力データ(ディジタルデータ
)VOLとを加算し、その加算結果を出力する。対数/
リニア変換回路67は、加算回路65の出力データをリ
ニアデータに変換して出力する。この対数/リニア変換
回路67の出力データが、エンベロープデータEDとし
て第2図の乗算器16へ供給される。
The adder circuit 65 to which the above-mentioned envelope waveform data ENVDB is supplied adds the supplied data ENVDB and the output data of the adder circuit 66, and outputs the addition result to the logarithmic/linear converter circuit 67. Here, the addition circuit 6
6 adds the aforementioned maximum level data MAXLV and the output data (digital data) VOL of the volume adjustment operator (the path shown), and outputs the addition result. Logarithm/
The linear conversion circuit 67 converts the output data of the addition circuit 65 into linear data and outputs the linear data. The output data of this logarithmic/linear conversion circuit 67 is supplied to the multiplier 16 in FIG. 2 as envelope data ED.

次ニ、上述したエンベロープ波形発生回路10の全体動
作を説明する。
Next, the overall operation of the envelope waveform generating circuit 10 described above will be explained.

まず、キーオン信号が立ち上がると、微分回路22から
キーオンパルスKONPが出力される。
First, when the key-on signal rises, the differentiating circuit 22 outputs the key-on pulse KONP.

これにより、セレクタ41の1人力へ供給されているイ
ニシャルレベルデータILが同セレクタ41から出力さ
れ、反転回路42によって反転され、加算回路43へ供
給される。一方、キーオン信号KONが“1”になると
、アンド回路45が開状態となり、最大レベルデータM
ΔXLVがアンド回路45を介して加算回路43へ供給
される。ここで、例えば、第3図(イ)に示すようにア
タックレベル、第1デイケイレベル、第2デイケイレベ
ル。
As a result, the initial level data IL supplied to the selector 41 is outputted from the selector 41, inverted by the inverting circuit 42, and supplied to the adding circuit 43. On the other hand, when the key-on signal KON becomes "1", the AND circuit 45 becomes open and the maximum level data M
ΔXLV is supplied to the adder circuit 43 via the AND circuit 45. Here, for example, as shown in FIG. 3(a), there is an attack level, a first decay level, and a second decay level.

イニシャルレベルの中でアタックレベルが最大であると
すると、最大値選択データMl、MOが“0゜0″であ
り、セレクタ44からアタックレベルデ−夕ALが最大
レベルデータMAXLVとして出力される。この結果、
加算回路43から、データr−(l L−MAXLV)
Jが出力され、コ(7)f’−夕が反転回路45によっ
て再び反転されてデータ(lL−MAXLV)となる。
Assuming that the attack level is the maximum among the initial levels, the maximum value selection data M1, MO are "0°0", and the attack level data AL is outputted from the selector 44 as the maximum level data MAXLV. As a result,
From the adder circuit 43, data r-(l L-MAXLV)
J is output, and the inversion circuit 45 inverts the signal (7)f'--to become data (IL-MAXLV).

そして、このデータがセレクタ57,58.60を介し
てレジスタ62へ供給される。
This data is then supplied to the register 62 via the selectors 57, 58, and 60.

次に、システムクロックφが立ち上がると、上述したデ
ータ(I L−MAXLV)がレジスタ62に読み込ま
れ、エンベロープ波形データENVDBとして、各部へ
出力される。またこの時、キーオンパルスKONPが立
ち下がり、この立ち下がりにおいてカウンタ27がクリ
アされ、モード信号MDI、MDOが“0 、0 ”(
モードO)となる。これにより、セレクタ40からアタ
ックレベルデータALが出力され、セレクタ41、反転
回路42を介して加算回路43へ供給される。この結果
、加算回路43の出力データDDがrAL−AL=0」
となり、このデータ「0」が加算回路50へ供給される
Next, when the system clock φ rises, the above-mentioned data (IL-MAXLV) is read into the register 62 and output to each section as envelope waveform data ENVDB. At this time, the key-on pulse KONP falls, the counter 27 is cleared at this fall, and the mode signals MDI and MDO become "0, 0" (
mode O). As a result, attack level data AL is output from the selector 40 and supplied to the adder circuit 43 via the selector 41 and the inversion circuit 42. As a result, the output data DD of the adder circuit 43 is rAL-AL=0.
This data “0” is supplied to the adder circuit 50.

また、モード信号MDI、MDOが“0,0”になると
、セレクタ31から、アクツクレートデータARが出力
され、セレクタ32.加算回路33.オア回路34を介
して対数/リニア変換回路35へ供給される。対数/リ
ニア変換回路35は供給されたデータをリニアデータに
変換し、レートデータRATEとして反転制御回路55
へ出力する。
Furthermore, when the mode signals MDI and MDO become "0, 0", the selector 31 outputs acturate data AR, and the selector 32. Addition circuit 33. The signal is supplied to a logarithmic/linear conversion circuit 35 via an OR circuit 34. The logarithmic/linear conversion circuit 35 converts the supplied data into linear data, and outputs the data as rate data RATE to the inversion control circuit 55.
Output to.

(なお、説明の便宜上、以下の説明においては、アンド
回路36の出力が常時「0」であるものとする。)この
時点において、 ENVDB>LD−MAXLV=0 であり、したがって、比較回路30から出力される信号
Mlは“l”信号となっている。この結果、反転制御回
路55へ印加されたレートデータRΔTEは、その各ビ
ットが反転され、加算回路56へ供給される。加算回路
56は、 ENVDB−RATE なる演算を行い、この演算結果をセレクタ57゜58.
60を介してレジスタ62へ供給する。
(For convenience of explanation, in the following explanation, it is assumed that the output of the AND circuit 36 is always "0".) At this point, ENVDB>LD-MAXLV=0, and therefore, from the comparator circuit 30 The output signal Ml is an "l" signal. As a result, each bit of the rate data RΔTE applied to the inversion control circuit 55 is inverted and supplied to the addition circuit 56. The adder circuit 56 performs the calculation ENVDB-RATE, and sends the result of this calculation to the selectors 57, 58.
60 to register 62.

次に、再びシステムクロックφが立ち上がると、上記の
データがレジスタ62内に読み込まれ、エンベロープ波
形データENVDBとして出力される。以下、システム
クロックφが立ち上がる毎に、レジスタ62内のデータ
からレートデータRATEが減算され、この減算結果が
レジスタ62内に書キ込まれ、エンベロープ波形データ
ENVDBとして出力される。このように、エンベロー
プ波形データENVDBは、キーオン時点でデータ(I
L −A L )となり、以後、システムクロックφが
立ち上がる毎にレートデータRATEが減算され、逐次
減少する(第3図(チ)のアタック部A参照)。
Next, when the system clock φ rises again, the above data is read into the register 62 and output as envelope waveform data ENVDB. Thereafter, each time the system clock φ rises, the rate data RATE is subtracted from the data in the register 62, and the result of this subtraction is written in the register 62 and output as envelope waveform data ENVDB. In this way, the envelope waveform data ENVDB is the data (I) at the key-on point.
After that, the rate data RATE is subtracted every time the system clock φ rises and decreases sequentially (see attack part A in FIG. 3(H)).

そして、エンベロープ波形データENVDBの上位mビ
ットがrO(=LD−’MAXLV)Jに一致すると、
比較回路30の出力信号EQが“l”に立ち上がる。信
号EQが1”に立ち上がると、この立ち上がりにおいて
微分回路29からパルス信号が出力され、アンド回路2
8を介してカウンタ27のクロック端子へ供給される。
Then, when the upper m bits of the envelope waveform data ENVDB match rO(=LD-'MAXLV)J,
The output signal EQ of the comparison circuit 30 rises to "L". When the signal EQ rises to 1'', a pulse signal is output from the differentiator circuit 29 at this rise, and the AND circuit 2
8 to the clock terminal of the counter 27.

これにより、カウンタ27がカウントアツプされ、モー
ド信号MDi、MDOが“0,1”(モードl)となる
As a result, the counter 27 counts up, and the mode signals MDi and MDO become "0, 1" (mode 1).

モード1になると、セレクタ40から第1デイケイレベ
ルデータIDLが出力され、セレクタ41、反転回路4
2を介して加算回路43へ供給される。これにより、加
算回路43からデータDDとして、 DD=−(LD−MAXLV) =−(IDL−AL) が出力され、加算回路50へ供給される。また、モード
lになると、セレクタ31から第1デイケイレートデー
タIDRが出力され、このデータIDRが対数/リニア
変換回路35においてリニアレートデータRATEに変
換され、反転制御回路55へ供給される。この時点にお
いて、エンベロープ波形データENVDBの上位mビッ
トは「0」であり、一方、データ(IDL−AL)は正
のデータであり、(I DL−AL)>ENVDBなる
関係が成り立っている。この結果、比較回路30から信
号Mlとして“0”信号が出力される。信号MIが“0
”の場合、反転制御回路55はセードデータRATEを
そのまま加算回路56へ出力する。加X[回路56はエ
ンベロープ波形データENVDBとレートデータRAT
Eとを加算し、その結果をセレクタ57,58.60を
介してレジスタ62へ供給する。
In mode 1, the selector 40 outputs the first decay level data IDL, and the selector 41 and the inverting circuit 4 output the first decay level data IDL.
2 to the adder circuit 43. As a result, the adder circuit 43 outputs the data DD as follows: DD=-(LD-MAXLV)=-(IDL-AL), and is supplied to the adder circuit 50. Furthermore, when the mode 1 is entered, first decay rate data IDR is output from the selector 31, this data IDR is converted into linear rate data RATE in the logarithmic/linear conversion circuit 35, and is supplied to the inversion control circuit 55. At this point, the upper m bits of the envelope waveform data ENVDB are "0", while the data (IDL-AL) is positive data, and the relationship (IDL-AL)>ENVDB is established. As a result, the comparison circuit 30 outputs a "0" signal as the signal Ml. Signal MI is “0”
”, the inversion control circuit 55 outputs the shade data RATE as is to the addition circuit 56.
E and the result is supplied to the register 62 via selectors 57, 58, and 60.

次に、システムクロックφが立ち上がると、レジスタ6
2に、ENVDB+RATEが読み込まれ、以後、シス
テムクロックφが立ち上がる毎にレジスタ62内のデー
タにレートデータRATEが加算される。すなわち、エ
ンベロープ波形データENVDBは、その上位Mビット
が「0」となった時点以降システムクロックφのタイミ
ングで逐次増大する(第3図(チ)における第1デイケ
イ部ID参照)。
Next, when the system clock φ rises, register 6
2, ENVDB+RATE is read, and thereafter, the rate data RATE is added to the data in the register 62 every time the system clock φ rises. That is, the envelope waveform data ENVDB increases sequentially at the timing of the system clock φ after the time when its upper M bits become "0" (see the first decay section ID in FIG. 3(H)).

そして、エンベロープ波形データENVDBの−L位−
ビットがデータ(] DL−AL)に一致すると、再び
比較回路30から信号EQ(“1”)が出力され、微分
回路29へ供給される。微分回路29はこの信号EQの
立ち上がりにおいてパルス信号を発生し、アンド回路2
8を介してカウンタ27のクロック端子へ供給する。こ
れにより、カウンタ27がカウントアツプされ、 した
がって、モード信号MDI、MDOが“1.0”(モー
ド2)となる。
Then, -L position- of the envelope waveform data ENVDB
When the bit matches the data (] DL-AL), the signal EQ (“1”) is output from the comparison circuit 30 again and is supplied to the differentiation circuit 29. The differentiating circuit 29 generates a pulse signal at the rise of this signal EQ, and the AND circuit 2
8 to the clock terminal of the counter 27. As a result, the counter 27 counts up, and therefore, the mode signals MDI and MDO become "1.0" (mode 2).

モード2になると、セレクタ40から第2デイケイレベ
ルデータ2DLが出力され、したがって、加算回路42
から、 DD=−(LD−MAXLV) =−(2DL−AL) なるデータが出力され、加算回路50へ供給される。そ
して、いま、2 D L < l D L  であった
とすると、この時点で、 ENVDB(IDL−AL)>2DL−ALとなること
から、比較回路30から信号Mlとして“1”信号が出
力される。
In mode 2, the selector 40 outputs the second decay level data 2DL, and therefore the adder circuit 42 outputs the second decay level data 2DL.
Then, the data DD=-(LD-MAXLV)=-(2DL-AL) is output and supplied to the adder circuit 50. Now, if 2DL<lDL, then at this point ENVDB(IDL-AL)>2DL-AL, so the comparator circuit 30 outputs a "1" signal as the signal Ml. .

また、モード2になると、セレクタ31から第2デイケ
イレートデータ2DRが出力され、このデータ2DRが
対数/リニア変換回路35においてリニアレートデータ
RATEに変換され、反転制御回路55へ供給される。
In addition, in mode 2, second decay rate data 2DR is output from the selector 31, this data 2DR is converted into linear rate data RATE in the logarithmic/linear conversion circuit 35, and is supplied to the inversion control circuit 55.

この時点において、信号Mlは前述したように“0”と
なっており、反転制御回路55はレートデータRATE
を反転して加算回路56へ出力する。加算回路はエンベ
ロープ波形データENVDBからレートデータRATE
とを減算し、その結果をセレクタ57.58゜60を介
してレジスタ62へ供給する。
At this point, the signal Ml is "0" as described above, and the inversion control circuit 55 has the rate data RATE.
is inverted and output to the adder circuit 56. The adder circuit converts the rate data RATE from the envelope waveform data ENVDB.
and the result is supplied to the register 62 via the selector 57.58.60.

以後、システムクロックφが立ち上がる毎に、エンベロ
ープ波形データE N ’J D Bが逐次減少する(
第3図(チ)の第2デイケイ部2D参照)。そして、エ
ンベロープ波形データENVDBの上位部ビットがデー
タ(2DL−AL)に一致すると、再び比較回路30か
ら信号EQ(“1”)が出力され、二の信号EQの立ち
上がりにおいて、微分回路29からパルス信号が出力さ
れる。しかし、この時点において、モード信号MDIは
“1”であり、インバータ28aの出力は′0″となっ
ており、アンド回路28が閉状態にある。したがって、
この場合、微分回路29の出力パルスによってカウンタ
27がカウントアツプされることはない。
From then on, each time the system clock φ rises, the envelope waveform data E N 'J D B decreases (
(See second decay section 2D in FIG. 3(g)). Then, when the upper bits of the envelope waveform data ENVDB match the data (2DL-AL), the signal EQ (“1”) is output again from the comparator circuit 30, and at the rising edge of the second signal EQ, a pulse is output from the differentiator circuit 29. A signal is output. However, at this point, the mode signal MDI is "1", the output of the inverter 28a is '0', and the AND circuit 28 is in the closed state.
In this case, the counter 27 will not be counted up by the output pulse of the differentiating circuit 29.

一方、この時点において、演算回路20内のアンド回路
59の第1.第2入力端へは共にl”が供給されており
、したがって、その第3入力端へ供給されている信号E
Qが“1”になると、アンド回路59の出力が“1”と
なり、セレクタ58の1人力のデータ、すなわち、エン
ベロープ波形データENVDBが同セレクタ58から出
力され、セレクタ60を介してレジスタ62へ出力され
る。
On the other hand, at this point, the first . The second inputs are both supplied with l'', and therefore the signal E supplied with their third input.
When Q becomes "1", the output of the AND circuit 59 becomes "1", and the data generated by the selector 58 alone, that is, the envelope waveform data ENVDB, is output from the selector 58 and output to the register 62 via the selector 60. be done.

そして2次のシステムクロックφの立ち上がりにおいて
、そのデータENVDBがレジスタ62に読み込まれる
。以後、システムクロックφが立ち上がる毎に、レジス
タ62内のデータが同じレジスタ62内に読み込まれる
。すなわち、モード2において比較回路30から信号E
Qが出力されると、以後、エンベロープ波形データEN
VDBが変化せず、同一データを続ける(第3図(チ)
のサスティン部S参照)。
Then, at the rising edge of the secondary system clock φ, the data ENVDB is read into the register 62. Thereafter, the data in the register 62 is read into the same register 62 every time the system clock φ rises. That is, in mode 2, the signal E from the comparator circuit 30
When Q is output, the envelope waveform data EN
VDB does not change and the same data continues (Figure 3 (ch)
(See Sustain part S).

次に、キーオン信号KONが立ち下がると、この立ち下
がり時点において微分回路22からキーオフパルスKO
FPが出力され、カウンタ27のロード端子LDへ供給
される。これにより、カウンタ27にデータ“1,1”
がロードされ、したがつて、モード信号MDI、MDO
が“1,1″(モード3)となる。
Next, when the key-on signal KON falls, the key-off pulse KO is output from the differentiating circuit 22 at this falling point.
FP is output and supplied to the load terminal LD of the counter 27. As a result, the data “1, 1” is stored in the counter 27.
are loaded and therefore the mode signals MDI, MDO
becomes “1, 1” (mode 3).

モード3になると、セレクタ40からAI2&“1′な
るデータが出力され、セレクタ41を介して反転回路4
2へ供給され、この反転回路42においてA(!12“
0”とされ、加算回路43へ供給される。
In mode 3, the selector 40 outputs data AI2 &"1', and the data is passed through the selector 41 to the inverting circuit 4.
2, and in this inversion circuit 42, A(!12"
0'' and is supplied to the adder circuit 43.

この時、キーオン信号KONが“O″であり、したかっ
て、アンド回路45の出力はrOJである。この結果、
加算回路43の出力データDDは「0」となり、このデ
ータ「0」が加算回路50へ供給される。この時点にお
いて、エンベロープ波形データENVDBは未だ(2D
L−AL)であり、したがって、 ENVDB<LD−MAXLV=id″1″であり、信
号Mlが“0”となる。
At this time, the key-on signal KON is "O", so the output of the AND circuit 45 is rOJ. As a result,
The output data DD of the adder circuit 43 becomes "0", and this data "0" is supplied to the adder circuit 50. At this point, the envelope waveform data ENVDB is still available (2D
Therefore, ENVDB<LD-MAXLV=id"1", and the signal Ml becomes "0".

また、モード3になると、セレクタ31からレリースレ
イトデータRRが出力され、このデータRRが対数/リ
ニア変換回路35においてリニアレートデータRATE
に変換され、反転制御回路55へ供給される。この時点
において、信号Mlは前述したように“0”となってお
り、反転制御回路55はレートデータRA T Eをそ
のまま加算回路5Gへ出力する。加算回路はエンベロー
プ波形データENVDBとレートデータRATEとを加
算し、その結果をセレクタ57,58.60を介しテレ
シスタロ2へ供給する。以後、システムクロックφが立
ち上がる毎に、エンベロープ波形データENVDBが逐
次増大する(第3図(チ)におけるレリース部R参照)
。そして、同データENVDBがA(IQ“1″になる
と、比較回路3oがら信号EQじ1″)が出力される。
In addition, when mode 3 is entered, release rate data RR is output from the selector 31, and this data RR is converted into linear rate data RATE in the logarithmic/linear conversion circuit 35.
and is supplied to the inversion control circuit 55. At this point, the signal Ml is "0" as described above, and the inversion control circuit 55 outputs the rate data RATE E as it is to the addition circuit 5G. The adder circuit adds the envelope waveform data ENVDB and the rate data RATE, and supplies the result to the telesistaro 2 via selectors 57, 58, and 60. Thereafter, each time the system clock φ rises, the envelope waveform data ENVDB increases sequentially (see release part R in FIG. 3 (H)).
. Then, when the same data ENVDB becomes A (IQ "1", the signal EQ is "1") is output from the comparator circuit 3o.

信号EQが立ち上がると、この立ち上がりにおいて微分
回路29からパルス信号が出力されるが、この場合もア
ンド回路28が開状態にあり、カウンタ27のカウント
アツプは行なわれない。一方、モード3において信号E
Qが“F′になると、演算回路20内のアンド回路61
の出方が“l”となり、セレクタ60の1入カへ供給さ
れているA12ρ“1”が同セレクタ60を介してレジ
スタ62へ供給される。そして、以後、システムクロッ
クφが立ち−にがる毎に、レジスタ62にこのデータA
1212″1″が読み込まれる。すなわち、以後、エン
ベロープ波形データENVDBが、Af2d″1″を続
ける。
When the signal EQ rises, a pulse signal is output from the differentiating circuit 29 at this rising edge, but in this case too, the AND circuit 28 is in an open state and the counter 27 is not counted up. On the other hand, in mode 3, the signal E
When Q becomes "F', the AND circuit 61 in the arithmetic circuit 20
The output of A12ρ becomes "1", and A12ρ "1" supplied to the 1 input of the selector 60 is supplied to the register 62 via the selector 60. From then on, every time the system clock φ rises, this data A is stored in the register 62.
1212″1″ is read. That is, from now on, the envelope waveform data ENVDB continues to be Af2d"1".

また、エンベロープ波形データENVDBがAQ(1“
1′になると、アンド回路24から“1”信号が出力さ
れる。これにより、フリップフロップ23がセットされ
、アンド回路21が開状態、アンド回路26が閉状態と
なる。
In addition, the envelope waveform data ENVDB is AQ(1"
When the signal becomes 1', the AND circuit 24 outputs a "1" signal. As a result, the flip-flop 23 is set, the AND circuit 21 is opened, and the AND circuit 26 is closed.

以上のようにして、第3図(チ)に示すように変化する
エンベロープ波形データENVDBが形成され、そして
、このエンベロープ波形データENVDBが逐次加算回
路65へ印加される。加算回路65は、加算回路66の
出力、すなわち、MAXLV+VOL をデータENVDBに加算する。このデータMAX !
、 Vを加算することによって、エンベロープ波形デー
タが第3図(イ〉の状態に戻る。すなわち、このエンベ
ロープ波形発生装置10においては、第3図(チ)に示
すように、演算の目標値であるレベルデータIL、AL
、IDL、2DLを、その中の最も小さいデータ分シフ
トした状態でエンベロープ波形データENVDBを形成
し、最後の加算回路65においてシフト分を元に戻して
いる。また、データVOLを加算することは、音量調整
ボリュームの調整位置に応じてエンベロープ波形ノ全体
レベルを制御することを意味する。そして、上記加算回
路65の出力データは、対数/リニア変換回路67にお
いてリニアデータに変換され、第2図の乗算器16へ出
力される。
In the manner described above, envelope waveform data ENVDB that changes as shown in FIG. Adder circuit 65 adds the output of adder circuit 66, ie, MAXLV+VOL, to data ENVDB. This data is MAX!
, V, the envelope waveform data returns to the state shown in FIG. 3 (A). That is, in this envelope waveform generator 10, as shown in FIG. Certain level data IL, AL
, IDL, and 2DL are shifted by the smallest data among them to form envelope waveform data ENVDB, and the final adder circuit 65 returns the shifted data to the original value. Furthermore, adding the data VOL means controlling the overall level of the envelope waveform according to the adjustment position of the volume adjustment volume. Then, the output data of the adder circuit 65 is converted into linear data in a logarithmic/linear conversion circuit 67 and output to the multiplier 16 in FIG. 2.

次に、エンベロープがレリース状態にある場合において
次のキーがオンとされた場合について説明する。エンベ
ロープがレリース状態にある場合は、未だフリップフロ
ップ23がセットされておらず、アンド回路26が開状
態にある。この結果、次のキーオンに基づいてキーオン
信号KONか“1”になると、このアンド回路26から
フォーシンクタンプ信号FD(“1”信号)が出力され
、セレクタ32へ供給される。これにより、セレクタ3
1から出力されていたレリースレートデータRRに代え
て、フォーシングダンプレートデータFDRがセレクタ
32から出力される。このフォーシンクタンプレートデ
ータFDRはレリースレートデータRRより値が大きい
データであり、したがって、以後、第4図のフォーシン
グダンプ部Fに示すようにエンベロープが急速に下降す
る。
Next, a case will be described in which the next key is turned on when the envelope is in the released state. When the envelope is in the released state, the flip-flop 23 is not yet set and the AND circuit 26 is in the open state. As a result, when the key-on signal KON becomes "1" based on the next key-on, a four-sync stamp signal FD ("1" signal) is output from the AND circuit 26 and supplied to the selector 32. As a result, selector 3
In place of the release rate data RR that was output from 1, forcing damp rate data FDR is output from the selector 32. This forcing rate data FDR has a larger value than the release rate data RR, and therefore, thereafter, the envelope rapidly descends as shown in forcing dump section F in FIG. 4.

次に、アンド回路36、オア回路37および加算回路3
3の働きについて説明する。上述したように、アンド回
路36の出力が「0」である場合は、モード信号MDI
、MDOまたはフォーシングダンプ信号FDが変化する
までレートデータRATEは変化せず、この結果、エン
ベロープ波形データENVDBは第3図(チ)に示すよ
うに直線的に変化する。これに対し、アンド回路36、
オア回路37および加算回路33が挿入されていると、
フォーシングダンプ信号FDまたは信号M I h<“
l”の時アンド回路36が開となり、エンベロープ波形
データENVDBの上位にビットがセレクタ32の出力
に加算される。これにより、第4図に破線で示すように
、エンベロープが上昇する期間およびフォーシングダン
プ部Fにおいてエンベロープ波形データENVDBか曲
線的に変化し、かつ、エンベロープレベルが低いほど(
エンベロープ波形データENVDBの値が大きいほど)
曲線の傾きが急になる。
Next, the AND circuit 36, the OR circuit 37 and the addition circuit 3
I will explain the function of 3. As mentioned above, when the output of the AND circuit 36 is "0", the mode signal MDI
, MDO or the forcing dump signal FD changes, and as a result, the envelope waveform data ENVDB changes linearly as shown in FIG. 3 (H). On the other hand, the AND circuit 36,
When the OR circuit 37 and the addition circuit 33 are inserted,
Forcing dump signal FD or signal M I h<“
1", the AND circuit 36 is opened and the upper bit of the envelope waveform data ENVDB is added to the output of the selector 32. As a result, as shown by the broken line in FIG. In the dump part F, the envelope waveform data ENVDB changes in a curved manner, and the lower the envelope level is (
The larger the value of envelope waveform data ENVDB)
The slope of the curve becomes steeper.

なお、上記の説明においては、エンベロープ波形を第3
図(イ)に示す形状としたが、エンベロープ波形には、
この他に第5図に示すような種々の形状がある。
Note that in the above explanation, the envelope waveform is
The shape shown in Figure (a) was used, but the envelope waveform was
In addition, there are various shapes as shown in FIG.

以上がこの発明の一実施例の詳細である。上記実施例に
よれば、目標値(レベルデータIL、AL。
The details of one embodiment of the present invention have been described above. According to the above embodiment, the target values (level data IL, AL.

IDL、2DL)を−旦最大限までシフトしてからエン
ベロープ波形データを形成している。これにより、特に
、エンベロープを曲線的に変化させる場合において、ユ
ーザ(エンベロープ設定者)のイメージ通りのエンベロ
ープを形成することが可能となる。すなわち、このよう
なソフトを行わない場合は、エンベロープ判断データE
、NVDBのレベルがわからず、このため、曲線の傾き
(データENVDBに応じてきまる)がどの程度になる
か判断がつかない。これに対し、上記実施例においては
、目標値をシフトしているので、エンベロープ波形デー
タENVDBの概略レベルを知ることができ、したがっ
て、曲線の傾きも概略判断するこ七ができる。
IDL, 2DL) are shifted to the maximum limit, and then envelope waveform data is formed. This makes it possible to form an envelope exactly as the user (envelope setter) imagines, especially when changing the envelope in a curved manner. In other words, if such software is not used, the envelope judgment data E
, NVDB levels are not known, and therefore it is not possible to judge how steep the curve will be (depending on the data ENVDB). On the other hand, in the above embodiment, since the target value is shifted, the approximate level of the envelope waveform data ENVDB can be known, and therefore the slope of the curve can also be roughly determined.

「発明の効果」 以上説明したように、この発明によれば、目標値を一旦
シフトしてからエンベロープ波形データを形成する演算
を行うようにしたので、ユーザ(エンベロープ設定者)
のイメージ通りのエンベロープ波形データを形成するこ
とができる。また、この発明によれば、従来、のちのよ
り小さいレベルまでエンベロープ波形データを計算する
ことができ、この結果、発生楽音の余韻がよくなる効果
も得られる。
"Effects of the Invention" As explained above, according to the present invention, the target value is shifted once and then the calculation to form the envelope waveform data is performed, so that the user (envelope setter)
Envelope waveform data can be created exactly as imagined. Further, according to the present invention, it is possible to calculate envelope waveform data down to a level smaller than that of the conventional method, and as a result, it is possible to obtain the effect of improving the lingering sound of generated musical tones.

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

第1図はこの発明の一実施例によるエンベロープ波形発
生装置10の構成を示す回路図、第2図は同実施例を適
用した電子楽器の構成を示すブロック図、第3図、第4
図は各々同実施例の動作を説明するための波形図、第5
図はエンベロープ波形の他の例を示す図である。 20・・・・・・演算回路、3o・・・・・・比較回路
、4o、41.44・・・・・・セレクタ、42・・・
・・・反転回路、43・・・・・・加算回路、65・・
・・・・加算回路。 第2図 第4図
FIG. 1 is a circuit diagram showing the configuration of an envelope waveform generator 10 according to an embodiment of the present invention, FIG. 2 is a block diagram showing the configuration of an electronic musical instrument to which the same embodiment is applied, and FIGS.
The figures are waveform diagrams for explaining the operation of the same embodiment.
The figure is a diagram showing another example of the envelope waveform. 20... Arithmetic circuit, 3o... Comparison circuit, 4o, 41.44... Selector, 42...
...Inverting circuit, 43...Addition circuit, 65...
...Addition circuit. Figure 2 Figure 4

Claims (1)

【特許請求の範囲】[Claims] 第1のレートデータを繰り返し演算し、その演算結果が
第1の目標値に達すると、次に第2のレートデータを繰
り返し演算し、その演算結果が第2の目標値に達すると
、次に第3のレートデータを繰り返し演算し、上記演算
を繰り返すことによってエンベロープ波形データを形成
するエンベロープ波形発生装置において、前記目標値を
、最小の目標値の値が0となる量だけ目標値が小さくな
る方向へシフトする第1のシフト手段と、形成されたエ
ンベロープ波形データを、該データの値が大きくなる方
向へ前記第1のシフト手段のシフト量だけシフトする第
2のシフト手段とを設けてなるエンベロープ波形発生装
置。
The first rate data is repeatedly calculated, and when the calculation result reaches the first target value, the second rate data is repeatedly calculated, and when the calculation result reaches the second target value, the next In an envelope waveform generator that repeatedly calculates third rate data and forms envelope waveform data by repeating the above calculation, the target value is reduced by an amount such that the minimum target value becomes 0. a first shift means for shifting in the direction, and a second shift means for shifting the formed envelope waveform data in the direction in which the value of the data increases by the shift amount of the first shift means. Envelope waveform generator.
JP63329699A 1988-12-27 1988-12-27 Envelope waveform generator Expired - Lifetime JPH0769694B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63329699A JPH0769694B2 (en) 1988-12-27 1988-12-27 Envelope waveform generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63329699A JPH0769694B2 (en) 1988-12-27 1988-12-27 Envelope waveform generator

Publications (2)

Publication Number Publication Date
JPH02173793A true JPH02173793A (en) 1990-07-05
JPH0769694B2 JPH0769694B2 (en) 1995-07-31

Family

ID=18224280

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63329699A Expired - Lifetime JPH0769694B2 (en) 1988-12-27 1988-12-27 Envelope waveform generator

Country Status (1)

Country Link
JP (1) JPH0769694B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0468397A (en) * 1990-07-10 1992-03-04 Yamaha Corp Envelope waveform generating device
JPH0468399A (en) * 1990-07-10 1992-03-04 Yamaha Corp Envelope waveform generating device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0468397A (en) * 1990-07-10 1992-03-04 Yamaha Corp Envelope waveform generating device
JPH0468399A (en) * 1990-07-10 1992-03-04 Yamaha Corp Envelope waveform generating device

Also Published As

Publication number Publication date
JPH0769694B2 (en) 1995-07-31

Similar Documents

Publication Publication Date Title
US4195545A (en) Digital touch response circuit of electronic musical instrument
JPS6129895A (en) Musical sound generator
US4928569A (en) Envelope shape generator for tone signal control
US5248842A (en) Device for generating a waveform of a musical tone
JPS5924433B2 (en) time function waveform generator
US4562763A (en) Waveform information generating system
JPH02173793A (en) Envelope waveform generating device
JP2603070B2 (en) Envelope waveform generator
JP2603071B2 (en) Envelope control device
JPS6227718B2 (en)
US5109746A (en) Envelope generator for use in an electronic musical instrument
JP2576390B2 (en) Envelope waveform generator
JPS6220557B2 (en)
JP2830326B2 (en) Envelope control device
JPS59105692A (en) Touch response apparatus for electronic musical instrument
US5245126A (en) Waveform generation system with reduced memory requirement, for use in an electronic musical instrument
US5022304A (en) Musical tone signal generating apparatus
JPH0155469B2 (en)
US5149903A (en) Musical tone generating apparatus having means for controlling the amplitude of a musical tone signal envelope
JPS6328476Y2 (en)
JPS5913666Y2 (en) envelope waveform generator
JPH043554B2 (en)
JP2964498B2 (en) Envelope waveform generator for electronic musical instruments
JPH03126096A (en) Method for assigning extreme value channel in electronic musical instrument
JP2626474B2 (en) Tone generator