CN1938691A - 基于集线器的存储器系统中具有数据包存储器的仲裁系统以及用于存储器响应的方法 - Google Patents
基于集线器的存储器系统中具有数据包存储器的仲裁系统以及用于存储器响应的方法 Download PDFInfo
- Publication number
- CN1938691A CN1938691A CNA2005800106804A CN200580010680A CN1938691A CN 1938691 A CN1938691 A CN 1938691A CN A2005800106804 A CNA2005800106804 A CN A2005800106804A CN 200580010680 A CN200580010680 A CN 200580010680A CN 1938691 A CN1938691 A CN 1938691A
- Authority
- CN
- China
- Prior art keywords
- memory
- response
- hub
- packet
- request identifier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种存储器集线器模块包括接收存储器请求,确定与每个存储器请求相联系的存储器请求标识符的解码器。数据包存储器接收存储器请求标识符并储存这些存储器请求标识符。数据包跟踪器接收远程存储器响应并且将每个远程存储器响应与一个存储器请求标识符联系起来,并且从所述数据包存储器中去除所述存储器请求标识符。多路复用器接收远程存储器响应和本地存储器响应。多路复用器响应控制信号选择输出。仲裁控制逻辑连接到所述多路复用器和所述数据包存储器,并且产生所述控制信号来选择存储器响应供输出。
Description
对相关申请的交叉引用
本申请要求2004年2月5日提交的,标题为ARBITRATIONSYSTEM HAVING A PACKET MEMORY AND METHOD FORMEMORY RESPONSES IN A HUB-BASED MEMORY SYSTEM的第10/773,520号美国专利申请的优先权,在这里将它全部引入作为参考。
技术领域
本发明涉及计算机系统,具体而言,涉及包括系统存储器的计算机系统,其中的系统存储器具有存储器集线器体系结构。
背景技术
计算机系统使用存储器装置,比如动态随机存取存储器(DRAM)装置,来储存由处理器访问的数据。这些存储器装置常常被用作计算机系统里的系统存储器。在典型的计算机系统里,处理器通过处理器总线和存储器控制器与系统存储器通信。处理器发出存储器请求,这种请求包括存储器命令,比如读命令,还包括指定从中读出数据或指令的位置的地址。存储器控制器利用这种命令和地址产生适当的命令信号以及行、列地址,应用于系统存储器。响应这些命令和地址,在系统存储器和处理器之间传递数据。存储器控制器常常是系统控制器的一部分,系统控制器还包括总线桥电路,用于将处理器总线连接到扩展总线,比如PCI总线。
虽然存储器装置的工作速度不断提高,但是工作速度的这种提高没能跟上处理器工作速度的提高。将处理器连接到存储器装置的存储器控制器的工作速度的提高甚至更慢。存储器控制器和存储器装置较慢的速度限制了处理器和存储器装置之间的数据带宽。
除了处理器和存储器装置之间有限的带宽以外,计算机系统性能还受到等待时间问题的限制,其中的等待时间问题延长了从系统存储器装置读出数据所需要的时间。更具体地说,将存储器装置读命令发送给系统存储器装置比如同步DRAM(SDRAM)装置的时候,读出的数据只有在几个时钟周期的延迟以后才从SDRAM装置输出。因此,虽然SDRAM装置能够以高数据率同步地输出脉冲串数据,但是提供数据的初始延迟会显著地降低采用这种SDRAM装置的计算机系统的工作速度。
缓解这种存储器等待问题的一种途径是采用通过存储器集线器连接到处理器的多个存储器装置。在存储器集线器体系结构里,存储器集线器控制器通过一条高速数据链路连接到几个存储器模块。典型情况下,这些存储器模块按照点到点或者菊链体系结构连接,从而使这些存储器模块互相串联。这样,以一种菊链方式,存储器集线器控制器通过第一高速数据链路连接到第一存储器模块,第一存储器模块通过第二高速数据链路连接到第二存储器模块,第二存储器模块通过第三高速数据链路连接到第三存储器模块,并以此类推。
每个存储器模块都包括连接到对应高速数据链路的存储器集线器和这个模块上的多个存储器装置,存储器集线器通过高速数据链路在控制器和存储器装置之间有效地传递存储器请求和存储器响应。每个存储器请求典型情况下都包括指定这个请求调用的存储器访问类型(例如读或写)的存储器命令,指定要访问的存储器位置的存储器地址,以及在写存储器请求的情况下的写数据。存储器请求通常还包括说明正在访问的存储器模块的信息,但是这一点可以通过将不同地址映射到不同存储器模块来实现。存储器响应通常只为读存储器请求提供,并且通常包括读出数据,以及让存储器集线器控制器能够识别对应于存储器响应的存储器请求的识别首部。但是应该明白,也可以使用具有其它特性的存储器请求和存储器响应。在任何情况下,在以下描述中,存储器集线器控制器发出的存储器请求从一个存储器集线器向下游传递到另一个,而存储器响应则从一个存储器集线器向上游传递到另一个,直到到达存储器集线器控制器。采用这种体系结构的计算机系统会具有更高带宽,因为处理器能够访问一个存储器装置,而同时另一个存储器装置正在响应在此之前的存储器访问。例如,处理器可以将写数据输出给系统中的存储器装置之一,而系统中的另一个存储器装置则在准备提供读出数据给处理器。此外,这种体系结构还支持很容易地扩展系统存储器,而不用考虑增加了更多存储器模块时信号质量的下降,就象传统多站式总线体系结构里发生的一样。
虽然采用存储器集线器的计算机系统可以提供优异的性能,但是因为多种原因它们常常不能以最佳速度工作。例如,虽然存储器集线器能够为计算机系统提供更大的存储器带宽,但是它们仍然受到上述类型的等待时间问题的困扰。具体而言,虽然一个存储器装置正在准备传递数据的同时,处理器可以与另一个存储器装置通信,但是有时在能够使用来自一个存储器装置的数据之前,需要收到来自另一个存储器装置的数据。在能够使用从一个存储器装置收到的数据之前,必须收到来自另一个存储器装置的数据这种情况下,等待时间问题仍然会降低这种计算机系统的工作速度。
存储器集线器系统中会降低存储器传递速度的另一个因素是在高速链路上向上游从一个集线器向另一个集线器传递读数据(也就是回到存储器集线器控制器)。每个集线器必须确定是首先发送本地响应还是首先转发来自下游存储器集线器的响应,做这件事的方式会影响具体响应的实际等待时间,更会影响系统存储器总的等待时间。可以将这一判断叫做仲裁,每个集线器在本地请求和向上游的数据传递之间进行仲裁。
在具有存储器集线器体系结构的系统存储器里,需要一种系统和方法用于仲裁数据传递,以缩短系统存储器的等待时间。
发明内容
根据本发明的一个方面,存储器集线器模块包括解码器,这个解码器接收存储器请求,并且确定与每个存储器请求相联系的存储器请求标识符。数据包存储器接收存储器请求标识符,并且储存这些存储器请求标识符。数据包跟踪器接收远程存储器响应,将每个远程存储器响应与存储器请求标识符联系起来,并且从数据包存储器中去除这个存储器请求标识符。多路复用器接收远程存储器响应和本地存储器响应。多路复用器响应控制信号来选择输出。与多路复用器和数据包存储器连接的仲裁控制逻辑产生这个控制信号,以选择存储器响应供输出。
附图说明
图1是包括系统存储器的计算机系统的框图,该系统存储器具有本发明一个实例中的高带宽存储器集线器体系结构。
图2是说明本发明一个实例中包括在图1所示集线器控制器里的仲裁系统的功能框图。
图3a和3b是本发明一个实例中图2所示数据包存储器的功能说明。
具体实施方式
在图1中示出本发明一个实施例里的计算机系统100。计算机系统100包括具有存储器集线器体系结构的系统存储器102,该存储器集线器体系结构包括多个存储器模块130,每个存储器模块都包括一个对应的存储器集线器140。每个存储器集线器140都在来自上面包含了这个集线器的存储器模块130的存储器响应与来自下游存储器模块的存储器响应之间进行仲裁,通过这种方式,存储器集线器通过控制响应用多快的速度返回系统控制器110来有效地控制系统存储器中各个存储器模块的等待时间,如同下面将更加详细地描述的一样。在以下描述中,给出了特定细节,以帮助对本发明的充分理解。但是,本领域里的技术人员会明白,可以实践本发明而没有这些具体细节。在其它情形下,众所周知的电路、控制信号、时序协议和/或软件操作都没有详细示出,或者被全部省略,以避免没有必要地模糊本发明。
计算机系统100包括处理器104,用于实现各种计算功能,例如执行专用软件来完成特殊计算或任务。处理器104通常是具有处理器总线106的中央处理单元(CPU),处理器总线106正常情况下包括地址总线、控制总线和数据总线。处理器总线106通常都与缓冲存储器108连接,如上所述,缓冲存储器108常常是静态随机存取存储器(SRAM)。最后,处理器总线106与系统控制器110连接,这个系统控制器110有时也叫做“北桥”或“存储器控制器”。
系统控制器110充当存储器模块130和各种其它组件到处理器104的通信路径。更具体地说,系统控制器110包括通常连接到图形控制器112的图形端口,图形控制器112则连接到视频终端114。系统控制器110还连接到一个或多个输入装置118,例如键盘或鼠标,以便允许操纵员与计算机系统100对接。典型情况下,计算机系统100还包括一个或多个输出装置120,例如打印机,通过系统控制器110连接到处理器104。通常还有一个或多个数据存储装置124通过系统控制器110连接到处理器104,从而允许处理器104将数据存入内部或外部存储介质,或者从内部或外部存储介质取出(没有示出)。典型存储装置124的实例包括硬盘和软盘、磁带和光盘只读存储器(CD-ROM)。
系统控制器110还包括连接到系统存储器102的存储器集线器控制器(MHC)132,其中系统存储器102包括存储器模块130a、b……n,系统控制器110还发出命令来控制和访问存储器模块中的数据。存储器模块130通过各自的高速链路134A和134B以一种点到点体系结构连接起来,这些高速链路是在存储器模块130a和存储器集线器控制器132之间以及在相邻存储器模块130a~n之间连接的。高速链路134A是下行链路,用来将来自存储器集线器控制器132的存储器请求传递给存储器模块130a~n。高速链路134B是上行链路,用来将来自存储器模块130a~n的存储器响应传递给存储器集线器控制器132。高速链路134A和134B可以是光学、RF或电通信路径,也可以是某些其它合适类型的通信路径,如同本领域技术人员所了解的一样。如果用光通信路径来实现高速链路134A和134B,那么每条光通信路径都可以是例如一根或多根光纤的形式。在这种系统里,存储器集线器控制器132和存储器模块130将各自包括光输入/输出端口或者与对应的光通信路径连接的分开的输入端口和输出端口。虽然将存储器模块130示出为以一种点到点体系结构与存储器集线器控制器132连接,但是也可以使用的其它拓扑结构,比如环形拓扑结构,对于本领域技术人员而言是显而易见的。
存储器模块130中的每一个都包括存储器集线器140,用于通过对应的高速链路134A和134B通信,以及用于控制对8个存储器装置148的访问,在图1所示的实例中,这8个存储器装置是同步动态随机存取存储器(SDRAM)装置。存储器集线器140各自包括与对应高速链路134A和134B连接的输入和输出端口,端口的性质和数量取决于高速链路的特性。可以使用更少或更多存储器装置148,还可以使用不同于SDRAM装置以外的存储器装置。存储器集线器140通过总线系统150与系统存储器装置148的每一个连接,这里的总线系统150通常包括控制总线、地址总线和数据总线。
如上所述,存储器集线器140中的每一个都执行仲裁处理,这个仲裁处理控制与包含这个集线器的存储器模块130相联系的存储器响应以及来自下游存储器模块的存储器响应返回存储器集线器控制器132的方式。在以下说明中,将把与特定存储器集线器140和对应的存储器模块130相联系的存储器响应叫做“本地响应”,而将来自下游存储器模块的存储器响应叫做“下游响应”。在工作过程中,每个存储器集线器140都执行一个必需的仲裁处理,以控制本地和下游响应返回存储器集线器控制器132的方式。例如,每个集线器140都可以给予下游响应以优先级,从而优先于需要向上游发送的本地响应来向上游转发这些下游响应。反过来,每个存储器集线器140也可以给予本地响应以优先级,从而优先于需要向上游发送的下游响应向上游转发这些本地响应。下面将更加详细地描述存储器集线器140能够执行的仲裁处理的实例。
每个存储器集线器140都可以执行不同的仲裁处理或者所有集线器都可以执行同样的处理,根据系统存储器102所需要的特性来作出这一决定。要注意只有在本地和下游存储器响应之间存在冲突的情况下才进行每个存储器集线器140执行的这一仲裁处理。这样,当本地和下游存储器响应都需要同时向上游返回的时候,每个存储器集线器140只需要执行对应的仲裁处理。在标题为“Arbitration System andMethod for Memory Responses in a Hub-Based Memory System”的第10/690,810号申请中描述了仲裁方案的其它实例,在这里将这一申请引入作为参考。
在图2中示出图1的集线器控制器140里的仲裁系统200包括的一个实例。下行链路接收器202接收存储器请求。这些存储器请求包括标识符和请求部分,在其中请求部分是写请求的时候请求部分包括数据。在这里将标识符叫做数据包ID,或者存储器请求标识符。解码器204与下行链路接收器202连接,并且确定与每个存储器请求相联系的存储器请求标识符。存储器请求标识符储存在数据包存储器206里。图2所示的数据包存储器206是先入先出(FIFO)存储器,但是在其它实施例中也可以使用其它缓存方案。通过这种方式,与传送到集线器控制器的每个存储器请求相联系的数据包ID或者存储器请求标识符都储存在数据包存储器206里。当数据包存储器206是FIFO存储器的时候,存储器请求标识符按照时间顺序储存。在以下描述中,与特定存储器集线器140以及对应存储器模块130相联系的存储器请求叫做“本地存储器请求”,而发送给下游存储器模块130的存储器请求则叫做“远程存储器请求”。
下行链路接收器202收到的本地存储器请求通过下行链路管理模块210和控制器212发送给与存储器装置148连接的存储器接口214。由存储器接口214接收本地存储器响应,并通过控制器212将其发送给上行链路管理模块220。
将下行链路接收器202收到的远程存储器请求发送给下行链路发送器216,以便在下行链路134A上发送给下游集线器。连接到上行链路134B的上行链路接收器222接收远程存储器响应。远程存储器响应包括标识符部分和数据有效载荷部分。标识符部分或者存储器响应标识符标识数据有效载荷响应的存储器请求。数据包跟踪器224连接到上行链路接收器。数据包跟踪器224识别存储器响应标识符。在一些实施例里,通过上行链路发送器226发送远程存储器响应的时候,数据包跟踪器224从数据包存储器206去除相联系的存储器请求标识符。
多路复用器208与上行链路发送器226、上行链路管理模块220、上行链路接收器222和仲裁控制逻辑230连接。多路复用器208将来自本地存储器响应的数据或者来自远程存储器响应的数据传递给上行链路发送器226。选择哪一种存储器响应——本地的还是远程的——传递给发送器226的选择是根据仲裁控制逻辑230产生的控制信号确定的。仲裁控制逻辑230连接到数据包存储器206,并且因此能够确定数据包存储器206里最老的存储器请求。当本地请求是数据包存储器206里最老的存储器请求的时候,仲裁控制逻辑230为多路复用器208产生控制信号,导致本地存储器响应被传递给上行链路发送器226,输出给上行链路134B。当远程请求是数据包存储器206里最老的存储器请求的时候,仲裁控制逻辑230发出控制信号给多路复用器208,导致远程存储器响应被传递给上行链路发送器226,输出给上行链路134B。在一些实施例里,默认将远程存储器响应传送给上行链路发送器226。在其它实施例里,默认将本地存储器响应发送给上行链路发送器226。
在图3a~b里示出数据包存储器206的一个实例。在图3a所示的实施例中,收到了远程请求R0、R1和R2,请求标识符储存在数据包存储器里。然后收到本地请求L1和L2,接下来是R3,等等。在这个实例里,将远程存储器请求按照收到的样子转发,从数据包存储器206去除对应的请求标识符。即使收到对请求L1的本地存储器响应,如果链路正在使用中,也不发送本地响应,直到请求L1是数据包存储器206里最老的,如同图3b所示的实例一样,其中已经发送完与请求R0、R1和R2相联系的响应。
在前面的描述里,给出了特定的细节来帮助充分理解本发明。但是,本领域里的技术人员会明白可以实践本发明而不需要这些具体细节。更进一步,本领域里的技术人员会明白上面描述的示例性实施例并没有限制本发明的范围,还会理解各种等同实施例或者所公开的示例性实施例的组合都在本发明的范围之内。上面给出的说明性实例仅仅是为了进一步说明各个实施例的特定细节,而不应当将它们解释为限制本发明的范围。还有,在上面的描述里,没有详细地示出或者描述公知组件的操作,以免不必要地模糊本发明。最后,本发明仅仅受限于后面的权利要求,而不受限于所描述的本发明的实例或实施例。
Claims (33)
1.一种存储器集线器,包括:
解码器,用于接收存储器请求,并且确定与每个存储器请求相联系的存储器请求标识符;
数据包存储器,与所述解码器连接,该数据包存储器用于从所述解码器接收存储器请求标识符,并且储存收到的存储器请求标识符;
数据包跟踪器,与所述数据包存储器连接,所述数据包存储器用于接收远程存储器响应,并且将收到的每个远程存储器响应与所述数据包存储器里储存的存储器请求标识符相联系,所述数据包跟踪器用于从所述数据包存储器中有效地去除所述存储器请求标识符;
多路复用器,用于响应控制信号,将收到的所述远程存储器响应或者所述本地存储器响应传送给输出端;以及
仲裁控制逻辑,连接到所述多路复用器和所述数据包存储器,用于产生所述控制信号。
2.如权利要求1所述的存储器集线器,其中所述仲裁控制逻辑基于所述数据包存储器中最老的存储器请求标识符产生所述控制信号。
3.如权利要求1所述的存储器集线器,其中所述数据包存储器是先入先出(FIFO)存储器。
4.如权利要求1所述的存储器集线器,其中所述仲裁控制逻辑产生所述控制信号,从而如果所述数据包存储器中最老的存储器请求是本地存储器请求,所述多路复用器输出本地存储器响应。
5.如权利要求1所述的存储器集线器,其中所述本地和远程存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
6.一种存储器集线器,用于接收本地存储器响应和远程存储器响应,所述存储器集线器用于储存收到的所述存储器响应,并且应用仲裁算法,在与储存的所述本地和远程存储器响应相对应的存储器请求的储存时间的基础之上,选择将储存的所述本地和远程存储器响应提供到上行链路输出端上去的顺序。
7.如权利要求6所述的存储器集线器,其中所述存储器集线器还包括数据包存储器,该数据包存储器按照收到对应存储器请求的顺序储存所述存储器请求标识符。
8.如权利要求7所述的存储器集线器,其中所述存储器集线器还包括连接到所述数据包存储器的多路复用器,所述多路复用器响应控制信号,在输出端上提供本地或者远程存储器响应。
9.如权利要求8所述的存储器集线器,其中所述存储器集线器还包括连接到所述数据包存储器和所述多路复用器的仲裁逻辑,并且其中所述仲裁逻辑施加所述控制信号给所述多路复用器,以控制在所述输出端上提供哪些存储器响应。
10.如权利要求6所述的存储器集线器,其中所述本地和远程存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
11.一种存储器模块,包括:
多个存储器装置;以及
存储器集线器,与所述多个存储器装置连接,所述存储器集线器包括:
解码器,用于接收存储器请求,并且用于确定与每个存储器请求相联系的存储器请求标识符;
数据包存储器,用于接收存储器请求标识符,并且储存所述存储请求标识符;
数据包跟踪器,用于接收远程存储器响应,并且用于将每个远程存储器响应与一个存储器请求标识符联系起来,以及从所述数据包存储器里去除所述存储器请求标识符;
多路复用器,用于响应控制信号,接收远程存储器响应和本地存储器响应,并且用于选择输出;以及
仲裁控制逻辑,连接到所述多路复用器和所述数据包存储器,用于产生所述控制信号来控制选择哪一个存储器响应进行输出的选择。
12.如权利要求11所述的存储器模块,其中所述多个存储器装置的每一个都包括SDRAM。
13.如权利要求11所述的存储器模块,其中所述仲裁控制逻辑基于所述数据包存储器中最老的存储器请求标识符来产生所述控制信号。
14.如权利要求11所述的存储器模块,其中所述数据包存储器是先入先出(FIFO)存储器。
15.如权利要求11所述的存储器集线器,其中所述仲裁控制逻辑产生所述控制信号,从而如果所述数据包存储器里最老的存储器请求是本地存储器请求,所述多路复用器就输出本地存储器响应。
16.如权利要求11所述的存储器集线器,其中所述本地和远程存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
17.一种存储器系统,包括:
存储器集线器控制器;
多个存储器模块,每个存储器模块都通过相应的高速链路连接到多个相邻存储器模块,所述多个存储器模块中的至少一个通过相应的高速链路连接到所述存储器集线器控制器,并且每个存储器模块包括:
多个存储器装置;以及
连接到所述多个存储器装置的存储器集线器,所述存储器集线器包括,
解码器,用于接收存储器请求,并且用于确定与每个存储器请求相联系的存储器请求标识符;
数据包存储器,用于接收存储器请求标识符并储存所述存储器请求标识符;
数据包跟踪器,用于接收远程存储器响应,并且用于将每个远程存储器响应与一个存储器请求标识符联系起来,以及从所述数据包存储器里去除所述存储器请求标识符;
多路复用器,用于响应控制信号,接收远程存储器响应和本地存储器响应,并且用于选择输出;以及
仲裁控制逻辑,连接到所述多路复用器和所述数据包存储器,并且用于产生所述控制信号,控制选择输出哪一个存储器响应的选择。
18.如权利要求17所述的存储器系统,其中所述高速链路中的每一条都包括光通信链路。
19.如权利要求17所述的存储器系统,其中所述存储器装置中的至少一些包括SDRAM。
20.如权利要求17所述的存储器系统,其中所述仲裁控制逻辑基于所述数据包存储器中储存的存储器请求标识符的储存时间来产生所述控制信号。
21.如权利要求20所述的存储器系统,其中所述仲裁控制逻辑产生所述控制信号,从而如果所述数据包存储器中最老的存储器请求是本地存储器请求,所述多路复用器就输出本地存储器响应。
22.如权利要求17所述的存储器系统,其中所述数据包存储器是先入先出(FIFO)存储器。
23.如权利要求17所述的存储器系统,其中所述本地和远程存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
24.一种计算机系统,包括:
处理器;
系统控制器,连接到所述处理器,所述系统控制器包括存储器集线器控制器;
输入装置,通过所述系统控制器连接到所述处理器;
输出装置,通过所述系统控制器连接到所述处理器;
存储装置,通过所述系统控制器连接到所述处理器;
多个存储器模块,每个存储器模块通过相应的高速链路连接到多个相邻存储器模块,所述多个存储器模块中的至少一个通过相应的高速链路连接到所述存储器集线器控制器,并且每个存储器模块都包括:
多个存储器装置;以及
连接到所述多个存储器装置并且连接到对应的所述多条高速链路的存储器集线器,所述存储器集线器包括,
解码器,用于接收存储器请求,并且用于确定与每个存储器请求相联系的存储器请求标识符;
数据包存储器,用于接收存储器请求标识符并储存所述存储器请求标识符;
数据包跟踪器,用于接收远程存储器响应,并且用于将每个远程存储器响应与一个存储器请求标识符联系起来,以及从所述数据包存储器里去除所述存储器请求标识符;
多路复用器,用于响应控制信号,接收远程存储器响应和本地存储器响应,并且用于选择输出;以及
仲裁控制逻辑,连接到所述多路复用器和所述数据包存储器,并且用于产生所述控制信号,控制选择输出哪一个存储器响应的选择。
25.如权利要求24所述的计算机系统,其中所述高速链路中的每一条都包括光通信链路。
26.如权利要求24所述的计算机系统,其中所述存储器装置中的至少一些包括SDRAM。
27.如权利要求24所述的计算机系统,其中所述处理器包括中央处理单元(CPU)。
28.如权利要求24所述的计算机系统,其中所述本地和下游存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
29.一种在存储器系统中处理和转发存储器响应的方法,该存储器系统包括多个存储器模块,每个存储器模块都包括连接到多个存储器装置的存储器集线器,该方法包括:
接收存储器请求,每个存储器请求都有存储器请求标识符;
储存所述存储器请求标识符;
储存来自所述存储器装置的本地存储器响应;
储存来自远程存储器模块的远程存储器响应;
在至少一个集线器里,基于储存的所述存储器请求标识符的储存时间,应用仲裁算法,以确定将储存的所述本地和远程存储器响应转发给上游存储器模块的顺序;以及
根据确定的所述顺序向上游转发所述本地和远程存储器响应。
30.如权利要求29所述的方法,其中所述本地和远程存储器响应中的每一个都包括数据和标识与所述存储器响应相对应的存储器请求的首部。
31.如权利要求29所述的方法,还包括基于储存的最老的存储器请求标识符产生表明所述顺序的控制信号。
32.如权利要求29所述的方法,其中所述存储器请求标识符是按照先入先出(FIFO)方式来储存和访问的。
33.如权利要求29所述的方法,还包括产生控制信号,从而如果储存的最老的存储器请求是本地存储器请求,就转发本地存储器响应。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/773,520 US7412574B2 (en) | 2004-02-05 | 2004-02-05 | System and method for arbitration of memory responses in a hub-based memory system |
US10/773,520 | 2004-02-05 | ||
PCT/US2005/003015 WO2005076856A2 (en) | 2004-02-05 | 2005-01-26 | Arbitration system having a packet memory and method for memory responses in a hub-based memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1938691A true CN1938691A (zh) | 2007-03-28 |
CN1938691B CN1938691B (zh) | 2010-05-12 |
Family
ID=34826780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800106804A Active CN1938691B (zh) | 2004-02-05 | 2005-01-26 | 仲裁存储器响应的系统、方法和装置 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7412574B2 (zh) |
EP (1) | EP1723527B1 (zh) |
JP (1) | JP4586031B2 (zh) |
KR (1) | KR100854946B1 (zh) |
CN (1) | CN1938691B (zh) |
TW (1) | TWI327273B (zh) |
WO (1) | WO2005076856A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853135A (zh) * | 2012-12-06 | 2014-06-11 | 硅实验室公司 | 调节对从设备的访问 |
CN104137083A (zh) * | 2012-12-28 | 2014-11-05 | 松下电器产业株式会社 | 接口装置及存储器总线系统 |
CN109564547A (zh) * | 2016-08-19 | 2019-04-02 | Arm有限公司 | 存储器单元和存储器单元处理操作请求的操作方法 |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133991B2 (en) * | 2003-08-20 | 2006-11-07 | Micron Technology, Inc. | Method and system for capturing and bypassing memory transactions in a hub-based memory system |
US7136958B2 (en) | 2003-08-28 | 2006-11-14 | Micron Technology, Inc. | Multiple processor system and method including multiple memory hub modules |
US7120743B2 (en) | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7788451B2 (en) | 2004-02-05 | 2010-08-31 | Micron Technology, Inc. | Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system |
US7366864B2 (en) | 2004-03-08 | 2008-04-29 | Micron Technology, Inc. | Memory hub architecture having programmable lane widths |
US7257683B2 (en) | 2004-03-24 | 2007-08-14 | Micron Technology, Inc. | Memory arbitration system and method having an arbitration packet protocol |
US6980042B2 (en) | 2004-04-05 | 2005-12-27 | Micron Technology, Inc. | Delay line synchronizer apparatus and method |
US7363419B2 (en) | 2004-05-28 | 2008-04-22 | Micron Technology, Inc. | Method and system for terminating write commands in a hub-based memory system |
US7296129B2 (en) | 2004-07-30 | 2007-11-13 | International Business Machines Corporation | System, method and storage medium for providing a serialized memory interface with a bus repeater |
WO2006025348A1 (ja) * | 2004-08-30 | 2006-03-09 | Matsushita Electric Industrial Co., Ltd. | 記録装置、システム、集積回路、プログラム、記録方法 |
US7331010B2 (en) | 2004-10-29 | 2008-02-12 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem |
US7299313B2 (en) | 2004-10-29 | 2007-11-20 | International Business Machines Corporation | System, method and storage medium for a memory subsystem command interface |
US7277988B2 (en) * | 2004-10-29 | 2007-10-02 | International Business Machines Corporation | System, method and storage medium for providing data caching and data compression in a memory subsystem |
US7356737B2 (en) * | 2004-10-29 | 2008-04-08 | International Business Machines Corporation | System, method and storage medium for testing a memory module |
US7512762B2 (en) | 2004-10-29 | 2009-03-31 | International Business Machines Corporation | System, method and storage medium for a memory subsystem with positional read data latency |
US20070016698A1 (en) * | 2005-06-22 | 2007-01-18 | Vogt Pete D | Memory channel response scheduling |
US7650557B2 (en) * | 2005-09-19 | 2010-01-19 | Network Appliance, Inc. | Memory scrubbing of expanded memory |
US7478259B2 (en) | 2005-10-31 | 2009-01-13 | International Business Machines Corporation | System, method and storage medium for deriving clocks in a memory system |
US7685392B2 (en) | 2005-11-28 | 2010-03-23 | International Business Machines Corporation | Providing indeterminate read data latency in a memory system |
US7584336B2 (en) * | 2006-06-08 | 2009-09-01 | International Business Machines Corporation | Systems and methods for providing data modification operations in memory subsystems |
US7669086B2 (en) | 2006-08-02 | 2010-02-23 | International Business Machines Corporation | Systems and methods for providing collision detection in a memory system |
US7539842B2 (en) * | 2006-08-15 | 2009-05-26 | International Business Machines Corporation | Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables |
US7870459B2 (en) | 2006-10-23 | 2011-01-11 | International Business Machines Corporation | High density high reliability memory module with power gating and a fault tolerant address and command bus |
US7721140B2 (en) | 2007-01-02 | 2010-05-18 | International Business Machines Corporation | Systems and methods for improving serviceability of a memory system |
JP5669338B2 (ja) * | 2007-04-26 | 2015-02-12 | 株式会社日立製作所 | 半導体装置 |
US8700830B2 (en) * | 2007-11-20 | 2014-04-15 | Spansion Llc | Memory buffering system that improves read/write performance and provides low latency for mobile systems |
US8601181B2 (en) * | 2007-11-26 | 2013-12-03 | Spansion Llc | System and method for read data buffering wherein an arbitration policy determines whether internal or external buffers are given preference |
US8370720B2 (en) * | 2009-08-19 | 2013-02-05 | Ocz Technology Group, Inc. | Mass storage device and method for offline background scrubbing of solid-state memory devices |
Family Cites Families (183)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3742253A (en) | 1971-03-15 | 1973-06-26 | Burroughs Corp | Three state logic device with applications |
US4078228A (en) | 1975-03-24 | 1978-03-07 | Ohkura Electric Co., Ltd. | Loop data highway communication system |
US4045781A (en) | 1976-02-13 | 1977-08-30 | Digital Equipment Corporation | Memory module with selectable byte addressing for digital data processing system |
US4253146A (en) | 1978-12-21 | 1981-02-24 | Burroughs Corporation | Module for coupling computer-processors |
US4245306A (en) | 1978-12-21 | 1981-01-13 | Burroughs Corporation | Selection of addressed processor in a multi-processor network |
US4253144A (en) | 1978-12-21 | 1981-02-24 | Burroughs Corporation | Multi-processor communication network |
US4240143A (en) | 1978-12-22 | 1980-12-16 | Burroughs Corporation | Hierarchical multi-processor network for memory sharing |
US4608702A (en) | 1984-12-21 | 1986-08-26 | Advanced Micro Devices, Inc. | Method for digital clock recovery from Manchester-encoded signals |
US4724520A (en) | 1985-07-01 | 1988-02-09 | United Technologies Corporation | Modular multiport data hub |
US4843263A (en) | 1986-01-10 | 1989-06-27 | Nec Corporation | Clock timing controller for a plurality of LSI chips |
US4707823A (en) | 1986-07-21 | 1987-11-17 | Chrysler Motors Corporation | Fiber optic multiplexed data acquisition system |
US4831520A (en) | 1987-02-24 | 1989-05-16 | Digital Equipment Corporation | Bus interface circuit for digital data processor |
JPH07117863B2 (ja) | 1987-06-26 | 1995-12-18 | 株式会社日立製作所 | オンラインシステムの再立上げ方式 |
US4891808A (en) | 1987-12-24 | 1990-01-02 | Coherent Communication Systems Corp. | Self-synchronizing multiplexer |
US5251303A (en) | 1989-01-13 | 1993-10-05 | International Business Machines Corporation | System for DMA block data transfer based on linked control blocks |
US5442770A (en) | 1989-01-24 | 1995-08-15 | Nec Electronics, Inc. | Triple port cache memory |
US4953930A (en) | 1989-03-15 | 1990-09-04 | Ramtech, Inc. | CPU socket supporting socket-to-socket optical communications |
US4982185A (en) | 1989-05-17 | 1991-01-01 | Blh Electronics, Inc. | System for synchronous measurement in a digital computer network |
JPH03156795A (ja) | 1989-11-15 | 1991-07-04 | Toshiba Micro Electron Kk | 半導体メモリ回路装置 |
US5317752A (en) | 1989-12-22 | 1994-05-31 | Tandem Computers Incorporated | Fault-tolerant computer system with auto-restart after power-fall |
US5313590A (en) | 1990-01-05 | 1994-05-17 | Maspar Computer Corporation | System having fixedly priorized and grouped by positions I/O lines for interconnecting router elements in plurality of stages within parrallel computer |
JP2772103B2 (ja) | 1990-03-28 | 1998-07-02 | 株式会社東芝 | 計算機システム立上げ方式 |
US5243703A (en) | 1990-04-18 | 1993-09-07 | Rambus, Inc. | Apparatus for synchronously generating clock signals in a data processing system |
IL96808A (en) | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
BE1004668A3 (nl) | 1991-04-02 | 1993-01-05 | Bell Telephone Mfg | Beschermingsinrichting voor een optische zender/ontvangerinrichting. |
US5461627A (en) | 1991-12-24 | 1995-10-24 | Rypinski; Chandos A. | Access protocol for a common channel wireless network |
JP2554816B2 (ja) | 1992-02-20 | 1996-11-20 | 株式会社東芝 | 半導体記憶装置 |
US5355391A (en) | 1992-03-06 | 1994-10-11 | Rambus, Inc. | High speed bus system |
JP3517237B2 (ja) | 1992-03-06 | 2004-04-12 | ラムバス・インコーポレーテッド | 同期バス・システムおよびそのためのメモリ装置 |
AU3936693A (en) | 1992-03-25 | 1993-10-21 | Encore Computer U.S., Inc. | Fiber optic memory coupling system |
US5432907A (en) | 1992-05-12 | 1995-07-11 | Network Resources Corporation | Network hub with integrated bridge |
US5270964A (en) | 1992-05-19 | 1993-12-14 | Sun Microsystems, Inc. | Single in-line memory module |
GB2270780A (en) | 1992-09-21 | 1994-03-23 | Ibm | Scatter-gather in data processing systems. |
CA2150024C (en) * | 1992-11-25 | 2001-06-12 | Gregory V. Kabenjian | Pipelined data ordering system |
IT1262098B (it) * | 1993-04-02 | 1996-06-19 | Danieli Off Mecc | Cesoia volante ad alta velocita' |
JPH0713945A (ja) | 1993-06-16 | 1995-01-17 | Nippon Sheet Glass Co Ltd | 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造 |
US5497494A (en) | 1993-07-23 | 1996-03-05 | International Business Machines Corporation | Method for saving and restoring the state of a CPU executing code in protected mode |
US5729709A (en) | 1993-11-12 | 1998-03-17 | Intel Corporation | Memory controller with burst addressing circuit |
US5502621A (en) | 1994-03-31 | 1996-03-26 | Hewlett-Packard Company | Mirrored pin assignment for two sided multi-chip layout |
US5566325A (en) | 1994-06-30 | 1996-10-15 | Digital Equipment Corporation | Method and apparatus for adaptive memory access |
US6175571B1 (en) | 1994-07-22 | 2001-01-16 | Network Peripherals, Inc. | Distributed memory switching hub |
US5978567A (en) | 1994-07-27 | 1999-11-02 | Instant Video Technologies Inc. | System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver |
US5553070A (en) | 1994-09-13 | 1996-09-03 | Riley; Robert E. | Data link module for time division multiplexing control systems |
US5715456A (en) | 1995-02-13 | 1998-02-03 | International Business Machines Corporation | Method and apparatus for booting a computer system without pre-installing an operating system |
US5638534A (en) * | 1995-03-31 | 1997-06-10 | Samsung Electronics Co., Ltd. | Memory controller which executes read and write commands out of order |
US5875352A (en) | 1995-11-03 | 1999-02-23 | Sun Microsystems, Inc. | Method and apparatus for multiple channel direct memory access control |
US5834956A (en) | 1995-12-29 | 1998-11-10 | Intel Corporation | Core clock correction in a 2/N mode clocking scheme |
US5966724A (en) | 1996-01-11 | 1999-10-12 | Micron Technology, Inc. | Synchronous memory device with dual page and burst mode operations |
US5832250A (en) | 1996-01-26 | 1998-11-03 | Unisys Corporation | Multi set cache structure having parity RAMs holding parity bits for tag data and for status data utilizing prediction circuitry that predicts and generates the needed parity bits |
US5819304A (en) | 1996-01-29 | 1998-10-06 | Iowa State University Research Foundation, Inc. | Random access memory assembly |
US5659798A (en) | 1996-02-02 | 1997-08-19 | Blumrich; Matthias Augustin | Method and system for initiating and loading DMA controller registers by using user-level programs |
US5687325A (en) | 1996-04-19 | 1997-11-11 | Chang; Web | Application specific field programmable gate array |
US6064706A (en) | 1996-05-01 | 2000-05-16 | Alcatel Usa, Inc. | Apparatus and method of desynchronizing synchronously mapped asynchronous data |
US5818844A (en) | 1996-06-06 | 1998-10-06 | Advanced Micro Devices, Inc. | Address generation and data path arbitration to and from SRAM to accommodate multiple transmitted packets |
US5900020A (en) * | 1996-06-27 | 1999-05-04 | Sequent Computer Systems, Inc. | Method and apparatus for maintaining an order of write operations by processors in a multiprocessor computer to maintain memory consistency |
US5875454A (en) | 1996-07-24 | 1999-02-23 | International Business Machiness Corporation | Compressed data cache storage system |
JPH1049511A (ja) | 1996-08-02 | 1998-02-20 | Oki Electric Ind Co Ltd | 1チップマイクロコンピュータ |
JP4070255B2 (ja) | 1996-08-13 | 2008-04-02 | 富士通株式会社 | 半導体集積回路 |
TW304288B (en) | 1996-08-16 | 1997-05-01 | United Microelectronics Corp | Manufacturing method of semiconductor memory device with capacitor |
US5706224A (en) | 1996-10-10 | 1998-01-06 | Quality Semiconductor, Inc. | Content addressable memory and random access memory partition circuit |
US6272600B1 (en) | 1996-11-15 | 2001-08-07 | Hyundai Electronics America | Memory request reordering in a data processing system |
US6167486A (en) | 1996-11-18 | 2000-12-26 | Nec Electronics, Inc. | Parallel access virtual channel memory system with cacheable channels |
KR100239716B1 (ko) * | 1996-12-30 | 2000-01-15 | 김영환 | 소형 컴퓨터 시스템 인터페이스 콘트롤러의 진단 테스트 장치 |
US6308248B1 (en) | 1996-12-31 | 2001-10-23 | Compaq Computer Corporation | Method and system for allocating memory space using mapping controller, page table and frame numbers |
US6031241A (en) | 1997-03-11 | 2000-02-29 | University Of Central Florida | Capillary discharge extreme ultraviolet lamp source for EUV microlithography and other related applications |
US6271582B1 (en) | 1997-04-07 | 2001-08-07 | Micron Technology, Inc. | Interdigitated leads-over-chip lead frame, device, and method for supporting an integrated circuit die |
KR100202385B1 (ko) | 1997-06-04 | 1999-06-15 | 윤종용 | Hdlc를 이용한 반이중 통신용 송신 장치 |
US6243769B1 (en) | 1997-07-18 | 2001-06-05 | Micron Technology, Inc. | Dynamic buffer allocation for a computer system |
US6073190A (en) | 1997-07-18 | 2000-06-06 | Micron Electronics, Inc. | System for dynamic buffer allocation comprising control logic for controlling a first address buffer and a first data buffer as a matched pair |
US6105075A (en) | 1997-08-05 | 2000-08-15 | Adaptec, Inc. | Scatter gather memory system for a hardware accelerated command interpreter engine |
JP4014708B2 (ja) * | 1997-08-21 | 2007-11-28 | 株式会社ルネサステクノロジ | 半導体集積回路装置の設計方法 |
US6249802B1 (en) | 1997-09-19 | 2001-06-19 | Silicon Graphics, Inc. | Method, system, and computer program product for allocating physical memory in a distributed shared memory network |
DE69811262T2 (de) * | 1997-10-10 | 2003-11-27 | Rambus Inc., Los Altos | Verfahren und vorrichtung zur ausfallsicheren resynchronisation mit minimaler latenzzeit |
JPH11120120A (ja) | 1997-10-13 | 1999-04-30 | Fujitsu Ltd | カードバス用インターフェース回路及びそれを有するカードバス用pcカード |
US5987196A (en) | 1997-11-06 | 1999-11-16 | Micron Technology, Inc. | Semiconductor structure having an optical signal path in a substrate and method for forming the same |
US6098158A (en) | 1997-12-18 | 2000-08-01 | International Business Machines Corporation | Software-enabled fast boot |
US6014721A (en) | 1998-01-07 | 2000-01-11 | International Business Machines Corporation | Method and system for transferring data between buses having differing ordering policies |
US6023726A (en) | 1998-01-20 | 2000-02-08 | Netscape Communications Corporation | User configurable prefetch control system for enabling client to prefetch documents from a network server |
US6721860B2 (en) * | 1998-01-29 | 2004-04-13 | Micron Technology, Inc. | Method for bus capacitance reduction |
GB2333896B (en) * | 1998-01-31 | 2003-04-09 | Mitel Semiconductor Ab | Vertical cavity surface emitting laser |
US6186400B1 (en) | 1998-03-20 | 2001-02-13 | Symbol Technologies, Inc. | Bar code reader with an integrated scanning component module mountable on printed circuit board |
US6038630A (en) | 1998-03-24 | 2000-03-14 | International Business Machines Corporation | Shared access control device for integrated system with multiple functional units accessing external structures over multiple data buses |
US6079008A (en) | 1998-04-03 | 2000-06-20 | Patton Electronics Co. | Multiple thread multiple data predictive coded parallel processing system and method |
US6247107B1 (en) | 1998-04-06 | 2001-06-12 | Advanced Micro Devices, Inc. | Chipset configured to perform data-directed prefetching |
JPH11316617A (ja) * | 1998-05-01 | 1999-11-16 | Mitsubishi Electric Corp | 半導体回路装置 |
US6167465A (en) | 1998-05-20 | 2000-12-26 | Aureal Semiconductor, Inc. | System for managing multiple DMA connections between a peripheral device and a memory and performing real-time operations on data carried by a selected DMA connection |
US6405280B1 (en) * | 1998-06-05 | 2002-06-11 | Micron Technology, Inc. | Packet-oriented synchronous DRAM interface supporting a plurality of orderings for data block transfers within a burst sequence |
US6134624A (en) | 1998-06-08 | 2000-10-17 | Storage Technology Corporation | High bandwidth cache system |
US6301637B1 (en) * | 1998-06-08 | 2001-10-09 | Storage Technology Corporation | High performance data paths |
US6067649A (en) | 1998-06-10 | 2000-05-23 | Compaq Computer Corporation | Method and apparatus for a low power self test of a memory subsystem |
US6453377B1 (en) * | 1998-06-16 | 2002-09-17 | Micron Technology, Inc. | Computer including optical interconnect, memory unit, and method of assembling a computer |
US6289068B1 (en) * | 1998-06-22 | 2001-09-11 | Xilinx, Inc. | Delay lock loop with clock phase shifter |
JP2000011640A (ja) | 1998-06-23 | 2000-01-14 | Nec Corp | 半導体記憶装置 |
FR2780535B1 (fr) * | 1998-06-25 | 2000-08-25 | Inst Nat Rech Inf Automat | Dispositif de traitement de donnees d'acquisition, notamment de donnees d'image |
US6912637B1 (en) * | 1998-07-08 | 2005-06-28 | Broadcom Corporation | Apparatus and method for managing memory in a network switch |
US6286083B1 (en) | 1998-07-08 | 2001-09-04 | Compaq Computer Corporation | Computer system with adaptive memory arbitration scheme |
JP3248617B2 (ja) * | 1998-07-14 | 2002-01-21 | 日本電気株式会社 | 半導体記憶装置 |
US6272609B1 (en) * | 1998-07-31 | 2001-08-07 | Micron Electronics, Inc. | Pipelined memory controller |
US6061296A (en) | 1998-08-17 | 2000-05-09 | Vanguard International Semiconductor Corporation | Multiple data clock activation with programmable delay for use in multiple CAS latency memory devices |
TW385408B (en) * | 1998-08-26 | 2000-03-21 | Inventec Corp | Configuration method for installing plug-and-play device |
US6029250A (en) | 1998-09-09 | 2000-02-22 | Micron Technology, Inc. | Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same |
US6622188B1 (en) * | 1998-09-30 | 2003-09-16 | International Business Machines Corporation | 12C bus expansion apparatus and method therefor |
US6243831B1 (en) | 1998-10-31 | 2001-06-05 | Compaq Computer Corporation | Computer system with power loss protection mechanism |
JP3248500B2 (ja) | 1998-11-12 | 2002-01-21 | 日本電気株式会社 | 半導体記憶装置およびそのデータ読み出し方法 |
US6453370B1 (en) * | 1998-11-16 | 2002-09-17 | Infineion Technologies Ag | Using of bank tag registers to avoid a background operation collision in memory systems |
US6100735A (en) | 1998-11-19 | 2000-08-08 | Centillium Communications, Inc. | Segmented dual delay-locked loop for precise variable-phase clock generation |
US6430696B1 (en) * | 1998-11-30 | 2002-08-06 | Micron Technology, Inc. | Method and apparatus for high speed data capture utilizing bit-to-bit timing correction, and memory device using same |
US6349363B2 (en) * | 1998-12-08 | 2002-02-19 | Intel Corporation | Multi-section cache with different attributes for each section |
US6067262A (en) | 1998-12-11 | 2000-05-23 | Lsi Logic Corporation | Redundancy analysis for embedded memories with built-in self test and built-in self repair |
US6191663B1 (en) | 1998-12-22 | 2001-02-20 | Intel Corporation | Echo reduction on bit-serial, multi-drop bus |
US6367074B1 (en) * | 1998-12-28 | 2002-04-02 | Intel Corporation | Operation of a system |
US6061263A (en) | 1998-12-29 | 2000-05-09 | Intel Corporation | Small outline rambus in-line memory module |
US6324485B1 (en) * | 1999-01-26 | 2001-11-27 | Newmillennia Solutions, Inc. | Application specific automated test equipment system for testing integrated circuit devices in a native environment |
US6285349B1 (en) | 1999-02-26 | 2001-09-04 | Intel Corporation | Correcting non-uniformity in displays |
US6381190B1 (en) * | 1999-05-13 | 2002-04-30 | Nec Corporation | Semiconductor memory device in which use of cache can be selected |
JP3376315B2 (ja) | 1999-05-18 | 2003-02-10 | 日本電気株式会社 | ビット同期回路 |
US6233376B1 (en) | 1999-05-18 | 2001-05-15 | The United States Of America As Represented By The Secretary Of The Navy | Embedded fiber optic circuit boards and integrated circuits |
US6294937B1 (en) * | 1999-05-25 | 2001-09-25 | Lsi Logic Corporation | Method and apparatus for self correcting parallel I/O circuitry |
JP2001014840A (ja) * | 1999-06-24 | 2001-01-19 | Nec Corp | 複数ラインバッファ型メモリlsi |
US6401213B1 (en) * | 1999-07-09 | 2002-06-04 | Micron Technology, Inc. | Timing circuit for high speed memory |
US6792495B1 (en) * | 1999-07-27 | 2004-09-14 | Intel Corporation | Transaction scheduling for a bus system |
US6539490B1 (en) * | 1999-08-30 | 2003-03-25 | Micron Technology, Inc. | Clock distribution without clock delay or skew |
US6552564B1 (en) * | 1999-08-30 | 2003-04-22 | Micron Technology, Inc. | Technique to reduce reflections and ringing on CMOS interconnections |
US6438668B1 (en) * | 1999-09-30 | 2002-08-20 | Apple Computer, Inc. | Method and apparatus for reducing power consumption in a digital processing system |
US6467013B1 (en) * | 1999-09-30 | 2002-10-15 | Intel Corporation | Memory transceiver to couple an additional memory channel to an existing memory channel |
US6636912B2 (en) * | 1999-10-07 | 2003-10-21 | Intel Corporation | Method and apparatus for mode selection in a computer system |
JP3546788B2 (ja) * | 1999-12-20 | 2004-07-28 | 日本電気株式会社 | メモリ制御回路 |
KR100343383B1 (ko) * | 2000-01-05 | 2002-07-15 | 윤종용 | 반도체 메모리 장치 및 이 장치의 데이터 샘플링 방법 |
JP2001193639A (ja) * | 2000-01-11 | 2001-07-17 | Toyota Autom Loom Works Ltd | 電動斜板圧縮機 |
US6185352B1 (en) | 2000-02-24 | 2001-02-06 | Siecor Operations, Llc | Optical fiber ribbon fan-out cables |
US6728800B1 (en) * | 2000-06-28 | 2004-04-27 | Intel Corporation | Efficient performance based scheduling mechanism for handling multiple TLB operations |
JP2002014875A (ja) | 2000-06-30 | 2002-01-18 | Mitsubishi Electric Corp | 半導体集積回路、半導体集積回路のメモリリペア方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6845409B1 (en) * | 2000-07-25 | 2005-01-18 | Sun Microsystems, Inc. | Data exchange methods for a switch which selectively forms a communication channel between a processing unit and multiple devices |
US6526483B1 (en) * | 2000-09-20 | 2003-02-25 | Broadcom Corporation | Page open hint in transactions |
US6523093B1 (en) * | 2000-09-29 | 2003-02-18 | Intel Corporation | Prefetch buffer allocation and filtering system |
US6523092B1 (en) * | 2000-09-29 | 2003-02-18 | Intel Corporation | Cache line replacement policy enhancement to avoid memory page thrashing |
US7187742B1 (en) * | 2000-10-06 | 2007-03-06 | Xilinx, Inc. | Synchronized multi-output digital clock manager |
US6622227B2 (en) * | 2000-12-27 | 2003-09-16 | Intel Corporation | Method and apparatus for utilizing write buffers in memory control/interface |
US6493250B2 (en) * | 2000-12-28 | 2002-12-10 | Intel Corporation | Multi-tier point-to-point buffered memory interface |
US6782435B2 (en) * | 2001-03-26 | 2004-08-24 | Intel Corporation | Device for spatially and temporally reordering for data between a processor, memory and peripherals |
US7107399B2 (en) * | 2001-05-11 | 2006-09-12 | International Business Machines Corporation | Scalable memory |
US6670959B2 (en) * | 2001-05-18 | 2003-12-30 | Sun Microsystems, Inc. | Method and apparatus for reducing inefficiencies in shared memory devices |
SE524110C2 (sv) * | 2001-06-06 | 2004-06-29 | Kvaser Consultant Ab | Anordning och förfarande vid system med lokalt utplacerade modulenheter samt kontaktenhet för anslutning av sådan modulenhet |
US6697926B2 (en) * | 2001-06-06 | 2004-02-24 | Micron Technology, Inc. | Method and apparatus for determining actual write latency and accurately aligning the start of data capture with the arrival of data at a memory device |
US6920533B2 (en) * | 2001-06-27 | 2005-07-19 | Intel Corporation | System boot time reduction method |
US20030005344A1 (en) * | 2001-06-29 | 2003-01-02 | Bhamidipati Sriram M. | Synchronizing data with a capture pulse and synchronizer |
US6721195B2 (en) * | 2001-07-12 | 2004-04-13 | Micron Technology, Inc. | Reversed memory module socket and motherboard incorporating same |
US6681292B2 (en) * | 2001-08-27 | 2004-01-20 | Intel Corporation | Distributed read and write caching implementation for optimized input/output applications |
US6768358B2 (en) * | 2001-08-29 | 2004-07-27 | Analog Devices, Inc. | Phase locked loop fast power up methods and apparatus |
US7941056B2 (en) * | 2001-08-30 | 2011-05-10 | Micron Technology, Inc. | Optical interconnect in high-speed memory systems |
US6665202B2 (en) * | 2001-09-25 | 2003-12-16 | Integrated Device Technology, Inc. | Content addressable memory (CAM) devices that can identify highest priority matches in non-sectored CAM arrays and methods of operating same |
US6718440B2 (en) * | 2001-09-28 | 2004-04-06 | Intel Corporation | Memory access latency hiding with hint buffer |
DE10153657C2 (de) * | 2001-10-31 | 2003-11-06 | Infineon Technologies Ag | Anordnung zur Datenübertragung in einem Halbleiterspeichersystem und Datenübertragungsverfahren dafür |
US6886048B2 (en) * | 2001-11-15 | 2005-04-26 | Hewlett-Packard Development Company, L.P. | Techniques for processing out-of-order requests in a processor-based system |
US7006533B2 (en) * | 2002-02-19 | 2006-02-28 | Intel Corporation | Method and apparatus for hublink read return streaming |
US6912612B2 (en) * | 2002-02-25 | 2005-06-28 | Intel Corporation | Shared bypass bus structure |
US6725306B2 (en) * | 2002-02-27 | 2004-04-20 | Lsi Logic Corporation | DEBUG mode for a data bus |
US6774687B2 (en) * | 2002-03-11 | 2004-08-10 | Micron Technology, Inc. | Method and apparatus for characterizing a delay locked loop |
US6735682B2 (en) * | 2002-03-28 | 2004-05-11 | Intel Corporation | Apparatus and method for address calculation |
US7133972B2 (en) * | 2002-06-07 | 2006-11-07 | Micron Technology, Inc. | Memory hub with internal cache and/or memory access prediction |
DE10234934A1 (de) * | 2002-07-31 | 2004-03-18 | Advanced Micro Devices, Inc., Sunnyvale | Antwortreihenwiederherstellungsmechanismus |
US7149874B2 (en) * | 2002-08-16 | 2006-12-12 | Micron Technology, Inc. | Memory hub bypass circuit and method |
US6667926B1 (en) * | 2002-09-09 | 2003-12-23 | Silicon Integrated Systems Corporation | Memory read/write arbitration method |
US7102907B2 (en) * | 2002-09-09 | 2006-09-05 | Micron Technology, Inc. | Wavelength division multiplexed memory module, memory system and method |
US6821029B1 (en) * | 2002-09-10 | 2004-11-23 | Xilinx, Inc. | High speed serial I/O technology using an optical link |
US6811320B1 (en) * | 2002-11-13 | 2004-11-02 | Russell Mistretta Abbott | System for connecting a fiber optic cable to an electronic device |
DE10255937B4 (de) * | 2002-11-29 | 2005-03-17 | Advanced Micro Devices, Inc., Sunnyvale | Ordnungsregelgesteuerte Befehlsspeicherung |
US7366423B2 (en) * | 2002-12-31 | 2008-04-29 | Intel Corporation | System having multiple agents on optical and electrical bus |
US6961259B2 (en) * | 2003-01-23 | 2005-11-01 | Micron Technology, Inc. | Apparatus and methods for optically-coupled memory systems |
JP3841762B2 (ja) * | 2003-02-18 | 2006-11-01 | ファナック株式会社 | サーボモータ制御システム |
US7020757B2 (en) * | 2003-03-27 | 2006-03-28 | Hewlett-Packard Development Company, L.P. | Providing an arrangement of memory devices to enable high-speed data access |
US7366854B2 (en) * | 2003-05-08 | 2008-04-29 | Hewlett-Packard Development Company, L.P. | Systems and methods for scheduling memory requests utilizing multi-level arbitration |
US20050166006A1 (en) * | 2003-05-13 | 2005-07-28 | Advanced Micro Devices, Inc. | System including a host connected serially in a chain to one or more memory modules that include a cache |
US7386768B2 (en) * | 2003-06-05 | 2008-06-10 | Intel Corporation | Memory channel with bit lane fail-over |
US20050015426A1 (en) * | 2003-07-14 | 2005-01-20 | Woodruff Robert J. | Communicating data over a communication link |
US7120743B2 (en) * | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7177211B2 (en) * | 2003-11-13 | 2007-02-13 | Intel Corporation | Memory channel test fixture and method |
US7098714B2 (en) * | 2003-12-08 | 2006-08-29 | Micron Technology, Inc. | Centralizing the lock point of a synchronous circuit |
US7529800B2 (en) * | 2003-12-18 | 2009-05-05 | International Business Machines Corporation | Queuing of conflicted remotely received transactions |
US7181584B2 (en) * | 2004-02-05 | 2007-02-20 | Micron Technology, Inc. | Dynamic command and/or address mirroring system and method for memory modules |
US6980042B2 (en) * | 2004-04-05 | 2005-12-27 | Micron Technology, Inc. | Delay line synchronizer apparatus and method |
US7046060B1 (en) * | 2004-10-27 | 2006-05-16 | Infineon Technologies, Ag | Method and apparatus compensating for frequency drift in a delay locked loop |
US7116143B2 (en) * | 2004-12-30 | 2006-10-03 | Micron Technology, Inc. | Synchronous clock generator including duty cycle correction |
-
2004
- 2004-02-05 US US10/773,520 patent/US7412574B2/en active Active
-
2005
- 2005-01-26 KR KR1020067018090A patent/KR100854946B1/ko active IP Right Grant
- 2005-01-26 WO PCT/US2005/003015 patent/WO2005076856A2/en active Application Filing
- 2005-01-26 CN CN2005800106804A patent/CN1938691B/zh active Active
- 2005-01-26 JP JP2006552194A patent/JP4586031B2/ja active Active
- 2005-01-26 EP EP05712450A patent/EP1723527B1/en active Active
- 2005-02-05 TW TW094104060A patent/TWI327273B/zh active
-
2008
- 2008-07-09 US US12/170,329 patent/US20080294862A1/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853135A (zh) * | 2012-12-06 | 2014-06-11 | 硅实验室公司 | 调节对从设备的访问 |
CN104137083A (zh) * | 2012-12-28 | 2014-11-05 | 松下电器产业株式会社 | 接口装置及存储器总线系统 |
CN104137083B (zh) * | 2012-12-28 | 2018-08-28 | 松下知识产权经营株式会社 | 接口装置及存储器总线系统 |
CN109564547A (zh) * | 2016-08-19 | 2019-04-02 | Arm有限公司 | 存储器单元和存储器单元处理操作请求的操作方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1723527A4 (en) | 2007-10-03 |
WO2005076856A2 (en) | 2005-08-25 |
WO2005076856A3 (en) | 2006-06-08 |
TWI327273B (en) | 2010-07-11 |
EP1723527A2 (en) | 2006-11-22 |
US20080294862A1 (en) | 2008-11-27 |
US20050177677A1 (en) | 2005-08-11 |
KR100854946B1 (ko) | 2008-08-29 |
EP1723527B1 (en) | 2012-05-30 |
JP2007526559A (ja) | 2007-09-13 |
JP4586031B2 (ja) | 2010-11-24 |
US7412574B2 (en) | 2008-08-12 |
KR20060132716A (ko) | 2006-12-21 |
CN1938691B (zh) | 2010-05-12 |
TW200606637A (en) | 2006-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1938691B (zh) | 仲裁存储器响应的系统、方法和装置 | |
CN100507874C (zh) | 用于存储器系统性能监视的存储器集线器和方法 | |
CN101390060B (zh) | 存储集线器和存储排序的方法 | |
CN100361095C (zh) | 具有内部高速缓存和/或内存访问预测的内存集线器 | |
KR100800989B1 (ko) | 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법 | |
US7415567B2 (en) | Memory hub bypass circuit and method | |
CN100334564C (zh) | 具有内部行高速缓存的内存集线器及访问方法 | |
US8589643B2 (en) | Arbitration system and method for memory responses in a hub-based memory system | |
CN100595720C (zh) | 用于基于集线器的存储系统中直接存储器访问的设备和方法 | |
US7529896B2 (en) | Memory modules having a memory hub containing a posted write buffer, a memory device interface and a link interface, and method of posting write requests in memory modules | |
EP1738267B1 (en) | System and method for organizing data transfers with memory hub memory modules | |
CN100578478C (zh) | 用于存储器模块的板上数据搜索能力的装置、系统和方法 | |
CN101427224A (zh) | 用于提供存储器定序提示的存储器集线器和方法 | |
CN113641603A (zh) | 一种基于axi协议的ddr仲裁与调度方法及系统 | |
JPH11212939A (ja) | 共通バスによって相互接続されたプロセッサを有するデータプロセッサユニット間でデータを交換するためのシステム | |
CN100587678C (zh) | 外部设备访问装置和系统大规模集成电路 | |
CN100538618C (zh) | 高存取效率的接口电路及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |