You must i design a combinational logic circuit that


Project Assignment -

Preface - Before starting this project, please be sure that you have completed all of the following activities.

Make sure you understand number systems, codes, Boolean logic, and combinational logic circuits.

You will need Logisim to complete this project assignment.

1. Introduction

The objective of this project is to reinforce your understanding of binary codes, combinational logic design, and logic simulation. You must: (i) design a combinational logic circuit that displays the hexadecimal value of a gray code input according to the specifications given below; (ii) debug and test your design by simulating it using the Logisim simulator; and (iii) document your work in a short report.

2. Gray Codes

Consider a system where a value is changed by being incremented or decremented by one. The value is encoded by n binary signals. As a specific example, consider a value, represented with 4 bits, being incremented from 3 to 4. In a traditional weighted binary encoding, 3 is represented as 0011 and 4 is represented as 0100. For the change from 3 to 4, three bits must change. Since the time of the transitions in the actual signals will always be different if examined at a sufficiently fine scale, the value will not change instantaneously from 3 to 4. As an example, the transition could occur as follows, where the transitions to value 7 and then value 5 are transient in nature.

0011 (3) → 0111 (7) → 0101 (5) → 0100 (4)

The physical reality of such signal transitions can create problems for applications including mechanical encoders and asynchronous (clock-free) systems. This problem can be overcome using Gray codes, which are non-weighted codes that can be used to represent values. Gray codes have the special property that any two adjacent values differ in just one bit. For example, the standard four-bit Gray code for 3 is 0010 and the code for 4 is 0110. These two codes differ in just one bit, the second bit from the left. So, only a single signal needs to change from 0 to 1 (or 1 to 0 for other values) to represent an adjacent value.

For this project we consider a special type of Gray code called a Balanced Gray code. In a Balanced Gray code, the number of transitions for each bit position is the same when counting through the values. For example, a four-bit Balanced Gray code can be used to count from 0 to 15 (hexadecimal F). There are 16 transitions as the count goes from 0 to 1 to 2 and so on to 15 and then back to 0. For a Balanced Gray code, there are four-bit transitions for each of the four bit positions during the 16 total transitions. This property is useful in some applications.

Table I below shows the encoding of hexadecimal values 0 through F using a 4-bit Balanced Gray code.

Table I. Hexadecimal Values and Associated 4-bit Balanced Gray Code and Binary Code

Hexadecimal Value

Balanced Gray Code (X3 X2 X1 X0)

Binary Code (Y3 Y2 Y1 Y0)

0

0000

0000

1

1000

0001

2

1100

0010

3

11 01

0011

4

1111

0100

5

1110

0101

6

1010

0110

7

0010

0111

8

0110

1000

9

0100

1001

A

0101

1010

B

0111

1011

C

0011

1100

D

1011

1101

E

1001

1110

F

0001

1111

3. Design Specification

You are to design a combinational logic circuit that accepts a four-bit Balanced Gray code (X3 X2 X1 X0 ) as its input and creates a four-bit output (Y3 Y2 2 Y1 Y0 ) that uses standard binary encoding to represent the same hexadecimal value. In other words, the circuit translates between the Balanced Gray code input and the binary code output as indicated in Table I. Figure 1 provides a block diagram of the function. You do not need to minimize the logic function or associated circuit, but you may choose to do so.

Note that Table I is not a true truth table in that it is not ordered by input. You can rearrange the rows in Table I to construct a standard truth table with inputs X3 X2 X1 X0 appearing in order from 0000, 0001, 0010, ..., 1111.

1725_figure.png

4. Modeling the Circuit in Logisim

Use the Pin device in Logisim's Wiring library to control the four inputs (X3 X2 X1 X0) to the combinational circuit. The Pin device is also available on Logisim's toolbar. Each pin can be interactively set to 0 or 1 using Logisim's Poke tool to test the circuit for different Balanced Gray code input values. If the proper connections are in place when Logisim is running, signals with logic level 1 appear in bright green and signals with logic level 0 are shown in dark green.

The circuit's four output bits should be used to control a hexadecimal display to show values 0 through F, inclusive. Use the Hex Digit Display device in Logisim's Input/Output library. It accepts a 4-bit binary encoded value as input and displays the hexadecimal digit corresponding to the binary-encoded input. Use the Splitter device in Logisim's Wiring library to interface the four individual single bits produced by the combinational circuit (Y3 Y2 Y1 Y0) to the four-bit wide input to the Hex Digit Display. The Hex Digit Display device has a second input to control the decimal (hexadecimal) point. The decimal point input can be left unconnected.

Figure 2 (attached) shows a possible layout for the design. The associated Logisim circuit file is provided with this assignment.

The design in Figure 2 includes the combinational logic to produce output Y0. By observation, we see that output Y0 is true if and only if there are an odd number of logic 1 inputs. Thus, Y0 is implemented by the exclusive-or (XOR) function, i.e., Y0 = X3 ⊕ X2 ⊕ X1 ⊕ X0. For the Logisim XOR Gate, the Multiple-Input Behavior attribute needs to be set to "When an odd number are on."

5. Simulation

After you create your design, use Logisim to simulate the code conversion circuit. You should test all 16 possible input combinations and verify that the correct values of Y3, Y2, Y1, and Y0 are produced and that the correct hexadecimal value is displayed.

6. Report

You must document the design, simulation, and outcomes in a brief written report. report should contain the following items.

Your report should contain the following items.

The body of the report must contain the following sections. Use section numbers and headings to organize your report.

Section 1 - Objectives: Provide a brief summary of the design objectives and general approach to the design.

Section 2 - Truth Table: Provide a truth table with inputs X3, X2, X1, and X0 and outputs Y3, Y2, Y1, and Y0. Each row should also be labeled with the corresponding hexadecimal value. The inputs should be in standard truth table order, from "0000" down to "1111." Thus, the truth table will look similar to Table I above, but will be reordered.

Section 3 - Logic Expressions: Specify the Boolean logic expressions for Y3, Y2, Y1, and Y0. Show any work that led to the expressions. (You can just state the expression for Y0 given above, assuming you implement Y0 as shown in Figure 2.) The Boolean expressions shown in this section for the report should correspond exactly to what is shown in the circuit diagram of the next section.

Section 4 - Circuit Design: Include a schematic diagram of the logic circuit that you created using Logisim. Within Logisim, you can select Export Image from the File menu to produce an image file that can then be incorporated into your report. Uncheck the "Printer View" box when exporting the image from Logisim. Show the circuit with input X3X2X1X0 = 0100 (hexadecimal value 9) applied. For full credit, the Logisim schematic must be neat and easy to read. The four input pins and the four output signals should be labeled, as shown in Figure 2. The diagram should also be labeled with a title, your name, and the date.

Section 5 - Conclusions: Briefly discuss the outcome of your design and any problems or aspects that do not work properly; what you learned by doing this project; and any experiences that were particularly good or bad. Also, specify the approximate number of hours that you devoted to the project. (The number of hours is just for the instructor to assess the suitability of this project assignment.)

Attachment:- Assignment Files.rar

Request for Solution File

Ask an Expert for Answer!!
Basic Computer Science: You must i design a combinational logic circuit that
Reference No:- TGS02674207

Expected delivery within 24 Hours