《香江:從破產電器廠到全球巨頭》第162章 林知夏的世界(1)

作者:量子溯光·1天前

曙光一號進入物理設計階段之後,林知夏的作息變得更加不可預測。他有時候連續好幾天不出實驗室,困了就在角落那張舊藤椅上靠一會兒——那張藤椅是福伯從傳達室搬上來的,椅面上還留著福伯多年來坐出的凹印,正好能容下他瘦削的肩胛骨。他蜷在裡面睡覺的姿勢和他蹲在原型板前除錯時序時一模一樣:膝蓋蜷到胸口,一隻手枕在腦袋下面,另一隻手還攥著記號筆,筆尖的墨跡已經在指縫間幹成了極淡的藍色。醒來之後他會先盯著天花板看幾秒——那是他在矽谷養成的習慣,用來在腦子裡重新載入昨晚畫到一半的時序圖——然後翻身坐起來走到白板前,拿起板擦把某一條資料通路擦掉,重新畫。

福伯每天晚上把搪瓷缸端上來放在他手邊,第二天早上來收缸子時發現茶只喝了一小口,剩下的全涼透了,缸底凝著一圈深褐色的茶漬。他不忍心倒掉,就把涼茶端回傳達室,在小煤爐上重新熱一遍,再端上去。方潔瑛有好幾次半夜起來給啟明餵奶,從走廊經過時看到實驗室門縫裡漏出的燈光,知道那是林知夏在熬他的時序圖。她在傳達室放了一隻搪瓷缸,每晚臨走前往裡面泡好普洱茶,讓福伯半夜端上去。那隻搪瓷缸的缸身上貼著一小截膠帶,膠帶上用鉛筆寫著“林”,字跡和她畫在收音機說明書上的紫荊花標籤一模一樣。有一次她半夜經過實驗室,發現門虛掩著,裡面傳出一陣極輕的敲擊聲——是他用指節在桌上打著節拍,嘴裡反覆唸叨同一個數字,像一個卡在某個迴圈裡的節拍器。她站在門口聽了一會兒,沒有推門進去,只是回畫室把啟明哄睡之後,又去傳達室往那隻搪瓷缸裡續了些熱水。

他在實驗臺下面放了幾個紙箱,裡面全是畫廢的稿紙。有些是延遲槽邏輯走了死衚衕——他在分支預測單元裡嘗試了一種新的歷史表更新策略,畫了好幾版門級邏輯之後發現這條路在物理實現上會佔用太多電晶體,不得不放棄。有些是流水線衝突點算錯了週期數——資料前推路徑從執行單元回寫到譯碼級時,他漏算了一級緩衝的時鐘延遲,導致整條路徑的時序偏移了不到一個週期,波形在模擬器裡跑了很久才發現。有些乾脆是他自己不滿意推翻了重來——他會在完成某一版設計後隔幾天再回頭看,發現自己當初的某些判斷可以更簡潔,然後毫不猶豫地擦掉。他不扔這些廢稿,每一張都按失敗原因分類壓在紙箱裡,用橡皮筋分捆成小束,每捆最上面貼一張標籤,標註失敗型別和日期。阿強有一次去實驗室送新一批磁鼓底座的抽檢資料,看到他在整理這些廢稿,問這些垃圾紙留來做乜。他從紙箱裡抽出一張被揉皺又攤平的稿紙,上面畫著一個已經被推翻的延遲槽填充邏輯,旁邊用紅筆密密麻麻寫滿了失敗原因分析。他說以後可以給新人看——看別人是怎麼犯錯的,比看教科書有用。教科書只告訴你正確的答案,不告訴你每一個錯誤長什麼樣。阿強把那頁稿紙接過來看了半天,說他繞線圈的時候也是這麼做的——每次繞斷都記在本子上,斷口形狀、繞線角度、虎口鬆緊,全記下來。他把稿紙還給林知夏,說你們這些畫晶片的和我們繞線圈的,原來用的是同一本筆記。

他的世界和車間裡其他人的世界在物理空間上只隔著一扇實驗室的門,但在感知上完全不同。阿強每天在實驗臺前逐只抽檢磁鼓底座的接觸壓力曲線,示波器螢幕上那條平穩的正弦波無聲跳動,他能在幾百次重複測量中聽出注塑機液壓泵每一次壓力脈動引起的極細微的波形漂移;方潔瑛在設計工作室裡對著新一批磁帶標籤的配色方案反覆比對炭筆色卡,她能分辨出同一種天藍色在啞光ABS和亮面聚苯乙烯上呈現出的色差,能把這種色差用炭筆在試色卡上逐級標註;劉師傅在注塑機旁邊除錯曙光一號外殼模具的第一版水路線,他能用指尖摸出模具表面溫度的變化,溫差只需要極小的幅度他就能感覺到,然後據此調整冷卻水路的閥門開度。這些工作林知夏都知道——他每天從實驗室窗戶能看到阿強蹲在實驗臺前的背影,能聽到劉師傅在注塑機旁邊喊師弟拿扳手的聲音,能在深夜經過設計工作室時看到方潔瑛工作臺上那盞還沒熄滅的檯燈。但他很少主動走進車間,就像阿強很少主動走進實驗室一樣。不是冷漠,是各自在自己的精度世界裡入了定。這種入了定的狀態在旁人看來近乎孤僻,但他們彼此都知道——你不來打擾我,是因為你也在自己的示波器螢幕前盯著同一條永遠不會靜止的波形。

