A method for preparing data for transmission on a plurality of transmission channels in a wireless communication system, wherein each transmission channel is operative to transmit a respective sequence of modulation symbols, the method comprising: determining (414, 434) a number of information bits per modulation symbol supported by each transmission channel; identifying (416, 436) a modulation scheme for each transmission channel such that the determined number of information bits per modulation symbol is supported; determining a coding rate for each transmission channel based at least on the determined number of information bits per modulation symbol and the identified modulation scheme for each transmission channel, wherein at least two transmission channels are associated with different coding rates; encoding (422, 442) a plurality of information bits in accordance with a particular encoding scheme to provide a plurality of coded bits, the plurality of information bits including information bits for transmission on each of the at least two transmission channels and wherein the information bits from the at least two transmission channels are encoded with the same base encoding scheme and wherein the encoding is achieved via a Turbo code that includes two constituent codes operative to provide first and second streams of tail and parity bits; separately interleaving the information bits, the first stream of tail and parity bits and the second stream of tail and parity bits to obtain an interleaved stream of information bits, a first interleaved stream of tail and parity bits and a second interleaved stream of tail and parity bits; and puncturing (424, 446) the first and second interleaved streams of tail and parity bits in accordance with a particular puncturing scheme to provide a number of unpunctured coded bits for the plurality of transmission channels, wherein the puncturing is performed such that the number of tail and parity bits deleted from the first interleaved stream of tail and parity bits is approximately equal to the number of tail and parity bits deleted from the second interleaved stream of tail and parity bits; and adjusting the puncturing to achieve the different coding rates for the at least two transmission channels. determining (414, 434) a number of information bits per modulation symbol supported by each transmission channel; identifying (416, 436) a modulation scheme for each transmission channel such that the determined number of information bits per modulation symbol is supported; determining a coding rate for each transmission channel based at least on the determined number of information bits per modulation symbol and the identified modulation scheme for each transmission channel, wherein at least two transmission channels are associated with different coding rates; encoding (422, 442) a plurality of information bits in accordance with a particular encoding scheme to provide a plurality of coded bits, the plurality of information bits including information bits for transmission on each of the at least two transmission channels and wherein the information bits from the at least two transmission channels are encoded with the same base encoding scheme and wherein the encoding is achieved via a Turbo code that includes two constituent codes operative to provide first and second streams of tail and parity bits; separately interleaving the information bits, the first stream of tail and parity bits and the second stream of tail and parity bits to obtain an interleaved stream of information bits, a first interleaved stream of tail and parity bits and a second interleaved stream of tail and parity bits; and puncturing (424, 446) the first and second interleaved streams of tail and parity bits in accordance with a particular puncturing scheme to provide a number of unpunctured coded bits for the plurality of transmission channels, wherein the puncturing is performed such that the number of tail and parity bits deleted from the first interleaved stream of tail and parity bits is approximately equal to the number of tail and parity bits deleted from the second interleaved stream of tail and parity bits; and adjusting the puncturing to achieve the different coding rates for the at least two transmission channels.