verilog定点数

翻了很长时间的帖子,虽然有介绍关于定点数的概念,但是没有很详细的用法。我用Vivado分别做了加减乘除的定点数仿真。有如下总结:
加法和减法相对容易。(看本帖子之前最好看下其他的帖子)

1 所有的数本质都是二进制数,定点数就是取固定位数作为二进制数,我们在vivado写verilog时不需要做额外的语法上的定义。

2 乘法,我们知道 两个乘数的积的位数,是两个乘数的位数之和。很完美的是,两个定点乘数的位数,也是这两个乘数的位数之和。更完美的是,他们这个积的小数部分的的位数,也是这两个乘数各自小数的位数之和。

3 除法,仍然很完美的是,以a/b=c,余d(c=a/b,d=a%b),其中商,也就是c的小数部分的位数,是a的小数部分的位数 减去 b的小数部分的位数,d的小数部分的位数就是a的小数部分的位数。

总结,数字真的太奇妙了。综上,我们在应用定点数的时候,需要搞清楚这些概念。注意辨析。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值