강의

챌린지

멘토링

로드맵

커뮤니티

Thiết kế CPU RISC-V để triển khai trên FPGA ② Tự xây dựng TinyRV32I với pipeline 5 tầng

Bắt đầu từ nguyên lý hoạt động của các lệnh RISC-V, đây là khóa học thực hành thiết kế CPU 32-bit với cấu trúc pipeline 5 tầng, hoàn thiện từ việc triển khai Verilog RTL, kiểm chứng bằng mô phỏng cho đến chạy thực tế trên FPGA. Trong số 40 lệnh của RV32I, khóa học lựa chọn 14 lệnh cần thiết để tìm hiểu cấu trúc cốt lõi của CPU và từng bước xây dựng TinyRV32I. Bạn sẽ trực tiếp thiết kế và kiểm chứng các cấu trúc cốt lõi tạo nên một CPU thực tế, bao gồm datapath, thanh ghi pipeline, ALU và mạch điều khiển, Branch, Hazard, Stall·Flush, Memory-Mapped I/O, v.v. Khóa học cung cấp Verilog RTL, Testbench, chương trình Assembly, Memory Image và tệp ràng buộc FPGA được sử dụng trong bài giảng. Cuối cùng, bạn sẽ chạy chương trình thực tế trên FPGA Arty S7-25 bằng chính CPU do mình thiết kế. Khóa học không kết thúc tại đây. Sau khi hoàn thiện cấu trúc cốt lõi của CPU thông qua TinyRV32I, bạn sẽ tiếp tục với lộ trình thiết kế CPU theo từng giai đoạn, mở rộng thành Full RV32I CPU hỗ trợ toàn bộ 40 lệnh RV32I trong các khóa học tiếp theo.

7 học viên đang tham gia khóa học này

Độ khó Trung cấp trở lên

Thời gian Không giới hạn

Architecture
Architecture
FPGA
FPGA
verilog
verilog
cpu
cpu
riscv
riscv
Architecture
Architecture
FPGA
FPGA
verilog
verilog
cpu
cpu
riscv
riscv

Bạn sẽ nhận được điều này sau khi học.

  • Bạn có thể tự thiết kế CPU RISC-V với đường ống 5 giai đoạn.

  • Có mã nguồn. Đây là bước đầu tiên để tạo ra ISA độc quyền của riêng mình và thiết kế CPU.

  • Có thể hoàn thiện CPU TinyRV32I gồm 14 lệnh hoạt động bằng Verilog RTL.

  • Bạn có thể lập trình cho CPU do chính mình thiết kế và chạy nó trên FPGA.

  • Có thể kiểm tra hoạt động của CPU bằng Testbench và mô phỏng theo từng lệnh.

là một khóa học hiếm có, trong đó bạn trực tiếp thiết kế CPU RISC-V và vận hành trên FPGA

Hiểu cấu trúc CPU trên lý thuyết và tự mình thiết kế một CPU hoạt động thực tế là hai trải nghiệm hoàn toàn khác nhau.

Khóa học này không phải là quá trình chạy thử khối CPU Block Box hoàn chỉnh trên FPGA. Bắt đầu từ câu hỏi các lệnh RISC-V được thực thi như thế nào trên phần cứng thực tế, khóa học sẽ từng bước suy ra cấu trúc phần cứng cần thiết và trực tiếp hiện thực hóa chúng dưới dạng White Box bằng Verilog RTL.

Mục tiêu là hoàn thiện CPU TinyRV32I 32 bit với cấu trúc pipeline 5 tầng và trực tiếp chạy chương trình trên FPGA Arty S7-25.


Tại sao lại bắt đầu với 14 lệnh trong số 40 lệnh RV32I?

Điều quan trọng là phải hiểu chính xác cấu trúc cốt lõi của CPU và tự hoàn thiện nó, thay vì triển khai nhiều lệnh ngay từ đầu.

Trong quá trình này, chúng ta sẽ lựa chọn 14 lệnh cần thiết để học các hoạt động cốt lõi của CPU như phép toán số học và logic, truy cập bộ nhớ, nhánh, trong số 40 lệnh RV32I, và triển khai TinyRV32I.

TinyRV32I không phải là CPU bị rút gọn độ rộng dữ liệu. Đây là CPU vẫn hoàn toàn duy trì dữ liệu và địa chỉ 32 bit, 32 thanh ghi đa dụng cùng cấu trúc pipeline 5 giai đoạn, chỉ giới hạn phạm vi các lệnh được hỗ trợ vì mục đích giáo dục.

Do đó, đây không phải là việc làm theo một ví dụ đơn giản hóa, mà là quá trình hoàn thiện từng bước các cấu trúc cốt lõi của thiết kế CPU thực tế.


Triển khai CPU pipeline 5 tầng bằng RTL

Quá trình thực thi lệnh được chia thành năm giai đoạn sau và triển khai bằng phần cứng thực tế.

  • Nạp lệnh

  • Giải mã lệnh

  • Thực thi

  • Truy cập bộ nhớ

  • Ghi vào thanh ghi

Từng bước triển khai từ các khối cơ bản như Program Counter, Register File, Immediate Generator, Decoder, ALU cho đến Pipeline Register, điều khiển Branch, xử lý Hazard, Stall và Flush.

Không chỉ học từng khối một cách độc lập, bạn sẽ kết nối cách dữ liệu và tín hiệu điều khiển di chuyển trong toàn bộ CPU để hoàn thiện thành một bộ xử lý duy nhất.


Kết nối cả bộ nhớ và thiết bị ngoại vi FPGA

Không chỉ triển khai lõi CPU rồi dừng lại.

Triển khai cấu trúc bộ nhớ cho Load và Store, đồng thời sử dụng Memory-Mapped I/O để kết nối CPU với Switch, Button và LED trên bo mạch FPGA.

Qua đó, bạn sẽ trải nghiệm quá trình các lệnh không chỉ được thực thi trong mô phỏng mà còn điều khiển các ngõ vào/ra thực tế của FPGA.


Tiến hành thiết kế và kiểm chứng cùng nhau

Việc thiết kế CPU không kết thúc chỉ với việc viết mã RTL.

Từng khối chức năng được kiểm chứng từng bước bằng Testbench và mô phỏng, sau đó tích hợp toàn bộ CPU để xác nhận chương trình thực tế có được thực thi chính xác hay không.

Qua đó, bạn sẽ không chỉ học các cú pháp Verilog đơn thuần mà còn được trải nghiệm quy trình thiết kế phần cứng gồm thiết kế RTL, kiểm chứng và truy tìm lỗi.


Cung cấp toàn bộ mã nguồn cần thiết để chế tạo và thực hành với CPU

Cung cấp đầy đủ các tệp thực hành được sử dụng trong khóa học, giúp học viên có thể tự mình tái hiện và chỉnh sửa thiết kế.

  • Verilog RTL

  • Testbench

  • Chương trình Assembly

  • Ảnh bộ nhớ

  • Tệp ràng buộc FPGA

  • Tài liệu thực hành cần thiết cho việc triển khai FPGA

Bạn không chỉ xem kết quả hoàn thiện mà còn có thể trực tiếp kiểm tra và chỉnh sửa mã nguồn để tìm hiểu hoạt động bên trong của CPU.


Cuối cùng, bạn sẽ chạy chương trình trên FPGA thực tế

Sau khi tổng hợp và triển khai TinyRV32I hoàn chỉnh trên Vivado, bạn sẽ tạo Bitstream và nạp trực tiếp vào FPGA Arty S7-25 nhẹ, phổ thông. Đồng thời, bạn sẽ kiểm tra CPU do chính mình thiết kế có thể thực thi chương trình thực tế, nhận đầu vào từ bo mạch FPGA và xuất ra kết quả. (Có thể sử dụng các bo mạch khác như Zybo-Z7; chỉ cần sửa ánh xạ chân xdc)

Toàn bộ quy trình được kết nối như sau.

Lệnh RISC-V → Kiến trúc CPU → Datapath → Đường ống 5 tầng → Verilog RTL → Xác minh Testbench → Tích hợp CPU → Chuẩn bị chương trình → Tổng hợp Vivado → Thực thi trên FPGA


tiếp nối thành chuỗi thiết kế CPU tiêu chuẩn với 40 lệnh

Khóa học này không kết thúc chỉ với một bài thực hành đơn lẻ, mà là một phần của chuỗi thiết kế CPU RISC-V được mở rộng theo từng giai đoạn.

Volume 1 Cấu trúc và thực thi lệnh RV32I

Volume 2 TinyRV32I · đường ống 5 tầng và triển khai trên FPGA ← Bạn đang ở đây

Volume 3 CPU tiêu chuẩn · 40 lệnh và điều khiển hazard

Volume 4 Tầm nhìn · NPU SoC · Tích hợp camera và bộ tăng tốc

Bắt đầu từ việc hiểu các lệnh, tự xây dựng CPU và mở rộng lên Full RV32I.


Mục tiêu của khóa học này không phải là trở thành người sử dụng CPU hoàn chỉnh, mà là xây dựng năng lực kỹ thuật để hiểu cấu trúc bên trong của CPU và trực tiếp thiết kế, kiểm chứng bằng RTL.

Hãy thử thách bản thân. Khi kết thúc quá trình trực tiếp đưa mã lên bo mạch và kiểm tra kết quả này, bạn sẽ nâng tầm thành một kỹ sư phần cứng với góc nhìn hoàn toàn khác trước.

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

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

  • Sinh viên kỹ thuật đã học lý thuyết về kiến trúc máy tính nhưng chưa có kinh nghiệm thiết kế CPU thực tế

  • Nhà phát triển nhúng muốn trực tiếp triển khai và xác minh kiến trúc RISC-V trên FPGA

  • Người học đã học Verilog nhưng chưa từng tự mình xây dựng một hệ thống hoàn chỉnh, chất lượng cao.

  • Người học đang chuẩn bị xin việc trong lĩnh vực thiết kế bán dẫn và thiết kế kỹ thuật số, cần có hồ sơ năng lực (portfolio)

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

  • Các khái niệm cơ bản về mạch logic số và kiến trúc máy tính (thanh ghi, ALU, bộ nhớ)

  • Kinh nghiệm về cú pháp cơ bản của Verilog HDL và viết các mô-đun đơn giản

  • Tìm hiểu cơ bản về tập lệnh RISC-V hoặc học Volume 1 của series (Thiết kế CPU RISC-V để triển khai trên FPGA ① Tìm hiểu cấu trúc và nguyên lý thực thi lệnh RV32I bằng Python)

Xin chào
Đây là EdgeChipLab

Xác minh sự nghiệp

"Trong thời đại AI, cách ứng phó chắc chắn nhất là tự mình chế tạo chất bán dẫn AI."

Quá trình này không phải là các bài giảng đại học thông thường lấy lý thuyết làm trọng tâm, cũng không phải chương trình đào tạo được chuẩn hóa của các khoa liên kết doanh nghiệp chỉ dừng ở việc đáp ứng những yêu cầu đặc thù về thông số. Ngoài ra, chương trình cũng không chỉ dừng lại ở kinh nghiệm sử dụng công cụ EDA hay khai thác thư viện như các hội thảo thực tiễn rời rạc hiện nay.

Khởi đầu với vai trò nhà nghiên cứu chất bán dẫn hệ thống tại Bộ phận DS của Samsung Electronics, giành Giải Bạc Giải thưởng Công nghệ Samsung (Giải thưởng của Chủ tịch Tập đoàn) trong lĩnh vực tự động hóa thiết kế, đồng thời từng đảm nhiệm vị trí Director tại các pháp nhân ở Anh và Đức cũng như Trưởng nhóm Tiếp thị & Kinh doanh System LSI, đây là khóa học thực tiễn độc đáo do một giáo sư kỹ thuật đang hành nghề với 30 năm kinh nghiệm trực tiếp thiết kế và kiểm chứng trên FPGA.

[ Điểm khác biệt cốt lõi dành cho nhân sự đang làm việc trong ngành & kỹ sư tương lai ]

  • Vượt qua giới hạn của kỹ sư đang làm việc trong ngành: Không chỉ dừng lại ở việc chỉnh sửa mã hoặc sử dụng IP có sẵn, bạn sẽ xây dựng năng lực thực tiễn ở cấp độ kiến trúc để trực tiếp thiết kế NPU và CPU bằng RTL.

  • Xây dựng quy trình thực hành Full-Flow: Hoàn thiện toàn bộ chuỗi giá trị từ phân tích thuật toán AI đến triển khai FPGA và kiểm chứng tích hợp phần cứng Bit-True, rồi mở rộng SoC AI dựa trên CPU + NPU + RTOS.

  • Đã được kiểm chứng thực tế: Vượt ra ngoài lý thuyết trong giảng đường đại học, khóa học chắt lọc những bí quyết thiết kế từ tuyến đầu ngành và cung cấp quy trình đã được kiểm chứng, có thể áp dụng ngay vào thực tế.

Thuật toán AI → Thiết kế RTL → Triển khai FPGA → Xác minh Bit-True → SoC AI

Không chỉ dành cho sinh viên đại học và học viên cao học, khóa học còn cung cấp hướng dẫn thực chiến tốt nhất, không thể thay thế, cho cả những người đang đi làm mong muốn vươn lên trở thành nhà thiết kế chất bán dẫn AI/SoC thế hệ tiếp theo.

 

Từ lý thuyết đến triển khai phần cứng AI thực tế

Chỉ với những kiến thức rời rạc và manh mún thì khó có thể đạt được năng lực thiết kế chất bán dẫn AI ở cấp độ hệ thống.

Học viên không chỉ dừng lại ở việc sử dụng các IP hộp đen đã hoàn thiện. Mục tiêu là từng bước trang bị năng lực thiết kế hệ thống, bao gồm tự thiết kế AI NPU và CPU RISC-V, tích hợp bộ nhớ và các thiết bị ngoại vi, port RTOS trên đó, và cuối cùng có thể xây dựng SoC AI của riêng mình.

Bắt đầu từ nền tảng về transistor và mạch kỹ thuật số, khóa học kết nối các kiến thức này qua FPGA, CPU, NPU, cho đến phần cứng tăng tốc Transformer và LLM.

 

