可编程控制器制造技术

技术编号:2890541 阅读:136 留言:0更新日期:2012-04-11 18:40
一种可编程控制器,包括一个流水线级,其中按流水线方式执行5级;第一级IF执行指令取出操作,第二级ID/RF对指令解码并从通用寄存器取出数据,第三级EX执行算术和逻辑操作、数据地址计算、或目标分支有效地址的计算,第五级WB/BPU执行位操作,针对通用寄存器的号操作,或分支操作。因为在统一的指令结构中形成了一个流水线结构,所以可以实现简化硬件和控制,便于把流水线形成为多级。(*该技术在2016年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种可编程控制器,它执行主要用于位操作的基本指令和处理包含大量的位的数据的应用指令,更准确地说,本专利技术涉及一种配有专门设计以便能处理基本指令和应用指令的硬件(处理器)的可编程控制器。可编程控制器广泛地用在工业设备、机器、以及工厂自动化装置中。随着对象设备的复杂性的增加,已经提出了高速处理大量输入/输出信号的要求以及高速操作的要求。为些,由专门设计的能处理主要用于位操作的基本指令和处理包含大量位的数据的应用指令的硬件(一个处理器)来实现高速处理。由该硬件和执行通信处理和外围处理的通用微处理器的组合来构成可编程控制器。常规例子的专门设计的硬件(即,处理器)有三级流水线结构,并通过这种流水线结构执行指令。在这种情况下,在执行级执行的处理包括下列细节。第一级指令的取出,用于从指令中取出后面要执行的指令,第二级各种算术与逻辑操作,计算数据存贮器地址的数据地址计算,或处理后面的指令解码的目标分支操作处理和寄存器读数处理,第三级针对数据存贮器进行读/写操作的存贮器访问处理(即,读/写处理),分支操作,位操作,或针对通用寄存器的写操作。在流水线结构中,指令执行的整个速度取决于所有级中最慢的指令执行级的处理速率。为了加速这样的流水线处理,必须提供具有相同速度的每一指令执行级。然而,在前面所述的三级流水线结构中,如果用具有相同访问时间的存贮器作为指令存贮器和数据存贮器,则执行的整个速度会变慢并且需要更长的处理时间,因为第二或第三级执行例如位操作处理比第一级执行的处理花费更长的处理时间。鉴于已有技术的上述缺点而设想出本专利技术,本专利技术的目的是提供一种能容易实现并能加速执行指令的可编程控制器的结构。本专利技术的另一目的是提供一种可编程控制器的结构,能在不因插入处理流水线相关危险的NOP指令而增加程序长度的情况下使处理加速。本专利技术的另一目的是提供一种具有五级流水线结构的可编程控制器,能在不使用高速存贮顺的情况下以较高的速度执行处理。本专利技术的另一目的是提供一种具有五级流水线结构的可编程控制器,能容易地执行在一个流水线级的时间周期内不能完成操作的指令。本专利技术的另一目的是提供一种具有五级流水线结构的可编程控制器,能迅速地执行需要大量存贮器存取周期的位处理指令和迅速执行其它指令。这种可编程控制器除了包括存储器地址计算块和专为位处理指令设置的流水线寄存器以外,还包括数据通路和控制电路,数据通路用于从位处理指令操作块发送和接收访问存储器所需的数据,控制电路在执行位处理操作期间按要求暂停执行在位处理操作指令后面的指令。本专利技术的又一目的是提供一种能协调地执行每一条指令的具有五级流水线结构的可编程控制器,并且该可编程控制器配有一个控制电路,当重写供微分指令使用的存储器时该控制电路按要求暂停执行指令。本专利技术的另一目的是提供一种具有五级流水线结构的可编程控制器,通过下列两点能在协调地控制关于是执行指令还是使指令无效的决定的同时执行指令一、在流水线寄存器中提供控制信号,控制信号表现当前指令是一个位操作指令,该位操作指令用于更新建立指令执行状态的标记BITACC;二、当执行指令(按照指令执行状态根据控制信号的值确定要被执行或要被无效的指令)时暂停执行该指令直到确定指令执行状态为止。本专利技术的另一目的是提供一种可编程控制器,它具有五级流水线结构,并且能按规程中所要求的方式根据各种停止状态协调地执行暂停操作。本专利技术的另一目的是提供一种通过抑制程序长度能以高速执行变址指令的可编程控制器。为此,本专利技术的可编程控制器执行基本位处理操作和包含大量位的应用处理,包括下列步骤由五级形成一个指令执行级,即,一个指令执行级包括用于执行取指令操作以便从指令存贮器取出指令的第一级,用于指令解码并从一通用寄存器取出一个数值的第二级,用于执行算术操作和逻辑操作、数据地址计算、或目标分支有效地址的计算的第三级,用于访问数据存贮器的第四级,以及用于执行位操作,针对通用寄存器的写操作、或分支操作的第五级;以及以流水线方式执行该指令执行级。本专利技术的可编程控制器包括下列部分,它们作为流水线处理的各指令执行级的硬件;具有指令存储器和程序计数器的IF部分;具有指令解码器和通用寄存器的ID部分;具有算术与逻辑单元的EX部分;具有数据存储器和用于控制访问数据存储器的存储器访问接口的MEM部分;以及用于执行位操作处理的BPU。按照本专利技术的可编程控制器,根据可编程控制器的基本处理操作之一的位操作指令的结果将每一指令执行级的执行说明信息改变为一个预定值,并使位操作指令后面的指令无效。按照本专利技术的可编程控制器,在与各指令执行级对应的硬件之间设有多个流水线寄存器,以及将指令执行级的执行结果存贮在每一流水线寄存器中。按照本专利技术的可编程控制器,将各指令执行级的执行说明信息存贮在多个流水线寄存器的各流水线寄存器中,并且每当执行一个指令执行级时将执行说明信息馈送给下一指令执行级的流水线寄存器。按照本专利技术的可编程控制器,在指令执行级能执行的精简的指令集结构包括存储器访问指令、寄存器到寄存器的操作指令、立即值指令、分支指令、以及位操作指令。按照本专利技术的可编程控制器,一个精简的指令集结构包括存储器访问指令,在第三级执行要访问的数据存储器的有效地址的计算,在第四级从数据存储器读数据和将数据写入数据存储器,以及如果指令要求将数据从数据存储器写入通用寄存器则在第五级写数据;寄存器到寄存器操作指令,在第三级执行通用寄存器之间的算术和逻辑操作,在第五级将数据写入通用寄存器;立即值操作指令,用包含在该指令中的立即值和存储在预定通用寄存器中的值进行算术和逻辑操作;分支指令,在第三级执行比较并且在第五级根据比结果执行分支操作;以及位操作指令,在第四级执行将数据从数据存储器取出送到通用寄存器的操作和操作处理,以及在第五级执行针对每位数据的操作处理。为此,提供一种本专利技术的可编程控制器,它按流水线方式执行如下的第一至第五级,即,用于执行取指令操作以便从指令存贮器取出指令的第一级,用于指令解码并从一通用寄存器取出一个数值的第二级,用于执行算术和逻辑操作、数据地址计算、目标分支有效地址的计算或分支状态确定的第三级,用于访问数据存贮器或执行分支操作的第四级,以及用于执行位操作,针对通用寄存器的写操作、或分支操作的第五级;该可编程控制器包括选择装置,设在第二级中,用于从通用寄存器的输出、第三级的ALU的输出、和提供给第四级的ALU的输出中选择出第三级的ALU的一个输入。本专利技术的可编程控制器以流水线的方法执行第一至第五级,即,用于执行取指令操作以便从指令存贮器取出指令的第一级,用于指令解码并从一通用寄存器取出一个数值的第二级,用于执行算术和逻辑操作、数据地址计算、目标分支有效地址的计算、或分支状态确定的第三级,用于访问数据存贮器或执行分支操作的第四级,以及用于执行位操作、针对通用寄存器的写操作、或分支操作的第五级,该可编程控制器包括选择装置,设在第三级中,用于从自第二级输出至ALU的一个输出端的值、提供给第四级的ALU的输出、以及提供给第五级的ALU的输出中选择第三级的ALU的一个输入。本专利技术的可编程控制器以流水线的方式执行第一至第五级,即,用于执行取指令操作以便从指令存贮器取出指令的第一级,用于指令解码并从一通用寄存器取出一个本文档来自技高网...

【技术保护点】
一种可编程控制器,包括:一个指令执行级,包括:第一级,用于执行指令取出操作,以便从指令存贮器取出指令;第二级,用于对指令解码并从一通用寄存器取出一个数值;第三级,用于执行算术指令或逻辑指令、数据地址计算、或目标分支有效地址的计算;第四级,用于访问数据存贮器;以及第五级,用于执行下列操作中的一种操作:位操作、针对所述通用寄存器的写操作、和分支操作,其中,所述可编程控制器执行基本的位处理操作和包括多个位的应用处理,按照流水线方式执行第一级至第五级,每个指令执行级的执行说明信息根据位处理操作的结果而变为一个预定值,并且根据位处理指令的结果来判定使该位处理指令后边的一个指令变为无效指令或有效指令。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:增田达男薮田明坂井宏史
申请(专利权)人:松下电工株式会社
类型:发明
国别省市:JP[]

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

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