CN103226494A - 散布多个中断的方法、中断请求信号散布电路和片上系统 - Google Patents
散布多个中断的方法、中断请求信号散布电路和片上系统 Download PDFInfo
- Publication number
- CN103226494A CN103226494A CN2013100369558A CN201310036955A CN103226494A CN 103226494 A CN103226494 A CN 103226494A CN 2013100369558 A CN2013100369558 A CN 2013100369558A CN 201310036955 A CN201310036955 A CN 201310036955A CN 103226494 A CN103226494 A CN 103226494A
- Authority
- CN
- China
- Prior art keywords
- request signal
- interrupt request
- reviving
- request singal
- output
- 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
Images
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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- 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
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
Abstract
在用于片上系统的功率控制的方法中,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限。第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
Description
技术领域
示例实施例一般涉及多处理器和/或多内核系统,例如,散布(spread)多个中断(interrupt)的方法,中断请求信号散布电路和包括其的片上系统(SOC)。
背景技术
传统的电子设备包括用于中断处理操作的中断控制器。当多个中断源产生多个中断时,中断控制器可以为所述中断设置优先次序,并且向处理器提供中断请求信号。基于所述中断产生中断请求信号。
最近,随着电子设备变得更小和更轻,片上系统(SOC)已经更广泛地用于电子设备。这里,SOC可以包括多个知识产权(IP)块和多个处理器(或具有多个内核的处理器)。
在SOC中,处理器常常进入低功率模式以减少功耗。响应于接收到各自的中断请求信号,各处理器从低功率模式苏醒。如上所述,基于多个中断源产生的中断而产生中断请求信号。然而,如果处理器在相同或基本相同的时间从低功率模式基本苏醒(例如,有时称为突然苏醒),那么所述处理器中可能导致浪涌电流。
发明内容
一个或多个示例实施例提供了散布多个中断请求信号的方法,所述方法即使当在相对小的时间段之内多个中断源连续地产生多个中断时,也能够抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中多个内核)的模式连续地从不活动状态(例如,掉电状态、断电状态等)改变为活动状态(例如,通电状态等)。
一个或多个示例实施例提供了中断请求信号散布电路,即使当在相对小的时间段之内多个中断源连续地产生多个中断时,所述电路也能够抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中多个内核)的模式连续地从不活动状态(例如,掉电状态、断电状态等)改变为活动状态(例如,通电状态等)。
示例实施例还提供了具有中断请求信号散布电路的片上系统。
即使当在相对小的时间段之内多个中断源连续地产生中断时,通过控制中断请求信号的输出之间的时间间隔(例如相邻中断请求信号的输出之间的时间间隔)大于或等于时间间隔门限,其中基于多个中断产生中断请求信号,根据示例实施例的散布多个中断请求信号的方法也可以抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中的多个内核)的模式连续地从不活动状态(例如,掉电状态、断电状态等)改变为活动状态(例如,通电状态等)。结果,可以抑制和/或防止所述处理器中的浪涌电流。
此外,即使当在相对小的时间段之内多个中断源连续地产生中断时,通过控制多个中断请求信号之间的时间间隔(例如,相邻中断请求信号之间的时间间隔)大于或等于时间间隔门限,其中基于多个中断产生中断请求信号),根据一个或多个示例实施例的中断请求信号散布电路也可以抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中的多个内核)的模式连续地从不活动状态(例如,掉电状态、断电状态等)改变为活动状态(例如,通电状态等)。结果,可以抑制和/或防止所述处理器中的浪涌电流。
根据示例实施例的片上系统可以包括中断请求信号散布电路。因此,片上系统通过抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中多个内核)的模式连续地从不活动状态(例如,掉电状态、断电状态等)改变为活动状态(例如,通电状态等),来实现相对高的工作可靠性。
至少一个示例实施例提供了用于片上系统的功率控制的方法。根据至少此示例实施例,该方法包括:控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
至少一个其它示例实施例提供了用于片上系统的功率控制的方法。根据至少此示例实施例,该方法包括:比较第一苏醒请求信号的第一优先次序和第二苏醒请求信号的第二优先次序;基于第一优先次序和第二优先次序之间的比较,如此控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间差大于或等于时间间隔门限。
至少一个其它示例实施例提供了用于片上系统的功率控制的方法。根据至少此示例实施例,所述方法包括:如此控制到处于不活动状态的第一处理器的第一苏醒请求信号和到处于不活动状态的第二处理器的第二苏醒请求信号的至少一个的输出,使得到第一处理器的第一苏醒请求信号的输出和到第二处理器的第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
至少一个其它示例实施例提供了用于片上系统的功率控制的方法。根据至少此示例实施例,该方法包括:比较第一苏醒请求信号的第一优先次序和第二苏醒请求信号的第二优先次序,第一苏醒请求信号和每二苏醒请求信号的每个与处于不活动状态的功能块关联;并基于第一优先次序和第二优先次序之间的比较,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间差大于或等于时间间隔门限。
至少一个其它示例实施例提供了一种片上系统,包括:苏醒请求信号散布电路,被配置为控制到第一功能块的第一苏醒请求信号和到第二功能块的第二苏醒请求信号的至少一个的输出,使得到第一功能块的第一苏醒请求信号的输出和到第二功能块的第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
至少一个其它示例实施例提供了一种片上系统,包括:苏醒请求信号散布电路,被配置为比较第一苏醒请求信号的第一优先次序和第二苏醒请求信号的第二优先次序,该苏醒请求信号散布电路被进一步配置为基于第一优先次序和第二优先次序之间的比较,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间差大于或等于时间间隔门限。
至少一个其它示例实施例提供了一种片上系统,包括:苏醒请求信号散布电路,被配置为控制到第一功能块的第一苏醒请求信号和到第二功能块的第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
至少一个其它示例实施例提供了一种片上系统,包括:苏醒请求信号散布电路,被配置为比较第一苏醒请求信号的第一优先次序和第二苏醒请求信号的第二优先次序,第一苏醒请求信号和第二苏醒请求信号的每个与处于不活动状态的功能块关联,所述苏醒请求信号散布电路被进一步配置为基于第一优先次序和第二优先次序之间的比较,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间差大于或等于时间间隔门限。
至少一个其它示例实施例提供了一种片上系统,包括:多个苏醒请求信号源,被配置为产生至少第一和第二苏醒信号;苏醒信号控制器,被配置为基于第一和第二苏醒信号产生至少第一和第二苏醒请求信号;多个处理器,被配置为基于第一和第二苏醒请求信号从不活动状态转换为活动状态;以及苏醒请求信号散布电路,被配置为控制到多个处理器的第一个的第一苏醒请求信号和到多个处理器的第二个的第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
至少一个其它示例实施例提供了一种片上系统,包括:多个苏醒信号源,被配置为产生至少第一和第二苏醒信号;苏醒信号控制器,被配置为基于第一和第二苏醒信号产生至少第一和第二苏醒请求信号;包括至少第一内核和第二内核的多核处理器,第一内核被配置为接收第一苏醒请求信号,而第二内核被配置为接收第二苏醒请求信号;苏醒请求信号散布电路,被配置为控制到第一内核的第一苏醒请求信号和到第二内核的第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种;以及至少一个存储设备,被配置为经由系统总线与多个苏醒信号源和多核处理器连接。
附图说明
从如下结合附图的详细描述中,说明性而非限制性的示例实施例将变能更清楚地理解。
图1是示出根据示例实施例的片上系统的框图;
图2是示出根据示例实施例散布多个中断请求信号的方法的流程图;
图3A和3B是示出根据图2的方法散布多个中断请求信号的例子的图;
图4A和4B是示出根据图2的方法散布多个中断请求信号的另一例子的图;
图5A和5B是示出根据图2的方法散布多个中断请求信号的另一例子的图;
图6是示出根据另一示例实施例散布多个中断请求信号的方法的流程图;
图7A和7B是示出根据图6的方法散布多个中断请求信号的例子的图;
图8是示出根据另一示例实施例的散布多个中断请求信号的方法的流程图;
图9A和9B是示出根据图8的方法散布多个中断请求信号的例子的图;
图10是示出根据另一示例实施例的散布多个中断请求信号的方法的流程图;
图11是示出处于活动状态的多个处理器和处于不活动状态的多个处理器的图;
图12是示出根据示例实施例的中断请求信号散布电路的框图;
图13是示出图12中所示的中断请求信号保持器的状态机实现的图;
图14是示出图12中所示的中断请求信号判定器的状态机实现的图;
图15是示出图12的中断请求信号散布电路的示例操作的时序图;
图16是示出根据另一示例实施例的中断请求信号散布电路的框图;
图17是示出图1中所示的中断请求信号散布电路的示例操作的图;
图18是示出图1中所示的中断请求信号散布电路的另一示例操作的图;
图19是示出图1中所示的中断请求信号散布电路的另一示例操作的图;
图20是示出根据示例实施例的多核系统的框图;
图21是示出图20的多核系统被实现为智能电话机的例子的图。
具体实施方式
将参照在其中示出一些示例实施例的附图在以下更充分地描述各个示例实施例。但是,可以在多种不同的形式中实现发明构思而不应该认为发明构思限于此处阐述的示例实施例。相反地,提供这些示例实施例使得此公开将是彻底和完整的,并且向本领域技术人员充分地表达本发明构思的范围。在附图中,为了清楚可以夸大层和区域的尺寸和相对尺寸。遍及附图,相似的数字指代相似的元件。
应该理解,虽然这里可以使用术语第一、第二、第三等来描述各种元件,但是这些元件不应该被这些术语限制。使用这些术语来区分一个元件与另一个。从而,在不脱离本发明构思的教导的情况下,下面讨论的第一元件可以被称为第二元件。如此处使用的,术语“和/或”包括一个或多个关联的所列项的任意和全部组合。
应该理解,当一个元件被称作“连接”或“耦接”到另一元件时,可以将它直接连接或耦接到另一元件,或者可以存在中间元件。相反地,当一个元件被称作是“直接连接”或“直接耦接”到另一元件时,不存在中间元件。用于描述元件之间的关系的其它词语应该用相似的方式解释(例如,“在……之间”对“直接在……之间”,“邻接”对“直接邻接”,等等)。
此处使用的术语仅为描述特定实施例的目的,并不旨在限制本发明构思。如此处使用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文清楚地指示除外。还应该理解,当在此说明书中使用“包含”和/或“包括”时,确定了所述的特征、整数、步骤、操作、元件和/或部件的存在,但是没有排除一个或多个其他特征、整数、步骤、操作、元件、部件和/或其组的存在或添加。
除非另外定义,否则这里使用的全部术语(包括技术和科学名词)具有此发明构思所属的领域的一位普通技术人员所通常理解的一样的意思。还应该进一步理解,诸如那些在通用词典中定义的术语应该被解释为具有与它们在相关领域的上下文中意思一致的意思,而将不被解释为理想化的或过于正式的意义,除非此处清楚地作此定义。
图1是示出根据示例实施例的片上系统的框图。
参照图1,片上系统500包括第1至第n中断源520_1至520_n、中断控制器540、中断请求信号散布电路560和第1至第m处理器580_1至580_m。如此处所述,中断请求信号散布电路560可以称为苏醒请求信号散布电路和/或中断请求信号散布电路。中断请求信号可以称为苏醒请求信号。类似地,中断控制器540可以称为苏醒信号控制器,并且中断可以称为苏醒信号。
在至少一些示例实施例中,中断源520_1至520_n的数目可以大于处理器580_1至580_m的数目。然而,在其它示例实施例中,中断源520_1至520_n的数目可以小于或等于处理器580_1至580_m的数目。此外,第1至第m处理器580_1至580_m可以对应于单独的处理器或多处理器的多个内核。在一个例子中,如果m为2则该多处理器可以称为双核处理器,如果m为4,则可以称为四核处理器,等等。
第1至第n中断源520_1至520_n分别产生第1至第n中断INT_R1至INT_Rn。在此例子中,第1至第n中断源520_1至520_n是该多处理器系统(或该多核系统)中执行特定操作的知识产权(IP)块。第1至第n中断源520_1至520_n可以对应于片上系统(SOC)的部件,诸如视频模块、声音模块、显示模块、存储模块、通信模块、相机模块等。
仍参照图1,中断控制器540基于来自第一至第n中断源520_1至520_n的第1至第n中断INT_R1至INT_Rn,分别产生第1至第m中断请求信号nIRQ_I1至nIRQ_Im。
中断请求信号散布电路560基于第1至第m中断请求信号nIRQ_I1至nIRQ_Im,以大于或等于时间间隔门限的时间间隔向第1至第m处理器580_1至580_m输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。根据至少一些示例实施例,该时间间隔门限可以是根据经验数据确定或由用户或设计工程师设置的给定的、要求的或预定的时间间隔。在至少一个示例实施例中,该时间间隔门限可以是在其中当处理器的模式从不活动状态改变(例如,连续地改变)为活动状态时处理器中不产生浪涌电流的范围中的时间间隔。
仍参照图1,分别响应于第1至第m中断请求信号nIRQ_O1至nIRQ_Om,第1至第m处理器580_1至580_m执行针对第1至第n中断源520_1至520_n的中断处理操作。
如上所述,中断控制器540基于由第1至第n中断源520_1至520_n产生的第1至第n中断INT_R1至INT_Rn,产生第1至第m中断请求信号nIRQ_I1至nIRQ_Im。在至少一个示例实施例中,中断控制器540从第1至第n中断源520_1至520_n接收第1至第n中断INT_R1至INT_Rn,并且向第1至第m处理器580_1至580_m分配该第1至第n中断INT_R1至INT_Rn。如果第1至第m处理器580_1至580_m的数量小于第1至第n中断源520_1至520_n的数量,则中断控制器540可以通过按时间和/或按空间分配第1至第n中断INT_R1至INT_Rn,来向第1至第m处理器580_1至580_m分配第1至第n中断INT_R1至INT_Rn。
中断请求信号散布电路560控制从中断控制器540输入的第1至第m中断请求信号nIRQ_I1至nIRQ_Im的输出之间的间隔(例如,相邻中断请求信号的输出之间的时间间隔)大于或等于所述时间间隔门限。在一个例子中,该时间间隔门限可以在其中当第1至第m处理器580_1至580_m的模式从不活动状态改变(例如,连续地改变)为活动状态时第1至第m处理器580_1至580_m中不产生浪涌电流的范围之内。
如下面将关于图12更详细地论述,在至少一个示例实施例中,中断请求信号散布电路560包括第1至第m中断请求信号保持器(holder)和中断请求信号判定器(arbiter)。在此例子中,第1至第m中断请求信号保持器接收第1至第m中断请求信号nIRQ_I1至IRQ_Im,并以大于或等于时间间隔门限的时间间隔分别向第1至第m处理器580_1至580_m输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。
必要时,中断请求信号判定器控制在第1至第m中断请求信号nIRQ_I1至nIRQ_Im的每个的输出之间的时间间隔大于或等于该时间间隔门限。例如,如果第1至第m中断请求信号nIRQ_I1至nIRQ_Im的相邻信号之间的时间间隔小于时间间隔门限,则中断请求信号判定器如此控制在相邻中断请求信号的输出之间的时间间隔使得该时间间隔大于或等于时间间隔门限。
如此处所述,(例如,相邻的)中断请求信号之间的时间间隔指的是在例如中断请求信号散布电路接收(例如,相邻的)中断请求信号之间的时间间隔。
在一个例子中,可以将第1至第m中断请求信号nIRQ_I1至nIRQ_Im分别输入到第1至第m中断请求信号保持器,并且第1至第m中断请求信号保持器可以分别耦接至第1至第m处理器580_1至580_m。在一个示例实施例中,第1至第m中断请求信号保持器和中断请求信号判定器可以工作在约一个时钟域。在第1至第m中断请求信号保持器和中断请求信号判定器之间可以执行请求/应答握手操作。
中断请求信号散布电路560通过延迟跟在第k中断请求信号(在此例子中,k是大于或等于1的整数)后面的第(k+1)中断请求信号的输出直到在第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔变为至少等于或基本等于该时间间隔门限(例如,当第k时间间隔大于0),可以控制第1至第m中断请求信号nIRQ_I1至nIRQ_Im的输出之间的时间间隔大于或等于该时间间隔门限。此外,中断请求信号散布电路560可以将第k中断请求信号的输出或第(k+1)中断请求信号的输出延迟达时间间隔门限(例如,当在第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔等于或基本等于0时)。
根据至少一些示例实施例,中断请求信号散布电路560可以基于与中断和/或中断请求信号关联的给定的、要求的或预定的优先次序,改变针对第1至第m中断请求信号nIRQ_O1至nIRQ_Om的输出次序,使得关于第1至第m中断请求信号nIRQ_O1至nIRQ_Om的输出次序不同于关于第1至第m中断请求信号nIRQ_I1至nIRQ_Im的输入次序。
在至少一些示例实施例中,中断请求信号散布电路560可以将第1至第m处理器580_1至580_m划分或分组为包括处于活动状态的处理器的第一组和包括处于不活动状态的处理器的第二组。然后,在第1至第m中断请求信号nIRQ_I1至nIRQ_Im当中,中断请求信号散布电路560可以不控制在分配给第一组的中断请求信号的输出之间的时间间隔至少为该时间间隔门限,但是可以控制分配给第二组的中断请求信号的输出之间的时间间隔至少为该时间间隔门限。通过控制基于第1至第n中断INT_R1至INT_Rn产生的第1至第m中断请求信号nIRQ_I1至nIRQ_Im之间的时间间隔大于或等于时间间隔门限,即使当中断源520_1至520_n在相对小的时间窗之内连续地产生中断时,片上系统500也可以抑制和/或防止第1至第m处理器580_1至580_m的模式在相对小的时间窗之内从不活动的状态改变(例如,连接地改变)为活动状态(有时称为突然苏醒)。结果,片上系统500通过抑制和/或防止由于多个处理器(或者,多核处理器中的多个内核)的突然苏醒导致的浪涌电流,可以实现相对高的工作可靠性。
图2是示出根据示例实施例的散布多个中断请求信号的方法的流程图。为了清楚,将考虑图1中所示的SOC来描述图2中所示的方法。然而,应该理解示例实施例不应该限于此实现。
参照图2,在S120中断请求信号散布电路560接收多个中断请求信号。在S140,该中断请求信号散布电路560检查在中断请求信号(例如,接收的)之间的时间间隔(例如,在相邻中断请求信号之间的时间间隔)是否小于时间间隔门限。
如果中断请求信号之间的时间间隔小于该时间间隔门限,则中断请求信号散布电路560在S160中控制在中断请求信号的输出之间的时间间隔大于或等于该时间间隔门限。中断请求信号散布电路560然后在S180中分别向多个处理器输出中断请求信号。
返回S140,如果中断请求信号之间的时间间隔大于或等于时间间隔门限,则中断请求信号散布电路560在S165中保持(例如,不调整)在中断请求信号的输出之间的时间间隔。中断请求信号散布电路560然后在S180中分别向多个处理器输出中断请求信号。
根据至少一些示例实施例,所述处理器可以对应于单独的处理器,或多核处理器(例如,双核处理器、四核处理器等)中的多个内核。为了方便起见,将处理器描述为处于活动状态或不活动状态。然而,应该理解,活动状态对应于诸如通电状态等的正常工作状态,而不活动状态对应于诸如掉电状态、断电状态等的低功率模式。在下文中,将对于图1中所示的SOC更详细地描述图2中所示的方法。
参照图1和2,如上所述中断请求信号散布电路560在S120中顺序地接收中断请求信号。中断请求信号可以基于从多个中断源输出的多个中断而产生,并且可以分配给各个处理器。在此例子中,中断源是该多核系统(或该多处理器系统)中执行特定操作的知识产权(IP)块。中断源可以与诸如视频模块、声音模块、显示模块、存储模块、通信模块、相机模块等的片上系统(SOC)的部件对应。当由中断源产生中断时,可以基于所述中断产生中断请求信号,然后提供给各个处理器。然后处理器可以分别响应于中断请求信号执行中断处理操作。最近,随着电子设备变得更小更轻。SOC更广泛地用于电子设备。如上所述,SOC可以包括多个IP块和多个处理器或具有多个内核的处理器。在此例子中,处理器可以更频繁地进入低功率模式以减少功耗,并且可以响应于接收到各个中断请求信号而从低功率模式苏醒。当各处理器在相同或基本相同的时间从低功率模式基本苏醒时(有时候称为突然苏醒),所述处理器中可能导致浪涌电流。浪涌电流可能导致具有SOC的电子设备的故障。随着SOC的尺寸变得更小,SOC相对难以实现相对高的工作可靠性,因为SOC中的动态电流变化也会导致浪涌电流。
返回图2,响应于接收到中断请求信号,中断请求信号散布电路560在S140中检查在中断请求信号之间的时间间隔是否小于时间间隔门限。如上所述,在至少一个示例实施例中,可以将时间间隔门限确定为在其中当处理器的模式连续地从不活动状态改变为活动状态时在处理器中不产生浪涌电流的范围之内。
如果在中断请求信号之间的时间间隔小于时间间隔门限,则中断请求信号散布电路560在S160中控制在中断请求信号的输出之间的时间间隔至少等于时间间隔门限。
更详细地,在S160中断请求信号散布电路560通过延迟跟在第k中断请求信号(其中k是大于或等于1的整数)后面的第(k+1)中断请求信号的输出直到第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔变为至少等于或基本等于时间间隔门限,此时第k时间间隔大于0(非零)。在此例子中,第k中断请求信号和第(k+1)中断请求信号是相邻的(例如,连续的或顺序的输入)。
例如,两个处理器可以在相对小的时间窗之内顺序地苏醒(有时候称为突然苏醒),作为结果,如果当第k时间间隔小于时间间隔门限时,不控制第k时间间隔而向所述两个处理器输出第k中断请求信号和第(k+1)中断请求信号,则所述两个处理器中可能引起浪涌电流。从而,中断请求信号散布电路560通过延迟跟在第k中断请求信号后面的第(k+1)中断请求信号的输出,控制在第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔为时间间隔门限。
此外,当在第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔等于或基本等于0时(并发或同时输入所述中断请求信号),中断请求信号散布电路560将第k中断请求信号或第(k+1)中断请求信号的输出至少延迟该时间间隔门限。结果,当在相同或基本相同的时间输入第k中断请求信号和第(k+1)中断请求信号时,因为通过使用图2的方法控制第k时间间隔至少为时间间隔门限,所以可以抑制和/或防止所述两个处理器中的浪涌电流。
根据至少一些示例实施例,当控制在中断请求信号之间的时间间隔大于或等于时间间隔门限时,中断请求信号散布电路506可以基于与中断和/或中断请求信号关联的给定的、要求的或预定的优先次序改变中断请求信号的输出次序。
例如,假定以这样的次序顺序地输入第k中断请求信号、第(k+1)中断请求信号和第(k+2)中断请求信号。如果在第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔和在第(k+1)中断请求信号和第(k+2)中断请求信号之间的第(k+1)时间间隔均小于时间间隔门限,则中断请求信号散布电路560通过延迟跟在第k中断请求信号后面的第(k+1)中断请求信号的输出,控制第k时间间隔大于或等于时间间隔门限,然后通过延迟跟在第(k+1)中断请求信号后面的第(k+2)中断请求信号的输出,控制第(k+1)时间间隔大于或等于时间间隔门限。然而,在至少一些示例实施例中,中断请求信号散布电路560可以基于中断的给定的、要求的或预定的优先次序,改变第k中断请求信号、第(k+1)中断请求信号和第(k+2)中断请求信号的输出次序。
例如,假定顺序地输入第k中断请求信号、第(k+1)中断请求信号和第(k+2)中断请求信号,并且第k中断请求信号具有最高的优先次序,而第(k+1)中断请求信号具有最低的优先次序。在这种情况下,如果第k中断请求信号和第(k+1)中断请求信号之间的第k时间间隔和在第(k+1)中断请求信号和第(k+2)中断请求信号之间的第(k+1)时间间隔均小于时间间隔门限,则中断请求信号散布电路560按照基于中断和/或中断请求信号的给定的、要求的或预定的优先次序的次序顺序地输入第k中断请求信号、第(k+2)中断请求信号和第(k+1)中断请求信号。
通常,当处理器接收到中断请求信号时,该处理器的模式从不活动状态改变为活动状态。然后,响应于与中断源产生的中断对应的中断请求信号,该处理器执行中断处理操作(或中断服务)。这里,浪涌电流可以因为该处理器中包括的多个晶体管突然工作而产生。具体地,低功率处理器可以包括多个时钟选通电路,以便在不活动状态中减少功耗。因此,在不活动状态中大部分时钟不切换(toggle)。当该处理器的模式从不活动状态改变为活动状态时,因为大部分时钟并发或同时地切换,可能产生浪涌电流。此外,在具有多个处理器的片上系统的情况中,当处理器同时或基本同时从低功率模式苏醒时(有时候称为突然苏醒),在所述处理器中引起的所有浪涌电流相加使得该浪涌电流可能引发具有该SOC的电子设备故障。
通过控制在多个中断请求信号的输出之间的时间间隔大于或等于时间间隔门限,即使当多个中断源在相对小的时间窗之内连续地产生中断时,图2的方法也可以抑制和/或防止在相对小的时间之内多个处理器(或,多核处理器中的多个内核)的模式连续地从不活动状态改变为活动状态。结果,采用图2方法的SOC通过抑制和/或防止由于多个处理器(或者,多核处理器中的多个内核)的突然苏醒导致的浪涌电流,可以实现相对高的工作可靠性。根据至少一些示例实施例,对于输入到处于不活动状态的多个处理器的多个中断请求信号可以执行图2的方法。
返回图2,中断请求信号散布电路560然后在S180中分别向多个处理器输出中断请求信号。
返回图2中的S140,如果在中断请求信号之间的时间间隔大于时间间隔门限,则中断请求信号散布电路560在S165中保持(不调整)在中断请求信号的输出之间的时间间隔。中断请求信号散布电路560然后在S180中分别向多个处理器输出所述中断请求信号。
根据至少图2中所示的示例实施例,如果中断请求信号当中的时间间隔小于时间间隔门限,则中断请求信号散布电路560通过控制中断请求信号的输出之间的时间间隔至少等于时间间隔门限,来分别向处理器输出中断请求信号。如果中断请求信号之间的时间间隔大于或等于时间间隔门限,则中断请求信号散布电路560不控制(或调整)时间间隔而分别向处理器输出中断请求信号。结果,可以以大于或等于时间间隔门限的时间间隔,分别向处理器提供中断请求信号。
图3A和3B是示出根据图2的方法散布多个中断请求信号的例子的图。图3A示出顺序地输入第1至第4中断请求信号nIRQ_1至nIRQ_4的例子,而图3B示出根据图2的方法,分别向第1至第4处理器顺序地输出第1至第4中断请求信号nIRQ_1至nIRQ_4的例子。
如图3A中所示,在第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1小于时间间隔门限PS,在第2中断请求信号nIRQ_2和第3中断请求信号nIRQ_3之间的第2时间间隔S2小于时间间隔门限PS,并且在第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3也小于时间间隔门限PS。
如图3B中所示,如此延迟第2中断请求信号nIRQ_2的输出,使得第1时间间隔S1至少等于或基本等于时间间隔门限PS。此外,如此延迟第3中断请求信号nIRQ_3的输出,使得第2时间间隔S2至少等于或基本等于时间间隔门限PS。此外,如此延迟第4中断请求信号nIRQ_4的输出,使得第3时间间隔S3至少等于或基本等于时间间隔门限PS。如上所述,可以以对应于时间间隔门限PS的时间间隔,顺序地分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4。
图4A和4B是示出根据图2的方法散布多个中断请求信号的另一例子的图。图4A示出顺序地输入第1至第4中断请求信号nIRQ_1至nIRQ_4的例子,而图4B示出根据图2的方法,顺序地分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4的例子。
更具体地,如图4A中所示,在第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1大于时间间隔门限PS,在第2中断请求信号nIRQ_2和第3中断请求信号nIRQ_3之间的第2时间间隔S2小于时间间隔门限PS,并且在第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3也小于时间间隔门限PS。
如图4B中所示,根据图2的方法,保持而不调整在第1中断请求信号nIRQ_1和第二中断请求信号nIRQ_2之间的第1时间间隔S1,但是如此延迟第3中断请求信号nIRQ_3的输出使得第2时间间隔S2大于或等于时间间隔门限PS,并且如此延迟第4中断请求信号nIRQ_4的输出使得第3时间间隔S3大于或等于时间间隔门限PS。以大于或等于时间间隔门限PS的时间间隔,顺序地分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4。
图5A和5B是示出根据图2的方法散布多个中断请求信号的另一例子的图。图5A示出顺序地输入第1至第4中断请求信号nIRQ_1至nIRQ_4的例子,而图5B示出根据图2的方法,顺序地分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4的例子。
如图5A中所示,第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1小于时间间隔门限PS,第2中断请求信号nIRQ_2和第3中断请求信号nIRQ_3之间的第2时间间隔S2小于时间间隔门限PS,并且第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3也小于时间间隔门限PS。
根据电子设备中SOC的性能,即使当两个处理器同时或并发地苏醒,或在相对小的时间窗之内顺序地苏醒时,两个处理器中也不会引起浪涌电流,而当三个处理器同时或并发地苏醒,或在相对小的时间窗之内顺序地苏醒时,在三个处理器中可能引起浪涌电流。
如图5A和5B中所示,根据图2的方法,可以允许两个处理器在相对小的时间窗之内顺序地苏醒,但是不允许多于两个处理器。例如,如图5A和5B中所示,即使第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1小于时间间隔门限PS,也保持(不调整)该第1时间间隔S1。在此例子中,允许给定的、要求的或预定数目的处理器(例如,两个处理器)在相对小的时间窗之内顺序地苏醒。然而,如此延迟第3中断请求信号nIRQ_3的输出,使得第2时间间隔S2大于或等于时间间隔门限PS。因此,根据图2的方法,抑制和/或防止三个处理器在相对小的时间窗之内顺序地苏醒。然后,如图5B中所示,即使第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3小于时间间隔门限PS,也保持而不调整该第3时间间隔S3。
图6是示出根据另一示例实施例散布多个中断请求信号的方法的流程图。就像图2,为了清楚将考虑图1中所示的SOC来描述图6中所示的方法。然而,应该理解示例实施例不应该限于此实现。
参照图6,中断请求信号散布电路560在S210中接收第k中断请求信号,并在S220中接收第(k+1)中断请求信号。
在S230中,中断请求信号散布电路560检查在第k中断请求信号和第(k+1)中断请求信号之间的时间间隔是否大于0。
如果第k中断请求信号和第(k+1)中断请求信号之间的时间间隔大于0,则中断请求信号散布电路560在S240中延迟第k中断请求信号的输出直到所述时间间隔至少等于或基本等于时间间隔门限。
返回S230,如果第k中断请求信号和第(k+1)中断请求信号之间的时间间隔等于0,则在S250中断请求信号散布电路560基于与中断和/或中断请求信号关联的给定的、要求的或预定的优先次序,将第k中断请求信号的输出或第(k+1)中断请求信号的输出迟延至少该时间间隔门限。
通常,顺序地输入第k中断请求信号和第(k+1)中断请求信号,使得第k中断请求信号和第(k+1)中断请求信号之间的时间间隔大于0。然而,根据至少一些示例实施例,可以在相同或基本相同的时间(例如,同时地或并发地)输入第k中断请求信号和第(k+1)中断请求信号。在此例子中,中断请求信号散布电路560检查在第k中断请求信号和第(k+1)中断请求信号之间的时间间隔是否大于0。
如果第k中断请求信号和第(k+1)中断请求信号之间的时间间隔大于0,但是小于时间间隔门限,则中断请求信号散布电路560延迟第k中断请求信号的输出直到所述时间间隔至少等于或基本等于时间间隔门限。
另一方面,如果第k中断请求信号和第(k+1)中断请求信号之间的时间间隔等于0,则中断请求信号散布电路560基于与中断和/或中断请求信号关联的给定的、要求的或预定的优先次序,将第k中断请求信号的输出或第(k+1)中断请求信号的输出迟延至少该时间间隔门限。结果,即使当在相同或基本相同的时间(例如,同时地或并发地)输入第k中断请求信号和第(k+1)中断请求信号时,也以对应于至少该时间间隔门限的时间间隔,分别向第k处理器和第(k+1)处理器输出第k中断请求信号和第(k+1)中断请求信号。从而,
图6的方法可以抑制和/或防止在相对小的时间窗之内SOC中包括的多个处理器的模式连续地从不活动状态改变为活动状态(有时候称为突然苏醒)。
图7A和7B是示出根据图6的方法散布多个中断请求信号的例子的图。图7A示出顺序地输入第1至第4中断请求信号nIRQ_1至nIRQ_4的例子,而图7B示出根据图6的方法,顺序地分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4的例子。
在图7A中所示的例子中,在相同或基本相同的时间(例如,同时地或并发地)输入相邻的中断请求信号nIRQ_3和nIRQ_4,而顺序地输入中断请求信号nIRQ_1和nIRQ_2。在第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1小于时间间隔门限PS,在第2中断请求信号nIRQ_2和第3中断请求信号nIRQ_3(或,第4中断请求信号nIRQ_4)之间的第2时间间隔S2小于时间间隔门限PS,并且第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3等于或基本等于0。
如图7B中所示,假定第4中断请求信号nIRQ_4的优先次序高于第3中断请求信号nIRQ_3的优先次序。如此延迟第2中断请求信号nIRQ_2的输出,使得在第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1大于或等于时间间隔门限PS。此外,如此延迟第4中断请求信号nIRQ_4的输出,使得在第2中断请求信号nIRQ_2和第4中断请求信号nIRQ_4之间的第2时间间隔S2大于或等于时间间隔门限PS。此外,在输出第4中断请求信号nIRQ_4之后将第3中断请求信号的输出延迟该时间间隔门限PS。
在图7A和7B中所示的例子中,因为第4中断请求信号nIRQ_4的优先次序高于第3中断请求信号nIRQ_3的优先次序,所以在第3中断请求信号nIRQ_3之前输出第4中断请求信号nIRQ_4。当在相同或基本相同的时间(例如,同时地或并发地)输入相邻的中断请求信号(例如,第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4)时,基于给定的、要求的或预定的优先次序,以对应于时间间隔门限PS的时间间隔,分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4。
图8是示出根据另一示例实施例散布多个中断请求信号的方法的流程图。就像图2,为了清楚将考虑图1中所示的SOC来描述图8中所示的方法。然而,应该理解示例实施例不应该限于此实现。
参照图8,中断请求信号散布电路580在S310中接收第k中断请求信号,并在S320中接收第(k+1)中断请求信号。虽然对于顺序地接收第k中断请求信号和第(k+1)中断请求信号来描述此示例实施例,但是示例实施例也可以同样地应用于并发地或同时地接收的中断请求信号。
然后在S330,中断请求信号散布电路560检查第k中断请求信号的优先次序是否高于第(k+1)中断请求信号的优先次序。
如果第k中断请求信号的优先次序高于第(k+1)中断请求信号的优先次序,则中断请求信号散布电路560在S340中延迟第(k+1)中断请求信号的输出。
返回S330,如果第k中断请求信号的优先次序低于第(k+1)中断请求信号的优先次序,则中断请求信号散布电路560在S350中延迟第k中断请求信号的输出。
在图8中所示的示例实施例中,假定第k中断请求信号和第(k+1)中断请求信号之间的时间间隔小于时间间隔门限。
根据图8的方法,中断请求信号散布电路560可以顺序地接收第k中断请求信号和第(k+1)中断请求信号,并且检查第k中断请求信号和第(k+1)中断请求信号之间的时间间隔是否小于时间间隔门限。中断请求信号散布电路560还检查第k中断请求信号的优先次序是否高于第(k+1)中断请求信号的优先次序。然后,不考虑或独立于关于第k中断请求信号和第(k+1)中断请求信号的输入次序,中断请求信号散布电路560基于与中断请求信号关联的给定的、要求的或预定的优先次序,确定关于第k中断请求信号和第(k+1)中断请求信号的输出次序。
更详细地,例如,当第k中断请求信号的优先次序高于第(k+1)中断请求信号的优先次序时,中断请求信号散布电路560延迟第(k+1)中断请求信号的输出。另一方面,当第k中断请求信号的优先次序低于第(k+1)中断请求信号的优先次序时,中断请求信号散布电路560延迟第k中断请求信号的输出。结果,基于给定的、要求的或预定的优先次序,以对应于至少该时间间隔门限的时间间隔,分别向第k处理器和第(k+1)处理器输出第k中断请求信号和第(k+1)中断请求信号。从而,图8的方法可以抑制和/或防止在相对小的时间段之内SOC中包括的多个处理器的模式连续地从不活动状态改变为活动状态(有时候称为突然苏醒)。
图9A和9B是示出根据图8的方法散布多个中断请求信号的例子的图。图9A示出顺序地输入第1至第4中断请求信号nIRQ_1至nIRQ_4的例子,而图9B示出根据图8的方法,基于给定的、要求的或预定的优先次序分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4的例子。
如图9A中所示,在第1中断请求信号nIRQ_1和第2中断请求信号nIRQ_2之间的第1时间间隔S1小于时间间隔门限PS,在第2中断请求信号nIRQ_2和第3中断请求信号nIRQ_3之间的第2时间间隔S2小于时间间隔门限PS,并且在第3中断请求信号nIRQ_3和第4中断请求信号nIRQ_4之间的第3时间间隔S3小于时间间隔门限PS。在至少一个示例实施例中,根据用于电子设备中的SOC的要求的条件,关于第1至第4中断请求信号nIRQ_1至nIRQ_4的输出次序可能需要不同于关于第1至第4中断请求信号nIRQ_1至nIRQ_4的输入次序。因此,可以基于与中断请求信号nIRQ_1至nIRQ_4关联的给定的、要求的或预定的优先次序,改变关于第1至第4中断请求信号nIRQ_1至nIRQ_4的输出次序。
通过利用图8的方法,可以通过基于给定的、要求的或预定的优先次序改变关于第1至第4中断请求信号nIRQ_1至nIRQ_4的输出次序,来调整用于响应于第1至第4中断请求信号nIRQ_1至nIRQ_4而执行中断处理操作的第1至第4处理器的苏醒次序。
如图9B中所示,不考虑或独立于第1至第4中断请求信号nIRQ_1至nIRQ_4的输入次序,中断请求信号散布电路基于给定的、要求的或预定的优先次序,输出第1中断请求信号nIRQ_1、第3中断请求信号nIRQ_3、第4中断请求信号nIRQ_4和第2中断请求信号nIRQ_2。同时,控制在第1中断请求信号nIRQ_1、第3中断请求信号nIRQ_3、第4中断请求信号nIRQ_4和第2中断请求信号nIRQ_2之间的各时间间隔均大于或等于时间间隔门限PS。结果,基于给定的、要求的或预定的优先次序,以对应于至少该时间间隔门限PS的时间间隔,分别向第1至第4处理器输出第1至第4中断请求信号nIRQ_1至nIRQ_4。
图10是示出根据另一示例实施例散布多个中断的方法的流程图,并且图11是示出处于活动状态的多个处理器和处于不活动状态的多个处理器的图。将考虑图1中所示的SOC和图11中所示的处理器来描述图10中所示的方法。
参照图1、10和11,在S410中断请求信号散布电路560顺序地接收多个中断请求信号。在S420,中断请求信号散布电路560将所述中断请求信号划分或分组为目标中断请求信号和非目标中断请求信号。
根据至少此示例实施例,目标中断请求信号是分配给(例如,被调度为输出到)处于不活动状态中的处理器TP_1至TP_4的中断请求信号,而非目标中断请求信号是分配给处于活动状态中的处理器NTP_1和NTP_2的中断请求信号。
返回图10,在S430中断请求信号散布电路560立即分别向处于活动状态中的处理器NTP_1和NTP_2输出非目标中断请求信号。同时在S440,中断请求信号散布电路560检查在目标中断请求信号之间的时间间隔(例如,在相邻目标中断请求信号之间的时间间隔)是否小于时间间隔门限。
如果在目标中断请求信号之间的时间间隔小于时间间隔门限,则中断请求信号散布电路560在S450中控制在中断请求信号的输出之间的时间间隔大于或等于时间间隔门限。中断请求信号散布电路560然后在S480中分别向处于不活动状态中的处理器TP_1至TP_4输出目标中断请求信号。
返回S440,如果目标中断请求信号之间的时间间隔大于或等于时间间隔门限,则中断请求信号散布电路560在S460中保持(不调整)目标中断请求信号的输出之间的时间间隔。中断请求信号散布电路560然后在S480中分别向处于不活动状态中的处理器TP_1至TP_4输出目标中断请求信号。
根据图10的方法,因为处理器NTP_1和NTP_2处于活动状态并且不需要苏醒,所以不控制在非目标中断请求信号之间的时间间隔。然而,控制分配给处于不活动状态中的处理器TP_1至TP_4的目标中断请求信号之间的时间间隔大于或等于时间间隔门限。结果,采用图10的方法的SOC可以以更高的速度工作,因为减少了处理的中断请求信号(例如,负荷)的数目。
图12是示出根据示例实施例的中断请求信号散布电路的框图。图12中所示的中断请求信号散布电路可以充当图1中所示的中断请求信号散布电路560。
参照图12,中断请求信号散布电路100包括中断请求信号判定器140和第1至第m中断请求信号保持器120_1至120_m。在此例子中,m是大于或等于2的整数。
第1至第m中断请求信号保持器120_1至120_m被配置为分别接收第1至第m中断请求信号nIRQ_I1至nIRQ_Im,并且以大于或等于时间间隔门限的时间间隔,分别向第1至第m处理器(图12中未示出)输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。
基于从多个中断源(图12中未示出)输出的多个中断,产生第1至第m中断请求信号nIRQ_I1至nIRQ_Im。此外,分别向第1至第m中断请求信号保持器120_1至120_m输入第1至第m中断请求信号nIRQ_I1至nIRQ_Im。同时,第1至第m中断请求信号保持器120_0至120_m分别耦接到第1至第m处理器。此外,第1至第m中断请求信号保持器120_1至120m以大于或等于时间间隔门限的时间间隔,分别向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。
对于图12更详细地,当第1至第m中断请求信号保持器120_1至120_m分别接收第1至第m中断请求信号nIRQ_I1至nIrQ_Im时,第1至第m中断请求信号保持器120_1至120_m向中断请求信号判定器140发送各个输出请求信号RS1至RSm。当第1至第m中断请求信号保持器120_1至120_m从中断请求信号判定器140接收各个输出-确认信号AS1至ASm时,第1至第m中断请求信号保持器120_1至120_m分别向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。
对于此操作,第1至第m中断请求信号保持器120_1至120_m的每个可以由具有空闲状态、等待状态和认定状态(assert-state)的状态机实现。下面将对于图13更详细地描述示例状态机的实现。
中断请求信号判定器140被配置为当第1至第m中断请求信号之间的时间间隔小于时间间隔门限时,控制第1至第m中断请求信号的输出之间的时间间隔(例如,相邻的中断请求信号的输出之间的时间间隔)大于或等于时间间隔门限。在此例子中,该时间间隔门限可以是其中当第1至第m处理器的模式连续地从不活动状态改变为活动状态时所述处理器中不产生浪涌电流的范围之内的给定的、要求的或预定的时间间隔。
仍参照图12,中断请求信号判定器140分别从第1至第m中断请求信号保持器120_1至120_m接收输出请求信号RS1至RSm。然后,中断请求信号判定器140通过以大于或等于时间间隔门限的时间间隔,分别向第1至第m中断请求信号保持器120_1至120_m输出输出-确认信号AS1至ASm,来控制第1至第m中断请求信号保持器120_1至120_m以大于或等于时间间隔门限的时间间隔,分别向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。对于此操作,中断请求信号判定器140可以由具有空闲状态和等待状态的状态机实现。下面将对于图14更详细地描述示例状态机的实现。
在至少一个示例实施例中,中断请求信号判定器140可以基于与中断请求信号nIRQ_O1至nIRQ_Om关联的给定的、要求的或预定的优先次序,改变第1至第m中断请求信号nIRQ_O1至nIRQ_Om的输出次序。结果,向第1至第m中断请求信号保持器120_1至120_m输入的第1至第m中断请求信号nIRQ_I1至nIRQ_Im的输入次序可以不同于从第1至第m中断请求信号保持器120_1至120_m输出的第1至第m中断请求信号nIRQ_O1至nIRQ_Om的输出次序。
在至少一个示例实施例中,中断请求信号判定器140可以将第1至第m处理器划分或分组为包括处于活动状态的处理器的第一组和包括处于不活动状态的处理器的第二组。在第1至第m中断请求信号nIRQ_I1至nIRQ_Im当中,中断请求信号判定器140可以不控制分配给第一组的中断请求信号之间的时间间隔为时间间隔门限,但是可以控制分配给第二组的中断请求信号当中的每一时间间隔大于或等于时间间隔门限。
如上所述,即使当在相对小的时间窗之内多个中断源连续地产生中断时,通过控制基于多个中断产生的多个中断请求信号的输出之间的时间间隔大于或等于时间间隔门限,中断请求信号散布电路100也可以抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中多个内核)的模式连续地从不活动状态改变为活动状态(有时候称为突然苏醒)。结果,包括中断请求信号散布电路100的SOC通过抑制和/或防止由于多个处理器(或多核处理器中的多个内核)的突然苏醒而产生的浪涌电流,而实现相对高的工作可靠性。
图13是示出图12中所示的中断请求信号保持器的示例状态机实现的图。第1至第m中断请求信号保持器120_1至120_m的一个或多个可以由诸如图13所示的状态机来实现。然而,示例实施例不限于此实现。为了清楚起见,将考虑第n中断请求信号保持器120_n和第n中断请求信号nIRQ_In来描述图13。然而,应该理解,第1至第m中断请求信号保持器120_1至120_m的每个可以以相同或基本相同的方式工作。
参照图13,该状态机200包括空闲状态220、等待状态240和认定状态260。空闲状态220指示该中断请求信号保持器120_n尚未接到中断请求信号nIRQ_In。等待状态240指示该中断请求信号保持器120_n正在等待来自中断请求信号判定器140的输出-确认信号ASn。认定状态260指示该中断请求信号保持器120_n输出了或正在输出中断请求信号nIRQ_On到第n处理器580_n。在此例子中,空闲状态220对应于用于中断请求信号保持器120_n的默认状态。
关于图13更详细地,第1至第m中断请求信号保持器120_1至120_m保留在空闲状态220,直到分别接收第1至第m中断请求信号nIRQ_I1至nIRQ_Im。响应于接收到第1至第m中断请求信号nIRQ_I1至nIRQ_Im,第1至第m中断请求信号保持器120_1至120_m进入等待状态240或认定状态260。
例如,当中断请求信号保持器120_n接收到中断请求信号nIRQ_In时,中断请求信号保持器120_n向中断请求信号判定器140发送输出请求信号RSn。如果中断请求信号判定器140立即向中断请求信号保持器120_n输出输出-确认信号ASn,则中断请求信号保持器120_n进入认定状态260(RA)。但是,如果中断请求信号判定器140没有立即向中断请求信号保持器120_n输出输出-确认信号ASn,则中断请求信号保持器120_n进入等待状态240(RNA)。在这种情况下,中断请求信号判定器140延迟输出-确认信号ASn的输出,来控制在中断请求信号的输出之间的时间间隔(例如,在相邻的中断请求信号的输出之间的时间间隔)。
随后,在等待状态240期间,中断请求信号保持器120_n从中断请求信号判定器140接收输出-确认信号ASn。响应于输出-确认信号ASn,中断请求信号保持器120_n进入认定状态260(AR)。
在中断请求信号保持器120_n在认定状态260期间向第n处理器输出中断请求信号nIRQ_On之后,中断请求信号保持器120_n返回空闲状态220(AL)。如上所述,第1至第m中断请求信号保持器120_1至120_m的每个可以由具有相对简单的结构的状态机来实现。
图14是示出图12中所示的中断请求信号判定器的示例状态机实现的图。
参照图14,状态机300包括空闲状态320和等待状态340。空闲状态320指示没有向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。等待状态340指示正在向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om的至少一个。在此例子中,空闲状态320对应于用于中断请求信号判定器140的默认状态。
中断请求信号判定器140可以保持空闲状态320,直到从第1至第m中断请求信号保持器120_1至120_m接收到任何输出请求信号RS1至RSm。响应于接收到输出请求信号(例如,来自中断请求信号保持器120_n的RSn),中断请求信号判定器140进入等待状态340(REQ),并且立即向中断请求信号保持器120_n输出输出-确认信号ASn。中断请求信号判定器140在给定的、要求的或预定的时间间隔(例如,时间间隔门限)期间保持处于等待状态340中。然后,中断请求信号判定器140返回空闲状态320(EXP)。根据至少此示例实施例,中断请求信号判定器140处于等待状态340期间,即使当其它中断请求信号保持器向中断请求信号判定器140发送它们的输出请求信号,中断请求信号判定器140也不向其它中断请求信号保持器输出其它输出-确认信号。结果,以大于或等于时间间隔门限的时间间隔,分别向第1至第m处理器输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。如上所述,中断请求信号判定器140可以由具有相对简单的结构的状态机实现。
图15是示出图12的中断请求信号散布电路的示例操作的时序图。
参照图15,当向中断请求信号散布电路100中的第i中断请求信号保持器120_i输入第i中断请求信号nIRQ_Ii时,第i中断请求信号保持器120_i向中断请求信号判定器140输出输出请求信号RSi REQ。因为中断请求信号判定器140处于空闲状态IDLE(不存在先前的中断请求信号),所以中断请求信号判定器140立即向第i中断请求信号保持器120_i输出输出-确认信号ASi ACK。
响应于输出-确认信号ASi ACK,第i中断请求信号保持器120_i从空闲状态IDLE转换为认定状态ASSERT,并且中断请求信号判定器140从空闲状态IDLE转换为等待状态WAIT。从而,向第i处理器输出第i中断请求信号nIRQ_Oi。
在中断请求信号判定器140处于等待状态WAIT期间,如果响应于接收第j中断请求信号nIRQ_Ij,第j中断请求信号保持器120_j向中断请求信号判定器140输出输出请求信号RSj REQ,则中断请求信号判定器140不向第j中断请求信号保持器120_j输出输出-确认信号ASj ACK。可以通过考虑诸如物理特性等的各种条件来确定,并且可以由诸如计数器等的电路来调整其中中断请求信号判定器140保留在等待状态WAIT的时间段。
根据至少一些示例实施例,第j中断请求信号保持器120_j可以从空闲状态IDLE转换为等待状态WAIT,而不是认定状态ASSERT。在中断请求信号判定器140从等待状态进入空闲状态IDLE之后,当在第i中断请求信号nIRQ_Oi和第j中断请求信号nIRQ_Oj之间的时间间隔变为至少等于或基本等于时间间隔门限时,中断请求信号判定器140向第j中断请求信号保持器120_j输出输出-确认信号ASj ACK。响应于输出-确认信号ASj ACK,第j中断请求信号保持器120_j从等待状态WAIT转换为认定状态ASSERT,并且向第j处理器个输出第j中断请求信号nIRQ_Oj。
如图15中所示,可以以大于或等于时间间隔门限的时间间隔,分别向第i处理器和第j处理器输出第i中断请求信号nIRQ_Oi和第j中断请求信号nIRQ_Oj。
如上所述,即使当在相对小的时间段之内多个中断源连续地产生中断时,通过控制多个中断请求信号之间的时间间隔(例如,相邻的中断请求信号之间的时间间隔)大于或等于时间间隔门限,中断请求信号散布电路100也可以抑制和/或防止在相对小的时间段之内多个处理器(或多核处理器中多个内核)的模式连续地从不活动状态改变为活动状态(有时候称为突然苏醒)。
图16是示出根据示例实施例的中断请求信号散布电路的示例软件实现的框图。图16中所示的中断请求信号散布电路可以充当图1中所示的中断请求信号散布电路560。
参照图16,中断请求信号散布电路包括多个电平检测器LD1、LD2、LD3、…、LDm。在此例子中,m是大于或等于2的整数。该多个电平检测器LD1至LDm检测多个中断请求信号nIRQ_I1至nIRQ_Im的的各个中的改变,以便识别/检测用于主处理器的新的中断(和/或中断请求)。当检测到用于主处理器的新的中断和/或中断请求时,微控制器中断控制器1302经由总线1306通知微控制器1308。
微控制器1308控制新的中断请求(例如,从中断请求信号nIRQ_I1至nIRQ_Im当中的新的中断请求)的输出,使得中断请求信号(例如,与新的中断请求对应的nIRQ_O1至nIRQ_Om中的几个)的输出之间的时间间隔大于或等于时间间隔门限。例如,微控制器1308可以(例如,通过在随机存取存储器(RAM)1310中存储中断请求)将新的中断请求延迟给定的或要求的时间段,然后通过通用I/O电路1304输出该中断请求信号。
图16中所示的RAM1310和/或只读存储器(ROM)1312被配置为在上述延迟期间存储中断请求,和/或存储关于响应于检测到的中断信号要采取的行动的指示。
微控制器1308经由通用I/O电路1304更新中断输出线nIRQ_O1至nIrQ_Om上的物理信号。微控制器1308经由总线1306与通用I/O电路1304通信。因为像图16中所示的通用I/O电路是已知的,所以省略详细的讨论。
与以上关于至少一些其它示例实施例所述相同或基本相同的方式,向例如处理器580_1至580_m输出所述信号。
根据至少此示例实施例,图16中所示的微控制器中断控制器1302从图1中所示的中断控制器540分离。图17是示出用于图1的SOC的中断请求信号散布电路的示例操作的图。
图17示出SOC500中中断请求信号散布电路560的第1至第m中断请求信号保持器562_1至562_m由中断请求信号散布电路560的中断请求信号判定器(未示出)控制的例子。从而,第1至第m中断请求信号nIRQ_I1至nIRQ_Im可以以对应于时间间隔门限PS的时间间隔,分别作为第1至第m中断请求信号nIRQ_O1至nIRQ_Om输出到第1至第m处理器580_1至580_m。如图17中所示,为了方便起见假定m为4。
更详细地,当第1至第n中断源520_1至520_n输出第1至第n中断INT_R1至INT_Rn时,中断控制器540基于第1至第n中断INT_R1至INT_Rn产生第1至第4中断请求信号nIRQ_I1至nIRQ_I4。如图17中所示,第1中断请求信号保持器562_1、第3中断请求信号保持器562_3、第2中断请求信号保持器562_2和第4中断请求信号保持器562_4顺序地分别接收第1中断请求信号nIRQ_I1、第3中断请求信号nIRQ_I3_3、第2中断请求信号nIRQ_I2和第4中断请求信号nIRQ_I4。
因为不存在在第1中断请求信号nIRQ_I1之前的先前中断请求信号,所以第1中断请求信号保持器562_1立即向第1处理器580_1输出第1中断请求信号nIRQ_O1。因为在第1中断请求信号nIRQ_I1和第3中断请求信号nIRQ_I3之间的时间间隔小于时间间隔门限PS,所以第3中断请求信号保持器562_3将第3中断请求信号nIRQ_I3延迟时间段DL1。第3中断请求信号保持器562_3然后向第3处理器580_3输出第3中断请求信号nIRQ_O3。
第2中断请求信号保持器562_2将第2中断请求信号nIRQ_I2的输出延迟时间段DL2,然后向第2处理器580_2输出第2中断请求信号nIRQ_O2。
第4中断请求信号保持器562_4将第4中断请求信号nIRQ_I4的输出延迟时间段DL4,然后向第4处理器580_4输出第4中断请求信号nIRQ_O4。
根据至少此示例实施例,因为第1至第4处理器580_1至580_4以对应于至少时间间隔门限PS的时间间隔分别接收第1至第4中断请求信号nIRQ_O1至nIRQ_O4,所以可以抑制和/或防止由于第1至第4处理器580_1至580_4的突然苏醒导致的浪涌电流。
图18是示出用于图1的SOC的中断请求信号散布电路的另一示例操作的图。
图18示出片上系统500中中断请求信号散布电路560的第1至第m中断请求信号保持器562_1至562_m由中断请求信号散布电路560的中断请求信号判定器(图18中未示出)控制的例子。在此例子中,第1至第m中断请求信号nIRQ_I1至nIRQ_Im可以以大于或等于时间间隔门限PS的时间间隔,分别作为第1至第m中断请求信号nIRQ_I1至nIRQ_Om输出到第1至第m处理器580_1至580_m。如图18中所示,为了方便起见假定m为4。
更详细地,当第1至第n中断源520_1至520_n输出第1至第n中断INT_R1至INT_Rn时,中断控制器540基于第1至第n中断INT_R1至INT_Rn产生第1至第4中断请求信号nIRQ_I1至nIRQ_I4。如图18中所示,第1中断请求信号保持器562_1、第2中断请求信号保持器562_2、第4中断请求信号保持器562_4和第3中断请求信号保持器562_3顺序地分别接收第1中断请求信号nIRQ_I1、第2中断请求信号nIRQ_I2、第4中断请求信号nIRQ_I4和第3中断请求信号nIRQ_I3。
因为不存在在第1中断请求信号nIRQ_I1之前的先前中断请求信号,所以第1中断请求信号保持器562_1立即向第1处理器580_1输出第1中断请求信号nIRQ_O1。
因为在第1中断请求信号nIRQ_I1和第2中断请求信号nIRQ_I2之间的时间间隔S1大于时间间隔PS,所以第2中断请求信号保持器562_2也立即向第2处理器580_2输出第2中断请求信号nIRQ_O2。
因为第2中断请求信号nIRQ_I2和第4中断请求信号nIRQ_I4之间的时间间隔小于时间间隔门限PS,所以第4中断请求信号保持器562_4将第4中断请求信号nIRQ_I4延迟时间段DL1。第4中断请求信号保持器562_4然后向第4处理器580_4输出第4中断请求信号nIRQ_O4。
第3中断请求信号保持器562_3在输出第4中断请求信号nIRQ_O4之后将第3中断请求信号nIRQ_O3的输出延迟时间段DL2,然后向第3处理器580_3输出第3中断请求信号nIRQ_O3。
根据至少此示例实施例,因为第1至第4处理器580_1至580_4以大于或等于时间间隔门限PS的时间间隔分别接收第1至第4中断请求信号nIRQ_O1至nIRQ_O4,所以可以抑制和/或防止由于第1至第4处理器580_1至580_4的突然苏醒导致的浪涌电流。
图19是示出用于图1的SOC的中断请求信号散布电路的另一示例操作的图。
图19示出SOC500中中断请求信号散布电路560的第1至第m中断请求信号保持器562_1至562_m由中断请求信号散布电路560的中断请求信号判定器(图19中未示出)控制的例子。从而,第1至第m中断请求信号nIRQ_I1至nIRQ_Im以对应于时间间隔门限PS的时间间隔,分别作为第1至第m中断请求信号nIRQ_O1至nIRQ_Om输出到第1至第m处理器580_1至580_m。如图19中所示,为了方便起见假定m为4。
当第1至第n中断源520_1至520_n输出第1至第n中断INT_R1至INT_Rn时,中断控制器540基于第1至第n中断INT_R1至INT_Rn产生第1至第4中断请求信号nIRQ_I1至nIRQ_I4。如图19中所示,第1中断请求信号nIRQ_I1和第2中断请求信号nIRQ_I2分别由第1中断请求信号保持器562_1和第2中断请求信号保持器562_2同时地或并发地接收。然后,第4中断请求信号nIRQ_I4和第3中断请求信号nIRQ_I3分别由第4中断请求信号保持器562_4和第3中断请求信号保持器562_3顺序地接收。这里,假设第1中断请求信号nIRQ_I1的优先次序高于第2中断请求信号nIRQ_I2的优先次序。从而,在此例子中第1中断请求信号保持器562_1立即向第1处理器580_1输出第1中断请求信号nIRQ_O1。
第2中断请求信号保持器562_2将第2中断请求信号nIRQ_I2的输出延迟时间段DL1(例如,时间间隔门限PS),然后向第2处理器580_2输出第2中断请求信号nIRQ_O2。
不考虑或独立于第4中断请求信号nIRQ_I4和第3中断请求信号nIRQ_I3的输入次序,分别向第4处理器580_4和第3处理器580_3输出第4中断请求信号nIRQ_O4和第3中断请求信号nIRQ_O3。这里,假设第3中断请求信号nIRQ_I1的优先次序高于第4中断请求信号nIRQ_I4的优先次序。第3中断请求信号保持器562_3将第3中断请求信号nIRQ_I3的输出延迟时间段DL2,然后向第3处理器580_3输出第3中断请求信号nIRQ_O3。第4中断请求信号保持器562_4将第4中断请求信号nIRQ_I4的输出延迟时间段DL3,然后向第4处理器580_4输出第4中断请求信号nIRQ_O4。
根据至少此示例实施例,因为第1至第4处理器580_1至580_4以对应于时间间隔门限PS的时间间隔分别接收第1至第4中断请求信号nIRQ_O1至nIRQ_O4,所以可以抑制和/或防止由于第1至第4处理器580_1至580_4的突然苏醒导致的浪涌电流。
图20是示出根据示例实施例的多核系统的框图,而图21是示出将图20的多核系统实现为智能电话机的例子的图。
参照图20和21,多核系统600包括第1至第n中断源610_1至610_n、中断控制器620、中断请求信号散布电路630、多核处理器640、总线接口645、随机存取存储器(RAM)设备650、只读存储器(ROM)设备660、存储设备670、系统总线680等等。这里,多核处理器640包括第1至第m内核P1至Pm。在一个例子中,如果m为2则该多处理器可以称为双核处理器,如果m为4则可以称为四核处理器,等等。
如图21中所示,多核系统600可以实现为智能电话机700。但是,该多核系统600不限于此。例如,多核系统600可以实现为诸如智能电视机、智能平板、蜂窝电话机等的电子设备。此外,应该理解多核系统600对应于包括具有多个内核的多核处理器的系统,或者包括多个处理器,每个具有一个或多个内核的系统。
第1至第n中断源610_1至610_n可以分别产生并输出第1至第n中断INT_R1至INT_Rn。第1至第n中断源610_1至610_n可以与诸如视频模块、声音模块、显示模块、存储模块、通信模块、相机模块等的片上系统(SOC)的部件对应。即,例如,第1至第n中断源610_1至610_n可以是执行用于多核系统600的特定操作的知识产权(IP)块。
中断控制器620基于从第1至第n中断源620_1至620_n输出的第1至第n中断INT_R1至INT_Rn,产生第1至第m中断请求信号nIRQ_I1至nIRQ_Im。中断请求信号散布电路630控制从中断控制器620输出的第1至第m中断请求信号nIRQ_I1至nIRQ_Im之间的间隔(例如,相邻中断请求信号之间的时间间隔)大于或等于时间间隔门限。
如图20中所示,分别向多核处理器640的第1至第m内核P1至Pm输出第1至第m中断请求信号nIRQ_O1至nIRQ_Om。对于此操作,中断请求信号散布电路630包括第1至第m中断请求信号保持器,和控制所述第1至第m中断请求信号保持器的中断请求信号判定器。因为上面详细描述了中断请求信号散布电路630,所以下面省略重复的描述。
多核处理器640使用总线接口645经由系统总线680耦接到其它部件。多核处理器640被配置为经由诸如地址总线、控制总线、数据总线等的系统总线680与知识产权(IP)块610_1至610_n、RAM设备650、ROM设备660、存储设备670等通信。存储设备670可以包括硬盘驱动器(HDD)、固态驱动器(SSD)、独立磁盘的冗余阵列(RAID)等。根据至少一些示例实施例,多核处理器640可以耦接到诸如外围设备互联(PCI)总线的扩展总线。
虽然图20中未示出,但是多核系统600可以进一步包括至少一个非易失性存储设备和/或至少一个易失性存储设备。例如,非易失性存储设备可以对应于可擦除可编程只读存储器(EPROM)设备、电可擦可编程只读存储器(EEPROM)设备、闪存设备、相变随机存取存储器(PRAM)设备、电阻随机存取存储器(RRAM)设备,纳米浮栅存储器(NFGM)设备、聚合物随机存取存储器(PoRAM)设备、磁性随机存取存储器(MRAM)设备、铁电随机存取存储器(FRAM)设备等等。此外,易失性存储设备可以对应于动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、移动DRAM设备等。
如图20中所示,多核系统600包括用于转移(接收和发送)数据的系统总线路径,和用于处理从知识产权(IP)块610_1至610_n输出的中断的中断路径。多核处理器640可以基于系统总线路径执行用于知识产权(IP)块610_1至610_n的特定操作。此外,多核处理器640可以基于中断路径执行用于知识产权(IP)块610_1至610_n的中断处理操作。多核系统600可以由各种封装实现,例如层叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料带引线芯片载体(PLCC)、塑料双列直插封装(PDIP)、Waffle组件芯片、晶片形式芯片、板上芯片(COB)、陶瓷双列直插封装(CERDIP)、塑料标准四方扁平封装(MQFP)、薄四方扁平封装(TQFP)、小外形集成电路(SOIC)、缩小型小外形封装(SSOP)、薄小外形封装(TSOP)、薄型四边扁平封装(TQFP)、封装中系统(SIP)、多芯片封装(MCP)、晶片级制造封装(WFP)、晶片级处理栈封装(WSP)。
示例实施例可以应用到包括多个处理器(或多核处理器)的电子设备。例如,至少一些示例实施例可以应用到诸如蜂窝电话机、智能电话机、计算机、膝上计算机、工作站、智能平板、安全系统等的电子设备。
上述是示例实施例的说明,不应该解释为限制示例实施例。虽然已经描述少量示例实施例,但是本领域技术人员将容易地理解,可以在所述示例实施例中进行很多修改而不实质上脱离本发明构思的新颖的教导和优点。因此,所有这种修改都旨在包括在如权利要求中定义的本发明构思的范围内。因此,将理解地是,上文是各个示例实施例的说明,不被解释为限于公开的特定示例实施例,而且对公开的示例实施例的修改和其他示例实施例被认为是包括在所附权利要求的范围内。
对相关申请的交叉引用
此申请要求于2012年1月30日在韩国知识产权局(KIPO)提交的韩国专利申请第10-2012-0008822的优先权,通过引用将其内容全部合并于此。
Claims (26)
1.一种用于片上系统的功率控制的方法,该方法包括:
控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得在第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
2.如权利要求1所述的方法,其中第一和第二苏醒请求信号是中断请求信号。
3.如权利要求1所述的方法,进一步包括:
将接收第一苏醒请求信号和第二苏醒请求信号之间的第一时间差与时间间隔门限比较;并且其中
基于在第一时间差和时间间隔门限之间的比较,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
4.如权利要求3所述的方法,其中控制步骤包括:
如果第一时间差小于时间间隔门限,则延迟第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
5.如权利要求3所述的方法,其中控制步骤包括:
如果第一时间差大于或等于时间间隔门限,则没有额外的或故意的延迟而输出第一和第二苏醒请求信号。
6.一种用于片上系统的功率控制的方法,该方法包括:
比较第一苏醒请求信号的第一优先次序和第二苏醒请求信号的第二优先次序;以及
基于在第一优先次序和第二优先次序之间的比较,控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出,使得在第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间差大于或等于时间间隔门限。
7.如权利要求6所述的方法,其中第一和第二苏醒请求信号是中断请求信号。
8.如权利要求6所述的方法,其中控制步骤包括:
基于所述比较,延迟第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
9.如权利要求8所述的方法,其中第一优先次序大于第二优先次序,并且其中延迟步骤包括,
延迟第二苏醒请求信号的输出。
10.如权利要求8所述的方法,其中在第二苏醒请求信号之前接收第一苏醒请求信号,并且其中延迟步骤包括,
延迟第一苏醒请求信号的输出。
11.如权利要求6所述的方法,其中第一和第二苏醒请求信号是连续的和并发的苏醒请求信号的一种。
12.如权利要求6所述的方法,其中第一苏醒请求信号和第二苏醒请求信号与处于不活动状态的功能块关联,并且其中控制步骤包括,
没有延迟地输出与处于活动状态的功能块关联的苏醒请求信号。
13.一种用于片上系统的功率控制的方法,该方法包括:
控制到处于不活动状态的第一处理器的第一苏醒请求信号和到处于不活动状态的第二处理器的第二苏醒请求信号中至少一个的输出,使得到第一处理器的第一苏醒请求信号的输出和到第二处理器的第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
14.如权利要求13所述的方法,其中第一和第二苏醒请求信号是中断请求信号。
15.如权利要求13所述的方法,进一步包括:
将接收第一苏醒请求信号和第二苏醒请求信号之间的第一时间差与时间间隔门限比较;并且其中
基于在第一时间差和时间间隔门限之间的比较,控制到第一处理器的第一苏醒请求信号和到第二处理器的第二苏醒请求信号的至少一个的输出。
16.如权利要求15所述的方法,其中控制步骤包括:
如果第一时间差小于时间间隔门限,则延迟第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
17.如权利要求15所述的方法,其中控制步骤包括:
如果第一时间差大于或等于时间间隔门限,则没有延迟地输出第一和第二苏醒请求信号。
18.如权利要求13所述的方法,进一步包括:
控制到处于不活动状态的第三处理器的第三苏醒请求信号的输出,使得到第二处理器的第二苏醒请求信号的输出和到第三处理器的第三苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第二苏醒请求信号和第三苏醒请求信号是并发的和连续的苏醒请求信号的一种。
19.如权利要求13所述的方法,其中第一苏醒请求信号和第二苏醒请求信号是并发的苏醒请求信号,并且其中控制步骤包括,
基于与第一苏醒请求信号和第二苏醒请求信号的每个相关联的优先次序,延迟第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
20.一种片上系统,包括:
苏醒请求信号散布电路,被配置为控制到第一功能块的第一苏醒请求信号和到第二功能块的第二苏醒请求信号的至少一个的输出,使得到第一功能块的第一苏醒请求信号的输出和到第二功能块的第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种。
21.如权利要求20所述的片上系统,其中第一和第二苏醒请求信号是中断请求信号。
22.如权利要求20所述的片上系统,其中苏醒请求信号散布电路包括:
判定器,被配置为将接收第一苏醒请求信号和第二苏醒请求信号之间的第一时间差与时间间隔门限比较,该判定器被进一步配置为基于所述比较产生多个输出确认信号;并且其中
苏醒请求信号散布电路被配置为基于所述多个输出确认信号控制第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
23.如权利要求22所述的片上系统,其中苏醒请求信号散布电路进一步包括:
第一中断请求信号保持器电路,被配置为存储第一苏醒请求信号,该第一中断请求信号保持器电路被进一步配置为响应于所述多个输出确认信号的第一个而输出第一苏醒请求信号;及
第二中断请求信号保持器电路,被配置为存储第二苏醒请求信号,该第二中断请求信号保持器电路被进一步配置为响应于所述多个输出确认信号的第二个而输出第二苏醒请求信号。
24.如权利要求22所述的片上系统,其中苏醒请求信号散布电路被配置为如果第一时间差小于时间间隔门限,则延迟第一苏醒请求信号和第二苏醒请求信号的至少一个的输出。
25.如权利要求20所述的片上系统,其中苏醒请求信号散布电路包括:
第一电平检测器,被配置为检测第一苏醒请求信号;
第二电平检测器,被配置为检测第二苏醒请求信号;及
微控制器,被配置为控制到第一功能块的第一苏醒请求信号和到第二功能块的第二苏醒请求信号的至少一个的输出。
26.一种多核系统,包括:
多个苏醒信号源,被配置为至少产生第一和第二苏醒信号;
苏醒信号控制器,被配置为基于第一和第二苏醒信号而至少产生第一和第二苏醒请求信号;
至少包括第一内核和第二内核的多核处理器,第一内核被配置为接收第一苏醒请求信号,而第二内核被配置为接收第二苏醒请求信号;
苏醒请求信号散布电路,被配置为控制到第一内核的第一苏醒请求信号和到第二内核的第二苏醒请求信号的至少一个的输出,使得第一苏醒请求信号的输出和第二苏醒请求信号的输出之间的时间间隔大于或等于时间间隔门限,第一苏醒请求信号和第二苏醒请求信号是并发的和连续的苏醒请求信号的一种;以及
至少一个存储设备,被配置为经由系统总线与多个苏醒信号源和多核处理器连接。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120008822A KR101841930B1 (ko) | 2012-01-30 | 2012-01-30 | 인터럽트 스프레드 방법, 인터럽트 스프레드 장치 및 이를 구비하는 시스템 온-칩 |
KR10-2012-0008822 | 2012-01-30 | ||
US13/677,775 US9298251B2 (en) | 2012-01-30 | 2012-11-15 | Methods of spreading plurality of interrupts, interrupt request signal spreader circuits, and systems-on-chips having the same |
US13/677,775 | 2012-11-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103226494A true CN103226494A (zh) | 2013-07-31 |
CN103226494B CN103226494B (zh) | 2017-09-26 |
Family
ID=48783685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310036955.8A Active CN103226494B (zh) | 2012-01-30 | 2013-01-30 | 散布多个中断的方法、中断请求信号散布电路和片上系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103226494B (zh) |
DE (1) | DE102012112363A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103869929A (zh) * | 2014-02-14 | 2014-06-18 | 珠海全志科技股份有限公司 | 一种降低智能设备待机功耗的方法及系统 |
CN105630593A (zh) * | 2014-11-24 | 2016-06-01 | 三星电子株式会社 | 用于处理中断的方法 |
CN107621974A (zh) * | 2016-07-13 | 2018-01-23 | 罗伯特·博世有限公司 | 中断请求分配装置和对此的运行方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112562667A (zh) * | 2020-11-30 | 2021-03-26 | 星络智能科技有限公司 | 存储介质、语音响应装置和方法 |
CN116466999B (zh) * | 2023-04-14 | 2024-02-09 | 镁佳(北京)科技有限公司 | 一种soc芯片的唤醒方法、装置、设备及介质 |
CN117409516B (zh) * | 2023-12-15 | 2024-03-22 | 杭银消费金融股份有限公司 | 一种自助终端的节能控制方法以及自助终端 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5708814A (en) * | 1995-11-21 | 1998-01-13 | Microsoft Corporation | Method and apparatus for reducing the rate of interrupts by generating a single interrupt for a group of events |
US5765003A (en) * | 1993-09-22 | 1998-06-09 | Advanced Micro Devices, Inc. | Interrupt controller optimized for power management in a computer system or subsystem |
CN1394308A (zh) * | 2000-09-22 | 2003-01-29 | 索尼株式会社 | 运算处理系统和控制方法,任务管理系统和方法 |
US20030105798A1 (en) * | 2001-12-03 | 2003-06-05 | Ted Kim | Methods and apparatus for distributing interrupts |
CN101673221A (zh) * | 2009-10-22 | 2010-03-17 | 同济大学 | 一种嵌入式片上多处理器的中断处理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101130261B1 (ko) | 2010-07-20 | 2012-03-26 | 한국 전기안전공사 | 접지 파라미터 측정 시스템 |
-
2012
- 2012-12-17 DE DE102012112363A patent/DE102012112363A1/de active Pending
-
2013
- 2013-01-30 CN CN201310036955.8A patent/CN103226494B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5765003A (en) * | 1993-09-22 | 1998-06-09 | Advanced Micro Devices, Inc. | Interrupt controller optimized for power management in a computer system or subsystem |
US5708814A (en) * | 1995-11-21 | 1998-01-13 | Microsoft Corporation | Method and apparatus for reducing the rate of interrupts by generating a single interrupt for a group of events |
CN1394308A (zh) * | 2000-09-22 | 2003-01-29 | 索尼株式会社 | 运算处理系统和控制方法,任务管理系统和方法 |
US20030105798A1 (en) * | 2001-12-03 | 2003-06-05 | Ted Kim | Methods and apparatus for distributing interrupts |
CN101673221A (zh) * | 2009-10-22 | 2010-03-17 | 同济大学 | 一种嵌入式片上多处理器的中断处理方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103869929A (zh) * | 2014-02-14 | 2014-06-18 | 珠海全志科技股份有限公司 | 一种降低智能设备待机功耗的方法及系统 |
CN103869929B (zh) * | 2014-02-14 | 2016-07-13 | 珠海全志科技股份有限公司 | 一种降低智能设备待机功耗的方法及系统 |
CN105630593A (zh) * | 2014-11-24 | 2016-06-01 | 三星电子株式会社 | 用于处理中断的方法 |
CN107621974A (zh) * | 2016-07-13 | 2018-01-23 | 罗伯特·博世有限公司 | 中断请求分配装置和对此的运行方法 |
CN107621974B (zh) * | 2016-07-13 | 2023-11-28 | 罗伯特·博世有限公司 | 中断请求分配装置和对此的运行方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102012112363A1 (de) | 2013-08-01 |
DE102012112363A8 (de) | 2014-01-02 |
CN103226494B (zh) | 2017-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI578235B (zh) | 系統晶片及其功率控制方法以及多核心系統 | |
CN103226494A (zh) | 散布多个中断的方法、中断请求信号散布电路和片上系统 | |
CN102077181B (zh) | 用于在多核处理器中和在某些共享存储器多处理器系统中产生并输送处理器间中断的方法和系统 | |
US10649935B2 (en) | Deferred inter-processor interrupts | |
KR101975288B1 (ko) | 멀티 클러스터 프로세싱 시스템 및 그 구동 방법 | |
CN102597912B (zh) | 用于平台功率节省的协调设备和应用程序中断事件 | |
WO2008087779A1 (ja) | アレイ型プロセッサおよびデータ処理システム | |
WO2014099782A1 (en) | Managing a power state of a processor | |
CN204028898U (zh) | 一种硬盘、兼容多种固态硬盘任意混插的服务器 | |
US8527803B2 (en) | System and method for multiple backplane time synchronization | |
CN101221541A (zh) | 用于soc的可编程通信控制器及其编程模型 | |
CN110399034B (zh) | 一种SoC系统的功耗优化方法及终端 | |
US8793421B2 (en) | Queue arbitration using non-stalling request indication | |
US20190094926A1 (en) | Multi-criteria power management scheme for pooled accelerator architectures | |
CN102867158B (zh) | 一种切换内存的方法、装置及具有双系统的终端 | |
GB2493416A (en) | Synchroniser for interrupt signals | |
CN103092652A (zh) | 一种多处理器程序加载装置及加载方法 | |
WO2014210258A1 (en) | Generic host-based controller latency method and apparatus | |
JP2007108944A (ja) | 半導体集積回路装置 | |
US8994424B2 (en) | Distributing multiplexing logic to remove multiplexor latency on the output path for variable clock cycle, delayed signals | |
US11061840B2 (en) | Managing network interface controller-generated interrupts | |
CN111684391B (zh) | 全系统低功率管理 | |
KR102032895B1 (ko) | 기능 유닛들 간의 기능 로직 공유 장치, 방법 및 재구성 가능 프로세서 | |
CN102404183A (zh) | 仲裁方法和仲裁器 | |
CN103765399A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |