首页> 中国专利> 通过不将地址和控制信号返回空闲来减少交流电功率的存储器控制器

通过不将地址和控制信号返回空闲来减少交流电功率的存储器控制器

摘要

一种用于存储器设备的存储器控制器和方法避免了在片选信号被反断言时将地址和/或预选控制线的状态返回空闲。预选控制信号选自发送给存储器设备的、并且在片选信号被反断言时被存储器设备忽略的控制信号。通过不返回空闲,减少了由信号线的翻转引起的功率消耗。

著录项

  • 公开/公告号CN1613115A

    专利类型发明专利

  • 公开/公告日2005-05-04

    原文格式PDF

  • 申请/专利权人 英特尔公司;

    申请/专利号CN03802023.8

  • 发明设计人 杰弗里·威尔科克斯;

    申请日2003-01-03

  • 分类号G11C7/10;G11C7/22;G11C8/18;

  • 代理机构北京东方亿思知识产权代理有限责任公司;

  • 代理人王怡

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 16:08:21

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-02-22

    未缴年费专利权终止 IPC(主分类):G11C7/10 授权公告日:20100616 终止日期:20160103 申请日:20030103

    专利权的终止

  • 2010-06-16

    授权

    授权

  • 2005-07-06

    实质审查的生效

    实质审查的生效

  • 2005-05-04

    公开

    公开

说明书

技术领域

本发明的领域一般涉及电路;更具体地说,本发明涉及存储器控制器电路。

背景技术

存储器控制器电路可以用于多种计算机系统(例如,台式个人计算机、笔记本电脑、个人数字助理等)中,以便于计算机系统的处理器访问存储器芯片。这些存储器芯片可以包括随机访问存储器(RAM)芯片。例如,存储器控制器可以具有用于连接到一个或多个动态RAM(DRAM)芯片,例如同步DRAM(SDRAM)芯片的接口。存储器控制器使用该存储器接口在处理器和RAM芯片之间引导数据,并将地址和控制信号发送到RAM芯片。用于访问RAM芯片的控制信号一般包括行地址选通脉冲(RAS)、列地址选通脉冲(CAS)、写使能(WE)和片选(CS,chipselect)信号。

如同在其他电子接口中一样,存储器控制器的存储器接口在接口信号的过渡(这里也称为翻转(toggle))期间会消耗功率。例如,在传统的存储器控制器中,在每一个存储周期中,存储器接口将在周期的开始驱动地址和控制信号,然后在接近周期结束时将信号返回空闲状态。对于控制信号,空闲状态可以是逻辑高电平,而对于地址信号,空闲状态可以是逻辑低电平。但是,不管空闲状态的逻辑电平是什么,将这些信号返回空闲状态一般都会引起这些信号中许多信号的翻转。如前所描述的,翻转会导致功率消耗,而在计算机系统应用中、尤其是在例如笔记本电脑和个人数字助理的使用电池供电的计算机系统中一般是不希望这样的。此外,这种信号的同时翻转可以导致增大的噪声和峰值功率消耗。在用于与多个系统总线一起使用的控制器中,这个问题可能更加严重。

附图说明

参照附图描述了本发明的非限制性和非穷举实施例,其中,除非特别规定,否则在各个视图中相同的标号表示相同的部件。

图1是图示了根据本发明一个实施例的作为计算机系统一部分的存储器控制器的简化框图。

图2是图示了根据本发明一个实施例的图1中存储器控制器的操作的流程图。

图3是图示了根据本发明一个实施例的存储器控制器的存储器接口的简化框图。

图4是图示了根据本发明一个实施例的存储器控制器在写操作期间的操作的时序图。

图5是图示了传统存储器控制器在写操作期间的操作的时序图,用于与图4的时序图相比较。

图6是根据本发明一个实施例用于实现不返回空闲电路的具有锁存电路的存储器控制器的简化框图。

具体实施方式

