JP2003067010A - ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ - Google Patents

ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ

Info

Publication number
JP2003067010A
JP2003067010A JP2001251982A JP2001251982A JP2003067010A JP 2003067010 A JP2003067010 A JP 2003067010A JP 2001251982 A JP2001251982 A JP 2001251982A JP 2001251982 A JP2001251982 A JP 2001251982A JP 2003067010 A JP2003067010 A JP 2003067010A
Authority
JP
Japan
Prior art keywords
pld
circuit
output
data
result
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
JP2001251982A
Other languages
English (en)
Inventor
Yoshifumi Nakamura
善史 中村
Kenji Chikaraishi
健司 力石
Norio Kikuchi
紀男 菊池
Shingo Takeuchi
伸吾 竹内
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001251982A priority Critical patent/JP2003067010A/ja
Publication of JP2003067010A publication Critical patent/JP2003067010A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

(57)【要約】 【課題】プログラムの変更を保ちながら高速動作が可能
なビット演算制御装置及びこれを備えるプログラマブル
ロジックコントローラ(PLC)を提供する。 【解決手段】(a)予めラダープログラムをコンパイル
して命令リストに変換し、命令リストを等価なデジタル
回路データに変換し、又は(b)ラダープログラムの構
成部品を回路部品のシンボルとして用いて作成した回路
図のデータをラダー構成部品と等価なデジタル回路でデ
ジタル回路データに展開し、このデジタル回路データを
現場で書き込み可能なプログラマブルロジックデバイス
(PLD)11の構成データに変換して書き込みされた
PLD11と実行時にPLD11に入力信号を入力する
手段17および出力信号を制御対象15に出力する手段
18を有するビット演算制御装置10である。さらに、
このビット演算制御装置10を備えるPLCである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ラダー・プログラ
ムを実行するプログラマブルロジックコントローラに設
けられるビット演算処理装置およびこれを備えるプログ
ラマブルロジックコントローラに関する。
【0002】
【従来の技術】従来、シーケンスプログラムを実行する
ことにより各種自動制御機器の自動制御を行うプログラ
マブルロジックコントローラ(PLC)では、高速演算
処理を実現するために、シーケンス命令の中のビット演
算を行う専用のビット演算プロセッサ(BP)と、ビッ
ト演算以外のシーケンス命令(一般命令)を実行するマ
イクロプロセッサ(MPU)を内蔵している。
【0003】自動制御のシステムの設計者は、制御シス
テムの設計が従来のリレーシーケンスから、リレーシー
ケンスを模式化したラダー図と呼ばれるグラフィック型
のプログラム上に目的の動作を記述するソフトウエア的
設計に設計態様が変化している。
【0004】ラダー図とは、出力に対する信号の組み合
わせをa接点やb接点のシンボルとこれらの直列接続、
並列接続で記述するものである。
【0005】ラダー図をコンパイルして命令の羅列であ
る命令リスト(IL)に変換する。
【0006】命令リストは、通常デバイスと呼ばれるビ
ットデータの論理和や論理積およびそれらの組み合わせ
といった論理演算命令と、数値データの演算や転送とい
った応用演算命令から構成されるが、ラダー図から変換
した場合、論理演算命令のみが含まれる。
【0007】この命令リストをプログラマブルロジック
デバイス(PLD)内にダウンロード等により格納さ
せ、先頭から一命令ずつ解釈し、ビット演算であればB
P(ビット演算プロセッサ)が実行し、一般命令であれ
ばMPU(マイクロプロセッサ)が実行する。
【0008】ビット演算プロセッサBPは、1や0の状
態を持つ接点情報に対するAND、OR、NOTのよう
なビット単位の演算に特化されており、MPUで同様な
演算を実行する場合に比べ高速である。
【0009】
【発明が解決しようとする課題】ビット演算プロセッサ
(BP)はプログラム規模が大きくなるにつれ、動作速
度が遅くなり、要求された制御周期内に演算を完了させ
ることが難しくなっている。
【0010】上記BPを使用した場合においても、BP
とMPUが命令リストの格納された同一のメモリを参照
しながら実行するためMPUとBPが並列実行したとし
ても、メモリアクセスがネックになって期待される性能
の向上は少ない。
【0011】高水準言語プログラムであるインタープリ
タによるソフト実行では、変更修正が容易という利点は
あるが、プログラムを順番に実行しているため、コンパ
クトに比較すると、プログラム規模が大きくなるにつ
れ、動作速度が遅くなっている。
【0012】リレー同等の電子的な素子によるハードウ
エア固定ロジックでは、高速動作が可能であるが、設計
後の修正処理・追加が不可能である。
【0013】本発明は、プログラムの変更を保ちなが
ら、高速動作が可能なビット演算制御装置およびこれを
備えるプログラマブルロジックコントローラを提供する
ことを目的とする。
【0014】
【課題を解決するための手段】本発明に係るビット演算
制御装置は、上述した課題を解決するために、ラダープ
ログラムを実行するプログラマブルロジックコントロー
ラ(PLC)に設けられるビット演算制御装置が、プロ
グラマブルロジックデバイス(PLD)を有し、このP
LDは、制御演算を実行する前に、(a)ラダープログ
ラムをコンパイルして命令リストに変換し、この命令リ
ストを等価なデジタル回路データに変換したり、または
(b)ラダープログラムの構成部品を回路部品のシンボ
ルとして用いて回路図を作成し、この回路図のデータを
ラダー構成部品と等価なデジタル回路を用いてデジタル
回路データに展開し、前記(a)または(b)で得られ
たデジタル回路データを現場で書き込みと書き換えが可
能な前記PLDの構成データに変換し、このデータの書
き込みがなされたPLDで、かつ制御演算の実行時に制
御対象からPLDに入力信号を入力する手段と、前記P
LDからの出力信号を前記制御対象に出力する手段とを
有するものである。
【0015】本発明においては、デジタル回路の設計デ
ータをビット演算制御装置に事前に格納しているので、
外部メモリへの参照の必要がなく、従来のようなビット
演算プロセッサ(BP)とマイクロプロセッサ(MP
U)とが命令リストの格納された同一のメモリにアクセ
スする方式に比べ、高速で演算処理することができる。
【0016】本発明においては、制御の現場で書き込ま
れた内容の変更・追加などが可能であり、ユーザ側のニ
ーズに容易に対応することができる。また、ラダープロ
グラムがPLD内部で並列的に演算実行されることによ
り、全演算の中で最大遅延となる出力信号の遅れ時間内
に全ビット演算を完了させることが可能となる。
【0017】また、本発明に係るビット演算制御装置
は、前記入力信号に状態を記憶する入力レジスタと前記
出力信号に状態を記憶する出力レジスタを有するととも
に、(1)演算処理の中間信号に状態を記憶する中間レ
ジスタと、演算処理を分割して行なう複数の演算処理ブ
ロックとを設けて演算処理を実行させ、あるいは(2)
演算処理を分割して行なう複数の演算処理ブロックを設
け、各演算処理ブロックの境界に状態を記憶する境界レ
ジスタを配置し、境界レジスタに取り込むタイミングと
境界レジスタから出力するタイミングとを制御するブロ
ック制御論理部を設けて演算処理を分割して実行させる
ようにしたものである。
【0018】さらに、本発明に係るビット演算制御装置
は、PLDの入力部に実入力信号の代わりに任意の模擬
入力信号を入力する手段とPLDの出力部に実出力信号
の代わりに任意の模擬出力信号を出力する手段を設ける
ようにしてもよい。
【0019】これにより、任意の入力を加えて演算部の
動作の検証を容易に行うことができ、同様に任意の出力
値を出力することで、周辺出力回路の動作検証を容易に
行うことができる。
【0020】また、本発明に係るビット演算制御装置
は、PLDの内部にある入力信号に状態を記憶する入力
レジスタと出力信号に状態を記憶する出力レジスタに対
し、外部のマイクロプロセッサから任意の値の設定と読
み出しをする読出し設定手段を有し、またはこの読出し
設定手段に、PLD内部の回路状態を一括して読み出す
手段と、ビット演算動作中にこの回路内容を接続された
マイクロプロセッサにより読み出す手段と、読み出され
た回路内容を外部表示装置に転送して表示する手段とを
有するものである。
【0021】これにより、ビット演算制御装置に対しマ
イクロプロセッサのソフトウエアによる任意のタイミン
グでの演算の開始や、入出力信号の模擬的入出力の実行
と、マイクロプロセッサによる処理との連携処理も可能
となる。また、制御動作に影響を与えずにリアルタイム
にビット演算の詳細にわたって監視することも可能にな
る。
【0022】さらに、本発明に係るビット演算制御装置
は、PLDに周期および動作開始エッジのような動作パ
ラメータを設定するハードウエアタイマ手段を組み込む
ようにしたものである。
【0023】これにより、ディレイ、ワンショット、周
期パルス、不感帯処理といった時間要素を持った演算処
理が可能になる。
【0024】さらに、本発明に係るビット演算制御装置
は、PLDに書き込まれた内容を動作中に変更し、ある
いは立ち上げ時、内部初期化時および定常処理時のうち
少なくとも1以上の段階で回路の構成を変えて演算処理
を動作させるようにしてもよい。
【0025】これにより、時分割で異なる演算処理を動
作させることができ、小規模のPLDであっても大規模
のビット演算が可能になる。また、回路構成をその都度
変えることでPLDの規模を縮小することができる。
【0026】さらにまた、本発明に係るビット演算制御
装置は、PLDが、PLD内部の書き込みデータの読み
出しが不可能な保護機能を有するようにすることができ
る。
【0027】これにより、制御処理の内容を第三者から
参照されることを防ぐことができる。
【0028】一方、本発明に係るビット演算制御装置
は、入力信号に状態を記憶する入力レジスタと出力信号
に状態を記憶する出力レジスタをそれぞれテスト演算用
と実演算用の2種類有し、テスト演算と実演算を交互に
実行させる手段と、テスト演算用の出力レジスタの値を
期待値と比較する手段と、比較により不一致が確認され
た場合処理を停止する手段とを有し、あるいは制御演算
結果の出力信号に状態を記憶する結果出力レジスタを2
個有し、同一の制御演算を2回行い、その結果をそれぞ
れの結果出力レジスタに格納する手段と、2個の結果出
力レジスタの値を比較してこれらの値の一致を確認する
比較手段と、比較により不一致が確認された場合処理を
停止する手段を有するようにしてもよい。
【0029】これにより、回路の故障やノイズ等による
誤動作を減らし、制御の信頼性を向上させることができ
る。
【0030】また、本発明に係るビット演算制御装置
は、制御演算結果の出力信号に状態を記憶する結果出力
レジスタを3個以上の奇数個有し、同一の制御演算を結
果出力レジスタの個数回行う手段と、その結果をそれぞ
れの結果出力レジスタに格納する手段と、全ての結果出
力レジスタの出力値から多数決を取る手段とを有し、多
数決の結果を外部に出力し、あるいは入力信号に状態を
記憶する入力レジスタと出力信号に状態を記憶する出力
レジスタとを有し、しかも制御演算部とその制御演算結
果の出力信号に状態を記憶する結果出力レジスタとを一
組として、これを3組以上の奇数個並列に有し、制御演
算を並列に行う手段と、その結果をそれぞれの結果出力
レジスタに格納する手段と、全結果出力レジスタの値か
ら多数決を取る手段とを有し、多数決の結果を外部に出
力するようにすることができる。
【0031】これにより、ノイズ等により一時的に演算
が異常になっても、あるいは一部の回路が異常になって
も継続して正しい制御ができる。
【0032】さらに、本発明に係るビット演算制御装置
は、同一のビット演算制御装置内または外部装置に複数
個のPLDを設け、PLD間で通信する手段と、演算す
べき入力データ、PLDの内部状態およびPLDの制御
演算部の構成データのうちの少なくとも1種をやり取り
する手段とを有するとともに、次の(1)〜(3)のう
ちのいずれかあるいは複数個を有することができる。
【0033】(1)制御のマスターとなるPLDが上記
通信手段により処理の空いているPLDを探して演算す
べき内容を指示する手段 (2)演算すべき入力データを全てのPLDで共有した
メモリ上に格納する手段と、各PLDが自立的に共有し
たメモリ上から格納された入力データを取り出しビット
演算する手段と、PLDが内部の診断により故障と判断
し停止する手段 (3)複数個のPLDの制御演算部の構成データを全て
のPLDで共有したメモリ上に格納する手段と、各PL
Dが自立的に共有したメモリ上から格納されたPLDの
制御演算部の構成データを読込みビット演算する手段 このような構成とすることにより、同一制御装置内また
は外部装置に複数個のPLDを持ち、個々に異なる処理
を行いつつ強調動作をすることが可能になる。
【0034】また、各PLDが自立的に共有したメモリ
上から格納された入力データやPLDの演算部構成デー
タの取り出しや読込みをすることにより、マスターPL
Dが不要となり、一部のPLDが故障しても自動的に他
のPLDに処理が引き継がれる。
【0035】本発明に係るプログラマブルロジックコン
トローラ(PLC)は、前記ビット演算制御装置を備え
たものである。
【0036】上記ビット演算制御装置を備えることによ
り、高速演算処理が実現でき、また設計後の処理変更に
も容易に対応できる。
【0037】
【発明の実施の形態】本発明に係るビット演算制御装置
の実施の形態について、添付図面を参照して説明する。
【0038】本発明に係るビット演算制御装置は、ラダ
ープログラムを実行するプログラマブルロジックコント
ローラ(PLC)に設けられるビット演算処理装置であ
り、このビット演算制御装置10はプログラマブルロジ
ックデバイス(PLD)と呼ばれる、制御する現場でも
その都度書き込みと書き換えが可能なユーザ回路を持つ
半導体素子を有する。前記ラダープログラムを実行する
プログラマブルロジックコントローラ(PLC)として
は、例えば、ラダープログラムをコンパイルして命令リ
ストに変換し、その命令リストに基づいて、あるいは命
令リストへの変換を介さず、回路図データから直接的に
作成されるデジタル回路データに基づいて、プログラム
可能デバイスとしてのPLDにマッピングし、ビット演
算処理を行なうPLCが挙げられる。
【0039】PLD(プログラマブルロジックデバイ
ス)は、制御演算を実行する以前に、(a)ラダー図形
式で設計されたラダー設計データを命令リストデータに
変換し、この命令リストデータを等価な処理をするデジ
タル回路のデータに変換したり、または(b)グラフィ
カルな回路図設計ツールを使用し、ラダープログラムの
構成部品を回路部品のシンボルとして用いて回路図を作
成することで制御システムの設計を行い、この回路図の
データを事前に用意したラダー構成部品と等価なデジタ
ル回路を用いて展開することでデジタル回路のデータを
作成し、前記(a)または(b)で得られたデジタル回
路データをさらに現場で書き込みと書き換えが可能なP
LDの構成データに変換し、このデータの書き込みが行
なわれる。
【0040】このように、本発明に係るビット演算制御
装置においては、予めPLDに制御システムの設計デー
タを格納しているので、外部メモリへの参照の必要がな
く、高速で制御システムのシステム設計を演算処理する
ことができる。また、PLDは、書き込まれた内容の変
更・追加などが可能であるので、演算処理が異なる場
合、書き込まれた回路構成などをその都度変えることに
より制御システムのシステム設計の変更に容易に対応す
ることができる。また、現場などで動作を確認しながら
ラダープログラムを変更し、PLDの内容を書き換える
ことができるため、柔軟な制御システムの設計変更が可
能である。
【0041】図1および図2は、本発明に係るビット演
算制御装置に用いられるラダープログラムによる設計フ
ローを示す図である。図1は、ラダー図形式で作成され
たラダー設計データを使った例を示し、図2は、ラダー
プログラムの構成部品をシンボルとして用いて作成され
た回路図データを使った例を示す。
【0042】まず、図1のビット演算制御装置に係るラ
ダープログラムによる設計フローに基づいて説明する。
【0043】制御システムの設計者は、制御システムの
システム設計を行なうために、ラダー図形式で設計が可
能なCAD等の設計ツールを使用してビット演算プログ
ラム用のラダー設計データAを作成する。
【0044】続いて、作成されたラダー設計データAは
論理演算命令と応用演算命令から構成される命令リスト
の変換処理Bを行い、ラダー設計データAと等価な命令
リスト(IL)データCに変換する。
【0045】変換された命令リスト(IL)データC
は、等価回路変換Dにより、命令リストと等価なデジタ
ル回路データEに変換される。
【0046】ラダー図のラダー設計データから等価に変
換された命令リストはビットデータに対する論理和と論
理積から構成されるため、命令リストの1命令毎に一対
一でデジタル回路に容易に変換できる。デジタル回路デ
ータEの形式としては、後工程のPLDの配置配線処理
Fの入力形式に対応する必要があるが、汎用の形式とし
て、EDIF(Electronic Design
Interchange Format)が一般的であ
る。
【0047】次に、変換したデジタル回路データEに情
報入出力用付加回路を組み込む。具体的には、変換した
デジタル回路データEと予め用意された入出力回路のデ
ータや保持回路のデータGとを組み合わせ、PLD処理
用ツールにてPLD(プログラマブルロジックデバイ
ス)の配置配線を組み込む配置配線処理Fを行い、PL
Dに書き込むデータ(PLD書き込みデータ)Hを生成
する。このPLD書き込みデータHはPLD用ダウンロ
ードデータである。PLDの配置配線処理Fには、PL
Dの種類に応じた市販されている処理ツールを使用する
ことができる。
【0048】続いて、PLDの配置配線処理で生成され
たPLD書き込みデータHを、PLDの種類に応じた書
き込みツールを用いてPLDに書き込み処理Iを行う
と、PLDは書き込まれた回路に従い目的とする制御動
作が行なわれる。
【0049】図2に示す設計フローでは、制御システム
設計者は、制御システムの回路図の設計ツールJを使
い、回路部品のデータとしてラダーシンボルデータ(ラ
ダープログラムの構成部品データ)Kを用いて、ラダー
図形式で制御システムを設計し、回路図データLを作成
する。
【0050】次に、作成されたラダー図形式の回路図デ
ータLを等価回路変換Mにより、ラダー論理対応データ
Nを参照して回路図データLを等価なデジタル回路デー
タEに変換する。
【0051】ラダー論理対応データNには、ラダーシン
ボルデータKと1対1に対応した、単純なデジタル回路
の組み合わせで記述された回路が格納されている。
【0052】上記等価回路変換Mにより、設計データ全
体がデジタル回路の組み合わせに展開することができ
る。このような設計方式によれば、図1で示すような命
令リスト(IL)への変換を介さずに、直接的に回路図
データからデジタル回路データEを作成することができ
る。
【0053】次に、変換したデジタル回路データEと、
予め用意した入出力回路データ・保持回路データGとを
組み合わせて、PLD(プログラマブルロジックデバイ
ス)の配置配線処理Fを行い、PLD書き込みデータH
を生成する。
【0054】配置配線処理Fには、PLDの種類に応じ
た市販されている処理ツールが使用できる。続いて、生
成されたPLD書き込みデータHを、PLDの種類に応
じた書き込みツールを使ってPLDに書き込み処理Iを
行うと、PLDは書き込まれた回路に従い動作するよう
になる。
【0055】このように、本発明に係るビット演算制御
装置においてはPLDは、図1または図2の設計フロー
に示すように、事前に制御システムの回路が書き込ま
れ、制御演算を実行する時には、このPLDの入力端子
に制御する対象から入力データを加えることによりビッ
ト演算が実行され、このビット演算によるPLDからの
出力を制御対象に出力する。
【0056】本発明のビット演算制御装置においては、
事前にPLDに制御システムのシステム回路が書き込ま
れ、ラダープログラムがPLD内部で並列的に演算実行
され、ラダープログラムの中間データはPLDの内部回
路に保持されることにより、外部メモリへの参照が全く
発生しない。そのため、ビット演算制御装置の制御演算
速度は、回路上並列化された演算の中で、最大遅延時間
となる回路の出力信号のみに依存し、この出力信号の遅
れ時間内に全てのビット演算を完了させることができ
る。また、並列化の度合に応じて最大遅延時間を短くで
きるのでより高速処理が可能となる。
【0057】本発明のビット演算制御装置においては、
制御演算を実行する前に、PLD書き込みデータ(現場
でもユーザ回路の書き込みと書き換えが可能なデータ)
HをPLD素子に書き込む手段と、制御演算を実行する
時に入力データをPLDに加える手段と、PLDからの
出力を制御対象に出力する手段とを有する構成であれば
よい。
【0058】例えば、PLD書き込みデータHをPLD
に書き込む手段(制御現場にてPLD素子に書き込む手
段)をビット演算制御装置内に設けて、それ以外のラダ
ープログラムからPLD書き込みデータHへの変換まで
の一連の設計に要する手段を別個に設けることもでき
る。この一連の設計に要する手段あるいはその一部や大
部分をビット演算制御装置内に設けるようにしてもよ
い。制御を行う現場などで動作を確認しながらラダープ
ログラムを変更する場合などを考慮すると、上記一連の
設計に要する手段あるいはその一部や大部分をビット演
算制御装置内に設けることが好ましい。
【0059】例えば、PLD書き込みデータHをPLD
に書き込む手段、制御演算を実行する時に入力データを
PLDに加える手段およびPLDからの出力を制御対象
に出力する手段とともに、制御演算の実行前に、ラダー
プログラムをコンパイルして変換した命令リストを命令
リストと等価なデジタル回路データHに変換する手段、
デジタル回路データEをPLD書き込みデータHに変換
する手段もビット演算制御装置内に設けるようにしても
よい。
【0060】また、PLD書き込みデータHをPLDに
書き込む手段、制御演算を実行する時に入力データを該
PLDに加える手段およびPLDからの出力を制御対象
に出力する手段とともに、制御演算の実行前に、ラダー
プログラムの構成部品を回路部品のシンボルとして用い
て回路図を作成する手段、回路図のデータを事前に用意
したラダー構成部品と等価なデジタル回路を用いてデジ
タル回路データに展開する手段およびデジタル回路デー
タをPLD書き込みデータHに変換する手段をビット演
算制御装置内に設けるようにしてもよい。
【0061】次に、図1または図2に示す設計フローに
基づいて書き込みがなされたPLDを用いるビット演算
制御装置の第1実施例を図3に示す。
【0062】図3は、本発明のビット演算制御装置の構
成例を示すブロック図である。
【0063】ビット演算制御装置10は、演算本体であ
るPLD(プラズマブルロジックデバイス)あるいはP
LD素子11と制御された周期毎の演算を実現するため
の演算周期発生部12から構成される。
【0064】PLD素子11には、図1または図2に示
された設計フローによるPLD設計データ(PLD書き
込みデータ)Hが書き込まれている。ビット演算制御装
置10は、制御対象15と接続され、入力信号aと出力
信号bのやりとりが行なわれる。
【0065】PLD素子11は、ラダー論理等価回路1
6と入力回路17と出力回路18とデータ保持回路19
から構成されている。
【0066】入力回路17と出力回路18とデータ保持
回路19は、フリップフロップデジタル素子のようなク
ロック信号を使ったデータ保持素子により、それらの回
路動作が実現されている。
【0067】制御対象15からの入力信号aは、演算周
期発生部12からのタイミング信号cにより、入力回路
17に取り込まれ保持される。外部に出力されない内部
の状況および中間値などはデータ保持回路19に、演算
周期発生部12からのタイミング信号Cにより取り込ま
れ保持される。
【0068】ラダー論理等価回路16は、入力回路17
の出力信号dとデータ保持回路14の出力信号eを入力
として、書き込まれたラダープログラムに等価な論理を
処理し、内部の遅延時間経過後、出力回路18およびデ
ータ保持回路19に出力信号f,gとしてそれぞれ出力
される。
【0069】ビット演算制御装置10の内部の遅延時間
は、書き込まれたラダープログラム等価論理の複雑さに
より左右され、その最大遅延は、PLD(素子)11の
配置配線処理Fの段階で予測することができる。最大遅
延は、制御された周期時間から入力回路17の遅延時間
と出力回路18のフリップフロップのセットアップ時間
を引いた時間より小さい時間でなければ正しく動作しな
い。
【0070】出力回路18では、入力回路17と同様
に、演算周期発生部12からのタイミング信号cによ
り、ラダー論理等価回路16の出力fが取り込まれ保持
され、また出力信号bを制御対象15に出力する。PL
D素子11に高速PLDを用いることで、1msec以
下の制御周期を得ることができる。PLD素子11は高
性能CPUに較べ高価である。
【0071】ビット演算制御装置10は制御周期発生部
12からの一つのタイミング信号cでデータ保持機構で
あるデータ保持回路19を動作させているため、出力回
路18からの出力信号bは、入力回路17への1タイミ
ング前の入力信号aに基づいた信号となる。
【0072】ビット演算制御装置10においては、全演
算の中で最大遅延となる出力信号の遅れ時間内に全ビッ
ト演算を完了させるため、図4および図5に示すよう
に、ラダープログラムがPLD素子11の内部で並列的
に実行されることが好ましい。この並列的な実行として
は、演算処理を分割して、一度に複数の処理を実行する
ことができる、パイプライン化と呼ばれるような分割実
行が挙げられる。分割された各演算処理ブロック16
a,16b,16cは、図5に示すように必ずしも並列
的に設ける必要はなく、図4に示すように各演算処理ブ
ロック16a,16bを直列的に設けることもできる。
【0073】図4および図5にビット演算制御装置の第
2および第3実施例の機能ブロック図の例をそれぞれ示
す。具体的には、ビット演算制御装置10において、入
力信号aに状態を記憶する入力レジスタとしての入力回
路16と出力信号bに状態を記憶する出力レジスタとし
ての出力回路18とを設けるとともに、(1)図4に示
すように演算処理の中間信号に状態を記憶する中間レジ
スタとしてのデータ保持回路19と、演算処理を分割し
て複数の演算処理ブロック16a,16bをラダー論理
等価回路16に設けて演算を実行させることにより、あ
るいは(2)図5に示すように、演算処理を分割して行
なう複数の演算処理ブロック16a,16b,16cの
ラダー論理等価回路16に設け、各演算処理ブロック1
6a,16b,16cの境界に状態を記憶する境界レジ
スタ24a,24b,24cを配置し、境界レジスタ2
4a,24b,24cに取り込むタイミングと境界レジ
スタ24a,24b,24cから出力するタイミングと
を制御するブロック制御部26を設けて演算を分割して
実行させることにより行うことができる。
【0074】図4に示された第2実施例のビット演算制
御装置10は、中間レジスタ22を設けて演算処理を分
割実行する例を示すPLD素子11内部のブロック図で
ある。
【0075】図4に示すように、PLD素子11Aは、
入力信号に状態を記憶する入力レジスタとしての入力回
路17と、前段の演算処理ブロックであるラダー論理等
価回路16aと、演算処理の中間信号に状態を記憶する
中間レジスタとしての中間データ保持回路22と、後段
の演算処理ブロックであるラダー論理等価回路16b
と、出力信号に状態を記憶する出力レジスタとしての出
力回路18から構成されている。
【0076】中間レジスタ22の設置に当っては、PL
D素子11Aの演算本体で遅延時間の大きな信号につい
ての中間信号に付加させるようにすることが好ましい。
【0077】ラダー論理等価回路16aとラダー論理等
価回路16bは、図3に示されたラダー論理等価回路1
6の処理を2分割させた演算処理ブロックを構成してお
り、個々の演算処理ブロック16a,16bで最大の遅
延時間を低減させている。この低減により、演算周期発
生部12において、制御周期時間を高速化することがで
きる。
【0078】さらに、中間レジスタとしての中間データ
保持回路22の数を増やすことで、より多くの段数でラ
ダー論理等価回路16の分割が可能になる。ラダー論理
等価回路16の分割段数は、中間レジスタである中間デ
ータ保持回路22の数プラス1個である。
【0079】ラダー論理等価回路16の処理を分割した
場合、入力信号aから出力信号bへの遅延時間は、[演
算周期×(分割段数+1)]となる。
【0080】このように、ラダー論理等価回路16の演
算処理を分割して実行することにより、見かけ上の遅延
時間を減らし、次々に入力信号aを与えることが可能に
なり、演算のスループットを向上させることができる。
【0081】図5は、本発明のビット演算制御装置10
の第3実施例において、例えば、境界レジスタ24a,
24b,24cを設けて演算処理を並列的に分割実行す
る例を示すPLD素子11B内部のブロック図である。
【0082】図5に示すように、PLD素子11Bは、
入力回路17と、各演算処理ブロック16a,16b,
16cの境界に状態を記憶する境界レジスタ24a,2
4b,24cと、演算処理ブロックとしてのラダー論理
等価回路16a,16b,16cと、出力回路18と、
境界レジスタ24a,24b,24cに取り込むタイミ
ングと境界レジスタ24a,24b,24cから出力す
るタイミングとを制御するタイミング制御部としてのブ
ロック制御論理部25から構成されている。
【0083】境界レジスタ24a,24b,24cは、
入力値dと帰還値hを、ブロック制御論理部25からの
境界制御信号i1,i2,i3のタイミングで、境界レ
ジスタ24a,24b,24cに取り込んだり、ラダー
論理等価回路16a,16b,16cに伝搬する機能を
持つ。
【0084】入力回路12は、図3の説明で述べた演算
周期発生部12からのタイミング信号cにより、入力信
号aを取り込んで保持し、境界レジスタ24a,24
b,24cに出力する。出力回路18も同様に、演算周
期発生部12からのタイミング信号cにより、ラダー論
理等価回路16a,16b,16cからの出力信号fを
取り込んで保持し、出力回路18から出力信号bを制御
対象15に出力するようになっている。
【0085】このビット演算制御装置10で制御システ
ムの設計に当っては、次の設計方法を採用できる。
【0086】PLDBでは、図1で述べたラダー設計デ
ータAを処理タイミングまたは時系列順にブロックに分
割しデジタル回路データEを複数生成する。もしくは、
予め処理順番毎に分けて設計した複数のラダー設計デー
タAからデジタル回路データEを複数生成する。さら
に、処理の順序を制御するブロック制御論理部26をラ
ダープログラム等により設計しデジタル回路データEを
生成する。それらのデジタル回路データEを合わせて、
PLD書き込みデータHに変換しPLD書き込み処理I
を行う。
【0087】このような制御システムとすることによ
り、ブロック間の動作の関係が明確になり、プログラム
設計が容易になる。
【0088】また、本発明のビット演算制御装置10に
おいては、図6の第4実施例で示すように、演算部の動
作検証や周辺出力回路の動作検証を行う手段26を備え
ることが好ましい。
【0089】例えば、ビット演算制御装置10におい
て、PLD素子11Cの入力部に信号切換部30を介し
て実入力信号の代わりに任意の模擬入力信号jを入力す
る手段28とPLD素子11Cの出力部に実出力信号の
代わりに任意の模擬出力信号lを出力する手段29を有
することにより、上記動作検証を行うことができる。動
作検証手段26はラダー論理等価回路16の演算処理を
検証するもので、模擬入力手段28と模擬出力手段29
を備えている。
【0090】図6に示されたビット演算制御装置10
は、動作検証手段35を設けた例を示すPLD素子11
C内部のブロック図である。
【0091】図6に示したように、PLD素子11C
は、入力回路17と、入力信号切換部30と、ラダー論
理等価回路16と、出力回路18と、出力信号切換部3
1とから構成される。
【0092】入力信号切換部30には、通常の入力信号
a以外に模擬入力手段28から模擬入力信号(模擬入力
値)jが加わり、入力模擬選択信号kによって切り換え
られる。
【0093】出力信号切換部31には、通常の出力信号
bと模擬出力手段29からの模擬出力信号(模擬出力
値)lが加わり、出力模擬選択信号mによって切り換え
られる。
【0094】ラダー論理等価回路16の演算処理動作を
動作検証手段35で検証する場合、任意の値を模擬入力
値(模擬入力信号)lに加えることで、ラダー論理等価
回路16の制御動作を確認することができる。また、任
意の値を模擬出力値mに加えることで、制御対象の動作
を直接指示して確認することができる。
【0095】このような模擬検証手段26を設けること
により、ラダー論理等価回路16の演算部の動作検証を
容易に行うことができ、周辺出力回路18の動作検証を
容易に行うことができる。
【0096】また、図7は、本発明のビット演算制御装
置10にマイクロプロセッサ33を連携させた第5実施
例を示すPLD素子11D内部のブロック図である。図
7に示されたビット演算制御装置10は、マイクロプロ
セッサ(MPU)33を用いることで、任意のタイミン
グでの演算の開始と結果の出力を行なったり、動作検証
などの目的で模擬的入出力の実行やマイクロプロセッサ
33による処理との連携処理なども行うことができる。
【0097】例えば、図7のビット演算制御装置10に
おいて、PLD素子11D内部にある入力信号dに状態
を記憶する入力レジスタとしての入力回路17と出力信
号fに状態を記憶する出力レジスタとしての出力回路1
8に対し、外部のマイクロプロセッサ33から任意の値
の設定と読み出しをする手段34を有し、またはこの読
出し設定手段34に加えて、PLD素子11D内部の回
路状態を一括して読み出す手段と、ビット演算動作中に
この回路内容を接続されたマイクロプロセッサ33によ
り読み出す手段と、読み出した回路内容を外部表示装置
に転送して表示する手段とを有することにより、上記機
能が実現される。
【0098】図7に示すように、演算本体であるPLD
素子11Dとビット演算制御装置10の全体を制御する
マイクロプロセッサ33とから構成される。
【0099】PLD素子11Dには、前記設計フローに
よるPLD設計データ(PLD書き込みデータ)Hが書
き込まれている。マイクロプロセッサ33は、入力装置
35と出力装置36により、制御対象15と接続されて
いる。
【0100】PLD素子11Dは、ラダー論理等価回路
16と、入力レジスタとしての入力回路17と、出力レ
ジスタとしての出力回路18と、アドレスデコーダ回路
37と、バスバッファ38a,38bとから構成されて
いる。
【0101】入力回路17と出力回路18は、バス信号
nとアドレスデコーダ回路37からの制御信号O1,O
2;P1,P2により、マイクロプロセッサ33から任
意の値の設定と読み出しが可能であり、読出し設定手段
34をアドレスコーダ37とマイクロプロセッサ33か
ら構成している。マイクロプロセッサ33のソフトウエ
アにより任意のタイミングで、入力回路17に値を設定
してビット演算を開始することができる。
【0102】また、他のビット演算の途中であっても、
読出し設定手段34はマイクロプロセッサ(MPU)3
3のソフトウエアにより入力回路12または出力回路1
8に任意の値を設定して、模擬的に入出力信号を入出力
する機能が実現できる。また、PLD素子11Dによる
ビット演算処理とマイクロプロセッサ33によるソフト
ウエア処理との連携により、数値データの演算や転送と
いった応用演算命令を含んだ実行も可能になる。
【0103】このビット演算制御装置10においては、
PLD素子11D内部の入力レジスタ17と出力レジス
タ18に対し外部のマイクロプロセッサ33から読出し
設定手段34で任意の値の設定と読み出しを行なう場
合、演算動作中にPLD素子11D内部の回路状態を読
み出して、読み出された回路状態を外部表示装置に表示
するようにしてもよい。
【0104】例えば、読出し設定手段34はスキャン回
路のようなPLD素子11D内部の回路状態を一括して
読み出す手段と、ビット演算動作中にPLD素子11D
の回路内容を接続されたマイクロプロセッサ33により
読み出す手段と、読み出したPLD素子11D内部の回
路内容をエンジニアリングツール等の外部表示装置に転
送してリアルタイムに表示する手段とを備える。
【0105】PLD素子11D内部の回路状態を一括し
て読み出す手段は、例えば、設計回路のデータにスキャ
ン回路(図示せず)を付加してPLD素子11Dに書き
込むことで得られる。図1に示したラダー設計データA
を作成する際に、PLD素子11Dの内部の回路状態を
一括して読み出す機能を有するスキャン回路も加えて作
成して、PLD素子11Dに書き込む。または、スキャ
ン回路を、設計回路のデータとは別個に、ラダープログ
ラム等により設計しデジタル回路データEを生成して、
スキャンと設計回路のデータのデジタル回路データEを
合わせて、PLD書き込みデータHに変換しPLDに書
き込み処理Lを行うようにしてもよい。
【0106】スキャン回路は、マイクロプロセッサ33
からのバス信号nと、アドレスデコーダ回路37からの
制御信号O1,O2;P1,P2により、マイクロプロ
セッサ33から読み出しが可能である。マイクロプロセ
ッサ33のソフトウエアにより読み出した回路内容をエ
ンジニアリングツール等の表示手段である外部表示装置
に転送してリアルタイムに表示する。
【0107】これにより、制御動作に影響を与えずにリ
アルタイムにビット演算の詳細を監視することができ
る。
【0108】このビット演算制御装置10において、P
LD素子11Dに周期および動作開始エッジのような動
作パラメータを設定するハードウエアタイマ手段を組み
込むことができる。
【0109】このハードウエアタイマ手段は、例えば、
図1に示したデジタル回路データEの中にハードウエア
タイマを組み込むことで実現される。
【0110】これにより、ディレイ、ワンショット、周
期パルスおよび不感帯処理というような時間要素を有す
る演算処理を実現することができる。
【0111】また、このビット演算制御装置10におい
ては、時分割で異なる演算処理にも対応することができ
る。
【0112】例えば、PLD素子11Dに書き込まれた
内容を動作中に変更することで、時分割で異なる演算処
理を動作させることができる。これにより、小規模のP
LD素子11Dであっても大規模のビット演算が可能に
なる。
【0113】また、制御システムの特性により、立ち上
げ時、内部初期化時および定常処理時で演算内容が異な
る場合に、そのうちの少なくとも1以上の段階で回路の
構成を変えて演算処理を動作させることができる。回路
構成をその都度変えることによりPLD素子11Dの規
模を縮小することができる。
【0114】さらに、ビット演算制御装置10は、図8
の第6実施例に示すように、PLD素子11Fに内部書
き込みデータの読み出しが不可能な保護機能を有するP
LD素子11Eを用いてもよい。
【0115】このようなPLD素子11Eを使用するこ
とで、内部の制御論理や動作を見ることができず、制御
処理の内容を第三者から参照されることを防ぐことがで
きる。
【0116】このビット演算制御装置10においては、
ノイズ等による誤動作に対応できる手段を備えているこ
とが好ましい。
【0117】例えば、ビット演算制御装置10におい
て、入力信号aに状態を記憶する入力レジスタとしての
入力回路17a,17bと出力信号bに状態を記憶する
出力レジスタ18a,18bをそれぞれテスト演算用と
実演算用との二種類を有し、テスト演算と実演算を交互
に行う手段12と、テスト演算用の出力レジスタ18a
の値を期待値と比較する手段40と、比較により不一致
が確認された場合処理を停止する手段とを有する。ま
た、ビット演算制御装置10はラダー論理等価回路16
で演算処理された制御演算結果の出力信号fに状態を記
憶する出力レジスタ18a,18bを2個有し、同一の
制御演算を2回行い、その結果をそれぞれの結果出力レ
ジスタに格納する手段と、2個の結果出力レジスタの値
を比較してこれらの値の一致を確認する比較手段と、比
較により不一致が確認された場合処理を停止させる処理
停止手段41を有することにより誤動作に対応すること
ができる。
【0118】図8は、このビット演算制御装置10にお
いて、テスト演算と実演算を交互に行う手段を設けた第
7実施例を示すPLD素子11F内部のブロック図であ
る。
【0119】図8に示すように、PLD素子11Eは、
入力信号aに状態を記憶する実演算用の入力レジスタと
しての入力回路17bと、テスト用の入力レジスタとし
ての入力回路17aと、ラダー論理等価回路16と、出
力信号bに状態を記憶する実演算用の出力レジスタとし
ての出力回路18bと、テスト用の出力レジスタとして
の出力回路18aと、テスト演算用の出力レジスタの値
を期待値と比較する手段としての比較回路40から構成
されている。
【0120】演算周期発生部12(図1参照)からの制
御(演算)周期信号cにより、入力回路12aおよび出
力回路13bと、入力回路12bおよび出力回路13b
を選択的に動作させて、テスト演算と実演算とを交互に
行わせる。演算周期発生部12は、テスト演算と実演算
を交互に行なう手段を構成している。
【0121】テスト演算用の入力信号a1が、演算周期
信号cにより、入力回路17aに取り込まれて保持さ
れ、ラダー論理等価回路16に出力されて、演算処理さ
れる。ラダー論理等価回路16の出力は、演算周期信号
cにより、出力回路18aに取り込まれて保持され、次
いで、比較回路40に出力される。比較回路40では、
出力回路18aの出力値が期待値と一致することを確認
し、出力信号b1を出力する。
【0122】このテスト演算が終了すると、実演算を実
施する。
【0123】実演算では制御対象からの通常の入力信号
aは、演算周期信号cにより、入力回路17bに取り込
まれて保持される。上記入力信号aは出力信号dとなっ
てラダー論理等価回路16に出力され、演算処理され
る。出力回路18bは、演算周期信号cにより、ラダー
論理等価回路16の出力を取り込んで保持し、出力信号
bを制御対象15(図3参照)に出力するようになって
いる。
【0124】このような実演算が終了すると、上記のテ
スト演算を再び実施される。同様にして実演算とテスト
演算とが交互に実施される。そして、比較回路40で、
出力回路18aの出力値が期待値と一致しないことを確
認したとき、PLD素子11F、ひいてはラダー論理等
価回路16の回路故障として故障信号gを処理停止手段
41に出力して、処理動作を停止させる。
【0125】これにより、ビット演算制御装置10の回
路の故障等による誤動作を減らし、制御の信頼性を向上
させることができる。
【0126】図9は、本発明のビット演算制御装置10
において、2回の同一制御演算結果値を比較する手段4
4を設けた例を示すPLD素子11F内部のブロック図
である。
【0127】図9では、ビット演算制御装置10のPL
D素子11Fは、入力回路17と、ラダー論理等価回路
16と、制御演算結果の出力信号に状態を記憶する結果
出力レジスタとしての結果保持回路43a,43bと、
2個の結果出力レジスタの値を比較する手段としての比
較回路64と、比較回路からの結果出力信号に状態を記
憶する出力レジスタとしての出力回路18と、順序制御
部45とから構成される。
【0128】制御対象15(図3参照)からの入力信号
aは、演算周期発生部12からの演算周期信号cによ
り、入力回路17に取り込まれて保持される。この入力
信号aは入力回路17からの出力信号dとなって、ラダ
ー論理等価回路16に出力され、制御演算が行われる。
【0129】ラダー論理等価回路16からの結果出力信
号fは、順序制御部45からの結果読み取り信号r1,
r2により異なるタイミングで、結果保持回路43a,
43bに取り込まれる。結果保持回路43a,43bに
取り込まれた結果値は、正常時は全く同じ値になるが、
電気的なノイズなどにより異なった結果となることもあ
り得る。結果保持回路43a,43bからの出力信号s
1,s2を比較回路44に入力して相互に比較され、出
力信号s1,s2の値が一致することを確認し、その一
致した出力値を出力回路18に一旦保持して外部に出力
する。不一致の場合は、ビット演算制御装置10の回路
の故障として故障信号tを処理停止手段41に出力し
て、処理動作を停止させる。
【0130】一方、PLD素子11Fの順序制御部45
は、制御周期信号cの期間内に、結果取り込み信号r
1,r2を出力する必要があるが、ラダー論理等価回路
16の遅延時間以降の制御周期の終わりまでの時間を均
等割した時間毎に出力すると互いの保持信号が独立しノ
イズ除去効果が大きい。
【0131】これにより、ノイズ等による誤動作を回避
することができる。
【0132】図10はビット演算制御装置の第8実施例
を示すもので、この実施例ではこのビット演算制御装置
10が、複数回の同一の制御演算の結果値の多数決を取
る手段48を設けた例を示すPLD11G内部のブロッ
ク図であり、ビット演算制御装置10は一時的に演算が
異常になっても継続して制御できるようにしたものであ
る。
【0133】図10に示されたビット演算制御装置10
は、ラダー論理等価回路16の制御演算結果の出力信号
gに状態を記憶する結果出力レジスタとしての結果保持
回路47a,47b,47cを3個以上の奇数個有し、
同一の制御演算信号を結果出力レジスタ47a,47
b,47cにそれぞれ入力させる手段としての順序制御
回路45と、制御演算結果をそれぞれの結果出力レジス
タに格納する手段48と、全結果出力レジスタの値から
多数決を取る手段としての多数決回路49とを有し、多
数決の結果を外部に出力し、あるいは入力信号aに状態
を記憶する入力レジスタとしての入力回路17と出力信
号bに状態を記憶する出力レジスタとしての出力回路1
8とを有する。
【0134】ビット演算制御装置10は、制御演算を並
列に行って結果値の多数決をとる手段49を設けた例を
示す。このビット演算制御装置10はPLD素子11G
の内部に、入力回路17と、ラダー論理等価回路16
と、制御演算結果の出力信号g1,g2,g3に状態を
記憶する結果出力レジスタとしての結果保持回路47
a,47b,47cと、全結果出力レジスタからの出力
値v1,v2,v3から多数決を取る手段としての多数
決回路48と、ラダー論理等価回路16からの制御演算
信号gを異なるタイミングで入力させる順序制御部45
とから構成されている。
【0135】ラダー論理等価回路16からの結果出力信
号gは、順序制御部45からの結果取り込み信号u1,
u2,u3により異なるタイミングで、結果保持回路4
7a,47b,47cに取り込まれる。結果保持回路4
7a,47b,47cに取り込まれた結果値は、正常時
はまったく同じ値になるが、電気的ノイズなどにより異
なった結果となることがあり得る。
【0136】結果保持回路47a,47b,47cから
の出力各v1,v2,v3を多数決回路48により多数
決をとり、その結果を出力回路18に保持して外部に出
力する。順序制御部45は、制御周期信号cの期間内
に、結果取り込み信号u1,u2,u3を出力する必要
があるが、ラダー論理等価回路16の遅延時間以降の制
御周期の終わりまでの時間を均等割した時間毎に出力す
ると互いの保持信号が独立しノイズ除去効果が大きい。
【0137】このように、演算処理の結果値の多数決を
とることにより、ノイズ等により一時的にPLD素子1
1Hの演算が異常になっても継続して制御が可能にな
る。
【0138】図11は、本発明に係るビット演算制御装
置の第9実施例を示すもので、PLD素子11H内部の
ブロック図である。この実施例に示されたビット演算制
御装置10は、制御演算部であるラダー論理等価回路1
6a,16b,16cと、その制御演算結果の出力信号
g1,g2,g3に制御演算部であるラダー論理等投下
回路16a,16b,16cとその制御演算の結果の出
力状態を記憶する結果出力レジスタ47a,47b,4
7cとを一組として、3組以上の奇数組並列に備えて制
御演算を並列に行う手段50と、その結果をそれぞれの
結果出力レジスタに格納する手段45と、全結果出力レ
ジスタ47a,47b,47cの値から多数決を取る手
段48とを有し、多数決の結果を外部に出力することに
より、継続した制御を実現するようにしたものである。
【0139】図11に示されたビット演算制御装置10
には、制御演算を並列に行って結果値の多数決をとる手
段49を設けた例を示すこのビット演算制御装置10は
PLD素子11Hの内部に、入力回路17と、ラダー論
理等価回路16a,16b,16cと、制御演算結果の
出力信号g1,g2,g3に状態を記憶する結果出力レ
ジスタとしての結果保持回路47a,47b,47c
と、全結果出力レジスタからの出力値v1,v2,v3
から多数決を取る手段としての多数決回路48と、結果
保持回路47a,47b,47cにラダー論理等価回路
16a,16b,16cからの制御演算信号gを異なる
タイミングで入力させる順序制御部45とから構成され
ている。
【0140】ラダー論理等価回路16a,16b,16
cからの結果出力信号g1,g2,g3は、順序制御部
45からの結果取り込み信号u1,u2,u3により異
なるタイミングで、結果保持回路47a,47b,47
cに取り込まれる。
【0141】結果保持回路47a,47b,47cから
の各出力v1,v2,v3を多数決回路48により多数
決をとり、その結果を出力回路18に保持して外部に出
力する。順序制御部45は、制御周期信号cの期間内
に、結果取り込み信号u1,u2,u3を出力する必要
があるが、ラダー論理等価回路16の遅延時間以降の制
御周期の終わりまでの時間を均等割した時間毎に出力す
ると互いの保持信号が独立しノイズ除去効果が大きい。
【0142】ラダー論理等価回路16a,16b,16
cには、それぞれ全く同一のビット演算論理となってい
て、正常時は同一の値を出力するが、ラダー論理等回路
16a,16b,16cの回路の部分的故障や電気的ノ
イズなどにより異なった結果となることがあり得る。ラ
ダー論理等価回路16a,16b,16cからの出力g
1,g2,g3は結果保持回路47a,47b,47c
に取り込まれ、その出力v1,v2,v3を多数決回路
48に送ってここで多数決をとり、その結果を出力回路
18に保持して外部に出力する。
【0143】このように、ラダー論理等回路16a,1
6b,16cの演算処理の結果値の多数決をとることに
より、特定の回路故障等により異なった結果になったと
しても出力回路18からは正常な値bが出力され、制御
動作を継続することができる。
【0144】なお、本発明に係る本発明のビット演算制
御装置10においては、同一のビット演算制御装置内ま
たは外部装置に複数個のPLD(PLD素子)を設け
て、個々に異なる処理を行いつつ、データのやり取りを
するなどの強調動作をさせることができる。
【0145】例えば、このビット演算制御装置におい
て、同一の制御装置内または外部装置に複数個のPLD
を設け、PLD間で通信する手段と、演算すべき入力デ
ータ、PLDの内部状態およびPLDの制御演算部の構
成データのうちの少なくとも1種をやり取りする手段を
備える一方、(1)制御マスターとなるPLD素子が上
記PLD間通信手段により処理の空いているPLDを探
して演算すべき内容を指示する手段を有することによ
り、個々に異なる処理を行いつつ協調動作をすることが
可能になる。PLD間で通信する手段としては、PLD
内部に通信機能を持たせて、PLD間に通信回線を有す
るようにしてもよく、無線通信で行ない得るようにして
もよい。
【0146】また、(1)の技術手段に代えて、(2)
演算すべき入力データを全てのPLDで共有したメモリ
上に格納する手段と、各PLD素子が自立的に共有した
メモリ上から格納された入力データを取り出しビット演
算する手段と、PLD素子が内部の診断により故障と判
断し停止する手段を設けるようにしてもよい。このよう
すると、入力データの割り当てをする制御のマスターと
なるPLDが不要となり、一部のPLDが内部の診断に
より故障と判断した場合でも自動的に他のPLDに処理
が引き継がれる。
【0147】さらに、(1)の技術手段に代えて、
(3)複数個のPLDの制御演算部の構成データを全て
のPLDで共有したメモリ上に格納する手段と、各PL
Dが自立的に共有したメモリ上から格納されたPLDの
制御演算部の構成データを読込みビット演算する手段を
有するようにしてもよい。PLDで共有したメモリは記
録媒体であってもよい。また、(1)〜(3)の各技術
手段複数個を組み合わせてもよい。
【0148】このような技術手段を組み合せることによ
り、PLD演算部構成データの割り当てについても、入
力データと同様にマスターPLDが不要となり、一部の
PLDが故障しても自動的に他のPLDに処理が引き継
がれる。
【0149】上記のように、同一制御装置内または外部
装置の複数個のPLDが個々に異なる処理を行いつつ強
調動作をすることにより、より効率的にまた制御の信頼
性の向上した制御演算処理が可能となる。
【0150】本発明のプログラマブルロジックコントロ
ーラ(PLC)は、上記ビット演算制御装置を備えるこ
とにより、高速演算処理が実現でき、また設計後の処理
変更への対応も容易にできる。
【0151】
【発明の効果】本発明によれば、制御プログラムの変更
が現地で可能な利便性を保ちながら、プログラムの変更
修正が容易で高速演算を可能とするビット演算制御装置
およびプログラマブルロジックコントローラを提供する
ことができる。
【図面の簡単な説明】
【図1】本発明のビット演算制御装置に係る設計フロー
を示す図。
【図2】本発明のビット演算制御装置に係る設計フロー
を示す図。
【図3】本発明のビット演算制御装置実施の形態を示す
構成例のブロック図。
【図4】本発明のビット演算制御装置において、中間レ
ジスタを設けて演算処理を分割実行する例を示すPLD
内部のブロック図。
【図5】本発明のビット演算制御装置において、境界レ
ジスタを設けて演算処理を分割実行する例を示すPLD
内部のブロック図。
【図6】本発明のビット演算制御装置において、動作検
証手段を設けた例を示すPLD内部のブロック図。
【図7】本発明のビット演算制御装置にマイクロプロセ
ッサを連携させた例を示すPLD内部のブロック図。
【図8】本発明のビット演算制御装置において、テスト
演算と実演算を交互に行う手段を設けた例を示すPLD
内部のブロック図。
【図9】本発明のビット演算制御装置において、2回の
同一制御演算の結果値を比較する手段を設けた例を示す
PLD内部のブロック図。
【図10】本発明のビット演算制御装置において、複数
回の同一制御演算の結果値の多数決を取る手段を設けた
例を示すPLD内部のブロック図。
【図11】本発明のビット演算制御装置において、制御
演算を並列に行って結果値の多数決を取る手段を設けた
例を示すPLD内部のブロック図。
【符号の説明】
10 ビット演算制御装置 11,11A,11B,11C,11D,11E,11
F,11G,11H PLD素子 12 演算周期発生部 15 制御対象 16 ラダー論理等価回路 16a,16b,16c ラダー論理等価回路(演算処
理ブロック) 17 入力回路(入力レジスタ) 18 出力回路(出力レジスタ) 19 データ保持回路(データ保持機構) 22 中間データ保持回路(中間レジスタ) 24a,24b,24c 境界レジスタ 25 ブロック制御論理部(タイミング制御部) 26 動作検証手段 28 模擬入力手段 29 模擬出力手段 30 入力信号切換部 31 出力信号切換部 33 マイクロプロセッサ 35 入力装置 36 出力装置 37 アドレスレコーダ回路 38a,38b バスバッファ 40,44 比較回路 41 処理停止手段 43a,43b,43c 結果保持回路 45 順序制御部(順序制御回路) 47a,47b,47c 結果保持回路(結果出力レジ
スタ) 48 レジスタ格納手段 49 多数決回路(多数決手段) A ラダー設計データ B 命令リスト変換処理 C 命令リスト(IL)データ D 等価回路変換 E デジタル回路データ F 配置配線処理 G 入出力回路・保持回路データ H PLD書き込みデータ I PLD書き込み処理 J 回路図設計ツール K ラダーシンボルデータ L 回路図データ M 等価回路変換 N ラダー論理対応データ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 菊池 紀男 東京都府中市東芝町1番地 株式会社東芝 府中事業所内 (72)発明者 竹内 伸吾 東京都府中市東芝町1番地 株式会社東芝 府中事業所内 Fターム(参考) 5H220 BB03 CC03 CC05 CX02 DD04 EE04 EE12 FF07 JJ16

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 ラダープログラムを実行するプログラマ
    ブルロジックコントローラ(PLC)に設けられるビッ
    ト演算制御装置が、プログラマブルロジックデバイス
    (PLD)を有し、このPLDは、制御演算を実行する
    前に、(a)ラダープログラムをコンパイルして命令リ
    ストに変換し、この命令リストを等価なデジタル回路デ
    ータに変換したり、または(b)ラダープログラムの構
    成部品を回路部品のシンボルとして用いて回路図を作成
    し、この回路図のデータをラダー構成部品と等価なデジ
    タル回路を用いてデジタル回路データに展開し、前記
    (a)または(b)で得られたデジタル回路データを現
    場で書き込みと書き換えが可能な前記PLDの構成デー
    タに変換し、このデータの書き込みがなされたPLD
    で、かつ制御演算の実行時に制御対象からPLDに入力
    信号を入力する手段と、前記PLDからの出力信号を前
    記制御対象に出力する手段とを有することを特徴とする
    ビット演算制御装置。
  2. 【請求項2】 前記入力信号に状態を記憶する入力レジ
    スタと前記出力信号に状態を記憶する出力レジスタを有
    するとともに、(1)演算処理の中間信号に状態を記憶
    する中間レジスタと、演算処理を分割して行なう複数の
    演算処理ブロックとを設けて演算処理を実行させ、ある
    いは(2)演算処理を分割して行なう複数の演算処理ブ
    ロックを設け、各演算処理ブロックの境界に状態を記憶
    する境界レジスタを配置し、境界レジスタに取り込むタ
    イミングと境界レジスタから出力するタイミングとを制
    御するブロック制御論理部を設けて演算処理を分割して
    実行させるようにした請求項1に記載のビット演算制御
    装置。
  3. 【請求項3】 前記PLDの入力部に実入力信号の代わ
    りに任意の模擬入力信号を入力する手段と前記PLDの
    出力部に実出力信号の代わりに任意の模擬出力信号を出
    力する手段を設ける請求項1に記載のビット演算制御装
    置。
  4. 【請求項4】 前記PLDの内部にある入力信号に状態
    を記憶する入力レジスタと出力信号に状態を記憶する出
    力レジスタに対し、外部のマイクロプロセッサから任意
    の値の設定と読み出しをする読出し設定手段を有し、ま
    たはこの読出し設定手段に、PLD内部の回路状態を一
    括して読み出す手段と、ビット演算動作中にこの回路内
    容を接続されたマイクロプロセッサにより読み出す手段
    と、読み出された回路内容を外部表示装置に転送して表
    示する手段とを有する請求項1に記載のビット演算制御
    装置。
  5. 【請求項5】 前記PLDに、周期および動作開始エッ
    ジのような動作パラメータを設定するハードウエアタイ
    マ手段が組み込まれている請求項1に記載のビット演算
    制御装置。
  6. 【請求項6】 前記PLDに書き込まれた内容を動作中
    に変更し、あるいは立ち上げ時、内部初期化時および定
    常処理時のうち少なくとも1以上の段階で回路の構成を
    変えて演算処理を動作させる請求項1に記載のビット演
    算制御装置。
  7. 【請求項7】 前記PLDが、PLD内部の書き込みデ
    ータの読み出しが不可能な保護機能を有する請求項1に
    記載のビット演算制御装置。
  8. 【請求項8】 入力信号に状態を記憶する入力レジスタ
    と出力信号に状態を記憶する出力レジスタをそれぞれテ
    スト演算用と実演算用の2種類有し、テスト演算と実演
    算を交互に実行させる手段と、テスト演算用の出力レジ
    スタの値を期待値と比較する手段と、比較により不一致
    が確認された場合処理を停止する手段とを有し、あるい
    は制御演算結果の出力信号に状態を記憶する結果出力レ
    ジスタを2個有し、同一の制御演算を2回行い、その結
    果をそれぞれの結果出力レジスタに格納する手段と、2
    個の結果出力レジスタの値を比較してこれらの値の一致
    を確認する比較手段と、比較により不一致が確認された
    場合処理を停止する手段を有する請求項1に記載のビッ
    ト演算制御装置。
  9. 【請求項9】 制御演算結果の出力信号に状態を記憶す
    る結果出力レジスタを3個以上の奇数個有し、同一の制
    御演算を結果出力レジスタの個数回行う手段と、その結
    果をそれぞれの結果出力レジスタに格納する手段と、全
    ての結果出力レジスタの出力値から多数決を取る手段と
    を有し、多数決の結果を外部に出力し、あるいは入力信
    号に状態を記憶する入力レジスタと出力信号に状態を記
    憶する出力レジスタとを有し、しかも制御演算部とその
    制御演算結果の出力信号に状態を記憶する結果出力レジ
    スタとを一組として、これを3組以上の奇数個並列に有
    し、制御演算を並列に行う手段と、その結果をそれぞれ
    の結果出力レジスタに格納する手段と、全結果出力レジ
    スタの値から多数決を取る手段とを有し、多数決の結果
    を外部に出力する請求項1に記載のビット演算制御装
    置。
  10. 【請求項10】 同一のビット演算制御装置内または外
    部装置に複数個のPLDを設け、PLD間で通信する手
    段と、演算すべき入力データ、PLDの内部状態および
    PLDの制御演算部の構成データのうちの少なくとも1
    種をやり取りする手段とを有するとともに、次の(1)
    〜(3)のうちのいずれかあるいは複数個を有する請求
    項1に記載のビット演算制御装置。 (1)制御のマスターとなるPLDが上記通信手段によ
    り処理の空いているPLDを探して演算すべき内容を指
    示する手段 (2)演算すべき入力データを全てのPLDで共有した
    メモリ上に格納する手段と、各PLDが自立的に共有し
    たメモリ上から格納された入力データを取り出しビット
    演算する手段と、PLDが内部の診断により故障と判断
    し停止する手段 (3)複数個のPLDの制御演算部の構成データを全て
    のPLDで共有したメモリ上に格納する手段と、各PL
    Dが自立的に共有したメモリ上から格納されたPLDの
    制御演算部の構成データを読込みビット演算する手段
  11. 【請求項11】 請求項1〜10のいずれかに記載のビ
    ット演算制御装置を備えることを特徴とするプログラマ
    ブルロジックコントローラ。
JP2001251982A 2001-08-22 2001-08-22 ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ Pending JP2003067010A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001251982A JP2003067010A (ja) 2001-08-22 2001-08-22 ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001251982A JP2003067010A (ja) 2001-08-22 2001-08-22 ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ

Publications (1)

Publication Number Publication Date
JP2003067010A true JP2003067010A (ja) 2003-03-07

Family

ID=19080533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001251982A Pending JP2003067010A (ja) 2001-08-22 2001-08-22 ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ

Country Status (1)

Country Link
JP (1) JP2003067010A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223668A (ja) * 2008-03-17 2009-10-01 Toshiba Mach Co Ltd ハードウェアロジック部を有するplc
JP2010035034A (ja) * 2008-07-30 2010-02-12 Oki Semiconductor Co Ltd 自律制御ユニット及びこれを用いた受信機
JP2010267119A (ja) * 2009-05-15 2010-11-25 Toshiba Corp 入力装置の更新方法
CN111258636A (zh) * 2018-11-30 2020-06-09 上海寒武纪信息科技有限公司 数据处理方法、处理器、数据处理装置及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223668A (ja) * 2008-03-17 2009-10-01 Toshiba Mach Co Ltd ハードウェアロジック部を有するplc
JP2010035034A (ja) * 2008-07-30 2010-02-12 Oki Semiconductor Co Ltd 自律制御ユニット及びこれを用いた受信機
JP2010267119A (ja) * 2009-05-15 2010-11-25 Toshiba Corp 入力装置の更新方法
CN111258636A (zh) * 2018-11-30 2020-06-09 上海寒武纪信息科技有限公司 数据处理方法、处理器、数据处理装置及存储介质

Similar Documents

Publication Publication Date Title
US6536031B2 (en) Method for generating behavior model description of circuit and apparatus for logic verification
US6816828B1 (en) Logic simulation method in which simulation is dynamically switchable between models
JP4753895B2 (ja) 遅延調整回路を有するアレイ型プロセッサ
US7228513B2 (en) Circuit operation verification device and method
JP2003067010A (ja) ビット演算制御装置及びこれを備えるプログラマブルロジックコントローラ
JPH0552989B2 (ja)
US5309444A (en) Integrated circuit including a test cell for efficiently testing the accuracy of communication signals between a standard cell and an application cell
JP6484015B2 (ja) プログラマブル・ロジック・コントローラおよびその制御方法
JP2010140255A (ja) 再構成可能論理回路ならびに検証方法および検証プログラム
JP2008204341A (ja) インタフェース合成装置
JPH0414362B2 (ja)
JP2001043251A (ja) 高位合成装置および高位合成方法並びにそれに用いられる記録媒体
JP2984913B2 (ja) プログラム可能なシーケンス制御回路
JP2000057180A (ja) 高位合成装置、高位合成方法および高位合成プログラムを記録した媒体
JP6553694B2 (ja) プロセッサエレメント、プログラマブルデバイス及びプロセッサエレメントの制御方法
JP2015014833A (ja) 再構築可能なlsi
JPH1091216A (ja) プログラマブル半導体デバイス
Jamro et al. SysML-based Optimisation of Global Variables Arrangement for Visualisation in Distributed Control Systems Oriented Towards Communication Performance
JP2001331544A (ja) シミュレーション方法および装置
JP3636702B2 (ja) プログラム可能なシーケンス制御回路
JPH1040168A (ja) データ処理装置
JP2024024312A (ja) プロセッサ、およびコンパイラ
JP2004362176A (ja) 集積回路
JP2004234047A (ja) 電子回路およびアセンブラ
JP2003287564A (ja) アドレスパターン発生装置、半導体集積回路試験装置、及びコンパイル装置