Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

In this assignment you will translate a system description into a FSM state diagram and then transform it into a FSM controller circuit in Logisim

In this assignment you will translate a system description into a FSM state diagram and then transform it into a FSM controller circuit in Logisim by utilizing a truth table and Boolean equations. It is heavily recommended to watch the supplemental video before you attempt this assignment. The video shows step-by-step how this process works using a complex exam ple. Watching and understanding this video, will help you greatly with this assignment. System Description & State Diagram First task: Transform the following system description into a FSM state diagram (you can use lucidchart.com to create this diagram or any other tool; hand drawn diagrams will not be accepted). Make sure you are using the correct notation for the state diagram. Use the given labels for everything, dont pick your own labels. Everything is defined and you dont have to choose your own labels at any point during this assignment. Use minterms for every transition event in the state diagram (each event must be a specific configuration of all inputs) to avoid incomplete and non-exclusive transitions. If the state does not change for certain events, make sure to model this behavior with an appropriate transition. The system represents an elevator in a company building. There are four levels, which are accessible through the elevator: First floor, second floor, third floor and an employee basement. Customers and employees will control the elevator with two buttons: Up and Down. The basement is only accessible by employees who know a specific button combination. If this specific button combination is pressed, the elevator will go from any level directly to the basement level. Below is the detailed system description, which will be used to create the state diagram of this system. The system has four states, which represent the current level of the elevator (in order from highest level to lowest level): Third Floor, Second Floor, First Floor, Employee Basement The system has two 1-bit inputs: Up (label: Up), Down (label: Dn) The system has one 2-bit output: Level (label: L or L1 and L0 for each individual bit, where index 1 indicates the MSB and index 0 the LSB) If the Up button is pressed, the elevator goes to the level above. If the elevator is already at the highest level, pressing the Up button will have no effect and will stay at that level. If the Down button is pressed, the elevator goes to the level below. If the elevator is at the first level, pressing the Down button will have no effect and will stay at that level. It will not go to the basement level. The basement button combination for the employees is the following: Pressing both buttons, Up and Down, at the same time. This is the only input that will cause the elevator to move from any other level directly to the employee basement level. If the elevator is already in the basement, this combination will have no effect and will stay at that level. While the elevator is in the basement level, pressing Down will not have an effect and will stay at that level. Pressing Up will move the elevator to the first floor. If no button is pressed, the elevator will do nothing and stay in the current level. The 2-bit output L will indicate the level with a binary number as follows: first floor (00), second floor (01) and third floor (10). The basement will have a special value and will output (11). The developer of this elevator - unfortunately - chose an encoding of the states that is different from the system output L: The third floor is encoded with 00, second floor with 01, first floor with 10 and employee basement with 11. Important: In this system, the state encoding is not equal to the systems output. Make sure to consider this for the next steps below. Converting to Circuit Do the following tasks after you transformed the previous system description into a state diagram: 1. Create the truth table to describe the complete behavior of the state diagram (all possible input combinations for all existing states must be covered). Use the given labels. Order multi-bit inputs/outputs from MSB to LSB as columns. Indicate which are inputs and which are outputs. Do not simplify the truth table with dont care-symbols. For the current state use label c (add index if multi-bit: c0 for LSB, c1, etc.) and for the next state use label n (add index if multi-bit: n0 for LSB, n1, etc.).2. Derive the Boolean equations from the truth table for all outputs (next state and system output). Use the same labels as in the truth table. Dont simplify the Boolean equations. 3. Create a working FSM controller circuit in Logisim. You can use the built-in register component of Logisim for your state register. Either rename "main" or create a new subcircuit called "Grommet" for this circuit. Notes: Make sure to test it properly and thoroughly to confirm it is working as described in the System Description above. Remember to enable the clock (Simulate, Ticks Enabled) and slow down the clock so you can clearly see and check the state changes of the FSM. Rec ommended: 0.5 or 1Hz. Alternatively, you can also manually toggle the clock. To generate the system output you can apply one of two possible solutions: Create a combinational circuit based on the derived Boolean equations for the system outputs, or use a multiplexer to map the current state to the correct system output.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Introduction To Data Mining

Authors: Pang Ning Tan, Michael Steinbach, Vipin Kumar

1st Edition

321321367, 978-0321321367

More Books

Students also viewed these Databases questions

Question

3. Would you say that effective teamwork saved their lives?

Answered: 1 week ago