专利名称:基于can通信控制器及提高数据吞吐量的通信系统的建立方法及设备的制作方法
基于CAN通信控制器及提高数据吞吐量的通信系统的建立方法及设备
本发明关于在通信系统中传递报文的方法,通信系统带有多个网络节点,每个网络节点 带有至少一个CAN控制器。
此外,本发明关于带有多个网络节点的通信系统,每个网络节点带有至少一个CAN控制
器°
本文中所使用的术语和縮略语与"控制器局域网络系统"(简称"CAN"系统)体系中使用的 术语相对应。
在汽车领域但也在其它领域中使用很多电子控制单元(ECUs),这要求具有高数据吞吐量 的通信系统。迄今为止,由德国Bosch公司引入且在"CAN Specification Version 2.0, Sept. 1991" 中说明的控制器局域网络(CAN)能够广泛满足数据通信的要求。上述说明书可从例如 http:〃www.can.bosch.com/docu/can2spec.pdf等地方免费下载。电子元件新功能的实施例(例如 车辆控制系统)要求的通信功能超出现有CAN系统的极限。由于总线驱动器和数据线有延迟现 象,当前的CAN网络的数据速率广为受到限制。具体说来,限制因素是需要使所有位于CAN 总线上的CAN通信节点同步至误差小于一个位元持续时间的一小部分。所有CAN通信节点必 须遵照Can Specification Version 2.0;其中说明的数个协议特征,要求CAN通信节点的CAN协 议一致动作同时发生。这尤其适用于CAN协议常见的收到告知(所谓的应答)以及仲裁。
图1示意了传统CAN通信系统中的CAN报文传递过程。传递方向以箭头表示。多个CAN 通信节点KKl, KK2通过CAN总线同时传递其"CAN帧",此CAN帧由带有"标识符部分"的仲裁 域ARB开始。由此,它们共同决定各个CAN通信节点KK1,KK2之中实际授权哪个节点发送完 整的CAN报文NAR。在这样经授权的CAN通信节点KK1传递了CAN报文NAR的数据内容 DATA及校验和CRC以后,在总线上操作中的所有CAN通信节点KK2通过在报文NAR的应答 阶段发出显性电平PEG确认校验和的正确性。这里,术语"应答阶段"与应答域(ACKfield)或应 答间隙(ACKslot)同义。如果接收器识别出传递中的错误,节点则产生并发送错误帧。
传统CAN通信系统的最大缺点是能够达到的数据速率大多受制于由应答过程和仲裁过程 以及在这些阶段内的双向报文交换所产生的同步要求。
因此,本发明的目的是克服上述缺点。本发明使用引言中提到的一类方法达到这一目的根据本发明,仲裁决定在比CAN报文 传递更高的协议层次进行;CAN报文在由发报的网络节点发出时已在ACK域中带有显性电 平;接收CAN报文的网络节点既不发送ACK域中的显性电平又不发送完整的错误帧。
根据本发明的方案不太费力地使CAN总线系统可达到的吞吐量增加了好几倍,同时保持 与同样在总线上监测的CAN测试系统的兼容性。根据本发明的方案,报文传递总是仅朝一个 方向进行,即从发送器到接收器。本发明可简单地通过当前常用的CAN控制器实现,大多几 乎不需要任何可见的额外成本。
同时,为使报文能够传递更长的传递距离,可提供一报文分发装置,其利用报文传播方 向仅朝一个方向进行这一事实,在电平和/或时间响应方面在CAN总线上重新产生电子信号。
使用导言中说明的一类通信系统也可达到上述目的。根据本发明建立的通信系统,在比 CAN报文(NAR)传递更高的协议层次进行仲裁决定,决定授权哪个网络节点发送;发送在由 网络节点发出时己在ACK域中带有显性电平的CAN报文;阻止接收CAN报文的网络节点发送 完整的错误帧或在ACK域中产生显性电平。
本发明以及它的其它优点将如图所示在下文以非限制性的最佳实施例详细说明。在图中,
图2示意了根据本发明的方法的步骤,
图3示意了根据本发明的通信系统的第一种形式,以及
图4示意了根据本发明的通信系统的第二种形式。
根据图2,在比CAN报文传递更高的协议层中,根据本发明的方法做出了仲裁决定。CAN 报文NAR'在由网络节点KK1'发送时已经在ACK域中带有显性电平PEG,接收CAN报文的网络 节点KK2既不在ACK域中发送显性电平又不发送完整错误帧。
如图3和4所示,根据按照本发明的通信系统SYS的变化,CAN报文的传递网络节点KK1' 被更改,以致它发送已经拥有显性应答位的CAN报文。同时,报文的接收器KK2'被更改,以 致它们不试图通过在应答域中设置显性电平以确认收到报文的正确性。这样更改的节点KK1, KK2'被用于在更高协议层中进行仲裁的环境,例如时控系统和主从系统中。网络节点KK1'和 KK2'尽管可能具有不同的物理形式,但其在功能结构方面互相对应。例如,网络节点KK1'或 KK1"中的一个可如图3所示的网络节点实现,而第二个网络节点KK2'或KK2"可例如根据图4 所示的实施例设计。
在根据本发明的方案中,(物理)报文流在CAN报文传递期间(与现有技术的方法或通信系 统相反)仅朝一个方向进行,即从传递节点KK1', KK1"至接收节点KK2', KK2"。根据本发明的通信节点KK1', KK2', KK1", KK2"拨送器准收器)的更改具有以下效果
a) 与传统系统相比,总线信号的时序明显地变得更加不重要。在传统CAN系统中,通过 两个总线驱动器的总渡越时间决定最大数据速率。在本发明使用的系统中,下降沿和上升沿 的总渡越时间的差异决定最大数据速率。这在一般的总线驱动器中比总渡越时间要小得多, 从而提高了能够达到的数据速率。
b) 另外,可使用以显性/显性电平工作的总线驱动器。在传统的CAN系统中仅可使用带 有显性/隐性电平的总线驱动器。带有显性/显性电平的总线驱动器通常比带有显性/隐性电平 的总线驱动器具有较短的延迟及较不倾斜的延迟位置。能够达到的数据速率也因此增加。
本发明可以各种方式得到体现。下文将提出三种变化。在所有的变化中,CAN总线的仲 裁皆在传递协议的较高层中控制。
图3示意了使用两个CAN控制器CONl,CON2的本发明实施例。根据此实施例,网络节点 K幻'带有一个微控制器MIC和两个CAN控制器CONl, CON2。第一CAN控制器CONl传递并接 收帧。第二CAN控制器CON2位于与第一CAN控制器CONl同样的网络节点KKl'中,其接收第 一CAN控制器CONl的传递电流。输入线指定为RxD,输出线指定为TxD。
第二CAN控制器CON2产生第一CAN控制器CONl的传递帧的应答位。该应答位由一逻辑 AND连接AND附接在传递帧上,然后由总线驱动器BUT置于CAN总线BUS上。现可在CAN总 线BUS上看见正确的CAN帧。为防止这样产生的CAN帧的时序因更多应答位引致失真,在这 时候通过允许传递线TxEn阻止通信系统中的所有其它网络节点KK2'的传讯。
在更高协议层次进行的仲裁结果可在微控制器MIC中得到,产生相应的允许传递信号作 为仲裁结果的函数。进行仲裁所根据的算法对本发明的物理实施例的重要性是次要的,这里 唯一必不可少的是仲裁结果独立于CAN控制器得到,因为允许传递信号的值依仲裁结果而定。 只有不要特定网络节点KK1'发送任何报文NAR时,网络节点KK1'的允许传递信号才被激活。 当不要网络节点KK1传递吋,隐性电平存在于OR连接的输出端。然而,由于必须存在显性电 平才可传递CAN报文NAR,这种情况下BUS驱动器BUT不发出报文NAR。相反地,如果要传 递CAN报文NAR,与显性电平相对应的允许传递信号由微控制器MIC产生。允许传递信号和 逻辑AND连接AND的输出信号现被发送至一逻辑OR连接OR。
图4显示了使用CAN控制器CON和微控制器的比较/捕捉模块CCM的本发明实施例。这种 情况下应答位由微控制器MIC通过微控制器MIC测量传递帧的"帧开始"时间点及在给定时间 点产生应答位而产生。除应答位的产生方式外,此变化和第一个变化完全相同。这是非常节约成本的本发明的实现方法,其可用传统微控制器实现。
第三个变化使用CAN控制器,其被设置(例如通过相关编程设置)以产生已带有应答位的 帧并在其接收到带有一正确的校验和CRC的CAN报文时不把应答位置于总线上。
为了使报文能传递较长距离,提供了报文分发装置NVT,该装置在电平和/或时间响应方 面在CAN总线上重新生成电子信号。报文分发装置NVT利用报文NAR的传播方向只朝一个方 向发生这一事实。
权利要求
1. 在通信系统(SYS)中通过CAN总线(BUS)传递CAN报文(CAN)的方法,系统带有多个网络节点(KK1,KK2,KK1′,KK2′,KK1",KK2"),每个节点有一CAN控制器(CON,CON1,CON2),其中进行授权网络节点(KK1,KK2,KK1′,KK2′,KK1",KK2")发送CAN报文(NAR)的仲裁,其特征在于仲裁决定在比CAN报文(NAR)传递更高的协议层次进行,并且CAN报文(NAR)在由发报的网络节点(KK1,KK2,KK1′)发出时已在ACK域中带有显性电平,其中接收CAN报文(NAR)的网络节点(KK2′,KK1",KK2")既不发送在ACK域中的显性电平又不发送完整的错误帧。
2. 根据权利要求l的方法,其特征在于报文分发装置(NVT)利用报文(NAR)传播方向仅朝一个 方向进行这一事实,在电平和/或时间响应方面在CAN总线(BUS)上重新生成电子信号。
3. 通信系统(SYS),其带有多个网络节点(KK1, KK2, KK1', KK2', KK1", KK2"),每个网络节 点带有至少一个CAN控制器(CON, CONl, CON2),其中该通信系统(SYS)被设置以对于授权 网络节点(KKl, KK2, KK1', KK2', KK1", KK2")发送CAN报文(NAR)进行仲裁,其特征在于通 信系统(SYS)被设置为在比CAN报文(NAR)传递更高的协议层次进行仲裁决定,决定授权哪 个网络节点(KKl, KKK2, KK1', KK2', KK1", KK2")发送CAN报文(NAR);发送由发报的网络节 点(KK1,KK2,KK1')发出时己在ACK域中带有显性电平的CAN报文(NAR);阻止接收CAN报 文(NAR)的网络节点(KK2', KK1", KK2")发送完整的错误帧或在ACK域中发送显性电平。
4. 按照权利要求3的通信系统(SYS),其特征在于提供了报文分发装置(NVT),其利用报文 (NAR)的传播方向仅朝一个方向进行这一事实,在电平和/或时间响应方面在CAN总线(BUS)上重新生成电子信号。 '
全文摘要
本发明公开了一种通过通信系统(SYS)中的CAN总线(BUS)传递CAN报文(NAR)的方法,通信系统(SYS)包括多个各自带有至少一个CAN控制器(CON,CON1,CON2)的网络节点(KK1,KK2,KK1′,KK2′,KK1″,KK2″)。根据所述方法,对于网络节点(KK1,KK2,KK1′,KK2′,KK1″,KK2″)发送CAN报文的授权进行仲裁,仲裁决定在比CAN报文(NAR)传递更高的协议层次进行,并且CAN报文(NAR)在由发报的网络节点(KK1,KK2,KK1′)发出时,后者已提供所述报文在ACK域中的显性电平。接收CAN报文的网络节点(KK2′,KK1″,KK2″)既不在ACK域中产生显性电平,又不发送完整的错误帧。
文档编号H04L12/413GK101507193SQ200780025411
公开日2009年8月12日 申请日期2007年7月4日 优先权日2006年7月5日
发明者亚历山大·博格纳 申请人:Tttech电脑技术股份公司