CN1121673A - 视频解压缩处理器中存储器的定址方法及装置 - Google Patents
视频解压缩处理器中存储器的定址方法及装置 Download PDFInfo
- Publication number
- CN1121673A CN1121673A CN95108646A CN95108646A CN1121673A CN 1121673 A CN1121673 A CN 1121673A CN 95108646 A CN95108646 A CN 95108646A CN 95108646 A CN95108646 A CN 95108646A CN 1121673 A CN1121673 A CN 1121673A
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- video
- estimation range
- ram
- 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.)
- Granted
Links
- 230000006837 decompression Effects 0.000 title claims abstract description 24
- 238000000034 method Methods 0.000 title claims description 25
- 230000033001 locomotion Effects 0.000 claims abstract description 43
- 239000013598 vector Substances 0.000 claims abstract description 36
- 239000000872 buffer Substances 0.000 claims description 24
- 230000006835 compression Effects 0.000 claims description 21
- 238000007906 compression Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 14
- 241001269238 Data Species 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 4
- 238000012806 monitoring device Methods 0.000 claims description 2
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000013461 design Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 230000003139 buffering effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000002349 favourable effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 235000014676 Phragmites communis Nutrition 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000003795 desorption Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000001612 separation test Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
将象素数据储存在一视频解压缩处理器的随机存取存储器(RAM)中并随后读取,以减少将该随机存取存储的不同行定址的次数。将来自一视频帧的象素数据作为多页数据储存在该RAM中。每页数据大体上均填充该RAM的一不同行并对应于该视频帧的一不同部分。将一运动矢量解码以确定该视频帧内的一预测区域的位置。如该预测区域所包含的视频帧象素数据在一页以上,则将该象素资料以一次取回一页,以使将该RAM定址时所要求的行变动数目减至最小。
Description
本发明涉及一种视频解压缩处理器,并特别涉及用以在此种处理器中将一动态随机存取存储器(DRAM)定址的一种有效设计,以减少必须将该动态随机存取存储器的不同行定址的次数,以期取回重构一当前视频帧所必需的先前视频帧象素数据。
电视信号的数字传输能提供品质高于模拟技术很多的视频及音频服务。数字传输设计尤其对经由一套电缆电视网络或者通过卫星对有线电视网络及/或直通家庭***接收机所传播的信号有利。所预期的是,数字电视发射机及接收机***将会取代现行的模拟***,正如数字激光唱盘(CD)已取代音响工业中的模拟留声机唱片的情形一样。在任何数字电视***中均必须传输大量的数字数据。在一种数字电视***中,一位用户是经由一接收机/反扰频器接收数字数据流,以便对该用户提供视频,音频及数据。为期最有效率地运用现有的射频频谱,有利的方式为压缩这些数字电视信号,以使必须传输的数据量减至最少。
一电视信号的视频部分包括一序列一起提供一移动画面的视频帧。在数字电视***中,一视频帧的各行是通过一序列称为“象素”的数字数据位予以确定的。要确定一电视信号的每一视频帧必需大量数据。例如,要以NTSC(国家电视***委员会)分辩度提供一个视频帧时必需7.4兆位的数据。就红、绿、蓝等主要彩色的每种彩色言,其是假定将一项640象素乘以480行的显示与8位的强度值一起使用的情形。以PAL(行相交替)分辨度提供一个视频帧必需9.7兆位的数据。在此种情形中,就红、绿、蓝等主要彩色的每种彩色言,其是将一项704象素乘以576行的显示与8位的强度值一起使用的情形。为期管理这些数量的信息,必须压缩此种数据。
视频压缩技术能使数字视频信号在传统式通信信道上作有效率的传输。此种技术采用利用相邻象素之间的相互关系的压缩算法,以期获得一视频信号中的重要信息的更有效表示。此种最有效的压缩***不仅利用空间相互关系,而且也运用相邻帧之间的相似性,以进一步压缩该数据。在此种***中,通常均只利用差分编码来传输一实际帧与该实际帧预测之间的差别。该项预测是根据得自同一视频序列的一先前帧。
可在Krause及同僚的美国专利第5,057,916号;第5,068,724号;第5,091,782号;第5,093,720号;以及第5,235,419号中发现利用运动补偿的视频压缩***的实例。一般而言,此类运动补偿***均是利用一种块匹配运动估计算法。在此种情形中,均是就一图象的一当前帧中的每一块确定一运动矢量,通过识别一先前帧中的一块,该块最近似该特定的当前块。而后,可通过传送该对应成对的块之间的差别以及识别该对应成对的块所必需的运动矢量在一解码器处重构该全部的当前帧。常常通过压缩这些位移的块差别以及运动矢量两种信号来进一步减少所传输的数据量。当与诸如离散余弦变换(DCT)与以块为基础的空间压缩技术结合时,块匹配运动估计算法均特别有效。
可将构成一视频程序的一种连续性数字视频帧的每一帧分类为一内部帧(I-frame),预测帧(P-frame),或B-帧。该项预测是根据连续帧之间的时间相互关连。在一段短时间内,各帧的一部分并非彼此不同。这些编码及解码方法则因每种型式的帧而具有差别。最简单的方法就是内部帧的方法,并继之以预测帧的方法,而后,才是B-帧的方法。
内部帧完全说明一单独帧而不涉及任何其他帧。就改良式误差掩盖言,可将运动矢量包含有一内部帧。一内部帧的一项误差对显示视频所具的影响可能较大,因为,预测帧及B-帧两者均是自一内部帧预测而来的。
预测帧均是根据先前的内部帧或预测帧所预测的。其参考均是自一较早内部帧或预测帧至一未来预测帧,所以,称为“向前预测”(forward prediction)。B-帧则是从最接近的较早内部帧或预测帧及最接近的较迟内部帧或预测帧所预测的。此种对一未来画面的参考(亦即,尚未被显示的画面)称为“向后预测”(backward prediction)。具有在增加压缩率时向后预测是极有用的案例。例如,在一其中一门开启的景象中,其当前帧可根据一其中一门早已开启的未来帧预测门后的景象。
B-帧会产生最多压缩但却亦包含最多误差。为消除误差传播,可能从未用其他B帧预测B帧。预测帧产生较少误差与更少压缩。内部帧所产生的压缩最少,但却能提供进入一视频序列的随机存取进入点。
被采纳用于将数字视频信号编码的一种标准为运动画面专家组(MPEG)标准以及更特别的MPEG-2标准。此种标准并未指定内部帧,预测帧及B-帧必须在一序列内采取的任何特别分配。取而代之的是,该标准容许诸项不同分配,以提供不同程度的压缩及随机存取度。一种通用分配为具有大约每半秒的内部帧以及连续的内部帧或预测帧之间的两个B-帧。为将预测帧解码,其先前的内部帧必须是现成可用的。同样,为将B-帧解码,这些先前及未来预测或内部帧必须是现成可用的。因此,才会按从属次序将这些视频帧编码,以便在自其预测这些帧以前,将用于预测的全部画面编码。可在文件MC68VDP/D中发现此种MPEG-2(及变通式数字密码二号[Di gi Ci pher II]标准)的进一步细节以及其在一视频解压缩处理器中的实施情况,该文件为摩托罗拉微处理器及存储技术集团1994年所发表及名称为“MPEG-2/DCII视频解压缩处理器”的活页预备资料,在此列入本文作为参考。
为将视频压缩实施在实际***中,每部数字电视接收机均需要一个解压缩处理器。超大规模集成电路(VLSI)的发展现在正进行中,以实施此种视频解压缩处理器。在诸如电视机等家电制品中,均必须将***组件的成本尽可能保持低廉。有关一视频解压缩处理器的重要成本之一就是(i)压缩以前缓冲压缩数据,(ii)将利用运动估计技术预测一当前帧所必需的先前帧数据予以储存,以及(iii)将解压缩数据在其输出至诸如一电视机,录相机等视频用品以前予以缓冲所需要的随机存取存储器(RAM)。
—MPEG-2或DCII解压缩处理器所必需且典型地用在外部动态随机存取存储器(DRAM)中的视频数据存储器的有效运用需要能采用最小量的存储同时并保持必需数据存取率(亦即,存储器频带宽)的一种设计。典型地,是将动态随机存取存储器编排为一种行(亦称为页“面”)及列的阵列。DRAM操作规则的一项为一项行地址的变动会导致新的行首批数据的缓慢存取。这样,为使DRAMI/O频带宽达到最大,故合适的作法为读取数据,以使它造成该行地址中的最小变化数量。这样,有利的方法为设计存储变换,以使行变动减至最少。为达成此种目标,有利的作法为按顺序存取随机存取存储器中所存储的数据。此种顺序性存取是快速的,所以,是理想的。在另一方面,行地址中可能要求时常变动的随机存取则是缓慢的,所以,也是不利的。
在一种视频解压缩处理器中,诸如符合这些运动画面专家组(MPEG)或数字密码器二号(DCII)标准的一种处理器,各种处理均必须DRAM存取。这些处理包含预测计算,显示,滤包器/视频先入先出(FIFO)写入,以及视频语法剖析/视频先入先出读取。必须将这些处理对该DRAM所作的存取请求排定优先次序并在一实际视频解压缩处理器中进行有效地伺服。虽然,理想地,是对全部处理立即提供存取,但实际上,只有一项处理能在任何给定的时间具有通至DRAM的存取。所以,有利的方式是将一种DRAM存储管理设计提供在一视频解压缩处理器中,此种管理设计排定DRAM存取的优先次序并使DRAMI/O频带宽达到最大情况。
本发明提供了一种具有上述优点的视频解压缩处理器,其中利用包含速率缓冲,最佳地址排序,取得统计平均值(亦即,在一个帧时间内将一视频帧解码),DRAM请求仲裁,以及解码细节之间的信号交换等技术来改善DRAMI/O频带宽。
根据本发明,提供一种用以存储并随后读取来自一诸如动态随机存取存储器(DRAM)等随机存取存储器(RAM)的象素数据的方法,以减少必须将该(RAM)存储器的不同行(“页面”)定址的次数,以期自其取回该象素数据的一部分。这些取回部分有能力自该象素数据所表示的一先前视频帧重构一当前视频帧。将该先前视频帧作为多项画格(tiles)存储在该随机存取存储器中。每个画格大体上填充该随机存取存储器的不同行并对应于该视频帧具有其高度为M象素及其宽度为N象素的一不同段截。将一运动矢量解码,以确定该先前视频帧内的一预测区域的位置。该预测区域所具有的高度相当于H象素所占用的垂直空间及其宽度相当于W象素所占用的水平空间。如果该预测区域所包含的视频帧的画格在一个以上(亦即,在该随机存取存储器的一个行以上),才会在进行自每一后继的画格取回该预测区域所定界的象素数据以前,从该对应的RAM行取回来自该预测区域所定界的一个画格的全部象素数据。按此种方式才会从该随机存取存储器一次取回一页由该预测区域所定界的全部象素数据。由于每一画格均对于该RAM的一行,故此种技术才会使必须依次序将不同行定址的次数减至最少,以便从该存储器取回象素数据。
在一例示的具体实施例中,该预测区域比一个画格更小。这样,该预测区域的高度H小于一个画格的高度M。同样,该预测区域的宽度W小于一个画格的宽度N。在一优选实施例中,选择大小M及N,以使M∶N的比值近似H∶W的比值。在每一画格内均可从该预测区域所定界的部分以曲折的次序取回象素数据。
虽然与彩色数据的对应的亮度数据的画格分开来存储来自该先前视频帧的彩色数据画格,但却以和这些亮度画格一样的相同方式完成这些彩色画格的存储及取回。这样,才会将该彩色数据分配成画格,以使每一画格均填充该RAM的一行。好象这些亮度画格一样,亦可以一种曲折次序将这些彩色画格定址。
提供用以将一视频解压缩处理器的一随机存取存储器定址的装置,以减少必须被定址的随机存取存储器的不同行的数目,以取回用该象素数据所表示的一先前视频帧重构一当前视频帧框所必需的象素数据。提供用以分配该象素数据的装置,此种象素数据代表成为多个画格的先前视频帧。每一画格均包含一份大体上对应于该随机存取存储器的一单行容量的数据量。一名存储器管理者产生写入地址,用以在每行一格的基础上将这些画格写入在该随机存取存储器中。将一运动矢量解码器耦合起来,以接收与被压缩的当前帧视频数据相关的运动矢量。该运动矢量解码器将这些运动矢量解码,以决定该先前视频帧内的预测区域的位置。与该存储器管理者相关连的一预测地址产生器则可响应该运动矢量解码器,用以产生读取地址,以读取来自该RAM的预测区域内的象素数据。如果一预测区域所包含的视频帧的画格在一个以上,该存储器管理者以一种次序提供读取地址,那就是在前进至取回来自该预测区域所定界的任何其他画格的象素数据以前,取回来自该预测区域所定界的一个画格的全部象素数据。按此种方式可从该随机存取存储器一次一行地取回该预测区域所定界的全部象素数据,以使该随机存取存储器中的不同行的定址工作降低至最少的情况。
该存储器管理者对预测区域所能提供的读取地址是在每一独立画格内以一种曲折次序将一个以上的画格定界。而且,该随机存取存储器具有一条32位的数据总线,用以将数据写于其上以及自其读取数据。还可提供用以识别该随机存取存储器中所存储的象素数据行之间的垂直与水平“页面”界线的装置。此种识别装置是与该存储器管理者可操作地相结合的,以便当一预测区域包含该视频帧的一个以上画格时促进读取地址的产生。
在一优选实施例中,提供至少一个速率控制缓冲器,以缓和来自该随机存取存储器的数据输出。理想者为将需要对该RAM数据存取的每一项独立处理提供有一种微小先入先出,以充作为该项处理与存储器管理者之间的一速率控制缓冲器。
此外,还可提供装置,以监测该RAM中所存储数据的写入及读取工作。如果新的象素数据覆写该RAM中所存储且是显示所必需的象素数据,可对该监测装置响应的装置就会暂时停止对要被写入RAM中的新的象素数据的解码。
根据上文的说明,该随机存取存储器可被读取,以提供用于多个视频解码处理的数据。在此种情况中,存储器管理者则用一种不同优先次序进行每一视频解码处理。对每项不同解码处理所分配的优先次序将视该项处理的数据存取需求而定。
图1为根据本发明的一种视频解压缩处理器的方框图。
图2为表示如何根据本发明将一个亮度视频帧分成画格的示意图。
图3为一个亮度画格的示意图。
图4为一个彩色画格的示意图。
图5为一种最坏案例情况的构想图,其中来自一预测区域的数据读取需要四个不同存储行被存取。
图6至10为表示如何视一垂直页面界线位置而定可扫描一预测区域内的数据部分的示意图。
图11为根据本发明的一预测地址产生器的方框图。
图12为例示一种用以实施本发明的存储读取设计的程序流程图。
图1为含有一存储器管理者30的一种视频解压缩处理器的方框图,该管理者根据本发明将外部动态随机存取存储器22定址。一般表示为20的处理器为一种流水线处理器,其设计是将该传送层(亦即,控制及其他非视频信息)与经由端子10所输入的被压缩位流的视频层两者解码,该处理器有时被称为该视频处理器的“传输包接口”。
将一用户处理器接口提供在端子14处,以用于经由一M总线控制器50控制该视频数据处理器,该控制器构成处理器20中的各种寄存器。该M总线为一双线双向串联总线,以提供装置之间的数据交换的一种简单有效方法并可完全适合I2C总线标准。
经由地址线路24及数据线路26对动态随机存取存储器22提供一接口。在图1所示的特定实施例中,随机存取存储器22具有一9位地址端口及一32位数据端口。
就该解压缩重构视频提供一视频输出接口38,例如,可能该重构视频输出为一种标准CCIR(国际无线电咨询委员会)656,八位,27兆赫多工制亮度(Y)及彩色(Cr,Cb)信号。
可将一测试接口经由端子62提供至一传统JTAG(联合测试行动组)控制器60。JTAG是一种用于控制插件板级测试的标准化界线扫描方法,以检测封装及插件连接中的缺陷以及内部电路。
视频解压缩处理器20经由端子12接收一时钟信号。该时钟提供定时信息,例如用以使一传输语法剖析器32有能力从压缩位流输入中的传输包经由端子10恢复定时信息及视频信息。一获取及误差管理电路34则运用一视频语法剖析器40所检测的一程序时钟参考(PCR)及解码时间戳记(DTS),以使画面解码的起始同步。此电路设定垂直同步以及提供全部视频解码与显示功能的球面同步。
将该视频层由存储器管理者30在外部动态随机存取存储器22内所构成的一输入缓冲器(先入先出)中予以缓冲。视频语法剖析器40则经由存储器管理者30接收来自该DRAM FIFO的压缩视频数据输出,并且使运动矢量信息与说明视频信息的系数分离开来。并将这些系数由一Huffman解码器52,逆量化器54,以及反离散余弦变换(IDCT)处理器56予以处理。
将运动矢量恢复并用来使重构一当前视频帧所必需的先前解码视频帧定址。特别是一运动矢量解码器42将收自视频语法剖析器40的运动矢量解码并使它们通至一预测地址产生器44。该预测地址产生器提供经由存储器管理者30取回必需簧片(anchor)帧数据所需要的地址信息,以使预测计算器46有能力提供重构一当前帧块所必需的预测数据。差分解码器48将此种预测数据与解码系数数据合并,以提供解压缩视频数据。将此种解压缩数据经由存储器管理者30储存在DRAM22的适当的缓冲器中。
所应了解的是,运动矢量解码器42,预测地址产生器44,预测计算器46,差分解码器48,Huffman解码器52,逆量化器54及反离散余弦变换(IDCT)56所完成的视频解压缩处理均为传统的并为现有技术中的熟练技术人员熟知的。这些组件并未提供本发明的任何部分。
存储器管理者30预定有关外部DRAM地址及数据总线24、26的全部活动的时间并根据本发明将DRAM22作有效定址。该存储器管理者所确保的是,完全符合DRAM22的输入先入先出部分,视频语法剖析器40与视频重构电路36(以及预测计算器46和差分解码器48)的数据转移需求。该视频重构电路36计算一当前画面并***封闭式字幕,一垂直间隔测试信号(VITS)以及有关视频输出线路38的输出所用的测试模式数据。使该输出显示同步的方法是将该PCR与一显示时间戳记(PTS)比较。通过将一解码时间戳记(DTS)与该显示时间戳记比较,完成一视频帧的解码及显示何时必须开始的决定。
该存储器管理者还提供一项视解码模式而定的DRAM22先入先出部分的可变大小,例如,该解码模式可为NTSC(国家电视***委员会)或PAL(行相交替)具有或没有双向预测帧(B-帧)。该视频缓冲器控制所确保的是,DRAM22所提供的先入先出并非溢出或下溢。缓冲控制为一项包含PCR及DTS的***定时参数的函数。
DRAM22被例示为一外部存储器并可由多个DRAM芯片提供,诸如供一种8兆位实施情形用的2,4兆位(兆位,亦即,220位)DRAM或供一种16兆位实施情形用的4,4兆位DRAM。所应了解的是,在未来的实施情形中,以及当存储器技术进步时,才可将DRAM22提供为该视频解压缩处理器内的内部存储器。该DRAM被映象以提供该项压缩输入视频位流的各种解码和输出视频缓冲以及一种循环先入先出。亦可利用该DRAM来提供一测试模式缓冲器,一VITS缓冲器与一封闭式字幕显示再定序缓冲器以及储存适当显示这些解码视频帧所必需的不同画面结构数据。可经由存储器管理者30重新预置该DRAM,以便当修正诸如视频帧垂直大小,PAL或NTSC视频,测试模式,8或16兆位存储结构的出现,以及是否有B-帧存在等改变时,视需要提供不同的存储映象。
该存储器管理者30预定有关外部DRAM总线上的全部活动的时间表,包含输入先入先出,视频剖析器以及视频重构电路的数据转移需求在内。该存储器管理者也以一种传统方式完成必需的DRAM更新。例如,可同时更新2个或4个外部DRAM的每一个中的同一行。
可将一少量的先入先出提供为存储器管理者30与存取来自DRAM22的每一组件之间的一个速率流缓冲器。例如,视频语法剖析器40在经由存储器管理者30接收来自DRAM22的数据的路径中含有一微小速率流缓冲器。该视频语法剖析器偶而会需要一新的数据字。但是,当需要一新字时,该剖析器则必须立刻拥有它。否则,需要来自视频语法剖析器输出的下游处理就会处于闲置状况,而降低该视频解压缩处理器的效率。如果视频语法剖析器40每次需要一新的数据字时均要对DRAM提出单独的请求,就会产生一项缓慢随机存取的结果并且会延迟剖析处理。提供该项速率流缓冲器时会克服此种潜在问题。例如,如果能使该速率缓冲器保持20个字的DRAM数据,该视频语法剖析器将能获得它立即来自该速率流缓冲器的一新的数据字。当该速率流缓冲器达到某一预定空集层级时,才会命令存储器管理者30读取来自该RAM的更多数据。当侍服有关更多DRAM数据的请求时,按一种顺序短脉冲群(burst)读取数据并储存至该速率流缓冲器直至它填满为止。
该速率流缓冲器有助于DRAM I/O频带宽及解码器速率,因为,通常在该DRAM的同一行内,存取均依顺序并且是快速的,以及该剖析器很少会缺少数据。更特别的是,在该速流率缓冲器完全腾空以前,均可请求新的数据。
当将一股压缩位流输入至视频解压缩处理器20的端子10时,一次重构一个由该位流所代表的视频帧。初始时,均必须接收视频数据的一完全帧并存储在DRAM22中。后续视频帧用的信息则可包括一子集的完全视频帧,该子集当被加至来自该先前视频帧的预测数据(被存储在DRAM22中)时将会产生一完全帧的重构。当重构每一新的I或P视频帧时,均将它存储在DRAM22中,以用来作为重构该压缩位流中的数据所代表的一后续帧所必需的一簧片(anchor)帧以及用于按该视频顺序在适当时间进行显示。当重构每一B-帧时,将其存储以在适当时间进行显示。本发明所取得的实际改进,是在象素的矩形“预测区域”上完成来自DRAM22的存取数据的一大部分(亦即,大约80%)。在该例示的实施例中,每一预测区域均为9象素高乘以17象素宽。采用此种大小的一预测区域(而非一8×16象素区域)时能使子象素内插得以完成,因为,是将一行和一列加至一组两个8×8象素的块。该预测区域的高对宽的比率(9∶17)为大约0.53。为将DRAM22定址时所必需的行交叉数目减至最小,要根据具有一类似高对宽的比率(例如,大约0.50)的画格将先前的帧数据存储在该DRAM中。根据本发明所可采用的一视频帧内的画格分配例示在图2中。
根据图2中的实例中所表示的,将一亮度NTSC视频帧70分成165个相等大小的“画格”(tiles)。每一画格72均是在两截(slice)4宏块的每一截片中含有8宏块(MB)。将这些165格编排组成一个15行的阵列,每一行均包括11画格。每一行均含有两截,故每一视频帧内共有30截。每一截片均包含44个宏块。由于具有165格且每一画格均含有8个宏块,故每一NTSC视频帧中共有1320个宏块。每一亮度宏块均包含四个8×8象素的块。每一象素均由8位的数据组成。划分该视频帧,以使每一画格均会包含DRAM22的一行中所可保持的数据量。所应了解的是,采用相同基本原理的其他电视格式(例如,PAL或SECAM)将会得到稍为不同规格的结果。
在该例示的实施例中,DRAM22的每一行均保持512个32位字共计16,384位。这样,该视频帧的每一画格72亦应包含16,384位。由于每一宏块均包含四个8×8象素块,故该宏块由256个8位象素组成,总计每宏块2,048位。每画格均包含8个这样的宏块,共计16,384位。这样,图2所示亮度视频帧的每一画格72的映象才会等于DRAM22的一行。
图3更详细例示一个亮度画格。如图所示,该亮度画格由该视频帧的两个不同截片部分组成。每一截片部分中均提供有四个宏块(每个宏块均包含4个8×8亮度块)。由于每一DRAM位置均存储一个32位的字,故可将四个8位亮度象素(Y)存储在每个DRAM位置中,和图3中的四个象素字80所例示的情形一样。根据先前的说明,该DRAM的每一行中均具有512列,每一列均可被16进RAM地址0-1FF的一个接通。
除了每一视频帧均包含和一半一样多的彩色信息作为亮度信息外,还同样处理该彩色数据。所以,根据图4的例示,每一彩色画格82均包含来自该视频帧的四个截片部分,每一截片部分均包含四个彩色宏块。这些彩色宏块均为这些亮度宏块的一半大小,所以,取代每一画格的8个宏块,一彩色画格包含16个宏块。象这些亮度画格一样,每一彩色画格的映象均等于DRAM22的一行。在一种较佳实施情形中,将DRAM22划分成用以存储该亮度数据及该彩色数据的独立区域并且这些色度段截一般为这些亮度段截大小的一半。根据该4象素字84所例示的,将该彩色数据储存为交替Cb及Cr彩色成分。
图5例示可如何利用本发明的每行映象的一个画格来使存储器行地址变动的数目减所需的最少的情况,以期从该DRAM读取一预测区域内的一组象素。现将四个相邻画格74,75,77和79的一部分(自图2视频帧70的左上角起)例示在图5中。为简单起见,将画格74的全部例示在图5中,但只表示画格75,77及79的一部分。画格74,75,77和79的垂直交叉点均沿着DRAM22的一垂直“页面”界线92,这些画格的水平交叉点均沿着该DRAM的水平“页面”界线94。由于将一个画格存储在DRAM22的每一行(亦即,“页面”)中,故每次越过一垂直或水平页面界线时均必须将该DRAM的一新的行定址。
为了自DRAM22中所储存的一先前帧的象素数据预测一当前帧的象素数据,应就当前帧中所要预测的每组象素自一预定预测区域读取这些先前的帧象素。利用与该压缩视频数据所一起传输的运动矢量以一种传统方式设置每组象素的预测区域。现将一最坏案例预测区域90例示在图5中。预测区域90代表一最坏案例方案,因为,它涵盖来自四个不同画格的象素。如果例如要通过简单地扫描其内部的连续行来读取此预测区域,那就必须重复横越重直页面界线92,从而接通该DRAM的不同行。此举会显著降低可自该DRAM读取数据的速率。
根据本发明,以一种方式扫描预测区域90,该种方式只需要四个DRAM行定址步骤,亦即,就该预测区域中所包含的每一画格74,75,77和79而言,只需要一个新的行地址一次而已。为期完成该方式,在前进至次一画格以前,均读取来自每一画格的全部数据。该特定具体实施例采用一种在该预测区域的左上角处开始的曲折扫描模式,以取回来自位于预测区域90内的画格74的全部数据。而后,再扫描包含该视频帧的画格75的DRAM22的行直至取回来自该画格的预测区域内部的全部数据为止。然后,才存取与画格77相对应的DRAM行并取回位于预测区域90内的画格77中的全部数据。最后,再读取包含画格79的DRAM行并就该画格取回预测区域内的全部数据。这样,不用重复读取该DRAM内的不同行,在该最坏案例中,则只需完成四次DRAM行读取,用以自一全部预测区域恢复数数据。
图6至10例示可如何扫描来自该预测区域的数据,视该垂直页面界线位于该预测区域内的情形而定。所应了解的是,图6至10所表示的实例仅供例示而已,并且可依据本发明采用许多其他扫描模式,在进行至次一画格以前,读取来自每一画格的全部数据,从而使该DRAM内的行读取数目达到最少情况。
在图6至10中,每一块120均代表来自一视频帧的一画格的一个4象素字。由参考编号100表示其垂直页面界线(对应于其中储存有该画格的DRAM中的一行变动)。在图6中,相关预测区域包含画格102的最后列以至画格104的首先四列。所应注意的是,就一处为9象素高及17象素宽的预测区域言,5个4象素宽的列(例如图6中所表示的)足够容纳该预测区域的宽度。这样,当该垂直页面界线100为图6所示的情形被设置时,可通过首先读取画格102中箭头103方向内的全部象素恢复该预测区域内的数据,而后,将包含画格104的DRAM行定址并以图中所例示的曲折方式扫描来自画格104的适用数据。
当该垂直页面界线100为图7所示的情形被设置时,则以图中所例示的曲折方式首先读取来自画格106的数据,而后,将包含画格108的行予以定址,以图中表示的曲折顺序读取来自画格108的数据。如果该垂直页面界线100为图8所例示的情形被设置,可以图中所示的次序自画格110读取数据,而后,自画格112读取数据。当该页面界线100为图9所示的情形被设置时,可以图中所例示的曲折顺序自画格114读取数据,而后,可使DRAM22包含画格116的行被定址,以便自其读取有关数据,和箭头115所例示的情形一样。在图10中提供有一实例,此处并无该预测区域内的垂直页面界线。其整个预测区域均位于该画格118内。这样,可以诸如图中所表示的曲折顺序的任何顺序读取数据。
所强调的是,图6至10中所例示的水平扫描顺序仅为一实例而已,并且可根据本发明同样易于采用诸如垂直扫描等其他技术。其主要条件为在横越此界线进入另一画格以前自一个画格读取全部数据。
图11为可根据本发明所采用的预测地址产生器44(图1)的一具体实施例的方框图。将该视频语法剖析器所剖析的来自压缩位流的运动矢量经由预测地址产生器44的端子130输入至一运动矢量分类器132。该运动矢量分类器以适当时间对这些正确运动矢量实施多工。一特定预测可采用高达6个不同组别(x及y)的运动矢量,视所采用的预测模式而定。根据这些MPEG及/或DCII标准可采用的不同预测模式的实例为预测帧,预测场,特别帧,特别场,B-帧(帧或场)及双主用模式。
在将这些运动矢量分类以后,将它们输入至一分页模式产生器134,以确定该当前预测区域的垂直页面界线所应在的位置(如果有的话)。可将该分页模式产生器所需要的起始地址以Verilog码表示如下:x_start_coord[9∶0]={mb_num[5∶0],4′ho}+selected_mvx[10∶1]式中“x_start_coord”为该预测象素的起始x座标(亦即,水平方向)。为了识别是否要使用内插法,特提供一“细粒”(subpel)位”。该项selected_mxv[0]就是该细粒位。在一优选实施例中,该细粒位就是该运动矢量的最低有效值(LSB),并于如果设定一项二进位“1”时,才使用内插法。现将全部可能的分页以及识别它们的码表示在下表中:
列表
在该表中,“X”表示一个4象素字以及“|”表示一垂直分页的位置。由于一页面在水平方向内包含4个宏块,故可用“x_start_coord”的6个最低有效位及该细粒位(selected mvx[0])确定每一垂直分页的位置。
码 | 模式 |
0 | XXXX |
1 | X|XXX |
2 | XX|XX |
3 | XXX|X |
4 | XXXXX |
5 | X|XXXX |
6 | XX|XXX |
7 | XXX|XX |
8 | XXXX|X |
在一预测区域的任何垂直界线被设置以后,一x-y偏移产生器136建立一种扫描模式(图5至10中所例示的),以使将存储该预测数据的DRAM定址时所必需的行变动数目减至最少的情况。现将该x-y偏移产生器的操作情形更详细地参照图12说明于下。
致能逻辑140响应通至端子138的各种信号输入。这些信号包含宏块数目,块数目,所使用的根据运动补偿的场或帧,一运动矢量计数与一截片同步信号,以及确定使用中的预测模式为那一种模式的信息。将该当前截片数目经由端子150直接输入至一x及y座标产生器148,其亦接收来自该x-y偏移产生器136,一块计数器142,一宏块计数器144以及一跳越宏块计数器146的输出。可将该x及y座标产生器的操作以verilog码表示如下:x_coord[9∶0]={mb_num[5∶0],4′ho}+selected_mvx[10∶1]+x_offset如果(chroma_mode){y_coord[9∶0]={1′b0,slice_num,fr_b-num,2′h0)+{{4{selected_mvy[7]}},selected_mvy[6∶1]}+sc_y_offset},不然就是{y_coord[9∶0]={slice_num,fr_b_num,3′h0}+{{4(selected_mvy[7]}},selected_mvy[6∶1]}+sc_y_offset,其中slice_num为slice_vertical_position-1;“fr_b_num”(1位)只在该视频数据的帧模式处理中以及当正在处理该宏块的第二双块对的时候才会为高;以及“sc_y_offset”就是“y_offset<<frame_mode”。所应注意的是,在彩色(Chroma)模式中,必须将这些运动矢量被换算以2的因子。这样,如果亮度运动矢量所具有的数值为2时,则该运动矢量所具有的数值就彩色言为4
块计数器142计数该宏块中的块总数。该计数器包含必需予以反馈的块总数,用以求得B-帧,特别预测(DCII)以及双主用预测模式等中的平均值。块计数器142为三位宽并计数该宏块内的成对的双8×8块,包含这些内插块在内。它被用来确定应适用那些运动矢量以及何时正在处理该彩色数据。
该宏块计数器并追踪该截片中的宏块数目并提供产生该x_coord所必需的mb_num。并对每宏块首部增量一次以及复位至在每一截片开始处所接收的宏块数目。该跳越宏块计数器计数如果一误差已发现在该接收数据中时必须跳越的宏块数目。当跳越一宏块时,该预测地址产生器将求出该运动矢量的零值,以供当采用一B帧预测模式时预测或复用先前宏块运动矢量之用。同时并重新调整该块计数器,以使求得平均值所必需的块数目减至最少的情况。
图12为例示x-y偏移产生器136所用程序的流程图,以实施本发明的存取读取方案。该程序以方框160开始并通至方框162,在此处确定一关于一同步脉冲(“2blk_sync”)是否已到达,以表示该预测区域内的次对预测数据的开始。若否,该程序返回至方框162的顶部直至一“2blk_sync”脉冲到达为止。当此发生时,如在方框164所示,将x_offset及y_offset置于0位。这些偏移均自该预测区域中的左上方象素被测量的。
在方框166处,确定预测区域中是否具有一垂直分页。若否(no_page-brk=yes),在方框168处确定当前的4象素字是否为该预测区域内的一水平行象素中的最后字。若是(x_offset_end=yes),在方框170处确定该字是否亦为该预测区域内的垂直方向中的最后字。若是这样(y_offset_end=yes),已就该预测区域取回全部象素数据以及该程序回至方框162,以等待次一成对块的到达。否则,在方框172处,该x_offset被回至零并使y_offset增量了1,因而,可读取该预测区域内的下一行象素数据。由于该程序的此一部分关于其中没有供处理用的垂直分布的预测区域,故该象素数据的曲折扫描将会持续进行,和图10中所例示的情形一样。这样,在该预测区域内的每一水平行的终点处,将该DRAM定址,以读取来自次一行的第一字。当读取该数据是自该预测区域内的一行起点前进至该行终点时,将会使该x_offset增量了1,和图12的方框174处所表示的情形一样。
如果具有一分页有困难(no_page_brk=no)时,该程序将自方框166通往方框176,于此处确定是否现在正读取来自该垂直分页的右手侧的象素,例如,来自图6的页面104。如是这样,该程序在方框190处继续进行,于此处确定是否已到达该预测区域内的当前行终点(x_offset_end=yes)。如是这样,在方框194处确定是否已读取该预测区域中的最后行(y_offset_end=yes)。如是这样,就将已读取该预测区域内的全部象素以及该程序回至方框162。不然,具有要被读至该预测区域内的分页右方的附加行以及在方框196处将该x_offset设定至该页面界线右方的第一字(x_offset_reg)并且使该y_offset增量了1(y_offset=y_offset+1)。如果方框190确定该预测区域的当前行内具有所要读取的附加字,则在方框192处使该x_offset增量了1(x_offset=x_offset+1)。
如果该程序的方框176确定现正读取来自一分页的左边(例如,来自图7所示页面106的部分)的数据,则在方框178处确定是否已自该当前行读取该分页以前的最后字。若否,在方框180处使x_offset增量了1。如果刚好已读取该分页以前行的最后字,那么,在方框182处确定是否已处理该预测区域的最后行(亦即,y_offset_end=yes)。若否,则在方框184处将该x_offset回至零(该预测区域内的一水平行的第一字)并使该y_offset增量了1。如果在另一方面已读取来自一分页的左手侧边的全部象素(例如,来自图7的页面106),则必需交越该分页,以扫描该分页右方的预测区域部分(例如,来自图7所示的页面108)。为做到这点,在方框186处使该x_offset增量了1(该分页的右方)以及将该y_offset设回至零(该预测区域内的新画格的左上方字)。同时并将x_offset_reg设定至x_offset,以使来自每一后续行的数据读取均会恰好在该分页的右方开始。
根据上文的表示,图12的程序实施图6至10中所例的曲折扫描指令。当然可将其他程序予以取代,以实施不同扫描指令。根据本发明采用的任何扫描指令将会一次一画格地读取一预测区域内的数据,以使必须交越一分页的次数减至最少情况,从而使必须在储存象素数据的随机存取存储器中被定址的新页(亦即,行)数目减至最小情况。
为了依实时原则将视频帧解码并显示,将资料写入DRAM22中及自其读取时均需要调整解码速率。否则,在显示它以前,可能会覆写该DRAM中所储存供显示用的数据。这样,在将该帧解码可以开始以前,需等待至一视频帧的DTS所规定的时间为止。如果在DRAM22内指定正被解码的视频帧作一段循环缓冲,不能容许其垂直位置超过来自“最后显示场”被当前显示行的垂直位置(加上某些速率流缓冲作用)的一截片的解码。该最后显示场就是当前正被显示的一视频帧的最后场。该场可能为该视频帧的场1或场2,视例如是否将一3∶2下拉(pull down)顺序正使用于胶片模式处理的情形而定。其速率流缓冲作用仅包括被加至存储一全视频帧所必需的以外的环式缓冲的某些额外行。该速率流缓冲器用途是当将该画面的一容易部分解码时容许该解码器向前进行,因而,如果遇到一困难视频部分时,使该解码器不会落后。这会避免该***企图显示尚未经完全解码的数据的状况。
为防止覆写显示所仍然需要的数据,获取及误差管理电路34(图1)经由存储器管理者30监测DRAM22中所储存的数据的写入和读取。如果被解码数据接近覆写显示所必需的DRAM中所储存的象素数据,电路34将会指示视频语法剖析器40暂时停止将新的象素数据解码直至有空间可供将被解码数据储存在DRAM22中为止。例如,可使解码停止的方法是通过抑制用来实施该视频语法剖析器的一状态机器。以此种方式新的象素数据才不会覆写显示所仍然必需的DRAM中所储存的象素数据。一旦经由视频重构电路36输出显示所需要的数据,会重新开始该项解码处理并将新的解码数据存储在DRAM22中的通过现在已被输出供显示用的数据而成为可用的空间内。
现在所应了解的是,本发明是提供一种使一视频解压缩处理器中的随机存取存储器频带宽的运用达到最佳情况的技术。速率缓冲最佳地址定序,求得统计平均值,存储请求的仲裁以及解码细部处理之间的信号交换等均可全部采用,以达到此种最佳情况。本发明的地址定序设计是当读取来自一预测区域的预测数据时使必须在该存储器内被定址的行数目减至最小的情况。根据本发明所采用的求取统计平均值则是分配整个帧的时间,以将视频数据的每一帧解码。所有存取该存储器的处理的速率缓冲能使存储器存取被有效地伺服。DRAM存取请求的优先次序化是对数据最为密集的处理提供必需的频带宽,同时有较少的数据密集处理仍在等待中。信号交换促成需要可变时间的处理,以便以一种及时方式对后续处理提供数据。
虽然已就不同特定具体实施例说明本发明,但所应了解的是,可对其完成各种适应及变型而未脱离由所附权项所定的本发明的精神及范围。
Claims (13)
1、一种用以存储并随后读取来自一随机存取存储器(RAM)的象素数据的方法,以减少必须将该RAM的不同行定址的次数,以自其取回所述象素数据的一部分,所述取回部分具有用该象素数据所表示的一先前视频帧重构一当前视频帧的能力,该方法所包括的步骤为:
将所述先前视频帧存储在所述RAM中作为多个画格,每一画格大体上均填充该RAM的一不同行并对应于所述视频帧的一不同段截,其高度为M个象素及宽度为N个象素;
将一运动矢量解码,以确定所述先前视频帧内的一预测区域的位置,所述预测区域所具有的高度相当于H个象素所占用的垂直空间以及其宽度相当于W个象素所占用的水平空间;以及
如果所述预测区域所包含的所述视频帧的所述画格在一个以上,在进行至取回该预测区域与每一后续画格所界定的象素数据以前,取回该预测区域与一个画格所界定的全部象素数据,直至一次一个画格地取回该预测区域所界定的全部象素数据为止。
2、根据权利要求1的方法,其中所述预测区域小于一画格,以使H<M及W<N。
3、根据权利要求2的方法,其中所选择的大小M及N,须使M∶N的比值近似H∶W的比值。
4、根据权利要求1的方法,其中所选择的大小M及N,须使M∶N的比值近似H∶W的比值。
5、根据权利要求1的方法,其中所述取回步骤所包括的步骤为以一种曲折次序取回该预测区域中每一独立画格所界定的象素数据。
6、根据权利要求1的方法,其中与彩色数据的对应的亮度数据的画格分开来存储来自该先前视频帧的彩色数据画格,但却以和这些亮度画格一样的相同方式完成这些彩色画格的存储及取回。这样,才会将该彩色数据分配成画格,以使每一画格均填充该RAM的一行。好象这些亮度画格一样,亦可以一种曲折次序将这些彩色画格定址。
7、一种用以将一视频解压缩处理器的一随机存取存储器(RAM)定址的装置,以减少必须将该RAM的不同行定址的次数,以取回用该象素数据所代表的一先前视频帧重构一当前视频帧所需要的象素数据,该装置包括:
用以将代表所述先前视频帧的象素数据分配成多个画格的装置,每一画格所包含的数据量大体上均对应于所述RAM的一单独行的容量;
一用以产生写入地址的存储器管理者,用以将所述画格依每行一个画格的原则写入所述RAM中;以及
耦合以接收与压缩当前视频帧数据相关连的运动矢量的一运动矢量解码器,用以将所述运动矢量解码,以确定所述先前视频帧内的预测区域的位置;
所述存储器管理者与一响应所述运动矢量解码器的预测地址产生器相关连,用以产生自所述RAM读取所述预测区域内的象素数据的读取地址;
其中如果一预测区域所包含的视频帧的所述画格在一个以上,则在前进至从该预测区域所界定的任何其他画格以前,所述存储器管理者以一种从该预测区域所界定的一个画格取回全部象素数据的次序提供所述读取地址,直至已一次一个画格地取回该预测区域所界定的全部象素数据为止。
8、根据权利要求7的装置,其中所述存储器管理者提供预测区域的所述读取地址,其以一种曲折次序将每一独立画格内的一个以上的画格包围起来。
9、根据权利要求7的装置,其中所述RAM具有一条32位数据总线,用以将数据写于其上及自其读取数据。
10、根据权利要求7的装置,进一步包括用以识别所述RAM中所储存的象素数据的画格之间的垂直及水平界线的装置,所述识别装置与所述存储器管理者可操作地结合起来,以便当一预测区域所包含的所述视频帧的画格在一个以上时,促进所述读取地址的产生。
11、根据权利要求7的装置,进一步包括至少一个速率控制缓冲器,该缓冲器与自所述RAM输出的缓冲数据相耦合。
12、根据权利要求7的装置,进一步包括:用以监测所述RAM中所储存数据的写入及读取的装置;以及
响应所述监测装置的装置,用以如果所述新的象素数据覆写所述RAM中所储存且是显示所必需的象素数据时暂时停止将所要予以写入所述RAM中的新象素数据的解码。
13、根据权利要求7的装置,其中所述RAM被读取以提供多项视频解码处理用的数据,以及所述存储器管理者是用一种视每一所述解码处理的数据存取需求而定的不同优先次序进行每一所述解码处理。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29037294A | 1994-08-15 | 1994-08-15 | |
US290,372 | 1994-08-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1121673A true CN1121673A (zh) | 1996-05-01 |
CN1110965C CN1110965C (zh) | 2003-06-04 |
Family
ID=23115695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN95108646A Expired - Fee Related CN1110965C (zh) | 1994-08-15 | 1995-08-14 | 视频解压缩处理器中存储器的定址方法及装置 |
Country Status (12)
Country | Link |
---|---|
US (1) | US5675387A (zh) |
EP (1) | EP0697794B1 (zh) |
JP (1) | JPH08195960A (zh) |
KR (1) | KR100376207B1 (zh) |
CN (1) | CN1110965C (zh) |
AU (1) | AU688521B2 (zh) |
BR (1) | BR9503640A (zh) |
CA (1) | CA2155260C (zh) |
DE (1) | DE69526470T2 (zh) |
HK (1) | HK1012140A1 (zh) |
NO (1) | NO953193L (zh) |
TW (1) | TW245871B (zh) |
Families Citing this family (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2438184T3 (es) * | 1993-03-24 | 2014-01-16 | Sony Corporation | Método de codificación y decodificación de vector de movimiento y aparato asociado y método de codificación y decodificación de señal de imagen y aparato asociado |
EP0710033A3 (en) * | 1994-10-28 | 1999-06-09 | Matsushita Electric Industrial Co., Ltd. | MPEG video decoder having a high bandwidth memory |
US5946044A (en) * | 1995-06-30 | 1999-08-31 | Sony Corporation | Image signal converting method and image signal converting apparatus |
EP0793389B1 (en) * | 1996-02-27 | 2001-08-16 | STMicroelectronics S.r.l. | Memory reduction in the MPEG-2 main profile main level decoder |
EP0793390A3 (fr) * | 1996-02-28 | 1999-11-03 | Koninklijke Philips Electronics N.V. | Dispositif de décodage de signaux de type MPEG |
KR100194039B1 (ko) * | 1996-04-19 | 1999-06-15 | 윤종용 | 엠펙 시스템의 우선순위 처리회로 |
US5854757A (en) * | 1996-05-07 | 1998-12-29 | Lsi Logic Corporation | Super-compact hardware architecture for IDCT computation |
DE69614675T2 (de) * | 1996-06-28 | 2001-12-06 | Stmicroelectronics S.R.L., Agrate Brianza | MPEG-2 Dekodierung mit reduziertem RAM Bedürfnis durch ADPCM Rekomprimierung vor der Speicherung von dekomprimierten MPEG-2 Daten, wahlweise nach einem Unterabtastungsalgorithmus |
JP3825888B2 (ja) * | 1996-07-19 | 2006-09-27 | キヤノン株式会社 | 信号処理装置/方法及びメモリ記憶方法 |
CN1162010C (zh) * | 1996-08-29 | 2004-08-11 | 松下电器产业株式会社 | 图象译码设备和图象存储器 |
US6028635A (en) * | 1996-12-03 | 2000-02-22 | Stmicroelectronics, Inc. | Reducing the memory required for decompression by storing compressed information using DCT based techniques |
US6005624A (en) * | 1996-12-20 | 1999-12-21 | Lsi Logic Corporation | System and method for performing motion compensation using a skewed tile storage format for improved efficiency |
US5883679A (en) * | 1997-02-20 | 1999-03-16 | C-Cube Microsystems, Inc. | Scanning scheme for images stored in dynamic random access memory |
GB2329802B (en) * | 1997-06-28 | 1999-08-18 | United Microelectronics Corp | Adaptive-selection method for memory access priority control in MPEG processor |
WO1999016252A1 (en) * | 1997-09-19 | 1999-04-01 | Sony Electronics Inc. | Motion compensated digital video decoding with buffered picture storage memory map |
US6088047A (en) * | 1997-12-30 | 2000-07-11 | Sony Corporation | Motion compensated digital video decoding with buffered picture storage memory map |
US6215822B1 (en) | 1997-12-30 | 2001-04-10 | Sony Corporation | Motion compensated digital video decoding and buffer memory addressing therefor |
NL1007453C2 (nl) * | 1997-11-05 | 1999-05-07 | United Microelectronics Corp | Zich aanpassende kieswerkwijze voor het regelen van de geheugentoegangsprioriteit in een MPEG-processor. |
US6028612A (en) * | 1997-11-18 | 2000-02-22 | Stmicroelectronics, Inc. | Picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences |
US6104416A (en) * | 1997-11-18 | 2000-08-15 | Stmicroelectronics, Inc. | Tiling in picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences |
US6198773B1 (en) * | 1997-12-18 | 2001-03-06 | Zoran Corporation | Video memory management for MPEG video decode and display system |
KR100282389B1 (ko) * | 1997-12-31 | 2001-02-15 | 구자홍 | 에이치디티브이 비디오 디코더의 메모리 제어 방법 |
US6823016B1 (en) * | 1998-02-20 | 2004-11-23 | Intel Corporation | Method and system for data management in a video decoder |
CA2267870A1 (en) * | 1998-04-01 | 1999-10-01 | Scott Hartog | A linear surface memory to spatial tiling algorithm/mechanism |
US6310919B1 (en) * | 1998-05-07 | 2001-10-30 | Sarnoff Corporation | Method and apparatus for adaptively scaling motion vector information in an information stream decoder |
US6567981B1 (en) | 1998-08-03 | 2003-05-20 | Elysium Broadband Inc. | Audio/video signal redistribution system |
US6791625B1 (en) * | 1998-12-15 | 2004-09-14 | Matsushita Electric Industrial Co., Ltd. | Video processing apparatus for performing address generation and control, and method therefor |
FR2787669B1 (fr) * | 1998-12-22 | 2001-03-02 | Thomson Multimedia Sa | Procede d'adressage pour la memorisation de blocs d'image |
US6377713B1 (en) | 1999-01-27 | 2002-04-23 | General Instrument Corporation | Synchronous DRAM bandwidth optimization for display downsizing of an MPEG-2 image |
US6115072A (en) * | 1999-01-27 | 2000-09-05 | Motorola, Inc. | 16:9 aspect ratio conversion by letterbox method for an MPEG image |
JP2001157204A (ja) * | 1999-11-25 | 2001-06-08 | Nec Corp | 動画像復号化方法及び装置 |
KR100349058B1 (ko) * | 2000-06-15 | 2002-08-21 | (주)씨앤에스 테크놀로지 | 영상압축복원장치 |
US6724818B1 (en) * | 2000-07-17 | 2004-04-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Alternative block orders for better prediction |
EP1185109A1 (de) * | 2000-08-10 | 2002-03-06 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur Speicherung von Videobildern sowie Mobilfunkgerät |
US7225320B2 (en) * | 2000-12-28 | 2007-05-29 | Koninklijke Philips Electronics N.V. | Control architecture for a high-throughput multi-processor channel decoding system |
EP1231793A1 (en) * | 2001-02-09 | 2002-08-14 | STMicroelectronics S.r.l. | A process for changing the syntax, resolution and bitrate of MPEG bitstreams, a system and a computer program product therefor |
EP1231794A1 (en) * | 2001-02-09 | 2002-08-14 | STMicroelectronics S.r.l. | A process for changing the resolution of MPEG bitstreams, a system and a computer program product therefor |
TW515952B (en) * | 2001-04-23 | 2003-01-01 | Mediatek Inc | Memory access method |
US8401084B2 (en) * | 2002-04-01 | 2013-03-19 | Broadcom Corporation | System and method for multi-row decoding of video with dependent rows |
US8037261B2 (en) | 2002-06-12 | 2011-10-11 | International Business Machines Corporation | Closed-loop system for dynamically distributing memory bandwidth |
JP4496209B2 (ja) | 2003-03-03 | 2010-07-07 | モービリゲン コーポレーション | メモリワードアレイ構成およびメモリアクセス予測結合 |
US8428349B2 (en) * | 2003-05-21 | 2013-04-23 | Broadcom Corporation | Method and apparatus for DRAM 2D video word formatting |
US7715479B2 (en) * | 2003-07-21 | 2010-05-11 | International Business Machines Corporation | Power-aware on-chip memory management for video coding algorithms |
US7400683B2 (en) * | 2003-11-18 | 2008-07-15 | Lsi Corporation | Device with virtual tilized image memory |
KR20050078706A (ko) * | 2004-01-31 | 2005-08-08 | 삼성전자주식회사 | 메모리 액세스 방법 및 메모리 액세스 장치 |
US8948263B2 (en) * | 2004-02-03 | 2015-02-03 | Broadcom Corporation | Read/write separation in video request manager |
US20050232355A1 (en) * | 2004-04-15 | 2005-10-20 | Srinivas Cheedela | Video decoder for supporting both single and four motion vector macroblocks |
US8861600B2 (en) * | 2004-06-18 | 2014-10-14 | Broadcom Corporation | Method and system for dynamically configurable DCT/IDCT module in a wireless handset |
JP4909779B2 (ja) * | 2006-04-17 | 2012-04-04 | パナソニック株式会社 | 画像データ転送方法、画像処理装置、及び撮像システム |
JP2007300396A (ja) * | 2006-04-28 | 2007-11-15 | Matsushita Electric Ind Co Ltd | 映像再生装置 |
US7768520B2 (en) * | 2006-05-03 | 2010-08-03 | Ittiam Systems (P) Ltd. | Hierarchical tiling of data for efficient data access in high performance video applications |
FR2902906A1 (fr) | 2006-06-21 | 2007-12-28 | St Microelectronics Sa | Gestion de donnes pour un traitement d'images |
US20080158601A1 (en) * | 2006-12-29 | 2008-07-03 | Steven Tu | Image memory tiling |
WO2010014696A1 (en) * | 2008-07-29 | 2010-02-04 | Marvell World Trade, Ltd. | Processing rasterized data |
US8127058B1 (en) * | 2008-07-29 | 2012-02-28 | Marvell International Ltd. | System and method of video decoding using hybrid buffer |
KR101661931B1 (ko) * | 2010-02-12 | 2016-10-10 | 삼성전자주식회사 | 3차원 그래픽스 랜더링 장치 및 그 방법 |
WO2013173292A1 (en) | 2012-05-14 | 2013-11-21 | Motorola Mobility Llc | Scalable video coding with enhanced base layer |
US10085016B1 (en) | 2013-01-18 | 2018-09-25 | Ovics | Video prediction cache indexing systems and methods |
US9762919B2 (en) * | 2014-08-28 | 2017-09-12 | Apple Inc. | Chroma cache architecture in block processing pipelines |
TWI681362B (zh) * | 2018-03-01 | 2020-01-01 | 瑞昱半導體股份有限公司 | 有限記憶體頻寬系統及其動態限制圖形處理器的記憶體頻寬的方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03238990A (ja) * | 1990-02-15 | 1991-10-24 | Canon Inc | メモリ制御回路 |
US5091782A (en) | 1990-04-09 | 1992-02-25 | General Instrument Corporation | Apparatus and method for adaptively compressing successive blocks of digital video |
US5068724A (en) | 1990-06-15 | 1991-11-26 | General Instrument Corporation | Adaptive motion compensation for digital television |
US5093720A (en) | 1990-08-20 | 1992-03-03 | General Instrument Corporation | Motion compensation for interlaced digital television signals |
JPH04139986A (ja) * | 1990-09-29 | 1992-05-13 | Victor Co Of Japan Ltd | 画像信号の動き補償予測符号化/復号化装置 |
US5293593A (en) * | 1990-10-11 | 1994-03-08 | Hewlett-Packard Company | Method and apparatus for the mapping of physically non-contiguous memory fragments to be linearly addressable |
US5057916A (en) | 1990-11-16 | 1991-10-15 | General Instrument Corporation | Method and apparatus for refreshing motion compensated sequential video images |
JPH04207788A (ja) * | 1990-11-30 | 1992-07-29 | Sony Corp | 画像信号符号化装置及び方法 |
CA2062200A1 (en) * | 1991-03-15 | 1992-09-16 | Stephen C. Purcell | Decompression processor for video applications |
AU657510B2 (en) * | 1991-05-24 | 1995-03-16 | Apple Inc. | Improved image encoding/decoding method and apparatus |
US5235419A (en) | 1991-10-24 | 1993-08-10 | General Instrument Corporation | Adaptive motion compensation using a plurality of motion compensators |
US5315388A (en) * | 1991-11-19 | 1994-05-24 | General Instrument Corporation | Multiple serial access memory for use in feedback systems such as motion compensated television |
US5379070A (en) * | 1992-10-02 | 1995-01-03 | Zoran Corporation | Parallel encoding/decoding of DCT compression/decompression algorithms |
US5386233A (en) * | 1993-05-13 | 1995-01-31 | Intel Corporation | Method for efficient memory use |
US5406311A (en) * | 1993-08-25 | 1995-04-11 | Data Translation, Inc. | Storing a digitized stream of interlaced video image data in a memory in noninterlaced form |
US5398072A (en) * | 1993-10-25 | 1995-03-14 | Lsi Logic Corporation | Management of channel buffer in video decoders |
-
1994
- 1994-09-29 TW TW083108999A patent/TW245871B/zh active
-
1995
- 1995-07-31 AU AU27291/95A patent/AU688521B2/en not_active Ceased
- 1995-07-31 EP EP95111990A patent/EP0697794B1/en not_active Expired - Lifetime
- 1995-07-31 DE DE69526470T patent/DE69526470T2/de not_active Expired - Fee Related
- 1995-08-02 CA CA002155260A patent/CA2155260C/en not_active Expired - Fee Related
- 1995-08-14 CN CN95108646A patent/CN1110965C/zh not_active Expired - Fee Related
- 1995-08-14 NO NO953193A patent/NO953193L/no unknown
- 1995-08-14 BR BR9503640A patent/BR9503640A/pt not_active IP Right Cessation
- 1995-08-14 KR KR1019950024966A patent/KR100376207B1/ko not_active IP Right Cessation
- 1995-08-15 JP JP7229723A patent/JPH08195960A/ja active Pending
-
1996
- 1996-07-25 US US08/687,319 patent/US5675387A/en not_active Expired - Lifetime
-
1998
- 1998-12-09 HK HK98113002A patent/HK1012140A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100376207B1 (ko) | 2003-05-01 |
AU2729195A (en) | 1996-02-29 |
TW245871B (en) | 1995-04-21 |
CA2155260C (en) | 2001-12-04 |
NO953193D0 (no) | 1995-08-14 |
CA2155260A1 (en) | 1996-02-16 |
AU688521B2 (en) | 1998-03-12 |
DE69526470T2 (de) | 2002-12-19 |
EP0697794A2 (en) | 1996-02-21 |
JPH08195960A (ja) | 1996-07-30 |
CN1110965C (zh) | 2003-06-04 |
HK1012140A1 (en) | 1999-07-23 |
EP0697794B1 (en) | 2002-04-24 |
US5675387A (en) | 1997-10-07 |
KR960009748A (ko) | 1996-03-22 |
EP0697794A3 (en) | 1998-04-29 |
NO953193L (no) | 1996-02-16 |
BR9503640A (pt) | 1996-05-28 |
DE69526470D1 (de) | 2002-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1110965C (zh) | 视频解压缩处理器中存储器的定址方法及装置 | |
EP0712249B1 (en) | Pixel interpolation filters for video decompression processor | |
US9172969B2 (en) | Local macroblock information buffer | |
US5717461A (en) | Dram mapping for a digital video decompression processor | |
US8068545B2 (en) | Method and apparatus for processing image data | |
US7130310B2 (en) | Statistical multiplex system, statistical multiplex controller and method of statistical multiplex | |
CN1155254C (zh) | 用于从mpeg-2位流中去除选择的用户数据的可编程滤波器 | |
EP1446953A2 (en) | Multiple channel video transcoding | |
US7227589B1 (en) | Method and apparatus for video decoding on a multiprocessor system | |
US20070171979A1 (en) | Method of video decoding | |
CN1164078C (zh) | 通过字母框法对mpeg图象作16∶9宽高比变换 | |
US6067321A (en) | Method and apparatus for two-row macroblock decoding to improve caching efficiency | |
US6205181B1 (en) | Interleaved strip data storage system for video processing | |
US7471298B1 (en) | Fetching pixel data with reduced memory bandwidth requirement | |
US7519115B2 (en) | Video compression method and apparatus | |
CN1127855C (zh) | 数字视频信号编码的方法和设备 | |
JP2002502159A (ja) | 高性能テレビジョン信号の符号化および復号化の方法と装置 | |
US8335256B2 (en) | Motion compensation in video coding | |
US7423652B2 (en) | Apparatus and method for digital video decoding | |
JPH1056641A (ja) | Mpegデコーダ | |
US20040120358A1 (en) | System and method for intraframe timing in multiplexed channel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent for invention or patent application | ||
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: GENERAL INSTRUMENT CORP. OF DELAWARE TO: GENERAL INSTRUMENT CO.,LTD. |
|
CP03 | Change of name, title or address |
Address after: American Pennsylvania Applicant after: General Instrument Corporation Address before: Illinois Applicant before: General Instrument Corp. of Delaware |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |