Xilinx浮点处理IP使用说明和测试
- 1 浮点数标准
- 2 IP接口信号
- 3 Python计算
- 4 Vivado仿真
本文主要介绍Xilinx浮点数处理IP Floating-point的使用和测试方法。
1 浮点数标准
浮点数的定义遵循IEEE-754标准,32位浮点数定义如下。
- 1位符号位(S):0表示正数,1表示负数
- 8位指数位(E):用于表示指数部分,采用偏移码表示,即真实指数值加上127,得到偏移码值。范围为-126~127,其中-127和+128为特殊值,用于表示0和无穷大。
- 23位尾数位(M):用于表示尾数部分,采用二进制小数表示,其中第一位默认为1,不存储。剩下的22位存储小数点后面的数字。
- 浮点数的值可以通过以下公式计算:(-1)S × (1+M) × 2(E-127)
举一个简单的例子,一个浮点数表示为二进制为 1100_0000_0000_0110_0110_0110_0110_0110,则有S=1,E=8‘b1000_0000=128,M=23’b000_0110_0110_0110_0110_0110 = 2