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.