资料介绍
MIPS体系结构中的系统控制协处理器简称CP0,它提供指令正常执行所需的环境,进行异常/中断处理、高速缓存填充、虚实地址转换、操作模式转换等操作。单从硬件的角度而言,系统控制协处理器对指令集的作用就相当于操作系统对应用程序的作用一样。
异常处理
CPU运行过程中常常需要中断正常执行的指令流程,跳转去执行某段特殊的指令段,接着再恢复原来的指令序列。MIPS体系结构中称这样的过程为异常(Exception)。所有的异常都采用统一的机制处理。
对于异常情况,需要采取以下3方面的措施:
1) 异常检测:CPU需要及时检测出哪个部件发生了什么异常;一般而言,异常检测由各个模块进行,如加法溢出由加法器在运算过程中产生,并在相应的流水段被系统控制协处理器CP0读入。因此这部分功能不属于CP0的设计范围。
2) 异常处理:CPU按照优先级选择哪个异常被处理,并进行必要的上下文切换(Context Switch),为进入异常服务子程序做准备,保证与该种异常对应的服务程序被执行,并且能够从中断处完全恢复原来的指令执行现场。
3) 异常服务:执行异常服务子程序,这部分主要由软件(操作系统)来完成。
对异常处理机制的要求
与传统的异常/中断处理机制相比,在MIPS 4Kc体系结构下的异常处理需要特别考虑3个因素。
流水线的划分
本设计采用五段流水线设计,即每条指令的执行一般都经过IF(取指)、DE(指令译码)、EX(指令执行)、MEM(访问存储器)和WB(数据写回R.F.)五个步骤。因为指令动作被分割,所以异常源也被分割到各个流水线段。例如:加法溢出异常只能在EX被检测到。
精确异常处理机制
精确异常处理是指在发生异常时,仅仅对发生异常的指令或其后面的指令进行异常处理;而其前面的指令要保证能够正常结束。所谓“精确”,是指受到异常处理影响的只有产生异常条件的那条指令,所有在此之前的指令在异常被处理前都将被执行完成。异常处理结束后仍将从发生异常的指令开始继续执行。
操作模式切换
对于多进程操作系统,至少要区分两种进程:有特权的操作系统“核心”进程和一般程序的“用户”进程。当CPU检测到异常发生时,指令执行的正常顺序会被暂停,处理器进入核心模式。当异常服务子程序执行完后,CPU从断点中恢复现场,继续执行原指令序列。
异常处理流水线
根据上述分析可以确定,硬件异常处理流水线的主要任务有3个:更新相应的CP0寄存器,即写CP0寄存器;保存发生异常的指令地址,或当异常指令在延迟槽时,保存引起延迟槽的跳转指令地址;选择异常服务子程序的入口地址。
CP0寄存器记录了CPU当前的状态,因此,对CP0寄存器的写就是对CPU状态的改变,需要进行严格的控制。而且对寄存器的写是影响关键路径的主要因素。因此本文主要论述对CP0寄存器写操作的设计。
- 嵌入式处理器
- 嵌入式处理器
- 嵌入式控制系统的ARM处理器
- 基于ARM微处理器的嵌入式TCP-IP协议的实现与应用
- ARM处理器与嵌入式系统
- ARM嵌入式微处理器体系结构 34次下载
- 基于FPGA的嵌入式处理器设计 12次下载
- 嵌入式处理器的分类对比分析详细说明
- 使用ARM实现嵌入式处理器的最小系统 16次下载
- 嵌入式硬件系统教程之处理器的详细资料说明 7次下载
- 嵌入式系统教程之嵌入式处理器的详细资料说明 18次下载
- 嵌入式ARM微处理器体系结构研究 13次下载
- 嵌入式32位CPU系统控制协处理器异常处理及系统的设计与实现 3次下载
- 32位嵌入式CPU中系统控制协处理器的设计与实现
- 32位嵌入式处理器应用状况及前景分析
- 什么是嵌入式微处理器?嵌入式微处理器有哪些? 729次阅读
- 嵌入式微处理器的原理和应用 588次阅读
- 嵌入式处理器简介和种类 794次阅读
- 嵌入式处理器的种类有哪些 2w次阅读
- 32位嵌入式处理器与8位处理器的不同之处 2040次阅读
- 基于FPGA平台的嵌入式PowerPC协处理器实现算法加速设计 1229次阅读
- 解决CPU异常的功臣_系统控制协处理器的全定制设计 2458次阅读
- PSoC嵌入式系统设计的三大优势 3219次阅读
- arm的协处理器有几个?ARM协处理器详解 8823次阅读
- 手机上的协处理器有什么作用_苹果协处理器是干什么的 2.1w次阅读
- 嵌入式处理器汇总_常见的嵌入式处理器对比分析 1.4w次阅读
- 怎样将GPU作为CPU的协处理器工作 1.1w次阅读
- 详析32位嵌入式处理器与8位处理器应用开发的三大不同 1155次阅读
- 32位嵌入式处理器与8位处理器应用开发的区别 1528次阅读
- 基于ARM和VxWorks实现自动彩信发送的嵌入式系统 1836次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 11次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5DIY动手组装LED电子显示屏
- 0.98 MB | 3次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机PM2.5检测系统程序
- 0.83 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537797次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191186次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多