Skip to content
View in the app

A better way to browse. Learn more.

TEST SITE

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Direct Digital Synthesis

Direct digital synthesis — DDS — is one of the most elegant ideas in modern radio electronics. Instead of building an analog oscillator and fighting its tendency to drift, or building a PLL and wrestling with loop dynamics, DDS generates a waveform entirely in the digital domain and then converts it to an analog signal. The result is a signal source with sub-hertz frequency resolution, instantaneous frequency switching, programmable phase, excellent stability derived from a crystal clock, and remarkable flexibility — all from a single compact IC.

DDS appears in equipment ranging from hobby modules costing a few dollars to military frequency-hopping radios. Every modern function and arbitrary waveform generator is built around it, and chips such as the AD9833, AD9850 and AD9951 from Analog Devices have powered countless signal generators, sensor exciters and radio projects. Understanding DDS at the circuit and mathematical level will let you design, troubleshoot and evaluate any equipment that uses it.

What you will learn: How DDS generates frequency from a digital phase accumulator and lookup table; the DDS output frequency formula (Fout = FTW × Fclk / 2N); frequency resolution, spurious-free dynamic range, the Nyquist limit, and filtering requirements; and DDS applications in signal generators, sensors and communications equipment.

The Core Concept: Counting Through a Circle

Imagine a circle representing one complete cycle of a sine wave — 360 degrees of phase, from 0° to 360°. A pointer rotates around this circle at a constant angular velocity. Every time the pointer completes a full revolution, one cycle of the sine wave is generated. The sine wave amplitude at any moment is the sine of the current pointer angle. If the pointer spins once per second, the output frequency is 1 Hz. If it spins 14 million times per second, the output is 14 MHz.

Now replace the continuously rotating pointer with a digital counter. At every clock tick, the counter advances by a fixed step size called the phase increment (also called the frequency tuning word). When the counter overflows — counting past its maximum value and wrapping back to zero — that represents one complete revolution of the circle, one complete cycle of the output sine wave.

The output frequency depends on two things: how fast the counter ticks (the clock frequency) and how far it advances with each tick (the phase increment). A large phase increment means the counter wraps around quickly — high output frequency. A small phase increment means it wraps slowly — low output frequency. This is the entire conceptual basis of DDS.

DDS Architecture: Three Essential Blocks

Direct digital synthesis block diagram showing phase accumulator, sine lookup table, DAC, and reconstruction low-pass filter

DDS architecture: the frequency tuning word programs the phase increment added to the phase accumulator on each clock cycle. The accumulator output addresses a sine lookup table (ROM), whose output drives a DAC. The analog DAC output passes through a low-pass reconstruction filter to remove clock artifacts and produce a clean sine wave.

View Larger

Every DDS system has three essential blocks between the crystal clock input and the analog output.

1. Phase Accumulator

The phase accumulator is an N-bit binary counter. At every rising edge of the clock, it adds the frequency tuning word (FTW) to its current value. When the accumulated value exceeds 2N, the counter overflows and wraps back to zero. This overflow represents one complete cycle of the output waveform.

The most significant bits of the accumulator output are used to address the lookup table. If the accumulator is 32 bits wide but the lookup table has only 12-bit addressing, the top 12 bits of the accumulator select the table entry. The bottom 20 bits are simply discarded — they provide sub-cycle frequency resolution below the lookup table granularity.

2. Sine Lookup Table (Phase-to-Amplitude Converter)

The lookup table (implemented as ROM inside the DDS IC) maps each phase value to the corresponding sine wave amplitude. For a 12-bit addressed table with 4,096 entries, each entry stores the 14-bit or 16-bit digital value representing sin(2π × address / 4096). When the accumulator outputs address 0, the table outputs 0 (sin 0° = 0). At address 1024, the table outputs its maximum positive value (sin 90° = 1). At 2048, it outputs 0 again (sin 180°). At 3072, it outputs its maximum negative value (sin 270° = −1).

The table is typically stored in ROM and is implemented very efficiently in silicon. It only needs to store one quadrant (0° to 90°) using symmetry — the other three quadrants are generated by sign inversions.

3. Digital-to-Analog Converter (DAC)

The DAC converts the digital amplitude values from the lookup table to an analog voltage or current. Its output is a staircase waveform — the sine wave sampled at the clock rate, with sharp transitions between each sample. After the DAC comes the reconstruction filter (a low-pass filter) that smooths these staircase steps into a continuous sine wave.

The Phase Accumulator in Detail

