当前位置: 首页 > 专利查询>ARM有限公司专利>正文

用于控制存储器存取的装置及方法制造方法及图纸

技术编号:28048554 阅读:50 留言:0更新日期:2021-04-09 23:39
本申请提供一种用于控制存储器存取的装置及方法。装置具有存储器存取电路系统,用于响应于目标地址执行卷标保护型存储器存取操作,默认的卷标保护型存储器存取操作包括以下步骤:比较地址卷标与保护卷标,地址卷标与目标地址相关联,保护卷标储存在与一个或多个存储器位置的区块相关联的存储器系统中,一个或多个存储器位置的区块包括由目标地址识别出的寻址位置;以及生成是否在保护卷标与地址卷标之间检测到匹配的指示。此外,装置具有控制卷标储存器,用于对多个存储器区域中的每个区域,储存配置控制信息,此配置控制信息用于控制当目标地址在存储器区域内时存储器存取电路系统如何执行卷标保护型存储器存取操作。每个存储器区域对应于多个区块。这提供用于执行卷标保护型存储器存取操作的非常灵活且高效的机制。

【技术实现步骤摘要】
【国外来华专利技术】用于控制存储器存取的装置及方法
本技术涉及数据处理的领域。
技术介绍
将由数据处理装置执行的软件通常可用高阶程序设计语言写入,并随后根据指令集架构编译成代码,此指令集架构由将执行软件的装置支持。例如,最初可以较高级语言(诸如Java、C或C++)来写入软件,并且随后可将软件编译成本机支持的指令集架构(诸如x86或)。一些较高阶程序设计语言(诸如Java)被认为是存储器安全语言,因为它们包括用于检查关于存储器存取的某些错误的运行时错误检测检查。相反,存储器不安全语言(诸如C及C++)不包括此种运行时错误检查。存储器不安全语言的持久使用意味着在根据给定指令集架构编译的代码中,可能存在大量与存储器相关的错误,这些错误可能容易被攻击者或被其他恶意方利用。此种错误可包括:·边界违规,其中由代码提供的数组索引超出数组的合法边界;·释放后使用的错误,其中在已经解除分配或释放存储器位置之后对存储器位置进行存取;·返回后使用的错误,其中在函数中已经返回后对与在函数内使用的变量相关联的地址(诸如堆栈上的值)进行存储器存取;·本文档来自技高网...

【技术保护点】
1.一种装置,包括:/n存储器存取电路系统,用于响应于目标地址执行卷标保护型存储器存取操作,默认的所述卷标保护型存储器存取操作包括:/n比较地址卷标与保护卷标,所述地址卷标与所述目标地址相关联,所述保护标签储存在与一个或多个存储器位置的区块相关联的存储器系统中,所述一个或多个存储器位置的区块包括由所述目标地址识别出的寻址位置;以及/n生成是否在所述保护卷标与所述地址卷标之间检测到匹配的指示;以及/n控制卷标储存器,用于对多个存储器区域中的每个区域储存配置控制信息,所述配置控制信息用于控制当所述目标地址在该存储器区域内时所述存储器存取电路系统如何执行所述卷标保护型存储器存取操作,每个存储器区域对...

【技术特征摘要】
【国外来华专利技术】20181114 GB 1818572.81.一种装置,包括:
存储器存取电路系统,用于响应于目标地址执行卷标保护型存储器存取操作,默认的所述卷标保护型存储器存取操作包括:
比较地址卷标与保护卷标,所述地址卷标与所述目标地址相关联,所述保护标签储存在与一个或多个存储器位置的区块相关联的存储器系统中,所述一个或多个存储器位置的区块包括由所述目标地址识别出的寻址位置;以及
生成是否在所述保护卷标与所述地址卷标之间检测到匹配的指示;以及
控制卷标储存器,用于对多个存储器区域中的每个区域储存配置控制信息,所述配置控制信息用于控制当所述目标地址在该存储器区域内时所述存储器存取电路系统如何执行所述卷标保护型存储器存取操作,每个存储器区域对应于所述区块中的多个区块。


2.根据权利要求1所述的装置,其中,每个存储器区域包括一个或多个存储器页面。


3.根据权利要求2所述的装置,其中,每个存储器区域包括单个存储器页面。


4.根据前述权利要求中任一项所述的装置,其中:
所述配置控制信息包括相同卷标模式字段和存储器区域保护卷标;并且
当由所述目标地址识别出的所述寻址位置在设置相同卷标模式字段的存储器区域内时,布置所述存储器存取电路系统以更改所述卷标保护型存储器存取操作,使得所述地址卷标与该存储器区域的所述存储器区域保护卷标进行比较,而不是与包含所述寻址位置的所述区块相关联的所述保护标签进行比较。


5.根据前述权利要求中任一项所述的装置,其中:
所述配置控制信息包括匹配所有模式字段;以及
当由所述目标地址识别出的所述寻址位置在设定匹配所有模式字段的存储器区域内时,布置所述存储器存取电路系统以更改该卷标保护型存储器存取操作,使得当所述地址卷标具有预定值时,绕过所述地址卷标与所述保护卷标的比较,并且该生成步骤包括生成在所述保护卷标与所述地址卷标之间检测到匹配的指示。


6.根据前述权利要求中任一项所述的装置,其中:
所述配置控制信息包括精确卷标检查模式字段;并且
当由所述目标地址识别出的所述寻址位置在设置精确的卷标检查模式字段的存储器区域内时,布置所述存储器存取电路系统以执行所述卷标保护型存储器存取操作,使得当在所述保护卷标与所述地址卷标之间检测到不匹配时,布置所述存储器存取电路系统以防止执行对所述寻址位置的存储器存取。


7.根据权利要求6所述的装置,其中:
当由所述目标地址识别出的所述寻址位置在清除精确卷标模式字段的存储器区域内时,布置所述存储器存取电路系统以执行所述卷标保护型存储器存取操作,使得当在所述保护卷标与所述地址卷标之间检测到不匹配时,布置所述存储器存取电路系统以允许与针对所述不匹配产生的任何不匹配指示异步地执行对所述寻址位置的存储器存取。


8.根据前述权利要求中任一项所述的装置,其中,所述控制卷标储存器包括缓存结构。


9.根据权利要求8在从属于权利要求2时所述的装置,其中,所述控制标签储存器由具有多个条目的转换旁看缓冲器(TLB)提供,每个条目维持存储器页面的地址转换信息并包括用于识别该存储器页面的所述配置控制信息的字段。


10.根据前述权利要求中任一项所述的装置,其中,每个存储器区域的所述配置控制信息维持在所述存储器系统的存储器区域内,并且装置进一步包括:
指令解码器,用于解码配置控制信息存取指令以控制所述存储器存取电路系统从所述存储器区域加载所确定的存储器区域的配置控制信息,并且将所确定的存储器区域的更新后的配置控制信息储存至所述存储器区域。


11.根据权利要求10所述的装置,其中,所述存储器区域为使用所述配置控制信息存取指令而能够存取的所述存储器系统的专用区域。


12.根据前述权利要求中任一项所述的装置,进一步包括控制卷标储存器更新电路系统,所述控制卷标储存器更新电路系统响应于触发器以相对于储存在所述控制标签储存器中的所述配置控制信息来执行刷新操作。


13.根据权利要求12所述的装置,其中,所述触发器发生在由所述装置执行刷新指令时,所述刷新指令提供地址指示,所述地址指示用于识别配置控制信息将进行所述刷新操作的一个或多个存储器区域。


14.根据权利要求13在从属于权利要求9时所述的装置,其中,所述刷新指令为TLB刷新配置控制信息指令,其在执行时使得在所述TLB内执行维护操作,以用于识别所述TLB内的哪些条目为存储器页面提供配置控制信息,所述存储器页面由所述TLB刷新配置控制信息指令的所述地址指示识别出,并且用于针对每个识别出的条目中的所述...

【专利技术属性】
技术研发人员:鲁本·鲍里索维奇·艾拉佩蒂安格雷姆·彼得·巴尔内斯理查德·罗伊·格里森思怀特
申请(专利权)人:ARM有限公司
类型:发明
国别省市:英国;GB

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

1