WO2020133237A1 - 一种数据传输的方法、网络芯片以及通信系统 - Google Patents

一种数据传输的方法、网络芯片以及通信系统 Download PDF

Info

Publication number
WO2020133237A1
WO2020133237A1 PCT/CN2018/124957 CN2018124957W WO2020133237A1 WO 2020133237 A1 WO2020133237 A1 WO 2020133237A1 CN 2018124957 W CN2018124957 W CN 2018124957W WO 2020133237 A1 WO2020133237 A1 WO 2020133237A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
transmission
time slot
interface
stream data
Prior art date
Application number
PCT/CN2018/124957
Other languages
English (en)
French (fr)
Inventor
胡俊
邱贤文
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201880100557.9A priority Critical patent/CN113287266B/zh
Priority to PCT/CN2018/124957 priority patent/WO2020133237A1/zh
Publication of WO2020133237A1 publication Critical patent/WO2020133237A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station

Definitions

  • the present application relates to the field of communications, and in particular, to a data transmission method, network chip, and communication system.
  • FEC Forward error correction
  • coding is a technology for controlling transmission errors in a communication system. Errors are reduced by adding additional information to the transmitted data to recover from errors. As the serial data rate continues to increase, it is close to 56G bits per second per channel, and the impact of the signal-to-noise ratio on high-speed signals is increasing. Therefore, FEC technology needs to be used to correct errors in the transmitted data to reduce the bit error rate.
  • one encoder corresponds to one service interface, and the encoder encodes the received data of the service interface.
  • the encoder encodes the received data of the service interface.
  • PMA physical media access
  • the service interface and the encoder are in one-to-one correspondence. If there are multiple service interfaces, an encoder that corresponds to the multiple service interfaces in one-to-one correspondence is required, which is prone to waste resources.
  • a Reed Solomon forward error correction (Reed Solomon forward error correction, RS-FEC) encoder can only support a single Ethernet port, that is, the RS-FEC encoder can only process data transmitted by a service interface. If there are multiple service interfaces, multiple one-to-one corresponding RS-FEC encoders are required, which is easy to cause waste of resources.
  • RS-FEC Reed Solomon forward error correction
  • the embodiments of the present application provide a data transmission method, a network chip, and a communication system, which are used to flexibly access multiple different or same service interfaces, and can share an RS-FEC encoder to improve RS-FEC encoding
  • the utilization of resources saves network resources.
  • the first aspect of the present application provides a data transmission method, including:
  • first transmission data and second transmission data where the first transmission data and the second transmission data are any two sets of transmission data among multiple sets of transmission data corresponding to multiple service interfaces; the first transmission is transmitted through the channel encoder
  • the time slot performs channel coding on the first transmission data to obtain first stream data, and the channel encoder encodes the second transmission data in the second transmission slot to obtain second stream data, the first The transmission time slot and the second transmission time slot are different time slots; after that, the first stream data is sent to the receiving end corresponding to the first stream data, and the second stream data is sent to the second stream The receiver corresponding to the data.
  • multiple service interfaces can be accessed, and multiple sets of transmission data corresponding to the multiple service interfaces can be obtained, and each set of transmission data has a corresponding transmission time slot. Therefore, the same channel encoder can be used to encode each group of transmission data in the transmission time slot corresponding to each group of transmission data.
  • the first transmission data is encoded in the first transmission time slot
  • the first transmission data may be any one of the multiple groups of transmission data
  • the second transmission data is encoded in the second transmission time slot.
  • the second transmission data is any one of the plurality of transmission data except the first transmission data.
  • the first transmission slot is different from the second transmission slot.
  • the same channel encoder can be used to encode each set of transmission data in the corresponding transmission time slot. It can realize that multiple service interfaces share an encoder, which can realize the efficient use of the encoder and save network resources.
  • the first stream data is sent to the receiving end corresponding to the first stream data
  • the second stream data is sent to the receiving end corresponding to the second stream data
  • the first code stream data is distributed to the corresponding physical medium adaptation sublayer PMA according to a preset distribution rule
  • the second code stream data is distributed to the PMA, and transmits the first stream data to the receiving end corresponding to the first stream data through the PMA, and transmits the second stream data to the receiving end corresponding to the second stream data.
  • the first stream data and the second stream data can be sent to the corresponding receiving end through the PMA layer to complete the transmission of the stream data. So that the receiving end can receive the corresponding code stream data.
  • any one of the plurality of service interfaces is an Ethernet service interface or a flexible Ethernet FlexE interface
  • obtaining the first transmission data includes:
  • Ethernet service interfaces or the FlexE interfaces may be connected, and the one or more Ethernet service interfaces or one The data sent by multiple FlexE interfaces can be processed in certain time slots, and multiple Ethernet service interfaces or FlexE interfaces can be accessed through time-division multiplexing, so that multiple Ethernet service interfaces or FlexE interfaces can share the same channel.
  • Encoder to encode Improve the utilization rate of the channel encoder and save network resources.
  • the multiple service interfaces include at least one high-speed interconnect (Interlaken) interface, and then acquiring the first transmission data may include:
  • the data sent by each Interlaken interface can be scrambled and transcoded separately to obtain transmission data that can be processed by the channel encoder. Therefore, the access of the Interlaken interface can be realized, so that one or more Interlaken can use one channel encoder for encoding. Improve the utilization rate of the channel encoder and save network resources.
  • the multiple service interfaces include at least one flexible optical transport network (Flexible optical transport network, FlexO) interface, and then acquiring the first transmission data may include:
  • the data transmitted by the FlexO interface may be directly encoded. Therefore, one or more FlexO interfaces can share the same channel encoder for encoding. Improve the utilization rate of the channel encoder and save network resources.
  • the first transmission data is channel-encoded by the channel encoder in the first transmission slot to obtain the first stream data
  • the second transmission is transmitted by the channel encoder
  • the time slot encodes the second transmission data, and before the second stream data is obtained the method may further include:
  • the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data are determined according to preset rules.
  • the transmission time slot corresponding to each group of scrambling transmission data may be determined according to a preset rule.
  • time-division multiplexing of the channel encoder is realized, so that multiple service interfaces can share the same channel encoder.
  • the determining the first transmission slot of the first transmission data and the second transmission slot of the second transmission data according to a preset rule may include:
  • each service interface accessed may be allocated a transmission time slot in advance. After acquiring the transmission data corresponding to each service interface, the transmission time slot of each group of acquired transmission data can be determined according to the transmission time slot allocated for each service interface accessed in advance. The efficiency of determining the transmission time slot of each group of transmitted data can be improved.
  • the determining the first transmission slot of the first transmission data and the second transmission slot of the second transmission data according to a preset rule may further include:
  • a transmission time slot is allocated for each group of acquired transmission data.
  • the method includes allocating a first transmission time slot for the first transmission data after acquiring the first transmission data.
  • a second transmission slot is allocated for the second transmission data.
  • a transmission time slot may be allocated for each group of transmission data. Real-time allocation of transmission time slots for the acquired transmission data, flexible determination of the transmission time slot corresponding to each group of transmission data, so that the transmission time slot can be allocated according to the working state of the channel encoder, to further improve the utilization rate of the channel encoder.
  • the first transmission time slot performs RS-FEC encoding on the first transmission data to obtain first code stream data, which may include:
  • the first transmission data when channel coding is performed to obtain the first code stream data, the first transmission data may be subjected to code block interleaving and grouping, and an alignment mark may be inserted so that the channel encoder can perform channel processing on the obtained second preprocessed data Encoding, in line with the encoding format of the channel encoder.
  • the channel encoder is an RS-FEC encoder.
  • the channel encoder may be an RS-FEC encoder, therefore, multiple service interfaces may share the same RS-FEC encoder. Improve the utilization rate of RS-FEC encoder and save network resources.
  • a data transmission method in the second aspect of the present application includes:
  • the first code stream data is any set of code stream data among the obtained multiple sets of code stream data
  • the second code stream data is the obtained multiple code stream data Any group of stream data different from the first stream in the group stream data, the multiple groups of stream data correspond to multiple service interfaces; the first stream data is decoded by the decoder in the first transmission time slot To obtain the first transmission data, and the decoder decodes the second stream data in the second transmission time slot to obtain second transmission data, and the first transmission time slot is different from the second transmission time slot.
  • the same decoder is used to decode each set of code stream data in a transmission time slot corresponding to each set of code stream data to obtain a corresponding Transfer data. Therefore, multiple service interfaces can share the same decoder. For example, after the first stream data and the second stream data, the first transmission slot of the first stream data is determined, and after decoding the first stream data in the first transmission slot, it is sent to the corresponding A business interface. Determine the second transmission time slot of the second code stream data, and decode the second code stream data in the second transmission time slot, and then send it to the corresponding second service interface.
  • the embodiments of the present application may accept multiple sets of code stream data corresponding to multiple service interfaces, and each set of code stream data may correspond to different transmission time slots.
  • the same decoder can be used to decode each group of transmission data in the corresponding transmission time slot to obtain the transmission data. Therefore, multiple same or different service interfaces can share the same decoder. Can improve the utilization of decoding resources and save network resources.
  • the method may further include:
  • the accessed service interface may include any one of an Ethernet service interface or a FlexE interface.
  • the first Transmit the data for descrambling, transcoding, etc. to obtain the third stream data corresponding to the Ethernet service interface or FlexE interface.
  • the connected Ethernet service interface or FlexE interface can obtain corresponding code stream data, and access one or more Ethernet service interfaces or FlexE interfaces through time division multiplexing. Multiple Ethernet service interfaces or FlexE interfaces can share the same channel encoder, improve the utilization rate of the channel encoder, and save coding resources.
  • the method may also include:
  • the Interlaken interface may be connected, and the transmission data corresponding to the Interlaken interface may be processed, so that the obtained service data may be transmitted to the corresponding Interlaken interface. Realize the access of one or more Interlaken interfaces, so that multiple Interlaken interfaces can use the same decoder, and can make Interlaken and other interfaces share the same decoder, improve the utilization rate of the decoder, and save decoding resources.
  • the method may also include:
  • the FlexO interface may be connected, and after the first transmission data is obtained, the first transmission data may be directly sent to the first service interface.
  • One or more FlexO interfaces can be accessed so that multiple FlexO interfaces share the same decoder, or FlexO interfaces and other interfaces can share the same decoder. Improve the utilization rate of the decoder and save decoding resources.
  • the first stream data is decoded in the first transmission time slot by the decoder to obtain first transmission data
  • the method may further include:
  • the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data are determined according to preset rules.
  • each set of code stream data can correspond to multiple service interfaces, therefore, the code stream data corresponding to multiple service interfaces can be decoded by time division multiplexing. This allows multiple service interfaces to share the same decoder. Improve the utilization rate of the decoder and save decoding resources.
  • the first transmission time slot corresponding to the first stream data and the second transmission time slot corresponding to the second stream data may be determined according to a preset rule.
  • each service interface accessed may be allocated a transmission time slot in advance.
  • the transmission time slot of each set of code stream data obtained can be determined according to the transmission time slot allocated for each service interface accessed in advance. The efficiency of determining the transmission time slot of each group of transmitted data can be improved.
  • the determining the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data according to a preset rule may further include :
  • Allocate transmission time slots for each set of stream data obtained according to the preset allocation method includes allocating a first transmission time slot for the first code stream data after acquiring the first code stream data. After acquiring the second stream data, a second transmission time slot is allocated for the second stream data. In the embodiment of the present application, after acquiring the code stream data, a transmission time slot may be allocated to each group of code stream data. Real-time allocation of transmission time slots for the obtained code stream data, flexible determination of the transmission time slot corresponding to each group of stream data, so that the transmission time slot can be allocated according to the working state of the decoder, and further improve the utilization rate of the decoder.
  • the decoding the first stream data in the first transmission time slot by the decoder to obtain the first transmission data may include:
  • each group of stream data may be aligned according to the alignment identifier. In order to correct each set of stream data received, to avoid misalignment and loss of stream data. After the alignment data is obtained, the alignment data is decoded by the decoder to improve the accuracy of the obtained code stream data.
  • the decoder is an RS-FEC decoder.
  • the channel encoder may be an RS-FEC encoder, therefore, multiple service interfaces may share the same RS-FEC encoder. Improve the utilization of RS-FEC decoder and save decoding resources.
  • a third aspect of the present application provides a network chip, including: a channel encoder, a time slot scheduler, and a data distributor;
  • the time slot scheduler is used to determine a first transmission time slot of first transmission data and a second transmission time slot of second transmission data, the first transmission data and the second transmission data are corresponding to multiple service interfaces Any two sets of transmission data in multiple sets of transmission data;
  • the channel encoder is used for channel encoding the first transmission data in the first transmission time slot to obtain the first stream data, and encoding the second transmission data in the second transmission time slot by the channel encoder To get the second stream data;
  • the data distributor is configured to distribute the first code stream data to the receiving end corresponding to the first code stream data, and distribute the second code stream to the receiving end corresponding to the second code stream.
  • the data distributor is specifically configured to distribute the first bitstream data to the corresponding physical media adaptation sublayer PMA in the first transmission time slot according to a preset distribution rule, And distributing the second stream data to the PMA in the second transmission time slot to transmit the first stream data to the receiving end corresponding to the first stream data through the PMA, and the second The code stream data is transmitted to the receiving end corresponding to the second code stream data.
  • the network chip may further include: at least one interface of type Ethernet or flexible Ethernet FlexE, a first transcoder, and a first scrambler;
  • Any one of the at least one interface of type Ethernet or flexible Ethernet FlexE is used to receive initial stream data
  • the time slot scheduler is also used to determine the processing time slot of the initial stream data
  • the first transcoder is used to transcode the initial stream data in the processing time slot to obtain transcoded data
  • the first scrambler is used to scramble the transcoded data in the processing time slot to obtain the first transmission data.
  • the network chip may further include: at least one Interlaken interface.
  • Any one of the at least one Interlaken interface is used to receive input data
  • the second scrambler is used to scramble the input data to obtain scrambled data
  • the second transcoder is used to add identification data to the scrambling code data to obtain data of a preset length
  • the third transcoder is used to group the data of the preset length to obtain the first transmission data.
  • the network chip may further include: at least one FlexO interface.
  • Any one of the at least one FlexO interface may be used to receive the first transmission data.
  • the time slot scheduler is specifically configured to determine the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data according to a preset rule.
  • the time slot scheduler is specifically used for:
  • the first transmission slot is determined from the transmission slots corresponding to each service interface according to the first service interface
  • the second transmission is determined from the transmission slots corresponding to each service interface according to the second service interface Time slot.
  • the channel encoder may specifically be used for:
  • the channel encoder is a Reed Solomon forward error correction code RS-FEC encoder.
  • a fourth aspect of the present application provides a network chip, including: a decoder and a time slot scheduler;
  • the time slot scheduler is used to determine a first transmission time slot corresponding to the first stream data and a second transmission time slot corresponding to the second stream data, the first stream data and the second stream data are Any two sets of stream data in multiple sets of stream data corresponding to multiple service interfaces;
  • the decoder is used to decode the first stream data in the first transmission time slot to obtain the first transmission data, and use the decoder to decode the second stream data in the second transmission time slot to obtain the first Two transmission data, the first transmission slot is different from the second transmission slot.
  • the network chip may further include: at least one interface of type Ethernet or flexible Ethernet FlexE, a first descrambler, a first transcoder, and a first distributor;
  • the time slot scheduler is also used to determine the processing time slot of the first transmission data after the decoder decodes the first stream data in the first transmission time slot to obtain the first transmission data;
  • the first descrambler is used to descramble the first transmission data in the processing time slot to obtain descrambled data
  • the first transcoder is used to transcode the descrambled data in the processing time slot to obtain third stream data
  • the first distributor is used to distribute the third bitstream data to any one of at least one interface of type Ethernet or flexible Ethernet FlexE.
  • the network chip may further include: at least one Interlaken interface, a second descrambler, a second transcoder, and a third transcoder;
  • the second transcoder is used for transcoding the first transmission data to obtain a preset length after the decoder decodes the first stream data in the first transmission slot to obtain the first transmission data
  • the data
  • the third transcoder is used to delete the identification data in the data of the preset length to obtain scrambling code data
  • the second descrambler is used to descramble the scrambling code data to obtain service data corresponding to the Interlaken interface;
  • Any one of the at least one Interlaken interface is used to transmit the service data.
  • the network chip may include at least one second transcoder and at least one second scrambler, and each third transcoder and second scrambler may correspond to an Interlaken interface.
  • the network chip may further include: at least one FlexO interface, and a second distributor;
  • the second distributor is configured to send the first transmission data to any one of at least one FlexO interface after the decoder decodes the first bitstream data in the first transmission time slot to obtain the first transmission data interface.
  • the time slot scheduler is specifically configured to determine the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data according to a preset rule.
  • the time slot scheduler is specifically used for:
  • the network chip may further include: a synchronizer
  • the synchronizer is used to acquire the alignment identifier in the first bitstream data in the first transmission time slot;
  • the synchronizer is also used to align the first stream data according to the alignment identifier in the first transmission time slot to obtain alignment data;
  • the decoder is specifically used for decoding the aligned data in the first transmission time slot to obtain the first transmission data.
  • the decoder is an RS-FEC decoder.
  • a fifth aspect of the present application provides a communication system.
  • the communication system may include a first network chip and a second network chip.
  • the first network chip may be the network chip provided in the third aspect or any embodiment of the third aspect of the present application.
  • the second network chip may be the network chip provided in the fourth aspect or any embodiment of the fourth aspect of the present application.
  • the network chip can access multiple service interfaces and obtain multiple sets of transmission data corresponding to the multiple service interfaces, and each set of transmission data has a corresponding transmission time slot. Therefore, the same channel encoder can be used to encode each group of transmission data in the transmission time slot corresponding to each group of transmission data.
  • the first transmission data is encoded in the first transmission time slot
  • the first transmission data may be any one of the multiple groups of transmission data
  • the second transmission data is encoded in the second transmission time slot.
  • the second transmission data is any one of the plurality of transmission data except the first transmission data.
  • the first transmission slot is different from the second transmission slot.
  • the same channel encoder can be used to encode each set of transmission data in the corresponding transmission time slot. It can realize that multiple service interfaces share an encoder, which can realize the efficient use of the encoder and save network resources.
  • FIG. 1 is a schematic diagram of a network architecture in an embodiment of this application
  • FIG. 2 is a schematic flowchart of a data transmission method according to an embodiment of the present application.
  • FIG. 3 is another schematic flowchart of a data transmission method according to an embodiment of this application.
  • FIG. 4 is a schematic diagram of an encoding and decoding process of a data transmission method provided by an embodiment of the present application
  • FIG. 5 is a schematic diagram of a 66B to 257B encoding method of a data transmission method provided by an embodiment of this application;
  • FIG. 6 is a schematic diagram of another 66B to 257B encoding method of the data transmission method provided by an embodiment of the present application;
  • FIG. 7 is a schematic diagram of another 66B to 257B encoding method of the data transmission method provided by an embodiment of the present application.
  • FIG. 8 is a schematic diagram of another 66B to 257B encoding method of the data transmission method provided by an embodiment of the present application.
  • FIG. 9 is a schematic diagram of a scrambling code method of a data transmission method provided by an embodiment of this application.
  • FIG. 10 is a schematic structural diagram of a network chip provided by an embodiment of this application.
  • FIG. 11 is another schematic structural diagram of a network chip provided by an embodiment of the present application.
  • This application provides a data transmission method, network chip, and communication system for flexible access to multiple different or same service interfaces, and can share an RS-FEC encoder to improve the use of RS-FEC encoding resources Rate and save network resources.
  • the data transmission method provided in this application can be applied to high-speed flexible Ethernet (Flexible Ethernet, FlexE), high-speed interconnection (Interlaken), high-speed transmission interface flexible optical transport network (Flexible optical transport network, FlexO) and other networks. Further, it can also be applied to other communication systems including Ethernet, FlexE, FlexO, and Interlaken-related service interfaces or protocols. For example, it can be applied to the fifth generation mobile communication technology (5th-Generation, 5G) bearer network . For example, FlexE can be applied to network fragmentation in 5G networks.
  • 5G fifth generation mobile communication technology
  • FlexE can be applied to network fragmentation in 5G networks.
  • Ethernet architecture As an example for description, please refer to FIG. 1, the network architecture of the data transmission method provided in this application.
  • a communication system can be layered with reference to a seven-layer model (Open System Interconnection, OSI), which can include an application layer, a presentation layer, a session layer, a transport layer, a network layer, a data link layer, and a physical layer.
  • OSI Open System Interconnection
  • the application architecture in this example may include all or part of the physical layer. It may include: a physical coding sublayer (Physical Coding Sublayer, PCS), a physical medium adaptation sublayer (Physical Medium Attachment, PMA), and a physical medium related sublayer (Physical Medium Dependent, PMD).
  • PCS Physical Coding Sublayer
  • PMA Physical Medium Attachment
  • PMD Physical Medium Dependent
  • the PCS sublayer can be connected to business interfaces such as Ethernet, FlexE, FlexO, and Interlaken. Among them, only the Ethernet interface, FlexE interface, FlexO interface, and Interlaken interface are illustrated in FIG. 1, and the PCS sublayer can also receive other networks.
  • the data sent by the service interface of the service is not specifically limited here.
  • the PCS sublayer and the PMA sublayer can be connected through an adaptation unit interface (Attachment Unit Interface, AUI), and the AUI interface can be a physical interface.
  • AUI Application Unit Interface
  • the PCS sublayer performs processing such as transcoding, scheduling, preprocessing, or RS-FEC encoding on the received data sent by each service interface, and then distributes it to the PMA sublayer.
  • the PMA sublayer performs serial-parallel conversion of the received PCS data, and sends the data to be sent to the PMD sublayer through a preset transmission channel.
  • the PMD sublayer performs data modulation on the received PMA data, and then sends it to the corresponding receiving end through a medium, which may be an optical fiber, a transmission line, and so on.
  • the data transmission method provided in the embodiments of the present application is applied to the PCS sublayer, and may specifically include data transmission and reception processing.
  • the PCS sublayer can receive data sent from multiple service interfaces.
  • the multiple service interfaces can include service interfaces of the same or different service types.
  • Data transmitted by each service interface can be assigned different time slots. The slot processes the data transmitted by each service interface, so that multiple service interfaces share the encoder, improve the utilization rate of the encoder, and reduce costs.
  • the schematic flowchart of the data transmission method provided by the embodiment of the present application may be as shown in FIG. 2 and may include:
  • the plurality is two or more, and the plurality of groups is two or more.
  • the multiple service interfaces may be service interfaces of the same service type, or may be service interfaces of different service types.
  • the multiple service interfaces are service interfaces that access the PCS sublayer.
  • the multiple sets of data are transmission data corresponding to the multiple service interfaces, wherein one service interface may correspond to one or more sets of transmission data.
  • the number of transmitted data may be greater than the number of service interfaces, or may be less than the number of service interfaces.
  • the multiple service interfaces may include service interfaces of different service types.
  • the multiple service interfaces may include one or more interfaces of different service types, and the different service types may be Ethernet interfaces, FlexE interfaces, FlexO interface or Interlaken interface, etc.
  • the process of obtaining the corresponding transmission data is different according to the business type of the business interface.
  • the transmission data may be received directly from the business interface, or the data sent by the business interface may be further processed to obtain the transmission data. More specific steps will be further described in the following embodiments, and will not be repeated here.
  • a set of transmission data can be received.
  • the set of transmitted data may be data corresponding to any of the Ethernet interface, FlexE interface, FlexO interface, or Interlaken interface.
  • multiple service interfaces of the same or different service types can be accessed, and data of the multiple service interfaces can be obtained for subsequent encoding processing, so that multiple service interfaces share an encoder and improve the encoder Utilization rate.
  • the transmission time slot corresponding to each set of transmission data can be determined. And in the time slot corresponding to each group of transmission data, the same channel encoder is used to encode each group of transmission data to obtain the code stream data corresponding to each group of data.
  • the first transmission data is among the multiple sets of transmission data
  • the second transmission data is any group of transmission data different from the first transmission data among the multiple groups of data
  • the first transmission time slot is a time slot corresponding to the first transmission data
  • the second transmission time The slot is a time slot corresponding to the second transmission data.
  • the first transmission slot is different from the second transmission slot.
  • the first transmission data is input to the channel encoder to output the first stream data
  • the same channel encoder can be used to channel encode the second transmission data and output the second code Streaming data.
  • Each set of transmission data obtained can be encoded in the corresponding transmission data to obtain corresponding code stream data. For example, if i groups of transmission data are obtained, i is an integer greater than or equal to 2, after obtaining one-to-one transmission time slot corresponding to each group of transmission data in the i group of transmission data, the transmission time slot corresponding to each group of transmission data Encode each group of transmission data to obtain the code stream data corresponding to each group of transmission data.
  • the method for encoding the first transmission data may be RS-FEC encoding, that is, the channel encoder may be an RS-FEC encoder.
  • the first transmission data may be input to an RS-FEC encoder to perform RS-FEC encoding to obtain RS-FEC encoded first bitstream data.
  • the channel coding method may also include a commonly used FEC coding method, or a coding method to be used in the next generation network, and so on.
  • the specific RS-FEC encoding process may be that the first transmission data is calculated according to a preset generator polynomial, the check polynomial of the first transmission data is calculated, and then the first transmission data and the check polynomial are performed Combine to get the first stream data.
  • the time slot can be allocated according to the service type of the service interface, or the time slot can be allocated according to the order of acquisition, or according to the priority of the transmission data.
  • the gap allocation, etc. can be adjusted according to the actual application scenario.
  • each set of transmission data may be acquired after acquiring each set of transmission data, other processing may be performed on each set of data, for example, grouping the transmission data, inserting preset identification data, etc., and then encoding.
  • the first code stream data is distributed to the PMA according to the preset distribution rules according to the transmission time slot corresponding to each group of stream data , And distribute the second stream data to PMA according to preset rules, and the PMA determines the transmission channel of the stream data, and sends it to the PMD sublayer.
  • the transmission channel is determined by the PMD sublayer, and the first stream data is transmitted to The receiving end corresponding to the first stream data, and transmitting the second stream data to the receiving end corresponding to the second stream data.
  • the preset distribution rule may be: determining a transmission channel corresponding to the service interface corresponding to the first transmission data, and distributing the first bitstream data to the corresponding transmission channel for sending. And determine the transmission channel corresponding to the service interface corresponding to the second transmission data, and distribute the second stream data to the corresponding transmission channel for sending.
  • first transmission data and the second transmission data in the embodiment of the present application are only exemplary descriptions, and actually multiple sets of transmission data can be received, and a corresponding transmission time slot is determined for each group of transmission data.
  • the transmission data corresponding to each group of transmission data uses the same channel encoder for channel coding, so that multiple service interfaces can share an encoder.
  • the PCS sublayer may access multiple service interfaces, and the multiple service interfaces may be service interfaces of the same service type or service interfaces of different service types. And obtain the transmission data corresponding to the multiple service interfaces, including directly receiving the data sent by the service interface, or processing the data sent by the received service interface. And determine the transmission time slot of the transmission data corresponding to the multiple service interfaces, and encode and distribute the transmission data according to the transmission time slot to complete the processing of the transmission data corresponding to the multiple service interfaces.
  • the data transmission method provided by the embodiments of the present application can use an RS-FEC encoder to assign RS-FEC encoding to the transmission data of multiple service interfaces by way of time slot allocation, so as to realize the efficient use of RS-FEC resources .
  • FIG. 3 another schematic flowchart of the data transmission method provided by the embodiment of the present application , which can include:
  • the multiple sets of code stream data may correspond to multiple service interfaces.
  • the service types of the multiple service interfaces may be the same or different.
  • the multiple sets of code stream data may be data received directly from the PMA sublayer, or they may be obtained by processing the data received from the PMA sublayer, for example, before acquiring the multiple sets of code stream data, It includes the steps of demodulation and skew compensation on the received data to obtain the multiple sets of code stream data, which will not be elaborated here.
  • the transmission time slot corresponding to each set of code stream data can be determined. And after determining the transmission time slot of each group of stream data, use the same encoder to encode each group of stream data in the transmission slot corresponding to each group of stream data.
  • the first transmission slot corresponding to the first stream data and the second transmission slot corresponding to the second stream data can be determined.
  • the first code stream data is any set of code stream data among the multiple sets of code stream data
  • the second code stream data is any set of code stream data other than the first code stream data among the multiple sets of code stream data.
  • the first transmission time slot is a transmission time slot corresponding to the first code stream data
  • the second transmission time slot is a transmission time slot corresponding to the second code stream data.
  • the first code stream data and the second code stream data in the multiple sets of code stream data are used for illustrative description.
  • the decoder After determining the first transmission slot corresponding to the first stream data, the decoder is used to decode the first stream data in the first transmission slot to obtain the first transmission slot. After determining the second transmission time slot corresponding to the second code stream data, use the same decoder to decode the second code stream data in the second transmission time slot to obtain second transmission data.
  • the sender side encodes the data before sending the data. Therefore, after receiving the first stream data, the first stream data can be decoded to complete the error correction of the first stream data, Get the first decoded data.
  • the specific decoding method may be decoding for channel coding.
  • RS-FEC decoding may be performed on the first bitstream data.
  • each data packet may include an inserted alignment marker (Align Marker, AM).
  • AM Align Marker
  • the transmission time slot of each group of stream data may be allocated in real time after receiving each group of stream data, and after receiving each group of stream data,
  • the code stream data is assigned a transmission time slot, and each group of code stream data is processed in the transmission time slot corresponding to each group of code stream data, which can avoid processing multiple groups of code stream data at the same time, causing excessive load on the network chip or data errors.
  • a transmission time slot may be allocated to each group of stream data according to the receiving order, or a transmission slot may be allocated according to the priority of the stream data, etc., which may be adjusted according to actual application scenarios, and is not limited here.
  • assign a preset transmission time slot to each service interface. After receiving the code stream data, you can first determine the service interface corresponding to the code stream data, and then according to the corresponding The service interface queries the transmission time slot of the code stream data.
  • each group of transmission data can be separately transmitted to the corresponding service interface.
  • the first transmission data is distributed to the corresponding first service interface.
  • the second transmission data is distributed to the corresponding second service interface.
  • each group of transmission data may be transmitted according to the service type of the service interface. It may be sent directly to the corresponding service interface, or may be further decoded and descrambled for each set of transmission data, and then sent to the corresponding service interface. For example, if the service interface corresponding to the first transmission data is a FlexE interface or an Ethernet interface, the obtained first transmission data is further descrambled and decoded, and then sent to the FlexE interface or the Ethernet interface. If the service interface corresponding to the first transmission data is a FlexO interface, the first transmission data is directly sent to the FlexO interface. If the service interface is an Interlaken interface, after decoding and descrambling the first transmission data, it is sent to the Interlaken interface.
  • step 303 in the embodiment of the present application is an optional step.
  • the same decoder is used to decode each set of code stream data in a transmission time slot corresponding to each set of code stream data to obtain a corresponding Transfer data. Therefore, multiple service interfaces can share the same decoder. For example, after the first stream data and the second stream data, the first transmission slot of the first stream data is determined, and after decoding the first stream data in the first transmission slot, it is sent to the corresponding A business interface. Determine the second transmission time slot of the second code stream data, and decode the second code stream data in the second transmission time slot, and then send it to the corresponding second service interface.
  • the embodiments of the present application may accept multiple sets of code stream data corresponding to multiple service interfaces, and each set of code stream data may correspond to different transmission time slots.
  • the same decoder can be used to decode each group of transmission data in the corresponding transmission time slot to obtain the transmission data. Therefore, multiple same or different service interfaces can share the same decoder. Can improve the utilization of decoding resources and save network resources.
  • FIG. 4 is a schematic diagram of another embodiment of a data transmission method provided by an embodiment of the present application, which may include a sending process and a receiving process.
  • the sending process can be understood as an encoding process
  • the receiving process can be understood as a decoding process.
  • the encoding process and the decoding process will be combined to take RS-FEC encoding and decoding as an example for further detailed description.
  • the service interface in the embodiment of the present application may include multiple interfaces of different types.
  • the following uses four types of interfaces as examples, which may include: an Ethernet interface, a FlexE interface, a FlexO interface, and an Interlaken interface.
  • an Ethernet interface may include: an Ethernet interface, a FlexE interface, a FlexO interface, and an Interlaken interface.
  • there may be one or more interfaces for each service type for example, there may be one or more Interlaken interfaces, and only two are used as examples in FIG. 4 for illustration.
  • the PCS sublayer can receive data sent by multiple service interfaces, and the multiple service interfaces can include: an Ethernet interface, a FlexE interface, a FlexO interface, or an Interlaken interface, and so on.
  • the data transmitted by the received FlexO interface can be directly used as time division multiplexing (TDM) scheduling for the transmission data, and the data transmitted by the Ethernet interface, FlexE interface and Interlaken interface needs to be processed. TDM scheduling is performed only after the corresponding transmission data is obtained.
  • TDM time division multiplexing
  • the service interface may include one or more Ethernet interfaces or FlexE interfaces.
  • the initial stream data is the data of the Ethernet interface or the data of the FlexE interface It may be data in units of 66B, and TDM scheduling may be performed on the received data of the Ethernet interface and the data of the FlexE interface (that is, step 4011) to determine the processing time slot corresponding to each service interface.
  • the processing time slot corresponding to each service interface may be preset, that is, allocated to each service interface in advance, or may be allocated in real time after receiving the data sent by each service interface.
  • the processing time slot corresponding to each business interface When the processing time slot corresponding to each business interface is preset, you can query the time slot corresponding to each business interface in the database when receiving the data corresponding to each business interface, so that the corresponding processing time slot Process the data corresponding to each business interface. If the processing time slot corresponding to each business interface is allocated in real time, the corresponding data of each acquired business interface can be allocated in real time according to business type, acquisition order, priority, etc. to obtain each business interface The processing time slot of the corresponding data. Therefore, after receiving the data of the Ethernet interface or the data of the FlexE interface, the embodiment of the present application may determine the processing time slot corresponding to each service interface, perform TDM scheduling, and perform time-sharing processing on the data transmitted by each service interface.
  • the data sent by the received service interface is usually a data stream, that is, it may include multiple 66B data.
  • the data can be processed, including the processing and combination of multiple 66B data to obtain 257B data. Since the data received is usually a data stream of 66B data, after processing and combining multiple 66B data, you can get 257B data stream.
  • 66B data may include data 66B and control 66B. Bit 0 of data 66B is 0, bit 1 is 1, bit 0 of control 66B is 1, bit 1 is 0.
  • the first 66B data is control 66B and the following three data are data 66B
  • the data is 257B data with control data. For example, as shown in FIG.
  • control 66B deletes bit 6 to bit 9 and add 4 bits 1111 at the front to indicate 3 data 66B followed by 1 control 66B One 256-bit data. Then add bit 0 at the front to get 257B data, which is tx_xcoded.
  • the first control 66B deletes bit 6 to bit 9 and add 4 bits 1112 at the front to indicate 4 control 66B, combined into 1 256-bit data, and then add bit 0 at the front to indicate that it is 257B with control.
  • it includes four controls 66B: tx_code_0, tx_code_1, tx_code_2, and tx_code_3.
  • Delete all the control 66B to remove bit 0 and bit 1 the first control 66B deletes bit 6 to bit 9 and add 4 bits 1112 at the front to indicate 4 control 66B, combined into 1 256-bit data . Then add bit 0 at the front to get 257B data, which is tx_xcoded.
  • the scrambling code After transcoding from 66B to 257B (ie step 4012), scrambling the obtained 257B data (ie step 4013).
  • the scrambling code usually performs random processing on the 257B data to reduce the occurrence of even 0 and even 1, thereby reducing inter-symbol interference and jitter and facilitating clock extraction at the receiving end.
  • the frequency spectrum of the baseband signal is expanded to achieve the effect of encryption.
  • one of the scrambling codes may be implemented as shown in FIG. 9.
  • the scrambling code is a cyclic calculation process.
  • the data of the input scrambler is input in the form of a data stream, and the data after the scrambler output is also output in the form of a data stream.
  • S0 to S57 can be understood as a serial synchronous shift register.
  • the XOR operation is first performed with a data, which is the data after the XOR operation is performed on the data output by S38 and S57 respectively , And then output the data after XOR operation with a data, and input the value S0, shift through S0 to S57, and XOR the values output by the shift registers S38 and S57 respectively, and the XOR calculation
  • the value continues to be XOR calculated with the input data and output, and shifted to S0 to continue the shift and XOR calculation.
  • the data output by the scrambler is the transmission data corresponding to the Ethernet interface or FlexE.
  • the processing slot of the initial stream data is determined, and the stream data is processed according to the processing slot Perform transcoding to obtain transcoded data, and scramble the transcoded data according to the processing time slot to obtain transmission data corresponding to the Ethernet interface or FlexE, for example, the aforementioned first transmission data or second transmission data. Therefore, the Ethernet interface and FlexE interface data can be obtained at the same time, and each Ethernet interface or FlexE interface can be assigned a time slot, and the data of the corresponding service interface is processed in each time slot, and the Ethernet is realized by time division
  • the processing of network interface data and FlexE interface data saves network resources.
  • the data transmitted by the FlexO interface already meets the subsequent data requirements for scheduling, preprocessing, and RS-FEC encoding, so it can directly receive the data transmitted by the FlexO interface without the need for transcoding and scrambling, and then perform TDM scheduling. , Pretreatment and other steps. That is, the data transmitted by the FlexO interface can be used as the aforementioned first transmission data.
  • the FlexO interface transmits data streams, and RS-FEC can directly process the data streams transmitted by the FlexO interface according to 257B data. Therefore, after receiving the data sent by the FlexO interface, it is possible to perform steps such as scheduling and preprocessing without processing.
  • the PCS sublayer can also receive input data transmitted by one or more Interlaken interfaces.
  • XB to YB transcoding is performed on the scrambled XB data (that is, step 4022).
  • nB identification data may be added before XB to obtain YB data, and n is an integer not less than 0.
  • 3-bit identification data can be added before the XB data. For example, 001, 010, 101, 110, etc.
  • 001 can be identified as a data block, and all 64-bit data bits are not inverted; 010 can be identified as a control block, and all 64 bits Data bits are not inverted; 101 can be identified as a data block, and all 64-bit data bits are inverted; 110 can be identified as a control block, and all 64-bit data bits are inverted.
  • YB to ZB transcoding (that is, step 4023) is continued to obtain transmission data corresponding to the Interlaken interface, that is, one of the multiple sets of transmission data in FIG. 2 described above.
  • the PCS sublayer can access multiple Interlaken interfaces and can receive input data transmitted by multiple Interlaken interfaces. Therefore, after processing multiple input data to obtain multiple YB data, all YB to ZB transcoding are performed. . In addition, it can process the scrambled XB data transmitted by multiple Interlaken interfaces at the same time. After converting the XB data corresponding to multiple Interlaken interfaces into YB data, the subsequent YB to ZB conversion can be performed for each YB data.
  • the 130B data can be understood as transmission data, for example, the aforementioned first transmission data or second transmission data.
  • the acquisition order of transmission data of each service interface is not limited, and may be acquisition of transmission data corresponding to the Ethernet interface first, or acquisition of transmission data corresponding to the FlexO interface first, It is specifically determined according to the order in which the corresponding data is sent from the actual service interface, and is not limited here.
  • TDM scheduling can be performed (ie step 403). Determine the corresponding transmission time slot for each group of transmission data, and perform scheduling processing according to the transmission time slot corresponding to each group of transmission data.
  • multiple sets of transmission data may be obtained, and the multiple sets of transmission data may include data transmitted in step 4013, step 4023, or one or more FlexO interfaces directly received, and so on.
  • the transmission time slot of each group of transmission data can be determined, and the acquired transmission data can be processed according to the transmission time slot of each group of transmission data.
  • the first transmission data is used as an example for further description below.
  • the first transmission data is any one of the multiple sets of transmission data.
  • the transmission time slot corresponding to each group of transmission data may be preset, or may be allocated in real time after acquiring the transmission data. Specifically, if the transmission time slot is preset, before acquiring the multiple sets of transmission data, each access service interface may be assigned a time slot matching the bandwidth, and stored in the database, and the service interface is obtained After corresponding transmission data, the transmission time slot of the transmission data can be searched from the database according to the service interface.
  • the time slot can be allocated according to the service type of the service interface corresponding to each group of transmission data, or according to the transmission data of each group Acquiring the time slot allocation in the order of acquisition, the time slot allocation can also be performed according to the priority of each group of transmission data, etc.
  • the time slot allocated for each group of transmission data can also be matched with the bandwidth of the corresponding service interface, depending on the actual application scenario Make adjustments.
  • the first transmission data is pre-processed in the first transmission time slot (ie, step 404) to obtain the pre-processed data corresponding to the first transmission data.
  • Each group of transmission data in the obtained plurality of groups of transmission data can be preprocessed according to the corresponding transmission time slot to obtain preprocessed data corresponding to each group of transmission data.
  • the preprocessing process may include performing code block interleaving and grouping on the first transmission data to obtain first preprocessing data. Insert an alignment mark in the first preprocessed data to obtain second preprocessed data.
  • the first transmission data may be divided into multiple groups.
  • the bit length of the data of each group is an integer multiple of the coded bit length of the channel encoder.
  • the channel encoder is an RS-FEC encoder
  • the RS-FEC encoder may use RS encoding based on Galois Field (GF), and each character has a length of 10 bits. Therefore, when grouping, each group of characters can be an integer multiple of 10-bit characters, so that the RS-FEC encoder can encode normally.
  • the length of the first transmission data is 1000 bits
  • the first preprocessed data can be understood as multiple data packets.
  • An alignment mark corresponding to the first service may be inserted into each data packet, so that the encoder can encode the first pre-processed data. For example, if an alignment mark is added to the start bit of each data packet, the encoder can encode the data after the alignment mark after identifying the alignment mark.
  • the alignment mark can also enable the receiving end to complete the alignment of the multiple data packets after receiving the encoded data of the multiple data packets, to avoid data misalignment.
  • the alignment mark may be an mark inserted at a preset interval in each data packet after dividing the transmission data.
  • the alignment mark may also be a piece of data arranged in a preset manner, a serial number arranged in the order of data packets, and so on.
  • the alignment marks corresponding to different service interfaces may be the same or different, and may be adjusted according to actual application scenarios, which is not limited here.
  • the insertion method of the alignment mark can refer to the relevant specifications in the standard IEEE802.3.
  • encoding can be continued (ie, step 405) to obtain the first bitstream data.
  • the coding method may be RS-FEC coding.
  • RS-FEC coding may be:
  • the message polynomial m(x) is divided by the generator polynomial g(x) to obtain the check polynomial p(x):
  • the generator polynomial can be:
  • the final output RS-FEC encoding polynomial can be:
  • RS-FEC encoding polynomial can be understood as a combination of message polynomial and check polynomial.
  • the check polynomial is used by the receiving end to determine the check polynomial according to the data carried in the data and the preset generator polynomial when the data is obtained, to calculate whether the message polynomial carried in the data has data errors and correct the errors. Correct the data.
  • the RS-FEC encoder can use different values of n and k to obtain different data error correction capabilities.
  • Ethernet uses RS (528, 514) and RS (544, 514).
  • the first stream data is distributed in one step according to the service interface corresponding to the first stream data (that is, step 406). Specifically, when distributing the first stream data, according to the different service types of the service interfaces corresponding to the first stream data, the virtual transmission channel of the first stream data is mapped in the corresponding first transmission time slot To the physical channel to transmit the first bitstream data through the physical transmission channel.
  • the transmission rates corresponding to service interfaces of different service types may be different.
  • the transmission rate corresponding to an Ethernet interface may be 200 GB
  • the transmission rate corresponding to a FlexE interface may be 100 GB, and so on.
  • the transmission rate of different physical channels may also be different.
  • the physical channel for the transmission of the first stream data is determined, and the first stream data is distributed.
  • Distribute to the PMA sublayer distribute to the corresponding physical channel, and send to the receiving end through the PMA sublayer.
  • the PCS sublayer can access multiple service interfaces, determine the transmission time slot corresponding to the data transmitted by each service interface, and process each group of transmission data in the corresponding transmission time slot. Therefore, the RS-FEC encoder can process data transmitted by multiple identical or different service interfaces according to the determined transmission slot corresponding to the service interface, and improve the utilization rate of the RS-FEC encoding resource.
  • each service interface can realize the access of multiple service interfaces through time division or space division, etc., and the time slot can be flexibly configured, and various types of service interfaces can be flexibly accessed to ensure access to the service interface The flexibility can save network resources.
  • each group of stream data may be divided into multiple data packets.
  • the alignment marks in the data packets can be retrieved.
  • the data packets carrying the alignment marks are locked (that is, step 407), that is, before the stream data is reassembled, the data packets do not need to be processed.
  • skew compensation is performed according to the alignment marks that have been detected (ie step 408).
  • the data is aligned and combined into the first stream data obtained by performing RS-FEC encoding in the foregoing step 405.
  • the alignment mark eliminates the transmission deviation between different transmission channels.
  • the alignment flag in the first stream data may also be deleted.
  • the first stream data in the following steps may be understood as the first stream data after the alignment mark is deleted.
  • an alignment mark is inserted between every 100 characters, then after receiving multiple data packets, check the alignment mark in each data packet. If one of the data packets has only 99 characters, then you can confirm There is data error or data loss in the data packet. At this time, you can resend the data packet according to the notification PMA, or restore the character of the data error or data loss according to the preset rules. And after all the data packets of the code stream data are obtained, the data is reassembled into the code stream data.
  • the transmission time slot corresponding to each set of code stream data may be determined, and each set of code stream data may be decoded in the corresponding transmission time slot (ie, step 409).
  • the first stream data and the second stream data as an example, after the first stream data is obtained, the first transmission slot of the first stream data is determined, and the first stream data is compared in the first transmission slot To decode. After the second stream data is obtained, the second transmission time slot corresponding to the second stream data is determined, and the second stream data is decoded in the second transmission time slot.
  • the first bitstream data is any set of bitstream data in the multiple sets of bitstream data
  • the second bitstream data is any set of codes in the multiple sets of bitstream data except the first bitstream data Streaming data.
  • the specific decoding step is the reverse process of the RS-FEC encoding step in the foregoing step 405.
  • the message polynomial is divided by the generator polynomial to obtain the calibration Test polynomial
  • the final output RS-FEC encoding polynomial is the message polynomial plus the check polynomial. Therefore, the inverse process is to divide the combined coding polynomial into a message polynomial and a check polynomial. Since the values of the generator polynomial, n and k have been determined, the message polynomial and the check polynomial can be calculated. According to the check polynomial and the generator polynomial, the incorrect bits in the message polynomial can be determined to achieve the Error correction to obtain the first decoded data.
  • step 410 After decoding each group of stream data according to the corresponding transmission time slot, reorganization is continued (ie, step 410) to obtain multiple groups of transmission data.
  • the specific reorganization process is that for the pre-processing of the previous steps (ie step 404), due to the addition of alignment marks for different services, code block interleaving and grouping, etc., after acquiring each set of code stream data, it is also necessary to perform code stream data
  • the reorganization includes recombining the code stream data and dividing them into the number of characters before grouping. For example, the original 10-bit integer multiples are grouped into 8-bit integer multiples. And according to different business rules, reorganized into corresponding transmission data. For example, the transmission data length corresponding to the Ethernet interface, FlexE interface, and FlexO interface can be reorganized to 257B, and the transmission data length corresponding to the Interlaken interface can be reorganized to 130B.
  • each set of transmission data is distributed according to the transmission time slot corresponding to each set of transmission data (ie, step 411).
  • the first transmission data is the transmission data corresponding to the Ethernet interface or the FlexE interface
  • the first transmission data is distributed to the corresponding descrambling coder to perform the descrambling code.
  • the first transmission data is transmission data corresponding to the FlexO interface
  • the first transmission data is directly distributed to the FlexO interface.
  • the first transmission data is the transmission data corresponding to the Interlaken interface
  • the first transmission data is distributed to the transcoder for transcoding.
  • the following uses the first transmission data as an example to describe different service interfaces respectively.
  • the first transmission data is transmission data corresponding to the Interlaken interface.
  • the first transmission data needs to be transcoded (ie, step 4121).
  • ZB can be converted into YB length transcoding data.
  • the 130B data can be divided into two 65B data, and the 1-bit data at the preset position of each 65B data can be converted into 3-bit identification data. For example, convert 0 to 001, 101, and 1 to 010, 110, etc. to get 67B data.
  • 001 can be identified as a data block, and all 64-bit data bits are not inverted; 010 can be identified as a control block, and all 64-bit data bits are not inverted; 101 can be identified as a data block, all 64-bit data bits Inverted code; 110 can be identified as a control block, and all 64-bit data bits are inverted.
  • the process of descrambling code is the inverse process of scrambling code.
  • XB data can be input into the descrambler, XOR operation is performed on the input data, and then shift output is performed.
  • the specific process of descrambling codes may be calculated according to the scrambling code polynomial. The specific descrambling process is similar to the scrambling code process shown in FIG. 9 and will not be repeated here.
  • the service data is sent to the corresponding Interlaken interface.
  • the number of accesses to the Interlaken interface may be one or more.
  • transcoding that is, step 4121
  • the service interface corresponding to each group of transmission data respectively Distribute to the corresponding processing channel for processing, and can process multiple channels of data at the same time, including transcoding and descrambling codes, etc., and send the corresponding service data to the corresponding Interlaken interface after the processing is completed.
  • YB data can be further transcoded and descrambled, and if there are multiple YB data and corresponding multiple Interlaken interfaces, it can be simultaneously
  • the YB data corresponding to each Interlaken interface is processed, and multiple Interlaken interfaces are accessed through air separation. Therefore, the utilization rate of the resources involved in the processing steps 407 to 411 can be improved.
  • the first transmission data is transmission data corresponding to the FlexO interface.
  • the first transmission data is transmission data corresponding to the FlexO interface
  • the first transmission data may be directly sent to the corresponding FlexO interface.
  • the length of the transmission data corresponding to the FlexO interface is 257B, and no processing is required, so the transmission data corresponding to the FlexO can be directly sent to the FlexO interface.
  • the first transmission data corresponds to the FlexO interface
  • the first data can be directly transmitted to the corresponding FlexO interface, and therefore, one or more FlexO interfaces can be connected to improve the utilization rate of network resources.
  • the first transmission data is transmission data corresponding to the Ethernet interface or the FlexE interface.
  • the processing time slot corresponding to the first transmission data may be preset, and when the first transmission data is acquired, the processing time slot of the first transmission data may be queried directly according to the service type of the service interface corresponding to the first transmission data.
  • the processing time slot may also be allocated for the first transmission data in real time when the first transmission data is acquired.
  • the first transmission data may be distributed to a descrambler for descrambling codes (ie, step 4131) to obtain descrambling data.
  • the process of descrambling codes is similar to the process of scrambling codes in the aforementioned step 4013.
  • the first transmission data is input into the descrambling decoder according to the first transmission time slot, and the input data is XOR-operated, shifted, and output.
  • the length of the descrambling data is usually 257B. Therefore, 257B to 66B transcoding can be performed according to the processing time slot corresponding to the first transmission data (that is, step 4132). Specifically, converting the 257B data to 66B data may be the reverse of the conversion process described in FIGS. 5 to 8 described above. For example, you can delete bit 0 of 257 data, and then the remaining data is divided into 4 64B data on average, and then add 2 identification bits to the head of each 64B data to get 4 66B data. Among them, the four 66B data are all data 66B.
  • the 66B data is distributed according to the processing time slot (that is, step 4133) and sent to the corresponding FlexE interface or Ethernet interface. Among them, if there are one or more FlexE interfaces or one or more Ethernet interfaces, the 66B data is distributed to the corresponding FlexE interfaces or Ethernet interfaces.
  • the first transmission data may be processed according to the processing time slot of the first transmission data, and then distributed to the corresponding service interface after the processing is completed. For example, if the first transmission data corresponds to the FlexE interface, the first transmission data is descrambled according to the processing time slot, and after transcoding from 257B to 66B, 66B data, that is, the third bitstream data, is distributed to the FlexE interface . Therefore, the transmission data corresponding to one or more FlexE interfaces or one or more Ethernet interfaces can be processed in a time-division manner by sharing RS-FEC decoding resources to realize access to multiple service interfaces and improve network resources Utilization rate.
  • the code stream data after receiving the code stream data sent from the PMA sublayer, the code stream data is processed, including the steps of AM lock, skew compensation, decoding, reassembly, distribution, etc., and the data corresponding to the service interface Allocate corresponding transmission time slots to realize the processing of data corresponding to multiple service interfaces. Therefore, one or more same or different service interfaces can be accessed to realize the processing of data of one or more same or different service interfaces, saving network resources, and corresponding to one service interface corresponding to one RS-FEC encoder,
  • the data transmission method provided in the embodiments of the present application can combine time division and space division to implement multiple identical or different service interfaces to share RS-FEC resources and improve the utilization rate of RS-FEC resources.
  • multiple types of service interfaces can be flexibly accessed to improve the efficiency of processing data corresponding to multiple types of service interfaces.
  • multiple service interfaces are connected to the sending side or the receiving side.
  • the multiple services One end can be connected to the network chip or network chip side in this application, and the other end can be connected to other processing modules, and the data processed by other processing modules can be transmitted to the sending side in this embodiment of the application through the multiple service interfaces Processing, or send the data obtained by the receiving side of the embodiment of the present application to the processing module for further processing.
  • FIG. 10 is a schematic structural diagram of a network chip provided by this application.
  • the network chip may include: a channel encoder 1001, a time slot scheduler 1002, and a data distributor 1003.
  • the time slot scheduler 1002 is used to determine a first transmission time slot of first transmission data and a second transmission time slot of second transmission data, where the first transmission data and the second transmission data correspond to multiple service interfaces Any two of the multiple sets of transmission data transmit data.
  • the channel encoder 1001 is configured to perform channel coding on the first transmission data in the first transmission slot to obtain first stream data, and use the channel encoder 1001 on the second transmission data in the second transmission slot Encode to obtain the second stream data.
  • the channel encoder 1001 may be used to perform step 202 in FIG. 2 described above.
  • the data distributor 1003 is configured to distribute the first bitstream data to a receiving end corresponding to the first bitstream data, and distribute the second bitstream to a receiving end corresponding to the second bitstream .
  • the data distributor 1003 can be used to perform the foregoing step 203 in FIG. 2.
  • the data distributor 1003 is specifically configured to distribute the first bitstream data to the corresponding physical media adapter according to a preset distribution rule in the first transmission slot Layer PMA, and distribute the second stream data to the PMA in the second transmission time slot, to transmit the first stream data to the network chip corresponding to the first stream data through the PMA, and to The second stream data is transmitted to the network chip corresponding to the second stream data.
  • the data distributor 1003 can be used to perform the foregoing step 203 in FIG. 2 and step 406 in FIG. 4.
  • any one of the plurality of service interfaces may be an Ethernet service interface or a flexible Ethernet FlexE interface
  • the network chip further includes: a first service interface, a first transfer Encoder 1006 and first scrambler 1007.
  • the first service interface may be an Ethernet interface or a FlexE interface.
  • the first service interface that is, the FlexE interface 1004 or the Ethernet interface 1005, is specifically used to receive initial stream data.
  • the time slot scheduler 1002 is also used to determine the processing time slot of the initial stream data.
  • the time slot scheduler 1002 can be used to perform the aforementioned step 4011 in FIG. 4.
  • the embodiments of the present application may include one or more time slot schedulers.
  • the time slot scheduler for determining the transmission time slot for each group of transmission data and the time slot for the initial code stream data may be the same time slot scheduler or different time slot schedulers.
  • the first transcoder 1006 is configured to transcode the initial code stream data in the processing time slot to obtain transcoded data.
  • the first transcoder 1006 may be specifically used to perform the aforementioned step 4011 in FIG. 4
  • the first scrambler 1007 is configured to scramble the transcoded data in the processing time slot to obtain the first transmission data.
  • the first scrambler 1007 can be used to perform the aforementioned step 4013 in FIG. 4.
  • the multiple service interfaces include at least one Interlaken interface
  • the network chip further includes: a second service interface, a second transcoder 1006, and a second scrambler 1007.
  • the second service interface may be an Interlaken interface, that is, Interlaken interface 1008 in FIG. 10.
  • the number of the second service interface, that is, the Interlaken interface 1008 is one or more, and is used to receive input data.
  • the second scrambler 1009 is configured to scramble the input data to obtain scrambled data.
  • the second scrambler 1009 can be used to perform the aforementioned step 4021 in FIG. 4.
  • the network chip may include one or more second scramblers, and each Interlaken interface may correspond to one second scrambler.
  • the second transcoder 1010 is used to add identification data to the scrambling code data to obtain data of a preset length.
  • the second transcoder 1010 can be used to perform the aforementioned step 4022 in FIG. 4.
  • the network chip in this application may include one or more second transcoders 1010, and each Interlaken interface may correspond to one second transcoder 1010.
  • the third transcoder 1011 is used to group the data of the preset length to obtain the first transmission data. Wherein, the third transcoder 1011 can be used to perform the aforementioned step 4023 in FIG. 4.
  • the multiple service interfaces include at least one FlexO interface
  • the network chip may further include: a third service interface, which is the FlexO interface 1012 in FIG. 10 .
  • the number of the FlexO interface 1012 is one or more, which can be used to receive the first transmission data.
  • the time slot scheduler 1002 is specifically configured to determine the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data according to a preset rule.
  • the time slot scheduler 1002 is specifically used for:
  • the first transmission slot is determined from the transmission slots corresponding to each service interface according to the first service interface
  • the second transmission is determined from the transmission slots corresponding to each service interface according to the second service interface Time slot.
  • the channel encoder 1001 is specifically used for:
  • the channel encoder 1001 may be used to perform step 202 in FIG. 2 or step 404 and step 405 in FIG. 4.
  • the channel encoder 1001 may be an RS-FEC encoder.
  • the network chip may include a decoder 1102 and a time slot scheduler 1101.
  • the time slot scheduler 1101 is used to determine the transmission time slot of each group of stream data in multiple groups of stream data, including the first transmission slot corresponding to the first stream data and the second transmission slot corresponding to the second stream data
  • the first code stream data and the second code stream data are any two sets of code stream data among multiple sets of code stream data corresponding to multiple service interfaces.
  • the decoder 1102 is configured to decode the first stream data in the first transmission slot to obtain the first transmission data, and use the decoder 1102 to decode the second stream data in the second transmission slot. Obtaining second transmission data, the first transmission slot is different from the second transmission slot. among them.
  • the receiver and the decoder 1102 may be used to perform the aforementioned step 302 in FIG. 3.
  • the network chip may further include: a first service interface, a first solution A scrambler 1103, a first transcoder 1104, and a first distributor 1105; the first service interface may be a FlexE interface or an Ethernet interface, for example, as shown in FIG. 11, the FlexE interface 1106 or the Ethernet interface 1107.
  • the time slot scheduler 1101 is further configured to determine the processing time slot of the first transmission data after the decoder 1102 decodes the first bitstream data in the first transmission time slot to obtain the first transmission data.
  • the network chip in this application may include one or more time slot schedulers to determine the transmission time slot for each group of stream data and the processing time slot for the first transmission data, which may be the same time slot
  • the scheduler may also be a different time slot scheduler.
  • the first descrambler 1103 may be used to descramble the first transmission data in the processing time slot to obtain descrambled data.
  • the first descrambler 1103 may be used to perform the aforementioned step 4131 in FIG. 4.
  • the first transcoder 1104 is configured to transcode the descrambled data in the processing time slot to obtain third stream data corresponding to the first service interface.
  • the first transcoder 1104 can be used to perform the aforementioned step 4132 in FIG. 4.
  • the first distributor 1105 is configured to distribute the third bitstream data to a first service interface, that is, a FlexE interface or an Ethernet interface.
  • the first distributor 1105 may be used to perform the aforementioned step 4133 in FIG. 4.
  • the network chip may further include: a second service interface, a second descrambler 1110, a second transcoder 1108, and The third transcoder 1109; the second service interface may be an Interlaken interface, for example, as the Interlaken interface 1111 in FIG.
  • the second transcoder 1108 is used for transcoding the first transmission data after the decoder 1102 decodes the first code stream data in the first transmission slot to obtain a pre-transmission Set the length of the data.
  • the second transcoder 1108 may be specifically used to perform the aforementioned step 4121 in FIG. 4.
  • the third transcoder 1109 is used to delete the identification data in the data of the preset length to obtain scrambling code data.
  • the third transcoder 1109 may be specifically used to perform the aforementioned step 4122 in FIG. 4.
  • the network chip may include one or more third transcoders 1109, and each Interlaken interface may correspond to one third transcoder.
  • the second descrambler 1110 is used to descramble the scrambling code data to obtain service data corresponding to the Interlaken interface.
  • the second descrambler 1110 may be specifically used to perform the foregoing step 4123 in FIG. 4.
  • the network chip may include one or more second descrambler, and each Interlaken interface may correspond to one second descrambler.
  • the second service interface, Interlaken interface 1111 is used to transmit the service data.
  • the number of the Interlaken interface 1111 may be one or multiple.
  • the network chip may further include: a third service interface and a second distributor 1112.
  • the third service interface may be a FlexO interface, for example, as the FlexO interface 1113 in FIG. 11.
  • the second distributor 1112 is configured to send the first transmission data to the third service interface after the decoder 1102 decodes the first stream data in the first transmission slot to obtain the first transmission data, that is, FlexO interface 1113.
  • the second distributor 1112 may not only distribute the stream data to the FlexO interface, but also distribute the stream data to the first descrambler 1103 or the second transcoder 1102, etc. It can be adjusted according to the actual application scenario, which is not limited here.
  • the time slot scheduler 1101 may be specifically configured to determine the first transmission time slot corresponding to the first transmission data and the second transmission time slot corresponding to the second transmission data according to a preset rule.
  • the time slot scheduler 1101 may specifically be used for:
  • the time slot scheduler 1101 may be specifically used to allocate transmission time slots for each group of code stream data after receiving each group of code stream data.
  • the network chip further includes: a synchronizer 1114.
  • the synchronizer 1114 is configured to acquire the alignment identifier in the first stream data during the first transmission time slot.
  • the synchronizer 1114 is also used to align the first bitstream data according to the alignment identifier in the first transmission slot to obtain alignment data. This synchronization can be used to perform step 407 and step 407 in FIG. 4 described above at 1112.
  • the decoder 1102 is specifically configured to decode the aligned data in the first transmission slot to obtain the first transmission data.
  • the decoder 1102 may be an RS-FEC decoder.
  • the aforementioned network chip provided in FIG. 10 and the network chip provided in FIG. 11 may include more devices in addition to the devices included in FIG. 10 and FIG. 11, which may be adjusted according to actual applications. There is no limit to this.
  • the present application also provides a communication system, which may include one or more first network chips and one or more second network chips.
  • the one or more first network chips may be the network chip in FIG. 10 described above, and may be used to perform a process on the sending side of the method for data transmission involved in any of the foregoing embodiments in FIGS. 2-9.
  • the one or more second network chips may be the network chip in FIG. 11 described above, and may be used to perform a process on the receiving side of the method for data transmission involved in any of the foregoing embodiments in FIGS. 2-9.
  • An embodiment of the present application further provides a network chip, including: a processing module and a communication module, and the processing module can execute the flow of the data transmission method provided above.
  • the chip may further include a storage module (eg, a memory), the storage module is used to store instructions, the processing module is used to execute the instructions stored by the storage module, and the storage module The execution of the instruction causes the processing module to execute the method flow in any of the method embodiments in FIGS. 2-9 described above.
  • the network chip mentioned in the embodiments of the present application may include a central processing unit (Central Processing Unit, CPU), and may also include other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), and application-specific integrated circuits ( Application Specific (Integrated Circuit, ASIC), ready-made programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc.
  • the general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the integrated network chip in FIG. 10 or the network chip in FIG. 11 may be a communication chip or an FPGA, etc., using the same channel encoder to correspond to multiple service interfaces accessed Encoding transmission data can improve the utilization rate of the channel encoder and save logic resources.
  • the memory mentioned in the present application may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory may be read-only memory (Read-Only Memory, ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), electronically Erasable programmable read only memory (Electrically, EPROM, EEPROM) or flash memory.
  • the volatile memory may be a random access memory (Random Access Memory, RAM), which is used as an external cache.
  • RAM static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory
  • SDRAM double data rate synchronous dynamic random access memory
  • Double Data Rate SDRAM DDR SDRAM
  • enhanced SDRAM ESDRAM
  • Synchlink DRAM SLDRAM
  • Direct Rambus RAM Direct Rambus RAM
  • the size of the sequence numbers of the above processes does not mean that the execution order is sequential, some or all of the steps can be executed in parallel or sequentially, and the execution order of each process should be based on its function and The internal logic determines, and should not constitute any limitation on the implementation process of the embodiments of the present application.
  • the disclosed system, device, and method may be implemented in other ways.
  • the device embodiments described above are only schematic.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical, or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the device structure diagrams given in the device embodiments of this application only show the simplified design of the corresponding device.
  • the device may include any number of transmitters, receivers, processors, memories, etc., to implement the functions or operations performed by the device in each device embodiment of the present application, and all devices that can implement the present application All are within the scope of protection of this application.
  • the words “if” or “if” as used herein can be interpreted as “when” or “when” or “in response to determination” or “in response to detection”.
  • the phrases “if determined” or “if detected (statement or event stated)” can be interpreted as “when determined” or “in response to determination” or “when detected (statement or event stated) )” or “in response to detection (statement or event stated)”.
  • the program may be stored in a readable storage medium of a device, and when the program is executed , Including all or part of the above steps, the storage medium, such as: FLASH, EEPROM, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供了一种网络芯片,以及数据传输方法和通信系统。该网络芯片包括时隙调度器、信道编码器和数据分发器,其中时隙调度器用于确定来自两个业务接口的传输数据对应的传输时隙,信道编码器用于在上述两个时隙分别对上述两个传输数据进行编码,以分别得到两个码流数据,数据分发器用于将上述码流数据分别分发至对应的接收端。上述网络芯片灵活地接入多个不同或相同的业务接口,并且共用一个编码器,因此可以节约网络芯片的硬件资源。

Description

一种数据传输的方法、网络芯片以及通信系统 技术领域
本申请涉及通信领域,尤其涉及一种数据传输的方法、网络芯片以及通信系统。
背景技术
前向纠错(forward error correction,FEC)编码是一种在通信系统中控制传输错误的技术,通过在发送数据中加入额外的信息进行错误恢复,以降低误码率。随着串行数据速率的不断提升,已经接近每条通道56G比特/秒,信噪比对高速信号的影响正在不断提高,因此需要采用FEC技术对传输数据进行纠错,以降低误码率。
现有方案中,一个编码器对应一个业务接口,该编码器对接收到的该业务接口的数据进行编码。以以太网实现FEC编码的方式为例,在接收到以从太网接口传输的数据后,将该数据进行扰码、重组、插入预置标识等等之后,输入到编码器中,以输出码流数据,该码流数据将通过以太网的物理介质访问(physical media Access,PMA)发送至对应的接收端中。
上述方案中,业务接口与编码器是一一对应的。若有多个业务接口,则需要与该多个业务接口一一对应的编码器,容易产生资源浪费。例如,一个里德所罗门前向纠错码(Reed Solomon forward error correction,RS-FEC)编码器仅能支持单一的以太网端口,即RS-FEC编码器仅能处理一个业务接口传输的数据,若有多个业务接口,则需要多个一一对应的RS-FEC编码器,容易造成资源浪费。
发明内容
本申请实施例提供了一种数据传输的方法、网络芯片以及通信系统,用于实现灵活地接入多个不同或相同的业务接口,并且可以共用一个RS-FEC编码器,提高RS-FEC编码资源的利用率,节约网络资源。
有鉴于此,本申请第一方面提供一种数据传输的方法,包括:
获取第一传输数据,以及第二传输数据,该第一传输数据和该第二传输数据为多个业务接口对应的多组传输数据中的任意两组传输数据;通过信道编码器在第一传输时隙对该第一传输数据进行信道编码,得到第一码流数据,以及通过该信道编码器在第二传输时隙对该第二传输数据进行编码,得到第二码流数据,该第一传输时隙与该第二传输时隙为不同的时隙;之后将第一码流数据发送至与第一码流数据对应的接收端,以及将第二码流数据发送至与第二码流数据对应的接收端。
在本申请实施例中,可以接入多个业务接口,并获取多个业务接口对应的多组传输数据,每组传输数据都有对应的传输时隙。因此,可以使用同一个信道编码器在每组传输数据对应的传输时隙中对每组传输数据进行编码。例如,在第一传输时隙对第一传输数据进行编码,该第一传输数据可以是该多组传输数据中的任意一组,在第二传输时隙对第二传输数据进行编码,该第二传输数据为该多组传输数据中除第一传输数据之外的任意一组。 并且,第一传输时隙与第二传输时隙不同。因此,即使获取到多个业务接口对应的多组传输数据,也可以使用同一个信道编码器在对应的传输时隙对每组传输数据进行编码。可以实现多个业务接口共用一个编码器,实现编码器的高效利用,节约网络资源。
在本申请的一种可选实施方式中,将第一码流数据发送至与第一码流数据对应的接收端,以及将第二码流数据发送至与第二码流数据对应的接收端可以包括:
在该第一传输时隙,将该第一码流数据按照预置分发规则分发至对应的物理媒介适配子层PMA,以及在该第二传输时隙将该第二码流数据分发至该PMA,并通过该PMA将该第一码流数据传输至与该第一码流数据对应的接收端,以及将该第二码流数据传输至与该第二码流数据对应的接收端。在本申请实施例中,可以通过PMA层将第一码流数据与第二码流数据发送至对应的接收端,完成对码流数据的发送。使接收端可以接收到对应的码流数据。
在本申请的一种可选实施方式中,该多个业务接口中任一接口为以太网业务接口或灵活以太网FlexE接口,该获取第一传输数据,包括:
接收该以太网业务接口或FlexE接口至少一种接口中任意一个接口传输的初始码流数据;确定该初始码流数据的处理时隙;在该处理时隙对该初始码流数据进行编码,得到编码数据;在该处理时隙对该编码数据进行扰码,得到该第一传输数据。在本申请实施例中,可以接入一个或多个以太网业务接口或一个或多个灵活以太网(Flexible Ethernet,FlexE)接口,并且,可以对从该一个或多个以太网业务接口或一个或多个FlexE接口发送的数据确定处理时隙进行处理,通过时分复用的方式实现多个以太网业务接口或者FlexE接口的接入,使多个太网业务接口或者FlexE接口可以共用同一个信道编码器进行编码。提高信道编码器的利用率,节约网络资源。
在本申请的一种可选实施方式中,该多个业务接口包括至少一个高速互联(Interlaken)接口,则该获取第一传输数据,可以包括:
接收该至少一个Interlaken接口中任一接口传输的输入数据;对该输入数据进行扰码,得到扰码数据;在该扰码数据中添加标识数据,以得到预置长度的数据;将该预置长度的数据进行编组,以得到该第一传输数据。在本申请实施例中,当接入了一个或多个Interlaken接口时,可以分别对每个Interlaken接口发送的数据进行扰码与转码处理,得到信道编码器可以处理的传输数据。因此,可以实现Interlaken接口的接入,使一个或多个Interlaken可以使用一个信道编码器进行编码。提高信道编码器的利用率,节约网络资源。
在本申请的一种可选实施方式中,该多个业务接口包括至少一个灵活光传送网(Flexible optical transport network,FlexO)接口,则该获取第一传输数据,可以包括:
接收该至少一个FlexO接口中任意一个接口发送的该第一传输数据。在本申请实施例中,当接入了一个或多个FlexO接口时,可以直接对该FlexO接口传输的数据进行编码。因此,可以使一个或多个FlexO接口可以共用同一个信道编码器进行编码。提高信道编码器的利用率,节约网络资源。
在本申请的一种可选实施方式中,在通过信道编码器在第一传输时隙对该第一传输数 据进行信道编码,得到第一码流数据,以及通过该信道编码器在第二传输时隙对该第二传输数据进行编码,得到第二码流数据之前,该方法还可以包括:
根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。在本申请实施例中,在对每组传输数据进行信道编码,得到码流数据之前,可以根据预置规则确定每组擦混输数据对应的传输时隙。以便后续可以在对应的时隙对每组传输数据进行信道编码,实现信道编码器的时分复用,使多个业务接口可以共用同一个信道编码器。
在本申请的一种可选实施方式中,该根据预置规则确定该第一传输数据的该第一传输时隙,以及该第二传输数据的第二传输时隙,可以包括:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的传输时隙;确定该第一传输数据对应的第一业务接口,以及该第二传输数据对应的第二业务接口;根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。在本申请实施例中,可以提前为接入的每个业务接口分配传输时隙。在获取到每个业务接口对应的传输数据后,即可根据提前为接入的每个业务接口分配的传输时隙,确定获取到的每组传输数据的传输时隙。可以提高确定每组传输数据的传输时隙的效率。
在本申请的一种可选实施方式中,该根据预置规则确定该第一传输数据的该第一传输时隙,以及该第二传输数据的第二传输时隙,还可以包括:
根据预置的分配方式为获取到的每组传输数据分配传输时隙。包括在获取到第一传输数据之后,为第一传输数据分配第一传输时隙。在获取到第二传输数据之后,为第二传输数据分配第二传输时隙。在本申请实施例中,可以在获取到传输数据之后再为每组传输数据分配传输时隙。实时为获取到的传输数据分配传输时隙,灵活地确定每组传输数据对应的传输时隙,使可以根据信道编码器的工作状态分配传输时隙,进一步提高信道编码器的利用率。
在本申请的一种可选实施方式中,该第一传输时隙对该第一传输数据进行RS-FEC编码,以得到第一码流数据,可以包括:
在该第一传输时隙对该第一传输数据进行码块交织分组,以得到第一预处理数据;在该第一传输时隙对该第一预处理数据插入对齐标识,得到第二预处理数据;通过该信道编码器对该第二预处理数据进行信道编码,得到该第一码流数据。在本申请实施例中,在进行信道编码得到第一码流数据时,可以对第一传输数据进行码块交织分组、插入对齐标识,使信道编码器可以对得到的第二预处理数据进行信道编码,符合信道编码器的编码格式。
在本申请的一种可选实施方式中,该信道编码器为RS-FEC编码器。在本申请实施例中,信道编码器可以是RS-FEC编码器,因此,可以实现多个业务接口共用同一个RS-FEC编码器。提高RS-FEC编码器的利用率,节约网络资源。
本申请第二方面一种数据传输的方法,包括:
获取第一码流数据,以及第二码流数据,该第一码流数据为获取到的多组码流数据中的任意一组码流数据,该第二码流数据为获取到的该多组码流数据中与该第一码流不同的 任意一组码流数据,该多组码流数据对应多个业务接口;通过解码器在第一传输时隙对该第一码流数据进行解码,得到第一传输数据,通过该解码器在第二传输时隙对该第二码流数据进行解码,得到第二传输数据,该第一传输时隙与该第二传输时隙不同。
在本申请实施例中,在获取到多个业务接口对应的多组码流数据之后,使用同一个解码器在每组码流数据对应的传输时隙对每组码流数据进行解码,得到对应的传输数据。因此,可以实现多个业务接口共用同一个解码器。例如,第一码流数据以及第二码流数据后,确定第一码流数据的第一传输时隙,并在第一传输时隙对第一码流数据进行解码之后,发送至对应的第一业务接口。确定第二码流数据的第二传输时隙,并在第二传输时隙对第二码流数据进行解码,之后可以发送至对应的第二业务接口。因此,本申请实施例可以接受多个业务接口对应的多组码流数据,每组码流数据可以对应不同的传输时隙。可以使用同一个解码器在对应的传输时隙对每组传输数据进行解码,以得到传输数据。因此,多个相同或不同的业务接口可以共用同一个解码器。可以提高解码资源的利用率,节约网络资源。
在本申请的一种可选实施方式中,若该第一业务接口的类型为以太网业务接口或FlexE接口中的任意一种,则在该通过解码器在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,该方法还可以包括:
确定该第一传输数据的处理时隙;在该处理时隙对该第一传输数据进行解扰,以得到解扰数据;在该处理时隙对该解扰数据进行转码,以得到与该第一业务接口对应的第三码流数据,并向该第一业务接口传输该第三码流数据。在本申请实施例中,接入的业务接口可以包括以太网业务接口或FlexE接口中的任意一种,针对以太网业务接口或FlexE接口对应的数据格式,可以在对应的处理时隙对第一传输数据进行解扰、转码等,得到与以太网业务接口或FlexE接口对应的第三码流数据。使接入的以太网业务接口或FlexE接口可以获取到对应的码流数据,通过时分复用的方式接入一个或多以太网业务接口或FlexE接口。使多个以太网业务接口或FlexE接口可以共用同一个信道编码器,提高信道编码器的利用率,节约编码资源。
在本申请的一种可选实施方式中,若该第一业务接口为Interlaken接口,则在该通过解码器在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,该方法还可以包括:
对该第一传输数据进行解码,以得到预置长度的数据;删除该预置长度的数据中的标识数据,以得到扰码数据;对该扰码数据进行解扰,以得到该Interlaken接口对应的业务数据,并将该业务数据传输至该第一业务接口。在本申请实施例中,可以接入Interlaken接口,并针对Interlaken接口对应的传输数据进行处理,使得到的业务数据可以传输至对应Interlaken接口。实现一个或多个Interlaken接口的接入,使多个Interlaken接口可以使用同一个解码器,并且可以使Interlaken与其他接口共用同一个解码器,提高解码器的利用率,节约解码资源。
在本申请的一种可选实施方式中,若该第一业务接口为FlexO接口,则在该通过解码器在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,该方法还可以包括:
将该第一传输数据发送至该第一业务接口。在本申请实施例中,可以接入FlexO接口, 并且,在得到第一传输数据之后,可以直接将第一传输数据发送至第一业务接口。可以实现一个或多个FlexO接口的接入,使多个FlexO接口共用同一个解码器,或者使FlexO接口与其他接口可以共用同一个解码器。提高解码器的利用率,节约解码资源。
在本申请的一种可选实施方式中,在该通过解码器在第一传输时隙对该第一码流数据进行解码,以得到第一传输数据,通过该解码器在第二传输时隙对该第二码流数据进行解码,得到第二传输数据之前,该方法还可以包括:
根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。在本申请实施例中,在对每组码流数据进行解码之前,还需要确定每组码流数据的传输时隙,以使解码器可以在每组码流数据对应的传输时隙对每组码流数据进行解码。且该每组码流数据可以对应多个业务接口,因此,可以通过时分复用的方式实现对多个业务接口对应的码流数据的解码。使多个业务接口可以共用同一个解码器。提高解码器的利用率,节约解码资源。
在本申请的一种可选实施方式中,该根据预置规则确定该第一码流数据对应的该第一传输时隙,以及该第二码流数据对应的该第二传输时隙,可以包括:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的传输时隙;确定该第一码流数据对应该多个业务接口中的第一业务接口,该第二码流数据对应该多个业务接口中的第二业务接口;根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。在本申请实施例中,可以提前为接入的每个业务接口分配传输时隙。在获取到每个业务接口对应的码流数据后,即可根据提前为接入的每个业务接口分配的传输时隙,确定获取到的每组码流数据的传输时隙。可以提高确定每组传输数据的传输时隙的效率。
在本申请的一种可选实施方式中,该根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙,还可以包括:
根据预置的分配方式为获取到的每组码流数据分配传输时隙。包括在获取到第一码流数据之后,为第一码流数据分配第一传输时隙。在获取到第二码流数据之后,为第二码流数据分配第二传输时隙。在本申请实施例中,可以在获取到码流数据之后再为每组码流数据分配传输时隙。实时为获取到的码流数据分配传输时隙,灵活地确定每组码流数据对应的传输时隙,使可以根据解码器的工作状态分配传输时隙,进一步提高解码器的利用率。
在本申请的一种可选实施方式中,该通过解码器在第一传输时隙对该第一码流数据进行解码,得到该第一传输数据,可以包括:
在该第一传输时隙获取该第一码流数据中的对齐标识;在该第一传输时隙根据该对齐标识对该第一码流数据进行对齐,得到对齐数据;在该第一传输时隙对该对齐数据进行解码,得到该第一传输数据。在本申请实施例中,在进行解码之前,还可以对每组码流数据根据对齐标识进行对齐。以对接收到的每组码流数据进行校正,避免码流数据出现错位、丢失等情况。在得到对齐数据之后,再通过解码器对对齐数据进行解码,提高得到的码流数据的准确度。
在本申请的一种可选实施方式中,该解码器为RS-FEC解码器。在本申请实施例中,信道编码器可以是RS-FEC编码器,因此,可以实现多个业务接口共用同一个RS-FEC编码器。提高RS-FEC解码器的利用率,节约解码资源。
本申请第三方面提供一种网络芯片,包括:信道编码器、时隙调度器以及数据分发器;
该时隙调度器,用于确定第一传输数据的第一传输时隙和第二传输数据的第二传输时隙,该第一传输数据和所述第二传输数据为多个业务接口对应的多组传输数据中的任意两组传输数据;
该信道编码器,用于在第一传输时隙对该第一传输数据进行信道编码,得到第一码流数据,以及通过该信道编码器在第二传输时隙对该第二传输数据进行编码,得到第二码流数据;
该数据分发器,用于将该第一码流数据分发至与该第一码流数据分发至对应的接收端,以及将该第二码流分发至与该第二码流对应的接收端。
在本申请的一种可选实施方式中,该数据分发器具体用于在该第一传输时隙将该第一码流数据按照预置分发规则分发至对应的物理媒介适配子层PMA,以及在该第二传输时隙将该第二码流数据分发至该PMA,以通过该PMA将该第一码流数据传输至与该第一码流数据对应的接收端,以及将该第二码流数据传输至与该第二码流数据对应的接收端。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个类型为以太网或灵活以太网FlexE的接口、第一转码器以及第一扰码器;
该至少一个类型为以太网或灵活以太网FlexE的接口中任一接口,用于接收初始码流数据;
该时隙调度器,还用于确定该初始码流数据的处理时隙;
该第一转码器,用于在该处理时隙对该初始码流数据进行转码,得到转码数据;
该第一扰码器,用于在该处理时隙对该转码数据进行扰码,得到该第一传输数据。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个Interlaken接口。第二转码器、第二扰码器以及第三转码器;
该至少一个Interlaken接口中的任一接口,用于接收输入数据;
该第二扰码器,用于对该输入数据进行扰码,得到扰码数据;
该第二转码器,用于在该扰码数据中添加标识数据,以得到预置长度的数据;
该第三转码器,用于将该预置长度的数据进行编组,以得到该第一传输数据。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个FlexO接口。
该至少一个FlexO接口中任一接口,可以用于接收该第一传输数据。
在本申请的一种可选实施方式中,
该时隙调度器,具体用于根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。
在本申请的一种可选实施方式中,该时隙调度器,具体用于:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的传输时隙;
确定该第一传输数据对应的第一业务接口,以及该第二传输数据对应的第二业务接口;
根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。
在本申请的一种可选实施方式中,该信道编码器,具体可以用于:
在该第一传输时隙对该第一传输数据进行码块交织分组,以得到第一预处理数据;在该第一传输时隙对该第一预处理数据插入对齐标识,得到第二预处理数据;在该第一传输时隙对该第二预处理数据进行信道编码,得到该第一码流数据。
在本申请的一种可选实施方式中,该信道编码器为里德所罗门前向纠错码RS-FEC编码器。
本申请第四方面提供一种网络芯片,包括:解码器以及时隙调度器;
该时隙调度器,用于确定第一码流数据对应的第一传输时隙,以及第二码流数据对应的第二传输时隙,该第一码流数据和该第二码流数据为多个业务接口对应的多组码流数据中的任意两组码流数据;
该解码器,用于在第一传输时隙对该第一码流数据进行解码,得到第一传输数据,通过该解码器在第二传输时隙对该第二码流数据进行解码,得到第二传输数据,该第一传输时隙与该第二传输时隙不同。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个类型为以太网或灵活以太网FlexE的接口、第一解扰器、第一转码器以及第一分发器;
该时隙调度器,还用于在该解码器在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,确定该第一传输数据的处理时隙;
该第一解扰器,用于在该处理时隙对该第一传输数据进行解扰,以得到解扰数据;
该第一转码器,用于在该处理时隙对该解扰数据进行转码,以得到第三码流数据;
该第一分发器,用于向将该第三码流数据分发至至少一个类型为以太网或灵活以太网FlexE的接口中的任一接口。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个Interlaken接口、第二解扰器、第二转码器以及第三转码器;
该第二转码器,用于在该解码器在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,对该第一传输数据进行转码,以得到预置长度的数据;
该第三转码器,用于删除该预置长度的数据中的标识数据,以得到扰码数据;
该第二解扰器,用于对该扰码数据进行解扰,以得到与Interlaken接口对应的业务数据;
该至少一个Interlaken接口中的任一接口,用于传输该业务数据。
需要说明的是,网络芯片可以包括至少一个第二转码器、以及至少一个第二扰码器,每个第三转码器、以及第二扰码器可以对应一个Interlaken接口。
在本申请的一种可选实施方式中,该网络芯片还可以包括:至少一个FlexO接口,以及第二分发器;
该第二分发器,用于在该解码器在第一传输时隙对该第一码流数据进行解码得到第一 传输数据之后,将该第一传输数据发送至至少一个FlexO接口中的任一接口。
在本申请的一种可选实施方式中,
该时隙调度器,具体用于根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。
在本申请的一种可选实施方式中,该时隙调度器,具体用于:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的第传输时隙;确定该第一码流数据对应该多个业务接口中的第一业务接口,以及该第二码流数据对应该多个业务接口中的第二业务接口;根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。
在本申请的一种可选实施方式中,该网络芯片还可以包括:同步器;
该同步器,用于在该第一传输时隙获取该第一码流数据中的对齐标识;
该同步器,还用于在该第一传输时隙根据该对齐标识对该第一码流数据进行对齐,得到对齐数据;
该解码器,具体用于在该第一传输时隙对该对齐数据进行解码,得到该第一传输数据。
在本申请的一种可选实施方式中,该解码器为RS-FEC解码器。
本申请第五方面提供一种通信系统,该通信系统可以包括第一网络芯片与第二网络芯片,该第一网络芯片可以是本申请第三方面或第三方面任一实施例提供的网络芯片,该第二网络芯片可以是本申请第四方面或第四方面任一实施例提供的网络芯片。
本申请实施例提供的技术方案中,网络芯片可以接入多个业务接口,并获取多个业务接口对应的多组传输数据,每组传输数据都有对应的传输时隙。因此,可以使用同一个信道编码器在每组传输数据对应的传输时隙中对每组传输数据进行编码。例如,在第一传输时隙对第一传输数据进行编码,该第一传输数据可以是该多组传输数据中的任意一组,在第二传输时隙对第二传输数据进行编码,该第二传输数据为该多组传输数据中除第一传输数据之外的任意一组。并且,第一传输时隙与第二传输时隙不同。因此,即使获取到多个业务接口对应的多组传输数据,也可以使用同一个信道编码器在对应的传输时隙对每组传输数据进行编码。可以实现多个业务接口共用一个编码器,实现编码器的高效利用,节约网络资源。
附图说明
图1为本申请实施例中网络架构示意图;
图2为本申请实施例提供的数据传输的方法的一种流程示意图;
图3为本申请实施例提供的数据传输的方法的另一种流程示意图;
图4为本申请实施例提供的数据传输的方法的一种编码解码流程示意图;
图5为本申请实施例提供的数据传输的方法的一种66B至257B编码方式示意图;
图6为本申请实施例提供的数据传输的方法的另一种66B至257B编码方式示意图;
图7为本申请实施例提供的数据传输的方法的另一种66B至257B编码方式示意图;
图8为本申请实施例提供的数据传输的方法的另一种66B至257B编码方式示意图;
图9为本申请实施例提供的数据传输的方法的一种扰码方式示意图;
图10为本申请实施例提供的网络芯片的一种结构示意图;
图11为本申请实施例提供的网络芯片的另一种结构示意图。
具体实施方式
本申请提供一种数据传输的方法、网络芯片以及通信系统,用于实现灵活地接入多个不同或相同的业务接口,并且可以共用一个RS-FEC编码器,提高RS-FEC编码资源的利用率,节约网络资源。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请提供的数据传输的方法可以应用于高速的灵活以太网(Flexible Ethernet,FlexE)、高速互联(Interlaken)、高速传输接口灵活光传送网(Flexible optical transport network,FlexO)等网络。进一步地,还可以应用于其他包括以太网、FlexE、FlexO以及Interlaken相关的业务接口或协议等的通信系统,例如,可以应用于第五代移动通信技术(5th-Generation,5G)中的承载网络。具体例如,FlexE可以应用于5G网络中的网络分片。
具体地,以以太网的架构为例进行说明,请参阅图1,本申请提供的数据传输的方法的网络架构。
通常,通信系统可以参考七层模型(Open System Interconnection,OSI)进行分层,可以包括应用层、表示层、会话层、传输层、网络层、数据链路层以及物理层,其中,本申请实施例中应用的架构可以包括全部或部分的物理层。可以包括:物理编码子层(Physical Coding Sublayer,PCS)、物理媒介适配子层(Physical Medium Attachment,PMA)、物理媒介相关子层(Physical Medium Dependent,PMD)。
PCS子层可以接入以太网、FlexE、FlexO以及Interlaken等业务接口,其中,图1中仅以以太网接口、FlexE接口、FlexO接口以及Interlaken接口进行示例性说明,PCS子层还可以接收其他网络业务的业务接口发送的数据,具体此处并不作限定。
PCS子层和PMA子层之间可以通过适配单元接口(Attachment Unit Interface,AUI) 连接,AUI接口可以为物理接口。
PCS子层对接收到的各个业务接口发送的数据进行转码、调度、预处理或RS-FEC编码等处理后,分发至PMA子层。
PMA子层将接收到的PCS数据进行串并联转换,并将待发送的数据通过预置的发送通道发送至PMD子层。
PMD子层将接收到的PMA数据进行数据调制,然后通过媒介发送至对应的接收端,媒介可以是光纤、传输线等等。
本申请实施例提供的数据传输的方法应用于PCS子层,具体可以包括数据的发送与接收处理。其中,PCS子层可以接收来自多个业务接口发送的数据,多个业务接口可以包括相同或不同业务类型的业务接口,可以为每个业务接口传输的数据分配不同的时隙,在不同的时隙对每个业务接口传输的数据进行处理,以实现多个业务接口共用编码器,提高编码器的利用率,降低成本。
首先,对本申请实施例提供的数据的发送流程进行说明。本申请实施例提供的数据传输的方法的流程示意图可以如图2所示,可以包括:
201、获取多个业务接口对应的多组传输数据。
首先,获取多个业务口对应的多组传输数据。其中,该多个为两个或两个以上,该多组为两组或两个以上。并且该多个业务接口可以是业务类型相同的业务接口,也可以是业务类型不同的业务接口。该多个业务接口为接入PCS子层的业务接口。该多组数据为该多个业务接口对应的传输数据,其中,一个业务接口可以对应一组或多组传输数据。
其中,本申请实施例中,传输数据的数量可以大于业务接口的数量,也可以小于业务接口的数量。例如,可以接收N个业务接口对应的M组传输数据,其中,N>=2,N可以大于或等于M,N也可以小于M,具体可以根据实际应用场景调整。
具体地,该多个业务接口可以包括不同业务类型的业务接口,例如,该多个业务接口可以包括一个或多个的不同业务类型的接口,该不同业务类型可以是以太网接口、FlexE接口、FlexO接口或Interlaken接口等。并且,根据业务接口的业务类型的不同,获取对应的传输数据的过程也不相同,可以是直接从业务接口中接收传输数据,也可以是对业务接口发送的数据进行进一步处理后得到传输数据,更具体地步骤在以下实施例中将做进一步说明,此处不作赘述。
并且,也可以接收一组传输数据。当接收到的数据为一组时,该一组传输数据可以是以太网接口、FlexE接口、FlexO接口或Interlaken接口中任一接口对应的数据。
因此,本申请实施例中,可以接入相同或不同业务类型的多个业务接口,并获取该多个业务接口的数据,以便后续进行编码处理,实现多个业务接口共用编码器,提高编码器的利用率。
202、通过信道编码器在第一传输时隙对第一传输数据进行编码,以得到第一码流数据,以及在第二传输时隙对第二传输数据进行编码,以得到第二码流数据。
在接收到多个业务接口对应的多组传输数据后,可以确定每组传输数据对应的传输时隙。并在每组传输数据对应的时隙,通过同一信道编码器,对每组传输数据进行编码,得 到每组数据对应的码流数据。以第一传输数据与第二传输数据为例,以确定第一传输数据的第一传输时隙,以及第二传输数据的第二传输时隙,第一传输数据为该多组传输数据中的任意一组传输数据,第二传输数据为该多组数据中与第一传输数据不同的任意一组传输数据,第一传输时隙为与该第一传输数据对应的时隙,第二传输时隙为第二传输数据对应的时隙。并且,第一传输时隙与第二传输时隙不同。在第一传输时隙将第一传输数据输入信道编码器,输出第一码流数据,并且在第二传输时隙可以通过同一信道编码器,对第二传输数据进行信道编码,输出第二码流数据。
获取到的每组传输数据,都可以在对应的传输数据进行编码,得到对应的码流数据。例如,若获取到i组传输数据,i为大于等于2的整数,在获取到该i组传输数据中每组传输数据一一对应的传输时隙后,在每组传输数据对应的传输时隙对每组传输数据进行编码,得到每组传输数据对应的码流数据。
其中,可选的,对第一传输数据进行编码的方式可以是RS-FEC编码,即该信道编码器可以是RS-FEC编码器。例如,可以将该第一传输数据输入到RS-FEC编码器,以进行RS-FEC编码,得到RS-FEC编码后的第一码流数据。除了RS-FEC编码,该信道编码方式也可以包括常用的FEC编码方式,或者下一代网络中将使用到的编码方式等等。
示例性地,具体的RS-FEC编码过程可以是,根据预置的生成多项式对第一传输数据进行计算,计算出第一传输数据的校验多项式,然后将第一传输数据与校验多项式进行组合,得到第一码流数据。
其中,可选地,在本申请实施例中,每组传输数据对应的传输时隙可以是预置的,也可以是在获取到传输数据后实时分配的。具体地,若传输时隙为预置的,则在获取该多组传输数据之前,可以为每个接入的业务接口分配对应的时隙,并可以保存在数据库中。并且,更具体地,为每个接入的业务接口分配的时隙还可以是按照固定周期分配的,例如,一个周期可以包括N个时隙,然后将该N个时隙分别分配给接入的业务接口,N>=1。在获取到业务接口对应的传输数据后,可以根据该业务接口从数据库中查找该传输数据的传输时隙。若传输时隙为实时分配的,在获取该多组传输数据之后,可以根据业务接口的业务类型进行时隙分配,也可以按照获取顺序进行时隙分配,还可以按照传输数据的优先级进行时隙分配等等,具体可以根据实际应用场景进行调整。
此外,可选的,在获取到每组传输数据后,也可以对每组数据进行其他处理,例如,对传输数据进行分组、插入预置的标识数据等等,之后再进行编码。
203、在第一传输时隙,将第一码流数据按照预置分发规则分发至对应的PMA,以及在第二传输时隙,将第二码流数据按照预置分发规则分发至对应的PMA。
在对每组传输数据完成RS-FEC编码,得到每组传输数据对应的码流数据后,根据每组码流数据对应的传输时隙将第一码流数据按照预置的分发规则分发至PMA,并将第二码流数据按照预置的规则分发至PMA,由PMA确定码流数据的传输通道,并发送至PMD子层,通过PMD子层确定传输通道,将第一码流数据传输至第一码流数据对应的接收端,并将第二码流数据传输至第二码流数据对应的接收端。
该预置的分发规则可以是,确定第一传输数据对应的业务接口对应的传输通道,并将 第一码流数据分配至对应的传输通道中进行发送。以及确定第二传输数据对应的业务接口对应的传输通道,并将第二码流数据分配至对应的传输通道中进行发送。
需要说明的是,本申请实施例中的第一传输数据与第二传输数据仅仅是示例性说明,实际可以接收多组传输数据,为每组传输数据确定对应的传输时隙。并在每组传输数据对应的传输数据使用同一信道编码器进行信道编码,使多个业务接口可以共用一个编码器。
在本申请实施例中,PCS子层可以接入多个业务接口,该多个业务接口可以是业务类型相同的业务接口,也可以是业务类型不同的业务接口。并获取该多个业务接口对应的传输数据,包括直接接收业务接口发送的数据,或对接收到的业务接口发送的数据处理后的数据。并确定该多个业务接口对应的传输数据的传输时隙,根据传输时隙对传输数据进行编码以及分发等,完成对多个业务接口对应的传输数据的处理。因此,本申请实施例提供的数据传输方法可以通过一个RS-FEC编码器,通过分配时隙的方式,对多个业务接口的传输数据进行RS-FEC编码,以实现RS-FEC资源的高效利用。
前述对本申请提供的数据传输方法的发送流程进行了说明,下面对本申请提供的数据传输方法的接收流程进行详细说明,请参阅图3,本申请实施例提供的数据传输方法的另一种流程示意图,可以包括:
301、获取多组码流数据。
首先获取多组码流数据,该多组码流数据可以与多个业务接口对应,当与多个业务接口对应时,该多个业务接口的业务类型可以相同,也可以不同。
该多组码流数据可以是直接从PMA子层接收到的数据,也可以是对从PMA子层接收到的数据进行处理后得到数据,例如,在获取该多组码流数据之前,还可以包括对接收的数据进行解调、偏斜补偿等步骤,以得到该多组码流数据,具体此处不再一一阐述。
302、通过解码器在第一传输时隙对第一码流数据进行解码,得到第一传输数据,在第二传输时隙对第二码流数据进行解码,得到第二传输数据。
在获取到多组码流数据后,可以确定每组码流数据对应的传输时隙。并且在确定每组码流数据的传输时隙后,使用同一编码器在每组码流数据对应的传输时隙对每组码流数据进行编码。
以第一码流数据与第二码流数据为例,可以确定第一码流数据对应的第一传输时隙,以及第二码流数据对应的第二传输时隙。第一码流数据为该多组码流数据中任意一组码流数据,第二码流数据为该多组码流数据中除第一码流数据之外的任意一组码流数据。第一传输时隙为该第一码流数据对应的传输时隙,第二传输时隙为第二码流数据对应的传输时隙。本申请实施例仅以该多组码流数据中的第一码流数据与第二码流数据进行示例性说明。
在确定第一码流数据对应的第一传输时隙后,使用解码器在第一传输时隙对第一码流数据进行解码,以得到第一传输时隙。在确定第二码流数据对应的第二传输时隙后,使用同一解码器在第二传输时隙对第二码流数据进行解码,得到第二传输数据。
具体地,发送端侧在发送数据之前,对数据进行编码,因此,在接收到第一码流数据后,可以对第一码流数据进行解码,以完成对第一码流数据的纠错,得到第一解码数据。
可选的,具体的解码方式可以是针对信道编码进行的解码,例如,若网络芯片执行的是RS-FEC编码,那么,本申请实施例中可以对第一码流数据进行RS-FEC解码。
在本申请的一种可选实施方式中,在对第一码流数据进行解码之前,若第一码流数据分为多个数据包由多个传输通道并行传输,可能因每二个传输通道的时延不同,导致获取到的第一码流数据错位。因此,还可以对该多个数据包进行校正。具体地,每个数据包中可能包括插入的对齐标识(Align Marker,AM),可以根据对齐标识,对该多个数据包进行重组,可以避免重组后的第一码流数据出现数据错误。
在本申请的一种可选实施方式中,每组码流数据的传输时隙可以是在接收到每组码流数据后实时分配的,在接收到每组码流数据后,可以为每组码流数据分配传输时隙,在每组码流数据对应的传输时隙对每组码流数据进行处理,可以避免同时处理多组码流数据,造成网络芯片负载过大或数据错误等。具体地,可以是按照接收顺序为每组码流数据分配传输时隙,也可以是按照码流数据的优先级分配传输时隙等,可以根据实际应用场景进行调整,此处不作限定。
在本申请的一种可选实施方式中,每组码流数据的传输时隙还可以是在接收每组码流数据之前,按照预置方式为每个业务接口分配传输时隙的。例如,可以将一个周期平均分为多个时隙,每个业务接口对应的时隙大小相同,也可以按照每个业务接口的数据量来分配时隙,数据量大的业务接口,所分配的时隙也可以较大等等。又例如,若网络芯片接入有N个业务接口,N>=1,该N个业务接口可以是相同业务类型的接口,也可以是不同业务类型的接口,还可以包括多个相同业务类型以及多个不同业务类型的接口。在接收每个业务接口对应的码流数据之前,为每个业务接口分配预置的传输时隙,在接收到码流数据后,可以首先判断该码流数据对应的业务接口,然后根据对应的业务接口查询该码流数据的传输时隙。
303、将第一传输数据传输至对应的第一业务接口,将第二传输数据传输至对应的第二业务接口。
在对每组码流数据分别在对应的时隙进行解码,得到对应的传输数据后之后,可以分别将每组传输数据传输至对应的业务接口。以第二传输数据与第二传输数据为例,在对第一码流数据进行解码得到第一传输数据之后,将第一传输数据分发至对应的第一业务接口。在使用同一解码器对第二码流数据进行解码得到第二传输数据之后,将第二传输数据分发至对应的第二业务接口。
需要说明的是,本申请实施例中,在得到每组传输数据后,可以根据业务接口的业务类型,对每组传输数据进行传输。可以是直接发送至对应的业务接口,也可以是对每组传输数据进行进一步解码、解扰等处理之后,再发送至对应的业务接口。例如,若第一传输数据对应的业务接口为FlexE接口或以太网接口,则对得到的第一传输数据进行进一步解扰并解码之后,再发送至该FlexE接口或以太网接口。若第一传输数据对应的业务接口为FlexO接口,则直接将该第一传输数据发送至该FlexO接口。若该业务接口为Interlaken接口,则对第一传输数据进行解码并解扰后,发送至该Interlaken接口。
还需要说明的是,本申请实施例中的步骤303为可选步骤。
在本申请实施例中,在获取到多个业务接口对应的多组码流数据之后,使用同一个解码器在每组码流数据对应的传输时隙对每组码流数据进行解码,得到对应的传输数据。因此,可以实现多个业务接口共用同一个解码器。例如,第一码流数据以及第二码流数据后,确定第一码流数据的第一传输时隙,并在第一传输时隙对第一码流数据进行解码之后,发送至对应的第一业务接口。确定第二码流数据的第二传输时隙,并在第二传输时隙对第二码流数据进行解码,之后可以发送至对应的第二业务接口。因此,本申请实施例可以接受多个业务接口对应的多组码流数据,每组码流数据可以对应不同的传输时隙。可以使用同一个解码器在对应的传输时隙对每组传输数据进行解码,以得到传输数据。因此,多个相同或不同的业务接口可以共用同一个解码器。可以提高解码资源的利用率,节约网络资源。
更进一步地,下面对本申请实施例提供的数据传输方法的发送与接收流程进行更详细的示例性说明。请参阅图4,本申请实施例提供的数据传输方法的另一种实施例示意图,可以包括发送流程与接收流程。发送流程可以理解为编码流程,接收流程可以理解为解码流程,下面结合编码流程与解码流程,以RS-FEC编码与解码的方式为例,进行更进一步地详细说明。
其中,本申请实施例中的业务接口可以包括不同类型的多个接口,下面以4种接口为例,可以包括:以太网接口、FlexE接口、FlexO接口以及Interlaken接口,进行示例性说明。示例性地,每种业务类型的接口可以有一个或者多个,例如,Interlaken接口可以有一个或者多个,图4中仅以2个为例进行说明。
首先,对PCS子层发送数据的步骤进行说明。其中,PCS子层可以接收多个业务接口发送的数据,该多个业务接口可以包括:以太网接口、FlexE接口、FlexO接口或Interlaken接口等等。通常,对于接收到的FlexO接口传输的数据,可以直接作为传输数据进行时分复用(Time Division Multiplexing,TDM)调度,而对于以太网接口、FlexE接口以及Interlaken接口传输的数据,则需要进行处理,得到对应的传输数据之后,才进行TDM调度。
业务接口可以包括一个或多个以太网接口或FlexE接口,当接收到以太网接口或FlexE接口的传输的初始码流数据时,该初始码流数据,即以太网接口的数据或FlexE接口的数据可以是以66B为单位的数据,可以对接收到的以太网接口的数据与FlexE接口的数据进行TDM调度(即步骤4011),确定每个业务接口对应的处理时隙。其中,每个业务接口对应的处理时隙可以是预置的,即提前为每个业务接口分配的,也可以是在接收到每个业务接口发送的数据后,实时分配的。当每个业务接口对应的处理时隙为预置的,则可以在接收到每个业务接口对应的数据时,在数据库中查询每个业务接口对应的时隙,以便后续在对应的处理时隙处理每个业务接口对应的数据。若每个业务接口对应的处理时隙为实时分配的,则可以对获取到的每个业务接口对应的数据按照业务类型、获取顺序、优先级等等,进行实时分配,以得到每个业务接口对应的数据的处理时隙。因此,本申请实施例在接收到以太网接口的数据或FlexE接口的数据后,可以确定每个业务接口对应的处理时隙,进行TDM调度,对每个业务接口传输的数据进行分时处理,实现一个或多个以太网接口或 FlexE接口对应的数据的处理,使一个或多个以太网接口或FlexE接口对应的数据可以共用RS-FEC编码资源,提高RS-FEC编码资源的利用率。
在进行66B数据的TDM调度后,确定每个业务接口对应的处理时隙后,在每个处理时隙进行对应的66B至257B转码(即步骤4012),即对66B数据在对应的处理时隙进行转码,得到256B数据。具体地,通常接收到的业务接口发送的数据为数据流,即可以包括多个66B数据。可以将数据进行处理,包括将多个66B数据进行处理组合,得到257B数据,其中,因通常接收到的数据为66B数据的数据流,因此,将多个66B数据进行处理组合后,可以得到包括257B数据的数据流。
通常,66B数据可以包括数据66B与控制66B,数据66B的比特0位为0,比特1位为1,控制66B的比特0位为1,比特1位为0。
示例性地,将66B数据转码为257B数据的规则可以有多种,具体可以包括:
1、当数据流中的66B数据都为数据66B时,将每个数据的比特0位与比特1位删除,将删除后的64B数据组成256比特的数据,并且在256比特的数据的头部添加值为1的比特位。例如,如图5所示,包括4个数据66B:tx_code_0、tx_code_1、tx_code_2以及tx_code_3。可以将4个数据66B的前2位删除,然后组成256B数据,在256数据头部增加比特1,即可得到257B数据,即tx_xcoded。
2、当第1个66B数据为控制66B,后面3个数据为数据66B时,可以将控制66B与数据66B的比特0位与比特1位删除,并且把控制66B的比特6位至比特9位删除,组成252B数据,然后在252B数据头部添加0111表示控制66B后跟着3个数据66B,组合成256B数据,然后在256B数据头部添加比特0,得到257B数据,且比特位0表示该257B数据为带控制数据的257B数据。例如,如图6所示,包括1个数据66B以及2个控制66B:tx_code_0、tx_code_1、tx_code_2以及tx_code_3。将控制66B与数据66B的比特0位与比特1位删除,并且把控制66B的比特6位至比特9位删除,组成252B数据,然后在252B数据头部添加0111表示控制66B后包括3个数据66B,组合成256B数据,然后在256B数据头部添加比特0,得到257B数据,即tx_xcoded。
3、当前3个数据为数据66B,后1个为控制66B时,可以将数据66B与控制66B的比特0位与比特1位删除,控制66B把比特6位到比特9位删除掉,在最前面添加4比特1111表示3个数据66B后面跟着1个控制66B,拼成1个256比特数据,然后在最前面添上比特0表示是带控制的257B。例如,如图7所示,包括3个数据66B以及1个控制66B:tx_code_0、tx_code_1、tx_code_2以及tx_code_3。将数据66B与控制66B的比特0位与比特1位删除,控制66B把比特6位到比特9位删除掉,在最前面添加4比特1111表示3个数据66B后面跟着1个控制66B,拼成1个256比特数据。然后在最前面添上比特0,得到257B数据,即tx_xcoded。
4、当4个数据都是控制66B时,删除所有的控制66B把比特0位和比特1位,第1个控制66B把比特6位至比特9位删除掉,在最前面添加4比特1112表示4个控制66B,组合为1个256比特数据,然后在最前面添上比特0表示是带控制的257B。例如,如图8所示,包括4个控制66B:tx_code_0、tx_code_1、tx_code_2以及tx_code_3。删除所有 的控制66B把比特0位和比特1位,第1个控制66B把比特6位至比特9位删除掉,在最前面添加4比特1112表示4个控制66B,组合为1个256比特数据。然后在最前面添上比特0,得到257B数据,即tx_xcoded。
在进行66B至257B转码(即步骤4012)后,对得到的257B数据进行扰码(即步骤4013)。扰码通常是对对257B数据进行随机处理,减少连0和连1的出现,从而减少码间干扰和抖动,方便接收端的时钟提取。同时还扩展了基带信号频谱,起到加密的效果。
示例性地,扰码的其中一种实现可以如图9所示。其中,扰码多项式可以是:G(x)=1+x 39+x 58。通常,扰码是一个循环计算的过程,输入的扰码器的数据是以数据流的形式输入,扰码器输出的扰码后的数据也是以数据流的形式输出。具体地,S0至S57可以理解为串行的同步移位寄存器,持续输入257B数据时,首先与一个数据进行异或运算,该数据为对S38与S57分别输出的数据进行异或运算后的数据,然后输出该与一个数据进行异或运算后的数据,并且输入值S0,通过S0至S57进行移位,并将移位寄存器S38与S57分别输出的值进行异或,并且将异或计算的值继续与输入的数据进行异或计算后输出,并且移位到S0继续进行移位与异或计算。经扰码器输出的数据即以太网接口或FlexE对应的传输数据。
可以理解为,首先接收接入PCS子层的任一个以太网业务接口或任一个FlexE接口传输的初始码流数据,确定初始码流数据的处理时隙,根据该处理时隙对该码流数据进行转码,得到转码数据,根据该处理时隙对转码数据进行扰码,以得到以太网接口或与FlexE对应的传输数据,例如,前述的第一传输数据或第二传输数据。因此,可以实现以太网接口与FlexE接口数据的同时获取,可以为每个以太网接口或FlexE接口分配时隙,并在每个时隙处理对应的业务接口的数据,通过时分的方式实现对以太网接口的数据与FlexE接口的数据的处理,节约网络资源。
然而,FlexO接口传输的数据,已符合后续的进行调度、预处理以及RS-FEC编码等数据需求,因此无需经过转码、扰码等处理,可直接接收FlexO接口传输的数据,后续进行TDM调度、预处理等步骤。即该FlexO接口传输的数据即可作为前述的第一传输数据。通常,FlexO接口传输的是数据流,RS-FEC可以直接对FlexO接口传输的数据流按照257B数据进行处理。因此,在接收到FlexO接口发送的数据后,无需进行处理,即可进行调度与预处理等步骤。
此外,PCS子层还可以接收一个或多个Interlaken接口传输的输入数据,其中,可以通过空分的方式实现Interlaken接口传输的输入数据的接口。以其中一个Interlaken接口为例,在接收到任一个Interlaken接口传输的初始码流数据后,首先对接收到的输入数据进行扰码(即步骤4021),其中,接收到的输入数据为XB长度的数据,X>=1,更一步地,扰码的步骤可以与前述步骤4013类似,此处不再赘述。
然后对扰码后的XB数据进行XB至YB转码(即步骤4022)。具体可以是在XB前添加n位标识数据,以得到YB数据,n为不小于0的整数。例如,若X=64,Y=67,则可以在XB数据前添加3比特的标识数据。例如,可以在64B数据的头部增加001、010、101、110等,其中,001可以标识为数据块,且所有64比特数据位不取反码;010可以标识为控制块, 且所有64比特数据位不取反码;101可以标识为数据块,所有64比特数据位取反码;110可以标识为控制块,且所有64比特数据位取反码。
在得到YB数据后,继续进行YB至ZB转码(即步骤4023),以得到Interlaken接口对应的传输数据,即前述图2中的多组传输数据的其中一个。其中,PCS子层可以接入多个Interlaken接口,可以接收多个Interlaken接口传输的输入数据,因此,在对多个输入数据进行处理,得到多个YB数据后,都进行YB至ZB的转码。并且,可以同时处理多个Interlaken接口传输的扰码后的XB数据,在将多个Interlaken接口对应的XB数据转换为YB数据后,后续在进行YB至ZB的转换时,可以为每个YB数据分配时隙,在不同的时隙对每个Interlaken接口对应的YB数据进行处理。因此,在进行YB至ZB转码时,还可以确定每个Interlaken接口对应的时隙,并在对应的时隙对每个YB数据进行处理。具体地,将YB转码为ZB数据的具体过程可以例如,若Y=67,Z=130,则可以是将67B数据压缩为65B数据,具体可以是将3位标识数据压缩为1比特的数据。例如,将数据块标识为0,控制块标识为1,得到65B数据。然后将两个65B数据组合起来,即可得到130B数据。该130B数据即可理解为传输数据,例如,前述的第一传输数据或第二传输数据。
需要说明的是,在本申请实施例中,对于每个业务接口的传输数据的获取顺序不作限定,可以是先获取以太网接口对应的传输数据,也可以是先获取FlexO接口对应的传输数据,具体根据实际业务接口的发送对应数据的顺序确定,此处不作限定。
在得到多组传输数据后,即可进行TDM调度(即步骤403)。为每组传输数据确定对应的传输时隙,并按照每组传输数据对应的传输时隙进行调度处理。
具体地,可以获取多组传输数据,该多组传输数据可以包括步骤4013、步骤4023或直接接收的一个或多个FlexO接口传输的数据等。在获取到该多组传输数据后,可以确定每组传输数据的传输时隙,并根据每组传输数据的传输时隙对获取到的传输数据进行处理。下面以第一传输数据为例进行进一步地说明,第一传输数据为该多组传输数据中的任意一个。
其中,可选地,每组传输数据对应的传输时隙可以是预置的,也可以是在获取到传输数据后实时分配的。具体地,若传输时隙为预置的,则在获取该多组传输数据之前,可以为每个接入的业务接口分配与带宽匹配的时隙,并保存在数据库中,在获取到业务接口对应的传输数据后,可以根据该业务接口从数据库中查找该传输数据的传输时隙。若传输时隙为实时分配的,在获取该多组传输数据中的每组传输数据之后,可以根据每组传输数据对应的业务接口的业务类型进行时隙分配,也可以按照每组传输数据的获取顺序进行时隙分配,还可以按照每组传输数据的优先级进行时隙分配等等,为每组传输数据分配的时隙还可以与对应的业务接口的带宽匹配,具体可以根据实际应用场景进行调整。
在确定第一传输数据对应的第一传输时隙后,在第一传输时隙对第一传输数据进行预处理(即步骤404),以得到第一传输数据对应的预处理数据。获取到的多组传输数据中的每组传输数据都可以根据对应的传输时隙进行预处理,以得到每组传输数据对应的预处理数据。
其中,预处理过程可以包括对第一传输数据进行码块交织分组,得到第一预处理数据。 在第一预处理数据中插入对齐标识,得到第二预处理数据。
具体地,进行码块交织分组,可以将第一传输数据分为多个组。每个组的数据的比特长度为与信道编码器的编码比特长度的整数倍。例如,若信道编码器为RS-FEC编码器,因RS-FEC编码器可以采用基于伽罗华域(Galois Field,GF)的RS编码,每个字符的长度为10比特(bit)。因此,在进行分组时,每组字符都可以为10bit字符的整数倍,以使RS-FEC编码器可以正常编码。例如,若第一传输数据的长度为1000比特,那么,可以将第一传输数据分为n组,n<=100,且每组字符的长度为10比特的整数倍。
具体地,进行码块交织分组后,第一预处理数据可以理解为多个数据包。可以在每个数据包中插入与第一业务对应的对齐标识,以便编码器可以对第一预处理数据进行编码。例如,若在每个数据包的起始位添加对齐标识,则编码器在识别到该对齐标识后,即可对对齐标识后的数据进行编码。此外,对齐标识也可以使接收端在接收到该多个数据包编码后的数据后,完成对该多个数据包的对齐,避免数据错位。对齐标识可以是在将传输数据切分后的每个数据包中,预置间隔插入的标识。此外,对齐标识还可以是按照预置方式排列的一段数据、按照数据包的先后顺序排列的序列号等等。
不同的业务接口对应的对齐标识可以相同,也可以不同,具体可以根据实际应用场景调整,此处不作限定。
更具体地,对齐标识的插入方式可以参阅标准IEEE802.3中的相关规范。
在进行预处理(即步骤404),得到第二预处理数据后,可以继续进行编码(即步骤405),以得到第一码流数据。其中,编码方式可以是RS-FEC编码。
其中,具体地,RS-FEC编码的方式可以是,RS-FEC编码器处理k个字符,计算出2t个冗余校验字符,得到的最终字符,字符数为n,n=k+2t。例如,以常用的RS(544,514)为例,n=544,k=514,t=15。
更进一步地,RS-FEC编码的具体过程可以是:
消息多项式m(x)除以生成多项式g(x),获得校验多项式p(x):
p(x)=x n-km(x)modg(x)。
生成多项式可以是:
Figure PCTCN2018124957-appb-000001
消息多项式可以是:m(x)=m k-1x k-1+m k-2x k-2+...+m 1x+m 0
可以得到校验多项式可以为:p(x)=p 2t-1x 2t-1+p 2t-2x 2t-2+...+p 1x+p 0
根据上述公式,最终输出的RS-FEC编码多项式可以是:
C(x)=m n-1x n-1+m n-2x n-2+...+m n-kx n-k-1+p n-k-1x n-k-1...+p 0
RS-FEC编码多项式可以理解为消息多项式与校验多项式的组合。其中,该校验多项式用于接收端在获取到数据时,根据数据中携带的数据确定校验多项式,以及预置的生成多项式,来计算数据中携带的消息多项式是否有数据错误,并对错误的数据进行纠错。
RS-FEC编码器可以采用不同的n、k取值,获得不同的数据纠错能力,通常,以太网采用的是RS(528,514)和RS(544,514)。
在进行RS-FEC编码得到第一码流数据后,根据第一码流数据对应的业务接口,对第一 码流数据进行一步地分发(即步骤406)。具体地,在进行第一码流数据的分发时,根据第一码流数据对应的业务接口的业务类型的不同,在对应的第一传输时隙,将第一码流数据的虚拟传输通道映射到的物理通道,以通过物理传输通道对第一码流数据进行传输。通常,不同业务类型的业务接口,所对应的传输速率也可能不相同,例如,以太网接口对应的传输速率可以是200GB,FlexE接口对应的传输速率可能是100GB等等。而不同的物理通道的传输速率也可能不相同,因此,根据第一码流数据对应的业务接口的业务类型,确定第一码流数据传输的物理通道,并对第一码流数据进行分发,分发到PMA子层分发至对应的物理通道,并通过PMA子层,发送至接收端。
在本申请实施例中,PCS子层可以接入多个业务接口,确定每个业务接口传输的数据对应的传输时隙,并在对应的传输时隙对每组传输数据进行处理。因此,RS-FEC编码器可以根据确定的业务接口对应的传输时隙,处理多个相同或不同的业务接口传输的数据,提高RS-FEC编码资源的利用率。并且,每个业务接口之间可以通过时分或空分等方式,实现多个业务接口的接入,并且时隙可以灵活配置,可以灵活接入多种类型的业务接口,在保证接入业务接口的灵活性的同时可以节省网络资源。
前述对本申请实施例提供的数据传输的方法的发送流程进行了具体说明,下面对本申请提供的接收流程进行更具体的说明。
首先,每组码流数据可能被切分为多个数据包,接收通过PMA子层发送的多个数据包后,可以检索数据包中的对齐标识。在检索到多个数据包中的对齐标识后,将携带对齐标识的数据包锁定(即步骤407),即重组码流数据前,该数据包无需再进行处理。
并在确定码流数据的所有数据包以后,按照不同的业务类型的对齐规则以及传输时隙,根据已经检测到的对齐标识,进行偏斜补偿(即步骤408)。将数据对齐,组合为前述步骤405中进行RS-FEC编码得到的第一码流数据。通过对齐标识消除不同的传输通道间的传输偏差。
可选的,在通过对齐标识进行对齐得到第一码流数据后,还可以删除第一码流数据中的对齐标识。当删除对齐标识时,在本申请实施例中,以下步骤中的第一码流数据可以理解为将删除对齐标识后的第一码流数据。
例如,若在每100个字符之间插入对齐标识,那么,在接收到多个数据包后,检测每个数据包中的对齐标识,若其中一个数据包的只有99个字符,那么,可以确认该数据包中有数据错误或数据丢失,此时,可以根据通知PMA重新发送该数据包,或根据预置的规则,恢复该数据错误或数据丢失的字符等。并在码流数据的所有数据包都获取到后,将数据重组为码流数据。
需要说明的是,本申请实施例中具体的对齐标识锁定(即步骤407)与偏斜补偿(即步骤408)可以参阅标准IEEE802.3中的相关规范,此处不再赘述。
可以在获取到多组码流数据后,确定每组码流数据对应的传输时隙,并子在对应的传输时隙对每组码流数据进行解码(即步骤409)。以第一码流数据与第二码流数据为例,在得到第一码流数据后,确定第一码流数据的第一传输时隙,并在第一传输时隙对第一码流 数据进行解码。在得到第二码流数据后,确定第二码流数据对应的第二传输时隙,并在第二传输时隙对第二码流数据进行解码。其中,第一码流数据为该多组码流数据中的任意一组码流数据,该第二码流数据为该多组码流数据中除第一码流数据之外的任意一组码流数据。具体的解码步骤为前述步骤405中RS-FEC编码步骤的逆过程。
示例性的,以获取到的多组组码流数据中的任意一组码流数据作为第一码流数据为例,在前述步骤405中,可以理解为,消息多项式除以生成多项式,获得校验多项式,最终输出的RS-FEC编码多项式为消息多项式加上校验多项式。因此,逆过程即为组合得到的编码多项式分为消息多项式与校验多项式。因生成多项式、n与k的值已确定,因此,可以计算出消息多项式与校验多项式,根据校验多项式与生成多项式,即可确定消息多项式中的不正确的比特,以实现对消息多项式的误码纠错,得到第一解码数据。
在对每组码流数据根据对应的传输时隙进行解码后,继续进行重组(即步骤410),以得到多组传输数据。
具体的重组过程为,针对前述步骤预处理(即步骤404),因添加了不同业务的对齐标识、进行了码块交织分组等,在获取到每组码流数据后,还需要进行码流数据的重组,包括将码流数据重新组合起来,分为分组之前的字符数,例如,将原10比特的整数倍为一组,分为8比特的整数倍为一组。并且根据不同的业务规则,重组为对应的传输数据。例如,以太网接口、FlexE接口与FlexO接口对应的传输数据长度可以重组为257B,Interlaken接口对应的传输数据的长度可以重组为130B等。
在重组得到多组传输数据后,根据每组传输数据对应的传输时隙,对每组传输数据进行分发(即步骤411)。
以第一传输数据为例,若第一传输数据为以太网接口或FlexE接口对应的传输数据,则将第一传输数据分发至对应的解扰码器,进行解扰码。若第一传输数据为FlexO接口对应的传输数据,则直接将第一传输数据分发至FlexO接口。若第一传输数据为Interlaken接口对应的传输数据,则将第一传输数据分发至转码器进行转码。
以下以第一传输数据为例,分别针对不同的业务接口进行说明。
1、若第一传输数据为Interlaken接口对应的传输数据。
首先需要对第一传输数据进行转码(即步骤4121)。第一传输数据的长度为ZB,则可以将ZB转换为YB长度的转码数据。例如,若Z=130,Y=67,则可以将130B数据分为两个65B数据,并且将每个65B数据的预置位置的1位数据转换为3位标识数据。例如,将0转换为001、101,将1装换为010、110等,以得到67B数据。其中,001可以标识为数据块,且所有64比特数据位不取反码;010可以标识为控制块,且所有64比特数据位不取反码;101可以标识为数据块,所有64比特数据位取反码;110可以标识为控制块,且所有64比特数据位取反码。
然后进行YB至XB转码(即步骤4122)。将YB数据转换为XB数据,具体可以是删除YB数据中的标识数据。例如,若Y=67,X=64,且每个YB数据的头部包括3位标识数据,则可以删除头部的3位标识数据,以得到64B数据。
然后对XB数据解扰码(即步骤4123),以得到Interlaken接口对应的业务数据。解 扰码的过程为扰码的逆过程,针对前述步骤4021,可以是将XB数据输入到解扰码器中,对输入的数据异或运算,然后进行移位输出。具体地,解扰码的具体过程可以根据扰码多项式进行计算,具体解扰的流程与图9中所示的扰码流程类似,此处不再赘述。
在得到Interlaken接口对应的业务数据后,将该业务数据发送至对应的Interlaken接口。
应理解,Interlaken接口的接入数量可以是一个也可以是多个,当有多个Interlaken接口时,进行转码(即步骤4121)得到传输数据后,根据每组传输数据对应的业务接口,分别分发至对应的处理通道进行处理,可以同时对多路数据进行处理,包括转码、解扰码等,并在处理完成得到对应的业务数据后,发送至对应的Interlaken接口。
在本申请实施例中,在进行ZB至YB转码后,可以将YB数据进行进一步地转码、解扰码处理,并且,若有多个YB数据,且对应多个Interlaken接口,则可以同时对每个Interlaken接口对应的YB数据进进行处理,通过空分的方式接入多个Interlaken接口,因此,可以提高处理步骤407至步骤411中所涉及的资源的利用率。
2、若第一传输数据为FlexO接口对应的传输数据。
若第一传输数据为FlexO接口对应的传输数据,则可以直接将第一传输数据发送至对应的FlexO接口。通常,FlexO接口对应的传输数据的长度为257B,无需进行处理,所以可以直接将FlexO对应的传输数据发送至FlexO接口。接入的FlexO接口可以有一个或者多个,若有多个FlexO接口,则分别将每个FlexO接口的传输数据发送每个FlexO接口。
在本申请实施例中,若第一传输数据对应FlexO接口,则可以直接将第一数据传输至对应的FlexO接口,因此,可以接入一个或多个FlexO接口,提高网络资源的利用率。
3、若第一传输数据为以太网接口或FlexE接口对应的传输数据。
若第一传输数据对应的业务接口为以太网接口或FlexE接口,则在进行解扰码(即步骤4131)之前,确定第一传输数据对应的处理时隙。该处理时隙可以是预置的,则在获取到第一传输数据时,可以直接根据第一传输数据对应的业务接口的业务类型,查询该第一传输数据的处理时隙。该处理时隙也可以是在获取到第一传输数据时,为第一传输数据实时分配的。
可以将第一传输数据分发至解扰器进行解扰码(即步骤4131),以得到解扰数据。具体地,解扰码的过程与前述步骤4013中扰码的过程类似。针对前述步骤4013,可以是根据第一传输时隙将第一传输数据输入到解扰码器中,对输入的数据异或运算、移位等输出。
具体例如,具体的解扰过程参照前述图9,可以是,若扰码的生成多项式为G(x)=1+x 39+x 58,首先与一个数据进行异或运算,该数据为对S38与S57分别输出的数据进行异或运算后的数据,然后输出该与一个数据进行异或运算后的数据,并且输入值S0,通过S0至S57进行移位,并将移位寄存器S38与S57分别输出的值进行异或,并且将异或计算的值继续与输入的数据进行异或计算后输出,并且移位到S0继续进行移位与异或计算,以得到解扰数据并输出。
在得到解扰数据后,通常解扰数据的长度为257B,因此,可以根据第一传输数据对应的处理时隙进行257B至66B转码(即步骤4132)。具体地,将257B数据转换为66B数据 可以为前述图5至图8中所述的转换过程的逆过程。例如,可以将257数据的比特0位删除,然后剩下的数据平均切分为4个64B数据,然后在每个64B数据头部添加2位标识位,即可得到4个66B数据。其中,该4个66B数据都为数据66B。而当4个66B数据为1个66B数据为控制66B,后面3个数据为数据66B时,则可以将257数据的比特0位至比特4位删除,然后在比特4位之后增加4位控制数据,之后将数据平均切分为4个64B数据,在每个64B数据头部添加2位标识位,即可得到4个66B数据。当前3个数据为数据66B,后1个为控制66B时,将257数据的比特0位至比特4位删除,然后在前述控制数据部分增加4位控制数据,之后将数据平均切分为4个64B数据,在每个64B数据头部添加2位标识位,即可得到4个66B数据。当4个数据都是控制66B时,将257数据的比特0位至比特4位删除,然后在每个控制数据对应的比特位增加对应的控制数据,之后将数据平均切分为4个64B数据,在每个64B数据头部添加2位标识位,即可得到4个66B数据。
在进行转码得到66B数据后,根据处理时隙,对66B数据进行分发(即步骤4133),发送至对应的FlexE接口或以太网接口。其中,若接入有一个或多个FlexE接口,或一个或多个以太网接口,将66B数据分发至对应的FlexE接口或以太网接口。
因此,当第一传输数据对应的接口为FlexE接口或以太网接口时,可以根据第一传输数据的处理时隙对第一传输数据进行处理,在处理完成后分发至对应的业务接口。例如,若第一传输数据对应的是FlexE接口,则对第一传输数据根据处理时隙进行解扰码、257B至66B转码后,将66B数据,即第三码流数据分发至该FlexE接口。因此,可以通过时分的方式,对一个或多个FlexE接口,或一个或多个以太网接口对应的传输数据,共用RS-FEC解码资源进行处理,实现多个业务接口的接入,提高网络资源的利用率。
在本申请实施例中,在接收到PMA子层发送过来的码流数据后,对该码流数据进行处理,包括AM锁定、偏斜补偿、解码、重组、分发等步骤,业务接口对应的数据分配对应的传输时隙,实现对多个业务接口对应的数据的处理。因此,可以接入一个或多个相同或不同的业务接口,实现对一个或多个相同或不同的业务接口的数据的处理,节约网络资源,相对于一个业务接口对应一个RS-FEC编码器,本申请实施例提供的数据传输方法可以结合时分与空分的方式,实现多个相同或不同的业务接口共用RS-FEC资源,提高RS-FEC资源的利用率。并且,可以灵活地接入多种类型的业务接口,提高对多种类型的业务接口对应的数据的处理效率。
应理解,在图4提供的申请实施例中,发送侧或接收侧都接入有多个业务接口,当执行步骤4011-步骤406的设备或网络芯片位于某一装置内部时,该多个业务的一端可以接入本申请中的网络芯片或网络芯片侧,另一端可以连接其他的处理模块,将其他处理模块处理之后的数据通过该多个业务接口传输至本申请实施例中的发送侧进行处理,或者将本申请实施例接收侧得到的数据发送至处理模块进行进一步处理。
前述对本申请提供的方法流程进行了说明,基于前述图2-图9中所示的方法,下面对本申请提供的装置进行详细说明。请参阅图10,本申请提供的网络芯片的一种结构示意图。
该网络芯片可以包括:信道编码器1001、时隙调度器1002以及数据分发器1003。
该时隙调度器1002,用于确定第一传输数据的第一传输时隙和第二传输数据的第二传 输时隙,该第一传输数据和所述第二传输数据为多个业务接口对应的多组传输数据中的任意两组传输数据。
该信道编码器1001,用于在第一传输时隙对该第一传输数据进行信道编码,得到第一码流数据,以及通过该信道编码器1001在第二传输时隙对该第二传输数据进行编码,得到第二码流数据。
其中,该信道编码器1001可以用于执行前述图2中的步骤202。
该数据分发器1003,用于将该第一码流数据分发至与该第一码流数据分发至对应的接收端,以及将该第二码流分发至与该第二码流对应的接收端。
其中,该数据分发器1003可以用于执行前述图2中的步骤203。
在本申请实施例的一种可选实施方式中,该数据分发器1003,具体用于该第一传输时隙将该第一码流数据按照预置分发规则分发至对应的物理媒介适配子层PMA,以及在该第二传输时隙将该第二码流数据分发至该PMA,以通过该PMA将该第一码流数据传输至与该第一码流数据对应的网络芯片,以及将该第二码流数据传输至与该第二码流数据对应的网络芯片。
其中,该数据分发器1003可以用于执行前述图2中的步骤203,以及图4中的步骤406。
在本申请实施例的一种可选实施方式中,该多个业务接口中任一接口可以是以太网业务接口或灵活以太网FlexE接口,该网络芯片还包括:第一业务接口、第一转码器1006以及第一扰码器1007。该第一业务接口可以是以太网接口或FlexE接口,示例性地,如图10中的FlexE接口1004、以太网接口1005。
该第一业务接口,即FlexE接口1004或以太网接口1005,具体用于接收初始码流数据。
该时隙调度器1002,还用于确定该初始码流数据的处理时隙。该时隙调度器1002可以用于执行前述图4中的步骤4011。
需要说明的是,本申请实施例可以包括一个或多个时隙调度器。其中,为每组传输数据确定传输时隙,以及为初始码流数据确定时隙的时隙调度器可以是同一个时隙调度器,也可以是不同的时隙调度器。
该第一转码器1006,用于在该处理时隙对该初始码流数据进行转码,得到转码数据。该第一转码器1006具体可以用于执行前述图4中的步骤4011
该第一扰码器1007,用于在该处理时隙对该转码数据进行扰码,得到该第一传输数据。该第一扰码器1007可以用于执行前述图4中的步骤4013。
在本申请实施例的一种可选实施方式中,该多个业务接口包括至少一个Interlaken接口,该网络芯片还包括:第二业务接口、第二转码器1006以及第二扰码器1007。该第二业务接口可以是Interlaken接口,即图10中的Interlaken接口1008。
该第二业务接口,即该Interlaken接口1008的数量为一个或多个,用于接收输入数据。
该第二扰码器1009,用于对该输入数据进行扰码,得到扰码数据。该第二扰码器1009可以用于执行前述图4中的步骤4021。其中,网络芯片可以包括一个或多个第二扰码器, 每个Interlaken接口可以对应一个第二扰码器。
该第二转码器1010,用于在该扰码数据中添加标识数据,以得到预置长度的数据。该第二转码器1010可以用于执行前述图4中的步骤4022。其中,本申请中的网络芯片可以包括一个或多个第二转码器1010,每个Interlaken接口可以对应一个第二转码器1010。
该第三转码器1011,用于将该预置长度的数据进行编组,以得到该第一传输数据。其中,该第三转码器1011可以用于执行前述图4中的步骤4023。
在本申请实施例的一种可选实施方式中,该多个业务接口包括至少一个FlexO接口,该网络芯片还可以包括:第三业务接口,该第三业务接口即图10中的FlexO接口1012。
该FlexO接口1012的数量为一个或多个,可以用于接收该第一传输数据。
在本申请实施例的一种可选实施方式中,
该时隙调度器1002,具体用于根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。
在本申请实施例的一种可选实施方式中,该时隙调度器1002,具体用于:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的传输时隙;
确定该第一传输数据对应的第一业务接口,以及该第二传输数据对应的第二业务接口;
根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。
在本申请实施例的一种可选实施方式中,该信道编码器1001,具体用于:
在该第一传输时隙对该第一传输数据进行码块交织分组,以得到第一预处理数据。在该第一传输时隙对该第一预处理数据插入对齐标识,得到第二预处理数据。在该第一传输时隙对该第二预处理数据进行信道编码,得到该第一码流数据。
其中,该信道编码器1001可以用于执行前述图2中的步骤202或前述图4中的步骤404与步骤405。
在本申请实施例的一种可选实施方式中,该信道编码器1001可以是RS-FEC编码器。
前述对本申请提供的一种网络芯片进行了详细说明,下面对本申请提供的另一种网络芯片进行说明。
请参阅图11,该网络芯片可以包括:解码器1102以及时隙调度器1101。
该时隙调度器1101,用于确定多组码流数据中每组码流数据的传输时隙,包括第一码流数据对应的第一传输时隙,以及第二码流数据对应的第二传输时隙,该第一码流数据和该第二码流数据为多个业务接口对应的多组码流数据中的任意两组码流数据。
该解码器1102,用于在第一传输时隙对该第一码流数据进行解码,得到第一传输数据,通过该解码器1102在第二传输时隙对该第二码流数据进行解码,得到第二传输数据,该第一传输时隙与该第二传输时隙不同。其中。该接收器该解码器1102可以用于执行前述图3中的步骤302。
在本申请实施例的一种可选实施方式中,若该第一业务接口的类型为以太网接口或FlexE接口中的任意一种,该网络芯片还可以包括:第一业务接口、第一解扰器1103、第 一转码器1104以及第一分发器1105;该第一业务接口可以是FlexE接口或以太网接口,示例性地,如图11中的FlexE接口1106或以太网接口1107。
该时隙调度器1101,还用于在该解码器1102在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,确定该第一传输数据的处理时隙。
需要说明的是,本申请中的网络芯片可以包括一个或多个时隙调度器,为每组码流数据确定传输时隙,以及为第一传输数据确定处理时隙,可以是同一个时隙调度器,也可以是不同的时隙调度器。
该第一解扰器1103,可以用于在该处理时隙对该第一传输数据进行解扰,以得到解扰数据。该第一解扰器1103可以用于执行前述图4中的步骤4131。
该第一转码器1104,用于在该处理时隙对该解扰数据进行转码,以得到与该第一业务接口对应的第三码流数据。该第一转码器1104可以用于执行前述图4中的步骤4132。
该第一分发器1105,用于将该第三码流数据分发至第一业务接口,即FlexE接口或以太网接口。该第一分发器1105可以用于执行前述图4中的步骤4133。
在本申请实施例的一种可选实施方式中,若该第一业务接口为Interlaken接口,该网络芯片还可以包括:第二业务接口、第二解扰器1110、第二转码器1108以及第三转码器1109;该第二业务接口可以是Interlaken接口,示例性地,如图11中的Interlaken接口1111。
该第二转码器1108,用于在该解码器1102在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,对该第一传输数据进行转码,以得到预置长度的数据。该第二转码器1108具体可以用于执行前述图4中的步骤4121。
该第三转码器1109,用于删除该预置长度的数据中的标识数据,以得到扰码数据。该第三转码器1109具体可以用于执行前述图4中的步骤4122。其中,网络芯片可以包括一个或多个第三转码器1109,每个Interlaken接口可以对应一个第三转码器。
该第二解扰器1110,用于对该扰码数据进行解扰,以得到该Interlaken接口对应的业务数据。该第二解扰器1110具体可以用于执行前述图4中的步骤4123。其中,网络芯片可以包括一个或多个第二解扰器,每个Interlaken接口可以对应一个第二解扰器。
该第二业务接口,即Interlaken接口1111,用于传输该业务数据。该Interlaken接口1111的数量可以是一个,也可以是多个。
在本申请实施例的一种可选实施方式中,若该第一业务接口为FlexO接口,该网络芯片还可以包括:第三业务接口以及第二分发器1112。该第三业务接口可以是FlexO接口,示例性地,如图11中的FlexO接口1113。
该第二分发器1112,用于在该解码器1102在第一传输时隙对该第一码流数据进行解码得到第一传输数据之后,将该第一传输数据发送至第三业务接口,即FlexO接口1113。
此外,还需要说明的是,第二分发器1112除了可以是将码流数据分发至FlexO接口之外,也可以是将码流数据分发至第一解扰器1103或第二转码器1102等,具体可以根据实际应用场景调整,此处并不作限定。
在本申请实施例的一种可选实施方式中,
该时隙调度器1101,具体可以用于根据预置规则确定该第一传输数据对应的该第一传输时隙,以及该第二传输数据对应的该第二传输时隙。
在本申请实施例的一种可选实施方式中,该时隙调度器1101,具体可以用于:
根据预置方式为该多个业务接口中每个业务接口分配传输时隙,以得到该每个业务接口对应的第传输时隙;确定该第一码流数据对应该多个业务接口中的第一业务接口,以及该第二码流数据对应该多个业务接口中的第二业务接口;根据该第一业务接口从该每个业务接口对应的传输时隙中确定该第一传输时隙,以及根据该第二业务接口从该每个业务接口对应的传输时隙中确定该第二传输时隙。
在本申请实施例的一种可选实施方式中,该时隙调度器1101,具体可以用于:在接收到每组码流数据后,为每组码流数据分配传输时隙。
在本申请实施例的一种可选实施方式中,该网络芯片还包括:同步器1114。
该同步器1114,用于在该第一传输时隙获取该第一码流数据中的对齐标识。
该同步器1114,还用于在该第一传输时隙根据该对齐标识对该第一码流数据进行对齐,得到对齐数据。该同步在1112可以用于执行前述图4中的步骤407与步骤407。
该解码器1102,具体用于在该第一传输时隙对该对齐数据进行解码,得到该第一传输数据。
在本申请实施例的一种可选实施方式中,包括:
该解码器1102可以为RS-FEC解码器。
需要说明的是,前述图10提供的网络芯片与图11提供的网络芯片,除了图10与图11中所包括的器件外,还可以包括更多的器件,具体可以根据实际应用调整,本申请对此并不作限定。
本申请还提供了一种通信系统,可以包括一个或多个第一网络芯片与一个或多个第二网络芯片。该一个或多个第一网络芯片可以是前述图10中的网络芯片,可以用于执行前述图2-图9中任一实施例中涉及到的数据传输的方法的发送侧的流程。该一个或多个第二网络芯片可以是前述图11中的网络芯片,可以用于执行前述图2-图9中任一实施例中涉及到的数据传输的方法的接收侧的流程。
本申请实施例还提供了一种网络芯片,包括:处理模块与通信模块,所述处理模块能执行上述提供的数据传输的方法的流程。进一步地,所述芯片还可以包括存储模块(如,存储器),所述存储模块用于存储指令,所述处理模块用于执行所述存储模块存储的指令,并且对所述存储模块中存储的指令的执行使得所述处理模块执行上述图2-图9中任一方法实施例中的方法流程。
应理解,本申请实施例中提及的网络芯片可以包括中央处理单元(Central Processing Unit,CPU),还可以包括其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请实施例中,对于集成了前述图10中的网络芯片或图11中的网络芯片,可以是通信芯片、或者FPGA等等,使用同一信道编码器对接入的多个业务接口对应的传输数据进行编码,可以提高信道编码器的利用率,节约逻辑资源。
还应理解,本申请中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
应注意,本申请描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,部分或全部步骤可以并行执行或先后执行,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
本申请各方法实施例之间相关部分可以相互参考;各装置实施例所提供的装置用于执 行对应的方法实施例所提供的方法,故各装置实施例可以参考相关的方法实施例中的相关部分进行理解。
本申请各装置实施例中给出的装置结构图仅示出了对应的装置的简化设计。在实际应用中,该装置可以包含任意数量的发射器,接收器,处理器,存储器等,以实现本申请各装置实施例中该装置所执行的功能或操作,而所有可以实现本申请的装置都在本申请的保护范围之内。
本申请各实施例中提供的消息/帧/指示信息、模块或单元等的名称仅为示例,可以使用其他名称,只要消息/帧/指示信息、模块或单元等的作用相同即可。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本申请实施例和所附实施例书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。本申请中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”或“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关硬件来完成,所述的程序可以存储于一个设备的可读存储介质中,该程序在执行时,包括上述全部或部分步骤,所述的存储介质,如:FLASH、EEPROM等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,不同的实施例可以进行组合,以上所述仅为本申请的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何组合、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (31)

  1. 一种网络芯片,其特征在于,包括:信道编码器、时隙调度器以及数据分发器,其中:
    所述时隙调度器,用于确定第一传输数据的第一传输时隙和第二传输数据的第二传输时隙,所述第一传输数据和所述第二传输数据为多个业务接口对应的多组传输数据中的任意两组传输数据;
    所述信道编码器,用于在所述第一传输时隙对所述第一传输数据进行信道编码,得到第一码流数据,并在所述第二传输时隙对所述第二传输数据进行编码,得到第二码流数据;
    所述数据分发器,用于将所述第一码流数据分发至与所述第一码流数据分发至对应的接收端,以及将所述第二码流分发至与所述第二码流数据分发至对应的接收端。
  2. 根据权利要求1所述的网络芯片,其特征在于,
    所述数据分发器,具体用于在所述第一传输时隙将所述第一码流数据按照预置分发规则分发至对应的物理媒介适配子层PMA,以及在所述第二传输时隙将所述第二码流数据分发至所述PMA,以通过所述PMA将所述第一码流数据传输至与所述第一码流数据对应的接收端,以及将所述第二码流数据传输至与所述第二码流数据对应的接收端。
  3. 根据权利要求1或2所述的网络芯片,其特征在于,所述网络芯片还包括:第一业务接口、第一转码器以及第一扰码器,所述第一业务接口为以太网接口或灵活以太网FlexE接口,其中:
    所述至少一个类型为以太网或灵活以太网FlexE的接口中的任一接口,用于接收初始码流数据;
    所述时隙调度器,还用于确定所述初始码流数据的处理时隙;
    所述第一转码器,用于在所述处理时隙对所述初始码流数据进行转码,得到转码数据;
    所述第一扰码器,用于在所述处理时隙对所述转码数据进行扰码,得到所述第一传输数据。
  4. 根据权利要求1或2所述的网络芯片,其特征在于,所述网络芯片还包括:第二业务接口、、第二转码器、第二扰码器以及第三转码器,所述第二业务接口为Interlaken接口,其中:
    所述至少一个Interlaken接口中的任一接口,用于接收输入数据;
    所述第二扰码器,用于对所述输入数据进行扰码,得到扰码数据;
    所述第二转码器,用于在所述扰码数据中添加标识数据,以得到预置长度的数据;
    所述第三转码器,用于将所述预置长度的数据进行编组,以得到所述第一传输数据。
  5. 根据权利要求1或2所述的网络芯片,其特征在于,所述网络芯片还包括:第三业务接口,所述第三业务接口为FlexO接口;
    所述至第三业务接口,用于接收所述第一传输数据。
  6. 根据权利要求1-5中任一项所述的网络芯片,其特征在于,
    所述时隙调度器,具体用于根据预置规则确定所述第一传输数据对应的所述第一传输时隙,以及所述第二传输数据对应的所述第二传输时隙。
  7. 根据权利要求6所述的网络芯片,其特征在于,所述时隙调度器,具体用于:
    根据预置方式为所述多个业务接口中每个业务接口分配传输时隙,以得到所述每个业务接口对应的传输时隙;
    确定所述第一传输数据对应的第一业务接口,以及所述第二传输数据对应的第二业务接口;
    根据所述第一业务接口从所述每个业务接口对应的传输时隙中确定所述第一传输时隙,以及根据所述第二业务接口从所述每个业务接口对应的传输时隙中确定所述第二传输时隙。
  8. 根据权利要求1-7中任一项所述的网络芯片,其特征在于,所述信道编码器,具体用于:
    在所述第一传输时隙对所述第一传输数据进行码块交织分组,以得到第一预处理数据;
    在所述第一传输时隙对所述第一预处理数据插入对齐标识,得到第二预处理数据;
    在所述第一传输时隙对所述第二预处理数据进行信道编码,得到所述第一码流数据。
  9. 根据权利要求8所述的网络芯片,其特征在于,所述信道编码器为里德所罗门前向纠错码RS-FEC编码器。
  10. 一种网络芯片,其特征在于,包括:解码器以及时隙调度器;
    所述时隙调度器,用于确定第一码流数据对应的第一传输时隙,以及第二码流数据对应的第二传输时隙,所述第一码流数据和所述第二码流数据为多个业务接口对应的多组码流数据中的任意两组码流数据;
    所述解码器,用于在第一传输时隙对所述第一码流数据进行解码,得到第一传输数据,通过所述解码器在第二传输时隙对所述第二码流数据进行解码,得到第二传输数据,所述第一传输时隙与所述第二传输时隙不同。
  11. 根据权利要求10所述的网络芯片,其特征在于,所述网络芯片还包括:第一业务接口,第一解扰器、第一转码器以及第一分发器,所述第一业务接口为以太网接口或FlexE接口;
    所述时隙调度器,还用于在所述解码器在第一传输时隙对所述第一码流数据进行解码得到第一传输数据之后,确定所述第一传输数据的处理时隙;
    所述第一解扰器,用于在所述处理时隙对所述第一传输数据进行解扰,以得到解扰数据;
    所述第一转码器,用于在所述处理时隙对所述解扰数据进行转码,以得到第三码流数据;
    所述第一分发器,用于将所述第三码流数据分发至所述第一业务接口。
  12. 根据权利要求10所述的网络芯片,其特征在于,所述网络芯片还包括:第二业务接口、第二解扰器、第二转码器以及第三转码器,所述第二业务接口为Interlaken接口;
    所述第二转码器,用于在所述解码器在第一传输时隙对所述第一码流数据进行解码得到第一传输数据之后,对所述第一传输数据进行转码,以得到预置长度的数据;
    所述第三转码器,用于删除所述预置长度的数据中的标识数据,以得到扰码数据;
    所述第二解扰器,用于对所述扰码数据进行解扰,以得到业务数据;
    所述至少一个Interlaken接口中的任一接口,用于传输所述业务数据。
  13. 根据权利要求10所述的网络芯片,其特征在于,所述网络芯片还包括:第三业务接口,以及第二分发器,所述第三业务接口为FlexO接口;
    所述第二分发器,将所述第一传输数据分发至所述第三业务接口。
  14. 根据权利要求10-13中任一项所述的网络芯片,其特征在于,
    所述时隙调度器,具体用于根据预置规则确定所述第一传输数据对应的所述第一传输时隙,以及所述第二传输数据对应的所述第二传输时隙。
  15. 根据权利要求10-14中任一项所述的网络芯片,其特征在于,所述时隙调度器,具体用于:
    根据预置方式为所述多个业务接口中每个业务接口分配传输时隙,以得到所述每个业务接口对应的第传输时隙;
    确定所述第一码流数据对应所述多个业务接口中的第一业务接口,以及所述第二码流数据对应所述多个业务接口中的第二业务接口;
    根据所述第一业务接口从所述每个业务接口对应的传输时隙中确定所述第一传输时隙,以及根据所述第二业务接口从所述每个业务接口对应的传输时隙中确定所述第二传输时隙。
  16. 根据权利要求10-15中任一项所述的网络芯片,其特征在于,所述网络芯片还包括:同步器;
    所述同步器,用于在所述第一传输时隙获取所述第一码流数据中的对齐标识;
    所述同步器,还用于在所述第一传输时隙根据所述对齐标识对所述第一码流数据进行对齐,得到对齐数据;
    所述解码器,具体用于在所述第一传输时隙对所述对齐数据进行解码,得到所述第一传输数据。
  17. 根据权利要求10-16中任一项所述的网络芯片,其特征在于,包括:
    所述解码器为RS-FEC解码器。
  18. 一种数据传输的方法,其特征在于,包括:
    获取第一传输数据,以及第二传输数据,所述第一传输数据和所述第二传输数据为多个业务接口对应的多组传输数据中的任意两组传输数据;
    通过信道编码器在第一传输时隙对所述第一传输数据进行信道编码,得到第一码流数据,以及通过所述信道编码器在第二传输时隙对所述第二传输数据进行编码,得到第二码流数据,所述第一传输时隙与所述第二传输时隙为不同的时隙;
    将所述第一码流数据分发至所述第一码流数据对应的接收端,以及将所述第二码流数据分发至所述第二码流数据对应的接收端。
  19. 根据权利要求18所述的方法,其特征在于,所述将所述第一码流数据分发至所述 第一码流数据对应的接收端,以及将所述第二码流数据分发至所述第二码流数据对应的接收端,包括:
    在所述第一传输时隙,将所述第一码流数据按照预置分发规则分发至对应的物理媒介适配子层PMA,以及在所述第二传输时隙将所述第二码流数据分发至所述PMA,并通过所述PMA将所述第一码流数据传输至与所述第一码流数据对应的接收端,以及将所述第二码流数据传输至与所述第二码流数据对应的接收端。
  20. 根据权利要求18或19所述的方法,其特征在于,所述多个业务接口中任一接口为以太网业务接口或灵活以太网FlexE接口,所述获取第一传输数据,包括:
    接收所述以太网业务接口或FlexE接口至少一种接口中任意一个接口传输的初始码流数据;
    确定所述初始码流数据的处理时隙;
    在所述处理时隙对所述初始码流数据进行转码,得到转码数据;
    在所述处理时隙对所述转码数据进行扰码,得到所述第一传输数据。
  21. 根据权利要求18或19所述的方法,其特征在于,所述多个业务接口包括至少一个高速互联Interlaken接口,则所述获取第一传输数据,包括:
    接收所述至少一个Interlaken接口中任一接口传输的输入数据;
    对所述输入数据进行扰码,得到扰码数据;
    在所述扰码数据中添加标识数据,以得到预置长度的数据;
    将所述预置长度的数据进行编组,以得到所述第一传输数据。
  22. 根据权利要求18或19所述的方法,其特征在于,所述多个业务接口包括至少一个灵活光传送网FlexO接口,则所述获取第一传输数据,包括:
    接收所述至少一个FlexO接口中任意一个接口发送的所述第一传输数据。
  23. 根据权利要求18-22中任一项所述的方法,其特征在于,所述第一传输时隙对所述第一传输数据进行RS-FEC编码,以得到第一码流数据,包括:
    在所述第一传输时隙对所述第一传输数据进行码块交织分组,以得到第一预处理数据;
    在所述第一传输时隙对所述第一预处理数据插入对齐标识,得到第二预处理数据;
    在所述第一传输时隙通过所述信道编码器对所述第二预处理数据进行信道编码,得到所述第一码流数据。
  24. 根据权利要求23所述的方法,其特征在于,所述信道编码器为里德所罗门前向纠错码RS-FEC编码器。
  25. 一种数据传输的方法,其特征在于,包括:
    获取第一码流数据,以及第二码流数据,所述第一码流数据和所述第二码流数据为多个业务接口对应的多组码流数据中的任意两组码流数据;
    通过解码器在第一传输时隙对所述第一码流数据进行解码,得到第一传输数据,通过所述解码器在第二传输时隙对所述第二码流数据进行解码,得到第二传输数据,所述第一传输时隙与所述第二传输时隙不同。
  26. 根据权利要求25所述的方法,其特征在于,若所述第一业务接口的类型为以太网业务接口或FlexE接口中的任意一种,则在所述通过解码器在第一传输时隙对所述第一码流数据进行解码得到第一传输数据之后,所述方法还包括:
    确定所述第一传输数据的处理时隙;
    在所述处理时隙对所述第一传输数据进行解扰,以得到解扰数据;
    在所述处理时隙对所述解扰数据进行转码,以得到与所述第一业务接口对应的第三码流数据,并向所述第一业务接口传输所述第三码流数据。
  27. 根据权利要求25所述的方法,其特征在于,若所述第一业务接口为Interlaken接口,则在所述通过解码器在第一传输时隙对所述第一码流数据进行解码得到第一传输数据之后,所述方法还包括:
    对所述第一传输数据进行转码,以得到预置长度的数据;
    删除所述预置长度的数据中的标识数据,以得到扰码数据;
    对所述扰码数据进行解扰,以得到所述Interlaken接口对应的业务数据,并将所述业务数据传输至所述第一业务接口。
  28. 根据权利要求25所述的方法,其特征在于,若所述第一业务接口为FlexO接口,则在所述通过解码器在第一传输时隙对所述第一码流数据进行解码得到第一传输数据之后,所述方法还包括:
    将所述第一传输数据发送至所述第一业务接口。
  29. 根据权利要求25-28中任一项所述的方法,其特征在于,所述通过解码器在第一传输时隙对所述第一码流数据进行解码,得到所述第一传输数据,包括:
    在所述第一传输时隙获取所述第一码流数据中的对齐标识;
    在所述第一传输时隙根据所述对齐标识对所述第一码流数据进行对齐,得到对齐数据;
    在所述第一传输时隙通过所述解码器对所述对齐数据进行解码,得到所述第一传输数据。
  30. 根据权利要求29所述的方法,其特征在于,所述解码器为RS-FEC解码器。
  31. 一种通信系统,其特征在于,包括第一网络芯片与第二网络芯片;
    所述第一网络芯片为权利要求1-9中任一项所述的网络芯片;
    所述第二网络芯片为权利要求10-17中任一项所述的网络芯片。
PCT/CN2018/124957 2018-12-28 2018-12-28 一种数据传输的方法、网络芯片以及通信系统 WO2020133237A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201880100557.9A CN113287266B (zh) 2018-12-28 2018-12-28 一种数据传输的方法、网络芯片以及通信系统
PCT/CN2018/124957 WO2020133237A1 (zh) 2018-12-28 2018-12-28 一种数据传输的方法、网络芯片以及通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/124957 WO2020133237A1 (zh) 2018-12-28 2018-12-28 一种数据传输的方法、网络芯片以及通信系统

Publications (1)

Publication Number Publication Date
WO2020133237A1 true WO2020133237A1 (zh) 2020-07-02

Family

ID=71128476

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/124957 WO2020133237A1 (zh) 2018-12-28 2018-12-28 一种数据传输的方法、网络芯片以及通信系统

Country Status (2)

Country Link
CN (1) CN113287266B (zh)
WO (1) WO2020133237A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766047A (zh) * 2021-09-03 2023-03-07 华为技术有限公司 一种数据传输方法、设备、可读存储介质和芯片系统
CN113890827B (zh) * 2021-12-03 2022-04-15 国网江苏省电力有限公司信息通信分公司 电力通信资源分配方法、装置、存储介质以及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101322415A (zh) * 2005-12-02 2008-12-10 高通股份有限公司 用于可变数据速率编码的时间分片技术
CN101594539A (zh) * 2009-06-24 2009-12-02 中兴通讯股份有限公司 实现解码器同步轮询的方法、解码器及监控系统
US7983305B2 (en) * 2005-12-12 2011-07-19 Samsung Electronics Co., Ltd Apparatus and method for transmitting and receiving wireless packet data
CN108809392A (zh) * 2017-04-26 2018-11-13 华为技术有限公司 数据发送方法、数据接收方法、网络设备和终端设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289952B2 (en) * 2005-05-25 2012-10-16 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced VoIP media flow quality by adapting speech encoding based on selected modulation and coding scheme (MCS)
US10231254B2 (en) * 2016-08-05 2019-03-12 Nokia Technologies Oy 5G cloud RAN method for symbol by symbol bit streaming

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101322415A (zh) * 2005-12-02 2008-12-10 高通股份有限公司 用于可变数据速率编码的时间分片技术
US7983305B2 (en) * 2005-12-12 2011-07-19 Samsung Electronics Co., Ltd Apparatus and method for transmitting and receiving wireless packet data
CN101594539A (zh) * 2009-06-24 2009-12-02 中兴通讯股份有限公司 实现解码器同步轮询的方法、解码器及监控系统
CN108809392A (zh) * 2017-04-26 2018-11-13 华为技术有限公司 数据发送方法、数据接收方法、网络设备和终端设备

Also Published As

Publication number Publication date
CN113287266B (zh) 2023-05-05
CN113287266A (zh) 2021-08-20

Similar Documents

Publication Publication Date Title
US10567352B2 (en) Flexible ethernet encryption systems and methods
US10193688B2 (en) Flexible Ethernet encryption systems and methods
US9954644B2 (en) Ethernet data processing method, physical layer chip and Ethernet equipment
US6141788A (en) Method and apparatus for forward error correction in packet networks
US20160070615A1 (en) Fec coding/decoding data processing method and related apparatus
WO2018036485A1 (zh) 一种发送和接收业务的方法、装置和网络系统
WO2015032259A1 (zh) 对数据进行处理的方法及装置
CN110582107A (zh) 一种待配网设备接入网络热点设备的方法和装置
CN109417533B (zh) 发送数据的方法和转发设备
US20220021472A1 (en) CPRI Data Block Transmission Method and Apparatus
CA2998900C (en) Fec mechanism based on media contents
CN107683592A (zh) 数据处理方法、装置和系统
WO2020133237A1 (zh) 一种数据传输的方法、网络芯片以及通信系统
US11251905B2 (en) Method for receiving code block stream, method for transmitting code block stream, and communications apparatus
KR100948732B1 (ko) 멀티플렉서-송신기 인터페이스 프로토콜
US7730296B2 (en) Method and system for providing synchronous running encoding and encryption
US20210367710A1 (en) Apparatus and method for sending side-channel bits on an ethernet cable
US7251767B2 (en) Method for correcting errors in a packet-oriented data transmission
EP0993133B1 (en) Data communications apparatus and method
JP7192195B2 (ja) コードブロックストリームの受信方法、コードブロックストリームの送信方法、および通信装置
WO2023207720A1 (zh) 报文的处理方法及装置
US10103912B1 (en) Phased information pulse method and apparatus
Daniel et al. The future narrowband digital terminal
Radio et al. Design Description Advanced Application Services Transport

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18945085

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18945085

Country of ref document: EP

Kind code of ref document: A1