Designing FPGAs Using the Vivado Design Suite 3

FPGA 3 | FPGAVDES3-ILT (2016.3)

Course Description

This course demonstrates timing closure techniques, such as baselining, pipelining, synchronization circuits, and optimum HDL coding techniques that help with design timing closure. This course also shows you how to debug your design using advanced capabilities of the Vivado logic analyzer.

Level: FPGA 3

Course Duration: 2 days
Price: $1400 or 14 Xilinx Training Credits
Course Part Number: FPGA-VDES3-ILT
Who Should Attend? FPGA designers with intermediate knowledge of HDL and FPGA architecture and some experience with the Vivado Design Suite.
Registration: Register online in our secure storeRequest a Class | FTL


  • Designing FPGA's Using the Vivado Design Suite 1 course
  • Designing FPGAs Using the Vivado Design Suite 2 course
  • Intermediate HDL knowledge (VHDL or Verilog)
  • Solid digital design background

Optional Videos

  • Basic HDL Coding Techniques
  • Power Estimation

Software Tools 

  • Vivado System Edition 2016.3


  • Architecture: UltraScale and 7 series FPGA's*
  • Demo board(optional): Kintex-7 FPGA KC705 board*

* This course focuses on the 7 series architecture. Contact us for the specifics of the in-class lab board or other customizations.

Skills Gained

After completing this comprehensive training, you will have the necessary skills to:

  • Employ good alternative design practices to improve design reliability
  • Define a properly constrained design
  • Apply baseline constraints to determine if internal timing paths meet design timing objectives
  • Optimize HDL code to maximize the FPGA resources that are infered and meet performance goals
  • Build a more reliable design that is less vulnerable to metastability problems and requires less design debugging later in the development cycle
  • Increase performance by utilizing FPGA design techniques
  • Use Vivado Design Suite reports and utilities to full advantage, especially the Clock Interaction report

Course Outline

Day 1

  • UltraFast Design Methodology Introduction 3 (Lecture)
  • Timing Simulation (Lecture,Lab)
  • Vivado Design Suite Non-Project Based Batch Flow (Lecture)
  • Revision Control Systems in the Vivado Design Suite (Lecture,Lab)
  • Baselining (Lecture,Lab,Demo)
  • Pipelining (Lecture,Lab)
  • Inference (Lecture,Lab)
  • Report Clock Interaction (Lecture,Demo)

Day 2

  • Synchronization Circuits (Lecture,Demo)
  • Report Datasheet (Lecture,Demo)
  • Configuration Modes (Lecture)
  • Dynamic Power Estimation Using Vivado Report Power (Lecture,Lab)
  • Debug flow in an IP Integrator Block Design (Lecture,Lab)
  • Remote Debugging Using the Vivado Logic Analyzer (Lecture,Lab)
  • JTAG-to-AXI-Master Core (Lecture,Demo)
  • Trigger Using the Trigger State machine in the Vivado Logic Analyzer (Lecture,Lab)
  • Manipulate Design Properties Using Tcl (Lecture,Lab)

Topic Descriptions

Day 1

  • UltraFast Design Methodology Introduction-Introduces the methodology guidelines covered in this course.
  • Timing Simulation-Simulate the design post-implementation to verify that a design works properly on hardware.
  • Vivado Design Suite Non-Project Mode-Create a design in the Vivado Design Suite non-project mode.
  • Revision Control Systems in the Vivado Design Suite-Use version control systems with Vivado design flows.
  • Baselining-Use Xilinx-recommended baselining procedures to progressively meet timing closure.
  • Pipelining-Use pipelining to improve design performance.
  • Inference-Infer Xilinx dedicated hardware resources by writing appropriate HDL code.
  • Report Clock Interaction- Use the clock interaction report to identify interactions between clock domains.

Day 2

  • Synchronization Circuits-Use synchronization circuits for clock domain crossings.
  • Report Datasheet-Use the datasheet report to find the optimal setup and hold margin for an I/O interface.
  • Configuration Modes-Understand various configuration modes and select the suitable mode for a design.
  • Dynamic Power Estimation Using Vivado Report Power-Use an SAIF (switching activity interface format) file to determine accurate power consumption for a design.
  • Debug Flow in an IP Integrator Block Design-Insert the debug cores into IP integrator block designs.
  • Remote Debugging Using the Vivado Logic Analyzer-Use the Vivado logic analyzer to configure an FPGA, set up triggering, and view the sampled data from a remote location.
  • JTAG-to-AXI-Master Core-Use this debug core to write/read data to/from a peripheral connected to an AXI and capture data in the Vivado logic analyzer.
  • Trigger Using the Trigger State Machine in the Vivado Logic Analyzer-Use TSM code to trigger the ILA and captive data in the Vivado logic analyzer.
  • Manipulate Design Properties Using Tcl-Query your design and make pin assignments using various Tcl commands.

PDF version of this page.

Enroll Now.

Scheduled FPGA Courses

Essential Tcl Scripting for Vivado Design Suite
March 06 - March 07: 09:00 am - 05:00 pm
v2015.1  Learn how to use basic Tcl syntax and language structures to build scripts suitable...

Alternative Dates and Locations

Faster Technology is able to deliver both private classes at client sites and also public classes at alternate locations and dates.  If there are no currently scheduled classes listed above or if none of the classes are convenient, please tell us what dates and locations will meet your needs.  No obligation necessary.