Thiết kế bộ điều khiển can cài đặt trên FPGA

126 4 0
Thiết kế bộ điều khiển can cài đặt trên FPGA

Đ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 BÁCH KHOA PHAN PHÚC CƯỜNG THIẾT KẾ BỘ ĐIỀU KHIỂN CAN CÀI ĐẶT TRÊN FPGA Chuyên ngành : Kỹ Thuật Điện Tử LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng năm 2009 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Cán hướng dẫn khoa học : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét : (Ghi rõ họ, tên, học hàm, học vị chữ ký) Luận văn thạc sĩ bảo vệ HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày 02 tháng 07 năm 2010 Tóm Tắt Luận Văn Nội dung luận văn bao gồm việc nghiên cứu kiến thức chuẩn CAN (Controller Area Network) ñồng thời tạo ñặc tả ñể thực CAN Sau luận văn thực mã RTL cho đặc tả CAN ngơn ngữ Verilog Luận văn “Thiết kế ñiều khiển CAN cài ñặt FPGA” bao gồm chương với nội dung sau: Chương 1: Giới thiệu lịch sử CAN, nhìn tổng qt CAN vấn đề nhắm đến luận văn Chương 2: Trình bày chi tiết giao thức giao tiếp, giao tiếp CAN, lớp vật lý CAN Chương 3: Trình bày chi tiết ñặc tả thiết kế ñiều khiển CAN Chương 4: Cài ñặt thiết kế lên FPGA kiểm tra kết thiết kế Chương 5: Kết luận Hướng phát triển ñề tài Chương 6: Phụ Lục Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Các Chữ Viết Tắt A ACK Acknowledge Field CAN CPU CRC Controller Area Network Central Processing Unit Cyclic Redundancy Check FPGA FIFO Field-Programmable Gate Array First In First Out HDL Hardware Description Language RTL Register Transfer Level SOPC Systen On A Programmable Chip C F H R S Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Mục lục Chương GIỚI THIỆU 1.1 Lịch sử CAN 1.2 Cái nhìn tổng quát CAN 1.3 Vấn ñề ñược nhắm tới 1.4 Hiện thực ñiều khiển giao thức CAN FPGA 10 1.5 Tiến hành 11 Chương GIAO TIẾP NỐI TIẾP SỬ DỤNG GIAO THỨC MẠNG ĐIỀU KHIỂN 12 2.1 Giới thiệu giao thức giao tiếp .12 2.2 Giao thức CAN .13 2.2.1 Lớp liệu CAN 14 2.3 Lớp vật lý CAN 28 2.3.1 Biểu diễn bit 28 2.3.2 Mã hóa bit 29 2.3.3 Đồng ñịnh thời bit 29 2.3.4 Tốc ñộ bit ñộ dài bus 31 Chương THIẾT KẾ BỘ ĐIỀU KHIỂN CAN 32 3.1 Qui trình thiết kế .33 3.2 Module Can Top can_top 34 3.2.1 Chức 34 3.2.2 Sơ ñồ khối 34 3.3 Thiết kế lớp vật lý - Module Bit Timing Logic can_btl 36 3.3.1 Chức 36 3.3.2 Sơ ñồ khối 36 3.3.3 Máy trạng thái 38 3.3.4 Mơ tả hoạt động 39 3.4 Thiết kế lớp liệu - Module Bit Stream Processor can_bsp 40 3.4.1 Chức 40 3.4.2 Sơ ñồ khối 40 3.4.3 Máy trạng thái 46 3.4.4 Mơ tả hoạt động 52 3.4.5 Khối can_acf (CAN Acceptance Filter Mode) 52 3.4.6 Khối can_crc 54 3.4.7 Khối can_fifo 56 3.5 Module Cấu Hình Thanh Ghi 57 3.5.1 Chức 57 3.6 Hoạt ñộng module CAN 76 3.6.1 Hoạt ñộng ñồng ñịnh thời bit 76 3.6.2 Hoạt ñộng phân xử bus 78 3.6.3 Hoạt ñộng truyền liệu 83 3.6.4 Hoạt ñộng nhận liệu 85 3.6.5 Hoạt ñộng xử lý lỗi 88 3.7 Kết trình tổng hợp (synthesis) 94 3.7.1 Kiểm tra Formal 94 3.7.2 Số cổng netlist (area) 96 3.7.3 Công suất netlist (power) 97 3.7.4 Kết timing netlist 98 3.8 So sánh với thiết kế khác 101 Chương CÀI ĐẶT THIẾT KẾ LÊN FPGA KIỂM TRA KẾT QUẢ CỦA THIẾT KẾ103 4.1 Cài ñặt thiết kế lên FPGA board 103 4.1.1 Sơ lược phần mềm thiết kế hệ thống thiết bị lập trình (System On a Programmable Chip – SOPC) 103 4.1.2 Kiểm tra tính đọc ghi ghi 104 4.1.3 Kiểm tra tính truyền nhận 105 4.1.4 Kiểm tra tính phân xử bus 105 Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ 4.1.5 Kiểm tra tính xử lý lỗi 106 Chương KẾT LUẬN HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 107 5.1 Kết luận 107 5.2 Hướng phát triển ñề tài 107 Tài liệu tham khảo 108 Chương Phụ Lục 109 6.1 Chức xử lí Altera NIOS hệ thống .109 6.2 Thiết kế hệ thống ñể kiểm tra Top Module CAN 109 6.3 Thiết kế tạo dao ñộng tương thích với Altera DE2 board 113 6.4 Kết nối Top Module CAN ñể thực giao tiếp 115 6.5 Tổng hợp hệ thống Quartus II 115 6.5.1 Tạo ràng buộc Timing cho trình tổng hợp 115 6.5.2 Tạo kết nối thiết bị ngoại vi FPGA 116 6.5.3 Tạo kết nối cho Signal Tap ñể quan sát kết mô waveform 117 6.5.4 Tổng hợp hệ thống Design Compiler 118 6.5.5 Kiểm tra kết tổng hợp 119 6.5.6 Cài ñặt hệ thống lên FPGA DE2 Altera 120 6.6 Kiểm tra kết thiết kế 120 6.6.1 Giới thiệu sơ lược Các tính hổ trợ cho việc kiểm tra thiết kế 120 Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Mục lục hình vẽ Hình 1-1 Giao tiếp dùng CAN Hình 1-2 Giải pháp cho Bộ ñiều khiển CAN 10 Hình 2-1 Sơ ñồ ñơn giản mạng truyền tin 13 Hình 2-2 Mơ hình lớp ISO/OSI giao thức CAN 14 Hình 2-3 Phân xử bus CAN .16 Hình 2-1 Frame liệu CAN .17 Hình 2-2 Frame từ xa CAN 19 Hình 2-3 Frame Active Error 20 Hình 2-4 Frame Passive Error 20 Hình 2-5 Frame tải .21 Hình 2-6 Bit Stuffing 22 Hình 2-7 Trạng thái lỗi CAN 25 Hình 2-8 Sơ ñồ ñi dây CAN 28 Hình 2-9 Trạng thái logic logic CAN .29 Hình 2-10 Định thời bit CAN 30 Hình 3-1 Hình sơ đồ khối điều khiển CAN 32 Hình 3-2 Hình biểu diễn qui trình thiết kế 33 Hình 3-3: Hình biểu diễn sơ ñồ khối module can_top 34 Hình 3-4: Bảng sơ ñồ chân module can_btl .36 Hình 3-5: Hình biểu diễn máy trạng thái module can_btl .38 Hình 3-6: Bảng mơ tả q trình ñồng cứng thời ñiểm lấy mẫu 39 Hình 3-7: Hình biểu diễn sơ đồ khối module Bit Stream Processor can_bsp 41 Hình 3-8: Hình biểu diễn máy trạng thái module can_bsp 46 Hình 3-9: Hình biểu diễn trạng thái rx_state 49 Hình 3-10: Hình biểu diễn trạng thái xử lý lỗi nút CAN .51 Hình 3-11: Hình biểu diễn trình nhận liệu .52 Hình 3-12: Hình biểu diễn sơ đồ khối module Can Acf 53 Hình 3-13: Hình biểu diễn trình lọc thơng điệp 54 Hình 3-14: Hình biểu diễn sơ ñồ khối module Can CRC 55 Hình 3-15: Hình biểu diễn sơ đồ khối module Can Fifo 56 Hình 3-16: Hình biểu diễn ghi liệu vào module can fifo 57 Hình 3-17: Hình biểu diễn sơ ñồ khối module Can Register .58 Hình 3-18: Giao thức ghi liệu vào ghi 75 Hình 3-19: Giao thức đọc liệu vào ghi 76 Hình 3-20: Biễu diễn ngắt CAN bắt ñầu nhận liệu 76 Hình 3-21: Hình biểu diễn tiến trình cài đặt ghi ñịnh thời 77 Hình 3-22: Thời gian bit lý thuyết .77 Hình 3-23: Hình biểu diễn q trình đồng thời gian 77 Hình 3-24: Hình biểu diễn q trình đồng lại trễ so với ñoạn ñồng 78 Hình 3-25: Hình biểu diễn q trình đồng lại sớm so với đoạn ñồng 78 Hình 3-26: Hình biểu diễn tiến trình cài đặt hoạt ñộng việc phân xử bus .79 Hình 3-27: Hình biểu diễn việc quyền phân xử .80 Hình 3-28: Hình biểu diễn dạng sóng việc quyền phân xử bus 80 Hình 3-29: Hình biểu diễn việc thắng quyền phân xử bus 82 Hình 3-30: Hình biểu diễn vế việc thắng quyền phân xử bus 82 Hình 3-31: Hình biểu diễn tiến trình cài đặt hoạt động trình truyền 83 Hình 3-32: Hình biểu diễn trình truyền frame liệu 85 Hình 3-33: Hình biểu diễn tiến trình trình nhận liệu 86 Hình 3-34: Hình biểu diễn q trình nhận chế độ 87 Hình 3-35: Hình biểu diễn lỗi mức thơng ñiệp CRC 89 Hình 3-36: Hình biểu diễn lỗi mức thơng điệp định dạng 89 Hình 3-37: Hình biểu diễn lỗi mức thơng điệp ACK 90 Hình 3-38: Hình biểu diễn lỗi mức bit quan sát 90 Hình 3-39: Hình biểu diễn lỗi mức bit stuff 91 Hình 3-40: Hình biểu diễn qui tắc chặn lỗi .92 Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 3-41: Hình biểu diễn qui tắc chặn lỗi .92 Hình 3-42: Hình biểu diễn qui tắc chặn lỗi .92 Hình 3-43: Hình biểu diễn ngoại lệ qui tắc chặn lỗi 93 Hình 3-44: Hình biểu diễn chuyển đổi trạng thái từ error active sang error passive 93 Hình 3-45: Hình biểu diễn chuyển đổi trạng thái từ Error Passive sang Bus Off 94 Hình 4-1 Các thành phần bên SOPC 103 Hình 4-2 Hệ thống kiểm tra thiết kế CAN .104 Hình 4-3: Hình biễu diễn dạng sóng kiểm tra ñọc ghi ghi 104 Hình 4-4: Hình biễu diễn xuất liệu nhớ 105 Hình 4-6: Hình biểu diễn việc xuất liệu nhớ trình truyền nhận 105 Hình 4-7: Hình biểu diễn tính phân xử bus .106 Hình 4-8: Hình biểu diễn tính phân xử bus .106 Hình 4-9: Hình biểu diễn dạng sóng phát lỗi ñịnh dạng 106 Hình 6-1 Chi tiết trình tạo mạch dao động cho hệ thống 114 Hình 6-2 Module kết nối thiết kế CAN ñể thực việc kiểm tra 115 Hình 6-3 Tạo ràng buột Timing cho việc tổng hợp hệ thống trước ñổ hệ thống vào FPGA 116 Hình 6-4 Tạo kết nối hệ thống thành phần FPGA 117 Hình 6-5 Tạo kết nối cho Signal Tap .118 Hình 6-6 Cấu hình EDA Tool cho trình tổng hợp .119 Hình 6-7 Kiểm tra kết tổng hợp - Ràng buột Timing 119 Hình 6-8 Cài đặt hệ thống lên FPGA với công cụ Programmer 120 Hình 6-9 Kết nối SignalTap vào FPGA ñể hiển thị kết thiết kế CAN 121 Hình 6-10 Sơ ñồ khối bên SignalTap 121 Hình 6-11 Hiển thị dạng sóng Altera Signal Tap 122 Hình 6-12 Sơ lược cấu hình Altera Debug Client .124 Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Mục lục bảng Bảng 3-1: Bảng mơ tả tín hiệu vào/ra module can_top 34 Bảng 3-2: Bảng mơ tả tín hiệu vào/ra module Bit Timing Logic 37 Bảng 3-3: Bảng mô tả máy trạng thái module can_btl 38 Bảng 3-4: Bảng mơ tả tín hiệu chuyển trạng thái module can_btl 38 Bảng 3-5: Bảng mơ tả tín hiệu vào/ra module 42 Bảng 3-6: Bảng mơ tả máy trạng thái module can_bsp 47 Bảng 3-7: Bảng mơ tả tín hiệu chuyển trạng thái máy trạng thái module can_bsp 47 Bảng 3-8: Bảng mô tả tín hiệu chuyển trạng thái máy trạng thái module can_bsp 48 Bảng 3-9: Bảng mô tả trạng thái rx_state 49 Bảng 3-10: Bảng mơ tả tín hiệu chuyển trạng thái rx_state 49 Bảng 3-11: Bảng mô tả trạng thái xử lý lỗi 51 Bảng 3-12: Bảng mơ tả tín hiệu chuyển trạng thái xử lý lỗi 51 Bảng 3-13: Bảng mơ tả tín hiệu vào/ra module Can Acf 53 Bảng 3-14: Bảng mơ tả tín hiệu vào/ra module Can CRC 55 Bảng 3-15: Bảng mơ tả tín hiệu vào/ra module Can Fifo 56 Bảng 3-16: Bảng mơ tả tín hiệu vào/ra module Can Register 59 Bảng 3-17 Bảng so sánh CAN ñược thiết kế với Renesas CAN chuẩn 101 Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Chương 1.GIỚI THIỆU 1.1 Lịch sử CAN CAN (Controller Area Network) giao thức giao tiếp nối tiếp dùng bus chia sẻ bắt ñầu phát triển vào năm 1986 Robert Bosch GmbH Sự gia tăng số lượng hệ thống ñiều khiển phân bố xe gia tăng chi phí dây điện thân xe ñã dẫn ñến ñời giao thức CAN nối tiếp dùng cho ô tô Mặc dù ban đầu sử dụng cơng nghiệp tơ, nhanh chóng ứng dụng hệ thống nhúng ví dụ hệ thống ñiều khiển công nghiệp nơi mà giao tiếp tốc ñộ cao ñược yêu cầu Với công nhận ngày nhiều ngành cơng nghiệp, giao thức ñổi tên ngắn gọn CAN 1.2 Cái nhìn tổng quát CAN Một hệ thống CAN gởi ñi thơng điệp qua mạng lưới bus nối tiếp Mỗi nút kết nối với thơng qua mạng lưới Khơng cần thiết phải có điều khiển trung tâm Sơ đồ khối mạng CAN điển hình ñược trình bày 1.1 Ứng dụng Bộ ñiều khiển Ứng dụng Bộ ñiều khiển CAN Ứng dụng Bộ ñiều khiển Ứng dụng Bộ ñiều khiển Hình 1-1 Giao tiếp dùng CAN CAN giao thức giao tiếp multi-master nên nút hệ thống ngang hàng với Mỗi xử lí gởi thơng điệp tới xử lí cịn lại Nếu xử lí gặp thất bại, xử lí khác hệ thống tiếp tục hoạt động bình thường Khi nút muốn truyền thơng điệp mạng phải đợi bus rãnh Mỗi thơng điệp có phần nhận dạng nút nhận thơng điệp Nút chọn thơng điệp thích hợp bỏ qua thơng điệp cịn lại Giao thức CAN thiết kế dùng cho thơng điệp ngắn dài khơng byte Giao thức không ngắt quãng liệu ñang truyền gán ñộ ưu tiên cho thơng điệp để ngăn chặn xung đột để ñảm bảo thông ñiệp khẩn cấp ñược truyền ñi trước Giao thức CAN bao gồm chế dò lỗi hạn chế lỗi mạnh mẽ Luận Văn Tốt Nghiệp Trang HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA Luận Văn Tốt Nghiệp Trang 110 GVHD: Th.S Hồ Trung Mỹ HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA Luận Văn Tốt Nghiệp Trang 111 GVHD: Th.S Hồ Trung Mỹ HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA Luận Văn Tốt Nghiệp Trang 112 GVHD: Th.S Hồ Trung Mỹ HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Thiết kế tạo dao động tương thích với Altera DE2 board DE2 board tích hợp tạo dao động với tần số chuẩn 50Mhz 6.3 Luận Văn Tốt Nghiệp Trang 113 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Để tiện cho việc sử dụng, ta tạo thêm tạo dao ñộng dựa vào tần số chuẩn với ngõ tần số 25Mhz, 50Mhz, 100Mhz Việc tạo chi tiết ñược thực IP PLL SOPC Mục tiêu: Input Clock: CLOCK_50 (50Mhz) Output Clock: 100Mhz, 50Mhz, 25Mhz Trong thiết kế chúng ta, ta chọn clock hoạt ñộng hệ thống 50Mhz Clock 100Mhz dành cho việc lấy mẫu Signal Tap Quan sát kết việc mô (sẽ ñược trình bày chi tiết phần 5.2.1.A) Hình 6-1 Chi tiết q trình tạo mạch dao động cho hệ thống Luận Văn Tốt Nghiệp Trang 114 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA 6.4 GVHD: Th.S Hồ Trung Mỹ Kết nối Top Module CAN ñể thực giao tiếp Can1:the_Can1 Can0:the_Can0 Can_connection:Can0_Can1 clk_i cs_can_i rst_n_i bus_off_on irq_on rx_i wr_i add_i[7 0] tx_o bus_off_on tx2_i clk_i cs_can_i bus_off2_on rst_n_i tx_i_and_tx2_i rx_i wr_i tx_i add_i[7 0] rdata_o[7 0] bus_off_on irq_on tx_o rdata_o[7 0] wdata_i[7 0] wdata_i[7 0] Hình 6-2 Module kết nối thiết kế CAN ñể thực việc kiểm tra Tổng hợp hệ thống Quartus II Để kiểm tra ñược hệ thống FPGA, trước hết ta phải tổng hợp hệ thống từ mơ hình thiết kế dạng chức (RTL) sang dạng cổng logic (GATE) tạo liên hệ với ñơn vị logic bên FPGA (Logic Element) Q trình thực tính Compile Quartus Nhưng trước hết, ta cần phải thiết lập số ràng buột cho trình Tổng hợp: Tạo ràng buộc Timing cho trình tổng hợp Tạo kết nối thiết bị ngoại vi FPGA Tạo kết nối cho Signal Tap để quan sát kết mơ waveform 6.5 6.5.1 Tạo ràng buộc Timing cho trình tổng hợp Chọn menu Assignment Classic Timing Analyzer Wizard Fmax specification Trong thiết kế này, ñịnh Fmax = 67Mhz (Xung clock Nios CPU core) Luận Văn Tốt Nghiệp Trang 115 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-3 Tạo ràng buột Timing cho việc tổng hợp hệ thống trước ñổ hệ thống vào FPGA 6.5.2 Tạo kết nối thiết bị ngoại vi FPGA Chọn menu Assignments Pins Planner Tạo kết nối dựa vào nhu cầu sử dụng thiết bị ngoại vi Trong thiết kế này, kết nối tín hiệu Reset, SRAM, LCD, Extal … FPGA phù hợp với ñòi hỏi ñiều khiển Dưới ñây thơng tin chi tiết sơ đồ kết nối chân từ hệ thồng thiết bị bên FPGA board Luận Văn Tốt Nghiệp Trang 116 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA To Can0_avalon_tristate_slave_data[7] Can0_avalon_tristate_slave_data[6] Can0_avalon_tristate_slave_data[5] Can0_avalon_tristate_slave_data[4] Can0_avalon_tristate_slave_data[3] Can0_avalon_tristate_slave_data[2] Can0_avalon_tristate_slave_data[1] Can0_avalon_tristate_slave_data[0] Can1_avalon_tristate_slave_data[7] Can1_avalon_tristate_slave_data[6] Can1_avalon_tristate_slave_data[5] Can1_avalon_tristate_slave_data[4] Can1_avalon_tristate_slave_data[3] Can1_avalon_tristate_slave_data[2] Can1_avalon_tristate_slave_data[1] Can1_avalon_tristate_slave_data[0] LCD_E_from_the_lcd LCD_RS_from_the_lcd LCD_RW_from_the_lcd LCD_data_to_and_from_the_lcd[7] LCD_data_to_and_from_the_lcd[6] LCD_data_to_and_from_the_lcd[5] LCD_data_to_and_from_the_lcd[4] LCD_data_to_and_from_the_lcd[3] LCD_data_to_and_from_the_lcd[2] LCD_data_to_and_from_the_lcd[1] LCD_data_to_and_from_the_lcd[0] SRAM_ADDR_from_the_sram_0[17] SRAM_ADDR_from_the_sram_0[16] SRAM_ADDR_from_the_sram_0[15] SRAM_ADDR_from_the_sram_0[14] SRAM_ADDR_from_the_sram_0[13] SRAM_ADDR_from_the_sram_0[12] SRAM_ADDR_from_the_sram_0[11] SRAM_ADDR_from_the_sram_0[10] SRAM_ADDR_from_the_sram_0[9] SRAM_ADDR_from_the_sram_0[8] SRAM_ADDR_from_the_sram_0[7] SRAM_ADDR_from_the_sram_0[6] SRAM_ADDR_from_the_sram_0[5] SRAM_ADDR_from_the_sram_0[4] SRAM_ADDR_from_the_sram_0[3] SRAM_ADDR_from_the_sram_0[2] SRAM_ADDR_from_the_sram_0[1] SRAM_ADDR_from_the_sram_0[0] SRAM_CE_N_from_the_sram_0 SRAM_DQ_to_and_from_the_sram_0[15] SRAM_DQ_to_and_from_the_sram_0[14] SRAM_DQ_to_and_from_the_sram_0[13] Direction Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Output Output Output Bidir Bidir Bidir Bidir Bidir Bidir Bidir Bidir Output Output Output Output Output Output Output Output Output Output Output Output Output Output Output Output Output Output Output Bidir Bidir Bidir Location PIN_K3 PIN_K1 PIN_K4 PIN_H3 PIN_H4 PIN_J3 PIN_J4 PIN_H2 PIN_H1 PIN_J2 PIN_J1 PIN_AC8 PIN_AB8 PIN_Y10 PIN_W10 PIN_W8 PIN_AC7 PIN_V9 PIN_V10 PIN_AD7 PIN_AD6 PIN_AF5 PIN_AE5 PIN_AD5 PIN_AD4 PIN_AC6 PIN_AC5 PIN_AF4 PIN_AE4 PIN_AC11 PIN_AC10 PIN_AC9 PIN_W12 GVHD: Th.S Hồ Trung Mỹ Group Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can0_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] Can1_avalon_tristate_slave_data[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] LCD_data_to_and_from_the_lcd[7 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_ADDR_from_the_sram_0[17 0] SRAM_DQ_to_and_from_the_sram_0[15 0] SRAM_DQ_to_and_from_the_sram_0[15 0] SRAM_DQ_to_and_from_the_sram_0[15 0] Hình 6-4 Tạo kết nối hệ thống thành phần FPGA 6.5.3 Tạo kết nối cho Signal Tap ñể quan sát kết mơ waveform Signal Tap tính hổ trợ Altera giúp cho việc dò lỗi thiết kế đổ vào FPGA (Tính trình bày cụ thể phần 5.2.1.A) Để Signal Tap bắt tín hiệu mong ñợi, ta phải kết Embedded Logic Analyzer vào hệ thống chúng ta, trình kết nối cần ñược thực trước sau tổng hợp hệ thống Sau số thơng tin việc kết nối tín hiệu Signal Tap Luận Văn Tốt Nghiệp Trang 117 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-5 Tạo kết nối cho Signal Tap 6.5.4 Tổng hợp hệ thống Design Compiler Assignment EDA Tool Settings Select appropriate Tools for Synthesis, Simulation and Timing Analysis Luận Văn Tốt Nghiệp Trang 118 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-6 Cấu hình EDA Tool cho trình tổng hợp 6.5.5 Kiểm tra kết tổng hợp Sau trình tổng hợp kết thúc, ñể xác nhận lại kết ràng buột Timing, Chọn Compilation report Timing Analyzer Summary xác nhận lại khơng cịn tồn vi phạm Timing (Setup Time Hold time) Nếu vi phạm Timing, thiết kế hoạt động khơng mong ñợi ñổ vào FPGA Ràng buột Timing ràng buột quan trọng việc thiết kế vi mạch Hình 6-7 Kiểm tra kết tổng hợp - Ràng buột Timing Luận Văn Tốt Nghiệp Trang 119 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ 6.5.6 Cài ñặt hệ thống lên FPGA DE2 Altera Sau tất q trình, ta đổ tồn hệ thống vào FPGA (gổm thiết kế CAN cần kiểm tra) Để thực việc này, chọn Menu Tools Programmer Hardware setup Start Hình 6-8 Cài đặt hệ thống lên FPGA với cơng cụ Programmer 6.6 Kiểm tra kết thiết kế 6.6.1 Giới thiệu sơ lược Các tính hổ trợ cho việc kiểm tra thiết kế 6.6.1.1 Sơ lược chức SignalTap Logic Analyzer SignalTap Logic Analyzer (STLA) ứng dung nhằm hổ trợ người thiết kế quan sát ñược dạng sóng kết nối bên FPGA Nó đoạn mã Altera cài đặt sẵn nhằm hổ trợ cho việc thiết kế dò lỗi FPGA board Nó tích hợp vào FPGA lúc với việc cài ñặt thiết kế mà ta muốn kiểm tra Để sử dụng STLA , ta cần thực bước sau: • Chọn tín hiệu cần quan sát • Chọn điều kiện để tích cực việc bắt liệu tín hiệu cần tìm (Trigger setup) • Cấu hình nhớ cho việc lưu trạng thái tín hiệu cần hiển thị vào nhớ (Captured buffer setup) • Hiển thị kết lên hình máy tính Sơ đồ kết nối FPGA STLA Máy tính thể sau: Luận Văn Tốt Nghiệp Trang 120 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-9 Kết nối SignalTap vào FPGA ñể hiển thị kết thiết kế CAN Sơ ñồ kết nối bên STLA ñược thể sau: Hình 6-10 Sơ đồ khối bên SignalTap Luận Văn Tốt Nghiệp Trang 121 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-11 Hiển thị dạng sóng Altera Signal Tap 6.6.1.2 Sơ lược tính Altera Debug Client Debug Client công cụ tích hợp cơng cụ thiết kế Altera Nó hổ trợ nhúng đoạn mã để kiểm tra thiết kế (Test Pattern) vào hệ thống vi mạch Luận Văn Tốt Nghiệp Trang 122 HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA Luận Văn Tốt Nghiệp Trang 123 GVHD: Th.S Hồ Trung Mỹ HV: Phan Phúc Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Hình 6-12 Sơ lược cấu hình Altera Debug Client Luận Văn Tốt Nghiệp Trang 124 HV: Phan Phúc Cường ... Cường Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung Mỹ Chương THIẾT KẾ BỘ ĐIỀU KHIỂN CAN Hình 3-1 Hình sơ đồ khối điều khiển CAN Luận Văn Tốt Nghiệp Trang 32 HV: Phan Phúc Cường Thiết. .. sánh với thiết kế khác 101 Chương CÀI ĐẶT THIẾT KẾ LÊN FPGA KIỂM TRA KẾT QUẢ CỦA THIẾT KẾ103 4.1 Cài ñặt thiết kế lên FPGA board 103 4.1.1 Sơ lược phần mềm thiết kế hệ... ñiều khiển CAN Chương 4: Cài ñặt thiết kế lên FPGA kiểm tra kết thiết kế Chương 5: Kết luận Hướng phát triển ñề tài Chương 6: Phụ Lục Thiết Kế Bộ Điều Khiển CAN cài ñặt FPGA GVHD: Th.S Hồ Trung

Ngày đăng: 29/08/2021, 17:36

Hình ảnh liên quan

Hình 1-2 Giải pháp cho Bộ ñiều khiển CAN - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 1.

2 Giải pháp cho Bộ ñiều khiển CAN Xem tại trang 12 của tài liệu.
Hình 2-9 Trạng thái logic và logic 1 trong CAN - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 2.

9 Trạng thái logic và logic 1 trong CAN Xem tại trang 31 của tài liệu.
Hình 3-2 Hình biểu diễn qui trình thiết kế - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

2 Hình biểu diễn qui trình thiết kế Xem tại trang 35 của tài liệu.
Hình 3-7: Hình biểu diễn sơ ñồ khối module Bit Stream Processor can_bsp - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

7: Hình biểu diễn sơ ñồ khối module Bit Stream Processor can_bsp Xem tại trang 43 của tài liệu.
Bảng 3-5: Bảng mô tả tín hiệu vào/ra của module - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

5: Bảng mô tả tín hiệu vào/ra của module Xem tại trang 44 của tài liệu.
Bảng 3-7: Bảng mô tả các tín hiệu chuyển trạng thái của máy trạng thái chính của - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

7: Bảng mô tả các tín hiệu chuyển trạng thái của máy trạng thái chính của Xem tại trang 49 của tài liệu.
Bảng 3-6: Bảng mô tả máy trạng thái chính của module can_bsp - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

6: Bảng mô tả máy trạng thái chính của module can_bsp Xem tại trang 49 của tài liệu.
Bảng 3-11: Bảng mô tả trạng thái xử lý lỗi - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

11: Bảng mô tả trạng thái xử lý lỗi Xem tại trang 53 của tài liệu.
Bảng 3-14: Bảng mô tả tín hiệu vào/ra module Can CRC - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

14: Bảng mô tả tín hiệu vào/ra module Can CRC Xem tại trang 57 của tài liệu.
reset_mod eI can_bsp logic 1 Cho phép cấu hình - Thiết kế bộ điều khiển can cài đặt trên FPGA

reset.

_mod eI can_bsp logic 1 Cho phép cấu hình Xem tại trang 59 của tài liệu.
Bảng 3-16: Bảng mô tả tín hiệu vào/ra module Can Register - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

16: Bảng mô tả tín hiệu vào/ra module Can Register Xem tại trang 61 của tài liệu.
RM 1Đ /G Cho biết việc cấu hình các ghi thanh Reset Mode - Thiết kế bộ điều khiển can cài đặt trên FPGA

1.

Đ /G Cho biết việc cấu hình các ghi thanh Reset Mode Xem tại trang 68 của tài liệu.
Hình 3-18: Giao thức ghi dữ liệu vào thanh ghi - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

18: Giao thức ghi dữ liệu vào thanh ghi Xem tại trang 77 của tài liệu.
Hình 3-19: Giao thức ñọc dữ liệu vào thanh ghi - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

19: Giao thức ñọc dữ liệu vào thanh ghi Xem tại trang 78 của tài liệu.
Hình 3-20: Biễu diễn ngắt do CAN bắt ñầu nhận dữ liệu - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

20: Biễu diễn ngắt do CAN bắt ñầu nhận dữ liệu Xem tại trang 78 của tài liệu.
Hình 3-29: Hình biểu diễn về việc thắng quyền phân xử bus - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

29: Hình biểu diễn về việc thắng quyền phân xử bus Xem tại trang 84 của tài liệu.
Hình 3-31: Hình biểu diễn của tiến trình cài ñặt và hoạt ñộng của quá trình truyền - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

31: Hình biểu diễn của tiến trình cài ñặt và hoạt ñộng của quá trình truyền Xem tại trang 85 của tài liệu.
CANMR.RM= 1’b0: Tắt chế ñộ cấu hình thanh ghi. - Thiết kế bộ điều khiển can cài đặt trên FPGA

1.

’b0: Tắt chế ñộ cấu hình thanh ghi Xem tại trang 89 của tài liệu.
Hình 3-38: Hình biểu diễn lỗi mức bit quan sát - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

38: Hình biểu diễn lỗi mức bit quan sát Xem tại trang 92 của tài liệu.
Hình 3-37: Hình biểu diễn lỗi mức thông ñiệp ACK - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

37: Hình biểu diễn lỗi mức thông ñiệp ACK Xem tại trang 92 của tài liệu.
3.6.5.1.5 Dò lỗi mức bit bit stuff - Thiết kế bộ điều khiển can cài đặt trên FPGA

3.6.5.1.5.

Dò lỗi mức bit bit stuff Xem tại trang 93 của tài liệu.
Hình 3-40: Hình biểu diễn qui tắc chặn lỗi 1 - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

40: Hình biểu diễn qui tắc chặn lỗi 1 Xem tại trang 94 của tài liệu.
Hình 3-44: Hình biểu diễn chuyển ñổi trạng thái từ error active sang error passive - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 3.

44: Hình biểu diễn chuyển ñổi trạng thái từ error active sang error passive Xem tại trang 95 của tài liệu.
Bảng 3-17 Bảng so sánh CAN ñược thiết kế với Renesas CAN và chuẩn - Thiết kế bộ điều khiển can cài đặt trên FPGA

Bảng 3.

17 Bảng so sánh CAN ñược thiết kế với Renesas CAN và chuẩn Xem tại trang 103 của tài liệu.
Hình 4-3: Hình biễu diễn dạng sóng của kiểm tra ñọc ghi các thanh ghi - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 4.

3: Hình biễu diễn dạng sóng của kiểm tra ñọc ghi các thanh ghi Xem tại trang 106 của tài liệu.
Ta có thể cấu hình thanh ghi của các kênh CAN thông qua giao tiếp JTAG-UART và - Thiết kế bộ điều khiển can cài đặt trên FPGA

a.

có thể cấu hình thanh ghi của các kênh CAN thông qua giao tiếp JTAG-UART và Xem tại trang 111 của tài liệu.
Hình 6-3 Tạo ràng buột Timing cho việc tổng hợp hệ thống trước khi ñổ hệ thống vào FPGA  - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 6.

3 Tạo ràng buột Timing cho việc tổng hợp hệ thống trước khi ñổ hệ thống vào FPGA Xem tại trang 118 của tài liệu.
Hình 6-6 Cấu hình EDA Tool cho quá trình tổng hợp - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 6.

6 Cấu hình EDA Tool cho quá trình tổng hợp Xem tại trang 121 của tài liệu.
Hình 6-7 Kiểm tra kết quả tổng hợp - Ràng buột Timing - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 6.

7 Kiểm tra kết quả tổng hợp - Ràng buột Timing Xem tại trang 121 của tài liệu.
Hình 6-10 Sơ ñồ khối bên trong SignalTap - Thiết kế bộ điều khiển can cài đặt trên FPGA

Hình 6.

10 Sơ ñồ khối bên trong SignalTap Xem tại trang 123 của tài liệu.

Mục lục

    THIẾT KẾ BỘ ĐIỀU KHIỂN CAN CÀI ĐẶT TRÊN FPGA

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

  • Đang cập nhật ...

Tài liệu liên quan