(文章来源:ofweek电子工程网)
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从断点中恢复现场,继续执行原指令序列。
电机控制模块的基本知识要点的详细介绍
生成对抗网络GAN的七大开放性问题
主控涨价:得一微宣布涨价50% SSD闪存价格还在跌
表示看不懂!60天后,津巴布韦所有加密货币活动都将全面禁止
动力电池企业开动率低市场需求疲软
关于32位嵌入式CPU中系统控制协处理器的设计
英飞凌750W伺服套件呈现完美性能
感受RFID服装门店系统的魅力
分析车载雷达通信系统用于自动驾驶和智慧交通的应用前景和发展趋势
电动汽车无线充电上路 SAE和IEC相继发“标”
四川航空公司打造出的成都大运号彩绘飞机已正式首航
电子元器件行业高低温循环试验箱的可靠性检测-贝尔试验设备
获得更高输出电流的三种方法
CDN运行概况怎么样?
IGBT开关频率和最大电流对扭矩影响分析
为汽车远程天线稳压器和电流检测放大器选择外部元件
ic是什么意思
冠石半导体光掩模版项目在宁波顺利封顶
ISO 1518油漆面耐划痕测试仪的简单说明
魅族MX6和魅蓝e2哪个好?配置参数详细解析