CN114503520A - 用于串行总线系统的用户站的冲突检测器和用于串行总线系统中通信的方法 - Google Patents

用于串行总线系统的用户站的冲突检测器和用于串行总线系统中通信的方法 Download PDF

Info

Publication number
CN114503520A
CN114503520A CN202080070882.2A CN202080070882A CN114503520A CN 114503520 A CN114503520 A CN 114503520A CN 202080070882 A CN202080070882 A CN 202080070882A CN 114503520 A CN114503520 A CN 114503520A
Authority
CN
China
Prior art keywords
bus
signal
txd
subscriber station
rxd
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202080070882.2A
Other languages
English (en)
Other versions
CN114503520B (zh
Inventor
F·哈特维奇
S·沃克尔
A·穆特尔
D·瓦菲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN114503520A publication Critical patent/CN114503520A/zh
Application granted granted Critical
Publication of CN114503520B publication Critical patent/CN114503520B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

提供了用于串行总线系统(1)的冲突检测器(15;15A;15B;15C;25;35)和用于识别串行总线系统(1)中的总线冲突的方法。冲突检测器(15;15A;15B;15C;25;35)具有:至少一个计数器(150;152),用于对数字接收信号(RxD;RxDl)的脉冲特性的出现进行计数,所述数字接收信号由所述用户站(10;20;30)根据从所述总线系统(1)的总线(40)串行接收的信号(VDIFF)产生,其中根据发送信号(TxD;TxD1;TxD2)形成从所述总线(40)接收的信号(VDIFF),所述发送信号是由所述用户站(10;20;30)的通信控制装置(11)为帧(450)串行发送到所述总线(40)的,以及其中所述用户站(10;20;30)在第一通信阶段(451;453、451)中为具有第一运行方式的帧(450)产生总线状态(401;402)并且在第二通信阶段中为具有与所述第一运行方式不同的第二运行方式的帧(450)产生总线状态(401;402;U_D0;U_D1;以及比较块(153;153A;153B;153C),其被设计为将根据所述至少一个计数器(150;152)的计数值(Zasym;Zrx)确定的测量结果与至少一个阈值(Ts)进行比较,并且如果所述比较块(153;153A;153B;153C)在所述比较时确定所述用户站(10;20;30)在所述第二通信阶段(452)中没有排他、无冲突地访问所述总线(40)则使用冲突指示信号(S_K)指示给所述通信控制装置(11)。

Description

用于串行总线系统的用户站的冲突检测器和用于串行总线系 统中通信的方法
技术领域
本发明涉及一种用于串行总线系统的用户站的冲突检测器以及一种用于识别串行总线系统中的总线冲突的方法,所述串行总线系统以高数据速率和高抗错误性工作。
背景技术
为了在传感器和控制设备(例如在车辆中)之间进行通信,通常使用总线系统,在所述总线系统中数据作为ISO11898-1:2015标准中的消息进行传输,所述标准作为使用CANFD的CAN协议规范。这些消息在总线系统的总线用户之间传输,所述总线用户例如是传感器、控制设备、发送器等。
为了能够实现总线系统中越来越多的数据业务和/或实现比经典CAN情况下更高的数据传输速度,在CAN FD消息格式中创建了用于在消息内切换到更高比特率的选项。在这样的技术中,通过在数据字段区域中使用更高的时钟速率将最大可能的数据速率提高到超过1兆比特/秒(MBit/s)的值。这样的消息在下面也称为CAN FD帧或CAN FD消息。在CANFD的情况下,最大有用数据长度从经典CAN情况下的8个字节扩展到多达64个字节,并且数据传输速率明显高于经典CAN的情况。
汽车领域中常见的总线系统使用区分两个逻辑比特电平的差分双线总线线路。对于经典CAN(ISO 11898-2)或CAN FD和LIN(ISO_17987-4),分别仅驱动两个逻辑总线电平中的一个,另一个通过总线线路的终端电阻设置。由此被驱动的显性总线电平可以覆盖非驱动的隐性总线电平。这用于借助于仲裁来保证发送器在预定持续时间内无冲突地访问总线线路。根据另一种用途,可以在错误情况下将错误帧(Error-Flag,错误标志)发送到总线上。在时间控制的FlexRay(ISO 17458-4)的情况下,驱动两个逻辑总线电平。这些对称的总线电平允许更高的比特率,但不会像经典CAN/CAN FD情况下那样允许仲裁和错误帧。
即使基于经典CAN或CAN FD的通信网络在例如其鲁棒性方面提供非常多的优点,但是与例如100Base-Tl以太网中的数据传输相比仍具有明显更低的比特率。此外,迄今为止使用CAN FD实现的高达64字节的有用数据长度对于某些应用来说太小了。
为了解决这些问题,目前开发CAN FD后继系统,以下将CAN FD后继系统称为CANXL。为了实现更高的数据速率,应当在CAN-XL帧的数据阶段中驱动两个总线状态(0,1)。
如果现在在CAN-XL的情况下在数据阶段主动驱动两个总线状态,则错误帧(Error-Flag,错误标志)的发送导致被驱动信号的叠加,由此在总线上产生“模拟”电平。因此不能再精确预测结果得到的RxD信号,并且因此不能在错误帧方面使用经典CAN/CAN FD的方法。
发明内容
因此,本发明的任务是提供一种用于串行总线系统的用户站的冲突检测器以及一种用于识别串行总线系统中的总线冲突的方法,所述冲突检测器和所述方法解决了上述问题。特别地,应当提供一种用于串行总线系统的用户站的冲突检测器和一种用于识别串行总线系统中的总线冲突的方法,其中可以实现高数据速率和对当前运行状态的灵活反应以及通信的高抗错误性。
该任务通过具有权利要求1的特征的用于串行总线系统的用户站的冲突检测器来解决。所述冲突检测器具有
至少一个计数器,用于对数字接收信号的脉冲特性的出现进行计数,所述数字接收信号由所述用户站根据从所述总线系统的总线串行接收的信号产生,其中根据发送信号形成从所述总线接收的信号,所述发送信号是由所述用户站的通信控制装置为帧串行发送到所述总线的,以及其中所述用户站在第一通信阶段中为具有第一运行方式的帧产生总线状态并且在第二通信阶段中为具有与所述第一运行方式不同的第二运行方式的帧产生总线状态,以及
比较块,用于将所述至少一个计数器的测量结果与至少一个阈值进行比较,并且如果所述比较块在所述比较时确定所述用户站在所述第二通信阶段中没有排他和无冲突地访问所述总线则使用冲突指示信号指示给所述通信控制装置。
由于所述冲突检测器的设计,即使在数据阶段中在一个帧中主动驱动两个总线状态,也可以非常成本有利地识别出发送冲突。这也适用于总线上存在被驱动信号的叠加,由此在总线上产生了“模拟”电平,从而不再能精确预测结果得到的接收信号RXD。
使用冲突检测器识别或检测总线冲突是非常经济有效的,特别是在通信控制装置(Protocol Controller,协议控制器)中,因为在所述通信控制装置中很多信息以数字方式存在并且有精确的时钟可用。因此,可以非常准确地检测总线冲突。此外,该检测容易实现,即例如借助于一个或多个计数器。由此简化了用于CAN XL的发送/接收装置(收发器)并降低了其的成本,这有利于CAN XL的使用。
附加地或替代地,所述冲突检测器集成在所述用户站的发送/接收装置中。
此外,总线冲突识别可以与当前可用的CAN收发器一起使用。
因此,由于所述冲突检测器的设计,总线系统的每个用户站都能够以错误帧干扰或中断任何其他用户站的发送。所使用的错误帧实现了简单的错误处理,这又提高了CANXL协议的鲁棒性。此外,在错误情况下可以节省时间,其方式是中止当前发送的消息并且然后可以在总线上传输其他信息。这对于比在数据阶段中具有64个字节的CAN FD帧更长的帧特别有用,特别是对于应当包含2-4千字节(kbyte)或更多的帧。
结果,即使在每帧的有用数据量增加的情况下,利用所述冲突检测器也可以保证以低错误率以及在总线系统运行时的当前事件方面具有很大灵活性地接收所述帧。因此,即使实现高数据速率并且每帧的有用数据量增加,也可以在串行总线系统中以高抗错误性进行通信。
因此,利用总线系统中的冲突检测器特别是可以在第一通信阶段中保留从CAN已知的仲裁并且与经典CAN或CAN FD相比仍然显著提高传输速率。
这有助于实现至少5Mbit/s到大约8Mbit/s或10Mbit/s或更高的净数据速率。在这种情况下,一个比特的长度小于100ns。此外,有用数据的大小可以高达每帧4096字节。当然,每帧字节数的任何其他值都是可能的,特别是2048字节或其他值。
由冲突检测器执行的方法还可以用于,当总线系统中还存在至少一个根据ISO11898-1:2015标准设计的容许CAN FD的CAN用户站,和/或至少一个CAN FD用户站时,发送根据经典CAN协议和/或CAN FD协议的消息。原则上,冲突检测器也可以在CAN FD的情况下使用,以替代或补充那里使用的发送器延迟补偿功能。
在从属权利要求中说明了冲突检测器的有利的其他设计。
数字接收信号的脉冲特性可能是脉冲的电平,其中所述至少一个计数器可以被设计为随时间对所述数字接收信号的第一电平的出现频率进行计数。替代地,所述至少一个计数器可以被设计为在出现所述数字接收信号的第一电平时递增其计数值并且在出现所述数字接收信号的第二电平时递减其计数值。可以用预定时钟来选择预定电平的出现频率。由此结果得到的计数值也可以称为累积持续时间。
可以想到,所述数字接收信号的脉冲特性是脉冲的脉冲长度。在这种情况下,所述至少一个计数器(150;152)和/或所述比较块可以被设计为使用所述通信控制装置的状态信号来确定所述数字接收信号的脉冲特性,所述状态信号包括用于对所述数字接收信号的比特采样的时钟和/或所述通信控制装置的时钟。替代地,所述比较块可以被设计为将所述数字接收信号的脉冲的脉冲长度与所述发送信号的脉冲的脉冲长度进行比较,以确定所述用户站在所述第二通信阶段中是否没有排他和无冲突地访问总线。
根据另一变体,所述数字接收信号的脉冲特性是脉冲的电平与所述发送信号的脉冲的对应电平的不同。
根据又一变体,所述冲突检测器还具有至少一个附加计数器,用于对数字发送信号的脉冲特性的出现进行计数,其中所述比较块被设计为将根据所述至少一个附加计数器的计数值确定的测量结果与至少一个阈值进行比较,以确定所述用户站在所述第二通信阶段中是否没有排他和无冲突地访问总线。在这种情况下,根据一种选项,所述比较块被设计为将所述至少一个计数器的计数值与所述至少一个附加计数器的计数值进行比较,以基于相互比较的计数值的变化的差值来确定所述用户站在所述第二通信阶段中是否没有排他和无冲突地访问总线,所述至少一个计数器的计数值被设置用于对所述数字接收信号的脉冲特性的出现进行计数,并且所述至少一个附加计数器的计数值被设置用于对所述数字发送信号的脉冲特性的出现进行计数。
在提到的变体中,所述冲突检测器可以被设计为作为发送信号使用延迟的发送信号,其被延迟了所述发送信号从所述通信控制装置的TxD连接端经由所述总线到达所述通信控制装置的RxD连接端所需的渡越时间。
所述冲突检测器还可选地具有至少一个计数器,用于对所述数字接收信号或所述发送信号的脉冲的上升沿和/或下降沿进行计数。
上述冲突检测器可以是串行总线系统的用户站的一部分,所述用户站还具有用于控制该用户站与所述总线系统的至少一个其他用户站的通信的通信控制装置,以及用于将由所述通信控制装置为帧产生的信号发送到所述总线系统的总线上并从所述总线接收信号的发送/接收装置,其中所述发送/接收装置在第一通信阶段中为具有第一运行方式的帧产生总线状态并且在第二通信阶段中为具有不同于所述第一运行方式的第二运行方式的帧产生总线状态。
在所述用户站中,由于两个通信阶段中的比特率不同,在第一通信阶段中从总线接收的信号的总线状态可以比在第二通信阶段中接收的信号的总线状态更长,特别是具有更长的比特时间。附加地或替代地,在第一通信阶段中从总线接收的信号的总线状态是用与在第二通信阶段中接收的信号的总线状态不同的物理层产生的。在这种情况下,所述通信控制装置可以被设计为向所述冲突检测器输出接通信号,以仅针对第二通信阶段接通所述冲突检测器并且针对第一通信阶段关闭所述冲突检测器,或者将所述冲突检测器从一个通信阶段切换到另一个通信阶段。
可能的是,在第一通信阶段中协商所述总线系统的哪个用户站在随后的第二通信阶段中获得对所述总线的至少暂时排他的、无冲突的访问。
上述用户站可以是总线系统的一部分,该总线系统还包括总线和至少两个用户站,所述至少两个用户站经由所述总线相互连接,使得所述至少两个用户站可以彼此串行通信。在此情况下,所述至少两个用户站中的至少一个用户站是先前描述的用户站。
上述任务还通过根据权利要求15所述的一种用于串行总线系统中通信的方法来解决。该方法利用用于所述串行总线系统的用户站的冲突检测器来执行,其中所述冲突检测器执行以下步骤:使用至少一个计数器对数字接收信号的脉冲特性的出现进行计数,所述数字接收信号由所述用户站根据从所述总线系统的总线串行接收的信号产生,其中根据发送信号形成从所述总线接收的信号,所述发送信号是由所述用户站的通信控制装置在帧中串行发送到所述总线的,以及其中所述用户站在第一通信阶段中为具有第一运行方式的帧产生总线状态并且在第二通信阶段中为具有与所述第一运行方式不同的第二运行方式的帧产生总线状态,
使用比较块将根据所述至少一个计数器的计数值确定的测量结果与至少一个阈值进行比较,并且如果所述比较块在所述比较时确定所述用户站在所述第二通信阶段中没有排他和无冲突地访问所述总线则使用冲突指示信号指示给所述通信控制装置。
该方法提供了与上述关于冲突检测器和/或用户站所提到的相同的优点。
本发明的其他可能的实现方式还包括上面或下面关于实施例描述的特征或实施方式的未明确提及的组合。在此,本领域技术人员还向本发明的相应基本形式添加各个方面作为改进或补充。
附图说明
下面参考附图并基于实施例更详细地描述本发明。其中:
图1示出了根据第一实施例的总线系统的简化框图;
图2示出了用于说明可以由根据第一实施例的总线系统的用户站的发送/接收装置发送的消息的结构的示意图;
图3示出了根据第一实施例的总线系统的用户站的简化示意框图;
图4至图7示出了在根据第一实施例的总线系统中正常运行中出现的信号的时间变化过程;
图8示出了在由根据第一实施例的总线系统的第一用户站发送的消息的数据阶段中的发送信号TxD1的时间变化过程;
图9示出了发送信号TxD2的时间变化进程,该发送信号TxD2由另一个用户站发送以中止图8的发送信号TxD1;
图10至图12示出了在根据第一实施例的总线系统中基于图8和图9的发送信号TxD1、TxD2而产生的信号的时间变化过程;
图13示出了用于说明根据第一实施方式的总线系统的用户站的冲突检测器的功能的示意图;
图14示出了根据第二实施例的总线系统的用户站的简化示意框图;
图15示出了根据第三实施例的总线系统的用户站的简化示意框图;
图16示出了用于说明根据第三实施例的总线系统的用户站的冲突检测器的作用方式的信号变化过程示例;
图17示出了根据第四实施例的总线系统的用户站的简化示意框图;以及
图18示出了用于说明根据第四实施例的总线系统的用户站的冲突检测器的作用方式的信号变化过程示例。
在图中,相同或具有相同功能的元件配备有相同的附图标记,除非另有说明。
具体实施方式
作为示例,图1示出了总线系统1,该总线系统1特别是基本上被设计用于经典CAN总线系统、CAN FD总线系统、CAN XL总线系统和/或它们的变型,如下面描述的。总线系统1可以用在车辆(特别是机动车辆)、飞机等中,或者用在医院等中。
在图1中,总线系统1具有大量用户站10、20、30,每个用户站连接到具有第一总线芯线41和第二总线芯线42的总线40。总线芯线41、42也可以称为CAN_H和CAN_L或CAN-XL_H和CAN-XL_L,并且用于在为发送状态下的信号耦合输入差分电平或显性电平或产生隐性电平之后进行电信号传输。信号形式的消息45、46可以经由总线40在各个用户站10、20、30之间串行传输。如果在总线40上的通信时出现错误,如通过图1中锯齿状的黑色块箭头所示,则可以发送错误帧47(Error Flag,错误标志)。用户站10、20、30例如是机动车辆的控制设备、传感器、显示设备等。
如图1中所示,用户站10具有通信控制装置11、发送/接收装置12和冲突检测器15。相反,用户站20具有通信控制装置21、发送/接收装置22和可选地冲突检测器25。用户站30具有通信控制装置31、发送/接收装置32和冲突检测器35。用户站10、20、30的发送/接收装置12、22、32分别直接连接到总线40,即使这在图1中未显示。
每个通信控制装置11、21、31分别用于控制相应用户站10、20、30经由总线40与连接到总线40的用户站10、20、30中的至少一个其他用户站的通信。
通信控制装置11创建并读取第一消息45,所述第一消息例如是经过修改的CAN消息45。在此情况下,经过修改的CAN消息45是基于CAN XL格式构建的,参照图2更详细地描述了该格式。
除了下面还要更详细描述的区别之外,通信控制装置21可以实施为与根据ISO11898-1:2015的传统CAN控制器一样。通信控制装置21创建和读取第二消息46,例如经典CAN消息46。经典CAN消息46根据经典基本格式构建,其中在消息46中可以包括多达8个数据字节。替代地,CAN消息46被构建为CAN FD消息,其中可以包括多达64个数据字节,这些数据字节还以比在经典CAN消息46的情况下明显更快的数据速率传输。在后者的情况下,通信控制装置21可以实施为与传统CAN FD控制器一样。
通信控制装置31可以实施为根据需要为发送/接收装置32提供CAN XL消息45或经典CAN消息46或者从发送/接收装置32接收CAN XL消息45或经典CAN消息46。通信控制装置31因此创建并读取第一消息45或第二消息46,其中第一和第二消息45、46通过它们的数据传输标准区分开来,在这种情况下即CAN XL或CAN。替代地,经典CAN消息46被构建为CAN FD消息。在后者的情况下,通信控制装置31被实施为与传统CAN FD控制器一样。
发送/接收装置12可以实施为CAN XL收发器。发送/接收装置22可以实施为与传统CAN收发器或CAN FD收发器一样。发送/接收装置32可以被实施为根据需要为通信控制装置31提供根据CAN XL格式的消息45或根据当前CAN基本格式的消息46或者从通信控制装置31接收根据CAN XL格式的消息45或根据当前CAN基本格式的消息46。发送/接收装置12、32可以附加地或替代地实施为与传统CAN FD收发器一样。
利用两个用户站10、30,可以形成并且然后传输具有CAN XL格式的消息45以及接收这样的消息45。
图2为消息45示出了CAN XL帧450,该CAN XL帧由发送/接收装置12或发送/接收装置32发送。为了总线40上的CAN通信,将CAN XL帧450划分为不同的通信阶段451到453,即仲裁阶段451、数据阶段452和帧结束阶段453。
在仲裁阶段451中,借助于标识符在用户站10、20、30之间逐比特地协商:哪个用户站10、20、30想发送具有最高优先级的消息45、46,并且因此在随后的数据阶段452中的下一个用于发送的时间内获得对总线系统1的总线40的排他访问。
在数据阶段452中,发送CAN-XL帧或消息45的有用数据。对应于数据长度代码的值范围,所述有用数据例如可以具有多达4096个字节或更大的值。
在帧结束阶段453中可以包含重新集成模式,该重新集成模式使得接收用户站能够在错误之后找到帧结束阶段453的开始。此外,在帧结束阶段453的结束字段中可以包含至少一个确认比特。此外可以存在11个相等比特的序列,这些比特指示CAN XL帧450的结束。使用至少一个确认比特可以告知接收器是否在接收到的CAN XL帧450或消息45中发现了错误。
在仲裁阶段451和帧结束阶段453中,与经典CAN和CAN-FD的情况一样使用物理层。该物理层对应于已知OSI模型(开放系统互连模型)的比特传输层或第一层。
在阶段451、453期间使用已知的CSMA/CR方法,该方法允许用户站10、20、30同时访问总线40而不会破坏更高优先级的消息45、46。由此可以相对简单地将另外的总线用户站10、20、30添加到总线系统1,这是非常有利的。
CSMA/CR方法的结果是总线40上必须存在所谓的隐性状态,所述隐性状态可以由其他用户站10、20、30用总线40上的显性状态覆盖。在隐性状态中,在各个用户站10、20、30处高欧姆关系占主导,这与总线电路的寄生相组合而导致更长的时间常数。这导致当今CAN-FD物理层的最大比特率在真实车辆使用中被限制为目前大约每秒2兆比特。
当作为发送方的用户站10赢得仲裁并且作为发送方的用户站10因此为了发送而排他地访问总线系统1的总线40时,消息45的发送方才开始将数据阶段452的比特发送到总线40上。
一般来说,与经典CAN或CAN FD相比,在使用CAN XL的总线系统中可以实现以下不同的特性:
a)采用并在必要时适配经过验证的特性,这些特性负责经典CAN和CAN FD的鲁棒性和用户友好性,特别是根据CSMA/CR方法的具有标识符和仲裁的帧结构,
b)将净数据传输速率提高到大约每秒10兆比特,
c)将每帧有用数据的大小增加到任意长度,例如多达大约4千比特。
图3示出了具有通信控制装置11、发送/接收装置12和冲突检测器15的用户站10的基本结构。用户站30以与图3所示类似的方式构建,除了冲突检测器35不是集成在通信控制装置31中,而是与通信控制装置31和发送/接收装置32分开设置。在用户站20的情况下,可选地存在的冲突检测器25集成到发送/接收装置22中。因此不再单独描述用户站20、30和装置25、35。下面描述的冲突检测器15的功能对于每个冲突检测器25、35都相同地存在。
根据图3,用户站10除了在通信控制装置11中的冲突检测器15之外还具有发送/接收块111。发送/接收块111是协议控制器,其为例如消息45的帧450或为消息46的帧创建根据协议的发送信号TxD并将发送信号TxD转发到发送/接收装置12以及从发送/接收装置12接管该发送信号TxD以接收接收信号RxD。发送/接收装置12连接到总线40,更准确地说连接到总线40的用于CAN_H或CAN-XL_H的第一总线芯线41和用于CAN_L或CAN-XL_L的第二总线芯线42。对于帧450,发送信号TxD由发送/接收装置12转换为用于总线40的信号CAN-XL_H、CAN-XL_L,如前所述。RxD信号的产生也如前所述。
冲突检测器15具有第一计数器151、第二计数器152、比较块153和可选地补偿块154。冲突检测器15检测RxD信号和TxD信号以识别总线40上的冲突。结果,冲突检测器15提供冲突指示信号S_K以发信号通知总线40上是否存在冲突。例如,如果冲突指示信号S_K具有值1,即例如如果检测到冲突,则发送/接收块111然后将例如错误帧47发送到总线40上,而不是以发送到那时为止的帧450继续。
此外,如果冲突检测器15应当仅在有效发送过程期间工作,则发送/接收块111可选地向冲突检测器15发送启用信号或接通信号S_E。
可选地,发送/接收块111可以向冲突检测器15发送状态信号S_I。状态信号S_I中包含发送/接收块111提供给冲突检测器15的信息,例如补偿块154的渡越时间TLD,这将参考图13更详细地描述。
图3的冲突检测器15与CAN时钟一起工作,该CAN时钟对应于通信控制装置11的时钟,特别是CAN XL协议控制器的时钟。CAN时钟由于其相对较高的频率而使得可以准确采集RxD、TxD信号中的偏差。附加地或替代地,可以使用由发送/接收块111使用的时间量子时钟(TimeQuanta时钟)。时间量子时钟是分频的CAN时钟。使用者可以使用CAN XL控制器中的所谓比特率预分频器参数来设置分频比。
将在下文根据图4至图12解释了总线系统1中的信号之后更详细地描述冲突检测器15的更准确的功能。
图4至图7说明了总线系统1正常运行中的信号。在此情况下,发送/接收装置12在时间t的过程中将根据图4的通信控制装置11的发送信号TXD或TxD转换为用于总线芯线41、42的对应信号CAN-XL_H和CAN-XL_L,并将这些信号CAN-XL_H和CAN-XL_L在CAN_H和CAN_L的连接端处发送到总线40上,如图5所示。根据图5的信号CAN-XL_H和CAN-XL_L,随着时间t在总线40上形成差分电压VDIFF=CAN-XL_H-CAN-XL_L,其变化过程在图6中示出。
除了空转状态或就绪状态(空闲或待机)之外,发送/接收装置12在正常运行中总是监听总线40上数据或消息45、46的传输,而且不管发送/接收装置12是否是消息45的发送方。在此,发送/接收装置12根据从总线40接收的信号CAN-XL_H和CAN-XL_L与根据图6的接收阈值T_u、T_d形成接收信号RXD或RxD,如图7中关于时间t所示。对于阶段451、453,使用至少一个接收阈值T_u,其位于图6左侧部分的阴影区域中。如图6中所示,发送/接收装置12在通信阶段451、453中使用由经典CAN/CAN-FD已知的第一接收阈值T_u,该第一接收阈值具有根据ISO 11898-2:2016的典型位置0.7V,以便能可靠地识别第一运行方式中的总线状态401、402。相反,对于数据阶段452切换到至少一个接收阈值T_d,该接收阈值T_d位于图6右侧部分的阴影区域中。如图3中所示,发送/接收装置12将接收信号RXD或RxD转发给通信控制装置11。
根据图4和图5的示例,信号CAN-XL_H和CAN-XL_L在上述通信阶段451、453中对应于图4的发送信号TxD的状态H、L地具有显性总线电平和隐性总线电平401、402,如从CAN所知的。相反,信号CAN-XL_H和CAN-XL_L在数据阶段452中与传统信号CAN_H和CAN_L不同。在数据阶段452中,现在对应于发送信号TXD的数据状态H、L地主动驱动总线电平U_D1、U_D0而不是总线电平401、402。在总线40上形成差分信号VDIFF=CAN-XL_H-CAN-XL_L,如图6中所示。
此外,从阶段451、453中的第一比特时间T_bt1切换到阶段452中的第二比特时间T_bt2。第一比特时间T_bt1长于第二比特时间T_bt2,即使这在图4至图7中为了简单起见而未示出。因此,信号的比特在阶段451、453中比在数据阶段452中传输得更慢。在数据阶段452中比特率例如为100兆比特/秒的情况下,第二比特时间T_bt2具有值100ns。
因此,在图4和图5所示的示例中,数据阶段452中的比特持续时间T_bt2明显短于在仲裁阶段451和帧结束阶段453中使用的比特持续时间T_bt1。
因此,对于数据阶段452,发送/接收装置12从图4的左侧部分中所示的状态切换到图4的右侧部分中所示的状态。因此,发送/接收装置12从第一运行方式切换到第二运行方式。
图4的数据状态H、L以及由此结果得到的用于图5中信号CAN-XL_H、CAN-XL_L的总线状态U_D0、U_D1的序列以及由此结果得到的图6的电压VDIFF的变化过程仅是为了说明发送/接收装置12的功能。可以根据需要选择图4的数据状态H、L以及由此结果得到的图5中总线状态U_D0、U_D1的序列。
图8至图12针对数据阶段452示出了信号TxD1、TxD2、CAN-XL_H和CAN-XL_L、其差分电压VDIFF=CAN-XL_H-CAN-XL_L以及结果得到的接收信号RxD的信号变化过程。在图8至图12中所示的情况下,发送/接收装置12例如发送用于帧450的发送信号TxD1,其中例如用户站30——其在数据阶段452中实际上只是帧450的接收方——想要中止帧450,因此发送发送信号TxD2。
存在各种为什么应当中止帧450的原因:
-作为RX用户站的用户站30已经在CAN XL消息45的报头校验和(CRC=循环冗余校验)中确定了错误并且想要发信号通知该错误,和/或
-作为CAN FD用户站的用户站20可能由于比特错误而没有识别出已切换到帧450并且在帧450的数据阶段452期间发送错误帧47,和/或
-作为RX用户站的用户站30必须发送具有更高优先级的消息45、46,和/或
-两个CAN-XL用户站(例如用户站10、30)无意中使用了相同的标识符,因此都在数据阶段452中发送。
例如,如果用户站30想要实现帧450的中止,该帧450由发送/接收装置12用图8的信号TxD1发送,则用户站30将根据图9的发送信号TxD2发送到总线40。因此,在错误帧47的发送阶段455中,该错误帧在时间点t2从发送信号TxD2的下降沿开始,根据图10和图11在总线40上产生与在数据阶段452的正常运行中总线40上的电压状态不同的电压状态。
一般而言,发送发送信号TxD1的发送用户站在数据阶段452中切换到发送运行模式以驱动总线线路41、42。相反,对于诸如用户站30的所有接收用户站,接通图11所示的至少一个接收阈值Td。然而,在此情况下,接收用户站30的总线驱动器保持在被动接收状态(CAN隐性状态)下,直到接收用户站30可能发送错误帧47为止,如图9针对发送信号TxD2所示以及在上面提到的。然后将根据图7右侧部分的错误帧47作为“显性”主动发送。为了实现CAN-XL和CAN-FD的互操作性,通过具有正VDIFF的6个或更多(取决于比特填充方法)比特的排列来表示错误帧47,正如在CAN/CAN-FD中那样。
如果在上述情况下由用户站30发送错误帧47,则根据图11导致差分电压VDIFF的瞬态变化过程非常剧烈地变化。从所有用户站10、20、30的角度来看,具有正差分电压VDIFF的比特,即总线状态U_D1,还被放大或正差分电压VDIFF被增大。相反,在总线40上形成为总线状态U_D0的比特从差分电压VDIFF=-2V增加到大约0V的差分电压VDIFF。为总线状态U_D0产生的电压值强烈取决于驱动发送/接收装置12、22、32或发送方121的参数以及取决于终端电阻的布置。
如图12中用椭圆60示意性示出的,这可能导致接收信号RxD中的未识别的1-脉冲。也可能的是,RxD连接端处的1-脉冲缩短并且由此接收信号RxD中的1-脉冲缩短,如图12中用椭圆65所标记的。在图12的图示之外,差分电压VDIFF在真实情况下还叠加有高频振荡,所述高频振荡由发送错误帧47的用户站的总线拓扑、相位和阻抗确定。在大多数情况下,即使通过由CAN FD已知的TDC方法(TDC=Transmitter Delay Compensation=发送器延迟补偿)也无法识别出缩短或延长的1-脉冲(或0-脉冲)。
然而,即使可以通过在发送/接收装置12中添加另外的接收阈值来改进错误识别,仍然存在不能由此再被识别为错误的信号变化过程。
根据图3,用户站10中的冲突检测器15为了识别导致根据图11的总线冲突的发送冲突而具有计数器151、152和比较块153。在所述发送冲突的情况下,用户站10在数据阶段452中不能再排他和无冲突地访问总线40。
冲突检测器15使用两个计数器151、152来采集信号RxD和TxD。在此情况下,计数器151用于评估发送信号TxD,其中计数器151改变其计数值Ztx。计数器152用于评估接收信号RxD,其中计数器152改变其计数值Zrx。计数器151、152不仅分别对所考虑的信号TxD、RxD中的电平数量进行计数。而且计数器151、152还分别在时间t上对时钟、特别是CAN时钟的出现的累积持续时间进行计数。CAN时钟存在于通信控制装置11中并且与状态信号S_I一起转发到冲突检测器15。
在数据阶段452的开始,即在时间点t1,发送-接收块111将启用信号或接通信号S_E设置为1,以开始用冲突检测器15识别冲突。由于在该实施例中使用了延迟的TxDl信号TxDl_d,所以启用信号S_E也延迟了持续时间或渡越时间TLD地被设置为1,如图13所示。利用接通信号S_E的边沿将计数器151、152的计数值Ztx、Zrx复位为零。
冲突检测器15将信号RxD、TxD相互比较以识别总线冲突。为此,冲突检测器15连续确定在RxD信号和TxD信号上的帧450的数据阶段452中出现总线电平之一(0或1)的持续时间。当发送信号TxD具有值H时,例如当TxD=1时,如图13所示,计数器151的计数值Ztx在每个时钟周期都递增1。当接收信号RxD具有值H时,例如当RxD=1时,如图13所示,计数器152的计数值Zrx递增1。例如,如果RxD信号的电平在40个时钟周期的持续时间内具有值H,则计数器Zrx在该时间内递增40。替代地,当采集到分别由计数器151、152考虑的信号TxD、RxD的状态TxD=0和RxD=0时,计数器151、152可以增加它们的计数值Ztx、Zrx。
因此,由冲突检测器15确定的出现总线电平之一(0或1)的持续时间是预定电平的出现频率。因此,该持续时间是使用预定时钟、特别是作为通信控制装置11的时钟的CAN时钟来计数的。如前所述,由计数结果得到的计数值Ztx、Zrx也可以称为累积持续时间。
总线冲突可以从使用比较块153比较计数器151、152对信号TxD和RxD的测量值导出。为此,比较块153形成差值D=Ztx-Zrx作为测量结果,如图13所示。在此情况下,冲突检测器15考虑到TxD信号是理想的,但是即使在无冲突的情况下RxD信号也不是理想的,即与TxD信号不同。
为了识别冲突,比较块153必须定期形成和评估计数器151、152的计数值Ztx、Zrx之间的差值D。定期意味着例如每比特时间T_bt2一次或每5个比特时间T_bt2一次。简单来说,如果差值D剧烈增加(或减少),则存在总线冲突。当前形成的差值D相对于上次形成的差值D的变化称为DeltaD。
如果DeltaD超过或明显超过阈值Ts(也称为DeltaDiffRef),则不对称大于正常运行时的不对称,并且很大概率存在总线冲突。可以通过不同方式来设定阈值Ts。例如,可以在正常运行时测量DeltaD,特别是在第一个成功发送的帧中。替代地,可以使用每个成功发送的帧连续测量DeltaD。例如,如果在无错误的情况下测量到DeltaD=+2,则在发送具有值TxD=1的比特的情况下每比特时间T_bt2的差值D增加2。然后可以将阈值Ts定义为例如“在无错误的情况下测量的DeltaD”+2,即在提到的示例中为Ts=2+2=4。
替代地,初始可以预给定阈值Ts。例如,如果每比特时间T_bt2确定一次差值变化DeltaD,则例如阈值Ts的可能值是半比特时间T_bt2。因此,如果一个发送比特的长度为20个CAN时钟周期,则阈值Ts=10。
图13示出了用于发送错误帧47的信号TxD2、延迟的发送信号TxDl_d和结果得到的信号RxDl的变化过程的计数值Ztx、Zrx的变化过程的具体示例。在所示示例中,假设在没有总线冲突的情况下接收信号RxD1也是理想的,以简化图像。实际上,在正常运行中(没有总线冲突)RxD1信号将略微不对称,即1比特比0比特稍长,或反过来。这导致两个计数器Ztx和Zrx的计数值缓慢分开。RxD1信号由于经由总线40的渡越时间TLD,更准确地说从发送用户站的TxD连接端到同一发送用户站的RxD连接端,相对于TxD信号延迟了渡越时间TLD。每个比特都具有比特时间T_bt2。在持续时间T_K中,由于超过了示意性示出的阈值Ts,因此在总线40上产生或存在冲突。
在存在总线冲突的情况下,比特不对称会加强。这在图13的示例中导致总线40上的1电平缩短。因此,计数器152的计数值Zrx在持续时间T_K中比计数器151的计数值Ztx增加得更慢。
为了更快和更准确地检测冲突,也就是说可选地,冲突检测器15使用补偿块154来补偿从TxD信号经由收发器到RxD信号的渡越时间TLD。在此情况下,补偿块154使用时钟,特别是CAN时钟和/或用于对数字接收信号的比特进行采样的时钟和/或可由通信控制装置11经由状态信号S_I提供的其他时钟。渡越时间TLD也可以称为发送器环路延迟(TransmitterLoop Delay,TLD)。如果不考虑和补偿渡越时间TLD,则必须更宽容地评估两个计数器Ztx和Zrx之间的差值。特别地,用于检测总线冲突的阈值Ts必须大于差值D,计数器151、152之一在时间TLD期间可以变化该差值那么大。
为了补偿,发送/接收块111测量渡越时间TLD。这例如可以在数据阶段452中的第一个上升沿或下降沿进行。原则上,渡越时间TLD的测量完全按照在CAN FD的情况下针对TDC功能所需的那样进行。发送/接收块111向冲突检测器15提供测量的渡越时间TLD作为关于状态信号S_I的信息。
结果,冲突检测器15可以使用补偿块154延迟从发送/接收块111发送的TxD信号,而不是直接处理TxD信号。因此,冲突检测器15考虑信号TxD_d,如图13的上部所示。此外,在数据阶段452开始之后延迟了渡越时间TLD地生成接通信号S_E。因此,从RxD信号有效的时间点开始才由冲突检测器15分析RxD信号。图13示出了在上述示例中由用户站10产生的接收信号RxD1,其中用户站10发送发送信号TxD1并且用户站30想要用发送信号TxD2中止发送信号TxD1。
补偿块154可以设计为移位寄存器。替代并且更加节省资源地,补偿块154可以设计为状态机。这是可能的,因为在作为发送方的用户站中已知发送的比特由多少个CAN时钟周期或时间量子(TimeQuanta)组成。
在数据阶段452中,通信控制装置11通过中止数据阶段452并且必要时附加地通过发送比特模式(例如错误帧47)来对用信号通知的发送冲突或总线冲突作出反应,所述比特模式向其他用户站20、30用信号通知数据阶段的结束452。通信控制装置11切换回仲裁阶段451。
在用户站20、30中,用信号通知数据阶段452中的冲突通过将来自相应发送/接收装置22、32的信号发送到相关联的通信控制装置21、32进行。该信号可以是接收信号RXD,对应的发送/接收装置22或冲突检测器35用预定的比特模式改变所述接收信号RXD以用信号通知冲突。替代地或附加地,对应的发送/接收装置22、32或冲突检测器25、35可以产生单独的信号,该信号经由单独的信号线路发送到相关联的通信控制装置21、31,并且特别是具有至少一个开关脉冲或预定的比特模式以用信号通知冲突。
由于在数据阶段452中将发送冲突或总线冲突用信号通知给相关联的通信控制装置11、21、31,因此在经典CAN中通过将发送信号TXD与接收信号RXD进行比较的传统的比特错误检查可以通过检查冲突指示信号S_K来代替。冲突指示信号S_K特别是具有预定的比特模式,其用信号通知或指示发送冲突或总线冲突。特别地,冲突指示信号S_K可以发送“1”作为“OK信号”和“0”作为“冲突消息”。
在上述检测器15、25、35的设计中可选的是,信号TxD、RxD中至少一个的边沿也可以被一起识别和计数。为此可以存在至少一个附加计数器。如果每比特计数出多于一个边沿,则表示存在错误。冲突检测器15、25、35可以例如立即使用信号S_K来报告这样的事件作为总线冲突。替代地,可以通过将计数值额外递增预定值来采集这样的事件,例如Zrx:=Zrx+1/2比特时间T_b2。
可选地,在上述检测器15、25、35的设计中计数器151、152也可以对两个总线电平计数而不是只对一个总线电平计数。在这种情况下,例如计数器151可以在电平1时递增计数值Ztx,而在电平0时递减计数值Ztx。
关于上述评估的变体特别有利的是,发送/接收装置12的设计既可用于同质CAN-XL总线系统——其中仅发送CAN XL消息45而不发送CAN FD消息46,也可用于混合总线系统——其中发送CAN XL消息45或CAN FD消息46。因此发送/接收装置12可以通用。
图14说明了根据第二实施例的冲突检测器15A的设计。除了以下描述的不同之外,根据本实施例的冲突检测器15A和通信控制装置11被设计为与根据先前实施例的冲突检测器15和通信控制装置11相同。
冲突检测器15A执行累积比特不对称测量。为此,冲突检测器15A仅具有一个计数器150,其测量或计数RxD信号与TxD信号之间的不同。当信号RxD和延迟了渡越时间TLD的TxD信号不同时,计数器150递增。因此检测器15A的计数器150对RxD与TxD之间的不同(即比特不对称)计数。在例如5Mbit/s或更高的高比特率下,非常有利的是将RxD信号与延迟的、即经过补偿的TxD信号进行比较。补偿块154承担TxD信号的延迟。该变体类似于冲突检测器15根据先前实施例执行的变体。
如在先前的实施例中,利用接通信号S_E的边沿将计数器150重置为零,然后计数器150使用CAN时钟和/或时间量子时钟(TimeQuanta时钟)来计算RxD信号与延迟了渡越时间TLD的TxD信号之间的不同。此外,以规则的间隔评估计数器150的计数值Zasym,例如每比特时间一次,如关于先前实施例所描述的。如果计数值Zasym的变化作为测量结果超过阈值,则存在大的不对称并且因此识别出总线冲突。冲突检测器15A用信号S_K通知总线冲突。
为了能够更容易地评估计数值Zasym的变化,可以根据评估的频率来对计数值Zasym复位。例如,如果每比特时间T_bt2评估一次计数值Zasym,则计数器150也可以在评估时复位。这样做的优点是计数值Zasym的变化与计数值Zasym的值完全对应,因为计数总是从0开始。这种重置的缺点是由此会丢失历史记录。
图15说明了根据第三实施例的冲突检测器15B的设计。除了以下描述的不同之外,根据本实施例的冲突检测器15B和通信控制装置11被设计为与根据第一实施例的冲突检测器15和通信控制装置11相同。
冲突检测器15B对RxD信号中的脉冲长度进行测量。为此,冲突检测器15B具有计数器152,冲突检测器15B利用该计数器连续测量RxD信号中的脉冲长度。可以使用比较块153B从作为测量结果的脉冲长度与阈值Ts的比较中推导出冲突。
图16中示出了用户站10的RxD1信号中的不同脉冲长度T1、T2、T3的示例,该RxD1信号与经过延迟的发送信号TxD1_d相比较地在时间t上示出。脉冲长度TI、T2、T3取决于发送信号TxD1中发送的比特模式。冲突检测器15B假设在总线冲突的情况下RxD1信号中的比特不对称剧烈增加。因此,如果RxD1信号中的1-脉冲或1-阶段明显缩短,则冲突检测器15B识别出总线冲突。例如对于图16的RxD1信号的1-脉冲的脉冲长度TI、T3就是这种情况。
为了确定RxD1信号中的脉冲长度TI、T2、T3,计数器152对RxD1信号的1-脉冲和0-脉冲进行计数。一个脉冲对应于由2个边沿限制的恒定信号值。在图16中,RxD1信号具有两个1-脉冲和脉冲长度为T2的一个0-脉冲,两个1-脉冲具有不同的脉冲长度TI、T3。
冲突检测器15B,特别是其比较块153B,经由状态信号S_I获得采样点时钟,发送/接收块111利用该采样点时钟对RxD1信号的各个比特进行采样。因此,关于所采样的比特数的信息可提供给冲突检测器15B,特别是其比较块153B。由此冲突检测器15B,特别是其比较块153B,知道当前脉冲对应于多少比特,该脉冲的脉冲长度TI、T2、T3是由计数器152测量的。
为了识别冲突,比较块153B将测量的脉冲长度T1、T2、T3分别与至少一个阈值Ts进行比较。图16的至少一个阈值Ts说明在识别出冲突之前允许脉冲有多短。例如,半比特时间T_b2是可能的值。替代地或附加地,可以使用较比特时间T_b2长的阈值Ts。在这种情况下,阈值Ts说明在识别出冲突之前允许脉冲有多长。因此,不是缩短RxD1信号中的脉冲的脉冲长度,而是寻找延长RxD1信号中的脉冲的脉冲长度。
例如,可以为具有恒定值的每个比特序列说明阈值Ts。如果每第S比特都是固定填充比特,则存在2*S个比特序列:0,00,000,...,S乘以0;1,11,111,...,S乘以1。这意味着需要2*S个阈值。
替代地,可以将阈值Ts说明为允许的脉冲缩短或延长。例如,允许的缩短或延长是半比特时间T_b2。因此,在脉冲长度T3时阈值Ts是1.5比特时间,该脉冲长度在图16的示例中对应于两个比特。由于比特时间T_b2的长度在CAN时钟周期中作为信息存在,因此可以非常容易地为每个比特序列动态地确定阈值Ts。这具有仅需要设置一个阈值Ts的巨大优势。
使用比较块153B的简化评估在于搜索太短的脉冲。例如,比较块153B被设置为如果脉冲短于例如半比特时间T_b2,则将脉冲评估为太短的脉冲。该变体非常简单,因为只需要一个比较值或阈值Ts。然而,在不利的比特序列情况下,尽管存在总线冲突,也可能不会低于该脉冲长度。
可以通过多种方式设定至少一个阈值Ts。特别地,可以固定地配置阈值Ts。替代地或附加地,可以在正常运行中测量阈值Ts,例如在第一个成功发送的帧450中或用每个成功发送的帧450连续地测量,或者可以是它们的组合。
冲突检测器15B功能的优点在于该变体很容易实现,因为只分析RxD信号。此外,特别是同时,由冲突检测器15B执行的方法能够评估/分析在通信控制装置11的RxD连接端处接收到的任何比特序列。
根据冲突检测器15B的第一修改,冲突检测器15B确定RxD信号中不允许的长脉冲长度以检测缺失的固定填充比特。在CAN XL的情况下,通信控制装置11在数据阶段452中使用固定填充比特或其他设定的、重复的比特模式以用于同步。
冲突检测器15B,更准确地说是其比较块153,将不允许的长脉冲长度评估为总线冲突或其他错误。例如,如果每第S比特都是固定填充比特,则具有恒定电平的最大允许脉冲长度TI、T2、T3具有S个比特的值。该比特序列之后的比特是固定填充比特,具有第S比特的相反值。
因此,在冲突检测器15B的该修改中也将计数器152用于测量两个边沿之间的脉冲长度。如果测量到例如S+1个理想比特长度或比特时间T_b2或S+0.8个理想比特长度或比特时间T_b2的脉冲长度,则缺少固定填充比特。在这种情况下,冲突检测器15B,更准确地说是其比较块153B,判定存在总线冲突。冲突检测器15B,更准确地说是其比较块153B,通过冲突指示信号S_K向通信控制装置11报告总线冲突。
除了冲突检测器15B的上述优点之外,冲突检测器15B的所描述的第一修改的优点还在于参数S是CAN XL特性。因此,经过修改的冲突检测器15B的功能根本不需要配置。然而,根据第一修改,冲突检测器15B仅识别RXD信号的数据流中缺失的比特。经过修改的冲突检测器15B不能确定比特不对称的微小变化。
然而,如果总线系统1只在仲裁模式下仅使用收发器或发送/接收装置12、22、32CAN XL,即使用隐性和显性总线电平,则这种类型的冲突检测就足够了。其原因是错误帧47因此以显性方式被发送并且因此可以覆盖发送用户站的发送信号。
根据冲突检测器15B的第二修改,冲突检测器15B比较RxD信号中1-脉冲和0-脉冲的脉冲长度,以便在RxD信号的两个上升沿或两个下降沿之间进行比特不对称测量。
例如,在图16的比特序列中,可以测量两个上升沿之间的比特不对称。如已经提到的,在RxD1信号中,第一1-阶段或第一1-脉冲具有脉冲长度T1,并且第一0-阶段或第一0-脉冲具有脉冲长度T2。由于固定填充比特,0-阶段或1-阶段的长度可以在1和S个比特之间。总共存在S*S个由可能的0-阶段和1-阶段组成的比特序列。
因此在当前的第二修改中,冲突检测器15B,更准确地说是其比较块153B,例如根据1-阶段的持续时间或脉冲长度T1和0-阶段的持续时间或脉冲长度T2来确定不对称,并且确定每阶段的比特数。如果比特不对称超过阈值,则冲突检测器15B,更准确地说是其比较块153B,识别出总线冲突。冲突检测器15B,更准确地说是其比较块153B,通过冲突指示信号S_K向通信控制装置11报告总线冲突。
如前所述,冲突检测器15B的第二修改的优点在于该变体具有较低的复杂性,因为冲突检测器15B仅测量RxD信号。
图17说明了根据第四实施例的冲突检测器15C的设计。除了以下描述的不同之外,根据本实施例的冲突检测器15C和通信控制装置11被设计为与根据第一实施例的冲突检测器15和通信控制装置11相同。
冲突检测器15C测量TxD信号和RxD信号中具有恒定比特值阶段的脉冲长度。可选地,可以使用经过延迟的信号TxD_d,如以虚线绘制的框154所示。然后进行相关脉冲长度的比较。理想情况下,TxD信号中的脉冲长度与RxD信号中的脉冲长度相同。为此,冲突检测器15B具有第一计数器151,冲突检测器15C利用第一计数器151连续测量TxD信号中的脉冲长度。此外,冲突检测器15C具有第二计数器152,冲突检测器15C利用第二计数器152连续测量RxD信号中的脉冲长度。可以使用比较块153C从脉冲长度与阈值Ts的比较中推导出冲突。
除了用户站10的RxD1信号中的不同脉冲长度T1、T2、T3的示例之外,图18中还示出了在时间t上经过延迟的发送信号TxD1_d中的不同脉冲长度T4、T5、T6的示例。脉冲长度TI、T2、T3、T4、T5、T6取决于发送信号TxD1中发送的比特模式。
冲突检测器15C因此使用其计数器151、152来测量出现在相应信号TxDl_d、RxDl的两个边沿之间的0-阶段和1-阶段。作为图18的信号TxDl_d的替代,计数器151可以测量出现在信号TxDl的两个边沿之间的0-阶段和1-阶段。
比较块153C将RxD信号中测量的第一1-阶段、即图18的示例中的脉冲长度T1,与TxD信号中的第一1-阶段、即图18的示例中的脉冲长度T4进行比较。该比较通过形成差值来进行,例如Asym=T4-T1。接下来比较0-阶段。在图18的示例中,结果是Asym=T5-T2。
由比较块153C确定的比较结果对应于比特不对称Asym的绝对值。如果比特不对称Asym超过某个阈值,则存在总线冲突。因此,比较块153C附加地执行与阈值的比较。冲突检测器15C,更准确地说是其比较块153C,通过冲突指示信号S_K向通信控制装置11报告总线冲突。
冲突检测器15C的前述功能的优点是冲突检测器15C不需要关于阶段、特别是数据阶段452中的比特数的信息。冲突检测器15C只需计数然后比较。此外,冲突检测器15C也隐含地能够检测附加的边沿变化,所述边沿变化仅在总线冲突的情况下才是预期的。这是因为由总线冲突产生的RxD信号中的附加边沿将导致比较块153C的评估逻辑变得混乱并确定非常大的比特不对称。如果确定了这种非常大的比特不对称,则肯定会超过阈值并因此检测到总线冲突。
冲突检测器15、15A、15B、15C、25、35及其修改、用户站10、20、30、总线系统1和其中执行的方法的所有先前描述的设计可以单独使用或以所有可能的组合使用。特别地,上述实施例和/或其修改的所有特征可以任意组合。附加地或替代地,特别是可以想到以下修改。
当然,在上述所有实施例中可以使用任意多的计数器150、151来测量所分析的发送信号TxD、TxD1、TxD_d的脉冲长度。当然,在上述所有实施例中,可以使用任意多的计数器150、152来测量所分析的接收信号RxD、RxD1的脉冲长度。
即使上面以CAN总线系统为例描述了本发明,本发明也可以用于任何以下通信网络和/或通信方法,其中使用两个不同通信阶段,在这些通信阶段中区分为不同的通信阶段产生的总线状态。特别地,本发明可以用于其他串行通信网络的开发,例如特别是以太网、现场总线系统等。
特别地,根据实施例的总线系统1可以是其中可以以两种不同的比特率串行传输数据的通信网络。有利的、但不是强制性的前提是,在总线系统1中至少在特定的时间段内保证一个用户站10、20、30对公共信道的排他的、无冲突的访问。
在这些实施例的总线系统1中的用户站10、20、30的数量和布置是任意的。特别是可以取消总线系统1中的用户站20。在总线系统1中可以存在用户站10或30中的一个或多个。可以想到,总线系统1中的所有用户站都被相同地设计,即仅存在用户站10或仅存在用户站30。
所有先前描述的用于识别总线冲突的变体都可以进行时间滤波,以提高关于电磁兼容性(EMC)和相对于静电充电(ESD)、脉冲和其他干扰的鲁棒性。

Claims (15)

1.用于串行总线系统(1)的用户站(10;20;30)的冲突检测器(15;15A;15B;15C;25;35),具有
至少一个计数器(150;152),用于对数字接收信号(RxD;RxDl)的脉冲特性的出现进行计数,所述数字接收信号由所述用户站(10;20;30)根据从所述总线系统(1)的总线(40)串行接收的信号(VDIFF)产生,其中根据发送信号(TxD;TxD1;TxD2)形成从所述总线(40)接收的信号(VDIFF),所述发送信号是由所述用户站(10;20;30)的通信控制装置(11)为帧(450)串行发送到所述总线(40)的,以及其中所述用户站(10;20;30)在第一通信阶段(451;453、451)中为具有第一运行方式的帧(450)产生总线状态(401;402)并且在第二通信阶段中为具有与所述第一运行方式不同的第二运行方式的帧(450)产生总线状态(401;402;U_D0;U_D1),以及
比较块(153;153A;153B;153C),所述比较块被设计为将根据所述至少一个计数器(150;152)的计数值(Zasym;Zrx)确定的测量结果与至少一个阈值(Ts)进行比较,并且如果所述比较块(153;153A;153B;153C)在所述比较时确定所述用户站(10;20;30)在所述第二通信阶段(452)中没有排他、无冲突地访问所述总线(40)则使用冲突指示信号(S_K)指示给所述通信控制装置(11)。
2.根据权利要求1所述的冲突检测器(15;15B;15C;25;35),
其中所述数字接收信号(RxD;RxDl)的脉冲特性是脉冲的电平,并且
其中所述至少一个计数器(150;152)被设计为随时间对所述数字接收信号(RxD;RxDl)的第一电平的出现频率进行计数,或者所述至少一个计数器(150)被设计为在出现所述数字接收信号(RxD;RxDl)的第一电平时递增其计数值(Zrx)并且在出现所述数字接收信号(RxD;RxDl)的第二电平时递减其计数值(Zrx)。
3.根据权利要求1或2所述的冲突检测器(15;15B;15C;25;35),其中,所述数字接收信号(RxD;RxD1)的脉冲特性是脉冲的脉冲长度(T1;T2;T3)。
4.根据前述权利要求中任一项所述的冲突检测器(15B;25;35),其中,所述至少一个计数器(150;152)和/或所述比较块(153B)被设计为使用所述通信控制装置(11)的状态信号(S_I)来确定所述数字接收信号(RxD;RxDl)的脉冲特性,所述状态信号包括用于随时间对所述数字接收信号(RxD;RxDl)的比特采样的时钟和/或所述通信控制装置(11)的时钟。
5.根据权利要求3所述的冲突检测器(15C;25;35),其中,所述比较块(153C)被设计为将所述数字接收信号(RxD;RxDl)的脉冲的脉冲长度(T1;T2,T3)与所述发送信号TxD;TxDl;TxD2;TxD_d)的脉冲的脉冲长度(T4;T5,T6)进行比较,以确定所述用户站(10;20;30)在所述第二通信阶段(452)中是否没有排他、无冲突地访问总线(40)。
6.根据权利要求1所述的冲突检测器(15A;25;35),其中,所述数字接收信号(RxD;RxD1)的脉冲特性是脉冲的电平与所述发送信号(TxD;TxD1;TxD2;TxD_d)的脉冲的对应电平的不同。
7.根据前述权利要求中任一项所述的冲突检测器(15;15A;15B;15C;25;35),
还具有至少一个附加计数器(151),用于对所述数字发送信号(TxD;TxD1;TxD2;TxD_d)的脉冲特性的出现进行计数,
其中所述比较块(153;153A;153B;153C)被设计为将根据所述至少一个附加计数器(151)的计数值(Ztx)确定的测量结果与至少一个阈值(Ts)进行比较,以确定所述用户站(10;20;30)在所述第二通信阶段(452)中是否没有排他、无冲突地访问所述总线(40)。
8.根据权利要求7所述的冲突检测器(15;25;35),其中,所述比较块(153)被设计为将所述至少一个计数器(152)的计数值(Zrx)与所述至少一个附加计数器(151)的计数值(Ztx)进行比较,以基于相互比较的计数值(Zrx,Ztx)的变化的差值来确定所述用户站(10;20;30)在所述第二通信阶段(452)中是否没有排他、无冲突地访问所述总线(40),所述至少一个计数器的计数值被设置用于对所述数字接收信号(RxD;RxD1)的脉冲特性的出现进行计数,并且所述至少一个附加计数器的计数值被设置用于对所述数字发送信号(TxD;TxDl;TxD2;TxD_d)的脉冲特性的出现进行计数。
9.根据权利要求7或8所述的冲突检测器(15;15A;15B;15C;25;35),其中,所述冲突检测器(15A;25;35)被设计为作为发送信号使用延迟的发送信号(TxD_d),其被延迟了所述发送信号(TxD;TxDl;TxD2)从所述通信控制装置(11)的TxD连接端经由所述总线(40)到达所述通信控制装置(11)的RxD连接端所需的渡越时间(TLD)。
10.根据前述权利要求中任一项所述的冲突检测器(15;15A;15B;15C;25;35),还具有至少一个计数器,用于对所述数字接收信号(RxD;RxD1)或所述数字发送信号(TxD;TxDl;TxD2;TxD_d)的脉冲的上升沿和/或下降沿进行计数。
11.用于串行总线系统(1)的用户站(10;20;30),具有
用于控制所述用户站(10;20;30)与所述总线系统(1)的至少一个其他用户站(10;20;30)的通信的通信控制装置(11;21;31),
用于将由所述通信控制装置(11;21;31)为帧(450)产生的信号(TxD;TxDl;TxD2)发送到所述总线系统(1)的总线(40)上并从所述总线(40)接收信号(VDIFF)的发送/接收装置(12;22;32),以及
根据前述权利要求中任一项所述的冲突检测器(15;15A;15B;15C;25;35),
其中所述发送/接收装置(12;22;32)在第一通信阶段(451;453、451)中为具有第一运行方式的帧(450)产生总线状态(401;402)并且在第二通信阶段(452)中为具有不同于所述第一运行方式的第二运行方式的帧(450)产生总线状态(401;402;U_D0;U_D1)。
12.根据权利要求11所述的用户站(10;20;30),
其中在所述第一通信阶段(451;453、451)中从所述总线(40)接收的信号(VDIFF)的总线状态(401、402)比在所述第二通信阶段(452)中接收的信号的总线状态(U_D0、U_D1)具有更长的比特时间(T_b1),和/或在第一通信阶段(451;453、451)中从总线(40)接收的信号的总线状态(401、402)是用与在所述第二通信阶段中接收的信号的总线状态(U_D0、U_D1)不同的物理层产生的,以及
其中所述通信控制装置(11;21;31)被设计为向所述冲突检测器(15;15A;15B;15C;25;35)输出接通信号(S_E),以仅针对所述第二通信阶段(452)接通所述冲突检测器(15;15A;15B;15C;25;35)并且针对所述第一通信阶段(451;453、451)关闭所述冲突检测器(15;15A;15B;15C;25;35),或者将所述冲突检测器(15;15A;15B;15C;25;35)从一个通信阶段切换到另一个通信阶段。
13.根据权利要求11或12所述的用户站(10;20;30),其中,在所述第一通信阶段(451;453、451)中协商所述总线系统(1)的哪个用户站(10、20、30)在随后的第二通信阶段(452)中获得对所述总线(40)的至少暂时排他的、无冲突的访问。
14.总线系统(1),具有
总线(40),以及
至少两个用户站(10;20;30),所述至少两个用户站经由所述总线(40)相互连接,使得所述至少两个用户站能够彼此串行通信,并且所述至少两个用户站中的至少一个用户站(10;30)是根据权利要求11至13中任一项所述的用户站(10;30)。
15.用于识别串行总线系统(1)中的总线冲突的方法,其中所述方法利用用于所述串行总线系统(1)的用户站(10;20;30)的冲突检测器(15;15A;15B;15C;25;35)来执行,以及其中所述冲突检测器(15;15A;15B;15C;25;35)执行以下步骤:
使用至少一个计数器(150;152)对数字接收信号(RxD;RxD1)的脉冲特性的出现进行计数,所述数字接收信号由所述用户站(10;20;30)根据从所述总线系统(1)的总线40)串行接收的信号(VDIFF)产生,其中根据发送信号(TxD;TxDl;TxD2)形成从所述总线(40)接收的信号(VDIFF),所述发送信号是由所述用户站(10;20;30)的通信控制装置(11)在帧(450)中串行发送到所述总线(40)的,以及其中所述用户站(10;20;30)在第一通信阶段(451;453,451)中为具有第一运行方式的帧(450)产生总线状态(401;402)并且在第二通信阶段(452)中为具有与所述第一运行方式不同的第二运行方式的帧(450)产生总线状态(401;402;U_D0;U_D1),
使用比较块(153;153A;153B;153C)将根据所述至少一个计数器(150;152)的计数值(Zasym;Zrx)确定的测量结果与至少一个阈值(Ts)进行比较,以及
如果所述比较块(153;153A;153B;153C)在所述比较时确定所述用户站(10;20;30)在所述第二通信阶段(452)中没有排他、无冲突地访问所述总线(40)则使用冲突指示信号(S_K)指示给所述通信控制装置(11)。
CN202080070882.2A 2019-08-09 2020-08-04 用于串行总线系统的用户站的冲突检测器和用于串行总线系统中通信的方法 Active CN114503520B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102019211980.8A DE102019211980A1 (de) 2019-08-09 2019-08-09 Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem
DE102019211980.8 2019-08-09
PCT/EP2020/071919 WO2021028269A1 (de) 2019-08-09 2020-08-04 Konfliktdetektor für eine teilnehmerstation eines seriellen bussystems und verfahren zur kommunikation in einem seriellen bussystem

Publications (2)

Publication Number Publication Date
CN114503520A true CN114503520A (zh) 2022-05-13
CN114503520B CN114503520B (zh) 2023-05-02

Family

ID=71950631

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080070882.2A Active CN114503520B (zh) 2019-08-09 2020-08-04 用于串行总线系统的用户站的冲突检测器和用于串行总线系统中通信的方法

Country Status (3)

Country Link
CN (1) CN114503520B (zh)
DE (1) DE102019211980A1 (zh)
WO (1) WO2021028269A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116866108A (zh) * 2023-07-31 2023-10-10 苏州纳芯微电子股份有限公司 总线通信方法、通信系统控制方法和通信系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1439971A (zh) * 2002-02-20 2003-09-03 贵州以太科技信息产业有限责任公司 一种串行接口总线通信控制器
US20120084378A1 (en) * 2010-10-01 2012-04-05 Denso Corporation Communication system, master node, and slave node
US20140207982A1 (en) * 2011-07-06 2014-07-24 Uwe Graff Signal Processing System and Method for Processing Signals in a Bus Node
US20170063571A1 (en) * 2014-03-05 2017-03-02 Robert Bosch Gmbh User station for a bus system and method for reducing line-conducted emissions in a bus system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100967481B1 (ko) * 2008-11-14 2010-07-07 주식회사 동부하이텍 데이터 전송 시스템
DE102015209196A1 (de) * 2014-09-08 2016-03-10 Robert Bosch Gmbh Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmern eines Bussystems
DE102017213833A1 (de) * 2017-08-08 2019-02-14 Robert Bosch Gmbh Sende-/Empfangseinrichtung für ein Bussystem und Verfahren zur Reduzierung einer Schwingneigung beim Übergang zwischen unterschiedlichen Bitzuständen

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1439971A (zh) * 2002-02-20 2003-09-03 贵州以太科技信息产业有限责任公司 一种串行接口总线通信控制器
US20120084378A1 (en) * 2010-10-01 2012-04-05 Denso Corporation Communication system, master node, and slave node
US20140207982A1 (en) * 2011-07-06 2014-07-24 Uwe Graff Signal Processing System and Method for Processing Signals in a Bus Node
US20170063571A1 (en) * 2014-03-05 2017-03-02 Robert Bosch Gmbh User station for a bus system and method for reducing line-conducted emissions in a bus system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘冠男;: "一种CAN总线控制器的设计与实现" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116866108A (zh) * 2023-07-31 2023-10-10 苏州纳芯微电子股份有限公司 总线通信方法、通信系统控制方法和通信系统
CN116866108B (zh) * 2023-07-31 2024-03-12 苏州纳芯微电子股份有限公司 总线通信方法、通信系统控制方法和通信系统

Also Published As

Publication number Publication date
CN114503520B (zh) 2023-05-02
DE102019211980A1 (de) 2021-02-11
WO2021028269A1 (de) 2021-02-18

Similar Documents

Publication Publication Date Title
CN112956161B (zh) 用于串行总线系统的用户站的错误帧屏蔽单元和用于串行总线系统中的通信的方法
CN110838960B (zh) 串行总线系统的用户站和串行总线系统中发送消息的方法
CN113454952B (zh) 用于串行总线系统的用户站的装置及在串行总线系统中通信的方法
CN114747183B (zh) 用于串行总线系统的用户站的冲突探测器和用于在串行总线系统中进行通信的方法
US20220029850A1 (en) Device for a user station of a serial bus system, and method for communicating in a serial bus system
EP3275130B1 (en) Method for transmitting messages in a data bus system, transceiver and electronic control unit for a motor vehicle
CN114144996B (zh) 用于串行总线系统的用户站的装置和用于在串行总线系统中进行通信的方法
CN113196711B (zh) 用于串行总线系统的用户站的装置和用于串行总线系统中的通信的方法
CN113169917B (zh) 用于串行总线系统的订户站的重叠检测单元和用于串行总线系统中的通信的方法
US11424951B2 (en) Device and method for a transmitter/receiver device of a bus system
CN114503520B (zh) 用于串行总线系统的用户站的冲突检测器和用于串行总线系统中通信的方法
CN114128221B (zh) 用于串行总线系统的用户站和用于在串行总线系统中通信的方法
CN112913192B (zh) 用于串行总线系统的用户站和用于在串行总线系统中传输数据的方法
US11909553B2 (en) Frame screening unit, user station for a serial bus system, and method for communicating in a serial bus system
CN111164937B (zh) 用于总线系统的发送/接收装置和用于减小在不同的位状态之间过渡时的振荡趋势的方法
US11831466B2 (en) User station for a serial bus system, and method for transmitting a message in a serial bus system
CN114726669A (zh) 用于串行的总线系统的用户站的通信控制装置和用于在串行的总线系统中通信的方法
CN111713074A (zh) 用于串行总线系统的用户站和用于针对在串行总线系统中接收的消息用信号通知错误的方法
US11868293B2 (en) Device for a user station of a serial bus system, and method for communicating in a serial bus system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant