EE260 Lab 7
Professor's Scrolling Door Sign
The purpose of this laboratory is to give you a little more practice with
the FSM design techniques you have learned so far. You will design a scrolling
door sign for the EE 260 professor, simulate it in LogicWorks and implement
it in TTL.
You will work on this experiment for two weeks in the lab.
2. Materials that you need
For this experiment you will need the following equipment:
- one 7-segment display
- one 2716 EPROM
- one 74'175 (Quad D-FF)
- one 74'00 (Quad 2-input NANDs),
- one or more resistors.
You will only be allowed to use these parts in your implementation.
(See the data sheets in the lab for descriptions of the circuits.)
- Read over the sections of this experiment. Be sure you understand
what is to be done.
- Complete the ASM chart for the state machine.
- Complete as much of the design, at least up to the state table, before
the lab.
It is important to start early on this lab so you have time to ask questions.
The sign has a single 7-segment display for output and a single switch
for input. A 7-segment display is something most of you have seen in calculator
displays:
The display is made up of 7 LEDs,
each controlled by distinct inputs labeled a, b, c, d, e, f, and g. If a
pin is asserted then the LED will light up. By asserting the right combination
of pins, the display can show characters. For example, here is a list of
characters (including the space character ' ') and their corresponding combination
of inputs:
Character a b c d e f g
'A' 1 1 1 0 1 1 1
'L' 0 0 0 1 1 1 0
'O' 1 1 1 1 1 1 0
'H' 0 1 1 0 1 1 1
'P' 1 1 0 0 1 1 1
'U' 0 1 1 1 1 1 0
' ' 0 0 0 0 0 0 0
The inputs to the 7-segment display have the negative logic convention.
The scrolling door sign should work as follows. If the switch is turned
on then the display should scroll through
'A', 'L', 'O', 'H', 'A', ' ', ' ', 'A', 'L', 'O', 'H', 'A', ' ', ' ', .....
which indicates that the professor is in. Note that there are exactly
two spaces between ALOHAs.
On the other hand, if the switch is turned off then the display should
scroll through
'P', 'A', 'U', ' ', ' ', 'P', 'A', 'U', ' ', ' ',.....
which indicates that the professor has gone home. Note that there are exactly
two spaces between PAUs.
Your circuit will have
- A clock input. This will be connected to a clock generator, and you
may adjust the clock period so that the scrolling goes at a proper rate (say
a clock period of around half a second).
- An input DI. This is connected to the switch. So if DI
= 1 then the Doctor is In and the ALOHAs should scroll on the
sign. On the other hand, if DI = 0 then the doctor is out, and the
PAUs should scroll. DI will have the positive logic convention.
- Outputs that go to the 7-segment display.
- Task 1.
- Complete a neatly drawn ASM chart for the circuit. Note that your
output boxes may have a large list of outputs for the 7-segment display,
making it difficult to draw. You may use the following informal shorthand
notation:
- Task 2.
- Convert the ASM chart into an encoded state table. You will note you
will need at least 7 states in your FSM, thus requiring 3 state bits to encode
the state. With 3 bits of Next State values, and 7 outputs for the 7-segment
display, this is 10 outputs from the combinational logic. However, you are
limited to a single 2716 chip, which only has 8 outputs. You will need to
look at your design and find a way to eliminate outputs, or implement some
outputs in external logic. But, remember, you are also limited to a single
74'00 chip (4 gates) to implement this logic.
- Task 3.
- Complete a working circuit in LogicWorks, and turn it in to the TA
on disk with your group members' names. Be sure to label your circuit "ALOHA-PAU"
and put it in a folder labeled "LAB7."
- Task 4.
- Build a working circuit on the protoboard. First, decide among your
team members which circuit to build (choose one that works). Make a hard
copy of the circuit. Convert the circuit diagram into a "schematic diagram"
by writing in the pin numbers. Build the circuit. Once you have the circuit
working, demonstrate it to the TA. The TA should sign the schematic diagram
to be included in the lab report.
You will have two weeks to work on this lab experiment, however, you should
budget your time and set goals to be able to complete the lab by the end
of the second week. ALLOW TIME FOR REDESIGN AND DEBUGGING.
Your lab report should include:
- Your ASM chart for the state machine (this should be done in the Prelab
before the first week lab period).
- Your derivation of the state table and equations (can also be done
in the prelab, and revised as needed). Turn in only the derivation of the
design you implemented.
- You LogicWorks circuit on disk. (VERY VERY IMPORTANT: You should
have this working by the end of the first lab period. Get started on
your design as early as possible since you can do it outside of the lab period.
You should have some design before the first lab period and then perhaps
get some help from the TA if you have questions)
- The schematic diagram for the final circuit, signed by the TA indicating
your circuit was successfully demonstrated.
Note: It is encouraged that you and your team members work together
on the design. The project may be a bit small to split up into parts, but
you may freely discuss how to do the design. Try to get everyone involved,
and have all understand the working circuit. However, at the end of the
lab period, each lab team should turn in their own working LogicWorks circuit
(on disk), and their own lab report.
- Hint 1:
- Your circuit should look something like this (although perhaps not
exactly):
Note that six outputs of the
2716 in the above diagram have bubbles.
- Hint 2:
- Note that there are SIX outputs of the 2716 going to the SEVEN-segment
display. It looks like you have one less output than you need, but in fact
it's all you need.
- Hint 3:
- Your ASM chart should have lots of output boxes (the oval ones). In
fact, for each state, there may be two possible 7-segment displays depending
on the value of DI.
- Hint 4:
- Once you've decided on an ASM chart, you may find out that you do
not have enough NANDs for the resulting circuit. Then look for ways to put
don't cares into your state transition table to realize a circuit using
at most 4 NANDs. Convert these don't cares into the appropriate 1s and
0s, and then modify your ASM chart.
- Hint 5:
- Be neat and be careful. Miscopying literals in your equations or
bits in your tables often leads to hours of debugging frustration.
That's all the hints for now.