指令变换装置和变换方法制造方法及图纸

技术编号:2876563 阅读:157 留言:0更新日期:2012-04-11 18:40
一种转换指令的指令转换装置和方法,其提供了具有功率控制信息的目标程序,而没有增加硬件的规模,也没引起用户太多的开发重任,同时保证软件很宽的范围。上述目的是由指令变换装置来完成的,当编译或汇编程序时,它静态地分析程序,并在分析的基础上,提供有功率控制指令的程序。上述指令变换装置很容易提供硬件资源是否投入运行的信息,它是借助于指令程序中的一条指令预先存在指令式的硬件资源表中,因此,检测不为某一专用指令区域工作的某一专门硬件资源,同时微处理器处于工作状态。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及指令变换装置和变换指令的方法,该指令提供了具有功率控制信息的目标程序,实现指令变换的程序和电路,以及执行变换指令的微处理器,在微处理器(包括微计算机,微控制器和数字信号处理器)中,它从指令存储单元(指令存储器,指令高速存储器,等等)读出目标程序,在解码器对其进行解码,根据内容控制硬件资源(处理单元,输入单元,输出单元,存储单元,控制单元,等)并顺序处理。首先,描述通过硬件控制功率的常规方法,在典型的微处理器工作中,指令解码器根据程序的进程,从指令存储单元获得指令码,对指令码解码,并根据各指令控制处理操作。在通过硬件的功率控制中,提取功率控制信息的指令解码器内置于微处理器中。图14表示在微处理器中通过硬件控制功率的电路的例子。一旦指令解码器1401从指令存储器接收到指令码,它指令寄存器之间相加,解码器判断数据存储器和外部接口将不进行工作,同时有关的指令码被执行了。当指令解码器1401每次接收到寄存器之间相加指令时,它对各电路发布停止数据存储器、外部接口操作的指令。这样,功率控制相对于寄存器之间加的指令而进行。此外,解码器还这样构建,使它能根据指令码的种类解码功率控制信息,例如减指令,读出指令等。因此,在每次解码各种指令码时,发布功率控制指令以减少功耗。接下来,描述通过软件控制功率的常规方法,在这方法中,用户描述程序判断哪一个硬件资源暂停工作而微处理器正执行目标程序,把功率控制指令直接写入程序。图15是在微处理器中通过软件控制功率的程序的例子。在这一例中,数据存储器没有用在区域1501中。用户在点1502插入暂停数据存储器(减少数据存储器的功率)的指令,并在1503点插入免除数据存储器暂停(增加数据存储器的功率)的指令,1503点正好是数据存储器再次起动前的点。这样,数据存储器根据上面两条指令在1501区暂停工作。虽然上面只以数据存储器举例说明,微处理器的其它电路也可以此方式控制,这些电路包括数据寄存器,数据总线,外部接口,甚至于电路的元件级,例如与(AND)元件。甚至在通过软件的功率控制法中,在微处理器内实际功率控制是由写在功率控制寄存器中的功率控制指令来实行的,该指令在指令解码器解码。在通过硬件的功率控制法中,解码器需这样构建,使它能解码相应于各种指令码的功率控制信息。如果要执行彻底的功率控制,就自然地使硬件的尺寸扩大到很大的规模。此外,如果存在多个可解码的指令,则用于解码操作的功耗增加。这就可能增加微处理器的总功耗。再有,因为功率控制信息只能在每一指令码单元提取,因此,对于随后的指令不可能实行预先的功率控制。在通过软件的功率控制法中,需要用户判断功率控制什么时候开始和结束,因此把功率控制指令写入程序。这样,用户开发的重任是明显的。此外,当控制点数增加时,写全部指令变得很困难。再有,功率控制的目标依照微处理器结构可以不同,即存储器结构,外部接口端数等。在这种情况下,每种模型将需要专用的程序,所以,共享一种程序,或用一种程序于其它应用是困难的。此外,当功率控制指令数写在多环的某一点或经常执行时,程序执行的速度下降。上述目标是由指令变换装置来完成的,当编译或汇编程序时,它静态地分析程序,并在分析的基础上,提供有功率控制指令的程序。上述指令变换装置很容易提供硬件资源是否投入运行的信息,它是借助于指令程序中的一条指令预先存在指令式的硬件资源表中,因此,检测不为某一专用指令区域工作的某一专门硬件资源,同时微处理器处于工作状态。至于提供功率控制指令的实际方法,它可借助于插入关于功率控制的指令,或借助于包含功率控制指令的指令代替不包含功率控制指令的指令的方法来实现。在用插入指令实现节省功耗的方法中,处理速度可能由于插入许多指令,增加循环数而降低。由于插入指令的结果,代码的长度增加了。但是这些缺点可借助于构建上述的指令变换装置来改善,所以,用户可用编译或汇编时的选项来确定功率控制电平,即代码尺寸和功率控制可用在几个步骤中选择一组插入的功率控制指令来调节。本专利技术的另一目的是解码前分析目标程序并提供关于功率控制的指令。从而,提供了实现低功耗而又能控制硬件的增加在一定规模内的指令变换电路。上述目的可由指令变换电路来实现,该电路包括指令式硬件资源存储器,用于预先存储某个专门的硬件资源是否由目标程序中的指令码运转的信息,该目标程序中的指令由微处理器执行;功率控制信息分析电路,用于根据存储在指令或硬件资源存储器中的信息,检测在某一个微处理器工作的指令区内没有工作的硬件资源;功率控制指令提供电路,用于根据指令式硬件资源分析电路检测的结果,提供具有功率控制指令的目标程序。本专利技术的另一目的是提供一种微处理器,它能执行上面指令变换设备产生的功率最优化的目标程序而没有招致操作错误,甚至当发生如中断、分支、异常等专门处理时。上述目标可借助于微处理器装备条件复位电路来实现,该电路在检测到任何中断、分支、异常时复位功率控制寄存器的条件于全部硬件资源工作的初始状态。附图说明图1表示本专利技术第一实施例的指令变换设备。图2是在本专利技术的指令式硬件资源表的例子。图3是在投入运用的指令式硬件资源上的数据例子。图4是本专利技术的功率控制信息检测单元的例子。图5表示插入指令程序中的功率控制指令的例子。图6表示本专利技术第一实施例的微处理器。图7表示用含有功率控制指令的指令代替指令程序中的指令的例子。图8表示本专利技术第一实施例的其它微处理器。图9表示本专利技术第二实施例的指令变换设备。图10表示本专利技术第三实施例的指令变换设备。图11表示在第三例中,机器语言指令如何提供功率控制信息的。图12表示本专利技术第四实施例的指令变换设备。图13表示本专利技术第五实施例的指令变换设备。图14表示通过硬件控制功率的常规方法。图15表示通过软件控制功率的常规方法。现在,参考附图详细描述本专利技术的第一实施例。指令变换设备的总结构图1表示根据本专利技术的第一实施例的指令变换设备。在该图中,指令程序101由微处理器执行。程序101可以是记忆描述的指令行或由高级语言(例如C语言或FORTRAN语言)描述的指令行。在本实施例中,作为例子,使用描述记忆的指令行。指令式硬件资源表103预先存储信息,以便微处理器中的哪个硬件资源由某一专门指令运行。指令式硬件资源分析单元102接收指令程序101作为输入,为了提取哪个硬件资源将投入运行的信息,在指令程序101中的每条指令,指令式硬件资源分析单元102参考指令式硬件资源表103。它输出指令式操作硬件资源的数据104。功率控制信息检测单元105接收指令式操作硬件资源的数据104作为输入,在进行时间顺序分析之后,为减少功耗,判断如暂停或重新起动硬件资源的功率控制指令应插入的地方,它输出功率控制指令数据106。根据功率控制指令数据106,功率控制指令提供单元107把暂停(减少功率)硬件资源,重新起动(增加功率)硬件资源或类似指令提供给指令程序101。功率控制指令提供单元产生功率最优化的指令程序108。由功率控制指令提供单元107产生的功率最优化指令程序108的内容输入到指令翻译单元109。指令翻译单元109产生并输出功率最优化目标程序110,它是由微处理器执行的机器语言指令行。指令式硬件资源表的详细结构指令式硬件资源表103参考图2进行说明。表103本文档来自技高网...

【技术保护点】
一种指令变换装置,用于最优化由一组适合微处理器执行的指令组成的指令程序,它有一组硬件资源,包括: 功率控制信息分析单元,用于检测功率可控的硬件资源,该硬件资源在所说的指令程序中的某一规定的指令区内不工作,而同时微处理器在工作; 功率控制指令提供单元,根据功率控制信息分析单元检测的结果提供具有功率控制指令的指令程序。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:谷丈畅
申请(专利权)人:松下电器产业株式会社
类型:发明
国别省市:JP[日本]

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

1
相关领域技术
  • 暂无相关专利