Turbo codes with long frame lengths are usually constructed using a randoml
y chosen interleaver, Statistically, this guarantees excellent bit-error ra
te (BER) performance but also generates a certain number of low weight code
words, resulting in the appearance of an error floor in the BER curve. Seve
ral methods, including using an outer code, have been proposed to improve t
he error floor region of the BER curve. In this paper we study the effect o
f an outer BCH code on the frame-error rate (FER) of turbo codes. We show t
hat additional coding gain is possible not only in the error floor region b
ut also in the waterfall region. Also, the outer code improves the iterativ
e APP decoder by providing a stopping criterion and alleviating convergence
problems. With this method, we obtain codes whose performance is within 0.
6 dB of the sphere packing bound at an FER of 10(-6).