首頁 分類 排行榜 閱讀記錄 我的書架

第569章 板卡模擬

2026-05-15 作者:做夢都不放過

獵獵秋風,吹著紅星所院牆上的五星紅旗。

1969年的國慶節,呂辰依然忙碌。

一大早,呂辰就到了辦公室。

把殘茶倒進紙垃圾桶,重新捏了一撮鐵觀音續上水,門就被推開了。

萬人手裡抱著一摞圖紙,用麻繩捆著,碼得整整齊齊,他抱得有些吃力,進門的時候側著身子才擠過來。

李工跟在後面,手裡同樣抱著一摞圖紙,二人把圖紙放在呂辰辦公桌上,摞起來足有半人高。

萬人敵直起腰,長長地吐了一口氣,從兜裡掏出一塊手帕擦了擦額頭上的汗。

呂辰起身,給二人倒了一杯水。

萬人敵接過喝了一口,從帆布包裡拿出一個牛皮紙檔案袋,鼓鼓囊囊的。

“呂工,板卡的設計圖,全部完成了。”

他把檔案袋往桌上一放,解開綁繩,從裡面抽出一沓圖紙,A0幅面的硫酸紙,折得四四方方,邊角處用紅藍鉛筆標註著修改痕跡。

“電源板、時鐘板、匯流排背板、I/O板、儲存板,五大類,23個型號,全部設計完畢。圖紙、物料清單、裝配圖,一樣不缺。”

他如釋重負:“呂工,這活兒,總算交了。”

呂辰走到桌前,翻開最上面一張圖紙。

那是一塊電源板的設計圖,A0幅面,硫酸紙,墨線描得工工整整。

整流橋、濾波電容、DC-DC變換器、過壓保護電路、電流取樣電路……

每一個元件都用標準符號畫出,引腳標註清晰,走線流暢,密密麻麻的線條從圖紙的左上角延伸到右下角,像一座微縮城市的交通圖。

他看了一會兒,又翻開另一張,是一塊運算板的設計圖。

這塊板子比電源板複雜得多,16個晶片插座整齊排列成四乘四的矩陣,每個插座周圍密密麻麻地環繞著去耦電容、電阻排、測試點。

資料匯流排從插座邊緣引出,匯聚成一組粗線,通往板卡邊緣的金手指。

地址匯流排、控制匯流排各自分開,在板卡的不同層之間穿梭。

“李工,辛苦了。”呂辰把圖紙放下,抬起頭。

“應該的。”李工擺了擺手,從兜裡掏出煙,給萬人敵和呂辰各發了一根。

“現在圖都畫完了,這些板卡,我們都反覆檢查過,但自己畫的圖,自己看不出毛病,得找別人看,得用東西測。”

萬人敵把煙點上,吸了一口,慢慢吐出來:“李工說得對。圖紙畫得再漂亮,不上機跑一遍,心裡沒底。手工畫圖,線寬夠不夠、間距夠不夠、有沒有虛焊、有沒有短路,全靠眼睛看。眼睛有時候會騙人。”

呂辰端著搪瓷缸子喝了一口水,他腦子裡在轉。

板卡設計圖出來了,按流程,下一步應該是送紅星軋鋼廠的掐絲琺琅生產線加工。

不過,呂辰有些新的想法,在生產之前,能否上星河CAD跑一遍模擬驗證。

板卡不是晶片,但比晶片更復雜。

晶片裡是幾百個門、幾千個電晶體,邏輯相對規整。

板卡上是大電流的電源線、高速的資料匯流排、敏感的時鐘訊號、脆弱的復位線,還有那些離散的電阻電容、電感變壓器,每一個元件都有自己的脾器。

手工畫圖,畫得再仔細,也難免有疏漏。

電源線畫細了,IR Drop超標,遠端晶片電壓不足;訊號線間距畫小了,串擾毛刺,資料傳錯;去耦電容放遠了,高頻噪聲濾不掉,晶片工作不穩定。

這些問題,眼睛看不出來,萬用表量不出來,只有上機跑模擬才能發現。

“李工、萬工,圖紙先放我這兒。”呂辰把搪瓷缸子放下,“板卡的事,不能急。我安排一下,上星河CAD跑一遍模擬。沒問題了,再送加工。”

萬人敵眼睛一亮:“呂工,星河CAD能排上號?”

呂辰點點頭:“我跟宋教授協調過了,工業計算機已經送流片,其他任務往後推五天,從明天開始,專門跑板卡模擬。”

“能測?”

“能,我已經和汪教授溝透過,他派工程師過來幫助配置驗證環境。”

李工臉上露出了一絲緊張:“四天,夠嗎?”

“夠不夠,跑了才知道。”呂辰合上筆記本,“下午,汪教授的工程師就到。李工,你把所有板卡的數字化設計檔案整理好,按型號分類,統一命名。萬工,你那邊把《元器件庫》和《測試向量庫》的最新版調出來,一起拷到星河CAD上。”

“行,我們這就去!”

萬人敵和李工也不多話,提著包就走。

下午兩點,萬人敵和李工一人拿著一個灰色的金屬盒子,就來到紅星所。

盒子比飯盒大一圈,表面是銀灰色的,邊緣有散熱孔,能看見裡面墨綠色的電路板。

“呂工,板卡的設計資料,全在這兒了。”

萬人敵把金屬盒子往桌上一放,發出沉悶的一聲響。

他掀開盒蓋,露出裡面的電路板。

那是板卡設計系統的儲存模組。

一塊掐絲琺琅工藝的陶瓷板,比A4紙小一圈,上面整整齊齊地插著八顆儲存晶片,銀灰色的陶瓷封裝,表面印著白色的絲印字。

晶片周圍環繞著一圈去耦電容,密密麻麻,像列隊計程車兵。

李工把另一個盒子也放在桌上,掀開蓋:“這是備份。兩塊板子,資料一模一樣。一塊跑模擬,一塊留著,萬一出了問題,還有個底。”

呂辰低下頭,仔細看了看那塊儲存板。

走線在釉面下若隱若現,銅線泛著溫潤的金色光澤。

金手指邊緣光亮,鍍層均勻,每個焊點都飽滿光滑。

他伸出手,輕輕摸了摸其中一顆晶片的封裝表面。

光滑,平整,沒有毛刺。

“資料都在裡面?”

“都在。”萬人敵從兜裡掏出一張折了好幾折的紙,展開,上面密密麻麻寫著目錄,“所有板卡型號的數字化設計檔案,包括元件位置、網路連線、走線幾何資訊,全部存在這八顆晶片裡。格式按照汪教授定的規範,直接能匯入星河CAD。”

呂辰看了萬人敵一眼:“萬工,直接從板卡設計系統上摳儲存板,這主意誰想的?”

萬人敵把煙叼在嘴角:“錄磁帶太慢,存二維卡怕要存幾百張,打紙帶也能打一屋子,時間緊急,我直接把儲存板摳過來,插到星河CAD的儲存櫃上,資料直接調,省時省力。”

李工在旁邊補充了一句:“而且磁帶容易失真,紙帶容易出錯。儲存晶片不一樣,資料寫在裡面,不會丟不會錯。”

呂辰點了點頭,合上盒蓋,把兩個金屬盒子摞在一起,夾在腋下。

“走,去機房。”

三人出了辦公室,下樓往星河CAD的機房走。

機房的門口,一個穿著白襯衫的年輕工程師已經等在那裡了。

三十出頭,瘦高個,戴一副黑框眼鏡,手裡夾著一個黑皮本子。

這是汪涵教授的學生,衛知南,程式設計院的骨幹,星河CAD的核心開發者之一,負責儲存介面模組的微程式編寫。

雖然年輕,但已經是星河CAD系統最熟悉的人之一了。

“衛老師,等久了吧?”呂辰迎上去。

“剛到。”衛知南推了推眼鏡,目光落在呂辰腋下的兩個金屬盒子上,“汪教授讓我過來配合你們。這就是板卡設計系統的儲存板?”

“對。”呂辰把盒子遞給他,“資料全在裡面,衛老師,能不能直接掛到儲存櫃上?”

衛知南接過盒子,開啟看了一眼,又關上,點了點頭。

“能,午馬機的儲存模組都是一樣的,只需要插入中央儲存櫃的擴充套件槽就可以了。”

“行。那先去看看。”

推開機房的門,衛知南走到儲存櫃前面,蹲下來,開啟一個副櫃的門。

櫃門內側貼著一張電路圖,是儲存櫃背板的走線圖,密密麻麻,看了讓人眼花。

他用手指在背板上點了幾下:“這個儲存櫃有十六個插槽,現在只用了八個,還剩八個插槽空著。”

他把板卡設計系統的儲存板從盒子裡取出來,插到儲存櫃背板的一個空插槽上,擰緊螺絲。

“上電試試。”

衛知南走到管理員終端前,敲了一行命令。

DB> MOUNT DEVICE

螢幕上一行字跳出來。

DEVICE MOUNTED. READING DIRECTORY…

幾秒後,目錄顯示出來了。

五大類,23個型號,527塊板卡的目錄,整整齊齊。

萬人敵站起來,湊到螢幕前看了看,眼睛亮了。

“成了。”

李工在旁邊搓了搓手,臉上露出如釋重負的表情。

呂辰敲了一行命令,隨便調出一塊板卡的設計檔案目錄。

DB> LIST

螢幕上一行行檔名跳出來:

POWER_V1_——112KB

POWER_V1_——86KB

POWER_V1_——234KB

POWER_V1_——178KB

POWER_V1_——165KB

POWER_V1_——12KB

資料都在,文字格式,每一行都是一個元件、一條連線、一個座標引數。

沒有圖形,只有數字和文字。

呂辰點了點頭。

“衛老師,這兩天先把環境搭好。後天一早開始跑模擬。我把清單列一下。”

他從兜裡掏出筆記本,翻開,上面用鋼筆工工整整寫了幾行字。

“第一,匯入板卡設計檔案和元件庫。資料已經在儲存櫃裡了,明天直接調。但元件庫的關聯要確認,每顆晶片、每個電阻電容的電氣模型,要從《元器件庫》裡調出來,跟設計檔案裡的元件標號一一對應。”

衛知南記下:“元件庫關聯校驗,明天跑模擬前先做一遍。”

“第二,配置模擬引數。”呂辰繼續念,“溫度設三檔,常溫25度,高溫85度,低溫零下40度。電源電壓設標稱值正負5%兩檔。訊號翻轉率設20%和100%兩檔。這些引數要寫成配置檔案,放在儲存櫃的根目錄下,每個模擬任務呼叫同一份配置,保證條件一致。”

“第三,設定測試向量。萬工,《測試向量庫》帶來了嗎?”

萬人敵從檔案袋裡抽出一本冊子,遞給衛知南。

衛知南接過冊子翻了翻,每一條測試向量都有編號、功能描述、輸入輸出定義、預期結果,條目清晰,格式規範。

他翻到最後一頁,是一張總表,列著所有測試用例的編號和對應的板卡型號。

他把冊子放在桌上:“明天匯入系統,自動跑就行。我寫一個批處理微程式,按順序載入測試向量,不用手動一條一條敲。”

“第四,”呂辰豎起第四根手指,“問題記錄和結果輸出。模擬過程中發現的問題,自動記錄到日誌檔案,按嚴重程度分級。跑完之後,生成彙總報告,列印出來。每一條失敗或警告,至少要輸出:板卡型號、網路名或元件標號、實測值、閾值、偏差百分比。”

衛知南點了點頭,又補了一句:“還得再加一個斷點續跑。板卡模擬比晶片模擬複雜,一次跑完可能要幾個小時。如果跑到一半出了問題,中斷了,從頭再跑浪費時間。我寫一個微程式,每跑完一個測試項,自動儲存現場狀態。中斷之後,從斷點繼續跑,不浪費已經跑完的時間。”

呂辰眼睛一亮:“這個好。衛老師,多久能寫好?”

衛知南推了推眼鏡:“這套微程式我之前在晶片模擬上寫過,移植過來改幾個引數就行。”

“那就謝謝衛老師了。”

呂辰他轉過身,看著萬人敵和李工。

“萬工、李工,後天跑模擬的時候,你們倆在邊上看著。系統輸出的資料,你們要過一遍。有些問題,系統不一定能判斷出來,但你們憑經驗能看出來。”

萬人敵把煙點上,吸了一口:“行,我後天一早過來,帶著《元器件庫》的參數列,一一核對。”

李工也跟著點了點頭:“我把圖紙帶來,攤在旁邊。系統報一個資料,我對一個圖紙。哪裡不對,當場圈出來。”

呂辰又轉向衛知南。

“衛老師,跑模擬的時候,能不能把結果實時列印出來?不是等跑完了再看報告,是跑的過程中,每完成一個測試項,就把結果打出來。哪條線串擾超標、哪個節點電壓跌落,一目瞭然。”

衛知南想了想,從鍵盤上抬起頭。

“能。每完成一個測試項,自動生成一行輸出,寫到電傳打字機上。”

“行。那就這樣。衛老師,這兩天辛苦一下,後天一早我們過來,開始跑。”

衛知南點了點頭,又轉回螢幕前,繼續敲程式碼。

呂辰走到萬人敵和李工旁邊,發了一圈煙。

“萬工、李工,後天是關鍵。500多塊板卡,能一次跑通最好,跑不通也正常。咱們一塊一塊地過,不急。”

萬人敵眯著眼睛:“電源板、時鐘板、匯流排背板、I/O板、儲存板,五塊核心板卡。這五塊跑通了,剩下的就是修修改改。這五塊跑不通,後面的就不用跑了。”

呂辰點了點頭:“那就先跑這五塊。其他的,等這五塊定版了再說。”

三人又聊了幾句,萬人敵和李工先走了。

呂辰站在白板前,把那五個型號又看了一遍。

然後他轉過身,走到衛知南身後。

衛知南正在寫配置檔案。螢幕上一行行的引數:

TEMP=-40

VOLTAGE=NOM,NOM+5PCT,NOM-5PCT

TOGGLE_RATE=0.2,1.0

VECTOR_DIR=

OUTPUT_DIR=

=600

呂辰看了一會兒:“衛老師,辛苦了。今晚早點回去休息,明天還要盯一天。”

衛知南搖了搖頭:“不回去了,機房湊合一宿。斷點續跑的那個微程式還沒寫完,寫完再說。”

呂辰看了他一眼,從兜裡掏出兩包煙,放在桌上。

“煙放這兒了,你抽。”

衛知南笑了笑,把煙收進兜裡,轉回螢幕前,繼續敲。

10月3日,早上七點,呂辰就到了機房。

衛知南正坐在管理員終端前面,面前攤著一本開啟的黑皮本子,本子上密密麻麻寫滿了微程式指令。

搪瓷缸子裡的茶冒著熱氣,茶葉梗浮在水面上,散發出一股茉莉花香。

他眼睛下面有一圈青黑,但精神還好,手指搭在鍵盤上,隨時準備敲。

萬人敵和李工一人手裡拿著一個筆記本,腋下夾著那本厚厚的《測試向量庫》,在靠牆的位置坐下,翻開本子,把鋼筆帽擰開,擱在本子旁邊。

“開始吧。”呂辰走到管理員終端前,衛知南站起來,把位置讓給他。

呂辰坐下來,深吸一口氣。

螢幕上的游標一閃一閃的,等著他敲命令。

他的手指搭在鍵盤上,停了一瞬。

527塊板卡,幾十萬個焊點,幾百萬條連線。

手工畫了幾個月,現在要在計算機上跑一遍驗證。

跑通了,送加工;跑不通,改,改完再跑,跑到通為止。

他敲下第一行命令。

DB> RUN SIMULATION /TEMP:25

螢幕上一行綠色的字元跳出來。

SIMULATION STARTED. 16 NODES ALLOCATED. ETA

十六臺午馬機嗡嗡地響了起來,指示燈從綠色變成黃色,表示正在計算。

