明德扬论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫一扫,快捷登录!

查看: 128935|回复: 0

21 一个16位乘法器 编号:002900000067

[复制链接]
发表于 2019-9-26 19:07:34 | 显示全部楼层 |阅读模式

马上注册,看完整文章,学更多FPGA知识。

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

x
21  一个16位乘法器

本案例的编号为:002900000067,如果有疑问,请按编号在下面贴子查找答案:MDY案例交流【汇总贴】_FPGA-明德扬科教 (mdy-edu.com)
本文为明德扬原创及录用文章,转载请注明出处

本工程实现的内容是16位乘法器的加法实现方式。在FPGA设计中,我们需要考虑到资源与速度的问题,同样一个功能我们可以用较少的资源去实现,也可以用较多的资源去实现,FPGA设计工程师在设计当中应当在满足系统速度要求的前提先采取更节省自愿的额设计方法。FPGA资源当中,乘法器的运行速度比加法器要慢很多,假如在设计当中用到了乘法器,而该乘法器所在路径刚好成为了关键路径,那么我们提高速度的方法就是把乘法器转化成加法来实现。

具体实现的功能如下:
a. ina和inb是被乘数和乘数的输入端口,把要做乘法运算的两个16bit 数据由此输入;
b. start 信号是乘法运算触发信号,输入一个脉冲触发运算;
c. 运算结果由out端口输出;
d. vld标志最终运算结果,在vld有效的同时out是当前乘法器运算结果;
e. 用加法器代替了乘法器,比如:3'b011 * 2'b10 = (3'b011 *1'b0)+({3'b011,1'b0}*1'b1);
f. 用移位寄存器和选择器得到每一步相加的数。如果乘数是16位,那就是16个数相加。


参考工程代码见下面文档
点拨开发板.rar (3.61 KB, 下载次数: 35, 售价: 1 金币)
FPGA视频课程  培训班 FPGA学习资料
吴老师 18022857217(微信同号) Q1241003385
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|MDYBBS ( 粤ICP备16061416号 )

GMT+8, 2024-11-23 06:18 , Processed in 0.049027 second(s), 25 queries .

Powered by Discuz! X3.4

本论坛由广州健飞通信有限公司所有

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表