控制器

阅读:1051发布:2020-05-20

专利汇可以提供控制器专利检索,专利查询,专利分析的服务。并且通过可消除动作中的 频率 变更所需的时间滞后,并准确迅速地执行与任务对应的频率控制,实现可降低耗电的微 控制器 。通过在操作码上附加确定系统时钟的分频比的频率控制 信号 ,并由流 水 线处理与操作码一起取出该频率 控制信号 进行译码,能够在执行指令的流水线处理中进行频率控制,从而可消除频率变更所需的时间滞后。,下面是控制器专利的具体信息内容。

1.一种微控制器,其中:
设有处理器,它将振荡频率的1/n(n为分频比、不小于1的整数) 的不同频率的多个时钟信号中与频率信息对应的所述时钟信号作为系 统时钟输入,与所述系统时钟同步动作,对于由存储在存储器中的操 作码和操作数构成的指令程序,由流线处理取出所述操作码和所述 操作数进行译码,并基于该译码结果执行所述指令程序;
在所述操作码上附加确定所述系统时钟的分频比的频率控制信号 并存储到所述存储器中;
所述处理器,通过由流水线处理与所述操作码一起取出所述频率 控制信号并进行译码,输出与所述频率控制信号对应的所述频率信 息。
2.一种微控制器,其中:
设有处理器,它将振荡频率的1/n(n为分频比、不小于1的整数) 的不同频率的多个时钟信号中与频率信息对应的所述时钟信号作为系 统时钟输入,与所述系统时钟同步动作,对于由存储在存储器中的扩 展码、操作码和操作数构成的指令程序,由流水线处理取出所述扩展 码、所述操作码和所述操作数进行译码,并基于该译码结果执行所述 指令程序;
由机器码构成所述操作码,设置成由与各分频比对应地分类到页 面的由多个页面形成的指令映像
使与所述操作码一起被流水线处理的所述扩展码上含有表示所述 指令映像的页面的信息;
所述处理器,通过由流水线处理取出所述扩展码并进行译码,输 出依据分频比的所述频率信息,该分频比与所述扩展码所表示的所述 指令映像的页面对应。
3.如权利要求1所述的微控制器,其特征在于:
设有时钟脉冲发生器,它生成所述振荡频率的1/n(n为分频比、 不小于1的整数)的不同频率的多个时钟信号,并从其中选择与从所 述处理器输出的所述频率信息对应的时钟信号作为所述系统时钟向所 述处理器输出。
4.如权利要求2所述的微控制器,其特征在于:
设有时钟脉冲发生器,它生成所述振荡频率的1/n(n为分频比、 不小于1的整数)的不同频率的多个时钟信号,并从其中选择与从所 述处理器输出的所述频率信息对应的时钟信号作为所述系统时钟向所 述处理器输出。
5.如权利要求3所述的微控制器,其特征在于,
所述时钟脉冲发生器中设有:
输出所述振荡频率的1/n(n为分频比、不小于1的整数)的不同 频率的多个时钟信号的分频单元;
基于选择信号从所述分频单元所输出的所述多个时钟信号中选择 一个时钟信号作为所述系统时钟加以输出的选择单元;以及
将与从所述处理器输出的所述频率信息对应的所述选择信号输出 到所述选择单元的控制单元。
6.如权利要求4所述的微控制器,其特征在于,
所述时钟脉冲发生器中设有:
输出所述振荡频率的1/n(n为分频比、不小于1的整数)的不同 频率的多个时钟信号的分频单元;
基于选择信号从所述分频单元所输出的所述多个时钟信号中选择 一个时钟信号作为所述系统时钟加以输出的选择单元;以及
将与从所述处理器输出的所述频率信息对应的所述选择信号输出 到所述选择单元的控制单元。
7.如权利要求1所述的微控制器,其特征在于,设有ROM代码 化单元,它根据确定源程序中所描述的所述系统时钟的分频比的分频 比设定描述生成所述频率控制信号,并附加在由所述分频比设定描述 的后段的指令生成的所述操作码上并进行ROM代码化。
8.如权利要求1所述的微控制器,其特征在于,设有ROM代码 化单元,它根据确定源程序中所描述的所述系统时钟的分频比的所述 分频比设定描述生成所述频率控制信号,若所述分频比设定描述的前 段指令的执行周期数未达到基准数,则将所述频率控制信号附加在由 所述分频比设定描述的前段指令生成的所述操作码上,若为基准数以 上则将所述频率控制信号附加在由所述分频比设定描述的后段的指令 生成的所述操作码上并进行ROM代码化。
9.如权利要求2所述的微控制器,其特征在于,设有ROM代码 化单元,它根据确定源程序中所描述的所述系统时钟的分频比的分频 比设定描述选择与分频比对应的所述扩展码,从所述扩展码所表示的 指令映像的页面选择与所述分频比设定描述的后段的指令相当的所述 操作码并进行ROM代码化。

说明书全文

技术领域

发明涉及与系统时钟同步动作,通过流线处理取出、译码 和执行ROM等存储器上的指令程序的控制器

背景技术

在以低耗电的观点重新对使用微控制器的系统进行评价时,不 是在所有的任务中都需要微控制器以最高频率动作。要点是,以不 使系统的性能受损的最低动作频率即可。
在一般的微控制器中设想这样的情况:设定一种能够在从原振 荡信号生成系统时钟的过程中变更分频比的结构。
在传统的微控制器中,一般通过对被地址映像的寄存器设定任 意数据来进行分频比的控制,但在这种结构中即使对耗电、动作频 率尝试精细的控制,也将产生用以写入的指令执行周期份额的时间 损耗,从而不能得到预期的频率控制和功率控制的效果。作为对这 些问题的解决方案,已公开了一种按照所存取的存储器空间来变更 频率的技术(例如参照特开平2-118811号公报)。但是,这时需 要执行向被分配到要变更频率的存储器空间的跳转指令,因此是尚 未完善的解决方案。
以下,就如上所述的传统微控制器进行说明。图10、图11是表 示传统微控制器的大体结构的框图,图10详细表示了其内部的时钟 脉冲发生器的结构,图11详细表示了其内部的CPU的结构。
在图10中,1000为微控制器,100为CPU。CPU100除了经总 线与ROM700、时钟脉冲发生器800连接之外,还从时钟脉冲发生 器800输入系统时钟sysclk。微控制器1000与该sysclk同步动作。 时钟脉冲发生器800以原振荡信号oscin作为输入,由时钟分频电路 801、选择器802、时钟分频控制电路803以及时钟分频控制寄存器 804构成。时钟分频电路801对oscin进行分频,除一分频信号之外 还生成多个分频信号。时钟分频控制寄存器804是可根据CPU100的 处理指令来进行读出/写入的寄存器,对根据被设定的数据选择由时 钟分频电路801生成的分频信号之一的信息进行保持。时钟分频控 制电路803基于时钟分频控制寄存器804中所设定的数据调整时钟 切换的定时,输出选择器802的控制信号oscsel。选择器802根据oscsel 从时钟分频电路801输出的分频信号中选择一个,作为sysclk传送 给CPU100。
在图11中,CPU100由指令解码器400、数据总线300、数据寄 存器500、地址寄存器600以及总线接口200构成,CPU内部的数据 经总线接口200进行交换,CPU的动作由微代码(MIR)来控制。
以下,以8比特的微控制器为例就如上述构成的微控制器的一 般动作进行说明。
首先,从ROM700输入的数据经总线接口200进入指令解码器 400内的指令取出缓冲器(IFB)401中,经指令缓冲器(IB)402后 分成操作码和操作数。
从IB402输出的操作码输入到指令寄存器(IR)403中后被可编 程逻辑阵列(PLA)404译码,然后作为MIR供给总线接口200、数 据总线300、指令解码器400的各构成,各构成块根据输入的MIR 进行处理动作。
另外,从IB402输出的操作数按照MIR,或者传送给数据总线300 或者传送给数据寄存器500或地址寄存器600等。
为了变更系统时钟sysclk的分频比,通过向被地址映像的时钟 分频控制寄存器804写入与各分频比相当的设定值,由时钟分频控 制电路803调整切换定时,将选择信号oscsel输出到选择器802,选 择器802按照该选择信号选择分频信号并作为sysclk传送到 CPU100。
以下,利用程序例和时序图,就如以上的传统微控制器的动作 进行说明。
图12A、图12B、图12C是传统微控制器的指令格式、程序例、 动作时序图。以下,用(1)~(7)置换图12B、图12C中用圆圈 表示的数字进行说明。
指令格式由表示指令映像的页面数的4比特扩展码、8比特的操 作码以及4×n比特(n=1,2…)的操作数构成。
程序例作为执行从(1)至(7)的指令的程序,在以sysclk作 为oscin的一分频信号执行指令(1)之后,由指令(2)将分频比从 一分频切换成二分频。在执行完指令(3)和(4)之后,由指令(5) 再次返回至一分频执行指令(6)和指令(7)。在时序图中所示的 记号中,(1)-1表示程序例的指令(1)的第一半字节的机器码, (1)μ-1表示指令(1)的执行周期的第一周期。T1、T2分别表示 sysclk的下降沿、上升沿的定时。
在定时A,由于oscsel为‘L’所以sysclk以1/1oscin(一分频 信号)的周期动作。IFB401、IB402在T1从ROM700取出指令(1) -1和(1)-2。由于指令(1)-1为扩展码,(1)-2为操作码 的第一半字节而不是操作数,因此所有数据均输出到IR403。在定时 B,IR403在T2存(1)-1、2并输出到PLA404,PLA404开始 解码。由于(1)-1为扩展码,(1)-2在操作码的第二半字节被 取出之前不被处理,因此,在下一个T1即定时C只将与(1)-1 相当的MIR((1)μ-1)作为扩展码的识别周期输出。与此同时, IFB401取出指令(1)-3和(2)-1。在定时D,IR403取得指令 (1)的剩余一个半字节的操作码(1)-3,与等待处理的(1)-2 一起由PLA404解码。在定时E,输出(1)-2、3的MIR((1)μ -2)同时IFB401取出(2)-2、3。另外,在定时D未被IR403取 得的(2)-1在定时E转移到IB402。再有,如(3)-1扩展码经 过IFB401、IB402时,由于在这期间进行识别,因此在定时F不被IR403 取得,而由IR403取得操作码即(3)-2、3。
在指令(2)中,通过在执行周期(2)μ-3中的向时钟分频控 制寄存器804的写入,oscsel在定时G变成‘H’,将sysclk从1/1oscin (一分频信号)变更为1/2oscin(二分频信号)。同样,通过指令(5) 将sysclk从1/2oscin返回至1/1oscin。
如上所述,传统的微控制器可通过对时钟分频控制寄存器804 的写入指令来控制频率。
但是,在如上述的传统微控制器中,为了变更频率,需用多个 周期来执行对寄存器的写入指令。因此,就存在在维持系统性能不 变的情况下不能精细地通过频率控制来调整耗电。

