具有被优化以处理数据流应用的高速缓存的数据处理系统技术方案

技术编号:2854516 阅读:201 留言:0更新日期:2012-04-11 18:40
为每个数据流保留不相重叠的高速缓存位置。因此,把对每个流唯一的流信息用来索引高速缓冲存储器。此处,此流信息通过流标识来表示。特别的是,提供了一种被优化以便依照任务和数据流来处理数据流应用的数据处理系统,其中不同流竞争以得到共享的高速缓存资源。把明确的流标识关联至所述数据流中的每一个。所述数据处理系统包括至少一个用于处理流数据的处理器(12),至少一个具有多个高速缓存块的高速缓冲存储器(200),其中所述高速缓冲存储器(200)的其中一个被关联至所述处理器(12)中的每一个,以及至少一个用于控制所述高速缓冲存储器(200)的高速缓存控制器(300),其中所述高速缓存控制器(300)的其中一个被关联至所述高速缓冲存储器(200)中的每一个。所述高速缓存控制器(300)包括选择装置(350),用于按照所述流标识(stream_id)来在所述高速缓冲存储器(200)中选择数据流的存储元素的位置。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及一种被优化以便依照任务和数据流(datastream)来处理数据流应用(dataflow application)的数据处理系统,一种用于被优化以便依照任务和数据流来处理数据流应用的数据处理环境的半导体器件,并且涉及一种在被优化以便依照任务和数据流来处理数据流应用的数据处理环境中用于索引高速缓冲存储器的方法。在最近几年间,由于对诸如高清晰度数字TV、具有定时移位功能的机顶盒、3D游戏、视频会议、MPEG-4应用等等的这种数据流应用的需求的增大,对于尤其提供这种数据流应用的数据处理系统的设计工作也增大。在流处理中,对一条数据流的连续操作是由不同处理器来执行的。例如,第一流可以由图像的像素值组成,其由第一处理器处理以便产生8×8像素块的DCT(离散余弦变换)系数块的第二流。第二处理器可以处理DCT系数块以便为DCT系数的每个块产生被选并且被压缩系数的块流。为了实现数据流处理,提供了多个处理器,每当使用来自于下一数据对象(下一数据对象来自于数据对象流)的数据和/或在这种流中产生下一数据对象时,每个处理器均能够重复地执行特定操作。所述流从一个处理器传递至另一处理器,以便使由第一处理器产生的流可以由第二处理器等等来处理。用于把数据从第一处理器传递至第二处理器的一种机制是通过把第一处理器产生的数据块写入所述存储器来实现的。网络中的数据流被缓冲。每个缓冲器是依照FIFO来实现的,恰好具有一个写入器和一个或多个该取器。由于这种缓冲,写入器和读取器不需要使对通道的单个读和写动作互相同步。典型的数据处理系统包括完全可编程处理器以及分别专用于单个应用的应用特定子系统的混合。在2002年7-8月,在IEEE Design and Test of ComputersEmbedded Systems的第39-50页,由Rutten及其他人提出的“EclipseA Heterogeneous Multiprocessor Architecture for FlexibleMedia Processing”中示出了这种体系结构的例子。所要求的处理应用被规定为Kahn进程网络,即借助于单向数据流交换数据的一组同时执行的任务。每个应用任务被映射到特定的可编程处理器或者专用处理器的其中一个上。所述专用处理器由协处理器来实现,所述协处理器只能够进行微弱的编程。每个协处理器均可以执行来自于单个Kahn网络或者根据时分机制来自于多个网络的多个任务。例如介质处理应用的流属性产生高的局部性查阅,即连续查阅相邻数据的存储器地址。此外,分布式协处理器外壳(shell)是在协处理器和通信网络、即总线和主存储器之间来实现的。这用于吸收许多系统级问题,类似于多任务、流同步化和数据传送。由于它的分布式属性,所述外壳可以接近于它所关联的协处理器来实现。在每个外壳中,对于被映射到与所述外壳相关联的协处理器上的任务而言,用于处理流关联所需的所有数据都被存储在外壳的流表中。所述外壳包括高速缓存,以便减少当读取或者写入存储器时出现的数据存取等待时间。需要执行进一步处理步骤的数据被高速缓存,即存储在小型存储器上,这种小型存储器独立于主存储器,并且设置为接近于使用所存储的数据的处理器。换言之,把高速缓存用作中间存储装置。通过减少存储器存取等待时间,处理器的处理速度得以提高。如果数据字仅仅是由处理器从其高速缓存而不是从主存储器来存取,那么平均存取时间和主存储器存取次数将明显减少。在共享的存储器中实现的流缓冲器为共享的资源而竞争,所述资源类似于高速缓存存储器线和有限数目的存储体,以便存储存取标记。由于协处理器的任务是输入/输出密集的,所以需要有效的高速缓存行为来防止高速缓存资源的争夺,高速缓存资源争夺会导致任务执行的延迟。因此,本专利技术的一个目的在于在被优化以便处理数据流应用的环境中减少高速缓存争夺的出现,其中在所述环境中,不同流竞争以得到共享的高速缓存资源。此目的是通过如权利要求1所述的数据处理系统、如权利要求9所述的用于被优化以便依照任务和数据流来处理数据流应用的数据处理环境的半导体器件、以及如权利要求10所述的在被优化以便处理数据流应用的数据处理环境中用于索引高速缓冲存储器的方法来得以解决的。本专利技术基于这样的思想,即为每个数据流保留不相重叠的高速缓存位置。因此,把对每个流唯一的流信息用来索引高速缓冲存储器。此处,此流信息通过流标识来表示。特别的是,提供了一种被优化以便依照任务和数据流来处理数据流应用的数据处理系统,其中不同流竞争以得到共享的高速缓存资源。把明确的流标识关联至所述数据流中的每一个。所述数据处理系统包括至少一个用于处理流数据的处理器12,至少一个具有多个高速缓存块的高速缓冲存储器200,其中所述高速缓冲存储器200的其中一个被关联至所述处理器12中的每一个,以及至少一个用于控制所述高速缓冲存储器200的高速缓存控制器300,其中所述高速缓存控制器300的其中一个被关联至所述高速缓冲存储器200中的每一个。所述高速缓存控制器300包括选择装置350,用于按照所述流标识stream_id来在所述高速缓冲存储器200中选择存储数据流的元素的位置。因此,来自于不同流的数据的高速缓存被有效地分隔。根据本专利技术的一方面,所述选择装置350包括子集确定装置352,用于根据所述流的输入/输出地址的子集从所述高速缓冲存储器200中的所述高速缓存块的行中选择一组高速缓存块。根据本专利技术的另一方面,所述选择装置350包括散列函数装置351,用于对所述流标识stream_id执行散列函数直到小于高速缓存行的数目的数目。根据本专利技术的又一方面,适用于执行的所述散列函数装置351是模数运算(modulo operation)。通过经由不同任务共享可利用的高速缓存行,所述高速缓冲存储器200可以被具体化为更加小型的存储器件,由此可以限制整个系统中高速缓冲存储器的成本。根据本专利技术的又一方面,所述选择装置350按照与所述数据流相关联的任务标识task_id和/或端口标识port_id来在所述高速缓冲存储器200中为数据流选择位置。本专利技术还涉及一种用于被优化以便依照任务和数据流来处理数据流应用的数据处理环境中的半导体器件,其中不同任务竞争共享的高速缓存资源,其中明确的流标识stream_id被关联至所述数据流中的每一个。所述器件包括具有多个高速缓存块的高速缓冲存储器200,以及用于控制所述高速缓冲存储器200的高速缓存控制器300,其中所述高速缓存控制器300被关联至所述高速缓冲存储器200。所述高速缓存控制器300包括选择装置350,用于按照所述流标识stream_id来在所述高速缓冲存储器200中选择存储数据流的元素的位置。此外,本专利技术还涉及一种在被优化以便依照任务和数据流来处理数据流应用的数据处理环境中用于索引高速缓冲存储器200的方法,其中不同流竞争共享的高速缓存资源。所述高速缓冲存储器200包括多个高速缓存块。把明确的流标识stream_id关联至所述数据流中的每一个。用于在所述高速缓冲存储器200中存储数据流元素的位置是按照所述流标识stream_id来选择的,以便区别所述高速缓冲存储器中比潜在的不同流的数目少的子集数目。在从属权利要求中描述了本专利技术的其他方本文档来自技高网...

【技术保护点】
一种被优化以便依照任务和数据流来处理数据流应用的数据处理系统,其中不同的流竞争以得到共享的高速缓存资源,其中明确的流标识(stream_id)被关联至所述数据流中的每一个,包括:至少一个用于处理流送数据的处理器(12);至少 一个具有许多高速缓存块的高速缓冲存储器(200),其中所述高速缓冲存储器(200)的其中一个被关联至所述处理器(12)中的每一个;以及至少一个用于控制所述高速缓冲存储器(200)的高速缓存控制器(300),其中所述高速缓存控制器(3 00)的其中一个被关联至所述高速缓冲存储器(200)中的每一个;所述高速缓存控制器(300)包括:选择装置(350),用于按照所述流标识(stream_id)来在所述高速缓冲存储器(200)中选择存储数据流的元素的位置。

【技术特征摘要】
【国外来华专利技术】EP 2003-3-6 03100555.61.一种被优化以便依照任务和数据流来处理数据流应用的数据处理系统,其中不同的流竞争以得到共享的高速缓存资源,其中明确的流标识(stream_id)被关联至所述数据流中的每一个,包括至少一个用于处理流送数据的处理器(12);至少一个具有许多高速缓存块的高速缓冲存储器(200),其中所述高速缓冲存储器(200)的其中一个被关联至所述处理器(12)中的每一个;以及至少一个用于控制所述高速缓冲存储器(200)的高速缓存控制器(300),其中所述高速缓存控制器(300)的其中一个被关联至所述高速缓冲存储器(200)中的每一个;所述高速缓存控制器(300)包括选择装置(350),用于按照所述流标识(stream_id)来在所述高速缓冲存储器(200)中选择存储数据流的元素的位置。2.如权利要求1所述的系统,其中所述选择装置(350)适用于按照所述流标识(stream_id)来在所述高速缓冲存储器(200)中选择高速缓存块的子集。3.如权利要求2所述的系统,其中所述选择装置(350)包括子集确定装置(352),用于根据所述流的输入/输出地址的子集来从所述高速缓冲存储器(200)中的所述高速缓存块子集中选择一组高速缓存块。4.如权利要求3所述的系统,其中所述子集确定装置(352)适用于根据所述流的所述输入/输出地址的较低位来选择高速缓存块。5.如权利要求3所述的系统,其中所述子集确定装置(352)适用于按照输入/输出地址位的子集上匹配的标记在所述组的高速缓存块内选择高速缓存块...

【专利技术属性】
技术研发人员:JTJ范埃恩的霍文MJ鲁坦EJD波尔
申请(专利权)人:NXP股份有限公司
类型:发明
国别省市:NL[荷兰]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1