Frequency-multiplying direct digital synthesizer
10763873 ยท 2020-09-01
Assignee
Inventors
Cpc classification
H03L7/24
ELECTRICITY
G06F1/0328
PHYSICS
International classification
H03L7/24
ELECTRICITY
Abstract
A frequency-multiplying DDS includes a digital multiplier, a phase accumulator, a post-accumulator digital processing section, and a digital-to-analog converter (DAC). The digital multiplier multiplies a digital tuning word of value M by a digital multiplier of value B, to produce a digital product (MB), and the n-bit accumulator accumulates by a step size of the digital product (MB), at a rate of a low-speed reference clock of frequency f.sub.CLK/B. The post-accumulator digital processing section synthesizes B digital waveforms from the sequence of n-bit accumulator output numbers produced by the n-bit accumulator, and rotates each digital waveform with respect to each adjacent digital waveform by (M/2.sup.n)2 radians. The DAC serializes the digital samples of the B digital waveforms at full speed, i.e., at a rate f.sub.CLK, to produce a full-speed serialized digital output having 2.sup.n/M samples per cycle, and converts the full-speed serialized digital output to a final output analog waveform of frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
Claims
1. A direct digital synthesizer (DDS), comprising: a digital multiplier configured to multiply a digital tuning word of value M by a digital multiplier of value B and produce a digital product (MB); an n-bit accumulator configured to accumulate by a step size of the digital product (MB), at a rate of a reference clock of frequency f.sub.CLK/B; and a post-accumulator digital processing section including a plurality of branches configured to synthesize a plurality of digital waveforms from a sequence of n-bit accumulator output numbers produced by the n-bit accumulator.
2. The DDS of claim 1, wherein the plurality of branches includes B branches, and the post-accumulator digital processing section synthesizes B digital waveforms.
3. The DDS of claim 2, wherein the post-accumulator digital processing section is configured to rotate each synthesized digital waveform with respect to an adjacent digital waveform by (M/2.sup.n)2 radians.
4. The DDS of claim 1, further comprising: a serializer configured to serialize digital samples of the plurality of digital waveforms and produce an output digital waveform; and a digital-to-analog converter (DAC) configured to convert the output digital waveform to a final output analog waveform.
5. The DDS of claim 4, wherein the serializer is configured to serialize the digital samples of the plurality of digital waveforms at a rate f.sub.CLK, the output digital waveform produced by the serializer has 2.sup.n/M samples per cycle, and the final output analog waveform has a frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
6. The DDS of claim 4, wherein the serializer and DAC together comprise a single interleaved radio frequency DAC (RF-DAC).
7. The DDS of claim 1, further comprising: a plurality of digital-to-analog converters (DACs) configured to convert the plurality of digital waveforms to a plurality of analog waveforms; and a serializer that samples the plurality of analog waveforms to produce a final output analog waveform.
8. The DDS of claim 7, wherein the serializer samples the plurality of analog waveforms at a rate f.sub.CLK, and the final output analog waveform has a frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
9. The DDS of claim 1, wherein the plurality of branches of the post-accumulator digital processing section comprise: a zero-offset digital adder in a first branch configured to add, on each cycle of the reference clock, each n-bit number from the sequence of n-bit accumulator output numbers produced by the n-bit accumulator to an n-bit digital word of value zero; and one or more step-offset digital adders, each of the one or more step-offset digital adders configured to add, on each cycle of the reference clock, each n-bit number from the sequence of n-bit accumulator output numbers produced by the n-bit accumulator to an n-bit digital word that is an integer multiple of the tuning word.
10. The DDS of claim 9, wherein: the plurality of the of the post-accumulator digital processing section branches includes B branches that synthesize B waveforms; the one or more step-offset digital adders includes (B1) branches; a first digital sum produced by a first step-offset adder in a first one of the (B1) branches is a first digital number representing a first phase; and a second digital sum produced by a second step-offset adder in a second one of the (B1) branches adjacent the first one of the (B1) branches is a second digital number representing a second phase that is offset from the first phase by (M/2.sup.n)2 radians.
11. The DDS of claim 10, wherein the B branches of the post-accumulator digital processing section comprises a plurality of phase-to-amplitude (-to-p) converters configured to convert a plurality of sequences of digital sums produced by the zero-offset and step-offset digital adders to the B digital waveforms.
12. The DDS of claim 6, wherein the B branches of the post-accumulator digital processing section further comprise B digital-to-analog converters (DACs) configured to convert the B digital waveforms to B analog waveforms.
13. The DDS of claim 12, further comprising a serializer that samples and serializes the B analog waveforms to produce a final output analog waveform.
14. The DDS of claim 13, wherein the serializer samples the B analog waveforms at a rate f.sub.CLK, and the final output analog waveform has a frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
15. The DDS of claim 1, wherein the n-bit accumulator comprises an n-bit pipelined accumulator.
16. A method of synthesizing a periodic waveform, comprising: multiplying a digital tuning word of value M by a digital multiplier of value B to produce a digital product MB; accumulating an n-bit digital number by a step size of the digital product (MB), at a rate of a slow-speed reference clock of frequency f.sub.CLK/B, to produce a sequence of n-bit accumulator output numbers; generating a first digital waveform from the sequence of n-bit accumulator output numbers; adding the digital tuning word M to each n-bit number in the sequence of n-bit accumulator output numbers to produce a modified sequence of n-bit accumulator output numbers; and while the first digital waveform is being generated, generating a second digital waveform from the modified sequence of n-bit accumulator output numbers, the second digital waveform leading the first digital waveform by (M/2.sup.n)2 radians.
17. The method of claim 16, further comprising: serializing samples of the first and second digital waveforms to produce a full-speed serialized digital waveform; and converting the full-speed serialized digital waveform to a final output analog waveform.
18. The method of claim 17, wherein the samples of the first and second digital waveforms are serialized at a rate of a full-speed reference clock of frequency f.sub.CLK, the full-speed serialized digital waveform has 2.sup.n/M samples per cycle, and the final output analog waveform has a frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
19. The method of claim 16, further comprising: converting the first digital waveform to a first analog waveform; converting the second digital waveform to a second analog waveform; and sampling and serializing the first and second analog waveforms, to produce a final output analog waveform.
20. The method of claim 19, wherein the first and second analog waveforms are sampled and serialized at a rate of a full-speed reference clock f.sub.CLK, and the final output analog waveform has a frequency f.sub.OUT=(M/2.sup.n)f.sub.CLK.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
DETAILED DESCRIPTION
(11) Referring to
(12) The post-accumulator digital processing section 306, which is also clocked at f.sub.CLK/B=f.sub.CLK/2, includes two branches within which two waveforms (e.g., sinusoids) are synthesized. The first branch includes an n-bit zero-offset adder 314; a first phase-to-amplitude (-to-p) converter 316; and a first digital-to-analog converter (DAC) 318, and the second branch includes an n-bit step-offset adder 320; a second -to-p converter 322; and a second DAC 324. The output of the accumulator 304 is fed to both branches of the post-accumulator digital processing section 306, specifically, to the zero-offset adder 314 in the first branch and the step-offset adder 320 in the second branch. Accordingly, each n-bit output of the accumulator 304 serves as the augend to both the zero-offset adder 314 and the step-offset adder 320. Whereas the augends to the zero-offset adder 314 and the step-offset adder 320 are the same, the addends are not. In particular, the addend to the zero-offset adder 314 is zero and the addend to the step-offset adder 320 is the tuning word M. In terms of phase, the output of the step-offset adder 320 thus leads the output of the zero-offset adder 314 by (M/2.sup.n)2 radians, or, in terms of time, by t=(M/2.sup.n)/f.sub.OUT seconds. This can be more readily visualized by referring to the phase wheel in
(13) The two sequences of summed samples produced at the outputs of the zero-offset and step-offset adders 314 and 320 are directed to the inputs of the first and second -to-p converters 316 and 322. In one embodiment of the invention the first and second -to-p converters 316 and 322 comprise first and second look-up table (LUT) stored in a read-only memory (ROM), and the sequences of summed samples produced at the outputs of the step-offset and zero-offset adders 314 and 320 are used to address the LUTs to determine the appropriate magnitude p (e.g., voltage or current magnitude) to be assigned for each input sample. The left-most timing diagrams in
(14) It should be mentioned that although the -to-p converters in the exemplary embodiments disclosed herein are described and illustrated as being configured to produce sinusoidal waveforms, they and the DDSs can be alternatively configured to produce other types of waveforms (e.g., square, triangular etc.), as will be appreciated by those of ordinary skill in the art. It should also be mentioned that although multiple -to-p converters (two in the exemplary DDS 300 depicted in
(15) The middle timing diagram in
(16) One significant advantage the DDS 300 has over the prior art DDS 100 is that the DDS 300 can produce an output OUT having the same output frequency f.sub.OUT and same frequency tuning resolution as the prior art DDS 100 but while clocking the accumulator 304 at only half the reference clock frequency, i.e., f.sub.CLK/2. The post-accumulator digital processing section 306 also operates at half-speed. In fact, the only component of the DDS 300 that operates at full speed (f.sub.CLK) is the serializer 308 (or the interleaved DAC, if it is used, instead). Viewed another way, for the same accumulator width n and same tuning word M, when the accumulator 304 is configured to accumulate at the same rate as the accumulator 102 in the prior art DDS 100, i.e., at a reference clock frequency f.sub.REF=f.sub.CLK/B=f.sub.CLK/2, the DDS 300 synthesizes an output waveform having a frequency f.sub.OUT that is two times (i.e., double) the output frequency of the prior art DDS 100. Accordingly, when viewed from this perspective, the DDS 300 may be aptly referred to as a frequency-doubling or frequency-multiplying DDS 300.
(17) The frequency-multiplying attribute of the present invention is not limited to a DDS having a multiplier of B=2.
(18)
(19) From the foregoing description it should be clear that the output frequency f.sub.OUT of the DDSs 300 and 600 can be increased not only by increasing the value of the multiplier B but also by increasing the value of f.sub.CLK. There is, however, a fundamental limit on how fast the accumulators 304 and 602 can accumulate and, consequently, how fast their reference clocks can be. This limit can be more readily understood by referring to
(20) To mitigate this problem, in one embodiment of the invention, instead of employing an accumulator 900 like that depicted in
(21) By using a pipelined accumulator, the maximum possible reference clock frequency f.sub.CLK(max) and, consequently, the maximum output frequency f.sub.OUT(max) can be increased above that which is possible using a non-pipelined accumulator, albeit at the expense of increased latency. A similar pipelining approach can be used for the n-bit adders in the post-accumulator digital processing sections 306 and 604 of the DDSs 300 and 600. For example, with respect to the DDS 300 described above in reference to
(22) While various embodiments of the present invention have been described, they have been presented by way of example and not limitation. Persons skilled in the relevant art will appreciate and understand that various changes in form and detail may be made to the exemplary embodiments of the invention, as presented, without departing from the true spirit and scope of the invention. Accordingly, the scope of the invention should not be limited by the specifics of the exemplary embodiments but, instead, should be determined by the appended claims, including the full scope of equivalents to which such claims are entitled.