运算系统及设定运算系统的方法技术方案

技术编号:2918106 阅读:226 留言:0更新日期:2012-04-11 18:40
一种运算系统,其包括微处理器以接收用以设定该微处理器操作模式的数值。装置驱动器监视正在该微处理器中运作的应用软件中有哪些是在预定的应用软件列表中,并据以动态地将该数值写入该微处理器中以设定其操作模式。该装置驱动器能够设定的操作模式是如下列:数据预先撷取;分支预测;指令高速缓存退出;指令执行暂停;高速缓存大小;重排序缓冲;储存/加载/填充队列;和数据传递及分支目标地址高速缓冲存储器索引相关的杂凑算法;每个计时周期中转换、格式化及发出的指令数量;加载延迟机制;推测页面表格查找;指令合并;乱序执行延伸;非暂时数据暗示的高速缓冲存储器;及对应于指令高速缓冲存储器遗失的L2高速缓冲存储器及处理器总线的串联或并联存取。

【技术实现步骤摘要】

本专利技术是有关于微处理器,特别是有关于一种系统及方法,其用以基于目前在该微处理器上执行的应用软件,而动态地设定微处理器的运作特性。
技术介绍
微处理器的设计者花费很多心力在效能分析上。在以先前几代的微处理器为基础,设计了具有基本特性及效能目标之后,即执行对于客户而言最重要的应用软件,并撷取该应用软件的指令执行记录,然后使用撷取的指令记录来触发所设计的微处理器的运作,其可以设定被触发的微处理器的不同特性,以使得所有的目标应用软件的总和效能达到最高。通常,某个特定的设定对于某个目标应用软件的执行效能有益,但是对其它的应用软件的执行效能无益。此时,设计者必须决定哪一个应用软件是比较重要的,或者寻找另一个方法以平衡数个应用软件的需要。因为要使得某个应用软件的效能最佳化,常常必须要牺牲另一个应用软件的执行效能。当最佳平均运作参数值确定之后,微处理器的设计者将其编码到设计中(例如以VHDL或verilog语法)。另外,也可通过在微处理器中包含一组保险丝,其在微处理器制造的过程中会选择性地烧断,以改变其硬件构成的运作参数。这使得微处理器在制造时,还能够对应于在微处理器设计完成之后新加入的应用软件或操作系统,进行有限度的最佳化。但是,此种解决方案,需要有设计者/制造者针对某些应用软件选取较佳的设定,而牺牲了其它的应用软件的执行效能,或者,选取一个可能对于每一个应用软件而言都不是最佳的折衷设定,最后还是无法达成目标应用软件的效能最佳化。
技术实现思路
本专利技术提供一种装置驱动器,其在微处理器运作时,动态地设定其操作模式,以针对目前正在执行的应用软件,以改善效能及/或电力消耗。依据一实施态样,本专利技术提供一种运算系统。该运算系统包括微处理器,-->接收用以设定该微处理器操作模式的数值。该微处理器还执行操作系统,其控制哪些应用软件正在该微处理器中运作。该运算系统并包括装置驱动器,其监视正在该微处理器中运作的应用软件中有哪些是在预定的应用软件列表中,并据以动态地将该数值写入该微处理器中以设定其操作模式。依据另一实施态样,本专利技术提供一种设定运算系统的方法,该运算系统包含微处理器及装置驱动器。该方法包括由该微处理器接收用以设定该微处理器操作模式的数值。该微处理器执行操作系统,并控制哪些应用软件正在该微处理器中运作。该方法并包括由装置驱动器监视正在该微处理器中运作的应用软件中有哪些是在预定的应用软件列表中,并据以动态地将该数值写入该微处理器中以设定其操作模式。该装置驱动器能够设定的操作模式是如下列:数据预先撷取;分支预测;指令高速缓存退出;指令执行暂停;高速缓存大小;重排序缓冲;储存/加载/填充队列;和数据传递及分支目标地址高速缓冲存储器索引相关的杂凑算法;每个计时周期中转换、格式化及发出的指令数量;加载延迟机制;推测页面表格查找;指令合并;乱序执行延伸;非暂时数据暗示的高速缓冲存储器;及对应于指令高速缓冲存储器遗失的L2高速缓冲存储器及处理器总线的串联或并联存取。本专利技术的功效包括其可以以高效能及/或低耗能的方式执行重要的应用软件。为让本专利技术的上述和其它目的、特征、和优点能更明显易懂,下文特举出较佳实施例,并配合所附图式,作详细说明如下。附图说明图1显示本专利技术的包含微处理器和装置驱动器的运算系统的方块图。图2显示依据本专利技术图1中微处理器的不同操作模式设定值的示意图。图3显示本专利技术的图1的系统的运作流程图。[主要元件标号说明]运算系统100;微处理器102;装置驱动器104;操作系统106;系统存储器108;操作模式设定值暂存器112;一阶指令高速缓冲存储器(level-1instruction cache)114;一阶数据高速缓冲存储器(level-1datacache)116;二阶高速缓冲存储器(level-2 cache)118;分支预测器122;数-->据预先撷取器124;电力管理单元126;指令转换/格式器128;应用列表文件132;应用程序名称134;操作模式设定值136;预设操作模式设定值138;存储器管理单元(MMU)142;重排序缓冲器(ROB)144;数据预先撷取模式字段202;分支预测模式字段204;指令高速缓冲存储器退出模式字段206;暂停执行模式字段208;L1指令高速缓存大小字段212;L1数据高速缓存大小字段214;L2高速缓存大小字段216;转换/格式大小字段218;推测表格查找字段222;L1高速缓冲存储器遗失行为字段224;传送杂凑字段226;队列大小字段228;发出大小字段232;ROB大小字段234;乱序字段236;载入延迟字段238;非暂时载入/储存字段242。具体实施方式本专利技术是关于一个装置驱动器其监视正在操作系统的运作程序中的应用软件,并据以动态地将该数值写入微处理器中,以针对该正在执行的应用软件设定较佳的操作模式。该装置驱动器可以依据效能及/或电力消耗来设定该较佳操作模式。在此的「装置驱动器」(device driver)是指一般所谓的装置驱动器,以及动态连接数据库或能够直接写入微处理器中以改变其操作模式的其它软件元件。在此的「应用软件」(software application)则指一般所谓的应用软件,以及动态连接数据库或操作系统视为运作程序的其它软件元件。特别的是,该装置驱动器周期性地向操作系统查询目前正在执行的程序的程序名称,并将其与一个应用列表中的应用软件的名称比对,微处理器设计者已经针对该应用列表中的每一个应用软件设定其较佳的微处理器操作模式。依据一实施例,该应用列表包含于该装置驱动器存取的加密文件中。依据一实施例,该应用列表包含微处理器设计者认为对于客户重要的软件,包含评估微处理器的单位(entity)。参见图1,其显示本专利技术的包含微处理器102和装置驱动器104的运算系统100的方块图。微处理器102包括由装置驱动器104所写的操作模式设定值暂存器112。微处理器102亦包含功能单元,亦即:一阶指令高速缓冲存储器(level-1instruction cache)114、一阶数据高速缓冲存储器(level-1data cache)116、二阶高速缓冲存储器(level-2 cache)118、分支预测器122、数据预先撷取器124、电力管理单元126、指令转换/格式器128、存储器管理单元(MMU)142、重排序缓冲器(ROB)144。每一个功能单元都可以由装置驱-->动器104依据操作模式设定值暂存器112的内容设定为一或多个操作模式。在其它实施例中,功能单元的数量及种类可以与图1所示的不同。微处理器102和系统存储器108连接。系统存储器108储存装置驱动器104、操作系统106及应用列表文件132。装置驱动器104和应用列表文件132可以在一开始就储存在该系统的非易失性存储器(如磁盘驱动器)(图未显示)中,并由操作系统106加载系统存储器108中。应用列表文件132包含多个项目(entry),每一项目具有应用程序名称134,以及和该应用程序名称134对应的一组操作模式设定值136。应用列表文件132亦包含预设操作模式设定值138。应注意的是,所谓的「应用软件」,并不限于某些场合中的意义,例如像微软的Word或Adobe Acrobat等使用本文档来自技高网...

【技术保护点】
一种运算系统,其包括: 微处理器,接收用以设定该微处理器操作模式的数值,其中该微处理器还执行操作系统,其控制哪些应用软件正在该微处理器中运作;及 装置驱动器,其监视正在该微处理器中运作的应用软件中有哪些是在预定的应用软件列表中,并据以动态地将该数值写入该微处理器中以设定其操作模式。

【技术特征摘要】
US 2008-7-10 12/170,5911.一种运算系统,其包括:微处理器,接收用以设定该微处理器操作模式的数值,其中该微处理器还执行操作系统,其控制哪些应用软件正在该微处理器中运作;及装置驱动器,其监视正在该微处理器中运作的应用软件中有哪些是在预定的应用软件列表中,并据以动态地将该数值写入该微处理器中以设定其操作模式。2.根据权利要求1所述的运算系统,其中该预定的应用软件列表中的每一个项目包含程序名称及对应值,用以针对具有对应的该程序名称的该应用软件设定该微处理器的操作模式。3.根据权利要求2所述的运算系统,其中该装置驱动器周期性地比对正在该微处理器中运作的应用软件的程序名称及该预定的应用软件列表中每一个项目的该程序名称,并将比对符合的项目的数值写入该微处理器中,以设定其操作模式。4.根据权利要求1所述的运算系统,当正在该微处理器中运作的应用软件都没有在该预定的应用软件列表中时,该装置驱动器将默认值写入该微处理器中,以将其设定为预设操作模式。5.根据权利要求1所述的运算系统,其中该数值包含以下设定该微处理器操作模式的多种数值之一:用以设定该微处理器从系统存储器中预先撷取数据到其高速缓存的方式的一个数值;用以设定该微处理器预测分支指令的方式的一个数值;用以设定该微处理器从其指令高速缓存中退出指令的方式的一个数值;用以设定该微处理器暂时停止执行指令的一个数值;用以设定该微处理器暂时使其分支预测机制的一部分禁能的一个数值;用以设定该微处理器的高速缓存大小的一个数值;选择性地使得用该微处理器的分支目标地址高速缓冲存储器以预测分支指令禁能的一个数值;用以设定用以将该微处理器的分支目标地址高速缓冲存储器编索引的杂凑算法的一个数值;用以设定是否采取预设预测分支指令的一个数值;用以设定在每一计时周期中由该微处理器转换的指令数量的一个数值;用以设定在每一计时周期中由该微处理器格式化的可变长度指令数量的一个数值;用以选择性地使该微处理器的负载延迟机制禁能的一个数值;用以选择性地使该微处理器的推测页面表格查找禁能的一个数值;用以选择性地使该微处理器的软件预先撷取禁能的一个数值;用以选择性地使该微处理器的指令合并禁能的一个数值;用以设定当对应于该微处理器的第一阶指令高速缓冲存储器遗失时,该微处理器是否以串联或并联的方式从其第二阶高速缓冲存储器以及处理器总线要求遗失的指令的一个数值;用以设定该微处理器高速缓冲存储器由包含非暂时数据暗示的加载/储存指令所界定的数据的一个数值;用以设定该微处理器执行数据传递时所使用的杂凑算法的一个数值;用以设定该微处理器的重排序缓冲器的大小的一个数值;用以设定该微处理器的储存队列、加载队列或填充队列的一个数值;用以设定在每一计时周期中由该微处理器发出的指令数的一个数值;及用以设定该微处理器以乱序方式执行指令的程度的一个数值。6.一种设定运算系统的方法,该运算系统包含微处理器及装置驱动器,该方法包括:由该...

【专利技术属性】
技术研发人员:罗德尼E虎克柯林艾迪G葛兰亨利
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1