CN101646080B - 基于avs并行流水idct快速变换的方法和装置 - Google Patents
基于avs并行流水idct快速变换的方法和装置 Download PDFInfo
- Publication number
- CN101646080B CN101646080B CN 200910099557 CN200910099557A CN101646080B CN 101646080 B CN101646080 B CN 101646080B CN 200910099557 CN200910099557 CN 200910099557 CN 200910099557 A CN200910099557 A CN 200910099557A CN 101646080 B CN101646080 B CN 101646080B
- Authority
- CN
- China
- Prior art keywords
- module
- output
- data
- dimension
- parallel
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明是一种基于AVS并行流水IDCT快速变换的方法和装置。其包括控制模块,一维输入寄存模块,一维蝶形运算模块,一维输出模块,转置及乒乓RAM模块,二维输入模块,二维蝶形运算模块,二维输出模块。本发明采用并行流水蝶形运算的设计思想,可以时时的快速运算IDCT。乘法运算采用移位相加的方法,无乘法器,适合大图像快速AVS视频解码在FPGA上应用。
Description
所属技术领域
本发明涉及一种数字视频编解码技术领域的装置及方法,具体为基于AVS标准中并行流水设计的IDCT(离散余弦反变换)快速变换的方法和装置。
背景技术
随着微电子技术的发展,电子信息类产品的开发复杂程度加深同时产品的上市时限紧迫。因此用于图像信号处理的各类大规模电路的设计也不再时兴采用全定制电路设计方法或者是半定制电路设计方法,而采用现场可编程逻辑器件的系统级设计方法已成为视频技术发展的一种新趋势。二维的DCT/IDCT是信息压缩中的核心技术,因此寻找一种适合于用FPGA来实现的快速DCT/IDCT变换是非常有必要的。
《信息技术先进音视频编码第2部分:视频》(GB/T2000090.2-2006,以下简称AVS协议)是由我国制定的具有自主知识产权的视频压缩编码标准。AVS标准它采用了许多先进技术,在保证图像质量的情况下提高了视频压缩效率。包括帧内预测,帧间预测,DCT(离散余弦变换),量化和熵编码等。
在对AVS软件解码器进行分析后,得到下表:
Symbol Name | % | Avg./MB(clk of cpu) |
Idct | 24 | 4,701 |
Intra/inter pred | 20 | 3,918 |
Deblock | 18 | 3,528 |
Decode_golomb_word | 11 | 2,155 |
Others | 27 | 5,289 |
IDCT占用的资源是整个AVS解码中最大。
离散余弦变换(DCT)及离散余弦反变换(IDCT)是常用的图像变换域编解码方法,它采用非均量量化的方法来降低图像中的高频分量,除去观察者察觉不到的冗余信息,同时把图像数据转换成可归一、量化和可变长度编码的频域系数。广泛地用于JPEG编解码方案、MPEG编解码方案中。
二维DCT的定义如下:
其中,K=0,1,…,N-1;J=0,1,…,M-1;
式中x(n,m)代表待变换矩阵中第n行、第m列的元素,X(K,J)代表变换后的矩阵中第K行、第J列的元素。
二维IDCT的定义如下:
其中,K=0,1,…,N-1;J=0,1,…,M-1;
AVS解码协议视频解码中对残差系数的变换解码采用了8x8整数反离散余弦变换。
IDCT运算过程为将8×8变换系数矩阵CoeffMatrix转换为8×8残差样值矩阵Residue Matrix的过程,步骤如下:
首先,对变换系数矩阵进行如下水平反变换:
H =CoeffMatrix×T8T
其中,T8是8×8反变换矩阵,T8T是T8的转置矩阵,H 表示水平反变换后的中间结果。
第二步,矩阵H 的元素hij计算如下:
hij=(Clip3(-215,215-1,(h ij+4)))>>3 i,j=0~7
第三步,对矩阵H 进行如下垂直反变换:
H=T8×H
其中,H表示反变换后的8×8矩阵。
第四步,残差样值矩阵ResidueMatrix的元素rij计算如下:
rij=(Clip3(-215,215-1,(hij+26)))>>7 i,j=0~7
其中hij是H矩阵的元素。
每计算一个像素点需要16次乘法和14次加法,运行时间多,占用整个解码器资源比重大,资源利用率低。
发明内容
为了解决上述问题,本发明的目的是提供一种基于AVS并行流水IDCT快速变换的方法和装置,以实现不间断的对8×8子块组成的图像数据进行IDCT运算。
为实现以上设计,该装置包括:
输出控制各个运算流水单元控制信号的控制模块;
进行串并转换,一个时钟接收一个残差系数数据,8个时钟后把寄存器中的数据并行输出的一维输入寄存模块;
寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果的一维蝶形运算模块;
进行并串转换,8路并行同时输入一维蝶形运算模块的运算结果,一个时钟输出一个运算结果的一维输出模块;
每个时钟输入一个一维输出模块输出的运算结果数据,根据乒乓操作,存储在相应RAM中,判断当前块存储的RAM空间地址,每份RAM为一个块的信息大小,每个数据的存储地址偏移8个单元的转置及乒乓RAM模块;
进行串并转换,一个时钟从转置及乒乓RAM模块中读取一个残差系数数据,8个时钟后把寄存器中的数据并行输出的二维输入模块;
使二维寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果的二维蝶形运算模块;
进行并串转换,8路并行同时输入二维蝶形运算模块的运算结果,一个时钟输出一个运算结果二维输出模块。
本发明还要提供一种基于AVS并行流水IDCT快速变换的方法,其特征在于包括以下步骤:
控制模块输出控制各个运算单元流水的控制信号;
一维输入寄存模块进行串并转换,一个时钟接收一个残差系数数据,8个时钟后把寄存器中的数据并行输出;
一维蝶形运算模块使寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果;
一维输出模块进行并串转换,8路并行同时输入一维蝶形运算模块的运算结果,一个时钟输出一个运算结果;
每个时钟输入一个一维输出模块输出的运算结果数据,转置及乒乓RAM模块根据乒乓操作,存储在相应RAM中,每份RAM为一个块的信息大小,判断当前块存储的RAM空间地址,每个数据的存储地址偏移8个单元;
二维输入模块进行串并转换,一个时钟从转置及乒乓RAM模块中读取一个残差系数数据,8个时钟后把串行输入的一行图像数据并行输出;
二维蝶形运算模块使二维寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果;
二维输出模块进行并串转换,8路并行同时输入蝶形运算模块的运算结果,一个时钟输出一个运算结果。
根据本发明,8路数据通过所述的一维蝶形运算模块和二维蝶形运算模块并行运算。
根据本发明,所述的一维蝶形运算模块和二维蝶形运算模块采用移位和加法运算替代乘法运算。
根据本发明,通过控制模块,及转置及乒乓RAM模块完成整体流水结构。
根据本发明,所述的流水结构时时输入AVS残差系数数据,不间断的IDCT
运算。
本发明的IDCT快速运算方法及装置采用并行流水蝶形运算的设计思想,可以时时的快速运算IDCT。乘法运算采用移位相加的方法,无乘法器,适合大图像快速AVS视频解码在FPGA上应用。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是本发明的系统电路框图。
图2是常用蝶形运算流程图。
图3是本发明的一维行蝶形运算流程图。
图4是本发明的一维列蝶形运算流程图。
具体实施方式
下面结合附图对本发明的实施例的IDCT装置做详细讲解。
AVS标准是以8x8的子块为一个变换单元。图1是本发明的系统电路框图。为了解IDCT变换的具体实现流程,将图1中各种模块具体功能分步骤描述如下:
步骤1,一维输入寄存模块
步骤1.1,一个时钟输入一个残差系数,存入相应寄存器中。
步骤1.2,一个8x8的块数据中第一个数据起,每8个时钟把寄存器中的数据并列输出。
步骤2,一维蝶形运算模块
步骤2.1,8路数据并行运算,中间的数据采用多级寄存器存储。
步骤2.2,所有运算为移位,加减法。
步骤2.3,8个时钟运算完成,新的8路数据输入运算。
步骤3,一维输出模块
步骤3.1,一个时钟输入8个数据,存入寄存器,
步骤3.2,每个时钟输出一个寄存器中的数据。
步骤3.3,8个时钟后,新的8个数据存入寄存器。
步骤4,转置及乒乓RAM模块
步骤4.1,每个时钟输入一个数据。
步骤4.2,乒乓操作,双份RAM。每份RAM为一个块的信息大小。判断当前块存储的RAM空间地址。
步骤4.3,第一行8个数据,每个数据存储地址偏移8个单元。
步骤4.4,每8个数据输入,行存储地址自加1个单元。
步骤4.5,64个数据存储完后,切换RAM。
步骤5,二维输入寄存模块
步骤5.1,判断乒乓操作,确定读取的RAM地址
步骤5.2,一个时钟从RAM中读取一个残差系数,存入相应寄存器中。
步骤5.2,一个8x8的块数据中第一个数据起,每8个时钟把寄存器中的数据并列输出。
步骤6,二维蝶形运算模块
步骤6.1,8路数据并行运算,中间的数据采用多级寄存器存储。
步骤6.2,所有运算为移位,加减法。
步骤6.3,8个时钟运算完成,新的8路数据输入运算。
步骤7,二维输出模块
步骤7.1,一个时钟输入8个数据,存入寄存器,
步骤7.2,每个时钟输出一个寄存器中的数据。
步骤7.3,8个时钟后,新的8个数据存入寄存器。
综上所述,本发明的IDCT快速运算方法及装置采用并行流水蝶形运算的设计思想,可以时时的不间断的快速运算AVS标准8*8块的IDCT。乘法运算采用移位相加的方法,无乘法器,适合大图像快速AVS视频解码在FPGA上应用。
该理解到的是:上述实施例只是对本发明的说明,而不是对本发明的限制,任何不超出本发明实质精神范围内的发明创造,均落入本发明的保护范围之内。
Claims (6)
1.一种基于AVS并行流水IDCT快速变换的方法,其特征在于包括以下步骤:
控制模块输出控制各个运算单元流水的控制信号;
一维输入寄存模块进行串并转换,一个时钟接收一个残差系数数据,8个时钟后把寄存器中的数据并行输出;
一维蝶形运算模块使寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果;
一维输出模块进行并串转换,8路并行同时输入一维蝶形运算模块输出的运算结果,一个时钟输出一个运算结果;
转置及乒乓RAM模块每个时钟输入一个一维输出模块输出的运算结果数据,根据乒乓操作,存储在相应RAM中,每份RAM为一个块的信息大小,判断当前块存储的RAM空间地址,每个数据的存储地址偏移8个单元;
二维输入模块进行串并转换,一个时钟从转置及乒乓RAM模块中读取一个残差系数数据,8个时钟后把串行输入的一行图像数据并行输出;
二维蝶形运算模块使二维输入模块的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果;
二维输出模块进行并串转换,8路并行同时输入二维蝶形运算模块输出的运算结果,一个时钟输出一个运算结果。
2.如权利要求1所述的一种基于AVS并行流水IDCT快速变换的方法,其特征是:8路数据通过所述的一维蝶形运算模块和二维蝶形运算模块并行运算。
3.如权利要求2所述的一种基于AVS并行流水IDCT快速变换的方法,其特征是:所述的一维蝶形运算模块和二维蝶形运算模块采用移位和加法运算替代乘法运算。
4.如权利要求1所述的一种基于AVS并行流水IDCT快速变换的方法,其特征是:通过控制模块和转置及乒乓RAM模块完成整体流水结构。
5.如权利要求4所述的一种基于AVS并行流水IDCT快速变换的方法,其特征是:所述的流水结构时时输入AVS残差系数数据,不间断的进行IDCT运算。
6.一种基于AVS并行流水IDCT快速变换的装置,其特征在于包括:
输出控制各个运算单元流水的控制信号的控制模块;
进行串并转换,一个时钟接收一个残差系数数据,8个时钟后把寄存器中的数据并行输出的一维输入寄存模块;
使寄存器的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果的一维蝶形运算模块;
进行并串转换,8路并行同时输入一维蝶形运算模块输出的运算结果,一个时钟输出一个运算结果的一维输出模块;
每个时钟输入一个一维输出模块输出的运算结果数据,根据乒乓操作,存储在相应RAM中,每份RAM为一个块的信息大小,判断当前块存储的RAM空间地址,每个数据的存储地址偏移8个单元的转置及乒乓RAM模块;
进行串并转换,一个时钟从转置及乒乓RAM模块中读取一个残差系数数据,8个时钟后把串行输入的一行图像数据并行输出的二维输入模块;
使二维输入模块的并行输出数据通过8级运算做一次蝶形运算,8个时钟输出其运算结果的二维蝶形运算模块;
进行并串转换,8路并行同时输入二维蝶形运算模块输出的运算结果,一个时钟输出一个运算结果的二维输出模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910099557 CN101646080B (zh) | 2009-06-18 | 2009-06-18 | 基于avs并行流水idct快速变换的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910099557 CN101646080B (zh) | 2009-06-18 | 2009-06-18 | 基于avs并行流水idct快速变换的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101646080A CN101646080A (zh) | 2010-02-10 |
CN101646080B true CN101646080B (zh) | 2013-09-25 |
Family
ID=41657760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910099557 Expired - Fee Related CN101646080B (zh) | 2009-06-18 | 2009-06-18 | 基于avs并行流水idct快速变换的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101646080B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794276B (zh) * | 2010-03-30 | 2012-06-06 | 无锡致新电子科技有限公司 | 适用于soc的dct_idct协处理器 |
CN102857756B (zh) * | 2012-07-19 | 2015-04-08 | 西安电子科技大学 | 适于hevc标准的变换编码器 |
CN103067718B (zh) * | 2013-01-30 | 2015-10-14 | 上海交通大学 | 适用于数字视频编解码的一维离散余弦逆变换模块电路 |
CN103488614A (zh) * | 2013-09-22 | 2014-01-01 | 浙江大学 | 数字信号处理中的变换的方法和装置 |
CN105892988B (zh) * | 2016-04-26 | 2019-03-01 | 广州致远电子股份有限公司 | 一种基于fpga的运算电路、示波器和测量仪器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1268231A (zh) * | 1997-08-25 | 2000-09-27 | 夸尔柯姆股份有限公司 | 数据块规模可变的2维逆向离散余弦变换机 |
CN1290455A (zh) * | 1998-12-14 | 2001-04-04 | 松下电器产业株式会社 | Dct运算装置 |
CN1553707A (zh) * | 2003-06-02 | 2004-12-08 | 杭州高特信息技术有限公司 | 一种dct快速变换结构 |
US7020671B1 (en) * | 2000-03-21 | 2006-03-28 | Hitachi America, Ltd. | Implementation of an inverse discrete cosine transform using single instruction multiple data instructions |
-
2009
- 2009-06-18 CN CN 200910099557 patent/CN101646080B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1268231A (zh) * | 1997-08-25 | 2000-09-27 | 夸尔柯姆股份有限公司 | 数据块规模可变的2维逆向离散余弦变换机 |
CN1290455A (zh) * | 1998-12-14 | 2001-04-04 | 松下电器产业株式会社 | Dct运算装置 |
US7020671B1 (en) * | 2000-03-21 | 2006-03-28 | Hitachi America, Ltd. | Implementation of an inverse discrete cosine transform using single instruction multiple data instructions |
CN1553707A (zh) * | 2003-06-02 | 2004-12-08 | 杭州高特信息技术有限公司 | 一种dct快速变换结构 |
Also Published As
Publication number | Publication date |
---|---|
CN101646080A (zh) | 2010-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102460425B (zh) | 计算偶数尺寸的离散余弦变换 | |
CN101646080B (zh) | 基于avs并行流水idct快速变换的方法和装置 | |
Chen et al. | Efficient architecture of variable size HEVC 2D-DCT for FPGA platforms | |
CN101330616B (zh) | 视频解码过程中反离散余弦变换的硬件实现装置及方法 | |
CN108200439B (zh) | 提高数字信号变换性能的方法及数字信号变换方法和装置 | |
CN101188761A (zh) | Avs标准中基于并行处理来优化dct快速算法的方法 | |
Kalali et al. | Approximate HEVC fractional interpolation filters and their hardware implementations | |
Azgin et al. | An efficient FPGA implementation of HEVC intra prediction | |
Zheng et al. | A reconfigurable architecture for discrete cosine transform in video coding | |
Martisius et al. | A 2-D DCT hardware codec based on Loeffler algorithm | |
CN104144346A (zh) | 用于执行空域和频域之间的变换的数据处理装置和方法 | |
Nagabushanam et al. | Design and implementation of parallel and pipelined distributive arithmetic based discrete wavelet transform IP core | |
CN101640791A (zh) | 一种解码方法、装置和解码器 | |
Abdelrasoul et al. | Real‐time unified architecture for forward/inverse discrete cosine transform in high efficiency video coding | |
KR101601864B1 (ko) | 동영상 코덱의 역변환 방법 및 그 장치 | |
Agostini et al. | A FPGA based design of a multiplierless and fully pipelined JPEG compressor | |
CN100388316C (zh) | 高精度的无乘法器的数字余弦变换电路及其变换方法 | |
Senthilkumar et al. | Power Reduction in DCT Implementation using Comparative Input Method | |
CN113286150B (zh) | 用于视频编解码的变换编码硬件实现方法、装置及设备 | |
Hegde et al. | A parallel 3-D discrete wavelet transform architecture using pipelined lifting scheme approach for video coding | |
Kilany et al. | A reconfigurable 2-D IDCT architecture for HEVC encoder/decoder | |
Yashavantha Kumar et al. | Image Processing Architecture Using DTCWT Modified Distributed Algorithm for Plant Phenotyping | |
Raghunath et al. | High speed area efficient multi-resolution 2-D 9/7 filter DWT processor | |
Arya et al. | Quality driven energy aware approximated core transform architecture for hevc standard | |
Dhakar et al. | A novel parallel architecture of lifting based 2D-discrete wavelet transform |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130925 Termination date: 20140618 |
|
EXPY | Termination of patent right or utility model |