第六章--流水线处理机及其设计.ppt

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.1 引言 指令系统 6.2.1 流水线级 6.2.2 流水线各级的操作 6.3 流水线处理机的控制 6.3.1 算术操作和存储器访问控制 6.3.2 流水线转移指令控制 6.3.3 流水线各级信号的产生 流水线中的相关及解决办法 结构相关问题 数据相关问题 转移相关问题 6.4 结构相关及解决办法 存储器相关 写寄存器相关 读寄存器相关 存储器相关 现象 解决办法 写寄存器相关 现象 解决办法 解决办法 ALU指令用5个周期 寄存器堆有两个写端口 改造load rd,(imm)rs1=>load rd,(rs1) 寄存器堆有两个写端口 改造 load rd,(imm)rs1=>load rd,(rs1) 读寄存器相关 现象 解决办法 6.5 数据相关及解决办法 6.5.1 数据相关问题(现象) 6.5.2 暂停数据相关流水线 6.5.3 提高流水线处理机的性能--- 内部前推 6.5.4 处理load指令---- 暂停与内部前推想结合 6.5.1 数据相关 6.5.2 暂停数据相关流水线 暂停流水线要做以下3件事情 封锁当前正在译码的指令的写控制信号; 不把从存储器取来的下一条指令打入IR; 不改变当前PC值。 6.5.3 提高流水线处理机的性能 内部前推 6.5.4 处理load指令---- 暂停与内部前推想结合 6.6 转移相关及解决办法 6.6.1 转移相关问题 解决转移相关问题 暂停流水线; 假定转移不发生; 延迟转移。 6.6.2 暂停流水线 6.6.3 假定转移不发生 6.6.4 延迟转移 6.7 异常事件处理 检测出数据相关 DEPEN=A_DEPEN+B_DEPEN A_DEPEN=EXE_A_DEPEN+MEM_A_DEPEN 1.转移指令或存储指令 2.转移指令或存储指令 3.任意指令 不相关 1.非转移指令或存储指令 2.转移指令或存储指令 3.任意指令 4.不相关 1.非转移指令或存储指令 2.转移指令或存储指令 3.任意指令 相关 bne disp (branch on not equal to zero) If Z,pc=pc+disp beq disp (branch on equal to zero) If Z,pc=pc+disp branch disp (unconditional branch) pc=pc+disp Sub r1,r1,1; nop; bne loop; nop; … branch ti; nop; Sub rd,rs1,rs2; Bne disp Load …. Add ….. 现象 解决办法 现象 现象 现象 store rd,(rs1,rs2) 解决办法 * 流水线处理机及其设计 S: 性能加速比 I: 一个程序被执行的总的指令条数 CPI: 每条指令总体平均所需的时钟周期数 CPInp:非流水线处理机的CPI CPIp: 流水线处理机的CPI m: 一条指令执行分成级 T: 每个时钟周期的时间长度 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 1 2 1 2 3 1 1 2 2 1 2 3 4 5 2 3 3 3 4 4 4 5 5 6 6.2 流水线处理机的数据路径 流水线是m级 每一级的时间是t 执行n条指令 写出非流水线操作时,所需时间公式 写出流水线操作时,所需时间公式 1.T=nmt 2.T=mt+(n-1)t 3.S=流水线性能/非流水线性能 =nmt/(mt+(n-1)t) =nm/(m+n-1) =m/(m/n-1/n+1)=m Add rd,rs1,rs2; Addi rd,rs1,imme Store rd,rs1,imme Load rd,rs1,imme 1.IF 级 2.ID级 3. EXE级 4.MEM 级 5.WB 级 2.ID级 3. EXE级 4.MEM 级 5.WB 级 0:Add r1,r2,r3; 1:Sub r4,r5,r6; 2:And r7,r8,r9; 3:Addi r10,r11,45; 4:Ori r12,r13,43; Load rd,rs1,rs2; Load rd,rs1,imme; Store rd,rs1,imme; R1<=r2+4 *

文档评论(0)

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

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

1亿VIP精品文档

相关文档