淺談IC 工程師做UI

IC 工程師不是軟體工程師,高大上的各種QT,GTK+ 等等庫想必大家都不曾接觸,接觸最多的還是TK,或者還有WEB。

為什麼需要GUI?

很多時候IC工程師都喜歡敲命令,除了EDA 公司的工具GUI 偶爾用意外,都工作在terminal下,那什麼情況下GUI 對IC 工程師來說是有必要的呢?

交互繁多的應用,比如你要填寫一個申請表,提交一個複雜的CONF配置,組織你的所有的Liberty 和Lef ,這個時候相信你也許會說有個GUI 界面該多好?

對顯示有要求的應用,比如統計圖表,Congestion Map,或者Timing的變化曲線,這些是不得不在GUI 里顯示的。

當然還有一些例子可以列舉,就不一一闡述了。

選用什麼?

我這裡主要講TK 和WEB:TK 和TCL 自成一家,很好的結合,縱使EDA 工具內嵌的Tcl/Tk 解釋器是被定製過的,大部分功能都是在的。TK 可用於和項目精密結合的應用或者工具,而WEB可以用於輔助,當然我認為WEB的功能已經很強大,足夠取代傳統的GUI。

TK 的編寫很方便也很直接,當然對EDA 介面可以用直接來形容,所以當你想編寫一個來擴展EDA的GUI的時候,不要說沒法子,用TK就可以了。舉個很簡單的例子,從ICC的console中source 編寫的GUI,一個按鈕,完成的功能很簡單,選中所有的PG並Dump出相應的文件。

WEB,的強大在於應用場合很廣泛,比如我最近研究圖表, WEB圖表的表現形式不能說完全超過高級語言的圖標庫,但是肯定不遜色。當然現在WEB的開源項目很多,各種應用層出不窮,在線應用越來越被接受。

GUI 的維護

GUI 做出來是交互的,當你覺得不需要GUI時候,要果斷把原來的GUI 否決掉。當你覺得需要GUI 時候,果斷加入。所以GUI 的作用是為提高用戶體驗,而不是強迫用戶使用。


推薦閱讀:

晶元設計的思路正在轉變 | 半導體行業觀察
開一個半導體設計公司的門檻有多高?
i電子 | BGA封裝晶元手工焊接方法圖文教程

TAG:数字IC设计 | CAD | 芯片设计 |