JPH11203065A - 印刷システム及び印刷装置 - Google Patents

印刷システム及び印刷装置

Info

Publication number
JPH11203065A
JPH11203065A JP1828098A JP1828098A JPH11203065A JP H11203065 A JPH11203065 A JP H11203065A JP 1828098 A JP1828098 A JP 1828098A JP 1828098 A JP1828098 A JP 1828098A JP H11203065 A JPH11203065 A JP H11203065A
Authority
JP
Japan
Prior art keywords
data
transfer
printing
transfer method
packet
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
Application number
JP1828098A
Other languages
English (en)
Other versions
JP3782573B2 (ja
Inventor
Jun Doi
純 土肥
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP01828098A priority Critical patent/JP3782573B2/ja
Priority to US09/228,405 priority patent/US6563597B1/en
Priority to EP99300175A priority patent/EP0930563A3/en
Publication of JPH11203065A publication Critical patent/JPH11203065A/ja
Application granted granted Critical
Publication of JP3782573B2 publication Critical patent/JP3782573B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Electrostatic Charge, Transfer And Separation In Electrography (AREA)

Abstract

(57)【要約】 【課題】 転送方式の変更を監視するための処理を単純
化して印刷処理全体の効率を上げることができる印刷シ
ステムを提供する。 【解決手段】 ある特定の状態を経過したことを検出
し、その特定の状態を経過した場合(経過した直後)に
は転送方式が変更されるであろうと予測して、その後か
ら転送されてくるデータに対して転送方式の変更があっ
たかを解析する。そして、転送方式の変更が解析された
場合は転送方式を変更する。また、転送方式が変更され
ると予測した後、転送されてきたデータが以前と同じ転
送方式であった場合そのままの方式で続行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、印刷装置とその上
位装置とからなる印刷システム、及び上位装置からの印
刷データを出力する印刷装置に関する。
【0002】
【従来の技術】従来、印刷装置とその上位装置とからな
る印刷システムでは、少なくとも2種類以上の印刷デー
タ転送方式を持つ場合、つまり、これらの転送方式を上
位装置と印刷装置の間で使い分けて使用する場合に、上
位装置又は印刷装置から転送されてくるデータを正常に
受信するために、ほとんど全ての転送データに対して解
析を行ない、転送方式が変更されていないかを監視する
ように制御していた。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来例の様に、転送方式の変更を監視するための解析処理
をほとんど全ての印刷データに対して実行するのは、実
際の印刷処理とは関係ない所に印刷装置(又は印刷シス
テム)の能力を投資することになり、印刷処理全体の効
率が悪化していた。
【0004】本発明は上記従来の問題点に鑑み、転送方
式の変更を監視するための処理を単純化して印刷処理全
体の効率を上げることができる印刷システム及び印刷装
置を提供することを目的とする。
【0005】
【課題を解決するための手段】上記目的を達成するため
に第1の発明は、印刷装置とその上位装置とを有し、こ
れらの装置の間で少なくとも2種類以上の転送方式によ
り印刷/制御データの転送を行う印刷システムにおい
て、特定の状態を経過した直後には前記転送方式が変更
されることを予測し、その予測に基づいて前記上位装置
と前記印刷装置のいずれか一方が転送方式を変更した場
合は、それに追随して前記上位装置と前記印刷装置のい
ずれか他方も転送方式を変更する構成にしたものであ
る。
【0006】第2の発明では、上記第1の発明におい
て、IEEE1284−1994で定義されている上位
装置から指示されるデバイスID要求があったことを条
件に、前記印刷装置が前記転送方式の変更を予測し、デ
バイスID要求の直後には転送方式を変更可能な状態に
するものである。
【0007】第3の発明では、上記第1の発明におい
て、IEEE1284−1994で定義されている上位
装置から指示されるデバイスID要求に対して、前記印
刷装置がデバイスIDデータを前記上位装置へ転送した
又は転送終了したことを条件に、印刷装置が前記転送方
式の変更を予測し、前記デバイスIDデータの上位装置
に対する転送を開始した又は転送終了した直後には転送
方式を変更可能な状態にするものである。
【0008】第4の発明では、上記第3の発明におい
て、前記上位装置から指示されたデバイスID要求に対
して前記印刷装置が返すデバイスIDデータの中に特定
のデータが含まれていた場合は、前記デバイスIDデー
タの上位装置に対する転送が終了した直後に前記転送方
式を変更可能な状態にするものである。
【0009】第5の発明では、上記第1の発明におい
て、前記上位装置から指示されるインターフェイス上の
初期化信号が発行されたことを条件に、前記印刷装置が
前記転送方式の変更を予測し、前記初期化信号に対する
処理を行なった直後には転送方式を変更可能な状態にす
るものである。
【0010】第6の発明では、上記第1の発明におい
て、前記印刷装置に設けられた操作手段から指示される
装置の初期化が実行されたことを条件に、印刷装置が前
記転送方式の変更を予測し、前記初期化に対する処理を
行なった直後には転送方式を変更可能な状態にするもの
である。
【0011】第7の発明では、上記第1の発明におい
て、システム全体の電源が遮断された状態から投入状態
になったことを条件に、前記印刷装置が前記転送方式の
変更を予測し、前記電源投入時の処理を終了した直後に
は転送方式を変更可能な状態にするものである。
【0012】第8の発明では、上記第1の発明におい
て、前記印刷装置又は前記上位装置に設けられた操作手
段により指示された場合は前記転送方式の変更を予測
し、前記操作手段の操作直後には転送方式を変更可能な
状態にするものである。
【0013】第9の発明では、上記第1の発明におい
て、前記上位装置又は印刷装置から特定のコマンドが転
送され、それを印刷装置又は上位装置が解析した場合は
前記転送方式の変更を予測し、前記特定コマンドの解析
直後には転送方式を変更可能な状態にするものである。
【0014】第10の発明では、上記第1乃至第9の発
明において、前記転送方式が変更可能な状態になってか
ら、前記上位装置又は前記印刷装置から転送されてくる
データが一定数になるまでは、該転送データの解析を継
続するものである。
【0015】第11の発明では、上記第10の発明にお
いて、前記転送データの解析を継続するデータ数は、操
作手段により予め決定するものである。
【0016】第12の発明では、上記第10の発明にお
いて、前記転送データの解析を継続するデータ数は、前
記上位装置又は前記印刷装置から予め送られてくるコマ
ンドに従って決定するものである。
【0017】第13の発明では、上記第1乃至第10の
発明において、前記転送方式が変更可能な状態になって
も、以前と同じ転送方式で前記上位装置又は前記印刷装
置から印刷/制御データの転送が行われた場合は、転送
方式の変更をせず以前と同じ転送方式を使用するもので
ある。
【0018】第14の発明では、上記第1乃至第10の
発明において、前記転送方式が変更可能な状態になった
後、前記上位装置又は前記印刷装置からの印刷/制御デ
ータの転送量が少なく、転送方式の変更が行われたか否
かの判断が不可能な状態が一定時間続いた場合は、転送
方式の変更をせず以前と同じ転送方式を使用するもので
ある。
【0019】第15の発明では、上記第14の発明にお
いて、前記転送方式の変更が行われたか否かの判断が不
可能な状態から、転送方式の変更をせず以前と同じ転送
方式を使用することを決定するまでの時間を、操作手段
により予め決定するものである。
【0020】第16の発明では、上記第14の発明にお
いて、前記転送方式の変更をせず以前と同じ転送方式を
使用することを決定するまでの時間は、前記上位装置又
は前記印刷装置から予め送られてくるコマンドに従って
決定するものである。
【0021】第17の発明では、上位装置との間で少な
くとも2種類以上の転送方式により印刷/制御データの
転送を行う印刷装置において、特定の状態を経過した直
後には前記転送方式が変更されることを予測して、該転
送方式を変更可能な状態にするものである。
【0022】第18の発明では、上記第17の発明にお
いて、IEEE1284−1994で定義されている上
位装置から指示されるデバイスID要求があったことを
条件に、前記転送方式の変更を予測し、デバイスID要
求の直後には転送方式を変更可能な状態にするものであ
る。
【0023】第19の発明では、上記第17の発明にお
いて、IEEE1284−1994で定義されている上
位装置から指示されるデバイスID要求に対して、デバ
イスIDデータを前記上位装置へ転送した又は転送終了
したことを条件に、前記転送方式の変更を予測し、前記
デバイスIDデータの上位装置に対する転送を開始した
又は転送終了した直後には転送方式を変更可能な状態に
するものである。
【0024】第20の発明では、上記第19の発明にお
いて、前記上位装置から指示されたデバイスID要求に
対して返信するデバイスIDデータの中に特定のデータ
を含む場合は、前記デバイスIDデータの上位装置に対
する転送が終了した直後に前記転送方式を変更可能な状
態にするものである。
【0025】第21の発明では、上記第17の発明にお
いて、前記上位装置から指示されるインターフェイス上
の初期化信号が発行されたことを条件に、前記転送方式
の変更を予測し、前記初期化信号に対する処理を行なっ
た直後には転送方式を変更可能な状態にするものであ
る。
【0026】第22の発明では、上記第17の発明にお
いて、印刷に関する操作を行う操作手段を有し、前記操
作手段から指示される装置の初期化が実行されたことを
条件に、前記転送方式の変更を予測し、前記初期化に対
する処理を行なった直後には転送方式を変更可能な状態
にするものである。
【0027】第23の発明では、上記第17の発明にお
いて、装置の電源が遮断された状態から投入状態になっ
たことを条件に、前記転送方式の変更を予測し、前記電
源投入時の処理を終了した直後には転送方式を変更可能
な状態にするものである。
【0028】第24の発明では、上記第17の発明にお
いて、印刷に関する操作を行う操作手段を有し、前記操
作手段により指示された場合は前記転送方式の変更を予
測し、前記操作手段の操作直後には転送方式を変更可能
な状態にするものである。
【0029】第25の発明では、上記第17の発明にお
いて、前記上位装置から特定のコマンドが転送され、そ
れを解析した場合は前記転送方式の変更を予測し、前記
特定コマンドの解析直後には転送方式を変更可能な状態
にするものである。
【0030】第26の発明では、上記第17乃至第25
の発明において、前記転送方式が変更可能な状態になっ
てから、前記上位装置から転送されてくるデータが一定
数になるまでは、該転送データの解析を継続するもので
ある。
【0031】第27の発明では、上記第26の発明にお
いて、印刷に関する操作を行う操作手段を有し、前記転
送データの解析を継続するデータ数は、前記操作手段に
より予め決定するものである。
【0032】第28の発明では、上記第26の発明にお
いて、前記転送データの解析を継続するデータ数は、前
記上位装置から予め送られてくるコマンドに従って決定
するものである。
【0033】第29の発明では、上記第17乃至第26
の発明において、前記転送方式が変更可能な状態になっ
ても、以前と同じ転送方式で前記上位装置から印刷/制
御データの転送が行われた場合は、転送方式の変更をせ
ず以前と同じ転送方式を使用するものである。
【0034】第30の発明では、上記第17乃至第26
の発明において、前記転送方式が変更可能な状態になっ
た後、前記上位装置からの印刷/制御データの転送量が
少なく、転送方式の変更が行われたか否かの判断が不可
能な状態が一定時間続いた場合は、転送方式の変更をせ
ず以前と同じ転送方式を使用するものである。
【0035】第31の発明では、上記第30の発明にお
いて、転送方式の変更が行われたか否かの判断が不可能
な状態から、転送方式の変更をせず以前と同じ転送方式
を使用することを決定するまでの時間を、操作手段によ
り予め決定するものである。
【0036】第32の発明では、上記第30の発明にお
いて、前記転送方式の変更をせず以前と同じ転送方式を
使用することを決定するまでの時間は、前記上位装置か
ら予め送られてくるコマンドに従って決定するものであ
る。
【0037】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。
【0038】<第1実施形態>図1は、本発明の第1実
施形態に係る印刷システムの概略構成を示すブロック
図、及び図2は、印刷データの流れから見た印刷装置内
部のブロック図である。また図3は、本実施形態に適用
されるレーザービームプリンタ(以下「LBP」と記
述)の内部構造を示す断面図である。
【0039】[LBPの構成]まず、本実施形態を適用
するに好適なLBPの構成について図3を参照しながら
説明する。尚、本実施形態を適用するプリンタは、LB
Pに限られるものではなく、他のプリント方式のプリン
タ(印刷装置)でもよいことは言うまでもない。
【0040】このLBPは、不図示のデータ源から文字
パターンの登録や定型書式(フォームデータ)などの登
録が行える。同図において、1000はLBP本体であ
り、外部に接続されている上位装置(ホストコンピュー
タ等)から供給される文字情報(文字コード)やフォー
ム情報あるいはマクロ命令などを入力して記憶するとと
もに、それらの情報に従って対応する文字パターンやフ
ォームパターンなどを作成し、記録媒体である記録紙上
に像を形成する。
【0041】1012は、操作のためのスイッチおよび
LED表示器などが配されている操作部、1001はL
BP1000全体の制御およびホストコンピュータから
供給される文字情報などを解析するプリンタ制御ユニッ
トである。この制御ユニット1001は、主に文字情報
を対応する文字パターンのビデオ信号に変換してレーザ
ドライバ1002に出力する。レーザドライバ1002
は半導体レーザ1003を駆動するための回路であり、
入力されたビデオ信号に応じて半導体レーザ1003か
ら発射されるレーザ光1004をオン/オフ切り替えす
る。
【0042】レーザ1004は、回転多面鏡1005で
左右方向に振られ静電ドラム1006上を走査する。こ
れにより、静電ドラム1006上には文字パターンの静
電潜像が形成される。この潜像は、静電ドラム1006
周囲の現像ユニット1007により現像された後、記録
紙に転送される。この記録紙にはカットシートを用い、
カットシート記録紙は、LBP1000に装着した用紙
カセット1008に収納され、給紙ローラ1009およ
び搬送ローラ1010と1011とにより装置内に取り
込まれて、静電ドラム1006に供給される。
【0043】[印刷装置と上位装置の構成]次に、図1
を参照しつつ、本発明の実施形態に係る印刷装置と上位
装置の構成を説明する。
【0044】ここでは、LBP(図3)を例にして説明
する。なお、本発明の機能が実行されるのであれば、単
体の機器であっても、複数の機器からなるシステムであ
っても、LAN等のネットワークを介して処理が行われ
るシステムであっても本発明を適用できることは言うま
でもない。
【0045】図1において、3000はホストコンピュ
ータである。このホストコンピュータ3000は、RO
M103のプログラム用ROMに記憶された文書処理プ
ログラム等に基づいて図形、イメージ、文字、表(表計
算等を含む)等が混在した文書処理を実行するCPU1
01を備え、システムバス104に接続される各デバイ
スをCPU101が総括的に制御する。また、このRO
M103のプログラム用ROMには、CPU101の制
御プログラム等を記憶し、ROM103のフォント用R
OMには上記文書処理の際に使用するフォントデータ等
を記憶し、ROM3のデータ用ROMは上記文書処理等
を行う際に使用する各種データを記憶する。
【0046】102はRAMで、CPU101の主メモ
リ、ワークエリア等として機能する。105はキーボー
ドコントローラ(KBC)で、キーボード109や不図
示のポインティングデバイスからのキー入力を制御す
る。106はCRTコントローラ(CRTC)で、CR
Tディスプレイ(CRT)110の表示を制御する。1
07はメモリコントローラ(MC)で、ブートプログラ
ム、種々のアプリケーション、フォントデータ、ユーザ
ファイル、編集ファイル等を記憶するハードディスク
(HD)、フロッピーディスク(FD)等の外部メモリ
111とのアクセスを制御する。
【0047】108はプリンタコントローラ(PRT
C)で、所定の双方向性インタフェース1021を介し
てプリンタ1000に接続されて、プリンタ1000と
の通信制御処理を実行する。なお、CPU101は、例
えばRAM102上に設定された表示情報RAMへのア
ウトラインフォントの展開(ラスタライズ)処理を実行
し、CRT110上でのWYSIWYGを可能としてい
る。また、CPU101は、CRT110上の不図示の
マウスカーソル等で指示されたコマンドに基づいて登録
された種々のウインドウを開き、種々のデータ処理を実
行する。
【0048】プリンタ1000において、112はプリ
ンタCPUで、ROM113のプログラム用ROMに記
憶された制御プログラム等、或いは外部メモリ114に
記憶された制御プログラム等に基づいてシステムバス1
15に接続される各種のデバイスとのアクセスを総括的
に制御し、印刷部インタフェース116を介して接続さ
れる印刷部(エンジン)117に出力情報としての画像
信号を出力する。
【0049】CPU112の内部(または図示しない外
部)にタイマーなどの時間管理手段も持っている。ま
た、このROM113のプログラムROMには、実施形
態のフローチャート(後述する)で示されるようなCP
U112の制御プログラム等を記憶しても良い。
【0050】ROM113のフォント用ROMには、上
記出力情報を生成する際に使用するフォントデータ等を
記憶し、ROM113のデータ用ROMにはハードディ
スク等の外部メモリ114が無いプリンタの場合には、
ホストコンピュータ上で利用される情報等を記憶してい
る。CPU112は、入力部118を介してホストコン
ピュータとの通信処理が可能となっており、プリンタ内
の情報等をホストコンピュータ3000に通知可能に構
成されている。
【0051】119はCPU112の主メモリ、ワーク
エリア等として機能するRAMで、図示しない増設ポー
トに接続されるオプションRAMによりメモリ容量を拡
張することができるように構成されている。なお、RA
M119は、出力情報展開領域、環境データ格納領域、
NVRAM等に用いられる。前述したハードディスク
(HD)、ICカード等の外部メモリ114は、メモリ
コントローラ(MC)120によりアクセスを制御され
る。外部メモリ114は、オプションとして接続され、
フォントデータ、エミュレーションプログラム、フォー
ムデータ等を記憶する。
【0052】また、118は前述した操作パネルで操作
のためのスイッチおよびLED表示器等等が配されてい
る。また、前述した外部メモリは1個に限らず、少なく
とも1個以上備え、内蔵フォントに加えてオプションフ
ォントカード、言語系の異なるプリンタ制御言語を解釈
するプログラムを格納した外部メモリを複数接続できる
ように構成されていても良い。さらに、図示しないNV
RAMを有し、操作パネル1012からのプリンタモー
ド設定情報を記憶するようにしても良い。
【0053】[印刷装置の内部構成]次に、図2を参照
しつつ本発明における印刷データの流れから見た印刷装
置内部構成を説明する。
【0054】上位装置3000から転送されてきた印刷
データは、入力部118を経由して受信バッファ130
0へ蓄積される。その後、受信バッファ1300より、
解析部1301へ受け渡され、解析後、展開部1302
へ転送される。展開部1302が、展開用メモリ130
3へ印刷データを展開し終ると、転写部1304が印刷
部1/F116を経由して印刷部117へデータを転送
して記録媒体に記録する。尚、展開用メモリ1303は
RAM119の一部であっても良い。
【0055】[2種類の転送方式]次に、本実施形態で
適用する印刷(制御)データの2種類の転送方式につい
て、図4(a),(b),(c)を参照して説明する。
【0056】図4(a)に示す第1の転送方式は、印刷
(制御)データの継り(連続性)について何ら制限を設
けないものである。例えば全部で100バイトの印刷
(制御)データがあった場合に、上位装置から印刷装置
に対してそれが全部で100バイトであることは一切知
らされない。どのようなタイミングで何バイトのデータ
が転送されてくるか印刷装置には分からない。
【0057】図4(b)に示す第2の転送方式は、印刷
(制御)データを何バイトかの塊として転送するもので
ある。実際に必要な印刷(制御)データの他にへッダと
呼ばれる、印刷(制御)データの塊を管理するデータを
設け、そのへッダ部分にいくつかの情報を持たせること
で印刷(制御)データを何バイトかの塊とすることがで
きる。故に上位装置から印刷装置へ転送されるデータ
は、必ずヘッダ→印刷(制御)データの順番に転送され
る。また、上記へッダ部分とそれに続く印刷(制御)デ
ータの何バイトかの塊を、まとめてパケットと呼ぶ。
【0058】例えば、全部で100バイトの印刷(制
御)データがあった場合には、ヘッダ部分にはこれから
100バイトのデータが転送されることが記述されてお
り、ヘッダ部分を受信した印刷装置はその後100バイ
トの印刷(制御)データが転送されてくることが分か
る。この例の場合パケットの大きさはへッダのバイト数
+100バイトである。
【0059】まず、本実施形態においては、便宜上、へ
ッダの大きさを6バイトの固定長とした場合を説明す
る。へッダの内容は図4(c)に示す。本実施形態で使
用されるへッダにおいて、1,2,5,6番目のバイト
データにはパケット転送方式における制御データが入っ
ている、また3,4番目のバイトデータはへッダに続い
て転送されるデータ数が入っている(前記データ数はパ
ケットの6バイト分も含む場合もあるが、それは個々の
パケット方式によって異なる)。
【0060】また、上記2つの転送方式のデータがやり
とりされる部分、すなわち本実施形態におけるインター
フェイス121、プリンタコントローラ(PRTC)1
08及び入力部118(図1)が、以下の2つの技術、
セントロニクスインターフェイス(IEEE1284)
とIEEE1284.4等から構成されている場合も説
明されるので、それぞれの技術の概要についてもここで
説明しておく。
【0061】[セントロニクスインターフェイスの概
略]セントロニクスインターフェイス(以下、セント
ロ)は、ホストコンピュータ(以下、ホスト)からプリ
ンタへデータの転送を行なう主なインターフェイスの1
つである。米国セントロニクス社が自社のプリンタ用に
開発したコンピュータからプリンタヘデータを送るため
の規格で、安価で高速のデータを送ることができをパソ
コン(PC)からプリンタへのデータ送信手段として広
く普及しているが、標準規格化はされていない。ホスト
とプリンタ毎に異なる多くのバリエーションがあるが、
基本的には似ている。基本となる制御は、3つの信号線
(DATA STROBE、ACK、BUSY )で行なう。後述のニブ
ルモード、バイトモード、ECPモードなどに対して、
本転送方式をコンパチビリティモードと呼ぶ。
【0062】コンパチビリティモードについて、より詳
しく説明する。前記のように多くのバリエーションがあ
るため、ここで全てを説明することはできないので、キ
ヤノンのLBP−730を例として用いることにする。
【0063】まず、図5にセントロのコネクタのピン配
置を示す。36個のピンが配置されている。図中の数字
は、各ピンの番号である。各ピンがそれぞれ1つの信号
線に対応している。例えば、ピン番号1のピン(単に1
ピンと記す)は、DATA STROBEという信号線、という具
合であり、以下に具体的に説明する。
【0064】1ピン(DATA STROBE)は、定常状態はH
IGHであり、LOWになった時にプリンタがDATA
1〜DATA8の状態を読み込む。
【0065】2〜9ピン(DATA1〜8 )は、ホストから
送られてくるデータの第0ビットから第7ビット目の情
報を示す。HIGHはデータが1であり、LOWはデー
タが0であることを示す。定常状態は不定であり、DATA
STROBEがLOWの時のみ有効である。
【0066】10ピン(ACK )は、定常状態はHIGH
であり、1バイト受信完了し、次の1バイトを受信でき
る状態になった時と、受信バッファに空きがある状態で
オフライン状態からオンライン状態に移行した時に、L
OWパルスを発行する。
【0067】11ピン(BUSY)は、プリンタがホストコ
ンピュータからのデータを受信できるかどうかを示す。
LOWは受信可能状態を示し、HIGHは受信不可能状
態を示す。オフライン状態になった時と、エラーが発生
している時と、1バイト受信したが、まだ次の1バイト
を受信できない状態の時と、受信バッファに空きが無い
状態の時とに、HIGHになる。
【0068】12ピン(PE)は、プリンタにエラーが発
生している時にHIGHになる。それ以外の状態ではL
OWである。
【0069】13ピン(SELECT)は、プリンタがオンラ
イン状態にある時にHIGHになる。それ以外の状態で
はLOWである。
【0070】14ピン(AUTO FD)は未使用、15ピン
(AUX OUT1 )は常時HIGH、16ピン(0V)はプリ
ンタのグランドレベル、17ピン(Frame GND)はプリ
ンタのフレームグランド、18ピン(+5V )は常時HI
GH、19〜30ピン(GND )はグランドである。
【0071】31ピン(1NIT)は、通常HIGHを保た
せるが、LOWにすることでインプットプライム処理を
行なう。32ピン(FAULT )は、プリンタがオンライン
状態にある時にHIGHになる。それ以外の状態ではL
OWである。
【0072】33ピン(AUX OUT2 )は常時LOW、3
4ピン(AUX OUT3 )は常時LOW、35ピン(AUX OUT
4 )は常時HIGH、36ピン(SELECT IN)は未使用
である。
【0073】コンパチビリティモードにおいて、主に使
用されるのは1ピンから11ピン、すなわち、DATA STR
OBE 、DATA1 、DATA2 、DATA3 、DATA4 、DATA5 、DATA
6 、DATA7 、DATA8 、ACK 、BUSYの各信号線である。コ
ンパチビリティモードのハンドシェークを図6に示す。
これは、1バイトのデータを転送する例である。
【0074】[IEEE1284の概略]このコンパチ
ビリティモードは、ホストからプリンタへの片方向のみ
のデータ転送しかできず、プリンタからホストへのデー
タ転送はできないという欠点があった。そこで、このプ
リンタからホストへのデータ転送できないという点を改
良するため、コンパチビリティモードの上位互換とし
て、セントロ双方向の通信ハンドシェークがIEEEに
より標準規格化された(IEEE1284−199
4)。
【0075】このIEEE1284−1994は、前で
説明したコンパチビリティモード(ホストからプリンタ
ヘデータを転送するための従来からあるハンドシェー
ク)に加え、さらに新たにニブルモード、バイトモー
ド、ECPモードなど、複数の通信モードを追加して規
定している。これらの新たに追加されたモードにも、コ
ンパチビリティモードと同じ形状のコネクタ、ケーブル
を使用することができる。
【0076】ニブルモードは、プリンタからホストへの
データ転送を行なうためのモードで、前記コンパチビリ
ティモードと交互に使用することによって、ホスト−プ
リンタ間の双方向通信が実現できる。すなわち、ホスト
からプリンタへの送信はコンパチビリティモードで行な
い、プリンタからホストへの送信はニブルモードで行な
うことで、双方向通信を行なうことができる。
【0077】ニブルモードでは、ACK とAUTO FDを使っ
て制御を行ない、データはBUSY、PE、SELECT、FAULT の
4つの信号線にセットする。データの1バイトを、4ビ
ットずつに分け、まず下位4ビットを送って次に上位4
ビットを送り、8ビット(1バイト)転送を実現してい
る。なお、FAULT は、特定のタイミングでは、ホストへ
送るデータを準備できているかどうかをプリンタが示す
ためにも使われる。
【0078】コンパチビリティモードにおいて、ホスト
のみが制御していた信号線DATA1,DATA2,…,DATA8を使
用しないでハンドシェークする。これらのDATA1,DATA
2,…,DATA8のことをデータバスと呼ぶ。ニブルモードで
は、データバスを使わないので、ホスト側のハードの対
応の必要がない。そのため、比較的容易に実装が可能で
ある。バイトモードも、ニブルモード同様にプリンタか
らホストへの通信を行なうためのモードで、前記コンパ
チビリティモードと交互に使用することによって、ホス
トプリンタ間の双方向通信が実現できる。すなわち、ホ
ストからプリンタへの送信はコンパチビリティモードで
行ない、プリンタからホストへの送信はバイトモードで
行なうことで、双方向通信を行なうことができる。
【0079】バイトモードでは、STROBE、ACK 、BUSY、
PE、AUTO FD、FAULT で制御を行ない、データは、デー
タバス(DATA1、DATA2、・・・、DATA8)にセットす
る。ニブルモードと比較した場合、1バイト(8ビッ
ト)のデータを同時に送るため効率が良いが、データバ
スをプリンタ側が制御するので、ホスト側のハードの対
応が必要となる。
【0080】ECPモードは、ホストからプリンタへの
通信とプリンタからホストへの通信の両方を行なうため
のモードである。内部的には、フォーワードフェーズ
(Fotward Phase:ホストからプリンタ)
と、リバースフェーズ(Reverse Phase:
プリンタからホスト)とを切替えることにより、同じE
CPモード内で、双方向のデータ転送を可能としてい
る。
【0081】ECPモードでは、STROBE、ACK 、BUSY、
AUTO FD 、INIT、FAULT 、PEを使って制御を行ない、デ
ータはデータバスにセットする。データバスをプリンタ
側が制御するので、ホスト側のハードの対応が必要とな
る。1つのモード内で、双方向のデータ転送が可能であ
るので、モード間を移行するオーバヘッドが少なくて済
むことと、ECPのフォーワード転送のハンドシェーク
は、コンパチビリティモードのハンドシェークに比べ
て、転送速度が高速化できるように考慮されていること
が、メリットである。
【0082】[IEEE1284.4の概要]上で説明
されたIEEE1284を使ったデータ転送(またはそ
の他のインターフェイス)を使い、2つの機器(例えば
上位装置と印刷装置)の間で、クレジットという概念を
利用したフロー制御と、同時に複数個の情報(例えばデ
ータと制御情報)をやりとりするための多重化(マルチ
チャネル化)の2つを主に提供するための制御がIEE
E1284.4であるといえる。
【0083】また、上位装置及び印刷装置の内部処理に
おいてIEEE1284.4の制御が位置するのは、転
送データを使って印刷を行なう部分の処理(通称アプリ
ケーション)と実際のデータ転送部分であるIEEE1
284の中間部分である。その関係を表す概念図を図7
に示す。
【0084】次に、IEEE1284.4で扱うデータ
の構成について説明する。IEEE1284.4で扱う
データは、必ず何バイトかの塊を一つの単位としてお
り、それをパケットと呼んでいる。パケットの構造は図
8に示す様に定義されている。それは、6バイトのヘッ
ダとそれに続くデータから構成されている。
【0085】更にヘッダの部分を詳しく見ると、第1バ
イト目は、プライマリィ・ソケット(Primary
Socket)ID(以下、PSIDと記す)であり、
後述するIEEE1284.4の制御の初期化を開始し
た側の装置のソケット(Socket)IDを表してい
る(ソケットIDについても後述)。
【0086】第2バイト目は、セコンダリィ・ソケット
(Secondary Socket)ID(以下、S
SIDと記す)であり、前記初期化を開始した側の装置
に対してもう一方の装置のソケットIDを表している。
【0087】第3及び第4バイト目は、ヘッダ6バイト
を含めたパケット全体のサイズを表している。例えば1
0バイトのデータを含むパケットの場合はここには16
(ヘッダ6バイト+データ10バイト)という値が入る
ことになる。比較例としてパケット化されたデータとパ
ケット化されていないデータを同時に表した図を図9
(a),(b)に示す。この図9(a),(b)は、文
字データa,b,c,d,e,f,g,h,i,jの1
0文字(仮に10バイト)のデータを転送する場合を示
し、同図(a)は、パケット化されたデータを示し、先
頭のヘッダ(6バイト)が表す情報を元に16バイトの
塊となっている。同図(b)は、パケット化されないデ
ータを示し、各々のデータの継りは全くない。また、デ
ータが0バイトのパケットの時はへッダの部分のみの6
バイトを表す値(6)が入る。但し実際の内容は16進
数で表記されるので上記16と6はそれぞれ0x001
0、0x0006と表される(16進数の場合、通常
「0x」の表記で始まり、1バイトが2桁で表記され
る)。
【0088】第5バイト目は、クレジット(Credi
t)を表す(クレジットについても後述)。第6バイト
目は、コントロール(Control)と呼ばれる制御
データを表す。本1バイトの中の1ビット(1バイトは
8ビット)が、普通のパケットであるか否か(普通のパ
ケットの場合0で表記)を表しており、ほとんどの場合
が普通のパケットなので0となっている。残りの7ビッ
トは予約領域であり、現時点では使われていない(0で
表記される)。故に、本バイトは通常0x00である。
【0089】データ部分は、上位装置及び印刷装置それ
ぞれのアプリケーションで作られた転送データ(印刷デ
ータや制御データ)、又は後述するIEEE1284.
4における制御コマンドが入ることになる。
【0090】[ソケットIDの説明]次にソケットID
について説明する。
【0091】マルチチャネル化は、1つのインターフェ
イス(例えばIEEE1284)で接続される2つの装
置の中にある複数の処理(主にアプリケーション部分の
処理)が、お互いに自分の相手(もう一方の装置内の処
理)を識別して、それぞれ独立にデータのやりとりを実
行することである。それを実行するために、装置内の各
々の処理につける個別の番号がソケットIDである。
【0092】続いて、ソケットIDの概念を説明する。
例えば、上位装置のアプリケーションに2つの処理(処
理A、処理B)があり、その各々に対し印刷装置のアプ
リケーションに2つの処理(処理Aに対して処理a、処
理Bに対して処理b)があった場合において、PSID
を処理A=0x10、処理B=0x20、SSIDを処
理a=0x10、処理b=0x20としておく。そし
て、処理Aがデータ(「あ」、「い」)を送る時、IE
EE1284.4の制御でパケットのPSID、SSI
Dを0x10、0x10、処理Bがデータ(「か」、
「き」)を送る時、同様にPSIP、SSIDを0x2
0、0x20とすることにより、送信されたパケットが
どの処理から、どの処理へ転送されたかを認識すること
ができ、確実に目的の処理へデータが転送され、論理的
に複数のチャネルを使った事になる(マルチチャネル
化)。
【0093】図10〜図14は、データがそれぞれの処
理を経由して上位装置側の複数の(図では2つの)アプ
リケーションから、印刷装置側の目的とする複数のアプ
リケーション(こちらも図では2つ)へ独立して転送さ
れる様子を順番に表している。
【0094】図10は、上位装置側のアプリケーション
に2つの処理(処理A、B)があり転送したいデータ
(処理A=「あ」、「い」)」、処理B=「か」、
「き」)をそれぞれ持っている所を表している。
【0095】図11は、上位装置側のIEEE128
4.4の処理でパケットが作られ、それぞれのパケット
には前記ソケットIDが付けられた様子を表している。
なお、パケットがどの様な手順で転送されるかは後述す
る。
【0096】図12は、パケットにされたデータがイン
ターフェイスの処理(IEEE1284の処理)を経由
して上位装置から印刷装置へ転送されている様子を表し
ている。図に示している様にパケットが転送される順番
は特に規定されていない、図においては4つのパケット
が、処理A(「あ」のデータを持ったパケット)、処理
B(「か」のデータを持ったパケット)、処理Aの2つ
目(い)」のデータを持ったパケット、処理Bの2つ目
(「き」のデータを持ったパケット)の順番で転送され
ている。
【0097】図13は、印刷装置へ転送されたパケット
を印刷装置側のIEEE1284.4が受け取り、パケ
ットから抜き出したデータをソケットIDに従って各々
のアプリケーションへ渡している所を表している。図1
4は、その結果を示すもので、印刷装置内の目的のアプ
リケーションの処理(処理a、b)へデータが渡される
様子を表している。
【0098】なお、上記説明とは逆方向(印刷装置の処
理から上位装置の処理へ)の転送についても同様である
ことはいうまでもない。
【0099】また、ソケットIDの0x00(PSI
D、SSID共に0x00)の場合はIEEE128
4.4の処理を実行するために必要なコマンド(Com
mand)とリプライ・パケット(Reply Pac
ket:後述する)を転送するためだけに使われる。
【0100】[IEEE1284.4における基本的な
制御の手順]次に、IEEE1284.4における基本
的な制御の手順(処理の流れ)を図15、図16及び図
17に示すフローチャートを使って説明する。
【0101】まず、IEEE1284.4の制御を開始
したい装置が、もう一方の装置に対してイニット・コマ
ンド・パケット(Init Command Pack
et)を発行する(ステップS101)。なお、通常、
上位装置が印刷装置に対して発行するので、これ以後、
イニット・コマンド・パケットを発行した方を上位装
置、またもう一方を印刷装置と呼ぶことにする。イニッ
ト・コマンド・パケットは図18に示すデータ構造であ
り、クレジットの部分以外は事実上固定データとなる。
イニット・コマンド・パケットを受けとった印刷装置
は、IEEE1284.4の制御を開始できるかの各種
判断を行ない(ステップS102)、その結果に応じた
イニット・リプライ・パケット(Init Reply
Packet)を作成し(ステップS103,S10
4)、かつIEEE1284.4の制御を開始できるの
であれば、それに備えた初期化も実行する。
【0102】そして、上位装置に対してイニット・リプ
ライ・パケットを返す(ステップS105)。イニット
・リプライ・パケットの構造は図19に示す。この図1
9に示すように、イニット・リプライ・パケットには、
正常にIEEE1284.4の処理を開始できるか、何
らかの理由により開始できないかが含まれており(Re
sultデータ)、それを見て上位装置側は、IEEE
1284.4の処理を継続するか判断する(ステップS
106)。
【0103】正常に処理が継続できるなら、上位装置は
続いてオープン・チャネル・コマンド・パケット(Op
en Channel Command Packe
t)を発行する(ステップS107)。そうでない場合
は再度イニット・コマンド・パケットを印刷装置へ対し
て転送するか、IEEE1284.4による制御をあき
らめる(処理P1)。オープン・チャネル・コマンド・
パケットの構造は図20に示す。
【0104】本パケットが印刷装置へ受信されると、印
刷装置は、パケットの中のパラメータの一つであるセコ
ンダリィ・ソケットIDの値が自分が持っているSSI
Dであるか確認する(ステップS108)。自分が持っ
ている(=オープン可能な)SSIDであるならば、チ
ャネルを確立(オープン)することになる。
【0105】また、その時のソケットID(PSID、
SSID)の組み合わせにより、オープンしたチャネル
を識別することが可能となる。前述したソケットIDの
説明において、上位装置のアプリケーションの処理Aと
印刷装置のアプリケーションの処理aを繋ぐチャネル
は、そのソケットIDの組合せPSID=0x10、S
SID=0x10で識別できる、ということである。同
様に、上位装置のアプリケーションの処理Bと印刷装置
のアプリケーションの処理bを繋ぐチャネルは、PSI
D=0x20、SSID=0x20で識別できる)。
【0106】続いて、上位装置が要求する、上位装置か
ら印刷装置へ転送する時のパケットサイズの最大値を示
すパラメータであるプライマリィ・トゥ・セコンダリィ
・パケット・サイズ(Primary To Seco
ndary PacketSize:以下、第1のパケ
ットサイズと記す)と、上位装置が要求する、印刷装置
から上位装置へ転送する時のパケットサイズの最大値を
示すパラメータであるセコンダリィ・トゥ・プライマリ
ィ・パケット・サイズ(SecondaryTo Pr
lmary Packet Size:以下、第2のパ
ケットサイズと記す)とを調べ、各々自分が用意できる
パケットサイズであるか判断する(ステップS70
9)。
【0107】その判断の結果、要求サイズか可能なら
ば、後述するオープン・チャネル・リプライ・パケット
(Open Channel Reply Packe
t)にその旨を示すパラメータをセットする。要求に沿
えないならば、自分が用意できる第1及び第2のパケッ
トサイズをパラメータとしてセットすることになる。
【0108】続いて、上位装置が要求するクレジットに
関する情報を表すパラメータであるクレジット・リクエ
ステッド(Credit Requested)とマキ
シマム・アウトスタンディング・クレジット(Maxi
mum Outstanding Credit)を解
析し(ステップS110)、2つのパラメータの組み合
わせによって表される要求に対する回答を、前述のパケ
ットサイズと同様にオープン・チャネル・リプライ・パ
ケットのパラメータを使って行なう。
【0109】オープン・チャネル・コマンド(Open
Channel Command)の各パラメータの
解析が終了すると、印刷装置は回答をまとめ、オープン
・チャネル・リプライ・パケットを作成し(ステップS
111)、上位装置へ転送する(ステップS112)。
オープン・チャネル・リプライ・パケットの構造は図2
1に示す。
【0110】上位装置は、オープン・チャネル・リプラ
イ・パケットのパラメータを解析し(ステップS11
3)、チャネルがオープンされたかを知る。そして、チ
ャネルがオープンできない場合には、別のチャネルをオ
ープンするか(ステップS107へ戻る)、IEEE1
284.4の制御を終了する。終了する場合は後述のス
テップS122へ進む(処理P2)。
【0111】チャネルがオープンされたのであれば、デ
ータパケットをオープンしたチャネルへ転送することが
できる(ステップS114)。データパケットの構造は
前述した図8の通りである。その時のパケットサイズは
自分(上位装置=オープン・チャネル・コマンド・パケ
ットを発行した側)が要求したパケットサイズと、オー
プン・チャネル・リプライにより戻ってくる印刷装置側
が要求するパケットサイズとを比較して、どちらか小さ
い方を採用する。もちろん、データパケットの転送は、
逆方向(印刷装置から上位装置へ)の転送も可能である
し、後述されるクレジットに関するコマンドパケットの
転送もこの時点で有効なものとなる(もちろんチャネル
がオープンされる前でも転送は可能であるが意味がな
い)。
【0112】また、チャネルのオープンは、装置内の処
理が許す限り、またソケットIDの組合わせが重ならな
い限り何個でも可能である(ステップS707へ戻るこ
とを繰り返す:処理P3)。上記のソケットIDの説明
例では、上位装置の処理Aと印刷装置の処理aを繋ぐチ
ャネル、同じく処理Bと処理bを繋ぐチャネルの2つが
オープンされていることになる。
【0113】上記説明では、上位装置及び印刷装置内部
のアプリケーションの処理同士を繋ぐチャネルがオープ
ンされる迄の流れを説明したが、IEEE1284.4
の制御を司る各種コマンド及びリプライ(イニット、オ
ープンチャネルなど)が転送されるチャネル(以下、コ
マンドチャネルと記す)は、暗黙の内にオープンされて
いるので、上記手順を踏む必要はない。
【0114】また、既に説明してある様にそのチャネル
を識別するためのソケットIDは0x00である。デー
タのやり取りが終了した(終了させたい)チャネルは、
クローズ・チャネル・コマンド・パケット(Close
Channel Command Packet)で
終了(クローズ)させることができる。上位装置がチャ
ネルをクローズしようとした場合、クローズ・チャネル
・コマンド・パケットを印刷装置へ転送する(ステップ
S115)。クローズ・チャネル・コマンド・パケット
の構造は図22に示す。
【0115】クローズ・チャネル・コマンド・パケット
のパラメータであるプライマリィ・ソケットID、セコ
ンダリィソケットIDは、クローズしたいチャネルを示
すソケットIDの組合せが記述されている。印刷装置
は、そのパラメータを解析し(ステップS116)、ク
ローズを指定されたチャネルがクローズ可能か(オープ
ンされているか)チェックし(ステップS117)、そ
のチャネルをクローズし、その旨を上位装置へクローズ
・チャネル・リプライ・パケット(Closechan
nel Reply Packet)を使って回答する
ための準備をする(ステップS118)。
【0116】同様にクローズできないと判断されれば、
リプライパケットもその様に作られる(ステップS11
9)。リプライパケットが作り終わるとそれは上位装置
へ転送される(ステップS120)。クローズ・チャネ
ル・リプライ・パケットの構造は図23に示す。
【0117】上位装置は、クローズ・チャネル・リプラ
イ・パケットを受け取り、そのパラメータであるRes
ultを解析することによりチャネルがクローズされた
かを知る(ステップS121)。チャネルがクローズさ
れた後、必要があれば再びクローズ・チャネル・コマン
ド・パケットによりチャネルをオープンすることも何ら
問題ないし(ステップS707へ戻る:処理P4)、そ
のままIEEE1284.4の制御を終了することもで
きる。その場合、上位装置は、エグジット・コマンド・
パケット(Exit Command Packet)
を印刷装置へ転送する(ステップS122)。エグジッ
ト・コマンド・パケットの構造は図24に示す。
【0118】エグジット・コマンド・パケットを印刷装
置が受け取ると、IEEE1284.4を使った処理
(オープンされたチャネル上でのデータやり取りなど)
を終了させた後(ステップS123)、エグジット・リ
プライ・パケット(ExitReply Packe
t)を作成し上位装置へ転送する(ステッブS12
4)。エグジット・リプライ・パケットの構造は図25
に示す。これによりIEEE1284.4の制御は終了
し、パケット(IEEE1284.4のパケット)によ
るデータ転送も終了する。
【0119】再びIEEEI284.4の制御を開始し
た場合は、イニット・コマンド・パケットの転送処理か
ら実行する必要がある。もちろんその他のコマンド・パ
ケットと同様、エグジット・コマンド・パケットはIE
EE1284.4の制御を実行している時なら何時発行
しても構わない。
【0120】ところで、ステップS114まで実行し、
チャネルをオープンすれば、データパケットの転送が開
始できる様になるのではあるが、データパケットを送る
場合には、転送先の処理からクレジットをもらっていな
いと転送することができない様に制御している。そうす
ることで、IEEE1284.4はデータ(パケット)
のフロー制御を実現しているのである。すなわち上記ソ
ケットIDの説明でいえば、上位装置側の処理Aが印刷
装置側の処理aに対しパケットを転送する場合、処理a
からクレジットをもらわないと処理Aはパケットを転送
できない。
【0121】フロー制御とは、自分の持っている資源
(一般的には読み書き可能な記憶手段であるバッファ等
と呼ばれるものであり、本説明では印刷装置を想定して
以下受信バッファと呼ぶ)に相手から転送されるデータ
を一時的にでも蓄えることになる場合は、受信バッファ
の容量を越えてデータを受信しないように制御しなけれ
ば、転送データを取りこぼして処理が正常に動作しなく
なってしまう。その様な状況を防ぐため、データ転送の
停止及び再開を調整するのがフロー制御である。
【0122】[クレジットの概念]次に、IEEE12
84.4におけるパケット転送のフロー制御に使われる
クレジットの概念について説明する。
【0123】クレジットは、パケットの受け取り側から
送り側へ対して発行され、受け取り側がどれだけパケッ
トを受け取る準備ができているかを示している。パケッ
トの受け取り側は、クレジットとして発行した分のパケ
ットは必ず受け取れることを保証している。クレジット
のやり取りには、クレジット・コマンド・パケット(C
redit Command Packet)と、クレ
ジット・リクエスト・コマンド・パケット(Credi
t Request Command Packet)
と、それに対するリプライ・パケットが主に使われる
が、データパケット(Data Packet)やオー
プン・チャネル・リプライ・パケットによってもクレジ
ットを発行することができる。但しコマンドチャネルだ
けは特別で、初期化時に既に2つのクレジットを持って
いる。それはどんな場合でもIEEE1284.4のイ
ニットやエラー処理を実行することができる様にする為
である。
【0124】[クレジットの状態遷移]次に、図26を
使って簡単にクレジットの状態遷移を説明する。
【0125】まず、装置(上位装置、印刷装置)に電源
が投入された様な初期化状態では、内部的にコマンドチ
ャネルのクレジットは「2」に、データ(パケット)を
転送する為のチャネル(この時点ではまだオープンされ
ていない)のクレジットはもちろん「0」である。本説
明では、データを転送するチャネルについて1つしか表
記していないが、複数個チャネルがオープンされたので
あれば、クレジットの管理もチャネルごとに行なわれ
る。
【0126】次に上位装置がイニット・コマンド・パケ
ットを使ってIEEE1284.4の制御を開始しよう
とする場合、イニット・コマンド・パケットの発行によ
り、上位装置側のコマンドチャネルのクレジットは−1
されて「1」となる。同時に印刷装置側ではイニット・
コマンド・パケットを受け取るとコマンドチャネルのク
レジットは+1されて「3」となる。それは、コマンド
チャネルで転送されるパケットのクレジットパラメータ
(へッダの第5バイト目)には必ず1が入っていること
が約束されているからである。コマンドチャネルにおい
てクレジットが0になり、パケットを転送できなくなる
ことは、以降の処理が続行不可能になることを意味し、
それを避けるために上記約束が決められている。
【0127】イニット・コマンド・パケットに対して印
刷装置が、イニット・コマンド・パケットを返すこと
で、上記と逆に印刷装置のコマンドチャネルのクレジッ
トが−1されて「2」となり、上位装置のコマンドチャ
ネルのクレジットは+1されて「2」に戻る。次に上位
装置がオープン・チャネル・コマンド・パケットによ
り、データ用のチャネルをオープンしようとし、それに
対して印刷装置がオープン・チャネル・リプライを正常
に返した時、オープン・チャネル・リプライ・パケット
のクレジットパラメータ(第15及び第16バイト目)
を使って上位装置に対し2とクレジットを発行すると、
上位装置側のデータを転送する為のチャネルのクレジッ
トは+2されて「2」となる。
【0128】次に上位装置はデータを転送する為のチャ
ネルもオープンできたし、同チャネルに対するクレジッ
トも印刷装置から受け取ったので、データパケットを転
送することが可能となり、データパケットを連続して2
つ転送し2つ目のデータパケットには印刷装置に対しデ
ータを転送する為のチャネルのクレジットを1つ、デー
タパケットのクレジットパラメータ(第4バイト目)を
使って発行する。
【0129】その時点で印刷装置のデータを転送する為
のチャネルのクレジットは+1されて「1」となる。ま
た、コマンドチャネルのクレジットはコマンドパケット
を転送されていないので(また自分からも転送していな
いので)「2」のままである。ここで始めて印刷装置も
上位装置に対しデータパケットを転送できる様になる。
【0130】次に上位装置はデータパケットを2個連続
して転送してしまったので、自分の持っているデータを
転送する為のチャネルのクレジットを使い果たしてしま
ったので、次のデータパケットを送る為に、クレジット
・リクエスト・コマンド・パケットを使って、印刷装置
に対しクレジットの要求をする。クレジット・リクエス
ト・パケットの構造を図27に示す。
【0131】クレジット・リクエスト・コマンド・パケ
ットによりクレジットを要求された印刷装置は、その要
求の内容を解析し(パラメータを見て)、それに沿った
リプライを返そうとする。この例の場合、1つだけクレ
ジットを上位装置に発行できるとする。発行されるクレ
ジットは、クレジット・リクエスト・リプライのクレジ
ットパラメータ(第11及び第2バイト目)に入れて、
上位装置へ転送する。クレジット・リクエスト・リプラ
イ・パケットの構造は図28に示す。
【0132】そのリプライを受信することにより、上位
装置のデータを転送する為のチャネルのクレジットは+
1され「1」となり、データパケットを転送することが
再び可能となる。また、印刷装置もデータを転送する為
のチャネルのクレジットを上位装置から発行されている
ので、データパケットを1つだけ転送することができ
る。
【0133】そこで、図に示すように印刷装置がデータ
パケットを1つ転送すれば、持っていたクレジットは−
1され「0」となる。このデータパケットの中のクレジ
ットパラメータを使って上位装置へクレジットを発行す
ることも、もちろん可能であり、上位装置は発行された
クレジットによって、自分の持っているクレジットが増
加する。図ではデータ転送の為のチャネルのクレジット
が+1され合計「2」になっている。
【0134】[本発明の印刷装置の制御手順]図29
は、本発明に係る印刷装置の制御手順を示すフローチャ
ートである。
【0135】印刷装置の電源が投入され、装置の初期化
(ステップS200)が終了すると、通常、印刷(制
御)データが上位装置から転送されてくるのを待つ状態
になる(ステップS201)。本実施形態では、電源投
入時の初期化処理で前記第1のデータ転送方式(データ
の継りについて何ら制限を設けないもの)を受信できる
ように設定されているとする。これは、前述したIEE
E1284−1994のみを使ってデータを転送する方
式である。本実施形態における印刷装置の印刷(制御)
データの受信は、図示しないハードウエアによって、図
30に示すフローチャートの様な処理が実行され、複数
バイト印刷(制御)データを受信したことが、割り込み
(又はフラグの監視)により知ることができる様に構成
されている。
【0136】印刷(制御)データが1バイト転送されて
くると、自動的にメモリ(RAM119)の設定された
場所へ順番に書き込まれる(ステップS300)。メモ
リ(RAM119)のどの場所へ書き込むかという設定
は、初期化(ステップS200)等で設定しておく。同
様に初期化(ステップS200)等で設定しておいたバ
イト数まで印刷(制御)データを受信したか調べ(ステ
ップS301)、設定バイト数に達した場合は、何らか
の割り込み処理を発生させるか、設定バイト数受信した
ことを示すフラグを立てる(ステップS302)、設定
バイト数まで達していなければ次のデータが転送されて
来るのを待つ。すなわち印刷(制御)データの受信待ち
(ステップS201)はステップS302で発生させる
割り込み処理(又はフラグが立つこと)を待っているこ
とになる。
【0137】印刷(制御)データが前記設定バイト数受
信されると、受信データの解析を行なう(ステップS2
02)、解析の結果それが制御データであることが分か
ると(ステップS203)、データにしたがった処理、
例えば、印刷した用紙を排出する場所が複数ある場合に
は、その排出先を決定したり、前述した、図示しないN
VRAMに記憶されている、操作パネル1012から設
定されたプリンタモード設定情報の内容を初期化した
り、印刷装置内部の設定の変更を実行したりする(ステ
ップS208)。
【0138】解析の結果、受信したデータが印刷データ
であること分かると、さらにそれが印刷実行(起動)の
命令であるか調べる(ステップS204)、印刷実行の
データでなければ、データは印刷データそのものである
から、更に解析/展開して印刷実行を待つことになる
(ステップS205)。
【0139】ステップS204で印刷実行(起動)の命
令であることが分かると、印刷部117が使用可能か調
べ(ステップS206)、使用可能でないなら可能にな
るまで待つ。印刷部117が使用可能なら、それまでに
解析/展開してあった印刷データを印刷する(ステップ
S207)。通常、上記の様な流れで印刷(制御)デー
タを受信しそれに従い印刷処理を実行している。
【0140】ここで、上位装置とのインターフェイス1
21が前述したIEEE1284−1994に定義され
ている様なパラレルインターフェイス(通称:セントロ
ニクスインターフェイス)であった場合、既存の信号線
を利用して、前述のニブルモード、バイトモード、EC
Pモードなどにより、印刷装置から上位装置に対するデ
ータの転送(以下、リバース転送)を行うことができ
る。また、リバース転送への切り替わりを実行する際の
処理を利用して自動的に印刷装置の各種設定を上位装置
が知ろうとするのが、いわゆるデバイスID要求処理で
ある。なお、図示しないが、もちろんデバイスID要求
処理についてもIEEE1284−1994に定義され
ている。
【0141】[転送方式の変更]本実施形態では、上記
デバイスID要求を利用し印刷(制御)データの転送方
式の変更を実施するが、それを図31に示すフローチャ
ートに従って以下に説明する。
【0142】通常の印刷(制御)データの転送(前述の
コンパチビリティモードによる転送)を行なっている際
に、使用されているセントロニクスインターフェイス上
の信号線とは別の信号線の状態を変化させることを発端
とした、IEEE1284−1994に定義されている
方法を使って、任意のタイミングで上位装置はデバイス
IDを要求してくることが可能である。
【0143】デバイスID要求があった場合、印刷装置
はそれに続いて実行されるリバース転送の時、自分で用
意したデータ(文字列データ:図32にその一例を示
す)を上位装置へ転送しなければならないので、まずそ
のデータを準備する(ステップS400)。また、上位
装置へ転送するデータは予めROM13に記憶しておい
ても良い。
【0144】次に、本印刷装置が前記第2のデータ転送
方式(パケットを使用した転送方式、例えば前述したI
EEE1284.4を利用する方式:以下、単にパケッ
ト方式という)を実行することが可能か判断する(ステ
ップS401)。
【0145】判断するといっても、可能か否かは、印刷
装置内のROM113や外部メモリ114等に記憶され
ている制御プログラムや、入力部118や図示しないそ
の他の入力部からダウンロードされ、RAM119等に
記憶されている制御プログラムが、パケット方式に対応
しているかを調べるだけであり、印刷装置にとってはあ
らかじめ決まっていることではある。
【0146】パケット方式が可能な場合は、上位装置へ
転送するデバイスIDデータに、特別な文字列を追加
し、そのことを記憶しておく(ステップS402)。図
33に特別な文字列を追加した一例を示す。パケット方
式が不可能な場合や、印刷装置内部の状況によっては
(例えば故障箇所がありパケット方式が不可能な場
合)、デバイスIDデータには特別な文字列が追加され
ない。
【0147】作成したデバイスIDデータは、続いて実
行されるリバース転送(ステップS403)により上位
装置へ転送される。リバース転送によってデバイスID
データが転送終了したかを確認し(ステップS40
4)、転送が終了したならばステップS405へ進む。
デバイスIDデータの転送終了後もう一度、本印刷装置
がパケット方式を実行することが可能か否かを判断する
(ステップS405)。この判断はステップS402で
記憶したデータを使用してもよい。
【0148】パケット方式を実行することが可能である
ならば、デバイスIDデータにも自分(印刷装置)がパ
ケット方式を制御可能であることを示す文字列を追加
(前記ステップS402)したはずなので、そのデバイ
スIDデータを見た(解析した)上位装置から、次に
(直後に)転送されてくる印刷(制御)データがパケッ
ト方式であろうと予測し、その解析を実行できるように
準備する(ステップS406)。この準備とは、以下に
説明される、受信データの解析時の処理を変更するた
め、図30のステップS301で使う(比較に使われ
る)受信するデータ数の設定バイト数を設定し直した
り、判断の決定を行うフラグ等の状態を変化させること
により行なわれる(前記フラグの使用法については後
述)。
【0149】準備が終了した状態では、図29のステッ
プS202において、受信したデータを解析する際、ま
ず先頭の6〜10数バイトを調べ、その形態がパケット
方式の(中の)へッダ等であるかを調べる、それがへッ
ダまたはパケット方式データであると確認された場合
は、今後、上位装置から転送されてくる印刷(制御)デ
ータがパケット方式による転送であることを完全に認識
し、それに従い処理を続行する。この場合、ヘッダ部分
の6バイトや、後述するIEEE1284.4の制御の
為のコマンドパケットは、解析が終了すると次の処理
(ステップS203)へは渡されない。
【0150】上記準備が終了した状態であっても、ステ
ップS202において受信したデータの先頭6〜10数
バイトがパケット方式のへッダ等でないと判断された場
合は、受信したデータを全て次の処理(ステップS20
3)へ渡し、その後は前記第1のデータ転送方式のまま
であると認識し、ステップS406で行なったフラグ等
の設定を準備以前の状態に戻し、その後は、それに従い
処理を続行する(パケット方式におけるへッダの解析な
どは一切行なわない)。なお、この様な状態になっても
再び上位装置からデバィスID要求があれば再度転送方
式を変更することは可能である。
【0151】[転送データの解析]ここで、上記図29
のステップS202の動作において、前記第2のデータ
転送方式であるパケット方式がIEEE1284.4で
あった場合の転送データの解析について、図34、図3
5、図36を用いて詳細に説明する。
【0152】上記説明の様に、上位装置からデバイスI
D要求を受けて、デバイスIDデータを転送した直後に
受信されるデータは、6〜10数バイト溜ってからステ
ップS202の処理へ渡される(ステップS501)。
第2のデータ転送方式がIEEE1284.4の場合、
最初に受信するバイト数は「8(バイト)」に設定され
る(8バイト溜ってからステップS202へ渡され
る)。
【0153】次に前記ステップS406で設定されたフ
ラグを解析する(ステップS502)。フラグの状態が
パケット方式になっていればステップS503へ進む、
そうでなければ受信したデータ(ステップS501へ渡
されたデータ)は全てステップS203へ渡される。ス
テップS503では、この処理へ初めて来たか、つまり
デバイスIDデータを上位装置へ転送した後に初めて受
信したデータであるか否かの判断を行なう。ここでの判
断もステップS406で設定されたフラグ(前記ステッ
プS502で使ったフラグとは別のフラグ)を利用して
いる。
【0154】初めて来たのであればステップS504へ
進み、8バイトのデータがIEEE1284.4のパケ
ットのヘッダ部とそれに続くデータであり、かつそのパ
ケットがイニット・コマンド・パケット(図18)であ
るかを調べる。なぜなら、本ステップ(ステップS50
4)へ来る前は、言うまでもなく前記第1のデータ転送
方式だったので、そこから上位装置が1EEE128
4.4の制御を開始しようとするなら、前述した様にイ
ニット・コマンド・パケットを初めに転送しなければな
らないからである。
【0155】イニット・コマンド・パケットは、図18
を見れば分かるように、8バイトの構成がクレジットパ
ラメータ(第5バイト目)を除き、第1バイト目から順
に、0x00、0x00、0x00、0x08、0xX
X(不定)、0x00、0x00、0x10とほぼ固定
なので、このタイミングで送られてくるデータの組合わ
せは、前記第1のデータ転送方式で転送されてくる印刷
(制御)データとは明らかに違うことが分かる(パケッ
ト化されたデータと、そうでないデータの違いは図9
(a),(b)に記述)。
【0156】イニット・コマンド・パケットであると判
断されれば、ステップS505へ進むが、そうでなけれ
ばステップS506へ進み、次に受信するデータからは
前記第1のデータ転送方式であり、パケット方式である
かの判断は必要ないとフラグを設定し(ステップS50
2で使うフラグ)、かつ今受信したデータも全てステッ
プS203へ渡す。もちろんステップS501へ渡され
るバイト数の設定も適当な値に直す。ステップS505
では、イニット・コマンド・パケットに対して必要な処
理を実行する(これらのIEEE1284.4の処理に
ついては前述の通り)。
【0157】次にステップS507へ進み、次のパケッ
トを受信する準備をする。今回はイニット・コマンド・
パケットの後なので、次はパケットのヘッダ分である4
バイトを受信したらステップS501へ進む様に設定
し、ステップS503で使用したフラグ(デバイスID
データを上位装置へ転送した後に初めて受信したデータ
であるかの判断を行なうフラグ)を変更し、ステップS
503からステップS508へ進むようにする。その
後、次のデータを受信するべくステップS201の処理
へ戻る。
【0158】上記処理(ステップS507迄)を実行し
IEEE1284.4の制御を使ったパケット方式のデ
ータ転送に切り替わった後の処理を続いて説明する。
【0159】ステップS508では、受信したデータが
へッダ部分(初めの4バイト)であるか、それに続くヘ
ッダの残り2バイト+データ部分であるかがフラグによ
ってチェックされる。フラグはステップS507でセッ
トされており、今は(イニット・コマンド・パケットを
受信した後は)、ヘッダが受信されているはずであると
いう状態になっている。よって、フラグの値に従い、ス
テップS509へ進み、このパケットのデータ数(図
8、Length)を示すパラメータである受信データ
の3バイト目と4バイト目を見て、次に受信するデータ
数(ステップS301で使用する設定値)を決定する。
【0160】例えば、パケットが図20に示すオープン
・チャネル・コマンド・パケットであったなら、3バイ
ト目と4バイト目は、0x00、0x11となっている
はずなので、次に受信するデータ数は、13(0x11
−0x04=0x0d(=13))と設定する。また、
次に受信するデータはへッダの残り2バイト+データ部
分であることを示すフラグ(ステップS508でチェッ
クするフラグ)の値も設定する。さらに、受信データの
1バイト目と2バイト目、すなわちPSID、SSID
が各々0x00、0x00であるかを見て、そのパケッ
トがIEEE1284.4の制御を行なうコマンド(前
記オープン・チャネル・コマンド・パケット等)なの
か、そうでないのか(データパケットであるのか)を判
断し、後で使うフラグ(ステップS511で使用)を設
定しておく。言うまでもないがPSID、SSID共に
0x00、0x00場合がコマンドである。
【0161】その後、再度データを受信するべくステッ
プS201の処理へ戻る。もしステップS509の処理
で受信したへッダ部分(初めの4バイト)が異常な値で
あると判断したらステップS510へ進み、エラー時の
処理(エラーの種類に見合った処理)を実行する。パケ
ットの先頭4バイトを受信した後、再びステップS20
1の処理からデータを受信して再び来るのは、ステップ
S508でチェックするフラグの値に従い、ステップS
511である。
【0162】ステップS511では、受信したデータが
IEEEI284.4の制御を実行するコマンドなのか
を示すフラグ(ステップS509で設定したフラグ)に
より処理を分ける。受信したデータがIEEE128
4.4の制御を行なうコマンドである場合は、ステップ
S512へ進み、各種コマンドにしたがった処理を実行
する。今受信したデータの先頭から3バイト目はコマン
ドパラメータのはず(パケットの先頭から7バイト目)
であり(図20等を参照)、そこを調べることにより何
のコマンドなのか解析できる。ちなみに先頭の1バイト
目(パケットの先頭から数えて5バイト目)はクレジッ
ト、2バイト目(パケットの先頭から数えて6バイト
目)はコントロールパラメータである(図8を参照)。
各種コマンドに従った処理を実行した後は、ステップS
507へ進み、次のパケットを受信する準備を行なう。
【0163】ステップS511で受信データがデータパ
ケットであると判断した場合はステップS513へ進
み、今受信したデータのデータ部分のみを抜き出して次
の処理(ステップS203)へ渡す。今受信したデータ
の先頭の2バイトは前記した様にパケットのへッダデー
タの残りであるクレジット、コントロールパラメータで
あるので、後の処理(ステップS203以降)では必要
ない。また、前記コマンドの場合と同様に、次の受信の
時にはパケットの先頭から受信できる様にステップS5
07で行なったのと同様の各種設定を実行する。
【0164】この様に、本印刷装置はデバイスID要求
があった場合は、直後に転送されてくるデータがパケッ
ト方式かどうか判断可能な状態になっているので、上位
装置は印刷装置からリバース転送により送られてくるデ
バイスIDデータの中を調べ、前記した特別な文字列
(図33)が含まれていた場合は、デバイスIDデータ
を受信終了後に印刷装置へ転送する印刷(制御)データ
は、パケット方式を採用することが可能となる。
【0165】上記第1実施形態によれば、ある特定の状
態を経過したことを検出し、その特定の状態を経過した
場合(経過した直後)には転送方式が変更されるであろ
うと予測して、その後から転送されてくるデータに対し
て転送方式の変更があったかを解析する。そして、転送
方式の変更が解析された場合は転送方式を変更する。ま
た、転送方式が変更されると予測した後、転送されてき
たデータが以前と同じ転送方式であった場合そのままの
方式で続行する。これにより、転送方式の変更を監視す
るための処理が単純化され、印刷処理全体の効率を上げ
ることが可能となる。
【0166】なお、上記第1実施形態の変形例としては
例えば次のようなものがある。
【0167】(1)上記第1実施形態では、上位装置か
らのデバイスID要求に対して、印刷装置が特別な文字
列を加えたデバイスIDデータを転送(リバース転送)
し終った後上位装置が転送方式をパケット方式に変更し
たが(もちろん印刷装置はその時点で転送方式が変更さ
れても対応できる準備は済んでいる)、デバイスID要
求を実行した直後に転送方式を変更したり、印刷装置が
特別な文字列をデバイスIDデータに加えたかを判断す
ることなく、単にデバイスIDデータの転送(リバース
転送)が終了した時点で転送方式を変更しても同様な効
果が得られる。
【0168】(2)上記第1実施形態及び変形例(1)
において、IEEE1284−1994に定義されてい
るデバイスID要求の代わりに、パラレルインターフェ
イス(例えばセントロインターフェイス)における初期
化信号(通称インプットプライム、又はInit信号)
を使った、印刷装置に対する初期化、又は操作部101
2のスイッチ等を使った初期化を実行した直後に印刷装
置は転送方式が変更されても対応できる様に準備し、上
位装置が印刷(制御)データの転送方式を変更しても同
様な効果が得られる。
【0169】(3)上記第1実施形態において、上位装
置からのデバイスID要求の代わりに、操作部1012
からスイッチ等を使って指示を出し、印刷装置はその指
示があった直後から受信するデータがパケット方式に変
更されても対応できる様に準備しても、同様な効果が得
られる。
【0170】(4)上記第1実施形態において、印刷装
置が電源投入時の初期化(図29のステップS200)
で、パケット方式の転送方式に変更されても対応できる
様にしておいても、同様な効果が得られる。
【0171】(5)上記第1実施形態において、上位装
置からのデバイスID要求の代わりに、特別なコマンド
(制御データ)を転送し、そのコマンドにより印刷装置
は転送方式が変更されても対応できる様に準備し、上位
装置が印刷(制御)データの転送方式を変更しても同様
な効果が得られる。
【0172】(6)上記第1実施形態及び上記変形例
(1)〜(5)において、印刷装置(又は上位装置)の
準備が終了し、転送方式が変更可能な状態になった後、
上位装置(又は印刷装置)から転送されてくるデータ量
が少なく、例えば図30のステップS301において指
定数データが受信されない状態のままであり、転送方式
が変更されたか判断できない状態が一定時間継続した場
合は、転送方式の変更を断念し、以前と同じ転送方式と
して処理を続行する様にしても同様な効果が得られる。
【0173】(7)上記変形例(6)において、転送方
式が変更されたか判断できない状態から、転送方式の変
更を断念し以前と同じ転送方式として処理の続行を開始
するまでの時間を、操作部1012や上位装置からのコ
マンド等で決定しても同様な効果が得られる。
【0174】<第2実施形態>上記第1実施形態におい
て、印刷装置がデバイスIDを上位装置へ転送した後、
上位装置から転送されてくるデータの転送方式が第2の
データ転送方式であるパケット方式(以下、パケット方
式と記す)のデータであるか解析し、もしパケット方式
のデータでなければ(例えばIEEE1284.4のイ
ニット・コマンド・パケットでなければ)、その後はパ
ケット方式のデータ転送を断念し、第1のデータ転送方
式として処理を継続するようになっているが、パケット
方式であるかを解析するデータ数(例えばバイト数)が
ある一定の数になるまで、解析を継続しても同様な効果
が得られる。
【0175】以下に第2実施形態の制御の流れを図37
に示すフローチャートを用いて説明する。
【0176】印刷装置がデバイスIDデータを転送し終
ると、パケット方式であるかの解析を実行すべきデータ
数(X)を設定する(ステップS601)。次に上位装
置から転送されてくるデータを何バイトか受信する(ス
テップS602)、受信の方法については上記第1実施
形態で述べた方法でよいし、その他の方法であってもか
まわない。
【0177】次に受信したデータがパケット方式である
かを解析する(ステップS603)。パケット方式であ
ると分かった場合は、この後パケット方式(例えばIE
EE1284.4の制御方式)で処理を続ける(本フロ
ーチャートの処理から抜ける:処理P11)。パケット
方式でないと判断した場合は、ステップS604へ進
み、既に設定されている「パケット方式であるかの解析
を実行すべきデータ数」Xから今回受信したデータ数を
引く。
【0178】続くステップS605において、計算した
結果Xが0以下になっていれば、一定数データを受け取
ったが、それまでにパケット方式のデータは受信されな
かったということになり、その後は前記第1のデータ転
送方式で処理を継続する(処理P12)。もちろん今回
受信したデータは全て後の処理(例えば前記上記第1実
施形態の図29のステップS203)へ渡される。
【0179】計算の結果Xが0より大きかったた場合
は、まだパケット方式であるかの解析を継続するので、
今回受信したデータを次の処理(例えば上記第1実施形
態の図29のステップS203)へ渡したあと、次に上
位装置から転送されてくるデータを受信すべく、ステッ
プS602へ戻る。
【0180】
【発明の効果】以上説明したように、本発明によれば、
少なくとも2種類以上の印刷(制御)データ転送方式
を、上位装置と印刷装置の間で使い分けて使用する場合
において、転送方式の変更を監視するための処理が単純
化され、印刷処理全体の効率を上げることが可能とな
る。
【図面の簡単な説明】
【図1】本発明の第1実施形態に係る印刷システムの概
略構成を示すブロック図である。
【図2】印刷データの流れから見た印刷装置内部のブロ
ック図である。
【図3】本実施形態に適用されるLBPの内部構造を示
す断面図である。
【図4】印刷(制御)データの2種類の転送方式を示す
図である。
【図5】セントロのコネクタのピン配置を示す図であ
る。
【図6】コンパチビリティモードのハンドシェークを示
す図である。
【図7】アプリケーンョンとIEEE1284.4とI
EEE1284の関係を簡単に表した図である。
【図8】IEEE1284.4のパケットの基本的な構
成を表した図である。
【図9】IEEE1284.4のパケットを使用するデ
ータと該パケットを使用しないデータとを比較して表し
た図である。
【図10】IEEE1284.4のマルチチャネルの動
作を表した図である。
【図11】IEEE1284.4のマルチチャネルの動
作を表した図である。
【図12】IEEE1284.4のマルチチャネルの動
作を表した図である。
【図13】IEEE1284.4のマルチチャネルの動
作を表した図である。
【図14】IEEE1284.4のマルチチャネルの動
作を表した図である。
【図15】IBEE1284.4の基本的な動作を説明
したフローチャートである。
【図16】図15の続きのフローチャートである。
【図17】図16の続きのフローチャートである。
【図18】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図19】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図20】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図21】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図22】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図23】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図24】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図25】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図26】IEEE1284.4のフロー制御で使われ
るクレジットの動きを表した図である。
【図27】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図28】IEEE1284.4の制御で使われる基本
的なパケットの構造を表した図である。
【図29】本発明に係る印刷装置の制御手順を示すフロ
ーチャートである。
【図30】本発明に係る印刷装置の制御手順を示すフロ
ーチャートである。
【図31】本発明に係る印刷装置の制御手順を示すフロ
ーチャートである。
【図32】デバイスIDデータ(文字列)を一例を示す
図である。
【図33】デバイスIDデータ(特別な文字列)を一例
を示す図である。
【図34】本発明の制御でIEEE1284.4が使用
された場合の転送データの解析を示すフローチャートで
ある。
【図35】図34の続きのフローチャートである。
【図36】図35の続きのフローチャートである。
【図37】本発明の第2実施形態の制御の流れを示すフ
ローチャートである。
【符号の説明】
116 印刷部1/F 117 印刷部 118 入力部 119 RAM 1300 受信バッファ 1301 解析部 1302 展開部 1303 展開用メモリ 1304 転写部 3000 上位装置

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】 印刷装置とその上位装置とを有し、これ
    らの装置の間で少なくとも2種類以上の転送方式により
    印刷/制御データの転送を行う印刷システムにおいて、 特定の状態を経過した直後には前記転送方式が変更され
    ることを予測し、その予測に基づいて前記上位装置と前
    記印刷装置のいずれか一方が転送方式を変更した場合
    は、それに追随して前記上位装置と前記印刷装置のいず
    れか他方も転送方式を変更する構成にしたことを特徴と
    する印刷システム。
  2. 【請求項2】 IEEE1284−1994で定義され
    ている上位装置から指示されるデバイスID要求があっ
    たことを条件に、前記印刷装置が前記転送方式の変更を
    予測し、デバイスID要求の直後には転送方式を変更可
    能な状態にすることを特徴とする請求項1記載の印刷シ
    ステム。
  3. 【請求項3】 IEEE1284−1994で定義され
    ている上位装置から指示されるデバイスID要求に対し
    て、前記印刷装置がデバイスIDデータを前記上位装置
    へ転送した又は転送終了したことを条件に、印刷装置が
    前記転送方式の変更を予測し、前記デバイスIDデータ
    の上位装置に対する転送を開始した又は転送終了した直
    後には転送方式を変更可能な状態にすることを特徴とす
    る請求項1記載の印刷システム。
  4. 【請求項4】 前記上位装置から指示されたデバイスI
    D要求に対して前記印刷装置が返すデバイスIDデータ
    の中に特定のデータが含まれていた場合は、前記デバイ
    スIDデータの上位装置に対する転送が終了した直後に
    前記転送方式を変更可能な状態にすることを特徴とする
    請求項3記載の印刷システム。
  5. 【請求項5】 前記上位装置から指示されるインターフ
    ェイス上の初期化信号が発行されたことを条件に、前記
    印刷装置が前記転送方式の変更を予測し、前記初期化信
    号に対する処理を行なった直後には転送方式を変更可能
    な状態にすることを特徴とする請求項1記載の印刷シス
    テム。
  6. 【請求項6】 前記印刷装置に設けられた操作手段から
    指示される装置の初期化が実行されたことを条件に、印
    刷装置が前記転送方式の変更を予測し、前記初期化に対
    する処理を行なった直後には転送方式を変更可能な状態
    にすることを特徴とする請求項1記載の印刷システム。
  7. 【請求項7】 システム全体の電源が遮断された状態か
    ら投入状態になったことを条件に、前記印刷装置が前記
    転送方式の変更を予測し、前記電源投入時の処理を終了
    した直後には転送方式を変更可能な状態にすることを特
    徴とする請求項1記載の印刷システム。
  8. 【請求項8】 前記印刷装置又は前記上位装置に設けら
    れた操作手段により指示された場合は前記転送方式の変
    更を予測し、前記操作手段の操作直後には転送方式を変
    更可能な状態にすることを特徴とする請求項1記載の印
    刷システム。
  9. 【請求項9】 前記上位装置又は印刷装置から特定のコ
    マンドが転送され、それを印刷装置又は上位装置が解析
    した場合は前記転送方式の変更を予測し、前記特定コマ
    ンドの解析直後には転送方式を変更可能な状態にするこ
    とを特徴とする請求項1記載の印刷システム。
  10. 【請求項10】 前記転送方式が変更可能な状態になっ
    てから、前記上位装置又は前記印刷装置から転送されて
    くるデータが一定数になるまでは、該転送データの解析
    を継続することを特徴とする請求項1乃至請求項9記載
    の印刷システム。
  11. 【請求項11】 前記転送データの解析を継続するデー
    タ数は、操作手段により予め決定することを特徴とする
    請求項10記載の印刷システム。
  12. 【請求項12】 前記転送データの解析を継続するデー
    タ数は、前記上位装置又は前記印刷装置から予め送られ
    てくるコマンドに従って決定することを特徴とする請求
    項10記載の印刷システム。
  13. 【請求項13】 前記転送方式が変更可能な状態になっ
    ても、以前と同じ転送方式で前記上位装置又は前記印刷
    装置から印刷/制御データの転送が行われた場合は、転
    送方式の変更をせず以前と同じ転送方式を使用すること
    を特徴とする請求項1乃至10記載の印刷システム。
  14. 【請求項14】 前記転送方式が変更可能な状態になっ
    た後、前記上位装置又は前記印刷装置からの印刷/制御
    データの転送量が少なく、転送方式の変更が行われたか
    否かの判断が不可能な状態が一定時間続いた場合は、転
    送方式の変更をせず以前と同じ転送方式を使用すること
    を特徴とする請求項1乃至請求項10記載の印刷システ
    ム。
  15. 【請求項15】 前記転送方式の変更が行われたか否か
    の判断が不可能な状態から、転送方式の変更をせず以前
    と同じ転送方式を使用することを決定するまでの時間
    を、操作手段により予め決定することを特徴とする請求
    項14記載の印刷システム。
  16. 【請求項16】 前記転送方式の変更をせず以前と同じ
    転送方式を使用することを決定するまでの時間は、前記
    上位装置又は前記印刷装置から予め送られてくるコマン
    ドに従って決定することを特徴とする請求項14記載の
    印刷システム。
  17. 【請求項17】 上位装置との間で少なくとも2種類以
    上の転送方式により印刷/制御データの転送を行い、前
    記上位装置からの印刷データを出力する印刷装置におい
    て、 特定の状態を経過した直後には前記転送方式が変更され
    ることを予測して、該転送方式を変更可能な状態にする
    ことを特徴とする印刷装置。
  18. 【請求項18】 IEEE1284−1994で定義さ
    れている上位装置から指示されるデバイスID要求があ
    ったことを条件に、前記転送方式の変更を予測し、デバ
    イスID要求の直後には転送方式を変更可能な状態にす
    ることを特徴とする請求項17記載の印刷装置。
  19. 【請求項19】 IEEE1284−1994で定義さ
    れている上位装置から指示されるデバイスID要求に対
    して、デバイスIDデータを前記上位装置へ転送した又
    は転送終了したことを条件に、前記転送方式の変更を予
    測し、前記デバイスIDデータの上位装置に対する転送
    を開始した又は転送終了した直後には転送方式を変更可
    能な状態にすることを特徴とする請求項17記載の印刷
    装置。
  20. 【請求項20】 前記上位装置から指示されたデバイス
    ID要求に対して返信するデバイスIDデータの中に特
    定のデータを含む場合は、前記デバイスIDデータの上
    位装置に対する転送が終了した直後に前記転送方式を変
    更可能な状態にすることを特徴とする請求項19記載の
    印刷装置。
  21. 【請求項21】 前記上位装置から指示されるインター
    フェイス上の初期化信号が発行されたことを条件に、前
    記転送方式の変更を予測し、前記初期化信号に対する処
    理を行なった直後には転送方式を変更可能な状態にする
    ことを特徴とする請求項17記載の印刷装置。
  22. 【請求項22】 印刷に関する操作を行う操作手段を有
    し、 前記操作手段から指示される装置の初期化が実行された
    ことを条件に、前記転送方式の変更を予測し、前記初期
    化に対する処理を行なった直後には転送方式を変更可能
    な状態にすることを特徴とする請求項17記載の印刷装
    置。
  23. 【請求項23】 装置の電源が遮断された状態から投入
    状態になったことを条件に、前記転送方式の変更を予測
    し、前記電源投入時の処理を終了した直後には転送方式
    を変更可能な状態にすることを特徴とする請求項17記
    載の印刷装置。
  24. 【請求項24】 印刷に関する操作を行う操作手段を有
    し、 前記操作手段により指示された場合は前記転送方式の変
    更を予測し、前記操作手段の操作直後には転送方式を変
    更可能な状態にすることを特徴とする請求項17記載の
    印刷装置。
  25. 【請求項25】 前記上位装置から特定のコマンドが転
    送され、それを解析した場合は前記転送方式の変更を予
    測し、前記特定コマンドの解析直後には転送方式を変更
    可能な状態にすることを特徴とする請求項17記載の印
    刷装置。
  26. 【請求項26】 前記転送方式が変更可能な状態になっ
    てから、前記上位装置から転送されてくるデータが一定
    数になるまでは、該転送データの解析を継続することを
    特徴とする請求項17乃至請求項25記載の印刷装置。
  27. 【請求項27】 印刷に関する操作を行う操作手段を有
    し、 前記転送データの解析を継続するデータ数は、前記操作
    手段により予め決定することを特徴とする請求項26記
    載の印刷装置。
  28. 【請求項28】 前記転送データの解析を継続するデー
    タ数は、前記上位装置から予め送られてくるコマンドに
    従って決定することを特徴とする請求項26記載の印刷
    装置。
  29. 【請求項29】 前記転送方式が変更可能な状態になっ
    ても、以前と同じ転送方式で前記上位装置から印刷/制
    御データの転送が行われた場合は、転送方式の変更をせ
    ず以前と同じ転送方式を使用することを特徴とする請求
    項17乃至26記載の印刷装置。
  30. 【請求項30】 前記転送方式が変更可能な状態になっ
    た後、前記上位装置からの印刷/制御データの転送量が
    少なく、転送方式の変更が行われたか否かの判断が不可
    能な状態が一定時間続いた場合は、転送方式の変更をせ
    ず以前と同じ転送方式を使用することを特徴とする請求
    項17乃至請求項26記載の印刷装置。
  31. 【請求項31】 転送方式の変更が行われたか否かの判
    断が不可能な状態から、転送方式の変更をせず以前と同
    じ転送方式を使用することを決定するまでの時間を、操
    作手段により予め決定することを特徴とする請求項30
    記載の印刷装置。
  32. 【請求項32】 前記転送方式の変更をせず以前と同じ
    転送方式を使用することを決定するまでの時間は、前記
    上位装置から予め送られてくるコマンドに従って決定す
    ることを特徴とする請求項30記載の印刷装置。
JP01828098A 1998-01-16 1998-01-16 印刷システム、印刷装置及びデータ転送方法 Expired - Fee Related JP3782573B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP01828098A JP3782573B2 (ja) 1998-01-16 1998-01-16 印刷システム、印刷装置及びデータ転送方法
US09/228,405 US6563597B1 (en) 1998-01-16 1999-01-12 Printing system and printing apparatus
EP99300175A EP0930563A3 (en) 1998-01-16 1999-01-12 Printing system and printing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01828098A JP3782573B2 (ja) 1998-01-16 1998-01-16 印刷システム、印刷装置及びデータ転送方法

Publications (2)

Publication Number Publication Date
JPH11203065A true JPH11203065A (ja) 1999-07-30
JP3782573B2 JP3782573B2 (ja) 2006-06-07

Family

ID=11967239

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01828098A Expired - Fee Related JP3782573B2 (ja) 1998-01-16 1998-01-16 印刷システム、印刷装置及びデータ転送方法

Country Status (3)

Country Link
US (1) US6563597B1 (ja)
EP (1) EP0930563A3 (ja)
JP (1) JP3782573B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017001225A (ja) * 2015-06-08 2017-01-05 セイコーエプソン株式会社 印刷装置および印刷装置の制御方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4581815B2 (ja) * 2005-04-26 2010-11-17 セイコーエプソン株式会社 印刷制御装置及び印刷システム
US20080231885A1 (en) * 2007-03-23 2008-09-25 Konica Minolta Systems Laboratory, Inc. Direct printing method using ram storage for spooled printer files
US20080212110A1 (en) * 2007-03-01 2008-09-04 Konica Minolta Systems Laboratory, Inc. Pdf direct printing method utilizing page printing order information for efficient handling of data
KR20090020980A (ko) * 2007-08-24 2009-02-27 삼성전자주식회사 단말장치, 화상형성장치 및 이들을 포함하는 인쇄 시스템과인쇄 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0787480B2 (ja) * 1987-11-11 1995-09-20 松下電器産業株式会社 マルチプロトコル処理装置
US5337350A (en) * 1990-11-09 1994-08-09 Murata Kikai Kabushiki Kaisha Facsimile apparatus with telephone system
DE69230270T2 (de) * 1991-04-18 2000-04-20 Canon Kk Kommunikationssteuereinheit
JP2875670B2 (ja) * 1991-12-02 1999-03-31 キヤノン株式会社 出力制御装置およびその出力制御方法
JP2656196B2 (ja) * 1992-12-16 1997-09-24 松下電送株式会社 データ通信装置
JPH06286229A (ja) * 1993-03-30 1994-10-11 Brother Ind Ltd 印刷装置
DE69325509T2 (de) * 1993-06-15 1999-12-23 Hewlett Packard Co Direktanschluss-Protokoll auf niederer Ebene für PCL-Drucker
JP2757765B2 (ja) * 1994-02-28 1998-05-25 富士ゼロックス株式会社 ファクシミリ装置
JP3296920B2 (ja) * 1994-03-15 2002-07-02 京セラミタ株式会社 ファクシミリ装置
US5577172A (en) * 1994-07-01 1996-11-19 Lasermaster Corporation High-capacity protocol for packet-based networks
JP3337844B2 (ja) * 1995-02-14 2002-10-28 キヤノン株式会社 印刷装置並びに印刷システム
JP3555667B2 (ja) * 1995-05-19 2004-08-18 ブラザー工業株式会社 画像読取り装置及び画像データ転送システム
US5706410A (en) * 1995-09-25 1998-01-06 Hewlett-Packard Company Printing system having control language command and raster pixel image data processing capability

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017001225A (ja) * 2015-06-08 2017-01-05 セイコーエプソン株式会社 印刷装置および印刷装置の制御方法

Also Published As

Publication number Publication date
US6563597B1 (en) 2003-05-13
EP0930563A3 (en) 2004-06-30
EP0930563A2 (en) 1999-07-21
JP3782573B2 (ja) 2006-06-07

Similar Documents

Publication Publication Date Title
US7707326B2 (en) System for setting print end notification either when data transmission ends or when printing ends based on print check ability of printing devices
US6963416B2 (en) Printer, printing system, print control method, storage medium used to store print control program for controlling a printer, and transmission device for transmitting print control program for controlling a printer
KR100472799B1 (ko) 프린터,프린터통신시스템및프린팅장치의동작구성세팅들을업데이트하는방법
CA2197383C (en) Method and apparatus for providing print job buffering for a printer on a fast data path
EP0866398B1 (en) Data transmission control in accord with line capacity
EP2287746B1 (en) Communication control method, control program, and communication control system
JP4401662B2 (ja) 印刷制御装置および印刷制御方法
US7489414B2 (en) Image forming system and image forming apparatus
US6741606B1 (en) Interface control apparatus
JPH11203065A (ja) 印刷システム及び印刷装置
JP4086770B2 (ja) 情報処理装置及びその転送制御方法
US20010022668A1 (en) Print job management system
JP2016021157A (ja) Usb接続の一台の機器で複数の機能を持つことを可能にするプログラム
US5761397A (en) Controlling logical channel use based upon printing system environment
JP2002055785A (ja) 画像形成装置及びパケット選択方法
JP2005349768A (ja) 印刷装置及び印刷方法
JP2001202208A (ja) プリントシステム、印刷制御装置、および、プリンタ
JP2658931B2 (ja) プリンタコントローラ
JP3524403B2 (ja) インタフェース装置及びインタフェース装置のデータ処理方法及びコンピュータ読み出し可能なプログラムを格納した記憶媒体
JPH10187367A (ja) 印刷制御装置および印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2003015846A (ja) 画像印刷システム、印刷制御端末装置、接続メディア変換装置、印刷制御方法、印刷制御プログラムおよび接続メディア変換プログラム
JP4164243B2 (ja) 印刷監視システム、印刷監視方法、及びコンピュータプログラム
JPH1120271A (ja) 情報処理装置および情報処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JPH11296317A (ja) データ処理装置、データ処理装置の制御方法
WO2018232733A1 (en) METHOD AND DEVICE FOR PROVIDING A PRINT SERVICE

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050721

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050920

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060310

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees