【技术实现步骤摘要】
【国外来华专利技术】
本公开涉及数据处理系统的领域。更具体地,本公开涉及对于具有多个处理元件的数据处理系统内的事务存储器的支持,这多个处理元件在存储器内存储共享的数据值。
技术介绍
提供具有共享在存储器内存储的数据值的多个处理元件的数据处理系统是已知的。为了控制处理元件之间的一致性,已知的是提供与存储器地址空间的区域相关联的锁,从而使得当一个处理元件希望执行对于该区域的访问时,它首先检查与该区域相关联的锁值未被设置。如果锁值被设置,那么这表明另一处理元件已正在该区域内执行事务,因此当前访问应当被中止并在晚些时候重试。如果测试揭露该锁当前未被设置,那么作出访问请求的处理元件可以设置锁值、执行它的访问、并然后重置锁值。尽管锁的使用提供了在处理元件之间共享数据值的安全机制,但是它会不利地影响性能,因为锁可能被以粗粒度级别设置而使得实际上不影响被锁区域内的相同数据值的存储器访问当在实践中它们能够没有困难地并行进行时被阻止并行地运行。不利地,如果锁被设置的粒度过细,则与存储和管理锁相关联的开销级别变得繁重。解决以上问题的一种方式是提供省略机制。根据此机制,处理元件可以获得对于数据值的访问并且在它掌握的那些数据值的本地副本上推测性地执行存储器事务。当执行这样的存储器事务时,处理元件向系统内的其他处理元件通知它正在执行对于给定区域的存储器地址的存储器访问。如果任何其他处理元件当前正在执行涉及此区域内的任何存储器地址的存储器事务作为它自己的推测性处理的一部分,那么它中止此推测性处理(存储器事务),从而使得请求者能够获得对于所涉及的存储器区域的访问并执行更近期的推测性操作。应当认识到正在进行的 ...
【技术保护点】
一种用于处理数据并且包括对于原子存储器事务的硬件支持的装置,所述装置包括:多个处理元件,每个处理元件被配置为执行一系列程序指令;以及存储器,该存储器被配置为存储由所述多个处理元件共享的数据值,其中所述多个处理元件中的至少一个处理元件是事务存储器支持型处理元件,该事务存储器支持型处理元件具有被配置为监控对所述存储器内的锁地址的访问的控制器并且所述控制器被配置为通过以下操作来回应从所述多个处理元件中的另一处理元件接收的、获得对所述锁地址的排他性访问的请求:(1)当所述事务存储器支持型处理元件正执行由所述锁地址保护的存储器事务时,延迟释放所述锁地址用于排他性访问,直至预定条件被满足;以及(2)当所述事务存储器支持型处理元件未正执行由所述锁地址保护的存储器事务时,独立于所述预定条件地释放所述锁地址用于排他性访问。
【技术特征摘要】
【国外来华专利技术】2014.03.06 GB 1403948.11.一种用于处理数据并且包括对于原子存储器事务的硬件支持的装置,所述装置包括:多个处理元件,每个处理元件被配置为执行一系列程序指令;以及存储器,该存储器被配置为存储由所述多个处理元件共享的数据值,其中所述多个处理元件中的至少一个处理元件是事务存储器支持型处理元件,该事务存储器支持型处理元件具有被配置为监控对所述存储器内的锁地址的访问的控制器并且所述控制器被配置为通过以下操作来回应从所述多个处理元件中的另一处理元件接收的、获得对所述锁地址的排他性访问的请求:(1)当所述事务存储器支持型处理元件正执行由所述锁地址保护的存储器事务时,延迟释放所述锁地址用于排他性访问,直至预定条件被满足;以及(2)当所述事务存储器支持型处理元件未正执行由所述锁地址保护的存储器事务时,独立于所述预定条件地释放所述锁地址用于排他性访问。2.如权利要求1所述的装置,其中所述控制器被配置为通过对该接收的请求返回请求拒绝响应来延迟释放所述锁地址。3.如权利要求1所述的装置,其中所述控制器被配置为通过延迟返回对于该接收的请求的任何响应来延迟释放所述锁地址。4.如权利要求1、2和3中任一项所述的装置,其中所述预定条件至少部分是所述事务存储器支持型处理元件在不释放所述锁地址的情形下已经接收到对于所述锁地址的预定数目的访问请求。5.如前述权利要求中任一项所述的装置,其中所述预定条件至少部分是所述事务存储器支持型处理元件已经延迟释放所述锁地址达预定时间。6.如前述权利要求中任一项所述的装置,其中所述控制器被配置为:如果所述锁地址在所述存储器事务已经完成之前被释放,则中止由所述锁值保护的所述存储器事务。7.如前述权利要求中任一项所述的装置,其中所述多个处理元件包括至少一个不具有所述控制器的事务存储器不支持型处理元件。8.如权利要求7所述的装置,其中所述事务存储器不支持型处理元件被配置为在开始由所述锁值保护的存储器事务的执行之前执行一系列锁获取程序指令。9.如权利要求7和8中任一项所述的装置,其中所述事务存储器不支持型处理元件相比所述事务存储器支持型处理元件具有更低的功耗和更低的指令处理性能。10.如前述权利要求中任一项所述的装置,其中所述多个处理元件形成非对称多处理装置。11.如前述权利要求中任一项所述的装置,包括多个事务存储器支持型处理元件。12.如权利要求11所述的装置,其中如果该接收的请求是从所述多个事务存储器支持型处理元件中的一个中接收的,则所述预定条件被满足。13.如前述权利要求中任一项所述的装置,其中所述多个处理元件中的至少一个处理元件包括:一个或多个架构寄存器,被配置为保持规定了所述多个处理元件中的所述至少一个处理元件的配置的参数,所述一个或多个架构寄存器包括专用于存储所述锁地址的锁地址寄存器;以及指令译码器电路,被配置为译码指示存储器事务的启动的事务启动指令并且被配置为:(1)如果所述多个处理元件中的所述至少一个处理元件未正执行存储器事务,则生成一个或多个控制信号来控制从所述锁地址寄存器中读取所述锁地址以及至少访问在所述锁地址处存储的所述锁值;并且(2)如果所述多个处理元件中的所述至少一个处理元件已正执行存储器事务,则进行下一步处理而无需访问在所述锁地址处存储的所述锁值。14.如权利要求13所述的装置,其中所述装置被配置为执行与多个不同的程序进程相对应的程序指令,其中所述多个处理元件中一个给定处理元件在给定时段内执行所述多个程序进程中一个给定程序进程,并且所述多个处理元件中所述一个给定处理元件的锁地址寄存器在所述给定时段期间存储针对所述多个程序进程中所述一个给定程序进程的锁地址。15.一种用于处理数据并且包括对于原子存储器事务的硬件支持的装置,所述装置包括:多个处理装置,每个处理装置用于执行一系列程序指令;以及存储器装置,用于存储由所述多个处理装置共享的数据值,其中所述多个处理装置中的至少一个处理装置是事务存储器支持型处理装置,该事务存储器支持型处理装置具有用于监控对所述存储器装置内的锁地址的访问的控制装置并且所述控制装置用于通过以下操作来回应从所述多个处理装置中的另一处理装置接收的、获得对所述锁地址的排他性访问的请求:(1...
【专利技术属性】
技术研发人员:马修·詹姆斯·霍斯内尔,理查德·罗伊·格里森思怀特,斯图亚特·大卫·贝尔斯,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。