JPH03250968A - 入出力機器 - Google Patents
入出力機器Info
- Publication number
- JPH03250968A JPH03250968A JP2048668A JP4866890A JPH03250968A JP H03250968 A JPH03250968 A JP H03250968A JP 2048668 A JP2048668 A JP 2048668A JP 4866890 A JP4866890 A JP 4866890A JP H03250968 A JPH03250968 A JP H03250968A
- Authority
- JP
- Japan
- Prior art keywords
- communication
- buffer
- communication means
- data
- main
- 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
- 238000004891 communication Methods 0.000 claims abstract description 421
- 239000000872 buffer Substances 0.000 claims abstract description 180
- 238000000034 method Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000009191 jumping Effects 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 101100524639 Toxoplasma gondii ROM3 gene Proteins 0.000 description 1
- 238000003287 bathing Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Information Transfer Systems (AREA)
- Storing Facsimile Image Data (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明は、各種プリンタ、イメージスキャナ。
デジタル複写機等の入出力機器に関し、特にそれぞれ異
なる外部装置との通信を司る複数の通信手段を備えた入
出力機器に関する。
なる外部装置との通信を司る複数の通信手段を備えた入
出力機器に関する。
例えば、プリンタやイメージスキャナのような入出力機
器においては、オフィスコンピュータ。
器においては、オフィスコンピュータ。
パーソナルコンピュータ、ワードプロセッサ、データ処
理装置2画像処理装置等のいずれのホストコンピュータ
(外部装置)とも接続可能にするために、R3232C
及びセントロニクス社準拠等の複数のインタフェース回
路(通信手段)を備えたものがある。
理装置2画像処理装置等のいずれのホストコンピュータ
(外部装置)とも接続可能にするために、R3232C
及びセントロニクス社準拠等の複数のインタフェース回
路(通信手段)を備えたものがある。
このような入出力機器においては、各インタフェース回
路にそれぞれ異なるホストコンピュータが接続されてい
ても、それらと自由に通信できようにはなっておらず、
スイッチ等によりインタフェース回路の切り替えを行な
うことにより、いずれか1台の外部装置とのみ通信可能
にしている。
路にそれぞれ異なるホストコンピュータが接続されてい
ても、それらと自由に通信できようにはなっておらず、
スイッチ等によりインタフェース回路の切り替えを行な
うことにより、いずれか1台の外部装置とのみ通信可能
にしている。
したがって、この種の入出力機器を複数の外部装置が共
有して使用するためには、専用のインタフェース回路切
替装置が必要だった。
有して使用するためには、専用のインタフェース回路切
替装置が必要だった。
そこで、近年、そのような不都合を解消すべく、いずれ
のインタフェース回路においても外部装置との通信がな
されていない時には各インタフェース回路を全て通信可
能状態にしておき、いずれかのインタフェース回路によ
って外部との通信が開始されると、そのインタフェース
回路以外の各インタフェース回路を通信不可能状態にし
、外部装置との通信を開始したインタフェース回路にお
ける通信が終了した時に、通信不可能状態にあったイン
タフェース回路を通信可能状態にする手段を備えた入出
力機器が提案されている(例えば特願平1−11547
2号記載)。
のインタフェース回路においても外部装置との通信がな
されていない時には各インタフェース回路を全て通信可
能状態にしておき、いずれかのインタフェース回路によ
って外部との通信が開始されると、そのインタフェース
回路以外の各インタフェース回路を通信不可能状態にし
、外部装置との通信を開始したインタフェース回路にお
ける通信が終了した時に、通信不可能状態にあったイン
タフェース回路を通信可能状態にする手段を備えた入出
力機器が提案されている(例えば特願平1−11547
2号記載)。
ところで、このような入出力機器では、複数のインタフ
ェース回路が各ホストコンピュータからデータを同時に
受信した時には、それらのデータを同時に入力バッファ
に取り込んで処理することができないことから、各イン
タフェース回路に対して使用優先順位を割り当てている
。
ェース回路が各ホストコンピュータからデータを同時に
受信した時には、それらのデータを同時に入力バッファ
に取り込んで処理することができないことから、各イン
タフェース回路に対して使用優先順位を割り当てている
。
そのため、例えば2つのインタフェース回路が同時にデ
ータを受信すると、そのうち優先度の高いインタフェー
ス回路を選択し、他方のインタフェース回路を通信不可
能状態する。
ータを受信すると、そのうち優先度の高いインタフェー
ス回路を選択し、他方のインタフェース回路を通信不可
能状態する。
その際、通信不可能状態にされたインタフェース回路は
、最初の受信データを内部バッファに記憶保持する。な
お、通常のインタフェース回路では1つのデータ(例え
ば1バイト分)を記憶保持可能な機能を備えている。
、最初の受信データを内部バッファに記憶保持する。な
お、通常のインタフェース回路では1つのデータ(例え
ば1バイト分)を記憶保持可能な機能を備えている。
しかしながら、このような入出力機器においては、通信
不可能状態にされたインタフェース回路が上述したよう
に最初のデータを内部バッファに記憶保持した後、通信
できない旨を接続されているホストコンピュータに知ら
せる前に、そのホストコンピュータが次のデータを送信
してしまうと、通信不可能状態のインタフェース回路は
そのデータを受信することになるが、既に内部バッファ
が使用されているためにそのデータを保持することがで
きず、データが失われるという問題があった。
不可能状態にされたインタフェース回路が上述したよう
に最初のデータを内部バッファに記憶保持した後、通信
できない旨を接続されているホストコンピュータに知ら
せる前に、そのホストコンピュータが次のデータを送信
してしまうと、通信不可能状態のインタフェース回路は
そのデータを受信することになるが、既に内部バッファ
が使用されているためにそのデータを保持することがで
きず、データが失われるという問題があった。
例えば、プリンタでそのようなデータロスが起こると、
正しい印字結果が得られない。
正しい印字結果が得られない。
そこで、このようなデータロスを避けるために、各イン
タフェース回路毎に上記入力バッファと同等な入力バッ
ファを設けることが考えられるが、そのようにすると入
力バッファが幾つも必要になるので、メモリを無駄に使
用することになる。
タフェース回路毎に上記入力バッファと同等な入力バッ
ファを設けることが考えられるが、そのようにすると入
力バッファが幾つも必要になるので、メモリを無駄に使
用することになる。
入力バッファ内のデータを処理するマイクロコンピュー
タは、そのメモリを作業領域として使用しているため、
入力バッファの増設により多くのメモリが使用されると
処理速度が低下する。
タは、そのメモリを作業領域として使用しているため、
入力バッファの増設により多くのメモリが使用されると
処理速度が低下する。
この発明は上記の点に鑑みてなされたものであり、メモ
リを無駄に使用することなく、データロスを解消できる
ようにすることを目的とする。
リを無駄に使用することなく、データロスを解消できる
ようにすることを目的とする。
この発明は上記の目的を達成するため、前述したような
入出力機器において、1個の主通信バッファと、各通信
手段毎に主通信バッファよりメモリ容量の小さい補助通
信バッファとを設けると共に、通信可能状態にある通信
手段からの入力データは主通信バッファに格納し、通信
不可能状態にある通信手段からの入力データはその通信
手段に対して設けられた補助通信バッファに格納し、そ
の通信手段が通信可能状態になった時に、その補助通信
バッファに格納されているデータを主通信バッファに移
す通信制御手段を設けたものである。
入出力機器において、1個の主通信バッファと、各通信
手段毎に主通信バッファよりメモリ容量の小さい補助通
信バッファとを設けると共に、通信可能状態にある通信
手段からの入力データは主通信バッファに格納し、通信
不可能状態にある通信手段からの入力データはその通信
手段に対して設けられた補助通信バッファに格納し、そ
の通信手段が通信可能状態になった時に、その補助通信
バッファに格納されているデータを主通信バッファに移
す通信制御手段を設けたものである。
また、1個の主通信バッファと、前記各通信手段毎に前
記主通信バッファよりメモリ容量の小さい補助通信バッ
ファとを設けると共に、通信可能状態にある通信手段か
らの入力データは主通信バッファに格納し、通信不可能
状態にある通信手段からの入力データはその通信手段に
対して設けられた補助通信バッファに格納し、主通信バ
ッファを用いている通信手段の通信が終了した時、いず
れかの補助通信バッファにデータが格納されていればそ
のデータを主通信バッファへ移し、その補助通信バッフ
ァが設けられた通信手段のみを通信可能状態とし、それ
以外の通信手段は通信不可能状態にする通信制御手段を
設けるのが望ましい。
記主通信バッファよりメモリ容量の小さい補助通信バッ
ファとを設けると共に、通信可能状態にある通信手段か
らの入力データは主通信バッファに格納し、通信不可能
状態にある通信手段からの入力データはその通信手段に
対して設けられた補助通信バッファに格納し、主通信バ
ッファを用いている通信手段の通信が終了した時、いず
れかの補助通信バッファにデータが格納されていればそ
のデータを主通信バッファへ移し、その補助通信バッフ
ァが設けられた通信手段のみを通信可能状態とし、それ
以外の通信手段は通信不可能状態にする通信制御手段を
設けるのが望ましい。
さらに、1個の主通信バッファを設け、その主通信バッ
ファよりメモリ容量の小さい補助通信バッファを通信手
段の数より1個少なく設けると共に、通信手段を通信不
能状態にする時にその各通信手段に対して補助通信バッ
ファを割り当て、通信可能状態にある通信手段からの入
力データは主通信バッファに格納し、通信不可能状態に
ある通信手段からの入力データはその通信手段に対して
設けられた補助通信バッファに格納し、その通信手段が
通信可能状態になった時に、その補助通信バッファに格
納されているデータを主通信バッファに移す通信制御手
段を設けるとよい。
ファよりメモリ容量の小さい補助通信バッファを通信手
段の数より1個少なく設けると共に、通信手段を通信不
能状態にする時にその各通信手段に対して補助通信バッ
ファを割り当て、通信可能状態にある通信手段からの入
力データは主通信バッファに格納し、通信不可能状態に
ある通信手段からの入力データはその通信手段に対して
設けられた補助通信バッファに格納し、その通信手段が
通信可能状態になった時に、その補助通信バッファに格
納されているデータを主通信バッファに移す通信制御手
段を設けるとよい。
さらにまた、複数の通信手段のうちの少なくとも1つが
、通信不可能状態の時に接続されている外部装置に対し
て物理的に通信を禁止する手段を持たない通信手段であ
れば、1個の主通信バッファを設け、外部装置に対して
物理的に通信を禁止する手段を持たない各通信手段に対
して、それぞれ主通信バッファよりメモリ容量の小さい
補助通信バッファを設けると共に、通信可能状態にある
通信手段からの入力データは主通信バッファに格納し、
通信不可能状態にあり且つ補助通信バッファが設けられ
ている通信手段からの入力データはその通信手段に対し
て設けられた補助通信バッファに格納し、その通信手段
が通信可能状態になった時に、その補助通信バッファに
格納されているデータを主通信バッファに移す通信制御
手段を設けるとよい。
、通信不可能状態の時に接続されている外部装置に対し
て物理的に通信を禁止する手段を持たない通信手段であ
れば、1個の主通信バッファを設け、外部装置に対して
物理的に通信を禁止する手段を持たない各通信手段に対
して、それぞれ主通信バッファよりメモリ容量の小さい
補助通信バッファを設けると共に、通信可能状態にある
通信手段からの入力データは主通信バッファに格納し、
通信不可能状態にあり且つ補助通信バッファが設けられ
ている通信手段からの入力データはその通信手段に対し
て設けられた補助通信バッファに格納し、その通信手段
が通信可能状態になった時に、その補助通信バッファに
格納されているデータを主通信バッファに移す通信制御
手段を設けるとよい。
請求項1又は2の発明による入出力機器では、1個の主
通信バッファの他に、各通信手段毎に主通信バッファよ
りメモリ容量の小さい補助通信バッファを設け、それら
を使用して各外部装置との通信を制御するようにしたの
で、メモリを無駄に使用することなく、データロスを確
実に解消できる。
通信バッファの他に、各通信手段毎に主通信バッファよ
りメモリ容量の小さい補助通信バッファを設け、それら
を使用して各外部装置との通信を制御するようにしたの
で、メモリを無駄に使用することなく、データロスを確
実に解消できる。
また、請求項3の発明による入出力機器では、補助通信
バッファを通信手段の数より1個少なくし、通信手段を
通信不能状態にする時にその各通信手段に対して補助通
信バッファを割り当てるようにしたので、補助通信バッ
ファによって使用されるメモリ容量が少なくて済み、メ
モリの使用効率がアップする。
バッファを通信手段の数より1個少なくし、通信手段を
通信不能状態にする時にその各通信手段に対して補助通
信バッファを割り当てるようにしたので、補助通信バッ
ファによって使用されるメモリ容量が少なくて済み、メ
モリの使用効率がアップする。
さらに、請求項4の発明による入出力機器では、外部装
置に対して物理的に通信を禁止する手段を持たない各通
信手段に対してそれぞれ補助通信バッファを設けるよう
にしたので、言い替えればそれ以外の通信手段に対して
は補助通信バッファを設ける必要がないので、補助通信
バッファによって使用されるメモリ容量をさらに少なく
することができる。
置に対して物理的に通信を禁止する手段を持たない各通
信手段に対してそれぞれ補助通信バッファを設けるよう
にしたので、言い替えればそれ以外の通信手段に対して
は補助通信バッファを設ける必要がないので、補助通信
バッファによって使用されるメモリ容量をさらに少なく
することができる。
以下、この発明の実施例を添付図面に基づいて具体的に
説明する。
説明する。
第1図は、この発明の基本的実施例の構成を示すブロッ
ク図である。
ク図である。
この入出力機器1は、それぞれ異なる外部装置2〜4と
の通信を司る3つの通信手段5〜7と、1個の主通信バ
ッファ8と、各通信手段毎に主通信バッファ8よりメモ
リ容量の小さい補助通信バッファ9〜11と、通信制御
手段12とを備えている。
の通信を司る3つの通信手段5〜7と、1個の主通信バ
ッファ8と、各通信手段毎に主通信バッファ8よりメモ
リ容量の小さい補助通信バッファ9〜11と、通信制御
手段12とを備えている。
通信制御手段12は、通信手段5〜7のいずれにおいて
も外部装置との通信がなされていない時には、通信手段
5〜7を全て通信可能状態にしておき、いずれかの通信
手段、例えば通信手段5によって外部装置2との通信が
開始されると、通信手段6,7を通信不可能状態にし、
外部装W2との通信を開始した通信手段5における通信
が終了した時に、通信手段6,7を通信可能状態にする
手段を備えている。
も外部装置との通信がなされていない時には、通信手段
5〜7を全て通信可能状態にしておき、いずれかの通信
手段、例えば通信手段5によって外部装置2との通信が
開始されると、通信手段6,7を通信不可能状態にし、
外部装W2との通信を開始した通信手段5における通信
が終了した時に、通信手段6,7を通信可能状態にする
手段を備えている。
さらに、この通信制御手段12は、通信可能状態にある
通信手段5からの入力データを主通信バッファ8に格納
し、通信不可能状態にある通信手段6,7のうち、例え
ば通信手段6が外部装置3からデータを受信すると、そ
の通信手段6からの入力データを補助通信バッファ10
に格納し、その通信手段6が通信可能状態になった時に
、補助通信バッファ10に格納されているデータを主通
信バッファ8に移す。
通信手段5からの入力データを主通信バッファ8に格納
し、通信不可能状態にある通信手段6,7のうち、例え
ば通信手段6が外部装置3からデータを受信すると、そ
の通信手段6からの入力データを補助通信バッファ10
に格納し、その通信手段6が通信可能状態になった時に
、補助通信バッファ10に格納されているデータを主通
信バッファ8に移す。
第2図は、この発明を適用するレーザプリンタのシステ
ム構成図であり、21は外部装置であるオフィスコンピ
ュータ、パーソナルコンピュータ。
ム構成図であり、21は外部装置であるオフィスコンピ
ュータ、パーソナルコンピュータ。
ワードプロセッサ、データ処理装置9画像処理装置等の
ホストコンピュータ、22は入呂力機器としてのレーザ
プリンタである。
ホストコンピュータ、22は入呂力機器としてのレーザ
プリンタである。
レーザプリンタ22は、各種表示器、スイッチを備えた
操作表示部23と、ホストコンピュータ21から送られ
てくるコード化されたデータを解析してドツトイメージ
情報(ビデオデータ)に変換するプリンタコントローラ
24と、そのドツトイメージ情報を可視画像として用紙
にプリントするための作像部とそのシーケンスコントロ
ーラ等からなるプリンタエンジン25とによって構成さ
れている。
操作表示部23と、ホストコンピュータ21から送られ
てくるコード化されたデータを解析してドツトイメージ
情報(ビデオデータ)に変換するプリンタコントローラ
24と、そのドツトイメージ情報を可視画像として用紙
にプリントするための作像部とそのシーケンスコントロ
ーラ等からなるプリンタエンジン25とによって構成さ
れている。
第3図は、プリンタコントローラ24の構成例を示すブ
ロック図である。
ロック図である。
このプリンタコントローラ24は、インタフェース回路
(I/F)として、それぞれ異なるホストコンピュータ
21a〜21Gを接続するための3つのホストインタフ
ェース50a〜300と、プリンタエンジン25を接続
するためのエンジンインタフェース31と、操作表示部
2!1を接続するためのパネルインタフ二−ス32と、
オプションカード35を接続するためのオプションイン
タフ二−ス34とを備えている。
(I/F)として、それぞれ異なるホストコンピュータ
21a〜21Gを接続するための3つのホストインタフ
ェース50a〜300と、プリンタエンジン25を接続
するためのエンジンインタフェース31と、操作表示部
2!1を接続するためのパネルインタフ二−ス32と、
オプションカード35を接続するためのオプションイン
タフ二−ス34とを備えている。
さらに、マイクロコンピュータ(CPU)35゜ROM
35.及びRAM37を備えており、それらはアドレス
バス、コントロールバス、及びデータバスからなるパス
ラインによって相互に接続されている。
35.及びRAM37を備えており、それらはアドレス
バス、コントロールバス、及びデータバスからなるパス
ラインによって相互に接続されている。
各ホストインタフェース308〜30cは、それぞれホ
ストコンピュータ218〜21Cとの通信手段であり、
RS 232Cやセントロニクス社準拠等のインタフェ
ース回路が用いられる。
ストコンピュータ218〜21Cとの通信手段であり、
RS 232Cやセントロニクス社準拠等のインタフェ
ース回路が用いられる。
エンジンインタフェース31は、CPU155がプリン
タエンジン25に状態を問い合わせたり、命令したり、
プリンタコントローラ24内で作成されたドツトイメー
ジ情報を送品したりするための回路である。
タエンジン25に状態を問い合わせたり、命令したり、
プリンタコントローラ24内で作成されたドツトイメー
ジ情報を送品したりするための回路である。
CPU15は汎用の16又は32ビツトのマイクロコン
ピュータであり、ROM3日内の制御プログラムを使用
してプリントコントローラ24全体を統括制御する。
ピュータであり、ROM3日内の制御プログラムを使用
してプリントコントローラ24全体を統括制御する。
このCPU!15には、各ホストインタフェース30a
〜30cからそれぞれaカされるインタラブド信号(割
込信号)を入力するための3つの割込入力端子が設けら
れており、入力されるインタラブド信号に応じた割込処
理を実行するが、この処理については追って詳細に説明
する。
〜30cからそれぞれaカされるインタラブド信号(割
込信号)を入力するための3つの割込入力端子が設けら
れており、入力されるインタラブド信号に応じた割込処
理を実行するが、この処理については追って詳細に説明
する。
ROM36はリードオンメモリであり、CPU35の動
作を決める制御プログラムの他に、コード化データをド
ツトイメージに変換するための常駐フォントデータ等が
書き込まれている。
作を決める制御プログラムの他に、コード化データをド
ツトイメージに変換するための常駐フォントデータ等が
書き込まれている。
RAM57は、大容量のランダムアクセスメモリであり
、CPU!15が処理を進めていくうえで必要な情報、
処理の途中で作成される中間データ。
、CPU!15が処理を進めていくうえで必要な情報、
処理の途中で作成される中間データ。
ホストコンピュータ508〜30cからダウンロードさ
れるフォントデータ等が格納される。
れるフォントデータ等が格納される。
また、ホストコンピュータ308〜150cからのデー
タ通信速度とコン)−ローラ内部での処理速度の緩衝を
行なうための1個の主通信バッファ(入力バッファ)と
、3つのホストインタフェース30a〜30aにそれぞ
れ対応する3個の補助通信バッファもこのRAM37が
使用される。
タ通信速度とコン)−ローラ内部での処理速度の緩衝を
行なうための1個の主通信バッファ(入力バッファ)と
、3つのホストインタフェース30a〜30aにそれぞ
れ対応する3個の補助通信バッファもこのRAM37が
使用される。
オプションカード33は、プリンタコントローラ24の
機能を拡張するためのものであり、例えばROM3日に
記憶されているフォント以外のフォノを使用可能にする
ためのフォントカード、コントローラ24の動作を変更
するためのプログラムカード、より多くのデータを処理
できるようにするためのRAMカード、あるいは多くの
データをコンI−ローラ24内に恒久的に保持するため
のディスクカード等がある。これらは、プリンタの使用
目的などにより必要に応じて接続される。
機能を拡張するためのものであり、例えばROM3日に
記憶されているフォント以外のフォノを使用可能にする
ためのフォントカード、コントローラ24の動作を変更
するためのプログラムカード、より多くのデータを処理
できるようにするためのRAMカード、あるいは多くの
データをコンI−ローラ24内に恒久的に保持するため
のディスクカード等がある。これらは、プリンタの使用
目的などにより必要に応じて接続される。
ここで、ホストコンピュータ21aからデータが送信さ
れた時のプリンタコントローラ24の処理動作を簡単に
説明する。
れた時のプリンタコントローラ24の処理動作を簡単に
説明する。
ホストインタフェース30aは、ホス1−コンビユータ
21aからデータを受信すると、CPU35ヘインタラ
プト信号を8力してその旨を知らせる。
21aからデータを受信すると、CPU35ヘインタラ
プト信号を8力してその旨を知らせる。
それによって、CPU35はメインルーチンを一時的に
抜けてインタラブドルーチンをスタートさせ、まずホス
トインタフェース30aからデータを取り出してRAM
37上の主通信バッファに格納する。
抜けてインタラブドルーチンをスタートさせ、まずホス
トインタフェース30aからデータを取り出してRAM
37上の主通信バッファに格納する。
このとき、その主通信バッファからデータが溢れそうで
あれば、ホストコンピュータ21aへホストインタフェ
ース30aを介して送信中断要求を示す信号を送信する
。
あれば、ホストコンピュータ21aへホストインタフェ
ース30aを介して送信中断要求を示す信号を送信する
。
主通信バッファにデータを格納し終えると、メインルー
チンへ戻って、主通信バッファからデータを取り呂して
それを解析し、ドツトイメージ情報に変換するための各
種処理を実行する。
チンへ戻って、主通信バッファからデータを取り呂して
それを解析し、ドツトイメージ情報に変換するための各
種処理を実行する。
そして、主通信バッファが空になりそうであれば、ホス
トコンピュータ21aヘホストインタフエース30aを
介して送信再開要求を示す信号を送信し、以後同様な動
作が繰り返される。
トコンピュータ21aヘホストインタフエース30aを
介して送信再開要求を示す信号を送信し、以後同様な動
作が繰り返される。
このような処理は、ホストコンピュータの通信速度がc
pu55の処理速度を上回った場合に、データが失われ
ないようにするために行なわれており、データ通信を行
なう際に一般に行なわれていることである。
pu55の処理速度を上回った場合に、データが失われ
ないようにするために行なわれており、データ通信を行
なう際に一般に行なわれていることである。
主通信バッファの大きさは、その通信速度や処理速度に
よって適当な大きさが設定されている。
よって適当な大きさが設定されている。
これは、小さすぎるとホストコンピュータに頻繁に通信
中断要求や通信再開要求を示す信号を送信しなくてはな
らないし、多きすぎるとメモリ(RAM)の使用効率が
低下するからである。
中断要求や通信再開要求を示す信号を送信しなくてはな
らないし、多きすぎるとメモリ(RAM)の使用効率が
低下するからである。
第4図はこの発明の一実施例としてのCPU35による
メインルーチンを、第5図はホストインタフェース30
aに対応するインタラブドルーチン1を示すフローチャ
ートである。
メインルーチンを、第5図はホストインタフェース30
aに対応するインタラブドルーチン1を示すフローチャ
ートである。
なお、第5図のようなインタラブドルーチンは各ホスト
インタフェース308〜30C毎に設けられているが、
それらの処理内容は略同様なので。
インタフェース308〜30C毎に設けられているが、
それらの処理内容は略同様なので。
ホストインタフェース50b、 3ocにそれぞれ対応
するインタラブドルーチンの図示を省略する。
するインタラブドルーチンの図示を省略する。
第4図において、このルーチンは電源投入直後の初期設
定及びステータスチエツクが終了するとスタートし、ま
ずステップ1で全てのホストインタフェースBoa〜5
0cを通信可能状態にする。
定及びステータスチエツクが終了するとスタートし、ま
ずステップ1で全てのホストインタフェースBoa〜5
0cを通信可能状態にする。
次いで、ステップ2でRAM37上の主通信バッファ内
にデータがあるかないかを判断するが、電源投入直後な
のでデータはないと判断してステップ3へ進み、通信終
了が通報されたか否かを判断する。
にデータがあるかないかを判断するが、電源投入直後な
のでデータはないと判断してステップ3へ進み、通信終
了が通報されたか否かを判断する。
しかし、通信終了どころか通信そのものが始まっていな
い状態なので、ステップ4の一定時間通信がないかどう
かの判断に進むが、当然NOとなってステップ2に戻り
、このステップ2〜4のルーチンを循環し続ける。
い状態なので、ステップ4の一定時間通信がないかどう
かの判断に進むが、当然NOとなってステップ2に戻り
、このステップ2〜4のルーチンを循環し続ける。
なお、ステップ2で主通信バッファにデータがあると判
断した時には、ステップ5でデータ処理、すなわ1主通
信バッファからデータを取り出してそのデータに応じた
ドツトイメージ情報を作成し、さらに主通信バッファ内
のデータ量に応じて通信中のホスI−コンピュータへ送
信中断信号あるいは送信再開要求信号を送信したりした
後、ステップ2へ戻って上述の処理を繰り返す。
断した時には、ステップ5でデータ処理、すなわ1主通
信バッファからデータを取り出してそのデータに応じた
ドツトイメージ情報を作成し、さらに主通信バッファ内
のデータ量に応じて通信中のホスI−コンピュータへ送
信中断信号あるいは送信再開要求信号を送信したりした
後、ステップ2へ戻って上述の処理を繰り返す。
一方、例えば2台のホストコンピュータ21a。
21bから同時にデータが送信されると、その各データ
をホストインタフェース30.及び30Cが受信してイ
ンタラブド信号を発生する。
をホストインタフェース30.及び30Cが受信してイ
ンタラブド信号を発生する。
なお、CPU!15は、複数のインタラブド信号を同時
に入力すると、その各信号に対応する複数のホストイン
タフェースのうち使用優先度の最も高いものを選択する
。
に入力すると、その各信号に対応する複数のホストイン
タフェースのうち使用優先度の最も高いものを選択する
。
この実施例では、ホストコンインタフェース30a、3
0b、30cの順に使用優先度が高くなるように使用優
先順位を割り付けであるものとする。
0b、30cの順に使用優先度が高くなるように使用優
先順位を割り付けであるものとする。
そして、複数のホストインタフェースのうちの使用優先
度の最も高いインタフェースが選択されると、それに対
応するインタラブドルーチンを実行し、それが終了した
時点で次に使用優先度の高いホストインタフェースに対
応するインタラブドルーチンを実行するというふうに、
各インタラプトルーチンを順次実行する。
度の最も高いインタフェースが選択されると、それに対
応するインタラブドルーチンを実行し、それが終了した
時点で次に使用優先度の高いホストインタフェースに対
応するインタラブドルーチンを実行するというふうに、
各インタラプトルーチンを順次実行する。
したがって、ホストインタフェース30a及び30bか
ら同時にインタラブド信号が発生され、その両インタラ
ブド信号が同時にCPtに5に入力されると、そのcp
ty35は第4図のメインルーチンを抜けて第5図のイ
ンタラブドルーチンをスタートさせる。
ら同時にインタラブド信号が発生され、その両インタラ
ブド信号が同時にCPtに5に入力されると、そのcp
ty35は第4図のメインルーチンを抜けて第5図のイ
ンタラブドルーチンをスタートさせる。
そしてまず、ステップ11でホストインタフェース30
aが通信可能状態か否かを判断するが、第4図のステッ
プ1で全てのホストインタフェース308〜30cが通
信可能状態にされているので、ステップ12のホストイ
ンタフェース!108に対応する補助通信バッファ1に
データがあるかないかを判断する。
aが通信可能状態か否かを判断するが、第4図のステッ
プ1で全てのホストインタフェース308〜30cが通
信可能状態にされているので、ステップ12のホストイ
ンタフェース!108に対応する補助通信バッファ1に
データがあるかないかを判断する。
現時点ではまだ補助通信バッファ1を含むいずれの補助
通信バッファにもデータは存在しないので、ステップ1
4でホストインタフェース50aからの入力データを主
通信バッファに入れる。もし、補助通信バッファ1内に
データがある時には、ステップ13でホストインタフェ
ース30aからの入力データを処理する前に補助通信バ
ッファ1のデータを主通信バッフアレ;移しておく。
通信バッファにもデータは存在しないので、ステップ1
4でホストインタフェース50aからの入力データを主
通信バッファに入れる。もし、補助通信バッファ1内に
データがある時には、ステップ13でホストインタフェ
ース30aからの入力データを処理する前に補助通信バ
ッファ1のデータを主通信バッフアレ;移しておく。
次に、ステップ15で全てのホストインタフェース30
a−50cが通信可能状態か否かを判断するが、勿論全
てのインタフェースが通信可能状態にされていると判断
してステップ16へ進み、ホストインタフェース50b
、30Cを通信不可能状態にして処理を終了する。その
後、ホストインタフェースlbに対応する図示しないイ
ンタラブドルーチンに移行する。
a−50cが通信可能状態か否かを判断するが、勿論全
てのインタフェースが通信可能状態にされていると判断
してステップ16へ進み、ホストインタフェース50b
、30Cを通信不可能状態にして処理を終了する。その
後、ホストインタフェースlbに対応する図示しないイ
ンタラブドルーチンに移行する。
なお、このインタラブドルーチンにおいて、もしホスト
インタフェース30aが通信可能状態でない時には、そ
のインタフェース30aからの入力データを補助通信バ
ッファ1に入れた後、他のインタラブドルーチンに移行
するか、あるいは第4図のメインルーチンへリターンす
る。
インタフェース30aが通信可能状態でない時には、そ
のインタフェース30aからの入力データを補助通信バ
ッファ1に入れた後、他のインタラブドルーチンに移行
するか、あるいは第4図のメインルーチンへリターンす
る。
ホストインタフェース30bに対応するインタラブドル
ーチンがスタートすると、第5図と同様にホストインタ
フェース50bが通信可能状態か否かを判断する。
ーチンがスタートすると、第5図と同様にホストインタ
フェース50bが通信可能状態か否かを判断する。
ここでは、第5図のルーチンでホストインタフェースl
b、30cが通信不可能状態にされたので、ホストイン
タフェース30bからの入力データを対応する補助通信
バッファ2に入れた後。
b、30cが通信不可能状態にされたので、ホストイン
タフェース30bからの入力データを対応する補助通信
バッファ2に入れた後。
第4図のメインルーチンにリターンする。
なお、ホストインタフェース30cからのインタラブド
信号をも入力している時には、第4図のメインルーチン
にリターンせずにこのホストインタフェース30cに対
応する図示しないインタラブドルーチンに移行して第5
図のような処理を行なった後、第4図のメインルーチン
へリターンする。
信号をも入力している時には、第4図のメインルーチン
にリターンせずにこのホストインタフェース30cに対
応する図示しないインタラブドルーチンに移行して第5
図のような処理を行なった後、第4図のメインルーチン
へリターンする。
そして、第4図のメインルーチンに戻ると、重速インタ
ラブドルーチンに跳ぶ前に行なっていた処理の続きを行
なう。
ラブドルーチンに跳ぶ前に行なっていた処理の続きを行
なう。
そして、例えばステップ2の主通信バッファにデータが
あるかないかの判断から再スタートすると、第5図のイ
ンタラブドルーチンによりインタフェース回路30aか
らの入力データが主通信バッファに格納されているので
、データありを判断してステップ5のデータ処理へ進む
。
あるかないかの判断から再スタートすると、第5図のイ
ンタラブドルーチンによりインタフェース回路30aか
らの入力データが主通信バッファに格納されているので
、データありを判断してステップ5のデータ処理へ進む
。
その後、主通信バッファ内のデータがなくなると、ステ
ップ3で通信終了が通報されたか否か、すなわちホスト
コンピュータ21aから通信終了信号が受信されたか否
かを判断し、通信終了が通報されると、ステップ1へ戻
って全てのホストインタフェース’50a〜60cを再
び通信可能状態にして、以後の処理を再実行する。
ップ3で通信終了が通報されたか否か、すなわちホスト
コンピュータ21aから通信終了信号が受信されたか否
かを判断し、通信終了が通報されると、ステップ1へ戻
って全てのホストインタフェース’50a〜60cを再
び通信可能状態にして、以後の処理を再実行する。
また、通信終了が通報されなければステップ4で一定時
間通信がないかどうかを判断し、一定時間通信がなけれ
ば、すなわちホストコンピュータ21aから次のデータ
を受信することによるホストインタフェース30aから
のインタラブド信号が一定時間経過しても入力されない
とステップ1へ戻る。
間通信がないかどうかを判断し、一定時間通信がなけれ
ば、すなわちホストコンピュータ21aから次のデータ
を受信することによるホストインタフェース30aから
のインタラブド信号が一定時間経過しても入力されない
とステップ1へ戻る。
そうでなければ、ステップ2へ戻って上述の処理を縁り
返し、一定時間内に通信があれば再びこのメインルーチ
ンから抜けて、対応するインタラブドルーチンから再ス
タートさせる。
返し、一定時間内に通信があれば再びこのメインルーチ
ンから抜けて、対応するインタラブドルーチンから再ス
タートさせる。
また、一定時間経過して全てのホス1−インタフエース
508〜30cが通信可能状態になった後、ホストコン
ピュータ21bから次のデータが送信され、それをホス
トインタフェース50bが受信してインタラブド信号を
発生すると、cpu35はそのインタラブド信号の入力
により、ホストインタフェース30bに対応するインタ
ラブドルーチン(第5図参照)をスタートさせる。
508〜30cが通信可能状態になった後、ホストコン
ピュータ21bから次のデータが送信され、それをホス
トインタフェース50bが受信してインタラブド信号を
発生すると、cpu35はそのインタラブド信号の入力
により、ホストインタフェース30bに対応するインタ
ラブドルーチン(第5図参照)をスタートさせる。
そしてまず、通信可能状態か否かを判断するが、今は全
てのホストインタフェース308〜30Cが通信可能状
態なので、次に補助通信バッファ2にデータがあるかな
いかを判断する。
てのホストインタフェース308〜30Cが通信可能状
態なので、次に補助通信バッファ2にデータがあるかな
いかを判断する。
補助通信バッファ2には、ホストコンピュータ211)
から受信した最初のデータが格納されているので、その
データを主通信バッファに移した後、ホストインタフェ
ース30bから受信した次のデータを主通信バッファに
格納する。
から受信した最初のデータが格納されているので、その
データを主通信バッファに移した後、ホストインタフェ
ース30bから受信した次のデータを主通信バッファに
格納する。
このとき、最初のデータは主通信バッファの先頭アドレ
スに、次のデータは2番目のアドレスにそれぞれ格納さ
れる。
スに、次のデータは2番目のアドレスにそれぞれ格納さ
れる。
主通信バッファへのデータの格納が終了すると、次に全
てのホストインタフェース308〜50Cが通信可能状
態か否かを判断するが、全てが通信可能状態なので、次
にホストインタフェース30a及び!IOcを通信不可
能状態にした後、第4図のメインルーチンへリターンす
る。
てのホストインタフェース308〜50Cが通信可能状
態か否かを判断するが、全てが通信可能状態なので、次
にホストインタフェース30a及び!IOcを通信不可
能状態にした後、第4図のメインルーチンへリターンす
る。
このように、この実施例においては、主通信バッファと
、各ホストインタフェース毎にその主通信バッファより
メモリ容量の小さい補助通信バッファ1〜3とを第3図
のRAM)7上に設け、通信可能状態にあるホストイン
タフェースからの入力データは主通信バッファに格納し
、通信不可能状態にあるホストインタフェースからの入
力データはそのホストインタフェースに対して設けられ
た補助通信バッファに格納し、そのホストインタフェー
スが通信可能状態になった時に、その補助通信バッファ
内のデータを主通信バッファに移すようにしたので、R
AM37を無駄に使用することなく、データロスを確実
に解消できる。
、各ホストインタフェース毎にその主通信バッファより
メモリ容量の小さい補助通信バッファ1〜3とを第3図
のRAM)7上に設け、通信可能状態にあるホストイン
タフェースからの入力データは主通信バッファに格納し
、通信不可能状態にあるホストインタフェースからの入
力データはそのホストインタフェースに対して設けられ
た補助通信バッファに格納し、そのホストインタフェー
スが通信可能状態になった時に、その補助通信バッファ
内のデータを主通信バッファに移すようにしたので、R
AM37を無駄に使用することなく、データロスを確実
に解消できる。
次に、この発明の他の実施例について第6図及び第7図
を参照して説明する。
を参照して説明する。
なお、この実施例のハード構成は第3図のプリンタコン
トローラ24と同じであり、第6図はCPU!15によ
るメインルーチンを、第7図はホストインタフェース5
0aに対応するインタラブドルーチンを示す。
トローラ24と同じであり、第6図はCPU!15によ
るメインルーチンを、第7図はホストインタフェース5
0aに対応するインタラブドルーチンを示す。
第6図のルーチンも第4図のルーチンと同様に、電源投
入直後の初期設定及びステータスチエツクが終了すると
スター1− L、、まずステップ21で全てのホストイ
ンタフェース308〜30cを通信可能状態にし、以後
第4図のステップ1〜4に対応するステップ22〜24
のルーチンを循環し続ける。
入直後の初期設定及びステータスチエツクが終了すると
スター1− L、、まずステップ21で全てのホストイ
ンタフェース308〜30cを通信可能状態にし、以後
第4図のステップ1〜4に対応するステップ22〜24
のルーチンを循環し続ける。
一方、前述の実施例と同様に、例えば2台のホストコン
ピュータ21a、21bから同時にデータが送信される
と、その各データをホストインタフェース30a及び3
0Cが受信してインタラブド信号を発生し、それをCP
UES5が入力することによって第6図のメインルーチ
ン(後述する)を抜けて第7図のインタラブドルーチン
をスタートさせる。
ピュータ21a、21bから同時にデータが送信される
と、その各データをホストインタフェース30a及び3
0Cが受信してインタラブド信号を発生し、それをCP
UES5が入力することによって第6図のメインルーチ
ン(後述する)を抜けて第7図のインタラブドルーチン
をスタートさせる。
そしてまず、ステップ41でホストインタフェース50
aが通信可能状態か否かを判断するが、第6図のステッ
プ21で全てのホストインタフェース30a〜30Cが
通信可能状態にされたので、ステップ42でホストイン
タフェース30aからの入力データを主通信バッファに
入れ、ステップ43で全てのホストインタフェース5o
a−z+。
aが通信可能状態か否かを判断するが、第6図のステッ
プ21で全てのホストインタフェース30a〜30Cが
通信可能状態にされたので、ステップ42でホストイン
タフェース30aからの入力データを主通信バッファに
入れ、ステップ43で全てのホストインタフェース5o
a−z+。
Cが通信可能状態か否かを判断する。
最初はもちろん、Yesなので、ホストインタフェース
30b、gocを通信不可能状態にして処理を終了し、
その後ホストインタフェース30bに対応する図示しな
いインタラブドルーチンに移行する。
30b、gocを通信不可能状態にして処理を終了し、
その後ホストインタフェース30bに対応する図示しな
いインタラブドルーチンに移行する。
なお、もしホストインタフェース30aが通信可能状態
でない時には、ステップ45でホストインタフェース3
0aからの入力データを補助通信バッファ1に入れた後
、他のインタラブドルーチンに移行するか、あるいは第
6図のメインルーチンへリターンする。
でない時には、ステップ45でホストインタフェース3
0aからの入力データを補助通信バッファ1に入れた後
、他のインタラブドルーチンに移行するか、あるいは第
6図のメインルーチンへリターンする。
ホストインタフェース30bに対応するインクラブドル
ーチンがスタートすると、第7図と同様にまずホストイ
ンタフェース50bが通信可能状態か否かを判断する。
ーチンがスタートすると、第7図と同様にまずホストイ
ンタフェース50bが通信可能状態か否かを判断する。
ここでは、第7図のルーチンでホストインタフェースE
50b、50Cが通信不可能状態にされたので、ホスト
インタフェース30bからの入力データを対応する補助
通信バッファ2に入れた後、第6図のメインルーチンへ
リターンする。
50b、50Cが通信不可能状態にされたので、ホスト
インタフェース30bからの入力データを対応する補助
通信バッファ2に入れた後、第6図のメインルーチンへ
リターンする。
なお、ホストインタフェース30cからのインタラブド
信号をも入力している時には、第6図のメインルーチン
にリターンせずにこのホストインタフェース30cに対
応する図示しないインタラブドルーチンに移行して第7
図のような処理を行なった後、第6図のメインルーチン
へリターンする。
信号をも入力している時には、第6図のメインルーチン
にリターンせずにこのホストインタフェース30cに対
応する図示しないインタラブドルーチンに移行して第7
図のような処理を行なった後、第6図のメインルーチン
へリターンする。
第6図のメインルーチンに戻ると、半速インタラブドル
ーチンに跳ぶ前に行なっていた処理の続きを行なう。
ーチンに跳ぶ前に行なっていた処理の続きを行なう。
そして、例えばステップ22の主通信バッファにデータ
があるかないかの判断から再スタートすると、第7図の
インタラブドルーチンによりホストインタフェース30
aからの入力データが主通信バッファに格納されている
ので、データありを判断してステップ25のデータ処理
へ進む。
があるかないかの判断から再スタートすると、第7図の
インタラブドルーチンによりホストインタフェース30
aからの入力データが主通信バッファに格納されている
ので、データありを判断してステップ25のデータ処理
へ進む。
その後、主通信バッファ内のデータがなくなり、ステッ
プ23あるいは24による通信終了が通報されたかある
いは一定時間通信がなければ、ステップ26でホストイ
ンタフェース30aに対応する補助通信バッファ1にデ
ータがあるかないかを判断するが、ないので今度はステ
ップ27でホストインタフェース30bに対応する補助
通信バッファ2にデータがあるかないかを判断する。
プ23あるいは24による通信終了が通報されたかある
いは一定時間通信がなければ、ステップ26でホストイ
ンタフェース30aに対応する補助通信バッファ1にデ
ータがあるかないかを判断するが、ないので今度はステ
ップ27でホストインタフェース30bに対応する補助
通信バッファ2にデータがあるかないかを判断する。
もちろん、データありを判断するのでステップ30へ進
み、補助通信バッファ2内のデータを主通信バッファに
移して、ホストインタフェースBobのみを通信可能状
態にし、それ以外のホストインタフェース30a、15
0cを通信不可能状態にした後、ステップ22へ戻って
上述の処理を繰り返す。
み、補助通信バッファ2内のデータを主通信バッファに
移して、ホストインタフェースBobのみを通信可能状
態にし、それ以外のホストインタフェース30a、15
0cを通信不可能状態にした後、ステップ22へ戻って
上述の処理を繰り返す。
なお、補助通信バッファ1にデータがある時には、ステ
ップ29で補助通信バッファ1内のデータを主通信バッ
ファに移して、ホストインタフェース50.のみを通信
可能状態にし、それ以外のホストインタフェース30b
、50cを通信不可能状態にする。
ップ29で補助通信バッファ1内のデータを主通信バッ
ファに移して、ホストインタフェース50.のみを通信
可能状態にし、それ以外のホストインタフェース30b
、50cを通信不可能状態にする。
また、補助通信バッファ2にデータがなく、ホストイン
タフェース30cに対応する補助通信バッファ3にデー
タがある時には、ステップ31で補助通信バッファ3内
のデータを主通信バッファに移して、ホストインタフェ
ース30cのみを通信可能状態にし、それ以外のホスト
インタフェース30a、50bを通信不可能状態にする
。
タフェース30cに対応する補助通信バッファ3にデー
タがある時には、ステップ31で補助通信バッファ3内
のデータを主通信バッファに移して、ホストインタフェ
ース30cのみを通信可能状態にし、それ以外のホスト
インタフェース30a、50bを通信不可能状態にする
。
このようにこの実施例では、通信可能状態にあるホスト
インタフェースからの入力データを主通信バッファに格
納し、通信不可能状態にあるホストインタフェースから
の入力データをそのインタフェースに対して設けられた
補助通信バッファに格納し、主通信バッファを用いてい
るホストインタフェースの通信が終了した時、いずれか
の補助通信バッファにデータが格納されていればそのデ
ータを主通信バッフへ移し、その補助通信バッファが設
けられたホストインタフェースのみを通信可能状態とし
、それ以外のホストインタフェースを通信不可能状態に
するようにしたので、前述の実施例と同様な効果が得ら
れる。
インタフェースからの入力データを主通信バッファに格
納し、通信不可能状態にあるホストインタフェースから
の入力データをそのインタフェースに対して設けられた
補助通信バッファに格納し、主通信バッファを用いてい
るホストインタフェースの通信が終了した時、いずれか
の補助通信バッファにデータが格納されていればそのデ
ータを主通信バッフへ移し、その補助通信バッファが設
けられたホストインタフェースのみを通信可能状態とし
、それ以外のホストインタフェースを通信不可能状態に
するようにしたので、前述の実施例と同様な効果が得ら
れる。
次に、この実施例のさらに他の実施例について第8図を
参照して説明する。
参照して説明する。
前述の各実施例においては、RAM37上に3つのホス
トインタフェース508〜30bに対応して3個の補助
通信バッファを設けるようにしたが、この実施例では補
助通信バッファを1個少なく設ける(2個とする)代わ
りに次のような処理を設けている。
トインタフェース508〜30bに対応して3個の補助
通信バッファを設けるようにしたが、この実施例では補
助通信バッファを1個少なく設ける(2個とする)代わ
りに次のような処理を設けている。
すなわち、この実施例におけるホストインタフェース3
0aに対応するインタラブドルーチン1に、第8図に示
すようにステップ56(第5図のステップ16に相当す
る)、すなわちホストインタフェースsob、30cを
通信不可能状態にする処理の後に、ステップ57として
ホストインタフェースsob、gocに対してそれぞれ
補助通信バッファ1,2を割り当てる処理を設けるよう
にした。
0aに対応するインタラブドルーチン1に、第8図に示
すようにステップ56(第5図のステップ16に相当す
る)、すなわちホストインタフェースsob、30cを
通信不可能状態にする処理の後に、ステップ57として
ホストインタフェースsob、gocに対してそれぞれ
補助通信バッファ1,2を割り当てる処理を設けるよう
にした。
もちろん、ホストインタフェース50bに対応する図示
しないインタラブドルーチン2にも、ホストインタフェ
ース50a、30cを通信不可能状態にする処理の後に
、ホストインタフェースESOa、りQCに対してそれ
ぞれ補助通信バッファ1,2を割り当てる処理を追加し
、さらにホストインタフェース’500に対応する図示
しないインタラブドルーチン3にも、ホストインタフェ
ースgoa、 3obを通信不可能状態にする処理の後
に、ホストインタフェース30a、30bに対してそれ
ぞれ補助通信バッファ1,2を割り当てる処理を追加す
る。
しないインタラブドルーチン2にも、ホストインタフェ
ース50a、30cを通信不可能状態にする処理の後に
、ホストインタフェースESOa、りQCに対してそれ
ぞれ補助通信バッファ1,2を割り当てる処理を追加し
、さらにホストインタフェース’500に対応する図示
しないインタラブドルーチン3にも、ホストインタフェ
ースgoa、 3obを通信不可能状態にする処理の後
に、ホストインタフェース30a、30bに対してそれ
ぞれ補助通信バッファ1,2を割り当てる処理を追加す
る。
なお、ハード構成及びその他の機能は前述の実施例と同
様である。
様である。
この実施例によれば、補助通信バッファによって使用さ
れるメモリ容量が削減し、RAM37の使用効率がアッ
プする。
れるメモリ容量が削減し、RAM37の使用効率がアッ
プする。
なお、第8図のステップ57の処理を第6,7図によっ
て説明した実施例の各インタラブドルーチンに設けるよ
うにしても、上述と同様な効果が得られる。
て説明した実施例の各インタラブドルーチンに設けるよ
うにしても、上述と同様な効果が得られる。
ただし、ホストインタフェース3Db〜30Cに対して
設けられる補助通信バッファ1,2は前述の各実施例の
補助通信バッファ2,3に相当し、ホストインタフェー
ス50a、30cに対して設けられる補助通信バッファ
1,2は2番目に説明した実施例の補助通信バッファ1
,3に相当するものとする。
設けられる補助通信バッファ1,2は前述の各実施例の
補助通信バッファ2,3に相当し、ホストインタフェー
ス50a、30cに対して設けられる補助通信バッファ
1,2は2番目に説明した実施例の補助通信バッファ1
,3に相当するものとする。
次に、この発明のさらに他の実施例について第9図を参
照して説明する。
照して説明する。
インタフェース回路の形態によっては、プリントコント
ローラが間違いなくデータを受信したことを送信先のホ
ストコンピュータに報告するまで、そのホストコンピュ
ータから次のデータが送信されないようにすることが可
能なものがある。
ローラが間違いなくデータを受信したことを送信先のホ
ストコンピュータに報告するまで、そのホストコンピュ
ータから次のデータが送信されないようにすることが可
能なものがある。
したがって、このようにホストコンピュータに対して物
理的に通信を禁止する手段を有するインタフェース回路
を、例えば第3図のプリンタコントローラ24にホスト
インタフェースとして設けるようにすれば、そのホスト
インタフェースに対して補助通信バッファを設ける必要
がなくなる。
理的に通信を禁止する手段を有するインタフェース回路
を、例えば第3図のプリンタコントローラ24にホスト
インタフェースとして設けるようにすれば、そのホスト
インタフェースに対して補助通信バッファを設ける必要
がなくなる。
そこで、例えば第3図のホストインタフェース30bを
ホストコンピュータ21bに対して物理的に通信を禁止
する手段を有するものとし、そのホストインタフェース
ESObに対応するインタラブドルーチン2を第9図に
示すように変更する。
ホストコンピュータ21bに対して物理的に通信を禁止
する手段を有するものとし、そのホストインタフェース
ESObに対応するインタラブドルーチン2を第9図に
示すように変更する。
このルーチンがスタートすると、まずホストインタフェ
ース30bが通信可能状態か否かを判断し、通信可能状
態ならばホストインタフェース50bに対してホストコ
ンピュータ21bへの受信報告を許可した後、ホストイ
ンタフェース30bからの入力データを通信バッファに
入れ、次に第5図のステップ15及び16と同様な処理
を行なって処理を終了する。
ース30bが通信可能状態か否かを判断し、通信可能状
態ならばホストインタフェース50bに対してホストコ
ンピュータ21bへの受信報告を許可した後、ホストイ
ンタフェース30bからの入力データを通信バッファに
入れ、次に第5図のステップ15及び16と同様な処理
を行なって処理を終了する。
一方、通信不可能状態ならばホストインタフェース30
bに対してホストコンピュータ21bへの受信報告を禁
止した後、処理を終了する。
bに対してホストコンピュータ21bへの受信報告を禁
止した後、処理を終了する。
なお、この実施例におけるハード構成及びその他の機能
は前述の各実施例と同様である。
は前述の各実施例と同様である。
したがって、この実施例によると、最初に説明した実施
例で設けられた補助通信バッファ1〜3のうち、ホスト
インタフェースBobに対応する補助通信バッファ2を
削減することができる。
例で設けられた補助通信バッファ1〜3のうち、ホスト
インタフェースBobに対応する補助通信バッファ2を
削減することができる。
以上、この発明をレーザプリンタに適用した実施例につ
いて説明したが、この発明は各種プリンタ、イメージス
キャナ、デジタル複写機等の入出力機器に適用可能であ
る。
いて説明したが、この発明は各種プリンタ、イメージス
キャナ、デジタル複写機等の入出力機器に適用可能であ
る。
以上説明したように、この発明によれば、メモリを無駄
に使用することなく、データロスを確実に解消できる。
に使用することなく、データロスを確実に解消できる。
第1図はこの発明の基本的実施例の構成を示すブロック
図、 第2図はこの発明を適用するレーザプリンタのシステム
構成図、 第3図は同じくそのプリンタコンI・ローラの構成を示
すブロック図、 第4図はこの発明の一実施例としてのCPU35による
メインルーチンを示すフロー図、第5図は同じくそのホ
ストインタフェース30aに対応するインタラブドルー
チン1を示すフロー図、 第6図はこの発明の他の実施例としてのCPU35によ
るメインルーチンを示すフロー図、第7図は同じくその
ホストインタフェース60aに対応するインタラブドル
ーチン1を示すフロー図、 第8図はこの発明のさらに他の実施例としてのCPU3
5によるホストインタフェース30aに対応するインタ
ラブドルーチン1を示すフロー図、 第9図はこの発明のさらにまた他の実施例としてCPU
35によるホストインタフェース30bに対応するイン
タラブドルーチン2を示すフロー図である。 1・・・入出力機器 2〜4・・・外部装置5〜
7・・・通信手段 8・・・主通信バッファ9〜1
1・・・補助通信バッファ 12・・・通信制御装置 21a〜21c・・・ホストコンピュータ22・・・レ
ーザプリンタ 24・・・プリンタコントローラ 50、〜30c・・・ホストインタフェース35・・・
マイクロコンピュータ(cpu)56・・・ROM
37・・・RAM呂願人 株式会社
図、 第2図はこの発明を適用するレーザプリンタのシステム
構成図、 第3図は同じくそのプリンタコンI・ローラの構成を示
すブロック図、 第4図はこの発明の一実施例としてのCPU35による
メインルーチンを示すフロー図、第5図は同じくそのホ
ストインタフェース30aに対応するインタラブドルー
チン1を示すフロー図、 第6図はこの発明の他の実施例としてのCPU35によ
るメインルーチンを示すフロー図、第7図は同じくその
ホストインタフェース60aに対応するインタラブドル
ーチン1を示すフロー図、 第8図はこの発明のさらに他の実施例としてのCPU3
5によるホストインタフェース30aに対応するインタ
ラブドルーチン1を示すフロー図、 第9図はこの発明のさらにまた他の実施例としてCPU
35によるホストインタフェース30bに対応するイン
タラブドルーチン2を示すフロー図である。 1・・・入出力機器 2〜4・・・外部装置5〜
7・・・通信手段 8・・・主通信バッファ9〜1
1・・・補助通信バッファ 12・・・通信制御装置 21a〜21c・・・ホストコンピュータ22・・・レ
ーザプリンタ 24・・・プリンタコントローラ 50、〜30c・・・ホストインタフェース35・・・
マイクロコンピュータ(cpu)56・・・ROM
37・・・RAM呂願人 株式会社
Claims (1)
- 【特許請求の範囲】 1 それぞれ異なる外部装置との通信を司る複数の通信
手段を有し、そのいずれの通信手段においても外部装置
との通信がなされていない時には前記複数の通信手段を
全て通信可能状態にしておき、いずれかの通信手段によ
つて外部装置との通信が開始されると、その通信手段以
外の各通信手段を通信不可能状態にし、前記外部装置と
の通信を開始した通信手段における通信が終了した時に
、通信不可能状態にあつた通信手段を通信可能状態にす
る手段を備えた入出力機器において、 1個の主通信バッファと、前記各通信手段毎に前記主通
信バッファよりメモリ容量の小さい補助通信バッファと
を設けると共に、 通信可能状態にある通信手段からの入力データは前記主
通信バッファに格納し、通信不可能状態にある通信手段
からの入力データは該通信手段に対して設けられた補助
通信バッファに格納し、その通信手段が通信可能状態に
なつた時に、前記補助通信バッファに格納されているデ
ータを前記主通信バッファに移す通信制御手段を設けた
ことを特徴とする入出力機器。 2 それぞれ異なる外部装置との通信を司る複数の通信
手段を有し、そのいずれの通信手段においても外部装置
との通信がなされていない時には前記複数の通信手段を
全て通信可能状態にしておき、いずれかの通信手段によ
つて外部装置との通信が開始されると、それ以外の各通
信手段を通信不可能状態にし、前記外部装置との通信を
開始した通信手段における通信が終了した時に、通信不
可能状態にあつた通信手段を通信可能状態にする手段を
備えた入出力機器において、 1個の主通信バッファと、前記各通信手段毎に前記主通
信バッファよりメモリ容量の小さい補助通信バッファと
を設けると共に、 通信可能状態にある通信手段からの入力データは前記主
通信バッファに格納し、通信不可能状態にある通信手段
からの入力データは該通信手段に対して設けられた補助
通信バッファに格納し、前記主通信バッファを用いてい
る通信手段の通信が終了した時、いずれかの補助通信バ
ッファにデータが格納されていればそのデータを前記主
通信バッファへ移し、その補助通信バッファが設けられ
た通信手段のみを通信可能状態とし、それ以外の通信手
段は通信不可能状態にする通信制御手段を設けたことを
特徴とする入出力機器。 3 それぞれ異なる外部装置との通信を司る複数の通信
手段を有し、そのいずれの通信手段においても外部装置
との通信がなされていない時には前記複数の通信手段を
全て通信可能状態にしておき、いずれかの通信手段によ
つて外部装置との通信が開始されると、その通信手段以
外の各通信手段を通信不可能状態にし、前記外部装置と
の通信を開始した通信手段における通信が終了した時に
、通信不可能状態にあつた通信手段を通信可能状態にす
る手段を備えた入出力機器において、 1個の主通信バッファを設け、該主通信バッファよりメ
モリ容量の小さい補助通信バッファを前記通信手段の数
より1個少なく設けると共に、前記通信手段を通信不能
状態にする時にその各通信手段に対して前記補助通信バ
ッファを割り当て、通信可能状態にある通信手段からの
入力データは前記主通信バッファに格納し、通信不可能
状態にある通信手段からの入力データは該通信手段に対
して設けられた補助通信バッファに格納し、その通信手
段が通信可能状態になつた時に、前記補助通信バッファ
に格納されているデータを前記主通信バッファに移す通
信制御手段を設けたことを特徴とする入出力機器。 4 それぞれ異なる外部装置との通信を司る複数の通信
手段を有し、そのいずれの通信手段においても外部装置
との通信がなされていない時には前記複数の通信手段を
全て通信可能状態にしておき、いずれかの通信手段によ
つて外部装置との通信が開始されると、その通信手段以
外の各通信手段を通信不可能状態にし、前記外部装置と
の通信を開始した通信手段における通信が終了した時に
、通信不可能状態にあつた通信手段を通信可能状態にす
る手段を備え、 前記複数の通信手段のうちの少なくとも1つは、通信不
可能状態の時に接続されている外部装置に対して物理的
に通信を禁止する手段を持たない通信手段である入出力
機器において、 1個の主通信バッファを設け、前記外部装置に対して物
理的に通信を禁止する手段を持たない各通信手段に対し
て、それぞれ前記主通信バッファよりメモリ容量の小さ
い補助通信バッファを設けると共に、 通信可能状態にある通信手段からの入力データは前記主
通信バッファに格納し、通信不可能状態にあり且つ前記
補助通信バッファが設けられている通信手段からの入力
データは該通信手段に対して設けられた補助通信バッフ
ァに格納し、その通信手段が通信可能状態になつた時に
、前記補助通信バッファに格納されているデータを前記
主通信バッファに移す通信制御手段を設けたことを特徴
とする入出力機器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2048668A JPH03250968A (ja) | 1990-02-28 | 1990-02-28 | 入出力機器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2048668A JPH03250968A (ja) | 1990-02-28 | 1990-02-28 | 入出力機器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03250968A true JPH03250968A (ja) | 1991-11-08 |
Family
ID=12809708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2048668A Pending JPH03250968A (ja) | 1990-02-28 | 1990-02-28 | 入出力機器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03250968A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122073A (en) * | 1996-06-05 | 2000-09-19 | Seiko Epson Corporation | Communications terminal and interfacing method therefor |
JP2017162048A (ja) * | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | バッファリングシステム |
-
1990
- 1990-02-28 JP JP2048668A patent/JPH03250968A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122073A (en) * | 1996-06-05 | 2000-09-19 | Seiko Epson Corporation | Communications terminal and interfacing method therefor |
JP2017162048A (ja) * | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | バッファリングシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3325908B2 (ja) | 周辺装置を共用するための切り換えシステム | |
US7376853B2 (en) | Network apparatus, method for controlling the same, and program for the same | |
JP2010079729A (ja) | 情報処理システム及びその制御方法、並びに、コンピュータプログラム | |
JP2012175174A (ja) | ネットワーク通信装置、周辺装置、及びネットワーク通信方法 | |
US9552050B2 (en) | Information processing device, printing device, and control method | |
US9244692B2 (en) | Information processing apparatus, control method for information processing apparatus, and program to stop supply of clock to a DSP | |
JPH06139031A (ja) | プリンタコントローラ | |
JP2002244833A (ja) | プリンタ制御システム、プリンタ制御装置及びプリンタ制御方法 | |
JP3707509B2 (ja) | 多機能並行処理型電子装置 | |
JPH03250968A (ja) | 入出力機器 | |
CN111541825B (zh) | 电子装置及其控制方法 | |
JP2011173378A (ja) | 印刷装置 | |
JP2015215684A (ja) | 情報処理装置及び情報処理プログラム | |
EP3029544B1 (en) | Function control device apparatus including same and communication establishing method | |
JP3846089B2 (ja) | インターフェース装置、その制御方法および情報記録媒体 | |
JPH1078856A (ja) | 優先度別割り込み印刷方法およびシステム | |
JP2000155738A (ja) | データ処理装置 | |
JPH06187066A (ja) | 複数の中央演算処理装置を有するマイクロプロセッサ | |
JP2001260435A (ja) | 画像形成装置 | |
KR0168947B1 (ko) | 실시간 분산시스템에서 디스크를 갖지 않는 노드의 부팅 방법 | |
JPH10254721A (ja) | 印刷装置、その割込要求処理方法、及び記憶媒体 | |
JP3167062B2 (ja) | 画像記録装置 | |
CN116610601A (zh) | 一种数据传输装置及其控制方法、装置、介质 | |
JP2002259324A (ja) | データ処理装置 | |
JP2995420B2 (ja) | ネットワークの接続断方式 |