Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP2559929B2 - Programmable controller - Google Patents
[go: Go Back, main page]

JP2559929B2 - Programmable controller - Google Patents

Programmable controller

Info

Publication number
JP2559929B2
JP2559929B2 JP3234987A JP23498791A JP2559929B2 JP 2559929 B2 JP2559929 B2 JP 2559929B2 JP 3234987 A JP3234987 A JP 3234987A JP 23498791 A JP23498791 A JP 23498791A JP 2559929 B2 JP2559929 B2 JP 2559929B2
Authority
JP
Japan
Prior art keywords
instruction
execution
processing unit
flag
bit
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 - Fee Related
Application number
JP3234987A
Other languages
Japanese (ja)
Other versions
JPH0573113A (en
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 JP3234987A priority Critical patent/JP2559929B2/en
Publication of JPH0573113A publication Critical patent/JPH0573113A/en
Application granted granted Critical
Publication of JP2559929B2 publication Critical patent/JP2559929B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、メインプロセッサとは
別に命令実行専用のコプロセッサを設けたプログラマブ
ルコントローラに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a programmable controller provided with a coprocessor dedicated to instruction execution in addition to a main processor.

【0002】[0002]

【従来の技術】従来より、プログラマブルコントローラ
の処理速度を向上させることなどを目的として、図6に
示すように、従来から用いられている汎用のメインプロ
セッサ11と並行動作する命令実行専用のコプロセッサ
21を設けることが提案されている。コプロセッサ21
としては、処理の高速化を図るために、縮小命令セット
プロセッサ(RISCプロセッサ)が用いられる。この
場合、ユーザ等により設計されてソースプログラムメモ
リ12に格納されたシーケンスプログラムのソースコー
ドは、コンパイルされて縮小命令に変換された後にオブ
ジェクトプログラムメモリ22に格納され、基本命令や
応用命令はオブジェクトプログラムメモリ22に格納さ
れた縮小命令よりなるオブジェクトコードに基づいてコ
プロセッサ21で実行される。ソースコードのコンパイ
ルは、システムメモリ13に格納されたコンパイラを用
いてメインプロセッサ11によって行われる。また、メ
インプロセッサ11は、シーケンスプログラムの命令の
実行には用いられず、ソースコードのコンパイルのほ
か、インタフェース14を通して行われる周辺装置の制
御や通信の制御に用いられる。メインプロセッサ11と
コプロセッサ21との間の通信はバスコントローラ15
を介して行われる。ここに、メインプロセッサ11のデ
ータバスは16ビットであり、コプロセッサ21のデー
タバスは、オブジェクトプログラムメモリ22との間で
は32ビット、データメモリ23との間では16ビット
になっている。バスコントローラ15は、メインプロセ
ッサ11の16ビットのデータバスとコプロセッサ21
の32ビットのデータバスとを結合する機能を有してい
る。コプロセッサ21の内部処理は32ビットで行われ
るから、RISCプロセッサであることとあいまって命
令をメインプロセッサ11よりも高速に実行できるので
ある。
2. Description of the Related Art Conventionally, for the purpose of improving the processing speed of a programmable controller, as shown in FIG. 6, a general-purpose main processor 11 conventionally used and an instruction execution-only coprocessor operating in parallel. It is proposed to provide 21. Coprocessor 21
In order to speed up the processing, a reduced instruction set processor (RISC processor) is used. In this case, the source code of the sequence program designed by the user or the like and stored in the source program memory 12 is stored in the object program memory 22 after being compiled and converted into a reduced instruction, and the basic instructions and the application instructions are stored in the object program. It is executed by the coprocessor 21 based on the object code made up of the reduction instruction stored in the memory 22. The source code is compiled by the main processor 11 using a compiler stored in the system memory 13. Further, the main processor 11 is not used for executing the instructions of the sequence program, but is used for controlling the peripheral devices and communication performed through the interface 14 in addition to compiling the source code. Communication between the main processor 11 and the coprocessor 21 is performed by the bus controller 15
Done through. Here, the data bus of the main processor 11 is 16 bits, and the data bus of the coprocessor 21 is 32 bits with the object program memory 22 and 16 bits with the data memory 23. The bus controller 15 includes a 16-bit data bus of the main processor 11 and a coprocessor 21.
It has a function of connecting with the 32-bit data bus of. Since the internal processing of the coprocessor 21 is performed in 32 bits, the instruction can be executed faster than the main processor 11 in combination with the RISC processor.

【0003】ソースコードとオブジェクトコードとの関
係は、図7のようになる。たとえば、ソースコードでは
3命令であって、各命令のワード数が2、4、4である
とき、縮小命令を用いたオブジェクトコードのワード数
は、ソースコードの各命令に対して、たとえば、3、
7、5などとなる。オブジェクトコードでは、1ワード
が1命令に対応するのであって、上述した例では、ソー
スコードで2ワードを用いる1命令が、オブジェクトコ
ードでは3命令などとなっている。
The relationship between the source code and the object code is as shown in FIG. For example, when the source code has three instructions and the number of words of each instruction is 2, 4, and 4, the number of words of the object code using the reduced instruction is, for example, 3 for each instruction of the source code. ,
7, 5 and so on. In the object code, one word corresponds to one instruction. In the above example, one instruction using two words in the source code is three instructions in the object code.

【0004】ところで、ソースコードにおける基本命令
はビット処理命令であり、応用命令はそれ以外の命令に
なるから、コプロセッサ21では、図8に示すように、
基本命令に対応したビット処理命令を専門に実行するビ
ット処理ユニット31と、応用命令に対応した命令を専
門に実行するマルチビット処理ユニット32とを設け、
一方で命令実行を行っている間に他方でフェッチを行う
など、パイプライン制御による実行の高速化を図ってい
る。このようなパイプライン制御を行うために、マルチ
ビット処理ユニット32の実行条件として、ビット処理
ユニット31から出力されるビットアキュムレータbacc
がHレベル(以下、Hレベルを1とする)であり、か
つ、マルチビット処理ユニット32の内部でのエラーの
発生により送出される内部エラーフラグierrが0である
ことを要求している。すなわち、ビットアキュムレータ
baccおよび内部エラーフラグierrを、ノット回路NOT
1 およびアンド回路AND1 よりなる実行制御ユニット
33に入力し、実行制御ユニット33の出力をマルチビ
ット処理ユニット32に入力することによって上記実行
条件による制御を行うのである。ビットアキュムレータ
baccは、ビット処理ユニット31においてビット処理命
令の実行結果によってセットまたはリセットされるので
あって、マルチビット処理ユニット32に実行を移すと
きにセットされる(1になる)。ここに、ビット処理ユ
ニット32で処理するビット処理命令は、実行のみであ
るからビットアキュムレータbaccの影響を受けることは
ない。
By the way, since the basic instruction in the source code is a bit processing instruction and the application instruction is another instruction, in the coprocessor 21, as shown in FIG.
A bit processing unit 31 that specially executes a bit processing instruction corresponding to a basic instruction, and a multi-bit processing unit 32 that specially executes an instruction corresponding to an application instruction are provided.
While executing instructions on the one hand, fetching on the other hand is performed to speed up execution by pipeline control. In order to perform such pipeline control, the bit accumulator bacc output from the bit processing unit 31 is set as the execution condition of the multi-bit processing unit 32.
Is at the H level (hereinafter, the H level is 1), and the internal error flag ierr sent by the occurrence of an error inside the multi-bit processing unit 32 is required to be 0. That is, the bit accumulator
bacc and internal error flag ierr are set to the NOT circuit NOT
Type 1 and the AND circuit execution control unit 33 composed of the AND 1, is performed to control by the execution condition by inputting the output of the execution control unit 33 to the multi-bit processing unit 32. Bit accumulator
The bacc is set or reset by the execution result of the bit processing instruction in the bit processing unit 31, and is set (becomes 1) when the execution is transferred to the multi-bit processing unit 32. Here, the bit processing instruction processed by the bit processing unit 32 is not executed by the bit accumulator bacc because it is only executed.

【0005】[0005]

【発明が解決しようとする課題】上述のような構成にお
いて、ソースコードの応用命令をオブジェクトコードに
展開したときにステップ数が非常に多くなることがあ
る。このような場合には、オブジェクトコードの一部を
サブルーチン化することによって、オブジェクトプログ
ラムメモリ22の容量を節約することが考えられる。
In the above-mentioned configuration, the number of steps may be very large when the application instructions of the source code are expanded into the object code. In such a case, it is possible to save the capacity of the object program memory 22 by converting a part of the object code into a subroutine.

【0006】ここで、サブルーチンの中に除算命令が含
まれているとすると、サブルーチン内では除数が0であ
る場合などにエラーが生じることになる。ところで、サ
ブルーチンへはメインルーチンでのコール命令によって
移行し、サブルーチンの末尾のリターン命令によってメ
インルーチンに戻るようになっているのが普通である。
しかしながら、サブルーチン内でエラーが生じると、以
後の処理が行われず、リターン命令を実行することがで
きないために、メインルーチンに戻れなくなるという問
題が生じる。
If the subroutine contains a division instruction, an error will occur in the subroutine when the divisor is zero. By the way, it is usual that the subroutine is transferred by a call instruction in the main routine, and is returned to the main routine by a return instruction at the end of the subroutine.
However, if an error occurs in the subroutine, the subsequent processing is not performed and the return instruction cannot be executed, so that there is a problem in that the process cannot return to the main routine.

【0007】エラーに対する一般的な処理としては、エ
ラーが発生した時点で実行を停止することが考えられて
いるが、上述したように、ソースコードを展開してオブ
ジェクトコードを得ているものであるから、オブジェク
トコードの任意の位置で実行を停止すると、実行停止時
点がどのような意味を持つのかわからなくなるという問
題がある。すなわち、実行の監視などはソースコードの
命令単位で行われるのに対して、ソースコードの1命令
に相当するオブジェクトコードの単位とは無関係に実行
を停止すると、次に実行を再開する際に、ソースコード
に対応しないことになって不都合が生じるのである。要
するに、サブルーチンの途中でエラーが生じることによ
ってメインルーチンに戻れなくなると、ソースコードの
次の命令に対応するオブジェクトコードのブロックの先
頭で実行を停止させる処理ができないという問題が生じ
るのである。
As a general processing for an error, it is considered that the execution is stopped when the error occurs, but as described above, the source code is expanded to obtain the object code. Therefore, if the execution is stopped at an arbitrary position in the object code, there is a problem that the meaning of the execution stop point cannot be understood. That is, while execution monitoring is performed in units of source code instructions, if execution is stopped irrespective of the unit of object code corresponding to one instruction in the source code, the next time execution is resumed, There is inconvenience because it does not correspond to the source code. In short, if an error occurs in the middle of a subroutine and it becomes impossible to return to the main routine, there arises a problem that the process of stopping the execution cannot be performed at the head of the block of the object code corresponding to the next instruction of the source code.

【0008】エラーに対する他の処理としては、オブジ
ェクトコードの命令に1ビットの終了位置指定フィール
ドを設け、ソースコードの1命令に対応するオブジェク
トコードのブロックの最終位置の命令における終了位置
指定フィールドの値を、他の位置の命令の終了位置指定
フィールドの値とは異ならせておくことにより、終了位
置指定フィールドの値によって、エラーの発生時の実行
の停止時点を制御することが考えられている。このよう
な処理を行えば、メインルーチン内でエラーが生じたと
きには、以後の命令を非実行(NOP)とし、ソースコ
ードの1命令に対応させて実行の停止処理を行うことが
できるのであるが、サブルーチン内にはブロックの終了
位置は存在しないから、サブルーチン内でエラーが生じ
たときには、サブルーチン以後の領域でブロックの終了
位置に相当する箇所を見つけたときに停止することにな
る。すなわち、ソースコードの次の命令ではなく、他の
命令に対応する時点で実行が停止するという問題が生じ
る。
As another processing for the error, the value of the end position designation field in the instruction of the final position of the block of the object code corresponding to one instruction of the source code is provided in the instruction of the object code. Is different from the value of the end position designation field of the instruction at another position, so that the value of the end position designation field may be used to control the stop point of execution when an error occurs. By performing such processing, when an error occurs in the main routine, the subsequent instruction can be made non-execution (NOP), and the execution stop processing can be performed in correspondence with one instruction of the source code. Since the end position of the block does not exist in the subroutine, when an error occurs in the subroutine, the process is stopped when the position corresponding to the end position of the block is found in the area after the subroutine. That is, there is a problem that the execution is stopped at a time point corresponding to another instruction instead of the next instruction of the source code.

【0009】ところで、エラーの判定処理には、マルチ
ビット処理ユニット32の内部で、オブジェクトコード
の命令が除算やBCD変換のように1命令でエラーが発
生する可能性がある場合、ハードウェアでエラーフラグ
を設定する機能がある。一方、たとえば、インデクス修
飾(インデクスレジスタ内の値に所定の加算値を加えた
値をアドレスとしてメモリをアクセスする)によって指
定したアドレスが、メモリのデータ領域内であるかどう
かの判定など、オブジェクトコードの命令を組み合わせ
て判定処理を行いたい場合もある。しかしながら、従来
は、オブジェクトコードのプログラムによって得られた
判定結果についてはエラーフラグとして設定する手段が
なく、このような判定結果をマルチビット処理ユニット
32の実行制御に用いることができないという問題があ
った。
By the way, the error judgment processing is performed by the object code inside the multi-bit processing unit 32.
Error occurs in one instruction like division or BCD conversion
Error flag in the hardware if it can occur
There is a function to set. On the other hand, for example, if the address specified by index modification (accessing the memory with the value obtained by adding a predetermined addition value to the value in the index register as the address) is within the data area of the memory, the object code There is also a case in which it is desired to perform the determination process by combining the instructions of However, conventionally, there is no means for setting the determination result obtained by the object code program as an error flag, and such a determination result cannot be used for execution control of the multi-bit processing unit 32. .

【0010】本発明は上記問題点の解決を目的とするも
のであり、オブジェクトコードのサブルーチン内でエラ
ーが発生してもリターン命令だけは強制的に実行できる
ような手段を設けることによって、メインルーチンへの
復帰ができるようにし、もって、ソースコードに対応さ
せた実行管理ができるようにし、また、オブジェクトコ
ードによるエラーの判定処理を行う場合でも判定結果を
用いてマルチビット処理ユニットの実行制御が行えるよ
うにしたプログラマブルコントローラを提供しようとす
るものである。
The present invention is intended to solve the above problems, and by providing means for forcibly executing only a return instruction even if an error occurs in a subroutine of an object code, a main routine is provided. To enable execution control corresponding to the source code, and even when performing error judgment processing using object code, execution control of the multi-bit processing unit can be performed using the judgment result. It is intended to provide a programmable controller as described above.

【0011】[0011]

【課題を解決するための手段】本発明では、上記目的を
達成するために、シーケンスプログラムを実行する命令
実行専用のコプロセッサをメインプロセッサとは別に備
え、シーケンスプログラムのソースコードをコンパイル
して得たオブジェクトコードをコプロセッサによって実
行するプログラマブルコントローラにおいて、コプロセ
ッサは、ソースコードの基本命令に対応したオブジェク
トコードを実行するビット処理ユニットと、ソースコー
ドの応用命令に対応したオブジェクトコードを実行する
マルチビット処理ユニットと、オブジェクトコードの命
令中の強制実行フラグセットフィールドによって強制実
行フラグがセットされる強制実行フラグレジスタと、オ
ブジェクトコードの命令中のエラーフラグセットフィー
ルドによって外部エラーフラグがセットされるエラーフ
ラグレジスタと、出力によってマルチビット処理ユニッ
トの実行状態を制御する実行制御ユニットとを備え、実
行制御ユニットは、実行許可信号がビット処理ユニット
から送出されないか、マルチビット処理ユニットから内
部でのエラー検出による内部エラーフラグが発生する
か、外部エラーフラグがエラーフラグレジスタにセット
されるかのいずれかの条件が満たされるとマルチビット
処理ユニットの実行を停止し、強制実行フラグが強制実
行フラグレジスタにセットされているときに他の条件に
かかわらずマルチビット処理ユニットを実行状態に設定
するのである。
According to the present invention, in order to achieve the above object, a coprocessor dedicated to instruction execution for executing a sequence program is provided separately from the main processor, and the source code of the sequence program is compiled and obtained. In the programmable controller that executes the object code by the coprocessor, the coprocessor is a bit processing unit that executes the object code corresponding to the basic instruction of the source code, and a multi-bit that executes the object code corresponding to the application instruction of the source code. External by the processing unit, the forced execution flag register in which the forced execution flag set field in the instruction of the object code sets the forced execution flag, and the error flag set field in the instruction of the object code Error flag register in which the error flag is set, and an execution control unit for controlling the execution state of the multi-bit processing unit by the output. If an internal error flag is generated due to an internal error detection from or the external error flag is set in the error flag register, the execution of the multi-bit processing unit is stopped and the forced execution flag is set. When set in the forced execution flag register, the multi-bit processing unit is set to the execution state regardless of other conditions.

【0012】[0012]

【作用】上記構成によれば、コプロセッサに、オブジェ
クトコード中の強制実行フラグセットフィールドによっ
て強制実行フラグがセットされる強制実行フラグレジス
タと、オブジェクトコード中のエラーフラグセットフィ
ールドによって外部エラーフラグがセットされるエラー
フラグレジスタと、出力値に基づいてマルチビット処理
ユニットの実行状態を制御することができる実行制御ユ
ニットを設けているのであって、実行許可信号がビット
処理ユニットから送出されないか、マルチビット処理ユ
ニットから内部でのエラー検出による内部エラーフラグ
が発生するか、外部エラーフラグがエラーフラグレジス
タにセットされるかのいずれかの条件が満たされるとマ
ルチビット処理ユニットの実行を停止し、強制実行フラ
グが強制実行フラグレジスタにセットされているときに
他の条件にかかわらずマルチビット処理ユニットを実行
状態に設定するので、たとえば、オブジェクトコードの
サブルーチンのリターン命令の強制実行フラグセットフ
ィールドの内容を、強制実行フラグレジスタに強制実行
フラグをセットする内容に設定しておけば、サブルーチ
ン内でエラーが生じたとしてもリターン命令だけは実行
するようにしてメインルーチンに復帰させることが可能
になり、結果的に、エラーが発生したときに、ソースコ
ードの1命令に対応したオブジェクトコードのブロック
の区切り目で実行を停止させるという処理が可能になる
のである。また、ソースコードの命令とオブジェクトコ
ードのブロックとを対応付けることができることによっ
て、デバッグや編集などが容易になるのである。さら
に、シーケンス命令以外のプログラムを強制的に実行さ
せることも可能になり、拡張性が増すことになる。
According to the above configuration, the coprocessor is provided with a compulsory execution flag register in which the compulsory execution flag is set by the compulsory execution flag set field in the object code and an external error flag is set by the error flag set field in the object code. The error flag register and the execution control unit that can control the execution state of the multi-bit processing unit based on the output value are provided. When the internal error flag is generated by the processing unit due to an internal error detection or the external error flag is set in the error flag register, the execution of the multi-bit processing unit is stopped and forced execution is executed. Flag is a forced execution flag Since the multi-bit processing unit is set to the execution state regardless of other conditions when it is set in the register, for example, the contents of the forced execution flag set field of the return instruction of the subroutine of the object code are set in the forced execution flag register. By setting the content to set the forced execution flag, it is possible to return to the main routine by executing only the return instruction even if an error occurs in the subroutine, and as a result, an error occurs. Then, it becomes possible to stop the execution at the break point of the block of the object code corresponding to one instruction of the source code. Further, the source code instruction and the object code block can be associated with each other, which facilitates debugging and editing. Further, it becomes possible to forcibly execute a program other than the sequence instruction, which enhances the expandability.

【0013】一方、外部エラーフラグをセットするエラ
ーフラグレジスタを設けたことによって、オブジェクト
コードの組み合わせによるエラーの判定処理などを行っ
た場合の判定結果に基づいて外部エラーフラグをエラー
フラグレジスタにセットするというような処理が可能に
なり、マルチビット処理ユニットから発生する内部エラ
ーフラグとは別に、エラー処理が可能になるのである。
その結果、オブジェクトコードのプログラムによって複
雑なエラーの判定条件を設定することができ、エラー処
理の拡張性が増すことになる。
On the other hand, by providing the error flag register for setting the external error flag, the external error flag is set in the error flag register based on the judgment result when the error judgment process based on the combination of the object codes is performed. Such processing becomes possible, and error processing becomes possible in addition to the internal error flag generated from the multi-bit processing unit.
As a result, a complicated error determination condition can be set by the program of the object code, and the expandability of error processing is increased.

【0014】[0014]

【実施例】プログラマブルコントローラの基本構成は、
図6に示した従来構成と同様であるから、以下では、主
としてコプロセッサ21の内部構成について説明する。
コプロセッサ21は、図8に示した従来構成に対して、
強制実行フラグレジスタ34、エラーフラグレジスタ3
5を付加し、実行制御ユニット33の構成を変更した点
で相違している。
[Example] The basic configuration of the programmable controller is
Since the configuration is the same as the conventional configuration shown in FIG. 6, the internal configuration of the coprocessor 21 will be mainly described below.
The coprocessor 21 is different from the conventional configuration shown in FIG.
Forced execution flag register 34, error flag register 3
5 is added and the configuration of the execution control unit 33 is changed.

【0015】強制実行フラグレジスタ34およびエラー
フラグレジスタ35は、それぞれ3入力のアンド回路A
ND2 ,AND3 と、アンド回路AND2 ,AND3
出力がクロック端子CKに入力されるDフリップフロッ
プFF1 ,FF2 とにより構成される。各アンド回路A
ND2 ,AND3 には、オブジェクトコードの後述する
フラグセット命令をデコードして得たフラグセット信号
sreqと、クロック信号clk とが入力され、また、アンド
回路AND2 の残りの入力端子にはフラグセット命令の
第3ビットb3 が入力され、アンド回路AND3 の残り
の入力端子にはフラグセット命令の第1ビットb1 が入
力される。また、DフリップフロップFF1 のデータ端
子Dには、フラグセット命令の第2ビットb2 が入力さ
れ、DフリップフロップFF2 のデータ端子Dには、フ
ラグセット命令の第0ビットb0 が入力される。フラグ
セット信号sreqは、フラグセット命令が発生したときに
Hレベル(以下、Hレベルを1とする)になるのであ
り、このとき同時に、フラグセット命令の第1ビットb
1 が1であると、クロック信号clk に同期してフラグセ
ット命令の第0ビットb0 の値がDフリップフロップF
2 にセットされる。また、フラグセット命令が発生し
たとき、フラグセット命令の第3ビットb3 が1である
と、クロック信号clk に同期してフラグセット命令の第
2ビットb2 の値がDフリップフロップFF1 にセット
されるのである。フラグセット命令の第0ビットb0
外部エラーフラグ、第1ビットb1 は外部エラーフラグ
の更新指示、第2ビットb2 は強制実行フラグ、第3ビ
ットb3 は強制実行フラグの更新指示というように意味
付けがなされている。
The forced execution flag register 34 and the error flag register 35 each have a 3-input AND circuit A.
ND 2 and AND 3 , and D flip-flops FF 1 and FF 2 whose outputs from the AND circuits AND 2 and AND 3 are input to the clock terminal CK. Each AND circuit A
ND 2 and AND 3 have a flag set signal obtained by decoding a flag set instruction described later in the object code.
sreq and the clock signal clk are input, the third input bit b 3 of the flag set instruction is input to the remaining input terminals of the AND circuit AND 2 , and the flag input is set to the remaining input terminals of the AND circuit AND 3. The first bit b 1 of the instruction is input. The second bit b 2 of the flag set instruction is input to the data terminal D of the D flip-flop FF 1 , and the 0th bit b 0 of the flag set instruction is input to the data terminal D of the D flip-flop FF 2. To be done. The flag set signal sreq becomes H level (hereinafter, H level is 1) when the flag set instruction is generated, and at the same time, the first bit b of the flag set instruction is generated.
When 1 is 1, the value of the 0th bit b 0 of the flag set instruction is synchronized with the clock signal clk and the value of the D flip-flop F
It is set to F 2 . If the third bit b 3 of the flag set instruction is 1 when the flag set instruction is generated, the value of the second bit b 2 of the flag set instruction is transferred to the D flip-flop FF 1 in synchronization with the clock signal clk. It is set. In the flag set instruction, the 0th bit b 0 is called an external error flag, the 1st bit b 1 is called an external error flag update instruction, the 2nd bit b 2 is called a forced execution flag, and the 3rd bit b 3 is called a forced execution flag update instruction. The meaning is given as follows.

【0016】実行制御ユニット33は、Dフリップフロ
ップFF2 の出力であるエラーフラグレジスタ35の出
力と、マルチビット処理ユニット32の内部でエラーが
発生すると出力される内部エラーフラグierrとの論理和
をとるオア回路OR1 、オア回路OR1 の出力の否定を
出力するノット回路NOT1 、ビット処理ユニット31
からマルチビット処理ユニット32に対する実行許可信
号として出力されるビットアキュムレータbaccとノット
回路NOT1 との論理積を出力するアンド回路AN
1 、DフリップフロップFF1 の出力である強制実行
フラグレジスタ34の出力とアンド回路AND1 の出力
との論理和をとるオア回路OR2 により構成される。こ
のオア回路OR2 の出力がマルチビット処理ユニット3
2に対して実行を制御するように入力されるのである。
したがって、フラグセット命令による外部エラーフラグ
がエラーフラグレジスタ35にセットされておらず、エ
ラーフラグレジスタ35の内容が0であって、かつ、マ
ルチビット処理ユニット32から内部エラーフラグierr
が発生していないときであって、ビットアキュムレータ
baccが1であれば、マルチビット処理ユニット32は実
行状態になる。また、上の3つの前提の少なくとも1つ
が満たされていない場合であっても、強制実行フラグレ
ジスタ34の内容が1であれば、マルチビット処理ユニ
ット32は実行状態になるのである。要するに、エラー
フラグレジスタ35に対して外部エラーフラグをセット
すれば、マルチビット処理ユニット32の実行を停止さ
せることができ、強制実行フラグレジスタ34に対して
強制実行フラグをセットすれば、他の条件にかかわりな
くマルチビット処理ユニット32を強制的に実行状態に
設定することができるのである。
The execution control unit 33 takes the logical sum of the output of the error flag register 35 which is the output of the D flip-flop FF 2 and the internal error flag ierr which is output when an error occurs inside the multi-bit processing unit 32. OR circuit OR 1, the NOT circuit NOT 1 which outputs the NOT of the output of the OR circuit OR 1 take, the bit processing units 31
AND circuit AN for outputting a logical product of a bit accumulator bacc output as an execution permission signal from the multi-bit processing unit 32 to the NOT circuit NOT 1.
It is constituted by an OR circuit OR 2 which takes the logical sum of the output of the forced execution flag register 34, which is the output of D 1 and the D flip-flop FF 1, and the output of the AND circuit AND 1 . The output of this OR circuit OR 2 is the multi-bit processing unit 3
2 is input to control execution.
Therefore, the external error flag due to the flag set instruction is not set in the error flag register 35, the content of the error flag register 35 is 0, and the internal error flag ierr from the multi-bit processing unit 32 is set.
Is not occurring and the bit accumulator
If bacc is 1, then multi-bit processing unit 32 is in the running state. Even if at least one of the above three assumptions is not satisfied, if the content of the forced execution flag register 34 is 1, the multi-bit processing unit 32 is in the execution state. In short, if the external error flag is set to the error flag register 35, the execution of the multi-bit processing unit 32 can be stopped, and if the forced execution flag is set to the forced execution flag register 34, another condition is satisfied. Regardless of this, the multi-bit processing unit 32 can be forcibly set to the execution state.

【0017】ところで、コプロセッサ21で用いる命令
には、図4に示すような4種類の形式がある。ここに、
src1、src2、dst1は、コプロセッサ21の内部レジスタ
を指定するためのフィールドである。図4(a)は、オ
ブジェクトプログラムメモリ22やデータメモリ23と
内部レジスタとの間のデータの移動命令に対応するMタ
イプと称する形式の命令である。上位6ビットは命令コ
ードフィールド(op-code)、次の3ビットは移動元を指
定するソースレジスタ指定フィールド(src1)、次の3ビ
ットは移動先を指定するディスティネーションレジスタ
指定フィールド(dst1)、次の4ビットはソースコードと
オブジェクトコードとの対応関係を示すステータスタグ
コードを格納するステータスタグフィールド(St) 、下
位16ビットはメモリアドレスのオフセット値を格納す
るオフセットフィールド(offset) になっている。ここ
に、移動元や移動先が内部レジスタであれば指定された
内部レジスタが移動元や移動先になり、移動元や移動先
がオブジェクトプログラムメモリ22やデータメモリ2
3であれば指定された内部レジスタに格納されたデータ
が移動元や移動先のアドレスになる。
The instructions used by the coprocessor 21 have four types as shown in FIG. here,
src1, src2, and dst1 are fields for designating internal registers of the coprocessor 21. FIG. 4A shows an instruction of a type called M type corresponding to the instruction to move data between the object program memory 22 or the data memory 23 and the internal register. The upper 6 bits are the instruction code field (op-code), the next 3 bits are the source register specification field (src1) that specifies the move source, the next 3 bits are the destination register specification field (dst1) that specifies the move destination, The next 4 bits are a status tag field (St) that stores the status tag code indicating the correspondence between the source code and the object code, and the lower 16 bits are an offset field (offset) that stores the offset value of the memory address. . If the source or destination is an internal register, the designated internal register becomes the source or destination, and the source or destination is the object program memory 22 or the data memory 2.
If it is 3, the data stored in the designated internal register becomes the source or destination address.

【0018】図4(b)は、2個の内部レジスタに格納
された値の間での論理演算や算術演算の結果を他の内部
レジスタに格納するRタイプと称する形式の命令であ
る。上位ビットから命令コードフィールド(op-code)に
6ビット、2個の被演算値がそれぞれ格納された2個の
内部レジスタを指定するソースレジスタ指定フィールド
(src1),(src2)に3ビットずつ、ステータスタグフィー
ルド(St) に4ビット、演算結果を格納する内部レジス
タを指定するディスティネーションレジスタ指定フィー
ルド(dst1)に3ビットを用いている。残りの下位13ビ
ットはファンクションフィールド(function)として高機
能化などの目的で利用される空フィールドになってい
る。
FIG. 4B shows an instruction of a type called R type in which the result of logical operation or arithmetic operation between values stored in two internal registers is stored in another internal register. A source register specification field that specifies two internal registers that store 6 bits and two operands in the instruction code field (op-code) from the upper bit.
Three bits are used for each of (src1) and (src2), four bits are used for the status tag field (St), and three bits are used for the destination register designating field (dst1) that designates the internal register for storing the operation result. The remaining 13 low-order bits are empty fields used as a function field for the purpose of enhancing functionality.

【0019】図4(c)は、内部レジスタに格納された
値と、設定された値との間での論理演算や算術演算の結
果を他の内部レジスタに格納するIタイプと称する形式
の命令である。この形式の命令では、Mタイプの形式の
命令のオフセットフィールドに代えて即値用フィールド
(immediate) を設けている点が形式上の相違点である。
この命令では、ソースレジスタ指定フィールド(src1)に
格納された値と即値用フィールド(immediate) に設定さ
れた値との間で、論理演算や算術演算が行われるのであ
る。したがって、演算すべき2つの値の一方が即値用フ
ィールド(immediate) に設定に格納される点を除けば、
Rタイプの命令と同様の処理を行うことになる。
FIG. 4C shows an instruction of a type called I type for storing the result of a logical operation or arithmetic operation between the value stored in the internal register and the set value in another internal register. Is. In this type of instruction, an immediate field is used instead of the offset field of the M type instruction.
The difference in format is that (immediate) is provided.
In this instruction, a logical operation or arithmetic operation is performed between the value stored in the source register designation field (src1) and the value set in the immediate value field (immediate). Therefore, except that one of the two values to be calculated is stored in the immediate field (immediate) in the setting,
The same processing as the R type instruction is performed.

【0020】図4(d)は、2個の内部レジスタに格納
された値の大小関係に応じてプログラムカウンタで設定
されたアドレスにジャンプしたり、1個の内部レジスタ
に格納されたアドレスにジャンプしたりするJタイプと
称する形式の命令である。形式的には、Mタイプの形式
の命令のディスティネーションレジスタ指定フィールド
(dst1)に代えて、ソースレジスタ指定フィールド(src2)
を設けた形式になっている。すなわち、2個の内部レジ
スタを指定するソースレジスタ指定フィールド(src1),
(src2)に格納された値の大小関係を比較してプログムカ
ウンタで指定されたアドレスにジャンプしたり、いずれ
か一方のソースレジスタ指定フィールド(src1),(src2)
に格納された値をジャンプ先のアドレスとしてジャンプ
したりするのである。また、この形式の命令には無演算
命令も含まれる。
FIG. 4 (d) jumps to the address set by the program counter or jumps to the address stored in one internal register according to the magnitude relation of the values stored in the two internal registers. It is an instruction in a format called J type. Formally, the destination register specification field of the M type instruction
Source register specification field (src2) instead of (dst1)
It is in the format with. That is, a source register designation field (src1) that designates two internal registers,
The value stored in (src2) is compared in magnitude to jump to the address specified by the program counter, or one of the source register specification fields (src1), (src2)
The value stored in is used as the jump destination address. Instructions of this type include non-operation instructions.

【0021】上述したステータスタグフィールド(St)
は4ビットであって、図5に示すように、ソースコード
の1単位を構成するワード数を格納するための3ビット
のコード数フィールド(code)と、ソースコードの各単位
に対応したオブジェクトコードのブロックの最後の命令
コードの位置を示す1ビットの終了位置指定フィールド
(end) とを備えている。ソースコードの1単位が複数ワ
ードであって対応するオブジェクトコードのブロックが
複数ワードである場合に、コンパイラはソースコードの
1単位に対応するオブジェクトコードのブロックの先頭
の命令コードのコード数フィールド(code)に、ソースコ
ードの1単位のワード数を設定する。また、同一ブロッ
ク内の他の命令コードについてはコード数フィールド(c
ode)を0に設定する。ここに、コード数フィールド(cod
e)は、3ビットであるから最大数は7になるが、ソース
コードの1単位が8ワード以上である場合もある。この
場合には、ソースコードの1単位に対応したオブジェク
トコードのブロックの先頭の命令コードから順にコード
数フィールド(code)にワード数を設定し、同一ブロック
内の合計のワード数が、ソースコードの1単位のワード
数になるようにすればよい。たとえば、ソースコードの
1単位が15ワードであれば、オブジェクトコードの対
応するブロックの命令コードのコード数フィールド(cod
e)は、ブロックの先頭の命令コードから順に、7、7、
1となる。
The status tag field (St) described above
Is 4 bits, and as shown in FIG. 5, a 3-bit code number field (code) for storing the number of words forming one unit of the source code, and an object code corresponding to each unit of the source code. 1-bit end position specification field that indicates the position of the last instruction code in the block
(end) and. When one unit of the source code is a plurality of words and the corresponding block of the object code is a plurality of words, the compiler uses the code number field (code) of the instruction code at the beginning of the block of the object code corresponding to one unit of the source code. Set the number of words per unit of source code in). For other instruction codes in the same block, the code number field (c
ode) to 0. Here, the code number field (cod
Since e) is 3 bits, the maximum number is 7. However, one unit of the source code may be 8 words or more. In this case, the number of words is set in the code number field (code) in order from the instruction code at the beginning of the block of the object code corresponding to one unit of source code, and the total number of words in the same block is It is sufficient that the number of words is 1 unit. For example, if one unit of the source code is 15 words, the code number field (cod
e) is 7, 7, in order from the instruction code at the beginning of the block.
It becomes 1.

【0022】一方、ソースコードの1単位に対応するブ
ロックの終了位置は、終了位置指定フィールド(end) の
内容により指定される。すなわち、終了位置指定フィー
ルド(end) が、「0」のときにはブロックの途中の命令
コードを示し、「1」のときには最終位置の命令コード
を示すのである。フラグセット命令は、これら4種類の
命令のうちJタイプの命令であって、図2に示すよう
に、ソースレジスタ指定フィールド(src1),(src2)を未
使用とし、下位4ビットb0 〜b3 を上述したように意
味付けしているのである。すなわち、第0ビットb0
第1ビットb1 とがエラーフラグセットフィールドにな
り、第2ビットb2 と第3ビットb3 とが強制実行フラ
グセットフィールドになっているのであって、各フラグ
セットフィールドの上位側のビットb1 ,b3 が1であ
るときに、下位側のビットb0 ,b2 がそれぞれエラー
フラグレジスタ35と強制実行フラグレジスタ34とに
セットされる。また、下位4ビットb0 〜b3 に対して
このような意味付けをするのは、フラグセット用に設定
した専用の命令だけではなく、サブルーチンのリターン
命令なども同様に意味付けをすることができる。この場
合、リターン命令に対してもフラグセット信号sreqが発
生するようにデコーダを構成することが必要である。
On the other hand, the end position of the block corresponding to one unit of the source code is designated by the contents of the end position designation field (end). That is, when the end position designation field (end) is "0", it shows the instruction code in the middle of the block, and when it is "1", it shows the instruction code at the final position. The flag set instruction is a J type instruction among these four types of instructions, and as shown in FIG. 2, the source register designation fields (src1) and (src2) are unused and the lower 4 bits b 0 to b are set. The meaning of 3 is given as described above. That is, the 0th bit b 0 and the 1st bit b 1 are error flag set fields, and the 2nd bit b 2 and the 3rd bit b 3 are forced execution flag set fields. When the upper bits b 1 and b 3 of the set field are 1, the lower bits b 0 and b 2 are set in the error flag register 35 and the forced execution flag register 34, respectively. Further, not only the dedicated instruction set for the flag set but also the return instruction of the subroutine, etc. are similarly given meanings to the lower 4 bits b 0 to b 3 . it can. In this case, it is necessary to configure the decoder so that the flag set signal sreq is generated even for the return instruction.

【0023】以上のような構成によって、たとえば、サ
ブルーチンのリターン命令などをマルチビット処理ユニ
ット32で強制的に実行しようとすれば、強制実行フラ
グセットフィールドの両ビットをともに1にセットした
リターン命令がオブジェクトコードのプログラム中に書
き込まれるようにしておく。このようなリターン命令で
は、図3(a)に示すようにデコーダからフラグセット
命令sreqが発生し、また、図3(b)(c)に示すよう
に、命令の強制実行フラグセットフィールドである第2
ビットb2 および第3ビットb3 が1であるから、図3
(d)のようなクロック信号clk に同期してアンド回路
AND2 から図3(e)のような信号がDフリップフロ
ップFF1 のクロック端子CKに入力され、第2ビット
2 の値がラッチされるのである。これによって、マル
チビット処理ユニット32は強制的に実行状態になり、
リターン命令を実行することができるのである。
With the above configuration, for example, if a return instruction of a subroutine is forcibly executed by the multi-bit processing unit 32, a return instruction in which both bits of the forced execution flag set field are set to 1 is generated. It should be written in the object code program. In such a return instruction, a flag set instruction sreq is generated from the decoder as shown in FIG. 3A, and a forced execution flag set field of the instruction as shown in FIGS. 3B and 3C. Second
Since bit b 2 and third bit b 3 are 1,
A signal as shown in FIG. 3 (e) is input from the AND circuit AND 2 to the clock terminal CK of the D flip-flop FF 1 in synchronization with the clock signal clk as shown in (d), and the value of the second bit b 2 is latched. Is done. This forces the multi-bit processing unit 32 into the running state,
The return instruction can be executed.

【0024】一方、強制実行フラグセットフィールドの
上位側である第3ビットb3 を1に設定し、下位側であ
る第2ビットb2 を0に設定しておけば、強制実行フラ
グを解除することができる。外部エラーフラグについて
も同様であって、第0ビットb0 と第1ビットb1 とを
ともに1に設定すれば、外部エラーフラグが設定され、
第1ビットb1 を1、第0ビットb0 を0に設定すれ
ば、外部エラーフラグが解除されるのである。
On the other hand, if the third bit b 3 on the upper side of the forced execution flag set field is set to 1 and the second bit b 2 on the lower side is set to 0, the forced execution flag is released. be able to. The same applies to the external error flag. If both the 0th bit b 0 and the 1st bit b 1 are set to 1, the external error flag is set,
When the first bit b 1 is set to 1 and the 0th bit b 0 is set to 0, the external error flag is cleared.

【0025】[0025]

【発明の効果】本発明は上述のように、コプロセッサ
に、オブジェクトコード中の強制実行フラグセットフィ
ールドによって強制実行フラグがセットされる強制実行
フラグレジスタと、オブジェクトコード中のエラーフラ
グセットフィールドによって外部エラーフラグがセット
されるエラーフラグレジスタと、出力値に基づいてマル
チビット処理ユニットの実行状態を制御することができ
る実行制御ユニットを設けているのであって、実行許可
信号がビット処理ユニットから送出されないか、マルチ
ビット処理ユニットから内部でのエラー検出による内部
エラーフラグが発生するか、外部エラーフラグがエラー
フラグレジスタにセットされるかのいずれかの条件が満
たされるとマルチビット処理ユニットの実行を停止し、
強制実行フラグが強制実行フラグレジスタにセットされ
ているときに他の条件にかかわらずマルチビット処理ユ
ニットを実行状態に設定するので、たとえば、オブジェ
クトコードのサブルーチンのリターン命令の強制実行フ
ラグセットフィールドの内容を、強制実行フラグレジス
タに強制実行フラグをセットする内容に設定しておけ
ば、サブルーチン内でエラーが生じたとしてもリターン
命令だけは実行するようにしてメインルーチンに復帰さ
せることが可能になり、結果的に、エラーが発生したと
きに、ソースコードの1命令に対応したオブジェクトコ
ードのブロックの区切り目で実行を停止させるという処
理が可能になるという効果を奏する。また、ソースコー
ドの命令とオブジェクトコードのブロックとを対応付け
ることができることによって、デバッグや編集などが容
易になるのである。さらに、シーケンス命令以外のプロ
グラムを強制的に実行させることも可能になり、たとえ
ば、シーケンス言語以外の言語(BASICなど)への
対応を可能とするなど、拡張性が増すという利点があ
る。
As described above, according to the present invention, the coprocessor is externally controlled by the compulsory execution flag register in which the compulsory execution flag is set by the compulsory execution flag set field in the object code and the error flag set field in the object code. Since the error flag register in which the error flag is set and the execution control unit that can control the execution state of the multi-bit processing unit based on the output value are provided, the execution permission signal is not sent from the bit processing unit. Execution of the multi-bit processing unit is stopped when either the internal error flag is generated by the internal error detection from the multi-bit processing unit or the external error flag is set in the error flag register. Then
Since the multi-bit processing unit is set to the execution state regardless of other conditions when the forced execution flag is set in the forced execution flag register, for example, the contents of the forced execution flag set field of the return instruction of the subroutine of the object code By setting the contents to set the forced execution flag in the forced execution flag register, it becomes possible to return to the main routine by executing only the return instruction even if an error occurs in the subroutine. As a result, when an error occurs, it is possible to perform the processing of stopping the execution at the break point of the block of the object code corresponding to one instruction of the source code. Further, the source code instruction and the object code block can be associated with each other, which facilitates debugging and editing. Furthermore, it becomes possible to forcibly execute programs other than sequence instructions, even if
For example, to a language other than sequence language (such as BASIC)
There is an advantage that the expandability increases , such as enabling support .

【0026】一方、外部エラーフラグをセットするエラ
ーフラグレジスタを設けたことによって、オブジェクト
コードの組み合わせによるエラーの判定処理などを行っ
た場合の判定結果に基づいて外部エラーフラグをエラー
フラグレジスタにセットするというような処理が可能に
なり、マルチビット処理ユニットから発生する内部エラ
ーフラグとは別に、エラー処理が可能になるのである。
その結果、オブジェクトコードのプログラムによって複
雑なエラーの判定条件を設定することができ、エラー処
理の拡張性が増すという利点を有するのである。
On the other hand, by providing the error flag register for setting the external error flag, the external error flag is set in the error flag register based on the judgment result when the error judgment processing based on the combination of the object codes is performed. Such processing becomes possible, and error processing becomes possible in addition to the internal error flag generated from the multi-bit processing unit.
As a result, it is possible to set a complicated error judgment condition by the program of the object code, and there is an advantage that the expandability of error processing is increased.

【図面の簡単な説明】[Brief description of drawings]

【図1】実施例を示す要部ブロック図である。FIG. 1 is a block diagram of an essential part showing an embodiment.

【図2】実施例に用いるフラグセット命令の形式を示す
説明図である。
FIG. 2 is an explanatory diagram showing a format of a flag set instruction used in the embodiment.

【図3】実施例の動作説明図である。FIG. 3 is an operation explanatory diagram of the embodiment.

【図4】実施例に用いる命令コードの形式を示す説明図
である。
FIG. 4 is an explanatory diagram showing a format of an instruction code used in the embodiment.

【図5】実施例に用いる命令コード中のステータスタグ
フィールドの構成例を示す説明図である。
FIG. 5 is an explanatory diagram showing a configuration example of a status tag field in an instruction code used in the embodiment.

【図6】本発明に係るプログラマブルコントローラのブ
ロック図である。
FIG. 6 is a block diagram of a programmable controller according to the present invention.

【図7】本発明に係るプログラマブルコントローラでの
ソースコードとオブジェクトコードとの関係の例を示す
説明図である。
FIG. 7 is an explanatory diagram showing an example of a relationship between a source code and an object code in the programmable controller according to the present invention.

【図8】従来例を示す要部ブロック図である。FIG. 8 is a principal block diagram showing a conventional example.

【符号の説明】[Explanation of symbols]

31 ビット処理ユニット 32 マルチビット処理ユニット 33 実行制御ユニット 34 強制実行フラグレジスタ 35 エラーフラグレジスタ 31-bit processing unit 32 Multi-bit processing unit 33 Execution control unit 34 Forced execution flag register 35 Error flag register

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 シーケンスプログラムを実行する命令実
行専用のコプロセッサをメインプロセッサとは別に備
え、シーケンスプログラムのソースコードをコンパイル
して得たオブジェクトコードをコプロセッサによって実
行するプログラマブルコントローラにおいて、コプロセ
ッサは、ソースコードの基本命令に対応したオブジェク
トコードを実行するビット処理ユニットと、ソースコー
ドの応用命令に対応したオブジェクトコードを実行する
マルチビット処理ユニットと、オブジェクトコードの命
令中の強制実行フラグセットフィールドによって強制実
行フラグがセットされる強制実行フラグレジスタと、オ
ブジェクトコードの命令中のエラーフラグセットフィー
ルドによって外部エラーフラグがセットされるエラーフ
ラグレジスタと、出力によってマルチビット処理ユニッ
トの実行状態を制御する実行制御ユニットとを備え、実
行制御ユニットは、実行許可信号がビット処理ユニット
から送出されないか、マルチビット処理ユニットから内
部でのエラー検出による内部エラーフラグが発生する
か、外部エラーフラグがエラーフラグレジスタにセット
されるかのいずれかの条件が満たされるとマルチビット
処理ユニットの実行を停止し、強制実行フラグが強制実
行フラグレジスタにセットされているときに他の条件に
かかわらずマルチビット処理ユニットを実行状態に設定
することを特徴とするプログラマブルコントローラ。
1. A programmable controller in which a coprocessor dedicated to executing instructions for executing a sequence program is provided separately from a main processor, and an object code obtained by compiling a source code of a sequence program is executed by the coprocessor. , By the bit processing unit that executes the object code corresponding to the basic instruction of the source code, the multi-bit processing unit that executes the object code corresponding to the application instruction of the source code, and the forced execution flag set field in the instruction of the object code Forced execution flag register in which forced execution flag is set, error flag register in which external error flag is set by error flag set field in object code instruction, and output An execution control unit for controlling the execution state of the multi-bit processing unit is provided, and the execution control unit does not output an execution permission signal from the bit processing unit or an internal error flag due to an internal error detection from the multi-bit processing unit. Occurs or the external error flag is set in the error flag register, the execution of the multi-bit processing unit is stopped, and the forced execution flag is set in the forced execution flag register. A programmable controller characterized by setting a multi-bit processing unit to an execution state regardless of other conditions.
JP3234987A 1991-09-13 1991-09-13 Programmable controller Expired - Fee Related JP2559929B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3234987A JP2559929B2 (en) 1991-09-13 1991-09-13 Programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3234987A JP2559929B2 (en) 1991-09-13 1991-09-13 Programmable controller

Publications (2)

Publication Number Publication Date
JPH0573113A JPH0573113A (en) 1993-03-26
JP2559929B2 true JP2559929B2 (en) 1996-12-04

Family

ID=16979378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3234987A Expired - Fee Related JP2559929B2 (en) 1991-09-13 1991-09-13 Programmable controller

Country Status (1)

Country Link
JP (1) JP2559929B2 (en)

Also Published As

Publication number Publication date
JPH0573113A (en) 1993-03-26

Similar Documents

Publication Publication Date Title
JP3711422B2 (en) Information processing circuit
US6560692B1 (en) Data processing circuit, microcomputer, and electronic equipment
KR0167005B1 (en) Central Processing Unit
JP3828677B2 (en) Data transfer between registers and memory
US20040015680A1 (en) Data processor for modifying and executing operation of instruction code
JPH09512652A (en) Data processing with multiple instruction sets
US6550000B1 (en) Processor to execute in parallel plurality of instructions using plurality of functional units, and instruction allocation controller
JPH04260930A (en) Data processor
US20100017585A1 (en) Microcomputer and encoding system for instruction code and CPU
JPH04260927A (en) Data processor
JPH04260929A (en) Data processor
US20030037227A1 (en) Processor enabling exception handling to be set by program
JPS6212529B2 (en)
JP2559929B2 (en) Programmable controller
JPH08221257A (en) Divider for data processor
JP3570287B2 (en) Microcomputer
EP0343668B1 (en) Normalization control system for floating point arithmetic operations
US20050216708A1 (en) Processor for performing context switching, a method for performing context switching, a computer program for perform context switching
JPH0588884A (en) State mode setting method
JP2007287186A (en) RISC type CPU, compiler and microcomputer
JPS63214804A (en) Processor for plc and plc
JP2721609B2 (en) Programmable controller
JP2607319B2 (en) Programmable controller
JPH04260928A (en) Data processor
JP2721610B2 (en) Programmable controller

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960723

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 13

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 13

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100905

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 15

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 15

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees