Hiện nay, có một số công cụ dùng để thiết kế các bộ lọc, nhưng phổ biến nhất là phần mềm Matlab. Trong Matlab, ta có thể sử dụng một số công cụ như SPTool, FDATool, hoặc là các hàm của Matlab để thiết kế bộ lọc. Trong thiết kế này ta sử dụng FDATool để thiết kế bộ lọc FIR thông dải.
FDATool là một công cụ hết sức hữu dụng và chứng được sử dụng rộng rãi để thiết kế bộ lọc hiện nay. Để kích hoạt công cụ thiết kế này, trong cửa sổ lệnh của Matlab, ta thực hiện nhập lệnh sau:
» fdatool
Từ đây, ta có thể chọn một vài loại đáp ứng (của các bộ lọc): Thông thấp (Lowpass), Thông cao (Highpass), Thông dải (Bandpass), Chặn dải (Bandstop) , các đặc điểm kỹ thuật của bộ lọc thay đổi theo loại đáp ứng và phương pháp thiết kế.
Ngoài ra, chúng ta có thể nhập: Bậc của bộ lọc (Filter Order), Các tùy chọn (Options), Đặc tính tần số (Frequency Specifications), Đặc tính biên độ (Magnitude Specifications).
Như trong phần trước đã phân tích, ta cần thiết kế bộ lọc thông dải với dải tần từ 300Hz đến 3.4kHz. Trong cửa sổ FDATool, ta chọn các thuộc tính như sau:
+ Chọn Bandpass, trong miền Response Type.
+ Trong bảng Design Method, ta chọn FIR và thẻ Window.
+ Trong miền Options, chọn Window để tạo bộ lọc bằng phương pháp cửa sổ, sau đó chọn cửa sổ Hamming.
+ Trong miền Frequency Specifications, ở tùy chọn units ta chọn đơn vị là Hz, nhập 48000 trong Fs là tần số lấy mẫu ta thiết lập cho WM8731, 300 trong Fcl và 3400 trong Fc2 là hai giá trị của khoảng tần số ta muốn giữ lại.
+ Ta nhấn Design Filter để thu được kết quả của bộ lọc. Ta nhận được kết quả thiết kế của bộ lọc như sau:
Hình 3.14: Thiết kế bộ lọc bằng công cụ Matlab
Cuối, chúng ta lấy các hệ số của bộ lọc bằng việc sử dụng tùy chọn Export trong manu File. Từ “Export to” ta có thể chọn Workspace, Coefficient File (ASCII), MAT-File và SPTool.
Ở đây ta chọn xuất hệ số dạng hexa để dễ dàng thêm vào phần thiết kế trong mô tả phần cứng bằng file verilog.