发明内容

本发明为了解决上述的传统问题而提出,其目的在于:提供一 种可消除频率变更所需的时间滞后,并能够通过准确、迅速地执行 与任务相对应的频率控制来降低耗电的微控制器。
本发明的第一微控制器中设有处理器,它将振荡频率的1/n(n 为分频比、不小于1的整数)的不同频率的多个时钟信号中与频率 信息对应的时钟信号作为系统时钟输入,与系统时钟同步动作,对 于由存储在存储器中的操作码和操作数构成的指令程序,由流水线 处理取出操作码和操作数进行译码,并基于该译码结果执行指令程 序。操作码上附加了确定系统时钟的分频比的频率控制信号,存储 在存储器中;处理器通过由流水线处理与操作码同时取出频率控制 信号并进行译码,输出与频率控制信号对应的频率信息。
依据该结构,由于控制频率的信息在流水线中与操作码同样被 处理,因此,无需像传统技术那样向频率控制寄存器写入设定数据, 能够在不使系统的性能受损的情况下精细地进行频率控制,并有效 地降低微控制器的耗电。
另外,本发明的第二微控制器中设有处理器,它将振荡频率的1/n (n为分频比、不小于1的整数)的不同频率的多个时钟信号中与频 率信息对应的时钟信号作为系统时钟输入,与系统时钟同步动作, 对于由存储在存储器中的扩展码和操作码以及操作数构成的指令程 序,通过流水线处理取出扩展码和操作码以及操作数进行译码,并 基于该译码结果执行指令程序。该控制器由机器码构成操作码,设 置成由与各分频比对应地分类到页面的由多个页面形成的指令映 像;使与操作码同时被流水线处理的扩展码含有表示指令映像的页 面的信息;处理器通过由流水线处理取出扩展码并进行译码,输出 与分频比对应的频率信息,该分频比与扩展码所表示的指令映像的 页面对应。
依据该结构,由于原有的扩展码区含有频率控制信息,所以不 会增加电路规模,并且比操作码更早地被解码,因此,能够容易地 使要变更频率的指令的执行周期与频率变更定时相一致,更准确地 实现应程序开发人员意图的低耗电化。
另外,在第一和第二微控制器中可设置时钟脉冲发生器,它生 成振荡频率的1/n(n为分频比、不小于1的整数)的不同频率的多 个时钟信号,并从中选择与处理器输出的频率信息对应的时钟信号 作为系统时钟向处理器输出。
另外,该时钟脉冲发生器可由以下单元构成:输出振荡频率的1/n (n为分频比、不小于1的整数)的不同频率的多个时钟信号的分频 单元;基于选择信号从分频单元输出的多个时钟信号中选择一个时 钟信号作为系统时钟加以输出的选择单元;以及将与从处理器输出 的频率信息对应的选择信号输出到选择单元的控制单元。
另外,在第一微控制器中可设置ROM代码化单元,它根据确定 源程序中所描述的系统时钟的分频比的分频比设定描述来生成频率 控制信号,并将它附加在由分频比设定描述的后段的指令生成的操 作码上并进行ROM代码化。
因此,在操作码上附加频率控制信号,不会给程序开发人员带 来负担,可由编译程序自动完成机器码化。
另外,在第一微控制器中可设置ROM代码化单元,它根据确定 源程序中所描述的系统时钟的分频比的分频比设定描述来生成频率 控制信号,并且,在分频比设定描述的前段指令的执行周期数未满 基准数时将频率控制信号附加在由分频比设定描述的前段指令生成 的操作码上,在其为基准数以上时将频率控制信号附加在由分频比 设定描述的后段的指令生成的操作码上并进行ROM代码化。
由此,能够将频率控制信号与操作码同时解码,并减小因被执 行前的处理时间引起的要变更频率的指令的执行周期和频率变更定 时的误差。
另外,在第二微控制器中可设置ROM代码化单元,它根据确定 源程序中所描述的系统时钟的分频比的分频比设定描述来选择与分 频比对应的扩展码,从扩展码所表示的指令映像的页面选择与分频 比设定描述的后段的指令相当的操作码并进行ROM代码化。
由此,设定系统时钟的分频比、选择与该分频比相当的指令码 可通过固有的分频比设定描述不会给程序开发人员带来负担,可由 编译程序自动完成机器码化。
附图说明
图1是表示本发明第一实施例的微控制器的大体结构的框图。
图2是表示本发明第一实施例的微控制器的大体结构的框图。
图3A是表示本发明第一实施例的微控制器的指令格式的图。
图3B是表示本发明第一实施例的微控制器的程序例的图。
图3C是本发明第一实施例的微控制器的动作时序图。
图4是表示本发明第二实施例的微控制器的大体结构的框图。
图5A和图5B是本发明第二实施例的微控制器的指令映像的说 明图。
图6A是表示本发明第二实施例的微控制器的指令格式的图。
图6B是表示本发明第二实施例的微控制器的程序例的图。
图6C是本发明第二实施例的微控制器的动作时序图。
图7A是表示本发明第三实施例的微控制器中的机器码的生成和 对ROM的配置顺序的流程图
图7B是表示在本发明的第三实施例中由编译程序从程序源生成 机器码的方法的图。
图8A是表示本发明第四实施例的微控制器中的机器码的生成和 对ROM的配置顺序的流程图。
图8B是表示在本发明的第四实施例中由编译程序从程序源生成 机器码的方法的图。
图8C是本发明第四实施例的微控制器的动作时序图。
图9A是表示本发明第五实施例的微控制器中的机器码的生成和 对ROM的配置顺序的流程图。
图9B是表示在本发明的第五实施例中由编译程序从程序源生成 机器码的方法的图。
图10是表示传统微控制器一般的大体结构的框图。
图11是表示传统微控制器一般的大体结构的框图。
图12A是表示传统微控制器的指令格式的图。
图12B是表示传统微控制器的程序例的图。
图12C是传统微控制器的动作时序图。

