安裝Vivado之后,在GUI界面會(huì)看到Tcl Console,在這里可以輸入Tcl命令。同時(shí),還會(huì)發(fā)現(xiàn)有一個(gè)所謂的“Vivado 2018.2 Tcl Shell”(如果你安裝的是Vivado 2018.2的話),意味著可以在Tcl模式下使用Vivado。通常,借助GUI的操作都有相應(yīng)的Tcl命令,但不是每個(gè)Tcl命令都可以通過(guò)GUI完成。從這個(gè)角度而言,用戶可以編寫自己的Tcl命令擴(kuò)展Vivado的功能,Tcl讓Vivado更強(qiáng)大。熟練使用Tcl,將會(huì)顯著提升Vivado使用效率。事實(shí)上,很多EDA廠商都把Tcl做為標(biāo)準(zhǔn)的API(Application Programming Interface),用于控制和擴(kuò)展他們的應(yīng)用。
什么是 Tcl
Tcl(Tool Command Language)是一種腳本語(yǔ)言,是一種基于字符串的命令語(yǔ)言,是一種解釋性語(yǔ)言。所謂解釋性是指不像其他高級(jí)語(yǔ)言需要通過(guò)編譯和聯(lián)結(jié),而與其他Shell語(yǔ)言一樣,直接對(duì)每條語(yǔ)句順序解釋執(zhí)行。
Tcl 的兩大特征
-任何東西都是一條命令及其參數(shù),包括語(yǔ)法結(jié)構(gòu)(例如for,if等)
-所有數(shù)據(jù)類型都可以看做字符串(基于字符串的命令語(yǔ)言)
基于這兩大特征再次理解什么是解釋性語(yǔ)言
if { $a > 1 } {
puts “This is Tcl”
}
在處理if命令時(shí),Tcl解釋器只指導(dǎo)這個(gè)命令有三個(gè)詞,其中第一個(gè)是命令名if。Tcl解釋器并不知道if的第一個(gè)輸入?yún)?shù)是表達(dá)式,第二個(gè)是Tcl腳本。完成對(duì)這個(gè)命令的解析之后,Tcl解釋器才會(huì)把這個(gè)命令中的單詞都傳給if,此時(shí)這個(gè)命令會(huì)把第一個(gè)參數(shù)作為表達(dá)式,把第二個(gè)參數(shù)作為Tcl腳本處理。如果表達(dá)式的值非0,那么if就會(huì)把第二個(gè)參數(shù)傳回Tcl解釋器進(jìn)行處理。到了這一步,解釋器就會(huì)把這第二個(gè)參數(shù)作為腳本對(duì)待。事實(shí)上,if后面的兩組大括號(hào)并無(wú)不同,其目的都是讓Tcl解釋器把括號(hào)內(nèi)的字符原封不動(dòng)地傳給命令,不要進(jìn)行任何替換操作。
學(xué)習(xí) Tcl 的工具
-如果你安裝了Vivado,Vivado自帶的Vivado Tcl Shell就夠用了。
-其他工具:ActiveTcl,免費(fèi)工具,可在www.activestate.com下載
認(rèn)識(shí)第一條 Tcl 命令
set a 5
set b “LUT”
-
賽靈思
+關(guān)注
關(guān)注
32文章
1794瀏覽量
130964 -
參數(shù)
+關(guān)注
關(guān)注
11文章
1661瀏覽量
31879 -
腳本語(yǔ)言
+關(guān)注
關(guān)注
0文章
47瀏覽量
8184
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論