CN101583933B - 包含双模式存储器互连的存储器控制器 - Google Patents

包含双模式存储器互连的存储器控制器 Download PDF

Info

Publication number
CN101583933B
CN101583933B CN2007800407571A CN200780040757A CN101583933B CN 101583933 B CN101583933 B CN 101583933B CN 2007800407571 A CN2007800407571 A CN 2007800407571A CN 200780040757 A CN200780040757 A CN 200780040757A CN 101583933 B CN101583933 B CN 101583933B
Authority
CN
China
Prior art keywords
memory controller
signal path
data
clock signal
memory
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.)
Active
Application number
CN2007800407571A
Other languages
English (en)
Other versions
CN101583933A (zh
Inventor
G·R·塔尔博特
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.)
MediaTek Inc
Original Assignee
GlobalFoundries 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 GlobalFoundries Inc filed Critical GlobalFoundries Inc
Publication of CN101583933A publication Critical patent/CN101583933A/zh
Application granted granted Critical
Publication of CN101583933B publication Critical patent/CN101583933B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)
  • Information Transfer Systems (AREA)

Abstract

一种包含双模式存储器互连(dual-mode memory interconnect)之存储器控制器,系包括包含多个输入缓冲区(input buffer)及多个输出驱动器(output driver)之输入/输出(input/output,I/O)电路。该I/O电路可配置成取决于模式选择信号的状态而运作于第一模式及第二模式的其中一个。运作于该第一模式期间,该I/O电路可配置成提供并列互连(parallelinterconnect)以连接至一个或多个存储器模块。运作于该第二模式期间,该I/O电路可配置成提供个别串行互连(respective serial interconnect)以连接至一个或多个缓冲单元之每个,各该缓冲单元配置成缓冲正从该一个或多个存储器模块读取或正写入该一个或多个存储器模块中的存储器数据。

Description

包含双模式存储器互连的存储器控制器
技术领域
本发明系关于计算机存储器系统,且尤系关于在存储器制器与存储器单元间之数据转移。
背景技术
计算机系统系采用许多不同种类之系统存储器。一种常用之系统存储器系利用可移除式存储器模块来实作。存储器模块具有不同的种类与配置。然而大致上,存储器模块可实作为具有边缘连接端(edgeconnector)及复数存储器装置之印刷电路板。该存储器模块可插入位于主机板(mother board)或其它系统板(system board)上之插座中。一种普遍使用之存储器模块系双列直插式存储器模块(Dual In-line MemoryModule,DIMM),但仍有其它种类存在。于其它系统中,存储器装置可为非可移除式并直接安置于该主机板或系统板。
于近代历史中,计算机系统处理器之速度及效能已急速增加。然而,系统存储器效能却典型地停滞落后。如此一来,一些系统效能改进之处便被该系统存储器之效能所限制住。因此,对系统设计师来说,改善该系统存储器之频宽与容量为极具关切之处。
虽然改善系统存储器效能是可能的,但这些改善之处有时极为昂贵。有鉴于此,改善该系统存储器之频宽与容量同时又保持花费低廉为极欲达成之课题。
发明内容
本发明系揭露包含双模式存储器互连的存储器控制器之各种具体实施例。于一个具体实施例中,该存储器控制器系包括具有多个输入缓冲器及多个输出驱动器之输入/输出(input/output,I/O)电路。该输入/输出电路可配置成取决于模式选择信号的状态而运作于第一模式及第二模式的其中一个。运作于该第一模式期间,该输入/输出电路可配置成提供并列互连(parallel interconnect)以连接至一个或多个存储器模块。运作于该第二模式期间,该输入/输出电路可配置成提供个别之串行互连(serial interconnect)连接至一个或多个缓冲单元之每个,每个缓冲单元配置成缓冲正从该一个或多个存储器模块读取或正写入该一个或多个存储器模块中的存储器数据。
于一个特定实作中,每个个别串行互连包括多个差分双向数据信号路径(differential bidirectional data signal path)。每个差分双向数据信号路径可传递数据于给定之缓冲单元与该存储器控制器间。
于另一特定实作中,每个个别串行互连包括差分命令信号路径(differential command signal path),其可从该存储器控制器传递命令信息至给定之缓冲单元。
于又一特定实作中,每个个别串行互连包括多个下行差分单向信号路径(downstream differential unidirectional signal path)以及下行单向差分时钟信号路径(downstream unidirectional differential clock signalpath)。每个下行差分单向信号路径可传递来自该存储器控制器之数据、地址及命令信息至该一个或多个缓冲单元。该下行单向差分时钟信号路径可传递来自该存储器控制器之串行时钟信号至该一个或多个缓冲单元之每个。
于再一特定实作中,每个个别串行互连系包括复数上行差分单向信号路径(upstream differential unidirectional signal path)。每个上行差分单向信号路径可传递来自该一个或多个缓冲单元之其中一个的数据及循环冗余码(Cyclic Redundancy Code,CRC)信息至该存储器控制器。
附图说明
图1系包含有高速缓冲器之存储器系统之一个具体实施例之方块图;
图2系显示图1中之存储器系统组件之更详细态样之图;
图3系图1及图2所示之具体实施例之例示丛发运作(burstoperation)之时序图;
图4系描述图1至图3中所示之具体实施例之运作之流程图;
图5系包含有图1所示之存储器系统之计算机系统的一个具体实施例之方块图;
图6系该图5中包含有双模式存储器控制器之计算机系统的一个具体实施例之方块图;
图7系包含具有双模式接口之存储器控制器之存储器系统的一个具体实施例之方块图;
图8系显示图7中之存储器系统组件之更详细态样之图;
图9系描述图7及图8所示之具体实施例之运作之流程图;
图10系包含有图7所示之存储器系统之计算机系统的一个具体实施例之方块图;以及
图11系图10中包含有双模式存储器控制器之计算机系统的一个具体实施例之方块图。
虽然本发明容许各种修饰及替代型式,但已经由图式中之范例显示并在此详细描述其特定实施例。然而,必须了解的是,对于该些图式及细节上的描述并非用以限制本发明为所揭露的特殊型式,相反的,本发明系用以涵盖所有落入本发明于所附之申请专利范围中所定义之精神与范畴内之修饰、等效及替代者。须注意的是使用于本申请文件全文之「可」(may)字系许可(permissive)之意(意即:可能、能够),而非强制(mandatory)之意(意即:必须)。
【主要组件符号说明】
10,80存储器系统
100,710,800,1210  存储器控制器
101,801控制单元102,802  传送单元
104,804接收单元106,806  时钟单元
110,110A至110H,110J至110N,110P至110R  存储器单元
160,160A,160B,860,860A,860B,860C  串行互连
165,865并列互连
170,170A至170J,870,870A至870D  缓冲单元/存储器缓冲器
201  输入缓冲器
202,205,206,208,284,286,289,290,803,810,821,886,893,889正反器
203,809  多任务器  209,218,801  缓冲器
210,811,812  差分等化数据输出驱动器
211,287,288,888  差分等化输出驱动器
220,807  写入先进先出存储器(write FIFO)
250,808,826  CRC单元  255,855  控制逻辑
256,856  DRAM接口
281,283,885,887  差分输入缓冲器
282  接收器时钟数据回传单元
285  偏移单元291,891  差分输出驱动器
292,892  反向器
293,294,295,296,882,890  可变相位单元
400,405,410,415,420,425,430,435,440,445,450,455,460,465,470,475,900,905,910,915,920,925,930,935,940,945,950,955,960,965,970,975,980,985  方块
500,700,1100,1200  计算机系统
601,1101  处理器核心  605,1205  基本输入输出系统
650,1150,1250  处理节点  711,1211  输入/输出电路
720,1220  配置单元  805  指令缓冲区
881  传巷抗扭斜单元/电路
ADDR  地址  BCMD  缓冲命令
CLKS  时钟信号  CMD  命令
CRC  循环冗余码  DDQ  差分数据
DSCLK  下行串行时钟信号
DSD  下行串行数据DQ数据
DQS  数据选通  MCLK  时钟信号
Mode Sel. 模式选择  USCLK  上行串行时钟信号
USD  上行串行数据WCLK差分时钟信号
r0,r1,rdA,rdB,rdC  读取命令
w0,w1,w2,w3,wrX,wrY  写入命令
具体实施方式
现在参阅图1,系显示包含有高速串行缓冲器(high-speed serialbuffer)之一个具体实施例之存储器系统之方块图。存储器系统10包括连接存储器单元110A至110H以及缓冲单元170A至170J之存储器控制器100。须注意的是,包含具有数字及字母之参考指示器(referencedesignator)之组件可仅由该数字指示。举例来说,存储器单元110A可在合适处指示为存储器单元110。亦须注意的是存储器控制器100可为芯片组之一部分(例如可使用于北桥布置(Northbridge arrangement))的记忆控制器。或者例如图5所示,存储器控制器100可为存储器控制器100被嵌入包含一个或多个处理器核心之处理节点内之嵌入式解决方案的一部分。
于一个实作中,存储器单元110A至110H可为存储器模块,例如双列直插式存储器模块(Dual In-line Memory Module,DIMM)。如此,每个DIMM可包括多个存储器装置(未图标),例如于存储器装置之动态随机存取存储器(Dynamic Random Access Memory,DRAM)家族中之装置。然而,大体上须注意的是,系统10之存储器单元110可代表任何类型的系统存储器。
于所列举之具体实施例中,存储器控制器100系透过高速串行互连(serial interconnect)160A及160B连接至缓冲单元170。于一个具体实施例中,每个高速串行互连(high-speed serial interconnect)160系使用差分信号技术(differential signaling technique)。高速串行互连160可包括多个差分双向数据信号路径(differential bidirectional data signalpath)(DDQ)、差分缓冲命令信号路径(differential buffer command signalpath)(BCMD)、差分时钟信号路径(differential clock signal path)(WCLK)以及差分循环冗余码信号路径(differential cyclic redundancy code signalpath)(CRC)。于所列举之具体实施例中,显示有二个存储器信道。如此,串行互连160A可用于其中一个信道且因此连接至缓冲单元170A至170F,而串行互连160B可用于另一信道且连接至缓冲单元170G至170J。须注意的是于所列举之具体实施例中,每个缓冲单元170E及170J之一部份系不使用的,且于需要时可用于其它目的。
再者,存储器控制器100系经过并列互连165连接至存储器单元110。如所示,于存储器控制器100及存储器单元110间的并列互连165可包括地址/命令信号路径(address/command signal path)(ADDR/CMD)以及时钟信号路径(clock signal path)(MCLK)。如同所显示之该二个串行互连,显示有二个ADDR/CMD/MCLK信号路径。每个该ADDR/CMD/MCLK信号路径可用于个别的存储器信道。如所示,其中一个ADDR/CMD/MCLK信号路径系连接至存储器单元110A至110D,而另一个ADDR/CMD/MCLK信号路径则连接至存储器单元110E至110H。再者,缓冲单元170亦经由并列互连165连接至存储器单元110。如所示,并列互连165亦包括数据路径(DQ)以及数据选通信号路径(datastrobe signal path)(DQS)。于一个具体实施例中,存储器控制器100可藉由经过该ADDR/CMD信号路径发送地址及指令而控制存储器单元110之运作。
如以下将更加详细描述者,该DQ数据路径可于该缓冲单元170及存储器单元110间双向传递数据。该DQ数据路径可包含一些8位(bit)(字节(byte)宽度)之数据路径。举例来说,全数据路径(full data path)可为288位宽,但该全数据路径可分成字节尺寸之部分。须注意的是于一个具体实施例中,该288位可包括四个确认字节(check byte),而在其它具体实施例时,可使用其它数量之确认字节。须注意的是,该全数据路径可包括任何数量之数据位,且可分成不同尺寸之部分。该串行互连160之DDQ数据路径可串行地且高速地传递经过该并列互连所传递之数据。举例来说,DDQ0信号路径可传递对应于DQ[0:3]之数据位,DDQ1信号路径可传递对应于DQ[4:7]之数据位等,但其它的映像(mapping)也是可能的。
有许多种方法可使数据路径连接至存储器单元110。举例来说,可考虑将缓冲单元170作为单一集成电路之一部分。然而,由于用于此种实作所需之针脚(pin)数量,这可能是不切实际的。因此,于一个具体实施例中,该数据路径可被分散且分组成较小的单位。因此,于一个具体实施例,每个缓冲单元170可为单独的集成电路,该集成电路系提供缓冲功能给个别的组。
于一个具体实施例中,在写入运作期间,每个串行缓冲单元170可串行地时钟输入(clock in)并储存二个字节,且于其后并列地传送该二个字节于并列互连165上。为获得所需之流通量,于一个具体实施例中,该串行互连160可用并列互连165于该数据信号路径上转移数据之四倍速率来转移数据。然而,该ADDR/CMD信号路径以及该MCLK信号路径则可用并列互连165上数据路径之半倍速率来运作。举例来说,当该并列互连165之数据信号路径DQ/DQS可用1600MT/s转移数据,且该ADDR/CMD及MCLK信号路径可用800MT/s进行运作时,该串行互连160可用6.4GT/s于该DDQ数据路径上转移数据。须注意的是于其它具体实施例中,串行缓冲单元170于传送字节至并列接口(parallel interface)165之前,可储存任何数量之字节。亦须注意的是,该串行互连160可用关于并列互连165中任何适当的数据速率来运作。
CRC信号路径可经由个别的单向差分信号路径传递来自各个缓冲单元170之CRC信息至存储器控制器100。除此之外,时钟信号路径可传递WCLK信号至各个缓冲单元170。同样地,BCMD信号路径传递来自该存储器控制器100之缓冲命令至各个缓冲单元170。
于一个具体实施例中,存储器控制器100可藉由经过该BCMD信号路径而发送之命令,控制缓冲单元170的运作。如此,缓冲单元170可具有正常运作模式(normal operation mode)以及配置与测试模式(configuration and test mode)。举例来说,于标准数据运作期间,存储器控制器100可发送用于数据及前后同步码(pre-and post-ambles)二者之读取及写入指令,以读取及写入数据储存设备(data storage),且校正(adjust)该DQ信号路径之相位偏移(phase offset)。此外,举例来说,存储器控制器100可藉由发送多种的回传命令(loopback command)、CRC控制命令以及CRC训练图样(training pattern)指令来控制该缓冲单元170之配置、训练及测试。
于高数据速率时,缓冲单元170或存储器控制器100收到位错误(bit error)的可能性是显著的。因此,必须以错误侦测码(error detectioncode)保护于存储器控制器100及缓冲单元170间之转移情形,该错误侦测码将强而有力地侦测所保护之区块内的多重位错误(multiple biterror)。于一个具体实施例中,CRC码可用来提供此种多重位错误侦测。更特别的是,如图2所示,为了简化于该缓冲单元及/或该存储器模块中之逻辑,以及报告该存储器控制器100之错误,缓冲单元170于根据其产生的数据或接收的数据来计算CRC。因此,为了转移该CRC信息返回至存储器控制器100,可使用单向CRC信号路径。如图2所示,CRC单元250可基于其内部数据而计算该CRC,并发送该CRC数据返回至存储器控制器100。当在任何方向的链接上侦测到错误时,存储器控制器100可藉由重试(retry)该运作以矫正该错误。
于一个具体实施例中,可计算CRC信息并且同时与转移的数据从缓冲单元170发送至存储器控制器100,使得该CRC在同时可以是可得的,作为在其抵达存储器控制器100时所保护的数据区块。于一个具体实施例中,藉由于写入至读取(write-to-read)以及读取至写入(read-to-write)之转换期间将延迟引入至该数据路径上,可减轻与计算该CRC相关联之延迟。
如上所述,举例来说,许多习知系统系藉由实作控制功能如时钟相位恢复(clock phase recovery)、频道等化(channel equalization)及错误侦测于各通讯装置中,以控制高速双向通讯。然而,更详细描述如下,缓冲单元170可被简化产生此种控制功能非对称(control functionalityasymmetric)。就此而言,存储器控制器100可包括控制功能,其系可动态并适性地校正所传送之写入数据之信号特性(例如:相位等),以使缓冲单元170基于接收自缓冲单元170之信息而正确地读取数据。除此之外,存储器控制器100可校正其内部接收器特性,以使存储器控制器100可接收由缓冲单元170发送之数据。再者,存储器控制器100可校正提供给缓冲单元170之时钟信号之相位,以使地址及命令信息可被正确地取样(sample)。
更特别的是,于高数据速率时,对于总线(bus)内不同信号之传输路径中之延迟之不确定性,可能需要该些信号之接收器之取样时钟(sample clock)之每位相位校正。为避免采用于缓冲单元170内之该电路系统,存储器控制器100可校正其传送的时钟及数据信号之相位,以避免于从动装置(slave)中之复杂的相位偏移(phase shifting)电路。如此,于所列举之具体实施例中,存储器控制器100包括连接至传送单元102、接收单元104以及时钟单元106之控制单元101。控制单元101可基于接收自缓冲单元170之数据计算相位信息,而该缓冲单元170系可用来校正存储器控制器100内之各种时钟边缘之相位。举例来说,响应如CRC数据及读取数据之信息,控制单元101可分别控制于传送单元102、接收单元104及时钟单元106内之相位追踪(tracking)及校正(adjustment)电路(如图2所示)。此功能将配合图2及图5之叙述详细描述如下。
参阅图2,系详加说明图1所示之存储器系统之组件态样之图。对应于图1中之组件系以同一标号以求简单明了。存储器控制器100系经由差分串行互连160连接至串行缓冲器(serial buffer)170。须注意的是,缓冲单元170可代表任何于图1所示之缓冲单元170A至170J。因此,差分串行互连160包括差分WCLK信号路径、差分BCMD信号路径、差分CRC信号路径以及差分数据信号路径DDQ[7:0]。
存储器控制器100包括产生自图1中之时钟单元106之6.4GHz时钟信号,该时钟信号系连接至可变相位单元(variable phase units)293,294,295及296,该等可变相位单元可为计时单元106之一部分并可提供内部时钟给存储器控制器100。该可变相位单元293,294,295及296之输出端系分别提供该时钟信号给正反器(flip-flop,FF)290,289,286及284。该可变相位单元293系连接至FF 290之时钟输入端。由于FF290具有连接一回馈回路(feedback loop)于该输入端之反向器(inverter)292,故该6.4GHz时钟信号系输出为3.2GHz时钟信号。FF 290之输出端系连接至差分输出驱动器(differential output driver)29l之输入端,而其输出端系连接至差分WCLK信号路径。该写入数据系连接至FF 286之输入端。FF 286之输出端系连接至差分等化输出驱动器(differential equalization output driver)287。该驱动器287之输出端系连接至DDQ[7:0]之其中一个信号路径。因此,对于DDQ[7:0]之每个信号路径,可使用类似的写入数据输出路径(未图标)。同样地,对于读取数据,DDQ[7:0]之其中一个信号路径系连接至差分输入缓冲器283,而其输出端系连接至FF 284之输入端。FF 284之输出端系提供作为读取数据至存储器控制器100之其它部分(未图标)。该CRC信号路径系连接至差分输入缓冲器281,其输出端系连接至接收器时钟数据恢复单元(receiver clock data recovery unit)(Rx CDR)282之输入端。Rx CDR系连接至每位偏移单元(per bit offset unit)285,其系连接至可变相位单元296。缓冲命令信息系被提供至FF 289之输入端。FF 289之输出端系连接至差分等化输出驱动器(differential equalization output driver)288,其系连接至该差分BCMD信号路径。
缓冲单元170包括缓冲器209,该缓冲器209代表用于每个该DDQ[7:0]信号路径之差分输入缓冲器。缓冲器209系连接以接收在其中一个该DDQ[7:0]信号路径上发送之写入数据。该缓冲器209之输出端系连接至FF 208之输入端。FF 208之输出端系连接至写入先进先出存储器(First-In-First-Out,FIFO)220。该写入FIFO 220之输出端系连接至DRAM接口256,该DRAM接口256系代表经由并列互连165用以与存储器单元110介接之输入缓冲器及输出驱动器电路。如所示,有16个数据选通信号路径DQS[15:0]及32个数据信号路径DQ[31:0]作为并列互连165之一部分。来自写入FIFO之写入数据可经由DQ[31:0]输出至该存储器单元110。须注意的是,虽然只有显示该DQ以及DQS信号,但为求简化已省略其余信号。亦须注意的是,虽然为了简化而未显示,然该MCLK及DQS信号亦可为差分信号。
来自存储器单元110经由DQ[31:0]之读取数据系经过DRAM接口256连接至多任务器(mux)203之其中一个输入端。该多任务器203之输出端系提供给FF 206之输入端。控制逻辑255系控制该多任务器203之多任务器输入选择(multiplexer input select)。FF 206之输出端系连接至差分等化数据输出驱动器(differential equalization data output driver)210,其系连接至该DDQ[7:0]之其中一个差分信号路径。
缓冲单元170包括控制逻辑255,其系经由输入缓冲器201连接以接收来自该存储器控制器100之该缓冲命令信息(BCMD),其中该输入缓冲器201系连接至FF 202之输入端。该BCMD信息可引发控制逻辑255驱动写入数据至该DQ数据路径,或是读取数据给该DQ数据路径,或是进入及退出初始化程序(initialization sequences)等。因此,控制逻辑255可控制该DRAM接口256、CRC单元250、多任务器203以及其它电路。
于所列举之具体实施例中,该3.2GHz时钟信号系连接至FF 202,205,208及206之时钟输入端。每个FF 202,205,208及206系显示为双缘正反器(dual edge flip flop),意指该些正反器配置成锁存(latch)‘D’输入于该输入时钟信号之领缘(leading edge)与延缘(trailing edge)二者上。因此,写入数据及BCMD信息可以6.4Gb/s之速率传递于其各自之数据路径,且输入端系使用3.2GHz时钟信号锁存。同样地,由于存储器控制器100以6.4GHz运作,故读取数据及CRC信息可用6.4Gb/s的速率于其个别之信号路径传递,以及在特定回路返回模式期间于存储器控制器100内使用。
于一个具体实施例中,当接收到写入数据时,该写入数据系被FF208锁存并储存至写入FIFO 220。写入FIFO可储存该数据直到接收到足够的位,以经由DRAM接口256被输出至存储器单元110。
配合图5中之叙述,将更加详细描述如下,于运作期间,存储器控制器100可动态并适性地校正传送之写入数据之信号特性(例如:相位等)及内部接收器特性,并校正该6.4GHz时钟信号之相位,其中该6.4GHz时钟信号系产生提供给缓冲单元170之该3.2GHz时钟信号。更特别的是,如上所述,接收单元104包括取样时钟相位校正电路(sample clock phase adjustment circuits),例如Rx CDR 282以及偏移单元(offset unit)285,以校正其本身局部的取样时钟相位,以更理想地接收由缓冲单元170传送之数据。如此,每当存储器控制器100接收到来自缓冲单元170之CRC数据时,接收单元104可使用Rx CDR 282、偏移单元285及可变相位单元296以校正FF 284之时钟相位。除此之外,于存储器控制器100内之控制单元101可校正可变相位单元293,以校正提供给FF 290之6.4GHz时钟信号的相位。于初始化处理期间,例如于电源重新激活期间,存储器控制器100可校正可变相位单元294,以校正提供给FF 289之6.4GHz时钟信号的相位,以容许缓冲单元170正确地取样缓冲命令信号。再者,于初始化期间以及于预定时间间隔内之运作期间,控制单元101可校正可变相位单元295,以校正提供给FF 286之6.4GHz时钟信号的相位,以校正被传送至缓冲单元170之写入数据的相位,俾使缓冲单元170更理想地接收该写入数据。
图3系说明于图1及图2中所示之具体实施例于8位丛发(burst)期间之例示运作的时序图。更特别的是,该时序图系显示128字节之读取/写入/读取丛发。该图包括该MCLK及ADDR/CMD信号,该MCLK及ADDR/CMD信号系由存储器控制器100提供给存储器单元110。该图亦显示于缓冲单元170及存储器单元110间分别传递数据及数据选通的DQ及DQS信号。剩余信号:DDQ、BCMD及CRC信号,系于存储器控制器100与缓冲单元170间传递信息。
如所示,读取命令(例如:rdA及rdB)系藉由存储器控制器100发送至存储器单元110。在数个MCLK周期后,该数据与数据选通信号DQS出现在DQ信号路径上。于该数据出现在该DQ信号路径上之前,读取命令(例如:r0、r1)系经由该BCMD信号路径发送至缓冲单元170。于该rdA数据之后,下一个MCLK周期系于该DQ信号路径上,该rdA数据则出现在该DDQ信号路径上。如上所述,该rdA及rdB数据系并列地自存储器单元110至缓冲单元170以两倍MCLK速率(例如:1600MT/s)传递。然而,该数据系串行地自缓冲单元170至存储器控制器100以极快之数据速率(如6.4GT/s)传递。
当从读取转变成写入时,为减轻总线回复时间(turn-around time),写入数据可于缓冲单元170内被预先缓冲。举例来说,如所示之wrX数据以及相关联之BCMD写入命令(例如:w1),系被发送至缓冲单元170,但该数据并未写入至存储器单元110,直到稍后如虚线所指处。
该读取/写入/读取程序可大致描述如下:wrX数据系藉由存储器控制器100经过该DDQ信号路径写入至缓冲单元170,并储存至缓冲单元170内。存储器控制器100同时地发出读取命令(rdA接在数个MCLK周期后有rdB)经由该ADDR/CMD信号路径至存储器单元110。就在该rdA数据出现在该DQ总线上之前(例如:于该wrX数据在DDQ上传送结束时),存储器控制器100发出读取命令(例如:r0及r1)经由BCMD至缓冲单元170。当该rdA及rdB数据于该DQ总线上时,存储器控制器100经由该ADDR/CMD总线发送写入命令(例如:wrX及wrY)至存储器单元110。该rdA及rdB数据系锁存在缓冲单元170内且经由DDQ被发送至存储器控制器100。于DDQ上之rdB数据转移完成之前,存储器控制器100发送写入命令(例如:w0、w2及w3)至缓冲单元170。当该w3写入命令导致刚经由该DDQ信号路径发送之该wrY数据经由该DQ数据路径发送至存储器单元110时,该w2指令便使得该先前已储存之wrX数据写入至存储器单元110。当该wrX数据系正被写入至存储器单元110时,存储器控制器100发出rdC命令经由该ADDR/CMD信号路径至存储器单元110。于一些周期后,该rdC数据以及数据选通分别出现在该DQ信号路径上以及DQS信号路径上。当该rdC数据正在该DQ数据路径上转移至缓冲单元170时,存储器控制器100发出该读取命令(例如:r0及r1)经由该BCMD信号路径至缓冲单元170,因而使缓冲单元170经由该DDQ数据路径发送该读取数据。与wrX数据类似,wrZ数据于此丛发期间系未被写入至存储器单元110。相反地,wrZ数据系储存于缓冲单元170内以用于下一次写入丛发期间。
如上所述,于存储器控制器100及缓冲单元170间之读取及写入运作期间,产生并发送CRC至存储器控制器100。该CRC系由BCMD信息,如箭头所示之写入数据以及读取数据而产生出来。如所示,w1,r0,w0命令、wrX,rdA以及rdB数据系用来产生CRC信息,该CRC信息系发送自缓冲单元170至存储器控制器100于该CRC信号路径上。
须注意的是,如所示,虽然上述之信号可导致CRC信息被产生且被发送至存储器控制器100,但即使该缓冲单元170为闲置时(亦即未转移数据时)CRC信号路径可具有转换(transition)。如上所述,CRC数据驱动于存储器控制器100内之Rx CDR 282。因此,这些转换可使该读取数据取样时钟(read data sample clock)持续对准相位以正确地取样该读取数据。
图4系描述显示于图1及图2中之具体实施例之运作之流程图。如上所简述,于存储器控制器100及缓冲单元170间之接口系非对称的。也就是说,常驻(reside)于存储器控制器100内之控制功能系较多于缓冲单元170内者。因此,于开机(power up)期间以及于运作期间之预定时间时,存储器控制器100可校正传送之写入数据之信号特性(例如:相位等),以使缓冲单元170基于接收自缓冲单元170之信息正确地读取该数据。除此之外,存储器控制器100可校正其内部接收器特性,以使存储器控制器100正确地接收由缓冲单元170发送之数据。再者,存储器控制器100可校正提供给缓冲单元170之时钟信号的相位,且校正该BCMD信号的相位以使缓冲命令信息正确地被缓冲单元170取样。
共同参阅图1、图2及图4,且从图4之方块400开始,于一个具体实施例中,在重新激活或是开机状态之后(方块400),控制逻辑255引发缓冲单元170跳出重新激活而进入训练模式中(方块405)。在进入训练状态后,所有的双向信号路径驱动器(例如:DDQ、DQ及DQS)可处于高阻抗状态(方块410)。于该训练模式中,于偶数MCLK周期期间,该BCMD信号路径系回路返回(loop back)至CRC信号路径(方块405);且于奇数MCLK周期期间,训练图样(training pattern)(例如:10101010...)系输出于该CRC路径上(方块420)。存储器控制器100驱动于该BCMD信号路径上的训练图样,该路径系于该偶数MCLK周期期间输出于该CRC路径上(方块425)。存储器控制器100获得于CRC路径上接收已知数据图样之位锁定(bit-lock)以及字节锁定(byte-lock)(方块430)。除此之外,存储器控制器100藉由校正可变相位单元294而校正该BCMD时钟信号的相位,以使缓冲单元170可获得于该BCMD信号路径上之位锁定(亦即位对准(bit alignment))以及字节锁定(亦即字节对准(byte alignment))(方块435)。更特别的是,存储器单元100可变化(偏移)以一个位时间(UI)发送之图样,以确保缓冲单元170正确地捕捉(capture)每个位,在串行位中偏移,并于正确之字节边界(byte boundary)上捕捉完整的8位之字节。然后存储器控制器可发送缓冲命令以缓冲单元170离开训练模式(方块440)。
为了训练该DDQ数据路径,存储器控制器100经由该DDQ数据路径发送训练图样(例如:具有许多转换(transition)之随机图样)。此图样系储存于写入先进先出存储器(write FIFO)220内(方块445)。存储器控制器100回读(read back)该储存之图样以获得位锁定(方块450)。存储器控制器100校正该写入数据之相位(例如:藉由校正可变相位单元295)以获得大约50%之位错误率(bit error rate)。50%之转换错误率可表示该写入数据系正被取样于边缘附近。然后存储器控制器100以0.5UI将该写入数据之相位校正回来。如此将可导致FF 208,举例来说,以取样该数据于每个数据位之中央部分附近。此处理可执行用于每个DDQ信号路径(方块455)。为了获得字节锁定,存储器控制器100经由DDQ数据路径发送训练图样。于一个具体实施例中,该训练图样对于每个字节可具有不同的图样。当监控该CRC信息时,存储器控制器100可偏移该训练图样数据于增加一个UI内。倘若该CRC信息为正确的,字节锁定即被建立(方块460)。一旦该训练图样被字节锁定于缓冲单元170内,存储器控制器100将试图取得读取数据字节锁定。于一个具体实施例中,存储器控制器100回读该字节锁定训练图样(方块465)。此时,该串行互连应被对准,以使位锁定及字节锁定二者皆于写入及读取方向上被取得。
同样地,该并列DRAM接口256可被对准。更特别的是,于一个具体实施例中,当保存该BCMD及DDQ写入相位对准时,存储器控制器100可校正该WCLK相位,直到该写入相位DQS边缘与合适的MCLK边缘对准(方块470)。
一旦该缓冲单元170串行以及并列互连被对准,于正常运作期间,存储器控制器100可使用上述之训练图样执行该串行互连160之写入相位训练。该训练可执行于预定时间间隔。同样地,于闲置周期期间,存储器控制器100可藉由发送一些闲置命令给缓冲单元170以监控并校正BCMD及CRC对准。这些闲置命令可引发富有CRC图样之预定转换被传送至该CRC信号路径(方块475)。
参阅图5,显示包含图1与图2之存储器系统之计算机系统的例示具体实施例之方块图。须注意的是,对应显示于图1及图2中组件之组件,系以同一标号以求简单明了。计算机系统500包括处理节点(processing node)650,其连接至存储器缓冲器170以及存储器单元110。
于一个实作中,该缓冲单元170可为安置于主机板之集成电路芯片,且该存储器单元110可插入插座中。于另一实作中,该缓冲单元170可为安置于扩充子板(daughter board)之集成电路芯片,该扩充子板系可插入存储器扩充子卡(daughter card)插座中。于此种实作中,该扩充子板可具有插座以使该些存储器单元110以竖立布置方式插入其中。
更特别的是,该处理节点650包括连结至存储器控制器100之处理器核心601。须注意的是,于处理节点650内可有任何数量之处理器核心601。如上所述,存储器控制器100信号系经由差分串行互连160连接至存储器缓冲器170,且经由并列互连165连接至存储器单元110。如所示,该串行互连包括单向CRC信号路径、单向WCLK信号路径、单向BCMD信号路径以及双向数据信号路径。除此之外,于该存储器缓冲器170及存储器单元110间,该并列互连165系包括双向数据及数据选通信号路径。再者,于处理节点650及存储器单元110间,并列互连165系包括单向ADDR/CMD及MCLK信号路径。须注意的是,除了该ADDR/CMD信号外,仍有其它信号,如芯片选择(chip select)、库选择(bank select)以及其它包含于该并列互连165者,然而,为求简化,这些信号皆省略不提。亦须注意的是,虽为求简化而未显示于此,但MCLK及DQS信号可为差分信号。
参照图6,系显示计算机系统之具体实施例之方块图,该系统包括具有双模式存储器互连的存储器控制器。计算机系统700系类似显示于图5中之计算机系统500。举例来说,计算机系统700亦包括连接至存储器缓冲器170及存储器单元110之处理节点650。然而于图6中,由于存储器控制器710系双模式存储器控制器,故不同于图5中之存储器控制器100。更特别的是,如下更加详细描述者,存储器控制器710可选择性地配置成与连至存储器单元110的并列互连或是与用于和缓冲单元170一起使用之串行互连来进行运算。
如上所简述,计算机系统设计师可能想设计出具有极大弹性之系统,以使其组件可由愈多的系统制造商使用愈好。因此,于一个具体实施例中,存储器控制器710可配置成运作于第一模式中,以提供给可兼容于多种存储器规格的并列存储器互连(parallel memoryinterconnect)。举例来说,于不同之具体实施例中,存储器单元110可兼容于DDR2、DDR3或是其它所期望之规格。如此,存储器控制器710可提供作为其并列互连,如所期望而可兼容于DDR2以及DDR3技术的并列互连。除此之外,存储器控制器710可配置成运作于第二模式中,以提供例如图1及图2中串行互连160之差分串行互连(differential serial interconnect)。
如图6所示,配置单元720可决定并选择于存储器控制器710内之输入/输出(I/O)电路711之配置。于一个具体实施例中,可使用处理节点600之固线式(hardwired)外部针脚来选择该存储器控制器710之模式。于此种具体实施例中,处理节点600之一个或多个外部选择针脚可如所示固线(hardwired)于电路接地端(circuit ground),或是固线于VDD或其它电压。配置单元720可侦测选择针脚状态,并因此配置存储器控制器710之I/O电路711。于另一具体实施例中,于系统起始(start-up)期间,执行BIOS 605或是其它系统层级之软件时,可选择存储器控制器模式。
于所列举之具体实施例中,于第一模式中,存储器控制器710系直接连接至存储器单元110。于此一配置中,I/O电路711系包括例如DQ、DQS、ADDR/CMD以及MCLK信号路径的并列互连。于第二模式中,该I/O电路711系变更为差分串行互连,其系连接至如图1、图2及图5所示之存储器缓冲单元170(虚线)。
为了达成模式切换,I/O电路711可包括多个输出驱动器及输入缓冲器。某些驱动器与缓冲器可为差分电路(differential circuit),而某些可为单端型(single-ended)。于一个具体实施例中,视该模式而定,可改变处理节点与驱动器及缓冲器之各种I/O针脚间的连接。因此,于一个具体实施例中,部分I/O电路711可运作如可程序化互连(programmableinterconnect)。
举例来说,如图6所示,该CRC/DQS信号路径可于双向DQS信号路径及单向CRC信号路径之间改变。该DQS/BCMD亦可于双向DQS信号路径及单向BCMD信号路径之间改变。除此之外,该WCLK/DQS信号路径可于双向DQS信号路径及单向WCLK信号路径之间改变。再者,该DDQ/DQ信号路径可于双向单端型(single ended)DQS信号路径及双向差分数据DDQ信号路径之间改变。
参阅图7,系显示包含高速缓冲器之存储器系统之另一具体实施例之方块图。存储器系统80包括存储器控制器800,该存储器控制器800连接至存储器单元110A至110H,然后连接至缓冲单元870A至870D。须注意的是,类似显示于图1之存储器控制器,存储器控制器800亦可为芯片组之一部分(例如可用于北桥布置)之记忆控制器。或者,如图10所示,举例来说,存储器控制器800可为存储器控制器800被嵌入包含一个或多个处理器核心之处理节点内之嵌入式解决方案的一部分。
对应于显示于前述图式中之那些组件,系以同一标号以求简单明了。如此,于一个具体实施例中,存储器单元110A至110H可如上所述代表为例如为双列直插式存储器模块(Dual In-line Memory Module,DIMM)之存储器模块。于各种实作中,存储器单元可符合于各种技术,例如DDR2及DDR3。
于所列举之具体实施例中,存储器控制器800系经由串行互连860A至860D连接至缓冲单元870。于一个具体实施例中,每个串行互连860系使用差分信号技术。以下将配合图8中之叙述更加详细描述,串行差分互连860A至860D可各包括连至每个缓冲单元870之上行链接(upstream link)与下行链接(downstream link)。下行链接可包括多个下行串行数据信号路径(downstream serial data signal paths)(DSD)以及可用来提供时钟给数据进入缓冲单元870中之对应的下行串行时钟信号路径(downstream serial clock signal path)(DSCLK)。同样地,每个上行链接可包括多个上行串行数据信号路径(upstream serial data signalpaths)(USD)以及可用来提供时钟给数据进入存储器控制器800中之对应的上行串行时钟信号路径(upstream serial clock signal path)(USCLK)。于所列举之具体实施例中显示有四条存储器信道,但也可能为其它数量。如此,串行互连860A可用于其中一条信道,且因此连接至缓冲单元870A;串行互连860B可用于第二信道,且连接至缓冲单元870B;串行互连860C可用于第三信道,且连接至缓冲单元870C;以及串行互连860D可用于第四信道,且连接至缓冲单元870D。
对比于使用于前述具体实施例之串行互连160,串行互连860系使用每个皆传递数据、CRC以及ADDR/CMD信息之数据信号路径。如此,于一个具体实施例中,串行互连860可使用封包协议(packetprotocol),于该协议中封包可包括编码(encodings)以标示出负载为ADDR/CMD或是数据。除此之外,每个封包可具有用于CRC信息以及负载(例如:数据或是ADDR/CMD)之专用位时间(dedicated bit times)的格式。
除此之外,缓冲单元870A至870D系经由并列互连865连接至存储器单元110。于一个具体实施例中,并列互连865可包括数据路径(DQ)、数据选通信号路径(DQS)、地址/命令信号路径(ADDR/CMD)以及时钟信号路径(MCLK)。须注意的是,仍可能有其它信号,例如芯片选择(chip select)、库选择(bank select)、确认位(check bits)以及其它包含于该并列互连865上者,然而,这些信号皆为求简化而在此省略。亦须注意的是,并列互连865可包括四个信道。如所示,其中一个信道系连接至存储器单元110A至110D,另一个连接至存储器单元110E至110H,另一个连接至存储器单元110J至110M,而另一个则连接至存储器单元110N至110R。
如以下将更加详细描述者,当该串行互连860之差分数据路径可串行且高速地传递经由该并列互连所传递之数据时,该数据路径DQ可于该缓冲单元870及存储器单元110间双向传递数据。举例来说,给定的上行链路(uplink)USD[0]或是下行链路(downlink)DSD[0]信号路径可传递对应于DQ[0:3]之数据位,该USD[1]信号路径可传递对应于DQ[4:7]之数据位等,但其它的映像也是可能的。于一些具体实施例中,该串行链接可依据串行数据针脚之数量而呈非对称性。于一个实作中,由于假设读取运作可能会消耗比写入运作较多之频宽,故该上行链路可具有多于该下行链路之数据信号路径。
与前述之该缓冲单元170相似,每个串行互连860系可用并列互连865于该数据信号路径上转移数据之四倍速率来转移数据。然而,该ADDR/CMD信号路径以及该MCLK信号路径则可用并列互连865之数据路径之半倍速率来运作。举例来说,当该并列互连865之数据信号路径DQ/DQS可用1600MT/s转移数据,且该ADDR/CMD及MCLK信号路径可用800MT/s进行运作时,该串行互连860可用6.4GT/s于该上行链路及下行链路数据路径上转移数据。须注意的是,该串行互连860可用关于并列互连865之任何适当的数据速率来运作。
于一个具体实施例中,存储器控制器800可经由于该DSD信号路径上发送之命令控制该缓冲单元870之运作。如此,缓冲单元870可具有正常运作模式以及配置与测试模式。举例来说,于正常数据运作期间,存储器控制器800可发送用于数据及前后同步码(pre-andpost-ambles)二者之读取及写入指令,以读取及写入数据储存设备,且校正该DQ信号路径之相位偏移。此外,举例来说,存储器控制器800可藉由发送多种回授返回命令(loopback command)、CRC控制命令以及CRC训练图样命令来控制该缓冲单元870之布置、训练及测试。
于高数据速率时,缓冲单元870或存储器控制器800收到位错误的可能性是显著的。因此,必须以错误侦测码保护于存储器控制器800及缓冲器单元870间之转移情形,该错误侦测码将强而有力地侦测所保护之区块内的多重位错误。于一个具体实施例中,CRC码可用来提供此种多重位错误侦测。更特别的是,如图8所示,CRC信息可被产生并发送于该上行链路及该下行链路二者中。当在任何方向的串行互连上侦测到错误时,存储器控制器800可藉由重试(retry)该运作以矫正该错误。于一个具体实施例中,于下行链接(downstream link)中所侦测到之CRC错误可被编码(encoded)至该上行(upstream)CRC中。
于一个具体实施例中,存储器控制器800可包括控制功能,其系可动态并适性地校正所传送之写入数据之信号特性(例如:相位等),以使缓冲单元870基于接收自缓冲单元870之信息正确地读取该数据。除此之外,存储器控制器800可校正其内部接收器特性,以使存储器控制器100可接收由缓冲单元870发送之数据。再者,存储器控制器800可校正提供给缓冲单元870之时钟信号之相位,以使地址及命令信息可被正确地取样。
更特别的是,于高数据速率时,对于总线中不同信号之传输路径之延迟之不确定性,可能需要那些信号之接收器之取样时钟之每位相位校正。为避免采用于缓冲单元870内之该电路系统,存储器控制器800可校正其传送的时钟及数据信号之相位,以避免于从动装置中之复杂的相位偏移电路。如此,于所列举之具体实施例中,存储器控制器800包括连接至传送单元802、接收单元804以及时钟单元806之控制单元801。控制单元801可基于接收自缓冲单元870之数据计算相位信息,而该缓冲单元870系可用来校正存储器控制器800内之各种时钟边缘之相位。举例来说,响应CRC数据及读取数据之信息,控制单元801可分别控制于传送单元802、接收单元804及时钟单元806内之相位追踪及校正电路(如图8所示)。此功能将配合图8及图9之叙述详细描述如下。
参阅图8,系详加说明图7所示之存储器系统之组件态样之图。对应于图7中之组件系以同一标号以求简单明了。存储器控制器800系经由差分串行互连860连接至串行缓冲单元870。须注意的是,缓冲单元870可代表任何于图7所示之缓冲单元870A至870D。因此,差分串行互连860包括下行差分串行时钟信号路径(downstream differentialserial clock signal path)(DSCLK)以及下行差分数据信号路径(downstream differential data signal paths)DSD[11:0]。同样地,差分串行互连860包括上行差分串行时钟信号路径(USCLK)以及上行差分数据信号路径USD[19:0]。
存储器控制器800包括产生自图7中之时钟单元806之6.4GHz时钟信号。于一个具体实施例中,6.4GHz的时钟系用于存储器控制器800之内部时钟。可变相位单元890之输出端系提供该时钟信号给正反器(flip-flop,FF)889。6.4GHz时钟亦连接至传巷抗扭斜电路(lane deskewcircuit)881,且连接至FF 893之时钟输入端以产生该串行时钟信号DSCLK。由于FF 893具有以回路返回连接于该输入端之反向器892,故该6.4GHz时钟信号系被分为两部分且输出为3.2GHz的串行时钟。该3.2GHz时钟系由差分输出驱动器891所差分驱动。
于所列举之具体实施例中,该写入数据、ADDR/CMD及CRC系提供给FF 889之输入端。FF 889之输出端系连接至差分等化输出驱动器(differential equalization output driver)888。该驱动器888之输出端系连接至DSD[11:0]之一个单一信号路径。因此,对于DSD[11:0]之每个信号路径,可使用类似的输出路径(未图标)。同样地,对于读取数据,USD[19:0]之一个单一信号路径系连接至差分输入缓冲器885,而该缓冲器885之输出端系连接至FF 886之输入端。FF 886之输出端系连接至该传巷抗扭斜单元881之输入端。该传巷抗扭斜单元881之输出端系提供作为读取数据及CRC信息至存储器控制器800之其它部分(未图标)。该上行串行时钟信号USCLK系连接至差分输入缓冲器887,该缓冲器887之输出端系连接至可变相位单元882。而可变相位单元882之输出端系连接至FF 886之时钟输入端。
缓冲单元870系包括缓冲器801,该缓冲器801代表用于每个该DSD[11:0]信号路径之差分输入缓冲器。缓冲器801系连接成接收发送于该DSD[11:0]信号路径之其中之一条路径上之写入数据、ADDR/CMD及CRC信息。因此,类似于存储器控制器800,对于每个DSD[11:0]之信号路径,可使用类似的输出路径(未图标)。该缓冲器801之输出端系连接至FF 802之输入端。FF 802之输出端系连接至FF803之输入端。FF 803之输出端系连接至命令缓冲器805、CRC单元826、写入FIFO 807以及输出多任务器(mux)809。该写入FIFO 807之输出端系连接至DRAM接口856,该DRAM接口系类似于上述结合图2所描述之该DRAM接口。如所示,有4个MCLK信号、ADDR/CMD信号、16个数据选通信号路径DQS[15:0]以及72个数据信号路径DQ[71:0]作为并列互连865之一部分。来自写入FIFO 807之写入数据可经由DQ[71:0]输出至该存储器单元110。须注意的是,其余信号皆为了简化而已被省略。须注意的是,虽然为了简化而未显示出来,但该MCLK及DQS信号亦可为差分信号。
经由DQ[71:0]来自存储器单元110之读取数据系可经过DRAM接口856连接至多任务器(mux)809之一个输入端。多任务器809之输出端系提供给FF 810之输入端。控制逻辑855控制该多任务器809之多任务器输入选择(multiplexer input select)。FF 810之输出端系连接至差分等化数据输出驱动器811,该驱动器811系连接至该USD [19:0]之差分信号路径之其中一条路径。
缓冲单元870亦包括控制逻辑855,该控制逻辑855系连接以接收来自该存储器控制器800之命令信息(CMD)。该CMD信息可引发控制逻辑855驱动写入数据至该DQ数据路径,或是读取数据给该DQ数据路径,或是进入及退出初始化以及测试程序(initialization and testsequences)等。因此,控制逻辑855可控制该DRAM接口856、CRC单元826,808、多任务器809以及其它电路。
于所列举之具体实施例中,该3.2GHz时钟系连接至FF 810之时钟输入端,以及连接至该差分等化数据输出驱动器812之输入端,而驱动器812之输出端系该上行串行时钟信号(upstream serialclock)USCLK。该3.2GHz时钟信号亦连接至除4(Divide by 4)单元804,从而提供为MCLK域之内部800MHz时钟域。
于一个具体实施例中,经由该DSD[11:0]信号路径接收之封包可同时提供至CMD缓冲器805、写入FIFO 807以及CRC单元826。由于该些封包可被编码以标示其为ADDR/CMD或数据负载,故该CMD缓冲器805以及写入FIFO 807可包括封包译码逻辑(packet decodelogic)(未图标),以使上述二者捕捉其各自的封包。因此,当接收到写入数据负载封包时,该封包可被写入FIFO 807以及储存于写入FIFO807内之数据所译码。CMD缓冲器805可丢弃数据负载封包。写入FIFO807可储存该写入数据直到接收到足够位而经由DRAM接口856被输出至存储器单元110。同样地,当接收到CMD负载封包时,该封包可被CMD缓冲器805以及储存于该CMD缓冲器805内之CMD信息所译码。写入FIFO 807可丢弃CMD负载封包。由于所有的封包皆可能包含CRC负载,故CRC单元826系接收所有的封包且取出该CRC信息。
如以下配合图9中之叙述更加详细描述者,于运作期间,存储器控制器800可动态并适性地校正所传送之写入数据及接收读取数据之信号特性(例如:相位等)。更特别的是,如上所述,接收单元804包括取样时钟相位校正电路,例如传巷抗扭斜881以及可变相位单元890,882,以校正其本身局部的取样时钟相位,以更理想地接收由缓冲单元870传送之数据。如此,不论存储器控制器800何时接收到来自缓冲单元870之CRC数据,接收单元804可使用信道抗扭斜以及可变相位单元882以校正FF 885之时钟相位。除此之外,于存储器控制器800内之控制单元801可校正可变相位单元890以校正传送至缓冲单元870之写入数据的相位,以使缓冲单元870可更理想地接收该写入数据。
图9系描述图7及图8所示之具体实施例之例示运作之流程图。更特别的是,系描述有用于建立并维持存储器控制器800及缓冲单元870间之通讯的初始化及配置程序。共同参阅图7至图9,且从图9之方块900开始,当该系统重新激活时,如于电源重新开启或其它系统重新激活情形期间,无串行信号路径可被考虑对准。如此,存储器控制器及缓冲单元870跳出重新激活而进入训练状态1,或是T1中。于该T1状态中,串行互连860系操作于400MT/s(方块905)。存储器控制器800使用推算(dead-reckoned)之0.5UI偏移(offset)以发送及接收数据(方块910)。举例来说,存储器控制器校正该偏移以成为不完全跨越给定位时间之约略点。存储器控制器800发送命令以引发缓冲单元870离开该T1状态而进入T2状态(方块915)。于该T2状态,缓冲单元870驱动预定图样如101010...之图样于该USD链路之所有位传巷(lane)上。举例来说,存储器控制器系使用该已知图样获得位锁定并校正该可变相位单元882(方块920)。
于一个具体实施例中,举例来说,存储器控制器800发送缓冲命令以引发缓冲单元870离开该T2状态,并藉由驱动所有8位时间之单元以进入T3状态(方块925)。于该T3状态,缓冲单元870经由该USD信号路径发送预定图样如101010...至存储器控制器800于偶数MCLK周期上(方块930)。缓冲单元870配置成回路返回(loop back)下行数据至上行USD信号路径于奇数MCLK周期上,且经由该DSD信号路径向下行方向发送不同于该101010...图样之图样(方块935)。存储器控制器800使用该不同之图样获得字节锁定。然后存储器控制器800校正该下行数据相位以容许缓冲单元870获得位锁定以及字节锁定(方块940)。当完成时,存储器控制器800驱动所有0,以使8位时间引发缓冲单元870离开该T3状态并进入正常运作模式(方块945),此时存储器控制器800可读取及写入数据至存储器单元110等。
一旦于该标准运作模式中,存储器控制器800可校正于每个缓冲区单元870内之除4MCLK除法器(divider)804以使所有缓冲单元870可使用相同之时钟边缘(相位)(方块950)。更特别的是,存储器控制器800可发送缓冲命令以藉由一个或多个位时间延迟(retard)该MCLK相位。
于正常运作期间内之预定时间间隔(例如:每100μs),存储器控制器800可使用周期性训练模式训练上行与下行信号路径(方块955)。举例来说,对于下行训练,存储器控制器800可使用预定训练相位偏移写入训练图样至写入FIFO 807(方块960)。存储器控制器800可于此时回读该训练图样,并计算来自该图样转换值之错误标记(sign)(方块965)。使用所计算之错误标记,存储器控制器800可校正该下行数据相位(方块970)。
对于上行训练,存储器控制器800可使用正常相位偏移写入训练图样至写入FIFO 807(方块975)。存储器控制器800可于此时回读所储存之训练图样,并使用另预定训练相位偏移计算来自该图样转换值之错误标记(方块980)。使用所计算之错误标记,存储器控制器800可校正该上行取样相位(方块985)。一旦该周期性训练完成了,缓冲单元870将如上于方块945所述放回至模式中。
参阅图10,显示包含有图7之存储器系统之计算机系统之一个具体实施例之方块图。须注意的是,对应显示于图7及图8中组件之组件,系以同一标号以求简单明了。计算机系统1100系包括处理节点1150,连接至存储器缓冲器870以及存储器单元110。
类似于图5中显示之计算机系统,于一个实作中,该缓冲单元870可为安置于主机板之集成电路芯片,且该存储器单元110可插入插座中。于另一实作中,该缓冲单元870可为安置于扩充子板之集成电路芯片,该扩充子板系可插入存储器扩充子卡插座中。于此种实作中,该扩充子板可具有插座以使该些存储器单元110以竖立布置方式插入其中。
在显示于图10中之具体实施例中,处理节点1150包括连接至存储器控制器800之处理器核心1101。须注意的是,于处理节点1150内可有任何数量之处理器核心1101。如上所述,配合图7及图8之描述,存储器控制器800信号系经由差分串行互连860连接至存储器缓冲器870,且经由并列互连865连接至存储器单元110。如所示,该串行互连860系包括单向下行信号路径、单向下行时钟信号路径、单向上行信号路径以及单向上行时钟信号路径。除此之外,于该存储器缓冲器870及存储器单元110间,该并列互连865系包括双向数据及数据选通信号路径。再者,于处理节点1150及存储器单元110间,并列互连865系包括单向ADDR/CMD及MCLK信号路径。须注意的是除了该ADDR/CMD信号外,仍有其它信号,如芯片选择(chip select)、库选择(bank select)以及其它包含于该并列互连865者,然而,为求简化,上述于此已省略不提。
参照图11,系显示计算机系统之另一具体实施例的方块图,该系统包括具有双模式存储器互连的存储器控制器。计算机系统1200系类似显示于图10中之计算机系统1100。举例来说,计算机系统1200亦包括连接至存储器缓冲器870及存储器单元110之处理节点1250。然而于图11中,由于存储器控制器1210系双模式存储器控制器,因而不同于图10中之存储器控制器800。更特别的是,如下更加详细描述者,存储器控制器1210可选择性地配置成与直接连至存储器单元110的并列互连865或是与用于和缓冲单元870一起使用之串行互连860来进行运作,如上所述配合图7及图8中之描述者。
类似上述之存储器控制器710,图11中之存储器控制器1210亦可选择性地以任何直接连至存储器模块的并列互连来运作,该模块系可兼容于多种存储器规格。举例来说,于不同之具体实施例中,存储器单元110可兼容于DDR2、DDR3或是其它所期望之规格。如此,存储器控制器1210可提供作为其并列互连,如所期望而可提供兼容于DDR2以及DDR3技术的并列互连865。除此之外,存储器控制器1210亦可有选择性地配置成运作于第二模式中,以提供给例如图7及图8中串行互连860之串行差分互连(serial differential interconnect),用以连接至缓冲单元870。
如图11所示,配置单元1220可决定并选择于存储器控制器1210内该I/O电路1211之配置。于一个具体实施例中,可使用处理节点1250之固线式外部针脚来选择该存储器控制器1210之模式。于此种具体实施例中,处理节点1250之一个或多个外部选择针脚可如所示被固线于电路接地端,或是固线于VDD或其它电压。配置单元1220可侦测选择针脚状态,因此配置存储器控制器1210之I/O电路1211。于另一具体实施例中,于系统起始(start-up)期间,执行BIOS 1205或是其它系统层级之软件时,可选择存储器控制器模式。
于所列举之具体实施例中,于第一模式中,存储器控制器1210系直接连接至存储器单元110。于此一配置中,I/O电路1211提供包括例如DQ、DQS、ADDR/CMD以及MCLK或其它信号路径的并列互连。于第二模式中,该I/O电路1211系变更为差分串行互连,其系连接至如图7、图8及图10所示之存储器缓冲单元870(虚线)。
为了达成模式切换,I/O电路1211可包括多个输出驱动器及输入缓冲器。某些驱动器与缓冲器可为差分电路,而某些可为单端型。于一个具体实施例中,视该模式而定,可改变处理节点与驱动器及缓冲器之各种I/O针脚间的连接。因此,于一个具体实施例中,部分I/O电路1211可运作如可程序化互连。
举例来说,如图11所示,该DSD信号路径可于单向差分DDS信号路径及双向单端DQ信号路径之间依照所需改变。除此之外,该USD信号路径可于单向UDS信号路径、双向单端ADDR/CMD信号路径及/或双向差分DQS信号路径之间改变。再者,该DSCLK信号路径亦可于差分单向时钟信号路径间改变成一个或多个单端型MCLK信号路径。须注意的是,其它针脚组合系可能考量的。
虽然上述之该些具体实施例已描述得相当详细,然而一旦完全体会上述揭露,对于此领域熟悉该项技艺者而言,许多变更及修改将显而易见。所附之申请专利范围系意欲涵盖所有此等变更及修改者。
产业利用性
本发明一般可应用于微处理器。

Claims (25)

1.一种存储器控制器,包括:
输入/输出电路,其包含多个输入缓冲器及多个输出驱动器,其中该输入/输出电路配置成取决于模式选择信号的状态而运作于第一模式及第二模式的其中一个;
其中,在运作于该第一模式期间,该输入/输出电路配置成提供用于连接至一个或多个存储器模块的并列互连;
其中,在运作于该第二模式期间,该输入/输出电路配置成提供用于连接至一个或多个缓冲单元的每个的个别串行互连,各该缓冲单元配置成缓冲正从该一个或多个存储器模块读取或正写入该一个或多个存储器模块中的存储器数据;以及
其中,每个个别串行互连包含差分命令信号路径,该差分命令信号路径配置成传递命令信息自该存储器控制器至该一个或多个缓冲单元中的给定缓冲单元。
2.如权利要求1所述的存储器控制器,其中,每个个别串行互连包含多个差分双向数据信号路径,各该差分双向数据信号路径配置成传递数据于该一个或多个缓冲单元中的给定缓冲单元与该存储器控制器之间。
3.如权利要求1所述的存储器控制器,还包括配置单元,该配置单元连接至该输入/输出电路以及配置成侦测将选择该第一及该第二模式中的任何一个并且提供该模式选择信号给该输入/输出电路。
4.如权利要求1所述的存储器控制器,其中,每个个别串行互连以第一数据转移速率运作,而该并列互连以第二数据转移速率运作,其中,该第一数据转移速率快于第二转移速率。
5.如权利要求4所述的存储器控制器,其中,每个个别串行互连包含下行单向差分时钟信号路径,该下行单向差分时钟信号路径配置成传递串行时钟信号自该存储器控制器至该一个或多个缓冲单元中的给定缓冲单元,其中,各该下行单向差分时钟信号路径以该第一数据转移速率运作。
6.如权利要求4所述的存储器控制器,其中,该并列互连包含一个或多个时钟信号路径,各该时钟信号路径配置成传递第二时钟信号自该存储器控制器至该一个或多个存储器模块,其中,该第二时钟信号以该第二数据转移速率运作。
7.如权利要求1所述的存储器控制器,其中,该并列互连包含布置的多个双向数据信号路径,各该双向数据信号路径配置成传递数据于该存储器控制器与该一个或多个存储器模块中的特殊模块之间。
8.如权利要求1所述的存储器控制器,其中,该并列互连包含多个双向数据选通信号路径,该多个双向数据选通信号路径配置成传递数据选通于该存储器控制器与该一个或多个存储器模块中的特殊模块之间。
9.如权利要求1所述的存储器控制器,其中,该并列互连包含多个单向地址及命令信号路径,该多个单向地址及命令信号路径配置成传递地址及命令信息自该存储器控制器至该一个或多个存储器模块。
10.如权利要求1所述的存储器控制器,其中,每个该个别串行互连配置成经由一个或多个单向循环冗余码(Cyclic Redundancy Code,CRC)信号路径,传递来自该一个或多个缓冲单元循环冗余码(CRC)信息,其中,该循环冗余码信息对应于该存储器控制器经由该个别串行互连发送的该数据。
11.如权利要求1所述的存储器控制器,其中,每个个别串行互连包含多个下行差分单向信号路径,各该下行差分单向信号路径配置成传递数据、地址以及命令信息自该存储器控制器至该一个或多个缓冲单元。
12.如权利要求11所述的存储器控制器,其中,每个个别串行互连包含下行单向差分时钟信号路径,该下行单向差分时钟信号路径配置成传递串行时钟信号自该存储器控制器至该一个或多个缓冲单元的每个。
13.如权利要求1所述的存储器控制器,其中,每个个别串行互连包含多个上行差分单向信号路径,各该上行差分单向信号路径配置成传递数据及循环冗余码(CRC)信息自该一个或多个缓冲单元的其中一个至该存储器控制器。
14.如权利要求1所述的存储器控制器,其中,每个个别串行互连包含上行单向差分时钟信号路径,该上行单向差分时钟信号路径配置成传递串行时钟信号自该一个或多个缓冲单元的其中一个至该存储器控制器。
15.一种计算机系统,包括:
处理器;以及
连接至该处理器的存储器控制器,其中,该存储器控制器包含:
输入/输出电路,其包含多个输入缓冲器及多个输出驱动器,其中,该输入/输出电路配置成取决于模式选择信号的状态而运作于第一模式及第二模式的其中一个;
其中,在运作于该第一模式期间,该输入/输出电路配置成提供用于连接至一个或多个存储器模块的并列互连;
其中,在运作于该第二模式期间,该输入/输出电路配置成提供用于连接至一个或多个缓冲单元的差分串行互连,各该缓冲单元配置成缓冲正从该一个或多个存储器模块读取或正写入该一个或多个存储器模块中的存储器数据;以及
其中,每个个别串行互连包含差分命令信号路径,该差分命令信号路径配置成传递命令信息自该存储器控制器至该一个或多个缓冲单元中的给定缓冲单元。
16.如权利要求15所述的计算机系统,其中,每个个别串行互连包含多个差分双向数据信号路径,各该差分双向数据信号路径配置成传递数据于该一个或多个缓冲单元中的给定缓冲单元与该存储器控制器之间。
17.如权利要求15所述的计算机系统,还包括配置单元,该配置单元连接至该输入/输出电路以及配置成侦测将选择该第一及该第二模式中的任何一个并且提供该模式选择信号给该输入/输出电路。
18.如权利要求15所述的计算机系统,其中,每个个别串行互连以第一数据转移速率运作,而该并列互连以第二数据转移速率运作,其中,该第一数据转移速率快于第二转移速率。
19.如权利要求18所述的计算机系统,其中,每个个别串行互连包含下行单向差分时钟信号路径,该下行单向差分时钟信号路径配置成传递串行时钟信号自该存储器控制器至该一个或多个缓冲单元中的给定缓冲单元,其中,各该下行单向差分时钟信号路径以该第一数据转移速率运作。
20.如权利要求18所述的计算机系统,其中,该并列互连包含一个或多个时钟信号路径,各该时钟信号路径配置成传递第二时钟信号自该存储器控制器至该一个或多个存储器模块,其中,该第二时钟信号以该第二数据转移速率运作。
21.如权利要求15所述的计算机系统,其中,该并列互连包含:
布置的多个双向数据信号路径,各该双向数据信号路径配置成传递数据于该存储器控制器与该一个或多个存储器模块中的特殊模块之间;
多个双向数据选通信号路径,其配置成传递数据选通于该存储器控制器与该一个或多个存储器模块中的特殊模块之间;以及
多个单向地址及命令信号路径,其配置成传递地址及命令信息自该存储器控制器至该一个或多个存储器模块。
22.如权利要求15所述的计算机系统,其中,每个个别串行互连包含多个下行差分单向信号路径,各该下行差分单向信号路径配置成传递数据及命令信息自该存储器控制器至该一个或多个缓冲单元。
23.如权利要求22所述的计算机系统,其中,每个个别串行互连包含下行单向差分时钟信号路径,该下行单向差分时钟信号路径配置成传递串行时钟信号自该存储器控制器至该一个或多个缓冲单元的每个。
24.如权利要求15所述的计算机系统,其中,每个个别串行互连包含多个上行差分单向信号路径,各该上行差分单向信号路径配置成传递数据及循环冗余码(CRC)信息自该一个或多个缓冲单元的其中一个至该存储器控制器。
25.如权利要求15所述的计算机系统,其中,每个个别串行互连包含上行单向差分时钟信号路径,该上行单向差分时钟信号路径配置成传递串行时钟信号自该一个或多个缓冲单元的其中一个至该存储器控制器。
CN2007800407571A 2006-10-31 2007-10-29 包含双模式存储器互连的存储器控制器 Active CN101583933B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/590,286 US7694031B2 (en) 2006-10-31 2006-10-31 Memory controller including a dual-mode memory interconnect
US11/590,286 2006-10-31
PCT/US2007/022814 WO2008054696A1 (en) 2006-10-31 2007-10-29 Memory controller including a dual- mode memory interconnect

Publications (2)

Publication Number Publication Date
CN101583933A CN101583933A (zh) 2009-11-18
CN101583933B true CN101583933B (zh) 2012-09-05

Family

ID=39175571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800407571A Active CN101583933B (zh) 2006-10-31 2007-10-29 包含双模式存储器互连的存储器控制器

Country Status (8)

Country Link
US (2) US7694031B2 (zh)
JP (1) JP2010508600A (zh)
KR (1) KR20090077015A (zh)
CN (1) CN101583933B (zh)
DE (1) DE112007002619B4 (zh)
GB (1) GB2458040A (zh)
TW (1) TWI489456B (zh)
WO (1) WO2008054696A1 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080189457A1 (en) * 2006-12-06 2008-08-07 International Business Machines Corporation Multimodal memory controllers
US20080140907A1 (en) * 2006-12-06 2008-06-12 Dreps Daniel M Multimodal Memory Controllers
US20100180143A1 (en) * 2007-04-19 2010-07-15 Rambus Inc. Techniques for improved timing control of memory devices
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
KR100942953B1 (ko) * 2008-06-30 2010-02-17 주식회사 하이닉스반도체 데이터 전달 회로 및 그를 포함하는 반도체 메모리 장치
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8289760B2 (en) * 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
US8756486B2 (en) * 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
US8489837B1 (en) 2009-06-12 2013-07-16 Netlist, Inc. Systems and methods for handshaking with a memory module
US9128632B2 (en) * 2009-07-16 2015-09-08 Netlist, Inc. Memory module with distributed data buffers and method of operation
US8533538B2 (en) * 2010-06-28 2013-09-10 Intel Corporation Method and apparatus for training a memory signal via an error signal of a memory
KR101728067B1 (ko) * 2010-09-03 2017-04-18 삼성전자 주식회사 반도체 메모리 장치
US8140778B1 (en) * 2010-09-10 2012-03-20 Spansion Llc Apparatus and method for data capture using a read preamble
US9355051B2 (en) 2010-09-10 2016-05-31 Cypress Semiconductor Corporation Apparatus, method, and manufacture for using a read preamble to optimize data capture
US8990605B2 (en) 2010-09-10 2015-03-24 Spansion Llc Apparatus and method for read preamble disable
US9223726B2 (en) 2010-09-10 2015-12-29 Cypress Semiconductor Corporation Apparatus and method for programmable read preamble with training pattern
US8583987B2 (en) * 2010-11-16 2013-11-12 Micron Technology, Inc. Method and apparatus to perform concurrent read and write memory operations
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
TWI464597B (zh) * 2012-07-19 2014-12-11 Wistron Corp 改善資料傳輸之方法及其相關電腦系統
US20140359181A1 (en) * 2013-05-31 2014-12-04 Hewlett-Packard Development Company, L.P. Delaying Bus Activity To Accomodate Memory Device Processing Time
US10324841B2 (en) 2013-07-27 2019-06-18 Netlist, Inc. Memory module with local synchronization
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories
US9218575B2 (en) * 2013-09-04 2015-12-22 Intel Corporation Periodic training for unmatched signal receiver
TWI533608B (zh) * 2014-06-30 2016-05-11 友達光電股份有限公司 資料接收器及資料接收方法
US9852811B2 (en) * 2014-11-13 2017-12-26 Macronix International Co., Ltd. Device and method for detecting controller signal errors in flash memory
US20160371211A1 (en) * 2015-06-16 2016-12-22 Apple Inc. Bus-bit-order ascertainment
US10692555B2 (en) 2016-06-29 2020-06-23 Samsung Electronics Co., Ltd. Semiconductor memory devices enabling read strobe mode and related methods of operating semiconductor memory devices
US10186309B2 (en) 2016-06-29 2019-01-22 Samsung Electronics Co., Ltd. Methods of operating semiconductor memory devices and semiconductor memory devices
KR102641515B1 (ko) 2016-09-19 2024-02-28 삼성전자주식회사 메모리 장치 및 그것의 클록 분배 방법
US10795592B2 (en) * 2017-05-05 2020-10-06 Dell Products, L.P. System and method for setting communication channel equalization of a communication channel between a processing unit and a memory
KR102392055B1 (ko) * 2017-08-09 2022-04-28 삼성전자주식회사 리트레이닝 동작의 수행 여부를 효율적으로 결정하기 위한 메모리 장치 및 이를 포함하는 메모리 시스템
US11604714B2 (en) 2017-08-09 2023-03-14 Samsung Electronics Co, Ltd. Memory device for efficiently determining whether to perform re-training operation and memory system including the same
KR102438991B1 (ko) 2017-11-28 2022-09-02 삼성전자주식회사 메모리 장치 및 그것의 동작 방법
US10884451B2 (en) * 2018-05-01 2021-01-05 DeGirum Corporation System and methods for completing a cascaded clock ring bus
US10418125B1 (en) * 2018-07-19 2019-09-17 Marvell Semiconductor Write and read common leveling for 4-bit wide DRAMs
US11734174B2 (en) * 2019-09-19 2023-08-22 Intel Corporation Low overhead, high bandwidth re-configurable interconnect apparatus and method
US11392299B2 (en) * 2019-12-20 2022-07-19 Micron Technology, Inc. Multi-purpose signaling for a memory system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304930B1 (en) * 1998-01-20 2001-10-16 Matsushita Electric Industrial Co., Ltd. Signal transmission system having multiple transmission modes
CN1573705A (zh) * 2003-05-28 2005-02-02 国际商业机器公司 存储控制器及数据存储方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6510487B1 (en) * 1996-01-24 2003-01-21 Cypress Semiconductor Corp. Design architecture for a parallel and serial programming interface
CA2302466A1 (en) 1997-07-31 1999-02-11 Stanford Syncom Inc. Means and method for a synchronous network communications system
US20040236877A1 (en) 1997-12-17 2004-11-25 Lee A. Burton Switch/network adapter port incorporating shared memory resources selectively accessible by a direct execution logic element and one or more dense logic devices in a fully buffered dual in-line memory module format (FB-DIMM)
JP3315375B2 (ja) * 1998-01-20 2002-08-19 松下電器産業株式会社 信号伝送システム
US6052073A (en) * 1998-03-23 2000-04-18 Pmc-Sierra Ltd. Serial to parallel converter enabled by multiplexed flip-flop counters
JPH11306074A (ja) * 1998-04-23 1999-11-05 Sharp Corp 情報処理装置
JP2000207350A (ja) * 1999-01-19 2000-07-28 Asahi Chem Ind Co Ltd デ―タ転送装置及びデ―タ転送方法
US6502161B1 (en) * 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem
US7047330B2 (en) * 2001-03-06 2006-05-16 Ati Technologies, Inc. System for digital stream transmission and method thereof
US6845420B2 (en) * 2001-10-11 2005-01-18 International Business Machines Corporation System for supporting both serial and parallel storage devices on a connector
US20040098545A1 (en) 2002-11-15 2004-05-20 Pline Steven L. Transferring data in selectable transfer modes
JP2004199309A (ja) * 2002-12-18 2004-07-15 Renesas Technology Corp マイクロコントローラ、マイクロプロセッサおよび不揮発性半導体メモリ装置
US6826663B2 (en) 2003-01-13 2004-11-30 Rambus Inc. Coded write masking
US20050166006A1 (en) 2003-05-13 2005-07-28 Advanced Micro Devices, Inc. System including a host connected serially in a chain to one or more memory modules that include a cache
JP2005346123A (ja) * 2004-05-31 2005-12-15 Toshiba Corp パラレルインタフェースコネクタを備えたストレージ装置及び同装置に適用される変換コネクタ
KR100643605B1 (ko) 2004-08-16 2006-11-10 삼성전자주식회사 적응형 프리 엠퍼시스 장치, 데이터 통신용 송신기,데이터 통신용 송수신 장치 및 적응형 프리 엠퍼시스 방법
US20060195631A1 (en) 2005-01-31 2006-08-31 Ramasubramanian Rajamani Memory buffers for merging local data from memory modules
US7577039B2 (en) 2005-11-16 2009-08-18 Montage Technology Group, Ltd. Memory interface to bridge memory buses
US7368950B2 (en) 2005-11-16 2008-05-06 Montage Technology Group Limited High speed transceiver with low power consumption
US7558124B2 (en) 2005-11-16 2009-07-07 Montage Technology Group, Ltd Memory interface to bridge memory buses

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304930B1 (en) * 1998-01-20 2001-10-16 Matsushita Electric Industrial Co., Ltd. Signal transmission system having multiple transmission modes
CN1573705A (zh) * 2003-05-28 2005-02-02 国际商业机器公司 存储控制器及数据存储方法

Also Published As

Publication number Publication date
GB0908637D0 (en) 2009-06-24
GB2458040A (en) 2009-09-09
CN101583933A (zh) 2009-11-18
US8019907B2 (en) 2011-09-13
DE112007002619T5 (de) 2009-09-10
KR20090077015A (ko) 2009-07-13
JP2010508600A (ja) 2010-03-18
WO2008054696A1 (en) 2008-05-08
DE112007002619B4 (de) 2022-08-04
US20080147897A1 (en) 2008-06-19
US20100228891A1 (en) 2010-09-09
TWI489456B (zh) 2015-06-21
TW200832406A (en) 2008-08-01
US7694031B2 (en) 2010-04-06

Similar Documents

Publication Publication Date Title
CN101583933B (zh) 包含双模式存储器互连的存储器控制器
CN101583934B (zh) 包含高速串联缓冲器的存储器系统
US9755821B2 (en) Device including single wire interface and data processing system including the same
JP4331756B2 (ja) 一部のフレームについての早期crc供給
US8060799B2 (en) Hub, memory module, memory system and methods for reading and writing to the same
US7979616B2 (en) System and method for providing a configurable command sequence for a memory interface device
EP1628225A2 (en) Bus speed multiplier in a memory subsystem
CN110428855B (zh) 具有本地分别同步的内存模块
US20050262289A1 (en) Semiconductor integrated circuit device, data processing system and memory system
US20070276976A1 (en) Systems and methods for providing distributed technology independent memory controllers
CN105612580A (zh) 使用标准控制器部件的大容量存储系统
CN102981776A (zh) 双倍数据率虚拟静态随机存取存储器及其控制器、存取与操作方法、写入与读取方法
CN109976665A (zh) 存储器件及包括该存储器件的存储模块
JP2007511012A (ja) データ経路とメモリ装置との間でのデータ蓄積
WO2005050465A2 (en) Lane testing with variable mapping
US7861140B2 (en) Memory system including asymmetric high-speed differential memory interconnect
CN100538675C (zh) 中心单元、存储器模块、存储器系统和对其读和写的方法
CN101548253B (zh) 用于控制高速双向通讯之系统及方法
CN101183557A (zh) 控制信号训练
CN101158932A (zh) 通过i2c接口访问现场可编程门阵列内部存储器的方法
US20140244868A1 (en) Integrated circuit devices, systems and methods having automatic configurable mapping of input and/or output data connections
JP2005353060A (ja) ハブ、メモリモジュール、及びメモリシステムとこれを通じた読み込み方法及び書き込み方法
US20070005834A1 (en) Memory chips with buffer circuitry

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: GLOBALFOUNDRIES COMPANY

Free format text: FORMER OWNER: ADVANCED MICRO DEVICES INC.

Effective date: 20100715

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: CALIFORNIA STATE, THE USA TO: GRAND CAYMAN, CAYMAN ISLANDS(BRITISH OVERSEAS TERRITORY)

TA01 Transfer of patent application right

Effective date of registration: 20100715

Address after: Grand Cayman, Cayman Islands

Applicant after: Globalfoundries Semiconductor Inc.

Address before: American California

Applicant before: Advanced Micro Devices Inc.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201218

Address after: California, USA

Patentee after: Lattice chip (USA) integrated circuit technology Co.,Ltd.

Address before: Greater Cayman Islands, British Cayman Islands

Patentee before: GLOBALFOUNDRIES Inc.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210318

Address after: No.1, Duhang 1st Road, Hsinchu City, Hsinchu Science Park, Taiwan, China

Patentee after: MEDIATEK Inc.

Address before: California, USA

Patentee before: Lattice chip (USA) integrated circuit technology Co.,Ltd.