流水线加法器的理解

CSDN上较好的文章分析

(理解图,配合着数据案例第一组G1

a1 0011_1100 b1 1100_0011

第二组G2

a2 0100_1100 b2 1110_0011

第三组G3

a3 1010_1010 b3 1111_1100)
因为Gn的同一个数据高低四位是需要分开计算的,低四位可能会产生进位,所以不一起计算


但是不同数据的高低四位是可以同时计算的

针对引用文章中的这一段话进行分析:

而如果采用流水线加法器序列(2),就得改装了,因为在T-2T秒的时候,低四位加法器的输入值会改变,观察上面流水线加法器时间序列(2)图,可以发现低四位加法器计算的是G2组的低四位,如果这时候还直接输出,则会在2T秒的时候接收到G2组的低四位,G1组的高四位组合值,这是错误的,我们期望得到G1组的高四位和第四位的组合值,所以在T秒G1组的低四位计算出来后,先存在寄存器中一个周期,在2T秒的时候释放出来,也就是我们的输出同步。

逐句分析

因为在T-2T秒的时候,低四位加法器的输入值会改变

确实会改变,因为在T-2T时,已经开始算G2了

如果这时候还直接输出,则会在2T秒的时候接收到G2组的低四位,G1组的高四位组合值,这是错误的,我们期望得到G1组的高四位和第四位的组合值,所以在T秒G1组的低四位计算出来后,先存在寄存器中一个周期,在2T秒的时候释放出来,也就是我们的输出同步

关键就是如果直接在其他周期产生值,会输出不匹配的结果,所以需要有一个寄存器暂时存储数据,再将对应的值放入对应的位置,相加

0-T秒 低四位加法器进行G1组的低四位计算,T秒时把结果存在寄存器一中

T-2T秒 低四位加法器进行G2组的低四位加法器,2T秒时寄存器一结果输出(为G1组低四位),再把G2组第四位结果存入寄存器一

2T-3T秒 低四位加法器进行G3组的低四位加法器,3T秒时寄存器一结果输出(为G1组低四位),再把G3组第四位结果存入寄存器

流水线加法器最重要的是输入输出同步,只有这样,某一个时刻(如T秒),我们输出的才是某一组数据的低四位和高四位和的组合,而不是交叉混乱的

posted @ 2024-02-29 16:38  江左子固  阅读(48)  评论(0编辑  收藏  举报