JP2621862B2 - Tone generator - Google Patents

Tone generator

Info

Publication number
JP2621862B2
JP2621862B2 JP62040455A JP4045587A JP2621862B2 JP 2621862 B2 JP2621862 B2 JP 2621862B2 JP 62040455 A JP62040455 A JP 62040455A JP 4045587 A JP4045587 A JP 4045587A JP 2621862 B2 JP2621862 B2 JP 2621862B2
Authority
JP
Japan
Prior art keywords
envelope
function
order
value
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP62040455A
Other languages
Japanese (ja)
Other versions
JPS63208095A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP62040455A priority Critical patent/JP2621862B2/en
Priority to US07/158,562 priority patent/US4961364A/en
Priority to DE19883855465 priority patent/DE3855465T2/en
Priority to EP19880102806 priority patent/EP0280293B1/en
Publication of JPS63208095A publication Critical patent/JPS63208095A/en
Application granted granted Critical
Publication of JP2621862B2 publication Critical patent/JP2621862B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の技術分野] この発明は楽音発生装置に関し、特に、成分波発生手
段からの複数の次数の成分波信号のそれぞれに、対応す
る次数のエンベロープ関数を使ってエンベロープを付与
することにより楽音信号を合成するタイプ(例えば、正
弦波合成タイプ)の楽音発生装置に関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a tone generator, and more particularly, to an envelope using a corresponding order envelope function for each of a plurality of order component wave signals from a component wave generator. (E.g., a sine wave synthesis type) that synthesizes a tone signal by adding

[発明の背景] 従来の楽音発生装置として、周波数成分である複数の
正弦波のそれぞれに対するエンベロープをユーザーが個
別に設定入力し、楽音生成の際に、この個別のエンベロ
ープによって対応する次数の正弦波をエンベロープ制御
することにより楽音信号を正弦波合成するものが知られ
ている。
BACKGROUND OF THE INVENTION As a conventional tone generator, a user individually sets and inputs an envelope for each of a plurality of sine waves as frequency components, and when generating a tone, a sine wave of the order corresponding to the individual envelope. Is known which synthesizes a tone signal with a sine wave by controlling the envelope of the tone signal.

この種の楽音発生装置によれば、複数の正弦波信号が
周波数別(次数別)に独立なエンベロープ関数により制
御されるため、豊かな音色の楽音を得ることが可能であ
る。
According to this type of tone generator, since a plurality of sine wave signals are controlled by independent envelope functions for each frequency (order), it is possible to obtain rich tones.

しかしながら、ユーザーは、得ようとする楽音の周波
数成分のすべてについて、成分別にエンベロープを設定
入力しなければならないため、入力に大変な手間を要
し、その負担が非常に重いという問題があった。
However, since the user has to set and input the envelope for each frequency component of the musical tone to be obtained, there is a problem that the input is very troublesome and the burden is very heavy.

[発明の目的] したがってこの発明は、ごく簡単な入力操作(共通エ
ンベロープ関数の設定入力操作等)だけで、次数毎のエ
ンベロープ関数を自動生成できる楽音発生装置を提供す
ることを目的とする。
[Object of the Invention] Accordingly, an object of the present invention is to provide a musical sound generating apparatus capable of automatically generating an envelope function for each order by only a very simple input operation (setting input operation of a common envelope function, etc.).

[発明の要点] この発明は上記の目的を達成するため、成分波発生手
段からの複数の成分波信号のそれぞれに、対応する次数
のエンベロープ関数を使ってエンベロープを付与するこ
とにより楽音信号を合成するタイプの楽音発生装置にお
いて、すべての次数に共通な共通エンベロープ関数を与
える共通エンベロープ設定手段と、この共通エンベロー
プ設定手段の与える共通エンベロープ関数から次数別の
上記エンベロープ関数を得るため、各次数の値を所定の
基準に従って規格化した次数データxを第1入力とし、
共通エンベロープ関数のレベル値を所定の基準に従って
規格化したレベル値データw(t)を第2入力として受
け、次数データxとレベル値データw(t)との差u=
x−w(t)を演算し、各次数のエンベロープ関数F
x(t)を差uの関数G(u)で定義し、この関数G
(u)として、差uの値の所定の範囲内において、uの
値に依存して変化する特性をもつものを使用し、この関
数G(u)に、各次数xについての、共通エンベロープ
関数との差uの値を適用することにより、上記複数の次
数のエンベロープ関数群のうち、少なくとも一部の複数
のエンベロープ関数群に属するエンベロープ関数が所定
の共通エンベロープ関数が与えられた場合に互に異なる
特性をもつよう、各次数のエンベロープ関数を生成する
エンベロープ変換手段と、を有することを特徴とする楽
音発生装置を提供する。
[Summary of the Invention] In order to achieve the above object, the present invention synthesizes a tone signal by adding an envelope to each of a plurality of component wave signals from a component wave generating means using an envelope function of a corresponding order. In a tone generator of the type shown in FIG. 1, a common envelope setting means for providing a common envelope function common to all orders, and a value of each order in order to obtain the above-mentioned envelope function for each order from the common envelope function provided by the common envelope setting means. Is input as order data x standardized according to a predetermined standard,
Level value data w (t) obtained by standardizing the level value of the common envelope function according to a predetermined standard is received as a second input, and a difference u =
xw (t) is calculated, and the envelope function F of each order is calculated.
x (t) is defined as a function G (u) of the difference u, and this function G
As (u), one having a characteristic that varies depending on the value of u within a predetermined range of the value of difference u is used, and this function G (u) is used as a common envelope function for each order x. By applying the value of the difference u with respect to the envelope functions of the plurality of orders, the envelope functions belonging to at least a part of the plurality of envelope function groups are mutually reciprocal when a predetermined common envelope function is given. And an envelope converting means for generating an envelope function of each order so as to have different characteristics.

一態様において、上記エンベロープ変換手段は、関数
f(u)についての導関数であるf′(u)が、u>0
のときf′(u)<0を満足する関数f(u)を用いて
上記エンベロープ関数を生成することにより、共通エン
ベロープ関数のレベル値データが次数データより小さい
範囲では上記エンベロープ関数がその差に従って減衰さ
れるようにしたことを特徴とする。
In one embodiment, the envelope conversion means determines that a derivative f ′ (u) of the function f (u) is u> 0.
By generating the envelope function using a function f (u) that satisfies f ′ (u) <0 at the time of the above, in a range where the level value data of the common envelope function is smaller than the order data, the envelope function follows the difference. It is characterized by being attenuated.

もう1つの態様において、上記エンベロープ変換手段
は、上記レベル値データとして、上記共通エンベロープ
関数の各時刻における瞬時レベル値を表わすデータを受
け、各次数の値の次数データxと各時刻における瞬時レ
ベル値のデータw(t)との間でその差uを演算し、こ
の差uに対する関数G(u)の値を各時刻について求め
ることにより、各次数のエンベロープ関数の各時刻にお
ける瞬時レベル値を求めることを特徴とする。
In another aspect, the envelope conversion means receives, as the level value data, data representing an instantaneous level value at each time of the common envelope function, and outputs order data x of each order value and an instantaneous level value at each time. The difference u is calculated with respect to the data w (t), and the value of the function G (u) with respect to the difference u is obtained at each time, thereby obtaining the instantaneous level value at each time of the envelope function of each order. It is characterized by the following.

更にもう1つの態様において、上記エンベロープ変換
手段は、上記レベル値データとして、上記共通エンベロ
ープ関数をステップ毎のレートと目標レベルで表現した
場合における、各ステップの目標レベルを表わす目標レ
ベル値データを受け、各次数の値の次数データxと各ス
テップの目標レベル値データw(t)との間で、その差
uを求め、この差uに対する関数G(u)の値を各ステ
ップについて求めることにより、各次数のエンベロープ
関数の各ステップの目標レベル値を求めることを特徴と
する。
In still another aspect, the envelope conversion means receives, as the level value data, target level value data representing a target level of each step when the common envelope function is expressed by a rate and a target level for each step. , The difference u between the order data x of the value of each order and the target level value data w (t) of each step, and the value of the function G (u) for this difference u are found for each step. , A target level value of each step of the envelope function of each order is obtained.

[発明の作用、展開] この発明によれば、ユーザーは、楽音を得るために、
複数の次数の成分波信号のそれぞれに対し、個別にエン
ベロープ関数を作成する必要はなく、わずかに1つのエ
ンベロープ関数を決めれば十分である。なぜなら、エン
ベロープ変換手段により、この単一のエベロープ関数
(共通エンベロープ関数)から複数のエンベロープ関数
が生成されるからである。すなわち、ある次数の成分波
信号をエンベロープ制御するためのエンベロープ関数
は、その成分波信号の次数の値によって、上記共通エン
ベロープ関数を変換することによって得られるのであ
る。
[Operation and Development of the Invention] According to the present invention, the user can obtain a musical sound by:
It is not necessary to individually create an envelope function for each of the component wave signals of a plurality of orders, and it is sufficient to determine only one envelope function. This is because a plurality of envelope functions are generated from this single envelope function (common envelope function) by the envelope conversion means. That is, an envelope function for controlling the envelope of a component wave signal of a certain order is obtained by converting the common envelope function according to the value of the order of the component wave signal.

即ち、この発明によれば、各次数の値を所定の基準に
従って規格化した次数データxを第1入力とし、共通エ
ンベロープ関数のレベル値を所定の基準に従って規格化
したレベル値データw(t)を第2入力として受け、次
数データxとレベル値データw(t)との差u=x−w
(t)を演算する。更にこの発明によれば、次数xのエ
ンベロープ関数をこの差uの関数で定義する。したがっ
て、いま、次数xのエンベロープ関数をFx(t)とお
き、このエンベロープ関数を定義する、uの関数をG
(u)と書くと、 Fx(t)=G(u) となる。本書において、次数xのエンベロープ関数を定
義する関数G(u)のことを変換特性関数G(u)ある
いは次数エンベロープ定義関数G(u)ということがあ
る。
That is, according to the present invention, the order data x obtained by standardizing the values of the respective orders according to a predetermined standard is used as the first input, and the level value data w (t) obtained by standardizing the level value of the common envelope function according to the predetermined standard. As the second input, and the difference u = x−w between the order data x and the level value data w (t)
(T) is calculated. Further, according to the present invention, an envelope function of order x is defined by a function of the difference u. Therefore, an envelope function of order x is set to Fx (t), and a function of u that defines this envelope function is G
When writing (u), F x (t) = G (u). In this document, a function G (u) that defines an envelope function of order x is sometimes referred to as a conversion characteristic function G (u) or an order envelope definition function G (u).

このように、本発明にあっては、次数のエンベロープ
関数はu(=x−w(t))の関数であり、uに依存し
て変化するものである。
As described above, in the present invention, the envelope function of the order is a function of u (= x−w (t)), and changes depending on u.

したがって、原理上、次数xのエンベロープ関数F
x(t)は、次数xの大きさ(次数データが示す次数の
値)と共通エンベロープ関数w(t)(レベル値データ
が示す共通エンベロープ関数のレベル値)に依存するこ
とになる。いま特定のレベル値データを考えると、この
特定の「同じ」レベル値データに対して、uの値は次数
毎に異なることになる。よって、レベル値データを固定
して考えてみた場合には、変換後のエンベロープ関数
(次数エンベロープ関数)は、次数xの大きさに依存す
ることになる。
Therefore, in principle, the envelope function F of order x
x (t) depends on the magnitude of the order x (the value of the order indicated by the order data) and the common envelope function w (t) (the level value of the common envelope function indicated by the level value data). Now, considering specific level value data, the value of u will differ for each order with respect to this specific “same” level value data. Therefore, when the level value data is considered fixed, the envelope function after conversion (order envelope function) depends on the magnitude of the order x.

もっとも、本発明の適用にあたっては、使用するすべ
ての次数のエンベロープ関数が、すべて互に異なる特性
をもつ必要はなくその一部である複数の次数エンベロー
プ関数群についてのみ、所定の共通エンベロープ関数が
与えられた場合に(所与の共通エンベロープ関数との関
係において)、当該次数エンベロープ関数が相互に異な
る特性をもてば足りる。このことは、次数エンベロープ
関数Fx(t)を定義する差uの関数G(u)として、差
uの値の全範囲ではなく一部の範囲ないし所定の範囲内
でのみ、uの値に依存して変化する特性をもつものが使
用できることを意味する。
However, in the application of the present invention, the envelope functions of all the orders used do not need to have all different characteristics from each other, and a predetermined common envelope function is given only to a plurality of order envelope function groups which are a part of them. When given (in relation to a given common envelope function), it is sufficient for the order envelope functions to have different properties. This means that as a function G (u) of the difference u that defines the order envelope function F x (t), the value of u is not limited to the whole range of the value of the difference u but only to a partial range or a predetermined range. This means that those with properties that vary depending on the use can be used.

このことは、差uの軸を周波数軸と「仮定」したとき
の、フィルタ特性関数、例えばローパスフィルタ特性関
数を考えてみると容易に理解できる。一般のローパスフ
ィルタはごく低い周波数帯でほぼ利得1の通過特性を示
し、十分高い周波数帯では阻止特性(理想的には無限大
の減衰)を示す。G(u)によるこれのシミュレーショ
ンを考えてみると、ある値αよりuが小さいときには、
G(u)=1とし、別のある値β(β>α)よりuが大
きいときはG(u)=0とすることにより、G(u)に
通過帯域と阻止帯域の特性をもたせることができる。そ
してuが「α、β」の範囲内にあるときに、uの値に依
存して変化する関数(この場合、ローパスフィルタシミ
ュレーションなので、uについて減少する(例えば単調
減少する)する関数が使用できる)。
This can be easily understood by considering a filter characteristic function, for example, a low-pass filter characteristic function when the axis of the difference u is “assumed” as the frequency axis. A general low-pass filter exhibits a pass characteristic with a gain of approximately 1 in a very low frequency band, and exhibits a rejection characteristic (ideally, infinite attenuation) in a sufficiently high frequency band. Considering this simulation by G (u), when u is smaller than a certain value α,
G (u) = 1, and when u is larger than another certain value β (β> α), G (u) = 0, so that G (u) has pass band and stop band characteristics. Can be. Then, when u is within the range of “α, β”, a function that changes depending on the value of u (in this case, a low-pass filter simulation, so that a function that decreases (eg, monotonically decreases) for u can be used) ).

本書において、このようなu値依存変化関数はf
(u)で示してある。
In this document, such u-value dependent change function is f
(U).

1つの選択例では、上記変換特性関数G(u)は、算
術、論理の演算により計算可能な関数となる。この場
合、エンベロープ変換手段は、適当な理論、計算アルゴ
リズムを実行する手段により基本的に実現できる。
In one selection example, the conversion characteristic function G (u) is a function that can be calculated by arithmetic and logical operations. In this case, the envelope conversion means can be basically realized by means for executing an appropriate theory and calculation algorithm.

