[0001] The present invention relates to an electronic musical instrument and, more particularly,
to a digital tone generating system suitable for the large scale integrated circuit
(hereinafter referred to as LSI). This application is a divisional application of
EP-A 0 035 658.
[0002] Conventionally, many kinds of proposal concerning digital tone source circuits for
the electronic musical instruments have been often tried to be provided. The complex
waves including many harmonics have been read in wave data with a given clock from
a read only memory (hereinafter referred to as ROM) or from a random access read
/write memory (hereinafter referred to as RAM) to provide the tone wave. Thereafter,
the given envelope has been attached to the tone wave by a digital technique or an
analog technique thereby to provide the tone signal.
[0003] Some problems occur in such a case as follows. As a first problem, a calculation
for making the waves is existed. Since to change the tone color, the complex waves
are changed in shape within this instrument. when the tone color data are given at
the proportion of each of the harmonics, like the draw-bar most used for the electronic
musical instrument, in the order of the level of the 8 feet (fundamental), the level
of the 4 feet (second harmonics) and the level of the

feet (third harmonics), the complex wave corresponding in shape to it has to be made
from the tone color data. Namely, an inverted fourier transform is required to be
performed. Although recently, microcomputers are available at lower cost, the inverted
fourier transform requires time from several hundred of milliseconds to approximately
one second. In addition, the inverted fourier transform is required to be performed
everytime a player changes draw-bars or tone tables. Thus, when more time is required
for calculation, the tone color may not change immediately or tone may not be made
for some time. Accordingly, these problems are not suitable for the performance of
the musical setting which often requires frequent color-tone switching.
[0004] As a second problem, the tone color remains unchanged from the time for the tone
to be made to the time for the tone to be disappeared. If the inverted fourier transform
is performed from the tone color data and the wave data is provided, the wave data
is written in the memory and the wave data of the memory is repeatedly read at a given
clock, with the result that the wave normally becomes constant. Even if a given envelope
is attached to the wave, the tone color remains unchanged. To change the tone color
every moment, the memory wave is required to be rewritten every moment. Since the
memory itself is normally read, it is required to be written between the read timings
in synchronous relation with the read cycle far rewriting of the memory contents.
The read clock is not always constant, since it changes with the produced step, and
it is very difficult to rewrite the waves in terms of hardware. As described hereinabove,
the tone-color change means high-speed inverted fourier transform for each moment,
since the inverted fourier transform is required to be performed each time from the
tone color data to provide the wave data. Even from this point, it can be apparent
that the tone color is extremely difficult to be changed every moment.
[0005] As a third problem, there is a problem of the system clock of the whole hardware.
The digital circuit is adapted to operate under a fixed clock for easier synchronous
relation of the whole system, whereby the timing between the logic circuits is rendered
definite and the construction of the hardware is rendered simpler. On the other hand,
in the tone source circuit of the electronic musical instrument, twelve different
clocks are provided to obtain the tone signal of each note of C, C
*, D ... B thereby to change the read speed. For instance. to change the octave in
the order of C,, Cz, C
3..., the clock for C note is required to be rendered 1/2, 1/4, 1/8 .... or the memory
address is required to be read by 2 jumps, 4 jumps, 8 jumps, ... However, the clock
of the C" note is required to be

times as fast as the clock of the C note. Similarly. the clock of the D note is required
to be

times as fast as the clock of the C note The clock of the D
# note is required to be

times as fast as the clock of the C note. Since these


... are irrational numbers, independent 12 clock generators are required to be disposed
to generate these 12 clocks by the hardware. The problem is that the synchronous relation
cannot be provided, and the hardware cannot be commonly used, since the twelve clock
speeds are completely independent. Accordingly, since a plurality of envelope multipliers
and a plurality of digital-to-analog converters (hereinafter referred to as D/A converter)
are required, the hardware becomes extremely larger in scale, thus resulting in complicated
system construction.
[0006] An object of the present invention is to provide a digital tone generating system,
wherein the above described problems are eliminated.
[0007] Another object of the present invention is to provide a digital generating system.
which is suitable for LSI use as the tone source circuit of the electronic musical
instrument.
[0008] According to the present invention, there provides an electronic musical instrument
equipped with wave generating means, wherein the wave generating means is composed
of wave memory and address calculator for wave memory, and a plurality of the wave
data are provided in the form of time division multiplex from said wave memory through
the time division multiplex calculation by said address calculator for wave memory.
[0009] Also, in the most preferable embodiment of the present invention, there provides
an electronic musical instrument for causing tone signals by digital techniques, comprising
tone selecting means for selecting tone colors in accordance with a musical setting
performed by a player, keyboard means by which the player performs the melody or accompanies
the musical setting, processing means for inputting tone color data from said tone
selecting means and key data from said keyboard means thereby to give given instructions
to each means, wave generating means for generating in the form of time division multiplexing
the digital data of a plurality of tone waves in accordance with the instructions
from said processing means, envelope generating means for generating in the form of
time division multiplexing the digital data of a plurality of envelopes in accordance
with the instructions from said processing means, multiplier means for multiplying,
with time division multiplexing, the digital data of a plurality of tone waves from
said wave generating means by the digital data of a plurality of envelopes from said
envelope generating means thereby to provide, in the form of the time division multiplexing,
the digital data of a plurality of tone signals with envelopes attached thereto, a
digital-to-analog converter for converting the digital data of the tone signals from
said multiplier means into analog signals, a clock rejection filter for rejecting
the clock component contained in the analog signal from said digital-to-analog converter,
and electro-acoustical converting means for converting into acoustic signals the tone
signals from said clock rejection filter.
[0010] These objects and other objects, features, aspects and advantages of the present
invention will become more apparent from the following detailed description of the
present invention when taken in conjunction with the accompanying drawings in which:
[0011]
Fig. 1 is a block diagram showing all components of an electronic musical instrument
in accordance with the first embodiment of the present invention;
Fig. 2 is a graph showing a single sine curve of a wave ROM6 accessed by the address
calculator of Fig. 1;
Fig. 3 is a graph showing a set of sine curves outputted from the ROM6 of Fig. 1;
Fig. 4 is a block diagram showing parts of the ROM address calculator of Fig. 1;
Fig. 5 is a graph showing a set of waves outputted from the registers of Fig. 4;
Fig. 6 is a graph showing a sine curve outputted from the wave ROM6 of Fig. 1;
Fig. 7 is a graph for illustrating the wave reading operation of the wave ROM address
calculator of Fig. 1;
Fig. 8 is a graph showing sine curves of 3 phase clocks outputted from the wave ROM6
of Fig. 1;
Fig. 9 is an explanatory diagram showing the construction of the envelope ROM7 of
Fig. 1;
Fig. 10 is an explanatory diagram showing a set of addresses outputted from the envelope
ROM7 of Fig. 1;
Fig. 11 is a block diagram showing parts of the envelope ROM address calculator of
Fig. 1;
Fig. 12 is a graph showing waves outputted from the envelope ROM7 of Fig. 1;
Fig. 13 is a block diagram of an electronic musical instrument in the second embodiment
of the present invention;
Fig. 14 is a block diagram of the amplitude data storing means of Fig. 13;
Fig. 15 is a block diagram showing a modification of the wave ROM6 of Fig. 13;
Fig. 16 is a graph showing a set of sine curves outputted from the ROM6 of Fig. 13;
Fig. 17 is a block diagram of an electronic musical instrument in the third embodiment
of the present invention:
[0012] Referring to Fig. 1, a tone selecting means 1 includes draw-bars, tone tablet switches,
etc., and a player can operate the draw-bars, tone tablet switches. etc. to select
the tones. Keyboards 2 mean a solo keyboard, an upper keyboard, a lower keyboard,
a pedal keyboard, etc., and the player performs a tune on these keyboards. A microcomputer
3 inputs the tone color data and key data from the tone selecting means and the keyboards
2. gives necessary instructions to an address calculator 4 for a wave ROM 6 and an
address calculator 5 for an envelope ROM 7 in accordance with the tone color data
and key data. The address calculator 4 for the wave ROM 6 and the address calculator
5 for the envelope ROM 7 access the wave ROM 6 and the envelope ROM 7, respectively.
The digital wave data and the digital envelope data obtained through the accessing
operation of the wave ROM 6 and the envelope ROM 7 are digitally multiplied by a multiplier
8 to provide envelope-added tone signal data. The tone signal data are converted into
analog values from the digital values by a D/A converter 9 and pass through a clock
rejection filter 10 and a power amplifier 11 to pronounce from a loud speaker 12.
[0013] The wave ROM 6 will be described hereinafter. Referring to Fig. 2, if a period (x
= through 2 π radian) of the x axis of sinusoidal wave represented by the following
equation.

