一种TrustZone上的内存管理方法及装置制造方法及图纸

技术编号:11383556 阅读:231 留言:0更新日期:2015-05-01 08:32
本发明专利技术提出了一种TrustZone上的内存管理方法及装置,该方法包括:TZASC在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间;中央处理器CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应;在CPU的非安全执行环境下,TZASC针对访问所述缓冲安全区的访存指令,基于所述访存指令的访问等级对应的访问权限,执行访存操作。本发明专利技术与现有技术中相比,降低了中断产生的几率,减少了执行环境切换的频率,从而提高了CPU的利用率。

【技术实现步骤摘要】

本专利技术涉及内存管理
,尤其涉及一种TrustZone(可信域)上的内存管理方法及装置。
技术介绍
在带有TrustZone安全拓展的中央处理器CPU中存在两个虚拟的处理器核,分别是属于安全执行环境Secure的安全核SecureCore和属于非安全执行环境Normal的普通核NormalCore。为保证系统安全,普通核NormalCore只能访问非安全的系统资源,而安全核SecureCore可以访问所有的系统资源,CPU中的监控模块Monitor负责在不同执行环境之间的切换。TrustZone框架下的内存管理如图1所示,CPU中的虚拟处理器核在不同的执行环境下执行访存指令,访存指令的虚拟地址中包含NSTID(Non-SecureTableIdentifier,“非安全”表ID)项,标识该访存指令是“安全”的或者“非安全”的,该虚拟地址通过硬件首先在TLB(TranslationLook-asideBuffer,转换后备缓冲器,或称为快表)中执行一次地址转换,若找到匹配项则访问Cache,否则通过MMU(MemoryManagementUnit,内存管理单元)找到相应物理地址,对作为系统内存的DRAM(DynamicRandomAccessMemory,即动态随机存取存储器)进行访问,两个虚拟处理器核对应两个MMU,其地址转换过程是相互独立的。AXI(AdvancedeXtensibleInterface,高级可拓展接口)总线上的设备TZASC(TrustZoneAddressSpaceController,可信域地址空间控制器)将DRAM划分为若干安全区(S)和非安全区(N),后续再按照表1所示的控制方式对不同的访存指令进行响应,以保证不同执行环境下的访存安全:表1访存区域执行环境TZASC操作SNormal拒绝,并产生中断NNormal允许SSecure允许NSecure允许访存指令对应的访存操作被拒绝之后产生中断,根据CPU中的状态记录寄存器的配置判断是否进入Monitor模式切换执行环境。在现有方案下内存被划分为安全区与非安全区,并且在TZASC的控制下进行了绝对隔离,因此,在CPU的非安全执行环境下对安全区的任何访存操作都会造成中断,且导致处理器的执行环境频繁切换,使得CPU利用率较低。
技术实现思路
本专利技术要解决的技术问题是,提供一种TrustZone上的内存管理方法及装置,减少处理器的执行环境切换的频率,提高CPU的利用率。本专利技术采用的技术方案是,所述TrustZone上的内存管理方法,包括:TZASC在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间;CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应;在CPU的非安全执行环境下,TZASC针对访问所述缓冲安全区的访存指令,基于所述访存指令的访问等级对应的访问权限,执行访存操作。进一步的,在CPU中设置一存储设备,所述存储设备用于存储访存指令的访问等级;所述方法,还包括:CPU中的普通核在基于访存指令在内存中进行访存寻址的同时,还控制所述存储设备向TZASC提供所述访存指令的访问等级。进一步的,所述CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应,包括:CPU中的普通核为访存指令设置两个以上的访问等级,访存指令的访问等级从高到底对应的被授予访问缓冲安全区的范围从大到小。进一步的,作为一种可选的技术方案,CPU中的普通核为访存指令设置两个访问等级:高访问等级和低访问等级,其中,高访问等级被授予访问缓冲安全区的权限,低访问等级不被授予访问缓冲安全区的权限。进一步的,作为另一种可选的技术方案,所述方法还包括:TZASC将所述缓冲安全区分为各子缓冲安全区,各子缓冲安全区被配置为n个安全等级,n≥2;CPU中的普通核为访存指令设置n个访问等级,访存指令的访问等级从高到低对应的被授予访问子缓冲安全区的安全等级范围从大到小。本专利技术还提供一种TrustZone上的内存管理装置,包括:CPU中的普通核,用于为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限的对应关系保存在TZASC中;TZASC,用于在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间;在CPU的非安全执行环境下,TZASC针对访问所述缓冲安全区的访存指令,基于所述访存指令的访问等级对应的访问权限,执行访存操作。进一步的,所述装置,还包括:存储设备,设置于CPU中,用于存储访存指令的访问等级;所述CPU中的普通核,还用于:在基于访存指令在内存中进行访存寻址的同时,还控制所述存储设备向TZASC提供所述访存指令的访问等级。进一步的,所述CPU中的普通核,具体用于:为访存指令设置两个以上的访问等级,访存指令的访问等级从高到底对应的被授予访问缓冲安全区的范围从大到小。进一步的,作为一种可选的技术方案,所述CPU中的普通核,具体用于:为访存指令设置两个访问等级:高访问等级和低访问等级,其中,高访问等级被授予访问缓冲安全区的权限,低访问等级不被授予访问缓冲安全区的权限。进一步的,作为另一种可选的技术方案,所述TZASC,具体用于:将所述缓冲安全区分为各子缓冲安全区,各子缓冲安全区被配置为n个安全等级,n≥2;所述CPU中的普通核,具体用于:为访存指令设置n个访问等级,访存指令的访问等级从高到低对应的被授予访问子缓冲安全区的安全等级范围从大到小。采用上述技术方案,本专利技术至少具有下列优点:本专利技术所述TrustZone上的内存管理方法及装置,在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间,在非安全执行环境下允许一部分访存指令执行针对该缓冲安全区的访存操作,与现有技术中相比,降低了中断产生的几率,减少了执行环境切换的频率,从而提高了CPU的利用率。附图说明图1为现有技术中TrustZone框架下的内存管理情况示意图;图2为本专利技术第一实施例的TrustZone上的内存管理方法流程图;图3为本专利技术第三实施例的TrustZone上的内存管理装置组成结构示意图;图4为本专利技术第四实施例的TrustZone上的内存管理装置组成结构示意图;图5为本专利技术第五实施例的细化内存安全分区的方法所基于的TrustZone架构示意图。具体实施方式为更进一步阐述本专利技术为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本专利技术进行详细说明如后。本专利技术第一实施例,一种TrustZone上的内存管理方法,如图2所示,包括以下具体步骤:步骤S101,TZASC在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间,也可理解为,缓冲安全区是从与非安全区绝对隔离的安全区中分离出来的;CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应,该对应关系保存在TZASC中。具体的,在步骤S101中,CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应,包括:CPU中的普通核为访存指令设置两个以上的访问等级,访存指令的访问等本文档来自技高网
...
一种TrustZone上的内存管理方法及装置

