RTL Synthesis and Static Timing Analysis (STA)

Objective: Learn the entire flow of RTL synthesis and perform timing analysis to achieve timing closure in digital design.

Module 1: Introduction to Synthesis and STA

  • Design Flow: RTL → GDSII
  • Where Synthesis and STA fit in the flow
  • Tools Overview: Design Compiler, Genus, Tempus, PrimeTime
  • Combinational vs Sequential Logic

Module 2: RTL Coding Guidelines

  • RTL Best Practices
  • Synthesizable Constructs in Verilog
  • Clocking Style and Reset Schemes
  • Design Partitioning and Reusability

Module 3: Logic Synthesis

  • What is Logic Synthesis?
  • Technology Mapping
  • Gate-Level Netlist Generation
  • Timing and Area Optimization
  • Hands-on: Synthesize a small RTL block

Module 4: Constraints – SDC Files

  • Clock Definition
  • Input/Output Delays
  • Generated Clocks
  • False Paths, Multi-cycle Paths
  • Driving Cells and Load Constraints
  • Hands-on: Write and apply SDC constraints

Module 5: Static Timing Analysis (STA) Basics

  • Timing Arcs and Timing Paths
  • Setup and Hold Timing
  • Slack Calculation
  • Clock Skew, Jitter, Latency
  • Understanding Reports: report_timing
  • Working with Liberty Files (.lib)

Module 6: Types of Timing Paths

  • Setup vs Hold Paths
  • Clock-to-Q and Propagation Delays
  • Input to Register, Register to Register
  • Output Delay Paths
  • Recovery, Removal Timing

Module 7: Advanced STA Topics

  • Multi-Corner Multi-Mode (MCMM)
  • Timing Exceptions (false_path, multicycle_path)
  • Clock Gating Checks
  • Asynchronous Paths
  • STA in Physical Design

Module 8: Timing Closure Techniques

  • Timing Critical Paths
  • Logic Restructuring
  • Retiming, Pipelining
  • Buffer Insertion, Gate Sizing
  • Hands-on: Close timing on failing paths

Module 9: Clock Tree & Timing Analysis

  • Pre-CTS and Post-CTS Timing
  • Clock Latency and Uncertainty
  • Derating and Constraints Update
  • Clock Tree Balancing and Optimization

Module 10: TCL Scripting for Synthesis and STA

  • Introduction to TCL language and syntax
  • Variables, loops, conditionals, procedures
  • Using TCL in tools like DC, Genus, PrimeTime
  • Automating synthesis and timing runs
  • Parsing and extracting timing reports
  • Hands-on: Write TCL scripts for synthesis and STA automation

Module 11: Debugging Timing Violations

  • Setup Violation Debug
  • Hold Violation Debug
  • Path Isolation and Clock Path Debug
  • Working with Timing Reports
  • TCL for Analysis Automation

Module 12: Projects

  • Project 1: RTL → Synthesized Netlist with timing met
  • Project 2: Multi-clock Domain Design
  • Project 3: Constraints Debugging on a real IP block

Tools & Labs

  • Synopsys Design Compiler / Cadence Genus
  • PrimeTime / Tempus for STA
  • VCS/NCSim for RTL simulation
  • TCL scripting for tool flow automation

Assessment & Deliverables

  • Weekly Assignments and Reports
  • Quizzes on Timing Paths and Constraints
  • Project Submissions with timing closure
  • Final Exam for Certification

prerequisites

  • Basic electronics and Linux basics
  • Passion for learning
  • Qualification
    • Diploma (EE, EC, EI, CS, IT)
    • B.Tech/BE/M.Tech/ME (EE, EC, EI, CS, IT)
    • Any degree with Maths and Physics
  • Failed students with lots of Passion (Let's work out a way)

Selection Process

  • Analytical test
  • Interview

Limited Seats

Right mentor plays a crutial role in career building, choose right one.