Question: Your task is to create a circuit for a digit recognizer in Cirsim. For this assignment, your hexadecimal value is: A 9 4 3 5
Your task is to create a circuit for a digit recognizer in Cirsim. For this assignment, your hexadecimal value is:
AB
You will design combinational circuits which recognize these digits and map them to the appropriate segments in a sevensegment display. A sevensegment display uses seven LEDs to represent hexadecimal digits. Here's the Cirsim sevensegment display:
The buttons will do nothing until you enable the display. That is what the en input does. Click on the input E to enable it Then press buttons to see what the different inputs do
As an example of how this can be used, the hexadecimal digit can be displayed by lighting all of the segments except segment e Similarly, the hexadecimal digit A can be displayed by lighting all of the segments except segment d
Your circuits will accept four inputs A B C D that represent the four bits in a hexadecimal digit, where A is the most significant bit. For each of the digits in AB the hexadecimal code should light the display to make the particular character and the en input should be set true. For digits that are NOT in AB the en input should be set false. The en input enables the display. The display is enabled ONLY for digits in AB For example, suppose your value was AF Your code should display the hexadecimal digits F A and If the digits or BE are input, the display should be disabled en set false Note that the order of the digits does not matter.
I have arranged that everyone has an A in their hexadecimal value.
This is a very simple idea. Suppose there is an A in your hexadecimal value. An A in hex is in binary. That would be A and C true and B and D false. Looking at the table below, we see that an A should light segments a b c e f and g of the display. You will have eight circuits. Each circuit will have four inputs AD and one output. When the input is the output of circuits a b c e f and g will be a one. The output of circuit d will be a zero, since for an A that segment is not displayed. The en circuit output will be a one, since A is part of AB
There are two ways to solve this problem: a using don't cares or b not using don't cares. One of these options will require massively less work! Choose wisely.
This is a circuit that will display the digits in AB and only those digits. Note that for digits that are not accepted, the display inputs ag are ignored. That should tell you something about your design.
This table shows the segments to enable for each hexadecimal digit:
Digit Segments
abcdef
bc
a b d e g
a b c d g
b c f g
a c d f g
a c d e f g
a b c
a b c d e f g
a b c d f g
A a b c e f g
B c d e f g
C a d e f
D b c d e g
E a d e f g
F a e f g
Tests
So you can know that your circuit is working, there are three provided tests: TestAll, Testa and Testen TestAll tests all segments and en If you pass that test your circuit is completely working. Testa tests only the a segment and Testen tests only the en inputs. They are provided so you can get part of your circuit working first.
Notice: Testa does NOT test the circuit in the a tab. It tests the circuit in main, providing inputs to that circuit and testing the a input on the sevensegment display. If you do not have the display hooked up the test will fail! The same applies for Testen This is the minimum circuit in main that will pass that test:
Miniumum circuit in tab main
Tabs
This circuit will rapidly get too large to fix on a single Cirsim screen I know, I tried So you will be using a Cirsim feature called Modules. I have included a page with details on how to use the modules feature in this assignment
Additional Requirement
You are required to complete Karnaugh Maps for the eight different outputs your circuit will send to the display. You are required to complete those on paper. When you turn them in include your expression under the map on the page.
Note that you must hand in these two things:
Karnaugh maps for the display inputs
Expressions derived from the Karnaugh maps
Hints and Suggestions
Try to stay neat. Avoid a lot of lines over components or diagonal lines.
The green bar at the bottom of the Cirsim window can be grabbed and dragged to increase the window size. This is useful for the larger main drawing.
Do one segment at a time and get it working. Don't try to create this whole thing and get it all working to the test.
If you are good at using your Karnaugh maps, you can make the circuit smaller. When I was doing maps for this assignment, I found the fourcorner cover to be exceedingly popular for some reason.
No there is not a fiveinput OR gate. But, you don't need it anyway.
Don't cares are a wonderful thing. If you use them effectively, your design will be smaller and easier to implement!
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
