《ARM Cortex嵌入式系統(tǒng)開發(fā)教程》課件第1章_第1頁
《ARM Cortex嵌入式系統(tǒng)開發(fā)教程》課件第1章_第2頁
《ARM Cortex嵌入式系統(tǒng)開發(fā)教程》課件第1章_第3頁
《ARM Cortex嵌入式系統(tǒng)開發(fā)教程》課件第1章_第4頁
《ARM Cortex嵌入式系統(tǒng)開發(fā)教程》課件第1章_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第1章嵌入式系統(tǒng)概述1.1嵌入式系統(tǒng)簡介1.2嵌入式處理器1.3嵌入式操作系統(tǒng)

1.1.1嵌入式系統(tǒng)的定義

經(jīng)過30多年的發(fā)展,嵌入式系統(tǒng)已經(jīng)廣泛應(yīng)用于科學(xué)研究、工程設(shè)計、軍事技術(shù)、各類產(chǎn)業(yè)、商業(yè)文化藝術(shù)、娛樂業(yè)及人們的日常生活等方面,從廚房中的電飯煲、微波爐、電冰箱到客廳里的家庭媒體中心,各種智能化設(shè)備已經(jīng)遍布在我們的周圍。1.1嵌入式系統(tǒng)簡介隨著數(shù)字信息技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,計算機、通信、消費電子的一體化趨勢日益明顯,這必將培養(yǎng)出一個龐大的嵌入式應(yīng)用市場?,F(xiàn)在,嵌入式系統(tǒng)帶來的工業(yè)年產(chǎn)值已超過了1萬億美元,它已經(jīng)成為信息技術(shù)(IT)產(chǎn)業(yè)爭奪的重點。嵌入式系統(tǒng)技術(shù)也成為當(dāng)前被關(guān)注、學(xué)習(xí)和研究的熱點。

所謂嵌入式系統(tǒng)(EmbeddedSystem),實際上是“嵌入式計算機系統(tǒng)”的簡稱,它是相對于通用計算機而言的。有些系統(tǒng)中也有計算機,但它是作為某個專用系統(tǒng)中的一個部件而存在的。像這樣嵌入到更大、更專用的系統(tǒng)中的計算機系統(tǒng),就稱為嵌入式計算機、嵌入式計算機系統(tǒng)或嵌入式系統(tǒng)。日常生活中早已存在許多嵌入式系統(tǒng)的應(yīng)用,如人們使用的移動電話、烹調(diào)用的微波爐、戴在手腕上的電子表、家用的洗衣機、辦公室里的打印機,以及數(shù)碼相機、MP3、平板電腦等手持式設(shè)備,都可以認(rèn)為是嵌入式系統(tǒng)。

按照美國電氣和電子工程師協(xié)會(IEEE)的定義,嵌入式系統(tǒng)是“用于監(jiān)視、控制或者輔助操作機器和設(shè)備的裝置”。這個定義是從應(yīng)用上考慮的,可以看出,嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機電等附屬裝置。目前我們最常見、最通用的一個定義是:嵌入式系統(tǒng)是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),其軟、硬件可配置,對功能、可靠性、成本、體積、功耗有嚴(yán)格約束的一種專用計算機系統(tǒng)。這個定義是從技術(shù)角度來進(jìn)行的。它不僅指明了嵌入式系統(tǒng)是一種專用的計算機系統(tǒng)(非PC的智能電子設(shè)備),而且說明了嵌入式系統(tǒng)的幾個基本要素,即面向應(yīng)用,以計算機技術(shù)為基礎(chǔ),軟、硬件可剪裁以及在功能、可靠性、成本、體積和功耗上有嚴(yán)格約束。而“嵌入式系統(tǒng)”中“嵌入”一詞,即指其軟、硬件可剪裁的特性,它表示該系統(tǒng)通常是更大系統(tǒng)中的一個完整的部分。嵌入的系統(tǒng)中可以共存多個嵌入式系統(tǒng)。嵌入式系統(tǒng)幾乎應(yīng)用于所有電器設(shè)備中,如手機、機頂盒、個人數(shù)字助理(PDA)、汽車控制系統(tǒng)、微波爐控制器、電梯控制器、安全系統(tǒng)、醫(yī)療儀器、立體音響、自動售貨機控制器、自動取款機等。即使是一臺通用的PC,也包括嵌入式系統(tǒng),其外部設(shè)備都包含了嵌入式微處理器的成分,如硬盤、軟驅(qū)、顯示器、鍵盤、鼠標(biāo)、聲卡、網(wǎng)卡、Modem和打印機、掃描儀等都是由嵌入式處理器控制的。嵌入式系統(tǒng)是面向用戶、產(chǎn)品和應(yīng)用的,如果獨立于應(yīng)用而自行發(fā)展,則會失去市場。因此,大多數(shù)嵌入式系統(tǒng)的開發(fā)者并不是計算機專業(yè)的人員,而是各個行業(yè)的技術(shù)人員,例如數(shù)字醫(yī)療設(shè)備的開發(fā),往往是由生物醫(yī)學(xué)工程技術(shù)人員和計算機專業(yè)的技術(shù)人員一起參與完成的。

嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),它和通用計算機系統(tǒng)使用的技術(shù)是一樣的,都包含了硬件部分和軟件部分,但對二者的性能評價指標(biāo)是不同的。嵌入式系統(tǒng)往往只是一個大系統(tǒng)中的組成部分,控制大系統(tǒng)的工作,它的價值在于其所控制的大系統(tǒng)。例如,智能洗衣機的評價指標(biāo)往往是洗凈度、耗水量、耗電量、洗衣速度等,而不是控制它的處理器的速度、存儲容量等。而通用計算機不同,其更關(guān)注計算能力、處理速度及存儲數(shù)據(jù)的能力等指標(biāo)。1.1.2嵌入式系統(tǒng)的組成

嵌入式系統(tǒng)基于計算機技術(shù),其組成也跟計算機組成類似,主要包括兩個部分:嵌入式硬件系統(tǒng)和嵌入式軟件系統(tǒng)。

(1)嵌入式硬件系統(tǒng)主要包括嵌入式處理器、存儲器、模擬電路、電源、接口控制器及接插件等幾部分。

嵌入式處理器是嵌入式系統(tǒng)的核心部件。嵌入式處理器與通用處理器的最大區(qū)別在于嵌入式CPU大多工作在為特定用戶群設(shè)計的系統(tǒng)中。它通常把通用CPU中許多由板卡完成的任務(wù)集成在芯片內(nèi)部,從而有利于嵌入式系統(tǒng)設(shè)計趨于小型化。嵌入式處理器具有高效率、高可靠性等特征。嵌入式系統(tǒng)中常用的存儲器有靜態(tài)易失型存儲器(RAM、SRAM)、動態(tài)存儲器(DRAM、SDRAM)、非易失型存儲器(ROM、EPROM、EEPROM、Flash)。其中,F(xiàn)lash(閃存)具有可擦寫次數(shù)多、存儲速度快、容量大以及價格低等優(yōu)點,在嵌入式領(lǐng)域得到了廣泛的應(yīng)用。

目前針對嵌入式系統(tǒng)的外圍硬件設(shè)備擴展很多,常用的有串口、以太網(wǎng)接口(網(wǎng)絡(luò)設(shè)備)、USB接口(USB設(shè)備,如優(yōu)盤、數(shù)碼相機、移動硬盤等外部存儲設(shè)備)、音頻接口(如MP3)、液晶顯示屏(如數(shù)碼相機、數(shù)碼攝像機、MP4播放器、PDA等)、攝像頭(拍照手機)等??梢钥吹?,不同的嵌入式系統(tǒng)的設(shè)計可能會用到不同的外圍硬件設(shè)備。以數(shù)碼相機為例,它需要使用到攝像頭、液晶顯示屏、USB接口、SD或MS卡,如果該數(shù)碼相機有MP3功能,就還需要加上音頻解碼設(shè)備。沒有外圍設(shè)備的支持,嵌入式系統(tǒng)是不完整的。

(2)嵌入式軟件系統(tǒng)主要包括低層驅(qū)動、操作系統(tǒng)軟件(嵌入式操作系統(tǒng))和應(yīng)用程序(應(yīng)用軟件)三個部分。低層驅(qū)動實現(xiàn)嵌入式系統(tǒng)硬件和軟件之間的接口;操作系統(tǒng)實現(xiàn)系統(tǒng)的進(jìn)程調(diào)度、任務(wù)處理;應(yīng)用程序?qū)崿F(xiàn)系統(tǒng)功能的應(yīng)用。由于嵌入式系統(tǒng)的應(yīng)用領(lǐng)域十分廣泛,應(yīng)用程序(應(yīng)用軟件)的表現(xiàn)形式也千差萬別。有時設(shè)計人員會把操作系統(tǒng)和應(yīng)用軟件兩部分組合在一起,應(yīng)用軟件控制系統(tǒng)的運作和行為,操作系統(tǒng)控制應(yīng)用程序編程與硬件的交互。

在嵌入式系統(tǒng)的組成中,嵌入式系統(tǒng)的核心是嵌入式處理器。因此嵌入式處理器的技術(shù)指標(biāo)如功耗、體積、成本、可靠性、速度、處理能力、電磁兼容性等均受到應(yīng)用要求的制約,這些也是半導(dǎo)體廠商之間競爭的熱點。嵌入式處理器的應(yīng)用軟件是實現(xiàn)嵌入式系統(tǒng)功能的關(guān)鍵。一般來說,軟件需要固化存儲,有時稱為固件(Firmware)。1.1.3嵌入式系統(tǒng)的特點

與常見的通用計算機系統(tǒng)相比,嵌入式系統(tǒng)一般具有以下特點:

(1)面向特定的應(yīng)用。與通用CPU相比,嵌入式CPU是為特定用戶群設(shè)計的。如ARM系列多用于手機中,Motorola公司的PowerPC系統(tǒng)多用于網(wǎng)絡(luò)服務(wù)器、工作站中。應(yīng)用需求決定了嵌入式系統(tǒng)的設(shè)計。決定嵌入式CPU應(yīng)用環(huán)境的主要因素在于其提供的接口功能和處理速度。

(2)專用性強,可根據(jù)需要靈活定制。嵌入式系統(tǒng)的個性化很強,其中軟件系統(tǒng)和硬件的結(jié)合非常緊密,一般要針對硬件進(jìn)行系統(tǒng)的移植。

(3)系統(tǒng)內(nèi)核小。嵌入式系統(tǒng)一般應(yīng)用于小型電子裝置中,系統(tǒng)資源相對有限,所以內(nèi)核較傳統(tǒng)的操作系統(tǒng)要小得多。例如,

C/OS系統(tǒng)的內(nèi)核只有5KB,而Windows的內(nèi)核則要大得多。

(4)體積小、功耗低、成本低、效率高。由于嵌入式系統(tǒng)集成度高、體積小,所以對其系統(tǒng)軟件和應(yīng)用軟件一般有一些特殊要求,如軟件固化在ROM中,要求具有高質(zhì)量高可靠性的軟件代碼,并具有實時處理能力等。同時,由于嵌入式系統(tǒng)往往沒有充足的電能(如電池供電),所以多為低功耗系統(tǒng)。系統(tǒng)功耗越低,溫度越低,其可靠性和穩(wěn)定性也就越高。

(5)具有較長的生命周期。嵌入式系統(tǒng)與具體應(yīng)用有機結(jié)合在一起,其升級和具體產(chǎn)品同步進(jìn)行。

(6)通常有實時性要求,因此一般都要求有高實時性操作系統(tǒng)(Real-TimeOperatingSystem,RTOS)。這是嵌入式軟件的基本要求,用以實現(xiàn)任務(wù)調(diào)度、資源分配等功能。按照實時性的不同,嵌入式系統(tǒng)可以分為軟實時系統(tǒng)和硬實時系統(tǒng)。軟實時系統(tǒng)對實時要求不高,通常用于人機交互較多的領(lǐng)域,而硬實時系統(tǒng)主要應(yīng)用于工控、航天、軍事等領(lǐng)域。

(7)需要專門的軟、硬件開發(fā)工具和環(huán)境。由于嵌入式系統(tǒng)的運行平臺與開發(fā)平臺是不同的,嵌入式系統(tǒng)本身不具備自主開發(fā)能力,需要專門的軟、硬件開發(fā)工具和環(huán)境,因此開發(fā)較為困難。通常嵌入式系統(tǒng)的開發(fā)采用交叉開發(fā)環(huán)境:開發(fā)平臺稱為宿主機,有豐富的軟、硬件資源;運行嵌入式軟件的平臺稱為目標(biāo)機,資源相對有限。用戶在宿主機上進(jìn)行軟件的編輯、編譯,然后下載到目標(biāo)機上調(diào)試、運行。

嵌入式系統(tǒng)的核心部件是嵌入式處理器,據(jù)不完全統(tǒng)計,截至2000年全球嵌入式處理器的品種總量已經(jīng)超過1000種,流行的體系結(jié)構(gòu)有30多個系列,其中8051體系的占了多半。生產(chǎn)8051單片機的半導(dǎo)體廠家有20多個,共350多種衍生產(chǎn)品,僅NXP就有近百種。1.2嵌入式處理器現(xiàn)在幾乎每個半導(dǎo)體制造商都生產(chǎn)嵌入式處理器,而且越來越多的公司擁有自己的處理器設(shè)計部門。嵌入式處理器的尋址空間一般從64KB到4GB,處理速度從0.1MIPS到2000MIPS,常用封裝從8個引腳到208個引腳。1.2.1嵌入式處理器的分類

從應(yīng)用的角度來劃分,嵌入式處理器包含了下面幾種類型。

1.嵌入式微控制器

嵌入式微控制器(MicrocontrollerUnit,MCU)又稱單片機,它將整個計算機系統(tǒng)集成到一塊芯片中。MCU一般以某一種微處理器內(nèi)核為核心,芯片內(nèi)部集成ROM、RAM、總線邏輯、定時器等各種必要的功能模塊。與微處理器相比,微控制器的最大特點是單片化,體積大大縮小,使功耗和成本下降,可靠性提高。

MCU是目前嵌入式系統(tǒng)應(yīng)用的主流。由于MCU的片上資源一般比較豐富,適于控制,因此稱微控制器。為適應(yīng)不同的應(yīng)用需求,一般一個系列的單片機具有多種衍生產(chǎn)品,每種衍生產(chǎn)品的處理器內(nèi)核都是一樣的,不同的是存儲器和外設(shè)的配置及封裝。這樣可以最大限度地與應(yīng)用需求相匹配,從而減小功耗和成本。

目前MCU的品種和數(shù)量繁多,比較有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。另外,還有許多半通用系列,如支持USB接口的MCU8XC930/931、C540、C541等。

2.嵌入式微處理器

嵌入式微處理器(MicroprocessorUnit,MPU)的基礎(chǔ)是通用計算機中的CPU。為了滿足嵌入式應(yīng)用的特殊要求,MPU雖然在功能上和標(biāo)準(zhǔn)微處理器基本一樣,但在工作溫度、抗電磁干擾、可靠性等方面一般都做了各種增強。

目前MPU主要有Aml86/88、386EX、SC-400、PowerPC、68000、MIPS、ARM系列等。

MPU可分為復(fù)雜指令集計算機CISC和精減指令集計算機RISC兩類。大多數(shù)臺式計算機都使用CISC微處理器,如Intel的X86。RISC結(jié)構(gòu)體系有兩大主流:SiliconGraphics公司(硅谷圖形公司)的MIPS技術(shù)及ARM公司的AdvancedRISCMachines技術(shù)。

RISC和CISC是目前設(shè)計制造微處理器的兩種典型技術(shù),為達(dá)到高效的目的,采用的方法不同。它們的差異主要有以下幾點:

(1)指令系統(tǒng)。RISC設(shè)計者把主要精力放在那些經(jīng)常使用的指令上,對不常用的功能,常通過組合指令來實現(xiàn);CISC計算機的指令系統(tǒng)比較豐富,有專用指令來完成特定的功能。

(2)存儲器操作。RISC對存儲器操作有限制,使控制簡單化;CISC機器的存儲器操作指令多,操作直接。

(3)程序。RISC匯編語言程序一般需要較大的內(nèi)存空間,實現(xiàn)特殊功能時程序復(fù)雜,不易設(shè)計;CISC匯編語言程序編程相對簡單,科學(xué)計算及復(fù)雜操作的程序設(shè)計相對容易,效率較高。

(4)中斷。RISC機器在一條指令執(zhí)行的適當(dāng)?shù)胤娇梢皂憫?yīng)中斷;CISC機器是在一條指令執(zhí)行結(jié)束后響應(yīng)中斷的。

(5)

CPU。RISCCPU包含較少的單元電路,面積小、功耗低;CISCCPU包含豐富的電路單元,功能強、面積大、功耗高。

(6)設(shè)計周期。RISC微處理器結(jié)構(gòu)簡單,布局緊湊,設(shè)計周期短,且易于采用最新技術(shù);CISC微處理器結(jié)構(gòu)復(fù)雜,設(shè)計周期長。

(7)易用性。RISC微處理器結(jié)構(gòu)簡單,指令規(guī)整,性能容易把握,易學(xué)易用;CISC微處理器結(jié)構(gòu)復(fù)雜,功能強大,實現(xiàn)特殊功能容易。

(8)應(yīng)用范圍。RISC機器更適合于嵌入式應(yīng)用,CISC機器則更適合于通用計算機。

3.嵌入式DSP

嵌入式DSP(DigitalSignalProcessor)對系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計,使其適合于執(zhí)行DSP算法,編譯效率較高,指令執(zhí)行速度也較高。在數(shù)字濾波、FFT、譜分析等方面,DSP算法正在大量進(jìn)入嵌入式領(lǐng)域。

推動嵌入式DSP發(fā)展的一個重要因素是嵌入式系統(tǒng)的智能化。例如,各種帶有智能邏輯的消費類產(chǎn)品、生物信息識別終端、帶有加/解密算法的鍵盤、ADSL接入、實時語音壓縮解壓系統(tǒng)、虛擬現(xiàn)實顯示等。這類智能化算法一般運算量都比較大,特別是向量運算、指針線性尋址等較多,而這些正是DSP的長處所在。嵌入式DSP有兩個發(fā)展來源,一是DSP經(jīng)過單片化、EMC改造、增加片上外設(shè)成為嵌入式DSP,例如TI的TMS320C2000/C5000;二是在通用單片機或片上系統(tǒng)(SoC)中增加DSP協(xié)處理器,例如Intel的MCS-296。

嵌入式DSP比較有代表性的產(chǎn)品是TexasInstruments的TMS320系列和Motorola的DSP56000系列。TMS320系列處理器包括用于控制的C2000系列、用于移動通信的C5000系列以及性能更高的C6000和C8000系列。DSP的設(shè)計者們把重點放在了處理連續(xù)的數(shù)據(jù)流上。如果嵌入式應(yīng)用中強調(diào)對連續(xù)數(shù)據(jù)流的處理及高精度復(fù)雜運算,則應(yīng)該選用DSP器件。

4.嵌入式片上系統(tǒng)

隨著VLSI設(shè)計的普及和半導(dǎo)體工藝的迅速發(fā)展,可以在一塊硅片上實現(xiàn)一個更為復(fù)雜的系統(tǒng),這就是SoC(Systemon-Chip)。各種通用處理器內(nèi)核和其它外圍設(shè)備都將成為SoC設(shè)計公司標(biāo)準(zhǔn)庫中的器件,可用標(biāo)準(zhǔn)的VHDL等硬件描述語言描述。用戶只需定義出整個應(yīng)用系統(tǒng),仿真通過后就可以將設(shè)計圖交給半導(dǎo)體工廠制作芯片樣品。這樣,整個嵌入式系統(tǒng)大部分都可以集成到一塊芯片中,應(yīng)用系統(tǒng)的電路板將變得很簡潔,這將有利于減小體積和功耗,從而提高系統(tǒng)的可靠性。嵌入式SoC的設(shè)計關(guān)鍵是IP核的設(shè)計。IP核分為硬核、軟核和固核。IP核設(shè)計是嵌入式技術(shù)的重要支持技術(shù)。在設(shè)計嵌入式系統(tǒng)時,可以通過使用IP核技術(shù)完成系統(tǒng)硬件的設(shè)計。在IP技術(shù)中把不同功能的電路模塊稱為IP,這些IP都是經(jīng)過實際制作并證明其是正確的。在EDA設(shè)計工具中把這些IP組織在一個IP元件庫中,供用戶使用。設(shè)計電子系統(tǒng)時,用戶需要知道IP模塊的功能和技術(shù)性能。把不同的IP模塊嵌入在一個硅片上,可以形成完整的應(yīng)用系統(tǒng)。IP技術(shù)極大地簡化了SoC的設(shè)計過程,縮短了設(shè)計時間,因此已經(jīng)成為目前電子系統(tǒng)設(shè)計的重要的基本技術(shù)。

SoC可以分為通用系列和專用系列兩類。通用系列包括Motorola的M-Core、某些ARM系列器件、Echelon和Motorola聯(lián)合研制的Neuron芯片等。專用SoC一般專用于某類系統(tǒng)中,不為一般用戶所知。1.2.2ARM處理器

ARM(AdvancedRISCMachines)既可以認(rèn)為是一個公司的名字,也可以認(rèn)為是對一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。1991年ARM公司成立于英國劍橋,主要出售芯片設(shè)計技術(shù)的授權(quán)。目前,采用ARM技術(shù)知識產(chǎn)權(quán)(IP)核的微處理器,即通常所說的ARM微處理器,已廣泛應(yīng)用于工業(yè)控制、消費類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無線系統(tǒng)等各個領(lǐng)域。

1.ARM微處理器的應(yīng)用領(lǐng)域

1)工業(yè)控制領(lǐng)域

作為32位的RISC架構(gòu),基于ARM核的微控制器芯片不但占據(jù)了高端微控制器市場的大部分市場份額,而且也逐漸向低端微控制器應(yīng)用領(lǐng)域擴展,ARM微控制器的低功耗、高性價比,向傳統(tǒng)的8位/16位微控制器提出了挑戰(zhàn)。

2)無線通信領(lǐng)域

目前已有超過85%的無線通信設(shè)備采用了ARM技術(shù),ARM以其高性能和低成本,在該領(lǐng)域的地位日益鞏固。

3)網(wǎng)絡(luò)應(yīng)用

隨著寬帶技術(shù)的推廣,采用ARM技術(shù)的ADSL芯片正逐步獲得競爭優(yōu)勢。此外,ARM在語音及視頻處理上進(jìn)行了優(yōu)化,并獲得廣泛支持,也對DSP的應(yīng)用領(lǐng)域提出了挑戰(zhàn)。

4)消費類電子產(chǎn)品

ARM技術(shù)在目前流行的數(shù)字音頻播放器、數(shù)字機頂盒和游戲機中得到廣泛應(yīng)用。

5)成像和安全產(chǎn)品

現(xiàn)在流行的數(shù)碼相機和打印機中絕大部分采用ARM技術(shù)。手機中的32位SIM智能卡也采用了ARM技術(shù)。

2.ARM微處理器的特點

ARM微處理器有如下特點:

(1)體積小、功耗低、成本低、性能高;

(2)支持Thumb(16位)/ARM(32位)雙指令集,兼容8位/16位器件;

(3)大量使用寄存器,指令執(zhí)行速度更快;

(4)大多數(shù)數(shù)據(jù)操作都在寄存器中完成;

(5)尋址方式靈活簡單,執(zhí)行效率高;

(6)指令長度固定。

3.ARM微處理器系列

ARM微處理器的體系結(jié)構(gòu)從最初開發(fā)到目前已有了很大的改進(jìn),并仍在完善和發(fā)展中。為了清楚地表達(dá)每個ARM應(yīng)用實例所使用的指令集,ARM公司定義了7種主要的ARM指令集體系結(jié)構(gòu)版本,以版本號V1~V7表示。

(1)

V1版架構(gòu)只在原型機ARM1中出現(xiàn)過,只有26位的尋址空間,沒有用于商業(yè)產(chǎn)品。其尋址空間為64MB。

(2)

V2版架構(gòu)對V1版進(jìn)行了擴展,例如ARM2和ARM3(V2a)架構(gòu)。V2包含了對32位乘法指令和協(xié)處理器指令的支持。版本V2a是版本V2的變種,ARM3芯片采用了版本V2a,是第一個采用片上Cache的ARM處理器。

(3)

V3版架構(gòu)是ARM公司于1990年設(shè)計的第一個微處理器ARM6。它是一款I(lǐng)P核獨立的處理器,具有片上高速緩存、MMU和寫緩沖等功能,其變種版本有V3G和V3M。它的尋址空間增至32位(4GB),當(dāng)前程序狀態(tài)信息從原來的R15寄存器移到當(dāng)前程序狀態(tài)寄存器CPSR中(CurrentProgramStatusRegister)。V3版架構(gòu)增加了程序狀態(tài)保存寄存器SPSR(SavedProgramStatusRegister)和兩種異常模式,使操作系統(tǒng)代碼可方便地使用數(shù)據(jù)訪問中止異常、指令預(yù)取中止異常和未定義指令異常。

(4)

V4版架構(gòu)在V3版上作了進(jìn)一步擴充,它是目前應(yīng)用最廣的ARM體系結(jié)構(gòu),ARM7、ARM8、ARM9和StrongARM都采用該架構(gòu)。V4不再強制要求與26位地址空間兼容,而且還明確了哪些指令會引起未定義指令異常。其指令集增加了T變種,處理器可工作在Thumb狀態(tài),增加了16位Thumb指令集,完善了軟件中斷SWI指令的功能。V4版架構(gòu)處理器系統(tǒng)模式引進(jìn)特權(quán)方式時使用用戶寄存器操作,把一些未使用的指令空間捕獲為未定義指令。

(5)

V5版架構(gòu)在V4版基礎(chǔ)上增加了一些新的指令,ARM10和XScale都采用該版架構(gòu)。其新增的指令有帶有鏈接和交換的轉(zhuǎn)移BLX指令、計數(shù)前導(dǎo)零CLZ指令、BRK中斷指令和數(shù)字信號處理指令(V5TE版)。V5還為協(xié)處理器增加了更多可選擇的指令,改進(jìn)了ARM/Thumb狀態(tài)之間的切換效率,它的指令增加了E變種(增強型DSP指令集,包括全部算法操作和16位乘法操作)和J變種(支持新的JAVA,提供字節(jié)代碼執(zhí)行的硬件和優(yōu)化軟件加速功能)。

(6)

V6版架構(gòu)是2001年發(fā)布的,并在2002年春季發(fā)布的ARM11處理器中使用。V6在降低耗電量的同時,還強化了圖形處理性能。通過追加有效進(jìn)行多媒體處理的SIMD(SingleInstruction,MultipleData,單指令多數(shù)據(jù))功能,將語音及圖像的處理功能提高到了原型機的4倍。

(7)

V7架構(gòu)是在V6架構(gòu)的基礎(chǔ)上誕生的。該架構(gòu)采用了Thumb-2技術(shù),它是在ARM的Thumb代碼壓縮技術(shù)的基礎(chǔ)上發(fā)展起來的,并且保持了對現(xiàn)存ARM解決方案的完整的代碼兼容性。Thumb-2技術(shù)比純32位代碼少使用31%的內(nèi)存,減小了系統(tǒng)開銷,同時能夠提供比已有的基于Thumb技術(shù)的解決方案高出38%的性能。V7架構(gòu)還采用了NEON技術(shù),將DSP和媒體處理能力提高了近4倍,并支持改良的浮點運算,滿足下一代3D圖形、游戲物理應(yīng)用以及傳統(tǒng)嵌入式控制應(yīng)用的需求。此外,V7架構(gòu)還支持改良的運行環(huán)境,以迎合不斷增加的JIT(JustInTime)和DAC(DynamicAdaptiveCompilation)技術(shù)的使用。

目前市面上常用的ARM處理器有ARM7系列、ARM9系列、ARM9E系列、ARM10系列、ARM11系列、Cortex系列和SecurCore系列,分別用于開發(fā)不同的產(chǎn)品。如ARM7系列適用于工業(yè)控制、網(wǎng)絡(luò)設(shè)備、移動電話等應(yīng)用;ARM9、ARM9E和ARM10E系列則更適合無線設(shè)備、消費類電子產(chǎn)品的設(shè)計;SecurCore系列專門為安全要求較高的應(yīng)用而設(shè)計。

常見的基于ARM核的產(chǎn)品有Intel公司的XScale系列,ST公司的STM32系列,F(xiàn)reescale公司龍珠系列iMX處理器,TI公司DSP+ARM處理器OMAP和Cortex核的LM3S系列,CirrusLogic公司的ARM系列,SamSung公司的ARM系列,Atmel公司的AT91系列微控制器,NXP公司的微控制器系列。

4.ARMCortex處理器簡介

ARM公司在ARM11系列以后的產(chǎn)品改用Cortex命名,并分成A、R和M三類,旨在為各種不同的市場提供服務(wù)。

Cortex系列屬于V7架構(gòu),它是ARM公司最新的指令集架構(gòu)。V7架構(gòu)定義了三大分工明確的系列:A系列面向尖端的基于虛擬內(nèi)存的操作系統(tǒng)和用戶應(yīng)用,R系列針對實時系統(tǒng),M系列針對微控制器。由于應(yīng)用領(lǐng)域不同,基于V7架構(gòu)的Cortex處理器系列所采用的技術(shù)也不相同,基于V7A的稱為Cortex-A系列,基于V7R的稱為Cortex-R系列,基于V7M的稱為Cortex-M系列。

1)

Cortex-A處理器

Cortex-A處理器適用于具有高計算要求、運行豐富操作系統(tǒng)以及提供交互媒體和圖形體驗的應(yīng)用領(lǐng)域。從最新技術(shù)的移動Internet必備設(shè)備(如手機和超便攜的上網(wǎng)筆記本或智能筆記本)到汽車信息娛樂系統(tǒng)和下一代數(shù)字電視系統(tǒng),ARMCortex-A處理器可向托管豐富的操作系統(tǒng)平臺的設(shè)備和用戶應(yīng)用提供全方位的解決方案,包括超低成本的手機、智能手機、移動計算平臺、數(shù)字電視、機頂盒、企業(yè)網(wǎng)絡(luò)、打印機和服務(wù)器解決方案。高性能的Cortex-A15、可伸縮的Cortex-A9、經(jīng)過市場驗證的Cortex-A8處理器和高效的Cortex-A5處理器均共享同一體系結(jié)構(gòu),因此具有完整的應(yīng)用兼容性,支持傳統(tǒng)的ARM、Thumb?指令集和新增的高性能緊湊型Thumb-2指令集。

Cortex-A處理器的應(yīng)用非常廣泛,具體包括上網(wǎng)筆記本、智能筆記本、輸入板、電子書閱讀器、智能手機、特色手機、數(shù)字家電、機頂盒、數(shù)字電視、藍(lán)光播放器、游戲控制臺、導(dǎo)航、激光打印機、路由器、無線基站、VOIP電話和設(shè)備、Web2.0、無線基站、交換機、服務(wù)器等。Cortex-A處理器的應(yīng)用示例如圖1.1所示。

目前比較常見的Cortex-A處理器型號有Cortex-A8、Cortex-A9等。

圖1.1Cortex-A處理器的應(yīng)用示例

2)

Cortex-R處理器

Cortex-R處理器為具有嚴(yán)格的實時響應(yīng)限制的深層嵌入式系統(tǒng)提供高性能計算解決方案,為范圍廣泛的深層嵌入式半導(dǎo)體應(yīng)用市場設(shè)置了行業(yè)標(biāo)準(zhǔn),提供了大約20個許可接收方、100個設(shè)計和數(shù)百萬的設(shè)備。

(1)

Cortex-R處理器的目標(biāo)應(yīng)用。Cortex-R處理器的目標(biāo)應(yīng)用包括智能手機和基帶調(diào)制解調(diào)器中的移動手機處理、企業(yè)系統(tǒng)、硬盤驅(qū)動器、聯(lián)網(wǎng)和打印、家庭消費性電子產(chǎn)品、機頂盒、數(shù)字電視、媒體播放器和數(shù)碼相機以及應(yīng)用于醫(yī)療行業(yè)、工業(yè)和汽車行業(yè)的可靠系統(tǒng)的嵌入式微控制器。在這些應(yīng)用中,采用的是對處理響應(yīng)設(shè)置硬截止時間的系統(tǒng),如果要避免數(shù)據(jù)丟失或機械損傷,則必須符合所設(shè)置的這些硬截止時間。因此Cortex-R處理器是專為高性能、高可靠性和容錯能力而設(shè)計的,其行為具有高確定性,同時保持很高的能效和成本效益。

(2)

Cortex-R處理器的主要功能。

①快速:以高時鐘頻率獲得高處理性能;

②確定性:處理在所有場合都必須符合硬實時限制;

③安全:系統(tǒng)必須可靠且可信(某些系統(tǒng)須是安全關(guān)鍵系統(tǒng));④成本效益:在處理器及其內(nèi)存系統(tǒng)中都具有競爭力的成本和功耗。

此功能集將Cortex-R、Cortex-M和Cortex-A系列處理器區(qū)別開來。顯而易見,Cortex-R提供的性能比Cortex-M系列提供的性能高得多,而Cortex-A專用于具有復(fù)雜軟件操作系統(tǒng)(使用虛擬內(nèi)存管理)的面向用戶的應(yīng)用。

Cortex-R處理器保持了與經(jīng)典ARM處理器(如ARM7TDMI-S、ARM946E-S、ARM968E-S和ARM1156T2-S)的二進(jìn)制兼容性,因此可確保應(yīng)用的可移植性。它對于經(jīng)認(rèn)證可用于汽車系統(tǒng)的代碼很有用,當(dāng)舊源代碼不再可用時也非常有用。這些嵌入式系統(tǒng)處理器通常運行實時軟件操作系統(tǒng)(RTOS)并且不需要虛擬內(nèi)存管理單元(MMU)。但是,實時ARM處理器支持內(nèi)存保護(hù)單元(MPU)和緊密耦合內(nèi)存(TCM),它們使代碼和數(shù)據(jù)隨時可供處理器訪問。

Cortex-R系列處理器常用的有Cortex-R4、Cortex-R5和Cortex-R7等,主要滿足深層嵌入式和實時市場(如汽車安全或無線基帶)所要求的主要功能。Cortex-R處理器的應(yīng)用示例如圖1.2所示。

圖1.2Cortex-R處理器的應(yīng)用示例

3)

Cortex-M處理器

Cortex-M處理器是全球微控制器標(biāo)準(zhǔn),已許可給40個以上的ARM合作伙伴,包括NXPSemiconductors、STMicroelectronics、TexasInstruments和Toshiba等領(lǐng)先供應(yīng)商。使用標(biāo)準(zhǔn)處理器可以使ARM合作伙伴創(chuàng)建具有一致體系結(jié)構(gòu)的設(shè)備,同時使它們可以專注于創(chuàng)建優(yōu)秀的設(shè)備實現(xiàn)。

Cortex-M處理器是一系列可向上兼容的高能效、易于使用的處理器,這些處理器旨在幫助開發(fā)人員滿足將來的嵌入式應(yīng)用的需要。這些需要包括以更低的成本提供更多功能、不斷增加連接、改善代碼重用和提高能效。Cortex-M系列針對成本和功耗敏感的MCU和終端應(yīng)用(如智能測量、人機接口設(shè)備、汽車和工業(yè)控制系統(tǒng)、大型家用電器、消費性產(chǎn)品和醫(yī)療器械)的混合信號設(shè)備進(jìn)行過優(yōu)化。Cortex-M處理器的應(yīng)用示例如圖1.3所示。

圖1.3Cortex-M處理器的應(yīng)用示例

Cortex-M處理器的主要特點如下:

(1)能效。具有更低的功耗,更長的電池壽命。處理器能以更低的頻率或更短的活動時段運行,同時具有基于架構(gòu)的睡眠模式支持,比8/16位設(shè)備的工作方式更智能,睡眠時間更長。

(2)更小的代碼。Cortex-M處理器具有高密度指令集,可比8/16位設(shè)備每字節(jié)完成更多操作,因此也只需要更小的RAM、ROM或閃存要求。

(3)易于使用。擁有多個供應(yīng)商之間的全球標(biāo)準(zhǔn),能夠更快地開發(fā)軟件。

(4)代碼兼容性。Cortex-M處理器具有統(tǒng)一的開發(fā)工具和操作系統(tǒng)支持。

(5)高性能。Cortex-M處理器是更有競爭力的產(chǎn)品,每兆赫茲可提供更高的性能,能夠以更低的功耗實現(xiàn)更豐富的功能。

目前比較常見的Cortex-M處理器有Cortex-M0和Cortex-M3。

(1)Cortex-M0處理器。Cortex-M0處理器是現(xiàn)有的體積最小、能耗最低且能效最高的ARM處理器。該處理器硅面積極小、能耗極低并且所需的代碼量極少,這使得開發(fā)人員能夠以8位設(shè)備的價格實現(xiàn)32位設(shè)備的性能,從而省略16位設(shè)備的研發(fā)步驟。Cortex-M0處理器超低的門數(shù)也使得它可以部署在模擬和混合信號設(shè)備中。

Cortex-M0的代碼密度和能效優(yōu)勢意味著它是各種應(yīng)用中8/16位設(shè)備的自然高性價比換代產(chǎn)品,同時保留與功能豐富的Cortex-M3處理器的工具和二進(jìn)制向上兼容性。

Cortex-M0處理器具有超低的能耗,在不到12K門的面積內(nèi)能耗僅有85μW/MHz(0.085mW),所憑借的是作為低能耗技術(shù)的領(lǐng)導(dǎo)者和創(chuàng)建超低能耗設(shè)備的主要推動者的無與倫比的ARM專門技術(shù)。它的指令只有56個,開發(fā)人員可以快速掌握整個Cortex-M0指令集,但其C語言友好體系結(jié)構(gòu)意味著這并不是必需的??晒┻x擇的具有完全確定性的指令和中斷計時使得計算響應(yīng)時間十分容易。同時,Cortex-M0處理器設(shè)計為支持低能耗連接,如BluetoothLowEnergy(BLE)、IEEE802.15和Z-wave,在這樣的模擬設(shè)備中,這些模擬設(shè)備正在增加其數(shù)字功能,以有效地預(yù)處理和傳輸數(shù)據(jù)。

(2)

Cortex-M3處理器。ARM公司于2004年引進(jìn)并通過新技術(shù)更新了可配置性的Cortex-M3處理器,它是專門針對微控制器應(yīng)用開發(fā)的主流ARM處理器,是行業(yè)領(lǐng)先的32位處理器,適用于具有高確定性的實時應(yīng)用,已專門開發(fā)為允許合作伙伴為范圍廣泛的設(shè)備(包括微控制器、汽車車體系統(tǒng)、工業(yè)控制系統(tǒng)以及無線網(wǎng)絡(luò)和傳感器)開發(fā)高性能、低成本的平臺。該處理器提供出色的計算性能和對事件的卓越系統(tǒng)響應(yīng),同時可以應(yīng)對低動態(tài)和靜態(tài)功率限制的挑戰(zhàn)。該處理器是高度可配置的,可以支持范圍廣泛的實現(xiàn)(從那些需要內(nèi)存保護(hù)和強大跟蹤技術(shù)的實現(xiàn)到那些需要極小面積的對成本非常敏感的設(shè)備)。

Cortex-M3處理器提供更高的性能和更豐富的功能,它具有高性能和低動態(tài)能耗,在90

nm制程時的額定功效為12.5DMIPS/mW。將集成的睡眠模式與可選的狀態(tài)保留功能相結(jié)合,Cortex-M3處理器確保對于同時需要低能耗和出色性能的應(yīng)用不存在折中。

Cortex-M3處理器執(zhí)行Thumb?-2指令集以獲得最佳性能和代碼大小,包括硬件除法、單周期乘法和位字段操作。Cortex-M3NVIC在設(shè)計時是高度可配置的,最多可提供240個具有單獨優(yōu)先級、動態(tài)重設(shè)優(yōu)先級功能和集成系統(tǒng)時鐘的系統(tǒng)中斷。

Cortex-M3處理器具有豐富的外圍設(shè)備連接,功能和性能的組合使基于Cortex-M3的設(shè)備可以有效處理多個I/O通道和協(xié)議標(biāo)準(zhǔn),如USBOTG(On-The-Go)、Ethernet、CANBus等。

1.3.1操作系統(tǒng)的概念

大型嵌入式系統(tǒng)通常需要完成復(fù)雜的功能,所以需要操作系統(tǒng)來完成各任務(wù)之間的調(diào)度。由于桌面型操作系統(tǒng)的體積以及實時性等特性不能滿足嵌入式系統(tǒng)的要求,從而促進(jìn)了嵌入式操作系統(tǒng)的發(fā)展。1.3嵌入式操作系統(tǒng)操作系統(tǒng)(OperatingSystem,OS)的基本思想是隱藏底層不同硬件的差異,向在其上運行的應(yīng)用程序提供一個統(tǒng)一的調(diào)用接口。應(yīng)用程序通過這一接口實現(xiàn)對硬件的使用和控制,不必考慮不同硬件操作方式的差異。

很多產(chǎn)品廠商選擇購買操作系統(tǒng),并在此基礎(chǔ)上開發(fā)自己的應(yīng)用程序,形成產(chǎn)品。事實上,因為嵌入式系統(tǒng)是將所有程序,包括操作系統(tǒng)、驅(qū)動程序及應(yīng)用程序的程序代碼全部燒寫進(jìn)ROM中執(zhí)行,所以操作系統(tǒng)在這里的角色更像是一套函數(shù)庫(Library)。操作系統(tǒng)主要完成三項任務(wù):內(nèi)存管理、多任務(wù)管理和外圍設(shè)備管理。

嵌入式操作系統(tǒng)(EmbeddedOperatingSystem,EOS)負(fù)責(zé)嵌入式系統(tǒng)的全部軟、硬件資源的分配、調(diào)度、控制、協(xié)調(diào)。它必須體現(xiàn)其所在系統(tǒng)的特征,能夠通過加載/卸載某些模塊來達(dá)到系統(tǒng)所要求的功能。

EOS是相對于一般操作系統(tǒng)而言的,它除具備了一般操作系統(tǒng)最基本的功能,如任務(wù)調(diào)度、同步機制、中斷處理、文件處理等外,還有以下特點:

(1)強穩(wěn)定性,弱交互性。嵌入式系統(tǒng)一旦開始運行就不需要用戶過多的干預(yù),這就要求負(fù)責(zé)系統(tǒng)管理的EOS具有很強的穩(wěn)定性。

(2)較強的實時性。EOS實時性一般較強,可用于各種設(shè)備的控制當(dāng)中。

(3)可伸縮性。EOS具有開放、可伸縮性的體系結(jié)構(gòu)。

(4)外設(shè)接口的統(tǒng)一性。EOS提供各種設(shè)備驅(qū)動接口。

嵌入式系統(tǒng)的操作系統(tǒng)核心通常要求體積很小,因為硬件ROM的容量有限,除了應(yīng)用程序之外,不希望操作系統(tǒng)占用太大的存儲空間。事實上,嵌入式操作系統(tǒng)可以很小,只提供基本的管理功能和調(diào)度功能??s小到10KB~20KB以內(nèi)的嵌入式操作系統(tǒng)比比皆是。不同的應(yīng)用場合會產(chǎn)生不同特點的嵌入式操作系統(tǒng),但都會有一個核心(Kernel)和一些系統(tǒng)服務(wù)(SystemService)。操作系統(tǒng)必須提供一些系統(tǒng)服務(wù)供應(yīng)用程序調(diào)用,包括文件系統(tǒng)、內(nèi)存分配、I/O存取服務(wù)、中斷服務(wù)、任務(wù)(Task)服務(wù)、時間(Timer)服務(wù)等,設(shè)備驅(qū)動程序(DeviceDriver)則是要建立在I/O存取和中斷服務(wù)上的。有些嵌入式操作系統(tǒng)也會提供多種通信協(xié)議,以及用戶接口函數(shù)庫等。1.3.2嵌入式Linux

Linux是目前最為流行的一款開放源代碼的操作系

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論