【技术实现步骤摘要】
【国外来华专利技术】程序循环控制
本公开涉及数据处理系统。更具体地,本公开涉及数据处理系统内的程序循环控制。
技术介绍
已知为数据处理系统提供程序指令以支持程序循环执行。例如,已知提供支持重复程序指令的数据处理系统。这样的重复程序指令用于指定在程序的执行超出该序列之前多次执行/遍历一个或多个指令的后续序列。这提供了循环行为。
技术实现思路
本公开的至少一些示例实施例提供了用于处理数据的装置,包括:处理电路,用于执行由程序指令指定的处理操作;指令解码器,用于解码所述程序指令以生成控制信号,以控制所述处理电路执行所述处理操作;其中,所述指令解码器包括循环结束指令解码电路,用于在程序循环体结束处解码循环结束指令,以生成控制信号来控制所述处理电路存储循环控制数据,以确定是否需要另一循环迭代,以及如果需要另一循环迭代则分支到所述程序循环体的开始指令;以及还包括循环控制电路,用于当启用时,在所述循环控制数据的控制下,确定是否需要另一循环迭代,以及如果需要另一循环迭代则控制所述处理电路执行由所述循环结束指令之前的所述程序循环体的程序指令指定的处理操作,以及排除所述循环结束指令;其中,每次遍历所述程序循 ...
【技术保护点】
1.一种用于处理数据的装置,包括:处理电路,用于执行由程序指令指定的处理操作;指令解码器,用于解码所述程序指令以生成控制信号,以控制所述处理电路执行所述处理操作;其中,所述指令解码器包括循环结束指令解码电路,用于在程序循环体结束处解码循环结束指令,以生成控制信号来控制所述处理电路存储循环控制数据,以确定是否需要另一循环迭代,以及如果需要另一循环迭代则分支到所述程序循环体的开始指令;以及还包括循环控制电路,用于当启用时,在所述循环控制数据的控制下,确定是否需要另一循环迭代,以及如果需要另一循环迭代则控制所述处理电路执行由所述循环结束指令之前的所述程序循环体的程序指令指定的处理 ...
【技术特征摘要】
【国外来华专利技术】2016.03.23 GB 1604946.21.一种用于处理数据的装置,包括:处理电路,用于执行由程序指令指定的处理操作;指令解码器,用于解码所述程序指令以生成控制信号,以控制所述处理电路执行所述处理操作;其中,所述指令解码器包括循环结束指令解码电路,用于在程序循环体结束处解码循环结束指令,以生成控制信号来控制所述处理电路存储循环控制数据,以确定是否需要另一循环迭代,以及如果需要另一循环迭代则分支到所述程序循环体的开始指令;以及还包括循环控制电路,用于当启用时,在所述循环控制数据的控制下,确定是否需要另一循环迭代,以及如果需要另一循环迭代则控制所述处理电路执行由所述循环结束指令之前的所述程序循环体的程序指令指定的处理操作,以及排除所述循环结束指令;其中,每次遍历所述程序循环体时更新循环计数值,以执行由所述程序循环体指定的所述处理操作,所述循环计数器值指示剩余待执行的循环迭代的数量;其中所述循环计数器被更新由已经由所述程序循环体的所述遍历处理的向量元素的数量。2.根据权利要求1所述的装置,包括循环控制缓存器,用于存储所述循环控制数据。3.根据权利要求1所述的装置,包括分支预测器,并且所述循环控制数据被提供给所述分支预测器,并且所述分支预测器使用所述循环控制数据来引导程序流,使得处理电路执行由在所述循环结束指令之前所述程序循环体的程序指令指定的所述处理操作,并且排除所述循环结束指令。4.根据权利要求1、2和3中任一项所述的装置,其中,所述循环控制数据的无效去能所述循环控制电路,使得在进一步执行所述程序循环时,所述循环结束指令被再次执行并且所述循环控制数据被再次存储以重新启用所述循环控制电路。5.根据权利要求4所述的装置,其中,在发生以下一个或多个情况时,所述循环控制数据无效:所述处理电路被重置;所述循环控制电路或所述循环结束指令确定不需要所述程序循环体的另一迭代;异常进入;异常尾部链,其中处理直接从处理当前异常进行到处理下一异常,而不恢复所述当前异常之前的状态;执行具有大于预定直接目标地址范围的分支指令;从异常返回;执行使得所述装置的指令缓存器无效的指令;执行禁止缓存所述循环控制数据的指令;执行禁止分支预测的指令;执行分支未来指令;所述处理电路确定所述程序循环体内的分支目标为不在所述开始指令和所述循环结束指令之间的地址;在安全操作模式和非安全操作模式之间切换;以及一个或多个实现定义的条件。6.根据前述权利要求中任一项所述的装置,其中,所述循环控制数据包括以下中的一项或多项:循环开始数据,表示所述开始指令的地址;循环开始地址偏移数据,指示紧接所述循环结束指令之前的所述程序循环体的最后指令与所述程序循环体的所述开始指令之间的距离;循环结束数据,指示紧接所述循环结束指令之前的所述程序循环体的最后指令的地址;循环剩余指令数据,指示在紧接所述循环结束指令之前的所述程序循环体的最后指令到达之前剩余待处理的指令的数量。循环剩余大小数据,指示在紧接所述循环结束指令之前的所述程序循环体的最后指令到达之前剩余待处理的程序存储存储器位置的数量;以及循环控制有效数据。7.根据权利要求6所述的装置,其中,所述循环结束数据包括适当的位子集,其指示所述存储器存储地址从区分指令的开始存储地址的所述存储器存储地址的那些位的最低有效位末端开始的所述最后指令的存储器存储地址。8.根据前述权利要求中任一项所述的装置,包括至少一个故障症状寄存器,用于在发生故障时存储故障症状数据,其中所述循环控制数据被存储在所述至少一个故障症状寄存器内。9.根据权利要求8所述的装置,其中,所述至少一个故障症状寄存器具有至少一个相关联的有效位,该有效位指示其中存储的任何数据是否是有效的故障症状数据,并且当所述至少一个故障症状寄存器存储所述循环控制数据时,所述循环控制电路将所述至少一个相关联的有效位设置为无效状态。10.根据权利要求8所述的装置,其中,所述至少一个故障症状寄存器具有至少一个相关联的有效位,该有效位指示其中存储的任何数据是否是有效的故障症状数据,其中,如果所述至少一个相关联的有效位中的至少一个在有效状态中,所述循环结束指令解码电路不控制所述处理电路存储所述循环控制数据。11.根据前述权利要求中任一项所述的装置,其中,所述指令解码器包括循环开始指令解码电路,用于解码在所述程序循环体的所述开始指令之前的循环开始指令,以生成控制信号以控制所述处理电路存储指示所述程序循环体将被执行的次数的循环计数值。12.根据权利要求11所述的装置,其中,如果所述循环计数值为零,则抑制由所述程序循环体指定的处理操作的执行,并且处理从所述循环结束指令之后的指令继续。13.根据前述权利要求中任一项所述的装置,其中,由所述循环控制电路控制分支到所述开始指令,生成对应于所述循环结束指令的执行的跟踪数据。14.根据前述权利要求中任一项所述的装置,其中,所述循环控制电路被配置为根据存储在预定状态寄存器中的控制参数来控制所述循环计数器的更新,所述预定状态寄存器指示...
【专利技术属性】
技术研发人员:阿拉斯代尔·格兰特,托马斯·克里斯多夫·格鲁卡特,西蒙·约翰·克拉斯克,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。