Skip to content
View in the app

A better way to browse. Learn more.

Ham Radio Base -Powered By Ham CQ DX

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.
Solar
SFI 128
SN 113
A 18
K 2 Quiet
X-Ray C1.2
Wind 554.7 km/s
Aurora 3
Updated 22:30 UTC HamQSL · N0NBH
Day 80/40m Fair 30/20m Good 17/15m Good 12/10m Fair
Night 80/40m Good 30/20m Good 17/15m Good 12/10m Poor

Callsign Lookup
_
Vanity Call Signs Available
Enter filters above and click Search.
ⓘ Callsign lookups are in real time via the FCC database. Vanity callsign availability is refreshed daily at 6:00 AM CST. The vanity search may be unavailable for a few minutes during this update.
Live DX spots
Live DX Spots — 70cm via PSKReporter · scroll or pinch to zoom
Band
Mode
Time
Loading map data…
MHz DX Spotter Info
Recent spots
Select a band above to load spots
Ready — select a band to fetch live spots

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 homebrewer kits costing $30 to military frequency-hopping radios costing millions of dollars. The AD9850 and AD9951 chips from Analog Devices have powered thousands of homebrew HF rigs, signal generators, and beacon transmitters. 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 = Ftune × Fclk / 2N); frequency resolution, spurious-free dynamic range, the Nyquist limit, and filtering requirements; and DDS applications in amateur radio transceivers and test 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 (FT8 on 40 meters)

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 (20-meter USB calling frequency) 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 HF (1.8 to 30 MHz), all VHF bands (50, 144 MHz), and parts of UHF — all with 93 mHz frequency resolution. Multiply by 2× in a doubler stage to reach 222 MHz or 432 MHz bands. The AD9951 is a capable single-chip frequency source for a multi-band transceiver.

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 the fine-tuning VFO in many transceivers, providing continuous smooth tuning while a PLL handles coarse band 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. For amateur transmitters, FCC Part 97 requires harmonics and spurious emissions to be at least 43 dB below the carrier (for stations under 5 W PEP) or 60 dB below (for stations 5 W and above). A DDS with −70 dBc SFDR before the bandpass filter meets this requirement, and the 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 7 MHz beacon), the reconstruction filter can be a narrow bandpass filter centered on the output frequency, providing excellent harmonic suppression. In a wide-tuning transceiver VFO, a switched-filter bank (separate filters for each amateur band) provides the necessary coverage.

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) digital modes. PSK31, the most popular keyboard-to-keyboard digital mode in amateur radio, uses 180° (binary PSK) and 45° (differential PSK) phase shifts. 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 RTTY and many other modes — 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 called continuous-phase FSK and is important for minimizing spectral splatter from digital transmissions.

DDS in Ham Radio Applications

VFO for HF Transceivers

DDS is nearly ideal as the VFO for an HF transceiver. A 32-bit DDS with a 125 MHz clock provides 0.029 Hz resolution across the entire HF range (1.8 to 30 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. The QRP Labs QCX series, the Elecraft KX2, and many other modern rigs use DDS or DDS-like (Si5351 fractional-N) frequency generation for exactly these reasons.

Signal Generators and Frequency Standards

Laboratory-quality signal generators from Rigol, Siglent, 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. For amateur use, DDS-based homebrewed signal generators provide a cost-effective tool for alignment and testing.

Beacons and WSPR Transmitters

WSPR (Weak Signal Propagation Reporter) transmissions use 4-FSK modulation with 1.46 Hz channel spacing — an absurdly fine resolution requirement that rules out PLL synthesizers with multi-kHz comparison frequencies. DDS handles this trivially: a 32-bit accumulator at 100 MHz provides 0.023 Hz resolution, making the 1.46 Hz step achievable with a single FTW increment of about 63 counts. The QRP Labs U3S WSPR transmitter, which has logged contacts on all continents with just a few milliwatts, uses an Si5351 DDS-like synthesizer for this reason.

SDR Local Oscillators

Software-defined radios (RTL-SDR, HackRF, ADALM-PLUTO) use DDS techniques internally for quadrature mixing and frequency generation. The "digital down-conversion" inside an SDR 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 SDR 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 transceivers combine both: a DDS for fine HF tuning (where its sub-Hz resolution shines) and a PLL for VHF/UHF 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 receive LO in a crowded amateur 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 do homebrewers use it?

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. Homebrewers use it because it is inexpensive, well-documented, drives directly from 5 V logic, and provides excellent frequency resolution for HF operation. The AD9851 adds a ×6 clock multiplier internally, simplifying the reference oscillator design. Many kits from Elecraft, QRP Labs, and hobbyist suppliers 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 software-defined radios and some modern homebrew 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.