

下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、arm 術(shù)語集錦1.ARM 中一些常見英文縮寫解釋MSB :最高有效位;LSB :最低有效位;AHB :先進(jìn)的高性能總線;VPB :連接片內(nèi)外設(shè)功能的 VLSI 外設(shè)總線;EMC :外部存儲器控制器;MAM :存儲器加速模塊;VIC :向量中斷控制器;SPI :全雙工串行接口;CAN :控制器局域網(wǎng),一種串行通訊協(xié)議;PWM :脈寬調(diào)制器;ETM :嵌入式跟蹤宏;CPSR :當(dāng)前程式狀態(tài)寄存器;SPSR :程式保護(hù)狀態(tài)寄存器;2.MAM 使用注意事項:答:當(dāng)改動 MAM 定時值時,必須先通過向 MAMCR 寫入 0 來關(guān)閉 MAM,然后將新值寫入 MAMTIM。最后,將需要的操作模式的對應(yīng)值寫
2、入MAMCR,再次打開 MAM。對于低于 20MHz 的系統(tǒng)時鐘,MAMTIM 設(shè)定為 001。對于 20MHz 到 40MHz 之間的系統(tǒng)時鐘,建議將 Flash 訪問時間設(shè)定為 2cclk,而在高于 40MHz 的系統(tǒng)時鐘下,建議使用 3cclk。3.VIC 使用注意事項答:如果在片內(nèi) RAM 當(dāng)中運行代碼并且應(yīng)用程式需要調(diào)用中斷,那么必須將中斷向量重新映 射到 Flash 地址0 x0。這樣做是因為所有的異常向量都位于地址0 x0 及以上。通過將寄存器MEMMAP (位于系統(tǒng)控制模塊當(dāng)中)設(shè)置為用戶 RAM 模式來實現(xiàn)這一點。用戶代碼被連接以 便使中斷向量表裝載到 0 x4000 000
3、0。4.ARM 啟動代碼設(shè)計答:ARM 啟動代碼直接面對處理器內(nèi)核和硬件控制器進(jìn)行編程,一般使用匯編語言。啟動代碼 一般包括:01 、中斷向量表02 、初始化存儲器系統(tǒng)03 、初始化堆棧初始化有特別需求的端口、設(shè)備04 、初始化用戶程式執(zhí)行環(huán)境05 、改動處理器模式06 、呼叫主應(yīng)用程式5.IRQ 和 FIQ 之間的差別答: IRQ 和 FIQ 是 ARM 處理器的兩種編程模式。 IRQ 是指中斷模式, FIR 是指快速中斷模式。 對于 FIQ必須盡快處理你的事情并離開這個模式。 IRQ 能被 FIQ 所中斷,但I(xiàn)RQ 不能中斷 FIQ 。為了使 FIQ 更快, 所以這種模式有更多的影子寄存器
4、。FIQ 不能調(diào)用 SWI(軟件中斷)。 FIQ 還必須禁用中斷。如果一個 FIQ 例程必須重新啟用中斷,則他太慢了,并 應(yīng)該是 IRQ 而不是 FIQ 。6. ARM 處理器對異常中斷的響應(yīng)過程 答: ARM 處理器對異常中斷的響應(yīng)過程如下所述:01 、保存處理器當(dāng)前狀態(tài)、中斷屏蔽位及各條件標(biāo)志位;02 、設(shè)置當(dāng)前程式狀態(tài)寄存器 CPSR 中的相應(yīng)位;03 、將寄存器 lr_mode 設(shè)置成返回地址;04 、將程式計數(shù)器值 PC ,設(shè)置成該異常中斷的中斷向量地址, 跳轉(zhuǎn)到相應(yīng)異常中斷處執(zhí) 行。7.ARM 指令和 Thumb 指令的差別答: 在 ARM 體系結(jié)構(gòu)中, ARM 指令集中的指令是
5、32 位的指令,其執(zhí)行效率非常高。對于存 儲系統(tǒng)數(shù)據(jù)總線為 16 位的應(yīng)用系統(tǒng), ARM 體系提供了 Thumb 指令集。 Thumb 指令集是對 ARM 指令集的一個子集重新編碼得到的,指令長度為 16 位。通常在處理器執(zhí)行 ARM 程式時, 稱處理器處于 ARM 狀態(tài);當(dāng)處理器執(zhí)行Thumb 程式時,稱處理器處于 Thumb 狀態(tài)。Thumb 指令集并沒有改動 ARM 體系地層的程式設(shè)計模型,只是在該模型上加上了一些限制條件。Thumb 指令集中的數(shù)據(jù)處理指令的操作數(shù)仍然為 32 位,指令尋址地址也是 32 位的。8.什么是 ATPCS答:為了使獨立編譯的 C 語言程式和匯編程式之間能夠相
6、互調(diào)用,必須為子程式之間的調(diào)用規(guī) 定一定的規(guī)則。ATPCS 就是 ARM 程式和 Thumb 程式中子程式調(diào)用的基本規(guī)則。這些規(guī)則包 括寄存器使用規(guī)則,數(shù)據(jù)棧的使用規(guī)則,參數(shù)的傳遞規(guī)則等。9.ARM 程式和 Thumb 程式混合使用的場合答:通常,Thumb 程式比 ARM 程式更加緊湊,而且對于內(nèi)存為 8 位或 16 位的系統(tǒng),使用 Thumb 程式效率更高。不過,在下面一些場合下,程式必須運行在ARM 狀態(tài),這時就需要混合使用ARM 和 Thumb 程式。01、強調(diào)速度的場合,應(yīng)該使用ARM 程式;02、有些功能只能由 ARM 程式完成。如:使用或禁止異常中斷;03、當(dāng)處理器進(jìn)入異常中斷處
7、理程式時,程式狀態(tài)轉(zhuǎn)換到ARM 狀態(tài),即在異常中斷處理程式入口的一些指令是ARM 指令,然后根據(jù)需要程式能轉(zhuǎn)換到Thumb 狀態(tài),在異常中斷程式返回前,程式再轉(zhuǎn)換到ARM 狀態(tài)。04、ARM 處理器總是從 ARM 狀態(tài)開始執(zhí)行。因而,如果要在調(diào)試器中運行Thumb 程式,必須為該 Thumb 程式添加一個 ARM 程式頭,然后再轉(zhuǎn)換到Thumb 狀態(tài),執(zhí)行 Thumb程式。10.ARM 處理器運行模式答:ARM 微處理器支持 7 種運行模式,分別為:01、用戶模式(usr): ARM 處理器正常的程式執(zhí)行狀態(tài);02、快速中斷模式(fiq ):用于高速數(shù)據(jù)傳輸或通道管理;03、外部中斷模式(ir
8、q ):用于通用的中斷處理;04、管理模式(svc ):操作系統(tǒng)使用的保護(hù)模式;05、數(shù)據(jù)訪問終止模式(abt ):當(dāng)數(shù)據(jù)或指令預(yù)取終止時進(jìn)入該模式,用于虛擬存儲及 存儲保護(hù);06、系統(tǒng)模式(sys ):運行具有特權(quán)的操作系統(tǒng)任務(wù);07、未定義指令中止模式(und ):當(dāng)未定義指令執(zhí)行時進(jìn)入該模式,可用于支持硬件 協(xié)處理器的軟件仿真。11.ARM 體系結(jié)構(gòu)所支持的異常類型答:ARM 體系結(jié)構(gòu)所支持的異常和具體含義如下(圈里面的數(shù)字表示優(yōu)先級):01、復(fù)位:當(dāng)處理器的復(fù)位電平有效時,產(chǎn)生復(fù)位異常,程式跳轉(zhuǎn)到復(fù)位異常處執(zhí)行 (異常向量:0 x0000 ,0000 );02、未定義指令:當(dāng)ARM 處
9、理器或協(xié)處理器遇見不能處理的指令時,產(chǎn)生為定義異常??墒褂迷摦惓C制進(jìn)行軟件仿真(異常向量:0 x 0000 ,0004 );03、軟件中斷:有執(zhí)行 SWI 指令產(chǎn)生,可用于用戶模式下程式調(diào)用特權(quán)操作指令。可 使用該異常機制實現(xiàn)系統(tǒng)功能調(diào)用(異常向量:0 x 0000 ,0008 );04、指令預(yù)取中止:若處理器的預(yù)取指令的地址不存在,或該地址不允許當(dāng)前指令訪問,存儲器會向處理器發(fā)出中止信號,當(dāng)預(yù)取指令被執(zhí)行時,才會產(chǎn)生指令預(yù)取中止異常(異常向量:0 x 0000 ,oooc );05、數(shù)據(jù)中止:若處理器數(shù)據(jù)訪問的指令的地址不存在,或該地址不允許當(dāng)前指令訪 問,產(chǎn)生數(shù)據(jù)中止異常(異常向量:0
10、x 0000 ,0010);06、IRQ(外部中斷請求):當(dāng)處理器的外部中斷請求引腳有效,且 為 0 時,產(chǎn)生 IRQ 異常。系統(tǒng)的外設(shè)能該異常請求中斷服務(wù)(異常向量:07、FIQ(快速中斷請求):當(dāng)處理器的快速中斷請求引腳有效,且為 0 時,產(chǎn)生 FIQ 異常(異常向量:0 x 0000 ,001C )。說明:其中異常向量0 x 0000 ,0014 為保留的異常向量。12.ARM 體系結(jié)構(gòu)的存儲器格式答:ARM 體系結(jié)構(gòu)的存儲器格式有如下兩種:01、大端格式:字?jǐn)?shù)據(jù)的高字節(jié)存儲在低地址中,字?jǐn)?shù)據(jù)的低字節(jié)存放在高地址中;02、小端格式:和大端存儲格式相反,高地址存放數(shù)據(jù)的高字節(jié),低地址存放數(shù)
11、據(jù)的低 字節(jié)。13.ARM 寄存器總結(jié):01、ARM 有 16 個 32 位的寄存器(r0 到 r15 )。02、r15 充當(dāng)程式寄存器 PC,r14 ( link register )存儲子程式的返回地址,r13 存儲的是堆棧地址。03、ARM 有一個當(dāng)前程式狀態(tài)寄存器:CPSR。04、一些寄存器(r13,r14 )在異常發(fā)生時會產(chǎn)生新的instances ,比如 IRQ 處理器模式,這時處理器使用r13_irq 和 r14_irq05、ARM 的子程式調(diào)用是非??斓?,因為子程式的返回地址不必存放在堆棧中。14.存儲器重新映射的原因:01、使 Flash 存儲器中的 FIQ 處理程式不必考慮
12、因為重新映射所導(dǎo)致的存儲器邊界問題; 02、用來處理代碼空間中段邊界仲裁的SRAM 和 Boot Block 向量的使用大大減少;03、為超過單字轉(zhuǎn)移指令范圍的跳轉(zhuǎn)提供空間來保存常量。ARM 中的重映射是指在程式執(zhí)行過程中通過寫某個功能寄存器位操作達(dá)到重新分配其存儲 器地址空間的映射。一個典型的應(yīng)用就是應(yīng)用程式存儲在Flash /ROM 中,初始這些存儲器地址是從 0 開始的,但這些存儲器的讀時間比SRAM /DRAM 長,造成其內(nèi)部執(zhí)行頻率不高,故一般在前面一段程式將代碼搬移到 SRAM /DRAM 中去,然后重新映射存儲器空間,將相應(yīng)SRAM /DRAM 映射到地址 0 ,重新執(zhí)行程式可達(dá)
13、到高速運行的目的。15.存儲異常向量表中程式跳轉(zhuǎn)使用LDR 指令,而不使用 B 指令的原因:CPSR 中的 I 位0 x 0000 ,0018 );CPSR 中的 F 位01、LDR 指令能全地址范圍跳轉(zhuǎn),而B 指令只能在前后 32MB 范圍內(nèi)跳轉(zhuǎn);02、芯片具有 Remap 功能。當(dāng)向量表位于內(nèi)部RAM 或外部存儲器中,用 B 指令不能跳轉(zhuǎn)到正確的位置。16.鎖相環(huán)(PLL)注意要點:01、PLL 在芯片復(fù)位或進(jìn)入掉電模式時被關(guān)閉并旁路,在掉電喚醒后不會自動恢復(fù)PLL的設(shè)定;02、PLL 只能通過軟件使能;03、PLL 在激活后必須等待其鎖定,然后才能連接;04、PLL 如果設(shè)置不當(dāng)將會導(dǎo)致
14、芯片的錯誤操作。17.ARM7 和 ARM9 的差別:01、ARM7 內(nèi)核是 0.9MIPS/MHZ的三級流水線和馮?諾伊曼結(jié)構(gòu);ARM9 內(nèi)核是五級流水線,提供 1.1MIPS/MHZ 的哈佛結(jié)構(gòu)。02、 ARM7 沒有 MMU,ARM720T 是 MMU 的; ARM9 是有 MMU 的, ARM940T 只 有 Memory protectionunit .不是個完整的 MMU。03、ARM7TDMI 提供了非常好的性能 ?功耗比。他包含了Thumb 指令集快速乘法指令和 ICE 調(diào)試技術(shù)的內(nèi)核。ARM9 的時鐘頻率比 ARM7 更高,采用哈佛結(jié)構(gòu)區(qū)分了數(shù)據(jù)總線和指令總線。18.VIC
15、的基本操作如下:答:設(shè)置 IRQ/FIQ 中斷,若是 IRQ 中斷則能設(shè)置為向量中斷并分配中斷優(yōu)先級,否則為非向 量 IRQ。然后能設(shè)置中斷允許,及向量中斷對應(yīng)地址或非向量中斷默認(rèn)地址。當(dāng)有中斷后,若是 IRQ 中斷,則能讀取向量地址寄存器,然后跳轉(zhuǎn)到相應(yīng)的代碼。當(dāng)要退岀中斷時,對向量地 址寄存器寫 0,通知 VIC 中斷 結(jié)束。當(dāng)發(fā)生中斷時,處理器將會轉(zhuǎn)換處理器模式,同時相關(guān)的 寄存器也將會映射。19.使用外部中斷注意01、把某個弓 I 腳設(shè)置為外部中斷功能后,該弓 I 腳為輸入模式,由于沒有內(nèi)部上拉電阻,所以必須外接一個上拉電阻,確保引腳不被懸空;02 、除了引腳連接模塊的設(shè)置,還需要設(shè)置
16、 VIC 模塊,才能產(chǎn)生外部中斷,否則外部中 斷只能反映在EXTINT 寄存器中;03 、要使器件進(jìn)入掉電模式并通過外部中斷喚醒,軟件應(yīng)該正確設(shè)置引腳的外部中斷功 能,再進(jìn)入掉電模式。21. I2C 的基本操作方法I2C 主機基本操作方法:01 、設(shè)置 I2C 管腳連接;02 、設(shè)置 I2C 時鐘速率( I2SCLH 、 I2SCLL );03 、設(shè)置為主機,并發(fā)送起始信號( I2CONSET 的 I2EN 、STA 位為 1 ,AA 位為 0);04 、發(fā)送從機地址( I2DAT ),控制 I2CONSET 發(fā)送;05 、判斷總線狀態(tài)( I2STAT ),進(jìn)行數(shù)據(jù)傳輸控制;06 、發(fā)送結(jié)束信
17、號( I2CONSET )。I2C 從機基本操作方法:01 、設(shè)置 I2C 管腳連接;02 、設(shè)置自身的從機地址( I2ADR );03 、使能 I2C (I2CONSET 的 I2EN 、AA 位為 1 );04 、判斷 SI 位或等待 I2C 中斷,等待主機操作;05 、判斷總線狀態(tài) I2STAT ,進(jìn)行數(shù)據(jù)傳輸控制。22. PWM 基本操作方法:01 、連接 PWM 功能管腳輸出,即設(shè)置 PINSEL0 、 PINSEL1 ;02 、設(shè)置 PWM 定時器的時鐘分頻值( PWMPR ),得到所要的定時器時鐘;03 、設(shè)置比較匹配控制( PWMMCR ),并設(shè)置相應(yīng)比較值( PWMMRx );04 、設(shè)置 PWM 輸出方式并允許 PWM 輸出( PWMPCR )及鎖存使能控制 ( PWMLER );05 、設(shè)置 PWMTCR ,啟動定時器,使能 PWM ;06 、運行過程
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能客服系統(tǒng)定制研發(fā)與多渠道接入與智能營銷服務(wù)合同
- 小紅書網(wǎng)紅直播帶貨合作人收益分成與銷售協(xié)議
- 果園果樹種植與休閑農(nóng)業(yè)融合發(fā)展承包協(xié)議
- 石油化工儲罐防腐保溫工程設(shè)計與施工合同
- 婚后數(shù)碼產(chǎn)品共享與維護(hù)責(zé)任協(xié)議
- 醫(yī)院潔凈區(qū)BIM管線設(shè)計與施工及驗收合同
- 農(nóng)業(yè)生態(tài)保護(hù)與修復(fù)有限合伙投資協(xié)議
- 海外醫(yī)療設(shè)施租賃與醫(yī)療技術(shù)支持合同
- 防止婚外情夫妻忠誠執(zhí)行及財產(chǎn)保全協(xié)議
- 電商平臺商品上架與消費者權(quán)益保護(hù)協(xié)議
- 2025北京各區(qū)高三一模數(shù)學(xué)分類匯編解析 答案
- 第18課《井岡翠竹》 課件
- (四調(diào))武漢市2025屆高中畢業(yè)生四月調(diào)研考試 英語試卷
- 廣西壯族自治區(qū)2025年4月高三畢業(yè)班診斷學(xué)考試英語試卷(廣西三模)
- 2025年山東省棗莊市滕州市中考?xì)v史模擬試卷(一)
- 2025華陽新材料科技集團(tuán)有限公司招聘(500人)筆試參考題庫附帶答案詳解
- 2024年美睫技術(shù)考核試題及答案
- 運維崗筆試題及答案
- 余杭塘路(俞家圩路-光明路)工程環(huán)評報告
- 民航綜合測試題及答案
- 中國國際大學(xué)生創(chuàng)新大賽(2025)職教賽道重點培育項目申報表
評論
0/150
提交評論