当前位置: 首页 > news >正文

10BASE-T1S核心机制——PLCA参数详解

导语:

PLCA是10BASE-T1S的核心机制,了解PLCA才能更好地使用10BASE-T1。

本文将通过介绍具体配置,以及实战例子,带你掌握PLCA。

以下测试内容使用KUNHONG-U10BT1S-EVB设备测试,

设备符合IEEE 802.3cg标准,使用typec接口,体型小巧。


 PLCA介绍 

工作原理

PLCA(物理层冲突防碰撞)是10BASE-T1S实现多节点互联的核心机制。 通过指定总线唯一协调者(Node0)节点对当前总线时间进行划分和分时调度,协调各节点允许发送数据的时机。

  • 只有当轮到某一节点传输机会的时候,才可以被允许发送数据

  • 传输机会没有优先级的概念(采用round robin的方式分配传输时机)

  • 每个新的传输周期,节点0都会发送一个BEACON帧。

image.png

本文主要在于参数介绍与实际应用,更详细PLCA的工作原理可以前往

https://mp.weixin.qq.com/s/ZHhtrDfmUIeFWmjA3UmTOQ

参数介绍

  • Node Id:

    每个节点在PLCA多节点网路中必须分配唯一的Node ID,用于区分不同节点并确定传输顺序。Node ID 0较为特殊, Node ID 设置为“0”的节点为整个T1S网络PLCA调度的协调者。

  • Node Count:

    指定参与传输的节点总数,该项只有协调者(Node ID 0)设置才有效。

  • TO Timer:

    设定每个节点在PLCA周期内单次传输机会的最大窗口时间。

  •  Max Burst Count:

    允许节点到其传输机会时,可连续发送多个数据包。

  • Burst Timer:

    作用类似于TO Timer,它应用于节点需要传输多个数据包时(开启Max Burst Count功能),Burst Timer启动计时,在计时时间内节点可继续发送数据包,超过则等待下一轮。

image.png


 配置注意事项及实战测试 

参数配置注意事项

  • 总线中所有节点都需要使能PLCA

  • Node count 一般只需要节点0设置即可,其他节点可以不用修改

  • 可通过给节点设置不同的Max Burst Count值来设置不同节点的最大带宽分配

  • 同一T1S总线中所有节点的TO Timer 需要设置为相同值

  • 同一T1S总线中所有节点的Burst Timer需要设置为相同值

实战:Max burst count调节最大带宽占比

通过对节点Max burst count设置,可以提高该节点在总线带宽的比例。

在以下示例中 ,4个节点两两为一组同时运行iperf测试拉高负载抢占总线带宽,设置第一组2个节点的max burst count为4,该节点每个周期可以多发送四包数据。

查看带宽占用情况,结果为7.65 : 1.53,结果符合预期。

image.png

PLCA常见配置异常

PLCA未开启

T1S总线中超过2节点通讯,所有节点都需要使能PLCA并正确设置PLCA参数。

若存在未启用PLCA的节点,则会导致整个T1S总线通讯出现异常。

下图为PLCA功能未开启。

T1S总线中超过2节点通讯,所有节点都需要使能PLCA并正确设置PLCA参数。

若存在未启用PLCA的节点,则会导致整个T1S总线通讯出现异常。

下图为PLCA功能未开启。

image.png

节点ID重复

若T1S总线中存在NODE ID重复的情况,会导致重复ID的节点发送数据冲突,导致通讯异常。

Node Count设置值过大

ode Count设置过大,超过实际总线上的节点数量,不会影响各节点通讯功能。但会增大PLCA调度周期时间,增加Silence的时间开销,降低带宽利用率。

如下测试2个节点通讯,Node Count设置为255,实测带宽降低至5.5Mbits/s

image.png

image.png


 总结 

了解了PLCA的工作机制和参数意义后,可以更好地使用10BASE-T1这项新兴的车载以太网技术。如果对10BASE-T1S技术感兴趣,欢迎扫描下方二维码查看相关产品信息。

http://www.lryc.cn/news/599564.html

相关文章:

  • Nginx 替换 SSL 证书后的正确操作及常见问题排查
  • go语言基础教程:【2】基础语法:基本数据类型(整形和浮点型)
  • JAVA知识点(四):SpringBoot与分布式、微服务架构
  • yarn在macOS上的安装与镜像源配置:全方位指南
  • 【MAC的VSCode使用】
  • 管理 GitHub Pages 站点的自定义域(Windows)
  • 【ARM】ARM微架构
  • 基坑渗压数据不准?选对渗压计能实现自动化精准监测吗?
  • 电厂液压执行器自动化升级:Modbus TCP与DeviceNet的协议贯通实践
  • pytest-html 优势及与其他插件对比
  • Cartographer安装测试与模块开发(三)--Cartographer在Gazebo仿真环境下的建图以及建图与定位阶段问题(实车也可参考)
  • Java 单元测试详解:从入门到实战,彻底掌握 JUnit 5 + Mockito + Spring Boot 测试技巧
  • git 连接GitHub仓库
  • 安全、架构与 AI 的碰撞
  • 深入解析Hadoop MapReduce中Reduce阶段排序的必要性
  • 自然语言处理技术应用领域深度解析:从理论到实践的全面探索
  • linux 进程信号
  • 苍穹外卖笔记集锦
  • 图像梯度处理与边缘检测
  • 储粮温度预测新方案!FEBL模型用代码实现:LSTM+注意力+岭回归的完整流程
  • 剖析 Web3 与传统网络模型的安全框架
  • Idefics3:构建和更好地理解视觉-语言模型:洞察与未来方向
  • 使用 FFmpeg 实现 RTP 音频传输与播放
  • 视频质量检测效率提升28%!陌讯多模态融合方案在流媒体场景的技术实践
  • JAVA + 海康威视SDK + FFmpeg+ SRS 实现海康威视摄像头二次开发
  • Spring 生态创新应用:现代架构与前沿技术实践
  • C++常见面试题之一
  • [NLP]UPF基本语法及其在 native low power verification中的典型流程
  • 【JavaEE】Spring Web MVC(上)
  • 焊接机器人节能先锋