JP3612804B2 - Recording device - Google Patents
Recording device Download PDFInfo
- Publication number
- JP3612804B2 JP3612804B2 JP17581295A JP17581295A JP3612804B2 JP 3612804 B2 JP3612804 B2 JP 3612804B2 JP 17581295 A JP17581295 A JP 17581295A JP 17581295 A JP17581295 A JP 17581295A JP 3612804 B2 JP3612804 B2 JP 3612804B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- acknowledge
- timing
- busy
- flop
- 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.)
- Expired - Lifetime
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、インクジェット型プリンタ等の記録装置、特に、CPUによるソフトウェアロジックを主体として上位装置よりデータを受信して印刷する記録装置のハンドシェイク処理に関する。
【0002】
【従来の技術】
従来、プリンタ等の記録装置においては、上位装置とのパラレルインターフェイスのハンドシェイクは、記録装置に組み込まれたプログラムに基づくCPUの処理にて行っていた。尚、本明細書と図面においては、”/”はローレベルでアクティブであることを示す。
【0003】
例えば、図5に示すごとく、ハンドシェイク信号として、上位装置からのストローブ信号(STB/)がアクティブになると、ストローブ信号の立ち下がりのタイミングから計時を開始して、時間ta後にビジー信号(BUSY)をアクティブにした後、上位装置が出力している8ビット(1バイト)のパラレルデータを読み取り、次にビジー信号がアクティブになってから時間tb後に、アクノリッジ信号(ACK/)をアクティブにし、次にアクノリッジ信号がアクティブになってから時間tc後にビジー信号を非アクティブにし、更にそこから時間td後にアクノリッジ信号を非アクティブにすると言う処理を、上位装置から1バイト送信されるごとに繰り返していた。
【0004】
【発明が解決しようとする課題】
これらの時間ta,tb,tc,tdの内、アクノリッジ信号のアクティブ状態保持時間(tc+td)は、その最大値が規定されていて、立ち上げから立ち下げまでのタイミングの間隔は厳密な管理が必要とされていた。
【0005】
このタイミングを厳密に検出してアクノリッジ信号を反転させるために、CPUはアクノリッジ信号がアクティブ状態に保持されている間は、一旦、他の処理をすべて中断して、CPUの処理を時間の測定に費やさなくてはならなかった。
このアクノリッジ信号がアクティブである保持時間は、1回につき少なくとも10μ秒は必要であった。この保持時間もプリンタの解像度が低い場合は、データの送信速度は低速であり、一行印刷するデータを受信する間に生じるトータルの前記保持時間も、印刷速度に影響するほどではなかった。
【0006】
しかし、近年、高品質の印刷の要求が高まっているため、プリンタの解像度が次第に高くなって来ている。高解像度、例えば、ドット解像度として、720dpiのプリンタでは1行(縦60ドット×横8インチとする)で最大43,200バイトのデータを受信しなくてはならない。この43,200バイトのデータ受信には、約0.43秒がアクノリッジ信号の保持時間計測のみに用いられることになる。
【0007】
プリンタは、この1行を0.6秒で印刷するが、プリンタの最大の印刷速度にて印刷を行わせるには、この0.6秒の間に、CPUは上位装置からのデータの受信に加えて印字に必要な処理やその他の制御処理を実施する必要がある。しかし、0.6秒の内、約0.43秒は、ただ時間を測定することのみに費やされ、残りの約0.17秒のみが、各種の制御に用いられるに過ぎない。尚、ビジー信号のアクティブ・非アクティブの切替タイミングもCPUが計測して行っているので、更に制御に割く時間が少なくなる。
【0008】
このように、プリンタの解像度が向上すればするほど、より短い時間に、プリンタ制御に必要な処理を行わなくてはならない。そのため、プリンタの印刷速度を落とさずに印刷させるために、極めて高速のCPUを採用することになり、コストアップにつながった。
【0009】
本発明は、ハンドシェイクをハードウエアロジックにより実行することにより、単なる計時のために費やす時間を減少し、CPUに各種制御の時間を増加させて、高価なCPUを用いなくても、印刷速度等に悪影響を与えることがないようにすると共に、上位装置のハンドシェイクの様式に適合させることが容易にできる記録装置を提供するものである。
【0010】
【課題を解決するための手段及び発明の効果】
請求項1記載の発明は、
CPUによるソフトウェアロジックを主体として上位装置よりデータを受信して印刷する記録装置であって、
上位装置からのストローブ信号より所定の出力状態に反転し、前記CPUからのデータ取得完了信号によりリセットされるフリップフロップと、
このフリップフロップが所定の出力状態に反転したタイミングに基づいて上位装置に対するビジー信号をアクティブにし、フリップフロップがリセットされたタイミングに基づいてビジー信号を非アクティブにするタイミングを決定して、上位装置にビジー信号を送信するビジー信号出力回路と、
前記フリップフロップがリセットされたタイミングに基づいて上位装置に対するアクノリッジ信号をアクティブにするタイミングおよびアクノリッジ信号を非アクティブにする タイミングを決定して、上位装置にアクノリッジ信号を送信するアクノリッジ信号出力回路と、を備え、
前記ビジー信号出力回路は、前記フリップフロップがリセットされたタイミングを所定時間遅延させてビジー信号を非アクティブにするタイミングを決定するビジー非アクティブ遅延回路を有し、
前記アクノリッジ信号出力回路は、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号をアクティブにするタイミングを決定するアクノリッジアクティブ遅延回路と、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号を非アクティブにするタイミングを決定するアクノリッジ非アクティブ遅延回路と、を有し、
前記ビジー非アクティブ遅延回路、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路の1つ以上は、前記CPUからの信号に基づいて、前記各所定時間を変更可能であることを特徴とする記録装置である。
【0011】
請求項2記載の発明は、
前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路が、前記CPUからの信号によって、前記フリップフロップからの信号に基づくタイミングの決定を禁止可能であることを特徴とする請求項1記載の記録装置である。
【0012】
請求項1の記録装置は、上位装置との通信におけるハンドシェイクをハードウエアロジックにより実行している。このため、CPUは、ハンドシェイクの厳密な時間測定のために他の制御処理が不可能となる状態から開放される。
【0013】
また、このようなハンドシェイクのためのハードウエアロジックにおいては、単に上位装置からのデジタル信号の受信とその特定のタイミングから所定時間後に上位装置にデジタル信号を返すのみであることから、極めて簡単なデジタル回路でハンドシェイク機能を果たすことができる。
【0014】
このように、CPUも、より高速な高価なCPUを用いなくても良く、またハンドシェイクのためのデジタル回路も非常に簡単で安価なもので済む。このことから、大きくコストアップすること無く、記録装置の高解像度化に対処できる。
【0015】
ハードウエアロジックの内、ビジー信号を出力する機能については、次のようなフリップフロップおよびビジー信号出力回路を採用することができる。フリップフロップは、上位装置からのストローブ信号により所定の出力状態に反転し、前記CPUからのデータ取得完了信号によりリセットされる。
【0016】
ビジー信号出力回路は、このフリップフロップが所定の出力状態に反転したタイミングに基づいて上位装置に対するビジー信号をアクティブにし、フリップフロップがリセットされたタイミングに基づいてビジー信号を非アクティブにするタイミングを決定して、上位装置にビジー信号を送信する。
【0017】
尚、後述するハードビジーセット用フリップフロップ(H−BUSY F/F)24がフリップフロップの一例であり、ビジー信号セット用フリップフロップ30およびタイマAがビジー信号出力回路の一例である。
【0018】
前記ハードウエアロジックの内、アクノリッジ信号を出力する機能については、前記フリップフロップがリセットされたタイミングに基づいて上位装置に対するアクノリッジ信号をアクティブにするタイミング、およびこのようにしてアクティブとなったアクノリッジ信号を非アクティブにするタイミングを決定して、上位装置にアクノリッジ信号を送信 するアクノリッジ信号出力回路を採用することができる。
【0019】
尚、後述するアクノリッジ信号セット用フリップフロップ32、タイマBおよびタイマCがアクノリッジ信号出力回路の一例である。
【0020】
前記ビジー信号出力回路は、前記フリップフロップがリセットされたタイミングを所定時間遅延させてビジー信号を非アクティブにするタイミングを決定するビジー非アクティブ遅延回路を有することにより、適切にビジー信号を形成することができる。後述するタイマAがビジー非アクティブ遅延回路の一例である。
【0021】
また、アクノリッジ信号出力回路は、アクノリッジアクティブ遅延回路とアクノリッジ非アクティブ遅延回路とを有する。このアクノリッジアクティブ遅延回路が、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号をアクティブにするタイミングを決定し、アクノリッジ非アクティブ遅延回路が、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号を非アクティブにするタイミングを決定することにより、アクノリッジ信号出力回路は、適切にアクノリッジ信号を形成することができる。
【0022】
尚、アクノリッジアクティブ遅延回路の所定時間は、アクノリッジ非アクティブ遅延回路の所定時間よりも短い。尚、後述するタイマBがアクノリッジアクティブ遅延回路の一例であり、タイマCがアクノリッジ非アクティブ遅延回路の一例である。
【0023】
また、前記ビジー非アクティブ遅延回路、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路の1つ以上は、前記CPUからの信号に基づいて、前記各所定時間を変更可能な構成にされている。
【0024】
これにより、ビジー信号やアクノリッジ信号の各タイミングを固定化することが無く、上位装置が異なるハンドシェイク方式の機種に変更されても、その上位装置のハンドシェイクの様式に適合させることが容易にできる。
【0025】
尚、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路は、前記CPUからの信号によって、前記フリップフロップからの信号に基づくタイミングの決定を禁止可能な構成にされてもよい。
【0026】
このようにすることにより、例えば、特別な場合に、上位装置からの信号に影響されないようにすることができる。また、このような状態にすれば、CPUの制御により、直接、アクノリッジ信号の出力を行わせるようにすることもできる。
【0027】
すなわち、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路の一方または両方が、前記フリップフロップからの信号以外に、前記CPUからの信号によってもタイミングを決定可能とすることにより、直接、CPUがアクノリッジ信号を出力するのではなく、アクノリッジアクティブ遅延回路あるいはアクノリッジ非アクティブ遅延回路を介して、アクノリッジ信号を適切なタイミングに適切な形状で出力させることができる。
【0028】
また、このことは、ビジー信号についても同じであり、ビジー信号出力回路が、フリップフロップからの信号以外に、CPUからの信号によっても上位装置に対するビジー信号をアクティブにするタイミングおよびビジー信号を非アクティブにするタイミングを決定可能とすることにより、ビジー信号についても、上位装置からの信号によらず、所望の適切なタイミングに所望の適切な形状で、ビジー信号を出力させることができる。
【0029】
前記ビジー非アクティブ遅延回路、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路の1つ以上が、記録装置自身に対する使用者からの設定に基づいて、前記各所定時間の変更が可能としても良く、記録装置側での設定にて記録装置に適合させたビジー信号やアクノリッジ信号の各タイミングを設定することができる。
【0030】
これらの記録装置としては、各種プリンタが挙げられるが、特に解像度が高いインクジェット型プリンタに有用であり、このほか、レーザプリンタにも有用である。勿論、ドットインパクトやサーマルプリンタ等の他の各種プリンタにも有用である。
【0031】
【発明の実施の形態】
図1は本発明の一実施形態であるインクジェットプリンタ2のブロック図を示す。インクジェットプリンタ2には記録用のデータを送信するホストコンピュータ4が接続されている。
【0032】
インクジェットプリンタ2は、CPU6、ROM8、RAM10、操作パネル12、データ入出力部14、印刷機構インターフェース16、印刷機構部18およびシステムバス20を備えている。
CPU6はデータ入出力部14を介してホストコンピュータ4からデータを受信すると、そのデータが文字を表すコードデータであった場合には、そのコードに基づいてROM8内に格納されている書体データから該当する文字のパターンを選択してRAM10内の印刷バッファに展開し、そのドットパターンを印刷機構インターフェース16を介して印刷機構部18を制御することにより、記録用紙に記録する。印刷機構部18はインクジェット式であり、インクを各種手段により記録用紙に噴射することにより画像を記録用紙上に印刷する。
【0033】
また、ホストコンピュータ4からのデータがビットマップ形式のイメージデータである場合には、それをRAM10内の印刷バッファに展開して、上述したごとく、印刷機構部18にて記録用紙上に印刷する。
またこの他、ホストコンピュータ4からのコマンドにより、インクジェットプリンタ2自身の各種設定や、後述するハンドシェイク処理の各種設定を行うことができる。
【0034】
ここで、データ入出力部14は、ハンドシェイク処理を、通常は、CPU6の制御によらず単独で実行する。このデータ入出力部14のハード構成を図2の回路図に示す。
データ入出力部14は、データレジスタ(DTRG)22、ハードビジーセット用フリップフロップ(H−BUSY F/F)24、アンドゲート26、オアゲート28、ビジー信号セット用フリップフロップ30、アクノリッジ信号セット用フリップフロップ32、アンドゲート34およびコントロールタイマ36が備えられている。
【0035】
データ入出力部14全体の機能はホストコンピュータ4側とのハンドシェイク処理を行うものであり、通常は、図3(a)のタイミングチャートに示すごとく、ホストコンピュータ4からデータ信号DATAが出力された後、ホストコンピュータ4からのストローブ信号STB/がパルス的にアクティブとなることに基づいて、ビジー信号BUSYをアクティブへ反転し、その後、CPU6がデータレジスタ22からデータを読み取ることにより出力される読取完了信号READに伴い、アクノリッジ信号ACK/をパルス的にアクティブとすると共に、ビジー信号BUSYを非アクティブへ反転させることでホストコンピュータ4から次のデータ送信を要求する機能を果たすものである。
【0036】
データ入出力部14の各構成の機能を、ホストコンピュータ4からの信号処理に基づいて説明する。
まず、ホストコンピュータ4から、1バイト分のデータとして、8ビットパラレル信号がデータ信号DATAとしてデータレジスタ22に出力され、更に、ホストコンピュータ4からはストローブ信号STB/がパルス的に出力される。ストローブ信号STB/はハードビジーセット用フリップフロップ24のセット端子Sに入力されているので、その立ち下がりにてラッチ出力がデータレジスタ22になされて、データレジスタ22に入力している8ビットパラレルデータがラッチされる。
【0037】
また、ストローブ信号STB/の立ち下がりによるハードビジーセット用フリップフロップ24の出力は、アンドゲート26を介してCPU6に受信割込信号として出力される。アンドゲート26は、予め設定されているCPU6からの受信割込モードであることを示すハイレベル信号がアンドゲート26に出力されているので、ハードビジーセット用フリップフロップ24からのアクティブへの反転はそのまま、CPU6への受信割込信号として送信される。尚、CPU6から、受信割込モードでなくポーリングモードを示すローレベル信号が出力されていれば、ホストコンピュータ4からのストローブ信号STB/により、CPU6に受信割込がかかることはない。
【0038】
また、ハードビジーセット用フリップフロップ24からの同じ出力が、オアゲート28を介してビジー信号セット用フリップフロップ30のセット端子Sに入力されているのでビジー信号セット用フリップフロップ30をアクティブ状態へ反転させる。したがって、ホストコンピュータ4へのビジー信号BUSYは、反転してアクティブ状態となる。
【0039】
更に、CPU6への受信割込信号により、CPU6ではデータレジスタ22から8ビットのデータを読み取る処理が行われる。そして、その処理の最後に、CPU6から読取完了信号READが出力される。この読取完了信号READはデータレジスタ22に入力されてラッチを解除すると共に、ハードビジーセット用フリップフロップ24のリセット端子Rに入力して、ハードビジーセット用フリップフロップ24の出力をリセットして非アクティブ状態にする。このアクティブ状態から非アクティブ状態への信号の立ち下がりにより、オアゲート28の出力を入力しているコントロールタイマ36の3つのタイマA、タイマB、タイマCが起動されてタイマカウントを開始する。タイマAは所定時間t0+t1後にパルス信号をビジー信号セット用フリップフロップ30のリセット端子Rに出力し、ビジー信号BUSYを非アクティブに反転させる。タイマBは、所定時間t0後にパルス信号をアクノリッジ信号セット用フリップフロップ32のリセット端子Rに出力し、アクノリッジ信号セット用フリップフロップ32の出力をローレベルとすることにより、アンドゲート34から出力されるアクノリッジ信号ACK/をアクティブとする。タイマCは、所定時間t0+t1+t2後にパルス信号をアクノリッジ信号セット用フリップフロップ32のセット端子Sに出力し、アクノリッジ信号セット用フリップフロップ32の出力をハイレベルとすることにより、アンドゲート34から出力されるアクノリッジ信号ACK/を非アクティブとする。
【0040】
したがって、図3(b)のタイミングチャートに示すごとく、時刻T0にハードビジーセット用フリップフロップ24の出力が立ち下がると、データ入出力部14は時刻T0から所定時間t0後にアクノリッジ信号ACK/を時間t1+t2の間、パルス的に立ち下げ、更に時刻T0から所定時間t0+t1後にビジー信号BUSYを反転させて非アクティブとする。
【0041】
このアクノリッジ信号ACK/のパルスを受信したホストコンピュータ4は、次のデータ送信が可能であるとして、前述のごとく、データ信号DATAおよびストローブ信号STB/を出力し、以後、すべてのデータの送信がなされるまで、前述の処理が繰り返される。
【0042】
前述したごとく、インクジェットプリンタ2とホストコンピュータ4との間の通信処理に関して、本インクジェットプリンタ2におけるCPU6は、割込信号によりデータの受信をするのみであり、通常のハンドシェイク処理は、すべてデータ入出力部14のハードウエアロジックにて実現されている。特に、各所定時間のタイミングの計測は、コントロールタイマ36内の各タイマA,B,Cによりなされているので、どのように厳しい時間測定条件であっても、まったくCPU6に負担がかかることがない。
【0043】
したがって、CPU6に高価な高速CPUを用いる必要がなく、本インクジェットプリンタ2のように、大量のイメージデータを高速に処理しなくてはならない場合にも、安価なCPUで対応することが可能となる。尚、このようなハンドシェイク処理を行うハードウエア回路は図2に示したごとく、比較的簡易であることから図2に示すハードウエア回路を採用しても、CPUを高速化するほどのコストアップにはならない。
【0044】
前記コントロールタイマ36内の各タイマA,B,Cからパルスが出力されるタイマカウント値は可変とされており、CPU6からの条件設定信号に基づき、任意に変更することができる。
例えば、ホストコンピュータ4側が、アクノリッジ信号ACK/のパルス出力を伴わないビジー信号BUSYの単独立ち下がりのみ必要なハンドシェイク方式の場合には、タイマAのみ起動して、他のタイマB,Cについては起動させない状態を、予めCPU6からの条件設定信号によりコントロールタイマ36に設定しておけば、アクノリッジ信号ACK/についてはまったく変化せず、ビジー信号BUSYのみを図3(b)のビジー信号BUSYのように反転させることができる。
【0045】
また、図3(b)の信号処理は、アクノリッジ信号ACK/がアクティブである間に、ビジー信号BUSYがアクティブ状態から非アクティブ状態に反転する、いわゆるセンタビジー方式にて実施したが、この他、図4(a)のタイミングチャートに示すごとく、時間t1=0に設定すること、すなわち、タイマAは所定時間として時間t0を、タイマBは所定時間として時間t0を、タイマCは所定時間として時間t0+t2を設定することによりアクノリッジ信号ACK/の立ち下がりとビジー信号BUSYの立ち下がりとが同時のアウトビジー方式とすることができる。
【0046】
更に、図4(b)のタイミングチャートに示すごとく、時間t2=0に設定すること、すなわち、タイマAは所定時間として時間t0+t1を、タイマBは所定時間として時間t0を、タイマCは所定時間として時間t0+t1を設定することによりアクノリッジ信号ACK/の立ち上がりとビジー信号BUSYの立ち下がりとが同時のインビジー方式に設定することもできる。
【0047】
またセンタビジー方式の内でも、t1:t2=7:5とする、いわゆる7−5ビジー方式に設定することもできる。
このように、ホストコンピュータ4に適合させたハンドシェイクに設定するために、アクノリッジ信号ACK/のパルスの発生タイミングやその幅を任意に設定することが可能である。この場合もCPU6は時間を計測しているわけではないので、CPU6に負担がかかることがない。
【0048】
更に、このような任意な設定は、本インクジェットプリンタ2の製造時にタイマA,B,Cに予め設定しても良く、使用時に必要に応じてプログラムや操作パネル12からの操作あるいはホストコンピュータ4側からのコマンドに基づいて、CPU6が設定しなおす処理をCPU6のプログラムに設けても良い。
【0049】
このようなタイマA,B,Cへの所定時間の変更以外に、必要に応じてCPU6から出力されるアクノリッジトリガー信号により、タイマB,Cに対して直接、起動信号を送信して、起動させても良い。この方法によれば、直接、ホストコンピュータ4とのハンドシェイクとは無関係に、任意のタイミングで独立したアクノリッジ信号ACK/を出力させることができる。この場合もCPU6は時間を計測しても、紙なしエラーの復旧時等のデータの受信が停止している特別な場合であり、計時の負担は問題ない状態であるので、インクジェットプリンタ2の制御に支障が生じることはない。
【0050】
また、コントロールタイマ36に対するCPU6からの起動ではなく、アクノリッジ信号セット用フリップフロップ32の出力を受けるアンドゲート34に対して、プログラムや操作パネル12からの操作あるいはホストコンピュータ4側からのコマンドに基づいて、CPU6から出力されるソフトアクノリッジ信号ACK/により、必要に応じてホストコンピュータ4へアクノリッジ信号ACK/を出力しても良い。これは、紙なしエラー時等のデータの受信時でない状態で必要に応じて出力されるアクノリッジ信号ACK/であり、前述の場合と同じく、時間の計測のためのみにCPU6が時間を取られたとしても問題は生じない。
【0051】
同じく、ハードビジーセット用フリップフロップ24の出力を受けているオアゲート28についても、プログラムや操作パネル12からの操作あるいはホストコンピュータ4側からのコマンドに基づいて、CPU6から出力されるソフトビジー信号により、前述の場合のような必要に応じてホストコンピュータ4に対するビジー信号BUSYをアクティブにしても良い。この場合、タイミング管理をCPU6にさせても、前述のごとく紙なし等の異常時であり、高速にデータを受信する必要はないので、問題は生じない。
【0052】
また、前述した図3(b)の例では、ハードビジーセット用フリップフロップ24は、ストローブ信号STB/が立ち下がったタイミングで動作して、出力を反転すると共に、データレジスタ22をラッチしたが、ハードビジーセット用フリップフロップ24は、CPU6からのストローブエッジ選択信号により、ストローブ信号STB/の立ち下がりで動作するか、立ち上がりで動作するかを設定することができる。これも、ホストコンピュータ4とのハンドシェイクの方式に合わせて、プログラムや操作パネル12からの操作あるいはホストコンピュータ4側からのコマンドに基づいて、エッジ選択を実施することができる。
【0053】
このように、本インクジェットプリンタ2は、通常、そのCPU6は、ハンドシェイクに関与しないので、従来のごとく、各種処理のための時間の多くの部分がハンドシェイクのタイミングをとるためだけに費やされてしまうことがない。したがって、インクジェットプリンタのような高解像度のプリンタでも、高速なCPUを採用する必要がなく、更に、ハンドシェイクのためのハードウエア回路も簡単で低価格であるので、全体としてもコストアップを招かない。
【0054】
また、単にハンドシェイクをハードウエアロジックで実施していると、ホストコンピュータ4の違いに応じた各種のハンドシェイク方式に対応するために、製造時に多数のデータ入出力部14を揃えなくてはならないが、本インクジェットプリンタ2は、そのハンドシェイクの方式に適合させるために、プログラムや操作パネル12からの操作あるいはホストコンピュータ4側からのコマンドに基づいて、コントロールタイマ36の設定を変更することにより対処しているので、製造時に1種類のデータ入出力部14のみでよく、コストアップを抑制することができる。
【0055】
また、インクジェットプリンタ2側の紙なし状態等の際には、ホストコンピュータ4からの信号によらずに、CPU6が直接、ホストコンピュータ4に対するハンドシェイクのタイミングを計算して、ハンドシェイク処理をしているので、エラーからの円滑な復旧が可能となる。
【0056】
また、ビジー信号セット用フリップフロップ30の出力はシステムバス20を介して、CPU6が読み取ることが可能であることから、CPU6は必要に応じて、データ入出力部14が独立して実施しているハンドシェイク処理の状態をチェックすることができ、必要に応じてその状態の検出結果を制御に利用することができる。
【0057】
勿論、CPU6は、アンドゲート34が出力するアクノリッジ信号ACK/も読み取ることにより、更に、詳細にハンドシェイク処理の状態をチェックしても良い。
[その他]
CPU6は、受信処理が割込起動されると、データレジスタ22にてラッチされている8ビットデータをそのまま読み込んでいたが、システムバス20とデータレジスタ22との間に、受信データのMSB/LSB反転(すなわちMSBとLSBとを入れ替える)させる回路、あるいは受信データの1/0反転(すなわちビットが1であれば0とし、0であれば1とする)させる回路を備えて、CPU6の指示に応じて起動したり、起動せずに受信データをそのまま取り込むようにしても良い。
【0058】
前述した実施形態では、CPU6から出力されるアクノリッジトリガー信号によりタイマB,Cに対して直接、起動信号を送信しても起動可能としていたが、更にタイマAについても、CPU6から出力されるアクノリッジトリガー信号により直接起動させても良い。
【図面の簡単な説明】
【図1】本発明の一実施形態であるインクジェットプリンタのブロック図である。
【図2】データ入出力部のハード構成の回路図である。
【図3】データ入出力部におけるハンドシェイクの一例を示すタイミングチャートである。
【図4】異なる設定状態におけるデータ入出力部のハンドシェイクの一例を示すタイミングチャートである。
【図5】一般的なハンドシェイクの一例を示すタイミングチャートである。
【符号の説明】
2…インクジェットプリンタ 4…ホストコンピュータ 6…CPU
8…ROM 10…RAM 12…操作パネル 14…データ入出力部
16…印刷機構インターフェース 18…印刷機構部 20…システムバス
22…データレジスタ 24…ハードビジーセット用フリップフロップ
26…アンドゲート 28…オアゲート
30…ビジー信号セット用フリップフロップ
32…アクノリッジ信号セット用フリップフロップ
34…アンドゲート 36…コントロールタイマ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a handshake process of a recording apparatus such as an ink jet printer, and in particular, a recording apparatus that receives and prints data from a host apparatus mainly using software logic by a CPU.
[0002]
[Prior art]
Conventionally, in a recording apparatus such as a printer, a handshake of a parallel interface with a host apparatus has been performed by CPU processing based on a program incorporated in the recording apparatus. In this specification and the drawings, “/” indicates active at a low level.
[0003]
For example, as shown in FIG. 5, when the strobe signal (STB /) from the higher-level device becomes active as a handshake signal, time measurement is started from the falling timing of the strobe signal, and the busy signal (BUSY) after time ta. Is activated, the 8-bit (1 byte) parallel data output from the host device is read, and then the acknowledge signal (ACK /) is activated after time tb after the busy signal is activated, The process of deactivating the busy signal after time tc after the activation of the acknowledge signal and deactivating the acknowledge signal after time td is repeated every time one byte is transmitted from the host device.
[0004]
[Problems to be solved by the invention]
Among these times ta, tb, tc, and td, the maximum value of the active state holding time (tc + td) of the acknowledge signal is specified, and the timing interval from the rise to the fall needs to be strictly controlled. It was said.
[0005]
In order to accurately detect this timing and invert the acknowledge signal, the CPU temporarily interrupts all other processes while the acknowledge signal is held in the active state, and the CPU process is used to measure time. I had to spend.
The holding time during which this acknowledge signal is active required at least 10 μsec at a time. When the resolution of the printer is also low, the data transmission speed is low, and the total holding time generated while receiving data to be printed in one line is not so much as to affect the printing speed.
[0006]
However, in recent years, the demand for high-quality printing has increased, and the resolution of printers has gradually increased. As a high resolution, for example, dot resolution, a 720 dpi printer must receive a maximum of 43,200 bytes of data in one line (60 dots long x 8 inches wide). For the reception of 43,200 bytes of data, about 0.43 seconds are used only for measuring the holding time of the acknowledge signal.
[0007]
The printer prints this one line in 0.6 seconds. In order to perform printing at the maximum printing speed of the printer, the CPU receives data from the host device during this 0.6 seconds. In addition, it is necessary to perform processing necessary for printing and other control processing. However, about 0.43 seconds out of 0.6 seconds are spent only for measuring time, and only the remaining about 0.17 seconds are used for various controls. Since the CPU also measures the switching timing of the busy signal between active and inactive, the time required for control is further reduced.
[0008]
As described above, as the resolution of the printer is improved, processing necessary for printer control must be performed in a shorter time. Therefore, in order to perform printing without reducing the printing speed of the printer, an extremely high-speed CPU is adopted, which leads to an increase in cost.
[0009]
The present invention reduces the time spent for simple timing by executing handshaking by hardware logic, increases the time for various controls to the CPU, and without using an expensive CPU, the printing speed, etc. Can adversely affectRecording device that can be easily adapted to the handshake style of the host deviceIs to provide.
[0010]
[Means for Solving the Problems and Effects of the Invention]
The invention according to claim 1
A recording device that receives and prints data from a host device mainly using software logic by a CPU,
A flip-flop that is inverted to a predetermined output state from the strobe signal from the host device and is reset by a data acquisition completion signal from the CPU;
Based on the timing at which the flip-flop is inverted to a predetermined output state, the busy signal for the host device is activated, and the timing at which the busy signal is deactivated is determined based on the timing at which the flip-flop is reset. A busy signal output circuit for transmitting a busy signal;
Based on the timing when the flip-flop is reset, the timing to activate the acknowledge signal for the host device and the timing to deactivate the acknowledge signal An acknowledge signal output circuit that determines timing and transmits an acknowledge signal to a host device, and
The busy signal output circuit includes a busy inactive delay circuit that determines a timing for deactivating the busy signal by delaying a timing at which the flip-flop is reset by a predetermined time,
The acknowledge signal output circuit delays the timing at which the flip-flop is reset by a predetermined time to determine the timing to activate the acknowledge signal, and delays the timing at which the flip-flop is reset by a predetermined time. And an acknowledge inactive delay circuit for determining a timing for deactivating the acknowledge signal.
In the recording apparatus, one or more of the busy inactive delay circuit, the acknowledge active delay circuit, and the acknowledge inactive delay circuit can change each predetermined time based on a signal from the CPU. is there.
[0011]
The invention according to
2. The recording apparatus according to claim 1, wherein the acknowledge active delay circuit and the acknowledge inactive delay circuit can prohibit timing determination based on a signal from the flip-flop by a signal from the CPU. .
[0012]
The recording apparatus according to claim 1 executes handshaking in communication with the host apparatus by hardware logic. For this reason, the CPU is released from a state in which other control processing is impossible for strict time measurement of the handshake.
[0013]
In addition, the hardware logic for such handshake is extremely simple because it simply receives a digital signal from the host device and returns the digital signal to the host device after a predetermined time from its specific timing. A digital circuit can perform a handshake function.
[0014]
Thus, the CPU does not need to use a higher-speed and expensive CPU, and the digital circuit for handshaking can be very simple and inexpensive. For this reason, it is possible to cope with an increase in resolution of the recording apparatus without greatly increasing costs.
[0015]
Of the hardware logic, the following flip-flop and busy signal output circuit can be employed for the function of outputting a busy signal. The flip-flop is inverted to a predetermined output state by a strobe signal from the host device, and is reset by a data acquisition completion signal from the CPU.
[0016]
The busy signal output circuit activates the busy signal for the host device based on the timing when the flip-flop is inverted to a predetermined output state, and determines the timing for deactivating the busy signal based on the timing when the flip-flop is reset. Then, a busy signal is transmitted to the host device.
[0017]
A hard busy set flip-flop (H-BUSY F / F) 24 described later is an example of a flip-flop, and a busy signal set flip-
[0018]
Regarding the function of outputting the acknowledge signal in the hardware logic, the timing for activating the acknowledge signal for the host device based on the timing when the flip-flop is reset, and the acknowledge signal activated in this way are as follows. Decide when to deactivate and send acknowledge signal to host device An acknowledge signal output circuit can be employed.
[0019]
An acknowledge signal setting flip-
[0020]
The busy signal output circuit appropriately forms a busy signal by having a busy inactive delay circuit that determines a timing at which the busy signal is deactivated by delaying a timing at which the flip-flop is reset by a predetermined time. Can do. Timer A, which will be described later, is an example of a busy inactive delay circuit.
[0021]
The acknowledge signal output circuit includes an acknowledge active delay circuit and an acknowledge inactive delay circuit. The acknowledge active delay circuit determines the timing for activating the acknowledge signal by delaying the timing when the flip-flop is reset by a predetermined time, and the acknowledge inactive delay circuit determines the timing when the flip-flop is reset for a predetermined time. By determining the timing at which the acknowledge signal is made inactive by delaying, the acknowledge signal output circuit can appropriately form the acknowledge signal.
[0022]
The predetermined time of the acknowledge active delay circuit is shorter than the predetermined time of the acknowledge inactive delay circuit. Timer B, which will be described later, is an example of an acknowledge active delay circuit, and timer C is an example of an acknowledge inactive delay circuit.
[0023]
In addition, one or more of the busy inactive delay circuit, the acknowledge active delay circuit, and the acknowledge inactive delay circuit are configured to be able to change the predetermined times based on a signal from the CPU.
[0024]
As a result, each timing of the busy signal and the acknowledge signal is not fixed, and even if the host device is changed to a model of a different handshake method, it can be easily adapted to the handshake mode of the host device. .
[0025]
The acknowledge active delay circuit and the acknowledge inactive delay circuit may be configured to be able to prohibit timing determination based on a signal from the flip-flop by a signal from the CPU.
[0026]
By doing so, for example, in a special case, it can be prevented from being influenced by a signal from the host device. In such a state, the acknowledge signal can be directly output under the control of the CPU.
[0027]
That is, one or both of the acknowledge active delay circuit and the acknowledge inactive delay circuit can determine the timing not only from the signal from the flip-flop but also from the signal from the CPU, so that the CPU directly receives the acknowledge signal. The acknowledge signal can be output in an appropriate shape at an appropriate timing via the acknowledge active delay circuit or the acknowledge inactive delay circuit.
[0028]
This also applies to the busy signal. The busy signal output circuit deactivates the busy signal and the timing at which the busy signal for the host device is activated by the signal from the CPU in addition to the signal from the flip-flop. As a result, the busy signal can be output in a desired appropriate shape at a desired appropriate timing regardless of the signal from the host device.
[0029]
One or more of the busy inactive delay circuit, the acknowledge active delay circuit, and the acknowledge inactive delay circuit may be capable of changing each of the predetermined times based on a setting from a user for the recording apparatus itself. Each timing of the busy signal and the acknowledge signal adapted to the recording apparatus can be set by setting on the apparatus side.
[0030]
Examples of these recording apparatuses include various printers, which are particularly useful for ink jet printers with high resolution, and are also useful for laser printers. Of course, it is also useful for various other printers such as dot impact and thermal printers.
[0031]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram of an
[0032]
The
When the
[0033]
If the data from the host computer 4 is bitmap format image data, it is expanded in a print buffer in the
In addition, various settings of the
[0034]
Here, the data input /
The data input /
[0035]
The function of the entire data input /
[0036]
The function of each component of the data input /
First, an 8-bit parallel signal is output as data signal DATA to the data register 22 as 1-byte data from the host computer 4, and a strobe signal STB / is output from the host computer 4 in a pulsed manner. Since the strobe signal STB / is input to the set terminal S of the hard busy setting flip-
[0037]
The output of the hard busy set flip-
[0038]
Further, since the same output from the hard busy setting flip-
[0039]
Further, the
[0040]
Therefore, as shown in the timing chart of FIG. 3B, when the output of the hard busy set flip-
[0041]
The host computer 4 that has received the pulse of the acknowledge signal ACK / outputs the data signal DATA and the strobe signal STB / as described above on the assumption that the next data transmission is possible, and thereafter all the data is transmitted. Until the above process is repeated.
[0042]
As described above, regarding the communication processing between the
[0043]
Therefore, it is not necessary to use an expensive high-speed CPU for the
[0044]
The timer count value at which a pulse is output from each of the timers A, B, and C in the
For example, in the case of a handshake method in which the host computer 4 side requires only a single fall of the busy signal BUSY without a pulse output of the acknowledge signal ACK /, only the timer A is activated and the other timers B and C are If the
[0045]
Further, the signal processing of FIG. 3B is performed by a so-called center busy system in which the busy signal BUSY is inverted from the active state to the inactive state while the acknowledge signal ACK / is active. As shown in the timing chart of FIG. 4 (a), the time t1 = 0 is set, that is, the timer A has a predetermined time t0, the timer B has a predetermined time t0, and the timer C has a predetermined time t0 + t2. By setting this, the falling edge of the acknowledge signal ACK / and the falling edge of the busy signal BUSY can be set to the simultaneous out busy system.
[0046]
Further, as shown in the timing chart of FIG. 4B, the time t2 = 0 is set, that is, the timer A has a predetermined time t0 + t1, the timer B has a predetermined time t0, and the timer C has a predetermined time. By setting the time t0 + t1, the rising edge of the acknowledge signal ACK / and the falling edge of the busy signal BUSY can be set to the simultaneous busy method.
[0047]
In the center busy system, the so-called 7-5 busy system where t1: t2 = 7: 5 can be set.
As described above, in order to set the handshake suitable for the host computer 4, it is possible to arbitrarily set the generation timing and width of the acknowledge signal ACK /. Also in this case, since the
[0048]
Further, such an arbitrary setting may be set in advance in the timers A, B, and C when the
[0049]
In addition to the change of the predetermined time to the timers A, B, and C, the activation signal is directly transmitted to the timers B and C by the acknowledge trigger signal output from the
[0050]
The
[0051]
Similarly, with respect to the
[0052]
In the example of FIG. 3B described above, the hard busy set flip-
[0053]
As described above, the
[0054]
If handshaking is simply performed by hardware logic, a large number of data input /
[0055]
Further, when there is no paper on the
[0056]
Since the output of the busy signal setting flip-
[0057]
Of course, the
[Others]
When the reception process is interrupted and started, the
[0058]
In the above-described embodiment, the activation is possible even if the activation signal is directly transmitted to the timers B and C by the acknowledge trigger signal output from the
[Brief description of the drawings]
FIG. 1 is a block diagram of an inkjet printer according to an embodiment of the present invention.
FIG. 2 is a circuit diagram of a hardware configuration of a data input / output unit.
FIG. 3 is a timing chart illustrating an example of handshaking in a data input / output unit.
FIG. 4 is a timing chart showing an example of a handshake of a data input / output unit in different setting states.
FIG. 5 is a timing chart showing an example of a general handshake.
[Explanation of symbols]
2 ... Inkjet printer 4 ...
8 ...
16 ...
22 ... Data register 24 ... Hard busy set flip-flop
26 ... and
30 ... Flip-flop for busy signal setting
32. Flip-flop for setting acknowledge signal
34 ...
Claims (2)
上位装置からのストローブ信号より所定の出力状態に反転し、前記CPUからのデータ取得完了信号によりリセットされるフリップフロップと、
このフリップフロップが所定の出力状態に反転したタイミングに基づいて上位装置に対するビジー信号をアクティブにし、フリップフロップがリセットされたタイミングに基づいてビジー信号を非アクティブにするタイミングを決定して、上位装置にビジー信号を送信するビジー信号出力回路と、
前記フリップフロップがリセットされたタイミングに基づいて上位装置に対するアクノリッジ信号をアクティブにするタイミングおよびアクノリッジ信号を非アクティブにするタイミングを決定して、上位装置にアクノリッジ信号を送信するアクノリッジ信号出力回路と、を備え、
前記ビジー信号出力回路は、前記フリップフロップがリセットされたタイミングを所定時間遅延させてビジー信号を非アクティブにするタイミングを決定するビジー非アクティブ遅延回路を有し、
前記アクノリッジ信号出力回路は、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号をアクティブにするタイミングを決定するアクノリッジアクティブ遅延回路と、前記フリップフロップがリセットされたタイミングを所定時間遅延させてアクノリッジ信号を非アクティブにするタイミングを決定するアクノリッジ非アクティブ遅延回路と、を有し、
前記ビジー非アクティブ遅延回路、前記アクノリッジアクティブ遅延回路およびアクノリッジ非アクティブ遅延回路の1つ以上は、前記CPUからの信号に基づいて、前記各所定時間を変更可能であることを特徴とする記録装置。A recording device that receives and prints data from a host device mainly using software logic by a CPU,
A flip-flop that is inverted to a predetermined output state from the strobe signal from the host device and is reset by a data acquisition completion signal from the CPU;
Based on the timing at which the flip-flop is inverted to a predetermined output state, the busy signal for the host device is activated, and the timing at which the busy signal is deactivated is determined based on the timing at which the flip-flop is reset. A busy signal output circuit for transmitting a busy signal;
An acknowledge signal output circuit for deciding when to activate an acknowledge signal for the host device and when to deactivate the acknowledge signal based on the timing when the flip-flop is reset, and for transmitting the acknowledge signal to the host device; Prepared,
The busy signal output circuit includes a busy inactive delay circuit that determines a timing for deactivating the busy signal by delaying a timing at which the flip-flop is reset by a predetermined time,
The acknowledge signal output circuit delays the timing at which the flip-flop is reset by a predetermined time to determine the timing to activate the acknowledge signal, and delays the timing at which the flip-flop is reset by a predetermined time. And an acknowledge inactive delay circuit for determining a timing for deactivating the acknowledge signal.
One or more of the busy inactive delay circuit, the acknowledge active delay circuit, and the acknowledge inactive delay circuit can change each of the predetermined times based on a signal from the CPU .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17581295A JP3612804B2 (en) | 1995-07-12 | 1995-07-12 | Recording device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17581295A JP3612804B2 (en) | 1995-07-12 | 1995-07-12 | Recording device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0924659A JPH0924659A (en) | 1997-01-28 |
JP3612804B2 true JP3612804B2 (en) | 2005-01-19 |
Family
ID=16002671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17581295A Expired - Lifetime JP3612804B2 (en) | 1995-07-12 | 1995-07-12 | Recording device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3612804B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6522416B1 (en) | 1997-09-24 | 2003-02-18 | Canon Kabushiki Kaisha | Printing apparatus and method capable of flexibly controlling response signal |
JP3060714U (en) | 1999-01-07 | 1999-09-07 | 船井電機株式会社 | Printer device |
-
1995
- 1995-07-12 JP JP17581295A patent/JP3612804B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0924659A (en) | 1997-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5630029A (en) | Data transfer system for transferring data from a data transmission apparatus to a data reception apparatus via a parallel interface, and data transfer system for printer using this data transfer system | |
JP2587909B2 (en) | Data transfer method | |
JP3612804B2 (en) | Recording device | |
US7113290B2 (en) | Controlling printer reception of print data from multiple interfaces using a busy state | |
US4996649A (en) | Image processor capable of storing character images and graphic images in a memory and including a timer for ensuring image processing operations are carried out in a predetermined time period | |
JPS63249222A (en) | Printer controller | |
JP4211375B2 (en) | Data transfer control method, data transfer circuit device, and printing apparatus having the same | |
JPS6312291B2 (en) | ||
JP3658151B2 (en) | Printing device and printing method | |
JP2616323B2 (en) | Line thermal head protection circuit | |
JPH11192728A (en) | Ink jet recorder, information processor, print control method, and memory medium | |
JPH0752384B2 (en) | Printer device | |
JP3302146B2 (en) | Printer device and head drive circuit thereof | |
JPH07253945A (en) | Interface device | |
JPH0527925A (en) | Printer | |
JPS6243806Y2 (en) | ||
JP2598187B2 (en) | Terminal device in data communication system | |
US5408592A (en) | Printer having a data output time controller | |
JPH0615884A (en) | Printer | |
JPS60154078A (en) | Ink jet recording apparatus | |
JP3286079B2 (en) | Computer system with data transfer delay control function | |
JPH0313077B2 (en) | ||
JPH09314960A (en) | Terminal device | |
JPH071474B2 (en) | Printer | |
JPH0550615A (en) | Dot printer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20041005 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041018 |
|
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: 20071105 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081105 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091105 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091105 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101105 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101105 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111105 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111105 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121105 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131105 Year of fee payment: 9 |
|
EXPY | Cancellation because of completion of term |