车载诊断标准ISO+15765-2中文_第1页
车载诊断标准ISO+15765-2中文_第2页
车载诊断标准ISO+15765-2中文_第3页
车载诊断标准ISO+15765-2中文_第4页
车载诊断标准ISO+15765-2中文_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、ISO 15765-2(2004)道路车辆控制局域网络诊断第2部分:网络层服务ISO 15765协议,定义了“道路车辆局域网控制器(CAN)诊断”,包含如下几个部分:第一部分:总论。第二部分:网络层服务。第三部分:统一诊断服务具体的执行第四部分:排放相关系统的要求概述ISO15765-2的协议,定义车载诊断系统网络层要求,提供在CAN数据链路层(ISO11898定义)上运行。虽说它最初设计是用在诊断系统上的,它同样适用于其它需要网络层协议的CAN通信系统上。为了达到诊断通信要求,ISO15765协议是基于ISO/IEC 7498和ISO/IEC 10731的开放互联系统基本参考模型建立的。该模

2、型将通信系统分为七层,ISO15765协议映射到该模型上,分层如下:统一的诊断服务(第7层),在ISO 15765-3中定义。网络层(第3层),在ISO 15765-2中定义。CAN服务层(第1,2层),在ISO 11898中定义。如表1所示,表1对应OSI分层,扩展的及法规要求的OBD诊断规定开放互联系统(OSI)分层汽车生产商扩展的诊断服务法规要求的车载诊断系统(OBD)诊断应用用户定义ISO 15031-5应用层ISO 15765-3ISO 15031-5表示层N/AN/A会话层ISO 15765-3N/A传输层N/AN/A网络层ISO 15765-2ISO 15765-4数据链路层IS

3、O 11898-1ISO 15765-4物理层用户定义ISO 15765-4应用层服务是由ISO 15765-3按照ISO 14229-1和ISO 15031-5建立的诊断服务制定的,但ISO 15765-3协议不仅适用于上述的诊断服务项,也适用于大多数的国际标准及汽车生产商规定的诊断服务。网络层服务由该部分的ISO 15765协议定义,并独立于物理层上的操作,物理层仅仅是在法规的OBD上有规定。道路车辆控制器局域网(CAN)的诊断第二部分:网络层1 范围这部分ISO 15765协议描述了在ISO 11898定义的控制其局域网中裁剪的网络协议,用于满足基于CAN的车载网络系统。它是按照ISO

4、14229-1和ISO 15031-5建立的诊断服务制定的,但该部分协议不仅适用于上述的诊断服务项,还适用于车载内部其它的网络通信。该协议描述的是未经最后确认的的通信。2 参考的标准下述的参考文档对于该文档的应用是必不可少的。ISO 11898-1,道路车辆控制器局域网(CAN)第一部分数据链路层及物理信号层ISO/IEC 7498(所有部分),技术信息开放互联系统基本参考模型3 术语,定义和缩略词为编撰该文档目的,这些术语和定义已在ISO 7498中给出,以下缩略词术语同样适用。BS 数据块大小CF 连续帧confirm 确认服务ECU 电子控制单元FC 流控制FF 首帧FF_DL 首帧数据

5、长度FS 流状态indication 指示服务 MType 信息类型N_AE 网络地址扩展N_AI 地址信息N_Ar 网络层时间参数:ArN_As 网络层时间参数:AsN_Br 网络层时间参数:BrN_Bs 网络层时间参数:BsN_ChangeParameter 网络层服务项名称N_Cr 网络层时间参数:CrN_Cs 网络层时间参数:CsN_Data 网络数据N_PCI 网络协议控制信息N_PCItype 网络协议控制信息类型N_PDU 网络协议数据单元N_SA 网络源地址N_SDU 网络服务数据单元N_TA 网络目标地址N_TAtype 网络目标地址类型N_USData 网络层无应答的数据段

6、传输服务项名称NWL 网络层request 应答服务r 接收者s 发送者SF 单帧SF_DL 单帧数据长度SN 顺序号STmin 间隔最短时长4 网络层总览4.1 概述该项主要描述网络层总体的功能。该部分的ISO 15765协议定义了未最后确认的网络层通信协议。该协议用于网络节点之间数据交互,例如从一个ECU到另一个ECU,或外部诊断设备和一个ECU之间的通信。如果要传送的数据超过了单个的CAN帧长度,则需要提供拆分的方法。为描述网络层的功能,它提供给高层的服务项及内部操作必须予以研究。4.2 网络层提供给高层的服务项该服务项接口定义了一些由网络层提供使用服务项,例如,数据发送、数据接收及协议

7、参数设置。已定义了两种类型的服务:a) 通信服务项以下定义的服务项,使发送者最多能发送4095个字节的数据。1) N_USData.request该服务项用于请求发送数据。如果有必要的话,网络层拆分这些数据。2) N_USData_FF.indication该服务项用于通知上层被拆分的信息的首帧的接收。3) N_USData.Indication该服务项用于提供接收的数据至上层。4) N_USDfirm该服务项用于确认应答给上层,表示请求服务项已经被执行(成功执行或不成功执行)。b) 协议参数设置服务项以下定义的服务项,使之能够对协议参数动态设置。1) N_ChangeParamter.req

8、uest该项服务用于对特定内部参数的动态设置的请求2) N_ChangePfirm3) 该服务项用于确认应答给上层,表示修改协议特定项的请求已经被执行(成功执行或不成功执行)。4.3 网络层的内部操作 网络层的内部操作为实现对等实体间的通信提供了分段、重组、数据传输流控制方法。网络层主要的任务是传递一帧或大于一帧的数据信息。超过一帧的信息被分成多个部分,每一个部分都以一个CAN帧的形式被发送。图1显示的是未被拆分的信息的传送的例子。图2显示的是被拆分的信息传送的例子流控制用来使发送端适应接收端网络层的接收能力。该流控制策略同样适用于诊断网关和通信子网。5 网络层服务项5.1 总览所有的网络层服

9、务项有统一的结构。为了定义这些服务项,三类主要的服务项说明如下:请求服务,被更高的通信层或应用层使用,用于向网络层传递控制信息及要发送的数据;指示服务,被网络层使用,用于向更高通信层或应用层传递状态信息及接收到的数据;确认服务,被网络层使用,用于向更高通信层或应用层传递状态信息。这些服务说明没有指定具体的应用程序接口,而只是一些独立于具体实施的主要服务项。所有的网络层服务项有统一的结构形式,服务项写成如下的形式:service_name.type ( parameter A, parameter B, parameter C, )这里,“service_name”是指服务项名称,例如,N_SD

10、U,“type”指示了服务项的类型,“parameter A,parameter B,parameter C,”则是N_SDU服务项传递的值。服务项定义了如何使服务的使用者(例如,诊断应用层)如何与服务的提供者(例如,网络层)协同运行。以下服务项已在国际标准中说明,请求,指示和确认。使用请求服务项(service_name.request),服务使用者向服务提供者请求一项服务。使用指示服务项(service_name.indication),服务提供者通知服务使用者网络层的一个内部事件或者一个对等实体的服务使用者的服务请求。通过确认服务项(service_name.confirm),服务提供者

11、通知服务的使用者,之前服务使用者请求服务的结果。5.2 网络层服务说明5.2.1 N_USData.request该请求服务项是请求传递<MessageData>数据及<Length>字节数,从发送者到到对等实体接收者,通过在N_SA,N_TA,N_TAtype及N_AE中的地址信息确认。(参看5.3对参数的定义)。N_USData.request服务项每次被启动,网络层应当通过一条N_USData.confirm服务通知服务使用者信息传递的完成情况。(成功或失败)N_USData.request ( Mtype N_SA N_TA N_TAtype N_AE(可选的)

12、 <MessageData> <Length> )5.2.2 N_USData.confirm N_USData.confirm服务项由网络层发送,该服务项用于确定N_USData.request服务的完成情况,通过在N_SA,N_TA,N_TAtype及N_AE中的地址信息确认。参数<N_Result>提供请求服务项的状态。(参看5.3对参数的定义)N_USData. confirm( Mtype N_SA N_TA N_TAtype N_AE(可选的) <N_Result> )5.2.3 N_USData_FF.indicationN_USD

13、ata_FF. indication服务项由网络层发送。该服务项用于通知相邻上层接收到对等实体首帧数据已经到了。通过在N_SA,N_TA,N_TAtype及N_AE中的地址信息确认。(参看5.3对参数的定义)这个指示项发生在接收到拆分数据首帧的时刻。N_USData_FF.indication ( Mtype N_SA N_TA N_TAtype N_AE(可选的) <Length> ) N_USData_FF. indication指示服务项发送完,网络层应当总是紧跟着发送一个N_UDSData.indication服务项,指示信息接收的完成情况。(成功或失败)N_USData_

14、FF. indication指示服务项应当至友网络层发送指示信息段的首帧是否被正确接收。如果网络层监测到首帧中任何类型的错误,该信息应当被网络层忽略,并且N_USData_FF. indication指示服务项不应当被发送至相邻的上层。 如果网络层接收到首帧中数据长度项的值(FF_DL)大于接收者缓冲区的数据,这应当被认为是一个错误的条件并且N_USData_FF. indication指示服务项不应当被发送至相邻的上层。5.2.4 N_USData.indicationN_USData.indication服务项由网络层发送。该服务项指示<N_Result>事件并传递<Le

15、ngth>字节数的<MessageData>至相邻的上层。这些信息通过同等实体间通过存放于 N_SA,N_TA,N_TAtype及N_AE中标识的地址信息接收过来的。当<N_Result>值为N_OK时,<MessageDate>及<Length>参数信息才有效。N_USData.indication ( Mtype N_SA N_TA N_TAtype N_AE(可选的) <MessageData> <Length> <N_Result> )N_USData.indication服务项是在接收到单帧(S

16、F)信息或是指示拆分信息接收的完成时发送。 如果网络层检查到单帧中任何类型的错误,该条单帧信息应当被忽略并且N_USData_FF. indication指示服务项不应当被发送至相邻的上层。5.2.5 N_ChangeParameters.request该服务项用于请求本地实体内部参数的修改。<Parameter_Value>参数值分配给<Parameter>参数(参看5.3对参数的定义)。对参数总是可以修改的。特殊情况是在应用层接收到首帧的指示服务项(N_USData_FF.indication)到接收(N_USData.indication)服务项之间的时刻。N_C

17、hangeParameters.request ( Mtype N_SA N_TA N_TAtype N_AE(可选的) <Parameter> <Parameter_Value> )这是一个可选服务项,可被固定的参数值实施代替。5.2.6 N_ChangeParameters.confirm该服务项用于确认N_ChangeParameter.Confirmation运用信息的完成情况,这信息通过在N_SA,N_TA,N_TAtype及N_AE中的地址信息标识。N_ChangeParameter.confirm ( Mtype N_SA N_TA N_TAtype N_

18、AE(可选的) <Parameter> <Result_ChangeParameter> )5.3 服务项数据单元说明5.3.1 Mtype, Message type类型:枚举类型范围:诊断,远程诊断描述:参数Mtype用于确定服务相中信息参数的类型及范围。该部分的ISO 15765协议指定了两个值标识这个参数。文档使用者可通过指定其它的类型,也可通过文档中网络层使用的其它地址信息参数的组合来扩展这些值的范围。每新定义的一套地址信息,Mtype应当赋予新值,标识新的地址信息。如果Mtype = 诊断,N_AI地址信息应当包含参数N_SA,N_TA,和N_TAtype。

19、如果Mtype = 远程诊断,N_AI地址信息应当包含参数N_SA,N_TA,和N_TAtype,和N_AE。5.3.2 N_AI,地址信息5.3.2.1 N_AI描述该参数指的是地址信息。总的来说,N_AI参数用于确定信息发送者和接收者的源地址(N_SA),目标地址(N_TA),也包含确定(N_TAtype)和可选择地址扩展(N_AE)的通信模式。5.3.2.2 N_SA网络源地址类型:1字节的无符号整数范围:00-FF 16进制描述:N_SA参数代表发送者网络层实体5.3.2.3 N_TA,网络目标地址类型:1字节的无符号整数范围:00-FF 16进制描述:N_SA参数代表接收者网络层实体

20、5.3.2.4 N_TAtype,网络目标地址类型类型:枚举类型范围:物理的,功能的描述:N_TAtype参数是对N_TA参数的扩展。它被网络层对等实体使用,代表通信模式。两种通信模式说明如下:1对1的通信,称为物理地址,1对多的通信称为功能地址。物理地址(1对1通信)网络层所有类型的信息都支持。功能地址(1对多通信)仅仅对单帧的通信支持。5.3.2.5 N_AE,网络地址扩展类型:1字节的无符号整数范围:00-FF 16进制描述:N_AE参数用于在大的网络上扩展现行的地址范围,用于子网中发送与接收网络层实体而不是本地网的通信。若Mtype设置为远程诊断时,N_AE仅仅是地址信息的一部分。5.

21、3.3<Length>类型: 12个bit位范围: 1-4095描述:该参数包含要发送或接收的数据长度。5.3.4<MessageData>类型:字符串范围:不固定描述:该参数包含与上层实体所有交互的数据5.3.5<Parameter>类型:枚举类型范围:STmin, BS描述:该参数确定网络层的参数5.3.6<Parameter_Value>类型:1字节无符号整数范围:0-255描述:该参数分配给协议参数<Parameter>作为指示服务。5.3.7<N_Result>类型:枚举类型范围:N_OK, N_TIMEOUT_

22、A, N_TIMEOUT_Bs, N_TIMEOUT_Cr, N_WRONG_SN,N_INVALID_FS, N_UNEXP_PDU, N_WFT_OVRN, N_BUFFER_OVFLW, N_ERROR描述:该参数包含服务项执行的结果状态。如果同时产生了两个或以上的错误,网络层应该使用下列错误指示中首先找到的参数值,发送给高层。N_OK 该值表示服务执行完全正确;它可同时由发送者和接收者发送至服务的使用者。N_TIMEOUT_A 该值在定时器N_Ar/N_As超过了定时值N_Asmax/N_Armax,发送给服务的使用者;它可同时由发送者和接收者发送至服务的使用者。N_TIMEOUT_B

23、s 该值在定时器N_Bs超过了定时值N_Bsmax,发送给服务的使用者;它仅能由发送者发送至服务的使用者。N_TIMEOUT_Cr 该值在定时器N_Bs超过了定时值N_Crmax,发送给服务的使用者;它仅能由接收者发送至服务的使用者。N_WRONG_SN该值在接收到意外的连续的数值(PCI.SN)时被发送至服务使用者;它仅能由接收者发送至服务的使用者。N_INVALID_FS该值在从流控(FC)N_PDU接收到无效的或未知的流状态值时发送至服务的使用者;它仅能由发送者发送至服务的使用者。N_UNEXP_PDU该值在接收到未知协议数据单元时发送给服务使用者,它仅能由接收者发送至服务的使用者。N_

24、WFT_OVRN该值在接收到流控WAIT帧超过最大计数N_WFTmax时发送至服务使用者。N_BUFFER_OVFLW该值在接收到流控(FC)N_PDU状态Flow = OVFLW时发送给服务的使用者。它用于指示接收者缓冲区无法存储首帧中数据长度(FF_DL),因此,该拆分数据的传递被丢弃。它仅能由发送者发送至服务的使用者。N_ERROR 这是一个默认的错误值。它是当检测到网络层错误并且没有其它更好的参数描述该项错误时使用发送到服务使用者。它可同时由发送者和接收者发送至服务的使用者。5.3.8 <Result_ChangeParameter>类型: 枚举类型范围:N_OK, N_R

25、X_ON, N_WRONG_PARAMETER, N_WRONG_VALUE描述:该参数包含服务执行的结果状态信息N_OK 该值表示服务执行完全正确;它可同时由发送者和接收者发送至服务的使用者。N_RX_ON该值发送给服务使用者指示虽然<AI>标识的信息接收到了,但服务没有执行。它仅能由接收者发送至服务的使用者。N_WRONG_PARAMETER该值发送给服务的使用者表示由于未定义的<Parameter>,服务没有执行;它可同时由发送者和接收者发送至服务的使用者。N_WRONG_VALUE 改制发送给服务的使用者表示由于<Parameter_Value>超出

26、范围,服务没有执行,它可同时由发送者和接收者发送至服务的使用者。6 网络层协议6.1 协议功能网络层协议协议有如下功能:a) 发送/接收最多4095个字节的数据信息b) 报告发送/接收完成状态。6.2 单帧发送(扩展及混合地址情况下)最多发送6字节或(正常地址情况下)7字节数据,按照N_PDU格式发送信息,称为单帧(SF)见图3.最多6或7字节的接收通过N_PDU制式,图3 未拆分数据的例子6.3 多帧发送长信息的发送通过拆分信息并通过多个N_PDU发送的形式。长信息的接收通过接受多个N_PDU并通过重组这些接受的数据。这多个N_PDU包括首帧(信息中第一个N_PDU)及连续帧(剩下的所有N_

27、PDU)。多N_PDU信息接收者有条件按照它自己的接收能力通过使用流控协议数据单元(FC N_PDU)的流控机制调整传输流量。一个首帧协议数据单元(FF N_PDU),包括(扩展及混合地址情况下)5字节或(正常地址情况下)6字节数据。一个多更多连续帧协议数据单元(CF N_PDU),包括6或7字节数据。CF N_PDU包括剩下的字节数据,因此可以少于6或7字节的长度。图4显示的是发送端拆分及接收端重组信息的例子说明:接收方发送的FC N_PDU用于应答FF N_PDU,这在图中没有显示。图4拆分与重组信息的长度在首帧(FF N_PDU)中被发送。所有的连续帧(CF N_PDU)都被发送方编号,

28、提供接收方以同样的顺序重组这些信息。接收方通过流控机制(见图5)通知发送方接收能力。由于不同的节点有不同的接收能力,发送方发送的流控通知接收方,接收方才能调整以适应发送方接收能力。该接收能力如下定义:块大小(BS):在授权继续发送其余的N_PDU之前,接收方允许发送方最大的N_PDU个数。间隔最短时长(STmin):发送方在发送两个连续帧间隔等待的最短时间。图5 流控机制除了最后一个所有的块都包含BS N_PDUs。最后一个块包含剩余的N_PDUs(<=BS)。每一个发送者/接收者等待对方的N_PDU时,一个超时机制可用来检查发送失败。通过 FC N_PDUs,接收者有权控制CF N_P

29、DUs,用于延时对方的发送及当拆分数据超过接收者缓冲区的时候,拒绝接收。FC.CTS:继续发送,授权继续发送FC.WAIT:请求继续等待FC.OVFLW:缓冲溢出,用于指示拆分数据的首帧中字节个数信息超过了接收者可存储的信息总量。FC.WAIT的值有个最大限值:N_WFTmax。该参数是系统的常数,且不会在首个 FC N_PDU中发送。6.4 网络层协议数据单元6.4.1 协议数据单元类型不同节点的网络层实体通过交互N_PDUs实现通讯。该协议说明了网络层协议数据单元四种类型单帧(SF N_PDU),首帧(FF N_PDU),连续帧(FC N_PDU)这些用于建立网络层对等实体通信,交互通信参

30、数,传递通信数据及释放通信资源。6.4.2 SF N_PDUSF N_PDU通过单帧协议控制信息(SF N_PCI)来标识,SF N_PDU应当由发送网络实体发送至一个或多个接收网络实体。它应当通过单个的服务请求,传递服务数据及未拆分信息。6.4.3 FF N_PDUFF N_PDU通过首帧协议控制信息(FF N_PCI)来标识,FF N_PDU应当由发送网络实体在拆分数据发送期间,发送至特定的接收网络实体。它用于标识拆分数据首帧。接收网络实体在接收到FF N_PDU时,需重组这些拆分的信息。6.4.4 CF N_PDUCF N_PDU由连续帧协议控制信息标识(CF N_PCI)。CF N_P

31、DU传递服务数据<MessageData>的每个段(N_Data)。发送实体发送所有的N_PDUs时,FF N_PDU之后编码成CF N_PDUs。接收实体在接收到最后一个CF N_PDU时,重组这些信息并传递至服务的使用者。CF N_PDU应当由发送网络实体在拆分数据发送期间,发送至特定的接收网络实体。6.4.5 FC N_PDUFC N_PDU由流控协议控制信息(FC N_PCI)标识。FC N_PDU指示发送网络实体对CF N_PDUs的开始,停止或重传。它应当由接收网络层实体在准备好接收更多数据时,发送至发送网络层实体,在接收到如下情况的帧时a) FF N_PDU,或者b)

