在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例Clojure → riscv-privileged-v1.10.pdf

riscv-privileged-v1.10.pdf

Clojure

下载此实例
  • 开发语言:Others
  • 实例大小:0.51M
  • 下载次数:3
  • 浏览次数:34
  • 发布时间:2023-03-09
  • 实例类别:Clojure
  • 发 布 人:xxy27978888888
  • 文件格式:.pdf
  • 所需积分:2
 相关标签: privilege PRI pdf 1.1 CV

实例介绍

【实例简介】The RISC-V Instruction Set Manual Volume II: Privileged Architecture Privileged Architecture Version 1.10

【实例截图】

【核心代码】

Contents
Preface i
1 Introduction 1
1.1 RISC-V Hardware Platform Terminology . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 RISC-V Privileged Software Stack Terminology . . . . . . . . . . . . . . . . . . . . . 2
1.3 Privilege Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Control and Status Registers (CSRs) 7
2.1 CSR Address Mapping Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 CSR Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 CSR Field Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Machine-Level ISA, version 1.10 15
3.1 Machine-Level CSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1.1 Machine ISA Register misa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1.2 Machine Vendor ID Register mvendorid . . . . . . . . . . . . . . . . . . . . . 18
3.1.3 Machine Architecture ID Register marchid . . . . . . . . . . . . . . . . . . . 18
3.1.4 Machine Implementation ID Register mimpid . . . . . . . . . . . . . . . . . . 19
3.1.5 Hart ID Register mhartid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.6 Machine Status Register (mstatus) . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.7 Privilege and Global Interrupt-Enable Stack in mstatus register . . . . . . . 20
v
vi Volume II: RISC-V Privileged Architectures V1.10
3.1.8 Base ISA Control in mstatus Register . . . . . . . . . . . . . . . . . . . . . . 21
3.1.9 Memory Privilege in mstatus Register . . . . . . . . . . . . . . . . . . . . . . 22
3.1.10 Virtualization Support in mstatus Register . . . . . . . . . . . . . . . . . . . 22
3.1.11 Extension Context Status in mstatus Register . . . . . . . . . . . . . . . . . 23
3.1.12 Machine Trap-Vector Base-Address Register (mtvec) . . . . . . . . . . . . . . 26
3.1.13 Machine Trap Delegation Registers (medeleg and mideleg) . . . . . . . . . . 27
3.1.14 Machine Interrupt Registers (mip and mie) . . . . . . . . . . . . . . . . . . . 28
3.1.15 Machine Timer Registers (mtime and mtimecmp) . . . . . . . . . . . . . . . . 30
3.1.16 Hardware Performance Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.17 Counter-Enable Registers ([m|h|s]counteren) . . . . . . . . . . . . . . . . . 32
3.1.18 Machine Scratch Register (mscratch) . . . . . . . . . . . . . . . . . . . . . . 33
3.1.19 Machine Exception Program Counter (mepc) . . . . . . . . . . . . . . . . . . 34
3.1.20 Machine Cause Register (mcause) . . . . . . . . . . . . . . . . . . . . . . . . 34
3.1.21 Machine Trap Value (mtval) Register . . . . . . . . . . . . . . . . . . . . . . 35
3.2 Machine-Mode Privileged Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2.1 Environment Call and Breakpoint . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2.2 Trap-Return Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2.3 Wait for Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.3 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.4 Non-Maskable Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5 Physical Memory Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5.1 Main Memory versus I/O versus Empty Regions . . . . . . . . . . . . . . . . 41
3.5.2 Supported Access Type PMAs . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.5.3 Atomicity PMAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.5.4 Memory-Ordering PMAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.5.5 Coherence and Cacheability PMAs . . . . . . . . . . . . . . . . . . . . . . . . 43
3.5.6 Idempotency PMAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.6 Physical Memory Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Volume II: RISC-V Privileged Architectures V1.10 vii
3.6.1 Physical Memory Protection CSRs . . . . . . . . . . . . . . . . . . . . . . . . 45
4 Supervisor-Level ISA, Version 1.10 49
4.1 Supervisor CSRs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.1.1 Supervisor Status Register (sstatus) . . . . . . . . . . . . . . . . . . . . . . 49
4.1.2 Base ISA Control in sstatus Register . . . . . . . . . . . . . . . . . . . . . . 50
4.1.3 Memory Privilege in sstatus Register . . . . . . . . . . . . . . . . . . . . . . 51
4.1.4 Supervisor Trap Vector Base Address Register (stvec) . . . . . . . . . . . . . 51
4.1.5 Supervisor Interrupt Registers (sip and sie) . . . . . . . . . . . . . . . . . . 52
4.1.6 Supervisor Timers and Performance Counters . . . . . . . . . . . . . . . . . . 53
4.1.7 Counter-Enable Register (scounteren) . . . . . . . . . . . . . . . . . . . . . 53
4.1.8 Supervisor Scratch Register (sscratch) . . . . . . . . . . . . . . . . . . . . . 54
4.1.9 Supervisor Exception Program Counter (sepc) . . . . . . . . . . . . . . . . . 54
4.1.10 Supervisor Cause Register (scause) . . . . . . . . . . . . . . . . . . . . . . . 54
4.1.11 Supervisor Trap Value (stval) Register . . . . . . . . . . . . . . . . . . . . . 55
4.1.12 Supervisor Address Translation and Protection (satp) Register . . . . . . . . 56
4.2 Supervisor Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2.1 Supervisor Memory-Management Fence Instruction . . . . . . . . . . . . . . . 58
4.3 Sv32: Page-Based 32-bit Virtual-Memory Systems . . . . . . . . . . . . . . . . . . . 59
4.3.1 Addressing and Memory Protection . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.2 Virtual Address Translation Process . . . . . . . . . . . . . . . . . . . . . . . 62
4.4 Sv39: Page-Based 39-bit Virtual-Memory System . . . . . . . . . . . . . . . . . . . . 62
4.4.1 Addressing and Memory Protection . . . . . . . . . . . . . . . . . . . . . . . 63
4.5 Sv48: Page-Based 48-bit Virtual-Memory System . . . . . . . . . . . . . . . . . . . . 63
4.5.1 Addressing and Memory Protection . . . . . . . . . . . . . . . . . . . . . . . 64
5 Hypervisor Extensions, Version 0.0 65
6 RISC-V Privileged Instruction Set Listings 67
viii Volume II: RISC-V Privileged Architectures V1.10
7 Platform-Level Interrupt Controller (PLIC) 69
7.1 PLIC Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.2 Interrupt Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.2.1 Local Interrupt Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
7.2.2 Global Interrupt Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
7.3 Interrupt Targets and Hart Contexts . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
7.4 Interrupt Gateways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
7.5 Interrupt Identifiers (IDs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
7.6 Interrupt Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
7.7 Interrupt Enables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
7.8 Interrupt Priority Thresholds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
7.9 Interrupt Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
7.10 Interrupt Claims . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
7.11 Interrupt Completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
7.12 Interrupt Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
7.13 PLIC Core Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.14 Controlling Access to the PLIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8 Machine Configuration Description 77
8.1 Configuration String Search Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9 History 79
9.1 Research Funding at UC Berkeley . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

标签: privilege PRI pdf 1.1 CV

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警