微处理器和运算处理方法技术

技术编号:10335061 阅读:465 留言:0更新日期:2014-08-20 19:04
本发明专利技术提供一种微处理器和运算处理方法。该微处理器具备运算部,该运算部包括:多级配置而成的多个运算器;延迟器,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该延迟器使运算器的运算结果延迟一个循环;和选择部件,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该选择部件选择运算器的运算结果、和由上述延迟器延迟了一个循环后的运算结果当中的一者并输出到次级的运算器,所述微处理器通过控制所述选择部件中的选择状态,从而由该运算部汇总多个运算来进行处理。

【技术实现步骤摘要】
本申请主张以2013年2月20日提交的日本专利技术专利申请第2013-031095号为基础申请的优先权,且将该基础申请的内容全都弓I入到本申请中。
本专利技术涉及适于在流水线处理中执行扩展指令的情况的微处理器、运算处理方法。
技术介绍
在现有的微处理器中,以一个指令处理了四则运算、逻辑运算。在近年的微处理器中,能汇总多个运算而以一个指令来进行处理。由此,通过增加能在一个循环中执行的处理量,由此能够减少整体的处理循环数。但是,当不能在一个循环中处理一个指令的动作频率的情况下,即因运算电路的构成而处理时间不能落在一个循环的周期内的情况等下,如图11所示那样,使处理器的执行循环暂时停顿而在多个循环中进行处理。在图11中,(A)是CPU的动作时钟,如⑶所示那样,例示了以指令取出阶段“IF”、指令解码阶段“ID”、指令执行阶段“EX1”?“EX3”、内存访问阶段“MEM”、以及寄存器写回阶段“WB”共计7个阶段,在7个循环执行一个指令的情况。在全部阶段中,上述指令执行阶段“EX1”?“EX3”这3个循环是执行指令的阶段,如(C)?(E)所示,通过加载到寄存器rl、r2、r3中的值来执行运算,将其运算结果保存到寄存器r3中。在使处理器的动作频率发生变化来使用这样的电子设备的情况下,需要假定在最高频率下使用的情况,并与最高频率相匹配地决定执行循环数。在图12中,⑷表示与上述图11⑷所示的动作时钟相比大幅降低的频率的CPU时钟,⑶表示以该时钟进行基于流水线处理的运算的情况。由于与频率成反比例地成为比上述图1l(A)所示的一个循环时间til更长的一个循环时间tl2,因此,在运算电路中,即使当能够在两个循环执行例如在上述图11中需要3个循环时间的运算处理的情况下,在CPU的动作控制上也要花费上述那样的3个循环来执行处理。如此,在处理器以低的时钟频率动作的情况下,即使实际上存在能以少的循环数来处理的时间,但也不得不以与高时钟频率下进行动作的情况相同的循环数来进行处理,结果上增加了处理循环数,从而导致处理速度降低。于是,虽然目的与上述不良状况不同,但提出了一种用于提供不会增大复杂度且能提升可靠性的流水线处理器的技术(例如参照日本特开2007-034731号公报)。在该专利技术中,具备:指令解码器单元,其选择性地发布指令执行循环数为固定的核心指令以及由用户定义的扩展指令当中的任一者;核心指令执行单元,其执行所发布的核心指令;扩展指令执行单元,其执行所发布的扩展指令;和重排序缓冲器,其暂时存储核心指令执行单元以及扩展指令执行单元各自的指令执行结果,按照核心指令以及扩展指令被发布的顺序来重排指令执行结果并输出。但是,上述专利文献所记载的技术能按照原始的程序的发布顺序输出指令执行循环数为固定的核心指令、和由用户定义的扩展指令。但是,不能根据动作频率来变更一个指令的动作处理循环数。
技术实现思路
本专利技术正是鉴于上述那样的实际情况而提出的,其目的在于提供一种能使一个指令的动作处理循环数可变从而在变更CPU的动作时钟频率的情况下能在各频率下实现最佳的处理循环的微处理器。本专利技术的微处理器,其特征在于,具备运算部,该运算部包括:多级配置而成的多个运算器;延迟器,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该延迟器使运算器的运算结果延迟一个循环;和选择部件,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该选择部件选择运算器的运算结果、和由上述延迟器延迟了一个循环后的运算结果当中的一者并输出到次级的运算器,所述微处理器通过控制所述选择部件中的选择状态,从而由该运算部汇总多个运算来进行处理。【附图说明】图1是表示本专利技术的一实施方式所涉及的微处理器的硬件构成的框图。图2是表示用于处理该实施方式所涉及的CPU内的指令的块构成。图3是表示该实施方式所涉及的CPU内的第2算术运算单元部的构成的框图。图4是表示在该实施方式所涉及的第2算术运算单元部中的与选择信号A、B的各“L”电平和“H”电平相应的处理内容的图。图5是表示该实施方式所涉及的第I程序例的图。图6是表示该实施方式所涉及的第I程序执行时的第2算术运算单元部的处理内容的时序图。图7是表示该实施方式所涉及的第2程序例的图。图8是表示该实施方式所涉及的第2程序执行时的第2算术运算单元部的处理内容的时序图。图9是表示该实施方式所涉及的第3程序例的图。图10是表示该实施方式所涉及的第3程序执行时的第2算术运算单元部的处理内容的时序图。图11是一般的微处理器以多个循环执行指令时的(动作时钟的频率高的情况下的)时序图。图12是一般的微处理器以多个循环执行指令时的(动作时钟的频率低的情况下的)时序图。【具体实施方式】下面,参照附图来说明本专利技术的一实施方式所涉及的微处理器。图1是表示该实施方式所涉及的微处理器10的功能电路构成的框图。在该图中,作为执行处理的微处理器的CPUll与作为存储了指令代码的程序存储器的R0M12、以及作为工作内存的RAMl3相连接。从外部向CPUll赋予系统时钟CLK和复位信号RESET。另外,CPUll通过向R0M12输出芯片选择信号ROMCS并且经由ROM地址总线来指定R0M12的地址,从而经由ROM数据总线读出保存在该地址的程序指令。进而,CPUll向RAM13输出芯片选择信号RAMCS、读出信号RAM0E、写入信号RAMWE,并且经由RAM地址总线来指定地址,经由RAM数据总线来进行向该地址的数据的写入和读出。图2是表示用于在上述CPUll内执行程序的块构成的图。在该图中,从ROMl2经由ROM数据总线读出的指令被输入到指令寄存器(IR)部21而被保持。由指令解码器(ID)部22读出指令寄存器部21所保持的指令并进行解码,将解码结果输出给ROM控制部23,并对应于解码结果来分别适宜地控制RAM控制部24、加载内存数据寄存器(LMDR)部25、寄存器堆(RF)部26、第I算术运算单元(ALUl)部27以及第2算术运算单元(ALU2)部28。ROM控制部23向上述R0M12输出芯片选择信号和ROM地址。RAM控制部24经由RAM地址总线进行上述RAM13的地址指定,并且向RAM13输出上述芯片选择信号RAMCS、读出信号RAM0E、写入信号RAMWE。上述加载内存数据寄存器部25以及寄存器堆部26经由RAM数据总线而与上述RAMl3连接,将所保持的 数据输出给RAMl3,并保持从RAMl3输出过来的数据。第I算术运算单元部27 —边基于来自指令解码器部22的控制而与寄存器堆部26进行数据收发,一边执行通常的四则运算以及逻辑运算等所指定的运算,并将运算结果输出给寄存器堆部26。第2算术运算单元部28 —边基于来自指令解码器部22的控制而与寄存器堆部26进行数据收发,一边执行通过扩展指令所追加的运算,并将运算结果输出给寄存器堆部26。接下来通过图3来说明上述第2算术运算单元部28内的具体的构成例。在此,以第2算术运算单元部28是进行运算“(a-b) X (a_b)+c” …(I)的电路的情况为例进行说明。在进行上述运算的情况下,由于需要的运算器为减法运算器、乘法运算器以及加法运算器,因此如图3所示那样多级配置这些减法运算器(SUB) 31、乘法运算器本文档来自技高网
...

【技术保护点】
一种微处理器,其特征在于,具备运算部,该运算部包括:多级配置而成的多个运算器;延迟器,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该延迟器使运算器的运算结果延迟一个循环;和选择部件,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该选择部件选择运算器的运算结果、和由上述延迟器延迟了一个循环后的运算结果当中的一者并输出到次级的运算器,所述微处理器通过控制所述选择部件中的选择状态,从而由该运算部汇总多个运算来进行处理。

【技术特征摘要】
2013.02.20 JP 2013-0310951.一种微处理器,其特征在于,具备运算部, 该运算部包括: 多级配置而成的多个运算器; 延迟器,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该延迟器使运算器的运算结果延迟一个循环;和 选择部件,其相对于所述多个运算器中的除了最后级之外的各运算器而设置,该选择部件选择运算器的运算结果、和由上述延迟器延迟了一个循环后的运算结果当中的一者并输出到次级的运算器, 所述微处理器通过控制所述选择部件中的选择状态,从而由该运算部汇总多个运算来进行处理。2.根据权利要求1所述的微处理器,其特征在于, 所述运算部汇总多个运算而以一个指令来进行处理。3.根据权利要求2所述...

【专利技术属性】
技术研发人员:曾雌正人
申请(专利权)人:卡西欧计算机株式会社
类型:发明
国别省市:日本;JP

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

1