浅析车用CAN系统中网关的特性
引言
网关(Gateway)实际上就是一种模块,它工作的好坏决定了不同的总线、模块和网络相互间通信的好坏。网关就像一个居民小区的门卫,在他让任何客人进大门之前,他得问问客人是否是应邀前来,或者通知某位住户有人来访了。对不兼容但却需要互相通信的总线和网络来说,网关所起的作用就和门卫一样。
1 网关的实质
网关是连接异型网络的接口装置,它综合了桥接器和路由器的功能,汽车网关主要能在OSI参考模型的物理层、数据链路层和应用层上对双方不同的协议进行翻泽和解释。
对于Bosch公司为奔驰600SEL等汽车开发的控制器局域网CANl.2与CAN2.0协议之间的网关,是指为处理多个ECU的核中核CPU之间的通信而提供的一种综合接口装置,实际上就是一个Intel-16位80C196单片微机,而美国三大汽车公司采用的SAE1850网络与Bosch-CAN网络之间的网关,实际上就是一个Intel-16位87C196KR单片微机。
一个网关必须具备有从一个网络协议到另一个协议转换信息的能力,对于CAN协议的网关,应能涉及CAN协议4种帧类型中的两种,即数据帧和远程帧。另外两种错误帧和超限帧,由该网关的CAN芯片硬件控制,因此,可以说网关无附加的响应性。当然,网关必须具备有“状态位”,即在任何一个网络中发生的错误太多时,网关有报警状态位或总线中断状态位,这样,网关就像网络中的节点那样,可以调查总线状态。
对于两个网络之间的网关,其具备尽量少的传输等待时间,信息丢失或超限差错最少,能处理总线出现的差错等特性。
2 网关的布置
如果两个CAN网络执行器是两片独立的芯片(图1),微控制器(单片微机)作为网关,那么,CAN芯片就像灵巧的随机存储器被网关读写。一旦接收到信息,网关就执行接收CAN芯片的外部读操作,接着执行转换信息的逻辑指令,然后执行外部写操作,对第二个网络的CAN芯片作传输编程。
所以说,网关主要是执行外部读、写操作和转换信息标识符,而执行读、写操作的重要技术条件是时间,读、写所要求的时间又取决于网关在CAN芯片接口的定时特性。
图1 网关硬件的布置
3BoschCANl.2-CAN2.0之间的网关结构1991年9月,标准的1.2版本的CAN协议修订为新的2.0版本,新版本的技术关键是增加了信息标识符,也就是说,新的CAN2.0既支持标准的11位,也支持扩展后的29位信息标识。
CAN2.0实施新的信息位,标识扩展位(IDE位)使CAN操作装置能区分标准和扩展格式,但大多数现存的标准CAN-1.2版本不能识别扩展后的信息格式,在实施过程中会响应错误信息。
评论