Vivado Design Suite Advanced XDC and Static Timing Analysis for ISE Software Users

DEPRECATED COURSE: This course is older and no longer offered with our regular course list. It is only available as a private class.

Please contact the BLT Training Team to schedule a private class.

This course will update experienced ISE software users to utilize the Vivado Design Suite. Learn the underlying database and static timing analysis (STA) mechanisms. Utilize Tcl for navigating the design, creating Xilinx design constraints (XDC), and creating timing reports. Learn to make appropriate timing constraints for SDR, DDR, source-synchronous, and system-synchronous interfaces for your FPGA design.

You will also learn to make path-specific, false path, and min/max timing constraints, as well as learn about timing constraint priority in the Vivado timing engine. Finally, you will learn about the scripting environment of the Vivado Design Suite and how to use the project-based scripting flow.

You will also learn the FPGA design best practices and skills to be successful using the Vivado Design Suite. This includes the necessary skills to improve design speed and reliability, including: system reset design, synchronization circuits, optimum HDL coding techniques, and timing closure techniques using the Vivado software. This course encapsulates this information with an UltraFast® design methodology case study. The UltraFast® design methodology checklist is also introduced.

Skills Gained

After completing this comprehensive training, you will know how to:

  • Access primary objects from the design database and filter lists of objects using properties
  • Describe setup and hold checks and describe the components of a timing report
  • Create appropriate input and output delay constraints and describe timing reports that involve input and output paths
  • Explain the impact that manufacturing process variations have on timing analysis and describe how min/max timing analysis information is conveyed in a timing report
  • Describe all of the options available with the report_timing and report_timing_summary commands
  • Describe the timing constraints required to constrain system-synchronous and source-synchronous interfaces
  • Analyze a timing report to identify how to center the clock in the data eye
  • Create scripts for the project-based and non-project batch design flows
  • Describe the UltraFast® design methodology checklist
  • Identify key areas to optimize your design to meet your design goals and performance objectives
  • Define a properly constrained design
  • Optimize HDL code to maximize the FPGA resources that are inferred and meet your performance goals
  • Build resets into your system for optimum reliability and design speed
  • Build a more reliable design that is less vulnerable to metastability problems and requires less design debugging later in the development cycle
  • Identify timing closure techniques using the Vivado Design Suite
  • Describe how the UltraFast® design methodology techniques work effectively through case study/lab experience

Course Outline

Day 1

  • UltraFast® Design Methodology: Design Closure
    Introduces the UltraFast® design methodology guidelines on design closure.
  • UltraFast® Design Methodology: Advanced Techniques
    Introduces the methodology guidelines for advanced techniques.
  • Timing Constraints Wizard
    Use the Timing Constraints Wizard to apply missing timing constraints in a design.
  • Timing Constraints Editor
    Introduces the timing constraints editor tool to create timing constraints.
  • Introduction to Vivado Reports
    Generate and use Vivado timing reports to analyze failed timing paths.
  • Introduction to Clock Constraints
    Apply clock constraints and perform timing analysis.
  • Report Clock Interaction
    Use the clock interaction report to identify interactions between clock domains.
  • Report Clock Networks
    Use report clock networks to view the primary and generated clocks in a design.
  • I/O Constraints and Virtual Clocks
    Apply I/O constraints and perform timing analysis.
  • Timing Summary Report
    Use the post-implementation timing summary report to sign-off criteria for timing closure.
  • Setup and Hold Timing Analysis
    Understand setup and hold timing analysis.
  • Generated Clocks
    Use the report clock networks report to determine if there are any generated clocks in a design.
  • Clock Group Constraints
    Apply clock group constraints for asynchronous clock domains.
  • Introduction to Timing Exceptions
    Introduces timing exception constraints and applying them to fine tune design timing.

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.
  • Baselining
    Use Xilinx-recommended baselining procedures to progressively meet timing closure.
  • Pipelining
    Use pipelining to improve design performance.
  • I/O Timing Scenarios
    Overview of various I/O timing scenarios, such as source- and system-synchronous, direct/MMCM capture, and edge/center aligned data.
  • Source-Synchronous I/O Timing
    Apply I/O delay constraints and perform static timing analysis for a source-synchronous, double data rate (DDR) interface.
  • System-Synchronous I/O Timing
    Apply I/O delay constraints and perform static timing analysis for a system-synchronous input interface.
  • Timing Constraints Priority
    Identify the priority of timing constraints.
  • Case Analysis
    Understand how to analyze timing when using multiplexed clocks in a design.
  • Introduction to Floorplanning
    Introduction to floorplanning and how to use Pblocks while floorplanning.
  • Physical Optimization
    Use physical optimization techniques for timing closure.

Training Duration:

2 Days

Who should attend:

Existing Xilinx ISE Design Suite FPGA designers


  • Experience with the Vivado Design Suite
  • Working HDL knowledge (VHDL or Verilog)
  • Digital design experience

Version: 2021-03-17_0932

Updated 7-14-2023
©2023 Advanced Micro Devices, Inc. Xilinx, Inc. is now part of AMD. Xilinx, the Xilinx logo, AMD, the AMD Arrow logo, Alveo, Artix, Kintex, Kria, Spartan, Versal, Vitis, Virtex, Vivado, Zynq, and other designated brands included herein are trademarks of Advanced Micro Devices, Inc.