FPGA中定点数的处理方法

时间:2025-09-10  作者:Diven  阅读:0

FPGA中最常用的还是定点化数据处理方法,本文对定点化数据处理方法进行简要探讨,并给出必要的代码例子。

FPGA中定点数的处理方法

1、一般扩位原则:

1) 加减法运算:扩位位宽=ceil(log2(加法个数))

如:两个加法扩1位,三个四个加法扩2位…

2)乘法运算:结果扩位位宽=两个乘数位宽的和

如:15bit数与14bit相乘结果位宽应为29bit。

3)除法运算:结果扩位位宽=被除数位宽与除数位宽的差

扩位时对于有符号数,高位扩展时扩展符号位,对于无符号数高位扩展时直接补零。因为有符号数高位是符号位,扩位补零会将负数扩展为错误的正数,而无符号数没有符号位,对位最高bit为1的无符号数,扩展符号位同样会导致数据异常。

符号位扩展:

2、高位截位,分为饱和截位和直接截位:

1)高位直接截位,直接抛掉高位保留低位,在确认信号不会溢出的模块使用直接截位的方法,节省资源;

2)高位饱和截位:对计算后的数据进行判断,如果超出位宽,正数输出为最大值,负数输出为最小值;判断方法就是看高位是否完全相同。

3、低位截位:

1)直接截位:功率计算等统计模块会使用,数字信号处理中不会使用,因为这种方式,频域会出现直流。

2)四舍五入:如下所示,上一篇文章中说了数据的表示(FPGA数字信号处理之数据的表示),看一看到对于补码,verilog中只针对负数的0.5进行特殊处理即可。

代码如下,代码中会判断信号是否是-n.5,进行处理。

3)近似四舍五入,对于真四舍五入来说,对-0.5的判断逻辑较为复杂,而且有的数据处理对-0.5的要求也不高,此时可以采用近似四舍五入的方法,之前的代码中最常出现的就是这种处理方式:

可以看到这种处理方式下-0.5的值是偏大的。

另外,要注意上一篇文章中多次提到的IEEE 754浮点数标准里面,对于浮点数取整的规定如下

1.就近舍入Round to nearest (even)

2. 向零舍入(Truncate)

3.朝正无穷舍入Round up (toward +∞)

4.朝负无穷舍入Round down (toward −∞)

python等默认使用的就是 就近舍入Round to nearest (even) 处理方法,python中的计算结果为:

round(0.5)= 0

round(1.5)=2

这一点大家做算法时要注意一下。

猜您喜欢

贴片电阻,凭借其小巧的体积和便捷的表面贴装技术,广泛应用于各种电子产品中。从我们日常使用的智能手机、平板电脑、笔记本电脑到复杂的工业控制系统、医疗设备、汽车电子...
2024-11-26 11:29:59

保护电路安全的重要性日益凸显。自恢复保险丝作为能够自动断开和恢复电路的保护元件,受到了越来越多行业的青睐。CHNHACE作为知名的自恢复保险丝品牌,其产品在市场...
2021-03-25 08:10:30

贴片电阻作为基础且关键的电子元件,应用于各种电子设备中。Walsin(华新)作为全球知名的电子元件制造商,其生产的贴片电阻以高品质和优良性能。本文将详细介绍Wa...
2012-06-23 02:55:30

四端子电阻因其高精度和低误差的特点,应用于精密测量和高端设备中。VITROHM作为全球知名的电阻制造商,其四端子电阻产品以优良的性能和可靠的品质赢得了市场的认可...
2021-03-02 08:43:48

小米无人机,以其卓越的性能和便捷的操作,深受广大航拍爱好者的喜爱。然而,在使用过程中,一些用户可能会遇到电池充电时指示灯双闪的情况,这引发了大家的疑问:电池怎么...
2024-03-16 00:00:00

电阻器作为基础的被动元件,是调节电流、分压的关键配件。而台庆(TAI-TECH)作为行业内的佼佼者,其四端子电阻系列凭借其独特的优势,在精密测量、高性能电路设计...
2012-04-15 01:46:45


科技迅速发展的今天,USB接口作为电子设备之间连接的重要桥梁,扮演着不可或缺的角色。USB4-TYPEA_14X7MM_TM作为一种新型的USB接口,凭借其高效...
2025-03-06 02:01:46


排阻(或称为电阻网络)是电路设计中常见的元件,应用于电子设备中以实现各种功能,如电压分配、信号调理等。理解排阻的构成及其工作原理,对于电子工程师和爱好者而言非常...
2025-04-15 14:31:40