Thiết kế bộ lọc số với công nghệ epga

99 8 0
Thiết kế bộ lọc số với công nghệ epga

Đ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

ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BACH KHOA à ả TRAN TAN PHUC ẹE TAỉI: THIET KE BỘ LỌC SỐ VỚI CÔNG NGHỆ FPGA CHUYÊN NGÀNH: KỸ THUẬT VÔ TUYẾN ĐIỆN TỬ MÃ NGÀNH: 07 01 LUẬN VĂN THẠC SĨ Tháng -2003 Kết luận Kết luận KẾT LUẬN : Bộ lọc số ứng dụng rộng rãi ứng dụng xử lý tín hiệu số Bộ lọc số dùng để thực việc phân tích phổ, lọc tín hiệu nhiễu không mong muốn hay cung cấp dạng phổ tín hiệu Những kết thu từ việc thiết kế mạch lọc số chúng sử dụng rộng rãi hệ thông thông tin số FPGA công nghệ ứng dụng rộng rãi, cần có thời gian định để tiếp cận nghiên cứu, việc thiết kế lọc số nhiều thiếu sót hạn chế Chẳng hạn, nâng cao thêm số bậc lọc mạch lọc để tăng độ xác mạch lọc, hay hệ số lọc chưa chuyển trực tiếp từ phần mềm vào FPGA, mà phải nạp bảng khai báo số điều hạn chế chương trình thực chưa tối ưu để hạn chế tối đa số logic cell Trong luận văn em thực lọc số FIR IIR FPGA với tốc độ ( tần số lấy mẫu) 10MHz, giơiù hạn thiết bị nên luận văn giới hạn thiết kế bậc lọc khuôn khổ định Tài nguyên cuả FPGA có hạn nên thực lọc với hệ số không cao Trong đề tài thực lọc FIR bậc 16, lọc IIR bậc Điều dẫn tới việc thoả mãn đầy đủ yêu cầu phẩm chất cuả lọc Một điểm khác lần thay đổi hệ số cuả lọc phải thực biên dịch lại thiết kế Và vấn đề chuyển đổi hệ số lọc từ dạng số thực sang dạng nhị phân bit vàtính bảng tra LUT 16x8 phải thực thủ công Đó hạn chế cuả thiết kế Nếu giải tốt vấn đề làm cho người sử dụng dễ dàng Kết lọc thử nghiệm kit UP, cho kết lọc tương đối tốt Nhưng để kết tốt ta phải nâng số bit lượng tử hoá giá trị số đầu vào (ADC có số bit nhiều hơn), phải tìm cách nâng cao số bậc lọc HƯỚNG PHÁT TRIỂN: Để hoàn thiện kết đạt được, cần tăng thêm số bit liệu từ bit lên 16bit hay 32 bit để tăng độ phân giải cao GVHD: TS.Nguyễn Như Anh ThS.Hồ Trung Mỹ HV: Trần Tấn Phúc 98 Kết luận Thực chương trình chuyển đổi hệ số lọc từ dạng thực sang dạng nhị phân cách liên thông tạo dễ dàng cho người sử dụng Từ thực lưu hệ số ROM, chuyển trực tiếp cách viết vào RAM , điều làm cho việc biên dịch thiết kế dễ dàng Sử dụng FPGA có dung lượng nhớ lớn số cổng logic lớn để thực lọc có bậc cao hơn, chất lượng lọc tốt Bộ xử lý lọc số tích hợp card xử lý số như: hệ thống lọc nhiễu, hệ thống phân tích phổ, hệ thống xử lý ảnh, hệ thống nén liệu… GVHD: TS.Nguyễn Như Anh ThS.Hồ Trung Mỹ HV: Trần Tấn Phúc 99 Lời nói đầu Trong năm gần đây, công nghệ ASIC phát triển với tốc độ nhanh giới Đây công nghệ tiên tiến cung cấp cho phương thức thiết kế hệ thống số cách nhanh chóng, tiện lợi rẻ tiền, đặc biệt thích hợp với việc nghiên cứu thử nghiệm trước đưa vào sản xuất đại trà quy mô lớn Với công cụ thiết bị phần cứng lập trình phần mềm tích hợp, công nghệ ASIC cho người thiết kế nhìn trực quan hệ thống kỹ thuật số, điều có lợi đưa vào nghiên cứu giảng dạy trường đại học nhằm giúp sinh viên hiểu rõ chất hoạt đọâng mạch số học lý thuyết Trong luận văn này, để có nhìn tổng quát quy trình thiết kế mạch số với công nghệ ASIC, điều kiện thiết bị thí nghiệm có trường, đề tài vào nghiên cứu ứng dụng thiết bị phần cứng lập trình với công nghệ FPGA, bước phát triển trước ASIC Mục tiêu thiết kế lọc số FIR IIR xử lý số tín hiệu Ngôn ngữ mô tả phần cứng sử dụng VHDL, công cụ phần mềm hổ trợ sử dụng MAX+PLUS II hãng ALTERA Sau thiết kế mô thành công, chip thực phần cứng board UP ALTERA Luận văn chia thành chương Các chương xếp sau: Chương : Giới thiệu lọc số FIR IIR Chương nhằm cung cấp kiến thức nhằm giúp ta có tảng lý thuyết để thực việc thiết kế lọc số FIR IIR chương sau Chương 2: Công Nghệ FPGA Ngôn Ngữ VHDL Chương giới thiệu tổng quát công nghệ FPGA ngôn ngữ VHDL, cách sử dụng phần mềm hổ trợ Max Plus II Chương 3: Thiết Kế Bộ Lọc Số Lập Trình Được Với FPGA Chương trình bày ý tưởng thiết kế, mô hình thực phần cứng FPGA, mạch ADC, DAC giao tiếp với Đồng thời chương này, luận văn trình bày việc xây dựng phần mềm tính toán trước hệ số lọc số ngôn ngữ Matlab Giao diện tính hệ số lọc có phương pháp lựa chọn để thiết kế lọc số Chương 4: Thiết Kế Giải Thuật Cho Bộ Lọc Số Bằng Ngôn Ngữ Mô Tả Phần Cứng VHDL Chương trình bày cách tối ưu hóa giải thuật tính lọc số, giải thuật thực lọc số ngôn ngữ VHDL thiết bị FLEX10K Kết mô Max Plus II thực nghiệm lọc số thực FLEX10K kit UP hãng Altera Tháng 5/2003 MỤC LỤC Chương1: Trang Giới thiệu lọc FIR IIR Giới thiệu Mạch lọc FIR Các phương pháp thiết kế mạch lọc FIR Mạch lọc IIR Các phương pháp thiết kế mạch lọc IIR 5 11 26 28 Chương 2: Công nghệ FPGA ngôn ngữ VHDL Công nghệ FPGA 1.1 Giới thiệu 1.2 Mô tả cấu trúc 1.3 Ứng dụng FPGA 1.4 Cài đặt cho FPGA 1.5 Giới thiệu loại FPGA Giới thiệu Ngôn ngữ VHDL 2.1 Khái quát VHDL 2.2 Các điểm mạnh VHDL 2.3 Cấu trúc ngôn ngữ VHDL Giới thiệu phần mềm Max Plus II 3.1.Giới thiệu 3.2 Các ứng dụng Max Plus II 3.3 Trình biện dịch Max Plus II 38 38 38 39 41 43 45 48 48 49 49 58 58 58 59 Chương 3: Thiết kế lọc số lập trình với FPGA Ý tưởng thiết kế Mô hình thực Phần mềm tính hệ số lọc FIR IIR Mạch biến đổi ADC DAC Giới thiệu phần cứng hổ trợ: Kit UP ALTERA 63 63 66 67 69 75 Chương 4: Thiết kế giải thuật cho lọc số ngôn ngữ mô tả phần cứng VHDL 77 1.Tối ưu hóa cách thiết kế lọc FIR FLEX10K Thiết kế giải thuật cho lọc số FIR Thiết kế giải thuật cho lọc số IIR 77 85 91 Kết luận 98 CHƯƠNG : Giới thiệu lọc số FIR IIR Chương GIỚI THIỆU VỀ BỘ LỌC SỐ FIR VÀ IIR Giới thiệu: Một lọc số hệ thống tuyến tính bất biến miền biến số n, sơ đồ khối cho hình sau: h(n) x(n) y(n) đây: y( n ) = h( n ) * x( n ) = ∞ ∑ ∞ ∑ x( m ) h( n − m ) h ( m )x ( n − m ) = x ( n ) * h ( n ) = m = −∞ m = −∞ h(n) : đáp ứng xung cuả hệ thống Và ta biết đáp ứng xung đặc trưng hoàn toàn cho hệ thống miền n Ngoài hệ thống biểu diễn phương trình sai phân tuyến tính sau đây: N M k =0 r=0 ∑ a k y( n − k ) = ∑ b r x( n − r ) Tổng hợp tất hệ số ak, br biểu diễn hệ thống tuyến tính bất biến Tức hệ số ak, br đặc trưng hoàn toàn cho hệ thống Trong miền Z hệ thống đặc trưng hàm truyền ñaït H(Z): M H( Z) = ZT[h(n)] = Y ( Z) = X( Z) ∑b Z r=0 N ∑a k =0 HV: Trần Tấn Phúc r k −r Z −k GVHD: Thầy Hồ Trung Mỹ CHƯƠNG : Giới thiệu lọc số FIR IIR Nếu hàm truyền đạt H(Z) đánh giá vòng tròn đơn vị Z = có đáp ứng tần số H(ejω): M Y(e jω ) H(e jω ) = = X(e jω ) ∑b e r r=0 N ∑a k =0 k − j ωr e − j ωk Y(e ) = H(e ).X(e jω ) jω jω Quan hệ cho thấy việc phân bố tần số cuả biên độ pha cuả tín hiệu vào x(n) biến dạng hệ thống tùy thuộc vào dạng cuả H(ejω) Chính dạng cuả H(ejω) xác định việc suy giảm hay khuếch đại thành phần tần số khác Hệ thống tương ứng với H(ejω) gọi lọc Vấn đề tổng quát lọc số việc tạo hệ thống tuyến tính bất biến Hệ thống có đáp ứng tần số mong muốn thực dược Quan hệ đầu vào, đầu đáp ứng xung cuả hệ thống phải thoả mãn điều kiện sau đây: ∞ y ( n ) = h ( n ) * x ( n ) = ∑ h ( m )x ( n − m ) m =0 L[h(n)] = [0,∞] ∞ ∑ h( n ) < ∞ n =0 Các quan hệ cho thấy chiều dài cuả đáp ứng xung h(n) quan trọng, hệ số h(n) đặc trưng cho hệ thống Vì phân loại hệ thống thành hai loại lớn tùy theo chiều dài cuả đáp ứng xung h(n): Loại 1: hệ thống đặc trưng đáp ứng xung có chiều dài hữu hạn Nó gọi hệ thống có đáp ứng xung chiều dài hữu hạn (FIR), tức h(n) khác không khoảng có chiều dài hữu hạn N (từ đến N-1) Loại 2: hệ thống gọi hệ thống có đáp ứng xung chiều dài vô hạn, tức h(n) khác không khoảng vô hạn từ đến ∞ Gọi lọc IIR HV: Trần Tấn Phúc GVHD: Thầy Hồ Trung Mỹ CHƯƠNG : Giới thiệu lọc số FIR IIR Mạch Lọc Số FIR: Ta xét mạch lọc FIR độ dài M với tín hiệu vào x(n) tín hiệu y(n) mô tả phương trình sai phân sau: y(n) = b0x(n) + b1x(n-1) + …+ bM-1x(n-M-1) = M −1 ∑ b x(n − k ) k =0 k Với bk hệ số mạch lọc Do ta có biểu diễn tín hiệu hệ thống theo công thức tính: y ( n) = M −1 ∑ h( k ) x ( n − k ) k =0 H ( z) = M −1 ∑ h( k ) z −k k =0 Mạch lọc FIR phase tuyến tính đáp ứng xung thỏa mãn điều kiện đối xứng phản đối xứng: h(n) = ± h(M-1-n) n = 0, 1, 2, ……, M-1 Thay đáp ứng xung có điều kiện đối xứng phản đối xứng vào, ta coù: H ( z ) = h(0) + h(1).z −1 + h(2).z −2 + + h(m − 2).z − ( M − ) + h( M − 1).z − ( M −1) [ ] ⎧ M − ( M −3) / ⎫ ) + ∑ h(n) z ( M −1− k / ) ± z −( M −1− k / 2) ⎬ M leû n =0 ⎩ ⎭ = Z −( M −1) / ⎨h( [ ] ⎧( M −3) / ⎫ h(n) z ( M −1− k / ) ± z −( M −1− k / ) ⎬ ∑ ⎩ n =0 ⎭ = Z −( M −1) / ⎨ M chẵn Bây ta thay z-1 z nhân hai vế phương trình nhận với z-(M-1) ta thu được: z − ( M −1) H ( z −1 ) = ± H ( z ) HV: Trần Tấn Phúc GVHD: Thầy Hồ Trung Mỹ CHƯƠNG : Giới thiệu lọc số FIR IIR Kết cho thấy nghiệm đa thức H(z) nghiệm đa thức H(z-1) Vì vậy, nghiệm đa thức H(z) xảy cặp nghịch đảo với Nói cách khác, z1 nghiệm đa thức H(z) 1/z1 nghiệm Hơn nữa, đáp ứng H(n) lọc thực nghiệm phức có cặp liên hợp phức Vì vậy, z1 nghiệm phức z1* nghiệm, H(z) có điểm không 1/ z1* Đáp ứng tần số mạch lọc FIR phase tuyến tính thu cách tính vòng tròn đơn vị Sự thay thu biểu thức H(ω) sau: H (ω ) = H r (ω )e j [( βπ / )−ω ( M −1) / ] Với H r (ω ) hàm thực tần số, phụ thuộc vào giá trị đáp ứng xung h(n) phase θ H (ω ) mạch lọc: θ H (ω ) = βπ − ω ( M − 1) Vaán đề lại việc thiết kế mạch lọc FIR phase tuyến tính xác định hệ số mạch lọc, tức giá trị h(n), n=0, 1, 2, ……, M từ đáp ứng tần số H d (ω ) mạch lọc Trước lọc thiết kế, tập đặc tính lọc xác định Thí dụ, giả sử ta muốn thiết kế lọc thông thấp lý tưởng có pha tuyến tính tần số cắt ω c laø ⎧e − jω H d (e ) = ⎨ ⎩ jω ω ≤ ωc ωc ≤ ω ≤ π Đáp ứng xung đơn vị lọc laø: h d (n)= sin( n − α )ω c π (n − α ) lọc thực (do không nhân không ổn định ), ta cần phải nới lỏng (giảm bớt ràng buộc lý tưởng đáp ứng tần số cho phép độ lệch sai số so với đáp ứng lý tưởng Các đặc tính cho lọc thông thấp điển hình có dạng : HV: Trần Tấn Phúc GVHD: Thầy Hồ Trung Mỹ CHƯƠNG : Giới thiệu lọc số FIR IIR 1- δp < H(e jw )

Ngày đăng: 17/02/2021, 10:06

Từ khóa liên quan

Mục lục

  • BIA.DOC

    • ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH

    • TRƯỜNG ĐẠI HỌC BÁCH KHOA

      • TRẦN TẤN PHÚC

        • CHUYÊN NGÀNH: KỸ THUẬT VÔ TUYẾN ĐIỆN TỬ

          • MÃ NGÀNH: 2 . 07. 01

            • LUẬN VĂN THẠC SĨ

            • Tháng 6 -2003

            • danhgia.doc

            • loinoidau.DOC

            • muc luc.doc

              • Kết luận 98

              • Chuong 1.doc

                • GIỚI THIỆU VỀ BỘ LỌC SỐ FIR VÀ IIR

                  • Các cửa sổ thường dùng cho việc thiết kế lọc FIR

                  • Chuong 2.doc

                    • a. Đặc tính tổng quát: VHDL có thể được sử dụng để lập tài liệu thiết kế, thiết kế mức độ cao, mô phỏng, tổng hợp và kiểm tra phần cứng.

                    • b. Hỗ trợ phân cấp thiết kế: Đây là đặc tính thiết yếu của ngôn ngữ phần cứng đa cấp. Thiết kế chứa một mô tả giao diện và một số phần độc lập để mô tả hoạt động. Hoạt động của hệ thống có thể được đặc tả dựa trên chức năng hoặc dựa trên cấu trúc của những hợp phần nhỏ hơn của chúng. Đặc tả cấu trúc các hợp phần có thể thực hiện ở tất cả các cấp thiết kế.

                    • c. Có thư viện hỗ trợ : Ngôn ngữ cung cấp cơ chế để truy cập tới nhiều thư viện khác nhau. Thư viện không chỉ chứa đặc tả giao diện của thiết kế, mà còn chứa một số đặc tả hoạt động của hệ thống. Các đặc tả và các mẫu có thể dựa vào thư viện sau khi được dòch bởi chương trình dòch

                    • d. Có lệnh tuần tự: Khi người thiết kế phân chia hệ thống thành những hợp phần đồng thời hay những phần con, tiếp đó người thiết kế có thể mô tả chi tiết hoạt động bên trong bằng những cấu trúc ngôn ngữ lập trình tuần tự như lệnh case, if-then-else, loop,… các lệnh tuần tự cung cấp phương pháp đơn giản để tạo ra các hợp phần phần cứng dựa trên chức năng của chúng.

                    • e. Thiết kế tương thích chung : Để thiết kế tổng quát, ngôn ngữ cho phép người thiết kế đặt cấu hình mô tả hợp phần có thông số chung trong thiết kế. Mô tả tương thích chung có thể thay đổi kích thước, đặc tính vật lý, đònh thời, đặc tính tải, và môi thường hoạt động của thiết kế .

                    • f. Khai báo kiểu và cách dùng : Ngôn ngữ VHDL cho phép mô tả các kiểu bit, boolean, integer, floating-poin, kiểu liệt kê, kiểu dãy, bản ghi. Ngoài ra còn hổ trợ các kiểu do con người sử dụng đònh nghóa. Ngôn ngữ cũng cho phép đònh nghóa lại các toán tử ngôn ngữ bởi người sử dụng.

                    • g. Sửõ dụng các chương trình con : Cho phép đònh nghóa, sử dụng các hàm, thủ tục, là một đặc điểm của ngôn ngữ VHDL. Chương trình con có thể sử dụng để biến đổi kiểu, đònh nghóa đơn vò luận lý, đònh nghóa lại toán tử mới, và các ngôn ngữ khác trong ngôn ngữ lập trình .

                    • h. Điều khiển đònh thời :Một đặc điểm nữa của ngôn ngữ VHDL là cho phép đặc tả đònh thời ở tất cả các cấp . Nó cho phép người thiết kế đặt giá trò của tín hiệu, thời gian giữ chậm, đònh nghóa tín hiệu đồng bộ, đặt độ rộng xung, các ràng buộc thời gian với nhau…

                    • i. Đặc tả cấu trúc : ngôn ngữ có các cấu trúc để đặc tả phân rã cấu trúc của phần cứng ở tất cả các cấp.

                    • - Có thể sử dụng làm trung gian giữa các công cụ CAD và CEA. Ví dụ, từ một phần mềm vẽ mạch, ta có thể tạo ra một file mô tả VHDL rồi đưa nó vào phần mềm mô phỏng.

                    • - Hỗ trợ thiết kế theo cấp bậc: do đó một hệ thống phức tạp sẽ được phân tích thành từng bộ phận nhỏ hơn. Các thành phần này tới lượt chúng sẽ được phân tích thành những thành phần nhỏ hơn và cứ thế cho đến cấu trúc nhỏ

                    • - Hỗ trợ nhiều phương pháp thiết kế : top_down, bottom_up…

                    • - Hỗ trợ cả các hệ thống đồng bộ và bất đồng bộ

Tài liệu cùng người dùng

Tài liệu liên quan