JP2004042538A - 印刷装置 - Google Patents

印刷装置 Download PDF

Info

Publication number
JP2004042538A
JP2004042538A JP2002205656A JP2002205656A JP2004042538A JP 2004042538 A JP2004042538 A JP 2004042538A JP 2002205656 A JP2002205656 A JP 2002205656A JP 2002205656 A JP2002205656 A JP 2002205656A JP 2004042538 A JP2004042538 A JP 2004042538A
Authority
JP
Japan
Prior art keywords
nak
host computer
interrupt
transmission
printing apparatus
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.)
Withdrawn
Application number
JP2002205656A
Other languages
English (en)
Inventor
Toshihisa Okutsu
奥津 俊久
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 JP2002205656A priority Critical patent/JP2004042538A/ja
Publication of JP2004042538A publication Critical patent/JP2004042538A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】印刷装置において、ホストコンピュータからの送信要求を受けた回数をカウントし、あらかじめ設定した回数の要求を受け付けた後に割り込みを発生することで、データ送信のスピードを容易に調整し、また、送信要求を受ける度に割り込みを発生する場合と比較して割り込み発生の頻度を減じて処理の効率を高めること。
【解決手段】印刷装置100であって、前記印刷装置100はUSBインターフェース方式にてデータ通信をホストコンピュータ300との間で行う構成とし、また前記ホストコンピュータ300より送信データ要求の回数をカウントする手段を備え、前記カウント手段が一定の値を示したときに前記ホストコンピュータ300からの送信データ要求に対して割り込みを発生する手段を備え、前記送信データ要求の回数カウント手段の初期値は可変であり、初期値を保持する手段を備える構成とする。
【選択図】    図1

Description

【0001】
【発明の属する技術分野】
本発明はレーザービームプリンタやインクジェットプリンタ、複写機、プロッタ等の印刷媒体を被印刷媒体に作用させ画像情報を印刷する印刷装置に関するものである。
【0002】
【従来の技術】
印刷装置はホストコンピュータとのデータ通信方式においてUSBインターフェース方式を採用するようになった。
【0003】
USBインターフェースはホストコンピュータと周辺機器を接続するための一般的な通信方式であり、印刷装置においては双方向のデータ通信を行い、印刷装置から見た場合において印刷データの受信やステータスの送信を行うものである。
【0004】
USBインターフェースにおいてはホストコンピュータが通信のマスターとなり、データ送信/データ受信ともに通信開始のきっかけはトークンと呼ばれる制御パケットをホストコンピュータから印刷装置に対して送信し、印刷装置が応答を行うという方法で成立している。
【0005】
印刷装置においてはデータ送信に関してはバルクイン転送という方式で通信を行う。
【0006】
この転送方式においてはホストコンピュータがINトークンと呼ばれる送信データ要求パケットを印刷装置に対して送信し、印刷装置側は送信データが存在する場合にはホストコンピュータにデータパケットを送信する。
【0007】
ホストコンピュータからのデータ要求は印刷装置からデータが送信されるまで繰り返される。
【0008】
印刷装置ではホストコンピュータからのデータ要求を受け取ると割り込みを発生して送信処理準備を行っている。
【0009】
【発明が解決しようとする課題】
しかしながら、上記例においては次のような課題があった。
【0010】
ホストコンピュータからのデータ要求が連続的に繰り返し発行された場合に、印刷装置内部ではデータ要求割り込みが繰り返し発生する。すると印刷装置では割り込み処理の負荷が高くなり、印刷データの解析や用紙への印刷など他処理の効率低下を招くことになる。
【0011】
また、USBインターフェースにおいては印刷装置側からデータ送信スピードを調整するにはホストからのデータ要求に対してNAK応答とデータ送信の度合いを調整して実現する。
【0012】
これをデータ要求割り込みで実現するためには割り込みを複数回受けてから送信データの準備を行うなど煩雑な処理を行う必要があった。
【0013】
本発明は上記問題点に鑑みてなされたものであって、印刷装置において、ホストコンピュータからの送信要求を受けた回数をカウントし、あらかじめ設定した回数の要求を受け付けた後に割り込みを発生することでデータ送信のスピードを容易に調整することができ、また、送信要求を受ける度に割り込みを発生する場合と比較して割り込み発生の頻度を減じて処理の効率を高めることのできる印刷装置を提供することを目的としている。
【0014】
【課題を解決するための手段】
本発明は、前記の課題を解決することを目的としたもので、前記の課題を解決する一手段として以下の構成を備える。
【0015】
(1)印刷装置であって、前記印刷装置はUSBインターフェース方式にてデータ通信をホストコンピュータとの間で行う構成とする。
【0016】
(2)前記印刷装置は上記ホストコンピュータより送信データ要求の回数をカウントする手段を備える構成とする。
【0017】
(3)前記印刷装置は上記カウント手段が一定の値を示したときに上記ホストコンピュータからの送信データ要求に対して割り込みを発生する手段を備える構成とする。
【0018】
(4)上記送信データ要求の回数カウント手段の初期値は可変であり、初期値を保持する手段を備える構成とする。
【0019】
【発明の実施の形態】
以下、本発明にかかる一実施例の印刷装置を図面を参照して説明する。
【0020】
図1は本発明の詳細なブロック図である。同図において、300はホストコンピュータ、200はインターフェースケーブル、100は印刷装置(プリンタ)である。
【0021】
印刷装置100は以下のブロックから構成され、内部バス107で接続される。
【0022】
101はホストコンピュータと通信を行うUSBインターフェースコントローラ、102は102aのメモリと102bのCPUから構成され全体を制御する制御部、103は画像データを格納する展開メモリ、104は送受信データを格納する送受信バッファメモリ、105はUSBインターフェースと送受信バッファメモリ104間をデータ転送するためのDMAコントローラ、106は記録紙等に永久可視像を形成するプリンタエンジンである。
【0023】
USBインターフェースコントローラ101は一般的に印刷装置で使われるコントロール転送、バルクイン転送、バルクアウト転送のエンドポイントを備え、ホストコンピュータと双方向のデータ通信を行う機能を備える構成とする。
【0024】
次に本実施例におけるUSBインターフェース101の詳細を説明する。
【0025】
400はシリアル通信コントローラ部、401はNAK割り込み発生部、
402はバルクインエンドポイント制御部、403はNAKカウント数レジスタ、404はNAKカウンタ、シリアル通信コントローラ部400はホストコンピュータ300とUSBのシリアル通信を行うものである。
【0026】
印刷装置100に必要なコントロール転送,バルククイン転送,バルクアウト転送の各転送モードで通信が可能な構成とする。
【0027】
シリアル通信コントローラ部400でホストより受信したデータは制御部102又はDMAコントローラ105により送受信バッファメモリ104へと転送され、逆に送信するデータは送受信バッファメモリ104より制御部102又はDMAコントローラ105にてシリアル通信コントローラ部400へ転送されホストコンピュータ300へと送信される。
【0028】
なおUSBインターフェースコントローラ101内部の信号の動作に関しては後述のタイミングチャートでも説明することする。
【0029】
シリアル通信コントローラ部400はバルクインエンドポイント制御部402を備える。
【0030】
バルクインエンドポイント制御部402はホストコンピュータ300へコントロール転送モード又はバルクイン転送モードにてシリアル送信を行うもので、後述のNAK割り込み発生部401と接続される。
【0031】
出力信号のSEND_NAK信号はHI−trueの信号で、ホストコンピュータ300からのINトークンパケット対して送信データが存在せずNAKを返答した場合にHI−trueのパルスを発生する構成にする。
【0032】
出力信号のSEND_ACK信号はHI−trueの信号で、ホストコンピュータ300からのINトークンパケット対して送信データパケットを送信した場合にHI−trueのパルスを発生する構成にする。
【0033】
NAK割り込み発生部401は本発明の最も特徴的な部分である。
【0034】
NAK割り込み発生部401はNAKカウント数レジスタ403、NAKカウンタ404、論理ANDゲート405で構成する。
【0035】
NAKカウント数レジスタ403はNAK応答割り込みを発生するまでの連続NAK応答の発生回数を保持するもので、制御部102が値を設定するものである。
【0036】
例えばNAK割り込みを発生しないNAK回数を5回にする場合には5を保持値として設定するものとする。この設定の場合、6回目のNAKに対して割り込みが発生することになる。
【0037】
NAKカウンタ404は、ダウンカウンタで印刷装置100の初期化時及び制御部102からのアクセスにより、NAKカウント数レジスタ403の値を初期値としてロードする構成とする。
【0038】
また、図に示したように入力信号としてSEND_NAK、SEND_ACKをバルクインエンドポイント制御部402と接続する。
【0039】
上記2信号はHI−trueの論理レベル信号であり、SEND_ACK信号がHIレベルを示すとNAKカウンタ404にNAKカウント数レジスタ403の保持値をロードする構成とする。
【0040】
またSEND_NAK信号がHIレベルを示すとカウント値をデクリメント(1減ずる)する構成とする。
【0041】
出力信号としてはZERO_CNTを論理ANDゲート405へ接続する。
【0042】
ZERO_CNTはHI−trueのレベル信号で、NAKカウンタ404のカウント値が0を示した場合にHI−trueとなり、それ以外の状態ではLOを示す。
【0043】
論理ANDゲート405はNAKカウンタ404からZERO_CNT信号、バルクインエンドポイント制御部402からSEND_NAK信号を入力する。
【0044】
入力信号を論理ANDしてNAK_INT_REQ信号に出力する。
【0045】
NAK_INT_REQはHI−trueの論理レベル信号で、NAKカウンタ404のカウント値が0の状態でSEND_NAK信号がHIレベルとなるとそのままHIレベルを出力し、制御部102に割り込み通知するものである。
【0046】
NAK_INT_REQ信号を内部バス107と接続する。
【0047】
図2はINトークンに対するプリンタの応答を示す図である。
【0048】
USBインターフェース通信におけるバルクイン転送のパターンを示す。
同図で上のパターンはホストコンピュータ300から発行されたINトークンパケットに対して印刷装置100はNAKパケットを返答している。
【0049】
印刷装置100からホストコンピュータ300へ送信すべきデータがなく応答できないことを示している。
【0050】
同図で下のパターンはホストコンピュータ300から発行されたINトークンパケットに対して印刷装置100はデータパケットを返答している。するとホストコンピュータ300は送信データを受け付けたことを示すためにACKパケットを発行する。
【0051】
印刷装置100からホストコンピュータ300へデータ送信が完了したことを示している。
【0052】
図3は連続したINトークンに対する応答例を示す図である。同図では印刷装置100がデータパケットを送信するまでホストコンピュータ300が送信データ要求(INトークンパケット)を発行し続ける様子を示したものである。
【0053】
NAK応答に対して毎回割り込みを発生した場合、送信データの準備ができるまで割り込みが発生し続けることになる。
【0054】
図4は本実施例におけるNAK応答割り込みが発生する様子を示すタイミングチャートである。
【0055】
ホストコンピュータ300が印刷装置100に対してデータ要求を連続して発行する。
【0056】
本例においては3回連続してNAK応答を行った以降のNAK応答に対して本発明のNAK割り込み発生部401が割り込みを発生することを示すものである。
【0057】
タイミングチャートの上部においてはUSBケーブル200上で行われる通信パケットのやりとりの様子を示し、下部においては印刷装置100内部のUSBインターフェースコントローラ101の内部信号の波形を示している。
【0058】
NAKカウンタとはNAKカウンタ404が保持する値を示すものである。
他の信号は図1で説明したシリアル通信コントローラ部400の内部信号である。
【0059】
NAKカウント数レジスタ403は連続したNAK返答に対して割り込みを発生しない回数を保持するもので、本例では3回NAK返答を許容するように3に設定されている。
【0060】
NAKカウンタ404の値は制御部102が初期化時及び制御部102からのアクセスにより、NAKカウント数レジスタ403の値をロードする。よって値は3を保持している。
【0061】
タイミングt01において、ホストコンピュータ300が発行したINトークンパケットに対してシリアル通信コントローラ部400がNAKパケットを返答したのでSEND_NAK信号にHI−trueのパルスをバルクインエンドポイント制御部402が発生する。
【0062】
このパルスによりNAKカウンタの値がデクリメントされカウンタの値が2になる。
【0063】
タイミングt02からt03まで、上記と同じくホストコンピュータ300が発行するINトークンパケットに対してNAKパケットを返答する処理を繰り返す。
【0064】
これによりNAKカウンタの値はデクリメントを繰り返しタイミングt03の後で値が0になる。
【0065】
この間、NAKカウンタの値は0でないためZERO_CNT信号はLOレベルを保持し、NAK_INT_REQ信号もLOレベルを出力するので、制御部102に対してNAK応答割り込みを発生しない。
【0066】
タイミングt04において、NAKカウンタの値が0の状態で、NAKカウンタ404が出力するZERO_CNT信号がHI−trueを保持している。
【0067】
この状態でNAK応答を行うとSEND_NAK信号がHI−trueとなり、論理ANDゲート405出力のNAK_INT_REQ信号がHI−trueパルスを発生し、制御部102に対してNAK応答割り込みを発生する。
【0068】
タイミングt05において、同様にNAKカウンタの値が0のままであるのでNAK応答に対してNAK_INT_REQ信号がHI−trueパルスを発生し、制御部102に対してNAK応答割り込みを発生する。
【0069】
本タイミング以降、ホストコンピュータ300からのデータ要求に対してNAK応答を行う度にNAK応答割り込みが発生するものである。
【0070】
タイミングt06において、ホストコンピュータ300からのデータ要求に対してデータパケットを送出しホスト側の受領を示すために発行されたACKパケットを受信したのでバルクインエンドポイント制御部402がSEND_ACK信号にHI−trueパルスを発生する。
【0071】
同タイミングにおいてNAKカウンタ404はSEND_ACKのHI−trueパルスが入力されるのでNAKカウント数レジスタ403の値をロードし、保持値が0から3になる。
【0072】
よってZERO_CNT信号もHI−trueからLOになる。
【0073】
新たにホストコンピュータ300がINトークンパケットを繰り返し発行すると上記処理を繰り返し、3回のNAKパケット返送以降、データパケットを送出するまでNAK応答割り込みが発生する。
【0074】
印刷装置100においてはホストコンピュータ300からのデータ要求開始からデータパケット送出までのタイミングをNAKパケット送出の回数により容易に制御できるようになり、送信スピードの制御をファームウエアにて容易に行うことができるようになる。
【0075】
図5は本実施例におけるNAK応答割り込みが発生しない場合の様子を示すタイミングチャートである。
【0076】
本発明を、NAK応答が一定回数連続した場合を異常状態と見なし、その場合に制御部102に割り込み通知をするという目的で使用する場合の例を示すタイミングチャートである。
【0077】
データ送信においてDMAコントローラ105を用いて送受信バッファメモリ104のデータをUSBインターフェースコントローラ101に対して供給する場合を想定するものである。
【0078】
通常状態ではDMAコントローラ105を用いたデータ送信においてはデータ送信開始後はホストコンピュータ300からのデータ要求に対してNAK応答を行うこと無にデータパケットを準備することが可能な設計である。
【0079】
但し、DMAコントローラ105の処理能力の不足(他のチャネルのメモリアクセスによるトラフィック負荷)やなんらかの異常状態でデータがUSBインターフェースコントローラ101に対して送信データの準備が遅れる場合も考えられる。
【0080】
その様な状態を制御部102に通知するためにNAK応答割り込みを用いる例を以下に説明する。
【0081】
ホストコンピュータ300が印刷装置100に対してデータ要求を連続して発行する。
【0082】
本例においては10回連続してNAK応答を行った以降のNAK応答に対して本発明のNAK割り込み発生部401が割り込みを発生する設定を行う場合で、5回のNAK応答の次にデータパケット送信を行ったのでNAK応答割り込みが発生しなかった場合の様子を示すものである。
【0083】
タイミングチャートの上部においてはUSBケーブル200上で行われる通信パケットのやりとりの様子を示し、下部においては印刷装置100内部のUSBインターフェースコントローラ101の内部信号の波形を示している。
【0084】
NAKカウンタとはNAKカウンタ404が保持する値を示すものである。
他の信号は図1で説明したシリアル通信コントローラ部400の内部信号である。
【0085】
NAKカウント数レジスタ403は連続したNAK返答に対して割り込みを発生しない回数を保持するもので、本例では10回NAK返答を許容するように10に設定されている。
【0086】
NAKカウンタの値は制御部102が初期化時及び102の制御部からのアクセスにより、NAKカウント数レジスタ403の値をロードする。よって値は10を保持している。
【0087】
タイミングt11において、ホストコンピュータ300が発行したINトークンパケットに対してシリアル通信コントローラ部400がNAKパケットを返答したのでSEND_NAK信号にHI−trueのパルスをバルクインエンドポイント制御部402が発生する。
【0088】
このパルスによりNAKカウンタの値がデクリメントされカウンタの値が9になる。
【0089】
タイミングt12からt15まで、上記と同じくホストコンピュータ300が発行するINトークンパケットに対してNAKパケットを返答する処理を繰り返す。
【0090】
これによりNAKカウンタの値はデクリメントを繰り返しタイミングt15の後で値が5になる。
【0091】
この間、NAKカウンタの値は0でないためZERO_CNT信号はLOレベルを保持し、NAK_INT_REQ信号もLOレベルを出力するので、制御部102に対してNAK応答割り込みを発生しない。
【0092】
タイミングt16において、ホストコンピュータ300からのデータ要求に対してデータパケットを送出しホスト側の受領を示すために発行されたACKパケットを受信したのでバルクインエンドポイント制御部402がSEND_ACK信号にHI−trueパルスを発生する。
【0093】
同タイミングにおいてNAKカウンタ404はSEND_ACKのHI−trueパルスが入力されるのでNAKカウント数レジスタ403の値をロードし、保持値が5から10になる。
よってZERO_CNT信号はLOレベルのままである。
【0094】
上記の一連処理においてはNAKカウンタが0までカウントダウンすること無く、データパケットが送出されたのでNAK応答割り込みは発生しない。
【0095】
すなわちデータ送信処理は異常状態になく、制御部102に対して割り込み通知を行う必要がなかったわけである。
【0096】
NAK応答が連続して発生し、図4で説明したのと同じくNAKカウンタが0までカウントダウンするとNAK応答割り込みが発生する。すると制御部102は異常状態を検出することが可能となる。
【0097】
【発明の効果】
以上説明したように本発明によれば、印刷装置において、ホストコンピュータからの送信要求を受けた回数をカウントし、あらかじめ設定した回数の要求を受け付けた後に割り込みを発生することで、データ送信のスピードを容易に調整できるという効果がある。
【0098】
また、送信要求を受ける度に割り込みを発生する場合と比較して印刷装置本来の処理に対する割り込み発生の頻度を減じて処理の効率を高めるという効果もある。
【0099】
さらには、データ送信をDMAコントローラを用いる処理系の場合にホストコンピュータからの送信要求に対して一定回数データ転送を行わなかった場合の異常検出を容易に実現するという効果もある。
【図面の簡単な説明】
【図1】本発明の詳細なブロック図
【図2】INトークンに対するプリンタの応答を示す図
【図3】連続したINトークンに対する応答例を示す図
【図4】本実施例におけるNAK応答割り込みが発生する場合を示すタイミングチャート
【図5】本実施例におけるNAK応答割り込みが発生しない場合を示すタイミングチャート
【符号の説明】
100 印刷装置
101 USBインターフェースコントローラ
102 制御部
102a メモリ
102b CPU
103 展開メモリ
104 送受信バッファメモリ
105 DMAコントローラ
106 プリンタエンジン
107 内部バス
200 USBインターフェースケーブル(USBケーブル)
300 ホストコンピュータ
400 シリアル通信コントローラ部
401 NAK割り込み発生部
402 バルクインエンドポイント制御部
403 NAKカウント数レジスタ
404 NAKカウンタ
405 論理ANDゲート

Claims (4)

  1. 印刷装置であって、前記印刷装置はUSBインターフェース方式にてデータ通信をホストコンピュータとの間で行う事を特徴とする印刷装置。
  2. 前記印刷装置は上記ホストコンピュータより送信データ要求の回数をカウントする手段を備えることを特徴とする印刷装置。
  3. 前記印刷装置は上記カウント手段が一定の値を示したときに上記ホストコンピュータからの送信データ要求に対して割り込みを発生する手段を有することを特徴とする印刷装置。
  4. 上記送信データ要求の回数カウント手段の初期値は可変であり、初期値を保持する手段を有することを特徴とする印刷装置。
JP2002205656A 2002-07-15 2002-07-15 印刷装置 Withdrawn JP2004042538A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002205656A JP2004042538A (ja) 2002-07-15 2002-07-15 印刷装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002205656A JP2004042538A (ja) 2002-07-15 2002-07-15 印刷装置

Publications (1)

Publication Number Publication Date
JP2004042538A true JP2004042538A (ja) 2004-02-12

Family

ID=31710901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002205656A Withdrawn JP2004042538A (ja) 2002-07-15 2002-07-15 印刷装置

Country Status (1)

Country Link
JP (1) JP2004042538A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013510375A (ja) * 2009-11-06 2013-03-21 クゥアルコム・インコーポレイテッド データ通信のためのシステム、方法、および装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013510375A (ja) * 2009-11-06 2013-03-21 クゥアルコム・インコーポレイテッド データ通信のためのシステム、方法、および装置

Similar Documents

Publication Publication Date Title
US7702841B2 (en) Semiconductor integrated circuit and image processing apparatus having the same
US20080162753A1 (en) Method for Performing Full Transfer Automation in a USB Controller
US20080162737A1 (en) USB Controller with Full Transfer Automation
JPH07248992A (ja) 画像データ転送制御装置
JP2004042538A (ja) 印刷装置
JP4295420B2 (ja) プリンタ制御装置のブランク頁印刷方法
JP2863686B2 (ja) 印字装置
JP3970728B2 (ja) データ通信装置
JP3871177B2 (ja) データ通信装置およびデータ通信方法
JP2003248558A (ja) データ転送方法、および、その装置
JP4095216B2 (ja) プリンタおよびプリンタ内のデータ通信方法
JP3846089B2 (ja) インターフェース装置、その制御方法および情報記録媒体
JP2005004563A (ja) Dma転送制御装置
JP5353470B2 (ja) Usbデバイス、画像処理装置、usb転送制御方法、usb転送制御プログラム及び記録媒体
JP2000276437A (ja) Dma制御装置
JPH08224945A (ja) バンドバッファリング方式の画像出力装置
JP3548943B2 (ja) 割り込み制御方法
JP2007251715A (ja) データ転送方法及びそのデータ転送装置
JP2002014913A (ja) インターフェイス回路およびプリンタ装置
JP3593882B2 (ja) 印刷装置及びインターフェース制御方法
JP3844024B2 (ja) 印刷装置
JP2003110565A (ja) 通信システム、送信装置、通信方法、通信プログラム、および通信プログラムを記録したコンピュータ読取可能な記録媒体
JP2004034573A (ja) プリンタ制御装置における印刷画像データ高速転送方式
US9298656B2 (en) Data transferring apparatus and data transferring method
JPH01103466A (ja) ページ式プリンタ装置の制御方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051004