基于预先解码分析的数据信息缓存管理系统的制作方法

文档序号:6396155阅读:146来源:国知局
专利名称:基于预先解码分析的数据信息缓存管理系统的制作方法
技术领域
本实用新型属于嵌入式可重构设计领域,具体涉及一种基于预先解码分析的数据信息缓存管理系统,更具体涉及一种媒体处理可重构系统中基于预先解码分析的数据信息缓存管理系统。
背景技术
将通用处理器(GPP, General Purpose Processors)的灵活性和专用集成电路(ASIC,Application Specific Integrated Circuit)的高效性结合的一种计算体系结构,可重构计算架构近些年来在嵌入式系统设计方面获得了越来越广泛的关注,其主要的应用领域包括多媒体处理、移动通信、数字信号处理、数据加解密等。随着媒体应用的性能要求和计算复杂度越来越高,粗粒度可重构架构的计算资源也成倍增加,一些架构使用了多个可重构阵列来完成这些应用。然而,在计算资源增加的同时,计算资源对于数据流的要求也进一步增大。随着处理器速度与存储器访问速度的差距不断增大,面向应用的系统级芯片中存储子系统的访问延迟已经成为可重构系统性能的瓶颈,很大程度上限制了整体性能的提升。如何优化可重构系统存储子系统,减少访问延迟成为可重构系统研究的关键。优化可重构存储子系统,减少访问延迟主要从两个方面来考虑:1、访问外部存储器本身的特点;2、媒体算法固有的数据流特点。基于成本考虑,目前作为外部存储器用的比较多的是同步动态随机存储器(SDRAM)结构,对于同步动态随机存储器,其主要有如下特点:1、它由Bank(组)、Page (页)和Column (列)这三个基本单元构成;2、它支持以Burst (粹发)方式进行连续读写。在外部存储接口设计中,可以充分利用这两个特性来提高以同步动态随机存储器为外存的芯片的性能。由于特性1,应当尽量减少对外部存储器的次数,减少数据访问时带来的换页延迟。由于特性2,尽量延长访问存储器的猝发长度,减少多次访问造成的固定延时。因此在访问以同步动态随机存储器结构为外部存储器的时候,应该尽量考虑以上两个特性,以提高数据访问效率。对于媒体算法,主要有两个特点:1、按照宏块处理数据;2、参考图像会用到多次。媒体数据图像在外部存储器中按帧存放,每一帧图像按照光栅扫描方式存放在外部的同步动态随机存储器中。由于媒体算法按宏块处理,而宏块中上下两行数据在地址空间中不连续,因此读取宏块时可能会引起多次换行。例如,假设每行同步动态随机存储器存储1024Byte数据,媒体像素数据大小为lByte,则对于分辨率为1080p即包含1920*1080像素的帧数据,由于帧内每行数据都分布在不同的行中,因此当读取帧内宏块时需要多次换行,由此造成严重的数据访问延迟。由于媒体数据具有时间和空间局部性,特别是重建相邻宏块时,会多次用到同一参考帧数据,比如在H.264中预测一个8X8的亮度块,那么它在最坏情况下需要参考数据为(8+5) X (8+5) = 169bytes。如果将它分割为4个4X4块进行处理,那么它需要的参考数据为(4+5) X (4+5) X4=324Bytes,它的重复数据达到155Bytes。同理,如果预测16X16的亮度块,相应情况下其相应所需数据和重复数据分别为441Bytes和855Bytes,此时重复数据将达到有效数据的2倍。

实用新型内容实用新型目的:针对上述现有技术存在的问题和不足,本实用新型的目的是提供一种基于预先解码分析的数据信息缓存管理系统,通过尽量利用重复数据,减少数据传输时间,减少数据带宽占用及在外部存储器中的换行延迟,以提高大规模粗粒度可重构系统的数据访问效率,使得性能提升。技术方案:为实现上述实用新型目的,本实用新型采用的第一种技术方案为一种基于预先解码分析的数据信息缓存管理系统,包括流媒体处理器模块、数据信息预取FIFO (First Input First Output,先入先出队列)模块、数据信息缓存单元和数据信息缓存控制器|旲块;所述流媒体处理器模块:用于解析从外部存储器取得的码流中的宏块,生成处理该宏块对应的数据信息条目,并将该数据信息条目输出到数据信息预取FIFO模块;所述数据信息预取FIFO模块:用于依次存储所述流媒体处理器模块生成的数据信息条目;所述数据信息缓存单元:用于缓存从外部存储器中取到的数据块; 所述数据信息缓存控制器模块:用于根据数据信息FIFO模块中的数据信息条目,判断所需的数据信息是全部存在于数据信息缓存单元中,或者是部分存在或者是全部不存在于数据信息缓存单元中,并根据判断结果将数据信息缓存单元中相应的数据块形成可重构计算单元所需的数据块,最后发送至相应的可重构阵列。优选的,所述数据信息预取FIFO模块包括A个FIFO单元,其中A为不小于I的整数,每个所述FIFO单元存储一个数据信息条目,所述数据信息条目由所需宏块的参考帧编号、水平和垂直位置分量与实际所需宏块大小组成。优选的,所述数据信息缓存单元包含应用双向预测的前向和后向两个缓存单元,分别存储前向预测和后向预测参考帧数据,每个所述缓存单元中有B个数据块,一共有2XB个数据块。优选的,所述数据信息缓存控制器模块包括数据信息比较单元,数据选择器和数据移位、拼接单元;所述数据信息比较单元用于比较数据信息预取FIFO模块中的数据信息条目和数据信息缓存单元中的数据块,如果此数据信息条目对应的数据块在数据信息缓存单元中存在,则数据信息比较单元读取该数据块;如果在数据信息缓存单元中只存在所述数据块中的部分数据或没有所述数据块中的任何数据,则将相应的命中信息发送给数据选择器;数据选择器根据部分命中或者完全不命中信息选择将从所述外部存储器取得的数据发送给移位、拼接单元或者直接发送给数据信息缓存单元;数据移位、拼接单元,在数据部分命中时,将部分命中的数据和从外部存储器取得的剩余数据拼接成可重构阵列所需数据块。本实用新型采用的第二种技术方案为一种利用如上所述基于预先解码分析的数据信息缓存管理系统的管理方法,包括如下步骤:(I)生成数据信息条目:所述流媒体处理器模块解析从外部存储器取得的码流中的宏块,生成处理该宏块对应的数据信息条目,并将该数据信息条目输出到数据信息预取FIFO模块;(2)查询、读取和替换数据信息:所述数据信息缓存控制器模块从数据信息预取FIFO中取出所述数据信息条目,将该数据信息条目和数据信息缓存单元中的数据块比较,如果此数据信息条目对应的数据块在数据信息缓存单元中存在,则数据信息缓存控制器模块读取该数据块;如果在数据信息缓存单元中只存在所述数据块中的部分数据,则保留重用数据,数据信息缓存控制器模块向外部存储器发起访问取得剩下的数据,并将所述重用数据和剩下的数据通过移位组合成相应的数据块;如果在数据信息缓存单元中没有所述数据块中的任何数据,数据信息缓存控制器模块便向外部存储器控制器发出相应的数据信息,并取得该数据块;替换数据信息时,所述数据信息缓存控制器模块依据数据命中与否,优先将所述数据信息缓存单元中与所述数据信息条目对应的数据块不符的数据替换;(3)发送数据信息:所述数据信息缓存控制器将读取的数据块中的数据信息依次发送给相应的可重构阵列;(4)重复步骤(I)至步骤(3),直至所有数据信息条目对应的数据块都发送完毕。有益效果:本实用新型利用预先解析的宏块数据信息,对数据缓存分为完全不命中、部分命中和完全不命中分开处理,将数据进行最大程度上的重用,减少了数据带宽的占用,减少了对外部存储器的访问次数,提高了大规模粗粒度可重构系统的性能。

图1为本实用新型实施例所述的媒体处理可重构系统中基于预先解码分析的数据信息缓存的结构示意图;图2为图1中所示的媒体处理可重构系统中基于预先解码分析的数据信息缓存中的数据缓存控制器的结构示意图;图3为图1所示的媒体处理可重构系统中基于预先解码分析的数据信息缓存中数据信息预取FIFO模块内数据信息条目的说明示意图;图4为图1所示的媒体处理可重构系统中基于预先解码分析的数据信息缓存中数据信息缓存单元内数据块的说明示意图;图5为本实用新型实施例所述的媒体处理可重构系统中基于预先解码分析的数据信息缓存的管理方法的流程图;图6为本实用新型实施例所述的媒体处理可重构系统中基于预先解码分析的数据信息缓存的管理方法中对于更新数据缓存单元中数据块的流程图;图7为本实用新型实施例所述的媒体处理可重构系统中基于预先解码分析的数据信息缓存结构应用连接图。
具体实施方式
以下结合附图和具体实施例,进一步阐明本实用新型,应理解这些实施例仅用于说明本实用新型而不用于限制本实用新型的范围,在阅读了本实用新型之后,本领域技术人员对本实用新型的各种等价形式的修改均落于本申请所附权利要求所限定的范围。如图1所示,媒体处理可重构系统中基于预先解码分析的数据信息缓存结构,包括流媒体处理器模块:用于解析从外部存储器取得的码流中的宏块,生成处理该宏块对应的宏块层数据信息,并将该宏块层数据信息输出到数据信息预取FIFO模块;数据信息预取FIFO模块:用于依次存储上述流媒体处理器模块生成的数据信息条目;数据信息缓存单元(简称“数据缓存单元”):用于缓存从外部存储器中取到的数据信息块(简称“数据块”);数据信息缓存控制器模块:用于根据数据信息预取FIFO模块中的数据信息条目,判断所需的数据信息是否存在于数据信息缓存单元中,或者是部分存在于数据信息缓存单元中,或者完全不存在于数据信息缓存单元中。并通过比较结果将数据信息缓存单元中相应的数据块进行移位组合等操作形成可重构计算单元所需的数据信息块,最后发送至相应的可重构阵列。如图2所示,数据信息缓存控制器(简称“数据缓存控制器”)模块,包括比较,移位拼接及数据选择单元。数据缓存控制器通过比较数据信息预取FIFO模块中的条目和数据信息缓存单元中的数据信息得出相应的命中信息,然后将相应的控制信息发送给数据选择单元,移位、拼接单元及外部存储器。如果此条目对应的数据块在数据缓存单元中存在,则数据缓存控制器读取该数据块,将其发送至可重构计算阵列;如果只有部分命中,则保留重用数据,向外部存储器发起访问取得剩下数据块,并将两者通过移位拼接组合成相应的数据块并且存储在数据信息缓存单元中;如果完全不命中,数据缓存控制器便向外部存储器发出相应的数据信息,取得该数据块将其发送至可重构计算阵列并存储在数据信息缓存单元中。如图3所示,数据信息预取FIFO模块,包含A个FIFO单元,每个FIFO单元由包括所需宏块的参考帧编号P0C,水平和垂直位置分量(X,y),实际所需宏块大小(MXN,M代表宏块宽度,N代表宏块的高度)这三者形成的数据信息条目(简称“条目”),用entry表
/Jn ο如图4所示,数据信息缓存单元,包含双向预测的前向和后向两个缓存单元,每个缓存单元中有B个数据块,一共有2XB个数据块。每个缓存单元都是由具体的数据块组成。参数A、B都是通过实验得出具体的数值,使得收益率最好。如图5所示,数据信息缓存的管理方法,生成数据信息条目:所述流媒体处理器模块解析从外部存储器取得的码流中的宏块,生成处理该宏块对应的宏块层数据信息,并将该宏块层数据信息输出到数据信息预取FIFO模块;查询、读取和替换数据信息:如图6所示,所述数据缓存控制器从数据信息预取FIFO中取出一个条目,将该条目中的内容与数据缓存单元中的数据块比较,如果此条目对应的数据块在数据缓存单元中存在,则数据缓存控制器读取该数据块;如果只有部分命中,则保留重用数据,向外部存储器发起访问取得剩下数据块,并将两者通过移位组合成相应的数据块;如果完全不命中,数据缓存控制器便向外部存储器控制器发出相应的数据信息,并取得该数据块。替换数据信息时,数据缓存控制器会依据数据信息预取FIFO模块中的条目选择出数据缓存单元中接下来一段时间不用的数据信息,将其替换。发送数据信息:所述数据缓存控制器将读取的完整数据块依次发送给相应的可重构阵列。重复上述步骤,直至所有数据信息条目对应的数据块都发送完毕。三个阶段的运转方式为流水线方式,从而充分利用了数据信息缓存的资源,提高了大规模粗粒度可重构系统的运行效率。如图7所示,H.264协议的高清数字视频解码(H.2641080pi30fpsHiPiLevel4)采用了本实用新型所提出的媒体处理可重构系统中基于预先解码分析的数据信息缓存结构及管理方法,能够实现H.2641080pi30fps HiPiLevel4的高清视频解码要求。该系统的结构包括:用作主控器的ARM7TDMI处理器、数据信息缓存结构、可重构阵列、自定义外部存储器访问接口、外部存储器。选择具有小型、快速、低能耗、编译器支持好等优点的ARM7TDMI处理器作为主控CPU,用于控制系统运行的调度;数据信息缓存通过64bit的自定义外部存储器接口总线与外部存储器相连接,外部存储器选用最常用的嵌入式外部存储器DDR SDRAM,具有良好的性价比以及能耗比;可重构计算单元共有两个,每个中有8个可重构阵列,每个可重构阵列均含有8 X 8个计算单元。对于该验证系统,对应的流处理器每次生成相应的数据信息条目,数据信息条目包括三部分,其宽度为31bit,参考巾贞编号为8bit,水平和垂直分量分别为6bit和7bit,宏块的宽度和高度都为5bit。数据信息预取FIFO模块包含256个FIFO单元,其总大小为IK Bytes0数据信息缓存模块包含32个cache块,每个cache块中数据大小为16xl6bit。对于验证系统,以没有加入该数据信息缓存结构为对比试验,也就是直接从外部存储器中取得数据。实验结果表明,采用此本实用新型提出的数据信息缓存结构以及相应的数据信息缓存管理方法,系统对外部存储器的访问次数减少30%左右,带宽节省45%左右,使得整个性能提升40%左右。
权利要求1.一种基于预先解码分析的数据信息缓存管理系统,包括流媒体处理器模块、数据信息预取FIFO模块、数据信息缓存单元和数据信息缓存控制器模块; 所述流媒体处理器模块:用于解析从外部存储器取得的码流中的宏块,生成处理该宏块对应的数据信息条目,并将该数据信息条目输出到数据信息预取FIFO模块; 所述数据信息预取FIFO模块:用于依次存储所述流媒体处理器模块生成的数据信息条目; 所述数据信息缓存单元:用于缓存从外部存储器中取到的数据块; 所述数据信息缓存控制器模块:用于根据数据信息FIFO模块中的数据信息条目,判断所需的数据信息是全部存在于数据信息缓存单元中,或者是部分存在或者是全部不存在于数据信息缓存单元中,并根据判断结果将数据信息缓存单元中相应的数据块形成可重构计算单元所需的数据块,最后发送至相应的可重构阵列。
2.根据权利要求1所述基于预先解码分析的数据信息缓存管理系统,其特征在于:所述数据信息预取FIFO模块包括A个FIFO单元,其中A为不小于I的整数,每个所述FIFO单元存储一个数据信息条目,所述数据信息条目由所需宏块的参考帧编号、水平和垂直位置分量与实际所需宏块大小组成。
3.根据权利要求1所述基于预先解码分析的数据信息缓存管理系统,其特征在于:所述数据信息缓存单元包含应用双向预测的前向和后向两个缓存单元,分别存储前向预测和后向预测参考帧数据,每个所述缓存单元中有B个数据块,一共有2XB个数据块。
4.根据权利要求1所述基于预先解码分析的数据信息缓存管理系统,其特征在于:所述数据信息缓存控制器模块包括数据信息比较单元,数据选择器和数据移位、拼接单元;所述数据信息比较单元用于比较数据信息预取FIFO模块中的数据信息条目和数据信息缓存单元中的数据块,如果此数据信息条目对应的数据块在数据信息缓存单元中存在,则数据信息比较单元读取该数据块;如果在数据信息缓存单元中只存在所述数据块中的部分数据或没有所述数据块中的任何数据,则将相应的命中信息发送给数据选择器;数据选择器根据部分命中或者完全不命中信息选择将从所述外部存储器取得的数据发送给移位、拼接单元或者直接发送给数据信息缓存单元;数据移位、拼接单元,在数据部分命中时,将部分命中的数据和从外部存储器取得的剩余数据拼接成可重构阵列所需数据块。
专利摘要本实用新型公开了一种基于预先解码分析的数据信息缓存管理系统,包括流媒体处理器模块、数据信息预取FIFO模块、数据信息缓存单元和数据信息缓存控制器模块。本实用新型通过尽量利用重复数据,减少数据传输时间,减少数据带宽占用及在外部存储器中的换行延迟,以提高大规模粗粒度可重构系统的数据访问效率,使得性能提升。
文档编号G06F12/08GK202995701SQ20122068845
公开日2013年6月12日 申请日期2012年12月13日 优先权日2012年12月13日
发明者曹鹏, 刘波, 蒋辉雁, 齐志, 杨锦江, 杨军, 时龙兴 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1