体系结构第3章 第2讲.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
体系结构第3章 第2讲

* 此通路为分支指令EX段通路,4种跳转指令不是此通路。 * * * * * * 纵坐标不是流水段,而是指令。 * * 注意PC也是一级寄存器,相当于站间寄存器。 * 冲突导致本该在在IF段之前的所有指令都进不到流水线内。 * * 分站后站间寄存器算哪站的? 都可以,但不要不一致。 * * * * * * 流水段 表3.1 MIPS流水线的每个流水段的操作 任何指令类型 ALU 指令 Load/Store 指令 分支指令 IF ID EX IF/ID.IR ← Mem[PC] IF/ID.NPC,PC ← (if EX/MEM.cond{EX/MEM.ALUOutput} else {PC+4}); ID/EX.A ← Regs[IF/ID.IR6...10]; ID/EX.B ← Regs[IF/ID.IR11...15]; ID/EX.NPC ← IF/ID.NPC; ID/EX.IR ← IF/ID.IR; ID/EX.Imm ← (IR16)16##IR16...31; EX/MEM.IR ← ID/EX.IR; EX/MEM.ALUOutput ← ID/EX.A op ID/EX.B 或 EX/MEM.ALUOutput ← ID/EX.A op ID/EX.Imm; EX/MEM.cond ← 0; EX/MEM.IR ← ID/EX.IR; EX/MEM.B ←ID/EX.B EX/MEM.ALUOutput ← ID/EX.A + ID/EX.Imm; EX/MEM.cond ← 0; EX/MEM.ALUOutput← ID/EX.NPC+ID/EX.Imm; EX/MEM.cond ← (ID/EX.A op 0); 流水段 表3.1 MIPS流水线的每个流水段的操作(续) 任何指令类型 ALU 指令 Load/Store 指令 分支指令 MEM WB MEM/WB.IR ←EX/MEM.IR; MEM/WB.ALUOutput ← EX/MEM.ALUOutput; MEM/WB.IR ← EX/MEM.IR; MEM/WB.LMD ← Mem[EX/MEM.ALUOutput]; 或 Mem[EX/MEM.ALUOutput] ← EX/MEM.B; Regs[MEM/WB.IR16...20] ← MEM/WB.ALUOutput; 或 Regs[MEM/WB.IR11...15] ← MEM/WB.ALUOutput; Regs[MEM/WB.IR11...15] ← MEM/WB.LMD; 谢谢! * 我们分析MIPS:简单、典型的多站顺序指令流水线。 * 这里的存储器都是异步存储器 * 各个操作数要进入不同的位置 这些位置是规定好了的 影响着后面通路的连接 * 根据操作数放好的位置进行执行。 为什么可以合并: 因为执行和访存在两站。 * 为什么访存和分支在一站? * 综合所有的指令,哪些在这一阶段才完成? * 只是把功能划分成了5部分。 * 注意每种改进的优缺点。 不规整,降低频率 本质就是流水化。 * 重点:流水线的结构 时空图的表示 * 流水化后带来的资源冲突问题 * 流水化后带来的时序问题。 * 阐述清楚上述问题后(假设了一定的前提) 流水线的详细构成。 * 对应结构图,掌握每一步的操作及其表达! * 再来论述一些细节, 以加深对流水线结构的认识。 * 牢记每个功能段的组成和结构。 * * * * * 计算机体系结构 * 计算机体系结构 * 国家精品资源共享课程:计算机体系结构 第三章:流水线技术 国防科技大学计算机学院 主讲人: 教授 第三章 流水线技术 3.2 MIPS基本流水线 3.2.1 MIPS的一种简单实现 3.2.2 基本MIPS流水线 3.2.3 流水线性能分析 图3.9给出了实现MIPS指令的一种简单数据通路 这是一种非流水方式 将指令执行划分为5个阶段 取指令周期 指令译码/读寄存器周期 执行/有效地址计算周期 存储器访问/分支完成周期 写回周期 3.2.1 MIPS的一种简单实现 1.取指令周期(IF) 操作为: 根据PC值从存储器中取出指令,并将指令送入指令寄存器IR;PC值增加4,指向顺序的下一条指令,并将下一条指令的地址放入临时寄存器NPC中。 IR←Mem[PC] NPC←PC+4 图示 2.指令译码/读寄存器周期(ID) 操作为: 进行指令译码,读IR寄存器(指令寄存器),按照相应寄存器号读寄存器文件,并将读出结果放入两个临时寄存器A和B中。同时对IR寄存器中内容的低16位进行符号扩展,然后将符号扩展之后的32位立即值保存在临时寄存器Imm中。

您可能关注的文档

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档