A method and apparatus for encoding multiple bits in parallel wherein outputs
are
generated recursively. During each clock cycle, the encoder processes multiple
bits and generates outputs consistent with those generated sequentially over multiple
clock cycles in a conventional convolutional encoder. In one embodiment, input
data is stored in multiple memory storage units, which are then each uniquely addressed
to provide data to parallel encoders.