谈谈软件的任务调度策略

土壤保水剂
高压灌注机任务调度设计是系统的骨架,它是决定系统能否最大化利用硬件性能的因素之一。系统的任务调度必须考虑多个因素:1、任务的合理调度,保证不同任务的合理匹配;2、平衡不同核之间的CPU负载和核间通信开销;3、保证不同功能安全等级的任务之间的安全隔离等;
基于以上的考虑因素,来聊聊软件系统的任务调度。BLK222
函数到任务的映射
函数到任务的映射是任务调度设计的第一步,用于确定在哪个任务中执行哪些软件功能。作为调度和执行单元,函数的执行是通过任务的调度来实现的,每个任务都是由一系列函数组成, 函数的运行顺序通常依赖信号处理流的数据依赖关系。ECU软件集成工程师必须首先决定在给定的ECU上分配多少任务,以及这些任务的调度方式,例如中断调用、初始化调用或者是周期调用,通常来说,任务调用通常采用周期调度。在使用基于AUTOSAR的OS的ECU中,任务是作为OS静态分配的一部分。在单核系统中,任务的设计通常是静态的设置一组具有不同周期任务,并且相同周期下只有一个任务,例如集成工程师可以10ms、20ms、40ms和80ms的周期分配任务,每个周期仅有一个任务。这种情况下函数到任务的映射完全是由算法工程师基于控制函数所需的循环周期来决定,尽管这种映射方式相对简单,但是每个任务
中函数的排序还是相对比较复杂的,以为它必须理解函数之间数据的依赖关系。在多核系统中,任务的设计有些许改变,因为任务可以在不同核上进行调度。功能到任务的映射、任务的运行周期、任务到执行核的映射是一个非常复杂的设计问题,必须考虑任务间的信息交换,不同核间的信息交换、同步以及并发等问题。与单核相比,需要更加全面的分析来更好的理解并行执行产生的行为,例如在不同核上执行的任务可能导致数据的竞争和同步。多核系统另一个复杂性维度是混合IP或混合ASIL集成。如果软件功能是由不同IP源开发或不同的ASIL等级组成,混合IP或混合ASIL软件功能应该有意将其分离,因为如果一个任务在内存访问或执行时间行为方面出现非预期行为时,该任务可能会被终止,同时允许其他独立的任务继续运行。如果被终止的任务中包含混合IP或者混合ASIL的软件功能。那么相当大的功能可能出现丢失。
任务到核上的映射
一旦任务的功能确定好了,就必须将任务分配到核上,对于单核来说,就无需多言,因为它仅有一个核,如图1a所示。在多核系统中,需要提前明确任务在哪个核上运行,以及之间的数据交互,如图1b所示。
焊接卡盘
图1 任务分配
如果需要基于混合IP或者是混合ASIL的任务设计,如图1c所示,任务到核上的分配更加灵活。在图1c中,有16个任务需要分配,在四核的情况下,将所有OEM_hi任务分配给core1,所有OEM_ low任务分配给core2,所有Tier1_hi任务分配给core3,所有Tier1_low任务分配给core4。通过这种IP和ASIL任务分配到不同核上,保证调度的物理隔离,减少不同IP的相互影响。
纳米烟嘴
除了来自共享核带来干扰,任务之间也可能通过内存相互干扰。使用相同的分区方案也可以防止内存干扰。每个ASIL或IP都放置在自己的内存分区,并且这些分区受OS-Application保护,那么任务无效的内存访问都将会被阻隔。例如假设Task_Tier1_low行为不当,试图写入属于OEM_hi、OEM_low或Tier1_hi分区的内存地址。这个无效的内存引用将被内存保护方案阻止。
混合关键系统的任务调度分析
未来的ECU将越来越多地采用混合关键系统,主要有两个原因:1、将独立的ECU集成为集中式多功能ECU,如域控单元(降低硬件成本)。2、ASIL分解,最小化需要按照更高的ASIL开发的软件数量(降低软件开发成本)。让我们使用图2所示的单核多功能ECU,这是一个说明混合关系系统集成的例子。
图2 单核混合关键系统
我们假设该系统中有四个任务:
1、Task T1 功能安全等级为ASIL-C,运行周期为25ms;
2、Task T2 功能安全等级为ASIL-B,运行周期为10ms;
3、Task T3 功能安全等级为ASIL-A,运行周期为1ms;胶黏剂搅拌机
4、Task T4 功能安全等级为QM,运行周期为10ms;我们应该如何分配任务优先级来调度这四个任务呢?在不考虑安全要求的情况下,一种典型的设计周期最短的任务优先级最高,如图3所示。

本文发布于:2024-09-22 01:25:08,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/97868.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:任务   混合   系统
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议