JPS6154238B2 - - Google Patents

Info

Publication number
JPS6154238B2
JPS6154238B2 JP55167583A JP16758380A JPS6154238B2 JP S6154238 B2 JPS6154238 B2 JP S6154238B2 JP 55167583 A JP55167583 A JP 55167583A JP 16758380 A JP16758380 A JP 16758380A JP S6154238 B2 JPS6154238 B2 JP S6154238B2
Authority
JP
Japan
Prior art keywords
waveform
data
envelope
waveforms
memory
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
Application number
JP55167583A
Other languages
Japanese (ja)
Other versions
JPS5792396A (en
Inventor
Takeshi Mitarai
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 JP55167583A priority Critical patent/JPS5792396A/en
Priority to US06/324,466 priority patent/US4453440A/en
Priority to DE8181305557T priority patent/DE3172071D1/en
Priority to EP81305557A priority patent/EP0053892B1/en
Publication of JPS5792396A publication Critical patent/JPS5792396A/en
Publication of JPS6154238B2 publication Critical patent/JPS6154238B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 本発明は、正弦波あるいは余弦波を音階周波数
に応じて読出し、楽音を生成する電子楽器のエン
ベロープ制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an envelope control method for an electronic musical instrument that reads out a sine wave or a cosine wave according to a scale frequency to generate a musical tone.

近年、電子楽器の分野に於てもデイジタル技術
によつてその主要回路を構成し得るようになつて
きた。このようなデイジタル技術を用いて楽音を
生成する場合、波形を予めメモリに記憶させてお
き、それを音階周波数に応じたクロツクで読出す
か、あるいは読出クロツクは全ての音階に対し一
定周波数で、位相角を当該音階周波数に応じて変
化せしめて読出し、楽音を生成する方法がとられ
ている。
In recent years, it has become possible to construct the main circuits of electronic musical instruments using digital technology. When generating musical tones using such digital technology, the waveform is stored in memory in advance and read out using a clock that corresponds to the scale frequency, or the readout clock is set at a constant frequency and phase for all scales. A method is used in which a musical tone is generated by changing the angle according to the scale frequency and reading it out.

そして、上記メモリには、自然楽器の波形を一
周期分サンプリングして記憶させておくか、ある
いは所定の関数の波形例えば正弦波を記憶してお
くことになる。
Then, in the memory, one cycle of a waveform of a natural musical instrument is sampled and stored, or a waveform of a predetermined function, such as a sine wave, is stored.

しかるに、上記の如き、デイジタル的に楽音を
生成する場合、エンベロープ(音量エンベロー
プ)制御するには、必ず上記波形を表現する2進
データと、エンベロープを表現する2進データと
を乗算する乗算器を必要とする。
However, when generating musical tones digitally as described above, in order to control the envelope (volume envelope), a multiplier must be used to multiply the binary data representing the waveform by the binary data representing the envelope. I need.

しかして、このような乗算器は、如何なる演算
方式のものを用いたとしてもハードウエアが非常
に大となり、電子楽器の回路を集積化する上で不
都合であり、更に、乗算器を用いてエンベロープ
制御された波高値を正しく計算するには、必要ビ
ツト数より下位ビツトのデータまで求めねばなら
ず、非常に煩雑であるという欠点があつた。
However, no matter what arithmetic method is used, such a multiplier requires very large hardware, which is inconvenient for integrating the circuits of electronic musical instruments. In order to correctly calculate the controlled peak value, it is necessary to obtain data of lower bits than the required number of bits, which has the drawback of being extremely complicated.

本発明は以上の点に鑑みてなされたもので、正
弦波あるいは余弦波を音階周波数に応じて読出
し、楽音を生成する電子楽器に於て、上記正弦波
あるいは余弦波を同一周波数で且つ方向が互に逆
でしかも同じ大きさの位相シフトがなされた2つ
の波形として読出し、この読出された2つの波形
を合成して出力を得ると共に、上記位相シフトの
大きさに応じて上記正弦波あるいは余弦波にエン
ベロープ制御を行う電子楽器のエンベロープ制御
方式を提供することを目的とする。
The present invention has been made in view of the above points, and is an electronic musical instrument that reads sine waves or cosine waves according to scale frequencies and generates musical tones. It reads out two waveforms that are opposite to each other and have the same amount of phase shift, and synthesizes the two read out waveforms to obtain an output. The purpose of this invention is to provide an envelope control method for electronic musical instruments that performs envelope control on waves.

以下、本発明の一実施例を図面を参照しながら
詳細に説明する。第1図は、本実施例の主要回路
図を示すもので、図中1は複数の演奏キーが配設
されたキーボードである。このキーボード1から
は操作された演奏キーに対応するキーコードが発
生するようになつている。例えば、このキーコー
ドとは当該演奏キーのオクターブとノート(音
階)を示すコードである。
Hereinafter, one embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a main circuit diagram of this embodiment. In the figure, 1 is a keyboard on which a plurality of performance keys are arranged. The keyboard 1 generates key codes corresponding to the operated performance keys. For example, the key code is a code indicating the octave and note (scale) of the performance key.

そして、このキーコードは周波数情報変換
ROM2に供給される。この周波数情報変換ROM
2には、キーコードに対応する周波数情報(即
ち、位相角を示す情報)が記憶されており、この
周波数情報を累算器3に於て、累算指令(クロ
ツクφについては後述する。)毎に累算する。
And this key code is frequency information conversion
Supplied to ROM2. This frequency information conversion ROM
2 stores frequency information (that is, information indicating a phase angle) corresponding to the key code, and this frequency information is sent to an accumulator 3 as an accumulation command (the clock φ will be described later). Accumulate each time.

そして、累算器3からは例えば6ビツトデータ
が加算器4のA入力端子(A0〜A5)に供給され
る。一方、この加算器4のB入力端子(B0
B5)には、エンベロープ情報発生回路5からの6
ビツトデータが排他的オアゲート6〜6を介
して供給される。また、この加算器4のキヤリー
入力端子cinには、クロツクφが供給される。
For example, 6-bit data is supplied from the accumulator 3 to the A input terminal (A 0 -A 5 ) of the adder 4. On the other hand, the B input terminal (B 0 ~
B5 ) includes envelope information generating circuit 6 from envelope information generating circuit 5.
Bit data is supplied through exclusive OR gates 60-65 . Further, the carry input terminal cin of this adder 4 is supplied with a clock φ.

上記エンベロープ情報発生回路5には、エンベ
ロープ制御指令、例えばキーボード1の演奏キー
のオン/オフ情報あるいは予めスイツチにより設
定されたADSR(アタツク・デイケイ・カステイ
ン・リリース)の各情報等が供給され、その情報
に応じてエンベロープ制御する為の6ビツトデー
タが上記排他的オアゲート6〜6に与えられ
る。なお、この排他的オアゲート6〜6の一
端にはクロツクφが与えられる。
The envelope information generating circuit 5 is supplied with envelope control commands, such as on/off information of performance keys on the keyboard 1 or ADSR (Attack Decay Caste Release) information set in advance by a switch. 6-bit data for envelope control according to the information is given to the exclusive OR gates 60 to 65 . Note that a clock φ is applied to one end of the exclusive OR gates 60 to 65 .

従つて、このクロツクφが“0”レベルのとき
は、加算器4は、上記A入力端子とB入力端子か
ら与えられる6ビツトデータを加算し、S出力端
子(S0〜S5)から6ビツトデータとしてその結果
データを出力する。一方、上記クロツクφが
“1”レベルのときは、加算器4は、上記A入力
端子から与えられる6ビツトのデータと、上記B
入力端子から与えられる6ビツトのデータの各ビ
ツトのレベルを反転し、且つその値に「+1」し
たデータ、即ち、上記B入力端子から与えられる
データの符号を反転したデータ(2の補数表現)
とを加算し、S出力端子から6ビツトデータとし
てその結果データを出力する。
Therefore, when this clock φ is at the "0" level, the adder 4 adds the 6-bit data given from the A input terminal and the B input terminal, and adds the 6-bit data given from the S output terminal (S 0 to S 5 ). Output the resulting data as bit data. On the other hand, when the clock φ is at the "1" level, the adder 4 receives the 6-bit data given from the A input terminal and the B
Data obtained by inverting the level of each bit of the 6-bit data provided from the input terminal and adding "+1" to the value, that is, data obtained by inverting the sign of the data provided from the B input terminal (2's complement representation)
and outputs the resulting data as 6-bit data from the S output terminal.

そして、この加算器4から出力される6ビツト
データはサイン波ROM7に与えられ、サイン波
ROM7のアドレス指定を行う。このサイン波
ROM7には、第2図に示す如きサイン波の波高
値(振幅値)が26(=64)サンプル点に分割され
て記憶されている。そして、このサイン波ROM
からは、6ビツトデータ(D0〜D5)が波高値とし
て出力される。即ち、出力の最上位ビツト
(D5)は符号ビツトで、第2ビツト乃至最下ビツ
ト(D4〜D0)は小数点以下のデータを示すビツト
である。
The 6-bit data output from the adder 4 is then given to the sine wave ROM 7, which generates a sine wave.
Specify the address of ROM7. this sine wave
In the ROM 7, the peak value (amplitude value) of a sine wave as shown in FIG. 2 is stored divided into 2 6 (=64) sample points. And this sine wave ROM
, 6-bit data (D 0 to D 5 ) is output as a peak value. That is, the most significant bit (D 5 ) of the output is a sign bit, and the second to lowest bits (D 4 to D 0 ) are bits indicating data below the decimal point.

そして、このデータは累算器8のA入力端子
(A0〜A5)に与えられ累算される。尚、この累算
器8は、上記クロツクφがインバータ9により反
転された信号即ちクロツクの立上りのタイミン
グでリセツトされる。そして、この累算器8から
は、7ビツトデータが出力端子S(S0〜S6)から
出力される。即ち、この7ビツトデータのうち最
上位ビツト(S6)は符号ビツト、第2ビツト
(S5)は20の位のビツト、第3ビツト乃至最下ビツ
ト(S4〜S0)は小数点以下のデータを示すビツト
である。
This data is then applied to the A input terminals (A 0 -A 5 ) of the accumulator 8 and is accumulated. Incidentally, this accumulator 8 is reset at the timing of the rising edge of the signal obtained by inverting the clock φ by the inverter 9, that is, the clock. From this accumulator 8, 7-bit data is output from output terminals S (S 0 -S 6 ). That is, of this 7-bit data, the most significant bit (S 6 ) is the sign bit, the second bit (S 5 ) is the 20th place bit, and the third to lowest bits (S 4 to S 0 ) are the decimal point. This bit indicates the following data.

上記累算器8から出力される7ビツトデータは
ラツチ10にクロツクの立上りのタイミングに
て読込まれ、その出力データはD/A変換器に与
えられてアナログ信号に変換され音響変換回路を
介して放音されることになる。
The 7-bit data output from the accumulator 8 is read into the latch 10 at the timing of the rising edge of the clock, and the output data is given to the D/A converter, converted into an analog signal, and sent through the acoustic conversion circuit. The sound will be emitted.

次に、本実施例の動作につき説明する。先ず、
第3図を参照して上述したクロツクφ及びそれを
反転したクロツク(累算指令)につき説明す
る。このクロツクφ、は第3図a,bに示す如
く“0”レベルと“1”レベルとを交互に反転す
るクロツクである。いま、説明の便宜上クロツク
φが“0”レベルのときをタイミングt0、クロツ
クφが“1”レベルのときをタイミングt1を称す
ることにする。
Next, the operation of this embodiment will be explained. First of all,
The above-mentioned clock φ and its inverted clock (accumulation command) will be explained with reference to FIG. This clock φ is a clock that alternately inverts the "0" level and the "1" level as shown in FIGS. 3a and 3b. For convenience of explanation, the time when the clock φ is at the "0" level will be referred to as timing t0 , and the time when the clock φ is at the "1" level will be referred to as the timing t1 .

従つて、第3図cに示す如く、第1図に示され
た回路は2つのタイミングにて時分割的に動作す
るようになつている。即ち、上記累算器3は、累
算指令が“1”となる都度、操作されている演
奏キーに応じた周波数情報を加算し、その累算結
果データを加算器4に印加する。
Therefore, as shown in FIG. 3c, the circuit shown in FIG. 1 operates in a time-sharing manner at two timings. That is, the accumulator 3 adds frequency information corresponding to the operating key every time the accumulation command becomes "1", and applies the accumulation result data to the adder 4.

加算器4では、タイミングt0でB入力端子から
エンベロープ情報発生回路5からのデータが直接
供給され、従つて、A入力端子からのデータと加
算が行われる。また、タイミングt1では、上述し
たようにB入力端子には上記エンベロープ情報発
生回路5からのデータが符号が反転されて供給さ
れ、従つて、加算器4ではこのデータとA入力端
子からのデータとが加算される。そして、その加
算結果データはサイン波ROM7に印加される。
In the adder 4, the data from the envelope information generation circuit 5 is directly supplied from the B input terminal at timing t0 , and is therefore added to the data from the A input terminal. Further, at timing t1 , as described above, the data from the envelope information generation circuit 5 is supplied to the B input terminal with its sign inverted, and therefore, the adder 4 inputs this data and the data from the A input terminal. are added. The addition result data is then applied to the sine wave ROM 7.

従つて、サイン波ROM7は、タイミングt0
タイミングt1の2つのタイミングで各々一般に異
なつてアドレス指定され、その結果各々のタイミ
ングでこのサイン波ROM7から読出されたデー
タは累算器8により累算される。
Therefore, the sine wave ROM 7 is generally addressed differently at two timings, t 0 and t 1 , so that the data read from this sine wave ROM 7 at each timing is accumulated by the accumulator 8 . calculated.

そして、その累算結果はラツチ10にクロツク
の立上りのタイミングでラツチされる。
The cumulative result is then latched in latch 10 at the rising edge of the clock.

以上説明したことを数式を用いて表現すると、
次のようになる。即ち、タイミングt0にてサイン
波ROM7から読出される波高値は sin2πa+b/2=sin(a+b)π/32…式(
1) である。なお、“a”とは加算器4のA入力端子
に与えられるデータであり、“b”とはエンベロ
ープ情報発生回路5より排他的オアゲート60〜65
に印加されるデータである。
Expressing the above explanation using a mathematical formula,
It will look like this: That is, the peak value read from the sine wave ROM 7 at timing t 0 is sin2πa+b/2 6 = sin(a+b)π/32...Equation (
1). Note that "a" is the data given to the A input terminal of the adder 4, and "b" is the data given to the A input terminal of the adder 4, and "b" is the data given to the exclusive OR gate 60 to 65 from the envelope information generation circuit 5.
This is the data applied to.

また、タイミングt1にてサイン波ROM7から
読出される波高値は sin2πa−b/2=sin(a−b)π/32…式(
2) である。
Moreover, the peak value read from the sine wave ROM 7 at timing t1 is sin2πa-b/2 6 = sin(a-b)π/32...Equation (
2).

従つて、累算器8の出力は sin2πa+b/2+sin2πa−b/2 =2sinπ/32a cosπ/32b …式(3) となる。 Therefore, the output of the accumulator 8 is sin2πa+b/2 6 +sin2πa−b/2 6 =2sinπ/32a cosπ/32b Equation (3).

従つて、この加算器4のB入力端子に供給する
データによつてエンベロープ制御が行えることが
判明する。即ち、その場合のエンベロープ制御値
は、 2cosπ/32b …式(4) である。
Therefore, it is clear that envelope control can be performed by the data supplied to the B input terminal of the adder 4. That is, the envelope control value in that case is 2cosπ/32b...Equation (4).

次に、第4A図乃至第4C図を参照してエンベ
ロープ制御について具体的に説明する。先ず、キ
ーオン時で、波形が出力していない場合、エンベ
ロープ情報発生回路5は、データ「16」を出力す
る。従つて、各t0のタイミングでは、加算器4の
A入力端子に与えられるデータに「+16」をした
データ、従つて、例えば、A入力端子に印加され
るデータ「0」の場合は出力データ「16」がサイ
ン波ROM7に供給され、アドレス指定される。
一方、各t1のタイミングでは、加算器4のA入力
端子に与えられるデータに「−16」したデータ、
従つて、例えばA入力端子に印加されるデータが
「0」の場合は出力データ「64−16=48」のデー
タがサイン波ROM7に供給され、アドレス指定
される。
Next, envelope control will be specifically explained with reference to FIGS. 4A to 4C. First, when the key is on and no waveform is being output, the envelope information generating circuit 5 outputs data "16". Therefore, at the timing of each t0 , the data applied to the A input terminal of the adder 4 is increased by "+16". Therefore, for example, if the data applied to the A input terminal is "0", the output data is "16" is supplied to the sine wave ROM 7 and addressed.
On the other hand, at the timing of each t1 , data obtained by adding "-16" to the data given to the A input terminal of adder 4,
Therefore, for example, when the data applied to the A input terminal is "0", the output data "64-16=48" is supplied to the sine wave ROM 7 and addressed.

第4A図はその状態を示すもので、同図1はタ
イミングt0にてサイン波ROM7から出力される
データを、同図(2)はタイミングt1にてサイン波
ROM7から出力されるデータを示している。こ
のように、第4A図1と同図2とは位相がπだけ
ずれている為、両者を加算した結果データ、即
ち、ラツチ10の出力データは同図3の如くな
り、波形が何ら出力しないことになる。
Figure 4A shows the state. Figure 1 shows the data output from the sine wave ROM 7 at timing t 0 , and Figure 4A shows the data output from the sine wave ROM 7 at timing t 1.
It shows data output from ROM7. In this way, since the phase of FIG. 4A 1 and FIG. It turns out.

そして、この状態からエンベロープ情報発生回
路5が排他的オアゲート6〜6に供給するデ
ータを「16」から徐々に減少してゆくことによ
り、出力波形の振幅が大きくなつて来る。例え
ば、第4B図には、上記排他的オアゲート6
に供給するデータ「11」とした場合の各出力
波形を示すもので、同図1はタイミングt0にてサ
イン波ROM7から出力されるデータ、同図2は
タイミングt1にてサイン波ROM7から出力され
るデータ、同図3はラツチ10の出力データを示
すものである。
Then, from this state, the envelope information generating circuit 5 gradually decreases the data supplied to the exclusive OR gates 60 to 65 from "16", thereby increasing the amplitude of the output waveform. For example, in FIG. 4B, the exclusive OR gates 6 0 to
6 shows each output waveform when the data supplied to 5 is "11". Figure 1 shows the data output from the sine wave ROM 7 at timing t 0 , and Figure 2 shows the sine wave data output from the sine wave ROM 7 at timing t 1 . The data output from the ROM 7, and FIG. 3 shows the output data from the latch 10.

更に、上記加算器4のB入力端子に供給するデ
ータを減少して「0」とすると、第4C図1〜3
に示すように、タイミングt0でサイン波ROM7
から読出されるデータと、タイミングt1でサイン
波ROM7から読出されるデータとは同一データ
となり、出力波形の振幅は最大レベルとなる。即
ち、この場合は、第4C図1と同図2と示す波形
は全く同位相となり、出力は丁度2倍となるもの
である。
Furthermore, if the data supplied to the B input terminal of the adder 4 is reduced to "0", the data in FIGS. 4C, 1 to 3
As shown in , at timing t 0 , the sine wave ROM7
The data read from the sine wave ROM 7 and the data read from the sine wave ROM 7 at timing t1 are the same data, and the amplitude of the output waveform becomes the maximum level. That is, in this case, the waveforms shown in FIG. 4C 1 and 4C are in exactly the same phase, and the output is exactly doubled.

従つて、演奏キーのキーオン時において、出力
レベルが0レベルから最大レベルまで急激に上昇
するには、上記排他的オアゲート6〜6に印
加するデータを「16」から「0」まで急激に減少
すれば良い。そして、このアタツクの状態からデ
イケイの状態に移行するには、上記排他的オアゲ
ート6〜6に印加するデータを「0」から所
定値まで順次増加させる。更に引き続きサステイ
ン状態に移行するには、上記排他的オアゲート6
〜6に印加するデータを上記所定値に保持せ
しめる。そうすれば、振幅レベルは一定となる。
そして、演奏キーのキーオフの検出により、上記
排他的オアゲート6〜6に印加するデータを
上記所定値からデータ「16」に徐々に増加すれば
良い。そして、上記排他的オアゲート6〜6
に印加するデータが「16」となれば出力レベルは
0となり楽音が出力しなくなる。
Therefore, in order for the output level to rise rapidly from the 0 level to the maximum level when the performance key is turned on, the data applied to the exclusive OR gates 60 to 65 must be rapidly increased from "16" to "0". It is good if it decreases. In order to shift from the attack state to the decay state, the data applied to the exclusive OR gates 60 to 65 are sequentially increased from "0" to a predetermined value. To further continue to the sustain state, use the exclusive OR gate 6 above.
The data applied to 0 to 65 are held at the predetermined values. Then, the amplitude level will be constant.
Then, upon detection of the key-off of the performance key, the data applied to the exclusive OR gates 60 to 65 may be gradually increased from the predetermined value to the data "16". And the above exclusive or gates 6 0 to 6 5
If the data applied to becomes "16", the output level becomes 0 and no musical tone is output.

以上はADSRの各エンベロープ状態を有する場
合について説明したが、オルガン音の如くアタツ
ク、サステイン、リリースの3つのエンベロープ
状態を有する場合、あるいはその他のエンベロー
プ状態を有する場合についても、同様にしてエン
ベロープ制御出来る。
The above explained the case where ADSR has each envelope state, but the envelope can be controlled in the same way when it has three envelope states such as attack, sustain, and release, such as an organ sound, or when it has other envelope states. .

尚、上記実施例に於ては、サイン波ROM7を
1個のみ設け、タイミングt0,t1の2つのタイミ
ングによる時分割処理により周波数が同一で且つ
方向が互に逆でしかも同じ大きさの位相シフトが
なされた2つの波形を読出すようにしたが、2つ
のサイン波ROMを設け、その一方のROMには上
記累算器3からのデータとエンベロープ情報発生
回路5の出力データとの加算値を印加し、他方の
ROMには上記累算器3からのデータからエンベ
ロープ情報発生回路5の出力データを減算したデ
ータを印加し、その結果双方のROMから出力さ
れるデータを加算器で加算し出力するようにすれ
ば、時分割処理を行わずとも上記2つの波形を読
出すことは可能である。
In the above embodiment, only one sine wave ROM 7 is provided, and by time-division processing using two timings, t 0 and t 1 , the sine wave ROM 7 has the same frequency, opposite directions, and the same magnitude. Two phase-shifted waveforms are read out, and two sine wave ROMs are provided, one of which is used to add the data from the accumulator 3 and the output data of the envelope information generation circuit 5. value and the other
If the data obtained by subtracting the output data of the envelope information generation circuit 5 from the data from the accumulator 3 is applied to the ROM, and the resulting data output from both ROMs are added together by an adder and output. , it is possible to read out the above two waveforms without performing time-sharing processing.

また、上記実施例では、26(=64)サンプル点
に分割して正弦波を記憶させたが、一般に2n
ンプル点に分割して正弦波を記憶させた場合、上
記サイン波ROM7から読出される第1、第2の
波形は sin2πa+b/2 …式(5) sin2πa−b/2 …式(6) となり、合成波形は 2sinπ/2n−1a cosπ/2−1b…式(7) となる。また、加算器4のA入力端子に対し上記
排他的オアゲート6〜6の如き排他的オアゲ
ートを設け、その各一端にクロツクφを印加し、
他端に累算器3出力を印加するようにし、一方、
加算器4のB入力端子にはエンベロープ情報発生
回路5の出力を直接印加するようにすれば、上記
第1、第2の波形は sin2πa+b/2 …式(8) sin2πb−a/2 …式(9) となり、合成波形は 2cosπ/2n−1a sinπ/2n−1b…式(10
) となる。従つて、この場合、エンベロープ制御値
は 2sinπ/2n−1b …式(11) となる。
In addition, in the above embodiment, the sine wave is divided into 2 6 (=64) sample points and stored, but generally when the sine wave is divided into 2 n sample points and stored, the sine wave is read from the sine wave ROM 7. The first and second waveforms are sin2πa+b/2 n ...Equation (5) sin2πa-b/2 n ...Equation (6), and the composite waveform is 2sinπ/2 n-1 a cosπ/2 n -1b...Equation (7) becomes. Furthermore, exclusive OR gates such as the exclusive OR gates 60 to 65 described above are provided for the A input terminal of the adder 4, and a clock φ is applied to one end of each of the exclusive OR gates 60 to 65.
The accumulator 3 output is applied to the other end, while
If the output of the envelope information generation circuit 5 is directly applied to the B input terminal of the adder 4, the first and second waveforms will be sin2πa+b/2 n ...Formula (8) sin2πb-a/2 n ... Equation (9) becomes, and the composite waveform is 2cosπ/2 n-1 a sinπ/2 n-1 b...Equation (10
) becomes. Therefore, in this case, the envelope control value is 2sinπ/2 n-1 b...Equation (11).

更に、上記実施例では2つの正弦波を加算して
合成波形を得るようにしたが減算して合成波形を
得るようにすることも出来る。即ち、その場合、
合成波形は ±(sin2πa+b/2−sin2πa−b/2)= ±2cosπ/2n−1asinπ/2n−1b …式(12) となる(復号同順、以下同様)。従つて、この場
合のエンベロープ制御値は ±2sinπ/2n−1 …式(13) である。更に、上記同様にして、第1、第2の波
形を式(8)、式(9)の如く設定すると、合成波形は、 ±(sin2πa+b/2−sin2πb−a/2)= ±2sinπ/2n−1acosπ/2n−1b …式(14) であり、その場合のエンベロープ制御値は ±2cosπ/2n−1b …式(15) となる。
Further, in the above embodiment, two sine waves are added to obtain a composite waveform, but a composite waveform may be obtained by subtraction. That is, in that case,
The composite waveform is ±(sin2πa+b/2 n −sin2πa−b/2 n )=±2cosπ/2 n−1 asinπ/2 n−1 b (12) (same order of decoding, same below). Therefore, the envelope control value in this case is ±2sinπ/2n -1 ...Equation (13). Furthermore, in the same manner as above, if the first and second waveforms are set as in equations (8) and (9), the composite waveform is: ±(sin2πa+b/2 n −sin2πb−a/2 n )= ±2sinπ /2 n-1 acosπ/2 n-1 b...Equation (14), and the envelope control value in that case is ±2cosπ/2 n-1 b...Equation (15).

また、同様にして、2つの余弦波の加算または
減算により合成波形を得ることが出来る。即ち、
第1、第2の波形を cos2πa+b/2 …式(16) cos2πa−b/2 …式(17) とした場合、 cos2πa+b/2+cos2πa−b/2 =2cosπ/2n−1acosπ/2n−1b…式(18) あるいは、 ±(cos2πa+b/2−cos2πa−b/2) =±2sinπ/2n−1asinπ/2n−1b …式(19) となる。
Similarly, a composite waveform can be obtained by adding or subtracting two cosine waves. That is,
When the first and second waveforms are cos2πa+b/2 n ...Equation (16) cos2πa-b/2 n ...Equation (17), cos2πa+b/2 n +cos2πa-b/2 n =2cosπ/2 n-1 acosπ /2 n-1 b...Formula (18) Or, ±(cos2πa+b/2 n -cos2πa-b/2 n ) =±2sinπ/2 n-1 asinπ/2 n-1 b...Formula (19).

従つて、式(18)の場合は、エンベロープ制御値
は 2cosπ/2n−1b …式(20) となり、また式(19)の場合はエンベロープ制御値
は、 〓2sinπ/2n−1b …式(21) となる。
Therefore, in the case of equation (18), the envelope control value is 2cosπ/2 n-1 b...Equation (20), and in the case of equation (19), the envelope control value is 〓2sinπ/2 n-1 b ...Equation (21) is obtained.

同様に、第1、第2の波形を cos2πa+b/2 …式(22) cos2πb−a/2 …式(23) の如く設定すると、 cos2πa+b/2+cos2πb−a/2 =2cosπ/2n−1acosπ/2n−1b…式(24) ±(cos2πa+b/2−cos2πb−a/2) =〓2sinπ/2n−1asinπ/2n−1b …式(25) となる。従つて、式(24)の場合は、エンベロープ
制御値は 2cosπ/2n−1b …式(26) となり、また式(25)の場合は、エンベロープ制御
値は 〓2sinπ/2n−1 …式(27) となる。
Similarly, if the first and second waveforms are set as cos2πa+b/2 n ...Equation (22) cos2πb-a/2 n ...Equation (23), cos2πa+b/2 n +cos2πb-a/2 n =2cosπ/2 n-1 acosπ/2 n-1 b...Equation (24) ±(cos2πa+b/2 n -cos2πb-a/2 n ) =〓2sinπ/2 n-1 asinπ/2 n-1 b...Equation (25) and Become. Therefore, in the case of Equation (24), the envelope control value is 2cosπ/2 n-1 b...Equation (26), and in the case of Equation (25), the envelope control value is 〓2sinπ/2 n-1 ... Equation (27) is obtained.

加えて、上記実施例では、サイン波ROM7に
正弦波の波形を一周期にわたつて記憶させるよう
にしたが、例えば1/4波形を記憶しておき、それ
をアクセスする場合に、折返して読出しを行なつ
たり、あるいは出力波形の符号を反転したりする
ことにより、波形一周期分のデータを得ることも
出来る。
In addition, in the above embodiment, the sine wave ROM 7 is configured to store the sine wave waveform over one period. For example, when storing a 1/4 waveform and accessing it, it is necessary to read it back. It is also possible to obtain data for one period of the waveform by performing the following steps or by inverting the sign of the output waveform.

また、上記実施例に於ては、演奏キーの操作に
応じて当該音階周波数の正弦波、即ち基本波を得
るようにして説明したが、高次の正弦波即ち倍音
波を同様にして得る場合は、上記周波数情報変換
ROM2からの出力を所定ビツトシフトする等し
て累算器3に供給するようにすれば、サイン波
ROM7から読出される波形は高次の正弦波とな
る。従つて、基本波及び所定次数の倍音波を独立
した複数の回路で上記実施例と同様にして得、そ
れを合成して最終出力を得るようにすることも出
来る。更には、上記第1図に示す回路構成のもの
を時分割処理を行えるようにして、1個のサイン
波ROM7、加算器4、その他の回路を共用し
て、基本波及び倍音波を得るようにすることも出
来、それを最終的に合成することにより、1つの
楽音を形成することも出来る。
Furthermore, in the above embodiment, a sine wave of the relevant scale frequency, that is, a fundamental wave, is obtained in response to the operation of a performance key, but a case where a higher order sine wave, that is, a harmonic wave is obtained in the same way is the above frequency information conversion
If the output from ROM2 is shifted by a predetermined bit and then supplied to the accumulator 3, a sine wave can be generated.
The waveform read from the ROM 7 is a high-order sine wave. Therefore, it is also possible to obtain the fundamental wave and harmonic waves of a predetermined order using a plurality of independent circuits in the same manner as in the above embodiment, and to synthesize them to obtain the final output. Furthermore, the circuit configuration shown in Fig. 1 above can be configured to perform time-division processing, so that one sine wave ROM 7, adder 4, and other circuits can be used in common to obtain the fundamental wave and harmonics. By finally synthesizing them, one musical tone can be formed.

加えてまた、上記実施例は1つの演奏キーに対
する1つの楽音を出力するものであつたが、複数
の演奏キーに対応する楽音を出力する、即ち和音
演奏を可能とするには、上記第1図に示す回路構
成のものを複数個設けて、各回路に操作された演
奏キーを割当てて、独立的に楽音を出力するよう
にしても良く、更には、上記第1図に示す回路構
成のものを時分割駆動することにより、1個のサ
イン波ROM7、加算器4、その他の回路を共用
して、複数楽音を得ることも出来る。
In addition, although the above embodiment outputs one musical tone for one performance key, in order to output musical tones corresponding to a plurality of performance keys, that is, to enable chord performance, it is necessary to It is also possible to provide a plurality of circuits with the circuit configuration shown in the figure and assign the operated performance keys to each circuit so that musical tones can be output independently. By time-divisionally driving the device, a single sine wave ROM 7, adder 4, and other circuits can be used in common to obtain a plurality of musical tones.

従つて、1個のサイン波ROM7、加算器4、
その他の回路を共用して、異なる音階周波数の楽
音を複数個、しかも各楽音は基本波及び複数の倍
音より成るものを、時分割処理して得ることが出
来る。
Therefore, one sine wave ROM 7, adder 4,
By sharing other circuits, it is possible to time-divisionally process a plurality of musical tones of different scale frequencies, each musical tone consisting of a fundamental wave and a plurality of overtones.

更にまた、上記実施例では、サイン波ROM7
をアドレス指定する場合、音階周波数に応じた位
相角で順次ステツプしながら行なつたが、(音階
周波数)×(サンプル点の数)の値の周波数をもつ
サンプリングクロツクに基づき順次上記サイン波
ROM7をアクセスするようにしても、同様の音
階周波数をもつ正弦波形が得られるものである。
Furthermore, in the above embodiment, the sine wave ROM 7
When specifying an address, it was done by sequentially stepping at a phase angle corresponding to the scale frequency, but the above sine wave is
Even if the ROM 7 is accessed, a sine waveform having a similar scale frequency can be obtained.

その他、本発明の要旨を逸脱しない範囲で、
種々変形応用可能である。
In addition, without departing from the gist of the present invention,
Various modifications and applications are possible.

この発明は以上詳細に説明したように、予め波
形メモリに記憶された正弦波あるいは余弦波を音
階周波数に応じて読出し、楽音を生成する電子楽
器に於て、波形メモリから上記正弦波あるいは余
弦波を、同一周波数を有し、時間とともに変化す
るエンベロープデータに従つた量だけ位相が互い
に逆方向にシフトされた2つの波形として読出
し、この読出した2つの波形を合成することによ
つて、上記2つの波形の位相のシフト量に応じて
上記正弦波あるいは余弦波に対しエンベロープ制
御を行い得るものであるから、波高値とエンベロ
ープ制御値との乗算を行う為の乗算器が全く不要
となり、その為ハードウエアが小となり、電子楽
器の回路を集積化する上で非常に有効となるもの
であり、更に、上記2つの波形を合成して得られ
る波形は、本来の波形に対して位相のずれが無
く、従つて、連続的にエンベロープ制御をした場
合にも出力楽音の音程、音色に関し全く影響を与
えることが無いという利点を有する。
As described in detail above, the present invention reads a sine wave or cosine wave stored in a waveform memory in advance according to a scale frequency, and uses the sine wave or cosine wave from the waveform memory in an electronic musical instrument that generates musical tones. are read as two waveforms having the same frequency and whose phases are shifted in opposite directions by an amount according to envelope data that changes over time, and by synthesizing these two read waveforms, the above 2. Since the envelope control can be performed on the sine wave or cosine wave according to the phase shift amount of the two waveforms, there is no need for a multiplier for multiplying the wave height value and the envelope control value. This reduces the hardware and is very effective in integrating the circuits of electronic musical instruments.Furthermore, the waveform obtained by combining the two waveforms mentioned above has a phase shift from the original waveform. Therefore, even when envelope control is performed continuously, it has the advantage that the pitch and timbre of the output musical tone are not affected at all.

また、1個の波形メモリを時分割的にアクセス
して上記2つの波形を得るようにした場合は、波
形メモリのハードウエアが2個の波形メモリをも
たせる場合に比べて半分となり、一層ハードウエ
アの低減をはかれるという利点がある。
In addition, if one waveform memory is accessed in a time-sharing manner to obtain the two waveforms mentioned above, the hardware of the waveform memory is halved compared to the case where two waveform memories are provided, and the hardware is further reduced. This has the advantage of reducing the amount of

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

図面は本発明の一実施例を示し、第1図は本実
施例の要部を示す回路構成図、第2図は第1図の
サイン波ROMに記憶されたデータを示す図、第
3図は第1図の回路を駆動する為のクロツクパル
スとその時分割動作状態を示す図、第4A図乃至
第4C図は、波形メモリから時分割的に読出され
た2つの波形と、その波形を合成してエンベロー
プ制御がなされた波形とを示す図である。 1……キーボード、2……周波数情報変換
ROM、3……累算器、4……加算器、5……エ
ンベロープ情報発生回路、6〜6……排他的
オアゲート、7……サイン波ROM、8……累算
器。
The drawings show an embodiment of the present invention; FIG. 1 is a circuit configuration diagram showing the main parts of this embodiment, FIG. 2 is a diagram showing data stored in the sine wave ROM of FIG. 1, and FIG. 1 is a diagram showing the clock pulses for driving the circuit of FIG. 1 and their time-division operation states, and FIGS. 4A to 4C are diagrams showing two waveforms read out in a time-division manner from the waveform memory and the waveforms synthesized. FIG. 3 is a diagram showing a waveform that has been subjected to envelope control. 1... Keyboard, 2... Frequency information conversion
ROM, 3...Accumulator, 4...Adder, 5...Envelope information generation circuit, 60 to 65 ...Exclusive OR gate, 7...Sine wave ROM, 8...Accumulator.

Claims (1)

【特許請求の範囲】 1 予め波形メモリに記憶された正弦波あるいは
余弦波を音階周波数に応じて読出し、楽音を発生
する電子楽器に於て、 時間とともに変化するエンベロープデータを発
生するエンベロープデータ発生手段と、 上記波形メモリから上記正弦波あるいは余弦波
を、同一周波数を有し、上記エンベロープデータ
に従つた量だけ位相が互いに逆方向にシフトされ
た2つの波形として読出す読出手段と、 この読出手段により読出された上記2つの波形
を合成する合成手段とを具備し、 上記2つの波形の位相のシフト量に基づき上記
正弦波あるいは余弦波のエンベロープ制御がなさ
れることを特徴とする電子楽器のエンベロープ制
御方式。 2 上記読出手段は、正弦波あるいは余弦波が予
め記憶された上記波形メモリから、同一周波数を
有し、上記エンベロープデータに従つた量だけ位
相が互いに逆方向にシフトされた上記2つの波形
を時分割的に読出し、上記合成手段に供給して成
ることを特徴とする特許請求の範囲第1項記載の
電子楽器のエンベロープ制御方式。 3 上記読出手段は、上記波形メモリから第1の
波形として、 sin2π(a+b/2) (但し、2n;波形メモリのサンプル点の総
数、a;読出すべきサンプル点の番号、b;2つ
の波形の位相のシフト量を示すデータ) を読出し、更に上記波形メモリから第2の波形と
して、 sin2π(a−b/2)またはsin2π(b−a/2
) を読出し、上記合成手段は上記第1の波形と第2
の波形とを合成して、 2sinπ/2n−1a cosπ/2n−1bまたは 2cosπ/2n−1a sinπ/2n−1b なる波形を得ることを特徴とする特許請求の範囲
第1項または第2項記載の電子楽器のエンベロー
プ制御方式。 4 上記読出手段は、上記波形メモリから第1の
波形として、 sin2π(a+b/2) (但し、2n;波形メモリのサンプル点の総
数、a;読出すべきサンプル点の番号、b;2つ
の波形の位相のシフト量を示すデータ) を読出し、更に上記波形メモリから第2の波形と
して、 sin2π(a−b/2)またはsin2π(b−a/2
) を読出し、上記合成手段は上記第1の波形と第2
の波形とを合成して、 2cosπ/2n−1a sinπ/2n−1b、 −2cosπ/2n−1a sinπ/2n−1b、 2sinπ/2n−1a cosπ/2n−1bまたは −2sinπ/2n−1a cosπ/2n−1b なる波形を得ることを特徴とする特許請求の範囲
第1項または第2項記載の電子楽器のエンベロー
プ制御方式。 5 上記読出手段は、上記波形メモリから第1の
波形として、 cos2π(a+b/2) (但し、2n;波形メモリのサンプル点の総
数、a;読出すべきサンプル点の番号、b;2つ
の波形の位相のシフト量を示すデータ) を読出し、更に上記波形メモリから第2の波形と
して、 cos2π(a−b/2) を読出し、上記合成手段は上記第1の波形と第2
の波形とを合成して、 2cosπ/2n−1a cosπ/2n−1b なる波形を得ることを特徴とする特許請求の範囲
第1項または第2項記載の電子楽器のエンベロー
プ制御方式。 6 上記読出手段は、上記波形メモリから第1の
波形として、 cos2π(a+b/2) (但し、2n;波形メモリのサンプル点の総
数、a;読出すべきサンプル点の番号、b;2つ
の波形の位相のシフト量を示すデータ) を読出し、更に上記波形メモリから第2の波形と
して、 cos2π(a−b/2) を読出し、上記合成手段は上記第1の波形と第2
の波形とを合成して、 −2sinπ/2n−1a sinπ/2n−1bまたは 2sinπ/2n−1a sinπ/2n−1b なる波形を得ることを特徴とする特許請求の範囲
第1項または第2項記載の電子楽器のエンベロー
プ制御方式。
[Scope of Claims] 1. Envelope data generation means for generating envelope data that changes over time in an electronic musical instrument that generates musical tones by reading out a sine wave or cosine wave stored in a waveform memory in advance according to a scale frequency. and reading means for reading out the sine wave or cosine wave from the waveform memory as two waveforms having the same frequency and whose phases are shifted in opposite directions by an amount according to the envelope data, and this reading means and a synthesizing means for synthesizing the two waveforms read out by the electronic musical instrument, the envelope of the sine wave or cosine wave being controlled based on the amount of phase shift of the two waveforms. control method. 2. The reading means reads, from the waveform memory in which sine waves or cosine waves are stored in advance, the two waveforms having the same frequency and whose phases are shifted in opposite directions by an amount according to the envelope data. 2. The envelope control method for an electronic musical instrument according to claim 1, wherein the envelope control method is read out in parts and supplied to the synthesizing means. 3 The reading means reads the first waveform from the waveform memory as sin2π(a+b/2 n ) (where 2 n is the total number of sample points in the waveform memory, a is the number of the sample point to be read, and b is 2 Data indicating the amount of phase shift of two waveforms) is read out, and then sin2π(ab/ 2n ) or sin2π(ba/2n ) is read out from the waveform memory as the second waveform.
), and the synthesizing means combines the first waveform and the second waveform.
Claims characterized in that a waveform of 2sinπ/2 n-1 a cosπ/2 n-1 b or 2cosπ/2 n-1 a sinπ/2 n-1 b is obtained by synthesizing the waveform of An envelope control method for an electronic musical instrument according to item 1 or 2. 4 The reading means reads the first waveform from the waveform memory as sin2π(a+b/2 n ) (where 2 n is the total number of sample points in the waveform memory, a is the number of the sample point to be read, and b is 2 Data indicating the amount of phase shift of two waveforms) is read out, and then sin2π(ab/ 2n ) or sin2π(ba/2n ) is read out from the waveform memory as the second waveform.
), and the synthesizing means combines the first waveform and the second waveform.
2cosπ/2 n-1 a sinπ/2 n-1 b, -2cosπ/2 n-1 a sinπ/2 n-1 b, 2sinπ/2 n-1 a cosπ/2 n An envelope control method for an electronic musical instrument according to claim 1 or 2, characterized in that a waveform of -1 b or -2 sin π/2 n-1 a cos π/2 n-1 b is obtained. 5 The reading means reads the first waveform from the waveform memory as cos2π(a+b/2 n ) (where 2 n is the total number of sample points in the waveform memory, a is the number of the sample point to be read, and b is 2 data indicating the amount of phase shift of two waveforms), further reads cos2π(a-b/ 2n ) as a second waveform from the waveform memory, and the synthesizing means combines the first waveform and the second waveform.
The envelope control method for an electronic musical instrument according to claim 1 or 2, characterized in that a waveform of 2cosπ/2 n-1 a cosπ/2 n-1 b is obtained by synthesizing the waveform of . 6 The reading means reads the first waveform from the waveform memory as cos2π(a+b/2 n ) (where 2 n is the total number of sample points in the waveform memory, a is the number of the sample point to be read, and b is 2 data indicating the amount of phase shift of two waveforms), further reads cos2π(a-b/ 2n ) as a second waveform from the waveform memory, and the synthesizing means combines the first waveform and the second waveform.
A waveform of -2sinπ/2 n-1 a sinπ/2 n-1 b or 2sinπ/2 n-1 a sinπ/2 n-1 b is obtained. An envelope control method for an electronic musical instrument according to scope 1 or 2.
JP55167583A 1980-11-28 1980-11-28 Control system for envelope of electronic musical instrument Granted JPS5792396A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP55167583A JPS5792396A (en) 1980-11-28 1980-11-28 Control system for envelope of electronic musical instrument
US06/324,466 US4453440A (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument
DE8181305557T DE3172071D1 (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument
EP81305557A EP0053892B1 (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55167583A JPS5792396A (en) 1980-11-28 1980-11-28 Control system for envelope of electronic musical instrument

Publications (2)

Publication Number Publication Date
JPS5792396A JPS5792396A (en) 1982-06-08
JPS6154238B2 true JPS6154238B2 (en) 1986-11-21

Family

ID=15852434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55167583A Granted JPS5792396A (en) 1980-11-28 1980-11-28 Control system for envelope of electronic musical instrument

Country Status (1)

Country Link
JP (1) JPS5792396A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS646532U (en) * 1987-07-01 1989-01-13

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS646532U (en) * 1987-07-01 1989-01-13

Also Published As

Publication number Publication date
JPS5792396A (en) 1982-06-08

Similar Documents

Publication Publication Date Title
US4536853A (en) Multiple wave generator
US4875400A (en) Electronic musical instrument with touch response function
JPH0375877B2 (en)
KR0135601B1 (en) Method and apparatus for digitally generating musical notes
US4119005A (en) System for generating tone source waveshapes
US5340938A (en) Tone generation apparatus with selective assignment of one of tone generation processing modes to tone generation channels
USRE31653E (en) Electronic musical instrument of the harmonic synthesis type
US3992970A (en) Electronic musical instrument
US5038661A (en) Waveform generator for electronic musical instrument
JPS6230634B2 (en)
US4513651A (en) Generation of anharmonic overtones in a musical instrument by additive synthesis
US4677889A (en) Harmonic interpolation for producing time variant tones in an electronic musical instrument
JPH0225515B2 (en)
JPS6336519B2 (en)
USRE31648E (en) System for generating tone source waveshapes
JPH02240697A (en) Device for changing speed for reading out waveform data
JPS6229794B2 (en)
JPS6154238B2 (en)
US4526081A (en) Extended harmonics in a polyphonic tone synthesizer
JPH0226237B2 (en)
JP2625669B2 (en) Musical sound wave generator
US4446769A (en) Combination tone generator for a musical instrument
JP2586443B2 (en) Waveform generator
JPS61182097A (en) Phased memory address unit for reducing noise for electronicmusical instrument
JPH0740194B2 (en) Electronic musical instrument