freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

arm9體系結(jié)構(gòu)-資料下載頁

2025-03-09 13:04本頁面
  

【正文】 ,減少了開銷。 ARM異常 ARM異常中斷響應(yīng)過程 一、進(jìn)入異常 當(dāng)發(fā)生異常時(shí),除了復(fù)位異常立即中止當(dāng)前指令外,處理器盡量完成當(dāng)前指令,然后脫離當(dāng)前的程序去處理異常。ARM處理器對(duì)異常中斷的響應(yīng)過程如下 : 保存返回地址 將引起異常指令的下一條指令的地址保存到新的異常模式 x下的 R14,即 R14mode中,使異常處理程序執(zhí)行完后能正確返回原程序。 保存當(dāng)前狀態(tài)寄存器 CPSR的內(nèi)容 將 CPSR的內(nèi)容保存到將要執(zhí)行的異常中斷對(duì)應(yīng)的 SPSR中,便于中斷返回時(shí)恢復(fù)處理器當(dāng)前的狀態(tài)位、中斷屏蔽位以及各條件標(biāo)志位。 ARM異常 設(shè)置當(dāng)前狀態(tài)寄存器 CPSR中的相應(yīng)位 ? 設(shè)置 CPSR模式控制位 CPSR[ 4: 0],使處理器進(jìn)入相應(yīng)的執(zhí)行模式; ? 設(shè)置中斷標(biāo)志位 ( CPSR[ 6] =1),禁止 IRQ中斷; ? 設(shè)置中斷標(biāo)志位 ( CPSR[ 7] =1)禁止 FIQ中斷,當(dāng)進(jìn)入 Reset或 FIQ模式時(shí)。 轉(zhuǎn)去執(zhí)行中斷處理程序 取相應(yīng)的中斷向量給程序計(jì)數(shù)器 PC,使程序開始執(zhí)行中斷處理程序。 一般地說,矢量地址處將包含一條指向相應(yīng)程序的轉(zhuǎn)移指令,從而可跳轉(zhuǎn)到相應(yīng)的異常中斷處理程序處執(zhí)行異常中斷處理程序 。 ARM異常 ARM異常 ARM處理器對(duì)異常的響應(yīng)過程可以用偽代碼描述如下 : R14_exception_mode=return link SPSR_exception_mode=CPSR CPSR[ 4: 0] =exception mode number( M位) CPSR[ 5] =0 /*當(dāng)運(yùn)行于 ARM狀態(tài)時(shí) */( T位) CPSR[ 6] =1 /*禁止新的 IRQ中斷 */( F位) if exceptionmode=Reset or FIQ then CPSR[ 7] =1 /*當(dāng) Reset 或 FIQ異常中斷時(shí) */ /*禁止新 的 FIQ中斷 */( I位) PC=exception vector address 注意使用異常模式下的特有寄存器 ? 每個(gè)異常模式對(duì)應(yīng)有兩個(gè)寄存器R13_mode、 R14_mode分別保存相應(yīng)模式下的 堆棧指針 、 返回地址 ;堆棧指針可用來定義一個(gè)存儲(chǔ)區(qū)域保存其它用戶寄存器,在程序初始化時(shí)應(yīng)該對(duì)各種模式堆棧設(shè)置,便于隨時(shí)使用。 ? FIQ模式還有額外的專用寄存器R8_fiq~ R12_fiq,使用這些寄存器可以加快快速中斷的處理速度。 ARM異常 二、異常返回 異常返回應(yīng)執(zhí)行的操作 異常處理完畢之后, ARM微處理器會(huì)執(zhí)行以下幾步操作從異常返回: ? 將返回地址裝入 PC 把連接寄存器 LR的值減去相應(yīng)的偏移量,然后送到 PC中。 ? 恢復(fù) CPSR的值 將 SPSR復(fù)制回 CPSR中。 ? 清除中斷屏蔽位 若在進(jìn)入異常處理時(shí)設(shè)置了中斷禁止位,要在此清除。 可以認(rèn)為應(yīng)用程序總是從復(fù)位異常處理程序開始執(zhí)行的,因此復(fù)位異常處理程序不需要返回。 ARM異常 各種異常返回方法 ? FIQ中斷返回 不管是在 ARM狀態(tài)還是在 Thumb狀態(tài)下進(jìn)入 FIQ模式,F(xiàn)IQ處理程序均可以執(zhí)行以下指令從 FIQ模式返回: SUBS PC,R14fiq ,4 ? 指令預(yù)取中止( Abort )異常返回 當(dāng)指令預(yù)取訪問存儲(chǔ)器失敗時(shí),存儲(chǔ)器系統(tǒng)向 ARM處理器發(fā)出存儲(chǔ)器中止( Abort)信號(hào),預(yù)取的指令被記為無效,但只有當(dāng)處理器試圖執(zhí)行無效指令時(shí),指令預(yù)取中止異常才會(huì)發(fā)生,如果指令未被執(zhí)行,例如在指令流水線中發(fā)生了跳轉(zhuǎn),則預(yù)取指令中止不會(huì)發(fā)生。 如果發(fā)生了指令預(yù)取中止異常,無論是在 ARM狀態(tài)還是Thumb狀態(tài),其返回指令為: SUBS PC, R14_abt, 4 ;重新執(zhí)行被中止的指令 ARM異常 ? 數(shù)據(jù)中止( Abort )異常返回 如果發(fā)生了數(shù)據(jù)中止異常,無論是在 ARM狀態(tài)還是 Thumb狀態(tài),其返回指令為: SUBS PC, R14_abt, 8 重新執(zhí)行被中止的指令 ? 軟件中斷指令( SWI) 異常返回 用于進(jìn)入管理模式,常用于請(qǐng)求執(zhí)行特定的管理功能。軟件中斷處理程序執(zhí)行以下指令可以從 SWI模式返回,無論是在 ARM狀態(tài)還是 Thumb狀態(tài): MOVS PC , R14_svc 以上指令恢復(fù) PC(從 R14_svc)和 CPSR(從 SPSR_svc)的值,并返回到 SWI的下一條指令。 ARM異常 ? 未定義指令異常返回 當(dāng) ARM處理器遇到不能處理的指令時(shí),會(huì)產(chǎn)生未定義指令異常。采用這種機(jī)制,可以通過軟件仿真擴(kuò)展 ARM或 Thumb指令集。 處理器執(zhí)行以下程序返回,無論是在ARM狀態(tài)還是 Thumb狀態(tài): MOVS PC, R14_und 以上指令恢復(fù) PC(從 R14_und)和 CPSR(從SPSR_und)的值,并返回到未定義指令后的下一條指令。 ARM異常 異常類型 模式 低向量地址 高向量地址 復(fù)位 管理 0x00000000 0xFFFF0000 未定義指令 未定義 0x00000004 0xFFFF0004 軟件中斷( SWI) 管理 0x00000008 0xFFFF0008 預(yù)取中止 (取指令存儲(chǔ)器中止) 中止 0x0000000C 0xFFFF000C 數(shù)據(jù)中止 (訪問數(shù)據(jù)存儲(chǔ)器中止 ) 中止 0x00000010 0xFFFF0010 IRQ(中斷) IRQ 0x00000018 0xFFFF0018 FIQ(快速中斷) FIQ 0x0000001C 0xFFFF001C ARM中斷向量 ARM中斷向量和優(yōu)先級(jí) 異常中斷向量表 ARM的異常 地 址 異 常 進(jìn)入模式 0x0000,0000 復(fù)位 管理模式 0x0000,0004 未定義指令 未定義模式 0x0000,0008 軟件中斷 管理模式 0x0000,000C 中止(預(yù)取指令) 中止模式 0x0000,0010 中止(數(shù)據(jù)) 中止模式 0x0000,0014 保留 保留 0x0000,0018 IRQ IRQ 0x0000,001C FIQ FIQ 字對(duì)齊的連續(xù)地址 異常中斷向量表說明: 存儲(chǔ)器的前 8個(gè)字中除了地址 0x00000014之外,全部被用作異常矢量地址。 這是因?yàn)樵谠缙诘?26位地址空間的 ARM處理器中,曾使用地址 0x00000014來捕獲 落在地址空間之外的 load和 store存儲(chǔ)器地址 。這些陷阱稱為“地址異?!?,因?yàn)?32位的 ARM不會(huì)產(chǎn)生落在它的 32位地址空間之外的地址,所以地址異常在當(dāng)前的體系結(jié)構(gòu)中沒有作用,0x00000014的矢量地址也就不再使用了。 ARM的異常 ARM中斷的優(yōu)先級(jí) ARM異常 優(yōu)先級(jí) 異 常 1(最高) 復(fù)位 2 數(shù)據(jù)中止 3 FIQ 4 IRQ 5 預(yù)取指令中止 6(最低) 未定義指令、 SWI ARM系統(tǒng)調(diào)試接口 系統(tǒng)信號(hào)和調(diào)試工具狀況 ? 傳統(tǒng)調(diào)試工具及調(diào)試方法 傳統(tǒng)的工具和方法存在過分依賴芯片引腳的特點(diǎn),不能在處理器高速運(yùn)行下正常工作,并且占用系統(tǒng)資源、不能實(shí)時(shí)跟蹤和設(shè)置硬件斷點(diǎn)、價(jià)格過于昂貴等弊端。 ? SoC信號(hào)特點(diǎn) 目前高度集成的嵌入式 SoC的普遍使用,有很多動(dòng)作都從不在芯片的外部 I/O上體現(xiàn),一些內(nèi)部模塊的控制、存儲(chǔ)器的總線信號(hào)也并不完全體現(xiàn)在芯片的外部 I/O引腳上。 ? 需要新的調(diào)試技術(shù)和工具 這種深度嵌入、軟件越來越復(fù)雜的發(fā)展趨勢給傳統(tǒng)的調(diào)試工具帶來了極大的挑戰(zhàn),調(diào)試經(jīng)常是一個(gè)很大的難題,也給嵌入式開發(fā)工作帶來了不便,這就需要更先進(jìn)的調(diào)試技術(shù)和調(diào)試工具相配套。 JTAG接口及應(yīng)用 JTAG( Joint Test Action Group 聯(lián)合測試行動(dòng)組 ) 接口 定義了一種用于在線測試集成電路器件的 邊界掃描體系結(jié)構(gòu) ,簡稱為 JTAG接口。 JTAG仿真器 也稱為 JTAG的在線調(diào)試器 ICD( InCircuit Debugger),是通過 ARM芯片的 JTAG邊界掃描口進(jìn)行調(diào)試的設(shè)備。 ? JTAG仿真器連接比較方便,實(shí)現(xiàn)價(jià)格比較便宜,是通過現(xiàn)有的JTAG邊界掃描口與 ARM CPU核通信,實(shí)現(xiàn)了完全非插入式調(diào)試,連接比較方便,不使用片上資源,無需目標(biāo)存儲(chǔ)器,不占用目標(biāo)系統(tǒng)的任何端口 ? 基于 JTAG仿真器的調(diào)試是目前 ARM開發(fā)中采用最多的一種方式。大多數(shù) ARM設(shè)計(jì)采用了片上 JTAG接口,并將它作為其測試和調(diào)試方法的重要組成。 ARM系統(tǒng)調(diào)試接口 (2) JTAG仿真器的功能 ? JTAG仿真器與計(jì)算機(jī)的連接 是通過 ARM處理器特有的 JTAG邊界掃描接口與目標(biāo)機(jī)通信進(jìn)行調(diào)試,并可以通過并口或串口、 USB口等與宿主機(jī) PC通信。 ? JTAG仿真器的功能 基于 JTAG的 ARM的內(nèi)核調(diào)試通道,具有典型的 ICE( InCircuit Emulator)功能,通過配置,支持: 設(shè)置斷點(diǎn)、觀察點(diǎn)調(diào)試運(yùn)行 觀察處理器狀態(tài)、系統(tǒng)狀態(tài)訪問 下載固化程序 ARM系統(tǒng)調(diào)試接口 (3) ETM接口 ETM( Embedded Trace Macrocell) 嵌入式跟蹤宏單元 是連接到 ARM處理器內(nèi)部,能夠?qū)崿F(xiàn)對(duì)執(zhí)行代碼的實(shí)時(shí)跟蹤,并將跟蹤信息壓縮,通過一個(gè)窄帶的名叫“跟蹤端口” 輸出。 ETM調(diào)試工具 利用外部跟蹤端口分析儀(一個(gè)連接計(jì)算機(jī)和 ARM跟蹤引腳的設(shè)備),在軟件調(diào)試器的控制下捕獲跟蹤信息。 ETM接口的應(yīng)用 通過跟蹤宏單元 ETM( Embedded Trace Macrocell) 、外部跟蹤端口分析儀、安裝在計(jì)算機(jī)上的調(diào)試和分析軟件,通過嵌入式實(shí)時(shí)跟蹤,實(shí)時(shí)觀察其操作過程,使得對(duì)應(yīng)用程序的調(diào)試將更加全面、客觀和真實(shí)。 ARM系統(tǒng)調(diào)試接口 (4) 新型調(diào)試技術(shù)、工具的意義 ? ARM開發(fā)者通過 EmbeddedICE和 ETM獲得了傳統(tǒng)意義的在線仿真器( ICE)工具能夠提供的各種功能。 ? 通過這些技術(shù)能夠全面觀察應(yīng)用代碼的實(shí)時(shí)行為,并且能夠設(shè)置斷點(diǎn)、檢查并修改處理器寄存器和存儲(chǔ)器單元,還總是能夠嚴(yán)格地反鏈接到高級(jí)語言源代碼,構(gòu)成ARM完整的調(diào)試、實(shí)時(shí)跟蹤的完整解決方案并降低了開發(fā)成本。 ARM系統(tǒng)調(diào)試接口 (5) 習(xí) 題 作業(yè):對(duì)照下面題目認(rèn)真看看書! ARM的含義是什么? ARM ARM9各采用幾級(jí)流水線?各采用什么樣的存儲(chǔ)器結(jié)構(gòu)? 3 、 ARM處理器支持的數(shù)據(jù)類型有哪些? ARM使用哪些工作狀態(tài)和工作模式? ARM使用哪些工作模式?哪些是特權(quán)模式?哪些是異常模式? 哪個(gè)寄存器用做 PC?哪個(gè)用做 SP?哪個(gè)用做 LR? CPSR各位的意義是什么? 習(xí) 題 中斷向量表位于存儲(chǔ)器的什么位置? IRQ或 FIQ異常的返回指令是什么? 什么類型的中斷優(yōu)先級(jí)最高? 1什么指令可以放在中斷向量表? 1 FIQ的什么特點(diǎn)使得它處理的速度比 IRQ快? 1什么是 JTAG接口? 1什么是 ETM接口? 演講完畢,謝謝觀看!
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1