Skip to main content

FPGA Prototyping by Verilog Examples: Xilinx Spartan-3 Version



FPGA Prototyping by Verilog Examples: Xilinx Spartan-3 Version

Pong P. Chu

ISBN: 978-1-118-21061-1 September 2011 518 Pages


FPGA Prototyping Using Verilog Examples will provide you with a hands-on introduction to Verilog synthesis and FPGA programming through a “learn by doing” approach. By following the clear, easy-to-understand templates for code development and the numerous practical examples, you can quickly develop and simulate a sophisticated digital circuit, realize it on a prototyping device, and verify the operation of its physical implementation. This introductory text that will provide you with a solid foundation, instill confidence with rigorous examples for complex systems and prepare you for future development tasks.



1. Gate-level combinational circuit.

2. Overview of FPGA and EDA software.

3. RT-level combinational circuit.

4. Regular Sequential Circuit.

5. FSM.

6. FSMD.

7. Selected Topics of Verilog.


8. UART.

9. PS2 Keyboard.

10. PS2 Mouse.

11. External SRAM.

12. Xilinx Spartan-3 Specific Memory.

13. VGA controller I: graphic.

14. VGA controller II: text.


15. PicoBlaze Overview.

16. PicoBlaze Assembly Code Development.

17. PicoBlaze I/O Interface.

18. PicoBlaze Interrupt Interface.

Appendix A: Sample Verilog templates.


Topic Index.

Chu (Cleveland State University) has written several volumes covering Verilog and VHDL, the two major hardware definition languages used in the design of smaller digital systems. The volume reviewed here is an introduction to Verilog only. The book assumes that the student is already familiar with basic digital circuits. After an introductory section, the remainder of the work consists of worked examples that should be quite easily understood by students. Each chapter ends with suggested exercises that build directly on the examples from that chapter. There are sections that are specific to Xilinx Spartan FPGAs and in some cases, specific to the Digilent S3 prototyping board. A course that uses different hardware would need to provide supplementary material before using this book as a resource. Chu writes in a pedagogically sound manner and includes good coverage of the Verilog language, with nice attention to the differences between the 1995 and 2001 versions of the language. The volume suffers from some sloppy editing (e.g., a reference to VHDL instead of Verilog in one place, an incorrect timing parameter value in the appendix, miscellaneous typos) and a very skimpy index. Summing Up: Recommended. Upper-division undergraduate through professional collections. -- C. Vickery, Queens College of CUNY (Choice, February 2009)
This book is different from existing digital design or HDL books. It is unique in several respects:
  • It uses a learning-by-doing approach to introduce the concepts and techniques for HDL, synthesis, and FPGA
  • It provides a collection of clelar, easy-to-folloow templates for quick code development
  • It contains a large number of practical examples to illustrate and reinforce the design concepts and techniques. All examples can be implemented and tested on a prototyping board.
  • The codes provided follow strict design guidelines and prepare the reader for developing large, complex systems in the future.
  • Most codes were written in a device-independent and software-neutral fashion and are not tied to a particular device or synthesis software package
  • The book contains four chapters for the Xilinx PicoBlaze soft-core microcontroller
  • The book covers the design of all I/O modules of the Digilent Basys prototyping board and has prepared constraint files, project files, and configuration files. When used with this board, the book and board combo becomes a self-contained "turn-key" solution for introductory and advanced digital design experiments and projects.