[发明专利]用于处理异常的装置和方法在审
| 申请号: | 202080091711.8 | 申请日: | 2020-11-03 |
| 公开(公告)号: | CN114930286A | 公开(公告)日: | 2022-08-19 |
| 发明(设计)人: | T·C·格罗卡特 | 申请(专利权)人: | Arm有限公司 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/48 |
| 代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 宋兴;臧建明 |
| 地址: | 英国*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 处理 异常 装置 方法 | ||
1.一种装置,所述装置包括:
处理电路,所述处理电路在至少一个安全域中可操作以执行程序代码,所述程序代码包括响应于对应异常而执行的多个异常处理例程;
多个寄存器,所述多个寄存器用于存储数据以供所述处理电路在执行所述程序代码时访问,所述寄存器包括第一寄存器子组和与所述第一子组不重叠的第二寄存器子组;
异常控制电路,响应于发生来自后台处理的给定异常,所述异常控制电路用于在触发所述处理电路执行对应于所述给定异常的给定异常处理例程之前触发状态保存操作以保存来自所述多个寄存器的数据;以及
配置存储装置,所述配置存储装置用于存储用于对所述多个异常处理例程内的异常处理例程进行分类的配置信息;
其中所述异常控制电路被布置成:参考所述配置信息来确定在所述给定异常处理例程将在其中执行的所述安全域内所述给定异常处理例程属于第一类别还是第二类别,并且当触发所述状态保存操作时被布置成:当所述给定异常处理例程属于所述第一类别时触发对来自所述第一寄存器子组的所述数据的保存,并且当所述给定异常处理例程属于所述第二类别时触发对来自所述第一寄存器子组和所述第二寄存器子组两者的所述数据的保存。
2.根据权利要求1所述的装置,其中:
至少当所述给定异常处理例程属于所述第二类别时,所述异常控制电路被进一步布置成:在触发所述处理电路执行所述给定异常处理例程之前,触发对其数据在所述状态保存操作期间被保存的所述寄存器的清除。
3.根据权利要求1或权利要求2所述的装置,其中所述第一类别指示可信的异常处理例程,并且所述第二类别指示待处理为不可信的异常处理例程。
4.根据权利要求3所述的装置,其中所述处理电路能够在无特权状态和特权状态下操作,并且所述处理电路可操作以在处于所述无特权状态时执行不可信的所述异常处理例程的至少主体。
5.根据任一前述权利要求所述的装置,其中所述配置存储装置被布置成针对一个或多个异常处理例程存储对应的配置信息项目。
6.根据权利要求5所述的装置,其中所述配置信息项目被设置为第一值以指示所述对应异常处理例程可信,并且被设置为第二值以指示所述对应异常处理例程被处理为不可信。
7.根据权利要求1至4中任一项所述的装置,其中:
所述配置存储装置被布置成识别阈值优先级;
每个异常具有相关联优先级;并且
所述异常控制电路被布置成:取决于从所述给定异常的所述相关联优先级导出的值与从所述阈值优先级导出的值的比较来确定所述给定异常处理例程属于所述第一类别还是所述第二类别。
8.根据权利要求7所述的装置,其中所述异常控制电路被布置成:当所述异常的所述相关联优先级小于所述阈值优先级时确定所述给定异常处理例程属于所述第二类别。
9.根据任一前述权利要求所述的装置,其中所述异常控制电路被布置成设置状态标记以识别是否已保存来自所述第二寄存器子组的所述数据。
10.根据权利要求9所述的装置,其中:
在异常返回时,所述异常控制电路被布置成参考所述状态标记,以便确定是否需要恢复所述第二寄存器子组中的数据。
11.根据任一前述权利要求所述的装置,其中当触发所述状态保存操作时,所述异常控制电路被布置成促使所述数据被保存到栈数据结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于Arm有限公司,未经Arm有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080091711.8/1.html,转载请声明来源钻瓜专利网。





