网站大量收购独家精品文档,联系QQ:2885784924

.4 RISC的关键技术.pptVIP

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.4 RISC的关键技术

2.5.4 RISC的关键技术 1. 延时转移技术 为了使指令流水线不断流,在转移指令之后插入一条没有数据相关和控制相关的有效指令,而转移指令被延迟执行,这种技术称为延迟转移技术。 采用指令延迟转移技术时,指令序列的调整由编译器自动进行,用户不必干预。 读采用延迟转移的程序,必须十分小心。 条件转移指令的延迟执行 调整前的指令序列: 1:MOVE R1, R2 2:CMP R3, R4 ;(R3)与(R4)比较 3:BEQ EXIT ;如果(R3)=(R4)则转移 ……… NEXT: MOVE R4, A 采用延迟转移技术的两个限制条件 被移动指令在移动过程中与所经过的指令之间没有数据相关 被移动指令不破坏条件码,至少不影响后面的指令使用条件码 如果找不到符合上述条件的指令,必须在条件转移指令后面插入空操作 如果指令的执行过程分为多个流水段,则要插入多条指令 插入1条指令成功的概率比较大,插入2条或2条以上指令成功的概率明显下降 2. 指令取消技术 采用指令延时技术,经常找不到可以用来调整的指令, 可考虑采用另一种方法:指令取消技术 分为两种情况: (1)向后转移(适用于循环程序) 实现方法:循环体的第一条指令安放在两个位置,分别在循环体的前面和后面。 如果转移成功,则执行循环体后面的指令,然后返回到循环体开始; 否则取消循环体后面的指令 (2)向前转移(IF THEN ) 实现方法:如果转移不成功,执行转移指令 之后的下条指令,否则取消下条指令。 例子:R R R …… “IF”部分的程序代码 S S S COMP R1, R2, THRU T T T …… “THEN”部分的程序代码 U U U THRU: V V V 效果:转移成功与不成功的概率, 通常各50% 主要优点:不必进行指令流调整 3. 重叠寄存器窗口技术 (Overlapping Register Window) 原因:在RISC中,子程序比CISC中多 因为传送参数而访问存储器的信息量很大 美国加洲大学伯克利分校的F Baskett提出 实现方法:设置一个数量比较大的寄存器堆,并把它划分成很多个窗口。每个过程使用其中相邻的三个窗口和一个公共的窗口,在这些窗口中: 有一个窗口是与前一个过程共用 有个窗口是与下一个过程共用。 与前一过程共用的窗口可以用来存放前一过程传递给本过程的参数,同时也可以用于存放本过程传送给前一过程的计算结果。 例子:(在RISC II中采用的方法) 目前,SUN公司的SPARC、SuperSPARC、UtraSPARC等处理机,把最后一个过程与第一个过程的公用寄存器重叠起来,形成一个循环圈。 效果:可以减少大量的访存操作。 另外,要在主存中开辟一个堆栈,当调用层数超过规定层数(寄存器溢出)时,把益出部分的寄存器中内容压入堆栈。 4. 指令流调整技术 目标:通过变量重新命名消除数据相关,提高流水线效率 例子:调整后的指令序列比原指令序列的执行速度快一倍 ADD R1,R2,R3 ADD R1,R2,R3 ADD R3,R4,R5 MUL R6,R7,R0 MUL R6,R7,R3 ADD R3,R4,R5 MUL R3,R8,R9 MUL R0,R8,R9 调整前的指令序列 调整后的指令序列 5. 以硬件为主固件为辅 固件的主要缺点是: 执行速度低。目前,ROM的速度低于SRAM 一条机器指令通常要多条微指令解释执行 固件的主要优点是: 便于实现复杂指令,便于修改指令系统 以硬联逻辑为主来实现指令系统 对于少数复杂的指令,目前的许多处理机也用微程序技术实现。 2.5.5 RISC优化编译技术 RISC对编译器带来的方便主要有: (1)指令系统比较简单、对称、均匀,指令选择工作简单。 (2)选择寻址方式的工作简单, (3)因为采用LOAD/STORE方式,省去了是否生成访问存储器指令的选择工作。 (4)由于大多数指令在一个周期内执行完成,为编译器调整指令序列提供了极大的方便。 RISC对编译器造成的困难主要有: (1)必须精心安排每一个寄存器的用法,以便充分发挥每一个通用寄存器的效率,尽量减少访问主存储器的次数。 (2)做数据和控制相关性分析,要调整指令的执行序列,并与硬件相配合实现指令延迟技术和指令取消技术等。 (3)要

文档评论(0)

qianqiana + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5132241303000003

1亿VIP精品文档

相关文档