FPGA浮点数表示及计算机数值表示规则

时间:2025-11-01  作者:Diven  阅读:0

定点数硬件实现简单,但表示的范围有限,且部分的小数运算IP核只支持浮点数运算,因此这里还需要提到浮点数的相关内容。

FPGA浮点数表示及计算机数值表示规则

通过介绍FPGA浮点数的表示方法和用法,进而讲述计算机浮点数的表示规则,这部分涉及数电,微机原理的基础知识。

浮点数需要提到IEEE754标准,计算机的浮点数表示依照这个标准,以IEEE754的单精度浮点数为例。

IEEE754单精度浮点数为32位,分为符号位,8位的指数部分,23位的尾数部分;

以十进制下的12.5为例,首先12.5非负,所以符号位为0;

5转换为二进制,1100.1,将其科学计数法化(正规化),变成了可知道此时2的指数为3,加上预设的偏移值127,得到了130,即1000 0010;这就是指数部分。

(1.1001)去掉整数得到尾数1001,剩余尾数补0,这就是尾数部分。

所以最终的IEEE754单精度值为 0 1000 0010 1001 0000 0000 0000 0000 000

整合为16进制,为41 48 00 00 。

再以-0.375为例,符号位为1;

0.375转换为二进制,0.011,科学计数法化(正规化),可知2的指数位-2,加上127为125,即0111 1101;

(1.1)去掉整数得到尾数1,剩余尾数补0

最终为1 0111 1101 1000 0000 0000 0000 0000 000

整合为16进制,为BE C0 00 00。

反过来,通过浮点数的16进制表示,推出相应的10进制数,公式如下:s是符号位,决定数据的正负,fration是最后的23位对应的10进制小数,exponent是8位的指数部分,bias是预设的偏移值,32位中为127;

当然,这样的计算方法没有办法表示0,所以做了特殊规定,当exponent为0时,相应的公式变成了这个样子:当fration也为0时,就表示出0了。当exponent为最大值,fration为0,表示正/负无穷大;fration不为0会报NaN,不是一个数。

浮点数加法:

以正数相加为例, 0.3 + 0.7 = ?

  • 0.3 -> 3E 99 99 99
  • 0.7 -> 3F 33 33 33

可以知道,0.3的exponent为125,0.7的exponent为126;两者的exponent不一致,需要进行移位操作保持一致。这里移位的原则是小exponent向大exponent保持一致。所以0.3需要向右移动一位,保持exponent一致;

即(1) 0011 0011 0011 0011 0011 001 -> (0) 1001 1001 1001 1001 1001 100

然后进行两者尾数相加,这部分跟定点数加法规则一致。得到结果3f 7f ff ff,转换为10进制为0.9999999403953552;也就是说在计算机浮点数操作过程中,0.3+0.7不等于1,这也就是为什么编程里面浮点数不推荐直接做比较的原因,由于浮点数精度的原因,浮点数做比较更推荐使用与预设值做减法取绝对值,如果差值在一个很小的范围内,则认为相等。

如果是正负相加,负数需要取补码进行相加操作,并扩展符号位,观察结果的正负性;如果结果的整数部分大于1,要进行科学计数法化(正规化)。

浮点数乘法:

  1. 尾数相乘,得到结果,以12.5和-0.375为例,相关的浮点数表示在介绍IEEE754环节已给出;

5 ->41 48 00 00 ; -0.375 -> BE C0 00 00

  1. 计算两者的exponent差值,得到结果1;将1中的结果科学计数法化(正规化),得到最终的exponent为127+1+1=129;
  2. 将两者的符号位做异或计算,得到结果1,所以最终结果的符号位为1;最终结果为C0 96 00 00,转换为10进制就是-4.6875 。

相对比而言,浮点数能够表示更宽的数据范围,但计算过程可能较为复杂,但是明白表示规则之后,将定点小数转换成浮点数也并不难,这样就可以用到浮点运算的IP核了。

经过各种处理之后的数据,为了平衡数据精度和资源占用,又需要使用到数据截位。

猜您喜欢

对刀器是应用于机械加工领域的重要工具,主要用于切削和加工各种金属材料。其应用领域涵盖了多个行业。在汽车制造业中,对刀器被用于精密加工发动机零部件和车身结构,确保...
2014-04-10 00:00:00

品牌众多,各具特色,而“士康”(SACON)作为电流检测电阻领域的佼佼者,其品牌归属自然引人关注。本文将深入探讨SACON品牌的国家归属,以及其背后的故事、技术...
2016-08-01 04:21:54

电流采样电阻作为关键的测量元件,起着非常重要的作用。RALEC(旺诠)作为知名的电阻制造品牌,其生产的电流采样电阻因优良的性能和的应用领域,受到行业内关注。本文...
2014-04-27 14:21:07

直插独石电容(MLCC)是应用于电子设备中的重要元件,其主要作用在于提供稳定的电容值,帮助滤波、耦合和去耦。MLCC具有体积小、容量大、耐高温等优点,能够有效减...
2010-07-09 00:00:00

灭火毯是重要的消防安全工具,具有多重作用。可以迅速扑灭初起火灾,尤其是油火和电器火灾。当火焰小且处于可控范围内时,覆盖灭火毯可以有效隔绝氧气,从而熄灭火焰,防止...
2009-04-26 00:00:00

安装和使用监控摄像头时,电源适配器和接头规格是常常被忽视的细节。选择错误的电源适配器或接头可能导致摄像头无法正常工作,甚至造成安全隐患。为了帮助您避免这些问题,...
2024-05-05 00:00:00

膨胀螺栓是应用于建筑和工程领域的重要紧固件,其独特的设计使其能在不同材质的基底中提供强大的固定力。在混凝土结构中,膨胀螺栓被用于固定钢结构、护栏、设备等,确保其...
2022-04-24 00:00:00

分流器作为信号传输中的重要组件,是关键配件。奥斯特(OST)作为知名的分流器品牌,其产品在市场上广受好评。本文将详细介绍奥斯特(OST)分流器的核心参数及其知名...
2018-06-03 15:05:30

韩国基础科学研究所(IBS)的量子纳米科学中心(QNS)携手德国尤里希研究中心的科研精英团队,共同研发出了全球首款原子级精度的量子传感器,这一革命性装置能够捕捉...
2024-07-27 13:46:00

同步整流升压是一种高效的电能转换技术,被应用于各种电子设备中。通过整合先进的电路设计,为用户提供更高效的电源解决方案,满足日益增长的能源需求。同步整流升压电路的...
2024-06-20 00:00:00