北京航空航天大學(xué) 何立民
?
從現(xiàn)代計(jì)算機(jī)視角看嵌入式系統(tǒng)(4)
——嵌入式系統(tǒng)40年發(fā)展史
北京航空航天大學(xué)何立民
從Intel公司1976年的MCS-48誕生算起,微控制器已有40年的發(fā)展史。微控制器是微處理器應(yīng)智能化控制需求演化出來(lái)的一個(gè)分支,突出了它的控制功能,應(yīng)稱之為微控制器(MCU)。微控制器具有單芯片形態(tài)、嵌入式應(yīng)用方式,歷史上曾廣泛稱它為單片機(jī),現(xiàn)在,許多人都稱它為嵌入式系統(tǒng)。
Intel公司1971推出的第1個(gè)微處理器4004雖然沒(méi)有實(shí)用化,卻是現(xiàn)代計(jì)算機(jī)發(fā)展史的里程碑事件。如果說(shuō)圖靈機(jī)是現(xiàn)代計(jì)算機(jī)的第1個(gè)里程碑事件,那么,微處理器誕生便是第2個(gè)里程碑事件。圖靈機(jī)奠定了現(xiàn)代計(jì)算機(jī)的思想理論基礎(chǔ),微處理器實(shí)現(xiàn)了圖靈機(jī)人工智力內(nèi)核的夢(mèng)想,其后便是現(xiàn)代計(jì)算機(jī)40年飛速發(fā)展的時(shí)代。
現(xiàn)代計(jì)算機(jī)的第3個(gè)里程碑事件,是Intel公司對(duì)通用微處理器與嵌入式處理器的探索。Intel是同時(shí)從事通用微處理器與嵌入式處理器探索并取得成功的公司。其在通用微處理器領(lǐng)域的貢獻(xiàn)眾所周知,在嵌入式處理器領(lǐng)域,雖然許多公司推出眾多微控制器產(chǎn)品,但只有Intel公司的MCS-51成為微控制器的經(jīng)典體系,影響至今。
Intel公司最后一個(gè)仍可稱之為里程碑事件的行為,是MCS-51的開(kāi)放與割舍。有人為Intel公司對(duì)MCS-51的割舍感到惋息,實(shí)際上這卻是Intel公司的英明之舉。事實(shí)證明,在放棄MCS-51后,Intel公司在通用微處理器領(lǐng)域迅速取得成功,并壟斷了全球的PC機(jī)市場(chǎng)。
從圖靈機(jī)到微處理器,從微處理器到通用處理器與嵌入式處理器兩大分支,現(xiàn)代計(jì)算機(jī)有其自身的發(fā)展規(guī)律。從圖靈機(jī)到電子計(jì)算機(jī),完成了圖靈機(jī)的理論探索,微處理器誕生后才找到實(shí)用化的理想道路。微處理器誕生后,迅速形成兩大分支的發(fā)展態(tài)勢(shì),使現(xiàn)代計(jì)算機(jī)開(kāi)始了蓬勃的發(fā)展道路。如果Intel公司當(dāng)年不放棄MCS-51,專注于通用微處理器,也許無(wú)法擊退競(jìng)爭(zhēng)對(duì)手AMD,MCS-51也不會(huì)迅速成長(zhǎng)為80C51公共主流系列。Intel的貢獻(xiàn)使人類社會(huì)受益。
嵌入式系統(tǒng)這一詞語(yǔ)被頻繁使用還是20世紀(jì)90年代的事。嵌入式系統(tǒng)發(fā)展史應(yīng)從微控制器誕生講起,因?yàn)榍度胧较到y(tǒng)主要是微控制器系統(tǒng)。
除了智慧、內(nèi)核、集群等基本特點(diǎn)外,微控制器還有單機(jī)形態(tài)、嵌入方式、對(duì)物理對(duì)象的感知與控制等應(yīng)用上的特點(diǎn)。了解這些特點(diǎn)有助于理解嵌入式系統(tǒng)的發(fā)展史。
從應(yīng)用的視角,可以用粗略的線條將40年微控制器的發(fā)展史劃分為3個(gè)大的時(shí)代,即單片機(jī)時(shí)代、嵌入式系統(tǒng)時(shí)代、物聯(lián)網(wǎng)時(shí)代。
2.1單片機(jī)時(shí)代
在微控制器誕生后最初的20年,是微控制器的單片機(jī)時(shí)代。微控制器誕生后,迅速進(jìn)入電子技術(shù)領(lǐng)域,成為傳統(tǒng)電子系統(tǒng)智能化改造的利器。電子工程師是微控制器應(yīng)用的主流群體,他們習(xí)慣性地將微控制器看成是單個(gè)芯片的智能器件,稱之為單片機(jī)(單片微控制器或單片微型計(jì)算機(jī))。事實(shí)上,在傳統(tǒng)電子系統(tǒng)智能化改造中,所有單片機(jī)都體現(xiàn)為嵌入式應(yīng)用。這一時(shí)期,由于電子工程師單打獨(dú)斗,缺乏計(jì)算機(jī)的理論基礎(chǔ)與計(jì)算機(jī)工程方法,微控制器也較原始,工程師應(yīng)用開(kāi)發(fā)水平不高,主要是匯編級(jí)的軟件編程,很少使用操作系統(tǒng)。
2.2嵌入式系統(tǒng)時(shí)代
從20世紀(jì)90年代中期開(kāi)始,微控制器應(yīng)用進(jìn)入到嵌入式系統(tǒng)時(shí)代。隨著傳統(tǒng)電子系統(tǒng)智能化改造日漸火爆,眾多計(jì)算機(jī)界人士開(kāi)始介入單片機(jī)領(lǐng)域。由于計(jì)算機(jī)人士的不斷增多,高級(jí)語(yǔ)言、操作系統(tǒng)、集成開(kāi)發(fā)環(huán)境、計(jì)算機(jī)工程方法逐漸普及。計(jì)算機(jī)界人士不習(xí)慣“單片機(jī)”稱謂,更愿意使用嵌入式系統(tǒng)一詞,致使“嵌入式系統(tǒng)”稱謂流行至今,可以看出,嵌入式系統(tǒng)時(shí)代是電子技術(shù)與計(jì)算機(jī)技術(shù)交叉融合的發(fā)展時(shí)代。此后,人們習(xí)慣性地將微控制器系統(tǒng)稱作嵌入式系統(tǒng),有些業(yè)內(nèi)專家認(rèn)為“單片機(jī)”片面突出單片形態(tài),“嵌入式系統(tǒng)”片面突出嵌入式應(yīng)用,建議改名為智能電子系統(tǒng),但智能系統(tǒng)又易于與產(chǎn)品系統(tǒng)混淆。
2.3物聯(lián)網(wǎng)時(shí)代
在經(jīng)歷了20年的單片機(jī)時(shí)代、近15年的嵌入式系統(tǒng)時(shí)代后,微控制器及其應(yīng)用技術(shù)日趨成熟。嵌入式系統(tǒng)經(jīng)歷了單機(jī)物聯(lián)、分布式物聯(lián)、總線物聯(lián)、局域物聯(lián)網(wǎng),將互聯(lián)網(wǎng)推進(jìn)到物聯(lián)網(wǎng)后,嵌入式系統(tǒng)便從以往的獨(dú)立產(chǎn)業(yè)進(jìn)入到物聯(lián)網(wǎng)的應(yīng)用服務(wù)時(shí)代。嵌入式系統(tǒng)成為物聯(lián)網(wǎng)、大數(shù)據(jù)、云計(jì)算等大科技中的一個(gè)成員。
微控制器與通用計(jì)算機(jī)都源于微處理器,但它們的體系結(jié)構(gòu)和演化道路卻截然不同。通用計(jì)算機(jī)完全在通用微處理器的演化道路上前行;微控制器則經(jīng)歷了探索、完善、百花齊放、產(chǎn)業(yè)轉(zhuǎn)型4個(gè)發(fā)展階段。與此同時(shí)出現(xiàn)了微控制器(Microcontroller Unit)、嵌入式系統(tǒng)(Embedded System)的演化歷程。
3.1微控制器的探索
最早的微控制器探索,應(yīng)該是1974年仙童半導(dǎo)體公司的F8系列。F8并非單片形態(tài),它是由8位CPU與3851(1 KB ROM、定時(shí)/計(jì)數(shù)器和兩個(gè)并行I/O口)兩個(gè)芯片構(gòu)成,確立了微控制器數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器分開(kāi)的哈佛結(jié)構(gòu)。由于此時(shí)的仙童公司處于低谷時(shí)期,F(xiàn)8系列沒(méi)有得到進(jìn)一步完善。
其后,眾多的半導(dǎo)體廠家開(kāi)始了微控制器的探索,其主導(dǎo)思想是單芯片的內(nèi)核化探索,即在微處理基礎(chǔ)上,設(shè)計(jì)出用于智能化控制的單芯片計(jì)算機(jī)。這一時(shí)期出現(xiàn)了兩種不同的探索道路,即與通用微處理器兼容的嵌入式微處理器和獨(dú)創(chuàng)的單片微控制器。
與通用微處理兼容的嵌入式微處理器的典型代表是1978年Motorola公司推出的6801系列。6801與通用微處理器MC6800兼容,它將MC6800系列的6800(CPU)+6875時(shí)鐘+6810(128 B RAM)+2×6830(1 KB ROM)+1/2并行I/O 口6821+1/3(定時(shí)/計(jì)數(shù)器)+6805(串行I/O口)整合成一個(gè)可以用于控制的單芯片微型計(jì)算機(jī)。
1976年,富有創(chuàng)造精神的Intel公司獨(dú)辟蹊徑,開(kāi)始了全新體系結(jié)構(gòu)的單芯片微控制器的探索,推出了MCS-48系列。在獲得成功后,迅速完善到MCS-51,使其成為微控制器的經(jīng)典體系結(jié)構(gòu)。
3.2微控制器完善至經(jīng)典體系
在探索階段,仙童公司的F8后繼無(wú)力,Motorola公司的6801系列并不理想,具有全新微控制器體系結(jié)構(gòu)的MCS-48獲得成功后迅速完善到MCS-51,確立了用于智能化控制的單芯片專用體系結(jié)構(gòu)。在這個(gè)專用體系結(jié)構(gòu)中,采用了數(shù)據(jù)空間與程序空間獨(dú)立的哈佛結(jié)構(gòu)。哈佛結(jié)構(gòu)保證了被固化的軟件不受病毒侵襲;完善了總線結(jié)構(gòu),包括內(nèi)部16位尋址的兩個(gè)獨(dú)立空間的8位并行總線,以及用于外部通信的串行通信總線、用于外部擴(kuò)展的并行總線、用于外部交互的I/O端口;完善了用于控制的指令系統(tǒng),突出了控制功能,增加了位操作指令;所有功能單元,包括后續(xù)可能擴(kuò)展的功能單元,采取了特殊功能寄存器SFR的集中管理模式,方便了微控制器外部系統(tǒng)配置與系統(tǒng)擴(kuò)展的應(yīng)用要求。
圖1描述了MCS-51微控制器系統(tǒng)的經(jīng)典體系結(jié)構(gòu)。
圖1 MCS-51微控制器系統(tǒng)的體系結(jié)構(gòu)
微控制器是在嵌入式微處理器基礎(chǔ)上,在內(nèi)部總線支持下,通過(guò)外圍功能單元擴(kuò)展而成,SoC化是其主要發(fā)展趨勢(shì)。微控制器有4個(gè)與外部交互的接口通道:前向通道、后向通道與物理對(duì)象相連,是物理對(duì)象感知與控制的交互接口;交互通道,是實(shí)現(xiàn)人-機(jī)交互的接口;信息通道,是與其他應(yīng)用系統(tǒng)交互的通信接口,用于實(shí)現(xiàn)微控制器的多機(jī)通信。
3.3完善了微控制器的應(yīng)用環(huán)境
MCS-51問(wèn)世后,不僅為用戶提供了完善的體系結(jié)構(gòu),而且還提供了完善的應(yīng)用環(huán)境。Intel為用戶提供的應(yīng)用環(huán)境有:滿足不同應(yīng)用的3種供應(yīng)狀態(tài),即程序指令的掩膜狀態(tài)、ROM燒寫(xiě)狀態(tài)與EPROM燒寫(xiě)狀態(tài);用于產(chǎn)品開(kāi)發(fā)的ICE在線仿真器(ICE-51);用于匯編語(yǔ)言程序設(shè)計(jì)的宏匯編ASM-51;用于用戶程序管理的實(shí)時(shí)任務(wù)操作系統(tǒng)iRMX-51。另外,為適應(yīng)分布式多機(jī)系統(tǒng)通信需要,還衍生出具有位總線(BIT BUS)的RUPI-44系列(8051+串行通信接口單元,支持HDLC/SDLC協(xié)議)微控制器。
這些優(yōu)異的應(yīng)用環(huán)境使電子工程師們能迅速?gòu)膫鹘y(tǒng)電子系統(tǒng)時(shí)代邁進(jìn)智能電子時(shí)代。
Intel公司在完善了MCS-51后,錯(cuò)誤地認(rèn)為應(yīng)該向16位微控制器進(jìn)軍,便和著名的電器商Philips公司合作,探索16位微控制器。由于理念上的差異,導(dǎo)致兩者分道揚(yáng)鑣。Intel公司推出了16位微控制器MCS-96;Philips公司為滿足智能化電器產(chǎn)品的應(yīng)用需求,著力于提高M(jìn)CS-51應(yīng)用水平。分手后,Intel公司同意向Philips公司免費(fèi)開(kāi)放MCS-51,受免費(fèi)開(kāi)放政策影響,眾多半導(dǎo)體公司參與到MCS-51體系結(jié)構(gòu)深度開(kāi)發(fā)中,將MCS-51推進(jìn)到眾多半導(dǎo)體公司參與開(kāi)發(fā)的80C51時(shí)代。
80C51時(shí)代中有幾件值得提及的大事件,即Philips等公司大力提升微控制器功能,Atmel公司將微控制器推進(jìn)至Flash ROM時(shí)代,以及20世紀(jì)末Cygnal公司對(duì)80C51脫胎換骨的改造。
4.1半導(dǎo)體廠家大力提升微控制器功能
半導(dǎo)體廠家在推動(dòng)80C51不斷進(jìn)化中,主要完成的重大工作有:滿足嵌入式應(yīng)用要求的眾多外圍功能集成,如WDT、PWM、ADC、高速I(mǎi)/O口、計(jì)數(shù)器捕捉/比較等;滿足系統(tǒng)中芯片擴(kuò)展的串行擴(kuò)展總線,如目前大量使用的Philips公司的I2C總線、Motorola公司的SPI以及Dallas公司的單總線1-Wire總線;滿足微控制器應(yīng)用系統(tǒng)集群的德國(guó)BOSCH公司的CAN總線以及其他現(xiàn)場(chǎng)總線等。
4.2Atmel公司微控制器的Flash ROM時(shí)代
Atmel公司用Flash ROM作為程序存儲(chǔ)器推出的89C51系列,為眾多嵌入式應(yīng)用系統(tǒng)開(kāi)發(fā)提供了一種靈活、高效、價(jià)廉的方案,將80C51推進(jìn)到Flash ROM時(shí)代。
89C51起源于我國(guó)原電子工業(yè)部的北京集成電路設(shè)計(jì)中心,他們?cè)谠O(shè)計(jì)國(guó)產(chǎn)化80C51單片機(jī)后,尋找產(chǎn)業(yè)化合作伙伴時(shí),Atmel公司主動(dòng)提出將Flash ROM植入國(guó)產(chǎn)的80C51中,并更名為89C51,產(chǎn)權(quán)為雙方共有。在中國(guó)大陸89C51最初的品牌不是AT89C51,而是由北京集成電路設(shè)計(jì)中心冠名。后來(lái)由于經(jīng)營(yíng)不善,北京集成電路設(shè)計(jì)中心放棄了89C51之后,才改名為AT89C51,被Atmel公司獨(dú)有。
4.3Cygnal對(duì)80C51的全面革新
20世紀(jì)末,Cygnal公司對(duì)80C51體系結(jié)構(gòu)進(jìn)行了徹底改造,使之成為頂尖的8位微控制器C8051F系列,使80C51進(jìn)入到又一個(gè)新的輝煌時(shí)代。Cygnal公司對(duì)80C51體系結(jié)構(gòu)的改造有:
① 對(duì)80C51 CPU內(nèi)核實(shí)施改造,實(shí)行指令運(yùn)行的流水作業(yè),使指令運(yùn)行速度提高到原來(lái)的12倍,成為8位高速微控制器;
② 設(shè)置用戶可配置的交叉開(kāi)關(guān),使I/O接口從功能固定方式提升至可隨意選擇的功能設(shè)置;
③ 從單一固定系統(tǒng)時(shí)鐘到可編程選擇的時(shí)鐘系統(tǒng),使微控制器在運(yùn)行過(guò)程中可隨意選擇時(shí)鐘狀態(tài);
④ 從傳統(tǒng)的仿真調(diào)試到基于JTAG接口的在系統(tǒng)調(diào)試,并為在系統(tǒng)測(cè)試提供邊界掃描功能;
⑤ 把80C51單一的外部復(fù)位發(fā)展成多源復(fù)位系統(tǒng),如上電復(fù)位、掉電復(fù)位、外部引腳復(fù)位、軟件復(fù)位、時(shí)鐘檢測(cè)復(fù)位、比較器0復(fù)位、WDT復(fù)位和引腳配置復(fù)位等;
⑥ 有最小功耗系統(tǒng)設(shè)計(jì)的最佳技術(shù)支持,如降低供電電壓(從5 V到3 V)、時(shí)鐘系統(tǒng)可任意選擇、復(fù)位系統(tǒng)可隨意喚醒來(lái)靈活設(shè)置低功耗模式。
4.4從80C51到ARM的產(chǎn)業(yè)變革
21世紀(jì)初,微控制器領(lǐng)域的一個(gè)重大事件是從80C51主流系列到ARM主流系列的變遷。究其原因,除了嵌入式高端需求拉動(dòng)的技術(shù)因素外,產(chǎn)業(yè)變革是一個(gè)重要的內(nèi)在因素。此前,所有從事微控制器的半導(dǎo)體廠家都是實(shí)體產(chǎn)業(yè)公司,都有自己的微控制器設(shè)計(jì)團(tuán)隊(duì),設(shè)計(jì)與生產(chǎn)自己公司的微控制器,從而形成了百花齊放的微控制器產(chǎn)業(yè)發(fā)展趨勢(shì)。
而ARM公司一反傳統(tǒng)的微控制器產(chǎn)業(yè)模式,從公司成立之初,便摒棄實(shí)體產(chǎn)業(yè),專注發(fā)展微處理器知識(shí)產(chǎn)權(quán),即只專注于發(fā)展微處理器技術(shù),不從事微處理器生產(chǎn),從而成為雄據(jù)眾多半導(dǎo)體之上的上游產(chǎn)業(yè)。先進(jìn)技術(shù)水平的ARM系列與上游產(chǎn)業(yè)的優(yōu)勢(shì)吸引了眾多的半導(dǎo)體廠家,他們紛紛在ARM公司授權(quán)的ARM系列架構(gòu)基礎(chǔ)上生產(chǎn)本公司的微控制器。
ARM系列大量使用后,由于成本下降,不斷侵蝕80C51的原有領(lǐng)域,80C51逐漸失去微控制器應(yīng)用系統(tǒng)的主流地位。
在ARM系列不斷侵蝕80C51原有領(lǐng)域時(shí),并不代表80C51末日到來(lái)。在無(wú)限大的嵌入式系統(tǒng)應(yīng)用領(lǐng)域中,80C51另辟蹊徑,轉(zhuǎn)戰(zhàn)智能器件領(lǐng)域。
今天,智能傳感器、無(wú)線收發(fā)器件領(lǐng)域,已成為80C51的主流陣地。
[1] 蘇偉斌.INTEL八位單位機(jī)的發(fā)展與現(xiàn)狀[C]//第三屆全國(guó)單片機(jī)學(xué)術(shù)交流會(huì)論文集,1990:1.
[2] 梁合慶.單片微機(jī)發(fā)展趨勢(shì)[C]//1996年全國(guó)單片微機(jī)學(xué)術(shù)交流會(huì)論文集,1996:4.
[3] 何立民.從Cygnal C8051F看8位單片機(jī)發(fā)展之路[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2002(5).
(責(zé)任編輯:薛士然2015-10-24)