第5章标量处理机(5.4,5.5,5.6)流水线的冲突MIPS流水线浅析.ppt

第5章标量处理机(5.4,5.5,5.6)流水线的冲突MIPS流水线浅析.ppt

5.4 流水线的相关与冲突;介绍一条经典的5段RISC流水线 首先讨论在非流水情况下是如何实现的 一条指令的执行过程分为以下5个周期: 取指令周期(IF) 以程序计数器PC中的内容作为地址,从存储器中取出指令并放入指令寄存器IR; 同时PC值加4(假设每条指令占4个字节),指向顺序的下一条指令。  ;指令译码/读寄存器周期(ID) 对指令进行译码,并读出寄存器的内容。用IR中的寄存器地址去访问通用寄存器组,读出所需的操作数。由于指令的立即数部分也保存在相同的位置,需要扩展立即数的操作也在本段完成。 执行/有效地址计算周期(EX) 不同指令所进行的操作不同: load和store指令:ALU把指令中所指定的寄存器的内容与偏移量相加,形成访存有效地址。 寄存器-寄存器ALU指令:ALU按照操作码指定的操作对从通用寄存器组中读出的数据进行运算。;寄存器-立即数ALU指令:ALU按照操作码指定的操作对从通用寄存器组中读出的操作数和指令中给出的立即数进行运算。 分支指令:ALU把指令中给出的偏移量与PC值相加,形成转移目标的地址。同时,对在前一个周期读出的操作数进行判断,确定分支是否成功。 存储器访问/分支完成周期(MEM) 该周期处理的指令只有load、store和分支指令。 其它类型的指令在此周期不做任何操作。;load和store

文档评论(0)

1亿VIP精品文档

相关文档