




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、ARM處理器工作模式實驗一、實驗?zāi)康耐ㄟ^實驗掌握學(xué)會使用 MSR/MR指令實現(xiàn)ARM處理器工作模式的切換,觀察不同 模式下的寄存器,加深對 CPU結(jié)構(gòu)的理解。通過實驗掌握ld中如何使用命令行指定代碼段起始地址。二、實驗設(shè)備硬件:PC機(jī)。軟件:Embest IDE PrO 2004 集成開發(fā)環(huán)境,Windows 98/2000/NT/XP。三、實驗內(nèi)容通過ARM匚編指令,在各種處理器模式下切換并觀察各種模式下寄存器的區(qū)別。 掌握ARM不同模式的進(jìn)入與退出。四、實驗原理1. ARM處理器模式ARM*系結(jié)構(gòu)支持表3-2所列的7種處理器模式。在軟件控制下可以改變模式,外部中斷或異常處理也可以引起模式發(fā)
2、生改變。址碑洋橫壷1耳門WT'1il能杵*序:M'l-.:1常代i Ti怙1氐存?zhèn)騍 HJ,曲育W器1累護(hù)戈權(quán)fpJ紅宵計的林艸佃fi-v -丨將相4杵卒瓏仃衿處理樓式大多數(shù)應(yīng)用程序在用戶模式下執(zhí)行。當(dāng)處理器工作在用戶模式時,正在執(zhí)行的程 序不能訪問某些被保護(hù)的系統(tǒng)資源,也不能改 變模式,除非異常發(fā)生。這允許適當(dāng)編寫操作 系統(tǒng)來控制系統(tǒng)資源的使用。除用戶模式外的其他模式稱為“特權(quán)模 式”,它們可以自由地訪問系統(tǒng)資源和改變模 式。其中的5種稱為“異常模式”,即FIQ(FastInterrupt Request) 、IRQ(lnterruptRequest)、管理(Supervis
3、or)、中止(Abort) 和未定義(Undefined)。當(dāng)特定的異常出現(xiàn)時,進(jìn)入相應(yīng)的模式。每種模式都有某些附加的寄存器,以避 免異常出現(xiàn)時用戶模式的狀態(tài)不可靠。剩下的模式是“系統(tǒng)模式”。僅ARM體系結(jié)構(gòu)V4以及以上的版本有該模式。不能 由于任何異常而進(jìn)入該模式。它與用戶模式有完全相同的寄存器,但它是特權(quán)模式, 不受用戶模式的限制。它供需要訪問系統(tǒng)資源的操作系統(tǒng)任務(wù)使用,但希望避免使用 與異常模式有關(guān)的附加寄存器。避免使用附加寄存器保證了當(dāng)任何異常出現(xiàn)時,都不 會使任務(wù)的狀態(tài)不可靠。2 .程序狀態(tài)寄存器3.2節(jié)提到的程序狀態(tài)寄存器 CPSF和SPSR包含了條件碼標(biāo)志、中斷禁止位、當(dāng)前處理器
4、模式以及其他狀態(tài)和控制信息。每種異常模式都有一個程序狀態(tài)保存寄存器 SPSR當(dāng)異常出現(xiàn)時,SPSR用于保留CPSR勺狀態(tài)。3.本實驗涉及到的Id命令行參數(shù)-Ttext org使用org作為輸出文件的text段的起始地址。org必須是十六進(jìn)制數(shù)。 實驗操作步驟(1) 參考3.1節(jié)實驗A的步驟 建立一個新的工程,命名為 ARMMode(2) 參考3.1節(jié)實驗A的步驟(2)和實驗參考程序編輯輸入源代碼。編輯完畢后, 保存文件為ARMMode。(3) 選擇菜單項Project- Add To Project- Files,或在工程管理窗口右擊選擇快搪菜單命令,打開文件選擇對話框,在工程目錄下選擇剛才建
5、立的源文件 ARMMode。(4) 參考3.1節(jié)實驗A的步驟(4)進(jìn)行相應(yīng)設(shè)置。注意:在鏈接器設(shè)置選項卡的 Link Options 框內(nèi),手動加上“ -Ttext 0x0 ”,即 指定代碼段起始地址為Ox0,如圖3-8所示。(5) 參考3.1節(jié)實驗A的步驟 生成目標(biāo)代碼。在調(diào)試設(shè)置選項卡中的Downioad address文本框內(nèi),輸入的下載地址應(yīng)該與鏈接器設(shè)置中指定的代碼段起始地址相同,以保證程序能夠正常執(zhí)行,如圖3-9所示。(7) 選擇菜單項Debug Remote Connect連接軟件仿真器,執(zhí)行 Download命令下 載程序,并打開寄存器窗口。(8) 單步執(zhí)行,觀察并記錄寄存器R
6、O和CPSRS的變化,以及每次變化后執(zhí)行寄存器賦值后36個寄存器值的變化情況,尤其注意各個模式下R13和R14的值。結(jié)合實驗內(nèi)容和相關(guān)資料,觀察程序運行,通過實驗加深理解ARM各種狀態(tài)下寄存器的使用。理解和掌握試驗后,完成實驗練習(xí)題。SJfFm噲門tiFtt糟罔說g= W T nilhl IJlE 調(diào)込衛(wèi)pRMte IJDOvjjDlnclDryl Gwftttor f toicnM» Untof 11 >OVB* 仙£ DmutaMe lieU ybfwyLMnf aatplOle:rOMFutWe RWBw;j Ad c b u glAnMmddcJUWt flH
7、ww pTtexi 9x(1 o.'diC'tiiuqVM mo . e H 5f<BiMniiinHr.D>0m_n| FSJ«BOf I ftomi*CMBW Dnwia 阮 dDmMEAfl;*軸 EtutrtAn 麗 mu du £ rr眄電 mwdMdtfwWp 、牛 pawBlw4 iddtBBB:>LExeoM unW*i 更網(wǎng)亟Ti亦WT4Ja-fjHoakpnfOHntown-I 廣 DMn cim JCOewftiwi 詢 r«t* i救丨范伽piflieMiyMbt ;五、實驗結(jié)果CurrentRe:R1:R
8、2;R3:R4:R5:R6;R7;R8:R9:R10:R11:R12:館- - -i *! = R13:R1U:R15:SP:LR;PC:-s田ipQxOOQeQQd2exOQoeBoe20X000000030x00000004OxOOQeOQ05BxoeoeQseeQxOQoeeoe? QxooQoeaoe oxeoaeoaeo exOBQOQaOQOkQOOQOQOOSxQOOeOQOQQxOQOOQOOQoxOQOoaeibOkQOOQOOIc oxeooooQdcOxOOOOOaibOxOOQOOaic exOQQOQOdCCPSR: OKoeeoeod2SPSR: OxQOQQOOQ
9、Ore o s I u F實驗參考程序.global Start.textStart:b Reset_Ha ndlerUn defi ned_Ha ndler:b Un defi ned_Ha ndlerb SWI_Ha ndlerP refetch_Ha ndler:b P refetch_Ha ndlerAbort_Ha ndler:b Abort_Ha ndlernop /* Reserved vector */IRQ_Ha ndler:b IRQ_Ha ndlerFIQ_Ha ndler:b FIQ_Ha ndlerSWI_Ha ndler:mov p c, lrReset Handi
10、er:/* read CPSR value */* clear low 5 bit */* set the mode as System mode */* write the data into CPSR */* in itializatio n the register in System mode */mrs rO,c psrbic rO,rO,#Ox1forr rO,rO,#Ox1fmsr cp sr,rOmov rO, #1mov r1, #2mov r2, #3mov r3, #4mov r4, #5mov r5, #6mov r6, #7mov r7, #8mov r8, #9mo
11、v r9, #1Omov r1O, #11mov r11, #12mov r12, #13mov r13, #14mov r14, #15*/* into FIQ modemrs rO,c psrbic rO,rO,#Ox1forr rO,rO,#Ox11 /* set the mode as FIQ mode */msr cp sr,rOmov r8, #16/* in itializatio n the register in FIQ mode */mov r9, #17mov r1O, #18mov r11, #19mov r12, #2Omov r13, #21mov r14, #22
12、*/* into SVC modemrs rO,c psrbic rO,rO,#Ox1forr rO,rO,#Ox13 /* set the mode as SVC mode */msr cp sr,rOmov r13, #23/* ini tialization the register in SVC mode */mov r14, #24*/* in to Abort modemrs rO,c psrbic rO,rO,#Ox1forr rO,rO,#Ox17 /* set the mode as Abort mode */msr cp sr,rO/* in itializati on t
13、he register in Abort mode */mov r13, #25mov r14, #26/* into IRQ modemrs rO,c psrbic rO,rO,#Ox1forr r0,r0,#0x12msr cp sr,r0mov r13, #27mov r14, #28/* into UNDEF modemrs r0,c psrbic r0,r0,#0x1forr r0,r0,#0x1b/* set the mode as UNDEF mode */msr cp sr,r0mov r13, #29/* ini tialization the register in UNDEF mode
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美術(shù)四分鐘技能展示課件
- 電網(wǎng)配電運維工崗位職責(zé)
- 生產(chǎn)經(jīng)營單位安全培訓(xùn)方案
- 安全生產(chǎn)工作 報告
- 裝修安全生產(chǎn)管理制度范文
- 安全幼兒園心得體會
- 河南信陽火災(zāi)事故調(diào)查報告
- 棉紡織企業(yè)安全生產(chǎn)規(guī)程
- 環(huán)氧樹脂產(chǎn)品培訓(xùn)課件
- 美麗鄉(xiāng)村政策培訓(xùn)課件
- 醫(yī)院關(guān)于開展整治重復(fù)醫(yī)療檢查檢驗、違規(guī)收費問題工作實施方案的通知
- 2024年湖北省普通高中學(xué)業(yè)水平合格性考試數(shù)學(xué)試題(原卷版)
- 常州市鐘樓區(qū)社區(qū)專職工作者招聘筆試真題2024
- 2025至2030年中國轎車輪轂造型線模具市場分析及競爭策略研究報告
- 2024年安徽中醫(yī)藥高等??茖W(xué)校招聘考試真題
- 2025屆吉林省長春市朝陽區(qū)英語八下期末學(xué)業(yè)水平測試模擬試題含答案
- 2025年變電站春季安全生產(chǎn)自查報告
- 2025至2030汽車車輪行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 個人信息保護(hù)合規(guī)審計師CCRC-PIPCA含答案
- 供應(yīng)商黑名單管理制度
- 陰道松弛激光治療
評論
0/150
提交評論