CN1965302A - 利用存储器集线器存储器模块组织数据传送的系统和方法 - Google Patents
利用存储器集线器存储器模块组织数据传送的系统和方法 Download PDFInfo
- Publication number
- CN1965302A CN1965302A CNA2005800156926A CN200580015692A CN1965302A CN 1965302 A CN1965302 A CN 1965302A CN A2005800156926 A CNA2005800156926 A CN A2005800156926A CN 200580015692 A CN200580015692 A CN 200580015692A CN 1965302 A CN1965302 A CN 1965302A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- command header
- command
- issued transaction
- 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/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- 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
-
- 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/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
Abstract
存储器系统,包括和多个存储器模块连接的存储器集线器控制器,每个模块包括存储器集线器。每个存储器集线器包括发送接口,发送接口具有数据组织系统,为多个存储器事务处理的每一个将命令头和数据组织到多个通道组中,每个通道组包括预定数量的通道。每个通道包括并行命令头位或并行数据位。然后将通道组转换成通道的串行流,从存储器集线器通过高速总线发送。对通道组进行组织,使得总是用通道将它们填充,所述通道包括命令头或数据。结果是,在从存储器集线器发送存储器事务处理期间,高速总线从不空闲,从而增大了存储器系统的存储器带宽。
Description
对相关申请的交叉引用
本申请要求2004年3月18日提交的,题目为“SYSTEM ANDMETHOD FOR ORGANIZING DATA TRANSFERS WITH MEMORYHUB MEMORY MODULES”的10/804,608号美国专利申请的优先权,在这里将其结合进来作为参考。
技术领域
本发明涉及基于处理器的系统,更具体地说,涉及具有存储器模块的基于处理器的系统,其中的存储器模块用存储器集线器将几个存储器装置与处理器或其它存储器访问装置连接起来。
背景技术
基于处理器的系统,比如计算机系统,使用存储器装置,如动态随机存取存储器(“DRAM”)装置,作为系统存储器来保存由处理器访问的指令和数据。在典型的计算机系统中,处理器通过处理器总线以及存储器控制器与系统存储器通信。处理器发出存储器请求,该存储器请求包括如读命令一样的存储器命令,以及指定要从中读取数据或指令或者要向其中写入数据或指令的位置的地址。存储器控制器利用命令和地址产生适当的命令信号以及行和列地址,这些信息被应用于系统存储器。响应这些命令和地址,在系统存储器和处理器之间传送数据。存储器控制器通常是系统控制器的一部分,系统控制器还包括用于把处理器总线和扩展总线如PCI总线连接起来的总线桥电路。
尽管存储器装置的运行速度一直在提高,但是这种运行速度的提高未能赶上处理器运行速度的提高。连接处理器和存储器装置的存储器控制器的运行速度的提高更慢。存储器控制器和存储器装置的较慢速度限制了处理器和存储器装置间的数据带宽。
增大进出存储器装置数据带宽的途径之一是使用通过存储器集线器和处理器连接的多个存储器装置,如图1所示。采用存储器集线器结构的计算机系统100包括处理器104用于完成各种计算功能,比如执行专门的软件完成专门的计算或任务。处理器104包括处理器总线106,处理器总线一般包括地址总线、控制总线和数据总线。典型情况下处理器总线106和高速缓冲存储器108连接,高速缓冲存储器通常是静态随机存取存储器(“SRAM”)。最后,处理器总线106和有时也叫做总线桥的系统控制器110连接。
系统控制器110包括和处理器104连接的存储器集线器控制器128。存储器集线器控制器128还通过总线系统134和一些存储器模块130a~n连接。每个存储器模块130a~n都包括存储器集线器140,该存储器集线器通过命令、地址和数据总线连接着一些存储器装置148,将这些总线统一表示为总线150。存储器集线器140在控制器128和存储器装置148之间有效地发送存储器请求与响应。采用这种结构的计算机系统具有更高的带宽,因为处理器104能够访问一个存储器模块130a~n,同时另一个存储器模块130a~n正在响应先前的存储器访问。例如,处理器104能够向系统中的存储器模块130a~n之一输出写数据,同时系统中的另一个存储器模块130a~n正准备向处理器104提供读数据。采用存储器集线器结构的计算机系统的运行效率,使得极大地提高存储器系统的数据带宽更加实际。存储器集线器结构还能够显著提高计算机系统中的存储器容量。
系统控制器110也充当各种其它组件到处理器104的通信路径。具体而言,系统控制器110包括图形端口,该图形端口通常和图形控制器112连接,图形控制器112则和视频终端114连接。系统控制器110还和一个或多个输入装置118如键盘或鼠标连接,以使操作者和计算机系统110对接。通常,计算机系统100还包括通过系统控制器110和处理器104连接的一个或多个输出装置120,如打印机。一个或多个数据存储装置124通常也通过系统控制器110和处理器104连接,使处理器104能够将数据存入内部或外部存储介质(未示出)或从中获得数据。典型存储装置124的实例包括硬盘、软盘、盒式磁带和光盘只读存储器(CD-ROM)。
存储器集线器结构能够大大提高针对存储器保存和读出数据的速率,因为它允许多个存储器模块130中的每一个中的存储器请求同时得到服务。事实上,采用每个模块都包括存储器集线器的多个存储器模块的存储器系统,能够以这样的高速率一起发送和接收数据,从而使得总线系统134成为限制存储器系统数据带宽的“瓶颈”。
已经使用了两种技术来扩大采用存储器集线器结构的存储器系统的数据带宽。第一种,不采用传统的地址、数据和控制总线,而是将每个存储器请求或“事务处理”的地址、数据和控制位在单独一个数据包中一起发送。数据包包括命令头,命令头后面是读出的或者要写入的数据。命令头包括对应于存储器命令比如写入或读出命令的位、标识位和地址位,标识位指定要将请求发送过去的目标存储器模块,地址位指定在由请求访问的指定存储器模块中存储器装置148的地址。命令头还可以指定跟随在命令头后的读出或写入数据的数量。使用采用数据包方式的存储器系统允许存储器集线器控制器128通过简单地发送数据包来发出存储器请求,代替发送一系列命令、地址以及在写请求情况下的写入数据信号。结果是,存储器集线器控制器128能够以更快的速率发出存储器请求。另外,采用数据包方式的存储器系统将存储器集线器控制器128从必须跟踪每个存储器请求的处理中释放出来。取而代之的是,存储器集线器控制器128只需要发送数据包就行了。然后,作为存储器请求目标的存储器模块130中的存储器集线器140处理存储器请求,不再与存储器集线器控制器128进行交互。在读请求的情况下,存储器集线器140将数据包发送回存储器集线器控制器128,可以直接地或通过存储器模块130间接地发送,数据包包括读出数据,以及在命令头中标识读出数据的标识位。存储器集线器控制器128利用标识位将读出的数据与具体的存储器请求联系起来。
已经使用的增大采用存储器集线器结构的存储器系统数据带宽的第二种技术是实现总线系统134,该总线系统采用分开的高速“上游”和“下游”总线(图1中未画出)。高速下游总线将数据从存储器集线器控制器128传送到存储器模块130,并且从存储器模块130传送到离存储器集线器控制器128更远的存储器模块130。高速上游总线将数据从存储器模块130传送到存储器集线器控制器128,并且从存储器模块130传送到离存储器集线器控制器128更近的存储器模块130。
现在参考图2说明所提出的为存储器集线器系统形成数据包的一种途径,其中在图2的右边画出几个32位数据组,这些数据组来自几个存储器访问或“事务处理”中的每一个。事务处理T0包括7个32位数据组D0~D6,在96位总线162上将它们传送给数据组织单元160。因此在内核时钟CCLK信号,即存储器集线器140内部使用的时钟信号的每个周期里,总线162能够将三个32位数据组传送到数据组织162。事务处理T1也包括7个32位数据组D0~D6,在64位总线164上将它传送到数据组织单元160,在每个CCLK周期它能够将两个32位数据组传送到数据组织162。事务处理T2只包括5个32位数据组D0~D4,也在64位总线166上将它传送到数据组织单元160,每个CCLK周期两个32位组。最后,事务处理T3包括12个32位数据组D0~D11,在128位总线168上将它传送给数据组织单元160,每个CCLK周期这一总线能够将四个32位数据组发送到数据组织162。因此,可以看出存储器集线器140中以各自不同宽度的总线输出数据的组件,能够与数据组织单元160对接。
如同所建议的一样,在事务处理T0~T3的数据组已经被按照时钟信号输入到数据组织单元160后,将它们重新组织成相应的数据包。这些数据包被并行地按照时钟信号输出数据组织单元,接着被传送到并串转换器174,并串转换器174随后在多达8个32位数据组D0~D7中输出这个数据包。在图2所示的实施例中,所述数据是按照高速系统时钟SCLK信号从并串转换器174输出的。数据组织单元160发送数据的数量依赖于内核时钟信号与系统时钟信号之间的相对频率以及总线134的宽度。可以将系统设计成将各种宽度的各种内部总线连接到数据组织单元160。结果,可以将存储器集线器140设计为具有由技术先进性或系统的具体特性所规定的内核时钟频率,而系统时钟频率可能已经由它自己独特的设计限制所规定。在图2所示的实施例中,系统时钟信号具有内核时钟频率八倍的频率。
在事务处理中每个数据包包括32位的命令头,命令头后是32位数据组。所述32位组,叫做“通道”,所述32位组被按照时钟信号并行地从数据组织单元160输出。将事务处理T0~T3的每个的通道组也画在图2中。在每个系统时钟信号周期中从并串转换器174按时钟信号输出的数据的通道数量依赖于高速总线系统134的宽度(这个例子中是32位)。
虽然如同参考图2所说明的一样使用分开的上游、下游总线和存储器数据包有助于增大存储器模块130的进出数据带宽,但是有时数据带宽仍然小于最佳带宽,因为用于事务处理的数据包的大小可能小于高速总线系统134的容量,这是由于每个数据包中的数据量可以改变。进一步参考图2,每个事务处理的32位数据组是排列在数据包中的。如上所述,32位命令头CH插在每个事务处理的第一个32位数据组的前面。由于事务处理T0包括7个32位数据组D0~D6,因此命令头CH加上事务处理T0中的数据,占据了第一个通道组175的全部8个通道。结果,要使用高速总线系统134的全部8个通道。同样,由于事务处理T1也包括7个32位数据组D0~D6,因此要占用第二个通道组176的全部8个通道。所以,高速总线系统134的全部8个通道再一次被填满。但是,由于事务处理T2只包括5个32位数据组D0~D4,因此只会占用第三个通道组177的6个通道(命令头加上事务处理T2的5个32位数据组)。结果,第三个通道组177的两个空通道会导致在高速系统时钟信号的两个周期期间不运送任何数据包。
事务处理T3包括12个32位数据组D0~D11,所以,事务处理T3中前面的7个32位数据组D0~D6(加上32位命令头)将填满第四个通道组178的全部8个通道。结果,高速总线系统134会被全部占用。但是,剩余的5个32位数据组D7~D11只占用第五个通道组179的8个通道中的5个。因此,在系统时钟信号的3个周期中不会通过高速总线系统134传送数据。结果是,存储器系统的数据带宽可能比高速总线系统134全部8个通道总是填满的情况下所能实现的数据带宽明显要小。
虽然针对具有具体总线宽度、具体大小的数据组等的计算机系统描述了数据组织方法,但是要明白的是具有其它设计参数的计算机系统也存在相同或相似的问题。
因此需要系统和方法,来组织进出存储器集线器系统中的存储器模块的数据,允许以满负荷方式使用高速存储器总线系统。
发明内容
用于存储器模块的存储器集线器,包括系统用来组织由存储器模块所发送的存储器事务处理。组织系统将存储器事务处理组织成数据包,每个数据包包括命令头和数据,数据可以有不同数量的数据位。组织系统将命令头和数据组织到通道组中,每个通道组包括多个通道。每个通道包括多个并行命令头位或并行数据位。组织系统组织通道组,使得每个通道组中的全部通道都用命令头位或数据位填满。如果需要,组织系统还将每个通道组转换为通道的串行流,用于从存储器集线器发送。每个发送通道包括多个并行命令头位或并行数据位。
附图说明
图1是具有存储器集线器控制器的计算机系统的框图,该控制器和一些具有存储器集线器结构的存储器模块连接;
图2是示意图,示出了所提出的一种方法,该方法用于组织进出图1所示存储器模块的数据;
图3是示意图,示出了符合本发明一个例子的一种方法,该方法用于组织进出图1所示存储器模块的数据;
图4是能够重新组织如图3所示数据的存储器集线器的框图,可以将它用于图1的存储器模块;
图5是数据组织系统的框图,能够用于存储器集线器控制器、图4的存储器集线器或者一些其它的存储器集线器设计中。
具体实施方式
本发明的实施例针对存储器集线器控制器,它通过高速下游总线和高速上游总线连接一些存储器集线器模块。具体而言,本发明的实施例针对一种系统和方法,其中将数据传送到下游和上游总线之前,对它们进行组织,从而能够充分利用总线的全部容量。下面提供详细资料,充分说明本发明的各种实施例。但是,本领域的技术人员应该明白,没有这些具体细节也能够实践本发明。另外,为了避免对本发明造成不必要的混淆,没有详细地给出众所周知的电路、控制信号和时序协议。
现在参考图3,说明为符合本发明一个实例的存储器集线器系统形成数据包的方法。如图3所示,除了附加事务处理T4的一部分在图3中示出之外,一些存储器访问或“事务处理”中每一个的一些32位数据组与图2所示的那些是相同的,这样的目的是说明它们之间的不同之处。如前所述,事务处理T0包括7个32位数据组D0~D6,事务处理T1也包括7个32位数据组D0~D6,事务处理T2包括5个32位数据组D0~D4,事务处理T3包括12个32位数据组D0~D11。
根据本发明的一个实施例,响应内核时钟信号将事务处理T0~T4的数据组按时钟顺序输入数据组织单元180(参考图5说明),在那里它们被重新组织成相应的数据包。在图3的例子中,每个数据包还包括32位命令头CH,命令头后是事务处理中的32位数据组。如前所述,32位组或通道是并行地按时钟顺序输出数据组织单元180的,然后由并串转换器182响应系统时钟信号,将它们转换成串行数据。
事务处理T0和T1,每个都由命令头加上7个32位数据组D0~D6组成,按照前面参考图2所说明的相同方式,分别占用第一个通道组190和第二个通道组192的全部8个通道。同样,事务处理T2还是只包括5个32位数据组D0~D4,所以只填充了第三个通道组194的6个通道(命令头加上事务处理T2的5个32位数据组)。但是,在图2的例子中空置的第三个通道组194的3个后续通道,则由命令头CH和事务处理T3的第一个32位数据组D0填充。结果,在系统时钟信号的相应周期里,一个满通道的数据通过高速总线系统134传送。
继续参考图3,用事务处理T3的下面8个数据组D1~D8来填充第四个通道组196的全部8个通道,因此能够充分利用高速总线系统134。为事务处理T3运送数据D9~D11的剩余3个通道是放在第五个通道组198中的。但是,值得注意,第五个通道组198中剩余的5个通道用32位命令头CH和事务处理T4开头的4个32位数据组D0~D3填充。按相似的方式,存储器事务处理的命令头和数据总是紧跟在来自前面事务处理的数据之后,所以能够充分利用高速总线系统134。因此,假定有来自存储器事务处理的数据在等待通过高速总线系统134,但总线系统134中从没有任何空闲周期。结果是存储器系统的数据带宽得到了最大化。
图3的数据组织单元180的另一个优点是,每个通道组190~198的数据通道的数量能够根据CCLK信号的频率,从并串转换器182按时钟传送数据的系统时钟SCLK的频率,以及外部总线134的宽度和其它可能的因素来配置。因此,可以将存储器集线器140设计成具有由技术的先进性或系统的具体特性决定的CCLK频率,可能由它自己的设计约束决定SCLK频率,这样来改变CCLK与SCLK的频率比。另外,可以将一些存储器集线器140设计成具有比其它总线要宽的总线134。但是,改变每个CCLK周期按时种信号从数据组织单元180输出的通道组数量的能力,能够支持这些改变,而不用改变存储器集线器140中的电路。可以对数据组织单元180编程,以通过合适的装置输出每个CCLK周期的具体通道数,比如在初始化期间通过I/O端口。
图4示出了一个存储器集线器200的例子,它能够以图3所示的方式组织进出存储器装置148的数据。存储器集线器200包括下游接收接口210、上游发送接口212、上游接收接口214和下游发送接口216。下游接收接口210用于将数据从存储器集线器控制器128(图1)或上游存储器模块130传送到存储器模块130中。上游发送接口212用于将数据从存储器模块130传送到存储器集线器控制器128或上游存储器模块130。上游接收接口214用于将数据从下游存储器模块130传送到存储器模块130。最后,下游发送接口216用于将存储器模块130输出的数据传送到下游存储器模块130。值得注意,上游发送接口212包括数据组织系统220,该系统在连接到高速上游总线224之前组织命令头和数据。将参考图5说明数据组织系统220的一个例子的结构与操作。
接口210~216通过用总线228表示的多条总线和信号线与开关(switch)260连接。总线228是常规总线,包括和接收接口210、224连接的写数据总线以及和发送接口212、222连接的读数据总线。
开关260和四个存储器接口270a~d连接,这些接口则连接着存储器装置160(图1)。通过为每组存储器装置160提供分开的和独立的存储器接口270a~d,存储器集线器200能够避免通常只在单通道存储器结构中出现的总线或存储器组冲突。开关260通过用总线274表示的多条总线和信号线与每个存储器接口连接。除了将接口210~216连接到存储器接口外,开关260还能够将存储器接口210~216互相连接,从而允许通过存储器模块130将存储器数据包向下游或上游传送到另一个存储器模块130或存储器集线器控制器128。
在本发明的一个实施例中,每个存储器接口270a~d都是专门适合于它所连接的存储器装置148(图1)的。具体而言,每个存储器接口270a~d都是专门适合于提供和接收每个接口所连接的存储器装置148收到和产生的具体信号的。存储器接口270a~d还能够以不同的时钟频率与存储器装置148一起工作。结果是,存储器接口270a~d将处理器104与接口可能发生的改变隔离开,接口是在存储器集线器200和连接到存储器集线器200的存储器装置148之间的接口,它提供了存储器装置148可以与之连接的更加受控的环境。
开关260可以是各种常规的或以后开发的开关。例如,开关260可以是纵横制开关或一组多路复用器,多路复用器不能提供与纵横制开关相同程度的连结性,但是仍然能够将总线接口210~216连接到每个存储器接口470a~d上。开关260还可以包括仲裁逻辑(未示出),以决定哪些存储器访问相对于其它存储器访问应该有优先权。对本领域技术人员来说实现这个功能的总线仲裁是众所周知的。
进一步参考图4,存储器接口270a~d中的每一个都包括各自的存储器控制器280,各自的写缓冲器282,以及各自的高速缓冲存储器单元284。通过向与它连接的存储器装置148提供控制、地址和数据信号,并且接收与它连接的存储器装置148的数据信号,存储器控制器280实现和常规存储器控制器相同的功能。但是,由存储器控制器280发送和接收的信号特性要对应于存储器装置148适合发送和接收的信号特性。高速缓冲存储器单元284包括高速缓冲存储器的常用组件,包括标志存储器、数据存储器、比较器等,如同本领域里众所周知的一样。写缓冲器282中使用的存储器装置和高速缓冲存储器单元284可以是DRAM器件、静态随机存取存储器(“SRAM”)器件、其它类型的存储器器件,或者所有这三者的组合。另外,这些存储器装置的任何一种或全部以及高速缓冲存储器单元284使用的其它组件可以是嵌入的或独立的装置。
每个存储器接口270a~d中的写缓冲器282是用于在处理读请求时保存写请求的。在这样的系统中,即使作为写请求发送目标的存储器装置148正在处理先前的写或读请求,处理器104也能够向系统存储器装置发出写请求。写缓冲器282优选地积累一些从开关260接收到的写请求,这些写请求可能散布在读请求中间,然后再将它们依次应用于每个存储器装置148,不插入任何读请求。用这种方式给写请求排上顺序,因为避免了读/写转换之间的固有延时,因此能够更有效地处理它们。缓冲写请求从而能够处理读请求的能力也能够大大地减少很多存储器读等待时间,因为能够给予读请求第一优先权,而不管它们的时间顺序。
在数据是最近从存储器装置148读出或写入其中这种情况下,每个存储器接口270a~d中高速缓冲存储器单元284的使用允许处理器104响应给各个存储器装置148的读命令接收数据,而不用等待存储器装置148提供这样的数据。因此,这样高速缓冲存储器单元284缩短了存储器装置148a~d的读等待时间,增大计算机系统的存储器带宽。同样地,处理器104能够将写数据保存在高速缓冲存储器单元284中,然后执行其它功能,而同一存储器接口270a~d中的存储器控制器280则将写数据从高速缓冲存储器单元284传送到它连接的存储器装置148中。
存储器集线器200中还可能包括自检模块290,通过测试总线292和开关260连接。自检模块290还和维护总线296连接,比如系统管理总线(SMBus)或符合联合测试行动小组(JTAG)和IEEE 1149.1标准的维护总线。对于本领域技术人员而言SMBus和JTAG两个标准是众所周知的。通常,为了设置存储器测试参数和接收测试结果,维护总线296提供对自检模块290的用户访问。例如,用户能够通过维护总线296连接单独的PC主机,设置要施加在存储器装置148之上的信号之间的相对时序。同样地,可以将表明从存储器装置148接收的信号之间相对时序的数据通过维护总线296传送到PC主机。
存储器集线器200还可能包括DMA引擎286,通过总线288和开关260连接。DMA引擎286使存储器集线器200能够将数据块从存储器装置148之一的一个位置移动到存储器装置中的另一个位置,而不用处理器104干预。总线288包括很多常规总线和信号线,比如地址、控制、数据总线等等,用于处理系统存储器中的数据传送。本领域技术人员都知道的常规DMA操作能够由DMA引擎286实现。
在图中存储器模块130以点对点连接方式和存储器集线器控制器128连接,其中高速总线132、134的每一部分只在两点之间连接。但是,应该明白也可以使用其它的拓扑连接。例如可以使用多站式布局,其中一条下游总线(未示出)和一条上游总线(未示出)连接着全部存储器模块130。也可以使用开关拓扑,其中存储器集线器控制器128是通过开关(未示出)有选择地和每个存储器模块130连接的。可以使用的其它拓扑连接对本领域技术人员来说是显而易见的。
在图5中画出了图4的存储器集线器200中使用的数据组织系统220的一个实施例。也可以在存储器集线器控制器128中使用数据组织系统220来将数据传送到高速下游总线222。接收接口210、224(图4)的那些部分和从高速总线132、134获取存储器数据包的存储器集线器控制器128中的接收接口相对而言是直截了当的,对本领域的技术人员来说设计合适的系统是在其能力范围之内的。
数据组织系统220包括数据缓冲器230,该数据缓冲器接收32位数据组,这些数据组是要通过高速总线132、134传送的。在存储器集线器控制器128中的数据组织系统220的情况下,数据源可能是处理器104(图1)或任何其它的存储器访问装置。在存储器模块130的情况下,数据可以来源于存储器模块130中的存储器装置148或者来自其它存储器模块130。在任何情况下,数据组是响应内核时钟信号,按照时钟信号输入数据缓冲器230中的,如同图5所表明的一样。还是如同图5所说明的一样,为不同的事务处理保存在数据缓冲器230中的数据具有不同的长度。
在数据组织系统220中还包括命令队列234,它是为存储器数据包保存命令头的小缓冲器。也是按照内核时钟信号传送的命令队列234,与一些为命令头提供信息的多个其它组件对接,但是为了简洁,已经从图5中省去了这些组件。
将保存在数据缓冲器230中的数据和保存在命令队列234中的命令头传送到多路复用器236,多路复用器由仲裁单元238控制。多路复用器236为数据缓冲器230保存的事务处理之一选择数据,并且从命令队列234中选择对应的命令头。仲裁单元238依据各种算法能够使多路复用器为事务处理选择数据和命令头。例如,仲裁单元238可以给予事务处理以优先级,包括来自下游存储器模块130的响应,从而在从存储器模块130中的存储器装置148中发送本地事务处理之前,在总线224(图4)向上游发送这样的事务处理。相反,仲裁单元238可以给予包括本地响应的事务处理以优先级别。仲裁单元238也可以选择发送本地事务处理和下游或上游事务处理。更简单地,仲裁单元238能够发送事务处理,以便存储器集线器140接收到它们。虽然在每个存储器集线器140中,仲裁单元238最好以相同方式工作,但实在替换实施例中在不同存储器集线器140中的仲裁单元可以按照不同的方式工作。在仲裁单元238和实现仲裁单元的逻辑电路的工作过程中,其它的变化对本领域的技术人员来说是显而易见的。
值得注意,忽略仲裁单元238选择事务处理的顺序,仲裁单元使多路复用器236为选择的事务处理组织命令头和数据,因此在多路复用器236的输出口上通道组240的全部通道都是填满的。然后通道组240和并串转换器244连接,例如,转换器可能是一系列以并行放置的移位寄存器。然后通过系统时钟信号将数据按时钟信号输出到并串转换器244,并且传递给高速总线222、224之一,如同上面参考图3所说明的一样。通过填充每个通道组240的全部通道,利用了高速总线222、224的整个数据带宽。
根据前文应该理解,尽管为了进行说明描述了本发明的具体实施例,但是可以进行各种修改而不会偏离本发明的精神和范围。因此,本发明的范围应该由后附的权利要求来限定。
Claims (48)
1.一种存储器模块,包括:
多个存储器装置;以及
存储器集线器,包括:
存储器控制器,和所述多个存储器装置连接;
至少一个接收接口,和所述存储器控制器连接;以及
至少一个发送接口,和所述存储器控制器连接,用于从所述存储器模块发送存储器事务处理,每个发送接口接收存储器事务处理,每个存储器事务处理包括命令头和数据,所述数据具有可变数量的数据位,每个发送接口包括数据组织系统,该数据组织系统用于将所述命令头和数据组织到多个通道组中,每个通道组包括多个通道,每个通道包括多个并行命令头位或并行数据位,所述数据组织系统组织所述多个通道组,使得每个通道组中的全部通道都填充多个命令头位或数据位,所述数据组织系统用于将所述多个通道组中的每一个转换成所述多个通道的串行流,由所述发送接口发送,发送的所述多个通道的每一个包括多个并行命令头位或并行数据位。
2.如权利要求1所述的存储器模块,其中所述多个通道组中的每一个都包括八个通道。
3.如权利要求1所述的存储器模块,其中所述多个通道中的每一个包括命令头或数据的32个并行位。
4.如权利要求1所述的存储器模块,其中所述至少一个发送接口包括上游发送接口和下游发送接口,这些接口中的每一个接口都包括所述数据组织系统。
5.如权利要求1所述的存储器模块,其中所述多个存储器装置包括多个动态随机存取存储器装置。
6.如权利要求1所述的存储器模块,其中所述数据组织系统包括:
数据组织单元,用于将所述命令头和数据组织到多个通道组中,所述多个通道组中的每一个包括多个通道,这些通道包括命令头或数据,所述数据组织单元对所述多个通道组进行组织,使得每个通道组中的全部通道都填充多个命令头位或多个数据位;以及
并串转换器,用于将所述多个通道组中的每一个转换成所述多个通道的串行流,由所述发送接口发送。
7.如权利要求6所述的存储器模块,其中所述数据组织单元包括:
数据缓冲器,用于为多个所述事务处理保存各自的数据,所述多个事务处理的每一个的数据是有选择地从所述数据缓冲器通过的;以及
命令队列,用于为多个所述多个事务处理保存各自的命令头,所述多个事务处理的每一个的命令头有选择地从所述命令队列通过,而所述对应事务处理的数据从所述数据缓冲器通过。
8.如权利要求7所述的存储器模块,其中所述数据组织单元还包括:
多路复用器,连接起来用于接收为所述多个事务处理的每一个保存在所述数据缓冲器中的数据以及为所述多个事务处理的每一个保存在所述命令队列中的多个命令头,所述多路复用器用于响应多个多路复用器控制信号,将所述多个事务处理的每一个的数据和所述多个事务处理的每一个的命令头传送到输出端口;
仲裁单元,连接到所述数据缓冲器和所述命令队列中的至少一个以接收信息,该信息表明为所述多个事务处理分别保存在所述数据缓冲器和命令队列中的数据和多个命令头,所述仲裁单元用于响应表明所述数据和多个命令头的信息产生所述多个控制信号,引起所述多路复用器将数据或命令头的通道组和所述多个事务处理的至少一个的数据传送到所述多路复用器的输出端口。
9.如权利要求8所述的存储器模块,还包括并串转换器,该转换器连接到所述多路复用器的输出端口,所述并串转换器用于在所述多路复用器的输出端口将所述通道组转换成所述多个通道的串行流。
10.如权利要求1所述的存储器模块,其中所述数据组织单元是可配置的,以改变时钟信号的每个周期期间从所述数据组织发送的每个通道组中的通道数量。
11.如权利要求1所述的存储器模块,其中所述多个事务处理的每一个的命令头和数据包括存储器数据包。
12.一种存储器模块,包括:
多个存储器装置;以及
存储器集线器,包括:
存储器控制器,和所述多个存储器装置连接;
至少一个接收接口,和所述存储器控制器连接;以及
至少一个发送接口,和所述存储器控制器连接,用于从所述存储器模块发送多个存储器事务处理,每个发送接口接收多个存储器事务处理,所述多个存储器事务处理的每一个包括命令头和数据,所述数据具有可变数量的数据位,每个发送接口包括数据组织系统,该数据组织系统用于将所述命令头和数据组织到多个组中,所述多个组中的每一个包括预定大小、预定数量的分组,所述分组的每一个包括多个并行命令头位或数据位,包括用于第一个事务处理的数据的每个分组后面紧跟一个分组,该分组包括用于第一个事务处理的附加数据或用于第二个事务处理的命令头,使得每个组用包括多个命令头位或多个数据位的多个分组填充,所述数据组织系统还用于输出每组数据作为所述多个分组的串行流。
13.如权利要求12所述的存储器模块,其中所述多个组中的每一个包括八个分组。
14.如权利要求12所述的存储器模块,其中所述多个组中的每一个包括命令头或数据的32个并行位。
15.如权利要求12所述的存储器模块,其中所述至少一个发送接口包括上游发送接口和下游发送接口,这些接口中的每一个都包括所述数据组织系统。
16.如权利要求12所述的存储器模块,其中所述多个存储器装置包括多个动态随机存取存储器装置。
17.如权利要求12所述的存储器模块,其中所述数据组织系统包括:
数据组织单元,用于将所述命令头和数据组织到多个组中,所述多个组中的每一个包括多个分组,这些分组包括命令头或数据,所述数据组织单元组织这些组,使得每个组中的全部分组都填充多个命令头位或数据位;以及
并串转换器,用于将所述多个组中的每一个转换成所述多个分组的串行流,由所述发送接口发送。
18.如权利要求17所述的存储器模块,其中所述数据组织单元包括:
数据缓冲器,用于为多个事务处理保存各自的数据,所述多个事务处理中每一个的数据有选择地通过所述数据缓冲器;以及
命令队列,用于为多个事务处理保存各自的命令头,所述多个事务处理的每一个的命令头有选择地从所述命令队列通过,而所述对应事务处理的数据从所述数据缓冲器通过。
19.如权利要求18所述的存储器模块,其中所述数据组织单元还包括:
多路复用器,连接起来用于接收为所述多个事务处理的每一个保存在所述数据缓冲器中的数据以及为所述多个事务处理的每一个保存在所述命令队列中的多个命令头,所述多路复用器用于响应多个多路复用器控制信号,将用于所述多个事务处理的每一个的数据和用于所述多个事务处理的每一个的命令头传送到输出端口;
仲裁单元,连接到所述数据缓冲器和所述命令队列的至少一个来接收信息,该信息表明所述多个事务处理的分别保存在所述数据缓冲器和命令队列中的数据和多个命令头,所述仲裁单元用于响应表明所述数据和多个命令头的信息产生所述多个控制信号,引起所述多路复用器将包括数据或命令头的一组分组和所述多个事务处理的至少一个的数据传送到所述多路复用器的输出端口。
20.如权利要求19所述的存储器模块,还包括并串转换器,该转换器连接到所述多路复用器的输出端口,所述并串转换器用于在所述多路复用器的输出端口将所述组转换为所述多个分组的串行流。
21.如权利要求17所述的存储器模块,其中所述数据组织单元是可配置的,以改变时钟信号的每个周期期间从所述数据组织发送的每个通道组中的通道数量。
22.如权利要求12所述的存储器模块,其中所述多个事务处理的每一个的命令头和数据包括存储器数据包。
23.一种数据组织系统,包括:
数据组织单元,用于将多个存储器事务处理中每一个的命令头和数据组织到多个通道组中,所述多个通道组的每一个包括多个通道,所述多个通道的每一个包括多个并行命令头位或并行数据位,所述数据组织单元对所述通道组进行组织,使得每个通道组中的全部通道填充多个命令头位或多个数据位;以及
并串转换器,用于将所述多个通道组的每一个转换成所述多个通道的串行流,所述多个通道的每一个包括多个并行命令头位或并行数据位。
24.如权利要求23所述的数据组织系统,其中所述多个通道组的每一个包括八个通道。
25.如权利要求23所述的数据组织系统,其中所述多个通道的每一个包括命令头或数据的32个并行位。
26.如权利要求23所述的数据组织系统,还包括:
数据缓冲器,用于为多个事务处理保存各自的数据,所述多个事务处理的每一个的数据有选择地从所述数据缓冲器通过;以及
命令队列,用于为多个事务处理保存各自的命令头,所述多个事务处理的每一个的命令头有选择地从所述命令队列通过,而所述对应事务处理的数据从所述数据缓冲器通过。
27.如权利要求26所述的数据组织系统,其中所述数据组织单元还包括:
多路复用器,连接起来接收为所述多个事务处理的每一个保存在所述数据缓冲器中的数据以及为所述多个事务处理的每一个保存在所述命令队列中的多个命令头,所述多路复用器用于响应多个多路复用器控制信号,将所述多个事务处理的每一个的数据和所述多个事务处理的每一个的命令头发送到输出端口;
仲裁单元,连接到所述数据缓冲器和所述命令队列的至少一个来接收信息,该信息表明所述多个事务处理的分别保存在所述数据缓冲器和命令队列中的数据和多个命令头,所述仲裁单元用于响应表明所述数据和多个命令头的信息产生所述多个控制信号,引起所述多路复用器将数据或命令头的通道组和所述多个事务处理的至少一个的数据传送到所述多路复用器的输出端口。
28.如权利要求23所述的数据组织系统,其中所述数据组织单元是可配置的,以改变时钟信号的每个周期期间从所述数据组织发送的每个通道组中的通道数量。
29.一种基于处理器的系统,包括:
处理器,其具有处理器总线;
系统控制器,和所述处理器总线连接,所述系统控制器具有外围设备端口;
至少一个输入装置,和所述系统控制器的外围设备端口连接;
至少一个输出装置,和所述系统控制器的外围设备端口连接;
至少一个数据存储装置,和所述系统控制器的外围设备端口连接;以及
存储器集线器控制器,和所述处理器总线连接;
多个存储器模块,通过至少一条总线和所述存储器集线器控制器连接,所述多个存储器模块的每一个包括:
多个存储器装置;以及
存储器集线器,包括:
存储器控制器,和所述多个存储器装置连接;
接收接口,通过总线系统和所述存储器控制器连接;以及
发送接口,通过所述总线系统和所述存储器控制器连接,从所述存储器模块向所述存储器控制器发送存储器事务处理,所述发送接口接收多个存储器事务处理,所述多个存储器事务处理的每一个包括命令头和数据,所述数据具有可变数量的数据位,所述发送接口包括数据组织系统,该数据组织系统将命令头和数据组织到多个通道组中,所述多个通道组的每一个包括多个通道,所述多个通道的每一个包括多个并行命令头位或并行数据位,所述数据组织系统组织所述多个通道组,使得每个通道组中的全部通道都用多个命令头位或多个数据位填充,所述数据组织系统用于将所述多个通道组的每一个转换成所述多个通道的串行流,由所述发送接口发送,发送的所述多个通道的每一个包括多个并行命令头位或并行数据位。
30.如权利要求29所述的基于处理器的系统,其中所述多个通道组的每一个包括八个通道。
31.如权利要求29所述的基于处理器的系统,其中所述多个通道的每一个包括命令头或数据的32个并行位。
32.如权利要求29所述的基于处理器的系统,其中所述总线系统包括下游总线和上游总线,该下游总线用于传送由所述多个存储器模块背向所述存储器控制器发送的多个存储器事务处理,该上游总线用于传送由所述多个存储器模块朝向所述存储器控制器发送的存储器事务处理,其中所述发送接口包括连接到所述上游总线的上游发送接口和连接到所述下游总线的下游发送接口,所述上游和下游发送接口的每一个都包括所述多个数据组织系统的相应的一个。
33.如权利要求29所述的基于处理器的系统,其中所述多个存储器装置包括动态随机存取存储器装置。
34.如权利要求29所述的基于处理器的系统,其中所述数据组织系统包括:
数据组织单元,用于将所述命令头和数据组织到多个通道组中,所述多个通道组的每一个包括多个通道,这些通道包括命令头或数据,所述数据组织单元对所述多个通道组进行组织,使得每个通道组中的全部通道都用多个命令头位或多个数据位填充;以及
并串转换器,用于将所述多个通道组的每一个转换成所述多个通道的串行流,由所述发送接口发送。
35.如权利要求34所述的基于处理器的系统,其中所述数据组织单元包括:
数据缓冲器,用于为多个所述事务处理保存各自的数据,所述多个事务处理的每一个的数据有选择地从所述数据缓冲器通过;以及
命令队列,用于为多个所述事务处理保存各自的命令头,所述多个事务处理的每一个的命令头有选择地从所述命令队列通过,而所述对应事务处理的数据从所述数据缓冲器通过。
36.如权利要求35所述的基于处理器的系统,其中所述数据组织单元还包括:
多路复用器,连接起来用于接收为所述多个事务处理的每一个保存在所述数据缓冲器中的所述数据以及为所述多个事务处理的每一个保存在所述命令队列中的所述多个命令头,所述多路复用器用于响应多个多路复用器控制信号,将用于所述多个事务处理的每一个的数据和用于所述多个事务处理的每一个的命令头传送到输出端口;
仲裁单元,连接到所述数据缓冲器和所述命令队列的至少一个来接收信息,该信息表明为所述多个事务处理分别保存在所述数据缓冲器和命令队列中的所述数据和多个命令头,所述仲裁单元用于响应表明所述数据和多个命令头的信息产生所述多个控制信号,引起所述多路复用器将数据或命令头的通道组和所述多个事务处理的至少一个的数据传送到所述多路复用器的输出端口。
37.如权利要求36所述的基于处理器的系统,还包括并串转换器,该转换器连接到所述多路复用器的输出端口,所述并串转换器用于在所述多路复用器的输出端口将所述通道组转换成所述多个通道的串行流。
38.如权利要求34所述的基于处理器的系统,其中所述数据组织单元是可配置的,以改变时钟信号的每个周期期间从所述数据组织发送的每个通道组中的通道数量。
39.如权利要求29所述的基于处理器的系统,其中所述用于所述多个事务处理的每一个的命令头和数据包括存储器数据包。
40.一种发送多个存储器事务处理的方法,所述多个存储器事务处理的每一个包括命令头和可变数量的数据,所述方法包括:
将所述命令头和数据组织到多个组中,多个组的每一个包括预定大小、预定数量的分组,所述多个分组的每一个包括多个并行命令头位或数据位,包括用于第一个事务处理的数据的每个分组后面紧跟包括用于所述第一个事务处理的附加数据或用于第二个事务处理的命令头的分组,使得每个组用包括多个命令头位或多个数据位的多个分组填充;以及
发送每组数据作为所述多个分组的串行流,所述多个分组的每一个包括所述多个并行命令头位或数据位。
41.如权利要求40所述的方法,其中将所述命令头和数据组织到多个组中的操作包括组织所述命令头和数据到多个组中,所述多个组的每一个包括八个分组。
42.如权利要求40所述的方法,其中将所述命令头和数据组织到包括预定数量的分组的多个组中的操作包括所述命令头和数据,使得每个分组包括命令头或数据的32个并行位。
43.如权利要求40所述的方法,还包括改变每一组中多个分组的量。
44.一种传送多个存储器事务处理的方法,所述多个存储器事务处理的每一个包括命令头和可变量的数据,所述方法包括:
将所述命令头和数据组织到多个通道组中,所述多个通道组的每一个包括预定大小的多个通道,所述多个通道的每一个包括多个并行命令头位或数据位,对所述多个通道组进行组织,使得每个通道组中的全部通道都用多个命令头位或多个数据位填充。
45.如权利要求44所述的方法,还包括将所述多个通道组的每一个转换成所述多个通道的串行流,所述多个通道的每一个包括多个并行命令头位或并行数据位。
46.如权利要求44所述的方法,其中将所述命令头和数据组织到多个通道组中的操作包括组织所述命令头和数据到多个通道组中,所述多个通道组的每一个包括八个通道。
47.如权利要求44所述的方法,其中将所述命令头和数据组织到多个通道组中的操作包括组织所述命令头和数据,使得每个通道包括命令头或数据的32个并行位,其中所述多个通道组的每一个包括预定数量的通道。
48.如权利要求44所述的方法,还包括改变每个通道组中通道的数量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/804,608 | 2004-03-18 | ||
US10/804,608 US20050210185A1 (en) | 2004-03-18 | 2004-03-18 | System and method for organizing data transfers with memory hub memory modules |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1965302A true CN1965302A (zh) | 2007-05-16 |
CN100437535C CN100437535C (zh) | 2008-11-26 |
Family
ID=34987690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005800156926A Active CN100437535C (zh) | 2004-03-18 | 2005-03-16 | 存储器模块、数据组织系统和发送存储器事务处理的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20050210185A1 (zh) |
EP (1) | EP1738267B1 (zh) |
JP (1) | JP4532542B2 (zh) |
KR (1) | KR100840140B1 (zh) |
CN (1) | CN100437535C (zh) |
WO (1) | WO2005089418A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404183A (zh) * | 2010-09-07 | 2012-04-04 | 中兴通讯股份有限公司 | 仲裁方法和仲裁器 |
CN106415511A (zh) * | 2014-01-24 | 2017-02-15 | 高通股份有限公司 | 动态随机存取存储器(dram)接口的串行数据传输 |
CN106471474A (zh) * | 2014-06-02 | 2017-03-01 | 美光科技公司 | 用于在可扩展存储器系统协议中传输包的系统及方法 |
CN110554651A (zh) * | 2019-09-19 | 2019-12-10 | 哈尔滨工业大学 | 微流控芯片温度测量及控制的私有物联网系统 |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7836252B2 (en) * | 2002-08-29 | 2010-11-16 | Micron Technology, Inc. | System and method for optimizing interconnections of memory devices in a multichip module |
US7210059B2 (en) | 2003-08-19 | 2007-04-24 | Micron Technology, Inc. | System and method for on-board diagnostics of memory modules |
US7310752B2 (en) | 2003-09-12 | 2007-12-18 | Micron Technology, Inc. | System and method for on-board timing margin testing of memory 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 |
US7366864B2 (en) | 2004-03-08 | 2008-04-29 | Micron Technology, Inc. | Memory hub architecture having programmable lane widths |
US7120723B2 (en) | 2004-03-25 | 2006-10-10 | Micron Technology, Inc. | System and method for memory hub-based expansion bus |
US7590797B2 (en) | 2004-04-08 | 2009-09-15 | Micron Technology, Inc. | System and method for optimizing interconnections of components in a multichip memory module |
US20050268061A1 (en) * | 2004-05-31 | 2005-12-01 | Vogt Pete D | Memory channel with frame misalignment |
US7310748B2 (en) * | 2004-06-04 | 2007-12-18 | Micron Technology, Inc. | Memory hub tester interface and method for use thereof |
US7392331B2 (en) | 2004-08-31 | 2008-06-24 | Micron Technology, Inc. | System and method for transmitting data packets in a computer system having a memory hub architecture |
KR100818298B1 (ko) | 2005-12-08 | 2008-03-31 | 한국전자통신연구원 | 가변 시리얼 정합 방식의 메모리 시스템 및 그 메모리액세스 방법 |
US7860847B2 (en) * | 2006-11-17 | 2010-12-28 | Microsoft Corporation | Exception ordering in contention management to support speculative sequential semantics |
US8010550B2 (en) * | 2006-11-17 | 2011-08-30 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US8024714B2 (en) * | 2006-11-17 | 2011-09-20 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US7822915B2 (en) * | 2007-06-30 | 2010-10-26 | Alcatel-Lucent Usa Inc. | Memory controller for packet applications |
KR100934227B1 (ko) | 2007-09-21 | 2009-12-29 | 한국전자통신연구원 | 개방형 시리얼 정합 방식을 이용한 메모리 스위칭 컨트롤장치, 그의 동작 방법 및 이에 적용되는 데이터 저장 장치 |
US8082475B2 (en) * | 2008-07-01 | 2011-12-20 | International Business Machines Corporation | Enhanced microprocessor interconnect with bit shadowing |
US8245105B2 (en) * | 2008-07-01 | 2012-08-14 | International Business Machines Corporation | Cascade interconnect memory system with enhanced reliability |
US20100005335A1 (en) * | 2008-07-01 | 2010-01-07 | International Business Machines Corporation | Microprocessor interface with dynamic segment sparing and repair |
US8139430B2 (en) * | 2008-07-01 | 2012-03-20 | International Business Machines Corporation | Power-on initialization and test for a cascade interconnect memory system |
US8082474B2 (en) * | 2008-07-01 | 2011-12-20 | International Business Machines Corporation | Bit shadowing in a memory system |
US8201069B2 (en) * | 2008-07-01 | 2012-06-12 | International Business Machines Corporation | Cyclical redundancy code for use in a high-speed serial link |
US7895374B2 (en) * | 2008-07-01 | 2011-02-22 | International Business Machines Corporation | Dynamic segment sparing and repair in a memory system |
US8234540B2 (en) * | 2008-07-01 | 2012-07-31 | International Business Machines Corporation | Error correcting code protected quasi-static bit communication on a high-speed bus |
US7979759B2 (en) * | 2009-01-08 | 2011-07-12 | International Business Machines Corporation | Test and bring-up of an enhanced cascade interconnect memory system |
US20100180154A1 (en) * | 2009-01-13 | 2010-07-15 | International Business Machines Corporation | Built In Self-Test of Memory Stressor |
US8458572B1 (en) * | 2009-11-24 | 2013-06-04 | Apple Inc. | Efficient storage of error correction information in DRAM |
US8775685B1 (en) * | 2011-10-13 | 2014-07-08 | Xilinx, Inc. | Parallel processing of network packets |
US8780914B2 (en) * | 2011-10-17 | 2014-07-15 | Xilinx, Inc. | Parallel processing of network packets |
CN102609378B (zh) * | 2012-01-18 | 2016-03-30 | 中国科学院计算技术研究所 | 一种消息式内存访问装置及其访问方法 |
KR20180049386A (ko) | 2016-11-01 | 2018-05-11 | 에스케이하이닉스 주식회사 | 랭크 레벨에서 병렬화를 지원하는 메모리 장치 및 메모리 시스템 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5887187A (en) | 1993-10-20 | 1999-03-23 | Lsi Logic Corporation | Single chip network adapter apparatus |
AU6501496A (en) * | 1995-07-19 | 1997-02-18 | Ascom Nexion Inc. | Point-to-multipoint transmission using subqueues |
JPH0944462A (ja) * | 1995-07-27 | 1997-02-14 | Kofu Nippon Denki Kk | データ転送処理装置 |
US6792495B1 (en) * | 1999-07-27 | 2004-09-14 | Intel Corporation | Transaction scheduling for a bus system |
US6778546B1 (en) * | 2000-02-14 | 2004-08-17 | Cisco Technology, Inc. | High-speed hardware implementation of MDRR algorithm over a large number of queues |
US7082127B1 (en) * | 2000-07-28 | 2006-07-25 | Marconi Intellectual Property (Ringfence), Inc. | Synchronous dynamic register updating across a distributed system |
DE60039764D1 (de) * | 2000-10-18 | 2008-09-18 | Alcatel Lucent | Datenpaketvermittlungsknoten zur Aufnahme von Schnittstellen mit sehr hoher Bitrate |
JP2002278924A (ja) * | 2001-03-19 | 2002-09-27 | Oki Electric Ind Co Ltd | データの転送制御システム,転送制御方法およびそのプログラム |
US7133972B2 (en) * | 2002-06-07 | 2006-11-07 | Micron Technology, Inc. | Memory hub with internal cache and/or memory access prediction |
US6820181B2 (en) * | 2002-08-29 | 2004-11-16 | Micron Technology, Inc. | Method and system for controlling memory accesses to memory modules having a memory hub architecture |
JP4836794B2 (ja) * | 2003-05-13 | 2011-12-14 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム |
US7779212B2 (en) * | 2003-10-17 | 2010-08-17 | Micron Technology, Inc. | Method and apparatus for sending data from multiple sources over a communications bus |
-
2004
- 2004-03-18 US US10/804,608 patent/US20050210185A1/en not_active Abandoned
-
2005
- 2005-03-16 CN CNB2005800156926A patent/CN100437535C/zh active Active
- 2005-03-16 EP EP05725802A patent/EP1738267B1/en active Active
- 2005-03-16 KR KR1020067021659A patent/KR100840140B1/ko not_active IP Right Cessation
- 2005-03-16 WO PCT/US2005/008865 patent/WO2005089418A2/en active Application Filing
- 2005-03-16 JP JP2007504095A patent/JP4532542B2/ja not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404183A (zh) * | 2010-09-07 | 2012-04-04 | 中兴通讯股份有限公司 | 仲裁方法和仲裁器 |
CN102404183B (zh) * | 2010-09-07 | 2015-04-01 | 中兴通讯股份有限公司 | 仲裁方法和仲裁器 |
CN106415511A (zh) * | 2014-01-24 | 2017-02-15 | 高通股份有限公司 | 动态随机存取存储器(dram)接口的串行数据传输 |
CN106415511B (zh) * | 2014-01-24 | 2020-08-28 | 高通股份有限公司 | 动态随机存取存储器接口的串行数据传输 |
CN106471474A (zh) * | 2014-06-02 | 2017-03-01 | 美光科技公司 | 用于在可扩展存储器系统协议中传输包的系统及方法 |
CN106489134A (zh) * | 2014-06-02 | 2017-03-08 | 美光科技公司 | 用于在可扩展存储器系统协议中包封数据的系统及方法 |
CN106489134B (zh) * | 2014-06-02 | 2018-08-14 | 美光科技公司 | 用于在可扩展存储器系统协议中包封数据的系统及方法 |
CN109032516A (zh) * | 2014-06-02 | 2018-12-18 | 美光科技公司 | 用于在可扩展存储器系统协议中包封数据的系统及方法 |
CN106471474B (zh) * | 2014-06-02 | 2019-08-20 | 美光科技公司 | 用于在可扩展存储器系统协议中传输包的系统及方法 |
CN110554651A (zh) * | 2019-09-19 | 2019-12-10 | 哈尔滨工业大学 | 微流控芯片温度测量及控制的私有物联网系统 |
CN110554651B (zh) * | 2019-09-19 | 2021-07-30 | 哈尔滨工业大学 | 微流控芯片温度测量及控制的私有物联网系统 |
Also Published As
Publication number | Publication date |
---|---|
US20050210185A1 (en) | 2005-09-22 |
KR100840140B1 (ko) | 2008-06-23 |
EP1738267A4 (en) | 2008-01-09 |
WO2005089418A3 (en) | 2006-12-07 |
KR20060133036A (ko) | 2006-12-22 |
EP1738267A2 (en) | 2007-01-03 |
WO2005089418A2 (en) | 2005-09-29 |
JP2007529828A (ja) | 2007-10-25 |
JP4532542B2 (ja) | 2010-08-25 |
EP1738267B1 (en) | 2012-06-20 |
CN100437535C (zh) | 2008-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100437535C (zh) | 存储器模块、数据组织系统和发送存储器事务处理的方法 | |
US4489381A (en) | Hierarchical memories having two ports at each subordinate memory level | |
CN100444131C (zh) | 具有仲裁分组协议的存储器仲裁系统及方法 | |
US8015384B2 (en) | Memory hub architecture having programmable lane widths | |
CN100578466C (zh) | 用于基于集线器的存储器子系统中的双向数据总线的数据旁路的装置和方法 | |
CN1965285A (zh) | 用于基于集线器的存储系统中直接存储器访问的设备和方法 | |
US6553449B1 (en) | System and method for providing concurrent row and column commands | |
CN103366794B (zh) | 用于减少接脚数内存总线接口的装置及方法 | |
CN101436171B (zh) | 模块化通信控制系统 | |
CN101303685B (zh) | 可提升通用序列总线储存设备的读写数据速率的方法 | |
CN103377163A (zh) | 超声成像系统及其实时采集数据传输方法 | |
US11755220B2 (en) | Adjustable access energy and access latency memory system and devices | |
US20080301366A1 (en) | Raid system and data transfer method in raid system | |
JPH10260895A (ja) | 半導体記憶装置およびそれを用いた計算機システム | |
JPH02114313A (ja) | 高速外部記憶装置 | |
CN1243313C (zh) | 具有大容量存储器的数据流处理板 | |
CN113065647B (zh) | 加速神经网络的计算-存储通信系统及通信方法 | |
US20210050047A1 (en) | Memory, memory chip and memory data access method | |
JP2000293415A (ja) | 記憶装置 | |
CN116483288A (zh) | 内存控制设备、方法、装置以及服务器内存模组 | |
JPH0553973A (ja) | 情報処理システム | |
JPH04140875A (ja) | データ転送装置 | |
JPS6354652A (ja) | 入出力チヤネル装置 |
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 |