得到主移位寄存器的一个或多个检查点的硬件结构制造技术

技术编号:14899235 阅读:61 留言:0更新日期:2017-03-29 14:20
本实用新型专利技术涉及得到主移位寄存器的一个或多个检查点的硬件结构。硬件结构包括用于存储最近移到主移位寄存器上的数据元素的、具有每个检查点的额外数据位置的扩展移位寄存器。更新历史移位寄存器具有用于存储指示扩展移位寄存器是否被更新的信息的每个检查点的数据位置。检查点产生逻辑通过基于存储在更新历史移位寄存器中的信息选择存储在扩展移位寄存器的数据元素的子集来得到每个检查点。

【技术实现步骤摘要】

本申请涉及但不限于得到主移位寄存器的一个或多个检查点的硬件结构。
技术介绍
如本领域中的技术人员已知的,移位寄存器是用于按顺序记录预定数量N的数据元素的数据结构。当在移位寄存器处接收到新数据元素时,在移位寄存器中的现有数据元素“移动了”一个数据位置以为新数据元素留出空间,且新数据元素存储在移位寄存器的第一数据位置上。在移位寄存器只有N个数据位置(且因此可以只存储N个数据元素)的场合,如果移位寄存器在它接收新数据元素时已经有N个数据元素,则最后一个(或最早的)数据元素从移位寄存器移出以为新数据元素留出空间。移出的数据元素(及与其相关的信息)然后被丢失。然而在一些情况下,知道移位寄存器在它被更新之前或在某个事件出现之前看起来像什么很重要。在这些情况下,移位寄存器的拷贝或快照在移位寄存器被更新之前或事件出现之前被获得并被存储。获得并存储移位寄存器的快照的这个过程被称为对移位寄存器进行检查点操作(checkpointingtheshiftregister)。下面所述的实施方式仅作为例子被提供,且并不是解决对移位寄存器进行检查点操作的已知方法的任何或所有缺点的实现的限制。
技术实现思路
这个概述被提供来以简化的形式介绍一系列概念,在下面详细描述中进行了进一步描述。这个概述并不打算识别所主张的主题的关键特征或必要特征,也不打算用作在确定所主张的主题的范围时的帮助。本文描述了用于对主移位寄存器进行检查点操作一次或多次的方法和硬件结构。硬件结构包括用于存储最近被移到主移位寄存器上的数据元素的扩展移位寄存器,扩展移位寄存器具有用于每个检查点的额外数据位置。更新历史移位寄存器具有用于每个检查点的数据位置信息,该每个检查点的数据位置信息用于存储指示扩展移位寄存器是否以特定时钟周期进行更新的信息。检查点产生逻辑通过基于存储在更新历史移位寄存器中的信息选择存储在扩展移位寄存器中的数据元素的子集来得到每个检查点。第一方面提供配置成得到具有预定数量的数据位置的主移位寄存器的一个或多个检查点的硬件结构。硬件结构包括具有主移位寄存器的每个数据位置的数据位置和每个检查点的额外数据位置的扩展移位寄存器。扩展移位寄存器的数据位置存储最近移到主移位寄存器上的数据元素。更新历史移位寄存器具有每个检查点的数据位置,且更新历史寄存器的每个数据位置存储指示扩展移位寄存器是否以与特定检查点触发事件相同的时钟周期进行更新的信息。检查点产生逻辑通过基于存储在更新历史移位寄存器中的信息选择扩展移位寄存器的数据位置的子集来得到每个检查点。第二方面提供得到具有预定数量的数据位置的主移位寄存器的一个或多个检查点的方法。该方法包括将最近移到主移位寄存器上的预定数量的数据元素存储在扩展移位寄存器的多个数据位置上。该方法将每个检查点的额外数据元素存储在扩展移位寄存器的额外数据位置上。将指示扩展移位寄存器是否以与特定检查点触发事件相同的时钟周期进行更新的信息存储在更新历史移位寄存器的数据位置上。该方法通过基于存储在更新历史移位寄存器中的信息选择扩展移位寄存器的数据位置的子集来得到每个检查点。本申请的各方面还提供了以下内容:1)一种配置成得到主移位寄存器的一个或多个检查点的硬件结构,所述检查点由触发事件触发,所述硬件结构包括:扩展移位寄存器,其具有用于存储数据元素的多个数据位置,所述多个数据位置包括代表所述主移位寄存器的数据位置的第一子集和关于每个检查点的额外数据位置;更新历史移位寄存器,其具有关于每个检查点的数据位置,所述更新历史移位寄存器的每个数据位置存储指示所述扩展移位寄存器是否在与特定检查点触发事件相同的时钟周期中被更新的信息;以及检查点产生逻辑,其配置成通过基于存储在所述更新历史移位寄存器中的信息选择所述扩展移位寄存器的所述多个数据位置的子集来得到每个检查点。2)如项目1)所述的硬件结构,其中关于特定检查点的所述扩展移位寄存器的所述多个数据位置的选定子集能够从数据位置的所述第一子集没有偏移、偏移一个数据位置或多于一个数据位置。3)如项目2)所述的硬件结构,其中所述检查点产生逻辑配置成通过评估存储在所述更新历史移位寄存器的多个相关数据位置中的信息来确定关于特定检查点的从数据位置的所述第一子集的偏移。4)如项目3)所述的硬件结构,其中每个检查点代表在多个检查点触发事件之前的所述主移位寄存器,以及关于特定检查点的相关数据位置的数量等于关于该检查点的检查点触发事件的数量。5)如项目3)所述的硬件结构,其中所述偏移等于所述更新历史移位寄存器的包括指示所述扩展移位寄存器被更新的信息的所述相关数据位置的计数。6)如项目2)到5)中的任一项所述的硬件结构,其中所述检查点产生逻辑配置成通过下列操作来得到代表在最近的检查点触发事件之前的所述主移位寄存器的第一检查点:在所述检查点产生逻辑中确定所述更新历史移位寄存器的第一数据位置是否包括指示所述扩展移位寄存器被更新的信息;响应于确定所述更新历史移位寄存器的所述第一数据位置不包括指示所述扩展移位寄存器被更新的信息,在所述检查点产生逻辑中选择所述扩展移位寄存器的数据位置的所述第一子集;以及响应于确定所述更新历史移位寄存器的所述第一数据位置包括指示所述扩展移位寄存器被更新的信息,在所述检查点产生逻辑中选择从数据位置的所述第一子集偏移了一个数据位置的所述扩展移位寄存器的所述多个数据位置的子集。7)如项目2)到5)中的任一项所述的硬件结构,其中检查点的数量是至少二,且所述检查点产生逻辑配置成通过下列操作来得到代表在两个最近的检查点触发事件之前的所述主移位寄存器的第二检查点:在所述检查点产生逻辑中将所述更新历史移位寄存器的包括指示所述扩展移位寄存器被更新的信息的前两个数据位置的数量计数;以及在所述检查点产生逻辑中选择从数据位置的所述第一子集偏移了所述计数的所述扩展移位寄存器的所述多个数据位置的子集。8)如项目1)到5)中的任一项所述的硬件结构,还包括更新逻辑,所述更新逻辑配置成在每个时钟周期中:在所述更新逻辑中确定检查点触发事件是否出现;响应于确定检查点触发事件已出现,在所述更新逻辑中确定所述扩展移位寄存器是否在当前时钟周期中被更新;响应于确定所述扩展移位寄存器在当前时钟周期中被更新,通过所述更新逻辑将指示所述扩展移位寄存器已更新的信息移到所述更新历史移位寄存器上;以及响应于确定所述扩展移位寄存器在当前时钟周期中未被更新,通过所述更新逻辑将指示所述扩展移位寄存器未更新的信息移到所述更新历史移位寄存器上。9)如项目1)到5)中的任一项所述的硬件结构,还包括:恢复缓冲区,其具有多个数据位置,每个数据位置存储在特定的时间点的所述扩展移位寄存器的数据元素的拷贝和所述更新历史移位寄存器的信息的拷贝;以及恢复逻辑,其配置成响应于接收到恢复将被执行的指示,使用存储在所述恢复缓冲区中的拷贝将所述扩展移位寄存器和所述更新历史移位寄存器恢复到特定的时间点。10)一种用于得到主移位寄存器的一个或多个检查点的方法,所述检查点由触发事件触发,所述方法包括:将数据元素存储在扩展移位寄存器的多个数据位置上,所述多个数据位置包括代表所述主移位寄存器的数据位置的第一子集和关于每个检查点的额外数据位置;将指示所述扩展移位寄存器是否在与特定检查点触发事件相同的时钟周期中本文档来自技高网...

【技术保护点】
一种得到主移位寄存器的一个或多个检查点的硬件结构,所述检查点由触发事件触发,所述硬件结构包括:扩展移位寄存器,其具有用于存储数据元素的多个数据位置,所述多个数据位置包括代表所述主移位寄存器的数据位置的第一子集和关于每个检查点的额外数据位置;更新历史移位寄存器,其具有关于每个检查点的数据位置,所述更新历史移位寄存器的每个数据位置存储指示所述扩展移位寄存器是否在与特定检查点触发事件相同的时钟周期中被更新的信息;以及检查点产生逻辑,其耦合到所述扩展移位寄存器和所述更新历史移位寄存器,所述检查点产生逻辑通过基于存储在所述更新历史移位寄存器中的信息选择所述扩展移位寄存器的所述多个数据位置的子集来得到每个检查点。

【技术特征摘要】
2015.07.08 GB 1511980.3;2015.07.08 GB 1511981.1;201.一种得到主移位寄存器的一个或多个检查点的硬件结构,所述检查点由触发事件触发,所述硬件结构包括:扩展移位寄存器,其具有用于存储数据元素的多个数据位置,所述多个数据位置包括代表所述主移位寄存器的数据位置的第一子集和关于每个检查点的额外数据位置;更新历史移位寄存器,其具有关于每个检查点的数据位置,所述更新历史移位寄存器的每个数据位置存储指示所述扩展移位寄存器是否在与特定检查点触发事件相同的时钟周期中被更新的信息;以及检查点产生逻辑,其耦合到所述扩展移位寄存器和所述更新历史移位寄存器,所述检查点产生逻辑通过基于存储在所述更新历史移位寄存器中的信息选择所述扩展移位寄存器的所述多个数据位置的子集来得到每个检查点。2.如权利要求1所述的硬件结构,其中关于特定检查点的所述扩展移位寄存器的所述多个数据位置的选定子集能够从数据位置的所述第一子集没有偏移、偏移一个数据位置或多于一个数据位置。3.如权利要求2所述的硬件结构,其中所述检查点产生逻辑通过评估存储在所述更新历史移位寄存器的多个相关数据位置中的信息来确定关于特定检查点的从数据位置的所述第一子集的偏移。4.如权利要求3所述的硬件结构,其中每个检查点代表在多个检查点触发事件之前的所述主移位寄存器,以及关于特定检查点的相关数据位置的数量等于关于该检查点的检查点触发事件的数量。5.如权利要求3所述的硬件结构,其中所述偏移等于所述更新历史移位寄存器的包括指示所述扩展移位寄存器被更新的信息的所述相关数据位置的计数。6.如权利要求2到5中的任一项所述的硬件结构,其中所述检查点产生逻辑通过下列操作来得到代表在最近的检查点触发事件之前的所述主移位寄存器的第一检查点:在所述检查点产生逻辑中确定所述更新历史移位寄存器的第一数据位置是否包括指示所述扩展移位寄存器被更新的信息;响应于确定所述更新历史移...

【专利技术属性】
技术研发人员:菲利普·戴
申请(专利权)人:想象技术有限公司
类型:新型
国别省市:英国;GB

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

1