版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、ARM嵌入式系統(tǒng)設計參考復習題(2017-11)主要知識點:第一章1.嵌入式系統(tǒng):“以應用為中心,以計算機技術為基礎,軟硬件可裁減,適用于應用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)”根據(jù)應用的要求,沿著“體積小、低功耗、高可靠”方向發(fā)展,對運算速度、存儲容量沒有統(tǒng)一要求。三要素:嵌入、專用、計算機。2. 嵌入式系統(tǒng)有哪些部分組成?一般由硬件層,中間層(HA,BSP和軟件層組成。粗略劃分:嵌入式處理器、外圍設備、嵌入式操作系統(tǒng)(可選)、嵌入式應用軟件稍細劃分:嵌入式處理器、外圍設備、驅動程序、嵌入式操作系統(tǒng)、應用接口、嵌入式應用軟件3. 嵌入式系統(tǒng)特點:系統(tǒng)內核小專用性強
2、系統(tǒng)精簡高實時性。4. 嵌入式處理器的分類:嵌入式微處理器(MPU:就是和通用計算機的處理器對應的CPU可以認為是“增強型”通用微處理器。嵌入式微控制器(MCU:就是將整個計算機系統(tǒng)的主要硬件集成到一塊芯片中,芯片內部集成ROM/EPROMRAM總線,總線邏輯、定時/計數(shù)器、Watchdog、I/O、串行口、A/D等各種必要功能和外設。嵌入式DSP處理器(DSP:是專門用于信號處理方面的處理器,在系統(tǒng)結構和指令算法方面進行了特殊設計,具有很高的編譯效率和指令執(zhí)行速度。嵌入式片上系統(tǒng)(SOC:是追求產(chǎn)品系統(tǒng)最大包容的集成器件。絕大多數(shù)系統(tǒng)構件都在一個系統(tǒng)芯片內部。第二章1. ARM是Advanc
3、eRISCMachine的縮寫,既可以認為是一個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字。2. 在ARM9TDMI"9TDMI的含義:9:采用版本為9的ARMt處理器T:支持16為壓縮指令集ThumbD支持片上Debug稱為D變種M:內嵌硬件乘法器Multiplier,稱為M變種I:嵌入式ICE,支持片上斷點和調試,稱為I變種。3. ARMCortex-A8處理器的三種工作狀態(tài):ARM犬態(tài),處理器執(zhí)行32位的字又t齊的ARMf旨令;Thumb犬態(tài):處理器執(zhí)行16位的半字對齊的Thum酎旨令和ThumbEE犬態(tài):執(zhí)行16位的半字對齊的Thum比旨令集變種
4、。8種工作模式:用戶模式(usr)、快速中斷模式(fiq)、外部中斷模式(irq)、管理模式(svc)、中止模式(abt)、未定義模式(und)、系統(tǒng)模式(sys)和監(jiān)控模式(morj。特權本M式:除usr之外的其它的7種工作模式都是特權模式。異常模式:除usr和sys之外的其它的6種工作模式都是持權模式。4. ARMA8寄存器分成哪幾類?各類有哪些寄存器?寄存器LR有什么用途?分兩類:33個通用寄存器和7個狀態(tài)寄存器。33個通用寄存器:R0-R15;R13_svc、R14_svc;R13_abt、R14_abt;R13_undR14_und;R13_irq、R14_irq;R8_fiq-R1
5、4_fiq、R13_monR14_mon。7個狀態(tài)寄存器:CPSRSPSR_svcSPSR_abtSPSR_undSPSR_irq、SPSR_fiq和SPSR_monLR(R14):也稱作子程序鏈接寄存器或鏈接寄存器LR,當執(zhí)行BL子程序調用指令時,R14中得到R15(程序計數(shù)器PQ的備份。其他情況下,R14用作通用寄存器。與之類似,當發(fā)生中斷或異常時,對應的分組寄存器R14_svc、R14_irq、R14_fiq、R14_abt、R14_und和R14_morffi來保存R15的返回值。各位是意義:N:正負號/大小標志位0表示:正數(shù)/大于;1表示:負數(shù)/小于Z:零標志位0表示:結果不為零;1
6、表示:結果為零C:進位/借位/移出位0表示:未進位/借位/移出0;1表示:進位/未借位/移出1V:溢出標志位0表示:結果未溢出;1表示:結果溢出I、I和F:irq和fiq中斷允許和禁止控制位,=1禁止irq或fiq中斷=0允許irq或fiq中斷。T:控制(標志)位反映處理器的運行狀態(tài)T=1時,程序運行于Thumb犬態(tài),T=0時,程序運行于ARM犬態(tài)。TM控制位一一決定了處理器的運行模式模式TM4:0用戶10000快中斷10001中斷10010管理10011中止10111未定義11011系統(tǒng)11111監(jiān)控10110異常響應過程(進入異常)執(zhí)行哪些操作。保存返回地址、保存當前狀態(tài)寄存器CPSR勺內
7、容、設置當前狀態(tài)寄存器CPS辭的相應位、轉去執(zhí)行中斷處理程序。第三章指令中的第二操作數(shù)“operand2”有哪些具體形式:三種:寄存器、寄存器移位、8位位圖立即數(shù)。2.對于ARM的變址尋址方式,有基地址和偏倚地址兩部分組成。(1)基地址可以是哪些寄存器?(2)偏移地址可以有哪些形式?(3)總地址的計算方法有哪些?怎么表示?(4)變址尋址應用于哪些指令?(1)基地址可以是通用寄存器R0-R15中的任意一個。(2)偏移地址可以有三種形式:12位立即數(shù)、寄存器、寄存器移位。(3)總地址的計算方法有三種:(4)前變址(前索引):先基址+偏址,生成操作數(shù)地址,做指令指定的操作。如:LDRRd,Rn,#m
8、后變址模式(修改基址寄存器):基址寄存器不加偏移作為操作數(shù)地址。完成指令操作后,用(基址+偏移)的值修改基址寄存器。如:LDRRd,Rn,#m自動變址模式(修改基址寄存器):先基址+偏移,生成操作數(shù)地址,做指令指定的操作。然后自動修改基址寄存器。如:LDRRd,Rn,#m!(5)有4條指令:LDR、STRLDMSTM(6) 3.ARM有尋址方式:立即尋址、寄存器尋址、寄存器間接尋址、變址尋址、多寄存器尋址、堆棧尋址、塊拷貝尋址、相對尋址(7) 4.ARM偽指令:ADR小范圍的地址t取偽指令、ADRL中等范圍的地址讀取偽指令、LDR大范圍的地址讀取偽指令、NOP空操作偽指令。5. ARM指令集分
9、為哪幾種類型?各類有哪些指令(可以不考慮協(xié)處理器指令)。五類:存器訪問指令、數(shù)據(jù)處理指令、跳轉指令、協(xié)處理器指令、雜項指令。存儲器訪問指令:單存儲器存取指令,多存儲器存取指令。數(shù)據(jù)處理指令:算術運算指令,邏輯運算指令,數(shù)據(jù)傳送指令,比較指令,測試指令。跳轉指令:B跳轉指令BL帶鏈接的跳轉指令BX帶狀態(tài)切換的跳轉指令BLX帶鏈接和狀態(tài)切換的跳轉指令。雜項指令:程序狀態(tài)寄存器操作指令,中斷操作指令。6. ARM有哪些條件碼?各個條件碼的符號及意義。(比較常用的應該會)。條件碼00000001001000110100010101100111助記符EQNECS/HSCC/LOMIPLVSVC含義相等不
10、相等無符號數(shù)大于或等于無符號數(shù)小于負數(shù)非負數(shù)溢出沒有溢出標志Z=1Z=0C=1C=0N=1N=0V=1V=01000HI無符號數(shù)大于C=1且Z=01001LS無符號數(shù)小于或等于C=0或Z=11010GE有符號數(shù)大于或等于N=V1011LT有符號數(shù)小于N!=V1100GT有符號數(shù)大于Z=0且N=V1101LE有符號數(shù)小于或等于Z=1或N!=V1110AL無條件執(zhí)行arm采用32位架構,基本數(shù)據(jù)類型4種,填空ByteHalfWordWord81632DoubleWord64位字節(jié)半字2字節(jié)對齊字4雙字8內核工作模式,cortexa8,(課本8種)8種usrfiqirqsvc特權模式abt數(shù)據(jù)訪問中
11、止模式und未定義指令中止模式sysmon監(jiān)控模式,可在安全模式和非安全模式切換8個模式中,除用戶模式usr,其他7個全部特權模式7個特權模式中,除了系統(tǒng)模式,剩下6個都屬于異常模式異常模式:快速中斷請求模式(FIQ)外部中斷請求模式(IRQ特權模式(SVC數(shù)據(jù)訪問終止模式(abt) 保護用于高速數(shù)據(jù)傳輸用于通常的中斷處理當數(shù)據(jù)或指令預取終止時進入該模式,可用于虛擬內存及存儲未定義指令中止模式(und)用于支持硬件協(xié)處理器的軟件仿真監(jiān)控模式(mo。Arm微處理器工作模式,分別為:1. 用戶模式(Usr)2. 快速中斷模式(FIQ)3. 外部中斷模式(IRQ)4. 特權管理模式(SVC用于正常執(zhí)
12、行程序用于高速數(shù)據(jù)傳輸用于通常的中斷處理操作系統(tǒng)使用的保護模式(高權限),復位和軟件中斷進入5.數(shù)據(jù)訪問中止模式(abt)當數(shù)據(jù)或指令預取終止時進入該模式,可用于虛擬內存及存儲保護6. 系統(tǒng)模式(sys)7. 未定義指令終止模式8. 監(jiān)控模式(mor),運行擁有特權的操作系統(tǒng)任務und)用于支持硬件協(xié)處理器的軟件仿真(浮點、微量運算)可在安全模式和非安全模式切換異常模式優(yōu)先級如下:1(最局)SVC復位2abt數(shù)據(jù)中止3FIQ(快速中斷請求)4IRQ(外部中斷請求)5abt預取指令中止6(最低)und未定義指令,SWI軟件中斷arm7為止使用流水線3級取指令,從寄存器裝載一條指令譯碼為下一周期準
13、備控制信號執(zhí)行處理指令,結果寫會寄存器arm9,五級流水線3級+緩沖/數(shù)據(jù)回寫arm106級流水線寄存器R13用作數(shù)據(jù)棧指針,記作SP。寄存器R14稱為鏈接寄存器,記作LR,它用于保存子程序的返回地址。寄存器R15是程序計數(shù)器,記作PC,不能用作其它用途。CPSR當前程序狀態(tài)寄存器理解CPSRB式,里面標志位含義等等跳轉指令,bl跳轉32mb范圍,跳轉pc,如ldrbpc,.可以4GB范圍AAPC即準子程序調用,用R0-R3存儲參數(shù),R0存返回值I2C總線,通過串行數(shù)據(jù)線(SDA和串行時鐘線(SCL)在連接到總線的器件間傳遞信息。傳輸時包含尋址和數(shù)據(jù)信息,每個字節(jié)8位,每個字節(jié)后必須跟一個響應
14、位。A_D轉換結束的表達式是!(TSAADCCON0&(1<<15)獲取AD轉換結果的表達式是(TSDATX0&0xfff)LCD16M色的像素顏色的數(shù)據(jù)格式是怎樣的4個字節(jié),前3個字節(jié)分別為紅,綠,藍三原色的色號。64K色的數(shù)據(jù)則用16位表示一個像素的顏色,三原色配比是5/6/5。android操作系統(tǒng)的源碼結構分為3個部分:核心工程(CoreProject),擴展工程(ExternalProject),包(Package),應用程序(Application)在package/apps目錄中。二、簡答題:1、Cortex-A8是ARMv7-A架構的,共有哪幾種工作
15、模式,其中哪幾種屬于異常模式?usr用戶模式fiq快速中斷模式irq外部中斷模式svc特權模式abt數(shù)據(jù)訪問中止und未定義指令中止模式sys系統(tǒng)模式mon監(jiān)控模式,安全模式切換8種工作模式,除用戶模式,都是特權模式特權模式里面,除系統(tǒng)模式,其他都是異常模式。即異常模式6種:Fiq快速中斷異常模式Irq外部中斷請求模式svc特權模式abt數(shù)據(jù)訪問中止模式und未定義指令中止模式mon監(jiān)控模式2.寄存器CPSRSPSR的功能各是什么?CPSR目前程序狀態(tài)寄存器)在任何處理器模式下被訪問。它包含了條件標志位、中斷禁止位、當前處理器模式標志以及其他的一些控制和狀態(tài)位。中斷時,保存當前程序狀態(tài),處理器
16、模式等等。每一種處理器模式下都有一個專用的物理狀態(tài)寄存器,稱為SPSR(備份程序狀態(tài)寄存器)。當特定的異常中斷發(fā)生時,這個寄存器用于存放當前程序狀態(tài)寄存器的內容。在異常中斷退出時,可以用SPSR后恢復CPSRCPS嘴式CPS略式如下所示。SPS麗CPS略式相同。31302928272676543210NZCVQIT1:0JIFTM4M3M2M1M0*條件標志位*Nn=1表示運算結果為負數(shù),n=0表示結果為正數(shù)或零。zz=1表示運算的2果為零;z=0表示運算的結果不為零。C進位,借位標志VV=1表示符號位溢出JThumbE歌態(tài)位M4-0模式位3、簡述S5PV210外部中斷處理和響應的流程。中斷發(fā)
17、生后,處理:通過堆棧和spsr寄存器,入棧保存現(xiàn)場,設置cpsr模式位,處理器模式變成外部中斷模式。外部中斷中斷發(fā)生后,VIC0IRQSTATUS1應位置改變,中斷向量地址VIC0ADDRESS相應位改變,pc跳到向量表的特定地址,從該地址開始執(zhí)行,跳轉調用我們寫的中斷處理函數(shù),執(zhí)行中斷處理程序。/*4.使能向量地址通道16中斷*/rVIC0INTENABLE|=(1<<16);/*5.向量地址通道16選擇為IRQ中斷*/rVIC0INTSELECT|=(1<<16);裝中斷服務函數(shù)至UVIC0VECTADDR16g制轉換提取EINT16_31_IRQHandler函數(shù)
18、地址*/rVIC0VECTADDR16=(unsignedint)EINT16_31_IRQHandler;voidEINT16_31_IRQHandler(void)。三、編程應用題:(閱讀分析,加注釋、填空與編程)1 .將存儲器中0x400000開始的200字節(jié)的數(shù)據(jù),傳送到0x400800開始的區(qū)域。解:MOVRQ#0x400000LDRR1,=0x400800MOVR7#200LP:LDRBR2,R0,#1STRBR2R1,#1SUBSR7R7,#1BNELPHERE:BHERE2 .編寫一程序,查找存儲器從0x400000開始的100個字中為0的數(shù)目,將其結果存到0x400190中。
19、解:MOVR0#0x400000MOVR1,#0MOVR7,#100LP:LDRR2,R0,#4CMPR2,#0BNENEXTADDR1,R1,#1NEXT:SUBSR7,R7,#1BNELPSTRR1,R0HERE:BHERE|3 .編寫一簡單ARM匚編程序段,實現(xiàn)1+2+-+100的運算。MOVR2,#100MOVR1,#0LOOPADDR1R1,R2;R1中為累加和SUBSR2,R2,#1;R2控制循環(huán)BNELOOP5 .用ARMT編語言和C語言寫一個初始值為0x6000000的延時函數(shù)。匯編的為:delay:ldrr0,=0x6000000temp:subr0,r0,#1cmpr0,#
20、0bnetempbxlr上面程序參考c語言的寫法voiddelay()volatileinti,j;for(i=0;i<0x6000000;i+);6 .請對如下程序解釋按k2按鍵,松手,led閃爍#include""#include""#definerGPJ2CON*(volatileunsignedlong*)0xe0200280)#definerGPJ2DAT*(volatileunsignedlong*)0xe0200284)voidkey_init()(rGPH2CON&=(0xf<<0);qunum,2.sectio
21、n.text.global_startstart:Reset_Handler:movr0,#0;/*setupthethreeparameters*/movr1,#3movr2,#2blarithfunc;/*callthefunction*/stop:bstop;#*;#*AccordingR0valudetoexecutethecode*arithfunc:;/*labelthefunction*/cmpr0,#num;/*Treatfunctioncodeasunsignedinteger*/bhsDoAdd;/*Ifcodeis>=2thendooperation0.*/adrr
22、3,JumpTable;/*Loadaddressofjumptable*/ldrpc,r3,r0,LSL#2;/*Jumptotheappropriateroutine*/JumpTable:.wordDoAdd.wordDoSubDoAdd:addr0,r1,r2;/*Operation0,>1*/bxlr;/*Return*/DoSub:subr0,r1,r2;/*Operation1*/bxlr<實驗二>GPIOLED接口控制實驗(LED顯示燈控制)控制實驗平臺的發(fā)光二極管LED1,LED2,LED3,LED4使它們有規(guī)律的點亮和熄滅,具體順序如下:LED1亮,LED
23、2亮->LED3亮,LED4亮,LED1滅->LED2滅->LED3滅->LED4滅->全亮->全滅,如此反復/*name:*func:led_onturnontheledsonebyone*/*voidled_on(void)inti,nOut;nOut=0xF0;rGPFDAFnOut&0x70;for(i=0;i<100000;i+);rGPFDAT=nOu&0x30;for(i=0;i<100000;i+);rGPFDAT=nOut&0x10;for(i=0;i<100000;i+);rGPFDAT=nOut
24、&0x00;for(i=0;i<100000;i+);/*name:* func:led_offturnofftheledsonebyone*/voidled_off(void)inti,nOut;nOut=0;rGPFDAT=0;for(i=0;i<100000;i+);rGPFDAT=nOut|0x80;for(i=0;i<100000;i+);rGPFDAT|=nOut|0x40;for(i=0;i<100000;i+);rGPFDAT= nOut | 0x20; for(i=0;i<100000;i+);rGPFDAT= nOut | 0x10;
25、for(i=0;i<100000;i+);/*name:* func:ledonoffturnonthe4ledsandthenturnoffthe4leds*/voidled_on_off(void)inti;rGPFDAT=0;for(i=0;i<100000;i+);rGPFDAT=0xF0;for(i=0;i<100000;i+);/*name:* func:led_testi/ocontroltest(led)*/voidled_test(void)rGPFCON=0x;2n");實驗三LED數(shù)碼管綜合實驗#include""#include""* defineU8unsignedchar/*0123450xc0,0xf9,0xa4,0xb0,0x99,/*89ABCD0x80,0x90,0x88,0x83,0xc6,unsignedcharseg7table16=0x92,0x82,0xf8,0xa1,0x86,0x8e,67*/EF*/;/*.n");Gpio_init();flag=1;while(flag!=0)&&(lp<6)for(j=0;j<lp;j+)*(U8*)0x)=(0x01&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 胎盤miRNA與表觀遺傳調控-洞察分析
- 網(wǎng)絡直播產(chǎn)業(yè)的社會影響-洞察分析
- 疫情對經(jīng)濟影響研究-洞察分析
- 《休克的救護流程》課件
- 內容驅動的辦公文化變革與創(chuàng)新
- 信息安全教育在學校信息化建設中的重要性
- 辦公用品行業(yè)的數(shù)字化營銷策略及效果評估
- 冰天雪地中的科技傳奇故事集
- 辦公環(huán)境中如何有效開展心理輔導
- 2025電路維修合同范本
- 區(qū)域檢驗中心項目構建書-定稿
- 安裝手電筒基礎工業(yè)工程課程設計
- 08S305-小型潛水泵選用及安裝圖集
- 橋梁施工技術簡介
- 人體生物電脈沖療法
- 具有明顯首過消除的藥物
- 幼兒園采購索證索票制度
- 邁達斯橋梁建模
- 幼兒園中班個人工作計劃幼兒園中班個人工作計劃范例2021.doc
- 常見繁體字的簡化表 香港人簡體字教學
- 《教育經(jīng)濟學》試題及答案
評論
0/150
提交評論