- 相關(guān)推薦
論文之嵌入式系統設計方法的演化從單片機到單片系統及發(fā)展策略
摘要:在介紹嵌入式系統設計方法變化背景的基礎上,綜述嵌入式系統設計方法的不同層次,從單片 機應用到單片系統設計的演化,并提出了發(fā)展戰略。
關(guān)鍵詞:嵌入式系統 設計 單片系統(SOC) 硬件描述語(yǔ)言(HDL) IP內核
一、嵌入式系統設計方法變化的背景
嵌入式系統設計方法的演化總的來(lái)說(shuō)是因為應用需求的牽引和IT技術(shù)的推動(dòng)。
1.隨著(zhù)微電子技術(shù)的不斷創(chuàng )新和發(fā)展,大規模集成電路的集成度和工藝水平不斷提高。硅材料與人類(lèi)智慧的結合,生產(chǎn)出大批量的低成本、高可靠性和高精度的微電子結構模塊,推動(dòng)了一個(gè)全新的技術(shù)領(lǐng)域和產(chǎn)業(yè)的發(fā)展。在此基礎上發(fā)展起來(lái)的器件可編程思想和微處理(器)技術(shù)可以用軟件來(lái)改變和實(shí)現硬件的功能。微處理器和各種可編程大規模集成專(zhuān)用電路、半定制器件的大量應用,開(kāi)創(chuàng )了一個(gè)嶄新的應用世界,以至廣泛影響著(zhù)并在逐步改變著(zhù)人類(lèi)的生產(chǎn)、生活和學(xué)習等社會(huì )活動(dòng)。
2.計算機硬件平臺性能的大幅度提高,使很多復雜算法和方便使用的界面得以實(shí)現,大大提高了工作效率,給復雜嵌入式系統輔助設計提供了物理基礎。
3.高性能的EDA綜合開(kāi)發(fā)工具(平臺)得到長(cháng)足發(fā)展,而且其自動(dòng)化和智能化程度不斷提高,為復雜的嵌入式系統設計提供了不同用途和不同級別集編輯、布局、布線(xiàn)、編譯、綜合、模擬、測試、驗證和器件編程等一體化的易于學(xué)習和方便使用的開(kāi)發(fā)集成環(huán)境。
4.硬件描述語(yǔ)言HDL(Hardware Description Language)的發(fā)展為復雜電子系統設計提供了建立各種硬件模型的工作媒介。它的描述能力和抽象能力強,給硬件電路,特別是半定制大規模集成電路設計帶來(lái)了重大的變革。目前,用得較多的有已成為IEEE為 STD1076標準的VHDL、IEEE STD 1364標準的Verilog HDL和Altera公司企業(yè)標準的AHDL等。
由于HDL的發(fā)展和標準化,世界上出現了一批利用HDL進(jìn)行各種集成電路功能模塊專(zhuān)業(yè)設計的公司。其任務(wù)是按常用或專(zhuān)用功能,用HDL來(lái)描述集成電路的功能和結構,并經(jīng)過(guò)不同級別的驗證形成不同級別的IP內核模塊,供芯片設計人員裝配或集成選用。
IP(Intellectual Property)內核模塊是一種預先設計好的甚至已經(jīng)過(guò)驗證的具有某種確定功能的集成電路、器件或部件。它有幾種不同形式。IP內核模塊有行為(behavior)、結構(structure)和物理(physical)3級不同程度的設計,對應有主要描述功能行為的“軟IP內核(soft IP core)”、完成結構描述的“固IP內核(firm IP core)”和基于物理描述并經(jīng)過(guò)工藝驗證的“硬IP內核(hard IP core)”3個(gè)層次。這相當于集成電路(器件或部件)的毛坯、半成品和成品的設計技術(shù)。
軟IP內核通常是用某種HDL文本提交用戶(hù),它已經(jīng)過(guò)行為級設計優(yōu)化和功能驗證,但其中不含有任何具體的物理信息。據此,用戶(hù)可以綜合出正確的門(mén)電路級網(wǎng)表,并可以進(jìn)行后續結構設計,具有最大的靈活性,可以很容易地借助于EDA綜合工具與其他外部邏輯電路結合成一體,根據各種不同的半導體工藝,設計成具有不同性能的器件?梢陨唐坊能汭P內核一般電路結構總門(mén)數都在5000門(mén)以上。但是,如果后續設計不當,有可能導致整個(gè)結果失敗。軟IP內核又稱(chēng)作虛擬器件。
硬IP內核是基于某種半導體工藝的物理設計,已有固定的拓撲布局和具體工藝,并已經(jīng)過(guò)工藝驗證,具有可保證的性能。其提供給用戶(hù)的形式是電路物理結構掩模版圖和全套工藝文件,是可以拿來(lái)就用的全套技術(shù)。
固IP內核的設計深度則是介于軟IP內核和硬IP內核之間,除了完成硬IP內核所有的設計外,還完成了門(mén)電路級綜合和時(shí)序仿真等設計環(huán)節。一般以門(mén)電路級網(wǎng)表形式提交用戶(hù)使用。
TI,Philips和Atmel等廠(chǎng)商就是通過(guò)Intel授權,用其MCS51的IP內核模塊結合自己的特長(cháng)開(kāi)發(fā)出有個(gè)性的與Intel MCS51兼容的單片機。
常用的IP內核模塊有各種不同的CPU(32/64位CISC/RISC結構的CPU或8/16位微控制器/單片機,如8051等)、32/64位DSP(如320C30)、DRAM、SRAM、EEPROM、Flashmemory、A/D、D/A、MPEG/JPEG、USB、PCI、標準接口、網(wǎng)絡(luò )單元、編譯器、編碼/解碼器和模擬器件模塊等。豐富的IP內核模塊庫為快速地設計專(zhuān)用集成電路和單片系統以及盡快占領(lǐng)市場(chǎng)提供
了基本保證。
5.軟件技術(shù)的進(jìn)步,特別是嵌入式實(shí)時(shí)操作系統EOS(Embedded Operation System)的推出,為開(kāi)發(fā)復雜嵌入式系統應用軟件提供了底層支持和高效率開(kāi)發(fā)平臺。EOS是一種功能強大、應用廣泛的實(shí)時(shí)多任務(wù)系統軟件。它一般都具有操作系統所具有的各種系統資源管理功能,用戶(hù)可以通過(guò)應用程序接口A(yíng)PI調用函數形式來(lái)實(shí)現各種資源管理。用戶(hù)程序可以在EOS的基礎上開(kāi)發(fā)并運行。它與通用系統機中的OS相比,主要有系統內核短小精悍、開(kāi)銷(xiāo)小、實(shí)時(shí)性強和可靠性高等特點(diǎn)。完善的EOS還提供各種設備的驅動(dòng)程序。為了適應網(wǎng)絡(luò )應用和Internet應用。還可以提供TCP/IP協(xié)議支持。目前流行的EOS有3Com公司的Palm OS、Microsoft公司的Windows CE和Windows NT Embedded4.0、日本東京大學(xué)的Tron和各種開(kāi)放源代碼的嵌入式Linux以及國內開(kāi)發(fā)成功的凱思集團的Hopen OS和浙江大學(xué)的HBOS。
二、嵌入式系統設計方法的變化
過(guò)去擅長(cháng)于軟件設計的編程人員一般對硬件電路設計“敬而遠之”,硬件設計和軟件設計被認為是性質(zhì)完全不同的技術(shù)。
隨著(zhù)電子信息技術(shù)的發(fā)展,電子工程出身的設計人員,往往還逐步涉足軟件編程。其主要形式是通過(guò)微控制器(國內習慣稱(chēng)作單片機)的應用,學(xué)會(huì )相應的匯編語(yǔ)言編程。在設計規模更大的集散控制系統時(shí),必然要用到已普及的PC機,以其為上端機,從而進(jìn)一步學(xué)習使用Quick BASIC,C,C++,VC和VB等高級語(yǔ)言編程作系統程序,設計系統界面,通過(guò)與單片機控制的前端機進(jìn)行多機通信構成集中分布控制系統。
軟件編程出身的設計人員則很少有興趣去學(xué)習應用電路設計。但是,隨著(zhù)計算機技術(shù)的飛速發(fā)展,特別是硬件描述語(yǔ)言HDL的發(fā)明,系統硬件設計方法發(fā)生了變化,數字系統的硬件組成及其行為完全可以用HDL來(lái)描述和仿真。在這種情況下,設計硬件電路不再是硬件設計工程師的專(zhuān)利,擅長(cháng)軟件編程的設計人員可以借助于HDL工具來(lái)描述硬件電路的行為、功能、結構、數據流、信號連接關(guān)系和定時(shí)關(guān)系,設計出滿(mǎn)足各種要求的硬件系統。
EDA工具允許有兩種設計輸入工具,分別適應硬件電路設計人員和軟件編程人員兩種不同背景的需要。讓具有硬件背景的設計人員用已習慣的原理圖輸入方式,而讓具有軟件背景的設計人員用硬件描述語(yǔ)言輸入方式。由于用HDL描述進(jìn)行輸入,因而與系統行為描述更接近,且更便于綜合、時(shí)域傳遞和修改,還能建立獨立于工藝的設計文件,所以,擅長(cháng)軟件編程的人一旦掌握了HDL和一些必要的硬件知識,往往可以比習慣于傳統設計的工程師設計出更好的硬件電路和系統。所以,習慣于傳統設計的工程師應該學(xué)會(huì )用HDL來(lái)描述和編程。
三、嵌入式系統設計的3個(gè)層次
嵌入式系統設計有3個(gè)不同層次。
1.第1層次:以PCB CAD軟件和ICE為主要工具的設計方法。
這是過(guò)去直至現在我國單片機應用系統設計人員一直沿用的方法,其步驟是先抽象后具體。
抽象設計主要是根據嵌入式應用系統要實(shí)現的功能要求,對系統功能細化,分成若干功能模塊,畫(huà)出系統功能框圖,再對功能模塊進(jìn)行硬件和軟件功能實(shí)現的分配。
具體設計包括硬件設計和軟件設計。硬件設計主要是根據性能參數要求對各功能模塊所需要使用的元器件進(jìn)行選擇和組合,其選擇的基本原則就是市場(chǎng)上可以購買(mǎi)到的性?xún)r(jià)比最高的通用元器件。必要時(shí),須分別對各個(gè)沒(méi)有把握的部分進(jìn)行搭試、功能檢驗和性能測試,從模塊到系統找到相對優(yōu)化的方案,畫(huà)出電路原理圖。硬件設計的關(guān)鍵一步就是利用印制板(PCB)計算機輔助設計(CAD)軟件對系統的元器件進(jìn)行布局和布線(xiàn),接著(zhù)是印制板加工、裝配和硬件調試。
工作量最大的部分是軟件設計。軟件設計貫穿整個(gè)系統的設計過(guò)程,主要包括任務(wù)分析、資源分配、模塊劃分、流程設計和細化、編碼調試等。軟件設計的工作量主要集中在程序調試,所以軟件調試工具就是關(guān)鍵。最常用和最有效的工具是在線(xiàn)仿真器(ICE)。
2.第2層次:以EDA工具軟件和EOS為開(kāi)發(fā)平臺的設計方法。
隨著(zhù)微電子工藝技術(shù)的發(fā)展,各種通用的可編程半定制邏輯器件應運而生。在硬件設計時(shí),設計師可以利
用這些半定制器件,逐步把原先要通過(guò)印制板線(xiàn)路互連的若干標準邏輯器件自制成專(zhuān)用集成電路(ASIC)使用,這樣,就把印制板布局和布線(xiàn)的復雜性轉換成半定制器件內配置的復雜性。然而,半定制器件的設計并不需要設計人員有半導體工藝和片內集成電路布局和布線(xiàn)的知識和經(jīng)驗。隨著(zhù)半定制器件的規模越來(lái)越大,可集成的器件越來(lái)越多,使印制板上互連器件的線(xiàn)路、裝配和調試費用越來(lái)越少,不僅大大減少了印制板的面積和接插件的數量,降低了系統綜合成本,增加了可編程應用的靈活性,更重要的是降低了系統功耗,提高了系統工作速度,大大提高了系統的可靠性和安全性。
這樣,硬件設計人員從過(guò)去選擇和使用標準通用集成電路器件,逐步轉向自己設計和制作部分專(zhuān)用的集成電路器件,而這些技術(shù)是由各種EDA工具軟件提供支持的。
半定制邏輯器件經(jīng)歷了可編程邏輯陣列PLA、可編程陣列邏輯PAL、通用陣列邏輯GAL、復雜可編程邏輯器件CPLD和現場(chǎng)可編程門(mén)陣列FPGA的發(fā)展過(guò)程。其趨勢是集成度和速度不斷提高,功能不斷增強,結構趨于更合理,使用變得更靈活和方便。
設計人員可以利用各種EDA工具和標準的CPLD和FPGA等,設計和自制用戶(hù)專(zhuān)用的大規模集成電路。然后再通過(guò)自下而上的設計方法,把用半定制器件設計自制的集成電路、可編程外圍器件、所選擇的ASIC與嵌入式微處理器或微控制器在印制板上布局、布線(xiàn)構成系統。
3.第3層次:以IP內核庫為設計基礎,用軟硬件協(xié)同設計技術(shù)的設計方法。
20世紀90年代后,進(jìn)一步開(kāi)始了從“集成電路”級設計不斷轉向“集成系統”級設計。目前已進(jìn)入單片系統SOC(System on a chip)設計階段,并開(kāi)始進(jìn)入實(shí)用階段。這種設計方法不是把系統所需要用到的所有集成電路簡(jiǎn)單地二次集成到1個(gè)芯片上,如果這樣實(shí)現單片系統,是不可能達到單片系統所要求的高密度、高速度、高性能、小體積、低電壓、低功耗等指標的,特別是低功耗要求。單片系統設計要從整個(gè)系統性能要求出發(fā),把微處理器、模型算法、芯片結構、外圍器件各層次電路直至器件的設計緊密結合起來(lái),并通過(guò)建立在全新理念上的系統軟件和硬件的協(xié)同設計,在單個(gè)芯片上完成整個(gè)系統的功能。有時(shí)也可能把系統做在幾個(gè)芯片上。因為,實(shí)際上并不是所有的系統都能在一個(gè)芯片上實(shí)現的;還可能因為實(shí)現某種單片系統的工藝成本太高,以至于失去商業(yè)價(jià)值。目前,進(jìn)入實(shí)用的單片系統還屬簡(jiǎn)單的單片系統,如智能IC卡等。但幾個(gè)著(zhù)名的半導體廠(chǎng)商正在緊鑼密鼓地研制和開(kāi)發(fā)像單片PC這樣的復雜單片系統。
單片系統的設計如果從零開(kāi)始,這既不現實(shí)也無(wú)必要。因為除了設計不成熟、未經(jīng)過(guò)時(shí)間考驗,其系統性能和質(zhì)量得不到保證外,還會(huì )因為設計周期太長(cháng)而失去商業(yè)價(jià)值。
為了加快單片系統設計周期和提高系統的可靠性,目前最有效的一個(gè)途徑就是通過(guò)授權,使用成熟優(yōu)化的IP內核模塊來(lái)進(jìn)行設計集成和二次開(kāi)發(fā),利用膠粘邏輯技術(shù)GLT(Glue Logic Technology),把這些IP內核模塊嵌入到SOC中。IP內核模塊是單片系統設計的基礎,究竟購買(mǎi)哪一級IP內核模塊,要根據現有基礎、時(shí)間、資金和其他條件權衡確定。購買(mǎi)硬IP內核模塊風(fēng)險最小,但付出最大,這是必然的。但總的來(lái)說(shuō),通過(guò)購買(mǎi)IP內核模塊不僅可以降低開(kāi)發(fā)風(fēng)險,還能節省開(kāi)發(fā)費用,因為一般購買(mǎi)IP內核模塊的費用要低于自己?jiǎn)为氃O計和驗證的費用。當然,并不是所需要的IP內核模塊都可以從市場(chǎng)上買(mǎi)得到。為了壟斷市場(chǎng),有一些公司開(kāi)發(fā)出來(lái)的關(guān)鍵IP內核模塊(至少暫時(shí))是不愿意授權轉讓使用的。像這樣的IP內核模塊就不得不自己組織力量來(lái)開(kāi)發(fā)。
這3個(gè)層次各有各的應用范圍。從應用開(kāi)發(fā)角度看,在相當長(cháng)的一段時(shí)間內,都是采用前2種方法。第3層次設計方法對一般具體應用人員來(lái)說(shuō),只能用來(lái)設計簡(jiǎn)單的單片系統。而復雜的單片系統則是某些大的半導體廠(chǎng)商才能設計和實(shí)現的,并且用這種方法實(shí)現的單片系統,只可能是那些廣泛使用、具有一定規模的應用系統才值得投入研制。還有些應用系統,因為技術(shù)問(wèn)題或商業(yè)價(jià)值問(wèn)題并不適宜用單片實(shí)現。當它們以商品形式推出相應單片系統后,應用人員只要會(huì )選用即可。所以,3個(gè)層次的設計方法會(huì )并存,并不會(huì )簡(jiǎn)單地用后者取代前者。 初級應用設計人員會(huì )以第1種方法為主;富有經(jīng)驗的設計人員會(huì )以第2種方法為主;很專(zhuān)業(yè)的設計人員會(huì )用第3種方法進(jìn)行簡(jiǎn)單單片系統的設計和應用。但所有的設計人員都可以應用半導體大廠(chǎng)商推出的用第3種方法設計的專(zhuān)用單片系統。
結束語(yǔ)
目前,在我國3個(gè)層次的設計分別呈“面”、“線(xiàn)”、“點(diǎn)”的狀態(tài)。習慣于第1層次設計方法的電子信息系統設計人員需要逐步向第2層次過(guò)渡和發(fā)展;第2層次設計方法要由“線(xiàn)”逐步發(fā)展成“面”;第3層次設計方法需要國家有關(guān)部門(mén)根據IT發(fā)展戰略和規劃,組織各方面力量攻關(guān)、協(xié)調發(fā)展。第3層次設計方法要由“點(diǎn)”逐步發(fā)展成“線(xiàn)”。
【論文之嵌入式系統設計方法的演化從單片機到單片系統及發(fā)展策略】相關(guān)文章:
談版面設計教學(xué)之方法論文07-12
關(guān)于景觀(guān)導視系統設計實(shí)踐教學(xué)方法的論文07-12
探討嵌入式系統的應用09-05
FPGA數據采集與回放系統設計論文04-24
中式快餐發(fā)展策略03-14
平面設計教學(xué)策略探討論文06-23
幼兒教學(xué)活動(dòng)設計策略探討論文06-23
基于51單片機的路燈控制系統設計開(kāi)題報告04-18
基于系統設計的科研管理論文09-22
嵌入式系統內存的管理方案研究06-02