CN111211793B - Parallel TPC coding method based on Hamming code - Google Patents
Parallel TPC coding method based on Hamming code Download PDFInfo
- Publication number
- CN111211793B CN111211793B CN202010084985.6A CN202010084985A CN111211793B CN 111211793 B CN111211793 B CN 111211793B CN 202010084985 A CN202010084985 A CN 202010084985A CN 111211793 B CN111211793 B CN 111211793B
- Authority
- CN
- China
- Prior art keywords
- coding
- data
- tpc
- parallel
- storing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product 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
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
The invention discloses a design method of TPC coding applied to the communication field channel coding, which can detect errors and correct errors in the data transmission of the channel coding, and greatly shortens the coding time through parallel TPC coding, thereby improving the coding processing speed. The generation matrix of different encoders is selected according to different data amounts, and mainly the generation matrix of the encoding has different output data clocks. The serial coding of the two-dimensional TPC is converted into parallel coding by utilizing the serial-parallel conversion idea, so that the data processing time is improved, and the method has the advantages that any data stream is input, the coding times are only twice, and the same time is consumed for different data streams; compared with the traditional serial TPC coding, the time consumption is greatly reduced, the TPC coding processing speed is improved by utilizing the internal resources of the FPGA, the TPC coding with different widths can be converted into parallel coding, and the TPC coding is finished through the parallel coding under the condition that the system clock is unchanged.
Description
Technical Field
The invention relates to a channel coding method applied to the field of communication, in particular to a parallel TPC coding method based on Hamming codes.
Background
With the development of communication technology, communication distance is longer and longer, noise exists in the process of transmitting signals, and fading occurs. The multipath interference and the like can cause serious distortion of signals, so that the error rate can be ensured to be within an allowable range through forward error control to a certain extent, and the transmission efficiency is improved.
Turbo product codes (TPC, turbo Product Code) have parallel structures of decoding performance close to shannon's limit and high-speed decoding, and have been widely used in wireless communication in recent years.
Disclosure of Invention
The invention aims to provide a parallel TPC coding method based on Hamming codes, which solves the problems that the processing speed of TPC coding is improved by utilizing internal resources of an FPGA, TPC codes with different widths can be converted into parallel codes, the TPC codes are finished through parallel codes under the condition of unchanged system clock, and the time is shortened and the speed is improved.
The invention is realized by the following technical scheme:
a hamming code-based parallel TPC coding method, comprising: selecting a coding mechanism and a counting and storing mechanism according to the size of the coded data; an input and output clock is calculated from the pre-encoding data and the post-encoding data.
The working principle of the invention is as follows: acquiring a data stream of a system, wherein the data stream has the size of k 2 Calculating a data output clock; calculating the generation matrix and the storage mechanism size of the data encoder according to the data stream size; reading data according to a row, and simultaneously encoding the data by a plurality of encoders to finish parallel encoding, wherein the encoding mode adopts TPC encoding; when the data is encoded by the encoder, encoding single bits according to the single bits and outputting the single bits; and outputting the data according to a proper clock after the encoding is finished.
Further, according to the size of the coded data stream, N parallel encoders are used to implement the parallel coding method, where the encoders are further divided into a row encoder and a column encoder.
Further, a row code or column code generator matrix is selected according to the size of the encoded data stream, and the input/output of the encoder is one bit input/output. The data generated by the encoder is n bits in total, n takes the integer power of 2, the output format is k data original code bits, n-k supervision code elements, and the relation is 2 n-k =n。
Further, depending on the size of the data stream, the manner in which the data is stored in the storage mechanism may be different. Wherein the deposit mechanism comprises three deposit mechanisms, namely a deposit mechanism A1, a deposit mechanism A2 and a deposit mechanism A3.
Further, the raw data is stored in columns. The purpose of this deposit is to accomplish simultaneous encoding by multiple row encoders. And the coding speed is improved.
Further, the line code data continues to be stored in columns, unlike the storing mechanism A1, where the data is stored in n-k more lines
Further, the encoded data are integrated together and added to the data frame header to adjust the output sequence.
Compared with the prior art, the invention has the following advantages and beneficial effects:
1. the invention relates to a parallel TPC coding method based on Hamming codes, which is characterized in that any data stream is input, the coding times are only twice, and the same time is consumed for different data streams;
2. compared with the traditional serial TPC coding, the Hamming code-based parallel TPC coding method provided by the invention has the advantages that the time consumption is greatly reduced;
3. the invention relates to a Hamming code-based parallel TPC coding method, which utilizes the internal resources of an FPGA to improve the TPC coding processing speed, can convert TPC codes with different widths into parallel codes, and is greatly completed through the parallel codes under the condition of unchanged system clock.
Drawings
The accompanying drawings, which are included to provide a further understanding of embodiments of the invention and are incorporated in and constitute a part of this application, illustrate embodiments of the invention. In the drawings:
FIG. 1 is a flow chart of a TPC parallel coding system embodying the present invention;
fig. 2 is a block diagram of a TPC parallel coding system in accordance with an embodiment of the present invention.
Detailed Description
For the purpose of making apparent the objects, technical solutions and advantages of the present invention, the present invention will be further described in detail with reference to the following examples and the accompanying drawings, wherein the exemplary embodiments of the present invention and the descriptions thereof are for illustrating the present invention only and are not to be construed as limiting the present invention.
Example 1
As shown in fig. 1-2, the invention discloses a parallel TPC coding method based on hamming codes, which comprises the following specific implementation modes: storing original data into an asynchronous FIFO1 with a certain clock, reading the data to a RAM1 through a high clock, and preparing for line coding; the read data of the RAM1 is coded in rows and stored in the RAM2; the data read out by the RAM2 are column-coded and stored in the RAM3; the data stored in the RAM3 has completed TPC encoding and is finally added to the FIFO2 together with a suitable frame header, written in at a high clock, and read out at a matched clock.
Example 2
Based on embodiment 1, as shown in fig. 1-2, the invention discloses a parallel TPC coding method based on hamming codes, which comprises the following specific implementation modes: depending on the external module input, its data input clock will determine the encoded data FIFO2 output clock. The readouts are then read out in a sequence to the RAM1 to be encoded. In a specific order, taking a two-dimensional matrix with subcodes as extended Hamming codes (n+1, k, delta) as an example, the data quantity of the one-time input FIFO1 is k 2 Record A i,j (i, j=1, 2..k). Is stored into RAM1 in the format of
Example 3
Based on the above embodiment, as shown in fig. 1-2, the invention discloses a hamming code-based parallel TPC coding method, which is implemented by the following steps: reading out data from the RAM1 according to the rows to an encoder for encoding, wherein the input and output of the encoder are single bits; single-bit input/output can be realized according to the system code (original data, check code, parity check code), and the end of line coding is stored into RAM2 in the format of
Example 4
Based on the above embodiment, as shown in fig. 1-2, the invention discloses a hamming code-based parallel TPC coding method, which is implemented by the following steps: reading out the output of the RAM2 according to the row, continuing to an encoder for column coding, and storing the column coding into the RAM3; the data amount at this time is (n+1) 2 。
Example 5
Based on the above embodiment, as shown in fig. 1-2, the invention discloses a hamming code-based parallel TPC coding method, which is implemented by the following steps: the RAM3 data is output to the FIFO with the data frame header added before being read out according to an appropriate clock, the output clock of which depends on the data size.
The design concept of the encoder in the row encoding and the column encoding is derived from the Hamming code concept, the hamming module inputs 1 bit, stores the first k bits of data into the register unit, generates a supervision code through generating a matrix after the kth data is input, can perform input and output simultaneously in the whole encoder, and can meet the design requirement when the data differ by a few clock cycles, and the specific design time delay is determined according to the system requirement, so that the smaller the specific design time delay is in principle the better.
The foregoing description of the embodiments has been provided for the purpose of illustrating the general principles of the invention, and is not meant to limit the scope of the invention, but to limit the invention to the particular embodiments, and any modifications, equivalents, improvements, etc. that fall within the spirit and principles of the invention are intended to be included within the scope of the invention.
Claims (2)
1. A hamming code-based parallel TPC coding method, comprising: selecting a coding mechanism and a counting and storing mechanism according to the size of the coded data; calculating an input clock and an output clock according to the data before encoding and the data after encoding;
the input and output of the encoder are one bit input and output according to the size of the encoded data stream, the data generated by the encoder is n bits in total, n takes the integer power of 2, the output format is k data original code bits, n-k supervision code elements, and the relation is 2 n-k =n;
According to different data flow sizes, data are stored in a storage mechanism in different modes, wherein the storage mechanism comprises at least three storage mechanisms, namely a storage mechanism A1, a storage mechanism A2 and a storage mechanism A3;
storing the original data of the storage mechanism A1 according to the columns;
storing the row coding data of the storing mechanism A2 according to columns, wherein n-k rows are needed for storing the rows of the data, which are different from the storing mechanism A1;
the stock mechanism A3 integrates the coded data and adds the data frame head to adjust the output sequence.
2. The hamming code-based parallel TPC coding method of claim 1, wherein N parallel encoders are used, including a row encoder and a column encoder, depending on the size of the coded data stream.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010084985.6A CN111211793B (en) | 2020-02-10 | 2020-02-10 | Parallel TPC coding method based on Hamming code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010084985.6A CN111211793B (en) | 2020-02-10 | 2020-02-10 | Parallel TPC coding method based on Hamming code |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111211793A CN111211793A (en) | 2020-05-29 |
CN111211793B true CN111211793B (en) | 2023-08-04 |
Family
ID=70789909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010084985.6A Active CN111211793B (en) | 2020-02-10 | 2020-02-10 | Parallel TPC coding method based on Hamming code |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111211793B (en) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009084891A2 (en) * | 2007-12-27 | 2009-07-09 | Lg Electronics Inc. | Generation of golay-based systematic block code supporting various sizes |
JP2011501557A (en) * | 2007-12-24 | 2011-01-06 | エルジー エレクトロニクス インコーポレイティド | Channel coding method for information having various lengths using block codes |
CN102111163A (en) * | 2009-12-25 | 2011-06-29 | 中兴通讯股份有限公司 | Turbo encoder and encoding method |
CN104272675A (en) * | 2012-04-12 | 2015-01-07 | Sk电信有限公司 | Transmitting apparatus and receiving apparatus, and method for operating said transmitting apparatus |
CN104601180A (en) * | 2015-02-11 | 2015-05-06 | 东南大学 | Method and device for encoding two-dimensional product codes on basis of extended hamming codes |
CN106788466A (en) * | 2016-12-13 | 2017-05-31 | 中国电子科技集团公司第二十研究所 | Turbo code coding and decoding chip for minimizing communication system |
CN107612561A (en) * | 2017-09-30 | 2018-01-19 | 北京北方烽火科技有限公司 | One kind coding, interpretation method and device |
CN108183877A (en) * | 2018-01-11 | 2018-06-19 | 成都烨软科技有限公司 | A kind of multi-tone frequency demodulated signal method based on FPGA |
US10075197B1 (en) * | 2017-03-07 | 2018-09-11 | Lg Electronics Inc. | Method and apparatus for transmitting hamming weight and codeword |
CN110380737A (en) * | 2019-07-12 | 2019-10-25 | 北京邮电大学 | A kind of method and device of polarization code apart from spectrum analysis |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1993892B (en) * | 2004-08-10 | 2012-12-26 | 三星电子株式会社 | Apparatus and method for encoding and decoding a block low density parity check code |
JP6212396B2 (en) * | 2014-01-08 | 2017-10-11 | ルネサスエレクトロニクス株式会社 | Data processing device |
KR20180063475A (en) * | 2016-12-02 | 2018-06-12 | 삼성전자주식회사 | error detection code generator of a semiconductor device, a memory controller including the same and a semiconductor memory device including the same |
CN114598424A (en) * | 2017-02-15 | 2022-06-07 | 中兴通讯股份有限公司 | Data processing method and device |
-
2020
- 2020-02-10 CN CN202010084985.6A patent/CN111211793B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011501557A (en) * | 2007-12-24 | 2011-01-06 | エルジー エレクトロニクス インコーポレイティド | Channel coding method for information having various lengths using block codes |
WO2009084891A2 (en) * | 2007-12-27 | 2009-07-09 | Lg Electronics Inc. | Generation of golay-based systematic block code supporting various sizes |
CN102111163A (en) * | 2009-12-25 | 2011-06-29 | 中兴通讯股份有限公司 | Turbo encoder and encoding method |
CN104272675A (en) * | 2012-04-12 | 2015-01-07 | Sk电信有限公司 | Transmitting apparatus and receiving apparatus, and method for operating said transmitting apparatus |
CN104601180A (en) * | 2015-02-11 | 2015-05-06 | 东南大学 | Method and device for encoding two-dimensional product codes on basis of extended hamming codes |
WO2016127853A1 (en) * | 2015-02-11 | 2016-08-18 | 东南大学 | Encoding device and encoding method for two-dimensional product codes based on extended hamming codes |
CN106788466A (en) * | 2016-12-13 | 2017-05-31 | 中国电子科技集团公司第二十研究所 | Turbo code coding and decoding chip for minimizing communication system |
US10075197B1 (en) * | 2017-03-07 | 2018-09-11 | Lg Electronics Inc. | Method and apparatus for transmitting hamming weight and codeword |
CN107612561A (en) * | 2017-09-30 | 2018-01-19 | 北京北方烽火科技有限公司 | One kind coding, interpretation method and device |
CN108183877A (en) * | 2018-01-11 | 2018-06-19 | 成都烨软科技有限公司 | A kind of multi-tone frequency demodulated signal method based on FPGA |
CN110380737A (en) * | 2019-07-12 | 2019-10-25 | 北京邮电大学 | A kind of method and device of polarization code apart from spectrum analysis |
Non-Patent Citations (1)
Title |
---|
Turbo码译码算法分析与研究;崔中普 等;《通信技术》;第49卷(第9期);1144-1148 * |
Also Published As
Publication number | Publication date |
---|---|
CN111211793A (en) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011026375A1 (en) | Methods and devices for encoding and decoding | |
US20040153942A1 (en) | Soft input soft output decoder for turbo codes | |
CA2461055A1 (en) | Digital transmission system with enhanced data multiplexing in vsb transmission system | |
CN101567692B (en) | Method for matching parallel high-speed dynamic elements | |
FI109162B (en) | Method and arrangement for decoding a convolution-coded codeword | |
CN101969311B (en) | High-speed parallel segmented staggering Viterbi decoding method | |
CN1656693A (en) | Method for iterative hard-input forward error correction | |
WO2016127853A1 (en) | Encoding device and encoding method for two-dimensional product codes based on extended hamming codes | |
CN101483443B (en) | FPGA implementing method for Turbo product code optimized encoding and decoding algorithm | |
CN100546207C (en) | A kind of dual-binary Turbo code encoding method based on the DVB-RCS standard | |
CN111211793B (en) | Parallel TPC coding method based on Hamming code | |
CN201018490Y (en) | TD-SCDMA/3G hard core turbo code translator | |
CN101686104A (en) | Coding and decoding method for forward error correction, device and system thereof | |
CN100488057C (en) | Optimized interleaving of digital signals | |
CN108462561B (en) | Serial-parallel combined channel coding and decoding method and device in ultra-high speed communication system | |
CN101286745B (en) | Coding method and device by interleaving | |
CN112737597A (en) | Multi-rate LDPC coding method with variable frame length and suitable for deep space communication | |
CN111030780B (en) | Configurable parallel bit grouping interleaver and interleaving method | |
CN2819662Y (en) | Channel cascade coding decoder | |
CN1614898A (en) | Hybrid interleaver for turbo codes | |
CN1395761A (en) | Method for decoding data signal | |
CN100589329C (en) | Duo-binary system CTC code translator | |
US20060282713A1 (en) | Efficient interleaver/de-interleaver desigh for the turbo decoder in a 3g wcdma system | |
CN112073071A (en) | Method for encoding and decoding convolutional code and signal transmission method | |
CN102361460B (en) | General high speed parallel cycle interleaving Viterbi decoding method |
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 |