news 2026/6/11 14:55:54

车载以太网之要火系列 - 第65篇:郭大侠学TSN(TAS):时间感知整形器,关键数据准时去

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
车载以太网之要火系列 - 第65篇:郭大侠学TSN(TAS):时间感知整形器,关键数据准时去

写在开篇·蓉儿又挖坑

上回说到,郭靖搞清楚了gPTP——让全网设备时间同步到微秒级,主时钟坏了还能自动切换。

郭靖合上笔记本,若有所思:“蓉儿,时间同步有了,那TSN怎么利用这个时间来保证关键数据准时到?”

黄蓉咬了口糖葫芦:“问得好!时间同步只是基础,真正干活的是——TAS(时间感知整形器)。今天就把TAS讲清楚——它是什么,怎么工作,怎么保证刹车指令1ms内到。”

一、TAS是什么?为什么需要它?

黄蓉在白板上写下定义:

TAS = Time-Aware Shaper = 时间感知整形器

IEEE 802.1Qbv 标准定义

TAS的核心思想:把时间切成小段,每段给不同优先级的数据用。关键数据只在专属窗口发送,谁也不能抢。

没有TAS时:

┌─────────────────────────────────────────────────────────────────────┐ │ 普通以太网(先到先发) │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 队列:[视频1][视频2][视频3][刹车][视频4][视频5] │ │ ↑ │ │ 刹车排在视频后面,等! │ │ │ └─────────────────────────────────────────────────────────────────────┘

有TAS时:

┌─────────────────────────────────────────────────────────────────────┐ │ TAS时间门控(刹车专用窗口) │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 时间轴:│ 刹车窗口 │ 视频窗口 │ 视频窗口 │ 刹车窗口 │ 视频窗口 │ │ │ │ 只走刹车 │ 只走视频 │ 只走视频 │ 只走刹车 │ 只走视频 │ │ │ │ 1ms │ 2ms │ 2ms │ 1ms │ 2ms │ │ │ │ │ 刹车每次都能准时发,不用排队! │ │ │ └─────────────────────────────────────────────────────────────────────┘

二、TAS是怎么工作的

黄蓉画了TAS的核心机制——时间门控

┌─────────────────────────────────────────────────────────────────────┐ │ TAS时间门控原理 │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 入队 门控 出队 │ │ │ │ 刹车指令 ──→ [队列7] ──→ │开/关│ ──→ 发送 │ │ 视频流 ──→ [队列4] ──→ │开/关│ ──→ 发送 │ │ 普通数据 ──→ [队列0] ──→ │开/关│ ──→ 发送 │ │ │ │ ┌─────────────────────────────────────────────────────────────┐ │ │ │ 门控时间表(Gate Control List) │ │ │ ├─────────────────────────────────────────────────────────────┤ │ │ │ T0-T1:只有队列7开门(刹车专用) │ │ │ │ T1-T2:只有队列4开门(视频专用) │ │ │ │ T2-T3:只有队列0开门(普通数据) │ │ │ │ T3-T4:重复 │ │ │ └─────────────────────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────┘

三、TAS和gPTP的关系

郭靖问:“TAS和上篇讲的gPTP是什么关系?”

黄蓉画了一个依赖关系图:

┌─────────────────────────────────────────────────────────────────────┐ │ TAS依赖gPTP才能工作 │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ gPTP(时间同步) │ │ └── 所有设备时间对齐,知道“现在是T0” │ │ │ │ │ ▼ │ │ TAS(时间感知整形) │ │ └── 根据GCL表格,在指定时间开门/关门 │ │ │ │ │ ▼ │ │ 结果:刹车指令在T0-T1窗口发出,1ms内到达 │ │ │ └─────────────────────────────────────────────────────────────────────┘

没有gPTP,TAS不知道“什么时候是T0”;没有TAS,gPTP只是“时间同步”,不能保障延迟。

四、TAS配置示例:刹车指令1ms保障

黄蓉用一个具体例子说明TAS怎么配置:

配置项说明
周期1ms每1ms一个循环
刹车窗口100μs刹车专用,只走高优先级流量
其他窗口900μs普通数据、视频流等

门控时间表(GCL):

时间点队列7(刹车)其他队列说明
T0刹车窗口开始
T0+100μs刹车窗口结束,其他数据开始
T0+1ms下一个周期开始

刹车指令最多等100μs就能发,加上传输延迟,1ms内必到。

五、TAS和DDS延迟预算的配合

郭靖问:“那之前学的DDS延迟预算(1ms)和TAS有什么关系?”

黄蓉画了完整的数据流:

┌─────────────────────────────────────────────────────────────────────┐ │ DDS + gPTP + TAS = 确定性通信 │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 1. DDS: │ │ └── 刹车指令配置延迟预算=1ms │ │ │ │ 2. 配置映射: │ │ └── 网络配置工具读取DDS的QoS,生成TAS的门控时间表 │ │ │ │ 3. gPTP: │ │ └── 全网设备时间同步,知道“现在是T0” │ │ │ │ 4. TAS: │ │ └── 在刹车窗口(T0-T0+100μs)发送刹车指令 │ │ │ │ 5. 结果: │ │ └── 刹车指令1ms内到达域控制器 │ │ │ └─────────────────────────────────────────────────────────────────────┘

六、TAS的局限

黄蓉提醒郭靖:“TAS不是万能的,有几个注意事项:”

问题说明
全网需要时间同步没有gPTP,TAS没法工作
配置复杂需要精确计算每个流的时间窗口,手工配容易错
门控表容量有限交换机内存有限,不能支持太多时间槽
动态适应性差流量变化时,门控表不自动调整,需要重新配置
对时钟抖动敏感时间同步误差大会导致窗口错位

七、黄蓉的小本本

郭靖翻开她的笔记本,上面写着:

TAS核心要点:

1. TAS是什么:时间感知整形器,IEEE 802.1Qbv标准

2. 核心机制:时间门控——只在指定时间窗口发送指定类型的数据

3. 依赖gPTP:没有时间同步,TAS无法工作

4. 配合DDS:DDS提要求(延迟预算=1ms),TAS来保障

5. 配置方式:门控时间表(GCL),告诉交换机什么时候开哪个门

6. 局限:需要全网时间同步、配置复杂、门控表容量有限

一句话:TAS给关键数据开专用通道,准时、不堵、不排队。

写在最后

郭靖合上笔记本:“TAS通过时间门控,给关键数据开专用通道。刹车指令在专属窗口发送,不用排队,1ms内必到。但它依赖gPTP时间同步,配置也复杂。”

黄蓉咬了口糖葫芦:“TAS讲完了。那如果刹车指令来得不是时候,刚好在视频窗口,还得等下一个窗口?”

郭靖点头:“那就有延迟风险……”

黄蓉眨眨眼:“下篇预告:帧抢占——高优先级数据可以插队,不用等窗口。

打完收工,886。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/11 14:54:03

波峰焊与回流焊工艺选择:从PCA9501芯片焊接看SMT制造关键

1. 项目概述:从一颗芯片的焊接说起最近在做一个工控板卡的项目,用到了NXP的PCA9501这颗芯片。它是个挺有意思的器件,集成了8位I/O扩展器和2Kbit的EEPROM,通过I2C总线控制,在系统管理、配置存储这类场景里很常见。画完板…

作者头像 李华
网站建设 2026/6/11 14:50:52

3分钟搞定:在Linux系统上安装官方级哔哩哔哩客户端完整指南

3分钟搞定:在Linux系统上安装官方级哔哩哔哩客户端完整指南 【免费下载链接】bilibili-linux 基于哔哩哔哩官方客户端移植的Linux版本 支持漫游 项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-linux 想在Linux系统上也能享受哔哩哔哩的完整体验吗&a…

作者头像 李华
网站建设 2026/6/11 14:48:57

别再死记硬背了!用Python+SymPy帮你推导电机控制核心公式(附代码)

用PythonSymPy动态推导电机控制核心公式:从抽象理论到可验证代码 电机控制领域的核心公式往往让开发者望而生畏——Clarke/Park变换矩阵的推导、磁链与磁通的关系、转矩常数与反电势常数的关联……这些公式不仅抽象难记,更难以直观理解其物理意义。传统学…

作者头像 李华
网站建设 2026/6/11 14:48:53

如何用so-vits-svc实现专业级AI歌声转换:手机端部署完整指南

如何用so-vits-svc实现专业级AI歌声转换:手机端部署完整指南 【免费下载链接】so-vits-svc SoftVC VITS Singing Voice Conversion 项目地址: https://gitcode.com/gh_mirrors/so/so-vits-svc 你是否曾梦想过,只需一部手机就能将自己的声音变成专…

作者头像 李华
网站建设 2026/6/11 14:43:52

OpCore-Simplify:15分钟构建专业级黑苹果EFI,告别复杂手动配置

OpCore-Simplify:15分钟构建专业级黑苹果EFI,告别复杂手动配置 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为黑苹果的…

作者头像 李华