← Về lộ trình học

GHI CHÉP 02 · SIGNAL FOUNDATIONS

Sampling, aliasing và Nyquist

ADC chỉ nhìn waveform tại một số thời điểm rời rạc. Câu hỏi là: cần nhìn nhanh tới mức nào để những sample đó vẫn giữ đủ thông tin về signal ban đầu?

BÀI NÀY NỐI TỪ ĐÂU?

Ở Bài 01, waveform liên tục đã được biến thành dãy x[n]x[n]. Bài này chỉ zoom vào đúng bước đó.

ANALOG → DIGITAL
Waveform x(t)x(t)→Sampling→x[n]x[n]→DSP

Nếu sampling đủ nhanh, dãy x[n]x[n] vẫn có thể đại diện cho waveform ban đầu trong những điều kiện nhất định. Nếu sampling quá chậm, nhiều waveform khác nhau có thể tạo ra cùng một dãy sample.

01 · LẤY MẪU THEO THỜI GIAN

Sampling không biến amplitude thành các mức rời rạc. Nó chọn những thời điểm để đo waveform.

Giả sử một điện áp analog x(t)x(t) tồn tại liên tục theo thời gian. ADC đo giá trị của nó tại các thời điểm0, Ts, 2Ts, 3Ts,…0,\,T_s,\,2T_s,\,3T_s,\ldots Khi đó:

x[n]=x(nTs)x[n] = x(nT_s)

n=0,1,2,…n = 0,1,2,\ldots và TsT_s là khoảng thời gian giữa hai lần lấy mẫu.

1 · WAVEFORMthời gianx(t)x(t)

Giá trị tồn tại ở mọi thời điểm.

2 · SAMPLINGx[n]x[n]

Thời gian đã trở thành các sample index nn.

3 · QUANTIZATIONxq[n]x_q[n]

Quantization thay mỗi sample amplitude bằng một giá trị/code thuộc tập mức hữu hạn.

Sampling rate là số lần đo trong một giây: fs=1/Tsf_s = 1/T_s. Nếu fs=48 kHzf_s=48\,\mathrm{kHz}, khoảng cách giữa hai sample là khoảng 20.83 μs20.83\,\mu\mathrm{s}.

02 · KHI LẤY MẪU QUÁ CHẬM

Một dãy sample không tự nói cho ta biết waveform đã chạy qua giữa các sample như thế nào.

Nếu các sample nằm đủ gần nhau so với tốc độ biến thiên của signal, ta còn có cơ hội dựng lại waveform. Nhưng khi khoảng cách giữa các sample quá lớn, một waveform nhanh có thể đi qua đúng những điểm mà một waveform chậm hơn cũng đi qua.

CÙNG SAMPLE, HAI CÁCH DIỄN GIẢI7 Hz7\,\mathrm{Hz} và 3 Hz3\,\mathrm{Hz} khi fs=10 Hzf_s=10\,\mathrm{Hz}
waveform nhanh 7 Hz7\,\mathrm{Hz} waveform chậm 3 Hz3\,\mathrm{Hz} samples ở 10 Hz10\,\mathrm{Hz}

Với một cosine 7 Hz7\,\mathrm{Hz} được lấy mẫu ở 10 Hz10\,\mathrm{Hz}:

7 Hz  ⟶  ∣7−10∣=3 Hz7\,\mathrm{Hz} \;\longrightarrow\; |7-10| = 3\,\mathrm{Hz}

7 Hz7\,\mathrm{Hz} nằm phía trên fs/2=5 Hzf_s/2 = 5\,\mathrm{Hz} và bị “fold” về 3 Hz3\,\mathrm{Hz}.

Sau sampling, các giá trị x[n]x[n] của tone 7 Hz7\,\mathrm{Hz} trùng với một tone 3 Hz3\,\mathrm{Hz} tại đúng các sample time. Receiver chỉ nhìn dãy sample thì không thể biết chắc waveform analog trước ADC là 7 Hz7\,\mathrm{Hz} hay 3 Hz3\,\mathrm{Hz}. Hiện tượng một thành phần tần số cao xuất hiện như một tần số thấp khác được gọi là aliasing.

03 · INTERACTIVE LAB

Đi qua ba trạng thái Safe → Nyquist boundary → Aliasing, rồi nhìn cùng hiện tượng ở time domain và frequency domain.

Demo dùng một cosine đơn để giữ hình dễ đọc. Time view cho thấy waveform và sample points. Spectrum view cho thấy copies xuất hiện cách nhau fsf_s và frequency nào rơi vào principal Nyquist interval.

NYQUIST FREQUENCY5.0 Hz5.0\,\mathrm{Hz}fs/2f_s/2
INPUT TONE7.0 Hz7.0\,\mathrm{Hz}cos⁡(2πft)\cos(2\pi f t)
STATUSALIASINGfold về 3.0 Hz
waveform gốc waveform alias cũng đi qua các sample samples
thời gian

Tone 7.0 Hz7.0\,\mathrm{Hz} nằm ngoài principal Nyquist interval và có một discrete-time equivalent tại 3.0 Hz3.0\,\mathrm{Hz}. Trong time view, hai waveform đi qua cùng sample values. Trong spectrum view, các copies do sampling cho thấy vì sao frequency bị fold.

04 · NYQUIST

Với một signal band-limited, sampling phải đủ nhanh để các bản sao spectrum không chồng lên nhau.

Giả sử signal không có thành phần tần số nào cao hơn B Hz. Trong mô hình lý tưởng, định lý Nyquist-Shannon cho ta điều kiện thường viết là:

