Difference between revisions of "CSC270 Lab 5 2016"
(Created page with "--~~~~ ---- <br /> <bluebox> This lab presents Finite State Machines (FSM) and will you have explore a couple Moore machines. </bluebox> <br /> =Controllable Moore FSM= <br />...") |
(→Minimal and Controllable Moore FSM) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
</bluebox> | </bluebox> | ||
<br /> | <br /> | ||
− | + | __TOC__ | |
<br /> | <br /> | ||
− | |||
<br /> | <br /> | ||
− | + | =Finite State Machine= | |
+ | <br /> | ||
+ | ;Word problem: | ||
+ | :Implement a sequencer (FSM) which controls 3 lights: a green light, a yellow light, and a red light. The lights operate in a cycle, as follows: | ||
+ | # Green is ON for 1 second, and turns OFF. Then | ||
+ | # Yellow is ON for 1 second, then turns OFF. Then | ||
+ | # Red is ON for 2 seconds, and stays ON. Then | ||
+ | # Yellow turns ON for 1 second, and after that both Red and Yellow turn OFF. | ||
+ | <br /> | ||
+ | ==Part 1== | ||
+ | <br /> | ||
+ | * Generate the timing diagram, and the state diagram. | ||
+ | * Find the number of flip-flops required to implement the FSM. | ||
+ | * Find the boolean functions that will generate the D inputs to the flip-flops, and the R, G, and Y outputs. | ||
+ | <br /> | ||
+ | ==Part 2== | ||
+ | <br /> | ||
+ | * Verify that your design is correct by coding your equations in a Python simulator. | ||
<br /> | <br /> | ||
+ | ==Part 3== | ||
<br /> | <br /> | ||
+ | * Wire up a circuit that implements this FSM. Demonstrate its correct behavior to your instructor. | ||
<br /> | <br /> | ||
<br /> | <br /> | ||
+ | <!-- | ||
+ | =Minimal and Controllable Moore FSM = | ||
<br /> | <br /> | ||
+ | * This part is '''optional''', and has to be done only if you have time. | ||
+ | * Implement this FMS shown below and observe its behavior. The Cmd signal should be connected to a switch. The Q output should be connected to an LED. The flip-flop shown is half of a 74LS74 integrated circuit. | ||
+ | * Generate the sequencer's timing diagram from your observation of its behavior. | ||
+ | * Generate the state diagram of the sequencer. | ||
<br /> | <br /> | ||
+ | [[Image:SimpleFSM.png|400px|center]] | ||
<br /> | <br /> | ||
+ | --> | ||
<br /> | <br /> | ||
<br /> | <br /> | ||
Line 23: | Line 49: | ||
<br /> | <br /> | ||
<br /> | <br /> | ||
− | [[Category:CSC270]][[Category: | + | [[Category:CSC270]][[Category:Labs]] |
Latest revision as of 14:13, 25 February 2016
--D. Thiebaut (talk) 18:12, 24 February 2016 (EST)
This lab presents Finite State Machines (FSM) and will you have explore a couple Moore machines.
Finite State Machine
- Word problem
- Implement a sequencer (FSM) which controls 3 lights: a green light, a yellow light, and a red light. The lights operate in a cycle, as follows:
- Green is ON for 1 second, and turns OFF. Then
- Yellow is ON for 1 second, then turns OFF. Then
- Red is ON for 2 seconds, and stays ON. Then
- Yellow turns ON for 1 second, and after that both Red and Yellow turn OFF.
Part 1
- Generate the timing diagram, and the state diagram.
- Find the number of flip-flops required to implement the FSM.
- Find the boolean functions that will generate the D inputs to the flip-flops, and the R, G, and Y outputs.
Part 2
- Verify that your design is correct by coding your equations in a Python simulator.
Part 3
- Wire up a circuit that implements this FSM. Demonstrate its correct behavior to your instructor.