[发明专利]处理系统有效
申请号: | 201410200577.7 | 申请日: | 2014-05-13 |
公开(公告)号: | CN104217139B | 公开(公告)日: | 2019-05-07 |
发明(设计)人: | 尼古拉斯·莱娜;安德烈·勒平 | 申请(专利权)人: | NXP股份有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/52 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 王波波 |
地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序代码 固件代码 使能 处理系统 存储器访问控制 存储器 访问 存储 控制处理单元 处理器执行 处理单元 | ||
本发明提供了一种处理系统及方法。该处理系统包括:处理单元;存储器,适用于存储用于处理器执行的固件代码和应用程序代码;以及存储器访问控制单元,适用于控制处理单元对存储在存储器中的固件代码和应用程序代码的访问。存储器访问控制单元适用于,当使能对应用程序代码的访问时不使能对固件代码的访问,以及当不使能对应用程序代码的访问时使能对固件代码的访问。
技术领域
本发明涉及处理系统,特别是涉及控制处理系统的处理单元对处理系统存储的固件的访问。
背景技术
安全性对诸如微处理器的处理系统来说是重要考虑因素。例如,希望确保处理器仅执行由一段可执行程序代码(或等同的指令组,诸如脚本)描述的特定任务。然而,代码和/或代码的执行可能会受到攻击。攻击可能包括以下情况:
-未经授权修改所存储的程序代码;
-在执行期间修改代码;
-代码转存(例如出于反向工程的目的读取出代码)
-未经授权更改存储器访问权限;
-从数据段执行未经授权的代码。
固件,例如基本输入/输出系统(BIOS)代码或核心系统软件代码,通常可以识别和初始化处理系统或电子设备的硬件子系统和组件。所以通过第三方对固件进行的反向工程可以指示出使用固件集成电路的系统的硬件结构。此外,对固件成功的攻击(诸如上面列出的那些攻击)能够使第三方改变处理系统的操作,阻止处理系统正确地操作,和/或将病毒传输到组件或其他系统/设备。
已经知道利用基于硬件的安全措施来保护固件,诸如将固件存储到非易失性存储器(诸如只读存储器ROM)中,以致不能修改存储器中的固件。然而,这种方法并不能足以阻止第三方出于不希望的目的或未经授权的目的来访问和分析固件。
在第三方开发领域中,第三方开发者直接在处理系统上开发和调试应用程序,因此这样的安全考虑对于第三方开发领域来说是很重要的。对于这样的开发,处理系统可能需要执行由厂商提供的在应用程序执行期间使用的嵌入固件,但是可能希望在应用程序执行期间,出于安全原因,对第三方开发者隐藏/保护固件。
发明内容
本发明提供了用于控制对处理系统的固件代码的访问的解决方案。利用本发明可以在片上系统应用程序开发系统内部提供嵌入的并且安全的固件执行。因此,这样的开发系统能够使第三方开发者使用系统现有的固件用于应用程序开发,同时还能够阻止第三方开发者出于未经授权的目的(诸如分析和/或反向工程)访问固件代码。因此,实施例可以通过控制对固件代码的访问来限制或阻止软件反向工程。
根据本发明的实施例,提供一种处理系统。
该处理系统可以是微处理器,微芯片或处理平台。因此,处理器可以是中央处理器(CPU)或处理器内核。
该系统还可以包括调试接口,调试接口用于使能对存储器存储的应用程序代码的调试。存储器访问控制单元可以适用于不使能调试接口,以便当使能对固件代码的访问时不能进行调试。
存储器访问控制单元可以被连接在处理器和存储器之间,其中存储器访问控制单元还可以适用于截获来自处理器的存储器访问请求,并基于截获的存储器访问请求来控制对存储器的访问。
存储器访问控制单元可以包括寄存器,寄存器适用于存储表示固件代码在存储器中的位置的地址,以及其中存储器访问控制单元还可以适用于判断是否截获的存储器访问请求是请求访问存储在寄存器中的地址,并基于判断结果来控制对存储器的访问。
存储器访问控制单元可以在非易失性存储器(诸如只读存储器ROM)中实现,以便保护其不被修改。
根据本发明的实施例,提供一种用于控制前述处理系统的处理单元对处理系统的存储器存储的固件代码和应用程序代码的访问的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于NXP股份有限公司,未经NXP股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410200577.7/2.html,转载请声明来源钻瓜专利网。