강의

멘토링

커뮤니티

Hardware

/

Semiconductor

Chương trình Verilog FPGA 2 (MicroBlaze, Arty A7-35T)

Đây là nội dung về việc triển khai MicroBlaze trên Xilinx FPGA.

(5.0) 5 đánh giá

192 học viên

  • alex
fpga
verilog
hdl
xilinx
FPGA
MicroBlaze
Verilog HDL

Đánh giá từ những học viên đầu tiên

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

  • Sử dụng MicroBlaze trong FPGA

  • Chương trình Verilog

  • Chương trình FPGA

FPGA MicroBlaze là một nhiệm vụ khó khăn để nghiên cứu!
Bạn có thể có được rất nhiều niềm vui với bài giảng này 💪

Sử dụng MicroBlaze trên FPGA Xilinx!

MicroBlaze là bộ xử lý có sẵn dưới dạng IP trên FPGA. MicroBlaze tách biệt Lõi bộ xử lý và Thiết bị ngoại vi, cho phép người dùng cấu hình Thiết bị ngoại vi phù hợp với mục đích của họ.

Chủ đề bài giảng 📖

Việc xử lý FPGA đặt ra nhiều thách thức. Để triển khai FPGA, bạn không chỉ cần có kiến ​​thức về phần cứng mà còn phải hiểu biết sâu sắc về các công cụ được sử dụng và cú pháp Verilog. Việc chuyển và sử dụng MCU đòi hỏi kiến ​​thức chuyên sâu hơn. Xilinx cung cấp rất nhiều tài liệu về FPGA, nhưng khi bạn xem tài liệu, nó thường giới thiệu bạn đến tài liệu khác. Vì vậy, sẽ rất khó để đọc và hiểu tài liệu do Xilinx cung cấp trừ khi bạn là một nhà phát triển có kinh nghiệm.

Bài giảng này trình bày chi tiết cách kết nối và sử dụng MicroBlaze trên Xilinx FPGA . Từ quá trình cài đặt công cụ Cách chuyển và sử dụng MicroBlaze , Nó trình bày chi tiết việc triển khai giao diện giữa logic người dùng và MCU . Nâng cao sự nghiệp của bạn lên một tầm cao mới với các kỹ năng sử dụng MicorBlaze trong FPGA!

Nếu có bất kỳ điều gì bạn không hiểu trong 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ê tôi điều hành và tôi sẽ trả lời.

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

  • Bài giảng này là bài giảng dạng văn bản điện tử. Đối với những người tham gia khóa học, chúng tôi cung cấp tất cả các tệp nguồn được giải thích trong khóa học. Bài giảng sẽ được sản xuất dưới dạng video trong tương lai.
  • Bài giảng này dựa trên Vitis 2022.1, phiên bản sau năm 2019.
  • 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ính năng bài giảng ✨

Nội dung bài giảng là
Có thể áp dụng ngay vào thực tế!

Đã được thử nghiệm và chứng minh
Cung cấp mã nguồn mở !

Gỡ lỗi, phát triển cần thiết
Đã cung cấp chương trình ứng dụng Windows !


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

Thiết kế FPGA với Verilog
Một người có kinh nghiệm

Sử dụng ngôn ngữ C
Bất kỳ ai đã thử FW

Tôi quan tâm đến MicroBlaze, nhưng
Người không có kinh nghiệm


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

Mục 1 . Cấu hình phần cứng

Mục 2 . Quy trình cài đặt Vitis 2022.1

  • Vitis là một công cụ rất nặng. Giải thích những điều cần lưu ý trong quá trình cài đặt và cách cài đặt mà không xung đột với cài đặt Vivado hiện tại của bạn.

Mục 3 . In “Hello world” trên màn hình bằng MicroBlaze

  • Mục đích của phần này là cung cấp cho bạn cái nhìn tổng quan về luồng.

Mục 4 . Thiết bị ngoại vi của MicoBlaze

  • Mô tả các loại GPIO, Timer, Uart và Interrupt được sử dụng phổ biến nhất. Vì các thiết bị ngoại vi do MicroBlaze cung cấp đều tương tự nhau nên sau khi bạn đã nắm được nội dung bài giảng, bạn có thể dễ dàng sử dụng các thiết bị ngoại vi khác.

Mục 5 . Kiến thức có thể áp dụng vào thực tế

  • Phần lớn vật liệu sẽ bao phủ các thiết bị ngoại vi. Tuy nhiên, mục đích của việc sử dụng MicroBlaze trong FPGA là để điều khiển logic do người dùng thiết kế thông qua MicroBlaze. Cuối cùng, mục đích của nó là kiểm soát logic được người dùng thiết kế thông qua UI (Giao diện người dùng).
  • Trong bài giảng này, chúng tôi đã thêm 4 mô-đun PWM để cấu hình Logic người dùng. Cấu hình Register Map để kiểm soát User Logic và kiểm soát User Logic thông qua MicroBlaze và UI. Chúng tôi giải thích toàn bộ quá trình, thực hiện và hiển thị kết quả.
  • Nội dung được đề cập trong phần này có thể áp dụng ngay vào công việc thực tế của bạn. Nếu bạn thêm User Logic và Register Map, bạn có thể sử dụng tất cả các quy trình khác khi đã triển khai.

Mục 6 . Máy chủ Echo lwIP

  • Bài viết này sẽ hướng dẫn bạn triển khai Echo Server bằng lwIP. Triển khai Bộ điều khiển DDR để sử dụng Bộ nhớ đệm (Bộ nhớ đệm hướng dẫn, Bộ nhớ đệm dữ liệu) trong MicroBlaze.

Mục 7 . Tận dụng lwIP

  • Phần này giải thích quá trình thêm Logic người dùng vào giao tiếp TCP/IP bằng cách sử dụng lwIP. Phần này giải thích quá trình gửi lệnh bằng TCP/IP từ PC, nhận lệnh qua lwIP và điều khiển đèn LED trên bo mạch trong User Logic. Thông qua đó, chúng tôi triển khai giao diện giữa lwIP và User Logic và kiểm tra kết quả.

Mục 8 . Triển khai TCP/IP bằng mô-đun W5500

  • Đã thêm vào v1.4. Bài viết này sẽ hướng dẫn triển khai TCP/IP bằng mô-đun w5500 của Wiznet. Thực hiện truyền và nhận dữ liệu bằng cách kết nối với máy tính và mạng. Nếu chúng ta áp dụng điều này, nó có thể được áp dụng trong nhiều lĩnh vực sử dụng TCP/IP.

Mục 9 . Giao diện bộ nhớ khối - 1

  • Đã thêm vào v1.5. Triển khai Giao diện bộ nhớ khối được cung cấp theo mặc định trong Thiết kế khối.

Mục 10 . Giao diện bộ nhớ khối - 2

  • Đã thêm vào v1.5. Triển khai Giao diện Bộ nhớ Khối bằng cách thêm Bộ nhớ Khối vào Logic Người dùng. Bằng cách áp dụng điều này, chúng tôi triển khai Bản đồ đăng ký người dùng và ví dụ về việc kiểm soát tần số và nhiệm vụ của PWM.
