醉裡挑燈看Code
2025年2月21日 星期五
2025 week 08 新玩意
01. bash script pointer to variable
有時候,我們就是需要變數的變數,原來只要像下面這樣,就可以達到此目的。
不論是一般變數或是陣列都可以用。
02. bash script in EDA world
今天在試 Tessent run_synthesis command 時,發現它產生出來的 script 居然也是 bash script 而不是 csh script。
這是否意味著,只能用 C Shell 跑 EDA 工具的都市傳說早就已經不復存在?
坦白說,bash script 還是比較好用!
2025年2月18日 星期二
gtkwave configuration
因為沒有 license 的關係,故最近都是用 iverilog + gtkwave 跑 simulation。
可能之前就是用這樣的 solution 來學習 Verilog,故我本身還蠻習慣的,我甚至覺得 gtkwave 還比 nWave 好用?
不過預設的 GUI 設定不是很好用,每次開啟都要重新指定一次,這些設定也不會儲存在 .gtkw 的波形訊號設定檔中。
我們可以用 man gtkwaverc 來看有哪些參數可以指定,並將想要的參數儲存在
~/.gtkwaverc
的檔案中。
不過,Windows 下似乎不起作用?
改天再來看看 source code 好了。
2025/02/19 更新
Windows 檔名需用
gtkwave.ini
如果要指定字型,waves 一定要比 signals 大。
fontname_signals Monospace 12
fontname_waves Monospace 10
2025年2月17日 星期一
The pointer in EDA flow
EDA 世界中,一些 command 拿到的變數,我們可以把他想成是一個指向 object 的 pointer。
因此,如果直接用 puts command 印出該變數,我們只會得到一個類似指標的位置。
DC 可以使用
get_object_name
得到字串。
Tessent 則是使用
get_name_list
得到字串。
2025年2月16日 星期日
Lenovo TrackPoint II 小紅點鍵盤
因為暗黑 2 聖騎士已經升到 99,需要在書桌玩遊戲的機會也不多了,拿掉外接的 HDMI 線後,我的螢幕就只剩三條線了:
01. 電源線
02. DP 線連到筆電
03. 外接 Lenovo TrackPoint I 小紅點鍵盤(2021/06 購入,NT 2680)
看來還是只能購買 2 代藍芽版了XD
Amazon.com 價錢是 USD 107.1,如果要加快運送速度,大概要再噴個台幣 1500 多。
想想並沒有那麼急,就走一般運送方式就好。
這台已經是 4 年前多的產品了,好像也沒有出下一代了?
台灣也沒進口,露天看到有人賣 4000,坦白說也不貴,但已經下單了就懶得改。
後來又看到有人出
機械鍵盤版
,之後聯想不出後,我可能也只能選這個了。
不過真的走到這一步,我應該還是不會買,機械鍵盤根本是邪魔歪道,傷敵一千也會自傷八百。
2025年1月26日 星期日
暗黑 2 LV99 聖騎目標達成
繼
2024/12/25 聖誕節晚上升上 LV98
後,幾日之後計算了一下 TZ 經驗,升上 99 似乎不是很難?
雖說不是很難,但每天也都要玩個幾局。
我除了中間有幾次放假時間用
tcl/tck 寫 netlisttreeview
外,幾乎每天都有開局,還要加上半夜睡不著覺的奮鬥時間,才順利在今天升上 LV 99。
中間還打到人生中第 3 顆貝。
https://youtu.be/KHDAiQWrgN0
還打到人生中第一雙戰旅,這也讓我的弓馬暫時成為完全體
升 LV99 瞬間
https://youtu.be/MJuUxD98_ZE
LV99 裝備
https://youtu.be/LYDmFzfKvm0
終於可以放下暗黑 2 了XD
放上我這隻槌丁的英勇照片,雖然只有 12K 的祝槌威力,但身拿執法者,每個 BOSS 都可以輕鬆 KO,遇到電鬼就換雷力 + 法拳,雖然犧牲了手套的 20 攻速 + 20 以上的電火炕,但可以不用一直喝紫水還是值得的,這樣我切執法者的時候就只剩 60 攻速,但我的狂熱加物品給的應該也有 28 吧,遇到衰老勉強也還過得去。
暗黑 2 是一個很有深度的遊戲,雖然說大部分的流派都被摸索得差不多了,但還是可以有自己的想法,畢竟自己玩得開心最重要XD
晚上買了兩份 SPEC 待看,還真不是普通的貴,居然要兩萬塊找零頭?
雖然過年很多事要做,可能也沒時間觀看,畢竟也還沒開始大掃除XD
不管如何,我的心意還是到了…
2025年1月19日 星期日
tcl 函數呼叫原則
上上星期找到一篇文章,內容是關於 tcl 常見誤區,可惜存在辦公室電腦,家裡 Chrome 並未同步。
其中有一段是在敘述如何決定何時傳給 tcl 函數的變數,前面是否要加 $?
大原則是這樣:
01. 如果要改動到原變數的值,則不要加 $。
02. 如果需要原變數內容的時候,則加上 $。
目前看來大概可以解決 8 成以上的困擾。
目前用過的函數,除了 info,array 相關,lreplace 是例外。
2025年1月4日 星期六
從做中學
之前其實有看過 tcl 語法書,但因為並沒有真正的拿它來開發專案,所以語法也是看過就忘了。
最近真的拿它來開發我自己需要的工具
,終於也算是可以拿它來做點事了。
如今的我,也可以說是對 tcl 略懂略懂了?
當然很現實的就是
前一陣子為了查字典用的 bash script
,現在也不太熟了!
我這個人的程式人生就是一直在不同的程式語言或是框架中渡過…
國中以及大學為了撥放 MIDI 使用的 QBASIC
不會寫程式時玩 Linux 的簡單 script
第一個學會的程式語言 C
BCB C++ 開發 GUI
BCB C++ / PHP / AutoIt 開發類 IT 人員使用的工具
目前公司第一個部門用過的 Android Java / C++ / wxWidget C++ / Node.js / Windows Batch / GNU Assembly / Go / Rust / C# / Python
為了電子書購買金額統計學會的 Chrome Extension
最後則是現在部門的 Verilog / Linux script / Makefile / tcl/tk
想我一生,還真是命途多舛XD
學程式寫程式到現在也 20 年了!
學會什麼,換個專案馬上就忘記什麼,從沒待過賺錢的地方使用 domain know-how 來累積工作上的漂亮履歷!
難怪到現在 github 星星全部專案加起來也才 100 出頭XD
‹
›
首頁
查看網路版