Selectors Function Carry-out Desciption
0000 A+B 1 if (A+B)>15 Add A to B
0001 A+1 1 if (A+1)>15 Increment A
0010 A-B 1 if A>B Subtract B from A
0011 A 1 Transfer A
0100 A 0 Transfer A
0101 A+B+1 1 if (A+B+1)>15 Add A to B with Carry
0110 A-B-1 1 if A>B Subtract B from A with Borrow
0111 A-1 1 if A>0 Decrement A
1000 A XOR B 0 Bitwise XOR
1001 A XOR B 0 Bitwise XOR
1010 A OR B 0 Bitwise OR
1011 A OR B 0 Bitwise OR
1100 A AND B 0 Bitwise AND
1101 A AND B 0 Bitwise AND
1110 A’ 0 Complement of A
1111 A’ 0 Complement of A
For simplicity, different blocks were created and the end result is shown here with the internal blocks:

Fig: 1 bit Full Adder

Fig: 4-1 Mux

Fig: 2-1 Mux

Fig: Cout Block

Fig: Output Block

Fig: Input B Block

Fig: Input A Block

Fig: Next Carry

Fig: Initial Carry Block

Fig: ALU Block

Fig: Shifter Block

Fig: Final ALU with Shifter

Fig: 4-1 Mux

Fig: 2-1 Mux

Fig: Cout Block

Fig: Output Block

Fig: Input B Block

Fig: Input A Block

Fig: Next Carry

Fig: Initial Carry Block

Fig: ALU Block

Fig: Shifter Block

Fig: Final ALU with Shifter
No comments:
Post a Comment