# 工作站及IDE連動設置 在數位IC設計的領域當中,由於所有我們使用的EDA(Electronic Design Automation)TOOL都有其對應的Lincense,並且大多數TOOL的原生環境都是開發給UNIX環境做使用的原因,幾乎所有的實驗室都會建置自己的工作站來方便實驗的運作,當然,這樣的工作站都是基於UNIX環境建置的,也各自有自己的管理規章。 在教學流程開始之前,先在這邊宣導不要將不重要的 document 及影片/圖片等等的檔案丟到工作站之上,這可能導致工作站癱瘓、變慢,並且也宣導工作站的 SuperUser (簡稱su) 可以閱覽所有人對工作站所下的指令,所以請各位盡量使用,但同時也愛惜這樣的環境。 **!!! 特別注意,這樣的做法同樣也必須要使用學校的網域才能進行連線,跟工作站的連線相同。** ## 工作站 坊間開啟工作站的方式有十分多種,有的會用 Ubuntu 或是其他軟體來開啟Terminal,在我們實驗室則是偏好MobaXterm的使用,因為他擁有相對友善的GUI docker介面,簡單來說就是可以像使用Windows介面那樣拖拉檔案來進行檔案的移動或是複製、刪除。 這邊我們假設大家都已經明白知道如何登陸工作站,其實也就是MobaXterm打開,再SSH輸入工作站的IP以及USERNAME登錄即可。 這些部份如果忘記可以參考老師SIP教材的 tools - VCS使用教學這份講義,就不多做贅述了。 ## IDE (VS CODE) 接下來這個部分才是我們的重頭戲,使用UNIX介面的 gedit 或是 Vim 等等瀏覽器對於新手相對比較不友善一些,所以接下來我們要教大家如何使用 VS CODE連接自己的工作站帳號,並且在VS CODE當中也可以有簡易的Lint及特殊字元識別的功能(舉例像是 posedge clk / always@ / module 等等字元會變色) 接下來,我們一步一步來做這些設定。 ### 下載VS CODE並開啟 我們下載完VS CODE開啟可以選擇自己喜歡的畫面,建議選擇深色模式眼睛會舒服一些。  ### 中文化 (option) 如果不習慣英文介面的同學可以參考以下連結設定,如果日後語言設定跳掉也可以參考這個網站重新設定。 https://www.citerp.com.tw/citwp2/2022/07/05/vscode-1/  設定完成大概就會長這樣 ### 下載Lint 從左手邊工具列「延伸模組」當中輸入關鍵字搜尋「Verilog」,選幾個看得順眼的裝,個人推薦左邊的第二三四個都不錯用,因為我們只有拿來當Lint使用,並沒有要觀察電路的Schematic or Wave, 個人推薦隨意裝就可以了。  ### 觀察一下結果 左上角檔案 >> 新增文字檔 >> 選取語言的藍字點開選Verilog   輸入以下程式測試一下 ```verilog= module ADD (a,b,out) input a; input b; output out; endmodule ```  可以看到這段程式當中Verilog的「關鍵字(保留字)」已經有被上色了就代表成功。 補充一下,如果覺得字太小可以使用 "**Ctrl +** "兩個鍵同時按來zoom in, "**Ctrl -**"則可以Zoom out 右下角顯示Verilog這邊也可以變更語言形式,如果在新增文件忘記選擇語言型態為Verilog時就可以到這邊來進行更改。  ## VS CODE與工作站連結 (SSH) 接下來我們演示如何將VS CODE與工作站來進行連接。 ### STEP1:同樣的,到延伸模組那邊去搜尋 「SSH」,並下載第一個及第三個  ### STEP2: 完成後,我們點選左下角的藍色 ><  ### STEP3: 選第一個  ### STEP4: 輸入 學號@140.125.44.63 按下Enter後等待一下下並輸入密碼就完成了 附註:只有第一次設定需要做這個步驟,之後VS CODE重新開始default應該就會跳轉到輸入密碼的這一步了不用另行設定。 Tips: 注意這邊的資料會與工作站連動,所有有更動的Code建議可以學習如何使用git/clone去進行管理。 Tips:如果儲存時儲存到Local端,要注意遠端連接SSH需要被重新setup一次,否則接下來編輯的這份Code都會是與本地端(也就是你自己的電腦連動),寫CIC有時候尤其需要注意這種奇奇怪怪的狀況。 Tips:由於新開一個Folder Scope就會需要重新輸入一次密碼,建議一開始左上角開啟資料夾時從比較接近根目錄的地方開啟,例如我就會開M11112092,以免要搜尋自己資料夾內的東西換個Scope就要重新打一次密碼非常麻煩,以上就是我的使用心得,跟大家分享。  ### STEP5: Start your Coding. ## **Congratulations , you finshed up all the settings.**
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up