嵌入式系統(tǒng)組成結(jié)構(gòu)簡(jiǎn)介



《嵌入式系統(tǒng)組成結(jié)構(gòu)簡(jiǎn)介》由會(huì)員分享,可在線閱讀,更多相關(guān)《嵌入式系統(tǒng)組成結(jié)構(gòu)簡(jiǎn)介(71頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版文本樣式,,第二級(jí),,第三級(jí),,第四級(jí),,第五級(jí),,71,單擊此處編輯母版標(biāo)題樣式,,第二講 嵌入式系統(tǒng)的組成結(jié)構(gòu),,本講提要,1,3,2,5,4,嵌入式系統(tǒng)的組成結(jié)構(gòu),嵌入式系統(tǒng)的硬件組成,嵌入式操作系統(tǒng)涉及的幾個(gè)關(guān)鍵概念,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,嵌入式操作系統(tǒng),一般由,嵌入式微處理器,、,外圍硬件設(shè)備,、,嵌入式操作系統(tǒng),(可選),以及,應(yīng)用軟件系統(tǒng),等四個(gè)部分組成,,嵌入式系統(tǒng)的組成結(jié)構(gòu),嵌入式系統(tǒng)的組成結(jié)構(gòu),處理器,存儲(chǔ)器,輸入接口,操作系統(tǒng),,(驅(qū)動(dòng)程序),應(yīng)用程序,軟件子系統(tǒng),硬件子系統(tǒng),嵌入式系統(tǒng)組成,,輸出接口,外圍設(shè)備,嵌入式系統(tǒng)的組成結(jié)構(gòu),硬件,是
2、嵌入式系統(tǒng)軟件環(huán)境運(yùn)行的基礎(chǔ),它提供了嵌入式系統(tǒng)軟件運(yùn)行的物理平臺(tái)和通信接口;,,嵌入式操作系統(tǒng),和,嵌入式應(yīng)用軟件,是整個(gè)系統(tǒng)的控制核心,控制整個(gè)系統(tǒng)的運(yùn)行,提供人機(jī)交互的信息等。,,嵌入式系統(tǒng),和實(shí)際應(yīng)用對(duì)象密切相關(guān),,而實(shí)際應(yīng)用非常繁雜,應(yīng)用也日新月異,,很難用一種構(gòu)架或模型加以描述,。我們將主要圍繞,典型,嵌入式系統(tǒng)的硬件組成和軟件組成部分加以詳細(xì)講述。,,,應(yīng)用程序,實(shí)時(shí)操作系統(tǒng)(RTOS),輸入輸出接口,,處理器/ARM核,,MMU/Cache,SOC/SOPC,USB,GPIO,,IIS,,,LCD,,,UART和IrDA,,,ADC/DAC,,,FPGA/CPLD,,,DSP/
3、浮點(diǎn)運(yùn)算協(xié)處理器,DMA,,,圖2-1 典型的嵌入式系統(tǒng)組成,人機(jī)交互接口LCD/觸摸屏、鍵盤(pán)、鼠標(biāo),設(shè)備驅(qū)動(dòng)程序、HAL、BSP,文件系統(tǒng)/圖形用戶應(yīng)用程序接口,驅(qū)動(dòng)層,OS層,應(yīng)用層,軟件,硬件,以太網(wǎng),,,看門(mén)狗及復(fù)位電路,,,Timer/RTC,,,CAN,,,Flash,EEPROM,SDRAM,SRAM,內(nèi)存,電源管理,嵌入式系統(tǒng)的組成結(jié)構(gòu)圖,作用:,防止程序發(fā)生死循環(huán)(程序跑飛)。,工作原理:,系統(tǒng)運(yùn)行后即啟動(dòng)看門(mén)狗,開(kāi)始自動(dòng)計(jì)數(shù),如果到一定時(shí)間未清看門(mén)狗,看門(mén)狗就會(huì)溢出從而引起看門(mén)狗中斷,造成系統(tǒng)復(fù)位。,軟件系統(tǒng),軟件,(software),是計(jì)算機(jī)系統(tǒng)中與硬件,(hardw
4、are),相互依存的另一部分,它包括程序,(program),、,相關(guān)數(shù)據(jù),(data),及其說(shuō)明文檔,(document),。,其中:,,程序,是按照事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列;,,數(shù)據(jù),是程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu);,,文檔,是與程序開(kāi)發(fā)維護(hù)和使用有關(guān)的各種圖文資料。,嵌入式軟件系統(tǒng)的分類(lèi),嵌入式軟件,系統(tǒng)軟件,支撐軟件,應(yīng)用軟件,控制、管理計(jì)算機(jī)系統(tǒng)的資源,嵌入式操作系統(tǒng),,嵌入式中間件(CORBA、,,Java),,等等,輔助軟件開(kāi)發(fā)的工具,系統(tǒng)分析設(shè)計(jì)工具,,仿真開(kāi)發(fā)工具,,交叉開(kāi)發(fā)工具,,測(cè)試工具,,配置管理工具,,維護(hù)工具等,面向應(yīng)用領(lǐng)域,手機(jī)軟件,,路由器軟件,,
5、交換機(jī)軟件,,飛控軟件等,嵌入式軟件系統(tǒng)的分類(lèi),從,運(yùn)行平臺(tái),來(lái)分,嵌入式軟件可以分為,,運(yùn)行在,開(kāi)發(fā)平臺(tái),上的軟件,:設(shè)計(jì)、開(kāi)發(fā)、測(cè)試工具等。,,運(yùn)行在,嵌入式系統(tǒng),上的軟件,:嵌入式操作系統(tǒng)、應(yīng)用程序、驅(qū)動(dòng)程序及部分開(kāi)發(fā)工具。,宿主機(jī),目標(biāo)機(jī),嵌入式軟件系統(tǒng)的體系結(jié)構(gòu),硬件,應(yīng)用層,驅(qū)動(dòng)層,操作系統(tǒng)層,中間件層,板級(jí),,初始化,FLASH驅(qū)動(dòng),RTC/定時(shí)器驅(qū)動(dòng),串口,,驅(qū)動(dòng),以太網(wǎng)驅(qū)動(dòng),LCD,,驅(qū)動(dòng),鍵盤(pán),,驅(qū)動(dòng),其他,,驅(qū)動(dòng),內(nèi)核,TCP/IP,,網(wǎng)絡(luò)系統(tǒng),文件,,系統(tǒng),嵌入式GUI,電源,,管理,嵌入式CORBA,嵌入式JAVA,嵌入式,,DCOM,面向應(yīng)用領(lǐng)域的中間件,應(yīng)用,,任
6、務(wù)1,應(yīng)用,,任務(wù)2,……,應(yīng)用,,任務(wù)n,嵌入式軟件運(yùn)行流程,系統(tǒng)升級(jí),引導(dǎo)/升級(jí)系統(tǒng),系統(tǒng)初始化,應(yīng)用初始化,多任務(wù)應(yīng)用,上電復(fù)位、板級(jí)初始化,遠(yuǎn)程升級(jí),本地升級(jí),基于多任務(wù)操作系統(tǒng),的嵌入式軟件的主要運(yùn)行流程,,該運(yùn)行流程主要分為,5,個(gè)階段,BSP的概念和特點(diǎn),BSP,(板級(jí)支持包)是介于底層硬件和操作系統(tǒng)之間的軟件層,它完成系統(tǒng)上電后最初的硬件和軟件初始化,并對(duì)底層硬件進(jìn)行封裝,使得操作系統(tǒng)不再面對(duì)具體的操作。,,,BSP的特點(diǎn),:,,硬件相關(guān)性,:因?yàn)橛布哂袘?yīng)用相關(guān)性,所以,作為高層軟件與硬件之間的接口,BSP必須為操作系統(tǒng)提供操作和控制具體硬件的方法。,,操作系統(tǒng)相關(guān)性,:不同
7、的操作系統(tǒng)具有各自的軟件層次結(jié)構(gòu),因此,針對(duì)不同的操作系統(tǒng)具有特定的接口形式。,,Board Support Package,BSP的功能,完成嵌入式系統(tǒng)部分初始化,,A、片級(jí)初始化,,B、板級(jí)初始化,,C、系統(tǒng)級(jí)初始化,,,完成硬件相關(guān)的設(shè)備驅(qū)動(dòng),,,,設(shè)計(jì)BSP的方法,一、以典型的BSP做為參考,,,二、參照操作系統(tǒng)或芯片廠商提供的BSP模板,第二講 嵌入式系統(tǒng)的組成結(jié)構(gòu),1,3,2,5,4,嵌入式系統(tǒng)的組成結(jié)構(gòu),嵌入式系統(tǒng)的硬件組成,嵌入式操作系統(tǒng)涉及的幾個(gè)關(guān)鍵概念,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,嵌入式操作系統(tǒng),11/27/2024,,嵌入式處理器,存儲(chǔ)器,輸入設(shè)備,輸出設(shè)備,外圍接
8、口,軟件,硬件單元,中央處理器是嵌入式系統(tǒng)的核心,負(fù)責(zé)控制整個(gè)系統(tǒng)的執(zhí)行。,,包括微處理器、微控制器、DSP處理器、專(zhuān)用處理器、SOC(System on Chip),,存儲(chǔ)器按存儲(chǔ)信息的功能可分為只讀存儲(chǔ)器ROM(Read Only Memory)和隨機(jī)存儲(chǔ)器RAM(Random Access Memory),嵌入式系統(tǒng)中的輸入形式一般包括觸摸屏、語(yǔ)音輸入、按鍵和虛擬鍵盤(pán)等,,輸出設(shè)備則主要有LCD 顯示和語(yǔ)音輸出,外圍接口主要有GPIO、串口、I,2,C總線、USB總線和IEEE 1394總線等等,,典型嵌入式系統(tǒng)基本組成-硬件,最小硬件系統(tǒng),用最少的元件組成的可以工作的系統(tǒng),,,20世紀(jì)
9、80年代,,中后期,20世紀(jì)90年代,,初期,20世紀(jì)90年代,,中后期,21世紀(jì),,初期,制作工藝,1 - 0.8,?,m,0.8 - 0.5,?,m,0.5 – 0.35,?,m,0.25 - 0.13,?,m,主頻,< 33 MHz,<100 MHz,<200 MHz,< 600 MHz,晶體管個(gè)數(shù),> 500K,>2M,>5M,>22M,位數(shù),8/16bit,8/16/32bit,8/16/32bit,8/16/32/64bit,嵌入式微處理器的發(fā)展,嵌入式微處理器的特點(diǎn),基礎(chǔ)是通用微處理器,,與通用微處理器相比的區(qū)別:,,體積小、重量輕、成本低、可靠性高,,功耗低,,工作溫度、抗電磁
10、干擾、可靠性等方面增強(qiáng),體系結(jié)構(gòu),指令集,性能,功耗和管理,成本,集成度,嵌入式微處理器的集成度,用于桌面和服務(wù)器的微處理器的芯片內(nèi)部通常,只包括CPU核心、Cache、MMU、總線接口等部分,,其他附加的功能如外部接口、系統(tǒng)總線、外部總線和外部設(shè)備獨(dú)立在其他芯片和電路內(nèi)。,,嵌入式微處理器除了集成CPU核心、Cache、MMU、總線等部分外,還集成了各種外部接口和設(shè)備,如,中斷控制器,、,DMA,、,定時(shí)器,、,UART,等。,符合嵌入式系統(tǒng)的低成本和低功耗需求,,一塊單一的集成了大多數(shù)需要的功能塊的芯片價(jià)格更低,功耗更少。,單芯片方式(Single Chip),,芯片組方式(Chip Se
11、t):由微處理器主芯片和一些從芯片組成,嵌入式微處理器的集成度,嵌入式微處理器是面向應(yīng)用的,其片內(nèi)所包含的,組件的數(shù)目和種類(lèi),是由它的市場(chǎng)定位決定的。,,在最普通的情況下,嵌入式微處理器包括:,,片內(nèi)存儲(chǔ)器:部分嵌入式微處理器,,外部存儲(chǔ)器的控制器,外設(shè)接口,(,串口,并口,),,LCD,控制器:面向終端類(lèi)應(yīng)用的嵌入式微處理器,,中斷控制器,,DMA,控制器,協(xié)處理器,,定時(shí)器,,A/D,、,D/A,轉(zhuǎn)換器,,多媒體加速器:當(dāng)高級(jí)圖形功能需要時(shí),,總線,,其他標(biāo)準(zhǔn)接口或外設(shè),嵌入式微處理器的種類(lèi),1000,多種硬件處理器,分為,MCU,、,DSP,、,MPU,、,SOC,,ARM RISC,(
12、,ARM,),,TMS320 DSP,(,TI,),,Trimedia,,(,Philips,),,StrongARM,,(,Intel,),,Xscale,,(,Intel,),,MIPS RISC,(,MIPS,),,DragonBall,(,Motorola,),,對(duì)比,,,嵌入式,,微處理器,嵌入式,,微控制器,嵌入式,,DSP處理器,嵌入式,,片上系統(tǒng),硬件尺寸,,(包括外圍),大,小,小,最小,功耗,大,小,中,中,開(kāi)發(fā)難度,小,大,大,大,軟件移植性,好,壞,壞,壞,成本,高,最低,低,中,性能,強(qiáng),弱,較強(qiáng),較強(qiáng),應(yīng)用領(lǐng)域,通用,較通用低端,專(zhuān)用,較通用高端,網(wǎng)絡(luò)能力,強(qiáng),弱,
13、較弱,強(qiáng),實(shí)時(shí)性,差,好,好,一般,從計(jì)算機(jī)角度看,,單片機(jī)功能太簡(jiǎn)單,,,性能太差,,DSP,太專(zhuān)用,,,可以看成一個(gè)外設(shè),,通用處理器與,SOC,是主要發(fā)展方向,主流的嵌入式微處理器,目前主流的嵌入式微處理器系列主要有ARM系列、MIPS系列、PowerPC系列、Super H系列和X86系列等。,,屬于這些系列的嵌入式微處理器產(chǎn)品很多,有上千種以上。,Units,,(millions),Source: Andrew Allison, Inside The New Computer Industry, January 2001,ARM處理器的分類(lèi),結(jié)構(gòu)體系版本(,Architecture,
14、),,ARM v4T,,ARM v5TE,,,ARM v6,,ARM Cortex (v7),,,Processor Family,,ARM7,,ARM9,,ARM10,,ARM11,,ARM Cortex,按應(yīng)用特征分類(lèi),,應(yīng)用處理器,,Application Processor,,實(shí)時(shí)控制處理器,,Real-time Controller,,微控制器,,Micro-controller,特征:MMU, Cache,,最快頻率、最高性能、合理功耗,特征:MPU, Cache,,實(shí)時(shí)響應(yīng)、合理性能、較低功耗,特征:no sub-memory system,,一般性能、最低成本、極低功耗,嵌入式
15、外圍接口電路和設(shè)備接口,,嵌入式外圍設(shè)備,:在嵌入式系統(tǒng)硬件構(gòu)成中,除核心控制部件,(嵌入式微處理器/DSP為核心的微控制器、SoC),以外的各種,存儲(chǔ)器,、,輸入/輸出接口,、,作為人機(jī)接口的,顯示器/鍵盤(pán),、,串行通信接口等,。,,根據(jù)外圍設(shè)備的功能可分為以下5類(lèi):,,,存儲(chǔ)器,,通信接口,,輸入輸出設(shè)備,,設(shè)備擴(kuò)展接口,,電源及輔助設(shè)備,嵌入式,,處理器,,可編程,,邏輯器件,大容量,,存儲(chǔ)器,,電源模塊,,解決方案,嵌入式系統(tǒng)周邊元器件,嵌入式系統(tǒng)必備接插件,PowerPC 微處理器,,ARM微處理器,,TMS320C6000系列DSP,,TMS320C5000系列DSP,,TMS32
16、0C2000系列DSP,,TI公司其它DSP系列,,VirtexII Platform FPGA Virtex(E)系列 FPGA,,Spartan(XL)系列FPGA,,SpartanII(E)系列FPGA,,XC95(XL)系列 CPLD,,CoolRunner系列 CPLD,嵌入式系統(tǒng)構(gòu)成,Xilinx,TI & Intel & Motorola,TI Power Trend嵌入式電源方案,,美國(guó)ERICSSON電源模塊,,日本COSEL電源模塊,,美國(guó)VICOR電源模塊,,法國(guó)GAIA軍用電源,懷特電子高可靠性存儲(chǔ)器系列,,IDT公司FIFO及雙口RAM,,Cypress公司高
17、速SRAM系列,,現(xiàn)代電子公司SDRAM系列,,Intel公司 大容量Flash系列,AMP公司接插件系列,,AI公司PCB插座系列,AMP & AI,嵌入式系統(tǒng)硬件,第二講 嵌入式系統(tǒng)的組成結(jié)構(gòu),1,3,2,5,4,嵌入式系統(tǒng)的組成結(jié)構(gòu),嵌入式系統(tǒng)的硬件組成,嵌入式操作系統(tǒng)涉及的幾個(gè)關(guān)鍵概念,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,嵌入式操作系統(tǒng),馮,·,諾依曼體系結(jié)構(gòu),/,哈佛體系結(jié)構(gòu),,CISC/RISC,,影響,CPU,性能的因素,,存儲(chǔ)器系統(tǒng),,I/O,接口,,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,馮·諾依曼體系結(jié)構(gòu)模型,馮·諾依曼體系的特點(diǎn):,,數(shù)據(jù)與指令都存儲(chǔ)在同一存儲(chǔ)空間中,,統(tǒng)一編址,
18、指令和數(shù)據(jù)通過(guò)同一總線訪問(wèn),,被大多數(shù)計(jì)算機(jī)所采用,,ARM7——,馮諾依曼體系,指令寄存器,控制器,數(shù)據(jù)通道,輸入,輸出,中央處理器,存儲(chǔ)器空間,程序,指令0,指令1,指令2,指令3,指令4,數(shù)據(jù),數(shù)據(jù)0,數(shù)據(jù)1,數(shù)據(jù)2,地址,指令,地址,數(shù)據(jù),缺點(diǎn),: 取指令和存取數(shù)據(jù)要從同一個(gè)存儲(chǔ)空間存取,經(jīng)由同一總線 傳輸,因而它們無(wú)法重疊執(zhí)行,哈佛體系結(jié)構(gòu),指令寄存器,控制器,數(shù)據(jù)通道,輸入,輸出,中央處理器,程序存儲(chǔ)器空間,指令0,指令1,指令2,數(shù)據(jù)存儲(chǔ)器空間,數(shù)據(jù)0,數(shù)據(jù)1,數(shù)據(jù)2,地址,指令,地址,數(shù)據(jù),哈佛體系結(jié)構(gòu)的特點(diǎn):,,程序與數(shù)據(jù)在不同存儲(chǔ)空間;每個(gè)存儲(chǔ)器獨(dú)立編址、獨(dú)立訪問(wèn),,使用
19、程序和數(shù)據(jù)總線,使數(shù)據(jù)吞吐率提高一倍,,適合于數(shù)字信號(hào)處理,,大多數(shù),DSP,都是哈佛結(jié)構(gòu),,ARM9,是哈佛結(jié)構(gòu),1944年,哈佛大學(xué)的Howard Aiken發(fā)明了Harvard Mark系列計(jì)算機(jī),并且在其中采用了,分開(kāi)的,指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,這就是后來(lái)著名的“哈佛結(jié)構(gòu)”,由于取指令和存取數(shù)據(jù)分別經(jīng)由不同的存儲(chǔ)空間和不同的總線,使得各條指令可以重疊執(zhí)行,這樣,也就克服了數(shù)據(jù)流傳輸?shù)钠款i,提高了運(yùn)算速度。,CISC和RISC,CISC:復(fù)雜指令集(Complex Instruction Set Computer),,具有大量的指令和尋址方式,,8/2原則,:80%的程序只使用20%的指
20、令,,大多數(shù)程序只使用少量的指令就能夠運(yùn)行。,RISC:精簡(jiǎn)指令集(Reduced Instruction Set Computer),,在通道中只包含最有用的指令,,確保數(shù)據(jù)通道快速執(zhí)行每一條指令,,使CPU硬件結(jié)構(gòu)設(shè)計(jì)變得更為簡(jiǎn)單,傳統(tǒng)的CISC指令集隨著計(jì)算機(jī)的發(fā)展引入了各種各樣的復(fù)雜指令,使得指令集和為此要實(shí)現(xiàn)這些指令的計(jì)算機(jī)體系結(jié)構(gòu)越來(lái)越復(fù)雜,已經(jīng)不堪重負(fù)。,指令規(guī)整、對(duì)稱(chēng)、簡(jiǎn)單,指令小于,100,條,基本尋址方式只有,2,~,3,種,,單周期指令,便于流水操作,,大量的寄存器(不少于,32,個(gè)),CISC與RISC的數(shù)據(jù)通道,IF,ID,ALU,MEM,REG,微操作通道,開(kāi)始,退
21、出,IF,ID,REG,ALU,MEM,開(kāi)始,退出,單通數(shù)據(jù)通道,,CISC的數(shù)據(jù)通道,RISC的數(shù)據(jù)通道,CISC與RISC的對(duì)比,,,CISC,RISC,價(jià)格,由硬件完成部分軟件功能,硬件復(fù)雜性增加,芯片成本高,由軟件完成部分硬件功能,軟件復(fù)雜性增加,芯片成本低,性能,減少代碼尺寸,增加指令的執(zhí)行周期數(shù),使用流水線降低指令的執(zhí)行周期數(shù),但增加代碼尺寸,指令集,大量的混雜型指令集,有簡(jiǎn)單快速的指令,也有復(fù)雜的多周期指令,符合HLL(high level language),簡(jiǎn)單的單周期指令,在匯編指令方面有相應(yīng)的CISC微代碼指令,高級(jí)語(yǔ)言支持,硬件完成,軟件完成,尋址模式,復(fù)雜的尋址模式,
22、支持內(nèi)存到內(nèi)存尋址,簡(jiǎn)單的尋址模式,僅允許LOAD和STORE指令存取內(nèi)存,其它所有的操作都基于寄存器到寄存器,控制單元,微碼,直接執(zhí)行,寄存器數(shù)目,寄存器較少,寄存器較多,影響CPU性能的因素:流水線、超標(biāo)量和緩存,流水線技術(shù),:幾個(gè)指令可以并行執(zhí)行(,使指令的執(zhí)行速度或數(shù)據(jù)的處理速度更快,,克服早期計(jì)算機(jī)指令執(zhí)行和數(shù)據(jù)處理串行進(jìn)行產(chǎn)生的處理器閑置時(shí)間的弊端,),,提高了CPU的運(yùn)行效率,,內(nèi)部信息流要求通暢流動(dòng),取指,分析,執(zhí)行,譯碼,取指,執(zhí)行add,譯碼,取指,執(zhí)行sub,譯碼,取指,執(zhí)行cmp,時(shí)間,Add,Sub,Cmp,△,t,2△,t,3△,t,4△,t,5△,t,流水線,:在
23、CPU中把一條指令分解成多個(gè)可單獨(dú)處理的操作,使每個(gè)操作在一個(gè)專(zhuān)門(mén)的硬件站(stage),上執(zhí)行,這樣一條指令需要順序地經(jīng)過(guò)流水線中多個(gè)站的處理才能完成,但是前后相連的幾條指令可以依次流入流水線中,在多個(gè)站間重疊執(zhí)行,因此可以實(shí)現(xiàn)指令的并行處理。,指令流水線—以ARM為例,為增加處理器指令流的速度,ARM7 系列使用3級(jí)流水線。,,允許多個(gè)操作同時(shí)處理,比逐條指令執(zhí)行要快。,,,,,,,,,PC指向正被取指的指令,而非正在執(zhí)行的指令。,,Fetch,Decode,Execute,從存儲(chǔ)器中讀取指令,解碼指令中用到的寄存器,寄存器讀(從寄存器Bank),,移位及ALU操作,,寄存器寫(xiě)(到寄存器B
24、ank ),PC PC,PC - 4 PC-2,PC - 8 PC - 4,ARM Thumb,最佳流水線,該例中用6個(gè)時(shí)鐘周期執(zhí)行了6條指令。,,所有的操作都在寄存器中(單周期執(zhí)行)。,,指令周期數(shù) (CPI) = 1。,,操作,周期,1 2 3 4 5 6,ADD,SUB,MOV,AND,ORR,EOR,CMP,RSB,Fetch,Decode,。,Fetch,Execute,Decode,Fetch,Execute,Decode,Fetch,Execute,Decode,Fetch,Fetch,Execute,Decode,Execute,Decode,Fetc
25、h,Execute,Decode,Fetch,流水線能夠正常工作的條件:任意時(shí)刻,每一級(jí)所使用的硬件必須能獨(dú)立操作,不能多級(jí)同時(shí)占用同一硬件資源。,,在正常情況下,每條指令都被劃分成這樣,3,個(gè)時(shí)鐘周期來(lái)完成,即指令執(zhí)行時(shí)間(,Latency,)是,3,周期。,,流水線的執(zhí)行使得程序計(jì)數(shù)器,PC,必須在當(dāng)前指令取指前計(jì)數(shù)。對(duì)于,ARM,處理器的,3,級(jí)流水線,以當(dāng)前,PC,取指后,,PC,值會(huì)增加為,PC,+,4,。,超標(biāo)量執(zhí)行,超標(biāo)量,:配置多個(gè)執(zhí)行部件和指令譯碼電路,能同時(shí)執(zhí)行多條 指令。,,超標(biāo)量執(zhí)行,:超標(biāo)量CPU采用多條流水線結(jié)構(gòu)。,執(zhí)行1,預(yù)取,指令CACHE,譯碼2,譯碼
26、1,執(zhí)行2,執(zhí)行1,預(yù)取,譯碼2,譯碼1,執(zhí)行2,流水線1,流水線2,數(shù)據(jù),借助硬件資源重復(fù),(例如有兩套譯碼器和ALU等),來(lái)實(shí)現(xiàn)空間的并行操作,高速緩存(CACHE),1、為什么采用高速緩存,,微處理器的時(shí)鐘頻率比內(nèi)存速度提高快得多,高速緩存可以提高內(nèi)存的平均性能。,,2、高速緩存的工作原理,,依據(jù),:程序和數(shù)據(jù)訪問(wèn)的局部性原理。,,高速緩存是一種小型、快速的存儲(chǔ)器,它保存部分主存內(nèi)容的拷貝。,,CPU,,高速緩存控制器,,CACHE,,,,主存,,,數(shù)據(jù),數(shù)據(jù),地址,Cache的設(shè)計(jì)思想,:,把在一段時(shí)間內(nèi)、一定地址范圍中被頻繁訪問(wèn)的信息集合,成批地從主存中讀到一個(gè)能,高速存取的小容量存
27、儲(chǔ)器,中存放起來(lái),供程序在這段時(shí)間內(nèi)隨時(shí)使用,從而減少或不再去訪問(wèn)速度較慢的主存,以加快程序的運(yùn)行速度。,以CPU為核心看,將CPU直接參與的事件稱(chēng)為,同步事件,,CPU未直接參與的稱(chēng)為,異步事件,。,cache的操作都是同步的,,但是如果在寫(xiě)一個(gè)外部設(shè)備的驅(qū)動(dòng)時(shí)為了減少CPU的參與,用DMA來(lái)搬移數(shù)據(jù),那么DMA搬移數(shù)據(jù)這個(gè)事件便是異步事件。,,,,圖1中,RAM內(nèi)存從地址0x00000000到0x000ffffff 1M范圍內(nèi)的內(nèi)容全部被調(diào)入cache中;,,現(xiàn)假定外部設(shè)備有新的數(shù)據(jù)到來(lái)并發(fā)生了中斷,CPU在設(shè)定完DMA控制器后繼續(xù),其工作,DMA根據(jù)設(shè)定將1M的新數(shù)據(jù)裝入RAM中并通知C
28、PU新的數(shù)據(jù)到了。(,此時(shí),出現(xiàn)數(shù)據(jù)不一致,),當(dāng)CPU要對(duì)新的數(shù)據(jù)操作時(shí),因?yàn)榇送獠吭O(shè)備的數(shù)據(jù)被存放在從0x00000000開(kāi)始的RAM中,而此段數(shù)據(jù)又恰好被cache命中,那么CPU將直接訪問(wèn)cache中的數(shù)據(jù),可是cache中的數(shù)據(jù)并非剛剛得到的新數(shù)據(jù)。CPU并不知道此時(shí)cache中的數(shù)據(jù)已經(jīng)過(guò)時(shí)。,解決的辦法:,在CPU訪問(wèn)異步事件控制的數(shù)據(jù),前,一定要強(qiáng)行刷新cache中的內(nèi)容,;反 之,,從內(nèi)存到外部設(shè)備搬移數(shù)據(jù)前一定要回寫(xiě)內(nèi)存,。,,一般CPU都提供了cache的刷新和回寫(xiě)機(jī)制,甚至有的CPU,還有,cache,保護(hù)(即強(qiáng)制其不要對(duì)某一范圍內(nèi)的內(nèi)存使用,cache,機(jī)制
29、)。,,CACHE刷新與回寫(xiě),DMA參與操作情況下的cache操作,,◆,總線是計(jì)算機(jī)中各模塊傳輸信息的,公共信號(hào)線集合,。為各模塊間,甚至模塊各部件之間提供公共的、標(biāo)準(zhǔn)化的信息通路。,,◆總線的特點(diǎn)在于其,公用性,(即它可以同時(shí)掛接多個(gè)模塊或設(shè)備,作為所有掛接模塊或設(shè)備公用的信號(hào)載體),??偩€,在同一時(shí)刻,只能允許一對(duì)模塊或設(shè)備進(jìn)行信息交換,。當(dāng)有多個(gè)模塊或設(shè)備需要同時(shí)使用總線進(jìn)行信息傳輸時(shí),只能采用,分時(shí)方式,,并且要對(duì)總線使用的,優(yōu)先權(quán),進(jìn)行,仲裁管理,。,,◆ 總線結(jié)構(gòu)包括:,傳輸信息的,傳輸線路,和,總線控制邏輯,,◆ 嵌入式系統(tǒng)采用總線結(jié)構(gòu)有以下優(yōu)點(diǎn):,總線和總線橋,⑴ 簡(jiǎn)化了系統(tǒng)
30、結(jié)構(gòu)。,,⑵ 優(yōu)化了硬件和軟件設(shè)計(jì)。,,⑶ 便于系統(tǒng)的擴(kuò)充和更新。,存儲(chǔ)器系統(tǒng)的層次結(jié)構(gòu),寄存器,高速緩存SRAM,主存儲(chǔ)器DRAM,本地存儲(chǔ)器 Flash、ROM、磁盤(pán),網(wǎng)絡(luò)存儲(chǔ)器 Flash、ROM、磁盤(pán),時(shí)鐘周期,0,1—10,50—100,20000000,存儲(chǔ)器系統(tǒng),RAM,:隨機(jī)存取存儲(chǔ)器,,SRAM,:靜態(tài)隨機(jī)存儲(chǔ)器,,DRAM,:動(dòng)態(tài)隨機(jī)存儲(chǔ)器,,1)SRAM比DRAM快,,2)SRAM比DRAM耗電多,,3)DRAM存儲(chǔ)密度比SRAM高得多,,4)DRAM需要周期性刷新,,ROM,:只讀存儲(chǔ)器,,FLASH,:閃存,,,NOR,,NAND,,寫(xiě)入/擦除一個(gè)塊的
31、操作時(shí)間,1~5ms,,2~4ms,,讀性能,1200~1500KB,600~800KB,寫(xiě)性能,<80KB,200~400KB,接口/總線,SRAM接口/獨(dú)立的地址數(shù)據(jù)總線,8位地址/數(shù)據(jù)/控制總線,I/O接口復(fù)雜,讀取模式,隨機(jī)讀取,串行地存取數(shù)據(jù),成本,較高,較低,單元尺寸約為NOR的一半,生產(chǎn)過(guò)程簡(jiǎn)單,同樣大小的芯片可以做更大的容量,容量及應(yīng)用場(chǎng)合,1~64MB,主要用于存儲(chǔ)代碼,8MB~4GB,主要用于存儲(chǔ)數(shù)據(jù),擦寫(xiě)次數(shù)(耐用性),約10萬(wàn)次,約100萬(wàn)次,位交換(bit位反轉(zhuǎn)),少,較多,關(guān)鍵性數(shù)據(jù)需要錯(cuò)誤探測(cè)/錯(cuò)誤更正(EDC/ECC)算法,壞塊處理,無(wú),因?yàn)閴膲K故障率少,隨機(jī)分
32、布,無(wú)法修正,,輸入輸出接口,,I/O,,A/D,、,D/A,,,鍵盤(pán),,,LCD,,,存儲(chǔ)器接口,,設(shè)備接口,,USB:Universal Serial Bus,通用串行總線,,大家生活中常見(jiàn)的與USB有關(guān)的東西有:,,U盤(pán)、移動(dòng)硬盤(pán)、無(wú)驅(qū)型的MP3(U盤(pán)),,USB接口的鍵盤(pán)、Mouse、打印機(jī)、數(shù)碼相機(jī)……,,即插即用,熱插撥,系統(tǒng)不需重啟便可工作,且易于擴(kuò)展(127個(gè)),,USB2.0以低成本實(shí)現(xiàn)高達(dá)480Mb/s的傳輸率(USB1.1的全速設(shè)備可達(dá)12Mb/s; USB1.0的全速設(shè)備可達(dá)1.5Mb/s),,接口標(biāo)準(zhǔn)統(tǒng)一、端口供電,例如:USB,一個(gè)典型的USB通訊系統(tǒng),HOST系統(tǒng)
33、,HUB,DEVICE,D,DEVICE,應(yīng)用軟件+驅(qū)動(dòng)程序Ms.Win+接口芯片,HUB,U盤(pán),其他,數(shù)據(jù)采集器,驅(qū)動(dòng)代碼+嵌入式處理器+HOST芯片,HUB,U盤(pán),其他,數(shù)據(jù)采集器,通用系統(tǒng)模型,PC機(jī)中的情況,嵌入式系統(tǒng)應(yīng)用,知識(shí)產(chǎn)權(quán)核(IP核,,intellectual property,),知識(shí)產(chǎn)權(quán),(IP),電路或核是設(shè)計(jì)好并經(jīng)過(guò)驗(yàn)證的集成電路功能單元。,,IP,復(fù)用意味著設(shè)計(jì)代價(jià)降低(時(shí)間,價(jià)格)。,,IP,核的類(lèi)別,:,,微處理器,: ARM, PowerPC;,,存儲(chǔ)器,: RAM, memory controller;,,外設(shè),: PCI, DMA controller;,
34、,多媒體處理,: MPEG/JPEG ;,,encoder/decoder ;,,數(shù)字信號(hào)處理器,(DSP),;,,通信,: Ethernet controller, router,。,Soft Cores(“code”)(軟核),,HDL語(yǔ)言描述;,,靈活度高,可修改;,,與工藝獨(dú)立,可根據(jù)具體的加工工藝重新綜合;,,IP很難保護(hù)。,,Firm cores(“code+structure”)(固核),,邏輯綜合后的描述;,,與工藝相關(guān)。,,Hard cores(“physical”)(硬核),,物理綜合后的描述;,,準(zhǔn)備流片;,,包含工藝相關(guān)的布局和時(shí)序信息;,,IP很容易保護(hù),但靈活性和可
35、移植性差。,,多數(shù)的處理器和存儲(chǔ)器,IP核的商業(yè)模型,,三種模式,,1.設(shè)計(jì)者提供設(shè)計(jì)和工具的許可證,,DSP Group (Pine and Oak Cores), 3Soft, ARM。,,提供包括HDL在內(nèi)的模擬模型,工具或仿真器。,,使用者負(fù)責(zé)設(shè)計(jì)制造。,,2.,核廠商設(shè)計(jì)并制造集成電路芯片,,TI, Motorola, Lucent。,,VLSI, SSI, Cirrus, Adaptec。,,3.,核廠商賣(mài)核, 負(fù)責(zé)為客戶設(shè)計(jì)并制造芯片,,LSI logic, TI, Lucent。,固化宏單元(硬核),,ARM920T,,ARM7TDMI,,ARM720T,,ARM1022E,可
36、綜合內(nèi)核(軟核),,ARM926EJ-S,,ARM7TDMI-S,,ARM1026EJ-S,測(cè)試芯片,,ARM10200E,,第二講 嵌入式系統(tǒng)的組成結(jié)構(gòu),1,3,2,5,4,嵌入式系統(tǒng)的組成結(jié)構(gòu),嵌入式系統(tǒng)的硬件組成,嵌入式操作系統(tǒng)涉及的幾個(gè)關(guān)鍵概念,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,嵌入式操作系統(tǒng),11/27/2024,軟件組成,有時(shí)也叫板級(jí)支持包,是一個(gè)介于硬件與軟件之間的中間層次。硬件抽象層通過(guò)特定的上層接口與操作系統(tǒng)進(jìn)行交互,向操作系統(tǒng)提供底層的硬件信息,并根據(jù)操作系統(tǒng)的要求完成對(duì)硬件的直接操作,,Hardware Abstraction Layer :BSP&Device Driv
37、er,SCSIDriver,Flash,,Driver,MMUDriver,CacheDriver,SerialDriver,EthernetDriver,DeviceDrivers,支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)(包括硬、軟件系統(tǒng))極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器Browser等,Hardware Independent Software,TCP/IP Stack,I/O System,RTOS libraries,RTOS Kernel,File System,Boot Loader
38、,中間件位于操作系統(tǒng)和應(yīng)用軟件之間,屏蔽了各種操作系統(tǒng)提供不同應(yīng)用程序接口的事實(shí),向應(yīng)用程序提供統(tǒng)一的接口,從而便于用戶開(kāi)發(fā)應(yīng)用程序,同時(shí)也使應(yīng)用程序具有跨平臺(tái)的特性。,,嵌入式應(yīng)用程序運(yùn)行于操作系統(tǒng)之上,利用操作系統(tǒng)提供的機(jī)制完成特定功能的嵌入式應(yīng)用,不同的系統(tǒng)需要設(shè)計(jì)不同的嵌入式應(yīng)用程序。它是整個(gè)系統(tǒng)功能的體現(xiàn),系統(tǒng)的能力總是通過(guò)應(yīng)用程序表現(xiàn)出來(lái)。,一個(gè)嵌入式系統(tǒng)可簡(jiǎn)單的沒(méi)有支撐軟件,甚至沒(méi)有操作系統(tǒng),但卻不能沒(méi)有應(yīng)用軟件,否則它就不能成為一個(gè)系統(tǒng)。,,概述,嵌入式操作系統(tǒng)可以統(tǒng)稱(chēng)為應(yīng)用在嵌入式系統(tǒng)中的操作系統(tǒng),它具有一般操作系統(tǒng)的功能,同時(shí)具有嵌入式軟件的特點(diǎn),主要有:,,,可固化存儲(chǔ),
39、,可配置、可剪裁,,獨(dú)立的板級(jí)支持包,可修改,,不同的,CPU,有不同的版本,,應(yīng)用的開(kāi)發(fā)需要有集成的交叉開(kāi)發(fā)工具,一般操作系統(tǒng),只注重平均性能,如對(duì)于整個(gè)系統(tǒng)來(lái)說(shuō),所有任務(wù)的平均響應(yīng)時(shí)間是關(guān)鍵,而不關(guān)心單個(gè)任務(wù)的響應(yīng)時(shí)間。,嵌入式實(shí)時(shí)操作系統(tǒng),最主要的特征是性能上的“實(shí)時(shí)性”,也就是說(shuō),系統(tǒng)的正確性不僅依賴于計(jì)算的邏輯結(jié)果,也依賴于結(jié)果產(chǎn)生的時(shí)間,。,,從這個(gè)角度上看,可以把實(shí)時(shí)系統(tǒng)定義為“,一個(gè)能夠在指定的或者確定的時(shí)間內(nèi),完成系統(tǒng)功能和對(duì)外部或內(nèi)部、同步或異步事件做出響應(yīng)的系統(tǒng),”。,概述,近十年來(lái),嵌入式操作系統(tǒng)得到飛速的發(fā)展,,從支持,8,位微處理器到,16,位、,32,位甚至,64
40、,位微處理器;,,從支持單一品種的微處理器芯片到支持多品種微處理器芯片;,,從只有內(nèi)核到除了內(nèi)核外還提供其他功能模塊,如文件系統(tǒng),,TCP/IP,網(wǎng)絡(luò)系統(tǒng),窗口圖形系統(tǒng)等。,,隨著嵌入式系統(tǒng)應(yīng)用領(lǐng)域的擴(kuò)展,目前嵌入式操作系統(tǒng)的市場(chǎng)在不斷細(xì)分,出現(xiàn)了針對(duì)不同領(lǐng)域的產(chǎn)品,這些產(chǎn)品按領(lǐng)域的要求和標(biāo)準(zhǔn)提供特定的功能。,嵌入式操作系統(tǒng)的演變,*,Percent of total software supplied by RTOS vendor in a typical embedded device,,10%*,Kernel,,30%*,Kernel,Networking,File System,,75
41、%*,Kernel,Networking,File System,Multiprocessing,Memory Management,Networking Utility,Windows API,Application,Application,Application,Application,,90%*,Kernel,Networking,File System,Multiprocessing,Fault Tolerance,Distributed Objects,Advanced Networking,Advanced Interconnect,Java,Browser / GUI,嵌入式操作
42、系統(tǒng)分類(lèi),從應(yīng)用領(lǐng)域來(lái)分,,面向信息家電的嵌入式操作系統(tǒng),,面向智能手機(jī)的嵌入式操作系統(tǒng),如,SymbianOS,、,MS Mobile OS,、,PalmOS,、,Embedded Linux,等,,面向汽車(chē)電子的嵌入式操作系統(tǒng),,面向工業(yè)控制的嵌入式操作系統(tǒng),,,……….,從實(shí)時(shí)性的角度來(lái)分,,實(shí)時(shí)嵌入式操作系統(tǒng),:具有強(qiáng)實(shí)時(shí)特點(diǎn),如,VxWorks,、,QNX,、,Nuclear,、,OSE,、,DeltaOS,、,各種,ITRON OS,等。,,非實(shí)時(shí)嵌入式操作系統(tǒng),:一般只具有弱實(shí)時(shí)特點(diǎn),如,WinCE,、,版本眾多的嵌入式,Linux,、,PalmOS,等。,從嵌入式系統(tǒng)的商業(yè)模式
43、來(lái)分類(lèi),,商用型,:功能穩(wěn)定、可靠,有完善的技術(shù)支持和售后服務(wù),,開(kāi)發(fā)費(fèi)用,+,版稅,。,,開(kāi)源型,:開(kāi)放源碼,只收服務(wù)費(fèi),沒(méi)有版稅。 如,Embedded,linux,,,RTEMS,,,eCOS,。,嵌入式操作系統(tǒng)的關(guān)鍵技術(shù),,體系結(jié)構(gòu),,,系統(tǒng)組成,常見(jiàn)的嵌入式操作系統(tǒng),,μC/OS-II,,WinCE,,Linux,,,VxWorks,,Palm OS,,QNX,,…,第二講 嵌入式系統(tǒng)的組成結(jié)構(gòu),1,3,2,5,4,嵌入式系統(tǒng)的硬件組成,嵌入式操作系統(tǒng)涉及的幾個(gè)關(guān)鍵概念,嵌入式系統(tǒng)硬件涉及的幾個(gè)關(guān)鍵概念,嵌入式操作系統(tǒng),嵌入式系統(tǒng)的組成結(jié)構(gòu),監(jiān),,控,,程,,序,操,,作,,系,,統(tǒng)
44、,實(shí)時(shí)操作系統(tǒng),分時(shí)操作系統(tǒng),多道批處理操作系統(tǒng),時(shí) 間 先 后,適用于多個(gè)用戶共享系統(tǒng)資源,適用于計(jì)算中心等較大的計(jì)算機(jī)系統(tǒng),適用于嵌入式設(shè)備和有實(shí)時(shí)性要求的系統(tǒng)中,實(shí)時(shí)操作系統(tǒng)是我們關(guān)注的重點(diǎn),任務(wù)的定義及其主要特性,任務(wù)是一個(gè)具有,獨(dú)立功能,的,無(wú)限循環(huán),的程序段的一次運(yùn)行活動(dòng),是實(shí)時(shí)內(nèi)核調(diào)度的單位,具有以下特性:,,動(dòng)態(tài)性,:任務(wù)狀態(tài)是不斷變化的。,,一般分為就緒態(tài)、運(yùn)行態(tài)和等待態(tài)。,,在多任務(wù)系統(tǒng)中,任務(wù)的狀態(tài)將隨著系統(tǒng)的需要不斷進(jìn)行變化。,,并行性,:,,系統(tǒng)中同時(shí)存在多個(gè)任務(wù),這些任務(wù)在宏觀上是同時(shí)運(yùn)行的。,,異步獨(dú)立性,:,,每個(gè)任務(wù)各自按相互獨(dú)立的不可預(yù)知的速度運(yùn)行,走
45、走停停,。,任務(wù)的內(nèi)容,任務(wù)主要包含以下內(nèi)容:,,代碼,:一段可執(zhí)行的程序,,數(shù)據(jù),:程序所需要的相關(guān)數(shù)據(jù)(變量、工作空間、緩沖區(qū)等),,堆棧,,程序執(zhí)行的上下文環(huán)境,嵌入式操作系統(tǒng)與多任務(wù),多任務(wù)運(yùn)行的實(shí)現(xiàn),實(shí)際上是靠CPU(中央處理單元)在許多任務(wù)之間轉(zhuǎn)換、調(diào)度。,,CPU只有一個(gè),輪番服務(wù)于一系列任務(wù)中的某一個(gè)。多任務(wù)運(yùn)行使CPU的利用率得到最大的發(fā)揮,并使應(yīng)用程序模塊化。,,在實(shí)際應(yīng)用中,多任務(wù)的最大特點(diǎn)是,開(kāi)發(fā)人員可以將很復(fù)雜的應(yīng)用程序?qū)哟位?時(shí)間軸,任務(wù)1,任務(wù)2,任務(wù)3,任務(wù)1,任務(wù)2,任務(wù)3,任務(wù)1,任務(wù)2,任務(wù)3,CPU寄存器,任務(wù),,控制,,塊1,任務(wù),,控制,,塊2,任
46、務(wù),,控制,,塊n,休眠、就緒、運(yùn)行、掛起、被中斷,任務(wù),,1,任務(wù),,2,任務(wù),,n,……,CPU,寄存器,任務(wù)的狀態(tài),睡眠態(tài),相當(dāng)于該任務(wù)駐留在內(nèi)存中,但并不被內(nèi)核所調(diào)度,就緒,意味著該任務(wù)已經(jīng)準(zhǔn)備好,可以運(yùn)行了,但由于該任務(wù)的優(yōu)先級(jí)比正在運(yùn)行的任務(wù)的優(yōu)先級(jí)低,還暫時(shí)不能運(yùn)行,運(yùn)行態(tài),是指任務(wù)掌握了CPU的控制權(quán),正在運(yùn)行中,掛起狀態(tài),也可以叫做等待事件態(tài)WAITING,指該任務(wù)在等待,等待某一事件的發(fā)生(例如等待某外設(shè)的I/O操作,等待某共享資源由暫不能使用變成能使用狀態(tài),等待定時(shí)脈沖的到來(lái)或等待超時(shí)信號(hào)的到來(lái)以結(jié)束目前的等待,等等),發(fā)生中斷時(shí),CPU提供相應(yīng)的中斷服務(wù),原來(lái)正在運(yùn)行的
47、任務(wù)暫不能運(yùn)行,就進(jìn)入了被,中斷狀態(tài),資源和共享資源,資源,(Resource),,任何為任務(wù)所占用的實(shí)體都可稱(chēng)為,資源,。資源可以是輸入輸出設(shè)備,,例如打印機(jī)、鍵盤(pán)、顯示器,,資源也可以是一個(gè)變量,一個(gè)結(jié)構(gòu)或一個(gè)數(shù)組等。,,共享資源,(Shared Resource),,可以被一個(gè)以上任務(wù)使用的資源叫做,共享資源,。為了防止數(shù)據(jù)被破壞,每個(gè)任務(wù)在與共享資源打交道時(shí),必須獨(dú)占該資源。這叫做,互斥,(mutual exclusion)。,內(nèi)核(Kernel),,,多任務(wù)系統(tǒng)中,內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),或者說(shuō)為每個(gè)任務(wù)分配CPU時(shí)間,并且負(fù)責(zé)任務(wù)之間的通信。,,內(nèi)核提供的基本服務(wù)是,任務(wù)切換,。內(nèi)核
48、本身也增加了應(yīng)用程序的額外負(fù)荷,代碼空間增加ROM用量,內(nèi)核本身的數(shù)據(jù)結(jié)構(gòu)增加了RAM的用量。內(nèi)核本身對(duì)CPU的占用時(shí)間一般在2到5個(gè)百分點(diǎn)之間。,,調(diào)度(Scheduler或,dispatcher,),,,內(nèi)核的主要職責(zé)之一,決定哪個(gè)任務(wù)運(yùn)行。多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度法的。每個(gè)任務(wù)根據(jù)其重要程度被賦予一定優(yōu)先級(jí)。CPU總是讓處在就緒態(tài)的優(yōu)先級(jí)最高的任務(wù)先運(yùn)行。,系統(tǒng)內(nèi)核(Kernel)與調(diào)度(Scheduler),搶占式與非占先式,(,Preemptive & Non-Preemptive,),可以被一個(gè)以上的任務(wù)調(diào)用,而不必?fù)?dān)心數(shù)據(jù)的破壞。,可重入型函數(shù),任何時(shí)候都可以被中斷,一段時(shí)間
49、以后又可以運(yùn)行,而相應(yīng)數(shù)據(jù)不會(huì)丟失。可重入型函數(shù),只使用局部變量,,即變量保存在CPU寄存器或堆棧中。,可重入型函數(shù),一個(gè)不可重入型函數(shù)的例子,,int Temp;,,Void swap (int *x,int*y),,{,,Temp=*x;,,*X=*Y;,,*y=Temp;,,},一個(gè)可重入型函數(shù)的例子,,Void swap (int *x,int*y),,{,,int Temp;,,Temp=*x;,,*X=*Y;,,*y=Temp;,,},代碼的臨界段(Critical Section Of Code),代碼的臨界段也稱(chēng)為,臨界區(qū),,指處理時(shí)不可分割的代碼。,,一旦臨界段代碼開(kāi)始執(zhí)行,則不允許任何中斷產(chǎn)生,否則將導(dǎo)致錯(cuò)誤。這種操作又稱(chēng)為,原子操作,。,,為確保臨界段代碼的執(zhí)行,在進(jìn)入臨界段之前要關(guān)中斷,而臨界段代碼執(zhí)行完以后要立即開(kāi)中斷,(在任務(wù)切換時(shí),地址、指令、數(shù)據(jù)等寄存器壓入堆棧來(lái)保護(hù)),。,本講作業(yè),簡(jiǎn)述,BSP,的概念、特點(diǎn)。,,嵌入式微處理器有哪些類(lèi)別?試列舉一些實(shí)例。,,翻閱資料談?wù)勀銓?duì),CISC,和,RISC,的理解。,,嵌入式操作系統(tǒng)的特點(diǎn)?列舉常見(jiàn)的嵌入式操作系統(tǒng),并簡(jiǎn)述其特點(diǎn)和應(yīng)用領(lǐng)域。,,簡(jiǎn)述搶占式內(nèi)核,(preemptive),和非搶占式內(nèi)核,(non-preemptive),的區(qū)別?,
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 踏春尋趣 樂(lè)享時(shí)光——春季旅游踏春出游活動(dòng)
- 清明假期至安全不缺席風(fēng)起正清明安全需守護(hù)
- 全國(guó)黨員教育培訓(xùn)工作規(guī)劃
- XX中小學(xué)公共衛(wèi)生培訓(xùn)樹(shù)立文明衛(wèi)生意識(shí)養(yǎng)成良好衛(wèi)生習(xí)慣
- 小學(xué)生常見(jiàn)傳染病預(yù)防知識(shí)培訓(xùn)傳染病的預(yù)防措施
- 3月18日全國(guó)愛(ài)肝日中西醫(yī)結(jié)合逆轉(zhuǎn)肝硬化
- 肝病健康宣教守護(hù)您的肝臟健康如何預(yù)防肝炎
- 垃圾分類(lèi)小課堂教育綠色小衛(wèi)士分類(lèi)大行動(dòng)
- 中小學(xué)班主任經(jīng)驗(yàn)交流從勝任到優(yōu)秀身為世范為人師表 立責(zé)于心履責(zé)于行
- 教師數(shù)字化轉(zhuǎn)型理解與感悟教師數(shù)字化轉(zhuǎn)型的策略與建議
- 團(tuán)建小游戲團(tuán)建破冰小游戲團(tuán)隊(duì)協(xié)作破冰游戲多人互動(dòng)
- 教師使用deepseek使用攻略讓備課效能提升
- 辦公室會(huì)議紀(jì)要培訓(xùn)會(huì)議內(nèi)容會(huì)議整理公文攥寫(xiě)
- 黨員要注重培塑忠誠(chéng)奮斗奉獻(xiàn)的人格力量
- 橙色卡通風(fēng)兒童春季趣味運(yùn)動(dòng)會(huì)
相關(guān)資源
更多