別の選択例では、上記変換特性関数G(u)は、次数
の値xと共通エンベロープ関数の値wが与えられればu
から一義的に決まる関数ではあるが、算術、論理の演算
では計算不可能な関数、あるいは少なくとも、xとwの
ある組合せに対応するuに対しては計算不可能な関数と
なる。このような場合、エンベロープ変換手段は計算不
可能な範囲について、変換テーブル(ROMのようなメモ
リで実現できる)を使用することができる。変換テーブ
ルは最初に挙げた選択例の場合でも使用することができ
るが、どちらで実現するかは、処理速度、計算量、所要
記憶容量等を考慮して決定できる。
In another selection example, the conversion characteristic function G (u) is given by u given a value x of the order and a value w of the common envelope function.
Is a function that is uniquely determined from, but is a function that cannot be calculated by arithmetic or logical operations, or at least a function that cannot be calculated for u corresponding to a certain combination of x and w. In such a case, the envelope conversion means can use a conversion table (which can be realized by a memory such as a ROM) for a range in which calculation is not possible. The conversion table can be used even in the case of the first selection example, but it can be determined in consideration of the processing speed, the amount of calculation, the required storage capacity, and the like.

1つの簡単な例では、差uの全定義域に対して、単調
な関数を変換特性関数G(x、w)として選択すること
ができる。この場合、論理の演算(比較、AND、OR等)
は不要で、純粋に算術演算だけで変換を実行できる。
In one simple example, a monotonic function can be selected as the transformation characteristic function G (x, w) for the entire domain of the difference u. In this case, logical operation (comparison, AND, OR, etc.)
Is not required, and the conversion can be performed purely by arithmetic operations.

もう少し複雑な例では、差uの値によって区分的に特
性が変化する関数を変換特性関数G(u)として選択す
る。この場合、uの値によって使用する関数を切り換え
ることになる。例えばu>0の範囲では単調関数G
1(u)を変換特性関数とし、u≦0の範囲では別の単
調関数G2(u)を変換特性関数とする。このような場
合、論理演算が付加されることになる。
In a slightly more complicated example, a function whose characteristics change piecewise according to the value of the difference u is selected as the conversion characteristic function G (u). In this case, the function to be used is switched according to the value of u. For example, in the range of u> 0, the monotone function G
1 (u) is a conversion characteristic function, and another monotone function G 2 (u) is a conversion characteristic function in the range of u ≦ 0. In such a case, a logical operation is added.

いずれにしても、エンベロープ変換手段は、共通エン
ベロープ関数から複数の次数別エンベロープ関数を生成
するものである。この結果、ユーザーは、それぞれの成
分波のために、個別にエンベロープ関数を作成する負担
から開放されることになり、楽音の作成が非常に容易に
なる。
In any case, the envelope conversion means generates a plurality of order-specific envelope functions from the common envelope function. As a result, the user is relieved of the burden of creating an envelope function for each component wave, and it is very easy to create musical sounds.

上記エンベロープ交換手段に入力される共通エンベロ
ープ関数は種々の形式で表現できる。デジタル技術にお
ける最も素朴な例では、エンベロープ関数は波形データ
の形式(エンベロープのレベルの瞬時値を表わすディジ
タルデータのシーケンス)で与えられる。多くの例で
は、エンベロープ関数は圧縮されたデータ(制御情報)
によって表現される。例えば、折線タイプのエンベロー
プ関数を各折点の位置データのセットで表現する(例え
ば、いくつかのステップのレートとレベルのデータで表
現する)。エンベロープ入力装置として、波形データの
形式でエンベロープ関数を入力するものはあまり知られ
ていないが、例えば、タブレットのような入力装置上で
エンベロープ波形を描いて、入力した場合、A/D変換後
のデータ(データ圧縮前のデータ)が波形データの形式
になる。いずれにしろ、共通エンベロープ関数を入力す
るための入力装置の形式は本発明にとって重要なことで
はない。
The common envelope function input to the envelope exchange means can be expressed in various forms. In the most naive example of digital technology, an envelope function is provided in the form of waveform data (a sequence of digital data representing instantaneous values of envelope levels). In many cases, the envelope function is compressed data (control information)
Is represented by For example, a polygonal line type envelope function is represented by a set of position data of each folding point (for example, represented by data of a rate and a level of several steps). As an envelope input device, one that inputs an envelope function in the form of waveform data is not widely known, but, for example, when an envelope waveform is drawn on an input device such as a tablet and input, the A / D converted The data (data before data compression) is in the form of waveform data. In any case, the type of input device for inputting the common envelope function is not critical to the invention.

一方、エンベロープ変換手段にとっては、自身に入力
される共通エンベロープ関数の表現の形式によって、そ
の変換処理の態様が変わってくる。例えば、ある構成例
では、エンベロープ変換手段は、デジタルの波形データ
の形式で与えられる共通エンベロープ関数を同様の形式
の次数別エンベロープ関数に変換する。すなわち、共通
エンベロープ関数の各デジタル値を次数別エンベロープ
関数の各デジタル値に変換する。この変換された波形デ
ータ形式の次数別エンベロープ関数は直接、波形データ
形式の成分波信号に適用してもよいし、あるいは、いっ
たん制御情報の形式にデータ圧縮した後、楽音信号の生
成時に、波形データ形式のエンベロープ関数に復元して
もよい。また、別の構成例では、エンベロープ変換手段
は、制御情報の形式で与えられる共通エンベロープ関数
を同様の形式の次数別エンベロープ関数に変換する。こ
の場合において、単純な例では制御情報の各値(例え
ば、各ステップのレートとレベルのデータの値、あるい
は各折点の座標値)だけについて、上述した変換特性関
数G(u)に従って値を変換することで、次数別エンベ
ロープ関数を得ることができる。もう少し、複雑な例で
は、例えば各折点のポイントだけでなく折線上のいくつ
かのポイント(これらのポイントは、簡単な演算で容易
に求めることができる。なぜなら、制御情報によって、
共通エンベロープ関数が定義されているからである)に
対しても変換特性関数を適用して、次数別エンベロープ
関数を定義する各ポイントを求める。
On the other hand, the manner of the conversion process varies depending on the form of the expression of the common envelope function input to the envelope conversion means. For example, in one configuration example, the envelope conversion means converts a common envelope function provided in the form of digital waveform data into an envelope function for each order having a similar format. That is, each digital value of the common envelope function is converted to each digital value of the degree-specific envelope function. The converted envelope function according to the order in the waveform data format may be directly applied to the component wave signal in the waveform data format. It may be restored to an envelope function in a data format. In another configuration example, the envelope conversion means converts a common envelope function provided in the form of control information into an envelope function for each order having a similar format. In this case, in a simple example, only the values of the control information (for example, the values of the rate and level data of each step, or the coordinate values of each turning point) are calculated according to the above-described conversion characteristic function G (u). By performing the conversion, an order-specific envelope function can be obtained. In a slightly more complicated example, for example, not only the points at each breakpoint, but also some points on the fold line (these points can be easily obtained by simple calculations.
The conversion characteristic function is also applied to the common envelope function to determine each point defining the degree-dependent envelope function.

エンベロープ変換手段により変換された各次数のエン
ベロープ関数は、最終的に対応する次数の成分波信号を
エンベロープ制御するのに使用される。このエンベロー
プ制御は、デジタル的な乗算器、アナログ的な乗算器、
その他機能的もしくは等価的に乗算を行う装置により実
行できる。
The envelope function of each order converted by the envelope conversion means is finally used for envelope control of the component wave signal of the corresponding order. This envelope control is a digital multiplier, an analog multiplier,
It can be executed by a device that performs multiplication functionally or equivalently.

本発明において、成分波信号は正弦波信号には限られ
ず、次数と対応する周波数もしくは周波数スペクトルを
有する任意の波形信号が使用可能である。例えば矩形波
(例えばウォルシュ関数による矩形波)を成分波信号と
して使用できる。
In the present invention, the component wave signal is not limited to a sine wave signal, and any waveform signal having a frequency or a frequency spectrum corresponding to the order can be used. For example, a rectangular wave (for example, a rectangular wave based on a Walsh function) can be used as a component wave signal.

[実施例] 以下、図面を参照してこの発明の実施例について説明
する。本実施例はこの発明を正弦波合成タイプの楽音発
生装置に適用したものである。
Embodiment An embodiment of the present invention will be described below with reference to the drawings. In this embodiment, the present invention is applied to a sine wave synthesis type tone generator.

第1図に本実施例の全体構成を示す。本図において示
されるn個のエンベロープ制御正弦波発生器15−1〜15
−nは演奏入力装置である鍵盤1と各種のデータを入力
するデータ入力装置2とグローバルエンベロープメモリ
(共通エンベロープメモリ)3に結合している。各エン
ベロープ制御正弦波発生器15−1〜15−nは、データ入
力装置2を介してユーザーが設定した倍音データに基づ
いて、それぞれ独立の周波数を持つ正弦波を発生するよ
うに割り当てられる。上記グローバルエンベロープメモ
リ3はRAM構成であり、データ入力装置2によって設定
されたグローバルエンベロープ関数のデータが記憶され
る。そして、このグローバルエンベロープ関数は各エン
ベロープ制御正弦波発生器15−1〜15−nの内部におい
て、割り当てられた周波数(次数)に依存するエンベロ
ープ関数のデータに変換され、この変換されたエンベロ
ープデータにより、内部で発生された正弦波がエンベロ
ープ制御される。
FIG. 1 shows the overall configuration of this embodiment. The n envelope controlled sine wave generators 15-1 to 15 shown in FIG.
-N is connected to a keyboard 1 as a performance input device, a data input device 2 for inputting various data, and a global envelope memory (common envelope memory) 3. Each of the envelope control sine wave generators 15-1 to 15-n is assigned to generate a sine wave having an independent frequency based on harmonic data set by the user via the data input device 2. The global envelope memory 3 has a RAM configuration, and stores data of a global envelope function set by the data input device 2. The global envelope function is converted into data of an envelope function depending on the assigned frequency (order) inside each of the envelope control sine wave generators 15-1 to 15-n. , The internally generated sine wave is envelope controlled.

したがって、本実施例においては、1個のグローバル
エンベロープ関数さえ設定すれば、その関数を基に、n
個の独立なエンベロープ関数が得られるため、ユーザー
は、各正弦波のために、合計n種類ものエンベロープを
設定する必要はなく、エンベロープ作成の労力が非常に
軽減される。
Therefore, in this embodiment, if only one global envelope function is set, n is set based on that function.
Since independent envelope functions are obtained, the user does not need to set a total of n types of envelopes for each sine wave, and the effort of envelope creation is greatly reduced.

上記各エンベロープ制御正弦波発生器15−1〜15−n
からのエンベロープ制御された正弦波データは加算器16
において加算され、加算された信号(楽音信号)は、D/
A変換器17においてアナログ信号に変換され、アンプ1
8、スピーカー19を通って外部へ放音される。
Each of the above envelope controlled sine wave generators 15-1 to 15-n
Envelope controlled sine wave data from the adder 16
And the added signal (tone signal) is D /
The signal is converted to an analog signal by the A
8. Sound is emitted outside through the speaker 19.

上記エンベロープ制御正弦波発生器の詳細を第2図に
示す。符号15で示される点線のわく内が、エンベロープ
制御正弦波発生器15−1〜15−nのうちの1つを代表し
て表わしている。本図において、キーコード発生装置4
は鍵盤1において操作された鍵に対応するキーコードを
発生する。キーコード変換装置5は発生したキーコード
を倍音データ記憶装置10の値に従って変換する。倍音デ
ータ記憶装置10にはデータ入力装置2によりユーザーが
設定可能な0から31までの倍音データ(倍音次数)が記
憶可能であり、キーコード変換装置5は記憶された倍音
データを使って第3図に示す仕方でキーコードを変換す
る。例えば、倍音データが1のときには2倍音に相当す
るキーコードに変換する。位相角発生装置6は周波数デ
ータROMと累算器から成り、キーコード変換装置5から
のキーコードを周波数データROMにて周波数データに変
換し、累算器にてこの周波数データを累算することによ
って、キーコードに対応した位相角を発生し、正弦波RO
M7内の正弦波データを読み出す。したがって、正弦波RO
M7より出力されるのは、倍音データ記憶装置10に設定さ
れた倍音次数に対応する周波数をもつ正弦波信号であ
る。なお、本例では倍音データに従ってキーコードを変
換するようにしたが、周波数データをビットシフト等の
処理を行って、倍音に対応する周波数データとしてもよ
く、あるいは位相角発生装置6から出力する位相角の値
自体を変換して、対応次数の位相角の値としてもよい。
このように種々回路変形が可能である。
The details of the envelope controlled sine wave generator are shown in FIG. A portion surrounded by a dotted line denoted by reference numeral 15 represents one of the envelope controlled sine wave generators 15-1 to 15-n as a representative. In this figure, the key code generator 4
Generates a key code corresponding to a key operated on the keyboard 1. The key code conversion device 5 converts the generated key code according to the value of the overtone data storage device 10. The overtone data storage device 10 can store overtone data (overtone order) from 0 to 31 which can be set by the user using the data input device 2, and the key code conversion device 5 uses the stored overtone data to generate a third harmonic data. The key code is converted in the manner shown in the figure. For example, when the overtone data is 1, the key code is converted to a key code corresponding to the overtone. The phase angle generator 6 comprises a frequency data ROM and an accumulator. The key code from the key code converter 5 is converted into frequency data by the frequency data ROM, and the accumulator accumulates the frequency data. Generates a phase angle corresponding to the key code,
Read the sine wave data in M7. Therefore, the sine wave RO
Output from M7 is a sine wave signal having a frequency corresponding to the harmonic order set in the harmonic data storage device 10. In this example, the key code is converted in accordance with the harmonic data. However, the frequency data may be subjected to a process such as a bit shift to obtain frequency data corresponding to the harmonic, or the phase data output from the phase angle generator 6 may be used. The value of the angle itself may be converted into a value of the phase angle of the corresponding order.
Thus, various circuit modifications are possible.

固定振幅メモリ11は正弦波ROM7からの正弦波信号の振
幅を時間不変に制御する(スケーリングする)データを
記憶するRAMであり、データ入力装置2によってユーザ
ーが設定可能である。固定振幅メモリ11に記憶されるス
ケーリングのデータは各エンベロープ制御正弦波発生器
15−1〜15−n別に独立の値をとることができる。した
がって、各乗算器8において正弦波ROM7からの正弦波デ
ータに固定振幅メモリ11のデータを乗算することによ
り、n個の正弦波信号の相対振幅を独立に制御すること
ができる。
The fixed amplitude memory 11 is a RAM that stores data for controlling (scaling) the amplitude of the sine wave signal from the sine wave ROM 7 in a time-invariant manner, and can be set by the data input device 2 by the user. The scaling data stored in the fixed amplitude memory 11 is stored in each envelope control sine wave generator.
Independent values can be taken for each of 15-1 to 15-n. Accordingly, by multiplying the sine wave data from the sine wave ROM 7 by the data in the fixed amplitude memory 11 in each multiplier 8, the relative amplitudes of the n sine wave signals can be controlled independently.

このようにして振幅制御された乗算器8からの正弦波
信号は後で詳述するエンベロープ変換装置14からのエン
ベロープ信号と乗算されることにより、さらに時間変化
を伴う振幅制御が行われ、エンベロープ正弦波発生器15
の出力となる。
The sine wave signal from the multiplier 8 whose amplitude is controlled in this way is multiplied by an envelope signal from an envelope converter 14 described later in detail, so that amplitude control with a further time change is performed, and the envelope sine Wave generator 15
Output.

上述したようにグローバルエンベロープメモリ3はn
個のエンベロープ制御正弦波発生器15−1〜15−nに共
通なグローバルエンベロープ関数のデータを記憶するも
のである。ここでは、グローバルエンベロープメモリ3
内においてグローバルエンベロープ関数は第4図に例示
するように、4ステップのレートデータとレベルデータ
により記述されている。この形式のグローバルエンベロ
ープ関数はエンベロープ発生装置12によって波形データ
の形式に変換される(第5図参照)。すなわち、エンベ
ロープ発生装置12は累算器と比較器から成り、グローバ
ルエンベロープメモリ3から最初にステップ1のレート
データとレベルデータを受け取った後、レートデータを
くり返し累算し、結果がレベルデータに達した時点でグ
ローバルエンベロープメモリ3から次のステップのレー
トデータとレベルデータを受け取り、以下同様の演算を
くり返してグローバルエンベロープの波形データを得
る。
As described above, the global envelope memory 3 stores n
This is to store global envelope function data common to the envelope control sine wave generators 15-1 to 15-n. Here, the global envelope memory 3
4, the global envelope function is described by four-step rate data and level data as illustrated in FIG. The global envelope function in this format is converted into a waveform data format by the envelope generator 12 (see FIG. 5). That is, the envelope generator 12 comprises an accumulator and a comparator. After first receiving the rate data and the level data of step 1 from the global envelope memory 3, the rate data is repeatedly accumulated, and the result reaches the level data. At this point, the rate data and level data of the next step are received from the global envelope memory 3, and the same operation is repeated to obtain the global envelope waveform data.

ここにおいて、エンベロープ変換装置14は、エンベロ
ープ発生装置12が発生する共通のグローバルエンベロー
プ関数の波形データを倍音データ記憶装置10からの倍音
データ(次数)によって次数別のエンベロープ関数の波
形データに変換する。例えば、図示のエンベロープ制御
正弦波発生器15における倍音データ記憶装置10の倍音デ
ータが1(2倍音を表わす)であれば、エンベロープ変
換装置14により、1次のエンベロープの波形データが生
成され、これが乗算器9において2倍音の周波数をもつ
正弦波信号に乗算され、そのエンベロープを制御するわ
けである。
Here, the envelope conversion device 14 converts the waveform data of the common global envelope function generated by the envelope generation device 12 into the waveform data of the envelope function for each order by the overtone data (order) from the overtone data storage device 10. For example, if the overtone data of the overtone data storage device 10 in the illustrated envelope control sine wave generator 15 is 1 (representing a 2nd overtone), the envelope conversion device 14 generates the primary envelope waveform data. The multiplier 9 multiplies the sine wave signal having the frequency of the overtone by 2 to control the envelope.

上記エンベロープ変換装置14が実行する変換には、原
理上、任意の特性をもたせることができるが、具体例と
して、レゾナンス効果をもたらすような変換特性の例に
ついてまず説明してみる。
The conversion performed by the envelope conversion device 14 can have an arbitrary characteristic in principle, but as a specific example, an example of a conversion characteristic that produces a resonance effect will be described first.

いま、xを次数、すなわち倍音データ記憶装置10から
の倍音データの値、w(t)をグローバルエンベロープ
関数、すなわちエンベロープ発生装置12の出力、Rをレ
ゾナンスの深さとすると、エンベロープ発生装置12によ
り変換されるx次のエンベロープ関数Fx(t)は下記の
条件を満足する。
Assuming that x is the order, that is, the value of the harmonic data from the harmonic data storage device 10, w (t) is the global envelope function, that is, the output of the envelope generating device 12, and R is the resonance depth, the conversion is performed by the envelope generating device 12. The x-th order envelope function F x (t) satisfies the following condition.

(ア)x<w(t)かつf(x−w(t))+R<1の
とき、Fx(t)=1 (イ)x≧w(t)またはf(x−w(t))+R≧1
のとき Fx(t)=f(x−w(t))+R (ただし、f(x−w(t))+R<0のときFx(t)
=0) さらに、x−w(t)を改めてuとおくと、f(u)
は、 (ウ)u<0のときf′(u)>0 (エ)u=0のときf(u)=1 (オ)u>0のときf′(u)<0 を満足する。したがって、f(u)はu=0のとき、す
なわち、次数の値xとグローバルエンベロープ関数の値
W(t)が等しいとき、最大値となり、差u(絶対値)
が大きくなるほど減少する関数である。なお、正確にい
うと、ここで述べている関数f(u)ないしf(x−w
(t))は、「拡張前」の意味、即ち次数xのエンベロ
ープ関数Fx(t)を定義する、uの関数G(u)に拡張
する前における意味であり、次の通りである。f(u)
は、u<0のときf(u)のuについての導関数である
f′(u)がf′(u)>0を満足し、かつf(0)=
1、かつu>0でf′(u)<0である。したがって拡
張前のf(u)はuの範囲[−∞、∞]で定義し得る。
ここでf(α)=0または1を満たす有限のα(α<
0)が存在し、かつf(β)=0または1を満たすβ
(β>0)が存在するものとする。このf(u)を全体
がローパスフィルタ形のG(u)に拡張するときには
(f(α)=1、f(β)=0として)、uの範囲[−
∞、α]ではG(u)=1、uの範囲[β、∞]ではG
(u)=0とし、uの範囲[α、β]ではG(u)=f
(u)とする。即ち、拡張前のf(u)は次数xのエン
ベロープ関数Fx(t)を定義するG(u)のuの所定の
範囲[α、β]を定義するものである。なお本書におい
て、f(u)は基本的には拡張前の意味で使用している
が、いずれにしろエンベロープ変換装置(エンベロープ
変換手段)はf(u)を「使用」して次数xのエンベロ
ープ関数を生成するものである。
(A) When x <w (t) and f (x−w (t)) + R <1, F x (t) = 1 (a) x ≧ w (t) or f (x−w (t) ) + R ≧ 1
F x (t) = f (x−w (t)) + R (where f (x−w (t)) + R <0, F x (t)
= 0) Further, if x−w (t) is set to u again, f (u)
Satisfies (c) f '(u)> 0 when u <0, (d) f (u) = 1 when u = 0, and (f) (u) <0 when u> 0. Therefore, when u = 0, that is, when the value x of the order is equal to the value W (t) of the global envelope function, f (u) becomes the maximum value and the difference u (absolute value)
Is a function that decreases as becomes larger. Note that, more precisely, the functions f (u) to f (x−w
(T)) means “before expansion”, that is, before expansion to a function G (u) of u, which defines an envelope function F x (t) of order x, and is as follows. f (u)
Is that when u <0, f ′ (u), which is the derivative of f (u) with respect to u, satisfies f ′ (u)> 0, and f (0) =
1, and f '(u) <0 when u> 0. Therefore, f (u) before expansion can be defined in the range [-u, ∞] of u.
Here, a finite α (α <α <1 that satisfies f (α) = 0 or 1
0) and β satisfying f (β) = 0 or 1
It is assumed that (β> 0) exists. When f (u) is extended to G (u) of a low-pass filter type as a whole (assuming that f (α) = 1 and f (β) = 0), the range of u [−
(, Α], G (u) = 1, and G in the range of u [β, ∞]
(U) = 0, and G (u) = f in the u range [α, β].
(U). That is, f (u) before expansion defines a predetermined range [α, β] of u of G (u) that defines the envelope function F x (t) of order x. Note that in this document, f (u) is basically used in the sense before expansion, but in any case, the envelope conversion device (envelope conversion means) “uses” f (u) and uses the envelope of order x. Generates a function.

さて、このような次数依存変化関数f(u)を含んで
なる次数エンベロープ定義関数G(u)の一例を第6図
(A)に示す。横軸uは次数xからグローバルエンベロ
ープ関数W(t)の値を差し引いたものである。図示の
ように、u=0の近く、すなわちグローバルエンベロー
プ関数W(x)の値に近い次数xの範囲では、G(u)
は増幅されており、u《0ではG(u)=1であり、
u》0ではG(u)=0になっている。したがって、図
示の変換特性G(u)はローパスフィルターのカットオ
フ周波数近くの成分を強調するレゾナンス効果を与える
ことがわかる。
FIG. 6A shows an example of the order envelope definition function G (u) including such an order-dependent change function f (u). The horizontal axis u is obtained by subtracting the value of the global envelope function W (t) from the order x. As shown in the drawing, G (u) is close to u = 0, that is, in the range of the order x close to the value of the global envelope function W (x).
Has been amplified, G (u) = 1 when u << 0,
When u >> 0, G (u) = 0. Therefore, it can be seen that the illustrated conversion characteristic G (u) provides a resonance effect that emphasizes components near the cutoff frequency of the low-pass filter.

そして、このレゾナンス効果はダイナミックに与えら
れる。すなわち、グローバルエンベロープ関数W(t)
は、一般に時間tによって値が変化する。したがって、
特定の次数x0が与えられた場合、その次数x0からW
(t)を差し引いた値も時間によって変化し、第6図
(A)のu軸上を左右に移動し、それに対応して各G
(u)の値、すなわち、各時点tiにおけるx0次のエンベ
ロープ関数の値Fx0(ti)も変換する。そして、第6図
(A)に従えば、Fx0(ti)の値は次数xがその時点ti
でのグローバルエンベロープ関数の値W(ti)より十分
小さい(低い)ときには1となって減衰されず、次数x
がその時点tiでのグローバルエンベロープ関数の値W
(ti)より十分大きい(高い)ときには0となって完全
に減衰され、次数xがその時点tiでのグローバルエンベ
ロープ関数の値W(ti)に十分近いときは1よりも大き
な幅に増幅される。
And this resonance effect is given dynamically. That is, the global envelope function W (t)
Generally changes with time t. Therefore,
If a particular order x 0 is given, W from the order x 0
The value obtained by subtracting (t) also changes with time, moves right and left on the u-axis in FIG.
The value of (u), that is, the value F x0 (t i ) of the envelope function of order x 0 at each time point t i is also converted. Then, according to FIG. 6 (A), the value of F x0 (t i ) is the order x at the time t i
When the value is sufficiently smaller (lower) than the value W (t i ) of the global envelope function at, it becomes 1 and is not attenuated, and the order x
Is the value W of the global envelope function at the time t i
When it is sufficiently larger (high) than (t i ), it becomes 0 and is completely attenuated. When the order x is sufficiently close to the value W (t i ) of the global envelope function at the time t i , the width becomes larger than 1. Amplified.

別の表現をすれば、ある時点において増幅された値を
とる次数エンベロープ関数は、その時点でのグローバル
エンベロープ関数の値に近い値の次数をもつものであ
る。したがって、強調される成分波の次数が時間によっ
て変化し、時間的にダイナミックなレゾナンス効果が得
られる。
Stated another way, an order envelope function that takes on an amplified value at a certain point in time has an order whose value is close to the value of the global envelope function at that point in time. Therefore, the order of the emphasized component wave changes with time, and a temporally dynamic resonance effect is obtained.

更に別の言い方で説明すると次のようになる。 In other words, it is as follows.

エンベロープは一般に時間の経過につれ、値が変わっ
ていくものである(時間可変関数)。
The envelope generally changes its value over time (time variable function).

本例でレゾナンスがかかる(つまり、ある周波数成分
ないし周波数帯域の部分音(倍音)が強調されるという
こと)周波数成分ないし倍音は、その倍音の値(次数の
値x)が、グローバルエンベロープ関数の時刻tにおけ
る瞬時レベル値w(t)(あるいはグローバルエンベロ
ープ関数を各ステップのレートと目標レベルで表わした
場合における、ステップ毎の目標レベル値)に近いとき
である。
In this example, the resonance is applied (that is, a partial component (overtone) of a certain frequency component or a frequency band is emphasized). The frequency component or the overtone has the value of the harmonic (order value x) of the global envelope function. This is when the instantaneous level value w (t) at time t (or the target level value for each step when the global envelope function is represented by the rate of each step and the target level).

いま、この時間可変の共通(グローバル)エンベロー
プ関数の上を時刻t=0からtの増大する方向へ進んで
いくと、そのときそのときの瞬時レベル値に近い倍音成
分が強調される(レゾナンスがかかる)ことがわかる。
As the time progresses from time t = 0 to time t on the time-varying common (global) envelope function, harmonic components close to the instantaneous level value at that time are emphasized (resonance is reduced). It turns out that it is.

これは、とりもなおさず、「ダイナミックなレゾナン
ス効果」である。即ち時間の経過につれ、そしてグロー
バルエンベロープの瞬時レベル値の変化につれ、時々刻
々と強調される(レゾナンスがかかる)次数成分波が変
わっていく、という時間的にダイナミックなレゾナンス
効果が得られるのである。
This is a "dynamic resonance effect" anyway. That is, a temporally dynamic resonance effect is obtained, in which the order component wave emphasized (resonance applied) changes every moment as time elapses and as the instantaneous level value of the global envelope changes.

いま、第6図の(A)に示すような次数エンベロープ
定義関数G(u)を利用するものとし、一方、第6図の
(B)に示すようなグローバル(共通)エンベロープ関
数w(t)に対してx0次以外にxn次、xp次を考え、xn
x0<xpであるとしてみる。そして、グローバルエンベロ
ープ関数(第6図(B))の最小レベル値0と最大レベ
ル値(ピーク)w(b)に対し、(最小レベル値)0<
xn<x0<xpw(b)(最大レベル値) なる関係が成り立つものとする。
Now, it is assumed that an order envelope definition function G (u) as shown in FIG. 6A is used, while a global (common) envelope function w (t) as shown in FIG. 6B. thinking x n next, the x p next to other than x 0 order with respect to, x n <
Let us assume that x 0 <x p . Then, for the minimum level value 0 and the maximum level value (peak) w (b) of the global envelope function (FIG. 6 (B)), (minimum level value) 0 <
x n <a x 0 <x p w (b ) those (maximum level value) the relationship is established.

第6図(A)の特性に従えば、明らかにxn次のエンベ
ロープ関数はグローバル(共通)エンベロープ関数のレ
ベル値がxnの大きさに近いときに強調され、xnより高い
x0次のエンベロープ関数のレベルはグローバルエンベロ
ープ関数のレベル値がx0(x0>xn)の大きさに近いとき
に強調され、さらにx0次より高いxp次のエンベロープ関
数のレベルは更にグローバルエンベロープ関数のレベル
が高くなって次数xpの大きさに近くなったときに強調さ
れる。したがって、上述したダイナミックなレゾナンス
効果がこれら3つの次数のエンベロープ関数を介して発
生することになるわけであり、当然、xn次のエンベロー
プ関数Fxn(t)の形状(特性)、x0次のエンベロープ
関数Fxo(t)の形状ないし特性、xp次のエンベロープ
関数Fxp(t)の形状ないし特性は互に異なるものとな
る。数学的にいえば、Fxn(t1)≠Fxo(t1)なるt1が存
在し、Fxo(t2)≠Fxp(t2)なるt2が存在し、Fxp(t
3)≠Fxn(t3)なるt3が存在するわけである(ここにF
xj(t1)は次数xiのエンベロープ関数の時刻tiにおける
レベル値を表わしている)。更に、グローバルエンベロ
ープ関数の最小値レベル0と最大にレベルw(b)とに
対し、いずれの次数xn、x0、xpの大きさもその中間値で
ある。上記関係が成立する場合には、いずれの次数のエ
ンベロープ関数Fxn(t)、Fxo(t)、Fxp(t)につ
いても、そのレベルが最大値(レゾナンス最高値)であ
る(1+R)と等しくなる時刻が存在することになる。
According to a characteristic of FIG. 6 (A), clearly x n following the envelope function is highlighted when the level value of the global (common) envelope function is close to the size of x n, greater than x n
x 0-order level of the envelope function is highlighted when the level value of the global envelope function is close to the size of x 0 (x 0> x n), further high level of x p The following envelope function than 0-order x is It is highlighted when the further closer to the magnitude of the level raised by the degree x p of the global envelope function. Therefore, the above-mentioned dynamic resonance effect is generated via the envelope functions of these three orders. Naturally, the shape (characteristics) of the x n -th order envelope function F xn (t), x 0 order shape or properties of the envelope function F xo (t), the shape or characteristics of x p next envelope function F xp (t) becomes mutually different. Mathematically speaking, there exists t1 which is F xn (t1) ≠ F xo (t1), there exists t2 which is F xo (t2) ≠ F xp (t2), and F xp (t
3) There is a t3 of ≠ F xn (t3) (where F
xj (t 1 ) represents the level value at time t i of the envelope function of order x i ). Further, for the minimum value level 0 and the maximum level w (b) of the global envelope function, the magnitudes of any of the orders x n , x 0 , and x p are intermediate values. When the above relationship is established, the level of the envelope function F xn (t), F xo (t), or F xp (t) of any order is the maximum value (the highest resonance value) (1 + R). There will be a time equal to

ところで、使用するすべての次数(第3図でいえば1
次〜32次)のエンベロープ関数が(1+R)の最大値を
もつ必要はない。
By the way, all the orders (1 in FIG. 3)
It is not necessary for the envelope function of the order (32 to 32) to have a maximum value of (1 + R).

次の場合はどうであろうか。即ち、使用するすべての
次数xの大きさがグローバルエンベロープ関数w(t)
のピークw(b)より十分高い、つまり、u≫0でG
(u)=0となるケースである。明らかに、この場合に
は、すべての次数のエンベロープ関数Fx(t)はF
x(t)=0の一定となり、同じになる。
What if: That is, the magnitude of all the orders x used is the global envelope function w (t)
Is sufficiently higher than the peak w (b) of
This is the case where (u) = 0. Obviously, in this case, the envelope function F x (t) of all orders is F
x (t) = 0 becomes constant and the same.

逆に、使用するすべての次数xの大きさがグローバル
エンベロープ関数w(t)の最小値に0(例えばw
(a))より十分低い、つまり、u≪0でG(u)=1
となるケースはどうであろうか。明らかにこの場合は、
使用するすべての次数のエンベロープ関数Fx(t)は、
Fx(t)=1の一定となり、次数にかかわらず同じ特性
になる。
Conversely, the magnitude of all orders x used is 0 (eg, w) for the minimum value of the global envelope function w (t).
(A)) sufficiently lower, that is, G (u) = 1 when u≪0
What about the case? Obviously in this case,
The envelope function F x (t) for all orders used is
F x (t) = 1 is constant, and the same characteristics are obtained regardless of the order.

明らかに、このような意図しない、極端な例では、所
期の目的を果たし得ない。
Obviously, such unintended, extreme examples will not serve the intended purpose.

つまり、次数xの大きさ(次数データx)と共通(グ
ローバル)エンベロープ関数のレベルの大きさ(レベル
値データw(t))については、使用する次数エンベロ
ープ定義関数G(u)との関係において、所定の基準に
従って規格化されていることが必要である。そして、そ
の意味は、使用する次数のデータ(次数データx)と設
定された所定のグローバル(共通)エンベロープ関数の
レベル値のデータ(レベル値データw(t))との間の
差u=x−w(t)を考えてみた場合に、使用する次数
エンベロープ定義関数G(u)が、その特性として、
(a)所定の範囲内でuの値に依存して変化する特性を
有し、(b)各次数のエンベロープ関数Fx(t)を生成
するために、上記の差uの値をG(u)に適用した場合
に少なくとも一部の複数の次数のエンベロープ関数群が
互に異なる特性(全体形状)を有するよう規格化され
た、という意味である。
That is, regarding the magnitude of the order x (order data x) and the level of the common (global) envelope function (level value data w (t)), the relationship between the order envelope definition function G (u) used Must be standardized according to a predetermined standard. The meaning is that the difference u = x between the data of the order to be used (order data x) and the data of the level value of the predetermined global (common) envelope function (level value data w (t)). Considering −w (t), the order envelope definition function G (u) to be used has
(A) has a characteristic that varies depending on the value of u within a predetermined range, and (b) generates the envelope function F x (t) of each order by changing the value of the difference u to G ( When applied to u), it means that at least some of the envelope function groups of a plurality of orders have been normalized so as to have mutually different characteristics (overall shape).

そして、本例のように、差u(=x−w(t))を周
波数情報とみなした場合における、uについてのレゾナ
ンスフィルタ特性(uが、カットオフ周波数とみなす、
u=0に近いとき対応する次数成分が強調される特性)
を次数エンベロープ関数群間に与えるためには、関数f
(u)についての導関数であるf′(u)がu>0のと
きf′(u)<0で、u<0のときf′(u)>0を満
足するf(u)を用いることにより、グローバル(共
通)エンベロープ関数のレベル値w(t)が次数データ
xに近い範囲(つまりu≒0の範囲)では、対応する次
数エンベロープ関数のレベル値がその差uの絶対値が小
さくなるほど大きく増大された特性をもつ各次数のエン
ベロープ関数を生成することができる。
Then, as in this example, when the difference u (= x−w (t)) is regarded as the frequency information, the resonance filter characteristic of u (u is regarded as the cutoff frequency,
Characteristic where the corresponding order component is emphasized when u = 0.)
Is given between the order envelope function groups, the function f
F (u) which satisfies f '(u) <0 when f' (u) which is a derivative of (u) is u> 0 and satisfies f '(u)> 0 when u <0 is used. Accordingly, in a range where the level value w (t) of the global (common) envelope function is close to the order data x (that is, a range of u ≒ 0), the absolute value of the difference u of the corresponding order envelope function is small. Envelope functions of each order can be generated with as much enhanced properties as possible.

ここで、具体的に挙げて、次数別エンベロープ関数へ
の変換を説明してみる。いま、第6図(B)に示すよう
なグローバルエンベロープ関数W(t)がグローバルエ
ンベロープメモリ3よりエンベロープ発生装置12を介し
て与えられるとする。特定の次数x0は点線のレベルにあ
る。この場合、第2図のエンベロープ変換装置14は第6
図(A)に示す変換特性G(u)に従って、第6図
(c)に示すようなx0次のエンベロープ関数Fx0(t)
を生成する。
Here, the conversion to the envelope function for each order will be specifically described. Now, it is assumed that a global envelope function W (t) as shown in FIG. 6 (B) is given from the global envelope memory 3 via the envelope generator 12. The particular order x 0 is at the level of the dotted line. In this case, the envelope conversion device 14 of FIG.
According to the conversion characteristic G (u) shown in FIG. 6A, an envelope function F x0 (t) of the x 0 order as shown in FIG.
Generate

この変換の理解の助けとして、第6図(A)には、第
6図(B)に示すグローバルエンベロープ関数W(t)
のいくつかの値に対するx0次のエンベロープ関数F
x0(t)の値を記入してある。例えば、第6図(B)に
示すように、時点t1やt2ではグローバルエンベロープ関
数の値W(t1)、W(t2)はともに次数x0の値に等し
い。したがって、u=0であり、第6図(A)における
u=0の位置でのG(u)の値が、時点t1、t2における
x0次のエンベロープ関数の値Fx0(t1)、Fx0(t2)であ
る。その他の時刻におけるx0次のエンベロープ関数Fx0
(t)の値も同様に得られる。
As an aid in understanding this transformation, FIG. 6A shows the global envelope function W (t) shown in FIG. 6B.
X 0 order envelope function F for some values of
The value of x0 (t) is entered. For example, as shown in FIG. 6 (B), the value W (t 1) of the global envelope function at time t 1 and t 2, W (t 2) are both equal to the value of order x 0. Therefore, u = 0, and the value of G (u) at the position of u = 0 in FIG. 6 (A) is determined at the time points t 1 and t 2 .
The values of the envelope function of x 0 order are F x0 (t 1 ) and F x0 (t 2 ). X 0- order envelope function F x0 at other times
The value of (t) is obtained similarly.

実際には、第2図のエンベロープ変換装置14はエンベ
ロープ発生装置12から与えられる波形データ形式のグロ
ーバルエンベロープ関数W(t)のすべてのデータ値に
対して上述した変換を実行する。
In practice, the envelope converter 14 of FIG. 2 performs the above-described conversion on all data values of the global envelope function W (t) in the form of waveform data provided by the envelope generator 12.

上記エンベロープ変換装置14は種々の形式で構成する
ことができる。例えば、エンベロープ発生装置12からの
グローバルエンベロープ関数W(t)の瞬時値と倍音デ
ータ記憶装置10からの次数xの値との差を演算する減算
器と、減算器の出力データによりアドレス指定され、変
換後のエンベロープ関数の波形データ値を記憶するメモ
リとで構成できる。あるいは上述した変換特性関数G
(u)もしくは上述のf(x−W(t))が計算可能な
関数のような場合には、適当なアルゴリズムを実行する
ことによって実現できる。例えば、次数値xとグローバ
ルエンベロープ関数の値との差u=x−W(t)を演算
し、その差uを用いてf(x−W(t))を演算し、こ
れにレゾナンス値Rを加え(f(x−W(t))+Rの
演算)、差uが負かどうかを判別し、また、f(x−W
(t))+Rが1より小さいかどうかを判別し、いずれ
の判別条件も成立すれば(x<W(t)かつf(x−W
(t))+R<1に相当する)、変換後のエンベロープ
関数値として定数1を使用し、いずれかの判別条件が成
立しなければ(x≧W(t)またはf(x−W(t))
+R≧1に相当する)、f(x−W(t))+Rが負か
どうか判別し、負でなけれはf(x−W)+Rの値を変
換後のエンベロープ関数値とし、負であれば定数0を変
換後のエンベロープ関数値とする。
The envelope conversion device 14 can be configured in various forms. For example, a subtractor that calculates the difference between the instantaneous value of the global envelope function W (t) from the envelope generator 12 and the value of the order x from the harmonic data storage device 10, and an address specified by the output data of the subtractor, And a memory for storing the waveform data value of the envelope function after the conversion. Alternatively, the above-described conversion characteristic function G
In the case of (u) or a function in which f (x−W (t)) can be calculated, it can be realized by executing an appropriate algorithm. For example, the difference u = x−W (t) between the next numerical value x and the value of the global envelope function is calculated, f (x−W (t)) is calculated using the difference u, and the resonance value R is calculated. (Calculation of f (x−W (t)) + R), it is determined whether or not the difference u is negative.
(T)) It is determined whether or not + R is smaller than 1. If all the determination conditions are satisfied, (x <W (t) and f (x−W
(T)) + R <1, the constant 1 is used as the envelope function value after conversion, and if any of the determination conditions is not satisfied (x ≧ W (t) or f (x−W (t ))
+ R ≧ 1), f (x−W (t)) + R is determined to be negative. If not negative, the value of f (x−W) + R is used as the envelope function value after conversion. In this case, the constant 0 is set as the envelope function value after the conversion.

以上の説明に係るエンベロープ変換装置14は、波形デ
ータ形式のグローバルエンベロープ関数を次数データに
よって波形データ形式のエンベロープ関数に変換するも
のであり、かつその変換を波形データのすべての点で実
行している。即ち、グローバル(共通)エンベロープ関
数の全てのレベル値データ(各時刻における瞬時レベル
値のデータw(t))と次数データxとの間で差u(=
x−w(t))を演算し、この差uに対する関数G
(u)(第6図(A))の値を各時刻について求めるこ
とにより、各次数のエンベロープ関数の各時刻における
瞬時レベル値を求めるものである。
The envelope conversion device 14 according to the above description converts a global envelope function in a waveform data format into an envelope function in a waveform data format by order data, and performs the conversion at all points of the waveform data. . That is, the difference u (=) between all the level value data of the global (common) envelope function (the instantaneous level value data w (t) at each time) and the order data x.
xw (t)), and a function G for the difference u
(U) The instantaneous level value at each time of the envelope function of each order is obtained by obtaining the value of FIG. 6 (A) at each time.

