版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、32248楊詞慧嵌入式系統(tǒng)設(shè)計(jì)教案課程總學(xué)時(shí):講課學(xué)時(shí):實(shí)驗(yàn)學(xué)時(shí):授課人:南昌航空大學(xué)信息工程學(xué)院1 嵌入式系統(tǒng)概述11.1 嵌入式系統(tǒng)的基本概念 11.2 嵌入式系統(tǒng)的發(fā)展歷史 21.3 嵌入式系統(tǒng)的體系結(jié)構(gòu) 21.4 嵌入式處理器31.5 嵌入式操作系統(tǒng)41.6 嵌入式系統(tǒng)的應(yīng)用及發(fā)展趨勢(shì) 72 ARM 體系結(jié)構(gòu) 82.1 ARM設(shè)計(jì)思想82.2 ARM體系結(jié)構(gòu)分析 92.3 ARM處理器系列112.4 ARM處理器模式 152.5 ARM體系的異常處理 162.6 ARM內(nèi)部寄存器 182.7 ARM 體系的存儲(chǔ)系統(tǒng) 193 ARM指令系統(tǒng)及程序設(shè)計(jì)基礎(chǔ) 213.1 ARM尋址方式213
2、.2 ARM 指令集243.3 Thumb 指令集333.4 353.5 353.6 嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)過(guò)程 364 STM32微控制器374.1STM32微控制器的性能指標(biāo) 371嵌入式系統(tǒng)概述教學(xué)目的:使學(xué)生對(duì)嵌入式系統(tǒng)的基本概念和體系結(jié)構(gòu)、嵌入式處理器、嵌入式操作系統(tǒng)、嵌入式系統(tǒng)的歷史、應(yīng)用及發(fā)展趨勢(shì)有一定的了解。教學(xué)重點(diǎn):嵌入式系統(tǒng)的基本概念、嵌入式處理器和嵌入式操作系統(tǒng)。教學(xué)難點(diǎn):嵌入式系統(tǒng)的體系結(jié)構(gòu)、嵌入式處理器。教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:2課時(shí)。教學(xué)內(nèi)容1.1嵌入式系統(tǒng)的基本概念(1)嵌入式系統(tǒng)的定義先舉例說(shuō)明生活中的各種嵌入式系統(tǒng)設(shè)備,如iPho n
3、e、小米手機(jī)、洗衣機(jī)、電壓力鍋等。IEEE (國(guó)際電氣和電子工程師協(xié)會(huì))的定義:嵌入式系統(tǒng)是用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置( Devices used to control, monitor, or assist the operation of equipment, machinery or pla nts)。微機(jī)學(xué)會(huì)的定義:嵌入式系統(tǒng)是以嵌入式應(yīng)用為目的的計(jì)算機(jī)系統(tǒng),可分為系統(tǒng)級(jí)、板級(jí)和片級(jí)。a)系統(tǒng)級(jí):各種類型的工控機(jī)、PC104等模塊。b)板級(jí):各種類型的帶 CPU的主板或OEM產(chǎn)品。c)片級(jí):各種以單片機(jī)、DSP、微處理器為核心的產(chǎn)品。一般定義:嵌入式系統(tǒng)是以應(yīng)用為中心,
4、以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,對(duì)功能、可靠性、成本、體積、功耗要求嚴(yán)格的專用計(jì)算機(jī)系統(tǒng)。(2)嵌入式系統(tǒng)的特點(diǎn)a)專用、軟硬件可剪裁配置。b)低功耗、高可靠性、高穩(wěn)定性。c)軟件代碼矮小精悍。d)代碼可固化。e)實(shí)時(shí)性。f)弱交互性。g)軟件開發(fā)通常需要專門的開發(fā)工具、環(huán)境和方法。h)要求開發(fā)、設(shè)計(jì)人員具有較高的技能。i)具有較長(zhǎng)的生命周期。(3)嵌入式系統(tǒng)的分類按嵌入式微處理器的位數(shù)可分為:4位、8位、16位、32位和64位。按實(shí)時(shí)性能可分為:非實(shí)時(shí)系統(tǒng)和實(shí)時(shí)系統(tǒng)。按軟件結(jié)構(gòu)可分為:嵌入式單線程系統(tǒng)和嵌入式事件驅(qū)動(dòng)系統(tǒng)。按應(yīng)用領(lǐng)域可分為: 信息家電類、消費(fèi)電子類、醫(yī)療電子類、移動(dòng)終端類
5、、通信類、汽車電子類、 工業(yè)控制類、航空電子類、軍事電子類等。1.2嵌入式系統(tǒng)的發(fā)展歷史(1) 以單芯片為核心的可編程控制器形成的系統(tǒng)1971 年 11 月,In tel 推出 Intel 4004。隨后出現(xiàn) In tel 8080/8085、8086、Motorola 的 6800、 Zilog 的 Z80、Z8000。以微處理器為核心構(gòu)成的系統(tǒng)單板機(jī):Intel的iSBC系列、Zilog的MCB等將計(jì)算機(jī)做在一個(gè)芯片上,大部分應(yīng)用于專業(yè)性強(qiáng)的工業(yè)控制系統(tǒng)中,沒有操作系統(tǒng)的支持,系 統(tǒng)結(jié)構(gòu)和功能相對(duì)單一,處理效率較低,存儲(chǔ)容量較小。(2) 以嵌入式CPU為基礎(chǔ)、以簡(jiǎn)單操作系統(tǒng)為核心的嵌入式系
6、統(tǒng)CPU種類繁多,通用性較弱;系統(tǒng)開銷小,效率高;操作系統(tǒng)達(dá)到一定的兼容性和擴(kuò)展性;應(yīng)用 軟件較專業(yè)化,用戶界面不夠友好。(3) 以嵌入式操作系統(tǒng)為標(biāo)志的嵌入式系統(tǒng)嵌入式操作系統(tǒng)可運(yùn)行于各種不同類型的微處理器上,兼容性好;操作系統(tǒng)內(nèi)核小,效率高;具 備文件和目錄管理, 支持多任務(wù)、網(wǎng)絡(luò)應(yīng)用,具備圖形窗口和用戶界面;有大量的應(yīng)用程序接口(4) 以Internet為標(biāo)志的嵌入式系統(tǒng)嵌入式設(shè)備與In ternet的結(jié)合。1.3嵌入式系統(tǒng)的體系結(jié)構(gòu)68000,API。應(yīng)用層操作系統(tǒng)層中間層硬件層硬件層應(yīng)用程序文件系統(tǒng)圖形系統(tǒng) 任務(wù)管理 網(wǎng)貉系統(tǒng)嵌入式操作系統(tǒng)硬件抽象層、板級(jí)支持包和設(shè)備驅(qū)動(dòng)D/AAZD
7、I/O嵌入式處理器人機(jī)交互接口ROMFLASHSDRAM(1)體系結(jié)構(gòu)嵌入式處理器:ARM、DSP、FPGA 存儲(chǔ)器系統(tǒng):ROM、FLASH、SDRAM 中斷控制器、DMAC、定時(shí)器/計(jì)數(shù)器、UART、USB控制器、LCD控制器等I/O 接口: USB、I2C、SPI、CAN 等中間層硬件抽象層(Hardware Abstraction Layer, HAL)。位于操作系統(tǒng)內(nèi)核與硬件電路之間的接口層, 隱藏硬件接口細(xì)節(jié)。板級(jí)支持包(Board Support Package, BSP)。為上層的驅(qū)動(dòng)程序提供訪問(wèn)硬件設(shè)備寄存器的函 數(shù)包。設(shè)備驅(qū)動(dòng)程序1.4嵌入式處理器(1) 嵌入式處理器的分類中
8、高端的嵌入式微處理器(Embedded Micro-Processor Un it, EMPU )低端的微控制器(Microco ntroller Un it, MCU )DSP 處理器(Digital Signal Processor, DSP)高度集成的片上系統(tǒng)(System on Chip, SoC)(2) 嵌入式微處理器由通用計(jì)算機(jī)中的CPU演變而來(lái),只保留與嵌入式應(yīng)用緊密相關(guān)的功能硬件,在工作溫度、抗電磁干擾、可靠性、功耗等方面做了各種增強(qiáng)。主要的嵌入式處理器類型:ARM、MIPS、PowerPC、68000系列等。特點(diǎn)a) 在設(shè)計(jì)中考慮低功耗。b) 采用可擴(kuò)展的處理器結(jié)構(gòu)。處理器內(nèi)
9、部留有很多擴(kuò)展接口。c) 具有很強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能。d) 提供豐富的調(diào)試功能。e) 對(duì)實(shí)時(shí)任務(wù)具有很強(qiáng)的支持能力。(3) 微控制器俗稱單片機(jī),將整個(gè)計(jì)算機(jī)系統(tǒng)集成到一塊芯片中。8位單片機(jī)示意圖以一種微處理器為核心,芯片內(nèi)部集成Flash、RAM、總線邏輯、定時(shí)器/計(jì)數(shù)器、I/O 口、串行 口、PWM、A/D、D/A 等。最早的單片機(jī):1976 年,Intel 的 8048,Motorola 的 68HC05、Zilog 公司的 Z80. DSP處理器對(duì)系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計(jì),使其適合DSP算法高效乘累加運(yùn)算、超標(biāo)量操作、指令流水線高效數(shù)據(jù)存取、硬件重復(fù)循環(huán)確定性操作(程序執(zhí)行時(shí)間可預(yù)測(cè))
10、應(yīng)用場(chǎng)合:音視頻編解碼、數(shù)字濾波、FFT等(5)片上系統(tǒng)將整個(gè)系統(tǒng)做在一個(gè)芯片上優(yōu)點(diǎn)a)通過(guò)改變內(nèi)部工作電壓,降低芯片功耗b)減少芯片對(duì)外的引腳數(shù),簡(jiǎn)化制造過(guò)程c)減少外圍驅(qū)動(dòng)接口單元及電路板之間的信號(hào)傳遞,加快微處理器數(shù)據(jù)處理的速度d)內(nèi)嵌線路可避免信號(hào)傳遞時(shí)所造成的系統(tǒng)雜訊聯(lián)發(fā)科推出28nm雙核處理器MT6572a)代號(hào)武松,基于 Cortex-A7架構(gòu)b)主頻為1.2GHzc)處理器上整合了 Wi-Fi、FM收音機(jī)、GPS以及藍(lán)牙四種功能d)支持500萬(wàn)像素?cái)z像頭(6)嵌入式處理器的發(fā)展趨勢(shì)a)內(nèi)部結(jié)構(gòu)SoC設(shè)計(jì),與DSP、Flash、FPGA融合;性能更強(qiáng),集成更多的功能部件;雙核或多
11、核結(jié)構(gòu)b)功耗更低c)可靠性更高d)支持 ISP、ISD1.5嵌入式操作系統(tǒng)(1)操作系統(tǒng)的概念及功能操作系統(tǒng)。是一組計(jì)算機(jī)程序的集合,用來(lái)有效地控制和管理計(jì)算機(jī)的硬件和軟件資源,并為用 戶提供方便的應(yīng)用接口。功能:處理器管理;存儲(chǔ)器管理;設(shè)備管理;文件管理;用戶接口(2)操作系統(tǒng)的分類按程序調(diào)度的方法分為順序操作系統(tǒng)。只含一個(gè)運(yùn)行程序,獨(dú)占CPU時(shí)間,順序執(zhí)行。如DOS系統(tǒng)。分時(shí)操作系統(tǒng)。系統(tǒng)內(nèi)同時(shí)有多道程序運(yùn)行。如Unix系統(tǒng)。實(shí)時(shí)操作系統(tǒng)。從應(yīng)用角度,嵌入式操作系統(tǒng)可分為面向低端信息家電面向高端信息家電面向個(gè)人通信終端面向通信設(shè)備面向汽車電子面向工業(yè)控制從實(shí)時(shí)性的角度,嵌入式操作系統(tǒng)可分
12、為具有強(qiáng)實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng)具有弱實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng)沒有實(shí)時(shí)特點(diǎn)的嵌入式操作系統(tǒng)(3) 實(shí)時(shí)操作系統(tǒng)(RTOS)是具有實(shí)時(shí)性且能支持實(shí)時(shí)控制系統(tǒng)工作的操作系統(tǒng),首要任務(wù)是調(diào)度一切可利用的資源來(lái)完成控制任務(wù)。對(duì)現(xiàn)場(chǎng)不停監(jiān)測(cè),一旦有事件發(fā)生能立即處理。與通用OS的區(qū)別:實(shí)時(shí)性,代碼尺寸小。一般包括以下幾個(gè)重要組成部分:實(shí)時(shí)內(nèi)核:任務(wù)管理、定時(shí)器管理、存儲(chǔ)器管理、任務(wù)間通信與同步等。網(wǎng)絡(luò)組件文件系統(tǒng)圖形用戶界面IEEE的Unix委員會(huì)規(guī)定了實(shí)時(shí)操作系統(tǒng)須具備以下幾個(gè)特點(diǎn):支持異步事件的響應(yīng)。中斷和調(diào)度任務(wù)的優(yōu)先機(jī)制。支持指令性計(jì)劃占式調(diào)度。支持同步。(4) 常見的嵌入式操作系統(tǒng)嵌入式Lin
13、ux實(shí)時(shí)的嵌入式 Linux :女口 RT-Linux、KURT-Linux等。RT-Linux將通常的Linux任務(wù)優(yōu)先級(jí)設(shè)為最低。一般的嵌入式 Linux :女口CLinux。開源,內(nèi)核小、效率高,可定制1 C/OS 和 1 C/OS-II1 C/OS-II (MicroController Operating System)是由 Jean J. Labrosse開發(fā)的實(shí)時(shí)操作系統(tǒng)內(nèi) 核。已被移植到In tel、ARM、Motorola等公司的81種不同的處理器上。Labrosse用一年時(shí)間開發(fā)了 i C/OS實(shí)時(shí)操作系統(tǒng);1992年在Embedded System Programming
14、上 發(fā)表介紹文章,并公布源代碼;1993年寫了i C/OS, The Real-TimeKernel;書及源碼推動(dòng)了 i C/OS-II的發(fā)展。卩C/OS-II只是一個(gè)實(shí)時(shí)操作系統(tǒng)的內(nèi)核,全部核心代碼只有8.3 KB。只包含進(jìn)程調(diào)度、時(shí)鐘管理、內(nèi)存管理和進(jìn)程間的通信與同步等基本功能。Windows CE多線程、完整優(yōu)先權(quán)、多任務(wù)的32位嵌入式操作系統(tǒng)。基本內(nèi)核大小至少為 200KB。VxWorks美國(guó) WindRiver公司于1983年設(shè)計(jì)是目前嵌入式系統(tǒng)領(lǐng)域中使用最廣泛、市場(chǎng)占有率最高的系統(tǒng)。擁有良好的持續(xù)發(fā)展能力和高性能的內(nèi)核及友好的用戶開發(fā)環(huán)境。支持多種處理器, 如 ARM、x86、i9
15、60、Sun Sparc、MIPS RX000、PowerPC、Stro ngARM 等。以良好的可靠性和實(shí)時(shí)性,廣泛應(yīng)用在通信、軍事、航空、航天等領(lǐng)域。應(yīng)用案例:美國(guó)F-16、FA-18戰(zhàn)斗機(jī),B-2隱形轟炸機(jī),“愛國(guó)者”導(dǎo)彈,1997年4月在火 星登陸的火星探測(cè)器。Palm OS32位嵌入式操作系統(tǒng),由3Com公司的Palm Computing部門開發(fā)。在掌上電腦和PDA市場(chǎng)上占有很大的市場(chǎng)份額,曾占據(jù)90%的PDA市場(chǎng)份額。2010年04月29日惠普12億美元收購(gòu) PalmQNX一個(gè)實(shí)時(shí)、可擴(kuò)充的操作系統(tǒng)。部分遵循POSIX (可移植操作系統(tǒng)接口)相關(guān)標(biāo)準(zhǔn)。內(nèi)核僅提供4種服務(wù):進(jìn)程調(diào)度、
16、進(jìn)程間通信、底層網(wǎng)絡(luò)通信和中斷處理。內(nèi)核非常小巧(QNX4.X約為12KB),運(yùn)行速度極快。iOS蘋果推出,基于 Darwin最新:iOS8AndroidGoogle開發(fā)的基于Linux平臺(tái)的開源手機(jī)操作系統(tǒng)Delta OS是電子科技大學(xué)實(shí)時(shí)系統(tǒng)教研室和北京科銀京成技術(shù)有限公司聯(lián)合研制并開發(fā)的全中文嵌入式操作系統(tǒng)。絕大部分代碼由 C語(yǔ)言編寫。已成功應(yīng)用于通信、網(wǎng)絡(luò)、信息家電等多個(gè)應(yīng)用領(lǐng)域。pSOSISI公司研發(fā)的產(chǎn)品。模塊化、高性能、完全可擴(kuò)展。1.6嵌入式系統(tǒng)的應(yīng)用及發(fā)展趨勢(shì)(1) 嵌入式系統(tǒng)的應(yīng)用領(lǐng)域消費(fèi)電子領(lǐng)域通信網(wǎng)絡(luò)領(lǐng)域工業(yè)控制領(lǐng)域、機(jī)器人領(lǐng)域交通管理與汽車電子領(lǐng)域國(guó)防與航空航天領(lǐng)域醫(yī)
17、療儀器領(lǐng)域(2) 嵌入式系統(tǒng)的發(fā)展趨勢(shì)小型化、智能化、網(wǎng)絡(luò)化、可視化多核技術(shù)的應(yīng)用低功耗、綠色環(huán)保云計(jì)算、可重構(gòu)、虛擬化等技術(shù)被進(jìn)一步應(yīng)用到嵌入式系統(tǒng)中嵌入式系統(tǒng)軟件將逐漸 PC化融合趨勢(shì)微控制器MCU與SoC的結(jié)合微控制器MCU與DSP的結(jié)合ARM 與DSP的結(jié)合微控制器 MCU與CPLD/FPGA的結(jié)合安全性2 ARM體系結(jié)構(gòu)教學(xué)目的:使學(xué)生對(duì)ARM設(shè)計(jì)思想、ARM處理器系列、ARM體系結(jié)構(gòu)、ARM處理器模式、ARM 內(nèi)部寄存器、ARM體系的存儲(chǔ)系統(tǒng)有一定的了解。教學(xué)重點(diǎn):ARM設(shè)計(jì)思想、ARM體系結(jié)構(gòu)、ARM處理器模式、ARM內(nèi)部寄存器。教學(xué)難點(diǎn):ARM處理器模式、ARM內(nèi)部寄存器。教學(xué)
18、方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:4課時(shí)。教學(xué)內(nèi)容2.1 ARM設(shè)計(jì)思想 RISC傳統(tǒng)的CISC (Complex Instruction Set Computing)指令集中,約 20%指令占整個(gè)程序代碼的80%。RISC (Reduced In struction Set Computi ng) 是一種設(shè)計(jì)思想, 其目標(biāo)是設(shè)計(jì)出一套能在高時(shí)鐘頻率 下單周期執(zhí)行、簡(jiǎn)單而有效的指令集。RISC設(shè)計(jì)重點(diǎn)在于降低硬件執(zhí)行指令的復(fù)雜度,而傳統(tǒng)的CISC更側(cè)重于硬件執(zhí)行指令的功能性,使CISC指令變得復(fù)雜。(2) RISC設(shè)計(jì)思想的實(shí)現(xiàn)指令集。減少了指令種類,指令只實(shí)現(xiàn)簡(jiǎn)單的功能,指令長(zhǎng)
19、度固定。流水線。指令的處理過(guò)程被拆分成幾個(gè)更小的、能夠被流水線并行執(zhí)行的單元。寄存器。更多通用寄存器,可存數(shù)據(jù)和地址,可為所有數(shù)據(jù)操作提供快速的局部存儲(chǔ)訪問(wèn)。load-store結(jié)構(gòu)。處理器只處理寄存器中數(shù)據(jù),用load和store指令完成寄存器和外存間的數(shù)據(jù)傳送(3) ARM的設(shè)計(jì)思想較小的核。降低功耗高的代碼密度。考慮成本和物理尺寸限制較小的處理器內(nèi)核管芯(Die)面積。留給外設(shè)電路的空間較大硬件調(diào)試技術(shù)(4) ARM微處理器的特點(diǎn)體積小,功耗低,成本低,性能高;支持Thumb/ARM 指令集,兼容8/16位器件;大量使用寄存器,指令執(zhí)行速度更快;大多數(shù)數(shù)據(jù)操作都在寄存器中完成;尋址方式靈
20、活簡(jiǎn)單,執(zhí)行效率高;指令長(zhǎng)度固定。2.2 ARM體系結(jié)構(gòu)分析(1) 包含典型的RISC體系結(jié)構(gòu)特征統(tǒng)一寄存器文件加載/存儲(chǔ)體系結(jié)構(gòu),數(shù)據(jù)處理操作只針對(duì)寄存器內(nèi)容;簡(jiǎn)單尋址模式,所有加載/存儲(chǔ)地址只通過(guò)寄存器內(nèi)容和指令字段確定。指令長(zhǎng)度固定,簡(jiǎn)化了指令譯碼。(2) 還提供可組合使用轉(zhuǎn)換與算術(shù)或邏輯運(yùn)算指令自動(dòng)遞增和自動(dòng)遞減尋址模式,可優(yōu)化程序循環(huán)加載存儲(chǔ)多個(gè)指令以最大化數(shù)據(jù)吞吐量幾乎所有指令都采取條件執(zhí)行的方式(3) 普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu)普林斯頓結(jié)構(gòu):也稱馮 諾伊曼結(jié)構(gòu),它將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合并在一起的存儲(chǔ)結(jié)構(gòu)。ARM7系列基于普林斯頓結(jié)構(gòu)。哈佛結(jié)構(gòu):將程序指令存儲(chǔ)和數(shù)據(jù)存儲(chǔ)分開的存
21、儲(chǔ)結(jié)構(gòu)。ARM9系列之后都基于哈佛結(jié)構(gòu)。CPU斷和如存儲(chǔ)器程序存儲(chǔ)器BAE=B數(shù)據(jù)存儲(chǔ)器馮諾依曼結(jié)構(gòu)流水線哈佛結(jié)構(gòu)指令MOVADD:取指SUB1譯碼執(zhí)行1取指譯碼執(zhí)行取指譯碼I3級(jí)流水線結(jié)構(gòu)ARM7的三級(jí)流水線在執(zhí)行單元完成了大量的工作,執(zhí)行單元的工作往往占用多個(gè)時(shí)鐘周期,從而成為系統(tǒng)性能的瓶頸。ARM9采用哈佛架構(gòu),避免了數(shù)據(jù)訪問(wèn)了取指的總路線沖突,采用五級(jí)流水線設(shè)計(jì)。五級(jí)流水線技術(shù)把三級(jí)流水線中的執(zhí)行單元進(jìn)一步細(xì)化,減少了在每個(gè)時(shí)鐘周期內(nèi)必須完成的工指令:MOVjadd!ILDR : SUB !ISUB !IMOV;収指譯碼執(zhí)行取指譯碼執(zhí)行取指譯碼算地址訪存冋寫.執(zhí)行;譯碼取指|譯碼執(zhí)行取
22、指譯碼取指執(zhí)行周期:帶有存儲(chǔ)器訪問(wèn)指令的流水線作量,進(jìn)而允許使用較高的時(shí)鐘頻率。無(wú)論三級(jí)流水線還是五級(jí)流水線,在以下情況下都會(huì)發(fā)生阻塞:多周期指令、跳轉(zhuǎn)分支指令中斷發(fā)生相鄰指令之間的寄存器沖突:如果當(dāng)前指令(A)的目的操作數(shù)寄存器和下一條指令(的源操作數(shù)寄存器一致,B指令就需要等A回寫之后才能譯碼。指令MOV RO,R1LDR R5, R4STR R9, R13|MOV R6, R7指令周期取指譯碼執(zhí)行回寫取指譯碼執(zhí)行訪存回寫取指譯碼執(zhí)彳亍回寫五級(jí)流水線最佳運(yùn)行示意圖(5) ARM體系結(jié)構(gòu)的版本版本版本變種他理器核VIvlAKM1v2v2ARM2v2aARM2aSARM3v3v3ARM6. A
23、RM600. ARM610AR.M7v ARM700. ARM710v4v4TARM7TDML ARM7I0T, ARM720T. ARM740Tv4Strong A RM, ARMS. ARM8I0v4TARM9TDML ARM920T, ARM940TY$v5TEARM9E-SARM10TDMK ARMI020Ev6v6ARMII, ARM 115625AKMH56T2F-S. ARM1IJZJ -Sv7v7ARM Cotcx-A ARM Colex-R4, ARM Cotex-M3CRYPTOVFPv2ARMySVFPv3MKey featureARHv7-A compaubility”
24、NEON AdvSIMDinduding: Scafar FP(SP and DH Adv SlMD(SP+DP Amc)inti Lining;* Scalar FP (SP mJ DP* Adv SIMD(SP FhMt)3沁ARMv6ARMA/RARMA2.3 ARM 處理器系列(1) ARM處理器系列ClassicA R.M PrrxcessorsEmbeddedGoftex FroceEEors左匚衛(wèi)UUF1U-亦vEgoipfARM1133油匸今滬診8# /Cotex-MARM9Cortejc-MSCortex-MiARM 7Cortex-MO經(jīng)典 ARM 處理器:ARM7、ARM
25、9、ARM10、 ARM11Cortex-A 系列處理器: Cortex-A15、Cortex-A9、Cortex-A8、Cortex-A7、Cortex-A5Cortex-R 系列處理器:Cortex-R7、Cortex-R5、Cortex-R4Cortex-M 系列處理器:Cortex-M4、Cortex-M3、 Cortex-M1、Cortex-M0+、 Cortex-MO、CMSDK、CMSISSecurCore處理器(2) ARM內(nèi)核版本命名規(guī)則ARM xy z T D M IE J F -Sx:系列號(hào)y:內(nèi)部存儲(chǔ)管理/保護(hù)單元 內(nèi)含有高速緩存(匸沁1)T:支持16位的Thumb指令
26、集D:支持JTAG片上調(diào)試M:支持用于長(zhǎng)乘法操作的4RM指令I(lǐng):帶有嵌入式追蹤宏單元ETME:增強(qiáng)型DSP指令J:含有Java加速器JazalleF:向量浮點(diǎn)單元S:可綜合版本ARM7系列微處理器a) 主要特點(diǎn)最高主頻:130MIPS(Millio n In structio ns Per Seco nd);功耗低;代碼密度高,兼容16位的微處理器;可得到廣泛的操作系統(tǒng)和實(shí)時(shí)操作系統(tǒng)支持;眾多的開發(fā)工具,優(yōu)秀的調(diào)試機(jī)制;采用3級(jí)流水線結(jié)構(gòu);提供0.25卩m、0.18卩m和0.13卩m的生產(chǎn)工藝。b) 馮諾伊曼結(jié)構(gòu):數(shù)據(jù)和指令使用同一條總線。c) 包括ARM7TDMI、ARM7TDMI-S、AR
27、M7EJ-S和ARM720T 四種類型,適用于不同的市場(chǎng) 要求d) ARM7TDMIARM公司最早為業(yè)界普遍認(rèn)可并廣泛應(yīng)用的處理器核。T: Thumb ; D: Debug ; M : Multiplier ; I: Embedded ICE logic。e) ARM7TDMI-S是ARM7TDMI的可綜合 (synthesizable)版本(軟核)。ARM以“軟”核的方式把ARM7TDMI核授權(quán)給處理器廠商,處理器廠商可進(jìn)行修改和綜合。這就是 ARM7TDMI-S。綜合出的整個(gè)核比“硬”核大50%,電源效率降低 50%。f) ARM7EJ-S是可綜合的、帶有增強(qiáng)型DSP ( E變種)和Jav
28、a加速功能(J變種)的32位RISC嵌入式處理器。主要用于數(shù)字音頻播放器、帶Java功能的無(wú)線手持設(shè)備、噴墨打印機(jī)、數(shù)碼相機(jī)和PDA 等方面。g) ARM720T專為使用 Windows CE、Symbian OS操作系統(tǒng)平臺(tái)設(shè)計(jì)。主要用于數(shù)字音頻播放器、噴墨打印機(jī)和數(shù)碼相機(jī)等。ARM9系列微處理器a)主要特點(diǎn)5級(jí)整數(shù)流水線;單一的 32 位 AMBA (Advaneed Microcontroller Bus Architecture)總線接口;MMU 支持 Windows CE、Symbian OS、Linux 等;支持實(shí)時(shí)操作系統(tǒng),包括 VxWorks ;統(tǒng)一的數(shù)據(jù) Cache和指令 C
29、ache;提供0.25卩m、0.18卩m和0.13卩m的生產(chǎn)工藝。b)包括 ARM9TDMI、ARM920T、ARM940T 和 ARM9E 四種類型。后三種含有 Cache。c)采用Harvard體系結(jié)構(gòu)指令與數(shù)據(jù)分開存儲(chǔ)。采用指令快存 和數(shù)據(jù)快存。d) 在相同工藝條件下,ARM9TDMI的處理能力是ARM7TDMI的兩倍。e) ARM920TMotorola MC9328MX1 和 Samsung S3C2410X 處理器都采用 ARM920T 核心。主要應(yīng)用于通信終端、3G基帶和應(yīng)用處理器、基于OS的平臺(tái)設(shè)備、數(shù)碼相機(jī)、音頻 /視頻解碼和機(jī)頂盒等。f) ARM940T與ARM920T相比
30、,實(shí)現(xiàn)了一個(gè)更小的D-Cache、I-Cache和MPU。適于不需運(yùn)行操作系統(tǒng)的平臺(tái)。g) ARM9E使用單一的處理器核,提供微控制器、DSP、Java應(yīng)用系統(tǒng)的解決方案;DSP指令集;在0.13卩m工藝下,主頻可達(dá) 300MIPS的性能;集成實(shí)時(shí)跟蹤調(diào)試功能;可選的VFP9浮點(diǎn)處理協(xié)處理器;高性能的 AHB (Advaneed High performanee Bus)。(5) ARM10系列微處理器a) 主要特點(diǎn)6級(jí)流水線;在典型的0.13卩m工藝下,主頻可達(dá) 400MIPS的性能;單一的32位AMBA 總線接口;MMU 支持 Windows CE、Symbian OS、Linux 等;統(tǒng)
31、一的數(shù)據(jù) Cache和指令 Cache;提供0.25卩m、0.18卩m和0.13卩m的生產(chǎn)工藝;并行讀取/寫入部件。b) 包括:ARM1020、ARM10200、ARM1020E、ARM1022E、ARM1026EJ-S。c) 使用 ARM10TDMI處理器核,采用 ARMv5T 結(jié)構(gòu)。d) ARM10TDMI在相同工藝條件下,處理能力是ARM9TDMI的兩倍;采用提高時(shí)鐘頻率、6級(jí)流水線、轉(zhuǎn)移預(yù)測(cè)邏輯、64位存儲(chǔ)器和無(wú)阻塞的存/取邏輯等措施提升性能。e) ARM10E。新節(jié)能模式,64位Load/Store體系,與 ARM10TDMI相比具有的特點(diǎn)DSP指令集;可選的VFP10浮點(diǎn)處理協(xié)處理
32、器;在實(shí)時(shí)控制和三維圖像處理時(shí),主頻可達(dá)650MFLPS (百萬(wàn)次浮點(diǎn)運(yùn)算每秒)。(6) ARM11系列微處理器ARM1156T2-S 內(nèi)核、 ARM1156T2F-S 內(nèi)核、 ARM1176JZ-S 內(nèi)核和 ARM11JZF-S 內(nèi)核ARM1156T2-S 內(nèi)核和 ARM1156T2F-S 內(nèi)核基于ARM v6指令集體系結(jié)構(gòu);是首批含有ARM Thumb-2內(nèi)核技術(shù)的產(chǎn)品。Cortex-A系列微處理器適于高計(jì)算要求、運(yùn)行豐富操作系統(tǒng)及提供交互媒體和圖形體驗(yàn)的應(yīng)用領(lǐng)域。支持傳統(tǒng) ARM、Thumb指令集和新的高性能緊湊型Thumb-2指令集。移動(dòng)互聯(lián)網(wǎng)的支持低功率設(shè)計(jì),支持 Adobe Fla
33、sh 10.1高性能NEON引擎,廣泛支持媒體編解碼器高性能Cortex-A15 :為新一代移動(dòng)基礎(chǔ)結(jié)構(gòu)應(yīng)用和無(wú)線基礎(chǔ)結(jié)構(gòu)應(yīng)用提供高性能的解決Cortex-A9。 800 MHz - 2 GHz的頻率,作單核處理器或1-4核多核合成處理器,每?jī)?nèi)核可提供 5000 DMIPS的性能。Cortex-A8。單核解決方案,可提供經(jīng)濟(jì)有效的高性能,在600 MHz - 1 GHz的頻率下,提供的性能超過(guò)2000 DMIPS。Cortex-A5低成本實(shí)現(xiàn),在400- 800 MHz的頻率下,提供的性能超過(guò)1200DMIPS,是尺寸最小、功耗最低的ARM多核處理器。多核技術(shù):Cortex-A15、Corte
34、x-A5和Cortex-A9 處理器都支持 ARM 第二代多核技術(shù)。高級(jí)擴(kuò)展Thumb-2,提供最佳代碼大小和性能。TrustZ one,安全擴(kuò)展,提供可信計(jì)算。Jazelle技術(shù),提高執(zhí)行環(huán)境(如 Java、.Net、MSIL、Python和Perl)速度。(8) Cortex-R系列微處理器為具有嚴(yán)格的實(shí)時(shí)響應(yīng)限制的深層嵌入式系統(tǒng)提供高性能計(jì)算解決方案??焖佟R愿邥r(shí)鐘頻率獲得高處理性能。確定性。處理在所有場(chǎng)合都必須符合硬實(shí)時(shí)限制。安全。系統(tǒng)必須可靠且可信。成本效益。在處理器及其內(nèi)存系統(tǒng)中都具有競(jìng)爭(zhēng)力的成本和功耗。應(yīng)用領(lǐng)域智能手機(jī)企業(yè)系統(tǒng):硬盤驅(qū)動(dòng)器、聯(lián)網(wǎng)和打印消費(fèi)電子:機(jī)頂盒、數(shù)字電視和播
35、放器醫(yī)療行業(yè)、工業(yè)和汽車行業(yè)的可靠系統(tǒng)功能集(9) Cortex-M系列微處理器向上兼容的高能效、易于使用的處理器針對(duì)成本和功耗敏感的MCU和終端應(yīng)用的混合信號(hào)設(shè)備進(jìn)行過(guò)優(yōu)化。更低的功耗,更長(zhǎng)的電池壽命。高密度指令集,更小的代碼,更低的硅成本。RISC處理器內(nèi)核Thumb-2 技術(shù)高性能32位CPU具有確定性的運(yùn)算 低延遲3階段管道16/32位指令的最佳混合 小于8位設(shè)備3倍的代碼大小 對(duì)性能沒有負(fù)面影響低功耗模式嵌套矢量中斷控制器 (NVIC)集成的睡眠狀態(tài)支持 多電源域基于架構(gòu)的軟件控制低延遲、低抖動(dòng)中斷響應(yīng) 不需要匯編編程 以純C語(yǔ)言編寫的中斷服務(wù)例程工具和RTOS支持CoreSight
36、調(diào)試和跟蹤廣泛的第三方工具支持C ortex微控制器軟件接口標(biāo)準(zhǔn)(CMSIS)最大限度地增加軟件成果重用JTAG或2針串行線調(diào)試(SWD)連接支持多處理器 支持實(shí)時(shí)跟蹤(10) SecurCore系列微處理器為安全要求較高應(yīng)用設(shè)計(jì)。智能卡SIM、ID、銀行業(yè)、付費(fèi)電視、公共交通、電子政務(wù)2.4 ARM 處理器模式(1) 32位ARM處理器工作狀態(tài)32位ARM處理器有三種工作狀態(tài)ARM 狀態(tài)。對(duì)應(yīng) 32位ARM 指令集Thumb狀態(tài)。對(duì)應(yīng)16位Thumb指令集Jazelle狀態(tài)。對(duì)應(yīng) 8位的Jazelle指令集用于在處理器指令層次對(duì) JAVA加速只有進(jìn)入特定的狀態(tài),相應(yīng)的指令集才有效。CPSR的
37、J(Jazelle)和T(Thumb)位反映程序的狀態(tài)。Thumb-2與現(xiàn)有ARM和Thumb解決方案向后兼容,同時(shí)擴(kuò)展了Thumb指令集的可用功能;使用少于31%的內(nèi)存以降低系統(tǒng)成本;提供比現(xiàn)有高密度代碼高出38%的性能。(2) 64位ARM處理器工作狀態(tài)ARMv8架構(gòu)兩種主要執(zhí)行狀態(tài):AArch64, AArch32AArch64 :引入了一套新的指令集“ A64 ”專門用于64位處理AArch32 :兼容現(xiàn)有的 32位ARM指令集ARMv8架構(gòu)支持三個(gè)主要指令集A32(或ARM) : 32位固定長(zhǎng)度指令集T32 (Thumb):以16位固定長(zhǎng)度指令集的形式引入,在引入 Thumb-2技術(shù)
38、時(shí)增強(qiáng)為 16 位和32位混合長(zhǎng)度A64 :提供與 ARM和Thumb指令集類似功能的64位固定長(zhǎng)度指令集(3) ARM處理器運(yùn)行模式用戶模式(usr): ARM處理器正常的程序執(zhí)行狀態(tài)??焖僦袛嗄J?fiq):用于高速數(shù)據(jù)傳輸或通道處理外部中斷模式(irq):用于通用的中斷處理。管理模式(svc):操作系統(tǒng)使用的保護(hù)模式。數(shù)據(jù)訪問(wèn)終止模式(abt):當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入該模式,可用于虛擬存儲(chǔ)及存儲(chǔ) 保護(hù)。系統(tǒng)模式(sys):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù)。未定義指令中止模式(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入該模式,可用于支持硬件協(xié)處理器的軟件仿真。運(yùn)行模式可通過(guò)軟件改變,也可通過(guò)外部中斷
39、或異常處理改變。用戶模式之外的模式稱為非用戶模式或特權(quán)模式。除用戶模式和系統(tǒng)模式之外的5種稱為異常模式,常用于處理中斷和異常、訪問(wèn)受保護(hù)的系統(tǒng)資源等情況。ARM處理器模式Processor inodeMode numberDescriplionUMOblOOOONmiul prtrain exn uitdeHQfiqOblOOOLSuppLids u hiLjh-pccd hi;i IraiMcr nr Ji當(dāng)抄珅雅的快速屮斷請(qǐng)求引卿有效ftCPSR的H控制位被清除時(shí)*產(chǎn)生 HIQ異常中斷。給pc強(qiáng)制賦向量地址值。(3)中斷向量表指定了異常中斷及其處理程序的對(duì)應(yīng)關(guān)系,它通常存放在存儲(chǔ)地址的低端
40、。大小為32字節(jié),其中每個(gè)異常中斷占據(jù) 4字節(jié)空間,用于存放一個(gè)跳轉(zhuǎn)指令或者一個(gè)向PC寄存器中賦值的指令。異常中斷向量表及異常優(yōu)先級(jí)中斯向量地址異常中斷類型異常中斷模式優(yōu)先級(jí)(6最低)0x00000000復(fù)位管理模式10x00000004未定義的指令未定義模式60x00000008軟件中斷管理模式6OxOOOOOOOC指令預(yù)取終止中止模式50x00000010數(shù)據(jù)訪問(wèn)終止中止模式20x00000014保留未使用未使用0x00000018外部中斷請(qǐng)求IRQ模式4OxOOOOOOlC快速中斷請(qǐng)求FIQ模式3(4) 異常優(yōu)先級(jí):當(dāng)幾個(gè)異常中斷同時(shí)發(fā)生時(shí) ,就必須按照一定的次序來(lái)處理這些異常中斷。(5
41、) 從異常返回將連接寄存器LR的值減去相應(yīng)偏移量后送到PC中;將SPSR復(fù)制回CPSR 中;若在進(jìn)入異常處理時(shí)設(shè)置了中斷禁止位,則要清除。通過(guò)普通指令控制 PC返回軟件中斷的返回指令MOVS R15, R14;將鏈接寄存器內(nèi)容移入 PC并轉(zhuǎn)換模式IRQ,F(xiàn)IQ和預(yù)取異常終止中斷的返回指令SUBS R15, R14, #4數(shù)據(jù)終止異常的返回指令SUBS R15, R14, #8;異常在導(dǎo)致異常的指令的下一條指令后產(chǎn)生2.6 ARM內(nèi)部寄存器(1)寄存器結(jié)構(gòu)32位ARM有31個(gè)32位通用寄存器,6個(gè)狀態(tài)寄存器。通用寄存器可用來(lái)保存數(shù)據(jù)和地址信息, 用R為前綴加寄存器序號(hào)表示15個(gè)通用寄存器(R0R
42、14 )、一個(gè)或兩個(gè)狀態(tài)寄存器及程序計(jì)數(shù)器可在任意時(shí)間和處理器模式下 被訪問(wèn),有些處理器模式擁有自身獨(dú)立的寄存器通用寄存器(2)通用寄存器UserIRQFIQUndefAbortSVC分成三類:R0R7 :未分組寄存器。每個(gè)未分組寄存器在所有的處理器模式下都表示同一個(gè)物理寄存器。R8R14 :分組寄存器。每個(gè)分組寄存器與一個(gè)用戶模式的寄存器對(duì)應(yīng)。R15:程序計(jì)數(shù)器PC。分組寄存器 R8R14可分為兩組:R8R12 :每個(gè)寄存器對(duì)應(yīng)兩組不同的物理寄存器,一組是FIQ模式下的,記為R8_fiqR12_fiq, 另一組是除FIQ模式外的:R8_usrR12_usr。R13R14 :分別對(duì)應(yīng)6個(gè)不同的
43、物理寄存器。用戶模式和系統(tǒng)模式共用一個(gè)寄存器,另外5個(gè)對(duì)應(yīng)其余5種。R13 _R14 _可以是以下幾種模式之一:usr、svc、abt、und、irq和fiq。R13 :被稱為堆棧指針 SP,但沒有任何指令強(qiáng)制性使用R13作為堆棧指針R14又被稱為鏈接寄存器 LR(Link Register)。當(dāng)調(diào)用子程序時(shí),返回地址被自動(dòng)保存到R14。由于ARM采用了多級(jí)流水線技術(shù),所以當(dāng)正常讀取PC值時(shí),該值為當(dāng)前指令地址值加 8,或是加12。2.7 ARM體系的存儲(chǔ)系統(tǒng)(1) 地址空間將存儲(chǔ)器看作是從零地址開始的字節(jié)的線性組合0-3字節(jié):第1個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù)4-7字節(jié):第1個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù)依次排列(2) 存
44、儲(chǔ)器格式大端格式31 24 23 16 15 8 70宇:AA+1A+2 |A+3小端格式31 24 23 16 15 870字:A+3A+2A+1A(3) 存儲(chǔ)器訪問(wèn)對(duì)準(zhǔn)無(wú)論取指還是內(nèi)存訪問(wèn)都以字、半字或字節(jié)對(duì)準(zhǔn)訪問(wèn)a) 非對(duì)齊的指令預(yù)取操作ARM狀態(tài):將一個(gè)非對(duì)齊地址寫入PC,數(shù)據(jù)的第0位和第1位被忽略,PC的bit1:0為0Thumb狀態(tài):數(shù)據(jù)的第 0位被忽略,PC的bit0為0b) 非對(duì)齊地址內(nèi)存的訪問(wèn)操作( LOAD/STORE 操作)執(zhí)行結(jié)果不可預(yù)知然后使用這些低地址位忽略字單元地址低兩位的值,半字單元最低位的值(分別對(duì)應(yīng)訪問(wèn)字和半字) 在LDR和SWP指令中,對(duì)存儲(chǔ)器訪問(wèn)忽略造成
45、地址不對(duì)齊的低地址位, 控制裝載數(shù)據(jù)的循環(huán)3 ARM指令系統(tǒng)及程序設(shè)計(jì)基礎(chǔ)教學(xué)目的:使學(xué)生對(duì)ARM指令系統(tǒng)及程序設(shè)計(jì)的基礎(chǔ)知識(shí)有一定的了解。教學(xué)重點(diǎn):ARM指令系統(tǒng)。教學(xué)難點(diǎn):ARM程序設(shè)計(jì)的基礎(chǔ)知識(shí)。教學(xué)方法與教學(xué)手段:課堂講授,多媒體教學(xué)。教學(xué)時(shí)間:4課時(shí)。教學(xué)內(nèi)容3.1 ARM尋址方式(1)尋址方式處理器根據(jù)指令中給出的地址信息尋找物理地址的方式。尋找操作數(shù)或操作數(shù)地址的方式。廠立即尋址 寄存器尋址ARM尋址方式寄存器間接尋址 基址變址尋址 多寄存器尋址寄存器移位尋址 相對(duì)尋址堆棧尋址(2)立即尋址也叫立即數(shù)尋址,操作數(shù)本身在指令中給出,該操作數(shù)被稱為立即數(shù)。例如:ADDR0, R0,
46、#1; R0 R0+1立即數(shù)須以“ #”為前綴,對(duì)于十六進(jìn)制表示的立即數(shù),還需在“#”后加上“ Ox”或“ &”。(3) 寄存器尋址操作數(shù)存在寄存器中。例如:ADDRO, R1, R2 ; RO R1+R2(4) 寄存器間接尋址以寄存器的值作為操作數(shù)地址。例如:ADDRO, R1, R2; RO R1+R2(5) 基址變址尋址a)基址加偏移的尋址方式將寄存器內(nèi)容與指令中給出的地址偏移量相加,得到操作數(shù)的有效地址。如:LDRR0, R1, #4 :R0R1-4J前變址:基址加變址作為操作數(shù)地址。后變址:基址作為操作數(shù)的地址,傳送后自動(dòng)更新基址寄存器的值。STR R0JR1, #12; Rl+12
47、jeR0BaseRegisterSource Register for STR前變址STR R0JR1, #12;RljeRO, R1R1+12OriginalRegisterUpdated Bas呂RegisterSource Register for STR后變址b)基址加索引的尋址方式將基址寄存器的值與索引寄存器的值相加,形成操作數(shù)的有效地址。例如:LDRRO, R1, R2;ROR1+R2C)多寄存器尋址條指令可完成多個(gè)(最多16個(gè))寄存器值的傳送。例如:LDMIA RO, R1, R2, R4;R1R0STMxx rlO, r0,rl,r4地址遞增,指針最后位置基址寄存器(Rd)IB
48、-地址增加地址遞減,指針 最后位置;R2 R0+4;R4 RO+8(6)寄存器移位尋址操作數(shù)為寄存器中數(shù)做相應(yīng)的移位而得到 例如:ARM中的移位或循環(huán)移位操作:LSL :邏輯左移(Logical Shift Left )LSR :邏輯右移(Logical Shift Right ) ADD RO, R1, R2, LSL #3 ; RO R1+8XR2ASR :算術(shù)右移(Arithmetic Shift Right )。移位過(guò)程中保持符號(hào)位不變,若源操作數(shù)為正數(shù),則字的高端空出的位補(bǔ) 0。若源操作數(shù)為負(fù)數(shù),則字的高端空出的位補(bǔ)1。ROR :循環(huán)右移(Rotate Right )。從字的最低端移
49、出的位依次填入字的高端空出的位。RRX :擴(kuò)展的循環(huán)右移(Rotate Right Extended )。操作數(shù)向右移一位,左側(cè)空位由狀態(tài)寄存 器C位填充。當(dāng)移位的類型為 RRX時(shí),無(wú)需指定移位的位數(shù), 其它的則須指定移位的位數(shù)。(7)相對(duì)尋址以PC當(dāng)前值作為基地址,指令中的地址標(biāo)號(hào)作為位移量,兩者相加后得到操作數(shù)的有效地址。例如:BLNEXT;跳轉(zhuǎn)至子程序 NEXTNEXTMOV PC, LR;從子程序返回(8)堆棧尋址a) 堆棧:按先進(jìn)后出(FILO)的方式工作,使用堆棧指針(Stack Pointer, SP)指示當(dāng)前操作位置。b) 根據(jù)棧指針的指向位置可將堆棧分為滿堆棧:SP指向最后壓入堆棧的數(shù)據(jù)??斩褩#篠P指向下個(gè)將放入數(shù)據(jù)空位置c)
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 精密非標(biāo)全自動(dòng)智能電池產(chǎn)線項(xiàng)目可行性研究報(bào)告模板-立項(xiàng)備案
- 齊魯工業(yè)大學(xué)《Linux操作系統(tǒng)》2022-2023學(xué)年期末試卷
- 南京信息工程大學(xué)《英國(guó)文學(xué)史》2023-2024學(xué)年第一學(xué)期期末試卷
- 北京市京源學(xué)校2024-2025學(xué)年高二上學(xué)期期中考試數(shù)學(xué)試卷(無(wú)答案)
- 儲(chǔ)藏室管道維修防造成隱患協(xié)議書
- 塑料制品的工藝改進(jìn)與質(zhì)量控制考核試卷
- 南京信息工程大學(xué)《遙感數(shù)字圖像處理Ⅱ》2021-2022學(xué)年第一學(xué)期期末試卷
- 南京信息工程大學(xué)《微機(jī)原理及接口技術(shù)Ⅱ》2021-2022學(xué)年期末試卷
- 客戶關(guān)系管理與服務(wù)提升考核試卷
- 煤炭行業(yè)中的安全生產(chǎn)與事故預(yù)防考核試卷
- 孕期運(yùn)動(dòng)(課堂PPT)課件(PPT 47頁(yè))
- PICC健康宣教-PPT課件
- 黃瓜育種分析
- 砂石生產(chǎn)各工種安全操作規(guī)程
- 2019版外研社高中英語(yǔ)選擇性必修一~四單詞總表
- 從分?jǐn)?shù)到分式的教學(xué)設(shè)計(jì)
- 狹窄隧道汽車雙向行PLC控制設(shè)計(jì)
- 移相整流變壓器設(shè)計(jì)及試驗(yàn)
- 05S502閥門井圖集
- 舒方特方格練習(xí)(共6頁(yè))
- 90、808系列鋁合金門窗自動(dòng)計(jì)算下料表
評(píng)論
0/150
提交評(píng)論