[发明专利]中央处理单元以及在其中执行上下文切换的方法有效
申请号: | 201480011422.7 | 申请日: | 2014-03-07 |
公开(公告)号: | CN105144100B | 公开(公告)日: | 2019-12-31 |
发明(设计)人: | 迈克尔·I·卡瑟伍德;布赖恩·克里斯;戴维·米基;约瑟夫·卡尼洛普洛斯 | 申请(专利权)人: | 密克罗奇普技术公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 11287 北京律盟知识产权代理有限责任公司 | 代理人: | 沈锦华 |
地址: | 美国亚*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 可编程 cpu 寄存器 硬件 上下文 交换 机制 | ||
本发明涉及一种中央处理单元CPU,其具有:中断单元,其用于中断指令的执行;多个上下文定义寄存器组,其中每一寄存器组具有相同数目个CPU寄存器;切换单元,其用于耦合所述CPU内的选定寄存器组,其中所述切换单元在发生异常后即刻切换到所述多个上下文定义寄存器组中的预定寄存器组;及控制寄存器,其经配置以控制由指令起始的对所述多个上下文定义寄存器中的寄存器组的选择且进一步可操作以指示当前所使用上下文。
本申请案主张于2013年3月12日提出申请的第61/777,887号美国临时申请案的权益,所述美国临时申请案的全文并入本文中。
技术领域
本发明涉及中央处理单元(CPU),特定来说涉及微处理器或微控制器中所使用的CPU。
背景技术
大部分CPU提供中断当前指令执行以执行所谓的中断例程的中断功能。从当前执行切换到此异常或中断例程中通常导致与中断上下文切换相关联的等待时间,所述等待时间在某些CPU中可(举例来说)高达28个CPU循环长。因此,需要对中断的经改进处理。
发明内容
根据一实施例,中央处理单元(CPU)可包括:中断单元,其用于中断指令的执行;多个上下文定义寄存器组,其中每一寄存器组具有相同数目个CPU寄存器;切换单元,其用于耦合所述CPU内的选定寄存器组,其中所述切换单元在发生异常后即刻切换到所述多个上下文定义寄存器组中的预定寄存器组;及控制寄存器,其经配置以控制由指令起始的对所述多个上下文定义寄存器中的寄存器组的选择且进一步可操作以指示当前所使用上下文。
根据又一实施例,所述控制寄存器可包括指示当前上下文的第一位字段及指示由所述指令选择的最近上下文的第二位字段。根据又一实施例,所述CPU可操作以执行用于起始上下文切换的指令。根据又一实施例,所述指令可为专用上下文交换指令。根据又一实施例,所述控制寄存器可为仅可读的。根据又一实施例,所述控制寄存器可为可读的且至少部分可写入的且所述指令为应用于所述控制寄存器以用于改变所述控制寄存器的内容以起始上下文切换的移动数据指令。根据又一实施例,所述中断单元可包括中断控制器,所述中断控制器可操作以指派多个优先级到多个中断源。根据又一实施例,所述多个寄存器组中的每一者可指派到中断级,使得在发生中断后即刻由所述切换单元取决于所述中断级而选择所述多个上下文定义寄存器组中的相应寄存器组。根据又一实施例,未指派中断级可默认到所述多个上下文定义寄存器组中的默认寄存器组。根据又一实施例,在发生具有未指派中断级的中断后,将不起始上下文切换。根据又一实施例,如果寄存器组经指派到已经指派到另一寄存器组的优先级,那么所述CPU可操作以将具有最低编号的所述寄存器组指派到所述选定优先级且解除指派所述相应另一寄存器组。根据又一实施例,所述CPU可进一步包括用于将所述中断级指派到所述多个寄存器组中的一者的熔丝字段。根据又一实施例,所述控制寄存器可在已执行上下文切换之后用新上下文更新。
根据另一实施例,一种用于在包括多个上下文定义寄存器组的中央处理单元(CPU)中执行上下文切换的方法,其中每一寄存器组具有相同数目个CPU寄存器,所述方法可包括:在发生异常后即刻自动切换到所述多个上下文定义寄存器组中的预定寄存器组,其中可进一步通过执行指令来手动起始对所述多个上下文定义寄存器中的寄存器组的选择;及在上下文控制寄存器中指示当前所使用上下文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于密克罗奇普技术公司,未经密克罗奇普技术公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201480011422.7/2.html,转载请声明来源钻瓜专利网。