微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 急 为什么要自己写乘法器代码?

急 为什么要自己写乘法器代码?

时间:10-02 整理:3721RD 点击:
最近在学FPGA,要写一些滤波器的算法,要用到乘法器,我很奇怪大家为什么都要自己写VHDL乘法器代码,为什么不用QUARTUS内部自带的LPM乘法器?
谢谢各位高手帮小弟解决这一疑惑!

可能因为功耗或面积原因,需要从RTL级入手解决

量身定制呗
这还用说
不然大家都用ASIC完了

大部分纯属练手,当然不排除部分有特殊要求。
FPGA会调用乘法器,DC会用DW里面的
自己写的未必有多好

最好是用自带的乘法器,自写的应赶不上FPGA CORE生成的效率高,
如果担心移植问题,比如ALTERA和XILINX平台的,可以写个参数型的文件,将平台与适用位宽,signed/unsigned全包含在里面,以后换平台也轻松得很。

IPcore对位宽都有限制,有的时候需要拼接使用,很麻烦。还不如自己写一个省事。

从可移植型以及约束目标可控性(面积最优还是速度最优)角度讲,还是用自己写的吧,调用IP的话,FPGA时序通过并不代表DC一定通过。

如果在FPGA,使用自带的IP是可以的,前提是买了相关的license,否则只能自己写
如果是做ASIC,也可以用现有的IP,成本是一个要考虑的因素,另外就是性能。所以很多设计最后还是自己设计乘法器

除非是极特殊的应用场合。否则,哪怕你是用门来搭建乘法器性能也未必好过IP。比IP性能好的乘法器通常是全定制的。

上opencores上找

滤波器中的乘法器可以自己实现,用补码查找表,不过一般都会用库里面的乘法器,除了有特殊要求!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top