Difference between revisions of "CSC270 Exercises on FSM"
(→Exercise #5) |
(→Exercise #5) |
||
Line 75: | Line 75: | ||
− | * Same question, but solve it with Python. | + | * Same question, but solve it with Python. |
+ | * You may find the [[CSC270 Python Operators for Simulation | Python Logic Operators Example Page]] useful for this exercise. | ||
==Exercise #6== | ==Exercise #6== |
Latest revision as of 10:13, 2 March 2012
--D. Thiebaut 15:24, 28 February 2011 (EST)
Exercise #1
- Implement a sequencer (FSM) which activates 3 Lights: a green light, a yellow light, and a red light. The behavior of the FSM is the following:
- the green light stays on for 30 seconds, then
- the yellow light comes on and stays on for 30 seconds, then
- the red light comes on and stays on for 30 seconds, then we repeat the pattern.
- There is only one light on at a given time.
- What is the frequency of your clock signal?
+---------+ +--------
| | |
G -----+ +-------------------+
+---------+
| |
Y ---------------+ +-----------------
+---------+
| |
R -------------------------+ +-------
Exercise #2
- Same as Exercise 1, but this time the behavior is the following
- the green light comes on after the red light and stays on for 30 seconds,
- the yellow light comes on and stays on for the next for 15 seconds,
- the red light comes on after the yellow light for 30 seconds.
- What is the frequency of your clock signal?
Exercise #3
- Create a "true" frequency divider that divides by 4.
Exercise #4
- What is the state diagram of the 3-flip-flop circuit with the following equations:
D0 = Q0' D1 = Q0 XOR Q1 D2 = Q1 XOR Q2
Exercise #5
- Same question, but solve it with Python.
- You may find the Python Logic Operators Example Page useful for this exercise.
Exercise #6
- What is the state diagram of this FSM?
- D1= Q0
- D0 = ( Q0 ^ Q1 )'
- What happens when the flip-flops start in the state where Q0 and Q1 are both 1?