【技术实现步骤摘要】
本专利技术是关于微处理器的
,特别是关于在指令集中具有条件指令的微处理器。
技术介绍
由 Intel Corporation of Santa Clara, California 开发出来的 x86 处理器架构以及由ARM Ltd. of Cambridge, UK开发出来的先进精简指令集机器(ad vanced risemachines, ARM)架构是电脑领域中两种广为人知的处理器架构。许多使用ARM或x86处理器的电脑系统已经出现,并且,对于此电脑系统的需求正在快速成长。现今,ARM架构处理核心是主宰低功耗、低价段的电脑市场的需求,例如手机、手持式电子产品、平板电脑、网路路由器与集线器、机上盒等。举例来说,苹果iPhone与iPad主要的处理能力即是由ARM架构的处理核心提供。另一方面,x86架构处理器则是主宰需要高效能的高价段市场的需求,例如膝上电脑、桌上型电脑与服务器等。然而,随着ARM核心效能的提升,以及某些x86处理器在功耗与成本的改善,前述低价段与高价段市场的界线逐渐模糊。在移动运算市场,如智能型手机,这两种架构已经开始激烈竞争。在膝上电脑、桌上型电脑与服务器市场,可以预期这两种架构将会有更频繁的竞争。前述竞争态势使得电脑装置制造业者与消费者陷入两难,而无从判断哪一个架构将会主宰市场。更精确来说,哪一种架构的软件开发商将会开发更多软件。举例来说,一些每月或每年会定期购买大量电脑系统的消费个体,基于成本效率的考虑,例如大量采购的价格优惠与系统维修的简化等,会倾向于购买具有相同系统配置设定的电脑系统。然而,这些大型消费个体中的使用者群体 ...
【技术保护点】
【技术特征摘要】
2011.04.07 US 61/473,067;2011.04.07 US 61/473,069;1.ー种微处理器,包含 多个处理模式,包含一使用者模式与多个意外事件模式; 至少ー执行単元,用以在程序指令指定的操作数上执行多个算数运算; 一第一存储元件组,耦接于该执行単元,其中,该第一存储元件组包含一第一操作数子集,并提供该第一操作数子集给该执行単元; 一第二存储元件组,关联于各处理模式,其中,该第二存储元件组包含一第二操作数子集,其中,该第二存储元件组无法直接提供该第二操作数子集给该执行単元;以及 ー逻辑,其中,当从该些处理模式中的一当前处理模式进入一新处理模式时,该逻辑将该第一存储元件组中的该第一操作数子集存储至关联于该当前处理模式的第二存储元件组,并将关联于该新处理模式的该第二存储元件组中的该第二操作数子集恢复至该第一存储元件组。2.如权利要求I所述的微处理器,还包含 一第三存储元件组,其耦接于该执行単元,其中,该第三存储元件组包含一第三操作数子集,并提供该第三操作数子集至该执行単元; 其中该新处理模式是该些意外事件模式中的一第一意外事件模式; 一第四存储元件组,其关联于该第一意外事件模式,其中该第四存储元件组包含一第四操作数子集,其中该第四存储元件组无法直接提供该第四操作数子集至该执行単元;以及 一第五存储元件组,其关联于除了该第一意外事件模式的外的所有该些处理模式,其中,该第五存储元件组包含一第五操作数子集,其中该第五存储元件组无法直接提供该第五操作数子集至该执行単元; 其中,当从该当前处理模式进入该新处理模式或该第一意外事件模式时,该逻辑额外将该第三存储单元组的该第三操作数子集存储至该第五存储单元,并将该第四存储元件组中的该第四操作数子集恢复至该第三存储元件组; 其中,当从该第一意外事件模式进入该些意外事件模式的一第二意外事件模式时,该逻辑将该第三存储单元组的该第四操作数子集存储至该第四存储单元,并将关联于该新处理模式的该第五存储元件组中的该第三操作数子集恢复至该第三存储元件组。3.如权利要求2所述的微处理器, 其中,该微处理器利用该第一存储元件组的ー第一存储元件以保存该ARM ISA的ー堆迭式指示符寄存器操作数,并利用该第一存储元件组的ー第二存储元件以保存该ARM ISA的ー连结寄存器操作数,以在该ARM ISA的该连结寄存器操作数上的执行单元执行该些算数运算; 其中,各第二存储元件组包含一第一存储元件以保存一 ARM ISA堆迭式指示符寄存器操作数,以及ー第二存储元件以保存用以关联处理模式的一 ARM ISA连结寄存器操作数;其中,该微处理器利用该第三存储元件组以保存ARM ISA R8-R12通用寄存器的操作数,以在该ARM ISA R8-R12通用寄存器的操作数上的执行单元执行该些算数运算; 其中,该第四存储元件组包含多个用以保存ARM ISAR8-R12通用寄存器操作数的存储元件,以对应ARM ISA FIQ意外事件模式; 其中,该第五存储元件组包含多个用以保存ARM ISAR8-R12通用寄存器操作数的存储元件,以对应除了 ARM ISA FIQ意外事件模式的外全域的ARM ISA处理模式。4.如权利要求I所述的微处理器,其中该微处理器利用该第一存储元件组的该第一存储元件以保存该ARM ISA的一堆迭式指示符寄存器操作数,以及利用该第一存储元件组的该第二存储元件以保存该ARM ISA的ー连结寄存器操作数,以在该ARM ISA的该连结寄存器操作数上的执行单元执行该些算数运算。5.如权利要求I所述的微处理器,其中该第一存储元件组包含多个硬件寄存器,其中该第二存储元件组包含一随机存取存储器(RAM)。6.如权利要求5所述的微处理器, 其中,该随机存取存储器可通过该微处理器的微码进行载入或写入; 其中,该随机存取存储器不可通过ISA机器语言程序指令进行载入或写入。7.如权利要求I所述的微处理器,还包含 一超纯量乱序执行管线,包含 至少ー执行単元;以及 一载入单元(load unit),其偶接于该第一存储元件组,其中该第二存储元件组提供该第二操作数子集至该载入単元,其中该载入単元提供该第二操作数子集至该执行単元。8.如权利要求I所述的微处理器,其中该些意外事件模式包含该ARMISA意外事件模式。9.如权利要求I所述的微处理器,其中该逻辑包含该微处理器的微码。10.如权利要求I所述的微处理器,其中该逻辑包含一硬件组合逻辑。11.如权利要求I所述的微处理器,还包含 一指令转译器,用以将该ARM ISA机器语言的指令转译至多个微指令,其中至少ー ARMISA指令命令该微处理器自该当前处理模式进入至该新处理模式;以及 ー执行管线,用以执行该些微指令以将该第一存储元件组的该第一操作数子集存储至关联于该当前处理模式的该第二存储元件组,以及恢复关联于该新处理模式的该第二存储元件组的该第二操作数子集至该第一存储元件组。12.如权利要求11所述的微处理器,其中该指令转译器还将X86ISA机器语言指令的指令转译为多个微指令,其中该些微指令是以不同于X86ISA指令集的指令的编码方式进行编码,其中该执行管线还执行该些微指令以产生由X86ISA指令所定义的結果。13.—种操作一微处理器的方法,该微处理器包含多个处理模式,该些处理模式具有一使用者模式以及多个意外事件模式,其中该微处理器还包含至少ー执行単元,该执行単元通过特定程序指令在操作数上执行多个算数运算,该方法包含 当该微处理器在该些处理模式中的一当前处理模式运行吋,自ー第一存储元件组中提供一第一操作数子集至该执行単元以执行该些算数运算; 自该当前处理模式进入该些处理模式的一新处理模式时,包含以下步骤 将该第一存储元件组的该第一操作数子集存储至关联于该当前处理模式的一第二存储单元组; 将该关联于该新处理模式的一第三存储元件组的ー第二操作数子集恢复至该第一存储元件组;以及 当该微处理器于该新处理模式中运行吋,自该第一存储元件组提供该第二操作数子集至该执行単元以执行该些算数运算。14.如权利要求13所述的方法,还包含 当该微处理器于该当前处理模式下运行吋,自ー第四存储元件组提供一第三操作数子集至该执行単元以执行该些算数运算; 其中当自该当前处理模式进入该新处理模式时,还包含 将该第四存储元件组的该第三操作数子集存储至关联于该新处理模式的一第五存储元件组;以及 将ー第六存储元件组的ー第四操作数子集恢复至该第四存储元件组,且该第六存储元件组关联于除该第一意外事件模式的外的该些处理模式; 当该微处理器于该新处理模式下运行吋,自该第四存储元件组提供该第四操作数子集至该执行単元以执行该些算数运算; 自该新处理模式进入该些处理模式的一第三处理模式时,包含 自该第四存储元件组的第四操作数子集存储至该第六存储元件组;以及将该第五存储元件组的该第三操作数子集恢复至该第四存储元件组以及当该微处理器于该第三处理模式下运行吋,自该第四存储元件组提供该第三操作数子集至该执行単元以执行该些算数运算。15.如权利要求14所述的方法,其中该第一存储元件组的ー第一存储元件具有一ARMISA的堆迭式寄存器操作数以及该第一存储元件组的ー第二存储元件具有一 ARM ISA的连结寄存器操作数,以在该ARM ISA的该连结寄存器操作数上的执行单元执行该些算数运算; 其中,该第二存储元件组与该第三存储元件组各包含具有一 ARM ISA堆迭式指示符寄存器操作数的一第一存储元件以及ー关联于该些处理模式并具有一ARM ISA连结寄存器操作数的一第二存储元件; 其中,该第四存储元件组具有ARM ISA R8-R12通用寄存器,以在该ARM ISA R8-R12通用寄存器上的执行单元执行该些算数运算; 其中,该第五存储元件组具有ARM ISA R8-R12通用寄存器操作数的存储元件,以对应该ARM ISAFIQ意外事件模式; 其中,该第六存储元件组包含具有ARM ISA R8-R12通用寄存器操作数的存储元件,以对应该除了该ARM ISAFIQ意外事件模式外所有的该些ARMISA处理模式。16.如权利要求13所述的方法,其中该第一存储元件组的ー第一存储元件具有该ARMISA的一堆迭式指示符寄存器操作数,以及该第一存储元件组的该第二存储元件具有该ARMISA的ー连结寄存器操作数,执行单元以在该ARM ISA的ー连结寄存器操作数上执行该些算数运算。17.如权利要求13所述的方法,其中该些意外事件模式包含该ARMISA意外事件模式。18.如权利要求13所述的方法,还包含 将ARM ISA机器指令语言的指令转译至多个微指令,其中至少ー ARMISA的指令命令该微处理器自该当前处理模式进入该新处理模式;以及 执行该些微指令以将该第一存储元件组的该第一操作数子集存储至关联于该当前处理模式的该第二存储元件组,以及将关联于该新处理模式的该第二存储元件组的该第二操作数子集恢复至该第一存储元件组。19.如权利要求18所述的方法,还包含 将X86ISA机器指令语言的指令转译至该些微指令,其中该些微指令是以不同于X86ISA指令集的指令的编码方式进行编码。20.一种电脑程序产品,编码于至少ー电脑可读取存储介质,以使用于ー运算装置,该电脑程序产品包括 适用于该介质的电脑可读取程序码,用以特定于ー微处理器,包含 一第一程序码,用以特定于多个处理模式,该些处理模式包含一使用者模式与多个意外事件模式; 一第二程序码,用以特定于至少一执行单元,该执行単元通过特定程序指令在操作数上执行多个算数运算; 一第三程序码,用以特定于ー第一存储元件组,该第一存储元件组耦接于该执行単元,其中该第一存储元件组具有一第一操作数子集,并提供该第一操作数子集至该执行単元; 一第四程序码,用以特定关联于该些处理模式的一第二存储元件组;其中该第二存储元件组具有一第二操作数子集,其中该第二操作数不可直接提供该第二操作数子集至该执行単元;以及 一第五程序码,用以特定ー逻辑,其中当自ー当前处理模式进入该些处理模式的一新处理模式吋,该逻辑存储该第一存储元件组的第一操作数子集至关联于该当前处理模式的该第二存储元件组,并恢复关联于该新处理模式的该第二存储元件组的该第二操作数子集至该第一存储元件组。21.如权利要求20所述的电脑程序产品,其中,该至少一电脑可读取存储介质是选自由碟片、磁带、或是其他磁性、光学或电子的存储介质以及网路、缆线、无线或其他通信介质所构成的一群组。22.—种微处理器,其支持一 ISA,该ISA特定多个处理模式以及特定多个架构寄存器,且该些架构寄存器关联于各处理模式,以及特定ー载入多重指令,该载入多重指令指令该微处理器自存储器内载入数据,并传入特定于该载入多重指令ー个或多个架构寄存器,该微处理器包含 一直接存储器,具有关联于该些架构寄存器的一第一部分的数据,并耦接于该处理器的至少ー执行単元,以提供该数据给该执行単元; ー间接存储器,具有关联于该些架构寄存器的一第二部分的数据,其中该间接存储器无法直接提供关联于该架构寄存器的该第二部分的数据至该执行单元; 其中,该些架构寄存器依据该些处理模式中的一当前处理模式,动态地分布于该架构寄存器的该第一部分与该架构寄存器的该第二部分;以及 其中,各架构寄存器特定于该载入多重指令 若当该架构寄存器位于该第一部分,该微处理器自存储器内载入数据,并传入至该直接存储器;以及 若当该架构暂存既位于该第二部分,该微处理器自存储器内载入数据,并传入至该直接存储器,而后将该直接存储器的数据转至该间接存储器。23.如权利要求22所述的微处理器,其中该微处理器所支持的该ISA包含ARMISA,其中,特定于ISA的该些处理模式包含ARM ISA使用者、系统、管理者、终止、未定、IRQ以及FIQ处理模式,其中,特定于该ISA的该架构寄存器包含关联于该使用者处理模式的ARMISA R0-R14寄存器,以及关联于该管理者、终止、未定、IRQ与FIQ处理模式的备份寄存器,其中特定于该ISA的该载入多重指令包含ARM ISA载入多重指令。24.如权利要求22所述的微处理器,还包含 一指令转译器,用以将该载入多重指令转译为该微处理器可执行的多个微指令,其中,各架构寄存器特定于该载入多重指令 若当该架构寄存器位于该第一部分,该指令转译器发送ー微指令,以自该存储器载入数据转入至该直接存储器; 若当该架构寄存器位于该第二部分,该指令转译器发送ー第一微指令,以自该存储器载入数据转入至该直接存储器,并且发送一第二微指令以将该直接存储器的数据转至该间接存储器。25.如权利要求24所述的微处理器,其中该指令转译器包含 一第一部分,发送该微指令以自存储器内载入数据,并送入该直接存储器,以及发送该第一微指令以自存储器内载入数据,并送入该直接存储器,其...
【专利技术属性】
技术研发人员:G葛兰亨利,泰瑞派克斯,罗德尼E虎克,
申请(专利权)人:威盛电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。