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

用于多个读取请求的存储器控制制造技术

技术编号:2870580 阅读:165 留言:0更新日期:2012-04-11 18:40
确定多个读取请求的优先级。确定了优先级的读取请求中的第一读取请求被发送到存储设备。从存储设备接收对于第一读取请求的位。在发送第一读取请求后,在从存储设备接收对于第一读取请求的位的同时或者之前,确定了优先级的读取请求中的第二读取请求被发送到存储设备。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术一般地涉及计算机系统的领域。更具体地,本专利技术涉及用于计算机系统的存储器控制的领域。
技术介绍
举例来说,同步快闪存储器设备已经被设计来用数据突发块(databurst)响应来自处理器的外部读取请求。当快闪存储器设备接收到读取请求时,该快闪存储器设备检测(sense)快闪存储器的含有被请求数据的部分。在此初始的查找等待时间之后,快闪存储器设备不但输出被请求数据,而且输出任何通过预测处理器可能将来请求此数据而被附加检测的其它数据。在每个时钟周期此数据突发块都持续,直至所有的被检测数据都已被输出到处理器。然后快闪存储器设备可以接收另一个读取请求。通过检测比被请求数据更多的数据,就是说通过检测宽度,快闪存储器设备更充分地利用可使用的总线带宽,并且提供预测机制以帮助减少将来的读取请求的等待时间。如一个例子那样,处理器可以请求长度为16位的单个数据字。如果被请求的数据字没有被存储在处理器的高速缓存存储器中,则处理器将发送从快闪存储器设备读取该数据字的读取请求。随后快闪存储器设备可以检测四个连续的数据字,其中的一个是被请求数据字,并且举例来说,在四个时钟周期中每次输出16位将所有四个数据字输出到处理器。处理器然后可以在其高速缓存存储器中存储所有四个数据字。如果处理器以后请求该三个非被请求数据字中的任何一个,则处理器可以从其高速缓存存储器中获得所请求的数据,而不用通过快闪存储器设备进行另一次查找。但是如果非被请求数据后来没有被请求或者使用,则快闪存储器设备已经在检测和输出附加数据中浪费了能量。而且,由于输出非被请求数据所需的附加时间,快闪存储器设备可能已经不必要地延迟了其它读取请求的执行。附图说明本专利技术通过附图的诸图中的实例被说明,并且不限于此,其中同样的标记指示类似的元件,其中图1说明了用于多个读取请求的存储器控制的一个实施例的流程图;图2说明了一个具有存储控制器的示例性计算机系统,所述存储控制器为多个主机控制由存储设备执行的多个读取请求;图3说明了一个实施例的多个读取请求流水化作业的时序图;以及图4说明了另一个具有存储控制器的示例性计算机系统,所述存储控制器为多个主机控制由存储设备执行的多个读取请求。具体实施例方式根据本专利技术,即用于多个读取请求的存储器控制,下面的具体实施方式阐明了一个实施例或者多个实施例。在下面的详细描述中阐述了很多诸如示例性时序图、数据大小、计算机系统等的细节,以便于充分理解本专利技术。但是,很明显没有这些细节也可以实施本专利技术。在另外一些例子里,没有对公知的计算机部件等进行详细的描述,以避免喧宾夺主、淡化了本专利技术的主要内容。图1说明了用于多个读取请求的存储器控制的一个实施例的流程图100。根据流程图100,可以使用任何合适的计算机系统来进行用于多个读取请求的存储器控制。示例性计算机系统图2说明一个示例性计算机系统200以根据图1中的流程图100进行对于多个读取请求的存储器控制。对一个实施例,计算机系统200包括多个处理器202、204和206,一个存储控制器220,以及一个存储设备240。对一个实施例,举例来说,每个处理器202、204和206分别包括高速缓存存储器203、205和207中的一个以存储已经或者可能将分别被处理器202、204和206使用的程序代码和/或数据。虽然如所示出的,处理器202、204和206各自具有其自己的片上高速缓存存储器203、205和207,但每个处理器202、204和206可以具有一个或者多个相应的高速缓存存储器,所述高速缓存存储器中的每一个可以是片上的或者外部耦合到其相应的处理器202、204或206。一个或者多个这样的高速缓存存储器可以由一个以上的处理器202、204或206可选择地共享并因此具有一个以上的相应的处理器202、204或206。对另外的实施例,计算机系统200可以包括一个、两个或四个或者更多处理器。每个处理器202、204和206通过处理器总线210耦合到存储控制器220。处理器总线210可以具有任何合适的总线线数。对其它的实施例,每个处理器202、204和206可以通过单独的、各自的总线耦合到存储控制器220。如图2所示,对一个实施例,存储控制器220包括请求控制电路222和响应控制电路226。请求控制电路222包括请求队列224,响应控制电路226包括响应队列228。请求控制电路222、请求队列224、响应控制电路226和响应队列228可以各自包括任何合适的电路。存储控制器220通过控制总线232、地址总线234和数据总线236耦合到存储设备240。控制总线232、地址总线234和数据总线236可以各自包括任何合适的总线线数。如图2所示,对一个实施例,存储设备240包括访问电路242、存储器246和输出电路248。访问电路242和输出电路248各自被耦合到存储器246。访问电路242、存储器246和输出电路248可以各自包括任何合适的电路。对一个实施例,访问电路242包括地址缓冲区243。对一个实施例,输出电路248包括输出缓冲区249。举例来说,存储器246可以包括任何合适大小的任何合适类型的存储器以存储用于处理器202、204和/或206的任何合适的程序代码和/或数据。举例来说,存储器246可以用来存储例如由处理器202、204和/或206执行的操作系统软件之类的任何合适的固件。对一个实施例,存储器246包括快闪存储器。对于其它实施例,举例来说,存储器246可以包括只读存储器(ROM)、静态随机访问存储器(SRAM)或者伪静态随机访问存储器(PSRAM)。对一个实施例,存储控制器220和存储设备240被各自制造在单独的芯片上。对另一个实施例,存储控制器220与存储设备240集成在同一芯片上。对其中计算机系统200只包括一个诸如处理器202的处理器的一个实施例,存储控制器220可以与处理器202集成在同一芯片上。存储设备240然后可以与处理器202以及存储控制器220集成,或者可以制造在单独的芯片上。对其它实施例,计算机系统200可以包括任何合适部件的任何其它合适的组合。用于多个读取请求的存储器控制如图1中的方框102,举例来说,处理器202、204和/或206发送一个或者多个读取请求到存储控制器220以从存储设备240请求程序代码和/或数据。对一个实施例,举例来说,一个或者多个读取请求各自分别是为处理器202、204或206获取程序代码和/或数据的高速缓存线填充请求,其中所述的程序代码和/或数据目前没有被存储在高速缓存存储器203、205或207中。对一个实施例,处理器202、204和/或206可以各自具有预取和/或分支预测能力,因此举例来说,发出多个读取请求以请求处理器202、204或206预测其将使用的程序代码。处理器202、204和/或206可以以任何合适的顺序并根据任何合适的通信协议发送读取请求到存储控制器220。每个读取请求可以具有任何合适的格式。对一个实施例,每个读取请求指定一个虚拟的或者真实的地址,在此地址处被请求的程序代码和/或数据将被从存储设备240读取。对一个实施例,每个读取请求还可以标识发出该读取请求的处理器202、204或206。在方框104,存储控制器220接收多个读取请求。对一个实施本文档来自技高网...

【技术保护点】
一种方法,包括:    确定多个读取请求的优先级;    发送所述确定了优先级的读取请求中的第一读取请求至存储设备;    从所述存储设备接收对于所述第一读取请求的位;以及    在发送所述第一读取请求后,在从所述存储设备接收对于所述第一读取请求的位的同时或者之前,发送所述确定了优先级的读取请求中的第二读取请求至所述存储设备。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:兰斯多弗
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1