JP2003242103A - シリアルバス通信システムおよびシリアルバス通信方法 - Google Patents

シリアルバス通信システムおよびシリアルバス通信方法

Info

Publication number
JP2003242103A
JP2003242103A JP2002041363A JP2002041363A JP2003242103A JP 2003242103 A JP2003242103 A JP 2003242103A JP 2002041363 A JP2002041363 A JP 2002041363A JP 2002041363 A JP2002041363 A JP 2002041363A JP 2003242103 A JP2003242103 A JP 2003242103A
Authority
JP
Japan
Prior art keywords
data
serial bus
host
communication system
bus communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002041363A
Other languages
English (en)
Inventor
Hiroyuki Abe
宏幸 阿部
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002041363A priority Critical patent/JP2003242103A/ja
Publication of JP2003242103A publication Critical patent/JP2003242103A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 USB規格に合致または準拠したシリアルバ
ス通信を行ったとき、データ転送中にケーブルが引き抜
かれた場合、或いはバスリセット信号が発生した場合
に、転送済みデータファイルが無駄に破棄されてしまう
ことを防止するシリアルバス通信システムを提供する。 【解決手段】 シリアルバスケーブル3を介してホスト
PC2とPC周辺機器1とを接続し、シリアルバスによ
って双方向にデータ通信するシリアルバス通信システム
であって、前記ホストPC2から送られたデータを一時
的に格納する1つ以上の受信バッファを備え、前記シリ
アルバスケーブル3が非接続となった場合に、前記ホス
トPCから送られた前記受信バッファ中のデータがファ
イルの区切りであると認識したとき、そのデータを有効
なデータとして読み出すようにした。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、シリアルバス通信
システムおよびシリアルバス通信方法に関し、具体的に
は、USB規格に合致または準拠したシリアルバス通信
に関する。
【0002】
【従来の技術】USB(Universal Seri
al Bus)規格は、パーソナルコンピュータ(P
C)と複数のPC周辺機器を接続しデータ通信を行うた
めに策定されたシリアルバスインターフェース規格であ
る。従来のインターフェース規格にはない簡便な接続性
や拡張性を特徴としており、近年ではPC周辺機器(マ
ウスやキーボード、プリンタ、スキャナ、モデム等)の
多くがUSB規格に対応するようになってきている。
【0003】一方、IEEE1394規格もPC周辺機
器をPCへ接続する用途を目的とした新規インターフェ
ース規格であり、USB規格と同様な特徴を備えてい
る。
【0004】USB規格およびIEEE1394規格に
共通した接続性の特徴の一つに、電源を投入したままケ
ーブルの抜き差しが可能なホットプラグ機構がある。但
し、バス上でデータ転送が行われている最中にケーブル
が抜かれた場合は、転送済みデータファイルの一部或い
は全部を破棄する処理が必要となる。特開平11−19
6099号公報の「データ通信方法及び装置」では、I
EEE1394インターフェースを使用した機器におい
て、データ転送中にケーブル接続が断たれた場合に、ケ
ーブル再接続後に継続したデータ転送ができるようにし
ている。
【0005】また、USB規格およびIEEE1394
規格においては、バスリセットという接続デバイスの再
認識(アドレス割り付け等)を実行させるための初期化
コマンドが定められている。データファイル転送完了前
にバスリセットが発生した場合にも転送済みデータファ
イルの一部或いは全部を破棄する処理が必要となる。し
かし、バスリセットの機構に関してはUSB規格とIE
EE1394規格では以下に述べるような違いがある。
【0006】USB規格のバスリセットは、複数接続さ
れた周辺機器ごとに個別に発行される。また、USB規
格のバスリセットは、ホストPCが対象周辺機器へのデ
ータ転送が完了したことを確認した上で発行されるた
め、データ転送完了前にバスリセットが発行されること
は原則として無いことになる。
【0007】一方、IEEE1394規格のバスリセッ
トは、バストポロジ内に新規に周辺機器が接続された場
合と接続された周辺機器がバスから外された場合に、接
続したすべての周辺機器に対して発行される。このた
め、接続された周辺機器がデータ転送中か否かにかかわ
らず周辺機器の接続或いは切断が行われた場合には、無
条件ですべての周辺機器に対してバスリセット信号が発
行されることになる。このため、データの連続性を保証
する目的で、様々な中断データ処理の方法が考案されて
いる。例えば、特開2000−79746号公報の「画
像形成装置及び画像形成方法、記録媒体」では、IEE
E1394規格のインターフェースを使用した画像形成
装置において、データ転送中にバスリセット信号が発生
した場合にプリントデータの1ページ分が転送されてい
る場合には1ページ分の印刷を実施し、バスリセット信
号を発生したことによってエラーが発生した場合には印
刷が中断されたことをユーザに知らせている。
【0008】
【発明が解決しようとする課題】しかしながら、上述し
たデータ転送中にケーブル接続が断たれた場合やデータ
ファイル転送完了前にバスリセット信号が発生した場合
の従来技術(特開平11−196099号公報、特開2
000−79746号公報)は、IEEE1394規格
に関するものであり方式の異なるUSB規格に対してそ
のまま適用できるものではない。
【0009】例えば、周辺機器の状態によっては、デー
タ転送中でない場合であってもバスリセット発生により
問題が発生する場合がある。以下、プリンタ装置を例に
してこの問題を説明する。ホストPCからプリンタ装置
に転送される印刷データは、プリンタ記述言語と呼ばれ
るデータに変換され、プリンタ装置内のUSBデバイス
コントローラ内部に設けられたFIFOメモリ(受信バ
ッファ)に一旦格納され、その受信バッファからプリン
タ装置の内部メモリのデータ受信領域に格納される。さ
らに、データ受信領域に格納された印刷データは、プリ
ンタ記述言語からビットマップ印刷データへ変換され、
プリンタ装置の内部メモリの別領域に移動される。この
変換に要する時間は印刷データの種類や大きさ或いはプ
リンタの状態で変化する。
【0010】ここで、ホストPCからFIFOメモリ
(受信バッファ)へのデータ転送時間に対して、印刷デ
ータへの変換時間が早ければデータ受信領域には常にF
IFOメモリ(受信バッファ)からのデータを受け入れ
る領域が確保されるため問題は発生しない。しかし、ホ
ストPCからFIFOメモリ(受信バッファ)へのデー
タ転送時間に対して、印刷データへの変換時間の方がか
かる場合には、FIFOメモリ(受信バッファ)へのデ
ータ転送ができない状態になる。
【0011】シリアルバス上で転送すべきすべてのデー
タの転送が完了し、最終データがFIFOメモリに格納
された時点で上記のような状態になった場合、ホストP
Cの方ではFIFOメモリにデータが格納されているか
どうかを知ることができない。このため、少なくともシ
リアルバス上のデータ転送を完了しているのであるか
ら、バスリセットを要求してくる可能性がある。
【0012】プリンタ装置は、このバスリセット要求を
認識し、USBデバイスコントローラ内部の状態を初期
化する必要がある。この初期化は通常ハードウェアが実
行することになるため、FIFOメモリ内に残されたデ
ータは、この初期化により失われてしまい、シリアルバ
ス上のデータファイル転送は完了しているにもかかわら
ず転送されたデータの一部が失われてしまうことにな
る。また、FIFOメモリ内に最終データが格納された
状態でケーブルが引き抜かれた場合にも同様の問題が発
生することになる。
【0013】本発明は、上述した実情を考慮してなされ
たものであって、USB規格に合致または準拠したシリ
アルバス通信を行ったとき、データ転送中にケーブルが
引き抜かれた場合、或いはバスリセット信号が発生した
場合に、転送済みデータファイルが無駄に破棄されてし
まうことを防止するシリアルバス通信システムおよびシ
リアルバス通信方法を提供することを目的とする。
【0014】
【課題を解決するための手段】上記の課題を解決するた
めに、本発明の請求項1のシリアルバス通信システム
は、シリアルバスケーブルを介してホストPCとPC周
辺機器とを接続し、シリアルバスによって双方向にデー
タ通信するシリアルバス通信システムにおいて、前記P
C周辺機器は、前記ホストPCから送られたデータを一
時的に格納する1つ以上の受信バッファと、前記シリア
ルバスケーブルの接続および非接続を検出する接続状態
検出手段と、前記シリアルバスケーブルが非接続となっ
た場合に前記受信バッファ内のデータがファイルの区切
りであると認識したとき、そのデータを有効なデータと
して読み出す受信バッファ読み出し手段とを備えたこと
を特徴とする。
【0015】また、本発明の請求項2のシリアルバス通
信システムは、シリアルバスケーブルを介してホストP
CとPC周辺機器とを接続し、シリアルバスによって双
方向にデータ通信するシリアルバス通信システムにおい
て、前記PC周辺機器は、前記ホストPCから送られた
データを一時的に格納する1つ以上の受信バッファと、
前記ホストPCからのバスリセット信号を検出するバス
リセット検出手段と、前記バスリセット信号を検出した
場合に前記受信バッファ内のデータがファイルの区切り
であると認識したとき、そのデータを有効なデータとし
て読み出す受信バッファ読み出し手段とを備えたことを
特徴とする。
【0016】また、本発明の請求項3は、請求項2に記
載のシリアルバス通信システムにおいて、前記バスリセ
ット信号を検出した場合、必要に応じて前記受信バッフ
ァから読み出してから回路の初期化を行う回路初期化手
段を備えたことを特徴とする。また、本発明の請求項4
は、請求項1、2または3に記載のシリアルバス通信シ
ステムにおいて、前記シリアルバスは、USB規格に合
致または準拠するものであることを特徴とする。また、
本発明の請求項5は、請求項4に記載のシリアルバス通
信システムにおいて、前記受信バッファは、USB規格
のバルクアウト転送用エンドポイントであることを特徴
とする。また、本発明の請求項6は、請求項1または2
に記載のシリアルバス通信システムにおいて、前記PC
周辺機器は、プリンタ装置であることを特徴とする。
【0017】また、本発明の請求項7のシリアルバス通
信方法は、シリアルバスケーブルを介してホストPCと
PC周辺機器とを接続し、シリアルバスによって双方向
にデータ通信するシリアルバス通信方法において、前記
シリアルバスケーブルの非接続が検出された場合、前記
ホストPCから送られたデータがファイルの区切りであ
ると認識したとき、そのデータを有効なデータとして前
記PC周辺機器で読み出すようにしたことを特徴とす
る。
【0018】また、本発明の請求項8のシリアルバス通
信方法は、シリアルバスケーブルを介してホストPCと
PC周辺機器とを接続し、シリアルバスによって双方向
にデータ通信するシリアルバス通信方法において、前記
ホストPCから送られたバスリセット信号が検出された
場合、前記ホストPCから送られたデータがファイルの
区切りであると認識したとき、そのデータを有効なデー
タとして前記PC周辺機器で読み出してから回路の初期
化を行うようにしたことを特徴とする。
【0019】したがって、USBケーブルによってホス
トPCとPC周辺機器を接続してデータ転送する場合、
ファイルデータ転送中にUSBケーブルが引き抜かれて
も、USBデバイスコントローラ内部の受信バッファの
データ中にファイル区切りがあるか否かを認識し、その
ファイル区切りがあれば受信バッファ内に残っているデ
ータを取得して、正常なプリント画像を得ることができ
る。
【0020】また、ファイルデータ転送中にバスリセッ
ト要求があったとき、USBデバイスコントローラ内部
の受信バッファのデータ中にファイル区切りがあるか否
かを認識し、そのファイル区切りがあれば受信バッファ
内に残っているデータを取得してから、バスリセット要
求に対応した回路初期化を実行することによって正常な
プリント画像を得ることができる。
【0021】
【発明の実施の形態】USB規格ではコントロール転
送、インタラプト転送、バルク転送、アイソクロナス転
送という4種類の転送モードがサポートされている。U
SB規格にはアプリケーションごとにデバイスクラス仕
様が決められており、プリンタ装置の場合はプリンタク
ラス仕様に従った構成が推奨されている。プリンタクラ
ス仕様の双方向構成として、ホストPCからプリンタ装
置へのプリントデータ転送には、バルクアウト転送モー
ドを使用し、プリンタ装置からホストPCへのプリンタ
ステータスデータ転送には、バルクイン転送モードを使
用することが推奨されている。
【0022】USB規格のバルク転送を使用して転送さ
れるページデータファイルは、USB2.0仕様では5
12バイト単位のパケットに分割されて転送され、51
2バイト未満のデータパケット送受信によりファイルの
区切りと認識される(図3参照)。例えば、データが5
12バイトの整数倍である場合には、ゼロレングスパケ
ット(データ長ゼロを持つパケット)の送受信がファイ
ルの区切りを示し、データが512バイトの整数倍でな
い場合には、ショートパケット(1バイト以上511バ
イト以下のデータ長を持つパケット)の送受信がファイ
ルの区切りを示すことになる。
【0023】プリンタ装置は、ゼロレングスパケット或
いはショートパケットを受信したときファイルの区切り
がきたことを認識し、プリント動作を実施する。したが
って、ファイルの区切りが認識できない状態でプリント
動作を行えば、不完全な画像が印刷されてしまうことに
なる。
【0024】しかし、データ転送中にケーブルが引き抜
かれた場合或いはバスリセット信号が発生した場合であ
っても、受信バッファ内にゼロレングスパケット或いは
ショートパケットが格納されていれば、シリアルバス上
ではデータ転送が完了していることになるので、この受
信バッファ内のデータを読み出して正常に印刷を完了で
きる。
【0025】以下、図面を参照して本発明の実施形態を
説明する。以下の説明では、PC周辺機器をプリンタ装
置とし、ホストPCとプリンタ装置間をUSB規格に対
応したシリアルバスで通信する場合を例に説明するが、
PC周辺機器としては、デジタル複写機、デジタル複合
機、ファクシミリ装置やデジタルカメラおよびデジタル
ビデオカメラ等の大容量のデータを送受信する機器であ
れば同様に適用できる。
【0026】図1は、本発明のシリアルバス通信システ
ムを構成するハードウェア構成図である。図1におい
て、シリアルバス通信システムは、プリンタ装置1とホ
ストPC2とをシリアルバスケーブル(以下、USBケ
ーブルと言う)3で接続している。さらに、プリンタ装
置1には、USB2.0仕様のデバイスコントローラ
(以下、USBデバイスコントローラと言う)11、プ
リント装置1を制御するプログラムを実行するCPU
(中央処理装置)12、プリンタ装置1を制御するプロ
グラムやデータを格納するROM13とホストPC2か
ら転送されたプリント用のデータを格納するプリンタメ
モリ14とが実装されている。
【0027】図2は、USBデバイスコントローラ11
の内部構成を示すブロック図である。このUSBデバイ
スコントローラ11は、USB信号を送受信するトラン
シーバ/レシーバであるPHY(PHYsical L
ayer interface)111、USBプロト
コル処理を行うSIE(Serial Interfa
ce Engine)112、64バイト2面からなる
FIFOメモリであるEPZ送受信FIFO(コントロ
ール転送用エンドポイント)113、512バイト2面
からなるFIFOメモリであるEPA受信FIFO(バ
ルクアウト転送用エンドポイント)114、512バイ
ト2面からなるFIFOメモリであるEPB送信FIF
O(バルクイン転送用エンドポイント)115、SIE
112や各FIFO(113、114、115)等の状
態・制御のための内部レジスタ群116および内部レジ
スタ群116の読み書き、転送データの読み書きを行う
インターフェースブロック117とを備えている。
【0028】EPZ送受信FIFO113は、コントロ
ール転送のデータ転送方向が、プリンタ装置1からホス
トPC2の方向へのインとホストPC2からプリンタ装
置1の方向へのアウトの両方向に対応する必要があるた
め、イン/アウトそれぞれ64バイトのFIFOメモリ
を備えている。
【0029】また、バルクアウト転送(ホストPC2か
らプリンタ装置1の方向へのデータ転送)の場合は、大
容量のプリントデータを転送する必要があるため、パフ
ォーマンス向上の目的でアウト方向のFIFOメモリを
2面(或いは3面以上)設ける場合が多い。
【0030】<実施形態1>図4は、本発明のシリアル
バス通信システムにおいて、シリアルケーブルが引き抜
かれた場合の処理手順を示すフローチャートである。シ
リアルバスを介してPC2からプリンタ装置1へプリン
トデータが送信されているときに、USBケーブル3が
引き抜かれたことを検出する(ステップS1、S2)。
これは、USBケーブル3が引き抜かれたことを接続状
態検出手段(SIE112に含まれる)が検出し、US
Bデバイスコントローラ11からプリンタ装置1のCP
U12に対して割り込みを発生させる。この割り込みの
要因は、ROM13に格納された制御プログラムが内部
レジスタ群116を読み込むことにより判断する。
【0031】割り込みを検出したとき、有効データがあ
るかどうかを調べる(ステップS3)。ここで有効デー
タとは、USB規格で定められたCRCエラー検出処理
が完了し、プリンタ装置1側からデータを読み出せる状
態であることを示している。有効データがあるかどうか
は、EPA受信FIFO114内の有効データ数を記録
する内部レジスタ群116中のレジスタを参照すること
によって調べる。
【0032】有効なデータがあった場合(ステップS3
のYes)、EPA受信FIFO114の有効データ数
を読み出す(ステップS5)。この有効データ数がバル
ク転送最大パケット長(512バイト)であるかを調べ
(ステップS6)、有効データ数がバルク転送最大パケ
ット長のときは、このデータをプリンタメモリ14へ転
送する(ステップS7)。データ転送が完了すると読み
出し可能なEPA受信FIFO114の切り換え(1面
から2面へ、または2面から1面へ)を行い(ステップ
S8)、切り換えた受信バッファに有効なデータがある
かどうかを調べるためにステップS3へ戻る。切り換え
ると、内部レジスタ群116の有効データ数を保持する
レジスタからバルク転送最大パケット長のデータ数が差
し引かれる。
【0033】ステップS3で有効なデータが存在しない
とき(ステップS3のNo)、即ち、EPA受信FIF
O114内にショートパケット或いはゼロレングスパケ
ットが存在しないと判断し、EPA受信FIFO114
内のデータと今までにプリンタメモリ14へ転送済みと
なっているデータを破棄して、処理を終了する(ステッ
プS4)。この場合、EPA受信FIFO114に残っ
ているデータは、転送途中のデータであるため有効なデ
ータではないので、そのデータがショートパケットと認
識されることはあり得ない。
【0034】ステップS6で有効なデータ数がバルク転
送最大パケット長(512バイト)以下のとき(ステッ
プS6のNo)、有効なデータがゼロレングスパケット
であるかどうかを調べる(ステップS9)。ゼロレング
スパケットであれば(ステップS9のYes)、ファイ
ルの区切りが認識できるので、既にプリンタメモリ14
へ転送済みのプリントデータを使用してプリント動作を
行うことにより正常なプリント画像が得られる(ステッ
プS10)。ショートパケット(1〜511バイト)で
あれば(ステップS9のNo)、ファイルの区切りが認
識できるので、そのショートパケット分のデータをEP
A受信FIFO114内の受信バッファからプリンタメ
モリ14へ転送し(ステップS11)、既にプリンタメ
モリ14へ転送済みのプリントデータと併せてプリント
動作を行うことにより正常なプリント画像が得られる
(ステップS10)。
【0035】一般的に、バルク転送をサポートするUS
Bデバイスコントローラは、FIFOメモリとプリンタ
メモリ間のデータ転送をCPUの介在なしに行うDMA
転送ができる構成になっており、通常のプリントデータ
の転送はDMA転送が使われる。しかし、USBケーブ
ル3が抜かれた後のEPA受信FIFO114とプリン
タメモリ14間のデータ転送は、CPU12を介在した
PIO転送を使用する方が簡単な回路構成となる。
【0036】<実施形態2>本実施形態2では、プリン
タ装置1における印刷データの変換処理速度が、USB
シリアルバスを介してホストPC2から転送するデータ
転送速度に追いつかず、プリントデータファイルの最終
データ(ショートパケット或いはゼロレングスパケッ
ト)がEPA受信FIFO114に残った状態でホスト
PC2がバスリセット要求を発行する場合を考える。
【0037】一般的なUSBデバイスコントローラは、
バスリセット要求を検出すると、内部レジスタ群を除く
すべての回路の初期化がハード的に実行されるのでEP
A受信FIFO内のデータはすべて失われてしまうこと
になる。本実施形態2では、バスリセット要求が起こっ
たときに、ハードによる回路初期化の前に、EPA受信
FIFO114内のデータをプリンタメモリ14へ転送
してプリント動作を行うようにした。また、内部レジス
タ群116内のレジスタに初期化開始ビットを設定し、
バスリセット要求が検出され、このビットが1のとき、
内部レジスタ群116を除くすべてのバッファの初期化
を開始するような構成とする(この初期化するハードを
回路初期化手段という)。また、この回路初期化手段が
実行されると開始ビットはゼロに設定される。
【0038】図5は、本発明のシリアルバス通信システ
ムにおいて、ホストPCからバスリセット要求がおこっ
た場合の処理手順を示すフローチャートである。シリア
ルバスを介してPC2からプリンタ装置1へプリントデ
ータが送信された、バスリセット要求の割込みを検出す
る(ステップS21、S22)。バスリセット要求がお
こったことをバスリセット検出手段が検出し(バスリセ
ット要求は、USBデバイスコントローラ11内のSI
E112により検出される)、USBデバイスコントロ
ーラ11からプリンタ装置1のCPU12に対して割り
込みが発生し、ROM13に格納された制御プログラム
が内部レジスタ群116内の初期化開始ビットをゼロに
設定する。
【0039】割り込みを検出したとき、有効データがあ
るかどうかを調べる(ステップS23)。ここで有効デ
ータとは、USB規格で定められたCRCエラー検出処
理が完了し、プリンタ装置1側からデータを読み出せる
状態であることを示している。有効データがあるかどう
かは、EPA受信FIFO114内の有効データ数を記
録する内部レジスタ群116中のレジスタを参照するこ
とによって調べる。
【0040】有効なデータがあった場合(ステップS2
3のYes)、EPA受信FIFO114の有効データ
数を読み出す(ステップS26)。この有効データ数が
バルク転送最大パケット長(512バイト)であるかを
調べ(ステップS27)、有効データ数がバルク転送最
大パケット長のときは、このデータをプリンタメモリ1
4へ転送する(ステップS28)。データ転送が完了す
ると読み出し可能なEPA受信FIFO114の切り換
え(1面から2面へ、または2面から1面へ)を行い
(ステップS29)、切り換えた受信バッファに有効な
データがあるかどうかを調べるためにステップS23へ
戻る。切り換えると、内部レジスタ群116の有効デー
タ数を保持するレジスタからバルク転送最大パケット長
のデータ数が差し引かれる。
【0041】ステップS23で有効なデータが存在しな
いとき(ステップS23のNo)、即ち、EPA受信F
IFO114内にショートパケット或いはゼロレングス
パケットが存在しないと判断し、EPA受信FIFO1
14内のデータと今までにプリンタメモリ14へ転送済
みとなっているデータを破棄して(ステップS24)、
内部レジスタ群116の初期化開始ビットに1を書き込
むことにより、バスリセット要求に対応した回路の初期
化が実行される(ステップS25)。この場合、EPA
受信FIFO114に残っているデータは、転送途中の
データであるため有効なデータではないので、そのデー
タがショートパケットと認識されることはあり得ない。
【0042】ステップS27で有効なデータ数がバルク
転送最大パケット長(512バイト)以下のとき(ステ
ップS27のNo)、有効なデータがゼロレングスパケ
ットであるかどうかを調べる(ステップS30)。ゼロ
レングスパケットであれば(ステップS30のYe
s)、内部レジスタ群116の初期化開始ビットに1を
書き込むことにより、バスリセット要求に対応した回路
の初期化が実行され(ステップS33)、また、ファイ
ルの区切りが認識できるので、既にプリンタメモリ14
へ転送済みのプリントデータを使用してプリント動作を
行うことにより正常なプリント画像が得られる(ステッ
プS31)。ショートパケット(1〜511バイト)で
あれば(ステップS30のNo)、ファイルの区切りが
認識できるので、そのショートパケット分のデータをE
PA受信FIFO114内の受信バッファからプリンタ
メモリ14へ転送し(ステップS32)、内部レジスタ
群116の初期化開始ビットに1を書き込むことによ
り、バスリセット要求に対応した回路の初期化が実行さ
れ(ステップS33)、また、既にプリンタメモリ14
へ転送済みのプリントデータと併せてプリント動作を行
うことにより正常なプリント画像が得られる(ステップ
S31)。
【0043】
【発明の効果】以上説明したように本発明によれば、U
SBケーブルによってホストPCとPC周辺機器を接続
してデータ転送する場合、ファイルデータ転送中にUS
Bケーブルが引き抜かれても、USBデバイスコントロ
ーラ内部の受信バッファのデータ中にファイル区切りが
あるか否かを認識し、そのファイル区切りがあれば受信
バッファ内に残っているデータを取得して、正常なプリ
ント画像を得ることができる。
【0044】また、ファイルデータ転送中にバスリセッ
ト要求があったとき、USBデバイスコントローラ内部
の受信バッファのデータ中にファイル区切りがあるか否
かを認識し、そのファイル区切りがあれば受信バッファ
内に残っているデータを取得してから、バスリセット要
求に対応した回路初期化を実行することによって正常な
プリント画像を得ることができる。
【図面の簡単な説明】
【図1】 本発明のシリアルバス通信システムを構成す
るハードウェア構成図である。
【図2】 USBデバイスコントローラの内部構成を示
すブロック図である。
【図3】 転送データの転送単位のパケットを説明する
ための図である。
【図4】 シリアルケーブルが引き抜かれた場合の処理
手順を示すフローチャートである。
【図5】 バスリセット信号が発生した場合の処理手順
を示すフローチャートである。
【符号の説明】
1…プリンタ装置、2…ホストPC、3…USBケーブ
ル、11…USBデバイスコントローラ、12…CP
U、13…ROM、14…プリンタメモリ、111…P
HY、112…SIE、113…EPZ送受信FIF
O、114…EPA送受信FIFO、115…EPB送
受信FIFO、116…内部レジスタ群、117…イン
ターフェースブロック。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 シリアルバスケーブルを介してホストP
    CとPC周辺機器とを接続し、シリアルバスによって双
    方向にデータ通信するシリアルバス通信システムにおい
    て、前記PC周辺機器は、前記ホストPCから送られた
    データを一時的に格納する1つ以上の受信バッファと、
    前記シリアルバスケーブルの接続および非接続を検出す
    る接続状態検出手段と、前記シリアルバスケーブルが非
    接続となった場合に前記受信バッファ内のデータがファ
    イルの区切りであると認識したとき、そのデータを有効
    なデータとして読み出す受信バッファ読み出し手段とを
    備えたことを特徴とするシリアルバス通信システム。
  2. 【請求項2】 シリアルバスケーブルを介してホストP
    CとPC周辺機器とを接続し、シリアルバスによって双
    方向にデータ通信するシリアルバス通信システムにおい
    て、前記PC周辺機器は、前記ホストPCから送られた
    データを一時的に格納する1つ以上の受信バッファと、
    前記ホストPCからのバスリセット信号を検出するバス
    リセット検出手段と、前記バスリセット信号を検出した
    場合に前記受信バッファ内のデータがファイルの区切り
    であると認識したとき、そのデータを有効なデータとし
    て読み出す受信バッファ読み出し手段とを備えたことを
    特徴とするシリアルバス通信システム。
  3. 【請求項3】 請求項2に記載のシリアルバス通信シス
    テムにおいて、前記バスリセット信号を検出した場合、
    必要に応じて前記受信バッファから読み出してから回路
    の初期化を行う回路初期化手段を備えたことを特徴とす
    るシリアルバス通信システム。
  4. 【請求項4】 請求項1、2または3に記載のシリアル
    バス通信システムにおいて、前記シリアルバスは、US
    B規格に合致または準拠するものであることを特徴とす
    るシリアルバス通信システム。
  5. 【請求項5】 請求項4に記載のシリアルバス通信シス
    テムにおいて、前記受信バッファは、USB規格のバル
    クアウト転送用エンドポイントであることを特徴とする
    シリアルバス通信システム。
  6. 【請求項6】 請求項1または2に記載のシリアルバス
    通信システムにおいて、前記PC周辺機器は、プリンタ
    装置であることを特徴とするシリアルバス通信システ
    ム。
  7. 【請求項7】 シリアルバスケーブルを介してホストP
    CとPC周辺機器とを接続し、シリアルバスによって双
    方向にデータ通信するシリアルバス通信方法において、
    前記シリアルバスケーブルの非接続が検出された場合、
    前記ホストPCから送られたデータがファイルの区切り
    であると認識したとき、そのデータを有効なデータとし
    て前記PC周辺機器で読み出すようにしたことを特徴と
    するシリアルバス通信方法。
  8. 【請求項8】 シリアルバスケーブルを介してホストP
    CとPC周辺機器とを接続し、シリアルバスによって双
    方向にデータ通信するシリアルバス通信方法において、
    前記ホストPCから送られたバスリセット信号が検出さ
    れた場合、前記ホストPCから送られたデータがファイ
    ルの区切りであると認識したとき、そのデータを有効な
    データとして前記PC周辺機器で読み出してから回路の
    初期化を行うようにしたことを特徴とするシリアルバス
    通信方法。
JP2002041363A 2002-02-19 2002-02-19 シリアルバス通信システムおよびシリアルバス通信方法 Pending JP2003242103A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002041363A JP2003242103A (ja) 2002-02-19 2002-02-19 シリアルバス通信システムおよびシリアルバス通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002041363A JP2003242103A (ja) 2002-02-19 2002-02-19 シリアルバス通信システムおよびシリアルバス通信方法

Publications (1)

Publication Number Publication Date
JP2003242103A true JP2003242103A (ja) 2003-08-29

Family

ID=27781805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002041363A Pending JP2003242103A (ja) 2002-02-19 2002-02-19 シリアルバス通信システムおよびシリアルバス通信方法

Country Status (1)

Country Link
JP (1) JP2003242103A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270639A (ja) * 2005-03-24 2006-10-05 Brother Ind Ltd パケット通信システム及びパケット通信装置
JP2007052715A (ja) * 2005-08-19 2007-03-01 Ricoh Co Ltd データ転送装置及び画像形成装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270639A (ja) * 2005-03-24 2006-10-05 Brother Ind Ltd パケット通信システム及びパケット通信装置
US7773603B2 (en) 2005-03-24 2010-08-10 Brother Kogyo Kabushiki Kaisha Packet communication system and packet communication apparatus
JP2007052715A (ja) * 2005-08-19 2007-03-01 Ricoh Co Ltd データ転送装置及び画像形成装置

Similar Documents

Publication Publication Date Title
US6425019B1 (en) Data communication on a serial bus using an initial protocol which being executed in a transaction layer
US7050184B1 (en) Data transfer apparatus and method, and data transfer system and medium
US7200685B2 (en) Communication apparatus for communicating data between separate toplogies, and related method, storage medium, and program
US7430660B2 (en) Data transmission apparatus, system and method, and image processing apparatus
US20050052678A1 (en) Digital copying machine and a digital copying machine system
US6603737B1 (en) Data transmission apparatus, system and method, and image processing apparatus
JP4377603B2 (ja) バス通信システムおよびその通信制御方法
EP1033657B1 (en) Packet communication apparatus provided with manager means for managing packet labels
US6904022B2 (en) Data transfer control device, information storage medium and electronic equipment
US20060020729A1 (en) Information processing apparatus and method that utilizes stored information about a mountable device
JP2003242103A (ja) シリアルバス通信システムおよびシリアルバス通信方法
EP1351459B1 (en) Data transfer control device and electronic equipment
CN100484056C (zh) 数据传输控制装置和电子设备
JP3970728B2 (ja) データ通信装置
JP2000115211A (ja) ネットワ―ク周辺装置の作動可能状態回復方法
JP3606145B2 (ja) データ転送制御装置及び電子機器
JP3624767B2 (ja) データ転送制御装置、情報記憶媒体及び電子機器
JPH11145995A (ja) バスのデータ伝送方式
JP3846089B2 (ja) インターフェース装置、その制御方法および情報記録媒体
JP3598924B2 (ja) データ転送制御装置、情報記憶媒体及び電子機器
JP3598922B2 (ja) データ転送制御装置、情報記憶媒体及び電子機器
JP3754930B2 (ja) プリンタ及びプリンタシステム
JP2012061639A (ja) 画像形成装置および印刷制御方法
JP2004015181A (ja) プロトコル変換モジュール及びデータ転送方法
KR100294671B1 (ko) 시리얼버스 매니지먼트장치 및 방법