Consider a 32-bit phase accumulator with clock frequency Fclk. The accumulator counts from 0 to 232 − 1 = 4,294,967,295. If the frequency tuning word (FTW) is 1, the accumulator advances by 1 per clock cycle. It takes 4,294,967,296 clock cycles to overflow and complete one output cycle. With a 1 GHz clock, the output frequency would be 1,000,000,000 / 4,294,967,296 ≈ 0.233 Hz. That is the minimum frequency step (frequency resolution) for this system.

If the FTW is set to 429,497 (approximately 232 / 10,000), the accumulator overflows approximately 10,000 times per second for every gigahertz of clock frequency — actually, it overflows at exactly 429,497 / 4,294,967,296 × Fclk Hz, which is about 0.0001 × Fclk.

The general formula for the output frequency is derived directly from this counting process:

DDS Output Frequency Formula:

Fout = FTW × Fclk / 2N

Where:
Fout = output frequency (Hz)
FTW = frequency tuning word (integer, 0 to 2N−1)
Fclk = clock frequency (Hz)
N = accumulator bit width (typically 24 to 48 bits)

Solving for FTW:
FTW = Fout × 2N / Fclk

The DDS Frequency Formula

Let us examine this formula carefully because it reveals everything important about DDS behavior.

Fout ∝ FTW: Output frequency is directly proportional to the tuning word. Double the FTW, double the frequency. This makes DDS extremely easy to program — no loop dynamics, no lock time, no analog tuning voltage. Just write a number and the frequency changes instantly.

Fout ∝ Fclk: If the clock changes, all output frequencies change by the same ratio. If the clock drifts by 1 ppm, the output drifts by 1 ppm at all frequencies. The DDS output is exactly as stable as its clock — no more, no less.

Fout ∝ 1/2N: A wider accumulator gives finer frequency steps. Doubling N (adding one bit) halves the minimum frequency step without changing the clock or tuning word.

Maximum output frequency: Limited by the Nyquist theorem to Fclk/2. In practice, the reconstruction filter rolls off before Nyquist, so the usable output range is typically below 40% of Fclk to maintain good spurious-free performance.

DDS Output Frequency Calculator

DDS Output Frequency Calculator

Calculate the DDS output frequency from the frequency tuning word, clock frequency, and accumulator bit width. Also calculates frequency resolution and maximum usable frequency. Use this to set up AD9850, AD9851, AD9951 or any DDS IC.

Enter the tuning word, clock frequency, and accumulator bit width, then click Calculate.

Worked Examples

Example 1: AD9850 DDS IC — calculate FTW for 7.074 MHz

The AD9850 has a 32-bit phase accumulator (N = 32) and is commonly clocked at 125 MHz (Fclk = 125,000,000 Hz).

232 = 4,294,967,296

FTW = Fout × 2N / Fclk
FTW = 7,074,000 × 4,294,967,296 / 125,000,000
FTW = 7,074,000 × 34.3597 = 242,978,893 (rounded to nearest integer)

Verification: Fout = 242,978,893 × 125,000,000 / 4,294,967,296
= 242,978,893 × 0.02910383... = 7,073,999.97 Hz ≈ 7.074000 MHz ✓

The small error (0.03 Hz) is due to rounding FTW to an integer. With a 32-bit accumulator and 125 MHz clock, the frequency resolution is:
Fres = 125,000,000 / 4,294,967,296 = 0.02910 Hz per LSB

This means you can tune in steps finer than 0.03 Hz — dramatically better than any analog VFO or integer-N PLL synthesizer.
Example 2: What FTW gives 14.225 MHz with Fclk = 100 MHz and N = 32?

232 = 4,294,967,296

FTW = 14,225,000 × 4,294,967,296 / 100,000,000
= 14,225,000 × 42.94967296
= 611,042,547 (rounded)

Verification: 611,042,547 × 100,000,000 / 4,294,967,296 = 14,225,000.0 Hz ✓ (coincidentally exact)

Maximum usable output: 40% × 100 MHz = 40 MHz — 14.225 MHz is well within range. ✓

Frequency resolution: 100,000,000 / 4,294,967,296 = 0.02328 Hz per LSB — again, sub-0.03 Hz resolution.
Example 3: AD9951 DDS with 32-bit accumulator, 400 MHz clock — what is the frequency resolution and maximum usable output?

Fres = Fclk / 2N = 400,000,000 / 4,294,967,296 = 0.0931 Hz per LSB (≈ 93 mHz resolution)

Nyquist limit = 400 MHz / 2 = 200 MHz
Recommended max (40% of Fclk) = 0.4 × 400 MHz = 160 MHz

This DDS can cover everything from audio to about 160 MHz — all with 93 mHz frequency resolution — and a frequency multiplier can extend it further. The AD9951 is a capable single-chip frequency source for a signal generator or a multi-band radio.

Frequency Resolution

The frequency resolution of a DDS system — the smallest frequency step it can make — is determined entirely by the accumulator bit width and the clock frequency:

DDS Frequency Resolution:
Fresolution = Fclk / 2N

For a 32-bit accumulator at 125 MHz: Fres = 125×106 / 4.295×109 = 0.029 Hz
For a 48-bit accumulator at 1 GHz: Fres = 109 / 2.81×1014 = 3.6 µHz

This extraordinary frequency resolution is DDS's greatest advantage over PLL synthesizers. An integer-N PLL with 10 kHz comparison frequency can only tune in 10 kHz steps. A DDS system with a 32-bit accumulator can tune in steps of 0.03 Hz — 300,000 times finer — while maintaining the same clock stability. This is why DDS is used for fine tuning in many signal generators and radios, providing continuous smooth tuning while a PLL handles coarse frequency selection.

Adding more bits to the accumulator increases resolution at no cost to the maximum output frequency or the noise floor. This is why modern DDS ICs use 24-, 32-, 40-, or even 48-bit accumulators. The silicon cost of extra flip-flops is minimal.

The Nyquist Limit and Why Output Must Be Below Half Clock

The Nyquist-Shannon sampling theorem states that a sampled system cannot accurately represent frequencies above half the sampling rate. In DDS, the clock is the sampling rate and the output is the sampled signal. If you try to set the output frequency above Fclk/2 (the Nyquist frequency), the output aliases — it folds back to a different, incorrect frequency.

Aliasing example: with a 100 MHz clock and output set to 60 MHz, the DDS actually produces a signal at 100 − 60 = 40 MHz (its alias). The Nyquist limit is absolute: there is no way to produce a clean output above Fclk/2 with a standard DDS architecture. This is why DDS ICs always specify the clock frequency separately from the maximum output frequency — the maximum output is always less than Fclk/2.

In practice, the reconstruction filter limits the usable output to about 40% of Fclk because the filter cannot achieve a perfectly sharp cutoff right at Nyquist. A 100 MHz clock gives reliable, clean outputs up to about 40 MHz. For higher frequencies, you either use a faster clock or follow the DDS with a multiplier stage.

Spurious Outputs and SFDR

DDS output spectrum showing spurious-free dynamic range SFDR with phase truncation spurs and harmonic spurious signals relative to the carrier

DDS output spectrum showing the desired output carrier and the spurious signals that determine SFDR. Phase truncation spurs appear at predictable offsets from the carrier. Harmonic spurs appear at multiples of the output frequency. The reconstruction filter suppresses clock-rate images but not close-in phase truncation spurs.

View Larger

Unlike a sine wave generator, a DDS does not produce a perfectly pure output. Several mechanisms create unwanted spurious signals:

Phase Truncation Spurs

The phase accumulator may be 32 bits wide, but the sine lookup table may only use the top 12 bits for addressing. The lower 20 bits are discarded — this is called phase truncation. The phase error introduced by truncation is periodic and creates spurs at predictable frequencies relative to the output carrier. Phase truncation is the dominant source of close-in spurious signals in DDS.

The worst-case spur from phase truncation is approximately −6 dBc × (N − B), where N is the accumulator width and B is the address bits used for the lookup table. For N = 32 and B = 12, worst-case spur ≈ −6 × (32−12) = −120 dBc — excellent. In practice, the actual worst-case SFDR (spurious-free dynamic range) is around −80 to −100 dBc due to DAC and circuit non-idealities.

DAC Non-Linearity Spurs

A real DAC is not perfectly linear. Minor errors in each bit weight create harmonic distortion that appears as spurious signals at multiples of the output frequency. These decrease in level with more bits and better DAC architecture. The AD9850's 10-bit DAC gives SFDR of about −50 dBc under typical conditions. High-end DDS ICs with 14- or 16-bit DACs achieve SFDR of −80 to −100 dBc.

Clock Feedthrough

Some of the clock signal couples to the DDS output through capacitive and substrate paths inside the IC. This appears as a spur at exactly the clock frequency and its harmonics. Good PCB shielding and decoupling reduce but cannot eliminate this. The reconstruction filter attenuates clock-rate spurs significantly since they are near or above Fclk.

Spurious-Free Dynamic Range (SFDR)

SFDR is the ratio of the output carrier level to the strongest spurious signal, expressed in dBc (decibels below carrier). It is the key specification for DDS cleanliness. A DDS with SFDR of −70 dBc has its worst spur 70 dB below the carrier. That is ample for most test signals, and for anything that transmits it comfortably meets typical regulatory limits on spurious emissions (40–60 dB below the carrier), especially after the output filter provides additional suppression.

The DAC and Reconstruction Filter

The DAC output is a staircase waveform — the sine values sampled at Fclk. This staircase contains the desired output frequency plus images of it centered around the clock frequency (at Fclk ± Fout) and at all higher multiples. A reconstruction low-pass filter removes these images and the clock frequency, leaving only the desired sine wave.

The filter cutoff must be placed above the maximum desired output frequency (to pass the signal) but well below the clock frequency (to reject the first image at Fclk − Fout). For a 125 MHz clock with maximum output of 50 MHz, a cutoff around 60–70 MHz works well. Fifth- or seventh-order elliptic or Chebyshev filters are commonly used because they provide steep attenuation above the cutoff.

In a fixed-frequency application (such as a 40 kHz ultrasonic transducer driver, or a single-frequency test source), the reconstruction filter can be a narrow band-pass filter centered on the output frequency, providing excellent harmonic suppression. In a wide-tuning signal generator, an elliptic low-pass filter just below half the clock frequency removes the images while passing the whole output range.

Phase and Frequency Modulation with DDS

DDS has a unique capability that analog oscillators and PLLs lack: the ability to change not just frequency but also the phase of the output signal, instantly and by a precisely controlled amount. This is because the phase accumulator value at any moment completely defines the output phase. Changing the accumulator by a fixed offset immediately shifts the output phase by that fraction of a full cycle.

This makes DDS ideal for phase-shift keying (PSK), used in data links from RFID tags to satellite modems. A microcontroller can command the DDS phase register directly, producing instantaneous, clean phase transitions without the amplitude glitches that can occur with analog switching methods.

For continuous-phase frequency shift keying (CPFSK) — used in many data links, modems and remote-control systems — the DDS simply changes the FTW from one value to another. Because the accumulator state is preserved through the FTW change, the output phase is continuous through the frequency transition. No phase discontinuities, no transients, no switching glitches. This is important for minimizing the bandwidth occupied by a data signal.

DDS Applications

Tunable Signal Sources for Radios

DDS is nearly ideal as a tunable signal source for receivers and transmitters. A 32-bit DDS with a 125 MHz clock provides 0.029 Hz resolution across the whole range from audio to about 50 MHz with the stability of the clock oscillator. There is no warm-up drift, no microphonics, no LC tank to adjust. The microcontroller simply writes a new FTW to the DDS IC over SPI, and the frequency changes in nanoseconds. Many modern radios use DDS or DDS-like fractional-N clock chips (such as the Si5351) for exactly these reasons.

Signal Generators and Frequency Standards

Laboratory signal generators from Rigol, Siglent, Keysight and BK Precision use DDS as their core frequency generation engine. A 200 MHz clock with a 32-bit or 48-bit accumulator provides coverage from DC to 80+ MHz with millihertz resolution and excellent frequency accuracy — directly tied to the internal 10 MHz TCXO or an external reference. Arbitrary waveform generators extend the idea by replacing the sine lookup table with any waveform stored in memory. For hobby use, low-cost DDS modules make inexpensive signal generators for testing and alignment.

Sensor Excitation and Frequency Sweeps

Many sensors are measured by exciting them with a precise AC signal and measuring the response. Impedance analyzer chips such as the AD5933 contain a DDS that sweeps the excitation frequency over a range while an ADC measures the response — used for corrosion monitoring, biological impedance measurement and material testing. Ultrasonic flow meters and proximity sensors, eddy-current sensors and LVDT position sensors use DDS to generate their excitation signals, where the precise frequency and phase control lets the system detect tiny changes in the response.

Digital Receivers and Local Oscillators

Digital receivers and software-defined instruments use DDS techniques internally for quadrature mixing and frequency generation. The "digital down-conversion" inside a digital receiver involves multiplying the incoming samples by a numerically controlled oscillator (NCO) — which is essentially the accumulator and sine table part of DDS without the DAC step. This allows the receiver to tune to any frequency within its bandwidth with sub-hertz precision by simply changing the NCO FTW.

DDS vs PLL Synthesizer: When to Use Which

