JP2016076031A - 演算システム、制御装置及び演算方法 - Google Patents

演算システム、制御装置及び演算方法 Download PDF

Info

Publication number
JP2016076031A
JP2016076031A JP2014204966A JP2014204966A JP2016076031A JP 2016076031 A JP2016076031 A JP 2016076031A JP 2014204966 A JP2014204966 A JP 2014204966A JP 2014204966 A JP2014204966 A JP 2014204966A JP 2016076031 A JP2016076031 A JP 2016076031A
Authority
JP
Japan
Prior art keywords
calculation
data
unit
input
input data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014204966A
Other languages
English (en)
Inventor
雅晴 田中
Masaharu Tanaka
雅晴 田中
賢一 森本
Kenichi Morimoto
賢一 森本
江本 英晃
Hideaki Emoto
英晃 江本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Power Ltd
Original Assignee
Mitsubishi Hitachi Power Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Hitachi Power Systems Ltd filed Critical Mitsubishi Hitachi Power Systems Ltd
Priority to JP2014204966A priority Critical patent/JP2016076031A/ja
Publication of JP2016076031A publication Critical patent/JP2016076031A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】オーバーヘッドの増加を抑制する。【解決手段】演算システムは、所定の演算の演算内容の情報を有する要素コードと、前記所定の演算の入力値の情報を有し、前記要素コードと関連付けられている入力データと、を有する演算要素データが入力される演算システムであって、要素コードが入力される要素コードメモリ部34と、入力データが入力される入力データメモリ部40と、要素コードメモリ部34の要素コードの情報、及び入力データメモリ部40の入力データの情報を有する電気信号により演算を行う演算回路を複数有する要素演算部44と、要素コードの演算内容に基づき、要素演算部44から所定の演算回路を選択して演算を行わせる演算回路選択部36と、要素演算部44による演算結果が、要素コード及び入力データと関連付けられた出力データとして出力される出力データメモリ部54と、を有する。【選択図】図4

Description

本発明は、演算システム、制御装置及び演算方法に関する。
プラントの機械等には、機械を制御するために演算を行い、その演算結果に基づき機械を制御する制御装置が組み込まれている。この場合、ファンクションブロックダイアグラム等の図形言語で記述された制御ロジックを、制御装置に認識可能な機械語プログラムに変換し、制御装置がこの機械語プログラムに従って演算を行うことで、機械を制御する場合がある。例えば、特許文献1には、図形言語に基づき汎用ロボットを制御する制御装置が開示されている。
特開平11−338521号公報
ところで、近年、機械制御に高応答性が求められており、制御装置に高速演算が可能な高性能CPUが搭載される機会が増えている。高性能CPUは、高速演算が可能であるが、ハードウェア又はOS(Operation System)が複雑となってしまい、オーバーヘッド(演算負荷)が増加する。オーバーヘッドが増加すれば、演算速度が低下したり、消費電力が高くなったりするという問題が生じる。
また、特にプラントの機械等に用いられる場合、プログラムのバグを発見したり、異常発生時に機械を停止させたりするための自己診断機能を制御装置に組み入れることも求められている。この場合においても、自己診断を行うために、オーバーヘッドが増加する。また、このようなオーバーヘッドの増加によりコンテクストに切替えが必要となり、このコンテクスト切替えがさらにオーバーヘッドを増加させてしまう。このように、機械制御に用いられる制御装置は、オーバーヘッドの増加という問題が生じている。
ここで、本発明は、上記課題を解決するために、オーバーヘッドの増加を抑制する演算システム、制御装置及び演算方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明の演算システムは、所定の演算の演算内容の情報を有する要素コードと、前記所定の演算の入力値の情報を有し、前記要素コードと関連付けられている入力データと、を有する演算要素データが入力される演算システムであって、前記要素コードが入力される要素コードメモリ部と、前記入力データが入力される入力データメモリ部と、前記要素コードメモリ部の要素コードの情報、及び前記入力データメモリ部の前記入力データの情報を有する電気信号により演算を行う演算回路を複数有する要素演算部と、前記要素コードの演算内容に基づき、前記要素演算部から所定の前記演算回路を選択して演算を行わせる演算回路選択部と、前記要素演算部による演算結果が、前記要素コード及び前記入力データと関連付けられた出力データとして出力される出力データメモリ部と、を有する。
この演算システムは、演算に必要なデータのみを抽出して、選択した演算回路によって演算を行う。従って、この演算システムは、機械を制御する制御装置に搭載された際、制御装置のメモリから必要なデータを抽出して演算回路を選択するだけで演算を行うことができる。従って、この演算システムは、制御装置の演算処理の負担を軽減し、制御装置のオーバーヘッドの増加を抑制することができる。
前記演算システムにおいて、前記演算要素データは、前記所定の演算に対応して複数入力され、さらに、前記所定の演算の演算順を示し、同じ前記演算要素データに属する要素コードと対応している演算順データを有し、前記演算回路選択部は、前記演算順データに基づいた順番で、前記要素演算部に前記所定の演算を行わせることが好ましい。この演算システムによると、演算順データに基づいて演算順を判断する。従って、この演算システムは、機械を制御する制御装置に搭載された際、この制御装置がメモリから全てのデータを読み込んで演算順を判断する必要が無い。従って、この演算システムは、制御装置のデータ読み取り負荷を軽減することにより、制御装置のオーバーヘッドの増加を好適に抑制することができる。
前記演算システムにおいて、前記出力データメモリ部は、複数の前記所定の演算のうち1つの演算結果に対応する前記出力データを複数の前記所定の演算のうち他の演算の前記入力データとして使用する場合に、前記出力データを前記入力データとして前記入力データメモリ部に出力することが好ましい。この演算システムは、出力データメモリ部とのデータの送受信により、入力データを入力データメモリ部に入力する。従って、この演算システムは、入力データを入力するために、例えば他の箇所とのデータの送受信処理が不要となり、オーバーヘッドの増加を好適に抑制することができる。
前記演算システムは、前記要素演算部が、第1要素演算部と第2要素演算部との複数設けられ、前記所定の演算の出力データを、前記所定の演算と連続して行われる他の演算の入力データとして用いるかについて、前記要素コード及び前記演算順データに基づいて確認する並行演算確認部を更に有し、前記並行演算確認部により前記所定の演算の出力データを前記他の演算の入力データとして用いないと確認した場合に、前記第1要素演算部は、前記所定の演算を行い、前記第2要素演算部は、前記第1要素演算部による前記所定の演算と並行して前記他の演算を行うことが好ましい。この演算システムによると、連続して行われる演算が互いに依存関係を有さない場合に、それらの演算を並行して実行することができるため、演算の処理速度を向上させることができる。
前記演算システムにおいて、前記出力データメモリ部は、前記所定の演算の入力値が入力され、前記入力データメモリ部は、前記入力データとして、前記出力データメモリ部の前記所定の演算の入力値が入力されているアドレスが入力され、前記要素演算部は、前記入力データに基づいて読み出された前記所定の演算の入力値に基づき演算を行うことが好ましい。この演算システムによれば、入力データの読み出しにあたり、出力データメモリ部のデータと入力データメモリ部のデータとの関連を読み取る処理が不要となる。そのため、この演算システムによると、演算の処理負担を軽減することができる。
前記演算システムにおいて、前記演算要素データは、1つの演算で使用される複数の入力データを有し、前記入力データメモリ部は、第1入力データメモリ部と第2入力データメモリ部との複数設けられ、前記第1入力データメモリ部は、前記要素演算部から、1つの演算で使用される複数の前記入力データのうち一部の入力データが読み出され、前記第2入力データメモリ部は、前記第1入力データメモリ部からの前記一部の入力データの読み出しと並行して、前記要素演算部から、1つの演算で使用される複数の前記入力データのうち他の一部の入力データが読み出されることが好ましい。この演算システムによると、複数の入力データメモリ部からの入力データの読み出しが並行して行われるため、演算の処理速度を向上させることができる。
本発明の制御装置は、前記演算システムと、ロジックを図形で表現した図形言語で記載される制御ロジックから前記演算要素データを生成して前記演算システムに出力し、前記演算システムの出力データに基づき機械の動作を制御する主演算部と、を有する。この制御装置は、演算システムが演算を行い、主演算部は演算を行わない。従って、この制御装置は、演算システムが演算を行うため、実際に機械の動作を制御する主演算部の処理負担を軽減し、主演算部のオーバーヘッドの増加を好適に抑制することができる。
本発明の演算方法は、所定の演算の演算内容の情報を有する要素コードと、前記所定の演算の入力値の情報を有し、前記要素コードと関連付けられている入力データと、を取得するステップと、前記要素コード及び前記入力データの情報を有する電気信号により所定の演算を行う複数の演算回路から、前記要素コードの演算内容に基づいて所定の前記演算回路を選択し、選択した所定の前記演算回路によって演算を行うステップと、所定の前記演算回路の演算結果を、前記要素コード及び前記入力データと関連付けられた出力データとして出力するステップとを有する。この演算方法は、演算に必要なデータのみを抽出して、選択した演算回路によって演算を行うものである。従って、この演算方法によれば、処理負担の増加を抑制し、オーバーヘッドの増加を抑制することができる。
本発明によれば、演算処理にあたり、オーバーヘッドの増加を抑制することができる。
図1は、実施形態1に係る機械の構成を示すブロック図である。 図2は、実施形態1に係る制御ロジックの一例を示した模式図である。 図3は、実施形態1に係る主演算部が生成する演算要素データの一例を示す表である。 図4は、実施形態1に係る演算部の構成を示すブロック図である。 図5は、実施形態1に係る要素演算部の構成の一例を示すブロック図である。 図6は、実施形態1に係る演算部の演算処理を説明するフローチャートである。 図7は、生成した出力データが前出力データでない場合の演算フローを示した模式図である。 図8は、生成した出力データが前出力データである場合の演算フローを示した模式図である。 図9は、実施形態1に係る演算部の他の演算方法の一例を示すフローチャートである。 図10は、実施形態1に係る演算部が他の演算方法を行った場合の演算フローの一例を示す模式図である。 図11は、実施形態2に係る演算部の構成を示すブロック図である。 図12は、実施形態3に係る演算部の構成を示すブロック図である。 図13は、実施形態4に係る演算部の構成を示すブロック図である。
以下に添付図面を参照して、本発明の好適な実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではなく、また、実施形態が複数ある場合には、各実施例を組み合わせて構成するものも含むものである。
(実施形態1)
本発明の実施形態1について説明する。図1は、実施形態1に係る機械の構成を示すブロック図である。図1に示すように、実施形態1に係る機械1は、制御ロジック入力部5と、制御装置10と、機械部100とを有する。制御ロジック入力部5と制御装置10とは、電気的に接続されている。制御装置10と機械部100とは、電気的に接続されている。機械1は、例えばプラント等で用いられる産業機械である。機械1は、制御装置10の制御により機械部100が動作することにより所定の作業を行う。より詳しくは、機械1は、制御ロジック入力部5に制御ロジックが入力され、制御装置10が、その制御ロジックに記載された指令に従い機械部100を制御する機械である。なお、機械1は、プラント等で用いられる産業機械に限られず、制御ロジックに基づいて動作する機械であれば、その用途は任意である。
制御ロジック入力部5は、機械1を制御するための制御ロジックが入力される。ここで、制御ロジックとは、プログラム言語で記載されて、機械1に所定の動作を行わせるための指令が記載されているデータである。実施形態1においては、制御ロジックは、例えばブロック図等の図形でプログラム言語が表現された図形言語制御ロジックである。より詳しくは、実施形態1の制御ロジックは、例えば標準規格IEC61131−3で規定されるPLC(Programable Logic Controller)に用いられるプログラム言語である。さらに詳しくは、実施形態1の制御ロジックは、標準規格IEC61131−3で規定されるファンクションブロックダイアグラム言語である。ただし、制御ロジックは、上記に記載されたものに限られず、プログラム言語で記載されて、機械1に所定の動作を行わせるための指令が記載されているデータであれば、任意に選択することができる。
図2は、実施形態1に係る制御ロジックの一例を示した模式図である。実施形態1の制御ロジックは、例えば、図2に示すように、演算内容が記載されたブロックを演算の順序に沿って矢印で接続したファンクションブロックダイアグラム言語で記載されている。図2に示すように、実施形態1に係る制御ロジックは、ブロック111、112、113が矢印で接続されている。ブロック111は、入力値x1と入力値x2とを加算して、出力値y1を出力するADD演算を表現している。また、ブロック112は、ADD演算と並列して行われ、入力値x3と入力値x4との差分を計算して、出力値y2を出力するSUB演算を表現している。また、ブロック113は、ADD演算及びSUB演算の後に行われ、ADD演算の出力値y1とSUB演算の出力値y2をそれぞれ入力値として、それらy1とy2との大小を比較して、その比較結果を出力値y3として出力するCOMP演算を表現している。なお、この演算は一例であり、制御ロジックは、複数の演算を組み合わせた任意の演算を記載することができる。
図1に示すように、制御装置10は、主演算部20と、演算要素データ記憶部22と、演算システムとしての演算部30とを有する。主演算部20は、演算要素データ記憶部22及び演算部30と電気的に接続されている。制御装置10は、制御ロジック入力部5に入力された制御ロジックに基づいて演算を行い、その演算結果に基づいて、機械部100に所定の動作を行わせる。
主演算部20は、制御装置10の中央処理装置である。すなわち、主演算部20は、制御装置10を制御するために主要な演算を行うCPU(Central Processing Unit)である。主演算部20は、制御ロジック入力部5から入力された制御ロジックに基づき、制御ロジックに記載された演算を行うための各種データを有する演算要素データを生成する。また、主演算部20は、演算部30の出力データに基づき機械の動作を制御する。
具体的には、主演算部20は、制御ロジック入力部5から制御ロジックが入力される。主演算部20は、入力された制御ロジックに基づき、演算に必要な複数のデータを集めた演算要素データDTを抽出して生成する。演算要素データDTは、演算の順番の情報を有する演算順データIDと、演算の内容(ADD演算等)の情報を有する要素コードOPと、演算の入力値xの情報を有する入力データXと、演算の出力値yのアドレス情報を有する出力アドレスデータY’とを有する。同じ演算要素データDTに属する演算順データIDと、要素コードOPと、入力データXと、出力アドレスデータY’とは、互いに関連付けられている。
ここで、演算の出力値yは、実際に演算を行った後に入力される信号値であり、演算が行われる前にはまだ算出されていない。従って、演算要素データDTは、出力データYのかわりに、出力値yの電気信号が生成された際に出力値yの電気信号が記憶される箇所のアドレス情報を有する、出力アドレスデータY’を有している。演算要素データDTは、演算が行われた後に、出力アドレスデータY’の記憶しているアドレスに出力値yが入力され、出力値yの信号値を有する出力データYとして置き換えられる。
また、実施形態1において、制御ロジックに記載されている演算は、複数の演算を組み合わせて構成されている。演算要素データDTは、その複数の演算毎に一つずつ生成される。さらに、実施形態1において、制御ロジックに記載されている演算は、複数の演算のうち前に行われる演算の演算結果(出力値)を、複数の演算のうち後に行われる別の演算の入力値として使用する。以下、出力値が他の演算に使用される演算の演算要素データを演算要素データDTと記載する。また、演算要素データDTの出力値を入力値として使用する演算の演算要素データを、演算要素データDTと記載する。演算要素データDTは、演算順データIDと、要素コードOPと、この演算の入力値である前入力値xの情報を有する前入力データXと、この演算の出力値である前出力値yのアドレス情報を有する前出力アドレスデータY’とを有する。演算要素データDTに係る演算が行われた後、前出力アドレスデータY’は、前出力値yの信号値を有する前出力データYに置き換えられる。
演算要素データDTは、演算順データIDと、要素コードOPと、後入力値xのアドレスデータを有する後入力アドレスデータX’と、この演算の出力値である後出力値yのアドレス情報を有する後出力アドレスデータY’とを有する。ここで、後入力アドレスデータX’は、演算要素データDTの演算の前出力値yの電気信号が生成された際に、前出力値yを後入力値xとする電気信号が記憶される箇所のアドレス情報を有する。前出力値yが後入力値xに置き換えられるため、前出力値yと後入力値xとは同じ信号値である。演算要素データDTに係る演算が行われた後、後入力アドレスデータX’は、後入力値xの信号値を有する後入力データXに置き換えられる。また、演算要素データDTに係る演算が行われた後、後出力アドレスデータY’は、後出力値yの信号値を後有する出力データYに置き換えられる。
次に、例として、図2の制御ロジックに基づいて生成した場合の演算要素データDTについて、説明する。図3は、実施形態1に係る主演算部が生成する演算要素データの一例を示す表である。例えば、図2に示す制御ロジックが入力された場合、主演算部20は、図3に示すような演算要素データを生成する。図3に示すように、主演算部20は、演算要素データDT1、DT2、DT3を生成する。演算要素データDT1は、制御ロジックのADD演算に対応する。演算要素データDT2は、制御ロジックのSUB演算に対応する。演算要素データDT3は、制御ロジックのCOMP演算に対応する。演算要素データDT3の演算は、演算要素データDT1、DT2の後に行われ、かつ、演算要素データDT1、DT2の出力値を、入力値として使用する。従って、演算要素データDT1、DT2は、演算要素データDTに対応し、演算要素データDT3は、演算要素データDTに対応する。
演算要素データDT1は、演算の順番を示す「ID=1」の情報が入力される演算順データID1、ブロック111に対応し演算の内容の情報を有する(ここではADD演算)要素コードOP1、前入力値x1の値の情報を有する前入力データX1、前入力値x2の値の情報を有する前入力データX2、前出力データY1のアドレスデータであるy1アドレスデータを有する前出力アドレスデータY1’を有する。ここで、演算順データID1に入力されている情報「ID=1」は、演算の順番が1番目であることを意味している。また、前出力アドレスデータY1’は、ADD演算の結果が出力されたら、その演算結果の値である前出力値y1の値を有する前出力データY1に置き換えられる。
演算要素データDT2は、演算の順番を示す演算順データID2、ブロック112に対応し演算の内容の情報を有する(ここではSUB演算)要素コードOP2、前入力値x3の値の情報を有する前入力データX3、前入力値x4の値の情報を有する前入力データX4、前出力データY2のアドレスデータであるy2アドレスデータを有する前出力アドレスデータY2’を有する。ここで、演算順データID2に入力されている情報「ID=2」は、演算の順番が2番目であることを意味している。また、前出力アドレスデータY2’は、SUB演算の結果が出力されたら、その演算結果の値である前出力値y2の値を有する前出力データY2に置き換えられる。
演算要素データDT3は、演算の順番を示す演算順データID3、ブロック113に対応し演算の内容の情報を有する(ここではCOMP演算)要素コードOP3、後入力値x5(前出力値y1に対応)のアドレスデータを有する後入力アドレスデータX5’、後入力値x6(前出力値y2に対応)のアドレスデータを有する後入力アドレスデータX6’、後出力値y3のアドレスデータを有する後出力アドレスデータY3’を有する。ここで、演算順データID3に入力されている情報「ID=3」は、演算の順番が3番目であることを意味している。また、後入力アドレスデータX5’は、前出力データY1が出力された後、前出力値y1を後入力値x5とする後入力データX5に置き換えられる。また、後入力アドレスデータX6’は、前出力データY2が出力された後、前出力値y2を後入力値x6とする後入力データX6に置き換えられる。また、後出力アドレスデータY3’は、COMP演算の結果が出力されたら、その演算結果の値である後出力値y3の値を有する後出力データY3に置き換えられる。
このように、主演算部20は、演算順データID、要素コードOP、前入力データX及び前出力アドレスデータY’を有する演算要素データDTと、演算順データID、要素コードOP、後入力アドレスデータX’及び後出力アドレスデータY’を有する演算要素データDTとを含む演算要素データDTを生成する。また、各演算が終わった後、演算要素データDTは、演算順データID、要素コードOP、前入力データX及び前出力データYを有する。同様に、各演算が終わった後、演算要素データDTは、演算順データID、要素コードOP、後入力データX及び後出力データYを有する。以下、演算順データIDと演算順データIDとを区別しない場合は、適宜演算順データIDと記載する。また、要素コードOPと要素コードOPとを区別しない場合は、適宜要素コードOPと記載する。また、前入力データXと後入力データXとを区別しない場合は、適宜入力データXと記載する。また、前出力アドレスデータY’と後出力アドレスデータY’とを区別しない場合は、適宜出力アドレスデータY’と記載する。また、前出力データYと後出力データYとを区別しない場合は、適宜出力データYと記載する。
主演算部20は、この演算要素データDTを、演算要素データ記憶部22に記憶させる。なお、演算要素データ記憶部22は、制御装置10に含まれているRAM(Random Access Memory)である。ただし、演算要素データ記憶部22は、書き込み可能なROM(Read Only Memory)、又は外部メモリ等であってもよい。
図4は、実施形態1に係る演算部の構成を示すブロック図である。演算部30は、主演算部20に接続されて補助的に演算を行う演算回路であり、主演算部20が生成した演算要素データDTに基づき、演算を実行する。図4に示すように、演算部30は、IF部32、要素コードメモリ部34、演算回路選択部36、入力データメモリ部40、第1入力レジスタ部42A、第2入力レジスタ部42B、要素演算部44、出力レジスタ部48、MUX52、56、58、出力データメモリ部54及び副入力レジスタ部55を有する。実施形態1において、演算部30は、製造後に使用者等が構成を設定できる集積回路であるFPGA(Field Programmable Gate Array)であるが、以下説明する機能を有している演算回路であれば、FPGAに限定されない。
IF部32は、主演算部20と演算部30とのインターフェイスを行う。IF部32は、主演算部20と電気的に接続される。IF部32は、主演算部20を介して、演算要素データ記憶部22から、演算要素データDTが入力される。より詳しくは、IF部32は、入力された演算要素データDTの各データを分類して、要素コードOP及び演算順データIDを要素コードメモリ部34に出力し、前入力データX、後入力アドレスデータX’、及び演算順データIDを入力データメモリ部40に出力し、前出力アドレスデータY’、後出力アドレスデータY’及び演算順データIDを出力データメモリ部54に出力する。また、IF部32は、出力データメモリ部54が生成した後出力データYを主演算部20に出力する。
要素コードメモリ部34は、IF部32と電気的に接続されている。要素コードメモリ部34は、同じ演算要素データに属する要素コードOP及び演算順データIDを、互いを関連付けて記憶する。実施形態1において、要素コードメモリ部34は、RAM(Random Access Memory)である。
演算回路選択部36は、要素コードメモリ部34及び要素演算部44と電気的に接続されている。演算回路選択部36は、要素コードメモリ部34から、要素コードOP及び演算順データIDが入力される。演算回路選択部36は、演算順データIDから、どの順で演算を行うかを読み出し、行う演算に用いる要素コードOPを選択する。演算回路選択部36は、選択した要素コードOPの信号値をデコードしてどのような演算を行うかを読み出し、要素演算部44が有する演算回路から演算を行わせる演算回路を選択する。演算回路選択部36の演算回路の選択については、後述する。
入力データメモリ部40は、IF部32と電気的に接続されている。より詳しくは、入力データメモリ部40は、MUX58を介してIF部32と電気的に接続されている(MUX58については後述する)。入力データメモリ部40は、同じ演算要素データに属する前入力データXと後入力アドレスデータX’と演算順データIDとを関連付けて記憶する。また、詳しくは後述するが、入力データメモリ部40は、後入力アドレスデータX’と、それに対応する前出力データYとに基づき、後入力データXを生成して記憶する。実施形態1において、入力データメモリ部40は、RAMである。
なお、入力データメモリ部40は、同じ演算要素データに属する前入力データX又は後入力アドレスデータX’と要素コードOPとの関連を記憶するために、演算順データIDが入力されている。入力データメモリ部40は、同じ演算要素データに属する前入力データX又は後入力アドレスデータX’と要素コードOPとの関連を記憶できれば、演算順データIDを記憶しなくてもよい。例えば、入力データメモリ部40は、前入力データX又は後入力アドレスデータX’に、自身が属する演算要素データDTの情報など、同じ演算要素データに属する要素コードOPと関連していることを示す情報が含まれていれば、前入力データX又は後入力アドレスデータX’のみを記憶すればよい。
第1入力レジスタ部42A及び第2入力レジスタ部42Bは、入力データメモリ部40及び要素演算部44と電気的に接続されているレジスタである。第1入力レジスタ部42A及び第2入力レジスタ部42Bは、演算順データIDから、これから行う演算に用いる入力データXを選択して入力データメモリ部40から読み出し、要素演算部44に出力する。ここで、第1入力レジスタ部42Aと第2入力レジスタ部42Bとは、入力データメモリ部40及び要素演算部44に並列に接続されている。第1入力レジスタ部42Aは、所定の演算で使用する一方の入力データX(例えばADD演算における前入力データX1)を読み出し、第2入力レジスタ部42Bは、所定の演算で使用する他方の入力データX(例えばADD演算における前入力データX2)を読み出す。第1入力レジスタ部42Aと第2入力レジスタ部42Bとは、同じ演算で使用する入力データXを、要素演算部44に同時に出力する。このように、実施形態1において、入力レジスタ部は2つ設けられているが、これに限られず、1つ設けられていてもよく、3つ以上設けられていてもよい。
図5は、実施形態1に係る要素演算部の構成の一例を示すブロック図である。図5に示すように、要素演算部44は、演算回路45A、45B、45C、45D、45Eと、スイッチ部46A、46B、46C、46D、46Eとを有する。演算回路45A、45B、45C、45D、45Eは、それぞれスイッチ部46A、46B、46C、46D、46Eを介して、第1入力レジスタ部42A及び第2入力レジスタ部42Bと電気的に接続されている。また、演算回路45A、45B、45C、45D、45Eは、出力レジスタ部48と電気的に接続されている。以下、演算回路45A、45B、45C、45D、45Eを区別しない場合は、適宜演算回路45と記載する。また、以下、スイッチ部46A、46B、46C、46D、46Eを区別しない場合は、適宜スイッチ部46と記載する。要素演算部44は、スイッチ部46の接続切り替えにより、演算に使用する演算回路45が選択され、選択された演算回路45により、所定の演算を行う演算回路の集合体である。
演算回路45は、それぞれ異なる演算を行うことができる電子回路である。実施形態1において、演算回路45AはADD演算を行うADD回路であり、演算回路45BはSUB演算を行うSUB回路であり、演算回路45CはCOMP演算を行うCOMP回路であり、演算回路45DはAND演算を行うAND回路であり、演算回路45EはOR演算を行うOR回路である。演算回路45は、これら演算回路45A、45B、45C、45D、45Eに限られず、入力信号(電気信号)に応じてそれぞれ異なる演算に対応した出力信号を生成する回路を複数有しているものであればよい。
スイッチ部46は、第1入力レジスタ部42A及び第2入力レジスタ部42Bと、各演算回路45との接続を切り替えるスイッチである。スイッチ部46は、演算回路選択部36に電気的に接続されている。スイッチ部46は、演算回路選択部36の電気信号により、スイッチをONとし、所定の演算回路45と第1入力レジスタ部42A及び第2入力レジスタ部42Bとを電気的に接続させる。
すなわち、演算回路選択部36は、入力された要素コードに基づいて演算内容を判断する。演算回路選択部36は、その演算内容に基づき、対応する演算を行う演算回路45を選択し、その演算回路45に対応するスイッチ部46のスイッチをONとする選択信号Sを出力する。選択された演算回路45には、第1入力レジスタ部42A及び第2入力レジスタ部42Bから入力データXが入力される。選択された演算回路45は、その入力データX(電気信号)に基づいて、所定の演算結果の情報である出力値y(前出力値y又は後出力値y)の信号値を有する演算結果データWを生成し、出力レジスタ部48に出力する。なお、演算結果データWは、出力値yの信号値を有するが、演算要素データDTに関連付けられていない。また、要素演算部44は、複数の演算回路45を有し、演算回路選択部36により演算を行う演算回路を選択されるものであれば、スイッチ部によるものに限られず、任意の構成をとることができる。
例えば、演算回路選択部36に、ADD演算を行う要素コードOP1が入力された場合、演算回路選択部36は、スイッチ部46AのスイッチをONにして、第1入力レジスタ部42A及び第2入力レジスタ部42Bと演算回路45Aとを接続する。ここで、第1入力レジスタ部42Aは、要素コードOP1に対応する前入力データX1を読み出しており、第2入力レジスタ部42Bは、要素コードOP1に対応する前入力データX2を読み出している。従って、演算回路45Aには、前入力データX1、X2が入力される。演算回路45Aは、ADD演算の演算結果である後出力値y1の信号値を有する演算結果データを生成して、出力レジスタ部48に出力する。
出力レジスタ部48は、MUX52を介して出力データメモリ部54に電気的に接続されるレジスタである。出力レジスタ部48は、要素演算部44から演算結果データWが出力され、その演算結果データをMUX52に出力する。なお、出力レジスタ部48は、内部にマルチプレクサを有し、演算要素部44からこのマルチプレクサを介して演算結果データWが入力される。
MUX52は、マルチプレクサである。MUX52は、IF部32、出力レジスタ部48、出力データメモリ部54に電気的に接続される。MUX52は、IF部32から出力アドレスデータY’及び演算順データIDが入力された場合は、出力アドレスデータY’及び演算順データIDを出力データメモリ部54に出力する。また、MUX52は、出力レジスタ部48から演算結果データWが出力された場合は、演算結果データWを出力データメモリ部54に出力する。
出力データメモリ部54は、同じ演算要素データDTに属する出力アドレスデータY’及び演算順データIDを関連付けて記憶する。また、出力データメモリ部54は、演算結果データWが入力された場合、演算順データIDに基づき、出力アドレスデータY’のアドレス情報と、対応する演算結果データWの出力値yとを関連付け、出力値yを有する出力データYとして記憶する。また、出力データメモリ部54は、MUX56を介してIF部32と接続されている(MUX56については後述する)。出力データメモリ部54は、記憶した出力データYを、MUX56を介してIF部32に出力する。なお、実施形態1において、出力データメモリ部54は、RAMである。
副入力レジスタ部55は、入力データメモリ部40とMUX56とに電気的に接続されるレジスタである。副入力レジスタ部55は、出力データを次の他の演算の入力データとして用いるかを決定するために、入力データメモリ部40から後入力アドレスデータX’を読み出すものである。副入力レジスタ部55は、入力データメモリ部40から、第1入力レジスタ部42A及び第2入力レジスタ部42Bが読み出した前入力データXに対応する演算の後に行われる演算に属する後入力アドレスデータX’を読み出して、MUX56に出力する。例えば、第1入力レジスタ部42A及び第2入力レジスタ部42Bが、演算要素データDT1に対応する前入力データX1、X2を読み出した場合、副入力レジスタ部55は、それよりも後の演算に対応する演算要素データDT3の後入力アドレスデータX5’、X6’を読み出して、MUX56に出力する。
MUX56は、マルチプレクサである。MUX56は、IF部32、出力データメモリ部54、副入力レジスタ部55、MUX58と電気的に接続される。MUX56は、出力データメモリ部54から、出力データYが入力される。MUX56は、この出力データY
の出力値yを、後入力データXの入力値xとして使用しない場合には、出力データYをIF部32に出力する。
また、MUX56は、この出力データYの出力値yを後入力データXの入力値xとして使用する場合には、出力データYをMUX58に出力する。言い換えれば、MUX56は、出力データYが前出力データYである場合は、出力データYをMUX58に出力する。より詳しくは、MUX56は、後入力アドレスデータX’が入力される。MUX56は、この後入力アドレスデータX’の有するアドレス情報が、出力データYの出力値yと対応する場合に、この出力データYをMUX58に出力する。すなわち、MUX56は、後入力アドレスデータX’に基づき、出力データYが前出力データYであるかを確認する。MUX56は、出力データYが前出力データYである場合に、出力データYをMUX58に出力する。
MUX58は、マルチプレクサである。MUX58は、IF部32、入力データメモリ部40、MUX56と電気的に接続される。MUX58は、MUX56から出力データY(前出力データY)が入力された場合、出力データY(前出力データY)を入力データメモリ部40に出力する。入力データメモリ部40は、出力データY(前出力データY)の出力値yと、対応する入力アドレスデータX’のアドレス情報とを関連付け、入力値x(出力値yと同じ信号値)を有する後入力データXとして記憶する。なお、MUX58は、IF部32から前入力データX、後入力アドレスデータX’、及び演算順データIDが入力された場合には、これらを入力データメモリ部40に出力する。
例えば、図3に示す演算要素データDT1のADD演算を行った場合、MUX56は、出力データメモリ部54から、演算要素データDT1の前出力データY1が入力される。また、MUX56は、入力データメモリ部40から、演算要素データDT3の後入力アドレスデータX5’、X6’が入力される。前出力データY1は、後入力アドレスデータX5’に対応し、前出力データY1の前出力値y1が演算要素データDT3の後入力値x5として使用される。従って、MUX56は、前出力データY1を、MUX58を介して入力データメモリ部40に出力する。入力データメモリ部40は、後入力アドレスデータX5’のアドレス情報と、前出力データY1の前出力値y1とを関連付け、前出力値y1を後入力値x5とする後入力データX5を生成する。
次に、演算部30による演算処理について、フローチャートに基づいて説明する。図6は、実施形態1に係る演算部の演算処理を説明するフローチャートである。図6に示すように、演算部30により演算処理を行う場合、最初に、主演算部20が、制御ロジックに基づき、演算要素データDTを生成する(ステップS12)。すなわち、主演算部20は、演算順データID、要素コードOP、前入力データX、後入力アドレスデータX’、出力アドレスデータY’を有する演算要素データDTを生成する。例えば、主演算部20は、図2に示す図形言語制御ロジックに基づき、図3に示すような演算要素データDT1、DT2、DT3を生成する。主演算部20は、生成した演算要素データDTを、演算要素データ記憶部22に記憶させる。
主演算部20により演算要素データが生成された後、演算部30は、IF部32により、演算要素データDTの各データを、要素コードメモリ部34、入力データメモリ部40、出力データメモリ部54に分配して出力する(ステップS14)。より詳しくは、IF部32は、主演算部20を介して演算要素データ記憶部22から演算要素データDTを読み出す。図4に示すように、IF部32は、要素コードOPと演算順データIDとを要素コードメモリ部34に出力する。要素コードメモリ部34は、要素コードOPと演算順データIDとを、演算要素データDT毎に関連付けて記憶する。
また、IF部32は、図4に示すように、前入力データX、後入力アドレスデータX’、及び演算順データIDを、MUX58を介して入力データメモリ部40に出力する。入力データメモリ部40は、前入力データXと後入力アドレスデータX’と演算順データIDとを、演算要素データDT毎に関連付けて記憶する。
また、IF部32は、図4に示すように、出力アドレスデータY’(前出力アドレスデータY’及び後出力アドレスデータY’)と演算順データIDとを、MUX52を介して出力データメモリ部54に出力する。出力データメモリ部54は、出力アドレスデータY’と演算順データIDとを、演算要素データDT毎に関連付けて記憶する。要素コードメモリ部34、入力データメモリ部40、出力データメモリ部54は、演算要素データDTが複数からなる演算を実行する場合、全ての演算要素データDTに属する演算順データID、要素コードOP、前入力データX、後入力アドレスデータX’、及び出力アドレスデータY’を記憶する。
演算要素データDTの各データを出力した後、演算部30は、演算順データIDに基づき、演算回路選択部36により、演算に用いる要素コードOPを選択して読み出し、第1入力レジスタ部42A及び第2入力レジスタ部42Bにより、演算に用いる入力データXを選択して読み出す(ステップS16)。演算回路選択部36は、要素コードメモリ部34が記憶する演算順データIDから、どの順で演算を行うか読み出し、要素コードメモリ部34から、行う演算に用いる要素コードOPを選択して読み出す。第1入力レジスタ部42A及び第2入力レジスタ部42Bは、入力データメモリ部40が記憶する演算順データIDから、どの順で演算を行うかを読み出し、入力データメモリ部40から、行う演算に用いる入力データXを選択して読み出す。
例えば、図3に示す演算要素データDT1、DT2、DT3に基づき演算を行う場合、演算回路選択部36、第1入力レジスタ部42A及び第2入力レジスタ部42Bは、演算の順番が1番目であるという情報を有する演算順データID1が属する演算要素データDT1から演算を行うことを読み出す。この場合、演算回路選択部36は、演算要素データDT1に属する要素コードOP1を読み出す。また、第1入力レジスタ部42Aは、演算要素データDT1に属する前入力データX1を読み出す。第2入力レジスタ部42Bは、演算要素データDT1に属する前入力データX2を読み出す。
演算に用いる要素コードOP及び入力データXを選択した後、演算部30は、演算回路選択部36により、要素演算部44から演算に用いる演算回路45を選択する(ステップS18)。演算回路選択部36は、読み出した要素コードOPをデコードしてどのような演算を行うかを読み出す。演算回路選択部36は、読み出した演算を行うことができる演算回路45を、要素演算部44から選択する。例えば、演算回路選択部36は、演算要素データDT1に対応するADD演算を行う場合は、ADD演算回路である演算回路45Aを選択する。演算回路選択部36は、選択した演算回路45に対応するスイッチ部46のスイッチをONとする選択信号Sを出力することにより、選択した演算回路45と第1入力レジスタ部42A及び第2入力レジスタ部42Bとを電気的に接続する。
演算に用いる演算回路45を選択した後、演算部30は、選択した演算回路45により演算を行い、演算結果の情報を有する演算結果データWを生成する(ステップS20)。選択した演算回路45には、第1入力レジスタ部42A及び第2入力レジスタ部42Bから、入力値x(前入力値x又は後入力値x)の信号値を有する入力データXが入力される。選択した演算回路45は、入力データXの入力値xに基づいて出力値y(前出力値y又は後出力値y)の電圧信号値を有する演算結果データWを生成する。選択した演算回路45は、演算結果データWを、出力レジスタ部48に出力する。例えば、演算要素データDT1に対応するADD演算を行う場合、選択された演算回路45Aは、前入力データX1、X2が入力されることにより、前出力値y1の信号値を有する演算結果データWを生成して、出力レジスタ部48に出力する。
演算結果データWを生成した後、演算部30は、出力データメモリ部54により、演算結果データWと出力アドレスデータY’とに基づいて、出力データYを生成する(ステップS22)。より詳しくは、出力データメモリ部54は、ステップS14において、MUX52を介して出力アドレスデータY’が入力されている。また、出力データメモリ部54は、MUX52を介して、出力レジスタ部48から出力値yの信号値を有する演算結果データWが入力される。出力データメモリ部54は、演算順データIDに基づき、出力アドレスデータY’のアドレス情報と、対応する演算結果データWの出力値yとを関連付け、出力値yを有する出力データYを生成して記憶する。より詳しくは、出力アドレスデータY’は、演算順データIDと関連付けて記憶されている。また、演算結果データWは、演算順データIDと関連付けられた要素コードOP及び入力データXに基づいて生成される。すなわち、演算結果データWは、演算順に沿って順番に生成される。従って、出力データメモリ部54は、演算順データIDに基づき、出力アドレスデータY’のアドレス情報と、対応する演算結果データWとを関連付けることができる。
出力データYを生成した後、演算部30は、MUX56により、副入力レジスタ部55から入力された後入力アドレスデータX’と、出力データメモリ部54から入力された出力データYとに基づき、生成した出力データYが後の演算に使用する前出力データYであるかを確認する(ステップS24)。言い換えれば、MUX56は、以降に行う他の演算に、生成した出力データYを使用するかを確認する。より詳しくは、MUX56は、副入力レジスタ部55から、この演算の後に行われる演算に属する後入力アドレスデータX’が入力される。また、MUX56は、生成した出力データY(前出力データY又は後出力データY)が入力される。MUX56は、入力された後入力アドレスデータX’の有するアドレス情報が、入力された出力データYと対応する場合に、入力された出力データYが前出力データYであると確認する。
生成した出力データYが前出力データYである場合(ステップS24でYes)、演算部30は、入力データメモリ部40において、前出力データYと、対応する後入力アドレスデータX’とに基づき、後入力データXを生成する(ステップS26)。より詳しくは、MUX56に入力された出力データYが前出力データYである場合、入力データメモリ部40は、この出力データY(前出力データY)が、MUX56から入力される。また、入力データメモリ部40は、ステップS14において、後入力アドレスデータX’を記憶している。入力データメモリ部40は、MUX56から入力された前出力データYと、それに対応する後入力アドレスデータX’とに基づき、MUX56から入力された前出力データYの前出力値yを後入力値xとする後入力データXを生成して記憶する。
例えば、演算要素データDT1に対応する演算を行った場合、MUX56は、出力データメモリ部54から、演算要素データDT1の前出力データY1が入力される。また、MUX56は、入力データメモリ部40から、演算要素データDT1よりも後の演算に対応する演算要素データDT3の後入力アドレスデータX5’、X6’が入力される。前出力データY1は、後入力アドレスデータX5’に対応する。従って、MUX56は、前出力データY1を、MUX58を介して入力データメモリ部40に出力する。入力データメモリ部40は、記憶している後入力アドレスデータX5’のアドレス情報と、前出力データY1の前出力値y1とを関連付け、前出力値y1を入力値x5とする後入力データX5を生成して記憶する。
後入力データXを生成した後、演算部30は、ステップS16に戻り、次に行われる演算を実行する。すなわち、演算部30は、DT1に対応する演算を実行した後、次の演算順であるDT2の演算を実行する。また、生成した出力データYが前出力データYでない(出力データYを他の演算に使用しない)場合(ステップS24でNo)は、演算部30は、IF部32により、出力データYを演算結果として、主演算部20に出力する。これにより、演算部30の演算処理は終了する。例えば、生成した出力データYが後出力データYである場合、MUX56は、出力データY(後出力データY)を、IF部32を介して主演算部20に出力する。主演算部20は、この出力データYを、演算要素データ記憶部22に記憶させる。
図7は、生成した出力データが前出力データでない場合の演算フローを示した模式図である。図8は、生成した出力データが前出力データである場合の演算フローを示した模式図である。図7に示すように、生成した出力データYが前出力データYでない場合、出力データメモリ部54からMUX56、58を経由して入力データメモリ部40へ向かう矢印は、点線矢印となっている。すなわち、生成した出力データYが前出力データYでなく、他の演算の入力データとして使用されない場合、出力データメモリ部54が記憶する出力データYは、入力データメモリ部40へ入力されない。
一方、図8に示すように、生成した出力データYが前出力データYである場合、出力データメモリ部54からMUX56、58を経由して入力データメモリ部40へ向かう矢印は、実線矢印となっている。すなわち、生成した出力データYが前出力データYであり、他の演算の入力データとして使用される場合、出力データメモリ部54が記憶する出力データYは、他の演算の入力データに使用するため、入力データメモリ部40へ入力される。
以上説明したように、実施形態1に係る演算部30は、演算を行うための演算要素データDTの要素コードOPが要素コードメモリ部34に記憶され、入力データXが入力データメモリ部40に記憶される。演算部30は、演算回路選択部36により、要素コードメモリ部34に記憶された要素コードOPから、行う演算の内容を読み取り、この演算を実行可能な演算回路45を選択して、演算を実行させる。演算の結果は、出力データメモリ部54に記憶される。
例えば、演算を主演算部20のプログラムにより実行させる場合、演算を行うためのデータを制御装置10のメモリに記憶させて、主演算部20がこのメモリのデータを逐次読み書きしながら演算を実行する必要がある。この場合、主演算部20は、メモリのデータの読み書きをしながら演算を行うため、処理負担が高くなり、主演算部20のオーバーヘッドが増加する場合がある。また、例えば、主演算部20は、定期的に自己診断を行うため、コンテクストを切替えながら演算と自己診断とを行う必要がある。従って、この場合、主演算部20は、自己診断を行うことによる処理負担の増加と、演算処理と自己診断処理とのコンテクスト切替えによる処理負担の増加とにより、オーバーヘッドが増加する。
一方、実施形態1においては、主演算部20のプログラムにより演算を行う代わりに、演算部30が、電子回路(演算回路45)により演算を行う。演算部30は、演算に必要なデータ(演算要素データDT)を要素コードメモリ部34、入力データメモリ部40に分配して記憶させる。そして、演算部30は、要素コードOPにより演算の内容を読み取り、その演算を実行できる演算回路45を選択し、その演算回路45に入力値を入力することにより演算を行う。すなわち、演算部30は、演算を行う演算回路45を選択してその演算回路45に入力値を入力するだけで、演算を行うことができる。そして、主演算部20は、演算要素データDTを演算部30に入力するだけで、演算結果を得ることができる。従って、主演算部20は、メモリのデータの読み書きをしながら演算を行う必要がない。また、主演算部20は、自己診断と演算処理とを並列して行う必要がなくなる。そのため、この演算部30は、主演算部20の処理負担の増加を抑制し、オーバーヘッドの増加を抑制することができる。言い換えれば、この演算部30は、制御装置10のオーバーヘッドの増加を抑制することができる。
さらに、演算部30は、複数の演算を組み合わせた演算を行う場合において、演算の順番の情報を有する演算順データと、演算内容の情報を有する要素コードと関連付けて記憶している。そして、演算部30は、この演算順データに基づいた順番で演算を行う。従って、演算部30は、複数の演算を組み合わせた演算を行う場合においても、適切に演算を行うことができる。また、演算部30は、演算順データに基づいて演算順を判断するため、例えば主演算部20がメモリから全てのデータを読み込んで演算順を判断する必要が無い。この演算部30によると、主演算部20のデータ読み取り負荷を軽減し、制御装置10のオーバーヘッドの増加をより好適に抑制することができる。
また、演算部30は、演算の結果情報を有する出力データYが、他の演算の入力データXとして使用される場合に、この出力データYを、出力データメモリ部54から入力データメモリ部40に直接入力する。従って、出力データYを他の演算の入力データXとして使用する場合における処理は、出力データが記憶される出力データメモリ部54と入力データが記憶される入力データメモリ部40とのデータの送受信の処理のみでよく、例えば他の箇所に出力データを出力するなど、他の処理が不要となる。従って、演算部30は、制御装置10のオーバーヘッドの増加をより好適に抑制することができる。
なお、演算部30は、演算要素データDTが複数からなる演算を実行する場合、全ての演算要素データDTの有するデータを、要素コードメモリ部34、入力データメモリ部40、出力データメモリ部54に記憶している。そして、演算部30は、全ての演算要素データDTの有するデータに基づき、全ての演算要素データDTに対応する演算を実行する。そして、演算部30は、全ての演算が終了し、最終的な演算結果が出力データメモリ部54に記憶された後、その最終的な演算結果のみを主演算部20に出力する。すなわち、演算部30は、途中の過程の演算結果、すなわち前出力データYについては、主演算部20に出力しない。
ただし、演算部30は、1つの演算要素データDTの有するデータのみを読み出して記憶して、その演算要素データDTに対応する演算のみを行ってもよい。この場合、演算部30は、この演算の演算結果を、主演算部20に出力する。そして、演算部30は、次の演算に対応する別の演算要素データDTの有するデータを記憶して、その演算要素データDTに対応する演算を行い、その演算結果を主演算部20に出力する。演算部30は、この処理を繰り返す。このように、演算部30は、演算毎に主演算部20から演算要素データDTのデータを読み出して演算し、その演算結果を主演算部20に出力するという処理を繰り返してもよい。この場合、演算部30は、途中の過程の演算結果である前出力データYを、主演算部20に出力する。
このように、演算毎に主演算部20から演算要素データDTのデータを読み出して演算し、その演算結果を主演算部20に出力する場合における演算方法について、フローチャートに基づいて説明する。図9は、実施形態1に係る演算部の他の演算方法の一例を示すフローチャートである。この場合、図9に示すように、主演算部20が、制御ロジックに基づき、演算要素データDTを生成する(ステップS32)。
演算要素データDTが生成された後、演算部30は、IF部32により、演算順データIDに基づき、演算に用いる各種データを選択する(ステップS34)。より詳しくは、IF部32は、主演算部20を介して、演算要素データ記憶部22から、演算要素データDTの演算順データIDを読み出す。IF部32は、演算順データIDに基づき、次に行う演算に用いる要素コードOP、入力データX、出力アドレスデータY’を選択する。すなわち、IF部32は、演算順データIDに基づき、次の演算に使用して、1つの演算要素データDTに属する要素コードOP、入力データX、出力アドレスデータY’を選択する。
演算に用いる各種データを選択した後、演算部30は、IF部32により、選択した各種データを、要素コードメモリ部34、入力データメモリ部40、出力データメモリ部54に分配して出力する(ステップS36)。IF部32は、要素コードメモリ部34に要素コードOPを出力して記憶させ、入力データメモリ部40に入力データXを出力して記憶させ、出力データメモリ部54に出力アドレスデータY’を出力して記憶させる。すなわち、要素コードメモリ部34、入力データメモリ部40、出力データメモリ部54は、それぞれ1つの演算要素データDTに属する要素コードOP、入力データX、出力アドレスデータY’のみを記憶する。
各種データを分配して出力した後、演算部30は、演算回路選択部36により、要素コードメモリ部34が記憶する要素コードOPに基づき、演算に使用する演算回路45を選択する(ステップS38)。
演算に使用する演算回路45を選択した後、演算部30は、選択した演算回路45により、入力データメモリ部40に記憶した入力データXに基づいて演算を行い、演算結果データWを生成する(ステップS40)。より詳しくは、演算部30は、第1入力レジスタ部42A及び第2入力レジスタ部42Bにより、入力データメモリ部40に記憶した入力データXを、選択した演算回路45に入力する。選択した演算回路45は、この入力データXに基づいて演算を行い、出力値yの信号値を有する演算結果データWを生成する。
演算結果データWを生成した後、演算部30は、出力データメモリ部54により、演算結果データWと出力アドレスデータY’とに基づいて、出力データYを生成して記憶する(ステップS42)。IF部32は、出力データメモリ部54から出力データYを読み出し、主演算部20に出力する。ここで、IF部32は、出力データYが前出力データYと後出力データYとのいずれであっても、出力データYを主演算部20に出力する。
出力データYを生成した後、演算部30は、IF部32により、次の演算があるかを判断する(ステップS44)。IF部32は、主演算部20を介して、演算要素データ記憶部22から、演算要素データDTの演算順データIDを読み出す。IF部32は、この演算順データIDに基づき、次の演算があるかを判断する。
次の演算がある場合(ステップS44でYes)、ステップS34に戻り、演算部30は、次の演算に用いる各種データを選択して主演算部20を介して読み出し、次の演算を実行する。また、次の演算が無い場合(ステップS44でNo)、演算部30による演算処理は終了する。
このように、演算部30は、演算毎に主演算部20から演算要素データDTのデータを読み出して演算し、その演算結果を主演算部20に出力するという処理を繰り返してもよい。図10は、実施形態1に係る演算部が他の演算方法を行った場合の演算フローの一例を示す模式図である。図10に示すように、演算毎に主演算部20から演算要素データDTのデータを読み出して演算する場合、出力データメモリ部54からMUX56、58を経由して入力データメモリ部40へ向かう矢印は、点線矢印となっている。すなわち、演算部30は、各演算の演算結果を主演算部20に出力する。すなわち、この場合、演算部30は、生成した出力データYが前出力データYであっても、出力データYを入力データメモリ部40へ入力しない。この場合、演算部30は、出力データYが前出力データYであるかを判断する処理が不要となり、演算処理を単純にすることができる。
(実施形態2)
次に、本発明の実施形態2について説明する。実施形態2に係る機械1aの演算部30aは、入力データメモリ部を複数有する点で、実施形態1に係る演算部30と異なる。実施形態2に係る演算部30aは、その他の点で、実施形態1に係る演算部30と構成が共通するため、共通する箇所の説明は省略する。
図11は、実施形態2に係る演算部の構成を示すブロック図である。図11に示すように、実施形態2に係る演算部30aは、第1入力データメモリ部40Aaと、第2入力データメモリ部40Baとを有する。第1入力データメモリ部40Aaは、第1入力レジスタ部42Aaに電気的に接続されている。第2入力データメモリ部40Baは、第2入力レジスタ部42Baに電気的に接続されている。
第1入力データメモリ部40Aa及び第2入力データメモリ部40Baは、IF部32から、前入力データX、後入力アドレスデータX’、及び演算順データIDが入力される。すなわち、第1入力データメモリ部40Aa及び第2入力データメモリ部40Baは、同じデータが入力される。
第1入力レジスタ部42Aaは、第1入力データメモリ部40Aaから、所定の演算で使用する一方の入力データXを読み出す。第2入力レジスタ部42Baは、第2入力データメモリ部40Baから、同じ演算で使用する他方の入力データXを読み出す。例えば、図3における演算要素データDT1に係る演算を行う場合、第1入力レジスタ部42Aaは、第1入力データメモリ部40Aaから、入力データX1を読み出す。第2入力レジスタ部42Baは、第2入力データメモリ部40Baから、入力データX2を読み出す。
第1入力レジスタ部42Aaと第2入力レジスタ部42Baとは、同一の演算で使用される入力データXを、それぞれ同時に読み出す。第1入力レジスタ部42Aaと第2入力レジスタ部42Baとは、読み出した入力データXを、要素演算部44に出力する。
このように、第1入力データメモリ部40Aaは、同一の演算で使用される複数の入力データのうち一部の入力データが、第1入力レジスタ部42Aaを介して要素演算部44に読み出される。また、第2入力データメモリ部40Baは、同一の演算で使用される複数の入力データのうち他の一部の入力データが、第2入力レジスタ部42Baを介して要素演算部44に読み出される。さらに、第2入力データメモリ部40Baは、第1入力データメモリ部40Aaのデータ読み出しと並行して、同一の演算で使用される複数の入力データのうち他の一部の入力データが、第2入力レジスタ部42Baを介して要素演算部44に読み出される。このように、実施形態2に係る演算部30aは、同じ演算で使用される複数の入力データを並行して読み出すことができるため、演算の処理速度を向上させることができる。
なお、第1入力データメモリ部40Aa及び第2入力データメモリ部40Baは、同じデータが入力されるが、これに限られず、第1入力データメモリ部40Aaは、同一の演算で使用される複数の入力データのうち一部の入力データが入力され、第2入力データメモリ部40Baは、同一の演算で使用される複数の入力データのうち他の一部の入力データが入力されるものであってもよい。また、実施形態2においては、入力データメモリ部は2つであるが、入力データメモリ部を3つ以上有していてもよい。
(実施形態3)
次に、本発明の実施形態3について説明する。実施形態3に係る機械1bの演算部30bは、要素演算部を複数有する点で、実施形態2に係る演算部30aと異なる。実施形態3に係る演算部30bは、その他の点で、実施形態2に係る演算部30aと構成が共通するため、共通する箇所の説明は省略する。
図12は、実施形態3に係る演算部の構成を示すブロック図である。図12に示すように、実施形態3に係る演算部30bは、並行演算確認部35bと、第1入力レジスタ部42Ab、第2入力レジスタ部42Bb、第3入力レジスタ部43Ab、第4入力レジスタ部43Bbと、第1要素演算部44Ab、第2要素演算部44Bbと、第1出力レジスタ部48Ab、第2出力レジスタ部48Bbとを有する。
並行演算確認部35bは、要素コードメモリ部34、演算回路選択部36b、第1入力データメモリ部40Ab、第2入力データメモリ部40Bb、第1入力レジスタ部42Ab、第2入力レジスタ部42Bb、第3入力レジスタ部43Ab、第4入力レジスタ部43Bbと電気的に接続されている。並行演算確認部35bは、要素コードメモリ部34、第1入力データメモリ部40Ab、第2入力データメモリ部40Bbから、演算順データIDと、それに対応する要素コードOP及び入力データXを読み出す。並行演算確認部35bは、演算順データID、要素コードOP及び入力データXから、連続して行われる演算のうち1つの演算の出力データを、連続して行われる演算のうち他の演算の入力データとして用いることを確認する。
実施形態3において、並行演算確認部35bは、これから行われる演算とその次に行われる演算の要素コードOP及び入力データXを読み出す。並行演算確認部35bは、その次に行われる演算の入力データに、これから行われる演算の出力データが使用されるかを確認する。例えば、図3に示す演算要素データDT1に係る演算が行われる場合、並行演算確認部35bは、演算要素データDT1の要素コードOP1、入力データX1,X2と、演算要素データDT1に係る演算の次に行われる演算要素データDT2の要素コードOP2、入力データX3,X4とを読み出す。演算要素データDT2に係る演算の入力データX3,X4は、演算要素データDT1に係る演算の出力データを用いない。並行演算確認部35bは、演算要素データDT1に係る演算の次に行われる演算要素データDT2に、演算要素データDT1に係る演算の出力データを用いないことを確認する。
以下、これから行われる演算に係る要素コードを要素コードOP11と記載し、要素コードOP11に対応する入力データを、入力データX11、X12と記載する。また、要素コードOP11に係る演算の次に行われ、かつ、要素コードOP11に係る演算の出力データを入力データとして用いない演算に係る要素コードを、要素コードOP12と記載する。そして、要素コードOP12に対応する入力データを、入力データX13、X14と記載する。
並行演算確認部35bは、これから行われる演算の出力データが、その次に行われる演算の入力データに使用されないと確認した場合、演算回路選択部36bに、これから行われる演算と次に行われる演算とを並行して行う旨の指令を出力する。すなわち、並行演算確認部35bは、演算回路選択部36bに、要素コードOP11に係る演算と要素コードOP12に係る演算を並行して行う旨の指令を出力する。また、並行演算確認部35bは、第1入力レジスタ部42Ab、第2入力レジスタ部42Bb、第3入力レジスタ部43Ab、第4入力レジスタ部43Bbに、それぞれ入力データX11、X12、X13、X14を読み出す旨の指令を出力する。
演算回路選択部36bは、第1要素演算部44Ab、第2要素演算部44Bbと電気的に接続されている。演算回路選択部36bは、並行演算確認部35bからの指令に基づき、要素コードメモリ部34から、要素コードOP11及び要素コードOP12を読み出す。そして、演算回路選択部36bは、要素コードOP11に基づき、第1要素演算部44Abから、要素コードOP11に係る演算を行う演算回路45を選択する。同様に、演算回路選択部36bは、要素コードOP12に基づき、第2要素演算部44Bbから、要素コードOP12に係る演算を行う演算回路45を選択する。
第1入力レジスタ部42Abは、第1入力データメモリ部40Ab及び第1要素演算部44Abと電気的に接続されている。第1入力レジスタ部42Abは、並行演算確認部35bからの指令に基づき、第1入力データメモリ部40Abから入力データX11を読み出し、第1要素演算部44Abに出力する。
第2入力レジスタ部42Bbは、第2入力データメモリ部40Bb及び第1要素演算部44Abと電気的に接続されている。第2入力レジスタ部42Bbは、並行演算確認部35bからの指令に基づき、第2入力データメモリ部40Bbから入力データX12を読み出し、第1要素演算部44Abに出力する。
第3入力レジスタ部43Abは、第1入力データメモリ部40Ab及び第2要素演算部44Bbと電気的に接続されている。第3入力レジスタ部43Abは、並行演算確認部35bからの指令に基づき、第1入力データメモリ部40Abから入力データX13を読み出し、第2要素演算部44Bbに出力する。
第4入力レジスタ部43Bbは、第2入力データメモリ部40Bb及び第2要素演算部44Bbと電気的に接続されている。第4入力レジスタ部43Bbは、並行演算確認部35bからの指令に基づき、第2入力データメモリ部40Bbから入力データX14を読み出し、第2要素演算部44Bbに出力する。
第1要素演算部44Abは、第1出力レジスタ部48Abと電気的に接続されている。第1要素演算部44Abは、選択された演算回路45により、入力データX11、X12から要素コードOP11に係る演算を行い、その演算結果の情報を有する演算結果データW11を生成する。第1要素演算部44Abは、生成した演算結果データW11を、第1出力レジスタ部48Abに出力する。
第2要素演算部44Bbは、第2出力レジスタ部48Bbと電気的に接続されている。第2要素演算部44Bbは、選択された演算回路45により、入力データX13、X14から要素コードOP12に係る演算を行い、その演算結果の情報を有する演算結果データW12を生成する。第2要素演算部44Abは、生成した演算結果データW12を、第2出力レジスタ部48Bbに出力する。ここで、第2要素演算部44Bbは、第1要素演算部44Abによる要素コードOP11に係る演算と並行して、要素コードOP12に係る演算を行う。
このように、第1要素演算部44Abと第2要素演算部44Bbとは、要素コードOP11に係る演算と要素コードOP12に係る演算を並行して行う。従って、実施形態3に係る演算部30bは、互いに依存関係がない演算を並行して実行することができるため、演算の処理速度を向上させることができる。
なお、実施形態3においては、その次に行われる演算の入力データに、これから行われる演算の出力データが使用されるかを確認するために、入力データXを用いたが、要素コードによってこの判断が可能な場合は、入力データXを判断に用いなくてもよい。例えば、その次に行われる演算の入力データにこれから行われる演算の出力データが使用されるかは、主演算部20により、演算要素データを作成する際に確認されてもよい。また、例えば、その次に行われる演算の入力データにこれから行われる演算の出力データが使用されるかは、IF部32により、演算要素データが入力された際に確認されてもよい。
(実施形態4)
次に、本発明の実施形態4について説明する。実施形態4に係る機械1cの演算部30cは、入力データメモリ部に入力データXが記憶されず、出力データメモリ部に入力データXが記憶される点で、実施形態1に係る演算部30とは異なる。実施形態4に係る演算部30cは、その他の点で、実施形態1に係る演算部30と構成が共通するため、共通する箇所の説明は省略する。
図13は、実施形態4に係る演算部の構成を示すブロック図である。図13に示すように、実施形態4に係る演算部30cは、入力データメモリ部40cと、出力データメモリ部54cと、MUX59Ac、59Bcとを有する。
実施形態4においては、演算要素データDTcは、入力参照アドレスデータXADを有する。入力参照アドレスデータXADは、入力データXが記憶されている箇所のアドレス情報を有するデータである。実施形態4においては、入力データXは、出力データメモリ部54cに記憶されている。従って、入力参照アドレスデータXADは、出力データメモリ部54cにおける入力データXが記憶されている箇所のアドレス情報を有する。
入力データメモリ部40cは、出力データメモリ部54c、MUX59Ac、59Bcと電気的に接続されている。入力データメモリ部40cは、入力データXが記憶されている箇所のアドレス情報を有する入力参照アドレスデータXADが記憶されている。入力データメモリ部40cは、入力参照アドレスデータXADに基づき、出力データメモリ部54cに、演算に使用する入力データXを照会する照会信号を出力する。
出力データメモリ部54cは、MUX59Ac、59Bcと電気的に接続されている。出力データメモリ部54cは、入力データメモリ部40cの照会信号に基づき、照会された入力データXが、MUX59Ac、59Bcに読み出される。
MUX59Acは、第1入力レジスタ部42Acに電気的に接続されている。MUX59Acは、出力データメモリ部54cから、演算に使用される入力信号Xが入力される。MUX59Acは、入力信号Xを第1入力レジスタ部42Acに出力する。第1入力レジスタ部42Acは、この入力信号Xを要素演算部44に出力し、演算を行わせる。
MUX59Bcは、第2入力レジスタ部42Bcに電気的に接続されている。MUX59Bcは、MUX59Acと同様に、出力データメモリ部54cからの入力信号Xを第2入力レジスタ部42Bcに出力する。
このように、実施形態4に係る入力データメモリ部40cは、入力データXではなく、入力参照アドレスデータXADが記憶される。また、出力データメモリ部54cは、入力参照アドレスデータXADに基づいて、入力データXが、MUX59Ac、59Bc、を介して要素演算部44に読み出される。
実施形態1においては、出力データに基づいて生成される後入力データXは、入力データメモリ部40cに記憶され、入力データメモリ部40cから要素演算部44に出力されていた。そして、入力データメモリ部40cに記憶される後入力データXを生成する場合、出力データメモリ部54cから読み出された出力データYが、入力データメモリ部40cから読み出された後入力アドレスデータX’と対応する前出力データYであるかを確認する処理が必要であった。すなわち、この場合、出力データメモリ部54cに記憶されている出力データYと、入力データメモリ部40cに記憶されている後入力アドレスデータX’との関連を読み取る処理が必要であった。
一方、実施形態4においては、入力データメモリ部40cは、後入力データXを記憶していない。そして、後入力データXを生成するための後入力アドレスデータX’と前出力データYとは、出力データメモリ部54cに記憶されている。後入力データXは、出力データメモリ部54cにおいて生成され、その後入力データXは、入力データメモリ部40cに入力されず、直接入力レジスタ部に出力される。すなわち、実施形態4においては、例えば後入力データXを生成する場合に、出力データメモリ部54cと入力データメモリ部40cとの両方のデータを読み出す必要がない。従って、実施形態4に係る演算部30cは、後入力データXの生成にあたり、出力データメモリ部54cのデータと入力データメモリ部40cのデータとの関連を読み取る処理が不要となる。そのため、実施形態4に係る演算部30cは、処理負担を軽減することができる。
なお、上述のように、演算部30cは、入力データメモリ部40cにおいてMUX59Ac、59Bcと電気的に接続されている。従って、演算部30cは、例えば演算要素データDTcが入力参照アドレスデータXADを含まず、入力データXのみを有する場合には、入力データメモリ部40cに入力データXを入力させて、入力データメモリ部40cからMUX59Ac、59Bcを介して演算要素部44に入力データを出力させることにより、演算を行わせることができる。すなわち、演算部30cは、演算要素データDTcが入力参照アドレスデータXADを含まない場合は、入力データXを出力データメモリ部54cに入力せずに演算処理を行う。このように、演算部30cは、演算要素データDTcが入力参照アドレスデータXADを含む場合の処理と、演算要素データDTcが入力参照アドレスデータXADを含まない場合の処理との双方を行うことができる。
以上、本発明の実施形態を説明したが、これらの実施形態の内容によりこれらの実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態等の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
1、1a、1b、1c 機械
5 制御ロジック入力部
10 制御装置
20 主演算部
22 演算要素データ記憶部
30、30a、30b、30c 演算部
32 IF部
34 要素コードメモリ部
35b 並行演算確認部
36、36b 演算回路選択部
40、40c 入力データメモリ部
40Aa、40Ab 第1入力データメモリ部
40Ba、40Bb 第2入力データメモリ部
42A、42Aa、42Ab、42Ac 第1入力レジスタ部
42B、42Ba、42Bb、42Bc 第2入力レジスタ部
43Ab 第3入力レジスタ部
43Bb 第4入力レジスタ部
44 要素演算部
44Ab 第1要素演算部
44Bb 第2要素演算部
44 要素演算部
45、45A、45B、45C、45D、45E 演算回路
46、46A、46B、46C、46D、46E スイッチ部
48 出力レジスタ部
48Ab 第1出力レジスタ部
48Bb 第2出力レジスタ部
54、54c 出力データメモリ部
55 副入力レジスタ部
100 機械部
111、112、113 ブロック
DT、DT1、DT2、DT3、DT、DT、DTc 演算要素データ
ID、ID1、ID2、ID3、ID、ID 演算順データ
OP、OP1、OP2、OP3、OP11、OP12、OP、OP 要素コード
S 選択信号
W、W11、W12 演算結果データ
X、X11、X12、X13、X14 入力データ
X1、X2、X3、X4、X 前入力データ
X5’、X6’、X’ 後入力アドレスデータ
後入力データ
AD 入力参照アドレスデータ
Y 出力データ
Y1、Y2、Y 前出力データ
Y1’、Y2’、Y’ 前出力アドレスデータ
Y3、Y 後出力データ
’ 後出力アドレスデータ

Claims (8)

  1. 所定の演算の演算内容の情報を有する要素コードと、前記所定の演算の入力値の情報を有し、前記要素コードと関連付けられている入力データと、を有する演算要素データが入力される演算システムであって、
    前記要素コードが入力される要素コードメモリ部と、
    前記入力データが入力される入力データメモリ部と、
    前記要素コードメモリ部の要素コードの情報、及び前記入力データメモリ部の前記入力データの情報を有する電気信号により演算を行う演算回路を複数有する要素演算部と、
    前記要素コードの演算内容に基づき、前記要素演算部から所定の前記演算回路を選択して演算を行わせる演算回路選択部と、
    前記要素演算部による演算結果が、前記要素コード及び前記入力データと関連付けられた出力データとして出力される出力データメモリ部と、を有する、
    演算システム。
  2. 前記演算要素データは、前記所定の演算に対応して複数入力され、さらに、前記所定の演算の演算順を示し、同じ前記演算要素データに属する要素コードと対応している演算順データを有し、
    前記演算回路選択部は、前記演算順データに基づいた順番で、前記要素演算部に前記所定の演算を行わせる、
    請求項1に記載の演算システム。
  3. 前記出力データメモリ部は、複数の前記所定の演算のうち1つの演算結果に対応する前記出力データを複数の前記所定の演算のうち他の演算の前記入力データとして使用する場合に、前記出力データを前記入力データとして前記入力データメモリ部に出力する、
    請求項2に記載の演算システム。
  4. 前記要素演算部が、第1要素演算部と第2要素演算部との複数設けられ、
    前記所定の演算の出力データを、前記所定の演算と連続して行われる他の演算の入力データとして用いるかについて、前記要素コード及び前記演算順データに基づいて確認する並行演算確認部を更に有し、
    前記並行演算確認部により前記所定の演算の出力データを前記他の演算の入力データとして用いないと確認した場合に、前記第1要素演算部は、前記所定の演算を行い、前記第2要素演算部は、前記第1要素演算部による前記所定の演算と並行して前記他の演算を行う、
    請求項2又は請求項3に記載の演算システム。
  5. 前記出力データメモリ部は、前記所定の演算の入力値が入力され、
    前記入力データメモリ部は、前記入力データとして、前記出力データメモリ部の前記所定の演算の入力値が入力されているアドレスが入力され、
    前記要素演算部は、前記入力データに基づいて読み出された前記所定の演算の入力値に基づき演算を行う、請求項2から請求項4のいずれか1項に記載の演算システム。
  6. 前記演算要素データは、1つの演算で使用される複数の入力データを有し、
    前記入力データメモリ部は、第1入力データメモリ部と第2入力データメモリ部との複数設けられ、
    前記第1入力データメモリ部は、前記要素演算部から、1つの演算で使用される複数の前記入力データのうち一部の入力データが読み出され、
    前記第2入力データメモリ部は、前記第1入力データメモリ部からの前記一部の入力データの読み出しと並行して、前記要素演算部から、1つの演算で使用される複数の前記入力データのうち他の一部の入力データが読み出される、
    請求項1から請求項5のいずれか1項に記載の演算システム。
  7. 請求項1から請求項6のいずれか1項に記載の演算システムと、
    ロジックを図形で表現した図形言語で記載される制御ロジックから前記演算要素データを生成して前記演算システムに出力し、前記演算システムの出力データに基づき機械の動作を制御する主演算部と、を有する、制御装置。
  8. 所定の演算の演算内容の情報を有する要素コードと、前記所定の演算の入力値の情報を有し、前記要素コードと関連付けられている入力データと、を取得するステップと、
    前記要素コード及び前記入力データの情報を有する電気信号により所定の演算を行う複数の演算回路から、前記要素コードの演算内容に基づいて所定の前記演算回路を選択し、選択した所定の前記演算回路によって演算を行うステップと、
    所定の前記演算回路の演算結果を、前記要素コード及び前記入力データと関連付けられた出力データとして出力するステップと、
    を有する、演算方法。
JP2014204966A 2014-10-03 2014-10-03 演算システム、制御装置及び演算方法 Pending JP2016076031A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014204966A JP2016076031A (ja) 2014-10-03 2014-10-03 演算システム、制御装置及び演算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014204966A JP2016076031A (ja) 2014-10-03 2014-10-03 演算システム、制御装置及び演算方法

Publications (1)

Publication Number Publication Date
JP2016076031A true JP2016076031A (ja) 2016-05-12

Family

ID=55949916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014204966A Pending JP2016076031A (ja) 2014-10-03 2014-10-03 演算システム、制御装置及び演算方法

Country Status (1)

Country Link
JP (1) JP2016076031A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7446123B2 (ja) 2020-02-19 2024-03-08 三菱電機株式会社 制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7446123B2 (ja) 2020-02-19 2024-03-08 三菱電機株式会社 制御装置

Similar Documents

Publication Publication Date Title
KR100875401B1 (ko) 프로세서 장치 및 복합 조건 처리 방법
US20130185620A1 (en) Ladder program creation apparatus
CN108139885A (zh) 浮点数舍入
JP2014530408A (ja) プロセッシング装置及びスウィズルパターン生成器
US9529654B2 (en) Recoverable and fault-tolerant CPU core and control method thereof
JPH09264937A (ja) パターン発生装置
JP2016076031A (ja) 演算システム、制御装置及び演算方法
CN110928240A (zh) 一种数控加工方法与系统
CN107851022B (zh) 向量长度查询指令
CN109656641B (zh) 一种多层循环程序的运行系统和方法
JP6646350B2 (ja) 様々な数値フォーマットのデータを用いてデータに基づく関数モデルを計算するためのモデル計算ユニット、および制御装置
US4831572A (en) Polynomial vector arithmetic operation control system
CN110914801A (zh) 在数据处理设备中的向量交叉
US20120019286A1 (en) Integrated Circuit Signal Generation Device
CN109765849A (zh) 数控设备控制方法、装置、系统和计算机可读介质
JP2015185076A (ja) Vliwプロセッサ
KR102219655B1 (ko) 프로그래머블 로직 컨트롤러
CN100365567C (zh) 微控制器
CN103761071B (zh) 一种plc的指令编码及识别系统
US20120072792A1 (en) Memory tester and compiler which matches a test program
JP6259361B2 (ja) プログラマブルデバイスおよびその制御方法
JP2008003663A (ja) データ処理装置、データ処理方法
JP5143600B2 (ja) ハードウェアロジック部を有するplc
JPH07248918A (ja) マイクロプロセッサ
JPH02126317A (ja) データ形式変換方式