WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Musical tone producing device of waveform memory readout type    
United States Patent4641564   
Link to this pagehttp://www.wikipatents.com/4641564.html
Inventor(s)Okamoto; Shimaji (Shizuoka, JP)
AbstractA musical tone producing device of a waveform readout type has a reference waveform memory and a difference waveform memory. The reference waveform memory stores a reference waveform which is similar commonly to each of divided waveforms belonging to a plurality of blocks into which a musical tone waveform of a musical tone to be produced is divided. The difference waveform memory stores difference waveforms, each of which is a difference between the reference waveform and each of divided waveforms. The reproduction of the musical tone waveform is accomplished by reading out the reference waveform and the difference waveforms successively and by successively adding the read out reference waveform and the difference waveforms. This musical tone waveform synthesis according to utilization of difference waveforms contributes to the reduction of memory size.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 4641564
Musical tone producing device of waveform memory readout type - US Patent 4641564 Drawing
Musical tone producing device of waveform memory readout type
Inventor     Okamoto; Shimaji (Shizuoka, JP)
Owner/Assignee     Nippon Gakki Seizo Kabushiki Kaisha (Hamamatsu, JP)
Patent assignment
All assignments
Publication Date     February 10, 1987
Application Number     06/621,246
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     June 15, 1984
US Classification     84/605 84/607 84/625 84/DIG.9
Int'l Classification     G10H 001/06
Examiner     Shoop Jr.; William M.
Assistant Examiner     Logan; Sharon D.
Attorney/Law Firm     Blakely, Sokoloff, Taylor & Zafman
Address
Parent Case    
Priority Data     Jun 17, 1983[JP]58-109945 Mar 03, 1984[JP]59-40720
USPTO Field of Search     84/1.22 84/1.19 84/1.01 84/1.23 84/DIG. 9
Patent Tags     musical tone waveform memory readout type
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4437379
Okumura
84/607
Mar,1984

[0 after 0 votes]
4352312
Whitefield
84/625
Oct,1982

[0 after 0 votes]
4281574
Deutsch
84/607
Aug,1981

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A musical tone producing device of a waveform readout type, comprising:

reference waveform memory means for storing reference waveform data constituting a reference waveform, said reference waveform being similar to each of divided waveforms belonging to a plurality of blocks into which a musical tone waveform of a musical tone to be produced is divided;

difference waveform memory means for storing difference waveform data which comprises a plurality of block difference waveform data, each of said block difference waveform data constituting difference waveform representing a difference between said reference waveform and each of said divided waveforms;

readout means connected to said reference waveform memory means and said difference waveform memory means for reading out said reference waveform data and for reading out successively said block difference waveform data;

adding means connected to said reference waveform memory means and said difference waveform memory means for adding said reference waveform data and each of said block difference waveform data and for outputting successively added results respectively corresponding to said divided waveforms; and

sound means connected to said adding means for producing said musical tone according to said added results.

2. A musical tone signal producing device according to claim 1, wherein said readout means repetitively reads out said reference waveform data in response to the readout of each of said block difference waveform data.

3. A musical tone producing device according to claim 1, which further comprises:

pitch designating means for designating a pitch of said musical tone to be produced, said readout means reading out said reference waveform data and said block difference waveform data at a rate corresponding to said designated pitch.

4. A musical tone producing device according to claim 3, wherein said pitch designating means comprises a keyboard having a plurality of keys corresponding to different pitches respectively.

5. A musical tone producing device according to claim 1, wherein said readout means includes block designating means for designating one among said plurality of blocks, and reads out one relating to said designated block among said reference waveform data and said block difference waveform data.

6. A musical tone producing device comprising:

reference waveform memory means for storing reference waveform data constituting a reference waveform, said reference waveform being a divided waveform belonging to a first block among first to Nth blocks into which a musical tone waveform of a musical tone to be produced is divided, wherein N is a positive integer;

difference waveform memory means for storing second to Nth difference waveform data constituting second to Nth difference waveforms, Mth difference waveform among said second to Nth difference waveforms representing a difference between a divided waveform belonging to the Mth block and a divided waveform belonging to the (M-1)th block, wherein M is a positive integer greater than or equal to 2 and less than or equal to N;

readout means connected to said reference waveform memory means and said difference waveform memory means for reading out firstly said reference waveform data from said reference waveform memory means, and then for reading out successively said second to Nth difference waveform data fro said difference waveform memory means in order of the ordinal numbers of said second to Nth difference waveform data;

accumulating means connected to said reference waveform memory means and said difference waveform memory means for adding said reference waveform data to the sum of said second to Nth difference waveform data in order of the readout thereof and for outputting successively the accumulated result; and

sound means connected to said accumulating means for producing said musical tone according to said accumulated result.

7. A musical tone producing device according to claim 6, which further comprises:

pitch designating means for designating a pitch of said musical tone to be produced, said readout means reading out said reference waveform data and said second to Nth difference waveform data at a rate corresponding to said designated pitch.

8. A musical tone producing device according to claim 7, wherein said pitch designating means comprises a keyboard having a plurality of keys corresponding to different pitches respectively.

9. A musical tone producing device according to claim 6, wherein said readout means includes block designating means for designating one among said first to Nth blocks, and reads out one relating to said designated block among said reference waveform data and said second to Nth difference waveform data.

10. A musical tone producing device according to claim 6, which further comprises:

tone color selecting means for selecting one among plural kinds of tone colors to be imparted with said musical tone; and wherein

said reference waveform data comprises plural sets, each of which corresponds to each of said tone colors;

said second to Nth difference waveform data comprises plural sets, each of which corresponds to each of said tone colors;

said readout means reads out said reference waveform data and said second to Nth difference waveform data which are ones corresponding to said selected tone color among said respective sets.

11. A musical tone producing device according to claim 6, wherein said accumulating means comprises:

delaying means; and

adding means for adding the output of said delay means and presently read out one among said second to Nth difference waveform data from said difference waveform memory means, causing said delay means delaying an added output by the time length of the block corresponding to said presently read out one.

12. A musical tone producing device comprising:

reference waveform memory means for storing reference waveform data constituting a partial reference waveform, said partial reference waveform being a partial waveform belonging to a predetermined period of a divided waveform belonging to first frame among first to Nth frames into which a musical tone waveform of a musical tone to be produced is divided, wherein N is a positive integer;

difference waveform memory means for storing second to Nth partial difference waveform data constituting second to Nth partial difference waveforms respectively, Mth partial difference waveform among said second to Nth partial difference waveforms representing a difference between a partial waveform belonging to the predetermined period of a divided waveform belonging to the Mth frame and a partial waveform belonging to the predetermined period of a divided waveform belonging to the (M-1)th frame, wherein M is a positive integer greater than or equal to 2 and less than or equal to N;

readout means connected to said reference waveform memory means and said difference waveform memory means for repetitively reading out said reference waveform data until the lapse of time corresponding to said first frame firstly, and then for repetitively reading out each of said second to Nth partial difference waveform data until the lapse of time corresponding to each of said second to Nth frames, the order of the readout of said second to Nth partial difference waveform being in order of the ordinal numbers of said second to Nth partial difference waveform data;

accumulating means connected to said reference waveform memory means and said difference waveform memory means for adding said reference waveform data to the sum of said second to Nth partial difference waveform data in order of the readout thereof and for outputting successively the accumulated result; and

sound means connected to said accumulating means for producing said musical tone according to said accumulated result.

13. A musical tone signal producing device according to claim 12, wherein said readout means repetitively reads out said reference waveform data in response to the readout of each of said second to Nth partial difference waveform data.

14. A musical tone producing device according to claim 12, which further comprises:

pitch designating means for designating a pitch of said musical tone to be produced, said readout means reading out said reference waveform data and said second to Nth partial difference waveform data at a rate corresponding to said designated pitch.

15. A musical tone producing device according to claim 14, wherein said pitch designating means comprises a keyboard having a plurality of keys corresponding to different pitches respectively.

16. A musical tone producing device according to claim 12, wherein said readout means includes frame designating means for designating one among said first to Nth frames, and reads out one relating to said designated frames among said reference waveform data and said second to Nth partial difference waveform data.

17. A musical tone producing device according to claim 12, which further comprises:

tone color selecting means for selecting one among plural kinds of tone colors to be imparted with said musical tone; and wherein

said reference waveform data comprises, plural sets, each of which corresponds to each of said tone colors;

said second to Nth partial difference waveform data comprises plural sets, each of which corresponds to each of said tone colors;

said readout means reads out said reference waveform data and said second to Nth partial difference waveform data which are ones corresponding to said selected tone color among said respective sets.

18. A musical tone producing device comprising:

reference waveform memory means for storing reference waveform data constituting a reference waveform in the form of a plurality of sampled values, said reference waveform being a divided waveform belonging to a first block among first to Nth blocks into which a musical tone waveform of a musical tone to be produced is divided, wherein N is a positive integer;

