嵌入式復(fù)習(xí)題(含全部答案)_第1頁
已閱讀1頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、嵌入式系統(tǒng)復(fù)習(xí)題一、填空題:1、試列舉三種主流的嵌入式處理器:( ARM )、( MIPS )、(PowerPC)。2、ARM 處理器共有(37)個(gè)寄存器,其中包括(31 個(gè)通用寄存器)和(6 個(gè)狀態(tài)寄存器)。3、寄存器 R13 在 ARM 指令中(堆棧指針 SP )。R14 也稱(程序連接寄存器 LR)在程序里的作用是(程序計(jì)數(shù)器 PC 的備份)。當(dāng)發(fā)生中斷或異常時(shí),對應(yīng)分組寄存器分別是(R14_svc、R14_irq、R14_fi

2、q、R14_abt 和 R14_und用來保存 R15 的返回值)。4、ARM 微處理器支持兩種指令集:(ARM)和(Thumb)。5、寄存器 R15 用作(程序計(jì)數(shù)器 PC)。該寄存器在 ARM 狀態(tài)下,(位[1:0]為 00),位[31:2]用于保存 PC;在 Thumb狀態(tài)下,(位[0]為 0),位[31:1]用于保存 PC。6、CPSR 用作( 狀態(tài)寄存器 ),CPSR 可在任何運(yùn)行模式下被訪問。每一種運(yùn)行模式下又都有一個(gè)專

3、用的物理狀態(tài)寄存器,稱為(程序狀態(tài)保存寄存器 SPSR)。7、Thumb 狀態(tài)下的寄存器集是ARM 狀態(tài)下寄存器集的一個(gè)子集,程序可以直接訪問的通用寄存器是(R0—R7,PC,SP,LR,CPSR)。8、ARM 指令中條件執(zhí)行功能是通過( 指令中添加條件碼)來實(shí)現(xiàn)的,包含的條件碼位于指令的最高(四)位。9、試列舉五種以上常見的嵌入式操作系統(tǒng):(μC/OS-II)、(Vxworks)、(WinCE)、(Linux/μCLinux)、(Pa

4、lmOS)。10、計(jì)算機(jī)結(jié)構(gòu)中,哈佛結(jié)構(gòu)和馮?諾依曼結(jié)構(gòu)的主要區(qū)別是(指令與數(shù)據(jù)分開),ARM7 采用(馮?諾依曼結(jié)構(gòu)),ARM9 采用(哈佛結(jié)構(gòu))。11、ARM 處理器采用(Thumb 指令)操作來訪問 SFR。12、在 ARM 匯編語言程序設(shè)計(jì)中,語句一般是由(指令操作碼)、(指令的條件碼)、(目標(biāo)寄存器編碼)和(包含第一個(gè)操作數(shù)的寄存器編碼)組成。二、名詞解釋:1、ARM 處理器:先進(jìn)的 RISC 指令集處理器。廣泛地使用在許多嵌

5、入式系統(tǒng)設(shè)計(jì)。2、交叉編譯:在一種計(jì)算機(jī)環(huán)境中運(yùn)行的編譯程序,能編譯出在另外一種環(huán)境下運(yùn)行的代碼,這個(gè)編譯過程就叫交叉編譯。3、異常:異是導(dǎo)致程序中斷運(yùn)行的一種指令流。(是指 CPU在執(zhí)行指令時(shí)出現(xiàn)的錯(cuò)誤,即不正常的情況。異常是與當(dāng)前所執(zhí)行的程序有關(guān)的,如存取數(shù)據(jù)或指令錯(cuò)誤、計(jì)算結(jié)果溢出等。)4、大端格式:字?jǐn)?shù)據(jù)的高字節(jié)存儲在低地址中,而字?jǐn)?shù)據(jù)的低字節(jié)則存放在高地址中。5、小端格式:低地址中存放的是字?jǐn)?shù)據(jù)的低字節(jié),高地址存放的是字?jǐn)?shù)據(jù)的

6、高字節(jié)。6、尋址方式:處理器根據(jù)指令中給出的(地址)信息,尋找操作數(shù)(物理地址)的方式。7、嵌入式系統(tǒng):廣義上:凡是不用于通用目的的可編程計(jì)算機(jī)設(shè)備,就可以算是嵌入式計(jì)算機(jī)系統(tǒng)。狹義上而言,嵌入式系統(tǒng)是指以應(yīng)用為核心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,對功能、可靠性、成本、體積和功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。8、GNU:GNU(GNU’s Not Unix),它的目標(biāo)是建立可自由發(fā)布和可移植的類 Unix 操作系統(tǒng)。9、偽指令:是匯編