Bạn có tò mò về chương trình giảng dạy chi tiết không?
  1. Tổng quan (4)
  2. Cấu hình HW (6)
  3. Cài đặt SW (7)
  4. Triển khai Hello World (12)
    1. Triển khai mẫu cơ bản (12)
      1. Tạo một dự án (12)
      2. Tạo khối thiết kế (15)
      3. Tạo HDL Wrapper (21)
      4. Triển khai Logic Người dùng (22)
      5. triển khai xdc (27)
      6. Tạo Bitstream (30)
      7. Xuất khẩu phần cứng (31)
    2. Triển khai SW nhúng (34)
    3. Tải chương trình trong Flash (45)
      1. Tải xuống từ vitis (45)
      2. Thêm tệp elf vào vivado và tải xuống (50)
  5. Triển khai thiết bị ngoại vi MicroBlaze (59)
    1. Thiết kế khối (59)
      1. GPIO: LED_4bit (60)
      2. GPIO : btn0 (Ngắt ngoài-1) (61)
      3. GPIO : btn1 (Ngắt ngoài-2) (62)
      4. GPIO: btn3, 4 (Đầu vào chung, Công tắc bật tắt) (63)
      5. Bộ đếm thời gian (64)
    2. Ứng dụng SW (71)
      1. tập tin xparameters.h (72)
      2. Cấu trúc nguồn (75)
      3. Thực hiện mã (77)
    3. Tải xuống và kiểm tra kết quả (82)
  6. Triển khai Giao diện Logic Người dùng (83)
    1. Thiết kế khối (84)
    2. Triển khai Logic Người dùng (88)
      1. mcu_pwm.v (89)
      2. pwm_top.v (90)
      3. spi_nô lệ.v (91)
        1. Giao thức truyền thông (93)
        2. Đăng ký Bản đồ (93)
        3. Phân tích dạng sóng (94)
        4. Thực hiện mã (96)
        5. Mô phỏng (103)
      4. BlazeTop.v (106)
      5. thế hệ xdc (109)
    3. Ứng dụng SW (112)
      1. Sao chép comm_task (116)
      2. xin chào thế giới.c (116)
      3. Giao thức truyền thông (118)
      4. comm_task (119)
    4. Tải xuống và kiểm tra kết quả (120)
    5. Cập nhật bài tập về nhà (124)
  7. Triển khai máy chủ Echo lwIP (126)
    1. Cấu hình hệ thống (126)
    2. Triển khai phần cứng lwIP (128)
      1. Tạo một dự án (128)
      2. Tạo khối HW (130)
      3. Tạo HDL Wrapper (152)
      4. Ứng dụng SW (158)
      5. Kiểm tra kết quả (167)
      6. Phân tích nguồn (174)
  8. Tận dụng lwIP (180)
    1. Thiết kế HW (180)
    2. Triển khai Logic Người dùng (185)
    3. Triển khai SW ứng dụng (192)
  9. Triển khai TCP/IP sử dụng W5500 (202)
    1. Tạo một dự án (206)
    2. Thiết kế khối (207)
    3. Triển khai mô-đun hàng đầu (217)
    4. Triển khai SW ứng dụng (222)
      1. Kích thước bộ nhớ (232)
      2. Cấu trúc tập tin (233)
      3. data_type.h (233)
      4. ax_common.h (234)
      5. w5500.c, w5500.h (234)
      6. w5500_task.c, w5500_task.h (234)
      7. w5500_socket.c, w5500_socket.h (235)
      8. w5500_loopback.c, w5500_loopback.h (235)
      9. helloworld.c (238)
    5. Kiểm tra kết quả (240)
      1. Xây dựng dự án (240)
      2. Cài đặt mạng PC (241)
      3. Tải chương trình và kiểm tra kết quả (242)
      4. Tải chương trình xuống Flash ngoài (246)
    6. Kết luận (247)
  10. Giao diện bộ nhớ khối - 1 (248)
    1. Tạo một dự án (248)
    2. Thiết kế khối (250)
    3. Thêm tệp ràng buộc (260)
    4. Triển khai SW ứng dụng (263)
  11. Giao diện bộ nhớ khối - 2 (268)
    1. Tạo một dự án (269)
    2. Thiết kế khối (270)
    3. Thiết kế logic người dùng (279)
    4. Triển khai SW ứng dụng (289)
    5. Tải xuống và kiểm tra kết quả (289)
    6. Sửa lỗi liên kết tập lệnh (295)
  12. Tài liệu tham khảo (297)
  13. Lịch sử sửa đổi (298)

Câu hỏi dự kiến ​​Q&A 💬

H. Đối tượng mục tiêu của bài giảng này là ai?

Khóa học này dành cho những người hiểu cú pháp Verilog, có kinh nghiệm thiết kế FPGA và có kinh nghiệm phát triển hệ thống nhúng (FW). Tuy nhiên, ngay cả khi bạn chỉ có một chút kinh nghiệm, bạn vẫn có thể hiểu được nếu bạn theo dõi chính xác nội dung.

H. Tôi có cần chuẩn bị gì để tham dự buổi thuyết trình không?

Bài giảng này sẽ được thực hiện trên ván thực hành Arty A7-35T (100T, sản phẩm Digilent). Nếu bạn không có sẵn bảng, vui lòng kiểm tra nội dung trước rồi mới mua bảng sau và nhớ kiểm tra nội dung trên bảng. Việc triển khai FPGA không kết thúc bằng mô phỏng mà phải được xác minh trong phần cứng.

H. Bạn sử dụng những công cụ chương trình nào?

Chúng tôi sử dụng phiên bản mới nhất, vitis 2022.1. Quá trình cài đặt được giải thích chi tiết trong hướng dẫn này.


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

Lịch sử

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


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

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

  • Những ai quan tâm đến MicroBlaze

  • FPGA quan tâm

  • Những ai quan tâm đến Verilog

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

  • ngôn ngữ C

  • VerilogHDL

  • FPGA của Xilinx

Xin chào
Đây là

1,686

Học viên

72

Đánh giá

125

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ả

290 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ả

5 đánh giá

5.0

5 đánh giá

  • withuman님의 프로필 이미지
    withuman

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    52% đã tham gia

    실무에 많은 도움이 되고 있습니다. 좋은 강의 감사합니다!!

    • soi897님의 프로필 이미지
      soi897

      Đánh giá 6

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      Zybo 같이 아예 ARM이 내장되어 있는 경우가 아니라면, Microblaze로 개발하는 게 편합니다. 하지만 Microblaze를 활용하는 방법은 인터넷에 여기저기 퍼져 있어 구글링을 해 가며 공부를 해야 하고, 초보자가 그렇게 공부하면 무엇이 진짜 필요한 내용인지 구별할 수가 없는 것 같습니다. 하지만 이 강의는 Microblaze를 활용하기 위한 기본적인 지식을 함양해 줍니다. 이 강의의 내용을 조금만 응용하시면 실무에도 충분히 활용 가능할 것입니다. 그리고 무엇보다 장점인 것은 필요할 때마다 바로바로 찾아서 복습할 수 있다는 것입니다.

      • alex
        Giảng viên

        진심어린 수강평 정말로 감사드립니다. 도움이 되셨다니 또한 감사합니다. 앞으로 훌륭한 개발자가 되시길 기원드립니다. 요즘에는 동영상 자료가 워낙에 많이 있어서 동영상이 편할수도 있고 장점도 많은 것 같습니다. 그러나 말씀하여 주신대로 반복해서 자료를 보고 싶을 때에는 문서가 좋은 것 같습니다. 문서는 어디에 어떤 내용이 있는지 바로 찾을 수 있기 때문입니다. 앞으로도 계속해서 유익한 자료 만들어서 많은 분들이 도움 받을 수 있도록 노력하겠습니다. 감사합니다~!!

    • haneuli님의 프로필 이미지
      haneuli

      Đánh giá 14

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      • balmont님의 프로필 이미지
        balmont

        Đánh giá 1

        Đánh giá trung bình 5.0

        5

        26% đã tham gia

        금번에 Microblaze를 활용해서 프로젝트를 하고 있습니다. 인터넷에도 자료가 그리많지않고 실무적인 내용을 찾기가 많이 힘들었는데 많은 도움을 얻고 갑니다. 자료 만드신거 보니 많은시간 노력의 흔적이 느껴집니다. 암튼 너무 좋은 강의였습니다. 많은 분들에게 도움이 될거라 생각됩니다

        • alex
          Giảng viên

          수강평 감사드립니다. MicroBlaze 관련 프로젝트를 진행하고 계신다니, 프로젝트가 잘 진행되어 좋은 결과가 있길 바랍니다. 감사합니다~!!

      • baekga83님의 프로필 이미지
        baekga83

        Đánh giá 1

        Đánh giá trung bình 5.0

        5

        61% đã tham gia

        지금까지 쉽게 설명이 되어 있어 어렵지 않습니다. 좋은 강의인 것 같습니다. 현업에서 FPGA Logic과 HW를 설계하고 있는데 요즘은 MB or NIOS 까지 Handling 할 수 있는 능력을 많이들 요구 하는 것 같습니다. 좋은 디딤돌이 될 것 같습니다. 앞으로도 좋은 교육 부탁 드립니다.

        • alex
          Giảng viên

          수강평 정말로 감사드립니다. 도움이 되신다고 하니 감사합니다. 세상이 너무 빠르게 바뀌는 것 같습니다. 기술도 너무 빠르게 변해서 이것도 해야 되고, 저것도 해야 되고 할 게 너무 많네요. 아무튼 진행하시는 일들 잘 진행되실길 바랍니다. 감사합니다 ~!!

      1.730.250 ₫

      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!