1. A method of additive encoding of data words, the method comprising: receiving a plurality of data words; and searching a trellis representation of additive code words to identify a path in the trellis representing a sequence of patterns to be used to encode the data words.