CN114726383A - High-throughput parallel cyclic redundancy check method based on CRC-16 - Google Patents
High-throughput parallel cyclic redundancy check method based on CRC-16 Download PDFInfo
- Publication number
- CN114726383A CN114726383A CN202210381920.7A CN202210381920A CN114726383A CN 114726383 A CN114726383 A CN 114726383A CN 202210381920 A CN202210381920 A CN 202210381920A CN 114726383 A CN114726383 A CN 114726383A
- Authority
- CN
- China
- Prior art keywords
- crc
- code
- parallel
- high throughput
- polynomial
- 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
- 125000004122 cyclic group Chemical group 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims abstract description 24
- 238000004891 communication Methods 0.000 claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 238000009795 derivation Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
The invention discloses a high-throughput parallel cyclic redundancy check method based on CRC-16, and belongs to the technical field of terahertz communication. The implementation method of the invention comprises the following steps: calculating the relation between the high-throughput parallel CRC code and the input information code sequence by adopting a polynomial division method, calculating the relation between a multi-byte high-throughput parallel CRC code and a single-byte high-throughput parallel CRC code by utilizing a generator polynomial of the CRC codes to obtain a multi-path parallel high-throughput cyclic redundancy check code, namely, the throughput of the cyclic redundancy check code is improved through a parallel framework so as to adapt to high-speed data transmission of a terahertz frequency band; by adding the cyclic redundancy check code, the anti-interference capability of the terahertz communication system is improved. The invention can effectively solve the influence of the system caused by non-ideal channel transmission characteristics and white Gaussian noise, can obtain the high-throughput CRC code relation of 16-path parallel calculation, and effectively improves the throughput of the CRC code, thereby being suitable for the transmission requirement of a terahertz frequency band of tens of Gbps.
Description
Technical Field
The invention relates to a high-throughput parallel cyclic redundancy check method based on CRC-16, and belongs to the technical field of terahertz communication.
Technical Field
With the development of communication technology, terahertz communication is receiving attention due to its advantages such as high transmission rate and large capacity, and is a research hotspot in recent years. While the advantages of large bandwidth transmission are achieved, many technical challenges are also created. The transmission rate of the terahertz communication system is extremely high, and the traditional serial architecture cannot meet the increasing rate requirement, so that a parallel architecture needs to be adopted in the terahertz communication system. In practical applications, a terahertz communication system generally needs to achieve throughput of tens of gigabits (Gbps), and there is a great necessity to increase the number of parallel processing paths of an algorithm.
On the other hand, in the terahertz communication system, due to the influence of non-ideal channel transmission characteristics and white gaussian noise, interference resistance becomes one of the difficulties in system data transmission. The problem is also aggravated by the use of higher order modulation techniques, since the distance between constellation points is reduced and the interference immunity is greatly reduced due to the increase of the number of constellation points. Cyclic Redundancy Check (CRC) codes are simple to implement, have a strong error detection capability, are widely used in communication systems, and can effectively resist random interference and burst interference. The research on the high-throughput parallel cyclic redundancy check algorithm applicable to the terahertz communication transmission system is of great necessity.
Disclosure of Invention
The invention mainly aims to provide a high-throughput parallel cyclic redundancy check method based on CRC-16, which comprises the steps of calculating the relation between a high-throughput parallel CRC code and an input information code sequence by adopting a polynomial division method, calculating the relation between a multi-byte high-throughput parallel CRC code and a single-byte high-throughput parallel CRC code by utilizing a generator polynomial of the CRC code, and obtaining a multi-path parallel high-throughput cyclic redundancy check code, namely, improving the throughput of the cyclic redundancy check code through a parallel framework so as to adapt to high-speed data transmission of a terahertz frequency band; by adding the cyclic redundancy check code, the anti-interference capability of the terahertz communication system is improved.
The purpose of the invention is realized by the following technical scheme.
The invention discloses a high-throughput parallel cyclic redundancy check method based on CRC-16, which comprises the following steps:
According to the channel condition applicable to the terahertz communication system, determining to adopt the CRC-CCITT check code, and then generating a polynomial G (x):
G(x)=x16+x12+x5+1
wherein: x is used only for polynomial expression and has no practical meaning here.
And 2, according to the transmission requirement of the terahertz communication system, data is transmitted in a parallel manner of parr (16 paths), the information code to be checked has n bits, and a polynomial expression of data transmission at the transmitting end at the ith moment is obtained.
According to the transmission requirement of the terahertz communication system, data is transmitted in a parallel manner of parr-16 paths, and a polynomial D for the transmission data of the transmitting end at the ith momenti(x) To show that, if the information code to be checked has n bits, the polynomial corresponding to the information code is expressed as follows:
Di(x)=Ci(n-1)xn-1+Ci(n-2)xn-2+…+Ci(1)x1+Ci(0)
wherein C isiAnd (n) represents the nth input information code sequence at the ith time, in the parallel architecture, the value range of n is determined by the number of parallel paths, and n is par.
And 3, calculating the relation between the high-throughput parallel CRC code and the input information code sequence by adopting a polynomial division method according to the generating polynomial G (x) determined in the step 1 and the parallel path number determined in the step 2 and the CRC principle.
Step 3.1, determining to adopt CRC-CCITT code as correctionThe check code has the highest power of polynomial k and is multiplied by x at both ends of the information code to be checkedk:
xkDi(x)=Ci(n-1)xk+n-1+Ci(n-2)xk+n-2+…+Ci(1)xk+1+Ci(0)xk
Step 3.2, xkDi(x) Dividing the model 2 by the generator polynomial G (x) to obtain a polynomial Q corresponding to the quotient at the ith momenti(x) The remainder polynomial at the ith time is Ri(x) The result of the crc is a remainder polynomial expressed as follows:
xkDi(x)+Ri(x)=Qi(x)G(x)
wherein, the remainder polynomial R at the ith timei(x) Can be expressed as:
Ri(x)=ri(n-1)xn-1+ri(n-2)xn-2+…+ri(1)x1+ri(0)
step 3.3, in binary calculation, division is equivalent to performing modulo-2 operation, and according to the previous step, the relationship between the 16 parallel CRC codes and the input information code sequence can be obtained by the following formula:
Ri(x)=xk*Di(x)ModG(x)
where Mod represents modulo-2 operation. Remainder polynomial R at the ith timei(x) And the information code D to be checked at the ith momenti(x) Respectively as follows:
and 4, in the parallel architecture, the cyclic redundancy check result at the current moment is not only related to the input of the current byte, but also related to the cyclic redundancy check result at the previous moment. And (2) according to the polynomial of the CRC-CCITT check code generated in the step (1), calculating the relation between the multi-byte high-throughput parallel CRC code and the single-byte high-throughput parallel CRC code by using the polynomial of the CRC code.
Step 4.1, according to a generating polynomial G (x) of the CRC-CCITT check code, obtaining the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code as follows:
the value of the j-th register after shifting d times is shown, wherein j is 0,1, …, k-1, and d is 1,2, …, n. m isjThe coefficients representing the generator polynomial having values determined by the generator polynomial G (x), i.e. mj=1,j=0,5,12,16。
Step 4.2, gd-1Indicating the present state of the register, i.e. the not shifted state. gdThe secondary state of the register, namely the state after shifting by par, is represented, and for the parallel architecture, par shifting is completed through one calculation. Order:
and 4.3, calculating the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code according to the derivation formula in the step 4.1 and the specification in the step 4.2.
And step 5, obtaining a multi-path parallel high throughput cyclic redundancy check code according to the relation between the high throughput parallel CRC code obtained in the step 3 and the input information code sequence and the relation between the multi-byte high throughput parallel CRC code obtained in the step 4 and the single-byte high throughput parallel CRC code.
Initializing the parallel CRC check code, and recording as D _ nexti(n) known high throughput parallel CRC code and input information code sequence Ci(n) relationships, multiwordsThe relation between the high-throughput parallel CRC code and the single-byte high-throughput parallel CRC code, and the formula for obtaining the parallel high-throughput CRC code with par being 16 paths is as follows:
wherein n has a value in the range of 0,1 … 15,andthe relationship between the two is determined by the relationship between the multi-byte high throughput parallel CRC code and the one-byte high throughput parallel CRC code obtained in step 4, i.e., byAnd gd-1The relationship in (1) is obtained.
And step 6, calculating the relation between the single-byte high-throughput parallel CRC code and the input information code sequence by a polynomial division method based on the steps 1 to 5, and calculating the relation between the multi-byte high-throughput parallel CRC code and the single-byte high-throughput parallel CRC code by using a generating polynomial of the cyclic redundancy check code, so as to obtain the parallel cyclic redundancy check code. The throughput of the cyclic redundancy check code is improved through a parallel architecture so as to adapt to high-speed data transmission of a terahertz frequency band; and the anti-interference capability of the system is improved by adding the cyclic redundancy check code.
Has the advantages that:
1. the invention discloses a high throughput parallel cyclic redundancy check method based on CRC-16, which adds a CRC code in a terahertz system, wherein the CRC code has the advantages of simple realization and strong error detection capability, can effectively solve the influence of the system caused by non-ideal channel transmission characteristics and Gaussian white noise, and effectively improves the anti-interference capability of the system.
2. The invention discloses a high throughput parallel cyclic redundancy check method based on CRC-16, which utilizes a full parallel framework and adopts a polynomial division method to establish the relation between a high throughput parallel CRC code and an input information code sequence according to a CRC principle; establishing a relation between a multi-byte high throughput parallel CRC code and a single-byte high throughput parallel CRC code by using a generating polynomial of the CRC code according to the generated polynomial of the CRC-CCITT check code; by calculating the relation between the parallel CRC codes and the input information code sequence and the relation between the multi-byte high-throughput parallel information codes and the single-byte high-throughput parallel information codes, the relation between 16 paths of parallel calculation to obtain the high-throughput CRC check codes is obtained, the throughput of the CRC codes is effectively improved, and the transmission requirement of a terahertz frequency band of tens of Gbps is met.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a flow chart of a high throughput parallel cyclic redundancy check method based on CRC-16 of the present invention;
FIG. 2 is a block diagram of a CRC-16 based high throughput parallel cyclic redundancy check method according to the present invention;
FIG. 3 is a schematic diagram of the logic for generating CRC16 CCITT;
FIG. 4 is a diagram of data comparison after CRC and CRC of an input information code rate sequence.
Detailed Description
For a better understanding of the objects and advantages of the present invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings and examples.
Example 1:
as shown in fig. 1, the method for high throughput parallel cyclic redundancy check based on CRC-16 disclosed in this embodiment includes the following specific steps:
According to the channel condition applicable to the terahertz communication system, determining to adopt the CRC-CCITT check code, and then generating a polynomial G (x):
G(x)=x16+x12+x5+1
wherein: x is used only for polynomial expression and has no practical meaning here.
And 2, according to the transmission requirement of the terahertz communication system, data is transmitted in a parallel manner of parr (16 paths), and the information code to be checked has n (16 bits), so that a polynomial expression of data transmitted by the transmitting end at the ith moment is obtained.
According to the system transmission requirement, adopting parr-16-path parallel mode to transmit data, and using polynomial D for transmitting data of i-th time transmitting endi(x) To show that, if the information code to be checked has n-16 bits, the polynomial corresponding to the information code is expressed as follows:
Di(x)=Ci(n-1)xn-1+Ci(n-2)xn-2+…+Ci(1)x1+Ci(0)
wherein C isiAnd (n) represents an input information code sequence at the ith time, in the parallel architecture, the value range of n is determined by the number of parallel paths, and n is equal to par and equal to 16.
Fig. 2 is a computation block diagram of a high-throughput parallel cyclic redundancy check method based on CRC-16, which completes computation according to the computation flow in the process.
And 3, calculating the relation between the high-throughput parallel CRC code and the input information code sequence by adopting a polynomial division method according to the generating polynomial G (x) determined in the step 1 and the parallel path number determined in the step 2 and the CRC principle.
Step 3.1, determining to adopt the CRC-CCITT code as the check code, wherein the highest power of the generating polynomial is k-16, and multiplying x at two ends of the information code to be checked16:
x16Di(x)=Ci(n-1)x16+n-1+Ci(n-2)x16+n-2+…+Ci(1)x16+1+Ci(0)x16
Step 3.2, x16Di(x) Dividing the model 2 by the generator polynomial G (x) to obtain a polynomial Q corresponding to the quotient at the ith momenti(x) The remainder polynomial at the ith time is Ri(x) The result of the crc is a remainder polynomial expressed as follows:
x16Di(x)+Ri(x)=Qi(x)G(x)
wherein, the remainder polynomial R at the ith timei(x) Can be expressed as:
Ri(x)=ri(n-1)xn-1+ri(n-2)xn-2+…+ri(1)x1+ri(0)
step 3.3, in binary calculation, division is equivalent to performing modulo-2 operation, and according to the previous step, the relationship between the 16 parallel CRC codes and the input information code sequence can be obtained by the following formula:
Ri(x)=x16*Di(x)ModG(x)
where Mod represents a modulo-2 operation. Due to the remainder polynomial R at the ith timei(x) And the information code D to be checked at the ith momenti(x) Respectively as follows:
polynomial R of remainderi(x) And the information code D to be checkedi(x) Into formula Ri(x)=x16*Di(x) Mod G (x) yields that the relationship between the 16-way parallel CRC code and the input information code sequence is:
and 4, in the parallel architecture, the cyclic redundancy check result at the current moment is not only related to the input of the current byte, but also related to the cyclic redundancy check result at the previous moment. And (2) according to the polynomial of the CRC-CCITT check code generated in the step (1), calculating the relation between the multi-byte high-throughput parallel CRC code and the single-byte high-throughput parallel CRC code by using the polynomial of the CRC code.
Step 4.1, according to the generator polynomial G (x) of the CRC1-CCITT check code, obtaining the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code as follows:
the value of the j-th register after shifting d times is shown, j is 0,1, … k, -1, d is 1,2, …, n. m isjThe coefficients representing the generator polynomial having values determined by the generator polynomial G (x), i.e. mj=1,j=0,5,12,16。
FIG. 3 is a schematic diagram of the CRC-CCITT generation logic, where mjIs 1, the switch is closed.
Step 4.2, gd-1Indicating the present state of the register, i.e. the not shifted state. gdThe secondary state of the register, namely the state after shifting by par, is represented, and for the parallel architecture, par shifting is completed through one calculation. Order:
and 4.3, calculating the relation between the multi-byte high-throughput parallel CRC code and the single-byte high-throughput parallel CRC code according to the formula deduced in the step 4.1 and the regulation in the step 4.2.
And step 5, obtaining a multi-path parallel high throughput cyclic redundancy check code according to the relation between the high throughput parallel CRC code obtained in the step 3 and the input information code sequence and the relation between the multi-byte high throughput parallel CRC code obtained in the step 4 and the single-byte high throughput parallel CRC code.
Known high throughput parallel CRC code and input information code sequence Ci(n) and a relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code, and the formula for obtaining the 16-way parallel high throughput CRC code is:
wherein n has a value in the range of 0,1 … 15,andthe relationship between the two is determined by the relationship between the multi-byte high throughput parallel CRC code and the one-byte high throughput parallel CRC code obtained in step 4, i.e., byAnd gd-1The relationship in (1) is obtained.
As shown in fig. 4, the comparison result between the input information code sequence and the input information code sequence is equal after 16-way high throughput parallel CRC encoding is performed on the input information code sequence and after 16-way parallel decoding is performed on the input information code sequence, and the number of different codes is zero. It can thus be shown that this algorithm is efficient.
The above detailed description is further intended to illustrate the objects, technical solutions and advantages of the present invention, and it should be understood that the above detailed description is only an example of the present invention and should not be used to limit the scope of the present invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.
Claims (7)
1. A high throughput parallel cyclic redundancy check method based on CRC-16 is characterized in that: comprises the following steps of (a) carrying out,
step 1, determining to adopt a CRC-CCITT check code according to the channel condition applicable to the terahertz communication system, and determining a polynomial for generating the CRC-CCITT check code;
step 2, according to the transmission requirement of the terahertz communication system, data is transmitted in a parallel manner of parr being 16 paths, the information code to be checked has n bits, and a polynomial expression of data transmission of the transmitting end at the ith moment is obtained;
step 3, according to the polynomial G (x) determined in the step 1 and the parallel path number determined in the step 2, calculating by adopting a polynomial division method according to a CRC principle to obtain a relation between a high-throughput parallel CRC code and an input information code sequence;
step 4, in the parallel framework, the cyclic redundancy check result at the current moment is not only related to the input of the current byte, but also related to the cyclic redundancy check result at the previous moment; according to the polynomial of the CRC-CCITT check code generated in the step 1, calculating the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code by using the polynomial of the CRC code;
and step 5, obtaining a multi-path parallel high throughput cyclic redundancy check code according to the relation between the high throughput parallel CRC code obtained in the step 3 and the input information code sequence and the relation between the multi-byte high throughput parallel CRC code obtained in the step 4 and the single-byte high throughput parallel CRC code.
2. A method for high throughput parallel cyclic redundancy check based on CRC-16 as claimed in claim 1 wherein: step 6, calculating the relation between the single-byte high throughput parallel CRC code and the input information code sequence by a polynomial division method based on the steps 1 to 5, and calculating the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code by using a generating polynomial of the cyclic redundancy check code, wherein the cyclic redundancy check code is parallel; the throughput of the cyclic redundancy check code is improved through a parallel architecture so as to adapt to high-speed data transmission of a terahertz frequency band; and the anti-interference capability of the system is improved by adding the cyclic redundancy check code.
3. A method for high throughput parallel cyclic redundancy check based on CRC-16 according to claim 1 or 2, characterized by: the step 1 is realized by the method that,
according to the channel condition applicable to the terahertz communication system, determining to adopt the CRC-CCITT check code, and then generating a polynomial G (x):
G(x)=x16+x12+x5+1
wherein: x is used only for polynomial expression and has no practical meaning here.
4. A method for high throughput parallel cyclic redundancy check based on CRC-16 as claimed in claim 3 wherein: the step 2 is realized by the method that,
according to the transmission requirement of the terahertz communication system, data is transmitted in a parr-16-channel parallel modePolynomial D for transmission data of i moment transmitting endi(x) To show that, if the information code to be checked has n bits, the polynomial corresponding to the information code is expressed as follows:
Di(x)=Ci(n-1)xn-1+Ci(n-2)xn-2+…+Ci(1)x1+Ci(0)
wherein C isiAnd (n) represents the nth input information code sequence at the ith time, in the parallel architecture, the value range of n is determined by the number of parallel paths, and n is par.
5. A method for high throughput parallel cyclic redundancy check based on CRC-16 as claimed in claim 4 wherein: the step 3 is realized by the method that,
step 3.1, determining to adopt CRC-CCITT code as check code, the highest power of the generating polynomial is k, and multiplying x at two ends of the information code to be checkedk:
xkDi(x)=Ci(n-1)xk+n-1+Ci(n-2)xk+n-2+…+Ci(1)xk+1+Ci(0)xk
Step 3.2, xkDi(x) Dividing the model 2 by the generator polynomial G (x) to obtain a polynomial Q corresponding to the quotient at the ith momenti(x) The remainder polynomial at the ith time is Ri(x) The result of the crc is a remainder polynomial expressed as follows:
xkDi(x)+Ri(x)=Qi(x)G(x)
wherein, the remainder polynomial R at the ith timei(x) Can be expressed as:
Ri(x)=ri(n-1)xn-1+ri(n-2)xn-2+…+ri(1)x1+ri(0)
step 3.3, in binary calculation, division is equivalent to performing modulo-2 operation, and according to the previous step, the relationship between the 16 parallel CRC codes and the input information code sequence can be obtained by the following formula:
Ri(x)=xk*Di(x)Mod G(x)
wherein, Mod represents modulo-2 arithmetic; remainder polynomial R at the ith timei(x) And the information code D to be checked at the ith momenti(x) Respectively as follows:
6. a method for high throughput parallel cyclic redundancy check based on CRC-16 as claimed in claim 5 wherein: step 4, the method is realized by the following steps,
step 4.1, according to a generating polynomial G (x) of the CRC-CCITT check code, obtaining the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code as follows:
represents the value of j-th register after shifting d times, j is 0,1, …, k-1, d is 1,2, …, n; m isjThe coefficients representing the generator polynomial having values determined by the generator polynomial G (x), i.e. mj=1,j=0,5,12,16;
Step 4.2, gd-1Represents the present state of the register, i.e. the unshifted state; g is a radical of formuladRepresenting the secondary state of the register, namely the state after shifting par times, and finishing par times of shifting by one time of calculation for the parallel architecture; order:
and 4.3, calculating the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code according to the derivation formula in the step 4.1 and the specification in the step 4.2.
7. A method for high throughput parallel cyclic redundancy check based on CRC-16 as claimed in claim 6 wherein: step 5. in the present method,
initializing the parallel CRC check code, and recording as D _ nexti(n) known high throughput parallel CRC code and input information code sequence Ci(n), the relation between the multi-byte high throughput parallel CRC code and the single-byte high throughput parallel CRC code, and the formula for obtaining the parallel 16-way high throughput CRC code is:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210381920.7A CN114726383B (en) | 2022-04-12 | 2022-04-12 | CRC-16-based high throughput parallel cyclic redundancy check method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210381920.7A CN114726383B (en) | 2022-04-12 | 2022-04-12 | CRC-16-based high throughput parallel cyclic redundancy check method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114726383A true CN114726383A (en) | 2022-07-08 |
CN114726383B CN114726383B (en) | 2024-07-12 |
Family
ID=82244037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210381920.7A Active CN114726383B (en) | 2022-04-12 | 2022-04-12 | CRC-16-based high throughput parallel cyclic redundancy check method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114726383B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR950009434A (en) * | 1993-09-14 | 1995-04-24 | 양승택 | Cyclic Redundancy Check (CRC) Synchronizer |
KR100291718B1 (en) * | 1994-08-31 | 2001-09-17 | 전주범 | Cyclic redundancy check code device |
CN102708022A (en) * | 2005-12-23 | 2012-10-03 | 英特尔公司 | Performing a cyclic redundancy checksum operation responsive to a user-level instruction |
CN107154836A (en) * | 2017-06-28 | 2017-09-12 | 西安空间无线电技术研究所 | A kind of cardiopulmonary bypass in beating heart redundancy CRC check method based on FPGA |
CN109936376A (en) * | 2019-01-31 | 2019-06-25 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | The method of byte-oriented operation cyclic code CRC16-CCITT verification |
CN113110954A (en) * | 2021-04-23 | 2021-07-13 | 合肥恒烁半导体有限公司 | CRC (Cyclic redundancy check) code parallel computing method and device and application thereof |
-
2022
- 2022-04-12 CN CN202210381920.7A patent/CN114726383B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR950009434A (en) * | 1993-09-14 | 1995-04-24 | 양승택 | Cyclic Redundancy Check (CRC) Synchronizer |
KR100291718B1 (en) * | 1994-08-31 | 2001-09-17 | 전주범 | Cyclic redundancy check code device |
CN102708022A (en) * | 2005-12-23 | 2012-10-03 | 英特尔公司 | Performing a cyclic redundancy checksum operation responsive to a user-level instruction |
CN107154836A (en) * | 2017-06-28 | 2017-09-12 | 西安空间无线电技术研究所 | A kind of cardiopulmonary bypass in beating heart redundancy CRC check method based on FPGA |
CN109936376A (en) * | 2019-01-31 | 2019-06-25 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | The method of byte-oriented operation cyclic code CRC16-CCITT verification |
CN113110954A (en) * | 2021-04-23 | 2021-07-13 | 合肥恒烁半导体有限公司 | CRC (Cyclic redundancy check) code parallel computing method and device and application thereof |
Non-Patent Citations (2)
Title |
---|
张蓓;鲁新平;马龙;李吉成;宋仁庭;: "基于字节的循环冗余校验算法及FPGA实现", 微处理机, no. 01, 15 February 2009 (2009-02-15), pages 86 - 88 * |
彭伟: "嵌入式系统CRC 循环冗余校验算法设计研究", 南京信息工程大学学报(自然科学版), vol. 4, no. 3, 30 June 2012 (2012-06-30), pages 258 - 265 * |
Also Published As
Publication number | Publication date |
---|---|
CN114726383B (en) | 2024-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Imai et al. | A new multilevel coding method using error-correcting codes | |
US7219293B2 (en) | High performance CRC calculation method and system with a matrix transformation strategy | |
US4933956A (en) | Simplified decoding of lattices and codes | |
CN107231158B (en) | Polarization code iterative receiver, system and polarization code iterative decoding method | |
Bellorado et al. | A low-complexity method for Chase-type decoding of Reed-Solomon codes | |
CN110071779B (en) | Low-complexity polarization code multilevel coding modulation method | |
CN109314530B (en) | Optical receiver, optical transmission device, and method for optical receiver | |
CN112468161A (en) | RS high-speed coding circuit | |
CN112202534A (en) | High-speed transmission method based on LDPC and FQPSK combined coding modulation | |
CN115694518A (en) | Convolutional code decoding method and system based on GMM-HMM | |
CN110061803A (en) | A kind of polarization code Bit Interleaved Coded Modulation method of low complex degree | |
CN113098529B (en) | Method, system and storage medium for transmitting additional information based on cyclic shift | |
CN108063623B (en) | Serial elimination decoding method of Polar code for reducing complexity | |
CN114257342A (en) | Coding and decoding method for two-user multiple access system based on non-binary polarization code | |
CN108809323B (en) | Method and device for generating cyclic redundancy check code | |
CN113067584A (en) | Coding method for common auxiliary polarization code of CRC (Cyclic redundancy check) code and PC (personal computer) code | |
US20050008097A1 (en) | Coded modulation scheme for a wirelesss communication system and methods thereof | |
CN114726383A (en) | High-throughput parallel cyclic redundancy check method based on CRC-16 | |
CN111313908A (en) | Irregular watermark coding and decoding method for correcting non-binary insertion/deletion | |
CN100417031C (en) | Method of realizing Reed Solomen convolution code in broadband radio insertion system | |
CN106571891A (en) | Fountain multiple access method | |
US6990626B2 (en) | Method and apparatus for MAP decoding of first-order reed muller codes and related error correction codes | |
CN107682122B (en) | Iterative demodulation decoding method of wireless optical communication multilevel coding modulation system | |
CN105721104A (en) | Viterbi decoding realizing method | |
CN112636768B (en) | Auxiliary joint iteration detection and decoding method for serial cyclic redundancy check |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |