![《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件_第1頁](http://file4.renrendoc.com/view/501eb1fb5c3cc681830a7d997d6e0b57/501eb1fb5c3cc681830a7d997d6e0b571.gif)
![《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件_第2頁](http://file4.renrendoc.com/view/501eb1fb5c3cc681830a7d997d6e0b57/501eb1fb5c3cc681830a7d997d6e0b572.gif)
![《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件_第3頁](http://file4.renrendoc.com/view/501eb1fb5c3cc681830a7d997d6e0b57/501eb1fb5c3cc681830a7d997d6e0b573.gif)
![《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件_第4頁](http://file4.renrendoc.com/view/501eb1fb5c3cc681830a7d997d6e0b57/501eb1fb5c3cc681830a7d997d6e0b574.gif)
![《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件_第5頁](http://file4.renrendoc.com/view/501eb1fb5c3cc681830a7d997d6e0b57/501eb1fb5c3cc681830a7d997d6e0b575.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《嵌入式系統(tǒng)原理與技術(shù)》全冊(cè)配套課件嵌入式系統(tǒng)
主要內(nèi)容1324嵌入式系統(tǒng)簡(jiǎn)介嵌入式處理器嵌入式操作系統(tǒng)嵌入式系統(tǒng)的典型應(yīng)用5嵌入式系統(tǒng)的基本設(shè)計(jì)過程嵌入式系統(tǒng)的應(yīng)用領(lǐng)域嵌入式應(yīng)用信息家電智能玩具軍事電子通信設(shè)備移動(dòng)存貯工控設(shè)備智能儀表汽車電子網(wǎng)絡(luò)設(shè)備消費(fèi)電子軍事國防電子商務(wù)網(wǎng)絡(luò)工業(yè)控制goReaderInterneteBookSamsungAnyWebInternetScreenPhoneeRemoteIntelligentHomeControllerTektronixTDS7000DigitalOscilloscopesNixvueDigitalAlbumDigitalPhotoAlbum一些典型的嵌入式系統(tǒng)應(yīng)用實(shí)例嵌入式系統(tǒng)的應(yīng)用家用方面:數(shù)字電視、信息家電、智能玩具、手持通訊、存儲(chǔ)設(shè)備的核心。電飯煲日本原裝進(jìn)口TIGER/虎牌JAH-T18C電飯煲電飯鍋全球是處于領(lǐng)先的地位,為了追求極致,日本的廠商想盡了一切辦法,煮出來的米飯能帶來與眾不同的感受智能馬桶蓋智能馬桶蓋起源于美國,日本最初引進(jìn)并進(jìn)行改良,于80年代推出全新產(chǎn)品,加入了集便蓋加熱、溫水洗凈、暖風(fēng)干燥、殺菌等多種功能。嵌入式視頻服務(wù)器現(xiàn)代化家庭嵌入式Internet應(yīng)用嵌入式系統(tǒng)在信息家電中的應(yīng)用信息家電(InformationAppliance)一般可認(rèn)為,那些低單價(jià)、操作簡(jiǎn)單、可通過因特網(wǎng)發(fā)送或獲取信息,將逐步分割或替代PC的某些功能,并能與其它信息產(chǎn)品交換資料或訊息的產(chǎn)品可統(tǒng)稱為信息家電。信息家電的分類及特點(diǎn)信息家電的分類網(wǎng)絡(luò)電視(NetTV)網(wǎng)上游戲機(jī)(Internetgamingdevice)智能掌上型設(shè)備(Internetsmarthandhelddevice)網(wǎng)絡(luò)電話(InternetscreenPhone)ConsumerNCclient等。信息家電技術(shù)特點(diǎn)處理器發(fā)展趨向低成本、高整合性與低耗能。整合數(shù)字與模擬處理的技術(shù)。較PC更強(qiáng)調(diào)通訊能力。利用軟件增加產(chǎn)品的差異性(高附加價(jià)值的關(guān)鍵)典型的信息家電產(chǎn)品信息家電定義代表性產(chǎn)品網(wǎng)絡(luò)電視具有機(jī)頂盒或內(nèi)建網(wǎng)絡(luò)連接的電視MicrosoftWebTV網(wǎng)絡(luò)可視電話具有集成網(wǎng)絡(luò)接入的屏幕電話InfoGeariPhone網(wǎng)絡(luò)游戲機(jī)具有集成網(wǎng)絡(luò)接入的游戲操縱臺(tái)SegaDreamcast網(wǎng)絡(luò)智能手持器件蜂窩電話、個(gè)人數(shù)據(jù)助理(PDA)和其它集成網(wǎng)絡(luò)接入的便攜式器件3ComPalmAT&TPocketNetPhoneNokia9000,9000I,9110,7110NC委托(clients)提供網(wǎng)絡(luò)接入以及能下載應(yīng)用軟件的器件IBMNetStationPC-中間器件通過PC接入網(wǎng)絡(luò)以下載內(nèi)容的器件DIAMONMultimediaRioPlayerNuvomediaRockete-BookAudibleMobilePlayerSource:IDC,Hambrecht&Quist信息家電——數(shù)字機(jī)頂盒汽車電子產(chǎn)品(18個(gè)嵌入式控制模塊)——CAN總線網(wǎng)絡(luò)VOLVOS80汽車的CAN總線網(wǎng)絡(luò)
嵌入式應(yīng)用——汽車電子智能玩具與機(jī)器人嵌入式技術(shù)應(yīng)用——工業(yè)控制工業(yè)方面:機(jī)床、冶金、電子、交通、航空航天等行業(yè)技術(shù)升級(jí)的重要基礎(chǔ)阿富汗參加反恐作戰(zhàn)的“赫耳墨斯”價(jià)值4萬美元,可攜帶2架攝像機(jī),發(fā)揮了很好作用。軍事偵察2002年11月28日,以色列一選舉投票點(diǎn),發(fā)生槍擊事件,造成至少7人死亡,數(shù)十人受傷。以警方用機(jī)器人在檢查一具巴勒斯坦槍手的尸體。反恐防暴微型飛行器“黑寡婦”空中飛行器基于WinCE的移動(dòng)機(jī)器人平臺(tái)基于RTLinux的仿人機(jī)器人高48cm
重:6kg
靈活性:20DOF操作系統(tǒng):RT-Linux
接口形式:USB1.0(12Mbps)響應(yīng)周期:1ms
能源:DC24Vx6.2A(150W)制造:富士通基于VXworks的火星探路者2004年“勇氣號(hào)”再次登陸火星
嵌入式系統(tǒng)
倪福川華中農(nóng)業(yè)大學(xué)理學(xué)院計(jì)算機(jī)系主要內(nèi)容1324嵌入式系統(tǒng)簡(jiǎn)介嵌入式處理器嵌入式操作系統(tǒng)嵌入式系統(tǒng)典型應(yīng)用5嵌入式系統(tǒng)的基本設(shè)計(jì)過程嵌入式系統(tǒng)簡(jiǎn)介定義:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)◆嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)和各個(gè)行業(yè)的具體應(yīng)用相結(jié)合后的產(chǎn)物,它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。嵌入式系統(tǒng)組成嵌入式系統(tǒng)的構(gòu)架可以分成四個(gè)部分:處理器、存儲(chǔ)器、輸入輸出(I/O)和軟件(由于多數(shù)嵌入式設(shè)備的應(yīng)用軟件和操作系統(tǒng)都是緊密結(jié)合)嵌入式系統(tǒng)必須根據(jù)應(yīng)用需求對(duì)軟硬件進(jìn)行裁剪,滿足應(yīng)用系統(tǒng)的功能、可靠性、成本、體積等要求。如果能建立相對(duì)通用的軟硬件基礎(chǔ),然后在其上開發(fā)出適應(yīng)各種需要的系統(tǒng),是一個(gè)比較好的發(fā)展模式。嵌入式系統(tǒng)簡(jiǎn)介
微處理器(MicroprocessorUnit,MPU)
微控制器(MicrocontrollerUnit,MCU)
嵌入式DSP(EmbeddedDigitalSignalProcessor,EDSP)
片上系統(tǒng)(SystemOnChip)
嵌入式處理器分類微處理器(MicroprocessorUnit,MPU)
微控制器(MicrocontrollerUnit,MCU)
嵌入式DSP(EmbeddedDigitalSignalProcessor,EDSP)
片上系統(tǒng)(SystemOnChip)
嵌入式微處理器目前主要的嵌入式處理器類型有Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM/StrongARM系列等嵌入式微處理器嵌入式微控制器又稱單片機(jī)芯片內(nèi)部集成ROM/EPROM、RAM、總線、總線邏輯、定時(shí)/計(jì)數(shù)器、看門狗、I/O、串行口、脈寬調(diào)制輸出、A/D、D/A、FlashRAM、EEPROM等各種必要功能和外設(shè)。代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。嵌入式微控制器微控制器的最大特點(diǎn)是單片化,體積大大減小,從而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系統(tǒng)工業(yè)的主流。微控制器的片上外設(shè)資源一般比較豐富,適合于控制,因此稱為微控制器。嵌入式DSP處理器DSP處理器是專門用于信號(hào)處理方面的處理器,其在系統(tǒng)結(jié)構(gòu)和指令算法方面進(jìn)行了特殊設(shè)計(jì),在數(shù)字濾波、FFT、譜分析等各種儀器上DSP獲得了大規(guī)模的應(yīng)用。DSP處理器對(duì)系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計(jì),使其適合于執(zhí)行DSP算法,編譯效率較高,指令執(zhí)行速度也較高。嵌入式DSP處理器有代表性的產(chǎn)品是TexasInstruments的
TMS320系列和Motorola的DSP56000系列。Motorola公司的DSP56000已經(jīng)發(fā)展成為DSP56000,DSP56100,DSP56200和DSP56300等幾個(gè)不同系列的處理器。PHILIPS公司今年來也推出了基于可重置嵌入式DSP結(jié)構(gòu)低成本、低功耗技術(shù)上制造的DSP處理器,特點(diǎn)是具備雙Harvard結(jié)構(gòu)和雙乘/累加器單元,應(yīng)用目標(biāo)是大批量消費(fèi)類電子產(chǎn)品。SoC就是SystemonChip,SoC是一種基于IP(IntellectualProperty)核嵌入式系統(tǒng)設(shè)計(jì)技術(shù)。
它結(jié)合了許多功能區(qū)塊,將功能做在一個(gè)芯片上,ARMRISC、MIPSRISC、DSP或是其他的微處理器核心,加上通信的接口單元,例如通用串行端口(USB)、TCP/IP通信單元、GPRS通信接口、GSM通信接口、IEEE1394、藍(lán)牙模塊接口等等,這些單元以往都是依照各單元的功能做成一個(gè)個(gè)獨(dú)立的處理芯片。嵌入式片上系統(tǒng)(SoC)SOC體系結(jié)構(gòu)ASICCoreMemoryEmbeddedProcessorCoreAnalogFunctionsCommunicationSensorInterfaceSOC體系結(jié)構(gòu)在一個(gè)硅片上實(shí)現(xiàn)一個(gè)復(fù)雜的系統(tǒng)各種通用處理器內(nèi)核將作為標(biāo)準(zhǔn)庫,和許多其它嵌入式系統(tǒng)外設(shè)一樣,成為VLSI設(shè)計(jì)中一種標(biāo)準(zhǔn)的器件,用標(biāo)準(zhǔn)的VHDL等語言描述,存儲(chǔ)在器件庫中。用戶只需定義出其整個(gè)應(yīng)用系統(tǒng),仿真通過后就可以將設(shè)計(jì)圖交給半導(dǎo)體工廠制作樣品。大部分均可集成到一塊或幾塊芯片中去,應(yīng)用系統(tǒng)電路板將變得很簡(jiǎn)潔,對(duì)于減小體積和功耗、提高可靠性非常有利。知識(shí)產(chǎn)權(quán)主要內(nèi)容1324嵌入式系統(tǒng)簡(jiǎn)介嵌入式處理器嵌入式操作系統(tǒng)嵌入式系統(tǒng)的典型應(yīng)用5嵌入式系統(tǒng)的基本設(shè)計(jì)過程嵌入式系統(tǒng)的應(yīng)用領(lǐng)域嵌入式應(yīng)用信息家電智能玩具軍事電子通信設(shè)備移動(dòng)存貯工控設(shè)備智能儀表汽車電子網(wǎng)絡(luò)設(shè)備消費(fèi)電子軍事國防電子商務(wù)網(wǎng)絡(luò)工業(yè)控制goReaderInterneteBookSamsungAnyWebInternetScreenPhoneeRemoteIntelligentHomeControllerTektronixTDS7000DigitalOscilloscopesNixvueDigitalAlbumDigitalPhotoAlbum一些典型的嵌入式系統(tǒng)應(yīng)用實(shí)例嵌入式系統(tǒng)的應(yīng)用家用方面:數(shù)字電視、信息家電、智能玩具、手持通訊、存儲(chǔ)設(shè)備的核心。嵌入式視頻服務(wù)器現(xiàn)代化家庭嵌入式Internet應(yīng)用嵌入式系統(tǒng)在信息家電中的應(yīng)用信息家電(InformationAppliance)一般可認(rèn)為,那些低單價(jià)、操作簡(jiǎn)單、可通過因特網(wǎng)發(fā)送或獲取信息,將逐步分割或替代PC的某些功能,并能與其它信息產(chǎn)品交換資料或訊息的產(chǎn)品可統(tǒng)稱為信息家電。信息家電的分類及特點(diǎn)信息家電的分類網(wǎng)絡(luò)電視(NetTV)網(wǎng)上游戲機(jī)(Internetgamingdevice)智能掌上型設(shè)備(Internetsmarthandhelddevice)網(wǎng)絡(luò)電話(InternetscreenPhone)ConsumerNCclient等。信息家電技術(shù)特點(diǎn)處理器發(fā)展趨向低成本、高整合性與低耗能。整合數(shù)字與模擬處理的技術(shù)。較PC更強(qiáng)調(diào)通訊能力。利用軟件增加產(chǎn)品的差異性(高附加價(jià)值的關(guān)鍵)典型的信息家電產(chǎn)品信息家電定義代表性產(chǎn)品網(wǎng)絡(luò)電視具有機(jī)頂盒或內(nèi)建網(wǎng)絡(luò)連接的電視MicrosoftWebTV網(wǎng)絡(luò)可視電話具有集成網(wǎng)絡(luò)接入的屏幕電話InfoGeariPhone網(wǎng)絡(luò)游戲機(jī)具有集成網(wǎng)絡(luò)接入的游戲操縱臺(tái)SegaDreamcast網(wǎng)絡(luò)智能手持器件蜂窩電話、個(gè)人數(shù)據(jù)助理(PDA)和其它集成網(wǎng)絡(luò)接入的便攜式器件3ComPalmAT&TPocketNetPhoneNokia9000,9000I,9110,7110NC委托(clients)提供網(wǎng)絡(luò)接入以及能下載應(yīng)用軟件的器件IBMNetStationPC-中間器件通過PC接入網(wǎng)絡(luò)以下載內(nèi)容的器件DIAMONMultimediaRioPlayerNuvomediaRockete-BookAudibleMobilePlayerSource:IDC,Hambrecht&Quist信息家電——數(shù)字機(jī)頂盒VOLVOS80汽車的CAN總線網(wǎng)絡(luò)
嵌入式應(yīng)用——汽車電子智能玩具與機(jī)器人嵌入式技術(shù)應(yīng)用——工業(yè)控制工業(yè)方面:機(jī)床、冶金、電子、交通、航空航天等行業(yè)技術(shù)升級(jí)的重要基礎(chǔ)阿富汗參加反恐作戰(zhàn)的“赫耳墨斯”價(jià)值4萬美元,可攜帶2架攝像機(jī),發(fā)揮了很好作用。軍事偵察反恐防暴微型飛行器“黑寡婦”空中飛行器基于WinCE的移動(dòng)機(jī)器人平臺(tái)基于RTLinux的仿人機(jī)器人高48cm
重:6kg
靈活性:20DOF操作系統(tǒng):RT-Linux
接口形式:USB1.0(12Mbps)響應(yīng)周期:1ms
能源:DC24Vx6.2A(150W)制造:富士通基于VXworks的火星探路者2004年“勇氣號(hào)”再次登陸火星1.5嵌入式操作系統(tǒng)概述
計(jì)算機(jī)由硬件和軟件兩部分組成,操作系統(tǒng)OS是配置在計(jì)算機(jī)硬件上的第一層軟件。操作系統(tǒng)可解釋或理解為補(bǔ)平硬件差異的界面或者說隱藏硬件,讓應(yīng)用程序可以在上面運(yùn)行。通過由操作系統(tǒng)統(tǒng)一提供出來的系統(tǒng)界面來寫應(yīng)用程序,無須考慮不同硬件所造成的差異,讓程序設(shè)計(jì)人員能夠?qū)W⒂谒瞄L(zhǎng)領(lǐng)域的開發(fā)。從用戶的觀點(diǎn)看,OS是用戶與計(jì)算機(jī)硬件系統(tǒng)之間的接口,用戶在OS的幫助下能夠方便,快捷,安全,可靠地操縱計(jì)算機(jī)硬件和運(yùn)行自己的程序;從資源管理的觀點(diǎn)看,可以把OS視為計(jì)算機(jī)系統(tǒng)資源的管理者。1.5嵌入式操作系統(tǒng)概述監(jiān)控程序在計(jì)算機(jī)技術(shù)發(fā)展的初期,為了給用戶提供一個(gè)與計(jì)算機(jī)的接口,同時(shí)提高計(jì)算機(jī)的資源利用率,便出現(xiàn)了計(jì)算機(jī)監(jiān)控程序,使用戶能通過監(jiān)控程序來使用計(jì)算機(jī)。隨著計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)系統(tǒng)的硬件,軟件資源也又進(jìn)一步發(fā)展形成了操作系統(tǒng),發(fā)展到現(xiàn)在,廣泛使用的有三種操作系統(tǒng),即多道批處理操作系統(tǒng),分時(shí)操作系統(tǒng)以及實(shí)時(shí)操作系統(tǒng)。1.5嵌入式操作系統(tǒng)發(fā)展監(jiān)控程序操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)分時(shí)操作系統(tǒng)多道批處理操作系統(tǒng)
時(shí)間先后適用于多個(gè)用戶共享系統(tǒng)資源適用于計(jì)算中心等較大的計(jì)算機(jī)系統(tǒng)適用于嵌入式設(shè)備和有實(shí)時(shí)性要求的系統(tǒng)中1.5嵌入式操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)
實(shí)時(shí)操作系統(tǒng),指一個(gè)優(yōu)先級(jí)高的任務(wù)能夠獲得立即的,沒有延遲的服務(wù),它不需要等候任何其他任務(wù),而且在得到CPU的使用權(quán)后,可一直執(zhí)行到工作結(jié)束或者有更高級(jí)的進(jìn)程出現(xiàn)為止。嵌入式操作系統(tǒng)的體系結(jié)構(gòu)圖應(yīng)用程序文件系統(tǒng)/圖形用戶接口應(yīng)用層OS層驅(qū)動(dòng)層驅(qū)動(dòng)程序、硬件抽象層、板級(jí)支持包硬件基本模塊內(nèi)存管理文件管理OS核進(jìn)程調(diào)度擴(kuò)展模塊網(wǎng)絡(luò)模塊圖形驅(qū)動(dòng)數(shù)據(jù)庫模塊1.5嵌入式操作系統(tǒng)基本概念
對(duì)基于芯片的開發(fā)來說,應(yīng)用程序一般是一個(gè)無限的循環(huán),可稱為前后臺(tái)系統(tǒng)或超循環(huán)系統(tǒng)。循環(huán)中調(diào)用相應(yīng)的函數(shù)完成相應(yīng)的操作,這部分可以看成后臺(tái)行為。中斷服務(wù)程序處理異步事件,這部分可以看成前臺(tái)行為。
——前后臺(tái)系統(tǒng)基本概念
中斷服務(wù)程序處理異步事件,這部分可以看成前臺(tái)行為,前臺(tái)也叫中斷級(jí)。時(shí)間相關(guān)性很強(qiáng)的關(guān)鍵操作一定是靠中斷服務(wù)程序來保證的。
循環(huán)中調(diào)用相應(yīng)的函數(shù)完成相應(yīng)的操作,這部分可以看成后臺(tái)行為,后臺(tái)也可以叫做任務(wù)級(jí)。這種系統(tǒng)在處理的及時(shí)性上比實(shí)際可以做到的要差。ISRISRISRISR后臺(tái)前臺(tái)中斷服務(wù)程序時(shí)間——前后臺(tái)系統(tǒng)1.5嵌入式操作系統(tǒng)基本概念
代碼的臨界區(qū)也稱為臨界區(qū),指處理時(shí)不可分割的代碼,運(yùn)行這些代碼不允許被打斷。一旦這部分代碼開始執(zhí)行,則不允許任何中斷打入(這不是絕對(duì)的,如果中斷不調(diào)用任何包含臨界區(qū)的代碼,也不訪問任何臨界區(qū)使用的共享資源,這個(gè)中斷可能可以執(zhí)行)。
為確保臨界區(qū)代碼的執(zhí)行,在進(jìn)入臨界區(qū)之前要關(guān)中斷,而臨界區(qū)代碼執(zhí)行完成以后要立即開中斷。
——代碼的臨界區(qū)1.5嵌入式操作系統(tǒng)基本概念
程序運(yùn)行時(shí)可使用的軟、硬件環(huán)境統(tǒng)稱為資源。資源可以是輸入輸出設(shè)備,例如打印機(jī)、鍵盤、顯示器。資源也可以是一個(gè)變量、一個(gè)結(jié)構(gòu)或一個(gè)數(shù)組等?!Y源任務(wù)A共享資源任務(wù)B任務(wù)C信號(hào)量1.5嵌入式操作系統(tǒng)基本概念
可以被一個(gè)以上任務(wù)使用的資源叫做共享資源。為了防止數(shù)據(jù)被破壞,每個(gè)任務(wù)在與共享資源打交道時(shí),必須獨(dú)占該資源,這叫做互斥?!蚕碣Y源訪問共享資源之前申請(qǐng)信號(hào)量其它任務(wù)訪問受阻而不能使用共享資源得到允許后,才能使用共享資源1.5嵌入式操作系統(tǒng)基本概念
一個(gè)任務(wù),也稱作一個(gè)線程,是一個(gè)簡(jiǎn)單的程序,該程序可以認(rèn)為CPU完全屬于該程序自己。每個(gè)任務(wù)都是整個(gè)應(yīng)用的某一部分,每個(gè)任務(wù)被賦予一定的優(yōu)先級(jí),有它自己的一套CPU寄存器和自己的??臻g?!蝿?wù)1.5嵌入式操作系統(tǒng)基本概念
當(dāng)多任務(wù)內(nèi)核決定運(yùn)行另外的任務(wù)時(shí),它保存正在運(yùn)行任務(wù)的當(dāng)前狀態(tài),即CPU寄存器中的全部?jī)?nèi)容。這些內(nèi)容保存在任務(wù)的當(dāng)前狀態(tài)保存區(qū),也就是任務(wù)自已的棧區(qū)之中。入棧工作完成以后,就把下一個(gè)將要運(yùn)行的任務(wù)的當(dāng)前狀態(tài)從任務(wù)的棧中重新裝入CPU的寄予存器,并開始下一個(gè)任務(wù)的運(yùn)行。這個(gè)過程就稱為任務(wù)切換?!蝿?wù)切換1.5嵌入式操作系統(tǒng)基本概念
多任務(wù)系統(tǒng)中,內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),或者說為每個(gè)任務(wù)分配CPU時(shí)間,并且負(fù)責(zé)任務(wù)之間的通信。內(nèi)核提供的基本服務(wù)是任務(wù)切換。內(nèi)核提供必不可少的系統(tǒng)服務(wù),如信號(hào)量、消息隊(duì)列、延時(shí)等?!獌?nèi)核1.5嵌入式操作系統(tǒng)基本概念
調(diào)度是內(nèi)核的主要職責(zé)之一。調(diào)度就是決定該輪到哪個(gè)任務(wù)運(yùn)行。多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度法的。每個(gè)任務(wù)根據(jù)其重要程序的不同被賦予一定的優(yōu)先級(jí)?;趦?yōu)先級(jí)的調(diào)度法指CPU總是讓處在就緒態(tài)的優(yōu)先級(jí)最高的任務(wù)先運(yùn)行。然而究竟何時(shí)讓高優(yōu)先級(jí)任務(wù)掌握CPU的使用權(quán),有兩種不同的情況,這要看用的是什么類型的內(nèi)核,是非占先式的還是搶占式的內(nèi)核?!{(diào)度1.5嵌入式操作系統(tǒng)基本概念
非占先式內(nèi)核要求每個(gè)任務(wù)自我放棄CPU的所有權(quán)。非占先式調(diào)度法也稱作合作型多任務(wù),各個(gè)任務(wù)彼此合作共享一個(gè)CPU。
異步事件還是由中斷服務(wù)來處理。中斷服務(wù)可以使一個(gè)高優(yōu)先級(jí)的任務(wù)由掛起狀態(tài)變?yōu)榫途w狀態(tài)。但中斷服務(wù)以后控制權(quán)還是回到原來被中斷了的那個(gè)任務(wù),直到該任務(wù)主動(dòng)放棄CPU的使用權(quán)時(shí),那個(gè)高優(yōu)先級(jí)的任務(wù)才能獲得CPU的使用權(quán)?!菗屨际絻?nèi)核1.5嵌入式操作系統(tǒng)基本概念
當(dāng)系統(tǒng)響應(yīng)時(shí)間很重要時(shí),要使用搶占式內(nèi)核。最高優(yōu)先級(jí)的任務(wù)一旦就緒,總能得到CPU的控制權(quán)。當(dāng)一個(gè)運(yùn)行著的任務(wù)使一個(gè)比它優(yōu)先級(jí)高的任務(wù)進(jìn)入了就緒狀態(tài),當(dāng)前任務(wù)的CPU使用權(quán)就被剝奪了,或者說被掛起了,那個(gè)高優(yōu)先級(jí)的任務(wù)立刻得到了CPU的控制權(quán)。如果是中斷服務(wù)子程序使一個(gè)高優(yōu)先級(jí)的任務(wù)進(jìn)入就緒態(tài),中斷完成時(shí),中斷了的任務(wù)被掛起,優(yōu)先級(jí)高的那個(gè)任務(wù)開始運(yùn)行?!蓳屨际絻?nèi)核1.5嵌入式操作系統(tǒng)基本概念
任務(wù)的優(yōu)先級(jí)是表示任務(wù)被調(diào)度的優(yōu)先程度。每個(gè)任務(wù)都具有優(yōu)先級(jí)。任務(wù)越重要,賦予的優(yōu)先級(jí)應(yīng)越高,越容易被調(diào)度而進(jìn)入運(yùn)行態(tài)?!蝿?wù)優(yōu)先級(jí)1.5嵌入式操作系統(tǒng)基本概念
中斷是一種硬件機(jī)制,用于通知CPU有異步事件發(fā)生。中斷一旦被識(shí)別,CPU保存部分(或全部)上下文即部分或全部寄存器的值,跳轉(zhuǎn)到專門的子程序,稱為中斷服務(wù)子程序(ISR)。中斷服務(wù)子程序做事件處理,處理完成后,程序回到:1.在前后臺(tái)系統(tǒng)中,程序回到后臺(tái)程序;2.對(duì)非搶占式內(nèi)核而言,程序回到被中斷了的任務(wù);3.對(duì)搶占式內(nèi)核而言,讓進(jìn)入就緒態(tài)的優(yōu)先級(jí)最高的任務(wù)開始運(yùn)行。——中斷前后臺(tái)系統(tǒng)1.5嵌入式操作系統(tǒng)基本概念——中斷ISR任務(wù)ISR非占先操作系統(tǒng)任務(wù)A任務(wù)B任務(wù)CISR占先操作系統(tǒng)任務(wù)A任務(wù)B任務(wù)C1.5嵌入式操作系統(tǒng)基本概念
時(shí)鐘節(jié)拍是特定的周期性中斷。這個(gè)中斷可以看作是系統(tǒng)心臟的脈動(dòng)。中斷之間的時(shí)間間隔取決于不同應(yīng)用,一般在10ms到200ms之間。時(shí)鐘的節(jié)拍式中斷使得內(nèi)核可以將任務(wù)延時(shí)若干個(gè)整數(shù)時(shí)鐘節(jié)拍,以及當(dāng)任務(wù)等待事件發(fā)生時(shí),提供等待超時(shí)的依據(jù)。時(shí)鐘節(jié)拍率越快,系統(tǒng)的額外開銷就越大。——時(shí)鐘節(jié)拍1.5嵌入式操作系統(tǒng)基本概念
所有嵌入式操作系統(tǒng)都是多任務(wù)的。目前所說的多任務(wù)大都是多線程方式或多進(jìn)程方式。和一般的操作系統(tǒng)一樣,嵌入式操作系統(tǒng)的作用也是決定在特定的某一時(shí)刻系統(tǒng)應(yīng)該運(yùn)行哪一個(gè)進(jìn)程?,F(xiàn)在許多CPU都已提供多組寄存器來輔助執(zhí)行模式的切換,有比較便捷的指令來紀(jì)錄每個(gè)執(zhí)行程序的情況,操作系統(tǒng)主要是提供調(diào)度機(jī)制來控制這些執(zhí)行程序的起始,執(zhí)行,暫停和結(jié)束。——多任務(wù)管理1.5嵌入式操作系統(tǒng)基本概念
嵌入式操作系統(tǒng)中的進(jìn)程狀態(tài)有3種:運(yùn)行狀態(tài),就緒狀態(tài),等待狀態(tài)。3種狀態(tài)之間的關(guān)系如圖,其中進(jìn)程狀態(tài)轉(zhuǎn)換的條件與一般操作系統(tǒng)中轉(zhuǎn)換條件類似?!嗳蝿?wù)管理運(yùn)行就緒等待新進(jìn)程結(jié)束1.5嵌入式操作系統(tǒng)基本概念——存儲(chǔ)管理
與一般操作系統(tǒng)的存儲(chǔ)管理相比,嵌入式操作系統(tǒng)的存儲(chǔ)管理要相對(duì)簡(jiǎn)單一些。由于虛擬存儲(chǔ)中經(jīng)常要對(duì)頁進(jìn)行換入/換出操作,所以內(nèi)存中頁命中率和換入/換出所耗費(fèi)的時(shí)間嚴(yán)重破壞了整個(gè)系統(tǒng)的確定性,而且虛擬系統(tǒng)中需要地址轉(zhuǎn)換表和其他一些數(shù)據(jù)結(jié)構(gòu),這樣留給程序的內(nèi)存空間就減少了??傊?,虛擬內(nèi)存管理占用了相當(dāng)一部分系統(tǒng)資源,因此在系統(tǒng)資源非常有限的嵌入式系統(tǒng)中,一般不采用虛擬內(nèi)存管理,而采用動(dòng)態(tài)內(nèi)存管理方式,即當(dāng)程序的某一部分需要使用內(nèi)存時(shí),利用操作系統(tǒng)提供的分配函數(shù)來處理,一旦使用完畢,可通過釋放函數(shù)來釋放所占用的內(nèi)存,這樣內(nèi)存可以重復(fù)使用。1.5嵌入式操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):程序的設(shè)計(jì)和擴(kuò)展變得容易。對(duì)實(shí)時(shí)性要求苛刻的事件都得到了快速、可靠的處理。通過有效的系統(tǒng)服務(wù),嵌入式實(shí)時(shí)操作系統(tǒng)使得系統(tǒng)資源得到更好的利用。缺點(diǎn):但是,使用嵌入式實(shí)時(shí)操作系統(tǒng)還需要額外的ROM/RAM開銷,2~5%的CPU額外負(fù)荷,以及內(nèi)核的費(fèi)用。uClinux是一個(gè)完全符合GNU/GPL公約的操作系統(tǒng),完全開放代碼。uClinux從Linux
2.0/2.4內(nèi)核派生而來,沿襲了主流Linux的絕大部分特性。它是專門針對(duì)沒有MMU的CPU,并且為嵌入式系統(tǒng)做了許多小型化的工作。適用于沒有虛擬內(nèi)存或內(nèi)存管理單元(MMU)的處理器,例如ARM7TDMI。它通常用于具有很少內(nèi)存或Flash的嵌入式系統(tǒng)。它保留了Linux的大部分優(yōu)點(diǎn):穩(wěn)定、良好的移植性、優(yōu)秀的網(wǎng)絡(luò)功能、完備的對(duì)各種文件系統(tǒng)的支持、以及標(biāo)準(zhǔn)豐富的API等。
1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)——
uCLinux1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)
WindowsCE是微軟開發(fā)的一個(gè)開放的、可升級(jí)的32位嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操作。WinCE具有模塊化、結(jié)構(gòu)化和基于Win32應(yīng)用程序接口以及與處理器無關(guān)等特點(diǎn),出色的圖形用戶界面。在WinCE平臺(tái)上可以使用Windows2K/XP上的編程工具(如VisualBasic、VisualC++等)、使絕大多數(shù)的應(yīng)用軟件只需簡(jiǎn)單的修改和移植就可以在WindowsCE平臺(tái)上繼續(xù)使用。
WindowsCE.NET——WinCE1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)——VxWorksVxWorks操作系統(tǒng)是美國公司于1983年設(shè)計(jì)開發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),是嵌入式開發(fā)環(huán)境的關(guān)鍵組成部分。良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域占據(jù)一席之地。它以其良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中。1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)
OSE主要是由ENEADataAB下屬的ENEAOSESystemsAB負(fù)責(zé)開發(fā)和技術(shù)服務(wù)的,一直以來都充當(dāng)著實(shí)時(shí)操作系統(tǒng)以及分布式和容錯(cuò)性應(yīng)用的先鋒,并保持良好的發(fā)展態(tài)勢(shì)。
OSE的客戶深入到電信,數(shù)據(jù),工控,航空等領(lǐng)域,尤其在電信方面,該公司已經(jīng)有了十余年的開發(fā)經(jīng)驗(yàn),同諸如愛立信,諾基亞,西門子等知名公司確定了良好的關(guān)系?!狾SE1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)
NucleusPLUS是為實(shí)時(shí)嵌入式應(yīng)用而設(shè)計(jì)的一個(gè)搶先式多任務(wù)操作系統(tǒng)內(nèi)核,其95%的代碼是用ANSIC寫成的,因此非常便于移植并能夠支持大多數(shù)類型的處理器。
NucleusPLUS采用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C及匯編語言模塊構(gòu)成,提供清晰的外部接口,對(duì)組件的引用就是通過這些接口完成的。由于采用了軟件組件的方法,使NucleusPLUS的各個(gè)組件非常易于替換和復(fù)用?!狽ucleus1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)
eCos是RedHat公司開發(fā)的源代碼開放的嵌入式RTOS產(chǎn)品,是一個(gè)可配置、可移植的嵌入式實(shí)時(shí)操作系統(tǒng),設(shè)計(jì)的運(yùn)行環(huán)境為RedHat的GNUPro和GNU開發(fā)環(huán)境。
eCOS的關(guān)鍵技術(shù)是操作系統(tǒng)可配置性,允許用戶組和自己的實(shí)時(shí)組件和函數(shù)以及實(shí)現(xiàn)方式,特別允許eCOS的開發(fā)則定制自己的面向應(yīng)用的操作系統(tǒng),使eCos能有更廣泛的應(yīng)用范圍。——eCos1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)μC/OS-II是一個(gè)源碼公開、可移植、可固化、可裁剪、占先式的實(shí)時(shí)多任務(wù)操作系統(tǒng)。其絕大部分源碼是用ANSIC寫的,使其可以方便的移植并支持大多數(shù)類型的處理器。μC/OS-II通過了聯(lián)邦航空局(FAA)商用航行器認(rèn)證。μC/OS-II占用很少的系統(tǒng)資源,并且在高校教學(xué)使用是不需要申請(qǐng)?jiān)S可證。——μC/OS-II1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)TRON是指“實(shí)時(shí)操作系統(tǒng)內(nèi)核(TheReal-timeOperatingsystemNucleux)”,它是在1984年由東京大學(xué)的Sakamura博士提出的,目的是為了建立一個(gè)理想的計(jì)算機(jī)體系結(jié)構(gòu)。通過工業(yè)界和大學(xué)院校的合作,TRON方案正被逐步用到全新概念的計(jì)算機(jī)體系結(jié)構(gòu)中。
uITRON是TRON的一個(gè)子方案,它具有標(biāo)準(zhǔn)的實(shí)時(shí)內(nèi)核,適用于任何小規(guī)模的嵌入式系統(tǒng),日本國內(nèi)現(xiàn)有很多基于該內(nèi)核的產(chǎn)品,其中消費(fèi)電器較多。目前已成為日本事實(shí)上的工業(yè)標(biāo)準(zhǔn)?!猽ITRON1.5嵌入式操作系統(tǒng)常見的嵌入式操作系統(tǒng)TRON明確的設(shè)計(jì)目標(biāo)使其甚至比Linux更適合于做嵌入式應(yīng)用,內(nèi)核小,啟動(dòng)速度快,即時(shí)性能好,也很適合漢字系統(tǒng)的開發(fā)。另外,TRON的成功還來源于如下兩個(gè)重要的條件:
1.它是免費(fèi)的
2.它已經(jīng)建立了開放的標(biāo)準(zhǔn),形成了較完善的軟硬件配套開發(fā)環(huán)境,較好地形成了產(chǎn)業(yè)化?!猽ITRON第3章
嵌入式系統(tǒng)的設(shè)計(jì)方法
3.1嵌入式系統(tǒng)的總體結(jié)構(gòu)3.2嵌入式系統(tǒng)開發(fā)過程第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1013.1嵌入式系統(tǒng)的總體結(jié)構(gòu)嵌入式系統(tǒng)一般都由嵌入式微處理器系統(tǒng)和被控對(duì)象組成。嵌入式微處理器系統(tǒng)由硬件層、中間層、軟件層和功能層組成。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法102硬件層由嵌入式微處理器、外圍電路和外設(shè)組成。在嵌入式微處理器基礎(chǔ)上增加電源電路、復(fù)位電路、調(diào)試接口和存儲(chǔ)器電路,就構(gòu)成一個(gè)嵌入式核心控制模塊。其中操作系統(tǒng)和應(yīng)用程序都可以固化在ROM或者Flash中??稍诖嘶A(chǔ)上增加了LCD、鍵盤、USB接口,以及其他一些功能的擴(kuò)展電路。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法103BSP(BoardSupportPackage,板級(jí)支持包)硬件層與軟件層之間為中間層,也稱為BSP將系統(tǒng)軟件與底層硬件部分隔離,使得系統(tǒng)的底層設(shè)備驅(qū)動(dòng)程序與硬件無關(guān)。BSP是主板硬件環(huán)境和操作系統(tǒng)的中間接口,是軟件平臺(tái)中具有硬件依賴性的那一部分,一般具有相關(guān)硬件的初始化、數(shù)據(jù)的輸入/輸出操作和硬件設(shè)備的配置等功能。純粹的BSP一般包含的內(nèi)容是與系統(tǒng)有關(guān)的驅(qū)動(dòng)程序,第3章嵌入式系統(tǒng)的設(shè)計(jì)方法104軟件層主要是操作系統(tǒng),有的還包括文件系統(tǒng)、圖形用戶接口和網(wǎng)絡(luò)系統(tǒng)等。功能層由基于操作系統(tǒng)開發(fā)的應(yīng)用程序組成,用來完成對(duì)被控對(duì)象的控制功能。功能層是面向被控對(duì)象和用戶的,為了方便用戶操作,往往需要具有友好的人機(jī)界面。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1053.2嵌入式系統(tǒng)開發(fā)過程嵌入式軟件的開發(fā)與傳統(tǒng)的軟件有許多共同點(diǎn),它繼承了許多傳統(tǒng)軟件開發(fā)的開發(fā)習(xí)慣。但由于嵌入式軟件運(yùn)行于特定的目標(biāo)環(huán)境,與傳統(tǒng)軟件的開發(fā)又有著很大的不同。3.2.1嵌入式系統(tǒng)的開發(fā)特點(diǎn)3.2.2嵌入式系統(tǒng)的開發(fā)流程3.2.3調(diào)試嵌入式系統(tǒng)第3章嵌入式系統(tǒng)的設(shè)計(jì)方法106嵌入式系統(tǒng)的開發(fā)特點(diǎn)1.交叉開發(fā)環(huán)境嵌入式軟件以宿主機(jī)/目標(biāo)機(jī)模式開發(fā),所需要的開發(fā)環(huán)境稱為交叉開發(fā)環(huán)境。交叉開發(fā)環(huán)境分為宿主機(jī)部分和目標(biāo)機(jī)部分,兩者以統(tǒng)一的通信協(xié)議進(jìn)行通信,宿主機(jī)向目標(biāo)機(jī)發(fā)送命令,目標(biāo)機(jī)接收、執(zhí)行命令并將結(jié)果返回宿主機(jī),從而實(shí)現(xiàn)兩機(jī)之間的交互控制。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法107宿主機(jī)(Host)通用計(jì)算機(jī)(PC),通過串口或網(wǎng)絡(luò)連接與目標(biāo)機(jī)進(jìn)行通信。
目標(biāo)機(jī)(Target)嵌入式系統(tǒng)實(shí)際運(yùn)行環(huán)境,也可以是能替代實(shí)際環(huán)境的仿真系統(tǒng)。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1082.為了保證穩(wěn)定性和實(shí)時(shí)性,選用RTOS開發(fā)平臺(tái)對(duì)簡(jiǎn)單系統(tǒng)可以用傳統(tǒng)方法,從底層用匯編語言編寫程序,利用在線仿真器(ICE)、在線調(diào)試器(ICD)等開發(fā)工具進(jìn)行軟件的調(diào)試。對(duì)于那些復(fù)雜的嵌入式系統(tǒng),為了合理地調(diào)度多任務(wù)、利用系統(tǒng)資源,用戶選配RTOS開發(fā)平臺(tái),這樣才能保證程序執(zhí)行的實(shí)時(shí)性、可靠性,并減少開發(fā)時(shí)間,保證軟件質(zhì)量。3.生成代碼需要固態(tài)化存儲(chǔ)嵌入式應(yīng)用程序開發(fā)環(huán)境是PC機(jī),但運(yùn)行的目標(biāo)環(huán)境卻千差萬別,可以是PDA,也可以是儀器設(shè)備。而且應(yīng)用軟件在目標(biāo)環(huán)境下必須存儲(chǔ)在非易失性存儲(chǔ)器中,保證系統(tǒng)在掉電重啟后仍能正常使用。所以,應(yīng)用軟件在開發(fā)完成以后,應(yīng)生成固化版本,都固化在單片機(jī)本身或燒寫到目標(biāo)環(huán)境的Flash中運(yùn)行。4.軟件代碼具有高質(zhì)量、高可靠性第3章嵌入式系統(tǒng)的設(shè)計(jì)方法109嵌入式系統(tǒng)的開發(fā)流程各個(gè)階段之間往往要求不斷地反復(fù)和修改,直到完成最終完成設(shè)計(jì)目標(biāo)。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1101.需求分析階段分析系統(tǒng)的需求,。根據(jù)系統(tǒng)的需求,確定設(shè)計(jì)任務(wù)和設(shè)計(jì)目標(biāo),提煉出設(shè)計(jì)規(guī)格說明,作為正式指導(dǎo)設(shè)計(jì)和驗(yàn)收的標(biāo)準(zhǔn)。2.體系結(jié)構(gòu)設(shè)計(jì)根據(jù)設(shè)計(jì)規(guī)格說明書,進(jìn)行體系結(jié)構(gòu)的設(shè)計(jì)。即如何實(shí)現(xiàn)所述的功能和非功能需求,包括對(duì)硬件、軟件的功能劃分,以及系統(tǒng)的軟件、硬件和操作系統(tǒng)的選型等。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1113.硬件/軟件設(shè)計(jì)基于體系結(jié)構(gòu),對(duì)系統(tǒng)的軟、硬件進(jìn)行詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)。4.系統(tǒng)集成和測(cè)試系統(tǒng)軟件、硬件集成,進(jìn)行調(diào)試,發(fā)現(xiàn)并改進(jìn)單元設(shè)計(jì)的錯(cuò)誤。5.代碼固化程序?qū)懭氲椒且资源鎯?chǔ)器,如Flash固化。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法112調(diào)試嵌入式系統(tǒng)嵌入式系統(tǒng)的調(diào)試有多種方法,可分為模擬器方式、ICE(In-CircuitEmulator,在線仿真器)方式、ICD(In-CircuitDebugger,在線調(diào)試器)方式和監(jiān)控器方式。1.模擬器方式調(diào)試工具和待調(diào)試的嵌入式軟件都在主機(jī)上運(yùn)行,通過軟件手段模擬執(zhí)行為某種嵌入式處理器編寫的源程序。簡(jiǎn)單的模擬器可以通過指令解釋方式逐條執(zhí)行源程序,分配虛擬存儲(chǔ)空間和外設(shè),進(jìn)行語法和邏輯上的調(diào)試。如:skyeye第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1132.在線仿真器方式在線仿真器ICE是一種完全仿造調(diào)試目標(biāo)CPU設(shè)計(jì)的儀器。仿真器與目標(biāo)板通過仿真頭連接,與主機(jī)有串口、并口、以太網(wǎng)口或USB口等連接方式。仿真器運(yùn)行所有的CPU動(dòng)作,并且可以在其使用的內(nèi)存中設(shè)置非常多的硬件中斷點(diǎn),可以實(shí)時(shí)查看所有需要的數(shù)據(jù),從而給調(diào)試過程帶來很多便利。由于仿真器自成體系,調(diào)試時(shí)可以連接目標(biāo)板,也可以不接目標(biāo)板。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法114。3.監(jiān)控器方式主機(jī)和目標(biāo)板通過某種接口(通常是串口)連接,主機(jī)上提供調(diào)試界面,被調(diào)試程序下載到目標(biāo)板上運(yùn)行監(jiān)控程序是一段運(yùn)行于目標(biāo)機(jī)上的可執(zhí)行程序,主要負(fù)責(zé)監(jiān)控目標(biāo)機(jī)上被調(diào)試程序的運(yùn)行情況,與宿主機(jī)端的調(diào)試器一起完成對(duì)應(yīng)用程序的調(diào)試。監(jiān)控程序包含基本功能的啟動(dòng)代碼,并完成必要的硬件初始化,等待宿主機(jī)的命令。
被調(diào)試程序通過監(jiān)控程序下載到目標(biāo)機(jī),就可以開始進(jìn)行調(diào)試。監(jiān)控器方式操作簡(jiǎn)單易行,功能強(qiáng)大,不需要專門的調(diào)試硬件,適用面廣,能提高調(diào)試的效率,縮短產(chǎn)品的開發(fā)周期,降低開發(fā)成本。正因?yàn)橐陨显?,監(jiān)控器方式才能夠廣泛應(yīng)用于嵌入式系統(tǒng)的開發(fā)之中。第3章嵌入式系統(tǒng)的設(shè)計(jì)方法1154.在線調(diào)試器方式使用ICD和目標(biāo)板的調(diào)試端口連接,發(fā)送調(diào)試命令和接收調(diào)試信息,可以完成必要的調(diào)試功能。一般情況下,在ARM芯片的開發(fā)板上采用JTAG邊界掃描口進(jìn)行調(diào)試。摩托羅拉公司采用專用的BDM調(diào)試接口。使用合適的開發(fā)工具可以利用這些接口。例如,ARM開發(fā)板,可以將JTAG調(diào)試器接在開發(fā)板的JTAG口上,通過JTAG口與ARM處理器核進(jìn)行通信。由于JTAG調(diào)試的目標(biāo)程序是在目標(biāo)板上執(zhí)行,仿真更接近于目標(biāo)硬件,因此許多接口問題,如高頻操作限制、電線長(zhǎng)度的限制等被最小化了。該方式是目前采用最多的一種調(diào)試方式。116統(tǒng)一建模語言UML概述
統(tǒng)一建模語言UML是可視化面向?qū)ο蠼UZ言。用標(biāo)準(zhǔn)圖形元素直觀地表示模型中的信息,便于人員交流。采用UML進(jìn)行設(shè)計(jì)具有以下特點(diǎn)和優(yōu)勢(shì):1)UML語言簡(jiǎn)單,易學(xué)、易用;形象直觀,可視化的圖形描述2)不同技術(shù)背景的開發(fā)人員和設(shè)計(jì)人員很容易的相互交流;3)采用圖形化的設(shè)計(jì),將系統(tǒng)的核心部分描述出來,可以供以后系統(tǒng)開發(fā)使用;4)有利于項(xiàng)目的回溯和測(cè)試。117
UML的組成部分
UML采用圖形表示法,它的重要內(nèi)容是由一些圖來定義的。設(shè)計(jì)人員就是用這些圖來描述整個(gè)系統(tǒng)的功能和設(shè)計(jì)。(1)視圖(View)(2)圖(Diagram)(3)模型元素(ModelElement)(4)通用機(jī)制(GeneralMechanism)118UML中的視圖
UML中提供的視圖共有五種:用例視圖:描述系統(tǒng)應(yīng)該交付的功能,也就是外部參與者(Actor)觀察到的系統(tǒng)功能。邏輯視圖:從系統(tǒng)的靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為角度顯示如何實(shí)現(xiàn)系統(tǒng)的功能。
組件視圖:顯示的是代碼組件的組織結(jié)構(gòu)。
并發(fā)視圖:顯示的是系統(tǒng)的并發(fā)性,解決在并發(fā)系統(tǒng)中存在的通信和同步問題。
部署視圖:顯示的是系統(tǒng)的具體部署。
119UML中的模型元素Ⅰ在UML各種圖中使用的概念都稱為模型元素。模型元素是用語義、該元素的正式定義或者用明確的語句中該元素所代表的準(zhǔn)確意義來定義的。模型元素有一個(gè)與之相對(duì)應(yīng)的視圖元素,這些視圖元素是模型元素的圖形表示或者在UML圖中表示元素的圖形符號(hào)。常用的模型元素有:類、對(duì)象、狀態(tài)、節(jié)點(diǎn)、包和組件等等。
120UML中的模型元素Ⅱ常用的模型元素121UML中的模型元素Ⅲ模型元素中包括關(guān)系。關(guān)系用于其它模型元素之間的相互連接。UML中定義的關(guān)系:1)泛化(Generalization):這種關(guān)系的意思是一個(gè)元素是另一個(gè)元素的特化,也稱為繼承關(guān)系。2)關(guān)聯(lián)(Association):就是類實(shí)例之間連接的描述。3)聚合(Aggregation):這是一種關(guān)聯(lián)的形式,意思是一個(gè)元素包含其他一些元素。4)依賴(Dependency):兩模型之間的關(guān)系,用于顯示一個(gè)元素在某種程度上依賴于另一元素。122UML中的模型元素Ⅳ關(guān)系圖示:123UML中的通用機(jī)制UML在所有的圖形中都使用一些通用機(jī)制來描述圖的附加信息。通用機(jī)制通常包括三個(gè)方面的內(nèi)容:修飾、注解、規(guī)格說明。UML提供的這些視圖和圖為系統(tǒng)的分析、設(shè)計(jì)、建模提供了多種圖形表達(dá)形式,可應(yīng)用于開發(fā)的不同階段,它們的有機(jī)結(jié)合可以構(gòu)建一個(gè)完整而一致的系統(tǒng)。124車載GPS終端系統(tǒng)簡(jiǎn)介GPS是指全球定位系統(tǒng)(GlobalPositionSystem)。車載GPS終端是置于機(jī)動(dòng)車內(nèi)的實(shí)時(shí)定位裝置,它的應(yīng)用對(duì)象是需要定位、調(diào)度的車隊(duì)。車輛可以通過終端和GPS衛(wèi)星進(jìn)行實(shí)時(shí)、準(zhǔn)確的定位,并能夠通過無線通訊網(wǎng)絡(luò)上報(bào)遠(yuǎn)程的車輛控制中心系統(tǒng)。
125車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅰ1.需求分析在對(duì)系統(tǒng)進(jìn)行需求分析時(shí),可以使用用例圖進(jìn)行功能上的需求分析。用例圖分角色(Actor)和案例(Case)兩部分。對(duì)于車載GPS終端系統(tǒng)來說,主要的角色有兩個(gè):車輛調(diào)度中心用戶和車載終端用戶。126車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅱ(1)2.規(guī)格說明規(guī)格說明要求比需求分析更加詳細(xì),通過UML設(shè)計(jì)可以使規(guī)格說明更直觀、更清晰。1)使用類圖描述系統(tǒng)所要處理的數(shù)據(jù)結(jié)構(gòu)。127車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅱ(2)2)還需要識(shí)別系統(tǒng)的對(duì)象。首先以功能塊劃分,廣泛地找出系統(tǒng)的主要對(duì)象;然后使用協(xié)作圖描述它們之間的關(guān)系。車載終端系統(tǒng)的主要對(duì)象(模塊)128車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅱ(3)3)系統(tǒng)的業(yè)務(wù)描述。即規(guī)范系統(tǒng)完成一定功能的主要流程。這可以利用活動(dòng)圖進(jìn)行。
GPS數(shù)據(jù)到達(dá)時(shí)的活動(dòng)圖129車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅲ(1)3.系統(tǒng)體系結(jié)構(gòu)規(guī)格說明完成后,需要對(duì)系統(tǒng)的各個(gè)模塊及模塊之間的關(guān)系仔細(xì)地分析,從而確定哪些部分使用硬件完成,哪些部分使用軟件實(shí)現(xiàn)。在本例中,需要硬件實(shí)現(xiàn)的模塊有:電源模塊、GPS接收模塊、LCD顯示模塊、用戶控制模塊和GSM通訊模塊。所有的控制邏輯和數(shù)據(jù)計(jì)算全部由主控制器模塊的軟件實(shí)現(xiàn)。隨后,系統(tǒng)設(shè)計(jì)分為兩個(gè)部分:硬件設(shè)計(jì)和軟件設(shè)計(jì)。使UML的協(xié)作圖(CollaborationDiagram)和組件圖(ComponentDiagram)對(duì)系統(tǒng)的硬、軟件分別進(jìn)行系統(tǒng)設(shè)計(jì)。130車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅲ(2)車載GPS終端系統(tǒng)的軟件系統(tǒng)架構(gòu):
131車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅳ(1)4.構(gòu)件設(shè)計(jì)與測(cè)試:在構(gòu)件設(shè)計(jì)中,以使用通常需要使用狀態(tài)圖、順序圖這兩種圖描述具體的系統(tǒng)流程細(xì)節(jié)。1)在本例中,GSM模塊共有四個(gè)狀態(tài):通話當(dāng)中、有問題、待命、短消息通訊中。使用狀態(tài)圖描述它們之間的轉(zhuǎn)換關(guān)系。132車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅳ(2)2)順序圖從時(shí)間順序上顯示了一個(gè)特定對(duì)象進(jìn)行特定操作時(shí)所遇到的流程。車載終端用戶在遇到特殊情況下通過車載電話或按鍵與調(diào)度中心保持通訊的系統(tǒng)的處理過程。133車載GPS終端系統(tǒng)的設(shè)計(jì)Ⅴ5.系統(tǒng)集成與測(cè)試:系統(tǒng)的構(gòu)件建立起來之后,在系統(tǒng)集成測(cè)試時(shí),可以將以上所有的UML框圖綜合起來,認(rèn)真分析每個(gè)構(gòu)件的原理和結(jié)構(gòu),針對(duì)每一個(gè)系統(tǒng)功能、每一個(gè)可能發(fā)生錯(cuò)誤的過程寫出相應(yīng)的測(cè)試程序,進(jìn)行完整而可靠的程序測(cè)試。3CHAPTERARM7體系結(jié)構(gòu)第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O3.1ARM簡(jiǎn)介ARM公司簡(jiǎn)介ARM是AdvancedRISCMachines的縮寫,它是一家微處理器行業(yè)的知名企業(yè),該企業(yè)設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC(精簡(jiǎn)指令集)處理器。公司的特點(diǎn)是只設(shè)計(jì)芯片,而不生產(chǎn)。它將技術(shù)授權(quán)給世界上許多著名的半導(dǎo)體、軟件和OEM廠商,并提供服務(wù)。3.1ARM簡(jiǎn)介ARM公司簡(jiǎn)介將技術(shù)授權(quán)給其它芯片廠商形成各具特色的ARM芯片...3.1ARM簡(jiǎn)介微處理器是整個(gè)系統(tǒng)的核心,通常由3大部分組成:控制單元、算術(shù)邏輯單元和寄存器。
算術(shù)邏輯單元寄存器控制單元微處理器存儲(chǔ)器輸入輸出3.1ARM簡(jiǎn)介ARM處理器的應(yīng)用當(dāng)前主要應(yīng)用于消費(fèi)類電子領(lǐng)域;到目前為止,基于ARM技術(shù)的微處理器應(yīng)用約占據(jù)了32位嵌入式微處理器75%以上的市場(chǎng)份額全球80%的GSM/3G手機(jī)、99%的CDMA手機(jī)以及絕大多數(shù)PDA產(chǎn)品均采用ARM體系的嵌入式處理器,“掌上計(jì)算”相關(guān)的所有領(lǐng)域皆為其所主宰。ARM技術(shù)正在逐步滲入到我們生活的各個(gè)方面。3.1ARM簡(jiǎn)介ARM體系結(jié)構(gòu)ARM處理器為RISC芯片,其簡(jiǎn)單的結(jié)構(gòu)使ARM內(nèi)核非常小,這使得器件的功耗也非常低。它具有經(jīng)典RISC的特點(diǎn):大的、統(tǒng)一的寄存器文件;裝載/保存結(jié)構(gòu),數(shù)據(jù)處理操作只針對(duì)寄存器的內(nèi)容,而不直接對(duì)存儲(chǔ)器進(jìn)行操作;簡(jiǎn)單的尋址模式;統(tǒng)一和固定長(zhǎng)度的指令域,簡(jiǎn)化了指令的譯碼,便于指令流水線設(shè)計(jì)。3.1ARM簡(jiǎn)介ARM體系結(jié)構(gòu)ARM體系結(jié)構(gòu)的特點(diǎn):每條數(shù)據(jù)處理指令都對(duì)算術(shù)邏輯單元和移位器控制,實(shí)現(xiàn)了ALU和移位器的最大利用;地址自動(dòng)增加和減少尋址模式,優(yōu)化程序循環(huán);多寄存器裝載和存儲(chǔ)指令實(shí)現(xiàn)最大數(shù)據(jù)吞吐量;所有指令的條件執(zhí)行實(shí)現(xiàn)最快速的代碼執(zhí)行。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本ARM體系結(jié)構(gòu)從最初開發(fā)到現(xiàn)在有了很大的改進(jìn),并仍在完善和發(fā)展。為了清楚的表達(dá)每個(gè)ARM應(yīng)用實(shí)例所使用的指令集,ARM公司定義了6種主要的ARM指令集體系結(jié)構(gòu)版本,以版本號(hào)V1~V6表示。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本——V1
該版本的ARM體系結(jié)構(gòu),只有26位的尋址空間,沒有商業(yè)化,其特點(diǎn)為:基本的數(shù)據(jù)處理指令(不包括乘法);字節(jié)、字和半字加載/存儲(chǔ)指令;具有分支指令,包括在子程序調(diào)用中使用的分支和鏈接指令;在操作系統(tǒng)調(diào)用中使用的軟件中斷指令。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本——V2
同樣為26位尋址空間,現(xiàn)在已經(jīng)廢棄不再使用,它相對(duì)V1版本有以下改進(jìn):具有乘法和乘加指令;支持協(xié)處理器;快速中斷模式中的兩個(gè)以上的分組寄存器;具有原子性加載/存儲(chǔ)指令SWP和SWPB。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本——V3
尋址范圍擴(kuò)展到32位(目前已廢棄),具有獨(dú)立的程序:具有乘法和乘加指令;支持協(xié)處理器;快速中斷模式中具有的兩個(gè)以上的分組寄存器;具有原子性加載/存儲(chǔ)指令SWP和SWPB。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本——V4
不在為了與以前的版本兼容而支持26位體系結(jié)構(gòu),并明確了哪些指令會(huì)引起未定義指令異常發(fā)生,它相對(duì)V3版本作了以下的改進(jìn):半字加載/存儲(chǔ)指令;字節(jié)和半字的加載和符號(hào)擴(kuò)展指令;具有可以轉(zhuǎn)換到Thumb狀態(tài)的指令(BX);增加了用戶模式寄存器的新的特權(quán)處理器模式。3.1ARM簡(jiǎn)介各ARM體系結(jié)構(gòu)版本——V5
在V4版本的基礎(chǔ)上,對(duì)現(xiàn)在指令的定義進(jìn)行了必要的修正,對(duì)V4版本的體系結(jié)構(gòu)進(jìn)行了擴(kuò)展并并增加了指令,具體如下:改進(jìn)了ARM/Thumb狀態(tài)之間的切換效率;E增強(qiáng)型DSP指令集,包括全部算法操作和16位乘法操作;J支持新的JAVA,提供字節(jié)代碼執(zhí)行的硬件和優(yōu)化軟件加速功能。3.1ARM簡(jiǎn)介ARM處理器核簡(jiǎn)介ARM公司開發(fā)了很多系列的ARM處理器核,目前最新的系列已經(jīng)是ARM11了,而ARM6核以及更早的系列已經(jīng)很罕見了。目前應(yīng)用比較廣泛的系列是:ARM7ARM9ARM9EARM10SecurCoreXscaleARM11Cortex預(yù)取(Fetch)譯碼(Decode)執(zhí)行(Execute)預(yù)?。‵etch)譯碼(Decode)執(zhí)行(Execute)訪存(Memory)寫入(Write)預(yù)取(Fetch)譯碼(Decode)發(fā)送(Issue)預(yù)?。‵etch)預(yù)取(Fetch)執(zhí)行(Execute)訪存(Memory)寫入(Write)譯碼(Decode)發(fā)送(Issue)執(zhí)行(Execute)轉(zhuǎn)換(Snny)訪存(Memory)寫入(Write)ARM7ARM9ARM10ARM113.1ARM簡(jiǎn)介項(xiàng)目ARM7ARM9ARM10ARM11流水線3568典型頻率(MHz)80150260335功耗(mW/MHz)0.060.19(+cache)0.5(+cache)0.4(+cache)性能MIPS**/MHz0.9架構(gòu)馮諾伊曼哈佛哈佛哈佛3.1ARM簡(jiǎn)介ARM系列微處理器核特點(diǎn)ARM7ARM7TDMI:整數(shù)處理核ARM7TDMI處理器的可綜合版本;ARM720T:帶MMU的處理器核心,支持操作系統(tǒng);ARM7EJ-S:帶有DSP和JazelleTM
技術(shù),能夠?qū)崿F(xiàn)Java加速功能馮諾伊曼體系結(jié)構(gòu);ARMTDMI是目前應(yīng)用最廣的微處理器核ARM720T帶有MMU和8KB的指令數(shù)據(jù)混合cache;ARM7EJ-執(zhí)行ARMv5TEJ指令,5級(jí)流水線,提供Java加速指令,沒有存儲(chǔ)器保護(hù)。ARM9ARM920T:帶有獨(dú)立的16KB數(shù)據(jù)和指令Cache;ARM922T:帶有獨(dú)立的8位KB數(shù)據(jù)和指令Cache;ARM940T–包括更小數(shù)據(jù)和指令Cache和一個(gè)MPU基于ARM9TDMI,帶16位的Thumb指令集,增強(qiáng)代碼密度最多到35%;在0.13μm工藝下最高性能可達(dá)到300MIPS(Dhrystone2.1測(cè)試標(biāo)準(zhǔn));集成了數(shù)據(jù)和指令Chche;32位AMBA總線接口的MMU支持;可在0.18μm、0.15μm和0.13μm工藝的硅芯片上實(shí)現(xiàn)。3.1ARM簡(jiǎn)介ARM9EARM926EJ-S:Jazelle技術(shù),有MMU,可配置的數(shù)據(jù)和指令Cache,TCM接口;ARM946E-S:可配置的數(shù)據(jù)和指令Cache及TCM;ARM966E-S:針對(duì)要求高性能和低功耗的可預(yù)測(cè)的指令執(zhí)行時(shí)間的硬實(shí)時(shí)應(yīng)用設(shè)計(jì)ARM968E-S:最小、功耗最小的
ARM9E系列處理器,針對(duì)嵌入式實(shí)時(shí)應(yīng)用設(shè)計(jì);ARM9E是針對(duì)微控制器、DSP和Java的單處理器解決方案;ARM
Jazelle
技術(shù)提供8倍的Java加速性能(ARM926EJ-S);5-級(jí)整數(shù)流水線;在0.13μm工藝下最高性能可達(dá)到300MIPS(Dhrystone2.1測(cè)試標(biāo)準(zhǔn));可選擇的
向量浮點(diǎn)單元VFP9協(xié)處理器指令優(yōu)秀海浮點(diǎn)性能,對(duì)于3D圖形加速和實(shí)時(shí)控制可達(dá)到
215MFLOPS。高性能的AHB總線,帶MMU可在0.18μm,0.15μm,0.13μm工藝的硅芯片上實(shí)現(xiàn)。ARM10EARM1020E:帶DSP指令集,在片調(diào)試功能,獨(dú)立的32KB數(shù)據(jù)和指令Cache,MMU支持;ARM1022E:與ARM1020E相同,只是獨(dú)立的數(shù)據(jù)和指令Cache變?yōu)?6KB;ARM1026EJ-S:同時(shí)具有MPU和MMU,可綜合版本;帶分支預(yù)測(cè)的6級(jí)整數(shù)流水線;在0.13μm工藝下最高性能可達(dá)到430MIPS(Dhrystone2.1測(cè)試標(biāo)準(zhǔn));對(duì)于3D圖形運(yùn)算和實(shí)時(shí)控制采用VFP協(xié)處理器,浮點(diǎn)運(yùn)算性能最高可達(dá)650MFLOPS;雙64位AMBA總線接口和64位內(nèi)部總路線接口;優(yōu)化的緩存結(jié)構(gòu)提高了處理器訪問低速存儲(chǔ)器的性能;可在0.18μm,0.15μm,0.13μm工藝的硅芯片上實(shí)現(xiàn)3.1ARM簡(jiǎn)介ARM11ARM11MPCore:可綜合的多處理器核,1至4個(gè)處理器可配置;ARM1136J(F)-S:可配置的數(shù)據(jù)和指令Cache,可提供1.9位的MPEG4編碼加速功能;ARM1156T2(F)-S:帶集成浮點(diǎn)協(xié)處理器,帶內(nèi)存保護(hù)單元MPU
;ARM1176JZ(F)-S:帶針對(duì)CPU和系統(tǒng)安全架構(gòu)擴(kuò)展的TrustZone技術(shù)。增強(qiáng)的Thumb、Jazelle、DSP擴(kuò)展支持;帶片上和系統(tǒng)安全TrustZone技術(shù)支持;在0.13μm工藝下最高可達(dá)到550MHz;MPCore在0.13μm工藝下最高性能可達(dá)到740MIPS(Dhrystone2.1測(cè)試標(biāo)準(zhǔn));支持多媒體指令SIMD;采用三種電源模式:全速/待命/休眠集成DMA的TCM低功耗、高性能。SecurCoreSC100:第一個(gè)32位安全處理器;、SC110:在SC100上增加密鑰協(xié)處理器;SC200:帶Jazelle技術(shù)的高級(jí)安全處理器;SC210:在SC200上增加密鑰協(xié)處理器SecurCore是專門為智能卡、安全I(xiàn)C提供的32位安全處理器,為電子商務(wù)、銀行、網(wǎng)絡(luò)、移動(dòng)多媒體、公共交通提供安全解決方案;體積小、功耗低,代碼壓縮密度高;為快速增長(zhǎng)的Java卡平臺(tái)提供Java加速功能;3.1ARM簡(jiǎn)介CortexCortex-A:面向應(yīng)用的微處理器,針對(duì)復(fù)雜操作系統(tǒng)和應(yīng)用程序設(shè)計(jì);Cortex-R:針對(duì)實(shí)時(shí)系統(tǒng)的嵌入式處理器;Cortex-M:針對(duì)成本敏感應(yīng)用優(yōu)化的深度嵌入式處理器;2004年發(fā)布,提供增強(qiáng)的媒體和數(shù)字處理能力,增加了系統(tǒng)性能;支持ARM、Thumb、Thumb-2指令集;Thumb-2指令集提供了更高的代碼存儲(chǔ)密度,進(jìn)一步降低成本;Intel系列StrongARM:ARMv4體系XScale:ARMv5TE體系,增加MMX指令StrongARM主要應(yīng)用于手持設(shè)備和PDA,5級(jí)流水線,具有獨(dú)立的數(shù)據(jù)和指令Cache,不支持Thumb指令集,目前已停產(chǎn);XScale是目前Intel公司主推的高性能嵌入式處理器,分通用處理器、網(wǎng)絡(luò)處理器和I/O處理器三類。其中通用處理器有PXA25x、PXA26x、PXA27x三個(gè)系列,被廣泛應(yīng)用于智能手機(jī)、PDA領(lǐng)域。3.1ARM簡(jiǎn)介第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O3.2ARM7TDMI簡(jiǎn)介ARM7TDMI基于ARM體系結(jié)構(gòu)V4版本,是目前低端的ARM核。具有廣泛的應(yīng)用,其最顯著的應(yīng)用為數(shù)字移動(dòng)電話。注意:“ARM核”并不是芯片,ARM核與其它部件如RAM、ROM、片內(nèi)外設(shè)組合在一起才能構(gòu)成現(xiàn)實(shí)的芯片。3.2ARM7TDMI簡(jiǎn)介ARM7TDMI支持32位尋址范圍,并彌補(bǔ)了ARM6不能在低于5V電源電壓下工作的不足。ARM7TDMI的后綴意義為:支持高密度16位的Thumb指令集;支持片上調(diào)試;支持64位乘法;支持Embeded-ICE觀察硬件;ARM7TDMI的可綜合(synthesizable)版本(軟核),對(duì)應(yīng)用工程師來說其編程模型與ARM7TDMI一致;ARM7TDMI-S3.2ARM7TDMI簡(jiǎn)介ARM7TDMI處理器是ARM通用32位微處理器家族的成員之一。它具有優(yōu)異的性能,但功耗卻很低,使用門的數(shù)量也很少。它屬于精簡(jiǎn)指令集計(jì)算機(jī)(RISC),比復(fù)雜指令集計(jì)算機(jī)(CISC)要簡(jiǎn)單得多。這樣的簡(jiǎn)化實(shí)現(xiàn)了:高的指令吞吐量;出色的實(shí)時(shí)中斷響應(yīng);小的、高性價(jià)比的處理器宏單元。3.2ARM7TDMI三級(jí)流水線ARM7TDMI處理器使用流水線來增加處理器指令流的速度。這樣可使幾個(gè)操作同時(shí)進(jìn)行,并使處理和存儲(chǔ)器系統(tǒng)連續(xù)操作,能提供0.9MIPS/MHz的指令執(zhí)行速度。
ARM7TDMI的流水線分3級(jí),分別為:取指譯碼執(zhí)行3.2ARM7TDMI存儲(chǔ)器訪問ARM7TDMI處理器使用了馮·諾依曼(VonNeumann)結(jié)構(gòu),指令和數(shù)據(jù)共用一條32位總線。只有裝載、存儲(chǔ)和交換指令可以對(duì)存儲(chǔ)器中的數(shù)據(jù)進(jìn)行訪問。數(shù)據(jù)可以是字節(jié)(8位)、半字(16位)或者字(32位)。第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O3.3系統(tǒng)內(nèi)部結(jié)構(gòu)圖ARM7TDMI處理器部件和主要信號(hào)路徑的框圖如圖所示。它內(nèi)部由處理器核、用于邊界掃描的TAP控制器和在線仿真器ICE組成。雙向數(shù)據(jù)總線D[31:0]被分割成單向輸入和輸出總線,以便于與外部存儲(chǔ)器兼容。3.3ARM7TDMI的模塊和內(nèi)核框圖ARM7TDMI模塊地址寄存器寄存器組31*32位寄存器(6個(gè)狀態(tài)寄存器)地址增量器乘法器桶形移位器32位ALU寫數(shù)據(jù)寄存器指令流水線讀數(shù)據(jù)寄存器Thumb指令譯碼器指令譯碼和邏輯控制ADDR[31:0]CLKCLENCFGBIGENDnIRQnFIQnRESETABORTLOCKWRITESIZE[1:0]PROT[1:0]TRANS[1:0]DBG輸出DBG輸入CP控制CP握手WDATA[31:0]RDATA[31:0]掃描調(diào)試控制A總線B總線ALU總線增量器總線PC總線3.3ARM7TDMI功能信號(hào)圖ARM7TDMI第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O3.4體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型ARM處理器支持下列數(shù)據(jù)類型:字節(jié)8位半字16位(必須分配為占用兩個(gè)字節(jié))字32位(必須分配為占用4各字節(jié))1112342體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型注意:V4版本之后的ARM結(jié)構(gòu)都支持這3種結(jié)構(gòu)(包括V4版本),而以前的版本只支持字節(jié)和字;當(dāng)數(shù)據(jù)類型定義為無符號(hào)型時(shí),N位數(shù)據(jù)值使用正常的二進(jìn)制格式表示范圍為0~2N-1的非負(fù)整數(shù);當(dāng)數(shù)據(jù)類型定義為有符號(hào)型時(shí),N位數(shù)據(jù)值使用2的補(bǔ)碼格式表示范圍為-2N-1~+2N-1-1的整數(shù);3.4體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型注意:所有數(shù)據(jù)操作,例如ADD,都以字為單位;裝載和保存指令可以對(duì)字節(jié)、半字和字進(jìn)行操作,當(dāng)裝載字節(jié)或半字時(shí)自動(dòng)實(shí)現(xiàn)零擴(kuò)展或符號(hào)擴(kuò)展;ARM指令的長(zhǎng)度剛好是1個(gè)字(分配為占用4個(gè)字節(jié)),Thumb指令的長(zhǎng)度剛好是半字(占用2個(gè)字節(jié))。3.4體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O3.5處理器狀態(tài)處理器狀態(tài)ARM7TDMI處理器內(nèi)核使用V4T版本的ARM結(jié)構(gòu),該結(jié)構(gòu)包含32位ARM指令集和16位Thumb指令集。因此ARM7TDMI處理器有兩種操作狀態(tài):ARM狀態(tài):32位,這種狀態(tài)下執(zhí)行的是字方式的ARM指令;Thumb狀態(tài):16位,這種狀態(tài)下執(zhí)行半字方式的ARM指令。注意:兩個(gè)狀態(tài)之間的切換并不影響處理器模式或寄存器內(nèi)容。3.5處理器狀態(tài)處理器狀態(tài)
使用BX指令將ARM7TDMI內(nèi)核的操作狀態(tài)在ARM狀態(tài)和Thumb狀態(tài)之間進(jìn)行切換(詳見第4章),程序如下所示。;從Arm狀態(tài)切換到Thumb狀態(tài)
LDRR0,=Lable+1BXR0;從Thumb狀態(tài)切換到ARM狀態(tài)
LDRR0,=LableBXR0地址最低位為1,表示切換到Thumb狀態(tài)地址最低位為0,表示切換到ARM狀態(tài)跳轉(zhuǎn)地址標(biāo)號(hào)第3章目錄1.簡(jiǎn)介2.ARM7TDMI3.ARM7TDMI的模塊和內(nèi)部框圖4.體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型5.處理器狀態(tài)6.處理器模式7.內(nèi)部寄存器8.程序狀態(tài)寄存器9.異常10.復(fù)位11.存儲(chǔ)器及存儲(chǔ)器映射I/O處理器模式說明備注
用戶(usr)正常程序執(zhí)行模式不能直接切換到其它模式
系統(tǒng)(sys)運(yùn)行操作系統(tǒng)的特權(quán)任務(wù)與用戶模式類似,但具有可以直接切換到其它模式等特權(quán)
快中斷(fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式
中斷(irq)用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式
管理(svc)操作系統(tǒng)保護(hù)模式系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)入此模式
中止(abt)用于支持虛擬內(nèi)存和/或存儲(chǔ)器保護(hù)在ARM7TDMI沒有大用處
未定義(und)支持硬件協(xié)處理器的軟件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此模式3.6處理器模式處理器7種模式3.6處理器模式特權(quán)模式處理器模式說明備注
用戶(usr)正常程序工作模式不能直接切換到其它模式
系統(tǒng)(sys)用于支持操作系統(tǒng)的特權(quán)任務(wù)等與用戶模式類似,但具有可以直接切換到其它模式等特權(quán)
快中斷(fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式
中斷(irq)用于通用中斷處理IRQ異常響應(yīng)時(shí)進(jìn)入此模式
管理(svc)操作系統(tǒng)保護(hù)代碼系統(tǒng)復(fù)位和軟件中斷響應(yīng)時(shí)進(jìn)入此模式
中止(abt)用于支持虛擬內(nèi)存和/或存儲(chǔ)器保護(hù)在ARM7TDMI沒有大用處
未定義(und)支持硬件協(xié)處理器的軟件仿真未定義指令異常響應(yīng)時(shí)進(jìn)入此模式
除用戶模式外,其它模式均為特權(quán)模式。ARM內(nèi)部寄存器和一些片內(nèi)外設(shè)在硬件設(shè)計(jì)上只允許(或者可選為只允許)特權(quán)模式下訪問。此外,特權(quán)模式可以自由的切換處理器模式,而用戶模式不能直接切換到別的模式。
未定義(und)
中止(abt)
管理(svc)
中斷(irq)
快中斷(fiq)
系統(tǒng)(sys)3.6處理器模式異常模式處理器模式說明備注
用戶(usr)正常程序工作模式不能直接切換到其它模式
系統(tǒng)(sys)用于支持操作系統(tǒng)的特權(quán)任務(wù)等與用戶模式類似,但具有可以直接切換到其它模式等特權(quán)
快中斷(fiq)支持高速數(shù)據(jù)傳輸及通道處理FIQ異常響應(yīng)時(shí)進(jìn)入此模式
中斷(irq)用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公路模板租賃合同范本
- 內(nèi)部綠化施工合同范本
- 個(gè)人轉(zhuǎn)讓鍋爐合同范本
- 企業(yè)農(nóng)行貸款合同范本
- 兄弟合作創(chuàng)業(yè)合同范例
- 出售老舊平房合同范本
- 農(nóng)村收購木材合同范例
- 2025年γ-丁內(nèi)酯項(xiàng)目可行性研究報(bào)告
- 2025年度建筑消防疏散指示標(biāo)識(shí)安裝施工合同
- 2025年度綠色節(jié)能建筑工程承包補(bǔ)充協(xié)議
- 公司員工升職加薪制度模板
- 2024上海市招聘社區(qū)工作者考試題及參考答案
- 鄉(xiāng)鎮(zhèn)衛(wèi)生院服務(wù)能力建設(shè)醫(yī)療質(zhì)控部分課件
- 《招標(biāo)投標(biāo)法》考試題庫200題(含答案)
- 2024版市政工程承包合同簽約流程規(guī)范指南2篇
- 立春氣象與健康
- 卵圓孔未閉病因介紹
- 室內(nèi)空氣治理技術(shù)培訓(xùn)
- 小紅書文旅營銷CityWalk城市漫游(通案)
- 寒假生活回顧分享小學(xué)主題班會(huì) 課件
- 湖南省長(zhǎng)沙市2024-2025學(xué)年高一數(shù)學(xué)上學(xué)期期末考試試卷
評(píng)論
0/150
提交評(píng)論