강의

멘토링

로드맵

Inflearn brand logo image
Hardware

/

Semiconductor

Chương trình Verilog FPGA 4 (Chuyển đổi MCU, Arty A7-35T)

Thông báo việc porting và sử dụng MCU IP miễn phí trong FPGA.

(5.0) 1 đánh giá

58 học viên

  • alex
fpga
xilinx
verilog
MCU
FPGA

Dịch cái này sang tiếng Việt

  • Port MCU lên FPGA để sử dụng

  • Bootloader cấu trúc

  • Cấu hình bộ nhớ MCU trong FPGA

Cổng MCU FPGA,
Nâng cấp bằng cách sáng tạo với kỹ năng của tôi! ✨

Cơ hội phát triển cho nhà phát triển FPGA,
Chuyển sang MCU 🔦

Tôi đã làm việc với FPGA khoảng 20 năm, và hầu hết các dự án của tôi đều liên quan đến việc chuyển MCU sang FPGA. Việc chuyển MCU sang FPGA mang lại nhiều lợi thế. Nó loại bỏ nhu cầu sử dụng MCU ngoài riêng biệt, và thiết kế có thể được tách thành MCU và thành phần logic.

Tôi đã chuyển MCU sang hầu hết các FPGA (Spartan, Artix, Kintex, Virtex). Việc nắm vững kiến trúc cơ bản có thể áp dụng cho hầu hết các FPGA. Bài giảng này sẽ trình bày chi tiết quy trình này. Bài giảng giải thích cách chuyển IP MCU vào FPGA để triển khai Hệ thống trên chip (SOC) . Tôi hy vọng bài giảng này sẽ giúp các nhà phát triển lập trình FPGA nâng cao kỹ năng của họ lên một tầm cao mới.

Đợi đã! ✋ MCU là gì?

Thuật ngữ này đề cập đến bộ vi điều khiển (MCU). Đây là thiết bị tích hợp bộ xử lý, bộ nhớ và các thiết bị đầu vào/đầu ra trong một chip duy nhất. Lập trình cho phép thực hiện các tác vụ điều khiển và tính toán. Nó được sử dụng trong nhiều ứng dụng, từ ô tô đến thiết bị gia dụng và đồ chơi. Lập trình là cần thiết để thực hiện các chức năng cụ thể.

Bài giảng này cung cấp mã nguồn để bạn có thể triển khai trực tiếp toàn bộ nội dung bằng cách sử dụng bo mạch thực hành (Arty A7-35T(100T), (Digilent)). Mã nguồn được cung cấp đã sẵn sàng để sử dụng ngay tại hiện trường . Tôi đã áp dụng giải pháp này cho tất cả các FPGA trong 15 năm qua. Bài giảng dựa trên bo mạch Arty A7 của Xilinx, nhưng có thể áp dụng cho tất cả các FPGA của Xilinx . Nếu bạn không hiểu bất kỳ phần nào của bài giảng, vui lòng đăng câu hỏi thông qua cộng đồng Inflearn hoặc quán cà phê do tôi điều hành, tôi sẽ giải đáp.

📢 Hãy nhớ kiểm tra trước khi tham gia lớp học!

  • Khóa học này là bài giảng điện tử dưới dạng văn bản. Tất cả học viên tham gia sẽ được nhận IP MCU miễn phí và tất cả các tệp nguồn có trong khóa học.
  • Tài liệu bài giảng có thể tải xuống từ 'Mục 0 - Liên kết chia sẻ tài liệu - Tệp đính kèm'.

Tôi giới thiệu điều này cho những người này 🙋‍♀️

Bất kỳ ai có kinh nghiệm thiết kế FPGA bằng Verilog

Bất kỳ ai đã thử FW bằng ngôn ngữ C


Học những điều như thế này ✨

Có rất nhiều nội dung, nhưng nếu bạn hiểu từng bước và ghi nhớ, bạn sẽ có thể áp dụng vào hầu hết các tác vụ liên quan đến FPGA trong tương lai. 💪

Khối hệ thống và
Hiểu về Bootloader

