Giáo trình môn Xử lý tín hiệu số - Phần 2

Để tính toán phổ của tín hiệu rời rạc hoặc liên tục thời gian, cần phải biết tất cả các giá trị của tín hiệu tại mọi thời điểm. Tuy nhiên, thực tế, các tín hiệu không chỉ là các tín hiệu hữu hạn. Do đó, phổ của tín hiệu chỉ xấp xỉ với với một tín hiệu hữu hạn. Trong phần này, ta thử thực hiện phân tích tần số sử dụng DFT. Nếu tín hiệu được phân tích là tín hiệu tương tự, ta cần đưa tín hiệu qua một bộ lọc nhiễu, sau đó lấy mẫu tín hiệu với tần số lấy mẫu 𝐹𝑠 ≥ 2𝐵, với 𝐵 là băng thông của tín hiệu đã được lọc nhiễu. Vậy tần số lớn nhất trong tín hiệu đã được lấy mẫu là 𝐹𝑠/2. Cuối cùng, với mục đích thực hành, ta giới hạn khoảng thời gian của tín hiệu là 𝑇0 = 𝐿𝑇, trong đó 𝐿 là số mẫu tín hiệu, 𝑇 là khoảng thời gian giữa hai mẫu. Chúng ta sẽ thấy dưới đây, khoảng thời gian của tín hiệu giới hạn độ phân giải tần số của tín hiệu; dó đó, nó giới hạn khả năng phân biệt hai thành phần tần số được chia ra nhỏ hơn 1/𝑇0 = 1/𝐿𝑇.

pdf179 trang | Chia sẻ: Tiểu Khải Minh | Ngày: 22/02/2024 | Lượt xem: 76 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Giáo trình môn Xử lý tín hiệu số - Phần 2, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
bằng không trong khoảng 0 ≤ 𝑛 ≤ 𝐿 − 1. Ta thấy rằng khi 𝑁 ≥ 𝐿 𝑥(𝑛) = 𝑥𝑝(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 do đó, 𝑥(𝑛) có thể khôi phục lại từ 𝑥𝑝(𝑛) mà không bị méo tín hiệu. Mặt khác, nếu 𝑁 < 𝐿, ta không thể khôi phục lại 𝑥(𝑛) do sự chồng lấp miền thời gian của tín hiệu tuần hoàn. Từ đó ta có thể kết luận rằng phổ của tín hiệu rời rạc thời gian không tuần hoàn có chiều dài hữu hạn 𝐿 có thể khôi phục chính xác từ các mẫu của nó tại các tần số 𝜔𝑘 = 2𝜋𝑘/𝑁 nếu 𝑁 ≥ 𝐿. Để làm việc này ta xác định 𝑥𝑝(𝑛), 𝑛 = 0,1,2, , 𝑁 − 1 theo công thức (5.8) sau đó tính 𝑥(𝑛) = { 𝑥𝑝(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 (5.9) cuối cùng, sử dụng công thức (5.1) ta sẽ tính được 𝑋(𝜔) Hình 5-2 Tín hiệu không tuần hoàn 𝐱(𝐧) có chiều dài L và tín hiệu tuần hoàn được sinh ra từ 𝐱(𝐧) với chu kỳ 𝐍 ≥ 𝐋 (không có chồng lấp) và 𝐍 < 𝐋 (có chồng lấp) Như trong trường hợp tín hiệu liên tục thời gian, ta không thể biểu diễn phổ 𝑋(𝜔) trực tiếp từ các mẫu của nó 𝑋( 2𝜋𝑘 𝑁 ), 𝑘 = 0,1,2, ,𝑁 − 1. Để xây dựng công thức nội suy 𝑋(𝜔), ta giả sử rằng 𝑁 ≥ 𝐿 và sử dụng công thức (5.8). Vậy 𝑥(𝑛) = 𝑥𝑝(𝑛) với 0 ≤ 𝑛 ≤ 𝑁 − 1, ta có 𝑥(𝑛) = 1 𝑁 ∑𝑋( 2𝜋 𝑁 𝑘) 𝑒 𝑗2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 , 0 ≤ 𝑛 ≤ 𝑁 − 1 (5.10) Sử dụng công thức (5.1) và thế x(n) vào, ta được 𝑋(𝜔) = ∑ [ 1 𝑁 ∑𝑋( 2𝜋 𝑁 𝑘) 𝑒 𝑗2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 ] 𝑒−𝑗𝜔𝑛 𝑁−1 𝑛=0 = ∑𝑋( 2𝜋 𝑁 𝑘) [ 1 𝑁 ∑ 𝑒−𝑗(𝜔𝑛− 2𝜋𝑘𝑛 𝑁 ) 𝑁−1 𝑛=0 ] 𝑁−1 𝑘=0 (5.11) Thành phần tổng dãy bên trong ngoặc vuông của (5.11) là hàm nội suy cơ bản bị dịch đi một khoảng 2𝜋𝑘/𝑁 trên miền tần số. Thực vậy, nếu ta đặt 𝑃(𝜔) = 1 𝑁 ∑ 𝑒−𝑗𝜔𝑛 𝑁−1 𝑛=0 = 1 𝑁 1 − 𝑒−𝑗𝜔𝑁 1 − 𝑒−𝑗𝜔 (5.12) = sin 𝜔𝑁 2 𝑁 sin 𝜔 2 𝑒−𝑗𝜔(𝑁−1)/2 vậy (5.11) có thể biểu diễn như sau 𝑋(𝜔) = ∑ 𝑋( 2𝜋 𝑁 𝑘)𝑃(𝜔 − 2𝜋 𝑁 𝑘) 𝑁−1 𝑘=0 , 𝑁 ≥ 𝐿 (5.13) Với 𝑁 = 5, ta được 𝑋(𝜔) như trong Hình 5-3. Hàm 𝑃(𝜔) có tính chất như sau: 𝑃 ( 2𝜋 𝑁 𝑘) = { 1, 𝑘 = 0 0, 𝑘 = 1,2, ,𝑁 − 1 (5.14) Do đó, công thức (5.13) cho ta chính xác giá trị các mẫu 𝑋(2𝜋𝑘/𝑁) với 𝜔 = 2𝜋𝑘/𝑁. Với các tần số khác, công thức là tổ hợp tuyến tính mẫu phổ ban đầu. Các ví dụ sau đây minh họa việc lấy mẫu miền tần số của tín hiệu rời rạc thời gian và chồng lấp miền thời gian của tín hiệu Hình 5-3 Đồ thị hàm [𝐬𝐢𝐧(𝛚𝐍/𝟐)]/[𝐍 𝐬𝐢𝐧(𝛚/𝟐)] VI DỤ 5.1 Xét tín hiệu sau 𝑥(𝑛) = 𝑎𝑛𝑢(𝑛), 0 < 𝑎 < 1 Phổ của tín hiệu này được lấy mẫu tại tần số 𝜔𝑘 = 2𝜋𝑘 𝑁 , 𝑘 = 0,1,2, ,𝑁 − 1. Xác định phổ được khôi phục lại với 𝑎 = 0.8 khi 𝑁 = 5 và 𝑁 = 50. Lời giải. Biến đổi Fourier của dãy 𝑥(𝑛) là 𝑋(𝜔) = ∑𝑎𝑛𝑒−𝑗𝜔𝑛 ∞ 𝑛=0 = 1 1 − 𝑎𝑒−𝑗𝜔 Giả sử, ta lấy mẫu 𝑋(𝜔) tại 𝑁 tần số cách đều nhau 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1, , 𝑁 − 1. Vậy ta thu được các mẫu phổ 𝑋(𝜔𝑘) ≡ 𝑋 ( 2𝜋𝑘 𝑁 ) = 1 1 − 𝑎𝑒− 𝑗2𝜋𝑘 𝑁 𝑘 = 0,1, ,𝑁 − 1 Dãy tuần hoàn 𝑥𝑝(𝑛) tương ứng với các mẫu tần số 𝑋(2𝜋𝑘/𝑁), 𝑘 = 0,1, ,𝑁 − 1 có thể được tính bằng công thức (5.4) hoặc (5.8). Ta có 𝑥𝑝(𝑛) = ∑ 𝑥(𝑛 − 𝑙𝑁) ∞ 𝑙=−∞ = ∑ 𝑎𝑛−𝑙𝑁 0 𝑙=−∞ = 𝑎𝑛∑𝑎𝑙𝑁 = 𝑎𝑛 1 − 𝑎𝑁 ∞ 𝑙=0 0 ≤ 𝑛 ≤ 𝑁 − 1 trong đó 1 (1 − 𝑎𝑁)⁄ đại diện cho ảnh hưởng của chồng tín hiệu. Với 0 < 𝑎 < 1 sai số do chồng tín hiệu giảm dần về không với 𝑁 → ∞. (a) (b) (c) (d) Hình 5-4 (a) Dãy 𝐱(𝐧) = 𝟎. 𝟖𝐧𝐮(𝐧); (b) biến đổi Fourier của 𝐱(𝐧) (chỉ biểu diễn phổ biên độ); (c)các mẫu của 𝐗(𝛚) với N = 5: (d) các mẫu của 𝐗(𝛚) với N = 50. Với 𝑎 = 0.8, dãy 𝑥(𝑛) và phổ của nó 𝑋(𝜔) được biểu diễn lần lượt trong Hình 5-4(a) và (b). Dãy 𝑥𝑝(𝑛) với 𝑁 = 5 và 𝑁 = 50 và phổ rời rạc tương ứng được minh họa trong Hình 5-4(c) và (d). Nếu ta định nghĩa dãy hữu hạn 𝑥(𝑛) như sau �̂�(𝑛) = { 𝑥𝑝(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 ta có biến đổi Fourier của nó là �̂�(𝜔) = ∑ �̂�(𝑛)𝑒−𝑗𝜔𝑛 𝑁−1 𝑛=0 = ∑ 𝑥𝑝(𝑛)𝑒 −𝑗𝜔𝑛 𝑁−1 𝑛=0 = 1 1 − 𝑎𝑁 . 1 − 𝑎𝑁𝑒−𝑗𝜔𝑁 1 − 𝑎𝑒−𝑗𝜔 Chú ý rằng mặc dù �̂�(𝜔) ≠ 𝑋(𝜔) nhưng giá trị các mẫu tại 𝜔𝑘 = 2𝜋𝑘/𝑁 là giống nhau. Ta có �̂� ( 2𝜋 𝑁 𝑘) = 1 1 − 𝑎𝑁 . 1 − 𝑎𝑁 1 − 𝑎𝑒−𝑗2𝜋𝑘/𝑁 = 𝑋 ( 2𝜋 𝑁 𝑘) Biến đổi Fourier rời rạc (DFT) Phần trên ta đã biết 𝑋(2𝜋𝑘/𝑁) là hàm rời rạc hóa phổ tần số 𝑋(𝜔), tín hiệu miền thời gian của 𝑋(2𝜋𝑘/𝑁) là một dãy tuần hoàn 𝑥𝑝(𝑛) có chu kỳ 𝑁, trong đó 𝑥𝑝(𝑛) là dãy được tạo ra từ sự xếp chồng các dãy 𝑥(𝑛) như trong phương trình (5.4) là: 𝑥𝑝(𝑛) = ∑ 𝑥(𝑛 − 𝑙𝑁) ∞ 𝑙=−∞ (5.15) Khi 𝑥(𝑛) có chiều dài hữu hạn 𝐿 ≤ 𝑁 thì 𝑥𝑝(𝑛) thu được bằng cách tuần hoàn hóa dãy 𝑥(𝑛), một chu kỳ của 𝑥𝑝(𝑛) được xác định như sau 𝑥𝑝(𝑛) = { 𝑥(𝑛) 0 ≤ 𝑛 ≤ 𝐿 − 1 0, 𝐿 ≤ 𝑛 ≤ 𝑁 − 1 (5.16) Do đó, hàm tần số rời rạc 𝑋(2𝜋𝑘/𝑁), 𝑘 = 0,1, ,𝑁 − 1 biểu diễn duy nhất một dãy hữu hạn 𝑥(𝑛). Với 𝑥(𝑛) ≡ 𝑥𝑝(𝑛) trong một chu kỳ đơn, dãy ban đầu hữu hạn 𝑥(𝑛) có thể xác định được từ các mẫu tần số 𝑋(2𝜋𝑘/𝑁) bằng công thức (5.8). Một điểm quan trọng là các mẫu không thêm vào không làm thay đổi phổ 𝑋(𝜔) của dãy {𝑥(𝑛)}. 𝐿 mẫu cách đều nhau của 𝑋(𝜔) là đủ để khôi phục lại 𝑋(𝜔) bằng các sử dụng công thức (5.13). Việc thêm 𝑁 − 𝐿 mẫu không vào dãy 𝑥(𝑛) và tính toán DFT N điểm làm cho hình dáng 𝑋(𝑘) gần với 𝑋(𝜔) hơn. Điều này có thể thấy rõ trong Ví dụ 5.1 Tổng kết lại ta có một dãy hữu hạn 𝑥(𝑛) với chiều dài 𝐿 [nghĩa là 𝑥(𝑛) = 0 với 𝑛 < 0 và 𝑛 ≥ 𝐿], biến đổi Fourier của 𝑥(𝑛) như sau: 𝑋(𝜔) = ∑𝑥(𝑛)𝑒−𝑗𝜔𝑛 𝐿−1 𝑛=0 (5.17) Ta lấy mẫu 𝑋(𝜔) tại các tần số 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1,2, 𝑁 − 1, trong đó 𝑁 ≥ 𝐿, kết quả như sau: 𝑋(𝑘) ≡ 𝑋 ( 2𝜋𝑘 𝑁 ) = ∑𝑥(𝑛)𝑒−𝑗2𝜋𝑘𝑛/𝑁 𝐿−1 𝑛=0 𝑋(𝑘) = ∑ 𝑥(𝑛)𝑒−𝑗2𝜋𝑘𝑛/𝑁 N−1 n=0 𝑘 = 0,1,2, ,𝑁 − 1 (5.18) trong đó để thuận tiện, chỉ số trên của tổng tăng từ 𝐿 − 1 lên 𝑁 − 1 với 𝑥(𝑛) = 0 tại 𝑛 ≥ 𝐿. Như vậy, ta có (5.18) là công thức biến đổi dãy 𝑥(𝑛) có chiều dài 𝐿 ≤ 𝑁 thành dãy phổ rời rạc miền tần số 𝑋(𝑘) có chiều dài 𝑁, các mẫu tần số tính được bằng cách xác định biến đổi Fourier 𝑋(𝜔) tại 𝑁 điểm tần số rời rạc. (5.18) được gọi là biến đổi Fourier rời rạc (DFT) của 𝑥(𝑛). Ngược lại, ta cũng có thể xác định 𝑥(𝑛) thông qua công thức (5.10) 𝑥(𝑛) = 1 𝑁 ∑ 𝑋(𝑘)𝑒 𝑗2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 , 𝑛 = 0,1, ,𝑁 − 1 Công thức này được gọi là biến đổi Fourier rời rạc ngược (IDFT - Inverse DFT). Khi 𝑥(𝑛) có chiều dài 𝐿 < 𝑁, biến đổi IDFT 𝑁 điểm sẽ cho kết quả 𝑥(𝑛) = 0 với 𝐿 ≤ 𝑛 ≤ 𝑁 − 1. Như vậy, ta có cặp công thức biến đổi DFT như sau: 𝐷𝐹𝑇: 𝑋(𝑘) = ∑ 𝑥(𝑛)𝑒−𝑗2𝜋𝑘𝑛/𝑁 N−1 n=0 𝑘 = 0,1,2, ,𝑁 − 1 (5.19) 𝐼𝐷𝐹𝑇: 𝑥(𝑛) = 1 𝑁 ∑ 𝑋(𝑘)𝑒 𝑗2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 , 𝑛 = 0,1, ,𝑁 − 1 (5.20) VÍ DỤ 5.2 Dãy hữu hạn có chiều dài 𝐿 như sau 𝑥(𝑛) = { 1, 0 ≤ 𝑛 ≤ 𝐿 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 Xác định DFT 𝑁 điểm của dãy với 𝑁 ≥ 𝐿. Lời giải. Biến đổi Fourier của dãy 𝑋(𝜔) = ∑𝑥(𝑛)𝑒−𝑗𝜔𝑛 𝐿−1 𝑛=0 =∑𝑒−𝑗𝜔𝑛 𝐿−1 𝑛=0 = 1 − 𝑒−𝑗𝜔𝐿 1 − 𝑒−𝑗𝜔 = sin𝜔𝐿/2 sin𝜔/2 𝑒−𝑗𝜔(𝐿−1)/2 Biên độ và pha của 𝑋(𝜔) được minh họa trong Hình 5-5. DFT 𝑁 điểm của 𝑥(𝑛) đơn giản là giá trị của 𝑋(𝜔) tại tập 𝑁 tần số 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1, . . . 𝑁 − 1. Vậy 𝑋(𝑘) = 1 − 𝑒−𝑗2𝜋 𝑘𝐿 𝑁 1 − 𝑒−𝑗2𝜋 𝑘 𝑁 = sin 𝜋𝑘𝐿 𝑁 sin 𝜋𝑘 𝑁 𝑒−𝑗𝜋𝑘(𝐿−1)/𝑁 , 𝑘 = 0,1, ,𝑁 − 1 Hình 5-5 Phổ biên độ và phổ pha của biến đổi Fourier tín hiệu trong Ví dụ 5.2 Nếu 𝑁 được chọn sao cho 𝑁 = 𝐿, thì DFT của 𝑥(𝑛) trở thành 𝑋(𝑘) = { 𝐿, 𝑘 = 0 0, 𝑘 = 1,2, , 𝐿 − 1 Ta thấy, trong trường hợp này 𝑋(𝑘) chỉ có một giá trị khác không tại 𝑘 = 0. Ta có thể kiểm tra lại bằng cách tính giá trị 𝑋(𝜔) tại các tần số 𝜔𝑘 = 2𝜋𝑘/𝐿, 𝑘 ≠ 0. Mặt dù biến đổi DFT 𝐿 điểm là đủ để biểu diễn duy nhất một dãy 𝑥(𝑛) trong miền tần số, nhưng hình ảnh đặc tuyến phổ 𝑋(𝑘) không đầy đủ thông tin. Nếu muốn có hình ảnh rõ nét hơn về phổ của tín hiệu, ta phải chia 𝑋(𝜔) tại các tần số gần hơn, nghĩa là 𝜔𝑘 = 2𝜋𝑘/𝑁 với 𝑁 > 𝐿. Để thực hiện điều này, ta sẽ kéo dài chiều dài dãy 𝑥(𝑛) từ 𝐿 điểm thành 𝑁 điểm bằng cách thêm 𝑁 − 𝐿 điểm có giá trị không vào dãy 𝑥(𝑛). Từ đó ta có hình ảnh phổ rõ ràng hơn so với DFT L điểm. Hình 5-6 minh họa phổ biến đổi DFT của tín hiệu 𝑥(𝑛) trong hai trường hợp 𝑁 = 50 và 𝑁 = 100. Ta thấy, với 𝑁 càng lớn, hình ảnh phổ của tín hiệu càng rõ ràng Hình 5-6 Biên độ và pha của DFT N điểm trong Ví dụ 5.2; (a) 𝐋 = 𝟏𝟎, 𝐍 = 𝟓𝟎; (b) 𝐋 = 𝟏𝟎, 𝐍 = 𝟏𝟎𝟎. Tính tuyến tính của DFT Ta có thể, viết lại công thức DFT và IDFT trong (5.19) và (5.20) như sau: 𝐷𝐹𝑇: 𝑋(𝑘) = ∑ 𝑥(𝑛)𝑊𝑁 𝑘𝑛 N−1 n=0 𝑘 = 0,1,2, ,𝑁 − 1 (5.21) 𝐼𝐷𝐹𝑇: 𝑥(𝑛) = 1 𝑁 ∑𝑋(𝑘)𝑊𝑁 −𝑘𝑛 𝑁−1 𝑘=0 , 𝑛 = 0,1, , 𝑁 − 1 (5.22) trong đó ta có 𝑊𝑁 = 𝑒 −𝑗2𝜋/𝑁 (5.23) Ta chú ý rằng việc tính toán mỗi điểm của DFT ta cần thực hiện 𝑁 phép nhân phức và (𝑁 − 1) phép cộng phức. Vậy, DFT 𝑁 điểm được tính qua tổng cộng 𝑁2 phép nhân phức và 𝑁(𝑁 − 1) phép cộng phức. Ta có thể xem DFT và IDFT lần lượt là phép biến đổi tuyến tính của dãy {𝑥(𝑛)} và {𝑋(𝑘)}. Ta định nghĩa một vector 𝑁 điểm 𝑥𝑁 của dãy 𝑥(𝑛), 𝑛 = 0,1, ,𝑁 − 1 và một vector 𝑁 điểm 𝑋𝑁 của các mẫu tần số và một ma trận 𝑊𝑁 𝑁 × 𝑁 như sau: 𝑥𝑁 = [ 𝑥(0) 𝑥(1) ⋮ 𝑥(𝑁 − 1) ], 𝑋𝑁 = [ 𝑋(0) 𝑋(1) ⋮ 𝑋(𝑁 − 1) ] 𝑊𝑁 = [ 1 1 1 1 𝑊𝑁 𝑊𝑁 2 ⋯ 1 ⋯ 𝑊𝑁 𝑁−1 1 𝑊𝑁 2 𝑊𝑁 4 ⋮ ⋮ ⋮ ⋯ 𝑊𝑁 2(𝑁−1) ⋯ ⋮ 1 𝑊𝑁 𝑁−1 𝑊𝑁 2(𝑁−1) ⋯ 𝑊𝑁 (𝑁−1)(𝑁−1) ] (5.24) Với các định nghĩa này DFT 𝑁 điểm có thể được biểu diễn dưới dạng ma trận như sau: 𝑋𝑁 = 𝑊𝑁𝑥𝑁 (5.25) trong đó 𝑊𝑁 là ma trận biến đổi tuyến tính. Như trong (5.24), 𝑊𝑁 là một ma trận đối xứng. Giả sử rằng nghịch đảo của 𝑊𝑁 tồn tại thì IDFT tại (5.22) có thể viết lại như sau: 𝑥𝑁 = 𝑊𝑁 −1𝑋𝑁 (5.26) Hoặc 𝑥𝑁 = 1 𝑁 𝑊𝑁 ∗𝑋𝑁 (5.27) Trong 𝑊𝑁 ∗ đó là ma trận liên hợp phức của 𝑊𝑁. So sánh (5.26) và (5.27), ta thấy: 𝑊𝑁 −1 = 1 𝑁 𝑊𝑁 ∗ (5.28) Từ đó, ta có: 𝑊𝑁𝑊𝑁 ∗ = 𝑁𝐼𝑁 (5.29) Với 𝐼𝑁 là ma trận đơn vị bậc 𝑁 × 𝑁. Do đó, ma trận 𝑊𝑁 là một ma trận trực giao. Hơn nữa ma trận đảo của nó tồn tại và bằng 𝑊𝑁 ∗/𝑁. VI DỤ 5.3 Tính DFT của dãy bốn điểm sau 𝑥(𝑛) = {0 1 2 3} Lời giải. Đầu tiên ta cần phải tính ma trận 𝑊4. Với tính tuần hoàn của 𝑊4 và tính đối xứng 𝑊𝑁 𝑘+ 𝑁 2 = −𝑊𝑁 𝑘 ma trận 𝑊4 như sau: 𝑊4 = [ 𝑊4 0 𝑊4 0 𝑊4 0 𝑊4 1 𝑊4 0 𝑊4 0 𝑊4 2 𝑊4 3 𝑊4 0 𝑊4 2 𝑊4 0 𝑊4 3 𝑊4 4 𝑊4 6 𝑊4 6 𝑊4 9] = [ 1 1 1 𝑊4 1 1 1 𝑊4 2 𝑊4 3 1 𝑊4 2 1 𝑊4 3 𝑊4 0 𝑊4 2 𝑊4 2 𝑊4 1] = [ 1 1 1 −𝑗 1 1 −1 𝑗 1 −1 1 𝑗 1 −1 −1 −𝑗 ] Ta có: 𝑋4 = 𝑊4𝑥4 = [ 6 −2 + 2𝑗 −2 −2 − 2𝑗 ] Ngược lại, ta có thể tính IDFT của 𝑋4 tính bằng cách tính liên hợp phức của các thành phần trong 𝑊4 để thu được 𝑊4 ∗ và sử dụng công thức (5.27). Biến đổi DFT và IDFT là công cụ tính toán quan trọng trong nhiều ứng dụng xử lý tín hiệu số như phân tích phổ, ước lượng phổ mật độ công suất, phân tích tương quan, lọc tuyến tính. Có nhiều thuật toán có hiệu quả để tính DFT và IDFT một cách nhanh chóng và chính xác gọi chung là thuật toán biến đổi Fourier nhanh (FFT - Fast Fourier Transform). Quan hệ giữa DFT và các biến đổi khác Như đã trình bày trong phần trên DFT là một công cụ tính toán để thực hiện phân tích tần số của tín hiệu trong các bộ xử lý tín hiệu số. Với các công cụ và biến đổi phân tích tần số khác ta vừa tìm hiểu, ta phải thiết lập quan hệ giữa DFT và các biến đổi này. Quan hệ giữa DFT và biến đổi Fourier. Ta vừa chỉ ra rằng nếu 𝑥(𝑛) là một dãy không tuần hoàn, năng lượng hữu hạn có biến đổi Fourier 𝑋(𝜔), lấy mẫu tần số dãy này tại các giá trị 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1, ,𝑁 − 1, ta được các thành phần phổ như sau: 𝑋(𝑘) = 𝑋(𝜔)| 𝜔= 2𝜋𝑘 𝑁 = ∑ 𝑥(𝑛)𝑒− 𝑗2𝜋𝑛𝑘 𝑁 ∞ 𝑛=−∞ , 𝑘 = 0,1, ,𝑁 − 1 (5.30) Quan hệ giữa DFT với biến đổi Z. Ta hãy xét dãy 𝑥(𝑛) có biến đổi z 𝑋(𝑧) = ∑ 𝑥(𝑛)𝑧−𝑛 ∞ 𝑛=−∞ (5.31) với miền hội tụ chứa vòng tròn đơn vị. Nếu 𝑋(𝑧) được lấy mẫu tại N điểm cách đều nhau trên vòng tròn đơn vị 𝑧𝑘 = 𝑒 𝑗2𝜋𝑘/𝑁, 𝑘 = 0,1, ,𝑁 − 1, ta được: 𝑋(𝑘) ≡ 𝑋(𝑧)|𝑧=𝑒𝑗2𝜋𝑛𝑘/𝑁 , 𝑘 = 0,1, ,𝑁 − 1 = ∑ 𝑥(𝑛)𝑒−𝑗2𝜋𝑛𝑘/𝑁 ∞ 𝑛=−∞ (5.32) Với dãy 𝑥(𝑛) có chiều dài hữu hạn bằng hoặc nhỏ hơn 𝑁, ta có thể khôi phục lại dạng biểu diễn miền thời gian của tín hiệu từ biểu thức DFT 𝑁 điểm của nó. Từ đó, ta sử dụng công thức biến đổi Z như sau: 𝑋(𝑧) = ∑ 𝑥(𝑛)𝑧−𝑛 𝑁−1 𝑛=0 𝑋(𝑧) = ∑ [ 1 𝑁 ∑𝑋(𝑘)𝑒 𝑗2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 ] 𝑧−𝑛 𝑁−1 𝑛=0 𝑋(𝑧) = 1 𝑁 ∑ 𝑋(𝑘)∑ (𝑒 𝑗2𝜋𝑘 𝑁 𝑧−1) 𝑛𝑁−1 𝑛=0 𝑁−1 𝑘=0 𝑋(𝑧) = 1 − 𝑧−𝑁 𝑁 ∑ 𝑋(𝑘) 1 − 𝑒 𝑗2𝜋𝑘 𝑁 𝑧−1 𝑁−1 𝑘=0 (5.33) Khi đánh giá trên vòng tròn đơn vị công thức (5.33) ta được biến đổi Fourier của dãy hữu hạn theo biến đổi DFT của nó như sau: 𝑋(𝜔) = 1 − 𝑒−𝑗𝜔𝑁 𝑁 ∑ 𝑋(𝑘) 1 − 𝑒−𝑗(𝜔− 2𝜋𝑘 𝑁 ) 𝑁−1 𝑘=0 (5.34) Biểu thức này của biến đổi Fourier là một công thức nội suy 𝑋(𝜔) theo các giá trị {𝑋(𝑘)}. Công thức này hoàn toàn tương tự công thức nội suy (5.13). CÁC TÍNH CHẤT CỦA DFT Trong phần trên, chúng tôi đã giới thiệu biến đổi DFT là một tập N mẫu {𝑋(𝑘)} của biến đổi Fourier 𝑋(𝜔) với dãy hữu hạn {𝑥(𝑛)} có chiều dài 𝐿 ≤ 𝑁. Ta lấy mẫu 𝑋(𝜔) tại N tần số cách đều nhau 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1,2, ,𝑁 − 1. Như phần trên ta thấy, DFT có mối quan hệ chặt chẽ với biến đổi 𝑧 và biến đổi Fourier, hay nói cách khác, biến đổi DFT là trường hợp đặc biệt của hai biến đổi trên nên DFT sẽ mang toàn bộ các tính chất của 2 biến đổi đó. Ngoài ra, DFT cũng có một số tính chất riêng. Để xét các tính chất này, ta ký hiệu biến đổi DFT 𝑁 điểm của 𝑥(𝑛) và 𝑋(𝑘) như sau: 𝑥(𝑛) 𝐷𝐹𝑇 𝑁 ⃡ 𝑋(𝑘) Tính chất tuần hoàn, tuyến tính và đối xứng Tính tuần hoàn. Nếu 𝑥(𝑛) và 𝑋(𝑘) là một cặp DFT 𝑁 điểm, ta có: 𝑥(𝑛 + 𝑁) = 𝑥(𝑛) với mọi 𝑛 (5.35) 𝑋(𝑘 + 𝑁) = 𝑋(𝑘) với mọi 𝑘 (5.36) Tính chất tuần hoàn này của 𝑥(𝑛) và 𝑋(𝑘) xuất phát từ công thức định nghĩa DFT (5.19) và (5.20). Tính tuyến tính. Nếu 𝑥1(𝑛) 𝐷𝐹𝑇 𝑁 ⃡ 𝑋1(𝑘) và 𝑥2(𝑛) 𝐷𝐹𝑇 𝑁 ⃡ 𝑋2(𝑘) vậy với mọi hằng số 𝑎1 và 𝑎2 có giá trị thực hoặc phức ta có: 𝑎1𝑥1(𝑛) + 𝑎2𝑥2(𝑛) 𝐷𝐹𝑇 𝑁 ⃡ 𝑎1𝑋1(𝑘) + 𝑎2𝑋2(𝑘) (5.37) Tính chất này có thể dễ dàng chứng minh từ công thức định nghĩa DFT (5.19) Đảo vòng một dãy. Như chúng ta đã biết, DFT 𝑁 điểm của dãy hữu hạn 𝑥(𝑛) có chiều dài 𝐿 ≤ 𝑁 tương đương với DFT 𝑁 điểm của dãy tuần hoàn 𝑥𝑝(𝑛) với chu kỳ 𝑁, ta có 𝑥𝑝(𝑛) = ∑ 𝑥(𝑛 − 𝑙𝑁) ∞ 𝑙=−∞ (5.38) Bây giờ giả sử rằng ta dịch dãy 𝑥𝑝(𝑛) sang bên phải k đơn vị. Vậy ta thu được dãy tuần hoàn khác: 𝑥𝑝 ′ (𝑛) = 𝑥𝑝(𝑛 − 𝑘) = ∑ 𝑥(𝑛 − 𝑘 − 𝑙𝑁) ∞ 𝑙=−∞ (5.39) Ta có, dãy hữu hạn: 𝑥′(𝑛) = { 𝑥𝑝 ′ (𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 (5.40) dãy này là dãy dịch vòng của dãy 𝑥(𝑛) và được minh họa trong Hình 5-7 với 𝑁 = 4. Hình 5-7 Dịch vòng Dịch vòng được ký hiệu như sau: 𝑥′(𝑛) = 𝑥(𝑛 − 𝑘,%𝑁) ≡ 𝑥(𝑛 − 𝑘)𝑁 (5.41) Ví dụ, nếu 𝑘 = 2 và 𝑁 = 4 ta có : 𝑥′(𝑛) = 𝑥((𝑛 − 2)) 4 nghĩa là: 𝑥′(0) = 𝑥((−2)) 4 = 𝑥(2) 𝑥′(1) = 𝑥((−1)) 4 = 𝑥(3) 𝑥′(2) = 𝑥((0)) 4 = 𝑥(0) 𝑥′(3) = 𝑥((1)) 4 = 𝑥(1) Vậy 𝑥′(𝑛) là dãy dịch vòng của 𝑥(𝑛) hai đơn vị thời gian, trong đó chiều ngược chiều kim đồng hồ được chọn là chiều dương. Từ đó, ta cũng có thể thấy việc sắp xếp N điểm của dãy lên đường tròn cho ta một định nghĩa khác về tính chẵn, lẻ của dãy và phép toán đảo ngược dãy: Một dãy N điểm được gọi là dãy chẵn vòng nếu nó đối xứng qua điểm 0 trên vòng tròn. Nghĩa là: 𝑥(𝑁 − 𝑛) = 𝑥(𝑛), 1 ≤ 𝑛 ≤ 𝑁 − 1 (5.42) Dãy 𝑁 điểm được gọi là dãy lẻ vòng nếu nó phản đối xứng qua điểm 0 trên đường tròn. Ta có: 𝑥(𝑁 − 𝑛) = −𝑥(𝑛), 1 ≤ 𝑛 ≤ 𝑁 − 1 (5.43) Phép đảo vòng miền thời gian của một dãy 𝑁 điểm được thực hiện bằng cách đảo các mẫu qua điểm 0 trên vòng tròn. Vậy ra có dãy 𝑥((−𝑛)) 𝑁 như sau: 𝑥((−𝑛)) 𝑁 = 𝑥(𝑁 − 𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 (5.44) Phép đảo vòng tín hiệu trên miền thời gian tương đương với việc ta viết 𝑥(𝑛) theo chiều kim đồng hồ lên đường tròn. Tính đối xứng của DFT. Tính đối xứng của DFT có thể thu được bằng phương pháp đã sử dụng trước đây với biến đổi Fourier. Giả sử rằng dãy N điểm 𝑥(𝑛) và biến đổi DFT đều có giá trị phức. Vậy ta có biểu thức của hai dãy: 𝑥(𝑛) = 𝑥𝑅(𝑛) + 𝑗𝑥𝐼(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 (5.45) 𝑋(𝑘) = 𝑋𝑅(𝑛) + 𝑗𝑋𝐼(𝑛), 0 ≤ 𝑘 ≤ 𝑁 − 1 (5.46) Bằng cách thế (5.45) vào biểu thức DFT trong (5.19), ta được 𝑋𝑅(𝑘) = ∑ [𝑥𝑅(𝑛) cos 2𝜋𝑘𝑛 𝑁 + 𝑥𝐼(𝑛) sin 2𝜋𝑘𝑛 𝑁 ] 𝑁−1 𝑛=0 (5.47) 𝑋𝐼(𝑘) = −∑ [𝑥𝑅(𝑛) sin 2𝜋𝑘𝑛 𝑁 − 𝑥𝐼(𝑛) cos 2𝜋𝑘𝑛 𝑁 ] 𝑁−1 𝑛=0 (5.48) Tương tự, thế (5.46) vào biểu thức IDFT trong (5.20) ta được 𝑥𝑅(𝑘) = 1 𝑁 ∑ [𝑋𝑅(𝑘) cos 2𝜋𝑘𝑛 𝑁 − 𝑋𝐼(𝑘) sin 2𝜋𝑘𝑛 𝑁 ] 𝑁−1 𝑘=0 (5.49) 𝑥𝐼(𝑘) = 1 𝑁 ∑ [𝑋𝑅(𝑘) sin 2𝜋𝑘𝑛 𝑁 + 𝑋𝐼(𝑘) cos 2𝜋𝑘𝑛 𝑁 ] 𝑁−1 𝑘=0 (5.50) Dãy có giá trị thực. Nếu dãy 𝑥(𝑛) là dãy thực, từ (5.19) ta có: 𝑋(𝑁 − 𝑘) = 𝑋∗(𝑘) = 𝑋(−𝑘) (5.51) Do đó, |𝑋(𝑁 − 𝑘)| = |𝑋(𝑘)| và ∠𝑋(𝑁 − 𝑘) = −∠𝑋(𝑘). Thêm vào đó, 𝑥𝐼(𝑛) = 0, vì vậy 𝑥(𝑛) = 𝑥𝑅(𝑛) có thể được xác định từ công thức (5.49), một dạng khác của biến đổi IDFT. Dãy thực, chẵn. Nếu 𝑥(𝑛) có giá trị thực và chẵn, ta có: 𝑥(𝑛) = 𝑥(𝑁 − 𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 từ (5.48) ta được 𝑋𝐼(𝑘) = 0. Công thức DFT được rút gọn thành: 𝑋(𝑘) = ∑ 𝑥(𝑛) cos 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 , 0 ≤ 𝑘 ≤ 𝑁 − 1 (5.52) Vậy, 𝑋(𝑘) cũng có giá trị thực và chẵn. Hơn nữa, khi 𝑋𝐼(𝑘) = 0, IDFT rút gọn thành: 𝑥(𝑛) = 1 𝑁 ∑ cos 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 , 0 ≤ 𝑛 ≤ 𝑁 − 1 (5.53) Dãy có giá trị thực và lẻ. Nếu 𝑥(𝑛) thực và lẻ, ta có 𝑥(𝑛) = −𝑥(𝑁 − 𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 vậy từ (5.47), 𝑋𝑅(𝑘) = 0. Ta có: 𝑋(𝑘) = −𝑗∑ 𝑥(𝑛) sin 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 , 0 ≤ 𝑘 ≤ 𝑁 − 1 (5.54) 𝑋(𝑘) là hàm ảo và lẻ. Tương tự, ta có IDFT rút gọn thành: 𝑥(𝑛) = 𝑗 1 𝑁 ∑ 𝑋(𝑘) sin 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 , 0 ≤ 𝑛 ≤ 𝑁 − 1 (5.55) Dãy hoàn toàn ảo. Trong trường hợp này, 𝑥(𝑛) = 𝑗𝑥𝐼(𝑛). Do đó, (5.47) và (5.48) trở thành: 𝑋𝑅(𝑘) = ∑ 𝑥𝐼(𝑛) sin 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 (5.56) 𝑋𝐼(𝑘) = ∑ 𝑥𝐼(𝑛) cos 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 (5.57) Ta thấy, rằng 𝑋𝑅(𝑘) là lẻ và 𝑋𝐼(𝑘) là chẵn. Nếu 𝑥𝐼(𝑛) là lẻ, 𝑋𝐼(𝑘) = 0, 𝑋(𝑘) là thực. Mặt khác, nếu 𝑥𝐼(𝑛) là chẵn, 𝑋𝑅(𝑘) = 0 vậy 𝑋(𝑘) hoàn toàn ảo. Ta tổng kết tính đối ngẫu như sau và trong Bảng 5-1: 𝑥(𝑛) = 𝑥𝑅 𝑐(𝑛) + 𝑥𝑅 𝑙 (𝑛) + 𝑗𝑥𝐼 𝑐(𝑛) + 𝑗𝑥𝐼 𝑙(𝑛) 𝑋(𝑘) = 𝑋𝑅 𝑐(𝑘) + 𝑋𝑅 𝑙 (𝑘) + 𝑗𝑋𝐼 𝑐(𝑘) + 𝑗𝑋𝐼 𝑙(𝑘) (5.58) Tính đối ngẫu của DFT được tổng kết trong Bảng 5-1. Bảng 5-1 Các tính chất đối ngẫu của DFT Dãy 𝑁 điểm 𝑥(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1 DFT 𝑁 điểm 𝑥(𝑛) 𝑋(𝑘) 𝑥∗(𝑛) 𝑋∗(𝑁 − 𝑘) 𝑥∗(𝑁 − 𝑛) 𝑋∗(𝑘)k 𝑥𝑅(𝑛) 𝑋𝑐𝑒(𝑘) = 1 2 [𝑋(𝑘) + 𝑋∗(𝑁 − 𝑘)] 𝑗𝑥𝐼(𝑛) 𝑋𝑐𝑜(𝑘) = 1 2 [𝑋(𝑘) − 𝑋∗(𝑁 − 𝑘)] 𝑥𝑐𝑒(𝑛) = 1 2 [𝑥(𝑛) + 𝑥∗(𝑁 − 𝑛)] 𝑋𝑅(𝑘) 𝑥𝑐𝑜(𝑛) = 1 2 [𝑥(𝑛) − 𝑥∗(𝑁 − 𝑛)] 𝑗𝑋𝐼(𝑘) Tín hiệu thực Tín hiệu thực bất kỳ 𝑋(𝑘) = 𝑋∗(𝑁 − 𝑘) 𝑥(𝑛) 𝑋𝑅(𝑘) = 𝑋𝑅(𝑁 − 𝑘) 𝑋𝐼(𝑘) = −𝑋𝐼(𝑁 − 𝑘) |𝑋(𝑘)| = |𝑋(𝑁 − 𝑘)| ∠𝑋(𝑘) = −∠𝑋(𝑁 − 𝑘) 𝑥𝑐𝑒(𝑛) = 1 2 [𝑥(𝑛) + 𝑥(𝑁 − 𝑛)] 𝑋𝑅(𝑘) 𝑥𝑐𝑜(𝑛) = 1 2 [𝑥(𝑛) − 𝑥(𝑁 − 𝑛)] 𝑗𝑋𝐼(𝑘) Nhân hai hãy DFT và tích chập vòng Giả sử ta có hai dãy hữu hạn có chiều dài N, 𝑥1(𝑛) và 𝑥2(𝑛). DFT N điểm tương ứng của từng dãy là 𝑋1(𝑘) = ∑ 𝑥1(𝑛)𝑒 −𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 , 𝑘 = 0,1, , 𝑁 − 1 (5.59) 𝑋2(𝑘) = ∑ 𝑥2(𝑛)𝑒 −𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 , 𝑘 = 0,1, ,𝑁 − 1 (5.60) Nhân hai dãy 𝑋1(𝑘) và 𝑋2(𝑘), ta được dãy 𝑋3(𝑘). Nếu 𝑋3(𝑘) là biến đổi DFT của dãy 𝑥3(𝑛). Ta sẽ xác định mối quan hệ giữa 𝑥3(𝑛) và hai dãy 𝑥1(𝑛), 𝑥2(𝑛). Ta có: 𝑋3(𝑘) = , 𝑘 = 0,1, , 𝑁 − 1 (5.61) IDFT của {𝑋3(𝑘)} là: 𝑥3(𝑚) = 1 𝑁 ∑𝑋3(𝑘) 𝑁−1 𝑘=0 𝑒𝑗 2𝜋𝑘𝑚 𝑁 = 1 𝑁 ∑ 𝑋1(𝑘)𝑋2(𝑘) 𝑁−1 𝑘=0 𝑒𝑗 2𝜋𝑘𝑚 𝑁 (5.62) Thế 𝑋1(𝑘) và 𝑋2(𝑘) trong (5.62) bằng (5.59) và (5.60), ta được 𝑥3(𝑚) = 1 𝑁 ∑ [∑ 𝑥1(𝑛)𝑒 −𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 ] [∑ 𝑥2(𝑙)𝑒 −𝑗 2𝜋𝑘𝑙 𝑁 𝑁−1 𝑙=0 ] 𝑁−1 𝑘=0 𝑒𝑗 2𝜋𝑘𝑚 𝑁 = 1 𝑁 ∑ 𝑥1(𝑛) 𝑁−1 𝑛=0 ∑𝑥2(𝑙) 𝑁−1 𝑙=0 [∑ 𝑒𝑗 2𝜋𝑘(𝑚−𝑛−𝑙) 𝑁 𝑁−1 𝑘=0 ] (5.63) Tổng bên trong ngoặc vuông trong (5.63)có dạng: ∑ 𝑎𝑘 𝑁−1 𝑘=0 = { 𝑁, 𝑎 = 1 1 − 𝑎𝑁 1 − 𝑎 𝑎 ≠ 1 (5.64) trong đó a bằng 𝑎 = 𝑒𝑗2𝜋(𝑚−𝑛−𝑙)/𝑁 Ta thấy rằng 𝑎 = 1 khi 𝑚 − 𝑛 − 𝑙 là bội của N. Mặt khác, 𝑎𝑁 = 1 với mọi giá trị của 𝑎 ≠ 0. Do đó, công thức (5.64) trở thành: ∑𝑎𝑘 𝑁−1 𝑘=0 = { 𝑁, 𝑙 = 𝑚 − 𝑛 + 𝑝𝑁 0, 𝑎 ≠ 1 (5.65) trong đó, 𝑝 là một số nguyên. Thế kết quả trong công thức (5.65) vào (5.63), ta được 𝑥3(𝑛) có dạng: 𝑥3(𝑚) = ∑ 𝑥1(𝑛) 𝑁−1 𝑛=0 𝑥2((𝑚 − 𝑛))𝑁 , 𝑚 = 0,1, ,𝑁 − 1 (5.66) Công thức (5.66) có dạng tương tự như công thức tích chập, ta gọi là tích chập vòng. Như vậy, tích của hai dãy DFT tương đương với tích chập vòng của hai dãy trong miền thời gian. Ta có ví dụ minh họa phép toán tích chập vòng như sau: VÍ DỤ 5.4 Thực hiện tích chập vòng của hai dãy sau 𝑥1(𝑛) = {2 ↑ , 1,2,1} 𝑥2(𝑛) = {1 ↑ , 2,3,4} Lời giải. Hai dãy trên gồm bốn điểm khác không. Với mục đích minh họa việc tính toán tích chập vòng, ta biểu diễn mỗi dãy thành các điểm trên vòng tròn. Dãy 𝑥1(𝑛) và 𝑥2(𝑛) được minh họa như trên Hình 5-8(a). Ta tính tích chập vòng giữa 𝑥1(𝑛) và 𝑥2(𝑛) theo công thức (5.66) như sau: Đầu tiên, với 𝑚 = 0 ta có 𝑥3(0) = ∑𝑥1(𝑛)𝑥2((−𝑛))4 3 𝑛=0 𝑥2((−𝑛))4 là dãy 𝑥2(𝑛) đảo vòng như trong (5.44). Nói cách khác, để đảo vòng dãy 𝑥2(𝑛) ta biểu diễn các giá trị của dãy theo chiều kim đồng hồ trên vòng tròn. Dãy kết quả được tính bằng cách nhân đôi một từng mẫu của 𝑥1(𝑛) và 𝑥2((−𝑛))4. Dãy kết quả trong Hình 5-8(b). Cuối cùng, ta cộng tất cả các giá trị của dãy kết quả, ta được 𝑥3(0) = 14 Tương tự, với 𝑚 = 1, ta có: 𝑥3(1) = ∑𝑥1(𝑛)𝑥2((1 − 𝑛))4 3 𝑛=0 Dễ dàng thấy rằng 𝑥2((1 − 𝑛))4 là dãy 𝑥2( (−𝑛)) 4 xoay theo chiều ngược chiều kim đồng hồ một đơn vị thời gian như trong Hình 5-8(c). Nhân dãy đó với 𝑥1(𝑛), ta được dãy tích trong Hình 5-8(c). Cuối cùng, cộng tất cả các mẫu của dãy tích ta được 𝑥3(1): 𝑥3(1) = 16 Với 𝑚 = 2 ta có: 𝑥3(2) = ∑𝑥1(𝑛)𝑥2((2 − 𝑛))4 3 𝑛=0 Dãy đảo vòng (b) Dãy tích Dãy đảo vòng, dịch vòng một đơn vị thời gian (c) Dãy tích Dãy đảo vòng, dịch vòng hai đơn vị thời gian (d) Dãy tích Dãy đảo vòng, dịch vòng ba đơn vị thời gian (e) Dãy tích Hình 5-8 Tích chập vòng của hai dãy Với 𝑥2((2 − 𝑛))4 là dãy 𝑥2( (−𝑛)) 4 xoay theo chiều ngược chiều kim đồng hồ hai đơn vị thời gian như trong Hình 5-8(d) cùng với dãy tích 𝑥1(𝑛)𝑥2((2 − 𝑛))4. Cuối cùng, cộng tất cả các mẫu của dãy tích ta được 𝑥3(2) = 14 Với 𝑚 = 3 ta có: 𝑥3(3) = ∑𝑥1(𝑛)𝑥2((3 − 𝑛))4 3 𝑛=0 Dãy 𝑥2((−𝑛))4 xoay theo chiều ngược chiều kim đồng hồ ba đơn vị thời gian ta được 𝑥2((3 − 𝑛))4 và nhân với 𝑥1(𝑛) ta được dãy tích như Hình 5-8(e). Tổng các giá trị của dãy tích là 𝑥3(𝑛) = 16 Nếu tiếp tục tính toán như trên với 𝑚 > 3, các giá trị thu được lặp lại bốn giá trị thu được ở trên. Do đó, tích chập vòng của hai dãy 𝑥1(𝑛) và 𝑥2(𝑛) ta được dãy sau 𝑥3(𝑛) = {14 ↑ , 16,14,16} Với ví dụ này, ta thấy rằng tích chập vòng được tính cũng bằng bốn bước tương tự như trong tích chập tuyến tính ở Chương 2: đảo dãy, dịch dãy đảo, nhân hai dãy để thu được dãy tích, tính tổng tất cả các giá trị của dãy tích. Điều khác nhau cơ bản giữa hai loại tích chập là: đối với tích chập vòng phép đảo và dịch dãy được thực hiện trên vòng tròn. Ngoài ra, với phép tính tích chập vòng, vai trò của hai dãy như nhau, ta hoàn toàn có thể giữ nguyên một trong hai dãy và đảo, dịch vòng dãy còn lại để tính toán: 𝑥3(𝑚) = ∑ 𝑥2(𝑛) 𝑁−1 𝑛=0 𝑥1((𝑚 − 𝑛))𝑁 , 𝑚 = 0,1, ,𝑁 − 1 (5.67) Ta xét tiếp ví dụ dưới đây minh họa việc tính 𝑥3(𝑛) theo DFT và IDFT VÍ DỤ 5.5 Bằng cách sử dụng DFT và IDFT, xác định 𝑥3(𝑛) tương ứng là tích chập vòng của 𝑥1(𝑛) và 𝑥2(𝑛) trong Ví dụ 5.4. Lời giải. Đầu tiên ta tính DFT của 𝑥1(𝑛) và 𝑥2(𝑛). DFT bốn điểm của 𝑥1(𝑛) là: 𝑋1(𝑘) = ∑𝑥1(𝑛)𝑒 −𝑗 2𝜋𝑛𝑘 4 3 𝑛=0 , 𝑘 = 0,1,2,3 = 2 + 𝑒−𝑗 𝜋𝑘 2 + 𝑒−𝑗𝜋𝑘 + 𝑒−𝑗 3𝜋𝑘 2 Vậy 𝑋1(0) = 6, 𝑋1(1) = 0, 𝑋1(2) = 2, 𝑋1(3) = 0 DFT của 𝑥2(𝑛) là: 𝑋2(𝑘) = ∑𝑥2(𝑛)𝑒 −𝑗 2𝜋𝑛𝑘 4 3 𝑛=0 , 𝑘 = 0,1,2,3 = 1 + 2𝑒−𝑗 𝜋𝑘 2 + 3𝑒−𝑗𝜋𝑘 + 4𝑒−𝑗 3𝜋𝑘 2 Vậy 𝑋2(0) = 10, 𝑋2(1) = −2 + 𝑗2, 𝑋2(2) = −2, 𝑋2(3) = −2 − 𝑗2 Khi ta nhân hai dãy DFT, ta được 𝑋3(𝑘) = 𝑋1(𝑘)𝑋2(𝑘) Như vậy, ta có 𝑋3(0) = 60, 𝑋3(1) = 0, 𝑋3(2) = −4, 𝑋3(3) = 0 Sử dụng IDFT với 𝑋3(𝑘) ta được: 𝑥3(𝑛) = ∑𝑋3(𝑘)𝑒 𝑗 2𝜋𝑛𝑘 4 3 𝑘=0 , 𝑛 = 0,1,2,3 = 1 4 (60 − 4𝑒𝑗𝜋𝑛) Vậy 𝑥3(0) = 14, 𝑥3(1) = 16, 𝑥3(2) = 14, 𝑥3(3) = 16 đây chính là kết quả thu được trong Ví dụ 5.4 với tích chập vòng Ta kết luận lại tính chất quan trọng trong phần này Tích chập vòng. Nếu 𝑥1(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋1(𝑘) và 𝑥2(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋2(𝑘) ta có 𝑥1(𝑛)Ⓝ𝑥2(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋1(𝑘)𝑋2(𝑘) (5.68) trong đó 𝑥1(𝑛)Ⓝ𝑥2(𝑛) ký hiệu tích chập vòng của hai dãy 𝑥1(𝑛) và 𝑥2(𝑛). Các tính chất khác của DFT Đảo vòng miền thời gian. Nếu 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) vậy 𝑥((−𝑛)) 𝑁 = 𝑥(𝑁 − 𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋((−𝑘)) 𝑁 = 𝑋(𝑁 − 𝑘) (5.69) Hình 5-9 biểu diễn việc đảo vòng dãy trên miền thời gian. Chứng minh. Ta có công thức định nghĩa biến đổi DFT như sau: Hình 5-9 Đảo dãy trên miền thời gian 𝐷𝐹𝑇{𝑥(𝑁 − 𝑛)} = ∑ 𝑥(𝑁 − 𝑛)𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 Nếu ta thay đổi chỉ số 𝑛 thành 𝑚 = 𝑁 − 𝑛, ta có 𝐷𝐹𝑇{𝑥(𝑁 − 𝑛)} = ∑ 𝑥(𝑚)𝑒−𝑗 2𝜋𝑘(𝑁−𝑚) 𝑁 𝑁−1 𝑚=0 = ∑ 𝑥(𝑚)𝑒𝑗 2𝜋𝑘𝑚 𝑁 𝑁−1 𝑚=0 = ∑ 𝑥(𝑚)𝑒−𝑗 2𝜋𝑚(𝑁−𝑘) 𝑁 𝑁−1 𝑚=0 = 𝑋(𝑁 − 𝑘) Chú ý rằng 𝑋(𝑁 − 𝑘) = 𝑋((−𝑘)) 𝑁 , 0 ≤ 𝑘 ≤ 𝑁 − 1. Tính chất dịch vòng. Nếu 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) vậy 𝑥((𝑛 − 𝑙)) 𝑁 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘)𝑁𝑒 −𝑗 2𝜋𝑘𝑙 𝑁 (5.70) Chứng minh Từ định nghĩa của DFT ta có: 𝐷𝐹𝑇 {𝑥((𝑛 − 𝑙)) 𝑁 } = ∑ 𝑥((𝑛 − 𝑙)) 𝑁 𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=0 = ∑𝑥((𝑛 − 𝑙)) 𝑁 𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑙−1 𝑛=0 +∑ 𝑥(𝑛 − 𝑙)𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=𝑙 Nhưng 𝑥((𝑛 − 𝑙)) 𝑁 = 𝑥(𝑁 − 𝑙 + 𝑛). Do đó: ∑𝑥((𝑛 − 𝑙)) 𝑁 𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑙−1 𝑛=0 = ∑𝑥(𝑁 − 𝑙 + 𝑛)𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑙−1 𝑛=0 = ∑ 𝑥(𝑚)𝑒−𝑗 2𝜋𝑘(𝑚+𝑙) 𝑁 𝑁−1 𝑚=𝑁−𝑙 Hơn nữa: ∑𝑥(𝑛 − 𝑙)𝑒−𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑛=𝑙 = ∑ 𝑥(𝑚)𝑒−𝑗 2𝜋𝑘(𝑚+𝑙) 𝑁 𝑁−1−𝑙 𝑚=0 Do đó: 𝐷𝐹𝑇 {𝑥((𝑛 − 𝑙)) 𝑁 } = ∑ 𝑥(𝑚)𝑒−𝑗 2𝜋𝑘(𝑚+𝑙) 𝑁 𝑁−1 𝑚=0 = 𝑋(𝑘)𝑒−𝑗 2𝜋𝑘𝑙 𝑁 Dịch vòng tần số. Nếu 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) vậy 𝑥(𝑛)𝑒𝑗 2𝜋𝑙𝑛 𝑁 𝐷𝐹𝑇 ↔ 𝑁 𝑋((𝑘 − 𝑙)) 𝑁 (5.71) Vậy, việc nhân dãy 𝑥(𝑛) với dãy hàm mũ phức 𝑒𝑗2𝜋𝑙𝑛/𝑁 tương đương với việc dịch vòng dãy DFT l đơn vị trên miền tần số. Tính chất liên hợp phức. Nếu 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) vậy 𝑥∗(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋∗((−𝑘)) 𝑁 = 𝑋∗(𝑁 − 𝑘) (5.72) Chứng minh tính chất này được cọi bài tập dành cho người đọc. Biến đổi IDFT của 𝑋∗(𝑘) là 1 𝑁 ∑𝑋∗(𝑘)𝑒𝑗 2𝜋𝑘𝑛 𝑁 𝑁−1 𝑘=0 = [ 1 𝑁 ∑ 𝑋(𝑘)𝑒𝑗 2𝜋𝑘(𝑁−𝑛) 𝑁 𝑁−1 𝑘=0 ] Do đó 𝑥∗((−𝑛)) 𝑁 = 𝑥∗(𝑁 − 𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋∗(𝑘) (5.73) Tương quan vòng. Với hai dãy tín hiệu phức 𝑥(𝑛) và 𝑦(𝑛), nếu 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) và 𝑦(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑌(𝑘) ta có �̃�𝑥𝑦(𝑙) 𝐷𝐹𝑇 ↔ 𝑁 �̃�𝑥𝑦(𝑘) = 𝑋(𝑘)𝑌 ∗(𝑘) (5.74) trong đó �̃�𝑥𝑦(𝑙) là dãy tương quan chéo vòng, được định nghĩa như sau: �̃�𝑥𝑦(𝑙) = ∑ 𝑥(𝑛)𝑦 ∗((𝑛 − 𝑙)) 𝑁 𝑁−1 𝑛=0 Chứng minh Chúng ta có thể viết �̃�𝑥𝑦(𝑙) giống như tích chập vòng của 𝑥(𝑛) và 𝑦 ∗(−𝑛) như sau: �̃�𝑥𝑦(𝑙) = 𝑥(𝑙)Ⓝ𝑦 ∗(−𝑙) Vậy, với các tính chất (5.68) và (5.73), DFT N điểm của �̃�𝑥𝑦(𝑙) bằng: �̃�𝑥𝑦(𝑘) = 𝑋(𝑘)𝑌 ∗(𝑘) Trong trường hợp đặc biệt khi 𝑥(𝑛) = 𝑦(𝑛), ta có biểu thức dãy tự tương quan vòng tương ứng của 𝑥(𝑛) là: �̃�𝑥𝑥(𝑙) 𝐷𝐹𝑇 ↔ 𝑁 �̃�𝑥𝑥(𝑘) = 𝑋(𝑘)𝑋 ∗(𝑘) = |𝑋(𝑘)|2 (5.75) Nhân hai dãy. Nếu 𝑥1(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋1(𝑘) và 𝑥2(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋2(𝑘) ta có 𝑥1(𝑛)𝑥2(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 1 𝑁 𝑋1(𝑘)Ⓝ𝑋2(𝑘) (5.76) Lý thuyết Parseval. Với hai dãy có giá trị phức 𝑥(𝑛) và 𝑦(𝑛), nếu: 𝑥(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋(𝑘) và 𝑦(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑌(𝑘) ta có ∑𝑥(𝑛)𝑦∗(𝑛) 𝑁−1 𝑛=0 = 1 𝑁 ∑𝑋(𝑘)Y∗(𝑘) 𝑁−1 𝑘=0 (5.77) Chứng minh Tính chất này xuất phát trực tiếp từ tính chất tương quan vòng (5.74). Ta có: ∑𝑥(𝑛)𝑦∗(𝑛) 𝑁−1 𝑛=0 = �̃�𝑥𝑦(0) và �̃�𝑥𝑦(𝑙) = 1 𝑁 ∑ �̃�𝑥𝑦(𝑘)𝑒 𝑗 2𝜋𝑘𝑙 𝑁 𝑁−1 𝑘=0 = 1 𝑁 ∑ 𝑋(𝑘)𝑌∗(𝑘)𝑒𝑗 2𝜋𝑘𝑙 𝑁 𝑁−1 𝑘=0 Thế 𝑙 = 0, ta được (5.77). Ta tổng hợp các tính chất của DFT trong bảng sau: Bảng 5-2 Tính chất của DFT Tính chất Miền thời gian Miền tần số 𝑥(𝑛), 𝑦(𝑛) 𝑋(𝑘), 𝑌(𝑘) Tính tuần hoàn 𝑥(𝑛) = 𝑥(𝑛 + 𝑁) 𝑋(𝑘) = 𝑋(𝑘 + 𝑁) Tính tuyến tính 𝑎1𝑥1(𝑛) + 𝑎2𝑥2(𝑛) 𝑎1𝑋1(𝑘) + 𝑎2𝑋2(𝑘) Đảo miền thời gian 𝑥(𝑁 − 𝑛) 𝑋(𝑁 − 𝑘) Dịch vòng thời gian 𝑥((𝑛 − 𝑙)) 𝑁 𝑋(𝑘)𝑒−𝑗 2𝜋𝑘𝑙 𝑁 Dịch vòng tần số 𝑥(𝑛)𝑒𝑗 2𝜋𝑙𝑛 𝑁 𝑋((𝑘 − 𝑙))𝑁 Liên hợp phức 𝑥∗(𝑛) 𝑋∗(𝑁 − 𝑘) Tích chập vòng 𝑥1(𝑛)Ⓝ𝑥2(𝑛) 𝑋1(𝑘)𝑋2(𝑘) Tương quan vòng 𝑥(𝑛)Ⓝ𝑦∗(−𝑛) 𝑋(𝑘)𝑌∗(𝑘) Nhân hai dãy 𝑥1(𝑛)𝑥2(𝑛) 1 𝑁 𝑋1(𝑘)Ⓝ𝑋2(𝑘) Lý thuyết Parseval ∑𝑥(𝑛)𝑦∗(𝑛) 𝑁−1 𝑛=0 1 𝑁 ∑ 𝑋(𝑘)Y∗(𝑘) 𝑁−1 𝑘=0 LỌC TUYẾN TÍNH SỬ DỤNG DFT Trong phần trước ta đã chứng minh rằng tích của hai dãy DFT tương đương với tích chập vòng của hai dãy tương ứng trong miền thời gian. Tuy nhiên, tích chập vòng lại không thể sử dụng để xác định đầu ra của bộ lọc tuyến tính với một tín hiệu đầu vào nào đó. Như vậy, ta cần tìm một giải pháp tương đương với tích chập tuyến tính. Giả sử rằng chúng ta có dãy hữu hạn 𝑥(𝑛) với chiều dài L đi qua một hệ thống FIR có đáp ứng xung hữu hạn có chiều dài M. Không làm mất tính tổng quát ta có 𝑥(𝑛) = 0, 𝑛 < 0 và 𝑛 ≥ 𝐿 ℎ(𝑛) = 0, 𝑛 < 0 và 𝑛 ≥ 𝑀 trong đó ℎ(𝑛) là đáp ứng xung của bộ lọc FIR. Dãy đáp ứng ra 𝑦(𝑛) của bộ lọc FIR được biểu diễn trên miền thời gian là tích chập của hai dãy 𝑥(𝑛) và ℎ(𝑛) 𝑦(𝑛) = ∑ ℎ(𝑘)𝑥(𝑛 − 𝑘) 𝑀−1 𝑘=0 (5.78) Với ℎ(𝑛) và 𝑥(𝑛) là hai dãy hữu hạn, tích chập của chúng cũng là dãy hữu hạn có chiều dài là 𝐿 +𝑀 − 1. Công thức (5.78) được biểu diễn trong miền tần số như sau 𝑌(𝜔) = 𝐻(𝜔)𝑋(𝜔) (5.79) Nếu dãy 𝑦(𝑛) được biểu diễn duy nhất trong miền tần số bởi các mẫu của phổ 𝑌(𝜔) tại các tần số rời rạc, thì số lượng mẫu phổ phải bằng hoặc lớn hơn 𝐿 +𝑀 − 1. Do đó, biến đổi DFT của 𝑦(𝑛) phải được thực hiện với 𝑁 ≥ 𝐿 +𝑀 − 1 điểm. Vậy nếu 𝑌(𝑘) ≡ 𝑌(𝜔)| 𝜔= 2𝜋𝑘 𝑁 , 𝑘 = 0,1, , 𝑁 − 1 = 𝑋(𝜔)𝐻(𝜔)| 𝜔= 2𝜋𝑘 𝑁 , 𝑘 = 0,1, ,𝑁 − 1 Thì 𝑌(𝑘) = 𝑋(𝑘)𝐻(𝑘), 𝑘 = 0,1, ,𝑁 − 1 (5.80) trong đó {𝑋(𝑘)} và {𝐻(𝑘)} là DFT 𝑁 điểm của các dãy 𝑥(𝑛) và ℎ(𝑛) tương ứng. Vì các dãy 𝑥(𝑛) và ℎ(𝑛) có chiều dài nhỏ hơn 𝑁 nên ta phải thêm vào dãy các mẫu có giá trị không để tăng chiều dài của dãy lên 𝑁. Các mẫu thêm vào không làm thay đổi phổ 𝑋(𝜔) và 𝐻(𝜔) (do dãy không tuần hoàn nên phổ của chúng là liên tục). Tuy nhiên, việc lấy mẫu phổ của chúng tại 𝑁 điểm cách đều nhau trong miền tần số (tính DFT 𝑁 điểm), ta đã tăng số mẫu của dãy trong miền tần số lên so với số mẫu tối thiểu cần thiết (𝐿 hoặc 𝑀). Vì DFT 𝑁 điểm (𝑁 = 𝐿 +𝑀 − 1) của dãy tín hiệu ra 𝑦(𝑛) là đủ để biểu diễn 𝑦(𝑛) trên miền tần số, từ đó tích của hai dãy DFT 𝑁 điểm 𝑋(𝑘) và 𝐻(𝑘) (như trong công thức (5.80)) sau đó tính IDFT ta phải thu được 𝑦(𝑛). Như vậy, tích chập vòng N điểm của hai dãy 𝑥(𝑛) và ℎ(𝑛) tương đương với tích chập tuyến tính của hai dãy 𝑥(𝑛) và ℎ(𝑛). Nói cách khác, bằng cách tăng chiều dài của hai dãy 𝑥(𝑛) và ℎ(𝑛) lên thành N mẫu (thêm vào các mẫu không), sau đó tính tích chập vòng hai dãy, ta thu được dãy kết quả giống với dãy kết quả của tích chập tuyến tính. Từ đó, biến đổi DFT có thể được sử dụng để thực hiện các bộ lọc tuyến tính. Ví dụ dưới đây minh họa điều này VÍ DỤ 5.6 Sử dụng DFT và IDFT, xác định đáp ứng ra của bộ lọc FIR có đáp ứng xung: ℎ(𝑛) = {1 ↑ , 2,3} Với tín hiệu vào 𝑥(𝑛) = {1 ↑ , 2,2,1} Lời giải. Tín hiệu vào có chiều dài 𝐿 = 4, đáp ứng xung có chiều dài 𝑀 = 3. Tích chập tuyến tính của hai dãy cho ta một dãy có chiều dài 𝑁 = 6. Vậy ta cần phải tính DFT của hai dãy với ít nhất sáu điểm. Để đơn giản, ta tính DFT tám điểm của hai dãy trên. Chú ý rằng việc tính toán DFT sử dụng thuật toán biến đổi Fourier nhanh (FFT) thường được thực hiện với chiều dài 𝑁 là lũy thừa của 2. Vậy DFT tám điểm của 𝑥(𝑛) là 𝑋(𝑘) = ∑𝑥(𝑛)𝑒−𝑗2𝜋𝑘𝑛/8 7 𝑛=0 = 1 + 2𝑒−𝑗𝜋𝑘/4 + 2𝑒−𝑗𝜋𝑘/2 + 𝑒−𝑗3𝜋𝑘/4, 𝑘 = 0,1, ,7 Tính toán ta được 𝑋(0) = 6 𝑋(1) = 2 + √2 2 − 𝑗 (4 + 3√2) 2 𝑋(2) = −1 − 𝑗 𝑋(3) = 2 − √2 2 + 𝑗 (4 − 3√2) 2 𝑋(4) = 0 𝑋(5) = 2 − √2 2 − 𝑗 (4 − 3√2) 2 𝑋(6) = −1 + 𝑗 𝑋(7) = 2 + √2 2 + 𝑗 (4 + 3√2) 2 DFT tám điểm của ℎ(𝑛) là: 𝐻(𝑘) = ∑ℎ(𝑛)𝑒−𝑗2𝜋𝑘𝑛/8 7 𝑛=0 = 1 + 2𝑒−𝑗𝜋𝑘/4 + 3𝑒−𝑗𝜋𝑘/2, 𝑘 = 0,1, ,7 vậy 𝐻(0) = 6 𝐻(1) = 1 + √2 − 𝑗(3 + √2) 𝐻(2) = −2 − 𝑗2 𝐻(3) = 1 − √2 + 𝑗(3 − √2) 𝐻(4) = 2 𝐻(5) = 1 − √2 − 𝑗(3 − √2) 𝐻(6) = −2 + 𝑗2 𝐻(7) = 1 + √2 + 𝑗(3 + √2) Nhân hai dãy DFT trên ta được 𝑌(𝑘) là: 𝑌(0) = 36 𝑌(1) = −14.07 − 𝑗17.48 𝑌(2) = 𝑗4 𝑌(3) = 0.07 + 𝑗0.515 𝑌(4) = 0 𝑌(5) = 0.07 − 𝑗0.515 𝑌(6) = −𝑗4 𝑌(7) = −14.07 + 𝑗17.48 Cuối cùng, ta có IDFT tám điểm của dãy trên là: 𝑦(𝑛) = ∑𝑌(𝑘)𝑒𝑗2𝜋𝑘𝑛/8 7 𝑘=0 , 𝑛 = 0,1, ,7 Ta thu được kết quả: 𝑦(𝑛) = {1 ↑ , 4,9,11,8,3,0,0} Ta thấy rằng sáu giá trị đầu tiên của dãy 𝑦(𝑛) là đầu ra của hệ thống. Hai giá trị sau bằng không là do ta sử dụng DFT và IDFT tám điểm, trong khi thực tế số điểm nhỏ nhất cần thiết là sáu. Như vậy, qua ví dụ trên ta có thể thấy, mặc dù phép nhân hai dãy DFT tương ứng với tích chập vòng trong miền thời gian. Tuy nhiên, nếu ta thêm vào dãy 𝑥(𝑛) và ℎ(𝑛) các mẫu bằng không để tăng chiều dài của hai dãy, từ đó tăng kích thước dãy DFT sao cho số mẫu của dãy DFT tối thiểu bằng tổng chiều dài ban đầu của hai dãy 𝑥(𝑛) và ℎ(𝑛) trừ 1 thì tích chập vòng lúc này sẽ bằng tích chập tuyến tính. Điều này thể hiện rõ ràng trong ví dụ trên: ℎ(𝑛) = {1 ↑ , 2,3,0,0,0} (5.81) 𝑥(𝑛) = {1 ↑ , 2,2,1,0,0} (5.82) Cho ta tín hiệu ra: 𝑦(𝑛) = {1 ↑ , 4,9,11,8,3} (5.83) giống với kết quả thu được của tích chập tuyến tính. PHÂN TÍCH TẦN SỐ CỦA TÍN HIỆU SỬ DỤNG DFT Để tính toán phổ của tín hiệu rời rạc hoặc liên tục thời gian, cần phải biết tất cả các giá trị của tín hiệu tại mọi thời điểm. Tuy nhiên, thực tế, các tín hiệu không chỉ là các tín hiệu hữu hạn. Do đó, phổ của tín hiệu chỉ xấp xỉ với với một tín hiệu hữu hạn. Trong phần này, ta thử thực hiện phân tích tần số sử dụng DFT. Nếu tín hiệu được phân tích là tín hiệu tương tự, ta cần đưa tín hiệu qua một bộ lọc nhiễu, sau đó lấy mẫu tín hiệu với tần số lấy mẫu 𝐹𝑠 ≥ 2𝐵, với 𝐵 là băng thông của tín hiệu đã được lọc nhiễu. Vậy tần số lớn nhất trong tín hiệu đã được lấy mẫu là 𝐹𝑠/2. Cuối cùng, với mục đích thực hành, ta giới hạn khoảng thời gian của tín hiệu là 𝑇0 = 𝐿𝑇, trong đó 𝐿 là số mẫu tín hiệu, 𝑇 là khoảng thời gian giữa hai mẫu. Chúng ta sẽ thấy dưới đây, khoảng thời gian của tín hiệu giới hạn độ phân giải tần số của tín hiệu; dó đó, nó giới hạn khả năng phân biệt hai thành phần tần số được chia ra nhỏ hơn 1/𝑇0 = 1/𝐿𝑇. Ta ký hiệu {𝑥(𝑛)} là dãy được phân tích. Để giới hạn chiều dài của dãy trong 𝐿 mẫu, từ 0 ≤ 𝑛 ≤ 𝐿 − 1, ta thực hiện việc nhân dãy {𝑥(𝑛)} với cửa sổ chữ nhật 𝑤(𝑛) với chiều dài 𝐿. Do đó: �̂�(𝑛) = 𝑥(𝑛)𝜔(𝑛) (5.84) trong đó 𝑤(𝑛) = { 1, 0 ≤ 𝑛 ≤ 𝐿 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 (5.85) Bây giờ giả sử dãy 𝑥(𝑛) là một dãy hình sin như sau 𝑥(𝑛) = cos𝜔0𝑛 (5.86) Sau đó, biến đổi Fourier của dãy hữu hạn 𝑥(𝑛) có thể biểu diễn như sau: �̂�(𝜔) = 1 2 [𝑊(𝜔 − 𝜔0) +𝑊(𝜔 +𝜔0)] (5.87) trong đó 𝑊(𝜔) là biến đổi Fourier của dãy cửa sổ, 𝑊(𝜔) = sin ( 𝜔𝐿 2 ) sin ( 𝜔 2) 𝑒−𝑗𝜔(𝐿−1)/2 (5.88) Để tính �̂�(𝜔), ta sử dụng DFT. Bằng cách thêm vào dãy �̂�(𝑛) 𝑁 − 𝐿 điểm không, ta có thể tính DFT N điểm của dãy {�̂�(𝑛)} (chiều dài L). Phổ biên độ |�̂�(𝑘)| = |�̂�(𝜔𝑘)| với 𝜔𝑘 = 2𝜋𝑘/𝑁, 𝑘 = 0,1, ,𝑁, được minh họa trong Hình 5-10 với 𝐿 = 25 và 𝑁 = 2048. Chúng ta chú ý rằng phổ của tín hiệu sau khi cắt ngắn �̂�(𝜔) không chỉ là một tần số đơn mà trải ra toàn bộ dải tần số. Vậy công suất của tín hiệu ban đầu {𝑥(𝑛)} không còn được tập trung tại một tần số nữa mà trải ra toàn bộ dải tần số do việc ta nhân tín hiệu với một dãy cửa sổ. Ta nói rằng công suất bị “dò rỉ” trên toàn bộ miền tần số. Do đó, đặc tính này của việc lấy cửa sổ tín hiệu được gọi là dò phổ (leakage). Việc lấy cửa sổ tín hiệu không chỉ là méo phổ mà còn giảm độ phân giải phổ. Để minh họa điều này, ta xét tín hiệu sau gồm hai thành phần tần số 𝑥(𝑛) = cos𝜔1𝑛 + cos𝜔2𝑛 (5.89) Khi dãy trên bị cắt thành L mẫu trong khoảng từ 0 ≤ 𝑛 ≤ 𝐿 − 1, phổ của tín hiệu sau khi lấy cửa sổ là �̂�(𝜔) = 1 2 [𝑊(𝜔 − 𝜔1) +𝑊(𝜔 − 𝜔2) +𝑊(𝜔 +𝜔1) +𝑊(𝜔 + 𝜔2)] (5.90) Hình 5-10 Phổ biên độ với 𝐋 = 𝟐𝟓 và 𝐍 = 𝟐𝟎𝟒𝟖 minh họa hiệu ứng leakage (a) (b) (b) Hình 5-11 Phổ biên độ của tín hiệu trong (5.90) sau khi sử dụng cửa sổ chữ nhật Phổ của 𝑊(𝜔) có các điểm bằng không tại 𝜔 = 2𝜋/𝐿. Nếu |𝜔1 − 𝜔2| < 2𝜋/𝐿, hai hàm cửa sổ 𝑊(𝜔 − 𝜔1) và 𝑊(𝜔 − 𝜔2) chồng lên nhau và do đó, hai vạch phổ của 𝑥(𝑛) không thể phân biệt được. Chỉ nếu |𝜔1 − 𝜔2| ≥ 2𝜋/𝐿, ta sẽ thấy hai thùy riêng biệt trên phổ của �̂�(𝜔). Vậy chúng ta chỉ có thể phân tích được các vạch phổ của các tần số giới hạn trong độ rộng thùy chính của cửa sổ. Hình 5-11 minh họa phổ biên độ |𝑋(𝜔)|, được tính toán thông qua DFT của tín hiệu sau 𝑥(𝑛) = cos𝜔0𝑛 + cos𝜔1𝑛 + cos𝜔2𝑛 (5.91) trong đó 𝜔0 = 0.2𝜋, 𝜔1 = 0.22𝜋, và 𝜔2 = 0.6𝜋. Chiều dài cửa sổ được chọn là 𝐿 = 20, 50 và 100. Chú ý rằng 𝜔0 và 𝜔1 không phân tích được với 𝐿 = 25 và 50, nhưng phân tích được với 𝐿 = 100. Để giảm dò phổ, ta có thể chọn cửa sổ dữ liệu 𝑤(𝑛) có thùy bên thấp hơn trên miền tần số so với cửa sổ chữ nhật. Tuy nhiên, việc giảm thùy bên của cửa sổ 𝑊(𝜔) phải trả giá bằng việc tăng độ rộng thùy chính của 𝑊(𝜔) và do đó giảm độ phân giải. Để minh họa điều này, chúng ta hãy xét cửa sổ Hanning như sau: 𝑤(𝑛) = { 1 2 (1 − cos 2𝜋 𝐿 − 1 𝑛) , 0 ≤ 𝑛 ≤ 𝐿 − 1 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 (5.92) Hình 5-12 biểu diễn �̂�(𝜔) của (5.92). Thùy bên của cửa sổ này nhỏ hơn đáng kể so với thùy bên của cửa sổ chữ nhật, nhưng thùy chính rộng gấp đôi. Hình 5-13 minh họa phổ của tín hiệu trong (5.91) sau khi được nhân với cửa sổ Hanning với 𝐿 = 50, 75, 100. Sự thu nhỏ của thùy bên và giảm độ phân giải so với cửa sổ chữ nhật khá là rõ. Hình 5-12 Phổ biên độ của cửa sổ Hanning (a) (b) (c) Hình 5-13 Phổ biên độ của tín hiệu trong (5.91) sau khi nhân với cửa sổ Hanning Với một dãy tín hiệu bất kỳ 𝑥(𝑛), quan hệ miền tần số giữa dãy được lấy cửa sổ �̂�(𝑛) và dãy ban đầu 𝑥(𝑛) được thể hiện qua công thức tích chập sau: �̂�(𝜔) = 1 2𝜋 ∫𝑋(𝜃)𝑊(𝜔 − 𝜃)𝑑𝜃 𝜋 −𝜋 (5.93) Biến đổi DFT của tín hiệu lấy cửa sổ �̂�(𝑛) là các mẫu của phổ �̂�(𝜔). Vậy ta có: �̂�(𝑘) ≡ �̂�(𝜔)| 𝜔= 2𝜋𝑘 𝑁 = 1 2𝜋 ∫𝑋(𝜃)𝑊 ( 2𝜋𝑘 𝑁 − 𝜃) 𝑑𝜃 𝜋 −𝜋 , 𝑘 = 0,1, ,𝑁 − 1 (5.94) Như trong trường hợp dãy hình sin, nếu độ rộng phổ cửa sổ hẹp hơn so với phổ 𝑋(𝜔) của tín hiệu, hàm cửa sổ chỉ ảnh hưởng nhỏ đến phổ 𝑋(𝜔). Mặt khác, nếu hàm cửa sổ có phổ rộng hơn so với độ rộng của 𝑋(𝜔) (trong trường hợp này số mẫu L nhỏ), phổ cửa sổ che phổ tín hiệu nên biến đổi DFT của dữ liệu làm xấu đi đặc tính phổ của hàm cửa sổ. Tất nhiên, trường hợp này ta nên tránh. VÍ DỤ 5.7 Tín hiệu hàm mũ 𝑥𝑎(𝑡) = { 𝑒−𝑡, 𝑡 ≥ 0 0, 𝑡 < 0 được lấy mẫu với tần số lấy mẫu 𝐹𝑠 = 20 mẫu một giây, một đoạn 100 mẫu được sử dụng để tính phổ. Xác định đặc tính phổ của tín hiệu 𝑥𝑎(𝑡) bằng các tính DFT của dãy hữu hạn. So sánh phổ của tín hiệu rời rạc thời gian bị cắt với phổ tín hiệu tương tự. Lời giải. Tín hiệu hàm mũ tương tự 𝑥𝑎(𝑇) được lấy mẫu với tần số 20 mẫu một giây ta được dãy: 𝑥(𝑛) = 𝑒−𝑛𝑇 = 𝑒− 𝑛 20, 𝑛 ≥ 0 = (𝑒− 1 20) 𝑛 = 0.95𝑛, 𝑛 ≥ 0 Bây giờ, xét 𝑥(𝑛) = { (0.95)𝑛, 0 ≤ 𝑛 ≤ 99 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 Biến đổi DFT N điểm của dãy 100 điểm như sau: �̂�(𝑘) = ∑ �̂�(𝑛)𝑒− 𝑗2𝜋𝑘 𝑁 99 𝑘=0 , 𝑘 = 0,1,2, ,𝑁 − 1 (a) (b) (c) (d) Hình 5-14 Ảnh hưởng của cửa sổ lên tín hiệu rời rạc được lấy mẫu từ tín hiệu tương tự trong Ví dụ 5.7 Để thu được hình ảnh phổ rõ nét hơn ta chọn 𝑁 = 200, nghĩa là ta thêm vào dãy 𝑥(𝑛) 100 điểm không nữa. Đồ thị của tín hiệu tương tự 𝑥𝑎(𝑡) được minh họa trong Hình 5-14. Dãy cắt ngắn 𝑥(𝑛) và DFT (biên độ) 200 điểm của nó được minh họa tại các Hình 5-14(b) và Hình 5-14(c). Mặt khác, giả sử rằng hàm cửa sổ có chiều dài 20. Dãy cắt 𝑥(𝑛) như sau �̂�(𝑛) = { (0.95)𝑛, 0 ≤ 𝑛 ≤ 19 0, 𝑛 𝑐ò𝑛 𝑙ạ𝑖 DFT 200 điểm của dãy trên được minh họa trong Hình 5-14(d). Bây giờ, ảnh hưởng của hàm cửa sổ lên tín hiệu khá rõ ràng. Đầu tiên, đỉnh chính rộng hơn nhiểu do phổ của sổ rộng. Thứ hai, đường bao phổ có dạng hình sin từ đỉnh chính đến thùy lớn tiếp theo của phổ cửa sổ. BÀI TẬP 5.1 Năm điểm đầu tiên của dãy DFT tám điểm của tín hiệu thực là {0.25, 0.125 − 𝑗0.3018, 0, 0.125 − 𝑗0.0518, 0}. Xác định các điểm còn lại. 5.2 Tính tích chập vòng tám điểm của các dãy sau a. 𝑥1(𝑛) = {1,1,1,1,0,0,0,0} 𝑥2(𝑛) = sin 3𝜋 8 𝑛 , 0 ≤ 𝑛 ≤ 7 b. 𝑥1(𝑛) = ( 1 4 ) 𝑛 , 0 ≤ 𝑛 ≤ 7 𝑥2(𝑛) = cos 3𝜋 8 𝑛 , 0 ≤ 𝑛 ≤ 7 c. Tính biến đổi DFT của hai dãy tích chập vòng ở trên sử dụng DFT của 𝑥1(𝑛) và 𝑥2(𝑛). 5.3 Với dãy 𝑥1(𝑛) = cos 2𝜋 𝑁 𝑛 , 𝑥2(𝑛) = sin 2𝜋 𝑁 𝑛 , 0 ≤ 𝑛 ≤ 𝑁 − 1 5.4 Tính tổng sau ∑𝑥1(𝑛)𝑥2(𝑛) 𝑁−1 𝑛=0 với các cặp tín hiệu sau a. 𝑥1(𝑛) = 𝑥2(𝑛) = cos 2𝜋 𝑁 𝑛 , 0 ≤ 𝑛 ≤ 𝑁 − 1 b. 𝑥1(𝑛) = cos 2𝜋 𝑁 𝑛 , 𝑥2(𝑛) = sin 2𝜋 𝑁 𝑛 , 0 ≤ 𝑛 ≤ 𝑁 − 1 c. 𝑥1(𝑛) = 𝛿(𝑛) + 𝛿(𝑛 − 8), 𝑥2(𝑛) = 𝑢(𝑛) − 𝑢(𝑛 − 𝑁) 5.5 Nếu 𝑋(𝑘) là dãy DFT của dãy 𝑥(𝑛), xác định DFT N điểm của các dãy sau 𝑥𝑐(𝑛) = 𝑥(𝑛) cos 2𝜋𝑘0𝑛 𝑁 , 0 ≤ 𝑛 ≤ 𝑁 − 1 và 𝑥𝑠(𝑛) = 𝑥(𝑛) sin 2𝜋𝑘0𝑛 𝑁 , 0 ≤ 𝑛 ≤ 𝑁 − 1 theo 𝑋(𝑘). 5.6 Xác định tích chập vòng của các dãy sau 𝑥1(𝑛) = {1⏟ , 2,3,1} 𝑥2(𝑛) = {4⏟ , 3,2,2} sử dụng công thức miền thời gian trong (7.2.39) 5.7 Tính năng lượng của dãy N điểm 𝑥(𝑛) = cos 2𝜋𝑘0𝑛 𝑁 , 0 ≤ 𝑛 ≤ 𝑁 − 1 5.8 Biết DFT 8 điểm của dãy 𝑥(𝑛) = { 1, 0 ≤ 𝑛 ≤ 3 0, 4 ≤ 𝑛 ≤ 7 Tính DFT của các dãy a. 𝑥1(𝑛) = { 1, 𝑛 = 0 0, 1 ≤ 𝑛 ≤ 4 1, 5 ≤ 𝑛 ≤ 7 b. 𝑥2(𝑛) = { 0, 0 ≤ 𝑛 ≤ 1 1, 2 ≤ 𝑛 ≤ 5 0, 6 ≤ 𝑛 ≤ 7 5.9 Dãy 𝑥𝑝(𝑛) là dãy tuần hoàn với chu kỳ N. Xét các dãy DFT sau: 𝑥𝑝(𝑛) 𝐷𝐹𝑇 ↔ 𝑁 𝑋1(𝑘) 𝑥𝑝(𝑛) 𝐷𝐹𝑇 ↔ 3𝑁 𝑋3(𝑘) a. Trình bày mối quan hệ giữa 𝑋1(𝑘) và 𝑋3(𝑘)? b. Kiểm tra lại kết quả câu a với dãy sau 𝑥𝑝(𝑛) = { ,1,2,1, 2 ↑ , 1,2,1,2, } 5.10 Xét dãy sau 𝑥1(𝑛) = {0 ↑ , 1,2,3,4}, 𝑥2(𝑛) = {0 ↑ , 1,0,0,0} , 𝑠(𝑛) = {1 ↑ , 0,0,0,0} và DFT năm điểm của các dãy trên. a. Xác định 𝑦(𝑛) với 𝑌(𝑘) = 𝑋1(𝑘)𝑋2(𝑘). b. Liệu có dãy 𝑥3(𝑛) mà 𝑆(𝑘) = 𝑋1(𝑘)𝑋3(𝑘)? 5.11 Đáp ứng xung của hệ thống tuyến tính bất biến như sau ℎ(𝑛) = 𝛿(𝑛) − 1 4 𝛿(𝑛 − 𝑘0). Xác định đáp ứng xung 𝑔(𝑛) của dãy đảo, ta tính DFT N điểm 𝐻(𝑘), 𝑁 = 4𝑘0 của ℎ(𝑛), sau đó tính 𝑔(𝑛) là biến đổi DFT ngược của 𝐺(𝑘) = 1/𝐻(𝑘), 𝑘 = 0,1,2, ,𝑁 − 1. Xác định 𝑔(𝑛) và tích chập ℎ(𝑛) × 𝑔(𝑛), và giải thích liệu hệ thống có đáp ứng xung 𝑔(𝑛) là đảo của hệ thống có đáp ứng xung ℎ(𝑛). 5.12 Xác định DFT tám điểm của tín hiệu 𝑥(𝑛) = {1,1,1,1,1,1,0,0} và vẽ biên độ và pha của dãy. 5.13 Tính đối xứng của DFT của dãy thực a. Sử dụng tính đối xứng trong Phần 7.2 (đặc biệt tính phân tích), giải thích làm cách nào ta có thể tính toán DFT của hai dãy thực đối xứng (chẵn) và hai dãy thực phản đối xứng (lẻ) chỉ sử dụng DFT N điểm. b. Giả sử rằng ta có bốn dãy thực 𝑥𝑖(𝑛), 𝑖 = 1,2,3,4, đều là các dãy đối xứng [nghĩa là 𝑥𝑖(𝑛) = 𝑥𝑖(𝑁 − 𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1]. Chứng minh rằng dãy 𝑠𝑖(𝑛) = 𝑥𝑖(𝑛 + 1) − 𝑥𝑖(𝑛 − 1) là dãy phản đối xứng [nghĩa là 𝑠𝑖(𝑛) = −𝑠𝑖(𝑁 − 𝑛) và 𝑠𝑖(0) = 0] c. Tạo dãy 𝑥(𝑛) từ các dãy 𝑥1(𝑛), 𝑥2(𝑛), 𝑠3(𝑛), và 𝑠4(𝑛) và chỉ ra cách tính DFT 𝑋𝑖(𝑘) của 𝑥𝑖(𝑛), 𝑖 = 1,2,3,4 từ DFT N điểm 𝑋(𝑘) của 𝑥(𝑛). d. Liệu có mẫu tần số nào của 𝑋𝑖(𝑘) không thể khôi phục lại từ 𝑋(𝑘)? Giải thích. 5.14 DFT của dãy thực chỉ với hài lẻ Với 𝑥(𝑛) là dãy thực N điểm với DFT N điểm 𝑋(𝑘) (N chẵn). Thêm vào đó, 𝑥(𝑛) thỏa mãn tính đối xứng như sau: 𝑥 (𝑛 + 𝑁 2 ) = −𝑥(𝑛), 𝑛 = 0,1,2, , 𝑁 2 − 1 nghĩa là nửa trên của dãy là âm của nửa trước. a. Chứng minh rằng 𝑋(𝑘) = 0, 𝑘 chẵn nghĩa là dãy có phổ là hài lẻ b. Chứng minh rằng các giá trị của phổ hài lẻ này có thể được tính toán bằng cách đánh giá DFT 𝑁/2 điểm của dạng điều biến phức của dãy ban đầu 𝑥(𝑛). 5.15 Xét dãy tuần hoàn sau 𝑥𝑝(𝑛) = cos 2𝜋 10 𝑛 , − ∞ < 𝑛 < ∞ với tần số 𝑓0 = 1 10 và chu kỳ cơ bản 𝑁 = 10. Xác định DFT 10 điểm của dãy 𝑥(𝑛) = 𝑥𝑝(𝑛), 0 ≤ 𝑛 ≤ 𝑁 − 1. 5.16 Tính DFT N điểm của các dãy tín hiệu sau a. 𝑥(𝑛) = 𝛿(𝑛) b. 𝑥(𝑛) = 𝛿(𝑛 − 𝑛0), 0 < 𝑛0 < 𝑁 c. 𝑥(𝑛) = 𝑎𝑛, 0 ≤ 𝑛 ≤ 𝑁 − 1 d. 𝑥(𝑛) = { 1, 0 ≤ 𝑛 ≤ 𝑁/2 − 1 (𝑁 chẵn) 0, 𝑁/2 ≤ 𝑛 ≤ 𝑁 − 1 e. 𝑥(𝑛) = 𝑒𝑗( 2𝜋 𝑁 )𝑘0 , 0 ≤ 𝑛 ≤ 𝑁 − 1 f. 𝑥(𝑛) = cos 2𝜋 𝑁 𝑘0𝑛 , 0 ≤ 𝑛 ≤ 𝑁 − 1 g. 𝑥(𝑛) = sin 2𝜋 𝑁 𝑘0𝑛 , 0 ≤ 𝑛 ≤ 𝑁 − 1 h. 𝑥(𝑛) = { 1, 𝑛 chẵn 0, 𝑛 lẻ, 0 ≤ 𝑛 ≤ 𝑁 − 1 5.17 a. Xác định biến đổi Fourier 𝑋(𝜔) của tín hiệu 𝑥(𝑛) = {1,2, 3⏟ , 2,1,0} b. Tính DFT sáu điểm 𝑉(𝑘) của tín hiệu 𝑣(𝑛) = {3,2,1,0,1,2} c. Liệu có quan hệ gì giữa 𝑋(𝜔) và 𝑉(𝑘) không? Giải thích. 5.18 Chứng minh quan hệ sau ∑ 𝛿(𝑛 + 𝑙𝑁) ∞ 𝑙=−∞ = 1 𝑁 ∑ 𝑒𝑗( 2𝜋 𝑁 )𝑘𝑛 𝑁−1 𝑘=0 (Gợi ý: Tính DFT của dãy tuần hoàn bên vế trái) 5.19 Lấy mẫu miền tần số. Xét tín hiệu rời rạc thời gian sau 𝑥(𝑛) = { 𝑎|𝑛| |𝑛| ≤ 𝐿 0, |𝑛| > 𝐿 trong đó 𝑎 = 0.95 và 𝐿 = 10. a. Tính và vẽ tín hiệu 𝑥(𝑛). b. Chứng minh rằng 𝑋(𝜔) = ∑ 𝑥(𝑛)𝑒−𝑗𝜔𝑛 ∞ 𝑛=−∞ = 𝑥(0) + 2∑𝑥(𝑛) cos𝜔𝑛 𝐿 𝑛−1 Vẽ 𝑋(𝜔) bằng cách tính nó tại 𝜔 = 𝜋𝑘/100, 𝑘 = 0,1, ,100. c. Tính 𝑐𝑘 = 1 𝑁 𝑋 ( 2𝜋 𝑁 𝑘) , 𝑘 = 0,1, ,𝑁 − 1 với 𝑁 = 30. d. Xác định và vẽ tín hiệu sau �̃�(𝑛) = ∑ 𝑐𝑘𝑒 𝑗( 2𝜋 𝑁 )𝑘𝑛 𝑁−1 𝑘=0 Quan hệ giữa 𝑥(𝑛) và �̃�(𝑛) là gì? Giải thích. e. Tính và vẽ tín hiệu �̃�1(𝑛) = ∑ 𝑥(𝑛 − 𝑙𝑁) ∞ 𝑙=−∞ , −𝐿 ≤ 𝑛 ≤ 𝐿 với 𝑁 = 30. So sánh tín hiệu �̃�(𝑛) và �̃�1(𝑛). f. Lặp lại câu c. đến câu e. với 𝑁 = 15. 5.20 Lấy mẫu miền tần số. Tín hiệu 𝑥(𝑛) = 𝑎|𝑛|, −1 < 𝑎 < 1 có biến đổi Fourier 𝑋(𝜔) = 1 − 𝑎2 1 − 2 acos𝜔 + 𝑎2 a. Vẽ đồ thị 𝑋(𝜔) với 0 ≤ 𝜔 ≤ 2𝜋, 𝑎 = 0.8. Khôi phục lại và vẽ 𝑋(𝜔) từ các mẫu 𝑋(2𝜋𝑘/𝑁), 0 ≤ 𝑘 ≤ 𝑁 − 1 với b. 𝑁 = 20 c. 𝑁 = 100 d. So sánh phổ thu được trong phần b và c với phổ tín hiệu ban đầu 𝑋(𝜔) và giải thích sự khác nhau. e. Minh họa hiện tượng chồng tín hiệu miền thời gian khi 𝑁 = 20. 5.21 Tín hiệu dạng sóng răng cưa trong Hình P5.21 có thể biểu diễn dưới dạng chuỗi Fourier như sau 𝑥(𝑡) = 2 𝜋 (sin 𝜋𝑡 − 1 2 sin 2𝜋𝑡 + 1 3 sin 3𝜋𝑡 − 1 4 sin 4𝜋𝑡 ) a. Xác định các hệ số chuỗi Fourier 𝑐𝑘. b. Sử dụng hàm N điểm để lấy mẫu tín hiệu trong miền thời gian sử dụng sáu thành phần đầu tiên của chuỗi khai triển với 𝑁 = 64 và 𝑁 = 128. Vẽ tín hiệu 𝑥(𝑡) và các mẫu lấy được sau đó giải thích kết quả. Hình P5.21 5.22 Nhớ lại rằng biến đổi Fourier của 𝑥(𝑡) = 𝑒𝑗Ω0𝑡 là 𝑋(𝑗Ω) = 2𝜋𝛿(Ω − Ω0) và biến đổi Fourier của tín hiệu 𝑝(𝑡) = { 1, 0 ≤ 𝑡 ≤ 𝑇0 0, còn lại là 𝑃(𝑗Ω) = T0 sinΩT0/2 ΩT0/2 𝑒−𝑗ΩT0/2 a. Xác định biến đổi Fourier 𝑌(𝑗Ω) của 𝑦(𝑡) = 𝑝(𝑡)𝑒𝑗Ω0t và vẽ nháp |𝑌(𝑗Ω)| với Ω. b. Bây giờ xét dãy hàm mũ phức sau 𝑥(𝑛) = 𝑒𝑗𝜔0𝑛 trong đó 𝜔0 là tần số bất kỳ nào đó trong khoảng 0 < 𝜔0 < 𝜋 rad. Biết điều kiện chung nhất là 𝜔0 phải thỏa mãn để 𝑥(𝑛) tuần hoàn với chu kỳ P (P là một số nguyên dương). c. Ta có 𝑦(𝑛) là dãy hữu hạn 𝑦(𝑛) = 𝑥(𝑛)𝑤𝑁(𝑛) = 𝑒 𝑗𝜔0𝑛𝑤𝑁(𝑛) trong đó 𝑤𝑁(𝑛) là dãy chữ nhật hữu hạn có chiều dài N và 𝑥(𝑛) không cần thiết phải tuần hoàn. Xác định 𝑌(𝜔) và vẽ |𝑌(𝜔)| với 0 ≤ 𝜔 ≤ 2𝜋. Tác động của N đối với |𝑌(𝜔)| là gì? Giải thích ngắn gọn sự giống và khác nhau giữa |𝑌(𝜔)| và |𝑌(𝑗Ω)|. d. Giả sử rằng 𝑥(𝑛) = 𝑒𝑗(2𝜋/𝑃)𝑛, 𝑃 là số nguyên dương và 𝑦(𝑛) = 𝑤𝑁(𝑛)𝑥(𝑛) trong đó 𝑁 = 𝑙𝑃, 𝑙 là số nguyên dương. Xác định và vẽ DFT N điểm của 𝑦(𝑛). Liên hệ kết quả của bạn với tính chất của |𝑌(𝜔)|. e. Tần số lấy mẫu của DFT trong câu d. có thích hợp để tính toán xấp xỉ hóa |𝑌(𝜔)| trực tiếp từ biên độ của dãy DFT |𝑌(𝑘)|? Nếu không, giải thích ngắn gọn vì sao nếu ta lấy mẫu tăng lên thì có thể vẽ phác được phổ |𝑌(𝜔)| từ dãy |𝑌(𝑘)|. TAI LIỆU THAM KHẢO

Các file đính kèm theo tài liệu này:

  • pdfgiao_trinh_mon_xu_ly_tin_hieu_so_phan_2.pdf
Tài liệu liên quan