zl程序教程

您现在的位置是:首页 >  后端

当前栏目

数字集成电路静态时序分析基础笔记(2)

静态基础笔记 分析 数字 时序 集成电路
2023-09-27 14:20:42 时间

TCL控制流

语法格式:
if{判断条件}{
脚本语句
}elseif{判断条件}{
脚本语句
}else{
脚本语句
}

在这里插入图片描述

注意,上例中脚本语句的‘{’一定要写在上一行,因为如果不这样,TCL解释器会认为if命令在换行符处已结束,下一行会被当做新的命令,从而导致错误。

循环指令-foreach
语法格式:foreach变量 列表 循环主体
功能:从第0个元素开始,每次按顺序取得列表的一个元素,将其赋值给变量,然后执行循环主体一次,直到列表最后一个元素。
在这里插入图片描述
循环控制指令-break
语法格式:break
功能:结束整个循环过程,并从循环中跳出
在这里插入图片描述
循环控制指令-continue
功能:仅结束本次循环
在这里插入图片描述
循环控制指令-while
功能:如果判断语句成立(返回值非0),就运行脚本,知道不满足条件停止循环,此时while命令中断并返回一个空字符串。
在这里插入图片描述
循环控制指令-for
语法格式:
for 参数初始化 判断语句 重新初始化参数 循环主体
功能:如果判断语句返回值非0就进入循环,执行循环主体后,再重新初始化参数。然后再次进行判断,直到判断语句返回值为0,循环结束。
在这里插入图片描述
过程函数
过程函数-proc
语法格式:proc 函数名 参数列表 函数主体
功能:类似于C语言中的函数。即用户自定义的功能,方便多次调用。
在这里插入图片描述
全局变量与局部变量

全局变量:在所有过程之外定义的变量。
局部变量:对于在过程中定义的变量,因为他们只能在过程中被访问,并且当过程退出时会被自动删除。
指令global,可以在过程内部引用全部变量。
在这里插入图片描述
在这里插入图片描述
正则匹配
定义:正则表达式是一种特殊的字符串模式,用来去匹配符合规则的字符串。

正则表达式的\w,用来匹配一个字母、数字、下划线
正则表达式的\d,用来匹配一个数字

abc123 \w\w\w\d\d\d

\w\w\w\d\d\d这种写法过于繁琐,我们可以用代替重复的量词进行表示。
在TCL中常用一下三种量词

符号 功能
*零次或多次匹配
+一次或者多次匹配
零次或者一次匹配

字符串 abc123
正则表达式 \w+\d+ 或者 \w*\d*
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

正则匹配指令-regexp
在这里插入图片描述
实例:
在这里插入图片描述
捕获变量
在这里插入图片描述
文本处理
用TCL处理文本在工作中十分常用
主要掌握以下三个指令
open
gets
close

在这里插入图片描述
例题:
在这里插入图片描述