This textbook teaches students techniques for the design of advanced
digital systems using Field Programmable Gate Arrays (FPGAs). The
authors focus on communication between FPGAs and peripheral devices
(such as EEPROM, analog-to-digital converters, sensors,
digital-to-analog converters, displays etc.) and in particular state
machines and timed state machines for the implementation of serial
communication protocols, such as UART, SPI, I²C, and display protocols,
such as VGA, HDMI. VHDL is used as the programming language and all
topics are covered in a structured, step-by-step manner.