TCL Workshop

The 2 day covers the following topics

Theory

  • What is Tcl
  • Tcl fundamentals
  • Tcl command syntax
  • Tcl variables
  • Variable substitution
  • Command substitution
  • Backslash substitution
  • Grouping
  • Grouping using quotes (“)
  • Grouping using curly braces ({})
  • Grouping when command need to be executed ([])
  • Substitution types
  • Variable substitution
  • Command substitution
  • Backslash substitution
  • Math expressions in tcl (expr)
  • Arithmetic operators
  • Math functions
  • String processing
  • string length
  • string map
  • string tolower
  • string toupper
  • Tcl lists
  • list command
  • split command
  • List operations
  • llength
  • lindex
  • lappend
  • lsearch
  • join
  • tcl control structures
  • if
  • else
  • elseif
  • switch
  • while
  • for
  • foreach
  • multiple loop variables in foreach
  • break
  • continue
  • Regular expressions
  • regexp
  • regsub
  • Tcl procs
  • Procs with default value
  • Tcl arrays
  • array set
  • array exists
  • array get
  • array names
  • Tcl file handling
  • Special variables
  • agrv0
  • argv
  • exec
  • env
  • info exists
  • unset
  • redirect command
  • EDA tool extensions
  • Netlist
  • Hierarchical cells, nets, pin
  • Leaf level cells nets and pin
  • Fanin
  • Fanout
  • get_* query commands
  • Collections and objects
  • all_fanin
  • all_fanout

Labs

  • Regexp labs
  • Write a Tcl script to execute shell script
  • Parse a timing report to dump startpoint, endpoint and slack
  • create tcl proc to initialize clock periods variables if not already defined
  • Tcl for finding out all pins in the design and slack on them
  • Find out all the ports in the design with direction as input
  • Find high fanout nets
  • Calculating logic levels in timing paths
YouTube player

Message Us on WhatsApp