You are on page 1of 37

CHƯƠNG 7: LẤY MẨU TÍN HIỆU

Nội dung
5.1 Định lý lấy mẩu
5.2 Tính biến đổi Fourier: Biến đổi Fourier rời rạc (DFT)
5.3 Biến đổi Fourier nhanh (FFT)
5.4 Phụ chương 5.1
5.5 Tóm tắt

Tài liệu tham khảo:


B.P. Lathi, Signal Processing and Linear Systems, Berkeley-Cambridge Press, 1998

Lấy mẩu
Tín hiệu liên tục có thể được xử lý bằng cách xử lý các mẩu của tín hiệu qua hệ
thống rời rạc. Điều cần thiết là phải duy trì tốc độ lấy mẩu tín hiệu đủ lớn để khôi phục
tốt tín hiệu (không có sai số hay sai số với độ dung sai chấp nhận được). Điều này có thể
thực hiện được dùng định lý lấy mẩu.

5.1 Định lý lấy mẫu


Ta sẽ chứng minh là tín hiệu thực có phổ băng thông giới hạn B Hz [F(w)= 0 với
w > 2pB ] có thể được khôi phục chính xác (không có sai số nào) từ các tốc độ lấy mẩu
đồng đều với tốc độ Fs > 2B mẩu/giây. Nói cách khác, tốc dộ lấy mẩu tối thiểu là Fs = 2B
Hz.

Để chứng minh định lý lấy mẩu, xét tín hiệu f(t) (hình 5.1a) có phổ giới hạn B Hz
(hình 5.1b). Để thuận tiện, ta vẽ phổ là hàm theo w cũng như theo F (Hz). Lấy mẩu f(t)
với tốc độ Fs Hz (Fs mẩu/giây) có thể thực hiện bằng cách nhân f(t) với chuỗi xung dT(t)
(hình 5.1c), gồm các xung đơn vị lặp lại theo chu kỳ T giây, với T =1/Fs. Kết quả là tín
hiệu được lấy mẫu f (t ) vẽ trong hình 5.1d, là tín hiệu gồm các xung cách nhau từng T
giây (thời gian lấy mẫu). Xung thứ n, nằm tại t = nT, có cường độ f(nT), là giá trị của f(t)
tại t = nT.
f (t ) = f (t )d T (t ) = å f (nT )d (t - nT ) (5.1)
n

