RISC-V 手册 v2(一本开源指令集的指南)它应该适应所有实现技术,包括现场可编程门阵列(FPGA)、专用集成电路 (ASIC)、全定制芯片,甚至未来的设备技术。 ⚫ 它应该对所有微体系结构样式都有效:例如微编码或硬连线控制;顺序或乱序执行 流水线; 单发射或超标量等等。 ⚫ 它应该支持广泛的专业化,成为定制加速器的基础,因为随着摩尔定律的消退, 加速器的重要性日益提高。 ⚫ 它应该是稳定的,基础的指令集架构不应该改变。更重要的是,它不能像以前的 ?? × ???? ????? ????? = ???? ??????? 即使一个简单的 ISA 可能在每个程序执行的指令数方面多于复杂的 ISA,但它可以通过 更快的时钟频率或更低的平均单条指令周期数(CPI)来弥补。 例如,运行 CoreMark 测试程序[Gal-On, Levy 2012](100000 次迭代)后,得到 ARM-32 Cortex-A9 的性能为: 32 虽然架构师不该为了有助于某个时间点的某一个特定实现而特意加入某些功能,但他们 也不应该放入阻碍某些实现的功能。例如,如上一页所述,ARM-32 和其他一些 ISA 具有 Load Multiple 指令。这些指令可以提高单发射流水线设计的性能,但会降低多发射流水线的 效率。原因在于这种直截了当的实现排除了与其他指令并行地调度 Load Multiple 的各个负 载的可能,从而降低了这些处理器的指令吞吐量。 提升空间0 码力 | 164 页 | 8.85 MB | 1 年前3
RISC-V 开放架构设计之道 1.0.0AMOMAXU.W rd,rs2,(rs1) 谓词不等 R VPNE rd,rs1,rs2 谓词小于 R VPLT rd,rs1,rs2 类别 名称 类型 RV32{F|D} ( 单/双精度浮点) 谓词大于等于 R VPGE rd,rs1,rs2 传送 从整数传送 R FMV.W.X rd,rs1 FMV.D.X rd,rs1 谓词与 R VPAND 技术骨干,硕士课题围绕缓存架构设计和缓存一致性协议开展,相关研究成果落地应 用于 “香山” 项目的缓存架构设计。曾参与国家重点研发计划 “软件定义的云计算基 础理论与方法”,负责标签化 RISC-V 单节点原型系统的缓存设计以及标签化 RISC-V 集群 “火苗” 系统的搭建。现从事 GPGPU 架构研发工作。 余子濠,中国科学院计算技术研究所博士,本科毕业于南京大学,师从袁春风教 授;博士毕 ........................... 32 4 RV32M:乘法和除法指令 ..................................... 44 5 RV32FD:单/双精度浮点数 ................................... 48 6 RV32A:原子指令 .......................................0 码力 | 223 页 | 15.31 MB | 1 年前3
Hello 算法 1.2.0 繁体中文 C# 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Go 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 385 页 | 18.80 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Kotlin 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 382 页 | 18.79 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Java 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Swift 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Ruby 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 54 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 372 页 | 18.75 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Python 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 53 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 364 页 | 18.74 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 C++ 版基本資料型別以二進位制的形式儲存在計算機中。一個二進位制位即為 1 位元。在絕大多數現代作業系統中, 1 位元組(byte)由 8 位元(bit)組成。 基本資料型別的取值範圍取決於其佔用的空間大小。下面以 Java 為例。 ‧ 整數型別 byte 佔用 1 位元組 = 8 位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 整數 byte 1 位元組 −27 (−128) 27 − 1 (127) 0 short 2 位元組 −215 215 − 1 0 int 4 位元組 −231 231 − 1 0 第 3 章 資料結構 www.hello‑algo.com 55 型別 符號 佔用空間 最小值 最大值 預設值 long 8 位元組 −263 263 − 1 0 浮點數 float 4 位元組 1.175 × × 10−38 3.403 × 1038 0.0f double 8 位元組 2.225 × 10−308 1.798 × 10308 0.0 字元 char 2 位元組 0 216 − 1 0 布林 bool 1 位元組 false true false 請注意,表 3‑1 針對的是 Java 的基本資料型別的情況。每種程式語言都有各自的資料型別定義,它們的佔用 空間、取值範圍和預設值可能會有所不同。0 码力 | 379 页 | 18.79 MB | 10 月前3
共 325 条
- 1
- 2
- 3
- 4
- 5
- 6
- 33