具体实施方式

以下,参照附图,就本发明的实施例进行详细的说明。
(第一实施例)
以下就本发明的第一实施例的微控制器进行说明。图1、图2是 表示第一实施例的微控制器的大体结构的框图。图1详细表示了微 控制器内部的时钟脉冲发生器的结构,图2详细表示了微控制器内 部的CPU的结构。
在图1中,1000为微控制器,100为CPU。CPU100与ROM700 经总线连接,时钟脉冲发生器800由时钟分频电路801、选择器802 以及时钟分频控制电路803构成,以原振荡信号oscin为其输入信号, 根据从CPU100输出的微代码MIR确定系统时钟sysclk的分频比, 传送给CPU100。微控制器1000与该sysclk同步动作。时钟分频电 路801对原振荡信号oscin进行分频,除一分频信号之外还生成多个 其它的分频信号。时钟分频控制电路803基于从CPU100输出的MIR 来调整时钟切换的定时,并输出选择器802的控制信号oscsel。选择 器802根据oscsel从时钟分频电路801输出的分频信号中选择一个信 号,作为sysclk传送给CPU100。
在图2中,CPU100由指令解码器400、数据总线300、数据寄 存器500、地址寄存器600、总线接口200构成,经总线接口200进 行CPU内部的数据交换,通过微代码(MIR)控制CPU的动作。
以下,就如上述构成的第一实施例的微控制器的动作进行说明。
首先,从ROM700输入的数据经总线接口200被取到指令解码 器400内的指令取出缓冲器(IFB)401中,经过指令缓冲器(IB)402 之后被分成操作码和操作数。
从IB402输出的操作码输入到指令寄存器(IR)403中之后,被 可编程逻辑阵列(PLA)404译码,作为MIR供给总线接口200、数 据总线300、指令解码器400的各构成块,各构成决根据输入的MIR 执行处理动作。
另外,从IB402输出的操作数按照MIR,或者传送给数据总线300 或者传送给数据寄存器500或地址寄存器600等。
变更系统时钟sysclk的分频比的原理是,将附加于操作码的频 率控制信号和操作码一起译码,作为MIR传送给时钟分频控制电路 803。在时钟分频控制电路803中基于所传送的MIR调整切换定时, 将选择信号oscsel输出到选择器802,用选择器802选择分频信号并 作为sysclk传送给CPU100。
利用程序例和时序图,就如以上所述的第一实施例的微控制器 的动作进行说明。
图3A、图3B、图3C是第一实施例微控制器的指令格式、程序 例、动作时序图。这里表示了以8比特的微控制器为例将sysclk的 分频比从oscin的一分频切换成二分频,然后再切换成一分频的动作。 以下,用(1)~(7)置换图3B、图3C中用圆圈表示的数字进行 说明。
指令格式由表示指令映像的页面数的4比特扩展码、8比特的操 作码、附加于操作码的1比特的频率控制信号(频率控制位)以及4 ×n比特(n=1,2…)的操作数构成。
程序例作为执行从(1)至(7)的指令的程序,由指令(3)将 sysclk的分频比从oscin的一分频切换成二分频,在指令(6)之后再 切换成一分频。附加于操作码中的频率控制信号用*0或*1来表示, *0时选择一分频,*1时选择二分频。在时序图中所示的记号中,(1) -1表示程序例的指令(1)的第一半字节的机器码,(1)μ-1表 示指令(1)的执行周期的第一周期。T1、T2分别表示sysclk的下 降沿、上升沿的定时。
在定时A,由于oscsel为‘L’所以sysclk以1/1oscin(一分频 信号)的周期动作。IFB401、IB402在T1从ROM700取出指令(1) -1和(1)-2。由于指令(1)-1为扩展码,(1)-2为操作码 的第一半字节而不是操作数,因此所有数据均输出到IR403。在定时 B,IR403在T2锁存(1)-1、2并输出到PLA404,PLA404开始 解码。由于(1)-1为扩展码,(1)-2在取出操作码的第二半字 节之前不被处理,因此,在下一个T1即定时C只将与(1)-1相 当的MIR((1)μ-1)作为扩展码的识别周期输出。与此同时,IFB401 取出指令(1)-3和(3)-1。在定时D,IR403取得指令(1)的 剩余一个半字节的操作码(1)-3,与等待处理的(1)-2一起由 PLA404解码。在定时E,输出(1)-2、3的MIR((1)μ-2)同 时IFB401取出(3)-2、3。另外,在定时D被IR403取得的(3) -1在定时E转移到IB402。再有,如(3)-1扩展码经过IFB401、 IB402时,由于在这期间被识别,因此在定时F不被IR403取得,IR403 取得操作码(3)-2、3。
由于(3)-3在附加的频率控制信号上含有二分频控制的信息 (*1),因此,在(3)μ-1的周期中被作为MIR输出到时钟脉冲 发生器800。时钟分频控制电路803调整切换定时,在定时G将oscsel 设为‘H’,将sysclk切换成1/2oscin(二分频信号)。同样,根据 附加于指令(6)的频率控制信号返回至1/1oscin。
再有,所附加的频率控制信号并不仅限于1比特,根据微控制 器的规格也可以为几比特。
依据如以上所述的第一实施例,通过在操作码上附加确定系统 时钟的分频比的频率控制信号,与操作码同样地在流水线中进行处 理,因此,不需要如传统技术那样花费向频率控制寄存器(804)写 入设定数据所用的时间,能够不使系统的性能受损地有效降低微控 制器的耗电。另外,在本实施例中以8比特的微控制器为例进行了 说明,但如果比特数增加,则由于所附加的比特对电路规模的影响 极小,本发明的效果会更加显著。
(第二实施例)
以下就本发明的第二实施例的微控制器进行说明。
图4是表示第二实施例的微控制器的大体结构的框图。在第二 实施例中,没有如第一实施例那样在IFB401、IB402、IR403、PLA404 和所传送的操作码上附加频率控制信号,操作码由8比特构成。其 它的大体结构与第一实施例的微控制器相同。因此,时钟脉冲发生 器800的内部结构与图1相同。
以下,就如上述构成的第二实施例的微控制器的动作进行说明。
图5A和图5B表示第二实施例的微控制器的指令映像例。指令 映像由多个页面构成,按每一分频比分类到各页面中。因此,即使 操作码相同,也因表示指令映像页面数的扩展码不同而以不同的频 率执行。例如,指令映像A和指令映像B分别与一分频和二分频对 应,以扩展码‘0011’和‘0101’分类。映像中的MC1和MC2为 相同执行内容的指令,其扩展码以外的机器码也相同。在用CPU来 处理这些代码时,MC1以一分频、MC2以二分频进行相同动作。这 样与分频比对应的扩展码与操作码相同地在流水线处理中被译码, 并作为MIR传送给时钟分频控制电路803。在时钟分频控制电路803 中,基于所传送的MIR调整切换定时并将选择信号oscsel输出到选 择器802,选择器802按照该选择信号oscsel选择分频信号并作为 sysclk传送给CPU100。
利用程序例和时序图,就如以上所述的第二实施例的微控制器 的动作进行说明。
图6A、图6B、图6C分别是第二实施例微控制器的指令格式、 程序例、动作时序图。这里,与第一实施例的微控制器的动作说明 相同,表示以8比特的微控制器为例将sysclk的分频比从oscin的一 分频切换成二分频然后再切换成一分频的动作。以下,用(1)~(7) 置换图6B、图6C中用圆圈表示的数字进行说明。
指令格式由表示指令映像的页面数的4比特扩展码、8比特的操 作码以及4×n比特(n=1,2…)的操作数构成。与第一实施例的 微控制器不同之处只在于未附加频率控制信号。
程序例作为执行从(1)至(7)的指令的程序,由指令(3)将 sysclk的分频比从oscin的一分频切换成二分频,在指令(6)之后再 切换成一分频。扩展码的‘0011’表示是将sysclk设定成oscin的一 分频的指令,‘0101’表示是设定成二分频的指令。
在定时A,由于oscsel为‘L’所以sysclk以1/1oscin(一分频 信号)的周期动作。IFB401、IB402在T1从ROM700取出指令(1) -1和(1)-2。由于指令(1)-1为扩展码,(1)-2为操作码 的第一半字节而不是操作数,因此所有数据均输出到IR403。在定时 B,IR403在T2锁存(1)-1、2并输出到PLA404,PLA404开始 解码。由于(1)-1为扩展码且(1)-2在取出操作码的第二半字 节之前不被处理,因此,在下一个T1即定时C只将与(1)-1相 当的MIR((1)μ-1)作为扩展码的识别周期输出。与此同时,IFB401 取出指令(1)-3和(3)-1。在定时D,IR403取得指令(1)的 剩余的一个半字节的操作码(1)-3,与等待处理的(1)-2一起 由PLA404解码。在定时E,在输出(1)-2、3的MIR((1)μ- 2)同时由IFB401取出(3)-2、3。另外,在定时D被IR403取得 的(3)-1在定时E转移到IB402。再有,如(3)-1扩展码经由IFB401、 IB402时,由于在该期间被识别,因此在定时F不被IR403取得,而 由IR403取得操作码(3)-2、3。
(3)-1为扩展码,含有二分频控制的信息‘0101’,在通过 IFB401、IB402的期间被译码,并作为MIR输出到时钟脉冲发生器 800。时钟分频控制电路803调整切换定时,在定时G将oscsel设为 ‘H’将sysclk切换成1/2oscin(二分频信号)。同样地,根据指令 (6)的扩展码返回至1/1oscin。由于扩展码先于操作码被取出、解 码,因此,能够按照原本所假想的使(3)μ-1、(3)μ-2、(4) μ-1、(4)μ-2以二分频动作,使(6)μ-1、(7)μ-1、(7)μ -2以一分频动作。
依据如上所述的第二实施例,通过在扩展码上附加确定系统时 钟的分频比的信息,能够在比操作码早的周期中进行解码,因此, 能够将用以变更频率的时间滞后抑制到最小,程序开发人员能够更 简单且正确地执行频率控制。因此,通过消除频率变更所需的时间 滞后并准确迅速地执行与任务相对应的频率控制,能够降低微控制 器的耗电。
再有,指令并不仅限于一分频和二分频两种,根据微控制器的 规格有时为几种。另外,指令数不必每个分频比均相等,例如,相 对于与缺省分频比相当的指令,可以将与其它分频比相当的指令数 限定为几个。
与一般的大部分微控制器相同,上述第一实施例和第二实施例 中的微控制器1000采用内设生成系统时钟的时钟脉冲发生器800的 结构,但也可以将时钟脉冲发生器800外设。
如以上第一和第二实施例中所说明,通过在操作码上附加或者 使扩展码含有用以控制频率的信息,能够在执行指令的流水线处理 中进行频率控制,因此,通过消除频率变更所需的时间滞后并准确 迅速地执行与任务相对应的频率控制,能够降低微控制器的耗电。
(第三实施例)
以下,就本发明第三实施例的微控制器进行说明。
图7A是表示第三实施例的微控制器中的机器码的生成和对ROM 的配置顺序的流程图,图7B是表示在第三实施例中由编译程序从程 序源生成机器码的方法的图。以下,用(1)~(7)置换图7B中用 圆圈表示的数字进行说明。
如图7A所示,由程序开发而生成的程序源,通常基于由编译程 序等发生的数据文件变换成ROM代码之后,作为布局图案(layout pattern)生成并配置于ROM中。但是,在传统的机器码生成流程中, 不能像第一实施例中的微控制器那样在机器码上附加频率控制信 号。
在第三实施例的机器码生成流程中,通过在程序源内插入分频 比设定描述,能够在机器码上附加频率控制信号。例如,如图7B的 程序例所示,在欲以指令(1)、(3)、(4)、(6)、(7)的顺 序进行程序设计,以一分频信号执行指令(1)、(6)、(7),以 二分频信号执行指令(3)、(4)的场合,在指令(1)的前段描述 ‘set fast’,在指令(3)的前段描述‘set slow’,在指令(6)的 前段描述‘set fast’。编译程序以指令和其前段的‘set fast’或‘set slow’ 的信息作为输入,将指令变换成机器码,若前段的分频设定描述为 ‘set fast’则在操作码上附加‘0’,若为‘set slow’则附加‘1’。 另外,若指令的前段不存在任何描述,则继续前一机器码的附加信 号。
也就是说,第三实施例的微控制器在所述的第一实施例的结构 中设置了上述的编译程序、将由编译程序生成的机器码变换成ROM 代码的单元和进行ROM配置的单元。
依据如上所述的第三实施例,在操作码上附加频率控制信号不 会给程序开发人员带来负担,而可由编译程序自动完成机器码化, 因此,能够发挥出第一实施例的微控制器的特点。
(第四实施例)
以下,就本发明第四实施例的微控制器进行说明。
图8A是表示第四实施例的微控制器中的机器码的生成和对ROM 的配置顺序的流程图,图8B是表示在第四实施例中由编译程序从程 序源生成机器码的方法的图,图8C是第四实施例的微控制器的动作 时序图。在本实施例中,对ROM的配置顺序与第三实施例相同,但 由编译程序从程序源生成机器码过程中的生成规则不同。以下,用 (1)~(7)置换图8B、图8C中用圆圈表示的数字进行说明。
在第三实施例中,由‘set fast’、‘set slow’来确定附加于操 作码上的频率控制信号,但在第一实施例的微控制器中变更分频比 时,为了在操作码上附加频率控制信号,从取出到解码、执行、oscsel 切换为止需要一点时间。因此,存在赶不上与本来要切换分频比的 指令的执行定时的情况,需要由程序开发人员对频率控制进行详细 的研究。
在本实施例的机器码生成流程中,与第三实施例相同地生成从 指令(1)至(7)的机器码时,基于分频比设定描述和其前段的指 令执行周期来确定频率控制信号。
例如,指令(3)的前段的‘set slow’本来以用二分频来进行 指令(3)动作为目的而插入,但在第一实施例中如图3A~C所示, 由于附加在操作码上,因而选择信号oscsel的切换延迟,实际上从指 令(4)的执行周期((4)μ-1)开始切换。作为该场合的对策, 为了以二分频信号来执行指令(3),通过使其前一指令(1)保持 二分频控制的附加信号,恰好在(3)μ-1的执行定时G切换成二 分频。但是,在指令(1)的执行周期长时,指令(1)的处理频率 成了二分频。在第四实施例中,若‘set fast’、‘set slow’的前段 的指令执行周期未满基准周期,则附加在前段指令的机器码上,若 为基准周期以上,则附加在后段指令的机器码上。在图8B的例中, 将基准周期设为3周期,若‘set fast’、‘set slow’的前段的指令 执行周期未满3周期(即2周期以下),则附加在前段指令的机器 码上,若为3周期以上,则附加在后段指令的机器码上。
也就是说,第四实施例的微控制器在所述的第一实施例的结构 中设置了上述的编译程序、将由编译程序生成的机器码变换成ROM 代码的单元和进行ROM配置的单元。
依据如上所述的第四实施例,由于按照指令的执行周期数来确 定在操作码上附加频率控制信号,因此,能够更正确地以所意图的 定时来进行频率的控制,并且由于程序开发人员无需考虑执行周期 数来进行程序设计,从而能够提高程序开发的效率。
(第五实施例)
以下,就本发明第五实施例的微控制器进行说明。
图9A是表示第五实施例的微控制器中的机器码的生成和对ROM 的配置顺序的流程图,图9B是表示在第五实施例中由编译程序从程 序源生成机器码的方法的图。在本实施例中,对ROM的配置顺序与 第三实施例相同,但由编译程序从程序源生成机器码过程中的生成 规则不同。以下,用(1)~(7)置换图9B中用圆圈表示的数字进 行说明。
在本实施例的机器码生成流程中,通过在程序源内插入分频比 设定描述来选择与设定的分频比对应的扩展码,分频比设定描述的 后段指令变换成由其扩展码分类的指令映像中相当的机器码。例如, 如图9B的程序例所示,在以指令(1)、(3)、(4)、(6)、(7) 的顺序进行程序设计,以一分频信号执行指令(1)、(6)、(7), 以二分频信号执行指令(3)、(4)时,在指令(1)的前段描述‘set fast’,在指令(3)的前段描述‘set slow’,在指令(6)的前段描 述‘set fast’。假设在指令映像中,以一分频信号执行的指令组以无 扩展码、扩展码‘0010’、扩展码‘0011’进行分类,以二分频信 号执行的指令组以扩展码‘0100’、扩展码‘0101’、扩展码‘0110’ 进行分类。在第五实施例的微控制器中所采用的指令如在第二实施 例中说明的图5A和图5B的例那样,一分频的指令组和二分频的指 令组除了扩展码之外含有相同的操作码,并进行相同的动作。编译 程序以指令和其前段的‘set fast’或‘set slow’的信息作为输入, 若前段为‘set fast’则变换成以一分频信号执行的指令组的映像的机 器码,若为‘set slow’则变换成以二分频信号执行的指令组的映像 的机器码。另外,若指令的前段不存在任何描述,则认为分频比没 有变更,变换成含有与前段的指令相同的分频比的指令组的机器码。
也就是说,第五实施例的微控制器在所述的第二实施例的结构 中设置了上述的编译程序、将由编译程序生成的机器码变换成ROM 代码的单元和进行ROM配置的单元。
依据如上所述的第五实施例,能够只通过插入分频比设定描述 使分频比的设定反映在机器码上,从而能提供最大限度地发挥第二 实施例的微控制器特点的程序开发环境。
相关专利内容
标题 发布/更新时间 阅读量
控制器 2020-05-13 121
一种双手柄多功能控制器 2020-05-11 411
具有有级自锁功能的软轴控制器 2020-05-12 962
压路机的双向软轴换挡控制器 2020-05-12 96
一种具有锁止控制机构的室内控制器 2020-05-12 72
一种压力控制器 2020-05-11 648
一种压力控制器 2020-05-12 601
一种压力控制器 2020-05-13 21
静电水垢控制器 2020-05-13 583
多路阀控制器 2020-05-12 715
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