浅析流水线冲突及解决方案_第1页
浅析流水线冲突及解决方案_第2页
浅析流水线冲突及解决方案_第3页
浅析流水线冲突及解决方案_第4页
浅析流水线冲突及解决方案_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浅析流水线冲突及解决方案目录1、流水线的概念2、流水线的分类3、经典的5段流水线4、指令相关5、流水线冲突与解决方案1、流水线的概念流水线:把一个重复的过程分解为若干子过程,每个子过程由专门的功能部件来实现。将多个处理过程在时间错开,依次通过各功能段,每个子过程就可以与其他子过程并行进行。2、流水线的分类(1)按照流水线完成的功能来分类单功能流水线 多功能流水线(2)按照流水线中是否有反馈回路分类线性流水线 非线性流水线2、流水线的分类(3)按照任务流入流出的顺序是否相同分类顺序流水线 乱序流水线(4)按照流水线级别分类部件级流水线 处理机级流水线 处理机间流水线3、经典5段流水线 IMReg

2、DMRegALUIF段ID段EX段MEM段WB段流水寄存器(1)取指令周期(IF):根据PC指示的地址从存储器中取出指令并放入指令寄存器IR,同时PC值加4,指向顺序的下一条指令。(2)指令译码/读寄存器周期(ID):对指令进行译码,并用IR中的寄存器编号去访问通用寄存器组。(3)执行/有效地址计算周期(EX):AUL对在上一周期准备好的操作数进行运算或处理。3、经典5段流水线(4)存储器访问/分支完成周期(MEM)load和store指令Load指令:用上一周期计算出的有效地址从存储器中读取相应数据。Store指令:把指定数据写入此有效地址所指出的存储单元。分支指令若前一周期判定该分支成功,

3、就把转移目标地址送入PC。(5)写回周期(WB):ALU运算指令和load指令在这个周期会把结果数据写入通用寄存器。4、指令相关相关:指两条指令之间存在某种依赖关系。3种类型:数据相关、名相关、控制相关(1)数据相关依次存在两条指令i(在前)和j(在后),若指令j使用指令i产生的结果或指令j与k数据相关,而k又与指令i数据相关,则称j与i数据相关。4、指令相关(2)名相关名:指指令所访问的寄存器或存储单元名称。名相关:指两条指令使用的名相同,但没有数据流动,则称它们名相关。4、指令相关(3)控制相关控制相关是指由分支指令引起的相关。它需要根据分支指令的执行结果来确定后续指令是否执行。一般说来,

4、为确保程序应有的执行顺序,必须严格按控制相关确定的顺序执行5、流水线冲突及解决方案流水线冲突:指对于具体的流水线来说,由于相关的存在,使得指令流中的下一条指令不能在特定的时钟周期执行。流水线冲突有三种类型:结构冲突、数据冲突、控制冲突。5、流水线冲突及解决方案(1)结构冲突定义:因硬件资源满足不了指令重叠执行的要求而发生的冲突。解决方案:a、可以在前一个指令访问存储器时,将流水线停顿一个时钟,推迟后面取指令的操作。停顿周期称为“流水线气泡”。b、在流水线处理机中设置相互独立的指令。存储器和数据存储器5、流水线冲突及解决方案指令编指令编号号时钟周期时钟周期12345678910指令iIFIDEXMEMWB指令i+1IFIDEXMEMWB指令i+2IFIDEXMEMWB指令i+3stallIFIDEXMEMWB指令i+4IFIDEXMEM指令i+5IFIDEXMEM指令停顿表5、流水线冲突及解决方案(2)数据冲突定义:当指令在流水线重叠执行时,因需要用到前面的执行结果而发生的冲突。分类:写后读冲突、写后写冲突、读后写冲突。解决方案:通过定向技术减少数据冲突引起的停顿。设置流水线互锁机制。5、流水线冲突及解决方案依靠编译器解决数据冲突5、流水线冲突及解决方案(3)控制冲突定义:流水线遇到分支指令和其他会改变PC值的指令所引起的冲突。解决方案:最简单的方法是“冻

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论