CN1288843C - 大范围负载信号的通用阻抗控制 - Google Patents

大范围负载信号的通用阻抗控制 Download PDF

Info

Publication number
CN1288843C
CN1288843C CNB018196276A CN01819627A CN1288843C CN 1288843 C CN1288843 C CN 1288843C CN B018196276 A CNB018196276 A CN B018196276A CN 01819627 A CN01819627 A CN 01819627A CN 1288843 C CN1288843 C CN 1288843C
Authority
CN
China
Prior art keywords
code
buffer
multiplexer
compensation
impedance
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
Application number
CNB018196276A
Other languages
English (en)
Other versions
CN1478324A (zh
Inventor
A·沃尔克
J·-T·苏
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1478324A publication Critical patent/CN1478324A/zh
Application granted granted Critical
Publication of CN1288843C publication Critical patent/CN1288843C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0005Modifications of input or output impedance
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Logic Circuits (AREA)
  • Networks Using Active Elements (AREA)

Abstract

在本发明的一个实施例中,补偿驱动电路包括一个代码产生器、一个启用电路和一个驱动器。代码产生器按照选择信号根据一个补偿代码产生一个驱动代码。驱动代码与一个具有一个阻抗的缓冲器相应。启用电路启用驱动代码。驱动器按照驱动代码控制缓冲器的阻抗。

Description

大范围负载信号的通用阻抗控制
技术领域
本发明涉及数字电路。具体地说,本发明与阻抗控制有关。
背景技术
在高速接口中用阻抗受控的缓冲器来改善信号质量。输入/输出(I/O)缓冲器的阻抗随一些因素改变,这些因素包括工艺类型、结温、芯片温度分布、噪声、电源波动、器件老化、预热差异等。在一个含有一些I/O的电路工作时,各个1/0驱动器的阻抗的改变会引起不希望有的影响,例如出现噪声、反射、串扰、振铃、过调和欠调。I/O缓冲器的阻抗可以用模拟或数字技术控制。数字控制是优选的方法,用补偿代码来补偿I/O驱动器焊盘(pad)处的任何阻抗失配。一种方法称为电阻补偿(RCOMP),用一个外部基准电阻设置缓冲器的阻抗。为了保持合理的平衡阻抗,补偿代码要周期性地重新计算和更新。
更新补偿代码的当前技术是静态更新,补偿代码以固定的预定时间表发送给I/O驱动器。一个途径是用一个专用保留周期(SRC)进行更新。在指定时间,启动SRC,停止在总线上传输数据,使I/O驱动器三态化或进入空闲状态。然后,将更新的补偿代码发送给I/O驱动器。这种方法有一些缺点。第一,要暂时中止数据传输,这导致传输率降低。第二,需要专用电路启动SRC。第三,器件的内核必须有某种传送机制,在代码更新前将待决事务传入队列。这种方法因此导致电路复杂和性能恶化。
发明内容
特别地,本发明提供一种装置,所述装置包括:定标器,用来按照一个选择信号根据一个补偿代码产生一个驱动代码,所述驱动代码与一个缓冲器的阻抗相对应;启用电路,耦合到所述定标器,用来启用所述驱动代码;以及驱动器,耦合到所述启用电路,用来按照所述驱动代码控制所述缓冲器的阻抗。
本发明还提供一种方法,所述方法包括:按照一个选择信号根据一个补偿代码产生一个驱动代码,所述驱动代码与一个缓冲器的阻抗相对应;启用所述驱动代码;以及按照所述驱动代码,控制所述缓冲器的阻抗。
本发明又提供一种系统,所述系统包括:补偿控制器,用来产生补偿代码;缓冲器,具有与负载匹配的阻抗;以及补偿驱动电路,耦合到所述补偿控制器和所述缓冲器,用来驱动所述缓冲器,所述补偿驱动电路包括:定标器,用来按照一个选择信号根据所述补偿代码产生一个驱动代码,所述驱动代码与所述缓冲器的阻抗相对应;启用电路,耦合到所述定标器,用来启用所述驱动代码;和驱动器,耦合到所述启用电路,用来按照所述驱动代码控制所述缓冲器的阻抗。
附图说明
从以下结合附图对本发明所作的详细说明中可以清楚地看到本发明的特征和优点。在这些附图中:
图1为例示可以实现本发明一个实施例的系统的方框图;
图2为例示按照本发明一个实施例设计的阻抗控制器的方框图;
图3为例示按照本发明一个实施例设计的图2中的补偿控制器的方框图;
图4A为例示按照本发明一个实施例设计的图2中的补偿驱动电路器的方框图;
图4B为例示按照本发明一个实施例设计的图2中的接口I/O缓冲器的方框图;
图5为例示按照本发明一个实施例设计的控制阻抗的过程的流程图;
图6为例示按照本发明一个实施例设计的具有一个采用多个RCOMP缓冲器和焊盘的分布式RCOMP的器件的示意图;
图7为例示按照本发明一个实施例设计的由多个RCOMP缓冲器和焊盘共享的补偿控制器的方框图;
图8为例示按照本发明一个实施例设计的具有一个采用标准缓冲器和焊盘的分布式RCOMP的器件的示意图。
具体实施方式
在以下说明中,为了解说,给出了许多细节,以便对本发明有全面理解。然而,对于熟悉该技术领域的人员来说显而易见实现本发明并不一定需要这些具体细节。在其他情况下,众所周知的电结构和电路以方框图形式示出,以免使本发明反而模糊不清。
图1为例示可以实现本发明一个实施例的系统100的方框图。系统100包括处理器110、处理器总线115、存储控制中枢(MCH)120、系统存储器130、图形/视频控制器140、输入/输出(I/O)控制中枢(ICH)150、传统的I/O控制器160、通信接口165、媒体控制器170、网络控制器175、固件中枢180和海量存储控制器185。
处理器110表示一个具有任何类型的体系结构的中央处理单元,例如复杂指令系统计算机(CISC)、精简指令系统计算机(RISC)、超长指令字(VLIW)或混合体系结构。处理器110通过处理器总线115与存储控制器中枢120接口。处理器总线115可以支持单处理器或多处理器。
存储控制中枢120和I/O控制中枢150通常形成一个包括一些使处理器110可以接入系统存储器130和外围设备的接口电路的集成芯片组。存储控制中枢120提供处理器110、系统存储器130和系统100内其他组件之间的接口。MCH 120可以含有一个或多个控制每个主要接口处的缓冲器的阻抗的阻抗控制器125
图形/视频控制器140提供对图形和/或视频信息的控制。系统存储器130表示一个或多个存储信息的机构。例如,系统存储器130可以包括非易失或易失存储器。这些存储器的例子有闪速存储器、只读存储器(ROM)和随机存取存储器(RAM)。系统存储器130可以含有一个程序131和其他程序以及数据138。当然,系统存储器130含有对于理解本发明来说并非必需的其他软件(未示出)。
I/O控制中枢150提供对I/O或外围设备的接口。I/O控制中枢150包括一个阻抗控制器155。阻抗控制器155补偿总线驱动器处的阻抗,这些总线驱动器驱动诸如外围部件互连(PCI)总线之类的与存储控制中枢120、外围或I/O设备连接的总线。传统的I/O控制器160可以包括诸如并行端口、直接存储器访问(DMA)控制器、定时器、视频控制器、键盘接口、输入装置(例如,鼠标、跟踪球)接口之类的I/O设备。通信接口165提供对诸如串行通信接口、无线设备、音频编码解码器、调制解调编码解码器和通用串行总线(USB)设备之类的通信控制。媒体控制器170提供对诸如音频和视频设备之类的媒体设备的控制和接口。网络控制器175提供对诸如互联网、局域网(LAN)和广域网(WAN)之类的网络的接口。互联网提供对在线业务供应商、浏览器和其他网络信道的接入。固件中枢180可以含有诸如基本输入输出系统(BIOS)、设备驱动器之类的固件。海量存储控制器185提供对诸如CD-ROM、软盘和硬盘之类的海量存储器的控制和接口。海量存储装置185提供对含有执行指定功能的程序代码和/或数据的计算机可读媒体的接入。
阻抗控制器125/155也可以用于系统100内的其他设备或部件。为了清晰起见,标注数码125用来指系统100内或任何其他数字电路内所用的任何阻抗控制器。阻抗控制器125的其他实施例可以用于微控制器、嵌入式处理器、图形设备、数字信号处理器(DSP)和其他类型的逻辑电路。
补偿控制器产生一些供基准RCOMP驱动器针对一个已知的负载使用的代码。这些代码保持到主接口驱动器可以用新的代码更新。一组锁存器设置在补偿代码输出端与接口缓冲器的阻抗控制输入端之间。诸如AGP之类的接口对于需校准的上拉和下拉需要一个基准电阻。然而,通常我们只针对一个外部电阻校准上拉或者下拉。
例如,基准电阻接到Vcc上,下拉相对它进行校准。一个现已校准的下拉的准确拷贝用作校准上拉的基准。这是用另一个RCOMP缓冲器执行的,但这个缓冲器只是内部连接,而没有焊盘或外部引线连接。当然,可以首先相对一个接到地线上的基准电阻校准上拉,而用一个拷贝来校准下拉。
DDR采用中心抽头的端接(center-tapped termination)(CTT)方式,允许上拉和下拉都相对同样的基准电阻进行校准。这是在这里提出的大多数RCOMP方式的基础。如果RCOMP接到一条独立的引线上,就可以隐藏校准循环,运行一个完整的校准循环。然而也可以利用实际的数据或地址引线运行校准循环,只要一个特定的接收器包括在用来校准的缓冲器内。然而,在这种情况下,每次更新不能运行一个完整的循环,因为这样太长。但是很少必需这样,缓冲器强度在一段短的时间内漂移非常小,只需要每次更新将代码加1或减1的增量更新。这可以迅速完成,对系统性能(例如在刷新循环期间的系统性能)影响很小,甚至没有影响。
图2为例示按照本发明一个实施例设计的阻抗控制器125的方框图。阻抗控制器125包括一个补偿控制器210、一个补偿驱动电路220、一个补偿焊盘225、一个锁存器235、N个定标器(scaler)2701至270N、N个接口驱动电路2801至280N和N个接口焊盘2901至290N。阻抗控制器125与电路板上的外电路对接。电路板接口处的端接负载260包括串联阻抗240和电阻R1 260和R2 251。补偿驱动电路220在焊盘225上驱动基准电阻250,将反馈信息提供给补偿控制器210。
补偿控制器210与时钟信号CLK同步地用反馈信息更新补偿代码。补偿控制器210产生补偿代码215提供给补偿驱动电路220。接口I/O缓冲器230的阻抗(强度)用来自补偿控制器210的补偿代码215设定。代码215在补偿控制器210处于一个重新校准循环期间保持在锁存器235内。缓冲器的阻抗在锁存器235开放时更新。锁存器235在补偿代码215的改变不会影响接口性能或功能时开放。N个强度定标器2701至270N分别用来改变各个按照需要加有负载的在相应接口焊盘2901至290N处的缓冲器组的阻抗。接口驱动电路2801至280N包括驱动总线处相应负载的电路。补偿控制器210产生一些控制信号,给定标器2701至270N和接口驱动电路2801至280N。这些控制信号可以包括选择信号和启用信号(例如,PINTEN和NINTEN),如在图4B中所示。DDR DRAM可以具有显著不同的负载条件,这取决于不同的双列直插存储模块(DIMM)/SDRAM配置。例如,对于逐个时钟(clock-per-clock)(CPC)地址信号,负载可以高达112pF(=3.5pF/引线×8引线/侧×2侧/DIMM×2DIMM),也可以低到20pF(=5pF/引线×2引线/侧×2侧/DIMM)。重负载的信号包括地址信号、行地址选通信号(RAS_#)和列地址选通信号(CAS#)等。轻负载的信号包括数据(DQ)和数据选通(DQS)信号等。对于轻负载的信号,串联阻抗240和电阻250的值通常分别为60欧姆和60欧姆。对于重负载的信号,串联阻抗240和电阻250的值通常分别为30欧姆和30欧姆。
补偿驱动电路220与N个定标器2701至270N一起提供了一个通用机制,控制对于轻负载和重负载的信号的阻抗而不需要有独立的控制和驱动电路。然而,缓冲器是可标定的,以提供适当值。
图3为例示按照本发明一个实施例设计的图2中的补偿控制器210的方框图。补偿控制器210包括一个状态机310、两个可逆计数器320和330、一个上比较器(UPCOMP)340、一个下比较器(DNCOMP)360、两个寄存器350和370。
状态机310用CLK信号进行操作,产生控制信号,提供给可逆计数器320和330和补偿驱动电路220(图2)。控制信号包括p计数器启用(PCNTEN)信号、p计数器向上/向下(PCNTUD)信号、p补偿启用(PCOMPEN)信号、n计数器启用(NCNTEN)信号、n计数器向上/向下(NCNTUD)信号和n补偿启用(NCOMPEN)信号。状态机310接收分别来自寄存器350和370的锁存器向上(LUP)和锁存器向下(LDN)信号。
可逆计数器320和330进行向上/向下计数,产生相应的补偿代码PCOMP和NCOMP,给补偿驱动电路220。典型的驱动电路包括若干个上拉和下拉器件,如图4A所示。在一个实施例中,上拉器件是一个p沟道金属氧化物半导体(PMOS),称为p器件,而下拉器件是一个n沟道金属氧化物半导体(NMOS),称为n器件。一个典型的驱动器具有若干上拉支路和下拉分支。PCOMP和NCOMP代码用于驱动总线的驱动电路的p器件和n器件。比较器340和360分别将总线在焊盘225处的电压电平与基准电压VUP和VDN相比较。VUP和VDN基准电压分别为所要求的缓冲器输出上下摆动电平。寄存器350和370锁存或按时钟记录比较结果,以LUP和LDN信号形式为状态机310提供反馈信息。
随后,启用p器件和n器件。在PCOMPEN信号启用p器件的同时,PCNTEN信号启用计数器320,用PCNTUP信号进行向上或向下计数,这取决于焊盘225处的电压是高于还是低于VUP基准电压。类似,在NCOMEN信号启用n器件的同时,NCNTPEN信号启用计数器330,用NCNTUP信号进行向上或向下计数,这取决于焊盘225的电压是高于还是低于VDN基准电压。因此产生PCOMP和NCOMP,控制对驱动电路的p器件和n器件的调整。例如,随着启用更多的p器件分支,可以传导更强的电流,从而减小电阻。
通用补偿
图4A为例示按照本发明一个实施例设计的图2中的补偿驱动电路220的方框图。补偿驱动电路220包括启用电路420和驱动器430。
启用电路420耦合到补偿控制器210,以启用补偿代码PCOMP和NCOMP 215。启用电路420产生分别与p和n补偿代码PCOMP和NCOMP相对应的p代码(PCODE)和n代码(NCODE)。PCODE和NCODE分别用来驱动驱动器430内的p器件和n器件。PCODE和NCODE被互斥启用。也就是说,在启用PCODE时,禁用NCODE,断开驱动器430内的相应n器件,反之亦然。启用电路420包括N个启用门4251至425N,用来自状态机310(图3)的PCOMPEN和NCOMPEN选通PCOMP和NCOMP。在一个实施例中,启用门4251至425N各包括一个启用/禁用PCODE的OR门和一个启用/禁用NCODE的AND门。例如,在启用p器件时,PCOMPEN信号为低电平,NCOMPEN信号也为低电平。PCOMPEN低电平使DRVCODE可以通过OR门成为PCODE,而NCOMPEN低电平通过AND门产生全零的NCODE,从而断开这些n器件。类似,在启用n器件时,PCOMPEN和NCOMPBN信号都为高电平。PCOMPEN高电平通过OR门产生全1,断开所有的p器件,而NCOMPEN高电平使DRVCODE可以通过,通过AND门成为NCODE。
驱动器430耦合到启用电路420,以便按照PCOMP和NCOMP控制缓冲器230(图2)的阻抗。驱动器430包括接收p代码的多个p器件4341至434N。p器件4341至434N在p代码启用时驱动缓冲器230。驱动器430还包括接收n代码的多个n器件4321至432N。n器件4321至432N在n代码启用时驱动缓冲器230。
图4B为例示图2中的定标器270和接口驱动电路280的方框图。定标器270包括一个p多路复用器阵列410和一个n多路复用器阵列418。阵列410和418基本相同,但p多路复用器阵列410接收PCOMP代码而n多路复用器阵列418接收NCOMP代码。下面,为了简化讨论,将就阵列410进行详细说明。阵列418情况类似。接口驱动电路280包括一个启用电路282和一个接口驱动器284。启用电路282和接口驱动器284分别与图4A中的启用电路420和驱动器430类似。
阵列410根据从接收补偿控制器210(图3)的按照选择信号锁存在锁存器235(图2)内的补偿代码PCOMP产生驱动代码DRVCODEP。驱动代码DRVCODEP与焊盘290处的缓冲器相对应,这个缓冲器具有一个对于重负载或轻负载的信号匹配或定标的阻抗。阵列410用于重负载和轻负载两者的信号。阵列410是一个定标器,按照选择信号对补偿代码PCOMP定标。经定标的补偿代码对应于驱动代码DRVCODEP。驱动代码DRVCODEP可以是缓冲器的两个分别与对于重负载和轻负载的信号的阻抗相对应的值中的一个值。
如果PCOMP和NCOMP代码各有N-1个补偿代码,阵列410和418就分别有N个多路复用器4151至415N和4251至425N。N个多路复用器4151至415N包括与补偿代码PCOMP的这些比特(N-1)个的最低和最高有效(significant)比特相对应的最低和最高有效多路复用器4151和415N。这N个多路复用器4151至415N受选择信号控制。在选择信号处在低和高的逻辑电平时,分别选择N个多路复用器4151至415N各自的第一和第二输入(图4B中标为0和1)。选择信号具有两个逻辑电平,以选择与两个缓冲器阻抗相对应的驱动代码DRVCODEP。N个多路复用器4151至415N各有第一和第二输入端,分别按照选择信号的第一和第二电平进行选择。除了最高有效多路复用器415N之外的每个多路复用器的第二输入端都与下一有效多路复用器的第一输入端连接,并且连接到补偿代码的一个相应比特上。最低有效多路复用器4151的第一输入端和最高有效多路复用器415N的第二输入端连接到一个例如为零(或地电平)的逻辑电平上,以便按照选择信号提供对补偿代码PCOMP的定标。例如,在补偿代码PCOMP为011100的情况下,如果选择信号处在高逻辑电平,DRVCODEP就为0011100,而如果选择信号处在低逻辑电平,DRVCODEP就为0111000。注意,DRVCODEP以因子2定标,对应于对于重负载与轻负载的信号之间的缓冲器阻抗的因子2。用阵列410内的一个二输入端多路复用器提供定标因子2只是例示性的。可以类似得出对于其他定标因子的更一般的方案。例如,一个n输入端多路复用器可以与一些适当的连接级连,以提供一个等于n或与n成比例的定标因子。这种方案将适应大范围的负载信号。
启用电路282包括n个启用门2831至283N。每个启用门启用相应的DRVCODEP和DRVCOPEN。启用由补偿控制器210内的状态机产生的PINTEN和NINTEN信号执行。驱动器284包括N个p器件2871至287N和N个n器件2881至288N。p器件2871至287N和n器件2881至288N受各自启用的DRVCODEP和DRVCODEN的控制。
补偿驱动电路220和定标器2701至270N以及接口驱动电路2801和280N因此用相同的电路和相同的补偿控制器210适应轻负载和重负载的信号。缓冲器230是可定标的,为每种情况提供适当的缓冲器阻抗。这种技术是通用的,节约了硅面积,而且减小了硬件的复杂性。
图5为例示按照本发明一个实施例设计的控制阻抗的过程500的流程图。过程500与图4B这个实施例相对应。
启动后,过程500根据缓冲器焊盘上的反馈电压产生补偿代码(方框510)。补偿代码可以由状态机利用可逆计数器和反馈电压与基准电压的比较结果产生。然后,确定缓冲器用于重负载还是轻负载的信号(方框520)。如果缓冲器用于重负载的信号,过程500就将选择信号设置为一个第一逻辑电平,例如为高电平(方框540)。否则,过程500将选择信号设置为一个第二逻辑电平,例如为低电平(方框530)。
接着,过程500通过按照选择信号对补偿代码定标产生接口I/O缓冲器驱动代码(方框550)。在一个实施例中,对于定标因子为2的情况,定标通过将补偿代码向上或向下位移一个比特来执行。这是通过切换连接成定标器的多路复用器阵列来实现的。然后,过程500按照启用上拉还是下拉器件通过启用驱动代码产生p代码或n代码(方框560)。接着,过程利用启用的p代码或n代码驱动上拉或下拉器件(方框570)。于是,过程500结束。
图3、4和5所示的实施例采用了一个通用的补偿驱动电路220适应包括重负载和轻负载信号的大范围负载信号。这个实施例运用一个具有一个多路复用器阵列的代码产生器按照选择信号产生驱动代码。驱动代码按照选择信号选择的缓冲器是重负载还是轻负载定标。这个实施例的优点包括共享由占用相同的焊盘槽和同时得到校准的补偿控制器内的同一个RCOMP状态机校准的相同的强度比特。这个实施例需要一个可标定的缓冲器。
另一个实施例是使用独立的RCOMP焊盘,一个用于重负载信号,一个用于轻负载信号。在这个实施例中,可以用两个独立的补偿控制器,也可以用一个补偿控制器由两个RCOMP焊盘共享,轮流执行补偿。这个实施例有一个优点,它不需要可标定的缓冲器,因为这些RCOMP焊盘独立处理不同的负载条件。此外,补偿控制器内的状态机可以共享,以节约逻辑开销。
分布式RCOMP
对于诸如DDR SDRAM之类的具有宽总线接口的器件,I/O缓冲器可以在物理上比诸如图形加速口(AGP)器件之类的其他器件伸展得开得多。在这样的宽总线体系结构内,片内过程差异和温度变化可能会影响补偿的精度。此外,宽总线包括负载条件非常不同的一些不同的信号组。为了适应宽总线结构,分布式方法是有益的。
图6为例示按照本发明一个实施例设计的具有一个采用多个RCOMP缓冲器和焊盘的分布式RCOMP的器件600的示意图。器件600包括四组缓冲器610、620、630和640。
每个组具有若干个缓冲器(例如DDR缓冲器)和一个RCOMP缓冲器。组610具有K个缓冲器6101至610K和一个RCOMP缓冲器610K+1。组620具有L个缓冲器6101至610L和一个RCOMP缓冲器610L+1。组630具有M个缓冲器6101至610M和一个RCOMP缓冲器610M+1。组640具有N个缓冲器6101至610N和一个RCOMP缓冲器610N+1。K、L、M和N都为整数,可以是相等的的,也可以是不相等的。在一个实施例中,K=L=M=N=8,即对于每个数据字节有一个RCOMP缓冲器和焊盘。对于每个组,根据负载条件采用不同的校准。
图6所示的分布式RCOMP的阻抗控制可以用图3所示的补偿控制器的通用技术以三种方式执行。如图3所示的补偿控制器210可用于许多节约硬件的共享配置。在第一种方法中,器件600内的所有的RCOMP电路共享状态机310(图3)。在第二种方法中,每个RCOMP电路使用独立的可逆计数器320和330。在第三种方法中,可逆计数器320和330是共享的,但是对于每个RCOMP电路分别使用各自的比较器340和360和寄存器350和370。
图7为例示按照本发明一个实施例设计的由多个RCOMP缓冲器和焊盘共享的补偿控制器700的方框图。补偿控制器700与图3所示的补偿控制器210类似,只是还包括驱动电路,而对于多个缓冲器和焊盘分配有各自的驱动器、比较器和寄存器供使用。补偿控制器700包括一个状态机710、一个上拉可逆计数器720、一个下拉可逆计数器725、K个记忆单元715、K个驱动电路7301至730K、K个反馈电路7701至770K和K个焊盘7901至790K、K个p启用门7401至740K、K个n启用门7501至750K、K个驱动器7601至760K。这K个反馈电路7701和770K包括K个上比较器7721至772K、K个下比较器7741至774K、K个向上寄存器7821至782K、K个向下寄存器7841至784K
状态机710由所有的K个焊盘和缓冲器共享。状态机710产生一个启用上拉计数器720的PCNTEN信号、一个控制上拉计数器720的向上/向下计数模式的PCNTUD信号、一个启用下拉计数器725的NCNTEN信号、一个控制下拉计数器725的向上/向下计数模式的NCNTUD信号、一个启用上拉计数器720产生的p代码的PCOMPEN信号和一个启用下拉计数器725产生的n代码的NCOMPEN信号。每个缓冲器由一个PCOMPEN和NCOMPEN启用。对于K个缓冲器,有K个PCOMPEN和NCOMPEN信号,标为PCOMPEN(1-K)和NCOMPEN(1-K),如图7所示。
上拉计数器720是一个可逆计数器,以产生给驱动器7601至760K内以p器件实现的上拉器件的p代码。下拉计数器725是一个可逆计数器,以产生给驱动器7601至760K内以n器件实现的下拉器件的n代码。K个驱动电路7301和730K用补偿代码控制K个焊盘7901至790K处的K个缓冲器的阻抗。K个反馈电路7701至770K提供K个焊盘7901至790K处的K个电压电平的K个比较结果。K个p启用门7401至740K和K个n启用门7501至750K分别用来启用p代码和n代码,以驱动驱动器7601至760K。正如以上所讨论的,启用门可以由用于p代码的OR门和用于n代码的AND门来实现。启用由来自状态机710的PCOMPEN和NCOMPEN信号提供。驱动器7601至760K分别连接到焊盘7901至790K上,以驱动相应的缓冲器(未示出)。驱动器7601至760K包括p器件7621至762K和n器件7641至764K。p器件和n器件被互斥启用。
K个上比较器7721至772K、K个下比较器7741至774K、K个向上寄存器7821至782K和K个向下寄存器7841至784K以与上面所述的相同的方式运用。每对比较器(例如,772K和774K)连接到一个相应的焊盘790K上,将焊盘电压与上下基准电压相比较。每对寄存器(例如,782K和784K)连接到相应比较器(例如,772K和774K)上,以锁存比较结果,从而产生LUPK和LDNK信号。状态机710因此使用K个信号LUP1至LUPK和LDN1至LDNK如上面结合图3所说明的那样调整相应的可逆计数器720和725。
在这个分布式RCOMP实施例中,状态机710和计数器720和725由K个焊盘7901至790K共享。比较器7721至772K和7741至774K以及寄存器7821至782K和7841至784K是独立的,与焊盘7901至790K和所关联的缓冲器相对应。
K个存储单元715存储用于相应K个缓冲器的由计数器720和725产生的p代码和n代码。与K个焊盘7901至790K关联的K个缓冲器被逐个校准。每个缓冲器具有它自己的PCODE和NCODE组。在校准期间,每个组的PCODE和NCODE锁存在K个存储单元715中的相应存储单元内,同时继续校准下一个组。保持所锁存的值,而在变动不会影响缓冲器工作的适当时间,利用这些值更新与这些组相对应的接口缓冲器。
图8为例示按照本发明一个实施例设计的具有一个采用标准缓冲器和焊盘的分布式RCOMP的器件800的示意图。器件800包括N个缓冲器8101至810N
8101至810K是标准的缓冲器。如上面结合图1所提到的那样,这种技术可以配合具有外部并行端接的系统工作,特别是与CTT配合可以工作得很好,因为校准上拉和下拉只需要一个RCOMP。器件800没有专用的RCOMP缓冲器。N个缓冲器8101至810N各用作一个RCOMP缓冲器。由于没有专用的RCOMP缓冲器,这个实施例节约了焊盘、电路和其他与传统的RCOMP方法关联的硬件开销。
阻抗控制用与图3或图7类似的补偿控制器执行。由于使用的是标准的缓冲器,补偿在总线空闲或不在使用(即存储器刷新周期)时执行。有三种更新的方法。在第一种方法中,在复位时更新。在器件复位(无论是加电或系统复位)时,执行完整的更新。这种方法简单,而且可以不要经常更新就足以保证适当的补偿。在第二种方法中,补偿代码在空闲时间逐步和周期性地更新。空闲时间可以是DDR SDRAM的刷新时间。在第三种方法中,计数器由多个缓冲器共享。在这种方法中,可以以轮流方式对每个缓冲器执行更新。
虽然本发明结合一些例示性的实施例进行说明,但这说明并不是限制性的。对于熟悉该技术领域的人员来说,这些例示性的实施例的各种变型和本发明的其他实施方式都是显而易见的,因此都应列入本发明的专利保护范围。

Claims (30)

1.一种装置,所述装置包括:
定标器,用来按照一个选择信号根据一个补偿代码产生一个驱动代码,所述驱动代码与一个缓冲器的阻抗相对应;
启用电路,耦合到所述定标器,用来启用所述驱动代码;以及
驱动器,耦合到所述启用电路,用来按照所述驱动代码控制所述缓冲器的阻抗。
2.权利要求1的装置,其中所述定标器包括:
多路复用器阵列,用来根据所述补偿代码的(N-P)个比特产生所述驱动代码的N个比特,所述多路复用器阵列按照所述选择信号对所述补偿代码定标,经定标的补偿代码与所述驱动代码相对应。
3.权利要求1的装置,其中所述阻抗是与重负载和轻负载的缓冲器相对应的第一和第二缓冲器阻抗之一。
4.权利要求3的装置,其中所述驱动代码具有与第一和第二缓冲器阻抗相对应的第一和第二值之一。
5.权利要求2的装置,其中所述多路复用器阵列包括:
N个各有K个输入端的多路复用器,用来根据所述补偿代码的(N-P)个比特产生所述驱动代码的N个比特,所述N个多路复用器包括与所述补偿代码的(N-P)个比特中的最低和最高有效比特相对应的最低和最高有效多路复用器,所述N个多路复用器受所述选择信号控制。
6.权利要求5的装置,其中所述N个多路复用器中的每一个具有分别按照所述选择信号的第一和第二电平选择的第一和第二输入端,除了最高有效多路复用器之外的每个多路复用器的第二输入端连接到下一有效多路复用器的第一输入端并且连接到所述补偿代码的一个相应比特,最低有效多路复用器的第一输入端和最高有效多路复用器的第二输入端连接到一个逻辑电平上,以便按照所述选择信号提供对所述补偿代码的定标。
7.权利要求1的装置,其中所述启用电路产生分别与p和n补偿代码相对应的一个p代码和一个n代码,所述p代码和n代码被互斥启用。
8.权利要求7的装置,其中所述驱动器包括多个用于接收p代码的p器件,所述p器件在所述p代码被启用时驱动所述缓冲器。
9.权利要求7的装置,其中所述驱动器包括多个用于接收n代码的n器件,所述n器件在所述n代码被启用时驱动所述缓冲器。
10.权利要求1的装置,其中所述补偿代码由一个状态机产生,以响应来自所述缓冲器的反馈结果。
11.一种方法,所述方法包括:
按照一个选择信号根据一个补偿代码产生一个驱动代码,所述驱动代码与一个缓冲器的阻抗相对应;
启用所述驱动代码;以及
按照所述驱动代码,控制所述缓冲器的阻抗。
12.权利要求11的方法,其中产生所述驱动代码包括:
根据所述补偿代码的(N-P)个比特,产生所述驱动代码的N个比特,以便对所述补偿代码定标,经定标的补偿代码与所述驱动代码相对应。
13.权利要求11的方法,其中所述阻抗是与重负载和轻负载的缓冲器相对应的第一和第二缓冲器阻抗之一。
14.权利要求13的方法,其中所述驱动代码具有与第一和第二缓冲器阻抗相对应的第一和第二值之一。
15.权利要求12的方法,其中产生所述驱动代码的N个比特包括:
由具有N个各有K个输入端的多路复用器的多路复用器阵列根据所述补偿代码的(N-P)个比特产生所述驱动代码的N个比特,所述N个多路复用器包括与所述补偿代码的(N-1)个比特中的最低和最高有效比特相对应的最低和最高有效多路复用器,所述N个多路复用器受所述选择信号控制。
16.权利要求15的方法,其中所述N个多路复用器中的每一个具有分别按照所述选择信号的第一和第二电平选择的第一和第二输入端,除了最高有效多路复用器之外的每个多路复用器的第二输入端连接到下一有效多路复用器的第一输入端并且连接到所述补偿代码的一个相应比特上,最低有效多路复用器的第一输入端和最高有效多路复用器的第二输入端连接到一个逻辑电平上,以便按照所述选择信号提供对所述补偿代码的定标。
17.权利要求11的方法,其中启用所述驱动代码包括产生分别与p和n补偿代码相对应的一个p代码和一个n代码,所述p代码和n代码被互斥启用。
18.权利要求17的方法,其中控制所述缓冲器的阻抗包括由多个p器件在所述p代码被启用时驱动所述缓冲器,所述p器件接收所述p代码。
19.权利要求17的方法,其中控制所述缓冲器的阻抗包括由多个n器件在所述n代码被启用时驱动所述缓冲器,所述n器件接收所述n代码。
20.权利要求11的方法,其中所述补偿代码由一个状态机产生,以响应来自所述缓冲器的反馈结果。
21.一种系统,所述系统包括:
补偿控制器,用来产生补偿代码;
缓冲器,具有与负载匹配的阻抗;以及
补偿驱动电路,耦合到所述补偿控制器和所述缓冲器,用来驱动所述缓冲器,所述补偿驱动电路包括:
定标器,用来按照一个选择信号根据所述补偿代码产生一个驱动代码,所述驱动代码与所述缓冲器的阻抗相对应;
启用电路,耦合到所述定标器,用来启用所述驱动代码;和
驱动器,耦合到所述启用电路,用来按照所述驱动代码控制所述缓冲器的阻抗。
22.权利要求21的系统,其中所述定标器包括:
多路复用器阵列,用来根据所述补偿代码的(N-P)个比特产生所述驱动代码的N个比特,所述多路复用器阵列按照所述选择信号对所述补偿代码定标,经定标的补偿代码与所述驱动代码相对应。
23.权利要求21的系统,其中所述阻抗是与重负载和轻负载的缓冲器相对应的第一和第二缓冲器阻抗之一。
24.权利要求23的系统,其中所述驱动代码具有与第一和第二缓冲器阻抗相对应的第一和第二值之一。
25.权利要求22的系统,其中所述多路复用器阵列包括:
N个各有K个输入端的多路复用器,用来根据所述补偿代码的(N-P)个比特产生所述驱动代码的N个比特,所述N个多路复用器包括与所述补偿代码的(N-P)个比特中的最低和最高有效比特相对应的最低和最高有效多路复用器,所述N个多路复用器受所述选择信号控制。
26.权利要求25的系统,其中所述N个多路复用器中的每一个具有分别按照所述选择信号的第一和第二电平选择的第一和第二输入端,除了最高有效多路复用器之外的每个多路复用器的第二输入端连接到下一有效多路复用器的第一输入端并且连接到所述补偿代码的一个相应比特,最低有效多路复用器的第一输入端和最高有效多路复用器的第二输入端连接到一个逻辑电平上,以便按照所述选择信号提供对所述补偿代码的定标。
27.权利要求21的系统,其中所述启用电路产生分别与p和n补偿代码相对应的一个p代码和一个n代码,所述p代码和n代码被互斥启用。
28.权利要求27的系统,其中所述驱动器包括多个用于接收p代码的p器件,所述p器件在所述p代码被启用时驱动所述缓冲器。
29.权利要求27的系统,其中所述驱动器包括多个用于接收n代码的n器件,所述n器件在所述n代码被启用时驱动所述缓冲器。
30.权利要求21的系统,其中所述补偿代码由一个状态机产生,以响应来自所述缓冲器的反馈结果。
CNB018196276A 2000-09-29 2001-09-27 大范围负载信号的通用阻抗控制 Expired - Fee Related CN1288843C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/672,604 2000-09-29
US09/672,604 US6445316B1 (en) 2000-09-29 2000-09-29 Universal impedance control for wide range loaded signals

Publications (2)

Publication Number Publication Date
CN1478324A CN1478324A (zh) 2004-02-25
CN1288843C true CN1288843C (zh) 2006-12-06

Family

ID=24699257

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018196276A Expired - Fee Related CN1288843C (zh) 2000-09-29 2001-09-27 大范围负载信号的通用阻抗控制

Country Status (9)

Country Link
US (1) US6445316B1 (zh)
KR (1) KR100517134B1 (zh)
CN (1) CN1288843C (zh)
AU (1) AU2001294803A1 (zh)
DE (1) DE10196691T1 (zh)
GB (1) GB2384633B (zh)
HK (1) HK1054822A1 (zh)
TW (1) TW556083B (zh)
WO (1) WO2002027929A2 (zh)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3573734B2 (ja) * 2001-03-19 2004-10-06 Necエレクトロニクス株式会社 オーバーサンプリングクロックリカバリ回路
US6798237B1 (en) * 2001-08-29 2004-09-28 Altera Corporation On-chip impedance matching circuit
US6633178B2 (en) * 2001-09-28 2003-10-14 Intel Corporation Apparatus and method for power efficient line driver
JP2003150541A (ja) * 2001-11-16 2003-05-23 Mitsubishi Electric Corp マイクロコンピュータ
US6657906B2 (en) * 2001-11-28 2003-12-02 Micron Technology, Inc. Active termination circuit and method for controlling the impedance of external integrated circuit terminals
US7356555B2 (en) * 2002-03-29 2008-04-08 Intel Corporation In-protocol impedance compensation control
US6885959B2 (en) * 2002-10-29 2005-04-26 Intel Corporation Circuit and method for calibrating DRAM pullup Ron to pulldown Ron
US20040212399A1 (en) * 2002-11-29 2004-10-28 Daniel Mulligan Programmable driver for use in a multiple function handheld device
US6922077B2 (en) * 2003-06-27 2005-07-26 Intel Corporation Hybrid compensated buffer design
US20040263203A1 (en) * 2003-06-27 2004-12-30 Intel Corporation Signal compensation
TWI221295B (en) * 2003-11-06 2004-09-21 Via Tech Inc Circuit for calibrating output driving of dram and method thereof
CN100454435C (zh) * 2003-11-13 2009-01-21 威盛电子股份有限公司 动态随机存取存储器的输出驱动强度校正电路及方法
US7019553B2 (en) * 2003-12-01 2006-03-28 Micron Technology, Inc. Method and circuit for off chip driver control, and memory device using same
US7103687B2 (en) * 2003-12-22 2006-09-05 Hewlett-Packard Development Company, L.P. System and method for providing an image file in a computer system
US7099967B2 (en) * 2003-12-22 2006-08-29 Hewlett-Packard Development Company, L.P. System and method for storing an image file in a computer system
US7009894B2 (en) * 2004-02-19 2006-03-07 Intel Corporation Dynamically activated memory controller data termination
US7020818B2 (en) * 2004-03-08 2006-03-28 Intel Corporation Method and apparatus for PVT controller for programmable on die termination
KR100642008B1 (ko) 2004-06-28 2006-11-02 삼성전자주식회사 임피던스 제어회로 및 임피던스 제어방법
US7227376B2 (en) * 2004-11-05 2007-06-05 Ati Technologies Inc. Dynamic impedance compensation circuit and method
US7215579B2 (en) * 2005-02-18 2007-05-08 Micron Technology, Inc. System and method for mode register control of data bus operating mode and impedance
US7679397B1 (en) * 2005-08-05 2010-03-16 Altera Corporation Techniques for precision biasing output driver for a calibrated on-chip termination circuit
US7590392B2 (en) * 2005-10-31 2009-09-15 Intel Corporation Transmitter compensation
US20070139070A1 (en) * 2005-12-19 2007-06-21 Intel Corporation Buffer having predriver to help improve symmetry of rise and fall transitions in an output signal
KR100738961B1 (ko) * 2006-02-22 2007-07-12 주식회사 하이닉스반도체 반도체 메모리의 출력 드라이빙 장치
US7466174B2 (en) 2006-03-31 2008-12-16 Intel Corporation Fast lock scheme for phase locked loops and delay locked loops
KR100808598B1 (ko) * 2006-12-27 2008-03-03 주식회사 하이닉스반도체 데이타 출력 드라이버
US7603605B2 (en) * 2007-01-08 2009-10-13 Arm Limited Performance control of an integrated circuit
US7642807B2 (en) * 2007-06-26 2010-01-05 Agere Systems Inc. Multiple-mode compensated buffer circuit
KR100940838B1 (ko) * 2008-06-04 2010-02-04 주식회사 하이닉스반도체 반도체 집적회로의 클럭 신호 발생 장치 및 방법
US8289784B2 (en) * 2010-06-15 2012-10-16 International Business Machines Corporation Setting a reference voltage in a memory controller trained to a memory device
US8681571B2 (en) 2010-06-15 2014-03-25 International Business Machines Corporation Training a memory controller and a memory device using multiple read and write operations
US8497706B2 (en) * 2011-08-15 2013-07-30 Micron Technology, Inc. Adjustable data drivers and methods for driving data signals
US8766663B2 (en) 2012-06-18 2014-07-01 International Business Machines Corporation Implementing linearly weighted thermal coded I/O driver output stage calibration
RU2760906C1 (ru) * 2021-06-30 2021-12-01 федеральное государственное бюджетное научное учреждение "Научно-производственный комплекс "Технологический центр" Аналого-цифровой преобразователь

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1571048A (en) 1926-01-26 Ments
US2377484A (en) 1940-09-25 1945-06-05 Celotex Corp Fiber plank
US4510020A (en) 1980-06-12 1985-04-09 Pulp And Paper Research Institute Of Canada Lumen-loaded paper pulp, its production and use
US5096539A (en) 1989-07-24 1992-03-17 The Board Of Regents Of The University Of Washington Cell wall loading of never-dried pulp fibers
US5223090A (en) 1991-03-06 1993-06-29 The United States Of America As Represented By The Secretary Of Agriculture Method for fiber loading a chemical compound
DE4234341C1 (de) * 1992-10-12 1994-06-09 Siemens Ag Schaltungsanordnung zum Umwandeln von digitalen Tonsignalen
EP0608515A1 (en) * 1993-01-29 1994-08-03 Motorola, Inc. Programmable drive output buffer
CH689594A5 (de) 1995-08-16 1999-06-30 Nueva Ag Verfahren zur Herstellung von Formteilen aus faserarmiertem, hydraulisch abbindendem Material.
AUPN504095A0 (en) 1995-08-25 1995-09-21 James Hardie Research Pty Limited Cement formulation
US5804985A (en) * 1996-04-02 1998-09-08 Motorola, Inc. Programmable output buffer and method for programming
US5869983A (en) * 1997-03-24 1999-02-09 Intel Corporation Method and apparatus for controlling compensated buffers
US6204683B1 (en) * 1999-05-18 2001-03-20 Intel Corporation Apparatus and method for reducing crosstalk in an integrated circuit which includes a signal bus
US6297677B1 (en) * 1999-09-20 2001-10-02 Sun Microsystems, Inc. Method for a dynamic termination logic driver with improved slew rate control

Also Published As

Publication number Publication date
TW556083B (en) 2003-10-01
AU2001294803A1 (en) 2002-04-08
WO2002027929A3 (en) 2002-05-16
GB0308819D0 (en) 2003-05-21
CN1478324A (zh) 2004-02-25
DE10196691T1 (de) 2003-08-28
HK1054822A1 (en) 2003-12-12
KR100517134B1 (ko) 2005-09-28
GB2384633B (en) 2004-03-17
WO2002027929A2 (en) 2002-04-04
US6445316B1 (en) 2002-09-03
GB2384633A (en) 2003-07-30
KR20030034237A (ko) 2003-05-01

Similar Documents

Publication Publication Date Title
CN1288843C (zh) 大范围负载信号的通用阻抗控制
US20240193108A1 (en) High capacity memory system with improved command-address and chip-select signaling mode
US5729152A (en) Termination circuits for reduced swing signal lines and methods for operating same
US7751272B2 (en) Semiconductor device and method for selection and de-selection of memory devices interconnected in series
US9595963B2 (en) Method and apparatus for dynamic memory termination
CN1808902A (zh) 输出电路、半导体器件和调整输出电路的特性的方法
TWI520146B (zh) 堆疊晶粒記憶體系統與用於訓練堆疊晶粒記憶體系統之方法
US6854042B1 (en) High-speed data-rate converting and switching circuit
US20110246857A1 (en) Memory system and method
CN1622462A (zh) 半导体器件
US20040233074A1 (en) Single-ended balance-coded interface with embedded-timing
CN101546990A (zh) 用于实现双向数据总线的可编程输入/输出结构和方法
TW202131164A (zh) 快閃記憶體控制器以及用來存取快閃記憶體模組的方法
CN101055767A (zh) 多端口存储装置的测试操作
US20210090638A1 (en) Page buffer structure and fast continuous read
Semiconductor Open NAND flash interface specification
AU682357B2 (en) Method for combining a plurality of independently operating circuits within a single package
CN1601449A (zh) 提供可变数据输入输出宽度的电路与方法
US20090006683A1 (en) Static power reduction for midpoint-terminated busses
CN1822216A (zh) 半导体存储装置和利用其的存储系统
JPH1153887A (ja) デコード信号比較回路
KR20050066502A (ko) 라인부하가 감소된 리드데이터 라인을 구비하는 반도체장치
Gummattira et al. TMS320C6713 Digital Signal Processor Optimized for High Performance Multichannel Audio Systems
WO2005010758A1 (en) High-speed data-rate converting and switching circuit

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: 20061206

Termination date: 20100927