Đề tài nghiên cứu khoa học: Thiết kế hệ thống điều khiển tín hiệu đèn giao thông sử dụng FPGA
lượt xem 8
download
Mục tiêu nghiên cứu của đề tài "Thiết kế hệ thống điều khiển tín hiệu đèn giao thông sử dụng FPGA" nhằm xây dựng mô hình hệ thống điều khiển đèn giao thông tại giao lộ 4 nhánh trong vòng 24 giờ và giảm thiểu thời gian chờ của người tham gia giao thông, mô hình hệ thống điều khiển đèn giao thông này sử dụng FPGA.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Đề tài nghiên cứu khoa học: Thiết kế hệ thống điều khiển tín hiệu đèn giao thông sử dụng FPGA
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH CÔNG TRÌNH NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN TÍN HIỆU ĐÈN GIAO THÔNG SỬ DỤNG FPGA MÃ SỐ: SV2020-124 SKC 0 0 7 3 3 6 Tp. Hồ Chí Minh, tháng 10/2020
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN TÍN HIỆU ĐÈN GIAO THÔNG SỬ DỤNG FPGA SV2020 - 124 Chủ nhiệm đề tài: Nguyễn Thanh Phong TP. HỒ CHÍ MINH – 10/2020
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN TÍN HIỆU ĐÈN GIAO THÔNG SỬ DỤNG FPGA SV2020 – 124 Thuộc nhóm ngành khoa học: Kỹ thuật máy tính SV thực hiện: Phạm Thanh Phong Nam, Nữ: Nam Dân tộc: Kinh Lớp, khoa: 16119CLC, ĐT CLC Năm thứ: 4 /Số năm đào tạo: 4 Ngành học: Công nghệ kỹ thuật máy tính Người hướng dẫn: TS. Trương Ngọc Sơn TP. HỒ CHÍ MINH – 10/2020
- MỤC LỤC DANH MỤC HÌNH ................................................................................................................ i DANH MỤC BẢNG ............................................................................................................. iii DANH MỤC CÁC TỪ VIẾT TẮT ...................................................................................... iv TỔNG QUAN.................................................................................................... 1 1.1 Đặt vấn đề: ................................................................................................................. 1 1.2 Giải quyết vấn đề: ...................................................................................................... 1 1.3 Mục tiêu: .................................................................................................................... 1 1.4 Đối tượng và phạm vi nghiên cứu: ............................................................................ 2 CƠ SỞ LÝ THUYẾT ........................................................................................ 3 2.1 Tổng quan về FPGA .................................................................................................. 3 2.1.1 FPGA là gì? ........................................................................................................ 3 2.1.2 Lịch sử ra đời FPGA .......................................................................................... 4 2.1.3 Vì sao chọn FPGA.............................................................................................. 4 2.1.4 Cấu trúc FPGA ................................................................................................... 5 2.2 Ngôn ngữ Verilog ...................................................................................................... 8 2.2.1 Giới thiệu ngôn ngữ Verilog .............................................................................. 8 2.2.2 Quy trình thiết kế số ........................................................................................... 9 2.3 Máy trạng thái hữu hạn FSM ................................................................................... 18 2.3.1 Khái niệm ......................................................................................................... 18 2.3.2 Phân loại ........................................................................................................... 19 THIẾT KẾ HỆ THỐNG .................................................................................. 21 3.1 Chức năng và yêu cầu hệ thống ............................................................................... 21 3.2 Thiết kế bộ điều khiển tín hiệu đèn giao thông ....................................................... 21 3
- 3.2.1 Thiết kế đơn vị traffic_light_fsm ..................................................................... 23 3.2.2 Thiết kế đơn vị delay_counter .......................................................................... 26 3.2.3 Thiết kế chức năng giữ trạng thái ..................................................................... 28 KẾT QUẢ NGHIÊN CỨU VÀ ĐÁNH GIÁ .................................................. 29 4.1 Sơ đồ khối đơn vị traffic_light ................................................................................ 29 4.2 Kết quả mô phỏng chức năng .................................................................................. 29 4.2.1 Kiểm tra trường hợp bình thường .................................................................... 30 4.2.2 Kiểm tra trường hợp Reset tích cực ................................................................. 30 4.2.3 Kiểm tra trường hợp Switch tích cực ............................................................... 31 4.3 Kết quả mô phỏng trên Xilinx Spartan 3E Stater Kit .............................................. 31 KẾT LUẬN VÀ KIẾN NGHỊ ......................................................................... 33 5.1 Kết luận ................................................................................................................... 33 5.2 Kiến nghị ................................................................................................................. 33 TÀI LIỆU THAM KHẢO.................................................................................................... 34 PHỤ LỤC ............................................................................................................................. 35 4
- DANH MỤC HÌNH Hình 2.1: Kiến trúc tổng quan FPGA ........................................................................ 6 Hình 2.2: Khối logic FPGA ....................................................................................... 7 Hình 2.3: Kết nối nội FPGA ...................................................................................... 7 Hình 2.4: Quy trình thiết kế số ................................................................................ 11 Hình 2.5: Mô hình quá trình mô phỏng ................................................................... 14 Hình 2.6: Quá trình tổng hợp ................................................................................... 17 Hình 2.7: Sơ đồ máy trạng thái hữu hạn .................................................................. 18 Hình 2.8: Mô hình máy trạng thái Moore ................................................................ 19 Hình 2.9: Mô hình máy trạng thái Mealy ................................................................ 20 Hình 3.1: Sơ đồ khối đơn vị traffic_light................................................................. 22 Hình 3.2: Sơ đồ thiết kế bộ điều khiển tín hiệu đèn giao thông .............................. 23 Hình 3.3: Sơ đồ chân đơn vị traffic_light_fsm ........................................................ 24 Hình 3.4: Sơ đồ trạng thái đơn vị traffic_light_fsm ................................................ 25 Hình 3.5: Sơ đồ chân đơn vị delay_counter............................................................. 26 Hình 3.6: Sơ đồ nguyên lý đơn vị delay_counter .................................................... 27 Hình 3.7: Cổng AND 2 ngõ vào .............................................................................. 28 Hình 4.1: Top module traffic_light .......................................................................... 29 Hình 4.2: Kết quả mô phỏng trường hợp reset và switch không tích cực ............... 30 Hình 4.3: Kết quả mô phỏng trường hợp reset tích cực .......................................... 30 Hình 4.4: Kết quả mô phỏng trường hợp switch tích cực........................................ 31 Hình 4.5: FSM ở trạng thái MG_CR ....................................................................... 31 Hình 4.6: FSM ở trạng thái MY_CR ....................................................................... 31 i
- Hình 4.7: FSM ở trạng thái MR_CR1 ..................................................................... 31 Hình 4.8: FSM ở trạng thái MR_CG ....................................................................... 31 Hình 4.9: FSM ở trạng thái MR_CY ....................................................................... 32 Hình 4.10: FSM ở trạng thái MR_CR2 ................................................................... 32 ii
- DANH MỤC BẢNG Bảng 3.1: Bảng chuyển trạng thái tín hiệu đèn ......................................................... 21 Bảng 3.2: Mô tả chân tín hiệu bộ điều khiển đèn giao thông ................................... 22 Bảng 3.3: Bảng trá trị ngõ ra tương ứng với trạng thái đèn ...................................... 22 Bảng 3.4: Mô tả chân tín hiệu đơn vị traffic_light.................................................... 24 Bảng 3.5: Bảng trạng thái hoạt động đơn vị traffic_light_fsm ................................. 25 Bảng 4.1: Thông số lựa chọn các trường hợp đặc biệt ............................................. 30 iii
- DANH MỤC CÁC TỪ VIẾT TẮT ASIC Application Specific Intergrated Circuit CPLD Complex Programmable Logic Device DUT Design Under Test FPGA Field Progammable Gate Array FSM Finite State Machine FSMD Finite State Machine Diagram Very High Speed Integrated Hardwave VHDL Description Language VLSI Very Large Scale Integration iv
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI 1. Thông tin chung: - Tên đề tài: Thiết kế hệ thống điều khiển đèn giao thông sử dụng FPGA - Chủ nhiệm đề tài: Nguyễn Thanh Phong Mã số SV: SV2020 - 124 - Lớp: 16119CLC Khoa: ĐT CLC - Thành viên đề tài: Stt Họ và tên MSSV Lớp Khoa 1 Đỗ Phương Nam 16119030 16119CLC ĐT CLC 2 Trương Đào Khương Duy 16119007 16119CLC ĐT CLC 3 Dương Văn San 16119041 16119CLC ĐT CLC - Người hướng dẫn: TS. Trương Ngọc Sơn 2. Mục tiêu đề tài: Xây dựng một hệ thống điều khiển đèn giao thông sử dụng FPGA, phân luồng di chuyển các hướng khác nhau những khoảng thời gian phù hợp cho những khung giờ khác nhau trong ngày. 3. Tính mới và sáng tạo: Thiết kế trên FPGA. 4. Kết quả nghiên cứu: Báo cáo về hệ thống điều khiển đèn giao thông sử dụng FPGA. 5. Đóng góp về mặt giáo dục và đào tạo, kinh tế - xã hội, an ninh, quốc phòng và khả năng áp dụng của đề tài: Áp dụng vào trong việc giảng dạy. Áp dụng vào việc thiết kế ASIC. 6. Công bố khoa học của SV từ kết quả nghiên cứu của đề tài (ghi rõ tên tạp chí nếu có) hoặc nhận xét, đánh giá của cơ sở đã áp dụng các kết quả nghiên cứu (nếu có): Ngày tháng năm SV chịu trách nhiệm chính thực hiện đề tài (kí, họ và tên) 5
- Nhận xét của người hướng dẫn về những đóng góp khoa học của SV thực hiện đề tài (phần này do người hướng dẫn ghi): Ngày tháng năm Người hướng dẫn (kí, họ và tên) 6
- LỜI NÓI ĐẦU Đề tài thiết kế và mô phỏng bộ điều khiển tín hiệu đèn giao thông là nền tảng để có thể tiếp cận tới các đề tài dự án có chuyên môn cao hơn. Việc thực hiện đề tài này, giúp hệ thống hóa được các kiến thức chuyên nghành đã học như kỹ thuật số, kiến trúc máy tính, thiết kế FPGA/ASIC và một số môn học có liên quan khác. Đề tài này nhằm trình bày quy trình từ xây dựng thiết kế luận lý đến thiết kế một bộ điều khiển tín hiệu đèn giao thông bằng ngôn ngữ mô tả phần cứng Verilog, có khả năng thực hiện điều khiển tín hiệu đèn tại ngã tư và chức năng giữ nguyên trạng thái đèn. Đề tài này chỉ thiết kế ở mức nền tảng, nhưng bên cạnh vẫn sẽ có những yêu cầu về giảm thiểu tối đa về phần cứng. Thiết kế được tổng hợp và đánh giá trên môi trường FPGA của Xilinx đồng thời mô phỏng kiểm tra kết quả bằng phần mềm Xilinx ISE Design Suite 14.7. Đề tài được tóm gọn trong 5 chương: Chương 1 Giới thiệu Chương 2 Cơ sở lý thuyết Chương 3 Thiết kế hệ thống Chương 4 Kết quả và đánh giá Chương 5 Kết luận và kiến nghị vii
- TỔNG QUAN 1.1 Đặt vấn đề: Tình trạng kẹt xe đặc biệt là ở các thành phố lớn đang ngày một gia tăng do lượng phương tiện tham giao thông ngày càng lớn. Sự hạn chế của hệ thống điều khiển đèn giao thông hiện tại – TLC – sử dụng vi xử lý và vi điều khiển làm ảnh hưởng đến thời gian di chuyển cũng như thời gian chờ của người tham gia giao thông. Ở rất nhiều nơi, TLC được xây dựng dựa vi điều khiển và vi xử lý, những TLC sử dụng vi điều khiển và vi xử lí này có giới hạn do phần cứng của chúng chỉ thực hiện được những chức năng đã được lập trình từ trước, không có tính linh hoạt để phù hợp với thực tế. Những chức năng này là cố định, do đó khoảng thời gian chuyển đổi giữa các tín hiệu xanh, đỏ, vàng của TLC cũng là cố định. Những lí do đó làm giảm độ hiệu quả của việc tham gia giao thông và ô nhiễm môi trường. Từ những vấn đề đó nhóm thực hiện đề tài tiến hàng tìm hiểu, nghiên cứu và xây dựng “Mô hình hệ thống điều khiển đèn giao thông sử dụng FPGA” với mong muốn giúp người tham gia giao thông di chuyển hiệu quả, giảm thiểu thời gian chờ. 1.2 Giải quyết vấn đề: Để giải quyết những vấn đề này cần xây dựng hệ thống có các chức năng: Có thể lập trình lại được. Có thể thay đổi chức năng để phù hợp với luồng giao thông thời gian thực. 1.3 Mục tiêu: Mô hình đáp ứng được yêu cầu sau: xây dựng mô hình hệ thống điều khiển đèn giao thông tại giao lộ 4 nhánh trong vòng 24 giờ và giảm thiểu thời gian chờ của người tham gia giao thông, mô hình hệ thống điều khiển đèn giao thông này sử dụng FPGA. 1
- 1.4 Đối tượng và phạm vi nghiên cứu: Việc sử dụng VHDL được ưu tiên đặc biệt cho thiết kế FPGA vì VHDL có thể được sử dụng để mô tả và mô phỏng hoạt động của các mạch số từ ít cổng đến phức tạp. Trong dự án này, TLC sẽ được thiết kế dựa trên VHDL sử dụng ISE Design Suite và được thực hiện trong phần cứng bằng cách sử dụng kit Xilinx Spartan 3E. 2
- CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về FPGA 2.1.1 FPGA là gì? Field-programmable gate array (FPGA) là một loại mạch tích hợp cỡ lớn dùng cấu trúc mảng phần tử logic mà người dùng có thể lập trình được. Chữ field ở đây muốn chỉ đến khả năng tái lập trình "bên ngoài" của người sử dụng, không phụ thuộc vào dây chuyền sản xuất phức tạp của nhà máy bán dẫn. Vi mạch FPGA được cấu thành từ các bộ phận: - 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 - Khối vào/ra (IO Pads) - Phần tử thiết kế sẵn khác như DSP slice, RAM, ROM, nhân vi xử lý... FPGA cũng được xem như một loại vi mạch bán dẫn chuyên dụng ASIC, nhưng nếu so sánh FPGA với những ASIC đặc chế hoàn toàn hay ASIC thiết kế trên thư viện logic thì FPGA không đạt đựợc mức độ tối ưu như những loại này, và hạn chế trong khả năng thực hiện những tác vụ đặc biệt phức tạp, tuy vậy FPGA ưu việt hơn ở chỗ có thể tái cấu trúc lại khi đang sử dụng, công đoạn thiết kế đơn giản do vậy chi phí giảm, rút ngắn thời gian đưa sản phẩm vào sử dụng. Còn nếu so sánh với các dạng vi mạch bán dẫn lập trình được dùng cấu trúc mảng phần tử logic như PLA, PAL, CPLD thì FPGA ưu việt hơn các điểm: tác vụ tái lập trình của FPGA thực hiện đơn giản hơn; khả năng lập trình linh động hơn; và khác biệt quan trọng nhất là kiến trúc của FPGA cho phép nó có khả năng chứa khối lượng lớn cổng logic (logic gate), so với các vi mạch bán dẫn lập trình được có trước nó. Thiết kế hay lập trình cho FPGA được thực hiện chủ yếu bằng các ngôn ngữ mô tả phần cứng HDL như VHDL, Verilog, AHDL, các hãng sản xuất FPGA lớn như Xilinx, Altera thường cung cấp các gói phần mềm và thiết bị phụ trợ cho quá trình thiết kế, cũng có một số các hãng thứ ba cung cấp các gói phần mềm kiểu này như Synopsys, Synplify... 3
- Các gói phần mềm này có khả năng thực hiện tất cả các bước của toàn bộ quy trình thiết kế IC chuẩn với đầu vào là mã thiết kế trên HDL (còn gọi là mã RTL). 2.1.2 Lịch sử ra đời FPGA FPGA được thiết kế đầu tiên bởi Ross Freeman, người sáng lập công ty Xilinx vào năm 1984, kiến trúc mới của FPGA cho phép tích hợp số lượng tương đối lớn các phần tử bán dẫn vào 1 vi mạch so với kiến trúc trước đó là CPLD. FPGA có khả năng chứa tới từ 100.000 đến hàng vài tỷ cổng logic,[1] trong khi CPLD chỉ chứa từ 10.000 đến 100.000 cổng logic; con số này đối với PAL, PLA còn thấp hơn nữa chỉ đạt vài nghìn đến 10.000. CPLD được cấu trúc từ số lượng nhất định các khối SPLD (Simple programmable devices, thuật ngữ chung chỉ PAL, PLA). SPLD thường là một mảng logic AND/OR lập trình được có kích thước xác định và chứa một số lượng hạn chế các phần tử nhớ đồng bộ (clocked register). Cấu trúc này hạn chế khả năng thực hiện những hàm phức tạp và thông thường hiệu suất làm việc của vi mạch phụ thuộc vào cấu trúc cụ thể của vi mạch hơn là vào yêu cầu bài toán. Kiến trúc của FPGA là kiến trúc mảng các khối logic, khối logic, nhỏ hơn nhiều nếu đem so sánh với một khối SPLD, ưu điểm này giúp FPGA có thể chứa nhiều hơn các phần tử logic và phát huy tối đa khả năng lập trình của các phần tử logic và hệ thống mạch kết nối, để đạt được mục đích này thì kiến trúc của FPGA phức tạp hơn nhiều so với CPLD. Một điểm khác biệt với CPLD là trong những FPGA hiện đại được tích hợp nhiều những bộ logic số học đã sơ bộ tối ưu hóa, hỗ trợ RAM, ROM, tốc độ cao, hay các bộ nhân cộng (multiplication and accumulation, MAC), thuật ngữ tiếng Anh là DSP slice dùng cho những ứng dụng xử lý tín hiệu số DSP. Ngoài khả năng tái cấu trúc vi mạch toàn cục, một số FPGA hiện đại còn hỗ trợ tái cấu trúc cục bộ, tức là khả năng tái cấu trúc một bộ phận riêng lẻ trong khi vẫn đảm bảo hoạt động bình thường cho các bộ phận khác. 2.1.3 Vì sao chọn FPGA 4
- Vì FPGA có kiến trúc mảng phần tử logic nên có thể thực thi song song. So với vi điều khiển hoặc CPU phải thực thi mã lệnh theo dạng tuần tự. Như vậy với FPGA, người phát triển có thể tăng hiệu suất/năng suất xử lý của hệ thống, hoặc những ứng dụng đòi hỏi phải xử lý tốc độ cao hoặc dùng trong các hệ thống làm việc theo thời gian thực. Vì có thể cấu hình, lập trình lại được, nên FPGA dễ dàng mở rộng các ngoại vi cũng như giao tiếp với nhiều thiết bị hơn mà các MCU hoặc ASIC lại hạn chế về điểm này. Nhìn chung ASIC/ASSP có hiệu suất cao hơn nếu xét về mặt tiêu thụ công suất và số lượng cổng. Nhưng nếu chỉ cần thực thi một chức năng nhỏ nào đó, một chip ASIC/ASSP có thể đòi hỏi công suất tiêu thụ lớn hơn và nhiều cổng hơn thực tế yêu cầu. Với FPGA, firmware có thể xác định được “kích cỡ” của ứng dụng, từ đó giảm số cổng và công suất cần tiêu thụ. Nếu xét về giá thành, FPGA không thể nào so sánh được với ASIC hay SoC, nhưng bù lại, với khả năng tái cấu hình kiến trúc, FPGA đóng vài trò vô cùng to lớn trong việc giảm giá thành và thời gian chế tạo ASIC. Để rõ hơn, người phát triển cần phải biết quy trình thiết kế của hai công nghệ này. FPGA và ASIC đều phải trải qua hai giai đoạn: Front End (ý tưởng, thiết kế ở mức logic sử dụng các ngôn ngữ mô tả phần cứng, kiểm tra mô phỏng bằng phần mềm, …) và Back End (kiểm tra timing đảm bảo thiết kế sẽ hoạt động ở tần số yêu cầu, layout chip, …). Ở khâu backend này, với FPGA, các giai đoạn sẽ được làm tự động bằng phần mềm của nhà sản xuất FPGA và tạo ra 1 file bitstream để nạp xuống FPGA và chạy thử nghiệm. Còn với ASIC, thì back end cần tốn nhân lực và thời gian lâu hơn. Sau đó, toàn bộ thiết kế đó được gửi tới nhà máy sản xuất chip (ví dụ như Intel, TSMC, …) để làm ra chip mẫu với giá thành vài triệu đô la. Tiếp đến là quá trình test chip trong môi trường thực, nếu thất bại thì phải thực hiện lại từ đầu như qui trình trên và vài triệu đô trước đó xem như vứt sọt rác. Nhưng với FPGA, không những giúp rút ngắn thời gian mà còn giảm tối đa chi phí nghiên cứu, thiết kế có thể thử nghiệm trực tiếp trên FPGA gần với môi trường ASIC thực nhất. Khả năng tái cấu hình cho phép người phát triển sửa đi sửa lại thiết kế cho đến khi đạt yêu cầu mà không tốn một xu nào cho nhà sản xuất chip. 2.1.4 Cấu trúc FPGA 5
- Kiến trúc cơ bản của FPGA gồm 3 thành phần chính sau: Khối I/O (hay gọi là Pad hoặc các pin FPGA), Khối kết nối (Interconnection/Switch Matrix), các Khối logic cấu hình (CLB – Configurable Logic Blocks). Các khối CLB được tổ chức sắp xếp theo mảng theo 2 hướng dọc và ngang như hình dưới đây. Hình 2.1: Kiến trúc tổng quan FPGA Chức năng của mỗi thành phần như sau: Khối CLB: thực thi các chức năng logic, cung cấp các tính toán và phần tử nhớ cơ bản được sử dụng trong hệ thống số. CLBs là phần tử cơ bản cấu thành FPGA, là nguồn tài nguyên logic chính tạo nên các mạch logic đồng bộ lẫn không đồng bộ. Một CLB cơ bản gồm một mạch tổ hợp có thể lập trình (còn gọi là LUT), một Flip-Flop hoặc một chốt (latch). 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 (số đầu vào này sẽ tùy thuộc vào từng dòng chip của mỗi hãng và sẽ được thảo luận chi tiết trong bài viết khác), kết quả của hàm này tùy vào mục đích mà gửi ra ngoài khối logic trực tiếp hay thông qua phần tử nhớ flip-flop. Ngoài khối logic cơ bản đó, nhiều Chip FPGA hiện nay gồm một hỗn hợp các khối khác nhau, một số trong đó chỉ được dùng cho các chức năng cụ thể, chẳng hạn như các khối bộ nhớ chuyên dụng, các bộ nhân (multipliers) 6
- hoặc các bộ ghép kênh (multiplexers). Tất nhiên, cấu hình bộ nhớ được sử dụng trên tất cả các khối logic để điều khiển các chức năng cụ thể của mỗi phần tử bên trong khối đó. Hình 2.2: Khối logic FPGA Khối kết nối: dùng để liên kết các khối logic và I/O lại với nhau để tạo thành một thiết kế hoàn chỉnh. 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à đứng, tùy theo từng loại FPGA mà các đường kết nối được chia thành các nhóm khác nhau. Các đường kết nối được nối với nhau thông qua các khối chuyển mạch lập trình được (programmable switch), trong một khối chuyển mạch chứa một số lượng nút chuyển lập trình được đảm bảo cho các dạng liên kết phức tạp khác nhau. Hình 2.3: Kết nối nội FPGA Khối I/O: cung cấp giao tiếp giữa các khối logic và kiến trúc định tuyến đến các thành phần bên ngoài. Một trong những vấn đề quan trọng nhất trong thiết kế kiến trúc I/O là việc 7
- lựa chọn các tiêu chuẩn điện áp cung cấp và điện áp tham chiếu sẽ được hỗ trợ. Số lượng Pin (I/O) của FPGA tương đối lớn, thường được chia ra làm 2 loại: User Pin(chân người dùng), Dedicated Pin (chân chuyên dụng). -User Pin: người dùng có thể lập trình như đầu vào, đầu ra hoặc cả đầu vào – ra. Mỗi pin được kết nối với một “IO Cell” bên trong FPGA, được cấp bởi các chân VCCIO (IO power pin). -Dedicated Pin: được mã hóa cứng với một chức năng cụ thể. +Power Pin +Configuration Pin: các pin để cấu hình FPGA +Dedicated input, hay Clock Pin: điều khiển mạng lưới clock bên trong FPGA. +Voltage IO: cấp nguồn cho các cổng logic và flip-flops bên trong FPGA. Theo thời gian, các kiến trúc FPGA cơ bản đã được phát triển hơn nữa thông qua việc bổ sung các khối chức năng đặc biệt có thể lập trình, như bộ nhớ trong (Block RAMs), logic số học (ALU), bộ nhân, DSP-48 và thậm chí là bộ vi xử lý nhúng được thêm vào do nhu cầu của các nguồn tài nguyên cho một ứng dụng. Kết quả là nhiều FPGA ngày nay có nhiều nguồn tài nguyên hơn so với các FPGA trước đó.[1] 2.2 Ngôn ngữ Verilog 2.2.1 Giới thiệu ngôn ngữ Verilog Ngôn ngữ Verilog HDL đáp ứng tất cả những yêu cầu cho việc thiết kế và tổng hợp những hệ thống số. Ngôn ngữ này hỗ trợ việc mô tả cấu trúc phân cấp của phần cứng từ mức độ hệ thống đến mức cổng hoặc đến cả mức công tắc chuyển mạch. Verilog cũng hỗ trợ mạnh tất cả các mức độ mô tả việc định thời và phát hiện lỗi. Việc định thời và đồng bộ mà được đòi hỏi bởi phần cứng sẽ được chú trọng một cách đặc biệt. Trong Verilog, một linh kiện phần cứng được mô tả bởi một cấu trúc ngôn ngữ “khai báo module”. Sự mô tả một module sẽ mô tả danh sách những ngõ vào và ngõ ra của linh kiện cũng như những thanh ghi và hệ thống bus bên trong linh kiện. Bên trong một module, 8
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Quy định hình thức trình bày đề cương chi tiết đề tài nghiên cứu khoa học và báo cáo kết quả nghiên cứu khoa học
10 p | 5316 | 985
-
Đề tài nghiên cứu khoa học: Động cơ học tập của sinh viên năm thứ nhất trường Đại học Khoa học Xã hội và Nhân văn
60 p | 2194 | 545
-
Đề tài nghiên cứu khoa học: Nghiên cứu xử lý nước thải sinh hoạt bằng bãi lọc ngầm trồng cây dòng chảy ngang
63 p | 1814 | 382
-
Đề tài nghiên cứu khoa học: Tính hiệu quả của chính sách tiền tệ Việt Nam( Giai đoạn 2000 – 2013)
111 p | 924 | 353
-
Đề tài nghiên cứu khoa học: Tìm hiểu về lễ hội du lịch, nghiên cứu điển hình lễ hội Hoa phượng đỏ Hải Phòng
102 p | 1944 | 221
-
Đề tài nghiên cứu khoa học: Hiệu quả cho vay tiêu dùng cá nhân tại Ngân hàng TMCP Á Châu (ABC) – chi nhánh Sài Gòn – Thực trạng và giải pháp
117 p | 674 | 182
-
Đề tài nghiên cứu khoa học: Phát triển sự đo lường tài sản thương hiệu trong thị trường dịch vụ
81 p | 704 | 148
-
Thuyết minh đề tài Nghiên cứu Khoa học và Phát triển Công nghệ
30 p | 519 | 74
-
Báo cáo tổng kết đề tài nghiên cứu khoa học: Nghiên cứu xây dựng sản phẩm du lịch Đà Nẵng từ tài nguyên văn hóa
27 p | 395 | 60
-
Báo cáo Đề tài nghiên cứu khoa học: Nghiên cứu phân tích và đánh giá các dữ liệu môi trường sử dụng phương pháp phân tích thống kê
22 p | 370 | 51
-
Đề tài nghiên cứu khoa học Bài toán tối ưu có tham số và ứng dụng
24 p | 331 | 44
-
Đề tài nghiên cứu khoa học: Thực trạng và giải pháp về việc giết mổ gia súc gia cầm thủ công tự phát trên địa bàn thành phố Thủ Dầu một hiện nay
22 p | 236 | 38
-
Đề tài nghiên cứu khoa học: Bài giảng điện tử môn “Lý thuyết galois” theo hướng tích cực hóa nhận thức người học
53 p | 295 | 36
-
Đề tài nghiên cứu khoa học: Bài giảng điện tử môn "Lý thuyết Galoa" theo hướng tích cực hóa nhận thức người học
115 p | 158 | 29
-
Đề tài nghiên cứu khoa học: Một số giải pháp phát triển hoạt động thanh toán quốc tế tại ngân hàng Nông nghiệp và phát triển nông thôn chi nhánh Biên Hòa
100 p | 276 | 27
-
Đề tài khoa học: Nghiên cứu ứng dụng tin học để quản lý kết quả các đề tài nghiên cứu khoa học
14 p | 167 | 11
-
Báo cáo tổng kết đề tài nghiên cứu khoa học cấp nhà nước: Dự báo hiện tượng xói lở - bồi tụ bờ biển, cửa sông và các giải pháp phòng tránh
0 p | 134 | 7
-
Đề tài nghiên cứu khoa học: Tìm hiểu các hệ chi đo trong phòng thí nghiệm xử lý hạt nhân
90 p | 87 | 6
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn