A data coder includes a combined parallel concatenated convolution coder
(PCCC) and a parallel concatenated zigzag (PCZZ) coder, where PCCC
functional blocks are re-used in the PCZZ coder for coding at high coding
rates. The PCZZ coding rate (R) may be changed by re-partitioning at
least one interleaver pattern. A second interleaver for the PCZZ coder is
obtained by a transform of an initial interleaving vector. Alternatively,
the PCZZ coder re-uses a PCCC interleaver. The PCZZ coder may also use a
multi-dimensional concatenation of zigzag codes, and it is shown one may
add additional code dimensions (and relevant parity check symbols) by
using properties of already specified interleaver(s), and without adding
more interleaver(s).