。实时处理通过网络交换的紧急数据有较大的不同。一个快速变化的物理量如汽车引擎负载将比类似汽车引擎温度这样
f相对变化较慢的物理量更频繁地传送数据并要求更短的延时。
CAN总线以报文为单位进行数据传送报文的优先级结合在11位标识符中具有最低二进制数的标识符有最高的优先级。这种优先级一旦在系统设计时被确立后就不能再被更改。总线读取中的冲突可通过位仲裁解决。如图2所示当几个站同时发送报文时站1的报文标识符为011111站2的报文标识符为0100110站3的报文标识符为0100111。所有标识符都有相同的两位01直到第3位进行比较时站1的报文被丢掉因为它的第3位为高而其它两个站的报文第3位为低。站2和站3报文的4、5、6位相同直到第7位时站3的报文才被丢失。注意总线中的信号持续跟踪最后获得总线读取权的站的报文。在此例中站2的报文被跟踪。这种非破坏性位仲裁方法的优点在于在网络最终确定哪一个站的报文被传送以前报文的起始部分已经在网络上传送了。所有未获得总线读取权的站都成为具有最高优先权报文的接收站并且不会在总线再次空闲前发送报文。
CAN具有较高的效率是因为总线仅仅被那些请求总线悬而未决的站利用这些请求是根据报文在整个系统中的重要性按顺序处理的。这种方法在网络负载较重时有很多优点因为总线读取的优先级已被按顺序放在每个报文中了这可以保证在实时系统中较低的个体隐伏时间。
对于主站的可靠性由于CAN协议执行非集中化总线控制所有主要通信包括总线读取许可控制在系统中分几次完成。这是实现有较高可靠性的通信系统的唯一方法。
五、CAN与其它通信方案的比较
在实践中有两种重要的总线分配方法按时间表分配和按需要分配。在第一种方法中不管每个节点是否申请总线都对每个节点按最大期间分配。由此总线可被分配给每个站并且是唯一的站而不论其是立即进行总线存取或在一特定时间进行总线存取。这将保证在总线存取时有明确的总线分配。在第二种方法中总线按传送数据的基本要求分配给一个站总线系统按站希望的传送分配如Ether
etCSMACD。因此当多个站同时请求总线存取时总线将终止所有站的请求这时将不会有任何一个站获得总线分配。为了分配总线多于一个总线存取是必要的。
CAN实现总线分配的方法可保证当不同的站申请总线存取时明确地进行总线分配。这种位仲裁的方法可以解决当两个站同时发送数据时产生的碰撞问题。不同于Ether
et网络的消息仲裁CAN的非破坏性解决总线存取冲突的方法确保在不传送有用消息时总线不被占r