首页 >> 大全

EPC和ErrorEPC

2023-11-28 大全 33 作者:考证青年

EPC : (CP0 14, 0), 异常返回地址寄存器,用于存储异常返回地址。

: (CP0 30, 0),发生复位异常时的异常地址寄存器。

EPC和ErrorEPC_EPC和ErrorEPC_

EPC和的相同点: 两个寄存器都是可读可写的,存储32bit地址,通常情况下发生异常时由硬件更新。软件也可以去写这两个寄存器。用于记录发生异常时的指令的虚拟地址。

如果发生异常的指令在分支延迟槽里(cause[BD]=1),EPC和指向前一条分支或跳转指令。EPC和是eret指令的返回地址。

EPC和ErrorEPC_EPC和ErrorEPC_

EPC和的不同点: EPC发生异常或中断时会被更新,记录的是当前这次发生异常的虚拟地址。

发生reset异常时会被更新,记录的是上一次异常的虚拟地址。当SR(EXL)=1时,cpu不去写EPC。只有SR(EXL)=0时,EPC会被更新。

__asm__ __volatile__ ("mfc0  %0, $30,  0   \n\t""nop                  \n\t":"=r"(errorpc):);
printk("CPU%d RESET ERROR PC:X\n", cpu,errorpc);

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了