ARM嵌入式系統(tǒng)試題及答案_第1頁
ARM嵌入式系統(tǒng)試題及答案_第2頁
ARM嵌入式系統(tǒng)試題及答案_第3頁
ARM嵌入式系統(tǒng)試題及答案_第4頁
ARM嵌入式系統(tǒng)試題及答案_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

本文格式為Word版,下載可任意編輯——ARM嵌入式系統(tǒng)試題及答案

ARM嵌入式系統(tǒng)基礎教程期中開卷

專業(yè):軟件1002班姓名:王世偉學號:04103060(24)

一、嵌入式系統(tǒng)基本概念

1、什么是嵌入式系統(tǒng)?有何特點?

答:所謂嵌入式,實際上是“嵌入式計算機系統(tǒng)〞,的簡稱,它是相對于通用計算機系統(tǒng)而言,重視于發(fā)展獨立的單芯片技術。嵌入式系統(tǒng)是“控制、監(jiān)視或者輔助裝置、機器和設備運行的裝置〞。

特點:(1)嵌入式系統(tǒng)是將先進的計算機技術,半導體技術以及電子技術與各行業(yè)的具體應用相結合的產物,這一點就決定了他必然是一個技術密集,資金密集,高度分散,不斷創(chuàng)新的知識集成系統(tǒng)。(2)系統(tǒng)內核小(3)專用性強(4)系統(tǒng)精簡(5)系統(tǒng)軟件要求(6)嵌入式軟件開發(fā)要走向標準化,需要使用多任務的操作系統(tǒng)。(7)嵌入式系統(tǒng)本身并不具備在其上進行進一步開發(fā)的能力。

2、舉例在你的身邊常見到的嵌入式系統(tǒng)產品,談一談你對“嵌入式系統(tǒng)〞的初步理解。

答:產品有:洗衣機,空調,手機。

嵌入式系統(tǒng)就是內置小計算機系,可以對機器進行智能控制的系統(tǒng)。

3、嵌入式系統(tǒng)的3個基本特點?

答:(1)專用性(2)嵌入型(3)計算機系統(tǒng)

4、什么是嵌入式處理器,嵌入式處理器可以分為幾大類?

答:嵌入式處理機是嵌入式的核心,是控制,輔助系統(tǒng)運行的硬件單元。

分類:四大類(1)嵌入式微處理器(2)嵌入式微控制器(3)嵌入式DSP處理器(4)SoC片上系統(tǒng)

5、廣泛使用的三種類型的操作系統(tǒng)?

答:多道批處理操作系統(tǒng)、分時操作系統(tǒng)以及實時操作系統(tǒng)。

6、列舉常見的4種嵌入式操作系統(tǒng)?說明你對嵌入式操作系統(tǒng)的基本認識,嵌入式

操作系統(tǒng)在嵌入式系統(tǒng)開發(fā)中的必要性。

答:嵌入式Linux、WinCE、VxWorks、μC/OS-II

沒有操作系統(tǒng)的計算機效率十分底下,把操作系統(tǒng)嵌入到計算機中,可以提高

系統(tǒng)的可靠性,開發(fā)效率,縮短了開發(fā)周期。

二、ARM7體系結構

1、ARM是什么樣的公司?

1

答:它是一家微處理器行業(yè)的知名企業(yè),該企業(yè)設計了大量高性能、廉價、耗能低的

RISC處理器。特點是只設計芯片,而不生產。它將技術授權給世界上大量著名的半導體、軟件和OEM廠商,并提供服務。

2、什么是RISC?什么是CISC?

答:RISC是精簡指令集計算機的縮寫。CISC是繁雜指令集計算機的縮寫。

3、舉出2個ARM公司當前應用比較多的ARM處理器核?

答:ARM7系列、ARM9系列、ARM10系列、ARM11系列、intel的Xscale系列和MPCore系列。

4、ARM7TDMI中的T、D、S、I分別表示什么含義?

答:T:支持高密度16位的Thumb指令集

D:支持片上調試

S:ARM7TDMI的可綜合(synthesizable)版本(軟核)I:支持EmbededICE觀測硬件M:支持64位乘法

5、ARM7TDMI處理器采用什么樣的體系結構,其可尋址地址空間多大?

答:ARM處理器使用馮.諾依曼結構

使用單個平面的232個8位字節(jié)地址空間。地址空間可以看作是包含230個32位字,或231個16位半字。

