WO2004013974A2 - Parallel convolutional encoder - Google Patents
Parallel convolutional encoder Download PDFInfo
- Publication number
- WO2004013974A2 WO2004013974A2 PCT/CA2003/001133 CA0301133W WO2004013974A2 WO 2004013974 A2 WO2004013974 A2 WO 2004013974A2 CA 0301133 W CA0301133 W CA 0301133W WO 2004013974 A2 WO2004013974 A2 WO 2004013974A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- subset
- encoding
- data bits
- bits
- single bit
- 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.)
- Ceased
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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- 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
Definitions
- the present invention relates to the field of wireless communications and is particularly, but not exclusively, applicable to methods and apparatus for encoding sets of information bits for use in a wireless communications system.
- One such encoding can be convolutional encoding.
- the encoded data (with the encoding producing more data than was input to allow for the inclusion of the error correction redundancies in the data), when received by the receiver, is decoded by a decoder.
- Such decoders normally use the well known Niterbi decoding method in one form or another to retrieve the original data.
- transmission speeds and decoding speeds have been pushed higher and higher, the encoding is still executed in a serially bitwise manner. Essentially, data to be encoded is serially fed to the encoder and the resulting encoded data is also output serially.
- serial convolutional encoders Unfortunately, such an approach would not only lead to increased power consumption but also to elevated device temperatures and more complex circuit layouts when implementing the design.
- the present invention relates to methods and devices for encoding in parallel a set of data bits for use in communications systems.
- the set of data bits to be encoded is divided into two subsets with the first subset being encoded in parallel using the second subset.
- the first subset is also encoded in parallel using a subset of an immediately preceding set of data bits.
- Parallel encoding is realized by using an encoding module utilizing multiple single bit submodules. Each submodule receives a single bit from the first subset and either the second subset or the subset of the immediately preceding data set.
- Each single bit submodule produces a pair of output bits from the convolutional encoding of a single bit of the first subset using either the second subset or the subset of the immediately preceding data set.
- the present invention provides a method for encoding a plurality of data bits for use in communications device, the method comprising: a) receiving a set of data bits for encoding; b) encoding in parallel a subset of said set of data bits using at least one other subset of data bits to produce at least one first set of output bits; c) encoding in parallel said subset of said set of data bits using at least one previous subset of data bits to produce at least one second set of output bits, the or each of said previous subset being a subset of a previous set of data bits.
- the present invention provides a method for encoding a set of data bits for use in a communications system, the method comprising the steps of: a) receiving first and second subsets of said set of data bits; b) convolutionally encoding said first subset using said second subset to produce a first set of output bits; c) convolutionally encoding said first subset using a previous subset of an immediately preceding set of data bits to produce a second set of output bits; and d) replacing said previous subset with said second subset of said set of data bits for use with a next set of data bits, wherein said encoding in steps b) and c) are executed in a bitwise parallel manner.
- the present invention provides a device for encoding a set of data bits for use in a communications system, the device comprising:
- first encoding means for convolutionally encoding a subset of data bits, said first encoding means receiving inputs from said first receiving means and from said second receiving means to produce a first set of output bits
- second encoding means for convolutionally encoding a subset of data bits, said second encoding means receiving inputs from said first receiving means and from said storage means to produce a second set of output bits
- the present invention provides a system for encoding a current set of data bits for use in a communications device, the device comprising:
- each of said at least two stages comprising:
- - storage means for storing a subset of data bits, said subset of data bits being chosen from a group comprising:
- - encoding means for encoding contents of said first receiving means using contents of said storage means to produce a set of output bits, wherein at least one encoding stage receives a subset of dat bits form another encoding stage for storage in said storage means and for encoding a subset of said current set of data bits.
- Figure 1 is a block diagram of an encoder system according to one embodiment of the invention.
- Figure 2 is a block diagram of an encoding of an encoding module used in the encoder system of Figure 1;
- Figure 3 is logic diagram illustrating the logic implemented by a single-bit encoding submodule used in the encoding module of Figure 2;
- Figure 4 is a block diagram of a single-bit encoding submodule used in the encoding module of Figure 2.
- FIG. 1 a block diagram of a parallel encoder system 5 is illustrated.
- a bus 10 feeds a first receiving means 20 and a second receiving means 30 while a storage means 40 is coupled to the second receiving means 30.
- a first encoding module 50 (also referred to as first encoding means) is coupled to the first receiving means 20 and the second receiving means 30.
- a second encoding means 60 (also referred to as second encoding means 60) is coupled to the storage means 40 and the first receiving means 20.
- the encoder system 5 receives in parallel a current set of data bits to be encoded by way of the bus 10.
- the current set of data bits (CURRENT [11:0]) is separated into two subsets with a fist subset being fed into the first receiving means 20 and a second subset begin fed into the second receiving means 30.
- the storage means 40 stores a subset (PREVIOUS [11:6]) of an immediately preceding set of data bits. Once the current set of data bits are stored in the first and second receiving means, these are sent to the encoding modules 50, 60 with the first encoding module 50 receiving the first and second subsets of the current set of data bits.
- the second encoding module 60 receives the first subset and the subset stored in the storage means 40.
- the encoding modules 50, 60 then encodes, in a parallel bitwise manner, the first subset using the second subset and the subset stored in the storage means 40.
- Each encoding module independently produces a set of output bits which, when taken together, comprise the output of the encoder system 5.
- the encoder system output can then be fed into another bus (not shown) for transportation to a next stage in processing.
- the bus 10 is a 12 bit bus carrying a current set of 12 bits with each subset having 6 data bits.
- the 6 LSB (least significant bits CURRENT [5:0]) of the 12 bit current set is fed and stored by the first receiving means 20 while the 6 MSB (most significant bits CURRENT [11 :6]) of the 12 bit current set is fed and stored by the second receiving means 30.
- the storage means 40 receives the second subset (PREVIOUS [11:6]) stored in the second receiving means 30 when a new current set of data bits is clocked into the second receiving means.
- the switching means for storing the contents of the second receiving means 30 can be clocked into the storage means 40. Alternatively, the switching/storing can be done as soon as the set of output data bits are produced. To initiate the encoder system, all zeros are set as the content of the storage means 40.
- each of the encoding modules produce a 12 bit output set.
- the storage means 40 and the first and second receiving means 20, 30 can be constructed as registers or suitable flip-flop circuits. Data subsets can then be clocked into he registers or flip-flops in parallel and can also be fed in parallel into the encoding modules 50, 60.
- each encoding module has 12 data inputs - a 6 bit subset of the current set of data bits and a 6 bit subset from either the current set or the immediately preceding set of data bits. As previously mentioned, an output set of 12 data bits result from each of the encoding modules.
- Each encoding module may be implemented as illustrated in Figure 2.
- a number of single-bit encoding submodules 70A-70F are present with each submodule receiving 7 data inputs - a single bit from the first subset (one of CURRENT [5 :0] ) and 6 bits from either the second subset (CURRENT 11 :6]) or the subset stored in the storage means (PREVIOUS [11 :6])
- the single bit to be encoded is encoded using the other 6 bit input to result in two output bits.
- These output bits (x[0], y[0] to x[5], y[5]) comprise the output set of bits for the encoding module.
- Each submodule implements a combinational logic circuit that accomplishes the encoding.
- the logic to be implemented for encoding IEEE 802.1 la or Hiperlan 2 bitstreams is similar.
- s[a] the ath bit from the 6 bit input to the single bit encoding submodule
- the logic can therefore be simplified into the diagrams in Figure 3.
- Figure 3 each have 5 inputs and specifically implement the logical equations presented above.
- Figure 4 shows a single bit encoding submodule with 7 inputs and 2 outputs. The submodule can then implement any encoding scheme as long as the combinational circuit within is properly configured.
- the above concepts and designs can therefore encode, in a parallel bitwise manner, a set of current data bits.
- the system 5 in Figure 5 can be seen as a two stage encoding system with each stage having three components - a first receiving means (such as receiving means 20), a storage means (such as receiving means 30 or storage means 40), and an encoding module which encodes the data in the first receiving means using the dat in the storage means.
- Multiple stages can therefore be either cascaded or placed in parallel to encode multiple bit sets of data bits.
- the cascading need not be merely in terms of the output bits being cascaded in successive stages.
- the inputs may also be cascaded such as in the embodiment explained above where a current input subset (such as CURRENT [11 :6]) is subsequently used by a later stage in a succeeding step (such as becoming the subset PREVIOUS [11 :6]).
- a current input subset such as CURRENT [11 :6]
- a succeeding step such as becoming the subset PREVIOUS [11 :6]
- bit widths other than a 12 bit set or a 6 bit subset may be used.
- the design may be extended to other encoding schemes so that not all of the resulting or output bits of the encoder system 5 is valid or useful.
- different coding rates produce different numbers of valid or useful bits.
- a coding rate of l A all 24 outputs bits from the encoder system 5 are valid.
- a coding rate of 2/3 only the 18 LSB bits are valid.
- this encoding rate only 6 bits of the output set produced by the encoding module 50 are valid.
- For a coding rate of 3/4 only the 16 LSB bits of the overall set output are valid. Thus, only 4 bits of the output set produced by the encoding module 50 are valid.
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004525088A JP4292298B2 (ja) | 2002-08-01 | 2003-07-31 | 並列畳み込み符号器 |
| AU2003249822A AU2003249822A1 (en) | 2002-08-01 | 2003-07-31 | Parallel convolutional encoder |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US39972802P | 2002-08-01 | 2002-08-01 | |
| US60/399,728 | 2002-08-01 | ||
| US10/629,644 | 2003-07-29 | ||
| US10/629,644 US7318189B2 (en) | 2002-08-01 | 2003-07-29 | Parallel convolutional encoder |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2004013974A2 true WO2004013974A2 (en) | 2004-02-12 |
| WO2004013974A3 WO2004013974A3 (en) | 2004-05-06 |
Family
ID=31191297
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CA2003/001133 Ceased WO2004013974A2 (en) | 2002-08-01 | 2003-07-31 | Parallel convolutional encoder |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US7318189B2 (enExample) |
| JP (1) | JP4292298B2 (enExample) |
| KR (1) | KR101026444B1 (enExample) |
| AU (1) | AU2003249822A1 (enExample) |
| WO (1) | WO2004013974A2 (enExample) |
Families Citing this family (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7415112B2 (en) * | 2002-09-18 | 2008-08-19 | Zarbana Digital Fund Llc | Parallel scrambler/descrambler |
| US20050094551A1 (en) * | 2003-09-25 | 2005-05-05 | Broadcom Corporation | Processor instruction for DMT encoding |
| US7305608B2 (en) * | 2003-09-25 | 2007-12-04 | Broadcom Corporation | DSL trellis encoding |
| US7580412B2 (en) * | 2003-09-26 | 2009-08-25 | Broadcom Corporation | System and method for generating header error control byte for Asynchronous Transfer Mode cell |
| US7903810B2 (en) | 2003-09-26 | 2011-03-08 | Broadcom Corporation | Single instruction for data scrambling |
| US7751557B2 (en) * | 2003-09-26 | 2010-07-06 | Broadcom Corporation | Data de-scrambler |
| US7734041B2 (en) * | 2003-09-26 | 2010-06-08 | Broadcom Corporation | System and method for de-scrambling and bit-order-reversing payload bytes in an Asynchronous Transfer Mode cell |
| US7756273B2 (en) * | 2003-09-26 | 2010-07-13 | Broadcom Corporation | System and method for bit-reversing and scrambling payload bytes in an asynchronous transfer mode cell |
| US7327803B2 (en) * | 2004-10-22 | 2008-02-05 | Parkervision, Inc. | Systems and methods for vector power amplification |
| US7355470B2 (en) * | 2006-04-24 | 2008-04-08 | Parkervision, Inc. | Systems and methods of RF power transmission, modulation, and amplification, including embodiments for amplifier class transitioning |
| US7911272B2 (en) * | 2007-06-19 | 2011-03-22 | Parkervision, Inc. | Systems and methods of RF power transmission, modulation, and amplification, including blended control embodiments |
| US8334722B2 (en) | 2007-06-28 | 2012-12-18 | Parkervision, Inc. | Systems and methods of RF power transmission, modulation and amplification |
| US8031804B2 (en) * | 2006-04-24 | 2011-10-04 | Parkervision, Inc. | Systems and methods of RF tower transmission, modulation, and amplification, including embodiments for compensating for waveform distortion |
| US7937106B2 (en) * | 2006-04-24 | 2011-05-03 | ParkerVision, Inc, | Systems and methods of RF power transmission, modulation, and amplification, including architectural embodiments of same |
| US7620129B2 (en) * | 2007-01-16 | 2009-11-17 | Parkervision, Inc. | RF power transmission, modulation, and amplification, including embodiments for generating vector modulation control signals |
| WO2008144017A1 (en) | 2007-05-18 | 2008-11-27 | Parkervision, Inc. | Systems and methods of rf power transmission, modulation, and amplification |
| WO2008156800A1 (en) | 2007-06-19 | 2008-12-24 | Parkervision, Inc. | Combiner-less multiple input single output (miso) amplification with blended control |
| KR101480383B1 (ko) * | 2007-07-25 | 2015-01-09 | 삼성전자주식회사 | 코드 인코딩 장치 |
| US8074154B2 (en) * | 2007-09-13 | 2011-12-06 | Joseph Schweiray Lee | Methods and apparatus for encoding and decoding cyclic codes by processing multiple symbols per cycle |
| WO2009145887A1 (en) * | 2008-05-27 | 2009-12-03 | Parkervision, Inc. | Systems and methods of rf power transmission, modulation, and amplification |
| GB0810241D0 (en) * | 2008-06-05 | 2008-07-09 | Univ Reading The | Parallel convolutional coder |
| JP4935778B2 (ja) * | 2008-08-27 | 2012-05-23 | 富士通株式会社 | 符号化装置、送信装置および符号化方法 |
| SG176090A1 (en) * | 2009-05-20 | 2011-12-29 | Halliburton Energy Serv Inc | Downhole sensor tool with a sealed sensor outsert |
| EP2695294A1 (en) | 2011-04-08 | 2014-02-12 | Parkervision, Inc. | Systems and methods of rf power transmission, modulation, and amplification |
| KR20140034895A (ko) | 2011-06-02 | 2014-03-20 | 파커비전, 인크. | 안테나 제어 |
| US8583993B2 (en) | 2011-06-17 | 2013-11-12 | Lsi Corporation | Turbo parallel concatenated convolutional code implementation on multiple-issue processor cores |
| EP4538829A3 (en) | 2013-09-17 | 2025-06-25 | Parkervision, Inc. | Method, apparatus and system for rendering an information bearing function of time |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5193094A (en) | 1990-03-07 | 1993-03-09 | Qualcomm Incorporated | Method and apparatus for generating super-orthogonal convolutional codes and the decoding thereof |
| JPH0481054A (ja) * | 1990-06-01 | 1992-03-13 | Nec Corp | データ伝送方式 |
| US5381425A (en) * | 1992-03-27 | 1995-01-10 | North Carolina State University | System for encoding and decoding of convolutionally encoded data |
| US5612974A (en) * | 1994-11-01 | 1997-03-18 | Motorola Inc. | Convolutional encoder for use on an integrated circuit that performs multiple communication tasks |
| JPH09181618A (ja) | 1995-12-27 | 1997-07-11 | Nec Corp | データ伝送装置 |
| KR100248395B1 (ko) * | 1997-10-23 | 2000-03-15 | 정선종 | 디지털 통신용 채널 부호기 설계방법 |
| KR100248396B1 (ko) * | 1997-10-24 | 2000-03-15 | 정선종 | 병렬 길쌈 부호화기를 사용한 채널 부호기 설계방법 |
| US6081921A (en) * | 1997-11-20 | 2000-06-27 | Lucent Technologies Inc. | Bit insertion approach to convolutional encoding |
| US5954836A (en) * | 1998-01-15 | 1999-09-21 | Lucent Technologies, Inc. | Method and apparatus for pipelined encoding |
| KR100282516B1 (ko) * | 1998-06-03 | 2001-03-02 | 김영환 | 길쌈부호 생성기 및 이를 내장한 디지털 신호 프로세서 |
| JP3274668B2 (ja) * | 1999-10-18 | 2002-04-15 | 松下電器産業株式会社 | 演算処理装置及び演算処理方法 |
| EP1113580B1 (en) | 1999-12-28 | 2015-02-25 | Hitachi Kokusai Electric Inc. | Coder with error correction, decoder with error correction and data transmission apparatus using the coder and decoder |
| JP2001298370A (ja) * | 2000-04-13 | 2001-10-26 | Matsushita Electric Ind Co Ltd | 符号化装置 |
| US6598203B1 (en) * | 2000-06-28 | 2003-07-22 | Northrop Grumman Corporation | Parallel punctured convolutional encoder |
| US6631488B1 (en) * | 2000-06-30 | 2003-10-07 | Agilent Technologies, Inc. | Configurable error detection and correction engine that has a specialized instruction set tailored for error detection and correction tasks |
| GB2380370B (en) * | 2001-09-28 | 2004-03-03 | Motorola Inc | Convolutional encoder and method of operation |
| US6954885B2 (en) * | 2001-12-14 | 2005-10-11 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
-
2003
- 2003-07-29 US US10/629,644 patent/US7318189B2/en not_active Expired - Fee Related
- 2003-07-31 JP JP2004525088A patent/JP4292298B2/ja not_active Expired - Fee Related
- 2003-07-31 KR KR1020057001719A patent/KR101026444B1/ko not_active Expired - Fee Related
- 2003-07-31 AU AU2003249822A patent/AU2003249822A1/en not_active Abandoned
- 2003-07-31 WO PCT/CA2003/001133 patent/WO2004013974A2/en not_active Ceased
-
2007
- 2007-11-30 US US11/948,953 patent/US7765457B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| WO2004013974A3 (en) | 2004-05-06 |
| US20080092023A1 (en) | 2008-04-17 |
| US20040025104A1 (en) | 2004-02-05 |
| KR101026444B1 (ko) | 2011-04-07 |
| JP2005535190A (ja) | 2005-11-17 |
| JP4292298B2 (ja) | 2009-07-08 |
| KR20050045996A (ko) | 2005-05-17 |
| AU2003249822A1 (en) | 2004-02-23 |
| US7318189B2 (en) | 2008-01-08 |
| US7765457B2 (en) | 2010-07-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7765457B2 (en) | Parallel convolutional encoder | |
| RU2467484C2 (ru) | Устройство, содержащее кольцевой буфер, и способ для присвоения вариантов избыточности кольцевому буферу | |
| EP1050110B1 (en) | Method for a general turbo code trellis termination | |
| US11075652B2 (en) | Polar code transmission method and apparatus | |
| US9444494B2 (en) | Systems and methods for network coding using convolutional codes | |
| JP2005535190A5 (enExample) | ||
| CN1154309C (zh) | 编码器和译码器 | |
| EP1501226A1 (en) | Method, encoder and communication device for encoding parallel concatenated data | |
| CN1679267A (zh) | 接收移动无线信号时的译码及循环冗余校验的并行处理 | |
| US20030188248A1 (en) | Apparatus for iterative hard-decision forward error correction decoding | |
| US6374382B1 (en) | Short block code for concatenated coding system | |
| US6385752B1 (en) | Method and apparatus for puncturing a convolutionally encoded bit stream | |
| CN1614898B (zh) | Turbo码编码器及其编码方法 | |
| JP2002506599A (ja) | 高ビットレートデジタルデータ伝送のためのエラー訂正符号化方法および装置と、対応する復号化方法および装置 | |
| Lavoie et al. | New VLSI architectures for fast soft-decision threshold decoders | |
| CN100444524C (zh) | 用于通信系统中编码数据位的方法、设备和系统 | |
| JP4420925B2 (ja) | 情報ビット系列を符号化する方法および符号化器 | |
| Haccoun et al. | New architectures for fast convolutional encoders and threshold decoders | |
| CN1414707A (zh) | 用于降低乘积码译码所需存储量和复杂度的方法 | |
| WO2009147401A1 (en) | Parallel convolutional coder | |
| US7138930B1 (en) | Multiple byte data path encoding/decoding device and method | |
| CN101874353B (zh) | 采用经分割的并行编码操作的卷积编码 | |
| WO2002098002A1 (en) | Low complexity convolutional decoder | |
| JP2003520465A (ja) | 直列データストリームを符号化する符号化方法および符号化装置 | |
| KR20010084779A (ko) | 무선통신 시스템의 부호화 장치 및 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2003818236X Country of ref document: CN Ref document number: 1020057001719 Country of ref document: KR |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2004525088 Country of ref document: JP |
|
| WWP | Wipo information: published in national office |
Ref document number: 1020057001719 Country of ref document: KR |
|
| 122 | Ep: pct application non-entry in european phase |