嵌入式32位CPU系統(tǒng)控制協(xié)處理器異常處理及系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
資料介紹
IPS體系結(jié)構(gòu)中的系統(tǒng)控制協(xié)處理器簡稱CP0,它提供指令正常執(zhí)行所需的環(huán)境,進(jìn)行異常/中斷處理、高速緩存填充、虛實(shí)地址轉(zhuǎn)換、操作模式轉(zhuǎn)換等操作。單從硬件的角度而言,系統(tǒng)控制協(xié)處理器對(duì)指令集的作用就相當(dāng)于操作系統(tǒng)對(duì)應(yīng)用程序的作用一樣。
異常處理
CPU運(yùn)行過程中常常需要中斷正常執(zhí)行的指令流程,跳轉(zhuǎn)去執(zhí)行某段特殊的指令段,接著再恢復(fù)原來的指令序列。MIPS體系結(jié)構(gòu)中稱這樣的過程為異常(Exception)。所有的異常都采用統(tǒng)一的機(jī)制處理。
對(duì)于異常情況,需要采取以下3方面的措施:
1) 異常檢測(cè):CPU需要及時(shí)檢測(cè)出哪個(gè)部件發(fā)生了什么異常;一般而言,異常檢測(cè)由各個(gè)模塊進(jìn)行,如加法溢出由加法器在運(yùn)算過程中產(chǎn)生,并在相應(yīng)的流水段被系統(tǒng)控制協(xié)處理器CP0讀入。因此這部分功能不屬于CP0的設(shè)計(jì)范圍。
2) 異常處理:CPU按照優(yōu)先級(jí)選擇哪個(gè)異常被處理,并進(jìn)行必要的上下文切換(Context Switch),為進(jìn)入異常服務(wù)子程序做準(zhǔn)備,保證與該種異常對(duì)應(yīng)的服務(wù)程序被執(zhí)行,并且能夠從中斷處完全恢復(fù)原來的指令執(zhí)行現(xiàn)場(chǎng)。
3) 異常服務(wù):執(zhí)行異常服務(wù)子程序,這部
分主要由軟件(操作系統(tǒng))來完成。
對(duì)異常處理機(jī)制的要求
與傳統(tǒng)的異常/中斷處理機(jī)制相比,在MIPS 4Kc體系結(jié)構(gòu)下的異常處理需要特別考慮3個(gè)因素。
流水線的劃分
本設(shè)計(jì)采用五段流水線設(shè)計(jì),即每條指令的執(zhí)行一般都經(jīng)過IF(取指)、DE(指令譯碼)、EX(指令執(zhí)行)、MEM(訪問存儲(chǔ)器)和WB(數(shù)據(jù)寫回R.F.)五個(gè)步驟。因?yàn)橹噶顒?dòng)作被分割,所以異常源也被分割到各個(gè)流水線段。例如:加法溢出異常只能在EX被檢測(cè)到。
精確異常處理機(jī)制
精確異常處理是指在發(fā)生異常時(shí),僅僅對(duì)發(fā)生異常的指令或其后面的指令進(jìn)行異常處理;而其前面的指令要保證能夠正常結(jié)束。所謂“精確”,是指受到異常處理影響的只有產(chǎn)生異常條件的那條指令,所有在此之前的指令在異常被處理前都將被執(zhí)行完成。異常處理結(jié)束后仍將從發(fā)生異常的指令開始繼續(xù)執(zhí)行。
操作模式切換
對(duì)于多進(jìn)程操作系統(tǒng),至少要區(qū)分兩種進(jìn)程:有特權(quán)的操作系統(tǒng)“核心”進(jìn)程和一般程序的“用戶”進(jìn)程。當(dāng)CPU檢測(cè)到異常發(fā)生時(shí),指令執(zhí)行的正常順序會(huì)被暫停,處理器進(jìn)入核心模式。當(dāng)異常服務(wù)子程序執(zhí)行完后,CPU從斷點(diǎn)中恢復(fù)現(xiàn)場(chǎng),繼續(xù)執(zhí)行原指令序列。
異常處理流水線
根據(jù)上述分析可以確定,硬件異常處理流水線的主要任務(wù)有3個(gè):更新相應(yīng)的CP0寄存器,即寫CP0寄存器;保存發(fā)生異常的指令地址,或當(dāng)異常指令在延遲槽時(shí),保存引起延遲槽的跳轉(zhuǎn)指令地址;選擇異常服務(wù)子程序的入口地址。
- 嵌入式處理器
- 嵌入式處理器
- 嵌入式控制系統(tǒng)的ARM處理器
- ARM處理器與嵌入式系統(tǒng)
- ARM嵌入式微處理器體系結(jié)構(gòu) 36次下載
- 基于FPGA的嵌入式處理器設(shè)計(jì) 12次下載
- 嵌入式處理器的分類對(duì)比分析詳細(xì)說明
- 使用ARM實(shí)現(xiàn)嵌入式處理器的最小系統(tǒng) 16次下載
- 嵌入式硬件系統(tǒng)教程之處理器的詳細(xì)資料說明 7次下載
- 嵌入式系統(tǒng)教程之嵌入式處理器的詳細(xì)資料說明 18次下載
- 嵌入式處理系統(tǒng)3_互連技術(shù) 1次下載
- 系統(tǒng)控制協(xié)處理器的作用及其基于32位嵌入式CPU的設(shè)計(jì)與實(shí)現(xiàn) 11次下載
- 嵌入式異構(gòu)多處理器系統(tǒng)中的通信實(shí)現(xiàn) 47次下載
- 嵌入式處理系統(tǒng) 43次下載
- 32位嵌入式CPU中系統(tǒng)控制協(xié)處理器的設(shè)計(jì)與實(shí)現(xiàn)
- 什么是嵌入式微處理器?嵌入式微處理器有哪些? 2k次閱讀
- 嵌入式微處理器的原理和應(yīng)用 1.8k次閱讀
- 嵌入式處理器簡介和種類 1.9k次閱讀
- 基于嵌入式微處理器EP9315和Linux實(shí)現(xiàn)NAS系統(tǒng)的設(shè)計(jì) 3.9k次閱讀
- 嵌入式處理器的種類有哪些 2.2w次閱讀
- 基于FPGA平臺(tái)的嵌入式PowerPC協(xié)處理器實(shí)現(xiàn)算法加速設(shè)計(jì) 1.6k次閱讀
- 以MicroBlaze 處理器為內(nèi)核的嵌入式系統(tǒng)開發(fā)過程詳解 2.9k次閱讀
- 解決CPU異常的功臣_系統(tǒng)控制協(xié)處理器的全定制設(shè)計(jì) 3.9k次閱讀
- PSoC嵌入式系統(tǒng)設(shè)計(jì)的三大優(yōu)勢(shì) 3.7k次閱讀
- arm的協(xié)處理器有幾個(gè)?ARM協(xié)處理器詳解 9.7k次閱讀
- 嵌入式處理器匯總_常見的嵌入式處理器對(duì)比分析 1.5w次閱讀
- 基于ARM處理器的高效異常處理解決方案 1.8k次閱讀
- 對(duì)于嵌入式系統(tǒng)微處理器的詳細(xì)剖析 8.5k次閱讀
- 詳析32位嵌入式處理器與8位處理器應(yīng)用開發(fā)的三大不同 1.7k次閱讀
- 32位嵌入式處理器與8位處理器應(yīng)用開發(fā)的區(qū)別 2.5k次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊(cè)
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊(cè)
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊(cè)
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊(cè)
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊(cè)
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊(cè)
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動(dòng)汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 3PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 22次下載 | 免費(fèi)
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論