2026年10月22日 星期四

舊愛還是最美

昨天終於有時間來觀察客戶自行設計的記憶體修復流程。

話雖如此,真正的實作是客戶請我跟 AI 討論後設計出來的。

客戶要修復的記憶體不算太多,但要透過 GUI 一個一個訊號拉出來觀察也是有些沒勁?

還好上個星期已經有寫一個簡單的 Tcl,將要觀察的訊號轉成 Tcl 餵入 Simvision 軟體。

但最困難的還是這個無中生有的訊號如何定義?都怪那該死的 Escaped Identifier Verilog 語法,我實在無法簡單的從 RTL 轉成最後網表看到的訊號名稱?再加上有些訊號是 for loop gen 出來的,也大大的增加我轉換難度!

這次不像上星期可以從 error log 中 parse 出我要的 instance,沒辦法,只好先找到一個 instance,再用其他程式語言組合出訊號名稱,然後餵進我的 Tcl(理論上應該在 Tcl 直接用 3 層迴圈,但懶得找語法了XD)。

沒想到 Python f string 要跳脫 Escaped Identifier 不是那樣直觀?試了 Google 前面幾篇文章的辦法還是不成功?

C 語言就沒那樣奇奇怪怪的講究,還好客戶工作站還是有 gcc,3 層迴圈,蛋糕一塊,重點是我根本不需要 Google 都還記得住語法!

果然是我學軟體以來用得最多的程式語言,小孩愛吃已回購。

2026/10/23 更新

靠,原來是被錯誤訊息誤導,大括弧要用大括弧跳脫,只有反斜線要用反斜線跳脫。

但我覺得 Python 這個設計也不好,都用反斜線跳脫不就好了?程式語言設計應該要有一致的行為模式才對。

沒有留言:

張貼留言