多核微处理器的控制方法技术

技术编号:18580376 阅读:34 留言:0更新日期:2018-08-01 14:45
本发明专利技术涉及一种多核微处理器的软件任务的控制方法,多个内核作为并行工作的处理单元,这些软件任务包括同步性软件任务、周期性软件任务、既非同步性也非周期性的软件任务,其特征在于,这些任务被分组为用于周期性软件任务的至少一个第一组和用于同步性任务的至少一个第二组,并且用于周期性任务的组和用于同步性任务的组由特定于它们的内核来处理;既非同步性也非周期性的任务由用于周期性任务的第一组的所述内核或用于同步性任务的第二组的内核来处理,或者由形成至少一个第三组的除了特定用于同步性任务和用于周期性任务的内核之外的至少一个其它内核来处理。

Control methods of multi core microprocessors

The invention relates to a control method of the software task of a multicore microprocessor, which is a processing unit of parallel work. These software tasks include synchronous software tasks, periodic software tasks, neither synchronous nor periodic software tasks. The features are that these tasks are grouped into periodicity. At least one first group of software tasks and at least one second groups for synchronization tasks, and groups for periodic tasks and groups for synchronization tasks are handled by their kernel; neither synchronous nor cyclical tasks are used by the first set of cores used for periodic tasks or for synchronization. The second groups of tasks are handled by the kernel, or at least one other kernel is formed from at least one third groups of cores that are specific to the synchronization task and the kernel for the periodic task.

【技术实现步骤摘要】
【国外来华专利技术】多核微处理器的控制方法
本专利技术涉及多核微处理器的控制方法,多核即多个又称为处理单元的内核。本专利技术属于使用多核处理器资源的实时处理领域。本专利技术特别地但非限制性地应用于控制机动车辆的发动机的具有开放系统架构的计算机领域,该开放系统是可以根据标准接口重新使用应用软件的系统,或者是可以在执行过程中增加或删除新功能的称为适应性版本的系统。这种开放系统架构可以是根据用于汽车的开放架构系统的Autosar标准的架构(英语中又称为汽车开放系统架构),但对于本专利技术而言,这不是必须的。
技术介绍
直到过去几年,控制发动机的计算机一直使用具有单处理单元的处理器,即单核处理器。最近,出现了包括至少两个处理单元的处理器,又称为多核处理器,其计算能力比单核处理器的计算能力更高,同时使用的运行频率与单核处理器的运行频率相等。通常,功能架构根据工作分配的需求或选择多样性的管理来将功能划分为子功能。通常,该功能划分基于多个计算内核上的软件分配方法。此外,对各个子功能之间的转换阶段的研究有时用于该功能划分。简而言之,目前,多核处理器的两个处理单元上的功能例如通过将内核的其中之一分配给开放系统架构的接口上的应用软件且将处理器的另一内核分配给基于系统的软件来实现的。通常,软件的可执行单元(entité)根据其激活类型被分组为各个软件任务。每个软件任务仅包括单一激活类型的可执行单元。因此,这些软件任务能够由任务监视器实时管理,任务监视器根据任务的触发类型来激活它们。向多核处理器的转变是必要的。事实上,单核处理器的计算能力无法再像过去那样增加,特别是由于其使用频率的极限所限。这存在以下问题。一方面,是关于对时间约束的满足。例如,在机动车辆的嵌入式系统领域,执行时间受到强烈的约束以获得车辆的构件性能和功能性能所需的反应能力。这对于车辆的动力学功能而言尤其如此,车辆例如是具有热力发动机的车辆,或者具有电力发动机的车辆,或者是组合热力发动机和电力发动机的混合动力车辆。另一方面,是关于持续增加的处理量。例如,对于控制机动车辆的发动机的软件的处理量,这尤其是由于越来越严格的防污染标准以及越来越强烈的对于减少CO2排放的低消耗的要求所导致的,而这会增加处理量。理论上,多核处理器可以提供更强的计算能力,但它们需要在不同内核上并行处理,而这些处理直到现在都是依次在单个内核上执行的。为了使多核处理器有效地工作,分布在不同处理单元上的处理必须不包含先后关系(relationdeprécédence)。换言之,处理单元必须能够以不同步的方式运行,而不会相互等待。这对于使用多核处理器来说并非没有困难,特别是对于机动车辆的发动机的控制,因为这些功能通常包括从输出到输入的伺服回路控制。这些控制回路必须按照精确的顺序执行,并且无法被划分为在两个独立的处理单元上并行进行。由此可见,在处理单元上分配全部或大部分的应用会在不同的处理单元之间产生工作负荷的不平衡,从而导致无法充分利用多核处理器的潜力。这在开放系统架构的控制发动机的计算机的机动车辆领域尤其如此,其中全部应用的计算负荷远大于基于开放系统架构的软件的计算负荷。根据系统设计的现有技术,经常会出现一个功能和相应的软件模块分别包括子功能和不同激活类型的可执行单元的情况。这将导致难以将模块分布在微处理器的不同处理单元或内核上。事实上,在Autosar类型的开放系统架构的背景下,模块(即,Autosar意义上的原子组件)不能在多个内核上分开(scinder)。因此,模块的所有可执行单元都必须在相同的内核或计算单元上运转(aller)。有时也可以在不属于开放系统架构的软件中发现这种约束,因为该约束仅与软件的设计有关,该软件通过不同的子功能将全局变量共享给一个功能。另一方面,控制回路通常包含多个功能且产生为具有相同触发类型的不同子功能分配的可执行单元。这些可执行单元必须在其软件任务中遵循预定义的顺序来排序:因此这些可执行单元必须位于同一处理单元中。因此,在这种常规设计中,必须将功能系统的大部分都放置在同一处理单元上,这会在该处理单元上产生超负荷的计算,而其它的处理单元未得到充分利用。有时,在处理单元之间的先后关系的约束下,相同触发类型的可执行单元仍然分布在不同的处理单元上,以遵守这些可执行单元的执行顺序。这导致采用多核处理器的等待时间和潜在的响应时间大于采用单核处理器的等待时间和潜在的相应时间。这从实时性能的角度来看产生了可能变得十分重要的情况,特别是对于满足在多个处理单元上分配的周期性任务的周期的要求。
技术实现思路
因此,基于本专利技术的问题是允许加速多核处理器的多个内核的处理,以便这些处理能够实时进行而没有延迟。为了实现该目的,根据本专利技术提供了一种多核微处理器的软件任务的控制方法,所述多核微处理器包括多个内核以作为并行工作的处理单元,这些软件任务包括:-具有可变周期的软件任务,称为同步性软件任务,-具有固定周期的软件任务,称为周期性软件任务,-既非同步性也非周期性的软件任务,这些任务被分组为周期性软件任务的至少一个第一组和同步性任务的至少一个第二组,并且周期性任务的组和同步性任务的组由特定于它们的微处理器的至少一个内核来处理;既非同步性也非周期性的任务由周期性任务的第一组的所述至少一个内核或同步性任务的第二组的至少一个内核来处理,或者由形成至少一个第三组的除了特定用于同步性任务和周期性任务的内核之外的至少一个其它内核来处理。技术效果在于:获得不会在微处理器的不同处理单元或内核之间产生等待时间的软件架构。具有发动机的同步性触发类型的可执行单元可以被分组为一个或多个任务,并且由除了处理周期性任务的处理单元之外的特定的一个或多个其它处理单元(即,一个或多个微处理器的内核)管理。软件任务的这种分配使得可以更加规律地执行周期性任务,而不会被通常优先的发动机的同步性任务中断,因此使得周期性任务以稳定且确定的顺序执行。因此,该系统更易于生效,因为周期性任务的响应时间边界不再取决于待控制的一个或多个构件的运行条件。例如,对于集成在机动车辆中且控制发动机的控制器的非限制性的情况,运行条件包括发动机转速。在与发动机的控制器的微处理器中的最大计算负荷相对应的满发动机转速的情况下,计算负荷在管理发动机的同步性任务的处理单元和管理周期性任务的处理单元之间被良好地分配。通常,根据本专利技术,根据微处理器中可用的处理单元或内核的数量并且根据每种类型的任务的权重,可以基于任务的触发类型来优化不同处理单元的处理的分配,触发类型基本上是周期性的或同步性的且不再在功能架构上。有利地,所述至少一个第三组的任务包括以随机方式激活的任务。考虑到以随机方式激活的任务的无法预测的特征,为这些任务提供专用的至少一个特定处理单元或内核也将是有利的。以这样的方式,周期性或同步性任务不会被以随机方式激活的任务所干扰。有利地,以随机方式激活的任务包括通过由微处理器控制和/或命令的功能或者由专用于该功能且由微处理器控制的至少一个控制和/或命令构件所不期望的中断而激活的任务。以随机方式激活的任务中的一部分包括由微处理器控制的一个或多个构件的损坏。有利地,用于周期性任务的第一组被分为对应于具有不同周期的任务的至少两个子组,每个子组由不同的内核处理。有利地,第一子组对应于执行周期小于或等于第本文档来自技高网
...

【技术保护点】
1.一种多核微处理器的软件任务的控制方法,所述多核微处理器包括多个内核(1.1,1.2至1.p)以作为并行工作的处理单元,这些软件任务包括:‑具有可变周期的软件任务,称为同步性软件任务,‑具有固定周期的软件任务,称为周期性软件任务,‑既非同步性也非周期性的软件任务,其特征在于,这些任务被分组为周期性软件任务的至少一个第一组和同步性任务的至少一个第二组,并且周期性任务的组和同步性任务的组由特定于它们的微处理器的至少一个内核来处理;既非同步性也非周期性的任务由周期性任务的第一组的所述至少一个内核或同步性任务的第二组的至少一个内核来处理,或者由形成至少一个第三组的除了特定用于同步性任务和周期性任务的内核(1.1,1.2至1.p)之外的至少一个其它内核来处理。

【技术特征摘要】
【国外来华专利技术】2015.11.12 FR 15607831.一种多核微处理器的软件任务的控制方法,所述多核微处理器包括多个内核(1.1,1.2至1.p)以作为并行工作的处理单元,这些软件任务包括:-具有可变周期的软件任务,称为同步性软件任务,-具有固定周期的软件任务,称为周期性软件任务,-既非同步性也非周期性的软件任务,其特征在于,这些任务被分组为周期性软件任务的至少一个第一组和同步性任务的至少一个第二组,并且周期性任务的组和同步性任务的组由特定于它们的微处理器的至少一个内核来处理;既非同步性也非周期性的任务由周期性任务的第一组的所述至少一个内核或同步性任务的第二组的至少一个内核来处理,或者由形成至少一个第三组的除了特定用于同步性任务和周期性任务的内核(1.1,1.2至1.p)之外的至少一个其它内核来处理。2.根据前一项权利要求所述的方法,其中,所述至少一个第三组的任务包括以随机方式激活的任务。3.根据前一项权利要求所述的方法,其中,以随机方式激活的任务包括通过由微处理器控制和/或命令的功能或者由专用于该功能且由微处理器控制的至少一个控制和/或命令构件所不期望的中断而激活的任务。4.根据前述权利要求中任一项所述的方法,其中,周期性任务的第一组被分为对应于具有不同周期的任务的至少两个子组,每个子组由不同的内核处理。...

【专利技术属性】
技术研发人员:伯纳德·巴乌克斯尼古拉斯·弗朗索瓦蒂埃里·特欧兹奥
申请(专利权)人:标致雪铁龙汽车股份有限公司
类型:发明
国别省市:法国,FR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1