Thiết kế bộ lọc sốCấu trúc FIR và IIR tantd@vnu.edu.vn Nội dung • Ôn lại: hệ thống thòi gian rời rạc, hệ thống số, hệ thống LTI • Đáp ứng xung đơn vị • Đinh nghĩa hệ thống FIR và IIR • C
Trang 1Thiết kế bộ lọc số
Cấu trúc FIR và IIR
tantd@vnu.edu.vn
Nội dung
• Ôn lại: hệ thống thòi gian rời rạc, hệ thống
số, hệ thống LTI
• Đáp ứng xung đơn vị
• Đinh nghĩa hệ thống FIR và IIR
• Cấu trúc hệ thống FIR và IIR
• Ví dụ MATLAB
• Ví dụ dùng FDAtool
Hệ thống thời gian rời rạc
hệ thống thòi gian rời rạc có lối vào
và lối ra là tín hiệu thời gian rời rạc
Hệ thống số
• Hệ thống thời gian – rời rạc được gọi là
hệ thống số nếu các tín hiệu thòi gian rời rạc có biên độ được lượng tử hoá
• Lượng tử hoá: ánh xạ các mức biên độ
liên tục thành các giá trị số
• Các hệ thống số sử dụng các phần cứng số
1 sử dụng các mạch logic
2 sử dụng lập trình
Trang 2Hệ thống tuyến tính - bất biến (LTI)
Các mẫu lôí ra y(ν) có thể phụ thuộc vào tất cả các mẫu lối vào
như sau:
)) ( ( )
Hệ thống thòi gian rời rạc được gọi là tuyến tính
bất biến nếu quan hệ giữa lối ra và lối vào có thể
được mô tả bởi các phương trình hệ số tuyến
tính
Ví dụ 1 MATLAB
N = 80; k = 0:(N-1);
b0 = 1;
b1 = -1;
b2 = 1;
B = [b0 b1 b2];
f = 1/8;
x = sin(2*pi*f*k+pi/6);
y = filter(B,1,x);
subplot(2,1,1) systemFIR(0,0,4,5,10,'b') subplot(2,1,2) plot(k,x,'go', k,y,'bo',
k,x,'g-', k,y,'b-') legend('input','output')
) 2 ( ) 1 ( ) ) =b0x n+b1x n− +b2x n−
n y
lệnh MATLAB filter ứng với
ký hiệuΦ
Đáp ứng xung đơn vị
)) ( ( )
Đáp ứng của 1 hệ thống khi lối
vào là chuỗi xung đơn vị được
gọi là đáp ứng xung đơn vị hay
đáp ứng xung
MATLAB ví dụ 2
N = 16; k = 0:(N-1);
b0 = 1;
b1 = -1;
b2 = 2;
B = [b0 b1 b2];
x = (k==0);
y = filter(B,1,x);
subplot(3,1,1) systemFIR(0,0,4,5,10,'b') subplot(3,1,2) stem(k,x,'r')
) 2 ( ) 1 ( ) ) =b0x n+b1x n− +b2x n−
n y
Trang 3Hệ thống FIR và IIR
• Một hệ thống rời rạc được gọi là FIR nếu
đáp ứng xung đơn vị nhận giá trị 0 tại n >
M > 0
• Số tự nhiên M được gọi là độ dài của đáp
ứng xung
• Hệ thống IIR là hệ thống rời rạc có đáp
ứng xung vô hạn
• FIR = Finite Impulse Response
IIR = Infinite Impulse Response
MATLAB ví dụ 3
N = 80; k = 0:(N-1);
a = 0.97;
B = [0 1];
A = [1 -a];
x = (k==0);
y = filter(B,A,x);
subplot(3,1,1) draw1stIIR(0,0,4,5,10,'b') subplot(3,1,2) stem(k,x,'r') ylabel('input') subplot(3,1,3) stem(k,y,'b') ylabel('output')
) 1 ( ) 1 ( ) =x n− +ay n−
n y
Đáp ứng xung vẫn kéo dài sau khi 1 tập hữu hạn các mẫu lối vào được cung cấp
Các cấu trúc FIR cơ bản
Dạng trực tiếp, dạng chuyển vị, dạng
chồng tầng, pha tuyến tính, đối xứng
dạng trục tiếp bậc 2
Trang 4Dạng chuyển vị bậc 2 dạng chồng tầng
Trang 5Pha tuyến tính loại 1 Pha tuyến tính loại 2
Trang 6Cấu trúc IIR cơ bản
Dạng trực tiếp
Dạng chuyển vị
Dạng trực tiếp loại 1 bậc 2
Dạng trực tiếp loại 2 bậc 1 Dạng trực tiếp loại 2 bậc 2
Trang 7Chống tầng trực tiếp loại 2 Chuyển vị loại 2 bậc 1
Trực tiếp chuyển vị loại 2 bậc 2
Các ví dụ thiết kế FIR
Bộ lọc pha tuyến tính bậc 4
Trang 8FDAtool FIR design example File, Export …
FIR
Trang 9nghỉ giải lao