跨窄链路压缩频繁数据值制造技术

技术编号:21666396 阅读:69 留言:0更新日期:2019-07-20 07:44
公开了用于跨窄链路压缩频繁数据值的系统、设备和方法。在一个实施方案中,一种系统包括处理器、链路接口单元和通信链路。所述链路接口单元被配置成接收用于在所述通信链路上传输的数据流,其中所述数据流由所述处理器生成。所述链路接口单元确定来自所述数据流的第一大小的数据块是否与一个或多个第一数据模式匹配,并且所述链路接口单元确定来自所述数据流的第二大小的数据块是否与一个或多个第二数据模式匹配。所述链路接口单元通过所述通信链路仅发送与所述第一数据模式或所述第二数据模式不匹配的数据块。

Compression of Frequent Data Values across Narrow Links

【技术实现步骤摘要】
【国外来华专利技术】跨窄链路压缩频繁数据值专利技术背景相关技术描述单独管芯上的电气组件通过管芯之间的链路相互通信。管芯之间的带宽受限于物理距离、片外连接的电气特性以及引脚的有限可用性。链路上数据传输的频率以及链路的宽度(根据传送的数据位)限定了链路上的带宽。增加信号计数或链路频率是增加带宽的方法,但是两者均涉及成本和技术问题,这妨碍其有效扩展。附图说明通过结合附图参考以下描述,可以更好地理解本文描述的方法和机制的优点,其中:图1是计算系统的一个实施方案的方框图。图2是链路接口单元的一个实施方案的方框图。图3是用于在通信链路上传输之前压缩高速缓存行的技术的一个实施方案的示意图。图4是用于在通过链路传输之前压缩数据的高速缓存行的技术的另一实施方案的图。图5示出了指示用于压缩数据块的编码字段的表的一个实施方案。图6示出了两个编码表的实例。图7示出了具有针对不同类型应用实施的模式检测方案的表的一个实施方案。图8是示出用于压缩处理器生成的数据的方法的一个实施方案的通用流程图。图9是示出用于压缩处理器生成的数据的方法的另一实施方案的通用流程图。图10是示出用于动态实施数据流的数据块的数据模式检查的方法的一个实施方案的通用流程图。图11是示出用于压缩处理器生成的数据的方法的一个实施方案的通用流程图。图12是示出用于压缩处理器生成的数据的方法的另一实施方案的通用流程图。具体实施方式在以下描述中,阐述了众多具体细节,以提供对本文呈现的方法和机制的透彻理解。然而,本领域普通技术人员应明白,可以在没有这些具体细节的情况下实践各种实施方案。在一些情况下,并未详细示出众所周知的结构、组件、信号、计算机程序指令和技术,以免使本文描述的方法变得模糊。应明白,为了图示的清晰明了,图中所示的元件不必按比例绘制。例如,一些元件的尺寸可相对于其它元件被放大。公开了用于跨窄链路压缩频繁数据值的各种系统、设备、方法和计算机可读介质。在一个实施方案中,一种系统至少包括处理器、链路接口单元和通信链路。在一个实施方案中,链路接口单元被配置成接收用于在通信链路上传输的数据流,其中数据流由处理器生成。在一个实施方案中,数据流包括一个或多个数据高速缓存行。在一个实施方案中,链路接口单元利用两种不同的方法来划分数据的高速缓存行。链路接口单元将高速缓存行划分成第一大小的数据块,且然后确定高速缓存行的每隔一个块是否与一个或多个模式中的任一个匹配。在一个实施方案中,第一大小是32位。在一个实施方案中,模式之一是所有位等于零。如果每隔一个块与一个或多个模式中的给定模式匹配,那么链路接口单元仅通过通信链路发送其它块。这将通过通信链路发送的数据量降低一半。如果每隔一个块与一个或多个模式中的任一个都不匹配,那么链路接口单元将高速缓存行划分成第二大小的数据块,且然后确定高速缓存行的第二大小的每隔一个块是否与一个或多个模式中的任一个匹配。在一个实施方案中,第二大小是16位。如果每隔一个块与一个或多个模式中的给定模式匹配,那么链路接口单元仅通过通信链路发送其它块。链路接口单元还通过通信链路发送编码字段,以指示每隔一个块与哪个给定模式匹配,并指示块的大小,使得接收器可以重建初始数据。如果每隔一个块与一个或多个模式中的任一个都不匹配,那么链路接口单元通过通信链路发送整个数据的高速缓存行。在一个实施方案中,链路接口单元被配置成监测数据流,以动态确定在第一时间段上在数据流内会频繁出现哪些数据模式。接下来,响应于确定第三数据模式是第一时间段上在数据流内频繁出现的数据模式,链路接口单元确定数据流内第一大小的数据块是否与第三数据模式匹配,其中第三数据模式不同于一个或多个第一或第二数据模式。在一个实施方案中,频繁出现的数据模式是在第一时间段中出现超过阈值次数的数据模式。在一个实施方案中,基于由系统的处理器执行的软件应用的类型,系统改变被实施以压缩数据的模式检测方案。例如,在一个实施方案中,当压缩与第一软件应用相关联的数据时,链路接口单元实施第一模式检测方案,并且当压缩与第二软件应用相关联的数据时,链路接口单元实施第二模式检测方案,其中第二模式检测方案不同于第一模式检测方案。此外,链路接口单元为其它类型的软件应用实施任意数量的其它模式检测方案。现在参考图1,示出了计算系统100的一个实施方案的方框图。在一个实施方案中,系统100包括多个节点,其中图1中示出了节点105和110。应注意,系统100可以包括具有类似于节点105和110所示电路的附加节点。节点105和110经由通信链路155耦合在一起。根据实施方案,通信链路155可以是双向或单向链路。根据实施方案,链路155的宽度具有不同的宽度(例如,16位)。在一个实施方案中,节点105形成在第一集成电路管芯上,且节点110形成在第二集成电路管芯上,其中链路155在第一管芯与第二管芯之间提供互连。节点105和110代表任何数量和类型的计算节点。一般来说,节点105或110被定义为具有至少一个计算/处理元件(例如,处理器、处理器核心、可编程逻辑装置、专用集成电路)和至少一个存储器装置的设备或系统。节点的至少一个计算元件被配置成根据实施方案执行指令和/或执行一种或多种类型的计算(例如,浮点、整数、存储器、I/O)。每个节点105和110的组件通过一个或多个通信总线或结构(例如,分别为交换结构135和140)互连。在一个实施方案中,每个节点105和110的功能被并入单个集成电路中。在另一实施方案中,每个节点105和110的功能被并入计算机主板上的芯片组中。在一个实施方案中,每个节点105和110是移动计算机、桌上型计算机、服务器或其它装置或系统中的独立系统。在另一实施方案中,每个节点105和110是多插座系统100的插座。在又一实施方案中,每个节点105和110是多管芯系统100的单独管芯。在一个实施方案中,节点105和110实施基于分组的接口,用于链路155上的通信。通常,分组在链路155上作为一个或多个位时间传输。在一个实施方案中,给定位时间可以参考时钟信号的上升沿或下降沿。在另一实施方案中,链路155不包括时钟信号。取而代之,时钟是从检测数据线上的转换中恢复的。在一个实施方案中,链路155比分组接口更窄。在该实施方案中,分组在链路155上被分散在许多位时间上。在各种实施方案中,链路单元115和120被配置成实施降低(即压缩)通过链路155发送的数据量的技术。应注意,链路单元115和120也可以被称为链路接口单元。在一个实施方案中,实施了一种用于检测通过链路155发送的数据中频繁出现的数据模式的技术。在节点105上,链路单元115被配置成确定将通过链路155传送的处理器生成的数据是否包括一个或多个频繁出现的数据模式。在一个实施方案中,将通过链路155发送的处理器生成的数据在通过链路155发送之前存储在链路单元115的缓冲器中。链路单元115被配置成利用存储在缓冲器中的处理器生成的数据来构建用于通过链路155传送的命令和数据分组。在一个实施方案中,如果在从处理器160发送到链路单元115的数据中检测到数据模式,那么在通过链路155发送之前,数据被压缩。在一个实施方案中,如果数据与固定部分与可变部分交替的模式匹配,那么只有数据的可变部分在链路155上发送。例如本文档来自技高网...

【技术保护点】
1.一种系统,其包括:处理器;链路接口单元;和通信链路;其中所述链路接口单元被配置成:接收用于在所述通信链路上传输的数据流;将所述数据流划分成第一大小的数据块;和响应于确定所述数据块的第二部分与一个或多个第一数据模式匹配,通过所述通信链路发送所述数据块的第一部分,而不发送所述数据块的所述第二部分。

【技术特征摘要】
【国外来华专利技术】2016.12.08 US 15/373,105;2017.10.16 US 15/785,1271.一种系统,其包括:处理器;链路接口单元;和通信链路;其中所述链路接口单元被配置成:接收用于在所述通信链路上传输的数据流;将所述数据流划分成第一大小的数据块;和响应于确定所述数据块的第二部分与一个或多个第一数据模式匹配,通过所述通信链路发送所述数据块的第一部分,而不发送所述数据块的所述第二部分。2.根据权利要求1所述的系统,其中所述链路接口单元还被配置成:生成编码以指示所述第二部分与哪个数据模式匹配;和通过所述通信链路发送所述编码。3.根据权利要求1所述的系统,其中响应于确定所述第一大小的每个数据块的一部分与所述一个或多个模式中的任一个不匹配,所述链路接口单元被配置成:将所述数据流划分成第二大小的数据块;和响应于确定所述第二大小的所述数据块的第二块与一个或多个第一数据模式匹配,通过所述通信链路发送所述第二大小的所述数据块的第一块,而不发送所述第二大小的所述数据块的所述第二块。4.根据权利要求3所述的系统,其中所述数据流是数据的高速缓存行,并且其中所述第二大小等于所述第一大小的一半。5.根据权利要求1所述的系统,其中所述链路接口单元还被配置成:监测所述数据流,以动态确定在第一时间段上在所述数据流内频繁出现哪些数据模式;和响应于确定第二数据模式是所述第一时间段上在所述数据流内频繁出现的数据模式,确定所述数据流内所述第一大小的数据块是否与所述第二数据模式匹配,其中所述第二数据模式不同于所述一个或多个第一数据模式。6.根据权利要求5所述的系统,其中频繁出现的数据模式是在所述第一时间段中出现超过阈值次数的数据模式。7.根据权利要求1所述的系统,其中所述链路接口单元还被配置成:当压缩与第一软件应用相关联的数据时,实施第一模式检测方案;和当压缩与第二软件应用相关联的数据时,实施第二模式检测方案,其中所述第二模式检测方案不同于所述第一模式检测方案。8.一种方法,其包括:接收用于在通信链路上传输的数据流;由链路接口单元将所述数据流划分成第一大小的数据块;和响应于确定所述第一大小的所述数据块的第二块与一个或多个第一数据模式匹配,通过所述通信链路发送所述第一大小的所述数据块的第一块,而不发送所述第二块。9.根据权利要求8所述的方法,其还包括:生成编码以指示所述第二部分与哪个数据模式匹配;和通过所述通信链路发送所述编码。10.根据权利要求8所述的方法,其中响应于确定所述第一大小的每个数据块的一部分与所述一个或多个模式中的任一个不匹配,所述方法还包括:将所述数据流划分成第二大小的数据块;和响应于确定所述第二大小的所述...

【专利技术属性】
技术研发人员:格雷戈里·D·唐利维德希亚纳坦·卡利亚纳孙达拉姆布赖恩·P·布鲁萨尔
申请(专利权)人:超威半导体公司
类型:发明
国别省市:美国,US

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

1