7、語言程序里的特殊指令助記符,在匯編時(shí)被合適的機(jī)器指令替代。10、偽操作:為匯編程序所用,在源程序進(jìn)行匯編時(shí)由匯編程序處理,只在匯編過程起作用,不參與程序運(yùn)行。11、RTOS :實(shí)時(shí)系統(tǒng),能夠?qū)ν獠渴录龀黾皶r(shí)響應(yīng)的系統(tǒng)。12、微控制器:俗稱“單片機(jī)",它將整個(gè)計(jì)算機(jī)系統(tǒng)集成到一塊芯片中。三、 簡答題: 1、 請從廣義和狹義兩個(gè)方面簡述嵌入式系統(tǒng)的含義。答:嵌入式系統(tǒng):Embedded System廣義上:凡是不用于通用目的的可編程計(jì)算機(jī)

8、設(shè)備,就可以算是嵌入式計(jì)算機(jī)系統(tǒng)。狹義上:,嵌入式系統(tǒng)是指以應(yīng)用為核心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,對功能、 可靠性、成本、體積和功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。2、簡述采用 RISC 架構(gòu)的 ARM微處理器的特點(diǎn)。a.采用固定長度的指令格式,指令規(guī)整,簡單,基本尋址 2~3 種。b.使用單周期指令,便于流水線操作。c.大量使用寄存器,提高指令的執(zhí)行效率。d.所有的指令都可以根據(jù)前面的執(zhí)行后,決定是否執(zhí)行從而提高指令的執(zhí)行效率。e.

9、可以加載/存儲指令,批量傳輸數(shù)據(jù),以提高數(shù)據(jù)的傳輸效率。3、 選擇嵌入式微處理器時(shí),應(yīng)考慮那些因素?a, 調(diào)查市場上已有的 CPU 供應(yīng)商。b, CPU 的處理速度c,技術(shù)指標(biāo)。d,處理器的低功耗。e,處理器的軟件支持工具。f,處理器是否內(nèi)置調(diào)試工具。g,處理器供應(yīng)商是否提供評估板。h,片內(nèi)存儲容量。4、簡述嵌入式系統(tǒng)的特點(diǎn)。(1)軟硬件一體化,集計(jì)算機(jī)技術(shù)、微電子技術(shù)、行業(yè)技術(shù)于一體;(2)需要操作系統(tǒng)支持,代碼少,執(zhí)行速度快;(3)

10、系統(tǒng)內(nèi)核小、專用性強(qiáng)、系統(tǒng)精簡。(4)高實(shí)時(shí)性的系統(tǒng)軟件(OS)是嵌入式軟件的基本要求。(5)嵌入式軟件開發(fā)要想走向標(biāo)準(zhǔn)化,就必須使用多任務(wù)的操作系統(tǒng)。 (6)嵌入式系統(tǒng)開發(fā)需要開發(fā)工具和環(huán)境。5、畫出當(dāng)前主流嵌入式系統(tǒng)的硬件組成結(jié)構(gòu)框圖。6、 比較 ARM920T 和 ARM720T 的主要異同。ARM9 5 級流水線 獨(dú)立的指令總線哈佛結(jié)構(gòu) ARM7 3 級流水線 數(shù)據(jù)與指令一起 馮·諾依曼結(jié)構(gòu)7、ARM9 指令

11、是幾級流水線,各階段執(zhí)行什么操作?答:ARM9 采用 5 級流水線。取指:從指令 Cache 中讀取指令。譯碼:對指令進(jìn)行譯碼,識別出是對哪個(gè)寄存器進(jìn)行操作并從通用寄存器中讀取操作數(shù)。執(zhí)行:進(jìn)行 ALU 運(yùn)算和移位操作,如果是對存儲器操作的指令,則在 ALU 中計(jì)算出要 訪問的存儲器地址。數(shù)據(jù)緩沖:如果是對存儲器訪問的指令,用來實(shí)現(xiàn)數(shù)據(jù)緩沖功能(通過數(shù)據(jù) Cache)回寫:將指令運(yùn)算或操作結(jié)果寫回到目標(biāo)寄存器中。8、寫出不少于 12

12、類嵌入式產(chǎn)品中的常用接口。UART 接口、SPI 接口、I2C 接口、ADC 和觸摸屏接口、USB 接口、以太網(wǎng)接口、外存接口、LCD 接口、時(shí)鐘接口、PWM 接口、中斷接口、JTAG 接口、VGA接口、音頻接口9、 若允許 FIQ、IRQ 中斷,CPSR 如何設(shè)置?FIQ: CPSR[4:0]=0B10001 IRQ: CPSR[4:0]=0B10010CPSR[5]=0CPSR[6]=0CPSR[7]=010、舉例說明 ARM

13、的各種尋址方式。寄存器尋址:LDR R1,R2寄存器間接尋址:LDR R1,[R2]寄存器偏移尋址:LDR R1,[R2,-R4,LSL#3]立即尋址:LDR,R3,#34多寄存尋址:LDMIA R0,{R1,R3,R4,R5}11、 對比說明 ADR、ADRL 與LDR 的區(qū)別與聯(lián)系。ADR:小范圍的地址讀取偽指令。ADRL:中等范圍的地址讀取偽指令。LDR:大范圍的地址讀取偽指令。位)3 種數(shù)據(jù)類型,可以表示有符號數(shù)和無符號數(shù)。2

14、7、Linux 的主要特點(diǎn)有哪些?開放性、多用戶、多任務(wù)、良好的用戶界面、設(shè)備獨(dú)立性、豐富的網(wǎng)絡(luò)功能、可靠的安全系統(tǒng)、良好的可移植性。28、Linux 常用命令。ls---文件及子目錄名列表cat---連續(xù)顯示cd---改變工作目錄(目錄切換)cp---復(fù)制文件和目錄29、Linux 文件系統(tǒng)目錄樹結(jié)構(gòu)是怎樣的?Linux 文件系統(tǒng)是一個(gè)目錄樹結(jié)構(gòu),最上層是根目錄,其他的所有目錄都是從根目錄出發(fā)而生成的。Linux 下,任何一個(gè)目錄都可

15、以是一個(gè)分區(qū)。因此,在分區(qū)時(shí),必須將一個(gè)分區(qū)安裝在樹根下面。Linux 不僅將分區(qū)安裝為一個(gè)目錄,而且還將所有的硬件設(shè)備都安裝成一個(gè)個(gè)設(shè)備文件。對設(shè)備的操作是通過文件的操作完成的。30、常用的 Bootloader 有那些?(1)vivi(2)RedBoot (3)U-Boot 31、Makefile 和 Make 各實(shí)現(xiàn)什么功能?Makefile 文件內(nèi)容按照規(guī)則,對系統(tǒng)中本目錄下的文件(.c、.s、.o、.h、.lib 等)

16、根據(jù)相互關(guān)系和要求進(jìn)行組織,設(shè)定各自的編譯方法,指定所生成的目標(biāo)。 Makefile 是一種文本格式文件。Make 是 Makefile 文件的解釋器Make 對 Makefile 文件解釋后,生成 Linux 的 shell 命令和 gcc 編譯命令,接著對命令執(zhí)行,最終生成目標(biāo)文件。Makefile 是工程系統(tǒng)編譯批處理文件。32、ARM 有哪兩種工作狀態(tài),怎樣有指令進(jìn)行切換?從 ARM 狀態(tài)切換到 Thumb狀態(tài)有兩種情況 ARM

17、 處理器自動切換到 Thumb 狀態(tài)。(1)執(zhí)行 BX 指令,當(dāng)操作數(shù)寄存器的位[0]為 1 時(shí),則微處理器從 ARM 狀態(tài)切換到Thumb 狀態(tài)。此為主動切換。(2)當(dāng)處理器處于 Thumb狀態(tài)時(shí)發(fā)生異常(如 IRQ、FIQ等),處理完異常后,在異常處理返回時(shí),自動切換到 Thumb狀態(tài)。此為自動切換。從 Thumb 狀態(tài)切換到 ARM狀態(tài)有兩種情況 ARM 處理器自動切換到 Thumb 狀態(tài)。(1)執(zhí)行 BX 指令,當(dāng)操作數(shù)寄存器的

18、位[0]為 0 時(shí),則微處理器從 Thumb 狀態(tài)切換到 ARM狀態(tài)。(2)當(dāng)處理器在 Thumb 狀態(tài)時(shí)發(fā)生異常(如 IRQ、FIQ等),則處理器從 Thumb 狀態(tài)自動切換到 ARM 狀態(tài)進(jìn)行異常處理33、熟悉 ARM9 指令系統(tǒng)、偽指令、偽操作。34、S3C2410 有那些數(shù)據(jù)通信接口?UART 接口 、SPI 接口、IIC接口、JTAG 接口、以太網(wǎng)接口、USB 接口35、簡述 JTAG 借口、串口和以太網(wǎng)接口在一般嵌入式系統(tǒng)

19、調(diào)試中的作用(1) JTAG 一般用于Bootloader 等底層程序的調(diào)試,下載;(2)串口是在已有Bootloader/BIOS 的前提下用于操作系統(tǒng)的調(diào)試,下載;(3)以太網(wǎng)口是在操作系統(tǒng)內(nèi)核已經(jīng)調(diào)試好了的前提下用于應(yīng)用文件的調(diào)試,下載。36、ARM 所有的 37 個(gè)寄存器,分為哪兩大類?31 個(gè)通用寄存器 和 6個(gè)狀態(tài)寄存器。37、在異常發(fā)生后,ARM9TDMI內(nèi)核會做哪些工作?在異常發(fā)生后,ARM7TDMI內(nèi)核會作以下工作:

20、1.在適當(dāng)?shù)?LR 中保存下一條指令的地址2.將 CPSR 復(fù)制到適當(dāng)?shù)腟PSR 中; 3. 將 CPSR 模式位強(qiáng)制設(shè)置為與異常類型相對應(yīng)的值;4.強(qiáng)制 PC 從相關(guān)的異常向量處取指。38、ARM9 處理器有哪些堆棧方式,各堆棧的特點(diǎn)是什么?(1)Full descending 滿遞減堆棧,堆棧首部是高地址,堆棧向低地址增長。棧指針總是指向堆棧最后一個(gè)元素(最后一個(gè)元素是最后壓入的數(shù)據(jù))。(2)Full ascending 滿遞增堆棧

21、,堆棧首部是低地址,堆棧向高地址增長。棧指針總是指向堆棧最后一個(gè)元素(最后一個(gè)元素是最后壓入的數(shù)據(jù))。(3)Empty descending 空遞減堆棧,堆棧首部是低地址,堆棧向高地址增長。棧指針總是指向下一個(gè)將要放入數(shù)據(jù)的空位置。(4)Empty ascending 空遞增堆棧,堆棧首部是高地址,堆棧向低地址增長。棧指針總是指向下一個(gè)將要放入數(shù)據(jù)的空位置。39、比較 Nor Flash 和 Nand flash 存儲器的優(yōu)缺點(diǎn)Nor

22、Flash:讀數(shù)據(jù)速度快,而擦寫速度慢,容量小,價(jià)格高;Nand flash: 讀數(shù)據(jù)速度不如Nor,但擦寫速度快,容量大,價(jià)格低。40、gcc 的整個(gè)編譯過程有哪 4個(gè)步驟?預(yù)處理、編譯、匯編、連接四、編程題:1、編寫一個(gè)匯編程序,在 ARM程序代碼中調(diào)用 Thumb 子程序,并返回 ARM 程序完成其功能。CODE32--------BLX TSUB1-------CODE16TSUB1-------BX R142、將存儲器中 0x

23、30000000 開始的 200 字節(jié)的數(shù)據(jù),傳送到地址從 0x10000000 開始的某接口電路的存儲區(qū)域。STARTLDR R0,=0X30000000LDR R1,=0X10000000MOV R4,#0LKMLDRB R2,[R0],#1STRB R2,[R1],#1ADD R4,R4,#1CMP R4,#200BLNE LKMEND3、編寫一簡單 ARM 匯編程序段,實(shí)現(xiàn) 1+2+…+1000 的累加運(yùn)算。MOV R0,#0M

24、OV R1,#0LKMADD R0,R0,#1ADD R1,R1,R0CMP R0,#1000BLNE LKMEND4、將內(nèi)存中從 0x30000FFF 開始的 100 個(gè)字?jǐn)?shù)據(jù)相加,其結(jié)果存于 R3、R2 中。LDR R0,=0X30000000MOV R4,#0MOV R2,#0MOV R3,#0LKMLDR R5 , [R0],#4ADDS R3, R3,R5ADDC R2, R2,#0ADD R4,R4,#1CMP R4,#10

溫馨提示

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

評論

0/150

提交評論