CN1258133A - Coding chip - Google Patents
Coding chip Download PDFInfo
- Publication number
- CN1258133A CN1258133A CN 98111754 CN98111754A CN1258133A CN 1258133 A CN1258133 A CN 1258133A CN 98111754 CN98111754 CN 98111754 CN 98111754 A CN98111754 A CN 98111754A CN 1258133 A CN1258133 A CN 1258133A
- Authority
- CN
- China
- Prior art keywords
- coding
- code word
- code
- symbol
- coding chip
- 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
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
An encode chip for error correction of data communication channel features that its encode technique including parameter selection and encode algorithm conforms with the RS (REED-SOLOMON) encode disposal in telemeasuring channel encode, its all functions are performed by hardware and all circuits are contained on an FPGA chip. It has the power to correct random and burst errors and can be used for space data transmission and mass storage.
Description
The invention provides a kind of RS (255,223) coding chip, RS (REED and SOLOMON) coding chip belongs to the channel error correction coding, is used for several data codings such as aerospace telemetry channel or mass data storage, with the correct transmission of guarantee information.
In message transmitting procedure, for the correct transmission of guarantee information, often before entering channel, it to be encoded, receiving terminal is decoded to it earlier after receiving data accordingly, as shown in Figure 1, corrected the mistake that in the Channel Transmission process, takes place in the decode procedure simultaneously.The coding method difference that is adopted, the power of error correcting capability is just different.The RS sign indicating number was proposed by REED and SOLOMON in nineteen sixty.Because RS sign indicating number self has stronger error correcting capability, not only can correct random error, can also correct burst error, and can be used for constructing other yard class, as the level joined mark, so be widely used in aspects such as digital communication system, various data-storage systems in recent years.But adopt the RS sign indicating number of different sign indicating number types and coding method, on error correcting capability and performance parameter, a great difference is arranged.
The object of the present invention is to provide a kind of RS (255,223) coding chip, it can be encoded about the suggestion of the Reed-Solomon coding in the telemeter channel coding by CCSDS (international space data system Advisory Board) to original information data, be used with corresponding decoder, can correct the mistake of 16 symbols, and identifying the mistake that exceeds error correcting capability, encoding time delay is a byte.Whole coding circuit is all realized with hardware, is write a slice FPGA (field programmable gate array) chip at last.
A kind of RS coding chip of the present invention, the sign indicating number type is RS (255,223), cataloged procedure is realized with hardware fully, in cataloged procedure, adopt the Berlekamp algorithm according to international space data system Advisory Board (CCSDS) about the suggestion in the telemeter channel coding, carried out basic conversion before and after the coding respectively.Its yard shape parameter is as follows:
J=8 is the code element number of each RS symbol;
E=16 is the error correcting capability of RS symbol in the RS code word;
I=1 is the intersymbol error degree of depth, (during I=1, being equivalent to not staggered);
J, E, I are independent parameter.
N=2
J-1=255 is the symbolic number of each RS code word;
2E is a symbolic number of representing check digit in the RS code word;
K=n-2E is the symbolic number of representative information position in the RS code word;
The territory generator polynomial
F (X)=X
8+ X
7+ X
2+ X+1 goes up definition at GF (2).
The sign indicating number generator polynomial
At GF (2
8) last definition, wherein F (α)=0; Its coding method is characterised in that:
Adopt the Berlekamp algorithm, structure generator polynomial g (x) is from symmetric polynomial,
Be g
i=g
2E-1, g
iThe operand of z has been saved half, uses the components and parts number also to save half;
Choose 1, β, β
2, β
3, β
4, β
5, β
6, β
7(β=α wherein
117) institute right
Double-basis { the α that answers
125, α
88, α
226, α
163, α
46, α
184, α
67, α
242, adopt GF
(2
8) on the bit string multiplication, realize two eight-digit numbers by simple displacement and mould two-phase Calais
Multiply each other.
Input code block sync signal TCY and input information position useful signal DINEN are set, in information bit
Symbol is less than under 223 the situation, adds virtual filling automatically, promptly inserts when code block begins
Go into the full zero-bit of P byte.Virtual filling is not transmitted, and only is used for logically completion code block;
All circuit are all write a slice fpga chip.
In order to further specify purpose of the present invention and feature, below in conjunction with accompanying drawing the present invention is done a detailed description, wherein:
Fig. 1 is message transmitting procedure figure;
Fig. 2 is RS of the present invention (255,223) coding principle figure;
Fig. 3 is the circuit structure diagram of RS of the present invention (255,223) coding;
Fig. 4 is a coding circuit schematic diagram of the present invention;
Fig. 5 is a signal timing diagram of the present invention.
The parameters that coding of the present invention adopted is as follows:
J=8 is the code element number of each RS symbol;
E=16 is the error correcting capability of RS symbol in the RS code word;
I=1 is the intersymbol error degree of depth, (during I=1, being equivalent to not staggered);
J, E, I are independent parameter.
N=2
J-1=255 is the symbolic number of each RS code word;
2E is a symbolic number of representing check digit in the RS code word;
K=n-2E is the symbol number of representative information position in the RS code word.The territory generator polynomial
F (X)=X
8+ X
7+ X
2+ X+1 goes up definition at GF (2).The sign indicating number generator polynomial
At GF (2
8) last definition, wherein F (α)=0.Every coefficient g
iAs follows: g
0=g
32=α
0g
1=g
31=α
249g
2=g
30=α
59g
3=g
29=α
66g
4=g
28=α
4g
5=g
27=α
43g
6=g
26=α
126g
7=g
25=α
251g
8=g
24=α
97g
9=g
23=α
30g
10=g
22=α
3g
11=g
21=α
213g
12=g
20=α
50g
13=g
19=α
66g
14=g
18=α
170g
15=g
17=α
5g
16=α
24
In fact the cataloged procedure of RS sign indicating number is exactly information bit and the generator polynomial process of obtaining check digit according to it.We use GF (2
J) on multinomial
C (x)=c
N-1x
N-1+ c
N-2x
N-2+ ... c
2Ex
2E+ c
2E-1x
2E-1+ ... c
1X+c
0Represent code word
C=c
N-1c
N-2C
2Ec
2E-1C
1c
0, c wherein
i∈ GF (2
J).Equally
I (x)=c
N-1x
K-1+ c
N-2x
K-2+ ... + c
2EExpression information bit multinomial,
R (x)=c
2E-1x
2E-1+ ... c
1X+c
0Expression check digit multinomial.C (x) should be able to be divided exactly by g (x), that is to say
c(x)=x
2EI(x)+r(x)≡0modg(x),
Because r (x) ≡ is x
2EI (x) mod g (x), (1) r (x) as can be known divides exactly x with g (x)
2EThe residue of I (x) gained.The principle of RS (255,223) coding as shown in Figure 2.Q, R among the figure
i(i=0,1 ..., 30) be eight register, 1 and 2 represent two eight bits respectively multiply each other and addition g
i(i=0,1 ..., 31) and represent every coefficient of generator polynomial.Elder generation is all registers clear 0 before the coding beginning.Two switches are all beaten in the A position during coding beginning, make information bit enter encoder in proper order, and the while also sends as the part of code word.Switch was all beaten in the B position after all information bits all sent, and encoder begins to send successively check digit, made register Q clear 0 simultaneously, for next code word is prepared.
The main coding circuit of this chip has partly adopted the BERLEKAMP algorithm, realizes Z and g among Fig. 2 with the bit string multiplication
iMultiply each other.At first choose suitable j, structure generator polynomial g (x) is from symmetric polynomial, i.e. g
i=g
2E-iThereby, only need calculate T
i=zg
i(i=0,1 ..., 16), g
iThe operand of z has been saved half, and the number of used components and parts has also just reduced half.Secondly, use the theory of finite field, choose 1, β, β
2, β
3, β
4, β
5, β
6, β
7(β=α wherein
117) pairing double-basis is as new base, and each is entered the element of coding circuit
U=u
7α
7+ u
6α
6+ ... + u
0α
0Carry out basic conversion earlier, u can be expressed as again
Z=z
0l
0+ z
1l
1+ ... + z
7l
7, [l wherein
0, l
1, l
2, l
3, l
4, l
5, l
6, l
7]
=[α
125,α
88,α
226,α
163,α
46,α
184,α
67,α
242]。The symbol that generates carried out corresponding basic inverse transformation before leaving coding circuit.Transformation relation between the new and old coefficient is as follows:
[z
0,z
1,…,z
7]=[u
7,u
6,…,u
0]T
α1 (2)
[u
7, u
6..., u
0]=[z
0, z
1..., z
7] T
α 1 -1(3) wherein
∴z
i=Tr(zβ
i)
Annotate
Order
T
l(z)=Tr(zg
l)
Then
Z wherein
tBe Tr (g in every coefficient of z
ll
tThe item of) ≠ 0
z
1 (l)=T
1 (l)=T
l(β
1Z)=and Tr[(z β) g
lIf] calculated T
i(z), replace z as input with β z so, can calculate with same process and structure and compare T
i(z) position of Gao Yiwei.And can obtain by simple displacement to β z by z:
z=[Tr(z),Tr(βz),…,Tr(β
7z)] βz=[Tr(βz),Tr(β
2z),…,Tr(β
8z)]
=[z
1, z
2..., z
7, z
8] wherein
T and T
iThe calculating formula as follows: T
0=z
0T
1=z
1+ z
2+ z
4+ z
6T
2=z
2+ z
3T
3=z
0+ z
2+ z
4+ z
5T
4=z
0+ z
2+ z
3+ z
7T
5=z
0+ z
1+ z
2+ z
3+ z
4+ z
5+ z
6+ z
7T
6=z
0+ z
1+ z
2+ z
6+ z
7T
7=z
0+ z
1+ z
5+ z
6T
8=z
1+ z
2+ z
4T
9=z
0+ z
2+ z
3+ z
4+ z
5T
10=z
0+ z
1+ z
4+ z
7T
11=z
4T
12=z
0+ z
1+ z
2+ z
3+ z
4+ z
5+ z
6+ z
7
T
13=T
3
T
14=z
0+z
1+z
2+z
4+z
5+z
6
T
15=z
0+z
1+z
3+z
5+z
7
T
16=z
1+z
2+z
6
T=z
0+ z
1+ z
3+ z
7In the top formula+finger print two additions, can finish with the XOR gate of two inputs.Adopt this algorithm, realize multiplying each other of two eight-digit numbers, greatly reduce the complexity of structure and use the components and parts number by simple displacement and mould two-phase Calais.
Actual coding circuit comprises input circuit, basic conversion, BERLEKAMP coding circuit, basic inverse transformation, output circuit and six parts of control circuit (as shown in Figure 3).Input circuit wherein mainly is one eight a d type flip flop, base conversion, basic inverse transformation part are finished the Coordinate Conversion of code-word symbol under different bases according to formula (2), (3) respectively, and BERLEKAMP coding circuit (as shown in Figure 4) is finished main cataloged procedure.S among the figure
i(i=0,1,---, 30) be that eight seal in gone here and there out shift register, PSS is that eight serial/parallel goes into and go out shift register, and SSP is eight a SI PO shift register, 1 and 2 are respectively eight and XOR device one among the figure, and 3 is eight alternative device.The CMPT of Fig. 4 partly is some combinational logic circuits, finishes T and T
iCalculating.What need here especially to indicate is: because decoder is always worked on complete code block, if the information bit symbol is less than 223, such as be 223-P (as Fig. 5), then add virtual filling automatically, promptly insert the full zero-bit of P byte when code block begins.Virtual filling is not transmitted, and only is used for logically completion code block.Output circuit is made of eight alternative circuit and one eight s' trigger, finishes the order output of the information bit and the check digit of code word.Control circuit generates control signal, and operations such as input, coding, output can be carried out chronologically in strictness.Marked all external signals of chip among the figure simultaneously, wherein I[7:0] and O[7:0] being parallel input, outputting data signals, all the other are control signal.TCY is the input code block sync signal, is high therebetween in first effective byte of input code block, and all the other times are low.DINEN is an input information position useful signal, is high therebetween in the effective codeword information of input position, and all the other times are low.BYCLK is the byte clock, and CLK is a bit clock.TOCYO is the output code block sync signal, is high therebetween in first effective byte of output code block, and all the other times are low.DOEN is an output information position useful signal, is high therebetween in the effective codeword information of output position, and all the other times are low.Sequential relationship between the signal is exported as shown in Figure 5 than byte clock of Input Hysteresis.
Another characteristics of design process are that all functions all realize with hardware, have adopted the FPGA technology in the implementation procedure, and entire circuit is write a slice fpga chip.
The present invention is compared with traditional board-level circuit, and it has the superiority of two aspects:
1, because entire circuit writes a slice fpga chip at last, stable and reliable for performance, the performance of main and used fpga chip is relevant, is subjected to ectocine little;
2, at the application demand of reality, can revise the indoor design circuit rapidly easily, keep external interface constant simultaneously;
3, volume is little, and is very convenient during use.
Claims (4)
1, a kind of coding chip is characterized in that: its yard shape parameter is as follows:
J=8 is the code element number of each RS symbol;
E=16 is the error correcting capability of RS symbol in the RS code word;
I=1 is the intersymbol error degree of depth, (during I=1, being equivalent to not staggered);
J, E, I are independent parameter.
N=2
J-1=255 is the symbolic number of each RS code word;
2E is a symbolic number of representing check digit in the RS code word;
K=n-2E is the symbolic number of representative information position in the RS code word;
The territory generator polynomial
F (X)=X
8+ X
7+ X
2+ X+1 goes up definition at GF (2).
The sign indicating number generator polynomial
At GF (2
8) last definition, wherein F (α)=0.
2, coding chip according to claim 1, its coding method is characterised in that: adopt the Berlekamp algorithm, structure generator polynomial g (x) is from symmetric polynomial, i.e. g
i=g
2E-i, g
iThe operand of z has been saved half, uses the components and parts number also to save half; Choose 1, β, β
2, β
3, β
4, β
5, β
6, β
7(β=α wherein
117) pairing double-basis { α
125, α
88, α
226, α
163, α
46, α
184, α
67, α
242, adopt GF (2
8) on the bit string multiplication, realize multiplying each other of two eight-digit numbers by simple displacement and mould two-phase Calais.
3, coding chip according to claim 1, it is characterized in that: input code block sync signal TCY and input information position useful signal DINEN are set, be less than at the information bit symbol under 223 the situation, add virtual filling automatically, promptly when code block begins, insert the full zero-bit of P byte.Virtual filling is not transmitted, and only is used for logically completion code block.
4, coding chip according to claim 1 is characterized in that: all circuit are all write a slice fpga chip.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN98111754A CN1121758C (en) | 1998-12-24 | 1998-12-24 | Coding chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN98111754A CN1121758C (en) | 1998-12-24 | 1998-12-24 | Coding chip |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1258133A true CN1258133A (en) | 2000-06-28 |
CN1121758C CN1121758C (en) | 2003-09-17 |
Family
ID=5221657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98111754A Expired - Fee Related CN1121758C (en) | 1998-12-24 | 1998-12-24 | Coding chip |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1121758C (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1303763C (en) * | 2003-04-18 | 2007-03-07 | 清华大学 | Coding equivalent to RS code and algorithm of its quick compiled code |
WO2018214262A1 (en) * | 2017-05-23 | 2018-11-29 | 宁德时代新能源科技股份有限公司 | Encoding chip and cell supervision circuit |
-
1998
- 1998-12-24 CN CN98111754A patent/CN1121758C/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1303763C (en) * | 2003-04-18 | 2007-03-07 | 清华大学 | Coding equivalent to RS code and algorithm of its quick compiled code |
WO2018214262A1 (en) * | 2017-05-23 | 2018-11-29 | 宁德时代新能源科技股份有限公司 | Encoding chip and cell supervision circuit |
CN108933601A (en) * | 2017-05-23 | 2018-12-04 | 宁德时代新能源科技股份有限公司 | Coding chip and battery monitoring unit |
CN108933601B (en) * | 2017-05-23 | 2020-06-19 | 宁德时代新能源科技股份有限公司 | Coding chip and battery monitoring unit |
Also Published As
Publication number | Publication date |
---|---|
CN1121758C (en) | 2003-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0066618B1 (en) | Bit serial encoder | |
JP3046988B2 (en) | Method and apparatus for detecting frame synchronization of data stream | |
JPS6148298B2 (en) | ||
CN101902228B (en) | Rapid cyclic redundancy check encoding method and device | |
CN1012400B (en) | Error correcting method and circuit | |
CN101636914A (en) | Method and apparatus for encoding and decoding data | |
CN101777926B (en) | General decoder of Turbo product code and method thereof | |
US8700971B2 (en) | Parallel residue arithmetic operation unit and parallel residue arithmetic operating method | |
CN101814922A (en) | Multi-bit error correcting method and device based on BCH (Broadcast Channel) code and memory system | |
WO2016127853A1 (en) | Encoding device and encoding method for two-dimensional product codes based on extended hamming codes | |
CN1431594A (en) | Method for parallel computing code of CRC in multiple channels and multiple bits | |
CN100546207C (en) | A kind of dual-binary Turbo code encoding method based on the DVB-RCS standard | |
CN101151806B (en) | Memory efficient interleaving / de-interleaving utilizing the periodicity of the mapping function | |
CN112468161A (en) | RS high-speed coding circuit | |
CN1292950A (en) | Technique for finding starting state for convolutional feedback encoder | |
CN101567696B (en) | Encoder and decoder of Code BCH with changeable parameters | |
CN1476675A (en) | Method and apparatus for encoding of linear block codes | |
US3571795A (en) | Random and burst error-correcting systems utilizing self-orthogonal convolution codes | |
CN1121758C (en) | Coding chip | |
CN100417031C (en) | Method of realizing Reed Solomen convolution code in broadband radio insertion system | |
US7398456B2 (en) | Information encoding by shortened Reed-Solomon codes | |
CN100459438C (en) | Reed-solomon decoder key equation and error value solving-optimizing circuit | |
CN1182657C (en) | Method used to reduce storage content needed and complexity by product code decode | |
CN111900999A (en) | High-performance polarization coding method and coder for satellite discontinuous communication | |
CN1773864B (en) | Extended Reed-Solomon code decoding method which error-correcting capcity is 2 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030917 Termination date: 20100125 |