JPH04319703A - Programmable controller - Google Patents
Programmable controllerInfo
- Publication number
- JPH04319703A JPH04319703A JP8814991A JP8814991A JPH04319703A JP H04319703 A JPH04319703 A JP H04319703A JP 8814991 A JP8814991 A JP 8814991A JP 8814991 A JP8814991 A JP 8814991A JP H04319703 A JPH04319703 A JP H04319703A
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- bus
- module
- data
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims abstract description 17
- 239000000872 buffer Substances 0.000 claims abstract description 14
- 230000009977 dual effect Effects 0.000 claims abstract description 13
- 238000004904 shortening Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 1
- 241000202567 Fatsia japonica Species 0.000 description 1
- 229910000831 Steel Inorganic materials 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 239000010865 sewage Substances 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Landscapes
- Programmable Controllers (AREA)
Abstract
Description
[発明の目的] [Purpose of the invention]
【0001】0001
【産業上の利用分野】本発明は鉄鋼、製紙プラントや上
下水道などの公共システム、自動車産業など、産業用シ
ステムの制御に広く使用されているプログラマブルコン
トローラに係り、特にそのスキャン実行時間を短縮する
ために、I/Oの一括入出力用モジュールを設けたプロ
グラマブルコントローラに関するものである。[Industrial Application Field] The present invention relates to a programmable controller that is widely used to control industrial systems such as steel and paper plants, public systems such as water and sewage plants, and the automobile industry, and in particular, to shorten the scan execution time. The present invention relates to a programmable controller provided with a module for batch input/output of I/O.
【0002】0002
【従来の技術】プログラマブルコントローラ(以下、P
Cと略す)は多数のI/Oを使用する。特に大型のPC
になればなるほど制御する入出力点数は多くなり、I/
Oの台数も増える。これらのI/Oは1台のI/Oユニ
ットには入りきれず、複数のユニットに分散して実装さ
れる。各ユニットにはCPUモジュールからのI/Oバ
スが接続され、バッファモジュール等を介して、各ユニ
ット内のローカルI/Oバスに接続され、このバスにI
/Oが接続される。各I/Oには固有のI/Oアドレス
が与えられており、CPUモジュールはこのI/Oアド
レスを用いて各I/Oをアクセスする。さて、PCは制
御プログラムをスキャン実行する際に、スキャン毎に全
入力モジュールからデータを読み込み、全出力モジュー
ルには制御プログラムの演算結果を出力しなければなら
ない。これを一括入出力と呼んでいる。この一括入出に
かかる時間はI/Oが多くなるほど長くなり、PCのス
キャン時間を長くする、という欠点がある。[Prior art] Programmable controller (hereinafter referred to as P
C) uses a large number of I/Os. Especially large PC
The more the number of input/output points to be controlled increases,
The number of O units will also increase. These I/Os cannot fit into one I/O unit, but are distributed and implemented in multiple units. An I/O bus from the CPU module is connected to each unit, which is connected to a local I/O bus within each unit via a buffer module, etc.
/O is connected. Each I/O is given a unique I/O address, and the CPU module uses this I/O address to access each I/O. Now, when the PC scans and executes the control program, it must read data from all input modules for each scan and output the calculation results of the control program to all output modules. This is called batch input/output. The time required for this batch input/output increases as the number of I/Os increases, which has the drawback of lengthening the scan time of the PC.
【0003】従来のPCのハードウェア構成を図2に示
す。図2において7はI/Oバスバッファモジュールで
ある。従来は一括入出力時にCPU2がバスバッファ7
を介してI/O5を一枚ずつその入出力種別に従って読
みだし、または書き込みを行っていた。従って、I/O
の台数が増えるに従って、入出力の時間も長くなってい
た。FIG. 2 shows the hardware configuration of a conventional PC. In FIG. 2, 7 is an I/O bus buffer module. Conventionally, CPU 2 used bus buffer 7 during batch input/output.
The I/O 5 was read or written one by one according to its input/output type. Therefore, I/O
As the number of devices increased, the input/output time also increased.
【0004】0004
【発明が解決しようとする課題】本発明は上記の事情に
鑑みてなされたもので、PCのI/Oユニットに一括入
出力用のモジュールを設け、この一括入出力用モジュー
ルにユニット内のI/Oの一括入出力を分担させること
により、複数のユニットにおけるI/Oの一括入出力を
並列に実行させることにより、PCの全体の一括入出力
時間を短縮させ、ひいてはスキャン実行時間を短縮させ
ることを目的としている。[発明の構成]SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a module for batch input/output in an I/O unit of a PC, and to use the module for batch input/output to By sharing the bulk input/output of /O, the bulk input/output of I/O in multiple units can be executed in parallel, thereby shortening the overall bulk input/output time of the PC, and in turn shortening the scan execution time. The purpose is to [Structure of the invention]
【0005】[0005]
【課題を解決するための手段及び作用】本発明はI/O
を複数個納めるI/Oユニットを複数個使用するPCに
おいて、I/Oユニット内のI/Oの一括入出力を行う
為のマイクロプロセッサ(以下、μPと略す)と、PC
のCPUからデータを受取り、又、I/Oからの読みと
りデータをCPUに渡す為のデュアルポートメモリと、
CPUからの直接入出力データ及びコマンドをバッファ
リングする為のバッファと、上記μPからI/Oへのデ
ータ及びコマンドをバッファリングする為のバッファと
、CPUとμPの間で、I/Oユニット内のI/Oバス
のバス権を調停する為のバス権制御回路からなる一括入
出力用モジュールを各I/Oユニットに設け、CPUか
らの指令により、一括入出力用モジュールに各I/Oユ
ニット内のI/Oの一括入出力を代行させることにより
、各I/Oユニットでの一括入出力を並列に実行せしめ
、一括入出力時間の短縮を図る。CPUとI/O間のデ
ータの授受はデュアルポートメモリとμPを介して行わ
れるが、I/Oのアクセスに比し、メモリのアクセスは
高速に実行できるので、本方式により一括入出力の高速
化が可能になる。[Means and effects for solving the problems] The present invention provides an I/O
In a PC that uses multiple I/O units containing multiple I/O units, a microprocessor (hereinafter abbreviated as μP) for performing batch input/output of I/O in the I/O unit, and a PC
a dual port memory for receiving data from the CPU and passing read data from the I/O to the CPU;
A buffer for buffering direct input/output data and commands from the CPU, a buffer for buffering data and commands from the μP to the I/O, and a buffer in the I/O unit between the CPU and μP. A bulk input/output module consisting of a bus control circuit for arbitrating the bus right of the I/O bus is provided in each I/O unit, and a bulk input/output module is installed in each I/O unit according to a command from the CPU. By delegating the batch input/output of I/O in each I/O unit, the batch input/output in each I/O unit is executed in parallel, thereby shortening the batch input/output time. Data exchange between the CPU and I/O is performed via dual port memory and μP, but since memory access can be executed faster than I/O access, this method allows for high-speed batch input/output. becomes possible.
【0006】又、CPUからの一括入出力開始指令をC
PUからのバスにつながる複数の一括入出力用モジュー
ルが同時に受け取ることにより、各I/Oユニットでの
一括入出力のタイミングが同期化される。[0006] Also, the bulk input/output start command from the CPU is
By simultaneously receiving data from a plurality of batch input/output modules connected to the bus from the PU, the timing of batch input/output in each I/O unit is synchronized.
【0007】[0007]
【実施例】本発明の要部構成の一実施例を図1に示す。
図1において1は一括入出力用モジュール、1−1はマ
イクロプロセッサ、1−2はバス権制御回路、1−3は
μP用バスバッファ、1−4はPCのCPU用バスバッ
ファ、1−5はデュアルポートメモリである。2はPC
のCPU、3はCPUのバス、4はI/Oバス、5は入
出力モジュール、6はI/Oユニットである。DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows an embodiment of the main structure of the present invention. In FIG. 1, 1 is a batch input/output module, 1-1 is a microprocessor, 1-2 is a bus control circuit, 1-3 is a μP bus buffer, 1-4 is a PC CPU bus buffer, 1-5 is dual port memory. 2 is PC
3 is a CPU bus, 4 is an I/O bus, 5 is an input/output module, and 6 is an I/O unit.
【0008】本実施例では、CPU2はまず出力すべき
データを各一括入出力用モジュール1のデュアルポート
メモリ1−5に書き込む。この書き込みはメモリアドレ
スを使用して行われるので、高速に実行できる。又、バ
ス権制御回路1−2にはアドレスデコーダが含まれてお
り、CPU2が出力したアドレスに従って、対応するI
/Oユニットに分散して書き込みが行われる。In this embodiment, the CPU 2 first writes data to be output into the dual port memory 1-5 of each batch input/output module 1. This writing is performed using memory addresses, so it can be executed at high speed. Further, the bus control circuit 1-2 includes an address decoder, and according to the address output by the CPU 2, the corresponding I/O
Writing is performed in a distributed manner across /O units.
【0009】次にCPU2は全一括入出力用モジュール
1に対して起動指令を出力する。この起動出力は全一括
入出力用モジュール1に対して、共通のアドレスを使用
しており、バス権制御回路1−2がこの指令をデコード
すると、μP1−1に対して割り込み信号を出力する。
この割り込み信号を入力するとμP1−1は一括入出力
を開始する。μP1−1はローカルI/Oバス4を介し
てI/O5をアクセスしていく。このとき、バス権制御
回路1−2はI/Oバス4のバス権調停を行い、μP1
−1にバス権を与えている。そして出力モジュールには
デュアルポートメモリ1−5に書き込まれたデータを出
力し、入力モジュールから読みだしたデータはデュアル
ポートメモリ1−5に書き込む。そして全モジュールの
アクセスが終了するとバス権制御回路内のステータスレ
ジスタに完了フラグをセットして、CPU2からの読み
とりを待つ。CPU2は各一括入出力モジュール1のス
テータスを監視しており、完了フラグがセットされると
デュアルポートメモリ1−5から入力データを読み出す
。このようにして一回の一括入出力を完了する。一般に
I/Oのアクセスはメモリのアクセスよりも、時間がか
かるので、いったんメモリを介した一括入出力を行った
としても、複数個のI/Oユニットにおいて並列にI/
Oの入出力を行えば、全体の一括入出力時間を十分に早
くすることができる。Next, the CPU 2 outputs a start command to the entire batch input/output module 1. This activation output uses a common address for all batch input/output modules 1, and when the bus control circuit 1-2 decodes this command, it outputs an interrupt signal to μP 1-1. When this interrupt signal is input, μP1-1 starts batch input/output. μP1-1 accesses I/O5 via local I/O bus 4. At this time, the bus control circuit 1-2 performs bus control arbitration for the I/O bus 4, and μP1
-1 is given bus rights. The data written in the dual port memory 1-5 is output to the output module, and the data read from the input module is written to the dual port memory 1-5. When access to all modules is completed, a completion flag is set in the status register in the bus control circuit, and a read from the CPU 2 is waited for. The CPU 2 monitors the status of each batch input/output module 1, and reads input data from the dual port memory 1-5 when the completion flag is set. In this way, one batch input/output is completed. In general, I/O access takes longer than memory access, so even if batch input/output is performed via memory, multiple I/O units can perform parallel I/O.
If O input/output is performed, the entire batch input/output time can be sufficiently shortened.
【0010】CPU2がI/O5を直接アクセスしたい
ときにはI/Oアドレスを使用して、アクセスする。I
/Oアドレスを入力するとバス権制御回路1−2がμP
1−1との間でI/Oバス4のバス権の調停を行い、C
PU2にバス権を与える。このときバスバッファ1−4
がイネーブルになり、CPUはI/O5を直接アクセス
することが可能になる。[0010] When the CPU 2 wants to directly access the I/O 5, it does so using the I/O address. I
When the /O address is input, the bus control circuit 1-2 changes to μP.
Arbitrates for bus ownership of I/O bus 4 between C1-1 and C1-1.
Grant bus rights to PU2. At this time, bus buffer 1-4
is enabled, allowing the CPU to directly access I/O5.
【0011】なお、上記の説明では一括入出力用モジュ
ールがモジュールとして独立しているような構成をとっ
ていたが、このモジュールの回路をI/Oユニットのマ
ザーボードに含める構成をとることも可能であることは
言うまでもない。[0011] In the above explanation, the configuration is such that the batch input/output module is an independent module, but it is also possible to adopt a configuration in which the circuit of this module is included in the motherboard of the I/O unit. It goes without saying that there is.
【0012】0012
【発明の効果】以上に説明したように、本発明のプログ
ラマブルコントローラによれば、複数I/Oユニットの
I/Oの一括入出力を並列に実行することが可能であり
、一括入出力時間を短縮することが可能である。また、
PCから全一括入出力用モジュールに一斉に起動指令を
出力することができるので、全I/Oユニット出の一括
入出力の同期化が可能である。またこのことにより、C
PUがI/O一台ずつに入出力を行っていく方式に比較
して、全I/Oでの入出力の時間差をより少なくするこ
とが可能である。[Effects of the Invention] As explained above, according to the programmable controller of the present invention, batch input/output of I/O of multiple I/O units can be executed in parallel, and batch input/output time can be reduced. It is possible to shorten it. Also,
Since the PC can output a startup command to all batch input/output modules at once, it is possible to synchronize batch input/output from all I/O units. Also, due to this, C
Compared to a method in which the PU inputs and outputs one I/O unit at a time, it is possible to further reduce the time difference between inputs and outputs for all I/Os.
【図1】本発明によるプログラマブルコントローラの要
部構成を示す実施例図。FIG. 1 is an embodiment diagram showing the main part configuration of a programmable controller according to the present invention.
【図2】従来のPCの要部構成を示すブロック図。FIG. 2 is a block diagram showing the main part configuration of a conventional PC.
1…一括入出力用モジュール
1−1…マイクロプロセッサ
1−2…バス権制御回路
1−3…マイクロプロセッサ用バスバッファ1−4…P
C−CPU用バスバッファ
1−5…デュアルボールメモリ
2…PC−CPU
3…CPUバス
4…I/Oバス
5…I/O
6…I/Oユニット
7…バスバッファモジュール1...Batch input/output module 1-1...Microprocessor 1-2...Bus control circuit 1-3...Bus buffer for microprocessor 1-4...P
C-CPU bus buffer 1-5...Dual ball memory 2...PC-CPU 3...CPU bus 4...I/O bus 5...I/O 6...I/O unit 7...Bus buffer module
Claims (2)
で接続した入出力ユニットと、該入出力モジュールに対
してデータの入出力を行うCPUモジュールを備えたプ
ログラマブルコントローラにおいて、該入出力ユニット
内の入出力モジュールに対しデータの入出力を実行する
マイクロプロセッサと、該CPUモジュールと該マイク
ロプロセッサの双方からアクセス可能なデュアルポート
メモリと、該CPUモジュールのアドレス、データバス
と該マイクロプロセッサのアドレス、データバスを該I
/Oバスに接続する各々のバッファ回路と、該I/Oバ
スのバス権を調停するバス権制御回路からなる一括入出
力用モジュールを設け、該CPUモジュールが入出力ユ
ニットの入出力モジュールに対しデータの入出力を行う
際に、該入出力ユニット内のデュアルポートメモリにデ
ータを一括入出力せしめ該入出力ユニット内のマイクロ
プロセッサにデュアルポートメモリと入出力モジュール
間でデータの入出力を実行させ、該CPUモジュールが
複数の入出力ユニットの入出力モジュールに対し高速に
データの入出力を行うことを特徴とするプログラマブル
コントローラ。Claim 1. A programmable controller comprising an input/output unit in which a plurality of input/output modules are connected via an I/O bus, and a CPU module that inputs/outputs data to/from the input/output module. a microprocessor that inputs and outputs data to and from an input/output module; a dual port memory that can be accessed by both the CPU module and the microprocessor; an address of the CPU module; a data bus and an address of the microprocessor; data bus
A collective input/output module is provided, consisting of each buffer circuit connected to the /O bus and a bus control circuit that arbitrates the bus right of the I/O bus, and the CPU module is connected to the input/output module of the input/output unit. When performing data input/output, the data is input/output in bulk to the dual port memory in the input/output unit, and the microprocessor in the input/output unit executes data input/output between the dual port memory and the input/output module. , A programmable controller characterized in that the CPU module inputs and outputs data at high speed to input/output modules of a plurality of input/output units.
より該一括入出力用モジュールに同時にデータの入出力
を開始させ、一括入出力の同期化を図ったことを特徴と
する請求項1記載のプログラマブルコントローラ。2. The programmable controller according to claim 1, wherein the batch input/output module simultaneously starts data input/output based on a startup command from the CPU module, thereby synchronizing the batch input/output. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3088149A JP2962431B2 (en) | 1991-04-19 | 1991-04-19 | Programmable controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3088149A JP2962431B2 (en) | 1991-04-19 | 1991-04-19 | Programmable controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04319703A true JPH04319703A (en) | 1992-11-10 |
JP2962431B2 JP2962431B2 (en) | 1999-10-12 |
Family
ID=13934880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3088149A Expired - Lifetime JP2962431B2 (en) | 1991-04-19 | 1991-04-19 | Programmable controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2962431B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187152A (en) * | 2008-02-05 | 2009-08-20 | Yokogawa Electric Corp | Programmable logic controller |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55118307U (en) * | 1979-02-15 | 1980-08-21 | ||
JPS6231339U (en) * | 1985-08-08 | 1987-02-25 | ||
JPS62158396U (en) * | 1986-03-31 | 1987-10-07 | ||
JPS63176228U (en) * | 1987-05-07 | 1988-11-15 | ||
JPS6451231U (en) * | 1987-09-24 | 1989-03-29 | ||
JPS6451232U (en) * | 1987-09-24 | 1989-03-29 | ||
JP3074424U (en) * | 1999-11-25 | 2001-01-19 | 四維企業股▲ふん▼有限公司 | Hobby adhesive tape |
-
1991
- 1991-04-19 JP JP3088149A patent/JP2962431B2/en not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55118307U (en) * | 1979-02-15 | 1980-08-21 | ||
JPS6231339U (en) * | 1985-08-08 | 1987-02-25 | ||
JPS62158396U (en) * | 1986-03-31 | 1987-10-07 | ||
JPS63176228U (en) * | 1987-05-07 | 1988-11-15 | ||
JPS6451231U (en) * | 1987-09-24 | 1989-03-29 | ||
JPS6451232U (en) * | 1987-09-24 | 1989-03-29 | ||
JP3074424U (en) * | 1999-11-25 | 2001-01-19 | 四維企業股▲ふん▼有限公司 | Hobby adhesive tape |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187152A (en) * | 2008-02-05 | 2009-08-20 | Yokogawa Electric Corp | Programmable logic controller |
Also Published As
Publication number | Publication date |
---|---|
JP2962431B2 (en) | 1999-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5870602A (en) | Multi-processor system with system wide reset and partial system reset capabilities | |
JPH06214945A (en) | Computer system and high-speed transfer method of information | |
JPH04319703A (en) | Programmable controller | |
JPH0546527A (en) | Dual port memory circuit | |
JPS60195661A (en) | Data processing system | |
JPS59229662A (en) | Common memory control circuit | |
JP2945525B2 (en) | Processor, memory, and data processing device | |
JPH0351943A (en) | Sharing system for high/low speed bus lines | |
JPS61256458A (en) | Information transfer system | |
JPS6370994A (en) | Semiconductor integrated circuit device | |
JPH07121483A (en) | Shared memory access control circuit | |
JPH0333951A (en) | Microcomputer system | |
JPS5868170A (en) | Multiprocessor system | |
JPS60159958A (en) | Data transfer controlling circuit | |
JPH05334234A (en) | High speed dma transferring device | |
JPS61120396A (en) | Microprocessor | |
JPH01287767A (en) | Control circuit for ram | |
JPS63168758A (en) | Multi-bus control system | |
JPH01287757A (en) | Connection system for storage device | |
JPS62282357A (en) | Request synchronizing system between memory controllers | |
JPH0711782B2 (en) | Micro program control system | |
JPS63307529A (en) | Inter-arithmetic processing unit communication control system | |
JPS6318454A (en) | Multiprocessor system | |
JPS63201810A (en) | Time system for information processing system | |
JPH0341547A (en) | Multiprocessor constitution system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070806 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080806 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090806 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090806 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100806 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100806 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110806 Year of fee payment: 12 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110806 Year of fee payment: 12 |