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

《SPARC体系结构精要-JackTan》.pdf

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

SPARC Arch Essentials 1 SPARC Architecture Essentials Version: 0.4 Date: 2009-05-27 Author: J ack Tan j ianke eng@g ail.co Author: J ack Tan jia nke eng@g ail.co SPARC Arch Essentials 2 版本历史 版本状态 作 者 参与者 起止日期 备注 0.2 Jack Tan 09­05­ 15 完成草稿 0.3 Jack Tan 09­05­20 重排版 0.4 Jack Tan 09­05­27 增加中断异常部分 Author: J ack Tan jia nke eng@g ail.co SPARC Arch Essentials 3 1. GPR 和 ABI 1.1 GPR 1.1.0 SPARC V9 为 64 位,兼容 32 位;SPARC V8 也是 64 位兼容 32 位;而广泛应 于航天器上的 SPARC V7 为 32 位,很精简,天上飞不是闹着玩的,简单、可靠才是王 道 1.1.1 SPARC 的 GPR (General Purpose Register) 较特殊,其引入寄存器窗口 (Register Windows) 的概念,每个窗口的 GPR 数为 24 (可以有 3 ~ 32 个窗口,任一 时刻只有一个窗口可见),再加上一组 (8 个)全局 GPR (Global GPR,有多组,任一 时刻仅一组可见,V9 有 2 组,UltraSPARC 则有 2 ~ 15 组),则任一时刻可见的 GPR 数为 32 可以看到 SPARC 的 GPR 有很多,引入的目的意在提高过程调 的效率。 一般来讲,进入一个子函数首先需要借助栈来保存一些寄存器,而后返回时需要恢复之,参 数的保存和恢复需要很多访存操作,这个会增加很多延迟。若 CPU 内有很多组冗余的寄存 器,则子函数调 时,直接将当前窗口指针指向下一个,子函数就直接使 新的一组寄存器, 就无需一堆的访存指令了。这个思想很好,进入 实 还得有些细节问题要考虑: I. 子函数和父函数间参数和返回值怎么传递? II. 由于物理的限制,可 寄存器组不可能无限大,当调 链达到一定的深度后,寄存器组 不够 怎么办? Author: J ack Tan jia nke eng@g ail.co SPARC Arch Essentials 4 1.1.2 任一时刻可见之 32 个 GPR 编号 24 个窗口寄存器编号为 r8 ~ r31,8 个一组。 r8 ~ r15 又名为 o0 ~ o7,为输出组 (out); r16 ~ r23 又名为 l0 ~ l7,为本地组 (Local); r24 ~ r31 又名为 i0 ~ i7,为输入组 (In)。 8 个全局寄存器编号为 r0 ~ r7 又名为 g0 ~ g7 Author: J ack Tan jia nke eng@g ail.co SPARC Arch Essentials 5 1.2 ABI SPARC 的 ABI 没那么多版本,这个是程序员

文档评论(0)

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

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

1亿VIP精品文档

相关文档