Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Help me out here please! 2. A simple digital lock works as follows. The lock has two positions: locked and unlocked. There are three buttons

Help me out here please!

image text in transcribed

2. A simple digital lock works as follows. The lock has two positions: locked and unlocked. There are three buttons to operate the lock: 0,1, and *. Pressing the sequence 0,1,0 will open the lock, while pressing * at any time will close it. Time is measured in units (clock cycles), and not pressing any button means pressing an imaginary B (blank) button in the given clock cycle. Blanks are added automatically to the input sequence, if necessary i.e., while the operator is thinking). The blank will not destroy any correct prefix that has already been entered. To retry after entering an incorrect code, one need not press the * button first. The appearance of 0,1,0 (with possible blanks interjected) as a suffix in an arbitrary input sequence will open the lock, which will remain open until * is entered. The lock works non-stop, some input (possibly the blank) is being entered in each clock cycle. As a finite automaton (DFA) with output, the lock has four input symbols: 0, 1, *, and B. It has two output symbols reflecting the the position of the lock: 0 for locked and 1 for unlocked. There is an initial state corresponding to the situation when no numbers have yet been entered, and the lock is closed. In each transition step, the output should be the resulting new position of the lock. Figure out how many states are necessary to describe the operation of the lock as a DFA. a) Specify the transition diagram of the finite automaton M above. Is M Mealy or Moore type? b) Design a state machine for M based on the encoding: 01 for 0, 10 for 1, 11 for * and 00 for B. Rely on the one-hot design technique to keep your combinational logic simple. 2. A simple digital lock works as follows. The lock has two positions: locked and unlocked. There are three buttons to operate the lock: 0,1, and *. Pressing the sequence 0,1,0 will open the lock, while pressing * at any time will close it. Time is measured in units (clock cycles), and not pressing any button means pressing an imaginary B (blank) button in the given clock cycle. Blanks are added automatically to the input sequence, if necessary i.e., while the operator is thinking). The blank will not destroy any correct prefix that has already been entered. To retry after entering an incorrect code, one need not press the * button first. The appearance of 0,1,0 (with possible blanks interjected) as a suffix in an arbitrary input sequence will open the lock, which will remain open until * is entered. The lock works non-stop, some input (possibly the blank) is being entered in each clock cycle. As a finite automaton (DFA) with output, the lock has four input symbols: 0, 1, *, and B. It has two output symbols reflecting the the position of the lock: 0 for locked and 1 for unlocked. There is an initial state corresponding to the situation when no numbers have yet been entered, and the lock is closed. In each transition step, the output should be the resulting new position of the lock. Figure out how many states are necessary to describe the operation of the lock as a DFA. a) Specify the transition diagram of the finite automaton M above. Is M Mealy or Moore type? b) Design a state machine for M based on the encoding: 01 for 0, 10 for 1, 11 for * and 00 for B. Rely on the one-hot design technique to keep your combinational logic simple

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

More Books

Students also viewed these Databases questions

Question

differentiate the function ( x + 1 ) / ( x ^ 3 + x - 6 )

Answered: 1 week ago