Thiết kế CPU RISC-V để triển khai FPGA ③ Tự xây dựng CPU hoàn chỉnh với 40 lệnh RV32I
Khi học về CPU và RISC-V, bạn có thể hiểu được chức năng của các lệnh nhưng lại gặp khó khăn ở những câu hỏi như: “Các lệnh này được thực thi như thế nào trên phần cứng thực tế?” và “Làm thế nào để xác nhận CPU do chính mình thiết kế thực sự hoạt động đúng?”. Nhiều tài liệu trên thị trường chỉ dừng ở việc giải thích ISA hoặc các ví dụ CPU đơn giản; trong nhiều trường hợp, người học cũng chỉ sử dụng các IP hoàn thiện. Vì vậy, không dễ để trải nghiệm toàn bộ quá trình tự thiết kế, xác minh CPU và chạy chương trình trên FPGA thực tế. Tôi đã có nhiều năm kinh nghiệm nghiên cứu, phát triển và kinh doanh trong lĩnh vực bán dẫn hệ thống, đồng thời hiện đang giảng dạy về thiết kế bán dẫn và FPGA tại trường đại học. Qua đó, tôi nhận thấy rõ khoảng cách trong quá trình học tập này. Vì vậy, khóa học được xây dựng không theo phương pháp cung cấp một CPU hoàn thiện rồi chỉ kiểm tra hoạt động, mà bắt đầu từ câu hỏi “Cần có những phần cứng nào để thực thi các lệnh RV32I?”, từ đó trực tiếp thiết kế cấu trúc CPU theo phương pháp White Box. Trong Volume 3, dựa trên TinyRV32I của Volume 2, chúng ta mở rộng thành CPU 32-bit Full-Version sử dụng 40 lệnh RV32I. Data path, Decoder, Branch·Jump và Byte/Halfword Memory Access được mở rộng; đồng thời triển khai Forwarding và Load-Use Interlock để Pipeline 5 tầng có thể tự xử lý các phụ thuộc dữ liệu. Tiếp đó, bằng cách tích hợp CSR, Exception, Interrupt, Trap và MRET, chúng ta hoàn thiện một CPU có khả năng xử lý không chỉ việc thực thi chương trình thông thường mà cả các ngoại lệ và sự kiện bên ngoài. Quá trình thiết kế không kết thúc ở RTL Simulation. Chúng ta sẽ thực thi chương trình thực tế trên CPU, so sánh kết quả với Spike Reference Model, đồng thời học về mục đích cũng như quy trình thực hiện và đánh giá của RISC-V Architecture Compatibility Test thông qua các trường hợp xác minh thực tế. Cuối cùng, CPU đã được xác minh sẽ được triển khai trên FPGA Arty S7-25, nhận đầu vào từ Switch và Button, thực thi chương trình và kiểm tra kết quả được xuất ra LED. Vấn đề mà khóa học này hướng tới không đơn giản chỉ là biết thêm nhiều lệnh RISC-V. Mục tiêu là kết nối các bước từ lệnh → kiến trúc CPU → Verilog RTL → điều khiển Pipeline → thực thi chương trình → xác minh dựa trên tiêu chuẩn → hoạt động thực tế trên FPGA thành một quy trình thống nhất, giúp học viên hiểu một cách căn bản cấu trúc bên trong CPU và hình thành năng lực kỹ thuật để tự thiết kế, xác minh CPU.
1 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