difference waveform memory means for storing second to Nth difference waveform data constituting second to Nth difference waveforms in the form of a plurality of sampled values respectively, Mth difference waveform among said second to Nth difference waveforms representing a difference between a divided waveform belonging to the Mth block and a divided waveform belonging to the (M-1)th block, wherein M is a positive integer greater than or equal to 2 and less than or equal to N;

readout means connected to said reference waveform memory means and said difference waveform memory means for reading out said reference waveform data from said reference waveform memory means and successively said second to Nth difference waveform data from said difference waveform memory means;

accumulating means connected to said reference waveform memory means and said difference waveform memory means comprising accumulators of a number corresponding to that of said sampled values, each of said accumulators accumulating corresponding sampled values of said reference waveform data and said second to Nth difference waveform data and for outputting successively the accumulated result; and

sound means connected to said accumulating means for producing said musical tone according to said accumulated result.

19. A musical tone producing device according to claim 18, wherein said readout means simultaneously and in parallel reads out all the sampled values of said Mth difference waveform data and which further comprises selector means for sequentially sending out sampled values of said accumulated results.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

The present invention relates to a musical tone producing device and, more particularly, to a musical tone producing device of waveform memory readout type.

A musical tone producing device of this type is used as a musical tone generator such as an electronic musical instrument. The musical tone producing device is used to generate a musical tone signal whose waveform (tone color) elaborately changes in the same manner as tone colors of natural sounds produced by conventional musical instruments. For this purpose, a musical tone producing device is proposed, wherein waveform data of sampling points of the entire musical tone signal waveform from the beginning of the conventional musical tone to its end are stored in a waveform memory, and the waveform data of the respective sampling points are sequentially read out from the waveform memory to produce a musical tone signal. Such an example is shown in FIG. 3 of U.S. Pat. No. 4,383,462. In FIG. 3, a complete waveform of the period from the beginning till the end of a tone production is memorized to be read out subsequently. The complete waveform is stored in the WM31 and the waveform is read out based on a signal (KD) indicative of a key depression timing.

According to the technique described above, when waveform data obtained by sampling a tone of a conventional musical instrument are stored in the waveform memory, the same tones as in the conventional musical instrument can be produced. However, the amount of data to be stored in the waveform memory becomes large, and a compact, low-cost musical tone producing device cannot be obtained. It is thus desirable to decrease the capacity of the waveform memory.

In order to solve the above problem, a method of decreasing the capacity of the waveform memory is also proposed, wherein waveform data corresponding to a repeating waveform (i.e., waveform portions of the entire waveform which are periodically repeated) is stored in the waveform memory and is read out repeatedly. Such an example is shown in FIG. 6 of U.S. Pat. No. 4,383,462. In the WM61 in said FIG. 6 is stored a complete waveform of the attack period and the attack waveform is read therefrom based on a key depression (a KD signal). After the reading out of the attack waveform (an IMF signal) until the finishing of a tone production (a DF signal), the musical tone waveform of the fundamental period is read out repeatedly.

According to this technique, however, since waveform data to be stored in the waveform memory are basically obtained by sampling the amplitude of the musical tone waveform, the musical tone generated from the musical tone producing device becomes artificial. As a result, monotonous expressions in musical performance cannot be avoided.

In addition to the above disadvantage, according to this technique, the waveform data normally requires a number of bits to represent a maximum amplitude of the waveform. As a result, the capacity of the waveform memory must be increased.

In order to solve the above problem, a method of decreasing the capacity of the waveform memory is described in U.S. Pat. No. 3,515,392, wherein differences between waveform amplitudes of every two adjacent sampling points of the tone signal waveform are sequentially calculated, and difference data are stored in the waveform memory. The number of bits which represents the difference data is then smaller than that which represents the maximum waveform amplitude, and the required number of bits represents only a change in waveform. Therefore, the capacity of the waveform memory can be decreased.

When this method of storing the difference data in the waveform memory is considered in detail, however, the waveform includes a moderate-slope waveform portion and an steep-slope waveform portion subjected to abrupt, complicated changes. The difference greatly changes from a small value (represented by a smaller number of bits) to a large value (represented by a larger number of bits) in the latter. Therefore, when the number of bits for the difference data is simply limited without consideration, the musical tone signal produced on the basis of the limited difference data presents an artificial tone, resulting in inconvenience.

SUMMARY OF THE INVENTION

The present invention has been made in consideration of the conventional drawbacks, and its principal object is to provide a musical tone producing device capable of producing a highly precise (high quality) tone signal by using a waveform memory of smaller capacity while an advantage is effectively utilized wherein difference data representing differences between every two adjacent sampling points of a musical tone signal waveform is stored in the waveform memory.

