ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版_第1頁
ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版_第2頁
ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版_第3頁
ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版_第4頁
ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程習(xí)題答案清華大學(xué)出版社最詳細(xì)版《ARM嵌入式系統(tǒng)結(jié)構(gòu)與編程》習(xí)題答案第一章緒論國內(nèi)嵌入式系統(tǒng)行業(yè)對(duì)“嵌入式系統(tǒng)”的定義是什么?如何理解?答:國內(nèi)缺入式行業(yè)一個(gè)普遍認(rèn)同的定義是:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟碩件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能,可靠性,成本,體積,功耗嚴(yán)格要求的專業(yè)計(jì)算機(jī)系統(tǒng)。從這個(gè)定義可以看出戦入式系統(tǒng)是與應(yīng)用緊密結(jié)合的,它具有很強(qiáng)的專用性,必須結(jié)合實(shí)際系統(tǒng)需求進(jìn)行合理的剪裁利用。因此有人把嵌入式系統(tǒng)比作是一個(gè)針對(duì)特定的應(yīng)用而“量身定做”的專業(yè)計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)是從何時(shí)產(chǎn)生的,簡述其發(fā)展歷程。答:從20世紀(jì)70年代單片機(jī)的出現(xiàn)到目前各式各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,I獲入式系統(tǒng)己經(jīng)有了30多年的發(fā)展歷史。嵌入式系統(tǒng)的出現(xiàn)最初是基于單片機(jī)的。Intel公司1971年開發(fā)出第一片具有4位總線結(jié)構(gòu)的微處理器4004,可以說是嵌入式系統(tǒng)的萌芽階段。80年代初的8031是單片機(jī)歷史上值得紀(jì)念的一頁。20世紀(jì)80年代早期,出現(xiàn)了商業(yè)級(jí)的“實(shí)時(shí)操作系統(tǒng)內(nèi)核”,在實(shí)時(shí)內(nèi)核下編寫應(yīng)用軟件可以使新產(chǎn)品的沿著更快,更節(jié)省資金。20世紀(jì)90年代實(shí)時(shí)內(nèi)核發(fā)展為實(shí)時(shí)多任務(wù)操作系統(tǒng)。步入21世紀(jì)以來,恢入式系統(tǒng)得到了極大的發(fā)展。在硬件上,MCU的性能得到了極大的提升,特別是ARM技術(shù)的出現(xiàn)與完善,為嵌入式操作系統(tǒng)提供了功能強(qiáng)大的硬件載體,將嵌入式系統(tǒng)推向了一個(gè)嶄新的階段。當(dāng)前最常用的源碼開放的I校入式操作系統(tǒng)有哪些,請舉出兩例,并分析其特點(diǎn)。答:主要有嵌入式Linux和嵌入式實(shí)時(shí)操作內(nèi)核uC/OS-II嵌入式Linux操作系統(tǒng)是針對(duì)嵌入式微控制器的特點(diǎn)而量身定做的一種Linux操作系統(tǒng),包括常用的嵌入式通信協(xié)議和常用驅(qū)動(dòng),支持多種文件系統(tǒng)。主要有以下特點(diǎn):源碼開放,易于移植,內(nèi)核小,功能強(qiáng)大,運(yùn)行穩(wěn)定,效率高等。uC/OS是源碼工卡的實(shí)時(shí)嵌入式系統(tǒng)內(nèi)核,主要有以下特點(diǎn):源碼公開,可移植性強(qiáng),可固化,可剪裁,占先式,多任務(wù),可確定性,提供系統(tǒng)服務(wù)等。舉例說明嵌入式設(shè)備在工控設(shè)備中的應(yīng)用。答:由于工業(yè)控制系統(tǒng)特別強(qiáng)調(diào)可靠性和實(shí)時(shí)性,“量身定做”的嵌入式控制系統(tǒng)恰能滿足工業(yè)控制的需求。例如:工業(yè)過程控制,數(shù)字控制機(jī)床,電網(wǎng)設(shè)備監(jiān)測,電力口動(dòng)控制系統(tǒng),石油化工監(jiān)控等。嵌入式技術(shù)的發(fā)展趨勢有哪些?答:未來嵌入式系統(tǒng)的發(fā)展趨勢有:1.隨著信息化與數(shù)字化的發(fā)展,嵌入式設(shè)備進(jìn)行網(wǎng)絡(luò)互聯(lián)是未來發(fā)展的趨勢。2.優(yōu)化恢入式系統(tǒng)軟硬件內(nèi)核,提高系統(tǒng)運(yùn)行速度,降低功耗和硬件成本。3.指令集的并行計(jì)算技術(shù)將引入嵌入式微處理器。4.憐入式微處理器將會(huì)向多核技術(shù)發(fā)展。5.嵌入式技術(shù)將引領(lǐng)信息時(shí)代。第2章ARM技術(shù)與ARM體系結(jié)構(gòu)簡述ARM處理器內(nèi)核調(diào)試結(jié)構(gòu)原理答:ARM處理器一般都帶有嵌入式追蹤宏單元ETM(EmbeddedTraceMacro),它是ARM公司自己推出的調(diào)試工具。ARM處理器都支持基J"JTAG(JointTestActionGroup聯(lián)合測12試行動(dòng)小組)的調(diào)試方法。它利用芯片內(nèi)部的EmbeddedICE來控制ARM內(nèi)核操作,可完成單步調(diào)試和斷點(diǎn)調(diào)試等操作。當(dāng)CPU處理單步執(zhí)行完畢或到達(dá)斷點(diǎn)處時(shí),就可以在宿主機(jī)端查看處理器現(xiàn)場數(shù)據(jù),但是它不能在CPU運(yùn)行過程中對(duì)實(shí)時(shí)數(shù)據(jù)進(jìn)行仿真。ETM解決了上述問題,能夠在CPU運(yùn)行過程中實(shí)時(shí)掃描處理器的現(xiàn)場信息,并數(shù)據(jù)送往TAP(TestAccessPort)控制器。上圖中分為三條掃描鏈(圖中的粗實(shí)線),分別用來監(jiān)視ARM核,ETM,嵌入式ICE的狀態(tài)。分析ARM7TDMI-S各字母所代表的含義。答:ARM7TDMI0CS中ARM是AdvancedRISCMachines的縮寫7是系列號(hào):T:支持高密度16位的Thumb指令集;D:支持JTAG片上調(diào)試;M:支持用于長乘法操作(64位結(jié)果)ARM指令,包含快速乘法器:;I:帶有嵌入式追蹤宏單元ETM,用來設(shè)置斷點(diǎn)和觀察點(diǎn)的調(diào)試硬件;S:可綜合版本,意味著處理器內(nèi)核是以源代碼形式提供的。這種源代碼形式乂可以編譯成一種易于EDA工具使用的形式。ARM處理器的匸作模式有哪兒種,其中哪些為特權(quán)模式,哪些為異常模式,并指出理器在什么情況下進(jìn)入相應(yīng)的模式。答:ARM技術(shù)的設(shè)計(jì)者將ARM處理器在應(yīng)用中可能產(chǎn)生的狀態(tài)進(jìn)行了分類,并針對(duì)同一類型的異常狀態(tài)設(shè)定了一個(gè)固定的入口點(diǎn),當(dāng)異常產(chǎn)生時(shí),程序會(huì)口動(dòng)跳轉(zhuǎn)到對(duì)應(yīng)異常入口處進(jìn)行異常服務(wù)。?1.用戶模式:非特權(quán)模式,也就是正常程序執(zhí)行的模式,大部分任務(wù)在這種模式下執(zhí)行。在用戶模式下,如果沒異常發(fā)生,不允許應(yīng)用程序自行改變處理器的工作模式,如果有異常發(fā)生,處理器會(huì)自動(dòng)切換工作模式?2.FIQ模式:也稱為快速中斷模式,支持高速數(shù)據(jù)傳輸和通道處理,當(dāng)一個(gè)高優(yōu)先級(jí)(fast)中斷產(chǎn)生時(shí)將會(huì)進(jìn)入這種模式。?3.IRQ模式:也稱為普通中斷模式,:當(dāng)一個(gè)低優(yōu)先級(jí)(normal)中斷產(chǎn)生時(shí)將會(huì)進(jìn)入這種模式。在這模式下按中斷的處理器方式乂分為向量中斷和非向量中斷兩種。通常的中斷處理都在IRQ模式下進(jìn)行。?4.SVC模式:稱之為管理模式,它是一種操作系統(tǒng)保護(hù)模式。當(dāng)復(fù)位或軟中斷指令執(zhí)行時(shí)處理器將進(jìn)入這種模式。23?5.中止模式:當(dāng)存取異常時(shí)將會(huì)進(jìn)入這種模式,用來處理存儲(chǔ)器故障、實(shí)現(xiàn)虛擬存儲(chǔ)或存儲(chǔ)保護(hù)。?6.未定義指令異常模式:當(dāng)執(zhí)行未定義指令時(shí)會(huì)進(jìn)入這種模式,主要是用來處理未定義的指令陷阱,支持硬件協(xié)處理器的軟件仿真,因?yàn)槲炊x指令多發(fā)生在對(duì)協(xié)處理器的操作上。?7.系統(tǒng)模式:使用和User模式相同寄存器組的特權(quán)模式,用來運(yùn)行特權(quán)級(jí)的操作系統(tǒng)任務(wù)。?在這7種工作模式中,除了用戶模式以外,其他6種處理器模式可以稱為特權(quán)模式,在這些模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進(jìn)行處理器模式的切換。?在這6種特權(quán)模式中,除了系統(tǒng)模式外的其他5種特權(quán)模式乂稱為異常模式,每種異常都對(duì)應(yīng)有口己的異常處理入口點(diǎn)。分析程序狀態(tài)寄存器(PSR)各位的功能描述,并說明C,Z,N,V在什么情況下進(jìn)行置位和清零。答:?條件位:?N=1-結(jié)果為負(fù),0-結(jié)果為正或0?Z二1-結(jié)果為0, 0-結(jié)果不為0?C二1-進(jìn)位, 0-借位?V=1-結(jié)果溢出,0結(jié)果沒溢出?Q位:?僅ARM5TE/J架構(gòu)支持?指示增強(qiáng)型DSP指令是否溢出?中斷禁止位:?I=1:禁止IRQ.?F=1:禁止FIQ.?TBit?僅人兇xT架構(gòu)支持?T=0:處理器處于ARM狀態(tài)?T=1:處理器處于Thumb狀態(tài)?Mode位(處理器模式位):?Ob10000User?OblOOOlFIQ?OblOOlOIRQ?OblOOllSupervisor34?OblOlll?ObllOll?OblllllAbortUndefinedSystem簡述ARM處理器異常處理和程序返回的過程。答:只要正常的程序流被暫時(shí)中止,處理器就進(jìn)入異常模式。例如響應(yīng)一個(gè)來口外設(shè)的中斷。在處理異常之前,ARM7TDMI內(nèi)核保存當(dāng)前的處理器狀態(tài),這樣當(dāng)處理程序結(jié)束時(shí)可以恢復(fù)執(zhí)行原來的程序。如果同時(shí)發(fā)生兩個(gè)或更多異常,那么將按照固定的順序來處理異常。異?;蛉肟诜祷刂噶钐幚砥髂J絻?yōu)先級(jí)BLSWIMOVPC,R146653421 0x000000080x00000004OxOOOOOOOC0x0000001C0x000000180x000000100x00000000向量表偏移MOVSPC,R14_svcSVC未定義的指令MOVSPC,R14_undUND預(yù)取指中止快中斷中斷數(shù)據(jù)中止復(fù)位SUBSPC,R14_abt,#4SUBSPC,R14_fiq,#4SUBSPC,R14_irq,#4SUBSPC,R14_abt,#8無ABTFIQIRQABTSVC在異常發(fā)生后,ARM7TDMI內(nèi)核會(huì)作以下工作:1.在適當(dāng)?shù)腖R中保存下一條指令的地址2.將CPSR復(fù)制到適當(dāng)?shù)腟PSR中:3.將CPSR模式位強(qiáng)制設(shè)置為與異常類型相對(duì)應(yīng)的值:4.強(qiáng)制PC從相關(guān)的異常向量處取指。ARM7TDMI內(nèi)核在中斷異常時(shí)置位中斷禁止標(biāo)志,這樣可以防止不受控制的異常嵌套。注:異??偸窃贏RM狀態(tài)中進(jìn)行處理。當(dāng)處理器處T-Thumb狀態(tài)時(shí)發(fā)生了異常,在異常向量地址裝入PC時(shí),會(huì)自動(dòng)切換到ARM狀態(tài)。當(dāng)異常結(jié)束時(shí),異常處理程序必須:1.將LR中的值減去偏移量后存入PC,偏移量根據(jù)異常的類型而有所不同;2.將SPSR的值復(fù)制回CPSR;3.清零在入口置位的中斷禁止標(biāo)志。注:恢復(fù)CPSR的動(dòng)作會(huì)將T、F和I位口動(dòng)恢復(fù)為異常發(fā)生前的值。ARM處理器字?jǐn)?shù)據(jù)的存儲(chǔ)格式有哪兩種?并指出這兩種格式的區(qū)別。答:ARM7TDMI處理器可以將存儲(chǔ)器中的字以下列格式存儲(chǔ)?大端格式(Big-endian)45?小端格式(Little-endian)?小端存儲(chǔ)器系統(tǒng): 在小端格式中,高位數(shù)字存放在高位字節(jié)中。因此存儲(chǔ)器系統(tǒng)字節(jié)0連接到數(shù)據(jù)線7?0。?大端存儲(chǔ)器系統(tǒng): 在大端格式中,高位數(shù)字存放在低位字節(jié)中。因此存儲(chǔ)器系統(tǒng)字節(jié)0連接到數(shù)據(jù)線31?24。分析帶有存儲(chǔ)器訪問指令(LDR)的流水線運(yùn)行情況,并用圖示說明流水線的運(yùn)行機(jī)制。答:存儲(chǔ)器訪問指令LDR流水線舉例取指的存儲(chǔ)器訪問和執(zhí)行的數(shù)據(jù)路徑占用都是不可同時(shí)共享的資源,對(duì)丁?多周期指令來說,如果指令復(fù)雜以至于不能在單個(gè)時(shí)鐘周期內(nèi)完成執(zhí)行階段,就會(huì)產(chǎn)生流水線阻塞。對(duì)存儲(chǔ)器的訪問指令LDR是非單周期指令LDR指令的執(zhí)行,訪問存儲(chǔ)器,回寫寄存器(占用了3個(gè)周期)。造成了MOV指令的執(zhí)行被阻斷。簡述ARM9的5級(jí)流水線每一級(jí)所完成的功能和實(shí)現(xiàn)的操作。答:ARM920在指令操作上采用5級(jí)流水線.取指:從指令Cache中讀取指令。譯碼:對(duì)指令進(jìn)行譯碼,識(shí)別出是對(duì)哪個(gè)寄存器進(jìn)行操作并從通用寄存器中讀取操作數(shù)。執(zhí)行:進(jìn)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論