Fall Hours • COVID-19 Update

The Silicon Valley Campus is open 4–9:30 p.m. on Monday–Friday and 8 a.m.–5 p.m. on Saturday.

All campus visitors must be vaccinated, wear a mask, & submit a COVID symptom check. Visit our COVID page for updates.


Digital Design with FPGA | EMBD.X401

Field-programmable gate array (FPGA) offers quick-turn, re-configurability, high density, high performance and low non-recurring engineering costs. To meet design requirements, designers must understand the FPGA fabric and how they affect the actual design of the logic functions. This course provides the knowledge and hands-on experience in designing digital logic blocks in FPGA.

The course covers the major FPGA architectures from Xilinx, introduces how to build designs in FPGA and presents specific designs of various digital blocks. Starting from combinational logic, look-up tables, carry chains, and multiplexers, students will learn to design arithmetic and comparator functions using FPGA and test them in action. The instructor then explains sequential flops, fast counters and shift register look-up. The course also explores the various embedded RAM, ROM and finite state machine designs using Xilinx architecture.

The course builds on the knowledge of digital Verilog designs and emphasizes the interaction of FPGA fabric on design without elaborating on FPGA applications. Students gain insight and experience with FPGA design. The course uses Xilinx parts as examples; topics covered are applicable to all major FPGA architectures.

Learning Outcomes:
At the conclusion of the course, you should be able to:

  • Describe a solution to complex logic design problems and implement on a FPGA
  • Discuss how to exploit FPGA architecture for a specific design problem
  • Explain how to implement and test complex combinational logic, sequential logic, arithmetic circuit, memory, DSP and finite state machine exploiting a specific FPGA architecture
  • Identify a poor performance design and improve its performance by exploiting the architecture of a particular FPGA

Note(s): This course requires the purchase of a development board ($150, not included in the course fee) and uses the vendor development kit to implement logic functions. Detailed board information will be provided at the first class meeting.

Skills Needed: Students must have Verilog coding experience to carry out design assignments. FPGA experience is not required.

Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860
  • Save your seat and help us confirm course scheduling. Enroll at least seven days before your course starts.
  • ACCESSING CANVAS—Learn more about accessing your course on Canvas in our FAQ section.
This course is related to the following programs:


Sections Open for Enrollment:

Open Sections and Schedule
Start / End Date Units Cost Instructor
01-10-2022 to 03-28-2022 3.0 $980

Jagadeesh Vasudevamurthy



Date: Start Time: End Time: Meeting Type: Location:
Mon, 01-10-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 01-24-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 01-31-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 02-07-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 02-14-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 02-28-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 03-07-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 03-14-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 03-21-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE
Mon, 03-28-2022 6:00 p.m. 9:00 p.m. Live-Online REMOTE