道路车辆 局域互联网络(LIN) 第2部分:传输层协议和网络层服务_第1页
道路车辆 局域互联网络(LIN) 第2部分:传输层协议和网络层服务_第2页
道路车辆 局域互联网络(LIN) 第2部分:传输层协议和网络层服务_第3页
道路车辆 局域互联网络(LIN) 第2部分:传输层协议和网络层服务_第4页
道路车辆 局域互联网络(LIN) 第2部分:传输层协议和网络层服务_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ICS43.040

CCST36

中华人民共和国国家标准

GB/TXXXXX—XXXX/ISO17987-2:2016

`

道路车辆局域互联网络(LIN)

第2部分:传输层协议和网络层服务

Roadvehicles—LocalInterconnectNetwork(LIN)—

Part2:Transportprotocolandnetworklayerservices

(ISO17987-2:2016,IDT)

(征求意见稿)

(本草案完成时间:2021.11.1)

在提交反馈意见时,请将您知道的相关专利连同支持性文件一并附上。

GB/TXXXXX—XXXX/ISO17987-2:2016

前言

本文件按照GB/T1.1—2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定

起草。

本文件为GB/TXXXXX《道路车辆局域互联网络(LIN)》的第2部分。GB/TXXXXX已经发布了以

下部分:

——第1部分:一般信息和用例定义;

——第2部分:传输层协议和网络层服务;

——第3部分:协议规范;

——第4部分:12V/24V电气物理层规范;

——第5部分:应用程序接口;

——第6部分:协议一致性测试规范;

——第7部分:电气物理层一致性测试规范;

——第8部分:电气物理层规范直流电源线上的局域互联网络。

本文件等同采用ISO17987-2:2016《道路车辆局域互联网络(LIN)第2部分:传输层协议和网络层

服务》。

本文件做了下列最小限度的编辑性改动:

——将国际标准中的“本国际标准”改为“本文件”;

——删除国际标准的前言;

——规范性引用文件由国际标准替换为等同采用的国家标准。

本文件由中华人民共和国工业和信息化部提出。

本文件由全国汽车标准化技术委员会(SAC/TC114)归口。

本文件起草单位:。

本文件主要起草人:。

GB/TXXXXX—XXXX/ISO17987-2:2016

引言

GB/TXXXX标准定义了用例、通讯协议和车辆通讯网络的局域互联网络的物理层需求。

所提到的LIN协议是一种基于汽车的低速通用异步收发器的网络,它的一些关键特性是基于信号通

讯,基于调度表的帧传输,主从通讯错误检测,节点配置和诊断服务传输。

LIN协议适用于低成本的汽车控制应用,比如门模块和空调系统。作为车辆低速控制应用的通讯基

础设施,它能提高以下功能:

——基于信号在不同节点的应用程序之间交换信息;

——比特率支持1kbit/s到20kbit/s;

——基于确定性调度表的帧通讯;

——唤醒和休眠LIN网络的网络管理方案;

——提供错误处理和错误信号的状态管理;

——传输层允许大量数据的传输(例如诊断服务);

——如何处理诊断服务的规范;

——电气物理层规范;

——用于描述从节点属性的节点描述语言;

——用于描述通讯行为的网络描述文件;

——应用程序接口。

GB/TXXXX标准基于ISO/IEC7498-1中规定的开发系统互连基本参考模型,该模型将通信系统架

构分为七层。

该模型将数据通信架构分为七层,即(自上而下)应用层(7层)、表示层、会话层、传输层、网

络层、数据链路层和物理层(一层)、这些层的子集都应用在GB/TXXXX中(所有部分)。

GB/TXXXX标准区分了由一层提供给它上面一层的服务和该层用来在它的对等实体之间发送消息

的协议。这种区分的原因主要是为了服务,尤其是应用层服务和传输层服务,也用于除LIN以外的其

他类型的网络。因此,协议对服务的使用者是隐藏的,并且如果有特殊的系统需求,可以修改协议。

GB/TXXXX标准提供了支持以下相关要求实施所需的所有文件和参考材料:

——GB/TXXXX.1:本文件概述了GB/TXXXX系列标准和结构及用例定义和供所有后续部分使

用的公共资源集(定义、引用);

——GB/TXXXX.2:本文件规定了在LIN节点之间传输消息的PDU传输协议网络层要求;

——GB/TXXXX.3:本文件规定了在抽象逻辑层上实现LIN协议的要求及与硬件相关的规则;

——GB/TXXXX.4:本文件规定了实现互连协议所需的有效硬件组件的要求;

——GB/TXXXX.5:本文件规定了LIN应用程序接口(API)以及节点配置和标识服务。节点配

置和标识服务在API中进行定义,定义了从节点的配置方式和从节点如何使用标识服务;

——GB/TXXXX.6:本文件规定了根据第2部分和第3部分检查LIN协议实现的一致性,包括对

数据链路层、网络层和传输层的测试;

——GB/TXXXX.7:本文件规定了根据第4部分检查LIN电气物理层实现(抽象逻辑层)一致性

的测试;

——GB/TXXXX.8:本文件规定了LIN通信系统直流电源线电气物理层(EPL)的实现要求和EPL

的符合性测试计划。

I

GB/TXXXXX—XXXX/ISO17987-2:2016

道路车辆局域互联网络(LIN)第2部分:传输层协议和网络层

服务

1范围

本文件规定了一种传输协议和网络层服务,专门用于满足局域互联网络上基于LIN的车辆网络系统

的要求。协议确认了一种非确认性的通信

注1:LIN协议支持标准化的服务原语接口,如ISO14229-2定义。

本文件适用于传输协议和网络层服务,以支持不同的应用层实现,如:

——正常通信报文;

——诊断通信报文;

注2:传输层定义了包含在单帧或多个帧中的数据传输方式。传输层帧使用诊断帧传输。传输层使用标准化的API。

注3:传输层的使用是针对在主干网(如CAN)执行诊断的系统以及系统设计者希望在各LIN子网使用相同诊断能力

的系统。事实上帧对于ISO15765-2是相同的,搬运帧的PDU是非常相似的。

注4:传输层的目标是:

——降低LIN主节点的负载;

——直接对LIN从节点提供全部或部分诊断;

——面向具有强大功能的LIN节点的集合(不是主流低成本方式);

注5:典型的系统配置如图1所示。

主干网

测试工具

主节点

LIN集

从节点1从节点2

图1使用传输层的LIN集的典型系统设置

2规范性引用文件

下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,

仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本

文件。

GB/TXXXX.3道路车辆局域互连网络第3部分:协议规范(ISO17987-3:2016Roadvehicles—

LocalInterconnectNetwork(LIN)—Part3:Protocolspecification,IDT)

ISO14229-1Roadvehicles—Unifieddiagnosticservices(UDS)—Part1:Specificationandrequirements

1

GB/TXXXXX—XXXX/ISO17987-2:2016

ISO14229-2Roadvehicles—Unifieddiagnosticservices(UDS)—Part2:Sessionlayerservices

ISO14229-7:2015Roadvehicles—Unifieddiagnosticservices(UDS)—Part7:UDSonlocal

interconnectnetwork(UDSonLIN)

3术语、定义、符号和缩略语

下列术语和定义适用于本文件。

3.1.1

广播式NADbroadcastNAD

任何接收到NAD为广播式NAD7F16的从节点,应接收并处理该帧。

3.1.2

配置NADconfiguratedNAD

分配给每个从节点的值(0116-7D16)。

注1:LDF中定义了将配置的NAD分配给每个从节点的内容。配置的NAD用于节点配置和标识服务,以及符合ISO

14229-7的UDS服务

注2:通信初始化配置时,从节点的NAD可能相同。在通信诊断开始之前,主节点应将唯一的配置NAD分配给所有

从节点。

注3:设置或更改从节点中配置的NAD可通过以下方式完成:

——主节点可以给支持“分配NAD”服务的从节点分配新的配置NAD;

——从节点中的API调用分配配置NAD;

——使用静态配置的方式分配配置NAD。

3.1.3

功能寻址NADfunctionalNAD

7E16用于广播的诊断请求。

3.1.4

初始NADInitialNAD

处于0116-7D16范围内的常量/静态值。

注1:初始NAD值可从引脚配置,EEPROM或者从节点位置检测算法中获取,然后进入工作状态(常规LIN通信)。

注2:初始NAD,供应商ID和每个从节点唯一的功能ID的组合用于‘分配NAD’命令,允许明确配置的NAD的分配。

注3:如果没有为从节点(LDF,NCF)定义初始NAD,则该值与配置NAD相同。

3.1.5

P2时序参数P2timingparameter

用于ECU和外部测试设备的应用时序参数。

3.1.6

2

GB/TXXXXX—XXXX/ISO17987-2:2016

P2*时序参数P2*timingparameter

用于ECU应用层应答等待文传输后的增强型响应时序参数。

3.1.7

P4时序参数P4timingparameter

用于ECU应用层,定义从接收到请求到给出最终响应之间时间间隔的时序参数。

3.1.8

专属NADproprietaryNAD

[8016-FF16]范围内的NAD用于标准化通信,比如Tier-1从节点诊断。

符号

%——百分比

μs——微秒

ms——毫秒

∣——竖条表示选择,竖线的左侧或者右侧将会使用

缩略语

下列缩略语适用于本文件。

API:应用程序接口(Applicationprogrammersinterface)

BNF:Bachus-Naur格式(Bachus-Naurforma)

CAN:控制器局域网络(Controllerareanetwork)

CF:连续帧(ConsecutiveFrame)

FF:首帧(FirstFrame)

LDF:LIN描述文件(Lindescriptionfile)

L_Data:数据链路数据(Datalinkdata)

MRF:主节点请求帧(Masterrequestframe)

N_AI:网络地址信息(Networkaddressinformation)

N_As:网络层时序参数As(NetworklayertimingparameterAs)

N_AsMax:As超时时间(TimeoutonAs)

N_Cr:网络层时序参数Cr(NetworklayertimingparameterCr)

N_CrMax:Cr超时时间(TimeoutonCr)

N_Cs:网络层时序参数Cs(NetworklayertimingparameterCs)

N_CsMax:Cs超时时间(TimeoutonCs)

N_Data:网络数据(Networkdata)

N_PCI:网络协议控制信息(Networkprotocoldatainformation)

N_PCItype:网络协议控制信息类型(Networkprotocoldatainformationtype)

N_PDU:网络协议数据单元(Networkprotocoldataunit)

N_SA:网络源地址(Networksourceaddress)

N_SDU:网络服务数据单元(Networkservicedataunit)

N_TAtype:网络目标地址类型(Networktargetaddresstype)

3

GB/TXXXXX—XXXX/ISO17987-2:2016

N_USData:网络层LIN数据传输服务名称(NetworklayerLINdatatransferservicename)

NAD:从节点节点地址(Nodeaddressofslavenodes)

NCF:节点能力文件(Nodecapabilityfile)

NCL:节点能力语言(Nodecapabilitylanguage)

NRC:否定响应码(Negativeresponsecode)

NWL:网络层(Networklayer)

OBD:车载诊断系统(On-boarddiagnostic)

OSI:开放系统互联(Opensysteminterconnection)

PDU:协议数据单元(Protocoldataunit)

PID:受保护的ID(Protectedidentifier)

RSID:响应服务ID(Responseserviceidentifier)

SF:单帧(SingleFrame)

SID:服务ID(Serviceidentifier)

SN:时序号(Sequencenumber)

SRF:从节点响应帧(Slaveresponseframe)

STmin:连续帧最小时间间隔(Separationtimeminimum)

4约定

本文件(所有部分)和ISO14229-7基于OSI服务惯例(见ISO/IEC10731)中规定的惯例,因为它们适

用于物理层、协议、网络和传输协议以及诊断服务。

5网络管理

网络管理的一般信息

LIN网络中的网络管理仅涉及到网络的唤醒和休眠。其他网络管理特性,如,配置检测和跛行回家

(Limp-home)管理应由应用处理。

LIN节点通信状态图

图2中的状态图表示LIN通信状态的行为模型:

——总线休眠:首次连接到供电电源后以及系统初始化,复位或主节点发送了休眠指令,或从节

点接收到休眠指令,会进入总线休眠状态。总线状态被置为隐性。在网络中只能发送总线唤

醒信号;

——运行中:本文件中规定的协议行为(发送和接收帧)只应用于运行状态。

注:LIN总线休眠状态未必与节点电源状态有关。

4

GB/TXXXXX—XXXX/ISO17987-2:2016

接收到唤醒信号

内部原因需要唤醒网络

总线休眠运行中

发送/接收到休眠指令

总线静默4到10s

图2LIN节点通信状态图

唤醒

5.3.1唤醒一般信息

LIN网络休眠时,任意节点可以通过发送唤醒信号请求唤醒。唤醒信号以强制总线变为显性状态250

μs到5ms开始,直到收到总线信号总线变为隐性状态,该唤醒信号可视为有效。

5.3.2主节点生成唤醒

主节点可以发出间隔场,例如通过发出普通帧头,中断充当唤醒信号(在这种情况下,主节

点应明确该报文可能不会被从节点处理,因为从节点可能还未唤醒以及还未准备好监听LIN帧头)。

每一个从节点(连接到电源)应检测唤醒信号(一个大于150μs的显性脉冲,接下来是总线信

号上升沿)并且在100ms内准备好监听总线命令,计算起点为显性脉冲的结束边沿,如图3。上升沿的

检测应由收发器执行,也可以由微控制器LIN接口执行。

150μs的检测阈值加上250μs的脉冲生成构成的检测时间,对于未标定的从节点是足够的。

检测到唤醒脉冲后,从节点任务机(见GB/TXXXX.3中7.5.3)应开始进入空闲状态。空闲状态期间,

从节点不应在总线生成显性脉冲,直到状态机进入激活状态。

5.3.3从节点生成唤醒

如果发送唤醒信号的节点是从节点,应立即准备好接收或发送帧。主节点也应唤醒并且在从

节点准备好后(>100ms),开始发送帧头去找到唤醒的原因(使用的信号)。

图3从节点唤醒信号接收

5

GB/TXXXXX—XXXX/ISO17987-2:2016

主节点应检测唤醒信号(一个大于150μs的显性脉冲,接下来是总线信号上升沿)并且在网

络设计者或应用特定的时间内准备好开始通信。上升沿的检测应由收发器执行,也可以由微控制器LIN

接口执行。

如果主节点不发送间隔场(比如开始发送报文)或如果生成唤醒信号的节点从发出唤醒信号

后的150ms到250ms,未接收到唤醒信号(从其他节点处),生成该唤醒信号的节点应发送一个新的唤

醒信号,如图4。在从节点发送唤醒信号的同时,主节点发送间隔场,那么从节点应接收并识别该间隔

场。

图4一组唤醒信号

三次(失败)请求后,在节点发出第四次唤醒信号前应等待至少1.5s。设置更长的持续时间的

原因是允许网络进行通信以防发起唤醒的从节点出现故障,例如从节点读取总线状态出现故障,它可能

无限地重发唤醒信号,不限制从节点可以发送多少次唤醒信号,但是,推荐在一次唤醒条件下,从节点

发送不超过一组三次唤醒信号。图5表明唤醒信号在更长的时间内是如何发送的。

图5持续长时间的唤醒信号

休眠

主节点通过发送一条休眠指令使得网络中的每一个节点立即进入总线休眠状态。该请求未必强制

从节点进入低功耗模式。在接收到休眠指令后,从节点的应用可能仍处于激活状态。具体行为是应用特

定的。休眠指令是一条主节点的请求报文,数据场第一字节设置为0016,其他设置为FF16,如表1。从节

点应忽略数据场的第二字节到第八字节,并且只解析第一字节。

表1休眠指令

LIN帧

第一字节第二字节第三字节第四字节第五字节第六字节第七字节第八字节

0016FF16FF16FF16FF16FF16FF16FF16

使得网络进入休眠的常规方式是主节点发送休眠指令。在总线静默状态下,从节点应能够接收/发

送帧达4s。在总线静默状态下,从节点应自动进入总线休眠状态,最早4s,最迟10s。总线静默的定

义是,没有隐性位和显性位的转变。总线激活,则与之相反。

注:LIN收发器通常具备过滤器以去除总线上短时间的尖峰。这里提到的转变是指经过过滤器后的信号。

6

GB/TXXXXX—XXXX/ISO17987-2:2016

6网络层概述

概述

6.1.1本文件规定了一种非确认性网络层通信协议,用于网络节点,如ECU间的,或外部测试设备与

ECU间的数据交换。如果需要传输的数据无法放在一帧LIN报文中,还提供一种分段的方式。

6.1.2为了描述网络层的功能,应将提供给更高层的服务以及网络层的内部操作考虑在内。

6.1.3所有的网络层服务具有相同的基本结构。为了定义这些服务,规定了三种类型的服务原语。

——服务请求原语,用于更高的通信层或应用传递控制信息和数据给网络层;

——服务指示原语,用于网络层传递状态信息以及接收数据给更高的通信层或应用;

——服务确认原语,用于网络层传递状态信息给更高的通信层或应用。

本服务规范不指定应用程序接口,仅包括一系列独立于任何实现的服务原语。

网络层服务格式描述

6.2.1所有的网络层服务具有相同的基本格式。服务原语的书写格式如下:

service_name.type(

parameterA,

parameterB

[,parameterC,…]

)

“service_name”是服务的名称,比如N_USData,“type”指示服务原语的类型,“parameterA,parameter

B[parameterC,…]”是N_SDU作为服务原语传递的一张数值列表。括号指示这部分参数列表可能是空

的。

服务原语定义服务使用者(比如,诊断应用)如何与服务提供者(比如,网络层)合作。如下服务原

语在本文件内有规定(请求,指示,确认):

——使用服务原语请求(service_name.request),服务使用者从服务提供者请求服务;

——使用服务原语指示(service_name.indication),服务提供者告知服务使用者,网络层的内

部事件或一个对等协议层实体服务使用者的服务请求;

——服务原语确认(service_name.confirm),服务提供者告知服务使用者,服务使用者此前的服

务请求结果。

网络层内部操作

网络层内部操作提供了分段和重组的方法。网络层的主要目的是传输帧,这些帧可能可以,也可能

无法放在一帧LIN报文中。对于无法放在一帧LIN报文中的帧会分段为多个部分,每一个部分都可以放

在一帧LIN报文中。

图6和图7分别表示不分段帧传输和分段帧传输的例子。

7

GB/TXXXXX—XXXX/ISO17987-2:2016

图6不分段帧传输示例

图7分段帧传输示例

服务数据单元说明

在下面的子句中,描述了LIN网络层业务使用的所有网络层业务参数。

6.4.1N_AI,地址信息

N_AI描述

N_AI用于识别网络层通信对等实体。N_AI由LINID和N_NAD组成。两个专用的LINID用于任何传输

层协议通信;

ID3C16(主节点请求)分配给主节点用于报文的传输;

ID3D16(从节点响应)分配给从节点用于报文的传输;

由于节点类型(主节点或从节点)对于LIN网络中所有的节点是始终固定的,6.5.1服务原语参数对

LINID使用没有限制,但本文件为每一个节点做了分配;

此外,N_NAD包含了由请求/响应寻址的从节点以及寻址类型(物理寻址、功能寻址、广播式)。

这些参数提到了寻址信息。整体来看,N_AI参数用于识别帧发送端和接收端,以及帧的通信模型

(N_TAtype)。

N_NAD,网络NAD:

8

GB/TXXXXX—XXXX/ISO17987-2:2016

类型:一字节无符号整型值;

范围:0116-FF16;

描述:规定两种通信模式:

——一对一通信,称为物理寻址;

——一对多通信,称为功能寻址或广播寻址。

取决于N_NAD值的通信模式如下:

——0016:不适用,预留用于休眠指令帧;

——0116-7D:物理寻址类型;

——7E16:功能寻址类型;

——7F16:广播寻址类型;

——8016–FF:专用寻址类型。

所有类型的网络层帧都应支持物理寻址。请求得到响应是在预期中的。N_NAD值应始终根据从节点

中配置的NAD进行验证。

功能寻址应仅支持单帧通信。功能寻址请求不应得到响应。只有主节点可以发送功能寻址报文。

所有类型的网络层帧都应支持广播寻址。预期不会得到应答但应支持,即使可能引发冲突。只有主

节点可以发送广播寻址帧。

本文件不会分配NAD值在8016-FF16之间的寻址类型,当使用该范围段的NAD时,应由使用者分配。

6.4.2<Length>

类型:12位。

范围:00116-FFF16。

描述:该参数包括需要发送/接收的数据的长度。

6.4.3<MessageData>

类型:字节串。

范围:不适用。

描述:该参数包括所有的更高层实体交换的数据。

6.4.4<N_Result>

类型:枚举型。

范围:N_OK、N_TIMEOUT_As、N_TIMEOUT_Cs、N_TIMEOUT_Cr、N_WRONG_SN、

N_UNEXP_PDU、N_ERROR、N_UNEXP_NEW_REQ。

描述:该参数包括与服务执行结果相关的状态。如果同时发现两个或更多的错误,那么网络层实体

应使用错误提示中该清单内的首先发现的参数值,提供给更高层:

——N_OK:该值意味着服务执行已经成功完成;可以在发送端和接收端均发送该值给服务使用

者;

——N_TIMEOUT_As:当计时器N_As的计时超过其超时值N_Asmax时,应在发送端发送该值

给服务使用者;

——N_TIMEOUT_Cs:当计时器N_Cs的计时超过其超时值N_Csmax时,应在发送端发送该值

给协议使用者;

9

GB/TXXXXX—XXXX/ISO17987-2:2016

——N_TIMEOUT_Cr:当计时器N_Cr的计时超过其超时值N_Crmax时,应在发送端发送该值给

服务使用者;

——N_WRONG_SN:当接收到非预期的序列号(N_PCI.SN)时,应发送该值给服务使用者;只能

在接收端发送该值给服务使用者;

——N_UNEXP_PDU:当接收到非预期的协议数据单元时,应发送该值给服务使用者;可以在接

收端或发送端发送该值给服务使用者;

——N_ERROR:该参数为一般性错误值。当网络层检测到错误,并且没有更适合的描述该错误

的参数值时,可以发送该值给服务使用者;

——N_UNEXP_NEW_REQ:该值在如下场景下发送:

a)当接收到新的更高优先级的N_USData.request请求服务调用时,会以N_USData.indication()

的参数的形式,发送该值给激活的诊断通信中更低优先级的服务;

b)由于当前激活的诊断通信中服务优先级更高,导致N_USData.request请求无法被接收;

c)当接收到新的相同优先级的N_USData.request请求服务调用时,可以发送该值给服务使

用者。

网络层提供给更高层的服务

6.5.1网络层服务原语规范

服务接口定义了一系列的服务,用于访问网络层提供的功能,如发送/接收数据和设置协议参数。

如下定义的通信服务,最多可以传输4095字节的数据:

a)N_USData.request:该服务用于请求传输数据。如果必要的话,网络层会把数据分段;

b)N_USData_FF.indication:该服务用于向上层指示开始接收分段帧;

c)N_USData.indication:该服务用于向上层提供接收的数据;

d)N_USData.confirm:该服务用于向上层确认请求的服务已经被执行(成功或失败)。

6.5.2N_USData.request

该服务原语请求从发送端到接收端对等实体发送内容为<MessageData>,长度为<length>字节。根据

N_NAD中的地址信息识别(见参数定义)。

每次调用N_USData.request服务,网络层应通过生成N_USData.confirm服务调用,向服务使用者指

示报文发送完成(或失败)。

N_USData.request(

N_NAD

<MessageData>

<Length>

)

6.5.3N_USData.confirm

N_USData.confirm服务由网络层生成。该服务原语确认已完成N_USData.request服务,通过N_NAD

中的地址信息识别。参数<N_Result>提供服务请求的状态(见6.4.4参数定义)。

N_USData.confirm(

N_NAD

<N_Result>

10

GB/TXXXXX—XXXX/ISO17987-2:2016

)

6.5.4N_USData_FF.indication

N_USData_FF.indication服务由网络层生成。该服务原语提示相邻的上层,从对等协议实体接收到

分段帧的首帧,通过N_NAD中的地址信息识别(参考参数定义),该提示信息应在接收到分段帧的

首帧时发出。

N_USData_FF.indication(

N_NAD

<Length>

)

N_USData_FF.indication服务之后应始终是网络层的N_USData.indication服务调用,提示报文接收的

完成(或失败)。

如果接收到一个正确的首帧,那么N_USData_FF.indication服务调用只应由网络层生成。

如果网络层在首帧中检测到任何类型的错误,网络层应忽略该帧,并且不应向相邻的上层生成

N_USData_FF.indication。

如果网络层接收到的首帧长度值为(FF_DL),超出了可用的接收方缓冲区大小,这种情况应视为错

误状态,并且不应向相邻的上层生成N_USData_FF.indication。

6.5.5N_USData.indication

N_USData.indication服务由网络层生成。该服务原语向相邻的上层提示<N_Result>事件,并传递

从对等协议实体接收到的,长度为<Length>字节的<MessageData>信息,通过N_NAD中的地址信息识别

(参考参数定义)。

参数<MessageData>和<Length>,仅在<N_Result>等于N_OK时有效。

N_USData.indication(

N_NAD

<MessageData>

<Length>

<N_Result>

)

N_USData.indication服务调用在接收到单帧报文时生成,或者接收分段帧完成(或失败)时作为提示

信息生成。

如果网络层在单帧报文中检测到任何类型的错误,网络层应忽略该帧,并且不应向相邻的上层生成

N_USData.indication。

7传输层

协议功能

传输层协议执行如下功能:

——发送/接收帧,最多4095数据字节;

——报告发送/接收完成/失败。

11

GB/TXXXXX—XXXX/ISO17987-2:2016

单帧传输

图8表示单帧的传输,称为LIN帧,由8个字节组成(字节1到字节8),字节1=N_NAD,字节2=N_PCI,

字节3…字节8=N_Data。单帧(见7.4.2)实际帧负载场最多6个数据字节(见8.3)。

图8单帧传输示例

多帧传输

发送更长的帧通过帧分段为多个LIN帧执行(发送多个N_PDU)。接收更长的帧通过接收多条LIN帧

(N_PDU)执行,并且将接收到的数据字节(串联)重组为一条帧。多个N_PDU称为首帧(对于帧的第一个

N_PDU)和连续帧(对于所有接下来的N_PDU)。

长度超过一条单帧N_PDU允许字节数目的帧,会被分段为:

——一个首帧协议数据单元(FFN_PDU),包含字节1=N_NAD,字节2+字节3=N_PCI,字节4..

字节8=N_Data。首帧(见7.4.3和8.3)的实际负载段为5个数据字节;

——一个或更多连续帧协议数据单元(CFN_PDU),包含字节1=N_NAD,字节2=N_PCI,字节3..

字节8=N_Data。连续帧(见7.4.4和8.3)的实际负载段为6个数据字节。最后一帧连续帧

N_PDU包含剩余的有效负载数据字节N_Data。最后一帧连续帧N_PDU中未使用的数据字

节应填充FF16。

图9表示在发送端分段和接收端重组。

12

GB/TXXXXX—XXXX/ISO17987-2:2016

图9多帧传输示例(分段和重组)

报文长度在首帧N_PDU中发送。所有的连续帧N_PDU会在发送端编号,以支持正确的发送顺序验

证。

主节点应用层应与从节点能力相符合。可以通过调度表设计实现,调度模式(仅诊断vs.交叉模式)

或通过应用特定的调度控制。接收从节点的传输层不遵守STmin。

从节点的能力定义如下:连续帧最小时间间隔(STmin)是主节点在发送首帧和第一帧连续帧以及两帧

连续帧之间,应等待的最小时间。当支持传输层通信时,该间隔时间对于每一个从节点(LDF/NCF)是静

态指定的。STmin的测量从发送完成连续帧之后开始,到发送下一帧连续帧请求时结束。

从节点不应关注主节点(STmin)的能力,因为这是主节点应用层应用对应调度的能力。

适用所有节点的能力需求为:每次发送方/接收方从发送方/接收方等待N_PDU,超时机制使得可以

检测到发送失败(见7.6.2)。

传输层协议数据单元

7.4.1协议数据单元类型

网络层不同节点对等协议实体间通信通过交换N_PDU完成。

本文件规定了三种不同类型的传输层协议数据单元:

——单帧(SFN_PDU);

——首帧(FFN_PDU);

——连续帧(CFN_PDU)。

用于在对等网络层实体间建立通信路径、交换通信参数、发送使用者数据以及释放通信资源。

7.4.2SFN_PDU

13

GB/TXXXXX—XXXX/ISO17987-2:2016

SFN_PDU通过单帧协议控制信息(SFN_PCI)识别。SFN_PDU应由发送网络实体发出,并被所有的

网络实体接收。只有通过N_AI寻址到的唯一的实体,在整个分段帧传输期间应处理该请求。其他未被

寻址到的节点应拒绝挂起中的连接。当可以通过单个的服务请求传递给数据链路层,以及传递不分段帧

时,应发送SFN_PDU以传递服务数据单元。

7.4.3FFN_PDU

FFN_PDU通过首帧协议控制信息(FFN_PCI)识别。FFN_PDU应由发送网络实体发出,并被所有的

网络实体接收。只有通过N_AI寻址到的唯一的实体,在整个分段帧传输期间应处理该请求。其他未被

寻址到的节点应拒绝挂起中的连接。通过FFN_PDU可识别分段帧的第一个N_PDU,由网络发送实体发

送,由接收网络实体接收。接收网络层实体在接收到FFN_PDU时,开始组装分段帧。

7.4.4CFN_PDU

CFN_PDU通过连续帧协议控制信息(CFN_PCI)识别。CFN_PDU传递多个服务数据单元帧数据

(<MessageData>)场(N_Data)。所有发送实体发送的,位于FFN_PDU之后的N_PDU应被编码为CFN_PDU。

接收实体在接收到最后一帧CFN_PDU后,应传递组装后的报文给网络接收实体的服务使用者。CF

N_PDU在分段报文发送期间,应由发送网络实体发出,由唯一的接收网络实体接收。

7.4.5协议数据单元描述

N_PDU格式

协议数据单元(N_PDU)使得网络层一个节点可以与网络层一个或更多节点间数据传递(对等协议实

体)。所有的N_PDU由三个字段组成,见表2。

表2N_PDU格式

地址信息协议控制信息数据段

N_AIN_PCIN_Data

地址信息(N_AI)

N_AI用于识别网络层通信对等实体。在N_SDU-N_NAD中接收到的N_AI信息应被复制并包括在

N_PDU中。如果在N_SDU中接收到的报文数据(<MessageData>和<Length>)太长,需要分段网络层才能

完成帧发送,那么,N_NAD应被复制并包括(重复地)在发送的每一个N_PDU中。

该段包括可以识别交换的帧类型的地址信息,数据交换发生在接收方和发送方之间。

注:地址信息的详细描述,见6.4.1。

协议控制信息(N_PCI)

该段可识别交换的N_PDU的类型,该段也被用于在通信网络层实体间交换其他控制参数。

注:所有的N_PCI参数详细描述,见7.5。

数据场(N_DATA)

14

GB/TXXXXX—XXXX/ISO17987-2:2016

N_PDU中的N_Data用于传输在N_USData.request服务调用,<MessageData>参数中接收到的服务使

用者数据。如果需要,<MessageData>在通过网络发送前,会被分段为更小的部分,每一个部分都可以

放在N_PDU的数据场中。

如果是该帧的SF或最后一个CF,则N_Data的大小取决于N_PDU类型和剩余MessageData的数量。

协议控制信息规范

7.5.1N_PCI

每一个N_PDU通过N_PCI来识别,见表3和表4。

表3N_PCI字节总结

N_PCI字节

N_PDU名称字节#1字节#2

第7~4位第3~0位第7~0位

单帧(SF)N_PCItype=0SingleFrame_DataLength(SF_DL)N/A

首帧(FF)N_PCItype=1FirstFrame_DataLength(FF_DL)

连续帧(CF)N_PCItype=2SequenceNmuber(SN)N/A

表4N_PCI类型值的定义

值描述

单帧(SF)

016对于不分段帧,网络层协议提供一种优化的网络协议实施,帧长度仅嵌入在N_PCI字节。

单帧应用于支持放在一帧LIN报文中传输的帧。

首帧(FF)

116首帧仅应用于支持不能放在一帧LIN报文中传输的帧,比如,分段帧。分段帧的首帧编码

为FF。当接收到首帧时,接收网络层实体应开始组装分段帧。

连续帧(CF)

当发送分段数据时,首帧后面所有的连续帧编码为CF。当接收到连续帧时,接收网络层实

216

体应在接收到整个帧后再组装接收到的数据字节。接收实体在无错误地接收到最后一帧后,

应传递组装后的帧给相邻的上层协议层。

预留

316

该范围段值由本文档预留。LIN不支持流控。

预留

416-F16

该范围段值由GB/T39851.2预留。

7.5.2单帧N_PCI参数定义

单帧N_PCI字节

表5提供了单帧N_PCI字节的概述。

15

GB/TXXXXX—XXXX/ISO17987-2:2016

表5单帧N_PCI字节概述

单帧N_PCI字节

N_PDU名称字节#1

76543210

单帧0000SingleFrame_DataLength(SF_DL)

SingleFrame_DataLength(SF_DL)参数定义

单帧N_PDU中的参数SingleFrame_DataLength(SF_DL)用于规定服务使用者数据字节的数目,见表6。

表6SF_DL值的定义

值描述

无效的

016

该值为无效的。

SingleFrame_DataLength(SF_DL)

116-616

SF_DL被编码为N_PCI字节#1值的低半字节。应分配服务参数<Length>的值。

无效的

716-F16

该范围段值为无效的。

7.5.3首帧N_PCI参数定义

首帧N_PCI字节

表7提供了首帧N_PCI字节的概述。

表7首帧N_PCI字节概述

首帧N_PCI字节

N_PDU名

字节#1字节#2

765432107-0

首帧0001FirstFrame_DataLength(FF_DL)

FirstFrame_DataLength(FF_DL)参数定义

首帧N_PDU中的参数FF_DL用于规定服务使用者数据字节的数目,见表8。

表8FF_DL值的定义

值描述

016-616无效的

该范围段值为无效的。

716-FFF16FirstFrame_DataLength(FF_DL)

分段报文长度编码会得到一个长度为12位的值(FF_DL),规定其最低有效位(LSB)为N_PCI字节#2

16

GB/TXXXXX—XXXX/ISO17987-2:2016

的第“0”位,最高有效位(MSB)为N_PCI字节#1的第“3”位。支持的最大分段帧长度为4095字

节的用户数据。应分配服务参数<Length>的值。

7.5.4连续帧N_PCI参数定义

连续帧N_PCI字节

表9提供了连续帧N_PCI字节的概述。

表9连续帧N_PCI字节概述

单帧N_PCI字节

N_PDU名称字节#1

76543210

连续帧0010SequenceNmuber(SN)

序列号(SN)参数定义

连续帧(CF)N_PDU使用的参数SN规定了如下内容:

——连续帧(CF)按照数字升序排序;

——对于所有的分段帧,序列号从0开始。首帧(FF)该值应分配0。在其N_PCI场并不包

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论