Bộ nhớ MCU và
Triển khai LOGIC

Ứng dụng FW
Triển khai và Ứng dụng

Để tải xuống FW
Triển khai chương trình Windows

Bạn muốn biết thêm về chương trình học chi tiết? 1. Tổng quan (5) Cấu trúc 2HW(8) 2.1 Phương pháp sử dụng USB-JTAG (8)2.2 Phương pháp sử dụng JTAG-HS3(HS2)(9) 2.3 Đầu nối RS-232(10) 2.4 Kết nối Serial Flash(10) [[SPAN_1]]3System Block[[/SPAN_2]][[SPAN_2]](11[[/SPAN_2]]) 3.1Bootloader ROM(11) 3.2Serial Flash(14) 3.3Ext_Mem_SRAM(External Memory SRAM)(14) 3.4FW_SRAM(14) 3.5Int_Mem(Bộ nhớ trong)(14) 3.6MCU Core(15) 3.7LOGIC(15) 3.8 Bản đồ thanh ghi(15) Cấu trúc bộ nhớ 4(16) 4.1Ext_Mem_SRAM (Bộ nhớ ngoài SRAM)(15) 4.2FW_SRAM(20) 4.3Bootloader ROM(21) Cấu trúc 5Clock(23) 6Bootloader(26) 6.1Sequence(26) 6.2 Bản đồ bộ nhớ(27) 6.3 Triển khai mã(29) 6.3.1 Tạo dự án(29) Tạo file 6.4coe(35) Mã nguồn Bootloader 6.5(36) 6.5.1main()(36) 6.5.2update_data()(38) Triển khai 7LOGIC(40) 7.1mcu_top(40) 7.1.1mcu_core(40) 7.1.2addr_map.v(42) 7.1.3mcs_reg(45) 7.2pwm_top(45) 8Application fw(46) 8.1 Tạo dự án(46) 8.2 Xây dựng dự án(51) 8.3 Phân tích mã nguồn(52) 8.3.1main1.c(52) 8.3.2ax_pwm.h(55) 8.3.3ax_string.h(55) 8.3.4al8051_func.h(56) 8.3.5isp_reg.h(56) 9Chương trình Ứng dụng Windows (Win_App)(57) 9.1 Cấu trúc màn hình(57) 9.2 Trình tự tải xuống App_fw(58) 9.3 giao thức điều khiển pwm(62) 9.3.1 viết tần số pwm(62) 9.3.2write pwm duty(62) 9.3.3 đọc tần số pwm(63) 9.3.4đọc pwm duty(63) Tải xuống file cấu hình FPGA(64) 10.1 Thiết lập môi trường dự án(64) 10.2Tải xuống tệp cấu hình(64) 11Xác nhận kết quả(68) Kiểm tra 11.1pwm(68) 11.2 Xác nhận nút(69) Thay đổi Baudrate UART 12(70) 12.1 Cài đặt Baudrate UART(70) Thay đổi 12.2Bootloader fw(72) 12.3 Tái tạo Bootloader ROM(73) Sửa đổi 12.4mcuProtingTop.v(75) 12.5 Sửa đổi Application fw(77) 12.6 Kiểm tra kết quả(78) 13Sử dụng I2C trong Application fw(81) 13.1 Bộ điều khiển I2C Master(81) 13.1.1I2CTP – Thanh ghi Chu kỳ Bộ đếm thời gian(81) 13.1.2I2CCR – Thanh ghi Điều khiển và Trạng thái(83) 13.1.3I2CSA – Thanh ghi địa chỉ Slave(83) 13.1.4I2CBUF – Thanh ghi Bộ nhận và Bộ truyền(84) 13.2 Cấu trúc Logic(84) 13.2.1AL8051EX(84) 13.2.2mcu_core.v(85) 13.2.3mcu_top.v(86) 13.2.4mcuPortingTop.v(87) 13.2.5mcuPortingTop.xdc(87) 13.3Application fw(88) 13.4 Kiểm tra kết quả(94) Triển khai giao diện tốc độ cao 14W5500 (95) 14.1 Khối hệ thống (96) 14.2 Triển khai Logic (96) 14.2.1clock (96) 14.2.2fw_sram (98) 14.2.3Bộ nhớ ngoài (ext_sram) (99) 14.2.4spi_sram (100) 14.2.5 Bản đồ bộ nhớ (101) Sửa đổi 14.2.6addr_map.v (102) 14.2.7 Sửa đổi Bootloader fw (103) 14.2.8 Sửa đổi mô-đun mcs_reg (104) 14.3W5500 SPI Timing (105) 14.4 Triển khai giao diện SPI (106) 14.4.1 Triển khai mã (106) 14.4.2simulation (115) 14.5 Triển khai Top Module (122) 14.6 Triển khai Application fw (126) 14.6.1 Sử dụng bộ nhớ flash bên ngoài (125) 14.6.2 Cấu hình dự án (127) 14.6.3flash api (129) 14.6.4w5500 api (130) 14.6.5main1.c (134)14.6.6Build (137) 14.7Chương trình Ứng dụng Windows (138) 14.8 Kiểm tra kết quả (140) 14.8.1 Tải xuống Bitstream (143) 14.8.2 Cấu hình môi trường mạng PC (143) 14.8.3 Tải xuống Application fw (144) 14.8.4 Đo thời gian truyền (148) 14.9 Kết luận (151)15 Tài liệu tham khảo (152)16 Lịch sử sửa đổi (153)

Giới thiệu Người chia sẻ kiến thức ✒️

Lịch sử

Tôi đã làm việc với tư cách là một nhà phát triển hơn 20 năm tại cả các công ty lớn và nhỏ, và hiện đang điều hành một doanh nghiệp nhỏ. Tôi đã phát triển một ASIC ISP (Xử lý tín hiệu hình ảnh) cho camera quan sát (CCTV), và tôi đã phát triển nhiều sản phẩm dựa trên FPGA, bao gồm thiết bị kiểm tra OLED và DAQ (Hệ thống thu thập dữ liệu). Ngoài FPGA, tôi còn có kinh nghiệm sâu rộng trong phát triển phần mềm (STM32, PIC32, AVR, ATMEGA, v.v.), thiết kế mạch và lập trình Windows.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người muốn nâng cao kỹ năng FPGA

  • Người muốn triển khai FPGA SOC

  • Người muốn porting MCU lên FPGA để dùng

Cần biết trước khi bắt đầu?

  • Ngôn ngữ C

  • Ngôn ngữ Verilog

  • Thiết kế FPGA

Xin chào
Đây là

1,657

Học viên

67

Đánh giá

124

Trả lời

4.8

Xếp hạng

19

Các khóa học

저는 지난 20여년 동안 대기업, 중소기업에서 개발자로 일해왔고

현재는 작은 기업의 대표로 있습니다.

주요 경력사항은

  • Verilog HDL을 이용한 FPGA 설계

    • CCTV용 ISP ASIC 개발 (약 10년)

    • OLED Display 검사장비 개발 (약 3년)

    • FPGA를 이용한 장비 개발

  • MCU FW

    • STM32

    • PIC32

    • AVR, ATMEGA

    • DSP (TI)

  • Windows Application Program

    • Visual Studio MFC, C++

입니다.

Chương trình giảng dạy

Tất cả

151 bài giảng

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

1 đánh giá

5.0

1 đánh giá

  • aceoftop1975님의 프로필 이미지
    aceoftop1975

    Đánh giá 95

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    2024/12/15/Chủ Nhật 16:05 Đây là một tài liệu rất hay và tôi đã thu thập được rất nhiều thông tin. Tôi mới hiểu bootloader là gì. Tôi cũng biết cách sử dụng FPGA. Cảm ơn rất nhiều vì tài liệu hay này.

    • ihil
      Giảng viên

      Cảm ơn bạn đã tìm thấy bài giảng hữu ích. Tôi hy vọng bạn sẽ trở thành một nhà phát triển giỏi~!!

2.780.161 ₫

Khóa học khác của alex

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!