美文网首页计算机组成原理
403 - 乘法器的优化

403 - 乘法器的优化

作者: 航航大魔王 | 来源:发表于2017-07-29 09:59 被阅读18次

优化1:两个关键点:

  1. 每个寄存器的当前保存结果即为瞬时输出结果,不影响下一次内容改变;
  2. 加法器中保存的结果在下一个时钟上升沿来临之前,不会对乘积寄存器有任何改变。

结论:移位和加法器可以同步进行

图1

优化2:计算机进行乘法运算的每一轮产生的中间结果不相互影响,可以一次性算出所有的中间结果直接相加。

结论:减少不必要的硬件资源

  1. “被乘数寄存器”8位宽带左移,但其中有效数字始终只有4位;
  2. “乘数寄存器”4位宽带右移,但其中有效数字每周期减少1位;
  3. “乘积寄存器”8位宽,但初始时有效数字只有4位,而且每周期增加1位;
  4. “加法器”8位宽,但参与运算的有效数字实际只有4位。
图2

优化方案:

  1. “被乘数寄存器”缩减为4位而且取消左移功能(削减了空间,相应的要减少分配给它的任务)

    图3
  2. “乘积寄存器”增加右移功能乘积初始值置于其中高4位,随着运算过程不断右移(保留了你的地盘,相应的给你增加一点任务。被乘数左移是为了和中间的结果进行对齐,以便进行运算,这个任务交给乘积寄存器来做。因为左移变成了右移,所以要把乘积初始值置于高4位。)

    图4
  3. 取消“乘数寄存器”,乘数初始置于 “乘积寄存器” 低4位(注意看第2步,乘积寄存器的初始值被置于高4位,并且增加了右移功能。而乘数寄存器刚好是4位寄存器并且带有右移功能,那么可以把乘数寄存器和乘积及存取合并,并把乘数寄存器的4位数置于乘积寄存器的低4位,同时能保证乘数的对齐。)

    图5
  4. “加法器”缩减为4位宽,“乘积寄存器”只有高4位参与运算(被乘数已被削减位4位,相应的,加法器也调整为4位。)


    图6

最终得到的改进版架构:

图7

同理得到N位乘法器的架构:


图8

相关文章

  • 403 - 乘法器的优化

    优化1:两个关键点: 每个寄存器的当前保存结果即为瞬时输出结果,不影响下一次内容改变; 加法器中保存的结果在下一个...

  • 模拟乘法器和除法运算电路

    模拟乘法器可以实现乘法运算,利用模拟乘法器作为集成运放的反馈电路可以实现除法运算。模拟乘法器的表示图与除法运算电路如下:

  • 第四讲 乘法器和除法器(Multiplier and Divid

    内容要点:乘法运算,乘法器的实现,除法运算,除法器的实现 乘法器的实现 Multiplicand (8-bit,S...

  • P2P接口Booth乘法器设计

    本文首发于个人博客 描述 Booth乘法器是一种使用移位实现的乘法器,实现过程如下,对于乘法:扩展A的位数为n+1...

  • 简单的乘法器

    结果如下: 两个16位的数相乘,并以十进制、十六进制、二进制显示成绩

  • ROM乘法器

    基本算法 ROM乘法器的算法比较简单,即使用一个ROM保存乘法的结果,在需要运算的时候直接到相应的地址去查表即可。...

  • 403

    市场的问题在最近几个月一个苦扰着许多品牌,我们也不例外。在过去的几个月里,每个同事都花很多时间在自己的工作上,想让...

  • To 403

    鉴于我没有沈佳琳那么多废话,我就写个全部人的(毕竟这么好的渠道我也要好好利用) 既然如此,我们就按年龄吧!哈哈哈(...

  • 403

    放不下,怎么放得下。403

  • 403

网友评论

    本文标题:403 - 乘法器的优化

    本文链接:https://www.haomeiwen.com/subject/kbcqlxtx.html