これに対し、第7図に示す構成は、波形データの形式
ではなく第4図に例示するようなレートとレベルのセッ
トで表現されたグローバルエンベロープ関数を同様の形
式の次数別エンベロープ関数に変換するものである。換
言すれば、グローバルエンベロープ関数W(t)上のい
つくかのポイントを変換特性G(u)に従って変換す
る。これらのポイントとして、ここではグローバルエン
ベロープ関数W(t)上のピーク点ないしブレークポイ
ント(第8図のW(a)、W(b)、W(c)、W
(d)、W(e)に相当するポイント)と、関数W
(t)の値が次数xの値と一致するポイント(第8図の
W(t1)、W(t2)に相当するポイント)を使用してい
る。すなわち、グローバル(共通)エンベロープ関数を
ステップ毎のレートと目標レベルで表現した場合におけ
る、各ステップの目標レベルを表わす目標レベル値デー
タを受け、各次数の値の次数データxと各ステップの目
標レベル値データw(t)との間で、その差uを求め、
この差uに対する次数エンベロープ定義関数G(u)
(例えば第6図(A)に示す特性のもの)の値を各ステ
ップについて求めることにより、各次数のエンベロープ
関数の各ステップの目標レベル値を求めるものである。
具体的には、以下の通りである。
On the other hand, the configuration shown in FIG. 7 converts a global envelope function represented by a set of a rate and a level as shown in FIG. 4 into an envelope function for each order having a similar format, instead of the format of the waveform data. Things. In other words, some points on the global envelope function W (t) are transformed according to the transformation characteristic G (u). As these points, here, peak points or breakpoints on the global envelope function W (t) (W (a), W (b), W (c), W (c) in FIG. 8)
(D), points corresponding to W (e)) and the function W
Points where the value of (t) matches the value of the order x (points corresponding to W (t 1 ) and W (t 2 ) in FIG. 8) are used. That is, when the global (common) envelope function is represented by the rate and the target level for each step, the target level value data representing the target level of each step is received, and the order data x of each order value and the target level of each step are received. The difference u between the value data and w (t) is obtained,
The order envelope definition function G (u) for this difference u
The target level value of each step of the envelope function of each order is obtained by obtaining the value of each step (for example, the characteristic shown in FIG. 6A).
Specifically, it is as follows.

