嵌入式系統(tǒng)的發(fā)展有時(shí)會(huì)陷入一種混沌狀態(tài):產(chǎn)品交付被推遲,規(guī)范說(shuō)明也很不完善。Ganssle Group咨詢公司的創(chuàng)始人Jack Ganssle發(fā)現(xiàn),相同的問(wèn)題不僅在他經(jīng)營(yíng)嵌入式工具公司的15年中一直困擾著他,而且也困擾著其他人。他的經(jīng)歷激發(fā)他將解決問(wèn)題當(dāng)作自己的使命。
Jack Ganssle,
Ganssle Group咨詢公司的創(chuàng)始人
Jack現(xiàn)在更像是一位到處傳播Carnegie Mellon軟件工程學(xué)院開(kāi)發(fā)的軟件能力成熟度模型(CMM, Capability, Maturity and Model)思想的“傳教士”。他堅(jiān)信,每個(gè)設(shè)備都是一個(gè)嵌入式系統(tǒng),而每項(xiàng)應(yīng)用也都是一種嵌入式應(yīng)用。在他看來(lái),系統(tǒng)的設(shè)計(jì)、構(gòu)建和按期交付都并非恒定不變,因此需要細(xì)致的規(guī)劃和充分的溝通。
Jack發(fā)現(xiàn),開(kāi)發(fā)人員與其使用的工具之間存在一種排斥關(guān)系。他表示,我們必須對(duì)工具的不滿意度引起高度重視。程序缺陷、技術(shù)支持的不充分、代碼膨脹(code bloat)及其他各種問(wèn)題都在嵌入式領(lǐng)域加劇了這種排斥情緒。然而,工具開(kāi)發(fā)商即便在危境中也往往忽略了這一點(diǎn)。
Jack還發(fā)現(xiàn)了另一個(gè)需要引起大多數(shù)設(shè)計(jì)人員重視的事實(shí),即代碼復(fù)雜度增長(zhǎng)的速度往往比代碼的大小更快。他表示,只有一些天才的工程師能按預(yù)期準(zhǔn)時(shí)交付不超預(yù)算并符合規(guī)范要求的高質(zhì)量產(chǎn)品。
熱衷于解決棘手問(wèn)題
在他提供咨詢的每個(gè)項(xiàng)目中,Jack總能找到困擾項(xiàng)目的關(guān)鍵問(wèn)題所在。他總是能針對(duì)每個(gè)癥結(jié)提供不同尋常的實(shí)際建議并獲得集成硬件和軟件設(shè)計(jì)的更有效代碼和硬件設(shè)計(jì)。
在他擔(dān)任CMP Media公司嵌入式系統(tǒng)編程雜志的技術(shù)編輯時(shí),非常熱衷于傳授一些能使嵌入式系統(tǒng)設(shè)計(jì)藝術(shù)完美化的準(zhǔn)則,從而避免設(shè)計(jì)缺陷。他不僅從各個(gè)角度撰寫(xiě)了許多有關(guān)嵌入式系統(tǒng)開(kāi)發(fā)的文章和著作,而且還在世界各地舉行的電子和軟件研討會(huì)和會(huì)議上發(fā)表演講。
他的著作和業(yè)務(wù)簡(jiǎn)報(bào)涉及的領(lǐng)域涉及故障查找、實(shí)時(shí)性能問(wèn)題、上司與職員的關(guān)系以及構(gòu)建創(chuàng)造性工作環(huán)境的一些技巧。他最近出版的第四本著作《固件手冊(cè) 2004(The Firmware Handbook 2004)》不僅適合于學(xué)生,也可以作為經(jīng)驗(yàn)豐富的工程人員的綜合性參考。其他三本與嵌入式開(kāi)發(fā)的著作分別是:與Michael Barr合著的《The Embedded Systems Dictionary)》、《The Art of Designing Embedded Systems》和《The Art of Programming Embedded Systems》。
豐富的實(shí)際經(jīng)驗(yàn)
Jack的工程職業(yè)生涯充滿了成功和失敗。孩提時(shí)代,他開(kāi)始對(duì)電子技術(shù)產(chǎn)生了濃厚的興趣。他在家中的地下室搭建了一個(gè)電子實(shí)驗(yàn)室,在這里,他將一些剩余的電子器件重新組裝為新設(shè)備。Jack還組建了一臺(tái)能實(shí)際運(yùn)行的12位數(shù)字設(shè)備,該設(shè)備使用了數(shù)百個(gè)與向量面板(wired on)連接的TTL IC,而每個(gè)芯片的引腳也直接通過(guò)色彩鮮明的電話線焊接在一起。16歲時(shí),他已經(jīng)擁有了業(yè)余無(wú)線電(Ham Radio)執(zhí)照。
第一代微處理器問(wèn)世時(shí),Jack已成為一名工程師。大學(xué)時(shí)代,他參加了8位微處理器8008的開(kāi)發(fā)。
幾年之后,Jack與一位朋友一起創(chuàng)立了他的第一家咨詢公司。他們?yōu)椴煌目蛻魳?gòu)造定制的嵌入式系統(tǒng),其中包括白宮的一個(gè)安全系統(tǒng),該系統(tǒng)使用了一百多個(gè)緊耦合的8位CPU。之后,他們又開(kāi)發(fā)了各種測(cè)量氧氣、溫度、鹽濃度、水流及其他參數(shù)的深海探測(cè)器。這些探測(cè)器必須由一種很小的電池RCA 1802提供動(dòng)力,這也是當(dāng)時(shí)唯一的CMOS處理器。以后,他們又構(gòu)造了一套也使用1802測(cè)量水果在遠(yuǎn)洋運(yùn)輸中成熟過(guò)程的系統(tǒng)。接著,Jack開(kāi)發(fā)了一臺(tái)12噸重的測(cè)量?jī)x,該儀器在火車軌道上移動(dòng)時(shí),可以測(cè)量出白熱狀態(tài)下鐵軌的厚度,該系統(tǒng)使用了一個(gè)與各種8位微處理器接口的PDP-11微型計(jì)算機(jī)。在這些經(jīng)歷中,Jack掌握了屏蔽、差分傳輸以及構(gòu)造可以忽略暫態(tài)響應(yīng)的智能軟件等方面的技能。
由于現(xiàn)金流的短缺,Ganssle只能白天從事咨詢,晚上編寫(xiě)專有軟件。他的第一套軟件MTBASIC是專為Z80開(kāi)發(fā)的支持多任務(wù)處理的基本編譯器。為了開(kāi)發(fā)該平臺(tái),Jack利用40個(gè)字符寬的電視顯示屏以及控制器為離散邏輯半PCB的軟盤(pán),構(gòu)建了Z80 CP/M。該編譯器面向嵌入式應(yīng)用,不僅能產(chǎn)生類似ROMed的原始編譯代碼,還具有良好的人機(jī)接口。Jack以每套30美元的價(jià)格,賣(mài)出了10000套MTBASIC。
隨著1981年IBM推出PC,世界也隨之將注意力轉(zhuǎn)向微處理器領(lǐng)域。Jack購(gòu)買(mǎi)了一臺(tái)早期PC并利用8088匯編語(yǔ)言對(duì)MTBASIC進(jìn)行重編碼,然后他發(fā)現(xiàn)了一個(gè)潛力市場(chǎng)。
盡管產(chǎn)品非常暢銷,但廣告費(fèi)消耗了公司的全部利潤(rùn),所以Jack不得不繼續(xù)從事他的咨詢工作。他為一家需要通過(guò)干電池驅(qū)動(dòng)數(shù)據(jù)采集系統(tǒng)的政府客戶開(kāi)發(fā)了一套簡(jiǎn)單的ICE系統(tǒng)。由于那時(shí)候還沒(méi)有CPU開(kāi)發(fā)工具,所以這個(gè)小小的ICE系統(tǒng)還是帶來(lái)了很多驚喜。
隨著Eureka的問(wèn)世,Jack也開(kāi)始從事仿真器開(kāi)發(fā)。雖然NSC800與Z80和8085非常相似,但這確實(shí)也是Ganssle擴(kuò)展產(chǎn)品線的大好時(shí)機(jī)。NSC800的硬件設(shè)計(jì)相對(duì)簡(jiǎn)單,只需要采用17個(gè)IC,而仿真處理器也是由ICE控制的CPU。仿真器的單價(jià)為595美元,雖然產(chǎn)品的材料和人工費(fèi)僅為100美元,但廣告費(fèi)和企業(yè)經(jīng)常性開(kāi)支仍然使Jack飽嘗現(xiàn)金短缺之苦。
隨著時(shí)間的推移,Jack也掌握了嵌入式工具市場(chǎng)的基本規(guī)律:保持高產(chǎn)品價(jià)格。由于每項(xiàng)應(yīng)用都截然不同,因此客戶支持的費(fèi)用相當(dāng)巨大。
“飛行旅程”
真正使Jack Ganssle在各方面感受到生命價(jià)值的“旅程”是他永不停息的奮斗精神,無(wú)論當(dāng)他的第一家咨詢公司碰到資金短缺問(wèn)題,還是他在試驗(yàn)中遭受挫折。他明白,美好的未來(lái)正在不遠(yuǎn)的地方等著他,而且他清楚地知道自己最終將要到達(dá)的“目的地”。
Jack就像是嵌入式“大?!敝械囊晃恍掖嬲?他曾經(jīng)為了環(huán)游世界而放棄工作,但最終還是意識(shí)到了自己對(duì)電子領(lǐng)域的巨大熱情。在該領(lǐng)域工作30年后,Jack意識(shí)到嵌入式革命不愧為二十世紀(jì)最杰出的成果之一。
作為嵌入式領(lǐng)域的資深專家,Jack也為自己的專業(yè)知識(shí)而感到自豪。他在嵌入式系統(tǒng)的豐富經(jīng)驗(yàn)使他下定決心幫助其他人解決嵌入式領(lǐng)域的難題。
作者:Kathryn S. Gerardino
EETimes-Asia
(電子工程專輯)