CN110868223B - Numerical operation implementation method and circuit for Huffman coding - Google Patents
Numerical operation implementation method and circuit for Huffman coding Download PDFInfo
- Publication number
- CN110868223B CN110868223B CN201911244652.9A CN201911244652A CN110868223B CN 110868223 B CN110868223 B CN 110868223B CN 201911244652 A CN201911244652 A CN 201911244652A CN 110868223 B CN110868223 B CN 110868223B
- Authority
- CN
- China
- Prior art keywords
- huffman
- character
- code length
- module
- coding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/70—Type of the data to be coded, other than image and sound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
技术领域Technical field
本发明涉及数据压缩技术领域,更具体的,涉及一种哈夫曼编码的数值运算实现方法及电路。The present invention relates to the field of data compression technology, and more specifically, to a numerical operation implementation method and circuit for Huffman coding.
背景技术Background technique
哈夫曼编码是去除信源统计冗余的压缩编码技术。以二元编码为例,它是根据统计频次(概率)最小的两个信源字符合二为一来编码。Huffman coding is a compression coding technology that removes statistical redundancy from the source. Taking binary coding as an example, it is coded based on the two source words with the smallest statistical frequency (probability) matching two to one.
在经典的哈夫曼编码方法中,主要依靠构建哈夫曼树、或者说根据父子节点的索引来生成编码表。现有的构建一颗哈夫曼树并生成编码表的主要步骤如下:In the classic Huffman coding method, it mainly relies on building a Huffman tree, or generating a coding table based on the index of parent and child nodes. The existing main steps to construct a Huffman tree and generate a coding table are as follows:
1)根据待编码字符集{s1,s2,L,sn}以及它们的概率(频次){p1,p2,L,pn}构造二叉树集F:{T1,T2,L,Tn},其中树Ti中仅有一个带权的根节点,且其概率等于相应字符si的概率。1) Construct a binary tree set F according to the character set to be encoded {s 1 , s 2 , L, s n } and their probabilities (frequencies) {p 1 , p 2 , L, p n }: {T 1 , T 2 , L,T n }, where there is only one weighted root node in the tree T i , and its probability is equal to the probability of the corresponding character si .
2)在树集F中找到两棵根节点概率最小的树,以它们作为左右子树构造一棵新的二叉树,新二叉树根节点的概率是其左右子树根节点概率之和。2) Find the two trees with the smallest root node probability in the tree set F, and use them as the left and right subtrees to construct a new binary tree. The probability of the root node of the new binary tree is the sum of the root node probabilities of its left and right subtrees.
3)在树集F中删除这两棵树,并将新的二叉树加入树集F。3) Delete these two trees in tree set F and add the new binary tree to tree set F.
4)重复步骤2)和3)直到树集F中仅剩一棵树为止,这棵树就是哈夫曼树。4) Repeat steps 2) and 3) until there is only one tree left in the tree set F. This tree is the Huffman tree.
5)自顶向下遍历整棵树,输出编码表。5) Traverse the entire tree from top to bottom and output the coding table.
这种哈夫曼编码方法必须通过构建哈夫曼树来实现的,存在大量的冗余计算,占用大量存储空间且编码效率低,其电路实现上需要较多的元器件,复杂程度高。This Huffman coding method must be implemented by constructing a Huffman tree. It involves a lot of redundant calculations, takes up a lot of storage space, and has low coding efficiency. Its circuit implementation requires a lot of components and is highly complex.
发明内容Contents of the invention
本发明为克服现有的通过构建哈夫曼树来实现的哈夫曼编码方法存在计算量大、占用大量存储空间且编码效率低的技术缺陷,提供一种哈夫曼编码的数值运算实现方法及电路。In order to overcome the technical defects of the existing Huffman coding method implemented by constructing a Huffman tree, which has a large amount of calculation, takes up a large amount of storage space and has low coding efficiency, the present invention provides a numerical operation implementation method of Huffman coding. and circuits.
为解决上述技术问题,本发明的技术方案如下:In order to solve the above technical problems, the technical solutions of the present invention are as follows:
一种哈夫曼编码的数值运算实现方法,包括以下步骤:A numerical operation implementation method for Huffman coding, including the following steps:
S1:统计数据中各个字符的出现概率,得到字符集及相应的概率集;S1: Statistics the occurrence probability of each character in the data, and obtains the character set and the corresponding probability set;
S2:计算出数据的字符集中各个字符的编码长度,将各个字符的编码长度序列简称为码长集,根据概率集和码长集计算码长序列;S2: Calculate the coding length of each character in the character set of the data, refer to the coding length sequence of each character as the code length set, and calculate the code length sequence based on the probability set and the code length set;
S3:根据码长序列,通过数值运算的方式输出哈夫曼编码。S3: According to the code length sequence, the Huffman code is output through numerical operations.
其中,所述步骤S1具体为:统计数据中各个字符的出现概率,得到字符集{s1,s2,...,sn}及相应的概率集{p1,p2,...,pn}。Among them, the step S1 is specifically: counting the occurrence probability of each character in the data, and obtaining the character set {s 1 , s 2 ,..., s n } and the corresponding probability set {p 1 , p 2 ,... ,p n }.
其中,所述步骤S2具体包括以下步骤:Among them, the step S2 specifically includes the following steps:
S21:设定字符集对应的码长集为{m1,m2,...,mn},初始值均为1;S21: Set the code length set corresponding to the character set to {m 1 , m 2 ,..., m n }, and the initial values are all 1;
S22:将字符集、概率集、码长集进行打包,并按照概率pi从小到大的顺序排序;S22: Pack the character set, probability set, and code length set, and sort them in ascending order of probability p i ;
S23:计算每个哈夫曼编码合二为一过程中,权值最小的两个节点实质包含的字符数k;S23: Calculate the number of characters k actually contained in the two nodes with the smallest weight in the process of combining each Huffman code into one;
S24:将码长集中前k个字符的码长增加1位,即mi=mi+1,i=1,2,L,k;S24: Increase the code length of the first k characters in the code length set by 1 bit, that is, m i = m i +1, i = 1, 2, L, k;
S25:设定一个中间变量count=p1+pk,将概率集前k个数据修改为count;S25: Set an intermediate variable count=p 1 +p k , and modify the first k data in the probability set to count;
S26:重复执行步骤S22-S25,执行n-2次,完成码长序列的计算。S26: Repeat steps S22-S25 for n-2 times to complete the calculation of the code length sequence.
其中,在所述步骤S23中,所述的字符数k具体表达式为: Wherein, in the step S23, the specific expression of the number of characters k is:
其中,所述步骤S3具体为:将字符集、码长集进行打包,并按照码长mi从小到大排序,得到数据序列:q1=0,i=2,3,L,n-1;其中,qi的码长为mi的二进制即表示第i个字符对应的范式哈夫曼编码。Among them, the step S3 is specifically: package the character set and the code length set, and sort them according to the code length m i from small to large to obtain the data sequence: q 1 =0, i=2,3,L,n-1; among them, the binary code length of q i is m i , which represents the normal form Huffman code corresponding to the i-th character.
一种应用哈夫曼编码的数值运算实现方法的电路,包括单片机、存储器、显示器、振荡电路、复位电路和加法器模块;其中:A circuit that implements a numerical operation method using Huffman coding, including a microcontroller, a memory, a display, an oscillation circuit, a reset circuit and an adder module; wherein:
所述单片机输入端与所述振荡电路、复位电路输出端电性连接;The input terminal of the single-chip microcomputer is electrically connected to the output terminals of the oscillation circuit and the reset circuit;
所述单片机输出端与所述显示器电性连接;The output end of the microcontroller is electrically connected to the display;
所述单片机与所述存储器、加法器模块电性连接,实现数据的交互,运用加法器模块与单片机结合实现哈夫曼编码的数值运算实现方法。The single-chip computer is electrically connected to the memory and adder module to realize data interaction, and the adder module is combined with the single-chip computer to realize the numerical operation implementation method of Huffman coding.
其中,所述加法器模块包括74HC595串转并子模块、74LS283全加器子模块和74HC165并转串子模块;其中:Among them, the adder module includes 74HC595 serial-to-parallel sub-module, 74LS283 full adder sub-module and 74HC165 parallel-to-serial sub-module; wherein:
所述74HC595串转并子模块输入端与所述单片机输出端电性连接;The input end of the 74HC595 serial-to-parallel sub-module is electrically connected to the output end of the single-chip microcomputer;
所述74HC595串转并子模块输出端与所述74LS283全加器子模块输入端电性连接;The output end of the 74HC595 series-to-parallel sub-module is electrically connected to the input end of the 74LS283 full adder sub-module;
所述74LS283全加器子模块输出端与所述74HC165并转串子模块输入端电性连接;The output end of the 74LS283 full adder sub-module is electrically connected to the input end of the 74HC165 parallel-to-serial sub-module;
所述74HC165并转串子模块输出端与所述单片机电性连接。The output end of the 74HC165 parallel-to-serial sub-module is electrically connected to the microcontroller.
其中,所述单片机采用P87C51RD单片机。Among them, the single-chip computer adopts P87C51RD single-chip computer.
其中,所述存储器采用AT24C02储存器。Among them, the memory uses AT24C02 memory.
其中,所述显示器采用LCD4002液晶显示器。Among them, the display adopts LCD4002 liquid crystal display.
上述方案中,74LS283全加器子模块为两个4位全加器组成的8为加法器,其用于实现步骤S23的码长序列加1运算,用于实现步骤S24的k值加1运算,用于实现步骤S25中对参数count的加运算,其余算法包括矩阵运算、排序、十进制转二进制等均在单片机中实现。In the above scheme, the 74LS283 full adder sub-module is an 8-bit adder composed of two 4-bit full adders, which is used to implement the code length sequence addition operation of step S23 and the k value addition operation of step S24. , used to implement the addition operation of parameter count in step S25. The remaining algorithms including matrix operations, sorting, decimal to binary conversion, etc. are all implemented in the microcontroller.
与现有技术相比,本发明技术方案的有益效果是:Compared with the existing technology, the beneficial effects of the technical solution of the present invention are:
本发明提供的一种哈夫曼编码的数值运算实现方法及电路,通过特别简便的方式计算出待编码的字符集的码长序列,然后对码长序列进行排序,直接生成字符集的编码;在避免构建哈夫曼树的情况下,获得与经典的哈夫曼范式编码同样的编码效果,消除构建哈夫曼树中的冗余计算和存储,提高了编码效率;其实现电路简单易于实现,能源消耗低。The present invention provides a numerical operation implementation method and circuit for Huffman coding, which calculates the code length sequence of the character set to be encoded in a particularly simple way, and then sorts the code length sequence to directly generate the encoding of the character set; While avoiding the construction of a Huffman tree, the same coding effect as the classic Huffman paradigm coding is obtained, the redundant calculation and storage in the construction of the Huffman tree are eliminated, and the coding efficiency is improved; the implementation circuit is simple and easy to implement , low energy consumption.
附图说明Description of the drawings
图1为本发明所述方法流程示意图;Figure 1 is a schematic flow diagram of the method according to the present invention;
图2为根据码长集直接读取哈夫曼编码的示意图;Figure 2 is a schematic diagram of directly reading the Huffman code according to the code length set;
图3为本发明所述电路连接示意图。Figure 3 is a schematic diagram of circuit connection according to the present invention.
具体实施方式Detailed ways
附图仅用于示例性说明,不能理解为对本专利的限制;The drawings are for illustrative purposes only and should not be construed as limitations of this patent;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;In order to better illustrate this embodiment, some components in the drawings will be omitted, enlarged or reduced, which does not represent the size of the actual product;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。It is understandable to those skilled in the art that some well-known structures and their descriptions may be omitted in the drawings.
下面结合附图和实施例对本发明的技术方案做进一步的说明。The technical solution of the present invention will be further described below with reference to the accompanying drawings and examples.
实施例1Example 1
如图1所示,一种哈夫曼编码的数值运算实现方法,包括以下步骤:As shown in Figure 1, a numerical operation implementation method for Huffman coding includes the following steps:
S1:统计数据中各个字符的出现概率,得到字符集及相应的概率集;S1: Statistics the occurrence probability of each character in the data, and obtains the character set and the corresponding probability set;
S2:计算出数据的字符集中各个字符的编码长度,将各个字符的编码长度序列简称为码长集,根据概率集和码长集计算码长序列;S2: Calculate the coding length of each character in the character set of the data, refer to the coding length sequence of each character as the code length set, and calculate the code length sequence based on the probability set and the code length set;
S3:根据码长序列,通过数值运算的方式输出哈夫曼编码。S3: According to the code length sequence, the Huffman code is output through numerical operations.
更具体的,所述步骤S1具体为:统计数据中各个字符的出现概率,得到字符集{s1,s2,...,sn}及相应的概率集{p1,p2,...,pn}。More specifically, the step S1 is: counting the occurrence probability of each character in the data, and obtaining the character set {s 1 , s 2 ,..., s n } and the corresponding probability set {p 1 , p 2 ,. ..,p n }.
其中,所述步骤S2具体包括以下步骤:Among them, the step S2 specifically includes the following steps:
S21:设定字符集对应的码长集为{m1,m2,...,mn},初始值均为1;S21: Set the code length set corresponding to the character set to {m 1 , m 2 ,..., m n }, and the initial values are all 1;
S22:将字符集、概率集、码长集进行打包,并按照概率pi从小到大的顺序排序;S22: Pack the character set, probability set, and code length set, and sort them in ascending order of probability p i ;
S23:计算每个哈夫曼编码合二为一过程中,权值最小的两个节点实质包含的字符数k;S23: Calculate the number of characters k actually contained in the two nodes with the smallest weight in the process of combining each Huffman code into one;
S24:将码长集中前k个字符的码长增加1位,即mi=mi+1,i=1,2,L,k;S24: Increase the code length of the first k characters in the code length set by 1 bit, that is, m i = m i +1, i = 1, 2, L, k;
S25:设定一个中间变量count=p1+pk,将概率集前k个数据修改为count;S25: Set an intermediate variable count=p 1 +p k , and modify the first k data in the probability set to count;
S26:重复执行步骤S22-S25,执行n-2次,完成码长序列的计算。S26: Repeat steps S22-S25 for n-2 times to complete the calculation of the code length sequence.
更具体的,在所述步骤S23中,所述的字符数k具体表达式为: More specifically, in step S23, the specific expression of the number of characters k is:
更具体的,所述步骤S3具体为:将字符集、码长集进行打包,并按照码长mi从小到大排序,得到数据序列:q1=0,i=2,3,L,n-1;其中,qi的码长为mi的二进制即表示第i个字符对应的范式哈夫曼编码。More specifically, the step S3 is as follows: package the character set and code length set, and sort them according to the code length m i from small to large to obtain the data sequence: q 1 =0, i=2,3,L,n-1; among them, the binary code length of q i is m i , which represents the normal form Huffman code corresponding to the i-th character.
在具体实施过程中,在所述步骤S3中可直接清空概率集这一数据单元缓存;同时得到数据序列的一项递推式等价于通用表达式在转化后的二进制不足的位数通过在前面补0的方式凑齐,例如数值0的码长为2的二进制表示为00,电路设计中可存个存入码长集的数据单元中。In the specific implementation process, the data unit cache of the probability set can be directly cleared in step S3; at the same time, a recursive expression of the data sequence is obtained, which is equivalent to a general expression The insufficient number of digits in the converted binary is made up by adding 0 in front. For example, the binary representation of the value 0 with a code length of 2 is 00. In the circuit design, one data unit can be stored in the code length set.
在具体实施过程中,本发明提供的一种哈夫曼编码的数值运算实现方法,通过特别简便的方式计算出待编码的字符集的码长序列,然后对码长序列进行排序,直接生成字符集的编码;在避免构建哈夫曼树的情况下,获得与经典的哈夫曼范式编码同样的编码效果,消除构建哈夫曼树中的冗余计算和存储,提高了编码效率。In the specific implementation process, the present invention provides a numerical operation implementation method for Huffman coding, which calculates the code length sequence of the character set to be encoded in a particularly simple way, and then sorts the code length sequence to directly generate characters. Encoding of sets; while avoiding the construction of a Huffman tree, the same encoding effect as the classic Huffman paradigm encoding is obtained, the redundant calculation and storage in the construction of the Huffman tree is eliminated, and the encoding efficiency is improved.
在具体实施过程中,如图2所示,为步骤S3中根据码长集直接读取哈夫曼编码的示意图。其中当参考极坐标的正实轴和正角度,从正实轴依次偏移角度,并穿越各个码长,确定可以得到一组前缀码。In the specific implementation process, as shown in Figure 2, it is a schematic diagram of directly reading the Huffman code according to the code length set in step S3. When referring to the positive real axis and positive angle of the polar coordinates, the angles are shifted from the positive real axis in sequence, and through each code length, it is determined that a set of prefix codes can be obtained.
实施例2Example 2
更具体的,在实施例1的基础上,提供一种应用哈夫曼编码的数值运算实现方法的电路,包括单片机、存储器、显示器、振荡电路、复位电路和加法器模块;其中:More specifically, on the basis of Embodiment 1, a circuit for implementing a numerical operation method using Huffman coding is provided, including a microcontroller, a memory, a display, an oscillation circuit, a reset circuit and an adder module; wherein:
所述单片机输入端与所述振荡电路、复位电路输出端电性连接;The input terminal of the single-chip microcomputer is electrically connected to the output terminals of the oscillation circuit and the reset circuit;
所述单片机输出端与所述显示器电性连接;The output end of the microcontroller is electrically connected to the display;
所述单片机与所述存储器、加法器模块电性连接,实现数据的交互,运用加法器模块与单片机结合实现哈夫曼编码的数值运算实现方法。The single-chip computer is electrically connected to the memory and adder module to realize data interaction, and the adder module is combined with the single-chip computer to realize the numerical operation implementation method of Huffman coding.
更具体的,所述加法器模块包括74HC595串转并子模块、74LS283全加器子模块和74HC165并转串子模块;其中:More specifically, the adder module includes 74HC595 serial-to-parallel sub-module, 74LS283 full adder sub-module and 74HC165 parallel-to-serial sub-module; wherein:
所述74HC595串转并子模块输入端与所述单片机输出端电性连接;The input end of the 74HC595 serial-to-parallel sub-module is electrically connected to the output end of the single-chip microcomputer;
所述74HC595串转并子模块输出端与所述74LS283全加器子模块输入端电性连接;The output end of the 74HC595 series-to-parallel sub-module is electrically connected to the input end of the 74LS283 full adder sub-module;
所述74LS283全加器子模块输出端与所述74HC165并转串子模块输入端电性连接;The output end of the 74LS283 full adder sub-module is electrically connected to the input end of the 74HC165 parallel-to-serial sub-module;
所述74HC165并转串子模块输出端与所述单片机电性连接。The output end of the 74HC165 parallel-to-serial sub-module is electrically connected to the microcontroller.
更具体的,所述单片机采用P87C51RD单片机。More specifically, the microcontroller adopts P87C51RD microcontroller.
更具体的,所述存储器采用AT24C02储存器。More specifically, the memory uses AT24C02 memory.
更具体的,所述显示器采用LCD4002液晶显示器。More specifically, the display uses an LCD4002 liquid crystal display.
在具体实施过程中,74LS283全加器子模块为两个4位全加器组成的8为加法器,其用于实现步骤S23的码长序列加1运算,用于实现步骤S24的k值加1运算,用于实现步骤S25中对参数count的加运算,其余算法包括矩阵运算、排序、十进制转二进制等均在单片机中实现。In the specific implementation process, the 74LS283 full adder submodule is an 8-bit adder composed of two 4-bit full adders, which is used to implement the code length sequence addition operation of step S23 and the k value addition operation of step S24. 1 operation is used to implement the addition operation of the parameter count in step S25. The remaining algorithms including matrix operations, sorting, decimal to binary, etc. are all implemented in the microcontroller.
在具体实施过程中,该实现电路简单易于实现,能源消耗低。In the specific implementation process, the implementation circuit is simple and easy to implement and has low energy consumption.
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。该算法还可以通过使用全加器、半加器、移位寄存器、触发器等实现全硬件实现;通过FPGA,用Verilog语言实现全硬件实现,这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。Obviously, the above-mentioned embodiments of the present invention are only examples to clearly illustrate the present invention, and are not intended to limit the implementation of the present invention. For those of ordinary skill in the art, other different forms of changes or modifications can be made based on the above description. This algorithm can also be fully implemented in hardware by using full adders, half adders, shift registers, flip-flops, etc.; through FPGA, full hardware implementation can be achieved in Verilog language. It is not necessary and impossible to exhaustively list all implementation methods here. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention shall be included in the protection scope of the claims of the present invention.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911244652.9A CN110868223B (en) | 2019-12-06 | 2019-12-06 | Numerical operation implementation method and circuit for Huffman coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911244652.9A CN110868223B (en) | 2019-12-06 | 2019-12-06 | Numerical operation implementation method and circuit for Huffman coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110868223A CN110868223A (en) | 2020-03-06 |
CN110868223B true CN110868223B (en) | 2023-10-27 |
Family
ID=69658688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911244652.9A Active CN110868223B (en) | 2019-12-06 | 2019-12-06 | Numerical operation implementation method and circuit for Huffman coding |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110868223B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112003625A (en) * | 2020-08-14 | 2020-11-27 | 山东云海国创云计算装备产业创新中心有限公司 | Huffman coding method, system and equipment |
CN114429200A (en) * | 2021-12-29 | 2022-05-03 | 中国科学院计算技术研究所 | Normalized Huffman Codec Method and Neural Network Computing Chip |
CN114640357B (en) * | 2022-05-19 | 2022-09-27 | 深圳元象信息科技有限公司 | Data encoding method, apparatus and storage medium |
CN116346482A (en) * | 2023-04-04 | 2023-06-27 | 扬州万方科技股份有限公司 | Data compression and encryption method based on prefix coding |
CN117176179B (en) * | 2023-11-03 | 2024-01-26 | 苏州硒瑞恩生物科技有限公司 | Data coding processing method for nucleic acid synthesizer |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841381A (en) * | 1993-12-20 | 1998-11-24 | Canon Kabushiki Kaisha | Huffman coding/decoding using an intermediate code number |
JP2001136075A (en) * | 1999-11-05 | 2001-05-18 | Fujitsu Ltd | Data compression / decompression device and storage medium recording data compression / decompression program |
CN104283568A (en) * | 2013-07-12 | 2015-01-14 | 中国科学院声学研究所 | A Data Compression Coding Method Based on Partial Huffman Tree |
CN106560010A (en) * | 2014-06-09 | 2017-04-05 | 泰德系统股份有限公司 | The efficient huffman coding apparatus and method of VLSI |
-
2019
- 2019-12-06 CN CN201911244652.9A patent/CN110868223B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841381A (en) * | 1993-12-20 | 1998-11-24 | Canon Kabushiki Kaisha | Huffman coding/decoding using an intermediate code number |
JP2001136075A (en) * | 1999-11-05 | 2001-05-18 | Fujitsu Ltd | Data compression / decompression device and storage medium recording data compression / decompression program |
CN104283568A (en) * | 2013-07-12 | 2015-01-14 | 中国科学院声学研究所 | A Data Compression Coding Method Based on Partial Huffman Tree |
CN106560010A (en) * | 2014-06-09 | 2017-04-05 | 泰德系统股份有限公司 | The efficient huffman coding apparatus and method of VLSI |
Non-Patent Citations (3)
Title |
---|
Probability estimation in arithmetic and adaptive-Huffman entropy coders;D.L.Duttweiler等;IEEE Transactions on Image Processing;第237-246页 * |
张继翔.无错信源编码的研究.中国优秀硕士学位论文全文库.2017,I136-395. * |
杨多星 ; 刘蕴红 ; .基于概率补偿的无哈夫曼树变长压缩编码.微电子学与计算机.2011,(第06期),第51-53、57页. * |
Also Published As
Publication number | Publication date |
---|---|
CN110868223A (en) | 2020-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110868223B (en) | Numerical operation implementation method and circuit for Huffman coding | |
CN104283568B (en) | Data compressed encoding method based on part Hoffman tree | |
Bruck et al. | Neural networks, error-correcting codes, and polynomials over the binary n-cube | |
US9223765B1 (en) | Encoding and decoding data using context model grouping | |
CN102437857B (en) | IRA-LDPC (irregular repeat-accumulate-low-density parity check) code construction method and encoder thereof | |
CN110457317B (en) | A Hilbert Curve Encoding and Decoding Method Based on State View | |
WO2018021094A1 (en) | Data compression coding method, decoding method, device therefor, and program therefor | |
CN101094000B (en) | Method for constructing time invariant LDPCC based on PEG algorithm, and encoder/decoder | |
CN109428603A (en) | A kind of data-encoding scheme, device and storage medium | |
Prezza | Optimal rank and select queries on dictionary-compressed text | |
Yang et al. | Nonlinear programming approaches to decoding low-density parity-check codes | |
CN107332571B (en) | A kind of Polar code constructing method and device | |
Vatedka et al. | Local decode and update for big data compression | |
CN101478313B (en) | Minimum value computing device for LDPC decoder and constructing method thereof | |
JP2022048930A (en) | Data compression method, data compression device, data compression program, data decompression method, data decompression device, and data decompression program | |
CN106788878A (en) | A kind of Parallel CRC error correction method with monobit errro correction function | |
Lin et al. | A new architecture of a two-stage lossless data compression and decompression algorithm | |
Galindo et al. | Locally recoverable codes from the matrix-product construction | |
Diallo et al. | New free distance bounds and design techniques for joint source-channel variable-length codes | |
CN113472358B (en) | A high-speed parallel encoder based on quasi-circular generator matrix | |
Chandar et al. | A locally encodable and decodable compressed data structure | |
CN115913246A (en) | Lossless Data Compression Algorithm Based on Adaptive Instantaneous Entropy | |
CN110730006B (en) | A kind of LDPC code error correction method and error correction module for MCU | |
CN102118225A (en) | Coding-decoding method used for any-bit polynomial division type codes based on multi-index table | |
CN113381769A (en) | Decoder based on FPGA and design method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |