×

基于XC2300微控制器实现CAN网络安全

消耗积分:0 | 格式:rar | 大小:0.4 MB | 2017-12-06

分享资料个

 XC2300是专门针对汽车安全应用,特别是气囊系统和电动助力转向应用而设计的新型微控制器系列。该产品系列旨在使汽车电子安全系统实现可扩展性、软硬件重复使用以及兼容性。XC2300系列配备高性能中央处理器(CPU)和丰富外设。本文以MultiCAN模块为例,说明如何利用这些特性来支持安全应用,以及如何进一步通过硬件支持来满足对软件及CAN软件的特定安全要求。
  MultiCAN 简介
  MultiCAN是一种经过验证的可扩展模块,这个模块最多可提供四个与ISO 11898完全兼容的独立CAN节点。所有CAN节点均可共享的报文对象的数量多达128个。链表将报文对象分配给特定节点,从而为系统布局提供了极大的灵活性。报文对象通过内部联系,实现自主网关功能。未被分配给特定节点的报文对象可用于FIFO结构。所有节点均支持分析器功能,作为总线无源组件与总线系统连接。
  基于XC2300微控制器实现CAN网络安全
  图1 拥有多达4个独立CAN节点和128个报文对象的XC2300安全产品系列MultiCAN模块
  灵活的FIFO结构
  CAN 节点共享的所有报文对象可分别被单独地分配给特定的链表,而每个链表则被绑定到特定的节点。例如,链表1对应节点0,链表2对应节点1,以此类推。链表0是对应所有未被分配的报文对象的附加链表。这些链表采用双链式链表结构。这种结构为在不同CAN节点上使用报文对象提供了高度灵活性。同时,未被使用的报文对象可用于FIFO结构。而这些FIFO既可被分配给特定的CAN节点,也可被分配给一个未使用节点的链表。由于仅需将输入到节点的报文与分配给该链表的报文对象进行比较,报文对象的判断速度得到提高。当然,需要将FIFO基础报文对象链接到特定的节点链表。
  网关功能
  嵌入式应用中通常有多个CAN网络,以适合该应用的不同速度运行。有些报文需要从一个总线系统传输到另一个总线系统。网关功能对实现上述应用非常有效,而且还有可能将网关和FIFO功能结合起来。例如,在将出现频度很高的报文从高速CAN总线传输到低速 CAN总线时,将网关和FIFO功能结合起来,就有可能在不增加CPU负荷的前提下实现这种报文传输。
  分析器模式
  CAN网络的所有节点通常都采用CAN协议,即对报文做出反应并进行确认。在分析器模式下,CAN节点监听总线,不主动利用协议进行传输。该特性对于多种应用具有价值。例如在不影响总线运行的情况下检测波特率,该特性还可以用于实现对运行中的CAN网络进行热插拔。更多优点包括同步分析和驱动器延时测量。这可用于帧定时测量,并根据物理CAN总线情况调整位定时值。它还能提供所检测到错误的详细信息,便于分析出错原因。比如,上次错误代码(LEC)位域、所有错误计数器的可读性和错误报警级别的灵活下调。
  用于安全应用的分析器模式
  安全应用具有特殊要求,例如在关键路径中增加冗余部件。在CAN网络中,CAN节点和CAN收发器就处于这种关键路径中。通过节点进行的报文传输可能会被阻断,更糟糕的是,总线上其他节点的通信也可能会受到干扰。英飞凌XC2300系列微控制器最多可提供4个独立的CAN节点,并可在多种配置下利用分析器模式进行错误检测。利用2个CAN节点和2个独立的CAN收发器,可检测从物理CAN总线到报文存储器的错误。第二个CAN节点以分析器模式运行,监听总线,不主动利用协议进行传输。这种配置的优点在于,CAN收发器引起的错误也能被检测到。其缺点在于成本。另一种配置是放弃第二CAN收发器,这种配置在成本上更低,但不能检测到收发器引起的错误。在两种配置下,节点均被异步处理,原因是内部协议处理器按一个报文对象接着另一个的顺序请求信息。使用两个不同的报文对象并通过软件进行比较,以检验所收到信息的正确性。这样甚至能发现协议处理器和报文存储器之间的问题。
  

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !