技术是朴实的

『原』流水线技术——面积与速度的矛盾(之二)

上一篇 / 下一篇  2007-01-28 13:27:47 / 天气: 晴朗 / 心情: 平静 / 个人分类:〖数字基础〗

流水线技术——面积与速度的矛盾(之二)


  以一个4×4加法器树乘法器为例。对它的计算过程分别采用组合逻辑设计和流水线设计两种方法编写,比较两者的面积和速度的差别,验证流水线设计是以牺牲面积来换取速度的。

  下面对4×4加法器树乘法器作一介绍:

  对于二进制乘法,以1011×0110为例,它的计算过程为:

  4×4加法器树乘法器的任务就是要模拟上面的计算过程。乘数1100的每一位与被乘数 0110相乘的结果,称为部分积,可以用开关电路实现,即如果乘数的这一位为0,则部分积为0000,如果乘数的这一位为1,则部分积为被乘数。将得到的部分积分成两组,一组包含低两位的部分积(0000, 1011),另一组包含高两位的(1011,0000)。每组中的部分积相加,但这里的相加不是简单的相加,而是要考虑到位权,即第一组的1011左移一位后和0000相加,第二组的0000左移一位后和1011相加,这样得到了第一级的部分和(10110,01011)。将这两个部分和再次带位权相加,即01011左移两位后和10110相加,得到的就是乘法器的最终结果1000010。以上就是4×4加法器树乘法器的工作过程。

  它的结构图如下所示:

  中间一级用的是6位加法器的原因是,由四个4位×1位乘法器得到的部分积M3、M2和 M1、M0之间要作带位权的加法,即M3左移一位和M2相加,M1左移一位和M0相加,这样得到的和是5位,再加上进位1位,所以需要用6位加法器来实现。
  最后一级用的是8位加法器的原因是,由两个6位加法器得到的部分和N1和N0之间要作带位权的加法,即N1左移两位和N0相加,得到的和是8位,这里没有用进位的原因是M3、M2、M1、M0的最大值为1111,得到N1、N2的最大值为101101,得到a×b的最大值为 11100001,因此不会有进位。

  下面是两种乘法器的具体说明:

1、组合逻辑设计的4×4加法器树乘法器

  如图,电路分成三个部分:
  (1)输入部分:用两个4位寄存器将数据同步进来。
  (2)运算部分:由组合逻辑构成。
  (3)输出部分:将运算结果以寄存器型输出,减少输出的毛刺。

2、流水线设计的4×4加法器树乘法器

  电路在上一个乘法器的基础上,将运算部分中每一步的结果用寄存器锁存起来,因此运算部分用了两级流水线。其他部分与上一个乘法器相同。


(待续)


TAG:

引用 删除 liusoldier   /   2007-04-23 15:45:13
你好,看不见图呀
cjyenglish的个人空间 引用 删除 cjyenglish   /   2007-02-13 20:54:12
5
很专业的东西啊
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar