Convolution codes work on bit or symbol streams, which have arbitrary length. In general, they are decoded with the Viterbi algorithm. While increasing constraint length of the convolution code, it allows asymptotically optimal decoding efficiency, it’s still at the expense of exponentially increasing complexity.  It encodes k bits information into n bits symbols. Because k and n is small, it is easy to transmission. Different from Block code, the n bits code work not only depend on the k bits date, but also depend on the forward symbols. Convolution codes are used in numerous applications such as digital video, radio, mobile communication, and satellite communication. It is high speed and efficient.