Hi there in this video we are going to look

at decoders. We are going to be using these in various places in the CPU. The one we are

looking at the moment is for the RAM. So let’s look at a decoder. If we have 2 bits say 00,

then those 2 bits can produce 4 different values. 00, 01,10,11. So we have a 2 by 4

decoder to get access to 4 values from 2. The same thing happens with a 3 by 8. So we

will have 3 bits. So we will have 3 inputs and those will give us 8 outputs. We

can create a 4 by 16 decoder with 4 input bits giving us 16 outputs. So all we are doing

is , from the inputs getting access to each and every output value. I have a decoder built

but let’s go through an example here first of a 2 by 4. So we need 4 AND gates with 4

outputs. The top one is our least significant bit. Now we want these output lines going

high when the values occur at the input . At the input we are going to have 2 inputs say

A and B but we need access to the compliments of A and B , we can put A and B through NOT

gates to get the compliments. In the first instance when A and B are both zero we need

to take the inputs from the compliments of A and B now when A and B go low the compliments

go high and we get a high output. So for the second one we require to connect A to the

compliment and B to B so when A goes low then the compliment is high and when B is high

then we get 2 highs so an output at 01. So this is the basis of a decoder. So let’s have

a look at one which is already built in logisim. We will look at

the 3 by 8. So you see our inputs A,B,C and the NOT gates create the compliments so the

inputs and the compliments all go into the AND gates. So the top bit is the least significant

bit and the bottom one is the most significant bit. So in order for the least significant

bit to go high all we need is all the Inputs to be zero. Now consider the next significant

bit so we have taken the connection from C and compliments of A and B. So we can work

our way through the outputs 2,3,4,5,6,7. So this all I am going to say for now. I have

a 4 by 16 which is the same idea as a 3 by 8. We can change the

inputs and see the outputs change. That’s all for the decoder. Note I have not created

the decoder instance here. The one I have already created for the finished CPU is the

one being shown. Thank you for listening and in the next video we will put together the

decoders and the little register we built and also the 8 bit memory and we will have

a look at how we can put them all together to create a RAM. Ok thank you and goodbye.