6、ARM7TDMI處理器采用幾級流水線處理,使用何種存儲器編址方式?

答:ARM7TDMI處理器采用三級流水線。

ARM處理器將存儲器看做是一個從0開始的線性遞增的字節(jié)集合。

7、ARM處理器哪幾種狀態(tài)和模式?

答:共7種。

(1)用戶模式(2)快速中斷模式(3)外部中斷模式(4)管理模式(5)數(shù)據(jù)訪問中斷模式(6)系統(tǒng)模式(7)未定義指令模式

8、簡述ARM處理器兩種狀態(tài)的應用特點。

答:ARM狀態(tài):處理器執(zhí)行32位字對齊方式的ARM指令,每條ARM指令長度為32位,指令的功能強大,處理器默認為此狀態(tài)。

Thumb狀態(tài):處理機執(zhí)行16位半字對齊方式的Thumb。每條Thumb指令長度為16位,是ARM指令功能的子集。

9、簡述ARM處理器7種模式的應用特點。

答:(1)用戶模式:ARM處理器正常的程序執(zhí)行模式。

2

(2)快速中斷模式:用于高速數(shù)據(jù)傳輸或通道處理。(3)外部中斷模式:用于通用的中斷處理。(4)管理模式:操作系統(tǒng)使用的保護模式。

(5)數(shù)據(jù)訪問中斷模式:當數(shù)據(jù)或指令預取終止時進入該模式,可用于虛擬存儲及存儲保護。

(6)系統(tǒng)模式:運行具有特權的操作系統(tǒng)任務。

(7)未定義指令模式:當未定義的指令執(zhí)行時進入該模式,可用于支持硬件處理器的軟件仿真。

答:M[4:0]是模式控制位,這些位決定處理器的工作模式。

T位:T位標志控制處理器依照ARM指令集運行,還是依照Thumb指令集運行。

31N30Z29C28V2787I6F5T4M43M32M21M10M010、結合CPSR的結構,說明其中的M[4:0]的作用和T位的作用。

11、結合CPSR的結構,說明其中的I位和F位的作用。

答:I位和F位都是中斷阻止標志位,用來時能或阻止ARM的兩種外部中斷。

31N30Z29C28V2787I6F5T4M43M32M21M10M0

12、簡述ARM7TDMI內部有哪些寄放器及特點。

答:分別為31個通用32位寄放器和6個狀態(tài)寄存器。它們不能在同一用力同時被訪

問,對其的訪問取決于處理器狀態(tài)和處理器模式。

13、結合下表簡述FIQ模式下有哪幾個私有寄放器,這些私有寄放器有何使用特點?

寄放器類別寄放器在匯編中的名稱R0(a1)R1(a2)R2(a3)R3(a4)通用寄放器和程序計數(shù)器R4(v1)R5(v2)R6(v3)R7(v4)R8(v5)R9(SB,v6)R10(SL,v7)R11(FP,v8)R12(IP)R13(SP)R14(LR)R15(PC)狀態(tài)寄放器CPSRSPSR-SPSR_svcR13R14R13_scvR14_svcR8R9R10R11R12R13_abtR14_abtR15CPSRSPSR_abtSPSR_undSPSR_irqSPSR_fiqR13_undR14_undR13_irqR13_irq各模式下實際訪問的寄放器用戶系統(tǒng)管理中止R0R1R2R3R4R5R6R7R8_fiqR9_fiqR10_fiqR11_fiqR12_fiqR13_fiqR14_fiq未定義中斷快中斷

答:FIQ模式下私有寄放器有R8-fiq,R9-fiq,R10-fiq,R11-fiq,R12-fiq,R13-fiq,R14-fiq,和SPSR-fiq。

3

這些寄放器使得在發(fā)生FIQ中斷,處理器不必為保護寄放器而浪費時間,從而加速了FIQ的處理速度。

14、ARM7TDMI中的PC指向的是下一條將要執(zhí)行的指令,這句話對嗎?為什么?

答:不對,PC中的內容總是指向正在“取指〞指令的地址。

15、簡述ARM處理器的CPSR和SPSR的功能、作用和工作方式。

答:CPSR是當前狀態(tài)寄放器,他可以在任何運行模式下被訪問,它包括條件標志位,中斷標志位,當前處理器模式標志位,以及其他的一些相關的控制盒狀態(tài)位。ARM內核就是通過使用CPSR來監(jiān)視和控制內部操作的。

SPSR用于保存CPSR的當前值,從異常退出時則可由SPSR來恢復CPSR。

16、簡述ARM7的內部寄放器R13、R14、R15的主要功能、作用和工作方式。

答:R13作為堆棧指針SP,用于指定堆棧操作出入口的地址。其他6個R13寄放器為堆棧寄放器。為用戶模式和系統(tǒng)模式共用一個。

R14可以用作通用寄放器,也可以用作鏈接寄放器。鏈接寄放器用于保存子程序地址或者返回地址。

R15:程序寄放器,總是指向正在“取指〞的指令

17、什么是計算機的尋址方式?ARM7TDMI有幾種尋址方式?

答:寄放器尋址、馬上尋址、寄放器移位尋址、寄放器間接尋址、基址尋址、多寄放器尋址、堆棧尋址、相對尋址。

18、什么是堆棧?ARM中的堆棧是如何定義和使用的?

答:堆棧都是一種數(shù)據(jù)項按序排列的數(shù)據(jù)結構,只能在一端(稱為棧頂(top))對數(shù)據(jù)項進行插入和刪除。

ARM處理器將RB作為堆棧指針SP,用于保存堆棧的出入口處地址。

19、何謂存儲的“大端模式〞、“小端模式〞?寫出數(shù)據(jù)0x12345678在0x20000000字單元中

“小端模式〞下的存儲細節(jié)。

答:大端模式:依照數(shù)據(jù)的低字節(jié)存放在高地址中的順序進行存儲。小端模式:依照數(shù)據(jù)的高字節(jié)存放在高地址中的順序進行存儲。0x20000000存放0x78,0x20000001存放0x56,0x20000002存放0x340x20000003存放0x12。

20、什么是“字對齊〞和“半字對齊〞?ARM指令必需字對齊存放,Thumb指令必需半字對

齊存放,這句話正確嗎?

答:假使一個字數(shù)據(jù)的訪問存儲地址A能被4整除,即地址的低兩位為零,則為字對齊的存儲器訪問。

假使一個半數(shù)據(jù)的訪問的存儲地址A能被2整除,即地址的最低位為零,則為半字對齊的存儲器訪問,

假使Thumb狀態(tài)下將一個非字對齊的地址寫入PC,則數(shù)據(jù)在寫入PC時第0位被忽略,最終PC的bit0為0,將會產生不可預料的結果。

4

21、ARM指令長度和Thumb指令長度固定位長嗎?位長分別是多少?

答:固定,ARM為一個字(32bit),Thumb為一個半字(16bit)

22、ARM7TDMI中的中斷分為那兩類?在CPU級別如何分別屏蔽?

答:分別為IRQ,F(xiàn)IQ,在cpu級別通過狀態(tài)寄放器CPSR中的I和F位置位來屏蔽。

23、什么是ARM7TDMI中的異常?簡述ARM7TDMI中的復位、IRQ、FIQ和軟中斷等幾種

主要異常的控制原理。

答:異常是指正常的程序被暫時中止的狀態(tài)模式。

復位異常時處理器進行管理模式執(zhí)行相應操作,I和F均為阻止;軟中斷異常也進入管理模式,I位阻止;IRQ異常時進入中斷模式,I位阻止;FIQ異常進入快速中斷模式,I和F位均為阻止,都是通過異常向量表。

24、簡述ARM7TDMI中產生復位、IRQ、FIQ和軟中斷等幾種主要異常的條件,這幾種

異常會使ARM分別進入到哪種模式?ARM核響應異常的過程,以及這幾種異常地返回指令是什么?答:復位異常:當nRESET信號被拉低時,ARM處理器放棄正在執(zhí)行時的指令,等到nRESET下信號再次變高時,ARM執(zhí)行以下操作:(1)強制M[4:0]復為10011,進入管理模式;(2)將CPSR中的I和F置位;(3)將CPSR中的T位清零(4)強制pc從地址0x00開始對下一條指令進行取值;(5)返回ARM狀態(tài)并回復執(zhí)行,無返回指令。IRQ:只有CPSR中相應的I位被清除時,才可能發(fā)生IRQ異常,進入中斷模式,內核自動作如下處理:(1)將異常處理的返回地址保存到R14-irq中(2)用戶模式的CPSR被保存到SPSR-irq中;(3)修改CPSR,阻止新的IRQ中斷產生,進入ARM狀態(tài),IRQ模式(4)置IRQ模式下的IRQ異常處理程序的中斷入口地址向量。地址0x00000018。返回指令:subspc,R14-irq,#4

FIQ:只有CPSR中的想用下位被清零時,才發(fā)生下IQ異常進入FIQ模式,F(xiàn)IQ中的8個專用寄放器用來保護中斷地址。其返回指令:subspc,R14-fiq,#4

軟中斷swi:用于進入“管理模式〞,尋常用于請求一個特定的管理函數(shù)。返回指令:movspc,R14-svc

三、ARM7TDMI指令系統(tǒng)

1、ARM7TDMI支持哪幾種指令集,各有什么特點?

答:支持ARM指令集和Thumb指令集兩種。

ARM指令集:指令32位,效率高,代碼密度低,所有ARM指令都是可以有條件執(zhí)行的。

Thumb指令集:指令16位,代碼密度較高,Thumb指令僅有一條指令具備條件執(zhí)行功

2、ARM匯編指令的基本格式?

答:基本指令:

在ARM指令集中,每條指令占有4個字節(jié),即指令長度為32位。

5

3、何謂ARM指令的條件碼?默認的條件碼是什么?舉例說明ARM指令的條件碼對指

令執(zhí)行的影響。

答:條件碼是依照指定條件執(zhí)行的操作條件:默認條件碼是AL(無條件執(zhí)行)例子:比較兩值大小,并進行相應加1處理:

cmpR0,R1;ADDHIR0,R0,#1;ADDLSR1,R1,#1

4、解釋何為“滿堆棧〞、“空堆棧〞、“遞增堆棧〞和“遞減堆棧〞?ARM指令系統(tǒng)中是如何支

持的?

答:滿堆棧:堆棧指針指向最終壓入棧的有效數(shù)據(jù)項??斩褩#憾褩V羔樦赶蛳乱粋€待壓入數(shù)據(jù)的空位置。

遞增堆棧:在向堆棧寫入數(shù)據(jù)后,堆棧指針的值變大,即向高地址方向生長。遞減堆棧:在想堆棧寫入數(shù)據(jù)后,堆棧指針的值變小,即向低地址方向生長。ARM指令支持四種對戰(zhàn)類型:滿遞增,空遞增,滿遞減,空遞減。

5、請說明MOV指令與LDR加載指令的區(qū)別和用途。

答:LDR的操作數(shù)既可以來源于寄放器也可以來源于存儲器,MOV的操作數(shù)能來源于寄放器。

LDR指令從內存中讀取數(shù)據(jù)放入寄放器,用于對內存變量和數(shù)據(jù)的訪問、查表、

程序的跳轉、外圍部件的控制操作等;MOV指令將8位馬上數(shù)或寄放器傳送到目標寄放器(Rd),可用于移位運算等操作。

6、解釋B指令、BL指令與BX指令的功能區(qū)別?簡述他們的應用場合。

答:B指令:是分支指令,跳轉到標號指定的地址程序。Bl指令:帶連接的分支指令,跳轉到指定的地址程序,同時還將程序計數(shù)器PC的值保存到LR寄放器中。BX指令:帶狀態(tài)切換的分支指令,跳轉到Rm指定的地址處執(zhí)行程序,根據(jù)跳轉地址的最低位來切換處理器狀態(tài)。B/BL指令跳轉范圍限制在當前指令的+-32MB地址內。

7、解釋SWI(軟中斷)指令的執(zhí)行過程和典型應用。

答:SWI指令用于產生軟中斷,從而實現(xiàn)先從用戶模式到管理模式的變換。在切換時,CPSR寄放器內容將保存到管理模式的SPSR中,同時程序跳轉到SWI異常向量入口處。SWI用于系統(tǒng)功能調用。

8、ARM匯編指令條件碼如下表,分析下兩段程序片斷的功能,寫出其等價的類C語

言功能描述:條件助記符EQNECS/HSCC/LOMI

標志Z=1Z=0C=1C=0N=1相等不相等含義無符號數(shù)大于或等于無符號數(shù)小于負數(shù)6

PLVSVCHILSGELTGTLEALNV

N=0V=1V=0C=1,Z=0C=0,Z=1N=VN!=VZ=0,N=VZ=1,N!=V任何任何正數(shù)或零溢出沒有溢出無符號數(shù)大于無符號數(shù)小于或等于有符號數(shù)大于或等于有符號數(shù)小于有符號數(shù)大于有符號數(shù)小于或等于無條件執(zhí)行(指令默認條件)從不執(zhí)行(不要使用)程序片斷1:

CMPR0,R1ADDHIR0,R0,#1ADDLSR1,R1,#1

程序片斷2:

CMPR0,#10CMPNER1,#20ADDNER0,R0,R1

答:if(R0>R1)R0++;elseR1++;

if(R0!=10)if(R1!=20)R0+=R1;

9、結合ARM7TDMI結構中的流水線結構,解釋IRQ中斷返回指令:

SUBSPC,R14_irq,#4的原理

答:ARMTTDMI采用三級流水線結構,PC指向正在取值的指令,產生IRQ時,保存在R14-IRQ中的是PC的值,在返回時為保證正確性應返回到PC-4即中斷前“正在譯碼〞的指令地址。所以返回指令為:subspc,R14-irq,#4;

四、LPC2000系列ARM硬件資源原理與使用

1、LPC2000系列器件有幾種常見的封裝形式和其封裝特點?

答:常見的封裝有64腳封裝,144腳封裝

特點:功耗低,有多個32位定時器,多達9個外部中斷,16K字節(jié)靜態(tài)RAM,

1/128/256k字節(jié)片F(xiàn)lash存儲器,128為寬度接口加速器,4路10位ADC或8路10位ADC(64腳和144腳封裝),46或76~112個GPIO(64腳和144腳封裝)。

2、簡要說明一下LPC2000系列器件片內存儲器的特點?

7

答:片內存儲器分為片內Flash和片內靜態(tài)RAM。片內Flash通過128位寬度的總線與ARM內核相連,具有很高的速度,特有的存儲器加速功能,可以將程序直接放在Flash上運行。SRAM支持8位、16位和32位的讀寫訪問。

3、在LPC2000系列ARM芯片中,內Flash有哪幾種寫入方式?

答:(1)使用JTAG仿真/調試器,通過芯片的JTAG借口下載程序。(2)使用在系統(tǒng)編程技術,通過UART0接口下載程序。

(3)使用在應用編程技術,在用戶程序運行時對Flash進行擦出和/或編程操作,實現(xiàn)數(shù)據(jù)的存儲和固件的現(xiàn)場升級。

4、ARM寄放器PC、CPSR、SPSR分別有什么用?

答:PC是CUP中的程序計數(shù)器,內容總是指向正在“取指〞指令的地址。CPSR是當前程序狀態(tài)寄放器,用來監(jiān)視和控制內部操作的。

SPSR是物理狀態(tài)寄放,用于保存CPSR的當前值,從異常退出時則由它來恢復CPSR。

5、什么是ARM處理器的異常?ARM處理器是如何處理異常的?

答:異常:在執(zhí)行正常程序過程中,當發(fā)生某種異常事件或某種外部請求時,處理器就暫停執(zhí)行當前的程序,進入異常模式。如何處理異常:

1)保存執(zhí)行狀態(tài):將CPSR復制到發(fā)生的異常模式下的SPSR中。

2)模式切換:將CPSR模式位強制設置為與異常類型相對應的值,同時處理器進入到ARM執(zhí)行模式,阻止所有IRQ中斷,當進入FIQ快速中斷模式時阻止FIQ中斷。

3)保存返回地址:將下一條指令的地址(被打斷程序)保存在LR(異常模式下LR_excep)中。

4)跳入異常向量表:強制設置PC的值為相應異常向量地址,跳轉到異常處理程序中。

6、什么是ARM體系結構中的異常向量表?在應用中有何作用?

答:處理器規(guī)定了異常處理程序入口的地址區(qū)間,并規(guī)定了地址的存放順序,一般稱為異常向量表。

在異常處理過程中,可以加快異常服務的響應速度。

7、在ARM體系結構中,異常向量表中存放的是什么內容?

答:異常處理程序的程序入口地址。

8、在ARM體系結構中,異常向量表中0x0014(保存字)單元存放的是什么內容?有何

用途?

答:保存的異常入口,早期的ARM結構中會被用到,而在ARM7中是保存的,以確保軟件能與不同的ARM結構兼容。而在有些處理器芯片

溫馨提示

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

評論

0/150

提交評論