CN1993670A - 信息处理装置 - Google Patents

信息处理装置 Download PDF

Info

Publication number
CN1993670A
CN1993670A CNA2005800266150A CN200580026615A CN1993670A CN 1993670 A CN1993670 A CN 1993670A CN A2005800266150 A CNA2005800266150 A CN A2005800266150A CN 200580026615 A CN200580026615 A CN 200580026615A CN 1993670 A CN1993670 A CN 1993670A
Authority
CN
China
Prior art keywords
cpu
host cpu
carry out
processing
determining section
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
CNA2005800266150A
Other languages
English (en)
Other versions
CN100474214C (zh
Inventor
御手洗秀一
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1993670A publication Critical patent/CN1993670A/zh
Application granted granted Critical
Publication of CN100474214C publication Critical patent/CN100474214C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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)

Abstract

本发明的信息处理装置包括:主CPU,其能够采用至少两种状态,即操作状态和休眠状态;副CPU,其具有低于主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态;以及处理请求确定部分,用于确定使主CPU和副CPU中的哪一个来执行涉及来自***装置的请求的处理。该处理请求确定部分确定主CPU是处于休眠状态还是操作状态,并且当主CPU处于休眠状态时,确定是否可以使副CPU执行处理,并且当主CPU处于操作状态时,确定是否可以使主CPU执行处理,并且根据该确定的结果,使主CPU或者副CPU执行该处理。

Description

信息处理装置
技术领域
本发明涉及一种信息处理装置,并且更具体而言涉及一种能够降低功耗的信息处理装置。
背景技术
近年来,移动信息处理装置已经非常普遍。移动电话装置、移动个人计算机、移动个人数字助理等是其中的代表。这些移动终端装置全部在由电池驱动时工作。因此,为了能够长时间使用该装置,已经进行开发来降低功耗。
特别是移动电话装置,随着板载功能的增加(下文称为板载功能的种类增加),显著地提高了CPU的性能。因此,CPU相对于整个装置的功耗比也逐年提高,并由此,需要针对CPU的节能技术。同样,由于板载功能的种类增加,因此高***需求和低***需求之间存在不一致。
例如,诸如移动电话装置的待机屏保处理、显示时钟处理等正规处理具有低***需求。另一方面,诸如显示活动图像、电视电话等处理的新的附加功能处理具有高的***需求。通过这些实例可以看出,具有低***需求的处理和具有高***需求的处理之间在CPU处理负载方面存在显著的区别。CPU需要执行具有高***需求的处理也需要执行具有低***需求的处理,因此需要具有满足所有***需求的性能。然而,仅有少量功能充分利用了整个***中的CPU的性能。
因此,已经提出了包括主CPU和功耗低于主CPU的副CPU的信息处理装置(参见专利文献1)。在专利文献1的常规信息处理装置中,主CPU和由主CPU控制的***装置直接彼此相连,并且副CPU和由副CPU控制的***装置彼此直接相连。因此,常规信息处理装置可以使副CPU执行具有较小负载的处理,例如等待用户的键入、定时器事件等。因此,在执行具有小负载的处理期间,主CPU不必无用地执行,因此降低了功耗。
专利文献1:日本专利特许公开No.H04-309110。
发明内容
本发明所要解决的问题
然而,在专利文献1所述的常规技术中,每个CPU直接连接到由其控制的***装置,这样就固定了用于控制***装置处理的CPU。因此,取决于该装置的状态,不能灵活有效地利用两个CPU资源。同样,每次硬件结构改变时,需要重新设计CPU和***装置之间的连接。
因此,本发明的一个目的是提供一种信息处理装置,其实现低功耗并且其中用于执行来自***装置的请求的CPU不被固定到主CPU或者副CPU。
解决方案
为了实现上面的目的,本发明具有以下方面。本发明的第一方面致力于一种用于控制一个以上的内部或者外部***装置的信息处理装置,包括:主CPU,其能够采用至少两种状态,即操作状态和休眠状态;副CPU,其功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态;以及处理请求确定部分,用于确定使所述主CPU和所述副CPU中的哪一个来执行涉及来自所述***装置中的一个的请求的处理。所述处理请求确定部分确定所述主CPU是处于休眠状态还是处于操作状态,并且当所述主CPU处于休眠状态时,确定是否使所述副CPU执行所述处理,并且当所述主CPU处于操作状态时,确定是否能够使所述主CPU执行所述处理,并且根据所述确定的结果,使所述主CPU或者所述副CPU执行所述处理。
根据本发明的第一方面,当主CPU处于休眠状态时,确定是否可以使副CPU执行该处理。因此,当可以使副CPU执行该处理时,副CPU执行该处理。因此,可以使主CPU长时间处于休眠状态,从而可以减少功耗。另一方面,当主CPU处于操作状态时,确定是否可以使主CPU执行该处理。因此,当可以使主CPU执行该处理时,主CPU执行该处理。因此,提高了响应速度。于是,提供了一种这样的信息处理装置,其具有低功耗并且其中执行来自***装置的处理请求的CPU没有固定到主CPU或者副CPU。
优选地,当主CPU处于休眠状态时,处理请求确定部分可以使副CPU执行该处理。当主CPU处于操作状态时,该处理请求确定部分可以使主CPU执行该处理。
因此,当主CPU处于休眠状态时,副CPU总是执行处理,而当主CPU处于操作状态时,主CPU总是执行处理。
优选地,当主CPU处于休眠状态时,处理请求确定部分可以确定副CPU是否可以接受该处理,并且当副CPU可以接受该处理时,使副CPU执行该处理,并且当副CPU不能接受该处理时,使主CPU执行该处理。当主CPU处于操作状态时,处理请求确定部分可以使主CPU执行该处理。
因此,当副CPU不能接受该处理时,使主CPU执行该处理,使得响应速度提高。
优选地,当主CPU处于休眠状态时,处理请求确定部分可以确定副CPU是否能够接受该处理,并且当副CPU可以接受该处理时,使副CPU执行该处理,并且当副CPU不能接受该处理时,使主CPU执行该处理。当主CPU处于操作状态时,处理请求确定部分可以确定主CPU是否能够接受该处理,并且当主CPU可以接受该处理时,使主CPU执行该处理,并且当该主CPU不能接受该处理时,确定是否可以使副CPU执行该处理。
因此,当主CPU处于操作状态时,确定主CPU是否能够接受该处理。当主CPU不能接受该处理时,确定是否使副CPU执行该处理。因此,由于主CPU和副CPU可以并行执行处理,从而可以降低功耗并且提高响应速度。
优选地,信息处理装置可以还包括处理请求目的地指定部分,其与所述***装置中的一个中的处理相关联地将期望执行所述处理的期望CPU预先定义为指定CPU信息。当所述处理请求目的地指定部分的所述指定CPU信息所指定的CPU是所述主CPU时,所述处理请求确定部分确定所述主CPU是处于休眠状态还是处于操作状态。
因此,当指定主CPU中的处理时,确定主CPU是处于休眠状态还是操作状态。
优选地,所述处理请求目的地指定部分还将是否允许使用除了所述指定CPU信息中所定义的所述CPU之外的CPU来执行所述处理定义为其它CPU可用性信息,并且当所述主CPU处于休眠状态时,所述处理请求确定部分参考所述其它CPU可用性信息来确定是否允许所述副CPU执行所述处理。当允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理。当不允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理。
因此,当主CPU处于休眠状态时,可以根据情况使副CPU执行该处理,从而可以降低功耗。
优选地,当主CPU处于操作状态时,处理请求确定部分可以确定主CPU是否可以接受该处理。当主CPU可以接受该处理时,处理请求确定部分可以确定使主CPU执行该处理。当主CPU不能接受该处理时,处理请求确定部分可以参考其它CPU可用性信息来确定是否允许副CPU执行该处理。当允许副CPU执行该处理时,处理请求确定部分可以确定使副CPU执行该处理。当不允许副CPU执行该处理时,处理请求确定部分可以确定使主CPU执行该处理。
因此,即使在主CPU处于操作状态时,也可以根据情况使副CPU操作,从而可以降低功耗。
优选地,当处理请求目的地指定部分的指定CPU信息所指定的CPU是副CPU时,处理请求确定部分可以确定副CPU是处于休眠状态还是操作状态,以确定使主CPU和副CPU中的哪一个来执行该处理。
因此,在指定使用副CPU的情况下,当副CPU处于休眠状态时,选择使用副CPU还是主CPU。
优选地,处理请求目的地指定部分还可以将是否允许使用除了指定CPU信息中所定义的CPU之外的CPU来执行该处理定义为其它CPU可用性信息。当副CPU处于休眠状态时,处理请求确定部分可以参考其它CPU可用性信息以确定是否允许主CPU来执行该处理。当允许主CPU执行该处理时,处理请求确定部分可以确定使主CPU执行该处理。当不允许主CPU执行该处理时,处理请求确定部分可以确定使副CPU执行该处理。
因此,当副CPU处于休眠状态时,可以根据情况使用主CPU,从而提高响应速度。
优选地,当副CPU处于操作状态时,处理请求确定部分可以确定副CPU是否可以接受该处理。当副CPU可以接受该处理时,处理请求确定部分可以确定使副CPU执行该处理。当副CPU不能接受该处理时,处理请求确定部分可以参考其它CPU可用性信息以确定是否允许主CPU执行该处理。当允许该主CPU执行该处理时,处理请求确定部分可以确定使主CPU执行该处理。当不允许主CPU执行该处理时,处理请求确定部分可以确定使副CPU执行该处理。
因此,当副CPU不能接受该处理时,可以根据情况使用主CPU,使得可以进行并行处理,从而提高响应速度。
优选地,信息处理装置还可以包括处理请求目的地指定部分,其与所述***装置中的一个中的处理相关联地将期望执行所述处理的期望CPU预先定义为指定CPU信息。当所述主CPU处于休眠状态时,所述处理请求确定部分参考所述指定CPU信息来确定是否允许所述副CPU执行所述处理。当允许所述副CPU执行所述处理时,所述处理请求确定部分使所述副CPU执行所述处理。当不允许所述副CPU执行所述处理时,所述处理请求确定部分使所述主CPU执行所述处理。。
因此,当主CPU处于休眠状态时,确定是否允许副CPU执行该处理。
优选地,当主CPU处于操作状态时,处理请求确定部分可以确定主CPU是否可以接受该处理。当主CPU不能接受该处理时,处理请求确定部分可以参考指定CPU信息以确定是否允许主CPU执行该处理。当允许主CPU执行该处理时,处理请求确定部分可以使主CPU执行该处理。当不允许主CPU执行该处理时,处理请求确定部分可以使副CPU执行该处理。当主CPU可以接受该处理时,处理请求确定部分可以使副CPU执行该处理。
因此,当主CPU处于操作状态时,确定是否允许主CPU执行该处理。
优选地,如果在使副CPU执行该处理时存在唤醒主CPU的请求,则副CPU和主CPU可以执行用于使主CPU接管副CPU中执行的处理的处理。
因此,主CPU可以接管副CPU中的处理。
本发明的第二方面致力于一种应用在用于控制一个以上的内部或者外部***装置的信息处理装置中的处理方法,所述信息处理装置包括:主CPU,其能够采用至少两种状态,即操作状态和休眠状态,以及副CPU,其功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态。所述方法包括:确定所述主CPU是处于休眠状态还是处于操作状态;当所述主CPU处于休眠状态时,确定是否可以使所述副CPU执行来自所述***装置中的一个的处理;当所述主CPU处于操作状态时,确定是否可以使所述主CPU执行所述处理;以及根据所述确定的结果,使所述主CPU或者所述副CPU执行所述处理。
本发明的第三方面致力于一种用于使用主CPU和副CPU控制一个以上的内部或者外部***装置的集成电路,其中所述主CPU能够采用至少两种状态,即操作状态和休眠状态,而所述副CPU的功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态。所述集成电路确定所述主CPU是处于休眠状态还是处于操作状态。当所述主CPU处于休眠状态时,所述集成电路确定是否可以使所述副CPU执行来自所述***装置中的一个的处理。当所述主CPU处于操作状态时,所述集成电路确定是否可以使所述主CPU执行所述处理。所述集成电路根据所述确定的结果使所述主CPU或者所述副CPU执行所述处理。
本发明的第四方面致力于一种在计算机设备中执行的程序,所述计算机设备用于使主CPU和副CPU控制一个以上的内部或者外部***装置,所述主CPU能够采用至少两种状态,即操作状态和休眠状态,所述副CPU的功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态。所述程序使所述计算机设备确定所述主CPU是处于休眠状态还是处于操作状态。当所述主CPU处于休眠状态时,所述程序使所述计算机设备确定是否可以使所述副CPU执行来自所述***装置中的一个的处理。当所述主CPU处于操作状态时,所述程序使所述计算机设备确定是否可以使所述主CPU执行所述处理。所述程序根据所述确定的结果,使用所述计算机设备使所述主CPU或者所述副CPU执行所述处理。
发明效果
根据本发明的信息处理装置,在多数情况下,整个***中具有比较小的处理负载的处理可以由使用具有低功耗的副CPU的低频操作来执行,由此可以使具有高功耗的主CPU长时间处于休眠状态。同样,当主CPU处于操作状态时,副CPU可以用作辅助的CPU,由此可以有效地使用信息处理装置的CPU并降低功耗。因此,根据本发明,提供了一种信息处理装置,其具有低功耗并且用于执行来自***装置的处理请求的CPU未被固定到主CPU或者副CPU。
利用结合附图时对本发明进行的下列具体说明,本发明的这些和其它目的、特点、方面以及优点将变得更加显而易见。
附图说明
图1是说明根据本发明的第一实施例的信息处理装置100的硬件结构的框图。
图2是说明本发明的第一实施例的信息处理装置100的功能结构的框图。
图3是第一实施例的信息处理装置100的操作流程图。
图4是说明根据本发明的第二实施例的信息处理装置200的功能结构的框图。
图5是本发明的第二实施例的信息处理装置200的操作流程图。
图6是说明根据本发明的第三实施例的信息处理装置300的功能结构的框图。
图7A是本发明的第三实施例的信息处理装置300的操作流程图。
图7B是本发明的第三实施例的信息处理装置300的操作流程图。
图7C是本发明的第三实施例的信息处理装置300的操作流程图。
图7D是本发明的第三实施例的信息处理装置300的操作流程图。
图8是具体说明使主CPU 1b接管副CPU 2b中的处理的示例性方法的顺序图。
图9是说明根据本发明的第四实施例的信息处理装置400的功能结构的框图。
图10是本发明的第四实施例的信息处理装置400的操作流程图。
图11是说明本发明的第五实施例的信息处理装置500的功能结构的框图。
图12是说明存储在处理请求目的地指定部分36中的示例性信息的图。
图13A是本发明的第五实施例的信息处理装置500的操作流程图。
图13B是本发明的第五实施例的信息处理装置500的操作流程图。
图13C是本发明的第五实施例的信息处理装置500的操作流程图。
图13D是本发明的第五实施例的信息处理装置500的操作流程图。
图14是根据本发明的第六实施例的信息处理装置的操作流程图。
图15是说明定义在处理请求目的地指定部分36中的另一示例性表格的图。
符号说明
100、200、300、400、500    信息处理装置
M1、1、1b、1c、            主CPU
M2、2、2a、2b              副CPU
M3                 访问仲裁电路
M4                 中断控制器
M5至M7、41至43     ***装置
M8、M9             RAM
11        中断确定部分
21        中断确定部分
3、3a     处理请求确定部分
31        主CPU状态寄存器
32        中断请求寄存器
33        副CPU状态寄存器
34        副CPU处理请求完成寄存器
35        主CPU处理请求完成寄存器
36        处理请求目的地指定部分
44        主CPU唤醒请求发送部分
51        存储区确定部分
61        存储区
具体实施方式
(第一实施例)
图1是说明根据本发明的第一实施例的信息处理装置100的硬件结构的框图。在图1中,信息处理装置100包括主CPU(M1)、副CPU(M2)、访问仲裁电路(M3)、中断控制器(M4)、***装置(M5到M7)以及RAM(M8和M9)。***装置(M5到M7)和RAM(M8和M9)的数量不限于图1的这些实例。
主CPU(M1)是可以采用两种状态,即操作状态和休眠状态的CPU。副CPU(M2)是具有低于主CPU(M1)的功耗并且可以采用两种状态,即操作状态和休眠状态的CPU。当同时发生来自主CPU(M1)和副CPU(M2)对总线的访问时,访问仲裁电路(M3)管理竞争仲裁。RAM(M8和M9)可以根据设置来限制来自主CPU(M1)和副CPU(M2)的访问。***装置(M5到M7)例如是HDD、定时器、键盘、按钮开关、液晶显示器、MPEG解码器等,并且经由总线连接到主CPU(M1)和副CPU(M2)。在图1中,***装置(M5到M7)显示为设置在信息处理装置100的内部,但是其也可以设置在信息处理装置100的外部。
主CPU(M1)和副CPU(M2)都可以访问***装置(M5到M7)。当期望执行处理时,***装置(M5到M7)传送中断信号到中断控制器(M4)。当接收到来自***装置(M5到M7)的中断信号时,中断控制器(M4)根据主CPU(M1)的状态将中断信号发送到主CPU(M1)或者副CPU(M2),即,当主CPU(M1)处于休眠状态时,将中断信号发送到副CPU(M2),并且当主CPU(M1)处于操作状态时,将中断信号发送到主CPU(M1)。注意:如上所述,主CPU(M1)具有操作状态和休眠状态。每当主CPU(M1)的状态改变时,中断控制器(M4)将该状态写入中断控制器(M4)中的寄存器(主CPU状态寄存器)。
图2是说明本发明的第一实施例的信息处理装置100的功能结构的框图。在图2中,信息处理装置100包括主CPU 1、副CPU 2、处理请求确定部分3以及***装置41到43。主CPU 1对应于图1的主CPU(M1)。副CPU 2对应于图1的副CPU(M2)。处理请求确定部分3对应于图1的中断控制器(M4)。***装置41到43对应于图1的***装置(M5到M7)。
主CPU 1包括中断确定部分11。副CPU 2包括中断确定部分21。处理请求确定部分3包括主CPU状态寄存器31、中断请求寄存器32和副CPU状态寄存器33。
主CPU 1可以采用两种状态,即操作状态和休眠状态。主CPU 1将主CPU 1是处于休眠状态还是操作状态的通知发送到主CPU状态寄存器31。主CPU状态寄存器31存储该主CPU 1是处于休眠状态还是操作状态。主CPU状态寄存器31通过从主CPU 1的写入处理改变标志值,并且当主CPU 1进入休眠状态时写入休眠标志,而当主CPU 1进入操作状态时写入操作标志。
副CPU 2可以采用两种状态,即操作状态和休眠状态。副CPU 2将副CPU 2是处于休眠状态还是操作状态的通知发送到副CPU状态寄存器33。副CPU状态寄存器33存储该副CPU 2是处于休眠状态还是操作状态。副CPU状态寄存器33通过从副CPU 2的写入处理改变标志值,并且当副CPU 2进入休眠状态时写入休眠标志,而当副CPU 2进入操作状态时写入操作标志。
主CPU 1和副CPU 2每个都能够控制***装置41至43。
主CPU 1和副CPU 2在完成所需处理时自动进入休眠状态。当中断信号从处理请求确定部分3发送到中断确定部分11时,主CPU 1执行进入操作状态的处理,并且当进入操作状态时,将操作标志写入主CPU状态寄存器31。
中断请求寄存器32接收来自***装置41到43的中断信号并且存储该中断信号。当接收到来自***装置41到43的中断信号时,处理请求确定部分3确定是否使主CPU 1或者副CPU 2执行处理,并且将该中断信号发送到主CPU 1的中断确定部分11或者副CPU 2的中断确定部分21。中断确定部分11检测来自处理请求确定部分3的中断信号。中断确定部分21检测来自处理请求确定部分3的中断信号。
图3是第一实施例的信息处理装置100的操作流程图。在下文中,将参照图3说明第一实施例的信息处理装置100的操作。
当***装置41、42和43中的任意一个发送中断信号时,通过在中断请求寄存器32的对应于***装置41、42或者43的部分设定标志,该处理请求确定部分3存储已经出现了中断信号(步骤S1)。
接下来,处理请求确定部分3通过参考主CPU状态寄存器31来确定主CPU 1是否处于休眠状态(步骤S2)。
当主CPU 1处于休眠状态时,该处理请求确定部分3参考副CPU状态寄存器33以确定副CPU 2是否处于休眠状态(步骤S3)。当副CPU2处于休眠状态时,处理请求确定部分3使副CPU 2进入操作状态,使副CPU状态寄存器33存储该副CPU 2处于操作状态(步骤S4),并且进入步骤S5的操作。另一方面,当副CPU 2处于操作状态时,处理请求确定部分3进入步骤S5的操作。
在步骤S5中,处理请求确定部分3发送中断信号到副CPU 2的中断确定部分21(步骤S5)。响应于此,副CPU 2执行对应于所发送中断信号的中断处理(步骤S6),并且进入步骤S7的操作。
在步骤S7中,副CPU 2缺人在步骤S6执行期间是否有针对副CPU 2的新中断请求。当存在新的中断请求时,副CPU 2返回步骤S6的操作,并且执行新的中断处理。另一方面,当没有新的中断请求时,副CPU 2进入休眠状态(步骤S8)。副CPU 2通知主CPU状态寄存器31该副CPU 2进入了休眠状态。响应于此,主CPU状态寄存器31存储该主CPU 1处于休眠状态。
在步骤S2中,当确定主CPU 1没有处于休眠状态,即处于操作状态时,处理请求确定部分3发送中断信号到主CPU 1的中断确定部分11(步骤S9)。主CPU 1执行对应于所发送中断信号的中断处理(步骤S10),并且进入步骤S11的操作。
在步骤S11中,主CPU 1确认在步骤S10执行期间是否有针对主CPU 1的新中断请求。当存在新的中断请求时,主CPU 1返回步骤S10的操作,并且执行新的中断处理。另一方面,当没有新的中断请求时,主CPU 1进入休眠状态(步骤S12)。主CPU 1通知主CPU状态寄存器31该主CPU 1进入了休眠状态。响应于此,主CPU状态寄存器31存储该主CPU 1处于休眠状态。
于是,根据第一实施例,当***装置发送中断信号时,信息处理装置100确定该主CPU 1是否处于休眠状态。当主CPU 1处于休眠状态时,信息处理装置100确定可以使该副CPU 2执行中断处理,并且使副CPU 2执行中断处理。因此,如果主CPU 1处于休眠状态,则信息处理装置100可以执行中断处理而不唤醒主CPU 1,使得可以使主CPU 1长时间处于休眠状态,从而可以降低功耗。另一方面,当主CPU 1处于操作状态时,信息处理装置100确定可以使主CPU 1执行中断处理,并且使主CPU 1执行该中断处理。由此,可以提高中断处理的响应速度。于是,在该实施例中,由于根据主CPU 1的操作状态选择了要使用的CPU,所以提供了一种这样的信息处理装置100,其实现了低功耗并且其中用于处理来自***设备的请求的CPU不是固定分配的。在该实施例中,根据CPU的操作状态,确定使用哪个CPU来处理来自***装置的处理请求。因此,与常规技术不同,其不需要在CPU和***装置之间进行直接连接或者提供其间的清楚对应关系。因此,即使当信息处理装置具有不同的硬件结构时,如果使用该实施例的处理请求确定部分3,就提供了这样一种信息处理装置,其实现了低功耗,并且其中用于执行来自***装置的处理请求的CPU不被固定到主CPU或者副CPU。
注意:在第一实施例中,中断确定部分11和21可以设置在CPU内或者处理请求确定部分3内。同样,主CPU状态寄存器31和副CPU状态寄存器33可以设置在CPU内或者处理请求确定部分3内。
注意:将中断信号记录在中断请求寄存器32中的方法可以是除上述形式以外的其它形式。
(第二实施例)
在本发明的第二实施例中,信息处理装置具有类似于第一实施例的硬件结构,并由此参照图1。图4是说明根据本发明的第二实施例的信息处理装置200的功能结构的框图。在图4中,信息处理装置200包括主CPU 1、副CPU 2a、处理请求确定部分3a以及***装置41到43。在图4中,具有类似于第一实施例的功能的部件将由相同的参考标记表示并不再说明。处理请求确定部分3a包括主CPU状态寄存器31、中断请求寄存器32、副CPU状态寄存器33和副CPU处理请求完成寄存器34。
副CPU处理请求完成寄存器34存储是否禁止该副CPU 2a发生中断。当接收到中断请求时,副CPU 2a将指示副CPU 2a正在执行中断处理的标志写入副CPU处理请求完成寄存器34。当完成中断处理时,副CPU 2a将指示该副CPU 2a没有在执行中断处理的标志写入副CPU处理请求完成寄存器34。
图5是本发明的第二实施例的信息处理装置200的操作流程图。在下文中,将参照图5介绍本发明的第二实施例的信息处理装置200的操作。
当***装置41、42和43中的任意一个发送中断信号时,处理请求确定部分3a通过在对应于中断请求寄存器32的***装置41、42和43的部分设定标志来存储已经出现了中断信号(步骤S21)。
接下来,处理请求确定部分3a参照主CPU状态寄存器31来确定主CPU 1是否处于休眠状态(步骤S22)。
当主CPU 1处于操作状态时,处理请求确定部分3a进入步骤S32的操作。另一方面,当主CPU 1处于休眠状态时,处理请求确定部分3a参考副CPU状态寄存器33以确定副CPU 2a是否处于休眠状态(步骤S23)。当副CPU 2a处于休眠状态时,处理请求确定部分3a使副CPU 2a进入操作状态、重写副CPU状态寄存器33(步骤S24),并且进入步骤S25的操作。另一方面,当副CPU 2a处于操作状态时,处理请求确定部分3a进入步骤S25的操作。
在步骤S25中,处理请求确定部分3a参考副CPU处理请求完成寄存器34以确定该副CPU 2a是否可以接受中断请求。当副CPU 2a不能接受中断请求时,即,当副CPU 2a正在执行中断请求时,处理请求确定部分3a进入步骤S26的操作。另一方面,当副CPU 2a可以接受中断请求时,即,当副CPU 2a没有在执行中断请求时,处理请求确定部分3a进入步骤S27的操作。
在步骤S26中,处理请求确定部分3a确定主CPU 1是否处于休眠状态。当主CPU 1处于休眠状态时,处理请求确定部分3a使主CPU1进入操作状态、重写主CPU状态寄存器(步骤S31),并且进入步骤S32的操作。另一方面,当主CPU 1处于操作状态时,处理请求确定部分3a进入步骤S32的操作。
在步骤S27中,处理请求确定部分3a发送中断信号到中断确定部分21,并且进入步骤S28的操作。
在步骤S28中,副CPU 2a执行中断处理。在步骤S28中的中断处理开始期间,副CPU 2a将指示副CPU 2a正在执行中断处理的标志写入副CPU处理请求完成寄存器34中。在步骤S28的中断处理结束期间,副CPU 2a将指示副CPU 2a没有在执行中断处理的标志写入副CPU处理请求完成寄存器34中。在完成该中断处理后,确认在步骤S28期间是否在副CPU 2a中又发生中断(步骤S29)。当中断确定部分21又检测到中断信号时,处理流返回步骤S28,或者当没有检测到中断信号时,副CPU 2a进入休眠状态(步骤S30)。副CPU 2a通知副CPU状态寄存器33其进入了休眠状态。响应于此,副CPU状态寄存器33存储副CPU 2a处于休眠状态。
在步骤S32中,处理请求确定部分3a发送中断信号到主CPU 1的中断确定部分11。接下来,主CPU 1执行对应于所发送中断信号的中断处理(步骤S33),并且进入步骤S34的操作。在步骤S33中,主CPU 1确定在步骤S33执行期间是否存在针对主CPU 1的新中断请求。当存在新的中断请求时,主CPU 1返回步骤S33的操作,并执行新的中断处理。另一方面,当不存在新的中断请求时,主CPU 1进入休眠状态(步骤S35)。主CPU 1通知主CPU状态寄存器31其进入了休眠状态。响应于此,主CPU状态寄存器31存储该主CPU 1处于休眠状态。
于是,根据第二实施例,当从***装置发送中断信号时,信息处理装置200确定主CPU 1是否处于休眠状态。当主CPU 1处于休眠状态时,信息处理装置200确定是否可以使副CPU 2a执行中断处理。当可以使副CPU 2a执行中断处理时,信息处理装置200使副CPU 2a执行中断处理。因此,如果主CPU 1处于休眠状态并且副CPU 2a可以执行中断处理,则中断处理可以执行而不唤醒主CPU 1,使得可以使主CPU 1长时间处于休眠状态,从而可以降低功耗。另一方面,当主CPU 1处于休眠状态并且副CPU 2a不能执行中断处理时,信息处理装置200使主CPU 1进入操作状态并且使主CPU 1执行中断处理。同样,如果主CPU 1处于操作状态,则信息处理装置200确定可以使主CPU 1执行中断处理,于是就使主CPU 1执行中断处理。因此,可以提高中断处理的响应速度。于是,在该实施例中,由于根据主CPU 1和副CPU 2a的操作状态选择了要被使用的CPU,所以提供了一种这样的信息处理装置200,其实现了低功耗并且其中用于处理来自***装置的请求的CPU不是固定分配的。在该实施例中,根据CPU的操作状态,确定使用哪个CPU来处理来自***装置的处理请求。因此,与常规技术不同,其不需要在CPU和***装置之间进行直接连接或者提供其间的清楚对应关系。因此,即使当信息处理装置具有不同的硬件结构时,如果使用该实施例的处理请求确定部分3a,就提供了这样一种信息处理装置,其实现了低功耗,并且其中用于执行来自***装置的处理请求的CPU也不用固定到主CPU或者副CPU。
注意:在第二实施例中,中断确定部分11和21可以设置在CPU内或者处理请求确定部分3a内。同样,主CPU状态寄存器31和副CPU状态寄存器33可以设置在CPU内或者处理请求确定部分3a内。副CPU处理请求完成寄存器34也可以设置在CPU内或者处理请求确定部分3a内。
注意:将中断信号记录在中断请求寄存器32中的方法可以是除图2的形式以外的其它形式。
(第三实施例)
在本发明的第三实施例中,信息处理装置具有类似于第一实施例的硬件结构,并由此参照图1。图6是说明根据本发明的第三实施例的信息处理装置300的功能结构的框图。在图6中,信息处理装置300包括主CPU 1b、副CPU 2b、处理请求确定部分3b、***装置41到43、主CPU唤醒请求发送部分44、存储区确定部分51以及存储区61。在图6中,具有类似于第一实施例和第二实施例的功能的部件将由相同的参考标记表示并不再说明。
存储区61是主CPU 1和副CPU 2可以参考的存储区。存储区61对应于图1的RAM(M8和M9)。
存储区确定部分51存储存储区61是否正被副CPU 2b使用。存储区确定部分51使用Lock(锁)变量来管理副CPU 2b所使用的存储区61的状态。存储区确定部分51对应于图1的RAM(M8和M9)。存储区确定部分51在存储器61正被副CPU 2参考时将指示存储区61正被参考的标志存储在Lock变量中。注意:当副CPU 2参考存储区61时,该标志由副CPU 2b设定。当设定标志时,认为该Lock变量被锁定。当该标志没有被设定时,认为该Lock变量被释放。
主CPU唤醒请求发送部分44发送用于使主CPU 1b进入操作状态的中断信号。
除了主CPU 1b和副CPU 2b可以访问存储区确定部分51和存储区61之外,主CPU 1b和副CPU 2b具有类似于第一和第二实施例的主CPU 1和副CPU 2和2b的功能。
尽管图6只说明了一对相对应的存储区61和存储区确定部分51,但是可以提供任意对。
图7A到7D是本发明的第三实施例的信息处理装置300的操作流程图。在下文中,将参照图7A到7D说明本发明的第三实施例的信息处理装置300的操作。
当***装置41、42和43中的任意一个发送中断信号时,处理请求确定部分3b通过在中断请求寄存器32的对应于***装置41、42或者43的部分设定标志来存储已经出现了中断信号(步骤S41)。
接着,处理请求确定部分3b参考主CPU状态寄存器31以确定主CPU 1b是否处于休眠状态(步骤S42)。
当主CPU 1处于操作状态时,处理请求确定部分3b进入步骤S49的操作。另一方面,当主CPU 1b处于休眠状态时,处理请求确定部分3b参考副CPU状态寄存器33以确定副CPU 2b是否处于休眠状态(步骤S43)。当副CPU 2b处于休眠状态时,处理请求确定部分3b使副CPU 2b进入操作状态、重写副CPU状态寄存器33(步骤S44),并且进入步骤S45的操作。另一方面,当副CPU 2b处于操作状态时,处理请求确定部分3b进入步骤S45的操作。
在步骤S45中,处理请求确定部分3b参考副CPU处理请求完成寄存器34以确定副CPU 2b是否可以接受中断请求。当副CPU 2b不能接受中断请求时,处理请求确定部分3b进入步骤S47的操作。另一方面,当副CPU 2b可以接受中断请求时,处理请求确定部分3b进入步骤S46的操作。
在步骤S47中,处理请求确定部分3b确定主CPU 1b是否处于休眠状态。当主CPU 1处于休眠状态时,处理请求确定部分3b使主CPU 1b进入操作状态、重写主CPU状态寄存器(步骤S48),并且进入步骤S49的操作。另一方面,当主CPU 1b处于操作状态时,处理请求确定部分3b进入步骤S49的操作。
在步骤S46中,处理请求确定部分3b发送中断信号到副CPU 2b的中断确定部分21,并且进入步骤S100的操作。
在步骤S49中,处理请求确定部分3b发送中断信号到主CPU 1b的中断确定部分11,并且进入步骤S200的操作。
图7B是信息处理装置300在图7A的步骤S100中的操作的流程图。在下文中,将参照图7B说明信息处理装置300在图7A的步骤S100中的操作。
当检测到中断信号时,副CPU 2b开始副CPU中断例程(步骤S101)、将中断禁止标志写入副CPU处理请求完成寄存器34(步骤S102),并且执行中断处理(步骤S103)。接着,处理请求确定部分3b确定在副CPU 2b的中断处理执行期间是否存在唤醒主CPU 1b的请求(步骤S104)。当存在唤醒主CPU 1b的请求时,处理请求确定部分3b执行处理交换例程(步骤S300),并且进入步骤S106的操作。另一方面,当不存在唤醒主CPU 1b的请求时,在中断处理完成后处理请求确定部分3b将中断允许标志写入副CPU处理请求完成寄存器34(步骤S105),并进入步骤S106的操作。
在步骤S106中,处理请求确定部分3b确定在中断处理期间是否出现了针对副CPU 2的新中断请求。当已经出现新中断请求时,处理请求确定部分3b返回步骤S102的操作。另一方面,当没有出现新中断请求时,处理请求确定部分3b使副CPU 2b进入休眠状态(步骤S107),并且结束副CPU中断例程(步骤S108)。
图17C是信息处理装置300在步骤S200中的操作的流程图。当中断确定部分11检测到中断信号时,主CPU 1b开始主CPU中断例程(步骤S201)。接着,主CPU 1b执行对应于该中断信号的中断处理(步骤S202)。主CPU 1b确定在步骤S202期间是否出现了针对主CPU1b的新中断请求(步骤S203)。当已经出现了新中断请求时,主CPU 1b返回步骤S202并且处理新中断请求。另一方面,当没有出现新中断请求时,主CPU 1b进入休眠状态、将该事件通知主CPU状态寄存器(步骤S204),并且结束主CPU状态寄存器中断例程(步骤S205)。
图17D是信息处理装置300在步骤S300中的操作的流程图。最初,当开始处理交换例程时(步骤S301),副CPU 2b将当前副CPU 2b已经接受的中断处理的号(下文称为中断号)传送到主CPU唤醒请求发送部分44(步骤S302)。接着,主CPU唤醒请求发送部分44发送包括该中断号的中断信号到处理请求确定部分3b(步骤S303)。接着,处理请求确定部分3b发送该中断信号到主CPU 1b(步骤S304)。根据该中断信号,主CPU 1b执行忙循环直到从存储区确定部分51获得Lock变量(步骤S305),并且当获得Lock变量时,开始继续进行副CPU 2b的处理(步骤S306),并且结束中断交换例程(步骤S307)。
图8是具体说明使主CPU 1b接管副CPU 2b中的处理的示例性方法的顺序图。最初,假设主CPU 1b处于休眠状态(步骤S401)。根据发送到副CPU 2b的中断信号(步骤S501),副CPU 2b执行中断处理(步骤S502),并且从存储区确定部分51获得Lock变量(步骤S503)。接着,副CPU 2b将用于唤醒主CPU 1b的请求发送到主CPU唤醒请求发送部分44(步骤S504)。响应于此,主CPU唤醒请求发送部分44发送中断信号到主CPU 1b,使得执行用于唤醒主CPU 1b的中断(步骤S505)。
根据中断信号,主CPU 1b执行用于进入操作状态的唤醒处理(步骤S402)。在完成唤醒处理后,主CPU 1b将主CPU状态寄存器31设置为操作状态。当主CPU状态寄存器31进入操作状态时,处理请求确定部分3b发送中断信号到主CPU 1b(步骤S601),并且将作为唤醒完成触发的主CPU唤醒完成中断信号发送到副CPU 2b(步骤S403)。
根据唤醒完成触发,副CPU 2b闪存存储区61中存储的高速缓存数据(步骤S506),并且将寄存器信息存储到存储区61中(步骤S507)。
主CPU 1b执行忙循环以获得Lock变量,直到Lock变量被释放(步骤S404)。当副CPU 2b释放该Lock变量(步骤S508)时,主CPU 1b走出忙循环并且获得该Lock变量(步骤S405),从存储区61获得副CPU 2b所存储的寄存器信息(步骤S406),并且开始继续已经在副CPU 2b中执行的中断处理(步骤S407)。这里,上述实例中所述的主CPU 1b的唤醒完成触发通过改变主CPU状态寄存器31来实现。然而,唤醒完成触发的事件可以由专门用于通知副CPU 2b该事件的***装置来执行。
于是,根据第三实施例,当***装置发送中断信号时,信息处理装置300确定主CPU 1b是否处于休眠状态。当主CPU 1b处于休眠状态时,信息处理装置300确定是否可以使副CPU 2b执行中断处理。当可以使副CPU 2b执行中断处理时,信息处理装置300使副CPU 2b执行该中断处理。因此,如果主CPU 1b处于休眠状态并且副CPU 2b可以执行中断处理,则中断处理可以在不唤醒主CPU 1b的情况下执行,使得主CPU 1b可以长时间处于休眠状态,从而可以降低功耗。另一方面,当主CPU 1b处于休眠状态并且副CPU 2b不能执行中断处理时,信息处理装置300使主CPU 1b进入操作状态并且使主CPU1b执行中断处理。同样,如果主CPU 1b处于操作状态,则信息处理装置300使主CPU 1b执行该中断处理。从而,可以提高中断处理的响应速度。此外,如果在副CPU 2b执行中断处理期间存在唤醒主CPU1b的请求,则信息处理装置300如此操作,使得主CPU 1b继续执行副CPU 2b中的处理。因此,可以进一步提高中断处理的响应速度。于是,在该实施例中,由于根据主CPU 1b和副CPU 2b的操作状态来选择将要使用的CPU,所以提供了一种这样的信息处理装置300,其实现了低功耗并且其中用于处理来自***设备的请求的CPU不是固定分配的。在该实施例中,根据CPU的操作状态确定使用哪个CPU来处理来自***装置的处理请求。因此,这与常规技术不同,其不需要在CPU和***装置之间进行直接连接或者提供其间的清楚对应关系。因此,即使当信息处理装置具有不同的硬件结构时,如果使用该实施例的处理请求确定部分3b,就提供了这样一种信息处理装置,其实现了低功耗,并且其中用于执行来自***装置的处理请求的CPU也不用固定到主CPU或者副CPU。
注意:在第三实施例中,中断确定部分11和21可以设置在CPU内或者处理请求确定部分3b内。同样,主CPU状态寄存器31和副CPU状态寄存器33可以设置在CPU内或者处理请求确定部分3b内。副CPU处理请求完成寄存器34也可以设置在CPU内或者处理请求确定部分3b内。
注意:将中断信号记录在中断请求寄存器32中的方法可以是除图6的形式以外的其它形式。
(第四实施例)
在本发明的第四实施例中,信息处理装置具有类似于第一实施例的硬件结构,并由此参照图1。图9是说明根据本发明的第四实施例的信息处理装置400的功能结构的框图。在图9中,信息处理装置400包括主CPU 1c、副CPU 2a、处理请求确定部分3c以及***装置41到43。在图9中,具有类似于第二实施例的功能的部件将由相同的参考标记表示并不再说明。处理请求确定部分3c包括主CPU状态寄存器31、主CPU处理请求完成寄存器35、中断请求寄存器32、副CPU状态寄存器33和副CPU处理请求完成寄存器34。
主CPU处理请求完成寄存器35存储是否禁止主CPU 1c被中断。当接收到中断请求时,主CPU 1c将指示主CPU 1c正在执行中断处理的标志写入主CPU处理请求完成寄存器35。当结束该中断处理时,主CPU 1c将指示主CPU 1c没有在执行中断的标志写入主CPU处理请求完成寄存器35。于是,第四实施例的信息处理装置400具有通过将主CPU处理请求完成寄存器35添加到第二实施例的信息处理装置200所获得的结构。
图10是本发明的第四实施例的信息处理装置400的操作流程图。在下文中,将参照图10说明本发明的第四实施例的信息处理装置400的操作。
信息处理装置400的操作与第二实施例的信息处理装置200的操作具有许多共同点。在图10的流程图的步骤中,具有类似于第二实施例的信息处理装置200的操作的步骤将由类似于图5的步骤号来表示并且不对其进行描述。
图10的流程图与图5的第二实施例的流程图的不同之处在于:在从步骤S22转换到步骤S32的某个中点处增加了步骤S51的操作。在步骤S22中,当确定主CPU 1c处于操作状态时,处理请求确定部分3c执行步骤S51的操作。在步骤S51中,处理请求确定部分3c参考存储在主CPU处理请求完成寄存器35中的寄存器来确定主CPU1c是否可以接受中断。当主CPU 1c不能接受中断时,信息处理装置400进入步骤S23的操作。另一方面,当主CPU 1c可以接受中断时,信息处理装置400进入步骤S32的操作。随后的处理步骤类似于第二实施例。
于是,根据第四实施例,当主CPU 1c处于休眠状态时,副CPU2a执行中断处理,从而可以使主CPU 1长时间处于休眠状态。另一方面,当主CPU 1c处于操作状态时,副CPU 2a也可以并行处理中断处理。与第二实施例相比,提高了信息处理装置400的响应速度。从而提供了一种实现低功耗并且其中响应速度提高的信息处理装置。
(第五实施例)
在本发明的第五实施例中,信息处理装置具有类似于第一实施例的硬件结构,并由此参照图1。图11是说明本发明的第五实施例的信息处理装置500的功能结构的框图。在图11中,信息处理装置500包括主CPU 1c、副CPU 2a、处理请求确定部分3d以及***装置41到43。在图11中,具有类似于第四实施例的功能的部件将由相同的参考标记表示并不再说明。处理请求确定部分3d包括主CPU状态寄存器31、主CPU处理请求完成寄存器35、中断请求寄存器32、副CPU状态寄存器33、副CPU处理请求完成寄存器34以及处理请求目的地指定部分36。
处理请求目的地指定部分36与中断号相关联地存储关于处理请求确定部分3d应该将中断信号发送到主CPU 1c还是副CPU 2a的信息(以下称为指定CPU信息),和关于除了指定CPU之外的其它CPU是否可以使用的信息(其它CPU可用性信息)。
图12是说明存储在处理请求目的地指定部分36中的示例性信息的图。在图12中,例如,作为中断号,当分配了来自***装置41的中断处理时,定义了:处理请求确定部分3d应该将中断信号发送到主CPU 1c,并且可以将中断信号发送到副CPU 2a。同样,例如,作为中断号,当分配了来自***装置42(或者43)的中断处理时,定义了:处理请求确定部分3d应该将中断发送到副CPU 2a,并且不允许将中断信号发送到主CPU 1c。
例如,在信息处理装置500的初始化期间,限定处理请求目的地指定部分36的限定内容。
图13A到13D是本发明的第五实施例的信息处理装置500的操作流程图。在下文中,将参照图13A到13D说明本发明的第五实施例的信息处理装置500的操作。
当***装置41、42和43中的任意一个发送中断信号时,处理请求确定部分3d通过在中断请求寄存器32的对应于***装置41、42或者43的部分设定标志来存储已经出现了中断信号(步骤S61)。
接着,处理请求确定部分3d执行处理请求目的地确定功能以确定应该执行中断处理的CPU(步骤S700)。
在步骤S700中,当将副CPU 2a指定为应该执行中断处理的CPU时,处理请求确定部分3d参考副CPU状态寄存器33以确定副CPU 2a是否处于休眠状态(步骤S62)。当副CPU 2a处于休眠状态时,处理请求确定部分3d使副CPU 2a进入操作状态(步骤S63),并且进入步骤S64的操作。另一方面,当副CPU 2a处于操作状态时,处理请求确定部分3d进入步骤S64的操作。在步骤S64中,处理请求确定部分3d参考副CPU处理请求完成寄存器34以确定副CPU 2a是否可以接受中断处理。当副CPU 2a不能接受中断处理时,处理请求确定部分3d返回步骤S64的操作。另一方面,当副CPU 2a可以接受中断处理时,处理请求确定部分3d发送中断信号到中断确定部分21(步骤S65),并且执行副CPU中断处理例程(步骤S900)。
在步骤S700中,当指定主CPU 1c为应该执行中断处理的CPU时,处理请求确定部分3d参考主CPU状态寄存器31以确定主CPU 1c是否处于休眠状态(步骤S66)。当主CPU 1c处于休眠状态时,处理请求确定部分3d使主CPU 1c进入操作状态(步骤S67),并且进入步骤S68的操作。另一方面,当主CPU 1c处于操作状态时,处理请求确定部分3d进入步骤S68的操作。在步骤S68中,处理请求确定部分3d参考主CPU处理请求完成寄存器35以确定主CPU 1c是否可以接受中断处理。当主CPU 1c不能接受中断处理时,该处理请求确定部分3d返回步骤S68的操作。另一方面,当主CPU 1c可以接受中断处理时,处理请求确定部分3d发送中断信号到中断确定部分11(步骤S69),并且执行主CPU中断处理例程(步骤S800)。
图13B是图13A的步骤S700的处理的流程图。在下文,将参考图13B详细介绍图13A的步骤S700的处理。
当处理请求功能开始时(步骤S701),处理请求确定部分3d参考处理请求目的地指定部分36的指定CPU信息来确认针对该中断信号指定哪一个CPU(步骤S702)。
当指定的CPU是主CPU 1c时,处理请求确定部分3d参考主CPU状态寄存器31以确定主CPU 1c是否处于休眠状态(步骤S707)。当主CPU 1c处于操作状态时,处理请求确定部分3d进入步骤S709的操作。另一方面,当主CPU 1c处于休眠状态时,处理请求确定部分3d参考处理请求目的地指定部分36的其它CPU可用性信息来确定是否允许将中断信号发送到副CPU 2a(步骤S708)。当允许将中断信号发送到副CPU 2a时,处理请求确定部分3d选择副CPU 2a作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S711)。另一方面,当不允许将中断信号发送到副CPU 2a时,处理请求确定部分3d进入步骤S709的操作。
在步骤S709中,处理请求确定部分3d参考主CPU处理请求完成寄存器35以确定主CPU 1c是否可以接受中断。当主CPU 1c可以接受中断时,处理请求确定部分3d选择主CPU 1c作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S712)。另一方面,当主CPU 1c不能接受中断时,处理请求确定部分3d确定是否允许将中断信号发送到副CPU 2a,这与步骤S708类似(步骤S710)。当允许将中断信号发送到副CPU 2a时,处理请求确定部分3d选择副CPU 2a作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S711)。另一方面,当不允许将中断信号发送到副CPU 2a时,处理请求确定部分3d选择主CPU 1c作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S712)。
在步骤S702中,当指定的CPU是副CPU 2a时,处理请求确定部分3d参考副CPU状态寄存器33以确定副CPU 2a是否处于休眠状态(步骤S703)。当副CPU 2a处于操作状态时,处理请求确定部分3d进入步骤S705的操作。另一方面,当副CPU 2a处于休眠状态时,处理请求确定部分3d参考处理请求目的地指定部分36的其它CPU可用性信息来确定是否允许将中断信号发送到主CPU 1c(步骤S704)。当允许将中断信号发送到主CPU 1c时,处理请求确定部分3d选择主CPU 1c作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S712)。另一方面,当不允许将中断信号发送到主CPU 1c时,处理请求确定部分3d进入步骤S705的操作。
在步骤S705中,处理请求确定部分3d参考副CPU处理请求完成寄存器34以确定副CPU 2a是否可以接受中断。当副CPU 2a可以接受中断时,处理请求确定部分3d选择副CPU 2a作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S711)。另一方面,当副CPU 2a不能接受中断时,处理请求确定部分3d确定是否允许将中断信号发送到主CPU 1c,这与步骤S704类似(步骤S706)。当允许将中断信号发送到主CPU 1c时,处理请求确定部分3d选择主CPU 1c作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S712)。另一方面,当不允许将中断信号发送到主CPU 1c时,处理请求确定部分3d选择副CPU 2a作为处理请求目的地CPU,并且结束处理请求目的地确定功能(步骤S711)。
图13C是图13A的步骤S800中的主CPU中断处理例程的具体流程图。在下文,将参考图13C详细介绍图13A的步骤S800中的主CPU中断处理例程。
当主CPU中断处理例程开始并且中断确定部分11检测到中断信号时(步骤S801),主CPU 1c将中断禁止标志写入主CPU处理请求完成寄存器35(步骤S802),并且执行对应于中断号的中断处理(步骤S803)。当中断处理完成时,主CPU 1c将中断允许标志写入主CPU处理请求完成寄存器35(步骤S804)。接着,主CPU 1c参考中断确定部分11以确定是否存在中断请求(步骤S805)。当存在中断请求时,主CPU 1c返回步骤S802的操作。另一方面,当不存在中断请求时,主CPU 1c进入休眠状态(步骤S806),并且结束主CPU中断处理例程(步骤S807)。
图13D是图13A的步骤S900中的副CPU中断处理例程的具体流程图。在下文,将参考图13D详细介绍图13A的步骤S900中的副CPU中断处理例程。
当副CPU中断处理例程开始并且中断确定部分21检测到中断信号时(步骤S901),副CPU 2a将中断禁止标志写入副CPU处理请求完成寄存器34(步骤S902),并且执行对应于中断号的中断处理(步骤S903)。当中断处理完成时,副CPU 2a将中断允许标志写入副CPU处理请求完成寄存器34(步骤S904)。接着,副CPU 2a参考中断确定部分21以确定是否存在中断请求(步骤S905)。当存在中断请求时,副CPU 2a返回步骤S902的操作。另一方面,当不存在中断请求时,副CPU 2a进入休眠状态(步骤S906),并且结束副CPU中断处理例程(步骤S907)。
于是,根据第五实施例,可以灵活地确定使哪个CPU来执行针对每个中断的处理,使得例如将具有相对小处理负载并且在短周期内执行的事件分配给副CPU 2a,而将其它事件分配给主CPU 1c,从而可以降低功耗。同样,在第五实施例中,当通过处理请求目的地指定部分36指定主CPU 1c时,信息处理装置500最初确定主CPU 1c是否处于休眠状态(见图13B的步骤S707)。当主CPU 1c处于休眠状态时,信息处理装置500确定中断处理是否可以由副CPU 2a执行(见图13B的步骤S708)。当中断处理可以由副CPU 2a执行时,信息处理装置500使副CPU 2a执行中断处理。于是,如果主CPU 1c处于休眠状态并且副CPU 2a可以执行中断处理,则中断处理可以在不唤醒主CPU 1c的情况下进行,使得主CPU 1c可以长时间处于休眠状态,从而可以降低功耗。另一方面,当主CPU 1c处于操作状态时,处理请求确定部分3d确定中断处理是否可以由主CPU 1c执行。当中断处理可以由主CPU 1c执行时,主CPU 1c执行该中断处理,使得响应速度提高。
注意:在第五实施例中,中断确定部分11和21可以设置在CPU内或者处理请求确定部分3d内。同样,主CPU状态寄存器31和副CPU状态寄存器33可以设置在CPU内或者处理请求确定部分3d内。副CPU处理请求完成寄存器34也可以设置在CPU内或者处理请求确定部分3d内。
注意:将中断信号记录在中断请求寄存器32中的方法可以是除图11的形式以外的其它形式。
注意:在第五实施例中,作为接受中断前的处理,使用如图13A的步骤S64和S68所示的忙循环。然而,处理请求确定部分3d可以在诸如队列的数据结构中按时间序列积累中断处理,并且发送其后的中断信号,同时监控中断确定部分11和21。
注意:在第五实施例中,如同在第三实施例中,可以引入用于使主CPU 1c接管副CPU 2a中的处理的机制。这可以通过透彻理解第三实施例的图7B到7D和图8所得来的方法来实现。
注意:在第五实施例中,步骤S709、S703和S705中的至少一个是非必需的。
(第六实施例)
根据本发明的第六实施例的信息处理装置具有类似于第五实施例的部件,并由此参照图1、11和12。
图14是本发明的第六实施例的信息处理装置的操作流程图。在下文中,将参照图14来介绍本发明的第六实施例的信息处理装置的操作。
当***装置41、42和43中的任意一个发送中断信号时,处理请求确定部分3d通过在中断请求寄存器32的对应于***装置41、42或者43的部分设定标志来存储已经出现了中断信号(步骤S71)。
接着,处理请求确定部分3b参考主CPU状态寄存器31以确定主CPU 1是否处于休眠状态(步骤S72)。
在步骤S72中,当确定主CPU 1处于操作状态时,处理请求确定部分3d参考主CPU处理请求完成寄存器35来确定主CPU 1c是否可以接受中断(步骤S73)。当主CPU 1c可以接受中断时,处理请求确定部分3d参考处理请求目的地指定部分36中所定义的表中的指定CPU信息,根据是否将主CPU 1c指定为指定CPU来确定是否允许将中断信号发送到主CPU 1c(步骤S74)。这里,作为处理请求目的地指定部分36中所定义的表的实例,可以使用如图15以及图12所示出的表,其中指定CPU信息只与中断号相关联地定义。
在步骤S74中,当不允许将中断信号发送到主CPU 1c时,处理请求确定部分3d进入步骤S75的操作。另一方面,当允许将中断信号发送到主CPU 1c时,处理请求确定部分3d进入步骤S81的操作。
在步骤S75中,处理请求确定部分3d参考副CPU状态寄存器33来确定副CPU 2a是否处于休眠状态。
当副CPU 2a处于休眠状态时,处理请求确定部分3d使副CPU 2a进入操作状态(步骤S76),并且进入步骤S77的操作。另一方面,当副CPU 2a没有处于休眠状态时,处理请求确定部分3d进入步骤S77的操作。
在步骤S77中,处理请求确定部分3d参考副CPU处理请求完成寄存器34来确定副CPU 2a是否可以接受中断信号。
当副CPU 2a不能接受中断时,处理请求确定部分3d返回步骤S77的操作,并且当确定副CPU 2a不能接受中断时,处理请求确定部分3d执行忙循环来等待,直到副CPU 2a可以接受中断。当副CPU2a可以接受中断信号时,处理请求确定部分3d发送中断信号到中断确定部分21(步骤S78),并且执行副CPU中断处理例程(步骤S900)。该副CPU中断处理例程类似于第五实施例的副CPU中断处理例程,并由此参照图13D,并且不再对该副CPU中断处理例程进行说明。
在步骤S72中,当确定主CPU 1c处于休眠状态时,处理请求确定部分3d参考处理请求目的地指定部分36中所定义的表上的指定CPU信息来确定是否允许将中断信号发送到副CPU 2a(步骤S79)。当允许将中断信号发送到副CPU 2a时,处理请求确定部分3d进入步骤S75的操作。另一方面,当确定不允许将中断信号发送到副CPU 2a时,处理请求确定部分3d使主CPU 1c进入操作状态(步骤S80),并且进入步骤S81的操作。
在步骤S81中,处理请求确定部分3d参考主CPU处理请求完成寄存器35来确定主CPU 1c是否可以接受中断。当主CPU 1c不能接受中断时,处理请求确定部分3d返回步骤S81的操作,并且在主CPU1c可以接受中断前一直执行忙等待。当主CPU 1c可以接受中断时,处理请求确定部分3d发送中断信号到中断确定部分11(步骤S82),并且执行主CPU中断处理例程(步骤S900)。该主CPU中断处理例程类似于第五实施例的主CPU中断处理例程,并由此可以参考图13C,并且不再对主CPU中断处理例程进行说明。
于是,根据第六实施例,例如可以灵活地确定使哪个CPU来执行针对每个中断的处理,使得例如将具有较小的处理负载并且在短周期内执行的事件分配给副CPU 2,而将其它事件分配给主CPU 1,从而可以降低功耗。同样,在第六实施例中,信息处理装置最初确定主CPU 1c是否处于休眠状态(见图14的步骤S72)。当主CPU 1c处于休眠状态时,信息处理装置确定中断处理是否可以由副CPU 2a执行(见图14的步骤S79)。当中断处理可以由副CPU 2a执行时,信息处理装置使副CPU 2a执行中断处理。因此,如果主CPU 1c处于休眠状态并且副CPU 2a可以执行中断处理,则中断处理可以在不唤醒主CPU 1c的情况下进行,使得主CPU 1c可以长时间处于休眠状态,从而可以降低功耗。另一方面,当主CPU 1c处于操作状态时,处理请求确定部分3d确定中断处理是否可以由主CPU 1c执行(图14的步骤S74)。当中断处理可以由主CPU 1c执行时,该信息处理装置使主CPU1c执行中断处理。从而提高了响应速度。
注意:在第六实施例中,中断确定部分11和21可以设置在CPU内或者处理请求确定部分3d内。同样,主CPU状态寄存器31和副CPU状态寄存器33可以设置在CPU内或者处理请求确定部分3d内。副CPU处理请求完成寄存器34也可以设置在CPU内或者处理请求确定部分3d内。
注意:将中断信号记录在中断请求寄存器32中的方法可以是除图11的形式以外的其它形式。
注意:在第六实施例中,作为接受中断前的处理,使用如图14的步骤S77和S81所示的忙循环。然而,处理请求确定部分3d可以在诸如队列的数据结构中按时间序列积累中断处理,并且发送其后的中断信号,同时监控中断确定部分11和21。
注意:在第六实施例中,如同在第三实施例中,可以引入用于使主CPU 1c接管副CPU 2a中的处理的机制。这可以通过透彻理解第三实施例的图7B到7D所得到的方法来实现。
注意:中断控制器(M4)可以是通用计算机装置(例如,微型计算机等),存储在存储器装置中的程序可以读入该计算机装置中,并且实施例中所述的操作可以由该计算机装置执行,从而实现处理请求确定部分。该程序可以预先并入信息处理装置中,或者可以后来装入信息处理装置中。
注意:用于实现本发明的信息处理装置的功能块(例如,处理请求确定部分)一般可以实现为集成电路(LSI)。可以将每个功能块分别安装在一个芯片上,或者可以将所有功能块的一部分或者全部安装在一个芯片上。这里,使用术语LSI。LSI也可称为IC、***LSI、超级LSI或者超LSI,这取决于封装密度。同样,集成电路不限于LSI。集成电路可以通过专用电路或者通用处理器来实现。此外,可以使用现场可编程门阵列(FPGA)或者可重配置的处理器,其中FPGA可以在LSI生产后重新编程,可重配置的处理器中,LSI中的电路单元的连接或者设置可以被重新配置。而且,如果代替LSI的集成电路技术随着半导体技术的进步或者来源于半导体技术的其它技术的出现而发展,则可以使用这种技术来封装功能块。生物工艺学同样可以适用。
尽管已经详细介绍了本发明,但是前述说明在所有方面都是示例性的而非限制性的。应该理解,在不脱离本发明范围的情况下,可以设计许多其它的改进和变化。
工业实用性
本发明的信息处理装置可以使用具有低功耗的副CPU来执行处理,而不使具有高性能、高功耗的主CPU频繁进入操作状态。因此,本发明的信息处理装置可用于由电池驱动的移动终端等。同样,本发明的信息处理装置还适用于各种家用电器、信息处理装置、工业装置等期望展示功率降低效果的装置以及移动终端装置。

Claims (16)

1、一种用于控制一个以上的内部或者外部***装置的信息处理装置,包括:
主CPU,其能够采用至少两种状态,即操作状态和休眠状态;
副CPU,其功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态;以及
处理请求确定部分,用于确定使所述主CPU和所述副CPU中的哪一个来执行涉及来自所述***装置中的一个的请求的处理,
其中所述处理请求确定部分确定所述主CPU是处于休眠状态还是处于操作状态,并且当所述主CPU处于休眠状态时,确定是否使所述副CPU执行所述处理,并且当所述主CPU处于操作状态时,确定是否能够使所述主CPU执行所述处理,并且根据所述确定的结果,使所述主CPU或者所述副CPU执行所述处理。
2、根据权利要求1所述的信息处理装置,其中,当所述主CPU处于休眠状态时,所述处理请求确定部分使所述副CPU执行所述处理,以及
当所述主CPU处于操作状态时,所述处理请求确定部分使所述主CPU执行所述处理。
3、根据权利要求1所述的信息处理装置,其中,当所述主CPU处于休眠状态时,所述处理请求确定部分确定所述副CPU是否可以接受所述处理,并且当所述副CPU可以接受所述处理时,使所述副CPU执行所述处理,并且当所述副CPU不能接受所述处理时,使所述主CPU执行所述处理,以及
当所述主CPU处于操作状态时,所述处理请求确定部分使所述主CPU执行所述处理。
4、根据权利要求1所述的信息处理装置,其中,当所述主CPU处于休眠状态时,所述处理请求确定部分确定所述副CPU是否可以接受所述处理,并且当所述副CPU可以接受所述处理时,使所述副CPU执行所述处理,并且当所述副CPU不能接受所述处理时,使所述主CPU执行所述处理,以及
当所述主CPU处于操作状态时,所述处理请求确定部分确定所述主CPU是否可以接受所述处理,并且当所述主CPU可以接受所述处理时,使所述主CPU执行所述处理,并且当所述主CPU不能接受所述处理时,确定是否可以使所述副CPU执行所述处理。
5、根据权利要求1所述的信息处理装置,还包括:
处理请求目的地指定部分,其与所述***装置中的一个中的处理相关联地将期望执行所述处理的期望CPU预先定义为指定CPU信息,
其中,当所述处理请求目的地指定部分的所述指定CPU信息所指定的CPU是所述主CPU时,所述处理请求确定部分确定所述主CPU是处于休眠状态还是处于操作状态。
6、根据权利要求5所述的信息处理装置,其中所述处理请求目的地指定部分还将是否允许使用除了所述指定CPU信息中所定义的所述CPU之外的CPU来执行所述处理定义为其它CPU可用性信息,并且
当所述主CPU处于休眠状态时,所述处理请求确定部分参考所述其它CPU可用性信息来确定是否允许所述副CPU执行所述处理,
当允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理,以及
当不允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理。
7、根据权利要求6所述的信息处理装置,其中,当所述主CPU处于操作状态时,所述处理请求确定部分确定所述主CPU是否可以接受所述处理,
当所述主CPU可以接受所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理,
当所述主CPU不能接受所述处理时,所述处理请求确定部分参考所述其它CPU可用性信息来确定是否允许所述副CPU执行所述处理,
当允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理,以及
当不允许所述副CPU执行所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理。
8、根据权利要求5所述的信息处理装置,其中,当所述处理请求目的地指定部分的所述指定CPU信息所指定的CPU是所述副CPU时,所述处理请求确定部分确定所述副CPU是处于休眠状态还是处于操作状态,以确定使所述主CPU和所述副CPU中的哪一个执行所述处理。
9、根据权利要求8所述的信息处理装置,其中所述处理请求目的地指定部分还将是否允许使用除了所述指定CPU信息中所定义的CPU之外的CPU来执行所述处理定义为其它CPU可用性信息,
当所述副CPU处于休眠状态时,所述处理请求确定部分参考所述其它CPU可用性信息来确定是否允许所述主CPU执行所述处理,
当允许所述主CPU执行所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理,以及
当不允许所述主CPU执行所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理。
10、根据权利要求9所述的信息处理装置,其中,当所述副CPU处于操作状态时,所述处理请求确定部分确定所述副CPU是否可以接受所述处理,
当所述副CPU可以接受所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理,
当所述副CPU不能接受所述处理时,所述处理请求确定部分参考所述其它CPU可用性信息来确定是否允许所述主CPU执行所述处理,
当允许所述主CPU执行所述处理时,所述处理请求确定部分确定使所述主CPU执行所述处理,以及
当不允许所述主CPU执行所述处理时,所述处理请求确定部分确定使所述副CPU执行所述处理。
11、根据权利要求1所述的信息处理装置,还包括:
处理请求目的地指定部分,其与所述***装置中的一个中的处理相关联地将期望执行所述处理的期望CPU预先定义为指定CPU信息,
当所述主CPU处于休眠状态时,所述处理请求确定部分参考所述指定CPU信息来确定是否允许所述副CPU执行所述处理,
当允许所述副CPU执行所述处理时,所述处理请求确定部分使所述副CPU执行所述处理,以及
当不允许所述副CPU执行所述处理时,所述处理请求确定部分使所述主CPU执行所述处理。
12、根据权利要求11所述的信息处理装置,其中,当所述主CPU处于操作状态时,所述处理请求确定部分确定所述主CPU是否可以接受所述处理,
当所述主CPU不能接受所述处理时,所述处理请求确定部分参考所述指定CPU信息来确定是否允许所述主CPU执行所述处理,
当允许所述主CPU执行所述处理时,所述处理请求确定部分使所述主CPU执行所述处理,
当不允许所述主CPU执行所述处理时,所述处理请求确定部分使所述副CPU执行所述处理,以及
当所述主CPU可以接受所述处理时,所述处理请求确定部分使所述副CPU执行所述处理。
13、根据权利要求1所述的信息处理装置,其中,如果在使所述副CPU执行所述处理的同时存在唤醒所述主CPU的请求,则所述副CPU和所述主CPU执行使所述主CPU接管在所述副CPU中执行的处理的处理。
14、一种应用在用于控制一个以上的内部或者外部***装置的信息处理装置中的处理方法,所述信息处理装置包括:主CPU,其能够采用至少两种状态,即操作状态和休眠状态,以及副CPU,其功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态,所述方法包括:
确定所述主CPU是处于休眠状态还是处于操作状态;
当所述主CPU处于休眠状态时,确定是否可以使所述副CPU执行来自所述***装置中的一个的处理;
当所述主CPU处于操作状态时,确定是否可以使所述主CPU执行所述处理;以及
根据所述确定的结果,使所述主CPU或者所述副CPU执行所述处理。
15、一种用于使用主CPU和副CPU控制一个以上的内部或者外部***装置的集成电路,其中所述主CPU能够采用至少两种状态,即操作状态和休眠状态,而所述副CPU的功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态,其中:
所述集成电路确定所述主CPU是处于休眠状态还是处于操作状态;
当所述主CPU处于休眠状态时,所述集成电路确定是否可以使所述副CPU执行来自所述***装置中的一个的处理;
当所述主CPU处于操作状态时,所述集成电路确定是否可以使所述主CPU执行所述处理;以及
所述集成电路根据所述确定的结果使所述主CPU或者所述副CPU执行所述处理。
16、一种在计算机设备中执行的程序,所述计算机设备用于使主CPU和副CPU控制一个以上的内部或者外部***装置,所述主CPU能够采用至少两种状态,即操作状态和休眠状态,所述副CPU的功耗低于所述主CPU的功耗并且能够采用至少两种状态,即操作状态和休眠状态,其中:
所述程序使所述计算机设备确定所述主CPU是处于休眠状态还是处于操作状态;
当所述主CPU处于休眠状态时,所述程序使所述计算机设备确定是否可以使所述副CPU执行来自所述***装置中的一个的处理;
当所述主CPU处于操作状态时,所述程序使所述计算机设备确定是否可以使所述主CPU执行所述处理;以及
所述程序根据所述确定的结果,使用所述计算机设备使所述主CPU或者所述副CPU执行所述处理。
CNB2005800266150A 2004-08-05 2005-08-02 信息处理装置 Active CN100474214C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP229634/2004 2004-08-05
JP2004229634 2004-08-05

Publications (2)

Publication Number Publication Date
CN1993670A true CN1993670A (zh) 2007-07-04
CN100474214C CN100474214C (zh) 2009-04-01

Family

ID=35787140

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005800266150A Active CN100474214C (zh) 2004-08-05 2005-08-02 信息处理装置

Country Status (4)

Country Link
US (2) US7725749B2 (zh)
JP (1) JP4607884B2 (zh)
CN (1) CN100474214C (zh)
WO (1) WO2006013857A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102385562A (zh) * 2010-08-31 2012-03-21 联想(北京)有限公司 计算机和数据交互方法
CN103631655A (zh) * 2012-08-21 2014-03-12 联想(新加坡)私人有限公司 大核和小核中的任务调度
CN104391744A (zh) * 2014-09-23 2015-03-04 深圳市金立通信设备有限公司 一种终端
CN106155265A (zh) * 2011-09-06 2016-11-23 英特尔公司 有功率效率的处理器体系结构

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7882369B1 (en) * 2002-11-14 2011-02-01 Nvidia Corporation Processor performance adjustment system and method
CN100474214C (zh) * 2004-08-05 2009-04-01 松下电器产业株式会社 信息处理装置
CN101385000A (zh) * 2006-02-17 2009-03-11 高通股份有限公司 用于多处理器应用程序支持的***及方法
US9134782B2 (en) 2007-05-07 2015-09-15 Nvidia Corporation Maintaining optimum voltage supply to match performance of an integrated circuit
US8370663B2 (en) * 2008-02-11 2013-02-05 Nvidia Corporation Power management with dynamic frequency adjustments
CN101661304B (zh) * 2008-08-25 2011-07-27 联想(北京)有限公司 一种计算机及其输入设备共用方法
JP5587547B2 (ja) * 2008-09-17 2014-09-10 Necパーソナルコンピュータ株式会社 情報処理装置
JP4644747B1 (ja) * 2009-11-02 2011-03-02 パナソニック株式会社 情報処理装置、制御方法および制御プログラム
US9256265B2 (en) 2009-12-30 2016-02-09 Nvidia Corporation Method and system for artificially and dynamically limiting the framerate of a graphics processing unit
US9830889B2 (en) 2009-12-31 2017-11-28 Nvidia Corporation Methods and system for artifically and dynamically limiting the display resolution of an application
US8839006B2 (en) 2010-05-28 2014-09-16 Nvidia Corporation Power consumption reduction systems and methods
US8988710B2 (en) * 2011-03-10 2015-03-24 Canon Kabushiki Kaisha Printing apparatus
GB2491666A (en) * 2011-06-08 2012-12-12 Inst Information Industry Green computing heterogeneous computer system
JP5817287B2 (ja) * 2011-07-25 2015-11-18 株式会社リコー 情報処理装置と情報処理方法とプログラム
CN106095046A (zh) * 2011-09-06 2016-11-09 英特尔公司 有功率效率的处理器体系结构
CN106020424B (zh) * 2011-09-06 2019-08-06 英特尔公司 有功率效率的处理器体系结构
TWI454905B (zh) * 2011-09-30 2014-10-01 Intel Corp 在多核心平台中之受限制的啓動技術
WO2013095337A1 (en) * 2011-12-19 2013-06-27 Intel Corporation A system and deterministic method for servicing msi interrupts using direct cache access
US9009508B2 (en) * 2012-08-28 2015-04-14 Advanced Micro Devices, Inc. Mechanism for reducing interrupt latency and power consumption using heterogeneous cores
US9152211B2 (en) * 2012-10-30 2015-10-06 Google Technology Holdings LLC Electronic device with enhanced notifications
US9329667B2 (en) * 2012-11-21 2016-05-03 Completecover, Llc Computing device employing a proxy processor to learn received patterns
US10082858B2 (en) * 2014-06-23 2018-09-25 Mellanox Technologies, Ltd. Peripheral device assistance in reducing CPU power consumption
US10324513B2 (en) 2014-08-31 2019-06-18 Mellanox Technologies, Ltd. Control of peripheral device data exchange based on CPU power state
JP6131924B2 (ja) * 2014-09-22 2017-05-24 カシオ計算機株式会社 情報処理装置及び動作制御方法
US9678903B1 (en) * 2014-10-15 2017-06-13 Intel Corporation Systems and methods for managing inter-CPU interrupts between multiple CPUs
JP6398666B2 (ja) 2014-12-03 2018-10-03 株式会社リコー 機能制御装置、情報処理装置、画像処理装置及び通信確立方法
JP6415385B2 (ja) * 2015-05-27 2018-10-31 ルネサスエレクトロニクス株式会社 半導体装置
JP2017021811A (ja) * 2016-08-04 2017-01-26 インテル・コーポレーション 電力効率の優れたプロセッサアーキテクチャ
JP2016212907A (ja) * 2016-08-04 2016-12-15 インテル・コーポレーション 電力効率の優れたプロセッサアーキテクチャ
JP6409218B2 (ja) * 2016-08-04 2018-10-24 インテル・コーポレーション 電力効率の優れたプロセッサアーキテクチャ
FR3061565B1 (fr) 2017-01-04 2019-04-26 Stmicroelectronics (Rousset) Sas Fonctionnement d'un microcontroleur en mode basse puissance
CN117203616A (zh) * 2021-05-31 2023-12-08 三星电子株式会社 电子设备及电子设备的传感器数据处理方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0496856A (ja) * 1990-08-13 1992-03-30 Matsushita Electric Ind Co Ltd 情報処理装置
JP3049804B2 (ja) 1991-04-08 2000-06-05 松下電器産業株式会社 情報処理装置
US5867704A (en) * 1995-02-24 1999-02-02 Matsushita Electric Industrial Co., Ltd. Multiprocessor system shaving processor based idle state detection and method of executing tasks in such a multiprocessor system
JPH08292932A (ja) * 1995-02-24 1996-11-05 Matsushita Electric Ind Co Ltd マルチプロセッサシステムおよびマルチプロセッサシステムにおいてタスクを実行する方法
JPH117344A (ja) * 1997-06-18 1999-01-12 Nec Shizuoka Ltd 省電力パソコン
JP2001109729A (ja) * 1999-10-12 2001-04-20 Nec Corp マルチプロセッサシステムにおける消費電力制御装置および方法
US6772241B1 (en) * 2000-09-29 2004-08-03 Intel Corporation Selective interrupt delivery to multiple processors having independent operating systems
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
JP2002215597A (ja) * 2001-01-15 2002-08-02 Mitsubishi Electric Corp マルチプロセッサ装置
JP2002288150A (ja) * 2001-03-28 2002-10-04 Matsushita Electric Ind Co Ltd 半導体集積回路装置
JP2004072352A (ja) * 2002-08-05 2004-03-04 Nec Corp 携帯端末システム、該システムに用いられる監視制御方法及び監視制御プログラム、並びに携帯端末
US7117379B2 (en) * 2002-08-14 2006-10-03 Intel Corporation Method and apparatus for a computing system having an active sleep mode
US7191349B2 (en) * 2002-12-26 2007-03-13 Intel Corporation Mechanism for processor power state aware distribution of lowest priority interrupt
JP4090908B2 (ja) * 2003-02-21 2008-05-28 シャープ株式会社 画像処理装置および画像形成装置
JP2004280378A (ja) * 2003-03-14 2004-10-07 Handotai Rikougaku Kenkyu Center:Kk 半導体装置
US7493435B2 (en) * 2003-10-06 2009-02-17 Intel Corporation Optimization of SMI handling and initialization
US7363411B2 (en) * 2003-10-06 2008-04-22 Intel Corporation Efficient system management synchronization and memory allocation
US20050132239A1 (en) * 2003-12-16 2005-06-16 Athas William C. Almost-symmetric multiprocessor that supports high-performance and energy-efficient execution
US7251746B2 (en) * 2004-01-21 2007-07-31 International Business Machines Corporation Autonomous fail-over to hot-spare processor using SMI
CN100474214C (zh) * 2004-08-05 2009-04-01 松下电器产业株式会社 信息处理装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102385562A (zh) * 2010-08-31 2012-03-21 联想(北京)有限公司 计算机和数据交互方法
CN106155265A (zh) * 2011-09-06 2016-11-23 英特尔公司 有功率效率的处理器体系结构
TWI564704B (zh) * 2011-09-06 2017-01-01 英特爾股份有限公司 省電處理器架構
US9864427B2 (en) 2011-09-06 2018-01-09 Intel Corporation Power efficient processor architecture
US9870047B2 (en) 2011-09-06 2018-01-16 Intel Corporation Power efficient processor architecture
US10048743B2 (en) 2011-09-06 2018-08-14 Intel Corporation Power efficient processor architecture
US10664039B2 (en) 2011-09-06 2020-05-26 Intel Corporation Power efficient processor architecture
CN103631655A (zh) * 2012-08-21 2014-03-12 联想(新加坡)私人有限公司 大核和小核中的任务调度
CN104391744A (zh) * 2014-09-23 2015-03-04 深圳市金立通信设备有限公司 一种终端

Also Published As

Publication number Publication date
WO2006013857A1 (ja) 2006-02-09
US20100185886A1 (en) 2010-07-22
JPWO2006013857A1 (ja) 2008-05-01
CN100474214C (zh) 2009-04-01
JP4607884B2 (ja) 2011-01-05
US8341438B2 (en) 2012-12-25
US7725749B2 (en) 2010-05-25
US20070245164A1 (en) 2007-10-18

Similar Documents

Publication Publication Date Title
CN1993670A (zh) 信息处理装置
CN1760836A (zh) 信息处理***、信息处理方法和程序
CN1270223C (zh) 低功率处理器
CN1662068A (zh) 动态图像编码装置及动态图像处理装置
CN1121014C (zh) 具有risc结构的八位微控制器
CN1761346A (zh) 智能卡与存储卡之间的多接口连接方法以及多接口卡
CN1310148C (zh) 程序执行处理终端装置和程序执行处理方法
CN1881140A (zh) 多核处理器的处理器模式自动控制装置及其方法
CN1115883A (zh) 数据处理***用的电能管理方法与***
CN1906583A (zh) 信息处理设备、中断处理控制方法、以及计算机程序
CN1549976A (zh) 通用串行端口体系结构和***
CN1300723C (zh) 将处理器用作虚拟设备的方法和信息处理***
CN1050451A (zh) 可处于低功率待用状态的计算机
CN1591374A (zh) 直接存储器存取传输控制器
CN1177772A (zh) 独立处理多个指令流、软式控制各指令流的处理功能的多程序流程同时处理器
CN1273890C (zh) Arm处理器架构的微内核设计方法
CN1517869A (zh) 处理器、运算处理方法和优先度决定方法
CN1233016A (zh) 具有事件相关矢量选择的历境控制器和采用其的处理器
CN1245922A (zh) 有时间片任务切换能力的前后关系控制器及其应用处理器
CN1551592A (zh) 数据传输控制装置、电子设备及数据传输控制方法
CN1690971A (zh) 中断控制装置
CN1908904A (zh) 实时内部简易监视器
CN1967506A (zh) 高速缓存存储器处理器中的合并入口
CN1731402A (zh) 用协处理器加速文件***操作的方法及装置
CN101043212A (zh) 半导体集成电路器件及其电路***方法

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
ASS Succession or assignment of patent right

Owner name: MATSUSHITA ELECTRIC (AMERICA) INTELLECTUAL PROPERT

Free format text: FORMER OWNER: MATSUSHITA ELECTRIC INDUSTRIAL CO, LTD.

Effective date: 20141013

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20141013

Address after: Seaman Avenue Torrance in the United States of California No. 2000 room 200

Patentee after: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA

Address before: Osaka Japan

Patentee before: Matsushita Electric Industrial Co.,Ltd.