-
汽车上经典的总线通信方式是使用抗干扰性能特出的CAN报文进行数据传输,但是受限于各种条件限制,诸如波特率,物理特性等,在汽车电子单元增多,车载通信愈发频繁的当下,如何有效提高数据传输速率显得尤为重要。
-
CAN也从经典的8字节CAN报文提高到64字节可变速率的CANFD格式,也能有效提高数据传输速率。
-
根据ISO14229 UDS协议,采用的数据握手一问一答形式,存在明显的不足之处。由于数据传输过程中,数据下载和处理并非同步的,存在着时间差,那么考虑在芯片性能允许的情况下,可采用并行刷写下载方案。
-
简单来说就是,芯片在完成首包数据下载后不必等待首包数据处理完成即可回复响应,在第二包数据传输过程进行上一包数据的处理。这个阶段都是在RAM缓存中运行,处理完成即可写进flash中。
-
实际操作可简单划分为几个任务。data process(解压、解密),verify/compute(计算校验值),flashing烧写,verfiy/compare(验签认证)。进一步地,并行刷写可分为并行编程和并行验签。
-
本并行刷写方案实际上利用的是芯片数据处理与数据传输的空闲时间,若数据传输较慢而芯片对数据处理较快则效果不明显,但是对于现有的1M CAN及5M CANFD速率来说,提速已经足够明显。
-
更为底层的并行刷写做法是对芯片驱动进行改写,因为CAN底层数据接收邮箱一般来说是轮询或中断模式,若对接收FIFO进行一定扩展,相信能更明显提高数据传输速率,以上为本人的一些想法。
CAN/CANFD并行刷写下载方案
于 2022-07-14 23:56:43 首次发布