CN102970538A - 为运动补偿动态配置视频解码器高速缓存 - Google Patents

为运动补偿动态配置视频解码器高速缓存 Download PDF

Info

Publication number
CN102970538A
CN102970538A CN2012104649479A CN201210464947A CN102970538A CN 102970538 A CN102970538 A CN 102970538A CN 2012104649479 A CN2012104649479 A CN 2012104649479A CN 201210464947 A CN201210464947 A CN 201210464947A CN 102970538 A CN102970538 A CN 102970538A
Authority
CN
China
Prior art keywords
data
cache
speed cache
row
frame
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
Application number
CN2012104649479A
Other languages
English (en)
Other versions
CN102970538B (zh
Inventor
R.萨克纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN102970538A publication Critical patent/CN102970538A/zh
Application granted granted Critical
Publication of CN102970538B publication Critical patent/CN102970538B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0224Details of interlacing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0261Improving the quality of display appearance in the context of movement of objects on the screen or movement of the observer relative to the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/121Frame memory handling using a cache memory

Abstract

本发明的名称是为运动补偿动态配置视频解码器高速缓存。可以动态重新配置用于运动补偿数据的视频解码器高速缓存。在一些实施例中,可以在图片或帧边界上重新配置它,而在其他实施例中,可以在序列边界上重新配置它。可以在每个边界上刷新该高速缓存,以使这种重新配置能够实施。

Description

为运动补偿动态配置视频解码器高速缓存
本申请是申请日为2006年9月19日、申请号为200610139592.0、发明名称为“为运动补偿动态配置视频解码器高速缓存”的专利申请的分案申请。
技术领域
本发明涉及为运动补偿动态配置视频解码器高速缓存。
背景技术
本发明一般涉及视频压缩和解压。
可以压缩视频图像,以便可采用更紧凑且更有带宽效率的方式传送它们。一般来说,用于压缩的技术包括运动补偿。
为了压缩视频,一种算法检查图像帧的序列以测量帧与帧的差异,以便发送运动矢量信息。该运动矢量相对于正在编码或解码的块查找参考帧中的块。运动补偿是使用这样一种算法的帧间编码,该算法利用相邻视频帧之间的冗余性。
因为运动补偿需要存取大量数据,所以可能需要频繁存取系统存储器。系统存储器存取的需求越大,视频补偿和解压设备施加于主机系统上的工作负荷越高。此外,存取如系统存储器的外部存储器增加了视频压缩和解压设备的带宽需求。
发明内容
根据本发明的实施例,提供了一种方法,包括:
检测视频解码器要处理的运动补偿数据的类型;以及
针对要处理的不同数据类型不同地刷新视频解码器高速缓存。
根据本发明的实施例,提供了一种系统,包括:
高速缓存;以及
与所述高速缓存耦合的配置单元,所述配置单元根据要解码的数据的类型不同地刷新所述高速缓存。
根据本发明的第一方面,本发明涉及一种方法,包括:
检测视频解码器要处理的运动补偿数据的类型;以及
根据要处理的数据的类型动态地重新配置视频解码器高速缓存。
根据本发明的第二方面,本发明涉及一种方法,包括:
检测要在视频解码器中处理的数据是交错式(interlaced)还是渐进式数据;
根据上述数据是交错式还是渐进式数据,动态地重新配置上述视频解码器高速缓存。
根据本发明的第三方面,本发明涉及一种系统,包括:
高速缓存;以及
与上述高速缓存耦合的配置单元,上述配置单元根据要解码的数据的类型动态地重新配置上述高速缓存。
附图说明
图1是根据本发明一个实施例的主机系统的说明;
图2是根据本发明一个实施例的图1所示的主机系统所用的视频压缩和解压设备的描绘;
图3是根据本发明一个实施例、如何依据运动补偿数据的特征来配置高速缓存的图示描绘;
图4是根据本发明另一个实施例、可以依据运动补偿数据的特征来配置高速缓存的另一种方式的描绘;
图5是根据本发明一个实施例、可以在图2所示的系统中利用的配置单元的图示描绘;
图6是根据本发明另一个实施例、可以在图2所示的实施例中利用的配置单元的图示说明;
图7是根据本发明一个实施例的标记RAM的流程图;
图8是根据本发明另一个实施例的标记RAM的图示描绘;
图9是配置根据本发明一个实施例的视频解码器高速缓存的流程图。
具体实施方式
参考图1,基于处理器的系统400可以具有多种体系结构的其中之一,包括图1所示的一种体系结构。本发明决不局限于任何特定系统配置,包括图1所示的系统配置。例如,在一些体系结构中,可以利用多于一个的处理器。
在一些实施例中,举例说明,系统400可以在机顶盒、可以在多种基于处理器的系统中利用的芯片组或片上系统(SOC)中使用。系统400可以例如处理数字媒体,具体来说处理诸如流视频、数字视频磁盘媒体以及电视广播和卫星广播之类的数字视频媒体。
在一些实施例中,处理器402或在一些情况中的多处理器可以经总线400耦合到存储器集线器或北桥406。存储器集线器406可以耦合到本地总线404。在一些实施例中,存储器集线器406可以在处理器402、系统存储器总线408、加速图形端口(AGP)总线412和外设组件互连(PCI)总线424之间建立通信。AGP规范在美国加利福尼亚圣克拉拉的英特尔公司1996年7月31日发布的加速图形端口接口规范、修订版1.0中有详细描述(the accelerated graphics port interfacespecification,revision 1.0,published on July 31,1996,by IntelCorporation of Santa Clara,California)。PCI规范、修订版3.0可从美国俄勒冈州97214波特兰的PCI特殊兴趣组获取(the PCI special interestgroup,Portland,Oregon97214)。
诸如动态随机存取存储器(DRAM)的系统存储器410耦合到系统存储器总线408。系统400可以包括将显示器420耦合到AGP总线412的显示器驱动程序接口414。而且,在一些实施例中,网络接口卡(NIC)425可以耦合到PCI总线424。集线器链路430可以将存储器集线器406耦合到南桥或输入/输出(I/O)集线器434。例如,I/O集线器434可以提供硬盘驱动器442与数字视频盘(DVD)驱动器440之间的接口。而且,I/O集线器434可以提供至I/O扩充总线460的接口。在一些实施例中,I/O控制器462可以耦合到I/O扩充总线460,并可以提供从鼠标464以及键盘465接收输入数据的接口。
参考图2,存储器集线器406可以包括耦合到系统400的系统接口24。接口24耦合到处理视频压缩和解压的视频编码器/解码器(编解码器)20。在图2的实施例中,视频编码器/解码器20耦合到视频编解码器存储器集线器16。例如,视频编码器存储器集线器16可以耦合到总线32上的多种存储器装置。最后,在一些实施例中,存储器控制器单元14可以耦合到系统存储器410。在一些实施例中,存储器控制器单元14可以通过总线34耦合到其他存储器。当然,也可以使用多种其他体系结构。
视频编解码器20从分组基本码流(PES)分析器22接收视频数据。PES分析器22接收压缩的基本视频流,对其分析以从运动补偿数据中分离出某些信息,并将信息提供到视频编解码器20。它还将包括头信息的某些信息提供到包括在视频编解码器存储器集线器16中的配置单元36。在一些实施例中,配置单元36可以耦合到视频解码器高速缓存18。作为两个示例,高速缓存18可以是易失性或非易失性存储器,例如闪速存储器、静态随机存取存储器或动态随机存取存储器。
分析器22提供给配置单元36的信息类型的示例包括如交错式或渐进式的图片序列类型、依据高度和/或宽度的图片尺寸和帧或场解码设置、以及用于压缩或解压的当前活动块的行位置和列位置。渐进式扫描在一次扫描显示帧的所有行。交错式扫描扫描每个帧两次。一个场包括偶数行,构成帧的两个场的另一个场包括奇数行。
编解码器20可以具有将运动矢量转换成块地址的运动补偿单元。编解码器20对视频编解码器存储器集线器16发出块转移读取。视频编解码器存储器集线器16可以将块转移转换成各个存储器转移命令并在其高速缓存18中检查有效数据。
未高速缓存的数据导致向存储器控制器单元14发送存储器转移命令,用于从系统存储器410读取。高速缓存的数据由高速缓存18本身提供服务,因此通过免去对系统存储器410进行额外存取的需要来实现带宽节省。
视频编解码器存储器集线器16还可以经总线32对其他编解码器提供服务。同样地,存储器控制器单元14可以经总线34对如处理器402的其他装置提供服务。
视频编解码器存储器集线器16的配置单元36负责基于从分析器22接收到的数据的类型、例如图片类型参数(例如B-帧、P-帧)来配置高速缓存18。例如,根据运动补偿数据是交错式还是渐进式,或根据其他特征,配置单元36可以基于从分析器22接收的特征信息将高速缓存18重新配置为最好地容纳期望的数据。
例如,在一些实施例中,配置单元36仅可以在多个序列边界上重新配置高速缓存。多个序列边界可以包括许多具有某些共有运动补偿参数的帧或图片。一个序列边界是共有参数改变时两个连续帧或图片之间的点。在其他实施例中,配置单元36可以在图片或帧边界上重新配置高速缓存18。在一些实施例中,可以根据PES分析器22从基本视频流头移除的数据来确定序列或图片边界的位置。
为了在图片或序列边界上重新配置高速缓存18,在一些实施例中,期望在那些边界上从高速缓存18刷新运动补偿数据。在一些实施例中,可以实现刷新而不以显著的方式不利地影响高速缓存18的性能。因此,在一些实施例中,可以就要解码的下一个帧或图片,针对例如P或B类型图片的运动补偿数据的特定特征或属性来优化高速缓存的性能。可以基于输入图片特征标识允许实施动态配置的特定高速缓存参数。
因为视频图片的尺寸以及因为运动补偿算法跨图片数据并向下对图片数据执行,所以在在处理了图片下部时高速缓存18中图片上部的数据不可避免地被替换。在图片处理结束时,高速缓存18的内容在下一个图片开始时可能是不可用的。因此,在一些实施例中,可以全局性地刷新高速缓存,以使所有高速缓存行失效,并且可以以如下方式重新配置高速缓存18:可使其性能针对要解码的下一个图片的特定特征得以优化。
高速缓存18的性能可以取决于存储在空间上靠近的数据来增强高速缓存命中率的能力。高速缓存18越频繁地在任何特定时间具有编解码器20需要的信息,该高速缓存18就越有用,而且系统40越有效率。
视频帧是二维的,因此,结合运动补偿数据,对于视频帧,空间上相邻的数据意味着这些数据在水平和/或垂直方向上相邻。即在一些实施例中,就高速缓存优化的目的来说,来自相邻行或列的数据可能是在空间上相邻的。一般来说,如果将空间上相邻的数据存储在给定的高速缓存行中,则可以增强性能。
在一些运动补偿方案中,如VC-1或Microsoft
Figure BDA00002418795700061
Media9中,在垂直方向上什么数据在空间上最靠近的确切定义基于正在解码的图片的类型有所不同。
对于渐进式扫描序列,运动补偿逻辑引用(refer to)来自先前帧的数据,包括帧的两个场。因此,在此情况中,即使交替的数据行属于分离的场,在垂直方向上,来自参考帧中样本相邻行的数据在空间上仍是相邻的。
但是,对于交错式扫描序列,运动补偿逻辑引用分别来自一个或多个场的数据。如果引用多于一个场,则这些场属于不同的帧也是可能的。因此,在此情况中,在垂直方向上,来自参考场中样本相邻行的数据在空间上可以是相邻的。
因此,参考简化渐进式扫描示例的图3,可以将数据存储在两个高速缓存18行、命名为行0和行1中。以交错的方式将存储在存储器中的参考帧的两个场存储在共用缓冲器30中。上部场“T”由偶数编号的行0、2、4等组成,下部场“B”由奇数行1、3、5等组成,在一些情况中,高速缓存行可以是32个字节并且可以存储具有空间上相邻的行的16个样本。
空间上相邻可以意味着相同帧的相邻行。这样,空间上相邻的行属于相同帧的不同场。如果两个参考场被存储在外部存储器中分离的缓冲器或共用缓冲器中,则只要存储器控制器为每个场提取16字节的数据,则不成问题。
因此,高速缓存行0从垂直相邻的行2和行3接收数据。高速缓存行1从也是垂直相邻的行6和行7接收数据。
图4是交错式扫描数据的简化示例的说明。图4是将数据存储在两个高速缓存18行、行0和行1中的一个示例。将参考帧的两个场以交错的方式存储在共用缓冲器31中。上部场“T”包含偶数编号的行0、2、4等,下部场“B”包含奇数行1、3、5等。
在一个实施例中,高速缓存行可以是32字节,并存储来自空间上相邻的行的16个样本字节。在此情况中,空间上相邻意味着相邻的行来自相同场,空间上相邻的行属于该帧的相同场。
如果这两个参考场被存储在外部存储器中分离的缓冲器或共用缓冲器中,则只要存储器控制器提取来自两个场的数据,则不成问题。
在仅使用一个参考场来对图片编码或解码的情况中,如果使用先前的数据行分配,则意味着高速缓存空间的50%确切地被浪费,因为每个高速缓存行的一半是由不可使用的数据组成。如图4所示,行0和2垂直地布置,但是垂直相邻的,而且都被置于行0中。相似地,行5和7被视为垂直相邻,而且被置于高速缓存的行1中。
因此,高速缓存18的配置可以根据是涉及交错式数据(如图4中的情况所示)还是涉及渐进式数据来更改(如图3中的情况所示)来更改。包括MCU14和VCMH16的存储器系统也可以配置为基于渐进式或交错式扫描来从相同场或相邻场提取数据。
在一些实施例中,配置单元36可以控制高速缓存18,具体来说控制如何寻址高速缓存18。例如如图5所示的配置单元36a接收图片序列类型,是交错式还是渐进式的。基于该信息,它适当地配置高速缓存18,例如如图3或4所示。在一个实施例中,配置单元36a可以包括由另一个处理器编程的一组寄存器。在交错式数据的情况中,编码器/解码器20按场而非按帧进行处理。每个帧有两个场。一次可以对一个场解码。当对场的一个块解码且必须检查前一个帧时,编码器/解码器20希望查看特定的场,而非整个帧。
在非交错式数据或渐进式数据的情况中,可以将两个场显示在一起。当编码器/解码器20正在对帧编码或解码时,它需要查看先前帧以便解码。
因此,参考图5,配置单元36a的输出可以是指示帧或场分配的信号,并且这些信号配置高速缓存行和存储器系统。
参考图6,根据本发明的另一个实施例,可以由控制200来控制配置单元36b。控制200可以是软件、硬件或固件。配置单元36b可以接收当前处理的数据块、如8×8、16×16或其他大小的数据块的行和列位置。这些行和列位置是所讨论的块的上方、最左方像素的位置。
在一些实施例中,配置单元36还可以从分析器22接收有关运动补偿数据是用于交错式还是渐进式扫描、包括高度和宽度的图片尺寸、帧或场解码以及是P图片还是B图片的信息。因此,在交错式扫描数据的情况中,数据总是使用场解码,但是在渐进式扫描的情况中,可以指定场解码或帧解码。
配置单元36b输出标记随机存取存储器(RAM)地址位。在一个实施例中,标记RAM地址位可以包含低阶列、低阶行和场选择位。它还输出高阶地址位用于标记比较。
由此,参考图7,过程200可以在软件、硬件或固件中实施。控制200开始于接收有关运动补偿数据的类型的PES分析器22信息,如框202所示。它还接收行和列位置信息,如框204所示。在一些实施例中,可以在查询表或寄存器中查询适合的配置,如框206所示。这样,可以适当地配置高速缓存18,如框208所示。可以输出标记地址位,如框210所示。
参考图8,在一个实施例中,可以寻址在高速缓存18外部或作为其一部分的标记RAM40,如图所示。标记RAM可以将数据存储在多个逻辑或物理槽(physical slot)中。槽存储的数据对应于低阶位正在存取的运动补偿数据的高阶地址位。标记RAM40在线44上接收低阶列位58、低阶行位60和场选择位62,并输出对应的高阶位。
在一些实施例中,可以利用单个场选择位62,并且在其他实施例中,可以利用两个场设置位。一个或多个场选择位62可以是指示是涉及低场还是高场以区分相邻场的相似数据的一个或多个位。
标记RAM40接收低阶列位和低阶行位,因为由于运动补偿数据的二维特性,行和列二者都可能是相邻的。比较器42接收存储在由低阶位选择的标记RAM槽中的高阶地址位。比较器42接收实际的高阶行和列地址位54和56以及基地址52。如果根据比较器42所判断的,线46上的高阶地址位与来自标记RAM40中的输出匹配,则检测到高速缓存命中,而且数据在数据高速缓存18中。相反,如果它们不匹配,则涉及高速缓存未命中,并且必须从如系统存储器410的外部存储器获取数据。
除了如高速缓存大小和关联性的高速缓存参数以外,用于寻址标记RAM40的列和行地址位的最优数量也是输入图片特征的函数,这些输入图片特征包括帧大小、图片类型等。典型实施可以使用一种表驱动的方法来调用用于生成标记RAM地址的最优列和行位分配。
对于交错式图片,可以为参考帧引用各个场。基于图片类型,可以引用1到4个场。例如在有场编码的P图片和场编码的B图片的情况中,可以涉及多于2个的场。但是,对于引用多个场的任何块的运动补偿,如下情况是可能的:正在多个场内从相似的偏移量(垂直和水平)提取数据。这增加了高速缓存冲突的可能性。
通过对标记RAM地址使用场选择位62,可以减少那些冲突,因为高速缓存的空间有效地变得分区成多个更小的空间并映射到分离的场或场集。该方法中折衷的是在减少冲突的同时,高速缓存的分区可能增加容量未命中。使用场选择位的决策,具体来说可以利用的场选择位的数量(0至2)可以基于输入图片类型参数,包括这些参数是渐进式的、交错式的、P还是B图片、图片尺寸以及高速缓存大小和关联性。一般来说,对于较低关联性高速缓存,随着越多高速缓存的基于场的分区,性能往往可能越好。
因此,参考图9,可以在软件、硬件或固件中实施的过程300开始于接收行和列低阶地址位以及场选择位,如框302所示。在标记RAM40中查找适合的地址,如框304所示。确切地来说,标识较低地址和场选择位的正确槽。
然后,输出存储在槽中的地址,从而给出高阶行和地址位,如框306所示。菱形框308处的检查指示输出位是否与线46上的高阶地址位匹配(图8)。如果它们匹配,则在框310中指示高速缓存命中,否则记录高速缓存未命中,如框312所示。在高速缓存未命中的情况中,存取外部存储器或系统存储器,而不是从高速缓存18快速存取信息。
在本说明书中对“一个实施例”或“实施例”的引用表示本发明内所涵盖的至少一个实施中包括结合该实施例描述的特定功能特征、结构或特征。因此,短语“一个实施例”或“在实施例中”的出现不一定系指同一个实施例。而且,可采用不同于说明的特定实施例的其他适合形式构成这些特定的功能特征、结构或特征,所有此类形式可以涵盖在本发明的权利要求中。
虽然本发明是针对有限数量的实施例来描述的,但是本领域技术人员将认识到源于此的多种修改和变化。所附权利要求要涵盖如落在本发明的真实精神和范围内的所有此类修改和变化。

Claims (17)

1.一种方法,包括:
检测视频解码器要处理的运动补偿数据的类型;以及
针对要处理的不同数据类型不同地刷新视频解码器高速缓存。
2.如权利要求1所述的方法,其中,检测数据的类型包括:检测所述数据是交错式的还是渐进式的。
3.如权利要求2所述的方法,包括从分组基本码流分析器接收信息以确定数据的类型。
4.如权利要求1所述的方法,其中,将所述高速缓存重新配置为存储来自扫描数据的连续相邻行的数据。
5.如权利要求3所述的方法,其中,将所述高速缓存配置为在一个高速缓存行中接收连续的偶数行,而在另一个高速缓存行中接收连续的奇数行。
6.如权利要求1所述的方法,包括接收块位置和所述块是交错式还是渐进式扫描的指示,并以低阶列和低阶行位的形式输出标记随机存取存储器地址位的指示。
7.如权利要求6所述的方法,包括使用所述低阶列和低阶行位来存取标记随机存取存储器,从所述标记随机存取存储器接收高阶行和列位,并将那些位与接收的数据存取地址进行比较。
8.如权利要求7所述的方法,包括接收场选择位并使用所述场选择位来标识标记随机存取存储器内的位置。
9.如权利要求1所述的方法,包括根据运动补偿数据是引用扫描数据的帧的两个场还是仅引用所述帧的一个场来重新配置所述视频解码器高速缓存。
10.如权利要求1所述的方法,包括刷新所述高速缓存连同重新配置所述高速缓存。
11.如权利要求1所述的方法,包括在帧边界上重新配置所述高速缓存。
12.如权利要求1所述的方法,包括在序列边界上重新配置所述高速缓存。
13.一种系统,包括:
高速缓存;以及
与所述高速缓存耦合的配置单元,所述配置单元根据要解码的数据的类型不同地刷新所述高速缓存。
14.如权利要求13所述的系统,所述单元检测要存储在所述高速缓存中的数据是交错式还是渐进式扫描的数据,并根据所述数据是交错式还是渐进式扫描的来重新配置所述高速缓存。
15.如权利要求13所述的系统,其中,所述配置单元根据运动补偿数据是引用扫描数据的帧的两个场还是仅引用所述帧的一个场来重新配置所述高速缓存。
16.如权利要求13所述的系统,所述高速缓存包括标记随机存取存储器,所述标记随机存取存储器存储有关运动数据的较高行和列地址位且按较低行和列地址位索引的信息,所述标记随机存取存储器包括比较器,所述比较器将有关较高行和列地址位的信息与来自所述标记随机存取存储器的信息进行比较,以确定数据是否被高速缓存在所述高速缓存中。
17.如权利要求13所述的系统,所述配置单元根据要解码的数据的类型来动态地重新配置所述高速缓存。
CN201210464947.9A 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存 Expired - Fee Related CN102970538B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US11/231077 2005-09-20
US11/231,077 US7924914B2 (en) 2005-09-20 2005-09-20 Dynamically configuring a video decoder cache for motion compensation
US11/231,077 2005-09-20
CNA2006101395920A CN1937771A (zh) 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNA2006101395920A Division CN1937771A (zh) 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存

Publications (2)

Publication Number Publication Date
CN102970538A true CN102970538A (zh) 2013-03-13
CN102970538B CN102970538B (zh) 2016-09-28

Family

ID=37328053

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201210464947.9A Expired - Fee Related CN102970538B (zh) 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存
CNA2006101395920A Pending CN1937771A (zh) 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNA2006101395920A Pending CN1937771A (zh) 2005-09-20 2006-09-19 为运动补偿动态配置视频解码器高速缓存

Country Status (4)

Country Link
US (3) US7924914B2 (zh)
CN (2) CN102970538B (zh)
DE (1) DE112006002241T5 (zh)
WO (1) WO2007035209A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245899A (zh) * 2014-07-07 2016-01-13 瑞萨电子株式会社 图片编码设备、图片解码设备和图片通信系统
CN112860596A (zh) * 2021-02-07 2021-05-28 厦门壹普智慧科技有限公司 一种神经网络张量处理器的数据流高速缓存

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006031480A (ja) * 2004-07-16 2006-02-02 Sony Corp 情報処理システム及び情報処理方法、並びにコンピュータプログラム
US7924914B2 (en) * 2005-09-20 2011-04-12 Intel Corporation Dynamically configuring a video decoder cache for motion compensation
TWI326433B (en) * 2006-09-19 2010-06-21 Ind Tech Res Inst Method for saving interpolation data
KR20100069240A (ko) * 2008-12-16 2010-06-24 삼성전자주식회사 캐시 컨트롤을 위한 장치 및 방법
JP2010146205A (ja) * 2008-12-17 2010-07-01 Toshiba Corp キャッシュメモリ装置及び画像処理装置
US11013995B2 (en) * 2009-06-01 2021-05-25 Sony Interactive Entertainment LLC Qualified video delivery methods
US8225043B1 (en) * 2010-01-15 2012-07-17 Ambarella, Inc. High performance caching for motion compensated video decoder
JP5336003B2 (ja) * 2011-06-15 2013-11-06 パナソニック株式会社 動画像符号化装置
TWI513282B (zh) * 2013-11-21 2015-12-11 Mstar Semiconductor Inc 快取記憶體管理裝置及應用該快取記憶體管理裝置之動態影像系統及方法
CN103780942B (zh) * 2013-12-23 2017-07-11 青岛海信电器股份有限公司 一种信息配置方法及装置
CN107526688B (zh) * 2017-09-12 2020-05-29 上海兆芯集成电路有限公司 储存装置以及配置方法
CN110557519B (zh) * 2018-05-31 2021-09-28 联发科技股份有限公司 影像移动补偿装置与方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5874995A (en) * 1994-10-28 1999-02-23 Matsuhita Electric Corporation Of America MPEG video decoder having a high bandwidth memory for use in decoding interlaced and progressive signals
CN1457607A (zh) * 2001-01-12 2003-11-19 皇家菲利浦电子有限公司 存储器地址转换单元和方法以及包含这种单元的图像处理装置
WO2005034516A1 (en) * 2003-10-04 2005-04-14 Koninklijke Philips Electronics N.V. Method and apparatus for processing image data

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838380A (en) * 1994-09-30 1998-11-17 Cirrus Logic, Inc. Memory controller for decoding a compressed/encoded video data frame
US5774206A (en) * 1995-05-10 1998-06-30 Cagent Technologies, Inc. Process for controlling an MPEG decoder
JP3788823B2 (ja) * 1995-10-27 2006-06-21 株式会社東芝 動画像符号化装置および動画像復号化装置
DE69614500T2 (de) * 1996-02-27 2001-11-22 St Microelectronics Srl Speicherverminderung für das Grundprofil und die Hauptebene eines MPEG-2-Dekoders
IT1289206B1 (it) * 1996-09-12 1998-09-29 Sgs Thomson Microelectronics Metodo di ricompressione e decompressione adpcm di un flusso di dati digitali costituente un segnale video digitale e stimatore
CN101005624B (zh) * 1997-02-13 2011-11-16 三菱电机株式会社 动态图象译码装置和方法
US5973740A (en) * 1997-10-27 1999-10-26 International Business Machines Corporation Multi-format reduced memory video decoder with adjustable polyphase expansion filter
US6470051B1 (en) * 1999-01-25 2002-10-22 International Business Machines Corporation MPEG video decoder with integrated scaling and display functions
US6442206B1 (en) * 1999-01-25 2002-08-27 International Business Machines Corporation Anti-flicker logic for MPEG video decoder with integrated scaling and display functions
JP3551887B2 (ja) * 2000-04-03 2004-08-11 日本電気株式会社 動画像再生方法および装置
US7124203B2 (en) * 2000-07-10 2006-10-17 Oracle International Corporation Selective cache flushing in identity and access management systems
US20030138045A1 (en) * 2002-01-18 2003-07-24 International Business Machines Corporation Video decoder with scalable architecture
JP3579046B1 (ja) * 2003-11-20 2004-10-20 シャープ株式会社 液晶表示装置、液晶表示制御方法、並びに、そのプログラムおよび記録媒体
KR100606812B1 (ko) * 2004-03-08 2006-08-01 엘지전자 주식회사 비디오 디코딩 시스템
JP4763422B2 (ja) * 2004-12-03 2011-08-31 パナソニック株式会社 イントラ予測装置
US7924914B2 (en) * 2005-09-20 2011-04-12 Intel Corporation Dynamically configuring a video decoder cache for motion compensation
US8462841B2 (en) * 2007-12-31 2013-06-11 Netlogic Microsystems, Inc. System, method and device to encode and decode video data having multiple video data formats
US20110032993A1 (en) * 2008-03-31 2011-02-10 Motokazu Ozawa Image decoding device, image decoding method, integrated circuit, and receiving device
JP2009272724A (ja) * 2008-04-30 2009-11-19 Panasonic Corp ビデオ符号化・復号化装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5874995A (en) * 1994-10-28 1999-02-23 Matsuhita Electric Corporation Of America MPEG video decoder having a high bandwidth memory for use in decoding interlaced and progressive signals
CN1457607A (zh) * 2001-01-12 2003-11-19 皇家菲利浦电子有限公司 存储器地址转换单元和方法以及包含这种单元的图像处理装置
WO2005034516A1 (en) * 2003-10-04 2005-04-14 Koninklijke Philips Electronics N.V. Method and apparatus for processing image data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245899A (zh) * 2014-07-07 2016-01-13 瑞萨电子株式会社 图片编码设备、图片解码设备和图片通信系统
CN112860596A (zh) * 2021-02-07 2021-05-28 厦门壹普智慧科技有限公司 一种神经网络张量处理器的数据流高速缓存
CN112860596B (zh) * 2021-02-07 2023-12-22 厦门壹普智慧科技有限公司 一种神经网络张量处理器的数据流高速缓存装置

Also Published As

Publication number Publication date
US8208539B2 (en) 2012-06-26
US7924914B2 (en) 2011-04-12
CN102970538B (zh) 2016-09-28
US20120243610A1 (en) 2012-09-27
WO2007035209A1 (en) 2007-03-29
DE112006002241T5 (de) 2008-06-05
CN1937771A (zh) 2007-03-28
US20070064006A1 (en) 2007-03-22
US8867609B2 (en) 2014-10-21
US20110158312A1 (en) 2011-06-30

Similar Documents

Publication Publication Date Title
CN102970538A (zh) 为运动补偿动态配置视频解码器高速缓存
US8890881B2 (en) Mapping method and video system for mapping pixel data included in the same pixel group to the same bank of memory
JP4910576B2 (ja) 動画像処理装置
US20100111175A1 (en) Reference data buffer for intra-prediction of digital video
US20070047655A1 (en) Transpose buffering for video processing
CN101031052A (zh) 图像在存储器中的地址映射方法
JP2013065343A (ja) ビデオデータのインターリーブされた記憶用のシステム
CN100437826C (zh) 有异步缓存的双倍速动态随机存取存储器控制装置及方法
US20080158601A1 (en) Image memory tiling
CN100444636C (zh) 提高视频解码器中sdram总线效率的方法
US7400683B2 (en) Device with virtual tilized image memory
US20150178217A1 (en) 2-D Gather Instruction and a 2-D Cache
US20080044107A1 (en) Storage device for storing image data and method of storing image data
Li et al. Reducing dram image data access energy consumption in video processing
US8514237B2 (en) Two dimensional memory caching apparatus for high definition video
US20070183510A1 (en) Method and apparatus for decoding video that alternately store lines of picture in pixel units and method of storing reference picture
US10418002B2 (en) Merged access units in frame buffer compression
US8581918B2 (en) Method and system for efficiently organizing data in memory
CN101729903B (zh) 一种读取参考帧数据的方法、系统和多媒体处理器
JP5261694B2 (ja) 画像処理用メモリ
TWI513282B (zh) 快取記憶體管理裝置及應用該快取記憶體管理裝置之動態影像系統及方法
CN1636239A (zh) 存储数据元素的方法
US9588880B2 (en) Adaptive address translation method for high bandwidth and low IR concurrently and memory controller using the same
US20060230241A1 (en) Buffer architecture for data organization
KR20090061961A (ko) 움직임 보정장치

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: 20160928

Termination date: 20170919

CF01 Termination of patent right due to non-payment of annual fee