早上想要合成 Cadence 範例的 design 得到一個簡單的 netlist,好讓學弟妹 try command 時比較方便,雖然這個 EDA 我也是第一次用,但我好歹大大小小也用了幾 10 種以上的 tool,不料在 read design 就失敗,如果用 SytemVerilog 格式說我的 design 用到關鍵字,改用 Verilog 2001 又說我少分號,馬的,今天很忙只有早上這一個小時可用,EDA 公司 release 出來的東西還不能直接用,一整個火冒三丈,再加上這個星期想要補齊音樂歌單又只能一首一首買,真是讓我想罵髒話,我最討厭做事情不能收尾卡在那邊的感覺!
好不容易在查 itunes 歌名為什麼中英文混雜時,看到有所謂禮品卡的方式,但是去到 App Store 頁面又說不能用在 itunes,Google 卻又說可以?
還好我後來總算搞懂,App Store Card 跟 App Store 禮品卡是不一樣的東西,前者只能在超商或是 PChome 購買。
堂堂蘋果公司,線上商店沒有購買 App Store Card 連結?真是顆爛蘋果無誤!
難怪我從來都不會想買蘋果商品,爛透了,Linux 如果有一萬分的話,蘋果我只願意給你 10 分,坦白說 10 分我都嫌多。
早上的時間就被這兩個公司浪費掉了,想想就生氣。
比那官網不知所云的說明好一百倍。
2026/02/08 更新
說蘋果爛還真的沒冤枉他!晚上想要物色顆新隨身碟把購買的音樂放進車子影音系統,誰知 itunes 顯示有 222 首,進到下載資料夾卻變成 250 首?一整個莫名其妙!
動用 find 指令來確定 m4a 檔案個數以避免是否有縮圖等隱藏檔被誤統計進去,結果還真的是 250 首,作業系統沒有騙人。
改用 less 一頁一頁來確認,終於讓我知道 itunes 哪裡發神經了,原來有些歌 UI 顯示一筆,但購買下載後卻會平白無故多了一首。
害我又要花時間來整理檔案,真有你的爛蘋果。
2026/02/9 更新
下午還是花了點時間看一下為什麼沒辦法 synthesis。
-v2001 會報 error 是因為 Cadence 把 testbench 跟 design 放在同一個資料夾下,故我建立的 file_list 有包含那些檔案,拿掉就不會一直要我用 -sv 參數了。
-sv 會報 error 是因為 design 用 int 當 input port name 而 int 本身是 SystemVerilog 的 Keywords,故佛跳牆料理烹飪到會爆炸是不允許的XD
搞定之後,剩下的就是 synthesis 本身的問題了。
下面是可以 synthesis 所需要的最少指令組合。
set_db auto_ungroup none
set_db library [list xxx.lib]
read_hdl -v2001 ( -sv ) file_list
elaborate $top_name
create_clock clk_port -name CLK -period 10
check_design
syn_gen
syn_map
write_hdl > netlist.v
一開始沒有設 auto_ungroup,design 一直被 flattern,後來才發現有這個 attribute 要設定。
正事做完了,再回到 itunes 歌曲會有兩首的問題,看起來是資料庫有兩筆不一樣的描述
真是莫名其妙,既然資料庫裡有兩首,使用者點哪一首購買就給哪一首有那麼困難嗎?