AUTOSAR_PRS_LogAndTraceProtocol文档翻译
1简介和概述
本协议规范规定了AUTOSAR协议Dlt的格式、消息序列和语义。
该协议允许将诊断、日志和跟踪信息发送到通信总线上。
因此,Dlt模块从应用程序或其他软件模块收集调试信息,向调试信息添加元数据,并将其发送到通信总线。
此外,Dlt协议允许根据严重级别过滤调试信息,例如“致命”、“错误”或“信息”。此筛选器可以在运行时通过外部日志记录工具发送的Dlt控制消息进行修改。
还可以直接向应用程序通知新的过滤器级别,以仅生成调试信息,特别是针对该选定的严重性级别,在运行时将消息分配给另一个通信总线,或者将修改后的Dlt配置存储为非易失性配置(如果硬件支持的话)。
1.1目的
Dlt协议可在ECU开发阶段用于记录调试信息,并将其外部存储在记录设备上。
1.2协议的适用性
它旨在在ECU的开发阶段使用Dlt协议。假设使用外部日志记录和跟踪工具来存储ECU生成的调试信息。
如果需要,还需要此日志记录和跟踪工具来在运行时修改过滤器设置,或者持久存储ECU的当前Dlt配置。
1.2.1安全和安保注意事项
强烈建议在开发阶段结束后停用Dlt功能。特别是,在任何情况下都应禁用注入功能!
Dlt功能的激活和停用应使用安全机制进行。
1.2.2约束和假设
Dlt协议设计为“无连接”工作。这意味着使用Dlt协议不需要外部通信或其他刺激。
尽管不需要连接外部日志记录工具,但有一个可以存储和解释接收到的调试消息的日志记录工具是有意义的。该设备还可用于生成Dlt控制消息以影响ECU,如修改过滤器设置(即更改调试信息的严重性级别)。
1.2.3限制
应考虑通信总线的可用(免费)带宽,以免对常规通信产生太大影响。
1.4对应用层的依赖
为了传输Dlt消息,应用程序需要知道是使用详细模式还是非详细模式发送Dlt消息。
此外,应用程序可以提供获得关于过滤器设置更改的通知的可能性。为此,应用程序应在Dlt模块中进行自身注册。
2用例
本章描述了可以通过实现Dlt协议的ECU的环境来实现的用例。
尽管Dlt协议与总线无关,但建议使用具有更高带宽的通信总线,如以太网。尽管如此,它并不局限于此。
2.1.1使用Dlt的用例通用日志记录
(1) 应用程序/SW-C正在向Dlt模块提供日志消息。
(2) 日志消息由实现Dlt协议的Dlt模块过滤或创建Dlt消息。(取决于日志级别。)
(3)Dlt模块将Dlt消息发送到通信总线。
(4) 外部客户端接收并存储Dlt消息。
2.1.3 Dlt的用例运行时配置
(1) 外部客户端设置日志和跟踪级别,并将更改发送到实现Dlt协议的Dlt模块。
(2) 通过Dlt控制消息,将改变发送到实现Dlt协议的Dlt模块。
(3) Dlt模块相应地调整其过滤器设置的配置。
(4) Dlt模块向应用程序通知新的日志级别。
2.1.4用例非详细模式
为了减少总线上的流量,可以避免在通信总线上发送有关变量的元数据。
相反,一个外部文件保存了应如何解释有效载荷的信息。外部Dlt客户端将这些元数据与接收到的参数值合并并存储。
(1) 应用程序/SW-C正在向Dlt模块提供非详细的日志记录数据。
(2) Dlt模块过滤并生成Dlt消息。
(3) Dlt模块向通信总线发送Dlt消息。
(4) 外部客户端从外部文件获取元信息。
(5) 合并后的信息由外部客户端存储。
5协议规范
5.1消息格式
消息格式对于调试数据和控制信息,使用相同的DLT消息格式。
它由一个标准报头、一个可选的扩展报头和一个有效载荷段组成
5.1.1 Standard Header
[PRS_Dlt_00458] ⌈The Dlt Standard Header shall consist of the following fields in the
following order:
Byte 0: HTYP (Header Type)
Byte 1: MCNT (Message Counter)
Byte 2-3: LEN (Length)
Byte 4-7: ECU (ECU ID)
Byte 8-11: SEID (Session ID)
Byte 12-15: TMSP (Timestamp)
⌋ (RS_LT_00002)
5.1.1.1 Header Type
5.1.1.1报头类型DLT报头类型(HTYP)包含有关DLT消息的一般信息。
[PRS_DLT_00094]⌈报头类型(HTYP)应包含以下信息并按以下方式编码:
Bit 0: UEH (Use Extended Header)
Bit 1: MSBF (Most Significant Byte First)
Bit 2: WEID (With ECU ID)
Bit 3: WSID (With Session ID)
Bit 4: WTMS (With Timestamp)
Bit 5-7: VERS (Version Number)
⌋ (RS_LT_00002)
[PRS_Dlt_00600] ⌈The Header Type (HTYP) shall be the first byte of any Dlt
message. ⌋ (RS_LT_00002)
[PRS_Dlt_00601] ⌈The size of the Header Type (HTYP) shall be 1 byte. ⌋
(RS_LT_00002)
[PRS_Dlt_00602] ⌈If the UEH bit is set to ‘0’, the extended header is not used. ⌋
(RS_LT_00002)
[PRS_Dlt_00603] ⌈If the UEH bit is set to ‘1’, the extended header is used. ⌋
(RS_LT_00002)
Note: If the verbose mode is needed, the UEH bit has to be set to 1.
[PRS_Dlt_00604] ⌈If the MSBF bit is set to ‘0’, the payload data is encoded in little
endian format. ⌋ (RS_LT_00002, RS_LT_00016)
[PRS_Dlt_00605] ⌈If the MSBF bit is set to ‘1’, the payload data is encoded in big
endian format. ⌋ (RS_LT_00002, RS_LT_00016)
[PRS_Dlt_00606] ⌈If the WEID bit is set to ‘0’, the ECU ID (ECU) field is not
contained in the Standard Header. ⌋ (RS_LT_00002, RS_LT_00022)
[PRS_Dlt_00607] ⌈If the WEID bit is set to ‘1’, the ECU ID (ECU) field is contained in
the Standard Header. ⌋ (RS_LT_00002, RS_LT_00022)
[PRS_Dlt_00608] ⌈If the WSID bit is set to ‘0’, the Session ID (SEID) field is not
contained in the Standard Header. ⌋ (RS_LT_00002)
5.1.1.2消息计数器
消息计数器对传输到选定日志通道的DLT消息进行计数。
每个日志通道都需要维护自己的消息计数器。
在接收方,可以评估消息计数器值,以识别丢失的消息达到某个级别。
[PRS_DLT_00319]⌈消息计数器是一个无符号8位(0-255)整数。
⌋(RS_LT_00018)[PRS_DLT_00613]⌈在DLT模块初始化后,消息计数器(MCNT)应设置为‘0’。
⌋(RS_LT_00018)[PRS_DLT_00105]⌈对于传输到分配的日志通道的每条DLT消息,消息计数器应递增1。⌋(RS_LT_00018)[PRS_DLT_00106]⌈如果消息计数器达到255,则计数器将在下一条要传输的日志和跟踪消息时取整并从值‘0’开始。⌋(RS_LT_00018)
5.1.3正文/有效载荷格式
DLT有效载荷跟随在DLT报头或DLT扩展报头之后(如果使用)。DLT有效负载包含记录或跟踪的参数,或者它包含控制信息。
[PRS_DLT_00314]⌈如果UEH(使用扩展报头)位设置为‘1’,则有效载荷应与DLT扩展报头相邻。⌋(RS_LT_00013,RS_LT_00023)[PRS_DLT_00315]⌈如果UEH(使用扩展报头)位设置为‘0’,则有效载荷应与DLT标准报头相邻。⌋(RS_LT_00013,RS_LT_00023)5.1.3.1非冗余模式下的有效负载为了能够仅传输参数值,而不需要关于参数值的任何元信息,可以使用非冗余模式的附加属性,如参数名称或类型。
为了允许正确地分解接收到的DLT消息内包含的参数值,将专用消息ID添加到有效负载。
一个单独的外部文件根据相应的消息ID包含对有效载荷布局的描述。
5.2报文类型
5.2.1数据报文
DLT数据报文按照5.1章《报文格式》中所述进行组装。
5.2.2控制消息
DLT控制消息主要用于修改DLT模块在运行时的行为。它们允许改变通信总线来发送DLT数据消息,修改过滤器级别,配置可以触发存储为非易失性。
5.3服务/命令
以下章节介绍已定义的DLT命令,包括唯一ID(服务ID)、格式和所需参数。
[PRS_DLT_00635]⌈应支持使用以下服务ID的下列dlt命令:
相关文章:

AUTOSAR_PRS_LogAndTraceProtocol文档翻译
1简介和概述 本协议规范规定了AUTOSAR协议Dlt的格式、消息序列和语义。 该协议允许将诊断、日志和跟踪信息发送到通信总线上。 因此,Dlt模块从应用程序或其他软件模块收集调试信息,向调试信息添加元数据,并将其发送到通信总线。 此外&#x…...
自定义比较器
package org.jeecg.modules.develop.api.livePort; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; // 创建一个泛型类 class MyObject { private T data; public MyObject(T data) {this.data data; }p…...

【NLP】如何管理大型语言模型 (LLM)
什么是LLM编排? LLM 编排是管理和控制大型语言模型 (LLM)的过程,以优化其性能和有效性。这包括以下任务: 提示LLM:生成有效的提示,为LLMs提供适当的背景和信息以产生所需的输出。链接LLM: 结合多个LLM的输…...

利用机器学习实现客户细分的实战
前言: Hello大家好,我是Dream。 今天来学习一下机器学习实战中的案例:创建客户细分,在此过程中也会补充很多重要的知识点,欢迎大家一起前来探讨学习~ 一、导入数据 在此项目中,我们使用 UCI 机器学习代码库…...

Tair(4):Tair原理架构
一个Tair集群主要包括3个必选模块:ConfigServer、Dataserver和Client 通常情况下,一个 Tair 集群中包含2台 Configserver 及多台 DataServer。其中两台 Configserver 互为主备。通过和 Dataserver 之间的心跳检测获取集群中存活可用的 Dataserver&#…...

SAP UI5 walkthrough step7 JSON Model
这个章节,帮助我们理解MVC架构中的M 我们将会在APP中新增一个输入框,并将输入的值绑定到model,然后将其作为描述,直接显示在输入框的右边 首先修改App.controllers.js webapp/controller/App.controller.js sap.ui.define([&…...

智能检测/摄像头监控系统EasyCVR无法启动进程是什么原因?如何解决?
国标GB28181智慧安防平台EasyCVR支持高清视频的接入和传输、分发,平台采用了开放式的网络结构,提供实时远程视频监控、录像回放与存储等功能。视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流,也能支持…...
export命令详解
export命令详解 大家好,我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! Export命令详解:释放Linux强大的数据导出能力 在Linux世界中,export命令是…...

十几个软件测试实战项目【外卖/医药/银行/电商/金融】
项目一:ShopNC商城 项目概况: ShopNC商城是一个电子商务B2C电商平台系统,功能强大,安全便捷。适合企业及个人快速构建个性化网上商城。 包含PCIOS客户端Adroid客户端微商城,系统PC后台是基于ThinkPHP MVC构架开发的跨…...

用python打印出菱形图案
你可以使用Python编写一个简单的函数来打印菱形图案。下面是一个例子,这个函数接受一个参数n,表示菱形的高度,然后打印出一个菱形图案: def print_diamond(n): # 上半部分 for i in range(n): print(" " …...
k8s 中externalTrafficPolicy应用场景和实践
在Kubernetes(K8s)中,externalTrafficPolicy 是一个用于控制服务的外部流量的策略。这个字段可以在 Service 的定义中设置,其主要作用是决定服务对外部请求的负载均衡行为。具体来说,externalTrafficPolicy 有两个可选…...

Selenium自动化测试框架(超详细)
Selenium自动化测试(基于python) 1、Selenium简介 1.1 Selenium是一款主要用于Web应用程序自动化测试的工具集合。Selenium测试直接运行在浏览器中,本质是通过驱动浏览器,模拟浏览器的操作,比如跳转、输入、点击、下…...

蚂蚁SEO实用的网络baidu蜘蛛有哪些
网络蜘蛛是一种用于从互联网上自动抓取信息的程序。它们根据给定的规则和指令,遍历网站上的页面,收集信息并将其存储在数据库中。网络蜘蛛在搜索引擎、数据挖掘、信息提取等领域有着广泛的应用。本文将介绍一种实用的网络蜘蛛,并探讨其实现原…...

滑动窗口如人生,回顾往事不复还———力扣刷题
第一题:长度最小的子数组 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 思路: 第一想法肯定时暴力枚举,枚举数组任何一个元素,把他当起始位置,然后从起始位置找最短区间,使得…...
VM实现方式及其优缺点
在众多VM实现方式中,我可以说几种常见的实现方式。例如,基于栈的方式、基于寄存器的方式、基于堆的方式等。下面我将分别对这几种方式进行阐述,并讨论它们各自的优点和缺点,以及它们各自的应用场景。 基于栈的方式 基于栈的方式…...

MySQL——库,表基础操作
目录 一.库的操作 1.显示当前的数据库列表 2.创建数据库 3.字符集和校验规则 4.操纵数据库 5.删除数据库 6.数据库备份与还原 7.查看连接情况 二.表的操作 1.创建表 2.查看表结构 3.修改表 4.删除表 一.库的操作 1.显示当前的数据库列表 show databases; 2.创建数…...

文件批量管理方法:100个文件要怎样快速放在100个指定的文件夹中
处理大量文件时,经常要将多个文件放入相应的文件夹中。如果要处理的文件数量较大,例如100个文件要放入100个指定的文件夹中,那么如何快速有效地完成这个任务呢?下面看下云炫文件管理批量管理文件的方法,快速将100个文件…...
管理的五大过程和十大知识领域
PMBOK五大过程组是什么? PMBOK五大过程组是:启动过程、规划过程、执行过程、监控过程、收尾过程。 各用一句话概括项目管理知识体系五大过程组: 1、启动过程组:作用是设定项目目标,让项目团队有事可做; 2、…...

C/C++ 快乐数: 编写一个算法来判断一个数n是不是快乐数
题目: 编写一个算法来判断一个数n是不是快乐数。 快乐数的定义: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果这个过…...

【后端】JVM 远程调试
前言 再好的代码,也还是有瑕疵的,不是代码不给力,是线上问题太牛逼太玄幻。这不刚部署就出现了问题,幸好还是测试的时候,早点发现早点解决,不给任何人带来不必要的损失,是我做人的原则,只要钱到位,任何问题都不是问题。 JVM 远程调试 不得不说 IDEA 和 宝塔配合是真…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...

通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

PHP 8.5 即将发布:管道操作符、强力调试
前不久,PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5!作为 PHP 语言的又一次重要迭代,PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是,借助强大的本地开发环境 ServBay&am…...