In the art of synthesizing signals, three distinguishable techniques have been used: direct synthesis, indirect synthesis, and numerical synthesis.
In the technique of direct synthesis, the desired signal is produced directly from an oscillator. In synthesizing a wide frequency range, this technique becomes extremely complex and costly. Hence this technique is not widely used for wide frequency ranges.
In indirect synthesis, phase lock loops with programmable frequency dividers are commonly used to synthesize the desired frequencies. This technique is by far the most widely used at present both in commercial products and in dedicated applications. The method owes its popularity in large part to the advent of inexpensive programmable frequency dividers in integrated circuit form. The result has been a substantial reduction in complexity, especially in comparison with direct synthesis.
However, neither the direct synthesis nor the indirect synthesis technique in the prior art allows for phase-continuous switching of the carrier signal when the desired synthesizer signal is modulated. Furthermore, both techniques require extensive analog components which are subject to drift and malfunction through aging, temperature effects, and the like.
Numerical synthesis with digital techniques is useful for avoiding the above problems. FIG. 1 depicts a block diagram of a typical digital numerical synthesizer known in the prior art. Basically, numerical synthesis consists of generating a stream of points representing a desired signal by using digital logic circuits in a digital waveform engine 100. This numerical data stream is converted into the actual desired signal by means of a K-bit digital-to-analog converter (DAC) 200. The DAC output is passed through a low-pass filter (LPF) 300 to remove the frequency components from the sampling clock and then amplified by an amplifier 400. An example of such a system for synthesizing signals in the prior art is described in U.S. Pat. No. 3,928,813.
FIG. 2 and FIG. 3 show two general methods to implement the digital waveform engine block of a typical digital synthesizer.
The first general method, as depicted in FIG. 2, is an accumulator-based synthesizer. This method generates a carrier frequency with frequency modulation (FM) through accumulating instantaneous phase increments. The carrier frequency is combined with user-defined amplitude modulation (AM) and phase modulation (PM) signals. Memory address sequencers 20 and 200 serve as address sources for modulation waveform in Random Access Memories (RAM) 30 and 300. The address increments from a start-to-stop address while looking up stored modulation data that spans the address space. Both AM and PM waveform data are completely user-defined and loaded into the modulation RAMs as needed. A multiplexer (MUX) 40 selects either the digital signal from the PM waveform RAM 30 or an external input 2 to supply the phase for phase modulation. Similarly, a parallel MUX 400 culls either the digital signal from an AM waveform RAM 300 or an external input 1 to supply the amplitude for amplitude modulation.
The key component in this type of synthesizer is a clocked phase accumulator 90. Its purpose is to accumulate an instantaneous phase increment or IPI(t). IPI(t) is defined by the equation, EQU IPI(t)=F.sub.i (t)*.DELTA.t*2.pi.
where F.sub.i (t) is the instantaneous frequency of the desired signal and .DELTA.t is the clock signal. The instantaneous frequency represents the continuous frequency and any FM(t) as desired.
A phase adder 50 then combines the phase for phase modulation from MUX 400 with the output of the phase accumulator to provide the total phase of the desired signal. A sine lookup table 70 then transforms the linear phase to a sinusoidal signal, which is multiplied with the amplitude modulation signal by a multiplier 80 giving: EQU Y(t)=AM(t)* Sin (.SIGMA.IPI(t)+PM(t)). (1)
Y(t) is a digital signal comprising a carrier with frequency modulation, amplitude modulation and phase modulation. The digitally sampled data are fed to the DAC and LPF of FIG. 1 to form the desired analog signal. This method provides a useful output bandwidth that is about 40% of the sample clock frequency.
In the above-described accumulator-based synthesizer method, a physical multiplier is needed to create the waveform. For clock rates exceeding 50 MHz, this multiplier becomes difficult to implement. It is also the weak link in the synthesis chain and is often the limiting factor in raising the sample clock rate. As will be seen, it is the purpose of the present invention to eliminate the multiplier and yet achieve amplitude modulation and signal multiplication.
FIG. 3 illustrates the second general method to implement the digital waveform engine block. This method may be classified as an arbitrary waveform synthesis technique. In concept, a user-defined sampled data waveform is stored in a waveform RAM 30, which contains an exact image of the desired output waveform. This RAM is addressed by a sequencer 20, and the data stream from the RAM 30 are fed to a DAC. The useful output bandwidth of this configuration is about 40% of the sample clock frequency.
This method does not need a phase accumulator, a sine lookup table or a multiplier as in the accumulator-based method and is highly suitable for generating waveforms often classified as "arbitrary." However, one advantage of the accumulator-based synthesizer is that it is more suitable to generate a signal with well-defined amplitude and phase modulation waveforms because it is structured with separate inputs for each of the modulation signals. Therefore, the user only has to supply the modulation signals to each of the inputs. On the other hand, for an arbitrary waveform synthesizer, the user has to generate the addresses for the memory address sequencer which controls the outputs of the waveform RAM. The outputs of the waveform RAM are the digital equivalence of the desired signal. All these steps take time and effort, and the result is not as clean and obvious as putting modulation signals into inputs of an accumulator-based synthesizer. Another advantage of an accumulator-based synthesizer is its phase accumulator, which can easily give an instantaneous frequency resolution (typically&lt;&lt;1 Hz) much smaller than that achievable by an arbitrary waveform synthesizer.
The circuit shown in FIG. 4 is an enhancement of the one in FIG. 3. In this improved architecture, a first and a second waveform RAMs, 30 and 300, are combined to form the final signal. From an application standpoint, to compose the desired signal as either the sum or product of two signals is often desirable. U(t) denotes the signal on the output of a first MUX 40 and V(t) denotes the signal on the output of a second MUX 400. If the desired signal is the sum of U(t) and V(t), then a fourth MUX 60 will select U(t)+V(t) to be its output and a third MUX 150 will select unity to be its output. A multiplier 500 will then multiply the signal (U(t)+V(t)) by the unity signal to generate the desired signal, U(t)+V(t). On the other hand, if the desired signal is the product of U(t) and V(t), then the fourth MUX 60 will select U(t) to be its output and the third MUX 150 will select V(t) to be its output. The multiplier 500 will again multiply its input signals together to generate the desired signal U(t)*V(t). As in the method defined by the circuit in FIG. 2, the multiplier is the weak link in the synthesis chain. For clock rates exceeding about 50 Mhz, the multiplier becomes difficult to implement and bandwidth limiting.
The novel technique in accordance with the present invention incorporates adders, subtractors and trigonometric manipulators in place of multipliers in a digital synthesizer. Thus, the invention has removed the bandwidth-limiting and difficult-to-implement component, the multiplier.
The use of addition and subtraction to achieve the effect of trigonometric multiplication in digital music synthesis was reported by Mr. S. Saunders in the article entitled "Real-time FM Digital Music Synthesis," Proceedings Music Computation Conf., Urbana, IL (November 1975) and by H. G. Alles in the article entitled "Music Synthesis Using Real Time Digital Techniques," Proceedings of the IEEE, Vol. 68, No. 4 (April 1980). The basic idea is shown in the following equation: EQU Sin (x+d)+Sin (x-d)=2 Cos d Sin x
Alles and Saunders apply the idea of a trigonometric identity to spectral modulation and control of the loudness of digital music in the area of acoustics. The present invention, in contrast, applies the idea of a trigonometric identity to generating arbitrary waveforms. The two parallel ideas have significant differences. For example, Saunders fetches serially the two sinusoidal signals for addition in the above equation, whereas the present invention fetches both signals in parallel. Alles and Saunders describe the combination of sinusoidally varying signals for synthesizing digital music, whereas the present invention teaches combining random waveforms. Other differences will be shown by the following description of the present invention.