JP4371786B2 - Usbデバイスコントローラおよびプリンタ - Google Patents
Usbデバイスコントローラおよびプリンタ Download PDFInfo
- Publication number
- JP4371786B2 JP4371786B2 JP2003401614A JP2003401614A JP4371786B2 JP 4371786 B2 JP4371786 B2 JP 4371786B2 JP 2003401614 A JP2003401614 A JP 2003401614A JP 2003401614 A JP2003401614 A JP 2003401614A JP 4371786 B2 JP4371786 B2 JP 4371786B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- dma transfer
- data
- device controller
- usb device
- 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 - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Description
USB規格では、アプリケーション毎に共通のドライバを使うことを目的として、PC周辺機器(USBデバイス)の種類に応じてUSBデバイスクラス仕様が定められている。プリンタクラス仕様においても、必要な転送モードと送受信バッファであるエンドポイントの数が定められており、この仕様に準拠することによりマイクロソフト社が提供するUSBプリンタクラスドライバを使用することができる。
図4に示す様なプリンタシステムの場合、ホストPCからの印刷データはバルクアウト転送によりプリンタに送信され、プリンタ内のUSBデバイスコントローラ内部の受信バッファ(バルクアウト用エンドポイント:EP1)に格納される。受信バッファに格納されたデータは、プリンタ側メモリに高速で転送する必要があり、一般的に転送性能の高いDMA転送(Direct Memory Access転送)が使用される。
USBホストからの印刷データをプリンタメモリに格納するために使用できる領域には制限があり、例えば、ディスクリプタ方式のように同一領域を繰り返し使用する必要がある。
このディスクリプタ方式は、プリンタメモリ内にデータ格納領域と、データ格納領域の情報を示すディスクリプタ領域を同数個割り当て、DMA転送をおこなうDMAC(Direct Memory Access Controller)がディスクリプタ領域の情報を参照し、データ格納領域への印刷データ書き込みを実施する手法である。通常、個々のディスクリプタ領域は、数バイト、データ格納領域は数キロバイトに設定される。
DMACは、DMA転送開始前にDC1の情報を取得しており、EP1に格納された印刷データをプリンタメモリのDS1にDMA転送して、DS1が満杯になった時点でDMA転送は一時中断される。
図6のDC1のように、バッファアドレスとして、データ格納領域DS1のアドレス、データ長が格納され、DS1にDMA転送されたデータが格納される。
転送中断後、DMACはDC2の情報を取得して、DC1の次のディスクリプタポインタへDC2がセットされ、データの転送をDC2を用いて実行する。この動作をディスクリプタ更新と呼ぶことにする。ディスクリプタ更新後、DS2への印刷データ転送が再開される。同様にDS3/DS4への印刷データ転送を行うが、DS4が満杯になった場合は、DS1に重ね書きする設定をすることにより、比較的容量の小さいデータ格納領域を利用して大容量の印刷データを格納することが可能となる。
プリンタのCPUは、プリンタメモリ内に印刷データが格納されたことを認識し、ある一定データが揃った時点で印刷データの使用許可を上層アプリケーションに与えることにより印刷処理が開始される。
ディスクリプタ方式では、CPUが定期的にプリンタメモリ内の印刷データをポーリングし、有効なデータが存在する場合に印刷データの使用許可を発行する方式を採用している。この有効なデータとは、個々のデータ格納領域(DS)が満杯であることを示す情報ビットか、印刷ファイルの区切りを検知したことを示す情報ビット(図6のEOP Flag)がセットされているものを言う。
印刷ファイルの区切りを検知したことを示す情報ビット(EOP Flag)は、データ長がUSB規格で定義された最大ペイロード未満のパケット(ショートパケット)のDMA転送完了時にセットされる。両ビットは個々のディスクリプタ情報の一部として格納されている。尚、先に述べたディスクリプタ更新はショートパケットおよびNullパケットに相当するデータのDMA転送完了時にも実行される。
印刷ファイルが最大ペイロードの整数倍である場合には、ペイロードを持たないパケット(Nullパケット)を送信することが仕様に定められている。
しかし、マイクロソフト社の提供するプリンタクラスドライバは、上記したNullパケットを発行しない場合があり、これによりプリンタ側で印刷ファイルの区切りが認識できずに印刷ファイルが誤って結合され、印刷データ化けにより異常印刷となる恐れがある。
このような場合、印刷データの転送は正常に終わっているのであり、次に印刷指令で送られてくる印刷データも正常のはずである。しかし、これらの印刷データが一緒になって印刷され異常印刷が起こってから対処するのでは遅いので、印刷データのファイル区切りを何らかの方法で知ることによって正常に印刷を完了させることが望ましい。
本発明は、上述のような実情を考慮してなされたものであって、通信プロトコル異常によって引き起こされる印刷障害はもちろん、印刷データ区切りを受信できなかった場合にも高速で正しい印刷データの転送が行えるUSBデバイスコントローラおよびプリンタを提供することを目的とする。
また、本発明の請求項2は、USBインターフェイスでバルクアウト転送によりホストPCからプリンタに転送されてくる印刷データを受信バッファに格納し、格納した該印刷データを受信バッファからプリンタメモリにDMA転送する制御を行うUSBデバイスコントローラであって、前記ホストPCから前記印刷データが転送されてこないアイドル状態の時間を検知する時間検知手段と、前記時間検知手段によって検知された時間が所定時間に達したときにDMA転送を一時的に停止状態にする第2転送一時停止手段と、前記第2転送一時停止手段によってDMA転送を一時的に停止状態にしたときに、ホストPCからNullパケット(データ長ゼロのパケット)を受信した場合に行うと同じシーケンスを割り込みで実行し、DMA転送を再開する第2DMA転送再開手段とを備えたことを特徴とする。
また、本発明の請求項3は、請求項2に記載されたUSBデバイスコントローラにおいて、前記受信バッファから前記プリンタメモリにDMA転送されたデータ数を検知する転送データ数検知手段と、転送データ数検知手段によって検知されたデータ数が前記DMA転送の所定データ格納領域を満杯にする値に達したときにDMA転送を一時的に停止状態にする第1転送一時停止手段と、前記第1転送一時停止手段によってDMA転送を一時的に停止状態にしたときに、ホストPCからNullパケットを受信した場合に行うと同じシーケンスを割り込みで実行し、DMA転送を再開する第1DMA転送再開手段とをさらに備えたことを特徴とする。
また、本発明の請求項5は、請求項1乃至4のいずれかに記載されたUSBデバイスコントローラにおいて、直前のDMA転送データがショートパケット或いはNullパケットであった場合には、前記第1転送一時停止手段及び前記第1DMA転送再開手段、並びに前記第2転送一時停止手段及び前記第2DMA転送再開手段の作動を不許可とする手段を備えたことを特徴とする。
また、本発明の請求項6は、請求項1乃至5のいずれかに記載されたUSBデバイスコントローラにおいて、転送されてきたパケットがショートパケット或いはNullパケットであることを条件に、DMA転送を一時的に停止状態にしたときに行う前記割り込みを実行する手段を備えたことを特徴とする。
また、本発明の請求項7は、請求項1乃至6のいずれかに記載されたUSBデバイスコントローラを搭載したプリンタである。
また、擬似的なNullパケットを挿入して発生させた割り込みを、プリンタメモリデータの使用許可シーケンス開始に利用することにより、CPUのポーリングが不要となるためCPU負荷を減らしたプリンタが実現できる。
本発明のUSBデバイスコントローラの特徴は、ショートパケットがホストPCから発行されない場合であっても、ホストPCからデータ長ゼロのパケット(Nullパケット)を受信した場合と同じシーケンスをDMA転送インターフェイスに擬似的に出現させる処理(擬似Nullパケット挿入処理)をUSBデバイスコントローラ内部で任意のタイミングで実行させることを可能としたことにある。
このNullパケットは、実データを持たないパケットであるから、実データがプリンタメモリに格納されることなしにディスクリプタ更新のみ実行されることになる。従って、擬似Nullパケット挿入処理を任意のタイミングで挿入しても印刷データに余分なデータが付加されることがないため、印刷データの連続性は保たれることになる。
図1は、本発明のUSBデバイスコントローラの主要部の構成を示すブロック図であり、USBデバイスコントローラの動作を説明するのに必要な構成のみを示している。同図において、1は内部レジスタ(RE−A,RE−D,RE−B,RE−E,RE−C,RE−J)、2は受信DMA転送制御用ステートマシン、3は受信バッファ(バルクアウト用エンドポイント:EP1)、4はドライバソフトが受信バッファ3からプリンタメモリ6へ転送したデータ数をカウントするカウンタF、5はDMAC、6はプリンタメモリ(ディスクリプタ方式によるディスクリプタ領域とデータ格納領域からなる)、7はプリンタの制御プログラムを実行するためのCPU(中央演算装置)、8はアイドル状態の時間をカウントするカウンタHである。
内部レジスタ1には、以下のレジスタが実装される。
・制御レジスタRE−Aは、DMA転送の一時停止要求を設定する制御レジスタである。
・制御レジスタRE−Dは、ホストPCからデータ長ゼロのパケット(Nullパケット)を受信した場合と同じシーケンス処理要求を設定する制御レジスタである。
・制御レジスタRE−Bは、DMA転送再開要求を設定する制御レジスタである。
・レジスタRE−Eは、ホストPCからデータ長ゼロのパケット(Nullパケット)を受信した場合と同じシーケンスの実行可否状態を示すレジスタである。
・割り込みレジスタRE−Cは、DMA転送が一時停止したときに設定される割り込みフラグを格納するレジスタである。
・割り込みレジスタRE−Jは、ホストPCからデータ長ゼロのパケット(Nullパケット)を受信した場合と同じシーケンスの実行が完了となったときに設定される割り込みフラグを格納するレジスタである。
(1)CPUが制御レジスタに値を設定すると、ステートマシン2はUSB仕様で定義されたパケット境界を検出した時点でDMA転送を一時的に停止状態にする。
(2)CPUが制御レジスタRE−Bに値が設定されたことを認識すると、USB仕様で定義されたパケット境界で一時的に停止状態となっているDMA転送を再開させる。
(3)CPUが制御レジスタRE−Dに値が設定されたことを認識すると、ホストPCからデータ長ゼロのパケット(Nullパケット)を受信した場合と同じシーケンスをDMA転送インターフェイスに擬似的に出現させる。このシーケンスを擬似Nullパケット挿入処理と呼ぶ。
(4)擬似Nullパケット挿入処理が完了したときに、割り込みレジスタRE−Jが設定され、CPUに対して擬似Nullパケット挿入処理が完了した割り込みを発生させる。
(5)DMA転送がUSB仕様で定義されたパケット境界が検出され、一時的に停止状態になると、割り込みレジスタRE−Cが設定され、CPUに対して割り込みを発生させる。
(6)一時停止前に行われたDMA転送に対応するパケットがマックスパケットの場合は許可、ショートパケット或いはNullパケットの場合は不許可と判断して、擬似Nullパケット挿入処理の許可/不許可をレジスタRE−Eへ設定する。
(7)DMA転送によって受信バッファ3からプリンタメモリ6に転送されたデータ数をカウンタF4でカウントし、カウンタF4の値が所定の一定値に達した場合に、制御レジスタRE−Aに設定してDMA転送を一時的に停止状態にする。
(8)アイドル状態の時間をカウンタH8でカウントし、時間カウント数が所定の一定値に達した場合に、制御レジスタRE−Aに設定してDMA転送を一時的に停止状態にする。
ドライバソフトでカウントしている時間のカウンタH8の値が所定の値になった時点で、CPU7が内部レジスタに実装されたDMA転送の一時停止要求をおこなう制御レジスタRE−Aに値を設定すると、ステートマシン2はUSB仕様で定義されたパケット境界を検出した時点でDMA転送を一時的に停止状態にする。またはカウンタF4の値が所定の値になった時点でCPU7が内部レジスタに実装されたDMA転送の一時停止要求をおこなう制御レジスタRE−Aに値を設定すると、ステートマシン2はUSB仕様で定義されたパケット境界を検出した時点でDMA転送を一時的に停止状態にする。
次に、DMA転送がパケット境界で一時停止した時点で、割り込みレジスタRE−Cが設定され、CPU7に対して割り込みが発生する。
CPU7は、割り込み要因を確認後、擬似Null挿入許可レジスタRE−Eを確認する。レジスタRE−Eが1の場合は、擬似Nullパケット挿入制御レジスタRE−Dをセットすると、擬似Nullパケット挿入処理を実行し、プリンタメモリ6側ではディスクリプタの更新が行われる。
この後、CPU7がDMA転送再開制御レジスタRE−Bに1を書き込むことにより、DMA転送が再開される。
また、擬似Nullパケット挿入が完了すると割り込みレジスタRE−Jが設定されるので、CPU7に対して割り込みが発生する。この割り込みが発生した場合、プリンタメモリ6には必ず有効なデータが存在することになる。この割り込みを使用することによりCPU7はプリンタメモリ6のデータを定期的にポーリングする必要が無くなるため、CPU負荷を減らすことができる。
尚、擬似Null挿入許可レジスタRE−Eは、直前のDMA転送データがショートパケット或いはNullパケットであった場合には、不許可を示すようにしたので、不要な割り込み発生を防止する効果があり、CPU負荷低減に貢献する。
一方、レジスタRE−Eが0の場合、CPU7はDMA転送再開制御レジスタRE−Bに1を書き込む動作のみ実行して、DMA転送が再開される。
また、印刷データ転送が完了した場合、次の印刷データ転送が開始されるまでに比較的長いアイドル状態(USBトラフィックがない状態)が存在するが、印刷データの最後にはショートパケット或いはNullパケットのDMA転送が実行されることから、擬似Null挿入許可レジスタRE−Eは不許可状態となるので、アイドル状態において、不要な擬似Nullパケット挿入が実行されることは起こり得ないことになる。
尚、2種類のカウンタ(カウンタF/カウンタH)を使用した理由は、以下の通りである。
(1)一定データ数のDMA転送完了時にCPUに対して割り込みを起こさせるカウンタFのみを使用した場合、カウント値に満たない状態で印刷ファイル転送が終わるときに、CPUに対する割り込みを発生させることができなくなる。これを回避するためには、最終データに使用許可を与えるために、CPUがプリンタメモリを定期的にポーリングする必要が生じてしまう。
(2)一方、カウンタHのみ使用した場合、プリンタメモリ領域を使い切った時点でDMA転送が中断され、カウンタHのカウントアップが完了する迄の時間が無駄になってしまい、無駄な時間分だけ印刷パフォーマンスに影響してしまう。
したがって、これらの問題を解消する目的で2種類のカウンタを併用することとした。
実施形態1では、時間のカウントを行うカウンタHは、ドライバソフトが行うためCPUを使用する。実施形態2では、このカウンタHをUSBデバイスコントローラ側にハード実装することにより、実施形態1よりさらにCPU負荷を減らすことが可能となる。
図2は、本発明のUSBデバイスコントローラの主要部の他の構成を示すブロック図である。実施形態2のUSBデバイスコントローラでは、カウンタH8がUSBデバイスコントローラ側にハード実装された以外の構成は実施形態1と同じである。この場合の動作は以下のようになる。
カウンタF4の値が所定の値になった時点、或いはカウンタH8の値が所定の値になった時点で、CPU7が内部レジスタに実装されたDMA転送の一時停止要求をおこなう制御レジスタRE−Aに値を設定すると、ステートマシン2はUSB仕様で定義されたパケット境界を検出した時点でDMA転送を一時的に停止状態にする。
DMA転送がパケット境界で一時停止した時点で、割り込みレジスタRE−Cへ割り込みが設定され、CPU7に対して割り込みが発生する。
CPU7は、割り込み要因を確認後、擬似Null挿入許可レジスタRE−Eを確認する。レジスタRE−Eが1の場合は、擬似Nullパケット挿入制御レジスタRE−Dをセットすると、擬似Nullパケット挿入処理を実行し、プリンタメモリ6側ではディスクリプタの更新が行われる。
この後、CPU7がDMA転送再開制御レジスタRE−Bに1を書き込むことにより、DMA転送が再開される。
一方、レジスタRE−Eが0の場合、CPU7はDMA転送再開制御レジスタRE−Bに1を書き込む動作のみ実行して、DMA転送が再開される。
本実施形態2の場合、実施形態1で示したカウンタHのカウントアップに伴って実行されるレジスタRE−Aへのセット処理が不要になる分、CPU負荷を減らすことができる。尚、内部レジスタの変更に伴って、カウンタH/カウンタFの値を変更可能な構成にしておくことが望ましい。
実施形態1および実施形態2においては、CPUが制御レジスタRE−A/RE−B/RE−Dにアクセスすることにより、DMA転送の一時停止と再開、擬似Nullパケット挿入を制御する構成であったが、CPUの制御なしに動作するような受信DMA転送制御用ステートマシンを構成することも可能である(図3参照)。
この場合、DMA転送を一時停止したときに発生させる割り込み、CPU制御およびCPUが参照していたレジスタRE−A/RE−D/RE−B/RE−E/RE−Cは不要になり、必要な内部レジスタは割り込みレジスタRE−Jのみである。
本実施形態3の場合には、次のように実行される。
カウンタF4の値が所定の値になった時点、或いはカウンタH8の値が所定の値になった時点で、DMA転送一時停止要求が有効となり、DMA転送がパケット境界で一時停止した時点で、直前のDMA転送データがショートパケット/Nullパケット/マックスパケットの何れであるかを判断する。
ショートパケット/Nullパケットであった場合は、擬似Nullパケット挿入を実行する。この場合プリンタメモリ側ではディスクリプタの更新が行われ、擬似Nullパケット挿入処理が完了すると割り込みレジスタRE−Jが設定され、CPU7に対して割り込みが発生し、DMA転送が再開される。
一方、マックスパケットであった場合は、擬似Nullパケット挿入を行わず、DMA転送の再開のみ実行する。
本実施形態3の場合、CPUでは印刷ファイル境界割り込みの確認とプリンタメモリの使用許可以外の処理が不要となるため、実施形態1および実施形態2の場合に増してCPU負荷を減らすことが可能となる。
上記の実施形態(実施形態1〜実施形態3)においては、2種類のカウンタ(カウンタF/カウンタH)を独立して並列使用する方法であり、両カウンタのカウント完了タイミングがほぼ同時になった場合、続けて擬似Nullパケット挿入処理が実施されることになるので、必ずしも必要ない割り込み処理をCPUが実行することになってしまう。
この問題を回避するために、本実施形態4では、一方のカウンタのカウントアップが完了した場合に他方のカウンタのカウントクリアを実施するようにした。それ以外の動作は、実施形態1〜実施形態3と同じであり、これによりそれぞれの場合に関して、不要な割り込み処理によるCPU負荷を減らすことが可能となる。
尚、本発明は上述した実施形態に限定されることなく、本発明の要旨を逸脱しない範囲内で各種の変形、修正が可能であるのは勿論である。
Claims (7)
- USBインターフェイスでバルクアウト転送によりホストPCからプリンタに転送されてくる印刷データを受信バッファに格納し、格納した該印刷データを受信バッファからプリンタメモリにDMA転送する制御を行うUSBデバイスコントローラであって、
前記受信バッファから前記プリンタメモリにDMA転送されたデータ数を検知する転送データ数検知手段と、
前記転送データ数検知手段によって検知されたデータ数が前記DMA転送の所定データ格納領域を満杯にする値に達したときにDMA転送を一時的に停止状態にする第1転送一時停止手段と、
前記第1転送一時停止手段によってDMA転送を一時的に停止状態にしたときに、ホストPCからNullパケット(データ長ゼロのパケット)を受信した場合に行うと同じシーケンスを割り込みで実行し、DMA転送を再開する第1DMA転送再開手段と
を備えたことを特徴とするUSBデバイスコントローラ。 - USBインターフェイスでバルクアウト転送によりホストPCからプリンタに転送されてくる印刷データを受信バッファに格納し、格納した該印刷データを受信バッファからプリンタメモリにDMA転送する制御を行うUSBデバイスコントローラであって、
前記ホストPCから前記印刷データが転送されてこないアイドル状態の時間を検知する時間検知手段と、
前記時間検知手段によって検知された時間が所定時間に達したときにDMA転送を一時的に停止状態にする第2転送一時停止手段と、
前記第2転送一時停止手段によってDMA転送を一時的に停止状態にしたときに、ホストPCからNullパケット(データ長ゼロのパケット)を受信した場合に行うと同じシーケンスを割り込みで実行し、DMA転送を再開する第2DMA転送再開手段と
を備えたことを特徴とするUSBデバイスコントローラ。 - 請求項2に記載されたUSBデバイスコントローラにおいて、
前記受信バッファから前記プリンタメモリにDMA転送されたデータ数を検知する転送データ数検知手段と、
転送データ数検知手段によって検知されたデータ数が前記DMA転送の所定データ格納領域を満杯にする値に達したときにDMA転送を一時的に停止状態にする第1転送一時停止手段と、
前記第1転送一時停止手段によってDMA転送を一時的に停止状態にしたときに、ホストPCからNullパケットを受信した場合に行うと同じシーケンスを割り込みで実行し、DMA転送を再開する第1DMA転送再開手段と
をさらに備えたことを特徴とするUSBデバイスコントローラ。 - 請求項3に記載されたUSBデバイスコントローラにおいて、
前記時間検知手段と前記転送データ数検知手段の一方の検知結果に従いDMA転送を一時的に停止状態にした場合に他方の検知結果をクリアする手段を備えたことを特徴とするUSBデバイスコントローラ。 - 請求項1乃至4のいずれかに記載されたUSBデバイスコントローラにおいて、
直前のDMA転送データがショートパケット或いはNullパケットであった場合には、前記第1転送一時停止手段及び前記第1DMA転送再開手段、並びに前記第2転送一時停止手段及び前記第2DMA転送再開手段の作動を不許可とする手段を備えたことを特徴とするUSBデバイスコントローラ。 - 請求項1乃至5のいずれかに記載されたUSBデバイスコントローラにおいて、
転送されてきたパケットがショートパケット或いはNullパケットであることを条件に、DMA転送を一時的に停止状態にしたときに行う前記割り込みを実行する手段を備えたことを特徴とするUSBデバイスコントローラ。 - 請求項1乃至6のいずれかに記載されたUSBデバイスコントローラを搭載したプリンタ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003401614A JP4371786B2 (ja) | 2003-08-15 | 2003-12-01 | Usbデバイスコントローラおよびプリンタ |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003293864 | 2003-08-15 | ||
JP2003401614A JP4371786B2 (ja) | 2003-08-15 | 2003-12-01 | Usbデバイスコントローラおよびプリンタ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005100314A JP2005100314A (ja) | 2005-04-14 |
JP4371786B2 true JP4371786B2 (ja) | 2009-11-25 |
Family
ID=34466907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003401614A Expired - Fee Related JP4371786B2 (ja) | 2003-08-15 | 2003-12-01 | Usbデバイスコントローラおよびプリンタ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4371786B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6213029B2 (ja) * | 2013-08-07 | 2017-10-18 | 富士ゼロックス株式会社 | 通信装置、及び通信システム |
-
2003
- 2003-12-01 JP JP2003401614A patent/JP4371786B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005100314A (ja) | 2005-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182317B2 (en) | Dual-driver interface | |
US6816929B2 (en) | Data transfer control method and controller for universal serial bus interface | |
US5721955A (en) | System for transferring portion of data to host from buffer if size of packet is greater than first threshold value but less than second threshold value | |
US6205501B1 (en) | Apparatus and method for handling universal serial bus control transfers | |
US7069373B2 (en) | USB endpoint controller flexible memory management | |
US7802034B2 (en) | Method for performing full transfer automation in a USB controller | |
JP4232603B2 (ja) | 通信システム、制御装置、canバス接続ノード、canバス通信方法、及び、プログラム | |
JPH03129448A (ja) | データ転送制御装置 | |
JP4371786B2 (ja) | Usbデバイスコントローラおよびプリンタ | |
US6757776B1 (en) | Control transaction handling in a device controller | |
US6693905B1 (en) | Data exchange unit | |
JP2002318778A (ja) | データ通信システムとその通信方法 | |
US7346714B2 (en) | Notification of completion of communication with a plurality of data storage areas | |
JP2581468B2 (ja) | 非scsiデバイスのアクセス方法 | |
JP3970728B2 (ja) | データ通信装置 | |
WO2008082530A1 (en) | Method and apparatus for performing full transfer automation in a usb controller | |
JP2003063118A (ja) | 記録装置、インタフェース制御装置およびインタフェース制御方法 | |
JP4026979B2 (ja) | データ通信システム | |
JP3846089B2 (ja) | インターフェース装置、その制御方法および情報記録媒体 | |
JP4362199B2 (ja) | データ伝送装置 | |
JP2537541B2 (ja) | Dma制御方式 | |
JP2001086132A (ja) | 通信システム、印刷システム、及び通信方法、印刷制御方法 | |
JP2005143009A (ja) | 構内交換機 | |
JP2004355041A (ja) | Dma転送中継装置,dma転送方法,及びdma転送システム | |
JP2004199402A (ja) | Usbデバイスコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060317 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060320 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090324 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090513 |
|
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: 20090901 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090901 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120911 Year of fee payment: 3 |
|
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: 20130911 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |