一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于串行总线系统的用户站和用于在串行总线系统中通信的方法与流程

2022-07-10 14:48:43 来源:中国专利 TAG:

1.本发明涉及一种用于串行总线系统的用户站和一种用于在串行总线系统中通信的方法,所述串行总线系统以高数据速率和极大的灵活性和极好的抗错误能力工作。


背景技术:

2.用于传感器和控制设备之间通信的总线系统(例如在车辆中)应当取决于技术设施或车辆的功能数量使得能够传输大量数据。在此,通常要求数据比迄今为止更快地从发送方传输到接收方,并且在需要时还可以传输大数据包。
3.在车辆的情况下,总线系统目前处于引入阶段,其中数据作为iso11898-1:2015标准中的消息进行传输,所述标准作为使用can fd的can协议规范。这些消息在总线系统的总线用户之间传输,所述总线用户例如是传感器、控制设备、发送器等。can fd由大多数制造商首先以2mbit/s(兆比特/秒,bit为“比特”)的数据比特率和500kbit/s(千比特/秒)的仲裁比特率用在车辆中。
4.为了实现更高的数据速率,目前正在开发用于can fd的后续总线系统,该后续总线系统在下面称为can xl。除了经由can总线进行纯数据传输外,can xl还应支持其他功能,如功能安全性(safety)、数据安全性(security)和服务质量(qos=quality of service)。这些是自主驾驶车辆中所需要的基本特性。
5.非常有利的是,can xl和can fd以及经典can是兼容的。在这种情况下,借助于can fd帧中的res比特将can fd帧和can xl帧区分开来。由于兼容性,到该res比特为止,即使在can xl的情况下也可以应用用于can fd仲裁字段的动态填充比特的规则。
6.对于系统的功能安全性而言,非常有利和重要的是残余错误概率尽可能低。可以借助于校验和(crc=cyclic redundancy check,循环冗余校验)以足够的概率识别出第1类错误,即错误地相反的采样比特(bit flips,比特翻转)和/或第2类错误,即局部累积的比特错误(burst fehler,突发错误)。应当注意,接收用户站还对帧进行格式检查。这特别是也有助于识别出突发错误。错误识别的质量可以通过残余错误概率来表达。残余错误概率表明,尽管在总线系统的并非帧发送方的接收用户站(接收节点)处出现错误仍然将帧接受为正确的概率有多大。
7.在经典can的情况下,crc计算具有以下缺点。在经典can的情况下,动态填充比特不用在crc计算中。出于这个原因,在经典can的情况下存在无法可靠识别出校验和(crc)的第3类错误。该错误(第3类)由翻转仅仅两个比特引起,这也称为比特翻转。在此情况下,一个比特翻转产生动态填充条件,而另一个比特翻转取消动态填充条件。在此,串行传输比特(比特流)中比特翻转的顺序无关紧要。因此,crc计算很大概率无法识别这种错误,即使crc计算实际上在经典can的情况下可以可靠地识别五个比特翻转(第1类错误)也是如此。因此,第3类错误是特别有问题的情况或是严重错误。
8.然而,在can fd的情况下,crc计算具有以下缺点。为了在can fd的情况下对第3类
错误具有稳健性,在can fd的情况下将动态填充比特引入crc计算中。然而,后来发现这里存在不能由can fd crc识别的第4类错误。该第4类错误是在动态填充条件情况下在接收用户站的数据流中的单个比特丢失(bit drop)或比特插入(bit insertion)。这意味着由于错误的重新同步,接收用户站看到比发送用户站(发送节点)实际传输的多一个比特或少一个比特。然而这并不明显,因为在can情况下仅在具有相同值的5个相同比特之后插入动态填充比特。
9.在can fd情况下的crc计算中引入动态填充比特使得crc字段中的“填充比特计数器”是必要的。这种“填充比特计数器”降低了第4类错误保持不被发现的概率,但不能完全解决这个问题。然而,这种“填充比特计数器”导致复杂性和数据过多(开销),从而降低可传输的有用数据速率。
10.此外,在can fd的情况下不存在报头校验和(header crc)。因此无法识别出数据长度字段的代码(dlc=datalengthcode)中的错误。
11.因此,数据长度字段的代码中的比特错误可能导致总线系统的并非can fd帧发送方的接收用户站(接收节点)在can fd帧中解码出错误的帧长度。因此,接收用户站(接收节点)在错误的位置检查校验和(crc)。
12.如果在can xl的情况下以与can fd情况下相同的方式执行crc计算,则can xl可能会具有与can fd相同的缺点。


技术实现要素:

13.因此,本发明的任务是提供解决上述问题的一种用于串行总线系统的用户站和一种用于在串行总线系统中通信的方法。特别地,应当提供一种用于串行总线系统的用户站和一种用于在串行总线系统中通信的方法,其中以较大的可靠性识别出与比特流中的动态填充比特相关的错误,以便即使在高数据速率和提高每帧有用数据量的情况下也实现通信的高错误稳健性。
14.该任务通过具有权利要求1的特征的用于串行总线系统的用户站来解决。所述用户站具有通信控制装置,用于控制所述用户站与所述总线系统的至少一个其他用户站的通信,以及发送/接收装置,所述发送/接收装置被设计用于将由所述通信控制装置产生的发送信号串行地发送到所述总线系统的总线上,并且所述发送/接收装置被设计用于从所述总线系统的所述总线串行地接收信号,其中所述通信控制装置被设计为根据帧产生所述发送信号并在所述帧中插入两个校验和,所述两个校验和考虑到所述帧的不同比特,其中所述通信控制装置被设计为在所述帧中插入动态填充比特,使得在连续5个相同比特之后将相反的填充比特插入到所述帧的比特流中,并且其中所述通信控制装置被设计为计算两个校验和,使得这两个校验和中最多有一个将动态填充比特考虑在内。
15.所描述的用户站由于其设计可以足够可靠地识别出第3类错误和第4类错误。这样做的原因是can xl帧中的两个校验和(crc)之一可以足够可靠地识别出第3类错误,而另一个校验和(crc)可以足够可靠地识别出第4类错误。因此可以省去帧中的“填充比特计数器”字段,这提高了有用数据速率。因此,在上述用户站的情况下例如不像在can fd的情况下那样绝对需要“stuff bit count”(填充比特计数器)字段。为了进一步降低残余错误概率,仍
然可以在can xl帧中附加地插入“stuff bit count”字段,这里称为sbc字段。
16.此外,所描述的用户站由于其设计可以很好地避免can fd与填充比特相关的两个提到的缺点。这意味着,用户站可以足够可靠地识别出在扫描数据长度代码时的错误。由此,帧的接收方知道正确的帧长度,并且因此也可以在正确位置检查在帧末尾处的校验和(crc=循环冗余校验)。
17.因此,利用所述用户站,即使每帧的有用数据量增加也可以保证以高功能可靠性——同时在总线系统运行中的当前事件方面具有很大的灵活性——和以低错误率发送和接收帧。
18.在此,在总线系统中使用所述用户站特别是可以在第一通信阶段中保持从can已知的仲裁并且与can或can fd相比仍然显著提高传输速率。
19.如果在总线系统中也存在根据can协议和/或canfd协议发送消息的至少一个can用户站和/或至少一个can fd用户站,则也可以使用由所述用户站执行的方法。
20.在从属权利要求中说明了所述用户站的有利的其他设计。
21.根据一种选项,所述通信控制装置被设计为将第一字段插入到帧中,在所述第一字段中对动态填充比特的数量进行编码,其中所述通信控制装置被设计为在数据字段之前插入至少一个第一字段,在所述数据字段中插入帧的有用数据。
22.可能地,所述发送/接收装置被设计用于将由所述通信控制装置产生的发送信号串行地发送到所述总线系统的总线上,使得对于在所述总线系统的用户站之间交换的消息而言,在第一通信阶段中发送到所述总线上的信号的比特时间可以不同于在第二通信阶段中发送的信号的比特时间。
23.根据一个具体设计,所述通信控制装置被设计为将第二字段插入到帧中,所述第二字段被设计为检查所述帧的比特流是否在所述总线系统的接收所述帧但尚未发送所述帧的用户站中相比于预期帧偏移了至少一个比特,其中所述通信控制装置被设计为在数据字段之后在所述帧中插入至少一个第二字段,特别是在帧校验和之后在所述帧中插入所述至少一个字段,所述帧校验和是关于帧中的所有比特形成的。
24.根据一个实施例,所述通信控制装置被设计为在至少一个第二字段之后将具有两个比特的同步字段插入到帧中,使得这两个比特具有不同的值,从而这些比特形成同步边沿,所述同步边沿布置在用于切换将发送信号发送到总线上的比特率并且用于切换发送/接收装置的物理层的比特模式之后。
25.可能的是,为消息形成的帧以与can fd兼容的方式构建,其中在第一通信阶段中协商所述总线系统中的哪个用户站在随后的第二通信阶段中至少暂时排他地、无冲突地访问所述总线。
26.上述用户站可以是总线系统的一部分,该总线系统还包括总线和至少两个用户站,所述至少两个用户站经由所述总线相互连接,使得所述至少两个用户站可以彼此串行通信。在这种情况下,所述至少两个用户站中的至少一个用户站是先前描述的用户站。
27.上述任务还通过根据权利要求13所述的用于在串行总线系统中通信的方法来解决。该方法利用所述总线系统的用户站执行,所述用户站具有通信控制装置和发送/接收装置,其中所述方法具有以下步骤:使用所述通信控制装置控制所述用户站与所述总线系统的至少一个其他用户站的通信;使用所述发送/接收装置将由所述通信控制装置产生的发
送信号发送到所述总线系统的总线上,其中所述发送/接收装置还被设计为从所述总线系统的总线串行地接收信号;使用所述通信控制装置根据帧产生所述发送信号,其中所述通信控制装置将两个校验和插入到所述帧中,所述两个校验和考虑到所述帧的不同比特,其中所述通信控制装置将动态填充比特插入到所述帧中,使得在连续5个相同比特之后,将相反的填充比特插入到所述帧的比特流中,以及其中所述通信控制装置计算所述两个校验和,使得所述两个校验和中最多有一个将动态填充比特考虑在内。
28.该方法提供了与前面关于用户站提到的相同的优点。
29.本发明的其他可能的实现还包括前面或下面关于实施例描述的特征或实施方式的未明确提及的组合。在此,本领域技术人员还将添加个别方面作为本发明的相应基本形式的改进或补充。
附图说明
30.下面参考附图并基于实施例更详细地描述本发明。
31.图1示出了根据第一实施例的总线系统的简化框图;图2示出了用于说明根据第一实施例的总线系统的用户站可以发送的消息的结构的示意图;图3示出了根据第一实施例的总线系统的用户站的简化示意框图;图4示出了根据第一实施例的用户站中的总线信号can-xl_h和can-xl_l的时间变化过程;图5示出了根据第一实施例的用户站中的总线信号can-xl_h和can-xl_l的差分电压vdiff的时间变化过程;图6示出了用于说明根据第二实施例的总线系统的用户站可以发送的消息的结构的示意图;图7示出了用于说明根据第三实施例的总线系统的用户站可以发送的消息的结构的示意图;图8示出了用于说明根据第四实施例的总线系统的用户站可以发送的消息的结构的示意图;图9示出了用于说明根据第五实施例的总线系统的用户站可以发送的消息的结构的示意图;以及图10示出了用于说明根据第六实施例的总线系统的用户站可以发送的消息的结构的示意图。
32.在附图中,相同或具有相同功能的元素配备有相同的附图标记,除非另有说明。
具体实施方式
33.作为示例,图1示出了总线系统1,该总线系统1特别是基本上被设计用于can总线系统、can fd总线系统、can xl总线系统和/或它们的变型,如下面描述的。总线系统1可以用在车辆(特别是机动车辆)、飞机等中,或者用在医院等中。
34.在图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例如是机动车辆的控制设备、传感器、显示设备等。
35.如图1中所示,用户站10具有通信控制装置11、发送/接收装置12和帧校验模块15。用户站20具有通信控制装置21和发送/接收装置22。用户站30具有通信控制装置31、发送/接收装置32和帧校验模块35。用户站10、20、30的发送/接收装置12、22、32分别直接连接到总线40,即使这在图1中未显示。
36.通信控制装置11、21、31分别用于控制相应用户站10、20、30经由总线40与连接到总线40的用户站10、20、30中的至少一个其他用户站的通信。
37.通信控制装置11、31创建并读取第一消息45,所述第一消息例如是经过修改的can消息45。在此情况下,经过修改的can消息45是基于can xl格式构建的,参照图2更详细地对此进行描述,并且其中使用了相应的帧校验模块15、35。通信控制装置11、31还可以实施为根据需要为发送/接收装置32提供can xl消息45或can fd消息46或从发送/接收装置32接收can xl消息45或can fd消息46。在此也使用了相应的帧校验模块15、35。通信控制装置11、31因此创建和读取第一消息45或第二消息46,其中第一和第二消息45、46通过其数据传输标准而彼此不同,即在这种情况下为can xl或can fd。
38.通信控制装置21可以像根据iso11898-1:2015的传统can控制器那样实施,即就像容忍can fd的经典cancan控制器或can fd控制器。通信控制装置21创建和读取第二消息46,例如can fd消息46。在can fd消息46中可以包括0到64个数据字节的数量,这些数据字节还以比在经典can消息传输的情况下明显更快的数据速率传输。特别地,通信控制装置21像传统can fd控制器那样实施。
39.发送/接收装置22可以像根据iso11898-1:2015的传统can收发器或can fd收发器那样实施。发送/接收装置12、32可以被实施为根据需要为相关联的通信控制装置11、31提供根据can xl格式的消息45或根据当前can fd格式的消息46或从相关联的通信控制装置11、31接收这些消息。
40.利用两个用户站10、30,可以实现形成并且然后传输具有can xl格式的消息45以及接收这样的消息45。
41.图2针对消息45示出了can xl帧450,其由通信控制装置11为发送/接收装置12提供以发送到总线40上。在此情况下,通信控制装置11在本实施例中将帧450创建为与canfd兼容,也如图2中所示。这同样适用于用户站30的通信控制装置31和发送/接收装置32。
42.根据图2,用于在总线40上进行can通信的can xl帧450分为不同的通信阶段451、452,即仲裁阶段451和数据阶段452。帧450具有仲裁字段453、控制字段454、数据字段455、用于校验和fcrc和切换序列ads的校验和字段456和确认字段457。
43.在仲裁阶段451中,借助于仲裁字段453中的标识符(id)在用户站10、20、30之间逐比特地协商:哪个用户站10、20、30想发送具有最高优先级的消息45、46并且因此在随后的数据阶段452中的下一个用于发送的时间内获得对总线系统1的总线40的排他访问。在仲裁阶段451中,就像在can和can-fd的情况下那样使用物理层。所述物理层对应于已知osi模型
(开放系统互连模型)的比特传输层或第1层。
44.在阶段451期间的重要一点是使用已知的csma/cr方法,该方法允许用户站10、20、30同时访问总线40而不会破坏更高优先级的消息45、46。由此可以相对简单地将另外的总线用户站10、20、30添加到总线系统1,这是非常有利的。
45.csma/cr方法的结果是总线40上必须存在所谓的隐性状态,所述隐性状态可以由其他用户站10、20、30用总线40上的显性状态覆盖。在隐性状态中,在各个用户站10、20、30上高欧姆关系占主导,这与总线电路的寄生相组合导致更长的时间常数。这导致当今can-fd物理层的最大比特率在真实车辆使用中被限制为目前大约每秒2兆比特。
46.在数据阶段452中,除了控制字段454的一部分之外还发送can-xl帧的有用数据或来自数据字段455的消息45的有用数据,以及用于校验和fcrc的校验和字段456以及此外还发送字段das,该字段用于从数据阶段452切换回仲裁阶段451。
47.当作为发送方的用户站10赢得仲裁并且作为发送方的用户站10因此为了发送而排他地访问总线系统1的总线40时,消息45的发送方才开始将数据阶段452的比特发送到总线40上。
48.通常,与can或can fd相比,在使用can xl的总线系统中可以实现以下不同的特性:a)采用并在必要时适配经过验证的特性,这些特性负责can和can fd的稳健性和用户友好性,特别是根据csma/cr方法的具有标识符和仲裁的帧结构,b)提高净数据传输率,特别是提高到大约每秒10兆比特,c)增加每帧有用数据的大小,特别是增加到大约4千字节或任意其他值。
49.如图2中所示,用户站10在作为第一通信阶段的仲裁阶段451中部分地、特别是直到fdf比特为止(包括fdf比特)使用从can/can-fd已知的根据iso11898-1:2015的格式。相反,从fdf比特开始,用户站10在第一通信阶段和第二通信阶段(即数据阶段452)中使用下面描述的can xl格式。
50.在本实施例中,can xl和can fd是兼容的。在此,从can fd已知的res比特(以下称为xlf比特)用于从can fd格式切换到can xl格式。因此can fd和can xl的帧格式直到res比特为止都是相同的。接收方在res比特时才识别出以何种格式发送帧。can fx用户站,即这里的用户站10、30,也支持can fd。
51.作为其中使用具有11比特的标识符(identifier)的图2中所示的帧450的替代,可选地可以使用can xl扩展帧格式,其中使用具有29比特的标识符(identifier)。直到fdf比特为止,这都与来自iso11898-l:2015的已知can fd扩展帧格式相同。
52.根据图2,帧450从sof比特到fdf比特(包括fdf比特)都与根据iso11898-1:2015的can fd基本帧格式相同。因此这里不进一步解释已知的结构。在图2中其下方的直线上用粗线显示的比特在帧450中作为显性或'0'发送。在图2中其上方的直线上用粗线显示的比特在帧450中作为隐性或'1'发送。在can xl数据阶段452中,使用对称的'1'和'0'电平代替隐性和显性电平。
53.通常,在产生帧450时使用两种不同的填充规则。直到控制字段454中的xlf比特为止都适用can fd的动态比特填充规则,从而要在连续5个相同比特之后插入一个相反的填充比特。这样的填充比特也称为动态填充比特。在控制字段454中的resxl比特之后适用固
定填充规则,从而在固定数量的比特之后插入一个固定填充比特。替代地,代替仅一个填充比特,可以插入两个或更多个比特作为固定填充比特,下面还将对此详细描述。
54.在帧450中,xlf比特紧跟在fdf比特之后,xlf比特从该位置开始对应于can fd基本帧格式中的“res比特”,如上所述。因此,如果xlf比特被发送为1,即隐性,则将帧450识别为can xl帧。对于can fd帧,通信控制装置11将xlf比特设置为0,即显性。
55.在帧450中,xlf比特之后是resxl比特,resxl比特是供将来使用的显性比特。对于帧450,resxl必须作为0、即显性发送。然而,如果用户站10接收到为1的resxl比特,即隐性,则接收用户站10例如进入协议异常状态(protocol exception state),正如在can fd消息46的情况下针对res=1所执行的。替代地,resxl比特也可以被正好相反地定义,即resxl比特必须作为1、即隐性发送。在这种情况下,接收用户站在显性resxl比特的情况下进入协议异常状态。
56.在帧450中,resxl比特之后是序列ads(arbitration data switch(仲裁数据切换)),在序列ads 中编码了预定的比特序列。该比特序列允许从仲裁阶段451的比特率(仲裁比特率)简单而可靠地切换到数据阶段452的比特率(数据比特率)。例如,ads序列的比特序列尤其是由一个al1比特组成,该比特显性地、即以0发送。al1比特是仲裁阶段451的最后一个比特。换言之,al1比特是切换到具有短比特的数据阶段452之前的最后一个比特。在al1比特内切换发送/接收装置12、22、32中的物理层。al1比特也可以具有值1,这取决于哪个值(0或1)更适合于切换发送/接收装置12、32(收发器)中的物理层。随后的两个比特dh1和dl1已经以数据比特率发送。因此在can xl的情况下比特dh1和dl1是数据阶段452时间上短的比特。
57.在帧450中,序列ads之后是pt字段,pt字段表示数据字段455的内容。所述内容说明,数据字段455中包含什么类型的信息。例如,pt字段说明了数据字段455中是否存在“互联网协议”(ip)帧或隧道以太网帧或其他。
58.pt字段之后是dlc字段,在dlc字段中插入了数据长度代码(dlc=data length code),其说明帧450的数据字段455中的字节数。数据长度代码(dlc)可以采取从0到数据字段455的最大长度或数据字段长度的任何值。如果最大数据字段长度特别是2048比特,则在假设dlc=0表示数据字段长度为1个字节并且dlc=2047表示数据字段长度为2048个字节的情况下,数据长度代码(dlc)需要11比特。替代地,可以允许长度为0的数据字段455,例如在can的情况下。在此,dlc=0例如是使用0个字节对数据字段长度进行编码。最大可编码数据字段长度例如为11比特,于是(2^11)-1=2047。
59.在图2的示例中,在帧450中,dlc字段之后是sbc字段。缩写sbc代表“stuff bit count”。sbc字段对帧450的报头中动态填充比特的数量编码。原则上,sbc字段可以放置于帧450的报头(header)中在ads字段和帧450的报头(header)结束之间的任何位置。将sbc字段放置在报头校验和hcrc之前是有利的,由此sbc字段可以受到报头校验和hcrc的保护。
60.在图2的帧450中,sbc字段之后是报头校验和hcrc。报头校验和hcrc是用于保护帧450的报头(header)的校验和,即,从帧450以sof比特开始到报头校验和hcrc开始的所有相关比特,包括所有的动态和可选地固定填充比特到报头校验和hcrc的开始。相关比特仅包括帧报头中具有可变值的比特。换言之,相关比特不包括在帧450中总是具有固定值的比特。因此,这种具有不可更改值的比特不受保护,因为这些比特具有固定值。报头校验和
hcrc的长度以及因此根据循环冗余校验(crc)的校验和多项式的长度应当根据期望的汉明距离来加以选择。要由报头校验和hcrc保护的数据字在数据长度代码(dlc)为11比特时比27比特长。因此,报头校验和hcrc的多项式必须是至少13比特长,以达到6的汉明距离。
61.在帧450中,报头校验和hcrc之后是数据字段455(data field)。数据字段455由1到n个数据字节组成,其中n例如是2048字节或4096字节或任意其他值。替代地,可以想到数据字段长度为0。如前所述,数据字段455的长度被编码在dlc字段中。
62.在帧450中,数据字段455之后是帧校验和fcrc。帧校验和fcrc由帧校验和fcrc的比特组成。帧校验和fcrc的长度以及因此crc多项式的长度应当根据期望的汉明距离加以选择。帧校验和fcrc保护整个帧450。替代地,可选地仅数据字段455由帧校验和fcrc保护。
63.在帧450中,帧校验和fcrc之后是序列das(data arbitration switch,数据仲裁切换),在序列das中对预定比特序列进行编码。该比特序列允许从数据阶段452的数据比特率简单并且可靠地切换到仲裁阶段451的仲裁比特率。例如,比特序列以作为1发送的数据比特dh2、dh3和作为0发送的数据比特dl2、dl3开始,如图2所示。这些是数据阶段452的最后4个比特。因此dl3比特是最后一个短比特,即在切换到具有长比特的仲裁阶段451之前的最后一个比特。这些比特之后是具有仲裁阶段451的值为1的ah1比特。在ah1比特内切换发送/接收装置12、32(收发器)中的物理层。替代地,ah1比特可以具有值0,这取决于哪个值(0或1)更适合于切换发送/接收装置12、32(收发器)中的物理层。只是帧450的接收方、即没有发送接收到的帧450的rx用户站10、30,将比特序列dh2、dh3、dl2、dl3不仅用于同步,而且还用作格式校验模式(format check pattern)。利用这个比特序列,rx用户站10、30可以识别出它是否与从总线40接收到的比特流偏移地采样,例如偏移1比特或2比特等。根据又另一个示例,das字段具有3比特,即dh2比特、dl2比特和ah1比特。在这些比特中,第一个比特和最后一个比特作为1发送,并且中间的比特作为0发送。
64.在上述示例中,在接收用户站中的dh3比特和dl2比特之间或dh2比特和dl2比特之间的边沿处可以执行从数据阶段452切换到仲裁阶段451之前的最后一次同步。
65.因此,在本实施例中,在序列das中包含格式校验模式(fcp=format check pattern),用户站10、30,特别是它们的帧校验模块15、35,能够利用该格式校验模式在接收到的帧450中检测比特流的偏移,即使相关联的用户站10、30不是帧450的发送方而只是帧450的接收方时也是如此。在此情况下,fcp字段的比特模式越长,在接收用户站10、30中可以检测到的移位就越大或越强。用于移位检测的最有利的比特模式包含偶数m个比特,其中前面m/2个比特包含1,并且随后的m/2个比特包含0。在图2的fcp字段具有4个比特的示例中,前两个比特作为隐性、即1发送。fcp字段的最后两个比特作为显性、即0发送。因此,由于附加比特dh3、dl3,根据图2的具有四个比特的fcp字段与通常在fcp字段开头的两个比特不同。然而,图2的fcp字段中的隐性到显性的边沿可以满足与不具有比特dh3、dl3的das字段中相同的功能。
66.一般而言,在fcp字段中前面m/2个比特可以包含0,而随后的m/2个比特可以包含1。使用fcp字段可以识别出偏移了m-1。这在下面参考图3更详细地描述。
67.在帧450中序列das之后是确认字段457,确认字段457以rp字段开始。在rp字段中保持同步模式(sync pattern),同步模式允许接收用户站10、30在数据阶段452之后识别仲裁阶段451的开始。同步模式允许例如由于错误的报头校验和hcrc而不知道数据字段455的
正确长度的接收用户站10、30彼此同步。这些用户站然后可以发送“否定确认”以报告错误的接收。当can xl在数据字段455中不再允许错误帧47(error flags,错误标志)时,这一点特别重要。
68.在rp字段之后,在确认字段(ack field)457中包含多个比特,用于确认或否认帧450的正确接收。在图2的示例中设置ack比特、ack-dlm比特、nack比特和nack-dlm比特。nack比特和nack-dlm比特是可选比特。如果接收用户站10、30正确接收到帧450,则接收用户站10、30将ack比特作为显性发送。发送用户站将ack比特作为隐性发送。因此,在帧450中最初发送到总线40上的比特可以被接收用户站10、30覆盖。ack-dlm比特作为隐性比特发送,其用于与其他字段分开。nack比特和nack-dlm比特用于使接收用户站能够发信号通知总线40上帧450的非正确接收。该比特的功能与ack比特和ack-dlm比特的功能相同。
69.在帧450中的确认字段(ack字段)457之后是结束字段(eof=end of frame,帧结束)。结束字段(eof)的比特序列用于表征帧450的结束。结束字段(eof)确保在帧450的结尾发送8个隐性比特。这是不能出现在帧450内的比特序列。由此,帧450的结尾可以被用户站10、20、30可靠地识别。
70.结束字段(eof)的长度根据在nack比特中看到的是显性比特还是隐性比特而不同。如果发送用户站已接收到作为显性的nack比特,则结束字段(eof)具有7个隐性比特。否则,结束字段(eof)只有5个隐性比特长。
71.在帧450中,结束字段(eof)之后是帧间间隔(ifs—inter frame space),该帧间间隔(ifs)未在图2中示出。该帧间间隔(ifs)与在can fd的情况下一样根据iso11898-l:2015来加以设计。
72.图3示出了具有通信控制装置11、发送/接收装置12和帧校验模块15的用户站10的基本结构,帧校验模块15是通信控制装置11的一部分。用户站30以类似于图3中所示的方式构建,但是根据图1的帧校验模块35与通信控制装置31和发送/接收装置32分开布置。因此不单独描述用户站30。
73.根据图3,用户站10除了通信控制装置11和发送/接收装置12之外还具有微控制器13和系统asic 16(asic=专用集成电路),该微控制器被分配给通信控制装置11,系统asic 16替代地可以是系统基础芯片(sbc),其上组合了用户站10的电子模块所需要的多个功能。在系统asic 16中,除了发送/接收装置12之外还安装了能量供应装置17,其为发送/接收装置12供应电能。能量供应装置17通常提供5伏的电压can_supply。然而,根据需要,能量供应装置17可以提供具有其他值的其他电压。附加地或替代地,能量供应装置17可以被设计为电流源。
74.帧校验模块15具有插入块151和评估块152,下面对它们更详细地描述。
75.发送/接收装置12还具有发送模块121和接收模块122。即使总是在下文中提及发送/接收装置12,但也可以替代地在发送模块121外部的单独装置中设置接收模块122。发送模块121和接收模块122可以像在传统的发送/接收装置22中那样构建。特别地,发送模块121可以具有至少一个运算放大器和/或晶体管。接收模块122特别是可以具有至少一个运算放大器和/或晶体管。
76.发送/接收装置12连接到总线40,更准确地说连接到总线40的用于can_h或can-xl_h的第一总线芯线41和总线40的用于can_l或can-xl_l的第二总线芯线42。经由至少一
个连接端43为用于向第一和第二总线芯线41、42供应电能、特别是电压can_supply的能量供应装置17供电。经由连接端44实现与地或can_gnd的连接。第一和第二总线芯线41、42用终端电阻器49结束。
77.第一和第二总线芯线41、42在发送/接收装置12中不仅与也称为发送器的发送模块121连接,而且与也称为接收器的接收模块122连接,即使为简单起见该连接未在图3中示出。
78.在总线系统1运行时,发送模块121将通信控制装置11的发送信号txd或txd转换为用于总线芯线41、42的对应信号can-xl_h和can-xl_l,并将信号can-xl_h和can-xl_l在用于can_h和can_l的连接端处发送到总线40上。
79.接收模块122从根据图4从总线40接收的信号can-xl_h和can-xl_l中形成接收信号rxd或rxd,并将该接收信号转发到通信控制装置11,如图3所示。除了空闲状态或待机状态(idle或standby)之外,发送/接收装置12在正常运行时利用接收模块122总是监听数据或消息45、46在总线40上的传输,而且与发送/接收装置12是否是消息45的发送方无关。
80.根据图4的示例,信号can-xl_h和can-xl_l至少在仲裁阶段451中具有显性和隐性总线电平401、402,如从can已知的。在总线40上形成差分信号vdiff=can-xl_h-can-xl_l,如图5所示。具有比特时间t_bt的信号vdiff的各个比特可以利用0.7v的接收阈值加以识别。在数据阶段452中,信号can-xl_h和can-xl_l的比特比在仲裁阶段451中发送得更快,即具有更短的比特时间t_bt。因此,信号can-xl_h和can-xl_l在数据阶段452中至少在其更高比特率方面不同于传统信号can_h和can_l。
81.图4中信号can-xl_h、can-xl_l的状态401、402的序列以及由此结果得到的图5的电压vdiff的变化过程仅用于显示用户站10的功能。可以根据需要选择总线状态401、402的数据状态序列。
82.换言之,发送模块121在根据图4的第一运行类型中产生第一数据状态作为总线状态402,其具有用于总线线路的两个总线芯线41、42的不同总线电平,并且产生第二数据状态作为总线状态401,其具有用于总线40的总线线路的两个总线芯线41、42的相同总线电平。
83.此外,针对在包括数据阶段452的第二运行类型中信号can-xl_h、can-xl_l的时间变化过程,发送模块121以更高的比特率将比特发送到总线40上。还可以在数据阶段452中使用与在can fd情况下不同的物理层来产生can-xl_h和can-xl_l信号。由此与在can fd的情况相比,数据阶段452中的比特率可以进一步增加。
84.当用户站10作为帧450的发送方时,图3的帧校验模块15,特别是其插入块151,用于将sbc字段插入到帧450中。在本实施例中,图3的帧校验模块15被设计为使得sbc字段具有三个比特,即比特0、比特1和比特2。由此,sbc字段产生尽可能少的多余数据(数据开销)。在sbc字段中,帧校验模块15在比特0和比特1中录入动态填充比特的数量,在比特2中录入前两个比特的奇偶校验。
85.在本实施例中,插入块151在帧450中的报头校验和hcrc之前插入sbc字段。帧校验模块15,特别是评估块152也在形成报头校验和hcrc时使用sbc字段以及使用帧报头的所有动态填充比特。结果,可以检测到第3类错误和第4类错误。
86.图3的帧校验模块15,特别是其评估块152,用于形成和校验报头校验和和帧校验
和,以及用于校验动态填充比特的数量。
87.接收用户站中的评估块152可以将在帧报头中接收到的动态填充比特的数量与sbc字段中的值进行比较,并且因此识别出与帧报头中的实际数量相比的偏差,即错误。
88.相反,评估块152在形成帧校验和fcrc时省略动态填充比特。然而,评估块152将帧报头的其他比特考虑到帧校验和fcrc中,例如id比特、rrs比特等。因此,这些比特受到双重保护。由此,可以使用帧校验模块15,特别是使用其评估块152以非常高的概率检测到与动态填充比特相关的第3类错误和第4类错误。
89.因此,接收用户站(接收节点)10,特别是其帧校验模块15以及更准确地说是其评估块152,可以识别出在接收到的比特流中随着动态填充比特可能出现的关键错误。评估块152向通信控制装置11输出对应的消息。因此可以在错误的情况下丢弃接收到的帧450。结果,通信控制装置11可以可选地向总线40发送错误帧47。
90.但是,如果使用“stuff count”(填充计数)字段,如sbc字段,则进一步降低残余错误概率。结果,更不可能将错误的帧450接受为有效。
91.因此,对所发送的帧中的动态填充比特的数量进行编码的sbc字段“stuff count”字段的使用是可选的。
92.如果不需要与can fd兼容,则可以在帧中例如使用所谓的固定填充比特(始终存在的填充比特)来代替动态填充比特。如果没有动态填充比特,则不可能出现第3类错误和第4类错误。此外,可以省略如sbs字段的“stuff count”字段。这导致待传输的比特更少,甚至导致更低的复杂度。
93.根据第一实施例的第一修改,帧校验模块15,特别是评估块152,被设计为在形成报头校验和hcrc时省略动态填充比特。相反,帧校验模块15,特别是评估块152,在形成帧校验和fcrc时使用动态填充比特。在这种情况下,帧校验模块15,特别是评估块152,将帧报头的其他比特(例如id比特、rrs比特等)再次考虑到帧校验和fcrc中。通过这种方式,也可以充分可靠地检测到第3类和第4类的特殊错误。在使用错误帧47时,可以使用错误帧47来报告所述检测。
94.根据第一实施例的第二修改,帧校验模块15,特别是评估块152,被设计为在校验和hcrc、fcrc的任何一个中都没有考虑到动态填充比特。通过这种方式也可以充分可靠地检测到第3类和第4类错误。原因是动态填充比特只能出现在sof位到fdf位之前。在这个小区域中最多可以包含三个动态填充比特。因此,作为比特流的逐块干扰并且可能由第3类错误产生的突发错误在长度方面受到限制。因此,报头crc可以检测到该突发错误的概率很高。在使用错误帧47时,可以使用错误帧47报告该检测。
95.图6示出了根据第二实施例的帧450_1,其中can xl和can fd是兼容的。在本实施例中,错误帧(error flags)47用于发信号通知错误。
96.在本实施例中,帧450_1以及因此can xl帧格式不同于图2的帧450,如下所述。在此情况下,下面仅描述与图2的帧450的不同之处。两个实施例的帧450、450_1在其它方面是相同的。
97.在帧450_1中存在具有恒定长度2比特的syn字段,而不是rp字段。syn字段包含具有数字值0的第一比特(al2)。与前面的具有数字值1的比特(ah1)一起,比特al2、ah1的比特序列提供在切换比特率和物理层(即can xl收发器的模式)之后的同步边沿。
98.因此,存在对于can xl的稳健功能所需要的两个同步边沿,即直接在比特率切换前的同步边沿(dh3=》dl2)和直接在比特率切换后的同步边沿(ah1=》al2)。由此,可以在数据阶段452之前可靠地切换到仲裁阶段451中。
99.syn字段中的第二比特,即syndlm比特具有为1的值。该比特用于与ack比特分界。在没有错误的情况下,接收节点将ack比特作为0(显性)发送,并且因此产生另外的同步边沿。
100.由于使用了错误帧(error flag)47,因此nack字段的使用完全是可选的,因为已经可以用错误帧(error flag)47发信号通知错误。
101.图7示出了根据第三实施例的帧450_2,其中can xl和can fd是兼容的。在本实施例中,使用错误帧(error flag)47来发信号通知错误。
102.在本实施例中,帧450_2以及因此can xl帧格式与图6的帧450_1不同,如下所述。在此情况下,下面仅描述与图6的帧450_1的不同之处。两个实施例的帧450_1、450_2在其它方面是相同的。
103.帧450_2中既没有rp字段也没有syn字段。因此,比特率切换后所需要的同步在边沿ah1(1)=》ack(0)处进行。该解决方案具有两个优点。
104.第一个优点是在图7的帧450_2中在短暂地同步到边沿ah1(1)=》ack(0)之前的相位误差小于或等于在图6的帧450_1中短暂地同步到边沿syndlm(1)=》ack(0)之前占主导的相位误差。其原因是在图7的帧450_2中,自上次同步以来仅经过了2个短比特(dl2、dl3)和一个长比特(ah1)。相反,在图6的帧450_1中经过了两个长比特(al2,syndlm)。
105.第二个优点是,与图6的帧450_1相比,图7的帧450_2的开销更低。图7的帧450_2比图6的帧450_1少两个长比特。因此开销更小,由此净数据速率更高。
106.由于在本实施例中也使用了错误帧(error flag)47,因此nack字段的使用完全是可选的,因为已经可以用错误帧(error flag)47来发信号通知错误。
107.图8示出了根据第四实施例的帧4500,其中can xl和can fd的帧格式不兼容。在该实施例中,帧4500以及因此can xl帧格式不同于图2的帧450,如下所述。在此情况下,仅描述与图2的帧450的不同之处。两个实施例的帧450、4500在其它方面是相同的。
108.一般来说,在根据本实施例产生帧4500时仅使用固定填充规则,从而在固定数量的比特之后插入一个固定填充比特。替代地,也可以插入两个或更多个比特而不是仅仅一个填充比特来作为固定填充比特。在数据长度码(dlc)具有已知值的情况下,这导致帧长度恒定或帧4500的长度恒定。这防止了由动态填充比特引起的各种问题。因此,在4500帧的报头中也不需要sbc字段。
109.在根据本实施例的帧4500中,标识符(id)不再局限于如can fd中那样的11个比特或29个比特的数量。标识符(id)的比特数量k可以自由选择。然而,数量k可替代地设定为固定值。k=8个比特的id对于高净数据速率是有意义的。该净数据速率足以给予总线系统1的每个用户站10、20、30足够多的总线访问优先级。然而,当然也可以根据需要和总线系统1中不同优先级的数量选择不同的k值。
110.图2的帧450的比特rrs、ide、fdf、xlf在帧4500中不再需要并且被省略。这节省了4个比特,从而减少了帧开销。由此,提高了总线系统1中的净数据速率。
111.当nack比特为显性时,帧4500中的结束字段(eof)仅具有五个比特。相反,如果
nack比特是隐性的,则结束字段(eof)具有3个比特。这确保在帧4500结束时发送六个隐性比特。如果在仲裁阶段451中在连续五个相同比特之后插入一个固定填充比特,则隐性比特的数量不可能出现在有效帧4500中的任何其他位置。替代地,可以多于六个比特。特别地,eof比特的数量必须与以下比特数量相适配,在该数量的比特之后插入一个固定填充比特。
112.在帧4500中,帧间间隔(ifs)不需要最小长度。特别地,帧间间隔(ifs)可以具有0长度。在这种情况下,两个帧4500一个接一个地无缝发送。然而,为了与前面提到的情况相比提高总线系统1的稳健性,具有例如1个比特的帧间间隔(ifs)也是有意义的。由于现在两个帧4500之间有七个隐性比特,总线40上的新用户站可以更可靠地同步。
113.图9示出了根据第五实施例的帧4500_1,其中can xl和can fd的帧格式不兼容。在该实施例中,帧4500_1以及因此can xl帧格式不同于图8的帧4500,如关于第二实施例所描述的。
114.因此,在帧4500_1中存在2个比特恒定长度的syn字段而不是rp字段。由此,同步在数据阶段452之后进行,如关于第二实施例所描述的。
115.两个实施例的帧4500、4500_1在其它方面是相同的。
116.图10示出了根据第六实施例的帧4500_2,其中can xl和can fd的帧格式不兼容。在该实施例中,帧4500_2以及因此can xl帧格式不同于图8的帧4500,如关于第三实施例所描述的。
117.因此,在帧4500_2中既没有rp字段也没有syn字段。由此,同步在数据阶段452之后进行,如关于第三实施例所描述的。
118.两个实施例的帧4500、4500_2在其它方面是相同的。
119.总线系统1的用户站10、20、30和在其中执行的方法的所有先前描述的设计可以单独使用或以所有可能的组合使用。特别地,上述实施例的所有特征和/或其修改可以任意组合。附加地或替代地,特别是可以想到以下修改。
120.即使上面以can总线系统为例描述了本发明,本发明也可以在任何通信网络和/或通信方法中使用,其中使用两个不同的通信阶段,在这些通信阶段中为不同的通信阶段产生的总线状态彼此不同。特别地,本发明可在其他串行通信网络的开发、如以太网和/或100base-tl以太网、现场总线系统等中使用。
121.特别地,根据实施例的总线系统1可以是其中可以以两种不同的比特率串行传输数据的通信网络。有利的、但不是强制性的前提是,在总线系统1中至少在特定的时间段内保证一个用户站10、20、30对公共信道的排他的、无冲突的访问。
122.在这些实施例的总线系统1中的用户站10、20、30的数量和布置是任意的。特别是可以取消总线系统1中的用户站20。在总线系统1中可以存在用户站10或30中的一个或多个。可以想到,总线系统1中的所有用户站都被相同地设计,即仅存在用户站10或仅存在用户站30。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献