=============================
安装Vivado之后,在GUI界面会看到Tcl Console,在这里可以输入Tcl命令。同时,还会发现有一个所谓的“Vivado 2018.2 Tcl Shell”(如果你安装的是Vivado 2018.2的话),意味着可以在Tcl模式下使用Vivado。通常,借助GUI的操作都有相应的Tcl命令,但不是每个Tcl命令都可以通过GUI完成。从这个角度而言,用户可以编写自己的Tcl命令扩展Vivado的功能,Tcl让Vivado更强大。熟练使用Tcl,将会显著提升Vivado使用效率。事实上,很多EDA厂商都把Tcl做为标准的API(Application Programming Interface),用于控制和扩展他们的应用。
那么什么是Tcl?
Tcl(Tool Command Language)是一种脚本语言,是一种基于字符串的命令语言,是一种解释性语言。所谓解释性是指不像其他高级语言需要通过编译和联结,而与其他Shell语言一样,直接对每条语句顺序解释执行。
Tcl的两大特征
-任何东西都是一条命令及其参数,包括语法结构(例如for,if等)
-所有数据类型都可以看做字符串(基于字符串的命令语言)
基于这两大特征再次理解什么是解释性语言
if { $a > 1 } {
puts “This is Tcl”
}
在处理if命令时,Tcl解释器只指导这个命令有三个词,其中第一个是命令名if。Tcl解释器并不知道if的第一个输入参数是表达式,第二个是Tcl脚本。完成对这个命令的解析之后,Tcl解释器才会把这个命令中的单词都传给if,此时这个命令会把第一个参数作为表达式,把第二个参数作为Tcl脚本处理。如果表达式的值非,那么if就会把第二个参数传回Tcl解释器进行处理。到了这一步,解释器就会把这第二个参数作为脚本对待。事实上,if后面的两组大括号并无不同,其目的都是让Tcl解释器把括号内的字符原封不动地传给命令,不要进行任何替换操作。
学习Tcl的工具
-如果你安装了Vivado,Vivado自带的Vivado Tcl Shell就够用了。
认识第一条Tcl命令
set a 5
set b “LUT”
领取专属 10元无门槛券
私享最新 技术干货