CN111669250A - 数据传输方法、装置及系统 - Google Patents
数据传输方法、装置及系统 Download PDFInfo
- Publication number
- CN111669250A CN111669250A CN201910169228.6A CN201910169228A CN111669250A CN 111669250 A CN111669250 A CN 111669250A CN 201910169228 A CN201910169228 A CN 201910169228A CN 111669250 A CN111669250 A CN 111669250A
- Authority
- CN
- China
- Prior art keywords
- data
- data streams
- fec
- mapping
- granularity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0033—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
- H04L1/0042—Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2792—Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
- H04L1/0003—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate by switching between different modulation schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0036—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
- H04L1/1841—Resequencing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本申请实施例提供一种数据传输方法、装置及系统,应用于通信技术领域,该方法包括:对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,所述y个第一数据流是经过比特复用处理得到的;将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流;将所述z个第三数据流通过输出通道输出;其中,所述y、所述x、所述n和所述z均为正整数,且所述n≥2。本申请实施例能够解决突发错误数据产生较大的扩散,导致数据传输可靠性较低的问题。本申请可以用于以太网的高速接口。
Description
技术领域
本申请属于通信技术领用,特别涉及一种数据传输方法、装置及系统。
背景技术
现有的以太网的高速接口的架构中包括前馈纠错(forward error correction,FEC)层和物理媒介附件(physical medium attachment,PMA)层,FEC层用于对接收的数据进行前馈纠错编码,并传输至PMA层,该PMA层用于对接收的数据进行传输速率转换。
其中,FEC层在进行前馈纠错时,可以执行多种前馈纠错处理,例如,可以执行RS(544,514)前馈纠错(forward error correction,FEC)处理。RS(544,514)指的是按照10比特为一个编码单位进行的编码处理,RS(544,514)中每10比特数据称为一个FEC符号。
PMA层采用比特复用(Bit Mux,也称比特交织)架构,在该Bit Mux架构中执行BitMux处理,该处理包括:将PMA层接收的m个数据流以比特为单位映射得到z个数据流,将得到的z个数据流以比特为单位映射得到不同的n个数据流,该不同的n个数据流通过一一对应的不同的PMA通道输出。
但是,目前发送端设备和接收端设备在进行数据传输的过程中,若数据中携带有突发错误数据(burst error,也称突发误码)时,该突发错误数据会由于Bit Mux处理的执行,产生较大的扩散,导致数据传输可靠性较低。
发明内容
本申请实施例提供了一种数据传输方法、装置及系统,可以解决数据传输可靠性较低的问题。
第一方面,提供一种数据传输方法,应用于发送端设备,所述方法包括:
发送端设备对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,所述y个第一数据流是经过比特复用处理得到的。
发送端设备将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流。在本申请实施例中,以n比特为粒度映射指的是将数据以连续的n比特为单位进行映射。
发送端设备将所述z个第三数据流通过输出通道输出,其中,所述y、所述x、所述n和所述z均为正整数,且所述n≥2。
这样,发送端设备可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
进一步的,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度映射得到z个第三数据流进而输出,其映射粒度相较于Bit Mux架构中的映射粒度大,当第三数据流中在传输过程中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
可选地,每个所述第二数据流中的数据携带有对齐字,上述发送端设备将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流的过程可以包括:
发送端设备将所述x个第二数据流的对齐字移除;
发送端设备将移除对齐字的x个第二数据流以所述n比特为粒度,映射得到z个第三数据流;
发送端设备按照所述x个第二数据流与所述z个第三数据流的映射关系,对所述z个第三数据流中每个第三数据流添加对齐字。
可选地,由于接收端设备接收的数据格式和输入通道的数量可能与发送端设备输出的数据格式和输出通道的数量不相同,因此,为了匹配接收端设备的数据格式和输入通道,发送端设备可以对z个第三数据流进行进一步处理,所述将所述z个第三数据流通过输出通道输出,包括:
发送端设备将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以q比特为粒度,映射得到s个第四数据流,将所述s个第四数据流通过所述输出通道输出;
或者,发送端设备将所述z个第三数据流以n比特为粒度,映射得到s个第四数据流中,将所述s个第四数据流通过所述输出通道输出;
其中,上述所述s为正整数,所述q≥2。
或者,所述将z个第三数据流通过输出通道输出,包括:
发送端设备将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流;
发送端设备将所述x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流;
发送端设备将所述s个第四数据流通过所述输出通道输出,其中,所述s为正整数。
这样,发送端设备还可以匹配接收端设备所支持的数据格式和通道的数量,实现对接收端设备的兼容。
由于发送端设备可以处于不同的应用场景,因此发送端设备的待传输数据流可能经过复杂的传输环境,导致其存在突发错误数据,因此,发送端设备可以对该待传输数据流的传输过程中对其进行纠错处理,以减少突发错误数据。例如,该纠错处理可以为FEC码字纠错处理,也称为RS错误修正(Reed-Solomon error correction),也称FEC恢复(FECrecovery)。
当所述x个第二数据流包括至少一个前馈纠错FEC码字的数据,在所述将所述x个第二数据流的数据以n比特为粒度,映射得到z个第三数据流之前,所述方法还包括:
发送端设备对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
当所述x个第二数据流包括多个FEC码字的数据时,在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,所述方法还包括:
发送端设备对所述x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据;
所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流,包括:发送端设备对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据;将所述纠错后的数据以所述FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
这样,发送端设备通过对x个第二数据流进行FEC码字纠错处理,保证了后续处理中数据的准确性。
可选地,上述发送端设备将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流映射的过程可以有多种实现方式,本申请实施例以以下几种方式为例进行说明。
第一种方式,z=1,所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
发送端设备轮询所述x个第二数据流中的每个第二数据流;
发送端设备将轮询得到的所述每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
第二种方式,z≥2,x≥2,所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
发送端设备依次轮询所述x个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述x个第二数据流的数据完全映射得到z个第三数据流,每次轮询得到所述每个第二数据流中连续的n比特数据;
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
其中,在轮询x个第二数据流时,轮询顺序可以满足以下任一种:
先轮询偶数序列号的第二数据流,后轮询奇数序列号的第二数据流;
先轮询奇数序列号的第二数据流,后轮询偶数序列号的第二数据流;
或者,按照序列号递增或递减的顺序轮询第二数据流。
示例的,当z=2,x=8时,所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
发送端设备依次轮询所述8个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述8个第二数据流的数据完全映射得到2个第三数据流,发送端设备每次轮询得到所述每个第二数据流中连续的n比特数据:
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中;
在一种可选方式中,在轮询8个第二数据流时,可以按照第二数据流的序列号递增的顺序。例如,当8个第二数据流依次具有序列号0-7,在轮询x个第二数据流时,轮询的第二数据流的序列号的排序依次为:0、1、2、3、4、5、6和7,且为了保证对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中,在相邻的两个轮询周期中,同一第二数据流映射到的第三数据流的顺序翻转,其中一个轮询周期为轮询一次x个第二数据流的过程,也即是在一个轮询周期能够获取x个n比特数据。示例的,对于一个第二数据流,在一个轮询周期中,其映射至一个第三数据流,在相邻的另一个轮询周期中,其映射至另一个第三数据流。
在另一种可选方式中,当8个第二数据流依次具有序列号0-7,在轮询x个第二数据流时,轮询的第二数据流的序列号的排序依次为:0、1、3、2、4、5、7、6。同理,在相邻的两个轮询周期中,映射到的第三数据流的顺序翻转。
例如,所述x个第二数据流中每个数据流包括两个FEC码字,z=2,x=8,8个第二数据流被均分为2个数据流组;
所述将所述x个第二数据流以n比特为粒度,映射至z个第三数据流中,包括:
交替执行第一轮询过程和第二轮询过程,直至所述8个第二数据流完全映射至2个第三数据流,所述第一轮询过程和所述第二轮询过程中每次轮询过程包括:
轮询所述8个第二数据流中的每个第二数据流,将轮询得到的属于同一数据流组的所述每个第二数据流中连续的n比特数据映射至同一第三数据流中;
其中,所述第一轮询过程和所述第二轮询过程中,属于同一数据流组的数据映射到的第三数据流不同。
当z=4,x=16时,所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
发送端设备依次轮询所述16个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述16个第二数据流的数据完全映射得到4个第三数据流,每次轮询得到所述每个第二数据流中连续的n比特数据:
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
在一种可选方式中,在轮询16个第二数据流时,可以先轮询两个连续的偶数序列号的第二数据流,后轮询两个连续的奇数序列号的第二数据流。例如,当8个第二数据流依次具有序列号0-15,在轮询16个第二数据流时,轮询的第二数据流的序列号的排序依次为:0、2、1、3、4、6、5、7、8、10、9、11、12、14、13和15,且为了保证对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中,在相邻的两个轮询周期中,映射到的第三数据流的顺序为第三数据流序列号递增或者按照第三数据流的序列号为:2、3、0和1的翻转,其中一个轮询周期为轮询一次x个第二数据流的过程,也即是在一个轮询周期能够获取x个n比特数据。示例的,对于一个第二数据流,在一个轮询周期中,其映射至一个第三数据流,在相邻的另一个轮询周期中,其映射至另一个第三数据流。
在另一种可选方式中,当16个第二数据流依次具有序列号0-15,在轮询16个第二数据流时,轮询的第二数据流的序列号的排序依次为:0、1、2、3、5、4、7、6、8、9、10、11、13、12、15和14,同理,在相邻的两个轮询周期中,映射到的第三数据流的顺序为第三数据流序列号递增或者按照第三数据流的序列号为1、0、3和2的翻转。
例如,所述x个第二数据流中每个数据流包括两个FEC码字,z=4,x=16,所述16个第二数据流被均分为4个第一数据流组,且所述16个第二数据流被均分为4个第二数据流组,每个所述第二数据流组包括2个所述第一数据流组的第二数据流;
所述将所述x个第二数据流以n比特为粒度,映射至z个第三数据流中,包括:
对于每个第二数据流组,交替执行第一轮询过程和第二轮询过程,直至所述第二数据流组中的第二数据流完全映射至1个第三数据流,所述第一轮询过程和所述第二轮询过程中每次轮询过程包括:
轮询所述第二数据流组中的第二数据流中的每个第二数据流,将轮询得到的属于同一第一数据流组的所述每个第二数据流中连续的n比特数据映射至同一第三数据流中;
其中,所述第一轮询过程和所述第二轮询过程中,属于同一第一数据流组的数据映射到的第三数据流不同。
可选地,所述n为一个FEC符号包含的比特的数量。
可选地,由于在实际应用中,发送端设备的输出通道可能存在损坏,一旦使用损坏的输出通道进行数据发送,则可能导致传输数据的缺失,因此,为了保证数据的有效传输,发送端设备可以确定输出的数据流的数量,使得输出的数据流的数量小于或等于可用的输出通道个数,或者,输出的数据流的数量等于预设输出通道个数。这样,可以降低该数据传输方法实际实现时的编码难度,简化数据处理过程,节省处理开销。
进一步地,在数据传输过程中,发送端设备可以根据实际需求选择是否对x个第二数据流的数据进行再编码处理,以满足更多的需求。因此,在所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流中之前,所述方法还包括:
发射端设备对所述x个第二数据流进行内码FEC编码,得到编码后的x个第二数据流;
或者,当每个第二数据流携带有校验位时,发射端设备移除所述x个第二数据流中每个数据的校验位,将移除校验位后的x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流,所述第二FEC编码的编码方式与移除所述校验位之前采用的第一FEC编码的编码方式不同。
其中,所述内码FEC编码的码型和所述第二FEC编码的码型可以为下列码型其中之一:里德-所罗门码RS码、博斯-查德胡里-霍昆格母码BCH码、汉明码、低密度奇偶校验LDPC码、极化码或卷积码。
这样,由于对x个第二数据流进行了不同类型的FEC编码,从而使得该数据传输方法可以适配更多的应用场景,提高了该数据传输方法的通用性,同时,这样还增加了数据的保护的类型,进一步保障了数据的安全。
需要说明的是,上述处理过程中数据流可能存在数据排列上的问题,例如存在数据存储不齐、数据流的乱序和数据流偏移的情况,因此,发送端设备可以对数据流执行对齐处理、去偏移处理和重排序处理中的至少一个,以便保证后续处理过程中数据的有效性。
示例的,在所述得到所述x个第二数据流之后,发送端设备可以对所述x个第二数据流执行对齐处理、去偏移处理和重排序处理中的至少一个。
第二方面,本申请实施例提供一种数据传输方法,应用于接收端设备,所述方法包括:
接收端设备通过输入通道获取z个第三数据流;
接收端设备将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,所述z个第三数据流是以n比特为粒度映射得到的;
接收端设备将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流;其中,所述z,所述n,所述x和所述y均为正整数,且所述n≥2。
可选地,所述每个所述第二数据流中的数据携带有对齐字,所述将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流的过程可以包括:
接收端设备将所述z个第三数据流的对齐字移除;
接收端设备将移除对齐字的z个第三数据流以n比特为粒度,映射得到x个第二数据流;
接收端设备按照所述z个第三数据流与所述x个第二数据流的映射关系,对所述x个第二数据流中每个第二数据流添加对齐字。
可选地,由于上述第一方面中,发送端设备对z个第三数据流进行了进一步处理,相应的,所述通过输入通道获取z个第三数据流,包括:
接收端设备通过所述输入通道接收s个第四数据流,将所述s个第四数据流以q比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流;
或者,接收端设备通过所述输入通道接收s个第四数据流,将所述s个第四数据流以n比特为粒度,映射得到所述z个第三数据流;其中,所述s为正整数,且所述q≥2。
或者,所述通过输入通道获取z个第三数据流,包括:
接收端设备通过所述输入通道接收s个第四数据流;
接收端设备将所述s个第四数据流以比特为粒度进行解复用处理,得到x个第五数据流;
接收端设备将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流,其中,所述s为正整数。
由于接收端设备接收的数据流可能经过复杂的传输环境,导致其存在突发错误数据,因此,接收端设备可以对接收的数据流进行纠错处理,以减少突发错误数据。例如,该纠错处理可以为FEC码字纠错处理,也称为RS错误修正,也称FEC恢复。
当所述x个第二数据流包括至少一个前馈纠错FEC码字的数据时,在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,所述方法还包括:
接收端设备对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
当所述z个第三数据流包括多个FEC码字的数据时,在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,所述方法还包括:
接收端设备对所述x个第二数据流,进行FEC符号为粒度的解映射处理,以FEC码字为单位的数据;
接收端设备所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流,包括:
接收端设备对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据,将所述纠错后的数据以所述FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
这样,接收端设备通过对x个第二数据流进行FEC码字纠错处理,保证了后续处理中数据的准确性。
可选地,上述接收端设备将z个第三数据流以n比特为粒度,映射得到x个第二数据流的方式有多种,本申请实施例以以下几种为例进行说明。
第一种方式,z=1,
所述将z个第三数据流以n比特为粒度,映射得到x个第二数据流,包括:
接收端设备将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流。
第二种方式,z≥2,x≥2,
所述将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,包括:
接收端设备依次轮询所述z个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述z个第三数据流的数据完全映射得到x个第二数据流,每次轮询得到所述每个第三数据流中连续的n比特数据:
对于每个第二数据流,任意相邻2次映射得到数据来自于不同的第三数据流。
其中,对于每个第三数据流,在将任意相邻x次轮询得到的数据映射到不同的x个第二数据流中时,映射顺序满足以下任一种:
先映射偶数序列号的第二数据流,后映射奇数序列号的第二数据流;
先映射奇数序列号的第二数据流,后映射偶数序列号的第二数据流;
或者,按照第二数据流的序列号递增的顺序映射。
由于在第二种情况下,发送端设备具有多种轮询顺序和映射顺序,因此,相应的,接收端设备的映射过程可以包含多种,本申请实施例以以下多种为例进行说明。
示例的,当z=2,x=8时,所述将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,包括:
接收端设备依次轮询所述2个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述2个第三数据流的数据完全映射得到8个第二数据流,每次轮询得到所述每个第三数据流中连续的n比特数据;
对于每个第二数据流,任意相邻2次映射得到数据来自于不同的第三数据流。该映射的过程可以参考上述第一方面z=2,x=8时,将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流的过程。
例如,所述z个第三数据流中每个数据流包括两个FEC码字,z=2,x=8,
所述将z个第三数据流以n比特为粒度,映射至x个第二数据流中,包括:
交替执行第一轮询过程和第二轮询过程,直至2个第三数据流完全映射至x个第二数据流,所述第一轮询过程包括:
轮询所述2个第三数据流中的每个第三数据流,将轮询得到的所述每个第三数据流中4个连续的n比特数据依次分别映射至4个第二数据流中;
所述第二轮询过程包括:
轮询所述2个第三数据流中的每个第三数据流,将轮询得到的所述每个第三数据流中4个连续的n比特数据依次分别映射至另外4个第二数据流中。
示例的,当z=4,x=16时,接收端设备依次轮询4个第三数据流中的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至4个第三数据流完全映射得到16个第二数据流,每次轮询得到每个第三数据流中连续的n比特数据,对于每个第三数据流,任意相邻2次映射得到数据来自于不同的第三数据流。该映射的过程可以参考上述第一方面z=4,x=16时,将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流的过程。
例如,所述z个第三数据流中每个数据流包括两个FEC码字,z=4,x=16,
所述将z个第三数据流以n比特为粒度,映射至x个第二数据流中,包括:
对于每2个第三数据流,交替执行第一轮询过程和第二轮询过程,直至所述2个第三数据流中的第三数据流完全映射至8个第三数据流,所述第一轮询过程包括:
轮询所述2个第三数据流中的每个第三数据流,将轮询得到的所述每个第三数据流中4个连续的n比特数据依次分别映射至4个第二数据流中;
所述第二轮询过程包括:
轮询所述2个第三数据流中的每个第三数据流,将轮询得到的所述每个第三数据流中4个连续的n比特数据依次分别映射至另外4个第二数据流中。
可选地,所述n为一个FEC符号包含的比特的数量。
由于发送端设备对x个第二数据流的数据进行再编码处理,相应的,接收端设备对x个第二数据流进行再编码的解码。在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,所述方法还包括:
接收端设备对所述x个第二数据流进行内码FEC解码,得到解码后的x个第二数据流,移除所述解码处理后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,所述校验位为发送端设备对所述x个第二数据流进行内码FEC编码时添加的;
或者,接收端设备将所述x个第二数据流进行第二FEC解码,得到解码后的x个第二数据流,将所述解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,所述第二FEC解码对应的编码方式与所述第一FEC编码的编码方式不同。
其中,所述内码FEC编码的码型和所述第二FEC编码的码型可以为下列码型其中之一:里德-所罗门码RS码、博斯-查德胡里-霍昆格母码BCH码、汉明码、低密度奇偶校验LDPC码、极化码或卷积码。
需要说明的是,上述处理过程中数据流可能存在数据排列上的问题,例如存在数据存储不齐、数据流的乱序和数据流偏移的情况,因此,接收端设备可以对数据流执行对齐处理、去偏移处理和重排序处理中的至少一个,以便保证后续处理过程中数据的有效性。
示例地,在所述将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流之前,所述方法还包括:接收端设备对所述z个第三数据流执行对齐处理、去偏移处理和重排序处理中的至少一个。
第三方面,提供一种数据传输方法,应用于发送端设备,所述方法包括:
发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,所述z个第三数据流是以n比特为粒度映射得到的;
发送端设备将所述x个第五数据流以q比特为粒度,映射得到s个第四数据流;
发送端设备将所述s个第四数据流分别通过输出通道输出;其中,所述z,所述n、所述x、所述q和所述s均为正整数,所述n≥2,所述q≥2。
可选地,所述n和/或所述q为一个FEC符号包含的比特的数量。
可选地,输出通道个数量小于或等于可用的输出通道个数,或者,输出通道个数量等于预设输出通道个数。
第四方面,提供一种数据传输方法,应用于发送端设备,所述方法包括:
发送端设备对z个第三数据流以n比特为粒度,映射得到x个第五数据流,所述z个第三数据流是以n比特为粒度映射得到的;
发送端设备将所述x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流;
发送端设备将所述s个第四数据流分别通过输出通道输出;其中,所述z、所述n、所述x和所述s均为正整数,且所述n≥2。
可选地,所述n为一个FEC符号包含的比特的数量。
可选地,输出通道个数量小于或等于可用的输出通道个数,或者,输出通道个数量等于预设输出通道个数。
第五方面,提供一种数据传输方法,应用于接收端设备,所述方法包括:
接收端设备通过输入通道接收s个第四数据流;
接收端设备将所述s个第四数据流以q比特为粒度,映射得到x个第二数据流;
接收端设备将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流;
其中,所述s、所述q、所述x、所述n和所述z均为正整数,且所述q≥2,所述n≥2。
第六方面,提供一种数据传输装置,应用于发送端设备,所述装置可以包括至少一个模块,该至少一个模块可以用于实现上述第一方面任一所述数据传输方法。
第七方面,提供一种数据传输装置,应用于接收端设备,所述装置可以包括至少一个模块,该至少一个模块可以用于实现上述第二方面任一所述数据传输方法。
第八方面,提供一种数据传输装置,应用于接收端设备,所述装置可以包括至少一个模块,该至少一个模块可以用于实现上述第三方面任一所述数据传输方法。
第九方面,提供一种数据传输装置,应用于接收端设备,所述装置可以包括至少一个模块,该至少一个模块可以用于实现上述第四方面任一所述数据传输方法。
第十方面,提供一种数据传输装置,应用于接收端设备,所述装置可以包括至少一个模块,该至少一个模块可以用于实现上述第五方面任一所述数据传输方法。
第十一方面,提供一种数据传输装置,包括:
处理器和存储器,所述存储器用于存储计算机执行指令,当所述处理器运行时,所述处理器执行所述存储器中的计算机执行指令,以实现如前述任一所述数据传输方法。
第十二方面,提供一种数据传输系统,包括:
发送端设备和接收端设备,所述发送端设备包括第一方面任一所述数据传输装置,所述接收端设备包括第二方面任一所述数据传输装置。
其中,所述发送端设备和所述接收端设备均包括主芯片;
或者,所述发送端设备和所述接收端设备均包括主芯片、时钟与数据恢复CDR芯片和光模块;
或者,所述发送端设备和所述接收端设备均包括主芯片和光模块;
或者,所述发送端设备包括:主芯片、CDR芯片和光模块,所述接收端设备包括主芯片和光模块;
或者,所述发送端设备包括:主芯片和光模块,所述接收端设备包括主芯片、CDR芯片和光模块。
第十三方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如前述任一所述数据传输方法。
第十四方面,提供一种计算机程序产品,所述计算机程序产品中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如前述任一所述数据传输方法。
第十五方面,提供一种芯片,所述芯片可以包括可编程逻辑电路和/或程序指令,当所述芯片运行时用于实现如前述任一所述数据传输方法。
示例地,该芯片包括处理器和存储器,所述存储器用于存储前述程序指令,当所述处理器运行时,所述处理器执行所述存储器中的程序指令,以实现如前述任一所述数据传输方法。
进一步地,该芯片可以为主芯片或者CDR芯片。
本申请提供的技术方案带来的有益效果至少可以包括:
在本申请实施例中,发送端设备和接收端设备在进行数据传输的过程中,可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
进一步的,本申请实施例提供的数据传输方法,由于发送端设备将x个第二数据流(例如该第二数据流以FEC通道输出)以n(n≥2)比特为粒度映射得到z个第三数据流进而输出(例如该第三数据流以实体通道输出),其映射粒度相较于Bit Mux架构中的映射粒度大,当第三数据流中在传输过程中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
附图说明
图1是本申请实施例提供的一种以太网接口的层级结构示意图。
图2是本申请实施例提供的一种Bit Mux处理的流程示意图。
图3是本申请实施例提供的一种Bit Mux架构示意图。
图4是本申请实施例提供的一种Bit Mux架构示意图。
图5是本申请实施例提供的一种Bit Mux架构示意图。
图6是本申请实施例提供的一种数据传输系统的结构示意图。
图7是本申请实施例提供的一种数据传输方法的流程图。
图8是本申请实施例提供的一种将x个第二数据流以n比特为粒度,映射得到z个第三数据流的方法流程图。
图9是本申请实施例提供的一种将接收到的z个第三数据流以n比特为粒度,映射得到x个第二数据流的方法流程图。
图10是本申请实施例提供的一种数据传输方法的流程图。
图11是本申请实施例提供的一种数据传输方法的流程图。
图12是本申请实施例提供的一种数据传输方法的流程图。
图13是本申请实施例提供的一种数据传输方法的流程图。
图14是本申请实施例提供的一种数据传输方法的流程图。
图15至图20是本申请实施例提供的几种映射过程的示意图。
图21至图23是本申请实施例提供的几种应用环境示意图。
图24是本申请实施例提供的一种以太网接口的层级结构示意图。
图25是本申请实施例提供的一种数据传输方法的流程图。
图26是本申请实施例提供的一种数据传输方法的流程图。
图27是本申请实施例提供的一种以太网接口的层级结构示意图。
图28是本申请实施例提供的一种数据传输方法的流程图。
图29是本申请实施例提供的一种数据传输方法的流程图。
图30至图33是本申请实施例提供的几种数据传输装置的结构示意图。
图34至图37是本申请实施例提供的几种数据传输装置的结构示意图。
图38至图42是本申请实施例提供的几种数据传输系统的结构示意图。
具体实施方式
目前IEEE802.3ck协议中,定义了基于100吉字节(G)电通道的100GE、200GE和400GE等以太网接口标准。例如,基于100交换宽带(Gbps)电通道的芯片到光模块(chip tomodule,C2M)接口的标准,即:100吉字节的附接单元接口(attachment unit interface,AUI)-1、200GAUI-2和400GAUI-4接口标准。
请参考图1,其示出了IEEE802.3ck下IEEE802.3bs以及IEEE802.3cd定义的部分以太网接口的层级结构示意图,该IEEE802.3bs协议定义了200GE和400GE以太网接口标准,该IEEE802.3cd协议定义了50GE、100GE和200GE以太网接口标准。如图1所示,以太网接口的层级结构包括依次排布的介质访问控制(Media Access Control,MAC)层、协调子层(reconciliation Sublayer,RS)、物理编码字层(physical coding sublayer,PCS)、FEC层、PMA层、物理介质相关(physical medium dependent,PMD)层、自动协商(autonegotiation,AN)层以及媒体介质(medium)(例如,同轴线缆、光纤或者双绞线缆等),其中,RS和PCS之间设置有介质独立接口(medium independent interface,MII),部署于不同模块的PMA层(图1中以两个PMA层分别部署于不同模块上为例进行说明)之间设置有附接单元接口(attachment unit interface,AUI),AN和媒体介质之间设置有介质相关接口(MediumDependent Interface,MDI)。其中,前述RS、PCS、FEC层、PMA层、PMD层和AN层属于太网接口的物理层。通常情况下(如50G/100GE场景下),被发送的数据会依次经过该MAC层、RS、PCS、FEC层、PMA层、PMD层、AN层和媒体介质,被接收的数据会依次经过媒体介质、AN层、PMD层、PMA层、FEC层、PCS、RS和MAC层。
可选的,在200GE/400GE场景下,在PMA层和PMD子层之间还可以包括以下层级:端口物理扩展子层(port physical layer extender sublayer,PHY XS)、PCS层以及PMA层。或者,在200GE/400GE场景下,FEC层的功能可以集成在PCS层。
其中,RS用于为MAC层和PCS之间传输的数据提供映射处理,PCS用于对传输的数据按照一定的编码方式进行编码处理或解码处理,FEC层用于实现FEC处理,PMA层用于支持PCS层实现多种物理媒体的使用,PMD子层用于实现PAM子层的数据信号与特定的媒体介质上传输信号之间的相互转换,AN子层用于连接自协商(Auto-Negotiation)设备,该自协商设备可以通过检测物理媒体端所支持的模式,来确定与物理层共同支持的模式,并将为该物理层配置该模式,PHY XS层用于扩展物理层的端口连接。MII可以用于传输不同速率的数据,其可以包括50GMII、100GMII和200G/400GMII等多种类型的数据。
值得说明的是,前述以太网接口的层级结构是以用于进行数据传输的设备所具备的功能进行划分的,在实际实现时,上述层级结构可以根据情况调整,例如层级可以增加、减少或合并,本申请实施例对此不做限定。
其中,PMA层采用Bit Mux架构,在该Bit Mux架构中执行Bit Mux处理,请参考图2,该处理包括:将PMA层获取的m个数据流映射得到x个数据流(该处理也称解复用处理),将得到的x个数据流映射得到y个数据流(该处理也称复用处理),该y个数据流通过一一对应的不同的PMA通道输出。其中,x是m和y的公倍数,且m、x和y均为正整数。为了便于读者理解,图3绘制了m=4,x=4,y=2的Bit Mux架构示意图,这种架构可以称为4:2架构;图4绘制了m=8,x=16,y=4的Bit Mux架构示意图,这种架构可以称为8:4架构。需要说明的是,图3和图4中各个数据流中携带的数据只是示意性说明,本申请实施并不对数据流中的数据内容进行限定。
为了便于读者理解,本申请实施例以图4的Bit Mux架构为例进行说明,图3的BitMux架构的原理可以参考该图4所示的Bit Mux架构,假设PMA层获取的m个数据流分别为数据流D1至D8,其中,数据流D1中的数据包括11.7、2.8、11.6、2.7、11.5和2.6;数据流D2中的数据包括3.6、10.3、3.5、10.2、3.4和10.1;数据流D3中的数据包括4.4、13.8、4.3、13.7、4.2和13.6;数据流D4中的数据包括7.8、14.4、7.7、14.3、7.6、14.2;数据流D5中的数据包括1.7、9.8、1.6、9.7、1.5和9.6;数据流D6中的数据包括5.7、0.3、5.6、0.2、5.5和0.1;数据流D7中的数据包括15.5、6.8、15.4、6.5、15.3和6.6;数据流D8中的数据包括8.10、12.8、8.9、12.7、8.8和12.6。则该m个数据流D1至D8进行BitMux处理的过程为:
该数据流D1至D8以比特(即1比特)为粒度(也称为单位)进行解复用处理,得到解复用后的x个数据流。其中,m个数据流中每个数据流均通过解复用处理得到x个数据流中的两个数据流,则x个数据流为16个数据流,且每个数据流中的数据包括3比特数据,该16个数据流分别包括数据11.7、11.6、11.5;2.8、2.8、2.6;3.6、3.5、3.4;10.3、10.2、10.1;4.4、4.3、4.2;13.8、13.7、13.6;7.8、7.7、7.6;14.4、14.3、14.2;1.7、1.6、1.5;9.8、9.7、9.6;5.7、5.6、5.5;0.3、0.2、0.1;15.5、15.4、15.3;6.8、6.7、6.5;8.10、8.9、8.8;12.8、12.7、12.6。然后,将该16个数据流以比特为粒度进行复用处理,得到的4个数据流(即y=4),分别为数据流W1至W4,该数据流W1的数据包括11.7、3.6、2.8、10.3、11.6、3.5、2.7、10.2、11.5、3.4、2.6和10.1,;数据流W2的数据包括4.4、7.8、13.8、14.4、4.3、7.7、13.7、14.3、4.2、7.6、13.6、14.2;数据流W3的数据包括1.7、5.7、9.8、0.3、1.6、5.6、9.7、0.2、1.5、5.5、9.6和0.1;数据流W4的数据包括15.5、8.10、6.8、12.8、15.4、8.9、6.7、12.7、15.3、8.8、6.6和12.6。
值得说明的是,在该以太网接口标准下,发送端的单通道个数据传输速率通常与接收端的单通道个数据传输速率不同,通过前述PMA层的Bit Mux架构可以实现数据传输速率的转换,从而完成发送端和接收端的数据传输速率的匹配。
由于PMA层的Bit Mux架构中,PMA层是以比特为粒度进行数据的解复用处理和复用处理的,映射粒度较小,在该Bit Mux架构的影响下,目前发送端设备和接收端设备在进行数据传输的过程中,发送端设备的PMA层的输出通道和接收端设备的PMA层的输入通道之间的数据是以比特为单位传输的,也即是发射端和接收端中传输的单位符号为1比特。当发送端设备的PMA层的输出通道和接收端设备的PMA层中传输的数据中携带有突发错误数据时,该突发错误数据会携带在多个传输的单位符号中,引起突发错误数据较大的扩散,导致数据传输可靠性较低。
如5所示,假设m=1,y=4,也即是Bit Mux架构为1:4架构,若接收端设备的PMA层接收的1个数据流携带长度为连续的6比特的突发错误数据(图5中阴影部分的数据),也即是,发送端设备的PMA层的输出通道和接收端设备的PMA层中传输的数据存在6个单位符号的错误,接收端设备的PMA层以比特为粒度进行解复用(Bit De-Mux)处理后,需要经过FEC码字纠错处理,而FEC码字纠错处理是以FEC码字为单位进行纠错的,示例的,在IEEE802.3应用场景下,为了便于理解,假设图5所示的数据流中的数据以FEC符号为单位进行划分,且该FEC符号的长度为10比特(需要说明的是,目前数据流是以比特为单位进行传输的,这里只是为了便于进行说明而进行的假设),则图5所示的以1比特为单位符号传输的数据中的6比特的突发错误数据映射到该4个FEC符号的数据,造成了4个FEC符号错误(FEC符号错误指的是FEC符号的数据中存在错误),引起突发错误数据较大的扩散,引起较多FEC符号错误。由于FEC码字纠错仅能纠正一定数量的FEC符号错误(例如,当采用RS(544,514)对应的FEC码字纠错时,最多可以纠正15个FEC符号错误),因此,一旦由突发错误数据引起的FEC符号错误的数量超出可纠正的FEC符号错误的数量,则会使得该FEC码字纠错处理的失败,降低纠错性能,无法纠正突发错误数据,降低后续数据传输的正确率。
请参考图6,其示出了本申请实施例提供的一种数据传输系统的结构示意图。该数据传输系统包括发送端设备10和接收端设备20,该发送端设备10与该接收端设备20建立有通信连接。该通信连接是基于前述以太网接口标准所建立的通信连接。其中,发送端设备10用于发送数据,接收端设备20用于接收数据;进一步地,发送端设备10可以对需要发送的数据进行编码,相应的,接收端设备20可以对接收的数据进行解码处理。示例的,发送端设备10和接收端设备20均包括主芯片;或者,发送端设备10和接收端设备20均包括主芯片、时钟与数据恢复(clock data recovery,CDR)芯片和光模块;或者,发送端设备10和接收端设备20均包括主芯片和光模块;或者,发送端设备10包括:主芯片、CDR芯片和光模块,接收端设备20包括主芯片和光模块;或者,发送端设备10包括:主芯片和光模块,接收端设备20包括主芯片、CDR芯片和光模块。上述发送端设备和接收端设备均可以应用于(或者说集成在)路由器、交换机或服务器等设备中。
为了方便读者理解,本申请实施例对下文涉及的数据传输方法中的一些定义进行解释:
FEC编码(FEC encode):指的是通过在传输的数据中加入冗余纠错码(该冗余纠错码所在位置称为校验位),使得解码端可以在一定条件下,通过FEC解码对该数据进行恢复,自动纠正传输过程中出现的误码(也即是错误数据)。衡量FEC编码的纠错能力的指标称为“FEC编码增益”,该增益与FEC编码的纠错性能正相关,也即是该增益越大表示该FEC编码的纠错性能越强。
映射处理:指的是将r个数据流按照一定的规则进行处理转换成t个数据流,r可以和t相等,也可以不等。该映射处理可以包括复用处理、解复用处理、交织处理和解交织处理,复用处理中,转化得到的数据流的个数小于转换前的数据流的个数,也即是t<r;解复用处理是复用处理的反过程,也即是转化得到的数据流的个数大于转换前的数据流的个数,也即是t>r;交织处理中,转换得到的至少一个数据流的数据来自转换前的至少两个数据流的数据,也即是通过交织处理,实现了不同数据流的数据的交错,解交织处理是交织处理的反过程,在解交织处理中,转换得到的至少两个数据流的数据来源于至少一个数据流的数据,也即是通过解交织处理,实现了交错的数据流的恢复。
本申请提供了一种数据传输方法,可以在不改变Bit Mux结构的基础上解决突发错误数据存在较大的扩散的问题。该数据传输方法中发送端设备可以先对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,其中,y个第一数据流是经过Bit Mux处理得到的;然后,将x个第二数据流以n比特为粒度,映射得到z个第三数据流;之后,将z个第三数据流通过输出通道(output lane)输出。其中,y,x,n和z均为正整数,且n≥2,
上述输出通道可以是实体通道(也称物理通道、实通道或者接口),也可以是虚拟通道(也称虚通道),本申请实施例对此不做限定。在本申请实施例中,发送端设备和接收端设备在进行数据传输的过程中,可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
进一步的,本申请实施例提供的数据传输方法,由于发送端设备将x个第二数据流(例如该第二数据流以FEC通道输出)以n(n≥2)比特为粒度映射得到z个第三数据流进而输出(例如该第三数据流以实体通道输出),其映射粒度相较于Bit Mux架构中的映射粒度大,当第三数据流中在传输过程中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
其中,由于与发送端设备对应的接收端设备的输入通道(input lane)的数量和接收数据的格式不同,因此,发送端设备最终输出的数据流的内容不同,得到该最终输出的数据流的方式也不同,相应的数据传输方法不同,本申请实施例以以下几种可选的实现方式为例进行说明。
第一种可选的实现方式,请参考图7,其示出了本申请实施例提供的一种数据传输方法的流程图,该数据传输方法可以应用于图6所示的系统,如图7所示,该方法包括:
步骤101、发送端设备获取y个第一数据流,y个第一数据流是经过Bit Mux处理得到的。
发送端设备需要将生成或者接收的待传输数据流传输至接收端设备时,该待传输数据流至少经过Bit Mux处理,示例的,请参考前述图1,发送端设备在发送待传输数据时,该待传输数据流通常经过MAC层、RS、PCS、FEC层后传输至PMA层,然后经过PAM层的Bit Mux处理,以实现发送端设备与接收端设备之间的数据速率匹配。
本申请实施例假设发送端设备获取了y个第一数据流,该y个第一数据流是经过Bit Mux处理得到的,y为正整数。本申请实施例提供的数据传输方法是针对该y个第一数据流执行的。
如前所述,若采用前述图3至图5任一所示的Bit Mux架构,发送端设备获取的y个第一数据流可以是由至少1个数据流经过Bit Mux处理得到的,则该至少1个数据流可以为前述的m个数据流,处理得到的y个第一数据流即前述的y个数据流。该至少1个数据流可以为发送端设备生成或者接收的待传输数据流经过指定处理得到的,也可以与待传输数据流相同,本申请实施例对此不做限定。该指定处理可以为经过MAC层、RS、PCS和FEC层中的至少一种处理。
值得说明的是,待传输数据流通常需要经过FEC层,由FEC层对该待传输数据流进行第一FEC编码(FEC encode),以对待传输数据流进行FEC码字纠错处理,保证该待传输数据流的准确性。示例的,该第一FEC编码可以是RS(544,514)。则相应的,该y个第一数据流也是经过第一FEC编码得到的。
步骤102、发送端设备对获取到的y个第一数据流进行解复用处理,得到x个第二数据流。
如步骤101所述,获取的y个第一数据流是经过Bit Mux处理得到的,如图2至图4所示,在该Bit Mux处理过程中,先将m个数据流以比特为粒度进行解复用处理用得到x个数据流,再将得到的x个数据流以比特为粒度进行复用处理得到y个数据流,本申请实施例提供的数据传输方法可以针对Bit Mux处理过程中复用处理前的数据进行进一步处理,为了获取复用处理前的数据流,发送端设备可以对获取到的y个第一数据流进行以比特为粒度的解复用处理,从而得到x个第二数据流。该x个第二数据流与Bit Mux处理过程中x个数据流的内容通常相同,或者至少数据流的个数相同。本申请实施例提供的数据传输方法还可以针对Bit Mux处理前的数据进行进一步处理,为了获取Bit Mux处理前的数据流,发送端设备可以对获取到的y个第一数据流进行以比特为粒度的解复用处理,在将解复用处理得到的数据进行复用处理,从而得到x个第二数据流。该x个第二数据流与Bit Mux处理前的m个数据流的内容通常相同,或者至少数据流的个数相同,其中,x为正整数。
本申请实施例以针对Bit Mux处理过程中复用处理前的数据进行进一步处理为例进行说明。则,继续以图4所示的例子为例,发送端设备对4个第一数据流W1至W4进行解复用处理,得到16个第二数据流。
步骤103、发送端设备将x个第二数据流以n比特为粒度,映射得到z个第三数据流。
其中,x个第二数据流的每个第二数据流中的数据携带有对齐字(alignmentmarker,AM),该对齐字用于标识该第二数据流所属的输出通道。示例的,该AM包括第二数据流所属的输出通道的标识,例如,该第二数据流通过FEC通道输出,则AM包括该FEC通道的标识。
前述z和n为正整数,且n≥2,示例的,由于在IEEE802.3ck协议的应用场景下,需要执行RS(544,514)FEC处理,因此,当该数据传输方法应用于IEEE802.3ck协议的应用场景下时,n=10,也即是映射的粒度为一个FEC符号的长度。如前所述,在n=10的情况下,发送端设备和接收端设备在进行数据传输的单位符号相当于一个FEC符号。
如图8所示,上述将x个第二数据流以n比特为粒度,映射得到z个第三数据流中的过程可以包括:
步骤1031、发送端设备将x个第二数据流的对齐字移除。
发送端设备可以将x个第二数据流中的每个数据流中的数据携带的对齐字移除,该过程简称为对齐字移除。
步骤1032、发送端设备将移除对齐字的x个第二数据流以n比特为粒度,映射得到z个第三数据流。
示例的,在IEEE802.3ck协议的应用场景下,发送端设备可以将移除对齐字的x个第二数据流以10比特(FEC符号)为粒度映射得到z个第三数据流。
步骤1033、发送端设备按照x个第二数据流与z个第三数据流的映射关系,对z个第三数据流中每个第三数据流添加对齐字。
需要说明的是,上述对齐字的处理过程(步骤1031和步骤1033)也可以替换为:发送端设备直接按照x个第二数据流与z个第三数据流的映射关系,将数据中携带的对齐字进行覆盖,直接采用z个第三数据流中每个第三数据流的新的对齐字覆盖原有的对齐字即可。
还需要说明的是,上述步骤1033实际实现时可以分为对齐字映射和对齐字添加两步骤,其中,对齐字映射过程指的是发送端设备按照x个第二数据流与z个第三数据流的映射关系,确定z个第三数据流的对齐字的过程,对齐字添加过程指的是发送端设备对z个第三数据流中每个第三数据流添加确定的相应的对齐字的过程。
步骤104、发送端设备将z个第三数据流通过输出通道输出。
可选的,上述步骤101至步骤103可以由发送端设备的PAM层,或者在发送端设备中新增的子层执行,示例的,该子层可以称为AUI扩展子层(extender sublayer,XS)。该AUIXS可以位于PMA层和PMA层之间,也可以位于PMA层和PMD层之间。步骤104可以由发送端设备的PMD层执行或者与接收端设备相连的其他接口层执行,例如,由发送端设备的PMA层执行。
当步骤104由PMD层执行时,该输出通道可以指的是PMD输出通道(该PMD输出通道为物理通道),则发送端设备将z个第三数据流与z个PMD输出通道一一对应,将该第三数据流通过对应的PMD输出通道从PMD层(也即是从MDI接口)输出。
步骤105、接收端设备通过输入通道获取z个第三数据流。
上述步骤104中发送端设备将z个第三数据流通过输出通道输出,相应的,该发送端设备对应的接收端设备,将通过输入通道(input lane)接收该z个第三数据流。
可选的,该步骤105可以由接收端设备的PMD层执行,或者与发送端设备相连的其他接口层执行,例如,接收端设备的PMA层执行。
当步骤105由PMD层执行时,该输入通道可以为z个PMD输入通道(该PMD输入通道为物理通道),则接收端设备通过z个PMD输入通道接收与z个PMD输入通道一一对应的z个第三数据流。
由于接收端设备需要的数据为未经过发送端设备处理的待发送数据,也即是需要的数据为未执行上述步骤102至104的数据,因此,该接收端设备对数据的处理过程与发送端设备对数据的处理过程相反,则该下述步骤的实现方式可以参考上述实施例中相应的步骤的实现方式。
步骤106、接收端设备将z个第三数据流以n比特为粒度,映射得到x个第二数据流。
由于发送端设备执行上述步骤103,相应的,接收端设备可以将z个第三数据流以n比特为粒度,映射得到x个第二数据流,如图9所示,该接收端设备将接收到的z个第三数据流以n比特为粒度,映射得到x个第二数据流中的过程可以包括:
步骤1061、接收端设备将z个第三数据流的对齐字移除。
该步骤1061的实现过程可以参考上述步骤1031的实现过程,本申请实施例对此不在赘述。
步骤1062、接收端设备将移除对齐字的z个第三数据流以n比特为粒度,映射得到x个第二数据流。
该步骤1062的实现过程与上述实施例中步骤1032的实现过程相反,因此,该步骤1062的实现过程可以参考上述实施例中步骤1032的实现过程,本申请实施例对此不在赘述。
示例的,在IEEE802.3ck协议的应用场景下,接收端设备可以将移除对齐字的z个第三数据流以10比特(FEC符号)为粒度映射得到x个第二数据流。
步骤1063、接收端设备按照z个第三数据流与x个第二数据流的映射关系,对x个第二数据流中每个第二数据流添加对齐字。
该步骤1063的实现过程可以参考上述实施例中步骤1033的实现过程,本申请实施例对此不在赘述。
步骤107、接收端设备将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流。
由于上述步骤102中发送端设备中的x个第二数据流是对获取到的y个第一数据流进行解复用处理得到的,因此,接收端设备得到y个第一数据流的方法为将x个第二数据流进行解复用处理的反处理,也即是复用处理。该步骤107的实现方法可以参考上述步骤102的实现方式,本申请实施例对此不再赘述。
该第一种可选的实现方式所提供的数据传输方法,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度映射得到z个第三数据流进而输出,因此发送端设备和接收端设备在进行数据传输的过程中,以n比特为传输的单位符号。
第二种可选的实现方式,请参考图10,其示出了本申请实施例提供的另一种数据传输方法的流程图,该数据传输方法可以应用于图6所示的系统,如图10所示,该方法包括:
步骤201、发送端设备获取y个第一数据流,y个第一数据流是经过Bit Mux处理得到的。
步骤202、发送端设备对获取到的y个第一数据流进行解复用处理,得到x个第二数据流。
步骤203、发送端设备将x个第二数据流以n比特为粒度,映射得到z个第三数据流。
步骤204、发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,将该x个第五数据流以q比特为粒度,映射得到s个第四数据流。
由于接收端设备接收的数据格式和输入通道的数量可能与发送端设备输出的数据格式和输出通道的数量不相同,例如,该接收端设备支持接收以q比特为粒度进行处理的s个第四数据流,也即是接收端设备的数据格式是以q比特为粒度划分的格式,输入通道数量为s时,为了匹配接收端设备的数据格式和输入通道,发送端设备可以将z个第三数据流以n比特为粒度,映射得到x个第五数据流,然后将该x个第五数据流以q比特为粒度,映射得到s个第四数据流,使得该z个第三数据流转换为s个第四数据流,以匹配接收端设备所支持的数据格式和通道的数量。其中,q≥2,该x个第五数据流与前述x个第二数据流至少数据的属性相同,例如两者均为PMA层传输的数据,两者均通过PMA通道传输,进一步的,该x个第五数据流与前述x个第二数据流至少数据的内容也相同,此时,该x个第五数据流可以为前述步骤202中的x个第二数据流,则,将z个第三数据流以n比特为粒度,映射得到x个第五数据流中的映射过程,与上述步骤202中的映射过程相反。
需要说明的是,上述步骤203和步骤204可以由同一设备的同一模块执行,也可以由同一设备的不同模块执行。示例的,当发送端设备的芯片仅包括主芯片时,可以由主芯片执行上述步骤203和步骤204以得到s个第四数据流。当发送端设备的芯片包括主芯片和CDR芯片时,可以由主芯片执行上述步骤203,然后该主芯片将步骤203得到的z个第三数据流发送至CDR芯片,由该CDR芯片执行步骤204以得到s个第四数据流。
步骤205、发送端设备将s个第四数据流通过输出通道输出。
该步骤205的实现方式可以参考上述第一种可选的实现方式中步骤104的实现方式,本申请实施例对此不再赘述。
步骤206、接收端设备通过输入通道接收s个第四数据流。
上述步骤205中发送端设备将s个第四数据流通过输出通道输出,相应的,该发送端设备对应的接收端设备,将通过输入通道接收该s个第四数据流。
该步骤206的实现方式可以参考上述第一种可选的实现方式中步骤105的实现方式,本申请实施例对此不再赘述。
步骤207、接收端设备将s个第四数据流以q比特为粒度,映射得到x个第五数据流,将该x个第五数据流以n比特为粒度,映射得到z个第三数据流。
由于发送端设备执行上述步骤204,相应的,接收端设备需要将s个第四数据流转换为z个第三数据流,也即是,执行上述步骤204的反向过程,其实现方式可以参考上述步骤204的实现方式,本申请实施例对此不再赘述。
步骤208、接收端设备将z个第三数据流以n比特为粒度,映射得到x个第二数据流,该z个第三数据流是以n比特为粒度映射得到的。
需要说明的是,上述步骤206和步骤207可以由同一设备的同一模块执行,也可以由同一设备的不同模块执行。示例的,当接收端设备的芯片仅包括主芯片时,可以由主芯片执行上述步骤206和步骤207以得到x个第二数据流。当接收端设备的芯片包括主芯片和CDR芯片时,可以由CDR芯片执行上述步骤206,然后该CDR芯片将步骤206得到的z个第三数据流发送至主芯片,由该主芯片执行步骤207以得到x个第二数据流。
步骤209、接收端设备将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流。
前述步骤201、步骤202和步骤203的实现方式可以依次参考上述第一种可选的实现方式中步骤101、步骤102和步骤103的实现方式,本申请实施例对此不再赘述;该步骤206、步骤208和步骤209的实现方式可以依次参考上述第一种可选的实现方式中步骤105、步骤106和步骤107的实现方式,本申请实施例对此不在赘述。
该第二种可选的实现方式所提供的数据传输方法,由于发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,将该x个第五数据流以q(q≥2)比特为粒度,映射得到s个第四数据流进而输出,因此发送端设备和接收端设备在进行数据传输的过程中,以q比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。进一步的,还可以匹配接收端设备所支持的数据格式和通道的数量,实现对接收端设备的兼容。
第三种可选的实现方式,请参考图11,其示出了本申请实施例提供的一种数据传输方法的流程图,该数据传输方法可以应用于图6所示的系统,如图11所示,该方法包括:
步骤301、发送端设备获取y个第一数据流,y个第一数据流是经过Bit Mux处理得到的。
步骤302、发送端设备对获取到的y个第一数据流进行解复用处理,得到x个第二数据流。
步骤303、发送端设备将x个第二数据流以n比特为粒度,映射得到z个第三数据流。
步骤304、发送端设备将z个第三数据流以n比特为粒度,映射得到s个第四数据流。
由于接收端设备接收的数据格式和输入通道的数量可能与发送端设备输出的数据格式和输出通道的数量不相同,例如,该接收端设备支持接收以n比特为粒度进行处理的s个第四数据流,也即是接收端设备的数据格式是以n比特为粒度划分的格式,输入通道数量为s时,为了匹配接收端设备的数据格式和输入通道,发送端设备可以将z个第三数据流直接映射得到s个第四数据流,使得该z个第三数据流转换为s个第四数据流,以匹配接收端设备所支持的数据格式和通道的数量。其中,n≥2。这样,发送端设备将z个第三数据流转换为s个第四数据流的过程,相较于上述第二种可选的实现方式中步骤304的实现方式,减少了z个第三数据流转换成x个第二数据流的步骤,简化了对数据的处理,节省了处理开销。
需要说明的是,上述步骤303和步骤304可以由同一设备的同一模块执行,也可以由同一设备的不同模块执行。示例的,当发送端设备的芯片仅包括主芯片时,可以由主芯片执行上述步骤303和步骤304以得到s个第四数据流。当发送端设备的芯片包括主芯片和CDR芯片时,可以由主芯片执行上述步骤303,然后该主芯片将步骤303得到的z个第三数据流发送至CDR芯片,由该CDR芯片执行步骤304以得到s个第四数据流。
步骤305、发送端设备将s个第四数据流通过输出通道输出。
步骤306、接收端设备通过输入通道接收s个第四数据流。
步骤307、接收端设备将s个第四数据流以n比特为粒度,映射得到z个第三数据流。
由于发送端设备执行上述步骤304,相应的,接收端设备需要将s个第四数据流转换为z个第三数据流,也即是,执行上述步骤304的反向过程,其实现方式可以参考上述步骤304的实现方式,本申请实施例对此不再赘述。
步骤308、接收端设备将z个第三数据流以n比特为粒度,映射得到x个第二数据流,该z个第三数据流是以n比特为粒度映射得到的。
步骤309、接收端设备将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流。
前述步骤301、步骤302、步骤303、步骤305、步骤306、步骤308和步骤309的实现方式可以依次参考上述第二种可选的实现方式中步骤201、步骤202、步骤203、步骤205、步骤206、步骤208和步骤209的实现方式,本申请实施例对此不再赘述。
该第三种可选的实现方式所提供的数据传输方法,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度,映射得到z个第三数据流,并将z个第三数据流以n比特为粒度,映射得到s个第四数据流,因此发送端设备和接收端设备在进行数据传输的过程中,以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。进一步的,还可以匹配接收端设备所支持的数据格式和通道的数量,实现对接收端设备的兼容。
第四种可选的实现方式,请参考图12,其示出了本申请实施例提供的一种数据传输方法的流程图,该数据传输方法可以应用于图6所示的系统,如图12所示,该方法包括:
步骤401、发送端设备获取y个第一数据流,y个第一数据流是经过Bit Mux处理得到的。
步骤402、发送端设备对获取到的y个第一数据流进行解复用处理,得到x个第二数据流。
步骤403、发送端设备将x个第二数据流以n比特为粒度,映射得到z个第三数据流。
步骤404、发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,将该x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流。
由于接收端设备接收的数据格式和输入通道的数量可能与发送端设备输出的数据格式和输出通道的数量不相同,例如,该接收端设备支持接收以比特为粒度进行处理的s个第四数据流,也即是接收端设备的数据格式是以比特为粒度划分的格式,输入通道数量为s时,为了匹配接收端设备的数据格式和输入通道,发送端设备可以将z个第三数据流以n比特为粒度,映射得到x个第五数据流,然后将该x个第五数据流以比特为粒度,映射得到s个第四数据流,使得该z个第三数据流转换为s个第四数据流,以匹配接收端设备所支持的数据格式和通道的数量。其中,q≥2,该x个第五数据流与前述x个第二数据流至少数据的属性相同,例如两者均为PMA层传输的数据,两者均通过PMA通道传输,进一步的,该x个第五数据流与前述x个第二数据流至少数据的内容也相同,此时,可以为步骤402中的x个第二数据流,则,将z个第三数据流以n比特为粒度,映射得到x个第五数据流中的映射过程,与上述步骤402中的映射过程相反。
步骤403和步骤404可以由同一设备的同一模块执行,也可以由同一设备的不同模块执行。示例的,当发送端设备的芯片仅包括主芯片时,可以由主芯片执行上述步骤403和步骤404以得到s个第四数据流。当发送端设备包括主芯片和CDR芯片时,可以由主芯片执行上述步骤403,然后该主芯片将步骤403得到的z个第三数据流发送至CDR芯片,由该CDR芯片执行步骤404以得到s个第四数据流。
步骤405、发送端设备将s个第四数据流通过输出通道输出。
步骤406、接收端设备通过输入通道接收s个第四数据流。
步骤407、接收端设备将s个第四数据流以比特为粒度进行解复用处理,得到x个第五数据流,将该x个第五数据流以n比特为粒度,映射得到z个第三数据流。
由于发送端设备执行上述步骤404,相应的,接收端设备需要将s个第四数据流转换为z个第三数据流,也即是,执行上述步骤404的反向过程,其实现过程可以参考上述步骤404,本申请实施例对此不再赘述。
步骤408、接收端设备将z个第三数据流以n比特为粒度,映射得到x个第二数据流,该z个第三数据流是以n比特为粒度映射得到的。
步骤409、接收端设备将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流。
前述步骤401、步骤402、步骤403、步骤405、步骤406、步骤408和步骤409的实现方式可以依次参考上述第二种可选的实现方式中步骤201、步骤202、步骤203、步骤205、步骤206、步骤208和步骤209的实现方式,本申请实施例对此不再赘述。
该第四种可选的实现方式所提供的数据传输方法,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度,映射得到z个第三数据流,由于发送端设备将z个第三数据流以比特为粒度,映射得到s个第四数据流进而输出,还可以匹配接收端设备(如现有标准的接收端设备)所支持的数据格式和通道的数量,实现对接收端设备的兼容。
值得说明的是,前述四种可选的实现方式可以根据实际情况进行结合和调整,示例的,在执行步骤101至103之后,发送端设备可以基于确定的接收端设备所支持的数据格式和/或通道数量,选择执行步骤104、204、304或404以及相应的后续过程。这样发送端设备可以支持多种发送模式,每个模式可以对应一种前述的可选的实现方式,发送端设备在确定了接收端设备所支持的数据格式和/或通道数量后,可以调整至相应的模式,以匹配接收端设备接收端设备所支持的数据格式和/或通道数量,从而提高数据传输的灵活性。
值得说明的是,前述的四种可选的实现方式中,由于对待传输数据进行了n比特为粒度的映射处理后输出,产生了新的传输通道(该传输通道可以为实体通道也可以为虚拟通道),导致该待传输的数据的输出通道和数据格式等与接收端设备接收的数据格式和/或输入通道的数量可能不相同,则在数据流传输过程中,为了保证前述发送端设备的数据可以有效的发送至接收端设备,一些其他传输设备也存在相应的改进,例如,该其他传输设备可以为前述发送端设备的中继设备,其相对于前述发送端设备为接收端设备,其相对于前述接收端设备为发送端设备,后续第五种和第六种可选的实现方式是假设该其他传输设备为发送端设备为例进行说明的,则本申请实施例还提供以下两种数据传输方法,包括:
第五种可选的实现方式,假设接收端设备支持接收的数据为以q比特为粒度进行处理的s个第四数据流,其中,s为正整数,q≥2,也即是接收端设备的数据格式是以q比特为粒度划分的格式,输入通道数量为s。请参考图13,其示出了本申请实施例提供的一种数据传输方法的流程图,如图13所示,该方法包括:
步骤501、发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,z个第三数据流是以n比特为粒度映射得到的。
其中,z、n和x均为正整数,且n≥2。该z个第三数据流可以是该发送端设备生成的,也可以是接收到的其他设备发送的数据,本申请实施例对此不做限定。
步骤502、发送端设备将x个第五数据流以q比特为粒度,映射得到s个第四数据流。
步骤503、发送端设备将s个第四数据流分别通过输出通道输出。
该步骤501和步骤502的实现方式可以参考上述第二种可选的实现方式中步骤204的实现方式,该步骤503的实现方式可以参考上述第二种可选的实现方式中步骤205的实现方式,本申请实施例对此不再赘述。
步骤504、接收端设备通过输入通道接收s个第四数据流。
步骤505、接收端设备将s个第四数据流以q比特为粒度,映射得到x个第二数据流。
步骤506、接收端设备将x个第二数据流以n比特为粒度,映射得到z个第三数据流。
其中,s、q、x、n和z均为正整数,且q≥2,n≥2。
该步骤501和步骤502的实现方式可以参考上述第二种可选的实现方式中步骤204的实现方式,该步骤503和步骤504的实现方式可以分别参考上述第二种可选的实现方式中步骤205和步骤206的实现方式,该步骤505和步骤506的实现方式可以参考上述第二种可选的实现方式中步骤207。本申请实施例对此不再赘述。
该第五种可选的实现方式所提供的数据传输方法,由于发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,因此其可以支持n比特为粒度的数据处理,且该发送端设备可以将x个第五数据流以q比特为粒度,映射得到s个第四数据流进而输出,可以匹配接收端设备所支持的数据格式和通道的数量,实现对接收端设备的兼容。值得说明的是,n=q=10时,发送端设备和接收端设备在进行数据传输的单位符号相当于一个FEC符号。
第六种可选的实现方式,假设接收端设备支持接收的数据为以比特为粒度进行处理的s个第四数据流,其中,s为正整数,也即是接收端设备的数据格式是以比特为粒度划分的格式,输入通道数量为s。请参考图14,其示出了本申请实施例提供的一种数据传输方法的流程图,如图14所示,该方法包括:
步骤601、发送端设备对z个第三数据流以n比特为粒度,映射得到x个第五数据流,z个第三数据流是以n比特为粒度映射得到的。
其中,z和w均为正整数,且n≥2。该z个第三数据流可以是该发送端设备生成的,也可以是接收到的其他设备发送的数据,本申请实施例对此不做限定。z个第三数据流是以n比特为粒度映射得到的,避免了当z个第三数据流之前的数据流存在突发错误数据时,z个第三数据流将该突发错误数据的进一步扩散。
步骤602、发送端设备将x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流。
步骤603、发送端设备将s个第四数据流通过输出通道输出。
该步骤601和步骤602的实现方式可以参考上述第四种可选的实现方式中步骤404的实现方式,该步骤603的实现方式可以参考上述第四种可选的实现方式中步骤405的实现方式,本申请实施例对此不再赘述。
需要说明的是,接收端设备执行的动作可以参考传统的接收端设备的动作,本申请实施例对此不再赘述。
该第六种可选的实现方式所提供的数据传输方法,由于发送端设备将z个第三数据流以n比特为粒度,映射得到x个第五数据流,因此其可以支持n比特为粒度的数据处理,且该发送端设备可以将x个第五数据流以比特为粒度,映射得到s个第四数据流进而输出,可以匹配接收端设备所支持的数据格式和通道的数量,实现对接收端设备的兼容。
在前述步骤501和步骤601中的x个第五数据流与前述x个第二数据流至少数据的属性相同,例如两者均为PMA层传输的数据,两者均通过PMA通道传输,或者,两者均通过FEC通道传输,进一步的,该x个第五数据流与前述x个第二数据流至少数据的内容也相同,此时,该x个第五数据流可以为前述步骤202中的x个第二数据流。
值得说明的是,上述六种可选的实现方式中,n和/或q可以为一个FEC符号包含的比特的数量,则该n和q的取值可以根据当前发送端设备或者接收端设备对数据进行的FEC编码的编码方式确定。示例的,假设发送端设备对数据进行的FEC编码的编码方式为RS(544,514),则该n=10,这样,当上述五种可选的实现方式中n=10,则上述的五种数据传输方法可以是兼容IEEE802.3ck的应用场景。
需要说明的是,前述多种可选的实现方式中,各个数据流在传输过程中还可以进一步进行其他处理。
示例的,由于发送端设备可以处于不同的应用场景,因此发送端设备的待传输数据流可能经过复杂的传输环境,导致其存在突发错误数据,因此,发送端设备可以在该待传输数据流的传输过程中对其进行纠错处理,以减少突发错误数据。例如,该纠错处理可以为FEC码字纠错处理,也称为RS错误修正(Reed-Solomon error correction),也称FEC恢复(FEC recovery)。
值得说明的是,当待传输数据流为发送端设备生成的数据流时,该待传输数据流在发送端设备中各层级之间传输(例如在各模块的不同层级之间传输,如该发送端设备包括主芯片、CDR芯片和光模块,则该传输的数据流在主芯片、CDR芯片和光模块之间传输)可能会产生突发错误数据,因此,该发送端设备需要对待传输数据流进行纠错处理。示例的,当发送端设备包括主芯片和光模块(光模块中集成有CDR芯片),由于主芯片中的待传输的数据需要经过AUI接口传输至光模块中,从而经过光模块输出,而待传输的数据经过AUI接口向光模块传输的过程中,可能会产生较多的突发错误,因此,光模块在接收到主芯片传输的待传输的数据时,需要对该待传输的数据经过FEC码字纠错处理,从而纠正待传输的数据经过AUI接口引入的突发错误数据,保证待传输数据的准确率。需要说明的是,该纠错处理通常为光模块中的CDR芯片执行,这样,使得在具有CDR芯片的应用场景中(简称CDR场景)使用该数据传输方法,支持了FEC码字纠错处理(也即是是支持FEC算法),以实现CDR场景下,以太网传输过程中的FEC中继。
但是,实际应用中,当发送端设备的芯片仅包括主芯片时,由于该待传输数据流在发送端设备的一个模块的各层级之间传输时通常不会产生突发错误数据,因此该突发错误数据的产生几率较小,此时,该发送端设备可以不执行纠错处理,因此,该纠错处理为可选步骤。
当待传输数据流为发送端设备中各个模块需要中转的数据流(也即是待传输数据流是跨模块传输的数据流),或者发送端设备为中继设备(也即是待传输数据流是跨设备传输的数据流)时,由于该数据流在经过跨模块或者跨设备传输时可能会产生较多的突发错误,因此,该发送端设备需要将接收到的数据流进行纠错处理,从而保证传输数据的准确率。示例的,当发送端设备通过光模块接收到其他设备的主芯片发送的待传输数据流,由于该待传输数据流在经过主芯片输出时会经过PMD层,该PMD层容易在数据流中引入突发错误数据,因此,接收到的该待传输数据流需要经过纠错处理,从而纠正PMD层引起的突发错误数据。示例的,当发送端设备通过光模块向其他设备发送的待传输数据流,由于该待传输数据流在经过主芯片输出时会经过AUI接口,该AUI接口容易在数据流中引入突发错误数据,因此,光模块对从主芯片接收到的该待传输数据流需要经过纠错处理,从而纠正AUI层引入的突发错误数据。这样,由于在主芯片和CDR芯片中增加了FEC码字纠错处理的功能,且该FEC码字纠错处理在进行纠正突发错误数据的同时可以记录该突发错误数据,使得主芯片将待传输数据传输至光模块(指的是芯片到光模块(chip to module,C2M)),或者主芯片设备将待传输数据传输至主芯片(指的是芯片到芯片(chip to chip,C2M))时,可以通过该FEC码字纠错处理对突发错误数据进行监控和定位,
在本申请实施例中,假设在获取了x个第二数据流后,对该x个第二数据流进行了FEC码字纠错处理,也即是本申请实施例中可以在上述步骤103、步骤203、步骤303和步骤403之前,执行FEC码字纠错处理,其中,该x个第二数据流中每个第二数据流可以包括一个FEC码字部分或全部的数据。需要说明的是,在获取了x个第五数据流后(也即是步骤501或601之后),也可以对该x个第五数据流进行FEC码字纠错处理,该纠错过程可以参考对x个第二数据流的纠错过程。当发送端设备对x个第二数据流进行FEC码字纠错处理时,由于一次FEC码字纠错处理是针对属于同一码字的数据进行的,因此,在x个第二数据流包括一个FEC码字的情况下和包括多个FEC码字的情况下,发送端设备对x个第二数据流进行FEC码字纠错处理的过程不同。本申请实施例以以下三种情况为例进行说明:
第一种情况,x个第二数据流仅包括一个FEC码字的数据。
在这种情况下,发送端设备可以直接对该x个第二数据流的数据进行FEC码字纠错处理,得到纠错后的x个第二数据流。该FEC码字纠错处理过程包括:发送端设备以FEC码字为单位对该x个第二数据流中的每个码字的数据进行纠错处理,从而得到纠错后的x个第二数据流。示例的,在100GE中,一个第二数据流包括一个码字码字的数据,可以以FEC码字为单位对二数据流进行纠错处理。
第二种情况,x个第二数据流中每个第二数据流包括多个FEC码字的数据。
当x个第二数据流中的每个第二数据流包括多个FEC码字的数据时,该x个第二数据流通常是针对码字进行前述某一数据处理得到的,则在对该x个第二数据流进行FEC码字纠错处理时,需要将包括多个FEC码字的x个第二数据流进行上述某一数据处理的反处理,从而将属于不同码字的第二数据流的数据进行分离。
上述某一数据处理可以是以FEC符号为粒度进行的映射处理,示例的,该映射处理可以为码字交织处理。例如,假设1个码字的数据内容为:S11、S12和S13,另一个码字的数据内容为S21、S22和S23,其中,S11、S12、S13、S21、S22和S23分别表示至少一个FEC符号的数据内容,则该1个码字的数据进行码字交织处理得到的1个第二数据流的数据包括S11、S21、S12、S22、S13和S23。则,对该FEC码字纠错处理的过程通常包括:
步骤A1、对x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据。
前述解映射处理即为映射处理的反处理,示例的,当映射处理为码字交织处理时,解映射处理为解码字交织处理。
仍然以前述第一个示例为例,对第二数据流的数据进行解码字交织处理,得到以FEC码字为单位的数据为:S11、S12、S13、S21、S22和S23,其中,S11、S12和S13组成一个码字,S21、S22和S23组成一个码字。
步骤A2、对以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据。
发送端设备对以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的多个FEC码字的数据。其中,该FEC码字纠错处理与上述第一种情况下的FEC码字纠错处理相同,本申请实施例对此不在赘述。
步骤A3、将纠错后的数据以FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
将纠错后的数据以FEC符号为粒度进行映射处理后,得到的纠错后的x个第二数据流与步骤A1中的格式相同,保证了对x个第二数据流进行FEC码字纠错处理前后,x个第二数据流的数据格式不会产生改变。仍然以前述第一种可选的方式中的例子为例,对纠错后的数据为:S11、S12、S13、S21、S22和S23进行码字交织处理得到1个第二数据流:S11、S21、S12、S22、S13和S23。
需要说明的是,前述步骤A1至A3中的例子,只是以x个第二数据流进行码字交织处理所采用的每个FEC码字划分为3部分数据为例进行说明的,实际实现时,每个FEC码字还可以划分为多个数据,例如,在RS(544,514)场景下,每个FEC码字可以划分为544个部分的数据,每部分的数据为1个FEC符号。
本申请实施例在实际应用时,根据不同的应用场景,发送端设备还可以执行其他过程,例如,发送端设备可以在x个第二数据流中每个第二数据流包括多个FEC码字的情况下,仅执行步骤A1和A3,在一种可选地示例中,前述步骤A3中,将纠错后的数据以FEC符号为粒度进行映射处理,不进行交织处理,这样,在保证数据传输正确性的同时可以减少数据处理过程,减少码字交织过程,加快数据处理速度,节省处理开销。
又例如,发送端设备还可以不进行FEC码字纠错处理,这样可以在一定情况下减少数据处理过程,加快数据处理速度,节省处理开销。
第三种情况,x个第二数据流包括多个码字的数据,且每个第二数据流仅包括一个FEC码字的数据。
当x个第二数据流包括多个FEC码字的数据时,该x个第二数据流可以包括不同的码字的数据,且每个第二数据流仅包括一个FEC码字的数据。继续以上述第二种情况下的第一个示例为例,则,1个第二数据流的数据包括S11、S12和S13。此时,发送端设备仅需执行步骤A2即可完成对该x个第二数据流的FEC码字纠错处理。
相应的,由于接收端设备接收的数据流通常来自于发送端设备,该数据流通过跨设备或者跨模块传输可能会产生较多的错误,因此,该接收端设备也可以对接收到的数据流进行纠错处理,从而保证后续数据的准确率。则,在上述步骤107、步骤209、步骤309和步骤409之前,接收端设备可以对x个第二数据流进行FEC码字纠错处理,该FEC码字纠错处理与前述原理相同,由于一次FEC码字纠错处理是针对属于同一码字的数据进行的,因此,在x个第二数据流包括一个FEC码字的情况下和包括多个FEC码字的情况下,接收端设备对x个第二数据流进行FEC码字纠错处理的过程不同。对于x个第五数据流的处理原理相同,本申请实施例不在赘述。
则,该接收端设备对x个第二数据流进行FEC码字纠错处理的过程包括:当x个第二数据流仅包括一个FEC码字的数据时,接收端设备可以直接对该x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流;当x个第二数据流中每个第二数据流包括多个FEC码字的数据时,接收端设备可以先对该x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据,然后对以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据流,之后将纠错后的数据以FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。当x个第二数据流包括多个FEC码字的数据,且每个第二数据流仅包括一个FEC码字的数据时,接收端设备也可以直接对该x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。这样,接收端设备通过对x个第二数据流进行FEC码字纠错处理,保证了后续处理中数据的准确性。
上述接收端设备在x个第二数据流包括一个FEC码字的情况下和包括多个FEC码字的情况下,进行的FEC码字纠错处理的过程与前述发送端设备对x个第二数据流进行FEC码字纠错处理的过程相同,该接收端设备进行的FEC码字纠错处理的实现方式可以参考前述发送端设备进行的FEC码字纠错处理的实现方式,本申请实施例对此不在赘述。
进一步地,由于在步骤102、步骤202、步骤302和步骤402等步骤中,得到的x个第二数据流可能存在数据排列上的问题,例如存在数据存储不齐、数据流的乱序和数据流偏移的情况,因此,在步骤102、步骤202、步骤302和步骤402之后,发送端设备可以对x个第二数据流进行预处理,以便保证后续处理过程中数据的有效性。其中,预处理可以为下列处理方式中至少一种:对齐(也称对齐锁定,alignment lock)、去偏移(deskew)和重排序(lanereorder)。
示例的,在前述步骤102、步骤202、步骤302和步骤402的解复用得到的x个第二数据流的过程中,该x个第二数据流中的数据可能产生数据存储不齐的情况,进程在对不对齐的数据进行载入(也称读取)和处理时可能会引发进程错误,因此,发送端设备将x个第二数据流进行数据对齐锁定,以保证数据可以顺利载入并传输。实际实现时,可以以FEC符号为粒度对x个第二数据流进行对齐,需要说明的是,一个FEC符号的长度为固定值,示例的,在IEEE802.3ck标准的应用场景中,该FEC符号的长度为10比特。
需要说明的是,y个第一数据流是经过Bit Mux处理得到的,在该Bit Mux处理过程中,可能会引入数据流的乱序和偏移,而由y个第一数据流经过映射得到的x个第二数据流也可能存在数据流的乱序和偏移,因此,发送端设备也可以将x个第二数据流进行数据的去偏移和重排序,以得到正确的x个第二数据流的数据。示例的,上述对齐、去偏移和重排序可以是将数据按照n比特为粒度进行的。
相应的,由于接收端设备的接收的数据流可能经过复杂的传输环境,使得该数据流中存在例如数据流传输不齐、数据流乱序和数据偏移等错误,因此,在步骤105、步骤206、步骤306和步骤406之后,接收端设备可以对接收的数据流进行预处理,以便保证后续处理过程中数据的有效性。该预处理的实现过程与上述发送端设备对x个第二数据流进行预处理的实现过程相同,本申请实施例对此不再赘述。其中,在步骤105之后,接收端设备接收的数据为y个第一数据流,则接收端设备对y个第一数据里进行预处理;在步骤步骤206、步骤306和步骤406之后,接收端设备接收的数据为s个第四数据流,则接收端设备对s个第四数据流进行预处理。
值得说明的是,在数据传输的其他过程中,也可能存在数据流的数据排列上的问题,发送端设备和接收端设备仍然可以对获取的数据流执行前述预处理过程,该预处理过程可以参考前述对x个第二数据流进行预处理的过程。例如,在上述步骤106中,由于z个第三数据流中的数据为跨设备传输至接收端设备的,则该z个第三数据流的数据可能存在数据存储不齐、数据流的乱序和数据流偏移的情况,因此,在执行步骤106之前,可以先对该z个第三数据流执行对齐处理、去偏移处理和/或重排序处理,以得到正确的z个第三数据流,从而保证后续处理中数据的有效性。
进一步地,在数据传输过程中,发送端设备可以根据实际需求选择是否对x个第二数据流的数据进行再编码处理,以满足更多的需求。则在步骤103、步骤203、步骤303和步骤403之前,发送端设备可以对x个第二数据流的数据进行再编码。由于发送端设备对x个第二数据流的数据进行再编码的方式有多种,本申请实施例以以下两种为例进行说明。
第一种可选的方式,发送端设备对x个第二数据流进行内码FEC编码(inner FECencode),得到编码后的x个第二数据流。
如步骤101、步骤201、步骤301和步骤401所述,x个第二数据流通常已经经过了第一FEC编码,发送端设备对x个第二数据流进行内码FEC编码,得到的编码后的x个第二数据流实际上经过了两次FEC编码,其中第一FEC编码相对于该内码FEC编码可以称为外码FEC编码,该两次编码可以称为级联编码,则编码后的x个第二数据流可以称为级联编码数据。其中,内码FEC编码使得编码后的编码数据携带有一定长度的校验位,该级联编码指的是以码字为粒度进行的再编码。
示例的,如前所述第一FEC编码为RS(544,514),则发送端设备对x个第二数据流进行内码FEC编码后生成的级联编码可以称为与RS(544,514)级联的FEC编码。
由于发送端设备对x个第二数据流进行了级联编码,这样,使得该发送端设备的以太网接口在数据传输过程中支持基于RS(544,514)为外码编码的级联FEC编码算法(也称级联码)的扩展,从而使得该数据传输方法可以适配更多的应用场景,提高了该数据传输方法的通用性。进一步的,由于对x个第二数据流进行了多次编码,提高了数据的保护级别,进一步保障了数据传输的可靠性。
其中,该内码FEC编码的码型可以为下列码型其中之一:里德-所罗门码(Reed-Solomon,RS)码、博斯-查德胡里-霍昆格母码(Bose–Chaudhuri–Hocquenghem,BCH)码、汉明(Hamming)码、低密度奇偶校验(low density parity check,LDPC)码、极化(polar)码或卷积码。
第二种可选的方式,发送端设备对x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流,其中,该第二FEC编码的编码方式与上述步骤101提及的第一FEC编码的编码方式不同,该第二FEC编码的码字可以为下列码字其中之一:RS码、BCH码、Hamming码、LDPC码、polar码或卷积码。
可选的,该第二FEC编码可以是增强FEC编码(stronger FEC encode),该增强FEC编码指的是对数据的保护级别比上述第一FEC编码对数据的保护级别高的编码方式。这样,使得该发送端设备的以太网接口在数据传输过程中可以支持增强FEC编码的扩展,并且发送端设备对x个第二数据流进行第二FEC编码可以提高数据的保护级别,进一步保障数据传输的可靠性。
上述发送端设备对x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流的过程可以包括:
步骤B1、移除x个第二数据流中每个第二数据流的校验位。
步骤B2、将移除校验位后的x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流。
发送端设备对移除校验位后的x个第二数据流进行第二FEC编码,也即是发送端设备对x个第二数据流中的纯数据(或者说不存在校验位的数据)进行第二FEC编码。
这样,由于对x个第二数据流进行了不同类型的FEC编码,从而使得该数据传输方法可以适配更多的应用场景,提高了该数据传输方法的通用性,同时,这样还增加了数据的保护的类型,进一步保障了数据传输的可靠性。
需要说明的是,当发送端设备在步骤103、步骤203、步骤303和步骤403之前对x个第二数据流进行了再编码,相应的,接收端设备在接收到该再编码后的数据时,需要对该再编码后的数据进行解码处理。因此,接收端设备在步骤107、步骤209、步骤309和步骤409之前,可以执行对再编码的解码处理。由于发送端设备对数据进行再编码的方式有多种,相应的,接收端设备根据发送端设备对数据的再编码的方式,对接收端设备接收的x个第二数据流进行相应的再编码的解码处理,该再编码的解码处理可以包括:
第一种可选的方式,当发射端设备对数据进行内码FEC编码时,相应的,接收端设备对数据进行内码FEC解码(inner FEC decode)。该内码FEC解码的过程可以包括:
步骤C1、接收端设备对x个第二数据流进行内码FEC解码,得到解码后的x个第二数据流。
其中,该内码FEC解码的方式对应于上述发送端设备对数据进行内码FEC编码的方式,则该内码FEC解码的实现过程可能为上述接收端设备对数据进行内码FEC编码的实现过程的反过程。
步骤C2、接收端设备移除解码处理后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,校验位为发送端设备对x个第二数据流进行内码FEC编码时添加的。
接收端设备移除解码处理后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,使该x个第二数据流还原至发送端设备对x个第二数据流进行编码前的状态,同时,由于内码FEC解码的过程中,也即是对该x个第二数据流进行FEC码字纠错处理的过程,因此,接收端设备同时对该x个第二数据流进行了FEC码字纠错处理,保证了后续处理中数据的准确性。
需要说明的是,该内码FEC解码的码型与上述发送端设备对数据进行内码FEC编码的码型相同,示例的,该内码FEC编码的码型也可以为下列码型其中之一:RS码、BCH码、hamming、LDPC、polar或卷积码。
第二种可选的方式,当发送端设备对数据进行第二FEC编码时,相应的,接收端设备对数据进行第二FEC解码(FEC decode)。
可选的,为了增强对数据的保护级别,发送端设备通常对数据进行的第二FEC编码为增强FEC编码,因此,相应的,接收端设备通常对数据进行的第二FEC解码为增强FEC解码(stronger FEC decode)。
与上述第二FEC编码的过程对应,上述第二FEC解码的过程可以包括:
步骤D1、接收端设备将x个第二数据流进行第二FEC解码,得到解码后的x个第二数据流。
其中,该第二FEC解码的方式对应于上述发送端设备对数据进行第二FEC编码的方式,则该第二FEC解码的实现过程可能为上述接收端设备对数据进行第二FEC编码的实现过程的反过程。
步骤D2、接收端设备将解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,第二FEC解码对应的编码方式与第一FEC编码的编码方式不同。
接收端设备将解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,保证了编码后的x个第二数据流与发送端设备对x个第二数据流进行第二FEC编码之前的数据相同。同时,由于第二FEC解码的过程中,也即是对该x个第二数据流进行FEC码字纠错处理的过程,因此,接收端设备同时对该x个第二数据流进行了FEC码字纠错处理,保证了后续处理中数据的准确性,进一步的,当该第二FEC编码为增强FEC编码,接收端设备对x个第二数据流进行增强FEC解码后,由于增强FEC解码的纠正能力较强,通常情况下可以认为经过增强FEC解码的x个第二数据流不存错误数据(例如,由PMD层传输产生的突发错误数据),该接收端设备可以不执行前述FEC码字纠错处理,减少了数据处理步骤,降低了处理开销。
需要说明的是,该第二FEC解码的码型与上述发送端设备对数据进行第二FEC编码的码型相同,示例的,该第二FEC编码的码型也可以为下列码型其中之一:RS码、BCH码、hamming、LDPC、polar或卷积码。
还需要说明的是,发送端设备对x个第二数据流的数据进行再编码,通常在步骤103、步骤203、步骤303和步骤403之前,在发送端设备对x个第二数据流进行FEC码字纠错处理之后执行,这样可以有效的保证再编码的数据的准确性。相应的,接收端设备对x个第二数据流的数据进行再编码的解码处理,通常在接收端设备对x个第二数据流进行FEC码字纠错处理之前执行,则,接收端设备通常对再编码的解码处理后的x个第二数据流进行FEC码字纠错处理。
进一步地,由于在实际应用中,发送端设备的输出通道可能存在损坏,一旦使用损坏的输出通道进行数据发送,则可能导致传输数据的缺失,因此,为了保证数据的有效传输,发送端设备可以在上述步骤103之前确定第三数据流的个数z;发送端设备也可以在上述步骤204、步骤304、步骤404、步骤502和步骤602之前,确定第四数据流的个数s,并在输出数据流时将数据流通过输出通道一一对应输出去。这样可以保证输出的数据流的数量与实际进行输出的输出通道的个数相等,实现输出的数据流与输出通道一一对应。
在一种示例中,输出的数据流的数量小于或等于可用的输出通道个数。示例的,假设当前发送端设备的输出通道个数为10,且2个输出通道损坏,则,发送端设备可以确定当前可用的输出通道个数为8,进而确定第三数据流的个数z≤8,或者确定第四数据流的个数s≤8。这样,灵活确定输出通道个数的方式,保证了数据输出的完整性,提高了数据传输的效率。
在另一种示例中,输出的数据流的数量等于预设输出通道个数,也即是在发送动作前,预先设置了发送端设备用于进行数据流输出的输出通道个数,其为固定值,则发送端设备直接将预设输出通道个数确定为第三数据流或者第四数据流的个数即可。这样,可以降低该数据传输方法实际实现时的编码难度,简化数据处理过程,节省处理开销。
进一步地,前述步骤103、步骤203、步骤303和步骤403中发送端设备将x个第二数据流以n比特为粒度映射得的z个第三数据流的映射的过程可以有多种实现方式,相应的,前述步骤106、步骤208、步骤308和步骤408中接收端设备将z个第三数据流以n比特为粒度映射得到x个第二数据流的映射过程也有多种,本申请实施例对以下几种情况进行说明:
第一种情况,当第三数据流的个数z=1,且x个第三数据流仅包含一个FEC码字的数据时,发送端设备的映射过程包括:
步骤E1、发送端设备轮询x个第二数据流中的每个第二数据流。
轮询(round robin)指的是依次访问(也称询问)。发送端设备轮询x个第二数据流中的每个第二数据流指的是由发送端设备定时发出访问,依序访问每一个第二数据流,且该访问过程是周期执行的,在本申请实施例中,每一次访问一个第二数据流,得到的是该第二数据流中连续的n比特数据。
步骤E2、发送端设备将轮询得到的每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
在本申请实施例中,发送端设备轮询一次x个第二数据流的过程称为一轮轮询过程或者一个轮询周期,也即是在一个轮询周期能够获取x个n比特数据,在第一种情况中,在一个轮询周期中,发送端设备轮询x个第二数据流的轮询顺序可以有多种,该轮询顺序指的是发送端设备轮询x个第二数据流的顺序,该轮询顺序可以是预先设置的顺序,也可以是发送端设备根据实际情况实或者设定规则确定的顺序,示例的,该轮询顺序可以为以下的任一种:
第二数据流的序列号递增的顺序:或者,第二数据流的序列号递减的顺序;或者先偶数序列号的第二数据流,后奇数序列号的第二数据流的顺序;或者,先f1个偶数序列号的第二数据流,后f2个奇数序列号的第二数据流,再先f3个偶数序列号的第二数据流,后f4个奇数序列号的第二数据流的顺序,f1+f2+f3+f4=x,通常,f1=f3,f2=f4,例如,f1、f2、f3和f4均相等;或者,先g1个偶数序列号的第二数据流,后g2个奇数序列号的第二数据流,再先g3个奇数序列号的第二数据流,后g4个偶数序列号的第二数据流的顺序,g1+g2+g3+g4=x,通常,g1=g4,g2=g3,例如,g1、g2、g3和g4均相等;或者,先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序,例如,4个第二数据流的序列号为0、1、2和3,则轮询顺序为:序列号为1、0、3、2的第二数据流的顺序,或者,还可以为其他设定顺序,本申请对此不做限定。
需要说明的是,本申请实施例中,数据流的序列号可以是为数据流配置的独立的标识符号,也可以采用该数据流的传输通道号表示,还可以采用其携带的AM表示。并且,每两个相邻的轮询周期所采用的轮询顺序相同(即任意轮询两轮x个第二数据流所采用的轮询顺序相同),也即是均采用同一轮询顺序。
相应的,接收端设备的映射过程包括:接收端设备将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流,也即是每次映射的粒度是n比特。
在本申请实施例中,接收端设备映射一次不同的x个第二数据流的过程称为一轮映射过程或者一个映射周期,其中,也即是在一个映射周期对z个第三数据流能够获取x个n比特数据,在第一种情况中,接收端设备进行数据映射顺序通常与前述轮询顺序相同,该映射顺序指的是接收端设备将获取的x个n比特数据映射至x个第二数据流的顺序,该映射顺序可以为以下的任一种:
第二数据流的序列号递增的顺序:或者,第二数据流的序列号递减的顺序;或者先偶数序列号的第二数据流,后奇数序列号的第二数据流的顺序;或者,先f1个偶数序列号的第二数据流,后f2个奇数序列号的第二数据流,再先f3个偶数序列号的第二数据流,后f4个奇数序列号的第二数据流的顺序,f1+f2+f3+f4=x,通常,f1=f3,f2=f4,例如,f1、f2、f3和f4均相等;或者,先g1个偶数序列号的第二数据流,后g2个奇数序列号的第二数据流,再先g3个奇数序列号的第二数据流,后g4个偶数序列号的第二数据流的顺序,g1+g2+g3+g4=x,通常,g1=g4,g2=g3,例如,g1、g2、g3和g4均相等;或者,先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序,例如,4个第二数据流的序列号为0、1、2和3,则映射顺序为:序列号为1、0、3、2的第二数据流的顺序,或者,还可以为其他设定顺序,本申请对此不做限定。
值得说明的是,本申请实施例在实际实现时,该第三数据流可能存在数据排列上的问题,接收端设备在前述将1个第三数据流,以n比特数据为粒度,依次映射得到x个第二数据流之前可能需要对第三数据流进行预处理,以便保证后续处理过程中数据的有效性。其中,预处理可以为下列处理方式中至少一种:对齐、去偏移和重排序处理。预处理得到的1个第三数据流与之前的第三数据流在数据排列上可能不同,接收端设备进行数据映射的映射顺序也与前述轮询顺序不再相同,只要保证映射后接收端设备获取到所需格式和个数的第二数据流即可,本申请实施例对此不再限定。
示例的,如图15所示,假设,n=10,以x个第二数据流仅包含一个FEC码字K的数据(也即是,仅有一个FEC码字的数据以10比特(FEC符号)为粒度分发至该x个第二数据流,该过程简称为符号分发(symbol distribution))为例对上述发射端设备和接收端设备的映射过程进行说明。假设该一个FEC码字包括544个FEC符号的数据,该544个FEC符号的数据的标识分别为C0至C543,且x个第二数据流的序列号分别为0至x-1。则,一个第二数据流包括544/x个FEC符号的数据,例如,第x-1个第二数据流包括FEC符号C544-X至C0,第x-2个第二数据流包括FEC符号C544-X+1至C1。值得说明的是,图15中绘制的FEC码字K只是为了便于读者理解该x个第二数据包括的数据来源于一个FEC码字K的数据,实际实现时,图15中的x个第二数据流并不是FEC码字K直接通过符号分发得到的。
则发送端设备的映射(即符号映射(symbol mapping))过程包括:
发送端设备轮询第1个第二数据流(即序列号为0的第二数据流)至第x个第二数据流(即序列号为x-1的第二数据流),并依次将第1个第二数据流的C543(第1个连续的10比特数据)映射至第三数据流中,将第2个第二数据流的C542(第1个连续的10比特数据)映射至第三数据流中,…,将第x-1个第二数据流的C544-X+1(第1个连续的10比特数据)映射至第三数据流中,将第x个第二数据流的C544-X+1(第1个连续的10比特数据)映射至第三数据流中,…,直至将所有第二数据流的全部数据映射至第三数据流中(也即将第x个第二数据流的C0(最后一个连续的10比特数据)映射至第三数据流中),得到完整的1个第三数据流。此时,轮询顺序为第二数据流的序列号递增的顺序。
相应的,接收端设备的映射(即符号映射)过程包括:
接收端设备依次将该第三数据流的C543(第1个连续的10比特数据)映射至第1个第二数据流,将C542(第2个连续的10比特数据)映射至第2个第二数据流,…,直至将C0(最后1个连续的10比特数据)映射至将第x个第二数据流,得到完整的x个第二数据流,此时,映射顺序为第二数据流的序列号递增的顺序。
实际应用中,在以太网接口的速度为25GE的场景下,例如25GAUI-1接口,上述映射过程中x=1,在以太网接口的速度为50GE的场景下,例如50GAUI-1接口,上述映射过程中x=2,在以太网接口的速度为100GE的场景下,例如100GAUI-1接口,上述映射过程中x=4。
例如,假设在发射端设备和接收端设备具有100GAUI-1接口,则该应用场景下,发送端设备的100GAUI-1接口的映射过程包括:发送端设备轮询第1个第二数据流至第4个第二数据流,然后依次将第1个第二数据流的C543映射至第三数据流中,将第2个第二数据流的C542映射至第三数据流中,将第3个第二数据流的C541映射至第三数据流中,将第4个第二数据流的C540映射至第三数据流中,…,直至将第4个第二数据流的C0映射至第三数据流中,得到完整的1个第三数据流。对于接收端设备,相应的,接收端设备依次将将第三数据流C543映射至将第1个第二数据流,…,直至将第三数据流C1映射至将第3个第二数据流,将第三数据流的C0映射至将第4个第二数据流,得到完整的4个第二数据流。
这样,由于x个第二数据流仅映射得到1个第三数据流,因此,当数据流通过AUI-1接口的通道被连续传输时,接收端设备不需要对该1个第三数据流进行对齐处理,同时,由于x个第二数据流之间的相对关系是固定的(例如,每个第二数据流均包含固定数量的FEC符号的数据),因此,接收端设备可以通过对接收的数据进行单次定界,也即是仅进行一次数据流边界的确定,即可确定每个x个第二数据流的边界。
进一步的,一个FEC码字包括数据和校验位,且对于同一FEC码字该数据和校验位之间存在唯一关系(该关系可以称为校验关系),该校验关系可以用于判断该数据是否属于同一码字。则,由于仅映射得到1个第三数据流,且该1个第三数据流仅包括一个FEC码字的数据,因此,当数据通过AUI-1接口的通道被连续传输时,接收端设备可以以一个FEC码字的数据量为粒度,对数据的校验关系进行自定界,确定该数据是否属于一个FEC码字,也可以确定该一个FEC码字的第一个FEC符号,从而确定该数据是否为上述1第三个数据流,进而确定该1个第三数据流的通道的边界,即可确定每个x个第二数据流的边界。
进一步的,由于x个第二数据流仅映射得到1个第三数据流,因此,x个第二数据流和1个第三数据流的映射关系为x对1的映射关系,该第三数据流仅需添加一个对齐字即可,则可以将上述步骤1033的过程可以替换为:对该1个第三数据流添加一个对齐字,实际实现时,可以选择前述x个第二数据流的对齐字中的一个作为第三数据流的对齐字,例如将第1个第二数据流的对齐字作为第三数据流的对齐字,这样可以不删除原第1个第二数据流的对齐字,实现第二数据流和第三数据流的对齐字的复用(或者重用),减少了处理流程,减少了对齐字映射的数据处理,避免了额外进行对齐字映射关系处理的实现负担,节省了处理开销。
第二种情况,当第三数据流的个数z=1,且x个第三数据流包含两个FEC码字的数据时,发送端设备的映射过程包括:
步骤F1、发送端设备轮询x个第二数据流中的每个第二数据流。
步骤F2、发送端设备将轮询得到的每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
前述步骤F1和F2可以参考前述步骤E1和E2的过程,并且和前述第一种情况相同的是,在该第二种情况中,在一个轮询周期中,发送端设备轮询x个第二数据流的轮询顺序可以有多种,该轮询顺序指的是发送端设备轮询x个第二数据流的顺序,该轮询顺序可以参考前述第一种情况的轮询顺序。和前述第一种情况不同的是,在该第二种情况中,每相邻的两个轮询周期所采用的轮询顺序不同,也即是均采用不同的轮询顺序。
例如,每相邻的两个轮询周期所采用的轮询顺序包括:在一个轮询周期,轮询顺序为第二数据流的序列号递增的顺序,在另一个轮询周期,轮询顺序为:先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。
例如,x=8,其中,假设8个第二数据流的序列号分别为0至7,每相邻的两个轮询周期所采用的轮询顺序包括:在一个轮询周期,轮询顺序为0至7的递增顺序,在另一个轮询周期,轮询顺序为:1、0、3、2、5、4、7、6的先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。
相应的,接收端设备的映射过程包括:
接收端设备将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流。
该接收端设备的映射过程可以参考前述第一种情况下接收端设备的映射过程,并且和前述第一种情况相同的是,同理,在该第二种情况中,接收端设备进行映射的映射顺序通常与发送端设备的轮询顺序一致,该一致指的是接收端设备进行映射的整体映射顺序通常与发送端设备的整体轮询顺序相同,由于在该第二种情况中,发送端设备进行轮询时,每相邻的两个轮询周期所采用的轮询顺序不同,对应的,接收端设备在进行映射时每相邻两组数据的映射顺序不同,每组数据包括x个n比特数据。
例如,每相邻的两个两组数据所采用的映射顺序包括:对于一组数据,映射顺序为第二数据流的序列号递增的顺序,对于另一组数据,映射顺序为:先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。
例如,x=8,其中,假设8个第二数据流的序列号分别为0至7,每相邻的两组数据所采用的映射顺序包括:对于一组数据,映射顺序为0至7的递增顺序,对于另一组数据,映射顺序为:1、0、3、2、5、4、7、6的先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。
示例的,如图16所示,假设n=10,x=8,以x个第二数据流包含两个FEC码字A和码字B的数据(也即是,有两个FEC码字的数据以10比特(FEC符号)为粒度分发至该x个第二数据流,例如,两个FEC码字的数据以FEC符号为粒度进行码字交织处理至该x个第二数据流)为例对上述发射端设备和接收端设备的映射过程进行说明,假设每个FEC码字包括544个FEC符号的数据,其中,一个FEC码字A的544个FEC符号的数据的标识分别为CA,0至C A,543,另一个FEC码字B的544个FEC符号的数据的标识分别为CB,0至CB,543,且该8个第二数据流的序列号分别为0至7。则,一个第二数据流包括544×2/8个FEC符号的数据。例如,第1个第二数据流包括FEC符号CA,543、CB,539、…和CB,3,第2个第二数据流包括FEC符号CB,543、CA,539、…和CA,3,第3个第二数据流包括FEC符号CA,542、CB,538、…和CB,2,第8个第二数据流包括FEC符号CB,540、CA,536、…和CA,0。
则发送端设备的映射过程包括:
发送端设备在第一个轮询周期中,轮询第1个第二数据流至第8个第二数据流,并依次将第1个第二数据流的CA,543映射至第三数据流中,将第2个第二数据流的CB,543映射至第三数据流中,将第3个第二数据流的CA,542映射至第三数据流中,…,将第8个第二数据流的CB,540映射至第三数据流中,然后在第二个轮询周期中,轮询第2个第二数据流、第1个第二数据流、第4个第二数据流、第3个第二数据流、第6个第二数据流、第5个第二数据流、第8个第二数据流和第7个第二数据流,并依次将第2个第二数据流的CA,539映射至第三数据流中,将第1个第二数据流的CB,539映射至第三数据流中,将第4个第二数据流的CA,538映射至第三数据流中,将第3个第二数据流的CB,538映射至第三数据流中,…,将第8个第二数据流的CA,536映射至第三数据流中,将第7个第二数据流的CB,536映射至第三数据流中,…,直至最后一个轮询周期中,轮询第2个第二数据流、第1个第二数据流、第4个第二数据流、第3个第二数据流、第6个第二数据流、第5个第二数据流、第8个第二数据流和第7个第二数据流,…,直至将第8个第二数据流的CA,0映射至第三数据流中,将第7个第二数据流的CB,0映射至第三数据流中,得到完整的1个第三数据流,此时,第一轮询周期的轮询顺序为:第二数据流的序列号递增的顺序,第二轮询周期的轮询顺序为:1、0、3、2、5、4、7、6的先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。其中,奇数个轮询周期内的映射过程相同(参考第一个轮询周期内的映射过程相同),偶数个轮询周期内的映射过程相同(参考第二个轮询周期内的映射过程)。
相应的,接收端设备的映射过程包括:
在第一个映射周期内,接收端设备映射的数据为第一组数据(即CA,543至CB,540),接收端设备依次将该第三数据流的CA,543(第1个连续的10比特数据)映射至第1个第二数据流,将CB,543(第2个连续的10比特数据)映射至将第2个第二数据流,将该第三数据流的CA,542(第3个连续的10比特数据)映射至第3个第二数据流,将该第三数据流的CB,542(第4个连续的10比特数据)映射至第4个第二数据流,将该第三数据流的CA,521(第5个连续的10比特数据)映射至第5个第二数据流,将该第三数据流的CB,541(第6个连续的10比特数据)映射至第6个第二数据流,将该第三数据流的CA,520(第7个连续的10比特数据)映射至第7个第二数据流,将CB,540(第8个连续的10比特数据)映射至第8个第二数据流;
然后,在第二个映射周期内,接收端设备映射的数据为第二组数据(即CA,539至CB,536),将CA,539(第9个连续的10比特数据)映射至第2个第二数据流,将CB,539(第10个连续的10比特数据)映射至第1个第二数据流,将CA,538(第11个连续的10比特数据)映射至第4个第二数据流,将CB,538(第12个连续的10比特数据)映射至第3个第二数据流,将CA,537(第13个连续的10比特数据)映射至第6个第二数据流,将CB,537(第14个连续的10比特数据)映射至第5个第二数据流,将CA,536(第15个连续的10比特数据)映射至第8个第二数据流,将CB,536(第16个连续的10比特数据)映射至第7个第二数据流,…,直至将CB,1(第542个连续的10比特数据)映射至第5个第二数据流,将CA,0(第543个连续的10比特数据)映射至第8个第二数据流,将CB,0(第544个连续的10比特数据)映射至第7个第二数据流,得到完整的8个第三数据流,此时,第一映射周期的映射顺序为:第二数据流的序列号递增的顺序,第二映射周期的映射顺序为:1、0、3、2、5、4、7、6的先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序。其中,奇数个映射周期内的映射过程相同(参考第一个映射周期内的映射过程相同),偶数个映射周期内的映射过程相同(参考第二个映射周期内的映射过程)。
这样,由于x个第二数据流仅映射得到1个第三数据流,因此,当数据通过一个通道被连续传输时,接收端设备不需要对该1个第三数据流进行对齐处理,同时,由于x个第二数据流之间的相对关系是固定的,因此,接收端设备可以通过对接收的数据进行单次定界,也即是仅进行一次数据流边界的确定,即可确定每个x个第二数据流的边界。
进一步的,由于x个第二数据流仅映射得到1个第三数据流,因此,该1个第三数据流的对齐字可以不用确定上述步骤1033中的映射关系,重用x个第二数据流的对齐字,也即是直接对该1个第三数据流添加一个相同的对齐字即可,减少了对齐字映射的数据处理,避免了额外进行对齐字映射关系处理的实现负担,节省了处理开销。
第三种情况,当第三数据个数z≥2(即z=2或z>3),且x个第二数据流包括多个FEC码字的数据,其中,该多个FEC码字可以是2个FEC码字或至少3个FEC码字。则发送端设备和接收端设备的映射的实现方式有多种,本申请实施例以以下两种为例进行说明。
第一种实现方式,发送端设备的映射过程包括:
步骤G1、发送端设备依次轮询x个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至x个第二数据流的数据完全映射得到z个第三数据流,每次轮询得到每个第二数据流中连续的n比特数据。
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
前述步骤G1可以参考前述步骤E1和E2的过程,并且和前述第一种情况相同的是,在该第三种情况中,在一个轮询周期中,发送端设备轮询x个第二数据流的轮询顺序可以有多种,该轮询顺序可以参考前述第一种情况的轮询顺序,该轮询顺序指的是发送端设备轮询x个第二数据流的顺序。和前述第一种情况不同的是,在该第三种情况中,在一种可选示例中,每两个相邻的轮询周期所采用的映射顺序不同,该映射顺序指的是将轮询得到的数据映射到z个第三数据流中的顺序,也即是即使每相邻的两个轮询周期所采用的相同的轮询顺序,但映射顺序不同,最终映射到的第三数据流也不同。在另一种可选示例中,每两个相邻的轮询周期所采用的映射顺序相同。该映射顺序可以包括以下任一种:
第三数据流的序列号递增的顺序;或者,第三数据流的序列号递减的顺序;或者先偶数序列号的第三数据流,后奇数序列号的第三数据流的顺序;或者,先u1个偶数序列号的第三数据流,后u2个奇数序列号的第三数据流,再先u3个偶数序列号的第三数据流,后u4个奇数序列号的第三数据流的顺序,u1+u2+u3+u4=x,通常,u1=u3,u2=u4,例如,u1、u2、u3和u4均相等;或者,先h1个偶数序列号的第三数据流,后h2个奇数序列号的第三数据流,再先h3个奇数序列号的第三数据流,后h4个偶数序列号的第三数据流的顺序,h1+h2+h3+h4=x,通常,h1=h4,h2=h3,例如,h1、h2、h3和h4均相等;或者,先奇数序列号后偶数序列号,且奇偶序列号一一交错的第三数据流的顺序,例如,4个第三数据流的序列号为0、1、2和3,则映射顺序为:序列号为1、0、3、2的第三数据流的顺序;或者还可以为其他设定顺序。
相应的,接收端设备的映射过程包括:
步骤H1、接收端设备依次轮询该z个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至该z个第三数据流的数据完全映射得到x个第二数据流,每次轮询得到的数据为该每个第三数据流中连续的n比特数据。
与前述第三种情况的发射端设备对应的,对于接收端设备,每两个相邻的映射周期所采用的轮询顺序相同或不同,且,每两个相邻的映射周期所采用的映射顺序相同或不同。
在每个映射周期中,该轮询顺序满足以下任一种:
第三数据流的序列号递增的顺序,或者,第三数据流的序列号递减的顺序,或者,先偶数序列号的第三数据流,后奇数序列号的第三数据流的顺序,或者,先u1个偶数序列号的第三数据流,后u2个奇数序列号的第三数据流,再先u3个偶数序列号的第三数据流,后u4个奇数序列号的第三数据流的顺序,u1+u2+u3+u4=x,或者,先h1个偶数序列号的第三数据流,后h2个奇数序列号的第三数据流,再先h3个奇数序列号的第三数据流,后h4个偶数序列号的第三数据流的顺序,h1+h2+h3+h4=x,或者,先奇数序列号后偶数序列号,且奇偶序列号一一交错的第三数据流的顺序,或者,还可以为其他设定顺序,本申请对此不做限定。
该映射顺序满足以下任一种:
第二数据流的序列号递增的顺序,或者,第二数据流的序列号递减的顺序,或者,先偶数序列号的第二数据流,后奇数序列号的第二数据流的顺序,或者,先f1个偶数序列号的第二数据流,后f2个奇数序列号的第二数据流,再先f3个偶数序列号的第二数据流,后f4个奇数序列号的第二数据流的顺序,f1+f2+f3+f4=x,或者,先g1个偶数序列号的第二数据流,后g2个奇数序列号的第二数据流,再先g3个奇数序列号的第二数据流,后g4个偶数序列号的第二数据流的顺序,g1+g2+g3+g4=x,或者,先奇数序列号后偶数序列号,且奇偶序列号一一交错的第二数据流的顺序,或者,还可以为其他设定顺序,本申请对此不做限定。
如前所述,在该第三种情况中,在一个映射周期中,接收端设备进行数据映射的顺序,即映射顺序通常与发射端设备在一个轮询周期的轮询顺序相同,接收端设备进行数据轮询的顺序通常与发射端设备在一个轮询周期的映射顺序相同。也即是,接收端设备的一个映射周期的映射顺序与发送端设备的一个轮询周期的轮询顺序对应相同,接收端设备的一个映射周期的轮询顺序与发送端设备的一个轮询周期的映射顺序对应相同。
由于在第三种情况下,发送端设备和接收端设备具有多种轮询顺序和映射顺序,因此,该发送端设备和接收端设备的映射过程可以包含多种,本申请实施例以以下多种为例进行说明。
第一种,当z=2和x=8时,发送端设备的映射过程包括:
发射端设备依次轮询8个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至8个第二数据流的数据完全映射得到2个第三数据流,对于每个第二数据流,每次轮询得到每个第二数据流中连续的n比特数据。
其中,每两个相邻的轮询周期所采用的轮询顺序相同,例如,在每个轮询周期中,轮询顺序为先偶数序列号的第二数据流,后奇数序列号的第二数据流的顺序,也即是先轮询偶数序列号的第二数据流,后轮询奇数序列号的第二数据流,并且每两个相邻的轮询周期所采用的映射顺序不同,例如,对于每两个相邻的轮询周期,一个轮询周期采用的映射顺序为先映射至偶数序列号的第三数据流,后映射至奇数序列号的第三数据流,另一个轮询周期采用的映射顺序为先映射至奇数序列号的第三数据流,后映射至偶数序列号的第三数据流,这样的顺序可以视为两个映射周期的映射顺序翻转。示例的,对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询2个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至2个第三数据流的数据完全映射得到8个第二数据流,每次轮询得到每个第三数据流中连续的n比特数据。
其中,每两个相邻的映射周期所采用的轮询顺序不同,例如,对于每两个相邻的映射周期,一个映射周期采用的轮询顺序为第三数据流的序列号为奇数偶数一一交错的顺序,另一个映射周期采用的轮询顺序为第三数据流的序列号为偶数奇数一一交错的顺序,相当于两个映射周期的轮询顺序翻转。每两个相邻的映射周期所采用的映射顺序相同,例如,在每个映射周期中,映射顺序为先偶数序列号的第二数据流,后奇数序列号的第二数据流的顺序,也即是先映射到偶数序列号的第二数据流,后映射到奇数序列号的第二数据流。
例如,对于每个第三数据流,任意相邻8次轮询得到的数据(即一个映射周期的数据)映射到不同的8个第二数据流中,且映射顺序为:先映射奇数序列号的第二数据流,后映射偶数序列号的第二数据流。
示例的,如图17所示,假设n=10,x=8,z=2,以x个第二数据流包含两个FEC码字A和码字B的数据(也即是,有两个FEC码字的数据以10比特(FEC符号)为粒度分发至该x个第二数据流,例如,两个FEC码字的数据以FEC符号为粒度进行码字交织处理至该x个第二数据流)为例对上述映射发射端设备和接收端设备的过程进行说明,每个FEC码字包括544个FEC符号的数据,其中,一个FEC码字A的544个FEC符号的数据的标识分别为CA,0至CA,543,另一个FEC码字B的544个FEC符号的数据的标识分别为CB,0至CB,543,且该8个第二数据流的序列号分别为0至7。则,一个第二数据流包括544×2/8个FEC符号的数据。例如,第1个第二数据流包括FEC符号CA,543、CB,539、…和CB,3,第2个第二数据流包括FEC符号CB,543、CA,539、…和CA,3,第3个第二数据流包括FEC符号CA,542、CB,538、…和CB,2,第8个第二数据流包括FEC符号CB,540、CA,536、…和CA,0。
则发送端设备的映射过程包括:
发送端设备在第一个轮询周期中,先轮询的第二数据流的序列号为:0、2、4和6,并依次将轮询得到的CA,543、CA,542、CA,541和CA,540映射至的第1个第三数据流(指的是序列号为0的第1个第三数据流)中,然后,轮询的第二数据流的序列号为:1、3、5和7,并依次将轮询得到的CB,543、CB,542、CB,541和CB,540映射至的第2个第三数据流(指的是序列号为1的第2个第三数据流)中;之后,发射端设备在第二个轮询周期中,先轮询的第二数据流的序列号为:0、2、4和6,并依次将轮询得到的CB,539、CB,538、CB,537和CB,536映射至的第2个第三数据流中,然后,轮询的第二数据流的序列号为:1、3、5和7,并依次将轮询得到的CA,539、CA,538、CA,537和CA,536映射至的第1个第三数据流中,…,直至发射端设备在最后一次轮询周期中,先轮询的第二数据流的序列号为:0、2、4和6,并依次将轮询得到的CB,3、CB,2、CB,1和CB,0映射至的第2个第三数据流中,然后,轮询的第二数据流的序列号为:1、3、5和7,并依次将轮询得到的CA,3、CA,2、CA,1和CA,0映射至的第1个第三数据流中,得到完整的2个第三数据流。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询2个第三数据流的每个第三数据流,在第一个映射周期内,将第1个第三数据流的CA,543映射至第1个第二数据流,将第2个第三数据流的CB,543映射至第2个第二数据流,将第1个第三数据流的CA,542映射至第3个第二数据流,将第2个第三数据流的CB,542映射至第4个第二数据流,将第1个第三数据流的CA,541映射至第5个第二数据流,将第2个第三数据流的CB,541映射至第6个第二数据流,将第1个第三数据流的CA,540映射至第7个第二数据流,将第2个第三数据流的CB,540映射至第8个第二数据流,…,在最后一个映射周期内,将第1个第三数据流的CA,3映射至第2个第二数据流,将第2个第三数据流的CB,3映射至第1个第二数据流,将第1个第三数据流的CA,2映射至第4个第二数据流,将第2个第三数据流的CB,2映射至第3个第二数据流,将第1个第三数据流的CA,1映射至第6个第二数据流,将第2个第三数据流的CB,1映射至第5个第二数据流,将第1个第三数据流的CA,0映射至第8个第二数据流,将第2个第三数据流的CB,0映射至第7个第二数据流,得到完整的8个第二数据流。
这样,由于映射得到2个第三数据中每个第三数据流仅包括一个FEC码字的数据,因此,当数据通过输出通道被连续传输时,接收端设备可以通过验证以一个FEC码字的数据量为粒度的数据的校验关系进行自定界,确定该数据是否属于一个FEC码字,进而确定一个FEC码字对应的输出通道的边界。
第二种,当z=2和x=8时,发送端设备的映射过程包括:
发送端设备依次轮询8个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至8个第二数据流的数据完全映射得到2个第三数据流,其中,每两个相邻的轮询周期所采用的轮询顺序相同,例如,假设8个第二数据流依次具有序列号0-7,在轮询x个第二数据流时,轮询的第二数据流的序列号的排序依次为:0、1、3、2、4、5、7、6,并且每两个相邻的轮询周期所采用的映射顺序不同,例如,对于每两个相邻的轮询周期,一个轮询周期采用的映射顺序为第三数据流的序列号为奇数偶数一一交错的顺序,另一个轮询周期采用的映射顺序为第三数据流的序列号为偶数奇数一一交错的顺序,相当于两个轮询周期的映射顺序翻转。则对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询2个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至2个第三数据流的数据完全映射得到8个第二数据流,对于每个第三数据流,每次轮询得到每个第三数据流中连续的n比特数据。其中,每两个相邻的映射周期所采用的轮询顺序不同,例如,对于每两个相邻的轮询周期,一个轮询周期采用的轮询顺序为第三数据流的序列号为奇数偶数一一交错的顺序,另一个轮询周期采用的轮询顺序为第二数据流的序列号为偶数奇数一一交错的顺序,相当于两个映射周期的轮询顺序翻转。每两个相邻的映射周期所采用的映射顺序相同,例如,在每个映射周期中,映射的第二数据流的序列号的排序依次为:0、1、3、2、4、5、7、6。
示例的,继续以图17所示的示例的8个第二数据流的数据为例,请参考图18,则发送端设备的映射过程包括:
发送端设备在第一次轮询周期中,轮询的第二数据流的序列号为:0、1、3、2、4、5、7、6,并将轮询得到的CA,543、CB,543、CB,542、CA,542、CA,541、CB,541、CB,540和CA,540交替映射至的第1个第三数据流和第2个第三数据流;在第二次轮询周期中,轮询的第二数据流的序列号为:0、1、3、2、4、5、7、6,并将轮询得到的CB,539、CA,539、CA,538、CB,538、CB,537、CA,537、CA,536和CB,536交替映射至的第2个第三数据流和第1个第三数据流,…,直至发射端设备在最后一次轮询周期中,轮询的第二数据流的序列号为:0、1、3、2、4、5、7、6,并将轮询得到的CB,3、CA,3、CA,2、CB,2、CB,1、CA,1、CA,0和CB,0交替映射至的第2个第三数据流和第1个第三数据流,得到完整的2个第三数据流。其中,奇数个轮询周期内的映射过程相同(参考第一个轮询周期内的映射过程相同),偶数个轮询周期内的映射过程相同(参考第二个轮询周期内的映射过程)。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询2个第三数据流的每个第三数据流,在第一个映射周期中,接收端设备将第1个第三数据流的CA,543映射至第1个第二数据流,将第2个第三数据流的CB,543映射至第2个第二数据流,将第1个第三数据流的CB,542映射至第4个第二数据流,将第2个第三数据流的CA,542映射至第3个第二数据流,将第1个第三数据流的CA,541映射至第5个第二数据流,将第2个第三数据流的CB,541映射至第6个第二数据流,将第1个第三数据流的CB,540映射至第8个第二数据流,将第2个第三数据流的CA,540映射至第7个第二数据流…,在最后一个映射周期中,将第1个第三数据流的CA,3映射至第2个第二数据流,将第2个第三数据流的CB,3映射至第1个第二数据流,将第1个第三数据流的CB,2映射至第3个第二数据流,将第2个第三数据流的CA,2映射至第4个第二数据流,将第1个第三数据流的CA,1映射至第6个第二数据流,将第2个第三数据流的CB,1映射至第5个第二数据流,将第1个第三数据流的CB,0映射至第7个第二数据流,将第2个第三数据流的CA,0映射至第8个第二数据流,得到完整的8个第二数据流。其中,奇数个映射周期内的映射过程相同(参考第一个映射周期内的映射过程相同),偶数个映射周期内的映射过程相同(参考第二个映射周期内的映射过程)。
第三种,当z=4和x=16时,发送端设备的映射过程包括:
发送端设备依次轮询16个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至16个第二数据流的数据完全映射得到4个第三数据流,对于每个第二数据流,每次轮询得到每个第二数据流中连续的n比特数据,其中,每两个相邻的轮询周期所采用的轮询顺序相同,例如,在每个轮询周期中,轮询顺序为先两个连续的偶数序列号的第二数据流,后两个连续的奇数序列号的第二数据流的顺序,也即是先轮询两个连续偶数序列号的第二数据流,后轮询两个连续奇数序列号的第二数据流,也即是在每个轮询周期中,轮询顺序为0、2、1、3、4、6、5、7、8、10、9、11、12、14、13和15,并且每两个相邻的轮询周期所采用的映射顺序不同,例如,对于每两个相邻的轮询周期,一个轮询周期采用的映射顺序为第三数据流的序列号递增的顺序,另一个轮询周期采用的映射顺序为第三数据流的序列号为:2、3、0和1的顺序,相当于两个轮询周期的映射顺序翻转。示例的,对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。其中,在轮询每16个第二数据流时,先轮询偶数序列号的第二数据流,后轮询奇数序列号的第二数据流。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询4个第三数据流中的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至4个第三数据流完全映射得到16个第二数据流,对于每个第三数据流,每次轮询得到每个第三数据流中连续的n比特数据,其中,每两个相邻的映射周期所采用的轮询顺序不同,例如,对于每两个相邻的映射周期,一个映射周期采用的轮询顺序为第三数据流的序列号递增的顺序,另一个映射周期采用的轮询顺序为第三数据流的序列号为第三数据流的序列号为:2、3、0和1的顺序,相当于两个映射周期的轮询顺序翻转。每两个相邻的映射周期所采用的映射顺序相同,例如,在每个映射周期中,映射顺序为先两个连续偶数序列号的第二数据流,后两个连续奇数序列号的第二数据流的顺序,也即是先映射到两个连续偶数序列号的第二数据流,后映射到两个连续奇数序列号的第二数据流,也即是在每个映射周期中,映射顺序为0、2、1、3、4、6、5、7、8、10、9、11、12、14、13和15。
例如,对于每个第三数据流,任意相邻16次轮询得到的数据映射至不同的16个第二数据流中,16个第二数据流依次具有序列号0-15,映射第二数据流的序列号的排序依次为先轮询偶数序列号的第二数据流,后轮询奇数序列号的第二数据流。
示例的,如图19所示,假设n=10,x=16,z=4,以x个第二数据流包含两个FEC码字A和码字B的数据(也即是,有两个FEC码字的数据以10比特(FEC符号)为粒度分发至该16个第二数据流,例如,两个FEC码字的数据以FEC符号为粒度进行码字交织处理至该16个第二数据流)为例对上述发射端设备和接收端设备的映射过程进行说明,每个FEC码字包括544个FEC符号的数据,其中,一个FEC码字A的544个FEC符号的数据的标识分别为CA,0至CA,543,另一个FEC码字B的544个FEC符号的数据的标识分别为CB,0至CB,543,且该16个第二数据流的序列号分别为0至15。则,一个第二数据流包括544×2/16个FEC符号的数据。例如,第1个第二数据流包括FEC符号CA,543、CB,539、…和CB,7,第2个第二数据流包括FEC符号CB,543、CA,539、…和CA,7,第3个第二数据流包括FEC符号CA,542、CB,538、…和CB,6,第15个第二数据流包括FEC符号CB,536、CA,528、…和CA,0。
则发送端设备的映射过程包括:
发送端设备在第一个轮询周期内,先轮询的第二数据流的序列号为:0、2、4、6、8、10、12和14,并依次将轮询得到的CA,543、CA,542、CA,541、CA,540、CA,539、CA,538、CA,537和CA,536交替映射至的第1个第三数据流和第2个第三数据流中,然后,轮询的第二数据流的序列号为:1、3、5、7、9、11、13和15,并依次将轮询得到的CB,543、CB,542、CB,541、CB,540、CB,539、CB,538、CB,537和CB,536交替映射至的第3个第三数据流(指的是序列号为2的第三数据流)和第4个第三数据流(指的是序列号为3的第三数据流)中;
之后,在第二个轮询周期中,先轮询的第二数据流的序列号为:0、2、4、6、8、10、12和14,并依次将轮询得到的CB,535、CB,534、CB,533、CB,532、CB,531、CB,530、CB,529和CB,528交替映射至的第3个第三数据流和第4个第三数据流中,然后,轮询的第二数据流的序列号为:1、3、5、7、9、11、13和15,并依次将轮询得到的CA,535、CA,534、CA,533、CA,532、CA,531、CA,530、CA,529和CA,528交替映射至的第1个第三数据流和第2个第三数据流中,…,直至得到完整的4个第三数据流。其中,奇数个轮询周期内的映射过程与第一个轮询周期内的映射过程相同,偶数个轮询周期内的映射过程与第二个轮询周期内的映射过程相同。
相应的,接收端设备的映射过程包括:
接收端设备依次轮询4个第三数据流中的每个第三数据流,将第1个第三数据流的CA,543映射至第1个第二数据流中,将第2个第三数据流的CA,542映射至第3个第二数据流中,将第3个第三数据流的CB,543映射至第2个第二数据流中,将第4个第三数据流的CB,542映射至第4个第二数据流中;之后,将第1个第三数据流的CA,541映射至第5个第二数据流中,将第2个第三数据流的CA,540映射至第7个第二数据流中,将第3个第三数据流的CB,541映射至第6个第二数据流中,将第4个第三数据流的CB,540映射至第8个第二数据流中,…,直至得到完整的16个第二数据流。
第四种,当z=4和x=16时,发送端设备的映射过程可以包括:
发送端设备依次轮询16个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至16个第二数据流的数据完全映射得到4个第三数据流,对于每个第二数据流,每次轮询得到每个第二数据流中连续的n比特数据,其中,每两个相邻的轮询周期所采用的轮询顺序相同,例如,在每个轮询周期中,轮询顺序为第二数据流序列号递增的顺序,并且每两个相邻的轮询周期所采用的映射顺序不同,例如,对于每两个相邻的轮询周期,一个轮询周期采用的映射顺序为第三数据流序列递增的顺序或者第三数据流的序列号为1、0、3和2的顺序交错的顺序,另一个轮询周期采用的映射顺序为第三数据流的序列号为1、0、3和2的顺序或者第三数据流序列递增的顺序交错的顺序。示例的,对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。其中,在轮询每16个第二数据流时,按照第二数据流的序列号递增的顺序轮询第二数据流。
相应的,接收端设备的映射过程可以包括:
接收端设备依次轮询所述4个第三数据流中的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述4个第三数据流完全映射得到16个第二数据流,对于每个第三数据流,每次轮询得到每个第三数据流中连续的n比特数据,其中,每两个相邻的映射周期所采用的轮询顺序不同,例如,对于每两个相邻的映射周期,一个映射周期采用的轮询顺序为第三数据流序列递增的顺序或者第三数据流的序列号为1、0、3和2的顺序交错的顺序,另一个映射周期采用的轮询顺序为第三数据流的序列号为1、0、3和2的顺序或者第三数据流序列递增的顺序交错的顺序。每两个相邻的映射周期所采用的映射顺序相同,例如,映射顺序为第二数据流序列号递增的顺序。
例如,对于每个第三数据流,任意相邻16次轮询得到的数据映射至不同的16个第二数据流中,按照第二数据流的序列号递增的顺序轮询第二数据流。
示例的,如图20所示,继续以上述图19所述的示例的16个第二数据流的数据为例,发送端设备的映射过程可以包括:
发送端设备在第一个轮询周期内,依次轮询16个第二数据流,并将轮序得到的CA,543、CB,543、CA,542、CB,542、CA,541、CB,541、CA,540、CB,540、CA,539、CB,539、CA,538、CB,538、CA,537、CB,537、CA,536和CB,536依次映射至第1个第三数据流、第2个第三数据流、第3个第三数据流和第4个第三数据流以及第2个第三数据流、第1个第三数据流、第4个第三数据流和第3个第三数据流。之后,在第二个轮询周期内,依次轮询16个第二数据流,并将轮序得到的CB,535、CA,535、CB,534、CA,534、CB,533、CA,533、CB,532、CA,532、CB,531、CA,531、CB,530、CA,530、CB,529、CA,529、CB,528和CA,528依次映射至第2个第三数据流、第1个第三数据流、第4个第三数据流和第3个第三数据流以及第1个第三数据流、第2个第三数据流、第3个第三数据流和第4个第三数据流中,…,直至得到完整的4个第三数据流。其中,奇数个轮询周期内的映射过程相同(参考第一个轮询周期内的映射过程相同),偶数个轮询周期内的映射过程相同(参考第二个轮询周期内的映射过程)。
相应的,接收端设备的映射过程包括:
接收端设备映射依次轮询4个第三数据流的每个第三数据流,在第一个映射周期内,接收端设备依次轮询第1个第三数据流、第2个第三数据流、第3个第三数据流、第4个第三数据流、第2个第三数据流、第1个第三数据流、第4个第三数据流、第3个第三数据流,第1个第三数据流、第2个第三数据流、第3个第三数据流、第4个第三数据流、第2个第三数据流、第1个第三数据流、第4个第三数据流和第3个第三数据流,将轮询得到的第三数据流的数据依次映射至16个第二数据流中,然后,在第二个映射周期内,轮询第2个第三数据流、第1个第三数据流、第4个第三数据流、第3个第三数据流、第1个第三数据流、第2个第三数据流、第3个第三数据流、第4个第三数据流、第2个第三数据流、第1个第三数据流、第4个第三数据流、第3个第三数据流、第1个第三数据流、第2个第三数据流、第3个第三数据流和第4个第三数据流,将轮询得到的第三数据流的数据依次映射至16个第二数据流中,…,直至得到完整的16个第二数据流。其中,奇数个映射周期内的映射过程相同(参考第一个映射周期内的映射过程相同),偶数个映射周期内的映射过程相同(参考第二个映射周期内的映射过程)。
值得说明的是,当上述x个第二数据流包含多个FEC码字的数据时,上述发送端设备的映射过程中x个第二数据流中每个第二数据流相邻的两个FEC符号通常属于不同的FEC码字。上述发送端设备的映射过程仅为示意性说明,只要保证上述发送端设备映射得到的z个第三数据流中每个第三数据流仅包括一个FEC码字的数据,或者包括两个FEC码字的数据,且该两个FEC码字的数据按照一定规律排列(例如,相邻的两个FEC符号属于不同的FEC码字)即可,本申请对此不再限定。
需要说明的是,当n为一个FEC符号包含的比特的数量时,上述映射也可以称为符号映射(symbol mapping)。
值得说明的是,前述几种情况均是以多个数据流的序列号从0开始设置为例进行说明,实际应用中,序列号也可以从1开始设置,本领域技术人员可以容易想到,由于序列号的设置方式不同,序列号的奇偶顺序相应不同,任意在本申请实施例的基础上可以想到的简单变化,都可以涵盖在本申请实施例的保护范围内,在此不再赘述。
如前所述,第二种可选的实现方式、第四种可选的实现方式、第五种可选的实现方式或第六种可选的实现方式中,x个第五数据流与前述x个第二数据流至少数据的属性相同,例如两者均为PMA层传输的数据,两者均通过PMA通道传输,又例如,两者均为PMA层中FEC通道传输的数据,两者均通过FEC通道传输,进一步的,该x个第五数据流与前述x个第二数据流至少数据的内容也相同,此时,x个第五数据流即为x个第二数据流,则前述x个第五数据流可以参考前述x个第二数据流的映射过程,当然,其他映射过程实际上也可以参考前述x个第二数据流的映射过程,本申请实施例对此不再赘述。
需要说明的是,通常情况下,发送端设备和接收端设备在执行任一步骤时,均需要对待处理的数据进行对齐处理、去偏移处理和重排序处理中的至少一种,从而保证后续处理过程中数据的有效性。特别值得注意的是,由于通常数据的映射处理会改变数据的排列顺序等,易于出现数据不对齐情况,因此,在对数据进行映射处理(例如,该映射处理可能发生在数据跨层传输或者跨通道传输时)后,必须对数据进行对齐处理,以避免因数据不对齐使得后续处理出现进程错误。
还需要说明的是,本申请实施例提供的数据传输方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
进一步需要说明的是,图16至图20中绘制的FEC码字A和码字B只是为了便于读者理解该x个第二数据包括的数据来源于两个FEC码字的数据,实际实现时,图16至图20中的x个第二数据流并不是FEC码字码字A和码字B直接通过符号分发得到的。
综上所述,本申请实施例提供的数据传输方法,由于发送端设备和接收端设备在进行数据传输的过程中,可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
进一步地,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度映射至z个第三数据流进而输出,其映射粒度相较于Bit Mux架构中的映射粒度大,因此,当第三数据流中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
仍然以图5所示的示例为例,在IEEE802.3应用场景下,n=10,也即是本申请提供的数据传输方法当PMA层接收的1个数据流携带长度为6比特的突发错误数据,采用本申请提供的数据传输方法,发送端设备的PMA层的输出通道和接收端设备的PMA层中传输的数据的单位符号为1个FEC符号,这些数据在接收端设备以10比特为粒度进行映射后,会将这6比特的突发错误数据映射2个FEC符号的数据中,造成2个FEC符号错误。这样,相比于将该6比特的突发错误数据以比特为粒度进行映射后造成的4个FEC符号数据错误,减少了出现错误FEC符号数据的个数。同时,由于减少了出现错误FEC符号数据的个数,使得在经过码字纠错处理时,降低了码字纠错处理失败的概率,提高了纠正突发错误数据的概率,提升了数据传输的正确率。
进一步的,当n=10时,发送端设备可以将x个第二数据流以10比特(FEC符号)为粒度映射至z个第三数据流进而输出,这样在减少包含突发错误数据的FEC符号的个数的同时,使得该数据传输方法可以兼容IEEE802.3ck的应用场景,在该应用场景中运算复杂度较低。
进一步的,由于对x个第二数据流进行了FEC码字纠错处理,因而,提高了数据传输的正确率。同时,由于该数据传输方法对x个第二数据流进行了再编码处理,提高了数据的保护级别,进一步保障了数据传输的可靠性,同时,由于再编码的编码方式较多,使得该数据传输方法可以适配更多不同编码的应用场景,提高了该数据传输方法的通用性。
本申请实施例提供的数据传输方法可以应用于多种场景中的接收端设备和发送端设备,假设上述数据传输方法应用于新增的子层AUI XS,当该发送端设备和接收端设备的芯片可以仅包括主芯片,如图21所示,该主芯片包括PMA层和AUI XS。或者,如图22所示,发送端设备包括主芯片、CDR芯片和光模块,执行本申请实施例提供的数据传输方法,接收端设备包括传统的光模块和传统的主芯片,执行传统的数据传输方法。或者,如图23所示,发送端设备包括主芯片和光模块,该光模块集成有CDR芯片,接收端设备包括传统的光模块和传统的主芯片。其中,图22和图23所示的发送端设备的主芯片包括PMA层和AUI XS,CDR芯片包括PMA层和AUI XS,上述传统的光模块和传统的主芯片指的是接收的数据为以比特为粒度映射得到的数据。
需要说明的是,上述图22和图23所示的应用环境中,接收端设备也可以为包括主芯片、CDE芯片和光模块的设备,或者为包括主芯片和光模块(该光模块集成有CDR芯片)的设备,包括主芯片、CDE芯片和光模块,执行本申请实施例提供的数据传输方法。
值得说明的是,当该数据传输方法应用于如图22和图23所示的应用场景中,主芯片中新增的子层AUI XS可以称为数据终端设备(data terminal equipment,DTE)AUI XS,在CDR芯片中新增的子层AUI XS可以称为物理层(Physical,PHY)AUI XS。
示例的,本申请以图21所示的数据传输方法的应用场景为例对本申请实施例进行说明,假设该发送端设备和接收端设备为接收机上的不同位置的通过以太网相互连接的主芯片U1和主芯片U2,该发送端设备和接收端设备具有100GE下的100GAUI-1接口,且该数据传输方法中n=10。该数据传输方法应用于主芯片U1和主芯片U2的AUI XS,本申请实施例以该100GAUI-1接口的数据传输为例进行说明。
如图24所示,发送端设备和接收端设备均包括:依次排布的MAC层/RS、PCS、FEC、PMA、AUI XS、PMA、PMD和medium,以及位于RS层与PCS之间的100GMII接口,位于PMA层与AUIXS之间的100GAUI-1接口和位于PMD层与medium之间的MDI接口。其中,MAC层与RS在100G电通道下的层级标准为100G MAC/RS,PCS层的编码规定为100G基础-距离(100GBASE-R)编码规定,FEC层的编码规定可以参考IEEE 802.3标准的第91章IEEE(clause 91FEC)。在100GAUI-1接口的应用环境中,该发送端设备和接收端设备具有的Bit Mux架构为4:1架构,且该发送端设备和接收端设备进行传输的数据流仅包括一个FEC码字。
如图25所示,主芯片U1的AUI XS首先执行步骤601,获取经过Bit Mux处理得到的1个第一数据流(第一数据流也称为交织数据流或mux数据流),然后将该1个第一数据流进行解复用处理得到4个第二数据流(第二数据流也称为FEC通道(FEC lanes)数据流),该步骤可以用PMA(1:4)表示。之后,为了保证后续处理中该4个第二数据流的有效性,主芯片U1的AUI XS可以执行步骤602,对该4个第二数据流执行对齐锁定、去偏移和重排序处理(该过程可以简称为对齐锁定、去偏移和通道重排序过程)。由于该4个第二数据流仅包括一个FEC码字,主芯片U1的AUI XS可以执行步骤603,将对齐锁定、去偏移和重排序处理后的4个第二数据流进行FEC码字纠错处理,得到纠错后的4个第二数据流(该过程可以简称为RS错误修正(RS error correction)过程),然后主芯片U1的AUI XS可以执行步骤604,将该纠错后的4个第二数据流进行再编码(该过程可以简称为再编码),该再编码过程可以包括对4个第二数据流进行内码FEC编码,得到编码后的4个第二数据流,也可以是对x个第二数据流进行增强FEC编码,得到编码后的4个第二数据流。之后,主芯片U1的AUI XS可以执行步骤605,将再编码后的4个第二数据流以FEC符号为粒度进行映射得到1个第三数据流(第三数据流也可以称为符号通道(symbol lanes)数据流)。其中,主芯片U1的AUI XS将再编码后的4个第二数据流以FEC符号为粒度进行映射得到1个第三数据流的过程可以包括主芯片U1的AUI XS首先执行步骤6051,将4个第二数据流的对齐字移除(该过程可以简称为对齐字移除),然后执行步骤6052,将移除对齐字的4个第二数据流以FEC符号为粒度,映射得到1个第三数据流,该步骤6052用符号分发(4:1)表示,之后分别执行步骤6053(值得说明的是,步骤6053也可以与步骤6052同步执行)和步骤6054以按照4个第二数据流与1个第三数据流的映射关系,对1个第三数据流添加对齐字(步骤6053的过程可以简称为对齐字映射,步骤6054的过程可以简称为对齐字添加)。最后,该1个第三数据流通过1个PMD输出通道输出至PMD层,最终,发射端设备将该1个第三数据流通过PMD层的1个PMD输出通道输出至主芯片U2中。
主芯片U2在接收在1个PMD输出通道传输的1个第三数据流后,如图26所示,为了保证后续处理中该4个第二数据流的有效性,主芯片U2的AUI XS可以执行步骤701,对该1个第三数据流执行对齐锁定、去偏移和重排序处理(该过程可以简称为对齐锁定、去偏移和通道重排序)。然后可以执行步骤702,将对齐锁定、去偏移和重排序处理后的1个第三数据流以FEC符号为粒度映射得到4个第二数据流,其中,主芯片U2的AUIXS将对齐锁定、去偏移和重排序处理后的1个第三数据流以FEC符号为粒度映射得到4个第二数据流的过程可以包括主芯片U1的AUI XS首先执行步骤7021,将1个第三数据流的对齐字移除(该过程可以简称为对齐字移除),然后执行步骤7022,将移除对齐字的1个第三数据流以FEC符号为粒度,映射得到4个第二数据流,该步骤7022可以用符号分发(1:4)表示,之后分别执行步骤7023(值得说明的是,步骤7023也可以与步骤7022同步执行)和步骤7024以按照1个第三数据流与4个第二数据流的映射关系,对4个第二数据流中每个第二数据流添加对齐字(步骤7023的过程可以简称为对齐字映射,步骤7024的过程可以简称为对齐字添加)。之后可以执行步骤703对该4个第二数据流进行再编码的解码处理(该过程可以简称为再编码的解码)。之后,可以执行步骤704,将解码处理后的4个第二数据流进行FEC码字纠错处理(该过程可以简称为RS错误修正),该FEC码字纠错处理主要纠正的是数据经过PMD层引起的突发错误数据,从而得到纠错后的4个第二数据流。之后可以执行步骤705,将纠错后的4个第二数据流以比特为粒度进行复用处理,得到1个第一数据流,该过程可以用PMA(4:1)表示。至此,本申请实施例提供的数据传输方法执行完毕。
需要说明的是,上述实施例中,发送端设备的主芯片U1不需要必须将该纠错后的4个第二数据流进行再编码,相应的,接收端设备的主芯片U2不需要必须对4个第二数据流进行再编码的解码处理,则上述实施例中步骤604和步骤703为可选步骤。
综上所述,本申请实施例提供的数据传输方法,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度映射至z个第三数据流进而输出,其映射粒度相较于Bit Mux架构中的映射粒度大,因此,当第三数据流中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
进一步的,当发送端设备和接收端设备均仅包含主芯片时,在发送端设备和接收端设备的数据传输过程中,由于该数据传输方法中发送端设备的主芯片和接收端设备的主芯片均执行了FEC码字纠错处理,该FEC码字纠错处理可以记录被纠正的突发错误数据,使得工作人员可以通过该记录的突发错误数据,判定数据传输过程的中,产生该突发错误数据(故障)的位置等信息,评定数据传输性能,实现了对C2C链路性能的监控和故障的定位。
进一步的,当n=10时,发送端设备可以将x个第二数据流以10比特(FEC符号)为粒度映射至z个第三数据流进而输出,这样在减少包含突发错误数据的FEC符号的个数的同时,使得该数据传输方法可以兼容IEEE802.3ck的应用场景,在该应用场景中运算复杂度较低。
进一步的,由于对x个第二数据流进行了FEC码字纠错处理,因而,提高了数据传输的正确率。同时,由于该数据传输方法对x个第二数据流进行了再编码处理,提高了数据的保护级别,进一步保障了数据安全,同时,由于再编码的编码方式较多,使得该数据传输方法可以适配更多不同编码的应用场景,提高了该数据传输方法的通用性。
示例的,本申请以图23所示的数据传输方法的应用场景为例,假设该发送端设备和接收端设备为不同服务器上的以以太网相互连接的设备,也为通过媒体介质相互连接的设备。该发送端设备和接收端设备具有100GE下的100GAUI-1接口,且包括通过100GAUI-1接口连接的主芯片和光模块(该光模块均集成有CDR芯片)。则该数据传输方法可以应用于发送端设备和接收端设备的主芯片DTE AUI XS,也应用于发送端设备和接收端设备的光模块的PHY AUI XS。其中,当该数据传输方法应用于100GE环境下,n=10。如图27所示,发送端设备和接收端设备的主芯片均包括:依次排布的MAC层/RS、DTE 100G XS、PMA、DTE AUI XS和PMA,以及位于RS层与PCS之间的100GMII接口和位于PMA层与PMA层之间的100GAUI-1接口;发送端设备和接收端设备的光模块均包括:依次排布的PMA、PHY AUI XS、PMA和集成有PMD功能和PHY 100G XS功能的PMD/PHY 100G XS,以及位于PMD/PHY 100G XS与medium之间的MDI接口。其中,MAC层/RS为100G电通道下的层级标为100G MAC/RS。在100GAUI-1接口的应用环境下,发送端设备和接收端设备具有的Bit Mux架构为4:1架构,且该发送端设备和接收端设备进行传输的数据流仅包括一个FEC码字。
发送端设备的主芯片先将待传输的数据流通过MAC层/RS、DTE 100G XS、PMA、DTEAUI XS和PMA层,从100GAUI-1接口传输至光模块中,其中,主芯片将待传输的数据流进行处理的过程与上述图24所示架构下,主芯片对将待传输的数据流进行处理的过程相同,主芯片的DTE AUI XS的对待传输的数据流进行处理的过程与图25和图26所示的数据传输方法的过程相同,可以参考上述图24所示相关实施例,本申请对此不再赘述。
由于该100GAUI-1接口仅包含一个虚拟通道,因此,假设发送端设备的光模块为U3,接收端设备的光模块为U4,如图28所示,光模块U3的PHY AUI XS首先执行步骤801,由于仅接收到1个第三数据流,该1个第三数据流不存在偏移和通道乱序,因此,光模块U3的PHYAUI XS仅需对该1个第三数据流执行对齐锁定处理(该过程可以简称为对齐锁定)。然后,光模块U3的PHY AUI XS执行步骤802,将该1个第三数据流以FEC符号为粒度进行映射得到4个第二数据流的过程可以包括主芯片光模块U3的PHY AUI XS首先执行步骤8021,将1个第三数据流的对齐字移除(该过程可以简称为对齐字移除),然后执行步骤8022,将移除对齐字的1个第三数据流以FEC符号为粒度,映射得到4个第二数据流,该步骤8022可以用符号分发(1:4)表示,之后分别执行步骤8023(值得说明的是,步骤8023也可以与步骤8022同步执行)和步骤8024以按照1个第三数据流与4个第二数据流的映射关系,对4个第二数据流添加对齐字(步骤8023的过程可以简称为对齐字映射,步骤8024的过程可以简称为添加对齐字)。之后,执行步骤803,将4个第二数据流进行FEC码字纠错处理,得到纠错后的4个第二数据流(该过程可以简称为RS错误修正)。之后,可以执行步骤804,将该纠错后的4个第二数据流进行再编码(该过程可以简称为再编码)。最后,由于100AUI-1场景下,发送端设备为1个输出通道,该输出通道对应的数据格式为以比特为粒度,因此,光模块U3的PHY AUI XS最后执行步骤805,将4个第二数据流以比特为粒度映射至1个第四数据流,该步骤805可以用PMA(4:1)表示。至此,该数据传输方法执行完毕。
接收端设备的光模块U4在接收到上述1个第四数据流后,如图29所示,光模块U4的PHY AUI XS首先执行步骤901,将该1个第四数据流解映射得到4个第二数据流。然后,执行步骤902,将该4个第二数据流进行执行对齐锁定、去偏移和重排序处理(该过程可以简称为对齐锁定、去偏移和通道重排序)。之后,执行步骤903,对该4个第二数据流进行再编码的解码处理(该过程可以简称为再编码的解码),之后,执行步骤904,将解码处理后的4个第二数据流进行FEC码字纠错处理得到纠正后的4个第二数据流(该过程可以简称为RS错误修正),然后,执行步骤905,将该纠正后的4个第二数据流以FEC符号为粒度进行映射得到1个第三数据流的过程可以包括光模块U4的PHY AUIXS首先执行步骤9051,将4个第二数据流的对齐字移除(该过程可以简称为对齐字移除),然后执行步骤9052,将移除对齐字的4个第二数据流以FEC符号为粒度,映射得到1个第三数据流,该步骤9052可以用符号分发(4:1)表示,之后分别执行步骤9053(值得说明的是,步骤9053也可以与步骤9052同步执行)和步骤9054以按照4个第二数据流与1个第三数据流的映射关系,对1个第三数据流添加对齐字(步骤9053的过程可以简称为对齐字映射,步骤9054的过程可以简称为添加对齐字)。然后,将添加对齐字的1个第三数据流输出至接收端设备的主芯片,由主芯片进行进一步处理,该处理过程可以参考上述图24所示相关实施例,本申请对此不再赘述。至此,该数据传输方法执行完毕。
需要说明的是,上述实施例中,发送端设备的光模块U3不需要必须将该纠错后的4个第二数据流进行再编码,相应的,接收端设备的光模块U4不需要对该4个第二数据流进行再编码的解码处理,则上述实施例中步骤804和步骤903为可选步骤。
综上所述,本申请实施例提供的数据传输方法,由于发送端设备将x个第二数据流以n(n≥2)比特为粒度映射至z个第三数据流进而输出,其映射粒度相较于Bit Mux架构中的映射粒度大,因此,当第三数据流中携带有突发错误数据时,若接收端设备进行FEC符号纠错,该突发错误数据会被转换至较少的FEC符号错误,减小了出现错误的FEC符号错误数量,提高FEC码字纠错处理的成功率,提高纠错性能,保证后续数据传输的正确率。
进一步的,当发送端设备和接收端设备均包括主芯片和光模块时,由于该数据传输方法中发送端设备的主芯片和光模块,以及接收端设备的主芯片和光模块均执行了FEC码字纠错处理,该FEC码字纠错处理可以记录被纠正的突发错误数据,使得工作人员可以通过该记录的突发错误数据,判定数据传输过程的中,产生该突发错误数据(故障)的位置等信息,评定数据传输性能,实现了对C2M链路性能的监控和故障的定位。
进一步的,当n=10时,发送端设备可以将x个第二数据流以10比特(FEC符号)为粒度映射至z个第三数据流进而输出,这样在减少包含突发错误数据的FEC符号的个数的同时,使得该数据传输方法可以兼容IEEE802.3ck的应用场景,在该应用场景中运算复杂度较低。
进一步的,由于对x个第二数据流进行了FEC码字纠错处理,因而,提高了数据传输的正确率。同时,由于该数据传输方法对x个第二数据流进行了再编码处理,提高了数据的保护级别,进一步保障了数据传输的可靠性,同时,由于再编码的编码方式较多,使得该数据传输方法可以适配更多不同编码的应用场景,提高了该数据传输方法的通用性。
需要说明的是,前述“/”表示或的关系。本申请实施例提供的数据传输方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内。示例的,前述步骤107、步骤209、步骤309或步骤409在实际实现时可以不执行。又或者,接收端的FEC层可以和前述接收端设备中执行FEC码字纠错处理的模块进行整合,因此本申请不再赘述。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
本申请实施例提供一种数据传输装置1,如图30所示,应用于发送端设备,该数据传输装置1包括:
解复用模块11、映射模块12和输出模块13。
解复用模块11,用于对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,y个第一数据流是经过比特复用处理得到的,例如实现上述方法实施例中步骤111、步骤112、步骤121、步骤122、步骤131、步骤132、步骤141和步骤142。
映射模块12,用于将x个第二数据流以n比特为粒度,映射得到z个第三数据流,例如实现上述方法实施例中步骤113、步骤123、步骤133和步骤143。
输出模块13,用于将z个第三数据流通过输出通道输出,例如实现上述方法实施例中步骤114。其中,y,x,n和z均为正整数,且n≥2。
综上所述,本申请实施例提供的数据传输装置,由映射模块将x个第二数据流以n(n≥2)比特为粒度映射至z个第三数据流进而输出,其映射粒度相较于Bit Mux架构中的映射粒度大,因此,发送端设备和接收端设备在进行数据传输的过程中,可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
可选地,输出模块13,用于:将z个第三数据流以n比特为粒度,映射得到x个第五数据流,将x个第五数据流以q比特为粒度,映射得到s个第四数据流,将s个第四数据流通过输出通道输出,例如实现上述方法实施例中步骤204、步骤205、步骤501、步骤502和步骤503。
或者,将z个第三数据流以n比特为粒度,映射得到s个第四数据流中,将s个第四数据流通过输出通道输出,例如实现上述方法实施例中步骤304和步骤305;其中,s和q为正整数,且q≥2。
可选地,输出模块13,用于:将z个第三数据流以n比特为粒度,映射得到x个第五数据流;
将x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流;
将s个第四数据流通过输出通道输出,例如实现上述方法实施例中步骤404、步骤405、步骤601、步骤602和步骤603,其中,s为正整数。
可选地,x个第二数据流包括至少一个前馈纠错FEC码字的数据,如图31所示,数据传输装置1在图30所示的基础上还包括:
纠错处理模块14,用于在将x个第二数据流的数据以n比特为粒度,映射得到z个第三数据流之前,对x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
可选地,当x个第二数据流包括多个FEC码字的数据时,如图32所示,数据传输装置1在图31所示的基础上还包括:
解映射模块15,用于在对x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,对x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据。
上述图31所示的纠错处理模块14,还用于对以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据,将纠错后的数据以FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
可选地,z=1,映射模块12,用于:轮询x个第二数据流中的每个第二数据流;
将轮询得到的每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
可选地,z≥2,x≥2,映射模块12,用于:依次轮询所述x个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述x个第二数据流的数据完全映射得到z个第三数据流,每次轮询得到所述每个第二数据流中连续的n比特数据;
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
可选地,在轮询每x个第二数据流时,轮询顺序满足以下任一种:
先轮询偶数序列号的第二数据流,后轮询奇数序列号的第二数据流;
先轮询奇数序列号的第二数据流,后轮询偶数序列号的第二数据流;
或者,按照序列号递增或递减的顺序轮询第二数据流。
可选地,n为一个FEC符号包含的比特的数量。
可选地,输出的数据流的数量小于或等于可用的输出通道个数,或者,输出的数据流的数量等于预设输出通道个数。
可选地,如图33所示,数据传输装置1在图32所示的基础上还包括:
第一编码模块16,用于在将x个第二数据流以n比特为粒度,映射得到z个第三数据流之前,对x个第二数据流进行内码FEC编码,得到编码后的x个第二数据流。
或者,第一编码模块16用于在将x个第二数据流以n比特为粒度,映射得到z个第三数据流之前,当每个第二数据流携带有校验位时,移除x个第二数据流中每个第二数据流的校验位,将移除校验位后的x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流,第二FEC编码的编码方式与移除校验位之前采用的第一FEC编码的编码方式不同。
本申请实施例提供一种数据传输装置2,如图34所示,应用于接收端设备,数据传输装置2包括:
获取模块21、映射模块22和复用模块23。
获取模块21,用于通过输入通道获取z个第三数据流,例如实现上述方法实施例中步骤105。
映射模块22,用于将z个第三数据流以n比特为粒度,映射得到x个第二数据流,z个第三数据流是以n比特为粒度映射得到的,例如实现上述方法实施例中步骤106、步骤208、步骤308和步骤408。
复用模块23,用于将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流,例如实现上述方法实施例中步骤107、步骤209、步骤309和步骤409。其中,z,n,x和y均为正整数,且n≥2。
综上所述,本申请实施例提供的数据传输装置,由获取模块获取通过输入通道获取z个第三数据流,并由映射模块将z个第三数据流以n比特为粒度,映射得到x个第二数据流,其映射粒度相较于Bit Mux架构中的映射粒度大,因此,发送端设备和接收端设备在进行数据传输的过程中,可以以n比特为传输的单位符号,相较于传统的以1比特为单位符号进行数据传输的方式,若传输的数据中携带有突发错误数据时,错误的单位符号较少,减少了传输过程中错误的单位符号个数。减少突发错误数据扩散,提高数据传输可靠性。
可选地,获取模块21,用于:通过输入通道接收s个第四数据流,将s个第四数据流以q比特为粒度,映射得到x个第五数据流,将x个第五数据流以n比特为粒度,映射得到z个第三数据流,例如实现上述方法实施例中步骤207、步骤505和步骤506。
或者,通过输入通道接收s个第四数据流,将s个第四数据流以n比特为粒度,映射得到z个第三数据流,例如实现上述方法实施例中步骤307。其中,s和q为正整数,且q≥2。
可选地,获取模块21,用于:通过输入通道接收s个第四数据流;
将s个第四数据流以比特为粒度进行解复用处理,得到x个第五数据流;
将x个第五数据流以n比特为粒度,映射得到z个第三数据流,例如实现上述方法实施例中步骤407。其中,s为正整数。
可选地,x个第二数据流包括至少一个前馈纠错FEC码字的数据,如图35所示,数据传输装置2在图34所示的基础上还包括:
纠错处理模块24,用于在将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,对x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
可选地,当z个第三数据流包括多个FEC码字的数据时,如图36所示,数据传输装置2在图35所示的基础上还包括:
解映射模块25,用于在对x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,对x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据。
上述图35所示的纠错处理模块24,还用于对以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据,将纠错后的数据以FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
可选地,z=1,映射模块22,用于:
将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流。
可选地,z≥2,x≥2,所述映射模块22,用于:
依次轮询所述z个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述z个第三数据流的数据完全映射得到x个第二数据流,每次轮询得到所述每个第三数据流中连续的n比特数据:
对于每个第二数据流,任意相邻2次映射得到数据来自于不同的第三数据流。
可选地,对于每个第三数据流,在将任意相邻x次轮询得到的数据映射到不同的x个第二数据流中时,映射顺序满足以下任一种:
先映射偶数序列号的第二数据流,后映射奇数序列号的第二数据流,
先映射奇数序列号的第二数据流,后映射偶数序列号的第二数据流,
或者,按照第二数据流的序列号递增的顺序映射。
可选地,n为一个FEC符号包含的比特的数量。
可选地,如图37所示,数据传输装置2在图36所示的基础上还包括:
第一解码模块26,用于在将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,对x个第二数据流进行内码FEC解码,得到解码后的x个第二数据流,移除解码后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,校验位为发送端设备对x个第二数据流进行内码FEC编码时添加的。
或者,第一解码模块26用于在将x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,将x个第二数据流进行第二FEC解码,得到解码后的x个第二数据流,将解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,第二FEC解码对应的编码方式与第一FEC编码的编码方式不同。
本申请实施例提供一种数据传输系统,包括:发送端设备10和接收端设备20,该发送端设备10用于发送数据,接收端设备20用于接收数据。示例的,该数据传输系统可以为上述图35所示的数据传输系统。其中,根据发送端设备10和接收端设备20所包括的器件的不同,该数据传输系统具有多种结构,本申请实施例以以下几种为例进行说明。
第一种结构,如图38所示,发送端设备10和接收端设备20均包括主芯片,该主芯片与主芯片通过通信连接,该通信连接的方式可以参考上述实施例所示的通信连接方式,本申请实施例对此不再赘述。该发送端设备10和接收端设备20的主芯片可以用于分别对待传输的数据进行以n比特为粒度的处理,例如,发送端设备10的主芯片可以实现上述方法实施例中步骤101至步骤104、步骤201至步骤205、步骤301至步骤305以及步骤401至步骤405;接收端设备10的主芯片可以实现上述方法实施例中步骤105至步骤107、步骤206至步骤209、步骤306至步骤309以及步骤406至步骤409。
第二种结构,如图39所示,发送端设备10和接收端设备20均包括主芯片、CDR芯片和光模块,发送端设备10的CDR芯片通过AUI接口分别与主芯片和光模块连接,接收端设备20中的主芯片、CDR芯片和光模块与发送端设备10中的主芯片、CDR芯片和光模块连接关系相同。其中,发送端设备10中的主芯片和CDR芯片可以用于对待传输的数据进行以n比特为粒度的处理,得到处理后的待传输的数据,进而将该处理后的待传输的数据传输至光模块;光模块用于将接收到的该处理后的待传输的数据进行直接发送,或者适配其他接收端设备,该其他接收端设备指的是接收的数据格式和输入通道数与处理后的待传输的数据的数据格式和个数不同的设备,例如可以实现上述方法实施例中步骤101至步骤104、步骤201至步骤205、步骤301至步骤305、步骤401至步骤405、步骤501至步骤503以及步骤601至步骤603。接收端设备20中的光模块用于将接收数据;主芯片和CDR芯片可以用于对接收的数据进行与发送端设备相应的处理,例如可以实现上述方法实施例中步骤105至步骤107、步骤206至步骤209、步骤306至步骤309、步骤406至步骤409以及步骤504至步骤506。
第三种结构,如图40所示,发送端设备10和接收端设备20均包括主芯片和光模块,该发送端设备10和接收端设备20中的主芯片均通过AUI接口与光模块连接,其中,发送端设备10和接收端设备20中的主芯片的作用与上述第二种结构中的作用相同,由于发送端设备10和接收端设备20中的光模块均集成有CDR芯片,则,光模块具有上述第二种结构中CDR芯片和光膜块的作用。
第四种结构,如图41所示,发送端设备10包括:主芯片、CDR芯片和光模块,接收端设备20包括主芯片和光模块,该发送端设备10中的主芯片、CDR芯片和光模块与上述第二种结构中发送端设备10中的主芯片、CDR芯片和光模块的连接方式相同,且作用对应相同。接收端设备20中的主芯片和光模块与上述第三种结构中接收端设备20中的主芯片和光模块的连接方式相同,且作用对应相同。本申请实施例对此不做赘述。
第五种结构,如图42所示,发送端设备10包括:主芯片和光模块,接收端设备20包括主芯片、CDR芯片和光模块,发送端设备10中的主芯片和光模块与上述第三种结构中发送端设备10中的主芯片和光模块的连接方式相同,且作用对应相同。接收端设备20中的主芯片、CDR芯片和光模块与上述第二种结构中接收端设备20中的主芯片、CDR芯片和光模块的连接方式相同,且作用对应相同。本申请实施例对此不做赘述。
本申请实施例提供的发送端设备和接收设备的实体结构可以参考前述图38至图42所示的系统中相应的结构,本申请实施例对此不再赘述。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本申请提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
Claims (38)
1.一种数据传输方法,其特征在于,应用于发送端设备,所述方法包括:
对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,所述y个第一数据流是经过比特复用处理得到的;
将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流;
将所述z个第三数据流通过输出通道输出;
其中,所述y、所述x、所述n和所述z均为正整数,且所述n≥2。
2.根据权利要求1所述的方法,其特征在于,所述将所述z个第三数据流通过输出通道输出,包括:
将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以q比特为粒度,映射得到s个第四数据流,将所述s个第四数据流通过所述输出通道输出;
或者,将所述z个第三数据流以n比特为粒度,映射得到s个第四数据流中,将所述s个第四数据流通过所述输出通道输出;
其中,所述s为正整数,所述q≥2。
3.根据权利要求1所述的方法,其特征在于,所述将z个第三数据流通过输出通道输出,包括:
将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流;
将所述x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流;
将所述s个第四数据流通过所述输出通道输出,其中,所述s为正整数。
4.根据权利要求1至3任一所述的方法,其特征在于,所述x个第二数据流包括至少一个前馈纠错FEC码字的数据,在所述将所述x个第二数据流的数据以n比特为粒度,映射得到z个第三数据流之前,所述方法还包括:
对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
5.根据权利要求4所述的方法,其特征在于,当所述x个第二数据流包括多个FEC码字的数据时,在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,所述方法还包括:
对所述x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据;
所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流,包括:
对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据;
将所述纠错后的数据以所述FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
6.根据权利要求1至5任一所述的方法,其特征在于,z=1,
所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
轮询所述x个第二数据流中的每个第二数据流;
将轮询得到的所述每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
7.根据权利要求1至5任一所述的方法,其特征在于,z≥2,x≥2,
所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流,包括:
依次轮询所述x个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述x个第二数据流的数据完全映射得到z个第三数据流,每次轮询得到所述每个第二数据流中连续的n比特数据;
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
8.根据权利要求1至7任一所述的方法,其特征在于,所述n为一个FEC符号包含的比特的数量。
9.根据权利要求1至8任一所述的方法,其特征在于,输出的数据流的数量小于或等于可用的输出通道个数,或者,输出的数据流的数量等于预设输出通道个数。
10.根据权利要求1至9任一所述的方法,其特征在于,在所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流中之前,所述方法还包括:
对所述x个第二数据流进行内码FEC编码,得到编码后的x个第二数据流;
或者,当每个第二数据流携带有校验位时,移除所述x个第二数据流中每个数据的校验位,
将移除校验位后的x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流,所述第二FEC编码的编码方式与移除所述校验位之前采用的第一FEC编码的编码方式不同。
11.一种数据传输方法,其特征在于,应用于接收端设备,所述方法包括:
通过输入通道获取z个第三数据流;
将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,所述z个第三数据流是以n比特为粒度映射得到的;
将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流;
其中,所述z,所述n,所述x和所述y均为正整数,且所述n≥2。
12.根据权利要求11所述的方法,其特征在于,所述通过输入通道获取z个第三数据流,包括:
通过所述输入通道接收s个第四数据流,将所述s个第四数据流以q比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流;
或者,通过所述输入通道接收s个第四数据流,将所述s个第四数据流以n比特为粒度,映射得到所述z个第三数据流;
其中,所述s为正整数,且所述q≥2。
13.根据权利要求11所述的方法,其特征在于,所述通过输入通道获取z个第三数据流,包括:
通过所述输入通道接收s个第四数据流;
将所述s个第四数据流以比特为粒度进行解复用处理,得到x个第五数据流;
将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流,其中,所述s为正整数。
14.根据权利要求11至13任一所述的方法,其特征在于,所述x个第二数据流包括至少一个前馈纠错FEC码字的数据,在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,所述方法还包括:
对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
15.根据权利要求14所述的方法,其特征在于,当所述z个第三数据流包括多个FEC码字的数据时,在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,所述方法还包括:
对所述x个第二数据流,进行FEC符号为粒度的解映射处理,以FEC码字为单位的数据;
所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流,包括:
对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据;
将所述纠错后的数据以所述FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
16.根据权利要求11至15任一所述的方法,其特征在于,z=1,
所述将z个第三数据流以n比特为粒度,映射得到x个第二数据流,包括:
将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流。
17.根据权利要求11至15任一所述的方法,其特征在于,z≥2,x≥2,
所述将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,包括:
依次轮询所述z个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述z个第三数据流的数据完全映射得到x个第二数据流,每次轮询得到所述每个第三数据流中连续的n比特数据;
对于每个第二数据流,任意相邻2次映射得到数据来自于不同的第三数据流。
18.根据权利要求11至17任一所述的方法,其特征在于,所述n为一个FEC符号包含的比特的数量。
19.根据权利要求11至18任一所述的方法,其特征在于,在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,所述方法还包括:
对所述x个第二数据流进行内码FEC解码,得到解码后的x个第二数据流,移除所述解码处理后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,所述校验位为发送端设备对所述x个第二数据流进行内码FEC编码时添加的;
或者,将所述x个第二数据流进行第二FEC解码,得到解码后的x个第二数据流,将所述解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,所述第二FEC解码对应的编码方式与所述第一FEC编码的编码方式不同。
20.一种数据传输装置,其特征在于,应用于发送端设备,所述装置包括:
解复用模块,用于对获取到的y个第一数据流进行解复用处理,得到x个第二数据流,所述y个第一数据流是经过比特复用处理得到的;
映射模块,用于将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流;
输出模块,用于将所述z个第三数据流通过输出通道输出;
其中,所述y,所述x,所述n和所述z均为正整数,且所述n≥2。
21.根据权利要求20所述的装置,其特征在于,所述输出模块,用于:
将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以q比特为粒度,映射得到s个第四数据流,将所述s个第四数据流通过所述输出通道输出;
或者,将所述z个第三数据流以n比特为粒度,映射得到s个第四数据流中,将所述s个第四数据流通过所述输出通道输出;
其中,所述q和所述s均为正整数,且所述q≥2。
22.根据权利要求20所述的装置,其特征在于,所述输出模块,用于:
将所述z个第三数据流以n比特为粒度,映射得到x个第五数据流;
将所述x个第五数据流以比特为粒度进行复用处理,得到s个第四数据流;
将所述s个第四数据流通过所述输出通道输出,其中,所述s为正整数。
23.根据权利要求20至22任一所述的装置,其特征在于,所述x个第二数据流包括至少一个前馈纠错FEC码字的数据,所述装置还包括:
纠错处理模块,用于在所述将所述x个第二数据流的数据以n比特为粒度,映射得到z个第三数据流之前,对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
24.根据权利要求23所述的装置,其特征在于,当所述x个第二数据流包括多个FEC码字的数据时,所述装置还包括:
解映射模块,用于在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,对所述x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据;
所述纠错处理模块,用于对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据,将所述纠错后的数据以所述FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
25.根据权利要求20至24任一所述的装置,其特征在于,z=1,
所述映射模块,用于轮询所述x个第二数据流中的每个第二数据流;
将轮询得到的所述每个第二数据流中连续的n比特数据,依次映射得到1个第三数据流。
26.根据权利要求20至24任一所述的装置,其特征在于,z≥2,x≥2,
所述映射模块,用于依次轮询所述x个第二数据流的每个第二数据流,并将轮询得到的数据映射至第三数据流,直至所述x个第二数据流的数据完全映射得到z个第三数据流,每次轮询得到所述每个第二数据流中连续的n比特数据;
对于每个第二数据流,任意相邻两次轮询得到的数据映射到不同的第三数据流中。
27.根据权利要求20至26任一所述的装置,其特征在于,所述n为一个FEC符号包含的比特的数量。
28.根据权利要求20至27任一所述的装置,其特征在于,输出的数据流的数量小于或等于可用的输出通道个数,或者,输出的数据流的数量等于预设输出通道个数。
29.根据权利要求20至28任一所述的装置,其特征在于,所述装置还包括:
第一编码模块,用于在所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流之前,对所述x个第二数据流进行内码FEC编码,得到编码后的x个第二数据流;
或者,用于在所述将所述x个第二数据流以n比特为粒度,映射得到z个第三数据流之前,当每个第二数据流携带有校验位时,移除所述x个第二数据流中每个第二数据流的校验位,将移除校验位后的x个第二数据流进行第二FEC编码,得到编码后的x个第二数据流,所述第二FEC编码的编码方式与移除所述校验位之前采用的第一FEC编码的编码方式不同。
30.一种数据传输装置,其特征在于,应用于接收端设备,所述装置包括:
获取模块,用于通过输入通道获取z个第三数据流;
映射模块,用于将所述z个第三数据流以n比特为粒度,映射得到x个第二数据流,所述z个第三数据流是以n比特为粒度映射得到的;
复用模块,用于将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流;
其中,所述z,所述n,所述x和所述y均为正整数,且所述n≥2。
31.根据权利要求30所述的装置,其特征在于,所述获取模块,用于:
通过所述输入通道接收s个第四数据流,将所述s个第四数据流以q比特为粒度,映射得到x个第五数据流,将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流;
或者,通过所述输入通道接收s个第四数据流,将所述s个第四数据流以n比特为粒度,映射得到所述z个第三数据流;
其中,所述s和所述q为正整数,且所述q≥2。
32.根据权利要求30所述的装置,其特征在于,所述获取模块,用于:
通过所述输入通道接收s个第四数据流;
将所述s个第四数据流以比特为粒度进行解复用处理,得到x个第五数据流;
将所述x个第五数据流以n比特为粒度,映射得到所述z个第三数据流;
其中,所述s为正整数。
33.根据权利要求30至32任一所述的装置,其特征在于,所述x个第二数据流包括至少一个前馈纠错FEC码字的数据,所述装置还包括:
纠错处理模块,用于在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流。
34.根据权利要求33所述的装置,其特征在于,当所述z个第三数据流包括多个FEC码字的数据时,所述装置还包括:
解映射模块,用于在所述对所述x个第二数据流进行FEC码字纠错处理,得到纠错后的x个第二数据流之前,对所述x个第二数据流,进行FEC符号为粒度的解映射处理,得到以FEC码字为单位的数据;
所述纠错处理模块,用于对所述以FEC码字为单位的数据进行FEC码字纠错处理,得到纠错后的数据,将所述纠错后的数据以FEC符号为粒度进行映射处理,得到纠错后的x个第二数据流。
35.根据权利要求30至34任一所述的装置,其特征在于,z=1,
所述映射模块,用于将1个第三数据流中连续的n比特数据,依次映射得到x个第二数据流。
36.根据权利要求30至34任一所述的装置,其特征在于,z≥2,x≥2,
所述映射模块,用于:
依次轮询所述z个第三数据流的每个第三数据流,并将轮询得到的数据映射至第二数据流,直至所述z个第三数据流的数据完全映射得到x个第二数据流,每次轮询得到所述每个第三数据流中连续的n比特数据:
对于每个第二数据流,任意相邻2次映射得到数据来自于不同的第三数据流。
37.根据权利要求30至36任一所述的装置,其特征在于,所述n为一个FEC符号包含的比特的数量。
38.根据权利要求30至37任一所述的装置,其特征在于,所述装置还包括:
第一解码模块,用于在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,对所述x个第二数据流进行内码FEC解码,得到解码后的x个第二数据流,移除所述解码后的x个第二数据流包含的校验位,得到移除校验位后的x个第二数据流,所述校验位为发送端设备对所述x个第二数据流进行内码FEC编码时添加的;
或者,用于在所述将所述x个第二数据流以比特为粒度进行复用处理,得到y个第一数据流之前,将所述x个第二数据流进行第二FEC解码,得到解码后的x个第二数据流,将所述解码后的x个第二数据流进行第一FEC编码,得到编码后的x个第二数据流,所述第二FEC解码对应的编码方式与所述第一FEC编码的编码方式不同。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910169228.6A CN111669250B (zh) | 2019-03-06 | 2019-03-06 | 数据传输方法、装置及系统 |
EP20767391.4A EP3930221A4 (en) | 2019-03-06 | 2020-02-26 | METHOD, APPARATUS, AND DATA TRANSMISSION SYSTEM |
PCT/CN2020/076806 WO2020177596A1 (zh) | 2019-03-06 | 2020-02-26 | 数据传输方法、装置及系统 |
US17/466,903 US11936475B2 (en) | 2019-03-06 | 2021-09-03 | Method, apparatus, and system for improving reliability of data transmission involving an ethernet device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910169228.6A CN111669250B (zh) | 2019-03-06 | 2019-03-06 | 数据传输方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111669250A true CN111669250A (zh) | 2020-09-15 |
CN111669250B CN111669250B (zh) | 2021-06-04 |
Family
ID=72337017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910169228.6A Active CN111669250B (zh) | 2019-03-06 | 2019-03-06 | 数据传输方法、装置及系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11936475B2 (zh) |
EP (1) | EP3930221A4 (zh) |
CN (1) | CN111669250B (zh) |
WO (1) | WO2020177596A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113315572A (zh) * | 2021-03-30 | 2021-08-27 | 阿里巴巴新加坡控股有限公司 | 光模块物理链路的检测方法及装置、光模块、光传输系统 |
WO2022062946A1 (zh) * | 2020-09-24 | 2022-03-31 | 华为技术有限公司 | 一种数据编码方法、数据解码方法及通信装置 |
WO2023040466A1 (zh) * | 2021-09-18 | 2023-03-23 | 华为技术有限公司 | 一种编码方法、译码方法以及相关装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024059847A1 (en) * | 2022-09-16 | 2024-03-21 | Cisco Technology, Inc. | Symbol multiplexing physical medium attachment (pma) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003087984A2 (en) * | 2002-04-08 | 2003-10-23 | Celion Networks, Inc. | Apparatus and method for transmitting 10 gigabit ethernet lan signals over a transport system |
US20030217319A1 (en) * | 2002-05-14 | 2003-11-20 | Vinayak Tripathi | Reliability-based type-ii hybrid arq scheme |
US7725029B1 (en) * | 2003-08-28 | 2010-05-25 | Eric Bernier | Technique for asymmetric transport |
CN101902303A (zh) * | 2009-05-27 | 2010-12-01 | 中国科学院微电子研究所 | 一种实现交织与解交织复用的装置及方法 |
EP2469887A1 (en) * | 2010-12-21 | 2012-06-27 | Alcatel Lucent | Network node for an optical transport network |
CN103354983A (zh) * | 2012-11-12 | 2013-10-16 | 华为技术有限公司 | 以太数据处理的方法和装置 |
CN104468441A (zh) * | 2013-09-13 | 2015-03-25 | 福建联拓科技有限公司 | 数字对讲机的信号编码调制/解调译码方法及装置 |
WO2015089741A1 (zh) * | 2013-12-17 | 2015-06-25 | 华为技术有限公司 | 接收数据的方法及设备,以及发送数据的方法及设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9337948B2 (en) * | 2003-06-10 | 2016-05-10 | Alexander I. Soto | System and method for performing high-speed communications over fiber optical networks |
US7729384B1 (en) * | 2005-11-01 | 2010-06-01 | Metanoia Technologies, Inc. | Multiple channel digital subscriber line framer/deframer system and method |
CN104426631B (zh) * | 2013-09-06 | 2018-03-06 | 华为技术有限公司 | 对数据进行处理的方法及装置 |
US20200072889A1 (en) * | 2018-09-05 | 2020-03-05 | Nxp B.V. | Physical layer device and method for performing physical layer operations in a communications network |
US10979209B1 (en) * | 2018-10-08 | 2021-04-13 | Acacia Communications, Inc. | System, method, and apparatus for mapping synchronous and asynchronous data |
-
2019
- 2019-03-06 CN CN201910169228.6A patent/CN111669250B/zh active Active
-
2020
- 2020-02-26 WO PCT/CN2020/076806 patent/WO2020177596A1/zh unknown
- 2020-02-26 EP EP20767391.4A patent/EP3930221A4/en active Pending
-
2021
- 2021-09-03 US US17/466,903 patent/US11936475B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003087984A2 (en) * | 2002-04-08 | 2003-10-23 | Celion Networks, Inc. | Apparatus and method for transmitting 10 gigabit ethernet lan signals over a transport system |
US20030217319A1 (en) * | 2002-05-14 | 2003-11-20 | Vinayak Tripathi | Reliability-based type-ii hybrid arq scheme |
US7725029B1 (en) * | 2003-08-28 | 2010-05-25 | Eric Bernier | Technique for asymmetric transport |
CN101902303A (zh) * | 2009-05-27 | 2010-12-01 | 中国科学院微电子研究所 | 一种实现交织与解交织复用的装置及方法 |
EP2469887A1 (en) * | 2010-12-21 | 2012-06-27 | Alcatel Lucent | Network node for an optical transport network |
CN103354983A (zh) * | 2012-11-12 | 2013-10-16 | 华为技术有限公司 | 以太数据处理的方法和装置 |
CN104468441A (zh) * | 2013-09-13 | 2015-03-25 | 福建联拓科技有限公司 | 数字对讲机的信号编码调制/解调译码方法及装置 |
WO2015089741A1 (zh) * | 2013-12-17 | 2015-06-25 | 华为技术有限公司 | 接收数据的方法及设备,以及发送数据的方法及设备 |
Non-Patent Citations (1)
Title |
---|
SPREADTRUM COMMUNICATIONS: "《Performance analysis of channel coding schemes for NR》", 《3GPP TSG RAN WG1 MEETING #86BIS R1-1608922》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022062946A1 (zh) * | 2020-09-24 | 2022-03-31 | 华为技术有限公司 | 一种数据编码方法、数据解码方法及通信装置 |
CN113315572A (zh) * | 2021-03-30 | 2021-08-27 | 阿里巴巴新加坡控股有限公司 | 光模块物理链路的检测方法及装置、光模块、光传输系统 |
CN113315572B (zh) * | 2021-03-30 | 2023-11-14 | 阿里巴巴新加坡控股有限公司 | 光模块物理链路的检测方法及装置、光模块、光传输系统 |
WO2023040466A1 (zh) * | 2021-09-18 | 2023-03-23 | 华为技术有限公司 | 一种编码方法、译码方法以及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020177596A1 (zh) | 2020-09-10 |
CN111669250B (zh) | 2021-06-04 |
US20210399831A1 (en) | 2021-12-23 |
EP3930221A1 (en) | 2021-12-29 |
EP3930221A4 (en) | 2022-03-30 |
US11936475B2 (en) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111669250B (zh) | 数据传输方法、装置及系统 | |
US7296211B2 (en) | System and method for transferring data on a data link | |
KR101115440B1 (ko) | Fec 코드 이더넷 프레임을 구분하는 방법 및 장치 | |
US8495475B2 (en) | FEC frame structuring device and FEC frame structuring method | |
US7986622B2 (en) | Method and system for physical layer aggregation | |
US9954644B2 (en) | Ethernet data processing method, physical layer chip and Ethernet equipment | |
JP5522547B2 (ja) | データエラー報告を実現するための方法およびデバイス | |
US20220077875A1 (en) | Data Transmission Method, Encoding Method, Decoding Method, Apparatus, Device, and Storage Medium | |
WO2008145056A1 (en) | Method and device for information block coding and sync detecting | |
US20100262887A1 (en) | High Integrity Data Network System and Method | |
WO2015027755A1 (zh) | 一种物理层编解码方法及其装置 | |
WO2022088709A1 (zh) | 一种以太网的编码方法及装置 | |
US8689089B2 (en) | Method and system for encoding for 100G-KR networking | |
US6678854B1 (en) | Methods and systems for providing a second data signal on a frame of bits including a first data signal and an error-correcting code | |
WO2021017890A1 (zh) | 一种通信方法和通信设备 | |
WO2024055954A1 (zh) | 一种数据处理方法以及数据处理装置 | |
WO2023169194A1 (zh) | 一种数据处理方法及第二通信装置 | |
WO2021134694A1 (zh) | 一种数据发送方法、接收方法、发送装置和接收装置 | |
CN115766047A (zh) | 一种数据传输方法、设备、可读存储介质和芯片系统 | |
CN114584333A (zh) | 一种数据传输方法、通信装置及通信系统 | |
CN116073944A (zh) | 数据传输的方法、装置、设备、系统及可读存储介质 | |
CN113381836A (zh) | 一种线路编码方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |