一种自适应多速率的数据发送和接收方法及装置制造方法

文档序号:7983844阅读:498来源:国知局
一种自适应多速率的数据发送和接收方法及装置制造方法
【专利摘要】本发明公开了一种自适应多速率的数据发送和接收方法及装置,该方法包括:发送端获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号;发送端根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度;发送端根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧;发送端将获得的数据帧发送给接收端,用以解决现有技术中存在的SERDES串行传输协议复杂、实现困难、成本高的问题,以及SERDES串行传输的速率相对固定的问题。
【专利说明】一种自适应多速率的数据发送和接收方法及装置
【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种自适应多速率的数据发送和接收方法及
>J-U ρ?α装直。
【背景技术】
[0002]随着时代的发展、科技的进步,通信领域逐渐从窄带向宽带的方向发展,对于通信要求的不断提高导致了对带宽要求的提升,也引起了对数据传输速率的要求越来越高。
[0003]传统的数据传输方式采用的是并行传输,提高数据传输带宽的传统方法是通过提高数据的工作频率和增加数据的位宽来实现的。但这种方法会导致芯片引脚使用数量的成倍增加,芯片间互连线的急剧增加,大量的连线会给PCB (Printed circuit board,印刷电路板)的设计带来很大的困难,导致电路板面积的增加,而这有时又和系统的高密度要求相矛盾;另一方面,大量的连线也会增加系统可能出现问题的概率,降低系统的可靠性及生产的良品率。
[0004]为了提高数据传输带宽,一种改良的方法是使用串行传输,例如通过LVDS(Low-Voltage Differential Signaling,低压差分信号传输)接口、SERDES (SERializer/DESerializer,串化器/并化器,又称并串行与串并行转换器)、USB (Universal SerialBUS,通用串行总线)进行传输等。
[0005]对于LVDS串行传输来说,由于每对LVDS的最大传输带宽是有限的,因此要提升带宽,必然需要提高数据位宽,而提高数据位宽又会面临与传统的并行传输方式相同的问题,因此,目前现有技术中通用的方法是使用SERDES串行化传输,例如,SATA (SerialAdvanced Technology Attachment,串行高级技术附件)、PCIE (Peripheral ComponentInterconnect-Express,快速外设部件互连标准)等。
[0006]SERDES包含接收通道及发送通道两个部分。目前一个SERDES单方向的最大传输带宽远远超过其它串行传输方式的传输带宽,例如,LVDS, LVPECL等(1w-voItagepositive-referenced emitter coupled logic,低电压伪发射极稱合逻辑)。随着技术的发展和时间的推移,单个SERDES的最大传输带宽也在不断地增加。
[0007]但现有技术中通常使用的两种类型SERDES串行传输方式都有各自的缺点:一种类型的SERDES串行传输的协议复杂、实现困难、成本高,因此相对的应用范围就比较窄,例如SATA、PCIE、USB等;另一种类型的SERDES串行传输的协议简单,但传输速率相对固定,灵活性较低,例如,光纤传输方面的CPRI(The Common Public Radio Interface,通用公共无线接口)。

【发明内容】

[0008]本发明实施例提供一种自适应多速率的数据发送和接收方法及装置,用以解决现有技术中存在的SERDES串行传输协议复杂、实现困难、成本高的问题,以及SERDES串行传输的速率相对固定的问题。[0009]本发明实施例提供的具体技术方案如下:
[0010]一种自适应多速率的数据发送方法,包括:
[0011]发送端获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号;
[0012]发送端根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度;
[0013]发送端根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧;
[0014]发送端将获得的数据帧发送给接收端。
[0015]一种自适应多速率的数据接收方法,包括:
[0016]接收端接收到采用上述的方法发送的数据帧后,在解析该数据帧时,直接丢弃空闲字符,从中提取出该数据帧中的用户数据;
[0017]接收端根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
[0018]一种自适应多速率的数据发送装置,包括:
[0019]获取模块,用于获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号;
[0020]确认模块,用于根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度;
[0021]封装模块,用于根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧;
[0022]发送模块,用于将获得的数据帧发送给接收端。
[0023]一种自适应多速率的数据接收装置,包括:
[0024]接收模块,用于接收到上述发送装置发送的数据帧后,在解析该数据帧时,直接丢弃空闲字符,从中提取出该数据帧中的用户数据;
[0025]反馈模块,用于根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
[0026]本发明有益效果如下:
[0027]本发明实施例提供了一种自适应多速率的数据发送方法及装置,发送端可以根据SERDES的工作速率和用户数据的传输速率确定空闲字符的长度,使得发送端发送的数据帧能够达到固定的长度,从而能够满足各种不同的数据传输速率情况下的要求,易于实现,并且适用范围广,生产成本低廉,而且可以显著地减少芯片间或单板间的连线,降低PCB设计的难度,降低电路板的复杂度,提高产品的成品率,降低生产成本。
【专利附图】

【附图说明】
[0028]图1为本发明实施例中自定义的数据帧格式;
[0029]图2为本发明实施例设计的一种自适应多速率的数据发送方法流程图;
[0030]图3为本发明实施例设计的一种自适应多速率的数据接收方法流程图;
[0031]图4为本发明实施例设计的一种自适应多速率的数据发送装置示意图;[0032]图5为本发明实施例设计的一种自适应多速率的数据接收装置示意图;
[0033]图6为本发明实施例设计的一种全双工模式系统示意图;
[0034]图7为本发明实施例中两个全双工模式系统进行数据传输的示意图。
【具体实施方式】
[0035]本发明实施例设计了一种自适应多速率的数据发送和接收方法及装置,其结构简单、易于实现,可以自动地适应多种用户数据的速率和SERDES的工作速率。
[0036]下面结合附图对本发明优选的实施方式进行详细说明。
[0037]本发明实施例设计了一种数据帧格式如图1所示,包括:一个SYNC (帧起始符)和多个SC (状态及控制字)和与SC —一对应的S_DATA (串行数据流)。
[0038]而每个S_DATA包括实际载荷(即用户数据)、自动填充的IDLE(空闲字符)和D_SYN(数据同步指示字符)三个部分。
[0039]本发明实施例中的每个数据帧的长度固定(每个数据帧的数据位宽可以但不限于是16位、32位、64位等),每一个数据的处理占用一个时钟周期的时间(时钟是SERDES的发送或接收时钟)。
[0040]如图1所示,假设一个数据帧的长度为M,相邻2个SC的间隔长度是N,M除N的结果是一个固定的正整数。
[0041]帧格式中的帧起始符、空闲字符和数据同步指示字符各不相同,但都采用8B/10B编码中的K码格式。
[0042]采用数据流格式的数据是一串连续的数据,而采用数据帧格式的数据是指带有数据同步指示信号的数据流。本发明实施例中的发送端可以处理采用数据流格式的用户数据,也可以将该用户数据封装成数据帧,并对采用数据帧格式的数据进行处理。
[0043]本发明设计了一种自适应多速率的数据发送方法,该方法的流程图如图2所示,包括:
[0044]步骤201:发送端获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号。
[0045]上述控制及状态指示信号包括但不限于用户数据空闲信号、数据传输状态信号和用户数据同步指示信号。例如,数据传输状态信号可以包括,数据传输BUSY (忙)信号,用以表示发送端的数据正在传送,而且发送端的SERDES等数据传输设备均处于BUSY的状态。
[0046]具体地,发送端根据发送端的数据传输状态生成与每组用户数据对应的数据传输状态信号和用户数据同步指示信号,根据每组用户数据的长度生成与每组用户数据对应的用户数据空闲信号。
[0047]步骤202:发送端根据当前的用户数据的传输速率和当前的SERDES的工作速率确定每组用户数据对应的空闲字符的长度。
[0048]这样,可以使得该数据帧的长度为预设的固定值,从而实现数据速率和SERDES工作速率的自适应。
[0049]步骤203:发送端根据上述控制及状态指示信号采用预设的数据帧格式将接收到的多组用户数据封装成一个数据帧。
[0050]该封装过程具体包括如下4个步骤:[0051]I)发送端根据与每组用户数据对应的用户数据同步信号生成对应的D_SYN ;
[0052]2)发送端分别将每组用户数据与对应的D_SYN,以及相应的IDLE组装成对应的S_DATA ;
[0053]3)发送端根据每个控制及状态指示信号生成相应的SC ;
[0054]4)发送端将SYNC、多个S_DATA和多个SC —起组装成结构如图1所示的数据帧。
[0055]步骤204:发送端将获得的数据帧发送给接收端。
[0056]具体地,发送端将获得的数据帧进行8B/10B编码和并串转换后通过SERDES中的串行差分引脚发送到接收端。
[0057]另外,在本发明实施例中,在发送端的用户数据传输速率不变时,若SERDES的工作速率升高,发送端则根据设定步长增加IDLE的长度;若SERDES的工作速率降低,发送端则根据设定步长缩短IDLE的长度。
[0058]在发送端的SERDES的工作速率保持不变时,若用户数据的传输速率升高,发送端则根据设定步长缩短IDLE的长度;若用户数据的传输速率降低,发送端则根据设定步长增加将IDLE的长度。
[0059]例如,SERDES的工作速率为3.125Gb/s,用户数据的传输速率为2.5Gb/s时,将一个数据帧的长度M设置为4000word(字),而将IDLE地长度设置为lOOOword。在SEREDS的工作速率仍然为3.125Gb/s,而用户数据的传输速率变为2Gb/s时,将一个数据帧的长度M仍然设置为4000word (字),而将IDLE地长度设置为1440word。
[0060]又例如,在SERDES的工作速率为2.5Gb/s,用户数据的传输速率为2Gb/s时,将一个数据帧的长度M设置为2700word,而将IDLE地长度设置为300word。在SERDES的工作速率变为3.125Gb/s,而用户数据的传输速率仍然为2Gb/s时,将一个数据帧的长度M仍然设置为2700word,而将IDLE地长度设置为1215word。
[0061]这样,本发明实施例中的发送端仅需要修改SERDES的工作速率,将其升高,就能够快速方便的提高芯片间或单板间的数据传输带宽,因此,适用范围广。
[0062]本发明实施例还设计了一种自适应多速率的数据接收方法,该方法的流程图如图3所示,包括:
[0063]步骤301:接收端接收到一组数据后,将该数据经过串并转换和8B/10B解码,恢复成一个数据帧。
[0064]步骤302:接收端对接收到的该数据帧进行检测,确认链路状态是否正常。
[0065]具体地,接收端对接收到的每个数据帧都进行检测,在检测出该数据帧中有SYNC时,确认链路状态正常,进行步骤304,否则,判定链路状态异常,进行步骤303。
[0066]在实际应用中,发送端会在封装每一个数据帧时生成一个K码指示信号,置于每一个SYNC前,用以指示对应的SYNC是K码。而接收端会在通过SERDES接收数据帧时,对应每一个SYNC都分别通过SERDES恢复出一个K码指示信号。这样,在接收端接收到的每一个数据帧的SYNC前会有一个通过接收端的SERDES恢复的K码指示信号,接收端将检测是否存在K码指示信号和是否存在SYNC结合起来,判断是否存在K码形式的SYNC,若检测出存在K码形式的SYNC,则判定能够检测到SYNC,否则,判定检测SYNC出现错误。
[0067]接收端若在数据帧中首次检测到SYNC后,每隔M个时钟周期都能够再次检测到SYNC (参考图1),即能够连续正确地检测到多个SYNC,则判定链路状态正常。在首次检测SYNC和其后的每隔M个时钟周期检测一次SYNC的检测结果中,只要有I次判定检测SYNC出现错误,就判定链路状态异常,需要重新开始检测。
[0068]步骤303:接收端判定当前接收到的数据为非法数据。
[0069]步骤304:接收端在解析该数据帧时,直接丢弃IDLE,从中提取出用户数据。
[0070]用户数据是指将数据帧中的SYNC、SC和D_SYN去除后剩下的数据。状态指示信号包括:数据传输状态信号,用以指示本次数据接收成功,以及表明接收端的数据传输设备(例如,SERDES等)处于空闲状态。
[0071]在实际应用中,接收端在检测到SYNC后,会将该SYNC去除,SYNC通常可以采用8B/10B编码中的K码格式。并且,接收端在检测到SYNC后,每隔N个时钟周期,就提取出一个SC,并将该SC后的采用了 8B/10B编码中的K码格式的IDLE和D_SYN去除,保留用户数据部分。
[0072]步骤305:在解析完该数据帧并提取出所有的用户数据后,接收端根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
[0073]状态指示信号包括:数据传输状态信号,用以指示本次数据接收成功,以及表明接收端的数据传输设备(例如,SERDES等)处于空闲状态。
[0074]本发明实施例设计了一种自适应多速率的数据发送装置,如图4所示,包括:
[0075]获取模块401,用于获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号。
[0076]获取模块401还可具体用于,根据发送端的数据传输状态生成与每组用户数据对应的数据传输状态信号和用户数据同步指示信号,以及根据每组用户数据的长度生成与每组用户数据对应的用户数据空闲信号。
[0077]确认模块402,用于根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度。
[0078]封装模块403,用于根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧。
[0079]封装模块403还可具体用于,根据与每组用户数据对应的用户数据同步信号生成对应的数据同步指示字符,分别将每组用户数据与对应的数据同步指示字符,和相应的空闲字符组装成对应的串行数据流,根据每个控制及状态指示信号生成相应的状态及控制字,将帧起始符、多个串行数据流和多个状态及控制字一起组装成数据帧。
[0080]发送模块404,用于将获得的数据帧发送给接收端;
[0081]发送模块404还可具体用于将获得的数据帧进行8B/10B编码和并串转换后通过SERDES发送给接收端。
[0082]调整模块405,用于在每组用户数据的传输速率不变时,若SERDES的工作速率升高,则根据设定步长增加IDLE的长度,若SERDES的工作速率降低,则根据设定步长缩短IDLE的长度;或者,
[0083]用于在SERDES的工作速率不变时,若每组用户数据的传输速率升高,则根据设定步长缩短IDLE的长度,若每组用户数据的传输速率降低,则根据设定步长增加IDLE的长度。
[0084]本发明实施例还设计了一种自适应多速率的数据接收装置,如图5所示,包括:[0085]接收模块501,用于接收到采用上述发送装置发送的数据帧后,在解析该数据帧时,直接丢弃空闲字符,从中提取出该数据帧中的用户数据。
[0086]接收模块501接收到采用上述发送装置发送的数据帧是可以指,接收到一组数据后,经过串并转换和8B/10B解码后恢复成的数据帧。
[0087]反馈模块502,在解析完该数据帧并提取出该数据帧中所有的用户数据后,用于根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
[0088]检测模块503,用于在接收端接收到该数据帧之后,解析该数据帧之前,若检测到该数据帧中有帧起始符,判定链路状态正常,解析该数据帧;否则,判定链路状态异常,不再解析该数据帧。
[0089]发送装置会在封装每一个数据帧时生成一个K码指示信号,置于每一个SYNC前,用以指示对应的SYNC是K码。而接收装置会在通过SERDES接收数据帧时,对应每一个SYNC都分别通过SERDES恢复出一个K码指示信号。这样,在接收装置接收到的每一个数据帧的SYNC前会有一个通过接收装置的SERDES恢复的K码指示信号,接收装置将检测是否存在K码指示信号和是否存在SYNC结合起来,判断是否存在K码形式的SYNC,若检测出存在K码形式的SYNC,则判定能够检测到SYNC,否则,判定检测SYNC出现错误。
[0090]接收装置若在数据帧中首次检测到SYNC后,每隔M个时钟周期都能够再次检测到SYNC (参考图1),即能够连续正确地检测到多个SYNC,则判定链路状态正常。在首次检测SYNC和其后的每隔M个时钟周期检测一次SYNC的检测结果中,只要有I次判定检测SYNC出现错误,就判定链路状态异常,需要重新开始检测。
[0091]由于无论发送端在数据帧中插入的IDLE长度为多少,接收端都会自动丢弃。因此,本发明实施例中的发送端和接收端传输的有效的用户数据是一致的,数据传输的带宽也是一样的,这样保证了本发明实施例的数据传输的一致性和可靠性。而且,本发明实施例中,无论SERDES工作速率如何改变,发送端和接收端都通过相同的数据帧格式以及固定的数据帧长度处理数据,从而保证速率上的自匹配以及实现用户数据速率和SERDES的工作速率之间的自适应,例如,本发明实施例可以适用于SERDES的工作速率为1.25G/s,2.5G/s或3.125G/s等情况下。
[0092]本发明实施例还设计了一种全双工模式系统,该系统包括本发明实施例中的发送装置和接收装置,如图6所示。本发明实施例设计的全双工模式系统中的发送装置可以将获取的多组用户数据处理成数据帧,并通过SERDES发送给本发明实施例中的接收装置或者另一个全双工模式系统。本发明实施例设计的全双工模式系统中的接收装置可以通过SERDES接收本发明实施例中的发送装置或者另一个全双工模式系统发送的数据帧,处理该数据帧并从中提取出用户数据。本发明实施例中的全双工模式系统可以通过SC 了解对端的状态,并根据本地接收装置对接收到的数据帧的分析结果改善本地的控制流程。
[0093]例如,根据接收到的数据帧中的SC改善本地的发送及状态控制。又例如,本地的发送装置将调整后的状态通过反馈或应答SC传输到对端,令对端根据接收到的反馈或应答SC改善该对端的发送及状态控制。
[0094]两个全双工模式系统之间进行数据传输时,接收到数据帧的全双工模式系统的接收装置能够对接收到的数据帧中的SC进行分析,该全双工模式系统可以根据接收装置的分析结果改善本地的发送及状态控制,并且,还可以通过本地的发送装置反馈或应答SC到发送该数据帧的全双工模式系统,从而实现封闭循环的控制交流,如图7所示。
[0095]本发明实施例提供了一种自适应多速率的数据发送方法及装置,发送端可以根据SERDES的工作速率和用户数据的传输速率确定空闲字符的长度,使得发送端发送的数据帧能够达到固定的长度,从而能够满足各种不同的数据传输速率情况下的要求,易于实现,并且适用范围广,生产成本低廉,而且可以显著地减少芯片间或单板间的连线,降低PCB设计的难度,降低电路板的复杂度,提高产品的成品率,降低生产成本。
[0096]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0097]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0098]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0099]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0100]显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种自适应多速率的数据发送方法,其特征在于,包括: 发送端获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号; 发送端根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度; 发送端根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧; 发送端将获得的数据帧发送给接收端。
2.如权利要求1所述的方法,其特征在于,发送端根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号,包括: 发送端根据发送端的数据传输状态生成与每组用户数据对应的数据传输状态信号和用户数据同步指示信号; 发送端根据每组用户数据的长度生成与每组用户数据对应的用户数据空闲信号。
3.如权利要求1所述的方法,其特征在于,还包括: 发送端在每组用户数据的传输速率不变时,若发送端的SERDES的工作速率升高,则根据设定步长增加所述空闲字符的长度,若发送端的SERDES的工作速率降低,则根据设定步长缩短所述空闲字符的长度;或者, 发送端在发送端的SERDES的工作速率不变时,若每组用户数据的传输速率升高,则根据设定步长缩短所述空闲字符的长度,若每组用户数据的传输速率降低,则根据设定步长增加所述空闲字符的长度。
4.如权利要求2所述的方法,其特征在于,所述发送端根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧,具体包括: 发送端根据与每组用户数据对应的用户数据同步信号生成对应的数据同步指示字符; 发送端分别将每组用户数据与对应的数据同步指示字符,以及相应的空闲字符组装成对应的串行数据流; 发送端根据每个控制及状态指示信号生成相应的状态及控制字; 发送端将帧起始符、多个串行数据流和多个状态及控制字一起组装成数据帧。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述发送端将获得的数据帧发送给接收端,具体包括: 发送端将获得的数据帧进行8B/10B编码和并串转换后通过所述SERDES发送给接收端。
6.一种自适应多速率的数据接收方法,其特征在于,包括: 接收端接收到采用如权利要求1所述的方法发送的数据帧后,在解析所述数据帧时,直接丢弃空闲字符,从中提取出所述数据帧中的用户数据; 接收端根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
7.如权利要求6所述的方法,其特征在于,接收端接收所述数据帧的过程,具体包括: 接收端在接收到一组数据后,经过串并转换和8B/10B解码后恢复成所述数据帧。
8.如权利要求6或7所述的方法,其特征在于,在接收端接收到所述数据帧之后,解析所述数据帧之前,还包括: 接收端若检测到该数据帧中有帧起始符,判定链路状态正常,解析该数据帧;否则,判定链路状态异常,不再解析该数据帧。
9.一种自适应多速率的数据发送装置,其特征在于,包括: 获取模块,用于获取多组用户数据,并根据发送端的数据传输状态和每组用户数据的长度分别生成与每组用户数据对应的控制及状态指示信号; 确认模块,用于根据每组用户数据的传输速率和发送端当前的并串行与串并行转换器SERDES的工作速率分别确定每组用户数据对应的空闲字符的长度; 封装模块,用于根据多组用户数据及与其一一对应的空闲字符的长度,以及相应的各控制及状态指示信号,封装数据帧; 发送模块,用于将获得的数据帧发送给接收端。
10.如权利要求9所述的装置,其特征在于,所述获取模块具体用于, 根据发送端的数据传输状态生成与每组用户数据对应的数据传输状态信号和用户数据同步指示信号,以及根据每组用户数据的长度生成与每组用户数据对应的用户数据空闲信号。
11.如权利要求9所述的装置,其特征在于,还包括调整模块, 用于在每组用户数据的传输速率不变时,若SERDES的工作速率升高,则根据设定步长增加所述空闲字符的长度,若SERDES的工作速率降低,则根据设定步长缩短所述空闲字符的长度;或者, 用于在SERDES的工作速率不变时,若每组用户数据的传输速率升高,则根据设定步长缩短所述空闲字符的长度,若每组用户数据的传输速率降低,则根据设定步长增加所述空闲字符的长度。
12.如权利要求9所述的装置,其特征在于,所述封装模块具体用于, 根据与每组用户数据对应的用户数据同步信号生成对应的数据同步指示字符,分别将每组用户数据与对应的数据同步指示字符,和相应的空闲字符组装成对应的串行数据流,根据每个控制及状态指示信号生成相应的状态及控制字,将帧起始符、多个串行数据流和多个状态及控制字一起组装成数据帧。
13.如权利要求9-12中任一项所述的装置,其特征在于,所述发送模块具体用于, 将获得的数据帧进行8B/10B编码和并串转换后通过所述SERDES发送给接收端。
14.一种自适应多速率的数据接收装置,其特征在于,包括: 接收模块,用于接收到采用如权利要求10所述的装置发送的数据帧后,在解析所述数据帧时,直接丢弃空闲字符,从中提取出所述数据帧中的用户数据; 反馈模块,用于根据当前接收端的数据传输设备状态和数据传输状态生成相应的状态指示信号,并反馈至发送端。
15.如权利要求14所述的装置,其特征在于,所述接收模块具体用于, 在接收到一组数据后,经过串并转换和8B/10B解码后恢复成所述数据帧。
16.如权利要求14或15所述的装置,其特征在于,还包括检测模块, 用于在接收端接收到所述数据帧之后,解析所述数据帧之前,若检测到该数据帧中有帧起始符,判定链路状态 正常,解析该数据帧;否则,判定链路状态异常。
【文档编号】H04L1/00GK103716118SQ201210371580
【公开日】2014年4月9日 申请日期:2012年9月28日 优先权日:2012年9月28日
【发明者】唐良建, 李远深, 雷文明 申请人:京信通信系统(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1