32、 一组连续帧的最后一个FF N_PDU,如果另外的一组连续帧需要被发送的话。FC N_PDU也能在拆分数据发送期间,通知发送网络层实体暂停CF N_PDUs的发送或者在检测到首帧中数据(FF_DL)字长超过接收实体的缓冲区时,中止发送。6.4.6 协议数据单元域描述6.4.6.1 N_PDU 格式协议数据单元(N_PDU)使数据在两个或多个对等网络节点之间传递。所有的N_PDUs包含了3个域,如下表2所示。表2 N_PDU格式地址信息协议控制信息数据域N_AIN_PCIN_Data6.4.6.2 地址信息(N_AI)N_AI用于标识对等网络实体间的通信。N_AI信息在N_SDUN_SA, N_

33、TA, N_TAtype, N_AE中接收,应当复制包含在P_PDU中。如果接收到的N_SDU中<MessageData>及<Length>信息很长,需要网络层拆分这些数据以发送完整的信息,N_AI应当被复制并包含在每一个要发送的N_PDU中。该域包含地址信息标识交互信息类型,数据交互的接收方和发送方。地址信息包含信息地址。注意:更详细的地址信息的描述,看5.3.26.4.6.3 协议控制信息(N_PCI)该域标识交互的N_PDUs的类型。它也用来交互在网络层对等实体通信的其它控制参数。注意: 所有N_PCI参数更详细的说明见6.56.4.6.4 数据域(N_Data)

34、N_PDU中的N_Data用于发送在<MessageData>参数中从服务使用者使用N_USData.request服务接收的数据。如果必要的话,会在网络发送之前拆分为更小的部分,以适应N_PDU数据域。N_Data的大小依赖N_PDU的类型及地址格式的选取。6.5 协议控制信息说明6.5.1 N_PCI所有的N_PDU通过N_PCI来标识,见表3及图4表3 N_PCI字节概要N_PDU名N_PCI字节字节1字节2字节37 4位3 0位单帧(SF)N_PCItype = 0SF_DLN/AN/A首帧(FF)N_PCItype = 1FF_DLN/A连续帧(CF)N_PCItype

35、= 2SNN/AN/A流控(FC)N_PCItype = 3FSBSSTmin表4N_PCItype值的定义16进制值描述0单帧对于未拆分的信息,网络层提供了一个优化的网络协议,即将信息长度值仅放置在PCI字节里。单帧(SF)应当能支持在单个CAN帧中的信息传输。1首帧首帧只支持一条信息无法在单个CAN帧中发送时使用。例如,拆分的信息。拆分信息的第一帧编码为FF,在接收到FF时,接受网络层实体应重组这些信息。2连续帧当发送拆分数据时,所有的连续帧跟着FF编码为连续帧(CF)。在接收到一个连续帧,接受网络层实体应当重组接收到的数据字节直到整个信息被接收到。接收实体在接收最后一帧信息并无接收错误之

36、后,应传递这些信息到相邻的上层。3流控帧流控制的目的是调整CF N_PDUs发送的速率。流控协议数据单元的3种类型用于支持这些功能。这些类型由协议控制信息的流状态(FS)域指示。4 - F保留该范围的值为该协议保留。6.5.2 单帧N_PCI参数定义6.5.2.1 SF N_PCI 字节表5给出了SF N_PCI字节总览表5 SF N_PCI字节总览N_PDU名字SF N_PCI byteByte 176543210单帧0000SF_DL单帧数据长度(SF_DL)参数在SF N_PDU中用于指明服务使用者的字节数。看表6表6 SF_DL值的定义16进制值说明0保留该范围的值为该协议保留。1 6

37、单帧数据长度值(SF_DL)SF_DL应编码在N_PCI字节低位,并分配服务参数<Length>的值。7单帧数据长度(SF_DL)中标准地址SF_DL = 7时,只允许标准地址8 - F无效的该范围值无效6.5.2.2 SF_DL出错处理如果网络层接收到一个SF_DL=0的单帧(SF),网络层应当忽略接收SF N_PDU。如果网络层接收到使用标准地址且一个SF_DL大于7的单帧,或大于6且使用扩展或混合地址时,网络层应当忽略该SF N_PDU。6.5.3 首帧N_PCI参数定义6.5.3.1 FF N_PCI字节表7 给出了一个FF N_PCI字节总览表7 FF N_PCI字节总览

38、N_PDU名字FF N_PCI byteByte 1Byte 276543210首帧0001FF_DL6.5.3.2 首帧数据长度(SF_DL)参数定义FF N_PDU中的参数FF_DL用于说明服务使用者数据字节数。如表8所示,16进制数说明0 6无效的该范围值无效7首帧数据字节(FF_DL)支持扩展地址及混合地址FF_DL = 7 只允许扩展地址及混合地址8 - FFF首帧数据字节(FF_DL)拆分信息在12个位的长度(FF_DL)上编码,并N_PCI字节2中最低位置位“0”,N_PCI字节1中最高位置为“3”。拆分信息最大数据长度支持4095个用户数据。该数据当被分配到服务参数<Le

39、ngth>中。6.5.3.3 FF_DL 出错处理如果网络层接收到FF_DL大于接收方缓冲区的首帧时,应当被认为是错误情况。网络层应当放弃该信息的接收,并且发送包含参数FlowStatus = Overflow的FC N_PDU。如果网络层接收到FF_DL小于8并且使用标准地址,或小于7并且使用扩展地址或混合地址时,网络层应当忽略该首帧并且不必发送一个FC N_PDU。6.5.4 连续帧N_PCI参数定义6.5.4.1 CF N_PCI字节表9 给出了一个CF N_PCI字节总览表9 CF N_PCI字节总览N_PDU名字CF N_PCI byteByte 176543210连续帧001

40、0SN6.5.4.2 连续帧参数(SN)定义CF N_PDU中参数SN用以说明连续帧的顺序。对于所有拆分信息,SN开始于0。FF应当分配值0,它不是明确地包含在N_PCI域中,但应当按拆分信息顺序号为0。第一个流控帧编号(SN)后的连续帧设置为1;在同一个拆分信息上,每一个新增的连续帧编号(SN)增1;连续帧编号(SN)的值不受流控帧的影响。当连续帧编号(SN)到达值15时,它在下一个连续帧中重置为0;顺序编号如下表10所示表11所示SN值表10SN定义总结N_PDUFFCFCFCFCFCFCFCFSN(hex)01EF01表11SN值定义16进制值描述0 - F连续号(SN)连续号应当在N_

41、PCI字节1的低字位编码。SN设置值范围在0到15.6.5.4.3 SN出错处理如果接收到一个连续号错误的CF N_PDU信息,网络层则进行出错处理。信息的接收被终止,并且网络层发送一个<N_Result>参数=N_WRONG_SN的N_USData.indication指示服务至相邻上层。6.5.5 流控参数N_PCI定义6.5.5.1 流控参数N_PCI类型表12 给出了一个FC N_PCI字节总览表12 FC N_PCI字节总览N_PDU名字FC N_PCI byteByte 1Byte 2Byte 376543210流控帧0011FSBSSTmin6.5.5.2 流状态参数

42、(FS)定义流状态参数(FS)指示发送网络实体是否继续信息的发送。发送网络层实体应当支持所有FS参数规定(不是保留的)的值。表13FS值定义16进制值说明0继续发送(CTS)流控帧继续发送参数,通过编码N_PCI第1字节为“0”,表示继续发送。它会促使发送方重新发送连续帧,该值意味着接收者准备好接收最大BS个连续帧。1等待(WT)流控帧等待参数通过编码N_PCI第1字节为“1”。它会促使发送方继续等待新的流控帧(N_PDU)的到来,并重新设置N_BS定时器。2溢出(OVFLW)流控真溢出参数通过编码N_PCI第1字节为“2”。它会促使发送方中止拆分信息的发送并且做传递参数<N_Resul

43、t>=N_BUFFER_OVFLW的N_USData.confirm指示服务。该N_PCI流控参数值仅能在跟在首帧N_PDU的流控帧中使用,并且仅能在首帧中FF_DL信息的长度超过了接收实体缓冲区大小时使用。3 - F保留该范围的值为该协议保留6.5.5.3 FS出错处理如果接收到的FC N_PDU信息参数出错,网络层进行出错处理。信息的发送被中止,并且网络层传递一个参数<N_Result>=N_INVALID_FS的N_USData.confirm指示服务至相邻的上层。6.5.5.4 块大小(BS)参数定义BS参数应当编码在FC N_PCI字节2中。BS单元存储了 每一块中

44、CF N_PDU的绝对个数。例如 如果块大小=20(十进制)该块应当包含20个CF N_PDU。拆分数据中最后一块连续帧也可能少于BS个帧。表14提供了FC N_PCI字节总览表14 BS值定义16进制值说明00块大小(BS)BS参数为0用于指示发送者在拆分数据的发送期间流控制帧不再发送流控制帧了。发送网络层实体应当不停的发送剩下的连续帧以便接收网络层实体另外的流控帧。01 - FF块大小(BS)该范围的BS参数值用于指示发送方在没有接收网络实体的流控帧期间能发送的最大数目的连续帧。6.5.5.5 间隔时间(STmin)参数定义间隔时间(STmin)参数应当编码在FC N_PCI字节3.该时间

45、在拆分数据发送过程中,由接收实体指定,并且由发送网络实体遵守。STmin参数值指定了连续帧协议数据单元发送的最小时间间隔。表15所示。表15STmin值定义16进制值说明00 - 7F间隔时间(STmin)范围:0ms - 127ms该STmin单元的范围00 - 7F 为绝对单位毫秒(ms)80 - F0保留该范围值为该协议保留F1 - F9间隔时间(STmin)范围100us - 900us该STmin单元的范围F1 - F9最小分编为100微秒(us),参数值F1代表100us,参数值F9代表900us。FA - FF保留该范围值为该协议保留STmin的度量是在一个连续帧发送完开始到请求

46、下一个连续帧时的间隔时长。例如 如果STmin=10(十进制),则连续帧网络协议数据单元最小时间间隔=10ms。6.5.5.6 ST出错处理在拆分数据发送期间,如果FC N_PDU信息接收到ST参数值为保留值,发送网络实体则使用最长的ST值,即(7F - 127ms),而不使用从接收网络实体接收到的值。6.6 FC.Wait帧传递的最大值(N_WFTmax)该变量用于避免在通信发送方出现潜在错误挂起的时候,后者可能会持续等待。该参数用于对等通信并不被传递,因此不包含在FC的协议数据单元里。N_WFTmax参数应当指示一组能有多少个FC N_PDU WT能被接收者接收。N_WFTmax参数的上限

47、由用户根据系统时钟定义。N_WFTmax参数仅由接收网络实体在接收信息的时候使用。如果N_WFTmax参数值设置为0,流控应当继续仅使用FC N_PDU CTS。流控等待(FC N_PDU WT)不应再该网络实体中使用。6.7 网络层定时6.7.1 定时参数图6显示了网络层定时参数,表16定义了网络层定时参数值及它们相应的给予数据链路服务的开始及结束时间。运行要求的数值是是对对等通信的约束,以符合该协议。某个应用应指明规定的运行需求,该范围在表16中定义。定义超时的值应比运行要求的值大保证系统工作且使克服运行需求值在(高总线负载)时,绝对不会满足。指定的超时的值认为是执行的最低限。实际超时的发

48、生不应长于指定超时值+50。网络层在检测到错误的时候应传递合适的服务项至服务的使用者。图6 网络层定制参数置位表16网络层定时参数值定时参数描述数据链路服务超时(ms)运行需求(ms)StartEndN_As发送方CAN帧发送时间(任何N_PDU)L_Data.requestL_Data.confirm1000N/AN_Ar接收方CAN帧发送时间(任何N_PDU)L_Data.requestL_Data.confirm1000N/AN_Bs直至下一个流控帧接收的时间L_Data.confirm(FF)L_Data.confirm(FC)L_Data.indicate(FC)L_Data.ind

49、icate(FC)1000N/AN_Br直至下一个流控帧发送的时间L_Data.indicate(FF)L_Data.confirm(FC)L_Data.request(FC)N/A(N_Br+ N_Ar)< (0.9*N_Bs)N_Cs直到下一个连续帧发送的时间L_Data.confirm(FC)L_Data.indication (CF)L_Data.request(CF)N/A(N_Cs+ N_As)< (0.9*N_Cr)N_Cr直到下一个连续帧接收的时间L_Data.confirm(FC)L_Data.indication (CF)L_Data.indication (CF)1000S 发送者R 接收者6.7.2 网络层超时 表17定义了网络层超时的触发和动作表17 网络层超时出错处理超时触发动作N_As发送方没有及时发送N_PDU放弃信息的接收并传递<N_Result>= N_TIMEOUT_A的N_USData.confirm指示N_Ar接收方没有及时发送N_PDU放弃信息的接收并传递<N_Result>= N_TIMEOUT_A的N_USData.confirm指示

温馨提示

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

评论

0/150

提交评论