• #传输# #传输数据判断#


    数据值判断

    • 初始值:系统启动时,未获取真实数据前发送值

    • 有效值:系统启动后,已获取真实数据值

    • 无效值(SNA):系统启动后,异常时发送值

    • 物理最大值:实际占用bit位值,当规定最大值时,就无实际作用。can dbc中较常见定义

    • 物理最小值:0

    • 最大值:规定实际意义最大值

    • 最小值:规定实际意义最小值

    CAN数据WPTC_PDOffsetY为例:

     

    • 初始值:0

    • 有效值:-5000~5000

    • 无效值(SNA):未说明,也可以理解(物理值:0x2711~0x3FFF,实际值:5000+无为无效值)

    • 物理最大值:0x3FFF (解析前,纯bit)

    • 物理最小值:0 (解析前,纯bit)

    • 最大值:5000 解析规则:物理值*Factor+Offset

    • 最小值:5000 解析规则:物理值*Factor+Offset

    通常数据brake_report.brake_report_data.driver_work_type示例

     

    • 初始值:未说明

    • 有效值:0~3

    • 无效值(SNA):4~255

    • 物理最大值:0xFF 单位unit_8决定

    • 物理最小值:0

    • 最大值:7 实际上4~7为reserve位,也是无意义的

    • 最小值:0

    端对端(e2e chek)

    功能安全(Functional Safety)是一项系统特性,由于基于功能安全的设计会影响到系统设计,所以从系统开发初始阶段就要进行考虑。由于软件的复杂度会影响 到功能安全的设计,所以在AUTOSAR规范中,包含了部分与功能安全相关的需求,这些新技术和概念能够帮助降低功能安全相关组件的复杂度。不过需要强调的是,AUTOSAR虽然通过提供安全措施和机制来支持基于功能安全产品开发,但这些独立的安全措施(Safety Measure)并不能形成整体的安全解决方案。

    在功能安全标准(ISO 26262 2018, Part 6)中,提到了要避免软件相关元素之间干扰(Freedom from Interference between software elements)。软件之间的相互干扰主要集中在软件的执行时间(Timing),软件间的死锁(Dead locks,Live locks),内存使用(Memory),信息交换(Information Exchange)。

    失效模式:在一个分布式的系统中,如果系统的功能安全依赖于数据的完整性,那么发送方(Sender)和接收方(Receiver)之间的数据交换就可以对系统的功能安全造成影响。根据ISO 26262 Part 6的附录D,数据交换过程中,可能存在的失效模式有如下几种:

    信息的重复发送 (Repetition of Information)

    相同的信息被收到了多次

    信息的丢失 (Loss of Information)

    整条或者信息的一部分在通信过程中丢失

    信息的延迟 (Delay of Information)

    接收信息的时间大于期望的时间

    信息的插入 (Insertion of Information)

    多余或未知附加的内容被插入到信息中

    假冒的或者不正确的寻址 (Masquerade or Incorrect Addressing of Information)

    假冒的发送者发送未认证的信息被接收方接受,或者正确的信息被错误的接收方接受

    信息顺序错误 (Incorrect Sequence of Information)

    数据流中的信息顺序错误

    信息破损 (Corruption of Information)

    信息的内容被篡改

    向多个接收方发送非对称信息 (Asymmetric information sent from a sender to multiple receivers)

    接收方者收到的数据不一致

    仅部分接收方收到发送者的信息 (Information from a sender received by only a subset of receivers)

    一些接收方没有收到信息

    阻塞通信通道 (Blocking access to communication channel)

    通信通道的访问被阻塞。

    这些失效可能发生的数据交换的场景包括,与I/O外设的通信,基于数据总线的通信等等。产生失效的原因包括系统性失效与随机失效,在软件方面,如生成代码过程中的错误,手动编码引入的错误,网络协议栈的错误等等;硬件方面,如处理器的故障,网络硬件的故障,电磁辐射等等。

    E2E保护的概念是假设安全相关的数据交换,需要在运行时进行保护,以消除通信链路中可能的失效带来的影响。

    机制

    简介

    说明

    故障模式

    CRC

    CRC校验

    检测每个数据包,是否传输过程中损坏

    损坏、伪装

    计数器

    连续计数器(Sequence Counter)

    每个数据包,连续计数器都会增加,其值会在接收方进行检查是否正确的增加

    重复、丢失、不正确的顺序

    心跳计数器(Alive Counter)

    每个数据包,心跳计数器都会发生改变,接收方会验证数值是否发生变化,但变化的范围不做检查

    丢失

    数据ID

    特定的通信ID

    全局唯一,即使系统包括多个ECU的情况下

    插入ID,地址故障

    超时

    超时检测

    检查接收方的通信超时(Communication Timeout)和发送方的确认超时(Acknowledgement Timeout)

    丢失、延迟

  • 相关阅读:
    python *和**的用法
    C语言 const详解
    leetcode 13. 罗马数字转整数
    Vim插件 YouCompleteMe 安装
    十五.镜头知识之景深(Depth of Field)
    EXCEL地图 | 制作民生银行网点地图
    数据结构与算法之字典: Leetcode 349. 两个数组的交集 (Typescript版)
    基于webrtc的数据传输研究总结
    武汉某母婴用品公司 - 集简云连接ERP和营销系统,实现库存管理的自动化
    微信小程序云开发 | 插件的微信小程序云开发
  • 原文地址:https://blog.csdn.net/xiaoting451292510/article/details/127576116