这里描述了存储器控制器电路的实施例。在下面的描述中,给出了大量具体的细节以提供对本发明实施例的完整理解。但是,相关领域的技术人员应当理解本发明可以不用这些具体细节中的一个或多个来实现,或者通过其他方法、组件、材料等来实现。在其他情况下,没有详细地示出或描述公知的结构、材料或操作,以免混淆本发明的方案。

在整个说明书中所谈到的“一个实施例”或“实施例”意味着结合该实施例描述的具体特征、结构或特性至少包含在本发明的一个实施例中。因此,在整个说明书的各个地方出现的短语“一个实施例”或“实施例”不一定都指相同的实施例。而且,这些具体特征、结构或特性可以以任何合适的方式来组合在一个或多个实施例中。

图1图示了根据本发明一个实施例的具有存储器控制器11的计算机系统10的简化形式。此外,计算机系统10包括处理器13和随机访问存储器(RAM)15。RAM 15可以是例如单倍或双倍数据速率的同步动态RAM(SDRAM)、非同步RAM、静态RAM等的几种类型RAM中的一个。根据本发明,存储器控制器11包括不返回空闲(NRI,non-return-to-idle)电路17,其为存储器控制器11的存储器接口的一部分。在其他实施例中,不同的“代理”可以使用存储器控制器11来访问RAM 15。

在一个实施例中,NRI电路17可以是存储器控制器11内部的单独的子电路。或者,可以在存储器控制器一般所包含的状态机或定序器中建立NRI电路的功能,所述状态机或定序器用于产生与RAM 15接口所需的控制信号(例如前面提到的RAS、CAS、WE和CS信号)。

如下互连计算机系统10的元件。将处理器13通过总线18(这里也称为处理器总线)连接到存储器控制器11。将RAM 15通过总线19(这里也称为存储器总线)连接到存储器控制器11。具体来说,将存储器总线19耦合到NRI电路17,NRI电路17帮助实现存储器控制器11的存储器接口。

图2图示了在存储器访问期间由存储器控制器11执行的操作。参照图1和图2,存储器控制器11操作如下。

在存储周期的开始,存储器控制器11通过存储器总线19驱动由RAM 15接收的地址和控制信号。这个操作的结果是,这些存储器接口信号中的许多信号将翻转,从而导致存储器控制器11的驱动器在它们将信号驱动到期望逻辑电平时消耗功率。然后,在该存储周期期间根据由控制信号的状态定义的命令,可以执行正常的存储器访问操作(例如读或写操作)。图2中的方框21表示该操作。

