编辑“︁
RISC-V
”︁(章节)
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
=== 指令子集 === RISC-V 指令使用[[模組化設計|模塊化設計]],包括幾個可以互相替換的基本指令集,以及額外可以選擇的擴充指令集。所有基本跟擴充的指令集都是由科技產業、研究機構跟學術界合作開發的。基本指令集規範了指令跟他們的編碼、控制流程、暫存器數目(以及它們的長度)、記憶體跟定址方式、邏輯(整數)運算以及其他。只要有軟體以及一個通用的編譯器的支援,只用基本指令集就可以製作一個簡單的通用型的電腦。 標準的擴充指令集可以搭配所有的基本指令集以及其他擴充指令集,而不會發生衝突。 很多 RISC-V 電腦可能使用精簡擴充指令集來降低電力消耗、程式的大小以及記憶體的使用。未來也有計畫支援[[hypervisor]]和[[虛擬化]]。<ref name="priv-isa" /> 只要再加上一個監督指令集 (S) 的擴充,以及以下 RVGC 指令集,就有足夠的指令可以支援一個 [[Unix]]-style [[作業系統]]。 {| class="wikitable" |- ! 指令集名稱 ! 描述 ! 版本 ! 狀態{{efn|name=frozen|標記為凍結狀態的模塊代表其最終的功能已完備,而且在提交批准之前預計不會發生重大變化。}} |- ! colspan=4 | 基本指令集 |- | RVWMO || RISC-V 弱內存模型 || 2.0 || {{Yes|已批准}} |- | RV32I || 基本整數指令集, 32位元 || 2.1 || {{Yes|已批准}} |- | RV32E || 基本整數指令集(嵌入式系統), 32位元, 16 個暫存器 || 2.0 || {{Yes|已批准}} |- | RV64I || 基本整數指令集, 64位元 || 2.1 || {{Yes|已批准}} |- | RV64E || 基本整數指令集(嵌入式系統), 64位元, 16 個暫存器 || 2.0 || {{Yes|已批准}} |- | RV128I || 基本整數指令集, 128位元 || 1.7 || {{No|開放}} |- ! colspan=4 | 標準擴充指令集 |- | M || 整數乘除法標準擴充 || 2.0 || {{Yes|已批准}} |- | A || 不可中斷指令(Atomic)標準擴充 || 2.1 || {{Yes|已批准}} |- | F || 單精度浮點標準擴充 || 2.2 || {{Yes|已批准}} |- | D || 雙精度浮點標準擴充 || 2.2 || {{Yes|已批准}} |- | Zicsr || 控制與狀態暫存器 || 2.0 || {{Yes|已批准}} |- | Zifencei || 指令抓取[[内存屏障|屏障]] || 2.0 || {{Yes|已批准}} |- | G || 所有以上的擴充指令集以及基本指令集的總和的簡稱 || {{n/a}} || {{n/a}} |- | Q || 四精度浮點標準擴充 || 2.2 || {{Yes|已批准}} |- | L || 十進位浮點標準擴充 || 0.0 || {{No|開放}} |- | C || 壓縮指令標準擴充 || 2.0 || {{Yes|已批准}} |- | B || 位元運算標準擴充 || 1.0 || {{Yes|已批准}} |- | J || 動態指令翻譯標準擴充 || 0.0 || {{No|開放}} |- | T || 順序記憶體存取標準擴充 || 0.0 || {{No|開放}} |- | P || 單指令多資料流(SIMD)運算標準擴充 || 0.9.10 || {{No|開放}} |- | V || 向量運算標準擴充 || 1.0 || {{No|开放}} |- | Zk || 標量加密標準擴充 || 1.0.1 || {{Yes|已批准}} |- | H || Hypervisor 標準擴充 || 1.0 || {{Yes|已批准}} |- | S || Supervisor 標準擴充 || 1.12 || {{Yes|已批准}} |- | Zam || 非對齊不可中斷指令標準擴充 || 0.1 || {{No|開放}} |- | Zihintpause || 暫停提示 || 2.0 || {{Yes|已批准}} |- | Zihintntl || 非時間局部性提示 || 0.3 || {{Yes|已批准}} |- | Zfa || 額外浮點運算指令標準擴充 || 1.0 || {{Yes|已批准}} |- | Zfh || 半精度浮點標準擴充 || 1.0 || {{Yes|已批准}} |- | Zfhmin || 半精度浮點最小集標準擴充 || 1.0 || {{Yes|已批准}} |- | Zfinx || 整數寄存器單精度浮點標準擴充 || 1.0 || {{Yes|已批准}} |- | Zdinx || 整數寄存器雙精度浮點標準擴充 || 1.0 || {{Yes|已批准}} |- | Zhinx || 整數寄存器半精度浮點標準擴充 || 1.0 || {{Yes|已批准}} |- | Zhinxmin || 整數寄存器半精度浮點最小集標準擴充 || 1.0 || {{Yes|已批准}} |- | Zmmul || 整數純乘法標準擴充 || 1.0 || {{Yes|已批准}} |- | Ztso || 全存儲排序標準擴充 || 1.0 || {{No|冻结}} |} {{noteslist}} 為了分辨各種不同的指令組合,非特權指令集標準中訂定了一些專有名詞。首先先指明基本指令集的種類,包括表示 RISC-V 的代號 RV,然後是暫存器的寬度跟其他變化,例如 RV64I 或 RV32E。然後用上表的字母(以及表列的順序)表示用了哪種擴充指令,例如 RV64IMAFD。 基本指令集、擴充整數或浮點運算、多CPU系統使用的同步指令擴充,標準擴充指令MAFD被認為是大部分的一般運算都需要的,所以有一個字母的簡稱 G 用來表示 IMAFDZicsr_Zifencei。 使用嵌入式系統的一個小的32位元電腦可能用 RV32EC,而大型的64位元電腦可以用 RV64GC,即 RV64IMAFDCZicsr_Zifencei 的簡稱。 隨著擴充指令集數量的增加,指令集標準提供了另外一種命名方式,用 Z 字首緊接著字母名稱表示標準擴充,例如 Zifencei 表示指令抓取屏障擴充。
摘要:
请注意,所有对Local Chinese Wikipedia的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Project:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
大陆简体
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息