systemverilog的单精度浮点和双精度浮点
SystemVerilog提供了两种主要的浮点类型:
-
shortreal
:32位单精度浮点数(IEEE 754标准) -
real
:64位双精度浮点数(IEEE 754标准)
1. 单精度浮点(Single-Precision)
-
位数:32位(4字节)
-
存储结构:
-
1位符号位(最高位):表示正负(0正,1负)。
-
8位指数位:决定数值的范围,采用偏移码(偏移值为127)。
-
23位尾数位(小数部分):决定精度,隐含最高位
1
(规格化数)。
-
-
精度:约6-9位有效十进制小数。
-
数值范围:约 ±1.4×10⁻⁴⁵ 到 ±3.4×10³⁸。
2. 双精度浮点(Double-Precision)
-
位数:64位(8字节)
-
存储结构:
-
1位符号位:同上。
-
11位指数位:偏移值为1023。
-
52位尾数位:隐含最高位
1
。
-
-
精度:约15-17位有效十进制小数。
-
数值范围:约 ±4.9×10⁻³²⁴ 到 ±1.8×10³⁰⁸。