嵌入式系統(tǒng)課后習(xí)題部分答案_第1頁(yè)
嵌入式系統(tǒng)課后習(xí)題部分答案_第2頁(yè)
嵌入式系統(tǒng)課后習(xí)題部分答案_第3頁(yè)
嵌入式系統(tǒng)課后習(xí)題部分答案_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、據(jù)訪問中止模式Abort、未定義指令中止模式Undef、系統(tǒng)模式System。除用戶模式外其他 6種模式稱為特權(quán) 模式。在特權(quán)模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進(jìn)行處理器模式切換。再除去系統(tǒng)模式,其余5種模式又稱為異常模式。2-2.ARM核有多少個(gè)存放器?ARM處理器有如下 37個(gè) 32位長(zhǎng)的存放器:130個(gè)通用存放器;26 個(gè)狀態(tài)存放器:1個(gè) CPSRCurrentProgram StatusRegister,當(dāng)前程序狀態(tài)存放器,5個(gè) SPSRSavedProgramStatus Register,備份程序狀態(tài)存放器;31 個(gè) PC Program Counter,程序計(jì)數(shù)器。

2、2-3.什么存放器用于存儲(chǔ)PC和 LR存放器?存放器 R15稱為程序計(jì)數(shù)器ProgramCounter,PQ,存放器 R14又被稱為連接寄 存器LinkRegister, LR。2-4.R13通常用來存儲(chǔ)什么?R13 the Stack Point, SP,棧指向,用于存 儲(chǔ)堆棧指針。2-5.系統(tǒng)模式使用的存放器最少。不確定2-6.CPSR勺第 5 位 T 位反映了處理器的狀態(tài)。P152-7.ARM有哪幾個(gè)異常類型?P20ARM體系結(jié)構(gòu)中,存在 7種異常處理。第一章1-1.簡(jiǎn)述嵌入式系統(tǒng)的定義。嵌入式系統(tǒng)是以應(yīng)用為中心, 以計(jì)算機(jī)技術(shù)為根底, 并且軟硬件可裁剪, 適用于應(yīng)用系統(tǒng)對(duì)功能、積、功耗

3、有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。1-2.簡(jiǎn)述嵌入式系統(tǒng)的組成。從體系結(jié)構(gòu)上看,嵌入式系統(tǒng)主要由嵌入式處理器、支撐硬件和嵌入式軟件組成。其中嵌 入式處理器通常是單片機(jī)或微控制器,支撐硬件主要包括存儲(chǔ)介質(zhì)、通信部件和顯示部件 等,嵌入式軟件那么包括支撐硬件的驅(qū)動(dòng)程序、操作系統(tǒng)、支撐軟件及應(yīng)用中間件等。嵌入式系統(tǒng)的組成局部是嵌入式系統(tǒng)硬件平臺(tái)、嵌入式操作系統(tǒng)和嵌入式系統(tǒng)應(yīng)用。嵌入式系統(tǒng)硬件平臺(tái)為各種嵌入式器件、設(shè)備如 ARM、PowerPC、Xscale、MIPS等; 式操作系統(tǒng)是指在嵌入式Linux、uCLinux、WinCE 等。1-3.ARM7 處理器使用的是ARMv4指令集。ARM7 內(nèi)核采用馮

4、諾依曼體系結(jié)構(gòu),數(shù)據(jù) 和指令使用同一條總線。內(nèi)核有一條3級(jí)流水線,執(zhí)行 ARMv4指令集。1-6.ARM9采用的是5級(jí)流水線設(shè)計(jì)。存儲(chǔ)器系統(tǒng)根據(jù)哈佛體系結(jié)構(gòu)程序和數(shù)據(jù)空間 獨(dú)立的體系結(jié)構(gòu)重新設(shè)計(jì),區(qū)分?jǐn)?shù)據(jù)總線和指令總線。第二章2-1.簡(jiǎn)述 ARM可以工作在幾種模式。ARM處理器共有 7 種工作模式:用戶模式User、快速終端模式FIQ、外部中斷模式可靠性、本錢、體嵌入式系統(tǒng)硬件平臺(tái)嵌入嵌入式操作系統(tǒng)嵌入式系統(tǒng)應(yīng)用IRQ、特權(quán)模式svc、數(shù)異常類型處理器模式執(zhí)行低地址執(zhí)行商地址岌位異常Reset特權(quán)模式n&wnoonCKFFFFmon未定義指令異常CLIndelined iiiteimp

5、l)未定義指令中止模式UxO傾顧4OxTFFFOOCM姓中斷目常?。篈bort特相模式UxOUlKiUlKlK OxFFFFmuS預(yù)取異常(PiefetdiAbort)數(shù)掘訪問中止模式OXOO(KIO(KICOxFFFFC(*OC數(shù)據(jù)異常DaUiAbort數(shù)據(jù)訪問中止模式OxFFFFWU)外部中斷請(qǐng)求IRQ外部中斷請(qǐng)求模式0 x00000018OxFIHOOW快地 1 啊清求IlQ快速中斷請(qǐng)求模式OxOCWtJOJCOxFFFFOOlC復(fù)位異常、未定義指令異常、軟中斷、預(yù)取指令異常、數(shù)據(jù)訪問中止異常、外部中斷請(qǐng)求、快速中斷請(qǐng)求。2-8.復(fù)位后,ARM 處理器處于何種模式、何種狀態(tài)?ARM狀態(tài)?

6、 !不清楚2-9.BIC指令有什么作用?BIC Bit Clear位清零指令,將存放器 Rn 的值與第 2 個(gè)源操作數(shù) shifter_operand 的值的反碼按位做邏輯與操作, 結(jié)果保存到 Rd中。指令的語法格式BICS ,2-10.當(dāng)指令 SWI指令時(shí),會(huì)發(fā)生什么?軟件中斷指令Software Interrupt , SWI用于產(chǎn)生軟中斷,從而實(shí)現(xiàn)從用戶模式變換到管理模式,CPSR保存到管理模式的 SPSR中,執(zhí)行轉(zhuǎn)移到 SWI向量,在其他模式下也可以使用SWI 指令,處理器同樣切換到管理模式。第三章3-2.如何從 ARM 狀態(tài)切換到 Thumb 狀態(tài)? P54對(duì)于匯編程序來說,可以有兩

7、種方法來實(shí)現(xiàn)程序狀態(tài)的切換。第一種方法是利用連接器提供的交互子程序Veneer 來實(shí)現(xiàn)程序狀態(tài)的切換,這時(shí)用戶可以使用指令BL來調(diào)用子程序;第二種方法是用戶自己編寫狀態(tài)切換的程序。BX指令A(yù)RM狀態(tài)下的 BX 指令,使程序跳轉(zhuǎn)到指令中指定的參數(shù)Rm 所指定的地址執(zhí)行程序,Rm的第 0位復(fù)制到 CPSR中的 T位,bits31 : 1移入 PG指令的語法格式如下:BX 3-3.在 ARM 匯編中如何定義一個(gè)全局的數(shù)字變量?P61GBLA GBLL 和 GBLS 偽操作用于定義一個(gè) ARM程序中的全局變量并將其初始化。其中GBLA 偽操作用于定義一個(gè)全局的數(shù)字變量并初始化為 0。格式為:GBLA

8、variable3-5.AAPCS過程調(diào)用標(biāo)準(zhǔn)的內(nèi)容是什么? (書上沒有,一下為網(wǎng)上收集的內(nèi)容, 如果有聽課的同學(xué), 請(qǐng)更正并通知大家) 過程調(diào)用標(biāo)準(zhǔn) ATPCS(ARM-Thumb Produce Call Standard)規(guī)定了子程序間相互調(diào)用的根本規(guī)那么,ATPCSM定子程序調(diào)用過程中存放器的使用規(guī)那么、數(shù)據(jù)棧的使用規(guī)那么及參數(shù)的傳遞規(guī)那么。存放器使用規(guī)那么(1)子程序間通過存放器 R0R3傳遞參數(shù),存放器 R0R3 可記作 A1A4。被調(diào)用的子程序在返回前無 須恢復(fù)存放器R0R3 的內(nèi)容。(2)在子程序中,ARM狀態(tài)下使用存放器 R4R11 來保存局部變量,存放器 R4R11可記作

9、V1V8;Thumb 狀態(tài)下只能使用 R4R7來保存局部變量。(3)存放器R12用作子程序間調(diào)用時(shí)臨時(shí)保存棧指針,函數(shù)返回時(shí)使用該存放器進(jìn)行出棧,記作IP;在子 程序間的鏈接代碼中常有這種使用規(guī)那么。(4)通用存放器 R13 用作數(shù)據(jù)棧指針,記作 SR(5)通用存放器 R14用作鏈接存放器;(6)通用存放器 R15 用作程序計(jì)數(shù)器,記作 PC。數(shù)據(jù)棧使用規(guī)那么過程調(diào)用標(biāo)準(zhǔn)規(guī)定數(shù)據(jù)棧為FD類型,并且對(duì)數(shù)據(jù)棧的操作時(shí)要求8 字節(jié)對(duì)齊的。參數(shù)傳遞規(guī)那么1 .參數(shù)個(gè)數(shù)可變的子程序參數(shù)傳遞規(guī)那么對(duì)于參數(shù)個(gè)數(shù)可變的子程序,當(dāng)參數(shù)個(gè)數(shù)不超過4 個(gè)時(shí),可以使用存放器 R0R3 來傳遞;當(dāng)參數(shù)個(gè)數(shù)超過4個(gè)時(shí),還

10、可以使用數(shù)據(jù)棧進(jìn)行參數(shù)傳遞。2.參數(shù)個(gè)數(shù)固定的子程序參數(shù)傳遞規(guī)那么如果系統(tǒng)不包含浮點(diǎn)運(yùn)算的硬件部件且沒有浮點(diǎn)參數(shù)時(shí),那么依次將各參數(shù)傳送到存放器 R0R3 中,如果參數(shù)個(gè)數(shù)多于4個(gè),將剩余的字?jǐn)?shù)據(jù)通過數(shù)據(jù)棧來傳遞;如果包括浮點(diǎn)參數(shù)那么要通過相應(yīng)的規(guī)那么將浮點(diǎn)參數(shù)轉(zhuǎn)換為整數(shù)參數(shù),然后依次將各參數(shù)傳送到存放器R0R3 中。如果參數(shù)多于 4個(gè),將剩余字?jǐn)?shù)據(jù)傳送到數(shù)據(jù)棧中,入棧的順序與參數(shù)順序相反,即最后一個(gè)字?jǐn)?shù)據(jù)先入棧。如果系統(tǒng)包含浮點(diǎn)運(yùn)算的硬件部件,將按照如下規(guī)那么傳遞: 各個(gè)浮點(diǎn)參數(shù)按順序處理為每個(gè)浮點(diǎn)參數(shù)分配存放器。分配方法是:找到編號(hào)最小的滿足該浮點(diǎn)參數(shù)需要的一組連續(xù)的FP存放器進(jìn)行參數(shù)傳遞

11、。子程序結(jié)果返回規(guī)那么(1)結(jié)果為一個(gè) 32位的整數(shù)時(shí),通過存放器 R0返回;結(jié)果為一個(gè) 64位整數(shù)時(shí),通過存放器 R0, R1 返回。(2)結(jié)果為一個(gè)浮點(diǎn)數(shù)時(shí), 可以通過浮點(diǎn)運(yùn)算部件的存放器F0、D0或者 S0來返回;結(jié)果為復(fù)合型的浮點(diǎn)數(shù) (如復(fù)數(shù)) 時(shí),可以通過存放器 F0Fn或者 D。D n 來返回。(3)對(duì)于位數(shù)更多的結(jié)果,需要通過內(nèi)存來傳遞。3-7.匯編代碼中如何調(diào)用C代碼中定義的函數(shù)? P90如 C中定義函數(shù) int g(int,int,int);先在匯編程序開始處聲明C 程序 g(),如:IMPORT g匯編中調(diào)用指令為:BL g網(wǎng)上資料:在 ARM 開發(fā)工具編譯環(huán)境下,匯編程序

12、中要使用IMPORT 偽操作聲明將要調(diào)用的 C 程序。第四章主要考 ARM匯編指令實(shí)驗(yàn)一、二根本上是MOV、LDR STR 旨令的應(yīng)用。P110第五章5-4.Nor Flash的特點(diǎn)是什么?P134NOR的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP,executeInPlace),這樣應(yīng)用程序可以直接在fl耶h閃存 內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,在4MB的小容量時(shí) 具有很高的本錢效益,但是很低的寫入和擦除速度大大影響了它的性能。(以上為網(wǎng)上的說法)Flash存儲(chǔ)器是一種可在系統(tǒng)(In-System)進(jìn)行電擦寫,掉電后信息不喪失的存儲(chǔ)器。它具有低功耗、大容量、擦 寫速度快、可整片或分

13、扇區(qū)在系統(tǒng)編程(燒寫)、擦除等特點(diǎn),并且可由內(nèi)部嵌入的算法完成對(duì)芯片的操作。1)Nor Flash帶有通用的 SRAM 接口,可以輕松的掛接在CPU的地址、數(shù)據(jù)總線上,對(duì)CPU接口要求低。其特點(diǎn)是芯片內(nèi)執(zhí)行(XIP),這樣,應(yīng)用程序可以直接在Flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM 中。2)容量較小,一般在 116M之間,但是價(jià)格要比Nand Flash 高。3)不存在壞塊問題,位翻轉(zhuǎn)現(xiàn)象出現(xiàn)的幾率較小。4)壽命:擦寫次數(shù)在十萬次。5)其升級(jí)比擬麻煩,更換不同容量的器件時(shí)不方便。6)讀寫性能:要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為1.,執(zhí)行一個(gè)寫入/擦除操作的時(shí)間約為 5s,而N

14、and 為 4ms,但是讀速度稍快一些。5-5.比擬 Nand Flash和 Nor Flash的不同。(同上,見 P134) 6 方面不同1.接口比照2.容量和本錢比照3.可靠性比照4.壽命比照5.升級(jí)比照6 .讀寫性能比照本章還會(huì)考察存儲(chǔ)空間細(xì)節(jié),OM引腳設(shè)置。第六章主要考 6.1實(shí)驗(yàn)程序,應(yīng)該會(huì)考 IO 口的數(shù)據(jù)賦值(見 P150)。void led_on(void)int i,nOut;nOut = 0 xF0;/rGPFDAT=nOut & 0 x10;rGPFDAT=nOut & 0 xd0;/該形式的語句為賦值語句。for(i=0;i100000;i+);rGPF

15、DAT = nOut & 0 x50; / 0 x70for(i=0;i100000;i+);rGPFDAT=nOut & 0 x40;/ 0 x00for(i=0;i100000;i+);rGPFDAT=nOut & 0 x00;/ 0 x30for(i=0;i100000;i+);rGPFDAT=nOut ;第七章7-3.簡(jiǎn)述 Bootloader 的作用。(P208,并且注意其組成及結(jié)構(gòu)。)Bootloader 是在操作系統(tǒng)運(yùn)行之前執(zhí)行的一段小程序。通過這段小程序,我們可以初始化硬件設(shè)備、建立內(nèi)存空間的映 像表,從而建立適當(dāng)?shù)南到y(tǒng)軟硬件環(huán)境,為最終調(diào)用操作系統(tǒng)內(nèi)核做好準(zhǔn)備。對(duì)于嵌入式系統(tǒng),Bootloader 是基于特定硬件平臺(tái)來實(shí)現(xiàn)的。嵌入式系統(tǒng)世界已經(jīng)有各種各樣的Bootloader,種類劃分也有多種方式。除了按照

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論