CN1331360C - 可变长码解码方法 - Google Patents
可变长码解码方法 Download PDFInfo
- Publication number
- CN1331360C CN1331360C CNB2004100165072A CN200410016507A CN1331360C CN 1331360 C CN1331360 C CN 1331360C CN B2004100165072 A CNB2004100165072 A CN B2004100165072A CN 200410016507 A CN200410016507 A CN 200410016507A CN 1331360 C CN1331360 C CN 1331360C
- Authority
- CN
- China
- Prior art keywords
- code
- code word
- decoding
- address
- decoder
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明的目的是提供一种简化的可变长码解码方法,在通常的两级查表法基础上进行可变长码解码器进行改进。将对多个子码表合成为统一的可以解码全部码字的码表,同时采用伪地址查表的方式查表。码流经过可变长码解码器时,首先使用前缀分析器查找分组信息,得到当前码字的长度和伪基础地址,然后使用累加器把这个码字的最低4位和伪基础地址相加,获得该码字在码表中的地址,从而获得解码信息,完成解码。本发明改进了通常的两次查表法实现可变长码解码方法,简化了设计,减少了可变长解码对硬件资源的占用,提高解码器的工作效率,优化了系统的性能。
Description
技术领域
本发明属于视频编码技术领域,具体涉及到用于高清晰度电视全I帧解码器中可变长码解码方法。
背景技术
当前,通用的数字电视编码技术是MPEG-2技术,它由ISO/IEC13818文件描述,该文件只规定了视频码流中可变长码的码表,但是并未对具体的解码方法做出限制性规定。由于高清晰度电视视频编码器的运算量十分巨大,需要通过硬件实现(比如FPGA)。在硬件设计时,可变长解码器占用的资源对视频解码器的成本和功耗影响比较大。
传统的基础地址查表法一组码字的基础地址(BA)是这组码字中的最小码字(MC)的绝对地址,这组码字之中的某个当前码字(CC)的变化地址是当前码字和这组码字中最小码字之差。具体公式如下:
VA=CC-MC
AA=BA+VA
实际实现时,由于当前码字(CC)是左对齐的,而BA是右对齐的,除了完成上述公式的计算之外还有根据长度进行右移地过程。同时为了提供计算一个码字的地址,分组信息表中需要提供的信息也比较多,包括一组码字的长度,基础地址和这组码字的最小码字三项内容。
如图1所示为现有技术中通过两次查表法实现可变长码解码方法,该解码方法将整个可变长码表根据长度的不同分解成若干个子码表,通过查表比对码字的前几个比特信息,从而确定码字的长度。在确定码字的长度后,每个子码表对于一定长度的码字,输入的左对齐的码字在每个子码表中都可以得到解码结果,但是并不是每个子码表的解码结果都是有效的,需要继续从若干个子码表的解码输出中选择出正确的解码结果。
图1所示可变长码解码方法在确定长度时进行了一次查表,而在每个子码表中又进行了一次查表,因此可以称作二次查表法。图1所示的解码方案把整个码表分解成多个子码表,使设计变得复杂,实现时会占用较多的硬件资源,同时在运行的过程中增加了不稳定因素。
发明内容
本发明的目的是提供一种简化的可变长码解码方法,在通常的两级查表法基础上进行可变长码解码器进行改进。将对多个子码表合成为统一的可以解码全部码字的码表,同时采用伪地址查表的方式查表。
为达上述目的,本发明是这样实现的:
一种可变长码解码方法,在码表中,将一组前缀相同、长度相同的码字的解码信息连续存储,使用该组前缀和长度都相同的码字中的最小码字的地址减去最小码字的最低4位,由此构造出这组码字的伪基础地址,码流经过可变长码解码器时,首先使用前缀分析器查找分组信息,得到当前码字的长度和伪基础地址,然后使用累加器把当前码字的最低4位和伪基础地址相加,获得该码字在码表中的地址,从而获得解码信息,完成解码。
本发明的有益效果是:以改进了通常的两次查表法实现可变长码解码方法,简化了设计,减少了可变长解码对硬件资源的占用,提高解码器的工作效率,优化了系统的性能。
附图说明
图1为现有技术中两级查表法可变长码解码器的一种实现方式
图2为本发明可变长码解码方法
图3为本发明与换码解码器直流分量解码器共同实现可变长码解码方法
具体实施方式
本发明提出的伪基地址查表法,通过选取器得到的码字最右边的4比特(R4B)和前缀分析模块得到的码字的伪基础地址(PBA)相加就可以得到当前码字在码表之中的绝对地址(AA),通过查表就可以得到解码结果。计算公式如下:
AA=PBA+R4B
分组信息表中为了计算一个码字在码表中的地址而需要提供的信息两项:码字的长度和伪基础地址。其中伪基础地址等于基础地址(BA)减去某一组码字中最小码字(MC_R4B)的最右边4比特,计算公式如下:
PBA=BA-MC_R4B
如图3所示为本发明与换码解码器直流分量解码器共同实现可变长码解码方法,可以完成交流分量,直流分量的解码。在交流分量之中,不仅可以完成普通的可变长码字的解码,而且可以完成换码的解码。本发明与换码解码器和直流分量解码器解码的结果通过选择器的选择,最后输出解码结果。
Claims (1)
1、一种可变长码解码方法,其特征在于包括以下步骤:在码表中,将一组前缀相同、长度相同的码字的解码信息连续存储,使用该组前缀和长度都相同的码字中的最小码字的地址减去最小码字的最低4位,由此构造出这组码字的伪基础地址,码流经过可变长码解码器时,首先使用前缀分析器查找分组信息,得到当前码字的长度和伪基础地址,然后使用累加器把当前码字的最低4位和伪基础地址相加而得到该码字在码表中的地址,从而获得解码信息,完成解码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100165072A CN1331360C (zh) | 2004-02-24 | 2004-02-24 | 可变长码解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100165072A CN1331360C (zh) | 2004-02-24 | 2004-02-24 | 可变长码解码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1662063A CN1662063A (zh) | 2005-08-31 |
CN1331360C true CN1331360C (zh) | 2007-08-08 |
Family
ID=35011098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100165072A Expired - Fee Related CN1331360C (zh) | 2004-02-24 | 2004-02-24 | 可变长码解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1331360C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100440979C (zh) * | 2005-12-15 | 2008-12-03 | 清华大学 | 基于上下文的自适应二维变长解码方法和装置 |
CN100466743C (zh) * | 2006-08-07 | 2009-03-04 | 清华大学 | 一种基于共享存储可编程的熵解码和反量化的方法 |
CN100527847C (zh) * | 2007-03-16 | 2009-08-12 | 清华大学 | 基于零前缀码的变长码解码方法 |
CN102547267B (zh) * | 2010-12-29 | 2014-04-16 | 福州瑞芯微电子有限公司 | 一种视频数据解码方法及系统 |
CN102572425A (zh) * | 2011-12-20 | 2012-07-11 | 四川长虹电器股份有限公司 | 霍夫曼解码的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3701111A (en) * | 1971-02-08 | 1972-10-24 | Ibm | Method of and apparatus for decoding variable-length codes having length-indicating prefixes |
US5404138A (en) * | 1993-09-11 | 1995-04-04 | Agency For Defense Development | Apparatus for decoding variable length codes |
US5677690A (en) * | 1995-03-16 | 1997-10-14 | Daewoo Electronics, Co., Ltd. | High speed variable length code decoding apparatus |
US5901177A (en) * | 1995-08-31 | 1999-05-04 | Daewoo Electronics Co., Ltd. | High speed variable length code decoding apparatus and method |
US20020164080A1 (en) * | 2001-02-28 | 2002-11-07 | Canon Kabushi Kaisha | Decoding apparatus, decoding method, storage medium and program software |
US20030184457A1 (en) * | 1999-12-14 | 2003-10-02 | Vivian Hsiun | Programmable variable-length decoder |
-
2004
- 2004-02-24 CN CNB2004100165072A patent/CN1331360C/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3701111A (en) * | 1971-02-08 | 1972-10-24 | Ibm | Method of and apparatus for decoding variable-length codes having length-indicating prefixes |
US5404138A (en) * | 1993-09-11 | 1995-04-04 | Agency For Defense Development | Apparatus for decoding variable length codes |
US5677690A (en) * | 1995-03-16 | 1997-10-14 | Daewoo Electronics, Co., Ltd. | High speed variable length code decoding apparatus |
US5901177A (en) * | 1995-08-31 | 1999-05-04 | Daewoo Electronics Co., Ltd. | High speed variable length code decoding apparatus and method |
US20030184457A1 (en) * | 1999-12-14 | 2003-10-02 | Vivian Hsiun | Programmable variable-length decoder |
US20020164080A1 (en) * | 2001-02-28 | 2002-11-07 | Canon Kabushi Kaisha | Decoding apparatus, decoding method, storage medium and program software |
Also Published As
Publication number | Publication date |
---|---|
CN1662063A (zh) | 2005-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101240058B1 (ko) | 디코딩 시스템 및 방법 | |
CN100525450C (zh) | 一种实现霍夫曼译码的方法和装置 | |
CN101562455B (zh) | 内容可适性二元算数编码的译码装置及其译码方法 | |
US8799239B2 (en) | Method, apparatus and computer program product for performing a query using a decision diagram | |
JP2002016500A (ja) | 複数のマッピングテーブルを用いた可変長符号化及び復号化方法、並びにその装置 | |
US8847797B1 (en) | Byte-aligned dictionary-based compression and decompression | |
KR20100067053A (ko) | 가변장 복호화 장치 및 방법 | |
CN104904146A (zh) | Jctvc-l0226:vps和vps_extension更新 | |
Cho et al. | A low power variable length decoder for MPEG-2 based on nonuniform fine-grain table partitioning | |
CN1331360C (zh) | 可变长码解码方法 | |
CN101325418A (zh) | 一种基于概率查表的哈夫曼快速解码方法 | |
KR101030726B1 (ko) | 확률적 테이블에 의해 생성된 심볼을 기반으로 호프만 테이블을 적용한 메모리 효율이 개선된 멀티미디어용 호프만 디코딩 방법 및 장치 | |
US7439886B2 (en) | Variable-length decoder, video decoder and image display system having the same, and variable-length decoding method | |
Lin et al. | A branch selection multi-symbol high throughput CABAC decoder architecture for H. 264/AVC | |
JP2010056747A (ja) | 符号化装置、送信装置および符号化方法 | |
YuanJing | The combinational application of LZSS and LZW algorithms for compression based on Huffman | |
JP5201052B2 (ja) | 可変長符号の復号高速化装置 | |
CN111384963A (zh) | 数据压缩解压装置和数据解压方法 | |
CN103108176A (zh) | Avs和mpeg-2双模解码器中熵解码结构 | |
KR100982666B1 (ko) | 컨텍스트 기반 적응적 가변길이 코딩의 디코딩 장치 및 디코딩을 위한 테이블 탐색 방법 | |
Uchihara et al. | Efficient H. 264/AVC software CAVLC decoder based on level length extraction | |
CN101188753B (zh) | 一种视频熵解码查找表的构造方法及视频熵解码方法 | |
Junior et al. | A Fast and Memory Efficient Huffman Decoding Method for the MPEG-4 AAC Standard | |
Choi et al. | ASiPEC: An application specific instruction-set processor for high performance entropy coding | |
Hong et al. | A 360Mbin/s CABAC decoder for H. 264/AVC level 5.1 applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070808 Termination date: 20110224 |