欢迎来到天天文库
浏览记录
ID:36704647
大小:417.10 KB
页数:15页
时间:2019-05-10
《《乘法器的设计》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、乘法器设计版本管理修改记录审核记录版本号.作者描述修改日期V01陈和炯创建2012-12-07版本号.职务签名修改日期内容组成实验介绍设计原理注意事项实验介绍乘法器设计直接使用“*”作为乘法,这种方法谈不上设计乘法器,其最终的硬件实现要根据综合工具综合的结果。好的综合工具可以综合出想要的结果,但是通常得到的都是劣等的乘法运算实现乘法器的方法很多,各有各的优缺点,常见的有移位相加法,加法树法,查表法,混合法等等。内容组成实验介绍设计原理注意事项设计原理电路设计中常采用移位相加的方式实现乘法的功能移位相加法和加法树(二叉树)法都属于此类当然如查表法等另辟蹊径,在某些条件下可能更
2、有效移位相加法移位相加的原理从被乘数的最低位开始判断,若为1,则乘数左移i(i=0,1...(WIDTH-1))位后,与上一次和相加;若为0,则乘数左移i位后,以0相加。直至被乘数的最高位。乘法最终就是由加法和移位运算构成的,由此可以用高速度的加法和移位实现乘法操作。移位相加法移位相加关键代码实现i<=0;r_dout<=0;……if(i3、广泛的应用缺点:串行乘法器的速度比较慢,一个结果输出需要花费多个时钟周期在高位宽乘法运算中尤为明显加法树法加法树法的设计原理本质上依然是移位相加,不同的是采用了流水线的方法将组合逻辑分割成一个一个小的组合逻辑,中间加上触发器用来锁存数据,这样可以大大提高效率加法树法加法树法关键代码实现对被乘数各个位并行判断begin:piple_line//level1outputbuf0<=din_a[0]?(din_b<<0):0;buf1<=din_a[1]?(din_b<<1):0;buf2<=din_a[2]?(din_b<<2):0;buf3<=din_a[3]?(din_b<4、<3):0;buf4<=din_a[4]?(din_b<<4):0;buf5<=din_a[5]?(din_b<<5):0;buf6<=din_a[6]?(din_b<<6):0;buf7<=din_a[7]?(din_b<<7):0;//level2outputbuf01<=buf0+buf1;buf23<=buf2+buf3;buf45<=buf4+buf5;buf67<=buf6+buf7;//level3outputbuf02<=buf01+buf23;buf46<=buf45+buf67;//level4outputdout<=buf02+buf46;end加法树5、法加法树法采用多级流水线结构,是一种并行的方式,将相邻的两个部分的结果再加到最终的输出乘积上,即排列成一个二叉树形式的结构流水线乘法器处理速度比串行加法器快很多以8-bit输入为例,只需要4个时钟周期即可输出结果其缺点是消耗的资源较多其他方法查表法采用的是建立一个表,里面存放了所有的乘法结果,乘数和被乘数用来作为地址去查找里面的乘积。可以大大提高乘法的速率,但是当乘法位数很大时会要求产生很大的表格适合位数较小的乘法,特别适合有一个乘数为固定的乘法混合法根据多种方式设计出来的乘法器。内容组成实验介绍设计原理注意事项注意事项本设计需要注意以下事项:两种方法的乘法器设计中,使用的6、中间(变量)寄存器(如r_dout,buf等)的位宽定义要满足要求,否则结果有误。参考答案给出的串行乘法器使用的是状态机,用户需注意对输入赋值的时间,其结果可在仿真上看出。
3、广泛的应用缺点:串行乘法器的速度比较慢,一个结果输出需要花费多个时钟周期在高位宽乘法运算中尤为明显加法树法加法树法的设计原理本质上依然是移位相加,不同的是采用了流水线的方法将组合逻辑分割成一个一个小的组合逻辑,中间加上触发器用来锁存数据,这样可以大大提高效率加法树法加法树法关键代码实现对被乘数各个位并行判断begin:piple_line//level1outputbuf0<=din_a[0]?(din_b<<0):0;buf1<=din_a[1]?(din_b<<1):0;buf2<=din_a[2]?(din_b<<2):0;buf3<=din_a[3]?(din_b<
4、<3):0;buf4<=din_a[4]?(din_b<<4):0;buf5<=din_a[5]?(din_b<<5):0;buf6<=din_a[6]?(din_b<<6):0;buf7<=din_a[7]?(din_b<<7):0;//level2outputbuf01<=buf0+buf1;buf23<=buf2+buf3;buf45<=buf4+buf5;buf67<=buf6+buf7;//level3outputbuf02<=buf01+buf23;buf46<=buf45+buf67;//level4outputdout<=buf02+buf46;end加法树
5、法加法树法采用多级流水线结构,是一种并行的方式,将相邻的两个部分的结果再加到最终的输出乘积上,即排列成一个二叉树形式的结构流水线乘法器处理速度比串行加法器快很多以8-bit输入为例,只需要4个时钟周期即可输出结果其缺点是消耗的资源较多其他方法查表法采用的是建立一个表,里面存放了所有的乘法结果,乘数和被乘数用来作为地址去查找里面的乘积。可以大大提高乘法的速率,但是当乘法位数很大时会要求产生很大的表格适合位数较小的乘法,特别适合有一个乘数为固定的乘法混合法根据多种方式设计出来的乘法器。内容组成实验介绍设计原理注意事项注意事项本设计需要注意以下事项:两种方法的乘法器设计中,使用的
6、中间(变量)寄存器(如r_dout,buf等)的位宽定义要满足要求,否则结果有误。参考答案给出的串行乘法器使用的是状态机,用户需注意对输入赋值的时间,其结果可在仿真上看出。
此文档下载收益归作者所有