Source Encoder :
The input to the source encoder (also referred to as the source coder) is a string of symbols occurring at a rate symbols/sec.
The source encoder converts the symbol sequence into a binary sequence of 0's and 1's by assigning code words to the symbols in the input sequence by using either assigning fixed-length binary code word to each symbol or assigns variable length code words to these blocks. Second function it performs is data compression.
Channel Encoder :
The channel coder provides some amount of error controlled capability to the data to be transmitted.
It adds some extra bits to the output of the source coder. While these extra bits make it possible for the receiver to detect and/or correct some of the errors in the information bearing bits.