[go: up one dir, main page]

CN111966627B - 8B/9B encoding and decoding method for serial bus - Google Patents

8B/9B encoding and decoding method for serial bus Download PDF

Info

Publication number
CN111966627B
CN111966627B CN202010810571.7A CN202010810571A CN111966627B CN 111966627 B CN111966627 B CN 111966627B CN 202010810571 A CN202010810571 A CN 202010810571A CN 111966627 B CN111966627 B CN 111966627B
Authority
CN
China
Prior art keywords
codewords
codeword
idle
encoding
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010810571.7A
Other languages
Chinese (zh)
Other versions
CN111966627A (en
Inventor
刘靖
郑云龙
杨水华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Cavige Technology Co ltd
Original Assignee
Beijing Cavige Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Cavige Technology Co ltd filed Critical Beijing Cavige Technology Co ltd
Priority to CN202010810571.7A priority Critical patent/CN111966627B/en
Publication of CN111966627A publication Critical patent/CN111966627A/en
Application granted granted Critical
Publication of CN111966627B publication Critical patent/CN111966627B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The invention discloses a serial bus 8B/9B encoding and decoding method, which comprises the following steps: step 1, classifying all 9B code words; step 2, considering that the direct current DC is as small as possible according to the classification result, and selecting the coding code words of the data word and the control word; step 3, coding the selected code words to form a coding table; and 4, compiling 8B data on the bus into 9B data according to a compiled encoding table, and then sending out. Compiling a decoding table corresponding to the encoding table; the decoding table is decoded from the 9bit codeword received on the bus. Compared with the 8B/10B coding and decoding scheme in the prior art, the invention has the following advantages: 1) The transmission efficiency is improved from 80% to 89%; 2) The running length is reduced from 5 to 4, and the system can adapt to a more severe transmission environment.

Description

8B/9B encoding and decoding method for serial bus
Technical Field
The invention relates to the technical field of serial buses, in particular to an 8B/9B encoding and decoding method for a serial bus.
Background
In serial synchronous communications, such as Ethernet, FC, etc., an 8B/10B codec scheme is currently used for the most part. The main characteristic of the 8B/10B coding and decoding scheme is to ensure DC balance, and the number of0 and 1 transmitted on a bus is ensured to be basically consistent by adopting 8B/10B coding, and the number of continuous 0 and 1 is not more than 5. However, the original 8-bit byte is represented by 10 bits, which makes the 8B/10B coding cost too large and the bandwidth utilization is not high.
Disclosure of Invention
In view of the above-mentioned shortcomings of the prior art, the present invention proposes an 8B/9B codec method with high bandwidth utilization.
According to one aspect of the present invention, there is provided a serial bus 8B/9B encoding method comprising the steps of:
step 1: in order to ensure that the running length RL is less than or equal to 4, the 9B code words to be selected are divided into the following 3 types,
f1: the inner RL is less than or equal to 4, the head and tail parts RL is less than or equal to 2, and each F1 code word can represent a numerical value;
f2: the inner RL is less than or equal to 4, the head RL=3 or 4 close to b0, the tail RL close to b8 is less than or equal to 2, when the code word is output, the first bit b0 is different from the last bit b8 of the last code word, the subsequent code word can meet F1 or F2, and 2F 2 code words can only represent a numerical value;
f3: the inner RL is less than or equal to 4, the head and tail RL=3 or 4, and when ensuring that the codeword is output, the head bit b0 of the next codeword is not necessarily the same as the tail bit b8 of the codeword;
step 2: codeword selection when encoding a data word, in order to ensure that the difference DC between the number of 1's minus 0's in codeword W is as small as possible, a selection is made from among the following 4 types of codewords:
class1: w εF1 and DC= + -1, there are 178 total codewords of this type, each of which can express an 8B value;
class2: w epsilon F2 and DC= + -1, the total number of the codewords is 28, 2 codewords can express an 8B value, and Class2 can express 14 values in total;
class3: w epsilon F2 and DC= + -3, the total number of the codewords is 30, 2 codewords can express an 8B value, and 15 values can be expressed in total; such a codeword, although having a large direct current component DC, will select a different codeword according to b8 of the previous codeword to ensure that the overall state is still balanced;
class4: w e F1 and dc= ±3, there are 74 total codewords of this type, 25 codewords with the first b0 being 0 and DC being negative, 25 codewords with the first b0 being 1 and DC being positive, these 50 codewords having similar characteristics to the Class3 codeword, 25 values being expressed with these 50 codewords, and 24 values being expressed with the remaining (74-50=) 24 codewords, a total of 49 values being expressed;
the total number of the four types of code words is 256, and all 8B data words can be completely coded and converted;
step 3: the method comprises the steps that when a control word is coded, a codeword is selected, three main control codes IDLE, SOF, EOF are all F3 codewords in the step 1, and DC= ±1, wherein IDLE is an IDLE code, SOF is a message Wen Qishi delimiter, and EOF is a message end delimiter;
step 4: coding a coding table according to the steps, table-looking up 8B data on the bus according to the coded coding table to form 9B data, and then sending out.
According to another aspect of the invention, for SOF codewords, different codewords are selected according to NB0, sof0=9b' 111011080 being selected when nb0=0; when nb0=1, sof1=9b' 000100111 is selected, where NB0 represents b0 of the first byte of the message;
the selection of IDLE is related to the selection of SOF, but b0 of the selected SOF is the same as NB0, and therefore, when nb0=0, IDLE 0=9b' 111001000 is selected; when nb0=1, IDLE 1=9b' 000110111 is selected;
EOF selection is related to PB8, when pb8=0, eof=9b' 000010111; when pb8=1, eof=9b' 111101000, where PB8 represents b8 of the last codeword.
According to another aspect of the present invention, if the following message content is not known yet when IDLE is transmitted, IDLE1 is forcibly transmitted.
According to another aspect of the present invention, there is also provided a serial bus 8B/9B decoding method of compiling a decoding table corresponding to the foregoing encoding table; and decoding the 9bit code words received from the bus by using a decoding table.
According to another aspect of the invention, if the decoding table results in a null, it indicates that this is an erroneous codeword, requiring re-synchronization and then decoding operations.
The 9B code words are divided into three control words, namely IDLE0/IDLE1, SOF0/SOF1 and EOF, wherein the control words are selected from the F3 code words, the data words are 9B code values corresponding to 256 8B values, and the data words are selected from the F1 and F2 code words.
Compared with the 8B/10B coding and decoding scheme in the prior art, the 8B/9B coding and decoding scheme adopted by the invention has the following advantages: 1) The transmission efficiency is improved from 80% to 89%; 2) The running length is reduced from 5 to 4, and the system can adapt to a more severe transmission environment.
Detailed Description
Run Length (RL) is defined as the maximum number of bits that are consecutive to "0" or "1" in the result of encoding an arbitrary message. Generally, the smaller the run length is required, the better. The run length of a single codeword does not represent the run length of the encoding result. For example, two consecutive codewords, a=9b '000110011, b=9b' 111001100, the lower order first output. At this time, the run lengths of the codewords A and B themselves are 3, but when A and B are sequentially connected together, the run length is 5.
To ensure that RL is less than or equal to 4, there may be 3 methods of selecting codewords
F1: the inner RL is less than or equal to 4, and the head (near b 0) and the tail (near b 8) are less than or equal to 2. In principle, each F1 codeword may represent a value, e.g. 9b'110001101. (of course, in combination with the DC component, it is also possible to use 2F 1 codewords to represent a value, e.g., 9b '001000110 and 9b' 110111001)
F2: the inner RL is less than or equal to 4, the head RL is less than or equal to (3 or 4), the tail RL is less than or equal to 2, and when the output of the code word is ensured, the first bit (b 0) is different from the last bit (b 8) of the last code word, and the subsequent code word can meet F1 or F2. For ease of discussion, we name b8 of the last codeword as PB8. Because of the uncertainty of PB8, 2F 2 codewords can represent one value, e.g., 9b '001111000 and 9b'110000111.
F3: the inner RL is less than or equal to 4, the head and tail part rl= (3 or 4), and the b0 of the next code word is not necessarily the same as the b8 of the code word when the code word is output. In general, the next codeword cannot be predicted, so that codewords conforming to F3 can only be used at specific locations. For example, IDLE must be followed by SOF and EOF must be followed by IDLE (or inactive), so IDLE and EOF may choose to use F3 codewords. In addition, the first byte of the message is deterministic (can be peeked) in nature, so an F3 codeword can be selected as the SOF. That is, the three main control codes, IDLE, SOF, EOF, can all use the F3 codeword, whereas the conventional numerical codeword can only use the codewords of F1 and F2.
Direct current component (DC): the number of 1's minus 0's within one codeword W, the difference is called the dc component. For differential signals, the dc component may cause degradation in the transmission quality of the signal, so it is generally required that the smaller the dc component, the better. For 10bit encoding, some codewords contain exactly 5 1's and 5 0's, and the DC of these codewords is 0. But in 9bit encoding no codeword of dc=0 occurs. The best case is either 5 1 and 4 and 0, DC being +1; or 4 1 and 50, DC is-1. This is already the best codeword. But the best codeword is always insufficient. Therefore, the 8B10B scheme must choose some of the codewords of dc= ±2, while the 8B9B scheme must choose some of the codewords of dc= ±3.
The 8B/9B coding method for serial bus coding is realized as follows:
encoding data words:
the screening process of the data words is as follows:
class1: (W.epsilon.F1) & & (DC= + -1), a total of 178 codewords of this type, each of which can express an 8b value.
Class2: (W.epsilon.F2) & & (DC= + -1), the total number of codewords is 28, 2 codewords can express an 8b value, and Class2 can express 14 values. The dc component of these two codewords is already the lowest level in the 9b codeword, so this is considered to be an equalized codeword.
Class3: (W.epsilon.F2) & & (DC= + -3), the total number of codewords is 30, 2 codewords can express an 8b value, and 15 values can be expressed. Such a codeword, although having a large direct current component DC, is considered to be in an equilibrium state because a different codeword is selected according to b8 of the preceding codeword. 207 codewords have been selected (178+14+15=) and 49 are also required (256-207=).
Class4: (W.epsilon.F1) & & (DC= + -3), there are 74 such codewords in total. The direct current component of such a codeword is large, and in principle it is preferable to express a value with 2 codewords, but the number of codewords is obviously insufficient. It was found by analysis that there were 25 codewords with a 0 first bit b0 and a negative DC number, 25 codewords with a 1 first bit b0 and a positive DC number, and these 50 codewords had just similar characteristics to the Class3 codeword. We express 25 values with these 50 codewords and then 24 values with the remaining (74-50=) 24 codewords, then just a total of 49 values can be expressed.
Control word encoding:
the control words have three types: IDLE, SOF, EOF. The conditions for selecting the control word are:
class5: DC= + -1, RL is less than or equal to 4, and the head-tail continuous level is more than 2 (the code words less than or equal to 2 are all used), namely the F3 code word.
Different codewords are selected based on the difference in b0 (NB 0) of the first byte of the message. The following is specified: when nb0=0, sof0=9b' 111011080 is selected; when nb0=1 is, sof1=9b' 000100111 is selected.
The IDLE selection is related to the SOF selection, but in fact b0 of the SOF is the same as b0 of the first byte of the message. The following is specified: when nb0=0, IDLE 0=9b' 111001000 is selected; when nb0=1, IDLE 1=9b' 000110111 is selected. Specific examples: if the following message content is not known yet when the IDLE is sent, the IDLE1 is forced to be sent. Then, if the actual message nb0=1, then IDLE0 is required to be sent, and 6 consecutive 1 levels will appear on the line. Therefore, after the handover, enough IDLE0 must be transmitted in order for the line to be restored to be stable.
The codeword of EOF is related to PB8, providing: when pb8=0, eof=9b' 000010111; when pb8=1, eof=9b' 111101000.
An exemplary encoding table of one of the data words and the control words is shown in table a, and only a simple look-up table is needed for encoding.
Figure 982072DEST_PATH_IMAGE001
Figure 336830DEST_PATH_IMAGE002
Figure 725086DEST_PATH_IMAGE003
Figure 966843DEST_PATH_IMAGE004
Figure 415142DEST_PATH_IMAGE005
Figure 257196DEST_PATH_IMAGE006
Figure 199875DEST_PATH_IMAGE007
Figure 545406DEST_PATH_IMAGE008
Figure 164606DEST_PATH_IMAGE009
Figure 973250DEST_PATH_IMAGE010
Figure 703309DEST_PATH_IMAGE011
Figure 903346DEST_PATH_IMAGE012
Figure 444180DEST_PATH_IMAGE013
Figure 995247DEST_PATH_IMAGE014
Figure 263417DEST_PATH_IMAGE015
Figure 334272DEST_PATH_IMAGE016
Figure 295275DEST_PATH_IMAGE017
Figure 68059DEST_PATH_IMAGE018
Figure 890653DEST_PATH_IMAGE019
Decoding description:
referring to the table B, the received 9bit code word is subjected to table lookup, if the table lookup result is null, the code word is an error code word, and resynchronization is needed. Otherwise, if already synchronized, it indicates that the correct data word or control word was received; if there is no synchronization, it is determined whether the codeword is IDLE or SOF. The word synchronization process is prior art and will not be described in detail herein.
To improve the error recognition capability, the verification of PB8 and NB0 is not required during decoding. For example 8d'18 should be encoded into 2 codewords: pb8=0 is 9b '100100111, and pb8=1 is 9b' 0101101000. If 9b' 01010110100 is received when pb8=0, it should be considered that a transmission error occurs at this time, and the current transmission needs to be interrupted and resynchronized. Similarly, if SOF1 is received after IDLE0, this is also an error; this is also an error if SOF1 is followed by a message nb0=0. This is similar to the RD value check in the 8B/10B codec scheme.
Figure 65282DEST_PATH_IMAGE020
Figure 197186DEST_PATH_IMAGE021
Figure 457266DEST_PATH_IMAGE022
Figure 83551DEST_PATH_IMAGE023
Figure 112687DEST_PATH_IMAGE024
Figure 415492DEST_PATH_IMAGE025
Figure 913601DEST_PATH_IMAGE026
Figure 592844DEST_PATH_IMAGE027
Figure 742065DEST_PATH_IMAGE028
Figure 966504DEST_PATH_IMAGE029
Figure 201176DEST_PATH_IMAGE030
Figure 418531DEST_PATH_IMAGE031
Figure 438571DEST_PATH_IMAGE032
Figure 83179DEST_PATH_IMAGE033
Figure 815600DEST_PATH_IMAGE034
Figure 836645DEST_PATH_IMAGE035
Figure 976771DEST_PATH_IMAGE036
Figure 792280DEST_PATH_IMAGE037
Figure 1544DEST_PATH_IMAGE038
Figure 295122DEST_PATH_IMAGE039
Figure 758596DEST_PATH_IMAGE040
Figure 10586DEST_PATH_IMAGE041
Figure 707146DEST_PATH_IMAGE042
Figure 820727DEST_PATH_IMAGE043
Figure 653554DEST_PATH_IMAGE044
Figure 810866DEST_PATH_IMAGE045
Figure 745455DEST_PATH_IMAGE046
Figure 646415DEST_PATH_IMAGE047
Figure 350059DEST_PATH_IMAGE048
Figure 943852DEST_PATH_IMAGE049
Figure 349425DEST_PATH_IMAGE050
Figure 804809DEST_PATH_IMAGE051
Figure 612228DEST_PATH_IMAGE052
Figure 376921DEST_PATH_IMAGE053
Figure 20523DEST_PATH_IMAGE054
Figure 263286DEST_PATH_IMAGE055
Figure 925211DEST_PATH_IMAGE056
Figure 605679DEST_PATH_IMAGE057
Figure 985845DEST_PATH_IMAGE058
Figure 32299DEST_PATH_IMAGE059
Figure 299463DEST_PATH_IMAGE060
Figure 405959DEST_PATH_IMAGE061
Figure 273421DEST_PATH_IMAGE062
The present invention has been described in detail above, and it should be apparent to those skilled in the art that embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, magnetic disk storage, optical storage, and the like) having computer-usable program code embodied therein. Various modifications and variations of the present invention will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the scope of the claims of the present invention should fall within the protection scope of the present invention.

Claims (5)

1. A serial bus 8B/9B encoding method, comprising the steps of:
step 1: in order to ensure that the running length RL is less than or equal to 4, the 9B code words to be selected are divided into the following 3 types,
f1: the inner RL is less than or equal to 4, the head and tail parts RL is less than or equal to 2, and each F1 code word can represent a numerical value;
f2: the inner RL is less than or equal to 4, the head RL=3 or 4 close to b0, the tail RL close to b8 is less than or equal to 2, when the code word is output, the first bit b0 is different from the last bit b8 of the last code word, the subsequent code word can meet F1 or F2, and 2F 2 code words can only represent a numerical value;
f3: the inner RL is less than or equal to 4, the head and tail RL=3 or 4, and when ensuring that the codeword is output, the head bit b0 of the next codeword is not necessarily the same as the tail bit b8 of the codeword;
step 2: codeword selection when encoding a data word, in order to ensure that the difference DC between the number of 1's minus 0's in codeword W is as small as possible, a selection is made from among the following 4 types of codewords:
class1: w εF1 and DC= + -1, there are 178 total codewords of this type, each of which can express an 8B value;
class2: w epsilon F2 and DC= + -1, the total number of the codewords is 28, 2 codewords can express an 8B value, and Class2 can express 14 values in total;
class3: w epsilon F2 and DC= + -3, the total number of the codewords is 30, 2 codewords can express an 8B value, and 15 values can be expressed in total; such a codeword, although having a large direct current component DC, will select a different codeword according to b8 of the previous codeword to ensure that the overall state is still balanced;
class4: w e F1 and dc= ±3, there are 74 total codewords of this type, 25 codewords with the first b0 being 0 and DC being negative, 25 codewords with the first b0 being 1 and DC being positive, these 50 codewords having similar characteristics to the Class3 codeword, 25 values being expressed with these 50 codewords, and 24 values being expressed with the remaining 74-50=24 codewords, a total of 49 values being expressed;
the total number of the four types of code words is 256, and all 8B data words can be completely coded and converted;
step 3: the method comprises the steps that when a control word is coded, a codeword is selected, three main control codes IDLE, SOF, EOF are all F3 codewords in the step 1, and DC= ±1, wherein IDLE is an IDLE code, SOF is a message Wen Qishi delimiter, and EOF is a message end delimiter;
step 4: coding a coding table according to the steps, table-looking up 8B data on the bus according to the coded coding table to form 9B data, and then sending out.
2. The coding method according to claim 1, wherein in the step 3,
for SOF codewords, different codewords are selected according to NB0, sof0=9b' 11101108when nb0=0; when nb0=1, sof1=9b' 000100111 is selected, where NB0 represents b0 of the first byte of the message;
the selection of IDLE is related to the selection of SOF, but b0 of the selected SOF is the same as NB0, and therefore, when nb0=0, IDLE 0=9b' 111001000 is selected; when nb0=1, IDLE 1=9b' 000110111 is selected;
EOF selection is related to PB8, when pb8=0, eof=9b' 000010111; when pb8=1, eof=9b' 111101000, where PB8 represents b8 of the last codeword.
3. The encoding method of claim 2, wherein if the following message content is not known yet when the IDLE is transmitted, the IDLE1 is forcibly transmitted.
4. A serial bus 8B/9B decoding method corresponding to the encoding method of claim 1, characterized in that: compiling a decoding table corresponding to the encoding table of claim 1; the 9bit codeword received from the bus is decoded by a lookup table.
5. The decoding method of claim 4, wherein: if the table look-up result is empty, it indicates that this is an erroneous codeword, and the synchronization needs to be re-performed and then the decoding operation needs to be performed.
CN202010810571.7A 2020-08-13 2020-08-13 8B/9B encoding and decoding method for serial bus Active CN111966627B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010810571.7A CN111966627B (en) 2020-08-13 2020-08-13 8B/9B encoding and decoding method for serial bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010810571.7A CN111966627B (en) 2020-08-13 2020-08-13 8B/9B encoding and decoding method for serial bus

Publications (2)

Publication Number Publication Date
CN111966627A CN111966627A (en) 2020-11-20
CN111966627B true CN111966627B (en) 2023-06-30

Family

ID=73365324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010810571.7A Active CN111966627B (en) 2020-08-13 2020-08-13 8B/9B encoding and decoding method for serial bus

Country Status (1)

Country Link
CN (1) CN111966627B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112637673B (en) * 2020-11-30 2023-06-06 深圳市瑞易创科技有限公司 Decoding method and decoding system of iSP (information processing system) signal

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87102265A (en) * 1986-03-26 1987-10-07 北方电信有限公司 The channelizing serial transmission method and apparatus of redundantly encoded binary data
EP0414368A2 (en) * 1989-07-17 1991-02-27 Digital Equipment Corporation Method and apparatus for data and forward error correction coding for low DC-offset and short run length
CN1278933A (en) * 1997-11-17 2001-01-03 西加特技术有限责任公司 Method and apparatus for using CRC for data integrity in on-chip memory
US6198413B1 (en) * 1999-07-01 2001-03-06 International Business Machines Corporation Partitioned DC balanced (0,6) 16B/18B transmission code with error correction
JP2001297446A (en) * 2000-04-13 2001-10-26 Victor Co Of Japan Ltd Recording method, reproducing method and recording medium of information signal
US6614369B1 (en) * 2002-03-05 2003-09-02 International Business Machines Corporation DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes
CN106411322A (en) * 2016-11-04 2017-02-15 深圳国人通信股份有限公司 Encoding and decoding method and device of serial communication system based on SerDes technology
CN107431817A (en) * 2015-01-29 2017-12-01 Vid拓展公司 Palette decoding mode and palette upset

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7737869B2 (en) * 2007-07-12 2010-06-15 Monro Donald M Symbol based data compression
US8614634B2 (en) * 2012-04-09 2013-12-24 Nvidia Corporation 8b/9b encoding for reducing crosstalk on a high speed parallel bus
US20190207744A1 (en) * 2019-03-14 2019-07-04 Intel Corporation System, Apparatus And Method For Low Overhead Communication Encoding

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87102265A (en) * 1986-03-26 1987-10-07 北方电信有限公司 The channelizing serial transmission method and apparatus of redundantly encoded binary data
EP0414368A2 (en) * 1989-07-17 1991-02-27 Digital Equipment Corporation Method and apparatus for data and forward error correction coding for low DC-offset and short run length
CN1278933A (en) * 1997-11-17 2001-01-03 西加特技术有限责任公司 Method and apparatus for using CRC for data integrity in on-chip memory
US6198413B1 (en) * 1999-07-01 2001-03-06 International Business Machines Corporation Partitioned DC balanced (0,6) 16B/18B transmission code with error correction
JP2001297446A (en) * 2000-04-13 2001-10-26 Victor Co Of Japan Ltd Recording method, reproducing method and recording medium of information signal
US6614369B1 (en) * 2002-03-05 2003-09-02 International Business Machines Corporation DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes
CN107431817A (en) * 2015-01-29 2017-12-01 Vid拓展公司 Palette decoding mode and palette upset
CN106411322A (en) * 2016-11-04 2017-02-15 深圳国人通信股份有限公司 Encoding and decoding method and device of serial communication system based on SerDes technology

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"An Enumerative Coding Technique for DC-Free Runlength-Limited Sequences";Volker Braun等;《IEEE》;第2024-2031页 *
"Chain code lossless compression using move-to-front transform and adaptive run-length encoding";Borut Žalik等;《Signal Processing: Image Communication》;第96-106页 *
"地震勘探数据传输中的调制编码技术研究";周少飞;《中国优秀硕士学位论文全文数据库 信息科技辑》;第I136-468页 *

Also Published As

Publication number Publication date
CN111966627A (en) 2020-11-20

Similar Documents

Publication Publication Date Title
EP0824817B1 (en) Apparatus and method for communicating data word blocks together with control words
EP0147677B1 (en) Method of coding to minimize delay at a communication node
US7180958B2 (en) Technique for utilizing spare bandwidth resulting from the use of a transition-limiting code in a multi-level signaling system
US7707475B2 (en) 64b/66b coding apparatus and method
US9337960B2 (en) Encoding and decoding methods and apparatuses of ethernet physical layer
EP3041157B1 (en) Physical layer coding/decoding method and apparatus thereof
US20080095189A1 (en) Method and system for physical layer aggregation
US6694024B2 (en) Transmitting data words
EP4362361A1 (en) Service processing method and service processing device
US6930621B2 (en) Method to overlay a secondary communication channel onto an encoded primary communication channel
EP0735729B1 (en) 5B4T coding scheme
US12237954B2 (en) Data encoding method, data decoding method, and communication apparatus
CN101847997A (en) 9B/10B coder-decoder and realization method thereof
US5818362A (en) 5B4T coding scheme
CN111966627B (en) 8B/9B encoding and decoding method for serial bus
US6917312B2 (en) Technique for improving the quality of digital signals in a multi-level signaling system
US5144305A (en) Transmission arrangement comprising a block code encoded main channel and an auxiliary channel
US20140146835A1 (en) 64b/66b codec for ethernet applications
CN101729193A (en) Coding method and device, decoding method and device and coding and decoding system
US7302631B2 (en) Low overhead coding techniques
JP2951992B2 (en) Method and apparatus for transmitting information between stations of a communication network, especially for motor vehicles
US6101281A (en) Method for improving data encoding and decoding efficiency
US8873592B1 (en) System and method for adding a low data rate data channel to a 100Base-T ethernet link
WO2002047340A1 (en) Balanced mbnb coding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant