在时间触发的总线上消息的可扩展调度制造技术

技术编号:2828826 阅读:165 留言:0更新日期:2012-04-11 18:40
一种用于在分布式实时嵌入系统中在时间触发的总线上调度消息的调度算法。所述算法首先确定用于把消息分配到总线上的时隙的初始消息调度使得强制预定的先后关系。在一个实施例中,所述算法使用最早截至时间最先调度来确定初始消息调度。然后所述算法在所述时隙中重新分配消息以便在所述消息之间提供未使用的时隙。在一个实施例中,重新分配所述消息包括对二次优化问题求解。还在所述时隙中重新分配消息使得它们基本上被均匀地间隔。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术总体上涉及用于在时间触发的总线上调度消息的过程并 且尤其涉及用于在分布式嵌入式系统中在时间触发的总线上调度消 息的过程,所述过程包括确定用于在所述总线上把所述消息分配到 时隙的初始消息调度,继而在所述时隙中重新分配所述消息以便在 所述消息之间提供未使用的时隙以用于未来的可扩展性,其中依照 所述初始消息调度满足计时要求。
技术介绍
嵌入式系统在本领域中是已知的,其包括用于在时间触发的通信 总线上彼此之间发送数字消息的多个分布式处理器。所述系统使用 被分配给每个单个处理器的软件任务。由处理器所执行的任务在通 信总线上在处理器之间发送消息。因为所述总线是时间触发的,所 以在所述总线上一次只发送一条消息。所述任务是周期性的并且具 有硬性截止时间,所述截止时间如果不被满足的话可能会造成灾难性结果。例如,在汽车线路驾驶(steer-by-wire)嵌入式系统中, 来自系统中各个处理器的输出具有严格的截止时间是必要的。对于 其中一个任务可能必须在执行另一任务之前(可能在单个执行周期 内)执行的任务来说还存在在先约束。因此,有必要使所述系统适 当地调度在每个处理器中的任务执行以及在总线上的任务消息传 输,使得满足所有截止时间并且满足所有约束。希望在嵌入式系统中所使用的调度是可扩展的,使得如果在系统 初始执行之后需要改变或者开发升级,诸如添加或删除处理器和/或 添加或删除任务,那么原始的调度不受影响。例如,如果在一个处 理器改变任务集或者把新的处理器添加到系统,那么希望此改变不 会影响其它处理器的任务调度以及消息传输。如果可以在不影响传 输现有消息的情况下在总线上发送新消息,那么不需要任何改变来 调度已经处于使用中的其它处理器。否则,可能必须以很大代价来 重新编程总线调度。
技术实现思路
依照本专利技术的教导,公开了一种用于在分布式实时的时间触发的 嵌入式系统中调度处理器任务和消息的调度算法。所述调度算法首 先在一个传输周期期间标识要在通信总线上发送的每个消息的最早 开始传输时间和最晚结束传输时间以便确定消息传输时间窗。然后 所述算法根据每个消息的传输时间窗来标识要在每个处理器中执行 的每个任务的任务执行时间窗。根据任务执行时间窗,然后所述算 法导出所述系统中每个处理器的使用请求函数,其中所述使用请求 函数是添加要由所述处理器来执行的每个任务的使用请求。根据每 个处理器的使用请求函数,所述算法计算每个处理器的峰值使用请 求和每个处理器的平均使用请求。然后所述算法通过使每个处理器 的峰值使用请求和平均使用请求最小化来优化消息传输时间窗。根 据所优化的消息传输时间窗,然后所述算法向由每个单个处理器所 执行的任务和在总线上所发送的消息提供独立的调度,其中所述处 理器彼此去耦合并且与所述总线去耦合。一旦在通信总线上确定为每个消息所优化的消息传输时间窗,所 述算法就可以通过有选择地分配所述消息的时间窗内的时隙来使调 度更适应稍后升级,使得可以在传输周期中把将来的消息添加到在 所述消息之间的时隙。在此实施例中,所述算法首先根据已知的调 度技术例如使用最早的截止时间首先调度过程来确定初始消息调 度,其中向所述消息分配在它们传输时间窗内的确定时隙。然后所 述算法在传输周期内尽可能均匀地重新分配消息,但是仍然把所述 消息维持在它们传输时间窗中的时隙内。在时间窗内重新分配消息 可以包括对用于提供优化模型的二次优化问题求解。二次优化问题 的解的实数被向下舍入到最接近的整数,使得所述消息位于在它们 所分配的时间窗中的时隙内,以使未使用的时隙在所述消息之间可 用以便提供将来的可扩展性。结合附图,根据以下描述和所附权利要求,本专利技术的附加优点和 特征将变得更加清楚。附图说明图l是包括多个连接到通信总线的处理器的嵌入式系统的图; 图2是依照本专利技术实施例示出用于在图l所示出的系统中调度消息和任务的操作的流程图3是在调度图1所示系统中用于处理器的使用请求函数的图; 图4是依照本专利技术另 一 实施例示出用于在图l所示出系统的时间触发总线上在传输周期内的时隙中调度消息的过程的流程图;和 图5是示出用于依照本专利技术的调度算法把消息分配到时隙的技术的图。具体实施例方式针对用于在嵌入式系统中在通信总线上调度处理器任务和消息 传输的过程以便增加系统可调度性和可扩展性的本专利技术实施例的以 下论述,实质上仅仅是示例性的,并且决不意在限制本专利技术或其应 用或使用。图1是上述类型的嵌入式系统10的平面图,包括被编程来执行多 个任务16的多个处理器12和14。在一个例子中,每个处理器12和14 分别接收来自适当传感器18和20的信号,以用于特定的应用。另外, 处理器12和14分别控制致动器22和24,以用于特定的应用。在时间 触发的通信总线26上在处理器12和14之间发送由处理器12和14所执 行的各个任务16的结果来作为消息28。在此例子中,处理器12中的任务tu接收来自传感器18的信号并 且在总线26上向处理器14中的任务t发送消息mu-n,所述任务t向 致动器24发布命令。同样,处理器14中的任务t接收来自传感器20 的信号并且在总线26上向任务tn发送消息m2H2,所述任务tu向致动 器22发布命令。对于数据感测和命令发布来说存在端到端的截止时 间。依照本专利技术,调度处理器12和14的任务执行和总线26上的消息 传输,使得满足所有截止时间,满足所有在先的约束,诸如tn —mn— 21—tn,以及所产生的调度是可扩展的以用于稍后的升级。用于上述类型嵌入式系统的已知调度技术具有调度和可扩展性 的限制,这是因为处理器中的任务调度被耦合,即,所有处理器任 务被一起调度。此耦合是在处理器12和14中的任务16之间先后关系 的结果。本专利技术提出使嵌入式系统10中的处理器12和14去耦合,以便通过借助时间分片(即分配具体时间窗用于在总线26上传输消息 28)强制先后关系来提供任务调度和消息调度,使得可以彼此独立 地执行处理器12和14中的任务16的调度。换句话说,调度算法首先 在处理器12和14之间标识要在总线26上发送的消息28的优化时间 窗,继而根据何时发送所述消息28,来确定必须何时执行所述任务 16来产生消息28。作为使处理器12和14去耦合结果的此分布式调度 允许单处理器调度,所述单处理器调度可以被有效地解决。确定用于提供系统可调度性和可扩展性的消息传输的时间窗,同 时满足计时要求和在先约束。时间窗确定是包括使目标函数最小化 但是满足在先约束的优化问题,这可以通过许多现有的算法来解 决。主要的挑战是如何获得用于可调度性和可扩展性的目标函数。 依照本专利技术一个实施例,可调度性和可扩展性与峰值处理器使用请求和平均处理器使用请求相关。对于下述计算来说,存在m个处理器和N个任务,其中任务16已经 被分配给处理器12和14。任务集由(^/,/ = /,',m,7 = /,…,^定义, 其中任务仏7 = /,…,^)被分配给处理器pi并且S,^,;W。对于每 个任务tu来说,Aij是其到达时间,Cij是其最糟情况执行时间,Dij是 其截止时间,并且Tij是其周期。执行任务16的次序具有已知的先后关系。先后关系被表示为tij在tu之前(也被标示为tij— t),这意味着在一个周期内任务本文档来自技高网
...

【技术保护点】
一种用于在时间触发的总线上调度消息的方法,所述方法包括:确定用于在所述时间触发的总线上把所述消息分配到时隙的初始消息调度;并且在所述时隙中重新分配所述消息以便在所述消息之间提供未使用的时隙。

【技术特征摘要】
【国外来华专利技术】US 2005-4-22 11/112,4471.一种用于在时间触发的总线上调度消息的方法,所述方法包括确定用于在所述时间触发的总线上把所述消息分配到时隙的初始消息调度;并且在所述时隙中重新分配所述消息以便在所述消息之间提供未使用的时隙。2. 如权利要求l所述的方法,其中确定所述初始消息调度包括 修正所述消息的到达时间和截止时间使得强制先后关系。3. 如权利要求2所述的方法,其中确定所述初始消息调度包括 使用最早截至时间最先调度来在不改变先后关系的情况下改变所述 到达时间和截止时间。4. 如权利要求2所述的方法,其中修正所述到达时间和截止时 间包括使用以下方程式来修正所述截止时间Dk'-min(Dk,min(Dj'-Cj;对于所有k在j之前的j)), 并JU吏用以下方程式来修正所述到达时间Ak^max(Ak,maxUj'+Cj;对于所有j在k之前的j)), 其中D是所述截止时间,A是所述到达时间并且C是最糟情况的执行时 间。5. 如权利要求l所述的方法,其中在所述时隙中重新分配所述 消息包括对二次优化问题求解。6. 如权利要求5所述的方法,其中所述二次优化问题是最小化<formula>see original document page 2</formula>条件<formula>see original document page 2</formula>。7. 如权利要求5所述的方法,进一步包括把所述二次优化问题的实数解向下舍入到最接近的整数。8. 如权利要求l所述的方法,其中在所述时隙中重新分配所述 消息包括在所述时隙中重新分配所述消息使得所述消息在时间周期 内基本上均匀地间隔。9. 一种用于在时间触发的总线上调度消息的方法,所述方法包括确定用于在所述时间触发的总线上把所述消息分配到时隙的初 始消息调度,所述初始消息调度包括使用最早截至时间最先调度过程;并且在所述时隙中重新分配所述消息以便在所述消息之间提供未使 用的时隙,其中在所述时隙中重新分配所述消息包括对二次优化问 题求解,并且把所述二次优化问题的实数解向下舍入到最接近的整 数。10. 如权利要求9所述的方法,其...

【专利技术属性】
技术研发人员:姜胜兵
申请(专利权)人:通用汽车环球科技运作公司
类型:发明
国别省市:US[美国]

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

1