时间敏感网络TSN的车载设计实践: 802.1Qbv协议

news2024/11/18 7:45:27

▎概述

IEEE 802.1Qbv[1]是TSN系列协议中备受关注的技术之一,如图1所示,它定义了一种时间感知整形器(Time Aware Shaper,TAS),支持Qbv协议的交换机可以按照配置好的门控列表来打开/关闭交换机出口队列,可从而为周期型的重要数据提供确定性延迟保障。

图1 时间感知整形器示意图
为了更有效地为业务流量提供网络传输服务,更好地发挥Qbv协议的能力,需要进行Qbv协议的应用设计。完整的Qbv设计开发流程包含以下步骤:

  • 流量优先级分类:从车辆功能需求出发,基于通讯矩阵和整车拓扑,梳理整车的流量优先级
  • 门控列表设计:基于已经分类好的整车流量,设计门控列表,仿真分析门控列表是否满足流量的传输需求
  • 设计迭代:如果关键数据的需求不能被满足或者门控列表数量超出硬件门控列表长度上限等情况,迭代分析前两步流量分类结果、设计的门控列表中的不合理处,调整流量分类或门控列表设计结果

▎流量优先级分类

目前车载环境下,车内的网络流量固定可知,可根据车辆功能需求,明确各个流量的最大时延、周期、负载大小等需求,将流量分为多个优先级类别。
图2 示例拓扑
梳理流量优先级是Qbv设计的关键步骤,除了需要满足以上提到基本的需求之外,在实际情况下,更需要对功能准确理解,比如:一般情况下会把控制类指令统一设计为高优先级,而实际转向、制动类控制指令推荐优先级高于车窗相关的控制指令。

这需要TSN网络设计工程师有大量的设计经验,针对不同的功能需求,来综合设计流量的优先级。

基于通讯矩阵,并结合图2示例的拓扑,梳理得到表1所示的示例流量优先级分类结果。

表1 示例流量优先级分类

在这里插入图片描述

▎门控列表设计

基于以上流量优先级分类,并且各个节点已基于IEEE 802.1AS[2]完成了时间同步,即所有节点都有一个相同的时间基准,4条数据流在Switch2-D的出口队列汇聚,在时间同步的基础上,需要设计合理的门控列表,来保障该瓶颈出口队列的高优先级数据流的时延可控。有如下假设:

  • 数据流①的初始发包时间相位为0us,即在0ms,1ms,2ms,…的时刻发包,传输到Switch2-D的出口队列的传输延时+Switch1和Switch2的硬转发延时为3us
  • 数据流②的初始发包时间相位为10us,即在0.010ms,2.020ms,4.040ms,…的时刻发包,传输到Switch2-D的传输延时+Switch1和Switch2的硬转发延时5us
  • 数据流③的初始发包时间相位为5us,即在0.005ms,2.005ms,4.005ms,…的时刻发包,传输到Switch2-D的出口队列的传输延时+
    Switch2的硬转发延时1us

三者周期的最小公倍数为2ms,所以Switch2-D的出口队列循环门控列表的最小周期为2ms,一个完整的循环周期内,该门控列表可设计成:

表2 witch2-D的门控列表设计

在这里插入图片描述
需要注意的是,表2只展示了Switch2-D的门控列表设计,实际在Swicth1-Switch2的端口上,如果还有其他数据流,数据流①和数据流②也会和这些数据流产生竞争,也需要设计门控列表,为了让关键数据流能达到端到端的延迟和抖动控制,这两个门控列表需要同时工作,让关键数据在端到端的完整路径上“一路开门,畅行无阻”。

此外,还可以通过增加关键数据的开门时间或者设置“Guard band”的方式,进一步来保障关键数据的低延迟和减少传输抖动。

▎设计迭代

有了初步的设计结果后,需要分析目前的设计是否完全满足业务需求,如效果不佳,需要完善设计结果。以下举例说明,可能的优化过程。

观察表2可以发现,简单的4个数据流,设计好的门控列表已经比较复杂,而如果仿真发现已经能较好满足关键数据的时延要求,或者在实际部署时,太频繁的门开关状态切换,会由于ECU端的发送端发送周期抖动,而导致关键数据错过开门时机,那没有必要为各个数据流划分过多的优先级和特别细致的门控列表。

可以考虑合并优先级6和7,并且为数据流①②③统一开门,得到的门控列表如表3所示,能够很大程度上简化门控列表的复杂度,并且保证关键数据的传输质量。

表3 时间感知整形器示意图

在这里插入图片描述

▎RTaW-Pegase助力Qbv设计

面对日益复杂化的汽车电子电气架构及网络系统,实际上人工计算与迭代的设计方式已很难适用。在实际的量产车型上,需要传输的数据流远大于以上举例的4条,而门控列表编排可以抽象成任务调度问题,是典型的NP-Hard问题,即在多项式时间的运算次数内不可求解的问题,除非NP=P,否则无法在多项式时间内求得最优解,其工作量非常巨大,一般会需要软件辅助帮忙解决。我们可以借助RTaW-Pegase来辅助完成TSN设计工作。

如图3所示, RTaW可以选择一键配置整形器,如TAS、CBS、Preemption、ATS等整形器,快速验证TSN整形器的选择效果。

图3 TSN整形器配置示例

在Qbv设计中,可借助RTaW内置的TAS门控列表编排算法,帮助我们生成满足图4所示的满足时延需求的门控列表,避免了人工设计复杂的门控列表。后续可以将设计结果和交换机的配置接口适配后,导入到车载TSN交换机的配置中。

图4 RTaW门控列表示例
RTaW还能进一步帮助分析设计结果,为了将有TAS的配置与没有TAS的配置进行比较,可执行这些ComConfig的最坏情况下的时延等指标分析,能够直观地看到时延满足情况,辅助TSN网络设计师分析结果。

图5 RTaw最坏情况时延分析
除此之外,如果关键数据较多,延迟要求又比较高,现有硬件条件不能完全满足所有数据的确定性延迟需求。此时,需要TSN网络设计工程师,对服务部署、路由选择等上层通信设计提出修改建议,并从多种可能的Qbv设计方案中合理选择延迟超时相对可容忍的方案进行实际部署,这需要设计师有大量的实车部署经验,综合选择最合适的落地设计方案。

▎总结

随着车载TSN软硬件产业链更加成熟,汽车电子电气架构设计向跨域融合、集中式计算的架构升级,以太网为主干网的链路上,各种类型数据的通信需求都需要兼顾, IEEE 802.1 Qbv是一种时间敏感数据低抖动性的保障。

RTaW-Pegase[3]能够大力辅助Qbv的设计工作,它是法国国家信息与自动化研究所(INRIA)下属公司RTaW的产品。该公司主要为汽车等领域的企业提供时间仿真和配置工具。RTaW-Pegase(V4.2.7)全面支持CAN(FD)、车载以太网以及TSN协议的设计仿真及性能评估。

RTaW五年前由经纬恒润引入国内,是该公司在中国的重要合作伙伴。经纬恒润凭借多年在车载以太网领域的经验以及RTaW工具的强大支持,已经成功完成了多款车型的TSN设计。更多资讯请点击链接,了解更多RTaW工具信息。

▎参考资料

[1] IEEE, 802.1, “IEEE 802.1Qbv—Enhancements for Scheduled Traffic”, [online] Available: https://www.ieee802.org/1/pages/802.1bv.html.

[2] IEEE, 802.1AS-2020, “Time and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks”, 2020.

[3] https://www.realtimeatwork.com/chin

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1245832.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

某上市证券公司:管控文件交换行为 保护核心数据资产

客户简介 某上市证券公司成立于2001年,经营范围包括:证券经纪、证券投资咨询、证券承销与保荐、证券自营等。经过多年发展,在北京、上海、深圳、重庆、杭州、厦门等国内主要中心城市及甘肃省内各地市设立了15家分公司和80余家证券营业部。20…

字符串函数的模拟实现(strlen,strcpy,strcat,strcmp,strstr)(图文并茂,清晰易懂)

目录 1. strlen函数2. strcpy函数3. strcat函数4. strcmp函数5. strstr函数 个人专栏: 《零基础学C语言》 1. strlen函数 strlen函数(Get string length)的功能是求字符串长度 使用注意事项: 字符串以 ‘\0’ 作为结束标志&…

如何预防数据泄露?六步策略帮您打造企业信息安全壁垒

大家好!我是恒小驰,今天我想和大家聊聊一个非常重要的话题——如何预防数据泄露。在这个数字化的时代,数据已经成为了我们生活中不可或缺的一部分。然而,随着数据的价值日益凸显,数据泄露的风险也随之增加。企业应该如…

windows电脑定时开关机设置

设置流程 右击【此电脑】>【管理】 【任务计划程序】>【创建基本任务】 gina 命令 查看 已经添加的定时任务从哪看?这里: 往下滑啦,看你刚才添加的任务:

Lora学习资料汇总

目录 LoRa联盟 Semtech lora网关供应商: LoRaMAC API文档 论坛 开发板 主流技术对比分析 LoRa网络距离模拟测试方法 LoRa应用 Lora LoraWAN教程 LoRa联盟 LoRa联盟:LoRaWAN规范的制定组织 https://www.lora-alliance.org/ LoRa技术白皮书:htt…

计算机毕业设计项目选题推荐(免费领源码)java+springboot+mysql 城市房屋租赁管理系统01855

摘 要 本论文主要论述了如何使用springboot 城市房屋租赁管理系统 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构JAVA技术,面向对象编程思想进行项目开发。在引言中,作者将论述城市房屋租赁管理系统的当前背景以及…

SAP指针Field-Symbols:<FS>用法及实例

指针Field-Symbols:用法 内部字段定义 : FIELD-SYMBOLS: [TYPE>] 一、在ABAP编程中使用非常广泛,类似于指针,可以指代任何变量。 当不输入时,继承赋给它的变量的所有属性 当输入时,赋给它的变量必须与同类型。 举个简…

一文带你了解多文件混淆加密

目录 🔒 一文带你了解 JavaScript 多文件混淆加密 ipaguard加密前 ipaguard加密后 🔒 一文带你了解 JavaScript 多文件混淆加密 JavaScript 代码多文件混淆加密可以有效保护源代码不被他人轻易盗取。虽然前端的 JS 无法做到纯粹的加密,但通…

Grails 启动

Grails系列 Grails项目启动 文章目录 Grails系列Grails一、项目创建二、可能的问题1.依赖下载2.项目导入到idea失败3.项目导入到idea后运行报错 Grails Grails是一款基于Groovy语言的Web应用程序框架,它使用了许多流行的开源技术,如Spring Framework、…

技术部工作职能规划分析

前言 技术部的职能。以下是一个基本的框架,其中涵盖了技术部在公司中的关键职能和子职能。 主要职能 技术部门的主要职能分为以下几个板块: - 技术规划与战略: 制定技术规划和战略,与业务团队合作确定技术需求。 研究和预测技术趋势,引领公司在技术创新和数字化转型方…

外网讨论疯了的神秘模型Q*(Q-Star)究竟是什么?OpenAI的AGI真的要来了吗 | 详细解读

大家好,我是极智视界,欢迎关注我的公众号,获取我的更多前沿科技分享 邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码和资源下载,链接:https://t.zsxq.com/0aiNxERDq 这几天,…

分布式篇---第三篇

系列文章目录 文章目录 系列文章目录前言一、什么是补偿事务?二、消息队列是怎么实现的?三、那你说说Sagas事务模型前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。…

c语言新龟兔赛跑

以下是一个使用C语言编写的新的龟兔赛跑游戏&#xff1a; #include <stdio.h>#include <stdlib.h>#include <time.h>int main() { int distance, turtle_speed, rabbit_speed, turtle_time, rabbit_time, rabbit_lead; srand(time(NULL)); // 随机数种…

F盘满了变成红色怎么清理?这4个简单方法记得收藏!

“因为我电脑的磁盘比较多&#xff0c;我通常会把一些比较重要的文件放在F盘中。但是很奇怪&#xff0c;我的F盘用着用着就满成红色了&#xff0c;这该怎么办呢&#xff1f;应该怎么进行清理呢&#xff1f;” 我们在使用电脑时都会发现&#xff0c;电脑上有很多的磁盘。我们可以…

企业数字化转型转什么?怎么转?这份攻略请收好

目录 -01-数字化转型“是什么” -02-数据驱动推动企业数字化转型 -03-企业数字化转型的行动路线图 数字化转型&#xff0c;转什么&#xff1f;怎么转&#xff1f;这些问题仍在困扰不少企业&#xff0c;也是每个企业转型升级不得不思考的重要问题。对此&#xff0c;中关村数字…

SQL语句的用法

目录 关系统型数据库相 联系类型 数据库的正规化分析 第一范式&#xff1a;1NF 范式主要就是减产冗余 第二范式&#xff1a;2NF 第三范式&#xff1a;3NF 字符串(char,varchar,text) char和varchar的比较&#xff1a; 修饰符&#xff0c; 主键&#xff0c;唯一键 常见…

干货!ERP软件如何帮助企业实现信息化管理?

ERP即企业资源规划&#xff08;Enterprise Resource Planning&#xff09;系统&#xff0c;其核心是物料的追踪流转。而在物料追踪流转的基础上&#xff0c;又衍生出一系列各类资源计划的管理和追踪。因此ERP发展成为一款集成各类资源计划&#xff0c;也就是集成企业核心业务流…

EMG肌肉电信号处理合集(二)

本文主要展示常见的肌电信号特征的提取说明。使用python 环境下的Pysiology计算库。 目录 1 肌电信号第一次burst的振幅&#xff0c; getAFP 函数 2 肌电信号波长的标准差计算&#xff0c;getDASDV函数 3 肌电信号功率谱频率比例&#xff0c;getFR函数 4 肌电信号直方图…

视频录制怎么弄?这里有一份超全攻略!

视频录制已成为一项常见任务&#xff0c;无论是为了保存在线学习资料&#xff0c;还是为了记录游戏精彩瞬间&#xff0c;它都可以轻松实现&#xff0c;可是您知道视频录制怎么弄吗&#xff1f;本文将介绍两种视频录制的方法&#xff0c;我们将分步骤详细说明&#xff0c;让您轻…

【elementui】el-popover在列表里循环使用,取消的doClose无效解决办法

目录 一、需求效果二、代码详情html方法接口 一、需求效果 在使用elementui的Popover 弹出框时&#xff0c;需求是在table列表里使用&#xff0c;循环出来&#xff0c;无法取消。 二、代码详情 html <el-table-column v-if"checkPermission([admin,user:resetPass…