能缓和从站锁定问题的通信总线系统的制作方法

文档序号:6408238阅读:187来源:国知局
专利名称:能缓和从站锁定问题的通信总线系统的制作方法
发明的背景本发明涉及一种包含主站和从站的多站通信总线系统,每个主站包括以帧为基础的仲裁装置、仲裁输出检测装置、和帧格式化装置,以便在赢得该仲裁时发送一个按帧组织的报文,该报文含有锁定和解锁信号,以便对一个被寻址的从站在上述报文所包含的多个帧的持续期间被相应地锁定或解锁,使得在上述的持续时间内另一个主站至少以一种特定方式被阻塞去访问一个被锁定的从站。一般说来,这种通信系统对于一个帧的允许长度要加一个最大限制值,使某个主站不能把整个系统占用多于一个合理的时间段。这样做的后果是,如果主站要向某个从站发送一个长报文,它必须用一系列可集合而构成该报文的帧来实现。在这情况下,这里所提到的主站应该能够使该被寻址的从站在报文的相继各帧间不能被别的主站所访问。为此目的,已经建议了锁定机理,例如已转让给本申请的受让人的美国专利4,937,816;5,128,936;5,249,182(PHN 12.484)中所说明的,这些内容在此被引用以作参考。在一特定的实施例中,最大的锁定时间可以是300毫秒。现在,如果另外的主站试图发送一个帧到该被提到的从站,它将不能实现。解决的方法可以是让第二个主站在稍后时间重复它的任务。但是,不论是对锁定的或未锁定的从站,这种访问应该在合理的情况下愈快愈好。在这方面,应该清楚的是,即使在未锁定的情况下,另外一个主站的访问也可能暂时被阻塞,例如,由于从站中它的接收缓冲器内仍装着前面已收到的报文。另外一些不常见的引起这种阻塞的原因是电干扰或暂时的出错。发明概要本发明的目的之一是提供如前已描述的那样一种通信总线系统,其中的主站不论在从站已被另外的主站所暂时锁定还是从站没有被锁定的情况下,都能够尽快地去访问从站。在此,根据其一个方面,本发明的特征在于上述的另一个主站有一个顺序装置,用于在检测到所说的被阻塞的情况时就执行第一顺序,即以一组合的时间长度较频繁地执行再尝试任务,这个组合时间长度显著地小于上述持续时间的标准最大值,接着它执行第二顺序,即以一组合时间长度较稀少地执行再尝试任务,这个组合时间长度大于上述持续时间的标准最大值。通过第一个、相对较频繁的任务,一个短暂的出错情况对于访问从站只引起很少的延迟,不管后者是锁定的或未锁定的。通过第二个、相对较稀少的任务,在锁定结束时访问就重新变得可能。即使出现一个临时性的出错情况,第二顺序中各相继单元间的较长时间间隔也将破坏第二顺序的相继各任务中同样错误的相互作用。实际上,在那些能改善性能的较为频繁的任务与能简化程序并减轻通信总线和所连接的各站上的负载的较为稀少的任务之间,存在着一种折衷。
较为有利的是,在上述的另外主站上有第二顺序装置,该装置在对想要联系的所述从站发送出其地址后检测到未被确认时,就执行用于对该从站寻址的准瞬时任务的第三顺序,而仅在检测到对上述地址的确认的情况下才进行对该从站的访问。在某些情况下,从站由于某些极短时间的原因而未确认其地址。另一个原因可能是该站实际上不存在。在这两种情况下,在从站地址这一级别上的准瞬时再尝试都将进一步加快其整体运行,尽管这种加快的原因是不相同的。在第一种情况下,该原因可能很快地结束,从而使得访问变为成功。在第二种情况下,有任务的主站可以把其设施转向别处。
本发明还涉及到用于已说明的那种通信系统中的主站。
各种优点将在所附的权利要求加以列举。附图的简单说明本发明的这些和另外一些优点及特征将在下面参照优选实施例、特别是参照所附的插图详加说明,如下

图1是一个单信道通信总线系统的一般示意图;图2表明通信操作的结构;图3表示一种接口电路的实施例;图4是再尝试过程的流程图;图5是解锁过程的流程图;图6是第二解锁过程的流程图;图7是改进了的再尝试过程的流程图。锁定技术的示范性说明图1是一种单信道通信总线系统的一般示意图。线路20表示信道,例如是一对双绞导线。这里提供了三个站22、24、26,它们中的每一个含有一个相应的接口电路28、30、32。这些站的复杂程度可各不相同。这种类型的设备可以是简单的也可以是复杂的,例如一台电视机、一台洗衣机、一台微波炉、一个中心定时计、环境温度/太阳辐射的传感器、一个照明(子)系统。某些设备按总线上的主站工作,另外一些设备则作为从站。某些设备作为数据的发送者工作,而另一些设备则作为接收者。下面所描述的操作均发生在通信总线系统上并由接口电路来执行。总线协议的说明图2表示在帧一级上通信操作的结构。这个图把时间轴表示成一条曲折线40,各个二进位单元都被设定沿着这条线以连续方式安排。参考数字42表示起始位。参考数字44涉及到方式指示,它表示以后的数据的发送位速度;这最多涉及3个二进位。这里规定了有限数量的标准化的发送频率。参考数字46表示相关的主站的地址;这个地址含有12位,后面还有一个奇偶校验位P。仲裁操作在方式指示和主站地址上进行。对于方式选择,最低方式(=最慢方式)占优势。对于地址,则具有最高优先级的站占优势。方式指示和主站地址一起组成优先级信号。在发送了主站地址后,只有一个主站保留。这个站随后就发送从站地址48。这个地址含有12位地址位、一个奇偶校验位P、和一个地址确认位所需的空位A。当从站识别了它自己的地址时,它就在块A中发送一个地址确认位。如果没有收到后面这一位,则该想要联系的从站或是不存在或是不工作,或者,地址的奇偶校验位不对。在这种情况下图2所示的帧就立即结束。如果从站的确认是正确的,则主站就发送控制信号50。这个信号含有4个控制位、一个奇偶校验位P、和一个控制确认位所用的空间A。对P和A位的处理和对从站地址的情况是相同的。如果没有出现控制确认位,则该帧就直接结束。如果从站的确认是正确的,则发送一个数据字节(52)。本说明将根据一个主发送站进行。数据字节含有8个二进位、一个表示“最后”数据(EOD)字节的信号、一个奇偶校验位P和一个数据确认位所用的空位A。EOD信号表示发送站是否认为该涉及的字节是报文的最后字节或非最后字节。帧的长度在方式0时最多为2个字节;在方式1时为32个字节(来自主站)或16个字节(来自从站);在方式2时为128个字节(来自主站)或64个字节(来自从站),但也允许是较短的报文。奇偶校验位P也是在EOD位的基础上确定的。如果没有收到数据确认位,那可能有多种原因奇偶错、当收到控制信号50后从站被停止工作、或者从站不能接收和缓冲数据字节,这是例如由于对数据的处理花费了过多的时间。在所有这些情况下主站都被置成重复状态。在这一状态下相关的数据字节,包括用于EOD、P、和A的位置,都被重复直到最终收到数据确认为止。然后,如果这一相关的数据字节不是最后字节,则重复状态被保留并发送下一个数据字节(例如54)。但是,如果这是最后的数据字节,帧和报文都被终止。接着可以开始一个新的报文/帧。在发送一个数据字节时,每次都使计数器内容加1。当计数器达到最大帧长度或当报文已完成时,就指明“最后”数据字节(所发生的这两个极限情况中的第一个是决定性的)。在“最后”字节之后帧就结束。如果在“最后”字节之后没有正确地收到数据确认位,则“最后”字节被重复,并在规定的帧长度之内一直延续下去。当已经达到最大的帧长度时报文尚未结束,则开始一个新的帧。这时新帧的第一数据字节就是报文的尚未发送的第一个数据字节,或者是尚未收到正确的数据确认位的数据字节。因此,这意味着已经成功地发送的数据字节不会有两次发送。正常情况下,“锁定”机理就用在这个方面,使得相关的从站仍保留供实际传送之用。这将在下面作详细说明。按照这种锁定机理,另一个具有较高优先级的主站可以在那时获得对总线的控制权,但不能去访问已被锁定的从站。这种组织简化了从站中的过程。进一步的组织主站可以通过一个给定的控制信号使在从站的锁定标志置位/复位,从而命令从站仅仅监听该相关的主站。在此,主站发送一个含有释放或解锁命令的1字节数据帧后从站就被解锁。在正确地发送/传播至少一个字节的相关的帧后,锁定标志应由从站来置位/复位。
如果有下列情况则从站地址确认位将不被给出—从站不存在—从站不能处理帧的方式(速度)—主站地址和/或从站地址发生奇偶错—时序不准确,引起总线出错,从而发生同步或奇偶错。
主站通过下列中的任一种方式来响应一个否定的地址确认·重复该帧,可能是用较低的方式·在0方式下请求相关的从站的状态(可能重复地请求)。从站可以工作的最高方式是从此状态得出的。随后报文就以可能的最高方式进行重复。当发送重复地停止在否定的从站地址确认位时,就必定可得出从站不存在的结论。在这种情况下进一步的重复没有什么意义。
在下列情况下不会给出控制确认位—奇偶错—时序错—从站无能力执行所请求的功能。在第一种情况下主站可以通过重复报文来响应。如果再一次收不到控制确认位,从站则向主站发请求以便确定为什么它收不到这个确认位。
否定的数据确认位是由下列情况引起的—奇偶错—时序错—接收器缓冲区已满。在奇偶错或接收器缓冲区已满的情况下,这一字节将尽可能地予以重复,直到或者该字节被确认或帧长度已被用完。如果在该帧内此字节未被发送,则将为此字节起动一个新帧。
规定了下列控制信号HEX(16进制,下同)0(0000)读从站接口电路的状态。如果这一操作之后没有跟着一个确认信号,则结论就是从站的接口电路有故障。不过,可以进行一次重复操作。如果收到了正确的确认,则从站随后就输出一个字节,其中表示它的状态。HEX2(0010)读从站的状态并对从站加上锁定信号。当从站被另一个主站锁定时,这种情况由数据字节来给出信号;给出请求的主站必须再次进行尝试。HEX3(0011)读出数据并对从站加上锁定信号。如果没有收到答复,则询问其状态,作为状态的规定如下0位=0从站的发送缓冲区为空;这种情况要向控制系统发信号。2位=1从站被另一个站锁定;控制系统收到再次进行尝试的指令。4位=0从站不能发送数据;这种情况要向控制系统发信号。在所有0、2、4位的其它情况下要起动一个新的具有同样控制码的帧。HEX4(0100)读被锁定的从站地址的最低位的两个4元组(tetrad)。如果从站未被锁定,这一事实则用一个否定确认位来通知主站的控制系统。HEX5(0101)同上,但读最高位的两个4元组。HEX6(0110)读从站的状态并解锁。如果从站是被另一个主站锁定,则用否定的确认位给出信号,主站则停止它的尝试。HEX7(0111)读数据并解锁。除了解锁之外,这相当于码0011。HEX8(1000)写占有请求;如果其结果是一个否定的确认位,则对从站的性质/状态作一次查询。后者按下述方式解释1位=1从站的接收器缓冲区不空;通知主站的控制系统。2位=1同上3位=0从站没有存储器,这意味着从站不能答复关于性质/状态的请求。如果这三位中没有一个有结果,则进行新的尝试。HEXA(1010)写命令及锁定。然后在一个否定的确认位的情况下状态被读出;解释如下1,2位同上;如果这些位都没有结果,则作新的尝试。HEXB(1011)写数据及锁定。然后在一个否定的确认位的情况下状态被读出;其解释与HEXA相同。HEXE(1110)写命令和解锁;其余同HEXA。HEXF(1111)写数据及解锁;其余同HEXA。
在每一帧的末尾,发送站(从站或主站)检查所有必需的字节是否都已发送。如果情况不是这样,则主站开始一个新帧而发送站把剩下的字节装入本地的发送器缓冲区。接口电路的说明图3表示一个接口电路的实施例。电路(60)包括下列连接关系,从振荡器(6兆赫)开始按顺时针方向看电源VCC、地GND、测试控制测试、用于本地控制系统的8位数据、同步(选通)引脚DS、读/写控制R/W、地址和数据之间的选择(A/D)、中断信号Int、其所用的三个预置的地址位(A0、A1、A2)、具有TTL电平的两条数据线、以及如上面说明的用于单信道通信(D2B)的一对双绞线。单元62包括时钟和用于在电源电压出现时使电路复位的控制部件(POR=电源接通复位)。“芯片就绪”信号、POR信号和时钟信号0P、1P从这里产生。“芯片就绪”信号表明在电源接通和复位后电路又已处于工作状态。
块64是对在D2B和TTL线路上的信号作滤波、检测和控制之用的电路。在D2B和TTL线路上的信号的数据内容是相同的,仅有下列电气上的不同TTL是单方向的而D2B是双方向的,另外,其电压电平不同。在线路65上,线路上的各位是以TTL电平传送的。在块66中在线路位和逻辑位之间进行转换。块67组成了在块66和68之间的两个单向锁存电路。线路69传送用于激励下一位的信号。块68组成了这个接口电路的核心。在其中形成奇偶位,检测确认位,如需要的话,以及分析或存储各种控制位和状态位以供查询。此外,还与控制系统交换信息,并组织和RAM缓冲区之间的交互操作。缓冲区70的数据宽度为8位;字节数则取决于应用。地址出现在线路71上;块72是一个数据门,其宽度为8位,用于连接到本地控制系统(示未出)去。信号方式0P、1P是第二时钟信号,其频率与0P、1P相同或者为该频率的1/4,这取决于外部总线D2B上的运行方式。线路76为不同的位长度而控制时钟对位级别的(bit level)切换,因为位长度对于起始位、方式/地址/控制位以及数据位而言是不一定相同的。线路75在帧的级别上具有相同的功能。线路77是一条使能线(EN);线路78和79提供同步信号交换。
在简单的实施例中本电路适用于方式0及方式1;此外,它既适用于主站操作也适用于从站操作。在复位信号(电源接通复位POR)之后,此电路被恢复。微处理器通过对几个自由访问的寄存器的装入而可以使电路的地址被接口电路所使用。此外,某些表明应用的容量的标志位被置位(当存在有本地存储器而且从站也能作为发送器装置工作时)。信号POR也对本地控制系统产生一个中断信号。电路的从站部分的总线状态被存放在从站状态寄存器中。当电路被另一个站锁定时,后者的站地址被存放在锁定地址寄存器中。为了使电路能成为一个主站而工作,应用的控制电路应提供下列信息—从站地址、控制码以及在写操作的情况下要发送的数据字节,以便装入主站缓冲区,—表明要使用的线路方式的方式信号,主站请求信号则被装入主站命令寄存器。
—随后,该站就启动一个报文,如有需要,还参与相关的仲裁过程。在一个肯定的仲裁结果之后,当一帧结束时,就给出一个给本地控制系统的中断信号(INT)。本地控制系统随后就能读出在中断寄存器中的中断信号的理由(主站中断、从站发送器中断或从站接收器中断)。主站状态寄存器中含有肯定确认位的数目并表明报文是否成功。后面的寄存器因而作为计数器而工作。此外,在读操作的情况下的中断信号之后,主站缓冲区含有收到的数据。中断寄存器在被读出后就被复位这是由对该寄存器作一次单独的写操作而实现的。
对从站接收器的功能实际上执行同样的操作。肯定确认位的数目则存放在从站接收器寄存器中。当从站接收器缓冲器被读出后,从站接收器命令寄存器中就被装入信息OO(HEX)。优选实施例的详细说明图4是主站所进行的再尝试过程的流程图。在本实施例中,锁定时间的最大长度为300毫秒。块100表示发送过程的开始,这意味着该站将知道要传送什么数据和对哪个从站通信。这个过程可能涉及全部的或部分的从站-发送器状况。在块102中再尝试参数被复位为零。在块104中主站进行帧的发送,这过程可能包括一个仲裁过程。在进入块106时,假定所提及的该帧的启动和仲裁对主站都已成功。在块106中,要测试从站是否对它自己的地址和对控制码CC送出肯定确认,后者表示主站需要从从站得到特定的活动。存在着多种可能性。一种可能性是控制码可能仅仅需要从站报告它的活动状态,这不会干扰代表其自身的锁定状态的活动。另一种控制码也许需要更广泛的数据交换,而这对锁定的从站是不允许的。一般说来,如果确认是肯定的,则系统回到块108,在块108中进行操作并且最后完成这些操作。如果块106给出一个否定的确认,则在块110中就测试再尝试参数。如果其值小于3,则块116执行一个短暂的等待时间,且在块120中该参数递增1。循环104、106、110、116、120在进行之中最多执行3次。如果参数值达到3,则系统转向块112和118,在那里执行一个更长一些的等待时间。后面这个循环同样也最多执行三次。最后,如果参数值达到6,则系统被认为有故障并转向退出块114。执行这一过程的总共时间约为324毫秒。
简要地说,存在三种相应类别的错误·原因暂时的传送错,例如电气干扰。定时规律无,因为这种错误持续时间极短。·原因从站接收器缓冲区满。定时规律从站必须在25毫秒内对它的接收缓冲器芯片进行维护服务。主站过程重新发送3次,其间的间隔至少应为8毫秒,因为3*8毫秒加上传送相应的帧的时间大于25毫秒·原因从站锁定于另一主站。定时规律没有一个主站能把从站锁定超过300毫秒;如果在出错的情况下,从站会在300毫秒后自行解锁。
此外,对于从站而言,还有一个过程可以在主站因内部出错而不对从站进行解锁的情况下自行解锁,这示于图5和图6中。图5的流程图从块130开始,这时已接收到了一个帧。随后,在块132中,在接收缓冲器中出现的帧被拷贝到站的本地处理设备中。在块134中对这样得到的帧是否含有解锁代码进行检测。如果此帧含有一个解锁信号(Y),则在块136中解锁定时器被停止。如果没有发现解锁信号(N),则在块138中解锁定时器被重新起动。在这一特定的组织中,每一帧或者含有解锁(=最后一帧),或者锁定(=非最后帧)。不论哪种情况,在块140中帧或报文被处理。在块142中过程结束。在图6中表示了锁定的站的自行解锁过程。在块144中在300毫秒之后解锁定时器的“时间到”被检测。在块146中从站被实际上解锁。在块148中过程结束。当然,主站并不知道这一情况,可能在尚未结束的报文的下一帧时使涉及的该从站再次被锁定。
图7是再尝试过程的流程图,这个过程相对于图4来说是经过改进的。一般说来,相应的各块都用相同的标记示出。不同之处如下。在块101中两个再尝试参数再尝试1(Retry1)和再尝试2(Retry2)都被置成零,其中的第一个已在图4中讨论过。在块103中,检测从站是否对其自己的地址送出肯定的确认。如果此确认未被收到,主站在块109中执行对参数再尝试1的值的测试。如果此发送的执行次数少于3次,则在块113中再尝试1的参数值被增加1,此时系统仍回到块104。如果再尝试1的参数值达到3,则系统退出到块111且主站必须引导它自己进行别的操作。这里所说明的循环是准瞬时地执行的。这意味着不论如何它的循环时间都远小于下一个较慢的循环,后者循环的时间基本上取决于块116。这一延迟可能在微秒的范围内,但几个毫秒的值可能是合适的。
如果在块103中测试是肯定的,在块105中参数再尝试1再次被复位为零。这一措施可避免在下述情况下使其努力轻易地被终止,即如果在经过块113的路线进行3次后下一次在103块中得到成功,而从站地址确认因偶然原因而再次失败。不过,在某些实施情况中,块105可以省略。在块107中,执行对控制码CC的测试。在两种可能的结果中,系统都象图4那样进行。
权利要求
1.一种包含主站和从站的多站通信总线系统,每个主站包括以帧为基础的仲裁装置、仲裁输出检测装置、和帧格式化装置,以便在赢得该仲裁时发送一个按帧组织的报文,该报文含有锁定和解锁信号,以便对一个被寻址的从站在上述报文所包含的多个帧的持续期间被相应地锁定或解锁,使得在该持续时间内另一个主站至少以一种特定方式被阻塞去访问被锁定的从站,其特征在于,上述的另一个主站具有一个顺序装置,用于在检测到被阻塞的情况时就执行第一顺序,即以一组合的时间长度较频繁地执行再尝试任务,这个组合时间长度显著地小于上述持续时间的标准最大值,接着它执行第二顺序,即以一组合时间长度较稀少地执行再尝试任务,这个组合时间长度大于上述持续时间的标准最大值。
2.如权利要求1所要求的系统,其特征在于,其中所说的另一个主站有第二顺序装置,在对想要联系的该从站发出其地址后检测到未被确认时就执行用于对该从站寻址的准瞬时任务的第三顺序,而仅在检测到对上述地址的确认的情况下才进行对该从站的访问。
3.如权利要求1和2所要求的系统,其特征在于,其中上述第一和上述第二顺序中的至少一个具有至少三个相继的任务。
4.如权利要求1、2或3所要求的系统,其特征在于,其中所说的总线是D2B总线。
5.一种用于含有主站和从站的通信总线系统中的主站,该主站含有以帧为基础的仲裁装置、仲裁输出检测装置、和帧格式化装置,以便在赢得上述仲裁时发送一个按帧组织的报文,该报文含有锁定和解锁信号,以便对一个被寻址的从站在上述报文所包含的多个帧的持续期间被相应地锁定和解锁,使得在该持续期间内另一个主站至少以一种特定方式被阻塞去访问被锁定的从站,其特征在于,上述的主站有一个顺序装置,用于在检测到被阻塞的情况时就执行第一顺序,即以一组合的时间长度较频繁地执行再尝试任务,这个组合时间长度显著地小于上述持续时间的标准最大值,接着它执行第二顺序,即以一组合时间长度较稀少地执行再尝试任务,这个组合时间长度大于上述持续时间的标准最大值。
6.如权利要求5所要求的主站,其特征在于,具有第二顺序装置,在对想要联系的该从站发送其地址后检测到未被确认时,就执行用于对该从站寻址的准瞬时任务的第三顺序,而仅在检测到对上述地址的确认的情况下才进行对该从站的访问。
全文摘要
一个多站通信总线系统,适合于主站和从站以及主站间的以帧为基础的仲裁。在赢得仲裁时该帧被格式化并发送按帧组织的报文,该报文包含锁定和解锁信号以便对一被寻址的从站在报文的多个帧的持续期间相应地锁定和解锁。这使另一个主站在此持续期间被阻塞去访问已锁定的从站。此外,另外的主站在检测到被阻塞后执行第一顺序,即较频繁地以一组合时间长度进行再尝试,此时间长度显著地小于上述持续时间的标准最大值。然后如有需要的话,再以一组合时间长度执行较稀少的再尝试任务,这个组合时间长度大于持续时间的标准最大值。
文档编号G06F13/368GK1113397SQ94190604
公开日1995年12月13日 申请日期1994年7月12日 优先权日1993年7月16日
发明者J·赫斯特拉 申请人:D2B系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1