Kiểm chứng kết quả nghiên cứu trên phần cứng FPGA thực tế.

Đây không phải là một khóa học chỉ để xem bằng mắt. Không dừng lại ở lý thuyết hay mô phỏng đơn thuần, bạn sẽ cho mạch bán dẫn AI do chính mình thiết kế hoạt động trên FPGA thực tế và thực hiện kiểm chứng Bit-True, trong đó kết quả của mô hình Python và RTL khớp nhau đến từng bit.

Kết nối các kết quả nghiên cứu, bao gồm 4 bài báo được đăng trên KCI của giảng viên về AI bán dẫn, FPGA và RISC-V, với nội dung đào tạo, từ đó đưa các công nghệ đã được kiểm chứng trong nghiên cứu vào thiết kế thực tế và triển khai trên FPGA. Chúng tôi công khai mã nguồn cần thiết cho phần thực hành, bao gồm CPU RISC-V do chính chúng tôi phát triển, mã Python dùng để huấn luyện hình ảnh và Verilog RTL.

Được xây dựng xoay quanh bo mạch FPGA Arty S7-25 phổ thông và công cụ thiết kế Vivado miễn phí, khóa học giúp người học có thể tự mình tái hiện toàn bộ quy trình từ thiết kế, triển khai đến kiểm chứng. Ngoài ra, khóa học cũng có thể sử dụng trên các bo mạch FPGA của Digilent, bao gồm cả Zybo Z7. Bạn chỉ cần điều chỉnh ánh xạ chân XDC (bo mạch) và các tham số chia tần số xung nhịp (RTL) cho phù hợp với bo mạch. Đối với khóa học 'NPU MNIST được xây dựng bằng FPGA', chỉ cần điều chỉnh ánh xạ chân XDC; còn các khóa học sử dụng OLED và Camera thì cần điều chỉnh các tham số chia tần số xung nhịp (RTL).

→ Phần thực hành của khóa học được thiết lập các tham số chia tần dựa trên xung nhịp đầu vào 100 MHz của Arty S7. Vì các bo mạch khác có xung nhịp đầu vào khác nhau (ví dụ: Zybo Z7 là 125 MHz), bạn cần tính lại giá trị chia tần để tần số mục tiêu vẫn giữ nguyên. Nếu bỏ qua phần này, màn hình hoặc video sẽ không hiển thị bình thường, vì vậy rất dễ nhầm là lỗi mã. Vui lòng kiểm tra.

 

Lộ trình full-stack liền mạch: từ nền tảng đến bộ tăng tốc mini LLM

Tất cả các bài giảng không phải là những mảnh ghép rời rạc, mà là hành trình hoàn thiện một hệ thống khổng lồ.

  • Step 1: Cơ bản về lý thuyết AI và xử lý hình ảnh (bao gồm Machine Learning)

  • Step 2: Thiết kế và kiểm chứng bộ tăng tốc AI (NPU) (bao gồm Machine Learning)

  • Bước 3: Thiết kế CPU RISC-V và tích hợp hệ thống

  • Bước 4: Triển khai SoC AI nâng cao và mở rộng thành nền tảng tăng tốc mini LLM (liên tục cập nhật nội dung)

     

 

Các chỉ số kiểm chứng khách quan

Tất cả sản phẩm thiết kế của khóa học này đều đã trải qua quá trình kiểm chứng nghiêm ngặt theo các tiêu chuẩn toàn cầu và giới học thuật.

  • Kiểm chứng kiến trúc RISC-V: CPU RISC-V do chúng tôi tự phát triển đã vượt qua bài kiểm tra tuân thủ chính thức (ACT) của quỹ quốc tế và công khai mã nguồn (GitHub)

  • Uy tín học thuật: 4 bài báo học thuật với tư cách tác giả duy nhất (đăng trên tạp chí học thuật danh tiếng IJIBC được KCI xếp hạng A)

  • Được công nhận trên toàn cầu: Đã xuất bản 4 cuốn sách kỹ thuật trên Amazon toàn cầu (đạt vị trí số 1 về doanh số bán chạy nhất)


    Sách đã xuất bản: Roger Kim: sách, tiểu sử, cập nhật mới nhất

  • Hoàn tất xác minh hoạt động thực tế: Các IP cốt lõi như CPU RV32I, NPU, hệ thống thị giác, GPS, Transformer, SoC AURA-Edge đã hoạt động hoàn hảo trong môi trường Arty S7

     

Hãy thử thách bản thân. Khi hoàn thành quá trình tự mình tải mã lên bo mạch và kiểm tra kết quả này, bạn sẽ nâng cấp thành một kỹ sư phần cứng với góc nhìn hoàn toàn khác trước.

Thêm

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

Tất cả

10 bài giảng ∙ (3giờ 30phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

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

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!