CN107924218A - 用于多处理器系统的方法和装置 - Google Patents
用于多处理器系统的方法和装置 Download PDFInfo
- Publication number
- CN107924218A CN107924218A CN201680043148.0A CN201680043148A CN107924218A CN 107924218 A CN107924218 A CN 107924218A CN 201680043148 A CN201680043148 A CN 201680043148A CN 107924218 A CN107924218 A CN 107924218A
- Authority
- CN
- China
- Prior art keywords
- voltage
- state
- nap
- stablizer
- cpu
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000014759 maintenance of location Effects 0.000 claims abstract description 12
- 230000007958 sleep Effects 0.000 claims abstract description 9
- 238000006243 chemical reaction Methods 0.000 claims description 15
- 230000001052 transient effect Effects 0.000 claims description 13
- 230000009467 reduction Effects 0.000 claims description 8
- 230000000087 stabilizing effect Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- 230000005059 dormancy Effects 0.000 claims description 2
- 238000004590 computer program Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 17
- 230000009471 action Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 6
- 230000005611 electricity Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 102100036285 25-hydroxyvitamin D-1 alpha hydroxylase, mitochondrial Human genes 0.000 description 1
- 101000875403 Homo sapiens 25-hydroxyvitamin D-1 alpha hydroxylase, mitochondrial Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Abstract
本发明描述了用于多处理器系统的方法、系统和计算机程序产品。所述多处理器系统包括多个中央处理器(central processing unit,CPU)内核。所述多个CPU内核的每一个用于在多个CPU状态中的至少一个状态下运行。所述多个CPU状态包括低电压记忆保持(low‑voltage memory retention,NAP)状态、活动状态和关闭状态。所述NAP状态包括保持状态记忆的睡眠状态。所述多处理器系统还包括用于向所述多个CPU内核提供NAP电压的稳压器。所述NAP电压足以使所述多个CPU内核的至少一个保持状态信息,并且所述NAP电压低于活动状态电压。所述多处理器系统还包括多个状态控制开关。所述多个状态控制开关中的每一个将所述稳压器连接到所述多个CPU内核中的一个。
Description
交叉申请
本申请要求2015年7月22日递交的发明名称为“用于多处理器系统的方法和装置(METHOD AND APPARATUS FOR A MULTIPLE-PROCESSOR SYSTEM)”的第14/806,547号美国非临时专利申请案的在先申请优先权,该在先申请的全部内容以引用的方式并入本文本中。
技术领域
本发明涉及通信系统中的数据传输,更具体地,涉及一种支持低电压记忆保持(low-voltage memory retention,NAP)状态的多处理器系统。
背景技术
在某些情况下,多处理器系统可以是包括两个或多个独立处理单元的计算组件。这些处理单元可以称为“内核”、“中央处理器(Central Processing Unit,CPU)”或“CPU内核”。这些处理单元可以读取和执行程序指令。程序指令可以包括添加、移动数据以及分流。在某些情况下,多处理器系统可以同时运行多个指令,以提高程序的整体执行速度。在某些情况下,用户设备可以使用多处理器系统进行高性能低功耗操作。例如,用户设备可以使用包括4个或8个内核的MP系统。
发明内容
本发明涉及用于多处理器系统的方法、系统和计算机程序产品。所述多处理器系统包括多个中央处理器(central processing unit,CPU)内核。所述多个CPU内核的每一个用于在多个CPU状态中的至少一个状态下运行。所述多个CPU状态包括低电压记忆保持(low-voltage memory retention,NAP)状态、活动状态和关闭状态。所述NAP状态包括保持状态记忆的睡眠状态。所述多处理器系统还包括用于向所述多个CPU内核提供NAP电压的稳压器。所述NAP电压足以使所述多个CPU内核的至少一个保持状态信息,并且所述NAP电压低于活动状态电压。所述多处理器系统还包括多个状态控制开关。所述多个状态控制开关中的每一个将所述稳压器连接到所述多个CPU内核中的一个。
本发明还公开了一种用于在多处理器系统中提供状态转换的方法,其中所述多处理器系统包括多个中央处理器(central processing unit,CPU)内核。所述方法包括:在活动状态下运行所述多处理器系统的第一CPU内核,其中所述第一CPU内核用于在多个CPU状态中的一个状态下运行,所述多个CPU状态包括低电压记忆保持(low-voltage memoryretention,NAP)状态、活动状态和关闭状态,所述NAP状态包括保持状态记忆的睡眠状态;从稳压器接收NAP电压,其中,所述NAP电压足以使所述第一CPU内核保持状态信息,并且所述NAP电压低于活动状态电压,所述稳压器用于向所述多处理器系统的所述多个CPU内核提供NAP电;响应于接收到所述NAP电压,将所述第一CPU内核从所述活动状态转换到所述NAP状态。
本发明还公开了一种用户设备(user equipment,UE)。所述UE包括:包括多个中央处理器(central processing unit,CPU)内核的多处理器系统,其中所述多个CPU内核中的每一个用于在多个CPU状态中的至少一个状态下运行,所述多个CPU状态包括低电压记忆保持(low-voltage memory retention,NAP)状态、活动状态和关闭状态,其中所述NAP状态包括保持状态记忆的睡眠状态;稳压器,用于向所述多个CPU内核提供NAP电压,其中所述NAP电压足以使所述多个CPU内核中的至少一个保持状态信息,并且所述NAP电压低于活动状态电压;多个状态控制开关,其中所述多个状态控制开关中的每一个将所述稳压器连接到所述多个CPU内核中的一个。
本方面的其它实施方式包括对应的用户设备、装置、计算机实施方法以及记录在一个或多个计算机存储设备上的计算机程序,每种实施方式用于执行所述方法中的动作。一个或多个计算机的系统可以用于通过将软件、固件、硬件或者软件、固件或硬件的组合安装到系统上来执行特定操作或动作,所述软件、固件、硬件或者软件、固件或硬件的组合在运行中会促使所述系统执行所述动作。一个或多个计算机程序可以用于通过包括指令来执行特定操作或动作,所述指令在由数据处理装置执行时会使所述装置执行所述动作。
本说明书的主题的一种或多种实施方式的细节会在附图和下文的描述中阐述。本主题的其它特征、方面和优点将从描述内容、附图和/或权利要求中显而易见。
附图说明
图1为根据一实施方式的具有多个稳压器的多处理器(multiple-processor,MP)系统的高级架构框图。
图2为根据另一实施方式的具有多个稳压器的MP系统的高级架构框图。
图3为根据一实施方式的使用一个稳压器为多个中央处理器(centralprocessing unit,CPU)内核提供电压的MP系统的高级架构框图。
图4为根据一实施方式的使用两个稳压器为四CPU内核提供输入电压的MP系统的高级架构框图。
图5为根据一实施方式的在big.LITTLE架构中实施的MP系统的高级架构框图。
图6A为根据一实施方式的包括数字NAP状态控制器的MP系统的高级架构框图。
图6B为根据一实施方式的示出示例SMP-ASMP状态转换过程的高级框图。
图7为根据一实施方式的在CPU内核之间访问高速缓存数据的MP系统的高级架构框图。
图8A为根据一实施方式的在不同状态之间转换的MP系统的高级架构框图。
图8B为根据一实施方式的示出从活动状态转换到低电压记忆保持(low-voltagememory retention,NAP)的过程的时序图。
图8C为根据一实施方式的示出从NAP状态转换到活动状态的过程的时序图。
图9为根据一实施方式的示出在CPU状态之间转换的过程的图表。
图10为根据一实施方式的示出MP系统中的CPU状态转换的示例方法的流程图。
各附图中的相同参考编号和标号表示相同的元件。
具体实施方式
呈现以下详细描述以使得本领域技术人员能够制作、使用和/或实践所公开的主题,并且在一个或多个特定实施方式的上下文中提供。所属领域的技术人员将容易明白对公开的实施方式进行的各种修改,而且在不脱离本发明的范围的情况下,本文所述的一般原理可适用于其它实施方式和应用。因此,本发明并非旨在限于本文描述的实施方式,而是被赋予根据本文所揭示的原理和特征的最大范围。
在某些情况下,用户设备(user equipment,UE)可以包括多处理器(multiple-processor,MP)系统。在某些情况下,多处理器系统的CPU内核可能在不同的CPU状态下运行。例如,CPU内核可以在活动状态下运行。在活动状态期间,CPU内核可以执行一个或多个程序功能。在某些情况下,将活动状态电压提供给在活动状态下运行的CPU内核。在某些情况下,可以使用动态电压频率缩放(dynamic voltage frequency scaling,DVFS)技术向在活动状态下运行的CPU内核提供活动状态电压。在DVFS方案中,可以根据CPU内核正在执行的任务负载向CPU内核提供动态的电压范围。例如,如果任务负载高,则活动状态电压可以处于或接近动态范围的最高点。如果任务负载低,则活动状态电压可以处于或接近动态范围的最低点。在某些情况下,具有不同输入电压的CPU内核也称为电源域。
在某些情况下,CPU内核也可能处于关闭状态。在关闭状态期间,CPU内核的电源输入可能会关闭。因此,在关闭状态下,CPU内核的输入电压可能处于或接近于0,并且CPU内核的状态信息可能会丢失。CPU内核的状态信息可以包括逻辑状态、晶体管状态、存储器状态或其组合。在关闭状态下运行CPU内核可以减少漏电并提高系统的电池性能。因此,在某些情况下,多处理器系统可能会在活动状态下运行某些CPU内核,并在关闭状态下运行某些CPU内核。多处理器系统可以基于系统的当前任务负载来确定在关闭状态下运行的CPU内核的数量。然而,由于在关闭状态下丢失了状态信息,所以将CPU内核从关闭状态切换到活动状态的唤醒时间可能很长。例如,唤醒时间可以包括启动CPU内核、重新加载状态信息和打开时钟的时间。因此,如果系统的任务负载明显增加,则系统的延迟也可能增加。
在某些情况下,CPU内核可以在低电压记忆保持(low-voltage memoryretention,NAP)状态下运行。在某些情况下,NAP状态可以是保持CPU内核的状态信息的睡眠状态。在某些情况下,可以将NAP电压提供给在NAP状态下运行的CPU内核。NAP电压可能低于活动状态电压,因此会减少CPU内核漏电。NAP电压也可以足够高以使CPU内核保持状态信息。因此,将CPU内核从NAP状态切换到活动状态的唤醒时间可能很短。在某些情况下,唤醒时间可以包括打开时钟的时间。
在某些情况下,UE可以在ANDROID操作系统(operation system,OS)中运行。在这些或其它情况下,多处理器系统中的CPU内核可以在以下4个状态中的一个状态下运行:C0、C1、C2和C3。C0是活动状态。在C0下运行的CPU内核正在执行指令,而在C1下运行的CPU内核未执行指令,但是可以立即执行。在C2下运行的CPU内核停止时钟。在C3下运行的CPU内核断电并且不同步。在某些情况下,在C2下运行的CPU内核可以在NAP状态下运行,在NAP状态下,提供NAP电压并保持状态信息。在C3下运行的CPU内核可以处于关闭状态。或者或另外,在C3下运行的CPU内核可以在NAP状态下运行,在NAP状态下,提供NAP电压并保持状态信息。
下面进行一般描述,UE可以指移动电子设备、用户设备、移动台、用户台、便携式电子设备、移动通信设备、无线调制解调器或无线终端。UE的示例(例如,UE 102)可以包括蜂窝电话、个人数字助理(personal data assistant,PDA)、智能手机、笔记本电脑、平板电脑(personal computer,PC)、寻呼机、便携式计算机、便携式游戏机、可穿戴电子设备或其它具有用于通过无线通信网络传送语音或数据的组件的移动通信设备。无线通信网络可以包括授权频谱和未授权频谱中的至少一种频谱上的无线链路。
UE的其它示例包括移动电子设备和固定电子设备。UE可以包括移动设备(MobileEquipment,ME)器件和可移动存储器模块,例如包括用户身份模块(Subscriber IdentityModule,SIM)应用、全球用户身份模块(Universal Subscriber Identity Module,USIM)应用或可移动用户身份模块(Removable User Identity Module,R-UIM)应用的通用集成电路卡(Universal Integrated Circuit Card,UICC)。术语“UE”还可以指可以终止用户的通信会话的任何硬件或软件组件。此外,术语“用户设备”、“UE”、“用户设备器件”、“用户代理”、“UA”、“用户器件”和“移动设备”可以在本文中同义使用。
在某些情况下,可以使用稳压器来向CPU内核提供活动状态电压。在某些情况下,稳压器可以在与CPU内核不同的芯片中实施。在某些情况下,可以使用多个稳压器来为MP系统中的多个CPU内核提供输入电压。图1为根据一实施方式的具有多个稳压器的MP系统100的高级架构框图。如图所示,MP系统100包括8个内核102a至102h和8个稳压器106a至106h。如图所示,每个稳压器与相应的内核耦合。在某些情况下,内核102a至102h和稳压器106a至106h可以在同一芯片上实施。例如,内核102a至102h和稳压器106a至106h可以在单个集成电路管芯上实施或在单个芯片封装中的多个管芯上实施。在某些些实施方式中,稳压器可以根据相应的CPU内核所运行的状态提供不同的电压电平。例如,如果内核102a在NAP状态下运行,则对应的稳压器106a可以向内核102a提供NAP电压。在某些情况下,稳压器可以包括旁路模式。在旁路模式中,稳压器的输出电压电平可以与输入电压电平相同,例如与如图1所示的VDD相同。稳压器可以使用旁路模式向相应的CPU内核提供活动状态电压。
图2为根据另一实施方式的具有多个稳压器的MP系统200的高级架构框图。如图所示,MP系统200包括4个内核202a至202d和4个稳压器206a至206d。如图所示,每个稳压器与相应的内核耦合。因此,每个稳压器可以向相应的内核提供电压。每个内核还与相应的开关一起耦合到电压源。在某些实施方式中,如果内核,例如图2所示的内核202a,在NAP状态下运行,则相应的开关,例如图2所示的S1,转到断开位置。在这种情况下,相应的稳压器,例如图2所示的稳压器206a,可以向内核202a提供处于NAP状态电压电平的输出电压,例如图2所示的VR1_OUT。如果内核在活动状态下运行,则相应的开关可以转到闭合位置。因此,电压源可以向内核提供活动状态电压电平,例如图2所示的VDD_IN。
在某些情况下,使用多个稳压器为CPU内核提供输入电压会增加MP系统的硬件开销。硬件开销增加可能会提高实施复杂度和成本,特别是对于在同一芯片上实施的MP系统来说,在同一芯片上实施的MP系统的可用占用空间是有限的。
在某些情况下,可以使用稳压器来向两个或更多CPU内核提供NAP电压。例如,多处理器系统可以包括至少两个中央处理器(central processing unit,CPU)内核。至少两个CPU内核中的每一个用于在多个CPU状态中的至少一个状态下运行。多个CPU状态包括低电压记忆保持(low-voltage memory retention,NAP)状态、活动状态和关闭状态。NAP状态包括保持状态记忆的睡眠状态。多处理器系统还包括用于向至少两个CPU内核提供NAP电压的稳压器。NAP电压对应于NAP状态电压。多处理器系统还包括多个开关。多个开关中的每一个将稳压器连接到至少两个CPU内核中的一个。
在某些情况下,多处理器系统包括数字NAP状态控制器,该数字NAP状态控制器用于向稳压器提供控制信号并控制输出状态转换序列。控制信号配置稳压器的输出状态。输出状态表示至少两个CPU内核的组合CPU状态。输出状态转换序列包括不同的组合CPU状态之间的转换。在某些情况下,输出状态从一组缩减的组合CPU状态中选择。
在某些情况下,稳压器和至少两个CPU内核在同一芯片上实施。在某些情况下,稳压器是一种低压差稳压器(low-dropout-voltage-regulator,LDO)。在某些情况下,稳压器是一种无电容稳压器。在某些情况下,稳压器用于向第一和第二CPU内核提供旁路电压,旁路电压对应于瞬态电压。
在某些情况下,多处理器系统在4核架构或8核架构中实施。在某些情况下,多处理器系统在big.LITTLE架构中实施。多处理器系统包含至少两个大型CPU内核和至少两个小型CPU内核。在某些情况下,稳压器用于向至少一个大型CPU内核和至少一个小型CPU内核提供NAP电压。在某些情况下,稳压器用于向至少两个大型CPU内核提供NAP电压,并且多处理器系统还包括附加稳压器,用于向至少两个小型CPU内核提供NAP电压。在某些情况下,多处理器系统可以在ANDROID操作系统(operation system,OS)中运行。在某些情况下,多处理器系统包括动态对称多处理(symmetric multiprocessing,SMP)-非对称多处理(asymmetric multiprocessing,ASMP)交换系统。在某些情况下,多处理器系统包括SMP。在某些情况下,多处理器系统包括ASMP。
在某些情况下,本文所述的MP系统可以提供一种或多种优势。例如,使用一个稳压器为多个CPU内核提供输入电压可以减少MP系统的开销,从而降低系统的实施复杂度。此外,使用数字NAP状态控制器还可以减少唤醒时间并提高多处理器系统的速度性能。另外,使用提供旁路电压的稳压器可以在状态转换期间降低多处理器系统中的瞬态噪声。其它优点对于本领域普通技术人员将显而易见。
图3是根据一实施方式的使用一个稳压器器为多个CPU内核提供电压的MP系统300的高级架构框图。MP系统300包括内核302a至302c。如图所示,内核302a至302c分别与头开关304a至304c耦合。MP系统300还包括稳压器306,稳压器306通过状态控制开关308a至308c向内核302a至302c提供电压。
内核302a至302c中的每一个可以包括一个或多个处理组件(或者称为“处理器”或“中央处理器”(central processing unit,CPU)),用于结合本文公开的一种或多种实施方式执行与上述过程、步骤或动作中的一个或多个相关的指令。在某些实施方式中,内核302a至302c可以用于执行添加、移动数据和分流等程序指令。在某些实施方式中,内核302a至302c可以用于生成UE控制信息,例如测量报告,或者响应接收的信息,例如来自网络节点的控制信息。内核302a至302c还可以用于做出无线电资源管理决定,例如小区选择/重选信息或触发UE的测量报告。
如前所述,内核302a至302c中每一个可以在一种CPU状态下运行。CPU状态可以包括关闭状态、活动状态或NAP状态。在某些情况下,内核302a至302c中的每一个可以从一种CPU状态切换到另一种CPU状态。内核302a至302c可以在相同的CPU状态下或不同的CPU状态下运行。
头开关304a至304c包括用于将内核302a至302c与电源电压VDD连接的任何电子电路元件。在某些情况下,如图所示,头开关304a至304c可以使用分布式头开关来实施。或者或组合地,头开关304a至304c可以使用块头开关来实施。在某些情况下,例如当内核在活动状态下运行时,可以闭合关联的头开关。因为电源电压VDD被提供给头开关,所以当头开关闭合时,内核的输入电压可以等于VDD。
在某些情况下,VDD由电源管理集成电路(power management integratedcircuit,PMIC)芯片提供。在某些情况下,PMIC可以在与MP系统300相同的芯片上实施。或者,PMIC可以在与MP系统300不同的芯片上实施。在某些情况下,PMIC可以将VDD设置为在活动状态下运行的内核的电压电平。在某些情况下,内核可以使用DVFS在活动状态下运行,因此,VDD可以设置在DVFS范围内。
如图所示,MP系统300包括稳压器306。稳压器306用于向内核302a至302c提供电压VR_OUT。在某些情况下,将VR_OUT设置为内核在NAP状态下运行的保持级别。在某些实施方式中,保持级别可能远低于VDD,但仍然足以使内核保持其对逻辑和记忆状态的记忆。
在某些情况下,稳压器306可以使用LDO来实施。LDO是一种直流(direct current,DC)线性稳压器。在某些情况下,当LDO接收到的输入电压接近于输出电压时,LDO可用于调节输出电压。使用LDO可以降低切换噪声和系统占用空间以及复杂度。或者,稳压器306可以使用其它交流(alternating current,AC)或DC稳压器来实施。
在某些情况下,稳压器306和内核302a至302c可以在同一芯片上实施。例如,稳压器306和内核302a至302c可以在单个集成电路管芯上实施,或实施到单个芯片封装中的多个管芯上。该方法可以节省MP系统300的占用空间积并提高系统性能。在某些情况下,稳压器306可以使用无电容LDO来实施。无电容LDO可以是不包括外部电容器的LDO。例如,稳压器306可以不连接到稳压器306所在的芯片外部的另一电容器。使用无电容LDO还可以减少MP系统300的占用空间。
如图所示,MP系统300包括状态控制开关308a至308c。状态控制开关308a至308c包括用于将内核302a至302c与稳压器306相连的任何电子电路元件。在操作中,当内核在NAP状态下运行时,可以闭合关联的状态控制开关。当状态控制开关闭合时,内核的输入电压可以等于VR_OUT。在某些情况下,VR_OUT远低于由VDD提供的DVFS范围的下限。因此,可以大大减少漏电。另一方面,VR_OUT可以等于或高于在内核中保持状态信息所需的保持电压电平。因此,当状态控制开关308a至308c闭合时,可以保持内核302a至302c的状态信息。
例如,当内核302a在活动状态下运行时,头开关304a闭合,状态控制开关308a断开。输入电压VDD_INT1等于VDD。当内核302a在NAP状态下运行时,头开关304a断开,状态控制开关308a闭合。输入电压VDD_INT1等于VR_OUT。当内核302a在关闭状态下运行时,关联的头开关304a和关联的状态控制开关308a都断开,并且VDD_INT1等于0。
在某些情况下,稳压器306可以包括旁路模式。在旁路模式期间,稳压器306可以向内核302a至302c提供旁路电压。在某些情况下,旁路电压可能设置为VDD。图8A至图8C和关联描述提供了这些实施方式的更多细节。
在某些情况下,稳压器306可以用于在示例配置下运行。示例配置可包括以下示例参数:电流约为10mA至600mA、电压输入约为0.6V至0.8V、电压输出约为0.8V至1.1V、最小压差约为100mV、电压输出精度约为5%、电源抑制比约为40至45、稳定时间约为0.1us、输出电容约为1nF、瞬态电流约为50mA/50ns、等等。在某些情况下,稳压器306可以使用阻容性(resistive-capacitive,RC)延迟慢启动技术来实施。在某些情况下,稳压器306可以使用优化的16nm FinFet晶体管来实施。
在某些情况下,如图3所示,MP系统300可以在对称多处理(symmetricmultiprocessing,SMP)配置下运行。在SMP系统中,内核302a至302c可以使用相同的时钟频率和相同的电压源来运行。例如,电源电压VDD可为内核302a至302c所共有。在某些情况下,MP系统300可以在非对称多处理(asymmetric multiprocessing,ASMP)配置下运行。在ASMP系统中,内核302a至302c可以使用不同的时钟频率、不同的电压源或其组合来运行。例如,可以将电源电压VDD1提供给耦合到内核302a的头开关304a,而可以将不同的电源电压VDD2提供给分别耦合到内核302b至302c的头开关304b至304c。因此,在活动状态下运行的内核302b至302c可以具有与在活动状态下运行的内核302a不同的电压电平。
在某些情况下,MP系统300可以在动态SMP-ASMP切换配置下运行。在动态SMP-ASMP切换配置中,MP系统300可以在SMP模式与ASMP模式之间切换,在SMP模式中提供给内核302a至302c的电源电压是相同的,在ASMP模式中提供给内核302a至302c的电源电压是不同的。在某些情况下,动态SMP-ASMP切换系统可以为MP系统300提供有效的电源管理方案来执行具有不同处理负载的应用。
在某些情况下,可以使用多个稳压器为MP系统提供输入电压。图4是根据一实施方式的使用两个稳压器为四CPU内核提供输入电压的MP系统400的高级架构框图。如图所示,MP系统400包括内核402a至402d和稳压器406a至406b。如图所示,内核402a至402d分别与头开关S1至S4耦合。稳压器406a通过状态控制开关L1S1和L1S2分别向内核402a至402b提供NAP电压。稳压器406a通过状态控制开关L2S1和L2S2分别向内核402c至402d提供NAP电压。
图5为根据一实施方式的在big.LITTLE架构中实施的MP系统500的高级架构框图。在某些情况下,可以使用big.LITTLE架构来实施MP系统。big.LITTLE架构是一种包括不同类型的CPU内核的异构计算架构。不同类型的CPU内核可以包括一个大型CPU内核,这是一种高性能的CPU内核。大型CPU内核可以提供强大的计算性能,但是功率消耗级别也高。不同类型的CPU内核还可以包括一个小型CPU内核,这是一种低性能的CPU内核。小型CPU内核可以具有更高的能效,但是提供的计算性能有限。使用big.LITTLE架构可以使MP系统能够动态地调整计算需求,并且仅使用比时钟缩放更少的功率。big.LITTLE架构的示例包括ARMbig.LITTLE架构。
参考图5,MP系统500包括大型内核502a至502d、小型内核504a至504d和稳压器506a至506b。如图所示,大型内核502a至502d分别与头开关S1至S4耦合。大型内核502a至502d可以形成一个集群。小型内核504a至504d分别与头开关S5至S8耦合。小型内核504a至504d可以形成另一个集群。如图所示,稳压器(例如稳压器506a)可以通过状态控制开关L1S1至L1S4分别向大型内核502a至502d提供NAP电压。另一个稳压器(例如稳压器506b)可以通过状态控制开关L2S1至L2S4分别向小型内核504a至504d提供NAP电压。
或者或组合地,一个稳压器可以向大型内核和小型内核提供NAP电压。例如,稳压器506a可以通过状态控制开关L1S1和L1S2分别耦合到大型内核502a和小型内核504a。在本示例中,稳压器506a可以向大型内核502a和小型内核504a提供NAP电压。
在某些情况下,稳压器可以在多个状态下运行。每个状态可以对应于由稳压器提供NAP电压的内核的组合CPU状态。例如,如果内核可以在活动状态、NAP状态和关闭状态中的任何一个状态下运行,则CPU状态的数量为3。如果稳压器向3个内核提供NAP电压,则可以存在27个组合CPU状态,每个状态代表3个内核的CPU状态的置换。每个组合CPU状态对应于由稳压器提供的输出电压的组合。下文提供了这些状态的示例表示。
例如,我们用S表示关闭状态,用N表示NAP状态,用A表示活动状态。对于3核MP系统,组合CPU状态的示例可以表示为“ANN”,其中“ANN”表示内核1在活动状态下,内核2和内核3在NAP状态下。组合CPU状态的其它示例可以包括“AAN”、“NSS”等。
当MP系统以turbo模式运行时,组合CPU状态可以是“AAA”。如果内核使用DVFS,则内核的VDD可以设置在DVFS范围的最高值。当MP系统以双处理器模式运行时,组合CPU状态可以是“AAS”,或者在某些情况下,为了省电和快速恢复操作,可以是“ANS”或“NNS”。
在某些情况下,稳压器的状态可以由软件控制。或者或另外,稳压器的状态和输出电压可以由数字NAP状态控制器等硬件来控制。图6A为根据一实施方式的包括数字NAP状态控制器的MP系统600的高级架构框图。
如图所示,MP系统600包括内核602a至602d和稳压器606。如图所示,内核602a至602d分别与头开关S1至S4耦合。稳压器606通过状态控制开关L1S1至L1S4分别向内核602a至602b提供NAP电压。
MP系统600还包括数字NAP状态控制器610。数字NAP状态控制器610表示可以用于向稳压器606、状态控制开关L1S1至L1S4、头开关S1至S4或其组合提供控制信号的一个或多个硬件电路元件。控制信号基于内核602a至602d的组合CPU状态来配置稳压器606的输出电压和状态控制开关L1S1至L1S4的断开/闭合位置。在一个示例中,内核602a至602d的组合CPU状态是“ANNS”。在该示例中,内核602b至602c在NAP状态下运行。因此,控制信号可以将状态控制开关L1S2和L1S3配置为处于闭合位置,将头开关S2至S3配置为处于断开位置,并且稳压器606向内核602b至602c提供NAP电压。内核602a在活动状态下运行。控制信号可以将状态控制开关L1S1配置为处于断开位置,将头开关S1配置为处于闭合位置。内核602d在关闭状态下运行。控制信号可以将状态控制开关L1S4和头开关S4配置为处于断开位置。
数字NAP状态控制器610包括有限状态机(finite state machine,FSM)612、定时器614和配置/状态寄存器616。FSM 612表示可以用于对两者之间存在定时延迟的控制信号进行排序的一个或多个硬件电路元件。在某些情况下,使用FSM可以提高处理速度并且减少软件或操作系统的干预。在超时等例外情况下,FMS可能会引起CPU内核中断。
在某些情况下,数字NAP状态控制器610可以在组合CPU状态的状态转换期间提供控制信号。例如,控制信号可以为在状态之间切换的内核配置瞬态状态操作。在瞬态操作期间,稳压器606可以在短时间内向内核提供旁路电压,并且关联的状态控制开关可以从闭合位置变为断开位置,或者从断开位置变为闭合位置。在某些情况下,FSM 612可以接收指示当前和下一个组合CPU状态的输入信号。FSM 612可以基于当前和下一个组合CPU状态向稳压器602和关联的状态控制开关提供控制信号,以便进行稳态配置和瞬态操作。图8A至图8C和关联描述提供了瞬态操作提供的更多细节。
定时器614表示一个或多个硬件电路元件,这些硬件电路元件可以用于设置与上述状态转换相对应的定时间隔。定时器614可以向FSM 612提供定时信息。配置/状态寄存器616表示可以用于设置数字NAP状态控制器610的功能的一个或多个硬件电路元件、软件或其组合。在某些情况下,配置/状态寄存器616可用于报告数字NAP状态控制器610的状态。
使用硬件实施方式,例如上述数字NAP状态控制器,来向稳压器提供控制信号可以提供快速的切换性能。在某些情况下,硬件实施方式的切换性能可以比使用软件实施方式快约10倍。在为NAP状态提供快速唤醒时间时,由硬件实施方式提供的低切换延迟可能很重要,其中低切换延迟可近似于100至200个时钟周期。
在某些情况下,一些内核602a至602d可能不支持NAP状态。在这些或其它情况下,数字NAP状态控制器610可以包括两个FSM。一个FSM可用于为支持NAP状态的内核提供控制信号。另一个FSM可用于为不支持NAP状态的内核提供控制信号。
在某些情况下,FSM,例如,FSM 612,可以用于支持动态SMP-ASMP切换。图6B为根据一实施方式的示出示例SMP-ASMP状态转换过程630的高级框图。该过程在状态632下启动,在状态632下,FSM以SMP模式运行。当接收到SELECT_ASMP_MODE等切换命令时,FSM进入状态634(ASMP_CLK_WU),在状态634下,通过ASMP时钟使能信号来启动和激活ASMP时钟,并对ASMP时钟进行预热。在预定的预热时间段之后,用于不同CPU内核的运行电压源可以增加到预定的最大电压电平,例如VDD_MAX。预定的最大电压电平可以等于或大于MP系统中的可以在ASMP模式下运行的任何CPU内核的最高电压电平。
过程630从状态634切换到状态636(SMP_ASMP_CLK_SWITCH),在状态636下,时钟切换信号是确定的,并且CPU内核和关联的存储器的时钟从SMP时钟信号切换到ASMP时钟信号。
过程630从状态636切换到状态638(V_SMP_ASMP_RAMP_DN),在状态638下,每个CPU内核的运行电压源可以从预定最大电压电平下降到相应CPU内核的运行电压。过程630从状态638切换到状态640,在状态640下,FSM在ASMP模式下运行。
当接收到SELECT_ASMP_MODE_unasserted等切换命令时,过程630进入状态642(SMP_CLK_WU),在状态642下,通过SMP时钟使能信号来启动和激活SMP时钟,并对SMP时钟进行预热。在预定的预热时间段之后,用于不同CPU内核的运行电压源可以增加到预定的最大电压电平,例如VDD_MAX。在某些情况下,预定的最大电压电平可以等于或大于MP系统中的可以在ASMP模式下运行的任何CPU内核的最高电压电平。在某些情况下,如果V_SMP大于VDD_MAX,则用于不同CPU内核的运行电压源可以进一步增加到SMP模式的运行电压电平,例如V_SMP。
过程630从状态642切换到状态644(ASMP_SMP_CLK_SWITCH),在状态644下,时钟切换信号是确定的,并且CPU内核和关联的存储器的时钟从ASMP时钟信号切换到SMP时钟信号。
过程630从状态644切换到状态646(V_ASMP_SMP_RAMP_DN),在状态646下,如果V_SMP小于VDD_MAX,则用于CPU内核的运行电压源可以降低到V_SMP。过程630从状态646切换到状态632,在状态632下,FSM在SMP状态下运行。
或者或组合地,可以使用一个不同于FSM 612的FSM来支持上述ASMP-AMP切换的状态转换。
在某些情况下,可以减少组合CPU状态以简化数字NAP状态控制器610的实现。例如,可以使用一组缩减的组合CPU状态。该缩减的组可以排除重复置换。例如,3个内核可能有27个组合CPU状态。缩减的组可以包括8个组合CPU状态。以下是3个CPU内核的示例性缩减的CPU状态的列表:“AAA”、“AAN”、“AAS”、“ANN”、“ANS”、“ASS”、“NSS”、“SSS”。
图7为根据一实施方式的在CPU内核之间访问高速缓存数据的MP系统700的高级架构框图。在某些情况下,一个CPU内核可以访问存储在另一个CPU内核的缓存中的数据。在所示示例中,MP系统700包括内核702a至702c和通过开关S1向内核702a提供NAP电压的稳压器706。内核702a包括缓存704。缓存704表示用于存储数据的硬件、软件或其组合。
在所示示例中,内核702b和702c在活动状态下运行。内核702a在关闭状态下运行,两个开关S1和S2都断开。在操作中,内核702b尝试访问内核702a上的缓存704以读取或写入数据。在某些情况下,可以闭合开关S2,使得内核702a可以转换到供内核702b访问缓存704的活动状态。或者,开关S1可以闭合,而开关S2保持断开。在这种情况下,稳压器706可以向内核702a提供旁路电压。旁路电压可以处于或接近于活动状态电压。内核702a可以在瞬态下运行,内核702b可以在内核702a未完全转换到活动状态的情况下访问缓存704。在这种情况下使用旁路电压可以为内核702b访问缓存704上的数据提供较短的延迟。在某些情况下,延迟可能会减少到大约100个时钟周期。图8A至图8C和相关描述提供了瞬态操作的更多细节。
图8A为根据一实施方式的在不同状态之间转换的MP系统810的高级架构框图。如图所示,MP系统810包括内核802a至802n和稳压器806。稳压器806向内核802a至802n提供NAP电压。在某些情况下,稳压器806还在状态转换期间向内核802a至802n提供旁路电压。在转换期间使用旁路电压可以降低由到内核802a至802n的输入电压的波动产生的瞬态噪声。
图8B为根据一实施方式的示出从活动状态转换到NAP状态的过程的时序图820。如图8B所示,在转换之前,S1断开,S2闭合;因此,内核802a在活动状态下运行。S3闭合,内核802b在NAP状态下运行。到内核802a的输入电压V1为1.2V,该电压对应于活动电压。稳压器806的输出电压为0.6V,该电压对应于NAP电压。当内核802a切换到NAP状态时,在第一过渡期T1期间,S1切换到闭合位置,而S2保持闭合。在T1期间,稳压器806提供旁路电压。在某些情况下,旁路电压可以接近于或等于活动电压。在所示示例中,旁路电压为1.2V。因此,在T1期间,V1保持在1.2V,而V2从0.6V变为1.2V。在第二过渡期T2期间,S2切换到断开状态,而稳压器806将其输出电压从旁路电压1.2V降低到NAP电压0.6V。T2后,V1和V2均为0.6V,内核802a至802b在NAP状态下运行。在某些情况下,T1和T2的持续时间可以为约0.5us。如前所述,在某些情况下,数字NAP状态控制器可以用于向开关S1和S2以及稳压器806提供控制信号以执行这些状态转换序列。
图8C为根据一实施方式的示出从NAP状态转换到活动状态的过程的时序图830。如图8C所示,在转换之前,S1闭合,S2断开;因此,内核802a在NAP状态下运行。S3闭合,内核802b在NAP状态下运行。稳压器806的输出电压为0.6V,该电压对应于NAP电压。当内核802a切换到活动状态时,在第一过渡期T1期间,S2切换到闭合位置,而S1保持闭合。在T1期间,稳压器806提供旁路电压。因此,在T1期间,V1和V2均从0.6V变为1.2V。在第二过渡期T2期间,S1切换到断开状态,而稳压器806将其输出电压从旁路电压1.2V降低到NAP电压0.6V。V1保持在1.2V,而V2从1.2V变为0.6V。T2后,V1保持在1.2V,内核802a在活动状态下运行。V2保持在0.6V,内核802b保持在NAP状态。
图9为根据一实施方式的示出在CPU状态之间转换的过程的图表900。在某些情况下,可以基于内核的任务负载或队列长度来决定在内核CPU状态之间进行转换。在某些情况下,可以使用调度器来决定状态转换。例如,在某些情况下,调度器可以基于预定的负载阈值做出决定。图表900包括任务负载曲线902、向上迁移阈值910和向下迁移阈值920。如图所示,在T1,任务负载曲线902超过向上迁移阈值910,因此,调度器可以确定将内核从NAP状态切换到活动状态。在T2,任务负载曲线902低于向下迁移阈值920,因此,调度器可以确定将内核从活动状态切换到NAP状态。
在某些情况下,还可以跟踪负载的导数。图表900还包括任务导数曲线904。在某些情况下,可以基于任务负载曲线902的导数的符号来设置任务导数曲线904。例如,如图所示,在T3,任务负载开始增加,并且任务负载曲线902的导数变为正数。因此,任务导数曲线904可以设置为1。在T4,任务负载开始减小,并且任务负载曲线902的导数变为负数。因此,任务导数曲线904可以设置为0。在某些情况下,调度器可以基于任务负载和任务负载的导数来确定状态转换。例如,如果任务负载超过向上迁移阈值910并且任务负载的导数在预定时间段内为正数,则调度器可以确定从NAP状态切换到活动状态的CPU分数。
图10为根据一实施方式的示出多处理器系统中的CPU状态转换的示例方法1000的流程图。方法1000可以在方框1002处开始,在方框1002处,多处理器系统的第一中央处理器(central processing unit,CPU)内核在活动状态下运行。第一CPU内核用于在多个CPU状态中的一个状态下运行。多个CPU状态包括低电压记忆保持(low-voltage memoryretention,NAP)状态、活动状态和关闭状态。NAP状态包括保持状态记忆的睡眠状态。
在某些情况下,稳压器、第一CPU内核和第二CPU内核在同一芯片上实施。在某些情况下,稳压器是一种低压差稳压器(low-dropout-voltage-regulator,LDO)。在某些情况下,稳压器是一种无电容稳压器。在某些情况下,稳压器用于向第一和第二CPU内核提供旁路电压,旁路电压对应于瞬态电压。
在某些情况下,多处理器系统在4核架构或8核架构中实施。在某些情况下,多处理器系统在big.LITTLE架构中实施。多处理器系统包含至少两个大型CPU内核和至少两个小型CPU内核。在某些情况下,稳压器用于向至少一个大型CPU内核和至少一个小型CPU内核提供NAP电压。在某些情况下,稳压器用于向至少两个大型CPU内核提供NAP电压,并且多处理器系统还包括附加稳压器,用于向至少两个小型CPU内核提供NAP电压。在某些情况下,多处理器系统可以在ANDROID操作系统(operation system,OS)或iOS中运行。在某些情况下,多处理器系统包括动态对称多处理(symmetric multiprocessing,SMP)-非对称多处理(asymmetric multiprocessing,ASMP)交换系统。在某些情况下,多处理器系统包括SMP。在某些情况下,多处理器系统包括ASMP。
在方框1004处,从稳压器接收NAP电压。NAP电压对应于NAP状态电压。稳压器用于向多处理器系统的第一CPU内核和第二CPU内核提供NAP电压。
在某些情况下,从数字NAP状态控制器接收控制信号。控制信号配置稳压器的输出状态和输出状态转换序列。输出状态表示第一和第二CPU内核的组合CPU状态。输出状态转换序列包括不同的组合CPU状态之间的转换。在某些情况下,输出状态从一组缩减的组合CPU状态中选择。
在方框1006处,响应于接收到NAP电压,将第一CPU内核从活动状态转换到NAP状态。
虽然本说明书包括许多具体的实施细节,但是这些不应对任何发明的范围或所要求的范围造成任何限制,而应作为针对特定发明的特定实施方式的特征的描述。在单独实施方式的上下文中,本说明书中所描述的某些特征也可以在单种实施方式中组合实施。反之,在单种实施方式的上下文中描述的各特征也可以单独在多种实施方式中或在任何合适的子组合中实施。此外,尽管上文可以将特征描述为以某些组合来行动,甚至最初要求保护,但是在某些情况下,可以从该组合中去除所要求保护的组合中的一个或多个特征,且所要求保护的组合可以针对子组合或子组合的变体。
同样,虽然附图以特定顺序描述操作,但是这不应理解为要求这些操作以所示的特定顺序或按顺序执行,或者要求执行所示的所有操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上文所述的实施方式中的各种系统模块和组件的分离和/或集成不应理解为所有实施方式都要求这种分离和/或集成。应该理解,所描述的程序组件和系统一般可以一起集成到单个软件产品中或打包到多个软件产品中。此外,尽管附图中描绘的操作可以指示操作的起始点和/或结束点,但是本发明所描述的方法的实施方式不限于所示的特定起始点和/结束点。其它实施方式可以在操作的不同点开始和/或结束。
本主题的特定实施方式已做描述。所描述的实施方式的其它实施方式、变更和置换在上文的权利要求书的范围内,这对于本领域技术人员将会显而易见。例如,可以用不同的顺序执行权利要求书中所述的行动,并且仍然达到期望的结果。
因此,上文对示例实施方式的描述并不限定或限制本发明。在不脱离本公开的精神和范围的情况下,还可以做出其它修改、替换以及变更。
Claims (20)
1.一种多处理器系统,其特征在于,包括:
多个中央处理器(central processing unit,CPU)内核,其中所述多个CPU内核中的每一个用于在多个CPU状态中的至少一个状态下运行,所述多个CPU状态包括低电压记忆保持(low-voltage memory retention,NAP)状态、活动状态和关闭状态,其中所述NAP状态包括保持状态记忆的睡眠状态;
稳压器,用于向所述多个CPU内核提供NAP电压,其中所述NAP电压足以使所述多个CPU内核中的至少一个保持状态信息,并且所述NAP电压低于活动状态电压;
多个状态控制开关,用于连接所述多个CPU内核与所述稳压器;其中所述多个状态控制开关中的每一个将所述稳压器连接到所述多个CPU内核中的一个。
2.根据权利要求1所述的多处理器系统,其特征在于,所述稳压器和所述多个CPU内核在同一芯片上实施。
3.根据权利要求1所述的多处理器系统,其特征在于,所述稳压器是一种低压差稳压器(low-dropout-voltage-regulator,LDO)。
4.根据权利要求1所述的多处理器系统,其特征在于,还包括:
数字NAP状态控制器,用于向所述稳压器提供控制信号并控制输出状态转换序列,其中所述控制信号配置所述稳压器的输出状态,所述输出状态表示所述多个CPU内核的组合CPU状态,所述输出状态转换序列包括不同的组合CPU状态之间的转换。
5.根据权利要求4所述的多处理器系统,其特征在于,所述输出状态从一组缩减的组合CPU状态中选择。
6.根据权利要求1所述的多处理器系统,其特征在于,所述稳压器是一种无电容稳压器。
7.根据权利要求1所述的多处理器系统,其特征在于,所述稳压器还用于向所述多个CPU内核提供旁路电压,所述旁路电压对应于瞬态电压。
8.根据权利要求1所述的多处理器系统,其特征在于,所述多处理器系统在big.LITTLE架构中实施,所述多处理器系统包括多个大型CPU内核和多个小型CPU内核,所述稳压器用于向至少一个大型CPU内核和至少一个小型CPU内核提供NAP电压。
9.根据权利要求1所述的多处理器系统,其特征在于,所述多处理器系统包括动态对称多处理(symmetric multiprocessing,SMP)-非对称多处理(asymmetricmultiprocessing,ASMP)交换系统。
10.根据权利要求1所述的多处理器系统,其特征在于,还包括多个头开关,其中所述多个头开关中的每一个将所述多个CPU内核中的一个连接到电压源。
11.一种用于在多处理器系统中提供状态转换的方法,其特征在于,所述多处理器系统包括多个中央处理器(central processing unit,CPU)内核,所述方法包括:
在活动状态下运行所述多处理器系统的第一CPU内核,其中所述第一CPU内核用于在多个CPU状态中的一个状态下运行,所述多个CPU状态包括低电压记忆保持(low-voltagememory retention,NAP)状态、活动状态和关闭状态,所述NAP状态包括保持状态记忆的睡眠状态;
从稳压器接收NAP电压,其中,所述NAP电压足以使所述第一CPU内核保持状态信息,并且所述NAP电压低于活动状态电压,所述稳压器用于向所述多处理器系统的所述多个CPU内核提供NAP电压;
响应于接收到所述NAP电压,将所述第一CPU内核从所述活动状态转换到所述NAP状态。
12.根据权利要求11所述的方法,其特征在于,所述稳压器和所述多个CPU内核在同一芯片上实施。
13.根据权利要求11所述的方法,其特征在于,所述稳压器是一种低压差稳压器(low-dropout-voltage-regulator,LDO)。
14.根据权利要求11所述的方法,其特征在于,还包括:
从数字NAP状态控制器接收控制信号,其中所述控制信号配置所述稳压器的输出状态和输出状态转换序列,所述输出状态表示所述多个CPU内核的组合CPU状态,所述输出状态转换序列包括不同的组合CPU状态之间的转换。
15.根据权利要求14所述的方法,其特征在于,所述输出状态从一组缩减的组合CPU状态中选择。
16.根据权利要求11所述的方法,其特征在于,所述稳压器是一种无电容稳压器。
17.根据权利要求11所述的方法,其特征在于,所述稳压器还用于向所述多个CPU内核提供旁路电压,所述旁路电压对应于瞬态电压。
18.根据权利要求11所述的方法,其特征在于,所述多处理器系统在big.LITTLE架构中实施,所述多处理器系统包括多个大型CPU内核和多个小型CPU内核,所述稳压器用于向至少一个大型CPU内核和至少一个小型CPU内核提供NAP电压。
19.根据权利要求11所述的方法,其特征在于,所述多处理器系统包括动态对称多处理(symmetric multiprocessing,SMP)-非对称多处理(asymmetric multiprocessing,ASMP)交换系统。
20.一种用户设备(user equipment,UE),其特征在于,包括:
包括多个中央处理器(central processing unit,CPU)内核的多处理器系统,其中所述多个CPU内核中的每一个用于在多个CPU状态中的至少一个状态下运行,所述多个CPU状态包括低电压记忆保持(low-voltage memory retention,NAP)状态、活动状态和关闭状态,其中所述NAP状态包括保持状态记忆的睡眠状态;
稳压器,用于向所述多个CPU内核提供NAP电压,其中所述NAP电压足以使所述多个CPU内核中的至少一个保持状态信息,并且所述NAP电压低于活动状态电压;
多个状态控制开关,用于连接所述多个CPU内核与所述稳压器;其中所述多个状态控制开关中的每一个将所述稳压器连接到所述多个CPU内核中的一个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/806,547 | 2015-07-22 | ||
US14/806,547 US10234932B2 (en) | 2015-07-22 | 2015-07-22 | Method and apparatus for a multiple-processor system |
PCT/CN2016/090880 WO2017012566A1 (en) | 2015-07-22 | 2016-07-21 | Method and apparatus for a multiple-processor system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107924218A true CN107924218A (zh) | 2018-04-17 |
CN107924218B CN107924218B (zh) | 2020-09-08 |
Family
ID=57833825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680043148.0A Active CN107924218B (zh) | 2015-07-22 | 2016-07-21 | 用于多处理器系统的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10234932B2 (zh) |
EP (1) | EP3317746B1 (zh) |
CN (1) | CN107924218B (zh) |
WO (1) | WO2017012566A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI843990B (zh) * | 2020-03-19 | 2024-06-01 | 日商鎧俠股份有限公司 | 半導體積體電路、記憶體控制器及記憶體系統 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI619010B (zh) * | 2013-01-24 | 2018-03-21 | 半導體能源研究所股份有限公司 | 半導體裝置 |
KR20190041330A (ko) * | 2017-10-12 | 2019-04-22 | 에스케이하이닉스 주식회사 | 전원 게이팅 회로를 포함하는 반도체 장치 |
US11048321B2 (en) * | 2018-06-01 | 2021-06-29 | Nvidia Corporation | Distributed digital low-dropout voltage micro regulator |
KR20210015332A (ko) * | 2019-08-01 | 2021-02-10 | 삼성전자주식회사 | 시스템 온 칩 및 이를 포함하는 전자 장치 |
FR3118217B1 (fr) * | 2020-12-18 | 2023-02-24 | St Microelectronics Rousset | Système électronique à consommation statique réduite |
CN119292447A (zh) * | 2020-12-28 | 2025-01-10 | Oppo广东移动通信有限公司 | 可穿戴设备控制方法、装置、可穿戴设备以及存储介质 |
EP4109216B1 (en) | 2021-06-21 | 2024-10-09 | Samsung Electronics Co., Ltd. | System-on-chip including low-dropout regulator |
KR20230082732A (ko) * | 2021-12-01 | 2023-06-09 | 삼성전자주식회사 | Ldo 레귤레이터 |
US12170478B2 (en) | 2022-08-16 | 2024-12-17 | Apple Inc. | Merged power delivery |
US12099391B2 (en) * | 2022-12-22 | 2024-09-24 | Lenovo Enterprise Solutions (Singapore) Pte Ltd. | Independent control of power, clock, and/or reset signals to a partitioned node |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101755250A (zh) * | 2007-05-18 | 2010-06-23 | 先进微装置公司 | 动态性处理器电源管理装置及方法 |
CN102306048A (zh) * | 2005-12-30 | 2012-01-04 | 英特尔公司 | 用于零电压处理器休眠状态的方法和设备 |
CN102741818A (zh) * | 2009-03-17 | 2012-10-17 | 丰田自动车株式会社 | 故障诊断系统、用于车辆的电子控制单元、故障诊断方法 |
CN203350757U (zh) * | 2011-12-27 | 2013-12-18 | 英特尔公司 | 利用反馈的多模电压调节装置和系统 |
CN103955265A (zh) * | 2010-12-22 | 2014-07-30 | 威盛电子股份有限公司 | 配置在多重处理器核心之间的分散式电源管理 |
US20140285014A1 (en) * | 2013-03-14 | 2014-09-25 | Benton H. Calhoun | Methods and apparatus for a single inductor multiple output (simo) dc-dc converter circuit |
EP2804076A2 (en) * | 2013-05-08 | 2014-11-19 | Intel Corporation | Adaptively Limiting a Maximum Operating Frequency in a Multicore Processor |
CN104679586A (zh) * | 2013-10-31 | 2015-06-03 | 三星电子株式会社 | 包括异构多核处理器的电子系统及其操作方法 |
CN104737094A (zh) * | 2012-10-23 | 2015-06-24 | 高通股份有限公司 | 芯片上的异构的多处理器系统中的模态工作负载调度 |
US20150198988A1 (en) * | 2014-01-16 | 2015-07-16 | Qualcomm Incorporated | Core specific process voltage scaling for optimizing multi-core operation |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ATE446663T1 (de) * | 2000-08-03 | 2009-11-15 | Infineon Technologies Ag | Dynamisch, rekonfigurierbares, universelles sendersystem |
US7227404B2 (en) * | 2003-09-15 | 2007-06-05 | Texas Instruments Incorporated | Method for preventing regulated supply undershoot in state retained latches of a leakage controlled system using a low drop out regulator |
US7675806B2 (en) * | 2006-05-17 | 2010-03-09 | Freescale Semiconductor, Inc. | Low voltage memory device and method thereof |
WO2009091829A1 (en) * | 2008-01-14 | 2009-07-23 | Bivio Networks, Inc. | Systems and methods for asymmetric multiprocessing |
KR101497656B1 (ko) * | 2008-03-25 | 2015-02-27 | 삼성디스플레이 주식회사 | 듀얼 표시방법, 이를 수행하기 위한 듀얼 표시장치 및 이를갖는 듀얼표시 핸드폰 |
TWI379185B (en) * | 2008-11-05 | 2012-12-11 | Asustek Comp Inc | Method and apparatus of tuning operation clock and voltage of computer system |
JP2010171508A (ja) * | 2009-01-20 | 2010-08-05 | Renesas Technology Corp | 半導体集積回路装置 |
US8064197B2 (en) | 2009-05-22 | 2011-11-22 | Advanced Micro Devices, Inc. | Heat management using power management information |
US8362757B2 (en) * | 2009-06-10 | 2013-01-29 | Microchip Technology Incorporated | Data retention secondary voltage regulator |
US8601302B2 (en) | 2009-06-22 | 2013-12-03 | Amazon Technologies, Inc. | Processor system in low power state retention mode with linear regulator off and switch regulator low in power management IC |
JP2011233140A (ja) * | 2010-04-08 | 2011-11-17 | Canon Inc | 消費電力及びノイズを低減可能な制御装置 |
US8294388B2 (en) * | 2010-05-25 | 2012-10-23 | Texas Instruments Incorporated | Driving system with inductor pre-charging for LED systems with PWM dimming control or other loads |
US9116692B1 (en) * | 2010-12-10 | 2015-08-25 | The Board Of Trustees Of The University Of Illinois | System and method for improving power conversion for advanced electronic circuits |
US8230247B2 (en) * | 2011-12-30 | 2012-07-24 | Intel Corporation | Transferring architectural functions of a processor to a platform control hub responsive to the processor entering a deep sleep state |
CN102566739B (zh) | 2012-01-06 | 2014-11-26 | 威盛电子股份有限公司 | 多核处理器系统及其动态电源管理方法与控制装置 |
US9736781B2 (en) * | 2012-09-26 | 2017-08-15 | Intel Corporation | Determining points of interest within a geofence |
US9021207B2 (en) | 2012-12-20 | 2015-04-28 | Advanced Micro Devices, Inc. | Management of cache size |
US9081577B2 (en) | 2012-12-28 | 2015-07-14 | Intel Corporation | Independent control of processor core retention states |
WO2014151844A2 (en) * | 2013-03-14 | 2014-09-25 | Microchip Technology Incorporated | Improved capless voltage regulator using clock-frequency feed forward control |
US9823719B2 (en) * | 2013-05-31 | 2017-11-21 | Intel Corporation | Controlling power delivery to a processor via a bypass |
US9405340B2 (en) * | 2013-06-27 | 2016-08-02 | Intel Corporation | Apparatus and method to implement power management of a processor |
US9870473B2 (en) * | 2013-10-31 | 2018-01-16 | Advanced Micro Devices, Inc. | System and method for security processor control over CPU power states |
JP6246944B2 (ja) * | 2013-12-18 | 2017-12-13 | インテル コーポレイション | 適応ゲインを持ったデジタル合成可能な低ドロップアウトレギュレータ |
US9606563B2 (en) * | 2014-04-08 | 2017-03-28 | Texas Instruments Deutschland Gmbh | Bandgap reference voltage failure detection |
JP6406907B2 (ja) * | 2014-07-18 | 2018-10-17 | キヤノンファインテックニスカ株式会社 | 媒体判別装置、媒体搬送装置および印刷装置 |
-
2015
- 2015-07-22 US US14/806,547 patent/US10234932B2/en active Active
-
2016
- 2016-07-21 CN CN201680043148.0A patent/CN107924218B/zh active Active
- 2016-07-21 WO PCT/CN2016/090880 patent/WO2017012566A1/en active Application Filing
- 2016-07-21 EP EP16827257.3A patent/EP3317746B1/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102306048A (zh) * | 2005-12-30 | 2012-01-04 | 英特尔公司 | 用于零电压处理器休眠状态的方法和设备 |
CN101755250A (zh) * | 2007-05-18 | 2010-06-23 | 先进微装置公司 | 动态性处理器电源管理装置及方法 |
CN102741818A (zh) * | 2009-03-17 | 2012-10-17 | 丰田自动车株式会社 | 故障诊断系统、用于车辆的电子控制单元、故障诊断方法 |
CN103955265A (zh) * | 2010-12-22 | 2014-07-30 | 威盛电子股份有限公司 | 配置在多重处理器核心之间的分散式电源管理 |
CN203350757U (zh) * | 2011-12-27 | 2013-12-18 | 英特尔公司 | 利用反馈的多模电压调节装置和系统 |
CN104737094A (zh) * | 2012-10-23 | 2015-06-24 | 高通股份有限公司 | 芯片上的异构的多处理器系统中的模态工作负载调度 |
US20140285014A1 (en) * | 2013-03-14 | 2014-09-25 | Benton H. Calhoun | Methods and apparatus for a single inductor multiple output (simo) dc-dc converter circuit |
EP2804076A2 (en) * | 2013-05-08 | 2014-11-19 | Intel Corporation | Adaptively Limiting a Maximum Operating Frequency in a Multicore Processor |
CN104679586A (zh) * | 2013-10-31 | 2015-06-03 | 三星电子株式会社 | 包括异构多核处理器的电子系统及其操作方法 |
US20150198988A1 (en) * | 2014-01-16 | 2015-07-16 | Qualcomm Incorporated | Core specific process voltage scaling for optimizing multi-core operation |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI843990B (zh) * | 2020-03-19 | 2024-06-01 | 日商鎧俠股份有限公司 | 半導體積體電路、記憶體控制器及記憶體系統 |
Also Published As
Publication number | Publication date |
---|---|
CN107924218B (zh) | 2020-09-08 |
WO2017012566A1 (en) | 2017-01-26 |
US10234932B2 (en) | 2019-03-19 |
EP3317746A1 (en) | 2018-05-09 |
EP3317746B1 (en) | 2020-04-29 |
EP3317746A4 (en) | 2018-07-11 |
US20170024000A1 (en) | 2017-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107924218A (zh) | 用于多处理器系统的方法和装置 | |
US11658570B2 (en) | Seamless non-linear voltage regulation control to linear control apparatus and method | |
CN114647296A (zh) | 多级存储器系统功率管理装置和方法 | |
EP4018287B1 (en) | Digitally coordinated dynamically adaptable clock and voltage supply apparatus and method | |
US12051976B2 (en) | Dual-folded boot-strap based buck-boost converter | |
US20210109578A1 (en) | Apparatus and method for dynamic reallocation of processor power | |
EP4075237A2 (en) | Apparatus and method to reduce standby power for systems in battery mode with a connected bus powered device | |
EP4092864A1 (en) | Power delivery architecture for high power portable devices | |
KR20220019668A (ko) | 온-패키지 고대역폭 공진 스위치드 커패시터 전압 레귤레이터 | |
US20170242468A1 (en) | Low ripple mechanism of mode change in switched capacitor voltage regulators | |
CN115378253A (zh) | 计算型电流传感器 | |
EP4203282A1 (en) | Device, system and method for providing a mode to control a switched-capacitor voltage regulator | |
US12235780B2 (en) | Dynamic USB-C mode selection OSPM policy method and apparatus | |
US12009687B2 (en) | Apparatus and method to provide dynamic battery charging voltage | |
US12113442B2 (en) | Stacked buck converter with inductor switching node pre-charge and conduction modulation control | |
KR20220040376A (ko) | 프로세서 피크 전류 제어 장치 및 방법 | |
CN115981450A (zh) | 一种电源控制方法、电源管理芯片及存储介质 | |
CN107272868A (zh) | 低功耗rdss基带芯片 | |
CN114662075A (zh) | 安全设备加电装置和方法 | |
US12166414B2 (en) | Device, system and method to determine an operational mode of a continuous capacitive voltage regulator | |
CN216817210U (zh) | 低功耗控制电路及mcu芯片 | |
US20220374065A1 (en) | Power optimized timer module for processors | |
CN203104285U (zh) | 无线传感网络的电压调节节能装置 | |
CN112311042A (zh) | 用于提高挂起模式期间电池寿命的电路和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |