2016-第3章-3-增加内容流水线处理器设计教程.ppt

2016-第3章-3-增加内容流水线处理器设计教程.ppt

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

二、流水线转移指令控制;31 26;转移指令在ID级由专用加法器计算转移地址;条件转移指令同时判断转移条件。;向前转移和向后转移 100:load r1,0(r2) …… 227:bne 11111111111111111110000000 偏移量为-128,不为零转向100 …… 444:branch 00000000000000000011111111 偏移量为255,转向700 …… 700:add r4,r5,r6;无条件转移指令和条件转移指令的流水线操作;* 空操作指令(nop):占用一个时钟周期的位置,而不对处理机状态产生任何影响。 * 条件转移指令:需要EXE级结束产生的Z标志,故需要插入2条nop,如图1.23(a)。 * 无条件转移指令:不需判断Z标志,只需要插入1条nop,如图1.23(b)。 * 延迟指令:转移指令的下一条指令。模型机结构只有1条延迟指令(如果目标地址计算在EXE级,延迟指令有2条)。 ;1、无条件转移指令流水线执行过程 …… branch t1 nop …… t1: add r1, r1, 1 ;无条件转移指令的流水线操作——计算转移地址 ID级:计算转移目标地址,从IR获取偏移量进行符号扩展; IF级:nop被取出; BTAKEN=1,选择符号扩展偏移量disp;地址加法器计算转移目标地址,等时钟上升沿(本周期结束)将目标地址打入PC。;无条件转移指令的流水线操作——转向目标地址;无条件转移指令branch在ID级计算转移地址,所需要的控制信号: BTAKEN为1,转移地址= (PC)+ disp ;2、条件转移指令流水线执行过程: 无论是否转移延迟指令nop都要执行 Loop:add …… sub r1, r1, 1 nop bne/beq loop nop or …… ;图1.26 条件转移指令的流水线操作-——ALU计算条件Z(转移时);图1.27 条件转移指令的流水线操作一一使用Z判断是否转移;  bne或beq指令判断Z,以确定是否转移。 如果条件满足,BTAKEN为1,转移地址= (PC)+ disp 否则,BTAKEN为0,PC加1计算nop下一条顺序指令的地址。 在时钟上升沿到来时,计算出的地址被打人PC。若是转移目标地址,则从目标地址取出指令;否则取nop后的顺序指令。   综上所述,转移发生的条件(BTAKEN为1)为: BTAKEN=branch + bne + beqZ BTAKEN在ID级产生,但要注意,产生Z的指令要早它两个周期。;三、流水线各级信号的产生;流水线处理机的数据路径和控制信号; BTAKEN = branch+bne +beqZ SST = store SIMM = andi+ori+addi+subi+load+store WZ = andi+ori+addi+subi+and+or+add+sub WMEM = store  SLD = load  WREG = andi+ori+addi+subi+and+or+add      +sub+load;指令;;; BTAKEN = branch+bne +beqZ SST = store SIMM = andi+ori+addi+subi+load+store WZ = andi+ori+addi+subi+and+or+add+sub WMEM = store  SLD = load  WREG = andi+ori+addi+subi+and+or+add      +sub+load ALUOP1 = add+addi+sub+subi+load+store ALUOP0 = or+ori+sub+subi ;思考题:各流水级存放控制信号的流水线寄存器有何异同?;*;A.3.4 结构相关及解决方法;相关(冒险)分类;相关总是可以用停顿解决;结构相关:流水段竞争;多重访问寄存器堆;在一

文档评论(0)

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

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

1亿VIP精品文档

相关文档