Bài giảng Tín hiệu và dùng chuỗi - Chương 5: Lấy mẩu tín hiệu

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

pdf 37 trang phuongnguyen 5160
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tín hiệu và dùng chuỗi - Chương 5: Lấy mẩu tín hiệu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Tín hiệu và dùng chuỗi - Chương 5: Lấy mẩu tín hiệu

Bài giảng Tín hiệu và dùng chuỗi - Chương 5: Lấy mẩu tín hiệu
 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()= 0 với 
B  2 ] 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  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 T(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 )(tf 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. 
  
n
T nTtnTfttftf )()()()()(  (5.1) 
Để tìm )(F , biến đổi Fourier của )(tf , 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(). Biến đổi của 
thừa số thứ hai ttf scos)(2 là F( –s ) + F( +s ) (xem phương trình (4.41), cho 
thấy phổ F() dời s và –s. Tương tự, biến đổi Fourier của thừa số thứ ba 
ttf s2cos)(2 là F( –2s ) + F( +2s ), cho thấy phổ F() dời 2s và –2s, và tiếp 
tục cho tới vô hạn. Điều này tức là phổ )(F gồm F() lặp lại theo chu kỳ s = 2 /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 đó 
 
n
snF
T
F )(
1
)(  (5.4) 
 Nếu muốn khôi phục f(t) từ )(tf , ta phải khôi phục được F() từ )(F . 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 . 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 đó 
B
T
2
1
 (5.6) 
 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 )5(sin)( 2 tctf (hình 5.2a) có phổ  202,0)( F (hình 5.2b). Băng thông của 
tín hiệu là 5 Hz (10 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  202)(/1 TFT 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() Nhận xét 
5 Hz 0,2 20 Lấy mẩu thiếu 
10 Hz 0,1 202 Tốc độ Nyquist 
20 Hz 0,05 204 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 F
T
 lặp lại sau mỗi 5Hz (10 rad/s). Các phổ liên tiếp trùng lắp, như vẽ trong hình 
5.2d, và phổ F() không thể được khôi phục từ )(F ; tức là f(t) không thể được khôi 
phục 
 từ các mẩu )(tf 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 gồm các thành phần phổ )(1 F
T
không trùng lắp lặp lại 
từng 10 Hz. Do đó, phổ F() có thể được khôi phục từ )(F 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() gồm các gồm các thành phần phổ )(1 F
T
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() có thể 
được khôi phục từ )(F 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). 
 Bài tập E5.1 
 Tìm tốc độ Nyquist là khoảng Nyquist cho tín hiệu: 
 (a) sinc(100 t) và sinc(100 t) + sinc(50 t) . 
Đáp số: khoảng Nyquist là 0,01 giây và tốc độ Nyquist là 100Hz cho cả hai tín hiệu.  
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()), 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à: 
B
TrectH


4
)( (5.7) 
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à 
T
trect , 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 
)(tf , Từng mẩu của )(tf , đã đượ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 
kTt và có thể viết thành )()( kTtkTf  . 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 )(tf 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() của bộ lọc là biến đổi Fourier của đáp ứng xung 
T
trect . Giả 
sử, ta dùng tốc độ Nyquist; tức là T = 1/2B. 
 )2()( Btrect
T
t
rectth 
Và 
BB
T
cTH
42
1
2
sin)(

 (5.8) 
Đáp ứng biên độ )(H 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 
T
t
2
 , 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() là 
 )2(sin2)( BTcBTth (5.9a) 
Giả sử lấy mẩu với tốc độ lấy mẩu Nyquist; tức là 2BT =1, thì 
 )2(sin)( BTcth (5.9b) 
  
k
kTthkTftf )()()( 
  
k
kTtBckTftf )](2[sin)()( (5.10a) 
  
k
kBtckTftf )2(sin)()( (5.10b) 
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 (2 Bt) 
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 bao gồm 
F() đượ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 )4 Bs  . 
Kết quả là )(F , bao gồm F() đượ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() từ )(F 
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() (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 gồm các chu kỳ chồng 
lắp của F() 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 không còn đủ thông tin về F(), 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 
)(tf . 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() mà là một phiên bản F() bị méo dạng do hai nguyên nhân riêng biệt sau: 
1. Phần đuôi của F() 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 )(tf 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 )(tf 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 
)(tf 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 
 
1
0 )cos()(
n
nsnT tnCCtp  
T
s

2
Và 
 
 1
0 )cos()()()()(
n
nsnT tnCCtftptftf  
 
1
0 )cos()()(
n
nsn tntfCtfC  (5.11) 
Tín hiệu đã lấy mẩu )(tf gồm có )(0 tfC , ),cos()( 11  ttfC s ),2cos()( 22  ttfC s 
. Chú ý là thừa số thứ nhất )(0 tfC 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 s, 2s, 3s, . . . , 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 )(tf qua mạch lọc thông thấp, 
để có s > 4 B ( 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 )5(sin)( 2 tctf được lấy mẩu dùng 
chuỗi xung vuông )(tpT vẽ ở hình 5.8c. Chu kỳ của )(tpT là 0,1 giây, để có tần số cơ 
bản là 10Hz. Do đó  20 s . Chuỗi Fourier của )(tpT có thể biểu diễn thành 
 
1
0 cos)(
n
snT tnCCtp  
Dùng phương trình (3.66) ta có 
4
1
0 C và 42 sin nnnC ; tức là 
,
4
1
0 C ,
2
1
 C ,
1
2
 C ,
3
2
3
 C ,04 C ,
5
2
5
 C 
Do đó 
  ttfttfttftftptftf T 
60cos)(
3
2
40cos)(
1
20cos)(
2
)(
4
1
)()()( 
Và 
)]40()04([
2
1
)]20()20([
2
1
)(
4
1
)(  
  
 FFFFFF 
  )]60()06([
23
1
  
FF 
Trong trường hợp này  202,0)( F . Phổ )(F vẽ trong hình 5.8e. Quan sát thấy 
phổ gồm )(F được lặp lại theo chu kỳ 20 rad/s (10Hz). Do đó, không có trùng lắp 
giữa các chu kỳ, và )(F 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à 
 )(
4
1
)( tfty 
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 ... lặp lại 
từng 8 Hz hay 16 rad/s (xem hình 5.18c). 32 mẩu của Hr trong khoảng (0  16 ) 
như sau: 
24,85,0
2390
3125701
r
r
randr
H r 
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 N0
2
 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à 
N0
2 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 
 00
0
)/2(  jNjN eeW
 (5.34) 
Sao cho 
 
1
0
0
0
N
k
kr
Nrr WfF 10 0 Nr (5.35a) 
Và 
1
00
0
0
1 N
r
kr
Nrr WF
N
f 10 0 Nk (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: 
  

  

kk hchuôi
N
gchuôi
N ffffffff 15311420 00 ,,,,,,,, 
Vậy, từ phương trình (5.35), 
 
1
2
0
)12(
12
1
2
0
2
2
0
0
0
0
N
k
rk
Nk
N
k
kr
Nkr WfWfF (5.36) 
Đồng thời, do 
 2
2
00 NN
WW (5.37) 
Ta có 
 r
r
Nr
N
k
kr
Nk
N
k
r
N
kr
Nkr HWGWfWWfF 0
0
0
0
00
1
2
0 2
12
1
2
0 2
2 
 10 0 Nr (5.38) 
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 đó 
 rN
r
GG 
2
0
 và rN
r
HH 
2
0
 (5.39) 
Hơn nữa 
 rN
r
N
jr
N
N
N
N
r
N WWeWWW 000
0
0
0
0
22 
 (5.40) 
Từ phương trình (5.38), (5.39) và (5.40), ta có 
 r
r
NrN
r
HWGF
00
2
 (5.41) 
 Đặ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à: 
 r
r
Nrr HWGF 0 12
0 0 
N
r (5.42a) 
 r
r
NrN
r
HWGF
00
2
 1
2
0 0 
N
r (5.42b) 
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 r
r
N HW 0 ). 
 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 )/2( 0
0
Nj
N eW
 thay 
vì 
)/2( 0Nje
 (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  giây thì 
có thể khôi phục phổ F() của chúng từ các mẩu của F() lấy tại các khoảng đồng đều 
không lớn hơn 1/ Hz. Nói cách khác, phổ có thể được lấy mẩu với tốc độ không nhỏ hơn 
 mẩu/Hz. 
5.4 Phụ chƣơng 5.1 
 Ta chứng minh 
 

1
0
000
0
0
0
,2,,0N
k
kjm
otherwise
NNmN
e

 (5.43) 
Nhắc lại 0N0 = 2 và 10 
 kjm
e với m = 0, N0, 2N0, . . ., sao cho 
 
 
1
0
0
1
0
00
0 1
N
k
N
k
kjm
Ne 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à 0 jme . Do đó (xem phần B.7-4) 
 0
1
1
0
000
0
1
0

 
 jm
NjmN
k
kjm
e
e
e ( 1200  mjNjm ee ) 
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  giây thì 
phổ F() có thể được khôi phục từ các mẩu của F() lấy tại các thời khoảng đồng đều 
không lớn hơn 1/ Hz. Nói cách khác, phổ cần được lấy mẩu với tốc độ không nhỏ hơn  
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(). Đị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 N0
2
 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), f1
2
(t), f2
3
(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) sinc
2
(100 t) (b) 0,01sinc2(100 t) (c) sinc (100 t) + 3sinc2(60 t) 
 (d) sinc (50 t) sinc (100 t). 
5.1-3 Tín hiệu f(t) = sinc (100 t) đượ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) = (t). 
(b) Tìm hàm truyền H(), và vẽ  H(). 
(c) Chứng tõ là khi tín hiệu đã lấy mẩu )(tf 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
t
th
2
)( 
 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 )(tf 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à (t/2T). 
5.1-6 Tín hiệu f(t) = sinc(200 t) đượ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(5 t). 
(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 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) T(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() =0 với 
B  2 . Trong trường hợp này 
'4
)()(
B
rectFF 
 với B’> B. Điều này tức 
là f(t) bằng với f(t)*2B’sinc(2 B’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
–t
u(t). Dùng băng thông là 
nơi đáp ứng biên độ giảm 1% so với trị định (tại  = 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 
1
2
)(
2 
t
tf Hướng dẫn: 

e
t
2
1
2
2
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. 

File đính kèm:

  • pdfbai_giang_tin_hieu_va_dung_chuoi_chuong_5_lay_mau_tin_hieu.pdf