一、B比特的二进制数可以表示的范围
无符号整数:0~2B-1
有符号整数:-2B-1~2B-1-1
二、有符号数(补码)与十进制数之间的转换
D:十进制数
B:二进制数aB-1aB-2···a1a0的位数
aB-1:符号位
三、符号位拓展
在使用vivado的ip核时,AXI4接口的tdata端口位宽往往以字节(8 bit)为单位,此时往往需要补符号位即符号位拓展。
正数:整数高位补0,小数低位补0
负数补码:整数高位补1,小数低位补0
四、signed声明
1.有/无符号数的加法器和乘法器的结构相同,signed的真正作用是决定如何对操作数扩位的问题。
2.任何运算中,不能将有符号数和无符号数混用。必须保证全为有符号变量或者是无符号变量,如果至少存在1个无符号变量,那么整个表达式的运算过程会被当作无符号数运算。
五、FIR 滤波器输出位宽
- 全精度输出位宽
Aw:全精度输出位宽
Dw:输入数据位宽
B:由于滤波器的乘加运算而增加的位宽 - 公式中B的计算方法
N:滤波器系数的个数
an:滤波器的第n个系数
对滤波器的系数取绝对值之后求和,计算最少用多少位无符号二进制数来表示这个和。
这样计算可以得到固定系数的滤波器的真实最大位增长。