【技术实现步骤摘要】
【国外来华专利技术】事务嵌套深度测试指令
本技术涉及数据处理的领域。更具体而言,本技术涉及事务内存(transactionalmemory)。
技术介绍
数据处理系统可执行数个数据处理线程。有时,线程可需要存取共享资源,且数据处理操作的本质可使得一旦线程开始与共享资源交互,则可需要使用此资源原子地(atomically)完成一组操作,而同时没有另一线程存取此资源。用于处理此线程间冲突的一种技术,可为使用锁(locks)来控制对于至少一个目标资源的专属存取。例如,在一个线程开始存取特定地址区域中的数据时,线程可设定锁变量以主张对于锁的拥有权,且随后在拥有锁的线程具有对于锁的拥有权的同时,检查锁变量的其他线程可确定锁已被主张,且因此可不输入与此地址区域交互的码区段。这种基于锁式的作法可被看作是悲观的,因为每一线程预设为假定此无法输入存取共享资源的码区段,因为可发生与另一线程的冲突,除非此线程具有对锁的拥有权而确保不会发生冲突。然而,锁识别器时常可控制对于数个资源(例如一地址范围)的专属存取,且因此不保证在一个线程正存取此锁变量保护的资源组内 ...
【技术保护点】
1.一种设备,包括:/n指令解码器,所述指令解码器用于解码指令;以及/n处理电路系统,所述处理电路系统用于响应于由所述指令解码器解码的所述指令而执行数据处理,所述处理电路系统包括事务内存支持电路系统以支持由所述处理电路系统执行数据处理线程内的事务,所述事务包括在事务开始指令与事务结束指令之间推测性地执行的线程的指令,对此所述处理电路系统被配置为防止提交所述事务的推测性地执行的指令的结果,直到到达所述事务结束指令为止,并且所述处理电路系统被配置为在于到达所述事务结束指令之前发生中止事件时中止所述事务的处理;/n其中,响应于由所述指令解码器对事务嵌套深度测试指令的解码,所述处理 ...
【技术特征摘要】
【国外来华专利技术】20170929 EP 17386030.51.一种设备,包括:
指令解码器,所述指令解码器用于解码指令;以及
处理电路系统,所述处理电路系统用于响应于由所述指令解码器解码的所述指令而执行数据处理,所述处理电路系统包括事务内存支持电路系统以支持由所述处理电路系统执行数据处理线程内的事务,所述事务包括在事务开始指令与事务结束指令之间推测性地执行的线程的指令,对此所述处理电路系统被配置为防止提交所述事务的推测性地执行的指令的结果,直到到达所述事务结束指令为止,并且所述处理电路系统被配置为在于到达所述事务结束指令之前发生中止事件时中止所述事务的处理;
其中,响应于由所述指令解码器对事务嵌套深度测试指令的解码,所述处理电路系统被配置为将至少一个状态值设定为根据事务嵌套深度所选定的多个状态中的一者,所述事务嵌套深度指示给定线程的已执行的事务开始指令的数量,对此对应事务保持为未中止且未提交的,所述多个状态包括在所述事务嵌套深度等于大于零的预定数字时所选定的第一状态,以及在所述事务嵌套深度大于或小于所述预定数字时所选定的至少一个另外的状态;并且
所述指令解码器被配置为:响应于单一事务嵌套深度测试指令接续单一条件分支指令,支持包括实现所述指令解码器的至少一种类型的条件分支指令的指令集架构,以控制所述处理电路系统根据所述事务嵌套深度设定至少一个状态值,并且针对所述至少一个状态值处于所述第一状态而执行条件分支。
2.根据权利要求1所述的设备,其中,所述预定数字为1。
3.根据权利要求1和2中任一项所述的设备,其中,所述至少一个另外的状态包括:
第二状态,所述第二状态在所述事务嵌套深度小于所述预定数字时被选定;以及
第三状态,所述第三状态在所述事务嵌套深度大于所述预定数字时被选定。
4.根据权利要求3所述的设备,其中,所述指令集架构包括一种或更多种类型的条件分支指令,所述条件分支指令使得所述指令解码器能够:响应于单一事务嵌套深度测试指令接续单一条件分支指令,控制所述处理电路系统以根据所述事务嵌套深度设定所述至少一个状态值,并且对处于所述多个状态的目标状态中的所述至少一个状态值执行条件分支,而不论所述目标状态是所述第一状态、所述第二状态还是所述第三状态。
5.根据前述权利要求中任一项所述的设备,包括条件状态存储元件以存储至少一个条件状态值,所述至少一个条件状态值指示先前执行指令的处理结果的至少一个性质;
其中,响应于由所述指令解码器解码所述事务嵌套深度测试指令,所述处理电路系统被配置为设定所述至少一个条件状态值以对应于将所述事务嵌套深度与所述预定数字比较的结果。
6.根据权利要求5所述的设备,其中,响应于由所述指令解码器对条件状态相关条件分支指令进行解码从而指定测试条件,所述处理电路系统被配置为:针对存储在所述条件状态存储元件中的所述至少一个条件状态值是否满足所述测试条件而执行所述条件分支。
7.根据权利要求5和6中任一项所述的设备,包括多个通用寄存器以存储用于指令的运算符;
其中,响应于由所述指令解码器解码所述事务嵌套深度测试指令,所述处理电路系统被配置为将代表所述事务嵌套深度的事务嵌套深度值写入由所述事务嵌套深度测试指令指定的通用寄存器。
8.根据权利要求1至4中任一项所述的设备,包括多个通用寄存器以存储用于指令的运算符,
其中,响应于由所述指令解码器解码所述事务嵌套深度测试指令,所述处理电路系统被配置为将所述至少一个状态值写入由所述事务嵌套深度测试指令指定的通用寄存器。
9.根据权利要求1至4和8中任一项所述的设备,其中,在所述第一状态中,所述至少一个状态值具有以下各项中的一者:
第一编码,其中,所有位等于0;
第二编码,其中,第一预定位等于1,并且第二预定位等于0;以及
第三编码,其中,所述第一预定位等于0,并且所述第二预定位等于1。
10.根据权利要求3和4中任一项所述的设备,其中:
在所述第一状态、所述第二状态和所述第三状态中的第一者中,所述至少一个状态值具有第一编码,其中,所有位等于0;
在所述第一状态、所述第二状态和所述第三状态中的第二者中,所述至少一个状态值具有第二编码,其中,第一预定位等于1,并且第二预定位等于0;并且
在所述第一状态、所述第二状态和所述第三状态中的第三者中,所述至少一个状态值具有第三编码,其中,所述第一预定位等于0,并且所述第二预定位等于1...
【专利技术属性】
技术研发人员:格里戈里奥斯·马格克里斯,马修·詹姆斯·霍斯内尔,斯蒂芬·迪斯特尔霍斯特,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。