一种优化的aec解码器的制造方法
【专利摘要】本发明提供一种优化的AEC解码器,至少包括:数据流输入存储器、CTX存储器、CTX访问控制单元、CTX索引计算单元、CTX索引起始地址单元、CTX索引表起始地址单元、AEC解码参数缓存器、CTX参数缓存器、CTX参数更新电路、AEC解码初始参数计算单元、AEC解码中间参数计算单元、AEC解码参数更新单元、二进制位解码计算单元、二值化单元、语法元素单元以及run和level输出存储器。本发明的优化的AEC解码器的输入输出都采用存储器,使AEC解码器可以和后续解码单元形成流水线结构,从而提高了整体解码速度;同时可以工作在超高速的时钟频率下,使解码速度成倍数增加,增加倍数由工作时钟频率决定,相对按标准所述原有步骤实现的电路,解码吞吐率提高3到4倍。
【专利说明】—种优化的AEC解码器
【技术领域】
[0001]本发明涉及视频解码的【技术领域】,特别是涉及一种优化的AEC解码器。
【背景技术】
[0002]音视频编码标准(Audio Video coding Standard, AVS)是《信息技术先进音视频编码》系列标准的简称,是我国具备自主知识产权的第二代信源编码标准,也是数字音视频产业的共性基础标准。AVS标准在我国的数字电视、IPTV、多媒体通信、视频监控等多个领域中占有重要的地位,对我国信息产业的发展具有重大意义。AEC是AVS最新标准(GY/T257.1-2012)中添加的高级熵编解码部分,是一种基于上下文的可适应的二进制编解码算法。
[0003]AEC编解码算法的编解码过程需要维护与数据上下文相关的概率表,每位二进制编解码过程需要待上一位数据编解码完毕之后再进行。传统的软件或硬件解码器由于数据依赖性导致解码速度有限,成为整个AVS视频解码速度的瓶颈,从而无法支持高分辨率、高帧率的视频流解码。
【发明内容】
[0004]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种优化的AEC解码器,其优化了解码电路实现结构和分步流水线,使解码效率提高,所需资源降低,可以满足高分辨率、高帧率的超高清视频的硬件解码要求。
[0005]为实现上述目的及其他相关目的,本发明提供一种优化的AEC解码器,至少包括:数据流输入存储器、CTX存储器、CTX访问控制单元、CTX索引计算单元、CTX索引起始地址单元、CTX索引表起始地址单元、AEC解码参数缓存器、CTX参数缓存器、CTX参数更新电路、AEC解码初始参数计算单元、AEC解码中间参数计算单元、AEC解码参数更新单元、二进制位解码计算单元、二值化单元、语法元素单元以及run和level输出存储器;其中,所述数据流输入存储器用以缓存输入的待解码数据;所述CTX存储器用以存储CTX数据;所述CTX访问控制单元用于控制CTX存储器的读写操作,并根据CTX索引计算所述CTX存储器的读写地址,根据AEC解码需求确定读取两个或一个CTX索引对应数据;所述CTX索引计算单元、所述CTX索引起始地址单元和所述CTX索引表起始地址单元用于计算CTX索引;所述AEC解码参数缓存器和CTX参数缓存器分别用于缓存AEC解码参数和CTX参数;所述CTX参数更新电路用于更新CTX参数,并将更新后的CTX参数存储到所述CTX参数缓存器中;所述AEC解码初始参数计算单元和所述AEC解码中间参数计算单元分别用于计算AEC解码的初始参数和中间参数;所述AEC解码参数更新单元用于更新AEC解码参数,并将更新的参数存储到所述AEC解码参数缓存器中;所述二进制位解码单元用于计算待解码数据流的二进制位解码结果;所述二值化单元用于将所述二进制解码结果进行二值化处理,并判断是否有对应语法元素输出;如果有,当前语法解码结束,输出解码后的语法元素到所述语法元素单元315,如果当前解码的是run和level元素,则存储到所述run和level输出存储器。[0006]根据上述的优化的AEC解码器,其中:所述CTX索引表起始地址单元用于确定CTX索引表起始地址,所述CTX索引表起始地址根据当前解码元素而定。
[0007]根据上述的优化的AEC解码器,其中:所述CTX访问控制单元、所述CTX索引计算单元、所述CTX索引起始地址单元和所述CTX索引表起始地址单元依次相连。
[0008]根据上述的优化的AEC解码器,其中:所述二进制位解码单元将得到的二进制位解码结果传送到所述CTX参数更新电路,以实时更新CTX参数。
[0009]根据上述的优化的AEC解码器,其中:所述二进制位解码单元根据所述AEC解码中间参数计算单元得到的参数、所述AEC解码参数缓存器中缓存的参数以及所述数据流输入存储器存储的数据流来计算二进制位解码结果。
[0010]根据上述的优化的AEC解码器,其中:所述run和level输出存储器采用RAM存储器。
[0011 ] 根据上述的优化的AEC解码器,其中:所述run和level存储单元中存储约3个宏块的run和level数据。
[0012]如上所述,本发明的优化的AEC解码器,具有以下有益效果:
[0013](I)本发明的优化的AEC解码器集成到AVS视频解码器中时,输入输出都采用存储器,使AEC解码器可以和后续解码单元形成流水线结构,从而解决了 AEC解码器解码周期数量不定的问题,也提高了整体解码速度;
[0014](2)本发明的优化的AEC解码器使AEC解码器不再成为AVS解码速度的瓶颈,相对按标准所述原有步骤实现的电路,解码吞吐率提高3到4倍;同时本发明的优化的AEC解码器可以工作在超高速的时钟频率下,相对于未优化步骤的AEC电路,使解码速度成倍数增加,增加的倍数由工作时钟频率决定。
[0015](3)本发明的优化的AEC解码器采用数字集成电路方式实现,具有效率高、功耗低、设备集成容易等优点。
【专利附图】
【附图说明】
[0016]图1显示为现有技术中AVS解码器的结构示意图;
[0017]图2显示为本发明的优化的AEC解码器与RLD解码器的电路结构示意图;
[0018]图3显示为本发明的优化的AEC解码器的结构示意图;
[0019]图4显示为本发明的优化的AEC解码器的解码流程图;
[0020]图5显示为本发明的优化的AEC解码器和RLD解码器的流水线时序示意图;
[0021]图6显示为本发明的优化的AEC解码器的分步解码流水线时序示意图。
【具体实施方式】
[0022]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0023]需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0024]图1显示为现有技术中的AVS解码器的实现架构。如图所示,比特流模块101从数据流中解出头信息,通过帧内预测模块106和帧间预测模块107产生预测块;熵解码模块102从比特流模块101中得到残差系数,经过游程解码模块103、反量化模块104、反变换模块105处理后得到残差块;预测块和残差块在重构模块108中相加,再经过环路滤波器109滤波得到最终的解码数据,帧存储模块110将解码的帧存储已备下一帧计算预测块时使用。其中,AEC解码器是熵解码模块102中的一部分,其后续模块是游程解码模块(RunLength Decoding, RLD) 103。
[0025]本发明的优化的AEC解码器是AVS视频标准中AEC解码部分,采用基于上下文的可适应的二进制解码算法。该AEC解码器输入为待解码的可变长度的编码数据,输出为AVS解码所需必要语法元素和游程解码所需run和level数据。本发明的优化的AEC解码器将解码得到的run和level数据存储到存储器以供RLD解码器进行解码,然后再通过RLD解码器将run和level解码为二维的数据以供后续视频解码单元进行解码。
[0026]参照图2,本发明的优化的AEC解码器201和RLD解码器204之间通过RAM202进行数据传输。其中,RAM202是AEC解码器201的输出缓存。由于AEC解码器201的解码时间长度是不定的,RLD解码器204的解码时间长度是一定的,所以需要通过RAM202缓存约3个宏块的run和level数据以达到两个解码单元的流水线实现。有限状态机FSM (FiniteState Machine) 203用于控制AEC解码器201和RLD解码器204两个单元的数据交互,保证数据吞吐量平均。AEC解码器201电路经优化精简可以工作在高频时钟下,输入输出都有存储器隔离,所以AEC解码器201可以工作在独立的时钟域,以保证AEC解码效率。
[0027]本发明的优化的AVS解码器由集成电路实现。如图3所示,其包括数据流输入存储器301、CTX存储器302、CTX访问控制单元303、CTX索引计算单元304、CTX索引起始地址单元305、CTX索引表起始地址单元306、AEC解码参数缓存器307、CTX参数缓存器308、CTX参数更新电路309、AEC解码初始参数计算单元310、AEC解码中间参数计算单元311、AEC解码参数更新单元312、二进制位解码计算单元313、二值化单元314、语法元素单元315以及run和level输出存储器316。
[0028]其中,数据流输入存储器301用以缓存输入的待解码数据。
[0029]CTX存储器302,用以存储CTX数据,其中CTX索引表的具体内容见表I。trans_coefficient元素(run和level)中巾贞模式和场模式在同一条带下不会同时需要,所以在条带开始CTX初始化时可以减少初始化帧模式或场模式对应的CTX数据,CTX存储器302可以减少所需存储单元。
[0030]表1、CTX索引表
[0031]
【权利要求】
1.一种优化的AEC解码器,其特征在于,至少包括:数据流输入存储器、CTX存储器、CTX访问控制单元、CTX索引计算单元、CTX索引起始地址单元、CTX索引表起始地址单元、AEC解码参数缓存器、CTX参数缓存器、CTX参数更新电路、AEC解码初始参数计算单元、AEC解码中间参数计算单元、AEC解码参数更新单元、二进制位解码计算单元、二值化单元、语法元素单元以及run和level输出存储器; 其中,所述数据流输入存储器用以缓存输入的待解码数据; 所述CTX存储器用以存储CTX数据; 所述CTX访问控制单元用于控制CTX存储器的读写操作,并根据CTX索引计算所述CTX存储器的读写地址,根据AEC解码需求确定读取两个或一个CTX索引对应数据; 所述CTX索引计算单元、所述CTX索引起始地址单元和所述CTX索引表起始地址单元用于计算CTX索引; 所述AEC解码参数缓存器和CTX参数缓存器分别用于缓存AEC解码参数和CTX参数; 所述CTX参数更新电路用于更新CTX参数,并将更新后的CTX参数存储到所述CTX参数缓存器中; 所述AEC解码初始参数计算单元和所述AEC解码中间参数计算单元分别用于计算AEC解码的初始参数和中间参数; 所述AEC解码参数更新单元用于更新AEC解码参数,并将更新的参数存储到所述AEC解码参数缓存器中; 所述二进制位解码单元用于计算待解码数据流的二进制位解码结果; 所述二值化单元用于将所述二进制解码结果进行二值化处理,并判断是否有对应语法元素输出;如果有,当前语法解码结束,输出解码后的语法元素到所述语法元素单元315,如果当前解码的是run和level元素,则存储到所述run和level输出存储器。
2.根据权利要求1所述的优化的AEC解码器,其特征在于:所述CTX索引表起始地址单元用于确定CTX索引表起始地址,所述CTX索引表起始地址根据当前解码元素而定。
3.根据权利要求1所述的优化的AEC解码器,其特征在于:所述CTX访问控制单元、所述CTX索引计算单元、所述CTX索引起始地址单元和所述CTX索引表起始地址单元依次相连。
4.根据权利要求1所述的优化的AEC解码器,其特征在于:所述二进制位解码单元将得到的二进制位解码结果传送到所述CTX参数更新电路,以实时更新CTX参数。
5.根据权利要求1所述的优化的AEC解码器,其特征在于:所述二进制位解码单元根据所述AEC解码中间参数计算单元得到的参数、所述AEC解码参数缓存器中缓存的参数以及所述数据流输入存储器存储的数据流来计算二进制位解码结果。
6.根据权利要求1所述的优化的AEC解码器,其特征在于:所述run和level输出存储器采用RAM存储器。
7.根据权利要求1所述的优化的AEC解码器,其特征在于:所述run和level存储单元中存储约3个宏块的run和level数据。
【文档编号】H04N19/13GK103873870SQ201410070447
【公开日】2014年6月18日 申请日期:2014年2月28日 优先权日:2014年2月28日
【发明者】崔明礼, 邵智勇, 周华, 姜启军, 李岳峥 申请人:芯原微电子(上海)有限公司, 芯原微电子(北京)有限公司, 芯原微电子(成都)有限公司, 芯原股份有限公司