学习目标:
理解掌握Tcl工具的基本用法,来控制一些EDA工具;
课程总览:
1.What is Tcl ?
Tcl : Tool command language; Widely used in many EDA tool command shells;
一些推荐的书和网站社区;
2.Tcl Syntax and Rules
①:Tcl的命令通常都是一个Command命令后面可能带有1-n个Argument 变量的形式;在有些EDA tool中,可能只要求能带一个变量,此时如果有多个变量,就需要用Grouping括起来;
②:当一个command的返回值作为另一个command的变量,就需要进行command substitution;
Backslash表示反斜杠,同vi正则表达式里面的转义模式,当我们需要用到某个字符本身,而该字符又是有特殊定义的时候,就在前面加上”\”;
③:command output输出值和返回值不是完全相同的,可以理解为输出值为输出到屏幕上的值,返回值为执行完命令后给到use来观察的数据;
在EDA工具中,都会集成Tcl的基本命令,但同时,他们还会有另外一些自己的命令;
Rule #1 :Command and Argument Parsing
"command arg1 arg2 arg3"基本形式:command 命令开头,后面加空格隔开,然后依次写上arg;执行逻辑:①执行时,会先将command命令拿到command library里面去找,找不到就会报错error no command;②找到了以后,就会依次将arg参数代入command;若arg的个数不对,多了或者少了,也会报错;(注:如果不清楚command的用法,可以用man command来查找相应的命令介绍手册,会给出基本用法,描述,参数使用及案例,这一点就和linux里面是一样的)
不同command之间需要隔开,有两种方法:①换行;②在一个command写完后加入分号”;”隔开;
当单个Arg里面有空格或者换行时,可以用””或者{}括起来,当成一个group;””与{}的区别就是,””内的变量可以替换,{}内的变量不可以替换,一般来说””用的多一些;