多符号解码器制造技术

技术编号:33078826 阅读:22 留言:0更新日期:2022-04-15 10:23
一种用于对压缩数据进行解压缩的电子装置,包括解码子系统,所述解码子系统具有:符号解码器;以及第二符号解析器,所述第二符号解析器具有多个本地符号解码器和一个符号选择器。所述符号解码器从在所述压缩数据的块中的可获得符号的第一代码解码出第一符号,并且将所述代码的长度传达到所述第二符号解析器。每个本地符号解码器基本上与在所述符号解码器中对所述第一符号的所述解码并行地从在所述压缩数据的所述块的相应子块中的可获得符号的第一代码解码出相应的符号。所述第二符号解析器基于从所述符号解码器接收的所述长度来选择来自所述本地符号解码器的所述相应的符号中的一者作为第二符号。然后,所述解码子系统提供所述第一符号和所述第二符号。统提供所述第一符号和所述第二符号。统提供所述第一符号和所述第二符号。

【技术实现步骤摘要】
【国外来华专利技术】多符号解码器
[0001]背景
[0002]相关技术
[0003]一些电子装置执行用于将数据(诸如用户或系统文件、数据流或序列等)压缩的操作。电子装置可将数据压缩以减小数据的大小,以使得数据能够更高效地存储在存储器中、使得数据能够经由网络在电子装置之间的传输等。例如,当从原始数据生成压缩数据时,电子装置可使用编码标准(诸如前缀编码标准(例如,霍夫曼编码、香农

法诺编码等))对数据进行编码。
[0004]尽管将数据压缩可提高存储和处理数据的效率,但是压缩数据在用于许多操作之前必须进行解压缩。这意味着在可执行此类操作之前,电子装置必须执行操作来扭转压缩操作的效应,并且因此重新存储或重新创建原始数据。在许多电子装置中,使用软件(即,软件例程、应用程序等)对压缩数据进行解压缩。使用软件对压缩数据进行解压缩典型地要求诸如中央处理单元(CPU)的通用处理器执行大量的解压缩操作和相关联的存储器访问。由于大量的解压缩操作和存储器访问,使用软件进行解压缩是低效的。
附图说明
[0005]图1呈现了示出根据一些实施方案的压缩数据的框图。
[0006]图2呈现了示出根据一些实施方案的电子装置的框图。
[0007]图3呈现了示出根据一些实施方案的解码子系统的框图。
[0008]图4呈现了示出根据一些实施方案的在解码子系统中的附加符号解析器的框图。
[0009]图5呈现了示出根据一些实施方案的用于对压缩输入数据进行解码的过程的流程图。
[0010]在整个附图和描述中,相似的附图标记指代相同的附图元件。
具体实施方式
[0011]呈现以下描述以使得本领域任何技术人员能够制造和使用所描述的实施方案,并且在特定应用及其要求的背景下提供以下描述。对所描述的实施方案的各种修改对于本领域技术人员来说将显而易见,并且本文定义的一般原理可应用于其他实施方案和应用。因此,所描述的实施方案不限于所示出的实施方案,而是要被赋予与本文公开的原理和特征一致的最宽范围。
[0012]术语
[0013]在以下描述中,使用各种术语来描述实施方案。以下是对这些术语中的一者的简化且一般的描述。应注意,该术语可具有重要的附加方面,为了清楚和简洁起见,在本文中没有陈述这些附加方面,并且因此该描述不旨在限制术语。
[0014]功能块:功能块是指一个或多个互相关联的电路元件(诸如集成电路元件、分立电路元件等)的组、集合和/或集。电路元件是“互相关联的”,因为电路元件共享至少一种性质。例如,互相关联的电路元件可被包括在特定的集成电路芯片或其部分中、制造在特定的
集成电路芯片或其部分上或以其他方式耦合到特定的集成电路芯片或其部分,可参与执行给定的功能(计算或处理功能、存储器功能等),可由共同控制元件和/或共同块来控制等。功能块可包括任何数量的电路元件,从单个电路元件(例如,单个集成电路逻辑门)至数百万或数十亿的电路元件(例如,集成电路存储器)。
[0015]压缩数据
[0016]在所描述的实施方案中,对压缩数据执行操作并且使用该压缩数据执行操作。一般来讲,压缩数据是对原始数据的一个或多个编码和/或其他操作的输出,该一个或多个编码和/或其他操作造成原始数据中的至少一些被可用于重新创建原始数据的数据和/或被其他值替代。在所描述的实施方案中,可将各种类型的数据压缩,所述数据包括用户或系统文件(例如,音频和/或视频文件、文档文件、可执行文件、操作系统文件等)、数据流或序列(例如,音频和/或视频数据流、经由网络接口接收的数据序列等)、从传感器(例如,相机和/或麦克风、温度计、振动传感器等)捕获的数据等。在所描述的实施方案中,众多编码标准、算法或格式或它们的组合可用于将数据压缩,包括前缀编码标准,诸如霍夫曼编码、香农

范诺编码等。
[0017]如本文所使用的术语“压缩数据”和“压缩”广泛地应用于对原始数据的操作,该操作造成原始数据中的至少一些被可用于重新创建原始数据的其他数据替代。如上所述,这些操作包括各种编码标准、算法或格式或它们的组合。因此,这些术语不应当被解译为仅限于诸如字典编码压缩和/或有时可被视为“压缩”操作的其他操作的操作。
[0018]图1呈现了示出根据一些实施方案的压缩数据的框图。如在图1中可见,压缩数据100包括数据102、标头104和元数据106,所述压缩数据可以是文件、数据流或序列等或被包括在文件、数据流或序列等中。数据102包括一系列的可变长度代码,所述代码表示并替代原始数据中的位序列或“符号”。例如,在可具有原始位序列(诸如01000001)的原始数据中的字母A的符号可由数据102中的代码(诸如0)表示并被其替代。换句话说,在原始数据中出现符号A的地方,该符号已经被移除并替代为压缩数据100中的代码0。其他符号(诸如B、C和D)可分别地被诸如100、101和1100的代码替代。在一些实施方案中,压缩数据100中的代码可表示和替代长度更长的符号,包括多位符号(例如,多字符、多字等),诸如“宾夕法尼亚大道1600号(1600Pennsylvania Avenue)”或“多伦多猛龙队(the Toronto Raptors)。”另外,在一些实施方案中,代码是“无前缀的”,因为没有代码(例如,用于符号A的代码0)与另一个代码的初始数字匹配。
[0019]标头104包括关于压缩数据100的信息,诸如描述压缩数据的内容、格式、源电子装置、网络路由值和/或长度等的信息。元数据106包括诸如用于生成或识别用于对压缩数据100进行解码的解码参考(例如,代码表,诸如霍夫曼表等)的信息、关于要被执行来对压缩数据进行解码的操作的类型和布置的信息等信息。在一些实施方案中,解码参考包括从可变长度代码到来自原始数据的符号的映射,所述映射用于在解压缩操作期间对数据102进行解码。
[0020]在一些实施方案中,在压缩操作期间,电子装置通过读取原始数据、确定存在于原始数据中的符号(即,位序列)以及记录原始数据中的符号的频率计数来从原始数据生成压缩数据(例如,数据102)。然后,电子装置使用符号来生成代码表、树、列表或其他数据结构。对于该操作,电子装置确定并且典型地优化符号在代码表、树、列表或其他数据结构中的使
用和/或放置,使得在原始数据中更频繁地出现的符号与不太频繁地出现的符号相比被分配更短代码(即,具有更少位的代码)。然后,电子装置使用代码表、树、列表或其他数据结构来将原始数据压缩,即,使用来自代码表、树、列表或其他数据结构的代码来替代原始数据中的对应符号。应注意,在一些情况下,代码表、树或列表是单独地生成的并且可能使用不同的数据并由不同的/远程的电子装置生成,并且由电子装置简单地获取并用于将原始数据压缩。
[0021]在一些实施方案中,在用于对压缩数据进行解压缩的解压缩操作期间,首先生成或获取解码参考(即,表、树、列表或其他数据结构)。例如,并且如上所述,可基于或根据压缩数据中的元数据中的信息来生成解码参考。作为另一个示例,可从存储器、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于对压缩数据进行解压缩的电子装置,所述电子装置包括:解码子系统,所述解码子系统包括:符号解码器;以及第二符号解析器,所述第二符号解析器具有多个本地符号解码器和一个符号选择器;所述符号解码器被配置为:从在所述压缩数据的块中的可获得符号的第一代码解码出第一符号;将所述第一代码的长度传达到所述第二符号解析器中的所述符号选择器;以及提供要从所述解码子系统输出的所述第一符号;并且所述第二符号解析器被配置为:在每个本地符号解码器中,基本上与在所述符号解码器中对所述第一符号进行解码并行地从在所述压缩数据的所述块的相应子块中的可获得符号的第一代码解码出相应的符号;在所述符号选择器中,基于从所述符号解码器接收的所述长度来选择来自所述本地符号解码器的所述相应的符号中的一者作为第二符号;以及由所述符号选择器提供要从所述解码子系统输出的所述第二符号。2.如权利要求1所述的电子装置,其中:所述压缩数据的所述块包括多个位;并且用于每个本地符号解码器的所述压缩数据的所述块的所述相应子块包括来自所述压缩数据的所述块中的所述多个位中的不同相邻位序列,所述相邻位序列各自包括指定数量的位。3.如权利要求2所述的电子装置,其中所述指定数量的位是基于用于所述本地符号解码器的最大代码长度设定的。4.如权利要求1所述的电子装置,其中:当在所述压缩数据的所述块的所述相应子块中不存在可获得符号的代码时,每个本地符号解码器不解码出相应的符号;并且当所有的所述本地符号解码器都未解码出相应的符号时,所述符号选择器不提供要从所述解码子系统输出的第二符号。5.如权利要求1所述的电子装置,其中来自所述符号解码器和所述本地符号解码器中的每个符号解码器包括:一个或多个匹配单元,每个匹配单元将对应的指定长度的代码与压缩数据的所述对应的指定长度的部分进行比较,并且当找到匹配时,提供与所述指定长度的所述代码相关联的符号,其中所述符号解码器包括用于从一个位至等于用于所述符号解码器的最大代码长度的多个位的每个对应的指定长度的单独匹配单元。6.如权利要求5所述的电子装置,其中所述压缩数据的所述对应的指定长度的所述部分包括所述压缩数据中的低位位置。7.如权利要求5所述的电子装置,其中所述解码子系统还包括:接收器,所述接收器接收所述压缩数据并且分别向所述符号解码器和所述第二符号解析器提供所述压缩数据的所述块和所述子块以在其中进行解码;其中所述接收器基于由所述符号解码器和所述第二符号解析器在所述压缩数据的所
述块中找到的代码的长度来选择所述压缩数据的下一块和下一子块。8.如权利要求1所述的电子装置,其中所述电子装置还包括:时钟源,所述时钟源向所述符号解码器和所述第二符号解析器提供用于控制所述第一符号和所述相应的符号的所述解码的定时的时钟信号,其中所述第一符号和所述相应的符号的所述解码在相同的一个或多个时钟周期中发生。9.如权利要求1所述的电子装置,所述电子装置还包括:至少一个附加符号解析器,所述至少一个附加符号解析器具有多个附加本地符号解码器和一个附加符号选择器,所述至少一个附加符号解析器被配置为:在每个附加本地符号解码器中,基本上与在所述符号解码器中对所述第一符号进行解码并行地从在所述压缩数据的所述块的相应附加子块中的可获得符号的第一代码解码出相应的符号;在所述附加符号选择器中,基于所述符号解码器和所述符号解析器中的所述代码的组合长度来选择来自所述附加本地符号解码器的所述相应的符号中的一者作为附加符号;以及由所述附加符号选择器提供要从所述解码子系统输出的所述附加符号。10.如权利要求1所述的电子装置,所述电子装置还包括:实体,所述实体接收从所述解码子系统输出的所述第一符号和/或所述第二符号并且将所述第一符号和/或所述第二符号用于一个或多个后续操作。11.一种用于在电子装置中对压缩数据进行解压缩的方法,所述电子装置包括解码子系统,所述解码子系统包括:符号解码器;以及第二符号解析器,所述第二符号解析...

【专利技术属性】
技术研发人员:维纳伊
申请(专利权)人:超威半导体公司
类型:发明
国别省市:

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

1