In order to achieve the above object of the present invention, a waveform having a plurality of successive periods of a musical tone signal to be produced is divided into a plurality of blocks (e.g., on a period unit). With respect to blocks following the first block, differences between waveform amplitudes of the respective sampling points of a given block and those of the corresponding sampling points of the immediately preceding block are calculated, and resultant difference data are in advance stored in the waveform memory. In this case, since the waveforms of the two adjacent blocks are extremely similar to each other, the differences between the amplitudes of the waveforms of the adjacent blocks are very small. Thus, the number of bits of the difference data may be small, as a result, the capacity of the waveform memory can be decreased.

On the other hand, when a musical tone signal is produced by using the waveform memory for storing such difference data, the waveform amplitude data of the respective sampling points of the first block are read out as initial waveform data by a proper means. Thereafter, waveform amplitude data of the respective sampling points of the second and subsequent blocks are obtained such that the difference data of the sampling points corresponding to those of initial data are subjected to addition or subtraction.

According to an aspect of the present invention, there is provided a musical tone producing device of a waveform readout type, comprising:

reference waveform memory means for storing reference waveform data constituting a reference waveform, the reference waveform being similar to each of divided waveforms belonging to a plurality of blocks into which a musical tone waveform of a musical tone to be produced is divided;

difference waveform memory means for storing difference waveform data which comprises a plurality of block difference waveform data, each of the block difference waveform data constituting difference waveform representing a difference between the reference waveform and each of the divided waveforms;

readout means connected to the reference waveform memory means and the difference waveform memory means for reading out the reference waveform data and for reading out successively the block difference waveform data;

adding means connected to the reference waveform memory means and the difference waveform memory means for adding the reference waveform data and each of the block difference waveform data and for outputting successively added results respectively corresponding to the divided waveforms; and

sound means connected to the adding means for producing the musical tone according to the added results.

Other objects, features and advantages will be apparent from the following detailed description taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a signal waveform for explaining the principle of the present invention;

FIG. 2 is a block diagram of a musical tone producing device according to a first embodiment of the present invention;

FIGS. 3A and 3B, FIGS. 4A to 4D, and FIGS. 5A to 5C respectively show waveforms of signals produced by the main parts of the device shown in FIG. 2;

FIG. 6 is a block diagram of a musical tone producing device according to a second embodiment of the present invention;

FIG. 7 shows a signal waveform showing the relationship between the frame and a musical tone generated by the device shown in FIG. 6;

FIG. 8 shows a memory map of a difference waveform memory shown in FIG. 6;

FIGS. 9 to 11 are block diagrams of modifications of the first embodiment, respectively;

FIGS. 12A to 12C show waveforms of signals used in the modification shown in FIG. 11;

FIG. 13 is a block diagram of a musical tone producing device according to a third embodiment of the present invention;

FIG. 14 shows a waveform of a musical tone generated by the device shown in FIG. 13;

FIG. 15 shows a reference signal waveform;

FIGS. 16A and 16B and FIGS. 17A and 17B respectively show waveforms of signals at times t1 and tn of FIG. 2; and

FIG. 18 is a block diagram of a musical tone producing device according to a fourth embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In order to best understand the present invention, the principle of the present invention will be described with reference to FIG. 1. Assume periods 0T, 1T, 2T, . . . of a waveform MW of a musical tone signal to be produced. Changes in sampled values representing waveform amplitudes at sampling times t0, t1, t2, . . . of a given period are compared with those of the period adjacent to the given period.

The sampled values at times t0, t1, t2, . . . of the 0th, first and second periods 0T, 1T and 2T are given to be (P00, P01, P02, . . . ,), (P10, P11, P12, . . . ,) and (P20, P21, P22, . . . ,), respectively. When changes in sampled values of every two adjacent periods at the same relative sampling time are considered, differences between the sampled values are very small.

The sampled values P10, P11, . . . of the first period 1T at the respective times t0, t1, . . . are very similar to the sampled values P00, P01, . . . of the 0th period 0T at the respective times t0, t1, . . . . Differences between the sampled values P00 and P10 and between the sampled values P01 and P11 are very small. Similarly, in the relationship between the sampled values P20, P21, . . . of the second period 2T and the sampled values P10, P11, . . . of the first period 1T, differences between the sampled values P10 and P20 and between the sampled values P11 and P21 are very small. The differences between the corresponding sampled values of the every two adjacent periods after the third and subsequent periods are very small.

