State Machines - coding in Verilog with testbench and implementation on an FPGA
Вставка
- Опубліковано 5 вер 2024
- Finite state machines are essential tool hardware and software design, but they are actually quite simple to understand. We walk through 1) What is a finite state machine?, what is the difference between a Moore and Mealy state machine? 2) How to design a state machine, 3) How to code a machine in Verilog.
We will be using the example of a simple pair detector, but the principle can be applied for any state machine.
I was really helpful, Even our professor wasn't much perfect, thank you sir and keep doing this kind videos it would be much helpful one again tank you sir 👌👌
13:45 - thats the question i was asking myself for 13 minutes :), so many state machines to consider :)
Very clear and understandable video thanks for informing us about fsm's
I see that in the verilog code above, detect is a flopped version of (state == 2'b11); thus, the signal tap does show that detect is asserted 2 clk cycles after consecutive 0’s or 1’s of inbits.
Strictly speaking it seems like the second and third zeros are also a pair. This is a detects something but you don't know if it is pair or triplet.
Thanks for sharing your useful knowledge!
There is a problem where your state machine doesn’t detect the second pair when there’s 3+ matching sequential inputs.
thank you!
You are the king!
im still confused how youre getting the 1s and 0s and which one they belong to
When I navigate to netlist viewer none of the options are available, what do I do to fix this?
whats the difference between synchronous and asynchronous?
Thank youuuuuuuuuu
ERROR ! great but some typo is there. 4:51 complete verilog for states, in state 1
This was a great video!!
What is inbits that was shown in first program
thank you so muchh!!
Why wouldn’t you zoom in your test bench??
thanks!
good job.
Please Explain the test bench in briefly
Please check out my other channel for longer form/tutorial FPGA content ua-cam.com/channels/8gZeNz015waiQN5_-jvj7g.html