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

Encoding method of 9B/10B code Download PDF

Info

Publication number
CN101764617B
CN101764617B CN2009102436809A CN200910243680A CN101764617B CN 101764617 B CN101764617 B CN 101764617B CN 2009102436809 A CN2009102436809 A CN 2009102436809A CN 200910243680 A CN200910243680 A CN 200910243680A CN 101764617 B CN101764617 B CN 101764617B
Authority
CN
China
Prior art keywords
code word
polarity
10bit
unbalance
mapping ruler
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.)
Expired - Fee Related
Application number
CN2009102436809A
Other languages
Chinese (zh)
Other versions
CN101764617A (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 the reliability of transfer of data are also had higher requirement.Because it is very serious that the increase of transmission range and the raising of transmission rate, signal attenuation become, obviously distortion also takes place in 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 to divide into groups the binary system source code flow of input, and every group has m binary code, is designated as mB, is called a code word, is transformed to n binary code to a code word then, is designated as nB, and in same time slot, exports.M and n are positive integers; N>m generally chooses 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%, in high speed data transmission system, still has the demand that further improves code efficiency.And code efficiency is more complicated owing to cataloged procedure than higher 9B/10B modulation code, and amount of calculation is big, is difficult to hardware and realizes, the application in the Optical Fiber Transmission field at present receives certain limitation.
Summary of the invention
To the deficiency of 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 according to polarity, balanced to realize direct current.
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 in the code table design process, selects the short code word of run length 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 with 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 sketch map 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 sketch map 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
To combine accompanying drawing and specific embodiment that the present invention is done further explain below.
Shown in Fig. 1 is the 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 according to polarity, balanced to realize direct current.The concrete operations of each step are following:
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 the roughly process according to code word mapping in the coding method of the 9B/10B sign indicating number of the embodiment of the invention.Can find out in conjunction with Fig. 1 and Fig. 2, 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 said 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 types 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 types 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 said 9bit code word are mapped to length respectively, to form said negative polarity 10bit code word.
For the ease of more clearly describing the coding mapping ruler, the method that in step S102, also can adopt similar step S101 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 types 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 types 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 accomplished to the 9bit code word, utilize the classification of 9bit code word from preset 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 has comprised common code word and the special code word with 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 following 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 above-mentioned steps completion 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 corresponding positive polarity 10bit code word of all negative polarity 10bit code words.
For example, for information source be 9bit code word K.0FCH, K. representes that this code word is a spcial character; H is the hexadecimal representation symbol, and this code word can be used for frame synchronization, belongs to spcial character; Its binary form is shown 0111-1-1100; Table look-up and 3 can know that its pairing negative polarity 10bit code word is 0111-11-1100, the degree of unbalance of this 10bit code word is-4, so K.0FCH pairing positive-negative polarity 10bit code word radix-minus-one complement each other; Be that 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. representes that this code word is common character; Its binary form is shown 0001-1-1000; Belong to source word listed in the table 1, i.e. the code word for need revising is D.038H tabled look-up and 1 can be known that its pairing negative polarity 10bit code word is 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, promptly 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 and 2 can know that its pairing negative polarity 10bit code word is 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 said negative polarity 10bit code word or the output of positive polarity 10bit code word according to polarity, balanced to realize direct current.
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 representes total degree of unbalance of channel code stream, concrete steps are following:
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 property 10bit code word constantly then, if polarity is being for just, next moment output negative pole property 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 said 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.Through selecting the code word output of opposed polarity, can realize the balanced characteristic of direct current of cataloged procedure.
For example, information source codeword sequence to be encoded is following:
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 following:
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
Codeword sequence through obtaining behind the 9B/10B coding is exported as follows:
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; Through selecting to the 10bit code word; Rejecting possibly 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.
Above disclose be merely the preferred embodiments of the present invention, can not limit rights protection 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 (6)

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 said negative polarity 10bit code word, and calculate positive polarity 10bit code word according to said degree of unbalance;
S3: calculate current channel code stream polarity, and select said negative polarity 10bit code word or the output of positive polarity 10bit code word according to said current channel code stream polarity, balanced to realize direct current;
Said step S1 comprises:
S101: it is that 4bit, 1bit and three sign indicating number sections of 4bit are also classified respectively that said 9bit code word is divided into length, so that said 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 said 9bit code word are mapped to length respectively, to form said negative polarity 10bit code word;
Said step S101 comprises first yard section of 9bit code word and the 4bit information in the trigram section is divided into 5 types according to the number of " 1 " in the bit respectively; 1bit information in second yard section is divided into 2 types according to the state of " 1 " in the bit and " 0 ", thereby said 9bit code word is divided into 50 types;
Said step S102 comprises first yard section of 10bit code word and the 4bit information in the trigram section is divided into 5 types according to the number of " 1 " in the bit respectively; 2bit information in second yard section is divided into 4 types according to the assembled state of " 1 " in the bit and " 0 ", thereby said 10bit code word is divided into 100 types.
2. the coding method of 9B/10B sign indicating number according to claim 1; It is characterized in that said step S102 comprises that the classification corresponding mapping ruler of selection from preset common code word mapping ruler correction chart, common code word mapping ruler table and special code word mapping ruler table that utilizes said 9bit code word shines upon said 9bit code word.
3. the coding method of 9B/10B sign indicating number according to claim 2; It is characterized in that; Said step S102 comprises if said 9bit code word is common code word; Inquire about said common code word mapping ruler correction chart; If said 9bit code word can find corresponding mapping ruler in said common code word mapping ruler correction chart, then directly shine upon, otherwise shine upon according to corresponding mapping ruler in the said common code word mapping ruler table according to the corresponding mapping ruler of selection in said common code word mapping ruler correction chart and the special code word mapping ruler table.
3. the coding method of 9B/10B sign indicating number according to claim 2 is characterized in that, said step S102 comprises if said 9bit code word is special code word, then shines upon according to the mapping ruler in the said special code word mapping ruler table.
4. the coding method of 9B/10B sign indicating number according to claim 1 is characterized in that, said step S2 comprises:
If said degree of unbalance is zero, positive polarity 10bit code word is the true form of said negative polarity 10bit code word; If said degree of unbalance is non-vanishing, positive polarity 10bit code word is the radix-minus-one complement of said negative polarity 10bit code word.
5. the coding method of 9B/10B sign indicating number according to claim 1 is characterized in that, said 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 said polarity is for negative, then next exports said positive polarity 10bit code word constantly, if said polarity is being for just, then next exports said 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 said total degree of unbalance, carry out step S302 once more.
6. the coding method of 9B/10B sign indicating number according to claim 5 is characterized in that, said step S303 comprises:
If said total degree of unbalance is for just, then the polarity of channel code stream just is updated to;
If said total degree of unbalance is for negative, then the polarity of channel code stream is updated to negative;
If said 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 said 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 CN101764617A (en) 2010-06-30
CN101764617B true 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)

Families Citing this family (6)

* 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+
CN103580774B (en) * 2012-07-19 2019-01-04 中兴通讯股份有限公司 A kind of method and device of control signaling transmission
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
CN109889306B (en) * 2019-01-16 2021-12-17 中国航空工业集团公司洛阳电光设备研究所 Encoding polarity calculation method for high-speed optical fiber digital transmission system
CN112838868B (en) * 2020-12-30 2022-09-09 天津瑞发科半导体技术有限公司 9B/10B coding and decoding method

Citations (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
CN1558582A (en) * 2004-01-16 2004-12-29 中国科学院计算技术研究所 Method for realizing 16b/20b encoder logic based on double 8b/10b encoder
CN101112060A (en) * 2004-12-29 2008-01-23 恩尼格玛半导体有限公司 16b/10s coding apparatus and method

Patent Citations (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
CN1558582A (en) * 2004-01-16 2004-12-29 中国科学院计算技术研究所 Method for realizing 16b/20b encoder logic based on double 8b/10b encoder
CN101112060A (en) * 2004-12-29 2008-01-23 恩尼格玛半导体有限公司 16b/10s coding apparatus and method

Also Published As

Publication number Publication date
CN101764617A (en) 2010-06-30

Similar Documents

Publication Publication Date Title
CN101764617B (en) Encoding method of 9B/10B code
CN106576087B (en) Orthogonal differential vector signaling code with embedded clock
CN101777924B (en) Method and device for decoding Turbo codes
CN101706763B (en) Method and device for serialization and deserialization
CN101453221A (en) Mapper based on bit weaving code modulation system and mapping process thereof
US9235540B1 (en) Flexible high speed forward error correction (FEC) physical medium attachment (PMA) and physical coding sublayer (PCS) connection system
CN103534968B (en) The coding of a kind of ethernet physical layer, coding/decoding method and device
CN101969311B (en) High-speed parallel segmented staggering Viterbi decoding method
CN103166743A (en) Base band digital signal encoding modulation integrated system
CN103931146A (en) Method and device for data processing
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
CN102857239B (en) LDPC (Low Density Parity Check) serial encoder and encoding method based on lookup table in CMMB (China Mobile Multimedia Broadcasting)
CN108809618B (en) Clock recovery method for 8b10b coded serial data
CN107395539A (en) A kind of 8B10B encoder design methods the agreement suitable for JESD204B
CN101228698B (en) 4-level logic decoder and method for decoding 4-level input data signal
US8885664B1 (en) Multi-rate media independent interface over a physical coding sublayer
US6225924B1 (en) Transmission coding method and device
CN114598579B (en) 9B/10B encoding and decoding method suitable for low-pass and band-pass channels
CN105611402A (en) Channel expansion method supporting multipath PCM (Pulse Code Modulation) audio playing
CN105634439A (en) Design method of asynchronous shaping filter
CN110008157A (en) A kind of hardware structure of deserializer
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

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

Granted publication date: 20120530

Termination date: 20171222

CF01 Termination of patent right due to non-payment of annual fee