Wolmer’s Trust High School for Girls

CAPE COMPUTER SCIENCE

 

Upper and Lower School                             Teacher:  Mrs. McCallum-Rodney

 

DECODERS AND ENCODERS

 

ENCODER

 

An encoder is a device that is used to convert a signal or certain data into code. This kind of conversion is done for a variety of reasons, the most common being data compression. Other reasons for using encoders include data encryption for making the data secure and translating data from one code to another new or existing code. Encoders may be analog or digital devices. In analog devices, the encoding is done using analog circuitry, while in digital encoders the encoding is done using program algorithms.

 

An encoder refers to a device that is used to change a signal or data into a code. Whereas a Multiplexer or mux is a device which performs multiplexing or it takes information from more than one channels and outputs into a single channel. Thus a multiplexer is basically a kind of encoder where its function is to combine multiple inputs into one output.

 

DECODER

 

A decoder, on the other hand, functions the reverse of an encoder. It is a device that is used to decode an encoded signal or data. It does this to help retrieve the data that was encoded in the first place. Both encoders and decoders usually function in cycle, i.e., an application that uses an encoder would ideally also require a decoder. There are different types of decoders, e.g. demultiplexers.

 

A decoder chooses on of the wires and make it output 1.  The output whose index is given by the binary value on S (select input) is set to 1.  All others are set to 0.

 

Only one wire can be ‘ON’ at a time.

 

Whichever one is ‘ON’ is based on the input (ie @ the selector).


COMPARING DECODER AND ENCODER LOGIC SYMBOL

  

 

 

 If in a decoder the following selects were made, the output would be as indicated:

 

                     S0 S1 S2                    A B C D E F G H

                     1   0   1                0  0  0  0  0 1 0  0

                     0   1   0                0  0  1  0  0 0 0  0

 

If in a encoder the following input was given, the output/address would be as indicated:

 

                           A B C D E F G H          S0 S1 S2

                     1  0  0  0  0 0 0  0            0   0   0        

                     0  0  0  0  0 1 0  0            1   0   1

 

 Consider the following:

 

 

 Explanation

 ·         The decoder selected 01, which allows 01 to be set to 1, hence allowing it to light up.

 

·         The MUX gets its input from the wire that has been lit-up by the decoder.

 

·         The input to the MUX of 1 or 0 is based on if the lines are connected (1) or disconnected (2).

 

·         In the example given above, if the select for the 2-1 MUX is 00, the output would be 0.

  

Please Note:

 

  • You don’t always have equal rows and columns. 
  • A decoder does not have an output line, and the input (which is to the side) is the select lines.

 

CONCLUSION

 

If the encoders are the opposite of decoders, then that means that the outputs and inputs of the decoder are swapped.  That means that what would normally be the select lines on the decoder (which are inputs) would now be the outputs of the encoder.  Its purpose would be to produce the binary encoding of the index whose input is high.  That is, the encoder will have 2n inputs and n outputs, and only one of the inputs is expected to be high at any one moment.  So, if the rth input is high, then the output bits will have the binary value of r on them.  Encoders are useful for components like content-addressable memory, where you put in the data you want, and the address where it is stored is returned as a result.

 

 

Make a Free Website with Yola.