TCL is the defacto standard embedded command language for electronic design automation (EDA) and computer-aided design (CAD) applications. All the EDA tool flows from Synopsys, Cadence and Mentor Graphics use Tcl as the primary scripting interface for their flows. TCL as a single command language in all EDA tool flows ensures that a designer only needs to learn Tcl in order to work with all the flows.

TCL scripting is much sought after skill set for every VLSI engineer. Training will provide the detailed practical exposure on each aspect of project flow setup mostly focused on Physical Design, STA, and functional verification with multiple hands on examples.

TCL Scripting

  • Introduce TCL
  • Why TCL?
  • TCL Script Processing
  • Understand TCL uses and strengths
  • Writing simple TCL scripts
  • TCL for VLSI scripting
  • TCL : Main Features
  • TCL in EDA
  • TCL shell (tclsh)
  • Working with TCL scripts (UNIX)
  • TCL Interpreter in SoC Design Tools
  • TCL Scripting for SoC Design
  • TCL Commands
  • Variables
  • Substitution and Command Evaluation
  • Operators
  • Mathematical Functions
  • Procedures
  • Control flow : if, if-else, switch, for, foreach, while, break and continue
  • string, string operations
  • List, List manipulation
  • Arrays, array methods
  • Working with files
  • Command line arguments
  • Regular expressions
  • Complete TCL Scripts
  • TCL Packages

This training will increase your productivity when driving Synopsys tools that use Tcl using Design Compiler , IC Compiler , IC Compiler II and Prime Time. By mastering the most frequently used commands found in Tcl scripts , you will learn to apply the power of Tcl to automate your and customize tool reports.

This training covers on how to automate your scripts and customize design reports.  Its 6 weeks of training.

Day 1 & 2(Week 1)


Env Setup

Special Variables

Data Types





Arrays, Strings, Lists, Dictionary

Day 3&4(Week 2)

Unit 1 Count Patterns in a String

Lab 1 Count cell types in a library report

Unit 2 Control Flow, Math Functions and Procedures

Lab 2 Create a command “metrics” to track runtime performance

Unit 3 Strings, Lists and Pattern Matching

Lab 3 Explore string and list commands

Unit 4 Practical Applications

Day 5&6(Week 3)

Unit 5 File I/O and Define Procedure Attributes

Lab 5 clean_log: Read and Write a Log File

Unit 6 Tcl Arrays , Dictionaries and Parse Procedure Arguments

Lab 6 clean_log: Add Non-Positional Arguments

Day 7&8(Week 4)

Unit 7 Tcl Rules

Lab 7 clean_log: Count Timing Reports

Unit 8 Avoid Common Scripting Mistakes

Lab 8 clean_log: Remove Duplicate Timing Reports

Unit 9 Collections: Avoid Common Missteps

Lab 9 Explore the Output and Result of Collection Commands

Unit 10 Collection Applications and Handle Ambiguous Arguments

Lab 10 Create and Manipulate Collections of Registers

Unit 11 Attributes: Filter and Sort Collections

Lab 11 Filter Collections of Cells

Unit 12 Use Timing Paths and Their Attributes

Lab 12 Sort and Index Collections of Timing Paths

Lab 13 Get cells and nets of a timing path

Week 5 & 6:

Execution on Projects and assignments



  1. Learn 6 rules of industry-standard Tcl Scripting language and avoid seven common mistakes.
  2. Create Tcl procedures with command help and non-positional arguments.
  3. Efficiently read and write data using I/O and file handling Commands.
  4. Create and manipulate collections while avoiding missteps – Create procedures that handle ambiguous arguments.
  5. Filer and sort collections using attributes- Research and find application attributes- Successfully use timing path design objects and seven common attributes – pass command line switches directly to commands inside a procedure(ie eval).
  6. Report the percentage of flip-flops for each clock domain and accept ambiguous arguments that could be strings, lists or collections of various design objects.
  7. Filter collections to find the worst negative slack to any instantiation of new library flip-flop.
  8. Sort and index collections to report the single, worst timing report instead of one for every path group.
  9. Automate your scripts to improve tool performance.
Course TCL Scripting training
Duration 5 weeks
Next batch 9/May
Demo Session 9/May (9AM to 1PM)
Course enroll 9/May (after demo session)
Schedule Saturday & Sunday(9:30AM – 2PM India time)
New batch starts every 10 weeks
Fee INR 7000 (Classroom Training)
INR 8000 (Online Training)
Mode of training Classroom training at VLSIGuru Institute, Banaswadi, Outer Ring Road
Online training using live training sessions
Certificate Issued based on 50% assignment completion as criteria
Admission criteria Student need to undergo evaluation test on Linux OS
Assignments 8
Trainer 8 years exp
Tools used ICC2, PT, StarRC. Flow based on these tools.

Course has started few weeks back, can I still join the course in between?

  • Yes, You will have option to view the recorded videos of course for the sessions missed
  • You will have option to repeat the course any time in next 1 year

Do you offer support after course completion?

  • Yes, Course fee also includes support for doubt clarification sessions even after course completion
  • You have option to mail queries
  • Option to meet in person to clarify doubts

Course Material Shared:

  • TCL quick reference manual
  • TCL Language Manual
  • Session lab examples

Target Audience:

  • Every engineer who wants to utilize scripting to get smarter with work. Ex: A work manually done for 3-4 hours, could be done in 10-15 mins using intelligent scripting.
  • Every engineer who has repetitive work on daily basis, and would like to automate the same. Time can be better utilized on learning more interesting things.
  • Engineering college faculty looking to enhance their VLSI skill set

Trainer Profile

  • 8 years of rich experience of implementing EDA flow using PERL, TCL, SHELL and PYTHON.
error: Content is protected !!