【技术保护点】
一种可信域TrustZone上的内存管理方法,其特征在于,包括:可信域地址空间控制器TZASC在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间;中央处理器CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应;在CPU的非安全执行环境下,TZASC针对访问所述缓冲安全区的访存指令,基于所述访存指令的访问等级对应的访问权限,执行访存操作。

【技术特征摘要】
1.一种可信域TrustZone上的内存管理方法,其特征在于,包括:可信域地址空间控制器TZASC在内存中设置缓冲安全区,缓冲安全区的安全等级介于内存中的安全区与非安全区之间;中央处理器CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应;在CPU的非安全执行环境下,TZASC针对访问所述缓冲安全区的访存指令,基于所述访存指令的访问等级对应的访问权限,执行访存操作。2.根据权利要求1所述的TrustZone上的内存管理方法,其特征在于,在CPU中设置一存储设备,所述存储设备用于存储访存指令的访问等级;所述方法,还包括:CPU中的普通核在基于访存指令在内存中进行访存寻址的同时,还控制所述存储设备向TZASC提供所述访存指令的访问等级。3.根据权利要求1所述的TrustZone上的内存管理方法,其特征在于,所述CPU中的普通核为访存指令设置访问等级,不同访问等级与对缓冲安全区的不同访问权限相对应,包括:CPU中的普通核为访存指令设置两个以上的访问等级,访存指令的访问等级从高到底对应的被授予访问缓冲安全区的范围从大到小。4.根据权利要求3所述的TrustZone上的内存管理方法,其特征在于,CPU中的普通核为访存指令设置两个访问等级:高访问等级和低访问等级,其中,高访问等级被授予访问缓冲安全区的权限,低访问等级不被授予访问缓冲安全区的权限。5.根据权利要求3所述的TrustZone上的内存管理方法,其特征在于,所述方法还包括:TZASC将所述缓冲安全区分为各子缓冲安全区,各子缓冲安全区被配置为n个安全等级,n≥2;CPU中的普通核为访存指令设置n个访问等级,访存指令的访问等级从高
\t到低对应的被授予访问子缓冲...

【专利技术属性】
技术研发人员:申泽奇
申请(专利权)人:宇龙计算机通信科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1