用于选择命令发送到存储器的方法、存储器控制器和系统技术方案

技术编号:2848339 阅读:226 留言:0更新日期:2012-04-11 18:40
一种方法、设备、系统和信号承载介质,在实施例中选择命令以发送到存储器。在实施例中,如果如下情况中的一些或全部为真,则将写队列中不与冲突队列相冲突的最旧的命令发送到存储器和添加到冲突队列;读队列中的所有命令与冲突队列相冲突,来自处理器的任何读命令不与写队列相冲突,写队列中的命令数目大于第一阈值,以及冲突队列中的所有命令已经出现小于第二阈值。在实施例中,如果命令不与队列中的命令访问存储器中的同一高速缓存线,则该命令不与该队列相冲突。以此方式,在实施例中,写命令在减小了对于读命令性能的影响的时刻发送到存储器。

【技术实现步骤摘要】

本专利技术一般涉及计算机系统,更具体地涉及发送命令到存储器的存储器控制器。
技术介绍
常常将1948年的EDVAC计算机系统的开发称为计算机时代的开始。从那时起,计算机系统已经发展成在许多不同环境下可以找到的极为复杂的装置。计算机系统典型地包括硬件(例如半导体、电路板等)和软件(例如计算机程序)的组合。随着半导体处理和计算机体系结构的发展将计算机硬件的性能向更高水平推动,更为复杂的计算机软件已经得到了发展,以利用硬件的更高性能,带来了比仅仅数年前强大得多的当今计算机系统。对计算机系统的性能可以具有巨大影响的计算机系统的一个组件是存储器子系统。计算机系统典型地包括经由处理器总线连接到存储器子系统的一个或多个处理器。存储器子系统典型地包括经由存储器数据总线和相关联的控制信号连接到一个或多个同步动态随机访问存储器(SDRAM)的存储器控制器。存储器控制器负责接受来自处理器的存储器读和写(加载和存储)命令或请求、与SDRAM相联系以执行读或写命令、以及将与读操作相关联的任何数据从SDRAM返回到处理器。存储器控制器还具有管理存储器存储体(bank)定时、最大化存储器数据总线的利用、以及优化存储器访问,比如在可能时使得读优先于写,的任务。优化存储器访问对于计算机系统性能的提高已经是一个基本的问题。存储器控制器努力解决的一个存储器访问问题是读命令与写命令的选择。一般地,读命令对于系统性能是限制性因素,因为处理器必须等待读取数据,以便继续执行指令,或者处理器预取读取数据、然后试图隐藏存储器时延。写命令一般不是严重的问题,因为一旦处理器将写数据发送到存储器控制器,处理器认为它们就完成了。然而,存储器控制器具有固定数目的缓冲器(或队列)用以保持写命令和数据。一旦缓冲区近乎充满,由于存储器控制器中的写队列可能溢出,存储器控制器就需要发信号通知处理器不能接受新的命令了,这就拖延了总线。该拖延可能造成所有处理器命令的额外延迟;于是,对于读命令写命令可能成为一个性能问题。于是,需要一种选择适当的时间以将写命令发送到存储器的更佳方式,以便允许提高性能。
技术实现思路
提供了一种方法、设备、存储器控制器、系统和信号承载介质,在实施例中,选择命令以发送到存储器。在实施例中,如果如下情况中的一些或全部为真,则将写队列中不与冲突队列相冲突的最旧的命令发送到存储器和添加到冲突队列读队列中的所有命令与冲突队列相冲突,来自处理器的任何读命令不与写队列相冲突,写队列中的命令数目大于第一阈值,以及冲突队列中的所有命令已经出现小于第二阈值。在实施例中,如果命令不与队列中的命令访问存储器中的同一高速缓存线,则该命令不与该队列相冲突。以此方式,在实施例中,写命令在减小了对于读命令性能的影响的时刻发送到存储器。附图说明下文结合附图来描述本专利技术的各种实施例图1描绘了用于实现本专利技术实施例的示例系统的高层次框图。图2描绘了按照本专利技术实施例的示例存储器控制器的框图。图3描绘了按照本专利技术实施例的存储器控制器的示例处理流程图。图4描绘了按照本专利技术实施例的存储器控制器的另一示例处理流程图。图5描绘了按照本专利技术实施例的存储器控制器的另一示例处理流程图。然而,注意的是,附图仅图示了本专利技术的示例实施例,因此不应认为限制其范围,因为本专利技术可允许其他同等有效的实施例。具体实施例方式参见附图,其中相似的编号表示贯穿这几幅附图的相似部分。图1描绘了按照本专利技术实施例的计算机系统100的高层次框图表示,该计算机系统经由网络130连接到服务器计算机系统132。仅为了方便而使用了名称“计算机系统”和“服务器”,并且在实施例中,对于一个计算机工作为客户机的计算机可对于另一计算机工作为服务器,反之亦然,而且可使用任何适当的电子装置。在实施例中,计算机系统100的硬件组件可由IBM eServer iSeries或者pSeries计算机系统来实现。然而,本领域的技术人员将理解,本专利技术实施例的机制和设备同等地应用于任何适当的计算系统。计算机系统100的主要组件包括一个或多个处理器101、主存储器102、存储器控制器106、终端接口111、存储装置接口112、I/O(输入/输出)装置接口113和通信/网络接口114,所有组件经由存储器总线103、I/O总线104和I/O总线接口单元105相连接用于组件间的通信。计算机系统100包含一个或多个可编程的中央处理单元(CPU)101A、101B、101C和101D,这里整体上称为处理器101。处理器101可包括通用处理器、专用处理器和/或状态机,并且可经由总线103与存储器控制器106连接,以发出命令比如加载和存储(读和写)命令以便访问存储器102。在实施例中,计算机系统100包含相对大型的系统典型具有的多个处理器;然而,在另一实施例中,作为代替,计算机系统100是单个CPU系统。每个处理器101执行在主存储器102中存储的指令,并且可包括一级或多级板上高速缓存。主存储器102是用于存储数据和程序的随机访问半导体存储器。在另一实施例中,主存储器102代表计算机系统100的整个虚拟存储器,并且还可包括连接到计算机系统100或者经由网络130连接的其他计算机系统的虚拟存储器。主存储器102在概念上是单个的单片实体,但是在其他实施例中主存储器102是更复杂的配置,比如高速缓存和其他存储器装置的分等级体系。例如,存储器可以以多级高速缓存存在,并且这些高速缓存可进一步通过功能来划分,从而一个高速缓存保持指令,而另一个保持非指令数据,其由处理器使用。可将不同的CPU或CPU集进一步分配给存储器并与之相关联,正如在任何各种所谓的非一致性存储器访问(NUMA)计算机体系结构中所知的那样。在各种实施例中,存储器102可以是任何级别的高速缓存或者主存储器。在一种实施例中,将存储器102实现为DRAM(动态随机访问存储器),但是在其他实施例中可使用任何适当的存储器技术。存储器控制器106与存储器102之间的接口一般包括命令信号,比如由存储器控制器106驱动的经由具有数据线和数据选通的双向数据总线到存储器的读地址选通(RAS)和列地址选通(CAS)。由存储器控制器106驱动的每个命令信号典型地包含多个时延周期。另外,在例如存储器范围的存储体上执行这些命令之后,在该存储体能够进行另一操作之前,该存储体通常需要额外的周期来恢复。例如,为了实现读或加载,存储器控制器106打开该存储体,发出读命令,等待用于CAS时延的必要周期,并且接收来自存储器的数据突发。在该数据突发到存储器控制器之后,该存储体要求多个周期以预充电关联于该加载的内部总线的行。在实施例中,存储器控制器106包括处理器(类似于处理器101)和能够在其处理器上执行的指令或者能够由在其处理器上执行的指令解释的声明,以执行如以下参照图3、4和5进一步描述的功能。在另一实施例中,存储器控制器106可以以微码或固件实现。在另一实施例中,存储器控制器106可以借助于逻辑门和/或其他适当的硬件技术以硬件实现。下面参照图2进一步描述了存储器控制器106。存储器总线103提供了用于在处理器101、存储器控制器106和I/O总线接口单元105之间传送数据的数据通信路径。I/O总线接口单元105进一步连接到用于传送数据到各种I/O单元本文档来自技高网
...

【技术保护点】
一种方法,包括:确定写队列中的命令数目是否大于第一阈值;如果该确定为真,则判断冲突队列中的所有命令在该冲突队列中是否已经出现小于第二阈值周期数目;以及如果该判断为真,则选择该写队列中不与该冲突队列中的任何命令相冲突的 最旧的命令。

【技术特征摘要】
US 2005-4-28 11/116,6261.一种方法,包括确定写队列中的命令数目是否大于第一阈值;如果该确定为真,则判断冲突队列中的所有命令在该冲突队列中是否已经出现小于第二阈值周期数目;以及如果该判断为真,则选择该写队列中不与该冲突队列中的任何命令相冲突的最旧的命令。2.权利要求1的方法,进一步包括将不与该冲突队列中的任何命令相冲突的最旧的命令从该写队列发送到存储器。3.权利要求2的方法,进一步包括将不与该冲突队列中的任何命令相冲突的最旧的命令添加到该冲突队列。4.权利要求1的方法,其中该选择进一步包括确定该写队列中的该最旧的命令与该冲突队列中的任何命令是否要访问存储器中的同一个高速缓存线。5.权利要求1的方法,其中该冲突队列包括先前发送到存储器的命令。6.权利要求1的方法,其中该确定进一步包括确定读队列中的所有命令是否与该冲突队列相冲突。7.权利要求1的方法,其中该确定进一步包括确定来自处理器的任何读命令是否不与该写队列相冲突。8.一种存储器控制器,包括写队列;以及冲突队列,如果该写队列中的命令数目大于第一阈值,并且该冲突队列中的所有命令在该冲突队列中已经出现小于第二阈值周期数目,则该冲突队列将...

【专利技术属性】
技术研发人员:赫尔曼李布莱克蒙菲利普罗杰斯希利尔三世约瑟夫艾伦基尔希特布赖恩T范德普尔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1