存储器体系结构制造技术

技术编号:10021944 阅读:180 留言:0更新日期:2014-05-09 03:27
根据一个示例实施方案,公开了一种判优器,用于中转来自多个处理元件的存储器访问请求。如果两个或更多个处理元件试图访问单个存储器组块中相同的字内的数据,则判优器允许一些或全部处理元件访问该字。如果两个或更多个处理元件试图访问相同存储器组块中不同数据字,则对最低排序的处理元件授予访问权,并停滞其余处理元件。

【技术实现步骤摘要】
【专利摘要】根据一个示例实施方案,公开了一种判优器,用于中转来自多个处理元件的存储器访问请求。如果两个或更多个处理元件试图访问单个存储器组块中相同的字内的数据,则判优器允许一些或全部处理元件访问该字。如果两个或更多个处理元件试图访问相同存储器组块中不同数据字,则对最低排序的处理元件授予访问权,并停滞其余处理元件。【专利说明】存储器体系结构相关申请的交叉引用本专利申请要求2012年10月23日提交的、标题为“用于向量处理器的存储器体系结构(Memory Architecture for Vector Processors)”的美国临时专利申请61/717,553的优先权,其通过引用全部并入本文。
本公开大体上涉及并行和向量处理器,以及更具体地来说,涉及用于向量处理的存储器体系结构。
技术介绍
并行处理常常由处理器实施来优化处理应用,例如由数字信号处理器来优化数字信号处理应用。处理器可以作为单指令多数据(SMD)或数据并行处理器来工作以实现并行处理。在SMD操作中,将单个指令发送到处理器的多个处理元件,其中每个处理元件可以对不同的数据执行相同的操作。在向量处理器中,许多不同的处理元件(PE)能够在单个周期期间读或写存储器位置。构建此类存储器的一个通用方式称为组块化(banking),其中以使任何PE能够访问任何RAM组块的方式将一组单端口 RAM组块连接到PE。每个RAM组块处理一组交织的地址,有时该组地址分割成数据字。例如,在具有32位(4字节)字长和四个RAM组块的处理器中,RAMO可以处理字节地址0-3,RAMl可以处理字节地址4-7,RAM2可以处理字节地址8-11,RAM3可以处理字节地址12 - 15,RAMO可以处理字节地址16 - 19,并依此类推。【专利附图】【附图说明】从结合附图阅读时的下文详细描述中最佳地理解本公开。要强调的是,根据业界中的标准实践,各个特征部件未按比例绘制,且仅出于说明性目的而使用。实际上,为了论述简明,可任意地增加或减小各个特征部件的尺寸。图1是根据本公开的各个方面的数字信号处理器系统的框图。图2是根据本公开的各个方面的以更具体的存储器操作来公开的框图。图3是根据本公开的各个方面的示例存储器访问操作的框图。图4是根据本公开的各个方面的示例存储器访问操作的框图。图5是根据本公开的各个方面的示例存储器访问操作的框图。图6是根据本公开的各个方面的示例存储器访问操作的框图。【具体实施方式】在一个方面中,公开了一种电路,其包括多个处理元件;包括多个组块的存储器;通信上耦合到处理元件和存储器并实现处理元件和存储器之间多路复用通信的交叉矩阵(crossbar);以及控制交叉矩阵的判优器,并且判优器配置成:从多个处理元件接收多个访问请求;比较来自两个处理元件的存储器访问请求;以及在确定两个处理元件请求对共用组块中的共用数据字的访问时,允许这两个处理元件访问共用数据字。在另一个方面中,公开了一种判优器电路,其包括输入端口,所述输入端口配置成接收存储器访问请求;输出端口,所述输出端口配置成控制存储器多路复用器;以及逻辑电路,所述逻辑电路配置成:接收多个存储器访问请求;以及根据规则服务于访问请求;其中所述规则包括:如果两个访问请求指向共用存储器组块中的共用数据字,则同时服务于两个访问请求。在又一个方面中,公开了一种在计算机上执行的方法,其包括接收两个存储器访问请求;比较所述存储器访问请求;以及根据包括如下内容的规则服务于所述存储器访问请求中的至少一个:如果两个访问请求均来自处理元件并指向共用存储器组块中的共用数据字,则同时服务于两个访问请求。示例实施方案的详细描述向量处理器如数字信号处理器(DSP)可以采用SMD模式工作,其中多个处理元件(PE)的每一个处理元件对不同的数据执行相同的指令。包括主存储器、本地(LI)存储器或高速缓存的存储器可以分成多个组块,以及每个组块可能够在每个时钟周期执行一次成功的读和/或写。由此,如果多于一个的PE尝试在相同时钟周期上访问相同的组块,则发生“停滞”状态:一个或多个PE应该等待多个时钟周期之后其数据操作才成功。在一些示例实施方案中,将基于顺序指定来授予PE访问优先权。例如,给定四个PE,可以按升序或降序或根据某种其他模式来授予PE访问权。当读或写一系列连续项时,组块化方案效果良好,因为每个PE就可以同一时间访问存储器。当每个PE具有到存储器中的其自己的地址偏移量时,组块化方案效果不太好。这称为集中读操作和分散(scatter)写。在该情况中,若干PE可能试图同时到达相同组块。在典型的向量存储器系统中,通过对每个PE赋予单独的周期来处理此类冲突。这可能导致集中或分散占用多个周期,从而减慢总的处理。本公开的一个方面描述加速此情形的方式。这情况往往是PE访问相同组块时它们还访问该组块内的相同字。这可能是由于它们需要读完全相同的数据段(或许为查表的一部分),或由于它们需要读或写不相同但仍在一个组块字内的数据所致。在任一种情况中,执行满足若干PE的一次存储器访问是可能的,从而加速整体访问。在η个PE以SMD模式工作且每个PE尝试在相同时钟周期上对相同组块写或从相同组块读时,出现最坏情况的场合。在该情况中,对于具有最低优先级的ΡΕ,将出现至少η个时钟周期的停滞,在此时间期间,PE处于闲置而非处理有用的数据。可以通过精心设计的程序来改善停滞。例如,如果存在与PE至少一样多的存储器组块,则程序员可以通过确保在每个时钟周期上每个PE访问不同的存储器组块来消除停滞。遗憾的是,此解决方案不完善,因为存在存储器无法如此仔细地分隔或规划的许多情况。为了进一步改善停滞,本公开的某些实施方案提供一种存储器体系结构,其将试图从相同存储器组块读取的PE分组,并且如果多个PE试图从相同数据字读数据,则无附加停滞地将该字返回到每个ΡΕ。或者,可以通过将该字的有用部分移位到特定位置(如最高有效位或最低有效位)且将字的其余部分填充O来返回该字。在本公开的一个示例中,如果相冲突的PE从RAM组块中的相同字请求数据,则在一个周期中服务所有请求。具体来说,强化冲突逻辑以检查匹配索引。相应地,不是将所有较低优先级的PE停滞,而是将最高优先级PE的RAM地址发送到所有其他PE。如果另一个PE具有相同RAM地址,则它可以在与最高优先级PE相同的周期中读或写。否则,应该插入停滞。现在转到附图,图1是根据本公开的各个方面的示例数字信号处理器(DSP)IOO的示意框图。出于简明起见以及更好地理解本公开的创新概念,已将图1进行简化。可以在DSP100中添加额外的特征部件,以及在DSP100的其他实施方案中,可以替换或取消下文描述的一些特征部件。DSP100可以包括控制单元110、存储器120和计算阵列180。在示例中,控制单元110、计算阵列180和互连网络140、142、144构成能够执行DSP100的计算和数据处理功能的核130。DSP100的一些实施方案包括其他组件,如用于执行微控制器指令的微控制器、直接存储器存取(DMA)单元和到芯片外装置的各种接口。再者,虽然存储器120在此处示出为单个逻辑块,但是本领域那些技术人员将认识到存储器120可以包括系统主存储器、各种级别的芯片上高本文档来自技高网...
存储器体系结构

【技术保护点】

【技术特征摘要】
...

【专利技术属性】
技术研发人员:J·L·瑞德福特B·勒纳
申请(专利权)人:美国亚德诺半导体公司
类型:发明
国别省市:

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

1