在一个示例性实施例中,RAM 15是同步RAM,存储周期由时钟信号限定。在该实施例中,在存储周期的开始,存储器控制器11与时钟脉冲的前沿具有相对较小传播延迟地将地址和控制信号驱动到存储器总线19上。此外,在该实施例中,控制信号包括上述CS、RAS、CAS和WE信号的补码(即,CS#、RAS#、CAS#和WE#信号),这些信号被用于提供与绝大多数可购得的RAM芯片的接口。

在存储周期的末尾,存储器控制器11将CS#信号驱动到其空闲状态,如在传统的存储器控制器中一样。由图2中的方块23表示该操作。在一个实施例中,CS#信号的空闲状态是逻辑低电平。

此外,在存储周期的末尾,存储器控制器11通过NRI电路17将地址和其他预选的控制信号的状态保持在与方框21期间所驱动的状态相同。这里,也将这些被保持的状态称为“搁置(parked)”状态。这些预选控制信号都是在CS#信号处于空闲状态时被RAM 15忽略的控制信号。即,在CS#信号处于空闲状态时,RAM存储器接口协议允许地址和某些控制信号处于任何状态。由图2中的方块25表示该操作。

在一个实施例中,预选控制信号是RAS#、CAS#和WE#信号。在其他实施例中,预选控制信号可以是RAS#、CAS#和WE#信号的子集。控制信号还可以包括“被返回空闲”的其他信号,例如片选信号、时钟使能(CKE)和数据屏蔽(DQM),如在传统存储器控制器系统中一样。

存储器控制器11的该实施例有利地防止了在没有驱动新命令的存储周期期间地址和控制信号的翻转。上述操作不会在存储器访问操作中导致任何错误,因为在CS#信号处于空闲状态时不使用预选控制信号。由存储器控制器11避免的每一个不必要的翻转都表示功率的节省。而且,存储器控制器11减少了同时切换的发生,这将减少开关噪声和峰值功率消耗。

此外,在下一个存储周期期间,地址和预选控制信号中的一些一般将保持在与搁置状态相同的状态。因此,即使驱动命令,这些信号也将不会翻转。例如,在许多存储器访问情况(例如,对连续的存储器地址的块读(block read)或块写(block write))中,存储器访问操作序列将只要求很少数量的地址信号在执行块读或写操作时在每个存储器访问操作之间翻转。这样,与由传统存储器控制器引起的翻转数量相比,在这种存储器访问中,存储器控制器11大大减少了翻转的数量。

图3图示了根据本发明一个实施例的存储器控制器11的双倍数据速率(DDR)SDRAM存储器接口30。该实施例包括具有NRI电路17的存储器控制器11以及DDR SDRAM 15A。图3图示了与系统10(图1)基本相同的系统的一部分,但是在图3中更具体地将RAM 15(图1)示为DDR SDRAM 15A。在一些实施例中,在多于一个的芯片中实现DDRSDRAM 15A。

在该实施例中,存储器接口30包括:(a)N位地址线或总线31;(b)RAS#线32;(c)CAS#线33;(d)WE#线34;(e)CS#线35;以及(f)M位数据线或总线36。此外,存储器控制器11和DDRSDRAM 15A通过线38接收时钟信号CLK。在一个实施例中,N和M分别代表十五和六十四。这些线电学连接存储器控制器11与DDR SDRAM15A。RAS#、CAS#和WE#信号是该实施例的预选控制信号,并且是在存储器总线19上传播的信号的一部分。在其他实施例中预选控制信号可以不同,一般取决于所用存储器芯片的类型。

图3中图示的存储器接口还包括用于访问标准DDR SDRAM芯片的其他控制线。但是,在图3中省略了这些其他的控制线,以避免混淆本发明。

在如结合图1和图2所描述的方式下,NRI电路17在存储器访问操作期间搁置存储器接口30的预选信号以减少控制信号的翻转。下面结合图4描述在块写操作期间在线31~36上的信号的时序。

图4图示了根据本发明一个实施例的图3中所示存储器接口信号在写操作期间的时序。具体地说,该示例性写操作是突发长度为四的对DDRSDRAM 15A的块写操作。

参照图3和图4,在图4中如下表示这些存储器接口信号。波形40表示线38上的时钟信号CLK的时序。在该示例性时序图中,在波形40中以时钟周期C0、C1等来指示时钟信号CLK的时钟周期。波形41表示线31上的地址信号的时序。波形42表示线32上的RAS#信号的时序。波形43表示线33上的CAS#信号的时序。波形44表示线34上的WE#信号的时序。波形45表示线35上的CS#信号的时序。波形46表示线36上的数据信号的时序。

仍旧参照图3和图4,块写操作在时钟信号CLK的周期C0期间开始。在时钟周期C0期间,存储器控制器11使地址信号返回空闲,这由定义波形41的部分41A中零地址的地址线表示。此外,存储器控制器11将RAS#、CAS#、WE#和CS#信号从它们先前的逻辑电平驱动到逻辑高电平,如分别由波形42、43、44和45的部分42A、43A、44A和45A所指示的。存储器控制器11使其用于驱动数据线33的驱动器处于高阻抗状态,由波形46的处于中间电平的部分46A表示。更具体地说,在该示例性实施例中,DDR SDRAM 15A具有当存储器控制器11的驱动器处于高阻抗状态时,使得数据线33的电压电平位于逻辑高电压电平的一半处的电阻端(resistive termination)。存储器控制器11保持这些逻辑电平直到时钟周期C1结束,如在标准DDR SDRAM突发写操作中的一样。

随着时钟周期C2的开始,存储器控制器11将地址线31上第一个字的地址写到DDR SDRAM 15A中。该操作由波形41的部分41B指示。部分41B示出了定义F0地址的地址线,该地址代表第一个字的第一个字节的地址。存储器控制器11保持RAS#信号的逻辑高电平以及用于数据线46的驱动器的高阻抗状态。存储器控制器11还将CAS#、WE#和CS#信号驱动到逻辑低电平,如下降沿43B、44B和45B所指示的。将时钟周期C2期间的地址、数据和控制信号的电压驱动到有效电平(例如SSTL_2电压电平),如在标准DDR SDRAM突发写模式中一样。

但是,在时钟周期C3,存储器控制器11通过NRI电路17将地址信号保持在与时钟周期C2相同的逻辑电平。由基本上延伸到时钟周期C3末尾的波形41的部分41B来指示该操作。相比较而言,一般的传统DDRSDRAM存储器控制器将在周期C3期间将地址线返回空闲。如前面所描述的,返回空闲一般将翻转一些地址信号,从而消耗功率。

此外,在时钟周期C3期间,存储器控制器11通过NRI电路17将RAS#、CAS#和WE#信号保持在与时钟周期C2相同的逻辑电平。在标准存储器控制器中,RAS#信号一般会具有相同的逻辑电平;但是,CAS#和WE#信号一般将返回空闲。因为存储器控制器11在时钟周期C3期间不改变CAS#和WE#的逻辑电平,所以本发明的该实施例减少了这些控制信号的翻转,反过来,这也减少了功率消耗。

同时在时钟周期C3期间,存储器控制器11以类似于传统DDRDARAM存储器控制器的方式,将CS#信号保持在逻辑高电平,并保持数据线46的驱动器的高阻抗状态。由波形41中的上升沿45C来指示CS#信号到逻辑高电平的过渡。

在时钟周期C4,存储器控制器11使得地址线31上第二个字的地址写到DDR SDRAM 15A中。该操作由波形41的部分41C指示。部分41C示出了定义F4地址的地址线,该地址代表所述块的第二个字的第一个字节的地址。存储器控制器11保持RAS#信号的逻辑高电平以及CAS#和WE#信号的逻辑低电平。此外,存储器控制器11将CS#信号驱动到逻辑低电平,如波形45的下降沿45D所指示的。存储器控制器11还使得“写”数据的前两个字节(即,将被写到地址F0和F1)放到数据线36上,如波形46的部分46B和46C所表示的。将时钟周期C4期间的地址、数据和控制信号的电压电平驱动到有效电平(例如SSTL_2电压电平),如在标准DDR SDRAM突发写模式中一样。

在时钟周期C5,存储器控制器11通过NRI电路17将地址信号保持在与时钟周期C4相同的逻辑电平。该操作由从时钟周期C4的开始基本上延伸到时钟周期C5末尾的波形41的部分41C指示。此外,在时钟周期C5期间,存储器控制器11通过NRI电路17将RAS#、CAS#和WE#信号保持在与时针周期C4中相同的逻辑电平。而且,存储器控制器11将CS#信号驱动到逻辑高电平,如波形45的上升沿45E所指示的。存储器控制器11还使得“写”数据的接下来的两个字节(即,将被写到地址F2和F3的数据)放到数据线36上,如波形46的部分46D和46E所表示的。

在时钟周期C6,存储器控制器11使得地址线31上第三个字的地址写到DDR SDRAM 15A中。该操作由波形41的部分41D指示。部分41D示出了定义F8地址的地址线,该地址代表所述块的第三个字的第一个字节的地址。存储器控制器11保持RAS#信号的逻辑高电平,并保持CAS#和WE#信号的逻辑低电平。此外,存储器控制器11将CS#信号驱动到逻辑低电平,如波形45的下降沿45F所指示的。存储器控制器11还使得“写”数据的接下来的两个字节(即,将被写到地址F4和F5的数据)放到数据线36上,如波形46的部分46F和46G所表示的。将时钟周期C6期间的地址、数据和控制信号的电压电平驱动到有效电平(例如SSTL_2电压电平),如在标准DDR SDRAM突发写模式中一样。

在时钟周期C7,存储器控制器11通过NRI电路17将地址信号保持在与时钟周期C6中相同的逻辑电平。该操作由从时钟周期C6的开始起贯穿时钟周期C7的波形41的部分41D指示。此外,在时钟周期C7期间,存储器控制器11通过NRI电路17将RAS#、CAS#和WE#信号保持在与时钟周期C6中相同的逻辑电平。而且,存储器控制器11将CS#信号驱动到逻辑高电平,如波形45的上升沿45G所指示的。存储器控制器11还使得“写”数据的接下来的两个字节(即,将被写到地址F6和F7的数据)放到数据线36上,如波形46的部分46H和46I所表示的。因此,与传统DDR SDRAM存储器控制器不同,存储器控制器11的该实施例(通过NRI电路17)有利地避免了在时钟周期C7期间翻转地址信号以及RAS#、CAS#和WE#信号。

在时钟周期C8,存储器控制器11将地址信号保持在与时钟周期C7中相同的逻辑电平。该操作由延伸贯穿整个时钟周期C8的波形41的部分41D指示。存储器控制器11保持RAS#和CS#信号的逻辑高电平,并保持CAS#和WE#信号的逻辑低电平。存储器控制器11还使得“写”数据的接下来的两个字节(即,将被写到地址F8和F9的数据)放到数据线36上,如波形46的部分46J和46K所表示的。因此,在该实施例中,存储器控制器11通过NRI电路17避免了翻转地址线以及RAS#、CAS#和WE#。

在时钟周期C9,存储器控制器11将地址信号以及RAS#、CAS#、WE#和CS#信号保持在与时钟周期C8中相同的电平。但是,存储器控制器11使得“写”数据的接下来的两个字节(即,将被写到地址FA和FB的数据)放到数据线36上,如波形46的部分46L和46M所表示的。

对于时钟周期C10的大部分期间,存储器控制器11将地址信号以及RAS#、CAS#、WE#和CS#信号保持在与时钟周期C9中相同的电平。但是,存储器控制器11使得数据线36的驱动器进入高阻抗状态,如波形46的部分46N所指示的。此外,在时钟周期C10的末尾,存储器控制器11将使得地址以及RAS#、CAS#、WE#和CS#信号处于适合于将在时钟周期C11中执行的操作的电平。在时钟周期C10期间,RAS#、CAS#、WE#和CS#信号以及数据线36的驱动器的状态与传统的DDRSDRAM存储器控制器的状态类似。但是,地址信号搁置在第三个字的地址(即F8),而不是与在传统的DDR SDRAM存储器控制器中的情况一样处于空闲状态。

虽然上面描述了块写操作,但是存储器控制器11(通过NRI电路17)在块读操作期间在地址信号以及RAS#、CAS#和WE#的翻转数量的减少方面也获得了类似的效果。例如,除了WE#信号将反转以及DDRSDRAM 15A以外,在突发长度为四的块读操作期间的这些地址和控制信号的时序将基本上与图4的时序相同。

存储器控制器11可以实现为使用状态机或定序器来产生图4的时序。例如,用于产生这种实现的电路可以是一个或多个定制存储器控制器芯片的一部分,或者使用可编程逻辑设备、门阵列、专用集成电路(ASIC)等来实现。在一个实施例中,这种状态机或定序器直接产生地址信号和预选控制信号(例如RAS#、CAS#和WE#信号),使得当存储器控制器反断言CS#信号时,地址信号和预选控制信号在时钟周期期间不翻转。例如,状态机可以包括“新命令”信号,该信号当未被断言时使得地址和预选控制信号保持被搁置在它们当前的逻辑电平。这些地址和控制信号保持搁置,直到断言新的命令信号(例如当驱动新命令时)。

为了与图4对比,图5图示了在执行与图4所示相同的块写操作中传统的DDR SDRAM存储器控制器的时序。与存储器控制器11(图3)的时序不同,在时钟周期C3到C7期间,传统的存储器控制器翻转地址信号和RAS#、CAS#和WE#信号中的至少一部分信号,从而导致当执行相同的块写操作时比存储器控制器11消耗更多的功率。

图6图示了根据本发明一个实施例的存储器控制器11的示例性可替换实现。将该实施例实现为传统的存储器控制器的简单变形,其不需要改变用于产生地址和控制信号所使用的状态机或定序器。

存储器控制器11的该实施例包括定序器或状态机61、地址单元63和数据单元65,如在传统的存储器控制器中一样。此外,在该实施例中,存储器控制器11包括NRI电路17,其包括以CS#信号的下降沿为时钟信号的锁存或寄存器67。

存储器控制器11的该实施例的元件如下互连。寄存器67具有数据输入端,被连接用于接收由状态机61产生的地址信号以及RAS#、CAS#和WE#信号。此外,寄存器67具有连接到线31~34的数据输出端,用于向RAM 15(图3)分别提供地址信号以及RAS#、CAS#和WE#信号。地址单元63连接到总线18,用于从呼叫代理(例如图1的处理器13)接收地址。在一个实施例中,将地址单元63实现为用于将总线18的地址线有效连接到NRI电路17的开关或复用器。数据单元65连接在总线18的数据线与总线19的数据线之间。在一个实施例中,还将数据单元65实现为用于在总线18和总线19之间为数据有效提供传播路径的开关或复用器。

在存储器访问期间的操作中,当状态机61断言CS#信号时,寄存器67存储由状态机61在该时钟周期产生的地址、CAS#、RAS#和WE#信号的逻辑电平。这样,当反断言CS#信号时,寄存器67继续向总线19输出所存储的这些信号的逻辑电平。因此,在存储器访问操作期间,只有在断言CS#信号时地址信号以及CAS#、RAS#和WE#信号才会翻转。因此,例如,存储器控制器11的该实施例将使得块操作的时序与图4的时序图基本上类似。

虽然上述的实施例包括用于在未断言CS#信号的时钟周期期间搁置地址和预选控制信号的寄存器,但是其他实施例可以不使用由CS#信号提供时钟信号的寄存器来实现与产生具有合适时序的地址和预选控制信号的状态机61相类似的状态机。

此外,本发明的实施例不仅可以在半导体芯片内实现,而且可以在机器可读介质内实现。例如,可以将上述的设计存储在和/或嵌入在具有用于设计半导体设备的设计工具的机器可读介质中。例子包括具有VHSIC硬件描述语言(VHDL)、Verilog语言或SPICE语言格式的网表。一些网表的例子包括:行为级网表、寄存器传输级(RTL)网表、门级网表以及晶体管级网表。机器可读介质还包括具有例如GDS-II文件的布局信息的介质。此外,可以在仿真环境中使用网表文件或用于半导体芯片设计的其他机器可读介质,用于执行上述教导的方法。

这样,本发明的实施例可以用作或用于支持在某种形式的处理内核(例如计算机的CPU)上执行的软件程序,或者在机器可读介质上或其中实施或实现。机器可读介质包括用于以机器(例如计算机)可读的形式存储或传送信息的任何机制。例如,机器可读介质可以包括例如只读存储器(ROM);RAM;磁盘存储介质;光存储介质;以及闪存设备等。此外,机器可读介质可以包括例如电、光、声或其他形式传播信号的传播信号(例如载波、红外信号、数字信号等)。

在上面的说明中,已经参照本发明的特定示例性实施例描述了本发明。但是,很显然可以对其做出各种修改和改变而不脱离由所附权利要求给出的本发明的更宽的精神和范围。因此,应该将说明书和附图看作是说明性的而不是限制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号