1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(Đồ án HCMUTE) thiết kế và thi công bộ truyền nhận theo giao thức SPI wishbone

90 1 0

Đ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

Định dạng
Số trang 90
Dung lượng 6,91 MB

Nội dung

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 ĐỒ ÁN TỐ NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG THIẾT KẾ VÀ THI CÔNG BỘ TRUYỀN NHẬN THEO GIAO THỨC SPI-WISHBONE GVHD: ĐỖ DUY TÂN SVTH: VÕ THIỆN TÙNG NGUYỄN LÊ QUÝ PHONG SKL009348 Tp Hồ Chí Minh, tháng 03/2022 i TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG BỘ TRUYỀN NHẬN THEO GIAO THỨC SPI-WISHBONE NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG SVTH: VÕ THIỆN TÙNG MSSV: 18161178 NGUYỄN LÊ QUÝ PHONG MSSV: 18161128 GVHD: TS ĐỖ DUY TÂN TP HỒ CHÍ MINH - 03/2022 i TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG BỘ TRUYỀN NHẬN THEO GIAO THỨC SPI-WISHBONE NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG SVTH: VÕ THIỆN TÙNG MSSV: 18161178 NGUYỄN LÊ QUÝ PHONG MSSV: 18161128 GVHD: TS ĐỖ DUY TÂN TP HỒ CHÍ MINH - 03/2022 i i LỜI CẢM ƠN Lời nói đầu tiên, nhóm sinh viên thực đề tài xin gửi lời cảm ơn chân thành lòng tri ân sâu sắc đến Thầy TS Đỗ Duy Tân Thầy dành khoảng thời gian quý báu trực tiếp hướng dẫn, bảo tận tình giúp đỡ, tạo điều kiện để nhóm hồn thành tốt đồ án tốt nghiệp Bên cạnh đó, nhóm xin chân thành cảm ơn đến quý Thầy Cô Trường Đại Học Sư Phạm Kỹ thuật Thành phố Hồ Chí Minh nói chung quý Thầy Cô Khoa Điện – Điện Tử, Khoa Đào Tạo Chất Lượng Cao nói riêng với tri thức tâm huyết truyền đạt kiến thức quý báu, tạo dựng móng cho chúng em có sở kiến thức cần thiết suốt thời gian học tập trường, nhờ nhóm hồn thành tốt đồ án tốt nghiệp Và đặc biệt nhóm sinh viên thực đề tài xin chân thành gửi lời cảm ơn đến bạn sinh viên ngành Công Nghệ Kỹ Thuật Điện Tử - Viễn thông chia sẻ, trao đổi kiến thức, kinh nghiệm q báu để góp phần giúp nhóm hồn thành đề tài tốt Cuối cùng, nhóm xin phép cảm ơn đến bậc phụ huynh bên cạnh hỗ trợ, động viên nhóm mặt vật chất lẫn tinh thần suốt thời gian nhóm thực đề tài Một lần nữa, nhóm sinh viên xin chân thành cảm ơn! Trân trọng Nhóm thực Võ Thiện Tùng - Nguyễn Lê Quý Phong i i LỜI CAM ĐOAN Nhóm sinh viên thực đồ án tốt nghiệp “Thiết kế thi công truyền nhận theo giao thức SPI-Wishbone” xin cam đoan đồ án nhóm tự thực hướng dẫn Thầy TS Đỗ Duy Tân Nhóm cam đoan không chép nội dung, kết từ đề tài khác Bên cạnh đó, nhóm tìm hiểu từ nhiều nguồn tài liệu khác để hoàn thành đồ án Các nội dung tham khảo trình thực trích dẫn đầy đủ Nhóm thực Võ Thiện Tùng - Nguyễn Lê Quý Phong ii i TĨM TẮT Cơng nghệ kỹ thuật ngày phát triển, từ đời nhiều chuẩn truyền liệu có tốc độ cao, đại, phục vụ cho nhiều mục đích ứng dụng người Tuy nhiên, thiết bị hay lĩnh vực cần đến chuẩn truyền liệu tốc độ cao phức tạp Vì thế, phương thức giao tiếp cũ tin cậy sử dụng rộng rãi tính đơn giản thiết kế, tiết kiệm tài nguyên tốc độ truyền nhận liệu đáp ứng đủ yêu cầu đề Các chuẩn giao tiếp tiêu biểu kể đến SPI, I2C, UART…Ngoài ra, hệ thống board mạch chức năng, chuẩn bus kỹ thuật chung sử dụng cho vi xử lý để liên lạc truyền liệu thành phần khác hệ thống module ngoại vi sử dụng chuẩn giao tiếp khác Chính vậy, module số đóng vai trò cầu nối nhận điều khiển, liệu vi xử lý, phía cịn lại giao tiếp với module ngoại vi thông qua chuẩn truyền thông khác cần thiết Serial Peripheral Interface – viết tắt SPI, chuẩn truyền thông nối tiếp đồng dùng để kết nối truyền liệu thiết bị điện tử, phát triển tập đoàn Motorola Ưu điểm chuẩn SPI nằm tốc độ truyền liệu cao, đồng việc giao tiếp cách kết nối đơn giản, tiết kiệm tài nguyên Wishbone chuẩn bus thông dụng dự án mã nguồn mở Silicore Corporation Dựa vào đặc điểm kỹ thuật SPI Wishbone, đề tài trình bày chi tiết thiết kế truyền nhận liệu sử dụng giao thức SPI, tích hợp bus Wishbone để điều khiển, cấu hình module vi xử lý Thiết kế đề hoạt động chế độ Master Slave, thay đổi tốc độ truyền liệu Để kiểm tra tính khả thi thiết kế, nhóm thực kiểm tra đánh giá hoạt động truyền nhận thông qua môi trường mô ứng dụng thiết kế lên board FPGA sử dụng chip Spartan Xilinx, truy xuất tổng hợp tài nguyên sử dụng, tần số hoạt động tối đa công suất tiêu thụ thiết kế Do hạn chế mặt thời gian kiến thức nên việc nghiên cứu phát triển đề tài tránh khỏi thiếu sót, kính mong nhận góp ý từ quý Thầy Cô bạn sinh viên iii i MỤC LỤC LỜI CẢM ƠN i LỜI CAM ĐOAN .ii TÓM TẮT iii MỤC LỤC iv DANH MỤC HÌNH ẢNH vii DANH MỤC BẢNG x CÁC TỪ VIẾT TẮT xi CHƯƠNG 1: TỔNG QUAN 1.1 Lý chọn đề tài 1.2 Mục tiêu nghiên cứu 1.3 Đối tượng phạm vi nghiên cứu 1.4 Phương pháp nghiên cứu 1.5 Bố cục đề tài CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu FPGA 2.2 Chuẩn truyền thông SPI 2.2.1 Giao diện SPI 2.2.2 Khung truyền SPI 2.2.3 Hoạt động SPI 10 2.2.4 Sơ đồ kết nối giao thức SPI 12 2.3 Wishbone bus 14 2.3.1 Giới thiệu 14 2.3.2 Cấu trúc kết nối Wishbone bus 15 2.3.3 Các loại kết nối Wishbone 16 2.4 ALINX AX309 – FPGA Xilinx Spartan 18 CHƯƠNG 3: THIẾT KẾ HỆ THỐNG 20 iv i 3.1 Sơ đồ khối tổng quát 20 3.2 Thiết kế chi tiết 24 3.2.1 Khối chia xung Clock Divider 26 3.2.2 Khối truyền liệu TX 27 3.2.2.1 Khối truyền liệu TX chế độ Master 27 3.2.2.2 Khối truyền liệu TX chế độ Slave 28 3.2.3 Khối nhận liệu RX 28 3.2.3.1 Khối nhận liệu RX chế độ Master 28 3.2.3.2 Khối nhận liệu RX chế độ Slave 29 3.2.4 Thanh ghi Control 31 3.2.5 Thanh ghi Status 32 3.2.6 Tín hiệu báo ngắt 35 3.2.7 Tín hiệu phản hồi ACK 36 3.3 Sơ đồ trạng thái máy hữu hạn Master SPI 37 CHƯƠNG 4: KẾT QUẢ THỰC HIỆN 39 4.1 Kiểm tra mô 39 4.1.1 Mơ hình mạch kiểm tra 39 4.1.2 Test case 1: Master truyền – Slave nhận 40 4.1.2.1 Mô hoạt động tạo xung khối Clock Divider 41 4.1.2.2 Mơ q trình cài đặt liệu vào ghi Control 42 4.1.2.3 Mô tín hiệu chọn thiết bị Slave để giao tiếp với Master 44 4.1.2.4 Mô hoạt động truyền liệu từ Master đến Slave 45 4.1.3 Test case 2: Master nhận – Slave truyền 48 4.1.3.1 4.2 Mô hoạt động truyền liệu từ Slave đến Master 49 Kiểm tra FPGA 52 4.2.1 Tài nguyên sử dụng 52 4.2.2 Test case 3: Master truyền – Slave nhận 55 v i 4.2.2.1 Mơ hình kiểm tra 55 4.2.2.2 Kết tổng hợp Xilinx ISE Design Suite 14.7 57 4.2.2.3 Kết kit FPGA 60 4.2.3 4.3 Test case 4: Master nhận – Slave truyền 62 4.2.3.1 Mơ hình kiểm tra 62 4.2.3.2 Kết tổng hợp Xilinx ISE Design Suite 14.7 64 4.2.3.3 Kết kit FPGA 66 Đánh giá tổng kết 68 CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 70 5.1 Kết luận 70 5.2 Hướng phát triển 70 TÀI LIỆU THAM KHẢO 71 PHỤ LỤC 73 vi i 4.2.2.3 Kết kit FPGA Ban đầu, vừa cấp nguồn, MASTER SPI CPU cấu hình để chuẩn bị cho trình truyền, bước tóm tắt sơ lược sau: - Cấu hình ghi Control Master Slave có địa 8’h0c Cấu hình ghi SS_MASK có địa 8’h01 để chọn Slave giao tiếp Truyền liệu đến Slave việc đưa liệu vào ghi TXDATA 8’h04 Hình 4.17 mơ tả dạng sóng cho q trình Master truyền liệu đến Slave Dữ liệu chọn để truyền quan sát lúc 8’h99 Hình 4.17: Dạng sóng mơ tả Master truyền liệu 8’h99 đến Slave (test case 3) Với liệu 8’h99, nhấn nút BTN_N tích cực mức thấp, liệu Master gửi đến Slave đưa hiển thị module led đoạn Quan sát dạng sóng hình 4.17, liệu CPU nhận từ Slave SPI đưa đến module hiển thị, đồng thời hình 4.18 kết thu kit FPGA, liệu thực truyền trùng khớp với 60 i Hình 4.18: Kết hiển thị 8'h99 kit FPGA (test case 3) Kết đạt thành công hiển thị kit FPGA tương tự Master truyền byte liệu 8’hf4 đến Slave Mơ tả hình 4.19 bên Hình 4.19: Kết hiển thị 8’hf4 kit FPGA (test case 3) 61 i Như vậy, việc truyền byte liệu mà nhóm thực kiểm tra dạng sóng đồng thời đối chiếu với kết kit FPGA trùng khớp với Từ kết luận hoạt động truyền liệu từ Master đến Slave thiết kế đề thực xác thiết bị thực tế 4.2.3 Test case 4: Master nhận – Slave truyền 4.2.3.1 Mơ hình kiểm tra Nhóm thực test case thứ với mơ hình Master-1 Slave, Master đóng vai trị nhận liệu từ Slave Tại hình 4.20, bên phía Slave, SLAVE SPI cấu hình điều khiển việc truyền từ CPU TEST MODULE SLAVE, Slave Master kết nối với thông qua chuẩn giao tiếp SPI Bên phía Master, khối MASTER SPI nhận liệu từ Slave, CPU TEST MODULE MASTER điều khiển đưa liệu hiển thị lên module led đoạn Dữ liệu giải mã khối SEG_DECODER Nút BTN_N mơ hình đóng vai trị tín hiệu cho phép Master nhận liệu Hình 4.20: Mơ hình kết nối kiểm tra tổng qt (test case 4) 62 i Hình 4.21: Sơ đồ trạng thái máy hữu hạn khối CPU Test Module Slave Hình 4.22: Sơ đồ trạng thái máy hữu hạn khối CPU Test Module Master Hai hình 4.21 4.22 trình bày sơ đồ trạng thái máy hữu hạn hai khối CPU nằm Master Slave Bắt đầu Slave, hình 4.21, Slave SPI điều khiển cấu hình ghi Control từ CPU, sau Slave truyền liệu đến Master Cùng lúc đó, bên phía Master, hình 4.22, IDLE, Master SPI qua bước cấu hình cho ghi Control chọn Slave Đến trạng thái TRANSMIT, để Master nhận liệu từ Slave, lúc Master cần gửi byte liệu Hồn thành xong trạng thái này, Master đợi có tín hiệu nút nhấn BTN_N tích cực mức thấp để chuyển sang trạng thái RECEIVE nhận liệu từ Slave 63 i 4.2.3.2 Kết tổng hợp Xilinx ISE Design Suite 14.7 Sau thực tổng hợp phần mềm Xilinx ISE Design Suite 14.7, nhóm sinh viên thu kết mạch kiểm tra tổng quát, mạch khối MASTER mạch khối SLAVE test case hình 4.23, 4.24 4.25 Tại hình 4.23, mạch kiểm tra tổng quát thu giống với thiết kế mô hình kiểm tra mà nhóm đưa ban đầu cho test case hình 4.20 bên Bên mạch kiểm tra tổng quát gồm có khối master khối slave đại diện cho hai khối MASTER SLAVE mơ hình kiểm tra ban đầu Khác với test case 3, khối giải mã hiển thị lên led đoạn kết nối đến master để hiển thị liệu mà master nhận từ slave Hình 4.23: Mạch kiểm tra tổng quát (test case 4) Mạch thu sau tổng hợp khối MASTER SLAVE hình 4.24 4.25 Bên khối gồm có CPU (CPU Test Module) kết nối đến Master SPI Slave SPI để thực cấu hình điều khiển truyền nhận 64 i Hình 4.24: Mạch khối MASTER (test case 4) Hình 4.25: Mạch khối SLAVE (test case 4) 65 i 4.2.3.3 Kết kit FPGA Tại test case 4, bước cấu hình thực dựa bảng 4.2 sơ đồ trạng thái máy hữu hạn CPU, nhóm sinh viên thu dạng sóng hình 4.26 bên Chọn liệu Slave gửi đến Master 8’h78 Hình 4.26: Dạng sóng mơ tả q trình cấu hình truyền liệu (test case 2) Hình 4.27 mơ tả dạng sóng nút nhấn bên phía CPU Test Module Master kích hoạt, lúc Master nhận liệu 8’h78 từ Slave gửi đến CPU gửi liệu đến khối hiển thị led đoạn kit Kết hiển thị thu kit FPGA hình 4.28 khớp với liệu dạng sóng hình 4.27 Hình 4.27: Dạng sóng mơ tả nút nhấn kích hoạt Master nhận liệu (test case 4) 66 i Hình 4.28: Kết hiển thị 8’h78 kit FPGA (test case 4) Nhóm sinh viên tiếp tục thực việc truyền byte liệu 8’h1a, nhận thành công kết hiển thị kit FGPA hình 4.29 Hình 4.29: Kết hiển thị 8’h1a kit FPGA (test case 4) 67 i Kết trùng khớp, thiết kế đề thực chức hoạt động theo trình Slave truyền Master nhận dạng sóng mơ kết kit FPGA Do đó, module SPI-Wishbone hoạt động xác sử dụng thiết bị thực tế 4.3 Đánh giá tổng kết Thơng qua q trình kiểm tra hoạt động thiết kế phần mềm mô kiểm tra kit FPGA thực tế, với cấu hình tốc độ truyền 12.5 Mbps, đồng thời đối chiếu với sở lý thuyết, nhóm thực rút kết đánh giá trình bày bảng 4.6 Bảng 4.6: Đánh giá kết Đánh giá Test case - Cấu hình thành cơng ghi chức Master Slave 1, - Master kết nối thành công đến Slave Ngắt kết nối Slave Master kết nối thành công đến Slave - Master nhận thành công liệu gửi thành công đến Slave - Master nhận thành công liệu từ Wishbone gửi thành công đến Slave - Thiết kế hoạt động xác cấu hình Master truyền – Slave nhận với mơ hình Master Slave - Cấu hình thành cơng ghi chức Master Slave 1, - Master kết nối thành công đến Slave Ngắt kết nối Slave Master kết nối thành công đến Slave - Slave gửi thành công liệu đến Master - Slave gửi thành công liệu đến Master - Thiết kế hoạt động xác cấu hình Master nhận – Slave truyền với mơ hình Master Slave - CPU cài đặt cấu hình thành cơng Master, Slave - CPU truyền liệu thành công đến Master gửi thành công đến Slave Mô Kit FPGA 68 i - Dữ liệu hiển thị kit FPGA - Kết dạng sóng kết kit FPGA trùng khớp với - Thiết kế hoạt động xác kit FPGA cấu hình Master truyền – Slave nhận với mơ hình Master Slave - CPU cài đặt cấu hình thành công Master, Slave - CPU truyền liệu thành công đến Slave gửi thành công đến Master - Dữ liệu hiển thị kit FPGA - Kết dạng sóng kết kit FPGA trùng khớp với - Thiết kế hoạt động xác kit FPGA cấu hình Master nhận – Slave truyền với mơ hình Master Slave 69 i CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết luận Nhóm thực đồ án tốt nghiệp với đề tài “Thiết kế thi công truyền nhận theo giao thức SPI-Wishbone” xây dựng module truyền nhận liệu sử dụng giao thức SPI, ứng dụng chuẩn Wishbone vào module để điều khiển q trình truyền nhận Thơng qua kết đạt phần mềm mô kit FPGA, module thực thi tốt yêu cầu đề ra, với sở lý thuyết, cụ thể sau: - Thiết kế hoàn thành việc truyền nhận chức với chuẩn giao tiếp SPI Điều khiển, cấu hình, truyền liệu cho thiết kế thực thông qua chuẩn bus Wishbone Thiết kế hoạt động chế độ Master Slave, hỗ trợ nhiều tốc độ truyền Thiết kế giao tiếp với nhiều Slave môi trường mô Ứng dụng thiết kế lên kit FPGA Truy suất tổng hợp thành công tài nguyên sử dụng, tần số hoạt động tối đa công suất tiêu thụ ứng với tần số Bên cạnh đó, đề tài cịn tồn nhiều khuyết điểm sau: 5.2 Việc đánh giá hoạt động thiết kế thông qua test case truyền nhận đơn giản Chưa xác thực tốc độ truyền nhận với thực tế Việc đánh giá kit FPGA dừng lại việc hiển thị liệu nhận được, chưa thực giao tiếp thành phần ngoại vi sử dụng SPI thực tế Hướng phát triển Đề tài “Thiết kế thi công truyền nhận theo giao thức SPI-Wishbone” với mục tiêu khắc phục khuyết điểm tồn tại, đồng thời phát triển thêm nhiều test case đa dạng để đảm bảo hoạt động thiết kế với yêu cầu kỹ thuật Ngoài cần đánh giá cải thiện thiết kế thông qua môi trường mô chung – UVM (Universal Verification Methodology), từ kỹ sư tái sử dụng module với nhiều mục đích khác Thiết kế mở rộng số lượng bit SPI_DAT_I từ bit lên 16 bit giúp tăng băng thông truyền nhận liệu 70 i TÀI LIỆU THAM KHẢO [1] I I b Jamaludin and H b Hassan, "Design and Analysis of Serial Peripheral Interface for Automotive Controller," 2020 IEEE Student Conference on Research and Development (SCOReD), 2020, pp 498-501, doi: 10.1109/SCOReD50371.2020.9250981 [2] A K Oudjida, M L Berrandjia, A Liacha, R Tiar, K Tahraoui and Y N Alhoumays, "Design and test of general-purpose SPI Master/Slave IPs on OPB bus," 2010 7th International Multi- Conference on Systems, Signals and Devices, 2010, pp 1-6, doi: 10.1109/SSD.2010.5585592 [3] M Hafeez and A Saparon, "IP Core of Serial Peripheral Interface (SPI) with AMBA APB Interface," 2019 IEEE 9th Symposium on Computer Applications & Industrial Electronics (ISCAIE), 2019, pp 55-59, doi: 10.1109/ISCAIE.2019.8743871 [4] B Zhou, D Li and G Lu, "Design of high-speed and reusable SPI IP core based on Wishbone interface," 2011 International Conference on Electrical and Control Engineering, 2011, pp 1040-1042, doi: 10.1109/ICECENG.2011.6058000 [5] J Yang, Y Xiao, D Li, Z Li, Z Chen and P Wan, "A Configurable SPI Interface Based on APB Bus," 2020 IEEE 14th International Conference on Anticounterfeiting, Security, and Identification (ASID), 2020, pp 73-76, doi: 10.1109/ASID50160.2020.9271704 [6] Richard Herveille, WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores, rev version: B4, 2010 By Open Cores Organization, p.7, 2010 www.opencores.org [7] https://hardwarebee.com/the-ultimate-guide-to-fpga-architecture/ [8] Sneha H.L., “Purpose and Internal Functionality of FPGA Look-Up Tables”, https://www.allaboutcircuits.com/technical-articles/purpose-and-internalfunctionality-of-fpga-look-up-tables/ [9] Koushik, Anushree, Kumaraswamy, “Design of SPI (Serial Peripheral Interface) Protocol with DO-254 Compliance”, May 2016 [10] Semicon, “Chuẩn giao tiếp SPI”, 29/11/2018 [11] CORELIS an EWA company, Serial Peripheral Interface (SPI) Bus Tutorial Corelis serial bus products 71 i [12] Piyu Dhaker, “Introduction to SPI Interface”, AnalogDialogue 52-09, September 2018 [13] ICTP Multidisciplinary Laboratory, “Introduction to the WISHBONE Bus Interface” [14] OpenCores, “WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores”, 2010 [15] Datasheet “ALINX AX309”, alinx.com.cn [16] Xilinx, “Spartan-6 Family Overview”, DS160 (v2.0) October 25, 2011 72 i PHỤ LỤC 73 i S i K L 0

Ngày đăng: 08/05/2023, 17:44