CN100565481C - 确定写等待时间和对准数据捕获开始和到达的方法和设备 - Google Patents
确定写等待时间和对准数据捕获开始和到达的方法和设备 Download PDFInfo
- Publication number
- CN100565481C CN100565481C CNB028153650A CN02815365A CN100565481C CN 100565481 C CN100565481 C CN 100565481C CN B028153650 A CNB028153650 A CN B028153650A CN 02815365 A CN02815365 A CN 02815365A CN 100565481 C CN100565481 C CN 100565481C
- Authority
- CN
- China
- Prior art keywords
- data
- memory devices
- counter
- time
- coupled
- 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.)
- Expired - Fee Related
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
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- 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/1694—Configuration of memory controller to different memory types
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50012—Marginal testing, e.g. race, voltage or current testing of timing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1072—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1093—Input synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2254—Calibration
Abstract
公开了一种用于准确确定存储器设备上相对于写时钟数据的实际到达,以便准确对准存储器设备上数据捕获的开始和数据到达的方法和装置。在存储器设备的输入上数据到达的实际时间是通过将背对背写命令连同预定数据模式一起发送给存储器设备来确定的。数据模式存储在寄存器中,预测的数据到达时间和实际的数据到达时间之间的差异通过逻辑电路来确定。任何确定的差异皆可以通过延迟存储器设备上数据捕获的开始来补偿,由此准确对准存储器设备上数据捕获的开始和数据的到达。
Description
技术领域
本发明总体上涉及高速同步存储器系统,更具体而言,涉及用于确定存储器设备的实际写等待时间和准确对准存储器设备上数据捕获的开始和数据到达的方法和装置。
背景技术
在典型的计算机系统中,处理器与存储器设备通过总线接口,典型地通过存储器控制器接口。当控制器向存储器设备提交读(READ)请求时,来自存储器设备的响应可以在称为读“等待时间”的一段延迟时间之后,由控制器从总线上读取。如果控制器提交写(WRITE)请求,则存储器系统中的存储器设备就可以从总线上接收数据,并在某个写“等待时间”之后开始捕获该数据以用于存储。
等待时间量会随设备的类型而变化。等待时间量还会随请求的类型而变化。例如,存储器设备可能需要10-15纳秒来响应读请求,但是仅需要5-10纳秒来响应写请求。
在发出存储器请求之前,存储器控制器典型地为每种类型的请求和每种类型的设备存储指定的等待时间值。因此,当发出请求时,控制器可以确定在将数据提供给总线或从总线接收数据之前其必须等待的时间段。
图1中描述了示例性的计算机系统。该计算机系统包括处理器50、存储器子系统10和扩展总线控制器52。存储器子系统10和扩展总线控制器52经由本地总线54耦合到处理器50。扩展总线控制器52还耦合到至少一个扩展总线56,各种外围设备57-59,诸如大容量存储器设备、键盘、鼠标、图形适配器和多媒体适配器可以附接至该扩展总线56。
存储器子系统10包括经由多个信号线41a-41d、42、43、44、45a-45d、46a-46d耦合到多个存储器模块30-32的存储器控制器40。所述多个数据信号线41a-41d由存储器控制器40和存储器模块30、32使用来交换数据。在多个地址信号线43上发出地址ADDR的信号,而在多个命令信号线42上发出命令CMD的信号。存储器模块30、32分别包括多个存储器设备11-14和15-18,以及各自的寄存器21、22。每个存储器设备11-18是高速同步存储器设备。尽管图1中只示出了两个存储器模块30、32以及相关联的信号线41a-41d、42、43、44、45a-45d、46a-46d,但应当注意,可以使用任意数目的存储器模块。此外,尽管每个存储器模块只示出了四个存储器设备,但可以在每个模块上提供更少或更多的存储器设备。
将存储器模块30、32耦合到存储器控制器40的多个信号线41a-41d、42、43、44、45a-45d、46a-46d称为存储器总线15。存储器总线15可以具有本领域公知的附加信号线,例如芯片选择线,这里为了简明起见没有将其示出。跨越存储器总线15的存储器设备11-14、15-18的每一列称为存储器的等级。通常,单面存储器模块,例如,诸如图1示出的SIMM(单列直插式存储器模块),包括单一的存储器等级。然而,也可以利用包含两个存储器等级的双面存储器模块,例如DIMM(双列直插式存储器模块)。
多个数据信号线41a-41d将存储器设备11-18耦合到存储器控制器40。读数据被与读时钟信号RCLK同步地串行输出,所述读时钟信号RCLK被横跨多个读时钟信号线45a-45d驱动。读时钟信号RCLK由读时钟发生器41产生,该读时钟信号RCLK被施加于存储器模块32、30的存储器设备11-18以及被施加于存储器控制器40。
尽管为了描述目的,读时钟发生器41与存储器模块30、32相独立地示出,但读时钟发生器41通常被提供在存储器设备11-18自身之内,且读时钟信号可以来源于施加于存储器设备的其他时钟信号。
写数据被与写时钟信号WCLK同步地串行输入,所述写时钟信号WCLK由存储器控制器40横跨多个写时钟信号线46a-46d驱动。使用命令时钟信号CCLK来同步命令和地址,命令时钟信号CCLK由存储器控制器横跨存储器模块30、32的寄存器21、22驱动至终端器48。命令、地址和命令时钟信号线42-44直接耦合到存储器模块30、32的寄存器21、22。寄存器21、22在这些信号被分配到存储器模块30、32的存储器设备11-18之前将这些信号缓冲。因此,存储器子系统10在三时钟域下工作,即,由读时钟RCLK控制的读时钟域,由写时钟WCLK控制的写时钟域,以及由命令时钟CCLK控制的命令时钟域。在两时钟域中,第三时钟域CCLK不存在,写时钟WCLK用作写数据捕获和命令/地址捕获的双重目的。
当存储器设备11-18接收读命令时,直到经过了由命令时钟CCLK确定的某一时间量后,才在存储总线15上输出与该读命令相关联的数据。这个时间称为设备读等待时间CL。存储器设备11-18通常可以被编程,用以采用多个设备读等待时间中的任意一个操作,范围从最小设备读等待时间(其随设备而变化)到最大读等待时间。
因此,相对于上述三时钟域中的命令时钟(CCLK)来测量每个设备的读等待时间CL,或者相对于上述两时钟域中的写时钟WCLK来进行测量,这是由于在两时钟域中,写时钟WCLK用作写数据捕获和命令/地址捕获的双重目的。对于两时钟域的当前规格要求CL-1的写等待时间,即小于读等待时间一个时钟周期,或CL-2,即小于读等待时间的两个时钟周期。然而,因为读时钟信号RCLK典型地由锁延迟环电路以系统的输出模型补偿,所以相对于写时钟WCLK的真实的读等待时间CL是未知的。因此,相对于读等待时间指定写等待时间可能不能准确地预测设备上的数据相对于写时钟的到达。
此外,每个设备的写等待时间只是由存储器控制器40看见的写等待时间的一部分。由存储器控制器看见的这个总等待时间,称为系统等待时间,是设备写等待时间和由在存储器设备11-18和存储器控制器40之间的信号传播时间的影响引起的等待时间之和。如果在每个存储器设备11-18和存储器控制器40之间的信号传播是相同的,则由信号传播时间引起的等待时间会是常数,并对每个存储器设备11-18有相同的影响。然而,如图1所示,命令CMD、地址ADDR和命令时钟CCLK在其被分配到存储器设备11-18之前最初被发送至寄存器21、22。存储器模块30、32上的每个存储器设备11-14,15-18处于离寄存器21、22不同距离的位置。因此每个存储器设备11-14将接收由存储器控制器40在不同时期发出的命令和/或数据。此外,还存在存储器控制器40和两个存储器模块30、32的寄存器21、22之间的距离上的差异。(存储器模块30上的)寄存器21更靠近存储器控制器40,因此将在(存储器模块32上的)寄存器22之前接收命令、地址和命令时钟。因此,存储器子系统10的每个存储器设备11-18具有用于其命令CMD、地址ADDR和命令时钟CCLK信号的到存储器控制器的不同信号路径长度,并且将以变化的时间接收由存储器控制器发出的命令和/或数据。
由于每个存储器设备11-18的最小设备写等待时间上的差异和它们的命令CMD、地址ADDR和命令时钟CCLK信号传播上的差异,每个存储器设备11-18可以具有不同的系统等待时间。这进一步妨碍了关于何时数据相对于写时钟WCLK到达特定存储器设备11-18的离散时钟周期上的准确预测。
因此,存在对于准确确定实际写等待时间,即数据相对于写时钟到达存储器设备,以及对准与写命令相关联的数据捕获的开始以及数据到达的方法和装置的需要。
发明内容
本发明提供了一种方法和装置,用于准确确定存储器设备上的数据到达,以及对准与写命令相关联的数据捕获的开始和数据的到达。
根据本发明,数据到达存储器设备的输入的实际时间是在校准时段期间、通过将背对背写命令连同预定数据模式一起发送至存储器设备来确定的。数据模式存储在寄存器中,数据到达的预测时间和数据到达的实际时间之间的任何差异由逻辑电路来确定。任何确定的差异可以通过利用计数器从写命令的接收延迟存储器设备上数据捕获的开始来进行补偿,由此准确对准存储器设备上数据捕获的开始和数据的到达。
在本发明的一个方面,提供了一种用于确定存储器设备的写等待时间的电路,包括:
具有多个位置的寄存器,所述寄存器接收并存储预定数据模式的至少一部分;和
被耦合到所述寄存器的编码器,用于接收存储在所述多个位置的至少一部分中的数据,对接收到的数据进行编码,并且输出信号,所述信号表示所述预定数据模式的实际接收时间和所述预定数据模式的期望接收时间之间的差异。
在本发明的另一个方面,提供了一种用于对准捕获输入数据的开始时间和所述输入数据的实际接收的设备,包括:
第一电路,用于确定所述输入数据的实际到达时间和所述输入数据的期望到达时间之间的时间差异,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储预定数据模式的一部分;
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对接收到的数据进行编码,并且输出信号,所述信号表示所述预定数据模式的实际到达时间和所述预定数据模式的期望到达时间之间的差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述输入数据的所述实际到达时间和所述输入数据的所述期望到达时间之间的所述确定的差异,延迟捕获所述输入数据的开始时间。
在本发明的又一个方面,提供了一种存储器设备,包括:
第一电路,用于确定在所述存储器设备测试数据的实际到达时间和所述测试数据的期望到达时间之间的时间差异,所述时间差异按照时钟信号的周期被测量,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储测试数据的一部分;
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对所述接收到的数据进行编码,并且输出信号,所述信号表示在所述存储器设备测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的所述差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述确定的差异来延迟捕获输入数据到所述存储器设备的开始时间,以便对准在所述存储器设备捕获所述输入数据的所述开始时间和所述输入数据的实际到达时间。
在本发明的又一个方面,提供了一种存储器设备,包括:
输入盘,用于接收输入数据;
解串行器,具有被耦合到所述输入盘的第一输入;以及
延迟电路,具有被耦合到所述解串行器的第二输入的输出,所述延迟电路向所述解串行器提供输出信号,所述解串行器响应于所述输出信号而开始捕获所述输入数据,
其中所述延迟电路延迟所述输入数据的所述捕获的所述开始时间,以便对准所述存储器设备处的所述开始时间和所述输入数据的到达。
在本发明的又一个方面,提供了一种处理器系统,包括:
处理单元;以及
被连接到所述处理单元的存储器设备,所示存储器设备包括:
第一电路,用于确定所述存储器设备处测试数据的实际到达时间和所述测试数据的期望到达时间之间的差异,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储测试数据的一部分;和
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对所述接收到的数据进行编码,并且输出信号,所述信号表示所述存储器设备处测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述确定的差异来延迟捕获输入数据到所述存储器设备的开始时间,以便对准所述存储器设备处捕获所述输入数据的所述开始时间和所述输入数据的实际到达时间。
在本发明的又一个方面,提供了一种处理器系统,包括:
处理单元;以及
被连接到所述处理单元的存储器设备,所示存储器设备包括:
输入盘,用于接收输入数据;
解串行器,具有被耦合到所述输入盘的第一输入;以及
延迟电路,具有被耦合到所述解串行器的第二输入的输出,
所述延迟电路向所述解串行器提供输出信号,所述解串行器响应于所述输出信号而开始捕获所述输入数据,
其中所述延迟电路延迟所述输入数据的所述捕获的所述开始时间,以便对准所述存储器设备处的所述开始时间和所述输入数据的到达。
在本发明的又一个方面,提供了一种用于将输入数据写到存储器设备的方法,包括以下步骤:
确定所述存储器设备对测试数据的实际接收时间和所述存储器设备对所述测试数据的期望接收时间之间的差异;
接收写命令以将所述输入数据写到所述存储器设备;以及
根据所述确定的差异来延迟捕获所述输入数据的开始时间,以对准捕获的所述开始时间和所述输入数据的接收。
在本发明的又一个方面,提供了一种用于将数据写到存储器设备的方法,包括以下步骤:
将写命令发送到所述存储器设备;
在等待指定时间量之后,将所述数据发送给所述存储器设备,所述指定时间量基于所述存储器设备的指定的写等待时间;以及
将捕获所述数据的开始延迟预定的时间量,所述预定的时间量基于所述存储器设备的实际写等待时间,以对准所述存储器设备对所述数据捕获的所述开始和对所述数据的接收。
附图说明
从下述本发明的详细说明连同提供附图,本发明的这些以及其他优点和特征将变得显而易见。
图1示出了传统计算机系统的框图;
图2示出了根据本发明,用于确定实际写等待时间和对准存储器设备上写命令到达和数据到达的电路;
图3A-3D示出了根据本发明,图2的电路中数据寄存器;
图4示出了根据本发明,图2的电路中选中信号的时序图;以及
图5示出了根据本发明,图2的电路中选中信号的另一个时序图。
具体实施方式
将在图2-5中示出的示例性实施例中对本发明进行描述。可以利用其他实施例,也可以进行结构或逻辑改变而不背离本发明的精神或范围。类似的项由相同的参考数字表示。
根据本发明,数据到达存储器设备的输入的实际时间被确定,预测的到达时间和实际的到达时间之间任何确定的差异可以通过延迟存储器设备上数据捕获的开始来进行补偿,由此准确对准存储器设备上数据捕获的开始和数据的到达。
图2示出了根据本发明,用于确定数据的实际到达时间和对准存储器设备上数据捕获的开始和数据到达的电路100的框图。电路100可以提供在图1的每个存储器设备11-18中。
尽管图2中只示出了一个电路100,应当理解,可以在每个存储器设备11-18使用多个电路100,以使用多位数据总线的多个数据路径辅助数据捕获。或者,可以在每个存储器设备11-18倍增电路100的确定部分,而电路100的其他确定部分可以在多个数据路径之间共享,以便节省集成电路管芯上的面积。
电路100包括用于确定来自存储器控制器40的数据的准确到达时间的寄存器102。如图2所示的寄存器102是16位寄存器。存储器控制器40将经由CMD线42把命令信号发送到一个或多个DRAM 11-18,以指示DRAM 11-18将进入校准(训练)模式。控制器40然后将背对背WRITE命令发送到处于校准模式下的DRAM 11-18。控制器40然后按照对应请求类型和设备类型的指定的写等待时间来发送与背对背WRITE命令相关联的数据,诸如例如前述的CL-1或CL-2,接着,按照由WRITE命令信号所请求的那样,DRAM 11-18将开始在输入盘(pad)120和数据捕获锁存器处捕获数据。
但是,如上所述,该指定的写等待时间可能不会准确预测DRAM11-18上数据的实际到达,因此由DRAM 11-18进行的数据捕获可能不和数据到达在同一时间开始。根据本发明,为了确定与写命令相关联的由DRAM 11-18的数据捕获的开始时间和数据接收之间的差异,与背对背写命令相关的数据是预先确定的训练数据模式(pattern)。优选地,训练数据是一对8位字,即16位,其中第一位为“0”,所有后续位为“1”。应当注意,优选使用一对数据字以提供更大的位数,以这些位数来确定数据实际上何时到达DRAM 11-18,这是由于对于DRAM11-18的最大指定等待时间典型地等于8个时钟周期,因此需要一个两字节的训练数据模式,这将在下文中进一步描述。
来自控制器40的训练数据到达输入盘120,并被锁存在数据捕获锁存器/数据接收器122中。训练数据通过解串行器124和x8寄存器126、128,并被存储在寄存器102中。如果DRAM 11-18中数据捕获的开始(例如,在数据捕获锁存器和解串行器124中)和训练数据的到达被准确对准,则训练数据的第一数据位,即具有“0”值的位就将被存储在图3A所示的寄存器102的第一位置中,即位置0a。因此,由于数据捕获的开始和数据到达被准确对准,则不需要调整数据捕获的开始。
但是,如果数据捕获的开始和训练数据的到达未被准确对准,则第一数据位,即具有“0”值的位将不被存储在寄存器102的第一位置中,而是取而代之地存储在后续的位置中。应当理解,与时钟信号WCLK的每个上升沿和下降沿同步地发送数据,并且数据捕获将仅在时钟信号的上升沿开始。因此,训练数据的第一数据位仅被存储在对应于时钟上升沿的位置中。因此,数据的第一位将仅被存储在寄存器102的偶数位置,即0a、2a、4a、6a、0b、2b、4b或6b。
例如,如果数据晚于指定写等待时间一个时钟周期到达,则第一数据位就将被存储在图3B所示的寄存器102的位置2a中。如果数据晚于指定写等待时间两个时钟周期到达,则第一数据位就将被存储在图3C所示的寄存器102的位置4a中。如果数据晚于指定写等待时间四个时钟周期到达,则第一数据位就将被存储在图3D所示的寄存器102的位置0b中。应当理解,在数据晚于期望时间到达的这些示例中,例如像在图3B、3C和3D中,将先于实际接收训练数据之时被存储在寄存器位置中,即图3B中的位置0a、1a,图3C中的位置0a、1a、2a和3a,以及图3D中的位置0a、1a、2a、3a、4a、5a、6a和7a的数据将具有值“1”,这是由于数据驱动器仅在“1”值存在时下拉(pull-down),除非控制器激活数据驱动器以将值下拉为“0”。因此,如果没有数据存在,则存储在寄存器102中的值将缺省为“1”值。或者,控制器可以驱动具有“1”值的数据直到训练数据开始,以确保存储在寄存器中的值在接收到训练数据的第一位之前具有“1”值。
一旦训练数据已被输入到寄存器102,则与时钟的每个上升沿相关的数据,即,存储在寄存器102的偶数位置(位置0a、2a、4a、6a、0b、2b、4b和6b)中的数据被输入到编码器104。只有来自寄存器102的偶数位置的数据是必要的,这是因为训练数据的第一位将总是出现在时钟信号的上升沿,因此其位于偶数位置中。编码器104基于其中存储训练数据的第一位(值“0”)的寄存器102的位置,将8位输入,即寄存器102的偶数位置编码为三个二进制数字。这个位置表示数据捕获应当被延迟以便与数据达到正确同步的时钟周期数目。
例如,如果如图3A所示,数据捕获的开始和数据到达被准确地对准,则从寄存器102到编码器104的输入将是01111111,表示训练数据的第一位存储在寄存器102的位置0a中。编码器104将输出二进制数000,其代表寄存器102的位置0a并表示数据捕获的开始和数据到达发生在相同的时钟周期。如果如图3B所示,数据捕获的开始提早了一个时钟周期,则输入到编码器104的将是10111111。编码器104将输出二进制数001,其代表寄存器102的位置2a并表示数据捕获的开始提早了一个时钟周期发生。如果如图3C所示,数据捕获的开始提早了两个时钟周期,则输入到编码104的将是11011111。编码器104将输出二进制数010,其代表寄存器102的位置4a并表示数据捕获的开始提早了两个时钟周期发生。如果如图3D所示,数据捕获的开始提早了四个时钟周期,则输入到编码104的将是11110111。编码器104将输出二进制数100,其代表寄存器102的位置0b并表示数据捕获的开始提早了四个时钟周期发生。
在训练数据已在寄存器102中被接收并在编码器104中被编码之后的适当时间,初始化逻辑150将把锁存信号输出到锁存器106。锁存器106将以从编码器104输出的三位二进制数的形式锁存编码器104的输出。如上所述,编码器104的输出表明在数据实际到达之前,数据捕获提早开始的时钟周期数目。当锁存器106接收锁存信号时,锁存器106将来自编码器104的存储值锁存,以供在计数器108中使用。每个计数器是将来自锁存器106的值用作为开始点的递减计数器,递减计数至0,并重置为非零值(例如,二进制数“111”或十进制数“7”)。
如图2所示,两个计数器可以用于允许背对背写命令被接收并适当地定时到正确的等待时间。如上所述,可能需要两个计数器,这是因为对于DRAM 11-18的最大指定等待时间典型可以等于8个时钟周期,且对于8位的WRITE脉冲串长度(4个时钟周期),背对背WRITE操作的适当定时可能要求重叠递减计数,并因此需要两个独立的计数器。
每当触发电路通过命令译码器/序列发生器140从控制器40接收写捕获信号时,触发电路交替地选择第一计数器,例如计数器,然后选择第二计数器,例如计数器。第一和第二计数器连接到启动/加载逻辑电路的第一和第二输出,所述启动/加载逻辑电路使用触发电路的输出选择计数器中的哪一个接收下一个启动/加载信号以开始递减计数。当计数器108接收启动/加载信号时,计数器从由锁存器106提供的值开始,与写时钟WCLK同步地开始递减计数至0。在到达0之后,每个计数器重置为其非零值(例如,二进制数“111”或十进制数“7”)。每个计数器在到达值7(111)时或在接收另一个启动/加载信号时停止计数。
每个计数器的输出被输入到相应的零检测器110。零检测器110的输出耦合到至少一个或门,当计数器其中任一个的值到达0时,或门输出开始捕获信号。所述开始捕获信号由解串行器124接收,此时解串行器开始捕获从数据捕获锁存器中接收的数据。
尽管在图2中描述了两个计数器,应当理解,这并非是必需的,而可以根据本发明使用任意数目的计数器,例如单一计数器。
通常在DRAM 11-18接收一个两字节训练模式之后完成校准。进一步的校准可能导致锁存器106中存储不正确的值。但是,如果需要的话可以执行冗余的校准操作,只要锁存器106中存储的值在每次校准操作之前重置为零(“0”)。
一旦完成了训练模式,即,锁存器106存储了计数器的启动值,则电路100就能准确对准存储器设备上数据捕获的开始和输入数据的到达。因此,例如,如果如图3B所示,数据捕获的开始提早了一个时钟周期,则从锁存器106输入到计数器的值将是001。该值将作为计数器的开始点来进行递减计数直到每个计数器到达0。对于图3B中示出的示例,在计数器激活之后的一个时钟周期,计数器到达0,相应的零检测器110将把零检测信号输出至或门,或门将发出开始捕获信号。因此,数据捕获的开始将延迟一个WCLK时钟周期,并因此与输入数据的实际到达准确对准。如果如图3A所示,数据捕获的开始与输入数据的到达适当对准,则从锁存器106输入到计数器的值就将是000,因此数据捕获的开始将不被延迟,由于其已经与输入数据的实际到达对准。
在训练模式完成之后,按如下方式将数据输入到存储器设备11-18。例如,假设数据将被输入到DRAM 12,其在训练模式期间确定了如图3B所示的数据捕获的开始提早了一个周期发生。由此,用于DRAM 12且存储在锁存器106中的值将为001。控制器40将发出写命令并在对应DRAM 12的指定写等待时间之后发送相关的输入数据。命令译码器/序列发生器140将把写捕获信号发送给触发电路、开始/加载逻辑电路112和初始化逻辑电路150。初始化逻辑电路150用于控制被发送到锁存器106和触发电路的锁存信号。初始化逻辑电路150将确定相对于有效的写捕获信号接收到16位数据的时间,然后将锁存信号发送到锁存器106和触发电路。由初始化逻辑150进行的确定可以例如用计数时钟周期的3位计数器来进行。锁存器106将存储的值输出到计数器,其响应于由开始/加载逻辑电路交替置有效的开始/加载信号,将从锁存器106中接收的值开始递减计数。
给每个计数器提供从开始/加载逻辑中接收开始/加载信号的开始/加载输入。输入到每个计数器的开始/加载输入的信号是根据触发电路的输出来确定的,其在计数器之间选择以允许由命令译码器/序列发生器140接收的背对背写命令的正确时序。如果在数据输入期间接收到背对背写命令,则第一计数器,例如计数器,递减计数以同步第一写命令,第二计数器,例如计数器,递减计数以同步第二写命令。由此,控制器40可以发出与前一个写命令间隔一个脉冲串长度的写命令,引起零检测电路110a、110b以数据脉冲串长度的最小时间间隔(例如,8滴答(tick)或4个时钟周期)启动(fire)。零检测电路110通过或门耦合,以检测零检测电路其中之一何时变高。每个零检测电路仅在启动之后保持一个时钟周期为高,因为正如所述的,计数器的输出或是被复位,或是在值7(二进制111)停止计数。
与写命令相关的输入数据被发送到DRAM 12的盘120,其发送输入数据至数据捕获锁存器。如上述示例所述,输入数据的接收可以落后数据捕获的开始一个时钟周期。数据捕获锁存器将输入数据-数据QP驱动至解串行器124,其将在从或门接收开始捕获信号时被使能。因此,在本示例中,解串行器124在相对于数据已预期到达才启动,并因此与输入数据的实际接收准确对准的时间经过了一个时钟周期之后才将被使能。解串行器124将输入数据-数据QP解串行为8位字,并提供8位字给第一x8寄存器126,该寄存器提供输入数据给第二x8寄存器128。提供第二x8寄存器128以允许DRAM 12背对背地捕获两个8位字。输入数据然后被发送到DRAM 12的阵列,和/或在训练模式下被发送到寄存器102,如上所述。
图4和5示出了对于其中数据捕获的开始已经被确定为提早了三个时钟周期的示例的示例性时序图。参照图4,锁存器106(锁存器X3)的输出已经预先确定为3(二进制011),开始/加载信号(开始/加载0)变高时,选中的计数器(计数器0)开始与写时钟(WCLK)同步地从3向0递减计数。当写捕获(写捕获)信号变高时,对于选中的计数器,开始/加载信号(开始/加载0)变高,其还引起触发(触发)信号切换状态。如图4所示,在每次出现写捕获信号的下降沿时,触发信号从高切换至低或从低切换至高。
当选中计数器(计数器0)的输出到达0时,它引起或门(或门)的输出信号变高一个时钟周期。如图4中虚线所示,当或门(或门)的输出变高时,解串行器124开始从数据捕获锁存器捕获输入数据。因为或门(或门)的输出从接收写捕获信号(写捕获)开始被延迟了若干(例如,3个)时钟周期,所以在解串行器124上数据捕获的开始可以有利地与存储器设备上(例如,DRAM 12)正确输入数据的到达对准。
参考图5,在写时钟(WCLK)的上升沿,在数据捕获锁存器上捕获输入数据(输入数据),但是在写时钟(WCLK)的下降沿,在数据捕获锁存器的输出(数据QP)上驱动所述输入数据。解串行器124中的第一数据位在写时钟(WCLK)的下一个上升沿或或门(图4中的或门)的输出信号的上升沿上被捕获,而无论哪一个上升沿是后出现的。以这种方式,当写时钟(WCLK)和或门的输出信号两者均为高时,解串行器124开始捕获输入数据。
因此;根据本发明,确定了指定写等待时间和存储器设备的输入上输入数据到达的实际时间之间的差异。任意确定的差异通过利用计数器来延迟存储器设备上数据捕获的开始而被补偿,由此准确对准了存储器设备上数据捕获的开始和数据的到达。
尽管如上已经描述了本发明的优选实施例,应当理解,这些都是本发明的示例,而不被认为是限制。可以进行增加、删除、替换和其他修改而不背离本发明的精神或范围。因此,本发明不被看作是由上述说明书所限制的,而只是由附属权利要求的范围所限制。
Claims (71)
1.一种用于确定存储器设备的写等待时间的电路,包括:
具有多个位置的寄存器,所述寄存器接收并存储预定数据模式的至少一部分;和
被耦合到所述寄存器的编码器,用于接收存储在所述多个位置的至少一部分中的数据,对接收到的数据进行编码,并且输出信号,所述信号表示所述预定数据模式的实际接收时间和所述预定数据模式的期望接收时间之间的差异。
2.根据权利要求1所述的电路,其中所述寄存器具有16个位置。
3.根据权利要求2所述的电路,其中所述多个位置的所述部分包括8个位置。
4.根据权利要求3所述的电路,其中所述8个位置为所述寄存器的偶数位置。
5.根据权利要求3所述的电路,其中所述8个位置为所述寄存器的奇数位置。
6.根据权利要求3所述的电路,其中所述编码器将存储在所述8个位置中的数据编码成数字,所述数字表示所述多个位置中存储所述预定数据模式的第一位的位置,所述存储所述预定数据模式的所述第一位的位置表示所述预定数据模式的所述实际接收时间和所述预定数据模式的所述期望接收时间之间相对于时钟信号的所述差异。
7.根据权利要求6所述的电路,其中所述数字是二进制数字。
8.根据权利要求6所述的电路,还包括:
被耦合到所述编码器的锁存器,用以接收并存储所述数字。
9.根据权利要求1所述的电路,其中所述预定数据模式是16位长。
10.根据权利要求9所述的电路,其中所述预定数据模式包括具有第一值的第一位和具有第二值的所有其余位。
11.根据权利要求1所述的电路,其中所述预定数据模式的所述实际接收时间和所述预定数据模式的所述期望接收时间之间的所述差异按照时钟信号的周期被测量。
12.一种用于对准捕获输入数据的开始时间和所述输入数据的实际接收的设备,包括:
第一电路,用于确定所述输入数据的实际到达时间和所述输入数据的期望到达时间之间的时间差异,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储预定数
据模式的一部分;
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对接收到的数据进行编码,并且输出信号,所述信号表示所述预定数据模式的实际到达时间和所述预定数据模式的期望到达时间之间的差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述输入数据的所述实际到达时间和所述输入数据的所述期望到达时间之间的所述确定的差异,延迟捕获所述输入数据的开始时间。
13.根据权利要求12所述的设备,其中所述编码器将存储在所述多个位置的所述至少一部分中的所述数据编码成数字,所述数字表示所述多个位置中存储所述预定数据模式的第一位的位置,所述存储所述预定数据的所述第一位的位置表示所述预定数据模式的所述实际到达时间和所述预定数据模式的所述期望到达时间之间的所述差异。
14.根据权利要求12所述的设备,还包括:
被耦合到所述编码器的锁存器,用以接收并存储所述数字。
15.根据权利要求14所述的设备,其中所述延迟电路还包括:
被耦合到所述锁存器的至少一个计数器,用以接收所述数字,所述至少一个计数器将所述数字用作计数的开始点;以及
被耦合到所述至少一个计数器的检测电路,用以确定在所述计数期间所述至少一个计数器到达预定数字的时间,当已到达所述预定数字时,所述检测电路提供输出信号以开始所述输入数据的所述捕获。
16.根据权利要求15所述的设备,其中所述至少一个计数器包括被耦合到所述锁存器的第一和第二计数器,所述第一计数器独立于所述第二计数器接收所述数字并进行计数。
17.根据权利要求15所述的设备,其中所述至少一个计数器是递减计数器,且所述预定数字是0。
18.根据权利要求17所述的设备,其中所述检测电路包括至少一个零检测电路。
19.根据权利要求18所述的设备,其中所述检测电路包括被耦合到每一个所述至少一个零检测电路的输出的至少一个或门。
20.根据权利要求15所述的设备,其中所述至少一个计数器包括至少一个相应的复位输入,用以接收至少一个相应的复位信号来复位所述至少一个计数器。
21.根据权利要求15所述的设备,还包括:
解串行器,具有第一输入和第二输入,所述第一输入被耦合以用于从所述检测电路接收所述输出信号,所述第二输入被耦合以用于接收所述输入数据,其中所述输入数据的捕获被延迟到接收到来自所述检测电路的所述输出信号为止。
22.一种存储器设备,包括:
第一电路,用于确定在所述存储器设备测试数据的实际到达时间和所述测试数据的期望到达时间之间的时间差异,所述时间差异按照时钟信号的周期被测量,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储测试数据的一部分;
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对所述接收到的数据进行编码,并且输出信号,所述信号表示在所述存储器设备测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的所述差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述确定的差异来延迟捕获输入数据到所述存储器设备的开始时间,以便对准在所述存储器设备捕获所述输入数据的所述开始时间和所述输入数据的实际到达时间。
23.根据权利要求22所述的存储器设备,其中所述寄存器具有16个位置。
24.根据权利要求23所述的存储器设备,其中所述多个位置的所述至少一部分包括8个位置。
25.根据权利要求24所述的存储器设备,其中所述8个位置为所述寄存器的偶数位置。
26.根据权利要求24所述的存储器设备,其中所述8个位置为所述寄存器的奇数位置。
27.根据权利要求24所述的存储器设备,其中所述编码器将存储在所述8个位置中的数据编码成数字,所述数字表示所述多个位置中存储所述测试数据的第一位的位置,所述存储所述测试数据的所述第一位的位置表示在所述存储器设备测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的所述差异。
28.根据权利要求27所述的存储器设备,其中所述数字是二进制数字。
29.根据权利要求27所述的存储器设备,还包括:
被耦合到所述编码器的锁存器,用以接收并存储所述数字。
30.根据权利要求29所述的存储器设备,其中所述延迟电路还包括:
被耦合到所述锁存器的至少一个计数器,用以接收所述数字,所述至少一个计数器将所述数字用作计数的开始点;以及
被耦合到所述至少一个计数器的检测电路,用以确定在所述计数期间所述至少一个计数器到达预定数字的时间,当已到达所述预定数字时,所述检测电路提供输出信号以开始所述输入数据的所述捕获。
31.根据权利要求30所述的存储器设备,其中所述至少一个计数器包括被耦合到所述锁存器的第一和第二计数器,所述第一计数器独立于所述第二计数器接收所述数字并进行计数。
32.根据权利要求30所述的存储器设备,其中所述至少一个计数器是递减计数器,且所述预定数字是0。
33.根据权利要求32所述的存储器设备,其中所述检测电路包括至少一个零检测电路。
34.根据权利要求33所述的存储器设备,其中所述检测电路包括被耦合到每一个所述至少一个零检测电路的输出的至少一个或门。
35.根据权利要求30所述的存储器设备,其中所述至少一个计数器包括至少一个相应的复位输入,用以接收至少一个相应的复位信号来复位所述至少一个计数器。
36.根据权利要求30所述的存储器设备,还包括:
解串行器,具有第一输入和第二输入,所述第一输入被耦合以用于从所述检测电路接收所述输出信号,所述第二输入被耦合以用于接收所述输入数据,其中所述输入数据的捕获被延迟到接收到来自所述检测电路的所述输出信号为止。
37.根据权利要求22所述的存储器设备,其中所述测试数据是16位长。
38.根据权利要求37所述的存储器设备,其中所述测试数据包括具有第一值的第一位和具有第二值的所有其余位。
39.一种存储器设备,包括:
输入盘,用于接收输入数据;
解串行器,具有被耦合到所述输入盘的第一输入;以及
延迟电路,具有被耦合到所述解串行器的第二输入的输出,所述延迟电路向所述解串行器提供输出信号,所述解串行器响应于所述输出信号而开始捕获所述输入数据,
其中所述延迟电路延迟所述输入数据的所述捕获的所述开始时间,以便对准所述存储器设备处的所述开始时间和所述输入数据的到达。
40.根据权利要求39所述的存储器设备,其中所述延迟电路还包括:
至少一个计数器,具有输入,所述输入被耦合以用于接收预定数字,所述至少一个计数器将所述数字用作计数的开始点;以及
被耦合到所述至少一个计数器的检测电路,用以确定在所述计数期间所述至少一个计数器到达预定数字的时间,当已到达所述预定数字时,所述检测电路提供输出信号以开始所述输入数据的所述捕获。
41.根据权利要求40所述的存储器设备,其中所述至少一个计数器包括被耦合到所述锁存器的第一和第二计数器,所述第一计数器独立于所述第二计数器接收所述数字并进行计数。
42.根据权利要求40所述的存储器设备,其中所述至少一个计数器是递减计数器,且所述预定数字是0。
43.一种处理器系统,包括:
处理单元;以及
被连接到所述处理单元的存储器设备,所示存储器设备包括:
第一电路,用于确定所述存储器设备处测试数据的实际到达时间和所述测试数据的期望到达时间之间的差异,所述电路包括:
具有多个位置的寄存器,所述寄存器用于接收并存储测试数据的一部分;和
被耦合到所述寄存器的编码器,所述编码器用于接收存储在所述多个位置的一部分中的数据,对所述接收到的数据进行编码,并且输出信号,所述信号表示所述存储器设备处测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的差异;和
被耦合到所述第一电路的延迟电路,所述延迟电路根据所述确定的差异来延迟捕获输入数据到所述存储器设备的开始时间,以便对准所述存储器设备处捕获所述输入数据的所述开始时间和所述输入数据的实际到达时间。
44.根据权利要求43所述的处理器系统,其中所述寄存器具有16个位置。
45.根据权利要求44所述的处理器系统,其中所述多个位置的所述部分包括8个位置。
46.根据权利要求45所述的处理器系统,其中所述8个位置为所述寄存器的偶数位置。
47.根据权利要求45所述的处理器系统,其中所述8个位置为所述寄存器的奇数位置。
48.根据权利要求45所述的处理器系统,其中所述编码器将存储在所述8个位置中的数据编码成数字,所述数字表示所述多个位置中存储所述测试数据的第一位的位置,所述存储所述测试数据的所述第一位的位置表示所述存储器设备处测试数据的所述实际到达时间和所述测试数据的所述期望到达时间之间的所述差异。
49.根据权利要求48所述的处理器系统,其中所述数字是二进制数字。
50.根据权利要求48所述的处理器系统,还包括:
被耦合到所述编码器的锁存器,用以接收并存储所述数字。
51.根据权利要求50所述的处理器系统,其中所述延迟电路还包括:
被耦合到所述锁存器的至少一个计数器,用以接收所述数字,所述至少一个计数器将所述数字用作计数的开始点;以及
被耦合到所述至少一个计数器的检测电路,用以确定在所述计数期间所述至少一个计数器到达预定数字的时间,当已到达所述预定数字时,所述检测电路提供输出信号以开始所述输入数据的所述捕获。
52.根据权利要求51所述的处理器系统,其中所述至少一个计数器包括被耦合到所述锁存器的第一和第二计数器,所述第一计数器独立于所述第二计数器接收所述数字并进行计数。
53.根据权利要求51所述的处理器系统,其中所述至少一个计数器是递减计数器,且所述预定数字是0。
54.根据权利要求53所述的处理器系统,其中所述检测电路包括至少一个零检测电路。
55.根据权利要求54所述的处理器系统,其中所述检测电路包括被耦合到每一个所述至少一个零检测电路的输出的至少一个或门。
56.根据权利要求51所述的处理器系统,其中所述至少一个计数器包括至少一个相应的复位输入,用于接收至少一个相应的复位信号来复位所述至少一个计数器。
57.根据权利要求51所述的处理器系统,其中所述存储器设备还包括:
解串行器,具有第一输入和第二输入,所述第一输入被耦合以用于从所述检测电路接收所述输出信号,所述第二输入被耦合以用于接收所述输入数据,其中所述输入数据的捕获被延迟到接收到来自所述检测电路的所述输出信号为止。
58.根据权利要求43所述的处理器系统,其中所述处理单元和所述存储器设备在相同芯片上。
59.一种处理器系统,包括:
处理单元;以及
被连接到所述处理单元的存储器设备,所示存储器设备包括:
输入盘,用于接收输入数据;
解串行器,具有被耦合到所述输入盘的第一输入;以及
延迟电路,具有被耦合到所述解串行器的第二输入的输出,
所述延迟电路向所述解串行器提供输出信号,所述解串行器响应于所述输出信号而开始捕获所述输入数据,
其中所述延迟电路延迟所述输入数据的所述捕获的所述开始时间,以便对准所述存储器设备处的所述开始时间和所述输入数据的到达。
60.根据权利要求59所述的处理器系统,其中所述延迟电路还包括:
至少一个计数器,具有输入,所述输入被耦合以用于接收预定数字,所述至少一个计数器将所述数字用作计数的开始点;以及
被耦合到所述至少一个计数器的检测电路,用以确定在所述计数期间所述至少一个计数器到达预定数字的时间,当已到达所述预定数字时,所述检测电路提供输出信号以开始所述输入数据的所述捕获。
61.根据权利要求60所述的处理器系统,其中所述至少一个计数器包括被耦合到所述锁存器的第一和第二计数器,所述第一计数器独立于所述第二计数器接收所述数字并进行计数。
62.根据权利要求60所述的处理器系统,其中所述至少一个计数器是递减计数器,且所述预定数字是0。
63.根据权利要求59所述的处理器系统,其中所述处理单元和所述存储器设备在相同芯片上。
64.一种用于将输入数据写到存储器设备的方法,包括以下步骤:
确定所述存储器设备对测试数据的实际接收时间和所述存储器设备对所述测试数据的期望接收时间之间的差异;
接收写命令以将所述输入数据写到所述存储器设备;以及
根据所述确定的差异来延迟捕获所述输入数据的开始时间,以对准捕获的所述开始时间和所述输入数据的接收。
65.根据权利要求64所述的方法,其中所述确定步骤进一步包括:
将测试数据模式发送到所述存储器设备;以及
比较所述测试数据模式的实际接收时间和所述测试数据模式的期望接收时间。
66.根据权利要求65所述的方法,其中所述比较步骤进一步包括:
在具有多个位置的寄存器中存储所述测试数据模式;以及
确定所述多个位置中存储所述测试数据模式的第一位的位置,所述位置表示所述测试数据模式的所述实际接收时间和所述测试数据模式的所述期望接收时间之间相对于时钟信号的差异。
67.根据权利要求66所述的方法,其中所述确定步骤进一步包括:
根据所述位置确定一个值;以及
存储所述值。
68.根据权利要求67所述的方法,其中所述延迟步骤进一步包括:
将所述确定的值用作为开始值,计数到预定值;
检测已到达所述预定值的时间;以及
当已到达所述预定值时,提供信号以开始捕获所述输入数据。
69.根据权利要求68所述的方法,其中所述预定值是零,且所述计数步骤进一步包括:
从所述确定的值递减计数至0。
70.一种用于将数据写到存储器设备的方法,包括以下步骤:
将写命令发送到所述存储器设备;
在等待指定时间量之后,将所述数据发送给所述存储器设备,所述指定时间量基于所述存储器设备的指定的写等待时间;以及
将捕获所述数据的开始延迟预定的时间量,所述预定的时间量基于所述存储器设备的实际写等待时间,以对准所述存储器设备对所述数据捕获的所述开始和对所述数据的接收。
71.根据权利要求70所述的方法,其中所述延迟步骤进一步包括:
将捕获的所述开始延迟预定数目的时钟周期。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/874,289 | 2001-06-06 | ||
US09/874,289 US6697926B2 (en) | 2001-06-06 | 2001-06-06 | 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 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1636196A CN1636196A (zh) | 2005-07-06 |
CN100565481C true CN100565481C (zh) | 2009-12-02 |
Family
ID=25363418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB028153650A Expired - Fee Related CN100565481C (zh) | 2001-06-06 | 2002-06-06 | 确定写等待时间和对准数据捕获开始和到达的方法和设备 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6697926B2 (zh) |
EP (1) | EP1407455A2 (zh) |
JP (2) | JP4672978B2 (zh) |
KR (1) | KR100596177B1 (zh) |
CN (1) | CN100565481C (zh) |
AU (1) | AU2002312350A1 (zh) |
WO (1) | WO2002099661A2 (zh) |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791555B1 (en) * | 2000-06-23 | 2004-09-14 | Micron Technology, Inc. | Apparatus and method for distributed memory control in a graphics processing system |
US6941433B1 (en) * | 2002-05-22 | 2005-09-06 | Juniper Networks, Inc. | Systems and methods for memory read response latency detection |
US7133972B2 (en) | 2002-06-07 | 2006-11-07 | Micron Technology, Inc. | Memory hub with internal cache and/or memory access prediction |
US7200024B2 (en) * | 2002-08-02 | 2007-04-03 | Micron Technology, Inc. | System and method for optically interconnecting memory devices |
US7117316B2 (en) * | 2002-08-05 | 2006-10-03 | Micron Technology, Inc. | Memory hub and access method having internal row caching |
US7254331B2 (en) * | 2002-08-09 | 2007-08-07 | Micron Technology, Inc. | System and method for multiple bit optical data transmission in memory systems |
US7149874B2 (en) * | 2002-08-16 | 2006-12-12 | Micron Technology, Inc. | Memory hub bypass circuit and method |
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 |
US7836252B2 (en) * | 2002-08-29 | 2010-11-16 | Micron Technology, Inc. | System and method for optimizing interconnections of memory devices in a multichip module |
US7102907B2 (en) * | 2002-09-09 | 2006-09-05 | Micron Technology, Inc. | Wavelength division multiplexed memory module, memory system and method |
US6934199B2 (en) | 2002-12-11 | 2005-08-23 | Micron Technology, Inc. | Memory device and method having low-power, high write latency mode and high-power, low write latency mode and/or independently selectable write latency |
US7738496B1 (en) | 2002-12-31 | 2010-06-15 | Cypress Semiconductor Corporation | Device that provides the functionality of dual-ported memory using single-ported memory for multiple clock domains |
US7245145B2 (en) * | 2003-06-11 | 2007-07-17 | Micron Technology, Inc. | Memory module and method having improved signal routing topology |
US7120727B2 (en) * | 2003-06-19 | 2006-10-10 | Micron Technology, Inc. | Reconfigurable memory module and method |
US7428644B2 (en) * | 2003-06-20 | 2008-09-23 | Micron Technology, Inc. | System and method for selective memory module power management |
US7107415B2 (en) * | 2003-06-20 | 2006-09-12 | Micron Technology, Inc. | Posted write buffers and methods of posting write requests in memory modules |
US7260685B2 (en) * | 2003-06-20 | 2007-08-21 | Micron Technology, Inc. | Memory hub and access method having internal prefetch buffers |
KR100583951B1 (ko) * | 2003-07-11 | 2006-05-26 | 삼성전자주식회사 | 메모리 시스템 및 이 시스템의 타이밍 조절 방법 |
US7389364B2 (en) | 2003-07-22 | 2008-06-17 | Micron Technology, Inc. | Apparatus and method for direct memory access in a hub-based memory system |
US7210059B2 (en) * | 2003-08-19 | 2007-04-24 | Micron Technology, Inc. | System and method for on-board diagnostics of memory modules |
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 |
US20050050237A1 (en) * | 2003-08-28 | 2005-03-03 | Jeddeloh Joseph M. | Memory module and method having on-board data search capabilities and processor-based system using such memory modules |
US7136958B2 (en) | 2003-08-28 | 2006-11-14 | Micron Technology, Inc. | Multiple processor system and method including multiple memory hub modules |
US7310752B2 (en) | 2003-09-12 | 2007-12-18 | Micron Technology, Inc. | System and method for on-board timing margin testing of memory modules |
US7194593B2 (en) * | 2003-09-18 | 2007-03-20 | Micron Technology, Inc. | Memory hub with integrated non-volatile memory |
US7120743B2 (en) * | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7934057B1 (en) * | 2003-12-24 | 2011-04-26 | Cypress Semiconductor Corporation | Logic for implementing a dual clock domain read access with predictable timing for bi-directional inputs/outputs |
US7330992B2 (en) | 2003-12-29 | 2008-02-12 | Micron Technology, Inc. | System and method for read synchronization of memory modules |
US7246252B1 (en) * | 2003-12-31 | 2007-07-17 | Xilinx, Inc. | Delay compensation |
US7188219B2 (en) * | 2004-01-30 | 2007-03-06 | Micron Technology, Inc. | Buffer control system and method for a memory system having outstanding read and write request buffers |
US7412574B2 (en) * | 2004-02-05 | 2008-08-12 | Micron Technology, Inc. | System and method for arbitration of memory responses in a hub-based memory system |
US7181584B2 (en) * | 2004-02-05 | 2007-02-20 | Micron Technology, Inc. | Dynamic command and/or address mirroring system and method for memory modules |
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 |
US7120723B2 (en) | 2004-03-25 | 2006-10-10 | Micron Technology, Inc. | System and method for memory hub-based expansion bus |
US7447240B2 (en) * | 2004-03-29 | 2008-11-04 | Micron Technology, Inc. | Method and system for synchronizing communications links in a hub-based memory system |
US7213082B2 (en) * | 2004-03-29 | 2007-05-01 | Micron Technology, Inc. | Memory hub and method for providing memory sequencing hints |
US6980042B2 (en) * | 2004-04-05 | 2005-12-27 | Micron Technology, Inc. | Delay line synchronizer apparatus and method |
US7590797B2 (en) * | 2004-04-08 | 2009-09-15 | Micron Technology, Inc. | System and method for optimizing interconnections of components in a multichip memory module |
US7099221B2 (en) * | 2004-05-06 | 2006-08-29 | Micron Technology, Inc. | Memory controller method and system compensating for memory cell data losses |
US7162567B2 (en) * | 2004-05-14 | 2007-01-09 | Micron Technology, Inc. | Memory hub and method for memory sequencing |
US7222213B2 (en) * | 2004-05-17 | 2007-05-22 | Micron Technology, Inc. | System and method for communicating the synchronization status of memory modules during initialization of the memory modules |
US7363419B2 (en) | 2004-05-28 | 2008-04-22 | Micron Technology, Inc. | Method and system for terminating write commands in a hub-based memory system |
US7519788B2 (en) | 2004-06-04 | 2009-04-14 | Micron Technology, Inc. | System and method for an asynchronous data buffer having buffer write and read pointers |
US7310748B2 (en) * | 2004-06-04 | 2007-12-18 | Micron Technology, Inc. | Memory hub tester interface and method for use thereof |
US20060010339A1 (en) * | 2004-06-24 | 2006-01-12 | Klein Dean A | Memory system and method having selective ECC during low power refresh |
US7340668B2 (en) * | 2004-06-25 | 2008-03-04 | Micron Technology, Inc. | Low power cost-effective ECC memory system and method |
US7116602B2 (en) * | 2004-07-15 | 2006-10-03 | Micron Technology, Inc. | Method and system for controlling refresh to avoid memory cell data losses |
US7346817B2 (en) | 2004-08-23 | 2008-03-18 | Micron Technology, Inc. | Method and apparatus for generating and detecting initialization patterns for high speed DRAM systems |
US6965537B1 (en) * | 2004-08-31 | 2005-11-15 | Micron Technology, Inc. | Memory system and method using ECC to achieve low power refresh |
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 |
US20060168407A1 (en) * | 2005-01-26 | 2006-07-27 | Micron Technology, Inc. | Memory hub system and method having large virtual page size |
US8447902B2 (en) * | 2005-08-05 | 2013-05-21 | Integrated Device Technology, Inc. | Method and apparatus for predictive switching |
US7526704B2 (en) * | 2005-08-23 | 2009-04-28 | Micron Technology, Inc. | Testing system and method allowing adjustment of signal transmit timing |
JP5023539B2 (ja) * | 2006-04-11 | 2012-09-12 | 富士通セミコンダクター株式会社 | 半導体装置及び信号処理方法 |
US7894289B2 (en) * | 2006-10-11 | 2011-02-22 | Micron Technology, Inc. | Memory system and method using partial ECC to achieve low power refresh and fast access to data |
US7900120B2 (en) * | 2006-10-18 | 2011-03-01 | Micron Technology, Inc. | Memory system and method using ECC with flag bit to identify modified data |
JP5188134B2 (ja) * | 2007-10-03 | 2013-04-24 | キヤノン株式会社 | メモリアクセス制御装置及びメモリアクセス制御方法 |
US7913104B1 (en) * | 2007-10-12 | 2011-03-22 | Xilinx, Inc. | Method and apparatus for receive channel data alignment with minimized latency variation |
KR20110001397A (ko) * | 2009-06-30 | 2011-01-06 | 삼성전자주식회사 | 전력 소모를 줄일 수 있는 반도체 메모리 장치 |
US8400845B2 (en) * | 2011-01-06 | 2013-03-19 | International Business Machines Corporation | Column address strobe write latency (CWL) calibration in a memory system |
JP6459820B2 (ja) * | 2015-07-23 | 2019-01-30 | 富士通株式会社 | 記憶制御装置、情報処理装置、および制御方法 |
KR102536657B1 (ko) * | 2016-07-12 | 2023-05-30 | 에스케이하이닉스 주식회사 | 반도체 장치 및 반도체 시스템 |
CN106547517B (zh) * | 2016-11-03 | 2018-11-20 | 浪潮金融信息技术有限公司 | 一种控制等待时间的方法及装置 |
JP6862951B2 (ja) * | 2017-03-15 | 2021-04-21 | 富士通株式会社 | メモリ制御装置、情報処理装置およびメモリ制御方法 |
CN109947868A (zh) * | 2019-03-22 | 2019-06-28 | 晶晨半导体(上海)股份有限公司 | 一种存储系统的信号显示方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5511024A (en) * | 1993-06-02 | 1996-04-23 | Rambus, Inc. | Dynamic random access memory system |
US5953278A (en) * | 1996-07-11 | 1999-09-14 | Texas Instruments Incorporated | Data sequencing and registering in a four bit pre-fetch SDRAM |
JP4090088B2 (ja) * | 1996-09-17 | 2008-05-28 | 富士通株式会社 | 半導体装置システム及び半導体装置 |
US5917760A (en) * | 1996-09-20 | 1999-06-29 | Sldram, Inc. | De-skewing data signals in a memory system |
US5966343A (en) * | 1997-01-02 | 1999-10-12 | Texas Instruments Incorporated | Variable latency memory circuit |
EP0855653B1 (en) | 1997-01-23 | 2004-10-06 | Hewlett-Packard Company, A Delaware Corporation | Memory controller with a programmable strobe delay |
KR100268429B1 (ko) | 1997-03-18 | 2000-11-01 | 윤종용 | 동기형반도체메모리장치의데이터의입력회로및데이터입력방법 |
US6067606A (en) | 1997-12-15 | 2000-05-23 | Intel Corporation | Computer processor with dynamic setting of latency values for memory access |
US6003118A (en) | 1997-12-16 | 1999-12-14 | Acer Laboratories Inc. | Method and apparatus for synchronizing clock distribution of a data processing system |
US6128748A (en) | 1998-03-25 | 2000-10-03 | Intel Corporation | Independent timing compensation of write data path and read data path on a common data bus |
JP3727778B2 (ja) * | 1998-05-07 | 2005-12-14 | 株式会社東芝 | データ高速転送同期システム及びデータ高速転送同期方法 |
US6041419A (en) | 1998-05-27 | 2000-03-21 | S3 Incorporated | Programmable delay timing calibrator for high speed data interface |
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 |
US6108795A (en) * | 1998-10-30 | 2000-08-22 | Micron Technology, Inc. | Method for aligning clock and data signals received from a RAM |
US6101612A (en) * | 1998-10-30 | 2000-08-08 | Micron Technology, Inc. | Apparatus for aligning clock and data signals received from a RAM |
JP2000148656A (ja) * | 1998-11-09 | 2000-05-30 | Mitsubishi Electric Corp | メモリシステム |
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 |
US6272070B1 (en) * | 2000-02-09 | 2001-08-07 | Micron Technology, Inc. | Method and apparatus for setting write latency |
US6445624B1 (en) * | 2001-02-23 | 2002-09-03 | Micron Technology, Inc. | Method of synchronizing read timing in a high speed memory system |
US6658523B2 (en) * | 2001-03-13 | 2003-12-02 | Micron Technology, Inc. | System latency levelization for read data |
-
2001
- 2001-06-06 US US09/874,289 patent/US6697926B2/en not_active Expired - Lifetime
-
2002
- 2002-06-06 CN CNB028153650A patent/CN100565481C/zh not_active Expired - Fee Related
- 2002-06-06 WO PCT/US2002/017849 patent/WO2002099661A2/en active Application Filing
- 2002-06-06 EP EP02739714A patent/EP1407455A2/en not_active Withdrawn
- 2002-06-06 AU AU2002312350A patent/AU2002312350A1/en not_active Abandoned
- 2002-06-06 KR KR1020037016031A patent/KR100596177B1/ko not_active IP Right Cessation
- 2002-06-06 JP JP2003502706A patent/JP4672978B2/ja not_active Expired - Fee Related
-
2009
- 2009-02-05 JP JP2009025395A patent/JP5044805B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2002099661A3 (en) | 2003-11-13 |
US6697926B2 (en) | 2004-02-24 |
WO2002099661A2 (en) | 2002-12-12 |
US20020188816A1 (en) | 2002-12-12 |
JP2004529453A (ja) | 2004-09-24 |
AU2002312350A1 (en) | 2002-12-16 |
JP4672978B2 (ja) | 2011-04-20 |
JP5044805B2 (ja) | 2012-10-10 |
JP2009104651A (ja) | 2009-05-14 |
KR20040016881A (ko) | 2004-02-25 |
KR100596177B1 (ko) | 2006-07-03 |
CN1636196A (zh) | 2005-07-06 |
EP1407455A2 (en) | 2004-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100565481C (zh) | 确定写等待时间和对准数据捕获开始和到达的方法和设备 | |
US6724666B2 (en) | Method of synchronizing read timing in a high speed memory system | |
US6658523B2 (en) | System latency levelization for read data | |
US6321343B1 (en) | Semiconductor memory system comprising synchronous DRAM and controller thereof | |
CN100386753C (zh) | 脉冲串长度比预取长度短的存储器系统 | |
US7808849B2 (en) | Read leveling of memory units designed to receive access requests in a sequential chained topology | |
US20060104150A1 (en) | Semiconductor memory device | |
US7382665B2 (en) | Method for detecting data strobe signal | |
US11914888B2 (en) | Memory component with input/output data rate alignment | |
KR20030029452A (ko) | 반도체 기억 장치 | |
JP2004507032A (ja) | 高速メモリーバス上の同期データ書込み | |
CN116665747A (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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091202 Termination date: 20110606 |