安全领域预测的制作方法

文档序号:9524485阅读:222来源:国知局
安全领域预测的制作方法
【技术领域】
[0001]本发明关于数据处理系统领域。更特定言之,本发明关于包括多种安全领域(诸如,安全领域和安全性较差领域)的数据处理系统。
【背景技术】
[0002]已知提供了数据处理系统,诸如实施由英国剑桥的ARM公司设计的处理器的TrustZone特征结构的那些数据处理系统。在此类系统之内,可提供安全领域以用于操纵涉及敏感数据(诸如,密码键、财务数据等等)的处理,以及提供安全性较差的领域以用于常规处理任务,诸如用户接口的管理、媒体处理等等。不同的领域可存取不同的来源,其中安全领域可存取一或多个安全性较差领域不可存取的至少一些来源。可在这些领域本身内提供多个特权等级,诸如用于执行操作系统的监督者特权等级以及用于执行应用程序的用户特权等级。

【发明内容】

[0003]从一方面来看,本技术提供一种数据处理设备,该数据处理设备包括:
[0004]处理电路系统,该处理电路系统配置用于响应于程序指令来执行数据处理操作,该处理电路系统具有多个操作领域,这些操作领域包括安全领域与安全性较差的领域,其中当在安全领域中操作时,该处理电路系统可存取当在安全性较差的领域中操作时不可存取的数据;以及
[0005]预测电路系统,该预测电路系统耦合至该处理电路系统并且配置用于产生领域预测,以预测将由该处理电路系统执行的给定处理动作是应该与安全领域相关联地执行还是应该与该安全性较差的领域相关联地执行,其中该处理电路系统基于该领域预测来执行该给定处理动作。
[0006]本技术认识到当存在对可执行给定处理动作之前了解操作领域的需要时,可能会发生处理瓶颈。本技术通过以下方式解决了该问题:产生关于给定处理动作应针对哪个安全领域执行的领域预测,以及随后基于该领域预测执行该给定处理动作。
[0007]在至少一些实施例中,在这些领域的至少一个内提供了多个特权等级,其中不同的特权等级具有不同的存取许可,例如,这些领域中的一个被按照特权等级,使用取决于当前特权等级针对该内存地址空间的不同区域的存取许可而被进行细分。该特权等级划分可被视为与领域间的划分正交的划分。
[0008]至少一些实施例包括内存许可控制电路系统,该系统使用安全领域的内存许可数据或者安全性较差的内存领域许可数据作为存取控制动作的一部分来控制对内存的存取。在该情形中,取决于预测领域来执行的给定处理动作是存取控制动作,该存取控制动作是基于如由预测电路系统所预测的预测领域,使用安全领域的内存许可数据或者安全性较差的内存领域许可数据执行的。
[0009]该内存许可控制电路系统可用来对第一特权等级与第二特权等级提供不同的存取许可。该内存许可控制电路系统可例如采取内存管理单元的形式,该内存管理单元使用储存在内存地址空间内的页表数据。在其它实施例中,该内存许可控制电路系统包括内存保护单元电路系统,该内存保护单元电路系统用来基于安全领域的内存许可数据与安全性较差领域的内存许可数据来管理对该内存的存取,该安全领域的内存许可数据与该安全性较差领域的内存许可数据各自指定该内存地址空间内的多个不同的内存区域。在一些实施例中,这些区域中的每一个具有至少一种相关的内存存取属性。该内存保护单元电路系统比较内存存取的地址与不同区域的地址范围,以决定将哪种相关的内存存取属性应用于该内存存取。在一些实施例中,内存区域的存在或缺乏可包括部分或所有的属性数据。
[0010]在此类实施例中,该内存保护单元电路系统需要取决于地址是与安全领域相关联还是与安全性较差的领域相关联,来使用安全领域的内存许可数据或安全性较差领域的内存许可数据。因为系统可以精细水平在安全领域与安全性较差的领域之间切换,所以基于与地址相关联的领域来选择使用哪种许可数据可能会成为关键路径问题。在该情形中,领域预测的使用使得能够以从偶然的误预测恢复为代价而容易地满足关键路径需要。
[0011 ] 一些实施例包括领域属性电路系统,该领域属性电路系统使用领域属性数据来执行领域指示动作,从而产生领域指示符,该领域指示符指示内存存取操作是与安全领域相关联,还是与安全性较差的领域相关联。该领域属性电路系统将采取有限时间来执行该决定并且产生领域指示符,因此在该领域指示符变得可用之前使用领域预测可减轻时序约束。
[0012]在一些实施例中该领域属性数据可指定该内存地址空间内的多个不同领域的内存区域。在一些示例性实施例中,这些不同领域的内存区域中的每一个可具有至少一种相关的领域属性。该领域属性电路系统可比较内存存取的地址与这些不同领域的内存区域的地址,以决定要应用这些领域属性中的哪种领域属性。该领域属性可例如是对该内存地址是与安全领域相关联的地址还是与安全性较差的领域相关联的地址的简单指示。在其它实施例中,领域内存区域的存在或缺乏可以自身用作相关的领域属性。
[0013]在一些实施例中,可提供预测比较电路系统以比较领域预测与领域指示符,并且若两者之间无匹配则触发重试动作,在该重试动作中该处理电路系统再次基于领域指示符来执行给定处理动作(该动作最初是基于不正确的领域预测执行的)。
[0014]在一些实施例中,可清除在该重试动作之前的给定处理动作结果,并且用来自重试动作的给定处理动作的一或多个结果取代原结果。
[0015]该处理电路系统可至少在重试动作期间的内存存取操作进行时停止,以便提供足够的时间来完成重试动作。
[0016]在一些实施例中该内存存取操作可为指令提取操作。提取指令可为安全性敏感操作,因为该指令可允许执行将揭露机密信息的安全代码。因此,对指令提取的控制是一种非常适合采用安全领域与安全性较差的领域的系统的方法。期望此类系统应具有高效能,并且此期望在至少一些示例性实施例中可通过使用领域预测来辅助。
[0017]先前论述的领域属性电路系统可配置成与由内存许可控制电路系统执行的存取控制动作并行地执行其领域指示动作。并行地执行这两种动作减轻了时序约束并且可允许更尚的效能。
[0018]将了解该预测电路系统可用来以多种不同的方式产生其预测。一种简单形式的预测是:该领域预测应该与系统正在其中操作的当前领域相同。可在其它实施例中使用的另一种形式的预测是:该领域预测是先前与待执行的给定处理动作相关联的领域。
[0019]同时将了解该安全领域与该安全性较差的领域可包含不同数量的特权等级,在一些实施例中,该安全领域与该安全性较差的领域各自包含多个特权等级。这使得能够灵活控制对域边界任一侧执行的处理,并且亦使得能够视情况在将支持的域边界的不同侧上在不同特权等级之间进行调用。
[0020]从另一方面来看,本发明提供一种数据处理设备,该数据处理设备包括:
[0021]处理装置,该处理装置用于响应于程序指令而执行数据处理操作,该处理装置具有多个操作领域,这些操作领域包括安全领域与安全性较差的领域,其中当在安全领域中操作时,该处理装置可存取当在安全性较差的领域中操作时不可存取的数据;以及
[0022]预测装置,该预测装置耦合至该处理装置,用于产生领域预测以预测将由该处理装置执行的给定处理动作应该与该安全领域相关联地操作还是与该安全性较差的领域相关联地操作,其中
[0023]该处理装置基于该领域预测来执行该给定处理动作。
[0024]从又一方面来看,本发明提供了一种处理数据的方法,该方法包括以下步骤:
[0025]响应于程序指令而使用处理电路系统执行数据处理操作,该处理电路系统具有多个操作领域,这些操作领域包括安全领域与安全性较差的领域,其中当在安全领域中操作时,该处理电路系统可存取当在安全性较差的领域中操作时不可存取的数据;
[0026]产生领域预测,以预测将由处理电路系统执行的给定处理动作应该与安全领域相关联地执行还是与安全性较差的领域相关联地执行;以及
[0027]基于该领域预测而执行该给定处理动作。
[0028]本发明的上述及其他目的、特征及优点,从下列说明性实施例的详细描述并参阅下列附图将更加显而易见。
【附图说明】
[0029]图1示意性地示出了数据处理设备,该数据处理设备支持程序指令执行的安全领域与安全性较差领域两者;
[003
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1