WO2016106650A1 - 一种数据处理方法和设备 - Google Patents

一种数据处理方法和设备 Download PDF

Info

Publication number
WO2016106650A1
WO2016106650A1 PCT/CN2014/095824 CN2014095824W WO2016106650A1 WO 2016106650 A1 WO2016106650 A1 WO 2016106650A1 CN 2014095824 W CN2014095824 W CN 2014095824W WO 2016106650 A1 WO2016106650 A1 WO 2016106650A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
unit
boundary
data stream
length
Prior art date
Application number
PCT/CN2014/095824
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 PCT/CN2014/095824 priority Critical patent/WO2016106650A1/zh
Priority to CN201480074162.8A priority patent/CN106063208B/zh
Priority to EP14909459.1A priority patent/EP3229430A4/en
Publication of WO2016106650A1 publication Critical patent/WO2016106650A1/zh
Priority to US15/637,740 priority patent/US10277432B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/433Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a data processing method and apparatus.
  • Ethernet there are devices with different transmission rates or bit widths that are used to receive and/or transmit data, depending on the requirements.
  • the transmission rate supported by a single data interface of the device is inversely proportional to the number of data interfaces included in the device, provided that the total Ethernet rate is constant.
  • device A includes 16 first data interfaces supporting 25G rates
  • device B includes 8 second data interfaces supporting 50G rates.
  • the device A receives the first data stream through the first data interface, and the bit widths of the 16 first data streams received by the device A through the 16 first data interfaces are the same.
  • the received 16 first data streams are converted into 8 second data streams.
  • the device A sends the eight second data streams to the device B.
  • Each of the second data interfaces of the device B receives one of the second data streams.
  • the transformation can be referred to as data processing.
  • the device A changes a bit width of the second data stream compared to a bit width of the first data stream.
  • the data processing can also be referred to as a bit width transform.
  • bit width conversion is mainly realized by distribution multiplexing of data units included in a data stream.
  • the bit width conversion of the first data stream is converted to the bit width conversion of the eight second data streams, and the bit width conversion manner of the distribution multiplexing includes: the device includes the
  • the 16 first data interfaces can connect 16 channels, each channel for transmitting one of the first data streams.
  • An Alignment Marker (AM) may be carried in the data unit of the first data stream.
  • a first data stream of the first data stream is used, and an AM carried by the first data stream corresponds to a channel for transmitting the first data stream.
  • Each of the 16 first data streams carries an AM.
  • the device A aligns the 16 AMs according to the AM carried by each of the first data streams, that is, performs alignment flag locking (Alignment). Marker Lock, AM Lock)'s deskew operation, so that the device A can read the 16 AMs at the same time before performing bit width conversion on the 16 first data streams. This eliminates the skew formed by the 16 first data streams during transmission.
  • the device A may multiplex the aligned 16 first data streams to generate the 8 second data streams. In the existing bit width conversion mode of the distribution multiplexing, the device A needs to obtain the relative positions of the AMs carried by each of the 16 first data streams before performing the bit width conversion.
  • the device A performs an AM Lock deskew operation on the 16 first data streams according to the obtained relative position to eliminate the skew of each of the first data streams.
  • the existing method for eliminating the skew of the data stream increases the operational complexity and cost, making the bit-width conversion method of the distributed multiplexing difficult to deploy and implement.
  • the technical problem to be solved by the embodiments of the present invention is to provide a data processing method and device, which are helpful for implementing flexible data processing and reducing the difficulty of processing data.
  • an embodiment of the present invention provides a data processing method, where the method includes:
  • the data processing device receives the first data stream, the first data stream including a first data unit and a second data unit, the first data unit and the second data unit being the same length;
  • the data processing device obtains a boundary of the first data unit
  • the data processing device obtains a first skew according to a first data amount and a boundary of the first data unit, where the first data amount is data received by the data processing device within a preset time.
  • the first data amount includes a boundary of the first data unit;
  • the first data unit carries an AM
  • the obtaining, by the data processing device, the boundary of the first data unit includes:
  • the data processing device identifies the boundary of the AM carried by the first data unit by means of an AM lock, and the boundary of the AM is a boundary of the first data unit.
  • the data processing device according to the first skew, adjusting the first data stream includes:
  • the data processing device obtains a first length according to a difference between a length of the first skew and an integer length of the first data unit, where the first length is smaller than a length of the first data unit;
  • the data processing device removes data starting with a boundary of the first data amount and having a length of a first length, and obtains the adjusted first data stream.
  • the adjusting, by the data processing device, the first data stream according to the first skew includes:
  • the data processing device removes data starting with a boundary of the first data amount and having a length of a second length, and obtaining an adjusted first data stream, where the second length is a length of the first skew.
  • the length of the first amount of data is a positive integer multiple of the length of the first data unit.
  • the method further includes:
  • the data processing device receives a second data stream, the second data stream including a first data unit and a second data unit, a first data unit of the second data stream and a second data of the second data stream
  • the length of the unit is the same;
  • the data processing device obtains a boundary of a first data unit of the second data stream
  • the data processing device obtains a second skew according to the second data amount and a boundary of the first data unit of the second data stream, where the second data amount is the data processing device at the preset time Data received within the second data amount including a boundary of the first data unit of the second data stream;
  • the method further includes:
  • the method further includes:
  • the data processing device transmits the adjusted first data stream and the adjusted second data stream to a multiplexer, the multiplexer for using the adjusted first data stream and the adjusting The subsequent second data stream is multiplexed to generate a third data stream.
  • an embodiment of the present invention provides a data processing device, where the device includes:
  • a first receiving unit configured to receive a first data stream, where the first data stream includes a first data unit and a second data unit, where the first data unit and the second data unit have the same length;
  • a first obtaining unit configured to obtain a boundary of the first data unit
  • a second obtaining unit configured to obtain a first skew according to the first data amount and a boundary of the first data unit, where the first data amount is data received by the data processing device within a preset time
  • the first data amount includes a boundary of the first data unit
  • a first adjusting unit configured to adjust the first data stream according to the first skew, such that a boundary between the boundary of the first data unit and the boundary of the first data amount is an integer number of the first data unit length.
  • the first data unit carries an AM
  • the first obtaining unit is specifically configured to identify, by using an AM Lock, a boundary of the AM carried by the first data unit, where a boundary of the AM is a boundary of the first data unit.
  • the first adjusting unit is specifically configured to obtain a first length according to a difference between a length of the first skew and an integer length of the first data unit, where the first length is smaller than that of the first data unit length;
  • the first adjusting unit is specifically configured to remove data starting with a boundary of the first data amount and having a length of a first length, to obtain an adjusted first data stream.
  • the first adjusting unit is specifically configured to remove data starting with a boundary of the first data amount and having a length of a second length, to obtain an adjusted first data stream, where the second length is the first skew length.
  • the length of the first amount of data is a positive integer multiple of the length of the first data unit.
  • the device further includes:
  • a second receiving unit configured to receive a second data stream, where the second data stream includes a first data unit and a second data unit, a first data unit of the second data stream and a second data stream
  • the length of the two data units is the same;
  • a third obtaining unit configured to obtain a boundary of the first data unit of the second data stream
  • a fourth obtaining unit configured to obtain a second skew according to the second data amount and a boundary of the first data unit of the second data stream, where the second data amount is that the data processing device is preset Data received within a time period, the second data amount including a boundary of a first data unit of the second data stream;
  • a second adjusting unit configured to adjust the second data stream according to the second skew, such that a boundary of the first data unit of the second data stream is different from a boundary of the second data amount by an integer number of the The length of the first data unit of the second data stream.
  • the device further includes:
  • a sending unit configured to send, by using a length of the first data unit of the first data stream, an adjusted first data stream and an adjusted second data stream, where the first data unit of the first data stream is The length is the same as the length of the first data unit of the second data stream.
  • the device further includes:
  • a sending unit configured to send the adjusted first data stream and the adjusted second data stream to the multiplexer, where the multiplexer is configured to use the adjusted first data stream and the adjusting The subsequent second data stream is multiplexed to generate a third data stream.
  • the data processing device is a routing device, a switch, or an electrical chip.
  • the data processing device acquires the first data amount including the first data unit within a preset time, and determines the first according to the boundary of the first data amount and the boundary of the first data unit.
  • a skew The data processing device adjusts the first data stream according to the first skew, such that a boundary between the boundary of the first data unit and a first data amount is different from an integer number of lengths of the first data unit, such that The adjustment needs to process less data, that is, adjust one data stream, and the adjusted data stream can satisfy the basic conditions of multiplexing, reduce operation complexity and cost, and facilitate deployment and implementation of bit width conversion.
  • FIG. 1 is a schematic diagram of a deskew operation on a data stream
  • FIG. 2 is a flowchart of a method for processing a data according to an embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of a first data stream according to an embodiment of the present disclosure
  • FIG. 4 is a schematic structural diagram of a first data stream carrying an AM according to an embodiment of the present disclosure
  • FIG. 5a is a schematic diagram of a first data flow according to an embodiment of the present invention.
  • FIG. 5b is a schematic diagram of an adjusted first data stream according to an embodiment of the present disclosure.
  • FIG. 5c is a schematic diagram of an adjusted first data stream according to an embodiment of the present disclosure.
  • FIG. 6 is a flowchart of a method for data processing according to an embodiment of the present invention.
  • FIG. 7a is a schematic diagram of parallel processing of data streams according to an embodiment of the present invention.
  • FIG. 7b is a schematic diagram of an adjusted parallel data stream according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a bit width conversion scenario according to an embodiment of the present disclosure.
  • FIG. 9 is a structural diagram of a device of a data processing device according to an embodiment of the present disclosure.
  • FIG. 10 is a structural diagram of a device of a data processing device according to an embodiment of the present disclosure.
  • FIG. 11 is a structural diagram of a device of a data processing device according to an embodiment of the present disclosure.
  • FIG. 12 is a schematic structural diagram of hardware of a data processing device according to an embodiment of the present invention.
  • FIG 1 is a schematic diagram of a deskew operation on a data stream.
  • the scenario shown in Figure 1 is a scenario where a deskew operation is performed on three data streams.
  • data stream A and data stream B are two data streams before the deskew operation.
  • Data stream A carries AM1
  • data stream B carries AM2.
  • the data stream A' is the data stream obtained by the data stream A after the deskew operation.
  • the data stream B' is the data stream obtained by the data stream B after the deskew operation.
  • the front boundary of the AM1 is the same as the boundary of the data unit carrying the AM1.
  • the front boundary of the AM2 is the same as the boundary of the data unit carrying the AM2.
  • the front boundary of any one of the AMs is a boundary where the position of any one of the AMs is relatively high in the transmission direction.
  • the transmission direction is a transmission direction of the data stream, as shown in FIG. 1, which may be a transmission direction of the data stream A or a transmission direction of the data stream B.
  • the transmission direction of the data stream A is the same as the transmission direction of the data stream B.
  • the front boundary of the AM1 may be denoted as B1
  • the back boundary of the AM1 may be denoted as B2.
  • the front boundary of the AM2 may be denoted as B3, and the back boundary of the AM2 may be denoted as B4.
  • a device can receive the data stream A and the data stream B, and can perform a deskew operation on the data stream A and the data stream B.
  • the device can obtain the relative position of the B3 with respect to the B1.
  • the device adjusts the B3 to be aligned with the B1 according to the relative position of the B3 relative to the B1 to obtain the data stream B'.
  • the data stream A' may be the same as the data stream A, that is, the AM1 of the data stream A is the reference AM, and the device may not perform a deskew operation on the data stream A.
  • the front boundary of the AM1 carried by the data stream A' is aligned with the front boundary of the AM2 carried by the data stream B'.
  • the B1 coincides with a boundary of a data unit carrying the AM1
  • the B3 coincides with a boundary of a data unit carrying the AM2 so the boundary of the data unit included in the data stream A' and the data stream
  • the boundary of the data unit included by B' is at the same position, that is, there is no skew before the boundary of the data unit included in the data stream A' and the boundary of the data unit included in the data stream B'.
  • the device when the device performs a deskew operation on the data stream A and the data stream B, the data stream A and the data stream B need to be simultaneously stored.
  • the device also needs to analyze the relative positions of the AMs carried by each of the data flows A and the data flows B, which increases operational complexity and cost, and wastes more first-in first-out queues (First Input First Output) , FIFO) resources.
  • the data processing device receives the first data stream, the first data stream includes a first data unit and a second data unit, the first data unit and the second data unit being the same length; Obtaining, by the data processing device, a boundary of the first data unit; the data processing device obtaining a first offset skew according to the first data amount and a boundary of the first data unit, where the first data amount is the data And processing, by the processing device, the data received by the device in a preset time, where the first data amount includes a boundary of the first data unit; and the data processing device adjusts the first data stream according to the first skew,
  • the boundary of the first data unit is made to differ from the boundary of the first data amount by an integer number of lengths of the first data unit.
  • the data processing device does not need to perform a deskew operation on another data stream with reference to a certain data stream, and the data processing unit can adjust a single data stream, which helps reduce the amount of data to be processed and reduces Operational complexity and cost help save FIFO resources and facilitate the deployment and implementation of bit width transformation.
  • FIG. 2 is a flowchart of a method for processing a data according to an embodiment of the present invention, where the method includes:
  • the data processing device receives the first data stream, where the first data stream includes a first data unit and a second data unit, the first data unit and the second data unit being the same length.
  • the first data stream may be Forward Error Correction (Forward Error Correction, FEC) Any one of the parallel data streams obtained after processing.
  • FEC Forward Error Correction
  • the FEC module can receive or generate a codeword (CW). After the FEC module converts the codeword into a plurality of data units, the plurality of data units are output to the data processing device in a parallel manner, and any one of the parallel data streams may be the The first data stream. If a codeword has a size of 5280 bits and a data unit has a size of 10 bits, one codeword may include 528 data units, and the FEC module may output the 528 through two parallel data streams. Data units to the data processing device.
  • the first data stream may be one of at least two data streams for performing a bit width transform.
  • the first data stream may be a data stream obtained after FEC processing.
  • the first data stream can include a plurality of data units, such as the first data unit and the second data unit.
  • the length of the first data unit of the first data stream may be at least one bit, that is, the first data unit of the first data stream may include one bit or more bits.
  • the first data unit of the first data stream may be a symbol, and the symbol may be 10 bits in length.
  • the length of the first data unit of the first data stream may also be one bit. The length of the first data unit of the first data stream is no longer exemplified here.
  • the length of the first data unit of the first data stream is the same as the length of the second data unit of the first data stream, and may be the first data unit of the first data stream and the first data stream
  • the second data unit has the same number of bits.
  • the first data unit of the first data stream is a symbol
  • the second data unit of the first data stream is also a symbol.
  • S202 The data processing device obtains a boundary of the first data unit.
  • the boundary of the first data unit may be a front boundary of a first data unit of the first data stream or a back boundary of a first data unit of the first data stream.
  • the front boundary of the first data unit can be understood as a boundary that is relatively frontward in the transmission direction among the two boundaries included in the first data unit.
  • the transmission direction is a transmission direction of the first data stream.
  • the back boundary of the first data unit can be understood as the boundary between the two boundaries included in the first data unit and the position in the transmission direction.
  • FIG. 3 is a schematic structural diagram of a first data stream according to an embodiment of the present invention, where a transmission direction of the first data stream is set in an arrow direction as shown in FIG. 3, that is, a transmission direction of the first data stream may be From right to left.
  • a and b may be used to identify the boundaries of the first data unit of the first data stream, respectively. If The transmission direction of the first data stream is in the direction of the arrow shown in FIG. 3, the a may be used to identify a front boundary of the first data unit of the first data stream, and the b may be used to identify the first data stream. The back boundary of the first data unit. Taking the transmission direction shown in FIG.
  • the a may be received by the data processing device before the b, or in the transmission direction, the position of the a relative to the b is higher. . If the transmission direction of the first data stream is opposite to the transmission direction shown in FIG. 3, the a may be used to identify a back boundary of the first data unit of the first data stream, and the b may be used to identify the The front boundary of the first data unit of the first data stream.
  • the data processing device may obtain the boundary of the first data unit of the first data stream by using an AM Lock mode or a forward error correction codeword lock (FEC_CW Lock), in the following Embodiment 2 Detailed description will not be repeated here.
  • Embodiments of the present invention do not limit a method of obtaining a first data unit boundary of the first data stream.
  • the data processing device obtains a first skew according to a first data amount and a boundary of the first data unit, where the first data amount is data received by the data processing device within a preset time.
  • the first data amount includes a boundary of the first data unit.
  • the first data amount may be a part of continuous data of the first data stream; the boundary of the first data quantity may be a front boundary of the first data quantity, or the first data quantity The back boundary.
  • the front boundary of the first data amount may be a boundary in which the position is relatively advanced in the transmission direction among the two boundaries included in the first data amount.
  • the transmission direction is a transmission direction of the first data stream.
  • the back boundary of the first amount of data may be understood as a boundary in which the position of the first data amount is relatively rearward in the transmission direction.
  • the preset time may include one or more clock cycles, and the clock cycle may be understood as a period of an operating clock of the data processing device.
  • the length of the first data amount is a positive integer multiple of the length of the first data unit.
  • the length of the first data quantity in the embodiment of the present invention may also be the size of the first data quantity, that is, the length of the first data quantity may be the number of bits included in the first data quantity.
  • the length of the first data unit in the embodiment of the present invention may also be the size of the first data quantity, that is, the length of the first data unit is the number of bits included in the first data unit.
  • the transmission direction of the first data stream is set as shown by the arrow direction in FIG.
  • the direction of transmission of a data stream can be from right to left.
  • c and d can be used to identify the boundaries of the first amount of data, respectively.
  • the c may be used to identify a front boundary of the first data amount
  • the d may be used to identify a back boundary of the first data amount.
  • the c may be received by the data processing device prior to the d, or, in the transmission direction, the The position of c is higher than the position of the d. If the transmission direction of the first data stream is opposite to the transmission direction shown in FIG. 3, the c is a back boundary of the first data amount, and d is a front boundary of the first data amount.
  • the data processing device obtains the first skew according to the first data amount and the boundary of the first data unit, and includes: the data processing device according to the front boundary of the first data amount and the first data
  • the first boundary of the first data unit of the stream obtains the first skew.
  • the first skew may have a length between c and a as shown in FIG. 3, that is, a number of bits between c and a shown in FIG. or,
  • the data processing device Obtaining, by the data processing device, the first skew according to the first data amount and the boundary of the first data unit: the data processing device according to the back boundary of the first data amount and the first data stream
  • the first skew of the data unit is obtained by the back boundary of a data unit.
  • the first skew may have a length between b and d as shown in FIG. 3, that is, a number of bits between b and d shown in FIG. or,
  • the data processing device Obtaining, by the data processing device, the first skew according to the first data amount and the boundary of the first data unit: the data processing device according to the first boundary of the first data amount and the first data stream
  • the first skew of the data unit is obtained by the back boundary of a data unit.
  • the first skew may have a length between c and b as shown in FIG. 3, that is, a number of bits between c and b shown in FIG. or,
  • the first skew may have a length between a and d as shown in FIG. 3, that is, a number of bits between a and d shown in FIG.
  • the data processing device adjusts the first data stream according to the first skew, such that a boundary between the boundary of the first data unit and the boundary of the first data quantity is an integer number of the first The length of the data unit.
  • the boundary of the first data unit of the first data stream in S204 may be the same as the boundary of the first data unit of the first data stream used in the first skew obtained in S203.
  • the boundary of the first data amount in S204 may be the same as the boundary of the first data amount used in obtaining the first skew in S203.
  • the data processing device obtains the first skew according to a front boundary of the first data amount and a front boundary of the first data unit of the first data stream, in S203, in S204, The data processing device adjusts the first data stream by the first skew such that a difference between a front boundary of the first data unit of the first data stream and a front boundary of the first data amount is an integer number of the first The length of the first data unit of a data stream.
  • the boundary of the first data unit of the first data stream in S204 may be different from the boundary of the first data unit of the first data stream used by the first skew in S203.
  • the boundary of the first data amount in S204 may be different from the first data amount used in obtaining the first skew in S203 and the boundary of the first data unit of the first data stream.
  • the data processing device obtains the first skew according to the back boundary of the first data amount and the back boundary of the first data unit of the first data stream, in S203, in S204, The data processing device adjusts the first data stream by the first skew such that a difference between a front boundary of the first data unit of the first data stream and a front boundary of the first data amount is an integer number of the first The length of the first data unit of a data stream. If the data processing device obtains the first skew according to the front boundary of the first data amount and the back boundary of the first data unit of the first data stream, in S203, the data processing is performed in S204.
  • the device adjusts the first data stream by using the first skew, such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount are different by an integer number of the first data The length of the first data unit of the stream. If the data processing device obtains the first skew according to the back boundary of the first data amount and the front boundary of the first data unit of the first data stream, in S203, the data processing is performed in S204. The device adjusts the first data stream by using the first skew, such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount are different by an integer number of the first data The length of the first data unit of the stream.
  • the data processing device obtains the first skew according to the front boundary of the first data amount and the front boundary of the first data unit of the first data stream, in S203, the data processing is performed in S204.
  • the device adjusts the first data stream by using the first skew to enable the first number of the first data stream
  • the length of the first data unit of the first data stream is different from the back boundary of the first data amount.
  • the data processing device may not A data stream is adjusted.
  • the data processing device acquires a first data amount including a boundary of the first data unit within a preset time; the data processing device according to the first data amount and a boundary of the first data unit Determining a first skew; the data processing device adjusts the first data stream according to the first skew, such that an interval between the boundary of the first data unit and the boundary of the first data amount is an integer number The length of the first data unit.
  • the data processing device adjusts a skew of a boundary of the first data unit with respect to a boundary of the first data amount with reference to the first data amount, which helps reduce data to be processed, and the data processing
  • the adjusted first data stream obtained by the device can meet the conditions of the subsequent bit width conversion, reduce the operation complexity and cost, facilitate the deployment and implementation of the bit width conversion, and help reduce the occupation of the FIFO resources.
  • Embodiment 2 of the present invention provides a manner of obtaining a boundary of a first data unit of the first data stream.
  • the method for obtaining the boundary of the first data unit provided by the second embodiment of the present invention may be applied to the method provided in the first embodiment, and may also be applied to obtain the boundary of the first data unit of the other data stream, and details are not described herein again.
  • the first data unit in Embodiment 2 of the present invention may carry an AM, a front boundary of the AM may coincide with a front boundary of the first data unit, or a back boundary of the AM may be associated with the first data unit The back boundaries coincide.
  • the data processing device may learn the boundary of the first data unit of the first data stream while determining the AM boundary.
  • the first data unit mentioned in the second embodiment of the present invention is the first data unit of the first data stream.
  • the data processing device may identify the boundary of the AM carried by the first data unit by means of AM Lock.
  • the data processing device may also identify a boundary of the FEC_CW carried by the first data stream by means of FEC_CW Lock, and determine a boundary of the first data unit according to a boundary of the FEC_CW.
  • the AM of the first data stream can be used to identify the first data stream.
  • the data The processing device can utilize the AM to identify the first data stream. If the front boundary of the AM coincides with the front boundary of the first data unit, the data processing device may identify a front boundary of the AM and view the first data stream according to a front boundary of the AM Align the operation. If the back boundary of the AM coincides with the back boundary of the first data unit, the data processing device may identify a back boundary of the AM, and perform the first data stream according to a back boundary of the AM. Alignment operation.
  • FIG. 4 is a schematic structural diagram of a first data stream carrying an AM according to an embodiment of the present invention.
  • the transmission direction of the first data stream is the direction of the arrow in FIG. 4, that is, the transmission direction of the first data stream is from right to left.
  • 42 in Figure 4 can be used to identify the AM.
  • 41, 43 and 44 in Fig. 4 are respectively used to identify one data unit of the first data stream.
  • the length of the data unit identified by 41 is the same as the length of the data unit identified by 43
  • the length of the data unit identified by 43 is the same as the length of the data unit identified by 44.
  • the data unit identified by 41 in FIG. 4 may carry partial data of the AM.
  • the data unit identified by 43 in FIG. 4 may carry partial data of the AM.
  • the data unit identified by 44 in FIG. 4 may carry partial data of the AM.
  • a and b can be used to identify the boundaries of the data units identified by 41, respectively.
  • the transmission direction of the first data stream the a is the front boundary of the data unit identified by 41
  • b is the back boundary of the data unit identified by 41.
  • the a and c may be used to identify the boundaries of the AM, respectively.
  • the transmission direction of the first data stream may be used to identify a front boundary of the AM
  • the c may be used to identify a back boundary of the AM.
  • e and f may be used to identify the boundary of the first amount of data, respectively.
  • the transmission direction of the first data stream as shown in FIG. 4, the e is a front boundary of the first data amount, and the f is a back boundary of the first data amount.
  • the AM may occupy one or more data units in the first data stream, for example, the AM may occupy 3 of the data units, and the data identified by 41, 43 and 44 in FIG. 4 respectively.
  • the unit, or the AM can occupy 3.5 of the data units.
  • the boundary of the AM and the boundary of the first data unit of the first data stream may include: In one case, the front boundary of the AM coincides with the front boundary of the first data unit of the first data stream.
  • the first data unit of the first data stream is the data unit identified by 41 in FIG. 4, the AM is 42 in FIG. 4, and the first data unit of the first data stream is carrying the AM.
  • the front boundary of the AM and the front boundary of the first data unit of the first data stream are both a.
  • the back boundary of the AM can be The coincidence with the back boundary of the first data unit of the first data stream may also not coincide with the back boundary of the first data unit of the first data stream. In the second case, the back boundary of the AM and the back boundary of the first data unit of the first data stream may coincide.
  • the first data unit may be the data unit identified by 44 in FIG. 4, the AM is 42 in FIG. 4, and the first data unit of the first data stream is a data unit carrying the post-AM boundary. .
  • the back boundary of the AM and the back boundary of the first data unit of the first data stream are both c.
  • the front boundary of the AM may coincide with a front boundary of the first data unit of the first data stream, or may not coincide with a front boundary of the first data unit of the first data stream. If the length of the AM is smaller than the length of the first data unit of the first data stream, the front boundary of the AM and the front boundary of the first data unit of the first data stream overlap, or the AM The back boundary coincides with a back boundary of the first data unit of the first data stream.
  • the data processing device reads the first data volume of the first data stream, it may determine that the first data stream carries the AM by identifying a boundary of an AM carried by the first data stream. The boundary of the first data unit.
  • the manner of the AM Lock may be a locking process for the AM carried by the first data stream.
  • the data processing device can determine the location of the boundary of the AM by means of the AM Lock.
  • the data processing device is preconfigured with an AM pattern of the first data stream.
  • the data processing device can match the first data stream with the AM pattern to identify the AM of the first data stream.
  • the first data stream carries at least two AMs, such as AM1 and AM2, the AM1 is adjacent to the AM2, and the back boundary of the AM1 and the front boundary of the AM2 are in different data volumes. . If the data processing device determines that the AM1 and the AM2 respectively match the AM pattern, the data processing device locks the first data stream.
  • the data processing device may use the front boundary of any one of the AM1 and the AM2 as the first The front boundary of the first data unit of the data stream. If the data processing device needs to know the back boundary of the first data unit of the first data stream, the data processing device may use the back boundary of any one of the AM1 and the AM2 as the first The back boundary of the first data unit of the data stream.
  • the data processing device identifies the front boundary of the AM by means of the AM Lock, and the front boundary of the first data unit of the first data stream of the front boundary of the AM.
  • the first skew may be a length between a front boundary of the first data unit of the first data stream and a front boundary of the first data amount, for example, the first skew may be e to The length between a.
  • the first skew may be a length between a front boundary of the first data unit of the first data stream and a back boundary of the first data amount, for example, the first skew may be as shown in FIG. The length between a and f.
  • the data processing device identifies the back boundary of the AM by means of the foregoing AM Lock, and the back boundary of the AM may be the back boundary of the first data unit of the first data stream.
  • the first skew is a length between a back boundary of the first data unit of the first data stream and a back boundary of the first data amount, for example, the first skew may be c to f as shown in FIG. The length between.
  • the first skew may be a length between a back boundary of the first data unit of the first data stream and a front boundary of the first data amount, for example, the first skew may be as shown in FIG. The length between e and c.
  • the data processing device can quickly and accurately identify the boundary of the AM carried by the first data stream by means of AM Lock.
  • the data processing device may determine a boundary of the first data unit of the first data stream by using a boundary of the AM, where a first data unit of the first data stream carries a boundary of the AM. In this way, the data processing device can obtain the first data unit of the first data stream relative to the first data amount by using a boundary of the first data amount and a boundary of the identified AM.
  • Skew without using AM in other data streams as reference AM, helps save FIFO resources, reduces processing complexity and cost, and helps save system resources.
  • Embodiment 3 of the present invention provides a manner of adjusting the first data stream.
  • the embodiment of the present invention does not limit the manner in which the first data stream is adjusted according to the first skew, and the difference between the front boundary of the first data amount and the front boundary of the first data unit in the adjusted first data stream can be realized.
  • An integer number of the first data unit may be of a length.
  • the method for adjusting the first data stream provided by the third embodiment of the present invention can be applied to the method provided in the first embodiment, and can also be applied to the method in combination with the first embodiment and the second embodiment, and can also be applied to adjusting other data. Flow, no longer repeat here.
  • the first number in the third embodiment The amount of data may be the same as the first data amount in the first embodiment or the second embodiment, and details are not described herein again.
  • the first data unit of the first data stream in the third embodiment may be the same as the first data unit in the first embodiment or the second embodiment, and details are not described herein again.
  • Embodiment 3 of the present invention provides a manner in which at least three types of data processing devices adjust the first data stream according to the first skew.
  • the first manner may include: the data processing device obtaining a first length according to a difference between a length of the first skew and an integer length of the first data unit, where the first length is smaller than the first a length of the data unit; the data processing device removes data starting with a boundary of the first data amount and having a length of a first length, and obtaining the adjusted first data stream.
  • the length of the data between the boundary of the first data unit and the boundary of the first data amount is an integer number of lengths of the first data unit, such as
  • the length of the first data amount is M times the length of the first data unit, and the M is an integer greater than or equal to 1. If the M is 1, the length of the first skew is the first length.
  • the first skew is a skew obtained according to a front boundary of the first data unit and a front boundary of the first data amount
  • a length of the first skew is greater than a length of the first data unit
  • the first length is a difference between a length of the first skew and a length of the N first data units, where the N is the first data unit included in the first skew
  • the maximum number For example, if the length of the first skew is 2.4 lengths of the first data unit and N is 2, the first length is 0.4 lengths of the first data unit.
  • the length of the first skew is greater than the length of the first data unit.
  • the length of the AM is an integer multiple of the length of the first data unit, and the first length is a difference between a length of the first data unit and a first difference, where the first difference is Determining a difference between a length of the first skew and a length of the L first data units, the length of the L first data units being greater than or equal to a length of the first skew.
  • the first difference is 0.6 lengths of the first data unit
  • the first length Is the length of 0.4 of the first data unit.
  • the first skew is a skew obtained according to a back boundary of the first data unit and a back boundary of the first data amount
  • the length of the first skew is smaller than a length of the first data unit
  • Length of AM An integer multiple of the length of the first data unit, where the first length is a difference between a length of the first data unit and a first difference, and the first difference is a length of the first skew .
  • the length of the first skew is 0.4 lengths of the first data unit
  • the first difference is 0.6 lengths of the first data unit
  • the first length is 0.4 The length of the first data unit.
  • the length of the AM is a small length of the first data unit.
  • the data processing device may obtain a front boundary of the AM relative to the first data amount according to a back boundary of the first data unit, a length of the AM, and a length of the first data amount The length of the data between the front boundaries is obtained by the first length.
  • the method of obtaining the first length will not be exemplified one by one here.
  • the second manner may include: the data processing device removes data starting with a boundary of the first data amount and having a length of a second length, and obtaining an adjusted first data stream, where the second length is The length of the first skew. For example, the data processing device obtains the adjusted first data stream according to the second length. In the adjusted first data stream, a front boundary of the first data amount and a front boundary of the first data unit of the first data stream are coincident.
  • the third mode may include: the data processing device obtaining a third length according to a difference between a length of the first skew and a length of the X first data units, where the third length is greater than the first a length of the data unit, the X being greater than or equal to 1 and smaller than the N; the data processing device removing data starting with a boundary of the first data amount and having a length of a third length, obtaining an adjusted first data flow. For example, the data processing device obtains the adjusted first data stream according to the third length. In the adjusted first data stream, a length of at least one of the first data units is included between a front boundary of the first data amount and a front boundary of the first data unit of the first data stream.
  • the first skew is a skew obtained according to a front boundary of the first data unit and a front boundary of the first data amount
  • the first skew has a length of 2.4 the first data unit.
  • the length, X is 1, then the third length is 1.4 lengths of the first data unit.
  • the first data stream in the embodiment of the present invention may include at least two data units, such as the first data stream mentioned in the embodiment corresponding to FIG. 2, including the first data unit and the second data unit, the first The length of the data unit is the same as the length of the second data unit.
  • FIG. 5 is a schematic diagram of a first data flow according to an embodiment of the present invention.
  • Figure 5a The transmission direction of the first data stream is from right to left, that is, the direction indicated by the arrow in Fig. 5a. If the length of the first data unit of the first data stream is 10 bits, and the length of the first data quantity is the length of the first data unit of the 10 first data streams, the first data quantity The length is 100bit.
  • the first skew is a skew determined according to a front boundary of the first data amount and a front boundary of a first data unit of the first data stream, and the length of the first skew is 43 bits. .
  • the first length may be 3 bits. If the first length is 3 bits, the first length may be a length obtained by subtracting 4 lengths of the first data unit according to a length of the first skew. The data processing device may remove data starting with a front boundary of the first data amount and having a length of 3 bits according to the first length.
  • the adjusted first data stream is as shown in FIG. 5b.
  • FIG. 5b is a schematic diagram of an adjusted first data stream according to an embodiment of the present invention. a data length between a front boundary of the first data unit of the adjusted first data stream and a front boundary of the first data amount is represented as D, and the D is a number of the first data stream 4 times the length of a data unit.
  • the second length may be 43 bits.
  • the data processing unit may remove data starting with a front boundary of the first data amount and having a length of 43 bits according to the second length.
  • the third length may be 13 bits, 23 bits, or 33 bits.
  • the processing method of the third length is 13 bits, 23 bits, or 33 bits is the same as the first length is 3 bits, and details are not described herein again.
  • the data processing device may obtain a first skew by using a front boundary of the first data unit of the first data stream and a front boundary of the first data amount.
  • the first skew is 43 bits.
  • the data processing device may obtain the adjusted first data stream by using the first manner, that is, the data processing device may remove data starting with a back boundary of the first data amount and having a length of a first length.
  • the first length may be -7 bits, -17 bits, or the like. If the first length is -7 bits, the first length may be a length obtained by subtracting 5 lengths of the first data unit according to the length of the first skew.
  • the data processing device may remove data starting with a back boundary of the first data amount and having a length of 7 bits to obtain an adjusted first data stream.
  • a difference between the back boundary of the first data unit of the first data stream and the back boundary of the first data volume is the first data of the first data stream.
  • the processing manner of the first length being -17 bits is the same as the first length being -7 bits, and details are not described herein again.
  • the second length is the length of the first skew, that is, the second length is 43 bits. If the first skew is determined according to a front boundary of the first data amount and a front boundary of the first data unit of the first data stream, the data processing device adopts the second manner, and removes The first boundary of the first data amount begins with a length of the second length of data.
  • the adjusted first data stream may refer to FIG. 5c.
  • FIG. 5c is a schematic diagram of an adjusted first data stream according to an embodiment of the present invention. The adjusted front boundary of the first data unit of the first data stream coincides with the front boundary of the first data amount.
  • the data processing device adjusts the first data stream according to the first skew, so that the boundary between the boundary of the first data unit and the first data amount in the first data stream after adjustment is adjusted.
  • the length of the first data unit of the first data stream is different from each other, which can satisfy the multiplexing condition, reduce the operation complexity and cost, and facilitate the deployment and implementation of the bit width conversion.
  • the data processing device in Embodiment 4 of the present invention can process a plurality of data streams in parallel.
  • the data processing device may process the second data stream simultaneously with or after processing the first data stream.
  • the fourth embodiment of the present invention provides a method for processing, by the data processing device, the second data stream, where the method for processing the first data stream by the data processing device is not performed in Embodiment 4 of the present invention.
  • the method for processing the first data stream by the data processing device can be referred to any one of the first embodiment to the third embodiment, and details are not described herein again.
  • FIG. 6 is a flowchart of a method for processing a data according to an embodiment of the present invention, including:
  • the data processing device receives a second data stream, where the second data stream includes a first data unit and a second data unit, and the first data unit of the second data stream and the second data stream The two data units are the same length.
  • the second data stream and the first data stream may be data streams in a parallel data stream obtained after the same FEC processing, and may be used for bit width conversion.
  • the lengths of the first data unit of the second data stream and the first data unit of the first data stream may be the same.
  • the length of the first data unit of the second data stream may be at least one bit. That is, the first data unit of the second data stream may include one bit or more than one bit.
  • the first data unit of the second data stream can Is a symbol, the symbol can be 10 bits in length.
  • the length of the first data unit of the second data stream may also be one bit.
  • the length of the first data unit of the second data stream is no longer exemplified here.
  • the first data unit length of the second data stream is the same as the length of the second data unit of the second data stream, and may be the first data unit of the second data stream and the second data stream
  • the two data units have the same number of bits.
  • the data processing device can simultaneously receive the first data stream and the second data stream, and simultaneously adjust the first data stream and the second data stream.
  • the first data stream and the second data stream may be FEC processed data streams.
  • the data processing device obtains a boundary of a first data unit of the second data stream.
  • the manner in which the data processing device obtains the boundary of the first data unit of the second data stream is similar to the manner in which the boundary of the first data unit of the first data stream is obtained in S202, and details are not described herein again.
  • the data processing device obtains a second skew according to the second data amount and a boundary of the first data unit of the second data stream, where the second data amount is the data processing device at a preset time Data received within, the second amount of data including a boundary of a first data unit of the second data stream.
  • the preset time may be the same as the preset time in the first embodiment.
  • the data processing device may adopt the method for obtaining the first skew provided by any one of the first embodiment to the third embodiment to obtain the manner of the second skew, and details are not described herein again.
  • the data processing device obtains a second skew according to the second data amount and the boundary of the first data unit of the second data stream: the front boundary and the data processing device according to the second data amount
  • the front edge of the first data unit of the second data stream is obtained, and the second skew is obtained.
  • the second skew may have a length between c and a as shown in FIG. 3, that is, a number of bits between c and a shown in FIG. or,
  • the data processing device obtains a second skew according to the second data amount and a boundary of the first data unit of the second data stream: a back boundary of the data processing device according to the second data amount, and the second The second edge of the first data unit of the data stream obtains the second skew.
  • the second skew may have a length between b and d as shown in FIG. 3, that is, b and d shown in FIG. The number of bits in between. or,
  • the data processing device obtains a second skew according to the second data amount and a boundary of the first data unit of the second data stream: the front boundary and the second data of the data processing device according to the second data amount
  • the second edge of the first data unit of the data stream obtains the second skew.
  • the second skew may have a length between c and b as shown in FIG. 3, that is, a number of bits between c and b shown in FIG. or,
  • the data processing device obtains a second skew according to the second data amount and a boundary of the first data unit of the second data stream: a back boundary of the data processing device according to the second data amount, and the second The front edge of the first data unit of the data stream obtains the second skew.
  • the second skew may have a length between a and d as shown in FIG. 3, that is, a number of bits between a and d shown in FIG.
  • the second data amount and the first data amount may be the same length, which is convenient for the data processing device to process the first data stream and the second data stream in parallel, simplify processing and Save system resources.
  • the data processing device adjusts the second data stream according to the second skew, such that a boundary of the first data unit of the second data stream is different from a boundary of the second data amount by an integer number of the first The length of the first data unit of the second data stream.
  • the data processing device may adjust the second data stream by using the method provided by any one of the first embodiment to the third embodiment, and details are not described herein again.
  • FIG. 7a is a schematic diagram of parallel processing of data streams according to an embodiment of the present invention.
  • the first data amount and the second data amount may be the same length, for example, the first data amount and the second data amount are both 100 bits.
  • 701 is configured to identify a first data unit of the first data stream.
  • 702 is for identifying a first data unit of the second data stream.
  • the first data unit identified by 701 has the same length as the first data unit identified by 702, such as 10 bits.
  • the transmission directions of the first data stream and the second data stream are from right to left, as shown by the direction of the arrow in FIG. 7a.
  • the data processing device may obtain the boundary of the first data unit identified by 701 and the boundary of the first data unit identified by 702 by means of AM Lock.
  • the data processing device obtains a first skew according to a front boundary of the first data amount and a front boundary of the first data unit identified by 701.
  • the first skew can be expressed as A in Figure 7a.
  • the data processing device obtains the second skew according to a front boundary of the second data amount and a front boundary of the first data unit identified by 702, and the second skew may be represented as B in FIG. 7a.
  • the length of the A may be 43 bits, and the length of the B may be 71 bits.
  • the data processing device obtains the first The length may be 3 bits, and the first length is used to adjust the length of the first data stream.
  • the data processing device is further configured to adjust a length of the second data stream, where the length for adjusting the second data stream may be 1 bit.
  • the data processing device removes data starting with a front boundary of the first data amount and having a length of the first length, such as removing 3 bits of data, to obtain an adjusted first data stream.
  • the data processing device is removed from the front boundary of the second data amount, and the length is used to adjust the length of the second data stream, for example, 1 bit of data is removed, and the adjusted second data stream is obtained.
  • FIG. 7b is a schematic diagram of an adjusted parallel data stream according to an embodiment of the present invention.
  • the length between the front boundary of the first data unit of the adjusted first data stream and the front boundary of the first data amount is the length of the first data unit of the first data stream. 4 times, for example, the length of the first data unit of the first data stream is 10 bits, and A′ in FIG. 7b represents the front boundary of the first data unit of the adjusted first data stream and the first data amount.
  • the length between the front boundaries, the A' may be 40 bits.
  • the length between the front boundary of the first data unit of the adjusted second data stream and the front boundary of the second data amount is the length of the first data unit of the second data stream.
  • the length of the first data unit of the second data stream is 10 bits
  • B' in FIG. 7b represents the front boundary of the first data unit of the adjusted second data stream and the first data amount
  • the length between the front boundaries, the B' may be 70 bits.
  • the data processing device acquires a first data amount including a boundary of the first data unit of the second data stream within a preset time; the data processing device according to the first data amount and the Determining a second skew of a boundary of the first data unit of the second data stream; the data processing device adjusting the second data stream according to the second skew to cause a boundary of the first data unit of the second data stream
  • the length of the first data unit of the second data stream differs from the boundary of the first data amount by an integer.
  • the data processing device adjusts, according to the first data amount, a boundary of a first data unit of the second data stream with respect to a boundary of the first data amount
  • the skew helps to reduce the data to be processed, and the adjusted second data stream obtained by the data processing device can satisfy the condition of subsequent bit width conversion, reduces the operation complexity and cost, and facilitates the deployment of the bit width conversion. Implementation helps reduce the occupation of FIFO resources.
  • the granularity in the adjusted data stream obtained after the data processing may be different for different application scenarios.
  • the granularity can be understood as a basic unit of the data stream.
  • the granularity of the adjusted data stream obtained after the data processing can be a 10-bit length symbol.
  • the smaller the granularity the smaller the basic unit in the data stream.
  • the larger the granularity the larger the basic unit in the data stream.
  • the data processing device sends the adjusted first data stream and the adjusted second data stream with the first data unit as a granularity.
  • the first data unit may be the first data unit of the first data stream because the length of the first data unit of the first data stream is the same as the length of the first data unit of the second data stream Or the first data unit of the second data stream.
  • the data processing device sends the adjusted first data stream and the adjusted second data stream in a polling manner.
  • the sending manner of the polling may be that the data processing device sequentially sends the adjusted first data stream and the adjusted data unit in the second data stream.
  • the data processing device may sequentially send one data unit in the adjusted first data stream, one data unit in the adjusted second data stream, and another data unit in the adjusted first data stream. Another data unit in the adjusted second data stream.
  • the received first data stream and the adjusted second data stream may be a modulator, an encoder, or a precoder.
  • the data processing device may send the adjusted first data stream and the adjusted second data stream to a multiplexer for the multiplexer to perform Bit width conversion operation.
  • the data processing device may send the adjusted first data stream and the adjusted second data stream to the multiplexer, the multiplexer for using the adjusted first data
  • the stream and the adjusted second data stream are multiplexed to generate a third data stream.
  • the multiplexer corresponds to the data processing device, that is, the multiplexer can receive the adjusted first data stream and the adjusted second data sent by the data processing device flow.
  • the granularity of the multiplexed adjusted data stream may be the same or the same.
  • the data processing device sends the adjusted first data stream to the first data unit of the first data stream, and the data processing device sends the adjusted second data stream to the second data size.
  • the first data unit of the data stream, the first data unit of the first data stream and the first data unit of the second data stream may each have a length of 10 bits.
  • the granularity of the multiplexer modulating the first data stream and the adjusted second data stream may be 10 bits, or may be a granularity less than 10 bits, such as 1 bit, or may be a granularity greater than 10 bits, such as 20bit.
  • the fifth embodiment of the present invention further describes the specific application scenario of the bit width conversion, and further describes the conversion circuit and the multiplexer in the process of the bit width conversion.
  • the transform circuit can include a multiplexer and a data processing device. If a transform circuit needs to multiplex the received M' data stream to generate N' strip data streams, the transform circuit includes N' of the multiplexers, each multiplexer will receive The K' strip data stream is multiplexed into a data stream, the K' being an integer greater than or equal to 2, and the K' is the quotient obtained by dividing M' by N', that is, the K' may be M' /N's business.
  • the data processing device in the transform circuit can adjust the data stream for multiplexing before the multiplexer multiplexes the data stream.
  • the data processing device in the embodiment of the present invention has a one-to-one correspondence with the multiplexer, that is, the conversion circuit may include N' data processing devices.
  • the N' is an integer greater than or equal to 1
  • M' is an integer greater than N'.
  • the data processing device does not need to adjust the remaining data streams in the M' data stream with reference to one of the M' data streams.
  • the data processing device can adjust each data stream in the K' data stream by using the method provided by the embodiment of the present invention, which helps reduce the processing burden and processing complexity of the data processing device.
  • FIG. 8 is a schematic diagram of a bit width conversion scenario according to an embodiment of the present invention.
  • M' is 16, N' is 8, and K' is 2.
  • the eight multiplexers are Mux Group_1 to Mux Group_8, respectively.
  • the data processing device can read two data streams, for example, the data processing device corresponding to the Mux Group_1 reads the first data stream and the second data stream.
  • the data processing device may be in a period of a preset time, and may be from the first A first amount of data is read in a data stream, and a second amount of data is read from the second stream.
  • the first amount of data and the second amount of data may be data amounts read by the data processing device within the same predetermined time.
  • the length of the first amount of data is the same as the length of the second amount of data.
  • the execution body of the data processing can be a data processing device.
  • the data processing device can be provided in a conversion circuit.
  • the data processing device may be a component in a physical layer (PHY), a PHY chip, a system chip, or a multi-port Ethernet device.
  • the PHY can be implemented by a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC).
  • FPGA field programmable gate array
  • ASIC application-specific integrated circuit
  • the PHY may be a component in a network interface card (NIC), and the NIC may be a line card or a PIC (Physical Interface Card).
  • the PHY may include a Media-Independent Interface (MII) for connecting to Medium Access Control (MAC).
  • MII Media-Independent Interface
  • the embodiments of the present invention can also be applied to other network environments that require bit width conversion.
  • the conversion circuit is configured to output the multiplexed data stream when performing a bit width conversion operation of data stream multiplexing, for example, in a conversion circuit for performing bit width conversion of M' to N'
  • the transform circuit sends the 8 data streams to the next network node, and the next network node may be other transform circuits or receiving devices.
  • Each of the data processing devices is operative to receive the K's data stream and to adjust the K' data stream.
  • the data processing method provided by the embodiment of the present invention can be applied to an optical module.
  • a complete deskew operation is not required in the optical module, and the optical module can adjust the first data stream without reference to other data streams.
  • the boundary of the first data unit of the subsequent first data stream differs from the boundary of the first data amount by an integer number of lengths of the first data unit.
  • the adjusted first data stream already satisfies the basic condition of the bit width change.
  • the method provided by the embodiment of the invention does not require the optical module to have high data processing capability, simplifies the data processing operation, and helps reduce the complexity of the internal data processing structure of the optical module and saves cost.
  • the first data stream and the first The second data stream may be a data stream in the electrical chip
  • the third data stream may be a data stream in the optical chip, where the third data stream is obtained by multiplexing the first data stream and the second data stream. data flow.
  • FIG. 9 is a structural diagram of a device of a data processing device according to an embodiment of the present invention.
  • the data processing device 900 can include:
  • the first receiving unit 901 is configured to receive a first data stream, where the first data stream includes a first data unit and a second data unit, where the first data unit and the second data unit have the same length.
  • the first data stream may be any one of the parallel data streams obtained after FEC processing.
  • the FEC module can receive or generate a codeword (CW). After the FEC module converts the codeword into a plurality of data units, the plurality of data units are output to the data processing device in a parallel manner, and any one of the parallel data streams may be the The first data stream. If a codeword has a size of 5280 bits and a data unit has a size of 10 bits, one codeword may include 528 data units, and the FEC module may output the 528 through two parallel data streams. Data units to the data processing device.
  • the first data stream may be one of at least two data streams for performing a bit width transform.
  • the first data stream may be a data stream obtained after FEC processing.
  • the first data stream can include a plurality of data units, such as the first data unit and the second data unit.
  • the length of the first data unit of the first data stream may be at least one bit, that is, the first data unit of the first data stream may include one bit or more bits.
  • the first data unit of the first data stream may be a symbol, and the symbol may be 10 bits in length.
  • the length of the first data unit of the first data stream may also be one bit. The length of the first data unit of the first data stream is no longer exemplified here.
  • the length of the first data unit of the first data stream is the same as the length of the second data unit of the first data stream, and may be the first data unit of the first data stream and the first data stream
  • the second data unit has the same number of bits.
  • the first data unit of the first data stream is a symbol
  • the second data unit of the first data stream is also a symbol.
  • the first obtaining unit 902 is configured to obtain a boundary of the first data unit.
  • the boundary of the first data unit may be a front boundary of a first data unit of the first data stream or a back boundary of a first data unit of the first data stream.
  • the front boundary of the first data unit can be understood as a boundary that is relatively frontward in the transmission direction among the two boundaries included in the first data unit.
  • the transmission direction is a transmission direction of the first data stream.
  • the back boundary of the first data unit can be understood as the boundary between the two boundaries included in the first data unit and the position in the transmission direction.
  • the present invention does not limit the method by which the first obtaining unit 902 obtains the first data unit boundary of the first data stream.
  • the embodiment of the present invention also provides a preferred manner for the first obtaining unit 902 to obtain the first data unit boundary of the first data stream, which will be described in detail in Embodiment 7, and details are not described herein again.
  • the first obtaining unit 902 can obtain the boundary of the first data unit of the first data stream by means of AM Lock or FEC_CW Lock, which is described in detail in Embodiment 7 below. Let me repeat.
  • a second obtaining unit 903 configured to obtain a first offset skew according to a first data amount and a boundary of the first data unit, where the first data amount is received by the data processing device within a preset time Data to the first data amount includes a boundary of the first data unit.
  • the first data amount may be understood as a part of continuous data of the first data stream; the boundary of the first data quantity may be a front boundary of the first data quantity, or the first data The back boundary of the quantity.
  • the front boundary of the first amount of data can be understood as a boundary in which the position of the first data amount is relatively high in the transmission direction.
  • the transmission direction is a transmission direction of the first data stream.
  • the back boundary of the first amount of data may be understood as a boundary in which the position of the first data amount is relatively rearward in the transmission direction.
  • the preset time may include one or more clock cycles, and the clock cycle may be understood as a period of an operating clock of the data processing device.
  • the length of the first data amount is a positive integer multiple of the length of the first data unit.
  • the boundary of the first data amount may be a front boundary of the first data amount or a back boundary of the first data amount.
  • the front boundary of the first amount of data may be understood as a boundary in which the position of the first data amount is relatively high in the transmission direction.
  • the back boundary of the quantity can be understood as the boundary between the two boundaries included in the first data amount and the position in the transmission direction.
  • the second obtaining unit 903 obtains the first skew according to the first data amount and the boundary of the first data unit, and includes: the second obtaining unit 903 according to the front boundary and the first data amount
  • the first boundary of the first data unit of the first data stream is obtained, and the first skew is obtained.
  • the first skew may have a length between c and a as shown in FIG. 3, that is, a number of bits between c and a shown in FIG. or,
  • the second obtaining unit 903 obtains the first skew according to the first data amount and the boundary of the first data unit, and includes: the second obtaining unit 903 according to the back boundary of the first data amount and the first The first skew of the first data unit of the data stream is obtained.
  • the first skew may have a length between b and d as shown in FIG. 3, that is, a number of bits between b and d shown in FIG. or,
  • the second obtaining unit 903 obtains the first skew according to the first data amount and the boundary of the first data unit, and includes: the second obtaining unit 903 according to the front boundary of the first data amount and the first The first skew of the first data unit of the data stream is obtained.
  • the first skew may have a length between c and b as shown in FIG. 3, that is, a number of bits between c and b shown in FIG. or,
  • the second obtaining unit 903 obtains the first skew according to the first data amount and the boundary of the first data unit, and includes: the second obtaining unit 903 according to the back boundary of the first data amount and the first
  • the first edge of the first data unit of the data stream obtains the first skew.
  • the first skew may have a length between a and d as shown in FIG. 3, that is, a number of bits between a and d shown in FIG.
  • the first adjusting unit 904 is configured to adjust the first data stream according to the first skew, such that a boundary between the boundary of the first data unit and the boundary of the first data amount is different from the first data.
  • the length of the unit is configured to adjust the first data stream according to the first skew, such that a boundary between the boundary of the first data unit and the boundary of the first data amount is different from the first data.
  • the boundary of the first data unit of the first data stream processed by the first adjusting unit 904 may be obtained by the second obtaining unit 903 to obtain the first of the first data stream adopted by the first skew
  • the boundaries of the data units are the same.
  • the first amount of data processed by the first adjusting unit 904 The boundary may be the same as the boundary of the first data amount adopted by the second obtaining unit 903 to obtain the first skew.
  • the first adjustment The unit 904 adjusts the first data stream by using the first skew, such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount are different by an integer number of the first The length of the first data unit of the data stream.
  • the boundary of the first data unit of the first data stream processed by the first adjusting unit 904 may be obtained by the second obtaining unit 903 by the first data stream used by the first skew
  • the boundaries of the first data unit are different.
  • the boundary of the first data amount processed by the first adjusting unit 904 may be obtained by the second obtaining unit 903 with the first data amount adopted by the first skew and the first data stream.
  • the boundaries of a data unit are different.
  • the first adjusting unit 904 Adjusting, by the first skew, the first data stream such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount are different by an integer number of the first data stream The length of the first data unit.
  • the first adjusting unit 904 passes the The first skew adjusts the first data stream such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount differ by an integer number of the first data stream The length of a data unit.
  • the first adjusting unit 904 passes the The first skew adjusts the first data stream such that a front boundary of the first data unit of the first data stream and a front boundary of the first data amount differ by an integer number of the first data stream The length of a data unit.
  • the first adjusting unit 904 passes the The first skew adjusts the first data stream, such that a back boundary of the first data unit of the first data stream and a back boundary of the first data amount are different from each other by an integer number of the first data stream The length of the first data unit.
  • the possible implementations are not illustrated here one by one.
  • the data processing device acquires a first data amount including a boundary of the first data unit within a preset time; the data processing device according to the first data amount and a boundary of the first data unit Determining a first skew; the data processing device adjusts the first data stream according to the first skew, such that an interval between the boundary of the first data unit and the boundary of the first data amount is an integer number The length of the first data unit.
  • the data processing device adjusts a skew of a boundary of the first data unit with respect to a boundary of the first data amount with reference to the first data amount, which helps reduce data to be processed, and the data processing
  • the adjusted first data stream obtained by the device can meet the conditions of the subsequent bit width conversion, reduce the operation complexity and cost, facilitate the deployment and implementation of the bit width conversion, and help reduce the occupation of the FIFO resources.
  • Embodiment 7 of the present invention provides a manner in which the first obtaining unit 902 obtains a boundary of a first data unit of the first data stream.
  • the manner in which the first obtaining unit 902 of the seventh embodiment of the present invention obtains the boundary of the first data unit is applicable to the first obtaining unit 902 provided in the sixth embodiment, and is also applicable to the first
  • the obtaining unit 902 acquires the boundary of the first data unit of the other data stream, and details are not described herein again.
  • the front boundary of the AM coincides with the front boundary of the first data unit, or the back boundary of the AM coincides with the back boundary of the first data unit.
  • the first data unit mentioned in Embodiment 7 of the present invention is the first data unit of the first data stream.
  • the first obtaining unit 902 can identify the boundary of the AM carried by the first data unit by means of AM Lock.
  • the first obtaining unit 902 may also identify a boundary of the FEC_CW carried by the first data stream by means of FEC_CW Lock, and determine a boundary of the first data unit according to a boundary of the FEC_CW.
  • one or more data units in the first data stream of the AM may occupy three of the data units, such as data units identified by 41, 43 and 44 in FIG. 4, respectively.
  • the AM can occupy 3.5 of the data units.
  • the boundary of the AM and the boundary of the first data unit of the first data stream may include:
  • the front boundary of the AM coincides with the front boundary of the first data unit of the first data stream.
  • the first data unit of the first data stream is The data unit identified by 41 in FIG. 4, the AM is 42 in FIG. 4, and the first data unit of the first data stream is a data unit carrying a front boundary of the AM.
  • the front boundary of the AM and the front boundary of the first data unit of the first data stream are both a.
  • the back boundary of the AM may coincide with a back boundary of the first data unit of the first data stream, or may not coincide with a back boundary of the first data unit of the first data stream. In the second case, the back boundary of the AM and the back boundary of the first data unit of the first data stream may coincide.
  • the first data unit may be the data unit identified by 44 in FIG. 4, the AM is 42 in FIG. 4, and the first data unit of the first data stream is a data unit carrying the post-AM boundary. .
  • the back boundary of the AM and the back boundary of the first data unit of the first data stream are both c.
  • the front boundary of the AM may coincide with a front boundary of the first data unit of the first data stream, or may not coincide with a front boundary of the first data unit of the first data stream. If the length of the AM is smaller than the length of the first data unit of the first data stream, the front boundary of the AM and the front boundary of the first data unit of the first data stream overlap, or the AM The back boundary coincides with a back boundary of the first data unit of the first data stream.
  • the second obtaining unit 903 when reading the first data volume of the first data stream, may determine that the first data stream carries the identifier by identifying a boundary of the AM carried by the first data stream. The boundary of the first data unit of AM.
  • the manner of the AM Lock may be a locking process for the AM carried by the first data stream.
  • the first obtaining unit 902 can determine the location of the boundary of the AM by means of the AM Lock.
  • the first obtaining unit 902 is pre-configured with an AM pattern of the first data stream.
  • the first obtaining unit 902 can match the first data stream with the AM pattern to identify the AM of the first data stream.
  • the first data stream carries at least two AMs, such as AM1 and AM2, the AM1 is adjacent to the AM2, and the back boundary of the AM1 and the front boundary of the AM2 are in different data volumes. .
  • the first obtaining unit 902 locks the first data stream.
  • the first obtaining unit 902 may use the front boundary of any one of the AM1 and the AM2 as a front boundary of the first data unit of the first data stream. If the first obtaining unit 902 needs to know the back boundary of the first data unit of the first data stream, the first obtaining unit 902 may use any one of the AM1 and the AM2.
  • the back boundary is the back boundary of the first data unit of the first data stream.
  • the first obtaining unit 902 identifies the front boundary of the AM by means of the AM Lock, and the front boundary of the AM may be the front boundary of the first data unit of the first data stream.
  • the first skew may be a length between a front boundary of the first data unit of the first data stream and a front boundary of the first data amount, for example, the first skew may be e to The length between a.
  • the first skew may be a length between a front boundary of the first data unit of the first data stream and a back boundary of the first data volume, for example, the first skew may be as shown in FIG. The length between a and f.
  • the first obtaining unit 902 identifies the back boundary of the AM by means of the foregoing AM Lock, and the back boundary of the AM may be the back boundary of the first data unit of the first data stream.
  • the first skew may be a length between a back boundary of the first data unit of the first data stream and a back boundary of the first data amount, for example, the first skew may be c as shown in FIG. 4 The length between f.
  • the first skew may be a length between a back boundary of the first data unit of the first data stream and a front boundary of the first data amount, for example, the first skew may be as shown in FIG. The length between e and f.
  • the data processing device can quickly and accurately identify the boundary of the AM carried by the first data stream by means of AM Lock.
  • the data processing device may determine a boundary of the first data unit of the first data stream by using a boundary of the AM, where a first data unit of the first data stream carries a boundary of the AM. In this way, the data processing device can obtain the first data unit of the first data stream relative to the first data amount by using a boundary of the first data amount and a boundary of the identified AM.
  • Skew without using AM in other data streams as reference AM, helps save FIFO resources, reduces processing complexity and cost, and helps save system resources.
  • Embodiment 8 of the present invention provides a manner in which the first adjusting unit 904 adjusts the first data stream.
  • the embodiment of the present invention does not limit the specific manner in which the first adjusting unit 904 adjusts the first data stream according to the first skew, and can implement the boundary of the first data unit and the first data in the adjusted first data stream.
  • the boundaries of the quantities may differ by an integer number of lengths of the first data unit.
  • the manner of adjusting the first data stream provided in the eighth embodiment of the present invention is applicable to the first adjusting unit 904 provided in the sixth embodiment, and is also applicable to the foregoing method in combination with the sixth embodiment and the seventh embodiment.
  • An adjustment unit 904 is also applicable to the first adjustment unit 904 to adjust other data streams, and details are not described herein again.
  • the first data amount may be the same as the first data amount in the sixth embodiment or the seventh embodiment, and details are not described herein again.
  • the first data unit of the first data stream may be the same as the first data unit in the sixth embodiment or the seventh embodiment, and details are not described herein again.
  • the first data unit mentioned in Embodiment 8 of the present invention is the first data unit in the first data stream.
  • Embodiment 8 of the present invention provides a manner in which the first adjusting unit 904 adjusts the first data stream according to the first skew.
  • the first manner may include: the first adjusting unit 904 obtains a first length according to a difference between a length of the first skew and an integer length of the first data unit, where the first length is smaller than the a length of the first data unit; the first adjusting unit 904 removes data starting with a boundary of the first data amount and having a length of a first length, and obtaining the adjusted first data stream.
  • the second manner may include: the first adjusting unit 904 removes data starting with a boundary of the first data amount and having a length of a second length, and obtaining an adjusted first data stream, where the second length is The length of the first skew. For example, the first adjusting unit 904 obtains the adjusted first data stream according to the second length. In the adjusted first data stream, a front boundary of the first data amount and a front boundary of the first data unit of the first data stream are coincident.
  • the third manner may include: the first adjusting unit 904 obtains a third length according to a difference between a length of the first skew and a length of the X first data units, where the third length is greater than the a length of the first data unit, the X is greater than or equal to 1 and smaller than the N; the first adjusting unit 904 removes data starting with a boundary of the first data amount and having a length of a third length, and obtaining an adjustment After the first data stream. For example, the first adjusting unit 904 obtains the adjusted first data stream according to the third length. In the adjusted first data stream, at least one of the front boundary of the first data amount and the front boundary of the first data unit of the first data stream The length of the first data unit.
  • the first adjustment unit 904 in the embodiment of the present invention may be adjusted in three manners in the third embodiment, and details are not described herein again.
  • the first adjusting unit 904 adjusts the first data stream according to the first skew, so that the boundary of the first data unit in the first data stream after adjustment and the first data amount are adjusted.
  • the boundaries between the integers of the first data unit of the first data stream can satisfy the multiplexing condition, reduce the operation complexity and cost, and facilitate the deployment and implementation of the bit width conversion.
  • the data processing device 900 in Embodiment 9 of the present invention can process a plurality of data streams in parallel.
  • the data processing device 900 may process the second data stream simultaneously with or after processing the first data stream.
  • the ninth embodiment of the present invention provides a method for the data processing device 900 to process the second data stream.
  • the ninth embodiment of the present invention does not process the first data stream with the data processing device 900.
  • the method is described.
  • the method for processing the first data stream by the data processing device 900 can be referred to any one of the sixth embodiment to the eighth embodiment, and details are not described herein again.
  • FIG. 10 is a structural diagram of a device of a data processing device according to an embodiment of the present invention.
  • the data processing device 900 further includes:
  • a second receiving unit 1001 configured to receive a second data stream, where the second data stream includes a first data unit and a second data unit, where the first data unit of the second data stream and the second data stream
  • the second data unit has the same length.
  • the second data stream and the first data stream may be data streams in a parallel data stream obtained after the same FEC processing, and may be used for bit width conversion.
  • the lengths of the first data unit of the second data stream and the first data unit of the first data stream may be the same.
  • the length of the first data unit of the second data stream may be at least one bit. That is, the first data unit of the second data stream may include one bit or more than one bit.
  • the first data unit of the second data stream may be a symbol, and the symbol may be 10 bits in length.
  • the length of the first data unit of the second data stream may also be one bit. The length of the first data unit of the second data stream is no longer exemplified here.
  • the second data unit has the same length, and may have the same number of bits for the first data unit of the second data stream and the second data unit of the second data stream.
  • the second receiving unit 1001 may be the same as or different from the first receiving unit 901 in the sixth embodiment.
  • the data processing device 900 can simultaneously receive the first data stream and the second data stream by using the first receiving unit 901 and the second receiving unit 1001, and the first data stream And adjusting the second data stream simultaneously.
  • the first data stream and the second data stream may be FEC processed data streams.
  • the third obtaining unit 1002 is configured to obtain a boundary of the first data unit of the second data stream.
  • the manner in which the third obtaining unit 1002 obtains the boundary of the first data unit of the second data stream and the first obtaining unit 902 in the sixth embodiment obtain the boundary of the first data unit of the first data stream The way is similar and will not be repeated here.
  • the third obtaining unit 1002 may be the same as or different from the first obtaining unit 902 in the sixth embodiment.
  • a fourth obtaining unit 1003 configured to obtain a second skew according to the second data amount and a boundary of the first data unit of the second data stream, where the second data amount is that the data processing device is preset The data received in a predetermined time, the second data amount including a boundary of the first data unit of the second data stream.
  • the preset time may be the same as the preset time in the sixth embodiment.
  • the fourth obtaining unit 1003 may obtain the first skew by using the second obtaining unit 903 provided by any one of the sixth embodiment to the eighth embodiment, and the second skew is obtained, and details are not described herein again.
  • the fourth obtaining unit 1003 may be the same as or different from the second obtaining unit 903 in the sixth embodiment.
  • the fourth obtaining unit 1003 obtains a second skew according to the second data amount and the boundary of the first data unit of the second data stream: the fourth obtaining unit 1003 is configured according to the second data amount.
  • the front boundary and the front boundary of the first data unit of the second data stream obtain the second skew.
  • the second skew may have a length between c and a as shown in FIG. 3, that is, a number of bits between c and a shown in FIG. or,
  • the fourth obtaining unit 1003 obtains a second skew according to the second data amount and the boundary of the first data unit of the second data stream: the fourth obtaining unit 1003 is configured according to the second data amount
  • the second boundary is obtained by a back boundary and a back boundary of the first data unit of the second data stream.
  • the second skew may have a length between b and d as shown in FIG. 3, that is, a number of bits between b and d shown in FIG. or,
  • the fourth obtaining unit 1003 obtains a second skew according to the second data amount and the boundary of the first data unit of the second data stream: the fourth obtaining unit 1003 is based on the front boundary of the second data amount The second edge of the first data unit of the second data stream obtains the second skew.
  • the second skew may have a length between c and b as shown in FIG. 3, that is, a number of bits between c and b shown in FIG. or,
  • the fourth obtaining unit 1003 obtains a second skew according to the second data amount and the boundary of the first data unit of the second data stream: the fourth obtaining unit 1003 is based on the back boundary of the second data amount The front edge of the first data unit of the second data stream obtains the second skew.
  • the second skew may have a length between a and d as shown in FIG. 3, that is, a number of bits between a and d shown in FIG.
  • the second data amount and the first data amount may be the same length, which is convenient for the data processing device to process the first data stream and the second data stream in parallel, simplify processing and Save system resources.
  • a second adjusting unit 1004 configured to adjust the second data stream according to the second skew, such that a boundary of the first data unit of the second data stream is different from a boundary of the second data quantity by an integer number of The length of the first data unit of the second data stream.
  • the second adjusting unit 1004 may adjust the second data stream by adjusting the first data amount by using the first adjusting unit 904 provided in any one of the sixth embodiment to the eighth embodiment. I will not repeat them here.
  • the second adjusting unit 1004 may be the same as or different from the first adjusting unit 904 in the sixth embodiment.
  • the data processing device acquires a first data amount including a boundary of the first data unit of the second data stream within a preset time; the data processing device according to the first data amount and the Determining a second skew of a boundary of the first data unit of the second data stream; the data processing device adjusting the second data stream according to the second skew to cause a boundary of the first data unit of the second data stream An integer number of the second difference from the boundary of the first amount of data The length of the first data unit of the data stream.
  • the data processing device adjusts the skew of the boundary of the first data unit of the second data stream with respect to the boundary of the first data amount with reference to the first data amount, thereby helping to reduce data to be processed.
  • the adjusted second data stream obtained by the data processing device can meet the conditions of the subsequent bit width conversion, reduce the operation complexity and cost, facilitate the deployment and implementation of the bit width conversion, and help reduce the occupation of the FIFO resources.
  • the granularity in the adjusted data stream obtained after the data processing may be different for different application scenarios.
  • the granularity can be understood as a basic unit of the data stream.
  • the granularity of the adjusted data stream obtained after the data processing can be a 10-bit length symbol.
  • FIG. 11 is a structural diagram of a device of a data processing device according to an embodiment of the present invention.
  • the data processing device 900 further includes a sending unit 1101:
  • the sending unit 1101 is configured to send the adjusted first data stream and the adjusted second data stream with the first data unit as a granularity.
  • the first data unit may be the first data stream.
  • the sending unit 1101 may send the adjusted first data stream and the adjusted second data stream in a polling manner.
  • the manner of sending the polling is the same as that of the polling in the fourth embodiment, and details are not described herein again.
  • the transmitting unit 1101 may send the adjusted first data stream and the adjusted second data stream to a multiplexer, so that the multiplexer performs Bit width conversion operation.
  • the transmitting unit 1101 may send the adjusted first data stream and the adjusted second data stream to the multiplexer, the multiplexer is configured to use the adjusted first data.
  • the stream and the adjusted second data stream are multiplexed to generate a third data stream.
  • the multiplexer corresponds to the sending unit 1101, that is, the multiplexer can receive the adjusted first data stream and the adjusted second data sent by the sending unit 1101. flow.
  • the granularity of the transmitted data stream sent by the transmitting unit 1101 may be different from the granularity of the multiplexed adjusted data stream of the multiplexer, or may be the same.
  • the sending unit 1101 sends the adjusted first data stream to be the first data unit of the first data stream
  • the sending unit 1101 sends the adjusted second data stream to the second granularity.
  • the first data unit of the data stream, The length of the first data unit of the first data stream and the first data unit of the second data stream may both be 10 bits.
  • the granularity of the multiplexer modulating the first data stream and the adjusted second data stream may be 10 bits, or may be a granularity less than 10 bits, such as 1 bit, or may be a granularity greater than 10 bits, such as 20bit.
  • FIG. 12 is a schematic diagram of a hardware structure of a data processing device according to an embodiment of the present invention.
  • the data processing device 1200 includes a memory 1201 and a receiver 1202, and the memory 1201 and the receiver 1202, respectively.
  • the connected processor 1203 is configured to store a set of program instructions, and the processor 1203 is configured to invoke the program instructions stored by the memory 1201 to perform the following operations:
  • the processor 1203 may be a central processing unit (CPU), and the memory 1201 may be an internal memory of a random access memory (RAM) type, and the receiver 1202 may
  • the physical interface may be an Ethernet interface or an Asynchronous Transfer Mode (ATM) interface.
  • the processor 1203, the receiver 1202, and the memory 1201 may be integrated into one or more independent circuits or hardware, such as an Application Specific Integrated Circuit (ASIC).
  • ASIC Application Specific Integrated Circuit
  • the data processing device 1200 can adopt the method provided in any one of Embodiments 1 to 4.
  • the data processing device 1200 can display the data processing device from a logical perspective
  • the content of the backup library, the data processing device in the sixth embodiment to the ninth embodiment may be a physical display of the content included in the data processing device.
  • the first data stream, the first data unit, the first data amount, the first skew, and the first length "first" mentioned in the embodiment of the present invention are only used for name identification, and do not represent the first in order. .
  • the same rules apply to "second" and "third".

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种数据处理方法和设备,数据处理设备(900)接收第一数据流,所述第一数据流包括第一数据单元,获得所述第一数据单元的边界,根据第一数据量以及所述第一数据单元的边界,获得第一skew,根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。可见,所述数据处理设备(900)根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与第一数据量的边界之间相差整数个所述第一数据单元的长度,这样的调整所需处理的数据较少,即对一条数据流进行调整,调整后的数据流可以满足复用的基本条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施。

Description

一种数据处理方法和设备 技术领域
本发明涉及通信技术领域,尤其是涉及一种数据处理方法和设备。
背景技术
在以太网中,根据需求的不同,存在具有支持不同传输速率或者位宽的装置,所述装置用于接收和/或发送数据。在以太网总速率一定的前提下,所述装置的单个数据接口所支持的传输速率大小与所述装置包括的数据接口的数量成反比。比如总速率为400千兆比特(英文:gigabit,简称:G)的以太网中,设备A包括16个支持25G速率的第一数据接口,设备B包括8个支持50G速率的第二数据接口。所述设备A通过所述第一数据接口接收第一数据流,所述设备A通过所述16个第一数据接口接收到的16条第一数据流的位宽相同。当所述设备A需要向所述设备B发送数据时,将所述接收到的16条第一数据流变换为8条第二数据流。所述设备A向所述设备B发送所述8条第二数据流。所述设备B的每个第二数据接口接收一条所述第二数据流。所述变换可称为数据处理。所述设备A将所述第一数据流变换为所述第二数据流的过程中,所述第二数据流的位宽相比于所述第一数据流的位宽发生了改变。由此,所述数据处理也可以被称为位宽变换。
目前主要通过对数据流包括的数据单元的分发复用来实现位宽变换。以所述设备A将所述16条第一数据流变换到所述8条第二数据流的位宽变换为例,分发复用的位宽变换方式具体包括:所述设备A包括的所述16个第一数据接口可连接16条通道,每条通道用于传输一条所述第一数据流。所述第一数据流的数据单元中可携带对齐标识(Alignment Marker,AM)。以所述16条第一数据流中的一条第一数据流为例,所述一条第一数据流携带的AM与传输所述一条第一数据流的通道对应。所述16条第一数据流中的每条第一数据流均携带一个AM。所述设备A根据每条所述第一数据流携带的AM,将16个所述AM对齐,即进行对齐标志锁定(Alignment  Marker Lock,AM Lock)的消除偏移(deskew)操作,使得所述设备A在对所述16条第一数据流进行位宽变换前,能够在同一时刻读取到所述16个AM,由此消除所述16条第一数据流在传输过程中形成的偏移(skew)。所述设备A可将对齐后的所述16条第一数据流进行复用,生成所述8条第二数据流。现有的分发复用的位宽变换方式中,所述设备A在进行位宽变换前,需要获得所述16条第一数据流中每条所述第一数据流携带的AM的相对位置。所述设备A根据获得的所述相对位置,对所述16条第一数据流进行一次AM Lock的deskew操作,以消除每条所述第一数据流的skew。现有的用于消除数据流的skew的方法增加了操作复杂性和成本,使得分发复用的位宽变换方式难以部署和实施。
发明内容
本发明实施例解决的技术问题在于提供一种数据处理方法和设备,有助于实现灵活的数据处理,降低处理数据的难度。
第一方面,本发明实施例提供了一种数据处理方法,所述方法包括:
数据处理设备接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;
所述数据处理设备获得所述第一数据单元的边界;
所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;
所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
在第一方面的第一种可能的实现方式中,所述第一数据单元携带AM,所述数据处理设备获得所述第一数据单元的边界包括:
所述数据处理设备通过AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界,所述AM的边界为所述第一数据单元的边界。
结合第一方面或者第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据处理设备根据所述第一skew调整所述第一数据流包括:
所述数据处理设备根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;
所述数据处理设备移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
结合第一方面或者第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述数据处理设备根据所述第一skew调整所述第一数据流包括:
所述数据处理设备移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。
结合第一方面或者第一方面的第一种或第二种或第三种可能的实现方式,在第四种可能的实现方式中,
所述第一数据量的长度为所述第一数据单元长度的正整数倍。
结合第一方面或者第一方面的第一种或第二种或第三种或第四种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
所述数据处理设备接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同;
所述数据处理设备获得所述第二数据流的第一数据单元的边界;
所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在所述预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界;
所述数据处理设备根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述方法还包括:
所述数据处理设备以所述第一数据流的第一数据单元的长度为粒度,发送调整后的第一数据流和调整后的第二数据流,所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同。
结合第一方面的第五种可能的实现方式,在第七种可能的实现方式中,所述方法还包括:
所述数据处理设备向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。
第二方面,本发明实施例提供了一种数据处理设备,所述设备包括:
第一接收单元,用于接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;
第一获得单元,用于获得所述第一数据单元的边界;
第二获得单元,用于根据第一数据量以及所述第一数据单元的边界,获得第一skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;
第一调整单元,用于根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
在第二方面的第一种可能的实现方式中,所述第一数据单元携带AM,
所述第一获得单元具体用于通过AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界,所述AM的边界为所述第一数据单元的边界。
结合第二方面或者第二方面的第一种可能的实现方式,在第二种可能的实现方式中,
所述第一调整单元具体用于根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;
所述第一调整单元具体用于移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
结合第二方面或者第二方面的第一种可能的实现方式,在第三种可能的实现方式中,
所述第一调整单元具体用于移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。
结合第二方面或者第二方面的第一种或第二种或第三种可能的实现方式,在第四种可能的实现方式中,
所述第一数据量的长度为所述第一数据单元的长度的正整数倍。
结合第二方面或者第二方面的第一种或第二种或第三种或第四种可能的实现方式,在第五种可能的实现方式中,所述设备还包括:
第二接收单元,用于接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同;
第三获得单元,用于获得所述第二数据流的第一数据单元的边界;
第四获得单元,用于根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在所述预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界;
第二调整单元,用于根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述设备还包括:
发送单元,用于以所述第一数据流的第一数据单元的长度为粒度,发送调整后的第一数据流和调整后的第二数据流,所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同。
结合第二方面的第五种可能的实现方式,在第七种可能的实现方式中,所述设备还包括:
发送单元,用于向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。
结合第一方面或者第一方面的第一种或第二种或第三种或第四种或第五种或第六种或第七种可能的实现方式,在第八种可能的实现方式中,所述数据处理设备为路由设备、交换机或电芯片。
由上述技术方案可以看出,数据处理设备在预设时间内获取包括第一数据单元的第一数据量,并根据所述第一数据量的边界以及所述第一数据单元的边界确定出第一skew。所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与第一数据量的边界之间相差整数个所述第一数据单元的长度,这样的调整所需处理的数据较少,即对一条数据流进行调整,调整后的数据流可以满足复用的基本条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施。
附图说明
图1为一种对数据流进行deskew操作的示意图;
图2为本发明实施例提供的一种数据处理方法的方法流程图;
图3为本发明实施例提供的一种第一数据流的结构示意图;
图4为本发明实施例提供的一种携带AM的第一数据流的结构示意图;
图5a为本发明实施例提供的一种第一数据流的示意图;
图5b为本发明实施例提供的一种调整后的第一数据流的示意图;
图5c为本发明实施例提供的一种调整后的第一数据流的示意图;
图6为本发明实施例提供的一种数据处理方法的方法流程图;
图7a为本发明实施例提供的一种并行处理数据流的示意图;
图7b为本发明实施例提供的一种调整后的并行数据流的示意图;
图8为本发明实施例提供的一种位宽变换场景的示意图;
图9为本发明实施例提供的一种数据处理设备的设备结构图;
图10为本发明实施例提供的一种数据处理设备的设备结构图;
图11为本发明实施例提供的一种数据处理设备的设备结构图;
图12为本发明实施例提供的一种数据处理设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
图1为一种对数据流进行deskew操作的示意图。图1所示的场景是对3条数据流进行deskew操作的场景。图1所示的场景中,数据流A和数据流B是deskew操作前的2条数据流。数据流A携带有AM1,数据流B携带有AM2。数据流A′是所述数据流A经过deskew操作后获得的数据流。数据流B′是所述数据流B经过deskew操作后获得的数据流。所述AM1的前边界与携带所述AM1的数据单元的边界相同。所述AM2的前边界与携带所述AM2的数据单元的边界相同。任意一个AM的前边界为所述任意一个AM在传输方向上位置较为靠前的边界。所述传输方向为数据流的传输方向,如图1所示,可以是所述数据流A的传输方向,或者是所述数据流B的传输方向。所述数据流A的传输方向和所述数据流B的传输方向相同。如图1所示,所述AM1的前边界可表示为B1,所述AM1的后边界可表示为B2。所述AM2的前边界可表示为B3,所述AM2的后边界可表示为B4。
某一设备可接收所述数据流A和所述数据流B,并能够对所述数据流A和所述数据流B进行deskew操作。以所述AM1作为参考AM为例,所述设备可获得所述B3相对于所述B1的相对位置。所述设备根据所述B3相对于所述B1的相对位置,将所述B3调整为与所述B1对齐,获得所述数据流B′。所述数据流A′可以与所述数据流A相同,即所述数据流A的AM1为所述参考AM,所述设备可不对所述数据流A进行deskew操作。所述数据流A′携带的AM1的前边界与所述数据流B′携带的AM2的前边界对齐。
由于所述B1与携带所述AM1的数据单元的边界重合,所述B3与携带所述AM2的数据单元的边界重合,所以,所述数据流A′包括的数据单元的边界和所述数据流B′包括的数据单元的边界处于同一个位置,即所述数据流A′包括的数据单元的边界和所述数据流B′包括的数据单元的边界之前不存在skew。
图1所示的场景中,所述设备在对所述数据流A和所述数据流B进行deskew操作时,需要同时存储所述数据流A和所述数据流B。所述设备还需要分析所述数据流A和所述数据流B中每条数据流携带的AM的相对位置,增加了操作复杂性和成本,浪费较多的先入先出队列(First Input First Output,FIFO)资源。
针对上述问题,提出了有助于简化deskew操作的复杂性和节省FIFO资源的方法。该解决方法中,数据处理设备接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;所述数据处理设备获得所述第一数据单元的边界;所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一偏移skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。这样,所述数据处理设备无需以某一数据流为参考对另一数据流进行deskew操作,所述数据处理单元可对单一的数据流进行调整,有助于减少所需处理的数据量,降低了操作复杂性和成本,有助于节省FIFO资源,有利于位宽变换的部署和实施。
实施例一
图2为本发明实施例提供的一种数据处理方法的方法流程图,所述方法包括:
S201:数据处理设备接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同。
举例说明,所述第一数据流可以为经前向纠错(Forward Error Correction, FEC)处理后得到的并行数据流中的任意一条数据流。比如:FEC模块可以接收或生成码字(codeword,CW)。所述FEC模块将所述码字转换为多个数据单元后,将所述多个数据单元以并行方式输出至所述数据处理设备,所述并行数据流中的任意一条数据流可以为所述第一数据流。如果一个码字的大小为5280比特(bit),一个数据单元的大小为10 bit,则一个码字可包括528个数据单元,所述FEC模块可以通过两条并行的数据流,输出所述528个数据单元至所述数据处理设备。
所述第一数据流可以是用于进行位宽变换的至少两条数据流中的一条。所述第一数据流可以是经FEC处理后获得的一条数据流。所述第一数据流可包括多个数据单元,比如所述第一数据单元和所述第二数据单元。所述第一数据流的第一数据单元的长度可以是至少一个比特(bit),即所述第一数据流的第一数据单元可包括一个bit或一个以上bit。例如:所述第一数据流的第一数据单元可以是一个符号(symbol),所述symbol的长度可以为10bit。所述第一数据流的第一数据单元的长度也可以是一个bit。在此不再对所述第一数据流的第一数据单元的长度进行举例说明。所述第一数据流的第一数据单元的长度和所述第一数据流的第二数据单元的长度相同,可以为所述第一数据流的第一数据单元和所述第一数据流的第二数据单元具有相同的bit数,比如所述第一数据流的第一数据单元为一个symbol,所述第一数据流的第二数据单元也为一个symbol。
S202:所述数据处理设备获得所述第一数据单元的边界。
举例说明,所述第一数据单元的边界可以为所述第一数据流的第一数据单元的前边界,或者为所述第一数据流的第一数据单元的后边界。所述第一数据单元的前边界可以理解为所述第一数据单元包括的两条边界中,在传输方向上位置较为靠前的边界。所述传输方向为所述第一数据流的传输方向。所述第一数据单元的后边界可以理解为所述第一数据单元包括的两条边界中,在所述传输方向上位置较为靠后的边界。
图3为本发明实施例提供的一种第一数据流的结构示意图,设定所述第一数据流的传输方向如图3所示箭头方向,即所示第一数据流的传输方向可以为从右向左。a和b可分别用于标识所述第一数据流的第一数据单元的边界。若 所述第一数据流的传输方向如图3所示箭头方向,所述a可用于标识所述第一数据流的第一数据单元的前边界,所述b可用于标识所述第一数据流的第一数据单元的后边界。以图3所示的传输方向为例,所述a可以先于所述b被所述数据处理设备接收到,或者在所述传输方向上,所述a相对于所述b的位置较为靠前。如果所述第一数据流的传输方向与图3所示的传输方向相反,则所述a可用于标识所述第一数据流的第一数据单元的后边界,所述b可用于标识所述第一数据流的第一数据单元的前边界。
举例说明,所述数据处理设备可通过AM Lock的方式或前向纠错码字锁定(FEC_CW Lock)的方式,获得所述第一数据流的第一数据单元的边界,在下述实施例二中进行详细说明,在此不再赘述。本发明实施例不限定获得所述第一数据流的第一数据单元边界的方法。
S203:所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界。
举例说明,所述第一数据量可以为所述第一数据流的一部分连续数据;所述第一数据量的边界可以为所述第一数据量的前边界,或者为所述第一数据量的后边界。所述第一数据量的前边界可以为所述第一数据量包括的两条边界中,在传输方向上位置较为靠前的边界。所述传输方向为所述第一数据流的传输方向。所述第一数据量的后边界可以理解为所述第一数据量包括的两条边界中,在所述传输方向上位置较为靠后的边界。
可选的,所述预先设定的时间可以包括一个或多个时钟周期,所述时钟周期可以理解为所述数据处理设备的工作时钟的周期。
可选的,所述第一数据量的长度为所述第一数据单元的长度的正整数倍。本发明实施例中的所述第一数据量的长度也可以为所述第一数据量的大小,即所述第一数据量的长度可以为所述第一数据量包括的bit数。同理,本发明实施例中的所述第一数据单元的长度也可以为所述第一数据量的大小,即所述第一数据单元的长度为所述第一数据单元包括的bit数。
图3中,设定所述第一数据流的传输方向如图3所示箭头方向,即所示第 一数据流的传输方向可以为从右向左。c和d可分别用于标识所述第一数据量的边界。以图3所示的传输方向为例,所述c可用于标识所述第一数据量的前边界,所述d可用于标识所述第一数据量的后边界。在所述第一数据量包括的两条边界中,比如所述c和所述d中,所述c可先于所述d被所述数据处理设备接收,或者,在传输方向上,所述c的位置较所述d的位置靠前。如果所述第一数据流的传输方向与图3所示的传输方向相反,则所述c为所述第一数据量的后边界,所述d为所述第一数据量的前边界。
举例说明,所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述数据处理设备根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的c至a之间的长度,即图3所示的c和a之间的bit数量。或者,
所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述数据处理设备根据所述第一数据量的后边界和所述第一数据流的第一数据单元的后边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的b至d之间的长度,即图3所示的b和d之间的bit数量。或者,
所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述数据处理设备根据所述第一数据量的前边界和所述第一数据流的第一数据单元的后边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的c至b之间的长度,即图3所示的c和b之间的bit数量。或者,
所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述数据处理设备根据所述第一数据量的后边界和所述第一数据流的第一数据单元的前边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的a至d之间的长度,即图3所示的a和d之间的bit数量。
S204:所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一 数据单元的长度。
举例说明,S204中的所述第一数据流的第一数据单元的边界可以与S203中获得第一skew所采用的所述第一数据流的第一数据单元的边界相同。S204中的所述第一数据量的边界可以与S203中获得所述第一skew所采用的所述第一数据量的边界相同。比如:若S203中,所述数据处理设备根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则在S204中,所述数据处理设备通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。
举例说明,S204中的所述第一数据流的第一数据单元的边界可以与S203中获得所述第一skew所采用的所述第一数据流的第一数据单元的边界不同。S204中的所述第一数据量的边界可以与S203中获得所述第一skew所采用的所述第一数据量以及所述第一数据流的第一数据单元的边界不同。比如:若S203中,所述数据处理设备根据所述第一数据量的后边界和所述第一数据流的第一数据单元的后边界获得所述第一skew,则在S204中,所述数据处理设备通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若S203中,所述数据处理设备根据所述第一数据量的前边界和所述第一数据流的第一数据单元的后边界获得所述第一skew,则在S204中,所述数据处理设备通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若S203中,所述数据处理设备根据所述第一数据量的后边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则在S204中,所述数据处理设备通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若S203中,所述数据处理设备根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则在S204中,所述数据处理设备通过所述第一skew调整所述第一数据流,可使得所述第一数据流的第一数 据单元的后边界与所述第一数据量的后边界之间相差整数个所述第一数据流的第一数据单元的长度。在此不再对可能的实现方式进行逐一举例说明。
本发明的实施例中,若所述第一skew的长度为所述第一数据单元的长度的K倍,所述K为大于或等于1的整数,则所述数据处理设备可不对所述第一数据流进行调整。
本发明的实施例中,数据处理设备在预设时间内获取包括第一数据单元的边界的第一数据量;所述数据处理设备根据所述第一数据量以及所述第一数据单元的边界,确定出第一skew;所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。所述数据处理设备以所述第一数据量为参考,调整所述第一数据单元的边界相对于所述第一数据量的边界的skew,有助于降低需处理的数据,所述数据处理设备获得的调整后的第一数据流可以满足后续位宽变换的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施,有助于减少占用FIFO资源。
实施例二
本发明实施例二提供了一种获得所述第一数据流的第一数据单元的边界的方式。本发明实施例二提供的获得所述第一数据单元的边界的方式可应用于实施例一提供的方法中,也可应用于获取其它数据流的第一数据单元的边界,在此不再赘述。本发明实施例二中的第一数据单元可携带AM,所述AM的前边界可与所述第一数据单元的前边界重合,或者所述AM的后边界可与所述第一数据单元的后边界重合。所述数据处理设备可通过在确定所述AM边界的同时或之后,获知所述第一数据流的第一数据单元的边界。本发明实施例二中提及的第一数据单元为所述第一数据流的第一数据单元。
举例说明,所述数据处理设备可以通过AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界。所述数据处理设备也可以通过FEC_CW Lock的方式,识别出所述第一数据流携带的FEC_CW的边界,并根据所述FEC_CW的边界确定出所述第一数据单元的边界。
举例说明,所述第一数据流的AM可用于标识所述第一数据流。所述数据 处理设备可利用所述AM,识别所述第一数据流。若所述AM的前边界与所述第一数据单元的前边界重合,则所述数据处理设备可识别出所述AM的前边界,并根据所述AM的前边界对所述第一数据流进行对齐操作。若所述AM的后边界与所述第一数据单元的后边界重合,则所述数据处理设备可识别出所述AM的后边界,根据所述AM的后边界对所述第一数据流进行对齐操作。
图4为本发明实施例提供的一种携带AM的第一数据流的结构示意图。如图4所示,所述第一数据流的传输方向为图4中的箭头方向,即所示第一数据流的传输方向为从右向左。图4中的42可用于标识所述AM。图4中的41、43和44分别用于标识所述第一数据流的一个数据单元。41所标识的数据单元的长度与43所标识的数据单元的长度相同,43所标识的数据单元的长度和44所标识的数据单元的长度相同。图4中的41所标识的数据单元可携带所述AM的部分数据。图4中的43所标识的数据单元可携带所述AM的部分数据。图4中的44所标识的数据单元可携带所述AM的部分数据。a和b可分别用于标识41所标识的数据单元的边界。如图4所示的所述第一数据流的传输方向,所述a为41所标识的数据单元的前边界,所述b为41所标识的数据单元的后边界。所述a和c可分别用于标识所述AM的边界。如图4所示所述第一数据流的传输方向,所述a可用于标识所述AM的前边界,所述c可用于标识所述AM的后边界。e和f可分别用于标识所述第一数据量的边界。如图4所示的所述第一数据流的传输方向,所述e为所述第一数据量的前边界,所述f为所述第一数据量的后边界。
举例说明,所述AM可占用所述第一数据流中的一个或多个数据单元,比如所述AM可占用3个所述数据单元,如图4中的41、43和44分别标识的数据单元,或者所述AM可占用3.5个所述数据单元。比如:若所述AM的长度大于或等于所述第一数据流的第一数据单元的长度,则所述AM的边界和所述第一数据流的第一数据单元的边界重合可包括:第一种情况,所述AM的前边界和所述第一数据流的第一数据单元的前边界重合。所述第一数据流的第一数据单元为图4中41所标识的数据单元,所述AM为图4中的42,所述第一数据流的第一数据单元为携带了所述AM的前边界的数据单元。所述AM的前边界和所述第一数据流的第一数据单元的前边界均为a。所述AM的后边界可 以和所述第一数据流的第一数据单元的后边界重合,也可以和所述第一数据流的第一数据单元的后边界不重合。第二种情况,所述AM的后边界和所述第一数据流的第一数据单元的后边界可重合。所述第一数据单元可以为图4中的44所标识的数据单元,所述AM为图4中的42,所述第一数据流的第一数据单元为携带所述AM后边界的数据单元。所述AM的后边界和所述第一数据流的第一数据单元的后边界均为c。所述AM的前边界可以和所述第一数据流的第一数据单元的前边界重合,也可以和所述第一数据流的第一数据单元的前边界不重合。若所述AM的长度小于所述第一数据流的第一数据单元的长度,则所述AM的前边界和所述第一数据流的第一数据单元的前边界重合,或者所述AM的后边界和所述第一数据流的第一数据单元的后边界重合。所述数据处理设备在读取所述第一数据流的所述第一数据量时,可以通过识别所述第一数据流携带的AM的边界,确定所述第一数据流中携带所述AM的第一数据单元的边界。
所述AM Lock的方式可以是对所述第一数据流携带的AM的锁定过程。所述数据处理设备可通过所述AM Lock的方式,确定出所述AM的边界的位置。举例说明,所述数据处理设备预先配置有所述第一数据流的AM图案。所述数据处理设备可将所述第一数据流与所述AM图案进行匹配,来识别所述第一数据流的所述AM。比如:所述第一数据流上携带至少两个AM,比如AM1和AM2,所述AM1与所述AM2相邻,且所述AM1的后边界和所述AM2的前边界位于不同的数据量中。若所述数据处理设备在采用所述AM Lock方式,确定所述AM1和所述AM2分别与所述AM图案匹配,则所述数据处理设备将所述第一数据流锁定。如果所述数据处理设备需要获知所述第一数据流的第一数据单元的前边界,则所述数据处理设备可以将所述AM1和所述AM2中任意一个AM的前边界作为所述第一数据流的第一数据单元的前边界。如果所述数据处理设备需要获知所述第一数据流的第一数据单元的后边界,则所述数据处理设备可以将所述AM1和所述AM2中任意一个AM的后边界作为所述第一数据流的第一数据单元的后边界。
举例说明,若所述AM的前边界和所述第一数据流的第一数据单元的前边界重合,即所述第一数据流的第一数据单元携带了所述AM的前边界,则所述 数据处理设备通过所述AM Lock的方式,识别出所述AM的前边界,所述AM的前边界所述第一数据流的第一数据单元的前边界。第一skew可以为所述第一数据流的第一数据单元的前边界和所述第一数据量的前边界之间的长度,比如所述第一skew可以为如图4所示的e至a之间的长度。或者,第一skew可以为所述第一数据流的第一数据单元的前边界和所述第一数据量的后边界之间的长度,比如所述第一skew可以为如图4所示的a至f之间的长度。
举例说明,若所述AM的后边界和所述第一数据流的第一数据单元的后边界重合,即所述第一数据流的第一数据单元携带了所述AM的后边界,则所述数据处理设备通过上述AM Lock的方式,识别出所述AM的后边界,所述AM的后边界可以为所述第一数据流的第一数据单元的后边界。第一skew为所述第一数据流的第一数据单元的后边界和所述第一数据量的后边界之间的长度,比如所述第一skew可以为如图4所示的c至f之间的长度。或者,第一skew可以为所述第一数据流的第一数据单元的后边界和所述第一数据量的前边界之间的长度,比如所述第一skew可以为如图4所示的e至c之间的长度。
本发明的实施例中,数据处理设备可通过AM Lock的方式,快速准确的识别出所述第一数据流携带的AM的边界。所述数据处理设备可利用所述AM的边界,确定所述第一数据流的第一数据单元的边界,所述第一数据流的第一数据单元携带了所述AM的边界。这样,所述数据处理设备可利用所述第一数据量的边界以及识别出的所述AM的边界,获得所述第一数据流的所述第一数据单元相对于所述第一数据量的skew,无需以其它数据流中的AM作为参考AM,有助于节省FIFO资源,降低处理的复杂性和成本,有助于节约系统资源。
实施例三
本发明实施例三提供了一种调整所述第一数据流的方式。本发明实施例并不限定根据第一skew调整所述第一数据流的方式,能够实现第一数据量的前边界与调整后的第一数据流中的第一数据单元的前边界之间相差整数个所述第一数据单元的长度即可。本发明实施例三提供的调整所述第一数据流的方式,可应用于实施例一提供的方法中,也可应用于实施例一与实施例二结合的方法,还可应用于调整其它数据流,在此不再赘述。实施例三中的所述第一数 据量可以与实施例一或实施例二中的第一数据量相同,在此不再赘述。实施例三中的所述第一数据流的第一数据单元可以与实施例一或实施例二中的第一数据单元相同,在此不再赘述。
本发明实施例三提供了至少三种所述数据处理设备根据所述第一skew调整所述第一数据流的方式。
第一种方式可以包括:所述数据处理设备根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;所述数据处理设备移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
举例说明,所述调整后的第一数据流中,所述第一数据单元的边界与所述第一数据量的边界之间的数据的长度为整数个所述第一数据单元的长度,比如:所述第一数据量的长度是所述第一数据单元的长度的M倍,所述M为大于或等于1的整数。若所述M为1,则所述第一skew的长度为所述第一长度。
举例说明,若所述第一skew是根据所述第一数据单元的前边界和所述第一数据量的前边界获得的skew,所述第一skew的长度大于所述第一数据单元的长度,则所述第一长度为所述第一skew的长度和N个所述第一数据单元的长度的差值,所述N为所述第一skew所包含的所述第一数据单元的个数最大值。比如:若所述第一skew的长度为2.4个所述第一数据单元的长度,N为2,则所述第一长度为0.4个所述第一数据单元的长度。
举例说明,若所述第一skew是根据所述第一数据单元的后边界和所述第一数据量的后边界获得的skew,所述第一skew的长度大于所述第一数据单元的长度,所述AM的长度是所述第一数据单元的长度的整数倍,则所述第一长度为所述第一数据单元的长度与第一差值的差,所述第一差值为所述第一skew的长度和L个所述第一数据单元的长度的差值,所述L个所述第一数据单元的长度大于或等于所述第一skew的长度。比如:若所述第一skew的长度为2.4个所述第一数据单元的长度,L为3,则所述第一差值为0.6个所述第一数据单元的长度,所述第一长度为0.4个所述第一数据单元的长度。若所述第一skew是根据所述第一数据单元的后边界和所述第一数据量的后边界获得的skew,所述第一skew的长度小于所述第一数据单元的长度,所述AM的长度 是所述第一数据单元的长度的整数倍,则所述第一长度为所述第一数据单元的长度与第一差值的差,所述第一差值为所述第一skew的长度。比如:若所述第一skew的长度为0.4个所述第一数据单元的长度,则所述第一差值为0.6个所述第一数据单元的长度,所述第一长度为0.4个所述第一数据单元的长度。
举例说明,若所述第一skew是根据所述第一数据单元的后边界和所述第一数据量的后边界获得的skew,所述AM的长度是所述第一数据单元的长度的小数倍,所述数据处理设备可根据所述第一数据单元的后边界、所述AM的长度以及所述第一数据量的长度,获得所述AM的前边界相对于所述第一数据量的前边界间的数据的长度,即获得所述第一长度。在此不再对获得所述第一长度的方法进行逐一举例说明。
第二种方式可以包括:所述数据处理设备移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。举例说明,所述数据处理设备根据所述第二长度,获得所述调整后的第一数据流。所述调整后的第一数据流中,所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界重合。
第三种方式可以包括:所述数据处理设备根据所述第一skew的长度和X个所述第一数据单元的长度的差值,获得第三长度,所述第三长度大于所述第一数据单元的长度,所述X大于或等于1且小于所述N;所述数据处理设备移除以所述第一数据量的边界开始、长度为第三长度的数据,获得调整后的第一数据流。举例说明,所述数据处理设备根据所述第三长度,获得所述调整后的第一数据流。所述调整后的第一数据流中,所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界之间包括至少一个所述第一数据单元的长度。举例说明,若所述第一skew是根据所述第一数据单元的前边界和所述第一数据量的前边界获得的skew,所述第一skew的长度为2.4个所述第一数据单元的长度,X为1,则所述第三长度为1.4个所述第一数据单元的长度。
本发明实施例中的第一数据流可包括至少两个数据单元,比如图2对应的实施例中提及的所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元的长度和所述第二数据单元的长度相同。
图5a为本发明实施例提供的一种第一数据流的示意图。图5a中所示的所 述第一数据流的传输方向为从右至左,即图5a中箭头所示的方向。若所述第一数据流的第一数据单元的长度为10bit,所述第一数据量的长度为10个所述第一数据流的第一数据单元的长度,则所述第一数据量的长度为100bit。如图5a所示,所述第一skew是根据所述第一数据量的前边界以及所述第一数据流的第一数据单元的前边界确定的skew,所述第一skew的长度为43bit。
若所述数据处理设备采用所述第一种方式获得所述第一长度,则所述第一长度可以为3bit。若所述第一长度为3bit,则所述第一长度可以是根据所述第一skew的长度减去4个所述第一数据单元的长度获得的长度。所述数据处理设备可根据所述第一长度,移除以所述第一数据量的前边界开始、长度为3bit的数据。所述调整后的第一数据流如图5b所示。图5b为本发明实施例提供的一种调整后的第一数据流的示意图。所述调整后的所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间的数据长度表示为D,所述D为所述第一数据流的第一数据单元的长度的4倍。若所述数据处理设备采用所述第二种方式获得所述第二长度,则所述第二长度可以为43bit。所述数据处理单元可根据所述第二长度,移除以所述第一数据量的前边界开始、长度为43bit的数据。若所述数据处理设备采用所述第三种方式获得所述第三长度,则所述第三长度可以为13bit、23bit或33bit。所述第三长度为13bit、23bit或33bit的处理方式与所述第一长度为3bit相同,在此不再赘述。
可选地,所述数据处理设备可采用第一数据流的第一数据单元的前边界和第一数据量的前边界,获得第一skew。如图5a所示,所述第一skew为43bit。所述数据处理设备可采用所述第一种方式获得调整后的第一数据流,即所述数据处理设备可移除以所述第一数据量的后边界开始、长度为第一长度的数据。这种情况下,所述第一长度可以为-7bit、-17bit等。若所述第一长度为-7bit,则所述第一长度可以是根据所述第一skew的长度减去5个所述第一数据单元的长度获得的长度。所述数据处理设备可以移除以所述第一数据量的后边界开始、长度为7bit的数据,获得调整后的第一数据流。所述调整后的第一数据流中,所述第一数据流的第一数据单元的后边界与所述第一数据量的后边界之间相差4个所述第一数据流的第一数据单元的长度。所述第一长度为-17bit等的处理方式与所述第一长度为-7bit相同,在此不再赘述。
若所述数据处理设备采用所述第二种方式,则所述第二长度为所述第一skew的长度,即所述第二长度为43bit。若所述第一skew是根据第一数据量的前边界以及所述第一数据流的第一数据单元的前边界所确定,则所述数据处理设备采用所述第二种方式,移除以所述第一数据量的前边界开始、长度为所述第二长度的数据。所述调整后的第一数据流可以参阅图5c,图5c为本发明实施例提供的一种调整后的第一数据流的示意图。所述调整后的所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界重合。
本发明的实施例中,所述数据处理设备根据第一skew调整所述第一数据流,使得调整后所述第一数据流中的第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据流的第一数据单元的长度,可以满足复用的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施。
实施例四
本发明实施例四中的数据处理设备可以并行处理多条数据流。本发明实施例四中,所述数据处理设备可在处理第一数据流的同时或之后,处理第二数据流。如图6所示,本发明实施例四提供了所述数据处理设备处理所述第二数据流的方法,本发明实施例四未对所述数据处理设备处理所述第一数据流的方法进行说明,所述数据处理设备处理所述第一数据流的方法可参见实施例一至实施例三中的任意一个实施例,在此不再赘述。
图6为本发明实施例提供的一种数据处理方法的方法流程图,包括:
S601:所述数据处理设备接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同。
举例说明,所述第二数据流和所述第一数据流可以为经同一次FEC处理后得到的并行数据流中的数据流,可以用于位宽变换。所述第二数据流的第一数据单元和所述第一数据流的第一数据单元的长度可以相同。所述第二数据流的第一数据单元的长度可以是至少一个bit。即所述第二数据流的第一数据单元可包括一个bit或一个以上bit。例如:所述第二数据流的第一数据单元可以 是一个symbol,所述symbol的长度可以为10bit。所述第二数据流的第一数据单元的长度也可以是一个bit。在此不再对所述第二数据流的第一数据单元的长度进行举例说明。所述第二数据流的第一数据单元长度和所述第二数据流的第二数据单元的长度相同,可以为所述第二数据流的第一数据单元和所述第二数据流的第二数据单元具有相同的bit数。
举例说明,所述数据处理设备可以同时接收所述第一数据流和所述第二数据流,并对所述第一数据流和所述第二数据流同时进行调整。在具体的实施场景下,所述第一数据流和所述第二数据流可以是FEC处理后的数据流。
S602:所述数据处理设备获得所述第二数据流的第一数据单元的边界。
所述数据处理设备获得所述第二数据流的第一数据单元的边界的方式与S202中获得所述第一数据流的第一数据单元的边界的方式相似,这里不再赘述。
S603:所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界。
举例说明,所述预先设定的时间可以与实施例一中预先设定的时间相同。所述数据处理设备可采用实施例一至实施例三中任一实施例提供的获得第一skew的方法,获得所述第二skew的方式,在此不再赘述。
举例说明,所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述数据处理设备根据所述第二数据量的前边界和所述第二数据流的第一数据单元的前边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的c至a之间的长度,即图3所示的c和a之间的bit数量。或者,
所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述数据处理设备根据所述第二数据量的后边界和所述第二数据流的第一数据单元的后边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的b至d之间的长度,即图3所示的b和d之 间的bit数量。或者,
所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述数据处理设备根据所述第二数据量的前边界和所述第二数据流的第一数据单元的后边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的c至b之间的长度,即图3所示的c和b之间的bit数量。或者,
所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述数据处理设备根据所述第二数据量的后边界和所述第二数据流的第一数据单元的前边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的a至d之间的长度,即图3所示的a和d之间的bit数量。
可选的,所述第二数据量和所述第一数据量的长度可以相同,有助于所述数据处理设备并行处理所述第一数据流和所述第二数据流时,简化处理和节约系统资源。
S604:所述数据处理设备根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
举例说明,所述数据处理设备可采用实施例一至实施例三中任一实施例提供的方法,调整所述第二数据流,在此不再赘述。
图7a为本发明实施例提供的一种并行处理数据流的示意图。在图7a中,所述第一数据量和所述第二数据量的长度可以相同,比如所述第一数据量和所述第二数据量均为100bit。701用于标识所述第一数据流的第一数据单元。702用于标识所述第二数据流的第一数据单元。701所标识的第一数据单元和702所标识的第一数据单元的长度相同,比如均为10bit。所述第一数据流和所述第二数据流的传输方向均为从右向左,如图7a所示箭头方向。所述数据处理设备可采用AM Lock的方式,获得701所标识的第一数据单元的边界和702所标识的第一数据单元的边界。在图7a中,所述数据处理设备根据所述第一数据量的前边界和701所标识的第一数据单元的前边界,获得第一skew,所 述第一skew可表示为图7a中的A。所述数据处理设备根据所述第二数据量的前边界和702所标识的第一数据单元的前边界,获得所述第二skew,所述第二skew可表示为图7a中的B。其中,所述A的长度可以为43bit,所述B的长度可以为71bit。
如图7a所示,若所述数据处理设备采用本发明实施例三中的第一种方式,调整所述第一数据流和所述第二数据流,则所述数据处理设备获得的第一长度可以为3bit,所述第一长度为用于调整所述第一数据流的长度。所述数据处理设备还获得用于调整所述第二数据流的长度,所述用于调整所述第二数据流的长度可以为1bit。所述数据处理设备移除以所述第一数据量的前边界开始、长度为所述第一长度的数据,比如移除3bit的数据,获得调整后的第一数据流。所述数据处理设备移除以所述第二数据量的前边界开始、长度为用于调整所述第二数据流的长度,比如移除1bit的数据,获得调整后的第二数据流。
图7b为本发明实施例提供的一种调整后的并行数据流的示意图。如图7b所示,调整后的第一数据流的第一数据单元的前边界和所述第一数据量的前边界之间的长度是所述第一数据流的第一数据单元的长度的4倍,比如所述第一数据流的第一数据单元的长度为10bit,图7b中的A′表示调整后的第一数据流的第一数据单元的前边界和所述第一数据量的前边界之间的长度,所述A′可以为40bit。如图7b所示,调整后的第二数据流的第一数据单元的前边界和所述第二数据量的前边界之间的长度是所述第二数据流的第一数据单元的长度的7倍,比如所述第二数据流的第一数据单元的长度为10bit,图7b中的B′表示调整后的第二数据流的第一数据单元的前边界和所述第一数据量的前边界之间的长度,所述B′可以为70bit。
本发明的实施例中,数据处理设备在预设时间内获取包括第二数据流的第一数据单元的边界的第一数据量;所述数据处理设备根据所述第一数据量以及所述第二数据流的第一数据单元的边界,确定出第二skew;所述数据处理设备根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第二数据流的第一数据单元的长度。所述数据处理设备以所述第一数据量为参考,调整所述第二数据流的第一数据单元的边界相对于所述第一数据量的边界的 skew,有助于降低需处理的数据,所述数据处理设备获得的调整后的第二数据流可以满足后续位宽变换的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施,有助于减少占用FIFO资源。
在进行所述数据处理的过程中,对于不同的应用场景,数据处理后获得的调整后的数据流中的粒度可以不同。所述粒度可以理解为数据流的基本单位,例如数据处理后获得的调整后的数据流的粒度可以为10bit长度的symbol。粒度越小,数据流中的基本单位就越小。粒度越大,数据流中的基本单位就越大。可选的,所述数据处理设备以第一数据单元为粒度,发送调整后的第一数据流和调整后的第二数据流。由于所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同,所以所述第一数据单元可以是所述第一数据流的第一数据单元,或者是所述第二数据流的第一数据单元。所述数据处理设备以轮询的方式发送调整后的第一数据流和调整后的第二数据流。所述轮询的发送方式可以为所述数据处理设备依次发送调整后的第一数据流和调整后的第二数据流中的数据单元。比如:所述数据处理设备可以依次发送调整后的第一数据流中的一个数据单元、调整后的第二数据流中的一个数据单元、调整后的第一数据流中的另一数据单元和调整后的第二数据流中的另一个数据单元。所述调整后的第一数据流中的一个数据单元和所述调整后的第一数据流中的另一个数据单元相邻;所述调整后的第二数据流中的一个数据单元和所述调整后的第二数据流中的另一个数据单元相邻。如果所述数据处理设备采用轮询的发送方式,接收所述调整后的第一数据流和调整后的第二数据流的可以是调制器、编码器或预编码器。
在位宽变换的场景下,所述数据处理设备可以向多路复用器发送调整后的所述第一数据流和调整后的所述第二数据流,以便所述多路复用器进行位宽变换操作。换句话说,所述数据处理设备可以向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。所述多路复用器与所述数据处理设备对应,即所述多路复用器可接收所述数据处理设备发送的所述调整后的第一数据流和所述调整后的第二数据流。
所述数据处理设备发送调整后的数据流的粒度可以和所述多路复用器的 复用调整后的数据流的粒度不同,也可以相同。比如,所述数据处理设备发送调整后的第一数据流的粒度为所述第一数据流的第一数据单元,所述数据处理设备发送调整后的第二数据流的粒度为所述第二数据流的第一数据单元,所述第一数据流的第一数据单元和所述第二数据流的第一数据单元的长度可均为10bit。所述多路复用器复用调整后的第一数据流和调整后的第二数据流的粒度可以为10bit,也可以为小于10bit的粒度,比如1bit,也可以为大于10bit的粒度,比如20bit。
实施例五
本发明实施例可以应用于对数据流的位宽变换之前,本发明实施例五将通过位宽变换这一具体应用场景,进一步描述在位宽变换的过程中,变换电路、多路复用器(Multiplexer,Mux)和数据处理设备之间的关系。
变换电路可包括多路复用器和数据处理设备。如果一个变换电路需要将接收到的M’条数据流复用生成N’条数据流时,所述变换电路包括N’个所述多路复用器,每个多路复用器将接收到的K’条数据流复用成一条数据流,所述K’为大于或等于2的整数,所述K’为M’除以N’所获得的商,即所述K’可以为M’/N’的商。在多路复用器复用数据流之前,所述变换电路中的数据处理设备可对用于复用的数据流进行调整。本发明实施例中的所述数据处理设备与所述多路复用器一一对应,即所述变换电路可包括N’个数据处理设备。其中,所述N’为大于等于1的整数,M’为大于N’的整数。所述数据处理设备不需要以M’条数据流中的一条数据流为参考,对M’条数据流中的剩余数据流进行调整。所述数据处理设备可采用本发明实施例提供的方法,对K’条数据流中的每条数据流进行调整,有助于降低了所述数据处理设备的处理负担和处理复杂程度。
如图8所示,图8为本发明实施例提供的一种位宽变换场景的示意图。在图8中,M’为16,N’为8,K’为2。8个多路复用器分别为Mux Group_1至Mux Group_8。以Mux Group_1对应的数据处理设备为例,所述数据处理设备可读取两条数据流,比如Mux Group_1对应的数据处理设备读取的为第一数据流和第二数据流。所述数据处理设备以预先设定的时间为周期,可从所述第 一数据流中读取第一数据量,从所述第二数据流中读取第二数据量。所述第一数据量和所述第二数据量可以为所述数据处理设备在同一个预先设定的时间内读取的数据量。所述第一数据量的长度和所述第二数据量的长度相同。
举例来说,所述数据处理的执行主体可以是数据处理设备。所述数据处理设备可以设于变换电路中。所述数据处理设备可以是物理层(physical layer,PHY)、PHY芯片(PHY chip)、系统芯片(system chip)或者多端口以太网设备(multi-port Ethernet device)中的部件。所述PHY可以通过现场可编程门阵列(field programmable gate array,FPGA)或者专用集成电路(application-specific integrated circuit,ASIC)实现。所述PHY可以是网络接口卡(Network Interface Card,NIC)中的部件,所述NIC可以是线卡(Line Card)或者PIC(Physical Interface Card,物理接口卡)。所述PHY可以包含用于连接到介质访问控制(Medium Access Control,MAC)的媒体无关接口(Media-Independent Interface,MII)。
本发明的实施例除了可以应用于以太网和光传输网络(Optical Transport Network,OTN)以外,还可以应用于其他需要进行位宽变换的网络环境中。
所述变换电路在进行数据流复用的位宽变换操作时,所述多路复用器用于输出复用后的数据流,比如说在进行M’到N’的位宽变换的变换电路中,Mux Group_1至Mux Group_8输出条数据流后,所述变换电路将所述8条数据流向下一个网络节点发送,所述下一个网络节点可以是其他变换电路或接收设备等。每个所述数据处理设备可用于接收所述K’条数据流,对所述K’条数据流进行调整。
本发明实施例提供的数据处理方法可应用与光模块中。通过应用本发明实施例提供的数据处理方法,所述光模块中不需要进行完整的deskew操作,所述光模块在对所述第一数据流进行调整时可无需参考其它数据流,能够实现调整后的所述第一数据流的第一数据单元的边界与第一数据量的边界之间相差整数个所述第一数据单元的长度。这样,所述调整后的第一数据流就已经满足位宽变化的基本条件。本发明实施例提供的方法,无需光模块具有较高的数据处理能力,简化了数据处理操作,有助于降低光模块内部数据处理结构的复杂程度,节约成本。在光模块的应用场景下,所述第一数据流和所述第 二数据流可以为电芯片中的数据流,第三数据流可以为光芯片中的数据流,所述第三数据流为所述第一数据流和所述第二数据流复用后获得的数据流。
实施例六
图9为本发明实施例提供的一种数据处理设备的设备结构图。所述数据处理设备900可以包括:
第一接收单元901,用于接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同。
举例说明,所述第一数据流可以为经FEC处理后获得的并行数据流中的任意一条数据流。比如:FEC模块可以接收或生成码字(codeword,CW)。所述FEC模块将所述码字转换为多个数据单元后,将所述多个数据单元以并行方式输出至所述数据处理设备,所述并行数据流中的任意一条数据流可以为所述第一数据流。如果一个码字的大小为5280比特(bit),一个数据单元的大小为10 bit,则一个码字可包括528个数据单元,所述FEC模块可以通过两条并行的数据流,输出所述528个数据单元至所述数据处理设备。
所述第一数据流可以是用于进行位宽变换的至少两条数据流中的一条。所述第一数据流可以是经FEC处理后获得的一条数据流。所述第一数据流可包括多个数据单元,比如所述第一数据单元和所述第二数据单元。所述第一数据流的第一数据单元的长度可以是至少一个比特(bit),即所述第一数据流的第一数据单元可包括一个bit或一个以上bit。例如:所述第一数据流的第一数据单元可以是一个symbol,所述symbol的长度可以为10bit。所述第一数据流的第一数据单元的长度也可以是一个bit。在此不再对所述第一数据流的第一数据单元的长度进行举例说明。所述第一数据流的第一数据单元的长度和所述第一数据流的第二数据单元的长度相同,可以为所述第一数据流的第一数据单元和所述第一数据流的第二数据单元具有相同的bit数,比如所述第一数据流的第一数据单元为一个symbol,所述第一数据流的第二数据单元也为一个symbol。
第一获得单元902,用于获得所述第一数据单元的边界。
举例说明,所述第一数据单元的边界可以为所述第一数据流的第一数据单元的前边界,或者为所述第一数据流的第一数据单元的后边界。所述第一数据单元的前边界可以理解为所述第一数据单元包括的两条边界中,在传输方向上位置较为靠前的边界。所述传输方向为所述第一数据流的传输方向。所述第一数据单元的后边界可以理解为所述第一数据单元包括的两条边界中,在所述传输方向上位置较为靠后的边界。
举例说明,本发明不限定所述第一获得单元902获得所述第一数据流的第一数据单元边界的方法。本发明实施例也提供了一种优选的所述第一获得单元902获取所述第一数据流的第一数据单元边界的方式,将在实施例七中详细说明,这里不再赘述。
举例说明,所述第一获得单元902可通过AM Lock的方式或FEC_CW Lock的方式,获得所述第一数据流的第一数据单元的边界,在下述实施例七中进行详细说明,在此不再赘述。
第二获得单元903,用于根据第一数据量以及所述第一数据单元的边界,获得第一偏移skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界。
举例说明,所述第一数据量可以理解为所述第一数据流的一部分连续数据;所述第一数据量的边界可以为所述第一数据量的前边界,或者为所述第一数据量的后边界。所述第一数据量的前边界可以理解为所述第一数据量包括的两条边界中,在传输方向上位置较为靠前的边界。所述传输方向为所述第一数据流的传输方向。所述第一数据量的后边界可以理解为所述第一数据量包括的两条边界中,在所述传输方向上位置较为靠后的边界。
可选的,所述预先设定的时间可以包括一个或多个时钟周期,所述时钟周期可以理解为所述数据处理设备的工作时钟的周期。
可选的,所述第一数据量的长度为所述第一数据单元长度的正整数倍。
举例说明,所述第一数据量的边界可以为所述第一数据量的前边界,或者为所述第一数据量的后边界。所述第一数据量的前边界可以理解为所述第一数据量包括的两条边界中,在所述传输方向上位置较为靠前的边界。所述第一数 据量的后边界可以理解为所述第一数据量包括的两条边界中,在所述传输方向上位置较为靠后的边界。
举例说明,所述第二获得单元903根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述第二获得单元903根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的c至a之间的长度,即图3所示的c和a之间的bit数量。或者,
所述第二获得单元903根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述第二获得单元903根据所述第一数据量的后边界和所述第一数据流的第一数据单元的后边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的b至d之间的长度,即图3所示的b和d之间的bit数量。或者,
所述第二获得单元903根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述第二获得单元903根据所述第一数据量的前边界和所述第一数据流的第一数据单元的后边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的c至b之间的长度,即图3所示的c和b之间的bit数量。或者,
所述第二获得单元903根据第一数据量以及所述第一数据单元的边界,获得第一skew包括:所述第二获得单元903根据所述第一数据量的后边界和所述第一数据流的第一数据单元的前边界,获得所述第一skew。如图3所示,所述第一skew可以如图3所示的a至d之间的长度,即图3所示的a和d之间的bit数量。
第一调整单元904,用于根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
举例说明,所述第一调整单元904处理的所述第一数据流的第一数据单元的边界可以与所述第二获得单元903获得第一skew所采用的所述第一数据流的第一数据单元的边界相同。所述第一调整单元904处理的所述第一数据量的 边界可以与所述第二获得单元903获得所述第一skew所采用的所述第一数据量的边界相同。比如:若所述第二获得单元903根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则所述所述第一调整单元904通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。
举例说明,所述第一调整单元904处理的所述第一数据流的第一数据单元的边界可以与所述第二获得单元903获得所述第一skew所采用的所述第一数据流的第一数据单元的边界不同。所述第一调整单元904处理的所述第一数据量的边界可以与所述第二获得单元903获得所述第一skew所采用的所述第一数据量以及所述第一数据流的第一数据单元的边界不同。比如:若所述第二获得单元903根据所述第一数据量的后边界和所述第一数据流的第一数据单元的后边界获得所述第一skew,则所述第一调整单元904通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若所述第二获得单元903根据所述第一数据量的前边界和所述第一数据流的第一数据单元的后边界获得所述第一skew,则所述第一调整单元904通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若所述第二获得单元903根据所述第一数据量的后边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则所述第一调整单元904通过所述第一skew调整所述第一数据流,使得所述第一数据流的第一数据单元的前边界与所述第一数据量的前边界之间相差整数个所述第一数据流的第一数据单元的长度。若所述第二获得单元903根据所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界获得所述第一skew,则所述第一调整单元904通过所述第一skew调整所述第一数据流,可使得所述第一数据流的第一数据单元的后边界与所述第一数据量的后边界之间相差整数个所述第一数据流的第一数据单元的长度。在此不再对可能的实现方式进行逐一举例说明。
本发明的实施例中,数据处理设备在预设时间内获取包括第一数据单元的边界的第一数据量;所述数据处理设备根据所述第一数据量以及所述第一数据单元的边界,确定出第一skew;所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。所述数据处理设备以所述第一数据量为参考,调整所述第一数据单元的边界相对于所述第一数据量的边界的skew,有助于降低需处理的数据,所述数据处理设备获得的调整后的第一数据流可以满足后续位宽变换的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施,有助于减少占用FIFO资源。
实施例七
本发明实施例七提供了一种所述第一获得单元902获得所述第一数据流的第一数据单元的边界的方式。本发明实施例七提供的所述第一获得单元902获得所述第一数据单元的边界的方式可应用于实施例六提供的所述第一获得单元902中,也可应用于所述第一获得单元902获取其它数据流的第一数据单元的边界,在此不再赘述。本发明实施例七中,所述AM的前边界与所述第一数据单元的前边界重合,或者所述AM的后边界与所述第一数据单元的后边界重合。本发明实施例七中提及的第一数据单元为所述第一数据流的第一数据单元。
举例说明,所述第一获得单元902可以通过AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界。所述第一获得单元902也可以通过FEC_CW Lock的方式,识别出所述第一数据流携带的FEC_CW的边界,并根据所述FEC_CW的边界确定出所述第一数据单元的边界。
举例说明,所述AM所述第一数据流中的一个或多个数据单元,比如所述AM可占用3个所述数据单元,如图4中的41、43和44分别标识的数据单元,或者所述AM可占用3.5个所述数据单元。比如:若所述AM的长度大于或等于所述第一数据流的第一数据单元的长度,则所述AM的边界和所述第一数据流的第一数据单元的边界重合可包括:第一种情况,所述AM的前边界和所述第一数据流的第一数据单元的前边界重合。所述第一数据流的第一数据单元为 图4中41所标识的数据单元,所述AM为图4中的42,所述第一数据流的第一数据单元为携带了所述AM的前边界的数据单元。所述AM的前边界和所述第一数据流的第一数据单元的前边界均为a。所述AM的后边界可以和所述第一数据流的第一数据单元的后边界重合,也可以和所述第一数据流的第一数据单元的后边界不重合。第二种情况,所述AM的后边界和所述第一数据流的第一数据单元的后边界可重合。所述第一数据单元可以为图4中的44所标识的数据单元,所述AM为图4中的42,所述第一数据流的第一数据单元为携带所述AM后边界的数据单元。所述AM的后边界和所述第一数据流的第一数据单元的后边界均为c。所述AM的前边界可以和所述第一数据流的第一数据单元的前边界重合,也可以和所述第一数据流的第一数据单元的前边界不重合。若所述AM的长度小于所述第一数据流的第一数据单元的长度,则所述AM的前边界和所述第一数据流的第一数据单元的前边界重合,或者所述AM的后边界和所述第一数据流的第一数据单元的后边界重合。所述第二获得单元903在读取所述第一数据流的所述第一数据量时,可以通过识别所述第一数据流携带的AM的边界,确定所述第一数据流中携带所述AM的第一数据单元的边界。
所述AM Lock的方式可以是对所述第一数据流携带的AM的锁定过程。所述第一获得单元902可通过所述AM Lock的方式,确定出所述AM的边界的位置。举例说明,所述第一获得单元902预先配置有所述第一数据流的AM图案。所述第一获得单元902可将所述第一数据流与所述AM图案进行匹配,来识别所述第一数据流的所述AM。比如:所述第一数据流上携带至少两个AM,比如AM1和AM2,所述AM1与所述AM2相邻,且所述AM1的后边界和所述AM2的前边界位于不同的数据量中。在采用所述AM Lock方式,确定所述AM1和所述AM2分别与所述AM图案匹配,则所述第一获得单元902将所述第一数据流锁定。如果所述第一获得单元902需要获知所述第一数据流的第一数据单元的前边界,则所述第一获得单元902可以将所述AM1和所述AM2中任意一个AM的前边界作为所述第一数据流的第一数据单元的前边界。如果所述第一获得单元902需要获知所述第一数据流的第一数据单元的后边界,则所述第一获得单元902可以将所述AM1和所述AM2中任意一个AM 的后边界作为所述第一数据流的第一数据单元的后边界。
举例说明,若所述AM的前边界和所述第一数据流的第一数据单元的前边界重合,即所述第一数据流的第一数据单元携带了所述AM的前边界,则所述第一获得单元902通过所述AM Lock的方式,识别出所述AM的前边界,所述AM的前边界可以为所述第一数据流的第一数据单元的前边界。第一skew可以为所述第一数据流的第一数据单元的前边界和所述第一数据量的前边界之间的长度,比如所述第一skew可以为如图4所示的e至a之间的长度。或者所述第一skew可以为所述第一数据流的第一数据单元的前边界和所述第一数据量的后边界之间的长度,比如所述第一skew可以为如图4所示的a至f之间的长度。
举例说明,若所述AM的后边界和所述第一数据流的第一数据单元的后边界重合,即所述第一数据流的第一数据单元携带了所述AM的后边界,则所述第一获得单元902通过上述AM Lock的方式,识别出所述AM的后边界,所述AM的后边界可以为所述第一数据流的第一数据单元的后边界。第一skew可以为所述第一数据流的第一数据单元的后边界和所述第一数据量的后边界之间的长度,比如所述第一skew可以为如图4所示的c至f之间的长度。或者,第一skew可以为所述第一数据流的第一数据单元的后边界和所述第一数据量的前边界之间的长度,比如所述第一skew可以为如图4所示的e至f之间的长度。
本发明的实施例中,数据处理设备可通过AM Lock的方式,快速准确的识别出所述第一数据流携带的AM的边界。所述数据处理设备可利用所述AM的边界,确定所述第一数据流的第一数据单元的边界,所述第一数据流的第一数据单元携带了所述AM的边界。这样,所述数据处理设备可利用所述第一数据量的边界以及识别出的所述AM的边界,获得所述第一数据流的所述第一数据单元相对于所述第一数据量的skew,无需以其它数据流中的AM作为参考AM,有助于节省FIFO资源,降低处理的复杂性和成本,有助于节约系统资源。
实施例八
本发明实施例八提供了一种所述第一调整单元904调整所述第一数据流的方式。本发明实施例并不限定所述第一调整单元904根据第一skew调整所述第一数据流的具体方式,能够实现调整后的第一数据流中的第一数据单元的边界与第一数据量的边界之间相差整数个所述第一数据单元的长度即可。本发明实施例八提供的调整所述第一数据流的方式,可应用于实施例六提供的所述第一调整单元904中,也可应用于实施例六与实施例七结合的所述第一调整单元904中,还可应用于所述第一调整单元904调整其它数据流,在此不再赘述。所述第一数据量可以与实施例六或实施例七中的第一数据量相同,在此不再赘述。所述第一数据流的第一数据单元可以与实施例六或实施例七中的第一数据单元相同,在此不再赘述。本发明实施例八中提及的第一数据单元为所述第一数据流中的第一数据单元。
本发明实施例八提供了以下所述第一调整单元904根据所述第一skew调整所述第一数据流的方式。
第一种方式可以包括:所述第一调整单元904根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;所述第一调整单元904移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
第二种方式可以包括:所述第一调整单元904移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。举例说明,所述第一调整单元904根据所述第二长度,获得所述调整后的第一数据流。所述调整后的第一数据流中,所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界重合。
第三种方式可以包括:所述第一调整单元904根据所述第一skew的长度和X个所述第一数据单元的长度的差值,获得第三长度,所述第三长度大于所述第一数据单元的长度,所述X大于或等于1且小于所述N;所述第一调整单元904移除以所述第一数据量的边界开始、长度为第三长度的数据,获得调整后的第一数据流。举例说明,所述第一调整单元904根据所述第三长度,获得所述调整后的第一数据流。所述调整后的第一数据流中,所述第一数据量的前边界和所述第一数据流的第一数据单元的前边界之间包括至少一个所述 第一数据单元的长度。
本发明实施例中的第一调整单元904可采用实施例三中的三种方式进行调整,在此不再对具体实例进行赘述。
本发明的实施例中,所述第一调整单元904根据第一skew调整所述第一数据流,使得调整后所述第一数据流中的第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据流的第一数据单元的长度,可以满足复用的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施。
实施例九
本发明实施例九中的数据处理设备900可以并行处理多条数据流。本发明实施例九中,所述数据处理设备900可在处理第一数据流的同时或之后,处理第二数据流。如图10所示,本发明实施例九提供了所述数据处理设备900处理所述第二数据流的方法,本发明实施例九未对所述数据处理设备900处理所述第一数据流的方法进行说明,所述数据处理设备900处理所述第一数据流的方法可参见实施例六至实施例八中的任意一个实施例,在此不再赘述。
图10为本发明实施例提供的一种数据处理设备的设备结构图,所述数据处理设备900还包括:
第二接收单元1001,用于接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同。
举例说明,所述第二数据流和所述第一数据流可以为经同一次FEC处理后得到的并行数据流中的数据流,可以用于位宽变换。所述第二数据流的第一数据单元和所述第一数据流的第一数据单元的长度可以相同。所述第二数据流的第一数据单元的长度可以是至少一个bit。即所述第二数据流的第一数据单元可包括一个bit或一个以上bit。例如:所述第二数据流的第一数据单元可以是一个symbol,所述symbol的长度可以为10bit。所述第二数据流的第一数据单元的长度也可以是一个bit。在此不再对所述第二数据流的第一数据单元的长度进行举例说明。所述第二数据流的第一数据单元长度和所述第二数据流的 第二数据单元的长度相同,可以为所述第二数据流的第一数据单元和所述第二数据流的第二数据单元具有相同的bit数。所述第二接收单元1001与实施例六中的所述第一接收单元901可以相同,也可以不同。
举例说明,所述数据处理设备900可以通过所述第一接收单元901和所述第二接收单元1001同时接收所述第一数据流和所述第二数据流,并对所述第一数据流和所述第二数据流同时进行调整。在具体的实施场景下,所述第一数据流和所述第二数据流可以是FEC处理后的数据流。
第三获得单元1002,用于获得所述第二数据流的第一数据单元的边界。
所述第三获得单元1002获得所述第二数据流的第一数据单元的边界的方式与实施例六中的所述第一获得单元902获得所述第一数据流的第一数据单元的边界的方式相似,这里不再赘述。所述第三获得单元1002与实施例六中的所述第一获得单元902可以相同,也可以不同。
第四获得单元1003,用于根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在所述预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界。
举例说明,所述预先设定的时间可以与实施例六中预先设定的时间相同。所述第四获得单元1003可采用实施例六至实施例八中任一实施例提供的所述第二获得单元903获得第一skew的方法,获得所述第二skew,在此不再赘述。所述第四获得单元1003与实施例六中的所述第二获得单元903可以相同,也可以不同。
举例说明,所述第四获得单元1003根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述第四获得单元1003根据所述第二数据量的前边界和所述第二数据流的第一数据单元的前边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的c至a之间的长度,即图3所示的c和a之间的bit数量。或者,
所述第四获得单元1003根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述第四获得单元1003根据所述第二数据量的 后边界和所述第二数据流的第一数据单元的后边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的b至d之间的长度,即图3所示的b和d之间的bit数量。或者,
所述第四获得单元1003根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述第四获得单元1003根据所述第二数据量的前边界和所述第二数据流的第一数据单元的后边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的c至b之间的长度,即图3所示的c和b之间的bit数量。或者,
所述第四获得单元1003根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew:所述第四获得单元1003根据所述第二数据量的后边界和所述第二数据流的第一数据单元的前边界,获得所述第二skew。如图3所示,所述第二skew可以如图3所示的a至d之间的长度,即图3所示的a和d之间的bit数量。
可选的,所述第二数据量和所述第一数据量的长度可以相同,有助于所述数据处理设备并行处理所述第一数据流和所述第二数据流时,简化处理和节约系统资源。
第二调整单元1004,用于根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
举例说明,所述第二调整单元1004可采用实施例六至实施例八中任一实施例提供的所述第一调整单元904调整所述第一数据量的方式调整所述第二数据流,在此不再赘述。所述第二调整单元1004与实施例六中的所述第一调整单元904可以相同,也可以不同。
本发明的实施例中,数据处理设备在预设时间内获取包括第二数据流的第一数据单元的边界的第一数据量;所述数据处理设备根据所述第一数据量以及所述第二数据流的第一数据单元的边界,确定出第二skew;所述数据处理设备根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第二 数据流的第一数据单元的长度。所述数据处理设备以所述第一数据量为参考,调整所述第二数据流的第一数据单元的边界相对于所述第一数据量的边界的skew,有助于降低需处理的数据,所述数据处理设备获得的调整后的第二数据流可以满足后续位宽变换的条件,降低了操作复杂性和成本,有利于位宽变换的部署和实施,有助于减少占用FIFO资源。
在进行所述数据处理的过程中,对于不同的应用场景,数据处理后获得的调整后的数据流中的粒度可以不同。所述粒度可以理解为数据流的基本单位,例如数据处理后获得的调整后的数据流的粒度可以为10bit长度的symbol。粒度越小,数据流中的基本单位就越小。粒度越大,数据流中的基本单位就越大。可选的,在图9和图10的基础上,图11为本发明实施例提供的一种数据处理设备的设备结构图,所述数据处理设备900还包括发送单元1101:
所述发送单元1101,用于以第一数据单元为粒度,发送调整后的第一数据流和调整后的第二数据流。
举例说明,由于所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同,所以所述第一数据单元可以是所述第一数据流的第一数据单元,或者是所述第二数据流的第一数据单元。所述发送单元1101可以以轮询的方式发送调整后的第一数据流和调整后的第二数据流。所述轮询的发送方式可以与实施例四中的轮询的发送方式相同,在此不再赘述。
在位宽变换的场景下,所述发送单元1101可以向多路复用器发送调整后的所述第一数据流和调整后的所述第二数据流,以便所述多路复用器进行位宽变换操作。换句话说,所述发送单元1101可以向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。所述多路复用器与所述发送单元1101对应,即所述多路复用器可接收所述发送单元1101发送的所述调整后的第一数据流和所述调整后的第二数据流。
所述发送单元1101发送调整后的数据流的粒度可以和所述多路复用器的复用调整后的数据流的粒度不同,也可以相同。比如,所述发送单元1101发送调整后的第一数据流的粒度为所述第一数据流的第一数据单元,所述发送单元1101发送调整后的第二数据流的粒度为所述第二数据流的第一数据单元, 所述第一数据流的第一数据单元和所述第二数据流的第一数据单元的长度可均为10bit。所述多路复用器复用调整后的第一数据流和调整后的第二数据流的粒度可以为10bit,也可以为小于10bit的粒度,比如1bit,也可以为大于10bit的粒度,比如20bit。
实施例十
参阅图12,图12为本发明实施例提供的一种数据处理设备的硬件结构示意图,所述数据处理设备1200包括存储器1201和接收器1202,以及分别与所述存储器1201和所述接收器1202连接的处理器1203,所述存储器1201用于存储一组程序指令,所述处理器1203用于调用所述存储器1201存储的程序指令执行如下操作:
触发所述接收器1202接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;
获得所述第一数据单元的边界;
根据第一数据量以及所述第一数据单元的边界,获得第一偏移skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;
根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
可选地,所述处理器1203可以为中央处理器(Central Processing Unit,CPU),所述存储器1201可以为随机存取存储器(Random Access Memory,RAM)类型的内部存储器,所述接收器1202可以包含普通物理接口,所述物理接口可以为以太(Ethernet)接口或异步传输模式(Asynchronous Transfer Mode,ATM)接口。所述处理器1203、接收器1202和存储器1201可以集成为一个或多个独立的电路或硬件,如:专用集成电路(Application Specific Integrated Circuit,ASIC)。
所述数据处理设备1200可以采用实施例一至实施例四中任意一个实施例提供的方法。所述数据处理设备1200可以是从逻辑角度显示所述数据处理设 备宝库的内容,实施例六至实施例九中的数据处理设备可以是从物理角度显示所述数据处理设备包括的内容。
本发明实施例中提到的第一数据流、第一数据单元、第一数据量、第一skew和第一长度的“第一”只是用来做名字标识,并不代表顺序上的第一。该规则同样适用于“第二”和“第三”。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(Read-Only Memory,ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的优选实施方式,并非用于限定本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (17)

  1. 一种数据处理方法,其特征在于,所述方法包括:
    数据处理设备接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;
    所述数据处理设备获得所述第一数据单元的边界;
    所述数据处理设备根据第一数据量以及所述第一数据单元的边界,获得第一偏移skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;
    所述数据处理设备根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
  2. 根据权利要求1所述的方法,其特征在于,所述第一数据单元携带对齐标识AM,所述数据处理设备获得所述第一数据单元的边界包括:
    所述数据处理设备通过对齐标识锁定AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界,所述AM的边界为所述第一数据单元的边界。
  3. 根据权利要求1或2所述的方法,其特征在于,所述数据处理设备根据所述第一skew调整所述第一数据流包括:
    所述数据处理设备根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;
    所述数据处理设备移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
  4. 根据权利要求1或2所述的方法,其特征在于,所述数据处理设备根据所述第一skew调整所述第一数据流包括:
    所述数据处理设备移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。
  5. 根据权利要求1至4任意一项所述的方法,其特征在于,
    所述第一数据量的长度为所述第一数据单元长度的正整数倍。
  6. 根据权利要求1至5任意一项所述的方法,其特征在于,所述方法还包括:
    所述数据处理设备接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同;
    所述数据处理设备获得所述第二数据流的第一数据单元的边界;
    所述数据处理设备根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在所述预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界;
    所述数据处理设备根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
  7. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    所述数据处理设备以所述第一数据流的第一数据单元的长度为粒度,发送调整后的第一数据流和调整后的第二数据流,所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同。
  8. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    所述数据处理设备向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。
  9. 一种数据处理设备,其特征在于,所述设备包括:
    第一接收单元,用于接收第一数据流,所述第一数据流包括第一数据单元和第二数据单元,所述第一数据单元和所述第二数据单元的长度相同;
    第一获得单元,用于获得所述第一数据单元的边界;
    第二获得单元,用于根据第一数据量以及所述第一数据单元的边界,获得 第一偏移skew,所述第一数据量是所述数据处理设备在预先设定的时间内接收到的数据,所述第一数据量中包括所述第一数据单元的边界;
    第一调整单元,用于根据所述第一skew调整所述第一数据流,使得所述第一数据单元的边界与所述第一数据量的边界之间相差整数个所述第一数据单元的长度。
  10. 根据权利要求9所述的设备,其特征在于,所述第一数据单元携带对齐标识AM,
    所述第一获得单元具体用于通过对齐标识锁定AM Lock的方式,识别出所述第一数据单元携带的所述AM的边界,所述AM的边界为所述第一数据单元的边界。
  11. 根据权利要求9或10所述的设备,其特征在于,
    所述第一调整单元具体用于根据所述第一skew的长度和整数个所述第一数据单元的长度的差值,获得第一长度,所述第一长度小于所述第一数据单元的长度;
    所述第一调整单元具体用于移除以所述第一数据量的边界开始、长度为第一长度的数据,获得调整后的第一数据流。
  12. 根据权利要求9或10所述的设备,其特征在于,
    所述第一调整单元具体用于移除以所述第一数据量的边界开始、长度为第二长度的数据,获得调整后的第一数据流,所述第二长度为所述第一skew的长度。
  13. 根据权利要求9至12任意一项所述的设备,其特征在于,
    所述第一数据量的长度为所述第一数据单元的长度的正整数倍。
  14. 根据权利要求9至13任意一项所述的设备,其特征在于,所述设备还包括:
    第二接收单元,用于接收第二数据流,所述第二数据流包括第一数据单元和第二数据单元,所述第二数据流的第一数据单元和所述第二数据流的第二数据单元的长度相同;
    第三获得单元,用于获得所述第二数据流的第一数据单元的边界;
    第四获得单元,用于根据第二数据量以及所述第二数据流的第一数据单元的边界,获得第二skew,所述第二数据量是所述数据处理设备在所述预先设定的时间内接收到的数据,所述第二数据量中包括所述第二数据流的第一数据单元的边界;
    第二调整单元,用于根据所述第二skew调整所述第二数据流,使得所述第二数据流的第一数据单元的边界与所述第二数据量的边界相差整数个所述第二数据流的第一数据单元的长度。
  15. 根据权利要求14所述的设备,其特征在于,所述设备还包括:
    发送单元,用于以所述第一数据流的第一数据单元的长度为粒度,发送调整后的第一数据流和调整后的第二数据流,所述第一数据流的第一数据单元的长度和所述第二数据流的第一数据单元的长度相同。
  16. 根据权利要求14所述的设备,其特征在于,所述设备还包括:
    发送单元,用于向多路复用器发送调整后的第一数据流和调整后的第二数据流,所述多路复用器用于将所述调整后的第一数据流和所述调整后的第二数据流复用生成第三数据流。
  17. 根据权利要求9至16任一所述的设备,其特征在于,所述数据处理设备为路由设备、交换机或电芯片。
PCT/CN2014/095824 2014-12-31 2014-12-31 一种数据处理方法和设备 WO2016106650A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2014/095824 WO2016106650A1 (zh) 2014-12-31 2014-12-31 一种数据处理方法和设备
CN201480074162.8A CN106063208B (zh) 2014-12-31 2014-12-31 一种数据处理方法和装置
EP14909459.1A EP3229430A4 (en) 2014-12-31 2014-12-31 Data processing method and device
US15/637,740 US10277432B2 (en) 2014-12-31 2017-06-29 Data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/095824 WO2016106650A1 (zh) 2014-12-31 2014-12-31 一种数据处理方法和设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/637,740 Continuation US10277432B2 (en) 2014-12-31 2017-06-29 Data processing method and device

Publications (1)

Publication Number Publication Date
WO2016106650A1 true WO2016106650A1 (zh) 2016-07-07

Family

ID=56283924

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/095824 WO2016106650A1 (zh) 2014-12-31 2014-12-31 一种数据处理方法和设备

Country Status (4)

Country Link
US (1) US10277432B2 (zh)
EP (1) EP3229430A4 (zh)
CN (1) CN106063208B (zh)
WO (1) WO2016106650A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080031312A1 (en) * 2006-08-03 2008-02-07 Wally Haas Skew-Correcting Apparatus using Iterative Approach
US20090150728A1 (en) * 2007-12-06 2009-06-11 Seagate Technology Llc High speed serial trace protocol for device debug
US7995696B1 (en) * 2008-08-07 2011-08-09 Integrated Device Technology, Inc. System and method for deskewing data transmitted through data lanes
US8401043B1 (en) * 2008-11-18 2013-03-19 Marvell Israel (M.L.S.L) Ltd. Hardware interface utilizing alignment symbols for demultiplexing

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3540243B2 (ja) * 2000-04-24 2004-07-07 Necエレクトロニクス株式会社 半導体記憶装置
US6985640B2 (en) * 2002-01-07 2006-01-10 Xerox Corporation Parallel non-iterative method of determining and correcting image skew
US7142727B2 (en) * 2002-12-17 2006-11-28 Xerox Corporation Non-iterative method of calculating image skew
US20070103141A1 (en) * 2003-11-13 2007-05-10 International Business Machines Corporation Duty cycle measurment circuit for measuring and maintaining balanced clock duty cycle
US7961559B2 (en) * 2003-11-13 2011-06-14 International Business Machines Corporation Duty cycle measurement circuit for measuring and maintaining balanced clock duty cycle
KR100576366B1 (ko) * 2004-10-29 2006-05-03 삼성전자주식회사 반도체 메모리 장치 및 이 장치의 신호라인 배치방법
US8867683B2 (en) * 2006-01-27 2014-10-21 Ati Technologies Ulc Receiver and method for synchronizing and aligning serial streams
KR101206503B1 (ko) * 2006-06-30 2012-11-29 삼성전자주식회사 스큐 제거 회로 및 그에 의한 스큐 제거 방법
US20080112142A1 (en) * 2006-11-10 2008-05-15 Siva Raghuram Memory module comprising memory devices
JP4356765B2 (ja) 2007-04-20 2009-11-04 ソニー株式会社 情報処理装置および方法、並びにプログラム
CN101682450B (zh) * 2007-05-14 2013-03-20 夏普株式会社 Ofdm解调装置、ofdm解调方法、ofdm解调程序以及记录介质
US8315272B2 (en) * 2008-09-02 2012-11-20 Mobius Semiconductor, Inc. Systems and methods for digital interface translation
US20120030438A1 (en) * 2010-07-29 2012-02-02 Sarance Technologies Inc. Method and Apparatus for Performing Skew Removal in the Receiver of a Multi-Lane Communication Link
US8856578B2 (en) * 2010-08-20 2014-10-07 Fujitsu Semiconductor Limited Integrated circuit device including skew adjustment circuit and skew adjustment method
CN102142987B (zh) * 2010-12-09 2014-01-08 浪潮(北京)电子信息产业有限公司 一种高速串行总线设备及其传输数据的方法
US9213487B2 (en) * 2013-10-16 2015-12-15 Qualcomm Incorporated Receiver architecture for memory reads

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080031312A1 (en) * 2006-08-03 2008-02-07 Wally Haas Skew-Correcting Apparatus using Iterative Approach
US20090150728A1 (en) * 2007-12-06 2009-06-11 Seagate Technology Llc High speed serial trace protocol for device debug
US7995696B1 (en) * 2008-08-07 2011-08-09 Integrated Device Technology, Inc. System and method for deskewing data transmitted through data lanes
US8401043B1 (en) * 2008-11-18 2013-03-19 Marvell Israel (M.L.S.L) Ltd. Hardware interface utilizing alignment symbols for demultiplexing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
See also references of EP3229430A4 *
WANG, TONGTONG ET AL.: "BER/FLR Calculation Results for Multiplexing in PMA", IEEE P802. 3BS 400GBE TASK FORCE, 10 July 2014 (2014-07-10), pages 8, XP068065938 *

Also Published As

Publication number Publication date
US10277432B2 (en) 2019-04-30
CN106063208B (zh) 2019-06-18
EP3229430A1 (en) 2017-10-11
EP3229430A4 (en) 2017-12-06
US20170302484A1 (en) 2017-10-19
CN106063208A (zh) 2016-10-26

Similar Documents

Publication Publication Date Title
US11843452B2 (en) Clock synchronization method and apparatus
US7656905B2 (en) Apparatus and method for aggregation and transportation of gigabit ethernet and other packet based data formats
EP2975858B1 (en) Method for processing data in the ethernet, physical layer chip and ethernet device
CN111431666A (zh) 一种数据处理方法和数据发送端以及接收端
JP5203153B2 (ja) パラレル伝送方法及びパラレル伝送装置
US8761209B1 (en) System and method for the aggregation of 10GBASE-R signals into pseudo 100GBASE-R signals
US11329910B2 (en) Transmission apparatus including a plurality of switches and output circuits for transmitting data and transmission method
WO2019090696A1 (zh) 光传输单元信号的传输方法和装置
CN111162869B (zh) 一种数据流处理方法及装置
CN101977092B (zh) 前向纠错映射和去映射技术
CN109845217B (zh) 灵活以太网中传输数据的方法和设备
US8644347B2 (en) Transporting optical data units in an optical transport network
WO2019170064A1 (zh) 光网络中以太数据处理的方法、装置和系统
WO2016101555A1 (zh) 一种交叉调度方法及其装置、存储介质
WO2016106650A1 (zh) 一种数据处理方法和设备
JP6033468B2 (ja) 光伝送装置、光伝送システム及び通信方法
CN106713149A (zh) 路由器的子卡和线卡板
JP5945244B2 (ja) 多重伝送システム及び多重伝送方法
JP2023523075A (ja) サービス処理方法及び装置
US20150358431A1 (en) Enhanced data communications in an optical transport network
WO2018076672A1 (zh) 一种光传送网络业务接入方法及装置、计算机存储介质
WO2019023824A1 (zh) 一种比特块流处理、速率匹配、交换的方法和装置
CN111630794B (zh) 具有故障转移机制的otn多机箱系统中的自动时钟相位同步
US20200169324A1 (en) Optical transmission system and apparatus and transmission method
Guindani et al. A 10 Gbps OTN framer implementation targeting FPGA devices

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: 14909459

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2014909459

Country of ref document: EP