并行/串行总线的帧群发送与接收.pdf

上传人:1** 文档编号:538423 上传时间:2018-02-21 格式:PDF 页数:34 大小:1.04MB
返回 下载 相关 举报
摘要
申请专利号:

CN93100809.3

申请日:

1993.01.20

公开号:

CN1075580A

公开日:

1993.08.25

当前法律状态:

终止

有效性:

无权

法律详情:

专利权有效期届满IPC(主分类):H04B 10/12申请日:19930120授权公告日:19961120期满终止日期:20130120|||授权||||||公开

IPC分类号:

H04B10/12; G06F13/38; H04L29/00

主分类号:

H04B10/12; G06F13/38; H04L29/00

申请人:

国际商业机器公司;

发明人:

尼尔·B·巴托; 保罗·J·布朗; 罗伯特·S·卡波斯基; 路易斯·T·法桑诺; 托马斯·A·格雷格; 格雷戈里·萨利尔; 帕特里克·J·萨格鲁; 道格拉斯·W·韦斯科特; 小文森特·P·蔡阿克

地址:

美国纽约

优先权:

1992.02.20 US 07/839,986

专利代理机构:

中国国际贸易促进委员会专利代理部

代理人:

姜华

PDF下载: PDF下载
内容摘要

通过多光纤以串行方式异步并行发送数据块的系统与方法。提供帧群机制能在每根光纤上串行发送相关数据。帧群无顺序号,接收器据各帧到达时间判断帧群部分。一实施例中,并行总线各成员收发机在光纤每端异步地达到同步,故不再需公共时钟。接收器通过校验报文上一歪斜测量为每个导体确定相关歪斜,校验报文是由总线另一方的发送器产生的。总线两端所有导体上歪斜已确定时,通过总线交换该歪斜值,以设置发送器的适当帧间隔。

权利要求书

1: 一种通过包括多载体的通信链路发送数据帧的方法,其特征在于下列步骤: 通过每个载体并行地发送一串校验帧; 为通信链路的两端确定由最快的载体接收的第一校验帧与由最慢的载体接收的第二校验帧之间的时间差; 为所述通信链路两端的发送器提供表明时间差的信息; 在提供所述时间差信息之后,限定在任何所述载体上发送的顺序帧的开始-开始间隔不小于所述时间差。
2: 权利要求1的方法,其特征在于:所述确定时间差包括步骤:在以接收一个第一所述校验帧为开始的各种时间间隔上重复尝试接收,保留所述校验中那些与所述第一校验帧并行发送的校验帧;继续变化所述时间间隔,直到确定了最大相关歪斜值为止;并且其中所述提供时间差信息包括步骤:提供所述最大相关歪斜值,作为所述的表明时间差的信息。
3: 权利要求2的方法,其特征在于所述各种时间间隔以一个第一歪斜值开始并且重复递减。
4: 一通信系统,其特征在于: 一个包括多载体的信息传送媒介; 一个包括发送单元的第一结点,其中发送单元包括多个发送器, 一个包括接收单元的第二结点,其中接收单元包括多个接收器;每个接收器通过一个不同的载体耦合到一个相应的所述发送器上; 接收单元包括用于在每个载体上测量相应歪斜值的装置和能为第一结点提供最高歪斜值的装置; 发送单元包括用于在载体上并行发送多个帧的装置和能够确保在载体上发送的背对背(back  to  back)帧的开始间隔不小于最高歪斜值的装置。
5: 权利要求4的系统,其特征在于所述第一结点进一步包括:用于确保在一预定时间窗口内发送所有帧的装置。
6: 权利要求4的系统,其特征在于接收单元包括:用于根据一组歪斜规则测试多个帧接收状态的装置与能在接收状态未落入所述歪斜规则内时,将一个错误状态通告给第一个节点的装置。
7: 权利要求4的系统,其特征在于接收单元包括用于确定何时接收到多个帧中第一个帧的装置与判断是否在从收到第一个帧开始的一段时间间隔内已收到了多个帧中其余帧的装置,所述时间间隔由最高歪斜值确定。
8: 权利要求4的系统,其特征在于用于确定接收多个帧中第一帧的时间的装置与判断从收到第一帧开始的一段时间间隔内 是否已收到多个帧中其余帧的装置,所述时间间隔由最高歪斜值加上一不变的填充值确定。
9: 权利要求4的系统,其特征在于所述帧中每个帧都包括一链路控制字,并且所述接收单元进一步包括用于判断所述多个帧的链路控制字彼此是否一致的装置。
10: 权利要求4的系统,其特征在于接收单元包括群判断装置,用于判断接收到的帧是否都属于第一结点并行发送的多个帧,其中所述多个帧不包括一个用于标识每个帧的顺序号,这些帧作为第一个群的一部分已被并行传送。
11: 权利要求4的系统,其特征在于第一与第二结点都是处理器,并且其中每个处理器包括: -中央处理单元; -耦合到所述中央处理单元的主存贮器;与 -耦合到所述主存贮器,中央处理单元与信息传送媒介上的通信控制器。
12: 权利要求4的系统,其特征在于载体是光纤。
13: 权利要求5的系统,其特征在于所述预定时间窗口不大于2.5字传输时间。
14: 权利要求7的系统的特征在于每个所述帧都包括一个链路控制字,并且其中所述的接收器进一步包括用于判断所述多个帧的链路控制字彼此是否完全一致的装置与用于在所述链路控制 字彼此不完全相同或在所述时间间隔内没有接收到所有所述多个帧的情况下,为所述第一结点指示一错误状态的装置。
15: 权利要求10的系统,其特征在于所述帧群判断装置包括用于暂存那些已被识别出不是在所述第一帧群中发送的帧的装置,和用于将所述帧与一个第二连续帧群一起存贮的装置。
16: 一种用于通过包括多载体的通信链路发送数据帧群(每个帧对应一载体)的方法,其特征在于下列步骤: 至少为通信链路一方测量一最慢载体与一最快载体之间的传输时间差; 为所述通信链路至少一方上的一个接收器,提供表示所述传输时间差的信息; 在所述接收器方检测在所述链路上接收到一个第一数据帧的时间; 根据所述检测,开始一时间测量,并且 在所述开始时间测量之后,判断是否帧群中所有数据帧都已在所述传输时间差内被接收到,如果没有,产生一表明错误状态的信号。
17: 一种通过多载体通信的方法,其特征是步骤: 在一预定时间窗口内,从一发送结点发送第一多个帧,每个帧占用一个载体; 一个接收结点在载体上接收第二多个帧; 根据一组歪斜规则测试第二多个帧的接收, 根据上述测试,判断第二多个帧中哪些帧是作为第一多个帧部分被发送的。
18: 权利要求17的方法,其特征是所述预定时间窗口是2.5字传输时间。
19: 权利要求17的方法,其特征是第一多个帧中的每个帧都包括一相同的链路控制字,并且其中歪斜规则包括判断第一多个帧中的哪些帧是在一时间窗口内被接收到的,该时间窗口是根据通过所述发送结点与所述接收结点间链路通信的帧预先测量的。
20: 权利要求19的方法,其征是所述判断包括步骤:比较第二多个帧的链路控制字,认为具有相同链路控制字的帧是作为第一多个帧部分被发送的,并且根据链路控制字为一致的判断,将第二多个帧作为一个帧群存贮。
21: 权利要求17的系统,其特征是所述判断包括步骤:暂存被认为不是作为所述第一多个帧部分发送的帧,并且将所述帧与后续接收的多个帧一起存贮。
22: 一个并行通信系统中使用的收发机,所述收发机的特征是: 一个包括多接收器的接收单元,每个接收器被耦合到多载体总线的独立信息载体上; 接收单元进一步包括用于测量在每个载体上接收的信息单元 的相关歪斜的装置与基于至少测量部分,判断哪些信息单元是作为一公共信息群在总线上发送的装置。
23: 权利要求22的收发机,其特征是用于判断的装置包括:用于暂存至少一个已被认为不是作为公共信息群发送的信息单元的装置和将该信息单元与后续收到的多信息单元一起存贮的装置。

说明书


本发明涉及数据通信系统。更具体地说,本发明涉及使用光纤传输信息的数据通信系统。

    光纤允许以串行方式从一发送器到一接收器进行长距离(数公里)、高数据速率(每秒亿万位)的数据长串传送。这与传统的、在该数据速率下只能进行短距离(几十米)数据传送的电缆不同。

    高性能的计算机要求计算机系统的各部件间的系统总线应具有更高的带宽(每秒数亿字节)。使用运行的在最大带宽上的单根光缆作为计算机系统各部件间的系统总线是不适宜的。

    在先有技术中,一种解决单个载体上带宽不足问题的传统方法是,并行发送每个数据字的位,每位占用多个载体(并行总线)中的一个。另一种称之为分解(stripping)的方法是,并行发送多个数据字串,每个字占用多个载体中的一个。然而,这些方法有着一个共同的问题:当并行位或字经总线发送时,在它们之间会产生歪斜。

    歪斜是最快与最慢载体间的一个传播时间差。如果控制不当,这种传播时间差会在接收器方引起数据误差。歪斜是由发送器、接收器与总线上每个载体的传输介质在物理特性上地差异造成的。

    一般有两类歪斜,一类是随机歪斜(RSKEW)并表现为抖动。这类歪斜的起因是时钟同步与空字插入。另一类歪斜是系统性的(SSKEW),在该类歪斜中,一个收发机总是比其它的慢或快一个固定时间量。各载体传播时间的不同是系统性歪斜的典型起因。

    发送器、载体、接收器每个都可能引进歪斜。下面描述了这些部件是如何引起歪斜的。

    发送歪斜是最早发送器的帧开始与最晚发送器的帧开始之间的时间差。可在发送器方测到这类歪斜。有三种发送歪斜源。第一种是随机的,其起因是发送器时钟与系统时钟的同步。在这种情况下,所有发送器时钟都与一公共参考时钟同步,并且有一公共系统时钟同步点,该发送歪斜可以如一比特时间那么小,也可以更小。第二类发送歪斜源也是随机的,其起因是空插入。第三类发送歪斜源是系统性的,其起因是收发机间内部信号的传播时间差。任何合理的结构设计都应该把这种歪斜限制在几比特时间内。

    大量歪斜是由载体自身的特性引起的。这类载体歪斜只不过是链路上最慢与最快载体间的传播时间差。该类歪斜几乎完全是系统性的。诸如温度等环境改变会引起时间上的轻微变化。所以应该明白,尽管多个帧是在同一时刻发送的,但因为载体歪斜,它们有可能在不同时刻到达。

    歪斜也可由接收器的特性引起。在接收器中有两类否斜。第一类是随机的,是由系统时钟与接收器时钟同步引起的。第二类接收器歪斜源是系统性的,是由不同收发机间内部信号传播时间差引起的。与发送器一样,任何合理的结构设计都应把这类歪斜限制在几比特时间内。

    为了避免歪斜引起的这类数据错误,通常使用一些并行位同步的方法。在传统的并行总线设计中使用一公共时钟达到同步。尽管该方法可用,但效率低,表现为该公共时钟一般使得数据收集在锁定步骤中进行,而数据收集的上限速度却受限于最慢位路径传送时间。

    于是需要一种能在多个载体上(如多根光纤上)发送数据字的改进方法。

    本发明包括一种能以串行方式通过多载体并行异步发送数据块的系统与方法。提供帧群作为一种能够在每根光纤上串行发送相关数据并能发送的数据集结在一起的方法。接收器对于给定的链路具有一预先测定的最大歪斜值。使用该信息,接收器可以根据不同帧的到达时间来判断哪些帧是帧群部分。

    根据本发明的一个实施例,并行总线的每个部件的收发机可在光纤每端异步地达到同步。于是,不再需要一公共时钟。总线每端的接收器通过对总线另一端发送器产生的一串校验帧进行歪斜测量来确定每个导体的相关歪斜。当所有导体上的歪斜(从总线两端看)被确定后,通过总线交换歪斜值,这样发送器就可以设置合适的帧间隔。

    根据本发明,歪斜测量的优点是能够使数据在包括多载体总线的链路上传送,这种传送仅受限于链路本身的最大带宽,而不受最坏情况下理论歪斜的限制。根据本发明的一个实施例,数据的完整性由链路建立或初始化时第一次测量的链路中载体的相关歪斜值来保证。在相关歪斜值已确定之后,它们在链路的两端之间被交换,并建立某种联系,这种联系含有被传送帧的开始-开始间隔,它受限于接收器测量的最坏情况(最大)歪斜值。由于建立的帧可以很大,所以通过链路可以以最大链路带宽发送大量数据,而无须考虑歪斜。此外,在使用大数据帧的地方,可以使在给定链路上将开始-开始帧间隔限制到最坏情况歪斜值的带宽限制因素保持最小。

    参照附图有利于更好地理解本发明,其中:

    图1:是两计算机系统部件间的一个物理链路的方框图;

    图2:描述了一示范性帧的格式;

    图3描述了一示范性帧群的格式;

    图4是一示范性发送器的逻辑图;

    图5是一示范性接收器的逻辑图;

    图6是一歪斜测试过程的流程图;

    图7是链路接收器端看到的歪斜测试/测量过程的流程图概要;

    图8是根据本发明的一个实施例,在一接收器中帧接收与帧群完整体校验的流程图。

    在不同图上出现的相同参考数字代表相同部件。

    现在参见图1,它描述了两计算部件102,104之间的一个物理链路。这些部件例如可以是两台计算机或一台计算机与一台共享存贮器装置。无论哪种情况,计算部件102,104都是通过包括光纤总线108的内部系统信道链路106来连接的。光纤总线108由多光纤对形成。每个光纤对包括两根光纤,一根用于发送信息,另一根用于接收信息。尽管使用的光纤对的数目可以是任意的,但内部系统信道示范值是1~64对光纤对,按以2为底的整数幂选取。光纤总线108的光纤对110通过位于总线两相对端的收发机112,114耦合到计算部件102,104上。每个收发机112,114都包括一个发送单元和一个接收单元,后面将对它们作进一步详细描述。

    数据通过链路从发送计算部件的源缓冲器116中发出。然后对接收的数据进行收集,并将其暂存在接收计算部件的接收缓冲器118中。尽管图1中表示的每个计算部件中只有一个缓冲器,但应理解计算部件可根据建立的链路的数目与类型动态地建立不同数目的源与/或接收缓冲器。缓冲器116,118可以是“store-thru”型的,即不需在卸载之前填充。该类缓冲器具有发送与接收等待时间较短的优点。

    欲被发送的信息在组成光纤总线108的光纤对110中被分割。将信息以帧的形式从源缓冲器116中发送给接收缓冲器118。每个帧都在总线108的一根光纤上传送。更多有关链路配置与缓冲器结构的信息分别包括在一些共同待审申请之中,其题目为“可配置、可恢复并行总线”(CONFIGURABLE,RECOVERABLE    PARALLEL    BUS)(Bartow等人申请,Attorney    Docket    Number    P09-91-066,S/N)和“数据处理系统的高性能信道”(HIGH    PERFORMANCE    CHANNELS、FOR    DATA    PROCESSING    SYS    TEM)(Bartow等人,Attorney    Dcket    Nomber    P09-91-067    S/n,以上两项都转让给本发明的同一受让人,并且在同一日提出申请,两者在此全部引作为参考。

    图2描述了一个示范性帧的格式。每个帧都以链路控制字(LC)202开始。链路控制字的各个字段用于识别帧的格式与类型,指定一缓冲区,并且控制收发机与链路的状态。

    在链路控制字之后,紧接着的是链路控制CRC(循环冗余校验)字204。链路控制CRC字204通常是从链路控制字的值中产生。在接收器方检验链路控制CRC字,以测试到来帧的链路控制字的有效性。

    有两类帧、控制帧与信息帧。控制帧不需要信息域。它们只包括链路控制字与链路控制CRC字。信息帧包含链路控制字202、链路控制CRC字204与信息域206。信息域可包括例如1~1024个字。该信息域用于从链路一方的缓冲器向另一方的缓冲器发送信息。

    信息域之后接着的是信息域CRC字208。该信息域CRC字通常是从信息域的值中产生。在接收器方校验信息域CRC字,以测试到来帧的信息载的有效性。

    可将相关信息放在几个帧中,每个帧都占用工作链路的一收发机。这些帧(称为“帧群”)被同时发送。帧群中帧数目与工作链路中收发机的数目相等。图3表示了一示范围性帧群302。使用帧群后,就能以单个光纤带宽的若干倍的带宽来发送数据,因为多个帧(每根光纤上一个)是通过链路同时发送的。

    尽管没有提供顺序号,每个帧群中的链路控制字与前后帧群的链路控制字互锁。该互锁可以用不同方式来实现。例如,每次发送以一请求开始,接着是数据,然后是一确认。每个这类发送都有一个唯一的链路控制字。此外,可以在链路控制字中发送一个发送与/或接收缓冲器的地址。于是,来自(如/或送往)不同缓冲器的数据具有不同的链路控制字。

    在较佳实施例中,与相同缓冲器和相同帧群类型有关的帧可以具有相同的链中控制字。例如,一给定报文可包括16个数据帧,其中15个具有相同的LC,另一个具有不同的LC,在该LC中有一位用于指示一缓冲区的开始。在这种情况下,不能通过比较每个接收的帧群中的LC字来检测具有相同LC的15个帧中的一个丢失帧。然而,要么通过对上一个帧群中LC的比较将检测到这一问题,因为已经收到了属于下个帧群(类型不同并具有不同的LC)的帧,要么歪斜定时器将终止工作(如后面所述)。在这样两种情况下,接收器都将检测到缓冲区没有接收到全部数据。这可以通过将实际接收的字节总数与作为每一个LC的一部分的发送字节数进行比较来完成。

    作为另一实施例,发送器可以确保帧群中的链路控制字彼此一致,而这些链路控制字与最接近的前后帧群不同。

    通过链路可将信息在一个或多个帧群中从源缓冲器中发生。当使用多个帧群发送缓冲器的内容时,可按缓冲器中字增加的顺序发送帧群。例如,低序号字的帧群在高序号字的帧群之前发送。当工作链路包括不只一个收发机时,以收发机为基础,以字为单位发送缓冲器的内容。这就是说,以链路中收发机的数目为模,在收发机间(于是也在光纤中)分配字(如,在一个四收发机工作链路中,收发机0具有字0、4、8、12)。

    根据本发明的一个实施例,总线每个载体的收发机在光纤的每端异步地达到同步。于是,不再需要公共时钟。在先有技术中,可常见到用于同步在一个导体上作为串行数据发送的帧的各种装置,所以这里就不再详细讨论了。作为这类同步装置的一个例子可参见chen等人的并且已转让给本发明同一受让人的美国专利第4,970,714号。

    每根光纤和与其有关的发送与接收硬件都具有不同的可引起歪斜的传播特性。歪斜是最快与最慢光纤间的传播时间差。在任何光纤上收到一帧开始,都会使接收器开始检验整个帧群的接收,并且在接收缓冲器中重新组织接收的数据帧。接收器通过各个帧的到达时间与链路控制字的内容判断哪些帧属于帧群部分。如果在建立的歪斜窗口中没有接收到一帧群的全部帧,或者在歪斜窗口中接收的链路控制字不同,就识别到一歪斜错误。

    根据本发明的一个实施例,歪斜规则设置歪斜窗口,为了接收有效的报文,帧群中的所有帧必须在该窗口内被接收到。这些规则也设置可发送连续帧群的速率,这样一帧群中的帧就不会与其它帧群中的帧相混淆。此外,在一给定帧群中进行的链路控制字的一致性校验可使系统不受“丢失帧”的影响。

    对于一给定链路,在接收器方测得的帧群歪斜可以通过加上或减去随机歪斜(RSKEW)分量来变化。最大随机歪斜(RSKEW)分量是在设计链路硬件时设置的,同时,系统性歪斜(SSKEW)分量主要是光缆安装引起的。根据本发明实施例,在链路初始化时。测量总的歪斜(光与随机分量),以保证它不超过设定的限制,并且进一步保证属于同一公共帧群的帧能被接收器正确地识别。

    图4描述了根据本发明实施例的一个示范性发送单元。图中表示了一个四收发机链路。各发送器(每个都对应一光纤载体)分别表示成XMITO    402、XMIT1    404、XMIT2    406、XMIT3    408。当然图4中的发送器可以通过选通选定的发送端口,使用少于四个载体(如3,2,1)进行工作。

    图中表示了XMIT0    402的内部组成。除数据路径(未示出)之外,每个发送器都有一个开始帧生成的称为开始(START)410的输入。每个发送器还有一个表明当前帧发送已结束、并且歪斜等待时间已过的称为准备(READY)412的输出。

    每个发送器中都有一等待(WAIT)寄存器414,该寄存器414在链路初始化时被初始化。WAIT寄存器414中的值是在LC(Link    Control)字之间必须发送的字的个数。WAIT寄存器414与一个三输入多路传换器(MPX)416相连。MPX    416的输出与等待计数器(WCNTR)418相连。WCNTR    418的输出与递减器(-1)420以及用于检测WCNTR零值的八输入“与非”电路(=0)422相连,并返回连到MPX    416输入(A-C)的第一输入(A)上。递减器420的输出与MPX    416的第三个数据输入(C)相连。

    当四个发送器通过打开START线410一个周期表明准备好时(即:所有发送器都空闲并且最小LC字至LC字间隔时间已过),信道开始一帧。线410可以使每个发送器都开始帧发送。当发送帧状态机OFSM(Outbound    Frame    State    Machine)424发送LC(在线426上指明)时,END    428与MET    430移位寄存器(SRLs)被复位,并且通过416与418选通WAIT寄存器414中的值。当字被发送到线上时,数据请求线(DR)432有效,并且通过递减器420与MPX    416电路,WCNTR    418中的值递减。在WCNTR    418中的值为零之前(或者在其之间,或者之后),帧结束(EOF)可能成为有效。EOF线434置位END    SRL    428,并且8输入“与非”电路422置位MET    SRL    430。当SRLs    428与430都被选通时,“与”电路436的输出有效,这样该收发机开始一下帧的所有条件已全部具备。

    来自发送器的READY线412置位RDY0    438,RDY1    440,RDY2    442,RDY3    444移位寄存器。这些移位寄存器的输出与一个四输入“与”电路446相连。当四个RDY移位寄存器都被置位时,“与”电路446的输出表明四个发送器都准备好开始发送下一帧。“与”电路446的输出也被用于复位ROY移位寄存器438-444。

    图5描述了一根据本发明实施例的示范性接收单元。图中表示了一个四收发机链路。接收器为RCVO    502、RCV1    504,RCV2    506和RCV3    508。来自每个接收器的数据路径560(A-D)都包含接收器检测到的当前LC。每当一新的LC被相应的接收器检测到时,输出线510(A-D)就有效一个周期。选通的比较逻辑(COMPARE)562对数据路径560的内容进行比较,数据路径560的内容由选通的多路转换器(MPX)564选择。

    置位一复位锁存器(R-S锁存器)V0    528,V1    530,V2    532与V3    534分别由来自接收器的对应的线510(A-D)置位。当某一接收器检测到一新LC时,就将相应的S-R锁存器528-534置位。四个S-R锁存器528-534控制MPX    564,并且输入到先进先出(FIFO)缓冲器568,一个四输入“与”门(A)538和一个四输入“或”门(0)536。四个“或”门570-576中每个都有两个输入。一个输入来自相应接收器的线510(A-D)。另一输入来自一个相应S-R锁存器(528-534)的输出。这些“或”门570-576的输出发信号给COMPARE    562,并且判断将要比较哪个数据路径。

    歪斜测量功能由一计数器(SCNTR)518来完成,518的输入来自第二个多路转换器(MPX)512。第二个多路转换器512将零值514或增值(+1)516选通到歪斜计数器(SCNTR)518中。SCNTR518是一个8位寄存器。SCNTR    518的输出送到一个“相等”比较电路(二)588与一个增值器(+1)516中。比较电路588的另一个输入来自一个寄存器(SKEW)594的输出。当SCNTR    518中的值等于SKEW    594中的值时,比较电路588的输出有效。SKEW    594中的值由一微处理机(没有表示)通过线596置位。

    FIFO    568除了存贮选自一个接收器的LC之外,还存贮描述哪个接收器检测到此LC的摘要信息。FIFO    518的写线586受一个四输入“或”(O)电路598的控制。微处理器通过激活读线584,径数据总线590读FIFO568中的项目。

    与发送单元一样,任何载体的接收器都可以在微处理器的控制下,经一控制寄存器(没有表示出)选通系统。

    如图5中描述的,根据本发明实施例一示范性接收单元的工作是以至少一个接收器收到一LC为开始,并且以对FIFO    568中写操作为结束。当接收器RCVO    502-RCV3    508中的一个或几个接收到第一LC时,相应的S-R锁存器528-534就被置位。“或”电路538的输出有效,它开始使SCNTR    518增值。当四个LC全部收到时,就将四个S-R锁存器全置位,并且“与”门538的输出有效(高)。该输出被送到一反向器580中,接着,580输出又送到一“与”门540中。于是,当“与”门538有效(高)时,“与”门540的输出无效(低),之后,通过“与”门540、“或”门599截止SCNTR    518。如果已收到全部四个LC,并且它们都相等(如COMPARE    562检测的那样),“与”门528的输出有效。该输出被送到“或”门598,接着它会引起一个对FIFO    568的写入。与来自MPX    564的LC一起,将描述哪一个接收器有一LC的概要信息存贮在FIFO    586中。

    如果某一LC被链路上的传输噪声破坏,接收器将无法检测到它。在这种情况下,“与”电路538的输出无效,并且SCNTR继续计数,直到其值达到SKEW    594中的值。在该点,比较电路588的输出有效,该输出并且被送到“或”电路598中,电路598会使一个项目进入FIFO    568。在这种情况下,FIFO    568的概要信息指示哪个接收器没有接收到LC。

    损坏LC的另一个可能结果是两不同帧群的明显重叠。假设两帧群以最小LC-LC间隔到达接收器,并且假设第一帧群的第一帧被损坏并被丢异。在这种情况下,“或”门539的输出有效被延迟,直到接收到第一帧群的下一个LC。该延迟也使SCNTR    518晚些时候才开始计数。在接收到所有未被坡坏的帧之后,SCNTR    518仍在工作。此时,第二帧群的第一帧可能到达。如果该帧的LC与其它COMP    ARE    562输入端的LCs不同,COMPARE    562的输出将有效(因为有一个表明LC来自两个不同帧群的LS的非比较)。一反向器(N)566检测到该“非比较”,并将其送到或门598中,接着“或”门598引起FIFO    568登记一项。该概要信息指示该LC与检测到该LC的接收器。“或”门570-576的作用忽略了S-R锁存器528-534引起的延迟,所以引起“非比较”的LC并没有包括在概要信息中。

    “或”门529接收来自“与”门544-550的输入。每个“与”门544-550都检测各自接收器是否在上一个LC(来自同一接收器)已进入FIFO    568之前,接到一个LC。特别指出的是,“与”门544-550检测在S-R锁存器528-534被复位之前何时接收到一新的LC(如线510A-D分别表示的那样)。只有向接收器发送的发送器不遵守初始化时建立的歪斜规则,才会出现这种情况。“或”门592的输出送到“或”门598中,598会使FIFO    568登记一项。该概要信息包含“或”门592的输出。

    在所有上述情况下,每当FIFO    568登记一项时,S-R锁存器528-534就会复位。当LC非比较时,尽管复位线有效,但引起非比较的接收器的S-R锁存器仍被置位。这是因为S-R锁存器的置位的功能覆盖了复位功能。并且每当一个FIFO    568登记一项时,SCNTR    518也被“或”门599与MPX    512的动作复位成零。

    注意,图4中的发送器402-408并不是由一公共时钟同步的。同样接收器502-508彼此不是通过公共时钟同步的。与此相反,在每次建立链路时,发送器与接收器对以异步方式彼此达到同步,就好象它们被链路上唯一载体连接起来一样。此外,接收器502-508本身使用如上所述的帧接收、歪斜规则与LC校验,以保证能识别出同一帧群中的帧。其优点是不再需要同步硬件。

    图6描述了根据本发明实施例的一个歪斜检验/测量过程的流程图。

    当要进行否斜测量时,任何收发机都可向链路上发送歪斜-测试-请求(STR)控制帧602(或一复制的STR控制帧)。复制意谓着,一给定帧(即STR帧)的相同拷贝在2.5字时间发送窗口内在每一载体上发送。歪斜-测试-请求帧包括表明它是一个STR的链路控制字。链路两边的结点可能同时发送歪斜-测试-请求。在这种情况下,高地址成为“主”(即控制歪斜测量过程),而低地址结点成为“从”。如果只有一结点已发送STR帧,那么它就是“主”,并且接收方成为“从”,而不管结点相对地址。

    一且“从”接收单元的任一个接收器收到一个STR帧(并且主从关系已建立),“从”接收单元将其本身置于一、歪斜测量方式(于是,引起其内部逻辑按如下所述方式响应),将其歪斜计数器复位为零,并且将歪斜寄存器594置成一预定初始值(如255)。当然,也可基于一给定系统的实际经验,选择其它初始值。然后,“从”结点发回一复制的歪斜-测试-响应STR控制帧604。该帧通知“主”,“从”已准备好开始歪斜测量过程。

    为了响应接到的STR帧,“主”接收单元也将其本身置于歪斜测量方式,将其歪斜计数器复位成零,用一初始值(如255)装载歪斜寄存器594,并且发送-复制的歪斜-测量-请求(SMR)控制帧606。

    当第一“从”接收器(502-508)接收到第一SMR帧时,该“从”接收单元判断是否所有帧都在歪斜寄存器594指定的歪斜值内到达。如果没有,接收单元的微控制器检验FIFO568中的概要信息,判断哪个(些)帧迟到(即在歪斜寄存器594指定的歪斜值内没有接的到)。检测到该迟到帧的接收器被选通,并且在后续的歪斜测试不再使用。将这些接收器的标识与歪斜寄存器的值存贮在微处理器的局部存贮器中,以备后用。接着,将一新值(如254)装入歪斜寄存器,然后“从”通过链路在阶有载体上(包括那些其接收器已被选通的载体)发送-复制的歪斜-测试-响应(SMR)控制帧。

    歪斜-测量-响应帧对“主”接收单元的影响与歪斜-测量-请求帧对“从”接收单元的影响一样。特别是“主”要判断是否所有帧都在歪斜寄存器594指定的歪值内被收到,选通迟到的接收器,并且为其歪斜寄存器装入一新的歪斜值。当完成以上这些时,“主”通过链路在所有载体上发关一复制的歪斜-测量-请求帧。

    为了响应该歪斜-测量-请求帧,“从”接收单元判断在歪斜寄存器594所指示的新歪斜值内是否所有帧(在那些还未被选通的接收器上收到的)都已到达。如果为否,“从”接收单元的微控制器再检验FIFO    568的概要信息,判断哪个(些)帧迟到。检测到迟到帧的接收器被选通,并且在后续歪斜测试中不再使用。也将选通的接收器的标识存贮在微控制器的局部存贮器中,以备用。接着将一新值(如253)装入歪斜寄存器,然后“从”通过链路在所有载体上(包括其接收器已被选通的载体)上发送歪测-测量-响应控制帧。

    继续重复以上过程(即614)直到已经为链路两边所有的接收器都确定了一个相应的歪斜值(即,直到除了一接收器之外,所有接收器都已被选通,或歪斜寄存器已递减为零)。当“从”已为所有接收器测到该相应的歪斜之后,它就在歪斜-测量-响应帧616中设置一位,表明测量结束。当“主”确定链路双方的歪斜测量结束时,它通过链路发送歪斜-结果-请求(SRR)控制帧622。作为响应,“从”通过链路发回歪斜-结果-响应控制帧(624)(在每个载体上)。这些帧包括已测量的“从”接收器的歪斜值(如载体0=1;载体1=0;载体2=6;载体3=2)。每个歪斜值都表明字发送时间数(如2=2个字发送时间)。应当理解,所有歪斜测量都是相对于最快的载体而言的。所以最快载体(即通过链路第一个到达)的相对歪斜值总是零。在歪斜-结果-响应中返回的歪斜值可能包括一个加到每个测量上的填充值。该填充值可用于补尝随机歪斜(抖动)。

    一旦收到歪斜-结果-响应帧,“主”发送一个建立-收发机一群(ETG)控制帧626。源(主)结点使用该请求引发接收(从)结点的收发机组的响应,并且在“从”设置预定的链路(将被用于建立通讯的载体组)。将该请求作为一复制帧在所有通过歪斜测试(即:有一相应的歪斜值254或低于254)的载体上发送。ETG请求的参数域包含由主接收器确定的最大歪斜值。“主”也可以用与“从”相似的方式(在发送歪斜-结果-响应时)增加-填充值。该值确定“从”发送的任何帧群需要的链路控制字(Link-Contral-Word)到链路控制字的间隔。

    为了响应ETG请求,“从”发送-ETG响应帧628(它在接收到ETG请求的载体上被复制)。“主”结点检验ETG响应,以确保在其上发送ETG请求的每个载体都已接收到ETG响应。如果主节点收到在预定链路所有收发器上的ETG响应,那么就使用ETG帧指定的载体建立链路。否则,就使用载体的子集(由那些可工作载体组成)再试或建立链路。在这种情况下,“主”结点向“从”结点发送其它歪斜-结果-请求,并且“从”结点以先前测量的歪斜值响应。只使用预定链路载体上最大歪斜确定最小帧间隔。

    根据本发明实施例,歪斜测量的优点是,能够确定包括系统(SSKEW)与随机(RSKEW)分量的总的歪斜,从而根据所需可信度可以减小或消除填充值。在这个的实施例中,在给定歪斜值(存在歪斜寄存器594中)下的每个载体的工作状况可以通过多次(如100次)以该歪斜值进行的重复歪斜测试得以校验。载体只要有一次不能通过歪斜测试(即一复制帧没有在测试的歪斜窗口中被接收到),就以为它不在歪斜寄存器指示的测试歪斜窗口内。

    图7描述了在链路接收端看到的歪斜测试/测量过程的概要。一旦接收单元处于测试方式,它就在步骤702测量总线上所有载体的相应歪斜值。只要链路双方已完成测量,就在步骤704通过链路交换测量的最坏情况歪斜值。对于“从”结点,测量到的每个载体的歪斜值是通过链路发送到主结点的。最后,在步骤706,一旦交换完成,接收单元就结束歪斜测试/测量方式,并且等待来自系统或链路的指令。

    图8描述了接收单元使用的接收与校验一帧群的方法的概要。在步骤802接收单元接收帧群中的第一个帧或一些帧。相应的在步骤804,接收单元开始歪斜计数,以测量经过的字时间,并且不断地将已过时间与建立的链路的最大测量歪测值作比较。如果在所有帧到达(或检测到一错误)之前的某任一时刻,已过时间与最坏情况歪斜值(在步骤806检测的)相匹配,那反在步骤808,接收单元复位,以接收一新的帧群(它包括复位歪斜计数器)并报告一错误。

    并行地在步骤810,在帧到达时,对链路控制字进行比较,经保证它们是一致的。如果任一新到达的链路控制字与其它已收到帧的链路控制字(在812检测的)不匹配,在步骤808发一错误信号,接收单元复位,以接的一新的帧群。那些非一比较帧被认为是一新帧群部分,并且接收器就把它们当作新帧群部分对待。

    如果新到达的那些帧已比较完,在步骤814进行一项测,以判断是否帧群中所有帧都已到达。这是一种将接收单元的控制寄存器指示的有效载体与已接收的并适于比较的帧作比较的问题。如果还没有接收到全部帧,在步骤816接收器继续等待其它需要接收的帧,并且继续如上所述的比较和时间测量。如果在最坏情况测量歪斜时间已过之前,所有帧都已到达,链路接收方就发出完成信号并且接收器复位,以接收下一帧群。

    总的来说,根据本发明实施例,歪斜规则如下:

    ·所有收发机必须在2.5字发送时间内通过所有发送帧群的驱动器开始发送链路控制字(LC)。一个字发送时间为发送(发送到链路)一个字的信息(在本发明中为32位数据加上8位编码信息)所需的时间。

    ·在一单一驱动器上背对背(back-to-back)帧的链路控制字的开始-开始间隔可能没有歪斜测试过程中建立的值近。开始-开始帧间隔包含在建立-收发机-帧群请求或歪斜-结果-响应帧中返回的最大歪斜值中。

    如果在一接收器上接收的链路控制字与先前链路控制字的间隔小于上述确定的开始-开始帧间隔,那么如在“或”门592功能中描述的,该帧被忽略。

    ·收发机检验每个帧群的链路控制字是否都是在从链路上第一帧到达开始计算的一预定时间间隔内被接收到的。该时间间隔的长度由歪斜测试确定的最大测量(最坏情况)歪斜值指定,并且可有选择地填充与模型有关的值,该值允许长期抖动。该检验只在那些是预定链路或负的收发机上进行,预定链路由被发送的或被接收和识别的ETG请求帧群定义的。

    如果收到一个具有歪斜错误的帧群,就拒收或忽略该帧群。为了维护,那些歪斜检验失败的收发机被注销。

    本专业人员很明显可做出许多不违背本发明的主题与范围的变化与修改。应能理解,上述的实施例只是一个例子而不是一种限制。

并行/串行总线的帧群发送与接收.pdf_第1页
第1页 / 共34页
并行/串行总线的帧群发送与接收.pdf_第2页
第2页 / 共34页
并行/串行总线的帧群发送与接收.pdf_第3页
第3页 / 共34页
点击查看更多>>
资源描述

《并行/串行总线的帧群发送与接收.pdf》由会员分享,可在线阅读,更多相关《并行/串行总线的帧群发送与接收.pdf(34页珍藏版)》请在专利查询网上搜索。

通过多光纤以串行方式异步并行发送数据块的系统与方法。提供帧群机制能在每根光纤上串行发送相关数据。帧群无顺序号,接收器据各帧到达时间判断帧群部分。一实施例中,并行总线各成员收发机在光纤每端异步地达到同步,故不再需公共时钟。接收器通过校验报文上一歪斜测量为每个导体确定相关歪斜,校验报文是由总线另一方的发送器产生的。总线两端所有导体上歪斜已确定时,通过总线交换该歪斜值,以设置发送器的适当帧间隔。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1