JP2573391B2 - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ

Info

Publication number
JP2573391B2
JP2573391B2 JP2077523A JP7752390A JP2573391B2 JP 2573391 B2 JP2573391 B2 JP 2573391B2 JP 2077523 A JP2077523 A JP 2077523A JP 7752390 A JP7752390 A JP 7752390A JP 2573391 B2 JP2573391 B2 JP 2573391B2
Authority
JP
Japan
Prior art keywords
instruction
source
memory
reduced
application
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.)
Expired - Lifetime
Application number
JP2077523A
Other languages
English (en)
Other versions
JPH03276305A (ja
Inventor
明 薮田
稔 黒田
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.)
Panasonic Electric Works Co Ltd
Original Assignee
Matsushita Electric Works 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 Matsushita Electric Works Ltd filed Critical Matsushita Electric Works Ltd
Priority to JP2077523A priority Critical patent/JP2573391B2/ja
Publication of JPH03276305A publication Critical patent/JPH03276305A/ja
Application granted granted Critical
Publication of JP2573391B2 publication Critical patent/JP2573391B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、予め設定されたシーケンス制御プログラム
に基づいて負荷をシーケンス制御するプログラマブルコ
ントローラに関するものである。
[従来の技術] 従来、この種のプログラマブルコントローラの高速実
行手法として、応用命令を縮小命令セット(Reduced In
struction Set)を用いて機能分割(縮小命令化)する
ことにより高速実行できるようにする手法が用いられて
いる。このような従来技術においては、第6図に示すよ
うに、ユーザが従来のプログラム体系でプログラムした
ソース命令をソース命令メモリ(以下、SIMと略称す
る)1に格納し、このソース命令を縮小命令化して縮小
命令メモリ(以下、RAMと略称する)2に格納し、RISC
プロセッサよりなる演算制御部において、RIM2に格納さ
れている縮小命令のみを用いてシーケンス制御を高速実
行するようにしたものがあった。つまり、ユーザ側から
見ると、従来と同様、ソース命令によるプログラムをSI
M1に格納すれば良く、このソース命令を内部処理によっ
て縮小命令化してRIM2に格納し、シーケンス制御時には
RIM2に格納されている縮小命令を実行することにより、
従来プログラムとの互換性を保つようにしているわけで
ある。
ところで、ユーザが設定するソース命令は、リレーシ
ーケンスのビット処理を行う基本命令と、数値演算など
の複雑な処理を行う応用命令の2種類に大別され、この
うち、応用命令は、縮小命令化することによって高速処
理が可能となるが、基本命令は、それ自体が単純な可能
をもつ命令であるため、機能分割による縮小命令化によ
る高速化は期待できない。したがって、ソース命令を縮
小命令へ展開する際には、第6図に示すように、SIM1中
の基本命令は、そのままRIM2中で同じ機能をもった命令
として1対1変換される。すなわち、基本命令において
は、SIM1またはRIM2のどちらから命令を取り出しても同
じ実行処理が可能となっている。
[発明が解決しようとする課題] しかしながら、上述の従来例にあっては、基本命令が
両方の命令メモリ(SIM1、RIM2)に重複して格納される
ことになるので、メモリの使用効率が悪くなってメモリ
コストが高くなるという問題があった。
また、従来例においては、シーケンス制御時(プログ
ラムの実行時)に、SIM1に格納されているソース命令を
読み出すことなく、RIM2の命令読み出し用のプログラム
カウンタのみを制御して、RIM2に格納されている縮小命
令を実行するようになっているので、プログラム停止
や、エラー発生時において、SIM1の命令アドレスをユー
ザが即時にモニタできないという問題があった。このよ
うに、ユーザがSIM1の命令アドレスを即時にモニタでき
なくなると、プログラム(ソース命令)の参照、変更に
支障をきたし、従来プログラムとの互換性に問題が生じ
るという問題があった。
本発明は上記の点に鑑みて為されたものであり、その
目的とするところは、基本命令が重複して格納されない
ようにしてメモリを有効に使用することにより、メモリ
コストを安くでき、また、プログラム停止やエラー発生
時におけるソース命令アドレスの即時モニタが可能で、
従来プログラムとの互換性に問題が生じることがないプ
ログラマブルコントローラを提供することにある。
[課題を解決するための手段] 本発明のプログラマブルコントローラは、ユーザがプ
ログラムした基本命令および応用命令よりなるソース命
令を格納するソース命令メモリと、上記ソース命令のう
ちの応用命令を機能分割するように展開して得た縮小命
令のみをソース命令メモリに格納されたソース命令のう
ちの応用命令に対応付けて格納する縮小命令メモリと、
ソース命令メモリの基本命令および縮小命令メモリの縮
小命令をプログラムカウンタにより適宜読み出して実行
し負荷をシーケンス制御する演算制御部とで構成され、
プログラムカウンタによりソース命令メモリから順次命
令を読み出し、基本命令の場合には、そのまま実行する
とともに、応用命令の場合には、該応用命令に対応した
縮小命令を縮小命令メモリから読み出して実行するよう
に演算制御部を形成したことを特徴とするプログラマブ
ルコントローラ。
また、請求項2のものは、縮小命令の実行に応じてソ
ース命令メモリのプログラムカウンタのカウンタ値を同
期更新するための同期用フィールドを縮小命令セットに
設けたものである。
さらにまた、請求項3のものは、分岐命令の実行時に
プログラムカウンタのカウンタ値を同期更新する特殊命
令を縮小命令セットに設けたものである。
[作 用] 本発明は上述のように構成されており、ユーザがプロ
グラムした基本命令および応用命令よりなるソース命令
メモリに格納するとともに、上記ソース命令のうちの応
用命令を機能分割するように展開して得た縮小命令のみ
をソース命令メモリに格納されたソース命令のうちの応
用命令に対応付けて縮小命令メモリに格納し、演算制御
部にて、ソース命令メモリの基本命令および縮小命令メ
モリの縮小命令をプログラムカウンタにより適宜読み出
して実行し負荷をシーケンス制御するようにしたプログ
ラマブルコントローラであって、プログラムカウンタに
よりソース命令メモリから順次命令を読み出し、基本命
令の場合には、そのまま実行するとともに、応用命令の
場合には、該応用命令に対応した縮小命令を縮小命令メ
モリから読み出して実行するように演算制御部を形成し
たものであり、プログラマブルコントローラのソース命
令のうち応用命令を縮小命令に展開して応用命令を高速
処理するにあたり、応用命令を展開して得た縮小命令の
みを縮小命令メモリに格納することで基本命令は縮小命
令メモリに格納されないことになり、結果的にソース命
令メモリと縮小命令メモリとの両方に基本命令が重複し
て格納されることがなくなり、メモリを有効に使用する
ことができ、メモリコストを安くできるようになってい
る。
また、縮小命令の実行に応じてソース命令メモリのプ
ログラムカウンタのカウンタ値を同期更新するための同
期用フィールドを縮小命令セットに設けることにより、
プログラム停止やエラー発生時におけるソース命令アド
レスの即時モニタが可能で、従来プログラムとの互換性
に問題が生じることがない。
さらにまた、分岐命令の実行時にプログラムカウンタ
のカウンタ値を同期更新する特殊命令を縮小命令セット
に設けることにより、分岐命令の高速実行にも容易に対
応できることになる。
[実施例] 第1図乃至第2図は本発明一実施例を示すもので、ユ
ーザがプログラムした基本命令および応用命令よりなる
ソース命令を格納するSIM(ソース命令メモリ)1と、
上記ソース命令のうちの応用命令を機能分割するように
展開して得た縮小命令のみをソース命令メモリに格納さ
れたソース命令のうちの応用命令に対応付けて格納する
RIM(縮小命令メモリ)2と、SIM1の基本命令およびRIM
の縮小命令をプログラムカウンタにより適宜読み出して
実行し負荷をシーケンス制御する演算制御部3とで構成
され、プログラムカウンタによりSIM1から順次命令を読
み出し、基本命令の場合には、そのまま実行するととも
に、応用命令の場合には、該応用命令に対応した縮小命
令をRIM2から読み出して実行するように演算制御部3を
形成したものである。なお、SIM1に格納されている命令
が基本命令か、応用命令かは、各命令に付加されたオペ
コードによって認識できるようになっている。また、演
算制御部3は、データメモリ4、データ演算部(RISCプ
ロセッサ)5、インターフェース6およびメインコント
ローラ(CPU)7にて形成されている。図中、DBはデー
タバス、ABはアドレスバス、IBはインストラクションバ
ス、IABはインストラクションアドレスバス、CBはコン
トロールバスである。第2図は、データ演算部5のプロ
グラムカウンタ制御部5aの構成例を示すもので、SIM1の
命令アドレス(ソース命令を読み出すプログラムカウン
タのカウンタ値)がセットされるレジスタR1と、RIM2の
命令アドレス(縮小命令を読み出すプログラムカウンタ
のカウンタ値)がセットされるレジスタR2と、マルチプ
レクサMUXとで形成され、命令メモリ切り換え信号(チ
ップセレクト信号)に応じて、マルチプレクサMUX出力
が切ら換えられるようになっている。
一方、実施例では、応用命令に対応する縮小命令の実
行状態に応じてソース命令メモリ1のプログラムカウン
タのカウンタ値を同期更新するための同期用フィールド
aが第3図に示すように縮小命令セットに設けられてお
り、aの値が「0、0」のとき応用命令の中間の処理状
態、「0、1」のとき応用命令の最初の処理状態、
「1、0」のとき応用命令の最後の処理状態、「1、
1」のとき応用命令に対応する命令ブロックの最後を示
している。
さらにまた、分岐命令の実行時にプログラムカウンタ
のカウンタ値を同期更新する特殊命令が縮小命令セット
に設けられている。
以下、実施例の動作について説明する。第4図は、プ
ログラム例(基本命令1〜9、応用命令1〜3)を示す
もので、命令実行のシーケンスは以下のようになる。ま
ず、プログラムカウンタにてSIM1の命令アドレス
「0」、「1」、「2」を順次アクセスし、基本命令
1、2、3を順次読み出して実行する。次に、命令アド
レス「3」の応用命令1に対応するRIM2の縮小命令を読
み出して実行する。同様にして、SIM1の基本命令4、5
を実行し、続いて、RIM2の応用命令2,3に対応する縮小
命令を実行し、さらに、SIM1の基本命令6、7、8、9
を実行して命令の実行を終了する。この場合、実施例で
は基本命令がSIM1にだけ格納されており、両方の命令メ
モリ1、2に重複して格納されている従来例に比べてメ
モリが有効に使用されることにより、メモリコストを安
くできる。
次に、SIM1およびRIM2からの命令読み出しの切り換え
は、基本命令か、応用命令かを示すオペコードの判別に
よって行っており、演算制御部では、SIM1から読み出さ
れたソース命令のオペコードが基本命令を示していると
きは、SIM1から読み出された命令をそのまま実行し、オ
ペコードが応用命令を示しているとき、RIM2からその応
用命令に対応する縮小命令を読み出して縮小命令の実行
を開始する。このとき、応用命令に対応するRIM2の縮小
命令の処理状態は、フィールドaの情報によって把握で
き、aが「1、1」(応用命令に対応する縮小命令ブロ
ックの最後)になったとき、SIM1のソース命令を読み出
す状態に復帰する。ここに、SIM1のプログラムカウンタ
のカウンタ値の更新は、aが「0、1」(応用命令の最
初の処理)のときにnワード(実施例では、n=4)加
算することによって実現されている。第5図(a)は上
述の動作を示す図である。
以上のように、実施例においては、同期用フィールド
aを縮小命令セットに設け、縮小命令の実行に応じてソ
ース命令メモリのプログラムカウンタのカウンタ値を同
期更新するようにしているので、プログラム停止やエラ
ー発生時におけるソース命令アドレスの即時モニタが可
能で、従来プログラムとの互換性に問題が生じることが
ない。なお、実施例では、応用命令のワード数nを固定
としているが、任意ワードとし、フィールドaに任意ワ
ードを示す情報を付加すれば、任意ワードの場合におけ
るプログラムカウンタの同期更新も可能である。
一方、分岐命令(ジャンプ命令)を実現するには、上
述の方法でも困難を伴うことになるが、実施例では、分
岐命令の実行時にプログラムカウンタのカウンタ値を同
期更新する特殊命令(SIM1のプログラムカウンタの書き
換え命令)を縮小命令セットに設けており、上記特殊命
令によってSIM1のプログラムカウンタを書き換えるよう
にしている。すなわち、分岐命令は、SIM1のプログラム
カウンタの書き換え命令と、分岐命令(RIM2のプログラ
ムカウンタの書き換え命令)とで定義(2つの縮小命令
で定義)される。例えば、第5図(a)において、応用
命令3が基本命令4への分岐命令であるとすれば、RIM1
の応用命令3に対応する縮小命令は、SIM1のプログラム
カウンタの書き換え命令(PCSIM=7)と、分岐命令(P
CRIM=6)とで構成される。第5図(b)はこの部分の
実行状態を示すものであり、応用命令3以外の他の命令
の実行手順は前述の場合と同様である。以上のように、
分岐命令の実行時に特殊命令によって、SIM1のプログラ
ムカウンタのカウント値を同期更新しているので、分岐
命令の高速実行にも容易に対応できるようになってい
る。
[発明の効果] 本発明は上述のように構成されており、ユーザがプロ
グラムした基本命令および応用命令よりなるソース命令
ソース命令メモリに格納するとともに、上記ソース命令
のうちの応用命令を機能分割するように展開して得た縮
小命令のみをソース命令メモリに格納されたソース命令
のうちの応用命令に対応付けて縮小命令メモリに格納
し、演算制御部にて、ソース命令メモリの基本命令およ
び縮小命令メモリの縮小命令をプログラムカウンタによ
り適宜読み出して実行し負荷をシーケンス制御するよう
にしたプログラマブルコントローラであって、プログラ
ムカウンタによりソース命令メモリから順次命令を読み
出し、基本命令の場合には、そのまま実行するととも
に、応用命令の場合には、該応用命令に対応した縮小命
令を縮小命令メモリから読み出して実行するように演算
制御部を形成したものであり、プログラマブルコントロ
ーラのソース命令のうち応用命令を縮小命令に展開して
応用命令を高速処理するにあたり、応用命令を展開して
得た縮小命令のみを縮小命令メモリに格納することで基
本命令は縮小命令メモリに格納されないことになり、結
果的にソース命令メモリと縮小命令メモリとの両方に基
本命令が重複して格納されることがなくなり、メモリを
有効に使用することができ、メモリコストを安くできる
という効果を奏する。
また、縮小命令の実行に応じてソース命令メモリのプ
ログラムカウンタのカウンタ値を同期更新するための同
期用フィールドを縮小命令セットに設けることにより、
プログラム停止やエラー発生時におけるソース命令アド
レスの即時モニタが可能で、従来プログラムとの互換性
に問題が生じることがないという効果がある。
さらにまた、分岐命令の実行時にプログラムカウンタ
のカウンタ値を同期更新する特殊命令を縮小命令セット
に設けることにより、分岐命令の高速実行にも容易に対
応できる。
【図面の簡単な説明】
第1図は本発明一実施例の概略構成を示すブロック回路
図、第2図は同上の要部ブロック回路図、第3図乃至第
5図は同上の動作説明図、第6図は従来例の動作説明図
である。 1はソース命令メモリ、2は縮小命令メモリ、3は演算
制御部である。

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】ユーザがプログラムした基本命令および応
    用命令よりなるソース命令を格納するソース命令メモリ
    と、上記ソース命令のうちの応用命令を機能分割するよ
    うに展開して得た縮小命令のみをソース命令メモリに格
    納されたソース命令のうちの応用命令に対応付けて格納
    する縮小命令メモリと、ソース命令メモリの基本命令お
    よび縮小命令メモリの縮小命令をプログラムカウンタに
    より適宜読み出して実行し負荷をシーケンス制御する演
    算制御部とで構成され、プログラムカウンタによりソー
    ス命令メモリから順次命令を読み出し、基本命令の場合
    には、そのまま実行するとともに、応用命令の場合に
    は、該応用命令に対応した縮小命令を縮小命令メモリか
    ら読み出して実行するように演算制御部を形成したこと
    を特徴とするプログラマブルコントローラ。
  2. 【請求項2】縮小命令の実行に応じてソース命令メモリ
    のプログラムカウンタのカウンタ値を同期更新ための同
    期用フィールドを縮小命令に設けたことを特徴とする請
    求項1記載のプログラマブルコントローラ。
  3. 【請求項3】分岐命令の実行時にプログラムカウンタの
    カクンタ値を同期更新する特殊命令を縮小命令セットに
    含むことを特徴とする請求項1または請求項2記載のプ
    ログラマブルコントローラ。
JP2077523A 1990-03-27 1990-03-27 プログラマブルコントローラ Expired - Lifetime JP2573391B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2077523A JP2573391B2 (ja) 1990-03-27 1990-03-27 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2077523A JP2573391B2 (ja) 1990-03-27 1990-03-27 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JPH03276305A JPH03276305A (ja) 1991-12-06
JP2573391B2 true JP2573391B2 (ja) 1997-01-22

Family

ID=13636328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2077523A Expired - Lifetime JP2573391B2 (ja) 1990-03-27 1990-03-27 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JP2573391B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287548A (en) * 1988-02-29 1994-02-15 Allen-Bradley Company, Inc. Programmable controller having a stored program with both machine language instructions and source code data
JPH07120170B2 (ja) * 1988-04-13 1995-12-20 株式会社安川電機 プログラマブルコントローラの解読処理方式
JP2514235B2 (ja) * 1988-08-05 1996-07-10 株式会社小松製作所 フレキシブル生産システム
JPH0272430A (ja) * 1988-09-08 1990-03-12 Fuji Electric Co Ltd 演算処理装置

Also Published As

Publication number Publication date
JPH03276305A (ja) 1991-12-06

Similar Documents

Publication Publication Date Title
JP3563768B2 (ja) Romプログラム変更装置
JPS62226234A (ja) スタツクポインタ制御回路
JPH07114498A (ja) マイクロプロセッサ
JPH10214203A (ja) 情報処理装置
JP2573391B2 (ja) プログラマブルコントローラ
JP2003022182A (ja) コントローラ
JPS59114602A (ja) プログラマブルコントロ−ラ
JP3105822B2 (ja) マイクロプログラム制御装置
JP2918570B2 (ja) 中央演算処理装置
JPH082727Y2 (ja) プログラマブルシ−ケンサ
JP3341061B2 (ja) プログラマブルコントローラ
JPS6242301B2 (ja)
JP2000242524A (ja) プロセッサのソフトウエアシミュレータ
JP2000029508A (ja) プログラマブルコントローラ
JP3239042B2 (ja) マイクロコンピュータ
JPS603656B2 (ja) 計算機のメモリ拡張方式
JPS6120139A (ja) 割込み制御方式
JPH10240627A (ja) セクタ管理方法及び装置
JPH0359727A (ja) マイクロプロセッサにおける退避・復元方式
JPH1124939A (ja) プログラム変換方法
JPS60262244A (ja) デ−タ処理装置
JPH07210405A (ja) プログラムカウンタおよびスタックポインタの管理方式
JPH08272411A (ja) ラダー命令処理装置
JPH0531170B2 (ja)
JPH09325935A (ja) バス切り換え回路