EDA课程设计六位乘加器华侨大学.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA课程设计六位乘加器华侨大学

EDA实验报告 十六位硬件乘加器电路 学号 1座机电话号码7 姓名 张凌枫 班级 12电子信息工程A 华侨大学电子工程系 题目名称:十六位硬件乘加器电路 摘要: 采用流水线方式来实现对8个16位数据进行乘法和加法运算(yout a0 b0+a1 b1+a2 b2+a3 b3),使用乘法器lpm_mult2、16位加法器ADDER16B、计数器cnt16以及锁存器en_dff四个模块。当clock出现上升沿时,对输入端输入的两个数dataa、datab进行乘法运算。将结果输入锁存器中,锁存上一阶段计算得到的值, 16位加法器ADDER16B将锁存器锁存的上一阶段的值与进行完乘法计算得到的值dataa*datab加起来,并输出结果。计数器cnt16用于区分四组乘加所得数,当有一个上升沿脉冲送入cnt16时,若计数不到5,则进行计数+1,若计数达到5,COUT输出进位信号到锁存器en_dff的reset端口,将锁存器复位清零,重新进行计数。此设计经过仿真与硬件测试检验后证实可行。 目录 4.1系统设计…………………………………………………4 4.1.1设计要求 4.1.2系统设计方案 (1)系统设计思路 (2)总体方案的论证与比较 (3)各功能块的划分与组成 (4)系统的工作原理 4.2单元电路设计……………………………………………6 4.2.1各单元电路的工作原理 4.2.2各单元电路电路分析与设计 4.3软件设计…………………………………………………12 4.3.1软件设计平台、开发工具和实现方法 4.3.2程序的流程方框图 4.3.3实现的功能、程序清单 4.4系统测试…………………………………………………16 4.4.1系统的性能指标 4.4.2功能的测试方法、步骤 4.4.3仪器设备名称、型号 4.4.4测试数据、图表 4.5结论………………………………………………………19 4.5.1对测试结果和数据的分析和计算 4.5.2对于此设计的评价 正文 4.1系统设计 4.1.1设计要求 设计要求:位宽16位;能对8个16位数据进行乘法和加法运算(yout a0 b0+a1 b1+a2 b2+a3 b3),并行、串行或流水线方式。 4.1.2系统设计方案 (1)系统设计思路:由十六位加法器构成以时序逻辑方式设计的十六位乘加器,流水线方式 ,以移位加法为核心器件。 (2)总体方案的论证与比较 方案一:采用四个乘法器,以串行方式输入各数据。 方案二:采用一个乘法器,先输入两数据进行运算,将得到结果保存,并与下一组乘法运算得到的结果相加。 方案的选择:第一种方案浪费大量的资源,考虑到实验箱条件限制,采用第二种方案。尽管速度较慢,但可省下相当多的资源,并且实验室可以实现。 (3)各功能块的划分与组成 共有4个设计模块,分别是乘法器lpm_mult2、16位加法器ADDER16B、计数器cnt16以及锁存器en_dff。 (4)系统的工作原理 以上是电路原理图。乘数dataa与被乘数datab输入乘法器lpm_mult2中,当START有上升沿出现时,乘法器计算出dataa*datab的结果并有result[15..0]输出。result[15..0]输出的结果送入8位加法器ADDER8B的A[15..0]输入端,加法器的B[15..0]输入端连接到锁存器en_dff的输出端q[15..0],这样锁存器锁存的值就可以与加法器所得到的值相加,得到两对乘法计算后值得和,以此类推,可以得到不断累加的值。而CIN端口接地,这样可以确保CIN端口不影响加法器的计算。加法器计算A[15..0](dataa*datab)和锁存器锁存的值B[15..0]的和从输出端S[15..0]输出,输入锁存器en_dff的输入端d[15..0],将数值锁存起来,同时输出端S[15..0]接到输出端YOUT[15..0],从而从仿真中可以看到每一阶段累加的结果。而计数器cnt16的作用是区分四组乘加所得数与四组乘加所得数。EN接高电平,rst接低电平,保证计数器可用,clk接到START,每当有一个上升沿脉冲送入cnt16时,若计数不到5,则进行计数+1,若计数达到5,COUT输出进位信号到锁存器en_dff的reset端口,将锁存器复位清零,重新进行计数。 4.2单元电路设计 4.2.1各单元电路的工作原理 总共有四大模块,分别为乘法器lpm_mult2、16位加法器ADDER16B、计数器cnt16以及锁存器en_dff。 (1)乘法器的lpm_mult2作用:当clock出现上升沿时,对输入端输入的两个数dataa、datab进行乘法运算。 (2)16位加法器ADDER16B的作用:将锁存器锁存的上一阶段的值与进行完乘法计算得到的值dat

文档评论(0)

kpky39 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档