Search this site

Lecture Notes or Lecture Slides on "Advanced Digital System Design with FPGAs"

Advanced Digital System Design with FPGAs

Dr. R. James Duckworth, AK301, Tel: (508) 831-5204, email:
Office hours: MTRF 10 to 11am (send email for other times)

Course Description
This course covers the systematic design of advanced digital systems using FPGAs. The emphasis is on top-down design starting with high level models using a hardware description language (such as VHDL or Verilog) as a tool for the design, synthesis, modeling, test bench development, and testing and verification of complete digital systems. These types of systems include the use of embedded soft core processors as well as lower level modules created from custom logic or imported IP blocks. Interfaces will be developed to access devices external to the FPGA such as memory or peripheral communication devices. The integration of tools and design methodologies will be addressed through a discussion of system on a chip (SOC) integration, methodologies, design for performance, and design for test. 

1. hardware description languages, system modeling, synthesis, simulation and testing of digital circuits; 
2. design integration to achieve specific system design goals including architecture, planning and integration, and testing; 
3 use of soft core and IP modules to meet specific architecture and design goals. 


1.  FPGA Prototyping using Verilog Examples – Xilinx Spartan-3 Version, by Pong P. Chu, Wiley

2. A good book focusing on VHDL is RTL Hardware Design using VHDL – Coding for Efficiency, Portability, and Scalability” by Pong P. Chu, Wiley.

3. A book focusing on embedded systems is Embedded Systems Design with Platform FPGAs: Principles and Practices by Sass and Schmidt, Morgan Kaufman


Lecture Notes

·        Module 1 Introduction

·        Module 3 Sequential Logic

·        Module 4 Sequential Logic II

·        Module 5 Misc

·        Module 6 Test Benches

·        Module 7 Memory Interface

·        Module 8 Advanced testing

·        Module 9 Modeling

·        Module 10 Clock Domains
            ·        Module 12 Embedded Micros