具有可编程巷宽的存储器集线器结构制造技术

技术编号:2844444 阅读:160 留言:0更新日期:2012-04-11 18:40
一种基于处理器的系统,该系统包括通过处理器总线连接到系统控制器的处理器。该系统控制器用于将至少一个输入设备、至少一个输出设备和至少一个数据存储设备连接到处理器上。连接到至少一个存储器模块上的存储器集线器控制器也连接在处理器总线上,所述至少一个存储器模块具有多个连接到存储器集线器的存储设备。存储器集线器通过下游总线和上游总线连接到存储器集线器控制器。下游总线的宽度为M比特,上游总线的宽度为N比特。虽然M与N的和是固定的,但在基于处理器的系统的运行期间可调节M和N的初始值,以调节下游总线和上游总线的带宽。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及具有系统存储器的基于处理器的系统,更具体地,涉及具有包含存储器集线器的存储器模块的基于处理器的系统,其中的存储器集线器通过存储器集线器控制器经由下游总线和上游总线连接到处理器上。
技术介绍
诸如计算机系统之类的基于处理器的系统采用存储器设备,例如动态随机存取存储器(“DRAM”)器件,作为系统存储器来存储处理器所访问的指令和数据。在典型的计算机系统中,处理器通过处理器总线和存储器控制器与系统存储器进行通信。处理器发出包括存储器命令(例如读出命令)在内的存储器请求和指明数据或指令将要写入或读出的地址。存储器控制器使用该命令和地址来产生应用于系统存储器的适当的命令信号以及行和列地址。响应该命令和地址,将数据在系统存储器和处理器之间进行传送。存储器控制器通常是系统控制器的一部分,其也包括用于将处理器总线连接到扩展总线的总线桥电路,例如PCI总线。尽管存储器设备的运行速度已连续增长,但运行速度的增长并没有跟上处理器运行速度的增长。更慢的是存储器命令、地址和数据可耦合在处理器与存储器设备之间的速度的增长。存储器控制器和存储器设备的相对慢的速度限制了处理器与存储器设备之间的数据带宽。一种增加来往于存储器设备的数据带宽的方法是使用如附图说明图1所示的通过存储器集线器连接到处理器的多存储器设备。采用存储器集线器结构的计算机系统100包括用于执行各种计算功能的处理器104,例如执行专用软件来进行专用计算或任务。处理器104包括处理器总线106,处理器总线106通常包括地址总线、控制总线和数据总线。处理器总线106典型地连接到高速缓冲存储器108,高速缓冲存储器108通常为静态随机存取器(“SRAM”)。最后,处理器总线106连接到系统控制器110,有时系统控制器110也称作总线桥。系统控制器110包含连接到处理器104的存储器集线器控制器128。存储器集线器控制器128还通过总线系统134连接到几个存储器模块130a-n上。存储器模块130a-n中的每一个都包括通过命令、地址和数据总线连接到几个存储器设备148上的存储器集线器140,这些总线共同示为总线150。存储器集线器140有效地在控制器128和存储器设备148之间发送存储器请求和响应。由于处理器104可以访问存储器模块130a-n中的一个,而同时存储器模块130a-n中的另一个正在响应在前的存储器访问,因此采用上述结构的计算机系统可具有更高的带宽。例如,处理器104可将写入数据输出给系统中存储器模块130a-n中的一个,而同时系统中存储器模块130a-n中的另一个正准备将读出数据提供给处理器140。采用存储器集线器结构的计算机系统的运行效率可更实际地大幅度增加存储器系统的数据带宽。存储器集线器结构还可以大大提高计算机系统的存储容量。系统控制器110还用作各种其他部件通往处理器104的通信路径。更具体地,系统控制器110包括典型地连接到图形控制器112的图形端口,图形控制器112再连接到视频终端114上。系统控制器110还连接到一个或多个诸如键盘或鼠标之类的输入设备118,从而允许操作者与计算机系统100进行交互。典型地,计算机系统100还包括通过系统控制器110连接到处理器104的一个或多个输出设备120,例如打印机。典型地,还将一个或多个数据存储设备124通过系统控制器110连接到处理器104上,从而允许处理器104从内部或外部存储介质(未示出)存储数据或检索数据。典型的存储设备124的示例包括硬盘和软盘、盒式磁带以及光盘只读存储器(CD-ROM)。由于总线系统134的点到点特性允许更快的电信号发送,以及由于DRAM的隔离特性允许在几个模块中并行或重叠作业,因此存储器集线器结构可大大增加从存储器存储或检索数据的速率。实际上,使用几个存储器模块的存储器系统可以共同以如此高的速度发送和接收数据,从而使总线系统134可以成为限制存储器系统数据带宽的“瓶颈”,其中存储器模块的每一个都包含存储器集线器。使得采用存储器集线器结构的存储器系统的数据带宽最大化的一种技术是使用高速“下游”总线154以及与下游总线154分开的“上游”总线156实现总线系统134。下游总线154和上游总线具有相同宽度,即导线数量。高速下游总线154将包含存储器命令、地址和写入数据的数据包从存储器集线器控制器128耦合到存储器模块130,并从存储器模块130耦合到更加远离存储器集线器控制器128的存储器模块130上。高速上游总线156将包含读出数据和标识符的数据包从存储器模块130耦合到存储器集线器控制器128,并从存储器模块130耦合到更接近存储器集线器控制器128的存储器模块130。使用两种不同的单方向总线的优点在于消除了周转延迟,并允许存储器集线器控制器同时传送和接收数据。也可以使用不同类型的存储器信令协议来最大化采用存储器集线器结构的存储器系统的数据带宽。除了使用传统的地址、数据和控制总线,每个存储器请求或“事务”的地址、数据和控制位在单独的数据包中一起发送。该数据包包括命令头,命令头之后跟随着读出或写入数据。命令头包括对应于诸如写入或读出命令之类的存储器命令的位、指定该请求所指向的存储器模块的识别位、以及指定该请求所访问的特定存储器模块中的存储器设备148的地址的地址位。命令头还指定了跟随在命令头之后的读出或写入数据的数量。分组存储器系统的使用允许存储器集线器控制器128通过简单地发送数据包来发出存储器请求,替代了发送由命令、地址以及在写入请求情况下的写入数据信号组成的序列。因此,存储器集线控制器128以更快的速度发出存储器请求。此外,分组存储器系统使存储器集线器控制器128不必留意每个存储器请求的处理细节。取而代之的是,存储器集线器控制器128只需要传送数据包。存储器请求所指向的存储器模块130中的存储器集线器则直接处理存储器请求,而无需进一步与存储器集线器控制器128相互作用。在读出请求的情况下,存储器集线器140将数据包直接或通过介于其间的存储器模块130传回存储器集线器控制器128,该数据包中含有读出数据以及命令头中用来识别读出数据的标识位。存储器集线器控制器128使用标识位将读出数据与特定的存储器请求联系起来。尽管图1所示的存储器集线器结构可以使处理器104与存储器设备148之间的数据带宽具有显著的增长,但它仍然不能提供最佳性能。特别是,下游总线154或上游总线156的容量会限制数据包进入或输出存储器模块130的速率,从而限制数据带宽。通常,变得超负荷的特定总线154、156取决于存储器访问的性质。由此使得,通过下游总线154的存储器写入的流量要比通过上游总线156的流量多很多。存储器读出仍需要通过下游总线154来耦合包含命令和地址的数据包,但存储器读出通常会导致通过上游总线156的更多的流量。因此,主要由写入构成的存储器访问趋向于使下游总线154超负荷,而主要由读出构成的存储器访问趋向于使上游总线156超负荷。在任何一种情况下,结果都是在处理器104和存储器设备148之间降低数据带宽。因此,需要一种存储器集线器结构可以进一步避免连接在存储器集线器控制器与一个或多个存储器集线器之间的下游总线或上游总线超负荷。
技术实现思路
一种可在基于处理器的系统中使用本文档来自技高网
...

【技术保护点】
在具有存储器集线器控制器和至少一个存储器模块的存储器系统中,所述至少一个存储器模块具有存储器集线器以及连接到所述存储器集线器的多个存储器设备,一种用于在所述存储器集线器控制器与在所述至少一个存储器模块中的存储器集线器之间耦合命令、地址和数据信号的方法,所述方法包括:使用具有第一容量的通信通道,将命令、地址和数据信号从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器;使用具有第二容量的通信通道,将数据信号从所述至少一个存储器模块中的存储器集线器耦合到所述存储器集线器控制器,其中第一容量与第二容量之和为固定值;以及在所述存储器系统运行期间改变第一容量和第二容量。

【技术特征摘要】
【国外来华专利技术】US 2004-3-8 10/797,7271.在具有存储器集线器控制器和至少一个存储器模块的存储器系统中,所述至少一个存储器模块具有存储器集线器以及连接到所述存储器集线器的多个存储器设备,一种用于在所述存储器集线器控制器与在所述至少一个存储器模块中的存储器集线器之间耦合命令、地址和数据信号的方法,所述方法包括使用具有第一容量的通信通道,将命令、地址和数据信号从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器;使用具有第二容量的通信通道,将数据信号从所述至少一个存储器模块中的存储器集线器耦合到所述存储器集线器控制器,其中第一容量与第二容量之和为固定值;以及在所述存储器系统运行期间改变第一容量和第二容量。2.如权利要求1所述的方法,其中改变第一容量和第二容量的动作包括根据所述信号从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器的速率,以及所述信号从所述至少一个存储器模块中的存储器集线器耦合到所述存储器集线器控制器的速率来改变第一容量和第二容量。3.如权利要求2所述的方法,其中改变第一容量和第二容量的动作包括在所述存储器集线器控制器上,确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率;以及根据所确定的在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率来改变第一容量和第二容量。4.如权利要求2所述的方法,其中改变第一容量和第二容量的动作包括在所述至少一个存储器模块的存储器集线器上,确定在所述存储器集线器控制器与所述存储器集线器之间耦合所述信号的速率;以及根据所确定的在所述存储器集线器控制器与所述存储器集线器之间耦合所述信号的速率来改变第一容量和第二容量。5.如权利要求2所述的方法,其中改变第一容量和第二容量的动作包括使用软件来确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率;以及根据所述软件所确定的速率改变第一容量和第二容量。6.如权利要求5所述的方法,其中使用所述软件来确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率的动作包括使用操作系统软件来确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率。7.如权利要求2所述的方法,其中改变第一容量和第二容量的动作包括在不同于所述至少一个存储器模块中的所述存储器集线器的位置处确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率;将表示所确定的速率的信息传送给所述至少一个存储器模块的存储器集线器;以及根据所传送的信息改变第一容量和第二容量。8.如权利要求2所述的方法,其中改变第一容量和第二容量的动作包括在不同于所述存储器集线器控制器的位置处确定在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率;将表示所确定的速率的信息传送给所述存储器集线器控制器;以及根据所传送的信息改变第一容量和第二容量。9.如权利要求1所述的方法,其中在所述存储器系统运行期间改变第一容量和第二容量的动作包括将所述存储器集线器控制器与所述至少一个存储器模块的存储器集线器中的缓冲器配置为输入缓冲器或输出缓冲器。10.如权利要求1所述的方法,其中改变第一容量和第二容量的动作包括根据预期所述信号将要从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器的速率,以及根据预期所述信号将要从所述至少一个存储器模块中的存储器集线器耦合到所述存储器集线器控制器的速率来改变第一容量和第二容量。11.如权利要求10所述的方法,其中改变第一容量和第二容量的动作包括根据包含在所述存储器系统相关联的系统中的硬件类型,确定预期所述信号将要在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合的速率;以及根据所确定的预期将要在所述存储器集线器控制器与所述至少一个存储器模块中的存储器集线器之间耦合所述信号的速率来改变第一容量和第二容量。12.如权利要求1所述的方法,其中在存储器系统运行期间改变第一容量和第二容量的动作包括在第一容量和第二容量的最小值和最大值之间改变第一容量和第二容量。13.如权利要求1所述的方法,其中改变第一容量和第二容量的动作包括手动改变第一容量和第二容量。14.如权利要求13所述的方法,其中手动改变第一容量和第二容量的动作包括手动调整至少一个电连接。15.如权利要求1所述的方法,其中将命令、地址和数据信号从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器的动作包括将含有命令、地址和数据信号的数据包从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器。16.如权利要求1所述的方法,其中在所述存储器系统运行期间改变第一容量和第二容量的动作包括在所述存储器系统初始化期间改变第一容量和第二容量。17.在具有存储器集线器控制器、至少一个存储器模块以及总线的存储器系统中,所述至少一个存储器模块具有存储器集线器以及连接到所述存储器集线器的多个存储器设备,所述总线具有M条连接在所述存储器集线器控制器与所述至少一个存储器模块的存储器集线器之间的信号线,一种用于在所述存储器集线器控制器与所述至少一个存储器模块的存储器集线器之间经由所述总线耦合命令、地址和数据信号的方法,所述方法包括使用所述总线的M条信号线中的N条线,将命令、地址和数据信号从所述存储器集线器控制器耦合到所述至少一个存储器模块中的存储器集线器;使用所述总线的M条信号线中的P条线,将数据信号从所述至少一个存储器模块中的存储器集线器耦合到所述存储器集线器控制器,其中N+P=M;以及在所述存储器系统运行期间改变N和P的值。18.如权利要求17所述的方法,其中改变信号线的第一数量和信号线的第二数量的动作包括根据信号通过所述总线进行耦合的速率来改变N和P的值。19.如权利要求18所述的方法,其中改变N和P的值的动作包括在所述存储器集线器控制器上,确定通过所述总线耦合所述信号的速率;以及根据所确定的通过所述总线耦合所述信号的速率来改变N和P的值。20.如权利要求18所述的方法,其中改变N和P的值的动作包括在所述至少一个存储器模块的存储器集线器上,确定通过所述总线耦合所述信号的速率;以及根据所确定的通过所述总线耦合所述信号的速率来改变N和P的值。21.如权利要求18所述的方法,其中改变N和P的值的动作包括使用软件来确定通过所述总线耦合所述信号的速率;以及根据所述软件所确定的速率改变N和P的值。22.如权利要求21所述的方法,其中使用所述软件来确定通过所述总线耦合所述信号的速率的动作包括使用操作系统软件来确定通过所述总线耦合所述信号的速率。23.如权利要求18所述的方法,其中根据通过所述总线耦合所述信号的速率来改变N和P的值的动作包括根据通过所述总线从所述存储器集线器控制器向所述至少一个存储器模块中的存储器集线器耦合所述信号的速率来改变N和P的值。24.如权利要求18所述的方法,其中根据通过所述总线耦合所述信号的速率来改变N和P的值的动作包括根据通过所述总线从所述至少一个存储器模块中的存储器集线器向所述存储器集线器控制器耦合所述信号的速率来改变N和P的值。25.如权利要求18所述的方法,其中改变N和P的值的动作包括在不同于所述至少一个存储器模块中的所述存储器集线器的位置上确定通过所述总线耦合所述信号的速率;将表示所确定的速率的信息传送给所述至少一个存储器模块的存储器集线器;以及根据所传送的信息改变N和P的值。26.如权利要求18所述的方法,其中改变N和P的值的动作包括在不同于所述存储器集线器控制器的位置上确定通过所述总线耦合所述信号的速率;将表示所确定的速率的信息传送给所述存储器集线器控制器;以及根据所传送的信息改变N和P的值。27.如权利要求17...

【专利技术属性】
技术研发人员:杰弗里R约布斯托马斯A施滕格莱因
申请(专利权)人:米克伦技术公司
类型:发明
国别省市:US[美国]

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

1