Description:
BACKGROUND OF THE INVENTION
In U. S. Pat. No. 3,515,792, entitled "Digital Organ," by Ralph Deutsch, one of the co-inventors of the present invention, there is disclosed a digital electronic organ wherein a digital representation of an organ pipe waveshape is stored in a memory. By selectively addressing the memory, the stored digitized waveshape is read out repetitiously at a desired frequency, and converted to an analog waveshape to produce a musical note corresponding to an organ pipe waveshape. The digital representations of the waveshape are taken from sample points along one complete cycle of the organ pipe waveshape. In other words, if there are n sample points making up the entire wave period, there is required to be at least n storage points in the memory in order to reproduce the original waveshape with a sufficient resolution such that the ear does not notice the difference between the played reproduced note and the original desired note.
Analysis of the desired organ pipe waveshapes indicates that a waveshape can be created which waveshape will have an even or odd symmetry. The created waveshape is derived with the same power spectral components as the original waveshape. In so creating this new waveshape, the relative phases of the harmonic components of the original waveshape are changed. The human ear is insensitive to the change in phases as long as the power spectral content of the formed wave remains the same.
SUMMARY OF THE INVENTION
The present invention includes a memory means for storing equally spaced samples of one-half cycle of a symmetrical waveform. The memory is addressed and read out such that the waveform is recreated by reading the memory in one direction up to the halfway point of the desired wave period and then reading the memory in the opposite direction so that the second half of the wave is completed. Prior to storage, the original waveshape corresponding to the desired voice is analyzed spectrally and, by taking the Fourier transformation of the spectral power content of the desired wave, a symmetrical waveform can be created, which recreated wave will differ only from the original wave by the phase relations of the harmonics. Means are provided for addressing the memory first in one direction then in an opposite direction. Readout means connected to the output of the memory receive the addressed outputs of the memory and change the sign of the outputs when the memory is addressed in the opposite direction if the symmetrical wave has an odd symmetry. If the wave is of even symmetry, the change in sign is not required.
Accordingly, it is a principal object of the present invention to provide a system for storing samples of one-half cycle of a desired symmetrical waveshape and for reading out the stored samples of the waveshape so as to create a full cycle of the waveshape.
It is a further object of the present invention to provide a means for decreasing by half the storage requirements of a memory.
It is a further object of the present invention to provide an improved method and apparatus for storing and reading out waveforms.
These and other objects of the present invention will become more apparent when taken in conjunction with the following description and drawings wherein like characters indicate like components and which drawings form a part of this application.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a waveform of a musical instrument;
FIG. 2 is a graph depicting the harmonic content of the waveform of FIG. 1;
FIG. 3 is a graph illustrating a symmetrical waveform having the identical harmonic content as the waveform of FIG. 1;
FIG. 4 illustrates in block diagram form one preferred embodiment of the invention;
FIG. 5 illustrates in block diagram form a second preferred embodiment of the invention; and
FIG. 6 is a waveform useful in showing the spacing relationship for an odd-symmetry amplitude system in which the number of samples for each half cycle are made equal.
DESCRIPTION OF THE PREFERRED EMBODIMENT
The present invention may be used to effectively store any periodic type waveform of zero D.C. value which waveform is later to be used to power an audio device. Using the method and system of the present invention, the listener will be unable to distinguish between the true waveshape and the recreated waveshape.
In FIG. 1 there is shown, by way of example, the original periodic waveshape of an oboe. Using the Fourier series theory, any periodic waveform can be analyzed as a series of harmonics of the repetition frequency. The signal will have varying amplitude and phases, the exact variations depending upon the shape of the waveform. For example, the oboe signal of FIG. 1, designated X(t) can be written in a Fourier series as follows: ##SPC1##
where the term B o is a d-c term which is defined as follows, and for our case, ideally is zero: ##SPC2##
The period of the wave is defined as T; and B n and A n are defined as: ##SPC3##
wherein ω = 2π/T
The cosine terms of Equation (1) define the even terms and the sine terms define the odd terms
The spectral power components P x (n) of X(t) for the n th harmonic are defined by the formula:
P x (n) = A n 2 + B n 2 Eq. (5)
Equation (5), in combination with equation (1), can then be used to create an odd or even symmetry waveform which has the same spectral power content as the original waveform.
The created waveform will be designated X' e (t) where the e denotes the waveform has an even symmetry and where X' e (t) is defined as: ##SPC4##
wherein α n =√P x (n)
FIG. 2 illustrates the spectral power content of the waveform X(t) defined by equation (5).
FIG. 3 illustrates the equivalent created waveform X' e (t) having the same power spectrum as depicted in FIG. 2.
The waveform X' e (t) is symmetrical around the one-half cycle point, and to the human ear will sound identical to the waveform X(t). The phase difference between these two waveforms cannot be detected by the human ear. Once the particular waveform of FIG. 3 is generated, it is converted into sample amplitude signals. Each amplitude sample can then be converted into a digital word or analog quantity. The word or quantity is then stored in a waveshape memory.
FIG. 4 illustrates one preferred embodiment of the invention for implementing the above equations in digital form wherein the waveshape memory 10 may be a read only memory of the type disclosed by R. M. Ashby et al. in U. S. Pat. No. 3,377,513, issued Apr. 9, 1968. The memory should have a capacity for storing at least N/2 words, where the value N is the number of sample points in one complete cycle of a waveform. The memory contains digital data in a plurality of discrete locations identified by respective addresses. The memory is addressed at a rate which depends upon the desired spacing between data from the various locations as it is sequentially read from the memory. The data constitutes amplitude values of a complex waveform of the type produced by a musical instrument at equally spaced points in time along an axis of the waveform. The memory can be of the analog type or the type which produces the desired word or quantity without actually storing the word or quantity. It is only necessary that the representation of the sampled amplitude be available for readout. The memory 10 is connected to be addressed from counter 12. Counter 12 provides an output signal sequentially on N/2 lines. When a count is provided on line 2, for example, no other line is providing an output signal. Each individual address of the waveshape memory is connected to a corresponding output of the memory address counter such that count 1 of the counter goes to address 1 of the waveshape memory; count 2 goes to address 2; count 3 goes to address 3 etc. . . up to the N/2 count going to waveshape memory address N/2. In some applications, it may be desirable to install an address decoder between the outputs of the counter 10 and the address locations of the memory. The mechanization and connection of the decoder is well known within the state of the art and is not shown for simplicity. The next output corresponding to the count (N/2)+1 from the memory address counter is connected back to the N/2 line from the counter so that the next count N/2+ 1 repeats the address of the last count. Each of the succeeding lines (N/2)+ 1 to N is connected back to the preceding address lines (N/2)-1 to 1, respectively, in a symmetrical manner such that the N th line is connected to the first counter address line etc. . . This particular feature addresses the waveshape memory in a first direction from locations 1 to N/2 and then back again from N/2 to 1 in an opposite direction. An input line 18 is connected to the counter 12 and on this line there is provided a pulse train 19 of a selected frequency. Each pulse in pulse train 19 advances the memory address one count. Therefore, by controlling the number of pulses per given unit of time, i.e., the pulse repetition rate, the rate at which the memory is scanned can be varied which, in turn, varies the frequency of the readout waveform. The waveform stored in the memory can thus be read out at a cyclic repetition rate determined by different notes of the musical scale simply by having a key, such as an organ key, actuate a source of pulses of a respectively corresponding repetition rate which are then fed to the memory address counter 12. A flip-flop 13 receives as inputs the 1 count signal from counter 12, on line 22, and the (N/2)+1 count on line 23 from memory address counter 12. The flip-flop 13 has one output line 20 connected to the on terminal of gate 14 and to the off terminal of gate 15.
Flip-flop 25 receives as inputs the 1 count and the (N/2)+1 count from the memory address counter. Flip-flop 25 has one output line 21 connected to the on terminal of gate 15 and to the off terminal of gate 14. In operation, when a pulse is received on the 1 count stage of memory address 12, that pulse is also fed on line 22 to set flip-flop 13, the output of which is then fed along line 20 to turn gate 14 on so as to pass the signals present at the outputs of waveshape memory 10. Simultaneously, gate 15 is turned off. The output digital word, upon passing through gate 14 is fed to an OR gate 17. When the N/2+1 count pulse is sent to flip-flop 25, flip-flop 25 provides an output signal on line 21 which output signal turns gate 15 on and gate 14 off.
The output signals from gate 15 are fed to a 2's complementor 16 which effectively applies a negative polarity to the signals on its input. The output of complementor 16 is then fed to the OR gate 17. The output of OR gate 17 is fed to a utilization means 30. In one preferred embodiment, the utilization means comprises a D to A convertor and a means for creating sounds from the analog signals. The system of FIG. 4 operates to read out one-half of the symmetrical waveform in accordance with the stored samples in locations 1 to N/2 and to then apply a negative polarity to the sample signals that are read out from locations N/2 to 1, such that the output of the system is the total wave comprised of its two symmetrical halves. The frequency of the read out wave can be varied simply by varying the pulse repetition rate of the pulse train 19.
If the waveshape stored in memory 10 is of even symmetry, then flip-flops 13 and 25, gates 14 and 15 and complementor 16, along with OR gate 17 are omitted from the system. For an even symmetrical waveform, it is not necessary to reverse the polarity of the second half cycle of the wave. It is only necessary that the memory be read in the first direction and then in a second direction opposite to the first one.
Referring now to FIG. 5 wherein there is shown a second embodiment of the invention utilizing an up-down counter 35 of the type which counts from 1 sequentially through to a value N/2 and then counts down again sequentially to the value 1 without repeating the 1 or N/2 count. The rate at which the counter counts is determined by an input command signal 19. The input command signal 19, which is a train of pulses, is fed into the up-down counter on line 18. Each count stage of the counter is connected to a corresponding address location within the waveshape memory 10, so that when, for example, an output appears on the line designated 1 at the counter output and the waveshape memory input, the digital word stored in the memory at that particular location is made available at the output of the memory. This digital word is then fed to gates 14 and 15. Gate 14 is turned on by the presence of a count on stage 1 of counter 35 and gate 15 is turned off by the same count. Gate 15 is turned on by the count on stage N/2 of counter 35 and gate 14 is turned off by the same count. When gate 14 is on, the output word from memory 10 is fed directly to the OR gate 17 and from there to the utilization means 30. When gate 15 is on, the output word from memory 10 is fed to the complementor 16 which inverts the polarity of the word before feeding it to the utilization means 30.
FIG. 6 illustrates one possible waveform 40 having an odd-symmetry. If the memory address counters 12 and 35 used in the implementation of this invention are of the type that do not repeat the count in the first and last atages before starting the up or down count, respectively, then the sampling displayed by the integer numbers can be used. At each sample point, the amplitude of the waveform, as shown in dotted lines, is converted into a digital word and stored in the memory. The reason for this can be clearly shown around the zero transition point of the wave at the twelfth sampling point; for example, the memory is addressed for the amplitude sample 11, next sample 12. If the counter were of the type that started down counting by repeating the last stage count, then the next address would again read out sample 12. Two sample 12's would create an error in the output waveform, therefore, the next sample must be equal to the sample 11 but reversed in sign.
If we take the condition where the counters used to address repeat the count for the first and last stages, respectively, then the fractional sample points (solid lines) are used. The solid line samples are symmetrical about the point of symmetry (in this case, point 12). Repeating of the first and last count, therefore, does not create any errors in the output waveform.
The important property of using odd symmetry with sign reversal is that the average value of the waveshape is automatically maintained accurately at a zero value. This property of maintaining a zero average value is absolutely essential in a musical instrument system in which the amplitude increments are stored rather than the amplitudes themselves. A simple example will illustrate the problem. Suppose the waveshape amplitudes for one period are the values C 1 , . . .,C n. For illustrative convenience let us assume that either C 1 = 0 or the amplitudes have been scaled so that this condition has been met. The corresponding amplitude increments are
α 1 = C 2 - C 1 = C 2
α 2 = c 3 - c 2
α j = C j +1 - C j ; j ≠ n
α n = C 1 - C n = -C n
By adding each increment as it is read to the sum of the preceding increments, one obtains the wave shape amplitude for that point. Note that
α 1 = C 2
α 1 + α 2 = C 2 + C 3 - C 2 = C 3
α 1 + α 2 +α 3 = c 4 ##SPC5##
the sensitive observation is that in an amplitude increment system the sum of the increments must be zero. Suppose because of some error (accidental, computer roundoff, etc) that the sum of the increments does not vanish but instead is equal to some nonzero value β. Each time the wave shape is reconstructed from the increments a new multiple of β will be added to the average value. This accumulation of the average value is disastrous in a digital organ system because it will gradually shift the waveshape variations beyond the dynamic range of the digital-to-analog converter.
If odd wave shape symmetry is used to store one-half of the wave shape, the problem of an accumulating average value is eliminated. Each incremental amplitude is read twice per period each time with opposite signs. Any errors are thus automatically inhibited from disturbing the desired zero average value.
While there has been shown what is considered to be the preferred embodiment of the invention, it will be manifest that many changes and modifictions may be made therein without departing from the essential spirit of the invention. It is intended, therefore, in the annexed claims, to cover all such changes and modifications as fall within the true scope of the invention.