处理器间通信的制作方法

文档序号:22243132发布日期:2020-09-15 19:58阅读:135来源:国知局
处理器间通信的制作方法

本发明涉及处理器之间的通信,具体地说涉及经由邮箱彼此对应的两个不同的中央处理单元之间的通信。



背景技术:

为了增加现代电子装置的处理能力,许多此类装置提供有多个处理器或中央处理单元(cpu)。举例来说,这些可为单独的离散处理器,或可为单个芯片内的不同处理‘核心’。这类处理器可并行工作,例如以适用于完全彼此独立的不同处理任务。但是,在一些情况下,期望处理器彼此通信。

为了促进这类处理器间通信(ipc),通常一个cpu将数据写入到某个位置,即‘邮箱’,所述位置在所述cpu自身和希望与其通信的另一个cpu之间共享,并且随后触发中断请求(irq)以告知另一个cpu有消息在邮箱中等待。irq为向另一个cpu发送的硬件信号,它请求另一个cpu暂时停止其当前处理任务并且执行与irq相关联的特定任务。

然而,申请人已经了解,就功率消耗而言,常规方法效率不高,特别是当被中断的处理器处于低功率模式时。通常,cpu将不忽略irq,并且因此被中断的cpu将从其低功率模式唤醒并且恢复其先前的硬件状态,这需要时间和功率。此外,一旦现在唤醒的cpu在被中断后读取消息,所述cpu通常将返回到其低功率模式,这也需要时间和功率。



技术实现要素:

当自第一方面观察时,本发明提供一种电子装置,其包含:

至少第一和第二处理器;和

连接到所述第一和第二处理器的处理器间通信模块,所述处理器间通信模块包含第一邮箱和第二邮箱;

其中第一处理器被布置成向第二处理器发送消息,所述消息为高优先级消息或低优先级消息;

其中第一处理器另外被布置成使得:

当第一处理器具有要向第二处理器发送的高优先级消息时,第一处理器将高优先级消息放置在第一邮箱中并且向第二处理器发送中断请求;和

当第一处理器具有要向第二处理器发送的低优先级消息时,第一处理器将高优先级消息放置在第二邮箱中并且不向第二处理器发送中断请求。

本发明的此第一方面扩展到一种操作电子装置的方法,所述电子装置包含至少第一和第二处理器以及连接到所述第一和第二处理器的处理器间通信模块,所述处理器间通信模块包含第一邮箱和第二邮箱,其中方法包含:

确定第一处理器何时具有要向第二处理器发送的消息,其中所述消息为高优先级消息或低优先级消息;

当第一处理器具有要向第二处理器发送的高优先级消息时,将高优先级消息放置在第一邮箱中并且向第二处理器发送中断请求;和

当第一处理器具有要向第二处理器发送的低优先级消息时,将高优先级消息放置在第二邮箱中并且不向第二处理器发送中断请求。

本发明的第一方面另外扩展到一种非暂时性计算机可读介质,其在第一处理器上执行时使第一处理器执行与第二处理器进行通信的方法,其中方法包含:

确定第一处理器何时具有要向第二处理器发送的消息,其中所述消息为高优先级消息或低优先级消息;

当第一处理器具有要向第二处理器发送的高优先级消息时,将高优先级消息放置在连接到所述第一和第二处理器的处理器间通信模块内的第一邮箱中,并且向第二处理器发送中断请求;和

当第一处理器具有要向第二处理器发送的低优先级消息时,将高优先级消息放置在处理器间通信模块内的第二邮箱中并且不向第二处理器发送中断请求。

因此,本领域技术人员将了解,本发明的实施例提供一种改进的电子装置以及其操作方法,其中仅高优先级消息(例如,优先级值超过特定阈值的那些消息)导致第二处理器中断,而低优先级消息被放置到与高优先级消息不同的邮箱中并且不产生中断。为了累积低优先级消息直到它们被检索,第二邮箱可实施为缓冲器。

虽然累积低优先级消息用于稍后的批处理可能会增加提供处理器间通信(例如,提供适合于存储低优先级消息的缓冲器)所需的存储器的量,但这样做有利地减少了第二处理器需要中断的次数,因为第二处理器可在其方便时检查第二邮箱,而不是像常规方法那样被迫对来自第一处理器的每条传入消息都进行检查。

第二处理器可根据预定时间表检查第二邮箱,然而,在一些实施例中,第一处理器被布置成使得当其将消息放置在第二邮箱中时,其设置低优先级消息等待标志。在一些这类实施例中,第二处理器检查是否已设置低优先级消息等待标志,并且只有在低优先级消息等待标志已设置时才从第二邮箱检索低优先级消息。一旦第二处理器从第二邮箱检索到低优先级消息(或如下所述的消息),第二处理器就可清除低优先级消息等待标志。

这在第二处理器被布置成进入低功率或待机模式的情况下特别有利,并且因此,在一些这类实施例中,第二处理器可在正常操作模式和其中禁用第二处理器的一个或多个功能的低功率操作模式下操作,其中第二处理器被布置成在从低功率模式切换到正常模式之后检查是否已设置低优先级消息等待标志或检查低优先级邮箱。本领域技术人员将了解,这类实施例提供一种装置,其中第二处理器可保持在其低功率模式下,直到其需要唤醒(例如,在调度时间或在高优先级中断之后)并且处理第二低优先级邮箱中等待的一条或多条低优先级消息。

在一组这类实施例中,第二处理器被布置成在从低功率模式切换到正常模式时检查是否已设置低优先级消息等待标志或检查第二邮箱之前进行一个或多个处理任务。在一组实施例中,第二处理器被布置成检查是否已设置低优先级消息等待标志或仅检查第二(低优先级)邮箱作为‘空闲’操作系统任务的一部分。

申请人已经了解,允许低优先级消息累积,直到第二处理器检索到它们受到为存储这类消息而提供的有限存储器的限制。在一些实施例中,处理器间通信模块被布置成当第二邮箱中含有的消息数量超过阈值时设置邮箱已满标志,其中设置邮箱已满标志向第二处理器发送中断请求。虽然此阈值可取大于一的任何正值(以便防止低优先级消息具有与高优先级消息相同的效果),但是在优选实施例中,阈值为第二邮箱可保持的最大消息数量。这使得最佳地使用可用于在第二邮箱中存储消息的存储器,从而尽可能长时间地延迟唤醒第二处理器。

在一些替代实施例中,当第二邮箱中含有的消息数量超过阈值时,将后续消息放置在第一(高优先级)邮箱中,而不是在第二邮箱中含有的消息数量超过阈值的情况下升起邮箱已满标志。申请人已经了解,一旦第二低优先级邮箱已满,就将由第一处理器发送的下一条消息放置在第一邮箱中,无论消息是高优先级消息还是低优先级消息,这将导致第二处理器中断,使得第二处理器可处理一些或所有未解决的消息以释放第二邮箱中的空间。

其中从第二邮箱检索低优先级消息的方式可取决于装置的体系结构。在一些实施例中,第二处理器被布置成调用接收功能,其中调用所述接收功能阻止第二处理器上的线程,直到空闲线程产生指示低优先级消息应当传递到第二处理器的信号。然而,在一组替代实施例中,空闲线程被布置成调用接收功能,其中第二邮箱被布置成产生向空闲线程指示低优先级消息应当传递到第二处理器的信号。因此,在一些实施例中,第二处理器直接从第二邮箱检索消息,但是在其它实施例中,第二处理器经由空闲线程从第二邮箱检索消息。

无论系统是否运行操作系统,本发明的原理都同样适用。

虽然处理器之间的通信可被布置成使得仅第一处理器可写入信箱以向第二进程发送消息,但是在一些实施例中,第二处理器被布置成向第一处理器发送消息。第二处理器可以常规方式仅具有对第一邮箱的写访问,但是优选地,它还具有对第二邮箱的写访问,使得所述消息为高优先级消息或低优先级消息;

其中第二处理器另外被布置成使得:

当第二处理器具有要向第一处理器发送的高优先级消息时,第二处理器将高优先级消息放置在第一邮箱中并且向第一处理器发送中断请求;和

当第二处理器具有要向第一处理器发送的低优先级消息时,第二处理器将高优先级消息放置在第二邮箱中并且不向第一处理器发送中断请求。

因此,根据这类实施例,第一和第二处理器提供有双向通信,使得每个处理器可向彼此发送消息。将了解,以上相对于其中第一处理器发送消息并且第二处理器接收消息的实施例描述的任选的技术特征也适用于其中第一和第二处理器都可发送和接收消息的实施例。因此,相对于第一处理器描述的任何特征也可适用于第二处理器,并且反之亦然,无论是附加的还是替代的。

在这类实施例中,第一和第二处理器访问相同的邮箱,即,第一和第二邮箱各自用于消息,无论哪个处理器正在发送和哪个处理器正在接收。如果处理器不可同时向彼此发送消息,例如,如果调度器或仲裁模块确定哪个处理器可在任何给定时间将消息放置在邮箱中,那么这可为合适的。

替代地,可使用多个消息等待标志,使得存在单独的消息等待标志,以指示一条或多条消息等待每个相应的处理器,并且消息可提供有目的地地址,使得每个处理器可检查其相应的消息等待标志,以确定是否有任何消息正在等待所述处理器,并且如果是,那么所述处理器被布置成通过检查哪些消息被寻址到所述处理器来检索正确的消息。

在以上实施例中,第一和第二处理器可共享第一邮箱和第二邮箱。然而,在一组替代实施例中,处理器间通信模块包含第三邮箱,并且第二处理器另外被布置成使得当第二处理器具有要向第一处理器发送的高优先级消息时,第二处理器将高优先级消息放置在第三邮箱中并且向第一处理器发送中断请求。因此,第二处理器可提供有用于去往第一处理器的高优先级消息的单独邮箱。

在一组潜在重叠的实施例中,处理器间通信模块包含第四邮箱,并且第二处理器另外被布置成使得当第二处理器具有要向第一处理器发送的低优先级消息时,第二处理器将高优先级消息放置在第四邮箱中并且不向第一处理器发送中断请求。根据这类实施例,第二处理器可提供有用于去往第一处理器的低优先级消息的单独邮箱。将了解,在一组特定的实施例中,第一和第二处理器可共享高优先级邮箱(即‘第一’邮箱),但是具有单独的低优先级邮箱(即‘第二’和‘第四’邮箱,其中在这类实施例中没有‘第三’邮箱)。由于写入高优先级邮箱(例如,‘第一’或‘第三’邮箱)的任何消息都可立即导致另一个处理器中断,因此两个处理器同时写入同一高优先级邮箱的风险降低。

在上文描述的实施例中,可仅存在被布置成彼此通信的一对处理器,然而,在一些实施例中,装置包含连接到处理器间通信模块的至少一个另外的处理器。将了解,在一些实施例中,以上相对于第一和第二处理器描述的任选技术特征可容易地单独或以任何可适用的组合适用于任何这类另外的处理器,使得一个或多个另外的处理器与其它处理器的全部或子集交换消息(通过发送、接收或同时通过发送和接收)。与相对于第一和第二处理器之间的双向通信描述的实施例类似,任何这类另外的处理器可与一个或多个其它处理器(例如,第一和第二处理器)共享邮箱,或者可为高和/或低优先级消息提供有一个或多个专用邮箱。

附图说明

现在将参考附图仅借助于实例描述本发明的某些实施例,在所述附图中:

图1为根据本发明的实施例的装置的框图;

图2为根据本发明的另一实施例的具有双向通信的装置的框图,其中邮箱在处理器之间共享;

图3a和3b为示出图2的装置的典型操作的时序图;和

图4为根据本发明的另一实施例的具有双向通信的装置的框图,其中处理器具有单独的低优先级邮箱。

具体实施方式

图1为根据本发明的实施例的装置2的框图。装置2包含第一处理器4、第二处理器6和处理器间通信(ipc)模块8,其中ipc模块8被布置在两个处理器4、6之间。

第一处理器4被布置成运行第一客户端应用程序10,并且第二处理器6被布置成运行第二客户端应用程序12,使得第一客户端应用程序10和第二客户端应用程序12彼此并行运行。虽然两个客户端应用程序10、12为独立的,但是处理器4、6可在需要时彼此交换数据,如下所述。

第二处理器6可在正常操作模式或其中例如通过关闭电源或通过进入睡眠一段时间来降低其功率消耗的低功率模式下操作。第二处理器6可被设置成根据预定时间表睡眠和唤醒,或者第二处理器6可替代地被设置成无限期睡眠直到被唤醒,例如通过中断。

ipc模块8包含连接到ipc硬件模块16的高优先级邮箱14和连接到第二处理器6上运行的空闲线程20的低优先级邮箱18。高优先级邮箱14经由总线22连接到第一客户端应用程序10,并且经由另一总线24连接到第二客户端应用程序12。低优先级邮箱18经由总线26连接到第一客户端应用程序10,并且空闲线程20经由另一总线28连接到第二客户端应用程序12。每个邮箱14、18实施为存储器内的缓冲器。

将高优先级邮箱14连接到客户端应用程序10、12的总线22、24为双向总线,使得应用程序10、12两者都可向邮箱14发送消息或从其接收消息。然而,将低优先级邮箱18连接到客户端应用程序10、12的总线26、28为单向总线,使得仅第一客户端应用程序10可向低优先级邮箱18发送消息,而仅第二客户端应用程序12可从低优先级邮箱18接收消息。因此,在此实施例中,邮箱14、18在两个处理器4、6之间共享,但是仅第一处理器4可写入低优先级邮箱18。参考图3和4描述在处理器之间具有低优先级消息的双向交换的实施例。

ipc硬件模块16经由总线30连接到第一客户端应用程序,并且经由另一总线32连接到第二客户端应用程序。如下所述,在通过另一个处理器4、6将高优先级消息写入高优先级邮箱14之后,这些总线30、32用于向相应的处理器4、6发射中断请求(irq)。

当第一处理器4具有要向第二处理器6发送的消息时,此消息可为高优先级消息或低优先级消息。如果其为高优先级消息,那么第一处理器4将消息写入高优先级邮箱14。ipc硬件模块16经由总线34检测到已将消息写入高优先级邮箱14,并且立即经由中断总线32向在第二处理器6上运行的第二客户端应用程序12发送irq消息。此irq消息中断第二客户端应用程序12,并且使第二处理器6从高优先级邮箱14检索消息,并且响应于消息而进行特定的中断例程。如果第二处理器6处于睡眠,那么首先将其唤醒。

然而,如果来自第一处理器4的消息为低优先级消息,那么第一处理器4将消息写入低优先级邮箱18,并且在空闲线程20中设置向第二处理器6指示消息正在等待它的标志(其可由第二处理器6在其如下所述唤醒时进行检查)。低优先级邮箱18累积低优先级消息,直到在第二处理器6从低优先级邮箱18检索到所述低优先级消息时的这类时间。当第二处理器6例如在调度时间或由于一些其它中断而从低功率模式唤醒时,其检查空闲线程20并且确定存在指示在低优先级邮箱18中存在一条或多条消息等待它的标志。然后,第二处理器6经由将第二应用程序12连接到空闲线程20的总线28从低优先级邮箱18检索一条或多条消息。

由于低优先级邮箱18是使用有限长度的缓冲器实施的,因此它可以变满。如果发生这种情况,那么ipc硬件模块16被布置成经由总线32向第二处理器6发送irq消息。这使得第二处理器6唤醒并且处理在低优先级邮箱18中等待的消息,从而为来自第一处理器4的另外的低优先级消息释放空间。

在此实施例中,第二处理器6仅具有对高优先级邮箱14的写访问,并且因此当第二处理器6具有要向第一处理器4发送的消息时,其将消息写入高优先级邮箱14。ipc硬件模块16经由总线34检测到消息的存在,并且立即经由中断总线30向第一处理器4上运行的第一客户端应用程序10发送irq消息。此irq消息中断第一客户端应用程序10,并且使第一处理器4从高优先级邮箱14检索消息,并且响应于消息而进行特定的中断例程。

图2为根据本发明的另一实施例的具有双向通信的装置2'的框图,其中邮箱在处理器之间共享。图2的装置与图1的装置共享许多元件,其中相同的附图标记指示相同的组件。

每个处理器4'、6'可在正常操作模式或其中例如通过关闭电源或通过进入睡眠一段时间来降低其功率消耗的低功率模式下操作。处理器4'、6'可被设置成根据预定时间表睡眠和唤醒,或者可替代地被设置成无限期睡眠直到被唤醒,例如通过中断。

低优先级邮箱18'在两个处理器4'、6'之间共享,这通过提供一些另外的总线来促进。除了先前参考图1描述的连接之外,低优先级邮箱18'通过总线40'连接到第二客户端应用程序12'。第一处理器4'上运行的另外的空闲线程21'经由数据总线42'和中断总线44'连接到第一客户端应用程序10'。

与图1的装置2不同,第二处理器12'将其必须向第一处理器4'发送的任何消息指定为高优先级消息或低优先级消息。如果其为高优先级消息,第二处理器6'将消息写入高优先级邮箱14',如上面参考图1所述。ipc硬件模块16'经由总线34'检测到由第二处理器6'已将消息写入高优先级邮箱14',并且立即经由中断总线32'向第一处理器4'上运行的第一客户端应用程序10'发送irq消息。此irq消息中断第一客户端应用程序10',并且使第一处理器4'从高优先级邮箱14'检索消息,并且响应于消息而进行特定的中断例程。

另一方面,如果第二处理器6'将消息指定为低优先级消息,那么第二处理器6'将消息写入低优先级邮箱18'并且在相应的空闲线程21'中设置向第一处理器4'指示消息正在等待它的标志,即在每个空闲线程21'、20'中存在用于向相应的处理器4'、6'指示消息正在等待所述处理器4'、6'的标志。存储在低优先级邮箱18'中的每条消息都提供有指示消息打算用于哪个处理器4'、6'的地址。

低优先级邮箱18'累积打算用于两个处理器4'、6'的低优先级消息,直到相应的处理器4'、6'从低优先级邮箱18'检索所述低优先级消息的这类时间。当相应的处理器4'、6'例如在调度时间或由于一些其它中断而从低功率模式唤醒时,它检查其相应的空闲线程20'、21'并且确定存在指示在低优先级邮箱18'中存在一条或多条消息等待它的标志。然后,处理器4'、6'经由处理器4'、6'和空闲线程20'、21'之间的相应总线44'、38'从低优先级邮箱18'检索一条或多条消息。

如果低优先级邮箱18'变满,那么ipc硬件模块16'被布置成经由相应的中断总线32'、30'向处理器4'、6'中的一个或两个发送irq消息。这使得处理器4'、6'(或在适当时,两个处理器4'、6')唤醒并且处理在低优先级邮箱18'中等待的消息,从而为另外的低优先级消息释放空间。

当每个处理器4'、6'唤醒时(这可独立于另一个处理器4'、6'唤醒时发生),它经由其相应的空闲线程20'、21'检查低优先级邮箱18',以确定是否设置指示消息正在等待它的相应的标志。如果设置相应的标志,那么处理器4'、6'检索驻留在低优先级邮箱18'中的寻址到它的任何消息。

可看出,与图1的装置2不同,图2的装置2'为对称的-每个处理器4'、6'可使用邮箱14'、18'两者。

图3a和3b为示出图2的装置2的典型操作的时序图。特别地,图3a示出受到高优先级邮箱14'的活动的影响的第一处理器4'的活动104和第二处理器6'的活动106。相反,图3b示出受到低优先级邮箱18'的活动的影响的第一处理器4'的活动104和第二处理器6'的活动106。

首先,关于受到高优先级邮箱14'影响的第一处理器4'的活动104和第二处理器6'的活动106,第一处理器4'在到达活动状态110a之前最初处于过渡状态108a。这些‘过渡状态’表示硬件进入和退出其相应的低功率模式(例如,打开或关闭相关联的电源和时钟源,以及在适当时恢复硬件状态)所花费的时间。

在其活动状态110a期间,第一处理器4'经由ipc模块8'向第二处理器6'发送高优先级消息112a。这立即使得irq消息经由总线32'向第二处理器6'发送。结果,第二处理器6'开始从其低功率模式唤醒,并且在进入其中它从高优先级邮箱14'检索消息的活动状态116a之前进入过渡状态114a。

稍后,第二处理器6'向第一处理器4'发送高优先级消息112b。因为第一处理器4'已经处于活动状态110a,所以它不需要在接收到irq信号时唤醒并且立即处理高优先级邮箱14'中的消息。

然而,到第一处理器4'向第二处理器6'发送下一条高优先级消息112c的时候,第二处理器6'已经在过渡状态114b之后切换到低功率模式。一旦消息112c被放置在高优先级邮箱14'中,irq消息就经由中断总线32'向第二处理器6'发送,并且第二处理器6'在进入活动状态116b之前进入过渡状态114c。第二处理器6'一旦处于活动状态116b就处理高优先级消息112c。

在此活动状态116b期间,第二处理器6'通过将高优先级消息112d放置在高优先级邮箱14'中而将其向第一处理器4'发送。在过渡状态108b之后,第一处理器4'已经进入其低功率模式,然而,此高优先级消息112d产生唤醒第一处理器4'备份的irq消息,其中第一处理器4'在再次处于活动状态110c之前进入另外的过渡状态108c。第一处理器4'一旦处于活动状态110c就处理高优先级消息112d。

相反,在图3b中可看出,由第一处理器4'向第二处理器6'发送的消息126a、126b不导致第二处理器6'立即从低功率模式唤醒。类似地,由第二处理器6'向第一处理器4'发送的消息128a、128b也不导致第一处理器4'立即从其低功率模式唤醒。

最初,第一处理器4'从过渡状态118a改变为活动状态120a。当处于此活动状态120a时,第一处理器4'通过将低优先级消息126a写入低优先级邮箱18'而将其向第二处理器6'发送。这不产生irq消息,并且因此第二处理器6'没有被唤醒并且保持在低功率模式下。类似地,来自第一处理器4'的第二低优先级消息126b不唤醒第二处理器6'。在发送低优先级消息126a、126b之后,第一处理器4'不需要保持活动120a,并且一旦它已经发送其低优先级消息126a、126b就可在经历过渡118b之后返回到其低功率模式。

当第二处理器6'确实唤醒时(例如,根据时间表或由于一些其它中断),其进入过渡状态122a,并且然后进入活动状态124a。此时,第二处理器6'处理在低优先级邮箱18'中等待它的消息126a、126b。这可立即发生,或在执行其它调度的任务之后发生。

类似地,当在第二处理器6'处于活动状态124a的情况下消息128a、128b从第二处理器6'向第一处理器4'发送时,这些消息128a、128b不导致第一处理器4'从其低功率模式唤醒。相反,在从低优先级邮箱18'检索低优先级消息128a、128b之前,第一处理器4'等待直到其唤醒并且处于其下一个活动状态120b(在过渡状态118c之后)。第一处理器4'然后可在经历另外的过渡状态118d之后返回到其低功率模式。在发送低优先级消息128a、128b之后,第二处理器6'不需要保持活动124a,并且一旦它已经发送其低优先级消息128a、128b就可在经历过渡122b之后返回到其低功率模式。

图4为根据本发明的另一实施例的具有双向通信的装置的框图,其中处理器具有单独的低优先级邮箱。图2的装置与图1和2的装置共享许多元件,其中相同的附图标记指示相同的组件。

与上面参考图2描述的装置2'相同,图4的装置2”提供双向通信,使得每个处理器4”、6”可向另一个处理器4”、6”发送消息。然而,与图3的装置2'不同,图4的装置2”为处理器4”、6”中的每一个提供单独的低优先级邮箱18”、46”,以向其发送低优先级消息。

当第一处理器4”具有要向第二处理器6”发送的高优先级消息时,其将消息写入高优先级邮箱14”。同样,当第二处理器6”具有要向第二处理器6”发送的高优先级消息时,其将消息写入同一高优先级邮箱14”。换句话说,在此实施例中,高优先级邮箱14”在两个处理器4”、6”之间共享。

ipc硬件模块16”经由总线34”检测到消息已被处理器4”、6”中的一个写入高优先级邮箱14”,并且立即经由相应的中断总线30”、32”向另一个处理器4”、6”上运行的客户端应用程序10”、12”发送irq消息。此irq消息中断相应的客户端应用程序10”、12”,并使相应的处理器4”、6”从高优先级邮箱14”检索消息,并且响应于消息而进行特定的中断例程。

然而,如果第一处理器4”具有要向第二处理器6”发送的低优先级消息,那么第一处理器4”将消息写入第一低优先级邮箱18”并且设置要由空闲线程20”检查的向第二处理器6”指示消息正在等待它的标志。第一低优先级邮箱18”累积低优先级消息,直到第二处理器6”从第一低优先级邮箱18”检索到所述低优先级消息的这类时间。当第二处理器6”例如在调度时间或由于一些其它中断而从低功率模式唤醒时,其检查空闲线程20”并且确定存在指示在第一低优先级邮箱18”中存在一条或多条消息等待它的标志。然后,第二处理器6”经由第二客户端应用程序12”和第一低优先级邮箱18”之间的总线48”从第一低优先级邮箱18”检索一条或多条消息。

相反,当第二处理器6”具有要向第一处理器4”发送的低优先级消息时,第二处理器6”将消息写入第二低优先级邮箱46”并且设置要由空闲线程21”检查的向第一处理器4”指示消息正在等待它的标志。第二低优先级邮箱46”累积低优先级消息,直到第一处理器4”从第二低优先级邮箱46”检索到所述低优先级消息的这类时间。当第一处理器4”从其低功率模式唤醒时,其检查空闲线程21”并且确定存在指示在第二低优先级邮箱46”中存在一条或多条消息等待它的标志。然后,第一处理器4”经由第一客户端应用程序10”和第二低优先级邮箱46”之间的总线50”从第二低优先级邮箱46”检索一条或多条消息。

如果第一低优先级邮箱18”变满,那么经由第二处理器6”和ipc硬件模块16”之间的中断总线32”向第二处理器6”发送irq消息。类似地,如果第二低优先级邮箱46”变满,那么经由第一处理器4”和ipc硬件模块16”之间的中断总线30”向第一处理器4”发送irq消息。

因此,本领域技术人员将了解,本发明的实施例提供一种改进的电子装置以及其操作方法,其中仅高优先级消息导致第二处理器中断,而低优先级消息被放置到与高优先级消息不同的邮箱中并且不产生中断,这可导致装置的功率消耗降低。本领域技术人员将了解,上述实施例仅为示例性的,并且不限制本发明的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1