I am using a DAC to transmit 2 different voltage levels. High and low. At 1Gsps. There is no carrier wave or anything. These are just raw 0 and 1 time samples going across a wire.

On my ADC I am also sampling at 1Gsps and I'm able to fully reconstruct the transmitted signal. In other words I can tell which sample is a 0 or 1 level.

Does this not violate the Nyquist sampling theorem? I assume if I am transmitting at 1Gsps my receiver would need to sample at 2Gsps.

Where is my understanding wrong here?

  • $\begingroup$ so, as Fat32 and I have been wondering very much: Do you use reconstruction and / or antialiasing analog filters? $\endgroup$ Aug 27, 2017 at 9:44

3 Answers 3


That question is more involved than you think!

First of all: you're violating Nyquist. But, you're taking Nyquist's theorem for something that it is not.

Nyquist theorem, in essence says:

If we have a band-limited analog signal, we can faithfully represent it digitally (without losing any information) by sampling with a rate that is high enough.

So, first of all, from the info you're giving us, your signal is not band-limited. That should become obvious as soon as you realize that you draw the (theoretical) spectrum after the DAC: right, it's periodic with a period of 1 GHz, ie. the sampling rate. Period means it continues ad infinitum, i.e. it's not band-limited.

You don't say, so (,considering this is not your first question on this topic, so I presume that this means,) you don't have an anti-imaging analog filter after the DAC.

So, it'd be completely impossible to correctly sample this with a finite rate.

Then: you don't actually care about the analog signal, do you?

You want the bits. Good news: if you ADC samples exactly with the same rate as your DAC, then all the images will just alias back onto one, and everything will be fine.

Yeah. In theory.

In practice, that doesn't happen. First of all, and that is a very fundamental truth that I have to explain to a lot of people regularly, no two oscillators are exactly the same. Your system needs to have a bit of leeway for frequency deviation.

Then, all analog channels are frequency-dependent. That might also mean that they'll let the signal that you send and thus "imprint" on all these spectral repetitions through differently, depending on how that payload signal looks like in spectrum. Not to mention that it's rather rare that you can assume your channel stays like it is forever.

Then, you also get the problem of timing recovery. What use is your receiving ADC when it samples exactly in the middle between two transmit symbols?

So, you can do that, but you need at least timing recovery. And some DAC filtering (anti-image). And some noise and interference-limiting ADC filtering (anti-alias). And while you're at it, at least a simple equalization might be a good idea, and if it breaks down to an AGC.

Baseband BPSK signals (your signal is BPSK + an offset, if you will) aren't new. It's just that you typically avoid very much using them, unless your traces are very well-controlled (ie. you do 1Gb/s easily on a line between a RAM chip and a CPU that is routed on a PCB with proper impedance matching and plenty shielding, but you would avoid it very much on a cable with a plug and unknown length). For example, it's far easier to build Gigabit Ethernet, which transports 1Gb/s, too, using a signal that takes a lot of different states (not just two levels) but runs at 125 MHz, than to implement a 4Gb/s on/off scheme receiver for a fibreoptics cable (which really is just a DAC after a photo diode that either receives light – or doesn't).

So: high rate data is either pushed through very well-controlled channels in baseband (e.g. PCB traces, fibreoptics networking, twinax cable for SATA and 10GBase), or modulated onto a carrier and transported that way, or reduced in symbol rate by using high-bit-per-symbol mappings to limit the bandwidth and then transported in baseband (e.g. 1 Gb/s ethernet with 125 Mb) or both mapped to higher-order constellations and mixed onto a carrier (Digital TV, microwave links, LTE, basically all the radio you know that isn't low-rate).

  • 1
    $\begingroup$ Hmm that's why I put short answers ;-) btw isn't the output of a DAC bandlimited ? ( what happens to reconstruction filter? ) $\endgroup$
    – Fat32
    Aug 25, 2017 at 20:54
  • $\begingroup$ As far as I see from OP's question, there's no reconstruction filter. $\endgroup$ Aug 25, 2017 at 21:05
  • $\begingroup$ And as far as I'm concerned, OP's DAC has an instantaneous jump from one value to the next at the sample interval, so no bandlimitation for him :) $\endgroup$ Aug 25, 2017 at 21:06
  • $\begingroup$ yes he says he rejects every kind carrier or modulation, but I didn't think he would go that far to reject the reconstruction filter all together... anyway, I won't change my answer though, he should better use some filter there! :-) $\endgroup$
    – Fat32
    Aug 25, 2017 at 21:12
  • 1
    $\begingroup$ I agree, don't change your answer – it's absolutely correct to assume that he would use at least either a reconstruction or an anti-aliasing filter, but my interpretation is he didn't . Maybe he'll tell us (that would actually be good.). $\endgroup$ Aug 25, 2017 at 21:14

Yes you are violating! But not the Nyquist rate as a matter of fact :))

First of all Nyquist (Shannon) sampling theorem is based on the analog signal's bandwidth, and states that you must sample the signal at a rate twice the bandwidth of it. Now, what's the bandwidth of your signal? You must compute this one first.

Given a DAC (digital to analog converter) modeled as D/C block; i.e., an ideal signal reconstructor with an ideal interpolation (image rejection) filter with $h_r(t)$ whose cutoff frequency is at a half of the DAC sampling rate, then the output of the DAC given at a sampling rate of $1$G samples per second (1 GHz) will be bandlimited to $500$ MHz.

Now given a continuous-time (analog) bandlimited baseband signal $x(t)$ with a bandwidth of $500$ MHz, the required Nyquist sampling rate will be twice the bandwidth of the signal which is $1$ GHz, or stated as $1$ G samples per second.

Hence in principle (ideally) there's nothing wrong with (Nyquist is not violated by) using a DAC-ADC communication pair with the same sampling frequency. Of course due to several nonidealities (please refer to @MarcusMüller 's answer for those) you will find it quite impractical to achieve. Anyway, Nyquist is ok ;-)

But, then, you may be confusing the sampling theorem with channel capacity (information rate) for AWGN channel. So given your DAC-ADC AWGN channel system with a bandwidth of $B = F_s/2$, and given an SNR of the line in between; your maximum rate of information transfer is given by Shannon-hartley law which states that $C = B \times \log_2( 1 + SNR)$ b/s...

Assuming an SNR of $90$ dB (for about $16$ bits of an ADC,DAC with LSB noise) this means in principle you should be able to reach a data rate of $C = 500 \times 10^6 \times 15$ bits per second. This is about $7.5$ Gbps.

  • 2
    $\begingroup$ I think I collided with your answer, but you were faster at typing. Here, have my upvote :) $\endgroup$ Aug 25, 2017 at 20:52
  • 2
    $\begingroup$ Doubled. I love binary answers on binary signals $\endgroup$ Aug 25, 2017 at 21:03

If your ADC and DAC clocks are synchronized, you're sending information within the clock synchronization information channel at a resolution a lot higher than 1 nS. That additional side channel of information is equivalent to sampling at a much higher rate (the reciprocal of the sync jitter).

If your ADC clock is not synchronized, then it's possible to either miss or double sample data bits, or get garbage results by sampling right at the middle of the transition between the two DAC output voltage levels. e.g. you can end up with a non-zero error rate, depending on clock misalignment, frequency drift, the data, any encoding, and the channel and DAC/ADC filter responses.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.