fs>2Bf_s > 2B

Sampling rate phải lớn hơn hai lần tần số cao nhất cần giữ lại trong ideal band-limited model.

Một cách nhìn ở miền tần số là: sampling tạo ra các bản sao của spectrum cách nhau fsf_s. Nếu fsf_s đủ lớn, các bản sao đứng tách nhau. Nếu fsf_s quá nhỏ, chúng chồng lên nhau và phần bị chồng chính là aliasing.

fs>2Bf_s>2B · CÁC SUPPORT TÁCH NHAU
−fs-f_s
−B-B
00
+B+B
+fs+f_s

Baseband support nằm trong [−B,B][-B,B]. Copy gần nhất bắt đầu tại khoảng fs−Bf_s-B.

fs<2Bf_s<2B · SUPPORT CHỒNG LÊN NHAUoverlapoverlap

Khi copy kế bên chạm vào support chính, spectral information bị trộn và không thể tách lại chỉ từ samples.

fs−B>B⟹fs>2Bf_s-B>B\quad\Longrightarrow\quad f_s>2B

Khoảng cách từ tâm copy kế bên tới mép support chính dẫn trực tiếp tới điều kiện Nyquist trong low-pass model này.

05 · HAI CỤM TỪ DỄ NHẦM

Nyquist rate và Nyquist frequency không phải cùng một đại lượng.

NYQUIST RATE
2B2B

Nếu signal cần giữ tới B HzB\,\mathrm{Hz}, 2B2B là tốc độ lấy mẫu tối thiểu theo mô hình lý tưởng thường được nhắc tới.

NYQUIST FREQUENCY
fs/2f_s/2

Với sampling rate fsf_s, discrete-time frequency lặp theo chu kỳ fsf_s. Với signal real low-pass, ta thường chọn principal interval từ 00 tới fs/2f_s/2 cho positive frequencies; thành phần cao hơn có thể fold về một frequency tương đương trong interval này.

Ví dụ một ADC đang chạy ở 20 MHz20\,\mathrm{MHz} có Nyquist frequency là 10 MHz10\,\mathrm{MHz}. Còn nếu signal cần giữ có bandwidth từ DC tới 4 MHz4\,\mathrm{MHz}, Nyquist rate lý tưởng của signal đó là 8 MHz8\,\mathrm{MHz}. Hai câu đang nhìn cùng bài toán từ hai phía khác nhau.

06 · NGOÀI ĐỜI THỰC

ADC không thể trông chờ mọi thứ phía trên fs/2f_s/2 tự biến mất.

Signal analog thực tế có thể chứa noise, blocker hoặc các thành phần ngoài bandwidth ta quan tâm. Nếu chúng đi thẳng vào ADC, những thành phần phía trên Nyquist frequency có thể alias vào dải cần giữ.

ANALOG INPUTsignal + out-of-band energy
→
TRƯỚC ADCAnti-alias filter
→
ADCsampling @ fsf_s
→
DIGITALx[n]x[n]

Anti-alias filter là filter analog đặt trước sampling để làm suy giảm các thành phần không muốn giữ. Vì transition band của filter thực không thể dựng đứng tại một tần số duy nhất, hệ thống thường chọn fsf_scao hơn giới hạn lý thuyết để có khoảng chuyển tiếp dễ thiết kế hơn. Đây là một lý do oversampling rất hữu ích.

07 · NỐI LẠI VỚI WIRELESS

Sampling rate quyết định cách receiver số nhìn thấy bandwidth mà RF front-end đưa vào.

Trong một receiver wireless, RF front-end và downconversion đưa phần spectrum cần quan tâm về một dạng phù hợp cho ADC. ADC sau đó tạo time-domain samples để các khối như synchronization, FFT, channel estimation và demodulation xử lý.

ANALOG / RF FRONT-ENDband of interestcontinuous-time signal sau frequency selection/downconversion phù hợp
→
ANTI-ALIAS FILTERlimit analog bandwidthgiảm out-of-band energy trước sampling
→
ADCsample @ fsf_scontinuous-time → discrete-time
→
DIGITAL PROCESSINGx[n]x[n]samples đi vào các thuật toán DSP ở những bài sau

Trong bài này, Nyquist được minh họa bằng signal real, low-pass để giữ trực giác đơn giản. Khi học complex baseband ở Bài 5, positive/negative frequency và bandwidth sẽ được diễn giải bằng một model phù hợp hơn. Bài 2 chỉ cần giữ một nguyên tắc: ADC phải nhận một analog bandwidth phù hợp với sampling rate của nó.

08 · NỐI LẠI CÁC Ý

Tới đây ta có thể nhìn sampling như một bài toán giữ đủ thông tin, không chỉ là “đo thật nhiều điểm”.

  1. Sampling làm rời rạc thời gian: x[n]=x(nTs)x[n]=x(nT_s).
  2. Sampling rate là fs=1/Tsf_s=1/T_s.
  3. Aliasing xảy ra khi những thành phần khác nhau trở nên không phân biệt được sau sampling.
  4. Nyquist-Shannon cho signal band-limited một điều kiện lý tưởng để tránh spectral overlap: fsf_s > 2B; đúng tại biên fs/2f_s/2 là một edge case nhạy với phase.
  5. Nyquist frequency là fs/2f_s/2, còn Nyquist rate của signal band-limited tới B là 2B.
  6. Anti-alias filter phải xử lý out-of-band energy trước ADC.