如何减少5级管线中的停顿数

时间:2019-03-27 06:57:27

标签: assembly mips pipeline cpu-architecture

如何通过减少停顿或指令数来优化代码?

我试图在MIPS中执行d =(a + b)*(b-c),想知道我的代码是否可以提高效率。

LW $1, 1($0)              #LOAD A 
LW $2, 2($0)              #LOAD B 
LW $3, 3($0)              #LOAD C 
ADD $ZERO, $ZERO, $ZERO   #NOP 
ADD $1, $1, $2            #ADD A & B 
SUB $3, $2, $3            #SUBTRACT B & C 
ADD $ZERO, $ZERO, $ZERO   #NOP 
ADD $ZERO, $ZERO, $ZERO   #NOP 
MUL $3, $1, $3            #MULTIPLY A & C 
ADD $ZERO, $ZERO, $ZERO   #NOP 
ADD $ZERO, $ZERO, $ZERO   #NOP 
SW $3, 4($0)              #STORE D 

Image of data and its addresses

请注意,这是一个字可寻址实现,并且$ 0中的默认值可以假定为0。

0 个答案:

没有答案