Question

A surgeon activates the laser by pressing the button b. The laser should stay ON for 20 ns. A clock with time period of 5 ns is to be used for the design. Button b and clock is synchronized. Design a FSM for the controller that turns on the laser for exactly 20 ns once b-1 is detected. 10

0 0
Add a comment Improve this question Transcribed image text
Answer #1

We propose to design FSM controller as Mealy type.

State diagram is shown below.

State Equations are derived from state table.

State

PRESENT STATE

INPUT

NEXT STATE

D FLIP FLOP INPUT

OUTPUT

Q1

Q0

b

Q1+

Q0+

D1

D0

LASER

S0

0

0

0

0

0

0

0

0

0

0

1

0

1

0

1

1

S1

0

1

X

1

0

1

0

1

0

1

1

0

1

0

1

S2

1

0

X

1

1

1

1

1

1

0

1

1

1

1

1

S3

1

1

X

0

0

0

0

1

1

1

0

0

0

0

1

Design is verified using VHDL Modelling

library ieee;

use ieee.std_logic_1164.all;

entity controller is

port ( clk, b : in std_logic;

laser : out std_logic

);

end controller;

architecture arch of controller is

type state is (S0, S1, S2, S3);

signal present_state, next_state : state;

begin

process (clk)

begin

if rising_edge (clk) then

present_state <= next_state;

end if;

end process;

process (present_state, b)

begin

case (present_state) is

when S0 => if (b = '1') then

next_state <= S1;

laser <= '1';

else

next_state <= S0;

laser <= '0';

end if;

when S1 => next_state <= S2; laser <= '1';

when S2 => next_state <= S3; laser <= '1';

when S3 => next_state <= S0; laser <= '1';

when others => next_state <= S0;

end case;

end process;

end arch;

--Simulation

Add a comment
Know the answer?
Add Answer to:
A surgeon activates the laser by pressing the button b. The laser should stay ON for...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Write the following program to be executed on the FPGA board. 1. Write a VHDL model...

    Write the following program to be executed on the FPGA board. 1. Write a VHDL model for a code detector as shown in the Figure. The keypad is used to unlock a door. Pressing the start button followed by the sequence red-green-red-blue unlocks the door, no other sequence can open the door. Assume the clock is slowed down and each pressing of a button is detected once. For example when red is pressed it is only detected as pressed for...

  • Name: (4) (10 pts) Design a Moore FSM that has one input A and one output Y, and the output Y should be 1 if A has...

    Name: (4) (10 pts) Design a Moore FSM that has one input A and one output Y, and the output Y should be 1 if A has been 101 during the most recent three consecutive clock cycles or A has been 1 during the two most recent consecutive clock cycles. You only need to write down your state transition diagram. (5) (6 pts) Consider the following sequential circuit. Each two-input OR gate has a propagation delay of 130ps and a...

  • In this lab, you will design a finite state machine to control the tail lights of...

    In this lab, you will design a finite state machine to control the tail lights of an unsual car. There are three lights on each side that operate in sequence to indicate thedirection of a turn. Figure ! shows the tail lights and Figure 2 shows the flashing sequence for (a) left turns and (b) right rums. ZOTTAS Figure 28:8: BCECECece BCECECECes BCECECECB BCECECBCB 8888 Figure 2 Part 1 - FSM Design Start with designing the state transition diagram for...

  • Design an electronic lock system. This system has 2 inputs: A and B. This system will...

    Design an electronic lock system. This system has 2 inputs: A and B. This system will be unlocked when the sequence BBA is pressed. State diagram of this electronic lock system is shown below. - Draw a circuit diagram and find the maximum clock frequency of your circuit. Check if this circuit violates any hold time violation Note: 1) This circuit is a Moore machine 2) Please assign each state as follows, XO = 00, x1 = 01, X2 =...

  • please help me with the project it's an embedded system project and i need a help...

    please help me with the project it's an embedded system project and i need a help with the code (for setting part especially) the code should be in C language not C++ and the mbed application board will be used. thanks in advance :) Note: mbed development board are used here with the mbed application board Design and implement an Air Conditioner Controller System to control automatically an air conditioner based on the ambient tempreture and surrounding light (Daytime/Nighttime). The...

  • i know this solution, but can you please explain why and when to use the Tphl...

    i know this solution, but can you please explain why and when to use the Tphl and when to use the Tplh for the inverter and Xor gate? LAMDL 10 Quiz 1 3) for the circuit and specifications shown. Find the parameters a), b) Use the specs below for the XOR gate, inver CSE and Tip-flop Vc3.3V Vo: 36 ) La Cik — >> write the equations first, then fill in the numbers. a) What is the minimum clock period...

  • Please find What is NDsolve in Mathematica program. Thanks. Vdd 5V Vin キCL We want to find the output waveform of an...

    Please find What is NDsolve in Mathematica program. Thanks. Vdd 5V Vin キCL We want to find the output waveform of an inverter by solving the differential equation numerically using NDSolve for two different Vin(t) clock waveforms. Once the vo(t) waveform is obtained, we want to calculate τpLH and tpHL numerically from the vo t waveform using FindRoot The device/circuit parameters are: kn -1mA/V, vtn vtpl-1V, and CL- 1pF. (1) 10 pts Consider one cycle of an ideal clock with...

  • Please find What is NDsolve in Mathematica program. Thanks. Vdd 5V Vin キCL We want to find the output waveform of an i...

    Please find What is NDsolve in Mathematica program. Thanks. Vdd 5V Vin キCL We want to find the output waveform of an inverter by solving the differential equation numerically using NDSolve for two different Vin(t) clock waveforms. Once the vo(t) waveform is obtained, we want to calculate τpLH and tpHL numerically from the vo t waveform using FindRoot The device/circuit parameters are: kn -1mA/V, vtn vtpl-1V, and CL- 1pF. (1) 10 pts Consider one cycle of an ideal clock with...

  • QUESTION 1: TURN THIS GNATT CHART INTO AN ACTIVITY TABLE. FOR EXAMPLE THE TABLE SHOULD BE...

    QUESTION 1: TURN THIS GNATT CHART INTO AN ACTIVITY TABLE. FOR EXAMPLE THE TABLE SHOULD BE FORMATED LIKE THIS BUT MATCH THE DATA OF THE GNATT CHART BELOW,   (THIS IS THE EXAMPLE OF A ACTIVITY TABLE FORMAT NOT THE SAME DATA AS THE GNATT CHART) ONCE AGAIN, QUESTION IS TO CONVERT THE DATA IN THE GNATT CHART INTO ITS' ACTIVITY TABLE (ACTIVITY NO., ACTIVITY, TIME (WEEKS), IMMEDIATE PREDECESSORS..) Activity No. Activity Time (weeks) Immediate Predecessors Collect requirements Analyze processes Analyze...

  • It's an Energia sketch using C language. We work with MSP430 Launchpad but you shouldn't need...

    It's an Energia sketch using C language. We work with MSP430 Launchpad but you shouldn't need it to write the code. I'm really stuck :( Problem 2 (50 points) One common method of outputting an "effective" analog signal is to use pulse width modulation or PWM. In this modulation scheme, a high frequency square wave is switched on and off with a duty cycle determined by the desired output intensity, where Duty Cycle = Time spend "on" Total period 50%...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT