1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập lớn thông tin di động THIẾT KẾ MẠCH LỌC SỐ FIR VÀ ĐƯA RA CÁC HỆ SỐ BỘ LỌC TRÊN FPGA

40 23 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế mạch lọc số FIR và đưa ra các hệ số bộ lọc trên FPGA
Tác giả Dương Hoàng Chí, Phạm Việt Hoàng, Nguyễn Doãn Hoàn
Người hướng dẫn PGS. TS. Nguyễn Văn Đức
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Điện tử - Viễn thông
Thể loại Bài tập lớn
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 40
Dung lượng 1,59 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1: Tổng quan về fpga (10)
    • 1.1 Khái niệm FPGA (10)
    • 1.2 Cấu trúc cơ bản của FPGA (11)
      • 1.2.1 Khối logic (11)
      • 1.2.2 Hệ thống mạch liên kết (12)
      • 1.2.3. Các phần tử tích hợp sẵn (12)
      • 1.2.4. Block RAM (13)
    • 1.3 Quy trình thiết kế FPGA (13)
      • 1.3.1 Mô tả thiết kế (Specitification) (13)
      • 1.3.2 Thiết kế (Design) (13)
      • 1.3.3 Mô phỏng logic (Function simulation) (13)
      • 1.3.4 Tổng hợp mạch logic (Logic Synthesis) (13)
      • 1.3.5 Hiệu chỉnh các kết nối (Datapath Schematic) (14)
      • 1.3.6 Thực thi (Implementation) (14)
      • 1.3.7 Quá trình lập trình và nạp chương trình (14)
    • 1.4. Giới thiệu Kit Xilinx Spartan 6 Nexys 3 (15)
  • Chương 2: Lý thuyết về FSK (16)
    • 2.1 Khái niệm (16)
    • 2.2 Đánh giá và ứng dụng (17)
      • 2.2.1 Đánh giá (17)
      • 2.2.2 Ứng dụng (17)
  • Chương 3: Lý thuyết về bộ lọc số (18)
    • 3.1 Khái quát về các loại bộ lọc số..................................................................9 3.2 Bộ lọc FIR (Finite Impulse Response Filter) và các phương pháp thiết kế (18)
      • 3.2.1 Bộ lọc FIR (Finite Impulse Response Filter) (18)
      • 3.2.2 Các phương pháp thiết kế bộ lọc FIR (19)
    • 3.3 Bộ lọc IIR (Infinite Impulse Response Filter) và phương pháp thiết kế (22)
      • 3.3.1 Giới thiệu (22)
      • 3.3.2 Thiết kế bộ lọc thông thấp tương tự (23)
      • 3.3.3 Chuyển đổi bộ lọc (25)
  • Chương 4: Triển khai khối điều chế trên FPGA (29)
    • 4.1 Tổng quan hệ thống (29)
    • 4.2 Thiết kế chi tiết (30)
      • 4.2.1 Khối Bit_rate_1Khz (31)
      • 4.2.2 Khối sin_data (31)
      • 4.2.3 Khối dac_out (32)
    • 4.3 Kết quả Synthesis (34)
  • Chương 5: Triển khai Bộ lọc số trên FPGA (36)
    • 5.1 Bộ lọc FIR (36)
    • 5.2 Bộ lọc IIR (37)
  • Kết luận (40)
  • Tài liệu tham khảo (40)

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG BÀI TẬP LỚN THÔNG TIN DI ĐỘNG Đề tài THIẾT KẾ MẠCH LỌC SỐ FIR VÀ ĐƯA RA CÁC HỆ SỐ BỘ LỌC TRÊN FPGA Sinh viên thực hiện DƯƠNG HOÀNG CHÍ – 2017242.

Tổng quan về fpga

Khái niệm FPGA

FPGA (Field-Programmable Gate Array) là một loại mạch tích hợp cỡ lớn dựa trên cấu trúc mảng phần tử logic có thể lập trình bởi người dùng, mang lại khả năng tùy chỉnh linh hoạt theo nhu cầu Từ “field” thể hiện khả năng tái lập trình từ bên ngoài của FPGA, không bị phụ thuộc vào quy trình sản xuất phức tạp của nhà máy bán dẫn Các vi mạch FPGA bao gồm các bộ phận chính như các hàng rời rạc các phần tử logic và các thành phần cấu trúc giúp lập trình và cấu hình lại mạch theo mục đích sử dụng đa dạng.

 Các khối logic cơ bản lập trình được (logic block)

 Hệ thống mạch liên kết lập trình được

 Phần tử thiết kế sẵn như DSP slice, RAM, ROM, nhân xử lý, …

FPGA được xem như một loại vi mạch bán dẫn chuyên dụng dạng ASIC, nhưng không tối ưu như các ASIC đặc chế hay ASIC thiết kế dựa trên thư viện logic Tuy nhiên, FPGA vượt trội về khả năng tái cấu trúc trong quá trình sử dụng, giúp việc thiết kế đơn giản, giảm chi phí, và rút ngắn thời gian đưa sản phẩm ra thị trường.

FPGA vượt trội hơn các loại vi mạch bán dẫn lập trình dựa trên cấu trúc mảng phần tử logic như PLA, PAL, CPLD ở nhiều điểm quan trọng Tác vụ lập trình của FPGA đơn giản hơn, dễ dàng linh hoạt và thích ứng với các yêu cầu thiết kế khác nhau Đặc biệt, kiến trúc của FPGA cho phép tích hợp lượng lớn các cổng logic, vượt xa các vi mạch lập trình trước đó về khả năng mở rộng và xử lý phức tạp.

Thiết kế và lập trình FPGA chủ yếu sử dụng các ngôn ngữ mô tả phần cứng HDL như VHDL và Verilog Các nhà sản xuất FPGA lớn như Xilinx và Altera cung cấp các gói phần mềm cùng thiết bị phụ trợ hỗ trợ quy trình thiết kế FPGA Ngoài ra, còn có các nhà cung cấp thứ ba như Synopsys và Synplify cung cấp phần mềm mô phỏng và tối ưu hóa thiết kế HDL Các phần mềm này giúp thực hiện toàn bộ các bước trong quy trình thiết kế IC chuẩn, bắt đầu từ mã RTL đến sản phẩm hoàn chỉnh.

Cấu trúc cơ bản của FPGA

Hình 1 1 Cấu trúc cơ bản FPGA

Các khối logic (logic block) là thành phần chính của FPGA, được cấu thành từ LUT và các phần tử nhớ đồng bộ Flip-flop LUT (Look-up Table) là khối logic có thể thực hiện bất kỳ hàm logic nào từ 4 đầu vào, giúp tối ưu hóa quá trình xử lý tín hiệu và tùy mục đích có thể gửi kết quả ra ngoài trực tiếp hoặc qua phần tử nhớ Flip-flop để đảm bảo tính đồng bộ trong hệ thống FPGA.

Các dòng FPGA của Xilinx sử dụng khái niệm slice, trong đó mỗi slice bao gồm 2 khối logic, với số lượng slice thay đổi từ vài nghìn đến hàng chục nghìn tùy theo loại FPGA Bốn slice hợp thành một khối Configurable Logic Blocks (CLBs), là phần tử cơ bản tạo nên FPGA và nguồn tài nguyên logic chính để xây dựng các mạch logic phức tạp Cấu trúc của mảng LUT được thiết kế để hỗ trợ tối đa 6 đầu vào, bao gồm 4 đầu vào chính và 2 đầu vào bổ sung từ các khối logic phân bố trước và sau, nhằm nâng cao tốc độ thực thi các phép toán số học logic.

1.2.2 Hệ thống mạch liên kết

Hình 1 4 Mạng liên kết trong FPGA

Mạng liên kết trong FPGA được cấu thành từ các đường kết nối theo hai phương ngang và dọc, phân loại thành các nhóm khác nhau tùy thuộc vào loại FPGA Ví dụ, trong FPGA XC4000 của Xilinx có ba loại kết nối: ngắn, dài và rất dài, nhằm phù hợp với các yêu cầu liên kết đa dạng Các đường kết nối này được liên kết với nhau thông qua các khối chuyển mạch lập trình được (programmable switch), giúp dễ dàng cấu hình và tối ưu hóa quá trình truyền dữ liệu Một khối chuyển mạch chứa nhiều nút chuyển lập trình để đảm bảo khả năng cấu hình linh hoạt cho các dạng liên kết phức tạp khác nhau, nâng cao hiệu suất hoạt động của FPGA.

1.2.3 Các phần tử tích hợp sẵn

Trong các dòng FPGA như Xilinx Virtex 4, 5, có tích hợp nhân Power PC nhằm hỗ trợ thiết kế ứng dụng SoC, trong khi dòng Atmel FPSLIC tích hợp nhân AVR để thực hiện các nhiệm vụ xử lý số Các phần tử tích hợp này giúp FPGA phù hợp cho các ứng dụng đa dạng như xử lý tín hiệu số, tối ưu hóa hiệu suất và mở rộng khả năng tùy biến trong các dự án công nghệ cao Tùy thuộc vào loại FPGA, các khối logic đều được tích hợp các phần tử bổ sung phù hợp, đáp ứng yêu cầu cụ thể của từng ứng dụng.

DSP slices là bộ nhân cộng tốc độ cao, thực hiện hàm A * B + C, ví dụ dòng Virtex của Xilinx chứa từ vài chục đến hàng tram DSP slices với A, B, C 18-bit.

FPGA của Xilinx tích hợp sẵn block RAM, là bộ nhớ nhỏ nằm trong FPGA có dung lượng từ vài chục Kb đến vài Mb tùy theo loại FPGA Block RAM có khả năng tạo thành các bộ nhớ nhỏ như ROM hoặc FIFO, giúp tối ưu hóa hiệu suất xử lý dữ liệu trong các thiết kế FPGA.

Quy trình thiết kế FPGA

1.3.1 Mô tả thiết kế (Specitification)

Khi xây dựng một chip FPGA dành cho ứng dụng riêng biệt, việc thiết kế tối ưu là yếu tố quyết định thành công của dự án Quá trình bắt đầu bằng việc thu thập và phân tích các yêu cầu của thiết kế để xây dựng kiến trúc tổng thể phù hợp Mỗi ứng dụng thực tế đều đặt ra các yêu cầu đặc thù, đòi hỏi IC phải được tối ưu hóa để đáp ứng hiệu quả cao nhất cho mục đích sử dụng Việc này giúp đảm bảo rằng chip FPGA có thể thực hiện các chức năng cần thiết một cách chính xác và hiệu quả, phù hợp với từng lĩnh vực ứng dụng cụ thể.

Trong bước này, người thiết kế kiến trúc xây dựng kiến trúc tổng quan dựa trên yêu cầu thiết kế và khả năng công nghệ hiện có, đảm bảo phù hợp với tiêu chuẩn và tối ưu hóa giải pháp Họ phải mô tả rõ ràng các vấn đề liên quan đến cấu trúc hệ thống, khả năng mở rộng, tích hợp công nghệ mới, cũng như cách thức quản lý và bảo trì để đảm bảo tính bền vững và hiệu quả của dự án.

 Thiết kế có những khối nào?

 Mỗi khối có chức năng gì?

 Hoạt động của mỗi khối ra sao?

 Phân tích các kỹ thuật sử dụng trong thiết kế và các công cụ, phần mềm bổ trợ cho việc thiết kế.

Một thiết kế hệ thống có thể được mô tả bằng ngôn ngữ mô tả phần cứng như VHDL hoặc Verilog, giúp viết mã nguồn rõ ràng và dễ hiểu Ngoài ra, thiết kế còn có thể thể hiện qua bảng vẽ mạch, cung cấp mô tả chi tiết các khối trong sơ đồ mạch điện Việc sử dụng cả hai phương pháp này hỗ trợ quá trình thiết kế, kiểm thử và tối ưu hệ thống điện tử một cách chính xác và hiệu quả.

1.3.3 Mô phỏng logic (Function simulation)

Sau khi mô tả thiết kế, người thiết kế cần tiến hành mô phỏng tổng thể để kiểm tra tính năng hoạt động của thiết kế, đảm bảo rằng các chức năng yêu cầu được thực hiện chính xác Việc mô phỏng này giúp phát hiện và khắc phục các lỗi tiềm ẩn, từ đó tăng tính khả thi của dự án Quá trình kiểm tra chức năng tổng thể đóng vai trò quan trọng trong việc đảm bảo thiết kế đáp ứng đầy đủ các yêu cầu ban đầu.

1.3.4 Tổng hợp mạch logic (Logic Synthesis)

Tổng hợp là quá trình tổng hợp các mô tả thiết kế thành sơ đồ bố trí mạch(netlist) Quá trình này chia làm 2 bước:

Chuyển đổi các mã RTL, mã HDL thành mô tả dưới dạng các biểu thức đại số Boolean.

Dựa trên các biểu thức này kết hợp với thư viện tế bào chuẩn hóa sẵn để tổng hợp nên một thiết kế tối ưu.

1.3.5 Hiệu chỉnh các kết nối (Datapath Schematic)

Nhập netlist và các ràng buộc về thời gian vào công cụ phân tích thời gian (timing analysis) để phân tích chính xác các kết nối trong thiết kế Công cụ này sẽ tách rời từng kết nối, tính toán thời gian trễ dựa trên các ràng buộc đã đặt ra Dựa vào báo cáo từ công cụ phân tích, xác định các kết nối không đáp ứng yêu cầu về thời gian Tùy vào nguyên nhân gây ra không thỏa mãn, có thể chỉnh sửa mã, thực hiện lại quá trình tổng hợp mạch logic hoặc điều chỉnh các ràng buộc để tối ưu hóa hiệu suất thiết kế.

Quá trình gồm các bước:

Trong quá trình thiết kế, ánh xạ (mapping) đóng vai trò quan trọng trong việc chuẩn bị dữ liệu đầu vào và xác định kích thước của các khối Các khối này phải phù hợp với cấu trúc của một tế bào cơ bản FPGA, gồm nhiều cổng logic, nhằm tối ưu hóa việc đi dây và đảm bảo hiệu suất hoạt động của mạch FPGA.

Trong quá trình thiết kế tích hợp, sắp đặt và định tuyến là các bước quan trọng để tối ưu hóa hiệu suất chip Sắp đặt các khối vào các tế bào ở vị trí phù hợp giúp giảm độ dài đường dây và tăng tốc độ truyền tín hiệu Định tuyến là quá trình nối các tế bào liên kết với nhau một cách chính xác để đảm bảo chức năng hoạt động hiệu quả Để thực hiện công việc này, cần có các thông tin chi tiết về vị trí các khối, mạng lưới kết nối và các yêu cầu kỹ thuật để đảm bảo quá trình thiết kế diễn ra suôn sẻ và tối ưu hóa hiệu năng.

Thư viện tế bào có các đặc điểm vật lý quan trọng như kích thước tế bào, các điểm kết nối tối ưu để đảm bảo truyền tải hiệu quả Quá trình định thời chính xác giúp đồng bộ hệ thống, trong khi các trở ngại khi đi dây như không gian hạn chế hay nhiễu điện từ cần được khắc phục để duy trì hiệu suất hoạt động của thư viện Việc hiểu rõ các thông tin vật lý này đóng vai trò quan trọng trong việc thiết kế và tối ưu hóa hệ thống tế bào sinh học điện tử.

Một netlist đã được tổng hợp cung cấp các chi tiết chính xác về các instance và mối quan hệ kết nối trong thiết kế điện tử Nó mô tả rõ ràng các đường dẫn tín hiệu bị hạn chế, giúp đảm bảo tính đúng đắn và tối ưu của cấu trúc mạch Việc phân tích netlist là bước quan trọng để kiểm tra và xác minh thiết kế trước khi tiến hành các giai đoạn sản xuất tiếp theo.

Các yêu cầu của tiến trình cho các lớp kết nối gồm có các luật thiết kế liên quan đến các lớp đi dây, trở kháng, điện dung, và tiêu thụ năng lượng Ngoài ra, còn có các quy tắc về khả năng dẫn điện trong từng lớp để đảm bảo hiệu suất và độ tin cậy của hệ thống mạch tích hợp Việc tuân thủ các yếu tố này giúp tối ưu hóa thiết kế và nâng cao hiệu suất của các bộ phận điện tử trên chip.

1.3.7 Quá trình lập trình và nạp chương trình

Trong quá trình thiết kế FPGA, dự án cần được chuyển đổi thành file bit và nạp vào FPGA để triển khai hoạt động Quá trình này diễn ra thông qua việc lưu trữ tạm thời trong bộ nhớ của FPGA, và sẽ bị mất khi tắt nguồn Để thực hiện nạp thiết kế cho board FPGA Nexys 3, người dùng sử dụng phần mềm Xilinx ISE để tạo file bit, sau đó sử dụng phần mềm Digilent Adept để nạp file này vào kit FPGA Việc này giúp đảm bảo thiết kế hoạt động chính xác trên phần cứng FPGA Nexys 3.

Giới thiệu Kit Xilinx Spartan 6 Nexys 3

Các thông số của kit:

 Kit hoạt động ở tần số 100MHz

 USB2 cho chạy chương trình và truyền dữ liệu xfer

 USB-UART và USB-HID

 GPIO: 8 LEDs, 5 nút bấm, 8 công tắc và 4 led 7 thanh

 2278 slices, mỗi slices bao gồm 4 LUT 6 đầu vào và 8 Flip-flop

 576Kb cho khối RAM phục vụ xử lý nhanh

Kit phù hợp để đáp ứng nhu cầu của sinh viên và phòng LAB, mang lại hiệu quả cao trong học tập và thực hành Với tần số hoạt động cao hơn so với kit DE2, sản phẩm giúp xử lý các khối hoạt động nhanh hơn, tối ưu hóa quá trình lập trình và thử nghiệm Đây là lựa chọn lý tưởng để nâng cao khả năng học tập và nghiên cứu trong các môi trường giáo dục kỹ thuật số.

Lý thuyết về FSK

Khái niệm

Frequency Shift Keying (FSK) là phương pháp điều chế tần số trong đó dữ liệu số được truyền tải bằng cách thay đổi tần số của tín hiệu sóng mang theo các mức tần số riêng biệt FSK là kỹ thuật điều chế phổ biến trong truyền dữ liệu số, giúp tăng độ tin cậy và chống nhiễu trong hệ thống liên lạc Với khả năng truyền dữ liệu hiệu quả qua các tần số khác nhau, FSK thường được ứng dụng trong các hệ thống vô tuyến, mạng cảm biến và truyền thông không dây.

Công nghệ này được ứng dụng trong các hệ thống thông tin liên lạc như đo từ xa, truyền tin qua radio, xác định danh tính người dùng (User ID), điều khiển mở cửa nhà để xe, và truyền vô tuyến tần số thấp trong các băng tần VLF và ELF, đảm bảo độ chính xác và tin cậy cao cho các ứng dụng truyền thông và kiểm soát từ xa.

FSK đơn giản nhất là FSK nhị phân (BFSK) BFSK sử dụng một cặp tần số riêng biệt để truyền thông tin nhị phân (0 và 1)

Hình 2 2 Phổ của tín hiệu FSK

Hình 2 3 Phương pháp điều chế

Đánh giá và ứng dụng

 Ít bị ảnh hưởng bởi nhiễu và ít lỗi hơn so với ASK

 Tần số cao dễ bị nhiễu và hạn chế tốc độ truyền

Kỹ thuật FSK có các ứng dụng trong thông tin vô tuyến như sau

Dùng rộng rãi trong truyền số liệu

Dùng để truyền dữ liệu tốc độ 1200bps hay thấp hơn trên mạng điện thoại

Có thể dùng tần số cao (3-30MHz) để truyền sóng radio hoặc cáp đồng trục

Lý thuyết về bộ lọc số

Khái quát về các loại bộ lọc số 9 3.2 Bộ lọc FIR (Finite Impulse Response Filter) và các phương pháp thiết kế

Bộ lọc số giúp chọn lọc tần số mong muốn và lọc bỏ các tần số không mong muốn của tín hiệu

Bộ lọc số bao gồm 2 loại bộ lọc cơ bản là:

 Bộ lọc FIR: Lọc phi đệ quy

 Tín hiệu ra chỉ phụ thuộc vào tín hiệu vào hiện tại và tín hiệu vào trước đó

 Đáp ứng xung hữu hạn

 Bộ lọc FIR: Lọc đệ quy

 Tín hiệu ra phụ thuộc vào tín hiệu vào và tín hiệu ra tại thời điểm hiện tại và trước đó

 Đáp ứng xung hữu hạn

 Có thể không ổn định

3.2 Bộ lọc FIR (Finite Impulse Response Filter) và các phương pháp thiết kế

3.2.1 Bộ lọc FIR (Finite Impulse Response Filter)

Bộ lọc FIR (Finite Impulse Response) nổi bật với khả năng đáp ứng xung có chiều dài hữu hạn, chỉ hoạt động trong một khoảng thời gian xác định Cụ thể, h(n) chỉ khác không trong một khoảng hữu hạn N, từ 0 đến N-1, giúp đảm bảo tính ổn định và dễ dàng thiết kế Đặc điểm này làm cho bộ lọc FIR phù hợp cho các ứng dụng yêu cầu xử lý tín hiệu chính xác và ổn định lâu dài.

Bộ lọc số có đáp ứng xung có chiều dài hữu hạn được đặc trưng bởi hàm truyền đạt sau đây:

Giả sử h(n) là đáp ứng xung của bộ lọc FIR xác định với các mẫu n = 0, 1, … N-1 Tức là:

*Hàm truyền đạt của nó như sau:

Hàm đáp ứng pha - tần số của bộ lọc FIR có dạng như sau: θ( ω)=β− αω ,với α, β là các hằng số (3.6)

Và hàm đáp ứng tần số của bộ lọc FIR được cho dưới dạng độ lớn và pha như sau:

Khi thêm điều kiện pha tuyến tính vào bộ lọc FIR, dãy đáp ứng xung chỉ có thể là đối xứng hoặc phản đối xứng, đảm bảo tính chất pha tuyến tính Dựa trên đặc điểm đối xứng hoặc phản đối xứng của dãy đáp ứng xung và chiều dài N của nó, bộ lọc FIR được phân thành 4 loại chính Việc phân loại này giúp tối ưu hóa thiết kế và ứng dụng của bộ lọc trong các hệ thống xử lý tín hiệu Các loại bộ lọc này phù hợp với các yêu cầu khác nhau về đặc tính pha và tần số, nâng cao hiệu quả trong xử lý tín hiệu số.

- Bộ lọc loại 1: h(n) đối xứng, N lẻ.

- Bộ lọc loại 2: h(n) đối xứng, N chẵn.

- Bộ lọc loại 3: h(n) phản đối xứng, N lẻ.

- Bộ lọc loại 4: h(n) phản đối xứng, N chẵn.

3.2.2 Các phương pháp thiết kế bộ lọc FIR

Phương pháp thiết kế bằng biến đổi Fourier

Một cách tổng quát gồm những bước sau:

-Bước 3: Xác định hàm truyền đạt của bộ lọc.

Cửa sổ được ký hiệu như sau: w (n)= { ≠ 0, 0, 0 ≤ n ≤ N n≠ −1 (3.8)

Cửa sổ loại này là cửa sổ nhân quả.

*Các bước chính của phương pháp cửa sổ:

- Cho chỉ tiêu kỹ thuật của bộ lọc số: δ p , δ s , ω p , ω s

Trong quá trình chọn dạng cửa sổ và chiều dài N của cửa sổ, ta xác định rằng miền n của cửa sổ có tâm đối xứng tại n = (N − 1)/2 Điều này đảm bảo rằng trong miền tần số của cửa sổ, pha tuyến tính θ(ω) được xác định theo công thức θ(ω) = −(N − 1) Việc chọn dạng cửa sổ phù hợp và chiều dài N đóng vai trò quan trọng trong việc đảm bảo tính chính xác và hiệu quả của quá trình xử lý tín hiệu Góc pha tuyến tính giúp tối ưu hóa các ứng dụng liên quan đến phân tích tần số, đặc biệt trong các phương pháp xử lý tín hiệu phức tạp.

- Chọn loại bộ lọc số lý tưởng có đáp ứng xung là h(n), h(n) có tâm đối xứng tại

2 trong miền n, vậy trong miền ω thì h(n) sẽ có pha tuyến tính θ( ω)= −(N 2 −1) ω

- Nhân cửa sổ w ¿ với h(n) lý tưởng để được h w ( n) của bộ lọc thực tế. h w ( n)=ω (n) h( n) L ¿L[ h(n)]=∞L [h(n)]=N

Sau khi có hàm truyền h(w), chúng ta kiểm tra lại trong miền tần số để đánh giá xem các chỉ tiêu kỹ thuật đã đạt yêu cầu chưa Nếu chưa đáp ứng, tiếp tục tăng N và lặp lại quy trình để tối ưu hóa hệ thống Quá trình này lặp lại cho đến khi các tiêu chuẩn kỹ thuật được thỏa mãn, đảm bảo hiệu quả và độ chính xác của hệ thống.

Có một số loại cửa sổ phổ biến: a Cửa sổ chữ nhật w r (n)=ℜ c N (n)= { 1, 0 0, n ≤ n ≤ N ≠ −1 (3.9)

Để tăng độ suy giảm dải chắn và giảm thiểu hiện tượng Gibb trong thiết kế bộ lọc, nhiều dạng cửa sổ đã được phát triển và ứng dụng rộng rãi trong thực tế Một trong những dạng phổ biến là cửa sổ tam giác w(n), giúp cải thiện hiệu quả lọc và giảm nhiễu của hệ thống.

(3.13) e Cửa sổ Blackman w (n)= { 0,42− 0,5 cos(¿ N 2 −1 πn )+0,08 cos(¿ 4 πn

Trong quá trình thiết kế hệ thống truyền dẫn, luôn tồn tại sự cân bằng giữa độ hẹp của dải chuyển tiếp và hiệu ứng gợn sóng tại dải thông và dải chắn Các loại cửa số giúp giảm thiểu hiện tượng gợn sóng này thường làm tăng bề rộng của dải chuyển tiếp, thể hiện rõ mối quan hệ đánh đổi giữa hiệu quả lọc và băng thông của hệ thống.

Dưới đây là bảng tổng kết các thông số về độ rộng dải chuyển tiếp và độ suy giảm dải chắn tối thiểu đối với từng loại cửa sổ:

Bảng 3 1 Chỉ tiêu chất lượng các loại cửa sổ

Tên cửa sổ Độ rộng dải chuyển tiếp Độ suy giảm dải chắn tối thiểu

Dạng cửa sổ càng phức tạp thì bộ lọc càng cần thiết kế tinh vi hơn để bù đắp cho việc giảm dải chắn thấp và giảm đáp ứng xung N lớn hơn Để duy trì dải chuyển tiếp có độ rộng không đổi, sự phức tạp trong thiết kế bộ lọc là điều không thể tránh khỏi, nhằm đảm bảo hiệu suất lọc tối ưu trong các ứng dụng yêu cầu đáp ứng xung cao.

Phương pháp lấy mẫu tần số

Phương pháp thiết kế này có thể thực hiện qua 3 bước:

- Bước 1: Cho chiều dài bộ lọc là 2N+1, xác định các tần số lấy mẫu trong khoảng [0,π] theo biểu thức: ] theo biểu thức: ω k = 2 πk

- Bước 2: Tính các hệ số của bộ lọc là h (n)= 2 N 1 +1 ¿

Bước 3: Sử dụng tính đối xứng để xác định các hệ số còn lại theo biểu thức:h(n)=h(2N-n) với n = N+1,… 2N.

Bộ lọc IIR (Infinite Impulse Response Filter) và phương pháp thiết kế

Bộ lọc số IIR chủ yếu dựa trên quá trình chuyển đổi từ bộ lọc tương tự thông qua các phương pháp chuyển đổi bộ lọc phù hợp Các phương pháp này sẽ được tóm tắt trong phần này, nhấn mạnh rằng các định dạng có sẵn và bảng tra chỉ áp dụng cho bộ lọc thông thấp Để thiết kế các loại bộ lọc số khác như bộ lọc thông dải, cần thực hiện bước chuyển đổi băng tần số, có thể theo hai hướng: chuyển đổi băng tần số tương tự hoặc số Có hai cách tiếp cận chính để thiết kế bộ lọc số IIR, như đã trình bày trong hình vẽ đính kèm.

Thiết kế bộ lọc thông thấp tương tự

Chuyển đổi băng tần số s z

Bộ lọc IIR theo thiết kế

Hình 3 1 Phương pháp thiết kế bộ lọc IIR (Cách 1)

Thiết kế bộ lọc thông thấp tương tự

Chuyển đổi băng tần số z z

Bộ lọc IIR theo thiết kế

Hình 3 2 Phương pháp thiết kế bộ lọc IIR (Cách 2)

Trong phạm vi đề tài này, chúng ta sẽ tiến hành các bước theo cách tiếp cận thứ hai bao gồm các bước:

- Thiết kế bộ lọc thông thấp tương tự

- Chuyển đối từ bộ lọc thông thấp tương tự sang bộ lọc thông thấp số

- Chuyển đổi băng tần số để thu được các bộ lọc khác từ bộ lọc thông thấp

3.3.2 Thiết kế bộ lọc thông thấp tương tự

Yêu cầu về chỉ tiêu kỹ thuật của bộ lọc thông thấp tương tự thường được cho dưới dạng các tham số tuyệt đối như sau:

Trong các hệ thống truyền tín hiệu, Ωp và Ωs lần lượt là các tần số cắt dải thông và tần số cắt dải chắn được định nghĩa theo đơn vị rad/sec, đóng vai trò thiết yếu trong việc xác định đặc tính lọc của hệ thống Tham số εl thể hiện mức gợn sóng của bộ lọc, ảnh hưởng đến độ ổn định và độ chính xác của tín hiệu truyền qua hệ thống Bên cạnh đó, tham số A mô tả mức suy giảm của dải chặn, giúp kiểm soát hiệu quả khả năng loại bỏ các tín hiệu nhiễu không mong muốn Hiểu rõ các tham số này là cơ sở để thiết kế và tối ưu hóa các bộ lọc trong các ứng dụng truyền thông và xử lý tín hiệu, đảm bảo chất lượng truyền tải dữ liệu cao và hiệu quả.

Ngoài ra độ mấp mô  p và  s của thang đo giá trị tuyệt đối liên hệ với  và A bằng các hệ thức:

Có 4 định dạng cơ bản thường được vận dụng trong quá trình thiết kế bộ lọc tương tự là: bộ lọc Butterworth, bộ lọc Chebyshev-1, bộ lọc Chebyshev-2 và bộ lọc Elliptic

Bộ lọc thông thấp Butterworth

Hàm bình phương biên độ của đáp ứng tần số bộ lọc Butterworth bậc N được cho bởi phương trình:

  Với  c là tần số cắt.

Các điểm cực của hàm bình phương biên độ của hàm truyền đạt |Ha(s)| 2 là :

Giá trị thích hợp của bậc bộ lọc thông thấp Butterworth được tính theo công thức sau:

(Giá trị nguyên nhỏ nhất lớn hơn hoặc bằng biểu thức trong dấu   ).

Bộ lọc thông thấp Chebyshev-1

Hàm bình phương biên độ của đáp ứng tần số bộ lọc Chebyshev-1 bậc N được cho bởi phương trình:

(3.24) với Ωc là tần số cắt, εlà tham số gợn sóng dải thông, T (x) N là đa thức Chebyshev-1 bậc N được cho bởi công thức:

Các điểm cực của hàm bình phương biên độ của hàm truyền đạt |Ha(s)| 2 có dạng: pk k k s     j (3.26

Hệ thống có 2N điểm cực của hàm bình phương biên độ hệ thống phân bố đều trên một đường ellipse với bán kính là (aΩc) và (bΩc) Các điểm cực của hàm truyền đạt Ha(s) gồm N điểm nằm trên nửa đường ellipse phía trái mặt phẳng S, và các điểm này đối xứng qua trục thực, đảm bảo tính đối xứng và ổn định của hệ thống.

Giá trị thích hợp của bậc bộ lọc thông thấp Chebyshev-1 được tính theo công thức sau:

Bộ lọc thông thấp Chebyshev-2

Hàm bình phương biên độ của đáp ứng tần số bộ lọc Chebyshev-2 bậc N được cho bởi phương trình:

Với Ωc là tần số cắt, ε là tham số gợn sóng dải thông, T x N ( ) là đa thức Chebyshev bậc N

Giá trị thích hợp của bậc bộ lọc thông thấp Chebyshev-2 đươc tính giống theo công thức đã cho với bộ lọc Chebyshev-1

Chuyển đổi bộ lọc tập trung vào nghiên cứu các phép biến hình, hay ánh xạ, nhằm chuyển đổi mặt phẳng s về mặt phẳng z Trong lý thuyết, có nhiều phương pháp chuyển đổi khác nhau để thực hiện quá trình này, giúp tối ưu hóa các quá trình xử lý hình ảnh và nâng cao hiệu quả của các bộ lọc trong các ứng dụng thực tế.

Phương pháp bất biến xung (Impulse Invariance Transformation)

Phép biến hình cho ta công thức đổi biến: z e sT (3.31)

Mối quan hệ giữa hàm truyền đạt H(z) ở miền z và hàm truyền đạt Ha(s) ở miền s được cho bởi công thức sau:

Nếu như bộ lọc tương tựlà thông thấp lý tưởng và chu kỳ lấy mẫu đủ nhỏ để:

Hiện tượng chồng phổ (aliasing) không xảy ra khi phổ tín hiệu nằm trong phạm vi giới hạn của bộ lọc, tức là  Tuy nhiên, thực tế các bộ lọc thông thấp không có phổ hữu hạn, do đó, hiện tượng chồng phổ vẫn xảy ra do các phép biến hình gây ra.

Phương pháp biến đổi song song tuyến (Bilinear Transformation)

Phép biến hình cho ta công thức đổi biến:

Phương pháp tương đương vi phân (Approximation of Derivatives

Phương pháp này xây dựng sự liên kết giữa định nghĩa của vi phân và sai phân, giúp hiểu rõ hơn về mối quan hệ giữa hai khái niệm toán học quan trọng này Thông qua phép biến hình, chúng ta có thể thực hiện công thức đổi biến một cách chính xác, tạo nền tảng vững chắc để phân tích và giải quyết các bài toán liên quan Việc áp dụng phép biến hình trong quá trình này giúp tối ưu hóa các bước tính toán và làm rõ các ý nghĩa của vi phân cũng như sai phân trong toán học.

Phương pháp biến đổi Z thích ứng (Matched-Z Transformation)

Phương pháp này dựa trên nguyên tắc ánh xạ trực tiếp các điểm cực và điểm không của hàm truyền đạt hệ thống tương tự sang các điểm cực và điểm không của hàm truyền đạt của hệ thống số, giúp chuyển đổi chính xác và hiệu quả Giả sử hàm truyền đạt của hệ thống tương tự có dạng, phương pháp này sẽ xác định các điểm cực và điểm không trên hàm truyền đạt của hệ thống số để đảm bảo phản ánh đúng đặc tính của hệ thống ban đầu.

 (3.35) thì phép biến hình biến đổi các phần tử (s −a) trở thành 1−e aT z −1 thu được hàm truyền đạt của hệ thống số.

Chuyển đổi băng tần số

Việc chuyển đổi băng tần số, xuất phát từbộlọc thông thấp có tần sốcắt  c ' được đưa ra theo các côngthức ánh xạ ởbảng dưới đây:

Bảng 3 2 Chuyển đổi băng tần số

Loại chuyển đổi Công thức chuyển đổi Các tham số

 c : Tần số cắt của bộ lọc mới.

 c : Tần số cắt của bộ lọc mới.

 c : Tần số cắt thấp của bộ lọc mới.

 c : Tần số cắt cao của bộ lọc mới.

 c : Tần số cắt thấp của bộ lọc mới.

 c : Tần số cắt cao của bộ lọc mới.

Triển khai khối điều chế trên FPGA

Tổng quan hệ thống

Các chỉ tiêu kỹ thuật:

 Tần số sóng mang của bit 1: 16 Khz

Tần số sóng mang của bit 0 là 13 kHz Trong quá trình truyền dữ liệu, chúng ta sử dụng hai tần số chính là 13 kHz và 16 kHz, vì đây là hai tần số nằm trong búp sóng của transducer, giúp đảm bảo truyền tín hiệu chính xác và ổn định.

Từ lý thuyết FSK đã trình bày ở trên, em đưa ra thiết kế như sau

Hình 4 1 Ý tưởng thiết kế FSK_mod

Hình 4 2 Sơ đồ chân khối FSK_mod

Chức năng của các port là:

 Data (7:0): nhận giá trị tín hiệu cần truyền đi

 Clk: điều khiển hoạt động của mạch

Các chân CS_DAC, MOSI_DAC, và SCLK_DAC là các chân tín hiệu giao tiếp SPI quan trọng để truyền dữ liệu tới DAC, giúp chuyển đổi tín hiệu số thành tín hiệu tương tự một cách chính xác và hiệu quả.

Thiết kế chi tiết

Module FSK_mod bao gồm 3 khối chính được kết nối với nhau như hình vẽ và có chức năng như sau:

Khối Bit_rate_1Khz chịu trách nhiệm chuyển đổi tín hiệu từ 8 bit song song sang 8 bit nối tiếp với tốc độ 1 Kbps Sau đó, dữ liệu này được truyền sang khối Sin_data để điều khiển quá trình ghép sóng mang, đảm bảo tín hiệu được truyền tải chính xác và hiệu quả.

Khối Sin_data nhận tín hiệu điều khiển từ khối Bit_rate_1Khz, đảm bảo kết nối sóng mang phù hợp với lý thuyết FSK Trong hệ thống FSK, bit 1 được ghép với tần số 16Hz, còn bit 0 tương ứng với tần số 13Hz, giúp truyền dữ liệu hiệu quả và chính xác.

 Khối dac_out giúp chuyển tín hiệu fsk_signal sang DAC thông qua giao tiếp SPI

Hình 4 3 Sơ đồ chân khối Bit_rate_1Khz

Hình 4 4 Thiết kế chi tiết khối Bit_rate_1Khz

Tín hiệu sóng sin được điều chế dựa trên dòng bit đầu vào, với tần số khác nhau cho từng trạng thái bit Cụ thể, khi truyền bit 1, tần số sóng sin là 16 kHz, còn đối với bit 0, tần số sóng sin là 13 kHz Phương pháp này giúp phân biệt giữa các trạng thái bit một cách chính xác trong quá trình truyền dữ liệu Sử dụng kỹ thuật điều chế theo tần số này tăng cường khả năng chống nhiễu và duy trì chất lượng tín hiệu trong hệ thống truyền thông số.

Hình 4 5 Sơ đồ chân khối sin_data

Hình 4 6 Thiết kế chi tiết khối sin_data

Khối dac_out giúp FPGA giao tiếp với DAC MCP 4921 để chuyển từ tín hiệu số sang tín hiệu tương tự thông qua giao tiếp SPI.

Hình 4 8 Sơ đồ chân khối dac_out

Hình 4 9 Thiết kế chi tiết khối dac_out

Kết quả Synthesis

Bảng 4 1 Phần cứng sử dụng Device Utilization Summary (estimated values) [-]

Logic Utilization Used Available Utilization

Number of fully used LUT-FF pairs 77 529 14%

Phần cứng sử dụng trong hệ thống hiện tại khá nhỏ so với tổng tài nguyên phần cứng sẵn có, cho phép mở rộng và phát triển thêm trong tương lai Điều này đảm bảo khả năng nâng cấp hệ thống một cách linh hoạt mà không gặp nhiều hạn chế về nguồn lực Việc sử dụng tài nguyên hiệu quả giúp tối ưu hóa hiệu suất và hỗ trợ các dự án phát triển mới trong tương lai gần.

Minimum period: 6.285ns (Maximum Frequency: 159.109MHz) Minimum input arrival time before clock: 4.736ns

Maximum output required time after clock: 4.746ns

Maximum combinational path delay: No path found

Triển khai Bộ lọc số trên FPGA

Bộ lọc FIR

Hình 5 1 Cấu trúc của bộ lọc IIR

Bộ lọc FIR được thiết kế theo ý tưởng trên, các tham số của bộ lọc được tính toán sử dụng Filter Designer trong Matlab

Bậc của bộ lọc là 20

Kết quả synthesis như sau

Bảng 5 1 Kết quả phần cứng sử dụng bộ lọc FIR Device Utilization Summary (estimated values) [-]

Logic Utilization Used Available Utilization

Number of fully used LUT-FF pairs 154 2801 5%

Kết quả testbench đạt được

Trong hình 5.2, kết quả testbench cho thấy bộ lọc thông thấp 2KHz hoạt động hiệu quả Khi tín hiệu đầu vào có hai tần số là 2KHz và 5KHz, bộ lọc chỉ cho phép tần số 2KHz đi qua, loại bỏ tần số 5KHz Kết quả này xác nhận rằng bộ lọc đáp ứng đúng các yêu cầu thiết kế về loại bỏ tần số không mong muốn, đảm bảo hiệu suất lọc tối ưu cho ứng dụng của bạn.

Bộ lọc IIR

Hình 5 3 Cấu trúc bộ lọc IIR

IIR filters are divided into smaller sections, each with tailored filter parameters designed using the Filter Designer tool in MATLAB The filter order is set to 10, ensuring precise signal processing and improved filter performance This modular approach enhances the filter's efficiency and accuracy in various applications.

Hình 5 4 Sơ đồ chân IIR_passband

Trong module IIR_passband bao gồm 5 section nhỏ, mỗi section có cấu trúc như sau

Hình 5 6 Sơ đồ chân 1 khối section

Ta có các chân a1, a2, b0, b1, b2 là các tham số thiết kế của 1 section trong bộ lọc IIR

Hình 5 7 Thiết kế chi tiết khối section Bảng 5 2 Phần cứng sử dụng cho bộ lọc IIR Device Utilization Summary (estimated values) [-]

Logic Utilization Used Available Utilization

Number of fully used LUT-FF pairs 56 5970 0%

Kết quả testbench cho thấy bộ lọc IIR bandpass có dải tần từ 13-16 kHz hoạt động hiệu quả Khi đưa tín hiệu có tần số 14 kHz vào, bộ lọc dễ dàng giữ lại tín hiệu này mà không gây suy hao đáng kể, chứng tỏ khả năng lọc chọn tần số chính xác trong khoảng tần số mong muốn.

Ngày đăng: 08/12/2022, 21:34

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w