首页 > 汽车技术 > 正文

新能源汽车通信之CAN与CANFD

2022-05-10 20:41:16·  来源:新能源汽车家园  
 
CAN是Control Area Network的缩写,是ISO国际标准化的串行通信协议。1986年由BOSCH开发,之后通过ISO11898及ISO11519进行了标准化。现在广泛的应用于工业自动化

CAN是Control Area Network的缩写,是ISO国际标准化的串行通信协议。1986年由BOSCH开发,之后通过ISO11898及ISO11519进行了标准化。现在广泛的应用于工业自动化、船舶、医疗设备等领域,尤其是汽车领域。


但是近几年随着汽车的功能越来越多,整车上的ECU也越来越多,CAN总线负载率日益升高,已逐渐无法满足人们的使用需求。因此从2011年开始了CANFD协议的开发,目前CANFD正在逐步取代整车上的传统CAN通信。


那么CANFD相比于传统CAN有哪些优势呢?两者的区别又在于哪里?


一、相同点

1、CANFD和传统CAN的总线拓扑是一样的。

图片

CAN总线拓扑

2、传统CAN与CANFD的帧起始(SOF:Start Of frame)相同,都为1个bit的显性电平。


3、传统CAN与CANFD的ACK(Acknowledgement)段和EOF(End Of frame)段相同。

v  ACK Slot: 发送单元发送隐性位1,接收单元发送显性位0。

v  ACK Delimiter:都为1个bit的隐性位。

v  EOF:都为7个bit的隐性位。

图片

CANFD数据帧

v  IFS: Inter frame Space,帧间隔

图片

传统CAN数据帧


二、差异点

2.1仲裁段

2.1.1标准格式

CANFD和传统CAN的基本ID部分相同。

CANFD用RRS代替了传统CAN中的RTR,不支持遥控帧。

传统CAN中RTR表明该帧报文为数据帧还是遥控帧。

v  RRS:Remote Request Substitution

图片

 

2.1.2扩展格式

基本ID、扩展ID、SRR、IDE传统CAN与CANFD相同。

CANFD用RRS代替了RTR。

CANFD新增了FDF和res。

FDF: FD Format,表示该帧报文为CANFD 还是CAN。显性为传统CAN,隐性为CANFD。

Res:Reserve,预留位。



图片


2.2控制段

此部分CANFD相比于传统CAN新增了BRS和ESI,且DLC编码规则也有所改变。

图片

CANFD

(标准格式与扩展格式相同)

                 

图片

 

2.2.1 BRS

BRS(Bit rate Switch),表示位传输速率的切换。隐性切换,显性不切换。

由发送单元发送在非同步的情况下发送的美妙中的位数称为位速率。一个位可分为4段:同步段、传播时间段、相位缓冲段1、相位缓冲段2。

这些段又由称为Tq(Time Quantum)的最小时间单位构成。

图片

段及其作用

CAN-FD 通过改变帧结构和提高位速率等方法成功的提高了数据传输速率。

CAN-FD采用了两种位速率:从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,最高速率可达5Mbps,其余部分为原CAN总线用的速率。

图片

CANFD性能对比

CANFD数据传输速率提高基本原理

图片

CANFD性能对比

2.2.2 ESI

Error State Indicator,表示发送节点的错误状态。

显性主动错误,隐性被动错误。


2.2.3 DLC

Data LengthCode,表明所传输数据的字节长度。

CANFD支持CAN数据帧的编码方式,但两者编码规则略有不同。

图片

DLC编码规则


2.3 数据段

CANFD的数据段字节长度最高可达64bytes,而传统CAN只有5bytes。

 

图片


2.4 CRC段

CANFD的CRC段相比传统CAN新增了stuff count记录填充位的个数,并用Grey Code表示,还增加了奇偶校验位。

CRC校验时,两者校验码所占位数及多项式也不相同。

 

图片


2.4.1位填充

位填充是为了防止突发错误而设定的功能,当同样的电平持续5个bits时,则添加一个bit的反型数据。

    

图片


位填充

2.4.2 Stuff Count

Stuff Count由4个bit组成,其中bit0~2为Grey code计算的结果,Parity为奇偶检验的结果。

图片

Grey Code:CRC区域之前的填充位数除以8,得到的余数进行格雷码计算得到的值(Bit0-2)

奇偶校验:通过格雷码计算后的值的奇偶校验。

图片


2.4.3 CRC

传统CAN的CRC校验码有15位,而CANFD规范中对帧数据长度进行了扩展,对于数据长度小于等于16字节的CANFD帧,采用17位CRC,对于数据长度大于16字节的CANFD帧采用21位CRC。

CANFD和传统CAN CRC校验式采用的多项式不同。

图片


三、总结

1、CANFD可以兼容传统CAN,但传统CAN无法兼容CANFD。

图片


2、CANFD的传输速率和字节长度相比传统CAN可以做的更高。

图片

3、CANFD具备Stuff Count功能,其传输正确率及可靠性更高。

分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25