Để tìm F (w ) , biến đổi Fourier của f (t ) , ta lấy biến đổi Fourier của vế phải phương trình
(5.3) từng thừa số một. Biến đổi của thừa số thứ nhất trong ngoặc là F(w). Biến đổi của
thừa số thứ hai 2 f (t ) cos w s t là F(w –ws ) + F(w +ws ) (xem phương trình (4.41), cho
thấy phổ F(w) dời ws và –ws. Tương tự, biến đổi Fourier của thừa số thứ ba
2 f (t ) cos 2w s t là F(w –2ws ) + F(w +2ws ), cho thấy phổ F(w) dời 2ws và –2ws, và tiếp
tục cho tới vô hạn. Điều này tức là phổ F (w ) gồm F(w) lặp lại theo chu kỳ ws = 2p/T
rad/s, hay Fs = 1/T Hz, như vẽ trong hình 5.1e. Ngoài ra còn có thêm hằng số nhân 1/T
trong phương trình (5.3). Do đó
1 ¥
F (w ) = å F (w - nw s ) (5.4)
T n=-¥
Nếu muốn khôi phục f(t) từ f (t ) , ta phải khôi phục được F(w) từ F (w ) . Có thể
khôi phục được nếu không có trùng lắp giữa các chu kỳ liên tiếp của F (w ) . Hình 5.1e
cho thấy cần có
Fs > 2B (5.5)
Đồng thời, thời gian lấy mẩu T =1/Fs. Do đó
1
T£ (5.6)
2B
¢ Thí dụ 5.1
Trong thí dụ này, ta xét ảnh hưởng của tín hiệu khi lấy mẩu theo tốc độ Nyquist,
thấp hơn tốc độ Nyquist (lấy mẩu thiếu), cao hơn tốc độ Nyquist (lấy mẩu lố). Xét tín
hiệu f (t ) = sin c 2 (5pt ) (hình 5.2a) có phổ F (w ) = 0,2D( 20wp ) (hình 5.2b). Băng thông của
tín hiệu là 5 Hz (10p rad/s). Như thế, tốc độ Nyquist là 10Hz; tức là, ta phải lấy mẩu tín
hiệu với tốc độ không nhỏ hơn 10 mẩu/s. Khoảng Nyquist là T = 1/2B = 0,1 giây.
Nhắc lại là phổ của tín hiệu đã lấy mẩu gồm (1 / T )F (w ) = T2 D( 20wp ) lặp lại theo chu
kỳ bằng với tần số lấy mẩu Fs Hz. Ta trình bày thông tin này trong bảng sau với tốc độ
lấy mẩu Fs = 5Hz (lấy mẩu thiếu). 10Hz (tốc độ Nyquist) và 20Hz (lấy mẩu lố).

Tần số lấy mẩu Fs Thời gian lấy mẩu T (1/T)F(w) Nhận xét
5 Hz 0,2 D( 20wp ) Lấy mẩu thiếu
10 Hz 0,1 2D( 20wp ) Tốc độ Nyquist
20 Hz 0,05 4D( w
20p ) Lấy mẩu lố

Trong trường hợp đầu (lấy mẩu thiếu), tốc độ lấy mẩu là 5Hz (5 mẩu/giây) , và phổ
1
T F (w ) lặp lại sau mỗi 5Hz (10p rad/s). Các phổ liên tiếp trùng lắp, như vẽ trong hình
5.2d, và phổ F(w) không thể được khôi phục từ F (w ) ; tức là f(t) không thể được khôi
phục

từ các mẩu f (t ) trong hình 5.2c. Trường hợp thứ hai, khi dùng tốc độ lấy mẫu Nyquist
10Hz (hình 5.2e). Phổ F (w ) gồm các thành phần phổ T1 F (w ) không trùng lắp lặp lại
từng 10 Hz. Do đó, phổ F(w) có thể được khôi phục từ F (w ) dùng mạch lọc thông thấp
lý tưởng có băng thông 5 Hz (hình 5.2f). Sau cùng, trường hợp cuối là lấy mẩu lố (tốc độ
lấy mẩu 20Hz); phổ F(w) gồm các gồm các thành phần phổ T1 F (w ) không trùng lắp (lặp
lại từng 20 Hz) với các băng tần trống giữa các chu kỳ liên tiếp. Do đó, phổ F(w) có thể
được khôi phục từ F (w ) dùng mạch lọc thông thấp lý tưởng hay mạch lọc thực tế cũng
được (tín hiệu vẽ chấm trong hình 5.2h). ¢
r Bài tập E5.1
Tìm tốc độ Nyquist là khoảng Nyquist cho tín hiệu:
(a) sinc(100pt) và sinc(100pt) + sinc(50pt) .
Đáp số: khoảng Nyquist là 0,01 giây và tốc độ Nyquist là 100Hz cho cả hai tín hiệu. s

5.1-1 Khôi phục tín hiệu: Công thức nội suy


Quá trình khôi phục tín hiệu liên tục f(t) từ các mẩu còn được gọi là phép nội suy.
Trong phần 5.1, ta thấy tín hiệu f(t) có băng thông giới hạn B Hz có thể được khôi phục
(nội suy) chính xác từ các mẩu của mình. Quá trình khôi phục bằng cách cho tín hiệu đã
lấy mẩu qua mạch lọc thông thấp lý tưởng có băng thông B Hz. Từ phương trình (5.3), tín
hiệu đã lấy mẩu chứa các thành phần (1/T)f(t) và để khôi phục được f(t) (hay F(w)), thì
tín hiệu đã lấy mẩu phải qua mạch lọc lý tưởng có băng thông B Hz và độ lợi T. Do đó,
hàm truyền của bộ lọc khôi phục (hay nội suy) là:
æ w ö
H (w ) = Trect ç ÷ (5.7)
è 4pB ø
Quá trình nội suy được biểu diễn trong miền tần số như là tác động lọc. Ta xem xét tiếp
quá trình này từ quan điểm khác, tức là trong miền thời gian.
Để bắt đầu, ta hảy xét mạch lọc cực kỳ đơn giản có đáp ứng xung là rect ( Tt ) , vẽ
trong hình 5.3a. Đây là xung cổng (gate pulse) có tâm tại gốc, có chiều cao đơn vị, và độ
rộng T (thời gian lấy mẩu). Ta tìm ngõ ra của bộ lọc khi ngõ vào là tín hiệu đã lấy mẩu
f (t ) , Từng mẩu của f (t ) , đã được biến thành xung, tạo ngõ ra là xung cổng với chiều
cao bằng với cường độ của mẩu. Thí dụ, mẩu thứ k là xung có cường độ f(kT) nằm tại
t - kT và có thể viết thành f (kT )d (t - kT ) . Khi xung qua bộ lọc, tạo ra ngõ ra là xung
cổng có cao độ f(kT), tâm tại t = kT (phần nét gián đoạn trong hình 5.3b). Từng mẩu
trong f (t ) sẽ tạo ra xung cổng tương ứng tại ngõ ra bộ lọc dạng xấp xỉ hình bậc thang
của f(t), vẽ trong phần chấm trong hình 5.3b. Bộ lọc cho ta dạng thô của phép nội suy.
Hàm truyền H(w) của bộ lọc là biến đổi Fourier của đáp ứng xung rect ( Tt ) . Giả
sử, ta dùng tốc độ Nyquist; tức là T = 1/2B.
ætö
h(t ) = rect ç ÷ = rect (2 Bt )
èT ø

æ wT ö 1 æ w ö
H (w ) = T sin cç ÷= ç ÷ (5.8)
è 2 ø 2B è 4B ø
Đáp ứng biên độ H (w ) của bộ lọc này, như vẽ trong hình 5.3c, giải thích lý do về tính
thô của phép nội suy. Bộ lọc này, còn được gọi là mạch lọc giữ bậc zêrô (zero hold filter),
dạng xấu nhất của mạch lọc thông thấp lý tưởng (phần tô bóng trong hình 5.3c) cần có
cho phép nội suy chính xác.

Ta có thể cải thiện dạng mạch lọc bậc zêrô bằng cách dùng mạch lọc giử bậc một
(first order hold filter), cho ta phép nội suy tuyến tính thay vì dạng nội suy theo bậc
thang. Bộ nội suy tuyến tính này, với đáp ứng xung là xung tam giác D( 2tT ) , cho phép xấp
xỉ với đỉnh các mẩu được nối nhau bằng đường thẳng (xem bài tập 5.1-5).
Hàm truyền bộ lọc nội suy lý tưởng lấy từ phương trình (5.7) và vẽ trong hình 5.4a.
Đáp ứng xung của bộ lọa này là biến đổi Fourier nghịch của H(w) là
h(t ) = 2 BT sin c (2pBT ) (5.9a)

Giả sử lấy mẩu với tốc độ lấy mẩu Nyquist; tức là 2BT =1, thì
h(t ) = sin c(2pBT ) (5.9b)
f (t ) = å f (kT )h(t - kT )
k
f (t ) = å f (kT ) sin c[2pB(t - kT )] (5.10a)
k

f (t ) = å f (kT ) sin c(2pBt - kp ) (5.10b)


k
Phương trình (5.10) là công thức nội suy, tìm các giá trị của f(t) giữa các mẩu là phép
cộng dồn (weighted sum) mọi giá trị mẩu.

¢ Thí dụ 5.2
Tìm tín hiệu f(t) với băng thông giới hạn B Hz, và có các mẩu là
f(0) = 1 và f(±T) = f(±2T) = f(±3T) = . . . = 0
trong đó khoảng lấy mẩu là khoảng Nyquist của f(t); tức là T = 1/2B.
Dùng công thức nội suy (5.10b) để khôi phục f(t) từ các mẩu. Do tất cả các mẩu Nyquist
đều là zêrô, trừ một mẩu (tương ứng với k = 0) trong tổng bên vế phải của phương trình
(5.10b). Do đó
f(t) = sinc (2pBt)
Tín hiệu này được vẽ trong 5.4b. Quan sát thấy là chỉ tín hiệu có băng thông B Hz và giá
trị mẩu là f(0) = 1 và f(nT) = 0 (n ¹ 0). Các tín hiệu khác không thỏa được các điều kiện
này. ¢

5.1-2 Khó khăn thực tế khi khôi phục tín hiệu

Nếu tín hiệu được lấy mẩu với tốc độ Nyquist Fs = 2B Hz, phổ F (w ) bao gồm
F(w) được lặp lại nhiều lần mà không có khoảng hở giữa các chu kỳ kế tiếp, như vẽ trong
hình 5.5a. Như đã thấy trong phần 4.5, thì mạch lọc này là dạng không thực hiện được;
mà chỉ có thể xấp xỉ gần đúng dùng vô số các khâu trễ trong đáp ứng. Nói cách khác, ta
có thể khôi phục lại tín hiệu f(t) từ các mẩu dùng dùng vô số các khâu trễ. Một giải pháp
thực tế là lấy mẩu tín hiệu với tốc độ cao hơn tốc độ Nyquist (Fs > 2B hay w s > 4pB) .
Kết quả là F (w ) , bao gồm F(w) được lặp lại nhiều lần với một số hữu hạn các khoảng
hở giữa các chu kỳ kế tiếp, như vẽ trong hình 5.5b. Có thể khôi phục F(w) từ F (w )
dùng mạch lọc thông thấp có đặc tính ngắt chậm (từ từ), vẽ đường chấm trong hình 5.5b.
Nhưng ngay cả trong trường hợp này, độ lợi mạch lọc phải là zêrô sau chu kỳ thức nhất
của F(w) (xem hình 5.5b). Theo tiêu chuẩn Paley-Wiener, thì không thể thực hiện được
mạch lọc này. Ưu điểm duy nhất trong trường hợp này là ta có thể xấp xỉ mạch lọc cần có
dùng số khâu trễ ít nhất. Điều này cho thấy là trong thực tế không thể khôi phục chính
xác được tín hiệu f(t) có băng thông giới hạn từ các mẩu của tín hiệu, ngay cả khi tốc độ
lấy mẩu có cao hơn tốc độ Nyquist đi nữa. Tuy nhiên, khi tốc độ lấy mẩu càng tăng thì tín
hiệu khôi phục càng gần với tín hiệu mong muốn.

Sự bội bạc của trùm phổ (The treachery of aliasing)


Trong thực tế, khi khôi phục tín hiệu từ các mẩu còn một khó khăn cơ bản khác.
Định lý lấy mẩu vừa chứng minh đã dựa trên giả thiết là tín hiệu có băng thông giới hạn.
Các tín hiệu thực tế đều có thời gian giới hạn; tức là có độ rộng xung hữu hạn. Ta có thể
chứng minh (xem bài tập 5.1-10) là tín hiệu không thể đồng thời vừa có thời gian giới
hạn và băng thông giới hạn. Nếu tín hiệu có thời gian giới hạn, thì không thể có băng
thông giới hạn và ngược lại (nhưng tín hiệu có thể có thời gian không giới hạn và băng
thông không giới hạn). Rõ ràng, mọi tín hiệu thực tế, cần có thời gian giới hạn, thì băng
thông không hạn chế; chúng có băng thông vô hạn, và phổ F (w ) gồm các chu kỳ chồng
lắp của F(w) lặp lại mỗi Fs Hz (tần số lấy mẩu) như vẽ trong hình 5.6. Do có băng thông
vô hạn trong trường hợp này, nên chồng lắp phổ là đặc trưng không thay đổi, bất chấp tốc
độ lấy mẩu. Do có phần đuôi chồng lắp, nên F (w ) không còn đủ thông tin về F(w), và
không còn khả năng, ngay cả trong lý thuyết, để khôi phục f(t) từ các tín hiệu đã lấy mẩu
f (t ) . Nếu tín hiệu lấy mẩu đi qua mạch lọc thông thấp lý tưởng, thì ngõ ra không phải là
F(w) mà là một phiên bản F(w) bị méo dạng do hai nguyên nhân riêng biệt sau:
1. Phần đuôi của F(w) bị mất khi |F| > Fs/2 Hz;
2. Phần đuôi này tái xuất hiện với dạng gấp lại trong phổ. Chú ý là phổ ngang qua Fs/2
= 1/2T Hz. Tần số này được gọi là tần số gấp lại. Do đó, phổ tự gấp lại tại tần số gấp
lại. Thí dụ, thành phần tần số Fs/2+ Fx + Fx lộ diện để “đóng vai” thành phần tần số
thấp hơn (Fs/2) – Fx trong tín hiệu khôi phục được. Do đó, thành phần tần số cao
hơn (Fs/2) lại tái xuất hiện như là thành phần tần số thấp hơn (Fs/2). Yếu tố đảo
phần đuôi được gọi là gấp phổ (spectral folding) hay trùm phổ (aliasing), vẽ phần
tô bóng trong hình 5.6. Trong qua trình trùm phổ này, ta không chỉ mất mọi thành
phần tần số cao hơn (Fs/2) Hz, nhưng các thành phần này lại tái hiện (trùm phổ) như
thành phần tần số thấp. Sự xuất hiện lại này còn phá hủy tính toàn vẹn của các thành
phần tần số thấp, như vẽ trong hình 5.6.
Giải pháp: Bộ lọc chống trùm phổ
Thực hiện như sau, ta biết nguy cơ tiềm tàng nằm ở các thành phần tần số lớn hơn
(Fs/2) = (1/2T) Hz. Ta cần loại bớt (triệt) các thành phần này khỏi f(t) trước khi lấy mẩu
f(t). Theo phương pháp này, ta chỉ mất các thành phần lớn hơn tần số gấp (Fs/2)Hz; do đó
các thành phần này không thể tái hiện để làm hỏng các thành phần có tần số thấp hơn tần
số gấp. Các thành phần tần số cao được lọc nhờ mạch lọc thông thấp lý tưởng có băng
thông là (Fs/2)Hz. Bộ lọc này được gọi là bộ lọc trùm phổ. Chú ý là phải thực hiện việc
chống trùm phổ trước khi lấy mẩu tín hiệu.
Bộ lọc chống trùm phổ là mạch lọc lý tưởng nên không thực hiện được. Trong thực
tế, ta dùng mạch lọc có tần số cắt dạng dốc đứng, nhằm làm suy giảm sắc nét các phổ
còn sót lại của tần số gấp (Fs/2).

Lấy mẩu thực tế


Khi chứng minh định lý lấy mẩu, ta giả sử các mẩu lý tưởng có được bằng cách nhân
tín hiệu f(t) với chuỗi xung có độ rộng hữu hạn, vẽ trong hình 5.7b. Tín hiệu lấy mẩu
được vẽ trong hình 5.7c. Điều kinh ngạc là ta có thể khôi phục hay tái tạo tín hiệu f(t) từ
tín hiệu lấy mẩu f (t ) trong hình 5.7c. Đáng ngạc nghiên hơn là tốc độ lấy mầu lại không
thấp hơn tốc độ Nyquist. Tín hiệu f(t) có thể khôi phục bằng các cho f (t ) qua lọc thông
thấp dù nó đã được lấy mẩu dùng chuỗi xung.
Kết quả này có vẽ đáng tin cậy khi ta xét thực tế là việc khôi phục f(t) đòi hỏi kiến
thức về giá trị của mẩu Nyquist. Thông tin này có sẳn hay nằm trong tín hiệu lấy mẩu
f (t ) trong hình 5.7c do cường độ của mẩu thứ k là f(kT). Để chứng minh điều này một
cách giải tích, ta thấy là chuỗi xung lấy mẩu pT(t) vẽ trong hình 5.7b, là tín hiệu tuần
hoàn, có thể biểu diễn thành chuỗi Fourier
¥
2p
pT (t ) = C0 + å C n cos(nw s t + q n ) ws =
n =1 T

é ¥
ù
f (t ) = f (t ) pT (t ) = f (t ) êC0 + å C n cos(nw s t + q n )ú
ë n=1 û
¥
= C0 f (t ) + å C n f (t ) cos(nw s t + q n ) (5.11)
n =1

Tín hiệu đã lấy mẩu f (t ) gồm có C0 f (t ) , C1 f (t ) cos(w s t + q1 ), C2 f (t ) cos(2w s t + q 2 ),


…. Chú ý là thừa số thứ nhất C0 f (t ) là tín hiệu mong muốn và tất cả các thừa số khác
đều là tín hiệu điều chế với phổ có tâm tại ±ws, ±2ws, ±3ws, . . . , như vẽ trong hình 5.7e.
Rõ ràng tín hiệu f(t) có thể được khôi phục bằng cách cho f (t ) qua mạch lọc thông thấp,
để có ws > 4pB ( hay Fs > 2B).

¢ Thí dụ 5.3
Để minh họa việc lấy mẩu thực tế, xét tín hiệu f (t ) = sin c 2 (5pt ) được lấy mẩu dùng
chuỗi xung vuông pT (t ) vẽ ở hình 5.8c. Chu kỳ của pT (t ) là 0,1 giây, để có tần số cơ
bản là 10Hz. Do đó w s = 20p . Chuỗi Fourier của pT (t ) có thể biểu diễn thành
¥
pT (t ) = C0 + å Cn cos nw s t
n =1

Dùng phương trình (3.66) ta có C0 = 1


4 và Cn = 2
np sin ( n4p ) ; tức là
1 2 1 2 2
C0 = , C1 = , C2 = , C3 = , C4 = 0, C5 = - ,K
4 p p 3p 5p
Do đó
1 2 1 2
f (t ) = f (t ) pT (t ) = f (t ) + f (t ) cos 20pt + f (t ) cos 40pt + f (t ) cos 60pt + L
4 p p 3p

1 1 1
F (w ) = F (w ) + [ F (w - 20p ) + F (w + 20p )] + [ F (w - 4 0p ) + F (w + 40p )]
4 p 2 2p
1
+ [ F (w - 6 0p ) + F (w + 60p )] + L
3p 2
Trong trường hợp này F (w ) = 0,2D( 20wp ) . Phổ F (w ) vẽ trong hình 5.8e. Quan sát thấy
phổ gồm F (w ) được lặp lại theo chu kỳ 20p rad/s (10Hz). Do đó, không có trùng lắp
giữa các chu kỳ, và F (w ) có thể được khôi phục dùng bộ lọc thông thấp lý tưởng với
băng thông 5 Hz. Bộ lọc thông thấp lý tưởng có độ lợi đơn vị (và băng thông 5 Hz) sẽ
cho phép thừa số thứ nhất bên vế phải của phương trình trên đi qua đầy đủ và triệt mọi
thừa số khác. Do đó, ngõ ra y(t) là
1
y (t ) = f (t ) ¢
4

5.3-1 Một số ứng dụng của định lý lấy mẩu


Định lý lấy mẩu rất quan trọng trong phân tích, xử lý và truyền dẫn tín hiệu do cho
phép ta thay thế tín hiệu liên tục theo thời gian bằng chuỗi rời rạc các số. Do đó, việc xử
lý tín hiệu liên tục tương đương với việc xử lý chuỗi rời rạc các số. Phép xử lý này đưa
ta đến lĩnh vực lọc số. Trong lĩnh vực thông tin, việc truyền các bản tin liên tục theo thời
gian rút lại thành việc truyền các chuỗi số dùng chuỗi xung. Tín hiệu liên tục theo thời
gian f(t) được lấy mẩu và các giá trị mẩu được dùng thay đổi một số tham số của chuỗi
xung tuần hoàn. Ta có thể thay đổi biên độ (hình 5.9b), độ rộng (hình 5.9c), vị trí (hình
5.9d) của xung tỉ lệ với các giá trị mẩu của tín hiệu f(t). Từ đó, ta có phương pháp điều
chế biên độ xung (PAM: pulse-amplitude modulation), điều chế độ rộng xung (PWM:
pulse-width modulation), hay điều chế vị trí xung (PPM: pulse-position modulation).
Dạng điều chế xung quan trọng nhất hiện nay là điều chế xung mã (PCM: pulse-code
modulation). Trong mọi trường hợp, thay vì truyền tín hiệu f(t), ta truyền tín hiệu điều
chế xung tương ứng. Tại máy thu, ta độc thông tin từ tín hiệu hiệu điều chế xung và khôi
phục tín hiệu analog f(t).

Một ưu điểm của điều chế xung là cho phép truyền đồng thời nhiều tín hiệu trên cơ sở
chia sẻ thời gian (ghép kênh bằng cách phân chia theo thời gian TDM: time-division
multiplexing). Do tín hiệu điều chế xung chỉ chiếm một phần thời gian của kênh truyền,
nên ta có thể truyền nhiều tín hiệu điều chế xung trên cùng một kênh bằng cách chuyển vị
(inter-weaving) chúng. Hình 5.10 vẽ phương pháp ghép kênh hai tín hiệu PAM dùng
phương pháp TDM. Dùng phương pháp này, ta có thể ghép kênh nhiều tín hiệu trên cùng
một kênh truyền bằng cách giảm độ rộng xung.
Một phương pháp khác để truyền đồng thời nhiều tín hiệu analog (baseband) là
phương pháp ghép kênh bằng cách phân chia theo tần số (FDM: frequency - division
multiplexing), thảo luận trong phần 4.8-4. Trong phương pháp FDM, nhiều tín hiệu được
truyền đồng thời dùng phương pháp chia sẻ khổ sóng của kênh truyền. Phổ của từng bản
tin được dời đến dải tần đặc thù, chưa bị các tín hiệu khác chiếm. Thông tin của nhiều tín
hiệu được đặt trong các dải tần số không trùng lắp của kênh (hình 4.45). Có thể xem
TDM và FDM là dạng đối ngẫu của nhau.

Điều chế xung mã (PCM: Pulse Code Modulation)


PCM rất hữu ích và được dùng rộng rãi nhất trong các phương thức điều chế xung
vừa nêu. Về cơ bản PCM là phương pháp chuyển đổi tín hiệu analog thành tín hiệu số
(chuyển đổi A/D). Một tín hiệu analog có đặc trưng là biên độ có thể có giá trị bất kỳ
trong một tầm liên tục. Do đó, tín hiệu analog có thể có vô hạn các giá trị. Ngược lại,
biên độ tín hiệu số chỉ có thể có số hữu hạn các giá trị. Một tín hiệu analog có thể được
chuyển đổi thành tín hiệu số bằng cách lấy mẩu và lượng tử hóa (làm tròn). Nếu chỉ lấy
mẩu tín hiệu analog không, thì cũng chưa có tín hiệu số do tín hiệu đã lấy mẩu vẩn còn có
nhiều giá trị bất kỳ trong một tầm liên tục. Để số hóa tín hiệu này thì cần có quá trình
lượng tử hóa, để biên độ này nằm trong khoảng lượng tử như vẽ trong hình 5.11a.
Các biên độ của tín hiệu analog f(t) nằm trong tầm (– V, V). Tầm này là được chia thành
L khoảng con, có biên độ là rv = 2V/L. Tiếp đến, mỗi mẩu biên độ được xấp xỉ dùng giá
trị trung điểm của khoảng con của mẩu đang giảm (xem hình 5.11a với L = 16). Rõ ràng
là mỗi mẩu được xấp xỉ với một trong L giá trị. Như thế, tín hiệu được số hóa với các
mẩu lượng tử là một trong L giá trị. Các tín hiệu này là tín hiệu số L – phân (L – ary ).
Theo quan điểm thực tế, tín hiệu nhị phân (là tín hiệu chỉ có hai giá trị) là tín hiệu rất
hấp dẫn do tính đơn giản, kinh tế và dễ sử dụng trong kỹ thuật. Ta có thể chuyển đổi tín
hiệu L – phân thành tín hiệu nhị phân dùng phương pháp mã hóa xung. Hình 5.11b vẽ mã
trong trường hợp L = 16. Mã này, dùng biểu diễn nhị phân của hệ octal từ 0 đến 15, được
gọi là mã nhị phân tự nhiên (NBC: natural binary code). Còn có nhiều phương pháp
khác để mã hóa nhị phân. Mỗi mức trong 16 mức được truyền đi với một mã nhị phân 4
bit. Để truyền dữ liệu nhị phân này, ta cần định nghĩa các dạng xung riêng biệt để chỉ thị
các trạng thái nhị phân. Một khả năng là dùng dạng xung âm cho bit 0 và xung dương
cho bit 1 để các mẩu có thể được truyền đi thành nhóm 4 bit nhị phân, như vẽ trong hình
5.11b. Tín hiệu có được là tín hiệu PCM. Tín hiệu analog f(t) được chuyển đỗi thành tín
hiệu số (nhị phân). Tín hiệu nhị phân được gọi là bit, hiện đang là dạng viết tắt trong
chuẩn công nghiệp.

Băng thông của tín hiệu âm thanh vào khoảng 15kHz, nhưng nhiều thử nghiệm cho
thấy tín hiệu phát âm rõ (nghe được rõ) không bị ảnh hưởng nếu các thành phần tần số
cao hơn 3400Hz bị loại bỏ. Do mục tiêu của thông tin điện thoại là nghe được rõ chứ
không trung thực (hi-fi), nên các thành phần có tần số cao hơn 3400Hz được lọc bỏ
dùng bộ lọc thông thấp. Tín hiệu sau đó được lấy mẩu với tốc độ 800 mẩu trong một giây
(8 kHz). Tốc độ này cố tình cao hơn tốc độ Nyquist là 6,8 kHz để tránh phải có các mạch
lọc không thực hiện được khi khôi phục tín hiệu. Sau cùng mỗi mẩu được lượng tử thành
256 mức (L = 256), cần có nhóm 8 xung nhị phân để mã hóa các mẩu (28=256). Do đó,
tín hiệu điện thoai số hóa gồm 8 x 8000 = 64000 hay 64 kbits/s dữ liệu, cần có 64.000
xung nhị phân trong một giây khi truyền.
Đĩa CD là ứng dụng của PCM. Đây là tình huống dùng cho tín hiệu âm thanh hi-fi
có băng thông 15 kHz. Dù tốc độ lấy mẩu Nyquist chỉ là 30 kHz, hiện người ta dùng tốc
độ lây mẩu 44,1 kHz như lý do đã trình bày trước đây. Tín hiệu được lượng tử với số
lượng lớn các mẩu (L = 65.536) nhằm giảm sai số do lượng tử. Các mẩu được mã hóa nhị
phân rồi ghi vào CD.

Ưu điểm của tín hiệu số


Một số ưu điển của tín hiệu số so với tín hiệu analog được liệt kê dưới đây:
1. Truyền tín hiệu số ưu việt hơn so với tín hiệu analog do tín hiệu số có tính chống
nhiễu kênh truyền và méo tốt hơn nhiều (khi nhiễu và méo nằm trong giới hạn). Bản
tin tín hiệu số (nhị phân) trong hình 5.12a bị méo dao kênh truyền, như vẽ trong hình
5.12b. Nếu méo nằm trong giới hạn, ta có thể khôi phục dữ liệu mà không bị lỗi do
chỉ cần có quyết định nhị phân khi nhận được xung dương hay xung âm. Hình 5.12c
vẽ cùng dữ liệu với méo do kênh truyền và nhiễu. Trường hợp này dữ liệu có thể
được khôi phục chính xác bao lâu mà méo và nhiễu kênh truyền cón nằm trong giới
hạn. Điều này khác với trường hợp tín hiệu analog, khi với nhiễu hay méo dạng bất
kỳ, sẽ làm sái dạng tín hiệu thu được.
2. Tuy nhiên, ưu điểm lớn nhất của truyền dẫn tín hiệu số so với truyền dẫn analog là
khả năng tái tạo lại tín hiệu. Khi truyền dẫn analog, một tín hiệu bản tin khi truyền
qua kênh (đường truyền), tín hiệu ngày càng yếu đi, trong khi nhiễu kênh truyền và
méo dạng tín hiệu, ngày càng tích lủy và tăng mạnh dần. Tín hiệu sau cùng bị áp đảo
do nhiễu và méo dạng càng bị tổn thất lớn. Khuếch đại chỉ giúp rất ít do đồng thời
tăng cường tín hiệu và nhiễu theo cùng tỉ lệ. Do đó, cự ly truyền bản tin analog bị giới
hạn bởi công suất truyền. Khi truyền đủ dài, méo kênh truyền và nhiễu tích lủy đủ để
áp đảo tín hiệu kể cả tín hiệu số. Có thể khắc phục bằng cách thiết lập các trạm lặp
(repeater) dọc theo đường truyền với cự ly đủ ngắn để có thể phát hiện xung tín hiệu
trước khi nhiễu và méo dạng có thể tích lủy đủ lớn. Mỗi trạm xung phát hiện xung là,
sạch xung và truyền tiếp đến trạm lặp kế tiếp, để thực hiện lại các bước vừa nêu. Nếu
nhiễu và méo vẫn còn nằm trong giới hạn (điều này thực hiện được do các trạm được
đặc tương đối gần nhau), xung sẽ được phát hiện chính xác. Theo phương cách này,
bản tin tín hiệu số có thể được truyền trên cự ly dài với độ tin cậy cao. Ngược lại, bản
tin analog không thể làm sạch tín hiệu một cách tuần hoàn, nên truyền dẫn có độ tin
cậy thấp hơn. Trong PCM thì sai số có ý nghĩa nhất là sai số lượng tử. Sai số này có
thể được giảm thiểu bằng cách gia tăng mức lượng tử, với giá phải trả là làm băng
thông lớn hơn trong môi trường truyền dẫn (kênh truyền).
3. Thiết lập phần cứng số rât mềm dẽo và cho phép dùng vi xử lý, các máy tính mini,
chuyển mạch số, và mạch tích hợp cở lớn LSI.
4. Tín hiệu số có thể được mã hóa để có mức sai số thấp nhất và độ trung thực cao, cũng
như tinh bảo mật cao. Đồng thời ta cũng có thể dùng những thuật toán tinh vi để xử lý
tín hiệu số.
5. Phương pháp ghép kênh (multiplex) nhiều tín hiệu số thường dễ dàng và hiệu quả.
6. Phương thức lưu trữ tín hiệu số thường tương đối dễ và ít tốn kém. Ngoài ra còn có
khả năng tìm kiếm và chọn lọc thông tín từ xa.
7. Việc tái tạo bản tin số thường có độ tin cậy cực lớn mà không bị xấu đi. Bản tin
analog như bản photocopy hay phim, suy giảm chất lượng sau mỗi bước của nhiều
bước khôi phục, và quá trình di chuyển từ nơi nay đến nơi khác thường tốn kém.
8. Giá các phần cứng số giảm nửa sau hai hay ba năm, trong khi tính năng và dung
lượng tăng đôi với cùng thời gian này. Hiện nay các bước phát triển của công nghệ số
ngày càng nhanh và càng tinh vi. Trong những năm gần đây, ta đã thấy đĩa CD, là
thiết bị số đã làm cáo chung kỹ thuật ghi âm analog; báo chí truyền hình ảnh được
scan theo dạng số; và ngày nay đã làm nước Mỷ phải hướng về các tiêu chuẩn mới
cho truyền hình độ nét cao đối chọi lại với các chuẩn truyền hình analog từ Nhật và
Châu Âu (?!!). Ngược lại thì công nghệ analog như giấy in, viđêo, âm thanh, và phim
vẫn chưa có bước giảm giá nhanh. Dù gì đi nữa thì hiện nay công nghệ số đã và đang
thống trị các lĩnh vực như công nghệ thông tin và công nghệ lưu trữ.

Như đã nói trên, tín hiệu số có thể được tạo ra từ nhiều nguồn khác nhau. Một số
nguồn tín hiệu như máy tính đã là số. Một số nguồn là analog, nhưng đã được chuyển đổi
thành dạng số theo nhiều kỹ thuật khác nhau thí dụ như PCM.

r Bài tập E5.2


Mã ASCII (American Standard Code for Information Interchange) có 128 ký tự dạng
nhị phân. Một máy tính tạo ra 100.000 ký tự/giây. Chứng tõ là
(a) Cần có 7 bit đễ mã hóa từng ký tự
(b) Cần có 700.000 bit/giây để truyền ngõ ra của máy tính. s

5.1-3 Đối ngẫu của phép lấy mẩu theo thời gian: Định lý lấy mẩu phổ
Tương tự như các trường hợp khác, định lý lấy mẩu cũng có phần đối ngẫu. Trong
phần 5.1, ta đã thảo luận về định lý lấy mẩu theo thời gian, và đã chứng tõ được là tín
hiệu với băng thông giới hạn B Hz có thể được khôi phục từ tín hiệu được lấy mẩu với
tốc độ Fs > 2B mẩu/giây. Chú ý là phổ tín hiệu tồn tại trong tầm tần số từ – B đến B Hz.
Do đó, 2B là độ rộng phổ (không phải là băng thông, là B) của tín hiệu. Điều này có
nghĩa là tín hiệu f(t) có thể được khôi phục từ các mẩu được lấy với tốc độ Fs lớn hơn độ
rộng phổ (tính bằng Hz) của tín hiệu.
Đối ngẫu của định lý lấy mẩu theo thời gian là định lý lấy mẩu theo tần số. Định lý
này áp dụng cho các tín hiệu có thời gian giới hạn, là đối ngẫu của tín hiệu có băng thông
giới hạn. Ta tiếp tục chứng tõ là phổ F(w) của tín hiệu có thời gian giới hạn là t giây có
thể được khôi phục từ mẩu của F(w) được lấy với tốc độ R > t (độ rộng của tín hiệu)
mẩu/Hz.

Hình 5.13a vẽ tín hiệu f(t) có thời gian giới hạn t giây cùng biến đổi Fourier F(w)
của nó. Mặc dù F(w) thường có dạng phức, nhưng ta chỉ chứng minh cho trường hợp
F(w) là hàm thực là đủ.
¥ t
F (w ) = ò f (t )e - jwt dt = ò f (t )e - jwt dt (5.12)
-¥ 0

Tạo fTo(t) là tín hiệu tuần hoàn tạo ra bằng cách lặp lại f(t) mỗi T0 giây (T0 > t), như
trong hình 5.13b. Tín hiệu tuần hoàn này có thể được biểu diễn theo chuỗi Fourier mủ
¥
2p
fT0 (t ) = å Dn e jnw0t w0 =
n = -¥ T0
Trong đó (giả sử t < T0)
1 T0 1 t
Dn = ò f (t )e - jnw0t dt = ò f (t )e - jnw0t dt
T0 0 T0 0
Phương trình (5.12) cho
1
Dn = F (nw0 )
T0
Kết quả này cho thấy là các hệ số của chuỗi Fourier của fTo(t) là (1/T0) lần các giá trị mẩu
của phổ F(w) lấy tại các khoảng w0. Điều này tức là phổ của tín hiệu tuần hoàn fTo(t) là
phổ F(w) được lấy mẩu, như vẽ trong hình 5.13b. Bao lâu mà t còn < T0, chu kỳ kế tiếp
của f(t) xuất hiện trong fTo(t) không bị trùng lắp, nên có thể khôi phục f(t) từ fTo(t). Khôi
phục này gián tiếp hàm ý là F(w) có thể được khôi phục từ các mẩu của mình. Các mẩu
này phân cách với tần số cơ bản F0 =1/T0 Hz của tín hiệu tuần hoàn fTo(t). Điều kiện để
khôi phục là T0 ³ t; tức là
F0 £ (1/t) Hz
Do đó, để có thể khôi phục phổ F(w) từ các mẩu của F(w), thì các mẩu cần được lấy
với khoảng tần số không lớn hơn F0 = (1/t) Hz. Nếu R là tốc độ lấy mẩu (mẩu/Hz) thì
R = (1/F0) ³ t mẩu/Hz (5.13)

Nội suy phổ


Phổ F(w) của tín hiệu f(t) giới hạn theo thời gian t giây có thể được khôi phục từ các
mẩu của F(w), Trong trường hợp này, dùng tính đối ngẫu của công thức nội suy tín hiệu
trong phương trình (5.10). ta có công thức nội suy phổ
æ wt ö 2p
F (w ) = å F (nw0 ) sin cç - np ÷ w0 = (5.14)
n è 2 ø t
¢ Thí dụ 5.4
Phổ F(w) của tín hiệu có độ rộng đơn vị f(t) được lấy mẩu tại các khoảng 1 Hz hay 2p
rad/s (tốc độ Nyquist). Các mẩu là:
F(0) = 1 và F(±2pn) = 0 (n = 1, 2, 3, . . . )
Dùng công thức nội suy (5.14) để xây dựng F(w) từ các mẩu của mình. Do tất cả trừ
một mẩu Nyquist đều là zêrô, chỉ còn một thừa số (tương ứng với n = 0) trong tổng bên
vế phải của phương trình (5.14). Do đó, với F(0) = 1 và t = 1, ta có
æw ö
F (w ) = sin cç ÷ (5.15)
è2ø
Với tín hiệu có độ rộng đơn vị thì chỉ có một phổ với giá trị mẩu là F(0) = 1 và
F(±2pn) = 0 (n ¹ 0 ). Các phổ khác không thỏa các điều kiện này. ¢
5.2 Tìm biến đổi Fourier bằng phương pháp số - Biến đổi Fourier rời rạc DFT
Tính toán số biến đổi Fourier của f(t) cần giá trị các mẩu của f(t) do máy tính số chỉ
có thể xử lý các dữ liệu dạng rời rạc (chuỗi các số hạng). Do đó, máy tính chỉ có thể tính
F(w) tại các giá trị rời rạc của w [mẩu của F(w)]. Do đó cần có các mẩu của F(w) để lấy
mẩu f(t). Công việc này được thực hiện dùng kết quả của hai định lý đã phát triển trong
phần 5.1.
Bắt đầu với tín hiệu hữu hạn theo thời gian f(t) (hình 5.14a) và các phổ F(w) (hình
5.14b). Do f(t) bị giới hạn theo thời gian, nên F(w) không có giới hạn về băng thông. Để
thuận tiện, ta cho các phổ đều là hàm của biến tần số F (tính theo Hz) thay vì theo w.
Theo định lý lấy mẩu, thì phổ F (w ) của tín hiệu đã lấy mẩu f (t ) gồm có F(w) được lặp
lại theo Fs (Hz) với Fs = 1/T. Điều này được vẽ trong hình 5.14c và 5.14d. Bước tiếp
theo, tín hiệu đã lấy mẩu trong hình 5.14c được lặp lại tuần hoàn mỗi T0 giây, như vẽ
trong hình 5.14e. Định lý lấy mẩu phổ đòi hỏi phải lấy mẩu phổ với tốc độ T0 mẩu/Hz.
Tốc độ này tức là các mẩu cách nhau F0 = 1/T0 Hz , như vẽ trong hình 5.14f.
Phần thảo luận trên cho thấy là khi tín hiệu f(t) được lấy mẩu và lặp lại theo chu kỳ
thì phổ tương ứng cũng được lấy mẫu và lặp lại theo chu kỳ. Ta cần tìm quan hệ giữa tốc
độ lấy mẩu của f(t) với tốc độ lấy mẩu của F(w).

Số lượng mẩu
Hình 5.14e và 5.14f cho thấy điều thú vị là số mẩu N0 của tín hiệu trong một chu kỳ
T0 tại hình 5.14e giống hệt số mẩu N 0/ của phổ trong một chu kỳ Fs tại hình 5.14f. Lý do
là:
N0 = (T0/T) và N 0/ = (Fs/ F0) (5.16a)
Nhưng, do
Fs= 1/T và F0= 1/T0 (5.16b)
/
N0 = (T0/T) = (Fs/ F0) = N 0 (5.16c)

Trùm phổ và rò phổ khi tính toán số


Hình 5.14f cho thấy sự hiện diện của trùm phổ trong các mẩu của phổ F(w). Sai số
trùm phổ có thể giảm thiểu được bằng cách tăng tần số lấy mẩu Fs (giảm khoảng lấy mẩu
T = 1/ Fs). Tuy nhiên, không thể loại trừ hoàn toàn trùm phổ của tín hiệu có thời gian giới
hạn f(t), do có phổ F(w) không giới hạn băng thông. Nếu ta đã bắt đầu với tín hiệu có phổ
bị giới hạn về băng thông F(w), thì chúng không bị trùm phổ trong phổ ở hình 5.14f.
Điều không may là tín hiệu không bị giới hạn về thời gian và các phần lặp lại (trong hình
5.14e) sẽ làm tín hiệu bị chồng khớp (trùm phổ trong miền thời gian). Trong trường hợp
này, ta sẽ đấu tranh với sai số khi lấy mẩu tín hiệu. Nói cách khác, khi tính toán biến đổi
Fourier trực tiếp hay biến đổi nghịch bằng phương pháp số, ta có thể giảm sai số tủy ý,
nhưng không bao giờ có thể loại trừ được sai số. Đây là điều thực tế khi tính toán số biến
đồi Fourier thuận và nghịch, bất chấp phương pháp nào được dùng. Thí dụ, nếu xác định
biến đổi Fourier bằng cách lấy trực tiếp tích phân bằng phương pháp số, dùng phương
trình (4.8), thì sai số do khoảng lấy tích phân rt không bao giờ có thể là zêrô. Chú ý
tương tự cho trường hợp tìm biến đổi nghịch với phương pháp số. Do đó, ta cần luôn nhớ
về bản chất của sai số này trong kết quả của mình. Trong phần thảo luận (hình 5.14) của
mình, ta đã giả sử f(t) là tín hiệu có giới hạn về thời gian. Nếu f(t) không bị giới hạn về
thời gian, ta cần phải giới hạn thời gian do tính toán số chỉ hoạt động được với dữ liệu
hữu hạn mà thôi. Hơn nữa, việc cắt cụt dữ liệu tạo sai số do việc trãi phổ (nhòe phổ) và rò
phổ, như trình bày trong phần 4.9. Rò phổ cũng tạo ra trùm phổ. Có thể giảm thiểu rò phổ
bằng cách cắt cụt tín hiệu bằng cửa sổ hình nón. Nhưng lựa chọn này làm tăng yếu tố trãi
phổ hay nhòe phổ. Trãi phổ có thể được giảm thiểu bằng cách tăng độ rộng cửa sổ (tức là
cho nhiều dữ liệu hơn), điều này làm tăng T0, và làm giảm F0 (tăng độ phân giải tần số
hay phổ).

Ảnh hưởng hàng rào (picket fence effect)


Phương pháp tính toán số chỉ cho các giá trị mẩu đồng đều của F(w) [hay f(t)]. Dùng
phương pháp này giống như việc nhìn tín hiệu các phổ của nó qua một ‘hàng rào”. Các
đỉnh chủ yếu có thể nằm giữa hai mẩu và vẫn có thể không xuất hiện, tình hình này tạo
một hình ảnh sai về thực tế. Các kết quả sai lệch này có thể tránh được khi dùng số lượng
mầu N0 đủ lớn, làm tăng độ phân giải. Ta còn có thể dùng công thức nội suy phổ (phương
trình 5.14) để xác định giá trị của F(w) giữa hai mẫu.

Tìm biến đổi Fourier rời rạc (DFT: Discrete Fourier Transform)
Nếu f(kT) và F(rw0) lần lượt là các mẩu thứ k và thứ r, ta định nghĩa các biến mới fk
và Fr như sau
T
f k = Tf (kT ) = 0 f (kT ) (5.17a)
N0
Và Fr = F (rw0 ) (5.17b)
Trong đó
w0 = 2pF0 = (2p/T0) (5.17c)
Ta sẽ chứng minh fk và Fr quan hệ với nhau theo các phương trình sau:

N 0 -1
Fr = åfe
k =0
k
- jrW0 k
(5.18a)

1 N 0 -1 jrW0k 2p
fk = å
N 0 k =0
Fr e W 0 = w0T =
N0
(5.18b)

Các phương trình này định nghĩa biến đổi Fourier rời rạc thuận và nghịch (DFT), với
Fr là biến đổi Fourier rời rạc trực tiếp (DFT) của fk, và fk là biến đổi Fourier rời rac
nghịch (IDFT: Inverse Fourier Transform) của Fr. Ý niệm
fk Û Fr
còn được dùng để cho thấy fk và Fr là cặp DFT. Xin nhớ rằng fk là (T0/N0) nhân với mẩu
thứ k của Fr là mẩu thứ r của F(w). Biết giá trị mẩu của f(t), ta có thể tính được giá trị
mẩu của F(w) – và ngược lại – dùng DFT. Tuy nhiên, chú ý là fk là hàm của k (k = 0, 1,
2, . . . , N0 – 1) chứ không phải của t và Fr là hàm của r (r = 0, 1, 2, . . . , N0 – 1) thay vì
w. Hơn nữa, cả fk và Fr là chuỗi tuần hoàn với chu kỳ N0 (Các hình 4.14e và 5.14f). Các
chuỗi này được gọi là chuỗi tuần hoàn N0. Việc chứng minh quan hệ DFT trong
phương trình (5.18) lấy trực tiếp từ kết quả của định lý lấy mẩu. Tín hiệu được lấy mẩu
f (t ) (hình 5.14c) có thể viết thành
N 0 -1
f (t ) = å f (kT )d (t - kT )
k =0
(5.19)

Do d(t – kT) ó e– jkwT , biến đổi Fourier của phương trình (5.19) cho
N 0 -1
F (w ) = å f (kT )e
k =0
- jkwT
(5.20)
ws
Nhưng từ hình 5.1e (hay phương trình 5.4), rõ ràng là trong khoảng w £ 2 , với F (w ) là
F (w )
biến đổi Fourier cỉa f (t ) là T , giả sử trùm phổ có thể bỏ qua, thì
N 0 -1
ws
F (w ) = TF (w ) = T å f (kT )e - jkwT w £
k =0 2

N 0 -1
Fr = F (rw0 ) = T å f (kT )e - jkrw0T (5.21)
k =0

Nếu ta đặt w0T = W 0 , thì từ phương trình (5.16a) và (5.16b)


W 0 = w0T = 2pF0T = (2p/N0) (5.22)
Đồng thời, từ phương trình (5.17a),
Tf(kT) = fr
Do đó, phương trình (5.21) trở thành
N 0 -1
2p
Fr = å f r e - jrW0k W0 = (5.23)
k =0 N0
Quan hệ của biến đổi nghịch (5.18b) có thể được tìm dùng phương pháp tương tự
với vai trò của t và w được đảo ngược lại, nhưng ở đây là dùng cách chứng minh trực tiếp
hơn. Để chứng minh quan hệ nghịch trong phương trình (5.18b), ta nhân hai vế của
phương trình (5.23) với ejmW0r , rồi lấy tổng trong khoảng r theo
N 0 -1
é
N 0 -1 N 0 -1
- jrW0 k ù jmW0 r
å Fr e jmW0 r
= å ê å fr e
r =0 ë k =0
úe
r =0 û
Bằng cách thay đổi thứ tự lấy tổng bên vế phải
N 0 -1 N 0 -1
é N0 -1 ù
å Fr e jmW0r = å f k ê å f r e j ( m-r ) W0k ú
r =0 r =0 ë k =0 û
Phụ chương 5.1 cho thấy tổng bên trong của vế phải là zêrô với k ¹ n và tổng là N0
khi k = m. Do đó, tổng bên ngoài sẽ chỉ có một thừa số khác zerô khi k = m, và là
N 0 f k = N 0 f m . Do đó thường ta xác định Fr trong tầm (0, N0 – 1) hơn là trong tầm
(- N0
2 , N20 - 1 ).

Chọn T, T0 và N0.
Khi tính DFT, đầu tiên cần chọn giá trị thích hợp cho T, T0 và N0. Nhằm mục đích
này, đầu tiên phải tìm băng thông cơ bản B (Hz) của tín hiệu. Tần số lấy mẩu Fs ít nhất
phải bằng 2B; tức là,
(Fs/2) ³ B (5.25a)
Hơn nữa, khoảng lấy mẩu T = 1/ Fs , (phương trình 5.16b), và
T £ 1/2B (5.25b)
Khi đã chọn xong B, ta có thể chọn T từ phương trình (5.25b). Đồng thời
F0 =1/T0 (5.26)
Với F0 là độ phân giải tần số [mức phân biệt giữa các mẩu của F(w)]. Do đó, nếu đã có
F0 , ta có thể chọn T0 theo phương trình (5.26). Biết được T0 và T, ta xác định N0 từ:
N0 = T0/T (5.27)

Các điểm gián đoạn (discontinuity)


Nếu f(t) có bước nhảy gián đoạn tại điểm lấy mẩu, thì nên lấy giá trị mẩu là trung
bình các giá trị hai bên của điểm gián đoạn do biểu diễn Fourier tại điểm gián đoạn hội tụ
tại trị trung bình.

Đệm zêrô (Zero padding)


Nhắc lại khi quan sát Fr thì giống như quan sát phổ F(w) qua “ hàng rào”. Nếu
khoảng tần số lấy mẩu F0 không đủ nhỏ, ta có thể bị mất một số chi tiết quan trọng và có
được hình ảnh bị nhòe. Để có số mẩu cao hơn, ta cần giảm F0 . Do F0 = 1/T0, là số mẩu
cao nhất cần có để tăng giá trị của T0, chu kỳ lặp lại của f(t). Chọn lựa này làm tăng N0,
số mẩu của f(t), bằng cách thêm một số mẩu đệm có giá trị zêrô. Việc thêm các mẩu đệm
này được gọi là đệm zêrô. Do đó, các zêrô đệm này làm tăng số mẩu và có thể trợ giúp để
có thêm ý tưởng tốt hơn về phổ F(w) từ các mẩu Fr.

Các zêrô đệm không cải thiện tính chính xác hay độ phân giải.
Có một điểm cần được hiểu rõ là đệm zêrô thường chỉ cho ta thêm mẩu mà không
cải thiện được tính chính xác của các giá trị mẩu này. Đệm zêrô sẽ chỉ hữu ích hơn nếu
thời khoảng lấy mẩu đủ nhỏ để có thể bỏ qua sai số trùm phổ. Đệm zêrô không bao giờ
có thể cải thiện tính chính xác hay độ phân giải tần số theo nghĩa thực. Chỉ có thể tăng
tính chính xác bằng cách giảm trùm phổ (aliasing), điều này đòi hỏi giảm khoảng lấy mẩu
tín hiệu T (T < 1/2B, với B là băng thông hiệu quả của tín hiệu).

¢ Thí dụ 5.5
Tín hiệu f(t) có độ rộng 2 ms và băng thông cơ bản là 10 kHz. Mong muốn có độ
phân giải tần số là 100 Hz khi dùng DFT (F0 = 100). Tìm N0.
Độ rộng hiệu quả của tín hiệu T0 là
T0 = (1/ F0) = 1/100 = 10ms
Do độ rộng tín hiệu chỉ có 2ms, ta cần đệm zêrô trong khoảng 8 ms. Đồng thời, với
B = 10.000, nên Fs = 2B = 20.000 và T = 1/ Fs = 50ms. Vậy:
N0 = Fs/ F0 = 20.000/100 = 200

Thuật toán biến đổi Fourier nhanh (FFT: Fast Fourier Transform) (thảo luận trong phần
5.3), đã chứng minh là sẽ tiện (dù không phải là cần thiết) để chọn N0 là số mủ lủy thừa 2;
tức là N0 = 2n (n: số nguyên). Ta hảy chọn N0 =256. Tăng N0 từ 200 đến 256 có thể được
dùng làm giảm sai số trùm phổ (do giảm T), để cải thiện độ phân giải tần số (bằng cách
giảm T0), hay kết hơp cả hai.
(i) Giảm sai số trùm phổ: Ta duy trì cùng T0 để F0 = 100, do đó
Fs = N0F0 = 256 x 100 =25 600 và T = 1/ Fs =39ms
Do đó, tăng N0 từ 200 đến 256 cho phép ta giảm khoảng lấy mẩu T từ 50ms đến 39ms
mà vẫn duy trì cùng độ phân giải tần số (F0 = 100).

(ii) Cải thiện độ phân giải: Ở đây, ta duy trì cùng T = 50ms, làm
T0 = N0T = 256(50 x 10– 6) = 12,8 ms và F0 = 1/T0 = 78,125Hz
Do đó, tăng N0 từ 200 đến 256 có thể cải thiện độ phân giải tần số từ 100 đến
78,125Hz mà vẫn duy trì cùng sai số trùm phổ (T = 50ms).

(iii) Kết hơp hai lựa chọn


Ta có thể chọn T = 45ms và T0 = 11, 5ms để có F0 = 86,96 Hz. ¢

¢ Thí dụ 5.6
Dùng DFT để tính biến đổi Fourier của e–2tu(t). Vẽ phổ Fourier tương ứng.
Đầu tiên ta xác định T và T0. Biến đổi Fourier của e–2tu(t) là 1/(jw+2). Mạch lọc
thông thấp này không có băng thông giới hạn. Trong phần 4.6, ta dùng tiêu chuẩn năng
lượng để tính băng thông cơ bản của tín hiệu. Ở đây, ta giới thiệu một tiêu chuẩn năng
lượng khác, đơn giản nhưng dễ thực hiện hơn. Băng thông cơ bản của tín hiệu sẽ được
lấy tại tần số mà F (w ) giảm còn 1% giá trị đỉnh của mình. Trong trường hợp này, trị
đỉnh xuất hiện tại w = 0, với F (0) = 0,5. Quan sát thấy
1 1
F (w ) = » w >> 2
w2 + 4 w
Đồng thời 1% của trị đỉnh là 0,01 x 0,5 = 0,005. Do đó, băng thông cơ bản B là tại
w =2pB, trong đó
1 100
F (w ) » = 0,005 Þ B = Hz
2pB p
Và từ phương trình (5.25b),
1 p
T£ = = 0,015708
2 B 200
Ta đã dùng 1% tiêu chuẩn năng lượng để xác định băng thông cơ bản, theo phương pháp
đã dùng trong thí dụ 4.16, ta có B = 20,26, hơi bé hơn giá trị vừa tìm được bằng 1% tiêu
chuẩn biên độ.
Điểu thứ hai là xác định T0. Do tín hiệu không có thời gian giới hạn, ta phải cắt gọn
tín hiệu tại T0 sao cho f(T0) << 1. Một lựa chọn phù hợp là T0 =4 do f(4) = e –8 =
0,000335 << 1. Kết quả là N0 = T0/T =254,6 không phải là lủy thừa của 2. Do đó, ta
chọn T0 = 4 và T =0,015625 = 1/64, và có kết quả N0 =256, là lủy thừa của 2.
Chú ý là có sự mềm dẽo lớn khi chọn T và T0, tùy theo độ chính xác mong muốn và
khả năng tính toán sẵn có. Ta vừa đã chọn T = 0,03125 và có N0 = 128, cho dù chọn lựa
này cho sai số trùm phổ hơi cao.
Do tín hiệu có bước nhảy gián đoạn tại t = 0, nên mẩu thứ nhất (tại t = 0) có giá trị là
0,5, là trung bình các giá trị hai bên của gián đoạn, Ta tính Fr (DFT) từ các mẩu của
e -2t u (t ) từ phương trình (5.18a). Chú ý là Fr là mẩu thứ r của F(w), và các mẩu này được
cách quảng tại F0 = 1/T0 =0,25 Hz (w0 = p/2 rad/s).
Do Fr là tuần hoàn N0, Fr = F(r+256) sao cho F256 = F0. Do đó, ta cần vẽ Fr trong tầm
r = 0 đến 255 (không phải 256). Hơn nữa, do tính chu kỳ này, nên F-r = F(-r+256) và các
giá trị của Fr trong tầm r = – 127 đến – 1 giống hệt với các giá trị trong tầm từ r = 129
đến 255. Do đó, F127 = F129, F-129 = F130 . . . F-1 = F255. Hơn nữa, do tính đối xứng liên
hợp của biến đổi Fourier, F–r = Fr*, nên F–1 = F1*, F–2 = F2*, . . . , F–128 = F*128. Do đó,
ta chỉ cần Fr trong tầm r =0 đến N0/2 (trường hợp này là 128).

Hình 5.15 vẽ đồ thị của ½Fr½ và ÐFr và phổ biên độ và pha chính xác (vẽ bằng
đường liên tục) để so sánh. Chú ý là hầu như có thỏa thuận hoàn hảo giữa hai tập phổ. Ta
đã vẽ hai đồ thị chỏ với 28 điểm thay vì 128 điểm để hình ảnh rõ ràng. Các điểm này nằm
tại các khoảng 1/T0 =1/4 Hz hay w0 =1,5708 rad/s. Do đó 28 mẩu này, biểu diễn đồ thị
trong tầm w = 0 đến w = 28(1,5708) » 44 rad/s hay 7 Hz.
Trong thí dụ này, ta biết trước F(w) nên có thể có lựa chọn thông minh về B (hay
tần số lấy mẩu Fs). Trong thực tế, ta thường chưa biết trước được F(w). Thực ra, đây là
vấn đề ta phải cố xác định. Trong trường hợp này, cần dự đoán một cách thông minh về B
hay Fs từ các bằng chứng chi tiết. Bắt đầu giảm giá trị của T và tính toán lại phép biến đổi
cho đến khi có kết quả ổn định trong vòng số hạng cần có. Chương trình MATLAB, có
các thiết lập DFT dùng thuật toán FFT, được trình bày trong thí dụ C5.1. ¢

• Thí dụ dùng máy tính C5.1


Dùng DFT (được thiết lập dùng FFT, thuật toán biến đổi Fourier nhanh) để tính biến
đổi Fourier của e –2tu(t).

T = 0.015625; T0 = 4; N0 = T0/T;
t = 0:T:T*(N0 – 1); t = t’;
f = T*exp( - 2*t);
f(1) = T*0.5;
F = fft(f);
[Fp, Fm] =cart2pol(real(F), imag(F));
k = 0:N0 – 1; k = k’;
w =2*pi*k/T0;
subplot(211), plot (w(1:128),Fm(1:128))
subplot(212), plot (w(1:128),Fp(1:128)) •

¢ Thí dụ 5.7
Dùng DFT đẻ tìm biến đổi Fourier của 8rect (t).
Hàm cổng này và biến đổi Fourier được vẽ trong hình 5.16a và b. Để xác định giá trị
thời khoảng lấy mẩu T, trước hết ta cần quyết định băng thông cơ bản B. Trong hình
5.16b, ta thấy F(w) giảm hơi chậm theo w. Do đó, băng thông cơ bản hơi lớn hơn. Thí dụ,
tại B = 15,5 Hz (97,39 rad/s), F(w) = - 0,1643, vào khoảng 2% giá trị đỉnh tại F(0). Do
đó, băng thông cơ bản hơi cao hơn 16 Hz nếu ta dùng tiêu chuẩn 1% để tính toán băng
thông cơ bàn. Tuy nhiên, ta cố tình chọn B = 4 vì hai lý do: (1) để thấy ảnh hưởng của
trùm phổ và (2) dùng B > 4 sẽ cho số mẩu khổng lồ, không hiển thị được trên kích cở
giấy của sách mà không bị mất các thông tin cơ bản. Do đó, ta chấp nhận yếu tố xấp xỉ để
làm rõ ý niệm DFT trên đồ thị.

Việc lựa chọn B = 4 đưa đến thời gian lấy mẩu là T = 1/2B = 1/8. Nhìn lại lần nữa
phổ trong hình 5.16b, ta thấy việc lựa chọn độ phân giải tần số F0 = ¼ Hz là hợp lý.
Chọn lựa này cho ta bốn mẩu trong mổi búp của F(w). Trường hợp này T0 =1/ F0 = 4 giây
và N0 =T0/4 = 32. Độ rộng của f(t) chỉ có 1 giây. Ta phải làm lại mỗi 4 giây (T0 = 4), như
vẽ trong hình 5.16c, và lấy mẩu trong mỗi 1/8 giây. Chọn lựa này cho 32 mẩu (N0 =32).
Đồng thời,
1
f k = Tf (kT ) = f (kT )
8
Do f(t) =8 rect(t), các giá trị của fk là 1, 0 hay 0,5 (tại các điểm gián đoạn) như vẽ
trong hình 5.16c. Trong hình, fk được vẽ minh họa là hàm theo t cũng như k, cho thích
hợp.
Khi tìm DFT, ta giả sừ f(t) bắt đầu tại t = 0 (hình 5.14a), và lấy N0 mẩu trong
khoảng (0, T0). Tuy nhiên, trong trường hợp này thì f(t) lại bắt đầu tại t = -1/2. Khó khăn
này được giải quyết dễ dàng khi ta thực hiện DFT theo phương pháp này thực ra là DFT
của fk được lặp lại tuần hoàn mổi T0 giây. Hình 5.16c rõ ràng cho thấy việc lặp lại tuần
hoàn các đoạn trong khoảng từ - 2 đến 2 giây thì giống hệt việc lặp lại các đoạn của fk
trong khoảng từ 0 đến 4 giây. Do đó, bất chấp điểm xuất phát của f(t), ta luôn có thể các
mẩu của f(t) và phần mở rộng tuần hoàn trong khoảng từ 0 đến T0. Trong thí dụ này, các
giá trị 32 mẩu là
ì1 0 £ k £ 3 and 29 £ k £ 31
ï
f k = í 0 5 £ k £ 27
ï0,5 k = 4,28
î

Quan sát thấy mẩu cuối nằm tại t = 31/8, chứ không phải tại 4, do tín hiệu lặp lại bắt
đầu từ t = 4, và mẩu tại t = 4 giống với mẩu tại t = 0. Lúc này, N0 = 32 và W0 = 2p/32 =
p/16. Do đó [xem phương trình (5.18)]
31
Fr = å f k e - jr (p / 16) k
k =0
Giá trị của Fr được tính từ phương trình trên và vẽ trong hình 5.16d.
Các mẩu Fr cách nhau bởi F0 = (1/10) Hz. Trong trường hợp T0 = 4, nên độ phân
giải tần số F0 là (¼) Hz, như mong muốn. Tần số gấp Fs/2 = B = 4Hz tương ứng với
r = N0/2 =16. Do Fr là tuần hoàn N0 (N0 = 32), các giá trị của Fr khi r = - 16 đến n = - 1
thì giống như khi r = 16 đến n = 31. Thí dụ, F17 = F-15, F18 = F-14 , và tiếp tục. DFT cho
ta các mẩu của phổ F(w).
Để so sánh, hình 5.16d còn vẽ đường tô bóng của đặc tuyến 8sinc(w/2), chính là
biến đổi Fourier của 8rect(t). Các giá trị của Fr được tính từ phương trình DFT cho thấy
có sai số trùm phổ, thấy rõ khi ta so sánh hai đồ thị vẽ chồng nhau. Sai số của F2 vào
khoảng 1,3%. Tuy nhiên, sai số trùm phổ tăng nhanh theo r. Thí dụ, sai số của F6 vào
khoảng 12% và sai số của F10 vào khoảng 33%. Sai số của F14 lên đến 72%. Sai số phẩn
trăm tăng nhanh gần tần số gấp (r =16) do f(t) có bước nhảy gián đoạn, làm F(w) giảm
chậm theo 1/w. Do đó, ở gần tần số gấp, đuôi của phần nghịch (do trùm phổ) tự thân đã
rất gần F(w). Hơn nữa, giá trị cuối cùng là sai biệt giữa giá trị chính xác và giá trị gấp lại
(rất gần với trị chính xác). Do đó, sai số phần trăm gần tần số gấp (trường hợp này là r
=16) là rất cao, cho dù sai số tuyệt đối thì rất bé. Rõ ràng, với tín hiệu có bước nhảy gián
đoạn, sai số trùm phổ gần tần số gấp sẽ luôn luôn cao (theo nghĩa phần trăm), bất chấp
cách lựa chọn N0. Để đảm bảo bỏ qua được sai số trùm phổ tại trị r bất kỳ, ta phải chắc
chắn là N0 >> r. Điều này luôn có giá trị với mọi tín hiệu có bước nhảy gián đoạn. ¢

• Thí dụ dùng máy tính C5.2


Dùng DFT (được thiết lập dùng thuật toán FFT) tính biến đổi Fourier của 8rect(t). Vẽ
phổ Fourier.
Chương trình MATLAB để thiết lập phương trình DFT dùng thuật toán FFT sẽ được
trình bày ở phần dưới. Đầu tiên ta viết chương trình MATLAB để tại 32 mẩu của fk, rồi
tiếp đến tính DFT.
% (c52.m)
N0 = 32; k =0:N0 – 1;
f = [ones(1,4) 0.5 zeros(1,23) 0.5 ones(1,3)];
Fr =fft(f);
subplot(2,1,1), stem(k,f)
xlabel(‘k’); ylabel(‘fk’);
subplot(2,1,2), stem(k,Fr)
xlabel(‘r’); ylabel(‘Fr’); •

5.2-1 Một số đặc tính của DFT


Biến đổi Fourier rời rạc về cơ bản là biến đổi Fourier của tín hiệu đã lấy mẩu được
lặp lại tuần hoàn. Do đó, các đặc tính của biến đổi Fourier cũng dùng được cho DFT.

1. Tính tuyến tính


Nếu f k Û Fr và g k Û Gr , thì
a1 f k + a2 g k Û a1 Fr + a2Gr (5.28)
Phần chứng minh dễ dàng
2. Tính đối xứng liên hợp

FN0 -r = Fr* (5.29)


*
Dựa vào đặc tính đối xứng liên hợp của biến đổi Fourier (Fr =F–r) và đặc tính tuần hoàn
của DFT (F–r = FN0–r), nên ta chỉ cần tính phân nửa DFT khi fk là thực, phần còn lại là
lượng liên hợp.

3. Dời theo thời gian (Dời vòng)

f k -n Û Fr e - jrW0n (5.30)
Chứng minh:
Dùng phương trình (5.18b), tìm DFT nghịch của Fr e - jrW0n là
N 0 -1 N 0 -1
1 1
N0
å Fr e - jrW0ne jrW0k =
r =0 N0
åFe
r =0
r
jrW0 ( k - n )
= f k -n

4. Dời theo tần số


f k e jkW m Û Fr -m
0
(5.31)
Chứng minh: tương tự như trường hợp đặc tính dời theo thời gian trừ việc ta bắt đầu với
phương trình (5.18a)

5. Tích chập vòng (còn gọi là tích chập tuần hoàn)


fk Ä gk ó FrGr (5.23a)
và fk gk ó (1/N0) FrÄ Gr (5.32b)
Hai chuỗi tuần hoàn N0 là fk và gk có tích chập vòng được định nghĩa theo

N 0 -1 N 0 -1
fk Ä gk = å
n =0
f n g k -n = åg
n =0
n f k -n (5.33)

Để chứng minh (5.32a), ta tìm DFT của tích chập vòng của fk Ä gk là

æ
N 0 -1 N 0 -1
ö - jrW0k N0 -1 æ N0 -1 - jrW0 k ö
N 0 -1

å çå n n÷
ç
k = 0 è n =0
f g ÷e = å f n ç å k -n
ç g e ÷ å f n (Gr e
÷ = - jrW0 n
) = Fr Gr
ø k =0 è n =0 ø n =0
Dùng phương pháp tương tự để chứng minh (5.32b)
Trường hợp chuỗi không tuần hoàn, tích chập có thể được xem theo hai chuỗi,
trong đó có một chuỗi cố định và chuỗi kia thì nghịch và di chuyển qua chuỗi cố định,
mỗi lần một số hạng. Nếu hai chuỗi đều tuần hoàn N0, cấu hình lặp lại sau khi chuỗi dời
N0. Rõ ràng là tích chập fk Ä gk trở thành tích tuần hoàn N0 (tích vòng N0) (N0 - periodic),
và dạng tích chập này được quan sát dễ dàng như vẽ trong 5.17 cho trường hợp N0 = 4.
Chuỗi trong (inner sequence) fk theo chiều kim đồng hồ và cố định. Chuỗi ngoài gk là
nghịch nên ngược chiều kim đồng hồ. Chiều này quay theo chiều kim đồng hồ mỏi lần
một đơn vị. Ta nhân các số trùng lặp (overlapping) và cộng lại. Thí dụ, giá trị fk Ä gk tại
k = 0 là (hình 5.17)
f0g0 + f1g3 + f2g2 + f3g1

và giá trị của fk Ä gk tại k = 1 là (hình 5.17)


f0g1 + f1g0 + f2g3 + f3g2
và tiếp tục

Ứng dụng của DFT


DFT không chỉ hữu ích khi tính biến đổi Fourier trực tiếp và biến đổi Fourier nghịch,
mà còn dùng được trong các ứng dụng khác như tích chập, tương quan và lọc. Việc dùng
thuật toán FFT hiệu quả được thảo luận trong phần 5.3 càng làm tăng thêm tính hấp dẫn
của DFT.

Phép tích chập tuyến tính


Gọi f(t) và g(t) là hai tín hiệu cần làm tích chập. Thông thường, các tín hiệu này có
độ độ rộng theo thời gian khác nhau. Để thực hiện phép tích chập từ các mẩu, ta cần lấy
mẩu chúng với cùng tốc độ lấy mẩu (không thấp hơn tốc độ Nyquist của một trong hai tín
hiệu). Gọi fk (0 £ k £ N1 – 1) và gk (0 £ k £ N2 – 1) là chuỗi rời rạc biểu diễn các mẩu
này, thì
c(t) = f(t) * g(t)
và nếu ta định nghĩa ba chuỗi này là fk = Tf(kT), gk = Tg(kT) và ck = Tc(kT), thì
ck = fk * gk
với định nghĩa tổng chập tuyến tính của hai chuỗi fk và gk là
fk * gk = åf
n= -¥
n g k -n

Từ đặc tính chất về độ rộng của tích chập, ck tồn tại với 0 £ k £ N1+N2 – 1. Để dùng
được kỹ thuật DFT của tích chập vòng, ta cần chắc chắn là tích chập vòng sẽ có cùng kết
quả với tích chập tuyến tính. Nói cách khác, tín hiệu có được của phép tích chập vòng
phải có cùng độ dài (N1 +N2 – 1) như của tín hiệu có từ phép tích chập tuyến tính. Bước
này có thể thực hiện bằng cách cộng thêm N2 – 1 mẩu giả (dummy) có giá trị zêrô vào gk
(đệm zêrô). Phương pháp này thay đổi độ dài của fk và gk thành N1+N2 – 1. Vậy tích chập
vòng giống hệt tích chập tuyến tính trừ việc lặp lại tuần hoàn với chu kỳ N1+N2 – 1. Phần
10.6-3 sẽ chứng minh nghiêm ngặt tính chất này.
Ta có thể dùng DFT để tính tích chập fk * gk theo ba bước sau:
1. Tìm các DFT là Fr và Gr tương ứng với fk và gk được đệm zêrô thích hơp.
2. Nhân Fr với Gr.
3. Tìm IDFT của Fr Gr. Phương pháp tích chập này được thiết lập dùng thuật toán
biến đổi Fourier nhanh (sẽ thảo luận sau), được gọi là tích chập nhanh.

Lọc
Ta thường nghĩ đến lọc theo ý nghĩa là giải pháp thiết lập phần cứng (cụ thể là, xây
dựng mạch với các phần tử RCL và mạch khuếch đại thuật toán). Tuy nhiên còn có giải
pháp phần mềm [thuật toán từ máy tính nhằm tạo ngõ ra y(t) từ ngõ vào cho trước f(t)].
Mục tiệu này có thể thực hiện dùng DFT. Nếu f(t) là tín hiệu cần lọc, thì tìm được Fr, là
DFT của fk. Phổ của Fr được định dạng (lọc) như mong muốn bằng cách nhân Fr với Hr,
là các mẩu của hàm truyền mạch lọc H(w) [Hr = H(rw0)]. Sau cùng, ta lấy IDFT của Fr Hr
để có ngõ ra mạch lọc yk [yk = Ty(kT)]. Phương pháp này được minh họa trong thí dụ sau.

¢ Thí dụ 5.8

Tín hiệu f(t) trong hình 5.18a đi qua mạch lọc thông thấp lý tưởng có hàm truyền
H(w) vẽ trong hình 5,18b. Dùng DFT tìm ngõ ra mạch lọc.
Ta đã tìm được DFT 32 điểm của f(t) (xem hình 5.16d). Tiếp đến ta nhân Fr với Hr.
Để tìm Fr, ta dùng F0 = ¼ khi tính DFT 32 điểm của f(t). Do Fr là tuần hoàn 32, nên Hr
cũng là tuần hoàn 32 với các mẩu cách nhau ¼ Hz. Điều này có nghĩa là Hr phải lặp lại
từng 8 Hz hay 16p rad/s (xem hình 5.18c). 32 mẩu của Hr trong khoảng (0 £ w £ 16p)
như sau:
ì1 0 £ r £ 7 and 25 £ r £ 31
ï
H r = í 0 9 £ r £ 23
ï0,5 r = 8,24
î
Ta nhân Fr với Hr. Các mẩu tín hiệu ngõ ra mong muốn yk tìm bằng cách biến đổi nghịch
DFT của Fr Hr. Tín hiệu ngõ ra được vẽ trong hình 5.18d. Bảng 5.1 ghi các giá trị fk , Fr,
Hr , Yr và yk . ¢

• Thí dụ dùng máy tính C5.3


Giải thí dụ 5.8 dùng MATLAB
Đoạn chương trình MATLAB trong thí dụ C5.2, ta đã có Fr 32 điểm, được lưu trong
file ‘c52.m’. Ta có thể nhập Fr trong môi trường MATLAB dùng lệnh ‘c53.m’
C52;
N0 = 32; k = 0; N0 – 1;
H = [ones(1,8) 0.5 zeros(1,15) 0.5 ones(1,7)];
Yr = H.*Fr;
yk = ifft(Yr);
stem(k, yk) •

5.3 Biến đổi Fourier nhanh (FFT)


Có thể giảm thiểu đáng kể số lượng các tính toán cần cho DFT dùng thuật toán do
Tukey và Cooley đề ra năm 1965. Thuật toán này được gọi là biến đổi Fourier nhanh
(FFT: Fast Fourier Transform), giảm số lượng tính toán từ bậc N02 thành N0logN0. Để
tính các mẩu Fr từ phương trinh (5.18a), ta cần N0 phép nhân phức tạp và N0 - 1 phép
cộng phức tạp. Để tính N0 cho các giá trị (Fr với r = 0, 1, . . . , N0 - 1), ta cần có tổng là
N02 phép tính nhân phức tạp và N0(N0 – 1) phép cộng phức tạp. Khi N0 lớn, các phép tính
này tiêu tốn rất nhiều thời gian, ngay cả với các máy tính mạnh đi nửa.

N0 fk Fr Hs FrHs yk
0 1 8.000 1 8.000 .9385
1 1 7.179 1 7.179 1.009
2 1 5.022 1 5.027 1.090
3 1 2.331 1 2.331 .9123
4 0.5 0.000 1 0.000 .4847
5 0 -1.323 1 -1.323 0.08884
6 0 -1.497 1 -1.497 -.05698
7 0 -.8616 1 -.8616 -.01383
8 0 0.000 0.5 0.000 .02933
9 0 .5803 0 0.000 .004837
10 0 .6642 0 0.000 -.01966
11 0 .3778 0 0.000 -.002156
12 0 0.000 0 0.000 .01534
13 0 -.2145 0 0.000 .0009828
14 0 -.1949 0 0.000 -.01338
15 0 -.06964 0 0.000 -.0002876
16 0 0.000 0 0.000 .01280
17 0 -.06964 0 0.000 -.0002876
18 0 -.1989 0 0.000 -.01338
19 0 -.2145 0 0.000 .0009828
20 0 0.000 0 0.000 .01534
21 0 .3778 0 0.000 -.002156
22 0 .6682 0 0.000 -.01966
23 0 .5803 0 0.000 .004837
24 0 0.000 0.5 0.000 .3933
25 0 -.8616 1 -.8616 -.01383
26 0 -1.497 1 -1.497 -.05698
27 0 -1.323 1 -1.323 .08884
28 0.5 0.000 1 0.000 .4847
29 1 2.331 1 2.331 .9123
30 1 5.027 1 5.027 1.090
31 1 7.179 1 7.179 1.090

Tuy có nhiều biến thể từ thuật toán Tukey – Cooley, nhưng có thể chia thành hai
nhóm chính: decimation theo thời gian và decimation theo tần số. Thuật toán được đơn
giản hóa nếu ta chọn N0 theo lủy thừa bậc 2, cho dù lựa chọn này không bị bắt buột. Để
thuận tiện, định nghĩa
WN 0 = e - ( j 2p / N0 ) = e - jW0 (5.34)
Sao cho
N 0 -1
Fr = åfW
k =0
r
kr
N0 0 £ r £ N0 - 1 (5.35a)
N 0 -1
1
Và fr =
N0
åFW
r =0
r
- kr
N0 0 £ k £ N0 - 1 (5.35b)

Thuật toán decimation theo thời gian


Ở đây ta chia chuỗi dữ liệu N0 điểm fk thành hai chuỗi (N0/2) điểm bao gồm các
mẩu có số thứ tự lần lượt chẵn và lẻ, như sau:
f , f , f 4 , L , f N0 -1 f1 , f 3 , f 5 , L , f N0 -1
10 42442444 3 144 42444 3
chuôi g k chuôi hk

Vậy, từ phương trình (5.35),


N0 N0
-1 -1
2 2
Fr = åf
k =0
2k WN20kr + å f 2 k +1WN( 20 k +1) r
k =0
(5.36)
Đồng thời, do
W N0 = WN20 (5.37)
2
Ta có
N0 N0
-1 -1
2 2
Fr = åf
k =0
2k W Nkr0 + WNr0 åf
k =0
W Nkr0 = Gr + WNr0 H r
2 k +1 0 £ r £ N0 - 1 (5.38)
2 2
Trong đó Gr và Hr là các DFT (N0/2) điểm của các chuỗi số chẵn và số lẻ lần lượt là gk và
hk. Đồng thời, Gr và Hr đã là DFT (N0/2) điểm, cũng là tuần hoàn (N0/2). Do đó
G æ N 0 ö = Gr và H æ N0 ö = H r (5.39)
r +ç ÷ r +ç ÷
è 2 ø è 2 ø
Hơn nữa
æN ö N0
r +ç 0 ÷
W = W WNr0 = e - jp WNr0 = -WNr0
N0
è 2 ø 2
N0 (5.40)
Từ phương trình (5.38), (5.39) và (5.40), ta có
F æ N0 ö = Gr - WNr0 H r (5.41)
r +ç ÷
è 2 ø
Đặc tính này có thể dùng để giảm thiểu số lượng tính toán. Ta có thể tính (N0/2) điểm
đầu tiên (0£ n £ (N0/2) – 1) của Fr dùng phương trình (5.38) và tính (N0/2) điểm cuối
dùng phương trình (5.41) là:
N
Fr = Gr + WNr0 H r 0 £ r £ 0 -1 (5.42a)
2
N
F æ N 0 ö = Gr - WNr0 H r 0 £ r £ 0 -1 (5.42b)
r +ç ÷ 2
è 2 ø
Do đó, có thể tính DFT N0 điểm bằng cách hai DFT (N0/2) điểm, như phương trình
(5.42). Các phương trình này có thể được biểu diễn một cách thuận tiện dùng graph tín
hiệu như vẽ trong hình 5.19. Câu trúc này được gọi là bướm (butterfly). HÌnh 5.20a cho
thấy thiết lập của phương trình (5.39) cho trường hợp N0 = 8.

Bước kế tiếp là tính các DFT (N0/2) điểm Gr và Hr. Ta lặp lại các bước này bằng
cách chia gk và hk thành hai chuỗi (N0/2) điểm tương ứng với các mẩu thứ tự chẵn và lẻ.
Tiếp đến ta tiếp tục các bước này cho đến khi có được DFT một điểm. Các hình 5.20a,
5.20b, và 5.20c cho thấy là các DFT hai điểm thì không cần phép nhân.
Để đếm số phép tính cần có trong bước đầu tiên, giả sử ta đã biết Gr và Hr. Phương
trình (5.42) chỉ rõ là để tính tất cả N0 điểm của Fr, ta cần N0 phép cộng phức tạp và (N0/2)
phép nhân phức tạp (tương ứng với WNr0 H r ).
Trong bước thứ hai, để tiếp tục tính DFT (N0/2) điểm Gr từ DFT (N0/4), ta cần (N0/2)
phép cộng phức tạp và (N0/4) phép nhân phức tạp. Ta cần cùng số lượng tính toán cho Hr.
Do đó, trong bước thứ hai, ta có N0 phép cộng phức tạp và (N0/2) phép nhân phức tạp. Số
lượng tính toán cần thiết trong mỗi bước là giống nhau. Do cần có tổng là log2N0 bước để
đạt được DFT một điểm, ta cần có tổng là N0log2N0 phép cộng phức tạp và (N0/2)log2N0
phép nhân phức tạo, để tính được DFT N0 điểm.
Phương pháp tìm IDFT giống hệt như khi tìm DFT trừ việc dùng WN 0 = e j ( 2p / N0 ) thay
vì e - j ( 2p / N0 ) (ngoài ra, bộ nhân là 1/N0). Một thuật toán FFT khác, là thuật toán
decimation theo tần số, tương tự như thuật toán decimation theo thời gian. Chỉ có một
khác biệt là thay vì chia fk thành hai chuỗi thứ tự chẵn và lẻ, ta chia fk thành thành hai
chuỗi tạo từ (N0/2) số đầu và (N0/2) số cuối, xử lý với cùng phương pháp cho đến khi
một điểm đơn DFT đạt cá bước log2N0. Tổng số phép tính trong thuật toán này giống như
trường hợp decimataion theo thời gian.

Đối ngẫu của định lý lấy mẩu cho rằng các tín hiệu có thời gian giới hạn t giây thì
có thể khôi phục phổ F(w) của chúng từ các mẩu của F(w) lấy tại các khoảng đồng đều
không lớn hơn 1/t Hz. Nói cách khác, phổ có thể được lấy mẩu với tốc độ không nhỏ hơn
t mẩu/Hz.

5.4 Phụ chương 5.1


Ta chứng minh
N 0 -1
ì N m = 0,± N 0 ,±2 N 0 , L
åe jmW0 k
=í 0 (5.43)
k =0 î0 otherwise
jmW0k
Nhắc lại W0N0 = 2p và e = 1 với m = 0, ±N0, ±2N0, . . ., sao cho
N 0 -1 N 0 -1

å e jmW0k =
k =0
å1 = N
k =0
0 với m = 0, ±N0, ±2N0, . . .,

Để tính tổng của các giá trị khác của m, ta chú ý là tổng của vế trái của phương trình
(5.43) là chuỗi hình học với công sai là a = e jmW0 . Do đó (xem phần B.7-4)
N 0 -1
e jmW0 N0 - 1
å
k =0
e jmW0 k
=
e jmW 0
- 1
=0 ( e jmW0 N 0 = e j 2pm = 1 )

5.5 Tóm tắt


Tín hiệu có băng thông giới hạn B Hz có thể được khôi phục chính xác từ các mẩu
của chúng nếu tốc độ lấy mẩu Fs > 2B Hz (định lý lấy mẩu). Phương pháp khôi phục này,
dù thực hiện được về mặt lý thuyếtm nhưng có nhiều vấn đề trong thực tế như phải cần
bộ lọc với độ lơi zêrô trong một dải (nhiều dải) tần số. Các bộ lọc này là không thể thực
hiện được hay thực hiện được với vô số các khâu trễ. Do đó, trong thực tế, luôn có sai số
khi khôi phục tín hiệu từ các mẩu của chúng. Hơn nữa, các tín hiệu thực tế thường không
có băng thông giới hạn, điều này làm tăng sai số (sai số trùm phổ) kh khôi phục tín hiệu
từ các mẩu. Sai số trùm phổ có thể được giảm thiệu bằng cách giới hạn băng thông của
tín hiệu trong băng thông hiệu quả.
Định lý lấy mẩu rất quan trọng trong phân tích, xử lý, và truyền dẫn tín hiệu do cho
phép ta thay tín hiệu liên tục theo thời gian bằng chuỗi rời rạc các số hạng. Do đó, việc
xử lý tín hiệu liên tục tương được với việc xử lý chuỗi rời rạc các số hạng. Điều này dẫn
ta trực tiếp đến lĩnh vực lọc số (hệ thống rời rạc theo thời gian). Trong lĩnh vực thông tin,
truyền dẫn bản tin liên tục theo thời gian giảm thiểu thành việc truyền dẫn chuỗi các số
hạng. Điều này mở cửa cho nhiều kỹ thuật mới trong thông tin tín hiệu liên túc bằng
chuỗi các xung.
Tính đối ngẫu của định lý lấy mẩu cho rằng tin hiệu có thời gian giới hạn t giây thì
phổ F(w) có thể được khôi phục từ các mẩu của F(w) lấy tại các thời khoảng đồng đều
không lớn hơn 1/t Hz. Nói cách khác, phổ cần được lấy mẩu với tốc độ không nhỏ hơn t
mẩu/Hz.
Để tính toán số được biến đổi Fourier trực tiếp hay nghịch, ta cần có quan hệ giữa
các mẩu của f(t) và F(w). Định lý lấy mẩu và đối ngẫu cung cấp quan hệ định lượng theo
dạng của biến đổi Fourier rời rạc (DFT). Tính toán DFT rất dễ khi dùng thuật toán biến
đổi Fourier nhanh (FFT), giảm thiểu số lượng tính toán từ khoảng N02 thành N0log N0.

Tham khảo
1. Linden, D. A.., “A Discussion of Sampling Theorem.” Proc. IRE, vol. 47. pp 1219
– 1226, July 1959.
2. Bracewell, R.N., The Fourier Transform and Its Applications, 2nd revised ed.,
McGraw-Hill, New York. 1986.
3. Bennett, W.R., Introduction to Signal Transmission, McGraw-Hill, New York.
1970.
4. Lathi, B.P., Linear Systems and Signals, Berkeley-Cambridge Press, Carmichael,
CA, 1992.
5. Cooley, J.W., and J.W., Tukey, “An Algorithm for the Machine Calculation of
Complex Fourier Series, “Mathematics of Computation, Vol. 19, p.297 – 301,
Aprli 1965.

Bài tập
5.1-1 Hình P5.1-1 vẽ phổ Fourier của các tín hiệu f1(t) và f2(t). Tìm tốc độ lấy mẩu
Nyquist của tín hiệu f1(t), f2(t), f12(t), f23(t), và f1(t) f2(t).

5.1-2 Xác định tốc độ lấy mẩu Nyquist và khoảng lấy mẩu Nyquist của các tín hiệu
(a) sinc2(100pt) (b) 0,01sinc2(100pt) (c) sinc (100pt) + 3sinc2(60pt)
(d) sinc (50pt) sinc (100pt).
5.1-3 Tín hiệu f(t) = sinc (100pt) được lấy mẩu (dùng xung cách khoảng đồng đều) với
các tốc độ (a) 150 Hz (b) 200 Hz (c) 300 Hz. Với mỗi trường hợp (i) Vẽ phổ tín
hiệu đã lấy mẩu, (ii) Nếu bạn khôi phục được f(t) từ tín hiệu lấy mẩu, giải thích?
(iii) Nếu cho tín hiệu đã lấy mẩu qua mạch lọc thông thấp lý tưởng có băng thông
100 Hz, vẽ phổ của tín hiệu ra.

5.1-4 Hình P5.1-4 vẽ mạch giử bậc zêrô thực tế


(a) Tìm đáng ứng xung đơn vị của mạch. Hướng dẫn: Nhắc lạ đáp ứng xung
h(t) là ngõ ra của mạch hình P5.1-4 khi ngõ vào f(t) = d(t).
(b) Tìm hàm truyền H(w), và vẽ ½ H(w)½.
(c) Chứng tõ là khi tín hiệu đã lấy mẩu f (t ) là ngõ vào của mạch, thì ngõ ra là
xấp xỉ bậc thang của f(t). Thời khoảng lấy mẩu là T.

5.1-5 (a) Mạch giử bậc một còn có thể được dùng để khôi phục tín hiệu f(t) từ các mẩu.
Đáp ứng xung của mạch là
æ t ö
h(t ) = Dç ÷
è 2T ø
Với T là thời khoảng lấy mẩu. Xét tín hiệu lấy mẩu tiêu biểu f (t ) và chứng tõ là
mạch này thực hiện phép nội suy tuyến tính. Nói cách khác, ngõ ra của mạch lọc
gồm đỉnh các mẩu kết nối bằng các đoạn đường thẳng. Dùng phương pháp thảo
luận ở phần 5.1-1 (hình 5.3b).
(b) Tìm hàm truyền của mạch lọc nay và đáp ứng biên độ, rồi so sánh với mạch
lọc lý tưởng cần thiết để khôi phục tín hiệu.
(c) Mạch lọc này là không nhân quả (noncausal) là không thực hiện được. Bằng
cách làm trễ đáp ứng xung để mạch lọc thực hiện được. Cho biết khâu trể tối
thiểu cần thiết để mạch là thực hiện được? Ảnh hưởng của khâu trễ lên tín
hiệu được khôi phục và đáp ứng tần số ra sao?
(d) Chứng tõ là mạch lọc trong phần (c) có thể thực hiện từ mạch lọc vẽ trong
hình P5.1-4 nối đuôi với một mạch lọc y hệt mạch lọc này. HƯớng dẫn:
chứng tõ là đáp ứng xung của mạch là D(t/2T).

5.1-6 Tín hiệu f(t) = sinc(200pt) được lấy mẩu dùng chuỗi xung tuần hoàn pT(t) vẽ trong
hình P5.1-6. Tìm và vẽ phổ của tín hiệu đã lấy mẩu. Nếu có thể khôi phục f(t).
Giải thích? Nếu tín hiệuđã lấy mẩu đi qua mạch lọc thông thâp lý tưởng có năng
thông 100 Hz và độ lợi đơn vị, tìm ngõ ra của mạch lọc. Tìm ngõ ra mạch lọc nếu
băng thông là B Hz, với 100 < B < 150. Điều gì xảy ra nếu băng thông lớn hơn
150 Hz?
5.1-7 Trong thí dụ 5.3, ta lấy mẩu tín hiệu f(t) bằng cách nhân tín hiệu này với chuỗi
xung pT(t), và có được tín hiệu được lấy mẩu vẽ trong hình 5.8d. Phương pháp
này được gọi là lấy mẩu tự nhiên. Hình P5.1-7 vẽ dạng lấy mẩu thường gọi là lấy
mẩu dùng đỉnh phẳng (flat top sampling) của cùng tín hiệu f(t) = sinc2(5pt).
(a) Chứng tõ là có thể khôi phục f(t) dùng phương pháp lấy mẩu đỉnh phẳng nếu
tốc độ lấy mẩu không bé hơn tốc độ Nyquist.
(b) Nếu khôi phục tín hiệu f(t) bằng phép lẩy mẩu đỉnh phẳng. Giải thích?
(c) Tìm biểu thức của phổ tín hiệu đã lấy mẩu F (w ) và vẽ phát thảo phổ. Hướng
dẩn: Đầu tiên hảy chứng tõ là tín hiệu có đỉnh phẳng có thể được sản sinh
bằng cách cho tín hiệu f(t) dT(t) đi qua mạch lọc có đáp ứng xung là h(t) =
pT(t). Để khôi phục tín hiệu từ các mẩu, hảy thực hiện quá trình ngược lại.
5.1-8 Đĩa CD ghi tín hiệu âm thanh được số hóa dùng PCM. Giả sử băng thông của tín
hiệu âm thanh là 15 kHz.
(a) Cho biết tốc độ lấy mẩu là bao nhiêu?
(b) Nếu các mẩu Nyquist được lượng tử hóa thành 65536 mức (L = 65536) rồi
được mã hóa nhị phân, cho biết cần bao nhiêu bit để mã hóa các mẩu này?
(c) Cho biết số bit/s cần thiết để mã hóa tín hiệu âm thanh ?
(d) Với lý do thực tế đã thảo luận trong tài liệu, tín hiệu được lấy mẩu với tốc độ
lớn hơn tốc độ Nyquist. Các CD trong thực tế dùng 44.100 mẩu/s. Nếu dùng
L = 65 536, xác định số xung/s cần thiết để mã hóa tín hiệu.
5.1-9 Tín hiệu TV (viđêo và âm thanh) có băng thông là 4,5 MHz. Tín hiệu này được
lấy mẩu, lượng tử và mã hóa nhị phân để có tín hiệu PCM.
(a) Tìm tốc độ lấy mẩu nếu tín hiệu được lấy mẩu với tốc độ cao hơn tốc 9dộ
Nyquist 20%.
(b) Nếu các mẩu được lượng tử thành 1024 mức, cho biết cần bao nhiêu xung nhị
phân để mã hóa các mẩu
(c) Tìm tốc độ xung nhị phân (bit/s) của tín hiệu mã hóa nhị phân.

5.1-10 Chứng tõ là tín hiệu không thể đồng thời có giới hạn về thời gian và về băng
thông. Hướng dẫn:Hảy chứng tỏ là các giả định ngược đưa đến nghịch lý. Gải sử
tín hiệu đồng thời có giới hạn về thời gian và về băng thông nên F(w) =0 với
w > 2pB . Trong trường hợp này F (w ) = F (w )rect ( 4pwB ' ) với B’> B. Điều này tức
là f(t) bằng với f(t)*2B’sinc(2pB’t). Tín hiệu sau này không thể có giới hạn về
thời gian do các phần đuôi của hàm sinc tiến về vô cùng.

5.2-1 Tín hiệu có giới hạn về thời gian 10ms và có băng thông cơ bản 10 kHz, xác định
số mẩu tín hiệu cần thiết N0 để tính FFT bậc lủy thừa 2 với độ phân giải tần số F0
ít nhất là 50Hz. Giải thích nếu không cần có đểm zêrô (zero padding)?

5.2-2 Để tính DFT của tín hiệu f(t) trong hình P5.2-1, viết chuỗi fk (với k=0 đến N0 –1)
nếu độ phân giải tần số F0 không bé hơn 0,25 Hz. Giả sử băng thông cơ bản (tần
số gấp) của f(t) ít nhất là 3 Hz. Không cần tính DFT, chỉ viết chuỗi fk thích hợp.
5.2-3 Tìm giá trị N0 và T thích hợp để tính DFT của tín hiệu e–tu(t). Dùng băng thông là
nơi đáp ứng biên độ giảm 1% so với trị định (tại w = 0). Tiếp đến, dùng tiêu
chuẩn 99% năng lượng để xác định băng thông (xem thí dụ 4.16).

5.2-4 Làm lại bải tập 5.2-3 với tín hiệu


2 2 -w
f (t ) = 2 Hướng dẫn: 2 Û 2pe
t +1 t +1

5.2-5 Viết chuỗi thích hợp fk và gk cần thiết để tính tích chập của f(t) và g(t)) (vẽ trong
hình P5.2-5) dùng DFT. Dùng T = 1/8.

You might also like