JPH06214620A - 入出力データ交換方式 - Google Patents
入出力データ交換方式Info
- Publication number
- JPH06214620A JPH06214620A JP648193A JP648193A JPH06214620A JP H06214620 A JPH06214620 A JP H06214620A JP 648193 A JP648193 A JP 648193A JP 648193 A JP648193 A JP 648193A JP H06214620 A JPH06214620 A JP H06214620A
- Authority
- JP
- Japan
- Prior art keywords
- data
- input
- transmission
- output data
- buffer
- 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
Landscapes
- Programmable Controllers (AREA)
Abstract
送最大データ数に制約されることなくデータの入出力が
できる入出力データ交換方式を実現する。 【構成】OS105は、出力データをI/Oメモリ10
2からI/Oイメージ領域103−Cへ転送する。フラ
グ106がオフなら送信バッファ103−Sの更新を行
わず、オンなら更新する。転送ポインタ107は今回読
み出す受信バッファアの先頭アドレス、書込ポインタ1
08は今回書き込む受信バッファの先頭アドレス、編集
ポインタ109は異常時にデータ編集する受信バッファ
の先頭アドレスをそれぞれ格納する。データ交換テーブ
ル110はI/O装置番号に対応するデータ用相対アド
レスを格納する。入出力データは、選択された先頭アド
レスに相対アドレスを加算したアドレスで入出力され
る。今回の伝送結果部が全て正常であれば、転送ポイン
タ107と書込ポインタ108の先頭アドレスを交換す
る。
Description
がシリアル伝送バスで接続されて構成されるプログラマ
ブルコントローラにおいて、シリアル伝送インタフェー
ス回路が一度に送出でき得る最大データ数を越える容量
を有するI/O装置と、中央制御部との入出力データ交
換方法に関する。
(以下、PCと称する)の構成は、図5に示すように、
演算および制御を行う中央制御部501と、その中央制
御部501の演算結果および制御に基づいて、複数の被
制御装置に対して入出力データを入出力するI/O部5
20とに分かれている。これらI/O部520と中央制
御部501とは、シリアル伝送バス510を介して接続
されている。
ムにより動作する演算部504、その演算部504とI
/O部520間で入出力されるデータを記憶するI/O
メモリ502、そのI/Oメモリ502が入出力するデ
ータを一時的に蓄えるI/Oバッファ503、及びその
I/Oバッファ503をシリアル伝送バス510を介し
てI/O部520に接続するためのシリアル伝送インタ
フェース回路540からなっている。
装置に対して入出力データを入出力するI/O装置(イ
ンタフェース)520−1、520−2、・・・520
−nからなる。それらのI/O装置520−i(i=
1、2・・・n、以下同様)はそれぞれ局番設定器53
0−iを備え、これら局番設定器530−iには各I/
O装置に付与される装置番号が設定される。さらに、I
/O装置520−iは、それぞれシリアル伝送インタフ
ェース回路540−iを備えている。
インタフェース540とI/O部520のシリアル伝送
バスインタフェース540−1、540−2・・・54
0−nとは、シリアル伝送バス510を介して接続され
ている。
ス510、およびシリアル伝送インタフェース回路54
0を介してI/O部520の各I/O装置520−iか
ら入力するデータを、I/Oバッファ503およびI/
Oメモリ502を介して演算部504に入力し、その入
力データを用いて演算をなし、その演算結果をI/Oメ
モリ502、I/Oバッファ503、シリアル伝送イン
タフェース回路540、およびシリアル伝送バス510
を介してI/O部520のI/O装置520−iに出力
することにより、それらのI/O装置520−iに接続
される被制御装置を制御するようになっている。
な被制御装置に運用できるように多種用意されており、
またI/O装置520−iの入出力データ容量は、それ
ぞれあらかじめ決められている。そこで、中央制御部5
01はI/O装置520−iの持つ入出力データ容量を
知るため、I/O装置520−iに対して入出力データ
容量を問い合わせ、その後、I/O装置520−iの持
つ容量に合わせて固定長の入出力データ伝送を行うよう
になっている。
ータとシリアル伝送バス510上の伝送データの概念を
示す模式的図である。同図に示す例では、局番設定器5
30−1には装置番号“X”、局番設定器530−2に
は装置番号“Y”、局番設定器530−nには装置番号
“Z”が設定されている。
モリ502と送信バッファ503−S及び受信バッファ
503−Rとを仲介するI/Oイメージ領域503−
C、出力データをI/O装置520−iへ送出するため
の送信バッファ503−S、及びI/O装置520−i
から送出される入力データが格納される受信バッファ5
03−Rの3つの部分で構成されている。
O装置520−iにそれぞれ対応する領域を有してお
り、これらの各領域は、コマンド部、送信データ数部、
装置番号部、出力データ部で構成される。各領域の装置
番号部には、I/O装置520−iに対応して、それぞ
れ装置番号「X」,「Y」・・・「Z」が格納されてい
る。
O装置520−iにそれぞれ対応する領域を有してお
り、これらの各領域は、伝送結果部、受信データ数部、
装置番号部、入力データ部で構成される。これら各領域
の装置番号部の装置番号部にも、I/O装置520−i
に対応して、それぞれ装置番号「X」,「Y」・・・
「Z」が格納されている。
テム(以下、OSと称する)505がシリアル伝送イン
タフェース回路540に伝送指令を行うと、シリアル伝
送インタフェース回路540は、送信バッファ503−
Sのコマンド部が「実行」であるとシリアル伝送を実行
し、送信バッファ503−Sのコマンド部が「停止」と
なるまで連続して伝送を行い、上記「停止」をフェッチ
することにより、OS505へ伝送の終了を通知するよ
うになっている。
ェース回路540は、伝送バッファ503−Sの先頭ア
ドレスのコマンド部が「実行」であると、次のアドレス
に示される送信データ数部のデータ数分、その次のアド
レスから格納されている送信データ(装置番号と出力デ
ータ)を、シリアル伝送バス510上へ伝送データの集
合(以下、伝送フレームと称する)として送出する。
初の送出データ(装置番号「X」と出力データ)を、伝
送フレーム601−1としてI/O装置520−1に伝
送する。I/O装置520−1は、伝送フレーム601
−1を受信すると、直ちに中央制御部501への送出デ
ータ(装置番号「X」と入力データ)の伝送フレーム6
11−1を送出する。この伝送データ交換方式は、一般
にポーリング・セフティング方式として知られている。
は、I/O装置520−1が送出した伝送フレーム61
1−1を受信すると、受信バッファ503−Rの対応す
る領域へ受信データを書き込むと共に、受信データ数と
伝送結果とを所定の場所へ格納する。
40は、送信バッファ503−Sの次のコマンド部をフ
ェッチし、これに基づいて、伝送フレーム601−2
(装置番号「Y」と出力データ)をI/O装置520−
2に伝送し、I/O装置520−2は、直ちに送出デー
タ(装置番号「Y」と入力データ)の伝送フレーム61
1−2を送出し、シリアル伝送インタフェース回路54
0は、伝送フレーム611−2を受信すると、受信バッ
ファ503−Rの対応する所定の領域へ受信データと受
信データ数と伝送結果とを格納する。
nまで同様に実行される。こうして、コマンド部が「停
止」となるまで伝送を繰り返す。OS505は、シリア
ル伝送インタフェース回路540に伝送指令を行ってか
ら、伝送の終了が通知されるまで、シリアル伝送情報処
理装置に一切関与しない。また、シリアル伝送インタフ
ェース回路540および540−iは、一度に送出し得
る最大データ数があらかじめ決められている。
ス回路540に伝送指令を行うタイミングと、演算部5
04が演算を行うタイミングは、それぞれ非同期であ
る。したがって、演算部504が演算時に使用する入力
データの入力タイミング、及びその演算結果の出力デー
タをI/O装置520−iへ伝送する出力タイミングに
は、いずれもシリアル伝送インタフェース回路540と
同期をとることが要求される。
演算に同期して、シリアル伝送インタフェース回路54
0に出力データの伝送指令を行う直前に、その出力デー
タをI/Oイメージ領域503−Cから送信バッファ5
03−Sに転送し、また、伝送終了時には、受信バッフ
ァ503−Rの入力データをI/Oイメージ領域503
−Cへ転送している。
の入出力データはI/Oメモリ502とで交換される。
OS505が、送信バッファ503−Sおよび受信バッ
ファ503−RのデータをI/Oイメージ領域503−
C間で転送しているときは、I/Oメモリ502とI/
Oイメージ領域503−Cのデータ交換は行わない。こ
のようにして、入出力データの同期を保証するようにし
ている。
換方式においては、シリアル伝送インタフェース回路5
40および540−iが一度に送出できる最大データ数
が予め決っていた。
た従来の入出力データ交換方式では、演算部504のP
C内におけるユーザプログラムによる演算周期、すなわ
ちOS505がI/Oメモリ502とI/Oイメージ領
域503−C間で入出力データ交換を行う周期が、シリ
アル伝送の周期よりも大きくなった場合でも、OS50
5はシリアル伝送開始毎にI/Oイメージ領域503−
Cの出力データを送信バッファ503−Sへ転送し、伝
送終了毎に、受信バッファ503−Rから入力データを
I/Oイメージ領域503−Cへ転送するということを
行って、無駄なデータ転送処理が行われることになるた
めOS505のオーバヘッドとなる問題があった。
40および540−iが一度に送出できる最大データ数
が決っているため、この最大データ数を越える入出力デ
ータ容量を持ったI/O装置を設計することができず、
設計システムの規模に制約をうけるという問題もあっ
た。
でき、且つ決められた伝送最大データ数に制約されるこ
となくデータの入出力ができる入出力データ交換方式を
実現することである。
を演算する中央制御部とそれぞれ装置番号を有する複数
のI/O部とをシリアル伝送バスにより接続して構成さ
れるプログラマブルコントローラの入出力データ交換方
式を前提とする。
れる入出力データを格納するI/Oメモリと、このI/
Oメモリと複数のI/O部間における入出力データの伝
送をシリアル伝送バスを介して仲介するシリアル伝送イ
ンタフェース回路と、このシリアル伝送インタフェース
回路とI/Oメモリ間に接続され、シリアル伝送インタ
フェース回路を介してI/Oメモリと複数のI/O部間
において行われる入出力データの伝送結果が全て正常で
あるか否かを示す総括伝送結果及び複数のI/O部から
の入力データを格納する3個の受信バッファと、複数の
I/O部からの入力データをI/Oメモリにより読み出
される受信バッファの先頭アドレスを示す第1のポイン
タと、複数のI/O部からの入力データをシリアル伝送
インタフェース回路により書き込まれる受信バッファの
先頭アドレスを示す第2のポインタと、総括伝送結果が
異常であったとき複数のI/O部の入力データを編集す
る受信バッファの先頭アドレスを示す第3のポインタ
と、複数のI/O部に対応する受信バッファの相対アド
レス及びI/Oメモリの相対アドレス並びに入出力デー
タ容量を記憶するI/Oデータ交換テーブルと、シリア
ル伝送インタフェース回路に接続され、I/Oメモリの
出力データをシリアル伝送インタフェース回路に出力す
る送信バッファと、送信バッファにより出力されるべき
出力データを一時的に格納する出力イメージ領域と、出
力イメージ領域に格納された出力データが送信バッファ
へ出力されたか否かを示すフラグ領域とを備える。
伝送インタフェース回路は、演算される入出力データを
格納するI/Oメモリと複数のI/O部間における入出
力データの伝送をシリアル伝送バスを介して仲介する。
3個の受信バッファは、上記入出力データの伝送結果が
全て正常であるか否かを示す総括伝送結果及び複数のI
/O部からの入力データを格納する。
れる受信バッファの先頭アドレスを示し、第2のポイン
タは、入力データを書き込まれる受信バッファの先頭ア
ドレスを示し、第3のポインタは、上記の総括伝送結果
が異常であったとき複数のI/O部の入力データを編集
する受信バッファの先頭アドレスを示す。
O部に対応する受信バッファの相対アドレス及びI/O
メモリの相対アドレス並びに入出力データ容量を記憶す
る。送信バッファは、I/Oメモリの出力データをシリ
アル伝送インタフェース回路に出力し、出力イメージ領
域は、送信バッファにより出力されるべき出力データを
一時的に格納し、フラグ領域は、出力イメージ領域に格
納された出力データが送信バッファへ出力されたか否か
を示す。
えば、シリアル伝送インタフェース回路が一度に送出し
得る最大データ数を越える容量を有する複数のI/O部
の入出力データに対して、伝送データの伝送順序を示す
シーケンシャル番号及び伝送データの分割順序を示すペ
ージ番号のデータを付与し、且つそれらシーケンシャル
番号及びページ番号のデータを格納する3個の受信バッ
ファの相対アドレステーブルを備え、それらのページ順
に、上記シリアル伝送インタフェース回路により仲介さ
れる送信バッファからの出力データの伝送及び複数のI
/O部からの入力データの伝送を交互に行う。
について説明する。図1は、本発明の実施例に係わる中
央制御部の全体構成を示すブロック図である。同図にお
いて、中央制御部は、不図示のシリアル伝送インタフェ
ース回路140及びシリアル伝送バス110を介して、
これも不図示の複数の被制御装置に対して入出力データ
を入出力するI/O部120と接続している。
同様に(図5参照)、複数の被制御装置に対して入出力
データを入出力するI/O装置120−i(i=1、2
・・・n、以下同様)からなり、それらI/O装置12
0−iは局番設定器130−i及びシリアル伝送インタ
フェース回路140−iをそれぞれ備え、それらの局番
設定器130−iには、各I/O装置120−iに付与
される装置番号が設定される。
ログラムにより動作する演算部104、その演算部10
4とI/O部120間で入出力されるデータを記憶する
I/Oメモリ102、そのI/Oメモリ102が記憶す
る送信データを一時的に記憶するI/Oイメージ領域1
03−C、そのI/Oイメージ領域103−Cの送信デ
ータをシリアル伝送インタフェース回路140に出力す
る送信バッファ103−S、上記I/Oメモリ102と
I/Oイメージ領域103−C間の出力データの転送条
件を記憶するフラグ領域106を備える。
ンタフェース回路140を介して複数のI/O装置12
0−iから入力する受信データを格納する3個の受信バ
ッファ103−R−X、103−R−Y及び103−R
−Z、I/O装置120−iから受信した入力データを
I/Oメモリ102へ転送する受信バッファ103−R
−X(103−R−X、103−R−Y又は103−R
−Z)の先頭アドレスを記憶する転送ポインタ領域10
7、I/O装置120−iから受信したデータが書き込
まれる受信バッファ103−Rの先頭アドレスを記憶す
る書込ポインタ領域108、並びに受信データ異常時の
入力データが編集される受信バッファ103−Rの先頭
アドレスを記憶する編集ポインタ領域109を備えてい
る。
20−iの送受信データの伝送順位(装置番号)にそれ
ぞれ対応する受信バッファ103−R−X、103−R
−Y及び103−R−Zの相対アドレスとI/Oメモリ
102の相対アドレス及び各I/O装置120−iの入
出力データ容量を記憶するI/Oデータ交換テーブル1
10を備えている。
/Oメモリ102に入力される入力データを用いて演算
をなし、その演算結果を、I/Oメモリ102、I/O
イメージ領域103−C、送信バッファ103−S、シ
リアル伝送インタフェース回路140、およびシリアル
伝送バス110を介して、I/O部120のI/O装置
120−iに出力することにより、それらのI/O装置
120−iに接続される被制御装置を制御する。
Sの出力データの構成及び受信バッファ103−Rの入
力データの構成を示す。同図に示すように、送信バッフ
ァ103−S及び受信バッファ103−Rには、装置番
号「j」、「k」、「m」の順に、I/O装置120−
iの入出力データが格納されている。
20−iのデータ容量がシリアル伝送インタフェース回
路140の一度に送出し得る最大データ数を越えてい
る。なお、この例では、シリアル伝送インタフェース回
路140が一度に送出し得る最大データ数を255バイ
トとする。そして、装置番号「k」のI/O装置120
−iのデータ容量は、出力データ量が500バイト、入
力データ量が400バイトとする。また、この場合の出
力データ及び入力データの分割基準を220バイトとす
る。
/O装置120−i等のデータ容量は上記シリアル伝送
インタフェース回路140が一度に送出し得る最大デー
タ数の255バイトより少ないものとする。したがっ
て、これらのI/O装置120−iに対応する送受信バ
ッファ内における入出力データの構成は図6に示した通
常の送受信バッファにおける入出力データの構成と同様
である。
ッファ103−R内における装置番号「k」に対応する
入出力データの構成について説明する。図2に示すよう
に、OS105によって作成される送信バッファ103
−Sにおける装置番号「k」への出力データS1、S2
及びS3は、装置番号部と出力データ部間に、シーケン
シャル番号部とページ番号部が挿入されて構成される。
シーケンシャル番号部には、伝送順位を示す値、すなわ
ち、OS105によるシリアル伝送インタフェース回路
140への伝送司令毎に「1」インクリメントされた値
が書き込まれる。また、ページ番号部には、ページ番号
及び総ページ数が書き込まれる。
同図に示すように、ページ番号部30は、1バイト(8
ビット)から成り、上位桁4ビットがベージ番号、下位
桁4ビットが総ページ数を表す。
のいずれか容量の大きい方のバイト数を220バイトで
割って得られる商、又は余りがある場合は商に「1」加
算した値が書き込まれる。本例においては、出力データ
(500バイト)の方が入力データ(400バイト)よ
りも大きいので、出力データバイト数÷220バイト、
すなわち500バイト÷220バイトの商「2」に、剰
余があるため「1」加算して得られる「3」が総ページ
数として書き込まれる。ページ番号には、端数を含む2
20バイト毎の区切り順位「1」、「2」、「3」が書
き込まれる。図2に示すページ番号部には、ページ番号
と総ページ数が「1/3」、「2/3」、「3/3」で
表されている。
103−Rにおける装置番号「k」からの入力データR
1、R2及びR3も、同様に装置番号部と出力データ部
間に、シーケンシャル番号部とページ番号部が挿入され
て構成される。本例では、入力データは、400バイト
であるため、2ページ目で入力データが終了しており、
最終ページである「3/3」ページの入力データの構成
には入力データ部は存在しない。
動作を再び図1を用いて説明する。同図において、OS
105は、演算部104の演算周期に同期して、I/O
装置120−iへ送出する出力データをI/Oメモリ1
02からI/Oイメージ領域103−Cへ転送する。こ
のとき、OS105は、I/Oデータ交換テーブル11
0に格納されている出力データ用相対アドレスを読み出
し、その読み出した相対アドレスを、I/Oメモリ10
2の読み出し先頭アドレスに加算してI/Oメモリ10
2の出力データのアドレスを算出する。
ル伝送インタフェース回路140へ伝送司令を行ってい
る。そして、この伝送司令を行う直前に、OS105
は、送信バッファ103−Sに出力する出力データの作
成準備を開始する。
イメージ領域103−Cへ出力データを転送したことを
示すフラグ領域106がオフ(「0」)になっている場
合は、送信バッファ103−Sの更新を行わないまま、
シリアル伝送インタフェース回路140へ伝送司令を行
う。したがって、シリアル伝送インタフェース回路14
0は、前回の周期ですでに作成されている送信バッファ
103−Sの内容を、シリアル伝送バス110を介して
I/O部120のI/O装置120−iに送出する。
(「1」)になっている場合には、I/Oイメージ領域
103−Cのデータを送信バッファ103−Sの出力デ
ータ領域へ転送してから、シリアル伝送インタフェース
回路140へ伝送司令を行う。したがって、この場合
は、シリアル伝送インタフェース回路140は、送信バ
ッファ103−Sの更新された新規の出力データを送出
する。
力データの送出を行い、他方では、前回の処理周期(以
下、単に前回周期の称する)でI/O装置120−iか
ら伝送されてすでに受信バッファ103−R−Xに格納
されている入力データをI/Oメモリ102へ転送す
る。
域107に格納されている受信バッファの先頭アドレス
(例えば「X」)と、I/Oデータ交換テーブル110
に格納されている入力データ用相対アドレス(例えば
「i」)をそれぞれを読み出し、それら読み出した先頭
アドレス「X」に相対アドレス「i」を加算して、I/
Oメモリ102へ転送すべき入力データを格納している
受信バッファア103−R−Xのアドレス「X+i」を
算出する。
装置120−iから伝送されてくる入力データを、受信
バッファ103−R−Yに格納する。このとき、OS1
05は、書込ポインタ領域108に格納されている受信
バッファの先頭アドレス(例えば「Y」)と、I/Oデ
ータ交換テーブル110に格納されている入力データ用
相対アドレス「i」をそれぞれを読み出し、それら読み
出した先頭アドレス「Y」に相対アドレス「i」を加算
して、入力データを書き込むべき受信バッファア103
−R−Yのアドレス「Y+i」を算出する。
ータをI/Oメモリ102に格納し、他方では今回周期
の出力データを送出すると共に今回周期の入力データを
受信する。
タフェース回路140から伝送完了を通知されると、今
回周期の伝送状態をチェックする。そして、図2に示す
受信バッファ103−R内の統括伝送結果部が正常であ
れば、さらにデータ容量の大きな装置番号「k」の入力
データをチェックする。このチェック処理は、受信バッ
ファ103−R内の装置番号部の装置番号「k」に基づ
いて、I/Oデータ交換テーブル110内のシーケンシ
ャル番号部相対アドレスにより、装置番号「k」の出力
データと入力データを対応させ、受信バッファ103−
Rの入力データの各ページR1、R2及びR3のシーケ
ンシャル番号が送信時の出力データのページS1、S2
及びS3のシーケンシャル番号とそれぞれ同一であるか
否か、及び各ページS1、S2及びS3のページ番号部
がページ順に書き込まれているか否かを判別する処理で
ある。
転送ポインタ領域107に格納されている内容と書込ポ
インタ領域108に格納されている内容とを交換する。
すなわち、この結果、転送ポインタ領域107には先頭
アドレス「Y」か格納され、書込ポインタ領域108に
は先頭アドレス「X」が格納される。
インタ領域107の先頭アドレス「Y」によって指定さ
れることにより受信バッファ103−R−Yが転送用の
受信バッファとなり、その受信バッファ103−R−Y
に今回周期で書き込まれている最新の入力データがI/
Oメモリ102に転送される。これにより、I/Oメモ
リ102に最新入力データが得られる。
今回周期で入力データの転送を終了しており、その受信
バッファ103−R−Xが次回周期において書込ポイン
タ領域107の先頭アドレス「X」によって指定される
ことにより次回周期では書き込み用の受信バッファとな
り、I/O装置120−iから入力される新たな入力デ
ータが受信バッファ103−R−Xに書き込まれる。
周期毎に転送ポインタ領域107に格納されていた先頭
アドレスと書込ポインタ領域108に格納されていた先
頭アドレスとを交換するだけで、I/Oメモリ102
は、I/Oイメージ領域103−Cを介することなく、
受信バッファから直接入力データを読み出すことができ
る。
−Rの入力データの構成は、送信バッファ103−Sか
らの送信に対して、各I/O装置120−iが正常に応
答した場合の構成例である。
合の入力データの一例を示す。同図の例では、今回周期
で、受信バッファ103−R−Xに受信した装置番号
「j」の入力データが異常であり、また、装置番号
「k」の入力データのページ番号部が、本来「1/
3」、「2/3」及び「3/3」である入力データを受
信すべきところ、「1/3」、「1/3」及び「3/
3」と受信した場合を示している。
では、書き込み用の受信バッファとなっていたものであ
り、書込ポインタ領域108には現在「X」が格納され
ている。したがって、転送ポインタ領域107には
「Y」が格納されている。つまり、受信バッファ103
−R−Yは、今回周期では、転送ポインタ領域107の
「Y」によって指定されていたものであり、転送用の受
信バッファになっている。すなわち、受信バッファ10
3−R−Yは、前回周期で書き込まれた入力データがチ
ェックによる判別で全て正常であったことから、ポイン
タの先頭アドレスの交換が行われて前回周期の書き込み
用受信バッファから今回周期の転送用受信バッファにな
っている。
あった場合の処理について説明する。まず、同図に示す
装置番号“j”と“k”の異常である入力データについ
ては、転送ポインタ領域107の先頭アドレス「Y」で
指定されている今回周期の転送用受信バッファ103−
R−Yの入力データ部のデータ、すなわち前回周期の正
常な入力データを、編集ポインタ領域109の先頭アド
レス(例えば「Z」)で指定される編集用の受信バッフ
ァ103−R(本例では103−R−Z)に、I/Oデ
ータ交換テーブル110内の相対アドレスに基づいてコ
ピーする。
“m”の入力データについては、書込ポインタ領域10
7の先頭アドレス「X」で指定される今回周期の書込用
受信バッファ103−R−Xの入力データ部のデータ、
すなわち今回周期の正常な入力データを、これも編集ポ
インタ領域109の先頭アドレス「Z」で指定される編
集用の受信バッファ103−R−Zに、I/Oデータ交
換テーブル110内の相対アドレスに基づいてコピーす
る。
R−Zには、伝送が異常であった装置番号“j”と
“k”の入力データについては、異常となる直前の最新
入力データが書き込まれ、伝送が正常であった装置番号
“m”の入力データについては、最新入力データが書き
込まれる。
ドレス「Y」と、編集ポインタ領域109の先頭アドレ
ス「Z」を交換して、転送ポインタ領域107に先頭ア
ドレス「Z」を設定することにより、上述した装置番号
“j”と“k”の入力データについては、異常となる直
前の最新入力データ、伝送が正常であった装置番号
“m”の入力データについては、最新入力データが、演
算部104に得られる。
入出力容量がシリアル伝送インタフェース回路の一度に
送出し得る最大データ数の範囲を越えるI/O装置のデ
ータを分割して伝送でき、ページ番号とシーケンシャル
番号をチェックするのみで、分割された入力データと出
力データの同時性が確実に保証されるので、中央制御部
のI/Oメモリ容量の範囲内であれば、被制御装置に対
応する小容量から大容量までの各種I/O装置を、何ら
の制約を受けることなく容易に設計に取り入れることが
可能となり、したがって、PCの運用効率が向上する。
Oイメージ領域へ転送する必要が無く、出力データのみ
I/Oイメージ領域へ一時的に転送すればよいので、中
央制御部のオーバヘッドを大幅に削減でき、したがっ
て、他のOS処理、例えば、中央制御部内のシーケンス
プログラムの読みだし等のマンマシンインタフェースが
高速に行なえるようになり、PCの運用効率がさらに向
上する。
ック図である。
データの構成を示す図である。
ータに設けられるページ番号部の構成を示す図である。
する図である。
す図である。
ータ交換方法を説明する図である。
信バッファ 105 OS 106 フラグ領域 107 転送ポインタ領域 108 書込ポインタ領域 109 編集ポインタ領域 110 I/Oデータ変換テーブル 30 ページ番号部 S1,S2,S3 分割出力デー
タのページ R1,R2,R3 分割入力データのページ
Claims (2)
- 【請求項1】 入出力データを演算する中央制御部とそ
れぞれ装置番号を有する複数のI/O部とをシリアル伝
送バスにより接続して構成されるプログラマブルコント
ローラの入出力データ交換方式において、 前記演算される入出力データを格納するI/Oメモリ
と、 該I/Oメモリと前記複数のI/O部間における入出力
データの伝送を前記シリアル伝送バスを介して仲介する
シリアル伝送インタフェース回路と、 該シリアル伝送インタフェース回路と前記I/Oメモリ
間に接続され、前記シリアル伝送インタフェース回路を
介して前記I/Oメモリと前記複数のI/O部間におい
て行われる入出力データの伝送結果が全て正常であるか
否かを示す総括伝送結果及び前記複数のI/O部からの
入力データを格納する3個の受信バッファと、 前記複数のI/O部からの入力データを前記I/Oメモ
リにより読み出される前記受信バッファの先頭アドレス
を示す第1のポインタと、 前記複数のI/O部からの入力データを前記シリアル伝
送インタフェース回路により書き込まれる前記受信バッ
ファの先頭アドレスを示す第2のポインタと、 前記総括伝送結果が異常であったとき前記複数のI/O
部の入力データを編集する前記受信バッファの先頭アド
レスを示す第3のポインタと、 前記複数のI/O部に対応する前記受信バッファの相対
アドレス及び前記I/Oメモリの相対アドレス並びに入
出力データ容量を記憶するI/Oデータ交換テーブル
と、 前記シリアル伝送インタフェース回路に接続され、前記
I/Oメモリの出力データを前記シリアル伝送インタフ
ェース回路に出力する送信バッファと、 該送信バッファにより出力されるべき出力データを一時
的に格納する出力イメージ領域と、 前記出力イメージ領域に格納された出力データが前記送
信バッファへ出力されたか否かを示すフラグ領域と、 を備えたことを特徴とする入出力データ交換方式。 - 【請求項2】 前記シリアル伝送インタフェース回路が
一度に送出し得る最大データ数を越える容量を有する前
記複数のI/O部の入出力データに対して、伝送データ
の伝送順序を示すシーケンシャル番号及び伝送データの
分割順序を示すページ番号のデータを付与し、且つそれ
らシーケンシャル番号及びページ番号のデータを格納す
る前記3個の受信バッファの相対アドレステーブルを備
え、それらのページ順に、前記シリアル伝送インタフェ
ース回路により仲介される前記送信バッファからの出力
データの伝送及び前記複数のI/O部からの入力データ
の伝送を交互に行うことを特徴とする請求項1記載の入
出力データ交換方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP00648193A JP3265026B2 (ja) | 1993-01-19 | 1993-01-19 | 入出力データ交換方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP00648193A JP3265026B2 (ja) | 1993-01-19 | 1993-01-19 | 入出力データ交換方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH06214620A true JPH06214620A (ja) | 1994-08-05 |
| JP3265026B2 JP3265026B2 (ja) | 2002-03-11 |
Family
ID=11639671
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP00648193A Expired - Fee Related JP3265026B2 (ja) | 1993-01-19 | 1993-01-19 | 入出力データ交換方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3265026B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011215821A (ja) * | 2010-03-31 | 2011-10-27 | Keyence Corp | プログラマブルコントローラ、データ通信方法及びコンピュータプログラム |
-
1993
- 1993-01-19 JP JP00648193A patent/JP3265026B2/ja not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011215821A (ja) * | 2010-03-31 | 2011-10-27 | Keyence Corp | プログラマブルコントローラ、データ通信方法及びコンピュータプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3265026B2 (ja) | 2002-03-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3645281B2 (ja) | 共用メモリを有するマルチプロセッサ・システム | |
| US5031091A (en) | Channel control system having device control block and corresponding device control word with channel command part and I/O command part | |
| EP0451516B1 (en) | Improved SCSI device in a small computer system | |
| JPH01502708A (ja) | 情報伝達方法とその装置 | |
| US5640602A (en) | Transferring digital data in units of 2 bytes to increase utilization of a 2-byte-wide bus | |
| US4417303A (en) | Multi-processor data communication bus structure | |
| EP0125044B1 (en) | Microcomputer with interprocess communication | |
| US7035956B2 (en) | Transmission control circuit, reception control circuit, communications control circuit, and communications control unit | |
| JPS63255760A (ja) | 制御システム | |
| JPH06214620A (ja) | 入出力データ交換方式 | |
| JPH06274463A (ja) | データ通信システム | |
| JP3399776B2 (ja) | コンピュータおよびコンピュータにおける周辺デバイス制御データの転送方法 | |
| JP3293838B2 (ja) | データ転送方式 | |
| JP2000172307A (ja) | プロセスデータ収集装置の更新方法 | |
| JP2002341907A (ja) | 高炉設備プログラムロジックコントローラにおけるデータ送受信方法 | |
| JP2821053B2 (ja) | ネットワークシステム | |
| JPH09307574A (ja) | 二重化コントローラ用ネットワークシステム | |
| JP3077992B2 (ja) | データ伝送装置 | |
| JP2980163B2 (ja) | データ転送方式 | |
| RU1807495C (ru) | Устройство дл сопр жени процессоров | |
| JP3127939B2 (ja) | イベント情報伝送装置 | |
| JPH10320345A (ja) | バスコントローラ | |
| JPH01272339A (ja) | サイクリツクデータ伝送方式 | |
| JPH1029477A (ja) | 電子制御装置及びその制御方法 | |
| JPS63227149A (ja) | ル−プ状通信システムにおける通信制御方法 |
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: 20011218 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071228 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081228 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081228 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091228 Year of fee payment: 8 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| 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: 20091228 Year of fee payment: 8 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |