pretty code

2024年11月2日 星期六

ORFS PAD Placement

終於搞定了,腦細胞都不知道死多少了XD

這一行太多知識待補充,自己一個人摸索確實有些緩不濟急。

忘記在哪個對岸網站看到有人說過的話:「IC Design 比數學好的地方就是,學過了就是會了,剩下只是經驗累積的問題。」

這兩年剛好都有略微涉獵到這些主題,我只能說,我學到的是:


gcd 和 jpeg design 看起來都給過,我對 ORFS PAD 的認知應該是對的吧?至少 PIN 和 CTS 看起來都比較符合我的預期。

看 CTS 的小技巧

01. Ctrl + F,clk* Net
02. select -type Net -name clk* + select -type Net -name XX (synthesis name 不是 clk* 的情況)

2024年10月24日 星期四

2024 week 43 新玩意

01. Find OpenROAD message

本來以為 place_pad 任務應該算告一段落,無意間發現 CTS 都沒有被建立起來,於是一個下午都在反覆查找相關資料。

順便記錄一下如何從 message number 找到 OpenROAD source code 的地方。

2024年10月19日 星期六

天機一線牽

今天諸事不順,忙著煮飯,打掃就算了,連充電線也來跟你搗亂!

昨天晚上用新買的 Dell 螢幕同時充電 8Bit 翻頁器以及 Pubook Pro,同時間也在使用 Dell 筆電,忽然跳出一個什麼充電電流怎樣的警告?當時在想事情,沒有多想就順手按掉,後來才發現 Dell 螢幕 Type-C 拉出來的充電線已經沒有在充電了,反正還有 40%,可能超出最大功率之類的無所謂。

早上在準備備料時,先將筆電的 Type-C 線拔掉,這樣螢幕就不會對筆電充電並開機了,記得待機模式 USB 供電選項是打開的,故還是拿昨天的那條 Type-C 對 Pubook Pro 充電。

沒想到忙完回來,螢幕似乎不是待機模式,故充電又被中斷了。

煮飯前拿出隨便一條 Type-C 線,配合 5V 2A 的充電頭,想說總可以來充電了吧,沒想到三點忙完所有的事後,機器還是只有充到 82% 左右,感覺似乎不太對勁?

趕緊安裝之前有贊助的 Device Info App,查了一下才發現居然只有用 15X 的 mA 在充電?這條線我也忘了是那台閱讀器附贈的線,從來也沒用過。

換上 Pubook Pro 的線後,果然充電可以來到 1500 mA 以上,決定把一堆沒用的線都丟了,以後有需要再買即可,留著一堆不用的線一點意義都沒有,或是該買個充電電流觀察工具才行,但要有兩種頭也是很麻煩,有空再來找看看。

還好我一台平板都沒有,環顧手上手機及閱讀器,我大概需要三種充電線。

USB-A To Micro-A (Oasis 2, A5)
USB-A To Type-C 
Type-C To Type-C

2024年10月18日 星期五

不思進取的老人

大概是程式設計師當久了,不太喜歡過早最佳化?

兩年前為了疫情方便早餐店線上點餐才開始使用 LINE PAY,這兩年除了點餐外,大部分都還是用我的悠遊聯名卡,一方面是不喜歡我的手機去接觸外面的事物還要消毒麻煩,二來是悠遊聯名卡每天都要用,放在口袋裡隨時用很方便,再加上已經將悠遊聯名卡裡的信用卡及悠遊卡都歸戶到雲端發票載具,卡片夾背面也貼了一張手機條碼,真的是一張就可以搞定日常生活中的各種事情。

今年年初時信用卡被盜刷了一筆好幾萬的金額,爭議款的紛爭還算好搞定,但之後的換發新卡,所有線上訂閱的資料都要重新設定一遍,補發的信用卡及悠遊卡也要重新設定載具及歸戶,雖然在家用自然人憑證就可以搞定,但還是覺得很麻煩。

知道第三方或是電子支付是用虛擬卡號後,感覺似乎比較不容易再被盜刷了,一直覺得被盜刷都是因為實體而不是線上,畢竟那些線上商店我都一直有在使用,當然這也是很難說(有一說盜刷是被試出卡號,但我很懷疑,要這樣做的前提一定是用網路才好 loop,難道銀行或徵信端都無法擋掉 IP 變成黑名單?就算是直接破解刷卡機在機上重複 loop 嘗試,理論上刷卡機都要配收單系統,應該還是有辦法加入黑名單擋掉才對?)。

再加上這幾個月常停的幾家停車場都陸續調漲一日最高停車金額,對於每次都要加值三四千悠遊卡的我來說,去 ATM 領錢加值的頻率一定會增加!於是便打起悠遊付線上加值的主意了。

這個功能需要額外購買一張超級悠遊卡,還要用身分證加入悠遊付認證,但比起一直領錢加值的循環,這點麻煩還能接受。

以後等悠遊聯名卡裡面的餘額用光後,身上就只會帶一張超級悠遊卡了,反正刷卡用 LINE PAY,日常用悠遊卡,真的不行再拿皮包的信用卡出來即可。

最近在查資料的過程中,才知道以前還有一種 NFC SIM 的功能,也可以當悠遊卡使用,如果是NFC SIM 加信用卡功能似乎也能自動加值?

不過我猜應該是跟悠遊聯名卡一樣,自動加值金額有限,沒有我現在的悠遊付方便?目前似乎只剩中華電信還有這項 NFC SIM 服務?既然已經購買超級悠遊卡了,這個功能只要知道即可。

雖然身為程式設計師,理論上應該要比平常人更容易接收新知,但我似乎是個不思進取的老人,只有等到不方便時,才會考慮上網找資料並改變生活習慣XD

也是到前幾天看了九面的影片後,我才知道 Threads 居然也是臉書出品?我可能只差沒住在山洞裡,不然就是個不折不扣的原始人吧。

P.S 超級悠遊卡加悠遊付的線上加值功能應該是跟 SAMSUNG PAY 差不多,但要三星手機才能使用,三星一直以來不是我的菜。

2024/10/18 後續更新

查了文章後才發現,NFC SIM 算是 1.5 代悠遊卡?似乎要像超級悠遊卡的 2 代悠遊卡才能線上加值。

2024/1019 更新

前一陣子 Youtube 看過的 Super i 貼卡也是屬於超級悠遊卡,不過我本來就不喜歡拿手機去接觸外界裝置,故就算早知道也不會在我的考慮範圍內,話說好像也還沒開賣?

另外,一直想測試 Google Pay 的感應式刷卡功能,是否不用一定要有 GPay Logo 才能使用,據我了解應該是跟信用卡感應支付的原理一樣才對?當然,這只是為了滿足我的好奇心,我還是不會想讓手機去接觸外界裝置,這樣不知道是否算是一種潔癖?

但在加入卡片的過程,常用的兩家信用卡都還要致電客服才能加入,其中一家的盜刷爭議還要用書面通知,另外一家當初沒仔細看條款,個人感覺沒有一般信用卡的盜刷爭議來得便民,於是我也放棄了 Google Pay 的使用。

奇怪的是,好久以前不是使用 Google 帳號就可以把付款方式的信用卡自動成為 Google Pay?記得有時候不想背卡號都是直接用 Google Pay 在網路上付款,難道是我記錯了?

難怪大家罵得要命的超級悠遊卡我卻覺得好用,對於不坐捷運又不是每天都會去超商的我來說,線上加值確實是比自動加值好用多了。

更新完文章沒多久後又發現,好久以前的晶片悠遊卡以及 TPASS 悠遊卡也是可以線上加值,重點 TPASS 悠遊卡只要一百元,幾天前為什麽會先知道超級悠遊卡這個名詞呢?

2024/10/20 更新

還是整理一下好了,避免以後被搞混。

可以使用悠遊付透過手機直接線上加值的悠遊卡如下

01. Super 悠遊卡
02. TPASS 悠遊卡
03. 很久以前的晶片悠遊卡
04. 特殊合作卡,例如敬老卡、學生證卡等等。

如果需要購買,當然是 02 或 03 較划算,只要 100 元,但我不確定現在還買的到嗎?

NFC SIM,Pixel 6 開始就不支援

去年 2023/07/29 購買的 Garmin Instinct 2 手錶有內建悠遊卡,似乎是實體卡,但只有悠遊卡功能,不能用 Garmin Pay。

2024 week 42 新玩意

01. nl tool 自動加上數字編號

之前用 Vim 功能將備份小老婆歌單檔案前面加上數字編號,昨天無意間在鳥哥 sed 教學文章中學到 nl 這一個 tool,不只能加上編號,數字要不要補 0 或是後面要不要加上逗號等,這個 tool 都可以搞定。

原本還以為要用 sed 再組織一次字串好方便加上後面的逗號,沒想到 nl 開發者早就想好,果然 Linux tool 的哲學就是一次只做一件事,但把那件事做好!

nl -n 'rz' -w 2 xxx.txt


02. 還在跟 PAD 奮鬥

大概是這個星期一還是星期二就把兩個星期前主管交辦事項的簡報補充的差不多了,連 PAD CELL 的方向我都找到圖片做補充了。

既然 ORFS 沒有範例,乾脆自己來試看看吧,本來是用 gcd,但這個 chip 實在太小,為了放置 IO PAD 整個面積會變很大,但 core 只佔一咪咪,重點也是會死在 global route,錯誤原因是 congestion 太高。

後來改用 jpeg_encoder,這次的 core 大小就比較合適,話雖如此,但一樣會死在 global route。

今天是難得的休假日,下午外出回來本想先不加 IO CELL,看看 pin 是如何擺放的,我再來決定 IO PAD 的位置,看看這樣是否就能解決問題,沒想到居然看不到 pin?

感覺自己沒招了,ORFS issue 列表都翻爛了也沒有 fu。

2024/11/02 更新

雖然颱風假當天的嘗試還是以失敗告終,但在知道問題出在 netlist 後,隔天終於能對症下藥,也順利的在 gcd 和 jpeg 產出結果

2024年10月12日 星期六

2024 week 41 新玩意

01. Linux Group By 功能

Linux 實在是一個很強大的作業系統,應該是說它的生態系很強大,什麼工具早就有人開發好了,根本不需要你寫半行 code 來解決問題。

就拿最近我在整理的一份 PAD 資料,突然想要做個表格放進簡報裡,regex + sort 取出資料常常在做,但要如何 group by 來加總一時還想不出來,隨便拿個程式語言做這些事當然很簡單,但人會被慣壞,有更簡單的方法當然更好囉。

老樣子,Google 一下,原來這麼簡單,我常用的 uniq 工具就可以了,加上 -c 選項即可。之後再用 sed 取出加總並調整一下順序,就可以在 Power Point 裡面用 "插入 -> 物件 -> Word",然後在跳出來的 Word 浮動視窗貼上 sed 整理好的文字,然後選 "插入 -> 表格 -> 文字轉換成表格",這樣就可以一氣呵成了。


2024/10/16 更新

忘了先前用 sed 取出 Verilog module 的技巧了,這樣才對呀!還要另存 components.txt 太 low 了XD

cat skywater130_coyote_tc.defok | sed -n '/COMPONENTS/,/END COMPONENTS/p' | grep '-' | awk '{print $3}' | sort | uniq -c


02. Tmux

以前就知道 Screen 的替代品 Tmux(嚴格說起來應該是比 Screen 功能還多),但一直沒有機會使用,工作站也沒有這個軟體可以使用,但自從在公司電腦安裝了 WSL2 後,應該是時候試用 Tmux 了。

它跟 Vim 一樣,有很多設定值可以調整,為了跟 Vim 使用體驗一致,除了前置組合按鍵外,應該要讓設定值盡量跟 Vim 看齊。

沒關係,慢慢來即可,畢竟工作環境不是一蹴可幾的事。

2024年10月10日 星期四

忙碌的一天

為了慶祝國家生日,凌晨三點半就興奮的睡不著覺?

打開已經畢業的暗黑 2 重製版玩了一下,說也奇怪,一說畢業後,玩遊戲的感覺都不一樣了,已經沒有之前那樣覺得好玩了,勉強玩了標馬、弓馬、以及暗黑親兒子槌丁後,陪早起的老婆看了一下電視,為了怕中午出門開車危險,又回去睡了快兩個小時,雖然大都是在作夢,體力條還是有稍許的回復XD

之前就一直想換掉客廳的窗簾軌道,20 多年了很多零件早已經生鏽,每週三次的澆花都讓人覺得阿雜。

雖然窗簾有很多種,什麼羅馬簾、蜂巢簾、風琴簾等等,看起來是很好看沒錯,等舊了需要重做就知道,要找人重做不是那麼容易,你得安排時間,就算你想自己 DIY,先不提好不好拆,光拆下來的東西要怎麼丟就是個大問題!

因此我的結論是,如果家裡有 DIY 工具,我覺得 IKEA 簡易的窗簾桿以及環狀窗簾夾是最好的 DIY 選擇,安裝簡易,只有一點要特別注意,IKEA 的窗簾桿組合並未包含螺絲,還好家裡之前有幾顆自攻螺絲,才能順利的繼續的鎖在原本的窗框上,本想直接鎖在牆壁上,但手上的其他螺絲似乎無法應付家裡的石膏牆面,只是把洞越挖越大(也許應該要用膨脹螺絲,但已經懶得出門了),也是因為後來找到自攻螺絲,才毅然決然地改鎖在窗框上。


DIY 前沒先確定附件是否齊全是我犯的第一個錯誤,第二個錯誤則是缺少隨機應變的能力,為了改鎖在窗框上,因此需避開原本的防盜設施,雖然我想應該早就壞了?但為了這個第三點支撐,理論上應該要讓它盡可能的接近中央位置才對,不然窗簾會被第三點擋住而拉不過去XD

還好我本來就不會完全拉滿,算是沒有什麼大礙,真是恭喜老爺,賀喜夫人。

明明裝上新窗簾桿時,還有擦過窗框跟防盜設施,怎麼還是那麼髒XD

一組窗簾桿還有 3 包窗簾掛勾(一包 10 件組)也才 NT $996,之後要換也是很簡單。


拆卸及安裝窗簾還算是最簡單的部分,雖然也搞了一個小時多有,但事後的善後才是最麻煩的,清潔整理就算了,反正本來就是要做的,拆下的窗簾桿及細件要如何回收才是最麻煩的,花了九牛二虎之力才把窗簾桿折成較小寬度,方便社區清潔人員做後續處理。

下午在 DIY 窗簾前,還先整理了上星期六三創下訂,然後今天送來的 Dell 24 吋可調整高度螢幕,這也是我第一次使用 DP port 的螢幕,還知道了之前不知道的上行連接埠(資料上傳到主機)以及下行連接埠的名詞,也算是長了見識,可惜上星期購買有點匆忙,沒注意到螢幕居然沒有喇叭,我還一直以為 HDMI 的螢幕一定會有喇叭呢?


上星期日也新組了一張 IKEA 購買的椅子,IKEA 的東西都還算好組,我應該把 IKEA 我認為好坐的椅子都買遍了吧?雖然家具類會附工具,但還是不太好鎖,這次的椅子螺絲又剛好在邊邊,手上的棘輪工具組需要的空間又比這張椅子的大,還好在工具箱找到一個塑膠套筒,增加摩擦力後,鎖起來果然輕鬆多了,這個是以前的 IKEA 附贈的還是其他的 DIY 家具附的我已經沒印象了?


順便多記錄一些這星期想到該記住的重點XD

無印的這款濕紙巾盒是我看某個家庭主婦的頻道知道的,一試成主顧果然好用,但沒辦法放我常買的 80 抽厚濕紙巾(需要先用掉幾張),今天試買了同牌子的 70 抽,感覺這樣的張數比較適合這個濕紙巾盒。


下面是我用的牙間刷尺寸,每次都會忘記XD


空白的筆記本還是比較好組織想法,不上台北的話,這樣的筆記本我目前只在佳瑪看過,為了這個還要特地上台北購買還是不方便。


前幾個禮拜安裝的庫存廁所崁燈,接腳是快速接頭,就不用纏膠帶纏得那麼辛苦。



應該還有很多要補充,但忙了一天累了,明天還要上班,晚點再看是否有需要補充的注意事項,對上班族來說,家事還真是費工呀XD

2024/10/11 更新

早上上班前一鼓作氣的將家中所有變壓器拍了一遍,之後使用比較方便,畢竟手上還是有好幾台電子書閱讀器,目前確定的是 Google 30W 快充變壓器不能用在我的一些小家電上

Sharp 手機充電器,5V 2A。

倒數第二支 HTC 手機,5V 2A。

我猜應該是 Acer 手機,5V 1A。

買 Pixel 8a 順便購買的充電器,15W 3A、27W 3A、30W 2A。

Google 電視棒,5V 1.5A。

Dell 螢幕 U2424HE-4Y 相關連接孔

目前筆電外接在 port 6,port 9 和 port 11 都接了 USB 線,port 11 只能充電。

因為我用 port 6 接 Dell 筆電,故有傳輸資料功能,因此 port 9 上接的鍵盤及 Type-C 接頭接上的裝置,筆電才能辨識,如果是用 HDMI,我就需要用到 port 8 上行連接埠的功能,將其接到筆電後,才能打通 port 9 的功能。

port 09 - 1 外接鍵盤
port 09 - 2  Type-C 接頭
port 11 - Micro-A 接頭 

至於 port 13 和 port 14 未試,不知是否能跟 port 9 一樣?
隔天測試的結果,port 13、port 14 接上手機都可以辨識

port 13 最高 2A。



Dell 筆電變壓器輸出是 130W

SSD 18 LT 200 BL 18V 鋰電無碳刷充及起子機

數字越大,速度越快(最小鎖緊扭矩、中等鎖緊扭矩、最大鎖緊扭矩)。

金屬等硬質材料,很短的衝擊持續時間,達到最大鎖緊扭矩,數字 3。

木材等軟質材料,更長的衝擊持續時間,數字 1。


SB 18 電鑽

上面是 1 ~ 20 扭矩控制,中間由左至右,分別是鎖螺絲(可以設定 1 ~ 20 扭矩,或是設置中間位置),鑽孔,衝擊式鑽孔,下面則是齒輪級別。

1 齒輪,低速,高扭矩,適合鎖螺絲。
2 齒輪,高速,適合鑽孔。

理論上鑽孔都是最大扭矩,只有鎖螺絲需要調整扭矩。


另外上面這兩隻用的電池是 18V 2.0 Ah,充電器為 ASC 55,充電時間 40 分?