Parameter DDS PLL Synthesizer
Frequency resolution Extremely fine (sub-Hz with 32-bit accumulator) Limited by comparison frequency (typically 1 kHz–100 kHz for integer-N; sub-Hz for fractional-N)
Frequency switching speed Instantaneous (nanoseconds) Milliseconds (limited by loop lock time)
Phase noise Moderate — dominated by phase truncation spurs at small offsets; often worse than a good PLL Excellent close-in phase noise possible with low-noise reference and wide loop bandwidth
Maximum frequency Below Fclk/2; practical maximum 30–40% of Fclk Very high — PLLs routinely synthesize 10 GHz and above
Spurious outputs Phase truncation spurs inherent; SFDR typically −60 to −100 dBc Reference spurs and fractional spurs; typically −80 to −100 dBc in good designs
Phase control Excellent — phase register allows instant, precise phase shifts No direct phase control; phase jumps cause transients
Frequency modulation Excellent FM and FSK — continuous phase guaranteed FM possible via VCO modulation but may cause spur issues
Complexity Low — single IC, no feedback loop, no lock time issue Moderate — loop filter design needed, lock time management
Typical cost $3–$30 for DDS IC (AD9850, AD9951) $2–$50 depending on frequency range and phase noise spec
Best application HF VFO, fine-tuning, digital modulation, signal generators VHF/UHF/microwave LO, low phase noise requirements, frequency multiplication

Many modern radios and instruments combine both: a DDS where its sub-hertz resolution and fast switching shine, and a PLL for very high frequency local oscillators where its superior phase noise and high-frequency capability matter. The combination exploits the strengths of each technology while avoiding their weaknesses.

Frequently Asked Questions

Why does DDS have a Nyquist limit — why can't it generate frequencies above half the clock rate?

The Nyquist-Shannon sampling theorem is fundamental to all sampled data systems. To represent a signal accurately in digital form, you must sample it at least twice per cycle. Equivalently, a digital system clocked at Fclk can only produce output frequencies up to Fclk/2 without aliasing. Above Nyquist, the output folds back to a mirror image frequency — the same mathematical reason that a car wheel can appear to spin backward on video. There is no way around this with standard DDS architecture; it is a mathematical constraint, not a circuit limitation.

Why is DDS phase noise often worse than a PLL at the same frequency?

DDS phase noise is dominated by phase truncation spurs and DAC quantization noise at close-in offsets. The PLL, by contrast, suppresses VCO noise inside the loop bandwidth and inherits the crystal reference's excellent close-in phase noise. A good PLL synthesizer can achieve −110 dBc/Hz at 1 kHz offset, while a typical DDS might give −90 dBc/Hz at 1 kHz offset. For applications where close-in phase noise matters — such as a receiver local oscillator in a crowded band where reciprocal mixing is a concern — a PLL has the advantage. For applications where fine frequency resolution and fast switching matter more, DDS wins. The best designs combine both.

What is the AD9850 and why is it so popular for hobby projects?

The AD9850 from Analog Devices is a 32-bit DDS IC with an integrated 10-bit DAC and a programmable clock multiplier, covering output frequencies up to 62.5 MHz with a 125 MHz reference clock. It has a simple parallel or serial programming interface and costs around $5–$15. Hobbyists use it because it is inexpensive, well documented, drives directly from 5 V logic, and provides excellent frequency resolution up to tens of megahertz. The AD9851 adds a ×6 clock multiplier internally, simplifying the reference oscillator design. Many kits and low-cost signal-generator modules include one or both of these chips as the VFO.

If DDS is so good, why use a PLL at all?

DDS has three significant limitations. First, maximum output frequency is hard-bounded to less than half the clock rate — you cannot easily generate 144 MHz or 432 MHz signals from a 125 MHz DDS without frequency multiplication, which adds complexity. Second, phase noise at close-in offsets is typically worse than a good PLL. Third, SFDR is limited by DAC bits and phase truncation — high-SFDR DDS ICs exist but cost more. PLL synthesizers routinely generate frequencies in the GHz range, can achieve excellent close-in phase noise, and have been refined over 50 years into very clean, well-understood architectures. DDS wins at HF with sub-Hz resolution; PLL wins at VHF/UHF with low phase noise.

Can I use a DDS to generate SSB signals directly?

Yes, using a quadrature DDS (two accumulators with 90° phase offset) or an I/Q modulator. The DDS generates two outputs in quadrature (sine and cosine), which are then amplitude-modulated by the baseband I and Q audio components of the SSB signal. The two products are summed to produce a single-sideband output. This approach — used in many modern digital designs — eliminates the need for a physical SSB filter. The phasing method of SSB generation relies on the precise 90° phase relationship that DDS can maintain exactly, unlike analog phase-shift networks that require trimming.

Test Your Knowledge

Answer the questions below to check your understanding. Every answer can be found in the lesson above.

Loading questions...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.