CSC270 Lab 5 2016

From dftwiki3
Revision as of 18:35, 24 February 2016 by Thiebaut (talk | contribs) (Minimal and Controllable Moore FSM (Optional))
Jump to: navigation, search

--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:
  1. Green is ON for 1 second, and turns OFF. Then
  2. Yellow is ON for 1 second, then turns OFF. Then
  3. Red is ON for 2 seconds, and stays ON. Then
  4. 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.



Minimal and Controllable Moore FSM (Optional)


  • 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.


SimpleFSM.png