GHI CHÉP 07 · SIGNAL FOUNDATIONS
Fourier, DFT và FFT
Bài 06 nói rằng frequency-domain coefficient là complex. Bài này trả lời câu hỏi còn thiếu: coefficient đó được tính bằng cách nào, tại sao lại có frequency bins, và FFT thực chất chỉ làm nhanh phần nào?
BÀI NÀY NỐI TỪ ĐÂU?
Ta đã có finite record và muốn đổi representation sang các complex frequency coefficients. Ý tưởng cốt lõi không phải “FFT tìm tần số”, mà là đổi basis.
Fourier là family of representations dựa trên sinusoid/complex exponential. DFT là một transform cụ thể cho samples. FFT là họ thuật toán tính DFT nhanh hơn, không phải một transform khác.
01 · FOURIER LÀ MỘT BÀI TOÁN ĐỔI BASIS
Thay vì hỏi “sample thứ bằng bao nhiêu?”, ta hỏi “mỗi complex sinusoid cần hệ số bao nhiêu để dựng lại record?”.
02 · FOURIER TRANSFORM, DTFT VÀ DFT KHÔNG PHẢI CÙNG MỘT OBJECT
Chúng dùng cùng family of ideas nhưng khác signal model và frequency variable.
Time liên tục, frequency variable cũng liên tục.
Time rời rạc nhưng normalized frequency vẫn là biến liên tục và tuần hoàn.
samples ↔ coefficients
Một finite record cho một finite set frequency samples/bins.
Khi software receiver “chạy FFT trên một buffer”, về mặt toán học nó thường đang tính DFT của buffer đó. Vì vậy Bài 7 tập trung vào DFT, nhưng mental model vẫn nối về family Fourier rộng hơn.
03 · MỖI DFT BIN LÀ MỘT COMPLEX INNER PRODUCT
Một candidate bin được de-rotate khỏi record. Nếu phase progression khớp, các contribution cộng coherent.
Đây là cách đọc rất hữu ích của dấu âm trong exponent. Ta nhân record với conjugate của candidate basis. Component đúng frequency bị “đứng yên” sau de-rotation, còn component khác tiếp tục quay.
04 · BIN INDEX KHÔNG TỰ NÓ LÀ HERTZ
Physical frequency của bin phụ thuộc sampling rate và FFT/DFT length.
Với unshifted DFT ordering, index tăng từ zero tới . Nhưng physical frequencies ở nửa sau thường đại diện cho negative frequencies.
05 · INTERACTIVE LAB
Trước tiên nhìn DFT như vector projection. Sau đó chuyển sang leakage/window để thấy finite-record effects.
Basis projection dùng complex tone đúng bin để cho thấy de-rotation và coherent sum. Leakage & window dùng real tone, thay , fractional-bin offset và window để thấy spectral spreading.
Khi , mọi product có angle zero nên cộng coherent. Với một integer-bin mismatch, product phasors đi đủ vòng và tổng lý tưởng triệt tiêu.
06 · LEAKAGE ĐẾN TỪ FINITE RECORD
Một finite record tương đương signal bị nhân với một window theo time.
Rectangular window là trường hợp đơn giản nhất: giữ nguyên samples rồi bỏ mọi thứ bên ngoài record. Multiplication theo time tương ứng convolution theo frequency, nên một ideal spectral line bị “smear” theo spectrum của window.
07 · WINDOW THAY LEAKAGE TRADE-OFF
Window không “sửa FFT”. Nó thay record trước khi DFT được tính.
Main lobe hẹp hơn nhưng sidelobes tương đối cao. Khi tone đúng bin và record được kiểm soát, đây có thể là lựa chọn rất sạch.
Taper hai đầu, hạ sidelobes nhưng làm main lobe rộng hơn. Amplitude measurement cần xử lý coherent gain đúng.
Không có “window tốt nhất” độc lập với bài toán. Detect một weak tone cạnh strong tone, estimate amplitude và resolve hai close tones có thể ưu tiên các trade-off khác nhau.
08 · DFT CÓ THỂ ĐẢO NGƯỢC, FFT CHỈ LÀ CÁCH TÍNH NHANH
Frequency coefficients không làm mất information nếu transform pair và normalization được giữ đầy đủ.
Công thức trên là một common normalization convention: forward DFT không chia , inverse DFT chia . Libraries khác có thể chia ở forward, inverse hoặc chia đối xứng ở cả hai.
Mỗi output bin cộng contributions từ toàn bộ input record.
faster algorithm
Khai thác symmetry/factorization để reuse computation.
09 · ZERO-PADDING KHÔNG TẠO THÊM OBSERVATION TIME
FFT dài hơn sau khi append zeros cho nhiều frequency samples hơn, không cho thêm measured data.
Zero-padding rất hữu ích để interpolate spectrum display hoặc estimate peak position mượt hơn. Nhưng nếu mục tiêu là có thêm independent information về hai components gần nhau, chỉ append zeros không thay được record dài hơn hoặc SNR tốt hơn.
10 · DỪNG Ở ĐÂU TRƯỚC KHI SANG MODULATION?
là một complex coefficient. Nó chưa mặc định là một modulation symbol.
Coefficient sinh ra bởi transform của một finite record.
Một deliberately chosen complex point đại diện cho bits.
Modulation symbols sẽ được đặt có chủ đích lên bins/subcarriers trước IFFT.
Ba objects có thể đều là complex numbers nhưng khác ý nghĩa vì chúng xuất hiện ở stage khác nhau. Bài 08 sẽ tập trung vào việc bits chọn complex point như thế nào.
11 · NỐI LẠI CÁC Ý
- Fourier idea: đổi từ sample coordinates sang sinusoid/complex-exponential coordinates.
- DFT: mỗi là complex projection coefficient của một basis frequency.
- Bin mapping: và upper DFT indexes thường map sang negative frequencies.
- Leakage: finite observation/window làm spectral energy spread khi tone không align với DFT grid.
- Window: đổi main-lobe/sidelobe trade-off, không tạo thêm information.
- Inverse DFT: reconstruct record từ full complex coefficient set theo transform convention đã chọn.
- FFT: algorithm nhanh để tính DFT; IFFT là algorithm nhanh cho inverse DFT.
- Zero-padding: lấy frequency samples dày hơn nhưng không tăng physical observation time.