すなわち第7図のエンベロープ変換装置14Aは、下記
のようなアルゴリズムを実行することによって、グロー
バルエンベロープ関数を定義するレートとレベル(各ス
テップの目標レベル値)のデータのセットから、x0次の
エンベロープ関数を表現するレートとレベルのデータの
セットを得ることができる。
That envelope converter 14A of FIG. 7 by executing the algorithm shown below, from a set of data rates and levels to define the global envelope function (target level value of each step), x 0-order envelope You can get a set of rate and level data representing the function.

記号の意味として、l(i)、r(i)はグローバル
エンベロープ関数のi番目のステップのレベルとレート
をそれぞれ表わすとし、L(j)、R(j)は次数別エ
ンベロープメモリ14Bに記憶されることになるx0次のエ
ンベロープ関数のj番目のステップのレベルとレートを
それぞれ表わすとする。またl(old)はグローバルエ
ンベロープ関数上のポイントの前回のレベルを表わす。
なお、l(old)の初期値はゼロとし、L(0)もゼロ
とする。i、jの初期値は1である。
As symbols, l (i) and r (i) represent the level and rate of the i-th step of the global envelope function, respectively, and L (j) and R (j) are stored in the order-specific envelope memory 14B. Suppose that the level and the rate of the j-th step of the envelope function of the order 0 are respectively represented. Also, l (old) represents the previous level of the point on the global envelope function.
The initial value of l (old) is set to zero, and L (0) is also set to zero. The initial values of i and j are 1.

グローバルエンベロープメモリ3から今回のステップ
iのレベルl(i)とレートr(i)を読み出す。
The level l (i) and the rate r (i) of the current step i are read from the global envelope memory 3.

l(old)<x0<l(i)またはl(old)>x0>l
(i)が成立するかどうか判別する(つまり、グローバ
ルエンベロープ関数の前回の値と今回の値との間に次数
の値x0があるかどうかみているわけである)。成立すれ
はへ進み、成立しなければへ進む。
l (old) <x 0 <l (i) or l (old)> x 0 > l
(I) it is determined whether satisfied (that is, not looking at whether there is a value x 0 of order between the previous value and the present value of the global envelope function). If it is satisfied, proceed to, otherwise proceed to.

(1+R)をx0次のエンベロープ関数のレベルL
(j)とする(つまり、x0次のエンベロープ関数のj番
目のレベルを求めたわけである)。
(1 + R) is the level L of the envelope function of x 0 order
(J) (that is, the j-th level of the envelope function of order x 0 is obtained).

(x0−l(old))/r(i)を演算し、結果をtとす
る(例えば、第8図のポイントW(a)から次のポイン
トW(t1)までの時間t1を算出していることに相当す
る)。
(X 0 −l (old)) / r (i) is calculated and the result is set to t (for example, the time t 1 from the point W (a) in FIG. 8 to the next point W (t 1 ) is calculated as t). Calculation).

(L(j)−L(j−1))/tを演算し、結果をレー
トR(j)とする(つまり、x0次のエンベロープ関数の
j番目のレートを求めたわけである)。
(L (j) -L (j -1)) calculates the / t, the result is referred to as rate R (j) (that is, not to determine the j-th rate x 0-order envelope function).

次数の値x0をl(old)にセットし、jを1つ進め
る。
The order value x 0 is set to 1 (old), and j is advanced by one.

G(x0−l(i))の値を求め、結果をレベルL
(j)とする(つまりローパスフィルタータイプのレゾ
ナンス効果を与える変換特性G(u)に従って、x0次の
エンベロープ関数のj番目のレベルを得たわけであ
る)。
G (x 0 −l (i)) is obtained, and the result is expressed as level L
(J) to (ie in accordance with the conversion characteristic G giving resonance effect of the low-pass filter type (u), is not to obtain a j-th level of x 0-order envelope function).

(l(i)−l(old))/r(i)を演算し、結果を
tとする(例えば、第8図のポイントW(t1)から次の
ポイントW(b)までの時間を算出していることに相当
する。上記参照)。
Calculates the (l (i) -l (old )) / r (i), the result is referred to as t (e.g., the time from point W of FIG. 8 (t 1) to the next point W (b) This corresponds to the calculation, see above).

(L(j)−L(j−1))/tを演算し、結果をx0
のエンベロープ関数のj番目のレートR(j)とする。
(L (j) -L (j -1)) calculates the / t, the result is j-th rate R x 0-order envelope function (j).

l(i)の値をl(old)にセットし、iとjを1進
め、i<5ならに戻り、i=5なら終了する。
The value of l (i) is set to l (old), i and j are advanced by 1, and the process returns when i <5, and ends when i = 5.

以上の処理を行うことにより、次数別エンベロープメ
モリ14Bには、x0次のエンベロープ関数(第8図(C)
参照)を定義するレートとレベルのセット{(L
(1)、R(1))、(L(2)、R(2))……)}
が格納されることになる。なお上記のアルゴリズムは、
例示にすぎず、同様のエンベロープ関数を他のアルゴリ
ズムを実行することで得ることができる。
By performing the above processing, the order by the envelope memory 14B, x 0-order envelope function (Figure 8 (C)
Set of rates and levels that define
(1), R (1)), (L (2), R (2)) ...)
Will be stored. Note that the above algorithm is
By way of example only, a similar envelope function can be obtained by executing other algorithms.

エンベロープ発生装置14Cは第2図のエンベロープ発
生装置12と同様な構成であり、鍵盤1(第1図参照)上
の押鍵に応答して、次数別エンベロープメモリ14Bより
第1ステップから始めて、レートとレベルのデータを読
み出し、レートとレベル表現の次数別エンベロープ関数
を波形データの形式に変換していく。エンベロープ発生
装置14Cから順次発生される波形データにより、乗算器
8からの対応する次数の正弦波データが乗算器9におい
て振幅制御される。
The envelope generating device 14C has the same configuration as the envelope generating device 12 in FIG. 2, and responds to a key press on the keyboard 1 (see FIG. 1), starting from the first-order envelope memory 14B and starting from the first step. And the level and level data are read out, and the order-specific envelope function of the rate and level expression is converted into waveform data format. Based on the waveform data sequentially generated from the envelope generator 14C, the sine wave data of the corresponding order from the multiplier 8 is amplitude-controlled in the multiplier 9.

以上は、第2図のエンベロープ変換装置14または、第
7図のエンベロープ変換装置14Aで実行される変換特性
G(u)が、ローパスフィルタータイプのレゾナンス効
果をもたらすように選定された場合についての説明であ
った。
The above is a description of the case where the conversion characteristic G (u) executed by the envelope conversion device 14 in FIG. 2 or the envelope conversion device 14A in FIG. 7 is selected to provide a low-pass filter type resonance effect. Met.

次に、より単純なローパスフィルターの効果をもたら
すように、変換特性G(u)を選択した場合について説
明する。
Next, a case where the conversion characteristic G (u) is selected so as to provide a simpler low-pass filter effect will be described.

このような変換特性G(u)は、例えば以下の条件に
よって与えられる。すなわち、w(t)をグローバルエ
ンベロープ関数、xを次数とすると、x次のエンベロー
プ関数Fx(t)は次の条件を満足する。
Such a conversion characteristic G (u) is given by, for example, the following condition. That is, assuming that w (t) is a global envelope function and x is an order, the x-th order envelope function F x (t) satisfies the following condition.

(カ)x≦w(t)のときFx(t)=1 (キ)x>w(t)のときFx(t)=f(x−w
(t)) (ただし、f(x−w(t))<0のときはFx(t)=
0) さらにx−w(t)を改めてuとおくと、f(u)は、 (ク)u=0のときf(u)=1 (ケ)u>0のときf′(u)<0 を満足する。なお、正確にいうと、ここで述べている関
数f(u)ないしf(x−w(t))は、「拡張前」の
意味、即ち次数xのエンベロープ関数Fx(t)を定義す
る、uの関数G(u)に拡張する前における意味であ
り、次の通りである。f(u)はu>0のときf(u)
のuについての導関数であるf′(u)がf′(u)<
0を満足し、かつf(0)=1である。したがって拡張
前のf(u)はuの範囲[0、∞]で定義し得る。ここ
でf(β)=0を満たす有限のβが存在するものにする
(β>0)。このf(u)をG(u)に拡張するときに
は、その範囲[−∞、0]ではG(u)=1、uの範囲
[β、∞]ではG(u)=0とし、uの範囲[0、β]
ではG(u)=f(u)とすることができる。即ち、拡
張前のf(u)は次数xのエンベロープ関数FX(t)を
定義するG(u)のuの所定の範囲[0、β]を定義す
るものである。なお本書において、f(u)は基本的に
は拡張前の意味で使用している。いずれにしろエンベロ
ープ変換装置(エンベロープ変換手段)はf(u)を
「使用」して次数xのエンベロープ関数を生成するもの
である。
(F) Fx (t) = 1 when x ≦ w (t) (g) Fx (t) = f (x−w when x> w (t)
(T)) (However, when f (x−w (t)) <0, F x (t) =
0) Further, if x−w (t) is set to u again, f (u) is expressed as follows: (h) f (u) = 1 when u = 0, (f) f ′ (u) <when u> 0 0 is satisfied. To be precise, the functions f (u) to f (x−w (t)) described herein define “before expansion”, that is, define the envelope function F x (t) of order x. , U before being extended to the function G (u), and is as follows. f (u) is f (u) when u> 0
F ′ (u), the derivative of u with respect to u, is f ′ (u) <
0 and f (0) = 1. Therefore, f (u) before expansion can be defined in the range [0, ∞] of u. Here, it is assumed that there is a finite β satisfying f (β) = 0 (β> 0). When f (u) is extended to G (u), G (u) = 1 in the range [−∞, 0], G (u) = 0 in the range [β, ∞] of u, and u Range [0, β]
Then, G (u) = f (u) can be satisfied. That is, f (u) before expansion defines a predetermined range [0, β] of u of G (u) that defines the envelope function F X (t) of order x. Note that in this document, f (u) is basically used in the meaning before expansion. In any case, the envelope conversion device (envelope conversion means) generates an envelope function of order x by "using" f (u).

本例のG(u)、このF(u)はローパスフィルター
に似た効果を与えるグローバルエンベロープ/次数別エ
ンベロープの変換特性である。このG(u)は第9図
(A)に例示するようにように、u≦0のとき、すなわ
ち、次数xがグローバルエンベロープ関数w(t)の値
より低いとき1となり、u>0のとき、すなわち次数x
の方がグローバルエンベロープ関数w(t)の値より高
いときはその差に従って減少する特性をもっている。第
9図(A)に示す変換特性関数G(u)はその一部にu
値依存変化関数f(u)(f(x−wt))を含んでお
り、このf(u)はその導関数f′(u)がu>0にお
いてf′(u)<0となっている。そしてu≦0でG
(u)=1(通過域)、u≧β(βはf(β)=0を満
たす正値)ではG(u)=0(阻止域)となっている。
In this example, G (u) and F (u) are conversion characteristics of the global envelope / order-specific envelope which provide an effect similar to a low-pass filter. As illustrated in FIG. 9 (A), G (u) becomes 1 when u ≦ 0, that is, when the order x is lower than the value of the global envelope function w (t), and when u> 0, When the order x
Is higher than the value of the global envelope function w (t), it has the characteristic of decreasing according to the difference. The conversion characteristic function G (u) shown in FIG.
It includes a value-dependent change function f (u) (f (x-wt)), which f (u) becomes f ′ (u) <0 when its derivative f ′ (u) is u> 0. I have. And if u ≦ 0, G
When (u) = 1 (pass band) and u ≧ β (β is a positive value satisfying f (β) = 0), G (u) = 0 (blocking band).

このような変換特性G(u)を第2図のエンベロープ
変換装置14にもたせたとする。この場合、エンベロープ
変換装置14は、例えば、次のようなアルゴリズムを実行
することによって、波形データ形式のグローバルエンベ
ロープ関数の各値を波形データ形式のx次のエンベロー
プ関数の各値に変換する。すなわち、次数値xとグロー
バルエンベロープ関数の瞬時値W(t)を比較し、次数
値xの方が小さければ変換後のエンベロープ関数値とし
て定数を使用し、次数値xの方が大きければこのxと上
記瞬時値w(t)を使用してf(x−W(t))を演算
し、その結果の正負を判別し、正ならばその結果を変換
後のエンベロープ関数値とし、負ならばゼロを変換後の
エンベロープ関数値とする。
It is assumed that such a conversion characteristic G (u) is given to the envelope conversion device 14 shown in FIG. In this case, the envelope conversion device 14 converts each value of the global envelope function in the waveform data format into each value of the x-th envelope function in the waveform data format, for example, by executing the following algorithm. That is, the next numerical value x is compared with the instantaneous value W (t) of the global envelope function. If the next numerical value x is smaller, a constant is used as the converted envelope function value, and if the next numerical value x is larger, this x is used. And f (x−W (t)) is calculated using the instantaneous value w (t), and the sign of the result is discriminated. If the sign is positive, the result is set as the envelope function value after conversion. Let zero be the envelope function value after conversion.

このような変換例を第9図に示す。すなわち、第9図
(A)の変換特性G(u)に従って、同図(B)に示す
グローバルエンベロープ関数w(t)をそのすべてのポ
イントについて変換した場合のx0次のエンベロープ関数
Fx0(t)は同図(C)に示すようになる。
FIG. 9 shows such a conversion example. That is, according to the conversion characteristic G of FIG. 9 (A) (u), x 0 -order envelope function when the global envelope function w (t) is converted for all the points shown in (B)
F x0 (t) is as shown in FIG.

また、上記条件(カ)〜(ケ)を満足するローパスフ
ィルータイプの変換特性G(u)を第7図に示すエンベ
ロープ変換装置14Aにもたせた場合は、例えば次のよう
なアルゴリズムを実行することにより、レベルとレート
のセットで表現されたx0次のエンベロープ関数が得られ
る。
When a low-pass fill type conversion characteristic G (u) satisfying the above conditions (f) to (g) is given to the envelope conversion device 14A shown in FIG. 7, for example, the following algorithm is executed. it allows level and rate set x 0-order envelope function expressed by is obtained.

グローバルエンベロープメモリ3から今回のステップ
iのレベルl(i)とレートr(i)を読み出す。
The level l (i) and the rate r (i) of the current step i are read from the global envelope memory 3.

F(x0−l(i))を演算し、その結果をx0次のエン
ベロープ関数のステップiのレベルL(i)とする。
F (x 0 −l (i)) is calculated, and the result is set as the level L (i) of the step i of the envelope function of order x 0 .

(l(i)のl(i−1))/r(i)を演算し、その
結果をステップiの時間tとする。
(L (i-1) of l (i)) / r (i) is calculated, and the result is set as the time t of step i.

(L(i)−L(i−1))/tを演算し、その結果を
x0次のエンベロープ関数のステップiのレートR(i)
とする。
(L (i) -L (i-1)) / t is calculated, and the result is
x The rate R (i) of the step i of the envelope function of order 0
And

ステップ番号iを1つ進め、i<5ならに戻り、i
=5なら終了。
Step number i is incremented by one, and if i <5, return to i
If = 5, end.

いま、第9図(B)において、xo次より高い次数xp
xo次より低い次数xnを考えてみよう。そして次数xpの大
きさは、例えば、図示のグローバル(共通)エンベロー
プ関数w(t)のピークw(b)より、わずかに大きい
としてみよう。また、次数xnの大きさは例えば、図示の
グローバルエンベロープ関数w(t)のブレークポイン
トw(c)と同じであったとしてみよう。とすると、ま
ず、次数xn(xn<xo)について、その次数エンベロープ
関数Fxn(t)は、図示のグローバルエンベロープ関数
w(t)のうち、そのレベルがブレークポイントw
(c)より高い範囲では、u=xn−w(t)<0となる
ので(なぜならxn=w(c)としたので)、次数エンベ
ロープ定義関数G(u)として第9図(A)に示すよう
なものを使用した場合には、u<0でG(u)=1とな
っているので、この範囲、つまり、グローバルエンベロ
ープ関数w(t)のレベルがw(c)より高い範囲でF
xn(t)は最大値1に飽和し、w(c)より低い範囲で
は、第9図(A)の次数エンベロープ定義間数G(u)
の特性に従って減衰したものとなる。この次数xnのエン
ベロープ関数Fxn(x)の全体の形状をx0次のエンベロ
ープ関数Fx0(t)(第9図(C))と比べてみると、
両者は互に異なる形状(特性)を有し、かつ、任意のt
についてFxn(t)≧Fx0(t)(かつ、Fxn(t)>Fx0
(t)を満たすtが存在する)であるので、全体とし
て、x0次のエンベロープ関数Fx0(t)の方がxn次(xn
<x0)のエンベロープ関数Fxn(t)より「減衰」した
ものとなる。一方、xp≒w(b)だがxp>w(b)であ
る、xp次のエンベロープ関数Fxp(t)は、グローバル
エンベロープ関数w(t)のピークw(b)ときでも1
近くにはなるが1にまで飽和せず、ピークw(b)より
低いグローバルエンベロープ関数のレベル範囲では、G
(u)(第9図(A))の特性に従って減衰したものと
なる。ここで、次数xpのエンベロープ関数Fxp(t)と
次数x0のエンベロープ関数Fx0(t)とを比較してみる
と、両者は互に異なる形状(特性)を有し、かつ任意の
tについて、Fx0(t)≧Fxp(t)(かつ、一部のtに
ついてFx0(t)>Fxp(t)が成立するから、 なる面積関係が成立する)であるので全体として、xp
のエンベロープ関数Fxp(t)の方がそれより次数の近
いx0次(x0<xp)のエンベロープ関数Fx0(t)より
「減衰」したものであることがわかる。つまり、xn<x0
<xpについて、これら3つの次数エンベロープ関数Fxn
(t)、Fx0(t)、Fxp(t)の全体形状(特性)は互
に異なり、任意のtについてFxn(t)≧Fx0(t)≧F
xp(t)となって、高い次数のエンベロープ関数ほど減
衰した全体形状(特性)をもつことがわかる。
Now, in FIG. 9 (B), the order x p higher than the order x o
Consider an order x n that is lower than the x o order. The magnitude of order x p, for example, from the illustrated global (common) envelope function peak of w (t) w (b), let us slightly larger. Further, it is assumed that the magnitude of the order xn is the same as the break point w (c) of the illustrated global envelope function w (t), for example. Then, first, for the order x n (x n <x o ), the order envelope function F xn (t) is the level of the global envelope function w (t) whose break point w
In the range higher than (c), u = x n −w (t) <0 (because x n = w (c)), so that the order envelope definition function G (u) is shown in FIG. ), G (u) = 1 when u <0, so that the range, that is, the level of the global envelope function w (t) is higher than w (c). F in range
xn (t) saturates to the maximum value 1 and in the range lower than w (c), the number G (u) between the degree envelope definition of FIG. 9 (A).
Attenuated according to the characteristics of Comparing the envelope function F overall shape of xn (x) of the degree x n x 0-order envelope function F x0 (t) (FIG. 9 (C)) and,
Both have different shapes (characteristics) from each other, and
F xn (t) ≧ F x0 (t) (and F xn (t)> F x0
(T exists that satisfies (t)), so that the envelope function F x0 (t) of order x 0 is of order x n (x n
<X 0 ), which is “attenuated” from the envelope function F xn (t). On the other hand, the envelope function F xp (t) of the order x p where x p ≒ w (b) but x p > w (b) is 1 even at the peak w (b) of the global envelope function w (t)
In the level range of the global envelope function which becomes close but does not saturate to 1 and is lower than the peak w (b), G
(U) Attenuated according to the characteristics of FIG. 9 (A). Here, we compare the envelope function F x0 of the envelope function F xp (t) and the degree x 0 of order x p (t), both have mutually different shapes (properties), and any For t, F x0 (t) ≧ F xp (t) (and for some t, F x0 (t)> F xp (t) holds. Overall the area relationship is established for) comprising, x p next envelope function F xp (t) which from the order of close x 0-order found the following (x 0 <envelope function F x0 (t of x p)) It can be seen that it is more “attenuated”. That is, x n <x 0
For <x p , these three order envelope functions F xn
(T), F x0 (t), and F xp (t) have different overall shapes (characteristics), and for any t, F xn (t) ≧ F x0 (t) ≧ F
xp (t), which indicates that the envelope function of a higher order has an attenuated overall shape (characteristic).

さて、上の例ではxnの大きさ、xpの大きさについて、
所与のグローバルエンベロープ関数w(t)(第9図
(B))の特定のレベルw(b)、w(c)と関連付け
る制限をけて説明したが、これらの特定レベルw
(b)、w(c)との大小関係によらず、xn<x0<xp
ある限り、3つの次数エンベロープ関数Fxn(t)、Fx0
(t)、Fxp(t)の特性(全体形状)は互に異なり、
かつ、次数の高いエンベロープ関数ほど減衰した全体形
状をもつ(任意のtについてFxn(t)≧Fx0(t)≧F
xp(t)なる関係は依然として成立し、かつ が成立する)ことがわかる。
Now, the magnitude of x n in the above example, the size of x p,
Although described with the restrictions associated with particular levels w (b), w (c) of a given global envelope function w (t) (FIG. 9 (B)), these particular levels w
Regardless of the magnitude relation between (b) and w (c), three order envelope functions F xn (t) and F x0 as long as x n <x 0 <x p
The characteristics (overall shape) of (t) and F xp (t) are different from each other,
Further, the envelope function having a higher order has an attenuated overall shape (for any t, F xn (t) ≧ F x0 (t) ≧ F
xp (t) still holds, and Holds).

これに対し、使用するすべての次数x(第3図でいえ
ば1次〜32次)の大きさを、グローバルエンベロープ関
数w(t)(第9図(B))のピークレベルw(b)よ
り十分高い場合、つまり、次数エンベロープ定義関数G
(u)(第9図(A))上で、すべての次数xについ
て、u=x−w(b)≫0となってG(u)=0となる
ような大きさだとした場合にはどうなるであろうか。明
らかにこの場合には、すべての次数のエンベロープ関数
Fx(t)はFx(t)=0となり、同じになってしまう。
また、使用するすべての次数xの大きさを、第9図
(B)において、グローバルエンベロープ関数w(t)
の最低レベル0より十分低い負の大きさ、つまり、すべ
ての使用次数xについて、u=x−0≪0であって第9
図(A)に例示する次数エンベロープ定義関数G(u)
上においてG(u)=1となるような大きさだとした場
合にはどうなるであろうか、明らかにこの場合には、す
べての次数のエンベロープ関数Fx(t)はFx(t)=1
となり同じになってしまう。
On the other hand, the magnitude of all the orders x (1st to 32nd orders in FIG. 3) used is determined by the peak level w (b) of the global envelope function w (t) (FIG. 9 (B)). If it is higher enough, that is, the order envelope definition function G
(U) (FIG. 9 (A)), if u = x−w (b) ≫0 and the size is such that G (u) = 0 for all orders x, What will happen? Obviously, in this case, the envelope function of all orders
F x (t) becomes F x (t) = 0, which is the same.
Further, the magnitudes of all the orders x used are shown in FIG. 9 (B) by the global envelope function w (t).
Negative magnitude sufficiently lower than the lowest level 0, that is, for all use orders x, u = x−0≪0 and
The order envelope definition function G (u) illustrated in FIG.
What would happen if the size were such that G (u) = 1 above, obviously in this case the envelope function F x (t) of all orders would be F x (t) = 1
It will be the same.

明らかに、このような意図しない、極端な例では、所
期の目的を果たし得ない。
Obviously, such unintended, extreme examples will not serve the intended purpose.

つまり、次数xの大きさ(次数データx)と共通(グ
ローバル)エンベロープ関数のレベルの大きさ(レベル
値データw(t))については、使用する次数エンベロ
ープ定義関数G(u)との関係において、所定の基準に
従って規格化されていることが必要である。そして、そ
の意味は、使用する次数のデータ(次数データx)と設
定された所定のグローバル(共通)エンベロープ関数の
レベル値のデータ(レベル値データw(t))との間の
差u=x−w(t)を考えてみた場合に、使用する次数
エンベロープ定義関数G(u)が、その特性として、
(a)所定の範囲内でuの値に依存して変化する特性を
有し、(b)各次数のエンベロープ関数Fx(t)を生成
するために、上記の差uの値をG(u)に適用した場合
に少なくとも一部の複数の次数のエンベロープ関数群が
互に異なる特性(全体形状)を有するよう規格化され
た、という意味である。
That is, regarding the magnitude of the order x (order data x) and the level of the common (global) envelope function (level value data w (t)), the relationship between the order envelope definition function G (u) used Must be standardized according to a predetermined standard. The meaning is that the difference u = x between the data of the order to be used (order data x) and the data of the level value of the predetermined global (common) envelope function (level value data w (t)). Considering −w (t), the order envelope definition function G (u) to be used has
(A) has a characteristic that varies depending on the value of u within a predetermined range, and (b) generates the envelope function F x (t) of each order by changing the value of the difference u to G ( When applied to u), it means that at least some of the envelope function groups of a plurality of orders have been normalized so as to have mutually different characteristics (overall shape).

そして、本例のように、差u(=x−w(t))を周
波数情報とみなした場合における、uについてのローパ
スフィルタ特性(uが小さい間は減衰が少ないか、なし
だが、ある程度の値のuからは減衰量がuの増大につい
て増大するような特性)を次数エンベロープ関数群間に
与えるためには、関数f(u)についての導関数である
f′(u)がu>0のときf′(u)<0を満足するf
(u)を用いることにより、グローバル(共通)エンベ
ロープ関数のレベル値w(t)が次数データxより小さ
い範囲(つまりu>0の範囲)では、対応する次数エン
ベロープ関数のレベル値がその差uに従って減衰される
よう、各次数のエンベロープ関数を生成することができ
る。
Then, as in this example, when the difference u (= x−w (t)) is regarded as the frequency information, the low-pass filter characteristic of u (there is little or no attenuation while u is small, In order to provide a characteristic such that the amount of attenuation increases with an increase in u from the value u) between the order envelope function groups, the derivative f ′ (u) of the function f (u) must be u> 0. F satisfies f '(u) <0
By using (u), in the range where the level value w (t) of the global (common) envelope function is smaller than the order data x (that is, in the range of u> 0), the level value of the corresponding order envelope function is the difference u , An envelope function of each order can be generated.

次に、変換特性G(u)として、ハイパスフィルター
に似た効果をもたらすような特性を選択した場合につい
て説明する。
Next, a case where a characteristic that produces an effect similar to a high-pass filter is selected as the conversion characteristic G (u) will be described.

いま、xを次数、w(t)をグローバルエンベロープ
関数とすると、ハイパスフィルターに似た効果をもたら
すようなx次のエンベロープ関数Fx(t)は例えば次の
条件を満足する。
Now, assuming that x is an order and w (t) is a global envelope function, an x-order envelope function F x (t) having an effect similar to a high-pass filter satisfies the following condition, for example.

(サ)x>w(t)のときFx(t)=1 (シ)x≦w(t)のときFx(t)=f(x−w
(t)) (ただし、f(x−w(t))<0のときはFx(t)= 0) さらに、x−w(t)をuとおくと、f(u)は、 (ス)u=0のときf(u)=1 (セ)u<0のときf′(u)>0 を満足する。なお、正確にいうと、ここで述べている関
数f(u)ないしf(x−w(t))は、「拡張前」の
意味、即ち次数xのエンベロープ関数Fx(t)を定義す
る、uの関数G(u)に拡張する前における意味であり
それは次の通りである。f(u)はu<0のときf
(u)のuについての導関数であるf′(u)がf′
(u)>0を満足し、かつf(0)=1である。したが
って拡張前のf(u)はuの範囲[−∞、0]で定義し
得る。ここでf(α)=0を満たす有限のα(α<0)
が存在するものとする。このf(u)をG(u)に拡張
するときには、その範囲[−∞、α]ではG(u)=
0、uの範囲[0、∞]ではG(u)=1とし、uの範
囲[α、0]ではG(u)=f(u)とする。即ち、拡
張前のf(u)は次数xのエンベロープ関数Fx(t)を
定義するG(u)のuの所定の範囲[α、0]を定義す
るものである。なお本書において、f(u)は基本的に
は拡張前の意味で使用している。いずれにしろエンベロ
ープ変換装置(エンベロープ変換手段)はf(u)を
「使用」して次数xのエンベロープ関数を生成するもの
である。
(X) F x (t) = 1 when x> w (t) (x) F x (t) = f (x−w when x ≦ w (t)
(T)) (However, when f (x−w (t)) <0, F x (t) = 0) Further, if x−w (t) is u, f (u) becomes S) f (u) = 1 when u = 0, and (f) (u)> 0 when u <0. To be precise, the functions f (u) to f (x−w (t)) described here define the meaning of “before expansion”, that is, the envelope function F x (t) of order x. , U before being extended to the function G (u), which is as follows. f (u) is f when u <0
F ′ (u), the derivative of u with respect to u, is f ′
(U)> 0 is satisfied, and f (0) = 1. Therefore, f (u) before expansion can be defined in the range [-∞, 0] of u. Here, a finite α (α <0) that satisfies f (α) = 0
Shall exist. When f (u) is extended to G (u), G (u) = G (u) = G (u) in the range [−∞, α].
G (u) = 1 in the range [0, ∞] of 0 and u, and G (u) = f (u) in the range [α, 0] of u. That is, f (u) before expansion defines a predetermined range [α, 0] of u of G (u) that defines the envelope function F x (t) of order x. Note that in this document, f (u) is basically used in the meaning before expansion. In any case, the envelope conversion device (envelope conversion means) generates an envelope function of order x by "using" f (u).

さて、このような次数依存変化関数f(u)を含んで
なる、本例の次数エンベロープ定義関数G(u)はハイ
パスフィルターに似た効果を与えるグローパルエンベロ
ープ/次数別エンベロープ変換の特性を表わす。この変
換特性G(u)は、第10図(A)に例示するように、u
≧0の範囲、すなわち、次数の値xがグローバルエンベ
ロープ関数の値w(t)より高い範囲では一定(=1)
となり、u<0の範囲、すなわち、次数の値xがグロー
バルエンベロープ関数の値w(t)より低い範囲ではそ
の差に従って減少する特性をもっている。
Now, the order envelope definition function G (u) of the present example, which includes such an order-dependent change function f (u), represents the characteristic of global envelope / order-based envelope conversion that provides an effect similar to a high-pass filter. This conversion characteristic G (u) is, as exemplified in FIG.
≧ 0, that is, constant (= 1) in the range where the value x of the order is higher than the value w (t) of the global envelope function
In the range of u <0, that is, in the range in which the value x of the order is lower than the value w (t) of the global envelope function, the characteristic has a characteristic of decreasing according to the difference.

このような変換特性G(u)を第2図のエンベロープ
変換装置14にもたせたとする。この場合、エンベロープ
変換装置14は、例えば、次のようなアルゴリズムを実行
することによって、波形データ形式で表現されるx次の
エンベロープ関数を生成する。すなわち、次数値xとグ
ローバルエンベロープ関数の瞬時値w(t)とを比較
し、次数値xの方が大きければ、変換後のエンベロープ
関数値として定数を使用し、次数値xの方が小さければ
このxと上記瞬時値w(t)を使用して、f(x−w
(t))を演算し、その結果の正負を判別し、正ならば
その結果を変換後のエンベロープ関数値とし、負なら
ば、ゼロを変換後のエンベロープ関数値とする。
It is assumed that such a conversion characteristic G (u) is given to the envelope conversion device 14 shown in FIG. In this case, the envelope conversion device 14 generates an x-th-order envelope function expressed in a waveform data format, for example, by executing the following algorithm. That is, the next numerical value x is compared with the instantaneous value w (t) of the global envelope function. If the next numerical value x is larger, a constant is used as the converted envelope function value, and if the next numerical value x is smaller, Using this x and the instantaneous value w (t), f (x−w
(T)) is calculated, the sign of the result is determined, and if the result is positive, the result is set as the converted envelope function value, and if the result is negative, zero is set as the converted envelope function value.

このような変換例を第10図に示す。すなわち、第10図
(A)の変換特性G(u)に従って、同図(B)に示す
グローバルエンベロープ関数w(t)をそのすべてのポ
イントについて変換した場合のx0次のエンベロープ関数
Fx0(t)は同図(C)に示すようになる。
FIG. 10 shows such a conversion example. That is, FIG. 10 according to the conversion characteristic G of (A) (u), x 0 -order envelope function when the global envelope function w shown in FIG. (B) (t) is converted for all points
F x0 (t) is as shown in FIG.

また、上記条件(サ)〜(セ)を満足するハイパスフ
ィルタータイプの変換特性G(u)を第7図に示すエン
ベロープ変換装置14Aにもたせた場合は、上述したロー
パスフィルタータイプのところで述べたアルゴリズム
〜と基本的に同様のアルゴリズムを実行することによ
り、レートとレベルのセットで実現されたx0次のエンベ
ロープ関数を得ることができる(ただし、x0次のエンベ
ロープ関数の各ステップのレベルL(i)を求めるため
に、F(x−l(i))を演算するところは、当然なが
ら異なる)。
When the conversion characteristic G (u) of the high-pass filter type that satisfies the above conditions (S) to (C) is given to the envelope conversion device 14A shown in FIG. 7, the algorithm described for the low-pass filter type described above is used. by performing basically the same algorithm and ~ can be obtained x 0-order envelope function is realized at the rate and level of the set (where the level of each step of the x 0-order envelope function L ( The calculation of F (xl (i)) to determine i) is, of course, different).

いままで挙げた例は、いずれも、次数値xとグローバ
ルエンベロープ関数値w(t)との差uをパラメータと
して、フィルター特性を得るものであった。いくつかの
パスバンドあるいはストップバンドをもつフィルター効
果を与える交換を行うことも、容易な変形によって実現
できる。
In each of the examples described so far, the filter characteristic is obtained by using the difference u between the order numerical value x and the global envelope function value w (t) as a parameter. An exchange which gives a filter effect with several passbands or stopbands can also be realized with easy deformation.

次に、非常に単純な変換特性の例について説明する。 Next, an example of a very simple conversion characteristic will be described.

この例は、レートとレベルのセットで表現されるグロ
ーバルエンベロープ関数に対し、レベルデータのみ変換
する。すなわち、グローバルエンベロープ関数の各ステ
ップのレベルデータをLEVELで表わすと、 LEVEL→F(x、LEVEL) の変換を行う。右辺のF(x,LEVEL)はx次のエンベロ
ープ関数の対応するステップのレベルを表わしている。
This example converts only level data to a global envelope function represented by a set of rate and level. That is, when the level data of each step of the global envelope function is represented by LEVEL, conversion from LEVEL to F (x, LEVEL) is performed. F (x, LEVEL) on the right side represents the level of the corresponding step of the envelope function of the x-th order.

例えばF(x、LEVEL)として、 を選んでみる。この場合、次数xの値によって、変換後
のレベルF(x、LEVEL)は次のように変化する。
For example, as F (x, LEVEL), Try to choose. In this case, the converted level F (x, LEVEL) changes as follows depending on the value of the order x.

(イ)0次の場合(x=0) この場合、F(x、LEVEL)は、グローバルエンベロ
ープ関数のレベルによらず、 F(0、LEVEL)=100 となる。例えば、グローバルエンベロープ関数が第11図
(イ)に例示するようなものの場合、0次のエンベロー
プ関数は同図(ロ)に示すようになる。この変換による
0次のエンベロープ関数は0次の正弦波、すなわち、基
音周波数の正弦波をエンベロープ制御するためのもので
ある。
(B) Case of the 0th order (x = 0) In this case, F (x, LEVEL) = 100 regardless of the level of the global envelope function. For example, when the global envelope function is as illustrated in FIG. 11 (A), the zero-order envelope function is as shown in FIG. 11 (B). The 0th-order envelope function by this conversion is for controlling the 0th-order sine wave, that is, the sine wave of the fundamental frequency.

(ロ)1次の場合(x=1) F(1、LEVEL)=LEVEL となる。すなわち、与えられたグローバルエンベロープ
関数の各レベルと1次のエンベロープ関数の各レベルは
常に等しくなる。つまり、1次のエンベロープ関数はグ
ローバルエンベロープ関数と同一である(第11図(ハ)
参照)、この1次のエンベロープ関数の波形データは、
1次の正弦波信号、すなわち基音の2倍音の周波数をも
つ正弦波信号をエンベロープ制御するためのものであ
る。
(B) In the case of first order (x = 1) F (1, LEVEL) = LEVEL. That is, each level of the given global envelope function is always equal to each level of the first-order envelope function. That is, the first-order envelope function is the same as the global envelope function (Fig. 11 (c)).
), The waveform data of this first-order envelope function is
This is for performing envelope control on a primary sine wave signal, that is, a sine wave signal having a frequency of a second harmonic of the fundamental tone.

(ハ)2次の場合(x=2) F(2、LEVEL)=2LEVEL−100となる。グローバルエ
ンベロープ関数の各ステップにおけるレベルを2倍し、
それから100を差し引いた値が2次のエンベロープ関数
の対応レベルになる。(第11図(ニ)参照)。この2次
のエンベロープ関数は2次すなわち3倍音の周波数をも
つ正弦波に適用される。
(C) Second order case (x = 2) F (2, LEVEL) = 2LEVEL−100. Double the level at each step of the global envelope function,
Then, the value obtained by subtracting 100 becomes the corresponding level of the second-order envelope function. (See Fig. 11 (d)). This second-order envelope function is applied to a sine wave having a second or third harmonic frequency.

以上、同様にしてより高次のエンベロープ関数も生成
できる。(式1)に示す変換関数を使用した場合、次数
が高くなるほど減衰され、振幅変化の小さいエンベロー
プ関数が得られる。
As described above, a higher-order envelope function can be similarly generated. When the conversion function shown in (Equation 1) is used, the envelope function is attenuated as the order increases, and an envelope function with a small amplitude change is obtained.

もちろん、上記の関数 は単なる例示にすぎず、その他の任意の関数、例えば、
次数の高いものほど振幅変化が大きくなるような関数を
選ぶことができる。
Of course, the above function Is merely illustrative, and any other function, for example,
A function can be selected such that the higher the order, the larger the amplitude change.

このようなレベルのみの変換は、第7図に示すエンベ
ロープ変換装置14Aによって容易に行うことができる。
例えば、次のようなアルゴリズムを実行すればよい。
Such level-only conversion can be easily performed by the envelope conversion device 14A shown in FIG.
For example, the following algorithm may be executed.

グローバルエンベロープメモリ3からのステップiの
レートr(i)をx次のエンベロープ関数のステップi
のレートR(i)として次数別エンベロープメモリ14B
に転送する。
The rate r (i) of the step i from the global envelope memory 3 is determined by the step i of the x-th order envelope function.
Order-specific envelope memory 14B as the rate R (i) of
Transfer to

グローバルエンベロープメモリ3からステップiのレ
ベルl(i)を読み出す。
The level 1 (i) of step i is read from the global envelope memory 3.

F(x、l(i))を演算し、その結果をx次のエン
ベロープ関数のステップiのレベルL(i)として次数
別エンベロープメモリ14Bに転送する。
F (x, l (i)) is calculated, and the result is transferred to the order-specific envelope memory 14B as the level L (i) of the step i of the x-th envelope function.

ステップ番号iを1つ進めi<5ならに戻り、i=
5なら終了。
Step number i is incremented by one, and if i <5, i = 5
If 5, it ends.

第2図に示すエンベロープ変換装置14も、このようなレ
ベル変換を容易に行うことができる。つまり、エンベロ
ープ発生装置12からの各値w(t)に対してF(x、w
(t))を演算すればよい。
The envelope converter 14 shown in FIG. 2 can easily perform such level conversion. That is, for each value w (t) from the envelope generator 12, F (x, w
(T)) may be calculated.

第7図の構成の場合、レベルのみの変換だけでなく、
レートの変換も行うことが可能である。
In the case of the configuration of FIG. 7, not only the conversion of the level only,
Rate conversion can also be performed.

すなわち、 LEVEL→F(x、LEVEL) RATE→G(x、RATE) G(x、RATE)は、グローバルエンベロープ関数のレー
トの値RATEを次数の値xによって変換したx次のエンベ
ロープ関数の対応するレートの値である。
That is, LEVEL → F (x, LEVEL) RATE → G (x, RATE) G (x, RATE) corresponds to the x-th envelope function obtained by converting the rate value RATE of the global envelope function by the order value x. The value of the rate.

以上、いくつかの例について、詳細な説明を行った
が、本発明は、これらの例に限定されるものではなく、
種々の変形、変更、改良が可能である。例えば、上記実
施例では複数個(n個)エンベロープ制御正弦波発生器
15−1〜15−nを使用しているが、機能的な意味におい
て複数あればよくハードウェアの意味には限定されな
い。
As described above, some examples have been described in detail, but the present invention is not limited to these examples.
Various modifications, changes, and improvements are possible. For example, in the above embodiment, a plurality (n) of envelope controlled sine wave generators
Although 15-1 to 15-n are used, there is no limitation to the meaning of hardware as long as there is a plurality in terms of functional meaning.

