Clark School Home UMD

ENEE359F: Advanced FPGA-based System Design Using Verilog

Course Description: This is a project-oriented course. Based on the knowledge and training gained in ENEE245,students will further develop their skills by working on more challenging digital system design using Verilog hardware description language (HDL) in an industry-standard design environment. Students will implement real-world designs in field programmable gate arrays (FPGAs) as well as test and optimize the FPGA-implemented systems. Students will also work in teams on multiple, medium-scale digital system design projects and make oral presentations and written reports.

Prerequisite(s): ENEE245

Corequisite(s): None

Course Objectives:

  • Experience with advanced digital system design
  • Advanced HDL-based design
  • Use of associated CAD tools
  • FPGA implementation and testing
  • Project work and experimentation
  • Design, implementation, and debugging
  • Synthesis
  • Experiment design
  • Project report
  • Teamwork experience
  • Communication skill development
  • Oral presentations
  • Written reports

Topics Covered:

  • Digital design flow with FPGAs
  • Versatility and applications of FPGAs
  • High-level Verilog coding
  • Advanced digital system design
  • Fast computer arithmetic processing
  • Pipelining
  • Floating-point processing
  • First-In First-Out (FIFO) buffer design
  • Error detection and correction codes
  • Serial and parallel data transfer
  • Host computer-to-FPGA and FPGA-to-FPGA communication
  • Design verification and debugging
  • Timing/area/power analysis and optimization