At the times t0, t1, t2, . . . of the first period 1T, differences D10, D11, D12, . . . are calculated as follows: ##EQU1##

At the times t0, t1, t2, . . . of the second period 2T, differences D20, D21, D22, . . . are calculated as follows: ##EQU2## Similarly, the differences are calculated at the respective times t0, t1, t2, . . . of the third and subsequent periods.

Difference data of differences D10, D11, D12, . . . ; D20, D21, D22; . . . are stored in the waveform memory. The sampled values P10, P11, P12, . . . ; P20, P21, P22, . . . ; . . . of the respective periods 1T, 2T, . . . are sequentially generated.

The sampled values P10, P11, P12, . . . of the first period 1T are given as follows: ##EQU3## In this manner, the sampled values P00, P01, P02 of the 0th period 0T are added to the differences D10, D11, D12, . . . of the period 1T which are obtained by equations (1), respectively.

The sampled values P20, P21, P22, . . . of the second period 2T are given as follows: ##EQU4## As is apparent from the above equations, the sampled values P10, P11, P12, . . . of the first period 1T which are derived from equations (3) are added to the differences D20, D21, D22, . . . of the second period 2T which are derived from equations (2), respectively. In this case, the sampled values P20, P21, P22, . . . have contents obtained by adding the sampled values P00, P01, P02, . . . of the 0th period 0T to sums of the differences D10, D11, D12, . . . of the first period 1T and the differences D20, D21, D22 of the second period 2T, respectively.

Similarly, the sampled values P30, P31, P32 of the third period 3T are calculated in the same manner as described above. ##EQU5## As is apparent from equations (5), the sampled values P20, P21, P22, . . . of the second period 2T are added to the differences D30, D31, D32, . . . of the third period 3T, respectively.

The differences of a given subsequent period are added to the sampled values of the immediately preceding period to obtain the sampled values of the given period, respectively. In general, a sampled value Pni at the ith sampling time tni of the nth period nT is calculated as follows: ##EQU6##

The sampled values P00, P01, P02, . . . of the 0th period 0T are generated by a proper means (e.g., by reading out data of sampled values P00, P01, P02, . . . from the waveform memory).

The above-mentioned description has been made in favor of illustrative convenience. The present invention is not therefore limited to the case described above. Various changes and modifications may be made. For example, in the above explanation, the musical tone signal waveform MW is divided into blocks each having a single period. However, the block may also consist of two periods or a half period.

Musical tone producing devices according to the preferred embodiments of the present invention which are based on the principle described above will be described in detail hereinafter.

First Embodiment

FIG. 2 shows a first embodiment when a musical tone producing device is applied to a polyphonic electronic musical instrument for simultaneously producing a plurality of tones.

A key information KI generated from a keyboard circuit 2 upon depression of a key is detected and assigned to an empty one among Q time-division channels by a key assigner 3. Q corresponds to a maximum number of tones capable of producing simultaneously. The key assigner 3 receives a system clock .phi. shown in FIG. 3A and generates a channel signal CC (FIG. 3B) of each of the first to Qth channels for every one period of the system clock .phi.. In each channel timing, the key assigner 3 generates key information KI assigned to the channel, a key on signal KON (logic "1" while the key is being depressed) of the depressed key and a key on pulse signal KONP (pulse set at logic "1" only during one-channel timing when the key on signal KON is set at logic "1") in a time-division manner.

Pieces of the key information KI generated from the key assigner 3 are sequentially supplied to an F number memory 4. The F number memory 4 sequentially generates numerical data (called F numbers) which respectively represent pitches of depressed keys on the basis of the pieces of the key information KI which are received by the F number memory 4 in a time-division manner. For example, the F number memory 4 stores digital data, i.e., 1.0000 (decimal) corresponding to a tone having a highest pitch. Digital data from the lowest pitch to the second highest pitch are represented by fractional values.

The F number signals sequentially read out from the F number memory 4 for the respective channels are supplied to an accumulator 5. The F number signals of the respective channels are initialized by the key on pulse signal KONP and are accumulated for every channel. Accumulated outputs qF representing integral parts of the accumulated values of the F number signals of the respective channels are generated in synchronism with the corresponding channel timings in a time-division manner. The higher the pitch becomes, the shorter a period of accumulated output qF becomes.

In this embodiment, the output qF from the accumulator 5 comprises 5-bit digital data which periodically varies from "00000" (0 in decimal notation) to "11111" (31 in decimal notation). When a cycle of changes of the accumulated output qF allows designation of 32 sampling points (i.e., the 0th to 31st sampling points), they can be designated at a speed corresponding to the pitches of the depressed keys. It should be noted that FIGS. 4A to 4D show a case for one channel.

The accumulated output qF is given as an address signal to a waveform memory 6. In this embodiment, data of sampled values P00, P01, P02, . . . , and P031 of the 0th period 0T described with reference to FIG. 1 are stored as initial waveform data ID in the waveform memory 6. The waveform memory 6 also stores difference waveform data DD corresponding to the differences D10, D11, D12, . . . ; D20, D21, D22, . . . ; . . . (described with reference to equations (1) and (2)) of the respective periods 1T, 2T, . . . . The waveform data ID and the difference waveform data DD are prepared for every tone color so as to cause a tone color selector 7 to select proper data. A set of the waveform data ID and the difference waveform data DD is selected by a tone color selection signal TC generated by the tone color selector 7. In this manner, the waveform data D (ID and DD) having 32 sampling points/period are read out from the waveform memory 6 and are supplied as a first addition input to an adder 9 through a gate 8 in every channel in a time-division manner.

The waveform memory 6 stores the initial waveform data ID (FIG. 5C) with block number "0" and the difference waveform data DD1, DD2, . . . (FIG. 5C) with block numbers "1", "2", . . . . The initial waveform data ID consists of data for 32 sampling points of a waveform (FIG. 5B) of the 0th period 0T. The waveform (FIG. 5B) of the 0th period 0T corresponds to the waveform (FIG. 5A) of the 0th period 0T which is generated from the conventional musical instrument. The block numbers "1", "2", . . . of the difference waveform data DD1, DD2, . . . correspond to the periods 1T, 2T, . . . , respectively, and comprises data for 32 sampling points each. When the respective sampling points included in the respective periods 0T, 1T, 2T, . . . are accessed, only a desired block number and a desired sampling point number are designated to read out desired data.

The waveforms shown in FIGS. 5B and 5C are illustrated such that the time base in FIG. 5A is expanded. The waveform in FIG. 5B is obtained such that the waveform in FIG. 5A is normalized and is corrected to a waveform having a constant amplitude from the beginning to the end. The normalized waveforms are stored as the waveform data ID, DD1, DD2, . . . in the waveform memory 6. However, the waveform data ID, DD1, DD2, . . . may also be directly derived from the waveform (FIG. 5A) without normalization and may be stored in the waveform memory 6.

A sum output from the adder 9 is supplied as musical tone waveform data MD to a multiplier 10 and is multiplied with an envelope signal EV from an envelope generator 11. A multiplied signal is converted by a sound system 12 to a musical tone. Meanwhile, the musical tone signal waveform data MD from the adder 9 is delayed by a one period delay circuit 15 by a delay time corresponding to one period. A delayed signal is fed back to a second addition input of the adder 9 through a gate 16. The adder 9 performs the operations given by equations (3) to (5) such that one-period delayed musical tone waveform data MD* are added to the waveform data D currently read out from the waveform memory 6. The musical tone waveform data MD at the respective sampling points during the current period are sequentially generated. In this case, the musical tone waveform data MD on the respective channels are generated in a time-division manner.

The one period delay circuit 15 has a qF variation detector 21 for receiving the accumulated output qF from the accumulator 5. The qF variation detector 21 generates a shift pulse SP (FIG. 4C) at a given channel timing when the contents of the accumulated outputs qF (FIG. 4A) of the given channel change. A change in accumulated output qF indicates that the sampling point has advanced by one step. Therefore, the shift pulse SP is generated every time the initial waveform data ID or the difference waveform data DD is read out from the waveform memory 6. The readout data are supplied to a distribution circuit 22. The distribution circuit 22 receives the channel signal CC supplied from the key assigner 3 and distributes the shift pulses SP generated from the qF variation detector 21 as shift trigger pulses SP1 to SPQ for the respective channel timings. The shift trigger pulses SP1 to SPQ are supplied to shift registers 221 to 22Q corresponding to the channels, respectively.

The shift registers 221 to 22Q are 32-stage shift registers, respectively. The 32 stages correspond to the 32 sampling points of one period of the musical tone waveform. The shift registers 221 to 22Q commonly receive the musical tone waveform data MD, which are supplied from the adder 9, every time the shift registers 221 to 22Q receive the shift trigger pulses SP1 to SPQ, respectively. The shift registers 221 to 22Q shift the data by one stage each. When the respective shift registers 221 to 22Q receive 32 shift trigger pulses SP1 to SPQ (i.e., when one cycle has elapsed), outputs from the shift registers 221 to 22Q are sequentially supplied to a selector 23. The selector 23 sequentially receives the outputs from the shift registers 221 to 22Q of the first to Qth channels one by one in response to the corresponding channel signals CC. The selector 23 then supplies the delayed musical tone waveform data MD* (FIG. 4D) obtained by delaying the musical tone waveform data MD by one period.

The addresses of the memory area of the waveform memory 6 for storing the initial waveform data ID and the difference waveform data DD for 32 sampling points/period are accessed in response to the accumulated outputs qF as described above. The designation of subsequent periods is performed by a block designation output BL from a block designation circuit 25.

The block designation circuit 25 has a block counter 26. The block counter 26 performs counting in response to a clock signal CA (generated in synchronism with the corresponding channel timing) generated as a carry signal through a gate 27 when the accumulated output qF from the accumulator 5 changes from "11111" to "00000". The block counter 26 receives the key on pulse signal KONP as a reset signal from the key assigner 3. The block counter 26 then supplies the block designation outputs BL to the waveform memory 6 so as to designate the blocks in order of 0, 1, 2, . . . after the block counter 26 receives the key on pulse signal KONP. It should be noted that the block counter 26 counts the clock signals CA in a time-division manner in synchronism with the respective channel timings and that the block designation outputs BL are also generated in the time-division manner.

The block numbers 0, 1, 2, . . . are assigned the periods 0T, 1T, 2T, . . . of the musical tone waveform MW, respectively.

The block designation circuit 25 supplies the block designation output BL to an end-of-final-block (EOB) detector 28. When the content of the block designation output BL designates a block next to the final block (i.e., when the final block is ended), a block detection output BLD of logic "1" is generated from the EOB detector 28. It should also be noted that this detection operation is performed in the time-division manner. The output BLD is inverted by an inverter 29, and an inverted output BLD is supplied to an enable terminal EN of the gate 27. In this manner, when the EOB detector 28 detects the EOB, the gate 27 is closed.

The output from the inverter 29 is simultaneously supplied to an enable terminal EN of the gate 8 connected to the output terminal of the waveform memory 6. When the EOB detector 28 detects the EOB, the gate 8 is closed. As a result, the waveform data D as the first addition input is not supplied to the adder 9, and thus the delayed musical tone waveform data MD* from the one period delay circuit 15 is supplied as the musical tone waveform data MD. When the EOB is detected, the musical tone waveform data MD formed by the EOB is repeatedly supplied to the sound system 12.

The block designation output BL is supplied to an initial block detector 35 and generates an initial block detection output BL1 which is set to be logic "1" when the block designation output BL is set to be logic "0". The output BL1 is inverted by an inverter 36, and an inverted output BL1 is supplied to an enable terminal EN of a gate 16. The gate 16 is disabled when the initial block is detected, and the adder 9 will not receive the delayed musical tone waveform data MD* as the second addition input. Therefore, the initial waveform data ID (FIG. 5C) currently read out from the waveform memory 6 is supplied as the musical tone waveform data MD to the sound system 12.

The envelope generator 11 receives the key on signal KON and the tone selection signal TC and generates the envelope signal EV having a waveform corresponding to the selected tone color in a time-division manner every time the key on signal KON is generated.

The operation of the electronic musical instrument shown in FIG. 2 will now be described. The operation for only one channel is described by way of simplicity. The same operation as in the selected channel can be performed in other channels in a time-division manner in synchronism with the corresponding channel timings.

When the depressed key is assigned by the key assigner 3 to the corresponding channel, the accumulator 5 and the block counter 26 are reset in response to the key on pulse signal KONP. The block designation output BL designates the 0th block. The accumulator 5 generates the accumulated output qF (FIG. 4A) updated one by one at a period corresponding to the pitch of the depressed key. The initial waveform data ID for 32 sampling points which are stored in the memory area assigned with the corresponding block (BL=0) corresponding to the 0th period 0T are read out from the waveform memory 6 in response to the block designation output BL and the accumulated output qF. In this case, the gate 16 is disabled in response to the output from the initial block detector 35, so that the initial waveform data ID of the respective sampling points pass through the adder 9 and are supplied as the musical tone waveform data MD to the sound system 12. Therefore, the tone having a tone color corresponding to the portion of the musical tone waveform MW (FIG. 5B) of the 0th period 0T is generated.

When data access in the 0th block (BL=0) for 32 sampling points is completed, the accumulated output qF changes from "11111" to "00000". In this case, the clock signal CA is supplied to the block counter 26 through the gate 27, so that the content of the block designation output BL designates the first block (BL=1). The memory area for the difference waveform data DD1 (FIG. 5C) of the block corresponding to the first period 1T is designated in the waveform memory 6. The difference waveform data DD1 of 32 sampling points are sequentially read out in response to the accumulated outputs qF. Therefore, the difference waveform data DD1 of the respective sampling points in the first period 1T are sequentially supplied from the waveform memory 6 to the adder 9. In this case, the initial block detector 35 does not detect the initial block, so that the gate 16 is enabled. Therefore, the musical tone waveform data MD (i.e., initial waveform data ID) stored in the corresponding shift registers among the shift registers 221 to 22Q of the one period delay circuit 15 are supplied as the delayed musical tone waveform data MD* (second addition input) to the adder 9 during the 0th period 0T. The adder 9 adds the differential waveform data DD1 of the first period 1T to the initial data ID of the 0th period 0T at the respective sampling points. As a result, the musical tone waveform data MD changing in the respective sampling points in the same manner as the portion of the musical tone waveform MW (FIG. 5B) in the first period 1T is generated.

When the data readout operation of the second block is completed, the accumulated output qF changes again from "11111" to "00000". The block counter 26 is started to generate the block designation output BL which designates the second block. In this case, the memory area for storing the difference waveform data DD2 of the second period 2T corresponding to the second block (FIG. 5C) is accessed in the waveform memory 6. The difference waveform data of the second period 2T are sequentially read out in units of sampling points in the same manner as in the first period 1T. The readout data are supplied to the adder 9 and are added with the delayed musical tone waveform data MD* from the one period delay circuit 15 in units of sampling points. The musical tone waveform data MD at the respective sampling points during the second period 2T are sequentially generated from the adder 9.

Every time the accumulated output qF from the accumulator 5 changes from "11111" to "00000" after the one-period (32 sampling points) designation is completed, the block counter 26 sequentially designates the following block. In this manner, all the difference waveform data DD at the respective sampling points during the corresponding period in the corresponding block are read out from the waveform memory 6. In this case, the difference waveform data DD at the sampling points during the given period are added by the adder 9 to the delayed musical tone waveform data MD* as the musical tone waveform data MD at the corresponding sampling points during the immediately preceding period, thereby calculating the musical waveform data MD of the respective sampling point of the given period. The resultant musical waveform data MD are supplied to the sound system 12 and the one period delay circuit 15. Therefore, the musical tone waveform of the successive periods can be produced.

When the block counter 26 completes the final block designation and is about to designate the next block (in practice, this block does not exist), the EOB detector 28 detects the EOB, so that the gates 27 and 8 are disabled. Therefore, the block counter 26 stops counting after the EOB designation is completed, and the adder 9 generates as the musical tone waveform data MD the delayed musical tone waveform data MD* from the one period delay circuit 15. As a result, the musical tone waveform data MD obtained from the adder 9 in the period corresponding to the EOB is repeatedly supplied to the sound system 12.

When the key is continuously depressed for a period of time longer than the periods of the waveform data which are stored in the waveform memory 6, the tone corresponding to the musical tone waveform data MD of the EOB can be repeatedly produced at the sound system 12.

According to the arrangement shown in FIG. 2, the waveform from the 0th period 0T to the final period of the musical tone waveform MW to be produced can be accurately produced. Only the waveform data of the 0th period 0T among the waveform data stored in the waveform memory 6 requires a larger number of bits. Only the difference waveform data (FIG. 5C) and the sampled values of the immediately preceding period are required for the subsequent periods. Therefore, the waveform memory can have a smaller capacity. In addition, in comparison with the conventional sample difference storage system (described in the Background of the Invention) for storing the waveform data of the 0th period 0T in the waveform memory, the memory capacity of this embodiment is greatly decreased. Thus, without impairing the sampled information obtained by sampling the waveform of a tone produced by a conventional musical instrument, the waveform memory can have a small capacity. Therefore, highly precise tones resembling the tones produced from a conventional musical instrument can be produced.

Second Embodiment

FIG. 6 shows a second embodiment of a musical tone producing device according to the present invention. In this embodiment, the musical tone waveform MW from the beginning to the end shown in FIG. 7 are divided into a plurality of frames 0F, 1F, . . . each of which consists of a plurality of periods. The musical tone waveform MW changes in units of frames. Within a given frame, a waveform of one period is repeatedly produced, thereby further decreasing the capacity of the waveform memory.

In this second embodiment, the musical tone producing device is applied to a monophonic tone electronic musical instrument. When a player depresses one of the