Notes:
- Key point: we want to design this function with technology-independent HDL. NO architecture-specific coding in the Verilog.
- We will see how this was done for USB and also, in this section, describe some of the general principles of designing at a higher level.