关于这一点,在网络上施加对应于如今汽车CAN中常见的负荷,人们进行了许多实验。针对网络负荷会增加的不远的将来,我们建议评估偏移产生的利益。我们在两个方向模拟负荷增加:一是向现有栈点分配新信息,二是把新的信息分配到新栈点。处理步骤如下:
•用给定负载load1来定义一个随机网络net1。本实验中,随机抽取的车身网络的负荷为37.6。
•定义一个新的负荷等级load2(例如40%)。对应于load1和load2之间的负荷差,定义一个随机的帧集合。新定义的帧集合用Snew表示。
•我们使用两种方法来分配Snew中的帧:
-向net1中现有栈点直接派遣Snew,新产生的网络叫做netframes2;
-向新栈点派遣Snew中帧的集合(每栈不超过5帧),并添加至net1中,产生的网络叫做netstations2。
•用14.2节中的算法确定偏移,并计算netframes2和netstations2的WCRT。(www.daowen.com)
遵循以上过程,可以使我们比较识别两种情况下的WCRT增加量。图14.8所示为网络负荷在40%~60%范围内最低优先级帧的WCRT的演变过程。
图14.8网络负荷在40%~60%范围内最低优先级帧的WCRT:①无偏移(白色);②有偏移且额外负荷分配给新栈点(灰色);③有偏移且额外负荷分配给现有栈点(黑色)。额外负荷指加到随机选择网络上的最初负荷等于37.6%的网络负荷。这里显示的结果是从单个的典型车身网络中获得的。
我们可以观察到的就是:偏移带来的效果都非常大,甚至在负荷增加时。例如,负荷为60%时,若额外负荷分配给现有栈点,则偏移的增益因子为2.8;若分配给新栈点,增益因子为2.1。
再者,实验表明负荷为60%有偏移时,最低优先级帧的WCRT与负荷为30%无偏移时的WCRT大体相似。换言之,负荷为60%有偏移时的性能等价于负荷为30%无偏移时的性能。尽管这点并没有在图14.8中显现,但这一结论对所有帧都成立,且不管它们优先级如何(除了增益较少的最高优先级)。
最后值得注意的是,新的负荷分配到现有栈点还是新栈点,二者之间是有差异的。后者的情况,偏移一般是逻辑上的、效率较低,这是因为它缺乏全局时间参考,而这意味着每个栈的偏移是局部的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。