CN1938691A - 基于集线器的存储器系统中具有数据包存储器的仲裁系统以及用于存储器响应的方法 - Google Patents

基于集线器的存储器系统中具有数据包存储器的仲裁系统以及用于存储器响应的方法 Download PDF

Info

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
Application number
CNA2005800106804A
Other languages
English (en)
Other versions
CN1938691B (zh
Inventor
约瑟夫·M·杰德洛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN1938691A publication Critical patent/CN1938691A/zh
Application granted granted Critical
Publication of CN1938691B publication Critical patent/CN1938691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

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所述的方法,还包括产生控制信号,从而如果储存的最老的存储器请求是本地存储器请求,就转发本地存储器响应。
CN2005800106804A 2004-02-05 2005-01-26 仲裁存储器响应的系统、方法和装置 Active CN1938691B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/773,520 2004-02-05
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
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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
US8126318B2 (en) * 2004-08-30 2012-02-28 Panasonic Corporation Recording device, system, integrated circuit, program, and recording method
US7356737B2 (en) * 2004-10-29 2008-04-08 International Business Machines Corporation System, method and storage medium for testing a memory module
US7299313B2 (en) 2004-10-29 2007-11-20 International Business Machines Corporation System, method and storage medium for a memory subsystem command interface
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
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
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
US8874810B2 (en) 2007-11-26 2014-10-28 Spansion Llc System and method for read data buffering wherein analyzing policy determines whether to decrement or increment the count of internal or external buffers
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3742253A (en) 1971-03-15 1973-06-26 Burroughs Corp Three state logic device with applications
GB1530405A (en) * 1975-03-24 1978-11-01 Okura Denki 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
US4253144A (en) 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4245306A (en) 1978-12-21 1981-01-13 Burroughs Corporation Selection of addressed processor in a multi-processor 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
DE4345604B3 (de) 1992-03-06 2012-07-12 Rambus Inc. Vorrichtung zur Kommunikation mit einem DRAM
ES2170066T3 (es) * 1992-03-25 2002-08-01 Sun Microsystems Inc Sistema de acoplamiento de memoria de fibra optica.
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.
AU666999B2 (en) * 1992-11-25 1996-02-29 Samsung Electronics Co., Ltd. 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를 이용한 반이중 통신용 송신 장치
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
US6243769B1 (en) 1997-07-18 2001-06-05 Micron Technology, Inc. Dynamic buffer allocation for a computer system
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
JP4484359B2 (ja) * 1997-10-10 2010-06-16 ラムバス・インコーポレーテッド 最小限の待ち時間とフェイルセーフ再同期化するための方法および装置
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
US6286083B1 (en) * 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme
US6735679B1 (en) * 1998-07-08 2004-05-11 Broadcom Corporation Apparatus and method for optimizing access to memory
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
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
JP3376315B2 (ja) * 1999-05-18 2003-02-10 日本電気株式会社 ビット同期回路
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
US6467013B1 (en) * 1999-09-30 2002-10-15 Intel Corporation Memory transceiver to couple an additional memory channel to an existing memory channel
US6438668B1 (en) * 1999-09-30 2002-08-20 Apple Computer, Inc. Method and apparatus for reducing power consumption in a digital processing system
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
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
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
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
EP1421588B1 (en) * 2001-08-29 2012-01-18 MediaTek Inc. Method and apparatus utilizing flash burst mode to improve processor performance
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
US20040022094A1 (en) * 2002-02-25 2004-02-05 Sivakumar Radhakrishnan Cache usage for concurrent multiple streams
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
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US6667926B1 (en) * 2002-09-09 2003-12-23 Silicon Integrated Systems Corporation Memory read/write arbitration 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
US7016213B2 (en) * 2003-05-13 2006-03-21 Advanced Micro Devices, Inc. Method for initializing a system including a host and plurality of memory modules connected via a serial memory interconnect
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

Cited By (4)

* Cited by examiner, † Cited by third party
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
TWI327273B (en) 2010-07-11
EP1723527A4 (en) 2007-10-03
KR20060132716A (ko) 2006-12-21
KR100854946B1 (ko) 2008-08-29
EP1723527B1 (en) 2012-05-30
JP2007526559A (ja) 2007-09-13
WO2005076856A3 (en) 2006-06-08
US20080294862A1 (en) 2008-11-27
US7412574B2 (en) 2008-08-12
CN1938691B (zh) 2010-05-12
EP1723527A2 (en) 2006-11-22
JP4586031B2 (ja) 2010-11-24
WO2005076856A2 (en) 2005-08-25
TW200606637A (en) 2006-02-16
US20050177677A1 (en) 2005-08-11

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