JPS63196903A - プログラマブルコントロ−ラ - Google Patents
プログラマブルコントロ−ラInfo
- Publication number
- JPS63196903A JPS63196903A JP2805287A JP2805287A JPS63196903A JP S63196903 A JPS63196903 A JP S63196903A JP 2805287 A JP2805287 A JP 2805287A JP 2805287 A JP2805287 A JP 2805287A JP S63196903 A JPS63196903 A JP S63196903A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- memory
- executed
- input parameters
- 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
Links
Landscapes
- Programmable Controllers (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明は、一般産業設備の監視や制御において使用され
る問題向き言語CPOL言語)を用いたプログラマブル
コントローラに関する。
る問題向き言語CPOL言語)を用いたプログラマブル
コントローラに関する。
(従来の技術)
プログラムコントローラの命令メモリに問題向き言語を
用いて作成したプログラム(以下、 POLプログラム
という)を格納して実行させる場合。
用いて作成したプログラム(以下、 POLプログラム
という)を格納して実行させる場合。
プログラムコントローラに内蔵された1つの演算ユニッ
トが、格納されたPOLプログラムの命令をメモリアド
レスの若い順に1ステツプづつ順次読み出し、各命令コ
ードをインタプリタで解読してその命令に対応した所定
の処理を順次実行する。
トが、格納されたPOLプログラムの命令をメモリアド
レスの若い順に1ステツプづつ順次読み出し、各命令コ
ードをインタプリタで解読してその命令に対応した所定
の処理を順次実行する。
各命令では、一般にメモリ上の入カパラメータを格納し
ているアドレスと出カパラメータを格納すべきアドレス
とが指定されており、演算ユニットはメモリ上の入カパ
ラメータを読み出して、所定の演算を行ない、その演算
結果を指定されたメモリ上のアドレスに出カパラメータ
として格納する。
ているアドレスと出カパラメータを格納すべきアドレス
とが指定されており、演算ユニットはメモリ上の入カパ
ラメータを読み出して、所定の演算を行ない、その演算
結果を指定されたメモリ上のアドレスに出カパラメータ
として格納する。
1つのPOLプログラムは、このような処理を順次繰り
返して実行される。
返して実行される。
(発明が解決しようとする問題点)
ところで、近年はプログラムコントローラの制御内容が
複雑化する一方、処理の高速化が要求されている。
複雑化する一方、処理の高速化が要求されている。
しかし、従来のPOLプログラムの処理方法では、上記
のように1つの演算ユニットが順次命令の解読、実行を
くり返すので、全体の処理時間は、POLプログラムの
ステップ数に比例して長くなる。このため、高速化を実
現しようとすると、より実行速度の速い演算ユニットを
使用するか、POLプログラムを一定の処理毎に分割し
、複数のプログラマブルコントローラで実行するように
しなければならず、装置のコストが高くなったり、シス
テムの規模が大きくなる問題があった。
のように1つの演算ユニットが順次命令の解読、実行を
くり返すので、全体の処理時間は、POLプログラムの
ステップ数に比例して長くなる。このため、高速化を実
現しようとすると、より実行速度の速い演算ユニットを
使用するか、POLプログラムを一定の処理毎に分割し
、複数のプログラマブルコントローラで実行するように
しなければならず、装置のコストが高くなったり、シス
テムの規模が大きくなる問題があった。
また、分割した処理を複数のプログラムコントローラで
実行するとき、1つの処理の処理結果を別の処理で使用
する場合が多く、この場合、各フログラムコントローラ
での実行順序を制御したり、処理結果を他のプログラム
コントローラへ転送したりするための装置が必要になり
、さらにシステムが大規模になる。
実行するとき、1つの処理の処理結果を別の処理で使用
する場合が多く、この場合、各フログラムコントローラ
での実行順序を制御したり、処理結果を他のプログラム
コントローラへ転送したりするための装置が必要になり
、さらにシステムが大規模になる。
本発明は、上記の問題点を解決し、低コストで小形に構
成できると共に高速処理が行なえるプログラマブルコン
トローラを提供することを目的とする。
成できると共に高速処理が行なえるプログラマブルコン
トローラを提供することを目的とする。
[発明の構成]
(問題を解決するための手段)
このため、本発明は、複数の演算ユニットと。
命令メモリより読み出された各ステップの命令をそれら
の演算ユニットに分配する分配ユニットとを備える一方
、各ステップの命令は、その命令の入カパラメータ数と
、命令メモリからその命令が読み出された回数を計数す
るためのアクティブカウンタと、その命令の出カパラメ
ータを入カパラメータとする他の命令のメモリアドレス
を示す伝達アドレスとを備えて構成し、命令メモリより
命令を読み出したとき、上記入カパラメータが複数の場
合には、上記アクティブカウンタをカウントアツプして
書き換えた命令を元のメモリアドレスに格納しておくよ
うにし、読み出した命令の入カパラメータとアクティブ
カウンタとを比較することにより、その命令の実行可否
を判断するようにし、実行筒と判断した各命令を複数の
演算二ニットにより実行し、その処理実行後、各命令の
伝達アドレスを取り出し、その伝達アドレスに従って命
令メモリから順次各命令を読み出して、上記処理を繰り
返すようにしたものである。
の演算ユニットに分配する分配ユニットとを備える一方
、各ステップの命令は、その命令の入カパラメータ数と
、命令メモリからその命令が読み出された回数を計数す
るためのアクティブカウンタと、その命令の出カパラメ
ータを入カパラメータとする他の命令のメモリアドレス
を示す伝達アドレスとを備えて構成し、命令メモリより
命令を読み出したとき、上記入カパラメータが複数の場
合には、上記アクティブカウンタをカウントアツプして
書き換えた命令を元のメモリアドレスに格納しておくよ
うにし、読み出した命令の入カパラメータとアクティブ
カウンタとを比較することにより、その命令の実行可否
を判断するようにし、実行筒と判断した各命令を複数の
演算二ニットにより実行し、その処理実行後、各命令の
伝達アドレスを取り出し、その伝達アドレスに従って命
令メモリから順次各命令を読み出して、上記処理を繰り
返すようにしたものである。
(作用)
複数の演算ユニットにより複数の命令が並行に処理され
るので、処理が高速化される一方、伝達アドレスに従っ
て次の命令を読み出すと共に。
るので、処理が高速化される一方、伝達アドレスに従っ
て次の命令を読み出すと共に。
入カパラメータ数が複数の場合には、命令メモリより読
み出した命令のアクティブカウンタをカウントアツプし
て元のアドレスにもどしておくことにより、次回その命
令が読み出されたとき、入カパラメータがデータメモリ
に揃っているかどうか判別できるので、所定の手順で確
実に処理できるようになる。
み出した命令のアクティブカウンタをカウントアツプし
て元のアドレスにもどしておくことにより、次回その命
令が読み出されたとき、入カパラメータがデータメモリ
に揃っているかどうか判別できるので、所定の手順で確
実に処理できるようになる。
(実施例)
以下1本発明の実施例を詳細に説明する。
第1図は本発明の一実施例に係るプログラムコントロー
ラのブロック構成図である。図において、アドレシング
ユニット1はアドレスデータを格納するFIFOバッフ
ァを内蔵し、命令メモリ2に対して格納したアドレスデ
ータを順次出力して。
ラのブロック構成図である。図において、アドレシング
ユニット1はアドレスデータを格納するFIFOバッフ
ァを内蔵し、命令メモリ2に対して格納したアドレスデ
ータを順次出力して。
メモリアドレスを指示するものである。命令メモリ2は
POLプログラムが格納されたメモリであり、分配ユニ
ット3はアドレシングユニット1により指示されたアド
レスの命令を命令メモリ2より順次読み出し、各命令を
演算ユニット48〜4eに分配するものである。演算ユ
ニット48〜4eのそれぞれは。
POLプログラムが格納されたメモリであり、分配ユニ
ット3はアドレシングユニット1により指示されたアド
レスの命令を命令メモリ2より順次読み出し、各命令を
演算ユニット48〜4eに分配するものである。演算ユ
ニット48〜4eのそれぞれは。
インタプリタを内蔵し、各命令に従った所定の処理を実
行するものであり、データメモリ5はその処理に対する
入カパラメータと出カパラメータとが格納されるメモリ
である。オア回路6はプログラムの実行終了を示す信号
を出力するものである。
行するものであり、データメモリ5はその処理に対する
入カパラメータと出カパラメータとが格納されるメモリ
である。オア回路6はプログラムの実行終了を示す信号
を出力するものである。
次に、本実施例の動作を説明するが、ここでは第2図の
制御ブロック図で示すような演算処理を実行する場合を
例として、以下に説明する。同図において、11〜25
はPOLプログラムの各演算処理ブロックを示しており
、ブロック内の記号は命令コードである。RO〜R35
はデータメモリ5のアドレスを示し、各アドレスのデー
タは各処理11〜25の入カパラメータあるいは出カパ
ラメータになる。
制御ブロック図で示すような演算処理を実行する場合を
例として、以下に説明する。同図において、11〜25
はPOLプログラムの各演算処理ブロックを示しており
、ブロック内の記号は命令コードである。RO〜R35
はデータメモリ5のアドレスを示し、各アドレスのデー
タは各処理11〜25の入カパラメータあるいは出カパ
ラメータになる。
例えば、処理11はデータメモリ5のアドレスROに格
納されている入カパラメータに基づいてAICという演
算処理を行ない、その演算結果である出カパラメータを
アドレスRIOに格納するものである。
納されている入カパラメータに基づいてAICという演
算処理を行ない、その演算結果である出カパラメータを
アドレスRIOに格納するものである。
また、この図から例えば処理11.12と処理13.1
4とはどちらを先に実行してもよく、処理15は処理1
1〜14の全てを実行した後でないと入カパラメータが
揃わないので実行できないことがわかる。
4とはどちらを先に実行してもよく、処理15は処理1
1〜14の全てを実行した後でないと入カパラメータが
揃わないので実行できないことがわかる。
第3図は第2図に示した演算処理を行なうためのプログ
ラムの初期状態を示し、このプログラムが命令メモリ2
に格納される。図において、アドレス31は各命令の格
納場所を示す命令メモリ2内のアドレスであり、命令コ
ード32は演算の種類を示すものであり、入カパラメー
タアドレス33は演算に必要な入カパラメータのデータ
メモリ5内のアドレスであり、出カパラメータアドレス
は、演算結果を格納する出カパラメータのアドレスであ
る。
ラムの初期状態を示し、このプログラムが命令メモリ2
に格納される。図において、アドレス31は各命令の格
納場所を示す命令メモリ2内のアドレスであり、命令コ
ード32は演算の種類を示すものであり、入カパラメー
タアドレス33は演算に必要な入カパラメータのデータ
メモリ5内のアドレスであり、出カパラメータアドレス
は、演算結果を格納する出カパラメータのアドレスであ
る。
入カパラメータ数35は入カパラメータの数を示し、ア
クティブカウンタ36は命令メモリ2から命令が読み出
された回数を計数するためのもので、初期値が0に設定
されており1分配ユニット3により必要に応じて書き換
えられるものである。伝達アドレス37は、各命令にお
いてその演算結果を入カパラメータとして使用している
他の命令の命令メモリ2内の格納アドレスを示す、ただ
し、rsTARTJの命令の場合には1次に実行すべき
命令の格納アドレスを示す。
クティブカウンタ36は命令メモリ2から命令が読み出
された回数を計数するためのもので、初期値が0に設定
されており1分配ユニット3により必要に応じて書き換
えられるものである。伝達アドレス37は、各命令にお
いてその演算結果を入カパラメータとして使用している
他の命令の命令メモリ2内の格納アドレスを示す、ただ
し、rsTARTJの命令の場合には1次に実行すべき
命令の格納アドレスを示す。
第4図はアドレシングユニット1.命令メモリ2および
分配ユニット3の動作を示したものである。
分配ユニット3の動作を示したものである。
アドレシングユニット1はスタート信号aにより起動さ
れると、I&初にアドレス「000」を命令メモリ2に
出力する。命令メモリ2はそのアドレスr000Jに格
納されている命令を分配ユニット3に出力する。
れると、I&初にアドレス「000」を命令メモリ2に
出力する。命令メモリ2はそのアドレスr000Jに格
納されている命令を分配ユニット3に出力する。
これにより、最初の命令、いまの場合rsTARTJ命
令が読み出される(第4図、処理41)。
令が読み出される(第4図、処理41)。
分配ユニット3はその命令を入力し、ビジー信号すをオ
ンする。次いで、その命令の中のアクティブカウンタ3
6を取り出し、その値を+1しく処理42)、+1した
アクティブカウンタの値と入カパラメータ数35とを比
較する(処理43)。スタート命令では、アクティブカ
ウンタが「0」で、入カパラメータ数が「1」なので、
この処理において両者が一致する。この場合(処理43
のY)、カウントアツプしたアクティブカウンタを「0
」にもどし、命令メモリ2の所定の元のアドレスに格納
しておく(処理44)。
ンする。次いで、その命令の中のアクティブカウンタ3
6を取り出し、その値を+1しく処理42)、+1した
アクティブカウンタの値と入カパラメータ数35とを比
較する(処理43)。スタート命令では、アクティブカ
ウンタが「0」で、入カパラメータ数が「1」なので、
この処理において両者が一致する。この場合(処理43
のY)、カウントアツプしたアクティブカウンタを「0
」にもどし、命令メモリ2の所定の元のアドレスに格納
しておく(処理44)。
演算ユニット48〜4eの動作中には、ビジー信号Cが
出力される1分配ユニット3は次にビジー信号Cの出力
されていないアイドル状態の演算ユニットを探しく処理
45)、その一つを選択し命令メモリ2より受信した命
令を転送する(処理46)。通常、rsTARTJ命令
を実行する初期状態では、全てアイドル状態になってい
るので、ここでは演算ユニット4aに命令を転送したこ
とにする。
出力される1分配ユニット3は次にビジー信号Cの出力
されていないアイドル状態の演算ユニットを探しく処理
45)、その一つを選択し命令メモリ2より受信した命
令を転送する(処理46)。通常、rsTARTJ命令
を実行する初期状態では、全てアイドル状態になってい
るので、ここでは演算ユニット4aに命令を転送したこ
とにする。
第5図は、演算ユニット48〜4eが上記命令を受信し
た場合の動作を示したものである。分配ユニット3より
命令が転送されると(処理51)、ビジー信号Cをオン
しく処理52)、rENDJ命令かどうか判定しく処理
53)、rENDJ命令でないとき(処理53のN)、
その命令の命令コードに従った所定の演算処理を実行す
る(処理54)、いま、rsTARTJ命令であるので
、演算処理は行なわない。
た場合の動作を示したものである。分配ユニット3より
命令が転送されると(処理51)、ビジー信号Cをオン
しく処理52)、rENDJ命令かどうか判定しく処理
53)、rENDJ命令でないとき(処理53のN)、
その命令の命令コードに従った所定の演算処理を実行す
る(処理54)、いま、rsTARTJ命令であるので
、演算処理は行なわない。
次に、その命令の伝達アドレスをアドレスバスnを介し
てアドレシングユニット1に順次転送する。
てアドレシングユニット1に順次転送する。
第3図に示したスタート命令ではroolJ、r008
J。
J。
roloJ、ro1匂の4アドレスが転送される(処理
55)。
55)。
この後、ビジー信号Cをオフしく処理56)、1つの命
令処理を終える。
令処理を終える。
一方、アドレシングユニットlは伝達アドレスが転送さ
れると内部のFIFOバッファに格納する一方(第4図
、処理47)、格納された伝達アドレスがある場合(処
理48のY)、ビジー信号すがオフになるごとに、その
アドレスを命令メモリ2に順次出力する。これにより、
命令メモリ2から対応する命令が読み出され、前記と同
様の処理が繰り返される(処理41〜処理48)。
れると内部のFIFOバッファに格納する一方(第4図
、処理47)、格納された伝達アドレスがある場合(処
理48のY)、ビジー信号すがオフになるごとに、その
アドレスを命令メモリ2に順次出力する。これにより、
命令メモリ2から対応する命令が読み出され、前記と同
様の処理が繰り返される(処理41〜処理48)。
この処理により、第6図に示すように、rSTARTJ
命令実行後、アドレシングユニット1に転送された伝達
アドレスrooIJの命令rAIcJが読み出され、例
えば演算ユニット4aでその命令が実行され、その実行
後伝達アドレスr002Jがアドレシングユニット1に
転送される。次いで、アドレシングユニット1のFIF
Oからは同様にアドレスro08Jの命令「^ICJが
読み出され、演算ユニット4bで実行され、伝達アドレ
スrOQ9Jが転送される。このように伝達アドレスに
対応する命令が各演算ユニット48〜4eで分担しなが
ら並行して順次実行されるようになる。
命令実行後、アドレシングユニット1に転送された伝達
アドレスrooIJの命令rAIcJが読み出され、例
えば演算ユニット4aでその命令が実行され、その実行
後伝達アドレスr002Jがアドレシングユニット1に
転送される。次いで、アドレシングユニット1のFIF
Oからは同様にアドレスro08Jの命令「^ICJが
読み出され、演算ユニット4bで実行され、伝達アドレ
スrOQ9Jが転送される。このように伝達アドレスに
対応する命令が各演算ユニット48〜4eで分担しなが
ら並行して順次実行されるようになる。
ここで、アドレスr003Jの命令rANDJが1回目
に読み出された場合、入カパラメータ数35が「2」な
ので、処理43において+1したアクティブカウンタ3
6と入カパラメータ数とが不一致になる。この場合、+
1したアクティブカウンタ36を命令メモリ2の元のア
ドレスro03Jに格納しく処理49)、その命令は実
行しない。アドレスro03Jは、第6図に示すようニ
、アドレス「002」ト「009」ノ命令rt、vcn
:より、2回伝達アドレスとして指示されている。
に読み出された場合、入カパラメータ数35が「2」な
ので、処理43において+1したアクティブカウンタ3
6と入カパラメータ数とが不一致になる。この場合、+
1したアクティブカウンタ36を命令メモリ2の元のア
ドレスro03Jに格納しく処理49)、その命令は実
行しない。アドレスro03Jは、第6図に示すようニ
、アドレス「002」ト「009」ノ命令rt、vcn
:より、2回伝達アドレスとして指示されている。
このため、2回目にアドレスr003Jの命令が読み出
されたとき、前回アクティブカウンタ36を+1してい
るので+2となり、処理43において、両者が一致し、
このときその命令rADDJが実行される。
されたとき、前回アクティブカウンタ36を+1してい
るので+2となり、処理43において、両者が一致し、
このときその命令rADDJが実行される。
ところで、上記命令rADDJは、第2図の処理15に
相当する。前記したように処理15は処理11〜14を
全て実行した後でなければ実行できないものであるが、
前記命令rLVcJはその処理12と14とに対応して
いるので、その処理12.14がともに実行終了した後
、この命令rADDJが実行されることになる。
相当する。前記したように処理15は処理11〜14を
全て実行した後でなければ実行できないものであるが、
前記命令rLVcJはその処理12と14とに対応して
いるので、その処理12.14がともに実行終了した後
、この命令rADDJが実行されることになる。
こ九は、処理21の命令rADDJについても同様であ
り、第2図にはないが、入カパラメータ数が3以上の命
令においても、このように全ての入カパラメータが揃っ
てから実行されることになる。
り、第2図にはないが、入カパラメータ数が3以上の命
令においても、このように全ての入カパラメータが揃っ
てから実行されることになる。
アドレシングユニット1はFIFOバッファ内に出力す
べき伝達アドレスがなくなったとき(処理48のN)、
動作を終える。一方、第3図に示したプログラムは最後
にrENDJ命令が実行されるようになる。演算ユニッ
1〜4a〜4eはrENDJ命令を受けたとき、エンド
信号dを出力する。このエンド信号dはオア回路6より
出力され、プログラムの終了が示される。
べき伝達アドレスがなくなったとき(処理48のN)、
動作を終える。一方、第3図に示したプログラムは最後
にrENDJ命令が実行されるようになる。演算ユニッ
1〜4a〜4eはrENDJ命令を受けたとき、エンド
信号dを出力する。このエンド信号dはオア回路6より
出力され、プログラムの終了が示される。
以上のように本実施例では、プログラムの各スチップご
との命令において、入力プログラム数35と、その命令
の出カパラメータを入力する他の命令のアドレスである
伝達アドレス37とを指定しておくと共に、その命令の
メモリからの読み出し回数をカウントするアクティブカ
ウンタ36を設けている。また、複数の演算ユニット4
8〜4eを配設して、各命令を各演算ユニット48〜4
eで分担して実行する一方、各命令実行後に伝達アドレ
スを取り出し、そのアドレスの順に命令メモリ2より命
令を読み出す、そして、読み出した命令のアクティブカ
ウンタを+1した値と入カパラメータ数とを比較し1両
者が一致したときその命令を実行する一方、不一致のと
きは、アクティブカウンタを+1したその命令を命令メ
モリ2にもどしておくようにしている。これにより、各
命令は必ず必要な入カパラメータが揃ってから実行され
るようになり、正しい所定の手順で処理されるようにな
る。
との命令において、入力プログラム数35と、その命令
の出カパラメータを入力する他の命令のアドレスである
伝達アドレス37とを指定しておくと共に、その命令の
メモリからの読み出し回数をカウントするアクティブカ
ウンタ36を設けている。また、複数の演算ユニット4
8〜4eを配設して、各命令を各演算ユニット48〜4
eで分担して実行する一方、各命令実行後に伝達アドレ
スを取り出し、そのアドレスの順に命令メモリ2より命
令を読み出す、そして、読み出した命令のアクティブカ
ウンタを+1した値と入カパラメータ数とを比較し1両
者が一致したときその命令を実行する一方、不一致のと
きは、アクティブカウンタを+1したその命令を命令メ
モリ2にもどしておくようにしている。これにより、各
命令は必ず必要な入カパラメータが揃ってから実行され
るようになり、正しい所定の手順で処理されるようにな
る。
このように、各処理は複数の演算ユニットで分担されて
並行して実行されるので、プログラム全体の処理時間が
短縮される。この場合、従来のプログラムコントローラ
に対して1分配ユニット3を配設し、演算ユニットを複
数にしただけなので。
並行して実行されるので、プログラム全体の処理時間が
短縮される。この場合、従来のプログラムコントローラ
に対して1分配ユニット3を配設し、演算ユニットを複
数にしただけなので。
プログラムコントローラ自体を複数設置する場合のよう
に、コストが高く大形になるようなことはない。また、
演算ユニット48〜4eは高速のものでなく、従来のも
のを使用することができる。
に、コストが高く大形になるようなことはない。また、
演算ユニット48〜4eは高速のものでなく、従来のも
のを使用することができる。
なお、本実施例では、演算ユニットは48〜4eの5個
配設したが、任意の個数で構成できるのは当然である。
配設したが、任意の個数で構成できるのは当然である。
例えば、演算ユニットを1個にした場合においても、第
2図に示した処理を行なうプログラムを作成する場合、
従来はデータの流れに従って処理12.14の後に処理
15を配置しなければならなかったが、第3図に示すよ
うにその配置が前後しても正しぐ処理されるようになる
。
2図に示した処理を行なうプログラムを作成する場合、
従来はデータの流れに従って処理12.14の後に処理
15を配置しなければならなかったが、第3図に示すよ
うにその配置が前後しても正しぐ処理されるようになる
。
また、アドレシングユニット、分配ユニットは、LSI
化すれば構成が簡単になり、演算ユニツI−に使用され
るプロセッサも、最近では安価になってきており、この
ようなプロセッサを複数台用いることにより、コストも
低下できる。
化すれば構成が簡単になり、演算ユニツI−に使用され
るプロセッサも、最近では安価になってきており、この
ようなプロセッサを複数台用いることにより、コストも
低下できる。
[発明の効果]
以上のように本発明によれば、複数の命令を複数の演算
ユニットで並行処理するようにしたので、高速処理が可
能になる一方、各命令において、入カパラメータ数とそ
の命令の出カパラメータを入力する他の命令のアドレス
である伝達アドレスとを指定しておくと共に、その命令
のメモリからの読み出し回数をカウントするアクティブ
カウンタを設けることにより、命令メモリより各命令を
読み出したとき、その命令が入カパラメータの揃ってい
る実行可能なものかどうか判別できるようにし、実行可
能なもののみ演算ユニットに分配して実行させるように
したので、所定の手順で正しく処理される。また、装置
構成としては、演算ユニットを複数にして1分配ユニッ
I−を配設しただけなので、小形にしかも低コストで構
成できる。
ユニットで並行処理するようにしたので、高速処理が可
能になる一方、各命令において、入カパラメータ数とそ
の命令の出カパラメータを入力する他の命令のアドレス
である伝達アドレスとを指定しておくと共に、その命令
のメモリからの読み出し回数をカウントするアクティブ
カウンタを設けることにより、命令メモリより各命令を
読み出したとき、その命令が入カパラメータの揃ってい
る実行可能なものかどうか判別できるようにし、実行可
能なもののみ演算ユニットに分配して実行させるように
したので、所定の手順で正しく処理される。また、装置
構成としては、演算ユニットを複数にして1分配ユニッ
I−を配設しただけなので、小形にしかも低コストで構
成できる。
第1図は本発明の一実施例に係るプログラマブルコント
ローラのブロック構成図、第2図は第1図で実行される
演算処理の一例を示すブロック構成図、第3図は第2図
の処理を行なうためのプログラムの一例を示す説明図、
第4図は命令の読み出しと演算ユニットへの分配動作を
示すフローチャート、第5図は演算ユニットの動作を示
すフローチャート、第6図は第2図の演算処理の実行手
順を示す説明図である。 1・・・アドレシングユニット、2・・・命令メモリ、
3・・・分配ユニット、4a〜4e・・・演算ユニット
。 5・・・データメモリ、32・・・命令コード、33・
・・入カパラメータアドレス、34・・・出カパラメー
タアドレス、35・・・入カパラメータ数、36・・・
アクティブカウンタ、37・・・伝達アドレス。 代理人 弁理士 紋 1) 誠 □第1図 第3図 第4図 第5図
ローラのブロック構成図、第2図は第1図で実行される
演算処理の一例を示すブロック構成図、第3図は第2図
の処理を行なうためのプログラムの一例を示す説明図、
第4図は命令の読み出しと演算ユニットへの分配動作を
示すフローチャート、第5図は演算ユニットの動作を示
すフローチャート、第6図は第2図の演算処理の実行手
順を示す説明図である。 1・・・アドレシングユニット、2・・・命令メモリ、
3・・・分配ユニット、4a〜4e・・・演算ユニット
。 5・・・データメモリ、32・・・命令コード、33・
・・入カパラメータアドレス、34・・・出カパラメー
タアドレス、35・・・入カパラメータ数、36・・・
アクティブカウンタ、37・・・伝達アドレス。 代理人 弁理士 紋 1) 誠 □第1図 第3図 第4図 第5図
Claims (1)
- 問題向き言語の各命令を、各種演算処理を実行する命令
コードと、これら演算処理における入力パラメータおよ
び出力パラメータを格納する入力パラメータアドレスお
よび出力パラメータアドレスと、入力パラメータ数と、
命令のメモリからの読み出し回数を計数するためのアク
ティブカウンタと、その命令の出力パラメータを入カパ
ラメータとする他の命令のアドレスを示す伝達アドレス
とにより構成すると共に、その命令を用いて作成したプ
ログラムを格納する命令メモリと、伝達アドレスに従っ
てその命令メモリより各命令を読み出すアドレシングユ
ニットと、その読み出した各命令の前記入力パラメータ
数と前記アクティブカウンタとに基づいてその命令の実
行可否を判定する実行判定手段と、実行不可と判定され
たとき、前記アクティブカウンタに+1加えてその命令
を前記命令メモリの元のアドレスに格納しておくアクテ
ィブカウンタ書換手段と、前記命令に従って所定の演算
処理を実行したのち、その実行した命令の前記伝達アド
レスを前記アドレシングユニットに転送する複数の演算
ユニットと、その演算ユニットの演算処理における入力
パラメータおよび出力パラメータを格納するデータメモ
リと、前記実行判定手段により実行可と判定された各命
令を前記複数の演算ユニットに分配すると共に、前記ア
ドレシングユニットに次の伝達アドレスに従って前記命
令メモリより命令を読み出す処理の実行を指令する分配
ユニットとを備え、複数の命令を並列処理することを特
徴とするプログラマブルコントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2805287A JPS63196903A (ja) | 1987-02-12 | 1987-02-12 | プログラマブルコントロ−ラ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2805287A JPS63196903A (ja) | 1987-02-12 | 1987-02-12 | プログラマブルコントロ−ラ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS63196903A true JPS63196903A (ja) | 1988-08-15 |
Family
ID=12237984
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2805287A Pending JPS63196903A (ja) | 1987-02-12 | 1987-02-12 | プログラマブルコントロ−ラ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS63196903A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03156604A (ja) * | 1989-11-15 | 1991-07-04 | Matsushita Electric Works Ltd | プログラマブルコントローラ |
-
1987
- 1987-02-12 JP JP2805287A patent/JPS63196903A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03156604A (ja) * | 1989-11-15 | 1991-07-04 | Matsushita Electric Works Ltd | プログラマブルコントローラ |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6220589B2 (ja) | ||
| JPH01237864A (ja) | Dma転送制御装置 | |
| JP2594600B2 (ja) | シングルチップマイクロコンピュータ | |
| JPS63196903A (ja) | プログラマブルコントロ−ラ | |
| JP2970082B2 (ja) | 仮想クラスタ間通信処理装置 | |
| EP0376003A2 (en) | Multiprocessing system with interprocessor communications facility | |
| JP3982077B2 (ja) | マルチプロセッサシステム | |
| CN109948785B (zh) | 一种高效的神经网络电路系统和方法 | |
| JPH025104A (ja) | 演算処理装置 | |
| JPS6049464A (ja) | マルチプロセッサ計算機におけるプロセッサ間通信方式 | |
| JP2744152B2 (ja) | データ駆動型データ処理装置 | |
| JP2586157B2 (ja) | システム制御装置 | |
| JPH03191459A (ja) | 割り込み応答処理装置 | |
| JPS5942331B2 (ja) | プロセツサソウチノセイギヨホウシキ | |
| JPH05241986A (ja) | 入出力命令リトライ方式 | |
| JPH02311903A (ja) | プログラマブルコントローラ | |
| JPH0245427B2 (ja) | Enhokanshiseigyosochi | |
| JPS63261431A (ja) | マ−ジ・プロセス制御方式 | |
| JPH05233525A (ja) | I/o処理装置 | |
| JPH08297583A (ja) | 割り込み処理装置およびその方法 | |
| JPS5953902A (ja) | 制御装置 | |
| JPH01234957A (ja) | Dma制御方法及び装置 | |
| JPH08212082A (ja) | データ処理装置及び割り込み制御方法 | |
| JPH01261763A (ja) | Dma転送制御装置 | |
| JPH0812609B2 (ja) | マイクロプロセッサ |