Convolutional encoder and method of operation
First Claim
1. A method of convolutionally encoding a data stream comprising:
- inputting a first block of two or more bits in parallel into a first portion of a plurality of data registers arranged to operate as a shift register;
performing a number of first intermediate calculations in parallel using a number of outputs from the plurality of data registers;
storing a number of first intermediate calculations in a second portion of the plurality of data registers; and
using one or more of said stored number of first intermediate calculations with data stored in the first portion of the plurality of data registers to perform second intermediate calculations to be stored in the plurality of data registers; and
calculating a final convolutionally encoded output from the plurality of data registers.
20 Assignments
0 Petitions
Accused Products
Abstract
Convolutionally encoding a data stream includes inputting a first block of two or more bits in parallel into a shift register. A number of intermediate calculations are performed in parallel using a number of respective delayed shift register outputs; and said number of intermediate calculations are output to form a convolutionally encoded sequence.
In one example, a register (of individual bits stored in words), is set up. The register is longer than the constraint length means that a relatively large number of input bits can be read from memory only once, thus avoiding many independent moves of operands to and from memory. Since the register is longer than the constraint length, the register need only be shifted once for every ‘a+1’ input bits, rather than once for each bit.
11 Citations
16 Claims
-
1. A method of convolutionally encoding a data stream comprising:
-
inputting a first block of two or more bits in parallel into a first portion of a plurality of data registers arranged to operate as a shift register; performing a number of first intermediate calculations in parallel using a number of outputs from the plurality of data registers; storing a number of first intermediate calculations in a second portion of the plurality of data registers; and using one or more of said stored number of first intermediate calculations with data stored in the first portion of the plurality of data registers to perform second intermediate calculations to be stored in the plurality of data registers; and calculating a final convolutionally encoded output from the plurality of data registers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A convolutional encoder for convolutionally encoding a data stream the convolutional encoder comprising:
-
one or more input pods; a plurality of data registers arranged to operate as a shift register operably coupled to said one or more input ports for receiving into a first portion of the plurality of data registers a first block of two or more bits in parallel of said data stream; calculation means, operably coupled to said plurality of data registers arranged to operate as a shift register to perform logical calculations on outputs from said plurality of data registers; and one or more output ports, operably coupled to said calculation means, to output a convolutionally encoded data stream; wherein said calculation means is arranged to perform a number of first intermediate calculations in parallel using a number of outputs from the plurality of data registers; a second portion of said plurality of data registers is arranged to store a number of first intermediate calculations; and said calculation means is arranged to re-use one or more of said stored number of first intermediate calculations with data stored in the first portion of a plurality of data registers to perform second intermediate calculations to be stored in the plurality of data registers and generate a final convolutionally encoded output from the plurality of data registers. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification