32位powerpc构架通用寄存器分析及总结二..docVIP

32位powerpc构架通用寄存器分析及总结二..doc

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

32位PowerPC构架通用寄存器分析及总结二 第四部分操作系统环境(OEA-Operating Environment Architecture)寄存器寄存器集 OEA寄存器集包含四类寄存器: 1:配置寄存器(Configuration Registers) ?????? MSR寄存器: ?????? 定义处理器的状态,它可以被mtmsr, sc, rfi指令修改;可以被mfmsr读取; ?????? PVR寄存处: ?????? 定义寄存器模型的版本和处理器的版本 2:内存管理寄存器(Memory Management Registers) ?????? BAT寄存器: ?????? OEA定义了四组BAT指令寄存器(IBAT0U-IBAT3U和IBAT0L-IBAT3L),也定义了四组BAT数据寄存器(DBAT0U-DBAT3U和DBAT0U-DBAT3U) ?????? SDR1寄存器: ?????? 该寄存器定义了用于虚拟地址转换为物理地址所需要的页表基地址 ?????? SR寄存器: ?????? OEA定义了16个32位的SR寄存器(SR0-SR15) 3:中断处理寄存器(Interrupt Handing Register) ??????DAR(Data Address Register)寄存器: ?????? 在DSI(Data Storage Interrupt)和对齐中断发生之后,DAR寄存器被设置成异常指令产生的有效地址; ?????? SPRG0-SPG3寄存器: 提供给操作系统使用 ?????? DSISR寄存器: 定义产生DSI(Data Storage Interrupt)和对齐中断的原因 ?????? SPR0(Machine status save/restore register 0)寄存器: ?????? 在中断中用来保存MSR寄存器,当rfi指令执行时,用来恢复MSR寄存器 ????? SPR1(Machine status save/restore register 1)寄存器: 在中断中用来保存MSR寄存器,当rfi指令执行时,用来恢复MSR寄存器 ? 4:多功能寄存器(Miscellaneous Registers) ?????? TB(time base)寄存器: ?????? 具体参考第三部分VEA ?????? DEC寄存器:这是一个32位的递减计数器 ?????? EAR(External Access Register)寄存器:用于访问外部设备 ?????? DABR(Data address breakpoint register):用来控制数据地址断点功能 ?????? PIR(Processor identification register):在多处理器的芯片上用来标识一个核,例如在MPC8641d芯片上有两个E600的core,就用PIR来定位其中的core。 OEA寄存器集的示意图如下: 4.1 MSR寄存器 MSR寄存器定义了处理器的状态,在初始化PowerPC 核心时,MSR是第一个被配置的处理器。当一个中断发生时MSR寄存器的相关位将会发生改变。它也可以被mtmsr, sc, rfi指令所修改,被mfmsr读取。 格式如下:? 各个字段说明: MSR[0:12]:保留位 备注:在E600内核中使用了保留位中第6位来表示是否使用VltiVec指令 MSR[13]-POW位:能源管理机制(Power management enable)是否开启 MSR[14]:保留位 MSR[15]-ILE:(Interrupt little-endian)采用小端格式的中断模式是否开启,当中断发生时该位被拷贝到MSR[31]-LE来确定中断上下文的端模式 MSR[16]-EE:外部中断(External interrupt)是否开启, MSR[17]-PR:指令特权级1-用户级? 0-系统级 MSR[18]-FR:浮点运算是否开启 MSR[19]-ME:机器检测是否开启 MSR[20]-FE0和MSR[23]-FE1:用来确定浮点数的异常模式,示意图如下: MSR[21]-SE:单步调试追踪是否开启 MSR[22]-BE:分支预测追踪是否开启 MSR[24]:保留位 MSR[25]-IP:(Interrupt prefix.)中断向量号地址前缀 MSR[26]-IR:指令地址转换是否开启 MSR[27]-DR:数据地址转换是否开启 MSR[28:29]:保留位 备注:E600使用了MSR[29]位来表示是否开启性能监视标识模式(PMM-Performance Monitor Marked mode) MSR[30]-RI:机器重启或者机器检查中断恢复是否开启 MSR[

文档评论(0)

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

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

1亿VIP精品文档

相关文档