在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2805|回复: 10

[原创] FPGA做加减运算是否需要先算出补码?

[复制链接]
发表于 2020-4-9 05:48:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
FPGA的数据做减法是不是不需要先算出补码啊 ?  数据a < b, 然后a - b得到的结果默认就是一个补码吧 ?而不需要先算出b的补码,然后再做a + b(补码)吧?

发表于 2020-4-9 09:29:29 | 显示全部楼层
应该不用吧,编译器自己综合成减法电路吧
发表于 2020-4-9 11:15:24 | 显示全部楼层
systemverilog 和新版 verilog 有 signed 类型, 用这个就不用手工转补码了。 verilog-2001之前的需要转
发表于 2020-4-9 18:26:38 | 显示全部楼层
最好-b先转码,然后在调用DSP做加法器(a+(-b转码后的)),这样可以节约大量的资源,并且时序稳定
 楼主| 发表于 2020-4-14 04:28:10 | 显示全部楼层


440实验室 发表于 2020-4-9 09:29
应该不用吧,编译器自己综合成减法电路吧


如果 自动综合成了减法电路,一个小数被一个大数  减,会是一个负数,此时,fpga内部的 减法结果是这个负数的补码吗?

 楼主| 发表于 2020-4-14 04:32:59 | 显示全部楼层


tinytera 发表于 2020-4-9 11:15
systemverilog 和新版 verilog 有 signed 类型, 用这个就不用手工转补码了。 verilog-2001之前的需要转
...


signed 类型 是 可综合的 语句,还是 只用于仿真的语句 ?

 楼主| 发表于 2020-4-14 04:41:18 | 显示全部楼层


tian10 发表于 2020-4-9 18:26
最好-b先转码,然后在调用DSP做加法器(a+(-b转码后的)),这样可以节约大量的资源,并且时序稳定 ...


用的max10,最简单fpga ,没有dsp
发表于 2020-4-14 10:45:31 | 显示全部楼层


american007 发表于 2020-4-14 04:32
signed 类型 是 可综合的 语句,还是 只用于仿真的语句 ?


可综合
发表于 2020-4-14 22:06:11 | 显示全部楼层


american007 发表于 2020-4-14 04:28
如果 自动综合成了减法电路,一个小数被一个大数  减,会是一个负数,此时,fpga内部的 减法结果是这个负 ...


这个用编译软件直接写两句代码验证一下也不费事,不过为什么不直接用有符号数计算呢?signed(x)
 楼主| 发表于 2020-4-15 06:51:45 | 显示全部楼层
verilog和C语言的关键不同,是verilog 最终综合后都会映射为一个电路,那么signed综合后对应一个什么样的电路 ?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 03:12 , Processed in 0.026462 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表