【技术实现步骤摘要】
【国外来华专利技术】用于控制指令执行行为的装置及方法
本技术涉及数据处理领域。
技术介绍
当执行指令时,已知执行使用指针来标识存储器中的地址的某些指令。这类指令的示例为加载及存储指令,用于将来自存储器中的地址的数据加载至寄存器,或用于将来自寄存器的数据值存储于存储器的地址中。这类加载及存储指令可被编码以使得这些指令标识一组通用寄存器内的寄存器,该寄存器包含将用于确定存储器地址的指针值。然而,一些数据处理装置可支持有界指针的使用,其中指示特定地址的指针与指示用于指针的地址的可允许范围的范围信息相关联。例如,这类指针可被称作“胖指针”。可提供一组有界指针存储元件以用于这类有界指针的存储。在指令组内提供可使用这类有界指针来操作的指令,同时还支持执行指令的能力(替代地,使用在通用寄存器内的数据值来提供指针)将是有益的。
技术实现思路
在一个示例配置中,提供了一种装置,该装置包括:一组有界指针存储元件,每个有界指针存储元件用于存储具有相关联的范围信息的指针,在使用该指针时,该相关联的范围信息指示地址的可允许范围;一组数据寄存器,用于存储数据值;处理电路,用于执行指令序列;以及控制存储元件,用于存储当前指令上下文;处理电路响应于该序列中指定用于所需要的指针的指针参考的至少一个指令的执行,其中指针参考在值的至少第一子集内:当当前指令上下文标识默认状态时,使用指针参考来标识数据寄存器中其所存储的数据值形成所需要的指针的一个数据寄存器;当当前指令上下文标识有界指针状态时,使用指针参考来标识有界指针存储元件中其所存储指针形成所需要的指针的一个有界指针存储元件。在另一示例配置中,提供了一种控制装置内的 ...
【技术保护点】
一种装置,包括:一组有界指针存储元件,每个有界指针存储元件用于存储具有相关联的范围信息的指针,当使用所述指针时,所述相关联的范围信息指示地址的可允许范围;一组数据寄存器,该组数据寄存器用于存储数据值;处理电路,所述处理电路用于执行指令序列;以及控制存储元件,所述控制存储元件用于存储当前指令上下文;所述处理电路响应于所述序列中指定用于所需要的指针的指针参考的至少一个指令的执行,其中,所述指针参考在值的至少第一子集内:当所述当前指令上下文标识默认状态时,使用所述指针参考来标识所述数据寄存器中其所存储的数据值形成所述所需要的指针的一个数据寄存器;当所述当前指令上下文标识有界指针状态时,使用所述指针参考来标识所述有界指针存储元件中其所存储指针形成所述所需要的指针的一个有界指针存储元件。
【技术特征摘要】
【国外来华专利技术】2015.08.27 GB 1515256.41.一种装置,包括:一组有界指针存储元件,每个有界指针存储元件用于存储具有相关联的范围信息的指针,当使用所述指针时,所述相关联的范围信息指示地址的可允许范围;一组数据寄存器,该组数据寄存器用于存储数据值;处理电路,所述处理电路用于执行指令序列;以及控制存储元件,所述控制存储元件用于存储当前指令上下文;所述处理电路响应于所述序列中指定用于所需要的指针的指针参考的至少一个指令的执行,其中,所述指针参考在值的至少第一子集内:当所述当前指令上下文标识默认状态时,使用所述指针参考来标识所述数据寄存器中其所存储的数据值形成所述所需要的指针的一个数据寄存器;当所述当前指令上下文标识有界指针状态时,使用所述指针参考来标识所述有界指针存储元件中其所存储指针形成所述所需要的指针的一个有界指针存储元件。2.根据权利要求1所述的装置,其中,所述处理电路还响应于所述序列中指定用于所需要的指针的指针参考的所述至少一个指令的执行,从所述所需要的指针确定地址,当所述当前指令上下文标识所述有界指针状态时,执行界限检查操作以检查所确定的地址在所述地址的可允许范围内,所述地址的可允许范围由用于所述有界指针存储元件中的所述一个有界指针存储元件的相关联的范围信息来指示。3.根据权利要求2所述的装置,其中,所述处理电路被布置为当所述当前指令上下文标识所述默认状态时,执行默认界限检查操作以检查所确定的地址在地址的默认可允许范围内。4.根据权利要求3所述的装置,还包括默认范围存储元件以存储指示所述默认可允许范围的范围信息。5.根据权利要求2到4中的任一项所述的装置,其中,当执行所述界限检查操作时,所述处理电路考虑在所确定的地址处访问的数据值的大小,以便确保所有所述数据值都在所述地址的可允许范围内。6.根据任一前述权利要求所述的装置,其中:所述处理电路响应于所述序列中的至少一个另外的指令的执行来更新所述控制存储元件中所存储的所述当前指令上下文。7.根据权利要求6所述的装置,其中:所述有界指针存储元件中的至少一个包括指定指令上下文值的目的地指令上下文字段;所述至少一个另外的指令是分支指令,所述分支指令具有所述有界指针存储元件中的所述至少一个有界指针存储元件中的一个,如所指定的有界指针存储元件;并且所述处理电路响应于执行所述分支指令来通过将来自所述所指定的有界指针存储元件的所述指令上下文值存储在所述控制存储元件中来更新所述当前指令上下文。8.根据权利要求7所述的装置,还包括有界程序计数器存储元件,所述有界程序计数器存储元件用于存储程序计数器指针,所述程序计数器指针具有指示从所述程序计数器指针确定的程序计数器的可允许范围的相关联的范围信息,并且所述处理电路还响应于所述分支指令的执行,来使用所述指针及所述指定的有界指针存储元件的相关联的范围信息来更新所述有界程序计数器存储元件。9.根据权利要求7或8所述的装置,其中:所述分支指令可以由所述处理电路在所述默认状态以及所述有界指针状态二者中执行,以允许在所述默认状态与所述有界指针状态之间切换。10.根据权利要求9所述的装置,其中:该组有界指针存储元件包括有界链路存储元件,所述有界链路存储元件的指针用于标识返回地址,所述有界链路存储元件还标识返回指令上下文;所述指令指定所述有界链路存储元件并且由所述处理电路执行以从较早的分支返回,并且通过将所述有界链路存储元件中标识的所述返回指令上下文存储在所述控制存储元件中来更新所述当前指令上下文。11.根据权利要求6所述的装置,其中:所述至少一个另外的指令包括更新指令,以将由所述更新指令指定的更新值写入所述控制存储元件以便更新所述当前指令上下文。12.根据权利要求11所述的装置,其中,所述更新指令标识所述数据寄存器中其所存储的数据值被用于更新所述当前指令上下文的一个数据寄存器。13.根据权利要求11所述的装置,其中,所述更新指令指定用于更新所述当前指令上下文的立即值。14.根据任一前述权利要求所述的装置,其中,所述序列中指定用于所需要的指针的指针参考的所述至少一个指令是加载指令和存储指令中的至少一个。15.根据任一前述权利要求所述的装置,其中,所述处理电路被布置为执行来自指令组的指令,所述指令组包括指令的第一子集和指令的第二子集,所述指令的第一子集的执行行为与所述当前指令上下文无关,并且所述指令的第二子集的执行行为取决于所述当前指令上下文,所述第二子集包括所述序列中指定用于所需要的指针的指针参考的所述至少一个指令。16.根据权利要求15所述的装置,其中,所述指...
【专利技术属性】
技术研发人员:格雷姆·彼得·巴尔内斯,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。