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

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

Info

Publication number
JPH0944355A
JPH0944355A JP19492095A JP19492095A JPH0944355A JP H0944355 A JPH0944355 A JP H0944355A JP 19492095 A JP19492095 A JP 19492095A JP 19492095 A JP19492095 A JP 19492095A JP H0944355 A JPH0944355 A JP H0944355A
Authority
JP
Japan
Prior art keywords
instruction
code
vector table
jump vector
execution address
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
JP19492095A
Other languages
English (en)
Inventor
Takeshi Jinkawa
健 陣川
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP19492095A priority Critical patent/JPH0944355A/ja
Publication of JPH0944355A publication Critical patent/JPH0944355A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 オペコード長を変更することなく、実行でき
る命令数を増加させるようにする。 【解決手段】 BPU16は、ユーザプログラムメモリ
11からオブジェクトコードのEXFUN識別コードを
読み出し、このコードが基本演算命令を実行するもの
か、または、応用演算命令を実行するものである否かを
判断し、コードが応用演算命令を実行するものである場
合には、この読み出したEXFUN識別コードをMPU
17渡す。MPU17は、EXFUN識別コードのFU
NNo.をキーとして、第1命令ジャンプベクタテーブ
ルを検索し、実行アドレスの内容を調べる。すると、M
PU17は、実行アドレスが存在しないことを確認し
て、次のオペコードをキーとして第2命令ジャンプベク
タテーブルを検索し、該当する実行アドレスを実行す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、実行処理する命令
を増加しても処理時間が同じで、かつ、互換性を有する
プログラマブルコントローラに関し、特に、第1ワード
がオペコードでなる固定長の第1形式の命令と、第1ワ
ードが特定処理コードで第2ワードがオペコードでなる
固定長の第2形式の命令とを実行するプログラマブルコ
ントローラに関する。
【0002】
【従来の技術】従来、プログラマブルコントローラは、
命令の実行を以下のようにして行っている。すなわち、
プログラマブルコントローラは、ユーザプログラムメモ
リに格納されている図4(a)に示すような命令のオブ
ジェトコードを命令デコード部が読み出し、この命令デ
コード部がこのコードを構成するオペコード内に記述さ
れたFUNNo.に基づき、図4(b)に示すようなジ
ャンプベクタテーブル内のFUNNo.欄41を検索す
る。そして、命令デコード部が、検索した箇所の実行ア
ドレス欄43に示された実行アドレス値(以下、ジャン
プベクタという)を命令処理部に渡す。すると。命令処
理部がジャンプベクタに示されたシステムメモリのアド
レスに格納されている内容を実行するようになってい
る。
【0003】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のプログラマブルコントローラでは、ジャンプ
ベクタテーブルのレコード数が固定であるため、ジャン
プベクタテーブルのレコード数以上に命令数を増加させ
ることが不可能である。
【0004】従って、命令数を増加させたい場合には、
その増加数に見合ったジャンプベクタテーブルのレコー
ド数を増加させなければならないが、そうすると、必然
的にオペコード中のFUNNo.記述ビットを増加させ
ることになり、オペコード全体としてもそれに応じてビ
ット数を増加せざるをえないことになる。
【0005】このため、命令デコーダ部がオブジェトコ
ードを読み出し、解釈する時間が余計にかかり、処理速
度が遅くなるという問題点があった。
【0006】また、オペコード全体のビット数が増加す
ることで、ユーザプログラムメモリの各アドレスに格納
される1ワードのビット数も変更せざるをえず、既存の
オブジェトコード体系からなるユーザプログラムの実行
が不可能、すなわち互換性を持たせることができないと
いう問題点があった。
【0007】そこで、本発明は、上述の点に鑑み、オペ
コード長を変更することなく、実行できる命令数を増加
させたプログラマブルコントローラを提供することを目
的とする。
【0008】
【課題を解決するための手段】前述した目的を達成する
ため、請求項1記載の発明は、第1ワードがオペコード
でなる固定長の第1形式の命令と、第1ワードが特定処
理コードで第2ワードがオペコードでなる固定長の第2
形式の命令とを実行するプログラマブルコントローラで
あって、上記第1形式の命令のオペコードに基づき、こ
の命令の実行アドレスを格納する第1命令ジャンプベク
タテーブルと、上記第2形式の命令のオペコードに基づ
き、この命令の実行アドレスを格納する第2命令ジャン
プベクタテーブルとを有し、ユーザプログラムメモリか
ら第1形式の命令が読み出された場合には、第1命令ジ
ャンプベクタテーブルを参照してこの命令を実行する一
方、該ユーザプログラムメモリから第2形式の命令が読
み出された場合には、第2命令ジャンプベクタテーブル
を参照してこの命令を実行することを特徴とする。
【0009】請求項2記載の発明は、請求項1記載の発
明において、上記第1形式の命令のオペコードと、上記
第2形式の命令の特定処理コードおよびオペコードは、
異なる所定値を有し、第1命令ジャンプベクタテーブル
および第2命令ジャンプベクタテーブルが、上記所定値
に基づいて上記実行アドレスを登録することを特徴とす
る。
【0010】請求項3記載の発明は、請求項1または2
記載の発明において、上記特定処理コードに記述された
所定値をキーとして、上記第1命令ジャンプベクタテー
ブルを検索し、上記第1命令ジャンプベクタテーブルに
該当する箇所の実行アドレスが無いことを条件として、
第2命令ジャンプベクタテーブルを選択し、次に、ユー
ザプログラムメモリから読み出された上記オペコードの
所定値をキーとして、上記第2命令ジャンプベクタテー
ブルを検索し、登録された上記実行アドレスを読み出し
て命令を実行することを特徴とする。
【0011】
【発明の実施の形態】以下、本発明に係るプログラマブ
ルコントローラの実施の形態を図面に基づいて説明す
る。
【0012】図1は本発明に係るプログラマブルコント
ローラの一実施形態の構成を示すブロック図である。
【0013】この実施形態のプログラマブルコントロー
ラ1は、図に示すように、応用演算命令(後述するMO
V命令等)および基本演算命令(例えば後述する1ワー
ドからなるLD,NOP命令等)を実行させるユーザプ
ログラムのオブジェクトコードを格納したユーザプログ
ラムメモリ(UM)11と、入出力(I/O)データを
格納するI/Oメモリ12と、応用演算命令を実行する
プログラムを含むシステムプログラムが格納されたシス
テムメモリ13と、ワークメモリ14と、後に詳細に説
明する命令ジャンプベクタテーブル15と、ユーザプロ
グラムメモり11に格納されているオブジェクトコード
を読み出し、この読み出したコードが基本命令演算を行
うものである場合には、これのみを実行し、一方、応用
演算命令を行うものである場合には、このコードをMP
U17に渡すBPU16と、応用演算命令を実行するM
PU17と、被制御機器とを接続するI/Oユニット1
8とから主に構成されている。
【0014】ここで、BPU16,MPU17,ワーク
メモリ13,システムメモリ13および命令ジャンプベ
クタテーブル15は、内部バス19に接続されており、
I/Oユニット18は、BPU16とI/Oバス20を
介して接続されている。
【0015】BPU16は、ユーザプログラムメモリ1
1から読み出されたオブジェクトコードが基本演算命令
を実行するものであるかまたは応用演算命令を実行する
ものであるかを解釈する命令デコード部161と、基本
演算命令を実行するものである場合にはこれを実行処理
し、応用演算命令を実行するものである場合にはこれを
MPU17に渡す命令処理部162とで構成されてい
る。
【0016】MPU17は、BPU16から受けた応用
演算命令を実行するためのオブジェクトコードから、こ
のコードが後述するEXFUN命令を有するものである
か否かを判断し、そして後述する命令ジャンプベクタテ
ーブル15からこのコードの実行させるシステムメモリ
13に格納されている実行アドレス(この実行アドレス
を以下、ジャンプベクタという)を出力する命令デコー
ド部171と、命令デコード部171からジャンプベク
タを受けてシステムメモリ13に基づき、オブジェクト
コードの実行処理を行う命令処理部172とから構成さ
れている。
【0017】ここで、図2(a)を参照してユーザプロ
グラムメモリ11に格納されているオブジェクトコード
について説明する。
【0018】このオブジェクトコードは、第1ワードが
オペコードでなる固定長のものと、第1ワードがEXF
UN識別コードで第2ワードがオペコードでなる固定長
のものがある。例えば2図(a)に示すオブジェクトコ
ードは、第1ワードがEXFUN識別コードで、第2ワ
ードがオペコードで、第3,4および5がそれぞれオペ
ランドで構成された5ワード命令である。
【0019】EXFUN識別コードとオペコードとは、
ビットが意味する情報は同一である。すなわち、オブジ
ェクトコードが基本演算命令を実行するものか、また
は、応用演算命令を実行するものであるかを示す情報
と、後述する命令ジャンプベクタテーブル15のFUN
No.欄151を検索するために必要な情報FUNN
o.とを有している。
【0020】次に、図2(b)を参照して命令ジャンプ
ベクタテーブル15の構成について説明する。
【0021】命令ジャンプベクタテーブル15は、第1
ワードがオペコードでなる固定長のオブジェクトコード
の実行アドレスを格納する第1命令ジャンプベクタテー
ブル15aと、第1ワードがEXFUN識別コードで第
2ワードがオペコードでなるオブジェクトコードの実行
アドレスを格納する第2命令ジャンプベクタテーブル1
5bとを有している。
【0022】そして、第1命令ジャンプベクタテーブル
15aおよび第2命令ジャンプベクタテーブル15b
は、ともに、1から127までの番号でなるFUNN
o.が格納されたFUNNo.欄151,このFUNN
o.に対応するオブジェクトコードが処理する命令の内
容を表示した命令欄152およびこの命令を実行させる
システムメモリ13に格納されているシステムプログラ
ムの実行アドレスを表示する実行アドレス欄153とで
構成されている。
【0023】次に、この実施例に係るプログラマブルコ
ントローラの動作を説明する。
【0024】電源を投入後、ユーザプログラムを処理す
るためユーザプログラムメモリ11からオブジェクトコ
ード読出し先頭アドレス値を、BPU16のプログラム
カウンタにセットする(ステップ100)。
【0025】BPU16は、プログラムカウンタにオブ
ジェクトコード読出しのための先頭アドレス値をセット
すると、このアドレス値のアドレスに格納されているオ
ブジェクトコードの第1ワードすなわちEXFUN識別
コードを読み出し(ステップ110)、このコードが基
本演算命令を実行するものか、または、応用演算命令を
実行するものであるか否かを判断し、このコードが基本
演算命令を実行するものである場合には、システムメモ
リ13のシステムプログラムを介さずハードで直に該当
する命令を実行する。一方、コードが応用演算命令を実
行するものである場合には、BPU16は、この読み出
したEXFUN識別コードを内部バス19を介してMP
U17に渡す。
【0026】すると、MPU17は、受けたEXFUN
識別コードからFUNNo.を調べ、第1命令ジャンプ
ベクタテーブル15aにおけるFUNNo.欄151の
該当するもののレコードを検索し、そして、このレコー
ドの実行アドレス欄153の実行アドレス内容を調べ、
第1ワードすなわちEXFUN識別コードがEXFUN
でなるコードであるか否かを判断する(ステップ12
0)。
【0027】つまり、実行アドレスを有しないものが、
EXFUNでなるコードであり、一方、実行アドレスを
有するものが、EXFUNでないコードである。
【0028】続いて、MPU17は、第1命令ジャンプ
ベクタテーブル15aにおける実行アドレス欄153の
内容を調べた結果、実行アドレスが記載されていない場
合、すなわち、読み出された第1コードがEXFUNで
なるコードである場合には(ステップ120;Y)、B
PU16にプログラムカウンタを歩進させ(ステップ1
30)、このBPU16を介して第2ワード、すなわち
オペコードをユーザプログラムメモリ11から読み出し
(ステップ;140)、第2命令ジャンベクタテーブル
15bのFUNNo.欄151からこの番号を検索し、
この番号のレコード中の実行アドレスを決定する(ステ
ップ150)。
【0029】ステップ120において、MPU17は、
実行アドレスが記載されている場合、すなわち読み出さ
れた第1コードがEXFUN識別コードでない場合には
(ステップ120;N)、第1命令ジャンプベクタテー
ブル15aのFUNNo.欄151からこの番号を検索
し、この番号のレコード中の実行アドレスを決定する
(ステップ160)。
【0030】以上のようにして、MPU17は、ジャン
プベクタを決定し、これを読み出し(ステップ17
0)、この読み出したジャンプベクタが示すシステムメ
モリ13のアドレスからシステムプログラブに基づき、
読み出されたオブジェクトコードの演算処理を実行する
(ステップ180)。
【0031】続いて、MPU17は、BPU16にプロ
グラムカウンタを歩進させ(ステップ190)、ユーザ
プログラムメモリ11に処理すべきオブジェクトコード
が存在するか否かを判断し(ステップ195)、もはや
処理すべきオブジェクトコードが存在しないと判断した
場合には(ステップ195;Y)、ユーザープログラム
の実行を終了する一方、処理すべきオブジェクトコード
が存在する場合には(ステップ195;N)、ステップ
110に戻し上述と同様にして処理を続行する。
【0032】
【発明の効果】本発明によれば、ユーザプログラムメモ
リから固定長の第1形式の命令が読み出された場合に
は、第1命令ジャンプベクタテーブルを参照してこの命
令を実行し、一方、ユーザプログラムメモリから固定長
の第2形式の命令が読み出された場合には、第2命令ジ
ャンプベクタテーブルを参照してこの命令を実行するこ
とにより、命令数を増加しても、命令ジャンプベクタテ
ーブルのレコード数を増加させる必要がなく、従って、
従来のオペコードをそのまま使用できる。
【0033】このため、処理する命令の数が増加して
も、命令を読み出し、解釈する時間が従来とほぼ同じで
あるため、処理時間も従来とほぼ同じであり、かつ、既
存のユーザログラムの実行ができ、すなわち互換性を持
たせることができる。
【図面の簡単な説明】
【図1】本発明に係るプログラマブルコントローラの一
実施形態の構成を示すブロック図。
【図2】本実施形態のプログラマブルコントローラにつ
いてのジャンプベクタを設定するまでの説明図。
【図3】本実施形態のプログラムコントローラの動作を
示すフローチャート。
【図4】従来のプログラマブルコントローラについての
ジャンプベクタを設定するまでの説明図。
【符号の説明】
1 プログラマブルコントローラ 11 ユーザプログラムメモリ 12 I/Oメモリ 13 システムメモリ 14 ワークRAM 15 命令ジャンプベクタテーブル 16 BPU 17 MPU 18 I/Oユニット 19 内部バス 20 I/Oバス

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 第1ワードがオペコードでなる固定長の
    第1形式の命令と、第1ワードが特定処理コードで第2
    ワードがオペコードでなる固定長の第2形式の命令とを
    実行するプログラマブルコントローラであって、 上記第1形式の命令のオペコードに基づき、この命令の
    実行アドレスを格納する第1命令ジャンプベクタテーブ
    ルと、 上記第2形式の命令のオペコードに基づき、この命令の
    実行アドレスを格納する第2命令ジャンプベクタテーブ
    ルとを有し、 ユーザプログラムメモリから第1形式の命令が読み出さ
    れた場合には、第1命令ジャンプベクタテーブルを参照
    してこの命令を実行する一方、該ユーザプログラムメモ
    リから第2形式の命令が読み出された場合には、第2命
    令ジャンプベクタテーブルを参照してこの命令を実行す
    ることを特徴とするプログラマブルコントローラ。
  2. 【請求項2】 上記第1形式の命令のオペコードと、上
    記第2形式の命令の特定処理コードおよびオペコード
    は、異なる所定値を有し、 第1命令ジャンプベクタテーブルおよび第2命令ジャン
    プベクタテーブルは、上記所定値に基づいて上記実行ア
    ドレスを登録することを特徴とする請求項1記載のプロ
    グラマブルコントローラ。
  3. 【請求項3】 上記特定処理コードに記述された所定値
    をキーとして、上記第1命令ジャンプベクタテーブルを
    検索し、上記第1命令ジャンプベクタテーブルに該当す
    る箇所の実行アドレスが無いことを条件として、第2命
    令ジャンプベクタテーブルを選択し、 次に、ユーザプログラムメモリから読み出された上記オ
    ペコードの所定値をキーとして、上記第2命令ジャンプ
    ベクタテーブルを検索し、登録された上記実行アドレス
    を読み出して命令を実行することを特徴とする請求項1
    または2記載のプログラマブルコントローラ。
JP19492095A 1995-07-31 1995-07-31 プログラマブルコントローラ Pending JPH0944355A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19492095A JPH0944355A (ja) 1995-07-31 1995-07-31 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19492095A JPH0944355A (ja) 1995-07-31 1995-07-31 プログラマブルコントローラ

Publications (1)

Publication Number Publication Date
JPH0944355A true JPH0944355A (ja) 1997-02-14

Family

ID=16332548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19492095A Pending JPH0944355A (ja) 1995-07-31 1995-07-31 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JPH0944355A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292881B1 (en) 1998-03-12 2001-09-18 Fujitsu Limited Microprocessor, operation process execution method and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292881B1 (en) 1998-03-12 2001-09-18 Fujitsu Limited Microprocessor, operation process execution method and recording medium

Similar Documents

Publication Publication Date Title
JPH0827716B2 (ja) データ処理装置及びデータ処理方法
JPS62197830A (ja) デ−タ処理システム
JPS6212529B2 (ja)
JPH0944355A (ja) プログラマブルコントローラ
JPH056281A (ja) 情報処理装置
JP4159586B2 (ja) 情報処理装置および情報処理の高速化方法
JPS6355634A (ja) デ−タ処理システム
JP2583506B2 (ja) データ処理装置
JP2525492B2 (ja) プログラマブルコントロ―ラ
JP3441262B2 (ja) データ処理装置
JPH0218729B2 (ja)
JP2743947B2 (ja) マイクロプログラム制御方式
JPH05274341A (ja) ベクトル命令処理装置
JPS5829051A (ja) 演算処理装置
JPH02171926A (ja) マイクロプログラム制御方式
JPH02128223A (ja) 演算処理装置
JPH05334074A (ja) マイクロプロセッサ
JPH11288306A (ja) プログラマブルコントローラの演算方式
JPS59105148A (ja) マイクロプログラム制御方式の中央処理装置
JPH03201133A (ja) 情報処理装置
JPH0354632A (ja) 演算命令処理装置
JPS58225440A (ja) メモリ制御装置
JPS62125435A (ja) マイクロプログラム制御方式
JPS6232540A (ja) 情報処理装置
JPS61279935A (ja) プログラム処理方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040804