Because of the higher datarate imposed by the channel coder, the
    probability of bit error occurring in the digital channel
    increases relative to the value obtained when
    no channel coding is used.  The bit interval duration must be
    reduced by
      
      
	KN
      
	  
	  K
	  N
	
      in comparison to the no-channel-coding situation, which means
      the energy per bit
      
      
	
	    E
	    b
	  
      
	    E
	    b
	  
      goes down by the same amount.  The bit
      interval must decrease by a factor of three if the transmitter
      is to keep up with the data stream, as illustrated here.
      
	It is unlikely that the transmitter's power could be increased
	to compensate.  Such is the sometimes-unfriendly nature of the
	real world.
      
      Because of this reduction, the error probability  
      
      
	
	    p
	    e
	  
      
	    p
	    e
	  
      of the digital channel goes up. The question thus becomes does
      channel coding 
really help: Is the
      effective error probability lower with channel coding even
      though the error probability for each transmitted bit is larger?
      The answer is 
no: Using a repetition code
      for channel coding cannot ultimately reduce the probability that
      a data bit is received in error. The ultimate reason is the
      repetition code's inefficiency: transmitting one data bit for
      every three transmitted is too inefficient for the amount of
      error correction provided.
    
    
	Using MATLAB, calculate the probability a
	  bit is received incorrectly with a three-fold repetition
	  code.  Show that when the energy per bit
	  
	   
	    
		E
		b
	      
	  
		E
		b
	      
	  is reduced by 
	  
	  
	    1/3 
	  13
	  that this probability is larger than the no-coding
	  probability of error.
	
       
	  With no coding, the average bit-error probability
	  
	  
	    
		p
		e
	      
	  
		p
		e
	      
	  is given by the 
	  
	    probability of error equation
	  :
	  
	  
	    
		  p
		  e
		=Q2α2
			  E
			  b
			
			N
			0
		      
	  
	      
	      
		  p
		  e
		
	      
		Q
		
		  
		  
		    
		    
		      
		      2
		       		      
			
			α
			2
		      
		      
			  E
			  b
			
		    
		    
			N
			0
		      
		    	
		
	      
	    .  With a threefold repetition code, the bit-error
	  probability is given by
	  
	    3
		    
		      p
		      e
		      ′
		    
		  2×(1−
		    
		      p
		      e
		      ′
		    
		  )+
		  
		    p
		    e
		    ′
		  
		3
	  
	      
	      
		
		3
		
		  
		  
		    
		      p
		      e
		      ′
		    
		  
		  2
		
		
		  
		  1
		  
		    
		      p
		      e
		      ′
		    
		  
		
	      
	      
		
		
		  
		    p
		    e
		    ′
		  
		
		3
	      
	    , where  
	  
	  
	    
		  p
		  e
		  ′
		=Q2α2
			  E
			  b
			3
			  N
			  0
			
	  
	      
	      
		  p
		  e
		  ′
		
	      
		Q
		
		  
		  
		    
		    
		      
		      2
		      
			
			α
			2
		      
		      
			  E
			  b
			
		    
		    
		      
		      3
		      
			  N
			  0
			
		    
		  
		
	      
	    .  Plotting this reveals that the increase in
	  bit-error probability out of the channel because of the
	  energy reduction is not compensated by the repetition
	  coding.
	
 
     The repetition code represents a special case of
      what is known as block channel coding.  For every
      KK bits that enter
      the block channel coder, it inserts an additional
      
      
	N−K
      
	  
	  N
	  K
	
      error-correction bits to produce a block of NN bits for transmission.
      We use the notation (N,K) to represent a given block code's
      parameters.  In the three-fold repetition code,
      
      
	K=1     
	  
	  K
	  1
	 and  
      
      
	N=3 
      
	   
	  N 
	  3 
	
      .  A block code's coding efficiency  EE equals the ratio
      
      
	KN
      
	  
	  K
	  N
	, and quantifies the overhead introduced by channel
      coding. The rate at which bits must be transmitted again
      changes: So-called data bits
      
      
	bn
      
	  b
	  n
	 emerge from the source coder at an average rate
      
      
	BA-
      
	  
	  
	    B
	    A
	  
	 and exit the channel at a rate
      
      
	1E
      
	  
	  1
	  E
	 higher.  We represent the fact that the bits sent
      through the digital channel operate at a different rate by using
      the index ll for
      the channel-coded bit stream
      
      
	cl
      
	  c
	  l
	.  Note that the blocking (framing) imposed by the
      channel coder does not correspond to symbol boundaries in the
      bit stream
      
      
	bn
      
	  b
	  n
	, especially when we employ variable-length source codes.
    
    
      Does any error-correcting code reduce communication errors when
      real-world constraints are taken into account?  The answer now is
      yes. To understand channel coding, we need to develop first a
      general framework for channel coding, and discover what it takes
      for a code to be maximally efficient: Correct as many errors as
      possible using the fewest error correction bits as possible
      (making the efficiency
      
	KN
      
	  
	  K
	  N
	
      as large as possible).
    
   
        
"Electrical Engineering Digital Processing Systems in Braille."