中央儲存櫃的指示燈也開始閃爍,讀寫的頻率越來越快,像某種急促的心跳。

呂辰靠在椅背上,手指在桌面上輕輕叩著。

衛知南站在他身後,雙手抱在胸前,眼睛盯著螢幕上的進度條。

萬人敵端著搪瓷缸子,一口一口地喝著茶,目光在螢幕和筆記本之間來回移動。

機房裡安靜得能聽見空調的嗡嗡聲和磁帶機偶爾轉動的機械聲。

進度條走了3%,停了。

螢幕上跳出一行警告:WARNING: NODE 07 TIMEOUT. CHECK NETWORK CONNECTION.

呂辰眉頭一皺。

衛知南已經走到第七臺午馬機前面,蹲下來,檢查網線插頭。

“鬆了。”他把插頭拔下來,重新插緊,聽到“咔嗒”一聲,確認鎖釦卡住了,才站起來。

“再試一次。”

呂辰敲了一行命令:

DB> RESUME SIMULATION

螢幕上,第七臺午馬機的狀態從紅色變成黃色,又從黃色變成綠色。

進度條繼續往前走。

5%,10%,20%。

進度條走到32%,螢幕上跳出一行字元:INFO: IR DROP DETECTED ON POWER_V1. NODE 12 VOLTAGE= (NOMINAL ). THRESHOLD=.

萬人敵手裡的搪瓷缸子停了一下,慢慢放到桌上。

呂辰敲了一行命令,調出詳細資訊。

DB> DISPLAY IRDROP POWER_V1 NODE12

螢幕上一行行資料跳出來:

NODE: KL-PWR_04

X_COORD: 2450

Y_COORD: 1870

6.4

STATUS: FAIL

萬人敵站起來,湊到螢幕前,把那幾行資料看了兩遍。

他的嘴唇抿成一條線,眉頭擰成一個疙瘩。

“,比標稱值低了6.4%。規格書要求電壓波動不超過正負5%。這顆晶片離電源入口最遠,電源線畫細了。”他的聲音不大,但每個字都很清楚,“不解決,這塊板子焊好了也不能用。遠端晶片電壓不足,會間歇性宕機,而且極難復現。”

李工翻開筆記本:“得加寬電源主幹道,遠端增加去耦電容(100μF+0.1μF並聯)。”

呂辰敲了一行命令,把這個問題記錄到日誌裡。

DB> LOG ISSUE POWER_V1 “IR DROP ON KL-PWR_04, VOLTAGE ” SEVERITY:3

然後他敲了CONTINUE,模擬繼續。

進度條走到58%。

這一次跳出來的是一行警告。

ALERT: CROSSTALK ON CLOCK_V1. SIGNAL LINE CLK_OUT_4 =,= (THRESHOLD )

衛知南“嘶”了一聲,嘴裡唸叨著:“,超過閾值。這已經不是警告了,是警報。”

呂辰敲了一行命令,調出這條線的詳細資訊。

DB> DISPLAY CROSSTALK CLOCK_V1 CLK_OUT_4

螢幕上一行行資料跳出來:

SIGNAL: CLK_OUT_4

TYPE: CLOCK

DATA_BUS_7

TYPE: DATA

SPACING:

THRESHOLD:

STATUS: FAIL

萬人敵湊過來看了一眼,搖了搖頭。

“間距只有毫米,要求是0.5毫米。兩條線靠得太近,資料線翻轉的時候,耦合電容在時鐘線上感應出的毛刺。在TTL電平裡,兩伏就算高電平了。這個毛刺會被觸發器誤認為是有效時鐘沿,導致系統不定時宕機,而且極難復現。”

李工在筆記本上又寫了一行:“得加大間距至,中間插入地線隔離。”

呂辰把這個三級問題也記錄到日誌裡。

進度條走到71%,螢幕上跳出一大片字元,一行一行往下滾。

WARNING: TIMING VIOLATION ON STORAGE_V1. A12 DELAY= (REQUIRED )

WARNING: TIMING VIOLATION ON STORAGE_V1. D7 SETUP= (REQUIRED )

WARNING: TIMING VIOLATION ON STORAGE_V1. CS PROP_DELAY= (REQUIRED )

呂辰敲了一行命令,調出第一條時序違例的詳細資訊。

DB> DISPLAY TIMING STORAGE_V1 A12

螢幕上一行行資料跳出來:

NET: A12

FROM:

TO:

LENGTH: um

MIN_LENGTH: 9800um

DELAY_CALC:

DELAY_REQ:

SLACK:

STATUS: FAIL

萬人敵把搪瓷缸子往桌上一墩,茶水濺出來幾滴。

“這條地址線從儲存控制器到遠端晶片,走了微米,最短路徑只有9800微米,繞了將近一倍。為了繞開那些電容電阻,自動佈線器把關鍵路徑繞遠了。延遲超標3.4納秒,時序收不住。”

李工在筆記本上寫:“這個要手動拉直,得重新佈局周圍元件。”

衛知南在旁邊補了一句:“不只這一條。儲存板有好幾條地址線和資料線都有類似問題。佈線演算法的目標函式是‘總連線長度最短’,不是‘單條關鍵路徑延遲最小’。為了省幾毫米的普通線,把關鍵路徑繞遠了。演算法層面的問題。”

呂辰把這些警告一條一條地記錄到日誌裡。

進度條走到89%。

這一次跳出來的雖然不算警告,但也不是好訊息。

INFO: REFLECTION ON IMPEDANCE=135Ω (TARGET 120Ω)

呂辰調出詳細資訊。

DB> DISPLAY REFLECTION

NET:

135Ω

120Ω

DEVIATION: 12.5%

STATUS: PASS (MARGINAL)

萬人敵看了一眼:“終端匹配電阻選大了。135歐姆,目標是120歐姆。反射係數,不算大,但在高頻訊號裡會有影響。100兆赫茲以上的訊號,這種反射會累積,造成訊號質量下降。”

李工在筆記本上寫:“這個要更換電阻,控制在±5%以內。”

進度條走到95%,97%,97%,螢幕上的字元猛地一刷,整屏綠色。

SIMULATION COMPLETED.

TOTAL TIME

PASS: 342

FAIL: 18

WARNING: 27

萬人敵盯著那行數字看了好幾秒,緊緊皺著眉頭。

18個FAIL。27個WARNING。

衛知南敲了一行命令,生成彙總報告。

DB> PRINT

印表機在角落裡咔嗒咔嗒地響了起來。

針頭打在複寫紙上,一行一行地輸出。

紙帶從印表機裡慢慢吐出來,軟塌塌地垂下來,拖在地上。

呂辰走過去,撕下第一頁。

那是一張總表,密密麻麻列著所有失敗和警告的測試項,按嚴重程度排序。

最上面是SEVERITY:3(致命)的,兩條。

POWER_V1: IR DROP on KL-PWR_04, (THRESHOLD )

CLOCK_V1: CROSSTALK on CLK_OUT_4, (THRESHOLD )

萬人敵把那頁紙接過去看了兩遍:“這兩個三級,必須改。不改,板子焊好了也是廢品。”

李工點了點頭,在筆記本上把這兩個問題圈了起來,旁邊畫了兩個大大的感嘆號。

衛知南繼續翻報告。

SEVERITY:2(嚴重)的5條。SEVERITY:1(一般)的11條。

呂辰把列印出的報告從頭到尾翻了一遍,每翻一頁停一下,目光在那些數字上掃過:“萬工、李工,這兩塊板子,今天改完。明天一早再跑一遍模擬。透過了,送加工;通不過,再改。其他的板子,一級和二級的問題,也一併改完。”

萬人敵點點頭:“行,我馬上去通知所裡改,明天之前改完。”

李工站起來,把鋼筆插回兜裡,筆記本夾在腋下。

“萬工你在這邊看著,我回去看著他們改。”

呂辰道:“李工不要急,所裡先改著,咱們一鼓作氣,把模擬走一遍,然後再回去盯著。”

接下來,大家又開始了其他板卡的模擬。

直到深夜,白天,又一個深夜。

A−
A+
護眼
目錄 分享