当前位置: 首页 > 专利查询>英特尔公司专利>正文

存储器控制器和由存储器控制器执行的方法技术

技术编号:13722930 阅读:94 留言:0更新日期:2016-09-18 10:02
实施例包括与重排序从动态随机存取存储器(DRAM)检索的数据相关联的系统、方法和装置。存储器控制器可以配置成从中央处理单元(CPU)接收指令并且基于指令从DRAM检索顺序数据。存储器控制器然后可以配置成重排序顺序数据并且将经重排序的数据放置在向量寄存器文件的一个或多个位置中。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的实施例一般涉及存储器访问的

技术介绍
本文所提供的
技术介绍
描述出于一般地呈现公开内容的上下文的目的。当前提名的专利技术人的就在本
技术介绍
章节中加以描述而言的工作以及在提交时原本可能未取得现有技术资格的描述的方面既不明确地也不暗含地被承认是针对本公开的现有技术。除非本文中以其它方式指示,本章节中所描述的方法不是本公开中的权利要求的现有技术,且不因包含在本章节中而被承认是现有技术。可能要求密集型计算的许多应用以及特别是高性能计算应用(诸如图形)可能对向量起作用。例如,数据可以被加载到向量寄存器文件中且然后由与彼此并行工作的多个向量处理单元处理。具体地,可以将数据划分在向量寄存器文件的多个向量寄存器之间,并且然后,向量处理单元可以处理给定向量寄存器中的数据。在实施例中,从多个存储器地址检索数据并将数据写入到向量寄存器中的过程可以被称为“聚集”操作。相反,将数据从向量寄存器写入到多个存储器地址位置中的过程可以被称为“分散”操作。附图说明通过结合附图的以下详细描述,将容易理解实施例。为了便于该描述,相似的附图标记指代相似的结构元件。在附图的各图中通过示例的方式而非通过限制的方式图示了实施例。图1图示了依照各种实施例的包括存储器控制器的示例系统。图2图示了依照各种实施例的存储器重排序操作的示例表。图3图示了依照各种实施例的存储器重排序操作的可替换示例表。图4图示了依照各种实施例的用于重排序从存储器读取的数据的示例过程。图5图示了依照各种实施例的配置成施行本文所描述的过程的示例系统。具体实施方式在以下详细描述中,参照形成其部分的附图,其中相似的附图标记自始至终指代相似的部分,并且其中通过图示的方式示出了可实践的实施例。要理解的是,在不脱离于本公开的范围的情况下,可以利用其它实施例并且可以做出结构或逻辑改变。因此,以下详细描述不应在限制的意义上理解,并且实施例的范围由随附权利要求及其等同物限定。本文描述了与顺序数据的处理相关联的装置、方法和存储介质。具体地,在遗留系统中,向量寄存器文件可以包括多个向量寄存器,并且多个向量处理单元化单元可以配置成处理每一个相应向量寄存器的数据。例如,顺序数据可以被划分成一系列数据“组块”,并且每一个组块可以由不同的向量处理单元来处理。在一些实施例中,对于具体向量处理单元而言,处理具体数据组块而非另一数据组块可能是合期望的。在现有遗留系统中,顺序数据可以从存储器读取,并且顺序数据的每一个组块可以被放置到向量寄存器文件的向量寄存器中。接着,可以搅乱各种向量寄存器中的数据的次序,使得所期望的数据组块处于向量寄存器文件的所期望的向量寄存器中。最后,数据可以由各种向量处理单元来处理。然而,本文中的实施例提供了一种过程,其可以提高将数据加载到向量处理单元中并处理该数据的效率。具体地,在本文所描述的实施例中,中央处理单元(CPU)可以向与其中存储数据的存储器(诸如动态随机存取存储器(DRAM))耦合的存储器控制器发送命令。基于该命令,存储器控制器可以从DRAM检索数据并在数据被加载到向量寄存器文件的一个或多个向量寄存器中之前重排序数据。然后,存储器控制器可以根据重排序将经重排序的数据加载到向量寄存器文件的一个或多个向量寄存器中。可以通过在检索过程期间而不是在数据被加载到向量寄存器文件中之后重排序数据来实现各种益处。例如,被要求从CPU传输的信号的数目可以减少。此外,加载和处理时间以及因而系统的等待时间可以减少。还可以实现附加或可替换的益处。各种操作可以以最有助于理解所要求保护的主题的方式而被依次描述为多个分立的动作或操作。然而,描述的次序不应当被解释为暗示这些操作必然是依赖于次序的。特别地,这些操作可以不以呈现的次序施行。所描述的操作可以以与所描述的实施例不同的次序施行。可以施行各种附加操作,和/或可以在附加实施例中省略所描述的操作。出于本公开的目的,短语“A和/或B”和“A或B”意指(A)、(B)或(A和B)。出于本公开的目的,短语“A、B和/或C” 意指(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。描述可以使用短语“在一个实施例中”或者“在实施例中”,其均可以是指相同或不同实施例中的一个或多个。另外,如关于本公开的实施例所使用的术语“包含”、“包括”、“具有”等是同义的。如本文所使用的,术语“电路”可以是指下述各项、是下述各项的一部分或包括下述各项:执行一个或多个软件或固件程序的专用集成电路(ASIC)、电子电路、处理器(共享、专用或组)和/或存储器(共享、专用或组)、组合逻辑电路和/或提供所描述的功能性的其它合适硬件组件。如本文所使用的,“计算机实现的方法”可以是指由一个或多个处理器、具有一个或多个处理器的计算机系统、诸如智能电话之类的移动设备(其可以包括一个或多个处理器)、平板电脑、膝上型计算机、机顶盒、游戏控制台等执行的任何方法。图1描绘了系统100的示例,系统100可以允许数据到向量寄存器文件中的更高效的聚集。在实施例中,CPU 105,并且具体地,CPU 105的元件,诸如以下讨论的向量寄存器文件130,可以经由一个或多个总线与存储器控制器110耦合。在实施例中,存储器控制器110可以此外与DRAM 120耦合。在本文所描述的实施例中,DRAM 120可以是同步DRAM(SDRAM)、双数据速率(DDR)DRAM(诸如第二代(DDR2)、第三代(DDR3)或第四代(DDR4)DRAM)或某种其它类型的DRAM。在一些实施例中,存储器控制器110可以经由DDR通信链路125与DRAM 120耦合。在实施例中,存储器控制器110可以此外与CPU 105的向量寄存器文件130耦合,向量寄存器文件130可以包括多个向量寄存器135a、135b和135c。在一些实施例中,向量寄存器文件130可以被称为单指令多数据(SIMD)寄存器文件。每一个向量寄存器可以配置成存储由存储器控制器110从DRAM 120检索的数据的部分。在实施例中,向量寄存器文件130可以与CPU 105的多个向量处理单元140a、140b和140c耦合。向量处理单元140a、140b和140c可以配置成与向量处理单元140a、140b或140c中的另一个处理向量寄存器文件130的不同的一个或多个向量寄存器135a、135b或135c中的数据的另一部分并行地处理向量寄存器文件130的向量寄存器135a、135b或135c中的一个或多个中的数据的部分。例如,向量处理单元140a可以与向量处理单元140b处理向量寄存器135b的数据并行地处理向量寄存器135a的数据。尽管图1仅将向量寄存器文件130描绘为具有三个向量寄存器135a、135b和135c,但是在其它实施例中,向量寄存器文件130可以具有更多或更少的向量寄存器。此外,系统100可以包括比图1中描绘的三个向量处理单元140a、140b和140c更多或更少的向量处理单元。尽管某些元件被示出为彼此的元件或者与彼此耦合,但是在其它实施例中,一个或多个元件可以以片上系统(SoC)或系统级封装(SiP)配置而处于相同芯片或封装上,或者可以与彼此分离。例如,向量寄存器文件130和/或向量处理单元140a、140本文档来自技高网...

【技术保护点】
一种存储器控制器,包括:检索电路,配置成至少部分地基于来自中央处理单元(CPU)的指令检索包括以第一顺序排序的多个部分的数据;重排序电路,与检索电路耦合且配置成至少部分地基于所接收到的指令重排序数据使得所述多个部分以不同于第一顺序的第二顺序排序;以及存储电路,配置成至少部分地基于所接收到的指令以第二顺序将所述多个部分存储在向量寄存器文件的相应多个位置中。

【技术特征摘要】
【国外来华专利技术】1.一种存储器控制器,包括:检索电路,配置成至少部分地基于来自中央处理单元(CPU)的指令检索包括以第一顺序排序的多个部分的数据;重排序电路,与检索电路耦合且配置成至少部分地基于所接收到的指令重排序数据使得所述多个部分以不同于第一顺序的第二顺序排序;以及存储电路,配置成至少部分地基于所接收到的指令以第二顺序将所述多个部分存储在向量寄存器文件的相应多个位置中。2.权利要求1的存储器控制器,其中第二顺序至少部分地基于指令的起始列地址。3.权利要求1的存储器控制器,其中第二顺序至少部分地基于指令中的突发类型的指示。4.权利要求3的存储器控制器,其中突发类型的指示是突发类型是顺序突发类型还是交织突发类型的指示。5.权利要求1的存储器控制器,其中第二顺序至少部分地基于CPU的管脚设定。6.权利要求1-5中任一项的存储器控制器,其中存储器控制器与配置成存储数据的动态随机存取存储器(DRAM)耦合。7.权利要求1-5中任一项的存储器控制器,其中数据是64字节长。8.权利要求7的存储器控制器,其中所述多个部分中的每一个部分是8字节长。9.一种方法,包括:通过存储器控制器并且至少部分地基于从中央处理单元(CPU)接收的指令检索顺序数据的第一部分和顺序数据的第二部分,第一部分和第二部分在顺序数据中靠近于彼此;通过存储器控制器将第一部分放置在向量寄存器文件的第一非顺序位置中;以及通过存储器控制器将第二部分放置在向量寄存器文件的第二非顺序位置中。10.权利要求9的方法,其中存储器控制器还配置成将第一部分放置在向量寄存器文件的第一非顺序位置中以供与存储器控制器耦合的第一向量处理单元处理;并且存储器控制器还配置成将第二部分放置在向量寄存器文件的第二非顺序位置中以供与存储器控制器耦合的第二向量处理单元处理。11.权利要求9的方法,还包括通过存储器控制器至少部分地基于指令中的起始列地址从向量寄存器文件的多个位置选择向量寄存器文...

【专利技术属性】
技术研发人员:SLL卢C夏B荣A谢菲尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1