Pong P. Chu
A practical introduction to FPGA prototyping and SoC design
This is the successor edition of the popular FPGA Prototyping by Verilog Examples textbook. It trails the same “learning-by-doing” approach to teach the basics and practices of HDL synthesis and FPGA prototyping. The new 2nd edition uses a rational series of examples to show the process to develop refined digital circuits and IP (intellectual property) cores; incorporate them into an SoC (system on a chip) framework; realize the system on an FPGA prototyping board; and verify the software and hardware operation. The examples begin with simple gate-level circuits; progress gradually through the RT (register transfer) level modules; and lead to a functional implanted system with custom I/O peripherals and hardware accelerators. Though it is an introductory text; the examples are developed in a rigorous manner; and the derivations follow the firm design guidelines and coding practices used for complex; large digital systems.
The ebook is completely updated and uses the SystemVerilog language; which “absorbs” the Verilog language. It provides the hardware design in the SoC context and introduces the hardware-software co-design concept. Rather than treating examples as isolated entities; the ebook integrates them into a single coherent SoC platform that lets readers explore both hardware and software “programmability” and develop interesting and complex embedded system projects. The new edition:
- Provides basic embedded system software development.
- Presents an overview of bus interconnect and interface circuit.
- Suggests additional modules and peripherals for challenging and interesting projects.
- Provides a thorough discussion on blocking and nonblocking statements and coding styles.
- Defines basic concepts of software-hardware co-design with Xilinx MicroBlaze MCS soft-core processor.
- Presents a music synthesizer constructed with a DDFS (direct digital frequency synthesis) module and an ADSR (attack-decay-sustain-release) envelope generator.
- Adds four general-purpose IP cores; which are multi-channel PWM (pulse width modulation) controller; SPI controller; I2C controller; and XADC (Xilinx analog-to-digital converter) controller.
- Expands the original video controller into a complete stream-based video subsystem that integrates a video synchronization circuit; a test-pattern generator; a sprite generator; an OSD (on-screen display) controller; and a frame buffer.
FPGA Prototyping by SystemVerilog Examples; (PDF) makes a natural companion text for introductory and advanced digital design courses and embedded system courses. It also functions as an ideal self-teaching guide for practicing engineers who wish to learn more about this developing area of interest.
NOTE: The product only includes the ebook; FPGA Prototyping by SystemVerilog Examples in PDF. No access codes are included.