理论教育 汽车嵌入式系统手册中的案例及分析

汽车嵌入式系统手册中的案例及分析

时间:2023-08-26 理论教育 版权反馈
【摘要】:更确切地说,在13.5.1节采用的充分响应时间测试中,包含三个帧的集合S被认为是不可调度的,但在13.5.2节中采用的精确响应时间测试中却是可调度的。表13.1 帧集合分析13.5.3.2 精确响应时间测试相反,使用13.5.2节中的精确分析,上述集合S事实上是可调度的。

汽车嵌入式系统手册中的案例及分析

这里举一个有关上述分析的案例,以阐述它们之间的不同之处。更确切地说,在13.5.1节采用的充分响应时间测试中,包含三个帧的集合S被认为是不可调度的,但在13.5.2节中采用的精确响应时间测试中却是可调度的。

考虑表13.1中列出的帧集合。系统的基本假设是总线速度为1Mbit/s,即τbit为1μs,且没有排队抖动,即对所有帧,都满足J=0。所有的帧都有3位有效载荷数据,因此,根据公式(13.3)得到C=75。总线使用率相当高,达到97%。究其原因是强推一个对于充分分析不适合的细微方案,但它却可以被精确分析捕捉到。

13.5.3.1 充分响应时间测试

充分响应时间测试一开始,对于每个帧i我们使用公式(13.7)计算wi,并使用公式(13.6)计算Ri,过程如下[回顾一下,公式(13.7)是递推公式,当wn+1iwni时递推停止]:

978-7-111-52251-5-Part04-81.jpg

上述结果说明帧1和2可调度,即R1D1R2D2。然而,R3D3表明错过了截止时间。因此,帧集合S被认为不可调度。

表13.1 帧集合分析

978-7-111-52251-5-Part04-82.jpg

13.5.3.2 精确响应时间测试

相反,使用13.5.2节中的精确分析,上述集合S事实上是可调度的。为了证明这一点,我们使用公式(13.8)~公式(13.12)来计算全部三个帧的帧响应时间。

首先,使用公式(13.8)计算每个级别为i的帧忙时周期,并用公式(13.9)来确认在忙时周期内,该帧是否有多种工况出现。如果确实如此,则用公式(13.10)和公式(13.11)来计算出帧所有出现工况的响应时间,并通过公式(13.12)在这些情况中选出最大响应时间。(www.daowen.com)

从帧1开始,我们用公式13.8计算得到级别为i的忙时周期分别为t01=75,t11=150,t21=150。这样,根据公式(13.9)知Q1=1。因此,在帧1的1级忙时周期内,只有一种出现情况。针对这种情况,我们用公式(13.10)和公式(13.11)来计算响应时间:

978-7-111-52251-5-Part04-83.jpg

对于帧2,我们用公式(13.8)重复相同的过程,计算出:t02=75,t12=225,t22=300,t32=375,t42=450,t52=450。

因此根据公式(13.9)得到Q2=2,即帧2的2级忙时周期内共有两种情况出现。这里我们要用公式(13.10)和公式(13.11)来计算这两种情况的响应时间,并用公式(13.12)选出最大值:

978-7-111-52251-5-Part04-84.jpg

最后在帧3的3级忙时周期内也有两种情况出现:t03=75,t31=225,t23=300,t33=450,t43=525,t53=525并且Q3=2。

根据与帧2相同的推理过程,响应时间计算如下:

978-7-111-52251-5-Part04-85.jpg

对以上过程总结如下:当我们使用精确分析而不使用充分分析,R1D1R2D2,且R3D3时,整个帧集合为可调度。充分分析更加迅速,因为它要求完成的计算更少。在绝大多数情况下与精确分析相比,充分测试提供相同的可调度帧集合。然而存在像上述实例中的情况,只有通过精确分析才能显示出帧集合实际上是可调度的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