Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
NGUYỄN LINH TRUNG, TRẦN ĐỨC TÂN, HUỲNH HỮU TUỆ
XỬ LÝ TÍN HIỆU SỐ
NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA HÀ NỘI
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
XỬ LÝ TÍN HIỆU SỐ
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ
Đại học Quốc gia Hà Nội
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Mục lục
Danh sách hình vẽ iv
Danh sách bảng xii
Lời nói đầu xv
1 GIỚI THIỆU VỀ XỬ LÝ TÍN HIỆU SỐ 1
1.1 Tínhiệulàgì?.......................... 1
1.2 Hệthốnglàgì? ......................... 4
1.3 Xửlýtínhiệu .......................... 4
1.4 Ứng dụng của xử lý tín hiệu số . . . . . . . . . . . . . . . . 5
1.5 Công nghệ xử lý tín hiệu số . . . . . . . . . . . . . . . . . . 9
2 SỐ HÓA TÍN HIỆU TƯƠNG TỰ 11
2.1 Mởđầu .............................. 11
2.2 Phương pháp lấy mẫu . . . . . . . . . . . . . . . . . . . . . 13
2.3 Lấymẫuthựctiễn ....................... 19
2.4 Lượngtửhóa........................... 20
2.5 Mã hóa và biểu diễn nhị phân . . . . . . . . . . . . . . . . 21
2.6 Kếtluận.............................. 23
i
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Mục lục
Bàitậpchương2............................ 24
3 TÍN HIỆU VÀ HỆ THỐNG RỜI RẠC 27
3.1 Mởđầu .............................. 27
3.2 Tínhiệurờirạc ......................... 29
3.2.1 Một số tín hiệu quan trọng . . . . . . . . . . . . . . 30
3.2.2 Phân loại tín hiệu . . . . . . . . . . . . . . . . . . . 34
3.2.3 Một số tính toán đơn giản trên tín hiệu . . . . . . 37
3.3 Hệthốngrờirạc......................... 40
3.3.1 Mô hình hệ thống . . . . . . . . . . . . . . . . . . . 41
3.3.2 Phân loại hệ thống . . . . . . . . . . . . . . . . . . . 42
3.3.3 Kết nối các hệ thống . . . . . . . . . . . . . . . . . . 45
3.4 Hệ thống tuyến tính bất biến . . . . . . . . . . . . . . . . . 46
3.4.1 Ý nghĩa của đáp ứng xung và tích chập . . . . . . 49
3.4.2 Đáp ứng xung của hệ thống nối tiếp . . . . . . . . 51
3.4.3 Hệ thống tuyến tính ổn định . . . . . . . . . . . . 52
3.5 Biến đổi Zvà áp dụng vào hệ thống tuyến tính bất biến 53
3.5.1 Biến đổi Z........................ 54
3.5.2 Biến đổi Zngược.................... 59
3.5.3 Biến đổi Zvà hệ thống tuyến tính bất biến . . . 62
3.6 Biến đổi Fourier theo thời gian rời rạc . . . . . . . . . . . 66
3.6.1 Định nghĩa biến đổi Fourier theo thời gian rời rạc 66
3.6.2 Áp dụng biến đổi Fourier theo thời gian rời rạc
vào hệ thống tuyến tính bất biến . . . . . . . . . . 67
3.6.3 Liên hệ giữa biến đổi Zvà biến đổi Fourier theo
thời gian rời rạc . . . . . . . . . . . . . . . . . . . . 68
3.7 Kếtluận.............................. 68
Bàitậpchương3............................ 69
4 CẤU TRÚC CÁC BỘ LỌC SỐ 71
ii
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Mục lục
4.1 HệthốngARMA......................... 71
4.2 Sơ đồ khối của hệ thống . . . . . . . . . . . . . . . . . . . . 73
4.3 Dạng trực tiếp của hệ thống ARMA . . . . . . . . . . . . 75
4.3.1 Dạng trực tiếp I . . . . . . . . . . . . . . . . . . . . 75
4.3.2 Dạng trực tiếp II . . . . . . . . . . . . . . . . . . . . 76
4.4 Dạng nối tiếp và song song của hệ thống ARMA . . . . . 77
4.4.1 Dạng nối tiếp . . . . . . . . . . . . . . . . . . . . . . 77
4.4.2 Dạng song song . . . . . . . . . . . . . . . . . . . . . 78
4.5 Dạng chéo của hệ thống MA có hệ số đối xứng . . . . . . 81
4.6 Ảnh hưởng của lượng tử hóa thông số . . . . . . . . . . . 84
Bàitậpchương4............................ 86
5 THIẾT KẾ BỘ LỌC SỐ IIR 89
5.1 Lọctươngtự ........................... 90
5.1.1 Các phương pháp xấp xỉ Butterworth và Cheby-
chev............................ 98
5.1.2 Phép biến đổi một bộ lọc thông thấp thành bộ
lọcthôngdải.......................106
5.1.3 Phép biến đổi một bộ lọc thông thấp thành bộ
lọctriệtdải .......................110
5.1.4 Phép biến đổi một bộ lọc thông thấp thành bộ
lọcthôngcao ......................113
5.1.5 Đáp ứng tần số của bộ lọc theo bậc . . . . . . . . . 116
5.2 Phương pháp đáp ứng bất biến . . . . . . . . . . . . . . . 122
5.2.1 Thiết kế theo đáp ứng xung bất biến . . . . . . . 123
5.2.2 Thiết kế theo đáp ứng bậc thang bất biến . . . . 127
5.3 Phương pháp biến đổi song tuyến tính . . . . . . . . . . . 132
5.3.1 Biến đổi song tuyến tính . . . . . . . . . . . . . . . 133
5.3.2 Thiết kế theo biến đổi song tuyến tính . . . . . . 135
5.4 Thiết kế bộ lọc số thông dải . . . . . . . . . . . . . . . . . . 146
iii
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Mục lục
5.5 Thiết kế bộ lọc số triệt dải . . . . . . . . . . . . . . . . . . . 153
5.6 Thiết kế bộ lọc số thông cao . . . . . . . . . . . . . . . . . . 155
Bàitậpchương5............................158
6 THIẾT KẾ BỘ LỌC SỐ FIR 161
6.1 Phương pháp cửa sổ . . . . . . . . . . . . . . . . . . . . . . 162
6.1.1 Bộ lọc lý tưởng . . . . . . . . . . . . . . . . . . . . . 162
6.1.2 Phương pháp thiết kế cửa sổ . . . . . . . . . . . . . 165
6.1.3 Thiết kế bộ lọc thông cao . . . . . . . . . . . . . . . 183
6.1.4 Thiết kế bộ lọc thông dải . . . . . . . . . . . . . . . 188
6.2 Phương pháp lấy mẫu trên miền tần số . . . . . . . . . . 192
6.3 Phương pháp thiết kế Parks-McClellan . . . . . . . . . . 195
6.3.1 Tiêu chí sai số minmax . . . . . . . . . . . . . . . . 202
6.3.2 Phương pháp thiết kế . . . . . . . . . . . . . . . . . 204
Bàitậpchương6............................212
7 THIẾT KẾ BỘ LỌC SỐ ĐA VẬN TỐC 215
7.1 Hạtốc ...............................215
7.1.1 Những kết quả cơ bản . . . . . . . . . . . . . . . . . 215
7.1.2 Phổ của tín hiệu hạ tốc . . . . . . . . . . . . . . . . 220
7.2 Tăngtốc..............................225
7.3 Thay đổi vận tốc theo một hệ số hữu tỷ . . . . . . . . . . 229
7.4 Biểudiễnđapha ........................235
7.5 Kếtluận..............................239
Bàitậpchương7............................241
Tài liệu tham khảo 243
Chỉ mục 245
iv
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Danh sách hình vẽ
1.1 Biểu diễn tín hiệu liên tục bằng hàm toán học. . . . . . 2
1.2 Biểu diễn tín hiệu rời rạc. . . . . . . . . . . . . . . . . . . . 2
1.3 Các loại tín hiệu tuần hoàn, năng lượng và ngẫu nhiên. 3
1.4 Hệthống.............................. 4
1.5 Lọc tương tự và lọc số. . . . . . . . . . . . . . . . . . . . . . 6
1.6 Tiền xử lý tín hiệu điện não EEG dùng lọc. . . . . . . . . 8
1.7 Một số bộ DSµP thông dụng của các hãng Texax In-
struments, Analog Devices và Microchip. . . . . . . . . . 10
2.1 Quá trình số hóa tín hiệu liên tục thành chuỗi bit. . . . 12
2.2 Xung Dirac và chuỗi xung Dirac. . . . . . . . . . . . . . . 15
2.3 Phổ tuần hoàn theo Ωvới chu kỳ Ω0[a] và phần phổ
mongmuốn[b]. ......................... 17
2.4 Lọc sử dụng bộ lọc lý tưởng . . . . . . . . . . . . . . . . . . 18
2.5 Lẫymẫuthựctế. ........................ 20
2.6 Các kiểu lượng tử hóa. . . . . . . . . . . . . . . . . . . . . . 22
3.1 Biểu diễn tín hiệu rời rạc bằng đồ thị. . . . . . . . . . . . 30
3.2 Xung Kronecker δ[n]....................... 31
3.3 Tín hiệu thang đơn vị u[n]................... 32
v
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Danh sách hình vẽ
3.4 Tín hiệu dốc đơn vị ur[n]. ................... 32
3.5 Tín hiệu mũ rời rạc. . . . . . . . . . . . . . . . . . . . . . . 33
3.6 Tín hiệu đối xứng và phản đối xứng. . . . . . . . . . . . . 36
3.7 Minh họa tín hiệu trễ và tín hiệu lùi. . . . . . . . . . . . . 38
3.8 Đổi chiều thời gian. . . . . . . . . . . . . . . . . . . . . . . . 38
3.9 Sơ đồ khối hệ thống rời rạc. . . . . . . . . . . . . . . . . . . 41
3.10 Sơ đồ mô tả hệ thống thực thi bởi các bộ cộng, bộ
khuếch đại và và bộ dịch trễ đơn vị. . . . . . . . . . . . . 42
3.11Kếtnốinốitiếp.......................... 46
3.12 Kết nối song song. . . . . . . . . . . . . . . . . . . . . . . . 46
3.13Tíchchập.............................. 52
3.14 Vùng hội tụ của tín hiệu nhân quả nằm ngoài vòng
tròn có bán kính |a|của mặt phẳng z. ........... 56
3.15 Vùng hội tụ của tín hiệu phản nhân quả nằm trong
vòng tròn có bán kính |b|của mặt phẳng z......... 57
3.16 Vùng hội tụ của tín hiệu không nhân quả nằm trong
vành |a||ωc|
70
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4
CẤU TRÚC CÁC BỘ LỌC SỐ
Như đã giới thiệu trong phần 3.3.1 của chương 3, giáo trình này
tập trung vào một họ hệ thống tuyến tính bất biến rời rạc mà được
mô tả bằng một phương trình sai phân tuyến tính có hệ số là hằng
số. Chương này sẽ tìm hiểu cấu trúc của các bộ lọc số của họ hệ thống
này, nhằm chọn được cấu trúc phù hợp để vừa tiết kiệm được nguồn
tài nguyên linh kiện điện tử [số bộ dịch trễ, bộ cộng, bộ khuếch đại]
cũng như nâng cao chất lượng khi thực thi [giảm các hiện tượng sai
số]. Các chương kế tiếp sẽ tìm hiểu các phương pháp thiết kế những
bộ lọc này.
4.1 Hệ thống ARMA
Nhắc lại rằng, theo biểu thức [3.32], phương trình này biểu diễn
quan hệ giữa đầu vào x[n]và đầu ra y[n]như sau:
N
X
k=0
aky[n−k]=
M
X
k=0
bkx[n−k].[4.1]
Và ta cũng đã biết rằng, theo [3.76], với điều kiện ban đầu triệt tiêu,
phương trình [4.1] mô tả một hệ thống bất biến tuyến tính có hàm
truyền H[z]được xác định bởi
H[z]=b0+b1z−1+···+ bMz−M
a0+a1z−1+···+aNz−N.[4.2]
71
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
Người ta thường phân loại hàm truyền tổng quát [4.2] thành ba
dạng phổ biến và quan trọng sau đây. Dạng đơn giản nhất của H[z]
là
H[z]=b0+b1z−1+b2z−2+···+ bMz−M.[4.3]
Đáp ứng xung tương ứng là h[n]={b0,b1,b2,...,bM}. Như vậy, đây là
một hệ thống FIR và hệ thống này là nhân quả. Mối liên hệ giữa đầu
vào và đầu ra của hệ thống FIR là
y[n]=b0x[n]+b1x[n−1] +b2x[n−2] +···+ bMx[n−M].[4.4]
Tại thời điểm n,y[n]là một tổ hợp tuyến tính của Mmẫu của đầu
vào, vì vậy hệ thống FIR cũng được gọi là hệ thống trung bình
động, hay còn gọi là hệ thống MA*. Hệ thống FIR có Mnghiệm
không và một nghiệm cực bậc Mtại gốc. Nghiệm cực tại gốc chỉ đóng
vai trò dịch trễ nên không có tác động đến hoạt động của hệ thống,
do đó người ta không đề cập đến. Vì thế, người ta còn gọi hệ thống
FIR là một hệ thống toàn không†.
Dạng quan trọng tiếp theo của H[z]là
H[z]=b0
1+a1z−1+···+aNz−N.[4.5]
Đáp ứng xung của hệ thống này có chiều dài vô hạn nên đây là hệ
thống IIR. Hệ thống này có Nnghiệm cực và một nghiệm không bậc
Ntại gốc. Nghiệm không tại gốc chỉ có tác động dịch lùi tín hiệu mà
không ảnh hưởng gì đến hoạt động của hệ thống, vì vậy hệ thống này
cũng được gọi là hệ thống toàn cực‡. Mối liên hệ giữa đầu vào và
đầu ra của hệ thống này là
y[n]=−[a1y[n−1] +a2y[n−2] +···+aNy[n−N]]+b0x[n].[4.6]
Nhận thấy, tại thời điểm n,y[n]là tổ hợp tuyến tính của Nmẫu trước
đó của nó. Vì vậy, hệ thống này cũng có tên là hệ thống tự hồi quy
hay còn gọi là hệ thống AR§.
*Moving Average [MA] system.
†All-zero system.
‡All-pole system.
§Autoregressive [AR] system.
72
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.2. Sơ đồ khối của hệ thống
Dạng tổng quát nhất của H[z]là một phân thức, như được biểu
diễn trong biểu thức [4.2]. Hệ thống này vừa có cấu trúc AR, vừa có
cấu trúc MA cho nên nó còn được gọi là hệ thống ARMA. Hệ thống
này có Mnghiệm không và Nnghiệm cực.
Do những ràng buộc kỹ thuật, các hệ thống bậc hai thường được
thiết kế tương đối chính xác so với các hệ thống bậc cao hơn theo
nghĩa là tránh được nhiều hiện tượng sai số tính toán làm giảm chất
lượng của hệ thống toàn cục [sẽ được thảo luận ở phần 4.6]. Do đó,
trong thiết kế các bộ lọc số, người ta hay phân tích hàm H[z]thành
tích của các hệ thống con như sau
H[z]=H1[z]H2[z]···HL[z],[4.7]
trong đó các hệ thống Hi[z]có bậc tối đa là hai.
4.2 Sơ đồ khối của hệ thống
Sơ đồ khối là dùng các khối và các liên kết để biểu diễn cấu trúc
của hệ thống. Trong hình 3.10 của chương 3, ta đã thấy sơ đồ khối
của một hệ thống trong đó các đường dẫn kết nối các hệ thống con
đơn giản mà ta gọi là bộ dịch trễ đơn vị,bộ khuếch đại và bộ
cộng. Các bộ này dùng để thực thi các phép tính trong hàm truyền
hệ thống H[z], chẳng hạn, trong hệ thống MA, để tính các đại lượng
z−k, nhân chúng với các hệ số bkđể được bkz−kvà cuối cùng là cộng
các kết quả này với nhau để được b0+b1z−1+···+bMz−M. Phép chia,
như trong hệ thống AR hay ARMA, sẽ được thực hiện gián tiếp từ
cách tạo các đường dẫn đệ quy [recursive/feedback] trong sơ đồ hệ
thống.
Bộ dịch trễ đơn vị dùng để thực thi thao tác dịch gốc thời gian
tín hiệu x[n]trễ đi n0=1một bước để được tín hiệu x[n−1], theo công
thức [3.21]. Nếu X[z]là biến đổi Zcủa s[n], theo tính chất của biến
đổi Ztrong bảng [3.2], ta có biến đổi Zcủa s[n−1] là
Z{x[n−1]}=z−1X[z].[4.8]
Hệ thống được mô tả bằng z−1chính là bộ dịch trễ đơn vị và được
biểu diễn như trên hình 4.1[a]. Trong thực tế thiết kế, nếu một tín
73
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
“./figures/Structures_0” — 2012/6/11 — 19:05 — page 64 — #1
x[n]z−1x[n−1]
[a] Bộ dịch trễ đơn vị
“./figures/Structures_1” — 2012/6/11 — 19:05 — page 64 — #1
x[n]ax[n]
a
[b] Bộ khuếch đại
“./figures/Structures_2” — 2012/6/11 — 19:05 — page 64 — #1
x1[n]
x2[n]
x1[n]+x2[n]
[c] Bộ cộng
Hình 4.1: Hình minh họa các bộ dịch trễ đơn vị, bô khuếch đại và bộ
cộng được sử dụng trong sơ đồ khối hệ thống.
hiệu được dịch đi n0bước, tức là mô tả bởi z−n0, thì người ta sử dụng
n0bộ dịch trễ đơn vị được ghép nối tiếp với nhau.
Bộ khuếch đại thực thi thao tác khuếch đại tín hiệu theo công
thức [3.28]. Theo tính chất tuyến tính, biến đổi Zcủa as[n], trong đó
hệ số alà một hằng số, là
Z{ax[n]}=a X [z].[4.9]
Thông thường, để đơn giản hóa sơ đồ hệ thống, bộ khuếch đại được
trực tiếp ký hiệu trên đường dẫn, như trên hình 4.1[b].
Bộ cộng thực thi thao tác cộng các tín hiệu với nhau, như theo
công thức [3.29]. Do biến đổi Zcũng có tính tuyến tính nên bộ và
được mô tả như trên hình 4.1[c].
Sơ đồ hệ thống có thể đơn giản hơn nữa nếu ta hình dung sơ đồ
hệ thống được dùng để biểu diễn hàm truyền bằng cách thay thế các
bộ dịch trễ đơn vị, bộ khuếch đại và bộ cộng như trên hình 4.1 bởi
các đồ thị được minh họa trên hình 4.2. Đồ thị loại này có tên là đồ
thị dòng chảy*.
*Flow graph.
74
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.3. Dạng trực tiếp của hệ thống ARMA
“./figures/Structures_3” — 2012/7/25 — 18:00 — page 12 — #1
x[n]x[n−1]
z−1
[a] Bộ dịch trễ đơn vị
“./figures/Structures_4” — 2012/7/25 — 18:00 — page 12 — #1
x[n]ax[n]
a
[b] Bộ khuếch đại
“./figures/Structures_5” — 2012/7/25 — 18:00 — page 12 — #1
x1[n]
x2[n]
x1[n]+x2[n]
[c] Bộ cộng
Hình 4.2: Hình minh họa các bộ dịch trễ đơn vị, bộ khuếch đại và bộ
cộng trong sơ đồ dòng chảy tín hiệu.
Phần tiếp theo sẽ trình bày chi tiết cách xây dựng các cấu trúc
hệ thống thông dụng. Một ví dụ hàm truyền của một hệ thống ARMA
sau đây sẽ được dùng để minh họa tất cả các khái niệm về cấu trúc
của hệ thống các phần tiếp theo:
H[z]=0,0095 +0,0380z−1+0,0570z−2+0,0380z−3+0,0095z−4
1−2,2870z−1+2,5479z−2−1,4656z−3+0,3696z−4.[4.10]
4.3 Dạng trực tiếp của hệ thống ARMA
4.3.1 Dạng trực tiếp I
Đặt
v[n]=0,0095x[n]+0,0380x[n−1] +
0,0570x[n−2] +0,0380x[n−3] +0,0095x[n−4].[4.11]
75
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
Có thể viết lại đầu ra y[n]của hàm truyền hệ thống ARMA cho
bởi [4.10] như sau:
y[n]=2,2870y[n−1] −2,5479y[n−2] +
1,4656y[n−3] −0,3696y[n−4] +v[n],[4.12]
Gọi H1[z]là hệ thống được biểu diễn bởi phương trình sai phân [4.11]
với đầu vào x[n]và đầu ra v[n]. Gọi H2[z]là hệ thống được biểu diễn
bởi [4.12] với đầu vào v[n]và đầu ra y[n]. Như vậy, đáp ứng của hệ
thống hệ thống toàn cục H[z]chính là mắc chồng tầng [kết nối nối
tiếp] của H1[z]và H2[z], như mô tả trên hình 4.3.
Hình 4.3: Biểu diễn mắc chồng tầng của hệ thống ARMA.
Dùng các bộ dịch trễ đơn vị, khuếch đại và bộ cộng, có thể xây
dựng sơ đồ hệ thống của H1[z],H2[z]và ghép nối chúng để được H[z]
như trên hình 4.4.
Do tính chất cộng của sơ đồ dòng chảy, có thể tích hợp hai cấu
trúc thực thi H1[z]và H2[z]thành một cấu trúc chung như ở hình 4.5.
Cấu trúc này được gọi là cấu trúc dạng trực tiếp I. Tên cấu trúc
trực dạng tiếp I suy ra từ cách ghép hai cấu trúc ở hình 4.4 một cách
trực tiếp.
4.3.2 Dạng trực tiếp II
Xét hình 4.4, do H1[z]và H2[z]là hai hệ thống tuyến tính bất
biến nên ta có thể hoán vị chúng mà mối liên hệ giữa đầu vào và đầu
ra không thay đổi, tức là H[z]không thay đổi, như ở hình 4.6. Ghép
chung cấu trúc H2[z]và H1[z]sau khi hoán vị cho kết quả được minh
họa ở hình 4.7. Cấu trúc này được gọi là dạng trực tiếp II hay dạng
trực tiếp chuyển vị.
76
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.4. Dạng nối tiếp và song song của hệ thống ARMA
“./figures/Structures_7” — 2012/6/11 — 16:51 — page 66 — #1
H1[z]H2[z]
z−1z−1
z−1z−1
z−1z−1
z−1z−1
x[n]y[n]
0,0095 v[n]
0,0380 2,287
0,0570 −2,5479
0,0380 1,465
0,0095 −0,3696
Hình 4.4: Thực thi cấu trúc hệ thống mắc chồng tầng.
4.4 Dạng nối tiếp và song song của hệ thống
ARMA
4.4.1 Dạng nối tiếp
Hàm truyền H[z]để xây dựng cấu trúc nối tiếp cần được phân
tích thành tích của nhiều thành phần đơn [bậc một hoặc bậc hai].
Với hàm truyền như đã cho trong phương trình [4.10], có thể dễ dàng
thấy
H[z]=0,0095H3[z]H4[z][4.13]
77
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
“./figures/Structures_8” — 2012/6/2 — 16:40 — page 10 — #1
z−1z−1
z−1z−1
z−1z−1
z−1z−1
x[n]y[n]
0,0095
0,0380 2,287
0,0570 −2,5479
0,0380 1,465
0,0095 −0,3696
Hình 4.5: Cấu trúc trực tiếp I.
với
H3[z]=1+2z−1+z−2
1−1,0328z−1+0,7766z−2[4.14]
H4[z]=1+2z−1+z−2
1−1,2542z−1+0,4759z−2[4.15]
Cấu trúc nối tiếp để thực hiện hệ thống này được minh họa như hình
4.8. Để đơn giản hóa cấu trúc thực thi ở hình 4.8, cũng có thể dùng
cấu trúc dạng trực tiếp I và II cho H3và H4như đã mô tả ở hình 4.5
và hình 4.7.
4.4.2 Dạng song song
Để xây dựng sơ đồ song song, cần phân tích hàm truyền thành
tổng của các thành phần đơn. Với hàm truyền như đã cho trong
78
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.4. Dạng nối tiếp và song song của hệ thống ARMA
“./figures/Structures_9” — 2012/6/11 — 16:50 — page 66 — #1
H2[z]H1[z]
z−1z−1
z−1z−1
z−1z−1
z−1z−1
x[n]y[n]
0,0095
v[n]
0,03802,287
0,0570−2,5479
0,03801,465
0,0095−0,3696
Hình 4.6: Hoán vị hai cấu trúc H1[z]và H2[z].
phương trình [4.10], sử dụng phương pháp phân tích thành phần
đơn để có
H[z]=k+H5[z]+H6[z][4.16]
với
k=0,0257 [4.17]
H5[z]=−0,1171 −0,1118z−1
1−1,0328z−1+0,7767z−2[4.18]
H6[z]=0,1009 +0,1059z−1
1−1,2542z−1+0,4759z−2.[4.19]
Cấu trúc song song được mô tả như ở hình 4.10. Trong đó, ta có thể
sử dụng cấu trúc trực tiếp dạng I hoặc dạng II để xây dựng H5[z]
79
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
“./figures/Structures_10” — 2012/6/2 — 16:45 — page 10 — #1
z−1
z−1
z−1
z−1
x[n]y[n]
0,0095
0,03802,287
0,0570−2,5479
0,03801,465
0,0095−0,3696
Hình 4.7: Cấu trúc trực tiếp II [cấu trúc trực tiếp chuyển vị].
“./figures/Structures_11” — 2012/6/11 — 16:53 — page 67 — #1
x[n]H3[z]H4[z]y[n]
w[n]
0,095
Hình 4.8: Cấu trúc nối tiếp.
và H6[z]. Chú ý rằng, trong các phương trình [4.18] và [4.19], tử số
của hai hàm H5[z]và H6[z]có bậc nhỏ hơn mẫu số. Phân tích theo
phương trình [4.16] cho ta đáp án duy nhất. Tuy nhiên, nếu ta muốn
sử dụng các hàm truyền bậc hai có tử số cũng là bậc hai thì phân tích
này cho ta vô số nghiệm. Thật vậy, ta chỉ cần chia klàm hai thành
phần bất kỳ để gán và H5[z]và H6[z]để có kết quả như vừa đề cập.
Dạng nối tiếp và song song có thể kết hợp trong một cấu trúc
chung, cấu trúc kết hợp này được gọi là cấu trúc hỗn hợp.
80
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.5. Dạng chéo của hệ thống MA có hệ số đối xứng
“./figures/Structures_12” — 2012/6/2 — 16:45 — page 11 — #1
z−1z−1
z−1z−1
x[n]y[n]
0,0095
2
1,0328
−1
−0,7766
2
1,2542
−1
−0,4759
Hình 4.9: Thực thi cấu trúc trực tiếp.
“./figures/Structures_13” — 2012/6/11 — 16:54 — page 68 — #1
x[n]H5[z]
H6[z]
y[n]
k
Hình 4.10: Ghép nối song song
4.5 Dạng chéo của hệ thống MA có hệ số đối
xứng
Như đã trình bày trong phần 4.1, hệ thống MA có đáp ứng xung
hữu hạn được mô tả bởi phương trình nối kết đầu vào và đầu ra có
dạng sau:
y[n]=b0x[n]+b1x[n−1] +b2x[n−2] +. . . +bMx[n−M].[4.20]
Hàm truyền H[z]của hệ thống này là
H[z]=b0+b1z−1+. . . +bMz−M.[4.21]
81
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
Đáp ứng xung h[n]tương ứng là
h[k]=[bk,nếu 0≤k≤M
0,nếu kkhác [4.22]
Đối với hàm truyền này, có thể dùng sơ đồ khối dạng nối tiếp
để biểu diễn nó mà không có sơ đồ song song tương ứng. Tuy nhiên,
trong trường hợp đặc biệt khi đáp ứng xung h[n]có tính đối xứng
được định nghĩa như sau
h[k]=h[M−k],k=0,...,M,[4.23]
ta có thể sử dụng những cấu trúc thang chéo đặc biệt.
Trong trường hợp Mchẵn, ta có
hµM
2−k¶=hµM
2+k¶,k=0,..., M
2.[4.24]
Sơ đồ khối thang chéo tương ứng được minh họa ở hình 4.11.
“./figures/Structures_14” — 2012/6/2 — 16:32 — page 13 — #1
x[n]
y[n]
z−1z−1z−1z−1
z−1
z−1
z−1
z−1
h[0] h[1] h[2] h[M/2 −1] h[M/2]
Hình 4.11: Cấu trúc khối thang chéo.
Trong trường hợp Mlẻ, tính đối xứng của đáp ứng xung được
biểu diễn như sau:
hµM−1
2−k¶=hµM+1
2+k¶,k=0,..., M−1
2.[4.25]
Cấu trúc thang chéo tương ứng được minh họa ở hình 4.12.
82
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.5. Dạng chéo của hệ thống MA có hệ số đối xứng
“./figures/Structures_15” — 2012/6/2 — 16:32 — page 13 — #1
x[n]
y[n]
z−1z−1z−1
z−1
z−1
z−1
h[0] h[1] h[2] h[[M−1]/2]
z−1
Hình 4.12: Cấu trúc thang chéo trong trường hợp Mlẻ.
Ví dụ 4.1 [Hệ thống MA có hệ số đối xứng và bậc chẵn]
Xét một hệ thống MA có hàm truyền như sau:
H[z]=4+3z−1+2z−2+3z−3+4z−4.
Đây là một hàm truyền thuộc loại FIR bậc 4có các hệ số đối
xứng
h[0] =h[4] =4
h[1] =h[3] =3
h[2] =2
Do đó, có thể mô tả hệ thống bằng sơ đồ thang chéo, như trên hình 4.13.
Ví dụ 4.2 [Hệ thống MA có hệ số đối xứng và bậc lẻ]
Xét hệ thống được cho bởi hàm truyền H[z]
H[z]=3+2z−1+2z−2+3z−3.
Rõ ràng, hệ thống này là đối xứng và có bậc lẻ. Do đó, ta có cấu trúc
thang chéo tương ứng được minh họa ở hình 4.14.
83
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
“./figures/Structures_16” — 2012/6/2 — 16:33 — page 14 — #1
x[n]
y[n]
z−1z−1
z−1
z−1
432
Hình 4.13: Cấu trúc thang chéo [Ví dụ 4.1].
“./figures/Structures_17” — 2012/6/2 — 16:33 — page 14 — #1
x[n]
y[n]
z−1
z−1
32
z−1
Hình 4.14: Cấu trúc thang chéo [Ví dụ 4.2].
4.6 Ảnh hưởng của lượng tử hóa thông số
Để sử dụng các thiết bị xử lý tín hiệu số, cần lượng tử hóa tất
cả các số liệu, gồm các mẫu tín hiệu cũng như các hệ số của bộ lọc.
Thao tác lượng tử hóa này là nguồn gốc của ba loại sai số khác nhau.
Loại thứ nhất là sai số do xấp xỉ trong quá trình lượng tử hóa
các mẫu của tín hiệu. Sai số này thường được gọi là sai số lượng
tử*.
*Quantization error.
84
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
4.6. Ảnh hưởng của lượng tử hóa thông số
Loại thứ hai xuất hiện khi ghi các hệ số của bộ lọc vào các thanh
ghi có chiều dài hữu hạn của thiết bị số hóa [có thể là một bộ vi xử lý
hay một máy tính PC]. Hai loại sai số này có cùng bản chất là sai số
làm tròn, được tích lũy bởi các tính toán thực hiện thông qua bộ toán
tử số học*. Ảnh hưởng của sai số này tăng nhanh theo vận tốc lấy
mẫu và bậc của hàm truyền, tức là bậc của phương trình sai phân.
Loại thứ ba là sai số tích lũy, xuất hiện sau các phép cộng và
phép nhân lúc kết quả vượt qua số bit của thanh ghi do số bit sử
dụng được nhỏ hơn số bit cần thiết. Có một số ảnh hưởng hơi bất
thường có thể xuất hiện vì loại sai số làm tròn này như lúc bộ lọc
được kích thích bởi một đầu vào hằng số và đầu ra sẽ bị khóa vào
một mức cố định, hoặc đầu ra có dao động nhỏ xung quanh giá trị
của nó.
Trong khá nhiều trường hợp thì sai số lượng tử hoàn toàn được
xác định trong quá trình thiết kế. Đối với sai số làm tròn, người ta
đã chứng minh rằng, nếu hệ thống bậc cao được biểu diễn bởi các
hệ thống bậc thấp hơn, dưới dạng nối tiếp hoặc song song, thì ảnh
hưởng của nó được tối thiểu hóa một cách đáng ngạc nhiên. Kết quả
này cho thấy, ta phải rất cẩn thận lúc sử dụng dạng trực tiếp I hoặc
trực tiếp II vì đối với các hệ thống bậc cao hơn hai, cần phân tích kỹ
lưỡng ảnh hưởng của thao tác lượng tử hóa các hệ số các bộ lọc của
hệ thống.
*Arithmetic unit.
85
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
Bài tập chương 4
4.1. Hãy xác định hàm truyền H[z]của hệ thống được thực thi như
trên hình 4.15.
“./figures/Structures_18” — 2012/6/3 — 11:34 — page 70 — #1
x[n]z−1−1
d1
y[n]
Hình 4.15: Sơ đồ hệ thống [Bài tập 4.1].
4.2. Cho một hệ thống nhân quả có phương trình sai phân như sau:
y[n]=0,7y[n−1] −0,1y[n−2] +x[n]+0,25x[n−1].
a] Hãy xác định cấu trúc thực thi trực tiếp I và II của hệ thống này.
b] Hãy phác họa đáp ứng biên độ tần số của hệ thống.
4.3. Cho một hệ thống nhân quả có hàm truyền như sau:
H[z]=3+1,5z−1+0,5z−2
2+3,5z−1+2,5z−2+4z−4.
a] Hãy xác định cấu trúc thực thi trực tiếp I và II của hệ thống này.
b] Hệ thống trên có ổn định không? Vì sao?
4.4. Cho một hệ thống LTI nhân quả có đầu vào là
x[n]=[0,25]nu[n]+[0,25]n+1u[n−1]
và đầu ra là
y[n]=µ1
3¶n
u[n].
86
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Bài tập
a] Hãy xác định cấu trúc thực thi trực tiếp I và II của hệ thống này.
b] Hãy xác định đáp ứng tần số biên độ và đáp ứng tần số pha của
bộ lọc này.
4.5. Cho một hệ thống có cấu trúc thực thi trực tiếp II như trên
hình 4.16.
“./figures/Structures_19” — 2012/7/25 — 18:08 — page 20 — #1
z−1
z−1
x[n]y[n]
2
3
2−2
Hình 4.16: Sơ đồ hệ thống [Bài tập 4.5].
a] Hãy xác định hàm truyền H[z]của hệ thống.
b] Hãy xác định đáp ứng xung h[n]của hệ thống.
c] Biểu diễn hệ thống theo cấu trúc song song và nối tiếp.
4.6. Cho một hệ thống LTI có giản đồ nghiệm cực – nghiệm không
như trên hình 4.17.
a] Hãy xác định hàm truyền của hệ thống này.
b] Hãy xác định cấu trúc thực thi trực tiếp I và II của hệ thống.
c] Tìm đáp ứng xung của hệ thống.
4.7. Cho một hệ thống nhân quả có hàm truyền như sau:
H[z]=3+1,5z−1+0,5z−2
1+4z−1+9z−2+16z−4.
a] Hãy xác định cấu trúc thực thi kiểu song song và nối tiếp của hệ
87
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 4. Cấu trúc các bộ lọc số
“./figures/Structures_20” — 2012/7/25 — 18:08 — page 21 — #1
ℜ
ℑ
−2 1
0,5
−0,5
Hình 4.17: Giản đồ nghiệm cực – nghiệm không [Bài tập 4.6].
thống này.
b] Hệ thống trên có ổn định không? Vì sao?
c] Vẽ giản đồ điểm cực điểm không của hệ thống trên.
d] Xác định đáp ứng xung đơn vị của hệ thống.
4.8. Cho một hệ thống nhân quả có hàm truyền như sau:
y[n]+0,5y[n−1] +2y[n−2] =2x[n]+3x[n−1] +2x[n−2]
a] Hãy xác định cấu trúc thực thi kiểu nối tiếp và song song của hệ
thống này.
b] Hệ thống trên có ổn định không? Vì sao?
c] Vẽ giản đồ điểm cực điểm không của hệ thống trên
d] Xác định đáp ứng xung đơn vị của hệ thống.
4.9. Cho một hệ thống FIR có hàm truyền
H[z]=4+3z−1+2z−2+3z−3+4z−4.
a] Hãy xác định cấu trúc thực thi trực tiếp và thang chéo của hệ
thống này.
b] Hãy xác định đáp ứng tần số biên độ của bộ lọc này. Đây là bộ lọc
loại gì [thông thấp, thông cao,...]?
c] Vẽ đáp ứng tần số pha của bộ lọc này.
88
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 5
THIẾT KẾ BỘ LỌC SỐ IIR
Thiết kế một bộ lọc số là xây dựng một hàm truyền của một hệ
thống tuyến tính bất biến rời rạc thế nào để nó đáp ứng những điều
kiện của bài toán thiết kế đặt ra. Hàm truyền này phải là nhân quả
và ổn định, tức là các nghiệm cực của hàm truyền phải nằm trong
vòng tròn đơn vị và đáp ứng xung của nó phải khởi đầu từ một thời
điểm hữu hạn*.
Trong quá trình thiết kế các bộ lọc số IIR, người ta sử dụng các
bộ lọc tương tự đã biết để thiết kế các bộ lọc số có đặc tả cần thiết kế
là tương đương. Việc áp dụng kiến thức lọc tương tự là do lọc tương
tự được nghiên cứu rất kỹ lưỡng trước đây. Mục 5.1 trình bày phương
pháp thiết kế bộ lọc tương tự để phục vụ cho thiết kế các bộ lọc số
IIR trong các mục tiếp theo. Giáo trình này chỉ đề cập đến hai họ bộ
lọc tương tự phổ cập là Butterworth và Chebyshev.
Có hai phương pháp thiết kế bộ lọc số dựa trên bộ lọc tương tự.
Phương pháp thứ nhất thiết kế một hệ thống rời rạc sao cho đáp ứng
hệ thống [đáp ứng xung hoặc đáp ứng bậc thang đơn vị] giống với
đáp ứng của bộ lọc tương tự tương ứng. Cụ thể: lấy mẫu đáp ứng
xung hoặc đáp ứng bậc thang đơn vị của bộ lọc tương tự và từ đó suy
*Ta đã biết rằng hệ thống là nhân quả nếu đáp ứng xung h[n]của nó triệt tiêu tại các
thời điểm n0,[6.54]
trong đó Tk[x]là đa thức bậc kChebyshev, theo công thức [??] trong
chương 5. Các đa thức Chebyshev có thể được tính từ các biểu thức
đệ qui sau đây
T0[x]=1[6.55]
Tk[x]=2xTk−1[x]−Tk−2[x],k≥2.[6.56]
Đa thức Chebyshev là một họ các đa thức trực giao trên khoảng [0;1].
Đặt
g[n]=[h[n],n=0
2h[n],n=1,...,N/2.[6.57]
Ta có thể viết lại A[ejω]từ [6.53] như sau:
A[ejω]=
N/2
X
n=0
g[n]cos[nω][6.58]
=
N/2
X
n=0
g[n]Tn[x]|x=cos[ω].[6.59]
Như thế A[ejω]có thể được xem như một đa thức lượng giác, tức là
một đa thức có biến x=cos[nω].
Như đã được đề cập, phương pháp xấp xỉ Chebyshev [hoặc tối
ưu Chebyshev] được áp dụng với hiệu quả cao lúc tiêu chí tối ưu
là sai số tuyệt đối. Gọi Ad[ejω]là đáp ứng tần số lý tưởng ta mong
muốn. Gọi W[ejω]là hàm trọng số được dùng để định nghĩa sai số
trong miền tần số như sau:
E[ejω]=W[ejω]hAd[ejω]−A[ejω]i.[6.60]
Cách chọn hợp lý nhất cho hàm trọng số này là
W[ejω]=
1
δp,ω∈Sp,
1
δs,ω∈Ss,
[6.61]
202
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
6.3. Phương pháp thiết kế Parks-McClellan
trong đó Spvà Sslà dải thông và dải triệt, δplà độ gợn sóng tuyến
tính trong dải thông và δslà độ triệt tuyến tính trong dải triệt. Ta
cũng có thể chọn hàm trọng số bằng cách chuẩn hóa như sau
W[ejω]=
δs
δp,ω∈Sp,
1,ω∈Ss.
[6.62]
Thông thường những đặc tả nhằm mô tả những ràng buộc trên
đáp ứng biên độ của dải thông và dải triệt, nhưng không có ràng
buộc gì trong dải chuyển tiếp. Gọi Sνlà tập hợp các dải tần số có đặc
tả. Như thế, Sνlà một tập compact trong khoảng [0;0,5], được xác
định bởi
Sν=Sp∩Ss,[6.63]
và được chi tiết hóa đối với các loại bộ lọc khác nhau như trong
bảng 6.3.
Bảng 6.3: Tập hợp các dải tần có đặc tả
Loại bộ lọc Sν
Thông thấp [0,νp]∪[νs,1/2]
Thông cao [0,νs]∪[νp,1/2]
Thông dải [0,νs1]∪[νp1,νp2]∪[νs2,1/2]
Triệt dải [0,νp1]∪[νs1,νs2]∪[νp2,1/2]
Tiêu chí minmax trong quá trình thiết kế là tìm đáp án g[n]của
bài toán tối sau đây
g∗[n]=arg·min
g[n]½max
ω∈Sν
E[ejω]¾¸ [6.64]
Sử dụng phương trình 6.64, ta thấy với biến x=cos[ω]bài toán trở
thành minmax theo đa thức Chebyshev theo xnhư sau:
g∗[n]=arg"min
g[n][max
x∈FW[ejω]ÃAd[ejω]−
N/2
X
n=0
g[n]Tn[x]|x=cos[ω]!]#
[6.65]
203
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 6. Thiết kế bộ lọc số FIR
trong đó Flà ảnh của Sνbởi ánh xạ x=cos[ω]. Bài toán tối ưu hóa này
đã được Chebyshev giải quyết. Phương pháp tính số thực tiễn được
McClellan xây dựng dựa trên định lý xen kẽ*sau đây: g[n]đạt giá
tối ưu g∗[n]khi và chỉ khi hiện hữu M+2tần số số tối ưu cục bộ
ν0,ν1,...,νM+1trong tập Sνthế nào để E[νk+1]=−E[νk]và |E[νk]|=δ,
với k=0, .. . , M+1.
Chính kết quả của định lý này cho thấy tại sao nó được gọi là
định lý xen kẽ và là lí do tại sao bộ lọc được thiết kế dùng phương này
gọi là bộ lọc có gợn sóng đều. Với bộ lọc có gợn sóng đều được minh
họa ở hình 6.26, có độ gợn sóng dải thông là δp=0,06, độ suy giảm
của dải triệt δs=0,04 và bậc của bộ lọc là L−1=12 [tức là M=6], ta
thấy có bốn tần số tối ưu cục bộ trong dải thông và bốn tần số tối ưu
cục bộ trong dải triệt. Như thế số tần số tối ưu cục bộ là M+2=8.
Định lý xen kẽ cho thấy đáp ứng tần số biên độ mở rộng này chính là
tần số tối ưu.
6.3.2 Phương pháp thiết kế
Phương pháp Parks–McCllelan được tóm lược trong phương pháp
thiết kế 6.2. Về cơ bản nó là một phương pháp lặp được xây dựng dựa
trên định lý xen kẽ.
Phương pháp 6.2 – Thiết kế bộ lọc FIR bằng phương pháp
Parks–McClellan.
1. Khởi động bởi M+2giá trị νk;
2. Dựa trên các giá trị của E[ej2πνk], điều chỉnh các tần số νkcho
đến lúc các E[ej2πνk]thỏa mãn điều kiện xen kẽ của định lý, và
cho ra kết quả tối ưu g∗[n]theo [6.65];
3. Dùng mối quan hệ [6.57] để suy ra đáp ứng xung h[n].
Lập trình cho thuật toán này tương đối phức tạp tuy nhiên có rất
nhiều chương trình được viết theo ngôn ngữ Fortran, C, C++, và đặc
*Alternation theorem.
204
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
6.3. Phương pháp thiết kế Parks-McClellan
“./figures/FIR_37” — 2012/7/23 — 20:35 — page 50 — #1
−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6
0
0.5
1
Hình 6.26: Đáp ứng tần số có gợn sóng đều, với νp=0,2,νs=0,3. Có
bốn tần số tối ưu trong dải thông và bốn trong dải triệt.
biệt là MATLAB trong đó MATLAB là thuận tiện nhất mà ta có thể
sử dụng dễ dàng cho công việc hàng ngày. Chỉ cần hiểu rõ những
khái niệm cơ bản vừa được trình bày trên đây thì ta có thể sử dụng
một cách có hiệu quả chương trình thiết kế dùng MATLAB*.
Thông thường, độ gợn sóng, độ suy giảm và dải chuyển tiếp là
những thông số có thể được thỏa mãn bằng cách chọn chiều dài bộ
lọc thích hợp. Chiều dài của bộ lọc thông thấp thường được ước lượng
bởi biểu thức do Kaiser đề nghị như sau:
L=1+−10log10[δpδs]–13
2,324∆ω,[6.66]
trong đó ∆ω=2π[νs−νp]. Hermann đề nghị một công thức khác, có
ước lượng sát với thực tiễn hơn và MATLAB sử dụng, như sau:
L≈1+1
∆νK[δ1,δ2,∆ν],[6.67]
trong đó
K[δ1,δ2,∆ν]=C1[δ1]log[δ2]+C2[δ1]+C3[δ1,δ2][∆ν]2,[6.68]
*Để hiểu thật rõ các chi tiết giải tích cũng như lập trình, độc giả có thể tham khảo
giáo trình của Oppenheim, được liệt kê trong phần tài liệu tham khảo.
205
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 6. Thiết kế bộ lọc số FIR
với
C1[δ1]=[0,0729logδ1]2+0,07114logδ1−0,4761,[6.69]
C2[δ2]=[0,0518logδ2]2+0,59410logδ2−0,4278,[6.70]
C3[δ3]=11,01217 +0,541244[logδ1−logδ2].[6.71]
Công thức Herman cho bởi [6.67] đưa ra một ước lượng thông thường
nhỏ hơn cần thiết, cần phải điều chỉnh thêm một số đơn vị. Lúc thiết
kế ta sẽ bắt đầu với Lnhỏ nhất xem có thỏa mãn đặc tả không. Nếu
không thỏa mãn, ta sẽ tăng dẫn chiều dài lên. MATLAB có lệnh
dùng để ước lượng bậc bộ lọc – firpmord– đã tăng hai đơn vị so với
công thức Kaiser nên có thể thỏa mãn ngay lần chạy đầu tiên. Công
thức này cũng cho thấy chiều dài bộ lọc tỷ lệ nghịch với dải chuyển
tiếp. Như vậy, để thỏa mãn các bộ lọc có dải chuyển tiếp hẹp, ta cần
sử dụng bậc bộ lọc lớn.
Ví dụ 6.8 [Thiết kế bộ lọc FIR thông thấp bằng phương pháp Park-
s–McClellan]
Ta muốn thiết kế một bộ lọc thông thấp có [i] tần số cắt thông dải là
νp=0,2, [ii] tần số cắt triệt dải là νs=0,3, [iii] độ uốn lượn đều thông
dải là δp=0,01, [iv] độ suy giảm dải triệt là δs=0,001.
Áp dụng công thức Herman, ta tính được chiều dài bộ lọc là
L=27. Kết quả được minh họa ở hình 6.27 và được làm rõ hơn ở
hình 6.28 cho thấy độ gợn sóng và độ suy giảm không thỏa mãn đặc
tả thiết kế. Vì thế, cần tăng chiều dài cho đến lúc kết quả thiết kế
thỏa mãn điều kiện đặc tả. Giả sử ta tăng chiều dài bộ lọc là 1, kết
quả tương ứng được minh họa ở hình 6.29 và thõa mãn các đặc tả.
Ví dụ 6.9 [Thiết kế bộ lọc FIR thông dải bằng phương pháp Park-
s–McClellan]
Ta muốn thiết kế một bộ lọc thông dải có tần số lấy mẫu là 200 H z,
và có các tần số đặc tả: [i] Fs1=36H z, [ii] Fp1=40Hz, [iii] Fp2=60H z,
[iv] Fs2=64H z. Độ gợn sóng δp=0,02 và độ suy giảm dải triệt
δs=0,02.
206
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
6.3. Phương pháp thiết kế Parks-McClellan
“./figures/FIR_38” — 2012/7/23 — 23:48 — page 40 — #1
0 0.1 0.2 0.3 0.4 0.5
0
0.5
1
ν
A[ejω]
Hình 6.27: Đáp ứng tần số biên độ bộ lọc thông thấp [Ví dụ 6.8].
“./figures/FIR_39” — 2012/7/24 — 0:05 — page 40 — #1
0 0.05 0.1 0.15 0.2
0.99
1
1.01
ν
[a] Dải thông
“./figures/FIR_40” — 2012/7/24 — 0:05 — page 40 — #1
0.3 0.35 0.4 0.45 0.5
−1
0
1
·10−3
ν
[b] Dải triệt
Hình 6.28: Đáp ứng tần số biên độ bộ lọc thông thấp trong dải thông
và dải triệt [Ví dụ 6.8].
Chuẩn hóa trong miền tần số số ta có νs1=0,18,νp1=0,2,νp2=
0,3,νs2=0,32. Ta thấy ngay bộ lọc này có dải chuyển tiếp khá hẹp:
δnu =0,02. Theo công thức Herman, chiều dài bộ lọc được tính là
L=74.
Đáp ứng tần số biên độ của bộ lọc này được thiết kế lần đầu như
trên hình 6.30, với độ gợn sóng dải thông và dải triệt chưa thõa mãn
207
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 6. Thiết kế bộ lọc số FIR
“./figures/FIR_41” — 2012/7/24 — 0:05 — page 40 — #1
0 0.05 0.1 0.15 0.2
0.99
1
1.01
ν
[a] Dải thông
“./figures/FIR_42” — 2012/7/24 — 0:05 — page 40 — #1
0.3 0.35 0.4 0.45 0.5
−1
0
1
·10−3
ν
[b] Dải triệt
Hình 6.29: Đáp ứng tần số biên độ bộ lọc thông thấp và dải thông
trong dải triệt sau khi nâng bậc bộ lọc [Ví dụ 6.8].
các đặc tả được thể hiện rõ trên hình 6.31. Sau khi tăng chiều dài bộ
lọc, đáp ứng đã thõa mãn như trên hình 6.32.
“./figures/FIR_43” — 2012/7/24 — 0:20 — page 40 — #1
0 0.1 0.2 0.3 0.4 0.5
0
0.5
1
ν
A[ejω]
Hình 6.30: Đáp ứng tần số biên độ bộ lọc thông dải [Ví dụ 6.9].
208
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
6.3. Phương pháp thiết kế Parks-McClellan
“./figures/FIR_44” — 2012/7/24 — 0:06 — page 40 — #1
0 0.05 0.1 0.15
−0.02
0
0.02
ν
[a] Dải thông
“./figures/FIR_45” — 2012/7/24 — 0:06 — page 40 — #1
0.2 0.22 0.24 0.26 0.28 0.3
0.98
1
1.02
ν
[b] Dải triệt
Hình 6.31: Đáp ứng tần số biên độ bộ lọc thông dải trong dải thông
và dải triệt [Ví dụ 6.9].
“./figures/FIR_46” — 2012/7/24 — 0:06 — page 40 — #1
0 0.05 0.1 0.15
−0.02
0
0.02
ν
[a] Dải thông
“./figures/FIR_47” — 2012/7/24 — 0:06 — page 40 — #1
0.2 0.22 0.24 0.26 0.28 0.3
0.98
1
1.02
ν
[b] Dải triệt
Hình 6.32: Đáp ứng tần số biên độ bộ lọc thông dải trong dải thông
và dải triệt sau khi nâng bậc bộ lọc [Ví dụ 6.9].
Thiết kế một bộ lọc vi phân và bộ lọc Hilbert
Bộ lọc vi phân*và bộ lọc Hilbert†là những thiết bị ta gặp
khá thường xuyên trong cấu trúc của hệ thống truyền tin. Đáp ứng
tần số của hai bộ lọc này được minh họa ở hình 6.33 và hình 6.34.
*Differentiator.
†Hilbert transformer.
209
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 6. Thiết kế bộ lọc số FIR
Chú ý rằng tác động của đạo hàm hay trễ pha của bộ lọc Hilbert chỉ
cần thỏa mãn trên dải thông ta quan tâm. Và như thế phương pháp
cửa sổ là hoàn toàn thích hợp cho thiết kế các loại bộ lọc này tức là
triển khai đáp ứng tần số thành một chuỗi Fourier và xử lý với cửa
số thế nào để đáp ứng tần số thỏa mãn các đặc tả. Do Những phương
pháp này đã được đưa vào MATLAB với những lệnh đặc biệt.
“./figures/FIR_48” — 2012/7/24 — 0:21 — page 41 — #1
−0.4−0.2 0 0.2 0.4
−0.2
0
0.2
ν
|H[ejω]|
[a] Đáp ứng biên độ
“./figures/FIR_49” — 2012/7/24 — 0:22 — page 41 — #1
−0.4−0.2 0 0.2 0.4
−2
−1
0
1
2
ν
∠H[ejω]
[b] Đáp ứng pha
Hình 6.33: Đáp ứng tần số biên độ và pha của bộ lọc vi phân.
210
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
6.3. Phương pháp thiết kế Parks-McClellan
“./figures/FIR_50” — 2012/7/24 — 0:25 — page 41 — #1
−0.4−0.2 0 0.2 0.4
−1
0
1
ν
|H[ejω]|
[a] Đáp ứng biên độ
“./figures/FIR_51” — 2012/7/24 — 0:26 — page 41 — #1
−0.4−0.2 0 0.2 0.4
−2
−1
0
1
2
ν
∠H[ejω]
[b] Đáp ứng pha
Hình 6.34: Đáp ứng tần số biên độ và pha của bộ lọc Hilbert.
211
Giáo trình
Xử lý tín hiệu số
Nguyễn Linh Trung, Trần Đức Tân, Huỳnh Hữu Tuệ
Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
2012
Chương 6. Thiết kế bộ lọc số FIR
Bài tập chương 6
6.1. Sử dụng phương pháp cửa sổ để thiết kế một bộ lọc FIR thông
thấp có pha tuyến tính, có đáp ứng tần số biên độ xấp xỉ lý tưởng
như sau:
Hd[ω]=[1,|ω|≤π/5,
0,π/5