CN1643481A - 数据处理系统的低功率系统和方法 - Google Patents

数据处理系统的低功率系统和方法 Download PDF

Info

Publication number
CN1643481A
CN1643481A CNA038066920A CN03806692A CN1643481A CN 1643481 A CN1643481 A CN 1643481A CN A038066920 A CNA038066920 A CN A038066920A CN 03806692 A CN03806692 A CN 03806692A CN 1643481 A CN1643481 A CN 1643481A
Authority
CN
China
Prior art keywords
bus
low
power
master controller
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA038066920A
Other languages
English (en)
Other versions
CN1324429C (zh
Inventor
威廉·C·莫耶
布赖恩·M·米勒
迈克尔·D·菲茨西蒙斯
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.)
Motorola Solutions Inc
NXP USA Inc
Original Assignee
Freescale Semiconductor 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 Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN1643481A publication Critical patent/CN1643481A/zh
Application granted granted Critical
Publication of CN1324429C publication Critical patent/CN1324429C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Bus Control (AREA)

Abstract

讨论识别低功率设备中的可恢复状态的系统和方法。具有仲裁器(110,310,或410)以批准系统总线访问到多个总线主控器的低功率设备(100,300,或400)被设置以启动低功率操作模式。低功率设备内的低功率控制器(150,350,或450)提供请求到总线仲裁器以启动低功率模式。总线仲裁器停止批准总线请求到总线主控器,并且识别系统总线何时处理完所有当前总线访问。当系统总线空闲时,总线仲裁器返回总线批准信号到低功率控制器。与总线主控器相关联的时钟被禁止以挂起总线仲裁器,并且允许较少的功率被低功率设备消耗。

Description

数据处理系统的低功率系统和方法
技术领域
本发明一般地涉及半导体器件,尤其涉及实现半导体器件的低功率模式的系统和方法。
背景技术
低功率便携式设备的使用变得日益常见。例如,手提式设备例如蜂窝式电话,个人数字助理(PDA),等等变得日益常见。许多微处理器设备已经设计具有一种或多种低功率状态,以便适应功率节约。通过节约功率,电池寿命可以延长,从而允许更长的手提式设备操作时间。
在现代微控制器和微处理器中实现低功率状态的一种方法是提供低功率指令。通过执行低功率指令,设备可以初始化关机序列,从而设备准备以这样一种方式关机,即它随后从低功率状态中的返回可以完成。例如,如果低功率微处理器在存储器访问周期期间关机,在外部设备例如存储器返回被请求数据之前禁止处理器将是可能的。如果当启动时处理器期望看到这些完成的周期,它将导致设备的锁住,因为它正在期待不会发生的存储器访问。但是,通过执行低功率指令,规定与处理器相关联的机器以这样一种方式关机是可能的,即它以已知的方式进入,并且随后退出低功率模式。
虽然许多微处理器内核支持低功率指令的使用以在已知条件下进入低功率状态,这种指令的使用,以及其他方法没有跨越所有微处理器内核而普遍可用。当期望在低功率设备中使用这种微处理器内核时,进入低功率操作模式的备选方法需要被定义。同样,总线主控器设备例如DMA单元和其他系统功能块可能不直接执行低功率模式指令,并且以类似透明的方式将这种设备置于低功率状态中也是低功率系统的需求。因此,以有效的方式进入低功率操作模式的能力将是有用的。
附图说明
本公开内容的具体实施方案在这里呈现的附图中显示和描述。当参考附随附图考虑下面的描述和权利要求时,本公开内容的各种目的、优点、特征和特性,以及其他方法、操作和相关结构元件的功能,以及部件的组合和制造的节约将变得明白。全部附随附图形成该说明书的一部分,并且其中:
图1是根据本发明的一种实施方案,说明具有由总线仲裁器控制的多个总线主控器的系统的框图;
图2是根据本发明的一种实施方案,表示图1的总线仲裁器的一部分的具体功能性的状态图;
图3是根据本发明的一种实施方案,实现图1的总线仲裁器的一部分的功能性的具体实施方案的另一个状态图;
图4是根据本发明的一种实施方案,说明具有多个总线主控器和一个总线仲裁器的系统的框图;
图5是根据本发明的一种实施方案,实现图4的总线仲裁器的另一种具体实施方案的状态图;
图6是根据本发明的一种实施方案,说明包括寄存器的图4低功率控制模块的特定部分的框图;
图7是根据本发明的一种实施方案,说明具有由总线仲裁器控制的多个总线主控器的系统的框图;
图8是根据本发明的一种实施方案,说明包括用于门控总线请求信号的逻辑的图7的总线仲裁器的一部分的框图;
图9是根据本发明的一种实施方案,说明具有多个总线主控器和总线多个仲裁器的系统的框图;
图10是根据本发明的一种具体实施方案,说明系统中的信号的时序图;以及
图11是根据本发明的一种具体实施方案,说明系统中的信号的另一个时序图。
具体实施方式
本发明的至少一种实施方案提供一种将设备置于低功率操作模式中的方法。低功率控制器提供总线请求到总线仲裁器以启动低功率模式。该请求被处以比由总线仲裁器接收的其他请求高的优先级。总线仲裁器停止应答来自连接的总线主控器的新的请求,并且等待直到系统总线已经完成处理当前的总线访问。一旦系统总线空闲,总线仲裁器应答低功率控制器总线请求,指示系统能够自由从事低功率操作模式。在一种实施方案中,与总线仲裁器相关联的总线主控器被挂起,以允许低功率消耗。在本发明的一种具体实施方案中,总线仲裁器返回总线批准信号到低功率控制器,以指示低功率控制器能够自由从事低功率操作模式。如此,也作为总线主控器的设备可以置于可恢复状态,其中这种设备容易通过总线仲裁器的帮助以安全的低功率模式关机。
图1说明低功率设备100的一部分。这种低功率设备的具体实例可以包括手提式个人数字助理,手提式通信设备,例如电话,收音机,和其他设备。低功率设备100包括总线仲裁器110,总线主控器120,总线主控器130,总线多路复用器140,低功率控制模块150,外围子系统160和存储器170。
总线仲裁器110提供下列信号:到总线主控器120的总线批准1(bus_grant1)和时钟允许1(clk_en1);到总线主控器130的时钟允许2(clk_en2)和总线批准2(bus_grant2);到总线多路复用器140的总线选择;以及到低功率控制模块150的低功率总线批准(dbus_grant)。总线主控器120提供下列信号:到连接到总线多路复用器140的双向总线176的地址1(addr1),数据1(data1),以及控制1;以及到总线仲裁器110的总线请求1(bus_req1)。总线主控器130提供下列信号:到总线多路复用器140之间的总线178的地址2,数据2,和控制2;以及到总线仲裁器110的总线请求2(bus_req2)。
与总线主控器120相关联并且与总线仲裁器110的第一端口112连接的握手控制171包括:总线请求1;响应总线请求1由总线仲裁器110提供的总线批准1(bus_grant1);以及,用来允许或禁止总线主控器120中时钟的时钟允许1(clk_en1)。类似地,与总线主控器130相关联并且与总线仲裁器110的第二端口113连接的握手控制172包括:总线请求2;响应总线请求2由总线仲裁器110提供的总线批准2(bus_grant2);以及,用来允许或禁止总线主控器130中时钟的时钟允许2(clk_en2)。总线多路复用器140提供信息到和从分别与总线主控器120和总线主控器130相关联的局部系统总线176和178的每个。另外,总线多路复用器140提供信息到和从系统总线179。低功率控制模块150提供低功率总线请求(dbus_req)到总线仲裁器110,并且提供功率模式标记(power_mode)到外围子系统160,和到低功率设备100的剩余部分。外围子系统160经由总线接口165连接到存储器170,并且提供低功率复位(lp reset)到低功率控制模块150。存储器170连接到系统总线179和经由总线接口165连接到外围子系统160。外围子系统160也连接到系统总线179。
操作中,低功率控制模块150启动低功率设备100的低功率模式。低功率控制模块150包括低功率控制寄存器152。在一种实施方案中,低功率控制模块150基于低功率控制寄存器152的值确定低功率设备100何时设置成低功率模式。当低功率设备100进入低功率模式时,低功率控制寄存器152被设置。例如,当用户没有激活用户接口例如键盘(没有显示)时,监控低功率设备100的用户活动的应用(没有显示)或外围子系统160的子系统可以设置低功率控制寄存器152。作为选择,当用于为低功率设备100提供动力的功率电池(没有显示)低时,低功率控制寄存器152可以被设置,允许低功率设备100置于低功率模式中。因此,可以给予用户时间以采取更换功率电池或备份期望数据所必需的措施。另外,在一些实施方案中,低功率控制寄存器152可以连接到系统总线179以允许通过总线传送访问低功率控制寄存器152。
一旦低功率控制模块150检测到低功率控制寄存器152已经被设置,低功率控制模块150可以提供低功率总线请求(dbus_req)到总线仲裁器110。低功率总线请求代表提供到总线仲裁器110的总线请求信号,其中请求不用于访问系统总线179,而是提供指示给总线仲裁器110。类似地,由总线仲裁器110提供的低功率总线批准信号用来应答低功率总线请求。在一种实施方案中,在声明低功率总线请求dbus_req到总线仲裁器110之后,低功率控制模块150等待来自总线仲裁器110的dbus_grant信号的接收。
当低功率控制模块150已经接收到dbus_grant信号时,低功率控制模块150可以提供功率模式标记以将低功率设备100的外围子系统160和其他部分置于低功率状态中。在一种实施方案中,低功率控制模块150应用设置以减少提供到外围子系统160的功率。在一种实施方案中,低功率控制模块150等待低功率复位信号(LP RESET),指示低功率设备100将脱离低功率模式而进入额定功率模式。因此,低功率控制模块150可以响应低功率复位信号使外围子系统160返回到正常操作模式。额定功率模式代表正常操作模式,其中低功率设备100的一般功能性可用。而且,当处于额定操作模式时,低功率设备100可以消耗正常量的功率,大于在低功率操作模式中消耗的功率量。应当理解,识别低功率模式的其他方法可以使用,而不背离本发明的范围。而且,低功率控制模块150可以采取其他方法来将低功率设备100置于在这里讨论的低功率模式中。另外,除了低功率复位(LP RESET)之外,指示低功率模式将退出的备选方法可以使用,而不背离本发明的范围或本质。
总线仲裁器110用来接收来自多个请求者,例如总线主控器120、总线主控器130和低功率控制模块150的请求,并且批准请求者,总线主控器120或130中的一个对系统总线179的访问。在一种实施方案中,总线仲裁器110利用仲裁程序来识别来自与总线主控器120相关联的第一端口112,或者与总线主控器130相关联的第二端口113的总线访问请求。例如,总线仲裁器110可以利用循环仲裁,其中总线仲裁器110在批准来自第一端口112或第二端口113的请求之间轮流。一旦端口被选择,第一端口112或第二端口113,总线仲裁器110提供总线批准信号,总线批准1或总线批准2,到相关联的总线主控器,例如分别为总线主控器120或总线主控器130。在一种实施方案中,总线主控器110也提供控制信号到总线多路复用器140以从分别与所选端口,第一端口112或第二端口113相关联的可用总线主控器,总线主控器120或总线主控器130中的一个接收信息,例如地址、数据和控制信号。总线主控器120和总线主控器130代表总线主控器设备。例如,总线主控器120和130可以包括内置于低功率设备100中的处理器,例如中央处理单元(CPU)。总线主控器120和130也可以包括直接存储器访问(DMA)引擎或其他处理器。
在一种实施方案中,总线仲裁器110包括低功率端口114以接收来自低功率控制模块150的低功率总线请求信号。总线仲裁器110可以将来自低功率控制模块150的请求看作附加请求者。例如,总线仲裁器110可以在通过第一端口112,第二端口113和低功率端口114接收的请求之间仲裁。在一种实施方案中,当总线仲裁器110接受低功率总线请求信号时,总线仲裁器110等待总线就绪信号。总线就绪信号是由系统总线179使用以指示系统总线179上挂起的请求何时处理完的信号。一旦总线就绪信号接收到,总线仲裁器110可以提供低功率总线批准信号到低功率控制模块150,指示低功率设备100可以设置在低功率模式中。
在说明的实施方案中,当总线仲裁器110提供低功率总线批准信号到低功率控制模块150时,总线仲裁器110也利用时钟允许信号,时钟允许1和时钟允许2,以禁止分别与总线主控器120和总线主控器130相关联的时钟。在一种实施方案中,一旦系统总线179已经处理完挂起的请求,总线主控器120和130被看作处于可恢复状态,因为总线主控器120和130没有等待来自系统总线179的响应。通过禁止到总线主控器120和130的时钟,总线仲裁器110可以保持总线主控器120和130在低功率操作期间处于可恢复状态。而且,总线仲裁器110可以启动一种操作模式,其中来自第一端口112和第二端口113的更多请求不被应答。总线仲裁器110可以等待直到低功率复位信号被声明以确定何时返回到正常操作模式。因此,当低功率复位信号被声明时,总线仲裁器110可以使用时钟允许1和时钟允许2信号来重新允许到总线主控器120和130的时钟,并且返回到在接受来自第一端口112和第二端口113的请求之间仲裁。
在备选实施方案中,总线仲裁器110可以不直接响应低功率复位信号LP RESET,而是代替地,可以简单地等待经由端口114的低功率总线请求的否定,以指示低功率操作模式不再期望,并且到正常模式的返回应当发生。
在一种实施方案中,总线仲裁器110还能够将接收的请求区分优先次序。例如,可能期望尽可能快地进入低功率模式。因此,总线仲裁器110可以不按顺序地处理来自低功率端口114的低功率总线请求,忽略来自总线主控器120和总线主控器130的新请求。通过将来自低功率控制模块150的低功率总线请求列入来自总线主控器120和130的总线访问请求的优先级之上,总线仲裁器110可以保证低功率模式快速地执行。优先级可以改变以适应低功率设备100的需求。例如,如果期望较不严格的低功率执行,通过低功率端口114接收的低功率总线请求可以列入来自总线主控器120的请求的优先级之下而列入来自总线主控器130的请求的优先级之上。作为选择,与低功率端口140相关联的优先级可以设置成固定的优先级。
总线多路复用器140用来将系统总线179与分别与总线主控器120和130相关联的局部总线176和178连接。在一种实施方案中,由总线多路复用器140选择的总线主控器通过由总线仲裁器110提供的总线选择信号来识别。例如,如果总线选择信号指示总线主控器120被选择,总线多路复用器140会将来自局部总线176的地址1,数据1和控制1信号线分别与系统总线179的系统地址,系统数据,和控制线连接。作为选择,如果总线选择信号指示总线主控器130被选择,总线多路复用器140可以将局部总线178的地址2,数据2和控制2线与系统总线179的系统地址,系统数据,和控制线连接。
系统总线179可以用来将总线主控器120和130与存储器170,外围子系统160,以及其他系统组件(没有显示)连接。因此,总线主控器120和130可以提供待写入到连接到系统总线179的低功率设备100的组件,例如存储器170和外围160的数据或者待从其中读出的数据。在一种实施方案中,沿着系统总线179发送的地址信息和数据被交错。在系统总线179的系统地址线上传送的地址指示来自系统总线179的系统数据线的下一组数据写入其中的总线地址。虽然数据在系统数据线上访问,新的地址可以放置在系统地址线上,以为新一组数据指示新地址。应当理解,沿着系统总线例如系统总线179传递地址信息和数据的其他形式可以包含,而不背离本发明的范围。
外围子系统160连接到系统总线179,并且可以通过总线接口165连接到存储器170。外围子系统160包括用于处理低功率设备100的横截面的几个组件。例如,第一子系统161可以用来为低功率设备100处理视频。第二子系统162可以用来为低功率设备100处理音频。另外,第三子系统163可以用来处理用户接口,例如到数字按键键盘的用户输入。子系统161到163可以响应由低功率控制模块150提供的低功率模式标记而置于功率下降模式。应当理解,并不是所有子系统都可以期望功率下降。例如,子系统163可以用来在低功率模式期间监控用户输入。因此,当用户试图访问低功率设备100时,例如通过在数字按键键盘上轻敲,第三子系统163可以声明低功率复位信号以将低功率设备100从低功率模式中恢复并且返回到额定操作模式。应当理解,除了关于外围子系统160讨论的那些之外,或者代替那些,其他子系统可以使用。而且,检测何时从低功率模式中返回的其他方法可以使用,而不背离本发明的范围。
现在参考图2,根据本发明的一种实施方案,代表图1的总线仲裁器一部分的具体功能性的状态图被显示,并且通常称作状态图200。总线仲裁器110(图1)识别当前的请求者,例如总线主控器120和130(图1),以批准总线访问给它。控制设备,例如低功率控制模块150(图1)看作附加的请求者。总线仲裁器110可以用来批准低功率设备的低功率执行,仅当低功率设备的系统总线上挂起的总线访问已经处理完时。在一种实施方案中,总线仲裁器根据仲裁程序,例如循环仲裁在与第一总线主控器相关联的第一端口和与第二总线主控器相关联的第二端口之间切换。低功率控制设备的请求被处以比来自总线主控器的请求高的优先级。因此,来自控制设备进入低功率模式的请求尽可能快地执行。
在一种实施方案中,当启动或复位时,例如根据系统复位信号(SYSTEM RESET)的声明,总线仲裁器经由路径211在状态210中开始。在状态210中,总线仲裁器允许第一端口,用于批准访问到第一总线主控器。如果总线访问的请求在状态210中在第一端口上挂起,总线仲裁器批准总线访问请求。如先前讨论的,为了批准请求到第一总线主控器,总线仲裁器声明到第一总线主控器的总线批准信号,并且提供总线选择信号到总线多路复用器,以将与第一总线主控器相关联的局部总线与系统总线连接。在一种实施方案中,总线仲裁器经由路径212保持在状态210中,同时总线就绪信号设置为关或‘0’值,指示系统总线忙于处理当前请求。作为选择,如果总线就绪信号设置为开状态,并且来自控制设备的低功率总线请求(DBUS_REQ)信号没有声明,总线仲裁器沿着路径214到达状态220。在状态220中,总线仲裁器允许第二端口,以批准访问到第二总线主控器。类似于状态210,如果来自第二总线主控器的请求在第二端口上,总线仲裁器批准该请求并且根据路径222保持在状态220,直到总线已经处理完请求。一旦总线就绪信号被声明,或者如果没有请求在第二端口上挂起,总线仲裁器可以根据路径224返回到状态210。因此,总线仲裁器可以在第一端口和第二端口之间切换,以循环方式处理可用请求,直到来自控制设备的低功率总线请求信号被声明。
当处于状态210和220时,如果来自控制设备的低功率总线请求被声明,并且总线就绪信号被声明,总线仲裁器分别经由路径216或路径226切换到状态240。当处于状态240时,总线仲裁器开始低功率模式的执行。在一种实施方案中,总线仲裁器能够禁止与总线主控器,例如第一和第二总线主控器相关联的时钟。总线仲裁器也可以提供请求批准信号(DBUS_GRANT)到控制设备,以指示总线主控器和低功率设备处于可恢复状态,并且控制设备可以将低功率设备的其他组件置于低功率模式中。总线仲裁器可以根据路径242保持在状态240中,直到低功率复位信号被声明。在一种实施方案中,低功率复位信号指示低功率设备将从低功率执行中恢复。如果低功率复位信号在状态240期间声明,总线仲裁器可以通过路径244返回到状态210,以继续在第一端口和第二端口之间仲裁。应当理解,在总线主控器和控制设备之间仲裁的其他方法可以实现而不背离本发明的范围。
现在参考图3,根据本发明的一种实施方案,代表图1的总线仲裁器一部分的具体功能性的另一个状态图被显示。与总线仲裁器相关联的不同端口用于处理不同总线主控器之间的请求,例如总线仲裁器110(图1)的端口112。特定总线端口可以保持在空闲状态260中,直到总线请求从相关总线主控器接收,或者指示低功率模式将启动的低功率总线请求被接收。
在一种实施方案中,总线端口在空闲状态260中开始处理或者例如根据复位信号(SYSTEM_RESET)的声明,经由路径264复位到空闲状态260。当处于空闲状态260中时,总线端口等待低功率总线请求信号或来自相关总线主控器的总线请求信号(BUS_REQ)的声明。如果总线请求信号没有声明,总线端口经由路径263保持在状态260中。如果总线请求信号被声明而低功率总线请求信号没有声明,总线端口通过路径262转变到状态270。在状态270中,总线端口等待来自总线仲裁器的批准信号。如果总线批准信号没有由仲裁器声明,总线端口根据路径275保持在状态270中。一旦总线批准信号被声明,总线端口声明总线批准信号到相关总线主控器。然后总线端口根据路径271转变到状态280。在状态280中,总线端口等待总线就绪信号,指示批准的总线请求已经完成。当总线就绪信号没有声明时,总线端口根据路径282保持在状态280中。当总线就绪信号被声明时,总线端口根据路径284转变回状态260。
如果低功率总线请求信号被声明而总线端口处于空闲状态260中,总线端口转变到低功率状态265。在低功率状态265中,总线端口去声明提供到相关总线主控器的时钟允许信号。因此,当总线端口处于状态265中时,与总线主控器相关联的时钟被禁止,允许总线主控器置于低功率模式中。当低功率复位信号(LP RESET)去声明并且处于‘0’或关状态时,总线端口根据路径266保持在低功率状态265中。当低功率复位信号被声明时,总线端口可以根据路径267转变回空闲状态260。因此,一旦总线端口已经转变回空闲状态260,时钟允许信号可以再次声明,使得相关总线主控器的时钟再次允许。
现在参考图4,根据本发明的一种实施方案,说明具有多个总线主控器和一个总线仲裁器的系统的框图被显示并且通常称作设备300。低功率设备300与图1的低功率设备100类似地操作。总线仲裁器310选择总线主控器120或总线主控器130中的一个以批准系统总线179的访问。低功率控制模块350启动低功率设备300的低功率模式。总线仲裁器310用来识别低功率设备300何时处于低功率操作模式的可恢复状态中。
低功率设备300和低功率设备100的操作之间的不同在与低功率控制模块150(图1)相比较低功率控制模块350,和与总线仲裁器110(图1)相比较总线仲裁器310的操作中指出。具体地,在时钟允许信号由总线仲裁器110提供以允许和禁止与低功率设备100中的总线主控器120和130相关联的时钟的情况下,是低功率控制模块350来提供低功率设备300中的时钟允许信号。
低功率控制模块350监控低功率控制寄存器352的设置。低功率控制寄存器352与低功率控制寄存器152(图1)类似地操作。外部组件设置低功率控制寄存器352的至少一部分,当确定低功率设备300将置于低功率操作模式中时。当低功率控制寄存器352被设置时,低功率控制模块350通过低功率端口314提供低功率总线请求信号到总线仲裁器310。低功率控制模块350等待来自总线仲裁器310的低功率总线批准信号。一旦接收到来自总线仲裁器310的低功率总线批准信号,低功率控制模块350通过时钟允许信号clk_en1和clk_en2禁止时钟和总线主控器120和130,如随后将讨论的。
在一种实施方案中,低功率控制模块350禁止总线主控器120和130中的时钟。作为选择,低功率控制模块350可以仅禁止总线主控器120或总线主控器130的一个中的时钟。例如,如果由总线主控器120执行的操作是关键的并且不应该在低功率模式期间禁止,低功率控制模块可以仅禁止与总线主控器130相关联的时钟。低功率控制模块350也可以提供功率模式标记到低功率设备300的外围子系统160和其他组件。因此,低功率设备300的外围子系统160和其他组件可以设置为低功率操作模式。应当理解,其他动作可以执行以将低功率设备300置于低功率操作模式中,而不背离本发明的范围。而且,禁止总线主控器120和总线主控器130的其他方法可以使用而不背离本发明的范围。
如先前讨论的,总线仲裁器310选择总线主控器120或总线主控器130中的一个以批准到系统总线179的访问。总线仲裁器310可以遵循仲裁技术来识别来自与总线主控器120相关联的第一端口312或者与总线主控器130相关联的第二端口313的请求。而且,总线仲裁器310可以选择处理通过低功率端口314来自低功率控制模块350的请求。在一种实施方案中,当总线仲裁器310识别到通过低功率端口314的低功率总线请求信号时,总线仲裁器310等待来自系统总线179的总线就绪信号声明。总线仲裁器310可以响应总线就绪信号的声明提供低功率总线批准信号到低功率控制模块350,指示所有挂起的请求已经由系统总线179处理并且低功率设备300处于用于进入低功率操作模式的可恢复状态中。
现在参考图5,根据本发明的一种实施方案,实现图4的总线仲裁器的具体实施方案的状态图被显示并且通常称作状态图250。总线仲裁器在允许与第一总线主控器相关联的第一端口,和与第二总线主控器相关联的第二端口之间切换。在说明的实施方案中,总线仲裁器利用循环仲裁在可用端口之间选择。
状态图250与图2的状态图200类似地操作。当低功率总线请求信号没有声明时,总线仲裁器在用来允许第一端口的状态210和用来允许第二端口的状态220之间切换。在一种实施方案中,当总线就绪信号和低功率总线请求信号都声明时,总线仲裁器从状态210或状态220分别经由路径231或路径233切换到总线230。在状态230中,总线仲裁器声明低功率总线批准信号以指示与总线仲裁器相关联的低功率设备处于可恢复状态并且可以置于低功率操作模式中。当处于状态230中时,总线仲裁器等待低功率复位信号声明。低功率复位信号指示与总线仲裁器相关联的低功率设备将返回到正常操作模式。当低功率复位信号设置成关状态或‘0’值时,总线仲裁器经由路径232保持在状态230中。作为选择,当低功率复位信号被声明时,总线仲裁器经由路径234返回到状态210,使得总线仲裁器在接受来自可用总线主控器中一个的请求之间仲裁。
现在参考图6,根据本发明的一种实施方案,说明图4的低功率控制模块350的特定部分的框图被显示并且通常称作框图360。框图360包括控制寄存器,低功率控制寄存器352,用于允许低功率设备例如图4的低功率设备300内的低功率操作。具体地,框图360可以用来声明和去声明由低功率控制模块350使用的时钟允许信号,时钟允许1(clk_en1)和时钟允许二(clk_en2),以使用与非门354和356允许和禁止总线主控器120和总线主控器130(图1)。
第一与非门354用来提供时钟允许1信号到总线主控器120。在操作中,当控制寄存器的低功率允许主控器1位361或者低功率总线批准信号处于关状态或设置为‘0’值时,与非门354提供声明的时钟允许1信号到总线主控器120,以允许与总线主控器120相关联的时钟。作为选择,当低功率允许主控器1位361和低功率总线批准信号都被声明或处于‘开’状态中时,与非门354将时钟允许1设置为关状态,禁止总线主控器120中的时钟。类似地,与非门356可以基于低功率控制寄存器352的低功率允许主控器2位362和低功率总线批准信号的值,通过声明或去声明时钟允许2信号来允许或禁止总线主控器130中的时钟。低功率复位位363由低功率复位信号的声明来设置。低功率复位信号由子系统例如低功率设备300的子系统163使用,以指示低功率设备300何时置回正常操作模式。应当理解,产生时钟允许信号,例如时钟允许1和时钟允许2的其他方法可以实现,而不背离本发明的范围。
现在参考图7,根据本发明的一种实施方案,说明具有由总线仲裁器控制的多个总线主控器的系统的框图被显示,并且通常称作低功率设备400。低功率设备400与低功率设备300类似地操作。总线仲裁器410识别低功率设备400可以置于低功率操作模式中的可恢复状态。总线仲裁器410提供低功率允许信号到低功率控制模块450,指示低功率模式已经启动。响应低功率允许信号(LP_ENABLE),低功率控制模块450可以禁止到总线主控器120和总线主控器130的时钟。
虽然在图4中低功率设备300(图4)的低功率控制模块350用来识别低功率模式何时启动,在图7中,是总线仲裁器410来识别低功率何时在低功率设备400中启动。总线仲裁器410在分别通过端口412和413批准总线请求到总线主控器120或总线主控器130之间选择。总线仲裁器410可以使用仲裁程序例如循环仲裁来选择批准来自端412或413的请求。在说明的实施方案中,总线仲裁器410包括低功率控制寄存器452。总线仲裁器410外部的、低功率设备400的组件或子系统可以将低功率控制寄存器452设置成特定的值,以指示低功率设备可以设置为低功率操作模式。作为选择,总线仲裁器410可以识别低功率模式何时应当启动。当低功率控制寄存器452已经设置时,总线仲裁器410等待低功率设备400处于可恢复状态中。在一种实施方案中,总线仲裁器410停止批准与总线主控器120和130相关联的总线请求,并且等待来自系统总线179的总线就绪信号的声明。如先前讨论的,总线就绪信号指示系统总线179已经完成处理所有挂起的总线请求。因此,低功率设备400可以置于关机或低功率模式中,而没有数据或未完成传送沿着系统总线179的损失。在说明的实施方案中,总线仲裁器410还提供低功率允许信号到低功率控制模块450。
低功率控制模块450提供时钟允许信号,时钟允许1和时钟允许2到总线主控器120和130。时钟允许信号用来允许和禁止与总线主控器120和130相关联的时钟。当低功率控制模块450接收来自总线仲裁器410的低功率允许信号(LP_ENABLE)时,低功率控制模块450可以去声明或者将时钟允许信号置于关状态中。因此,当低功率允许信号被声明时,低功率控制模块450可以禁止总线主控器120和130中的时钟。类似地,当低功率允许信号被声明时,低功率控制模块可以进一步提供功率模式标记到外围子系统160,指示子系统161-163可以置于关机或低功率操作模式中。低功率控制模块450也可以指示低功率设备400的其他部分低功率模式有效。
低功率复位信号可以用来将低功率设备400从低功率模式中唤醒。当较低功率复位信号声明时,低功率控制模块450可以通过再次声明时钟允许,时钟允许1和时钟允许2再次允许总线主控器120和130中的时钟。而且,低功率控制模块450可以更改功率模式标记的值以告知低功率设备400的外围子系统160和其他部分返回到正常操作模式。当低功率复位信号声明时,总线仲裁器410可以去声明低功率允许信号并且继续在端口412和端口413之间仲裁。
现在参考图8,根据本发明的一种实施方案,包括用于门控总线请求信号的逻辑的图7的总线仲裁器的一部分被显示。总线仲裁器410说明的部分包括低功率控制寄存器452,以指示低功率模式何时已经启动,AND门432以通过或阻塞与第一总线主控器例如总线主控器120相关联的请求,总线请求1(bus_req1),AND门431以通过或阻塞与第二总线主控器例如总线主控器130相关联的请求,总线请求2(bus_req2)。一组仲裁逻辑420用来选择由AND门432或AND门431通过的请求。总线仲裁器410说明的部分包括AND门435以声明低功率允许信号,指示设备例如低功率设备400可以置于低功率操作模式中。
在操作中,当低功率控制寄存器452的低功率位436声明时,AND门432和431阻塞请求,总线请求1和总线请求2。当低功率位436处于关状态时,AND门432和431通过请求,总线请求1和总线请求2。因此,仲裁逻辑420仅当低功率位436没有声明时能够接收总线请求。AND门435声明低功率允许信号,仅当总线就绪信号和低功率位436都声明时。如先前讨论的,总线就绪信号仅当系统总线例如系统总线179(图7)已经完成所有挂起的总线请求时才声明。
现在参考图9,根据本发明的一种实施方案,代表具有多个总线主控器和多个总线仲裁器的系统的框图被显示并且通常称作系统500。系统500包括提供请求到纵横开关510的第一总线主控器540和第二总线主控器530。纵横开关510处理到多个多路复用的系统总线中一个的请求,包括第一多路复用系统总线551,第二多路复用系统总线552和第n多路复用系统553,在一种实施方案中,纵横开关510包括连接到总线主控器540的局部系统总线545的第一总线路由器516和连接到第二总线主控器530的局部系统总线535的第二总线路由器517。总线路由器516和517通过包括第一仲裁器512,以及第二仲裁器513和第n仲裁器514的多个仲裁器中的一个处理接收的请求。多个仲裁器中的每个仲裁器与多个多路复用系统总线的多路复用系统总线相关联。低功率控制器520用来识别低功率模式何时启动,并且可以禁止与总线主控器530和540相关联的时钟以将总线主控器530和540置于低功率模式中。
纵横开关510处理从总线主控器540和530到相关系统总线的请求。第一总线路由器516识别与总线主控器540相关联的系统总线。在一种实施方案中,总线路由器516根据与来自总线主控器540的请求相关联的地址来识别相关系统总线。例如,第一块地址可以与第一多路复用系统总线551相关联,而第二块地址可以与第二多路复用系统总线552相关联。总线路由器516提供请求到与识别的多路复用系统总线相关联的仲裁器。例如,如果请求与第一多路复用系统551相关联,总线路由器516将请求提供到第一仲裁器512,并且如果请求与第二多路复用系统总线552相关联,总线路由器516将请求提供到第二仲裁器513。类似地,第二总线路由器517将从总线主控器530接收的请求提供到多个仲裁器的一个。仲裁器512到514每个在从总线路由器516和/或总线路由器517接收的请求中选择。一旦仲裁器,例如第一仲裁器512已经选择了请求,纵横开关510将请求提供到相关多路复用系统总线,例如第一多路复用系统总线551。在一种实施方案中,仲裁器512-514还能够接收来自低功率控制器520的请求。应当理解,虽然系统500描述具有两个总线主控器,总线主控器540和530,其他总线主控器可以被包括并且支持的总线主控器的数目可以更改,而不背离本发明的本质和范围。
低功率控制器520启动系统500内的低功率操作。在一种实施方案中,系统500的子系统能够声明与低功率控制器520相关联的信号或寄存器值,以指示低功率模式何时将启动。当低功率控制器520识别低功率模式将启动时,低功率控制器520提供总线请求到仲裁器512-514的每个。当来自低功率控制器520的总线请求已经接受时,总线仲裁器512-514返回总线批准信号BUS_GRANT 1,BUS_GRANT 2,和BUS_GRANT 3到低功率控制器520。总线批准请求指示与仲裁器512-514相关联的各个多路复用系统总线551-553已经处理所有挂起的请求。在一种实施方案中,低功率控制器520等待,直到来自所有仲裁器512-514的总线请求已经在启动低功率操作之前接收。一旦所有总线批准已经被接收,低功率控制器520去声明提供到总线主控器530和540的时钟允许信号,并且可以声明低功率状态标记POWER_MODE到系统500的部分。因此,仅当与总线主控器530和540以及多路复用系统总线551-553相关联的所有总线访问已经处理完时,低功率控制器520才能够禁止总线主控器530和540,允许系统500保持在用于启动低功率操作模式的可恢复状态中。本发明的备选实施方案可以禁止到总线主控器530和540的时钟,当来自仲裁器512-514的各个总线批准被接收时,在确定总线主控器530或540已经完成所有未完成的传送之后。
现在参考图10,说明本发明一种实施方案的具体操作的时序图被显示。在说明的实施方案中,两个总线主控器,CPU和次级、备选总线主控器(ALT)出现在系统例如低功率设备100(图1)中。CPU声明总线请求(CPU_BUSREQ)当它期望获得总线例如系统总线179(图1)的所有权时。总线仲裁器,例如总线仲裁器110(图1)声明总线批准信号(CPU_BUSGRANT)以批准总线的所有权给CPU。ALT总线主控器声明总线请求(ALT_BUSREQ)当它期望获得总线的所有权时。总线仲裁器声明总线批准信号(ALT_BUSGRANT)以批准总线的所有权给ALT总线主控器。CPU将执行到寻址单元ADDR A的读访问,继之以到寻址单元ADDR B的写访问。ALT将执行到寻址单元ADDR X的写访问,继之以到寻址单元ADDRY的读访问。
总线仲裁器借助于总线仲裁优先级机制来确定CPU和ALT访问共享系统总线的相对顺序。多种优先级方案是可用的,并且在本领域中众所周知,例如先来先服务,循环和固定优先级。本发明不依赖于特定的方案以在CPU和ALT总线主控器之间优先级排序,因此对于该实例,简单的固定方案被说明,其中ALT具有比CPU高的优先级。
根据本发明的一种实施方案,附加的请求输入LPWR_BUSREQ由低功率模式控制器(LPMC),例如低功率控制模块150(图1)提供到总线仲裁器。总线仲裁器提供附加的输出总线批准信号LPWR_BUSGNT到低功率模式控制器。低功率模式控制器提供一组输出信号POWER_MODE,以指示系统的当前操作模式。时钟允许信号被说明,其控制到CPU和ALT主控器的时钟产生。低功率操作通过否定到CPU的CPU时钟允许信号CPU_CLKEN和到ALT主控器的备选时钟允许信号ALT_CLKEN来支持。这些信号的否定使得这些单元的时钟产生被挂起,从而减少功率消耗。在说明的实例中,低功率操作模式将在由CPU和ALT主控器执行的访问之间启动。
在时钟周期1中,如由指示正常模式的功率模式信号POWER_MODE指示的,系统正在以正常操作模式操作。在时钟周期1的开始,CPU声明CPU_BUSREQ,指示它期望系统总线的所有权,声明CPU_TREQ信号以指示它正在开始传送,并且用与期望访问位置相对应的A1DR A来驱动CPU地址线CPU_ADDR。CPU_WRITE信号被否定,指示访问是读。因为ALT主控器在周期1中没有请求总线所有权,总线仲裁器批准总线所有权给CPU并且在周期1中声明CPU_BUSGNT。总线仲裁器通过控制信号ADDR_SEL选择CPU_ADDR和CPU_WRITE分别驱动到系统总线信号HADDR和HWRITE上。系统总线传送请求HTREQ被声明,指示传送正在系统总线上请求。因为没有其他访问未完成,传送开始,并且传送的地址相在周期1结束时完成。到位置ADDR A的传送的数据相在周期2中开始,并且HBUSY信号被声明以指示系统数据总线忙。在所示的实例中,单独的读和写数据总线被说明,虽然在备选实施方案中,单个双向数据总线可以使用。
系统读数据总线HRDATA在周期2中由与寻址单元ADDR A相对应的系统或设备,用与ADDR A相对应的数据来驱动。总线仲裁器已经驱动DATA_SEL信号以指示数据相属于CPU。来自HRDATA的数据通过CPU_RDATA信号提供到CPU。响应设备引起系统总线就绪信号HREADY的声明,以指示请求的数据已经被提供。在周期2结束时,到位置ADDR A的访问的数据相已经完成,并且CPU已经将读数据锁存在内部。在周期2期间,CPU继续声明CPU_BUSREQ,并且CPU已经请求到位置ADDR B的随后访问,已经驱动ADDR B到CPU_ADDR信号上,并且已经声明CPU_WRITE以指示请求的访问是写周期。同样在周期2期间,ALT主控器已经声明ALT_BUSREQ以指示它期望系统总线的所有权,并且已经声明ALT_TREQ以及用值ADDR X驱动ALT_ADDR,指示它正在请求执行到位置ADDR X的访问。ALT_WRITE也被声明,指示请求的访问是写。总线仲裁器接收CPU_BUSREQ和ALT_BUSREQ,并且确定ALT主控器将被批准系统总线的所有权。总线仲裁器否定CPU_BUSGNT,声明ALT_BUSGNT,并且改变ADDR_SEL信号以选择ALT_ADDR和ALT_WRITE信号分别驱动到系统总线信号HADDR和HWRITE上,从而将总线所有权给予ALT主控器,用于在周期2中开始的地址相,并且从CPU扣留地址总线所有权。HTREQ信号在周期2中保持声明,指示另一个系统总线传送正在请求。总线主控器驱动DATA_SEL信号以为当前数据相选择CPU,因为该数据相与CPU被批准总线所有权的先前地址相相关联。
在周期3期间,与位置ADDR X相对应的数据相发生,并且ALT主控器使用DATA X驱动ALT_WRDATA。总线仲裁器驱动DATA_SEL信号以选择ALT_WRDATA连接到系统写数据总线HWRDATA,从而提供DATA X到被访问设备以写入。HBUSY在周期3期间保持声明,指示系统数据总线忙。与寻址单元ADDR X相对应的被访问设备引起系统总线就绪信号HREADY的声明以指示写数据正在被接受。在周期3结束时,到位置ADDR X的访问的数据相完成。在周期3期间,CPU继续驱动CPU_BUSREQ,CPU_TREQ,和在CPU_ADDR上驱动ADDR B,以指示周期仍然被请求,以及系统总线所有权。ALT主控器也继续驱动ALT_BUSREQ,ALT_TREQ,和在ALT_ADDR总线上驱动ADDR Y,以指示周期仍然被请求,以及系统总线所有权。ALT_WRITE信号被否定,指示到ADDR Y的ALT主控器访问是读周期。在周期3中,低功率控制器声明LPWR_BUSREQ到总线仲裁器,准备进入低功率模式。根据本发明的一种实施方案,该请求被指定所有可能请求的最高优先级。LPWR_BUSREQ的声明使得仲裁器否定到所有其他请求者的总线批准,从而在周期3中,CPU_BUSGNT和ALT_BUSGNT被否定,指示CPU或ALT主控器都不被批准总线所有权。因为因总线所有权从请求总线主控器去除而没有地址相在周期3中启动,系统总线传送请求信号HTREQ在周期3中否定。系统地址总线HADDR不认为有效,因为没有传送被请求,虽然总线仲裁器可能默认地选择ALT_ADDR或者CPU_ADDR来驱动。因为系统数据总线在周期3中忙,具有到位置ADDR X的访问的数据相,HBUSY保持被声明。
在周期4中,HBUSY否定,指示系统数据总线现在空闲。在这一点上,总线仲裁器声明LPWR_GNT信号到低功率控制器,指示系统总线活动已经到达静止状态,从而现在进入低功率操作模式是安全的。时钟允许信号CPU_CLKEN和ALT_CLKEN随后在周期4中否定,以进一步引起CPU和ALT主控器的时钟被挂起,从而使得系统功率消耗达到最小。在周期5中,低功率控制器改变POWER_MODE信号以指示低功率SLEEP状态已经进入。当低功率模式控制器继续声明LPWR_BUSREQ时,低功率SLEEP状态保持有效,并且CPU_CLKEN和ALT_CLKEN保持否定以使得系统功率消耗达到最小。
一旦系统事件要求返回到正常操作模式,低功率控制器将否定到总线仲裁器的LPWR_BUSREQ。在图10中,这发生在时钟周期N期间。当LPWR_BUSREQ被否定时,总线仲裁器否定LPWR_BUSGNT,并且CPU和ALT主控器之间的仲裁重新开始。基于仲裁优先级,总线仲裁器在周期N中批准系统总线所有权给ALT主控器,并且相应地驱动ADDR_SEL,从而系统总线HADDR用ADDRY驱动,并且HWRITE被否定。HTREQ在周期N中被声明,指示新的系统总线传送正在被请求。在周期N和N+1期间,CPU继续驱动CPU_BUSREQ,CPU_TREQ,和在CPU_ADDR上驱动ADDR B,以指示周期仍然被请求以及系统总线所有权。在周期N+1中,ALT主控器否定ALT_BUSREQ和ALT_TREQ,指示系统总线的所有权不再期望,并且没有传送被请求。总线仲裁器否定ALT_BUSGNT并声明CPU_BUSGNT以将系统总线所有权递交给CPU。总线仲裁器驱动ADDR_SEL信号以将CPU_ADDR和CPU_WRITE信号分别连接到HADDR和HWRITE。HADDR用值ADDR B来驱动,并且HWRITE被声明,指示由CPU请求的访问是写周期。
在周期N+1期间,HBUSY被声明以指示系统数据总线忙于数据相。在周期N+1期间,读数据通过系统读数据总线HRDATA由与寻址单元ADDR Y相对应的设备返回,并且引起系统总线就绪信号HREADY的声明以指示读数据正在被提供,并且总线仲裁器驱动DATA_SEL以指示该数据相是ALT主控器的。ALT主控器在周期N+1中锁存返回的读DATA Y,并且在周期N+1结束时,到位置ADDR Y的访问的数据相完成。
在周期N+2期间,总线仲裁器驱动DATA_SEL以引起在CPU_WRDATA信号上提供的写数据连接到系统总线写数据信号HWRDATA。HBUSY在周期N+2期间保持声明以指示系统数据总线忙。与ADDR B相对应的被访问设备引起系统总线就绪信号HREADY的声明以指示写数据正在被接受。在周期N+2结束时,到位置ADDRB的访问的数据相完成。CPU否定CPU_TREQ和CPU_BUSREQ以指示不再有传送被请求,并且系统总线所有权不再期望。在周期N+3期间,HBUSY被否定,指示系统数据总线空闲。
总线仲裁操作和系统总线管制移交的其他实例在本领域中众所周知,并且给出的实例不打算将本发明的范围限制于显示的确切顺序或协议。通过作为与总线仲裁相关的备选总线主控器,低功率控制器可以保证向低功率模式的转变在适当的边界处实现,并且未完成的系统总线访问已经在允许低功率模式和执行CPU和备选主控器逻辑的时钟门控之前终止。
图10中显示的低功率仲裁操作的实例可以延伸到多个系统总线存在的系统,例如系统500(图9)。在这种环境中,低功率控制器,例如低功率控制器520(图5)将请求所有系统总线的所有权。随着当前总线活动完成,低功率控制器将最终被批准所有系统总线的所有权。该过程可能逐个发生或者可能同时发生,或者以任何组合发生。一旦所有系统总线的所有权完成,那么低功率控制器可以强制系统进入低功率模式。作为选择,低功率控制器可以将与给定系统总线相关联的块、单元,或元件置于低功率模式中,只要该特定总线的所有权已经被批准到低功率控制器。如果特定的块或单元与多个系统总线相关联,该块的低功率模式的进入将延迟,直到可以确定该块空闲,或者已经到达总线周期边界,使得没有未完成的总线访问存在于该块或单元。
现在参考图11,说明与本发明另一种实施方案相关联的信号时序的时序图被显示。在说明的实施方案中,三个系统总线存在,并且互连到两个总线主控器,CPU和ALT主控器。出于该实例的目的,CPU将执行到寻址单元ADDR A的读访问,继之以到寻址单元ADDR B的写访问。ALT将执行到寻址单元ADDR X的写访问,继之以到寻址单元ADDR Y的读访问。与每个系统总线相关联的总线仲裁器借助于总线仲裁优先级机制确定CPU和ALT访问各个系统总线的相对顺序。多种优先级方案是可用的,并且在本领域中众所周知,例如先来先服务,循环和固定优先级。本发明不依赖于特定的方案以在CPU和ALT主控器之间优先级排序,因此对于该实例,简单的固定方案被说明,其中ALT具有比CPU高的优先级。备选实施方案可以包括不同的优先级方案,并且可以包括对每个特定系统总线的不同方案。
在说明的实例中,CPU和ALT主控器通过全互连纵横开关,例如纵横开关510(图9)互连到系统总线1,2和3。在开关的每个系统总线输出处,控制逻辑接收CPU信号CPU_TREQ和CPU_ADDR,以及ALT主控器信号ALT_TREQ和ALT_ADDR。在本发明的一种实施方案中,每个系统总线对应于系统地址空间的特定部分。通过解码CPU_ADDR和ALT_ADDR的一部分,每个单独的系统总线连接确定CPU或ALT主控器当前请求的访问是否目标指向该特定系统总线。该解码方案为CPU和ALT主控器的“隐含”总线请求做准备,因为每个传送请求基于特定访问地址目标指向多个系统总线连接的一个。通过解码来自每个总线主控器的访问地址的一部分,对特定系统总线的请求正在执行的确定容易完成。当两个总线主控器在同一周期中表现出与同一系统总线端口相对应的访问请求时,请求之间的仲裁由每个系统总线仲裁器来执行。本发明的备选实施方案可以提供从每个总线主控器到多个系统总线仲裁器的每个的明确总线请求。
根据本发明的一种实施方案,附加的明确请求输入LPWR_BUSREQ由低功率模式控制器提供到多个系统总线仲裁器的每个。每个总线仲裁器提供附加的总线批准输出信号到低功率模式控制器。在说明的实例中,三个信号被提供:LPWR_BUSGNT1,LPWR_BUSGNT2,和LPWR_BUSGNT3,分别与系统总线1,2和3相对应。低功率模式控制器提供一组输出信号POWER_MODE,以指示系统的当前操作模式。时钟允许信号被说明,其控制到两个总线主控器,CPU和ALT主控器的时钟产生。低功率操作通过否定时钟允许信号,到CPU的CPU_CLKEN和到ALT主控器的ALT_CLKEN来支持。这些信号的否定使得这些单元的时钟产生被挂起,从而减少功率消耗。在说明的实例中,低功率操作模式将在由CPU和ALT主控器执行的访问之间启动。
在时钟周期1中,如由信号通知正常操作模式的功率模式信号POWER_MODE指示的,系统正在以正常操作模式操作。在时钟周期1的开始,CPU声明CPU_TREQ,指示它正在请求传送,并且用与期望访问位置相对应的ADDR A来驱动CPU_ADDR。CPU_WRITE被否定,指示访问是读。在该实例中,ADDR A对应于与系统总线1相关联的位置。同样在周期1中,ALT主控器声明ALT_TREQ以指示它正在请求传送,并且用与期望访问位置相对应的ADDR X驱动ALT_ADDR。ALT_WRITE被声明,指示访问是写。在该实例中,ADDR X对应于与系统总线2相关联的位置。因为ALT主控器在周期1中没有请求到系统总线1的总线传送,系统总线仲裁器1批准总线所有权给CPU,并且选择CPU_ADDR和CPU_WRITE驱动到系统总线1信号HADDR1和HWRITE1上。系统总线1传送请求HTREQ1被声明,指示传送正在系统总线1上被请求。因为没有其他访问未完成,传送开始,并且传送的地址相在周期1结束时完成。同样周期1中,系统总线仲裁器2批准总线所有权给ALT主控器,并且选择ALT_ADDR和ALT_WRITE驱动到系统总线2信号HADDR2和HWRITE2上。系统总线2传送请求HTREQ2被声明,指示传送正在系统总线2上被请求。因为没有其他访问未完成,传送开始,并且传送的地址相在周期1结束时完成。注意,因为由CPU和ALT主控器请求的访问是到与不同系统总线相对应的地址,这些访问同时执行。
系统总线1上到位置ADDR A的传送的数据相在周期2中开始,并且HBUSY1被声明以指示系统数据总线1忙。系统总线2上到位置ADDR X的传送的数据相在周期2中开始,并且HBUSY2被声明以指示系统数据总线2忙。在所示的实例中,单独的读和写数据总线被说明,虽然在备选实施方案中,单个双向数据总线可以使用。系统读数据总线1 HRDATA1在周期2中由与寻址单元ADDR A相对应的设备,用与ADDR A相对应的数据来驱动。来自HRDATA1的数据通过CPU_RDATA提供到CPU。响应设备引起系统总线1就绪信号HREADY1的声明,以指示请求的数据已经被提供,并且CPU_READY随后声明。
在周期2结束时,到位置ADDR A的访问的数据相已经完成,并且CPU已经将读数据锁存在内部。在周期2期间,系统写数据总线2HWRDATA2用来自ALT主控器的ALT_WRDATA总线、与寻址单元ADDR X相对应的写数据驱动。对于该传送,响应设备忙并且不能在周期2中完成写传送,因此响应设备引起系统总线2就绪信号HREADY2的否定,以指示写数据还没有接受。在周期2结束时,到位置ADDR X的访问的数据相将被延伸,因为它还没有完成。ALT_READY被否定以信号通知ALT主控器数据相必须被延伸。在周期2期间,CPU继续声明CPU_TREQ,以请求到位置ADDR B的随后访问,驱动ADDR B到CPU_ADDR信号上,并且已经声明CPU_WRITE以指示请求的访问是写周期。同样在周期2期间,ALT主控器已经声明ALT_TREQ并且用值ADDR Y驱动ALT_ADDR,指示它正在请求执行到位置ADDR Y的另一个访问。ALT_WRITE被否定,指示请求的访问是读。
在周期1和2期间,系统总线3保持空闲,因为没有到与其相对应的位置的访问被请求,如由否定的HBUSY3所指示的。应当注意,不是所有的系统总线3信号被显示,因为在该实例中,没有到它的访问被请求。在周期2中,低功率控制器期望将系统置于低功率模式中,并且声明LPWR_BUSREQ到系统总线仲裁器1,2,和3。系统总线仲裁器3接收LPWR_BUSREQ并且在周期2中声明LPWR_BUSGNT3,因为系统总线3当前空闲。因为低功率总线请求正在挂起,系统总线1和2传送请求信号HTREQ1和HTREQ2在周期2中由各自的系统总线控制器否定,以防止新的传送被启动。
在周期3中,系统总线1信号HBUSY1被否定,指示系统总线1现在空闲,并且系统总线1的总线仲裁器声明LPWR_BUSGNT1到低功率控制器,因为总线周期边界已经到达。同样在周期3中,系统总线2的HREADY2信号由与位置ADDR X相对应的设备声明,指示在周期1中启动的写周期现在正在完成。在周期4中,系统总线2变得空闲并且HBUSY2信号被否定。因为没有总线交易在处理中,系统总线2的总线仲裁器声明LPWR_BUSGNT2到低功率控制器。在这一点上,低功率控制器已经获得所有系统总线的总线所有权,指示系统总线活动已经到达静止状态,从而现在进入低功率操作模式是安全的。时钟允许信号CPU_CLKEN和ALT_CLKEN随后在周期4中否定,以进一步引起CPU和ALT主控器的时钟被挂起,从而使得系统功率消耗达到最小。在周期5中,低功率控制器改变POWER_MODE信号以指示低功率SLEEP状态已经进入。当低功率模式控制器继续声明LPWR_BUSREQ时,低功率SLEEP状态保持有效,并且CPU_CLKEN和ALT_CLKEN保持否定以使得系统功率消耗达到最小。
一旦系统事件要求返回到正常操作模式,低功率控制器将否定到所有系统总线仲裁器的LPWR_BUSREQ。在图11中,这发生在时钟周期N期间。当LPWR_BUSREQ被否定时,系统总线仲裁器1,2和3分别否定LPWR_BUSGNT1,LPWR_BUSGNT2,和LPWR_BUSGNT3,并且CPU和ALT主控器之间的仲裁重新开始。CPU和ALT主控器都具有挂起的访问请求(CPU_TREQ和ALT_TREQ都声明)。CPU正在请求到与系统总线2相对应的位置ADDR B的写,而ALT主控器正在请求到与系统总线1相对应的ADDR Y的读访问。因为没有冲突存在于到系统总线1和2的访问,访问都在周期N中开始。传送的剩余部分在周期N+1到N+3中显示,并且遵循先前描述的协议。
总线仲裁操作和系统总线管制移交的其他实例在本领域中众所周知,并且给出的实例不打算将本发明的范围限制于显示的确切顺序或协议。通过作为与总线仲裁相关的备选总线主控器,低功率控制器可以保证向低功率模式的转变在适当的边界处实现,并且多个系统总线上未完成的系统总线访问已经在允许低功率模式和执行CPU和备选主控器逻辑的时钟门控之前终止。虽然图11中的时钟门控显示在所有系统总线空闲之后发生,备选实施方案可能随着每个系统总线到达静止状态,将系统元件的子集置于时钟门控或其他低功率状态中。
在这里描述的系统可以是信息处理系统的一部分。术语“信息处理系统”指能够处理信息或将信息从一个源传送到另一个的任何系统。信息处理系统可以是单个设备例如计算机,手提式计算设备,例如个人数字助理(PDA),有线机顶盒,因特网能力的设备,例如蜂窝式电话等。作为选择,信息处理系统可以指这种设备的集合。应当理解,在这里描述的系统具有识别可恢复状态以在低功率设备中启动低功率操作模式的优点。
在实施方案的前面详细描述中,已经参考形成其一部分的附随附图,并且本公开内容可以实践于其中的具体实施方案通过说明在附随附图中显示。这些实施方案足够详细地描述,以使得本领域技术人员能够实践本公开内容,并且应当理解,其他实施方案可以使用并且可以做逻辑、机械和电的改变而不背离本公开内容的本质或范围。为了避免对使得本领域技术人员能够实践本公开内容不必要的细节,描述可能省略本领域技术人员已知的某些信息。而且,包括公开内容的讲授的许多其他变化的实施方案容易由本领域技术人员构造。因此,本公开内容不打算限制于这里陈述的具体形式,而相反,它打算包括如可以合理地包括于本公开内容的本质和范围内的这种更改、修改和等价物。因此,先前的详细描述不是在限制的意义上进行的,并且本公开内容的范围仅由附加权利要求来定义。

Claims (10)

1.一种方法,包括步骤:
确定进入低功率模式;
响应进入低功率模式的确定提供总线请求到仲裁器(110,310,或410);以及
响应总线请求禁止提供到与仲裁器相关联的第一总线主控器(120或130)的至少一部分的第一时钟。
2.根据权利要求1的方法,还包括响应总线请求禁止提供到与仲裁器相关联的第二总线主控器的至少一部分的第二时钟的步骤。
3.根据权利要求1的方法,还包括接收与总线请求相关联的总线批准信号的步骤。
4.根据权利要求3的方法,其中禁止第一时钟的步骤响应接收总线批准信号的步骤而执行。
5.根据权利要求3的方法,还包括响应接收总线批准信号的步骤,除了第一总线主控器之外,减少到系统第一部分的功率的步骤。
6.一种系统,包括:
指示功率模式的寄存器(152,352,或452);
仲裁器(110,310或410),连接到寄存器以监控功率模式并且当较低功率模式被指示时,防止处理与第一总线主控器和第二总线主控器中至少一个相关联的总线请求,其中较低功率模式不同于额定功率模式。
7.根据权利要求6的系统,其中当较低功率模式被识别时,所述仲裁器处理低功率总线请求,并且在低功率总线请求产生之后防止处理所述总线主控器总线请求中至少一个。
8.根据权利要求6的系统,其中所述仲裁器禁止提供到第一总线主控器和第二总线主控器中至少一个的至少一部分的时钟信号。
9.一种系统,包括:
多个交换系统总线(179);
第一总线主控器(120或130);
第二总线主控器(120或130);
多个仲裁器(110,310,或410),一个与多个交换系统总线的每一个相关联;
控制模块(150,350,或450)以:
识别功率模式;
当功率模式低于额定功率模式时,提供总线请求到多个仲裁器的子集;
接收来自多个仲裁器的所述子集、与总线请求相关联的总线批准;
禁止与第一总线主控器或第二总线主控器中至少一个相关联的时钟。
10.根据权利要求9的系统,其中所述控制模块还用来基于所述总线批准的接收,提供信号以指示低功率模式。
CNB038066920A 2002-03-08 2003-03-05 数据处理系统的低功率系统和方法 Expired - Fee Related CN1324429C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/094,053 US7155618B2 (en) 2002-03-08 2002-03-08 Low power system and method for a data processing system
US10/094,053 2002-03-08

Publications (2)

Publication Number Publication Date
CN1643481A true CN1643481A (zh) 2005-07-20
CN1324429C CN1324429C (zh) 2007-07-04

Family

ID=27804245

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038066920A Expired - Fee Related CN1324429C (zh) 2002-03-08 2003-03-05 数据处理系统的低功率系统和方法

Country Status (8)

Country Link
US (1) US7155618B2 (zh)
EP (1) EP1483652A2 (zh)
JP (1) JP2006508409A (zh)
KR (1) KR20040091705A (zh)
CN (1) CN1324429C (zh)
AU (1) AU2003218021A1 (zh)
TW (1) TWI295781B (zh)
WO (1) WO2003077094A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101506675B (zh) * 2006-08-08 2011-11-30 飞思卡尔半导体公司 实时时钟监控方法及系统
CN101299165B (zh) * 2007-05-01 2012-08-22 辉达公司 用于实施通用系统停顿的方法和系统
CN104769567A (zh) * 2012-12-26 2015-07-08 英特尔公司 用于单向传输信息的互连
CN114925004A (zh) * 2022-07-19 2022-08-19 中科声龙科技发展(北京)有限公司 轮询仲裁器及其轮询仲裁方法和芯片

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039736B2 (en) * 2003-01-15 2006-05-02 Hewlett-Packard Development Company, L.P. Systems and methods for accessing bus-mastered system resources
US7000131B2 (en) * 2003-11-14 2006-02-14 Via Technologies, Inc. Apparatus and method for assuming mastership of a bus
US7337338B2 (en) * 2004-01-16 2008-02-26 Dell Products L.P. Information handling system capable of operation in reduced power states
US7181188B2 (en) * 2004-03-23 2007-02-20 Freescale Semiconductor, Inc. Method and apparatus for entering a low power mode
KR100630693B1 (ko) * 2004-07-28 2006-10-02 삼성전자주식회사 소비 전력을 절감시키는 버스 중재 시스템 및 방법
KR101145542B1 (ko) * 2004-10-27 2012-05-15 엘지전자 주식회사 전원관리 장치 및 방법
US20060149977A1 (en) * 2004-12-31 2006-07-06 Barnes Cooper Power managing point-to-point AC coupled peripheral device
TW200700973A (en) * 2005-06-28 2007-01-01 Via Tech Inc Power management method for connecting with central processing unit of a plurality of host bridges
JP2007058279A (ja) * 2005-08-22 2007-03-08 Oki Electric Ind Co Ltd パワーダウン移行システム
US7472299B2 (en) * 2005-09-30 2008-12-30 Intel Corporation Low power arbiters in interconnection routers
TW200721013A (en) * 2005-11-25 2007-06-01 Via Tech Inc Power source management apparatus of multi-processor system and method thereof
CN100456211C (zh) * 2007-03-19 2009-01-28 中国人民解放军国防科学技术大学 基于请求的低功耗指令存储器
US8255708B1 (en) 2007-08-10 2012-08-28 Marvell International Ltd. Apparatuses and methods for power saving in USB devices
JP2009122922A (ja) * 2007-11-14 2009-06-04 Panasonic Corp データ処理装置
JP2010232895A (ja) * 2009-03-26 2010-10-14 Fuji Xerox Co Ltd 通信制御装置及び情報処理装置
US8578384B2 (en) * 2009-10-28 2013-11-05 Freescale Semiconductor, Inc. Method and apparatus for activating system components
JP5775398B2 (ja) * 2011-08-25 2015-09-09 ルネサスエレクトロニクス株式会社 半導体集積回路装置
US20130117593A1 (en) * 2011-11-07 2013-05-09 Qualcomm Incorporated Low Latency Clock Gating Scheme for Power Reduction in Bus Interconnects
US8941427B2 (en) 2011-12-15 2015-01-27 Freescale Semiconductor, Inc. Configurable flip-flop
US8587356B2 (en) 2011-12-15 2013-11-19 Freescale Semiconductor, Inc. Recoverable and reconfigurable pipeline structure for state-retention power gating
JP5805546B2 (ja) * 2012-01-13 2015-11-04 ルネサスエレクトロニクス株式会社 半導体装置
GB201211340D0 (en) * 2012-06-26 2012-08-08 Nordic Semiconductor Asa Control of semiconductor devices
GB2583629B (en) * 2012-07-17 2021-06-09 Milwaukee Electric Tool Corp Universal protocol for power tools
JP6056363B2 (ja) * 2012-10-12 2017-01-11 株式会社ソシオネクスト 処理装置及び処理装置の制御方法
US9000805B2 (en) * 2013-01-29 2015-04-07 Broadcom Corporation Resonant inductor coupling clock distribution
JP6774160B2 (ja) * 2013-12-06 2020-10-21 キヤノン株式会社 情報処理装置、並びに、データ転送装置の制御方法
CN111093452A (zh) 2017-07-05 2020-05-01 米沃奇电动工具公司 用于电动工具之间的通信的适配器
US11011053B2 (en) 2018-07-31 2021-05-18 Tti (Macao Commercial Offshore) Limited Systems and methods for remote power tool device control

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US42147A (en) * 1864-03-29 Improvement in the manufacture of bar-links
US4514728A (en) * 1980-02-25 1985-04-30 At&T Bell Laboratories Store group bus allocation system
US4907150A (en) * 1986-01-17 1990-03-06 International Business Machines Corporation Apparatus and method for suspending and resuming software applications on a computer
CA2282912C (en) * 1989-06-30 2000-09-12 John P. Fairbanks Computer power management system
US6163848A (en) * 1993-09-22 2000-12-19 Advanced Micro Devices, Inc. System and method for re-starting a peripheral bus clock signal and requesting mastership of a peripheral bus
DE69433906T2 (de) 1993-09-22 2005-07-21 Advanced Micro Devices, Inc., Sunnyvale Vorrichtung und Verfahren zur Steuerung eines Peripheriebustaktsignals
US5471625A (en) * 1993-09-27 1995-11-28 Motorola, Inc. Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode
US5625807A (en) * 1994-09-19 1997-04-29 Advanced Micro Devices System and method for enabling and disabling a clock run function to control a peripheral bus clock signal
US6070275A (en) * 1994-11-04 2000-06-06 Med-Assist Technology, Inc. Portable urine holding system
KR0135904B1 (ko) * 1994-12-30 1998-06-15 김광호 중앙처리장치의 버스 미사용시 전력소모 방지장치 및 그 방법
US5790609A (en) * 1996-11-04 1998-08-04 Texas Instruments Incorporated Apparatus for cleanly switching between various clock sources in a data processing system
US6070215A (en) 1998-03-13 2000-05-30 Compaq Computer Corporation Computer system with improved transition to low power operation
US6769046B2 (en) * 2000-02-14 2004-07-27 Palmchip Corporation System-resource router
US6633987B2 (en) * 2000-03-24 2003-10-14 Intel Corporation Method and apparatus to implement the ACPI(advanced configuration and power interface) C3 state in a RDRAM based system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101506675B (zh) * 2006-08-08 2011-11-30 飞思卡尔半导体公司 实时时钟监控方法及系统
CN101299165B (zh) * 2007-05-01 2012-08-22 辉达公司 用于实施通用系统停顿的方法和系统
CN104769567A (zh) * 2012-12-26 2015-07-08 英特尔公司 用于单向传输信息的互连
US9766683B2 (en) 2012-12-26 2017-09-19 Intel Corporation Interconnect to communicate information uni-directionally
CN104769567B (zh) * 2012-12-26 2018-10-19 英特尔公司 用于单向传输信息的互连
CN114925004A (zh) * 2022-07-19 2022-08-19 中科声龙科技发展(北京)有限公司 轮询仲裁器及其轮询仲裁方法和芯片
CN114925004B (zh) * 2022-07-19 2022-10-21 中科声龙科技发展(北京)有限公司 轮询仲裁器及其轮询仲裁方法和芯片

Also Published As

Publication number Publication date
KR20040091705A (ko) 2004-10-28
WO2003077094A2 (en) 2003-09-18
WO2003077094A3 (en) 2004-05-21
US7155618B2 (en) 2006-12-26
JP2006508409A (ja) 2006-03-09
AU2003218021A1 (en) 2003-09-22
TWI295781B (en) 2008-04-11
US20030172310A1 (en) 2003-09-11
TW200400435A (en) 2004-01-01
CN1324429C (zh) 2007-07-04
EP1483652A2 (en) 2004-12-08

Similar Documents

Publication Publication Date Title
CN1324429C (zh) 数据处理系统的低功率系统和方法
US8291244B2 (en) Power management in a data processing device having masters and slaves
US7231534B2 (en) Method and apparatus for improving bus master performance
US9535860B2 (en) Arbitrating memory accesses via a shared memory fabric
RU2608000C2 (ru) Представление фильтрации наблюдения, ассоциированной с буфером данных
JP5584821B2 (ja) 低電力メモリアクセスのためのバスアービトレーションの方法
US20070038829A1 (en) Wait aware memory arbiter
TW200844750A (en) Direct memory access controller
CN1037982A (zh) 在有仲裁的80386/82385微机系统运行中80386对系统总线的抢用
WO2016105864A1 (en) Power management in an uncore fabric
GB2537855A (en) Controlling transitions of devices between normal state and quiescent state
US7552268B2 (en) Method for improving bus utilization using predictive arbitration
JPH06324996A (ja) 集積回路およびプログラマブル・マルチ・プロセッサ割り込みコントローラ・システム
JP5932261B2 (ja) メモリ制御装置、メモリ制御方法
EP3238085B1 (en) Virtual legacy wire
US20200065274A1 (en) Always-on ibi handling
US7634672B2 (en) Power saving method of central processing unit
JP3713488B2 (ja) コンピュータシステム及びその動作制御方法
JP2003099149A (ja) 省電力インターフェース装置
JP2000259548A (ja) Dmaバス転送方式
US20060069838A1 (en) Method and apparatus for connecting an additional processor to a bus with symmetric arbitration
JPH0991246A (ja) バス制御装置及びその方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee