Resit notes for Computation II - 5EIB0
ELI5: The best way to start learning Verilog - YouTube
Detailed syntax: Verilog HDL Basics - YouTube
Abstraction levels
Switch (not supported by Vivado synthesizer)
Gate
Data flow
Behavioral

Data types
- Net: wire, tri (three-state logic), supply0, supply1
- Variable: reg, integer, (real, time, realtime - no synthesis)

Blocking vs Nonblocking
Blocking: combinational logic → statements executed sequentially
Nonblocking: sequential logic → statements executed in parallel
Guidelines
- Sequential logic: nonblocking
- Latch: nonblocking
- Combinational: blocking
- Sequential + Combinational (not recommended): nonblocking
- 4 is not recommended
- No assigments to a var in > 1 always block
- Use $strobe for nonblocking
- Don’t use #0 delay assignments
Finite State Machine (resit) - 5EIB0
Motivation
- Prototyping of processors before manufacturing → soft core processor
- Optimize for application driven >< multi purpose like MCU → Application Specific IC (ASIC)
- Can add peripherals
- Open-source → add instructions
Definition
- Blocks of programmable digital logic
Properties
<% tp.file.cursor(3) %>
Related Concepts
<% tp.file.cursor(4) %>