Tools path
Tcl for EDA: From First Command to Flow Script
Every EDA tool, Genus, Innovus, Design Compiler, ICC2 and PrimeTime, runs on a Tcl interpreter with its own commands added in. Learn the language itself first, in plain tclsh, then see the same ideas in short Innovus examples: querying objects, parsing a report, wrapping a step in catch, and writing a small flow script that runs in order.
- 12
- lessons
- Beginner to Intermediate
- level
- Free
- every lesson
Tcl for EDA
- 1Why every EDA tool speaks TclWhat Tcl is, why synthesis, place and route and timing tools all embed it, and how a script reaches the design database.
- 2Commands, words and substitutionThe one rule behind all Tcl syntax: how a line is split into words, which substitutions happen, and when braces and quotes change the result.
- 3Variables and expressionsSetting and reading variables, doing arithmetic with expr, integer versus floating point, comparisons, and why expressions go in braces.
- 4ListsThe list is the workhorse of Tcl: building, indexing, searching, sorting and looping, plus the pitfalls that come from confusing a list with a string.
- 5Strings and regular expressionsCutting, matching and formatting text with string, format and scan, then pulling values out of reports and log lines with regexp and regsub.
- 6Control flow and error handlingif, switch and loops, then catch, error and try: how to make a script decide, repeat and survive a failing step.
- 7Procedures, scope and namespacesWriting reusable procedures with default and variable arguments, where variables live, passing names with upvar, and keeping flow code tidy with namespaces.
- 8Arrays and dictionariesKeyed storage in Tcl: arrays for quick lookups and dictionaries for values you pass around, with counting, grouping and nested records.
- 9Files, directories and external programsReading and writing files, finding reports with glob, running other programs with exec, and a small tool that counts the messages in a log.
- 10Working with design objectsThe query, filter, loop and act pattern behind most EDA scripts, practised on plain Tcl lists first and then on Innovus collections and database queries.
- 11Parameterised flow scriptsTurning a one-off script into a reusable flow: a config file, building and running commands from data, a step runner that records failures, and checkpoints.
- 12Debugging, speed and a complete scriptHow to find a fault in a Tcl script, the mistakes that catch most beginners, how to measure speed, and a complete report-summary tool that ties the course together.