CN101764617A - Encoding method of 9B/10B code - Google Patents

Encoding method of 9B/10B code Download PDF

Info

Publication number
CN101764617A
CN101764617A CN200910243680A CN200910243680A CN101764617A CN 101764617 A CN101764617 A CN 101764617A CN 200910243680 A CN200910243680 A CN 200910243680A CN 200910243680 A CN200910243680 A CN 200910243680A CN 101764617 A CN101764617 A CN 101764617A
Authority
CN
China
Prior art keywords
code word
polarity
10bit
unbalance
sign indicating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910243680A
Other languages
Chinese (zh)
Other versions
CN101764617B (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN2009102436809A priority Critical patent/CN101764617B/en
Publication of CN101764617A publication Critical patent/CN101764617A/en
Application granted granted Critical
Publication of CN101764617B publication Critical patent/CN101764617B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses an encoding method of 9B/10B code, which comprises the following steps of: dividing 9-bit code work into three code segments, and mapping to obtain negative polar 10-bit code word; calculating the unbalance of the negative polar 10-bit code word, and calculating positive polar 10-bit code word according to the unbalance; and calculating the polarity of current channel code stream, and selecting the negative polar 10-bit code word or the positive polar 10-bit code word to output according to the polarity so as to realize DC balance. The method utilizes the jump of the deviation of positive polarity and negative polarity, realizes the DC control of encoding and has the advantages of high encoding efficiency and good DC characteristic.

Description

A kind of coding method of 9B/10B sign indicating number
Technical field
The present invention relates to communication technical field, relate to a kind of coding method of 9B/10B sign indicating number particularly, it has the direct current equalization characteristic.
Background technology
Along with the fast development of the communication technology, the speed and the data volume of transfer of data all are greatly improved, and therefore reliability of data transmission are also had higher requirement.Because the increase of transmission range and the raising of transmission rate, it is very serious that signal attenuation becomes, and obviously distortion also takes place waveform easily, thereby causes data reliability obviously to descend.In order to increase reliability of data transmission and stability, need carry out coded modulation to digital signal, signal spectrum and transmission medium are complementary, to realize making full use of to transmission medium.
Fiber optical digital transmission system with respect to common wired communication system have that loss is low, the bandwidth ratio broad, electromagnetic interference is little and advantage such as fail safe height, be applied in the communication system more and more.The mB/nB modulation code is a kind of coding the most frequently used in the fiber optical digital transmission system, and its essence is a kind of block code, can preestablish a kind of coding rate and efficient according to the requirement of transmission characteristic all than higher mapping ruler, is suitable for hardware and realizes.The mB/nB modulation code has advantages such as the signal spectrum characteristic is better, baseline shift is little, the error rate is low.
The cardinal principle of mB/nB coding is that the binary system source code flow of input is divided into groups, and every group has m binary code, is designated as mB, is called a code word, then a code word is transformed to n binary code, is designated as nB, and exports in same time slot.M and n are positive integers, n>m, generally choose n=m+1, wherein, 1B/2B, 2B/3B, 3B/4B etc. are mainly used in the transmission of low rate optical fiber and digital, 5B/6B, 5B/7B, 6B/8B, 7B/8B etc. are mainly used in two-forty optical fiber and digital transmission, but the highlyest also can only reach million bits/s up to a hundred, still can't satisfy the needs of actual transmissions.
At present the gigabit Ethernet of 1000BASE-SX standard mainly adopts is that transmission bandwidth is little, transition density is high and code word run length and 8B/10B modulation code with dc balance characteristic.But the code efficiency of 8B/10B modulation code has only 80%, still has the demand that further improves code efficiency in high speed data transmission system.And code efficiency than higher 9B/10B modulation code because the cataloged procedure complexity, amount of calculation is big, is difficult to hardware realize, the application in the Optical Fiber Transmission field at present is subjected to certain limitation.
Summary of the invention
At the deficiencies in the prior art, the objective of the invention is to provide the coding method of the higher and simple 9B/10B sign indicating number of cataloged procedure of a kind of code efficiency.
To achieve these goals, the invention provides a kind of coding method of 9B/10B sign indicating number, may further comprise the steps: the 9bit code word is divided into three sign indicating number sections, and shines upon and obtain negative polarity 10bit code word; Calculate the degree of unbalance of negative polarity 10bit code word, and calculate positive polarity 10bit code word according to degree of unbalance; Calculate current channel code stream polarity, and select negative polarity 10bit code word or the output of positive polarity 10bit code word, to realize the direct current equilibrium according to polarity.
The invention has the beneficial effects as follows that this method adopts the coding method of 9B/10B sign indicating number, its theoretical code efficiency can have the high advantage of code efficiency up to 90%.In the cataloged procedure code word is divided into three sign indicating number sections and classifies respectively and shine upon, can greatly simplify 9B/10B code table generative process, effectively improved coding rate, the hardware that is easy to the 9B/10B codec is simultaneously realized.In addition, this method is also utilized the redirect of positive-negative polarity deviation, realizes the DC control of coding, and selects the short code word of run length in the code table design process as far as possible, has code efficiency height, DC characteristic is good, run length is short advantage.
Description of drawings
Above-mentioned and/or additional aspect of the present invention and advantage are from obviously and easily understanding becoming the description of embodiment below in conjunction with accompanying drawing, wherein:
Fig. 1 is the flow chart according to the coding method of the 9B/10B sign indicating number of the embodiment of the invention;
Fig. 2 is the process schematic diagram according to code word mapping in the coding method of the 9B/10B sign indicating number of the embodiment of the invention; And
Fig. 3 is the process schematic diagram that upgrades according to channel code stream polarity in the coding method of the 9B/10B sign indicating number of the embodiment of the invention.
Embodiment
Below in conjunction with the drawings and specific embodiments the present invention is described in further detail.
Shown in Fig. 1 is roughly flow process according to the coding method of the 9B/10B sign indicating number of the embodiment of the invention.The key step of the coding method of this 9B/10B sign indicating number is: at first the 9bit code word is divided into three sign indicating number sections, and shines upon and obtain negative polarity 10bit code word; Calculate the degree of unbalance of negative polarity 10bit code word then, and calculate positive polarity 10bit code word according to degree of unbalance; Calculate current channel code stream polarity at last, and select negative polarity 10bit code word or the output of positive polarity 10bit code word, to realize the direct current equilibrium according to polarity.The concrete operations of each step are as follows:
S1: the 9bit code word is divided into three sign indicating number sections, and shines upon and obtain negative polarity 10bit code word.
Shown in Fig. 2 is roughly process according to code word mapping in the coding method of the 9B/10B sign indicating number of the embodiment of the invention.In conjunction with Fig. 1 and Fig. 2 as can be seen, in step S1, at first will import 9bit code word that data divide into groups to obtain to be divided into length be 4bit, 1bit and three sign indicating number sections of 4bit and classify respectively, so that each 9bit code word is classified; Then three sign indicating number sections of sorted 9bit code word being mapped to length respectively is 4bit, 2bit and three sign indicating number sections of 4bit, to form described negative polarity 10bit code word.Code word is divided into three sign indicating number sections, and the code table that can greatly simplify the 9B/10B sign indicating number generates and cataloged procedure, and the hardware that also is easy to the 9B/10B codec is simultaneously realized.
S101: it is that 4bit, 1bit and three sign indicating number sections of 4bit are also classified respectively that the 9bit code word is divided into length, so that the 9bit code word is classified.
In step S101, at first 9bit code word X is divided into first yard section X of 4bit 1, 1bit second yard section X 2Trigram section X with 4bit 3, concrete form is:
X=X 1-X 2-X 3=[x 8x 7x 6x 5x 4x 3x 2x 1x 0]
Wherein
X 1=[x 8x 7x 6x 5],X 2=[x 4],X 3=[x 3x 2x 1x 0]
Then with first yard section X of 9bit code word 1With trigram section X 3In 4bit information be divided into 5 classes according to the number of " 1 " in the bit respectively, be respectively 0,1,2,3,4, the second yard section X corresponding to the number of " 1 " 2In 1bit information be divided into 2 classes according to the state of " 1 " in the bit and " 0 ", corresponding state is respectively 1,0, thereby the 9bit code word is divided into 5 * 2 * 5=50 class.For example, be categorized as 3-1-2 under it for 9bit code word 1110-1-0101.
S102: it is 4bit, 2bit and three sign indicating number sections of 4bit that three sign indicating number sections of sorted described 9bit code word are mapped to length respectively, to form described negative polarity 10bit code word.
For the ease of more clearly describing the coding mapping ruler, the method that also can adopt similar step S101 in step S102 is carried out segmentation and classification to each bit of 10bit code word.10bit code word Y is divided into first yard section Y of 4bit 1, 2bit second yard section Y 2Trigram section Y with 4bit 3, concrete form is:
Y=Y 1-Y 2-Y 3=[y 9y 8y 7y 6y 5y 4y 3y 2y 1y 0]
Wherein
Y 1=[y 9y 8y 7y 6],Y 2=[y 5y 4],Y 3=[y 3y 2y 1y 0]
Then with first yard section Y of 10bit code word 1With trigram section Y 3In 4bit information be divided into 5 classes according to the number of " 1 " in the bit respectively, be respectively 0,1,2,3,4, the second yard section Y corresponding to the number of " 1 " 2In 2bit information be divided into 4 classes according to the assembled state of " 1 " in the bit and " 0 ", be respectively 00,01,10,11 corresponding to the assembled state of " 1 " and " 0 ", thereby the 10bit code word be divided into 5 * 4 * 5=100 class.For example, be categorized as 4-01-1 under it for 10bit code word 1111-01-0010.
After classification is finished to the 9bit code word, utilize the classification of 9bit code word from default common code word mapping ruler correction chart, common code word mapping ruler table and special code word mapping ruler table, to select corresponding mapping ruler that the 9bit code word is shone upon.Table 1 is common code word mapping ruler correction chart, and table 2 is common code word mapping ruler table, and table 3 is special code word mapping ruler table.Mapping ruler shown in table 1, table 2 and the table 3 is that principle designs to reduce 9B/10B codec design complexity, is easy to hardware and realizes.
Table 1
Source word ([x 8...x 0]) Code word ([y 9...y 0]) Source word ([x 8...x 0]) Code word ([y 9...y 0])
?0001-1-1000 ?1110-11-1010 ?0001-1-1111 ?1101-11-1010
?0011-1-1111 ?1011-11-1010 ?1111-1-0111 ?0111-11-1010
Table 2
??X??????Y???????R ??X??????Y???????R ??X??????Y???????R ??X??????Y???????R ??X??????Y???????R
??0-0-0??3-11-2??N 1??1-0-0??2-11-1??D 1??2-0-0??2-11-2??D 1??3-0-0??3-11-2??B 1??4-0-0??3-11-2??N 3??0-1-0??3-11-2??N 5??1-1-0??2-11-1??D 2??2-1-0??2-11-2??D 2??3-1-0??3-11-0??A 1??4-1-0??3-11-2??N 7 ??0-0-1??2-11-1??C 1??1-0-1??3-00-3??A 4??2-0-1??2-00-3??A 2??3-0-1??3-01-1??A 1??4-0-1??2-11-1??C 2??0-1-1??2-11-1??C 3??1-1-1??1-11-3??A 2??2-1-1??2-11-3??A 2??3-1-1??3-10-1??A 1??4-1-1??2-11-1??C 4 ??0-0-2??2-11-2??C 1??1-0-2??3-00-2??A 3??2-0-2??2-01-2??A 1??3-0-2??3-01-2??A 1??4-0-2??2-11-2??C 2??0-1-2??2-11-2??C 3??1-1-2??1-11-2??A 1??2-1-2??2-10-2??A 1??3-1-2??3-10-2??A 1??4-1-2??2-11-2??C 4 ??0-0-3??3-11-1??E 1??1-0-3??1-01-3??A 1??2-0-3??2-01-3??A 1??3-0-3??3-01-3??A 1??4-0-3??3-11-1??E 2??0-1-3??3-11-1??E 3??1-1-3??1-10-3??A 1??2-1-3??2-10-3??A 1??3-1-3??3-10-3??A 1??4-1-3??3-11-1??E 4 ??0-0-4??3-11-2??N 2??1-0-4??1-00-4??A 1??2-0-4??2-00-4??A 1??3-0-4??3-00-4??A 1??4-0-4??3-11-2??N 4??0-1-4??3-11-2??N 6??1-1-4??1-10-4??A 1??2-1-4??2-10-4??A 1??3-1-4??3-11-2??B 2??4-1-4??3-11-2??N 8
Table 3
Source word ([x 8...x 0]) Code word ([y 9...y 0]) Source word ([x 8...x 0]) Code word ([y 9...y 0])
?0111-1-1100 ??0111-11-1100 ?0001-1-1111 ??0001-10-1111
?1110-1-1100 ??1110-11-1100 ?1101-1-1100 ??1101-11-1100
?0011-1-1111 ??0011-10-1111 ?0111-1-1000 ??0111-11-1000
?0001-1-0111 ??0001-11-0111 ?1011-1-1100 ??1011-11-1100
Because the code stream that transmits in the channel comprised common code word and had the special code word of specific function such as frame synchronization, for fear of in mapping process, common code word mistake coupling being special code word, tailor-make the common code word mapping ruler correction chart shown in the table 1.If the 9bit code word is common code word, at first question blank 1, if the 9bit code word can find mapping ruler accordingly in table 1, then directly shines upon according to the mapping ruler in the table 1, otherwise shines upon according to corresponding mapping ruler in the table 2.The concrete implication of mapping ruler R is as follows in the table 2:
Mapping ruler A 1: Y 1=X 1, Y 3=X 3, totally 316 mappings;
Mapping ruler A 2: Y 1=X 1, Y 3=-X 3(X 3Expression X 3Radix-minus-one complement, down with), totally 64 mappings;
Mapping ruler A 3: Y 1=-X 1, Y 3=X 3, totally 24 mappings;
Mapping ruler A 4: Y 1=-X 1, Y 3=-X 3, totally 16 mappings;
Mapping ruler B 1: Y 1=X 1, Y 3=[0011], totally 4 mappings;
Mapping ruler B 2: Y 1=X 1, Y 3=[0101], totally 4 mappings;
Mapping ruler C 1: Y 1=[0011], Y 3=X 3, totally 10 mappings;
Mapping ruler C 2: Y 1=[0101], Y 3=X 3, totally 10 mappings;
Mapping ruler C 3: Y 1=[0110], Y 3=X 3, totally 10 mappings;
Mapping ruler C 4: Y 1=[1001], Y 3=X 3, totally 10 mappings;
Mapping ruler D 1: Y 1=[1010], Y 3=X 1, totally 10 mappings;
Mapping ruler D 2: Y 1=[1100], Y 3=X 1, totally 10 mappings;
Mapping ruler E 1: Y 1=X 3, Y 3=[0001], totally 4 mappings;
Mapping ruler E 2: Y 1=X 3, Y 3=[0010], totally 4 mappings;
Mapping ruler E 3: Y 1=X 3, Y 3=[0100], totally 4 mappings;
Mapping ruler E 4: Y 1=X 3, Y 3=[1000], totally 4 mappings;
Mapping ruler N 1: Y 1=[0111], Y 3=[0110], totally 1 mapping;
Mapping ruler N 2: Y 1=[1011], Y 3=[0110], totally 1 mapping;
Mapping ruler N 3: Y 1=[1101], Y 3=[0110], totally 1 mapping;
Mapping ruler N 4: Y 1=[1110], Y 3=[0110], totally 1 mapping;
Mapping ruler N 5: Y 1=[0111], Y 3=[1001], totally 1 mapping;
Mapping ruler N 6: Y 1=[1011], Y 3=[1001], totally 1 mapping;
Mapping ruler N 7: Y 1=[1101], Y 3=[1001], totally 1 mapping;
Mapping ruler N 8: Y 1=[1110], Y 3=[1001], totally 1 mapping.
In signals transmission, need to add some special code words that are used to set up synchronously, diagnose line fault, control transmission state etc. to improve the reliability of signal transmission.When the 9bit code word is special code word, then shine upon according to the mapping ruler in the table 3.
After the process above-mentioned steps is finished mapping, the pairing negative polarity 10bit code word of the 9bit code word that can obtain importing.For example, be the code word 0110-1-0000 of 9bit for information source, its sorted value is 2-1-0, can get according to table 2, and its pairing 10bit code word value is 2-11-2, and mapping ruler is D 2, i.e. Y 1=[1100], Y 3=X 1, so Y is arranged 1=[1100], Y 2=[11], Y 3=X 1=[0110], promptly the pairing negative polarity 10bit code word of 9bit code word 0110-1-0000 is 1100-11-0110.
S2: calculate the degree of unbalance of negative polarity 10bit code word, and calculate positive polarity 10bit code word according to degree of unbalance.
The difference of the number that the degree of unbalance of 10bit code word is defined as " 0 " in this 10bit code word and the number of " 1 " for negative, is zero when equating, greater than Shi Weizheng when promptly the number of " 0 " is less than the number of " 1 ".
Calculate after the degree of unbalance, if degree of unbalance is zero, positive polarity 10bit code word is the true form of negative polarity 10bit code word; If degree of unbalance is non-vanishing, positive polarity 10bit code word is the radix-minus-one complement of negative polarity 10bit code word, thereby can obtain the positive polarity 10bit code word of all negative polarity 10bit code word correspondences.
For example, for information source be 9bit code word K.0FCH, K. represent that this code word is a spcial character, H is the hexadecimal representation symbol, this code word can be used for frame synchronization, belong to spcial character, its binary form is shown 0111-1-1100, table look-up 3 as can be known its pairing negative polarity 10bit code word be 0111-11-1100, the degree of unbalance of this 10bit code word is-4, so K.0FCH pairing positive-negative polarity 10bit code word is radix-minus-one complement each other, promptly positive polarity 10bit code word is 1000-00-0011, can be respectively 0111-11-1100 (bearing) and 1000-00-0011 (just) as the K.0FCH pairing positive-negative polarity code word of the 9bit code word of information source thus.
And for example, for information source be 9bit code word D.038H, D. represent that this code word is common character, its binary form is shown 0001-1-1000, belong to source word listed in the table 1, promptly D.038H for needing the code word of correction, table look-up 1 as can be known its pairing negative polarity 10bit code word be 1110-11-1010, the degree of unbalance of this 10bit code word is-4, so D.038H pairing positive-negative polarity 10bit code word is radix-minus-one complement each other, be that positive polarity 10bit code word is 0001-00-0101, can get the D.038H pairing positive-negative polarity code word of 9bit source word thus and be respectively 1110-11-1010 (bearing) and 0001-00-0101 (just).
For another example, for information source be 9bit code word D.086H, this code word is common character, its binary form is shown 0100-0-0110, do not belong to source word listed in the table 1, table look-up 2 as can be known its pairing negative polarity 10bit code word be 1011-00-0110, the degree of unbalance of this 10bit code word is 0, so D.086H pairing positive-negative polarity 10bit code word is identical, be that positive polarity 10bit code word also is 1011-00-0110, can get the D.086H pairing positive-negative polarity code word of 9bit source word thus and be respectively 1011-00-0110 (bearing) and 1011-00-0110 (just).
S3: calculate current channel code stream polarity, and select described negative polarity 10bit code word or the output of positive polarity 10bit code word, to realize the direct current equilibrium according to polarity.
Shown in Fig. 3 is the roughly process of upgrading according to channel code stream polarity in the coding method of the 9B/10B sign indicating number of the embodiment of the invention, wherein, and RD 10The degree of unbalance of the 10bit code word of expression output, RDS represents total degree of unbalance of channel code stream, concrete steps are as follows:
S301: the channel code stream polarity of setting initial time is for negative;
S302: judge the polarity of current channel code stream, if polarity is for negative, next output cathode 10bit code word constantly then, if polarity is being for just, next moment output negative pole 10bit code word then;
S303: total degree of unbalance RDS of calculating channel code stream after the output 10bit code word, and, carry out step S302 once more according to the polarity that total degree of unbalance RDS upgrades the channel code stream.
The degree of unbalance RD of the 10bit code word of all outputs between total degree of unbalance RDS of channel code stream is defined as from the initial time to the current time 10Summation.Calculate after total degree of unbalance RDS of current time channel code stream, if total degree of unbalance RDS is being for just, then the polarity of channel code stream just is updated to; If total degree of unbalance RDS is for negative, then the polarity of channel code stream is updated to negative; If total degree of unbalance RDS is zero, and the degree of unbalance RD of the 10bit code word of current output 10Be zero, then the polarity of channel code stream does not change; If total degree of unbalance RDS is zero, and the degree of unbalance RD of the 10bit code word of current output 10Non-vanishing, the then polarity inversion of channel code stream.And then select the polarity of next the 10bit code word that constantly can export according to the polarity of channel code stream.
According to described 9B/10B code word mapping method, each 9bit source word is all to there being two kinds of 10bit code words of positive-negative polarity.By selecting the code word output of opposed polarity, can realize the characteristic of the direct current equilibrium of cataloged procedure.
For example, information source codeword sequence to be encoded is as follows:
??K.0FCH ??D.0FCH ??D.038H ??D.086H ??D.009H ??D.188H ??D.15EH ??D.03FH
Be spcial character K.0FCH wherein, be used for frame synchronization, all the other are common character.Obtain the pairing positive-negative polarity 10bit of each 9bit source word code word according to above-mentioned code word mapping ruler, according to process shown in Figure 3 codeword sequence as information source is carried out the direct current equilibrium to obtain the 9B/10B coding again, its cataloged procedure is as follows:
The 9bit source word Negative polarity 10bit code word Positive polarity 10bit code word Channel code stream polarity before the coding The output code word Output code word degree of unbalance (RD 10??) The total degree of unbalance of channel code stream (RDS) Coding back channel code stream polarity
??K.0FCH ??0111-11-1100 ??1000-00-0011 Negative ??1000-00-0011 ??4 ??4 Just
??D.0FCH ??0111-10-1100 ??1000-01-0011 Just ??0111-10-1100 ??-2 ??2 Just
??D.038H ??1110-11-1010 ??0001-00-0101 Just ??1110-11-1010 ??-4 ??-2 Negative
??D.086H ??1011-00-0110 ??1011-00-0110 Negative ??1011-00-0110 ??0 ??-2 Negative
??D.009H ??0011-11-1001 ??1100-00-0110 Negative ??1100-00-0110 ??2 ??0 Just
??D.188H ??1100-00-0111 ??1100-00-0111 Just ??1100-00-0111 ??0 ??0 Just
??D.15EH ??1010-10-1110 ??0101-01-0001 Just ??1010-10-1110 ??-2 ??-2 Negative
??D.03FH ??1101-11-1010 ??0010-00-0101 Negative ??0010-00-0101 ??4 ??2 Just
As follows through the codeword sequence output that obtains behind the 9B/10B coding:
10000000110111101100111011101010110001101100000110110000011110101011100010000101
According to the coding method of the 9B/10B sign indicating number of embodiments of the invention, can adopt the EP2C35F484I8 chip design 9B/10B hardware coder and the decoder of altera corp.The whole design Verilog HDL programming language realize that used 242 logical blocks in the emulation experiment altogether, wherein encoder takies 120 logical blocks, decoder takies 122 logical blocks, the maximum clock frequency of system can reach 338MHz.In the cataloged procedure of 9B/10B sign indicating number, by selecting to the 10bit code word, rejecting may cause the long code word that connects " 0 " or connect " 1 ", and to lack the mapping ruler between run length principle of priority design information source code word and the target code word, finally realizes the control of the run length of channel code stream.The theoretic code efficiency of this coding method can reach 90%, compares with 8B/10B coding commonly used in the existing high-speed serial data transmission, and code efficiency has improved 12.5%, and promptly under identical operating frequency, its effective transmission speed has improved 12.5%.This method is utilized the redirect of positive-negative polarity deviation, realizes the DC control of coding, has code efficiency height, advantage that DC characteristic is good.For existing 9B/10B coding techniques, 9B/10B coding method of the present invention has the advantage that cataloged procedure is simple, coding rate is fast, is highly susceptible to hardware and realizes, is fit to be applied in the high-speed communication system.
More than disclosed only be the preferred embodiments of the present invention, can not limit the scope of the present invention with this certainly.Be appreciated that the equivalent variations of doing according to the present invention's essence defined in the appended claims and scope, still belong to the scope that the present invention is contained.

Claims (10)

1. the coding method of a 9B/10B sign indicating number is characterized in that, may further comprise the steps:
S1: the 9bit code word is divided into three sign indicating number sections, and shines upon and obtain negative polarity 10bit code word;
S2: calculate the degree of unbalance of described negative polarity 10bit code word, and calculate positive polarity 10bit code word according to described degree of unbalance;
S3: calculate current channel code stream polarity, and select described negative polarity 10bit code word or the output of positive polarity 10bit code word, to realize the direct current equilibrium according to described polarity.
2. the coding method of 9B/10B sign indicating number according to claim 1 is characterized in that, described step S1 comprises:
S101: it is that 4bit, 1bit and three sign indicating number sections of 4bit are also classified respectively that described 9bit code word is divided into length, so that described 9bit code word is classified;
S102: it is 4bit, 2bit and three sign indicating number sections of 4bit that three sign indicating number sections of sorted described 9bit code word are mapped to length respectively, to form described negative polarity 10bit code word.
3. the coding method of 9B/10B sign indicating number according to claim 2, it is characterized in that, described step S101 comprises first yard section of 9bit code word and the 4bit information in the trigram section is divided into 5 classes according to the number of " 1 " in the bit respectively, 1bit information in second yard section is divided into 2 classes according to the state of " 1 " in the bit and " 0 ", thereby described 9bit code word is divided into 50 classes.
4. according to the coding method of claim 2 or 3 described 9B/10B sign indicating numbers, it is characterized in that, described step S102 comprises first yard section of 10bit code word and the 4bit information in the trigram section is divided into 5 classes according to the number of " 1 " in the bit respectively, 2bit information in second yard section is divided into 4 classes according to the assembled state of " 1 " in the bit and " 0 ", thereby described 10bit code word is divided into 100 classes.
5. the coding method of 9B/10B sign indicating number according to claim 4, it is characterized in that described step S102 comprises that the classification corresponding mapping ruler of selection from default common code word mapping ruler correction chart, common code word mapping ruler table and special code word mapping ruler table that utilizes described 9bit code word shines upon described 9bit code word.
6. the coding method of 9B/10B sign indicating number according to claim 5, it is characterized in that, described step S102 comprises if described 9bit code word is common code word, inquire about described common code word mapping ruler correction chart, if described 9bit code word can find corresponding mapping ruler in described common code word mapping ruler correction chart, then directly shine upon, otherwise shine upon according to corresponding mapping ruler in the described common code word mapping ruler table according to described mapping ruler.
7. the coding method of 9B/10B sign indicating number according to claim 5 is characterized in that, described step S102 comprises if described 9bit code word is special code word, then shines upon according to the mapping ruler in the described special code word mapping ruler table.
8. the coding method of 9B/10B sign indicating number according to claim 1 is characterized in that, described step S2 comprises:
If described degree of unbalance is zero, positive polarity 10bit code word is the true form of described negative polarity 10bit code word; If described degree of unbalance is non-vanishing, positive polarity 10bit code word is the radix-minus-one complement of described negative polarity 10bit code word.
9. the coding method of 9B/10B sign indicating number according to claim 1 is characterized in that, described step S3 comprises:
S301: the channel code stream polarity of setting initial time is for negative;
S302: judge the polarity of current channel code stream, if described polarity is for negative, then next exports described positive polarity 10bit code word constantly, if described polarity is being for just, then next exports described negative polarity 10bit code word constantly;
S303: total degree of unbalance of calculating channel code stream after the output 10bit code word, and upgrade the polarity of channel code stream according to described total degree of unbalance, carry out step S302 once more.
10. the coding method of 9B/10B sign indicating number according to claim 9 is characterized in that, described step S303 comprises:
If described total degree of unbalance is for just, then the polarity of channel code stream just is updated to;
If described total degree of unbalance is for negative, then the polarity of channel code stream is updated to negative;
If described total degree of unbalance is zero, and the degree of unbalance of the 10bit code word of current output is zero, and then the polarity of channel code stream does not change;
If described total degree of unbalance is zero, and the degree of unbalance of the 10bit code word of current output is non-vanishing, the then polarity inversion of channel code stream.
CN2009102436809A 2009-12-22 2009-12-22 Encoding method of 9B/10B code Expired - Fee Related CN101764617B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102436809A CN101764617B (en) 2009-12-22 2009-12-22 Encoding method of 9B/10B code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102436809A CN101764617B (en) 2009-12-22 2009-12-22 Encoding method of 9B/10B code

Publications (2)

Publication Number Publication Date
CN101764617A true CN101764617A (en) 2010-06-30
CN101764617B CN101764617B (en) 2012-05-30

Family

ID=42495622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102436809A Expired - Fee Related CN101764617B (en) 2009-12-22 2009-12-22 Encoding method of 9B/10B code

Country Status (1)

Country Link
CN (1) CN101764617B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103580774A (en) * 2012-07-19 2014-02-12 中兴通讯股份有限公司 Control signling transmission method and control signling transmission device
CN105938728A (en) * 2015-03-04 2016-09-14 爱思开海力士有限公司 Encoder and decoder design for near-balanced codes
CN106411322A (en) * 2016-11-04 2017-02-15 深圳国人通信股份有限公司 Encoding and decoding method and device of serial communication system based on SerDes technology
CN103199869B (en) * 2012-01-06 2017-05-10 上海华虹集成电路有限责任公司 8b/10b decoding circuit based on rd+
CN109889306A (en) * 2019-01-16 2019-06-14 中国航空工业集团公司洛阳电光设备研究所 A kind of coding polarity calculation method for high speed fibre digital transmission system
WO2022144030A1 (en) * 2020-12-30 2022-07-07 天津瑞发科半导体技术有限公司 9b/10b encoding and decoding methods

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3460122A (en) * 1966-02-23 1969-08-05 Bell Telephone Labor Inc Pulse code modulation apparatus
CN1300971C (en) * 2004-01-16 2007-02-14 中国科学院计算技术研究所 Method for realizing 16b/20b encoder logic based on double 8b/10b encoder
US7081838B2 (en) * 2004-12-29 2006-07-25 Enigma Semiconductor, Inc. 16b/10s coding apparatus and method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103199869B (en) * 2012-01-06 2017-05-10 上海华虹集成电路有限责任公司 8b/10b decoding circuit based on rd+
CN103580774A (en) * 2012-07-19 2014-02-12 中兴通讯股份有限公司 Control signling transmission method and control signling transmission device
CN105938728A (en) * 2015-03-04 2016-09-14 爱思开海力士有限公司 Encoder and decoder design for near-balanced codes
CN105938728B (en) * 2015-03-04 2020-08-11 爱思开海力士有限公司 Encoder and decoder designs for near-balanced codes
CN106411322A (en) * 2016-11-04 2017-02-15 深圳国人通信股份有限公司 Encoding and decoding method and device of serial communication system based on SerDes technology
WO2018082286A1 (en) * 2016-11-04 2018-05-11 深圳国人通信股份有限公司 Encoding and decoding method and apparatus for serial communication system based on serdes technology
CN109889306A (en) * 2019-01-16 2019-06-14 中国航空工业集团公司洛阳电光设备研究所 A kind of coding polarity calculation method for high speed fibre digital transmission system
CN109889306B (en) * 2019-01-16 2021-12-17 中国航空工业集团公司洛阳电光设备研究所 Encoding polarity calculation method for high-speed optical fiber digital transmission system
WO2022144030A1 (en) * 2020-12-30 2022-07-07 天津瑞发科半导体技术有限公司 9b/10b encoding and decoding methods

Also Published As

Publication number Publication date
CN101764617B (en) 2012-05-30

Similar Documents

Publication Publication Date Title
CN101764617B (en) Encoding method of 9B/10B code
CN101706763B (en) Method and device for serialization and deserialization
CN101777924B (en) Method and device for decoding Turbo codes
CN101453221A (en) Mapper based on bit weaving code modulation system and mapping process thereof
CN110008166A (en) Orthogonal differential vector signaling code with embedded clock
CN103095300B (en) Approach by inchmeal analog-to-digital converter and conversion method
CN101017574A (en) Huffman decoding method suitable for JPEG code stream
CN101847997A (en) 9B/10B coder-decoder and realization method thereof
CN103166743A (en) Base band digital signal encoding modulation integrated system
CN108809618B (en) Clock recovery method for 8b10b coded serial data
US7290202B2 (en) MB810 encoder/decoder, dual mode encoder/decoder, and MB810 code generating method
CN106788446A (en) A kind of new 8b/10b coding implementation methods
CN103974066A (en) Video coding method and device
CN107395539A (en) A kind of 8B10B encoder design methods the agreement suitable for JESD204B
CN100367256C (en) Method for high speed SATA interface data recovery and serial-parallel conversion and circuit module
CN103780250B (en) Change speed gear box circuit and the method for work thereof of data bit width is changed in high-speed transceiver
CN101228698B (en) 4-level logic decoder and method for decoding 4-level input data signal
US6225924B1 (en) Transmission coding method and device
US8885664B1 (en) Multi-rate media independent interface over a physical coding sublayer
CN114598579B (en) 9B/10B encoding and decoding method suitable for low-pass and band-pass channels
CN102664842A (en) System for reducing high-speed signal transmission intersymbol interference
CN103368695A (en) Energy distribution method based on bit error rate distribution
CN101944989A (en) Method and device for transmitting isochronous Ethernet
CN107196733A (en) A kind of modulator approach and device
CN111580595A (en) System for signal synchronization in related derivative clock domains of FPGA (field programmable Gate array)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120530

Termination date: 20171222