ĐỀ CƯƠNG KHÓA HỌC

THIẾT KẾ VI MẠCH NÂNG CAO

1. Tổng quan nội dụng: Chương trình “thiết kế vi mạch nâng cao” bao gồm hai phần chính:

a) Lý thuyết thiết kế nâng cao:- Tìm hiểu về cấu trúc vi xử lý RISC-V và HAPS

  • Học về cấu trúc RISC-V
  • Chuyên sâu về sử dụng HAPS-80

b) Thực hành thiết kế:- Thực nghiệm cấu trúc RISC-V trên HAPS-80

2. Thời lượng khóa học: 40 tiết.

3. Mục tiêu khóa học:

– Kiến thức: Nắm được kiến thức nâng cao về thiết kế, phát triển các thiết bị vi điện tử đang được sử dụng ngày nay- Kỹ năng: Sử dụng thành thạo công cụ khả trình phần cứng HAPS-80- Thái độ, chuyên cần: Nâng cao tính tích cực trong học và tự học

4. Đối tượng tham gia khóa học: Tốt nghiệp đại học (hoặc sinh viên năm cuối) các ngành điện, điện tử, kỹ thuật máy tính, công nghệ thông tin

5. Yêu cầu kiến thức: Người học cần có các kiến thức cơ bản về điện tử số, kiến trúc máy tính, cấu kiện điện tử, thiết kế lô-gic số, tư duy lập trình

6. Kỹ năng đạt được sau khóa học:

– Tư duy thiết kế kiến trúc RISC-V- Sử dụng thành thạo các công cụ khả trình phần cứng HAPS-80

CHƯƠNG TRÌNH KHUNG

STT TÊN CHUYÊN ĐỀ NỘI DUNG SỐ TIẾT
1

Unit 1: Tổng quan về hệ thống HAPS Prototype

Unit 2: Tổng quan về hệ thống phần cứng HAPS

  • Quy trình thiết kế FPGA và ASIC; Chuyển thiết kế ASIC sang nguyên mẫu trên FPGA; Các IPs phổ biến trong thiết kế ASIC; Các IPs phổ biến trong thiết kế FPGA; Chuyển đổi các thiết kế có kỹ thuật chặn clock; Kinh nghiệm thiết kế với hệ thống HAPS
  • Sản phẩm và giải pháp công nghệ với HAPS; Các họ trong HAPS; HAPS-SX, HAPS-80, HAPS-70; Sơ đồ thiết kế Clock; Bộ kết nối HapsTrack 3 (HT3); Module điều khiển; UMRBus; Các bo mạch mở rộng và dây nối
4
2

Unit 3: Quy trình thiết kế với Protocompiler

Unit 4: Cơ sở chuẩn bị cho thiết kế và hệ thống

  • Tổng quan về quy trình thiết kế; Khái niệm về cơ sở dữ liệu; Quy trình phân tách thiết kế; Quy trình tổng hợp thiết kế; Giao diện đồ họa người dùng; Lab1: Phân tách thiết kế và tổng hợp phần cứng với một thiết kế đơn giản
  • Đặc tả của hệ thống mục tiêu (TTS: Target System Specification); Biên dịch thiết kế; Cài đặt Protocompiler; Tiền phân tách thiết kế; Ước lượng chi phí không gian; Ước lượng chi phí không gian thực thi; Các ràng buộc của thiết kế; Lab2: Tạo ra TSS
4
3

Unit 5: Cơ sở phân tách thiết kế

Unit 6: Phân tách hệ thống nâng cao (tùy chọn)

  • Khái niệm về phân tách tự động; Các bước để phân tách; Định tuyến cho phân tách/hệ thống; Ràng buộc cho phân tách (PCF: Partitioning constraint); Các lệnh dùng cho PCF
  • Ghép kênh phân chia thời gian (TDM: Time-Division Multiplexing); TDM trên hệ thống HAPS-70/HAPS-80; Xử lý reset/đồng bộ; Phương pháp phân tách; Chiến lược phân tách; Định tuyến cho hệ thống; Lab3: Phương pháp phân tách
4
4

Unit 7: Tạo hệ thống (tùy chọn)

Unit 8: Cơ sở về tổng hợp phần cứng

  • Quy trình để tạo hệ thống; Phân bố thời gian; Các ràng buộc của TDM; Quy trình mô phỏng sau phân tách
  • Các lệnh đề tổng hợp phần cứng trong Protocompiler; Thiết lập môi trường; Quy trình để tổng hợp phần cứng; Tiền ánh xạ/ánh xạ/Đặt và định tuyến; Các file riêng cho Protocompiler; Lab4: Tổng hợp độc lập cho FPGA
4
5

Unit 9: Tổng hợp phần cứng nâng cao (tùy chọn)

Unit 10: Cơ sở về gỡ lỗi (debug)

  • Kết quả tổng hợp phần cứng; Các tùy chọn để ánh xạ; Kỹ thuật đường ống; Kỹ thuật để tối ưu hóa thời gian; Chuyển đổi clock
  • Quy trình để gỡ lỗi; Quy trình trên hệ thống FDGA đơn; Quy trình trên hệ thống đa FDGA; Môi trường thực thi của Confpro & Protocompiler; Các ràng buộc thiết kế với thiết bị; Các bước để gỡ lỗi
4
6

Unit 11: Gỡ lỗi nâng cao (tùy chọn)

Unit 12: Khởi động hệ thống

  • Các thiết bị và gỡ lỗi nâng cao; Các kỹ thuật kích hoạt nâng cao; Gỡ lỗi với truy vấn sâu; Lab5: Gỡ lỗi nâng cao với hệ thống đa FPGA và quy trình phân tách/tổng hợp
  • Chế độ khởi động của bo mạch; Thiết lập Confpro; Các bước kiểm thử bo mạch; Bài tập thực tế; Kiểm thử trực tiếp trên mạch
4
7

Unit 13: Tạo nguyên mẫu của hệ thống RISC-V sử dụng HAPS (giới thiệu)

  • Giới thiệu về RISC-V; Bộ Kit phát triển phần mềm; Mô phỏng mức hành vi của hệ thống; Môi trường làm việc; Lab: Mô phỏng một hệ thống RISC-V
4
8

Unit 14: Tạo các IPs cho nguyên mẫu

  • Sử dụng các IP của Xilinx Vivado: Bộ nhớ khởi tạo bộ nhớ, MIG IPS; Sử dụng các IP riêng của Synopsys (yêu cầu license cho các IPs): Xactor, UMRBus; Kết nối các IP của Xilinx, Synopsys; Lab: Tạp MIG IPs
4
9

Unit 15: Mô phỏng hệ thống RISC-V

  • Mô phỏng sử dụng VCS; Mô phỏng của hệ thống nguyên mẫu với IP của Xilinx và Synopsys; Lab: Mô phỏng của hệ thống RISC-V với các IPs khác nhau
4
10

Unit 16: Thực thi hệ thống RISC-V

Unit 17: Kiểm thử và gõ lỗi

  • Chuẩn bị môi trường thực thi; Chạy protocompier để tạo ra bit stream; Lab: Thực thi hệ thống
  • Lập trình cho FPGA; sử dụng JTAG để lập trình phần mềm; Kiểm thử lần cuối và gỡ lỗi; Kiểm thử hệ thống với phần cứng và phần mềm
4