JPH11110015A - Inter-cpu module data exchange device - Google Patents
Inter-cpu module data exchange deviceInfo
- Publication number
- JPH11110015A JPH11110015A JP27250397A JP27250397A JPH11110015A JP H11110015 A JPH11110015 A JP H11110015A JP 27250397 A JP27250397 A JP 27250397A JP 27250397 A JP27250397 A JP 27250397A JP H11110015 A JPH11110015 A JP H11110015A
- Authority
- JP
- Japan
- Prior art keywords
- data
- module
- instruction
- cpu
- cpu module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Control By Computers (AREA)
- Programmable Controllers (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、工作機械等の制御
用のシーケンスプログラムを実行するCPUモジュール
に掛り、特にモジュール間の通信に使用されるデータバ
ス上で複数のCPUモジュールを同時使用できる場合の
データ交換の改良に関する。The present invention relates to a CPU module for executing a sequence program for controlling a machine tool or the like, particularly when a plurality of CPU modules can be used simultaneously on a data bus used for communication between modules. The improvement of data exchange.
【0002】[0002]
【従来の技術】図4は、従来のプログラム・コントロー
ラ(以下PLCという)の演算処理過程を説明する図で
ある。PLCでは、予め作成されたブログラムをCPU
モジュールのメモリに格納する。次に、CPUが先頭ス
テップから一命令ずつ順次演算し、END命令実行後、
サービス処理及びリフレッシュ処理を行い、再び先頭ス
テップから命令実行を繰り返す方法である。この命令実
行処理の繰り返し1回を1スキャンと呼び、1スキャン
実行に要する時間をスキャンタイムと呼ぶ。2. Description of the Related Art FIG. 4 is a diagram for explaining the operation of a conventional program controller (hereinafter referred to as a PLC). In PLC, a program created in advance is
Store in module memory. Next, the CPU sequentially calculates one instruction at a time from the first step, and after executing the END instruction,
In this method, service processing and refresh processing are performed, and instruction execution is repeated from the first step. One repetition of this instruction execution process is called one scan, and the time required for one scan execution is called a scan time.
【0003】リフレッシュ処理とは、入力/出力/共有
/リンクデバイスと呼ばれる1ビット或いは16ビット
単位のデータ変化を一括して、入出力モジュール/CP
Uモジュール内共有デバイス領域/リンクモジュールよ
り、CPUモジュール内メモリの各デバイス領域に格納
したり、各デバイスに一括して出力を行うデータ処理を
いう。[0003] The refresh process is a process in which data changes in units of 1 bit or 16 bits called input / output / shared / link devices are collectively processed by an input / output module / CP.
Data processing for storing data in each device area of the memory in the CPU module from the shared device area / link module in the U module and outputting the data to each device collectively.
【0004】ところで、一台のCPUモジュールでは、
スキャンタイム100m秒当たり、入出力接点数が3000点
であるとする。このとき、被制御機器の入出力接点数が
6000点でスキャンタイム100m秒を確保しなければなら
ないとする。すると、二台のCPUモジュールを並列に
設ける必要が生ずる。そして、各CPUモジュールは自
分の担当する入出力接点を有する入出力モジュールにし
か直接アクセスできない。他方、演算命令によっては、
他のCPUモジュール担当の接点にもアクセスする必要
が生ずる。そこで、CPUモジュール間でデータ交換を
する場合には、共有リフレッシュ処理によって、共有デ
バイスの1スキャン毎に相互転送して行っている。By the way, with one CPU module,
It is assumed that the number of input / output contacts is 3000 points per 100 msec of scan time. At this time, the number of input / output contacts of the controlled
Suppose that a scan time of 100 ms must be secured at 6000 points. Then, it becomes necessary to provide two CPU modules in parallel. Each CPU module can directly access only the input / output module that has its own input / output contact. On the other hand, depending on the operation instruction,
There is also a need to access other CPU module contacts. Therefore, when data is exchanged between the CPU modules, the data is mutually transferred for each scan of the shared device by the shared refresh processing.
【0005】図5は共有リフレッシュ処理の説明図であ
る。例えば、部品を搬送する搬送器と、加工を行うアク
チュエータが別々のCPUモジュールで制御されてお
り、同期をとることで加工を円滑に行いたい場合があ
る。このような場合には、CPUモジュール1のデータ
レジスタの内容をCPUモジュール2のデータレジスタ
に複写する必要が生ずる。従来の共有リフレッシュ処理
では、CPUモジュール1,2で共有する共有レジスタ
では定周期でデータ交換を行っている。そこで、CPU
モジュール1のデータレジスタの内容を共有レジスタに
移し、次に共有リフレッシュ処理を行い、最後にCPU
モジュール2の共有レジスタから移されたデータをデー
タレジスタに移すという3工程が必要になっている。FIG. 5 is an explanatory diagram of the shared refresh processing. For example, there is a case where a transporter for transporting components and an actuator for processing are controlled by separate CPU modules, and it is desired to perform processing smoothly by synchronizing. In such a case, it is necessary to copy the contents of the data register of the CPU module 1 to the data register of the CPU module 2. In the conventional shared refresh processing, data is exchanged at regular intervals in a shared register shared by the CPU modules 1 and 2. So, CPU
The contents of the data register of the module 1 are moved to the shared register, then the shared refresh processing is performed, and finally the CPU
Three steps of transferring data transferred from the shared register of the module 2 to the data register are required.
【0006】[0006]
【発明が解決しようとする課題】しかし、従来の共有リ
フレッシュ処理によるデータ交換では、プログラム中の
命令実行でデータの操作が行われても、他のCPUモジ
ュールでのデータ更新は共有リフレッシュ処理まで待た
ねばならず、リアルタイム性に欠けるという課題があっ
た。さらに、データ交換が共有レジスタ以外のデータレ
ジスタやファイルレジスタ等の他のデバイスで行う必要
のある場合には、共有レジスタに一旦データを移す必要
があるため時間がかかるという課題があった。本発明は
このような課題を解決したもので、CPUモジュール間
のデータ交換がリアルタイムで可能で、またデータ交換
が共有レジスタ以外のデータレジスタやファイルレジス
タ等の他のデバイスで行う必要のある場合にも対処でき
るデータ交換装置を提供することを目的とする。However, in the conventional data exchange by the shared refresh processing, even if data is manipulated by executing an instruction in a program, data update in another CPU module waits until the shared refresh processing. There was a problem that it had to be real-time. Furthermore, when data exchange needs to be performed by another device such as a data register or a file register other than the shared register, it is necessary to temporarily transfer data to the shared register, which takes a long time. The present invention has solved such a problem, and it is possible to exchange data between CPU modules in real time and to perform data exchange with another device such as a data register other than a shared register or a file register. It is another object of the present invention to provide a data exchange device that can cope with the problem.
【0007】[0007]
【課題を解決するための手段】上記の目的を達成するた
めに、発明の請求項1記載のCPUモジュール間のデー
タ交換装置は、第1のCPUモジュールと、この第1の
CPUモジュールの担当する入出力接点や個別デバイス
とは独立した入出力接点や個別デバイスを有する第2の
CPUモジュールと、これらCPUモジュール間で共通
のメモリ空間となる共有レジスタを有する装置であっ
て、他のCPUモジュールのデータをリアルタイムで読
み込む命令を有することを特徴としている。本発明の請
求項1によれば、他のCPUモジュールのデータをリア
ルタイムで読み込む命令を有しているので、命令実行直
後にデータの更新を行うことができ、共有リフレッシュ
処理を待つ必要がない。In order to achieve the above object, a data exchange device between CPU modules according to the first aspect of the present invention takes charge of a first CPU module and the first CPU module. A device having a second CPU module having input / output contacts and individual devices independent of input / output contacts and individual devices, and a shared register serving as a common memory space between these CPU modules. It is characterized by having an instruction to read data in real time. According to the first aspect of the present invention, since an instruction to read data of another CPU module in real time is provided, data can be updated immediately after execution of the instruction, and there is no need to wait for a shared refresh process.
【0008】発明の請求項2記載のCPUモジュール間
のデータ交換装置は、第1のCPUモジュールと、この
第1のCPUモジュールの担当する入出力接点や個別デ
バイスとは独立した入出力接点や個別デバイスを有する
第2のCPUモジュールと、これらCPUモジュール間
で共通のメモリ空間となる共有レジスタを有する装置で
あって、他のCPUモジュールにデータをリアルタイム
で書き込む命令を有することを特徴としている。本発明
の請求項2によれば、他のCPUモジュールにデータを
リアルタイムで書き込む命令を有しているので、命令実
行直後にデータの更新を行うことができ、共有リフレッ
シュ処理を待つ必要がない。According to a second aspect of the present invention, there is provided an apparatus for exchanging data between CPU modules, comprising: a first CPU module; an input / output contact independent of an input / output contact or an individual device assigned to the first CPU module; A device having a second CPU module having a device and a shared register serving as a common memory space between these CPU modules, characterized by having an instruction to write data to another CPU module in real time. According to the second aspect of the present invention, since an instruction for writing data to another CPU module in real time is provided, the data can be updated immediately after the instruction is executed, and there is no need to wait for the shared refresh processing.
【0009】ここで、請求項3のように、リアルタイム
での読み込む/書き込む命令は、他のCPUモジュール
に対する割り込みを伴うように構成すると、通常処理に
比較して割り込み処理は優先して処理されるので、リア
ルタイム性が確保される。また、請求項4のように、リ
アルタイムでの読み込む/書き込む命令は、共有レジス
タに割り当てられたデバイスを対象とすると、従来の共
有リフレッシュ処理に準じた取扱いをすれば良いので、
従前の演算命令との整合性がよい。更に、請求項5のよ
うに、リアルタイムでの読み込む/書き込む命令は、他
のCPUモジュールに固有に割り当てられたデバイスを
対象とすると、共有レジスタ以外のデバイスにも直接ア
クセスができ、CPUモジュールの相違を意識すること
なく、プログラムが作成できる。Here, when the read / write instruction in real time is configured to cause an interrupt to another CPU module, the interrupt processing is processed with higher priority than the normal processing. Therefore, real-time property is ensured. In addition, when a read / write instruction in real time is targeted for a device assigned to a shared register, the instruction may be handled in accordance with the conventional shared refresh processing.
Good consistency with previous operation instructions. Furthermore, when the read / write instruction in real time is directed to a device uniquely assigned to another CPU module, the device can directly access a device other than the shared register, and the difference between the CPU modules can be reduced. You can create programs without being conscious.
【0010】[0010]
【発明の実施の形態】以下図面を用いて、本発明を説明
する。図1は本発明の一実施例を示す構成ブロック図で
ある。尚、図1において前記図3と同一作用をするもの
には同一符号を付して説明を省略する。ここでは、CP
Uモジュール1,2の命令実行処理内にREAD/WR
ITE命令を新設している。READ命令は、他のCP
Uモジュールのデータをリアルタイムで読み込む命令
で、他のCPUモジュールにとっては割り込み処理とな
る。WRITE命令は、他のCPUモジュールのデータ
をリアルタイムで書き込む命令で、他のCPUモジュー
ルにとっては割り込み処理となる。読み込む命令や書き
込む命令の対象デバイスは、共有レジスタでもよく、ま
た他のCPUモジュール側に固有のデータレジスタやフ
ァイルレジスタでもよい。DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described below with reference to the drawings. FIG. 1 is a configuration block diagram showing one embodiment of the present invention. In FIG. 1, components having the same functions as those in FIG. 3 are denoted by the same reference numerals, and description thereof is omitted. Here, CP
READ / WR in instruction execution processing of U modules 1 and 2
An ITE instruction has been newly established. The READ instruction is
This is an instruction to read data of the U module in real time, which is an interrupt process for other CPU modules. The WRITE instruction is an instruction for writing data of another CPU module in real time, and is an interrupt process for the other CPU module. The target device of the read instruction or the write instruction may be a shared register or a data register or a file register unique to another CPU module.
【0011】このように構成された装置の動作を次に説
明する。図2は書き込む命令の処理手順を説明する流れ
図である。まず今回のスキャンにおける命令実行処理を
開始する(S10)。CPUモジュール1から、CPU
モジュール2のファイルレジスタのデバイス番号4に、
数値1234をWRITE命令で書き込む(S12)。
すると、データ転送が行われ、CPUモジュール2のフ
ァイルレジスタのデバイス番号4に数値1234が書き
込まれる(S13)。そして、CPUモジュール1では
END命令が実行され(S14)、サービス処理(S1
6)、リフレッシュ処理(S18)がなされて、今回の
スキャンが終了する。Next, the operation of the thus constructed apparatus will be described. FIG. 2 is a flowchart for explaining the processing procedure of the write instruction. First, the instruction execution process in the current scan is started (S10). From CPU module 1 to CPU
In the device number 4 of the file register of module 2,
The numerical value 1234 is written by a WRITE instruction (S12).
Then, data transfer is performed, and the numerical value 1234 is written to the device number 4 of the file register of the CPU module 2 (S13). Then, the CPU module 1 executes the END instruction (S14), and executes the service processing (S1).
6), refresh processing (S18) is performed, and the current scan ends.
【0012】図3は読み込む命令の処理手順を説明する
流れ図である。まず今回のスキャンにおける命令実行処
理を開始する(S20)。CPUモジュール2のファイ
ルレジスタのデバイス番号3から、CPUモジュール1
のデータレジスタ2番にデータをREAD命令で読み込
む(S22)。ここでは、CPUモジュール2のファイ
ルレジスタのデバイス番号3には、数値5555が格納
されているので、これがデータ転送される(S23)。
すると、CPUモジュール1のデータレジスタ2番に数
値5555が読み込まれる(S24)。そして、CPU
モジュール1ではEND命令が実行され(S26)、サ
ービス処理(S28)、リフレッシュ処理(S30)が
なされて、今回のスキャンが終了する。FIG. 3 is a flowchart for explaining the processing procedure of a read instruction. First, the instruction execution process in the current scan is started (S20). From the device number 3 in the file register of the CPU module 2, the CPU module 1
The data is read into the data register 2 by the READ instruction (S22). Here, since the numerical value 5555 is stored in the device number 3 of the file register of the CPU module 2, the data is transferred (S23).
Then, the numerical value 5555 is read into the data register 2 of the CPU module 1 (S24). And CPU
In the module 1, an END instruction is executed (S26), a service process (S28), a refresh process (S30) are performed, and the current scan ends.
【0013】尚、上記実施例においては、読み込む/書
き込むとしてREAD/WRITE命令という表現を用
いたが、本発明はこれに限定されるものではなく、要す
るにリアルタイムに読み込む/書き込む処理が行えれば
よい。In the above embodiment, a read / write instruction is used for reading / writing. However, the present invention is not limited to this, and it is sufficient that reading / writing processing can be performed in real time. .
【0014】[0014]
【発明の効果】以上説明したように、請求項1記載の本
発明によれば、他のCPUモジュールのデータをリアル
タイムで読み込む命令を有しているので、命令実行直後
にデータの更新を行うことができ、共有リフレッシュ処
理を待つ必要がない。請求項2記載の本発明によれば、
他のCPUモジュールのデータをリアルタイムで書き込
む命令を有しているので、命令実行直後にデータの更新
を行うことができ、共有リフレッシュ処理を待つ必要が
ない。As described above, according to the first aspect of the present invention, since an instruction to read data of another CPU module in real time is provided, the data is updated immediately after the instruction is executed. And there is no need to wait for the shared refresh process. According to the invention described in claim 2,
Since there is an instruction to write data of another CPU module in real time, the data can be updated immediately after the instruction is executed, and there is no need to wait for the shared refresh processing.
【0015】次に、請求項3のように、リアルタイムで
の読み込む/書き込む命令は、他のCPUモジュールに
対する割り込みを伴うように構成すると、通常処理に比
較して割り込み処理は優先して処理されるので、リアル
タイム性が確保される。また、請求項4のように、リア
ルタイムでの読み込む/書き込む命令は、共有レジスタ
に割り当てられたデバイスを対象とすると、従来の共有
リフレッシュ処理に準じた取扱いをすれば良いので、従
前の演算命令との整合性がよい。更に、請求項5のよう
に、リアルタイムでの読み込む/書き込む命令は、他の
CPUモジュールに固有に割り当てられたデバイスを対
象とすると、共有レジスタ以外のデバイスにも直接アク
セスができ、CPUモジュールの相違を意識することな
く、プログラムが作成できる。Next, if the read / write instruction in real time is configured to cause an interrupt to another CPU module, the interrupt process is processed with higher priority than the normal process. Therefore, real-time property is ensured. In addition, when a read / write instruction in real time is targeted for a device assigned to a shared register, it can be handled in accordance with the conventional shared refresh processing. Good consistency. Furthermore, when the read / write instruction in real time is directed to a device uniquely assigned to another CPU module, the device can directly access a device other than the shared register, and the difference between the CPU modules can be reduced. You can create programs without being conscious.
【図1】本発明の一実施例を示す構成ブロック図であ
る。FIG. 1 is a configuration block diagram showing one embodiment of the present invention.
【図2】書き込む命令の処理手順を説明する流れ図であ
る。FIG. 2 is a flowchart illustrating a processing procedure of a write instruction.
【図3】読み込む命令の処理手順を説明する流れ図であ
る。FIG. 3 is a flowchart illustrating a processing procedure of a read instruction.
【図4】従来のプログラム・コントローラの演算処理過
程を説明する図である。FIG. 4 is a diagram for explaining an arithmetic processing process of a conventional program controller.
【図5】共有リフレッシュ処理の説明図である。FIG. 5 is an explanatory diagram of a shared refresh process.
READ 読み込む命令 WRITE 書き込む命令 READ Read instruction WRITE Write instruction
Claims (5)
PUモジュールの担当する入出力接点や個別デバイスと
は独立した入出力接点や個別デバイスを有する第2のC
PUモジュールと、これらCPUモジュール間で共通の
メモリ空間となる共有レジスタを有する装置であって、 他のCPUモジュールのデータをリアルタイムで読み込
む命令を有することを特徴とするCPUモジュール間の
データ交換装置。1. A first CPU module and a first CPU module.
A second C having input / output contacts and individual devices independent of the input / output contacts and individual devices assigned to the PU module
What is claimed is: 1. A data exchange device between CPU modules, comprising: a PU module; and a shared register serving as a common memory space between the CPU modules, comprising an instruction to read data of another CPU module in real time.
PUモジュールの担当する入出力接点や個別デバイスと
は独立した入出力接点や個別デバイスを有する第2のC
PUモジュールと、これらCPUモジュール間で共通の
メモリ空間となる共有レジスタを有する装置であって、 他のCPUモジュールにデータをリアルタイムで書き込
む命令を有することを特徴とするCPUモジュール間の
データ交換装置。2. A first CPU module and a first CPU module.
A second C having input / output contacts and individual devices independent of the input / output contacts and individual devices assigned to the PU module
An apparatus having a PU module and a shared register serving as a common memory space between the CPU modules, wherein the apparatus has an instruction to write data to another CPU module in real time.
命令は、他のCPUモジュールに対する割り込みを伴う
ことを特徴とする請求項1/2記載のCPUモジュール
間のデータ交換装置。3. The data exchange apparatus according to claim 1, wherein the read / write instruction in real time is accompanied by an interrupt to another CPU module.
命令は、共有レジスタに割り当てられたデバイスを対象
とすることを特徴とする請求項1/2記載のCPUモジ
ュール間のデータ交換装置。4. The data exchange device between CPU modules according to claim 1, wherein said read / write instruction in real time is directed to a device assigned to a shared register.
命令は、他のCPUモジュールに固有に割り当てられた
デバイスを対象とすることを特徴とする請求項1/2記
載のCPUモジュール間のデータ交換装置。5. The data exchange device between CPU modules according to claim 1, wherein the read / write instruction in real time is directed to a device uniquely assigned to another CPU module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27250397A JPH11110015A (en) | 1997-10-06 | 1997-10-06 | Inter-cpu module data exchange device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27250397A JPH11110015A (en) | 1997-10-06 | 1997-10-06 | Inter-cpu module data exchange device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11110015A true JPH11110015A (en) | 1999-04-23 |
Family
ID=17514823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27250397A Pending JPH11110015A (en) | 1997-10-06 | 1997-10-06 | Inter-cpu module data exchange device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11110015A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008083761A (en) * | 2006-09-26 | 2008-04-10 | Matsushita Electric Works Ltd | Robot controller and robot |
-
1997
- 1997-10-06 JP JP27250397A patent/JPH11110015A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008083761A (en) * | 2006-09-26 | 2008-04-10 | Matsushita Electric Works Ltd | Robot controller and robot |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2829091B2 (en) | Data processing system | |
JPH04346151A (en) | Data processor | |
JPH11110015A (en) | Inter-cpu module data exchange device | |
EP0923010B1 (en) | Programmable controller | |
JP4479131B2 (en) | Control device | |
JP3887989B2 (en) | Programmable controller and input / output control method thereof | |
JP2002215413A (en) | Firmware transfer method and inter-module data transmission system | |
JP2007087244A (en) | Co-processor and computer system | |
JP3861649B2 (en) | Message communication method between modules | |
JPS6049464A (en) | Inter-processor communication system of multi-processor computer | |
JPH07334210A (en) | Programmable controller system | |
KR100253790B1 (en) | Method of interface for controller board in medium and large computer | |
JP3465798B2 (en) | Distributed control system | |
JPH10154005A (en) | Input/output control system for programmable controller | |
JP2002297209A (en) | Sequence program storing method in sequence controller | |
JP3817741B2 (en) | Editing device | |
JP2006023808A (en) | Apparatus and method of transferring data | |
JP2003271202A (en) | Process controller system | |
JP2007128413A (en) | Programmable controller | |
JPH0310363A (en) | Latency time setting method for parallel computer | |
JP2005321842A (en) | Dma transfer system and method | |
JP2000067008A (en) | Multi-processor system | |
JP2011008578A (en) | Control device | |
JP2001022414A (en) | Process controller, its data transfer method and plant | |
JPH045748A (en) | Information processor |