唯一的例外是阿強那枚Q值八十九的中周變壓器。有一次他在白板上畫中斷優先順序矩陣時卡住了——矩陣裡幾個中斷源被分配到不同優先順序,但有一個來自音訊處理器的中斷訊號無論如何都找不到合適的優先順序位置:放在高優先順序會干擾顯示控制器的幀重新整理時序,放在低優先順序又會導致音訊輸出出現間歇性卡頓,不管怎麼排都會和其他訊號產生衝突。他在白板前站了很久,把優先順序矩陣擦掉重畫,畫到第三次還是卡在同一個位置。然後他放下記號筆,推門走出實驗室,在走廊裡來回踱步。他的腳步聲在空蕩蕩的走廊裡迴響,踱到阿強實驗臺前時停住了。

示波器螢幕上那條平穩的正弦波正無聲跳動著——每一個週期都分毫不差,波峰與波谷的間距精確得像是用尺子畫出來的,波形的上升沿和下降沿完全對稱,沒有任何可察覺的過沖或振鈴。他盯著那條波形看了很久——不是在看它的電氣特性,是在看它的節奏。然後他忽然開口,聲音很低,像是自言自語。他說你看這條線——每一個週期都分毫不差,是因為你的每一圈銅絲都排得足夠緊密,匝與匝之間的分佈電容被你壓到了最低。中斷訊號也一樣——每一個優先順序視窗都是固定的時鐘週期,要壓到最低才能不衝突。音訊中斷和顯示中斷之間的視窗應該像你的線圈匝間距一樣,不留任何多餘的空隙。

阿強沉默了片刻,把探頭拔下來放在桌上。“你把那個中斷訊號畫出來我看看。”兩個人在實驗臺旁邊鋪開一張空白稿紙,阿強用他繞了無數圈中周變壓器的手勢把幾個中斷訊號的時序波形逐條畫出來。他的手腕極穩,鉛筆在紙面上畫出的每一條線都筆直而均勻——這是多年繞線圈練出來的肌肉記憶,銅絲在骨架上走直線時手不能有一絲一毫的抖動。他在旁邊逐條標註對應的優先順序視窗和時鐘週期數,畫到音訊中斷和顯示中斷時停了一下——兩個中斷訊號之間的空隙剛好夠一個最小優先順序視窗,但這個視窗太小了,只要音訊中斷稍微延遲就會撞上顯示中斷的邊緣。阿強把這個空隙用鉛筆重重塗了一下,說這裡繞不過去——不是優先順序不夠,是兩個訊號撞在了同一拍上。他對著那個被塗黑的空隙看了很久,然後抬頭看著林知夏,說他在繞線圈的時候也遇到過類似的問題。兩條銅絲靠得太近,分佈電容會干擾訊號。解決辦法不是把兩條銅絲拉開——拉開意味著線圈匝數不夠,Q值會掉。解決辦法是在兩條銅絲之間加一層極薄的絕緣紙,讓它們物理上隔絕,但間距不變。他說這個空隙應該是一樣的道理——兩個中斷訊號之間的視窗就是那兩條靠得太近的銅絲,仲裁邏輯就是那層絕緣紙。

林知夏盯著那個被塗黑的空隙,忽然拿起筆在旁邊畫了一個新的小方框——仲裁控制器。他說讓仲裁控制器在這兩個中斷之間強制插入一級緩衝,把同時到達的訊號錯開一拍。這個方法不是從晶片設計教科書上學來的——教科書上會說中斷優先順序應該按固定優先順序排序,不會告訴你當兩個中斷訊號在時間軸上撞在一起時應該怎麼拆。是從中周變壓器線圈匝間絕緣的分佈電容控制原理裡類推出來的——當物理間距無法增加時,增加介質隔離。他在中斷優先順序矩陣里正式加入了仲裁控制器模組,在方框旁邊用鉛筆注了一行字,字型和他畫架構圖的筆跡一樣簡練。這張草稿後來被他夾進曙光一號的設計檔案,和那些被反覆翻閱磨得起毛邊的時序圖放在一起。阿強回到實驗臺前繼續測下一批磁鼓底座,示波器螢幕上那條平穩的正弦波還在無聲跳動。他拿起探頭夾上下一隻底座,忽然對著螢幕自言自語:“芯都系一樣嘅道理——唔畀佢哋撞埋一齊。”

窗外九龍塘的夜色已經完全沉降,方潔瑛半夜起來給啟明餵奶時從走廊經過,看到實驗室門縫裡漏出的燈光裡有一個瘦削的身影正站在白板前,手裡握著一支紅筆,在中斷優先順序矩陣旁邊畫下最後一個仲裁訊號。她低頭看了看懷裡已經睡著的啟明——他今晚沒有抓她的頭髮,只是把臉埋在她肩窩裡,呼吸均勻而輕柔。她輕輕推開門把那隻搪瓷缸裡的涼茶換成新泡的熱普洱,然後帶上門走了。他在白板前一直站到啟明星升起——窗外那顆最亮的星正低懸在飛鵝嶺上方,光度比往日更亮,把他投在牆上的影子拉得又長又直,和白板上那些被反覆擦改的架構圖疊在一起。實驗室裡的燈還亮著,他拿起紅筆在那道剛畫完的仲裁訊號旁邊寫下今天的日期,然後走到實驗臺前把那隻搪瓷缸端起來喝了一口——茶還是熱的,陳皮香從喉底慢慢回甘。他把缸子放在阿強那枚Q值八十九中周變壓器旁邊,看著窗外那顆啟明星。從這裡到白板只隔著一個走廊,但這兩個世界正在被同一個原理連在一起。他把記號筆放回筆筒,回到白板前繼續畫下一條資料通路。樓下注塑機還在有節奏地運轉,劉師傅在模具側面那塊白漆記錄板上寫下新一行保壓引數。曙光一號的時鐘樹正在這張白板上悄然生長,每一根枝杈都指向同一顆星。

猜你喜歡

同題材或同分類的其他作品。