Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
0,98 MB
Nội dung
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH BÁO CÁO ĐỒ ÁN Ngành: KỸ THUẬT ĐIỆN – VIỄN THƠNG Chun ngành: MÁY TÍNH – HỆ THỐNG NHÚNG ĐỀ TÀI: KIẾN TRÚC RISC-V Giảng viên: Ths.Hoàng Anh Tuấn Sinh viên thực Nguyễn Hữu Ân Hồng Văn Nhật Anh Võ Văn Chính Nguyễn Cơng Danh Khổng Văn Đạt TP Hồ Chí Minh, năm 2022 KIẾN TRÚC RISC-V MỤC LỤC I Giới thiệu Lịch sử Sự hình thành RISC-V Trạng thái đặc điểm kỹ thuật .5 II TỔNG QUAN VỀ RISC-V Quy ước đặt tên RISC-V ISA Phần mở rộng tiêu chuẩn .6 Tập tin ghi Chế độ RISC-V III Hướng dẫn RISC-V RISC-V Reference So sánh kích thước mã RISC-V ARM 12 Phần mở rộng nguyên tử theo tiêu chuẩn “A” (Atomic Instructions) 13 IV 3.1 Hoạt động nhớ nguyên tử 13 3.2 Các hướng dẫn tải - dự trữ/ lưu trữ có điều kiện 15 Hướng dẫn hàng rào (Fence instructions) 17 Ngắt RISC-V 18 Khái niệm Ngắt 18 Ngắt vào Thoát .18 Thanh ghi trạng thái điều khiển ngắt 19 3.1 Thanh ghi trạng thái máy (mstatus) 19 HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V 3.2.Thanh ghi cho phép ngắt 3.3.Thanh ghi chờ xử lý 3.4.Thanh ghi nguyên nhân m 3.5.Máy Bẫy Vector (mtvec) 4.Các ưu tiên ngắt quãng V Thanh Ghi Điều Khiển Và Thanh Ghi Trạng Thái 1.Thanh ghi điều khiển trạng thái (CSRs) 2.Nhận dạng ghi điều khiển trạng thái (CSRs) 3.Trạng thái máy 4.Bộ định thời CSRs 5.Bộ giám sát CSRs 6.Bộ nhớ ảo 7.Bảo vệ nhớ vật lý HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V Giới thiệu Lịch sử - Thuật ngữ RISC (Reduced Instructions Set Computer - Máy tính với tập lệnh đơn giản hóa) có từ khoảng năm 1980 Trước đó, có số kiến thức cho máy tính đơn giản hiệu quả, nguyên tắc thiết kế không mơ tả rộng rãi Máy tính đơn giản, hiệu quan tâm giới học thuật, dẫn đến hướng dẫn RISC DLX cho ấn kiến trúc máy tính Phương pháp tiếp cận định lượng vào năm 1990, David Patterson đồng tác giả sau ơng tham gia vào RISC- V duyên khởi DLX thiết kế để sử dụng cho mục đích giáo dục; nhà học thuật người có sở thích triển khai cách sử dụng mảng cổng lập trình trường, khơng thực dự định để triển khai thương mại CPU ARM , phiên trở trước, có tập lệnh miền công cộng hỗ trợ Bộ sưu tập trình biên dịch GNU (GCC), trình biên dịch phần mềm miễn phí phổ biến Ba lõi nguồn mở tồn cho ISA này, chưa sản xuất OpenRISC ISA mã nguồn mở dựa DLX, với thiết kế RISC liên kết hỗ trợ đầy đủ với triển khai GCC Linux , có triển khai thương mại - RISC – V (phát âm Risk V) bắt đầu dự án tháng vào năm 2010 trường Đại học California Berkeley nhóm nghiên cứu sinh Yunsup Lee Andrew Waterman, Krste Asanovic Kế hoạch hỗ trợ người dùng học thuật công nghiệp David Patterson Berkeley tham gia hợp tác với tư cách người khởi xướng Berkeley RISC, RISC-V hệ thứ năm tên loạt dự án nghiên cứu hợp tác dựa RISC kéo dài ông Ở giai đoạn này, sinh viên cung cấp phần mềm, mô thiết kế CPU ban đầu Các tác giả RISC-V tổ chức họ ban đầu lấy nguồn tài liệu ISA số thiết kế CPU theo giấy phép BSD , cho phép tác phẩm phái sinh chẳng hạn thiết kế chip RISC-V - mở miễn phí, đóng độc HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V quyền Bản thân đặc tả ISA (tức bảng mã tập lệnh) xuất vào năm 2011 dạng mã nguồn mở, với quyền bảo lưu Báo cáo kỹ thuật thực tế (một biểu thông số kỹ thuật) sau cấp phép Creative Commons phép nhà đóng góp bên ngồi nâng cao thơng qua RISC-V Foundation sau RISC-V International Sự hình thành RISC-V - Là tổ chức phi lợi nhuận thành lập vào tháng năm 2015 để quản lý cơng khai ISA, tiêu chuẩn hóa, bảo vệ thúc đẩy kiến trúc tập lệnh RISC-V mở miễn phí với hệ thống phần cứng phần mềm để sử dụng tất thiết bị máy tính -RISC-V Foundation có chức chính: Chỉ đạo phát triển tương lai ISA Kiểm tra tuân thủ (kiểm tra phù hợp) kỹ thuật kiểm tra phi chức thực để xác nhận xem hệ thống phát triển có đáp ứng tiêu chuẩn quy định tổ chức hay không Quảng bá kiến trúc kiện ngành -Tổ chức có 230 thành viên đại diện cho loạt thị trường - Tính đến năm 2019, tổ chức xuất ấn phẩm tự định nghĩa RISC-V cho phép sử dụng không giới hạn ISA cho thiết kế phần mềm phần cứng Tuy nhiên, thành viên trả tiền Tổ Chức RISCV bỏ phiếu để phê duyệt thay đổi sử dụng logo tương thích đăng ký nhãn hiệu - Thành viên RISC-V Foundation: Các thành viên Qualcomm Samsung Marbella, có đại diện từ công ty phần mềm với công ty Google, công cụ Picasa nhà cung cấp thiết bị hỗ trợ với công ty Sega, Lauterbach IAR HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V Hình 1: Các thành viên RISC-V Foundation Trạng thái đặc điểm kỹ thuật -Có số đặc điểm kỹ thuật user mode and privilege mode User mode: phiên đặc tả User mode phiên 2.2, bị đóng băng vào năm 2014 phiên 2.0 kể từ phiên 2.0, số cập nhật nhỏ hướng dẫn CSR FENCE.I chuyển khỏi phần mở rộng sở "I", số giải thích rõ mơ hình nhớ Privilege mode: phê duyệt phiên 1.11 Thông số Debug: phê chuẩn phiên 0.13 Ngoài thơng số kỹ thuật cịn có thơng số kỹ thuật phụ phát triển * ******* Hình 2: Trạng thái đặc điểm kỹ thuật HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V TỔNG QUAN VỀ RISC-V Quy ước đặt tên RISC-V ISA - RISC-V sử dụng tiêu chuẩn quy ước đặt tên để mô tả ISA hỗ trợ triển khai định -Tên ISA định dạng: RV[###][abc…xyz] RV: viết tắtt RISC-V [###]: cho biết chiều rộng tệp ghi số ngun kích thước khơng gian địa người dùng [abc…xyz]: sử dụng để tập hợp tiện ích mở rộng hỗ trợ trình thực thi Phần mở rộng tiêu chuẩn - Phần mở rộng xác định hướng dẫn: "I" cho số nguyên phần mở rộng bắt buộc triển khai RISC-V xác định 40 hướng dẫn - Đặc điểm kỹ thuật RISC-V xác định số "Phần mở rộng Tiêu chuẩn" Tiện ích mở rộng tiêu chuẩn RISC-V Foundation xác định tùy chọn - RISC-V cho phép tiện ích mở rộng tùy chỉnh, "Non-Standard", triển khai Hình 3: Mô tả phần mở rộng HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V - Ví dụ: Tập tin ghi -RV32I / 64I có 32 ghi số nguyên Thanh ghi 32 FP tùy chọn với phần mở rộng F D RV32E giảm tệp ghi xuống 16 ghi số nguyên cho thiết bị nhúng hạn chế khu vực -Chiều rộng ghi xác định ISA - RISC-V Application Binary Interface (ABI) xác định chức tiêu chuẩn cho ghi Cho phép khả tương tác phần mềm -Các công cụ phát triển thường sử dụng tên ABI cho đơn giản Hình 4: Tập tin ghi HỆ THỐNG NHÚNG 32 ghi, ghi 32 bit x0 có dây đến khơng Ghi cổng lập mục qua RW giảm dần WE = KIẾN TRÚC RISC-V Đọc cổng lập mục qua RA, RB Được đánh số từ đến 31 Có thể gọi số: x0, x1, x2,… x31 Quy ước, ghi có tên: x10 – x17 a0 - a7, x28 - x31 t3 - t6 Hình 5,6: Tập tin ghi Chế độ RISC-V -RISC-V có ba mức đặc quyền phần mềm (theo thứ tự khả tăng dần): Chế độ người dùng (U mode) Chế độ người giám sát (S mode) Chế độ siêu giám sát (H mode) Chế độ máy (M mode) Hình 7: RISC-V Modes -Bộ xử lý chạy chế độ đặc quyền thời điểm - Machine mode chế độ đặc quyền cao nhất, kiểm soát tất tài nguyên vật lý ngắt chế độ yêu cầu Tính linh hoạt cho phép loạt triển khai có mục đích từ MCU đơn giản đến Bộ xử lý ứng dụng hiệu suất cao HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V Hình 8: Mức độ hỗ trợ mode - Supervisor, Hypervisor, Machine mode có ghi điều khiển ghi trạng thái Hướng dẫn RISC-V RISC-V Reference - Bộ hướng dẫn RISC-V: Định dạng hướng dẫn cốt lõi: 31 27 26 funct7 imm[11:5] imm[12j10:5] imm[20 Inst Hướng dẫn số nguyên sở: Name add ADD sub xor or and sll srl sra slt sltu addi xori ori andi slli srli srai slti sltiu lb SUB XOR OR AND Shift Left Logical Shift Right Logical Shift Right Arith* Set Less Than Set Less Than (U) ADD Immediate XOR Immediate OR Immediate AND Immediate Shift Left Logical Imm Shift Right Logical Imm Shift Right Arith Imm Set Less Than Imm Set Less Than Imm (U) Load Byte HỆ THỐNG NHÚNG KIẾN TRÚC RISC-V mip phản ánh trạng thái chờ xử lý ngắt cho Hart Các ngắt riêng biệt cho mức đặc quyền hỗ trợ (M/S/U) Tính tùy chọn xử lý ngắt mức người dùng (“IN”) chế độ U có mặt Thanh ghi nguyên nhân máy (mcause) Khi bẫy đưa vào chế độ M, mcause viết với mã cho biết kiện gây bẫy Bit ngắt ghi mcause đặt bẫy ngắt gây Trường Mã ngoại lệ chứa mã xác định ngoại lệ cuối Bits Field Name Exception [62:0] Code 63 Interrupt Bảng 3.4 Thanh ghi mcause Bit cao mcause Mã ngoại lệ đưa nguyên nhân ngắt Cũng phải kiểm sốt PLIC, bên ngồi ngắt HỆ THỐNG NHÚNG 20 KIẾN TRÚC RISC-V Máy Bẫy Vector (mtvec) mtvec nắm giữ địa mà tất ngắt bẫy đến ISR địa bẫy có trách nhiệm đọc giá trị bẫy xử lý bẫy tương ứng cách thích hợp RISC-V hỗ trợ vectơ ngắt Khi vectơ bật, ngắt khiến PC đặt thành địa trường BASE cộng với bốn lần số nguyên nhân ngắt Điều cho phép tất ngắt cục để bẫy trình xử lý bẫy độc quyền Ngắt đánh dấu kích hoạt trường MODE ghi mtvec đặt thành Field Bits Name [1:0] MODE [63:2] BASE Bảng 3.5.1 Thanh ghi mtvec Value Name Direct Vectored ≥2 Reserve d Bảng 3.5.2 Mã h HỆ THỐNG NHÚNG 21 KIẾN TRÚC RISC-V Direct: tất ngoại lệ ngắt chuyển đến sở Vectored: ngoại lệ sở, ngắt Vectored Các ưu tiên ngắt quãng Các ưu tiên riêng lẻ cố gián đoạn toàn cầu PLIC xác định: Các ngắt cục ưu tiên sau, theo thứ tự ưu tiên giảm dần: Ngắt Ngắt phần mềm Ngắt thời gian Thanh Ghi Điều Khiển Và Thanh Ghi Trạng Thái Thanh ghi điều khiển trạng thái (CSRs) RISC-V ISA tiêu chuẩn dành cho mã hóa 12bit (csr [11: 0]) cho tối đa 4.096 CSRs Theo quy ước, 4bit địa CSRs (csr [11: 8]) sử dụng để mã hóa việc đọc ghi khả tiếp cận CSRs theo mức đặc quyền Bảng 5.1 Hai bit (csr [11:10]) cho biết ghi đọc/ghi (00, 01 10) hay đọc (11) Tiếp theo hai bit (csr [9: 8]) mã hóa mức đặc quyền truy cập CSRs Quy ước địa CSRs sử dụng bit lớn địa CSRs để mã hóa quyền truy cập mặc định đặc quyền Điều giúp đơn giản hóa việc kiểm tra lỗi phần cứng cung cấp không gian CSR lớn hơn, không hạn chế ánh xạ CSRs vào khơng gian địa Việc triển khai cho phép cấp đặc quyền bẫy lỗi CSR phép khác dừng lại cấp đặc quyền phép truy cập bị chặn Sự thay đổi nên minh bạch với phần mềm đặc quyền Nỗ lực truy cập CSR không tồn dẫn đến ngoại lệ hướng dẫn bất hợp pháp Cố gắng truy cập vào CSR mà mức đặc quyền thích hợp để viết vào ghi đọc làm tăng hướng dẫn bất hợp pháp HỆ THỐNG NHÚNG 22 KIẾN TRÚC RISC-V trường hợp ngoại lệ Một ghi đọc / ghi chứa số bit đọc, trường hợp ghi vào bit đọc bị bị bỏ qua I.1 Phân bổ địa RISC-V Bảng 5.1 quy ước phân bổ địa CSR mục đích sử dụng tiêu chuẩn không tiêu chuẩn Địa CSRs dành riêng cho mục đích sử dụng khơng tiêu chuẩn không xác định lại mở rộng tương lai Các địa bóng dành riêng để cung cấp địa đọc-ghi qua mức đặc quyền cao sửa đổi ghi đọc mức đặc quyền thấp Lưu ý cấp đặc quyền cấp phát địa bóng đọc / ghi, đặc quyền cao sử dụng địa CSR để truy cập đọc / ghi vào ghi HỆ THỐNG NHÚNG 23 KIẾN TRÚC RISC-V Nhận dạng ghi điều khiển trạng thái (CSRs) Machine-mode chế độ đặc quyền cao hệ thống RISC-V Chế độ máy chế độ đặc quyền bắt buộc triển khai phần cứng RISC-V Chế độ máy sử dụng để truy cập vào tảng phần cứng chế độ nhập khởi động lại hệ thống Chế độ máy sử dụng để triển khai tính q khó tốn tài nguyên để thực trực tiếp phần cứng ISA cấp máy RISC-V chứa lõi chung mở rộng tùy thuộc vào mức độ đặc quyền hỗ trợ chi tiết việc triển khai phần cứng Kiến trúc RISC-V xác lập ba mức đặc quyền mà luồng hồn tồn chạy: - Mức đặc quyền người dùng (U) - Cấp đặc quyền người giám sát (S) - Mức đặc quyền Máy (M) Ngoài chế độ máy bắt buộc, xử lý RISC-V thực hai hai mức đặc quyền S U Hệ thống chạy hệ điều hành có mục đích chung sử dụng chế độ S chế độ U giống chế độ giảm sát chế độ người dùng kiến trúc xử lý thông thường khác Các ứng dụng chế độ RISC-V U yêu cầu dịch vụ hệ thống với lệnh ecall (lệnh gọi môi trường), tạo ngoại lệ xử lý mức S Kiến trúc đặc quyền RISC-V hỗ trợ trực tiếp hệ điều hành đại Linux Trong số tám lệnh mạng lưới hệ thống, lệnh gọi mạng lưới hệ thống, lệnh khởi tạo điểm ngắt trình gỡ lỗi, sáu lệnh cịn lại đọc ghi ghi trạng thái điều khiển tinh chỉnh mạng lưới hệ thống (CSRs) Hướng dẫn thao tác CSR đọc giá trị CSR chọn vào ghi, sau update CSR cách ghi giá trị mới, xóa bit chọn đặt bit chọn Giá trị HỆ THỐNG NHÚNG 24 KIẾN TRÚC RISC-V nguồn cho sửa đổi CSR phân phối ghi dạng giá trị 5bit CSR xác lập địa 12 bit ecall : Gọi gọi hệ thống Các ghi sử dụng để truyền tham số vào quay lại từ gọi xác định ABI, phần cứng xử lý break : Khởi tạo điểm ngắt trình gỡ lỗi csrrw , csrrwi , csrrc , csrrci , csrrs , csrrsi : Đọc CSR cụ thể vào ghi đích thể viết nguồn operand giá trị cho ghi ( csrrw ), xóa 1bit nguồn operand vào sổ đăng ký ( srrc ), đặt 1bit toán hạng nguồn sổ đăng ký ( csrrs ) Các lệnh có ba tốn hạng: Đầu tiên ghi đích nhận giá trị đọc từ CSR, thứ hai địa CSR thứ ba ghi nguồn giá trị tức bit ( i hậu tố) Sáu CSRs định nghĩa kiến trúc RISC-V sở, tất chế độ đọc Để thực lệnh truy cập CSR chế độ đọc, ghi x0 phải cung cấp dạng toán hạng thứ ba Các ghi xác định ba đếm hiệu suất 64-bit: cycle , cycleh : 32bit ( cycle ) ( cycleh ) 32bit tổng số 64bit chu kỳ đồng hồ hệ thống trôi qua kể từ thời điểm tham chiếu, thường khởi động hệ thống Tần số đồng hồ hệ thống thay đổi điện áp động chia tỷ lệ tần số (DVFS) hoạt động time , timeh : Đây 32bit ( time ) ( timeh ) 32bit số 64bit chu kỳ đồng hồ thời gian thực trôi qua kể từ thời điểm tham chiếu, thường khởi động hệ thống HỆ THỐNG NHÚNG 25 KIẾN TRÚC RISC-V instret , instreth : 32bit ( instret ) ( instreth ) 32bit số lệnh xử lý 64bit ngừng hoạt động Hai nửa 32 bit đếm hiệu suất không đọc hoạt động giải trí nguyên tử Để tránh đọc sai, nên sử dụng trình sau để đọc đếm 64 bit cách đáng đáng tin cậy: Đọc 32 bit đếm vào ghi Đọc 32 bit thấp đếm vào ghi khác Đọc 32 bit vào ghi khác Các sưu tập CSR riêng khơng liên quan đến xác lập phép thông số kỹ thuật, trấn áp giám sát mạng lưới hệ thống cấp số ba cấp độc quyền Tùy thuộc vào mức độc quyền luồng chạy mức CSR, luồng hoàn tồn có quyền đọc-ghi, đọc khơng có quyền truy vấn vào CSR Các chủ đề cấp độc quyền cao hồn tồn truy vấn CSR cấp độc quyền thấp Mức độc quyền RISC-V S tương hỗ nhớ ảo phân trang với khoảng trống địa 32 bit chia thành trang 4KB Địa ảo 32 bit tách thành số trang ảo 20 bit độ lệch trang 12 bit Hai thông số kỹ thuật nhớ ảo bổ trợ xác lập cho thiên nhiên môi trường RISC-V 64 – bit Một khoảng trống địa 39 – bit, tương hỗ 512GB nhớ ảo Đối với ứng dụng nhu yếu nhiều địa ảo hơn, khoảng trống địa 48 bit có sẵn, tương hỗ 256TB nhớ ảo Mặc dù thông số kỹ thuật 48 – bit phân phối nhiều nhớ so với phiên 39 – bit, nhu yếu nhớ bổ trợ cho bảng trang tiêu tốn nhiều thời hạn giải xử lý quy trình duyệt bảng Các hướng dẫn sau tương hỗ mức thực thi độc quyền : mret , sret , uret – Những hướng dẫn trở từ xử lý ngoại lệ khởi xướng ecall hướng dẫn Mỗi lệnh thực thi mức đặc quyền chữ lệnh cao Việc thực thi hướng dẫn HỆ THỐNG NHÚNG 26 KIẾN TRÚC RISC-V tham chiếu đến mức đặc quyền thấp mức luồng trả từ ngoại lệ khởi tạo mức thấp wfi – Chờ ngắt Lệnh yêu cầu luồng dừng lại có ngắt để bảo dưỡng Đặc tả RISC-V yêu cầu lệnh đóng vai trị gợi ý, đó, triển khai cụ thể xử lý wfi lệnh dạng no-op thay thực làm ngưng trệ chuỗi Bởi xử lý xử lý wfi lệnh cấm, mã theo sau wfi lệnh phải kiểm tra rõ ràng diện ngắt chờ xử lý cần xử lý Trình tự thường xảy bên vòng lặp sfence.vma – Chuyển liệu bảng trang nhớ ảo từ nhớ đệm sang nhớ Phần đầu s ghi nhớ hướng dẫn cho biết hướng dẫn nhắm mục tiêu để sử dụng cấp đặc quyền người giám sát Trạng thái máy Thanh ghi mstatus ghi đọc / ghi MXLEN-bit định dạng Hình 5.3 cho RV64 Hình 5.4 cho RV32 Thanh ghi mstatus theo dõi kiểm soát trạng thái hoạt động hart Chế độ xem hạn chế mstatus xuất dạng ghi sstatus ISA cấp S Hình 5.3 RV64 HỆ THỐNG NHÚNG 27 KIẾN TRÚC RISC-V Hình 5.4 RV32 Bộ định thời CSRs Nền tảng cung cấp đếm thời gian thực, hiển thị dạng ghi đọc-ghi chế độ máy ánh xạ nhớ, mtime Mtime phải tăng với tần suất không đổi tảng phải cung cấp chế xác định sở thời gian mtime Thanh ghi mtime quấn quanh số đếm bị tràn Thanh ghi mtime có độ xác 64-bit tất hệ thống RV32 RV64 Nền tảng cung cấp ghi so sánh đếm thời gian chế độ máy ánh xạ nhớ 64 bit (mtimecmp) Một ngắt định thời trở nên chờ xử lý mtime chứa giá trị lớn mtimecmp, coi giá trị số nguyên không dấu Ngắt đăng mtimecmp trở nên lớn mtime (thường HỆ THỐNG NHÚNG 28 KIẾN TRÚC RISC-V kết việc viết mtimecmp) Ngắt thực ngắt kích hoạt bit MTIE đặt ghi mie Cơ sở hẹn định nghĩa sử dụng thời gian đồng hồ treo tường thay đếm chu kỳ để hỗ trợ xử lý đại chạy với tần số đồng hồ thay đổi cao nhằm tiết kiệm lượng thông qua điện áp động tỷ lệ tần số Các mức đặc quyền thấp khơng có ghi timecmp riêng Thay vào đó, phần mềm chế độ máy triển khai số lượng hẹn ảo hart cách ghép kênh hẹn ngắt vào ghi mtimecmp mtime - RISC-V xác định yêu cầu cho đếm hiển thị ghi ánh xạ nhớ - Khơng có tần suất u cầu hẹn giờ, nhưng: • Nó phải chạy với tần số khơng đổi • Nền tảng phải lộ tần số mtimecmp - RISC-V xác định nhớ so sánh đếm thời gian ánh xạ ghi - Kích hoạt ngắt mtime lớn mtimecmp Bộ giám sát CSRs Chế độ người giám sát bị hạn chế có chủ ý tương tác với phần cứng vật lý bên dưới, chẳng hạn nhớ vật lý ngắt thiết bị, để hỗ trợ ảo hóa Theo tinh thần này, sở cấp người giám sát định, bao gồm yêu cầu ngắt đếm thời gian xử lý, cung cấp chế dành riêng cho việc triển khai Trong số hệ thống, môi trường thực thi người giám sát (XEM) cung cấp sở theo cách định giao diện nhị phân người giám sát (SBI) Các HỆ THỐNG NHÚNG 29 KIẾN TRÚC RISC-V hệ thống khác cung cấp phương tiện cách trực tiếp, thông qua số chế khác việc triển khai xác định Người giám sát nên xem trạng thái CSRs mà hệ điều hành cấp người giám sát phải hiển thị Đặc biệt, khơng có thơng tin tồn (hoặc không tồn tại) cấp đặc quyền cao (cấp máy cấp khác) nhìn thấy CSR mà người giám sát truy cập Nhiều CSR người giám sát tập hợp CSR chế độ máy tương đương chương chế độ máy nên đọc trước để giúp hiểu mô tả CSR cấp người giám sát Hầu hết CSRs chế độ Máy có Chế độ giám sát tương đương - Chế độ giám sát CSRs sử dụng để kiểm sốt trạng thái Người giám sát Chế độ người dùng - Hầu hết CSRs Người giám sát tương đương giống ánh xạ dạng chế độ Máy mà khơng có bit điều khiển chế độ máy - sstatus, stvec, nhâm nhi, sie, sepc, scause, satp, … satp - Dịch địa người giám sát Đăng ký bảo vệ - Được sử dụng để điều khiển địa dịch bảo vệ chế độ Người giám sát Bộ nhớ ảo RISC-V có hỗ trợ Bộ nhớ ảo cho phép nhớ phức tạp quản lý hỗ trợ hệ điều hành (Linux) • Yêu cầu triển khai S-Mode • Sv32 • - Địa ảo 32bit - Bảng trang 4KiB, 4MiB (2 cấp độ) Sv39 (yêu cầu triển khai RV64) HỆ THỐNG NHÚNG 30 KIẾN TRÚC RISC-V • - Địa ảo 39bit - Bảng trang 4KiB, 2MiB, 1GiB (3 cấp độ) Sv48 (yêu cầu triển khai RV64) - Địa ảo 48bit - Bảng trang 4KiB, 2MiB, GiB, 512GB (4 cấp độ) Bảo vệ nhớ vật lý Để hỗ trợ q trình xử lý an tồn chứa lỗi, bạn nên hạn chế địa vật lý truy cập ngữ cảnh đặc quyền thấp chạy hart Bảo vệ nhớ vật lý (PMP) đơn vị cung cấp, với ghi điều khiển chế độ máy per-hart phép truy cập nhớ vật lý đặc quyền (đọc, ghi, thực thi) định cho vùng nhớ vật lý Các giá trị PMP kiểm tra song song với kiểm tra PMA HỆ THỐNG NHÚNG 31 KIẾN TRÚC RISC-V Mức độ chi tiết mã hóa cài đặt kiểm soát truy cập PMP dành riêng cho tảng chi tiết khác mã hóa quyền cho vùng nhớ vật lý khác tảng Đặc quyền số khu vực cài đặt sẵn — ví dụ: số khu vực hiển thị chế độ máy khơng có lớp đặc quyền thấp Các tảng khác nhiều nhu cầu bảo vệ nhớ vật lý, chúng tơi trì hỗn thiết kế cấu trúc PMP cho tảng Một số thiết kế PMP sử dụng vài CSRs để bảo vệ số lượng nhỏ phân đoạn nhớ vật lý, phân đoạn khác sử dụng bảng bảo vệ thường trú nhớ với đệm bảng bảo vệ lập mục ghi sở bảng bảo vệ để bảo vệ không gian nhớ vật lý lớn với độ chi tiết tốt Hệ thống có bảng bảo vệ đăng ký sở thường cung cấp đăng ký ID miền bảo vệ vật lý (PDID) để biểu thị miền bảo vệ vật lý Kiểm tra PMP áp dụng cho tất truy cập hart chạy chế độ H, S U tải lưu trữ bit MPRV đặt ghi mstatus trường MPP mstatus đăng ký có chứa H, S U Các vi phạm PMP ln lưu giữ xác xử lý • Có thể sử dụng để thực thi quyền truy cập hạn chế chế độ đặc quyền + Ngăn chặn phần mềm chế độ Người giám sát Người dùng khỏi truy cập nhớ khơng mong muốn • Tối thiểu 16 vùng nhớ có kích thước 4byte • Khả khóa khu vực + Khu vực bị khóa thực thi quyền tất quyền truy cập, bao gồm M-Mode + Cách để mở khóa khu vực khởi động lại HỆ THỐNG NHÚNG 32 KIẾN TRÚC RISC-V HỆ THỐNG NHÚNG 33 ... NHÚNG KIẾN TRÚC RISC- V TỔNG QUAN V? ?? RISC- V Quy ước đặt tên RISC- V ISA - RISC- V sử dụng tiêu chuẩn quy ước đặt tên để mô tả ISA hỗ trợ triển khai định -Tên ISA định dạng: RV[###][abc…xyz] RV: viết... THỐNG NHÚNG KIẾN TRÚC RISC- V Hình 8: Mức độ hỗ trợ mode - Supervisor, Hypervisor, Machine mode có ghi điều khiển ghi trạng thái Hướng dẫn RISC- V RISC- V Reference - Bộ hướng dẫn RISC- V: Định dạng... f8-9 f10-11 f12-17 f18-27 f28-31 So sánh kích thước mã RISC- V ARM - Để so sánh RISC- V với số kiến trúc tương tự, điểm chuẩn xây dựng cho RMv7m, ARMv8m ARMv8a cách sử dụng GCC ARM Embedded phiên