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

正文內(nèi)容

arm9體系結構-資料下載頁

2025-03-09 13:04本頁面
  

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