Guaranteed Higher Grade!

Free Quote
Design a Combinational Logic Circuit for Aiken Code to Binary Conversion

Answered

Before you start this project, please be sure that you have completed all of the following activities.Read the project all the way through before starting. For example, there are some suggestions in the last section.Complete all reading and watch all videos for Modules 1, 2, and 3. Ensure that you understand number systems, codes, Boolean logic, and combinational logic circuits and that you are familiar with Logisim.Note the grading policies, including policies for submitting assignments, in the syllabus. Review the course schedule. Note the due dates for course assignments including this one. Please note the following.

All submissions of graded work in this class are subject to the Graduate Honor System. Work on this project is to be completely your own. You are welcome to discuss high-level aspects of the project with others and you are encouraged to the Project 1 discussion area on the class website for this. Any questions concerning design details must be directed to the instructor or teaching assistant.

Submit your assignment using the Assignments area of the class website. You must submit your assignment by 11:55 p.m. on the due date.

The objective of this project is to reinforce your understanding of binary codes, combinational logic design, and logic simulation. You must:

1. design a combinational logic circuit that displays the decimal value of an Aiken (or “2421”) code input according to the specifications given below;

2. debug and test your design by simulating it using the Logisim simulator; and

3. document your work in a short report.

Computer systems usually represent decimal and hexadecimal numbers in standard radix-2 form. The four bits representing a decimal or hexadecimal digit have weights 8-4-2-1. For example, the value 9 decimal is represented as 1001 (1 8 + 0 4 + 0 2 + 1 1). Some systems use different codes, with different weights for the digits, to achieve special properties. Converters can translate from or to standard radix-2 representation.

One example of such a special code is the Aiken (or 2421) code^{1} which uses weights 2-4-2-1 instead of 8-4-2-1 to represent decimal digits using four binary digits. Consider a decimal number N with binary representation B using the Aiken code. Using the Aiken code, the 9’s complement^{2} of N is represented in binary form as the 1’s complement of B. For example, the decimal number 2 is represented as 0010 (just like in standard radix-2 representation). The 9’s complement of 2 is 7. Using the Aiken code, 7 is represented as 1101 (and not 0111 as it is in radix-2).

Note that 1101 is the 1’s complement of 0010. The Aiken code makes it easier to perform decimal arithmetic with the decimal digits represented in binary form. The Aiken code is used in inherently decimal devices such as calculators and digital clocks. These devices use decimal, rather than binary, arithmetic. Table I shows how decimal values 0 through 9 are represented using the Aiken code as well as the standard binary (radix-2) code.

Table I. Decimal Values and Associated 4-bit Aiken Code and Standard Binary Code.

0 |
0000 |
0000 |

1 |
0001 |
0001 |

2 |
0010 |
0010 |

3 |
0011 |
0011 |

4 |
0100 |
0100 |

5 |
1011 |
0101 |

6 |
1100 |
0110 |

7 |
1101 |
0111 |

8 |
1110 |
1000 |

9 |
1111 |
1001 |

One might think you could represent some decimal numbers in two different ways, such as both 1011 and 0101 for decimal 5. But, the Aiken code is defined so that it maintains the complementation property described above. Note that there are six combination of four bits that are not included in the table as an Aiken code, namely 0101, 0110, 0111, 1000, 1001, and 1010. These six values are considered undefined or disallowed for the Aiken code.

You are to design a combinational logic circuit that accepts a decimal value represented as a four-bit Aiken code (X3 X2 X1 X0) as its input and that creates a four-bit output (Y3 Y2 Y1 Y0) that uses standard binary (radix-2) encoding to represent the same decimal value. In other words, the circuit translates between the Aiken code input and the standard binary code output as indicated in Table I. For example, if X3X2X1X0 = 1110, then output Y3Y2Y1Y0 = 1000.