FPGA不同位宽相加
作者:互联网
FPGA 不同位数的符号数相加
1、有符号定点数相加/减
A:m位,B:n位;m>n,A在最高位补充一个符号位,变为m+1,A+B的结果为:m+1;
2、无符号数定点数相加/减
A:m位,B:n位;m>n,A=1111,,A在最高位补充一个符号位,变为01111,
3、两个定点数做乘法
A:m位,B:n位;m>n,A*B结果为m+n,
4、截取符号位
两个有符号定点数相乘,符号位位数至少是乘数和被乘数的符号位数之和,例如两个有1位符号位的定点数相乘,结果至少有两个符号位,而数据只需要一个符号位确定正负,可以放心截掉最高位;最高位肯定是符号位,从高到低,与其变化一致的都是符号位;有符号数至少需要一个符号位,因此截位原则是保守的;
5、截取低位数据(截位还相当于做除法)
两个有符号数相乘,截位应该截掉有效位数(有效位:去除符号位之后);
两个数相除,商的位宽和被除数相同,截位应该截掉高位,保留低位;
标签:FPGA,符号,不同,相加,截位,相乘,截掉,定点数 来源: https://www.cnblogs.com/shidafu/p/16688187.html