Course

Embedded Design with Xilinx FPGAs | EMBD.X402


This hands-on course will introduce you to the world of embedded microprocessor design using field programmable gate arrays (FPGAs). Combining the FPGA fabric with the popular ARM 9 processor cores, it opens up many possible applications with integrated custom peripherals and significant cost/time advantages in design. The course uses the Xilinx Zynq product family including two soft core processors, Picoblaze 6 and Microblaze MCS, and Virtex 7 fabric.

The course begins with an architectural overview of the FPGA family and follows with an in-depth look at the ARM 9 cores. Along the way, you will use the Vivado Design Suite and software development kit (SDK) to develop your code, as well as the cross assembler. The SDK supports both C and C++ compilers with debug facilities. We will use real-world design examples, as well as former students’ projects, to share the creative ideas that this design framework can offer. You will also learn practical approaches to debugging and simply 'bringing the system up'. A project report is required at the end of the course, with an optional student presentation during the final class for extra credit.

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

  • Describe the Vivado/Xilinx SDK design/programming environments
  • Discuss capabilities and limits of FPGA SoC embedded designs
  • Explain the detailed steps to creating and building a successful embedded SoC system
  • Identify FPGA speed limits and embedded processor performance limits

Notes: Students are required to purchase a Zynq-based board for their project (approximately $100, not included in the tuition). Detailed board information and instruction will be provided on the first night of class.

Skills needed: Understanding and experience with basic FPGA design. C or C++ programming experience is required.

Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860
This course is related to the following programs:

Prerequisite(s):

Course Availability Notification

Please use this form to be notified when this course is open for enrollment.

Contact Us
Speak to a student services representative.

Call (408) 861-3860

Envelope extension@ucsc.edu