第三十四章:成功的做出了最小系統

投票推薦 加入書籤 小說報錯

  臘月二十三,北方小年。

  京城下起了入冬以來最大的一場雪。

  雪花紛紛揚揚,一夜之間就給整個城市,蓋上了厚厚的白毯。

  清晨推開門,蔚秀園的院子裡,積雪沒過了腳踝。

  謝建軍剷出一條小路,又把屋頂的積雪清理了,免得壓壞瓦片。

  回到屋裡時,林曉芸已經做好了早飯,小米粥,饅頭,還有一小碟醬豆腐。

  「今天還去研究室?」林曉芸問道。

  「去,趙建國應該已經到了。」謝建軍喝了口熱粥說道:「昨天我們把最小系統的電路圖定稿了,今天開始焊接。」

  「天這麼冷……」

  「研究室有暖氣,不冷。」謝建軍看看窗外說道:「就是路不好走。你別出門了,菜我中午帶回來。」

  吃完飯,他穿上最厚的棉襖,圍上林曉芸織的圍巾,戴上棉手套,推著自行車出門。

  雪還在下,自行車根本騎不了,謝建軍想了想,又把自行車給推回家,乾脆走著去了。

  到研究室時,趙建國已經在了。小伙子裹著軍大衣,正用萬用表檢查剛送來的元器件。

  「謝哥,你來了!」趙建國很興奮的說道:「東西都齊了!你看,萬能板、晶片、阻容元件,還有新烙鐵!」

  工作檯上攤著各種工具:30瓦內熱式電烙鐵,松香,焊錫絲,吸錫器,尖嘴鉗,斜口鉗,鑷子……。

  這些都是趙建國從家裡帶來的,有些是他父親的,有些是他自己攢錢買的。

  「開始吧。」謝建軍說著脫下外套,捲起袖子。

  第一件事是布局。他們在萬能板上畫出主要晶片的位置,Z80在中間,左邊是地址鎖存器(74LS373),右邊是數據總線緩衝器(74LS245),上面是解碼器(74LS138),下面是時鐘電路和復位電路。

  「晶振用6MHz的,行嗎?」趙建國問道。

  「行,Z80最高支持4MHz,6MHz有點超,但應該能工作。」謝建軍用鉛筆在板上做標記。

  「復位電路要可靠,上電復位和手動復位都要有。」

  「明白!」

  布局花了兩個小時。兩人反覆推敲,不斷調整,既要考慮信號流向,又要考慮走線方便。

  這是硬體設計的基本功——布局決定成敗。

  中午,雪停了。謝建軍買菜回家吃飯。

  下午開始焊接,這是趙建國的主場。

  他拿起烙鐵,沾了點松香,焊錫在烙鐵頭上熔成銀亮的小球。

  「我先焊電源和地線。」趙建國說道。

  電源和地線是電路的基礎。趙建國在板的四角焊上電源插針,然後用粗導線把電源和地線,連接到每個晶片的位置。

  動作熟練,焊點飽滿圓潤,像機器焊出來的一樣。

  「好手藝。」謝建軍忍不住讚嘆道。

  「練的。」趙建國不好意思地笑笑道:「以前焊收音機,焊壞了要賠零件,不敢不仔細。」

  焊完電源,開始焊晶片插座。這是細緻活,四十腳的Z80插座,要保證每個引腳都焊牢,又不能短路。

  趙建國屏住呼吸,一個一個地焊。

  謝建軍也沒閒著。他按照電路圖,用細導線連接各個晶片的引腳。

  這是最繁瑣的部分,一根線接錯了,整個系統就可能不工作。

  他每接一根線,就在電路圖上做個標記,確保萬無一失。

  研究室里很安靜,只有烙鐵的滋滋聲,和兩人偶爾的交流。

  「A8線接這裡?」

  「對,接74LS138的A輸入端。」

  「這個上拉電阻是10K吧?」

  「是,接在數據總線上。」

  窗外的雪又下起來,但屋裡暖意融融。

  爐子上坐著水壺,冒著熱氣。張明偶爾過來看一眼,又回去忙自己的活。

  天黑時,最小系統的焊接完成了。

  一塊綠色的萬能板上,密密麻麻地布滿了晶片、電阻、電容和導線,像一幅抽象畫。


  中間是Z80,周圍是各種邏輯晶片,晶振像個小銀柱,立在角落。

  「能行嗎?」趙建國有些忐忑的問道。

  「試試才知道。」謝建軍也很緊張。

  硬體調試,第一次上電是最揪心的時刻——可能成功,可能冒煙,可能什麼都沒發生。

  他們先做靜態檢查。用萬用表測每個電源引腳對地電阻,確保沒有短路。

  然後檢查每個晶片的電源和地是否接對。

  最後,順著電路圖,一根線一根線地核對。

  「都對了。」趙建國放下萬用表。

  「上電。」謝建軍深吸一口氣說道。

  趙建國接上穩壓電源,這是從物理系借的,可調輸出電壓。

  他先調到4.5V(低於標準的5V),這樣即使有問題,損失也小。

  插上電源線。

  按下開關。

  電源指示燈亮了。

  沒有冒煙,沒有異味。

  兩人對視一眼,鬆了口氣。至少,沒炸。

  「測一下各點電壓。」謝建軍說道。

  趙建國用萬用表,測各個晶片的電源引腳:4.5V,正常。測晶振兩端:有振盪波形,正常。

  測復位引腳:高電平,正常。

  「靜態正常。」趙建國匯報導。

  「好,下一步,動態調試。」謝建軍從包里拿出一片EPROM說道:「這是我昨晚寫的監控程序,只有256位元組,最簡單的,讓地址總線循環計數,這樣我們可以用示波器看波形,判斷CPU是否在工作。」

  「你會寫機器碼?」趙建國震驚的說道。

  「嗯,手編的。」謝建軍把EPROM插進燒錄器,這也是借的,物理系有。

  他把程序燒進去,然後小心地插到板子的ROM插座上。

  重新上電。

  接上示波器。探頭點在地址總線的最低位上。

  如果CPU工作,這個引腳應該會有方波信號。

  按下復位鍵。

  示波器的屏幕亮起來。一條綠色的掃描線,然後……跳動了!

  雖然波形有些毛刺,但確實在跳,頻率大約是晶振的六分之一。

  「工作了!」趙建國激動地喊道。

  謝建軍也長舒一口氣。最小系統,點亮了。

  這意味著Z80能跑,時鐘正常,復位正常,總線正常。

  雖然這離真正的計算機還差得遠,沒有內存,沒有I/O,沒有顯示器,但這是從零到一的一步。

  就像嬰兒的第一聲啼哭,證明生命開始了。

  「再看看其他信號。」謝建軍移動示波器探頭,檢查地址總線、數據總線、控制信號。

  波形都正常,雖然有些時序上的小問題,但都在可接受範圍內。

  「成功了!」趙建國揮舞著拳頭說道:「我們做出了最小系統!」

  「只是第一步。」謝建軍也很高興,但很清醒的說道:「接下來要加內存,加I/O,寫真正的監控程序。路還長。」

  「那也值了!」趙建國看著那塊板子,像看著自己的孩子:「這是咱們自己做出來的!」

  窗外的雪不知什麼時候停了。夜幕降臨,研究室的燈光透過窗戶,在雪地上投出溫暖的光暈。

  謝建軍看了看表,晚上七點了。

  「今天到此為止。收拾一下,明天繼續。」

  「好!」

  兩人小心地斷開電源,把板子用防靜電袋包好,鎖進柜子。

  收拾工具,打掃衛生。做完這一切,已經八點了。

  「我請你吃飯。」謝建軍說道,「慶祝一下。」

  「不用不用……」

  「走吧,食堂應該還有飯。」

章節目錄