CN101848395A - H.264/avc输入码流用解码器及其控制方法 - Google Patents
H.264/avc输入码流用解码器及其控制方法 Download PDFInfo
- Publication number
- CN101848395A CN101848395A CN 201010199489 CN201010199489A CN101848395A CN 101848395 A CN101848395 A CN 101848395A CN 201010199489 CN201010199489 CN 201010199489 CN 201010199489 A CN201010199489 A CN 201010199489A CN 101848395 A CN101848395 A CN 101848395A
- Authority
- CN
- China
- Prior art keywords
- address
- buffering area
- data
- control circuit
- 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.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种通信解码技术领域的H.264/AVC输入码流用解码器及其控制方法,包括:地址缓冲隔离控制电路、地址生成器、时钟发生器、数据缓冲隔离控制电路以及随机存储器。所述的随机存储器由缓冲区A和缓冲区B构成。所述的地址生成器产生两个环形变化的地址数据指针PA和地址数据指针PB并分别指向对应的缓冲区A和缓冲区B中的地址,循环时钟的每一个周期内:当地址数据指针PA增加到周长一半时,地址数据指针PB归零,当地址数据指针PB增加到周长一半时,地址数据指针PA归零。本发明实现输入码流和计算引擎的速度匹配,可以提高系统的性能。
Description
技术领域
本发明涉及的是通信调制技术领域的装置及控制方法,具体涉及一种H.264/AVC输入码流用解码器及其控制方法。
背景技术
H.264/AVC是由ITU-T和MPEG组织联合提出的新一代的数字视频编码标准。H.264/AVC标准显著提高了数据压缩效率。在相同图像质量下,H.264/AVC标准可在更低码率信道上获得更高的视频质量。但它的实时性能和高质量是以可靠的、低延迟的輸入码流和复杂计算为基础的。在对H.264/AVC解码器设计中,研究如何提高计算能力的方法多,而如何使输入码流和计算引擎速度配合的方法研究极少。其实在码流输入过程中产生的延迟,是会影响整个系统的性能。
经过对现有技术文献的检索发现,谭立地等,在《江西科学》第26卷第4期、2008年8月第608-661页发表的“一种H.264/AVC解码器关键技术的设计”中提出了一种H.264解码器系统结构图,结构图中的硬件解码部分并没有提到对输入码流的控制方法,文献中提出的对关键技术阐述,也没有涉及对输入码流的控制方法。事实上,只有当H.264/AVC输入码流和硬件速度的配合才会提高系统的整体性能。上述文献的不足之处就是并没有提出解决码流和硬件引擎的处理速度差异时应该采用的技术方法。在目前查到的有关文献中也没有提到解码器中需要对码流输入控制的方法。在现代计算机技术中,高速的CPU和存储器RAM之间是采用缓冲存储器Cache来解决速度的差异,进而提高计算机系统的整体运算性能。
发明内容
本发明针对现有技术存在的上述不足,提供一种H.264/AVC输入码流用解码器及其控制方法,针对H.264/AVC Baseline Profile硬件解码器中的输入码流,提出采用硬件桶形缓冲存储器的方法,实现输入码流和计算引擎的速度匹配,可以提高系统的性能。
本发明是通过以下技术方案实现的:
本发明涉及一种H.264/AVC输入码流用解码器,包括:地址缓冲隔离控制电路、地址生成器、时钟发生器、数据缓冲隔离控制电路以及随机存储器,其中:地址生成器的输入端与时钟发生器相连接以接收时钟信号,地址生成器的输出端分别与地址缓冲隔离控制电路以及数据缓冲隔离控制电路相连接以输出控制信号,地址生成器的地址端与地址缓冲隔离控制电路的地址端通过地址总线相连接,地址缓冲隔离控制电路的输出端与临时寄存器相连接以输出地址信息,临时寄存器与数据缓冲隔离控制电路相连接以传输码流信息,所述的随机存储器由缓冲区A和缓冲区B构成。
所述的控制信号包括:对桶形缓冲区进行读操作信号和对桶形缓冲区进行写操作信号。
所述的随机存储器为两块SRAM构成的128bit的桶形码流缓冲区,该桶形码流缓冲区是片外码流从存储器输入到片内H.264解码器之间的接口电路。
所述的地址生成器产生两个环形变化的地址数据指针PA和地址数据指针PB并分别指向对应的缓冲区A和缓冲区B中的地址,循环时钟的每一个周期内:当地址数据指针PA增加到周长一半时,地址数据指针PB归零,当地址数据指针PB增加到周长一半时,地址数据指针PA归零。
本发明涉及上述H.264/AVC输入码流用解码器的控制方法,包括以下步骤:
第一步、在地址生成器的作用下,SDRAM中的码流写入到桶形码流缓冲区;当地址范围达到桶形码流缓冲区的周长的一半时,即写满缓冲区A时启动数据缓冲隔离控制电路并从缓冲区A中读出数据,开始解码器计算;
第二步、当从缓冲区A中读出数据完毕后,启动地址生成器并将SDRAM中的码流继续写入到缓冲区B;当缓冲区B中数据写满时,启动数据缓冲隔离控制电路并继续从缓冲区B中读出数据进行解码器计算,同时将缓冲区A清零;
第三步、启动地址生成器并将SDRAM中的码流写入到缓冲区A中直至缓冲区A写满,然后启动数据缓冲隔离控制电路并继续从缓冲区A中读出数据进行解码器计算,同时将缓冲区B清零。
上述过程的地址发生器和控制电路的时序信号,可以重复进行。一直到码流数据完成。桶形的结构使得读和写的地址具有相同的长度范围,故控制电路设计时可较简单,并且读和写的操作可以分别进行,效率最大。
采用两块SRAM构成的桶形缓冲区的地址长度要比一次运算所需的数据的地址长度范围要大,这样保证了在读缓冲区数据的同时,还能同步向缓冲区写数据,而且不会发生读写数据操作的冲突。
本发明通过以下方式进行工作:首先通过一个16bit宽的数据总线将码流从外部存储器SDRAM输入到随机存储器中,当桶形缓冲区的码流达到桶形周长的一半时,即半满状态后,由控制电路发出中断请求信号,解码器内核就开始读入缓冲区中的码流,并开始解码计算过程。而桶形缓冲区可通过一个自动填充的控制电路,连续从外部存储器SDRAM中读入码流,由缓冲区连续提供给解码器作计算。这里的关键技术就是采用了桶形缓冲区的技术,使得写入数据和读出数据可以同时进行。
在H.264/AVC解码器运算中,码流的桶形缓冲存储器对解码器运算速度提高有重要的作用。它直接关系到整个系统能否满足实时解码并达到所需要吞吐效率。
本发明随机存储器设计两块独立的单端RAM电路和单独的地址生成器,目的是让外部存储器SDRAM中的数据码流能按地址生成器产生的地址顺序进入写缓冲区,假设是A缓冲区;而同时解码器芯片内的运算部件能够按另一个地址生成器产生的地址顺序接收从缓冲器中送出的码流。由于写缓冲区和读缓冲区的操作可以同时进行,省去了每次向SDRAM读写数据的操作过程,提高了系统的速度。桶形的目的是使得读和写的地址具有相同的周长度范围,使得控制电路设计时达到简单可靠的目地,并且读和写的操作可以分别进行,效率最大。
附图说明
图1为本发明结构示意图。
图2为随机存储器示意图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保扩范围不限于下述的实施例。
如图1所示,本实施例包括:地址缓冲隔离控制电路、地址生成器、时钟发生器、数据缓冲隔离控制电路以及随机存储器,其中:地址生成器的输入端与时钟发生器相连接以接收时钟信号,地址生成器的输出端分别与地址缓冲隔离控制电路以及数据缓冲隔离控制电路相连接以输出控制信号,地址生成器的地址端与地址缓冲隔离控制电路的地址端通过地址总线相连接,地址缓冲隔离控制电路的输出端与临时寄存器相连接以输出地址信息,临时寄存器与数据缓冲隔离控制电路相连接以传输码流信息。
所述的地址发生器通过地址隔离控制器后形成两个独立的地址指针,分别代表缓冲区A和缓冲区B地址。在控制电路中C信号出现时,在保证互斥条件下,SDRAM和解码器中的数据码流和地址信号能分别到达桶形结构的A缓冲区和B缓冲区。为说明工作过程,用1、2、3、4分别表示生成缓冲区A和缓冲区B的地址。用5、6、7、8分别表示缓冲区A和缓冲区B。当控制信号C=1时,地址缓冲器1,4和数据缓冲器5,8打开,而地址缓冲器2、3和数据缓冲器6、7关闭,此时防问缓冲器A的地址由地址生成器提供,使来自SDRAM的数据码流进入到缓冲区A。而访问缓冲区B的地址则由解码器提供,使得解码器能从缓冲器B中读出已存的数据。当向缓冲区A写数据的操作完成后,同时从缓冲区B读数据的操作也完成后,控制信号C=0。此时情况翻转,数据和地址缓冲器1、4、5、8关闭,而缓冲器2、3、6、7打开,缓冲区A变为读出数据码流,而缓冲区B变为了写入数据码流。由于控制信号C的不断变化,两块SRAM的读和写操作功能交替循环发生变化。
如图2所示,所述的随机存储器为两块SRAM构成的128bit的桶形码流缓冲区,本实施例具体通过以下方式实现缓存的处理:
第一步、在地址生成器的作用下,SDRAM中的码流写入到对应地址的缓冲区。当地址指针PA达到周长的一半时,即缓冲区A写满时,在控制信号C作用下,开始从缓冲区A中读出数据,进行解码器计算。
第二步、当从缓冲区A中读出数据同时,在地址指针PB的作用下,SDRAM中的码流继续缓冲区B写数据,当缓冲区B中数据写满时,在控制信号C作用下,继续再从缓冲区B中读出数据,进行解码器计算。缓冲区A清零。
第三步、当从缓冲区B中读出数据,做解码计算同时。在地址指针PA作用下,SDRAM中的码流又写入到缓冲区A中,当缓冲区A写满后,在控制信号C作用下,继续再从缓冲区A中读出数据,进行解码器计算。缓冲区B清零。
假设PA是A缓冲区的地址指针,PB是B缓冲区的地址指针。当SDRAM按地址指针PA增加的方向,将数据码流写入A缓冲区时,由于可以将对称的桶形结构想象为类似钟表盘面,所以同时,解码器也按地址指针PB增加的方向从B缓冲区读出数据,读数据和写数据的操作在桶形缓冲区中可以分别同时进行。当指针PA到达圆周长一半时,表明A缓冲区中数据已写满了;而与此同时指针PB也达到了圆周长的另一半位置,表明B缓冲区的数据已经读完了。接下来的操作正好相反,解码器从A缓冲区读已经写入的数据码流,而SDRAM向B缓冲区写入新的数据码流。当地址指针再次到达周长的一半时,读数据和写数据的操作过程又发生交换,于是读和写的工作在桶形缓冲区中可以周期交替进行。
本实施例中所述的存储器SRAM是普通的集成电路中的静态存储器,它的主要特点是速度比SDRAM快,功耗低,容易与其它总线接口,不需要额外的电路。
本实施例中所述的地址生成器是一种能够产生与存储器单元一一对应关系的通用电路,是由异步计数器和译码逻辑电路等共同构成。
地址生成器在桶形缓冲区的作用是分别向SRAM发出读和写操作的发出同步信号,在本例设计中采用了触发器构成的异步计数器电路结构,当每次输入一个时钟信号,就产生一个新地址,将其中的输出的最高位作为控制信号C,而将其它的低位输出作为地址,实现桶形缓冲区的交替读写操作过程。
Claims (5)
1.一种H.264/AVC输入码流用解码器,其特征在于,包括:地址缓冲隔离控制电路、地址生成器、时钟发生器、数据缓冲隔离控制电路以及随机存储器,其中:地址生成器的输入端与时钟发生器相连接以接收时钟信号,地址生成器的输出端分别与地址缓冲隔离控制电路以及数据缓冲隔离控制电路相连接以输出控制信号,地址生成器的地址端与地址缓冲隔离控制电路的地址端通过地址总线相连接,地址缓冲隔离控制电路的输出端与临时寄存器相连接以输出地址信息,临时寄存器与数据缓冲隔离控制电路相连接以传输码流信息,所述的随机存储器由缓冲区A和缓冲区B构成。
2.根据权利要求1所述的H.264/AVC输入码流用解码器,其特征是,所述的随机存储器为两块SRAM构成的128bit的桶形码流缓冲区,该桶形码流缓冲区是片外码流从存储器输入到片内H.264解码器之间的接口电路。
3.根据权利要求1所述的H.264/AVC输入码流用解码器,其特征是,所述的地址生成器产生两个环形变化的地址数据指针PA和地址数据指针PB并分别指向对应的缓冲区A和缓冲区B中的地址,循环时钟的每一个周期内:当地址数据指针PA增加到周长一半时,地址数据指针PB归零,当地址数据指针PB增加到周长一半时,地址数据指针PA归零。
4.根据权利要求1所述的H.264/AVC输入码流用解码器,其特征是,所述的控制信号包括:对桶形缓冲区进行读操作信号和对桶形缓冲区进行写操作信号。
5.一种根据权利要求1所述的H.264/AVC输入码流用解码器的控制方法,其特征在于,包括以下步骤:
第一步、在地址生成器的作用下,SDRAM中的码流写入到桶形码流缓冲区;当地址范围达到桶形码流缓冲区的周长的一半时,即写满缓冲区A时启动数据缓冲隔离控制电路并从缓冲区A中读出数据,开始解码器计算;
第二步、当从缓冲区A中读出数据完毕后,启动地址生成器并将SDRAM中的码流继续写入到缓冲区B;当缓冲区B中数据写满时,启动数据缓冲隔离控制电路并继续从缓冲区B中读出数据进行解码器计算,同时将缓冲区A清零;
第三步、启动地址生成器并将SDRAM中的码流写入到缓冲区A中直至缓冲区A写满,然后启动数据缓冲隔离控制电路并继续从缓冲区A中读出数据进行解码器计算,同时将缓冲区B清零。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010199489 CN101848395A (zh) | 2010-06-13 | 2010-06-13 | H.264/avc输入码流用解码器及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010199489 CN101848395A (zh) | 2010-06-13 | 2010-06-13 | H.264/avc输入码流用解码器及其控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101848395A true CN101848395A (zh) | 2010-09-29 |
Family
ID=42772824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010199489 Pending CN101848395A (zh) | 2010-06-13 | 2010-06-13 | H.264/avc输入码流用解码器及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101848395A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103250147A (zh) * | 2010-10-14 | 2013-08-14 | 惠普发展公司,有限责任合伙企业 | 数据流的连续查询 |
CN105263023A (zh) * | 2015-10-26 | 2016-01-20 | 西安电子科技大学 | 基于高速解码平台的网络码流实时接收方法 |
CN111064948A (zh) * | 2018-10-17 | 2020-04-24 | 耐能股份有限公司 | 影像深度解码器及计算机装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1585373A (zh) * | 2004-05-28 | 2005-02-23 | 中兴通讯股份有限公司 | 一种乒乓缓冲装置 |
CN1731448A (zh) * | 2005-08-26 | 2006-02-08 | 北京中星微电子有限公司 | 图像数据压缩前预存储处理装置和方法 |
CN1878307A (zh) * | 2006-07-14 | 2006-12-13 | 杭州国芯科技有限公司 | 提高视频解码器中sdram总线效率的方法 |
US20080172546A1 (en) * | 2007-01-16 | 2008-07-17 | Industrial Technology Research Institute | Digital signal processor |
CN101667169A (zh) * | 2008-09-03 | 2010-03-10 | 中国科学院上海技术物理研究所 | 一种数字信号的多处理器并行处理系统 |
-
2010
- 2010-06-13 CN CN 201010199489 patent/CN101848395A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1585373A (zh) * | 2004-05-28 | 2005-02-23 | 中兴通讯股份有限公司 | 一种乒乓缓冲装置 |
CN1731448A (zh) * | 2005-08-26 | 2006-02-08 | 北京中星微电子有限公司 | 图像数据压缩前预存储处理装置和方法 |
CN1878307A (zh) * | 2006-07-14 | 2006-12-13 | 杭州国芯科技有限公司 | 提高视频解码器中sdram总线效率的方法 |
US20080172546A1 (en) * | 2007-01-16 | 2008-07-17 | Industrial Technology Research Institute | Digital signal processor |
CN101667169A (zh) * | 2008-09-03 | 2010-03-10 | 中国科学院上海技术物理研究所 | 一种数字信号的多处理器并行处理系统 |
Non-Patent Citations (2)
Title |
---|
《中国科学院研究生院硕士学位论文》 20070215 戴春泉 H.264变字长解码器的硬件设计与实现 中国学术期刊(光盘版)电子杂志社 第4.5节 1-5 , 2 * |
《光电子技术与信息》 20050630 李武森等 高速DSP图像处理系统中的乒乓缓存结构研究 第77页右栏倒数第5行至第78页右栏第4行 2 , 2 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103250147A (zh) * | 2010-10-14 | 2013-08-14 | 惠普发展公司,有限责任合伙企业 | 数据流的连续查询 |
US9195708B2 (en) | 2010-10-14 | 2015-11-24 | Hewlett-Packard Development Company, L.P. | Continuous querying of a data stream |
CN103250147B (zh) * | 2010-10-14 | 2016-04-20 | 惠普发展公司,有限责任合伙企业 | 数据流的连续查询 |
CN105263023A (zh) * | 2015-10-26 | 2016-01-20 | 西安电子科技大学 | 基于高速解码平台的网络码流实时接收方法 |
CN105263023B (zh) * | 2015-10-26 | 2018-08-03 | 西安电子科技大学 | 基于高速解码平台的网络码流实时接收方法 |
CN111064948A (zh) * | 2018-10-17 | 2020-04-24 | 耐能股份有限公司 | 影像深度解码器及计算机装置 |
CN111064948B (zh) * | 2018-10-17 | 2022-03-29 | 耐能股份有限公司 | 影像深度解码器及计算机装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101526924B (zh) | 一种优化数字信号处理芯片数据访问的方法 | |
CN102968390B (zh) | 基于预先解码分析的配置信息缓存管理方法及系统 | |
US20140181427A1 (en) | Compound Memory Operations in a Logic Layer of a Stacked Memory | |
CN101572552A (zh) | 基于内容可寻址存储器的高速无损数据压缩系统 | |
CN103219037A (zh) | 多端口读写的片内存储器 | |
WO2020113966A1 (zh) | 一种高效能融合服务器架构 | |
CN101853149A (zh) | 多核系统中单生产者/单消费者队列的处理方法及装置 | |
CN103778086A (zh) | 一种基于粗粒度动态可重构系统的多模式数据访问装置及办法 | |
CN101848395A (zh) | H.264/avc输入码流用解码器及其控制方法 | |
CN103886916A (zh) | 输入位宽可伸缩的编码/编解码存储系统 | |
CN102004626B (zh) | 双口存储器 | |
CN114443521A (zh) | 一种提高cpu和ddr5 dimm之间传输速率的和装置 | |
CN105825880B (zh) | 用于ddr控制器的访问控制方法、装置及电路 | |
CN105224486A (zh) | 基于lbe总线的1553b总线协议模块 | |
CN103927269B (zh) | 一种基于块匹配的可重构配置信息缓存系统及压缩方法 | |
CN201936294U (zh) | 一种高速图像采集系统的缓存系统 | |
CN202995701U (zh) | 基于预先解码分析的数据信息缓存管理系统 | |
CN104156907A (zh) | 一种基于fpga的红外预处理存储系统及存储方法 | |
CN103577110A (zh) | 片上系统及片上系统的读写方法 | |
CN202995712U (zh) | 基于预先解码分析的配置信息缓存管理系统 | |
CN201001175Y (zh) | Ip音视频编码解码器 | |
CN100561590C (zh) | 一种读取内存中数据的方法和系统 | |
CN103034455A (zh) | 基于预先解码分析的数据信息缓存管理方法及系统 | |
CN104679679A (zh) | 一种基于嵌入式的该分辨率图像处理系统 | |
CN101990102B (zh) | 嵌入式设备上视频解码过程中数据读取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100929 |