用于压缩数据流的方法和装置与流程

文档序号:22750569发布日期:2020-10-31 09:44阅读:154来源:国知局
用于压缩数据流的方法和装置与流程

相关申请的交叉引用

本申请要求于2019年4月30日提交的名称为“经由概率分布函数(pdf)压缩传入数据流的方法和装置”的美国第62/841,207号临时申请,以及于2019年4月30日提交的名称为“使用硬件加速器块的压缩引擎来压缩传入数据流的方法和装置”的美国第62/841,202号临时申请的优先权,它们的全部内容通过整体引用并入本文。

本发明的示例性实施例涉及数据传输。更具体地,本发明的示例性实施例涉及压缩和解压缩数据流以用于数据传输。



背景技术:

随着通过高速通信网络(诸如lte或5g蜂窝服务)的移动和远程数据访问的快速增长的趋势,准确地递送和解密数据流变得越来越具有挑战性并且越来越困难。能够递送信息的高速通信网络包括但不限于无线网络、蜂窝网络、无线个人局域网(wpan)、无线局域网(wlan)、或无线城域网(wman)。

数据传输的问题和考虑不限于通过有线或无线系统互连进行数据传输,还甚至扩展到通过一个集成电路或片上系统(soc)设备上的电路系统之间的互连来进行数据的传输。随着数据速率增加且通过系统互连流动的数据量增加,用于有效地传输数据的系统正变得越来越重要。

因此,期望有一种机制,可以被用于通过系统互连有效地传输数据。



技术实现要素:

在各种实施例中,提供了用于压缩和解压缩用于通过系统互连来传输的数据的方法和装置。例如,提供了实现数据压缩以减少通过系统互连的业务的数据压缩加速器(dca)。该方法和装置还可以被用于压缩用于通过有线或无线连接传输的数据。在接收经压缩数据的接收器处,接收具有经压缩数据的标识符,该标识符被用于标识待被用于恢复原始数据的解压缩的类型。因此,实现了通过系统互连的有效数据传输。

在一个实施例中,数据压缩加速器能够处理和压缩通过无线通信网络待被传输的传入信息。在接收信息流时,计算与信息流相关联的概率分布函数(pdf)。在将pdf与被存储在本地存储器中的一组预定义的pdf(模板)进行匹配之后,从该组预定义的pdf中选择最接近匹配的pdf。一方面,与最接近匹配的pdf相关联的编码器被用于压缩(编码)信息流。经编码的流和标识编码器的标识符被传输到接收电路或设备。接收电路或设备使用编码器标识符来标识被用于解压缩经编码的流的解码器。

在一个实施例中,提供了一种用于对信息进行编码的方法。该方法包括计算针对标量数据的概率分布函数(pdf),将pdf与pdf模板匹配以确定最接近匹配的pdf模板,以及确定与最接近匹配的pdf模板相对应的编码器,使得对应的编码器标识符被确定。该方法还包括利用编码器对该标量数据编码以生成经编码的流,并且传输经编码的流和编码器标识符。一方面,编码器是提供无损数据压缩的熵编码器。例如,一种类型的熵编码器创建唯一的无前缀代码并将其分配给在输入中出现的每个唯一的符号。然后,通过用对应的可变长度的无前缀输出代码字来替换每个固定长度的输入符号,以此来压缩数据。每个代码字的长度与概率的负对数近似成比例。因此,最常见的符号使用最短的代码。

在一个实施例中,提供了一种用于对矢量信息进行编码的方法。该方法包括将接收到的矢量数据分区为多个区间,确定针对每个区间的质心(centroid),形成质心的字典,对每个区间中的数据矢量进行计数,以构建质心的概率分布函数(pdf),并且将质心的pdf与pdf模板进行匹配以确定最接近匹配的pdf模板。该方法还包括:确定与最接近匹配的pdf模板相对应的编码器,使得相对应的编码器标识符被标识;使用矢量标签将矢量量化到质心;利用编码器对矢量标签编码以生成经编码的数据流;以及发送经编码的流、编码器标识符和字典。一方面,编码器是提供无损数据压缩的编码器。

在实施例中,提供了一种用于对信息进行编码的装置,其包括:计算与输入数据相关联的pdf的概率分布函数(pdf)计算电路、将pdf与pdf模板匹配以确定最接近匹配的pdf模板的匹配电路,并且确定与最接近匹配的pdf模板相对应的编码器,其中相对应的编码器标识符被确定。该装置还包括编码电路,该编码电路利用编码器对输入数据进行编码以生成经编码的流,并且发送经编码的流和编码器标识符。

在实施例中,一种用于压缩矩阵数据的方法,包括计算矩阵数据的分解以生成特征矢量和相关联的特征值,基于对特征值进行加权来确定特征矢量的簇,计算针对每个簇的特征矢量质心,使得生成质心的字典,并且分别用标签来标记特征矢量,标签标识每个特征矢量的相关联的特征矢量质心。该方法还包括对与每个特征矢量质心相关联的特征矢量的数目进行计数以构建质心的概率分布函数(pdf),将质心的pdf与pdf模板匹配以确定最接近匹配的pdf模板,确定最接近匹配的pdf模板相对应的编码器,其中相对应的编码器标识符被标识,利用编码器对标签进行编码以生成经编码的数据流,并且传输经编码的数据流、编码器标识符、质心的字典和特征值。

在一个实施例中,提供了一种用于解压缩矩阵数据的方法。该方法包括接收经编码的数据流、编码器标识符、质心的字典和特征值,基于编码器标识符来确定解码器,以及使用解码器对经编码的数据流进行解码以获得标签。该方法还包括使用该字典将标签转换为质心序列,并且根据质心和特征值重构矩阵数据。

根据以下阐述的详细描述、附图和权利要求,本发明的示例性实施例的附加特征和益处将变得明显。

附图说明

根据以下给出的详细描述以及根据本发明的各种实施例的附图,将更全面地理解本发明的示例性方面,然而,这些示例性方面不应被理解为将本发明限制于特定实施例,而是仅用于解释和理解。

图1示出了具有发射器和接收器的通信网络,发射器包括数据压缩加速器的示例性实施例,以及接收器包括数据解压缩加速器的示例性实施例,该通信网络提供通过系统互连对标量或矢量数据进行的有效传输。

图2示出了在图1中示出的数据压缩加速器和数据解压缩加速器的示例性的详细实施例。

图3示出了图2的数据压缩加速器的示例性备选实施例,该数据压缩加速器被配置为对矢量数据进行编码。

图4示出了与标量和矢量数据相关联的pdf模板的示例性实施例。

图5示出了用于对通过系统互连待被传输的标量或矢量数据进行数据压缩的示例性方法。

图6示出了用于对通过系统互连接收的标量数据进行数据解压缩的示例性方法。

图7示出了用于对通过系统互连接收的矢量数据进行数据解压缩的示例性方法。

图8示出了用于压缩标量或矢量数据的示例性装置。

图9a示出了根据本发明的、被压缩以用于有效传输的矩阵的实施例。

图9b示出了发射器和接收器的实施例,发射器包括矩阵数据压缩加速器的示例性实施例,接收器包括矩阵数据解压缩加速器的示例性实施例,该实施例提供了通过系统互连对矩阵数据进行的有效传输。

图10示出了矩阵数据压缩加速器的示例性的详细实施例,该矩阵数据压缩加速器被配置为压缩矩阵数据。

图11示出了矩阵数据解压缩加速器的示例性的详细实施例,该矩阵数据解压缩加速器被配置为解压缩矩阵数据。

图12示出了用于压缩矩阵数据的示例性方法。

图13示出了用于解压缩矩阵数据的示例性方法。

图14示出了用于压缩矩阵数据的示例性装置。

图15示出了用于解压缩矩阵数据的示例性装置。

具体实现

在各个实施例中,提供了用于高效地压缩和解压缩标量或矢量数据流的方法和装置。以下详细描述的目的是提供对本发明的一个或多个实施例的理解。本领域普通技术人员将认识到,以下详细描述仅是说明性的,而非旨在以任何形式进行限制。受益于本公开和/或描述的本领域技术人员将容易地提出其他实施例。

为了清楚起见,并未示出和描述本文提出的实现的所有常规特征。当然,应当理解的是,在开发任何这种实际的实现时,可以做出许多特定于实现的决策,以实现开发人员的特定目标,例如符合应用和与业务相关的约束,并且这些特定的目标将从一个实现到另一实现、以及从一个开发人员到另一开发人员而变化。而且,将理解的是,这样的开发工作可能是复杂且耗时的,但是对于受益于本公开实施例的本领域普通技术人员而言,这仍将是工程的常规任务。

附图中所示的本发明的各种实施例可能未按比例绘制。相反,为了清楚起见,各种特征的尺寸可以扩大或缩小。另外,为了清楚起见,附图中一些附图可以进行简化。因此,附图可能未描绘给定装置(例如,设备)或方法的所有组件。在整个附图和以下详细描述中将使用相同的参考标记来指代相同或相似的部件。

术语“系统”或“设备”在本文中总体上被用于描述任何数目的组件,要素,子系统,设备,分组交换元件,分组交换器,接入交换器,路由器,网络,调制解调器,基站,enb(enodeb),计算机和/或通信设备或机制,或其组件的组合。术语“计算机”包括能够执行指令的处理器,存储器和总线,其中计算机指代计算机,个人计算机,工作站,大型机中的一项或其集群,或其计算机的组合。

图1示出了通信网络100,其具有发射器102和接收器110,发射器102包括数据压缩加速器(dca)106的示例性实施例,以及接收器110包括数据解压缩加速器(dda)112的示例性实施例,该通信网络提供了通过系统互连的标量或矢量数据的高效数据传输。

在各个示例性实施例中,本文描述的压缩和解压缩方法和装置被扩展到标量或矢量数据流。这在数据来自多个天线的基带调制解调器应用(无线和有线)中特别有用(但不仅限于此)。矢量化数据中的相关性提供了更高程度压缩的潜力。

