技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 嵌入式系統(tǒng)設(shè)計(jì)中硬件和軟件的選擇研究

嵌入式系統(tǒng)設(shè)計(jì)中硬件和軟件的選擇研究

時(shí)間:2008-12-05 11:24:27來(lái)源:fenghy

導(dǎo)語(yǔ):?本文從工程的角度就嵌入式系統(tǒng)設(shè)計(jì)中硬件和軟件的選擇問(wèn)題進(jìn)行了一些討論,并給出了在嵌入式系統(tǒng)設(shè)計(jì)中進(jìn)行軟硬件選擇時(shí)應(yīng)該考慮的因素
本文從工程的角度就嵌入式系統(tǒng)設(shè)計(jì)中硬件和軟件的選擇問(wèn)題進(jìn)行了一些討論,并給出了在嵌入式系統(tǒng)設(shè)計(jì)中進(jìn)行軟硬件選擇時(shí)應(yīng)該考慮的因素。 一、問(wèn)題的提出 按照嵌入式系統(tǒng)的工程設(shè)計(jì)方法,嵌入式系統(tǒng)的設(shè)計(jì)可以粗略的分成三個(gè)階段,即:分析,設(shè)計(jì),實(shí)現(xiàn)。分析階段的主要任務(wù)是確定要解決的問(wèn)題及需要完成的目標(biāo)。因此,分析階段也常常被稱為“需求階段”,或“系統(tǒng)需求階段”。設(shè)計(jì)階段主要任務(wù)是解決如何在給定的約束條件下完成用戶的要求。此階段是在分析階段的基礎(chǔ)上研究“如何做”。實(shí)現(xiàn)階段主要是解決如何在所選擇的硬件和軟件的基礎(chǔ)上進(jìn)行整個(gè)軟、硬件系統(tǒng)的協(xié)調(diào)實(shí)現(xiàn)。按照這種設(shè)計(jì)思想,在分析階段階段結(jié)束后,通常開(kāi)發(fā)者面臨的一個(gè)棘手的問(wèn)題就是硬件和軟件的選擇,因?yàn)樗暮脡闹苯佑绊懼鴮?shí)現(xiàn)階段的任務(wù)完成。通常硬件和軟件的選擇有: 1.處理器 2.硬件部件 3.操作系統(tǒng) 4.編程語(yǔ)言 5.軟件開(kāi)發(fā)工具 6.硬件調(diào)試工具 7.軟件組件 在上述選擇中,通常,處理器是最重要的,同時(shí)操作系統(tǒng)或編程語(yǔ)言也是非常關(guān)鍵的。而且有時(shí)處理器的選擇會(huì)限制操作系統(tǒng)的選擇,操作系統(tǒng)的選擇又會(huì)限制開(kāi)發(fā)工具的選擇。因此本文就如何在嵌入式系統(tǒng)設(shè)計(jì)中選擇硬件和軟件進(jìn)行了一些評(píng)判因素的分析。 二、硬件的選擇 (一)嵌入式處理器的選擇 嵌入式系統(tǒng)的核心部件是各種類型的嵌入式處理器,目前據(jù)不完全統(tǒng)計(jì),全世界嵌入式處理器的品種總量已經(jīng)超過(guò)1000多種,流行體系結(jié)構(gòu)有30幾個(gè)系列。但與全球PC市場(chǎng)不同的是沒(méi)有一種微處理器和微處理器公司可以主導(dǎo)嵌入式系統(tǒng),僅以32位的CPU而言,就有100種以上嵌入式微處理器。由于嵌入式系統(tǒng)設(shè)計(jì)的差異性極大,因此選擇是多樣化的。設(shè)計(jì)者在選擇處理器時(shí)要考慮的主要因素有: 1.調(diào)查上市的CPU供應(yīng)商。有些公司如Motorola、 Intel、AMD很有名氣,而有一些小的公司如QED(Santa Clara .CA)雖然名氣很小,但也生產(chǎn)很優(yōu)秀的微處理器。另外,有一些公司,如ARM、MIPS等,只設(shè)計(jì)但并不生產(chǎn)CPU,他們把生產(chǎn)權(quán)授予世界各地的半導(dǎo)體制造商。ARM是另外一種近年來(lái)在嵌入式系統(tǒng)有影響力的微處理器制造商,ARM的設(shè)計(jì)非常適合于小的電源供電系統(tǒng)。Apple在Newton手持計(jì)算機(jī)中使用ARM,另外有幾款數(shù)字無(wú)線電話也在使用ARM。 2.處理器的處理速度。一個(gè)處理器的性能取決于多個(gè)方面的因素:時(shí)鐘頻率,內(nèi)部寄存器的大小,指令是否對(duì)等處理所有的寄存器等。對(duì)于許多需用處理器的嵌入式系統(tǒng)設(shè)計(jì)來(lái)說(shuō),目標(biāo)不是在于挑選速度最快的處理器,而是在于選取能夠完成作業(yè)的處理器和I/O子系統(tǒng)。如果你的設(shè)計(jì)是面向高性能的應(yīng)用,那么建議你考慮某些新的處理器,其價(jià)格極為低 廉,如IBM和Motorola 的Power PC。以前Intel 的 i960是銷售極好的RISC高性能芯片,但 是最近幾年卻遇到強(qiáng)勁的對(duì)手,讓位于MIPS、SH以及后起之星ARM。 3.技術(shù)指標(biāo)。當(dāng)前,許多嵌入式處理器都集成了外圍設(shè)備的功能,從而減少了芯片的數(shù)量,進(jìn)而降低了整個(gè)系統(tǒng)的開(kāi)發(fā)費(fèi)用。開(kāi)發(fā)人員首先考慮的是,系統(tǒng)所要求的一些硬件能否無(wú)需過(guò)多的膠合邏輯(GL)就可以連接到處理器上。其次是考慮該處理器的一些支持芯片,如DMA控制器,內(nèi)存管理器,中斷控制器,串行設(shè)備、時(shí)鐘等的配套。值得注意的是,AMD公司最近發(fā)布了一種Am186CC的通信用處理器,內(nèi)置采用國(guó)人熟悉的X86內(nèi)核和四路 HDLC和一個(gè)USB外圍控制器。,該處理器適合于多種通信應(yīng)用領(lǐng)域,包括:ISDN終端適配器、低端路由器、數(shù)字專線(xDSL)MODEM、USB外圍設(shè)備、PBX應(yīng)用、數(shù)字電話、數(shù)字環(huán)路載波以及電話系統(tǒng)。 4.處理器的低工耗。嵌入式微處理器最大并且增長(zhǎng)最快的市場(chǎng)是手持設(shè)備、電子記事本、PDA、手機(jī)、GPS導(dǎo)航器、智能家電等消費(fèi)類電子產(chǎn)品,這些產(chǎn)品中選購(gòu)的微處理器典型的特點(diǎn)是要求高性能、低工耗。許多CPU生產(chǎn)廠家已經(jīng)進(jìn)入了這個(gè)領(lǐng)域。今天,用戶可以買到一顆嵌入式的微處理器 ,其速度像筆記本中的 Pentium一樣快,而它僅使用普通電池供電,并且價(jià)格不足50美元。 典型的例子有NEC、日立為HPC、Palm PC而設(shè)計(jì)的VR4111和SH7707。Digital的 Strong ARM 1100,在一個(gè)極小的200MHz主頻封裝中集成了彩色LCD控制器、PCMCIA觸屏接 口等6個(gè)接口(含USB、IRDA),而批量的價(jià)格也在40美元以內(nèi)。 5.處理器的軟件支持工具。僅有一個(gè)處理器,沒(méi)有較好的軟件開(kāi)發(fā)工具的支持,也是不行的,因此選擇合適的軟件開(kāi)發(fā)工具對(duì)系統(tǒng)的實(shí)現(xiàn)會(huì)起到很好的作用。 6.處理器是否內(nèi)置調(diào)試工具。處理器如果內(nèi)置調(diào)試工具可以大大大的縮小調(diào)試周期,降低調(diào)試的難度。 7.處理器供應(yīng)商是否提供評(píng)估板。許多處理器供應(yīng)商可以提供評(píng)估板來(lái)驗(yàn)證你的理論是否正確,驗(yàn)證你的決策是否得當(dāng)。 (二)硬件平臺(tái)的選擇 1.規(guī)模。打算做一套?多套?還是規(guī)模生產(chǎn)?如果你的規(guī)模比較大,這時(shí)可以自己設(shè)計(jì)和制備硬件,這樣可以降低成本。反之,最好從第三方購(gòu)買主板和I/O板卡。 2.目標(biāo)市場(chǎng)的機(jī)會(huì)。如果想使產(chǎn)品盡快發(fā)售,以獲得競(jìng)爭(zhēng)力,此時(shí)要盡可能買成熟的硬件,反之,可以自己設(shè)計(jì)硬件,降低成本。 3.軟件對(duì)硬件的依賴性。是否軟件可以在硬件沒(méi)有到位的時(shí)候先行開(kāi)發(fā)。 三、軟件的選擇 (一)操作系統(tǒng)的選擇 盡管嵌入式系統(tǒng)有著無(wú)比廣闊的市場(chǎng)需求和發(fā)展前景,但嵌入式系統(tǒng)的發(fā)展多年來(lái)卻經(jīng)歷了一個(gè)曲折和痛苦的歷程。隨著微處理器的產(chǎn)生,價(jià)格低廉、結(jié)構(gòu)小巧的CPU和外設(shè)連接提供了穩(wěn)定可靠的硬件架構(gòu),那么限制嵌入式系統(tǒng)發(fā)展的瓶頸就突出表現(xiàn)在了軟件方面。從八十年代末開(kāi)始,陸續(xù)出現(xiàn)了一些嵌入式操作系統(tǒng),比較著名的有Tornado/VxWorkx、pSOSystem、Neculeus和Windowss CE、QNX、VRTX,以及沸沸揚(yáng)揚(yáng)的“女媧計(jì)劃”,中國(guó)人自己的嵌入式操作系統(tǒng)HOPEN和現(xiàn)在談?wù)撟疃嗟那度胧絃inux操作系統(tǒng)等等。可用于嵌入式系統(tǒng)軟件開(kāi)發(fā)的操作系統(tǒng)很多,但關(guān)鍵是如何選擇一個(gè)適合你所開(kāi)發(fā)項(xiàng)目的操作系統(tǒng),我們認(rèn)為應(yīng)該從以下幾點(diǎn)進(jìn)行考慮: 1.操作系統(tǒng)提供那些開(kāi)發(fā)工具。有些實(shí)時(shí)操作系統(tǒng)(RTOS)只支持該系統(tǒng)拱應(yīng)商的開(kāi)發(fā)工具。也就是說(shuō),還必須向操作系統(tǒng)供應(yīng)商獲取編譯器、調(diào)試器等。而有些操作系統(tǒng)使用廣泛且有第三方工具可用,因此,選擇的余地比較大。如PSOSystem支持的工具有:pRISM+,全集成開(kāi)發(fā)環(huán)境,含源代碼調(diào)試器(SpOTLIGHT),C/C++ 編譯器(e g Diab),匯編器,連接器,C/C++ 開(kāi)發(fā)環(huán)境(SNiFF+),嵌入式系統(tǒng)監(jiān)視工具(Esp),CORBA等。而Tornado/VxWorkx支持的工具有:遠(yuǎn)程源級(jí)調(diào)試器;瀏覽器;WindSh 命令行接口;模塊載入器;目標(biāo)工具;WindConfig 板基支持包配置;大約90個(gè)第三方嵌入式開(kāi)發(fā)工具和擴(kuò)展。 2.操作系統(tǒng)向硬件接口移植的難度。操作系統(tǒng)到硬件的移植是一個(gè)重要的問(wèn)題。它是關(guān)系到整個(gè)系統(tǒng)能否按期完工的一個(gè)關(guān)鍵因素。因此我們要選擇那些可移植性程度高的操作系統(tǒng)。從而避免操作系統(tǒng)難以向硬件移植而帶來(lái)的種種困難,加速系統(tǒng)的開(kāi)發(fā)進(jìn)度。 3.操作系統(tǒng)的內(nèi)存要求。均衡考慮是否需要額外花錢去購(gòu)買RAM或EEPROM來(lái)迎合操作系統(tǒng)對(duì)內(nèi)存的較大要求。有些操作系統(tǒng)對(duì)內(nèi)存的要求是target dependent。如Tornado/VxWorkx,開(kāi)發(fā)人員能按照應(yīng)用需求分配所需的資源,而不是為操作系統(tǒng)分配資源。從需要幾K字節(jié)存儲(chǔ)區(qū)的嵌入設(shè)計(jì)到需求更多的操作系統(tǒng)功能的復(fù)雜的高端實(shí)時(shí)應(yīng)用, 開(kāi)發(fā)人員可任意選擇多達(dá)80種不同的配置。 4.開(kāi)發(fā)人員是否熟悉此操作系統(tǒng)及其提供的API。 5.操作系統(tǒng)是否有提供硬件的驅(qū)動(dòng)程序,如網(wǎng)卡等。 6.操作系統(tǒng)是否具有可剪裁性,即能否根據(jù)實(shí)際需要進(jìn)行系統(tǒng)功能的剪裁。有些操作系統(tǒng)具有較強(qiáng)的可剪裁性,如嵌入式Linux、Tornado/VxWorks等等。 7.操作系統(tǒng)的實(shí)時(shí)性。實(shí)時(shí)性分為:軟實(shí)時(shí)和硬實(shí)時(shí)。有些嵌入式操作系統(tǒng)只能提供軟實(shí)時(shí),如WindowsCE。作為微軟大名鼎鼎的“維那斯”,Microsoft Windows CE 2.0 是32位,,Windows兼容,小內(nèi)核,可伸縮實(shí)時(shí)操作系統(tǒng),滿足大部分嵌入式和非嵌入式應(yīng)用的需要。但不夠?qū)崟r(shí),屬于軟實(shí)時(shí)嵌入式操作系統(tǒng)。 (二)編程語(yǔ)言的選擇 1.通用性。隨著微處理器技術(shù)的不斷發(fā)展,其功能越來(lái)越具體,種類越來(lái)越多,但不同種類的微處理器都有自己專用的匯編語(yǔ)言。這就為系統(tǒng)開(kāi)發(fā)者設(shè)置了一個(gè)巨大的障礙,使得系統(tǒng)編程更加困難,軟件重用無(wú)法實(shí)現(xiàn),而高級(jí)語(yǔ)言一般和具體機(jī)器的硬件結(jié)構(gòu)聯(lián)系較少,比較流行的高級(jí)語(yǔ)言對(duì)多數(shù)微處理器都有良好的支持,通用性較好 2.可移植性程度。由于匯編語(yǔ)言和具體的微處理器密切相關(guān),為某個(gè)微處理器設(shè)計(jì)的程序不能直接移植到另一個(gè)不同種類的微處理器上使用,因此,移植性差;而高級(jí)語(yǔ)言對(duì)所有微處理器都是通用的,因此,程序可以在不同的微處理器上運(yùn)行,可移植性較好。這是實(shí)現(xiàn)軟件重用的基礎(chǔ)。 3.執(zhí)行效率。一般來(lái)說(shuō),越是高級(jí)的語(yǔ)言,其編譯器和開(kāi)銷就越大,應(yīng)用程序也就越大、越慢。但單純依靠低級(jí)語(yǔ)言,如匯編語(yǔ)言來(lái)進(jìn)行應(yīng)用程序的開(kāi)發(fā),帶來(lái)的問(wèn)題是編程復(fù)雜、開(kāi)發(fā)周期長(zhǎng)。因此存在一個(gè)開(kāi)發(fā)時(shí)間和運(yùn)行性能間的權(quán)衡。 4.可維護(hù)性。低級(jí)語(yǔ)言如匯編語(yǔ)言,可維護(hù)性不高。高級(jí)語(yǔ)言程序往往是模塊化設(shè)計(jì),各個(gè)模塊之間的接口是固定的。因此,當(dāng)系統(tǒng)出現(xiàn)問(wèn)題時(shí),可以很快地將問(wèn)題定位到某個(gè)模塊內(nèi),并盡快得到解決。另外,模塊化設(shè)計(jì)也便于系統(tǒng)功能的擴(kuò)充和升級(jí)。 5.基本性能。在嵌入式系統(tǒng)開(kāi)發(fā)過(guò)程中使用的語(yǔ)言種類很多,比較廣泛應(yīng)用的高級(jí)語(yǔ)言有:Ada、C/C++、Modula-2和JAVA等。Ada語(yǔ)言定義嚴(yán)格,易讀易懂,有較豐富的庫(kù)程序支持,目前在國(guó)防、航空、航天等相關(guān)領(lǐng)域應(yīng)用比較廣泛,未來(lái)仍將在這些領(lǐng)域占有重要地位。C語(yǔ)言具有廣泛的庫(kù)程序支持,目前在嵌入式系統(tǒng)中是應(yīng)用最廣泛的編程語(yǔ)言,在將來(lái)很長(zhǎng)一段時(shí)間內(nèi)仍將在嵌入式系統(tǒng)應(yīng)用領(lǐng)域占重要地位。C++是一種面向?qū)ο蟮木幊陶Z(yǔ)言,目前在嵌入式系統(tǒng)設(shè)計(jì)也得到了廣泛的應(yīng)用,如GNU C++。Visual C++,是一種集成開(kāi)發(fā)環(huán)境,支持可視化編程,廣泛應(yīng)用于GUI程序開(kāi)發(fā)。但C與C++相比,C++的目標(biāo)代碼往往比較龐大和復(fù)雜,在嵌入式系統(tǒng)應(yīng)用中應(yīng)充分考慮這一因素。Modula-2定義清晰,支持豐富,具有較好的模塊化結(jié)構(gòu),在教學(xué)科研方面有較廣泛的應(yīng)用。雖然該語(yǔ)言的開(kāi)發(fā)應(yīng)用一直比較平緩,但近兩年在歐洲有所復(fù)蘇。Java語(yǔ)言相對(duì)年輕,但有很強(qiáng)的跨平臺(tái)特性,目前發(fā)展勢(shì)頭較為強(qiáng)勁。它的"一次編程,到處可用"的特性使得它在很多領(lǐng)域倍受歡迎。隨著網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)的不斷發(fā)展,Java及嵌入式Java的應(yīng)用也將越來(lái)越廣泛[2]。 (三)開(kāi)發(fā)工具的選擇 1.系統(tǒng)調(diào)試器的功能。系統(tǒng)調(diào)試特別是遠(yuǎn)程調(diào)試是一個(gè)重要的功能。 2.支持庫(kù)函數(shù)。許多開(kāi)發(fā)系統(tǒng)提供大量使用的庫(kù)函數(shù)和模板代碼。如大家比較熟悉的C++編譯器就帶有標(biāo)準(zhǔn)的模板庫(kù),它提供了一套用于定義各種有用的集裝、存儲(chǔ)、搜尋、排序?qū)ο蟆? 3.編譯器開(kāi)發(fā)商是否持續(xù)升級(jí)編譯器。 4.連接程序是否支持所有的文件格式和符號(hào)格式。 (四)硬件調(diào)試工具的選擇 好的軟件調(diào)試程序可以有效的發(fā)現(xiàn)大多數(shù)的錯(cuò)誤。但是如果再選擇一個(gè)好的硬件調(diào)試就會(huì)達(dá)到事半功倍的效果。常用的硬件調(diào)試工具有以下幾種。 1.實(shí)時(shí)在線仿真器(ICE)。用戶從仿真插頭向ICE看,ICE應(yīng)是一個(gè)可被控制的MCU。ICE是通過(guò)一根短電纜連接到目標(biāo)系統(tǒng)上的,該電纜的一端有一個(gè)插件,插到處理器的插座上,而處理器則插到這個(gè)插件上。ICE支持常規(guī)的調(diào)試操作,如單步運(yùn)行、斷點(diǎn)、反匯編、內(nèi)存檢查、源程序級(jí)的調(diào)試等等。 2.邏輯分析儀。邏輯分析儀最常用于硬件調(diào)試,但也可用于軟件調(diào)試。它是一種無(wú)源器件,主要用于監(jiān)視系統(tǒng)總線的事件.

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇: 軍用繼電器電磁干擾測(cè)量方法...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見(jiàn)反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)