WO2014161137A1 - 一种以太网物理层的编码、解码方法和装置 - Google Patents
一种以太网物理层的编码、解码方法和装置 Download PDFInfo
- Publication number
- WO2014161137A1 WO2014161137A1 PCT/CN2013/073568 CN2013073568W WO2014161137A1 WO 2014161137 A1 WO2014161137 A1 WO 2014161137A1 CN 2013073568 W CN2013073568 W CN 2013073568W WO 2014161137 A1 WO2014161137 A1 WO 2014161137A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- information group
- characters
- type
- boundary
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000006835 compression Effects 0.000 claims description 9
- 238000007906 compression Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 5
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0079—Formats for control data
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/323—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the physical layer [OSI layer 1]
Definitions
- the present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for encoding and decoding an Ethernet physical layer.
- Ethernet is a data link layer and physical layer technology for packet networks.
- the data link layer part of Ethernet mainly includes the Medium Access Control Layer (MAC) of Ethernet.
- the physical layer of Ethernet mainly includes: Reconciliation Sub-layer (RS), Media Independent Interface ( ⁇ ), Physical Coding Sublayer (PCS), physical medium.
- RS Reconciliation Sub-layer
- ⁇ Media Independent Interface
- PCS Physical Coding Sublayer
- PMA Physical Medium Attachment
- PMD Physical Medium Dependent
- an interface between physical media media and layers where the RS adapts the link layer and the physical layer. Provides the required adaptation for data exchange between the MAC and the physical layer.
- the PCS is used to encode the information group transmitted by ⁇ , and transmit the encoded information group to the PMA, and decode the information group transmitted by the PMA, and transmit the decoded information to the RS/MAC layer through ⁇ .
- the most commonly used coding method is 64b/66b coding mode, which marks two types of coding information groups by two (synchronous) header information (ob l O , ObO l ) of two bits, the two codes.
- the message group type marks (synchronization) header information into two types according to whether the information group is all data characters; when the information group contains not only data characters, the control characters other than the data characters of the information group are compression-encoded, and the first word is used.
- the section records the letter, a limited combination of data characters and control characters in the group.
- This coding method is first widely used in 10GE and also in 40GE and 100GE (100 Gigabit Ethernet).
- 64b/66b to 5 12b/5 13b code conversion overhead compression technology ( Trasncoding ) is derived based on 64b/66b coding in order to reduce (synchronization) header redundancy overhead.
- 64b/66b to 256b/257b code transfer Change the overhead compression technology.
- Ethernet physical layer information group coding technology In order to adapt to the development of new high-capacity Ethernet such as 100GE, 400GE (400 Gigabit Ethernet) and 1000GE (1000 Gigabit Ethernet), the optimal coding overhead of Ethernet physical layer information group coding technology is proposed, and the complexity is low. New requirements such as flexibility and high efficiency.
- Ethernet physical layer coding method has at least the following problems:
- the length of the information group to be encoded and the (synchronization) header redundancy overhead cannot be flexibly selected.
- it limits the selection and use of the optimal coding information group length, and it is difficult to achieve optimal (synchronous) header overhead control.
- FEC physical layer forward error correction
- the present invention discloses an encoding and decoding method and apparatus for an Ethernet physical layer, and relates to the field of communication technologies for improving the encoding/decoding efficiency and the flexibility of selecting the length of an information group to be encoded/decoded.
- the first aspect provides an encoding method of an Ethernet physical layer, including:
- the first information group includes m characters, m>2, and m is an integer; the character attribute of any one of the characters is a data character, a boundary character, or a third class character, and one character is occupied. a byte, the third type of character being a character other than the data character and the boundary character;
- the first information group includes n boundary characters, n ⁇ l, n is an integer, the n boundary characters are deleted, and characters other than the n boundary characters in the first information group are deleted. And generating, by the type information of the n boundary characters and the location information, a second information group, where the second information group includes m bytes;
- the type of the first information group is pre-stored
- the type of information group and the character attribute of the character in the first information group are determined.
- the deleting the n a boundary character, and generating a second information group by using characters other than the n boundary characters, type information of the n boundary characters, and location information in the first information group, where the second information group includes m bytes; includes:
- deleting the n boundary characters to obtain n idle bytes moving the characters before the nth idle byte of the n idle bytes backwards, so that the first information group
- the remaining mn characters are recorded in consecutive bytes; and the type information and the position information of the n boundary characters are recorded in at least the first n bytes of the first information group to obtain a second information group, the second information group
- the information group consists of m bytes.
- n bytes occupied by the n boundary characters are sufficient to record type information and location information of the n boundary characters
- At least the first n bytes of the first information group record the type information of the n boundary characters and the location information, to obtain a second information group, where the second information group includes m bytes, including:
- the second information group includes m bytes, including:
- the idle bit records the type information of the n boundary characters and the location information to obtain a second information group, where the second information group includes m bytes.
- the type of the first information group determined according to a character attribute of a character in the first information group is the second
- the header adds header information, including:
- the first determined according to the character attributes of the characters in the first information group The type of the information group, the header information is added to the second information group, and the header information is used to mark the type of the first information group.
- the information group header information includes at least two types
- the information group header information includes at least three types.
- the method further includes:
- the third information group includes m bytes; adding header information to the third information group according to the type of the first information group and the correspondence between the type of the pre-stored information group and the type of the information group header information;
- a method for decoding an Ethernet physical layer including:
- the second information group includes type information of n boundary characters and position information, n ⁇ 1, n is an integer, or the second information group includes information of all characters of the third type;
- the second information group includes the type information of the n boundary characters and the location information, obtain n boundary characters to be added according to the type information and the location information of the n boundary characters, and delete the n boundary characters.
- Type information and location information generating, by the n boundary characters to be added, and the characters in the second information group, the first information group, where the first information group includes m bytes;
- the second information group includes information that is all of the third type of characters, deleting the information that is all the third type of characters, and decompressing the characters in the second information group to obtain the first information.
- the first information group includes m bytes.
- the n boundary characters to be added, and the second information group are The character is generated by the first information group, and the first information group includes m bytes, including: adding the n boundary characters to be added in the second information group to obtain a first information group;
- the n boundary characters to be added, and the second The character in the information group generates a first information group, where the first information group includes m bytes, including: decompressing characters in the second information group, and adding the second information group in the decompressed group The added n boundary characters are mentioned to obtain the first information group.
- an encoding apparatus including: a determining unit, a detecting unit, a generating unit, and an adding unit, where
- the determining unit is configured to determine a first information group to be encoded; the first information group includes m characters, m ⁇ 2, and m is an integer; the character attribute of any one of the characters is a data character, a boundary character, or a Three types of characters, one character occupies one byte, and the third type of character is a character other than the data character and the boundary character;
- the detecting unit is configured to detect characters of each character in the first information group Attributes
- the generating unit is configured to: if the first information group includes n boundary characters, n ⁇ l, n is an integer, delete the n boundary characters, and divide the first information group by the n a character other than the boundary character, the type information of the n boundary characters, and the position information to generate a second information group, where the second information group includes m bytes;
- the adding unit is configured to add header information to the second information group according to the type of the first information group and the correspondence between the type of the pre-stored information group and the type of the information group header information; the first information
- the kind of the group is determined by the kind of the pre-stored information group and the character attribute of the character in the first information group.
- the generating unit is specifically configured to:
- deleting the n boundary characters to obtain n idle bytes moving the characters before the nth idle byte of the n idle bytes backwards, so that the first information group
- the remaining mn characters are recorded in consecutive bytes; and the type information and the position information of the n boundary characters are recorded in at least the first n bytes of the first information group to obtain a second information group, the second information group
- the information group consists of m bytes.
- the generating unit is specifically configured to:
- n bytes of the n boundary characters are sufficient to record the type information of the n boundary characters and the location information, record the n boundary characters in the first n bytes of the first packet The type information and the location information, to obtain a second information group, where the second information group includes m bytes;
- the n bytes occupied by the n boundary characters are insufficient to record the type information and the location information of the n boundary characters, at least one of the remaining mn characters of the first information group Compressing to make the remaining mn words
- An idle bit is generated at a front end of the section, and the type information and the location information of the n boundary characters are recorded in the first n bytes of the first information group and the idle bit, to obtain a second information group, where the second information is obtained.
- the group consists of m bytes.
- the adding unit is specifically configured to: if the n boundary characters occupy the n bytes are insufficient to record the n boundary characters The type information and the location information, the header information is added to the second information group according to the type of the first information group determined by the character attribute of the character in the first information group, and the header information is used for marking The type of the first information group.
- the information group header information includes at least two types
- the information group header information includes at least three types.
- the apparatus further includes a compression unit, the compression unit is configured to compress at least one third type of character such that a front end of the first information group has idle bits; the generating unit is further configured to: record the idle bit All of the first information groups are the third type of characters, and the third information group is obtained, where the third information group includes m bytes; the adding unit is further configured to: according to the type of the first information group and Corresponding relationship between the type of the pre-stored information group and the type of the information group header information, adding header information to the third information group; or the adding unit is further configured to: according to the type of the first information group and pre-stored Corresponding relationship between the type of the information group and the type of the information group header information, the header information is added to the first information group, and the header information of the first information group is used to mark all of the first information group as the third Class character.
- the compression unit is configured to compress at least one third type of character such that a front end of the first information group has idle bits
- the generating unit is further configured
- a decoding apparatus including: a determining unit and a generating unit, among them,
- the determining unit is configured to determine a second information group to be decoded and header information of the second information group, where the second information group includes m bytes, m ⁇ 2, and m is an integer; Determining the header information of the second information group and the type of the pre-stored information group, determining that the second information group includes type information of n boundary characters and location information, n ⁇ l, n is an integer, or the second information group includes all Information for the third type of character;
- the generating unit is configured to: if the second information group includes type information of the n boundary characters and the location information, obtain the n boundary characters to be added according to the type information and the location information of the n boundary characters, and delete The type information of the n boundary characters and the location information; generating the first information group by the n boundary characters to be added and the characters in the second information group, where the first information group includes m words Or; if the second information group includes information of all the third type of characters, deleting the information of all the third type of characters, and decompressing the characters in the second information group to obtain the first A packet, the first packet includes m bytes.
- the generating unit is specifically used. Adding the n boundary characters to be added to the second information group to obtain a first information group;
- the generating unit is specifically configured to: use the characters in the second information group The decompressing is performed, and the n boundary characters to be added are added to the decompressed second information group to obtain a first information group.
- the method and device for encoding and decoding an Ethernet physical layer in a first information group having a length of at least two bytes and including n boundary characters, ⁇ >1, deleting the n a boundary character, and generating a second information group by using characters other than the n boundary characters, type information of the n boundary characters, and position information, and adding header information to the second information group, thereby implementing the first information group Encoding; or, by decoding the second block by the method corresponding to the above, obtaining the first block; improving the encoding/decoding efficiency and the flexibility of selecting the length of the block to be encoded/decoded.
- FIG. 1 is a flowchart of an encoding method according to an embodiment of the present invention
- FIG. 2 is a flow chart of a method for generating a second information group according to an embodiment of the present invention
- FIG. 3 is a schematic diagram of a method for generating a second information group according to an embodiment of the present invention
- FIG. 4 is a schematic diagram of another method for generating a second information group according to an embodiment of the present invention.
- FIG. 5 is a flowchart of a decoding method according to an embodiment of the present invention.
- FIG. 6 is a schematic diagram of a decoding method according to an embodiment of the present invention.
- FIG. 7 is a schematic diagram of another decoding method according to an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of an encoding apparatus according to an embodiment of the present invention
- FIG. 9 is a schematic structural diagram of another encoding apparatus according to an embodiment of the present invention
- FIG. 1 is a schematic structural diagram of a decoding apparatus according to an embodiment of the present invention
- FIG. 12 is a schematic structural diagram of another decoding apparatus according to an embodiment of the present invention.
- an encoding method of an Ethernet physical layer includes:
- the first information group includes m characters, m ⁇ 2, and m is an integer; wherein a character attribute of any one character is a data character, a boundary character, or a third class character, The character occupies one byte, and the third type of character is a character other than the data character and the boundary character;
- the coding method provided by the embodiment of the present invention is mainly applied to an Ethernet, and specifically relates to coding of information data on a UI interface by an Ethernet physical coding layer PCS.
- Ethernet is a packet network technology with the smallest byte size, and is a two-way character interface.
- the group continuously transmits information groups to the PCS.
- the information group generally uses 8-bit transmit or receive (character) data (Transmit/Receive Data, TXD/RXD for short) and 1-bit transmit or receive (character) control (signal) ( The combination of Transmit/Receive (character) Control (signal) ) , referred to as TXC/RXC ) is the basic unit.
- a message group is generally composed of one or more basic units, each of which records one character, and the character attribute of each character can be a data character, a boundary character, or a third type of character.
- the transmission form of the information group is described below.
- a packet can include at least 64 bytes and can include up to 151 8 bytes. These include: a 6-byte destination address, a 6-byte source address, a 2-byte packet type/length information, and at least 46-byte packet payload information and padding information.
- a packet In the case of a 7-byte leading byte and a 1-byte frame start byte, a packet consists of a minimum of 72 bytes and a maximum of 1526 bytes.
- the characters of all the bytes included in one packet are collectively referred to as data characters, and are represented by /D/.
- the first byte of the preamble can be marked as /S/(Start)
- the next byte after the end of a packet can be marked as /T/(terminator)
- /S/ and /T/ are called boundaries. character.
- the contiguous character between a packet and a packet is called an Inter-Packet Gap (IPG) and can be labeled as /I/(Idle). Since /1/ is a non-information character, people sometimes transmit other useful information at the /1/ location, so replace part of /1/ with other useful information characters.
- the present invention does not limit whether /1/ replaces other characters, and will not be distinguished in the following descriptions, and is collectively referred to as the third type of characters, and is marked as /1/.
- ⁇ When there is no packet transmission, ⁇ continues to transmit /1/ to the PCS; when there is packet transmission, Mil transmits the packet to the PCS.
- IPG when the packet contains a leading byte and a frame start byte It includes at least 12 bytes.
- the transmission form of the information group can be: /1/, /S/, a group,
- the information group that Mil transmits several basic units at a time can be determined by the transmission method used.
- 10GE (10 Gigabit Ethernet) transmission mode is: Interface width of 4 basic units, that is, 10GE medium unrelated interface (lOGbps Media Independent Inteface, referred to as XGMII)
- XGMII 10GE medium unrelated interface
- TXD/RXD[0:31]+TXC/RXC[0:3], (8+1) *4 36-bit interface bit width operates at 312.5MHz clock frequency;
- XLGMII Media Independent Inteface
- the PCS determines the first information group to be encoded, and the first information group may include at least two bytes. For example, a continuous 56 bytes, 64 bytes, or 70 bytes, etc., may be selected in the packet as the first packet.
- the encoded core content may include: if the first information group includes a boundary character, indicating the type of the first information group, and the type and location of the boundary character.
- the first information group includes n boundary characters, n ⁇ l, n is an integer, deleting the n boundary characters, and dividing the first information group by the n boundary characters. Character, type information of the n boundary characters, and location information generation a second information group, where the second information group includes m bytes;
- the second information group is composed of characters other than n boundary characters, type information of n boundary characters, and position information in the first information group, and is equal to the length of the first information group.
- the position information of the n boundary characters may include each of the boundary characters on the first byte in the first block.
- the type information of the n boundary characters and the position information are recorded in at least n bytes of the front end of the second block, and characters other than the n boundary characters in the first block are recorded in the second block. The remaining bytes.
- the specific implementation manner of obtaining the second information group by the first information group in step 103 may include, but is not limited to, the following two situations:
- the operation includes two steps of deleting and exchanging, and the execution order of the two steps is not limited, that is, it may be deleted first and then exchanged, or may be exchanged first and then deleted.
- the second type deleting the n boundary characters to obtain n idle bytes; moving the character before the nth idle byte of the n idle bytes backwards, so that the first information group
- the remaining mn characters are recorded in consecutive bytes; and the type information and the position information of the n boundary characters are recorded in at least the first n bytes of the first information group to obtain a second information group
- the second packet includes m bytes.
- the case includes two steps of deleting and moving.
- the second case has more operational steps than the first case, so the first case is taken as the preferred implementation.
- the operation step "recording the type information and the position information of the n boundary characters in at least the first n bytes of the first information group to obtain a second information group,
- the second information group includes m bytes, which can be specifically implemented in the following two cases:
- the transmission form of the information stream in general, when the number of characters included in the first information group is ⁇ 64, n bytes of n boundary characters in the first information group are sufficient The type information of the n boundary characters and the position information are recorded. At this time, it is not necessary to compress the characters in the first block.
- the idle bit records the type information of the n boundary characters and the location information to obtain a second information group, where the second information group includes m bytes.
- 8 bits can be used to identify the position of a boundary character.
- the first n bytes of the first block can record the position information of n boundary characters, but no free bytes are used to record the type information of n boundary characters.
- the type of the first information group is the type of the pre-stored information group and the character attribute of the character in the first information group Determined.
- the header information may be used to identify the type of the first information group or to identify the type of the first information group together with the header information of the first information group. If the first information group includes n boundary characters, the header information of the first information group may be: type information and location information of the n boundary characters; if the first information group is all the third type of characters, The header information of the first information group may be: identifier information that is all of the third type of characters in the first information group.
- the step 104 may include: if the n bytes occupied by the n boundary characters are insufficient to record the type information of the n boundary characters and the location information, according to the characters of the characters in the first information group The type of the first information group determined by the attribute adds header information to the second information group, and the header information is used to mark the type of the first information group.
- the implementation method is the same as the application scenario of the implementation method of (2) above, that is, "the n bytes occupied by the n boundary characters are insufficient to record the type information and location of the n boundary characters.
- Two ways to implement the "information" scenario In contrast to the implementation method of (2) above, the implementation method is: Instead of compressing the characters, the type of the first information group is marked in the header information.
- the free byte after deleting the 2 boundary characters is only enough to mark the position information of the 2 boundary characters. That is, there is no free bit to mark the type information of the two boundary characters, and according to the order of the two boundary characters, it can be divided into two types: /S//T/, /T ⁇ S/. Therefore, the two types can be marked with two different header information.
- the method further includes:
- the third information group includes m bytes; a correspondence between the type of the first information group and the type of the pre-stored information group and the type of the information group header information, adding header information to the third information group; exemplarily, the header information may be added to the second information group
- the content of the header information is the same.
- adding header information to the first information group, and the header information of the first information group It is used to mark all of the first information groups as the third type of characters.
- the implementation method is not to compress the characters, and the header information is used to mark all of the first information groups as the third type of characters.
- the information group header information includes at least two types; or, if the pre-stored information group The type of the information group is a full data character type, a full third type character type, and a boundary character type, and the information group header information includes at least three types.
- the type of the header information may be the same as the type of the preset information group, and the type of the preset information group may be at least two types (A/B) or at least three types (A/B/C), where Type C can be further divided into C 1 /C2 and the like.
- the type of the preset information group is two types: a full data character type, a non-full data character type, and optionally, the two types are marked with one bit of the header information;
- the header information of the first packet is marked as 0; otherwise, it is marked as 1.
- the type of the preset information group is at least three types: a full data character type, a full third type character type, and a boundary character type, optionally, the three or more types are marked with at least two bits of header information;
- the header information of the first information group is marked as C (or alternately labeled as C 1 : 00, C2 : 1 1 , to ensure that the number of 1 and 0 is equivalent);
- the header information of the first information group is marked as A: 01;
- the header information of the first information group is marked as B:10.
- the type of the preset information group may be other types, which is not limited in this embodiment; and if the type of the pre-stored information is the above-mentioned enumeration, the header information of the first information group may be marked in other manners. This embodiment does not limit this. In addition, in this embodiment, the bits occupied by the header information of the first information group are not limited.
- the encoding method of the first information group is: adding header information to the first information group.
- the Ethernet packet does not include the leading byte and the frame start byte, at least 64 bytes are included, and the packet interval is at least 12 bytes; when the first packet contains the number of bytes
- the first information group can contain up to 3 boundary characters, which introduces more complicated cases for coding, and when the first information group included in the first information group exceeds 76 bytes, the overhead is reduced. It doesn't make much sense. Therefore, in practical applications, m ⁇ 64 can be reasonably selected to encode the first information group. Accordingly, in the case where the packet includes a leading byte and a frame start byte, m ⁇ 72 can be reasonably selected for the first information group. Encode.
- the method provided by the embodiment of the present invention is also applicable to m>64 in the case where the packet does not include the leading byte and the frame start byte (or m>72 if the packet includes the leading byte and the frame starting byte) Scenes.
- the encoding method provided by the embodiment of the present invention is based on byte encoding.
- the length of the first information group to be encoded can be flexibly selected, so that FEC can be flexibly selected.
- the operation is simple and easy to implement. Thereby improving the coding efficiency.
- the method for encoding an Ethernet physical layer in a first information group having a length of at least two bytes and including n boundary characters, n ⁇ l, deleting the n boundary characters, and
- the second information group is generated by the characters other than the n boundary characters, the type information of the n boundary characters, and the position information, and the header information is added to the second information group, thereby implementing encoding of the first information group.
- the above coding method will be described in detail below through a specific embodiment. See Figure 2, including:
- the first information group contains 64 characters (the preamble and the frame start byte are not included in the packet), and the type of the first information group is assumed to be: a full data character type (type A), including a boundary character type. (Type B) and the entire third type of character type (Type C).
- type A a full data character type
- Type B a boundary character type
- Type C the entire third type of character type
- the possible combinations of 64 consecutive characters include:
- the first type all third class characters /1/; type C;
- the fourth contains the boundary character /S/ and the data character /D/; type B;
- the fifth type contains the data character /D/; type A;
- the sixth type contains the data character /D/ and the boundary character /T/; type B;
- the seventh type contains the data character /D/, the boundary character /T/ and the third type of character /1/;
- the eighth type contains the data character /D/ boundary character /T/, the third type of character /1/ and the boundary type B;
- the tenth contains the boundary character / ⁇ /, the third type of character /1/.
- the first information group may contain at most two boundary characters, as shown in Table 1, which is a representation of the header information of several first information groups.
- the first information group does not include /T/ And /S/, which only contain /S/, contain only /T/, including /T/ and /s/.
- Table 1 is a representation of the header information of several first information groups.
- Table 1 is a representation of the header information of several first information groups.
- the first information group does not include /T/ And /S/, which only contain /S/, contain only /T/, including /T/ and /s
- the first information group is a full data character type (type A), a boundary character type (type B), and a full third type character type (type C).
- the first information group is 64/D/.
- the header information of the first information group can be represented by A: 01. Therefore, the coding result of the first information group can be For: Header information ( 01 ), 64 /D/.
- the specific implementation steps may be: exchanging the first n characters of the first information group and the n boundary characters; deleting the n boundary characters to obtain n idle bytes; The byte records the type information and position information of the boundary character.
- the first information group contains 64 (2 6 ) characters, at most 2 boundary characters can appear in the first information group, so two
- TS the type information of the boundary character in the first information group
- the first is / ⁇ / and the second is /s/.
- the position of the boundary character recorded on any one of the first blocks can be marked with 6 bits, that is, the first information can be recorded with 6 bits.
- the following is a description of the method for generating a second information group in the encoding process by using the first information group: 30 /D/, ⁇ , 12 /1/, /S eight 20 /D/ as an example:
- the first step exchanging the first two characters of the first information group and the two boundary characters; that is, performing the switching operation on the first character of the first information group and /T/, and the second character of the first information group /S/ performs an exchange operation;
- Step 2 Delete the 2 boundary characters; after deleting the boundary characters, the first 2 bytes of the first information group become idle bytes;
- the first two bytes include 16 bits, and the type information and the position information of the two boundary characters occupy 14 bits in total, so that two bits RR can be reserved.
- Step 1 Delete the 2 boundary characters to get 2 free bytes
- Step 2 The characters between the first third type character and the second idle byte (ie, the 32nd character to the 43rd character of the first information group) are sequentially moved backward by one byte, and the first The character before a free byte (that is, the first character to the 30th character of the first packet) is sequentially moved backward by two bytes;
- Step 3 Same as the third step in 1) above, and will not be described here.
- 40GE/100GE defines that if there is /S/ in the 64b/66b coded block, the /S/ can only appear in the first byte of the 64b/66b coded block, so it corresponds to 8 64b/66b coded blocks.
- ⁇ sets the first information group to: 8 / 1 eight /S eight 55 / D /;
- the first information group header information is 10.
- the method has a relatively small application scope, but the method is used to increase the reserved bits within the applicable range, and the reserved bits can be used to mark other functions.
- the embodiment does not limit this; the latter has a wide application range and can be applied to the encoding process of any one of the first information groups.
- the coding result of the first information group is: header information (B: 10), combination type information of boundary characters (11), and location information of boundary characters (T-POS: 011111, S-POS: 101011) , two reserved bits RR, 30 / D /, 12 / 1 / 20 / D /.
- results of the third step record are not involved in FIG. 3 or FIG. 4, and the result of the third step is the coding result.
- the first information group is 64/1/, as shown in Table 1, the header information of the first information group can be represented by C, and the type of the header information in Table 1 is: header information 2 In the case of (two bits), the header information can be used to uniquely mark the situation. Therefore, the encoding result of the first packet can be: header information (C:00), 64/1/.
- the types of information groups include full data character types and non-full data character types.
- the relationship between the type of the first information group and the header information type can be as shown in Table 3.
- the inclusion of the boundary character type and the full control character type can be distinguished by marking the type information of the TS. table 3
- the following uses the header information 0 in Table 3 as an example.
- the coding result of the first information group may be: header information A (0), 64 /D/.
- the encoding result of the first information group in step 207 is: header information B ( l ), type information TS ( 11 ) of the boundary character, position information of the boundary character (T-POS: 011110, S-POS: 10101), two Reserved bits RR, 30/D/, 12/1/, 20/D/.
- the coding result of the first information group may be: header information (1), information indicating that all characters in the first information group are all third type characters (00), compression of 6 bits/Ic eight 63/1/ Or, the header information (1) marks information (00) of the third type of characters in the first field, 7 bits of compression/Icl/, 7 bits of /Ic2/, 62/1/.
- a method for decoding an Ethernet physical layer according to an embodiment of the present invention includes: 501: Determine a second information group to be decoded and header information of the second information group, where the second information group includes m bytes, m ⁇ 2;
- the decoding method provided by the embodiment of the present invention corresponds to the encoding method in the foregoing embodiment, and is the inverse process of the foregoing encoding method, and therefore, is only briefly described.
- the PMA transmits the information group to the PCS, where the information group is the information group to be decoded, and the PCS determines the length of the second information group according to the preset length of the information group to be decoded, and according to the preset information of the information group.
- the occupied bits determine the header information of the second information group.
- the second information group may be any one of a boundary character type, a third type character type, and a full data character type.
- the second information group is a full data character type, since the header information is not part of the second information group in this embodiment, the second information group does not need to be decoded.
- the information is part of the second information group, in which case the decoding of the second information group is to remove the header information.
- the second information group includes type information of the n boundary characters and the location information, obtain n boundary characters to be added according to the type information and the location information of the n boundary characters, and delete the n boundaries.
- Type information of the character and the location information generating the first information group by the n boundary characters to be added and the characters in the second information group, where the first information group includes m bytes; or, if The second information group includes information of all the third type of characters, and the information of all the idle bytes is deleted, and the characters in the second information group are decompressed to obtain the first information group.
- the n boundary characters to be added and the second a character in the information group generates a first information group, where the first information group includes m bytes: adding the n boundary characters to be added in the second information group to obtain a first information group;
- the n boundary characters to be added and the characters in the second information group are generated into a first information group, where the first information group Include m bytes, including: decompressing characters in the second information group, and adding the n boundary characters to be added in the decompressed second information group to obtain a first information group.
- the embodiment is only the reverse process of the foregoing coding method, that is, if the step in the foregoing coding method is to compress the first information group, the decoding method is The corresponding step is to decompress the second information group; the step in the foregoing coding method is to delete and record the type information and the location information of the boundary character of the first information group, and the corresponding step in the decoding method is according to the boundary.
- the type information and position information of the character are added with the boundary character and the type information and the position information of the boundary character are deleted, and the like, which will not be described in detail herein.
- the method for decoding an Ethernet physical layer provided by the embodiment of the present invention, by determining a second information group of at least two bytes in length, when the second information group includes type information and location information of boundary characters, the added n a boundary character, and deleting the type information of the boundary character and the position information, and generating the first information group having the same number of bytes as the second information group, and the n boundary characters to be added and the characters in the second information group.
- the second information group contains information of all the third type of characters, deleting the information of all the idle bytes, and decompressing the characters in the second information group to obtain the same
- the second information group has the same number of first information groups, thereby completing decoding; improving the decoding efficiency and the flexibility of selecting the length of the information group to be decoded.
- the above decoding method will be described in detail below through two specific embodiments. In both embodiments, the selected second information group contains 64 characters (the preamble and the frame start byte are not included in the packet).
- the type information of the second information group is recorded in the first two characters of the second information group, and is represented by 00/01 / 10/ 1 1 respectively, where 00 indicates that the second information group does not include /T/ and /S / , 01 means that the second information group only contains /S/, 10 means that the second information group only contains /T/, and 1 1 means that the second information group contains /T/ and /S/.
- the second information group is decoded to generate a first information group.
- the second type of information group is: full data character type (type A), contains boundary character type (type B), and all third type character type (type C).
- type A full data character type
- type B contains boundary character type
- type C all third type character type
- Table 2 The relationship between the type of the second information group and the header information of the second information group is as shown in Table 2.
- the header information of the second information group includes: A: 01, B: 10, C: 00.
- 603 If the header information of the second information group is: A: 01, the second information group is used as the first information group;
- header information of the second information group is: C:00, deleting type information of the second information group recorded by the first two bits of the second information group, and performing characters in the second information group Decompressing to obtain the first information group;
- header information of the second information group is: B: 10, the type information of the n boundary characters and the location information are deleted, where n may be 0, 1, or 2; n boundary characters to be added, And generating a first information group by characters in the second information group;
- n boundary characters to be added may be determined according to type information of the second information group and location information.
- the header information type of the second information group is the header information 0 in Table 3
- the type information of the second information group is recorded in the first two of the second information group. Characters, denoted by 00/01/10/11.
- 701 Determine a second information group to be decoded and header information of the second information group; 702: detect the second information group header information;
- 703 If the header information of the second information group is: A: 0, the second information group is used as the first information group; 704: If the header information of the second information group is: B: l, determine whether the first two bits of the second information group are 00;
- n boundary characters and location information where n may be 0, 1, or 2; generating n first boundary characters to be added, and characters in the second information group to generate first information Group
- n boundary characters to be added may be determined according to type information of the second information group and location information.
- the method for decoding an Ethernet physical layer provided by the embodiment of the present invention, by determining a second information group of at least two bytes in length, when the second information group includes type information and location information of boundary characters, the added n a boundary character, and deleting the type information of the boundary character and the position information, and generating the first information group having the same number of bytes as the second information group, and the n boundary characters to be added and the characters in the second information group.
- an encoding apparatus 80 is provided to perform the encoding method described in FIG. 1, the encoding apparatus 80 includes: a determining unit 801, a detecting unit 802, a generating unit 803, and adding Unit 804, wherein
- the determining unit 801 is configured to determine a first information group to be encoded; the first information group includes m characters, m ⁇ 2, and m is an integer; the character attribute of any one of the characters is a data character, a boundary character, or a third type of character, one character occupies one byte, the third type of character is a character other than the data character and the boundary character; the detecting unit 802 is configured to detect the first information group Of each character Character attribute
- the generating unit 803 is configured to: if the first information group includes n boundary characters, ⁇ >1, where n is an integer, delete the n boundary characters, and save the first information group Genes other than n boundary characters, type information of the n boundary characters, and position information to generate a second information group, where the second information group includes m bytes;
- the adding unit 804 is configured to add header information to the second information group according to the type of the first information group and the correspondence between the type of the pre-stored information group and the type of the information group header information;
- the type of the information group is determined by the type of the pre-stored information group and the character attribute of the character in the first information group.
- the generating unit 803 may be specifically configured to:
- deleting the n boundary characters to obtain n idle bytes moving the characters before the nth idle byte of the n idle bytes backwards, so that the first information group
- the remaining mn characters are recorded in consecutive bytes; and the type information and the position information of the n boundary characters are recorded in at least the first n bytes of the first information group to obtain a second information group, the second information group
- the information group consists of m bytes.
- the generating unit 803 may be specifically configured to:
- n bytes of the n boundary characters are sufficient to record the type information of the n boundary characters and the location information, record the n boundary characters in the first n bytes of the first packet The type information and the location information, to obtain a second information group, where the second information group includes m bytes;
- the n bytes occupied by the n boundary characters are insufficient to record the type information and the location information of the n boundary characters, at least one of the remaining mn characters of the first information group Compressing such that idle bits are present at the front end of the remaining mn bytes, and type information and location information of the n boundary characters are recorded in the first n bytes of the first packet and the idle bits, Get the first
- the second information group includes m bytes.
- the adding unit 804 may be specifically configured to: if the n bytes occupied by the n boundary characters are insufficient to record type information and location information of the n boundary characters, according to the first information The type of the first information group determined by the character attribute of the character in the group, the header information is added to the second information group, and the header information is used to mark the type of the first information group.
- the information group header information includes at least two types; or, if the pre-stored information
- the group type is a full data character type, a full third type character type, and a boundary character type, and the information group header information includes at least three types.
- the device 80 further includes a compression unit 805, configured to compress at least one third type of character, so that a front end of the first information group has idle bits;
- the generating unit 803 is further configured to: The idle bit records all the third information groups in the first information group, and obtains a third information group, where the third information group includes m bytes;
- the adding unit 804 is further configured to: a correspondence between the type of the first information group and the type of the pre-stored information group and the type of the information group header information, and adding header information to the third information group;
- the adding unit 804 may be further configured to: add the header information to the first information group according to the type of the first information group and the correspondence between the type of the pre-stored information group and the type of the information group header information.
- the header information of the first information group is used to mark all the first information groups as the third type of characters.
- An encoding apparatus in a first information group having a length of at least two bytes and including n boundary characters, n ⁇ l, deleting the n boundary characters, and dividing the n boundaries
- the character other than the character, the type information of the n boundary characters, and the position information generate a second block, and the header information is added to the second block, thereby implementing encoding of the first block.
- the flexibility of coding efficiency and the length of the set of information to be encoded are increased.
- another encoding apparatus 80 is provided to perform the encoding method of FIG. 1 , where the encoding apparatus 80 includes: a memory 1001 and a processor 1002, where
- the memory 1001 is used to store a set of codes for controlling the processor 1002 to perform the following actions:
- the first information group includes m characters, m>2, and m is an integer; the character attribute of any one of the characters is a data character, a boundary character, or a third class character, and one character is occupied. a byte, the third type of character being a character other than the data character and the boundary character;
- the first information group includes n boundary characters, n ⁇ l, n is an integer, the n boundary characters are deleted, and characters other than the n boundary characters in the first information group are deleted. And generating, by the type information of the n boundary characters and the location information, a second information group, where the second information group includes m bytes;
- the type of the first information group is pre-stored
- the type of information group and the character attribute of the character in the first information group are determined.
- the processor 1002 is further configured to perform the following actions:
- the third information group includes m bytes; adding header information to the third information group according to the type of the first information group and the correspondence between the type of the pre-stored information group and the type of the information group header information;
- An encoding apparatus in a first information group having a length of at least two bytes and including n boundary characters, n ⁇ l, deleting the n boundary characters, and dividing the n boundaries The character other than the character, the type information of the n boundary characters, and the position information generate a second block, and the header information is added to the second block, thereby implementing encoding of the first block.
- a decoding apparatus 1 10 is provided to perform the decoding method shown in FIG. 5, where the decoding apparatus 1 10 includes: a determining unit 1 101 and a generating unit 1 102. among them,
- the determining unit 1101 is configured to determine a second information group to be decoded and header information of the second information group, where the second information group includes m bytes, m ⁇ 2, and m is an integer; Determining the header information of the second information group and the type of the pre-stored information group, determining that the second information group includes type information of n boundary characters and location information, n ⁇ 1, n is an integer, or the second information group Contains information that is all of the third type of character;
- the generating unit 1102 is configured to obtain, if the second information group includes type information of n boundary characters and location information, obtain n boundary characters to be added according to type information and location information of the n boundary characters. Deleting the type information of the n boundary characters and the location information; generating the first information group by the n boundary characters to be added and the characters in the second information group, where the first information group includes m Bytes;
- the second information group includes information that is all of the third type of characters, deleting the information that is all the third type of characters, and decompressing the characters in the second information group to obtain the first information.
- the first information group includes m bytes.
- the generating unit 1102 may be specifically used in the second information group. Adding the n boundary characters to be added to obtain a first information group;
- the generating unit 1102 may be specifically configured to decompress characters in the second information group and add the decompressed second information group.
- the n boundary characters to be added obtain the first information group.
- the decoding apparatus by determining a second information group having a length of at least two bytes, when the second information group includes type information of the boundary character and the location information, adding n boundary characters, and Deleting the type information of the boundary character and the position information, and generating the first information group having the same number of bytes as the second information group by the n boundary characters to be added and the characters in the second information group, thereby completing decoding; or
- the second information group includes information that is all of the third type of characters, deleting the information that is all idle bytes, and decompressing the characters in the second information group to obtain the words with the second information group
- the first set of information having the same number of sections, thereby completing the decoding; improving the decoding efficiency and the flexibility of selecting the length of the block to be decoded.
- a decoding apparatus 1 10 is provided for performing the decoding method shown in FIG. 5, where the decoding apparatus 1 10 includes: a memory 1201 and a processor 120
- the memory 1201 is configured to store a set of codes for controlling the processor 1202 to perform the following actions:
- the second information group includes type information of n boundary characters and location information, where n ⁇ 1, n is an integer, or the second The information group contains information that is all of the third type of characters;
- the second information group includes the type information of the n boundary characters and the location information, obtain n boundary characters to be added according to the type information and the location information of the n boundary characters, and delete the n boundary characters.
- Type information and location information generating, by the n boundary characters to be added, and the characters in the second information group, the first information group, where the first information group includes m bytes;
- the decoding apparatus by determining a second information group having a length of at least two bytes, when the second information group includes type information of the boundary character and the location information, adding n boundary characters, and Deleting the type information of the boundary character and the position information, and generating the first information group having the same number of bytes as the second information group by the n boundary characters to be added and the characters in the second information group, thereby completing decoding; or
- the second information group includes information that is all of the third type of characters, deleting the information that is all idle bytes, and decompressing the characters in the second information group to obtain the words with the second information group
- the first set of information having the same number of sections, thereby completing the decoding; improving the decoding efficiency and the flexibility of selecting the length of the block to be decoded.
- the disclosed system, apparatus, and method may be implemented in other manners.
- the device embodiments described above are merely illustrative.
- the division of the unit is only a logical function division.
- there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
- the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
- the units described as separate components may or may not be physically separated, and the components displayed as the units may or may not be physical units, and may be located in one place or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiment of the present embodiment.
- each functional unit in various embodiments of the present invention may be integrated in one place In the unit, the units may be physically included separately, or two or more units may be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
- the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
- the software functional unit described above is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform portions of the steps of the various embodiments of the present invention.
- the foregoing storage medium includes: a U disk, a mobile hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a disk or an optical disk, and the like, which can store program codes.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种以太网物理层的编码、解码方法和装置,涉及通信技术领域,用以提高编码/解码效率以及选择待编码/解码的信息组的长度的灵活性。本发明提供的编码方法包括:确定待编码的第一信息组;第一信息组包括m个字符,m≥2,m为整数;其中任一字符的字符属性为数据字符、边界字符或者第三类字符,一个字符占用一个字节;检测第一信息组中的每个字符的字符属性;若第一信息组包含n个边界字符,n≥l,n为整数,则删除n个边界字符,并将第一信息组中除n个边界字符之外的字符、n个边界字符的类型信息以及位置信息生成第二信息组,第二信息组包括m个字节;为第二信息组添加头信息。
Description
一种以太网物理层的编码、 解码方法和装置 技术领域
本发明涉及通信技术领域, 尤其涉及一种以太网物理层的编码、 解码方法和装置。
背景技术
以太网是一种分组网络的数据链路层和物理层技术。 以太网的 数据链路层部分主要包括以太网的媒介访问控制层 ( Media Access Control , 简称 MAC )。 以太网的物理层部分主要包括: 调和适配子 层 ( Reconciliation Sub-layer , 简称 RS )、 介质无关接口 ( Media Independent Interface , 简称 ΜΠ )、 物理编码层 ( Physical Coding Sublayer , 简称 PCS )、 物理媒质连接子层 ( Physical Medium Attachment , 简称 PMA )、 物理媒质相关子层 ( Physical Medium Dependent , 简称 PMD ) 以及物理媒体介质和各层之间的接口等, 其中, RS适配链路层和物理层, 为 MAC与物理层经过 ΜΠ进行数 据交换提供所需的适配。
PCS用于对由 ΜΠ传输的信息组进行编码, 并将编码后的信息 组向 PMA传输, 以及对由 PMA传输的信息组进行解码, 并将解码 后的信息通过 ΜΠ传送给 RS/MAC层。
目前, 最常用的编码方式为 64b/66b 编码方式, 该方式用两个 比特的两种 ( 同步) 头信息 ( Ob l O , ObO l ) 标记两种类型的编码信 息组, 所述两种编码信息组类型根据信息组是否全部为数据字符将 ( 同步) 头信息标记为两种类型; 当信息组不只包含数据字符时, 将信息组的数据字符以外的控制字符进行压缩编码, 利用首个字节 记录该信, 组中数据字符和控制字符的有限组合。 该编码方式首先 广泛用于 10GE , 也应用于 40GE和 100GE ( 100 Gigabit Ethernet )。
在 10GE、 40GE、 100GE和第二代 100GE中, 为了减小 ( 同步) 头冗余开销,基于 64b/66b编码衍生出了 64b/66b到 5 12b/5 13b 编码 转换开销压缩技术 ( Trasncoding ) 以及 64b/66b到 256b/257b编码转
换开销压缩技术。
为适应新型的 100GE、 400GE ( 400 Gigabit Ethernet ) , 1000GE ( 1000 Gigabit Ethernet ) 等大容量高速以太网的发展, 提出了对以 太网物理层信息组编码技术的最佳编码开销比重, 低复杂度高灵活 性和高实现效率等新要求。
然而, 上述以太网物理层的编码方式至少存在如下问题: 不可 以灵活选择待编码的信息组的长度和 ( 同步) 头冗余开销。 一方面 限制了最优编码信息组长度的选择使用, 难以实现最佳 ( 同步) 头 开销控制, 另一方面, 限制了配套的物理层前向纠错( Forward Error Correction , 简称 FEC ) 编码选择。
发明内容
本发明公开了一种以太网物理层的编码、 解码方法和装置, 涉 及通信技术领域,用以提高编码 /解码效率以及选择待编码 /解码的信 息组的长度的灵活性。
第一方面, 提供一种以太网物理层的编码方法, 包括:
确定待编码的第一信息组; 所述第一信息组包括 m 个字符, m>2 , m 为整数; 其中任一字符的字符属性为数据字符、 边界字符 或者第三类字符, 一个字符占用一个字节, 所述第三类字符为除所 述数据字符和所述边界字符之外的字符;
检测所述第一信息组中的每个字符的字符属性;
若所述第一信息组包含 n个边界字符, n≥l , n为整数, 则删除 所述 n个边界字符, 并将所述第一信息组中除所述 n个边界字符之 外的字符、 所述 n 个边界字符的类型信息以及位置信息生成第二信 息组, 所述第二信息组包括 m个字节;
根据所述第一信息组的种类以及预存的信息组的种类与信息组 头信息的种类的对应关系, 为所述第二信息组添加头信息; 所述第 一信息组的种类由所述预存的信息组的种类和所述第一信息组中字 符的字符属性所确定。
在第一种可能的实现方式中, 结合第一方面, 所述删除所述 n
个边界字符, 并将所述第一信息组中除所述 n 个边界字符之外的字 符、 所述 n 个边界字符的类型信息以及位置信息生成第二信息组, 所述第二信息组包括 m个字节; 包括:
交换所述第一信息组的前 n个字符与所述 n个边界字符, 删除 所述 n个边界字符, 并在所述第一信息组的至少前 n个字节记录所 述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述 第二信息组包括 m个字节;
或者, 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n 个空闲字节中的第 n 个空闲字节之前的字符向后移动, 以使得所述 第一信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第一 信息组的至少前 n个字节记录所述 n个边界字符的类型信息以及位 置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
在第二种可能的实现方式中, 结合第一种可能的实现方式, 若所述 n个边界字符所占的 n个字节足以记录所述 n个边界字 符的类型信息以及位置信息, 则在所述第一信息组的至少前 n 个字 节记录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息 组, 所述第二信息组包括 m个字节, 包括:
在所述第一信息组的前 n个字节记录所述 n个边界字符的类型 信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字 节;
或者, 若所述 n个边界字符所占的 n个字节不足以记录所述 n 个边界字符的类型信息以及位置信息, 则在所述第一信息组的至少 前 n个字节记录所述 n个边界字符的类型信息以及位置信息, 得到 第二信息组, 所述第二信息组包括 m个字节, 包括:
对所述第一信息组的剩余 m-n个字符中的至少一个字符进行压 缩, 以使得所述剩余 m-n个字节的前端出现空闲比特, 在所述第一 信息组的前 n个字节以及所述空闲比特记录所述 n个边界字符的类 型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个 字节。
在第三种可能的实现方式中, 结合第一种可能的实现方式, 所述根据所述第一信息组中字符的字符属性所确定的所述第一 信息组的种类, 为所述第二信息组添加头信息, 包括:
若所述 n个边界字符所占的 n个字节不足以记录所述 n个边界 字符的类型信息以及位置信息, 则根据所述第一信息组中字符的字 符属性所确定的所述第一信息组的种类, 为所述第二信息组添加头 信息, 所述头信息用于标记所述第一信息组的种类。
在第四种可能的实现方式中, 结合第一方面以及第一种可能的 实现方式至第三种可能的实现方式任一种, m≤64 ,
若所述预存的信息组的种类为全数据字符类型和非全数据字符 类型, 则所述信息组头信息至少包括两种类型;
或者, 若所述预存的信息组的种类为全数据字符类型、 全第三 类字符类型和包含边界字符类型, 则所述信息组头信息至少包括三 种类型。
在第五种可能的实现方式中, 结合第一方面, 若所述第一信息 组中全部为第三类字符, 则所述方法还包括:
压缩至少一个第三类字符, 以使得所述第一信息组的前端出现 空闲比特; 并在所述空闲比特记录所述第一信息组中全部为第三类 字符, 得到第三信息组, 所述第三信息组包括 m个字节; 根据所述 第一信息组的种类以及预存的信息组的种类与信息组头信息的种类 的对应关系, 为所述第三信息组添加头信息;
或者, 根据所述第一信息组的种类以及预存的信息组的种类与 信息组头信息的种类的对应关系, 为所述第第一信息组添加头信息, 所述第一信息组的头信息用于标记所述第一信息组中全部为第三类 字符。
第二方面, 提供一种以太网物理层的解码方法, 包括:
确定待解码的第二信息组以及所述第二信息组的头信息, 所述 第二信息组包括 m个字节, m≥2 , m为整数;
根据所述第二信息组的头信息以及预存的信息组的种类, 确定
所述第二信息组包含 n个边界字符的类型信息以及位置信息, n≥ 1 , n为整数, 或者所述第二信息组包含全为第三类字符的信息;
若所述第二信息组包含 n 个边界字符的类型信息以及位置信 息, 则根据所述 n 个边界字符的类型信息以及位置信息获得待添加 的 n个边界字符, 删除所述 n个边界字符的类型信息以及位置信息; 将所述待添加的 n 个边界字符、 以及所述第二信息组中的字符生成 第一信息组, 所述第一信息组包括 m个字节;
或者, 若所述第二信息组包含全为第三类字符的信息, 则删除 所述全为第三类字符的信息, 并对所述第二信息组中的字符进行解 压, 得到第一信息组, 所述第一信息组包括 m个字节。
在第一种可能的实现方式中, 结合第二方面,
若所述 n 个边界字符的类型信息以及位置信息记录在所述第二 信息组的前 n个字节, 则所述将所述待添加的 n个边界字符、 以及 所述第二信息组中的字符生成第一信息组, 所述第一信息组包括 m 个字节, 包括: 在所述第二信息组中添加所述待添加的 n 个边界字 符, 得到第一信息组;
或者, 若所述 n 个边界字符的类型信息以及位置信息不只记录 在所述第二信息组的前 n个字节, 则所述将所述待添加的 n个边界 字符、 以及所述第二信息组中的字符生成第一信息组, 所述第一信 息组包括 m个字节, 包括: 对所述第二信息组中的字符进行解压, 并在解压后的第二信息组中添加所述待添加的 n 个边界字符, 得到 第一信息组。
第三方面, 提供一种编码装置, 包括: 确定单元、 检测单元、 生成单元以及添加单元, 其中,
所述确定单元, 用于确定待编码的第一信息组; 所述第一信息 组包括 m个字符, m≥2 , m为整数; 其中任一字符的字符属性为数 据字符、 边界字符或者第三类字符, 一个字符占用一个字节, 所述 第三类字符为除所述数据字符和所述边界字符之外的字符;
所述检测单元, 用于检测所述第一信息组中的每个字符的字符
属性;
所述生成单元,用于若所述第一信息组包含 n个边界字符, n≥l , n 为整数, 则删除所述 n 个边界字符, 并将所述第一信息组中除所 述 n个边界字符之外的字符、 所述 n个边界字符的类型信息以及位 置信息生成第二信息组, 所述第二信息组包括 m个字节;
所述添加单元, 用于根据所述第一信息组的种类以及预存的信 息组的种类与信息组头信息的种类的对应关系, 为所述第二信息组 添加头信息; 所述第一信息组的种类由所述预存的信息组的种类和 所述第一信息组中字符的字符属性所确定。
在第一种可能的实现方式中, 结合第三方面, 所述生成单元具 体用于,
交换所述第一信息组的前 n个字符与所述 n个边界字符, 删除 所述 n个边界字符, 并在所述第一信息组的至少前 n个字节记录所 述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述 第二信息组包括 m个字节;
或者, 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n 个空闲字节中的第 n 个空闲字节之前的字符向后移动, 以使得所述 第一信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第一 信息组的至少前 n个字节记录所述 n个边界字符的类型信息以及位 置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
在第二种可能的实现方式中, 结合第一种可能的实现方式, 所 述生成单元具体用于,
若所述 n个边界字符所占的 n个字节足以记录所述 n个边界字 符的类型信息以及位置信息, 则在所述第一信息组的前 n 个字节记 录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节;
或者, 若所述 n个边界字符所占的 n个字节不足以记录所述 n 个边界字符的类型信息以及位置信息, 则对所述第一信息组的剩余 m-n个字符中的至少一个字符进行压缩, 以使得所述剩余 m-n个字
节的前端出现空闲比特, 在所述第一信息组的前 n 个字节以及所述 空闲比特记录所述 n 个边界字符的类型信息以及位置信息, 得到第 二信息组, 所述第二信息组包括 m个字节。
在第三种可能的实现方式中, 结合第一种可能的实现方式, 所述添加单元具体用于, 若所述 n个边界字符所占的 n个字节 不足以记录所述 n 个边界字符的类型信息以及位置信息, 则根据所 述第一信息组中字符的字符属性所确定的所述第一信息组的种类, 为所述第二信息组添加头信息, 所述头信息用于标记所述第一信息 组的种类。
在第四种可能的实现方式中, 结合第三方面以及第一种可能的 实现方式至第三种可能的实现方式任一种, m≤64 ,
若所述预存的信息组的种类为全数据字符类型和非全数据字符 类型, 则所述信息组头信息至少包括两种类型;
或者, 若所述预存的信息组的种类为全数据字符类型、 全第三 类字符类型和包含边界字符类型, 则所述信息组头信息至少包括三 种类型。
在第五种可能的实现方式中, 结合第三方面, 若所述第一信息 组中全部为第三类字符, 则
所述装置还包括压缩单元, 所述压缩单元用于压缩至少一个第 三类字符, 以使得所述第一信息组的前端出现空闲比特; 所述生成 单元还用于, 在所述空闲比特记录所述第一信息组中全部为第三类 字符, 得到第三信息组, 所述第三信息组包括 m个字节; 所述添加 单元还用于, 根据所述第一信息组的种类以及预存的信息组的种类 与信息组头信息的种类的对应关系, 为所述第三信息组添加头信息; 或者, 所述添加单元还用于, 根据所述第一信息组的种类以及 预存的信息组的种类与信息组头信息的种类的对应关系, 为所述第 第一信息组添加头信息, 所述第一信息组的头信息用于标记所述第 一信息组中全部为第三类字符。
第四方面, 提供一种解码装置, 包括: 确定单元以及生成单元,
其中,
所述确定单元, 用于确定待解码的第二信息组以及所述第二信 息组的头信息, 所述第二信息组包括 m个字节, m≥2 , m为整数; 根据所述第二信息组的头信息以及预存的信息组的种类, 确定所述 第二信息组包含 n个边界字符的类型信息以及位置信息, n≥l , n为 整数, 或者所述第二信息组包含全为第三类字符的信息;
所述生成单元, 用于若所述第二信息组包含 n 个边界字符的类 型信息以及位置信息, 则根据所述 n 个边界字符的类型信息以及位 置信息获得待添加的 n个边界字符, 删除所述 n个边界字符的类型 信息以及位置信息; 将所述待添加的 n 个边界字符、 以及所述第二 信息组中的字符生成第一信息组, 所述第一信息组包括 m个字节; 或者, 若所述第二信息组包含全为第三类字符的信息, 则删除 所述全为第三类字符的信息, 并对所述第二信息组中的字符进行解 压, 得到第一信息组, 所述第一信息组包括 m个字节。
在第一种可能的实现方式中, 结合第四方面, 若所述 n 个边界 字符的类型信息以及位置信息记录在所述第二信息组的前 n 个字 节, 则所述生成单元具体用于, 在所述第二信息组中添加所述待添 加的 n个边界字符, 得到第一信息组;
或者, 若所述 n 个边界字符的类型信息以及位置信息不只记录 在所述第二信息组的前 n 个字节, 则所述生成单元具体用于, 对所 述第二信息组中的字符进行解压, 并在解压后的第二信息组中添加 所述待添加的 n个边界字符, 得到第一信息组。
本发明实施例提供的以太网物理层的编码、 解码的方法和装置, 在一个长度为至少两个字节、 且包含 n个边界字符的第一信息组中, η> 1 , 删除该 n个边界字符, 并将除该 n个边界字符之外的字符、 n 个边界字符的类型信息以及位置信息生成第二信息组, 以及为第二 信息组添加头信息, 从而实现对第一信息组的编码; 或者, 通过用 与上述相对应的方法对第二信息组进行解码, 得到第一信息组; 提 高了编码 /解码效率以及选择待编码 /解码的信息组的长度的灵活性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下 面将对实施例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例, 对于 本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以 根据这些附图获得其他的附图。
图 1 为本发明实施例提供的一种编码方法流程图;
图 2 为本发明实施例提供的一种生成第二信息组的方法流程 图;
图 3 为本发明实施例提供的一种生成第二信息组的方法示意 图;
图 4 为本发明实施例提供的另一种生成第二信息组的方法示意 图;
图 5为本发明实施例提供的一种解码方法流程图;
图 6为本发明实施例提供的一种解码方法示意图;
图 7为本发明实施例提供的另一种解码方法示意图;
图 8为本发明实施例提供的一种编码装置的结构示意图; 图 9为本发明实施例提供的另一种编码装置的结构示意图; 图 10为本发明实施例提供的另一种编码装置的结构示意图; 图 1 1 为本发明实施例提供的一种解码装置的结构示意图; 图 12为本发明实施例提供的另一种解码装置的结构示意图。 具体实施方式
下面结合附图对本发明实施例提供的以太网物理层的编码、 解 码方法和装置进行详细描述。
一方面, 参见图 1 , 为本发明实施例提供的一种以太网物理层 的编码方法, 包括:
101 : 确定待编码的第一信息组; 所述第一信息组包括 m 个字 符, m≥2 , m 为整数; 其中任一字符的字符属性为数据字符、 边界 字符或者第三类字符, 一个字符占用一个字节, 所述第三类字符为
除所述数据字符和所述边界字符之外的字符;
示例性的, 本发明实施例提供的编码方法主要应用于以太网中, 具体涉及以太网物理编码层 PCS对 ΜΠ接口上的信息数据的编码。
以太网是一种以字节为最小颗粒的分组网络技术, ΜΠ 为双向 字符接口。 ΜΠ源源不断地向 PCS传输信息组, 信息组一般以 8比 特的发送或接收(字符)数据( Transmit/Receive Data ,简称 TXD/RXD ) 和 1 比特的发送或接收(字符)控制(信号) ( Transmit/Receive (character) Control (signal) ) , 简称 TXC/RXC ) 的组合为基本单位。
信息组一般由一个或者多个基本单位构成, 每个基本单位记录 一个字符, 每个字符的字符属性可以为数据字符、 边界字符或者第 三类字符。
下面介绍信息组的传输形式。
首先需要引 出分组的概念: 在不包含前导字节和帧开始字节的 情况下, 一个分组最少可以包括 64个字节, 最多可以包括 151 8个 字节。 具体包括: 6字节的目 的地址, 6字节的源地址, 2字节的分 组类型 /长度信息, 至少 46 字节的分组载荷信息和填充信息。 在包 含 7字节的前导字节和 1 字节的帧开始字节的情况下, 一个分组最 少包括 72个字节, 最多包括 1526个字节。
需要说明的是, 本发明实施例中将一个分组中包含的所有字节 的字符统称为数据字符, 并用 /D/表示。 一般的, 前导码的第一字节 可以标记为 /S/ ( Start ) , 一个分组结束后的下一个字节可以标记为 /T/ ( terminator ) , 将 /S/和 /T/称为边界字符。
分组与分组之间的连续字符称为分组间隙 ( Inter-Packet Gap , 简称 IPG) , 可以标记为 /I/(Idle)。 由于 /1/是确定无信息字符, 人们有 时候在 /1/的位置上传输其他有用信息, 因此将部分 /1/替换为其他有 用信息字符。 本发明对是否将 /1/替换其他字符并不做限定, 后续描 述中将不加以区分, 一律统称为第三类字符, 并标记为 /1/。
当没有分组传输时, ΜΠ向 PCS持续传输 /1/; 当有分组传输时, Mil 向 PCS 传输分组。 当分组包含前导字节和帧开始字节时, IPG
至少包括 12个字节。
综上所述, 信息组的传输形式可以为: /1/、 /S/、 一个分组、
ΙΎΙ、 至少 12个 /1/、 /S/、 一个分组 。
Mil 一次传输几个基本单位的信息组可以由其所采用的传输方 式确定, 例如, 10GE ( 10 Gigabit Ethernet ) 的传输方式为: 采用 4 个基本单位的接口位宽, 即 lOGbps 10GE 媒质不相关接口 ( lOGbps Media Independent Inteface , 简 称 XGMII ) 以
TXD/RXD[0:31]+TXC/RXC[0:3], ( 8+1 ) *4=36比特的接口位宽工作 在 312.5MHz的时钟频率; 40GE ( 40 Gigabit Ethernet ) 的传输方式 为: 采用 8 个基本单位的接口位宽, 即 40Gbps 40GE 媒质不相关 接口 ( 40Gbps Media Independent Inteface , 简称 XLGMII ) 以 TXD/RXD[0:63]+TXC/RXC[0:7], ( 8+1 ) *8=72比特的接口位宽工作 在 625MHz的时钟频率。
PCS接收 ΜΠ传输的信息组后, 确定待编码的第一信息组, 第 一信息组可以包括至少两个字节。 例如, 可以在信息组中选择连续 56个字节、 64个字节或者 70个字节等, 作为第一信息组。
示例性的, 编码的核心内容可以包括: 若第一信息组中包含边 界字符, 则指示第一信息组的种类, 以及边界字符的类型和位置。
102: 检测所述第一信息组中的每个字符的字符属性;
示例性的, PCS 的输入信息组和输出信息组中的每个字符以 "TXD +TXC"的形式传输, 即每个中的字符均包含 TXC/RXC指示信 息, 其中, TXC /RXC=0用于指示该字符为数据字符, TXC /RXC=1 用于指示该字符为非数据字符, 该非数据字符可以为边界字符或者 第三类字符任一种。 对 TXC=1情况, 结合字符本身进一步明确其为 边界字符或者第三类字符。因此,可以通过检测每个字符对应的 TXC 和字符本身来检测该字符的字符属性。
103: 若所述第一信息组包含 n 个边界字符, n≥l , n 为整数, 则删除所述 n个边界字符, 并将所述第一信息组中除所述 n个边界 字符之外的字符、 所述 n 个边界字符的类型信息以及位置信息生成
第二信息组, 所述第二信息组包括 m个字节;
示例性的, 第二信息组由第一信息组中除 n 个边界字符之外的 字符、 n 个边界字符的类型信息以及位置信息组成, 且与第一信息 组的长度相等。 n 个边界字符的类型信息可以包括: 每个边界字符 是 /S/还是 /T/ , 以及 n个边界字符的组合方式, 例如, 若 n=2 , 则 2 个边界字符的类型信息为 /T〃S/或者 /S〃T/, 若 n= l , 则 1 个边界字符 的类型信息为: /T/或者 /S/。 n个边界字符的位置信息可以包括每个 边界字符在第一信息组中的第几个字节上。
一般情况下, n个边界字符的类型信息以及位置信息记录在第 二信息组的前端的至少 n个字节, 第一信息组中除 n个边界字符之 外的字符记录在第二信息组的剩余字节。
进一步地, 步骤 103 中由第一信息组获得第二信息组的具体实 现方式可以包括但不限于以下两种情况:
第一种: 交换所述第一信息组的前 n个字符与所述 n个边界字 符, 删除所述 n个边界字符, 并在所述第一信息组的至少前 n个字 节记录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息 组, 所述第二信息组包括 m个字节;
示例性的, 该情况中包含删除和交换两个操作步骤, 该两个步 骤的执行顺序不作限定, 即可以为先删除再交换, 也可以为先交换 再删除。
第二种: 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n 个空闲字节中的第 n 个空闲字节之前的字符向后移动, 以使得所 述第一信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第 一信息组的至少前 n个字节记录所述 n个边界字符的类型信息以及 位置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
示例性的, 该情况中包含删除和移动两个操作步骤。
一般情况下, 第二种情况比第一种情况的操作步骤多, 因此将 第一种情况作为优选的实现方式。
进一步地, 根据 n个边界字符所占的 n个字节是否足以记录该
n个边界字符的类型信息以及位置信息, 操作步骤"在所述第一信息 组的至少前 n个字节记录所述 n个边界字符的类型信息以及位置信 息, 得到第二信息组, 所述第二信息组包括 m个字节", 可以具体实 现为以下两种情况:
( 1 )若所述 n个边界字符所占的 n个字节足以记录所述 n个边 界字符的类型信息以及位置信息时, 贝' J :
在所述第一信息组的前 n个字节记录所述 n个边界字符的类型 信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字 节;
示例性的, 根据信息流的传输形式可知, 一般情况下, 当第一 信息组中包含的字符的个数≤64 时, 第一信息组中的 n 个边界字符 所占的 n个字节足以记录 n个边界字符的类型信息以及位置信息, 此时, 不需要对第一信息组中的字符进行压缩。
( 2 )若所述 n个边界字符所占的 n个字节不足以记录所述 n个 边界字符的类型信息以及位置信息, 贝' J :
对所述第一信息组的剩余 m-n个字符中的至少一个字符进行压 缩, 以使得所述剩余 m-n个字节的前端出现空闲比特, 在所述第一 信息组的前 n个字节以及所述空闲比特记录所述 n个边界字符的类 型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个 字节。
示例性的, 当第一信息组包含 256 ( ) 个字符, 即 m=256时, 可以用 8个比特标识一个边界字符的位置。 第一信息组的前 n个字 节可以记录 n 个边界字符的位置信息, 但是没有空闲字节用来记录 n 个边界字符的类型信息。 可以根据记录该 n 个边界字符的类型信 息所需占用的空间来确定待压缩的字节。 例如, 当 n=2 时, 可以将 第一信息组的第 n+ 1 个字节中的字符压缩为 6个比特, 或者, 可以 将第一信息组的第 n+ 1 个字节中的字符和第 n+2个字节中的字符分 别压缩为 7个比特。
104 : 根据所述第一信息组的种类以及预存的信息组的种类与信
息组头信息的种类的对应关系, 为所述第二信息组添加头信息; 所 述第一信息组的种类由所述预存的信息组的种类和所述第一信息组 中字符的字符属性所确定。
示例性的, 头信息可以用于标识第一信息组的种类, 或者与第 一信息组的头信息一起标识第一信息组的种类。 其中, 若第一信息 组中包含 n 个边界字符, 则第一信息组的头信息可以为: n 个边界 字符的类型信息和位置信息; 若第一信息组中全为第三类字符, 则 第一信息组的头信息可以为: 标识该第一信息组中全为第三类字符 的信息。
进一步地, 步骤 104 可以包括: 若所述 n个边界字符所占的 n 个字节不足以记录所述 n 个边界字符的类型信息以及位置信息, 则 根据所述第一信息组中字符的字符属性所确定的所述第一信息组的 种类, 为所述第二信息组添加头信息, 所述头信息用于标记所述第 一信息组的种类。
示例性的, 该实现方法与上述( 2 )的实现方法的应用场景相同, 即为"所述 n个边界字符所占的 n个字节不足以记录所述 n个边界字 符的类型信息以及位置信息"的场景下的两种实现方法。 与上述( 2 ) 的实现方法对比, 该实现方法为: 不需要对字符进行压缩, 而是在 头信息中标记第一信息组的种类。
例如, 当 m=256 , n=2时, 由于每个边界字符的位置信息需要 1 个字节来标记, 删除该 2 个边界字符之后的空闲字节只够标记该 2 个边界字符的位置信息, 即没有空闲比特可以标记该 2 个边界字符 的类型信息, 且根据该 2个边界字符的次序不同可以分为两种类型: /S//T/ , /T〃S/。 因此, 可以用两种不同的头信息标记该两种类型。
进一步地, 若所述第一信息组中全部为第三类字符, 则所述方 法还包括:
压缩至少一个第三类字符, 以使得所述第一信息组的前端出现 空闲比特; 并在所述空闲比特记录所述第一信息组中全部为第三类 字符, 得到第三信息组, 所述第三信息组包括 m个字节; 根据所述
第一信息组的种类以及预存的信息组的种类与信息组头信息的种类 的对应关系, 为所述第三信息组添加头信息; 示例性的, 该头信息 可以与上述第二信息组添加的头信息的内容相同。
或者, 根据所述第一信息组的种类以及预存的信息组的种类与 信息组头信息的种类的对应关系, 为所述第第一信息组添加头信息, 所述第一信息组的头信息用于标记所述第一信息组中全部为第三类 字符。 示例性的, 该实现方法为不对字符进行压缩, 用头信息标记 第一信息组中全部为第三类字符。
进一步地, m≤64 , 若所述预存的信息组的种类为全数据字符类 型和非全数据字符类型, 则所述信息组头信息至少包括两种类型; 或者, 若所述预存的信息组的种类为全数据字符类型、 全第三 类字符类型和包含边界字符类型, 则所述信息组头信息至少包括三 种类型。
示例性的, 头信息的种类可以与预设的信息组的种类相同, 预 设的信息组的种类可以为至少两种 ( A/B ) 或者至少三种(A/B/C) , 其中, 类型 C又可以区分为 C 1 /C2等。
例如, 若预设的信息组的种类为两种类型: 全数据字符类型、 非全数据字符类型, 可选的, 用一个比特的头信息标记该两种类型; 可选的, 当检测的第一信息组中每个字符的字符属性均为数据字符 时, 则将该第一信息组的头信息标记为 0 ; 相反, 则标记为 1。
若预设的信息组的种类为至少三种类型: 全数据字符类型、 全 第三类字符类型、 包含边界字符类型, 可选的, 用至少两个比特的 头信息标记该三种以上类型; 可选的, 当检测的第一信息组中每个 字符的字符属性均为第三类字符时, 则将该第一信息组的头信息标 记为 C (或者交替标记为 C 1 : 00、 C2 : 1 1 , 以保证 1和 0的数量相当 ); 当检测的第一信息组中每个字符的字符属性均为数据字符时, 则将 该第一信息组的头信息标记为 A: 01 ; 当检测的第一信息组中的其中 至少一个字符的字符属性为边界字符时, 则将该第一信息组的头信 息标记为 B : 10。 三比特或者以上以此类推。
当然, 预设的信息组的种类还可以为其他种类, 本实施例对此 不作限定; 且即使预存的信息的种类为上述列举的情况, 也可以用 其他方式标记第一信息组的头信息, 本实施例对此不作限定; 另夕卜, 本实施例对第一信息组的头信息所占的比特也不作限定。
进一步地, 若第一信息组中的字符均为数据字符, 则对该第一 信息组的编码方法为: 为该第一信息组添加头信息。
需要说明的是, 目前以太网分组在不包含前导字节和帧开始字 节的情况下, 最少包括 64个字节, 分组间隔最小为 12个字节; 当 第一信息组包含的字节数 m 大于等于 76 时, 该第一信息组最多可 以包含 3 个边界字符, 为编码引入更复杂的情况, 且第一信息组中 包含的第一信息组超过 76个字节时, 从降低开销来讲意义不大。 因 此, 在实际应用中, 可以合理选择 m<64 对第一信息组进行编码, 相应的, 在分组包含前导字节和帧开始字节的情况下, 可以合理选 择 m<72 对第一信息组进行编码。 但是本发明实施例提供的方法也 适用于在分组不包含前导字节和帧开始字节的情况下 m>64 (或者在 分组包含前导字节和帧开始字节的情况下 m>72 ) 的场景。
进一步地, 本发明实施例提供的编码方法是基于字节的编码, 一方面, 可以灵活选择待编码的第一信息组的长度, 从而可以灵活 选择 FEC ; 另一方面, 操作简单, 易于实现, 从而提高了编码效率。
本发明实施例提供的以太网物理层的编码方法, 在一个长度为 至少两个字节、 且包含 n个边界字符的第一信息组中, n≥l , 删除该 n个边界字符, 并将除该 n个边界字符之外的字符、 n个边界字符的 类型信息以及位置信息生成第二信息组, 以及为第二信息组添加头 信息, 从而实现对第一信息组的编码。 提高了编码效率以及选择待 编码的信息组的长度的灵活性。 下面通过一个具体的实施例对上述编码方法进行详细说明。 参见图 2 , 包括:
201 : 确定待编码的第一信息组;
本实施例中假设第一信息组包含 64个字符(分组中不包含前导 字节和帧开始字节),假设第一信息组的种类为:全数据字符类型(类 型 A)、 包含边界字符类型 (类型 B ) 以及全第三类字符类型 (类型 C)。 根据信息组的传输方式可知, 64个连续字符可能出现的组合方 式包括:
第一种: 全为第三类字符 /1/; 类型 C;
第二种: 包含第三类字符 /1/和边界字符 /S/; 类型 B;
第三种: 包含第三类字符 /1/、 边界字符 /S/和数据字符 /D/; 类型
B;
第四种 包含边界字符 /S/和数据字符 /D/; 类型 B;
第五种 包含数据字符 /D/; 类型 A;
第六种 包含数据字符 /D/和边界字符 /T/; 类型 B;
第七种 包含数据字符 /D/、 边界字符 /T/和第三类字符 /1/;
B;
第八种: 包含数据字符 /D/ 边界字符 /T/、 第三类字符 /1/和边界 类型 B;
第九种: 包含边界字符 /T/ 第三类字符 /1/和边界字符 /S/; 类型
Β;
第十种: 包含边界字符 /Τ/、 第三类字符 /1/。 类型 Β;
下面介绍 64字节的第一信息组的头信息的表示方式。
该第一信息组至多可以包含两个边界字符, 参见表 1, 为几种 该第一信息组的头信息的表示方式。 其中, TS用于标记该第一信息 组中是否有边界字符 /Τ/或 /S/, TS=00、 01、 10、 11分别表示以下四 种情况: 该第一信息组不包含 /T/和 /S/, 只包含 /S/, 只包含 /T/, 包 含 /T/和 /s/。
表 1
本实施例中, 假设预存的第一信息组的种类与该第一信息组的 头信息的关系如表 2所示:
表 2
202: 检测第一信息组中的每个字符的字符属性;
检测结果: 第一信息组为全数据字符类型 (类型 A)、 包含边界 字符类型 (类型 B) 以及全第三类字符类型 (类型 C) 任一种。
203: 判断第一信息组中是否全为数据字符:
204: 若是, 则为第一信息组添加头信息 A;
示例性的, 此情况下, 第一信息组为 64个 /D/, 参见表 2可知, 该第一信息组的头信息可以用 A:01表示, 因此, 该第一信息组的编 码结果可以为: 头信息 ( 01 )、 64个 /D/。
205: 若否, 则判断第一信息组中是否包含 n个边界字符;
206: 若是, 则将第一信息组生成第二信息组;
具体实现步骤可以为: 交换第一信息组的前 n个字符与该 n个 边界字符; 删除该 n个边界字符, 得到 n个空闲字节; 在 n个空闲
字节记录该边界字符的类型信息和位置信息。
下面对边界字符的类型信息和位置信息的表示方式进行说明: 当第一信息组包含 64 ( 26 ) 个字符时, 该第一信息组中最多可 以出现 2 个边界字符, 因此可以用两个比特标记第一信息组中边界 字符的类型信息 ( TS=00: 全部为第三类字符; TS = 10: 有 T无 S; TS=01: 无 T有 S; TS=11: 有 T有 S; )。 例如当第一信息组为第二、 三、 四种组合方式中的任一种时, 该第一信息组中的边界字符的类 型信息可以标记为 TS=01, 表示只包含一个边界字符, 且为 /S/; 当 第一信息组为第六、 七、 十任一种组合方式时, 该第一信息组中的 边界字符的类型信息可以标记为 TS = 10, 表示只包含一个边界字符, 且为 /T/; 当第一信息组为第八、 九任一种组合方式时, 该第一信息 组中的边界字符的类型信息可以标记为 TS = 11, 表示包含 2 个边界 字符, 且第一个为 /τ/、 第二个为 /s/。
当第一信息组包含 64 ( 26 ) 个字符时, 可以用 6个比特标记该 第一信息组中任何一个字节上记录的边界字符的位置, 即可以用 6 个比特记录该第一信息组的边界字符的位置信息。 例如, 假设第一 信息组中包含 64个字符, 且依次为: 30个 /D/、 ΙΊΙ、 12个 /1/、 /S八 20 个 /D/, 则 /T/的位置信息可以表示为六比特: T-POS=011110, /S/ 的位置信息可以表示为六比特: S-POS = 101011。
下面以第一信息组为: 30 个 /D/、 ΙΊΙ、 12 个 /1/、 /S八 20 个 /D/ 为例对编码过程中生成第二信息组的方法进行说明:
1 ) 参见图 3,
第一步: 交换第一信息组的前 2个字符与该 2个边界字符; 即 对第一信息组的首个字符与 / T /执行交换操作, 对第一信息组的第二 个字符与 /S/执行交换操作;
第二步: 删除该 2 个边界字符; 删除边界字符之后, 第一信息 组前 2个字节成为空闲字节;
第三步: 在第一信息组的前 2个字节 ( 图 2 中删除边界字符后 的空闲字节) 记录该 2个边界字符的类型信息 TS = 11 以及位置信息
T-POS、 S-POS, 得到第二信息组, 第二信息组包括 64 个字节; 边 界字符的顺序 /T//S/, 则在第一信息组的前 2个字节记录的该 2个边 界字符的类型信息以及位置信息为: 11-011110-RR-101011, 其中, R表示预留的一个比特位; 最前端两个比特上的 11(TS = 11)表示该第 一信息组包含 2个边界字符而且边界字符的顺序为先 /T/后 /S/, 第一 个为 /T/、 第二个为 /S/, 011110 表示 /Τ/的位置信息 T-POS, 101011 表示 /S/的位置信息 S-POS。 需要说明的是, 前 2个字节包含 16个比 特, 该 2个边界字符的类型信息以及位置信息共占 14个比特, 因此 可以预留两个比特 RR。
2 ) 参见图 4,
第一步: 删除该 2个边界字符, 得到 2个空闲字节;
第二步:将第 1 个第三类字符至第 2个空闲字节之间的字符(即 第一信息组的第 32个字符至第 43个字符)依次向后移动一个字节, 将第一空闲字节之前的字符(即第一信息组的首个字符至第 30个字 符) 依次向后移动两个字节;
第三步: 与上述 1 ) 中第三步相同, 此处不再贅述。
另外, 下面介绍另一种记录边界符号的位置信息的方法, 该方 法可以应用于某些限定 /S/或者 /T/的位置的情景下。
40GE/100GE中一般使用 64b/66b的编码方式进行编码, 如果考 虑应用本发明对 40GE/100GE中的 64b/66b编码数据方法进行编码转 换, 例如对 8个 64b/66b编码块, 每块 8字节, 8x8=64个字节进行 编码转换, 即第一信息组包含 m=64个字节。
由于 40GE/100GE 中限定了若 64b/66b编码块中有 /S/, 则该 /S/ 只能出现在 64b/66b编码块的第一个字节, 因此在 8个 64b/66b编码 块 对 应 的 64 字 节 的 第 一 信 息 组 中 , /S/ 只 能 出 现 在 POS=0, 8, 16, 24, 32, 40, 48, 56,八个位置。因此可以只用 3个比特记录该 /S/的位置信息, /T/的位置信息的记录方法、 边界字符的类型信息的 记录方法、 头信息的标记方法、 获得第二信息组的操作步骤, 均与 上述具体实施例中的方法相同。 例如, ^^设第一信息组为: 8个 /1八
/S八 55 个 /D/; 预设的边界字符的顺序 /T〃S/; 第一信息组的头信息 为 10。 则第一信息组的编码结果可以为: 头信息 ( 01 )、 边界字符 的类型信息 ( 01 )、 /S/的位置为 POS=0,8, 16,24,32,40,48,56中的第二 个位置, 用信息 ( 001 )、 若 S-POS独占一个字节, 则剩余 5个预留 比特 R、 55个 /D/。
该方法与上述具体实施例中的方法相比可知, 前者的适用范围 比较小, 但是在可适用范围内使用该方法使得预留的比特增多, 这 些预留的比特可以用来标记其他功能, 本实施例对此不进行限定; 后者的适用范围广, 可以适用于任一种第一信息组的编码过程中。
207: 为第二信息组添加头信息 B;
示例性的, 该第一信息组的编码结果为: 头信息 ( B:10)、 边界 字符的组合类型信息 ( 11 )、 边界字符的位置信息 ( T-POS:011111, S-POS: 101011 ), 两个预留比特 RR、 30个 /D/、 12个 /1/、 20个 /D/。
需要说明的是, 图 3 或图 4 中均没有涉及第三步记录的结果, 第三个步骤的结果即为编码结果。
208, 若否, 则为该第一信息组添加头信息 C, ( C=B:01或其他 Cl、 C2)。
示例性的, 此情况下, 第一信息组为 64个 /1/, 参见表 1可知, 该第一信息组的头信息可以用 C表示, 对表 1 中的头信息类型为: 头信息 2(两比特)的情况, 用头信息可唯一标记该情况, 因此, 该第 一信息组的编码结果可以为: 头信息 ( C:00)、 64个 /1/。
该实施例还可以包括以下情况:
信息组的种类包括全数据字符类型、 非全数据字符类型, 第一 信息组的类型与头信息类型的关系可以为表 3 所示。 此情况下, 包 含边界字符类型和全控制字符类型可以通过标记 TS 的类型信息进 行区分。
表 3
下面以表 3 中的头信息 0为例进行说明。
步骤 204 中, 第一信息组的编码结果可以为: 头信息 A ( 0)、 64个 /D/。 步骤 207 中第一信息组的编码结果为: 头信息 B ( l )、 边 界字符的类型信息 TS ( 11 )、 边界字符的位置信息 ( T-POS:011110, S-POS:101011 )、 两个预留比特 RR、 30个 /D/、 12个 /1/、 20个 /D/。
步骤 208 中, 由于只根据头信息不可以 区分第一信息组中是否 包含边界字符, 因此需要在第一信息组的前端标记全为第三类字符 的信息 TS=00。 由于步骤 207 中第一信息组的前两个比特用于标记 边界字符的类型信息, 且边界字符的顺序 /T〃S/, 由步骤 207可知, 边界字符的类型信息没有用到 00, 因此可以用 00 来标记该第一信 息组中全为第三类字符的信息。 该情况下, 步骤 208 可以包括: 将 第一信息组中的首个字符进行压缩出两个空闲比特, 并标记为 00,。 因此, 该第一信息组的编码结果可以为: 头信息 ( 1 )、 标记该第一 信息组中全为第三类字符的信息 ( 00)、 6比特的压缩 /Ic八 63个 /1/, 或者,头信息( 1 )、标记该第一信息组中全为第三类字符的信息( 00)、 7比特的压缩 /Icl/、 7比特的 /Ic2/、 62个 /1/。
本发明实施例提供的以太网物理层的编码方法, 在一个长度为 至少两个字节、 且包含 n个边界字符的第一信息组中, n≥l, 删除该 n个边界字符, 并将除该 n个边界字符之外的字符、 n个边界字符的 类型信息以及位置信息生成第二信息组, 以及为第二信息组添加头 信息, 从而实现对第一信息组的编码。 提高了编码效率以及选择待 编码的信息组的长度的灵活性。 一方面, 参见图 5, 为本发明实施例提供的一种以太网物理层 的解码方法, 包括:
501 : 确定待解码的第二信息组以及所述第二信息组的头信息, 所述第二信息组包括 m个字节, m≥2 ;
示例性的, 本发明实施例提供的解码方法与上述实施例中的编 码方法相对应, 为上述编码方法的逆过程, 因此, 只作简单描述。
PMA向 PCS传输信息组, 该信息组即为待解码的信息组, PCS 根据预设的待解码的信息组的长度确定第二信息组的长度, 以及根 据预设的信息组的头信息的所占的比特确定第二信息组的头信息。
502 : 根据所述第二信息组的头信息以及预存的信息组的种类, 确定所述第二信息组包含 n 个边界字符的类型信息以及位置信息, η> 1 , 或者所述第二信息组包含全为第三类字符的信息;
示例性的, 由上述编码方法可知, 该第二信息组可以为包含边 界字符类型、 全第三类字符类型以及全数据字符类型任一种。 当该 第二信息组为全数据字符类型时, 由于本实施例中没有将头信息作 为第二信息组的一部分, 因此不需要对该第二信息组进行解码; 需 要说明的是, 若认为头信息为第二信息组的一部分, 则该情况下对 第二信息组的解码为去除该头信息。
503 : 若所述第二信息组包含 n个边界字符的类型信息以及位置 信息, 则根据所述 n 个边界字符的类型信息以及位置信息获得待添 加的 n个边界字符, 删除所述 n个边界字符的类型信息以及位置信 息; 将所述待添加的 n 个边界字符、 以及所述第二信息组中的字符 生成第一信息组, 所述第一信息组包括 m个字节; 或者, 若所述第 二信息组包含全为第三类字符的信息, 则删除所述全为空闲字节的 信息, 并对所述第二信息组中的字符进行解压, 得到第一信息组。
进一步地, 若所述 n 个边界字符的类型信息以及位置信息记录 在所述第二信息组的前 n个字节, 则所述将所述待添加的 n个边界 字符、 以及所述第二信息组中的字符生成第一信息组, 所述第一信 息组包括 m个字节: 在所述第二信息组中添加所述待添加的 n个边 界字符, 得到第一信息组;
或者, 若所述 n 个边界字符的类型信息以及位置信息不只记录
在所述第二信息组的前 n个字节, 则所述将所述待添加的 n个边界 字符、 以及所述第二信息组中的字符生成第一信息组, 所述第一信 息组包括 m个字节, 包括: 对所述第二信息组中的字符进行解压, 并在解压后的第二信息组中添加所述待添加的 n 个边界字符, 得到 第一信息组。
示例性的, 由于上述编码方法的实施例介绍的比较详细, 本实 施例仅为上述编码方法的逆过程, 即若上述编码方法中的步骤为对 第一信息组进行压缩, 则该解码方法中与其对应的步骤即为对第二 信息组进行解压; 上述编码方法中的步骤为删除并记录第一信息组 的边界字符的类型信息和位置信息, 该解码方法中与其对应的步骤 即为根据边界字符的类型信息和位置信息添加边界字符并删除边界 字符的类型信息和位置信息, 等等, 此处不再详述。
本发明实施例提供的以太网物理层的解码方法, 通过确定一个 长度为至少两个字节的第二信息组, 当该第二信息组包含边界字符 的类型信息以及位置信息时, 添加的 n 个边界字符, 并删除边界字 符的类型信息以及位置信息, 并将待添加的 n 个边界字符、 以及第 二信息组中的字符生成与第二信息组的字节数相同的第一信息组, 从而完成解码; 或者, 当第二信息组包含全为第三类字符的信息时, 删除所述全为空闲字节的信息, 并对所述第二信息组中的字符进行 解压, 得到与第二信息组的字节数相同的第一信息组, 从而完成解 码; 提高了解码效率以及选择待解码的信息组的长度的灵活性。 下面通过两个具体的实施例对上述解码方法进行详细说明。 该两个实施例中, 选择的第二信息组均包含 64个字符 (分组中 不包含前导字节和帧开始字节)。 该第二信息组的类型信息记录在该 第二信息组的前两个字符, 分别用 00/01 / 10/ 1 1表示, 其中, 00表示 该第二信息组不包含 /T/和 /S/ , 01 表示该第二信息组只包含 /S/ , 10 表示该第二信息组只包含 /T/ , 1 1 表示该第二信息组包含 /T/和 /S/。 该两个实施例中第二信息组经解码后生成第一信息组。
实施例一
假设第二信息组的种类为: 全数据字符类型 (类型 A)、 包含边 界字符类型 (类型 B ) 以及全第三类字符类型 (类型 C)。 第二信息 组的种类与该第二信息组的头信息的关系如表 2所示。
参见图 6, 包括:
601: 确定待解码的第二信息组以及该第二信息组的头信息; 示例性的, 该第二信息组的头信息包括: A:01 、 B:10、 C:00 任一种。
602: 检测该第二信息组头信息;
603: 若该第二信息组的头信息为: A:01, 则将第二信息组作为 第一信息组;
604: 若该第二信息组的头信息为: C:00, 则删除该第二信息组 的前两个比特所记录的第二信息组的类型信息, 并对第二信息组中 的字符进行解压, 得到第一信息组;
605: 若该第二信息组的头信息为: B:10, 则删除 n个边界字符 的类型信息以及位置信息, 其中, n可以为 0、 1 或 2; 将待添加的 n个边界字符、 以及第二信息组中的字符生成第一信息组;
示例性的, 根据第二信息组的类型信息以及位置信息可以确定 待添加的 n个边界字符。
606: 输出第一信息组。
实施例二
假设第二信息组的头信息类型为表 3 中的头信息 0 的情况, 若 第二信息组为非数据符号类型, 则该第二信息组的类型信息记录在 该第二信息组的前两个字符, 分别用 00/01/10/11表示。
参见图 7, 包括:
701: 确定待解码的第二信息组以及该第二信息组的头信息; 702: 检测该第二信息组头信息;
703: 若该第二信息组的头信息为: A:0, 则将第二信息组作为 第一信息组;
704 : 若该第二信息组的头信息为: B : l , 则判断该第二信息组 的前两个比特是否为 00 ;
705 : 若是, 删除该第二信息组的前两个比特所记录的第二信息 组的类型信息, 并对第二信息组中的字符进行解压, 得到第一信息 组;
706 : 若否, 则删除 n个边界字符的类型信息以及位置信息, 其 中, n可以为 0、 1 或 2 ; 将待添加的 n个边界字符、 以及第二信息 组中的字符生成第一信息组;
示例性的, 根据第二信息组的类型信息以及位置信息可以确定 待添加的 n个边界字符。
707 : 输出第一信息组。
本发明实施例提供的以太网物理层的解码方法, 通过确定一个 长度为至少两个字节的第二信息组, 当该第二信息组包含边界字符 的类型信息以及位置信息时, 添加的 n 个边界字符, 并删除边界字 符的类型信息以及位置信息, 并将待添加的 n 个边界字符、 以及第 二信息组中的字符生成与第二信息组的字节数相同的第一信息组, 从而完成解码; 或者, 当第二信息组包含全为第三类字符的信息时, 删除所述全为空闲字节的信息, 并对所述第二信息组中的字符进行 解压, 得到与第二信息组的字节数相同的第一信息组, 从而完成解 码; 提高了解码效率以及选择待解码的信息组的长度的灵活性。 一方面, 参见图 8 , 为本发明实施例提供的一种编码装置 80 , 用以执行图 1 所述的编码方法, 该编码装置 80包括: 确定单元 801、 检测单元 802、 生成单元 803 以及添加单元 804 , 其中,
所述确定单元 801 , 用于确定待编码的第一信息组; 所述第一 信息组包括 m个字符, m≥2 , m为整数; 其中任一字符的字符属性 为数据字符、 边界字符或者第三类字符, 一个字符占用一个字节, 所述第三类字符为除所述数据字符和所述边界字符之外的字符; 所述检测单元 802 , 用于检测所述第一信息组中的每个字符的
字符属性;
所述生成单元 803 , 用于若所述第一信息组包含 n个边界字符, η> 1 , n为整数, 则删除所述 n个边界字符, 并将所述第一信息组中 除所述 n个边界字符之外的字符、 所述 n个边界字符的类型信息以 及位置信息生成第二信息组, 所述第二信息组包括 m个字节;
所述添加单元 804 , 用于根据所述第一信息组的种类以及预存 的信息组的种类与信息组头信息的种类的对应关系, 为所述第二信 息组添加头信息; 所述第一信息组的种类由所述预存的信息组的种 类和所述第一信息组中字符的字符属性所确定。
进一步地, 所述生成单元 803具体可以用于,
交换所述第一信息组的前 n个字符与所述 n个边界字符, 删除 所述 n个边界字符, 并在所述第一信息组的至少前 n个字节记录所 述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述 第二信息组包括 m个字节;
或者, 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n 个空闲字节中的第 n 个空闲字节之前的字符向后移动, 以使得所述 第一信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第一 信息组的至少前 n个字节记录所述 n个边界字符的类型信息以及位 置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
进一步地, 所述生成单元 803具体可以用于,
若所述 n个边界字符所占的 n个字节足以记录所述 n个边界字 符的类型信息以及位置信息, 则在所述第一信息组的前 n 个字节记 录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节;
或者, 若所述 n个边界字符所占的 n个字节不足以记录所述 n 个边界字符的类型信息以及位置信息, 则对所述第一信息组的剩余 m-n个字符中的至少一个字符进行压缩, 以使得所述剩余 m-n个字 节的前端出现空闲比特, 在所述第一信息组的前 n 个字节以及所述 空闲比特记录所述 n 个边界字符的类型信息以及位置信息, 得到第
二信息组, 所述第二信息组包括 m个字节。
进一步地, 所述添加单元 804具体可以用于, 若所述 n个边界 字符所占的 n个字节不足以记录所述 n个边界字符的类型信息以及 位置信息, 则根据所述第一信息组中字符的字符属性所确定的所述 第一信息组的种类, 为所述第二信息组添加头信息, 所述头信息用 于标记所述第一信息组的种类。
可选的, m≤64 , 若所述预存的信息组的种类为全数据字符类型 和非全数据字符类型, 则所述信息组头信息至少包括两种类型; 或 者, 若所述预存的信息组的种类为全数据字符类型、 全第三类字符 类型和包含边界字符类型, 则所述信息组头信息至少包括三种类型。
进一步地, 若所述第一信息组中全部为第三类字符, 则参见图
9 ,
所述装置 80还包括压缩单元 805 , 所述压缩单元 805用于压缩 至少一个第三类字符, 以使得所述第一信息组的前端出现空闲比特; 所述生成单元 803 还可以用于, 在所述空闲比特记录所述第一信息 组中全部为第三类字符, 得到第三信息组, 所述第三信息组包括 m 个字节; 所述添加单元 804 还可以用于, 根据所述第一信息组的种 类以及预存的信息组的种类与信息组头信息的种类的对应关系, 为 所述第三信息组添加头信息;
或者, 所述添加单元 804 还可以用于, 根据所述第一信息组的 种类以及预存的信息组的种类与信息组头信息的种类的对应关系, 为所述第第一信息组添加头信息, 所述第一信息组的头信息用于标 记所述第一信息组中全部为第三类字符。
本发明实施例提供的编码装置, 在一个长度为至少两个字节、 且包含 n个边界字符的第一信息组中, n≥l , 删除该 n个边界字符, 并将除该 n 个边界字符之外的字符、 n 个边界字符的类型信息以及 位置信息生成第二信息组, 以及为第二信息组添加头信息, 从而实 现对第一信息组的编码。 提高了编码效率以及选择待编码的信息组 的长度的灵活性。
一方面,参见图 10 ,为本发明实施例提供的另一种编码装置 80 , 用以执行图 1 所述的编码方法, 该编码装置 80 包括: 存储器 1001 以及处理器 1002 , 其中,
存储器 1001 用于存储一组代码, 该代码用于控制处理器 1002 执行以下动作:
确定待编码的第一信息组; 所述第一信息组包括 m 个字符, m>2 , m 为整数; 其中任一字符的字符属性为数据字符、 边界字符 或者第三类字符, 一个字符占用一个字节, 所述第三类字符为除所 述数据字符和所述边界字符之外的字符;
检测所述第一信息组中的每个字符的字符属性;
若所述第一信息组包含 n个边界字符, n≥l , n为整数, 则删除 所述 n个边界字符, 并将所述第一信息组中除所述 n个边界字符之 外的字符、 所述 n 个边界字符的类型信息以及位置信息生成第二信 息组, 所述第二信息组包括 m个字节;
根据所述第一信息组的种类以及预存的信息组的种类与信息组 头信息的种类的对应关系, 为所述第二信息组添加头信息; 所述第 一信息组的种类由所述预存的信息组的种类和所述第一信息组中字 符的字符属性所确定。
进一步地, 若所述第一信息组中全部为第三类字符, 则处理器 1002还用于执行以下动作:
压缩至少一个第三类字符, 以使得所述第一信息组的前端出现 空闲比特; 并在所述空闲比特记录所述第一信息组中全部为第三类 字符, 得到第三信息组, 所述第三信息组包括 m个字节; 根据所述 第一信息组的种类以及预存的信息组的种类与信息组头信息的种类 的对应关系, 为所述第三信息组添加头信息;
或者, 根据所述第一信息组的种类以及预存的信息组的种类与 信息组头信息的种类的对应关系, 为所述第第一信息组添加头信息, 所述第一信息组的头信息用于标记所述第一信息组中全部为第三类 字符。
本发明实施例提供的编码装置, 在一个长度为至少两个字节、 且包含 n个边界字符的第一信息组中, n≥l , 删除该 n个边界字符, 并将除该 n 个边界字符之外的字符、 n 个边界字符的类型信息以及 位置信息生成第二信息组, 以及为第二信息组添加头信息, 从而实 现对第一信息组的编码。 提高了编码效率以及选择待编码的信息组 的长度的灵活性。 一方面, 参见图 1 1 , 为本发明实施例提供的一种解码装置 1 10 , 用以执行图 5所示的解码方法,该解码装置 1 10 包括:确定单元 1 101 以及生成单元 1 102 , 其中,
所述确定单元 1 101 , 用于确定待解码的第二信息组以及所述第 二信息组的头信息, 所述第二信息组包括 m个字节, m≥2 , m为整 数; 根据所述第二信息组的头信息以及预存的信息组的种类, 确定 所述第二信息组包含 n个边界字符的类型信息以及位置信息, n≥ 1 , n为整数, 或者所述第二信息组包含全为第三类字符的信息;
所述生成单元 1 102 , 用于若所述第二信息组包含 n个边界字符 的类型信息以及位置信息, 则根据所述 n 个边界字符的类型信息以 及位置信息获得待添加的 n个边界字符, 删除所述 n个边界字符的 类型信息以及位置信息; 将所述待添加的 n 个边界字符、 以及所述 第二信息组中的字符生成第一信息组, 所述第一信息组包括 m个字 节;
或者, 若所述第二信息组包含全为第三类字符的信息, 则删除 所述全为第三类字符的信息, 并对所述第二信息组中的字符进行解 压, 得到第一信息组, 所述第一信息组包括 m个字节。
进一步地, 若所述 n 个边界字符的类型信息以及位置信息记录 在所述第二信息组的前 n个字节, 则所述生成单元 1 102可以具体用 于, 在所述第二信息组中添加所述待添加的 n 个边界字符, 得到第 一信息组;
或者, 若所述 n 个边界字符的类型信息以及位置信息不只记录
在所述第二信息组的前 n个字节, 则所述生成单元 1 102可以具体用 于, 对所述第二信息组中的字符进行解压, 并在解压后的第二信息 组中添加所述待添加的 n个边界字符, 得到第一信息组。
本发明实施例提供的解码装置, 通过确定一个长度为至少两个 字节的第二信息组, 当该第二信息组包含边界字符的类型信息以及 位置信息时, 添加的 n 个边界字符, 并删除边界字符的类型信息以 及位置信息, 并将待添加的 n 个边界字符、 以及第二信息组中的字 符生成与第二信息组的字节数相同的第一信息组, 从而完成解码; 或者, 当第二信息组包含全为第三类字符的信息时, 删除所述全为 空闲字节的信息, 并对所述第二信息组中的字符进行解压, 得到与 第二信息组的字节数相同的第一信息组, 从而完成解码; 提高了解 码效率以及选择待解码的信息组的长度的灵活性。 一方面, 参见图 12 , 为本发明实施例提供的一种解码装置 1 10 , 用以执行图 5所示的解码方法, 该解码装置 1 10 包括: 存储器 1201 以及处理器 1202 , 其中,
存储器 1201 用于存储一组代码, 该代码用于控制处理器 1202 执行以下动作:
确定待解码的第二信息组以及所述第二信息组的头信息, 所述 第二信息组包括 m个字节, m≥2 , m为整数;
根据所述第二信息组的头信息以及预存的信息组的种类, 确定 所述第二信息组包含 n个边界字符的类型信息以及位置信息, n≥ 1 , n为整数, 或者所述第二信息组包含全为第三类字符的信息;
若所述第二信息组包含 n 个边界字符的类型信息以及位置信 息, 则根据所述 n 个边界字符的类型信息以及位置信息获得待添加 的 n个边界字符, 删除所述 n个边界字符的类型信息以及位置信息; 将所述待添加的 n 个边界字符、 以及所述第二信息组中的字符生成 第一信息组, 所述第一信息组包括 m个字节;
或者, 若所述第二信息组包含全为第三类字符的信息, 则删除
所述全为第三类字符的信息, 并对所述第二信息组中的字符进行解 压, 得到第一信息组, 所述第一信息组包括 m个字节。
本发明实施例提供的解码装置, 通过确定一个长度为至少两个 字节的第二信息组, 当该第二信息组包含边界字符的类型信息以及 位置信息时, 添加的 n 个边界字符, 并删除边界字符的类型信息以 及位置信息, 并将待添加的 n 个边界字符、 以及第二信息组中的字 符生成与第二信息组的字节数相同的第一信息组, 从而完成解码; 或者, 当第二信息组包含全为第三类字符的信息时, 删除所述全为 空闲字节的信息, 并对所述第二信息组中的字符进行解压, 得到与 第二信息组的字节数相同的第一信息组, 从而完成解码; 提高了解 码效率以及选择待解码的信息组的长度的灵活性。 所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述描述的系统, 装置和单元的具体工作过程, 可以参考前述方法 实施例中的对应过程, 在此不再贅述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统, 装置和方法, 可以通过其它的方式实现。 例如, 以上所描述的装置 实施例仅仅是示意性的, 例如, 所述单元的划分, 仅仅为一种逻辑 功能划分, 实际实现时可以有另外的划分方式, 例如多个单元或组 件可以结合或者可以集成到另一个系统, 或一些特征可以忽略, 或 不执行。 另一点, 所显示或讨论的相互之间的耦合或直接耦合或通 信连接可以是通过一些接口, 装置或单元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分 开的, 作为单元显示的部件可以是或者也可以不是物理单元, 即可 以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实 际的需要选择其中的部分或者全部单元来实现本实施例方案的 目 的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处
理单元中, 也可以是各个单元单独物理包括, 也可以两个或两个以 上单元集成在一个单元中。 上述集成的单元既可以采用硬件的形式 实现, 也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元, 可以存储在一 个计算机可读取存储介质中。 上述软件功能单元存储在一个存储介 质中, 包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等) 执行本发明各个实施例所述方法的部分 步骤。 而前述的存储介质包括: U 盘、 移动硬盘、 只读存储器 ( Read-Only Memory ,简称 ROM )、随机存取存储器( Random Access Memory , 简称 RAM )、 磁碟或者光盘等各种可以存储程序代码的介 最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其依然可以对前述各实施例所记 载的技术方案进行修改, 或者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实 施例技术方案的精神和范围。
Claims
1、 一种以太网物理层的编码方法, 其特征在于, 包括:
确定待编码的第一信息组;所述第一信息组包括 m个字符, m≥2 , m为整数; 其中任一字符的字符属性为数据字符、 边界字符或者第三 类字符, 一个字符占用一个字节, 所述第三类字符为除所述数据字符 和所述边界字符之外的字符;
检测所述第一信息组中的每个字符的字符属性;
若所述第一信息组包含 n 个边界字符, n≥l , n 为整数, 则删除 所述 n个边界字符, 并将所述第一信息组中除所述 n个边界字符之外 的字符、 所述 n 个边界字符的类型信息以及位置信息生成第二信息 组, 所述第二信息组包括 m个字节;
根据所述第一信息组的种类以及预存的信息组的种类与信息组 头信息的种类的对应关系, 为所述第二信息组添加头信息; 所述第一 信息组的种类由所述预存的信息组的种类和所述第一信息组中字符 的字符属性所确定。
2、 根据权利要求 1 所述的编码方法, 其特征在于, 所述删除所 述 n个边界字符, 并将所述第一信息组中除所述 n个边界字符之外的 字符、 所述 n个边界字符的类型信息以及位置信息生成第二信息组, 所述第二信息组包括 m个字节; 包括:
交换所述第一信息组的前 n个字符与所述 n个边界字符, 删除所 述 n个边界字符, 并在所述第一信息组的至少前 n个字节记录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信 息组包括 m个字节;
或者, 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n个 空闲字节中的第 n个空闲字节之前的字符向后移动, 以使得所述第一 信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第一信息组 的至少前 n个字节记录所述 n个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
3、 根据权利要求 2所述的编码方法, 其特征在于,
若所述 n个边界字符所占的 n个字节足以记录所述 n个边界字符 的类型信息以及位置信息, 则在所述第一信息组的至少前 n个字节记 录所述 n个边界字符的类型信息以及位置信息, 得到第二信息组, 所 述第二信息组包括 m个字节, 包括:
在所述第一信息组的前 n个字节记录所述 n个边界字符的类型信 息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节; 或者, 若所述 n个边界字符所占的 n个字节不足以记录所述 n个 边界字符的类型信息以及位置信息, 则在所述第一信息组的至少前 n 个字节记录所述 n个边界字符的类型信息以及位置信息, 得到第二信 息组, 所述第二信息组包括 m个字节, 包括:
对所述第一信息组的剩余 m-n 个字符中的至少一个字符进行压 缩, 以使得所述剩余 m-n个字节的前端出现空闲比特, 在所述第一信 息组的前 n个字节以及所述空闲比特记录所述 n个边界字符的类型信 息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
4、 根据权利要求 2 所述的编码方法, 其特征在于, 所述根据所 述第一信息组中字符的字符属性所确定的所述第一信息组的种类, 为 所述第二信息组添加头信息, 包括:
若所述 n个边界字符所占的 n个字节不足以记录所述 n个边界字 符的类型信, 以及位置信息, 则根据所述第一信息组中字符的字符属 性所确定的所述第一信息组的种类, 为所述第二信息组添加头信息, 所述头信息用于标记所述第一信息组的种类。
5、根据权利要求 1 -4任一项所述的编码方法,其特征在于, m<64 , 若所述预存的信息组的种类为全数据字符类型和非全数据字符 类型, 则所述信息组头信息至少包括两种类型;
或者, 若所述预存的信息组的种类为全数据字符类型、 全第三类 字符类型和包含边界字符类型, 则所述信息组头信息至少包括三种类 型。
6、 根据权利要求 1 所述的编码方法, 其特征在于, 若所述第一 信息组中全部为第三类字符, 则所述方法还包括:
压缩至少一个第三类字符, 以使得所述第一信息组的前端出现空 闲比特; 并在所述空闲比特记录所述第一信息组中全部为第三类字 符, 得到第三信息组, 所述第三信息组包括 m 个字节; 根据所述第 一信息组的种类以及预存的信息组的种类与信息组头信息的种类的 对应关系, 为所述第三信息组添加头信息;
或者, 根据所述第一信息组的种类以及预存的信息组的种类与信 息组头信息的种类的对应关系, 为所述第第一信息组添加头信息, 所 述第一信息组的头信息用于标记所述第一信息组中全部为第三类字 符。
7、 一种以太网物理层的解码方法, 其特征在于, 包括:
确定待解码的第二信, 组以及所述第二信, 组的头信息, 所述第 二信息组包括 m个字节, m≥2 , m为整数;
根据所述第二信息组的头信息以及预存的信息组的种类, 确定所 述第二信息组包含 n 个边界字符的类型信息以及位置信息, n≥l , n 为整数, 或者所述第二信息组包含全为第三类字符的信息;
若所述第二信息组包含 n个边界字符的类型信息以及位置信息, 则根据所述 n个边界字符的类型信息以及位置信息获得待添加的 n个 边界字符, 删除所述 n个边界字符的类型信息以及位置信息; 将所述 待添加的 n个边界字符、 以及所述第二信息组中的字符生成第一信息 组, 所述第一信息组包括 m个字节;
或者, 若所述第二信息组包含全为第三类字符的信息, 则删除所 述全为第三类字符的信息, 并对所述第二信息组中的字符进行解压, 得到第一信息组, 所述第一信息组包括 m个字节。
8、 根据权利要求 7所述的解码方法, 其特征在于,
若所述 n 个边界字符的类型信息以及位置信息记录在所述第二 信息组的前 n个字节, 则所述将所述待添加的 n个边界字符、 以及所 述第二信息组中的字符生成第一信息组, 所述第一信息组包括 m 个 字节, 包括: 在所述第二信息组中添加所述待添加的 n个边界字符, 得到第一信息组;
或者, 若所述 n个边界字符的类型信息以及位置信息不只记录在 所述第二信息组的前 n个字节,则所述将所述待添加的 n个边界字符、 以及所述第二信息组中的字符生成第一信息组, 所述第一信息组包括 m个字节, 包括: 对所述第二信息组中的字符进行解压, 并在解压后 的第二信息组中添加所述待添加的 n个边界字符, 得到第一信息组。
9、 一种编码装置, 其特征在于, 包括: 确定单元、 检测单元、 生成单元以及添加单元, 其中,
所述确定单元, 用于确定待编码的第一信息组; 所述第一信息组 包括 m个字符, m≥2 , m为整数; 其中任一字符的字符属性为数据字 符、 边界字符或者第三类字符, 一个字符占用一个字节, 所述第三类 字符为除所述数据字符和所述边界字符之外的字符;
所述检测单元, 用于检测所述第一信息组中的每个字符的字符属 性;
所述生成单元, 用于若所述第一信息组包含 n个边界字符, n≥l , n为整数, 则删除所述 n个边界字符, 并将所述第一信息组中除所述 n个边界字符之外的字符、 所述 n个边界字符的类型信息以及位置信 息生成第二信息组, 所述第二信息组包括 m个字节;
所述添加单元, 用于根据所述第一信息组的种类以及预存的信息 组的种类与信息组头信息的种类的对应关系, 为所述第二信息组添加 头信息; 所述第一信息组的种类由所述预存的信息组的种类和所述第 一信息组中字符的字符属性所确定。
10、 根据权利要求 9所述的编码装置, 其特征在于, 所述生成单 元具体用于,
交换所述第一信息组的前 n个字符与所述 n个边界字符, 删除所 述 n个边界字符, 并在所述第一信息组的至少前 n个字节记录所述 n 个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信 息组包括 m个字节;
或者, 删除所述 n个边界字符, 得到 n个空闲字节; 将所述 n个 空闲字节中的第 n个空闲字节之前的字符向后移动, 以使得所述第一
信息组中的剩余 m-n个字符记录在连续的字节; 并在所述第一信息组 的至少前 n个字节记录所述 n个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
1 1、 根据权利要求 10 所述的编码装置, 其特征在于, 所述生成 单元具体用于,
若所述 n个边界字符所占的 n个字节足以记录所述 n个边界字符 的类型信息以及位置信息, 则在所述第一信息组的前 n个字节记录所 述 n个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第 二信息组包括 m个字节;
或者, 若所述 n个边界字符所占的 n个字节不足以记录所述 n个 边界字符的类型信息以及位置信息, 则对所述第一信息组的剩余 m-n 个字符中的至少一个字符进行压缩,以使得所述剩余 m-n个字节的前 端出现空闲比特, 在所述第一信息组的前 n个字节以及所述空闲比特 记录所述 n个边界字符的类型信息以及位置信息, 得到第二信息组, 所述第二信息组包括 m个字节。
12、 根据权利要求 10所述的编码装置, 其特征在于,
所述添加单元具体用于, 若所述 n个边界字符所占的 n个字节不 足以记录所述 n个边界字符的类型信息以及位置信息, 则根据所述第 一信息组中字符的字符属性所确定的所述第一信息组的种类, 为所述 第二信息组添加头信息, 所述头信息用于标记所述第一信息组的种 类。
13、 根据权利要求 9- 12 任一项所述的编码装置, 其特征在于, m<64 ,
若所述预存的信息组的种类为全数据字符类型和非全数据字符 类型, 则所述信息组头信息至少包括两种类型;
或者, 若所述预存的信息组的种类为全数据字符类型、 全第三类 字符类型和包含边界字符类型, 则所述信息组头信息至少包括三种类 型。
14、 根据权利要求 13 所述的编码装置, 其特征在于, 若所述第
一信息组中全部为第三类字符, 则
所述装置还包括压缩单元, 所述压缩单元用于压缩至少一个第三 类字符, 以使得所述第一信息组的前端出现空闲比特; 所述生成单元 还用于, 在所述空闲比特记录所述第一信息组中全部为第三类字符, 得到第三信息组, 所述第三信息组包括 m 个字节; 所述添加单元还 用于, 根据所述第一信息组的种类以及预存的信息组的种类与信, ¾组 头信息的种类的对应关系, 为所述第三信息组添加头信息;
或者, 所述添加单元还用于, 根据所述第一信息组的种类以及预 存的信息组的种类与信息组头信息的种类的对应关系, 为所述第第一 信息组添加头信息, 所述第一信息组的头信息用于标记所述第一信息 组中全部为第三类字符。
15、 一种解码装置, 其特征在于, 包括: 确定单元以及生成单元, 其中,
所述确定单元, 用于确定待解码的第二信息组以及所述第二信息 组的头信息, 所述第二信息组包括 m个字节, m≥2 , m为整数; 根据 所述第二信息组的头信息以及预存的信息组的种类, 确定所述第二信 息组包含 n 个边界字符的类型信息以及位置信息, n≥l , n 为整数, 或者所述第二信息组包含全为第三类字符的信息;
所述生成单元, 用于若所述第二信息组包含 n个边界字符的类型 信息以及位置信息, 则根据所述 n个边界字符的类型信息以及位置信 息获得待添加的 n个边界字符, 删除所述 n个边界字符的类型信息以 及位置信息; 将所述待添加的 n个边界字符、 以及所述第二信息组中 的字符生成第一信息组, 所述第一信息组包括 m个字节;
或者, 若所述第二信息组包含全为第三类字符的信息, 则删除所 述全为第三类字符的信息, 并对所述第二信息组中的字符进行解压, 得到第一信息组, 所述第一信息组包括 m个字节。
16、 根据权利要求 15所述的解码装置, 其特征在于,
若所述 n 个边界字符的类型信息以及位置信息记录在所述第二 信息组的前 n个字节, 则所述生成单元具体用于, 在所述第二信息组
中添加所述待添加的 n个边界字符, 得到第一信息组;
或者, 若所述 n个边界字符的类型信息以及位置信息不只记录在 所述第二信息组的前 n个字节, 则所述生成单元具体用于, 对所述第 二信息组中的字符进行解压, 并在解压后的第二信息组中添加所述待 添加的 n个边界字符, 得到第一信息组。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380000612.4A CN103534968B (zh) | 2013-04-01 | 2013-04-01 | 一种以太网物理层的编码、解码方法和装置 |
EP13880964.5A EP2966823B1 (en) | 2013-04-01 | 2013-04-01 | Encoding and decoding methods and apparatuses of ethernet physical layer |
PCT/CN2013/073568 WO2014161137A1 (zh) | 2013-04-01 | 2013-04-01 | 一种以太网物理层的编码、解码方法和装置 |
US14/868,784 US9337960B2 (en) | 2013-04-01 | 2015-09-29 | Encoding and decoding methods and apparatuses of ethernet physical layer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/073568 WO2014161137A1 (zh) | 2013-04-01 | 2013-04-01 | 一种以太网物理层的编码、解码方法和装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/868,784 Continuation US9337960B2 (en) | 2013-04-01 | 2015-09-29 | Encoding and decoding methods and apparatuses of ethernet physical layer |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014161137A1 true WO2014161137A1 (zh) | 2014-10-09 |
Family
ID=49935401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2013/073568 WO2014161137A1 (zh) | 2013-04-01 | 2013-04-01 | 一种以太网物理层的编码、解码方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9337960B2 (zh) |
EP (1) | EP2966823B1 (zh) |
CN (1) | CN103534968B (zh) |
WO (1) | WO2014161137A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170321622A1 (en) * | 2016-05-05 | 2017-11-09 | GM Global Technology Operations LLC | Internal combustion engine cylinder head with multi-runner, multi-port integrated exhaust manifold |
CN107888322B (zh) * | 2016-09-30 | 2020-09-11 | 扬智科技股份有限公司 | 以太网络物理层的解码方法与以太物理层电路 |
US10387139B2 (en) * | 2017-07-25 | 2019-08-20 | Aurora Labs Ltd. | Opportunistic software updates during select operational modes |
CN110830153B (zh) * | 2018-08-07 | 2021-04-09 | 华为技术有限公司 | 接收码块流的方法、发送码块流的方法和通信装置 |
US11128742B2 (en) | 2019-03-08 | 2021-09-21 | Microsemi Storage Solutions, Inc. | Method for adapting a constant bit rate client signal into the path layer of a telecom signal |
US11108895B2 (en) * | 2019-08-23 | 2021-08-31 | Microchip Technology Inc. | Method for providing path signal overhead in the 64B/66B character stream of an itu-t metro transport network using micro-packets |
CN112511920A (zh) * | 2020-03-27 | 2021-03-16 | 中兴通讯股份有限公司 | 光传送网中业务处理方法、处理装置和电子设备 |
US11916662B2 (en) | 2021-06-30 | 2024-02-27 | Microchip Technology Inc. | System and method for performing rate adaptation of constant bit rate (CBR) client data with a fixed number of idle blocks for transmission over a metro transport network (MTN) |
US11838111B2 (en) | 2021-06-30 | 2023-12-05 | Microchip Technology Inc. | System and method for performing rate adaptation of constant bit rate (CBR) client data with a variable number of idle blocks for transmission over a metro transport network (MTN) |
US11736065B2 (en) | 2021-10-07 | 2023-08-22 | Microchip Technology Inc. | Method and apparatus for conveying clock-related information from a timing device |
US11799626B2 (en) | 2021-11-23 | 2023-10-24 | Microchip Technology Inc. | Method and apparatus for carrying constant bit rate (CBR) client signals |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050047433A1 (en) * | 2003-06-17 | 2005-03-03 | Dmitri Rizer | Physical coding sublayer transcoding |
CN1625859A (zh) * | 2002-04-25 | 2005-06-08 | 帕萨夫有限公司 | 以太网中的前向纠错编码 |
CN101309258A (zh) * | 2007-05-18 | 2008-11-19 | 华为技术有限公司 | 高速以太网介质无关接口码块的分发和接收方法及装置 |
CN101369861A (zh) * | 2007-08-13 | 2009-02-18 | 硅谷数模半导体(北京)有限公司 | 编码方式转换设备及方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020159484A1 (en) * | 2000-12-05 | 2002-10-31 | Murat Azizoglu | Coding scheme using a control code map for signal transmission in optical communications networks |
US6952405B2 (en) * | 2000-12-05 | 2005-10-04 | Sycamore Networks, Inc. | Coding scheme using a transition indicator for signal transmission in optical communications networks |
US7447228B1 (en) * | 2002-03-15 | 2008-11-04 | Nortel Networks Limited | Technique for delivering bursted native media data flows over an ethernet physical layer |
US8259748B2 (en) * | 2006-07-22 | 2012-09-04 | Cisco Technologies, Inc. | Multiple channels and flow control over a 10 Gigabit/second interface |
US7760749B2 (en) * | 2007-01-11 | 2010-07-20 | Via Technologies, Inc. | Apparatus and method for deskewing 1000 BASE-T Ethernet physical layer signals |
CN101227450B (zh) | 2007-01-16 | 2013-04-24 | 华为技术有限公司 | 一种开销信息的传输方法、系统及设备 |
CN101330350B (zh) * | 2007-06-21 | 2011-09-14 | 华为技术有限公司 | 适配载荷带宽传输数据的发送方法、接收处理方法及装置 |
CN101330503B (zh) * | 2007-06-22 | 2012-01-04 | 杭州华三通信技术有限公司 | 一种以太网物理层数据传输方法、系统及设备 |
CN101436955B (zh) * | 2007-11-12 | 2012-04-04 | 华为技术有限公司 | 以太网物理层oam开销的发送、接收方法及发送、接收装置 |
US8184651B2 (en) * | 2008-04-09 | 2012-05-22 | Altera Corporation | PLD architecture optimized for 10G Ethernet physical layer solution |
US7995621B2 (en) * | 2008-10-01 | 2011-08-09 | Nortel Netwoeks Limited | Techniques for time transfer via signal encoding |
CN101610134B (zh) * | 2009-07-10 | 2013-06-05 | 中兴通讯股份有限公司 | 64b/66b编解码装置及实现64b/66b编解码的方法 |
US9225556B2 (en) * | 2013-06-07 | 2015-12-29 | Broadcom Corporation | Multiplexed packet local area networking using an Ethernet physical layer device |
-
2013
- 2013-04-01 EP EP13880964.5A patent/EP2966823B1/en active Active
- 2013-04-01 WO PCT/CN2013/073568 patent/WO2014161137A1/zh active Application Filing
- 2013-04-01 CN CN201380000612.4A patent/CN103534968B/zh active Active
-
2015
- 2015-09-29 US US14/868,784 patent/US9337960B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1625859A (zh) * | 2002-04-25 | 2005-06-08 | 帕萨夫有限公司 | 以太网中的前向纠错编码 |
US20050047433A1 (en) * | 2003-06-17 | 2005-03-03 | Dmitri Rizer | Physical coding sublayer transcoding |
CN101309258A (zh) * | 2007-05-18 | 2008-11-19 | 华为技术有限公司 | 高速以太网介质无关接口码块的分发和接收方法及装置 |
CN101369861A (zh) * | 2007-08-13 | 2009-02-18 | 硅谷数模半导体(北京)有限公司 | 编码方式转换设备及方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP2966823A4 * |
Also Published As
Publication number | Publication date |
---|---|
CN103534968B (zh) | 2016-09-28 |
US9337960B2 (en) | 2016-05-10 |
EP2966823A1 (en) | 2016-01-13 |
EP2966823B1 (en) | 2017-05-31 |
EP2966823A4 (en) | 2016-03-16 |
CN103534968A (zh) | 2014-01-22 |
US20160020872A1 (en) | 2016-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014161137A1 (zh) | 一种以太网物理层的编码、解码方法和装置 | |
JP4739332B2 (ja) | Fecコード化されたイーサネット(登録商標)フレームにおけるデータをデリニエートするための方法および装置 | |
US7693090B1 (en) | Systems and methods for discovering PME bonding groups | |
WO2015027755A1 (zh) | 一种物理层编解码方法及其装置 | |
US8898550B2 (en) | Encoding of data for transmission | |
US20090074010A1 (en) | Method and apparatus for generating data frame | |
KR20080109932A (ko) | 로버스트 헤더 압축에서 로컬 복구를 향상시키는 방법 및 시스템 | |
WO2014094227A1 (zh) | 光网络系统的通信方法、系统及装置 | |
TWI229991B (en) | Wireless communication method and wireless communication device | |
US20060187960A1 (en) | Network interface and computing system including the same | |
WO2022062946A1 (zh) | 一种数据编码方法、数据解码方法及通信装置 | |
US6842126B1 (en) | Block coding system and method for data aggregation | |
WO2021082468A1 (zh) | 一种通信方法、设备及存储介质 | |
CN111447078B (zh) | 一种基于组播协议的以太网热备热切换的冗余方法 | |
WO2014029081A1 (zh) | 压缩方法及设备 | |
US9294418B2 (en) | 64B/66B codec for ethernet applications | |
EP4340232A1 (en) | Encoding method, decoding method, and optical module | |
WO2019184998A1 (zh) | 一种通信方法、通信设备及存储介质 | |
US10623140B2 (en) | Method for processing signaling sub-segment, processing apparatus, access point, and station | |
WO2022193767A1 (zh) | 一种以太报文的处理方法以及相关设备 | |
EP2852082A1 (en) | Information sending method and device | |
US7953101B2 (en) | Encoding fibre channel over ethernet transport | |
US20170214926A1 (en) | System and method for transcoding data | |
WO2021017890A1 (zh) | 一种通信方法和通信设备 | |
KR20220122991A (ko) | 통신 디바이스들 및 방법들 |
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: 13880964 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: 2013880964 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013880964 Country of ref document: EP |