is equally divided by n and X
6,X
1,X
2, ... X
i ... X
n-1(X
n=X
0) are provided,

is established. The sampled value f(x
i) of sinusoidal wave with respect to the X
i is as follows from the equation (1).

The f(x
i) is quantized, is written, in a digital value, in the wave ROM 6 and is read to sequentially
read the clock f
cK[Hz]. Since i increases one by one for each 1/f
CK[sec] (assume that X
n =x
o is read after the X
n-1 and X
1, X
2, X
3 ... are repeated in sequence) to establish

Similarly, when the jumping read is performed m by m, i increases m by m for each
I/f
cK[sec] to establish the following equation.

When the equation (5) is substituted by the equation (3).

is established. Namely. the frequency f of the sinusoidal wave to be read from the
wave ROM 6 is as follows.

[0014] Assume that the wave from ROM having such a value of n as shown in Table 1 is provided
for each of the notes, and the reading operation is performed at a constant f
cK so that the tone signal (sinusoidal wave) of each note of the notes C, C
#, D.... B with error with ±1.19 cents or less in practical use.

[0015] When the f
cK is rendered constant like f
CK= 14749.802 [Hz], the sinusoidal wave of approximately 8 feet of G
1(about 65.4 Hz) is provided as apparent from the equation (7) wherein n=451, m=2,
and the sinusoidal wave of approximately 69.3 Hz (8 feet of C
#1) is provided as apparent from the equation (7) wherein n=426, m=2. Similarly, the
wave ROM 6 which is different in n is read with a constant f
cK to provide the tone signals of all the notes.
[0016] Also, since 8 feet (about 65.4 Hz) of C, is provided during n=451 and m=2, 8 feet
of C
2 (about 130.8 Hz) is provided during n=451 and m=4, and 8 feet of C
3 (about 261.6 Hz) is provided during N=451 and m = 8. It has been found out that the
octave treatment of the same note can be performed by the proper change of the value
m.
[0017] Since the 8 feet of C, (about 65.4 Hz) is provided during n=451 and m=2, the 4 feet
of the C
1, i.e., second harmonics (about 130.8 Hz) is provided during n=451 and m=4, the

feet of the C
1, i.e., third harmonics (about 196.2 Hz) is provided during n=451 and m=6, and the
2 feet of the C
1, i.e., fourth harmonics (about 261.6 Hz) is provided during n=451 and m=8. Accordingly,
it has been found out that the tone signals of the generating harmonics can be controlled
through the selection of the value of the m. One example of the values of the m will
be described in Table 2.

[0018] As apparent from the equation (7), the value of n or m is changed, even if f
cK is constant, to allow the tone frequency to be controlled freely.
[0019] If about 65.4 Hz (sound of C,), which is obtained during n=451 (wave ROM of C) and
m=2, is rendered fundamental in wave about 686.7 Hz which is frequency of 10.5 times
of the fundamental frequency, i.e., non-integer harmonics is obtained during n=451
and m=21. Also, during n=301 (wave ROM of G) and m = 4, about 196.0 Hz, i.e., slightly
lower third harmonics,

feet which is lower by about two cents.
[0020] The wave ROM of each tone of C. C#, D, ... B is constructed as shown in Fig. 3. Assume
that the value of n is as shown in Table 1, and the address of the wave ROM 6 of the
C note is 0 through 450, C# note is 451 through 876. D note is 877 through 1278, ...
B note is 3779 through 4017. The entire address is 4018, which is the total of 0 through
4017. The wave data of the sinusoidal wave is written, in the form of a digital value,
in the wave ROM. When the optional address value up to 4017 from 0 is given to the
wave ROM, the wave data of the sinusoidal wave stored in the wave ROM is read as a
digital value.
[0021] A method of reading the wave data from the wave ROM 6 will be concretely described
hereinafter in conjunction with Fig. 4 showing a circuit construction for describing
the operation of the wave ROM address calculator 4.
[0022] As shown in Fig. 4, there are disposed a k register 21 for storing the address value
of the wave ROM 6, a m register 22 for storing the number m of jumps, an E register
23 for storing the end address value, a e N register for storing the negative value
of the divisor n, an adder 25, a comparator 26, an adder 27 and an AND gate 28.
[0023] For example, a case where the wave form of 8 feet of C
2# (about 69.2Hz) as an example will be read, will be described. As in the previous
case, assume that f
CK= 14749.802 Hz. At this time, the wave ROM (n = 426) of C
# is required to be read with two jumps (m = 2). Since the wave data are from the address
451 to 876 as shown in Fig. 3, 451 as the start address is stored in the k register
21, and 876 as the end address is stored in the E register 23. Since the divisor n
= 426 and jump m=2, e 426 as a negative value of the divisor is stored in the e N
register 24 and 2 as the jump is stored in the m register 22. Since f
CK = 14749.802 Hz, 1/f
CK = 67.8 us is established. As shown in Fig. 5, a read clock φ
1 and a write clock φ
2 for four registers 21 through 24 are both assumed to have 67.8 µs and two phases.
Upon application of the read clock φ
1, a value of 451 is obtained from the output terminal of the k register 21 and is
applied upon the address terminal of the wave ROM 6 to provide the wave data of C
#. The 451 from the output terminal of the k register 21 and the 2 from the m register
22 are added by the full adder 25, and the value of 453 is given to the A terminal
of the comparator 26 and to the full adder 27. The end address 876 from the E register
23 is added to the B terminal of the comparator 26 to compare the value of the A terminal
with the value of the B terminal. However, in this case. no output is provided at
the A > B terminal and the value is 0, since 876 is larger than 453. As a result,
the output of the AND gate 28 becomes 0 independently of the value e 426 of the e
N register 24. The full adder 27 adds a value 453 coming from the full adder 25 and
0 coming from the AND gate 28 (thus resulting in no addition) to give a value of 453
to the input terminal of the k register 21. When the write clock 02 has come, the
value of 453 from the full adder 27 is written in the k register. As a result, the
value of the k register is rewritten to 453 from 451 and the value of the m register
is rewritten from 451 to 453, which is obtained through addition of the value 2 of
the m register 22.
[0024] Upon addition of the read clock φ
1 to four registers 21, 22, 23, 24 again, the value of 453 is obtained from the output
terminal of the k register 21 and is added to the address terminal of the wave ROM
6 to provide the wave data of the C
*. Simultaneously, through the full adder 25, the comparator 26, the AND gate 28 and
the full adder 27, 455, which is provided through addition of 453 coming from the
output terminal of the k register 21 to 2 coming from the m register 22, is added
to the input terminal of the k register 21 and is written when the write clock φ
2 has come.
[0025] In this manner, the value of the k register 21 sequentially increases by two jumps
in the order of 451. 453, 455, 457, 459 .... In keeping with the sequential increase,
the wave data of two address jumps are sequentially obtained from the wave ROM 6.
However, the address of the wave ROM 6 ranges from 451 to 876. Beyond the range, the
wave data of the C" results in that of its adjacent D note. To prevent it, the comparator
26 compares the value from the full adder 25 with the end address 876 from the E register
23. If the value from the. full adder 25 is 876 or or more, the output terminal A
> B of the comparator 26 becomes 1 to provide the output of the AND gate 28 with the
value e 426 from the e N register. The full adder 27 adds the value of the full adder
25 to the value of e 426 from the AND gate 28, i.e., subtracts 426 so that the end
address 876 may not be exceeded by any means. The value of the k register 21 increases
from 451 in the order of 453, 455, 457, 459, .... When 875 has been reached, the output
of the full adder 25 becomes 877. Through comparison thereof with 876 by the comparator
26, the full adder 27 performs the operation of 877-426 to write 451 in the k register
21. Accordingly, since the value of the k register 21 is normally repeated in the
order of 451, 453. 455, 457, ... 875, 451, 453, ..., only the values from 451 to 876
are available. The wave data of only the C note of the wave ROM 6 is repeatedly read.
If m = 4, the order of 451, 455, 459, 463, 467, ... 875. 453, 457, 461 ... is repeated.
[0026] Since the value of the k register 21 is updated for each period 67.8 µs of the two
phase clocks φ
1, φ
2, the wave data obtained from the wave ROM 6 is obtained for each 67.8 µs as shown
in Fig. 6 so that sampled sinusoidal wave is obtained by the clock of f
CK = 14749.802 Hz.
[0027] When 8 feet of the other note such as D
2 note is read, n =402 and m =4 are established. Since the wave data of the D note
ranges from the address 877 of the wave ROM 6 to 1278 as shown in Fig. 3, 877 is written
in the k register 21 and 1278 is written in the E register 23. Write e 402 in the
e N register 24 and 4 in the m register 22, and the waveform data is automatically
read, through the similar operation, from the wave ROM 6 for each 67.8 µs.
[0028] In the above-described manner, the wave data can be read from the wave ROM 6 by such
a wave ROM address calculator as described in Fig. 4. Only one wave can be read simultaneously.
In the case of such as draw-bar tone source, assume that the number of the pitches
of the draw-bars is rendered 9, i.e., 16 feet, 8 feet, 5 y feet, 4 feet, 2 t feet,
2 feet, 1 feet, 1 3 feet and 1 feet, and the number of the channels for maximum, simultaneous
pronunciation is rendered 8, and the seventy two (nine pitches x 8 channels) wave
ROM address calculators are required.
[0029] However, since the clock frequency is normally fixed in accordance with the method
of the present invention the circuit is suitable for common use if the timing of the
hardware is rendered definite. Namely, a time division multiplexing operation can
be effected. Fig. 7 shows a wave ROM address calculator 4, which can read seventy-two
(in maximum) independent waveforms by the time division multiplexing operation. The
timing for reading one wave is performed for each 67.8 µs as shown in Fig. 6, and
the 67.8 µs is divided in time to 72 slots. Namely, one slot is approximately 0.942
µs. The completely independent waveform reading operation is performed for each of
the slots. The minimum data necessary for reading one wave requires address value
k for accessing the wave ROM6, number m of jumps, end address E and the negative figure
e n of the divisor n. In Fig. 7, four random access read
/write memories (hereinafter referred to as RAM) 31, 32, 33 and 34 having 72 addresses
are provided, which independently stores the k, m. E and e n for 72 slots. Since RAMs
of high storage capacity at low costs are available, they do not add much to the overall
hardware costs.
[0030] The initial value to these RAMs is written through an initial loading interface 35
from the microcomputer 3. A full adder 25, a comparator 26, a full adder 27, an AND
gate 28 and a wave ROM 6 may be the same as those of Fig. 4. These circuits may be
common in 72 slots to perform the time division multiplexing calculation, which helps
to simplify the hardware. Four RAMs are accessed in common by a slot counter 36 which
counts a clock φ'0. Also, the clocks φ'
1 and φ'
2 for reading to and storing in these RAMs commonly works for four RAMs. The timing
of three clocks of these φ'0, φ'
1 and
0'
2 is, respectively, 0.942 µs as shown in Fig. 8 and is a 3-phase clock which is different
in phase.
[0031] How to assign the seventy-two addresses of RAMs 31, 32. 33, 34 is completely optional.
For example, the assignment can be performed as in Table 3. These address values conform
to the slot values of the time division multiplexing.

[0032] Assume that the draw-bars of 8 feet and 4 feet are in their pulled positions and
three keys of C
3, E
2 and G
3 are in their depressed positions. Assume that the microcomputer 3 inputs these data,
assigns C
3 to CH1, E
3 to CH
2 and G
3 to CH3. The writing operation is effected, through an initializing interface 35,
with respect to four RAMs 31. 32, 33 and 34. As apparent from Table 3, the 8 feet
of the C
2 becomes a RAM address 1. the 4 feet of the C
3 becomes a RAM address 3, the 8 feet of the E
3 becomes a RAM address 10, the 4 feet of the E
3 becomes a RAM address 12, the 8 feet of the G
3 becomes a RAM address 19 and the 4 feet of the G
2 becomes a RAM address 21. Thus, as apparent from Table 2 and Fig. 3, 0 is written
in the kRAM of the RAM address 1. 8 is written in the mRAM, 450 is written in the
ERAM, e 451 is written in the e NRAM, 0 is written in the kRAM of the RAM address
3, 16 is written in the mRAM, 450 is written in the ERAM, and e 451 is written in
the e NRAM. The initial values from Table 2 and Fig. 3 are written even in the kRAM,
mRAM, ERAM and e NRAM of the RAM addresses 10, 12. 19 and 21.
[0033] When a clock enters the φ'
0 of Fig. 7, the address counter 36 is renewed to simultaneously update the addresses
of four RAMs 31, 32, 33 and 34. Assume that the RAM address has changed from 0 to
1. and the k. m, E. e n of the RAM address 1 are read from the respective RAMs when
the read clock φ', has been given. The value 0 of the kRAM is given to the wave ROM
6 to provide the wave data of 8 feet of the C
3. The value 8 is written to the kRAM when the write clock φ'
2 has been given by the same operation as the operation already described in Fig. 4.
When the clock of the φ'
0 has been given, the address counter 36 counts up to change the RAM address from 1
to 2. The similar operation is effected even in the RAM address 2. Set that the RAM
address is adapted to make a round again to return to its original value upon application
of 72 clocks to the φ
0' and the address becomes the address 1 again. The value of 8 is applied upon the
ROM address from the kRAM when the φ'
1 clock has been given and simultaneously the value of 16 is written in the kRAM at
the φ'
2 clock. Namely, as apparent from the RAM address 1 only, the φc'- repeats the same
operation as that of Fig. 4 everytime 72 clocks enter. Even in the other RAM address
such as RAM address 10 to which the 8 feet of E
2 is assigned, the φ
0' performs the same operation as that of Fig. 4 everytime 72 clocks enter. Since the
clock of the φ
0' is 0.942 µs. the 72 clocks is 67.8 µs and remains the same as in Fig. 4.
[0034] Namely, the use is performed under the time division multiplexing operation, with
the adder 25, the comparator 26, the full adder 27, the AND gate 28 and the wave ROM
6 remaining unchanged, through the replacement of the RAM having 72 addresses therein
instead of four registers 21, 22, 23 and 24 in Fig. 4. For the time division multiplexing
operation of 72 data, a multiplexer (multiplex selection means) for switching the
seventy-two signals is normally required to be provided, but in Fig. 7, the multiplexer
is not required to be provided. The time division multiplexing operation is automatically
performed. An arithmetic logic circuit of the adder 25, the comparator 26, the full
adder 27 and the AND gate 28 performs the time division multiplexing operation of
each 0.942 µs one time in accordance with the order of the RAM addresses. In terms
of a specific RAM address, it follows that one operation is performed for each 67.8
µs. Even in reading of the wave data from the ROM 6, the time division multiplexing
reading for each 0.942 µs is performed in accordance with the order of the RAM address.
In terms of a specific RAM address, it follows that a given wave data is sequentially
read for each 67.8 µs. Time division multiplexing operation of the 72 slots is performed
during 67.8 µs and the 72 sinusoidal waves are read at maximum. One'tone wave is read
with one slot. In addition, the reading of each slot is completely independent. Namely,
it is considered that the system construction of Fig. 7 is equivalent to seventy-two
independent sinusoidal wave oscillators.
[0035] The envelope generation will be described hereinafter. The envelope is generated
in synchronous relation with the wave generation. The seventy-two (at maximum) envelope
signals are provided in the form of time division multiplexing operation. There are
some generating methods for envelope signals, and one of them will be described hereinafter
although the generating method is not specified.
[0036] First, the envelope ROM 7 will be described hereinafter.
[0037] Fig. 9 is one example, wherein the envelope ROM 7 is composed of a 256 address ROM
from 00000000(2) to 11111111 (2). The whole is equally divided into eight divisions.
The rise-up and fall-down exponential envelopes quantized which are different in amplitude
are sequentially written digitally in each of eight divisions. The condition of the
respective rise-up envelope and fall-down envelope is apparent in the address of the
ROM seen from binary. Namely, as shown in Fig. 10. 3 bits from the most significant
bit, i.e., D- through D
5 can have eight values from 000 to 111. The 000 is least in amplitude and the 111
is biggest m amplitude. When the bit D
4 is 0, the rise-up envelope is indicated. When the bit D
4 is 1, the fall-down envelope is indicated. When the D
3 through Dc shows 0000, it means the beginning of the rise-up envelope or the fall-down
envelope. When the D
3 through D, shows 1111, it means the end of the rise-up envelope or the fall-down
envelope.
[0038] The concrete construction of the envelope ROM address calculator 5 is shown in Fig.
11. The calculator 5 generates seventy-two (at maximum) independent envelope data
through the time division multiplexing operation. The calculator is adapted to operate
in synchronous relation with the wave ROM address calculator 4. The minimum data necessary
for reading 1 envelope requires an address value J for accessing the envelope ROM,
an attack speed value A for determining the attack speed of the envelope, a decay
speed value D for determining the decay speed, a sustain address value S for determining
the sustain level, a release speed value R for determining the release speed, and
a state code showing which of the attack, decay, sustain, release and completion the
envelope is located in. They are independentaly stored for the 72 slots with respect
to six RAMs 41, 42, 43, 44 45 and 46 having one address. The writing of these initial
values to the RAM is performed through the initial loading interface 35 (which is
the same as that of Fig. 7) from the microcomputer 3. The slot counter 36 is used
in common with that of Fig. 7. The four RAMs 21, 22, 23 and 24 of Fig. 7 becomes completely
the same in address as the six RAMs 41, 42, 43, 44, 45 and 46 of Fig. 11, so that
the wave ROM address calculator 4 and the envelope ROM address calculator 5 will operate,
retaining the synchronous relation at the same timing. In the Figures full adders
are generally designated at 47. 48, respectively, a comparator is generally designated
at 48, and an AND gate is generally designated at 50.
[0039] Dividers 62, 63, 64, 65, 66, 67, 68 and 69, respectively, divide the pulse of 67.4
u.s from 1/8 to 1/2048 to generate the pulse from 539.2 µs to 138.04 ms. One of the
dividing pulses from these dividers is selectively switched by a multiplexer 51. Registers
71, 72, 73, 74 and 75 store comparative data to selectively switch these data by a
multiplexer 52. Registers 81, 82, 83, 84 and 85 are adapted to temporarily retain
the data to selectively switch by a multiplexer 53. The full adders 47, 49, the comparator
48. the AND gate 50, the multiplexers 51, 52, 53 may be common in 72 slots and use
the time division multiplexing. The read clock φ'
1 and the write clock φ'
2 are the same as those of Fig. 7. The timing thereof is shown in Fig. 8.
[0040] The assignment of each slot of six RAMs 42 through 46 is required to be the same
as that of the wave ROM address calculator of Fig. 7. Namely, the RAM address 0 is
required to become the 16 feet of the CH1. the RAM address 1 is required to become
the 8 feet of the CH1..... The RAM address 72 is required to become 1 feet of the
CH8.
[0041] Assume that the keys of C
3, E
3, G
3 are depressed as in the case described hereinabove, the draw-bar of the 8 feet is
in its fully pulled position and the draw-bar of the 4' is in its slightly pulled
position. As a result, assume that the microcomputer 3 assigns C
3 to the CH1, E
3 to the CH2, and G
3 to the CH3, and the microcomputer 3 writes the data necessary for six RAMs through
the initial loading interface 35. The 8 feet envelope data for C
2 is written in the RAM address 1 and the 4 feet envelope data for C
3 is written in the RAM address 3. Similarly, the 8 feet envelope data for E
3 is written in the RAM address 10. The 4 feet envelope data for E
3 is written in the RAM address 12. The 8 feet envelope data for G
3 is written in the RAM address 19. The 4 feet envelope data for G
3 is written in the RAM address 21.
[0042] Since the 8 feet draw-bar is fully pulled, 11100000(2) (envelope of maximum volume)
is written in the J-RAMs of the RAM addresses 1, 10 and 19. Also, since the 4-feet
draw-bar is slightly pulled, 00000000(2) (envelope of minimum volume) is written in
the J-RAMs of the RAM addresses 3, 12 and 21. Also, 0 is written, respectively, in
all the state code RAMs of the RAM addresses 1. 3, 10, 12, 19 and 21. The state codes
are shown as in Table 4. At the same time, the attack data, the decay data and the
sustain data are written, respectively, in the A-RAM, D-RAM, S-RAM and R-RAM.

[0043] A method of generating the ADSR envelope will be described hereinafter. In the case
of the RAM address 1, the attack condition exists, since the initial value 0 is written
in the state code RAM. The multiplexer 53 selects the value of the A-RAM of the RAM
address 1 through the attack register 81. If the value of 2 is written therein, it
is given to the multiplexer 51 through the multiplexer 53. As apparent from Fig. 5,
the pulse of 2.156 ms is supplied to the AND gate 54 from the I/32 divider 68. Since
the output of the AND gate 54 becomes 1 for each 2.156 ms and the output except it
is 0, the full adder 47 adds the value of the J-RAM of the RAM address 1 one by one
for each 2.156 ms to increase to 11100001 (2), 11100010(2), 11100011 (2) ..., 11101111
(2) from 11100000(2) thereby to access from the envelope ROM 7 the rise-up portion
of the envelope of the maximum amplitude of Fig. 9. In this case, since the number
of the addresses of the rise-up portion is 16, the rise-up time comes to 2.156 ms
x 16 = 34.5 ms.

[0044] On the other hand, the value of 0 from the state code RAM is supplied even to the
multiplexer 52 to select the register 71. The 5 bits from the least significant bit
of the address of the envelope ROM 7, i.e., the address date 01111 (2) of the D
4 through Do as shown in Fig. 10 is retained in the register. As apparent from Fig.
9, the value shows 5 bits, from the least significant bit, of the last address of
the rise-up envelope. The value of of the 01111 (2) from the register 71 is given
to the B terminal of the comparator 48 through the multiplexer 52. The 5 bits from
the least significant bit of the full adder 47 is supplied to the A terminal. The
comparator 48 checks whether or not the rise-up envelope has been completed. When
the values of the A terminal has exceeded the value of the B terminal, the comparator
A>B becomes 1 so that the output of the AND gate 50 becomes 1. Thus, the full adder
49 adds 1 to the value of the state code RAM of the RAM address 1, and, namely, the
value changes from 0 to 1. As apparent from Table 4, the 1 means the decay condition.
The multiplexer 53 selects the value of the D-RAM of the RAM address 1 through the
register 82. When the value is 5, the value of 5 is added to the multiplexer 51. As
apparent from Table 5, the multiplexer 51 selects the frequency divider 65 of 1:256
to give a pulse to the AND gate 54 for each 17.25 ms. Thus. the value of the J-RAM
keeps increasing one by one for each 17.25 ms and changes in the order from 11110000(2)
to 11110001(2), 11110010(2). 11110011 (2), .... The fall-down envelope of the envelope
RAM of Fig. 9 is accessed. On the other hand. the value of 1 from the state code RAM
is supplied to the multiplexer 52 and the value of S-RAM of the RAM address 1 is supplied
to the B terminal of the comparator 48 through the register 72. The value of the S-RAM
can have the values from 10000(2) to 11111 (2) at the 5 bits, from the least significant
bit, of the ROM address of the envelope ROM 7. As apparent from Fig. 9, the value
is the address value of the fall-down envelope.
[0045] For example, if the value of the S-RAM is 10111 (2), the value is added to the B
terminal of the comparator 48. The value of 5 bits, from the least significant bit,
from the full adder 47 is given to the A terminal. The value of the A terminal is
compared with the 10111 (2) of the B terminal. When the A exceeds B. 1 is provided
at the A>B terminal and is supplied to the AND gate 50. The full adder 49 increases
the value of the state code RAM by one, and, namely, the value changes from 1 to 2.
As apparent from Table 4, it means that the condition has been switched from the decay
to the sustain. Under the decay condition, the value of the J-Ram has 8 addresses
from 11110000(2) to 11110111 (2) and thus time becomes 17.25 ms x 8 = 138 ms.
[0046] Under the sustain condition, the value of 2 from the state code RAM gives to the
multiplexer 51 a value of 9, which is retained in the register 83 by the multiplexer
53. As apparent from Table 5, the frequency divider 61 is selected with a value of
9. However, no pulses are provided for ever from the frequency divider 61, and thus
the value is normally 0. Accordingly, the output of the AND gate 54 is 0 for ever,
and the value of the J-RAM remains 11110111 (2). Since the ROM address 11110111 (2)
of the envelope ROM 7 remains accessed for ever, the envelope retains a constant level,
which does not change together with time, to realize a so-called sustain condition.
Under this sustain condition, the multiplexer 52 selects the register 73 with a value
of 2 from the state code RAM 42. But the 11111 (2) which is a value of 5 bits from
the least significant bit of the envelope ROM 7 is retained in the register. As apparent
from Fig. 9, the value shows the last address of the fall-down envelope. Although
the value is added to the B terminal of the comparator 48. the value of the J-RAM
41 remains 11110111 (2) and does not increase. 1 does not appear at the A>B terminal
of the comparator 48. The output of the AND gate 50 remains 0. As a result, the value
of the state code RAM 42 does not increase and retains 2.
[0047] Since the RAM address 1 has the 8 feet of the C
3 assigned thereto, the sustain condition remains for ever so long as the key of the
C
3 is in its depressed condition.
[0048] When the key of the C
3 is released, the microcomputer 3 inputs the keyboard data to instruct the value of
3 to the state code RAM 42 of the RAM address 1 and the RAM address 3 (since the 4
feet of C
3 is assigned even to the RAM address 3) through the initial loading interface 35.
As apparent from Table 4, the means release. The value of the 3 is added to the multiplexer
53. The multiplexer 53 selects the value of the R-RAM 46 through the register 84 to
supply it to the multiplexer 51. If the value of 8 is written in the R-RAM 46, the
1/2048 frequency divider 63 is selected as apparent from Table 5 and the pulse is
fed to the AND gate 54 once for each 138.0 ms. Accordingly, the value of the J-RAM
41 starts to increase again for each 138.0 ms by the full adder 47 and changes from
11110111 (2) to 11111000(2), 11111001 (2), 11111010-(2).... to sequentially access
the fall-down envelope of the envelope ROM 7. On the other hand, the value of 3 from
the state code RAM 42 is given even to the multiplexer 52 to select the register 74.
The 11111(2) of the 5 bits of the least significant bit of the ROM address of the
envelope ROM 7 is stored even in the register. This is the last address of the fall-down
envelope. This value is applied to the B terminal of the comparator 48 through the
multiplexer 52 and is always compared with the value of the A terminal from the full
adder 47. If the value of A exceeds the value of B, and the value of J-RAM 41 becomes
1111111 (2) and comes to the fall-down last address of the envelope ROM 7, the A>B
terminal of the comparator 48 becomes 1 The full adder 49 adds 1 to the value of the
state code RAM 42, and, namely, the value changes from 3 to 4. As apparent from Table
4, the value of 4 means that the envelope has been completed. Since the value of the
J-RAM 41 has 8 addresses from the 11110111 (2) to the 11111111 (2) in the release
period, 138.0 ms x 8 = 1.104 seconds is established.
[0049] The value of 4 from the state code RAM 42 is added to the multiplexer 53 and the
value of 9 is selected from the register 85. Thus, the value is supplied to the multiplexer
51 through the multiplexer 53 to select the frequency divider 61 as apparent from
Table 5. As described hereinabove, since no pulses are supplied and 0 normally remains,
only the 0 is normally supplied through the multiplexer 51 to the AND gate 54. As
a result, the value of the J-RAM 41 remains 11111111(2). On the other hand, the value
of 4 from the state code RAM 42 is fed even to the multiplexer 52. As a result, the
value 11111(2) of the 5 bits from the least significant bit of the envelope ROM 7
is given to the B terminal of the comparator 48 through the multiplexer 52 from the
register 75. Since the value of the J-RAM 41 remains unchanged to 11111111-(2). the
five bits value, from the least significant bit, from the full adder 47 becomes 11111
(2) so that the A terminal of the comparator 49 does not exceed the value of the B
terminal. Accordingly, since the A>B terminal of the comparator 49 becomes 0 for ever
and the output of the AND gate 50 remains 0, the state code RAM 42 remains 4. As a
result, unless a new key is assigned, from the microcomputer 3, to the RAM address
1, the 11111111(2) is retained for ever in the J-RAM and 4 remains in the state code
RAM 42. The final envelope data of the fall-down envelope of the envelope ROM 7, i.e.,
a condition where the envelope has been fallen down (condition of no sounds) remains.
[0050] The ADSR envelope obtained by the above description is shown in Fig. 12. It can be
easily understood from the above description that the attack time, the decay time,
the sustain level and the release time can be freely changed when the initial value
to be written from the microcomputer 3 in each of the A-RAM 43, D-RAM 44, S-RAM 45.
R-RAM 46 is changed. As apparent from Table 5, the attack time, the decay time and
the release time becomes shorter when the initial values, to be written in the A-RAM
43. D-RAM 44 and R-RAM 46, are rendered smaller, and become longer when the initial
values are rendered larger. Also, as apparent from Fig. 9, when the initial value
to br written in the S-RAM becomes closer to 10000(2), the sustain level becomes larger.
When it becomes closer to 11111 (2), the sustain level becomes smaller. Since the
ADSR envelope can be freely set as described hereinabove, the most of the simulations
for existing musical instruments can be realized.
[0051] Although the case of only the RAM address 1 in the construction of Fig. 11 has been
described hereinabove, the same things can be said even to all the 72 addresses from
the address 0 to 71. Since it can be easily understood from the description of Fig.
7 that the time of 67.8 µs is divided into 72 slots and the time division multiplexing
operation can be effected with the time of one slot 0.942 us, the description is omitted.
[0052] Returning to Fig. 1, the ROM address for the wave ROM 6 is calculated by the time
division multiplexing operation of the 72 slots and is calculated from the wave ROM
address calculator 4 so that the wave data is also obtained in the form of the time
division multiplexing of the 72 slots from the wave ROM 6. Since the ROM address for
the envelope ROM 7 is obtained in the form of the time division multiplexing of the
72 slots even from the envelope ROM address calculator 5 at a timing synchronized
with it, the envelope data from the envelope ROM 7 is obtained in the form of the
time division multiplexing of the 72 slots. Since these wave data are multiplied by
the envelope data with a multiplier 8, the wave data with the envelope attached thereto
is obtained in the form of the time division multiplexing of the 72 slots. and the
output is also provided as tone signals from the speaker 12 through a D
/A converter 9. a clock rejection filter 10 and a power amplifier 11.
[0053] In the above description, the rise-up and fall-down envelope data of the various
amplitudes are storSt) as the envelope ROM 7 as shown in Fig. 9. An embodiment wherein
the envelope data of the amplitude of one type is accommodated and the ROM size is
rendered smaller will be described hereinafter.
[0054] Fig. 13 shows the entire system thereof. The difference from the construction of
Fig. 1 lies in the addition of the amplitude data storing means 13 and the multiplier
14. Since the amplitude data is obtained with time division multiplexing from the
amplitude data storing means 13, only the envelope data of a constant amplitude is
required to be stored in the envelope ROM 7. As shown in Fig. 14, the RAM 47 of 72
addresses where the amplitude data W are stored is required to be provided as the
actual construction of the amplitude data storing means. The slot counter 36, the
microcomputer 2 and the initial loading interface 35 may be the same as those shown
already in Fig. 7 and Fig. 11.
[0055] When the amplitude data is written in each address, through the initial loading interface
35, from the microcomputer with respect to the wave data RAM 47, the address counter
sequentially accesses the RAM 47 for each counting of the o'o to provide the amplitude
data in the form of the time division multiplexing to the output.
[0056] The wave ROM 6 can also be rendered smaller in size by the addition of some hardwares.
[0057] One example of the construction of the wave ROM 6 will be shown in Fig. 15. As shown
in Fig. 16. the wave ROM 6 has the one-half-period wave data of the sinusoidal wave
stored therein. One bit of sign RAM 48 is provided adjacent to the K-RAM 31 and the
value of e n/2 is stored in the RAM 34. Since the wave ROM 6 is stored by half the
wave in such a manner as described hereinabove, the ROM size can be reduced to one
half. The size of the wave ROM can be made necessarily smaller in size due to addition
of some hardwares even in the one-fourth wave. Details of the multichannel construction
of Fig. 1 can be seen in Fig. 17. Referring to Fig. 17, the converters 91, 92, 93,
the clock rejection filters 101, 102, 103, the power amplifiers 111. 112. 113 and
the speakers 121, 122. 123 are disposed by three channels. The channel data from the
channel data means 14 determines which channel makes sounds. The demultiplexer 15
distributes the tone signal data, which is obtained from the multiplier 8 and has
already had the envelope to a given channel by a channel data. Accordingly, the microcomputer
3 writes in the channel data means 14 a channel to be assigned in each of the 72 slots.
[0058] The channel data means 14 is the same in construction as the amplitude data means
of Fig. 14. Some advantages of the embodiment will be enumerated hereinafter.
[0059] In the time division multiplex of 72 slots, anything can be assigned to the 72 slots.
In the embodiment, the assignment has been performed as shown in Table 3, considering
the use as the tone source for the draw-bar application, but the assignment is not
restricted. Extremely speaking, the 72 slots may be assigned up to the seventy-second
harmonics from the fundamental in the use as the tone source of the monotony. Also,
since the number of the maximum, simultaneous pronunciations is considered for in
the use as the accompaniment chord, 18 slots can be assigned per one tone and can
be assigned from the fundamental to the eighteenth harmonics. In this manner, flexibility
is allowed with respect to any tone source.
[0060] Secondly, since the sinusoidal wave is read as the wave data, purer and soft tones
can be provided than flute type waves are, which have been provided through the filter
from the rectangular wave or the saw-tooth waves as before.
[0061] Thirdly, the present system does not require a tone color filter at all as in conventional
systems, since the tone color is adapted to be changed by the composition of the sinusoidal
wave. The use of tone color filters not only complicates the system. but also causes
undesirable results such as S/N reduction, distortion inducement, etc. In the case
of the present system, the D/A conversion allows the direct connection up to the power
amplifier without extra work.
[0062] Fourthly, the system wherein no wave calculation is performed is one of the characteristics
in accordance with the present invention. Assume that the harmonics from the fundamental
to the seventy-second are assigned to the 72 slots. According to conventional methods,
upon application of the spectrum from the fundamental to the seventy-second harmonics
as the tone color data, the sinusoidal wave amplitude of each of the 72 harmonics
is multiplied by the respective spectrum amount in accordance with the spectrum. They
are added to provide complex waves, which are written into a wave memory. Thereafter,
the wave reading is performed for multiplication with the envelope data, and a so-called
inverted fourier transform is provided. On the other hand, according to the present
system, all the 72 sinusoidal waves will be read with the same amplitude straight
without the wave calculation. And a given tone color is provided as the multiplication
results with the 72 envelope data. The problems involved in the wave calculation are
provided as described in the beginning. In the system of the present invention, all
these problems can be settled.
[0063] Fifthly, the characteristic is that the instantaneous tone color can be changed.
The 72 slots can control the frequency of the wave independently and can set the envelope
of the ADSR independently. Since the instantaneous color tone variation means an instantaneous
spectrum variation, assume that the seventy-second harmonics are assigned from the
fundamental to the 72 slots, and the attack time is made faster with lower order in
harmonics and the attack time is made sufficiently slower with higher order in harmonics
so that soft tones which are less in harmonics starts at the beginning of the key
depression, and tone which are more in harmonics are provided as time passes. Also,
assume that the longer decay time with lower order in harmonics and the shorter decay
time with higher order in harmonics, and sharp sounds which are produced when an object
has been beaten are caused at the beginning upon depression of the key, and the harmonics
decrease immediately after the sharp sounds thereby to leave the soft sounds behind.
At this time, sounds like piano can be simulated. The ADSR of each harmonic envelope
is improved to become free from the electric characteristics such as continuous fixed
tone-color, which can be often found in the conventional electronic musical instruments.
[0064] Sixthly, since the clocks φ'0, 0'1
0'
2 are rendered constant as 0.942 us, which is not changed for every circuit and is
fixed without changes for each note, the system construction is extremely simple.
In the case of the embodiment, only the RAM address requires 72 waves or envelopes
independently, although the 72 waves or envelopes are read independently. Not only
the full adder, comparator necessary for calculation, but also the wave ROM, envelope
ROM, multiplier, D/A converter, etc. are not disposed by 72. If they are disposed
one by one, the employment can be performed by the time division multiplex of 72 slot
portions. In the time division multiplex of 72 slots, 72 data are normally provided
and are sequentially switched by the multiplexer. However, according to the present
invention, the RAM of the 72 addresses is used. Thus, the time division multiplexing
can be realized freely, by the rotation of the addresses, without the use of the multiplexer.
This point is an advantageous point in the system construction of the present invention.
[0065] Seventhly, the major system portion of the present invention is all digital. Digital
circuits are better in view of noise margin as compared with analog circuits. Namely,
since all the circuit repeats 1 and 0 fully in the power source voltage, all the signals
can be handled in volt units. On the other hand, analog circuits require to handle
the signals in millivolt or microvolt units. Thus, special care is required in design
even in view of S/N. distortion or earth wiring. In addition, in analog circuits,
the problems such as drift, offset or the like are normally required to be taken into
consideration during design. However, in digital circuits, 1 remains 1 strictly and
0 remains 0 strictly unless an unavoidable thing occurs. Since 1 + 1 = and 0x0=0,
1 + 1 = 2.001 is not correct and OxO = 0.001 is not correct. In digital circuits,
the problems such as drift and offset are irrelevant in normal design.
[0066] Eightly, fluctuations caused by element variations, or adjustment requirements are
removed. For example, the construction of the same instrument as that of the above-described
embodiment, using analog circuits requires 72 sinusoidal wave oscillators, 72 envelope
generating means and 72 analog multipliers. Speaking about the oscillator, the oscillation
amplitude causes variations due to the value of the transistor or CR to be used. When
necessary, the adjustment may be required. The same things can be said even about
the variations in the 72 envelope generating means and the analog multiplier. On the
other hand, in the digital system of the present invention, no variations are caused
among the 72 slots so long as the operation is normal even in the wave data and the
envelope data. Accordingly, conventional adjusting operations can be avoided.
[0067] Ninthly. advantages are provided in assembling the electronic musical instrument.
Namely, major portions of the present invention are of digital construction easier
for large scale integration and can be realized with the use of approximately 10.000
transistors in the number of the elements except for the microcomputers. Current digital
LSI can sufficiently include in 1 chip 64K bit mask ROMs and 16K bit static RAMs.
The major portions of the electronic musical instrument, even if the microcomputer
is contained, can be constructed on one printed circuit board, thus resulting in a
remarkable progress as compared with the conventional construction of using ten-odd
or several tens of printed circuit boards.
[0068] For easier understanding in the above description, concrete numeral values are used.
However, the present invention is not restricted to these numeral values. The wave
ROM may be a RAM without any restriction to the ROM.
[0069] As described hereinabove, the present invention can realize a tone source system
for a superior electronic musical instrument which is suitable for LSI application,
since the wave data can be provided in the form of the time division multiplexing,
or the envelope data can be provided in the form of time division multiplexing in
synchronous relation with it, and the wave data to which the envelopes are attached
can be provided in the form of time division multiplexing through multiplication of
these data.
1. An electronic musical instrument equipped with envelope generating means, wherein
an envelope generating means is composed of envelope memory and an address calculator
for envelope memory, the address value of said envelope memory is calculated through
time division multiplexing by said address calculator for envelope memory to provide
a plurality of envelope data by time division multiplexing from said envelope memory.
2. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 1 , wherein the envelope data which is provided through division, by a
given divisor, of a time axis of a rise-up envelope and a fall-down envelope are stored
within an envelope memory.
3. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 1 , wherein the address calculator for envelope memory is composed of an
arithmetic logic circuit and a random access readwrite memory having a plurality of
addresses, one unit of data necessary for calculation of the address value of the
envelope memory are stored by plurality in said random access read/read memory, and the address value of the envelope memory is calculated through the
time division multiplexing by said arithmetic logic circuit everytime said one unit
of data are sequentially read from said memory so that a plurality of envelope data
may be obtained by the time division multiplexing from one envelope memory.
4. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 1 , wherein a state code register for storing and retaining a state code
of attack, decay, sustain, release and completion from depression of a key of keyboards
to the vanishing of sound is provided within an address calculator for envelope memory
to control the read state of the envelope memory by the state code from said state
code register.
5. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 4. wherein selection from the attack state to the decay state, selection
from the decay state to the sustain state and selection from the release state to
the completion state are performed through the comparison with the given address value
of the envelope memory.
6. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 4, wherein when the state code from the state register is the attack state,
the decay state or the release state, the clock selecting data is selected with the
respective state code and a clock for reading the envelope data from the envelope
memory is selected with said clock selecting data, whereby the attack time. the decay
time and the release time can be optionally varied.
7. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 4, wherein when the state code from the state register is the sustain state,
a clock for reading from an envelope memory is in its stop position.
8. An electronic musical instrument equipped with envelope generating means in accordance
with claim 1 , wherein a plurality of envelope data which have been obtained through
division, by a given divisor, of the time axis of the rise-up and fall-down envelope
data which are different in amplitude value are stored within the envelope memory
and an envelope data of a desired amplitude value is selectively read from the envelope
data obtained through the division to control the amplitude of the tone signals.
9. An electronic musical instrument equipped with envelope generating means in accordance
with Claim 1 . wherein the envelope memory is compared with a read only memory.
10. An electronic musical instrument for causing tone signals by digital techniques,
comprising:
tone selecting means for selecting tone colors in accordance with a musical setting
performed by a player, keyboard means by which the player performs the melody or accompanies
the musical setting, processing means for inputting tone color data from said tone
selecting means and key data from said keyboard means thereby to give given instructions
to each means,
wave generating means for generating in the form of time division multiplexing the
digital data of a plurality of tone waves in accordance with the instructions from
said processing means,
envelope generating means for generating in the form of time division multiplexing
the digital data of a plurality of envelope in accordance with the instructions from
said processing means,
multiplier means for multiplying, with time division multiplexing, the digital data
of a plurality of tone waves from said wave generating means by the digital data of
a plurality of envelopes from said envelope generating means thereby to provide, in
the form of the time division multiplexing, the digital data of a plurality of tone
signals with envelopes attached thereto,
as digital-to-analog converter for converting the digital data of the tone signals
from said multiplier means into analog signals,
a clock rejection filter for rejecting the clock component contained in the analog
signal from said digital-to-analog converter, and
electro-acoustical converting means for converting into acoustic signals the tone
signals from said clock rejection filter.
11. An electronic musical instrument for causing tone signals by digital techniques,
comprising:
tone selecting means for selecting tone colors in accordance with a musical setting
performed by a player, keyboard means by which the player performs the melody or accompanies,
the musical setting, processing means for inputting tone color data from said tone
selecting means and key data from said keyboard means thereby to give given instructions
to each means,
wave generating means for generating, in the form of time division multiplexing, the
digital data of a plurality of tone waves in accordance with the instructions from
said processing means,
envelope generating means for generating, in the form of time division multiplexing,
the digital data of a plurality of envelopes in accordance with the instructions from
said processing means.
amplitude data storing means for generating, in the form of time division multiplexing,
the digital data of a plurality of amplitude data in accordance with instructions
from said processing means,
multiplier means for multiplying, with time division multiplexing, the digital data
of a plurality of tone waves from said wave generating means, the digital data of
a plurality of envelopes from said envelope generating means and the digital data
of a plurality of amplitude data from said amplitude data storing means thereby to
provide, in the form of the time division multiplexing, the digital data of a plurality
of tone signals with envelopes attached thereto,
a digital-to-analog converter for converting the digital data of the tone signals
from said multiplier means into analog signals,
a clock rejection filter for rejecting the clock component contained in the analog
signal from said digital-to-analog converter, and
electro-acoustical converting means for converting into acoustic signals the tone
signals from said clock rejection filter.
12. An electronic musical instrument for causing tone signals by digital techniques
to produce multichannel sounds, comprising:
tone selecting means for selecting tone colors in accordance with a musical setting
performed by a player, keyboard means by which the player performs the melody or accompanies
the musical setting, processing means for inputting tone color data from said tone
selecting means and key data from said keyboard means thereby to give given instructions
to each means,
wave generating means for generating, in the form of time division multiplexing, the
digital data of a plurality of tone waves in accordance with the instructions from
said processing means,
envelope generating means for generating, in the form of time division multiplexing,
the digital data of a plurality of envelopes in accordance with the instructions from
said processing means,
channel data storing means for generating, in the form of time division multiplexing,
the digital data of a plurality of channel data in accordance with the instructions
from said processing means,
multiplier means for multiplying, with time division multiplexing, the digital data
of a plurality of tone waves from said wave generating means by the digital data of
a plurality of envelopes from said envelope generating means thereby to provide, in
the form of the time division multiplexing, the digital data of a plurality of tone
signals with envelopes attached thereto,
distributing means for distributing the digital data of the tone signals from said
multiplier means in accordance with the channel data from said channel data storing
means, a plurality of digital to analog converters for converting the digital data
of the tone signals from said distributing means into analog signals,
a plurality of clock rejection filters for rejecting the clock components contained
in the analog signals from the plurality of digital-to-analog converters, and
a plurality of electro-acoustical converting means for converting into acoustic signals
the tone signals from the plurality of clock rejection filters thereby to provide
the sounds of the multichannel.
13. An electronic musical instrument for causing tone signals by digital techniques
to produce multichannel sounds, comprising:
tone selecting means for selecting tone colors in accordance with a musical setting
performed by a player. keyboard means by which the player performs the melody or accompanies
the musical setting, processing means for inputting tone color data from said tone
selecting means and key data from sai.Q keyboard means thereby to give given instructions
to each means,
wave generating means for generating, in the form of time division multiplexing, the
digital data of a plurality of tone waves in accordance with the instructions from
said processing means,
envelope generating means for generating, in the form of time division multiplexing,
the digital data of a plurality of envelopes in accordance with the instructions from
said processing means,
amplitude data storing means for generating, in the form of time division multiplexing,
the digital data of a plurality of amplitude data in accordance with instructions
from said processing means,
channel data storing means for generating, in the form of time division multiplexing,
the digital data of a plurality of channel data in accordance with the instructions
from said processing means,
multiplier means for multiplying, with time division multiplexing, the digital data
of a plurality of tone waves from said wave generating means, the digital data of
a plurality of envelopes from said envelope generating means and the digital data
of a plurality of amplitude data from said amplitude data storing means thereby to
provide, in the form of the time division multiplexing, the digital data of a plurality
of tone signals with envelopes attached thereto,
distributing means for distributing the digital data of the tone signals from said
multiplier means in accordance with the channel data from said channel data storing
means, a plurality of digital to analog converters for converting the digital data
of the tone signals from said distributing means into analog signals,
a plurality of clock rejection filters for rejecting the clock components contained
in the analog signals from the plurality of digital-to-analog converters, and
a plurality of electro-acoustical converting means for converting into acoustic signals
the tone signals from the plurality of clock rejection filters thereby to provide
the sounds of the multichannel.