第五章 工程浩大
一個(gè)軟件工程師,不一定通曉硬件,特別是高級(jí)語言工程師,基本上是脫離硬件的存在,軟件工程師根本不需要知道硬件是怎么執(zhí)行的,只要程序?qū)懞弥?,通過對(duì)應(yīng)的程序編譯器翻譯成機(jī)器語言。
而一個(gè)硬件工程師,特別是硬件架構(gòu)工程師,對(duì)軟件必須要有很深的了解,他需要知道軟件編譯器的執(zhí)行機(jī)理,要么更改硬件芯片設(shè)計(jì),要么修正軟件編譯,為了,就是芯片有更好的執(zhí)行效率。
王岸然對(duì)C語言很是精通,以及對(duì)C語言的擴(kuò)展C++也有很深的研究,但對(duì)于用C/C++來編譯大型的軟件,對(duì)他來說還是頭一次,挑戰(zhàn)還是很大。
不過對(duì)于理工科來說,很多東西都是相通的,芯片的設(shè)計(jì)首先要確定芯片的架構(gòu),就如建設(shè)一個(gè)工廠,首先要確認(rèn)生產(chǎn)什么東西,產(chǎn)量設(shè)計(jì)多少,只有先明確這些,才可以確定工廠的位置,布局。
而設(shè)計(jì)一款芯片設(shè)計(jì)軟件,首先是需求,C/C++語言面向?qū)ο蟮脑O(shè)計(jì)是一個(gè)很好的工具。
每個(gè)晶體管包含數(shù)個(gè)信息,一位置信息,也就是晶體管顯示出來的位置,二晶體管的類型,三晶體管的狀態(tài),四晶體管的激發(fā)條件,這也是最重要的,涉及到晶體管模擬測(cè)試。
這是微觀方面,而在宏觀架構(gòu)上,輸入輸出結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu),模擬測(cè)試結(jié)構(gòu),邏輯門模型,通用寄存器,邏輯整數(shù)浮點(diǎn)運(yùn)算結(jié)構(gòu),緩存結(jié)構(gòu),指令集結(jié)構(gòu),每一個(gè)都是相對(duì)獨(dú)立的整體,可以相互通訊數(shù)據(jù),但不需要知道對(duì)方是如何工作。
這些邏輯電路都需要一行行代碼寫出來。
“現(xiàn)在要是手下有100號(hào)熟手,我可以在一個(gè)月內(nèi)把測(cè)試版本弄出來?!?p> 沒錢,沒人,王岸然很無奈。
第二天一早,王岸然來到清大研究生院。
“我說岸然,你這次玩大了啊,怎么著,可真應(yīng)了你的名字,道貌岸然?。 ?p> 王岸然看到好兄弟賈國防也是激動(dòng),狠狠的擁抱一下,對(duì)他來說,已經(jīng)十幾年沒見過他了。
賈國防一把推開道:“岸然,你這是怎么了,怪怪的,是不是發(fā)生什么事?好好的出國留學(xué),多少人做夢(mèng)都想的事被你一把推了,霸氣啊,來,喝口水,陪兄弟好好說說!”
王岸然看著賈國防穿著大褲衩,大夏天的,把襪子擱在暖氣片上,屋子里,還是熟悉的味道。
掩著鼻子,道:“是兄弟就別問,啥也別說,我來是請(qǐng)你幫個(gè)忙,把上機(jī)卡給我用一下?!?p> “不會(huì)吧,老兄,我每個(gè)月只有30個(gè)機(jī)時(shí),你要給我用光了,我的論文豈不是抓瞎。”
口里這樣說著,手上還是毫不猶豫的把上機(jī)卡給了王岸然。
30個(gè)機(jī)時(shí)肯定不夠用,好在王岸然對(duì)IBM390這臺(tái)小型機(jī)有足夠的研究,其內(nèi)存機(jī)制有一個(gè)小漏洞,連續(xù)讀取時(shí)有大概率會(huì)造成內(nèi)存溢出,從而可以輕松獲得管理員權(quán)限。
到時(shí)候不光可以將計(jì)時(shí)停止,還可以在硬盤里設(shè)置一塊專用區(qū)域,要知道1993年的移動(dòng)存儲(chǔ)就是軟盤和光盤,自己每次操作完電腦,不可能把數(shù)據(jù)全部帶走,上機(jī)的時(shí)候再帶回來。
IBM390小型機(jī),不光可以寫軟件,作為國內(nèi)首屈可數(shù)的頂尖高校,清大也是全國第一批接入國際互聯(lián)網(wǎng)的高校,王岸然還記得數(shù)個(gè)國外知名高校ftp網(wǎng)址,里面有著最新的芯片技術(shù)論文,以及硬件標(biāo)準(zhǔn),這也給王岸然編寫軟件提供了便利。
不過,王岸然顯然低估了獨(dú)立編寫一套大型軟件的難度,十天后,王岸然寫出來三萬多條代碼,這還是借助于他超高的手速,和參考前世芯片設(shè)計(jì)成熟的模板,而整體架構(gòu)的設(shè)計(jì)才完成10%,這樣下來,光架構(gòu)設(shè)計(jì)就需要100天的時(shí)間,再加上更加繁雜的功能嵌入,調(diào)試,單憑他一個(gè)人,就是三五年也不一定寫完。
這個(gè)時(shí)間,讓王岸然有些絕望,這三五年可是芯片發(fā)展的黃金時(shí)間,錯(cuò)過了,想要規(guī)避那些芯片巨頭的專業(yè)壁壘,站在同一個(gè)舞臺(tái)上較量,難如登天。
不說CPU行業(yè)雙雄爭霸,即便是顯卡領(lǐng)域,也在兩三年后,進(jìn)入八國爭雄,包括3dfx,英偉達(dá),ATI等一大批顯卡廠商,你方唱罷我登場(chǎng),各領(lǐng)風(fēng)騷數(shù)個(gè)月,就是Intel也在這個(gè)時(shí)候湊上了熱鬧。
時(shí)間耗不起,這一天,王岸然敲完寄存器代碼最后一行,編譯成功之后,將程序存盤,來到賈國防宿舍。
“我真是佩服你,岸然,外面都鬧翻天了,你都不為所動(dòng),這份定力,我賈國防不如你,不過我更奇怪的是,我30個(gè)機(jī)時(shí)的上機(jī)卡,你是怎么上了一個(gè)月,這你得教教我。”
王岸然恩了一聲,繼續(xù)吃賈國防從食堂帶回來的飯。頭腦里還思考著怎么提高工程進(jìn)度。
待到賈國防又喊了幾次后才回過神。
“恩,怎么了?”
“我說你到底有沒有聽我講話???岸然,是不是有什么事?我一直沒問你,你用那么多機(jī)時(shí)是干什么,對(duì)了,你父母來燕京了,你怎么一直避著他們。”
“你說我爸媽來燕京了?”
“你不知道?”
“沒人跟我說啊!”
賈國防一拍腦袋,隨手扯下腳上的襪子,一扔,襪子穩(wěn)穩(wěn)的落在暖氣片上。
“我還以為你知道了,學(xué)校的人找不到你,還尋了我,問有沒有見到過你,我們是兄弟我怎么可能暴露你的行蹤,當(dāng)然說沒見過了,聽說他們還報(bào)了公安……”
王岸然一陣氣惱,道:“你傻啊,我這半個(gè)月一直住你這,怎么一個(gè)字也不提?!?p> 賈國防摸了摸腦袋,道:“我以為你是故意的,你一來的時(shí)候不就說,什么事都不要跟你講,講的話就不是兄弟,我以為這都是你計(jì)劃好的事呢!”
王岸然一陣苦笑,這理科男一個(gè)個(gè)都是直腦筋,賈國防更是一根筋,但他也是全班在學(xué)術(shù)上成就最高的幾個(gè)之一。
在前世,賈國防在清大碩博連讀之后,到劍橋大學(xué)自動(dòng)化專業(yè)深造,回國之后在清大留校任教。
他的特點(diǎn)就是不修邊幅,怎么方便怎么來,經(jīng)常穿著大褲衩、拖鞋就去上課,到了網(wǎng)絡(luò)時(shí)代,被他的學(xué)生拍了照放到網(wǎng)上,被戲稱為農(nóng)民教授。
當(dāng)然,這都是以后的事了……