在操作期间,标量或矢量数据104在发射器102处接收,以用于向接收器110的传输。根据本发明的实施例,dca106对标量或矢量数据104进行压缩,以生成要被传输给接收器110的经压缩的数据108。dda112操作以将在dca106处执行的过程反转,以对所接收的经压缩的标量或矢量数据108进行解压缩,以恢复原始数据流114。下面将提供对dca106和dda112的设计和操作的详细描述。

图2示出了图1所示的dca106和dda112的示例性详细实施例。图2中所示的实施例提供针对标量数据的数据压缩,传输和解压缩。图3示出了提供用于矢量数据的数据压缩的实施例。为了简单起见,图2中所示的dda112将被用于描述标量和矢量数据两者的接收和解压缩。

现在参考图2,dca106包括pdf计算电路202、pdf匹配电路204、pdf数据库206和编码电路208。在一个实施例中,dda112包括解码电路224、解码器数据库230和输出电路226。dca106和dda112的功能块中每个功能块包括被选择用来最小化时延和存储器要求的硬件和算法。例如,pdf计算电路202可以通过使用部分数据和/或历史数据来执行经简化的pdf计算。

在操作期间,pdf计算电路202接收标量数据210,并且计算针对所接收的标量数据210的概率分布函数212。pdf212被输入到pdf匹配电路204。pdf匹配电路204接收pdf212,并且将该pdf212与被存储在pdf数据库206中的pdf模板214匹配。pdf模板214与编码标识符216相关联。在一个实施例中,编码标识符216关联于针对所选择的pdf模板的特定的熵编码器。pdf匹配电路204确定pdf模板214中的与所计算的pdf212最佳匹配的一个pdf模板。确定最佳匹配可以使用任何期望的准则并且关于特定实现来完成。一旦找到最佳匹配的pdf模板,与最佳匹配的pdf模板相关联的编码标识符218就被传送到编码电路208。

编码电路208接收标量数据210,并且应用由编码标识符218所标识的编码类型,以生成经压缩的数据。例如,编码电路208使用熵编码,例如霍夫曼编码。然后,向包括dda112的接收电路传输包括经压缩的(或经编码的)数据和标识符218的组合220。例如,该传输可以是有线或无线传输。

在一个实施例中,dda112在解码电路224处接收经压缩的数据、以及编码器标识符218的组合220。解码电路224使用标识符218来访问解码器数据库230,以获得要被用于对所接收的压缩数据进行解压缩的解码器234。解码器电路224输出经解压缩的(经解码的)数据228,该数据228被传送到输出电路226。输出电路226执行任何最终处理,并将经恢复的标量或矢量数据114传送给接收器处的其他实体。

在各种示例性实施例中,所公开的方法和装置在将数据传输到另一处理块或设备之前,快速地压缩传入的数据,并且经压缩的数据随后可以在该下一个处理块或设备处进行快速地解压缩。在一方面中,dca106通过执行以下操作中的一个或多个操作,来压缩标量数据以用于传输。

1.计算针对传入的标量数据的概率分布函数(pdf)。

2.将所计算的pdf与被存储在数据库中的pdf模板进行匹配。例如,该匹配可以使用kl(kullback-leibler)散度或其他合适的函数来执行,以确定最接近匹配的pdf模板。

3.选择最接近匹配的pdf模板。

4.确定与最接近匹配的pdf模板相关联的编码器(例如熵编码器)。最佳匹配的pdf模板具有相关联的编码器标识符,该标识符也被存储数据库中,其标识熵编码器。

5.利用熵编码器对标量数据流进行编码,以生成经编码的数据流。

6.向另一处理块或设备传输经编码的数据流和编码器标识符。

7.在该处理块或设备处接收经编码的流和编码器标识符,并且使用由编码器标识符标识的解码器对经编码的流进行解码。

图3示出了dca300的示例性备选实施例,dca300被配置为对矢量数据进行压缩。dca300包括可选的自动编码器302、矢量质心(centroid)计算电路304、质心pdf计算电路306、pdf匹配电路308、pdf模板数据库310和矢量编码电路312。

在操作期间,矢量数据314在可选的自动编码器302处接收,或矢量数据314被直接传送给矢量质心计算电路304。当由自动编码器302处理时,矢量数据由自动编码器302的编码器部分在维度上进行减小。自动编码器通常被实现为预训练过的神经网络,其将输入矢量处理成较低维的矢量。

矢量质心计算电路304对矢量数据进行聚类(或分区),以确定区间(bin)的质心,并且利用对应的质心标识符对矢量进行标记,以生成经标记的矢量316,该经标记的矢量被传送给质心pdf计算电路306。在一个实施例中,矢量质心计算电路304利用聚类算法来找到矢量的簇。聚类是一种矢量量化的方法,其将n个观测值划分到k个簇中,其中每个观测值均属于具有最靠近的均值的簇,其作为聚类的原型。在一方面中,聚类算法是k-均值聚类算法。所确定的质心被输入到字典328中,该字典标识每个质心并将各种参数和值与每个质心相关联。质心字典328被传送到矢量编码电路312。

质心pdf计算电路306对与每个质心相关联的矢量的数目进行计数,以计算质心318的pdf。pdf318被输入至pdf匹配电路308。pdf匹配电路308接收pdf318,并将该pdf与被存储在pdf数据库310中的pdf模板320匹配。pdf模板320与编码标识符322相关联,编码标识符322也被存储在数据库310中。每个标识符都标识与特定的pdf模板相关联的熵编码器的类型。pdf匹配电路308确定与所计算的pdf318最佳匹配的pdf模板,并向矢量编码电路312传送对应的编码器标识符324。矢量编码电路312接收经标记的(或经量化的)矢量316,并且应用所选择的编码类型来对矢量标签进行压缩,所选择的编码类型由编码标识符324标识。然后,包括经压缩的矢量标签数据,编码器标识符324和质心字典328的组合326传输给包括解压缩电路(诸如dda112)的接收块或设备。解压缩电路对经压缩的数据进行如上所述的解压缩(例如参考图2所描述的)。

在一个方面中,dca300通过执行以下操作中的一个或多个操作来对矢量数据进行压缩以用于传输。

1.可选地,将自动编码器应用于矢量数据,以减小矢量数据的维度并且进一步促进聚类的收敛。

2.执行矢量质心计算以对矢量数据进行分区。例如,k-均值聚类可以被执行以确定区间的质心。质心字典由确定的质心来形成。

3.将每个矢量标记(或量化)到其对应的质心。

4.执行质心pdf计算以构造质心的pdf。例如,对每个质心中的矢量数目进行计数,以构建质心的pdf。

5.将质心的pdf与被存储在数据库中的pdf模板进行匹配。例如,该匹配可以使用kl(kullback-leibler)散度或其他合适的函数来执行。

6.选择最接近匹配的pdf模板。

7.确定与最接近匹配的pdf模板相对应的熵编码器。例如,该熵编码器具有相关联的编码器标识符,该相关联的编码器标识符标识编码器。

8.利用所标识的熵编码器对经量化的矢量标签数据进行编码,以生成经编码的数据流。

9将经编码的数据流、编码器标识符和质心字典传输给接收器。例如,该传输可以是有线或无线传输。

图4示出了标量402和矢量404pdf模板的示例性实施例,其与相关联的编码器标识符一起存储。例如,标量pdf模板存储有标量编码器标识符(sidn),并且矢量pdf模板存储有矢量编码器标识符(vidk)。

图5示出了用于对待通过系统互连而传输的标量或矢量数据进行数据压缩的示例性方法500。例如,方法500适合与图2所示的dca106和图3所示的dca300一起使用。

在框502,确定要被传输的数据是标量还是矢量。如果数据是标量数据,则该方法前进至框504。如果该数据是矢量数据,则该方法前进至框514。

在框504,针对标量数据,计算概率分布函数。例如,pdf计算电路202计算针对所接收的标量数据210的pdf212。

在框506,将所计算的pdf与所存储的pdf模板进行匹配,以确定最接近匹配的pdf模板。例如,pdf匹配电路204将pdf212与被存储在数据库206中的pdf模板214进行匹配。

在框508,选择与最接近匹配的pdf模板相关联的编码器。在实施例中,该编码器是熵编码器。例如,pdf匹配电路204确定最接近匹配的pdf模板,并且还确定与最接近匹配的pdf模板相关联并且一起存储的编码器标识符218。编码器标识符218被传送给编码电路208。

在框510,标量数据使用所确定的编码器进行压缩。例如,编码电路208使用由编码器标识符218标识的编码器,来对标量数据210进行压缩。

在框512,经编码的数据连同编码器标识符一起被传输。例如,编码电路208传输组合220,该组合220包括经编码的(经压缩的)数据和编码器标识符。在该操作之后,方法500结束。

在框514,自动编码器可选地被应用于矢量数据。自动编码器的编码器部分减小了矢量数据的维度。自动编码器可以被实现为预训练过的神经网络。

在框516,矢量数据被分区到区间中,并且针对每个区间的质心被确定。例如,矢量质心计算电路304使用聚类算法执行这些操作,以找到区间的质心。所确定的质心被维持在字典中,该字典标识每个质心,并将各种参数和值与每个质心相关联。例如,矢量质心计算电路304形成和维持质心的字典328。

在框518,矢量被量化到质心。例如,矢量质心计算电路304对每个质心中的矢量数目进行量化。例如,在一方面中,将矢量量化到质心的操作通过如下来执行:通过矢量所属于的簇的索引(或标签)来对矢量进行表示。

在框520,对每个质心中的矢量的数目进行计数,并且作为经标记的矢量316而输出,经标记的矢量316用其相关联的质心进行标记。

在框522,生成质心的pdf。例如,矢量pdf计算电路306根据经标记的矢量316来计算pdf318。

在框524,所计算的pdf与pdf模板进行匹配,以确定最接近匹配的pdf模板。例如,矢量pdf匹配电路308将pdf318与被存储在数据库310中的pdf模板进行匹配。最接近匹配的pdf模板被确定。

在框526,确定与最接近匹配的pdf模板相关联的编码器。例如,pdf匹配电路308取回编码器标识符324,该编码器标识符324与被存储在数据库310中的最接近匹配的pdf模板相关联。编码器标识符324标识要被用于对矢量数据进行编码的编码器。

在框528,使用所确定的编码器对矢量标签进行编码(压缩)以生成经编码的数据流。例如,矢量编码电路312利用由编码器标识符324标识的编码器,对矢量标签进行编码,以生成经编码的数据流。

在框530,经编码的数据流,连同编码器标识符和质心字典如326处所指示的一起被传输。然后,该方法结束。

因此,方法500操作以对将要通过系统互连而传输标量或矢量数据进行压缩。应当注意的是,方法500的操作是示例性的,并且可以在实施例的范围内进行改变、修改、添加和删除。

图6示出了用于对通过系统互连而接收的标量数据进行数据解压缩的示例性方法600。例如,方法600适合与图2所示的dda112一起使用。

在框602,接收标量数据与对应的编码器标识符一起被接收。例如,标量数据和编码器标识符由解码电路224接收。

在框604,使用编码器标识符来标识解码器。例如,解码电路224使用编码器标识符来访问在解码器数据库230中被存储的解码器,以获得解码器234。

在框606,使用解码器对标量数据进行解码。例如,解码电路224使用由编码器标识符标识的解码器234,对所接收的经压缩的标量数据进行解码。

在框608,经解码的数据被输出。例如,经解码的数据228被传送给输出电路226,该输出电路226将经解码的数据作为原始标量数据210进行输出。

因此,方法600操作以对所接收的标量数据进行解码。应当注意,方法600的操作是示例性的,并且可以在实施例的范围内进行改变、修改、添加和删除。

图7示出了用于对将要通过系统互连而接收的矢量数据进行数据解压缩的示例性方法700。例如,方法700适合与图2所示的dda112一起使用。

在框702,经编码的质心数据与对应的编码器标识符和质心字典一起被接收。在实施例中,经编码的数据是以标量数据的形式。例如,经编码的质心数据和编码器标识符由解码电路224接收。

在框704,使用编码器标识符来确定解码器。例如,解码电路224使用编码器标识符来访问在解码器数据库230中被存储的解码器,以确定解码器234。

在框706,使用解码器对经编码的质心数据进行解码。例如,解码电路224使用所接收的字典、以及解码器234来对所接收的经编码的质心数据进行解码,解码器234根据编码器标识符来确定。

在框708,经解码的质心被转换为矢量表示。例如,解码电路224使用字典和经解码的矢量标签,将经解码的质心转换为矢量表示。

在框710,执行可选的操作,其中矢量表示使用自动编码器的解码部分来进行解码。自动编码器的解码部分对矢量数据的维数进行恢复。例如,解码电路224执行该可选的操作。

在框712,经解码的矢量数据被输出。例如,经解码的数据228被传送给输出电路226,该输出电路226将经解码的数据作为原始矢量数据114进行输出。

因此,方法700操作以对所接收的矢量数据进行解码。应当注意的是,方法700的操作是示例性的,并且可以在实施例的范围内进行改变、修改、添加和删除。

图8示出了根据本发明示例性实施例的用于标量或矢量数据的数据压缩的示例性装置800。

该装置包括用于接收标量数据以用于传输的部件(802),在一个实施例中,该部件包括pdf计算电路202。该装置还包括用于从所接收的标量数据计算pdf的部件(804),在一个实施例中,该部件包括pdf计算电路202。该装置还包括用于将pdf与pdf模板匹配以找到最佳匹配的pdf模板的部件(806),在一个实施例中,该部件包括pdf匹配电路204。该装置还包括用于确定与最佳匹配的pdf模板相关联的编码器和编码器标识符的部件(808),在一个实施例中,该部件包括pdf匹配电路204。该装置还包括用于使用编码器对标量数据编码以生成经编码的流的部件(810),在一个实施例中,该部件包括编码电路208。该装置还包括用于传输经编码的流和编码器标识符的部件(812),在一个实施例中,该部件包括编码电路208。

在一个实施例中,该装置还包括用于接收矢量数据以用于传输的部件(814),在一个实施例中,该部件包括矢量质心计算电路304。该装置还包括用于可选地将自动编码器应用于该矢量数据的部件(816),在一个实施例中,该部件包括自动编码器302。该装置还包括用于将矢量数据分区到区间、并且确定每个区间的质心和质心字典的部件(818),在一个实施例中,该部件包括矢量质心计算电路304。该装置还包括用于将矢量量化到质心的部件(820),在一个实施例中,该部件包括矢量质心计算电路304。该装置还包括用于对在每个质心中的矢量的数目进行计数的部件(822),在一个实施例中,该部件包括矢量质心计算电路304。该装置还包括用于生成质心的pdf的部件(822),在一个实施例中,该部件包括矢量pdf计算电路306。该装置还包括用于将pdf与pdf模板匹配以确定最接近匹配的pdf模板的部件(824),在一个实施例中,该部件包括pdf匹配电路308。该装置还包括用于确定与最接近匹配的pdf模板相关联的编码器部件(826),在一个实施例中,该部件包括pdf匹配电路308。该装置还包括用于使用编码器对矢量标记进行编码以生成经编码的数据流的部件(830),在一个实施例,该部件包括矢量编码电路312。该装置还包括用于将经编码的数据流与编码器标识符、质心字典一起传输的部件(832),在一个实施例中,该部件包括矢量编码电路312。

图9a示出了根据本发明的要被压缩以用于高效传输的矩阵908的一个实施例。如在指示器900所指示的,单个发射器(t1)向多个接收器(r1-rn)传输信息。多个接收矢量904被获得。在各种实施例中,接收矢量904可以使用上面所描述的矢量压缩实施例来进行压缩以用于高效传输。

如在906处指示的,多个发射器(t1-tn)向多个接收器(r1-rn)传输信息。接收矩阵908被获得。在各种实施例中,接收矩阵908可以使用下面描述的矩阵压缩实施例来进行压缩以用于高效传输。

图9b示出了发射器920和接收器924的一个实施例,发射器920包括矩阵数据压缩加速器(mdca)922的一个示例性实施例,以及接收器924包括矩阵数据解压缩加速器(mdda)926的一个示例性实施例,该矩阵数据解压缩加速器(mdda)926提供了通过系统互连的矩阵数据的高效传输。

如图9b中所图示的,mdca922操作以将矩阵数据908分解为特征矢量910,特征值912和特征矢量914的逆矢量。当该分解完成时,特征矢量910可以被分组到组916中。例如,特征矢量910被示出为分组到m个组中。在一个示例性实施例中,加权特征值被用来确定特征矢量如何被分配到每个组。

当分组完成时,特征矢量质心918针对每个组来计算。例如,针对m个组916,计算m个特征矢量质心918。然后,每个组中的每个特征矢量用指示符来标记,该指示符指示特征矢量所属于的组的质心。特征矢量质心的字典也被维护并且存储在存储器中。mdca922确定编码器以最佳地压缩特征矢量标签。然后,经压缩的标签,编码器标识符,字典和特征值作为经压缩的数据928而被传输。

在接收器924处,mdda926操作以接收经编码的数据流、编码器标识符、字典和特征值。编码器标识符用于标识解码器,以对数据流进行解码以获得矢量标签。对矢量标签和字典进行处理以生成表示原始矩阵数据的质心序列。最后,质心的序列和特征值用于重构矩阵数据930。

图10示出了矩阵数据压缩加速器(mdca)1000的详细示例性实施例,mdca被配置为压缩矩阵数据。例如,mdca1000适合于在图9b所示的mdca922中使用。mdca1000包括分解电路1002、特征矢量聚类电路1004、特征矢量质心计算电路1006、特征矢量量化电路1008、质心pdf计算电路1010、pdf匹配电路1012、pdf模板数据库1016以及编码电路1014。

在操作期间,矩阵数据1018在矩阵分解电路1002处被接收。矩阵数据1018被分解以生成特征矢量1022和对应的特征值1020。特征矢量聚类电路1004将特征矢量聚类到簇1024中。在一个实施例中,簇基于处理加权特征值的算法来生成。簇1024被输入到计算特征矢量质心的特征矢量质心计算电路1006。例如,针对每个簇,计算特征矢量质心。特征矢量质心计算电路1006还维持特征矢量质心的字典。

特征矢量1022和质心1026被输入到特征矢量量化电路1008,该特征矢量量化电路1008生成经标记的特征矢量1028。该标签将每个特征矢量与特定的特征矢量质心相关联。与每个质心相关联的特征矢量的数目也进行计数并且被维持。

经标记的特征矢量1028被输入到质心pdf计算电路1010。质心pdf计算电路1010对与每个质心相关联的特征矢量的数目进行计数,以计算质心的pdf1030。pdf1030被输入到pdf匹配电路1012。pdf匹配电路1012将pdf1030与被存储在pdf数据库1016中的pdf模板1032进行匹配。pdf模板1032与编码标识符1034相关联,编码标识符1034也存储在数据库1016中。每个标识符标识熵编码器的类型,该熵编码器与特定pdf模板相关联。pdf匹配电路1012确定与计算的pdf1030最佳匹配的pdf模板1032,并且将对应的编码器标识符1036传送给编码电路1014。

编码电路1014接收经标记的(或经量化的)特征矢量1028,并且应用所选择的编码类型以压缩矢量标签,所选择的编码类型通过编码标识符1036而被标识。编码电路1014还接收特征矢量质心的字典1040和特征值1020。包括经压缩的矢量标签数据、编码器标识符1036、字典1040和特征值1020的组合1038然后被传输到接收块或设备,其包括诸如mdda926的解压缩电路。解压缩电路如下所述对经压缩的数据流进行解压缩,以恢复特征矢量数据。

一方面,mdca1000通过执行以下操作中的一个或多个来压缩矩阵数据以用于传输。

1.执行矩阵分解以生成特征矢量和对应的特征值。

2.执行特征矢量聚类,以将特征矢量聚类到组中。特征值加权算法用于从经加权的特征值来形成组。

3.执行特征矢量质心计算,以计算针对每个特征矢量组的特征矢量质心。特征矢量质心字典从所确定的特征矢量质心形成。

3.将每个特征矢量标记(或量化)到其对应的质心中。

4.执行质心pdf计算以构造质心的pdf。例如,对每个质心中的特征矢量的数目进行计数以构造质心的pdf。

5.将质心的pdf与被存储在数据库中的pdf模板进行匹配。例如,该匹配可以使用kl(kullback-leibler)散度或其他合适的功能来执行。

6.选择最接近匹配的pdf模板。

7.确定与最接近匹配的pdf模板相对应的熵编码器。例如,该熵编码器具有标识编码器的相关联的编码器标识符。

8.用所标识的熵编码器对特征矢量标签进行编码,以生成并且编码数据流。

9.向接收器传输经编码的数据流,编码器标识符,质心字典和特征值。例如,该传输可以是有线传输或无线传输中的一者或两者。

图11示出了矩阵数据解压缩加速器(mdda)1100的详细示例性实施例,mdda被配置为解压缩矩阵数据。例如,mdda1100适合于用作图9b所示的mdda926。在一个实施例中,mdda1100包括解码电路1102、解码器数据库1104、质心生成器1106和重构电路1108。

在操作期间,mdda1100在解码电路1102处接收经压缩的数据、编码器标识符1036、字典1040和特征值1020的组合1038。解码电路1102使用标识符1036来访问解码器数据库1104,以获得解码器1110,该解码器1110要被用于对所接收的经压缩的数据进行解压缩。解码器电路1102对经压缩的标签进行解压缩,并且将经解压缩的(经解码的)标记数据1112输出给质心生成器1106。质心生成器1106接收经解压缩的标签1112和字典1040,并且生成表示矩阵数据的质心的序列1114。重构电路1108接收质心的序列1108和特征值1020,并且重构矩阵数据1116。

在一方面中,mdda1100通过执行以下操作中一项或多项,对来自从mcda1000所接收的传输的矩阵数据进行解压缩。

1.接收经编码的标签数据、编码器标识符、质心字典和特征值。

2.从编码器标识符来标识解码器。

3.对经编码的标签数据进行解码以获得标签。

4.使用字典将标签转换为质心的序列。每个标签标识来自字典中的特定质心,使得标签的序列标识质心的序列。

5.从质心的序列和特征值重构矩阵。

图12示出了用于矩阵数据的压缩的示例性方法1200。例如,方法1200适合于与图10所示的mdca1000一起使用。

在框1202,接收要被压缩的矩阵数据。例如,接收矩阵数据1018在分解电路1002处。

在框1204,在矩阵数据上执行矩阵分解。在一个实施例中,矩阵分解电路1002对矩阵数据1018进行分解,以生成特征矢量1022和对应的特征值1020。

在框1206,特征矢量被分组到簇中。在一个实施例中,特征矢量聚类电路1004使用经加权的特征值1020,将特征矢量1022聚类到组1024中。

在框1208,生成针对每个特征矢量组的特征矢量质心。而且,维持特征矢量质心的字典。例如,特征矢量质心计算电路1006接收特征矢量组1024,并且生成针对每个组的质心。所确定的质心1026被维持在字典中,该字典标识每个质心,并且将各种参数和值与每个质心相关联。例如,特征矢量质心计算电路1006形成并且维持质心的字典1040。

在框1210,特征矢量被量化到特征矢量质心。例如,特征矢量量化电路1008对每个特征矢量1022进行标记,并且对每个质心1026中的矢量的数目进行量化。例如,在一个方面中,将特征矢量1022量化到质心1026是通过用索引(或标记)对特征矢量进行标记来执行,索引(或标记)表示对该矢量所属于的簇(质心)。

在框1212,对每个质心中的特征矢量的数目进行计数,并将其作为经标记的矢量1028从量化电路1008输出,经标记的矢量1028利用它们相关联的质心来进行标记。

在框1214,生成质心的pdf。例如,质心pdf计算电路1010接收经标记的矢量1028,并且从经标记的矢量1028来计算pdf1030。

在框1216,所计算的pdf与pdf模板进行匹配,以确定最接近匹配的pdf模板。例如,矢量pdf匹配电路1012将pdf1030与被存储在数据库1016中的pdf模板进行匹配。确定最接近匹配的pdf模板。每个pdf模板具有相关联的标识符,该标识符将编码器与该模板相关联。

在框1218,确定与最接近匹配的pdf模板相关联的编码器。例如,pdf匹配电路1012取回存储在数据库1016中的、与最接近匹配的pdf模板相关联的编码器标识符1036。编码器标识符1036标识要被用于对特征矢量标记数据进行编码的编码器。

在框1220,使用所确定的编码器对特征矢量标签进行编码(压缩)以生成经编码的数据流。例如,编码电路1014利用如下编码器对特征矢量标签进行编码,以生成经编码的数据流,该编码器由编码器标识符1036标识。

在框1222,传输信息的组合1038。在一个实施例中,组合1038包括经压缩的标记数据、编码器标识符1036、质心字典1040和特征值1020。然后该方法结束。

因此,方法1200操作以将通过系统互连而传输的矩阵数据进行压缩。应当注意的是,方法1200的操作是示例性的,并且可以在实施例的范围内进行改变,修改,添加和删除。

图13示出了用于对矩阵数据进行解压缩的示例性方法1300。例如,方法1300适合与图9b所示的mdda926一起使用。

在框1302处,接收对应的编码器标识符的经编码的特征矢量标签、质心字典和特征值。在一个实施例中,经编码的特征矢量标签是以标量数据的形式。例如,经编码的特征矢量标签、编码器标识符1036、字典1040和特征值1020的组合1038由解码电路1102接收。

在框1304,使用编码器标识符来确定解码器。例如,解码电路1102使用编码器标识符1036来访问在解码器数据库1104中所存储的解码器,以确定解码器1110。

在框1306,使用所标识的解码器解码经编码的标签数据。例如,解码电路1102使用如下解码器1110对所接收的经编码的标签数据进行解码,以生成解码标签1112,该解码器1110从所接收的编码器标识符1036来确定。

在框1308,质心的序列从经解码的标签生成。例如,质心生成器1106接收经解码的标签1112和质心的字典1040,并且生成质心的序列1114。在一个实施例中,每个标签由来自字典的质心表示,以生成质心的序列1114。

在框1310,矩阵数据从质心的序列和特征值进行重构。例如,重构电路1108接收质心的序列1114和特征值1020,并且使用这些值来重构矩阵数据1116。

因此,方法1300进行操作以对所接收的经压缩的矩阵数据进行解码。应当注意的是,方法1300的操作是示例性的,并且可以在实施例的范围内进行改变、修改、添加和删除。

图14示出了用于矩阵数据的压缩的示例性装置1400。例如,装置1400适合用作图9b所示的mdca922。。

该装置包括用于接收矩阵数据以用于传输的部件(1402),在一个实施例中,该部件包括分解电路1002。该装置还包括用于执行矩阵分解以计算特征矢量和对应的特征值的部件(1404),在一个实施例中,该部件包括分解电路1002。该装置还包括用于基于经加权的特征值对特征矢量进行分组的部件(1406),在一个实施例中,该部件包括特征矢量聚类电路1004。该装置还包括用于生成针对每个特征矢量组的质心以及质心的字典的部件(1408),在一个实施例中,该部件包括特征值质心计算电路1006。该装置还包括用于将特征矢量量化到质心的、并且生成特征矢量标签的部件(1410),在一个实施例中,该部件包括特征矢量量化电路1008。该装置还包括用于对每个质心中的特征矢量的数目进行计数的部件(1412),在一个实施例中,该部件包括质心pdf计算电路1010。该装置还包括用于生成质心的pdf的部件(1414),在一个实施例中,该部件包括质心pdf计算电路1010。该装置还包括用于将pdf与pdf模板进行匹配以确定最接近匹配的pdf模板的部件(1416),在一个实施例中,该部件包括pdf匹配电路1012。该装置还包括用于确定针对最接近匹配的pdf模板的编码器标识符的部件(1418),在一个实施例中,该部件包括pdf匹配电路1012。该装置还包括用于使用所标识的编码器对特征矢量标签进行编码,以生成经编码的数据流的部件(1420),在一个实施例中,该部件包括编码电路1014。该装置还包括用于将经编码的数据流与编码器标识符、字典和特征值一起传输的部件(1422),在一个实施例中,该部件包括编码电路1014。

图15示出了用于矩阵数据的解压缩的示例性装置1500。例如,装置1500适合用作图9b中所示的mdda926。

装置1500包括用于接收经编码的数据流与编码器标识符、字典和特征值的部件(1502),在一个实施例中,该部件包括解码电路1102。该装置还包括用于根据编码器标识符标识解码器的部件(1504),在一个实施例中,该部件包括访问解码器数据库1104的解码电路1102。该装置还包括用于使用解码器对经编码的数据流进行解码以生成标签的部件(1506),在一个实施例中,该部件包括解码电路1102。该装置还包括用于使用字典将经解码的标签转换为质心的序列的部件(1508),在一个实施例中,该部件包括质心生成器1106。该装置还包括用于根据质心的序列和特征值重构矩阵的部件(1510),在一个实施例中,该部件包括重构电路1108。

虽然已经示出和描述了本发明的特定实施例,但是对于本领域技术人员而言显而易见的是,基于本文的教导,可以在不脱离本发明的这些示例性实施例及其更广泛的方面的情况下进行改变和修改。因此,所附权利要求书旨在将所有这些改变和修改均包括在本发明的这些示例性实施例的真实精神和范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1