监视网络中的通信的方法
技术领域
本发明涉及一种监视数据处理单元组中的通信的方法,其中数据处理单元将数据信号传送到其他数据处理单元以用于执行某些操作。
背景技术
在许多应用中,经由通信网络互连若干数据处理单元。为此目的,通常提供较高层中央单元(服务器),其将数据信号传送到较低层数据处理单元(客户机),当然数据处理单元间的数据交换是可能的。
关于在单元间传送的数据,通常必须确保收报者(addressee)已经正确地接收并且进一步处理该数据。这在与安全有关的应用的情况下、或甚至极其重要的单独情况下特对重要。举例来说,给出下述例子:假定在机动车具有包括连网的机械部件以及用于控制四个轮子的每一个处的单个刹车的数据处理单元和中央单元的刹车系统(例如防抱死刹车系统)的情况下,在由来自中央单元的适当命令触发的制动操作期间,仅用于左刹车的数据处理单元理解并执行命令,作为其结果将发生机动车的致命的错误操作,即使不是甚至威胁生命的错误操作,
针对现有技术,参考US 6,032,218A和“Proceedings of the DATE2001 on Design,automation and testin Europe”中Thilo Demmeler和Paolo Giusto的文章“A Universal Communication Model for anAutomotive System Integration Platform”(参见所述文献47至54页)以及“Computer Standard & Interfaces 22(2000)”中Gianluca Cena和Adriano Valenzano的“New efficient communication services forISO 11898 networks”(参见所述文献61至74页)。
发明内容
本发明的目的是提供监视网络中的通信的可靠方法。
通过根据本发明提出一种监视数据处理单元组中的通信的方法来实现该目的,其中数据处理单元将数据信号传送到其他数据处理单元以用于执行某些操作,以及一旦从传送数据处理单元中接收到数据信号,每个其他数据处理单元就通过适当的确认应答传送数据处理单元和其他数据处理单元。
通过根据本发明的方法,每个数据处理单元现在知道其他数据处理单元是否已接收到数据信号。通过本发明,发射机和接收机由此获得有关接收机是否已正确地接收到所传送的数据以及哪个接收机已正确地接收到所传送数据的统一认识。本发明考虑到在任何时候数据传输都可能被干扰。不仅实际数据信号会被干扰,而且发送回的接收确认也会被干扰。
根据本发明的方法的另一优点在于,在应用层而不是协议层上进行确认。在这一方面,通常仅由所传送数据信号相关的那些数据处理单元发送回这些确认就足够了。
传送数据处理单元可以是较高层中央单元(服务器),而接收和转换所传送的数据信号的其他数据处理单元可以是较低层数据处理单元(客户机)。然而,还可想到的配置是其中所有数据处理单元享有相同的权限的一种配置。
优选地,每个数据处理生成至少包含其自己的确认的它自己的状态信号。每个数据处理单元由此包含其自己的状态信号。
在另外的当前更优选的实施例中,应答数据处理单元以按时间发生顺序定义的顺序应答,作为其结果,至少第一数据处理单元以及随后下一个、第二数据处理等等应答,其中第一应答数据处理单元传送仅包含其自己的确认的状态信号,第二应答数据处理单元接着传送包含其自己的确认以及除此之外还包含第一数据处理单元的确认的状态信号,并且如果适用的话,则应答下一个的每个另外的数据处理单元传送包含其自己的确认以及除此之外还包含先前已经应答的所有数据处理单元的确认的状态信号。由此形成一种级联,其中随后的数据处理单元将在前数据处理单元的确认连同它们自己的确认传送到其他数据处理单元。
优选地,每个数据处理单元的状态信号以适当的方式由从其他数据处理单元中接收到的状态信号来补充,这尤其通过组合操作来进行。所有数据处理单元由此逐步发送它们当前的状态信号,接收单元考虑到从其他数据处理单元的每一个中接收到的状态信号来适当地更新它们自己的状态信号。
在根据按时间发生顺序定义的顺序作为最后一个应答的数据处理单元已经发送包含其自己的确认以及另外先前已应答的所有数据处理单元的确认的状态信号之后,所有数据处理单元方便地第二次发送它们由此更新的状态信号。由于该第二周期,仅通过数据处理单元第二次应答的事实已经增加识别确定性。然而,相对于第一周期的差别在于在所有数据处理单元正确接收的情况下,在第一周期结束时,所有数据处理单元的状态信号具有相同值,由此在第二周期中,所有数据处理单元必须发送相同的状态信号。因此,在第二周期中确定所有状态信号是否具有相同值形成用于判断在所有数据处理单元处的接收正确与否的另外的标准。
由此,每个数据处理单元确定另一个数据处理单元是否知道它已经从中央单元中接收到数据信号。因此,已经正确接收到但知道所有其他数据处理单元仍为它还未正确接收到的数据处理单元也可以就象其还未正确接收一样地工作。由此确保所有数据处理单元以由其他数据处理单元的每一个所期望的方式工作。
在进一步优选的实施例中,由所有数据处理单元生成的状态信号具有对应于应答数据处理单元的数量的信号码元(signal element)的相同数量,每个信号码元与特定应答数据处理单元有关并表示其确认。在这种情况下,例如首先进入状态信号的信号码元指定在按时间发生顺序定义的顺序中首先应答的数据处理单元,第二信号码元指定下一个应答的第二数据处理单元等等。然而,关于传送数据处理单元,不必存在另外的信号码元,因为该单元是数据信号的发射机,对于该数据信号必须存在统一的观点。
每个信号码元通常应该呈现至少第一状态和第二状态,其中,例如第一状态表示正确接收而第二状态表示未接收或接收干扰。由所有数据处理单元生成的状态信号方便地显示出由形成信号码元的向量元素组成的向量信号,该向量信号通常是位向量,并且因此该向量元素由位组成,其中,例如“1”表示正确接收,而“0”表示未接收或接收干扰。
如果状态信号由位向量组成,那么组合优选地应当是执行为OR组合。
为确保每个数据处理单元事前知道其他数据处理单元的任何一个的传输时刻,数据处理单元间的通信优选地应当是时间控制的,特别是以所定义的时间脉冲的方式。
上述通信可以在形成网络的一部分或整个网络的数据处理单元组中发生。
附图说明
从下文所述的实施例,本发明的这些和其他方面是显而易见的,并且将参考下述实施例说明,
在图中:
图1用图解法示出在正确接收的情况下,用于包括中央单元和四个数据处理单元的通信网络的信号图;
图2用图解法示出在简短地干扰一个数据处理单元处的接收的情况下,用于包括中央单元和四个数据处理单元的通信网络的信号图;以及
图3用图解法示出对于其中从一个数据处理单元到所有其他单元的状态信号的传送被干扰一段短的时间的第一情形(a)、以及对于其中从该数据处理单元到其他单元的状态信号的传送被干扰一段较长时间的第二情形(b),用于包括中央单元和四个数据处理单元的通信网络的信号图。
具体实施方式
图1至3用图解法示出用于通信网络的信号图的例子,未详细示出的该通信网络包括较高层中央单元和四个较低层数据处理单元,这些数据处理单元被指定为“节点1”、“节点2”、“节点3”和“节点4”,以及中央单元被指定为“节点5”。经由未示出的数据总线互连各个单元。尤其在控制或调节应用(举例来说,比如机动车的刹车系统)中使用这种网络结构;在所述应用中,中央单元形成控制设备,并且将控制信号作为数据信号传送到数据处理单元,根据这些数据信号,该数据处理单元适当地驱动例如机动车的每个车轮处的刹车。
关于在单元间传送的数据,特别是在诸如机动车的刹车系统的关键应用中,必须确保收报者已经正确地接收到和进一步处理所述数据。为实现此点,发射机和接收机必须获得有关所传送的数据是否已经被正确地接收以及哪一个接收机已经正确地接收所述数据的统一认识。为此,数据处理单元必须通过发送接收确认来应答,然而,在这一方面必须考虑到数据传输在任何时刻可能被干扰。不仅实际数据可能被干扰,而且发送回的接收确认也可能被干扰。因此,如果例如在刹车动作的情况下,仅机动车的左刹车理解刹车命令,那么机动车的致命的或甚至可能威胁生命的过失行为将发生。因此,每个单元知道其它单元是否接收到该命令非常重要。
除此之外,时间控制的通信是有利的,因为每个单元由此事前知道其他单元的任何一个的传输时刻。
每个单元记住状态信号,根据图中所示的例子,该状态信号由包含四个一或零的串的四个数字位向量Γ组成。在所示的例子中,位向量Γ中的第一位指定第一数据处理单元“节点1”,第二位指定第二数据处理单元“节点2”,第三位指定第三数据处理单元“节点3”以及第四位指定第四数据处理单元“节点4”。在所示的例子中,“1”位表示在相关数据处理单元处正确接收;然而,“0”表示未接收到任何信息或接收被干扰。另一方面,中央单元“节点5”未被指定位,因为该单元是数据信号的发射机,对此必须有统一观点。然而,中央单元还接收和记住这样的位向量。
在中央单元“节点5”已传送数据信号(例如刹车命令)后,根据是(“1”)否(“0”)接收到正确值,每个接收数据处理单元将赋给它的位放在本地可用位向量中。如图所示,所有数据处理单元现在逐步地发送它们的当前位向量,以及接收数据处理单元通过与每次从其他数据处理单元中的任何一个接收到的位向量的OR组合来更新它们自己的位向量。
图1示出其中所有数据处理单元“节点1”至“节点4”正确接收的情形。在初始状态,在所有单元的位向量中的位被设置成零。如果中央单元“节点5”随后将数据信号发送到四个数据处理单元“节点1”至“节点4”,如图1的步骤0a中所示,在每个数据处理单元中,位向量的相关位被设置成“1”,从而第一数据处理单元“节点1”中的位向量Γ获得值1000,在第二数据处理单元“节点2”中获得值0100等等。在下一步骤Ia中,第一数据处理单元“节点1”通过确认将其位向量Γ=(1000)发送到其他单元,以及在其他数据处理单元“节点2”、“节点3”和“节点4”中,通过与第一数据处理单元的接收到的位向量的OR组合来适当地组合每个相关位向量,作为其结果,第二数据处理单元“节点2”中的位向量的值从(0100)改变成(1100),在第三数据处理单元“节点3”中位向量的值从(0010)改变成(1010),在第四数据处理单元“节点4”中位向量的值从(0001)改变成(1001),以及在中央单元“节点5”中位向量的值从(0000)改变成(1000)。随后,第二数据处理单元“节点2”将其由此更新的位向量Γ=(1100)传送到其他三个数据处理单元,其中以与上述相同的方式进行与相关位向量的(进一步)OR组合;这如图1中的下一步骤IIa图示表示。在接下来的两个最后步骤IIIa和IVa中,为排列清楚起见,图1中未示出,同样两个其他的数据处理单元“节点3”和“节点4”的每个发送它们相应的更新的位向量,作为其结果,所有单元中的位向量最终具有值(1111)。
另外注意到同样在中央单元“节点5”中,进行相关位向量与所接收到的位向量的OR组合,作为其结果,所述位接连地从“0”改变成“1”。
在该第一询问周期后,执行第二周期,其中,在图1的例子中(正确接收),所有单元均仅传送具有相同值“(1111)”的位向量,如对应于步骤Ia的步骤Ib中的图示表示,然而,通过步骤Ib中的这一差别,第一数据处理单元“节点1”发送具有值Γ=(1111)的位向量。
在终止该第二询问周期后,所有单元中的位向量仍然设置成值(111),如图1中的最后一个步骤V中图示表示。
如果未发生干扰,如在图1中所示的情形的情况下,在第一周期后,每个单元已经知道每个其他单元是否已接收到数据信号。
图2示出在第四数据处理单元“节点4”中产生简短的接收干扰的情形,所示的步骤0a、Ia和IIa对应于图1中的相同步骤。在图2的步骤Ia中,显然第四数据处理单元“节点4”未从第一数据处理单元“节点1”中接收到确认,以至在第四数据处理单元“节点4”的位向量中,与第一数据处理单元有关的第一位未被设置成“1”,而是仍然设置成“0”。然而,如在图2的例子中,第四数据处理单元“节点4”由于简短干扰不能从第一数据处理单元“节点1”中接收到位向量,在随后的步骤IIa中,即当第二数据处理单元“节点2”发送无干扰地尤其是也通过第四数据处理单元“节点4”接收到的位向量时,适当地校正第四数据处理单元“节点4”的位向量。其余过程对应于参考图1所述的过程。
图3a示出与图2所示不同的在两个数据处理单元间存在选择性干扰的情形,由第一数据处理单元“节点1”发送的位向量完全被破坏,以至所有其他单元未接收该向量。在这种情况下,步骤0a、Ia、IIa和Ib对应于图1中的相同步骤,另外示出了步骤0b(第二周期的开始)。步骤Ia清楚地表示第二至第四数据处理单元“节点2”至“节点4”和中央单元“节点5”的位向量保持不变,因为在所有这些情况下,与第一数据处理单元有关的第一位未被设置成“1”,而仍然设置成“0”。在后续步骤IIIa和Iva(未示出)中,该错误继续,以至在第一周期结束时,第一数据处理单元“节点1”的位向量被正确地设置成(1111),而其他单元的每一个的位向量仅被设置成(0111)。后者设置也适用于中央单元“节点5”。在第二周期的开始时,中央单元“节点5”由此发送位向量Γ=(0111),如步骤0b中所示。由于在图3a所示的例子中同时已经消除了干扰,所以来自第一数据处理单元“节点1”的应答是位向量Γ=(1111),其现在由其他单元正确地接收,作为其结果,其他单元中的位向量也被设置成(1111)。在第二询问周期的随后的步骤IIb至Ivb(未示出)中,其他数据处理单元逐渐发送它们的当前位向量;然而,因为这在所有情况下已经被设置成(1111),所以不发生进一步变化。在第二周期结束时,所有单元的位向量由此被正确地设置成(1111),从而所有单元已经认识到已经正确地进行了数据传输。
然而,在图3b中所示的情况下,在第二周期期间未消除干扰,由此由第一数据处理单元“节点1”发送的位向量被完全破坏,因而未被其他单元接收,以至与第一周期的结果相比,在第二周期结束时,位向量仍然保持不变。由于第二至第四数据处理单元“节点2”至“节点4”以及中央单元“节点5”中的每个单元发送具有值(0111)的位向量,所以告知第一数据处理单元“节点1”:所有其他单元认为“节点1”还未接收到数据(尽管这不是真的,因为“节点1”能发送其位向量,然而,在传输过程期间,该向量被完全破坏)。因此,第一数据处理单元“节点1”现在能相应地工作。
为完整起见,进一步注意到在上述的例子中,“节点5”被提供为较高层中央单元。然而,可替换地,可以想到在上述例子中,“节点1”至“节点5”被提供为享有相同权限的数据处理单元。
由此所述的方法允许每个数据处理单元确定另一数据处理单元是否知道它已经接收到命令。因此,已经正确接收但知道所有其他数据处理单元认为它还未正确地接收的数据处理单元可以表现为好象它未正确地接收。由此确保所有数据处理单元以如由其他数据处理单元的每一个所期望的方式工作。