Xử lý số tín hiệu
Chương 7: Thiết kế bộ lọc số
Khái niệm
Thiết kế bộ lọc: là xây dựng hàm truyền
thỏa đáp ứng tần số cho trước. Thiết kế bộ lọc FIR: đầu ra là vector đáp ứng
xung h = [h0, h1, h2, …. ,hN]
Thiết kế bộ lọc IIR: đầu ra là các vector hệ số tử số và mẫu số của hàm truyền b = [b0, b1, …, bN] và a = [1, a1, a2 ,…, aN]
Bộ lọc FIR
Ưu điểm:
Đặc tuyến pha tuyến tính Độ ổn định (do không có các cực)
Khuyết điểm:
Để có đáp ứng tần số tốt cần chiều dài bộ lọc
N lớn Gia tăng chi phí tính toán
Bộ lọc IIR
Ưu điểm:
Chi phí tính toán thấp Thực hiện hiệu quả theo kiểu cascade các mạch
bậc 2 (Second-order sections)
Khuyết điểm:
Có sự bất ổn định do quá trình lượng tử hóa các hệ số có thể đẩy các cực ra ngoài vòng tròn đơn vị
Không thể đạt pha tuyến tính trên toàn khoảng
Nyquist
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Đây là một trong những pp đơn giản nhất để thiết
kế các mạch lọc số FIR
Thích hợp cho thiết kế các mạch lọc có đáp ứng tần số đơn giản như mạch lọc thông thấp, thông cao, thông dải, chắn dải lý tưởng, mạch lọc sai phân và mạch lọc Hilbert.
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Thông thấp
Thông cao
a. Các mạch lọc lý tưởng
D((cid:0) ) D((cid:0) )
(cid:0) (cid:0)
c
c
c
-(cid:0)
c
-(cid:0)
(cid:0) (cid:0) -(cid:0) -(cid:0) 0 0 (cid:0) (cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Thông dải
Chắn dải
a. Các mạch lọc lý tưởng
D((cid:0) ) D((cid:0) )
(cid:0) (cid:0) 0 0
a
b
a
b (cid:0)
b
a
-(cid:0)
-(cid:0)
a
b (cid:0)
(cid:0) (cid:0) -(cid:0) -(cid:0) (cid:0) (cid:0) -(cid:0) -(cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Sai phân
Hilbert
a. Các mạch lọc lý tưởng
D((cid:0) )/j D((cid:0) )/j
1
(cid:0)
-(cid:0)
-(cid:0)
0 0 (cid:0) (cid:0) (cid:0)
-1
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Cho đáp ứng tần số lý tưởng D((cid:0)
) (tuần hoàn với chu kỳ
(cid:0)
(cid:0) kj
2(cid:0) ) Đáp ứng xung tương ứng d(k) là: (DTFT ngược)
kd
(cid:0) eD
)(
(cid:0) d (cid:0) 2
(cid:0)
(cid:0) (cid:0) (cid:0) (cid:0)
Tổng quát, d(k) là hai biên và dài vô hạn Với nhiều mạch lọc lý tưởng, tích phân trên có dạng
(cid:0)
đóng.
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Ví dụ Mạch lọc thông thấp lý tưởng:
,1
(cid:0) (cid:0) (cid:0)
(cid:0)
D
ωω C (cid:0)
(cid:0) (cid:0) (cid:0) (cid:0)
ω
ω
π
,0
ω C ωω , C C
Biến đổi DTFT ngược:
(cid:0)
(cid:0)
C
k
)
(cid:0) kj
(cid:0) kj
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
(cid:0) eD
kd )(
e .1
(cid:0) sin( (cid:0)
C k
(cid:0) d (cid:0) 2
(cid:0) d (cid:0) 2
(cid:0)
(cid:0)
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
C
d(0) được tính riêng
k
)
C
(cid:0) (cid:0)
d
)0(
(cid:0) (cid:0)
lim k 0
(cid:0) (cid:0)
(cid:0) sin( (cid:0)
C k
(cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
k
)
(cid:0)
k
kd )(
(cid:0) (cid:0) (cid:0) (cid:0)
C k
Tương tự, đáp ứng xung của: Mạch lọc thông cao lý tưởng: (cid:0) sin( (cid:0)
k
k
(cid:0) sin(
)
b
a
(cid:0)
kd )(
Mạch lọc thông dải lý tưởng: ) (cid:0)
(cid:0) sin( k
(cid:0)
k
k
Mạch lọc chắn dải lý tưởng: (cid:0) sin(
)
b
a
(cid:0)
(cid:0)
k
kd )(
) (cid:0)
(cid:0) sin( k
(cid:0) (cid:0) (cid:0) (cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
Nhận xét: Cùng giá trị tần số cắt, bộ lọc thông thấp và thông cao là
bù của nhau
(cid:0)
(cid:0)
(cid:0)
d
d
k
D
D
k )(
k )(
1
LP
HP
LP
HP
Cùng giá trị tần số cắt, bộ lọc thông dải và chắn dải là bù
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
của nhau
(cid:0)
(cid:0)
(cid:0)
d
d
k
D
D
k )(
k )(
1
BP
BS
BP
BS
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
1. Phương pháp cửa sổ
k
)
kd )(
k 2
(cid:0) cos( k
(cid:0) sin( (cid:0) k
Tương tự, đáp ứng xung của: Mạch lọc sai phân lý tưởng: ) (cid:0) (cid:0)
k
Mạch lọc Hilbert lý tưởng: 1
)
(cid:0)
kd )(
(cid:0) cos( (cid:0) k
Nhận xét:
D((cid:0)
d(k) thực, chẵn (đối xứng) theo k (cid:0) d(k) thực, lẻ (phản đối xứng) theo k (cid:0)
) thực và chẵn theo (cid:0) ) ảo và lẻ theo (cid:0)
D((cid:0)
(cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
2. Cửa sổ chữ nhật
Tín hiệu d(k) hai chiều, vô hạn được xén bớt thành chiều
k
-M
M
Ví dụ: chỉ giữ d(k) với – M ≤ k ≤ M Tổng số các hệ số
dài hữu hạn bằng cửa sổ chữ nhật
(chiều dài đáp ứng xung) là N = 2M + 1
A. THIẾT KẾ BỘ LỌC SỐ FIR
2. Cửa sổ chữ nhật
Vector hệ số đáp ứng xung xấp xỉ:
Để bộ lọc nhân quả Dịch vector sang phải M mẫu
d = [d-M, …, d-2, d-1, d0, d1, d2 , … , dM]
Vector h và d giống nhau, chỉ khác nhau về gốc thời
gian.
h = [h0, …, hM-2, hM-1, hM, hM+1, hM+2, …, h2M] = [d-M, …, d-2, d-1, d0, d1, d2 , … , dM]
h(n) = d(n – M), n = 0,1, …, N – 1
A. THIẾT KẾ BỘ LỌC SỐ FIR
2. Cửa sổ chữ nhật
Các bước của phương pháp cửa sổ chữ nhật: 1. Chọn chiều dài N = 2M + 1 M = (N – 1)/2 2. Tính toán các hệ số d(k) 3. Làm trễ vector d(k) nhận được M mẫu để có h(k) 4. Khi đã có h(k), có thể thực hiện bộ lọc từ phương trình
lọc FIR
N
1
(cid:0)
y
n
xh mnm
(cid:0) (cid:0) (cid:0)
m
0
(cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
2. Cửa sổ chữ nhật
Trong miền tần số, đáp ứng tần số xấp xỉ M
M
(cid:0)
ˆ zD
kzkd )(
ˆ D
(cid:0) kjekd
)(
Mk
Mk
M
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
(cid:0) Mj
(cid:0) Mj
(cid:0) kj
(cid:0)
(cid:0)
H
e
ˆ D
e
ekd )(
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
Mk
M
(cid:0) (cid:0)
M
k
zH
ˆ M zDz
z
zkd )(
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0)
Mk
(cid:0) (cid:0)
A. THIẾT KẾ BỘ LỌC SỐ FIR
2. Cửa sổ chữ nhật
(cid:0)
(cid:0)(cid:0)Dˆ Nếu d(k) đối xứng là số thực, nên có thể viết
(cid:0)(cid:0)
(cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) (cid:0) ˆ D sign ˆ( D ˆ) D