[発明の効果] 以上、詳述したように、この発明(請求の範囲第1項
に係る発明)の楽音発生装置は、成分波発生手段からの
複数の成分波信号のそれぞれに、対応する次数のエンベ
ロープ関数を使ってエンベロープを付与することにより
楽音信号を合成するタイプの楽音発生装置において、す
べての次数に共通な共通エンベロープ関数を与える共通
エンベロープ設定手段と、この共通エンベロープ設定手
段の与える共通エンベロープ関数から次数別の上記エン
ベロープ関数を得るため、各次数の値を所定の基準に従
って規格化した次数データxを第1入力とし、共通エン
ベロープ関数のレベル値を所定の基準に従って規格化し
たレベル値データw(t)を第2入力として受け、次数
データxとレベル値データw(t)との差u=x−w
(t)を演算し、各次数のエンベロープ関数Fx(t)を
差uの関数G(u)で定義し、この関数G(u)とし
て、差uの値の所定の範囲内において、uの値に依存し
て変化する特性をもつものを使用し、この関数G(u)
に、各次数xについての、共通エンベロープ関数との差
uの値を適用することにより、上記複数の次数のエンベ
ロープ関数群のうち、少なくとも一部の複数のエンベロ
ープ関数群に属するエンベロープ関数が所定の共通エン
ベロープ関数が与えられた場合に互に異なる特性をもつ
よう、各次数のエンベロープ関数を生成するエンベロー
プ変換手段と、を有することを特徴とする。
[Effects of the Invention] As described above in detail, the musical sound generating device according to the present invention (the invention according to claim 1) provides the order corresponding to each of the plurality of component wave signals from the component wave generating means. In a tone generator of the type that synthesizes a tone signal by giving an envelope using the envelope function of (1), common envelope setting means for providing a common envelope function common to all orders, and a common envelope provided by the common envelope setting means In order to obtain the above-mentioned envelope function for each order from the function, the order data x in which the value of each order is standardized according to a predetermined standard is used as a first input, and the level value data of the common envelope function is standardized according to a predetermined standard. w (t) as the second input, and the difference u = x−w between the order data x and the level value data w (t).
(T) is calculated, and an envelope function Fx (t) of each order is defined by a function G (u) of the difference u. As this function G (u), within a predetermined range of the value of the difference u, A function having a characteristic that changes depending on a value is used, and this function G (u) is used.
By applying the value of the difference u with respect to the common envelope function for each order x, the envelope functions belonging to at least some of the plurality of envelope function groups among the plurality of order envelope function groups are determined by a predetermined value. And envelope conversion means for generating envelope functions of respective orders so as to have mutually different characteristics when a common envelope function is provided.

したがって、ユーザーは複数の成分波のそれぞれにつ
いてエンベロープを作成する必要はなく作成の負担が大
幅に軽減される。この発明は、差uの関数で各次数のエ
ンベロープ関数を定義している点でユニークであり、周
波数情報である次数の大きさを、共通エンベロープ関数
のレベル値(瞬時レベル値あるいはステップ毎の目標レ
ベル値)によって減じたもの、相対化したものである差
uに次数エンベロープ関数を依存させている。これによ
り、従来にはないような次数別エンベロープ関数群を共
通エンベロープ関数から自動生成し得、実用上、大変有
用である。また、請求の範囲第2項のように、(uにつ
いての)ローパスフィルタに応用した場合には、時間の
経過に伴い共通エンベロープの値が変化するにつれ、各
時点の共通エンベロープ値より高い次数の成分波信号
が、次数したがって周波数が高ければ高いほど減衰され
て出力されるという効果が奏される。
Therefore, the user does not need to create an envelope for each of the plurality of component waves, and the burden of creating the envelope is greatly reduced. The present invention is unique in that the envelope function of each order is defined by the function of the difference u, and the magnitude of the order as frequency information is determined by the level value (instantaneous level value or target value for each step) of the common envelope function. The level envelope function is made dependent on the difference u which is reduced by the level value) or relativized. This makes it possible to automatically generate an order-specific envelope function group, which is not present in the related art, from the common envelope function, which is very useful in practice. Further, when applied to a low-pass filter (for u) as in claim 2, as the value of the common envelope changes over time, a higher order of the common envelope value than the common envelope value at each time point is obtained. The effect is obtained that the component wave signal is attenuated and output as the order and hence the frequency are higher.

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

第1図はこの発明の実施例に係る楽音発生装置の全体構
成ブロック図、第2図は第1図に示すエンベロープ制御
正弦波発生器の詳細なブロック図、第3図は第2図のキ
ーコード変換装置におけるキーコード変換論理を示す
図、第4図はグローバルエンベロープメモリ内のデータ
フォーマットを示す図、第5図はエンベロープ発生装置
の動作を説明するのに用いた波形図、第6図は第2図に
示すエンベロープ変換装置にレゾナンスタイプの変換特
性をもたせた場合のエンベロープ変換例を示す波形図、
第7図はエンベロープ変換構成の変形例を示すブロック
図、第8図は第7図に示すエンベロープ変換装置にレゾ
ナンスタイプの変換特性をもたせた場合のエンベロープ
変換例を示す波形図、第9図は第2図に示すエンベロー
プ変換装置にローパスフィルタータイプの変換特性をも
たせた場合のエンベロープ変換例を示す波形図、第10図
は第2図に示すエンベロープ変換装置にハイパスフィル
タータイプの変換特性をもたせた場合のエンベロープ変
換例を示す波形図、第11図は第7図に示すエンベロープ
変換装置にレベルだけを変換する特性をもたせた場合の
エンベロープ変換例を示す波形図である。 2……データ入力装置、3……グローバルエンベロープ
メモリ、7……正弦波ROM、10……倍音データ記憶装
置、12、14C……エンベロープ発生装置、14、14A……エ
ンベロープ変換装置、14B……次数別エンベロープメモ
リ。
FIG. 1 is a block diagram of the overall configuration of a tone generator according to an embodiment of the present invention, FIG. 2 is a detailed block diagram of the envelope-controlled sine wave generator shown in FIG. 1, and FIG. FIG. 4 is a diagram showing a key code conversion logic in the code converter, FIG. 4 is a diagram showing a data format in the global envelope memory, FIG. 5 is a waveform diagram used to explain the operation of the envelope generator, and FIG. FIG. 2 is a waveform diagram showing an example of envelope conversion when the envelope conversion device shown in FIG. 2 has a resonance type conversion characteristic;
FIG. 7 is a block diagram showing a modified example of the envelope conversion configuration, FIG. 8 is a waveform diagram showing an example of envelope conversion when the envelope conversion device shown in FIG. 7 is provided with a resonance type conversion characteristic, and FIG. FIG. 2 is a waveform diagram showing an example of envelope conversion when the envelope conversion device shown in FIG. 2 is provided with a low-pass filter type conversion characteristic. FIG. 10 is a diagram showing the envelope conversion device shown in FIG. 2 having a high-pass filter type conversion characteristic. FIG. 11 is a waveform chart showing an example of envelope conversion in the case where the envelope conversion device shown in FIG. 7 is provided with a characteristic of converting only the level. 2 ... data input device, 3 ... global envelope memory, 7 ... sine wave ROM, 10 ... harmonic data storage device, 12, 14C ... envelope generator, 14, 14A ... envelope conversion device, 14B ... Envelope memory by order.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭57−74790(JP,A) 実開 昭58−36799(JP,U) 特公 昭59−16279(JP,B2) 特公 昭59−35034(JP,B2) ──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-57-74790 (JP, A) JP-A-58-36799 (JP, U) JP-B-59-16279 (JP, B2) JP-B-59-279 35034 (JP, B2)

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】成分波発生手段からの複数の成分波信号の
それぞれに、対応する次数のエンベロープ関数を使って
エンベロープを付与することにより楽音信号を合成する
タイプの楽音発生装置において、 すべての次数に共通な共通エンベロープ関数を与える共
通エンベロープ設定手段と、 この共通エンベロープ設定手段の与える共通エンベロー
プ関数から次数別の上記エンベロープ関数を得るため、
各次数の値を所定の基準に従って規格化した次数データ
xを第1入力とし、共通エンベロープ関数のレベル値を
所定の基準に従って規格化したレベル値データw(t)
を第2入力として受け、次数データxとレベル値データ
w(t)との差u=x−w(t)を演算し、各次数のエ
ンベロープ関数Fx(t)を差uの関数G(u)で定義
し、この関数G(u)として、差uの値の所定の範囲内
において、uの値に依存して変化する特性をもつものを
使用し、この関数G(u)に、各次数xについての、共
通エンベロープ関数との差uの値を適用することによ
り、上記複数の次数のエンベロープ関数群のうち、少な
くとも一部の複数のエンベロープ関数群に属するエンベ
ロープ関数が所定の共通エンベロープ関数が与えられた
場合に互に異なる特性をもつよう、各次数のエンベロー
プ関数を生成するエンベロープ変換手段と、 を有することを特徴とする楽音発生装置。
1. A tone generating apparatus of the type in which a tone signal is synthesized by adding an envelope to each of a plurality of component wave signals from a component wave generating means using an envelope function of a corresponding order. A common envelope setting means for providing a common envelope function common to the first and second, and to obtain the above-mentioned envelope function for each order from the common envelope function provided by the common envelope setting means,
Order data x in which the value of each order is standardized according to a predetermined standard is used as a first input, and level value data w (t) in which the level value of the common envelope function is standardized according to a predetermined standard
As the second input, calculates the difference u = x−w (t) between the order data x and the level value data w (t), and calculates the envelope function F x (t) of each order as a function G ( u), and a function having a characteristic that varies depending on the value of u within a predetermined range of the value of the difference u is used as the function G (u). By applying the value of the difference u with respect to the common envelope function for each order x, the envelope functions belonging to at least some of the plurality of envelope function groups among the plurality of order envelope function groups are converted to a predetermined common envelope function. An envelope conversion means for generating an envelope function of each order so as to have different characteristics when a function is given.
【請求項2】特許請求の範囲第1項記載の楽音発生装置
において、 上記エンベロープ変換手段は、関数f(u)についての
導関数であるf′(u)が、 u>0のときf′(u)<0 を満足する関数f(u)を用いて上記エンベロープ関数
を生成することにより、共通エンベロープ関数のレベル
値データが次数データより小さい範囲では上記エンベロ
ープ関数がその差に従って減衰されるようにしたことを
特徴とする楽音発生装置。
2. The musical tone generating device according to claim 1, wherein said envelope converting means includes f ′ (u) which is a derivative of the function f (u), when u> 0, f ′. By generating the envelope function using a function f (u) satisfying (u) <0, the envelope function is attenuated according to the difference in a range where the level value data of the common envelope function is smaller than the order data. A musical sound generator characterized in that:
【請求項3】特許請求の範囲第1項記載の楽音発生装置
において、 上記エンベロープ変換手段は、上記レベル値データとし
て、上記共通エンベロープ関数の各時刻における瞬時レ
ベル値を表わすデータを受け、各次数の値の次数データ
xと各時刻における瞬時レベル値のデータw(t)との
間でその差uを演算し、この差uに対する関数G(u)
の値を各時刻について求めることにより、各次数のエン
ベロープ関数の各時刻における瞬時レベル値を求めるこ
とを特徴とする楽音発生装置。
3. The tone generator according to claim 1, wherein said envelope conversion means receives data representing an instantaneous level value at each time of said common envelope function as said level value data, and Is calculated between the order data x of the value of and the data w (t) of the instantaneous level value at each time, and a function G (u) for the difference u is calculated.
Of the envelope function of each order by determining the instantaneous level value at each time of the envelope function of each order.
【請求項4】特許請求の範囲第1項記載の楽音発生装置
において、 上記エンベロープ変換手段は、上記レベル値データとし
て、上記共通エンベロープ関数をステップ毎のレートと
目標レベルで表現した場合における、各ステップの目標
レベルを表わす目標レベル値データを受け、各次数の値
の次数データxと各ステップの目標レベル値データw
(t)との間で、その差uを求め、この差uに対する関
数G(u)の値を各ステップについて求めることによ
り、各次数のエンベロープ関数の各ステップの目標レベ
ル値を求めることを特徴とする楽音発生装置。
4. The musical sound generating apparatus according to claim 1, wherein said envelope converting means includes a step of: setting said common envelope function as said level value data by a step-by-step rate and a target level. Receiving the target level value data representing the target level of the step, the order data x of each order value and the target level value data w of each step
(T), a difference u is obtained, and a value of a function G (u) corresponding to the difference u is obtained for each step, thereby obtaining a target level value of each step of the envelope function of each order. A musical sound generator.
JP62040455A 1987-02-25 1987-02-25 Tone generator Expired - Lifetime JP2621862B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP62040455A JP2621862B2 (en) 1987-02-25 1987-02-25 Tone generator
US07/158,562 US4961364A (en) 1987-02-25 1988-02-22 Musical tone generating apparatus for synthesizing musical tone signal by combining component wave signals
DE19883855465 DE3855465T2 (en) 1987-02-25 1988-02-25 Musical tone generating device for synthesizing a musical tone signal by the combination of component waves
EP19880102806 EP0280293B1 (en) 1987-02-25 1988-02-25 Musical tone generating apparatus for synthesizing musical tone signal by combining component wave signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62040455A JP2621862B2 (en) 1987-02-25 1987-02-25 Tone generator

Publications (2)

Publication Number Publication Date
JPS63208095A JPS63208095A (en) 1988-08-29
JP2621862B2 true JP2621862B2 (en) 1997-06-18

Family

ID=12581115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62040455A Expired - Lifetime JP2621862B2 (en) 1987-02-25 1987-02-25 Tone generator

Country Status (1)

Country Link
JP (1) JP2621862B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS583238B2 (en) * 1976-10-16 1983-01-20 ヤマハ株式会社 electronic musical instruments
JPS5774790A (en) * 1980-10-28 1982-05-11 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5820039A (en) * 1981-07-30 1983-02-05 Matsushita Electric Ind Co Ltd Power supply switching circuit
JPS5836799U (en) * 1981-09-03 1983-03-10 ヤマハ株式会社 electronic musical instruments
JPS5916279A (en) * 1982-07-16 1984-01-27 Sanyo Electric Co Ltd Lead storage battery
JPS5935034A (en) * 1982-08-23 1984-02-25 Furukawa Electric Co Ltd:The Preparation of side pit type optical fiber having constant polarized wave

Also Published As

Publication number Publication date
JPS63208095A (en) 1988-08-29

Similar Documents

Publication Publication Date Title
JPS6325359B2 (en)
US5270954A (en) Filter device and electronic musical instrument using the filter device
US4406204A (en) Electronic musical instrument of fixed formant synthesis type
US4211138A (en) Harmonic formant filter for an electronic musical instrument
US4700603A (en) Formant filter generator for an electronic musical instrument
JP2621862B2 (en) Tone generator
JPS5919352B2 (en) electronic musical instruments
JPS6140119B2 (en)
JP2537988Y2 (en) Tone generator
JP2606791B2 (en) Digital signal processor for musical tone generation.
JP2537987Y2 (en) Tone generator
JPS6227397B2 (en)
JPH06180588A (en) Electronic musical instrument
JP2759163B2 (en) Electronic musical instrument with built-in pedal effect adding device
US4549459A (en) Integral and a differential waveshape generator for an electronic musical instrument
JP2521652Y2 (en) Musical sound generator
JPH0131638B2 (en)
JP2537986Y2 (en) Tone generator
JP3777923B2 (en) Music signal synthesizer
US5229534A (en) Envelope generating apparatus
JP3039232B2 (en) Modulation signal generator
JPS633319B2 (en)
JPS61204697A (en) Tone signal generator
JP3448187B2 (en) Electronic musical instrument
JP5092902B2 (en) FIR filter coefficient calculation device, FIR filter device, and FIR filter coefficient calculation program