JPH11188952A - 印刷方法及びシステム - Google Patents

印刷方法及びシステム

Info

Publication number
JPH11188952A
JPH11188952A JP9366215A JP36621597A JPH11188952A JP H11188952 A JPH11188952 A JP H11188952A JP 9366215 A JP9366215 A JP 9366215A JP 36621597 A JP36621597 A JP 36621597A JP H11188952 A JPH11188952 A JP H11188952A
Authority
JP
Japan
Prior art keywords
data
node
printing
transfer
bus
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
JP9366215A
Other languages
English (en)
Inventor
Shigeru Ueda
茂 上田
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 JP9366215A priority Critical patent/JPH11188952A/ja
Publication of JPH11188952A publication Critical patent/JPH11188952A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 印刷に要する時間を大幅に短縮することがで
きる印刷方法及びシステムを提供する。 【解決手段】 パーソナルコンピュータ(PC)101
とプリンタ103とをIEEE1394I/F106を
介して接続した印刷システムにおいて、データをビット
イメージデータとそれ以外のデータとに分割し、ビット
イメージデータについては、IEEE1394I/Fの
同期転送モードで送るか、IEEE1394I/Fの非
同期転送モードで送るかを、所定の条件に基づいて決定
するように、パーソナルコンピュータ(PC)101に
より制御する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えば、IEEE
1394インターフェース等の所定のインターフェース
を通信手段として用いた印刷方法及びシステムに関す
る。
【0002】
【従来の技術】IEEE1394インターフェースに
は、同期通信モードと非同期通信モードとがあるが、同
期通信モードではデータ転送が確実に相手に送られるこ
とが保証されないので、通常のデータ転送は非同期通信
モードで行われる。
【0003】また、動画及び静止画等のデータが少々欠
落してもよいようなデータで且つ動画のように一定時間
内に送りたいデータは、同期通信モードを用いてデータ
転送が行われていた。
【0004】
【発明が解決しようとする課題】しかしながら、IEE
E1394インターフェースでは、基本的に同期通信モ
ードが優先されているので、同期通信を行いたいデバイ
スが多いと、非同期通信用のバスバンド幅が非常に狭く
なる。また、非同期通信用のバスバンド幅は、最大でも
全体の約1/2と制限されているため、どんなに非同期
通信モードを用いるデバイスが多く、また、同期通信モ
ードを用いるバスが少なくても、非同期通信モードだけ
では全体のバスバンドの約1/2しか利用できない。
【0005】これは、特にカラーレーザビームプリンタ
で、データを印刷する場合に、データの中にビットイメ
ージデータ等の大容量データが含まれている場合は、ホ
ストコンピュータ→プリンタ間のデータ転送時間が全体
の印刷時間の中で大きなネックとなってくる。
【0006】本発明は上述した従来の技術の有するこの
ような問題点に鑑みてなされたものであり、その目的と
するところは、印刷に要する時間を大幅に短縮すること
ができる印刷方法及びシステムを提供しようとするもの
である。
【0007】
【課題を解決するための手段】上記目的を達成するため
に請求項1記載の印刷方法は、データを所定のインター
フェースを通じて印刷装置に送り印刷する印刷方法にお
いて、前記データをビットイメージデータとそれ以外の
データとに分けるデータ分割ステップと、前記ビットイ
メージデータについては、前記所定のインターフェース
の同期転送モードを用いて送るか前記所定のインターフ
ェースの非同期転送モードを用いて送るかを所定の条件
に基づいて決定する転送モード決定ステップを有するこ
とを特徴とする。
【0008】また、上記目的を達成するために請求項2
記載の印刷方法は、請求項1記載の印刷方法において、
前記所定の条件とは、同期転送のリソースマネージャに
アクセスして獲得できたバスバンド幅が一定の値を上回
った場合であることを特徴とする。
【0009】また、上記目的を達成するために請求項3
記載の印刷方法は、請求項1記載の印刷方法において、
前記所定の条件とは、同期転送のリソースマネージャに
アクセスして獲得できたバスバンド幅が非同期転送モー
ドでデータ転送を行う場合の平均データ転送レートを上
回った場合であることを特徴とする。
【0010】また、上記目的を達成するために請求項4
記載の印刷方法は、請求項1記載の印刷方法において、
前記ビットイメージデータについては、前記所定のイン
ターフェースの同期転送モードを用いて送る場合は、前
記ビットイメージデータに付随する情報を前記所定のイ
ンターフェースの非同期転送モードを用いて送ることを
特徴とする。
【0011】また、上記目的を達成するために請求項5
記載の印刷方法は、請求項1または4記載の印刷方法に
おいて、前記所定のインターフェースは、IEEE13
94インターフェースであることを特徴とする。
【0012】また、上記目的を達成するために請求項6
記載の印刷方法は、請求項1記載の印刷方法において、
前記データは、文章データであることを特徴とする。
【0013】また、上記目的を達成するために請求項7
記載の印刷方法は、請求項1記載の印刷方法において、
前記印刷装置は、レーザービームプリンタであることを
特徴とする。
【0014】また、上記目的を達成するために請求項8
記載の印刷方法は、請求項1記載の印刷方法において、
前記印刷装置は、カラーレーザービームプリンタである
ことを特徴とする。
【0015】また、上記目的を達成するために請求項9
記載の印刷システムは、データを所定のインターフェー
スを通じて印刷装置に送り印刷する印刷システムにおい
て、前記データをビットイメージデータとそれ以外のデ
ータとに分けるデータ分割手段と、前記ビットイメージ
データについては前記所定のインターフェースの同期転
送モードを用いて送るか前記所定のインターフェースの
非同期転送モードを用いて送るかを所定の条件に基づい
て決定する転送モード決定手段とを有することを特徴と
する。
【0016】また、上記目的を達成するために請求項1
0記載の印刷システムは、請求項9記載の印刷システム
において、前記所定の条件とは、同期転送のリソースマ
ネージャにアクセスして獲得できたバスバンド幅が一定
の値を上回った場合であることを特徴とする。
【0017】また、上記目的を達成するために請求項1
1記載の印刷システムは、請求項9記載の印刷システム
において、前記所定の条件とは、同期転送のリソースマ
ネージャにアクセスして獲得できたバスバンド幅が非同
期転送モードでデータ転送を行う場合の平均データ転送
レートを上回った場合であることを特徴とする。
【0018】また、上記目的を達成するために請求項1
2記載の印刷システムは、請求項9記載の印刷システム
において、前記ビットイメージデータについては、前記
所定のインターフェースの同期転送モードを用いて送る
場合は、前記ビットイメージデータに付随する情報を前
記所定のインターフェースの非同期転送モードを用いて
送ることを特徴とする。
【0019】また、上記目的を達成するために請求項1
3記載の印刷システムは、請求項9または12記載の印
刷システムにおいて、前記所定のインターフェースは、
IEEE1394インターフェースであることを特徴と
する。
【0020】また、上記目的を達成するために請求項1
4記載の印刷システムは、請求項9記載の印刷システム
において、前記データは、文章データであることを特徴
とする。
【0021】また、上記目的を達成するために請求項1
5記載の印刷システムは、請求項9記載の印刷システム
において、前記印刷装置は、レーザービームプリンタで
あることを特徴とする。
【0022】更に、上記目的を達成するために請求項1
6記載の印刷システムは、請求項9記載の印刷システム
において、前記印刷装置は、カラーレーザービームプリ
ンタであることを特徴とする。
【0023】
【発明の実施の形態】以下、本発明の一実施の形態を図
面に基づき説明する。
【0024】図1は、本発明の一実施の形態に係る印刷
システムの構成を示すブロック図であり、同図におい
て、101はパーナルコンピュータ(PC)、102は
スキャナ、103はプリンタ(本実施の形態ではレーザ
ービームプリンタ)、104はデジタルカメラ、105
はハードディスクドライブ(HDD)である。これらの
各機器はIEEE1394シリアルバス106を介して
接続されている。
【0025】図2は、図1に示すプリンタ103の内部
構成を示すブロック図であり、同図において、201は
IEEE1394I/F(インターフェース)部で、2
本のIEEE1394シリアルバス106を有してお
り、その一方は図1に示すようにパーナルコンピュータ
101に、他方はデジタルカメラ104にそれぞれ接続
されている。202はRAM(ランダムアクセスメモ
リ)で、コードメモリ領域202a、ビットイメージメ
モリ領域202b及び文章情報メモリ領域202cを有
している。203はCPU(中央演算処理装置)で、プ
リンタ103全体の制御を司るものである。204はR
OM(リードオンリーメモリ)で、CPU203が実行
する制御プログラムを格納するものである。205は印
刷部I/F(インターフェース)部で、RAM202内
に展開されたビットイメージデータを後述する印刷部2
06から送られてくる水平及び垂直同期信号に同期して
読み出して印刷部206へ送る機能を有するものであ
る。206は印刷部で、印刷部I/F部205を通じて
送られてくるビデオ(VIDEO)データを入力し、印
刷用紙上に印刷するものである。207はシステムバス
(SYSTEM BUS)で、上述したプリンタ103
を構成する各機器を接続している。
【0026】図3は、図1に示すパーナルコンピュータ
101の内部構成を示すブロック図であり、同図におい
て、301はCRT(陰極線管)等の表示部で、各種の
情報を表示するものである。302はキーボード等の操
作部で、ユーザーが各種の情報を入力するものである。
303はハードディスクで、各種の情報を格納するもの
である。304はメモリで、各種の情報を格納するもの
である。305はCPU(中央演算処理装置)で、パー
ナルコンピュータ101全体の制御を司るものである。
306はIEEE1394I/F(インターフェース)
部で、2本のIEEE1394シリアルバス106を有
しており、その一方は図1に示すようにスキャナ102
に、他方はプリンタ103にそれぞれ接続されている。
307はシステムバス(SYSTEM BUS)で、上
述したパーナルコンピュータ101を構成する各機器を
接続している。
【0027】次に、上記構成になるパーナルコンピュー
タ101の動作について、図1〜図3と共に、図4及び
図5のフローチャートを用いて説明する。
【0028】パーナルコンピュータ101上では、ユー
ザーがアプリケーションプログラムを用いて、プリント
すべき文章データを作成し、操作部302から前記文章
データの印刷を指示すると、CPU305は図4及び図
5のフローチャートに沿って動作を行う。
【0029】まず、図4のステップS401でCPU3
05は、印刷する文章データがあるか否かを、文章デー
タがあるまで判別する。そして、印刷する文章データが
あるとステップS402でCPU305は、前記文章デ
ータを解析して、文章データにビットイメージデータが
含まれているか否かを判断する。そして、文章データに
ビットイメージデータが含まれている場合は、ステップ
S403でCPU305は、IEEE1394シリアル
バスのアイソクロナス(同期)リソースマネージャにア
クセスし、ビットイメージデータを送るために必要なバ
スバンド幅が取得できるか否かを問い合わせる。但し、
IEEE1394シリアルバスのアイソクロナス(同
期)チャネルはブロードキャスト方式で、受け手側のア
クノレッジによるデータ受信確認を行わないので、この
アイソクロナスチャネルを用いたデータ転送は、データ
容量が比較的大きく且つデータが欠落しても重大なエラ
ーになる可能性が殆ど無いビットイメージデータに限定
する。
【0030】次に、ステップS404でCPU305
は、過去にアシンクロナス(非同期)チャネルを用いて
データをプリンタ103等の周辺機器に送った際のデー
タ転送レートを計算、記憶しておき、その平均値と前記
アイソクロナスリソースマネージャから情報として与え
られる、取得できるバスバンド幅と比較して、所望のバ
スバンド幅が取得できたか否かを判断する。
【0031】例えば、IEEE1394シリアルバスの
アシンクロナスチャネルを用いてのパーソナルコンピュ
ータ101→プリンタ103の平均データ転送レートが
10Mbit/sであるとすると、前記アイソクロナス
リソースマネージャから確保できるバスバンド幅がそれ
以上であれば、アイソクロナスチャネルを用いてデータ
を送る意義があると考える(即ち、IEEE1394シ
リアルバスのアイソクロナスチャネルを用いてデータを
送った方が、IEEE1394シリアルバスのアシンク
ロナスチャネルを用いてデータを送るよりも速い)。
【0032】前記ステップS404において所望のバス
バンド幅が取得できた場合は、ステップS405でCP
U305は、プリンタ103にこれから文章データを送
ることを示す文章開始コマンド等を送る。前記アイソク
ロナスリソースマネージャから取得できるバスバンド幅
が、上記例のように過去にアシンクロナスチャネルを用
いてデータをプリンタ103等の周辺機器に送った際の
平均データ転送レートよりも速い場合は、ステップS4
06でCPU305は、文章データ内のビットイメージ
データをIEEE1394シリアルバスのアイソクロナ
スチャネルを用いて送り、それ以外のテキストデータや
ラインアートデータ等のいわゆるコードデータをIEE
E1394シリアルバスのアシンクロナスチャネルを用
いて送る。
【0033】図6に、文章データとして送られる文章の
一例を示す。図6において、601はテキストデータ、
602はビットイメージデータ、603はテキストデー
タ及びラインアートデータである。
【0034】前記ステップS406においては、ビット
イメージデータ602をIEEE1394シリアルバス
のアイソクロナスチャネルを用いて送り、それ以外のテ
キストデータ601やラインアートデータ603をIE
EE1394シリアルバスのアシンクロナスチャネルを
用いて送るものである。
【0035】図7に文章データに関する一連の情報の一
例を示す。図7(a)において、701はこれからコマ
ンドを送ることを示すヘッダ、702はこれから文章デ
ータを送ることを示す文章開始コマンド、703は文章
データをアイソクロナスチャネルとアシンクロナスチャ
ネルの両方を用いて送るか、アシンクロナスチャネルの
みを用いて送るかを示すデータであり、アイソクロナス
チャネルとアシンクロナスチャネルの両方を用いて送る
場合は”1”、アシンクロナスチャネルのみを用いて送
る場合は”0”となる。704は文章データにビットイ
メージデータが含まれる場合、そのビットイメージデー
タのセット数を示すデータ、705は各ビットイメージ
データセットを区別するための番号及び各ビットイメー
ジデータセットのXY座標を示すデータで、文章の上側
及び左側から羅列して記載される。706はコマンド終
了コードである。また、図7(b)において、707は
これからコマンドを送ることを示すヘッダ、708はJ
OB END(文章終了)コマンド、709はJOB
END(文章終了)コマンドである。
【0036】いうまでもないが、たとえ文章全体がビッ
トイメージデータだけで構成されていたとしても、その
ビットイメージデータの文章上のXY座標位置等の情報
を後述するようにアシンクロナスチャネルを用いて送る
ので、アイソクロナスチャネルだけを用いて文章データ
を送ることはない。
【0037】前記ステップS406においてビットイメ
ージデータをIEEE1394シリアルバスのアイソク
ロナスチャネルを用いて送るが、その際、パーナルコン
ピュータ101は、そのビットイメージデータのチェッ
クサムコードを最後に付加する。また、それ以外のテキ
ストデータ601やラインアートデータ603をIEE
E1394シリアルバスのアシンクロナスチャネルを用
いてプリンタ103に送るものである。
【0038】次に、ステップS407でCPU305
は、プリンタ103から受信エラーを入力したか否かを
判断する。そして、プリンタ103から受信エラーを入
力しない場合は、ステップS408でCPU305は、
プリンタ103へのデータ送信が完了したか否かを判断
する。そして、プリンタ103へのデータ送信が完了し
ない場合は、前記ステップS405へ戻り、また、プリ
ンタ103へのデータ送信が完了した場合は、ステップ
S409でCPU305は、JOB ENDコードを出
力した後、本処理動作を終了する。
【0039】一方、前記アイソクロナスリソースマネー
ジャから確保できるバスバンド幅が、上記の例のように
過去にアシンクロナスチャネルを用いてデータをプリン
タ103等の周辺機器に送った際の平均データ転送レー
トよりも遅い場合は、やはり文章データをIEEE13
94シリアルバスのアシンクロナスチャネルを用いて送
るものである。
【0040】前記ステップS402において文章データ
にビットイメージデータが含まれていない場合及び前記
ステップS404において所望のバスバンド幅が取得で
きない場合は、いずれもステップS410へ進んでCP
U305は、プリンタ103にこれから文章データを送
ることを示す文章開始マンド等を送る。次に、ステップ
S411でCPU305は、全ての文章データをIEE
E1394シリアルバスのアシンクロナス(非同期)チ
ャネルを用いてプリンタ103に送る。この場合の送る
データの手順については、例えば従来のIEEE139
4I/F等を用いて送る方法と基本的には同じで、即ち
パーナルコンピュータ101からプリンタ103に対し
てデータを送ると、プリンタ103からデータ受信確認
のステータスが返されてデータ転送が完了するという、
一般的なハンドシェーク方式であるので、ここでは説明
を省略する。
【0041】次に、ステップS412でCPU305
は、プリンタ103から受信エラーを入力したか否かを
判断する。そして、プリンタ103から受信エラーを入
力しない場合は、ステップS413でCPU305は、
プリンタ103へのデータ送信が完了したか否かを判断
する。そして、プリンタ103へのデータ送信が完了し
ない場合は、前記ステップS410へ戻り、また、プリ
ンタ103へのデータ送信が完了した場合は、前記ステ
ップS409でCPU305は、JOB ENDコード
を出力した後、本処理動作を終了する。
【0042】一方、前記ステップS407及びステップ
S412においてプリンタ103から受信エラーを入力
した場合は、いずれも図5のステップS414でCPU
305は、その入力した受信エラーがアイソクロナスデ
ータ受信エラーであるか否かを判断する。そして、入力
した受信エラーがアイソクロナスデータ受信エラーであ
る場合は、次のステップS415でCPU305は、図
9に示すアイソクロナスデータ再送コマンド906を送
った後、受信エラーを発生したアイソクロナスデータを
再送する。次に、ステップS416でCPU305は、
プリンタ103から受信エラーを入力したか否かを判断
する。そして、プリンタ103から受信エラーを入力し
ない場合は、ステップS417でCPU305は、プリ
ンタ103へのデータ送信が完了したか否かを判断す
る。そして、プリンタ103へのデータ送信が完了しな
い場合は、前記ステップS414へ戻り、また、プリン
タ103へのデータ送信が完了した場合は、前記ステッ
プS418でCPU305は、JOB ENDコードを
出力した後、本処理動作を終了する。
【0043】一方、前記ステップS414において入力
した受信エラーがアイソクロナスデータ受信エラーでな
い場合及び前記ステップS416においてプリンタ10
3から受信エラーを入力した場合は、いずれもステップ
S419でCPU305は、表示部301にエラーであ
る旨の情報を表示した後、前記ステップS418へ進ん
でJOB ENDコードを出力した後、本処理動作を終
了する。
【0044】次に、上記構成になるプリンタ103の動
作について、図1〜図3と共に、図図8のフローチャー
トを用いて説明する。
【0045】プリンタ103側では、まず、ステップS
801でCPU203は、パーナルコンピュータ101
からIEEE1394I/F部201を通じてデータが
入力したか否かを、データが入力するまで判断する。そ
して、データが入力した場合は、次のステップS802
でCPU203は、IEEE1394シリアルバスのア
イソクロナスチャネルからデータを入力したか否かを判
断する。IEEE1394シリアルバスのアシンクロナ
スチャネルを用いておられてくるデータにはコマンドが
含まれている可能性がある。文章データをパーナルコン
ピュータ101からプリンタ103に送る際に最初に送
られてくるのは、IEEE1394シリアルバスのアシ
ンクロナスチャネルを用いて送られてくる前記図7
(a)に示すような文章データに関する一連の情報であ
り、コマンドの部類に属する。
【0046】この文章データに関する一連の情報は、ス
テップS801からステップS802、ステップS80
3へと達し、更にステップS804へ行き、文章情報が
RAM202の文章情報メモリ領域202cにストアさ
れる。
【0047】次に、アイソクロナスチャネルからデータ
を入力した場合は、次のステップS803でCPU20
3は、ビットイメージデータが送られてきたことを示す
ので、RAM202の文章情報メモリ領域202cにス
トアされているビットイメージデータのXY座標情報に
基づいて(送られてきた順番に対応するビットイメージ
データのXY座標情報を読み出す)送られてきたデータ
のチェックサムを計算しながら、RAM202のビット
イメージメモリ領域202bの対応するアドレスの前記
ビットイメージデータをストアする。次にステップS8
04でCPU203は、アイソクロナスデータ入力が完
了したか否かを判断する。そして、アイソクロナスデー
タ入力が完了した場合は、次のステップS805でCP
U203は、ビットイメージデータの最後にはチェック
サム情報が付加されてくるので、そのチェクッサム情報
をチェックする。次のステップS806でCPU203
は、そのデータと前記計算したチェックサム値とを比較
する。比較の結果、一致すれば前記ステップS801へ
戻って次のデータの入力を行い、また、一致しなければ
ステップS807でCPU203は、アイソクロナスデ
ータ受信エラーをパーソナルコンピュータ101に返し
た後、前記ステップS801へ戻って次のデータの入力
を行う。
【0048】図9にアイソクロナスデータ受信エラーの
一例を示す。図9(a)において、901はプリンタ1
03からのステータスであることを示すヘッダ、902
はアイソクロナスデータ受信エラーを示すコード、90
3はアイソクロナスデータ受信エラーを発生したビット
イメージデータの番号、904はステータス終了コード
である。また、図9(b)において、905はプリンタ
103からのステータスであることを示すヘッダ、90
6はアイソクロナスデータ再送コマンド、907はアイ
ソクロナスデータを再送するビットイメージデータの番
号、908はステータス終了コードである。
【0049】図8に戻って、前記ステップS802にお
いてアイソクロナスチャネルからデータを入力しない場
合は、ステップS808でCPU203は、入力したデ
ータは文章データであるか否かを判断する。そして、入
力したデータは文章データである場合は、ステップS8
09でCPU203は、コードデータはRAM202の
コードメモリ領域202aに、ビットイメージデータは
ビットイメージメモリ領域202bにそれぞれストアし
た後、前記ステップS801へ戻る。
【0050】一方、前記ステップS808において入力
データが文章データでない場合は、ステップS810で
CPU203は、JOB ENDコマンド708を入力
したか否かを判断する。そして、JOB ENDコマン
ド708を入力した場合は、ステップS811でCPU
203は、RAM202のコードメモリ領域202aか
らコードデータを読み出して解析してビットイメージデ
ータに変換し、RAM202のビットイメージメモリ領
域202bにOR論理で書き込み展開する。例えば、文
字コードについては、ROM204にアクセスして対応
する文字フォント情報を読み出して、必要な大きさの文
字ビットイメージを得て書き込み、ラインアートについ
ても必要なラインをRAM202のビットイメージメモ
リ領域202bに書き込むものである。
【0051】全てのコードをビットイメージデータに変
換してRAM202のビットイメージメモリ領域202
bに書き込むと、次に、CPU203は印刷部206に
対して印刷開始コマンドを送って起動をかけ、また、R
AM202のビットイメージメモリ領域202bから順
番にビットイメージデータを読み出して印刷部I/F部
205に送る。印刷部I/F部205は、CPU203
から送られてくる水平、垂直同期信号に合わせてビット
イメージデータを印刷部206へ送り、この印刷部20
6で印刷した後、本処理動作を終了する。
【0052】また、前記ステップS810においてJO
B ENDコマンドでない場合は、ステップS812で
CPU203は、入力コマンドに応じた処理を行った
後、前記ステップS801へ戻る。
【0053】なお、上記実施の形態では、パーソナルコ
ンピュータ101がまずIEEE1394シリアルバス
のアイソクロナスリソースマネージャにアクセスし、獲
得したバスバンド幅が過去にアシンクロナスチャネルを
用いてデータをプリンタ103等の周辺機器に送った際
の平均データ転送レートよりも大きければ、ビットイメ
ージデータの転送にアイソクロナスチャネルを用いる場
合について説明したが、本発明はこれに限られるもので
はなく、別に大きくなくてもアイソクロナスチャネルと
してのバスバンドを獲得できれば、ビットイメージデー
タの転送にアイソクロナスチャネルを用いるようにして
もよい。
【0054】これは、IEEE1394シリアルバスに
おいては、アシンクロナスチャネルよりもアイソクロナ
スチャネルの方がバスの使用に優先権が与えられている
ので、基本的にアイソクロナスチャネルを用いた方が有
利であるからである。
【0055】次に、本実施の形態においてプリンタ装置
100と外部機器との間を接続するデジタルI/F(イ
ンターフェース)として、IEEE1394シリアルバ
スを用いているため、このIEEE1394シリアルバ
スについて説明する。
【0056】民生用デジタルVTR(Video Ta
pe Recorder :ビデオテープレコーダ)や
DVD(Digital Video Disk :デ
ジタルビデオディスク)プレーヤ等の登場に伴って、ビ
デオデータやオーディオデータ等のリアルタイムで且つ
高情報量のデータ転送のサポートが必要になってくる。
このようなビデオデータやオーディオデータをリアルタ
イムで転送し、パソコン(パーナルコンピュータ)に取
り込んだり、またはその他のデジタル機器に転送を行う
には、必要な転送機能を備えた高速データ転送可能なイ
ンターフェースが必要になってくるものであり、そうい
った観点から開発されたインターフェースがIEEE1
394-1995シリアルバス(High Perfo
rmance Serial Bus:ハイパフォーマ
ンスシリアルバス:以下、単に1394シリアルバスと
記述する)である。
【0057】図10は、1394シリアルバスを用いて
構成されるネットワーク・システムのの構成を示すブロ
ック図である。このシステムは、機器(デジタル機器)
A、B、C、D、E、F、G、Hを備えており、機器A
−B間、機器A−C間、機器B−D間、機器D−E間、
機器C−F間、機器C−G間及び機器C−H間をそれぞ
れ1394シリアルバスのツイスト・ペア・ケーブル1
001で接続されている。これらの機器A〜Hは、例え
ばパソコン、デジタルVTR、DVDプレーヤ、デジタ
ルカメラ、ハードディスク、モニター、チューナー等で
ある。
【0058】各機器間の接続方式は、ディジーチェーン
方式とノード分岐方式とを混在可能としたものであり、
自由度の高い接続が可能である。
【0059】また、各機器A〜Hは各自固有のID(識
別子)を有し、それぞれが認識し合うことによって13
94シリアルバスで接続された範囲において、1つのネ
ットワークを構成している。各機器間をそれぞれ1本の
1394シリアルバスケーブルで順次接続するだけで、
それぞれの機器が中継の役割を行い、全体として1つの
ネットワークを構成するものである。また、1394シ
リアルバスの特徴でもあるPlug&Play機能でケ
ーブルを機器に接続した時点で自動で機器の認識や接続
状況等を認識する機能を有している。
【0060】また、図10に示したようなシステムにお
いて、ネットワークからある機器が削除されたり、また
は新たに追加されたとき等、自動的にバスリセットを行
い、それまでのネットワーク構成をリセットしてから、
新たなネットワークの再構築を行う。この機能によっ
て、その時々のネットワークの構成を常時設定、認識す
ることができる。
【0061】また、データ転送速度は、100/200
/400Mpbsを備えており、上位のデータ転送速度
を持つ機器が下位のデータ転送速度をサポートし、互換
をとるようになっている。
【0062】データ転送モードとしては、コントロール
信号等の非同期データ(Asynchronousデー
タ:以下、Asyncデータと記述する)を転送するA
synchronous転送モードとリアルタイムなビ
デオデータやオーディオデータ等の同期データ(Iso
chronousデータ:以下、Isoデータと記述す
る)を転送するIsochronous転送モードとが
ある。このAsyncデータとIsoデータは、各サイ
クル(通常1サイクル125μs)の中において、サイ
クル開始を示すサイクル・スタート・パケット(CS
P)を転送した後、Isoデータの転送をAsyncデ
ータより優先しつつ、サイクル内で混在して転送され
る。
【0063】図11に1394シリアルバスの構成要素
を示す。
【0064】1394シリアルバスは、全体としてレイ
ヤ(階層)構造で構成されている。図11において、1
101は1394コネクタ・ポートで、これに1394
シリアルバスのケーブル1102(図1においては10
6、図10においては1001)が接続される。139
4シリアルバスのケーブルとコネクタとが接続される。
1394コネクタ・ポート1101の上には、ハードウ
ェア(hardware)部としてフィジカル・レイヤ
1103とリンク・レイヤ1104を位置づけしてい
る。このハードウェア部は実質的なインターフェースチ
ップの部分であり、そのうちフィジカル・レイヤ110
3は符号化やネタ関連の制御等を行い、リンク・レイヤ
1104はパケット転送やサイクルタイムの制御等を行
う。
【0065】ファームウェア(firmware)部の
トランザクション・レイヤ1105は、転送(トランザ
クション)すべきデータの管理を行い、Read、Wr
ite、Lockの命令を出す。また、ファームウェア
(firmware)部のシリアルバス・マネージメン
ト・レイヤ1106は、接続されている各機器の接続状
況やIDの管理を行い、ネットワークの構成を管理する
部分である。
【0066】このハードウェア部とファームウェア部ま
でが実質上の1394シリアルバスの構成である。
【0067】また、ソフトウェア部のアプリケーション
・レイヤ1107は、使用するソフトによって異なり、
インターフェース上にどの様にデータを載せるかを規定
する部分であり、プリンタやAVCプロトコル等が規定
されている。
【0068】以上が1394シリアルバスの構成であ
る。
【0069】図12は、1394シリアルバスにおける
アドレスマップを示す図である。
【0070】1394シリアルバスに接続された各機器
(ノード)には、必ず各ノード固有の64ビットアドレ
スを持たせておく。そして、このアドレスをROM(リ
ードオンリーメモリ)に格納しておくことで、自分や相
手のノードアドレスを常時認識でき、相手を指定した通
信も行える。
【0071】1394シリアルバスのアドレッシング
は、IEEE1212規格に準じた方式であり、アドレ
ス設定は図12において、最初の10bitがバスの番
号指定用に、次の6bitがノードID番号の指定用に
使用される。残りの8itが機器に与えられたアドレス
幅になり、それぞれ固有のアドレス空間として使用でき
る。最後の28bitは固有データの領域として、各機
器の識別や使用条件の指定の情報等を格納する。
【0072】以上が1394シリアルバスの技術の概要
である。
【0073】次に、1394シリアルバスの特徴といえ
る技術の部分を、より詳細に説明する。
【0074】まず、1394シリアルバス・ケーブルの
電気的仕様について説明する。
【0075】図13は、1394シリアルバス・ケーブ
ルの断面図である。同図において、1301は1394
シリアルバス・ケーブルで、その内部には6ピン、即ち
2組のツイストペア信号線1302及び電源線1303
を有している。これによって、電源を持たない機器や、
故障により電圧低下した機器等にも電力の供給が可能と
なっている。電源線1303内を流れる電源の電圧は8
〜40V、電流は最大電流DC1.5Aにそれぞれ規定
されている。各組のツイストペア信号線1302は、信
号線シールド1304によりそれぞれ被覆されている。
【0076】尚、DVケーブルと呼ばれる規格では、電
源線1303を省いた4ピンで構成されている。
【0077】次に、DS−Link(Data/Str
obe Link)符号化について説明する。
【0078】図14は、1394シリアルバスで採用さ
れているデータ転送フォーマットのDS−Link符号
化方式を説明するための図である。
【0079】1394シリアルバスでは、DS−Lin
k符号化方式が採用されている。このDS−Link符
号化方式は、高速なシリアルデータ通信に適しており、
その構成は、2本の信号線を必要とする。撚り対線のう
ちの一方の撚り対線に主となるデータ(Data)を送
り、他方の撚り対線にはストローブ(Strobe)信
号を送る構成になっている。受信側では、この通信され
るデータと、ストローブとの排他的論理和をとることに
よってクロック(Clock)を再現する。
【0080】このようなDS−Link符号化方式を用
いるメリットとして、8/10B変換に比べて転送効率
が高いこと、PLL(Phase−Lock Loo
p:位相ロックループ)回路が不要となるので、コント
ローラLSI(Large Scale Integr
ated Circuit:大規模集積回路)の回路規
模を小さくできること、更には、転送すべきデータが無
いときにアイドル状態であることを示す情報を送る必要
が無いので、各機器のトランシーバ回路をスリープ状態
にすることができることによって、消費電力の低減が図
れる等が挙げられる。
【0081】次に、バスリセットのシーケンスについて
説明する。
【0082】1394シリアルバスでは、接続されてい
る各機器(ノード)には、ノードIDが与えられ、ネッ
トワーク構成として認識されている。このネットワーク
構成に変化があったとき、例えばノードの挿抜や電源の
オン(ON)/オフ(OFF)等によるノード数の増減
等によって変化が生じて、新たなネットワーク構成を認
識する必要があるとき、変化を検知した各ノードは、バ
ス上にバスリセット信号を送信して、新たなネットワー
ク構成を認識するモードに入る。
【0083】このときの変化の検知方法は、1394ポ
ート基盤上でのアドバイス電圧の変化を検知することに
よって行われる。
【0084】あるノードからバスリセット信号が伝達さ
れて、各ノードのフィジカル・レイヤ1103(図11
参照)は、このバスリセット信号を受け取ると同時にリ
ンク・レイヤ1104(図11参照)にバスリセットの
発生を伝達し且つ他のノードにバスリセット信号を伝達
する。最終的に全てのノードがバスリセット信号を検知
した後、バスリセットが起動する。
【0085】バスリセットは、先に述べたようなケーブ
ル挿抜やネットワーク異常等によるハード検出による起
動と、プロトコルからのホスト制御等によってフィジカ
ル・レイヤ1103(図11参照)に直接命令を出すこ
とによっても起動する。
【0086】また、バスリセットが起動すると、データ
転送は一時中断され、この間のデータ転送は待たされ、
終了後に新しいネットワーク構成のもとで再開される。
【0087】以上がバスリセットのシーケンスである。
【0088】次に、ノードID決定のシーケンスについ
て説明する。
【0089】バスリセットの後、各ノードは新しいネッ
トワーク構成を構築するために、各ノードにIDを与え
る動作に入る。このときの、バスリセットからノードI
D決定間での一般的なシーケンスを図15、図16及び
図17のフローチャートを用いて説明する。
【0090】まず、バスリセットの発生からノードID
が決定し、データ転送が行えるようになるまでの動作
を、図15に基づき説明する。
【0091】まず、ステップS1501でネットワーク
内にバスリセットが発生したか否かを発生するまで判断
する。そして、電源のオン/オフ等でバスリセットが発
生すると、次のステップS1502へ進む。このステッ
プS1502では、ネットワークがリセットされた状態
から、新たなネットワークの接続状況を知るために、直
接接続されている各ノード間において親子関係が宣言さ
れる。
【0092】次にステップS1503で全てのノード間
で親子関係が決定したか否かを判断し、決定した場合は
次のステップS1504で1つのルートが決定する。ま
た、全てのノード間で親子関係が決定しない場合は、前
記ステップS1502へ戻って再び親子関係の宣言を行
い、前記ルートは決定されない。
【0093】前記ステップS154において1つのルー
トが決定すると、次のステップS1505で各ノードに
IDを与えるノードID設定作業が行われる。そして、
所定のノード順序でノードIDの設定作業が行われ、次
のステップS1506で全てのノードにIDを設定し終
えたか否かを判断する。そして、ID設定が終了しない
場合は前記ステップS1505へ戻って再び各ノードに
IDを与えるノードID設定作業が行われる。また、前
記ステップS1506において、ID設定が終了した場
合は、次のステップS1507でノード間のデータ転送
が行われた後、前記ステップS1501へ戻り、再びネ
ットワーク内にバスリセットが発生したか否かを発生す
るまで判断する。
【0094】次に、バスリセットにおける親子関係決定
の動作について、図16に基づき説明する。
【0095】まず、ステップS1601でネットワーク
にバスリセットが発生したか否かを発生するまで判断
し、発生した場合は次のステップS1602へ進む。こ
のステップS1602では、リセットされたネットワー
クの接続状況を再認識する作業の第1段階として、各機
器にリーフ(ノード)であることを示すフラグ(FL)
を立てる。次に、ステップS1603で各機器が自分の
持つポートが幾つ他のノードと接続されているかを確認
する。次に、ステップS1604で前記ステップS16
03におけるポート数の確認結果に応じて、これから親
子関係の宣言を始めていくために、未定義(親子関係が
決定されていない)ポートの数が幾つあるかを判断す
る。
【0096】ここで、バスリセットの直後はポート数=
未定義ポート数であるが、親子関係が決定されていくに
従って前記ステップS1604において検知する未定義
ポートの数は変化して行くものである。
【0097】まず、バスリセットの直後、初めに親子関
係の宣言が行えるのはリーフに限られている。リーフで
あるというのは、前記ステップS1603におけるポー
ト数の確認で知ることができる。リーフは、ステップS
1607で自分に接続されているノートに対して、「自
分は子、相手は親」と宣言した後、本処理動作を終了す
る。
【0098】また、前記ステップS1603においてポ
ート数が複数あり、ブランチと認識したノードは、バス
リセットの直後は前記ステップS1604において未定
義ポート数>1ということなので、ステップS1608
でブランチというフラグ(FL)が立てられ、次のステ
ップS1609でリーフからの親子関係宣言で「親(P
arent)」の受付けをするために待つ。そして、リ
ーフが親子関係の宣言を行い、前記ステップS1609
においてそれを受け付けたブランチは、前記ステップS
1604へ戻って未定義ポート数の確認を行い、未定義
ポート数が1になっていれば、残っているポートに接続
されているノードに対して前記ステップS1607にお
いて「自分は子、相手は親」と宣言することが可能とな
る。2度目以降、前記ステップS1604において未定
義ポート数を確認しても2以上あるブランチに対して
は、再度前記ステップS1609においてリーフまたは
他のブランチからの「親(Parent)」の受付けを
するために待つ。
【0099】最終的に、いずれか1つのブランチ、また
は例外的にリーフ(子宣言を行えるのに素早く動作しな
かったため)が前記ステップS1604における未定義
ポート数の確認結果として0となった場合、これによっ
てネットワーク全体の親子関係の宣言が終了したもので
あり、未定義ポート数が0(全て親のポートとして決
定)になった唯一のノードは、ステップS1605でル
ートのフラグ(FL)が立てられる。次に、ステップS
1606でルートとしての認識がなされた後、本処理動
作を終了する。
【0100】このようにして、図16に示したバスリセ
ットからネットワーク内全てのノード間における親子関
係の宣言までの動作が終了する。
【0101】次に、バスリセットにおける親子関係決定
後からノードID決定間での動作について、図17に基
づき説明する。
【0102】上述した図15及び図16までのシーケン
スでリーフ、ブランチ、ルートという各ノードのフラグ
の情報が設定されているので、これを基にして、まず、
ステップS1701で、それぞれ分類するために、その
フラグが何であるかを判断する。各ノードにIDを与え
る作業として、最初にIDの設定を行うことができるの
はリーフからである。リーフ→ブランチ→ルートの順で
若い番号(ノード番号=0〜)からIDの設定がなされ
ていく。
【0103】そして、前記ステップS1701において
フラグがリーフの場合は、ステップS1702へ、ルー
トの場合はステップS1714へ、ブランチの場合はス
テップS1708へそれぞれ進む。
【0104】フラグがリーフの場合に進むステップS1
702では、ネットワーク内に存在するリーフの数N
(Nは自然数)を設定する。次にステップS1703で
各自リーフがルートに対してIDを与えるように要求す
る。この要求が複数ある場合には、ルートはステップS
1714でアービトレーションを行い、ステップS17
15でアービトレーションに勝ったノード1つにID番
号を与え、アービトレーションに負けたノードには失敗
の結果通知を行う。次にステップS1704でID取得
ができたか否かを判断し、ID取得が失敗に終わったリ
ーフの場合は、前記ステップS1703へ戻って、再度
ID要求を行って同様の作業を繰り返す。
【0105】また、前記ステップS1704においてI
D取得ができたリーフの場合は、ステップS1705で
そのノードのID情報をブロードキャスト(決定した自
分のノードIDを他の全てのノードに通知する機能)で
全ノードに転送する。そして、1ノードID情報のブロ
ードキャストが終了すると、次のステップS1706で
残りのリーフの数Nが1つ減らされる。次にステップS
1707で残りのリーフの数Nが0であるか否かを判断
する。そして、残りのリーフの数Nが1以上の場合は、
前記ステップS1703へ戻って、ID要求の作業から
繰り返し行い、最終的に全てのリーフがID情報をブロ
ードキャスとすると、残りのリーフの数Nが0となるの
で、次のステップS1708へ進む。
【0106】このステップS1708では、ネットワー
ク内に存在するブランチの数M(Mは自然数)を設定す
る。次にステップS1709で各自ブランチがルートに
対してIDを与えるように要求する。これに対してルー
トは、ステップS1716でアービトレーション(調
停)を行い、アービトレーションに勝ったブランチから
順にリーフに与え終わった次の若い番号から与えてい
く。次にステップS1717でルートは要求を出したブ
ランチにID情報または失敗結果を通知する。次にステ
ップS1710でID取得ができたか否かを判断し、I
D取得が失敗に終わったリーフの場合は、前記ステップ
S1709へ戻って、再度ID要求を行って同様の作業
を繰り返す。
【0107】また、前記ステップS1710においてI
D取得ができたブランチの場合は、ステップS1711
でそのノードのID情報をブロードキャストで全ノード
に転送する。そして、1ノードID情報のブロードキャ
ストが終了すると、次のステップS1712で残りのリ
ーフの数Nが1つ減らされる。次にステップS1713
で残りのブランチの数Nが0であるか否かを判断する。
そして、残りのブランチの数Nが1以上の場合は、前記
ステップS1709へ戻って、ID要求の作業から繰り
返し行い、最終的に全てのブランチがID情報をブロー
ドキャストすると、残りのブランチの数Nが0となるの
で、ステップS1718へ進む。
【0108】このステップS1718では、ここまで終
了すると、最終的にID情報を種としていないノードは
ルートのみなので、与えていない番号で最も若い番号を
自分のID番号として設定し、次のステップS1719
でルートのID情報をブロードキャストした後、本処理
動作を終了する。
【0109】なお、前記ステップS1701においてフ
ラグがブランチの場合は、前記ステップS1708以降
の処理を、また、フラグがルートの場合は、前記ステッ
プS1714以降の処理を、それぞれ行うものである。
【0110】以上で、図17に示したように、親子関係
が決定した後から、全てのノードのIDが設定されるま
での手順が終了する。
【0111】次に、一例として実際のネットワークにお
ける動作を、図18に基づき説明する。
【0112】図18において、(ルート)ノードBの下
位にはノードAとノードCが直接接続されており、ま
た、ノードCの下位にはノードDが直接接続されてお
り、更にノードDの下位にはノードEとノードFが直接
接続された階層構造になっている。
【0113】また、図18において、ブランチは2つ以
上のノード接続があるノード、リーフは1つのポートの
み接続があるノード、ポートcは子のノードに相当する
ポート、ポートpは親のノードに相当するポートであ
る。
【0114】以下、前記階層構造やルートノード、ノー
ドIDを決定する手順を説明する。
【0115】バスリセットが行われた後、最初に親子関
係の宣言を行ったノードAである。基本的にノードの1
つのポートにのみ接続があるノード(リーフと呼ぶ)か
ら親子関係の宣言を行うことができる。これは自分には
1ポート接続のみということをまず知ることができるの
で、これによってネットワークの端であることを認識
し、その中で早く動作を行ったノードから親子関係が決
定されていく。こうして親子関係の宣言を行った側(ノ
ードA−B間ではノードA)のポートが子と設定され、
相手側(ノードB)のポートが親と設定される。こうし
て、ノードA−B間では子−親、ノードE−D間では子
−親、ノードF−D間では子−親と、それぞれ決定され
る。
【0116】更に1階層上がって、今度は複数個せづく
ポートを持つノード(ブランチと呼ぶ)のうち、他のノ
ードからの親関係の宣言を受けたものから順次、更に上
位に親子関係の宣言を行っていく。図18では、まず、
ノードDがD−E間D−F間と親子関係が決定した後、
ノードCに対する親子関係の宣言を行っており、その結
果、ノードD−C間で子−親と決定している。
【0117】ノードDからの親子関係の宣言を受けたノ
ードCは、もう1つのポートに接続されているノードB
に対して親子関係の宣言を行っている。これによって、
ノードC−D間で子−親と決定している。
【0118】このようにして、図18に示すような階層
構造が構成され、最終的に接続されている全てのポート
において親となったノードBがルートノードと決定され
る。
【0119】ルートは1つのネットワーク構成中に1つ
しか存在しないものである。
【0120】尚、この図18においてノードBがルート
ノードと決定されたが、これはノードAから親子関係の
宣言を受けたノードBが、他のノードに対して親子関係
の宣言を早いタイミングで行っていれば、ルートノード
は他のノードに移っていたともあり売る。即ち、伝達さ
れるタイミングによっては、どのノードもルートノード
となる可能性があり、同じネットワーク構成でもルート
ノードは一定とは限らない。
【0121】このようにしてルートノードが決定する
と、次は各ノードIDを決定するモードに入る。ここで
は全てのノードが、決定した自分のノードIDを他の全
てのノードに通知する(ブロードキャスト機能)。
【0122】自己ID情報は、自分のノード番号、接続
されている位置の情報、持っているポートの数、接続の
あるポート数、各ポートの親子関係の情報等を含んでい
る。ノードID番号の割り振り手順としては、まず1つ
のポートにのみ接続があるノード(リーフ)から起動す
ることができ、この中から順にノード番号=0,1,
2,…と割り当てられる。
【0123】ノードIDを取得したノードは、ノード番
号を含む情報をブロードキャストで各ノードに送信す
る。これによって、そのID番号は「割り当て済み」で
あることが認識される。
【0124】全てのリーフが自己ノードIDを取得し終
わると、次はブランチへ移り、リーフに引き続いたノー
ジID番号が各ノードに割り当てられる。リーフと同様
に、ノードID番号が割り当てられたブランチから順次
ノードID情報をブロードキャストし、最後にルートノ
ードが自己ID情報をブロードキャストする。即ち、常
にルートは最大のノード番号を所有するものである。
【0125】以上のようにして、改装構造全体のノード
IDの割り当てが終了し、ネットワーク構成が際構築さ
れ、バスの初期化作業が完了する。
【0126】次にアービトレーションについて図19を
用いて説明する。
【0127】1394シリアスバスでは、データ転送に
先立って必ずバス使用権のアービトレーション(調停)
を行う。1394シリアスバスは個別に接続された各機
器が、転送された信号をそれぞれ中継することによっ
て、ネットワーク内全ての機器に同信号を伝えるよう
に、論理的なバス型ネットワークであるので、パケット
の衝突を防ぐ意味でアービトレーションは必要である。
これによって、ある時間には、たった1つのノードのみ
転送を行うことができる。
【0128】図19は、アービトレーションの過程を説
明するための図であり、同図(a)はバス使用権の要求
が届けられる状態を、同図(b)はバス使用の許可が届
けられる状態をそれぞれ示している。
【0129】アービトレーションが始まると、1つ若し
くは複数のノードが親ノードに向かって、それぞれバス
使用権の要求を発する。図19(a)のノードCとノー
ドFがバス使用権の要求を発しているノードである。こ
れを受けた親ノード(図19(a)ではノードA)は更
に親ノードに向かってバス使用権の要求を発する(中継
する)。この要求は最終的に調停を行うルートに届けら
れる。
【0130】バス使用権の要求を受けたルートノード
は、どのノードにバスを使用させるかを決める。この調
停作業はルートノードのみが行えるものであり、調停に
よって勝ったノードにはバスの使用許可を与える。図1
9(b)ではノードCに使用許可が与えられ、ノードF
の使用は拒否された状態を示している。
【0131】アービトレーションに負けたノードに対し
てはDP(Data Prefix)パケットを送り、
拒否されたことを通知する。拒否されたノードのバス使
用権の要求は、次回のアービトレーションまで待たされ
る。
【0132】以上のようにして、アービトレーションに
勝ってバスの使用許可を受けたノードは、以降データの
転送を開始できる。
【0133】ここで、アービトレーションの一連の動作
の流れを、図20のフローチャートに基づき説明する。
【0134】ノードがデータ転送を開始できるために
は、バスがアイドル状態であることが必要である。先に
行われていたデータ転送が終了して、現在バスが空き状
態であることを認識するためには、各転送モードで個別
に設定されている所定のアイドル時間ギャップ長(例え
ば、サブアション・ギャップ)を経過することによっ
て、各ノードは自分の転送が開始できると判断する。
【0135】図20において、まず、ステップS200
1でAsynchronous(非同期)データ、Is
ochronous(同期)データ等、それぞれ転送す
るデータに応じた所定のギャップ長が得られたか否かを
判断する。所定のギャップ長が得られない限り、転送を
開始するために必要なバス使用権の要求はできないの
で、所定のギャップ長が得られるまで待機する。そし
て、前記ステップS2001において所定のギャップ長
が得られた場合は、次のステップS2002で転送すべ
きデータがあるか否かを判断し、転送すべきデータが無
い場合は、何も処理せずに本処理動作を終了し、転送す
べきデータがある場合は、次のステップS2003へ進
む。
【0136】ステップS2003では、データを転送す
るためにバスを確保するようにバス使用権の要求をルー
トに対して発する。このときのバス使用権の要求を表わ
す信号の伝達は、図19(a)に示したように、ネット
ワーク内各機器を中継しながら、最終的にルートに届け
られる。
【0137】次にステップS2004で前記ステップS
2003におけるバス使用権の要求を1つ以上のルート
が受信し、そのルートは次のステップS2005でバス
使用権の要求を出したノードの数が1以上(バス使用権
要求ノード数>1)であるか否かを判断する。そして、
ノードの数が1以上(バス使用権要求ノード数>1)の
場合は、ルートはステップS2006で使用許可を与え
るノードを1つに決定する調停(アービトレーション)
作業を行う。この調停作業は公平なものであり、毎回同
じノードばかりが使用許可を受けるようなことはなく、
平等に権利を与えていくような構成となっている(フェ
ア・アービトレーション)。
【0138】次にステップS2007で前記ステップS
2006において使用権の要求を出した複数のノードの
中からルートが調停して使用許可を受けた1つのノード
(アービトレーションに勝ったノード)と、アービトレ
ーションに負けたその他のノードとに分ける選択作業を
行う。ここで、調停されて使用許可を受けた1つのノー
ド、または前記ステップS2005においてバス使用権
要求ノード数=1で調停無しに使用許可を受けたノード
には、ステップS2008でルートはそのノードに対し
て許可信号を送った後、本処理動作を終了する。前記ス
テップS2008における許可信号を受けたノードは、
受け取った直後に転送すべきデータ(パケット)を転送
開始する。また、前記ステップS2006における調停
で負けてバス使用が許可されなかったノードには、ステ
ップS2009でルートからアービトレーション失敗を
示すDP(Data Prefix)パケットが送ら
れ、これを受け取ったノードは、再度転送を行うための
バス使用権の要求を出すため、前記ステップS2001
へ戻って、所定ギャップ長が得られるまで待機する。
【0139】次に、Asynchronous(アシン
クロナス:非同期)転送について、図21及び図22を
用いて説明する。アシンクロナス転送は、非同期転送で
ある。
【0140】図21は、アシンクロナス転送における時
間的な遷移状態を示す図、図22は、アシンクロナス転
送のパケットフォーマットの一例を示す図である。
【0141】図21において、最初のサブアククション
・ギャップ(subactiongap)は、バスのア
イドル状態を示すものである。このアイドル時間が一定
値になった時点で、転送を希望するノードはバスが使用
できると判断して、バス獲得のためのアービトレーショ
ンを実行する。
【0142】アービトレーションでバスの使用許可を得
ると、次にデータの転送がパケット形式で実行される。
データ転送後、受信したノードは転送されたデータに対
しての受信けっかのack(受信確認用返送コード)を
ack gapという短いギャップの後、返送して応答
するか、応答パケットを送ることによって転送が完了す
る。ackは4ビットの情報と4ビットのチェックサム
とからなり、成功か、ビジー状態か、ペンデッイング状
態であるかといった情報を含み、すぐに送信元ノードに
返送される。
【0143】シンクロナス転送のパケットには、データ
部及び誤り訂正用のデータCRCの他には、ヘッダ部が
あり、そのヘッダ部には図22に示すような、目的ノー
ドID、ソースノードID、転送データ長さや各種コー
ド等が書き込まれ、転送が行われる。
【0144】また、アシンクロナス転送は自己ノードか
ら相手ノードへの1対1の通信である。転送元ノードか
ら転送されたパケットは、ネットワーク中の各ノードに
行き渡るが、自分宛てのアドレス以外のものは無視され
るので、宛先の1つのノードのみが読み込むことにな
る。
【0145】以上がアシンクロナス転送についての説明
である。
【0146】次に、Isochronous(アイソク
ロナス:同期)転送について、図23及び図24を用い
て説明する。アイソクロナス転送は、同期転送である。
1394シリアルバスの最大の特徴であるともいえるア
イソクロナス転送は、特に映像データや音声データとい
ったマルチメディアデータ等、リアルタイムな転送を必
要とするデータの転送に適した転送モードである。
【0147】また、アシンクロナス転送が1対1の転送
であったのに対し、アイソクロナス転送は、ブロードキ
ャスト機能によって、転送元の1つのノードから他の全
てのノードへ一様に転送される。
【0148】図23は、アイソクロナス転送における時
間的な遷移状態を示す図、図24は、アイソクロナス転
送のパケットフォーマットの一例を示す図である。
【0149】アイソクロナス転送は、バス上一定時間毎
に実行される。この時間間隔をアイソクロナスサイクル
と呼ぶ。アイソクロナスサイクル時間は、125μsで
ある。この各サイクルの開始時間を示し、各ノードの時
間調整を行う役割を担っているのがサイクル・スタート
・パケットである。サイクル・スタート・パケットを送
信するのは、サイクル・マスタと呼ばれるノードであ
り、1つ前のサイクル内の転送終了後、所定のアイドル
期間(サブアクションギャップ)を経た後、本サイクル
の開始を告げるサイクル・スタート・パケットを送信す
る。
【0150】このサイクル・スタート・パケットに送信
される時間間隔が125μsとなる。
【0151】また、図23にチャネルA、チャネルB、
チャネルCと示したように、1サイクル内において複数
種類のパケットがチャネルIDをそれぞれ与えることに
よって区別して転送できる。これによって、同時に複数
ノード間でのリアルタイムな転送が可能であり、また、
受信するノードでは自分が欲しいチャネルIDのデータ
のみを取り込む。このチャネルIDは送信先のアドレス
を表わすものではなく、データに対する論理的な番号を
与えているにすぎない。よって、あるパケットの送信
は、1つの送信元ノードから他の全てのノードに行き渡
るブロードキャストで転送されることになる。
【0152】アイソクロナス転送のパケット送信に先立
って、アシンクロナス転送同様アービトレーションが行
われる。しかし、アシンクロナス転送のように1対1の
通信ではないので、アイソクロナス転送にはack(受
信確認用返信コード)は存在しない。
【0153】また、図23に示したiso gap(ア
イソクロナスギャップ)とは、アイソクロナス転送を行
う前にバスが空き状態であると認識するために必要なア
イドル期間を表わしている。この所定のアイドル期間を
経過すると、アイソクロナス転送を行いたいノードはバ
スが空いていると判断し、転送前のアービトレーション
を行うことができる。
【0154】各チャネルに別れたアイソクロナス転送の
パケットには、それぞれデータ部及び誤り訂正用のデー
タCRCの他にヘッダ部があり、そのヘッダ部には、図
24に示したような転送データ長やチャネルNO、その
他各種コード及び誤り訂正用のヘッダCRC等が書き込
まれ転送が行われる。
【0155】以上がアイソクロナス転送の説明である。
【0156】次に、バス・サイクルについて、図25を
用いて説明する。図25は、アイソクロナス転送とアシ
ンクロナス転送とが混在したバス上の転送状態の時間的
な遷移状態を示す図である。
【0157】アイソクロナス転送はアシンクロナス転送
より優先して実行される。その理由は、サイクル・スタ
ート・パケットの後、アシンクロナス転送を起動するた
めに必要なアイドル期間のギャップ長(サブアクション
ギャップ)よりも短いギャップ長(アイソクロナスギャ
ップ)でアイソクロナス転送を軌道できるからである。
従って、アシンクロナス転送よりアイソクロナス転送は
優先して実行されることとなる。
【0158】図25に示した一般的なバス・サイクルに
おいて、サイクル#mのスタート時にサイクル・スター
ト・パケットがサイクル・マスタから各ノードに転送さ
れる。これによって、各ノードで時刻調整を行い、所定
のアイドル期間(アイソクロナスギャップ)を持ってか
らアイソクロナス転送を行うべきノードはアービトレー
ションを行い、パケット転送に入る。図25では、チャ
ネルeとチャネルsとチャネルkが順にアイソクロナス
転送されている。
【0159】このアービトレーションからパケット転送
までの動作を、与えられているチャネル分繰り返し行っ
た後、サイクル#mにおけるアイソクロナス転送が全て
終了したら、アシンクロナス転送を行うことができるよ
うになる。
【0160】アイドル時間がアシンクロナス転送が可能
なサブアクションギャップに達することによって、アシ
ンクロナス転送を行いたいノードは、アービトレーショ
ンの実行に移れると判断する。
【0161】但し、アシンクロナス転送が行える期間
は、アイソクロナス転送終了後から次のサイクル・スタ
ート・パケットを転送すべき時間(cycle syn
ch)までの間にアシンクロナス転送を起動するための
サブアクションギャップが得られた場合に限っている。
【0162】図25のサイクル#mでは、3つのチャネ
ル分のアイソクロナス転送と、その後アシンクロナス転
送(ackを含む)が2パケット(パケット1、パケッ
ト2)転送されている。このアシンクロナスパケット2
の後は、サイクルm+1をスタートすべき時間(cyc
le synch)に至るので、サイクル#mでの転送
はここまでで終了する。
【0163】但し、非同期または同期転送動作中に次の
サイクル・スタート・パケットを送信すべき時間(cy
cle synch)に至ったとしたら、無理に中断せ
ずに、その転送が終了した後のアイドル期間を待ってか
ら次のサイクルのサイクル・スタート・パケットを送信
する。即ち、1つのサイクルが125μs以上続いたと
きは、その分、次のサイクルは基準の125μsより短
縮されたものとする。子のようにアイソクロナス・サイ
クルは、125μsを基準に超過、短縮し得るものであ
る。
【0164】しかし、アイソクロナス転送は、リアルタ
イム転送を維持するために毎サイクル必要であれば必ず
実行され、アシンクロナス転送は、サイクル時間が短縮
されたことによって、次以降のサイルにまわされること
もある。
【0165】こういった遅延情報も含めて、サイクル・
マスタによって管理される。
【0166】
【発明の効果】以上詳述したように本発明の印刷方法及
びシステムによれば、データをIEEE1394インタ
ーフェースバスを用いて送る場合に、最低のデータ転送
時間で送れるので、印刷に要する時間を大幅に短縮する
ことができるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る印刷システム
の構成を示すブロック図である。
【図2】図1におけるプリンタの内部構成を示すブロッ
ク図である。
【図3】図1におけるパーソナルコンピュータの内部構
成を示すブロック図である。
【図4】図1におけるパーソナルコンピュータの動作の
流れを示すフローチャートである。
【図5】図1におけるパーソナルコンピュータの動作の
流れを示すフローチャートである。
【図6】本発明の第1の実施の形態に係る印刷システム
における文章データの一例を示す図である。
【図7】本発明の第1の実施の形態に係る印刷システム
におけるコマンドの一例を示す図である。
【図8】図1におけるプリンタ装置の動作の流れを示す
フローチャートである。
【図9】本発明の第1の実施の形態に係る印刷システム
におけるコマンドの一例を示す図である。
【図10】IEEE1394ケーブルを用いた通信シス
テムの一例を示す図である。
【図11】IEEE1394の階層構造を示す図であ
る。
【図12】IEEE1394のアドレスマップを示す図
である。
【図13】IEEE1394のケーブルの断面図であ
る。
【図14】DS−Link符号化形式を説明するための
図である。
【図15】バスリセットからIDの設定までの動作の流
れを示すフローチャートである。
【図16】バスリセットにおける親子関係決定の動作の
流れを示すフローチャートである。
【図17】バスリセットにおける親子関係決定の後から
ノードID決定までの動作の流れを示すフローチャート
である。
【図18】ノード間の親子関係を示す図である。
【図19】アービトレーションの過程を説明するための
図である。
【図20】アービトレーションの動作の流れを示すフロ
ーチャートである。
【図21】アシンクロナス転送におけるサブアクション
を示す図である。
【図22】アシンクロナス転送におけるパケット構造を
示す図である。
【図23】アイソクロナス転送におけるサブアクション
を示す図である。
【図24】アイソクロナス転送におけるパケット構造を
示す図である。
【図25】IEEE1394の通信サイクルの一例を示
す図である。
【符号の説明】
101 パーナルコンピュータ(PC) 102 スキャナ 103 プリンタ 104 デジタルカメラ 105 ハードディスクドライブ(HDD) 106 IEEE1394インターフェース(I/
F)シリアルバス 201 IEEE1394インターフェース(I/
F)部 202 RAM(ランダムアクセスメモリ) 202a コードメモリ領域 202b ビットイメージデータメモリ領域 202c 文章情報メモリ領域 203 CPU(中央演算処理装置) 204 ROM(リードオンリーメモリ) 205 印刷部インターフェース(I/F)部 206 印刷部 207 システムバス 301 表示部 302 操作部 303 ハードディスク 304 メモリ 305 CPU(中央演算処理装置) 306 IEEE1394インターフェース(I/
F)部 307 システムバス
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI H04L 12/28 H04L 11/00 310Z

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 データを所定のインターフェースを通じ
    て印刷装置に送り印刷する印刷方法において、前記デー
    タをビットイメージデータとそれ以外のデータとに分け
    るデータ分割ステップと、前記ビットイメージデータに
    ついては、前記所定のインターフェースの同期転送モー
    ドを用いて送るか前記所定のインターフェースの非同期
    転送モードを用いて送るかを所定の条件に基づいて決定
    する転送モード決定ステップを有することを特徴とする
    印刷方法。
  2. 【請求項2】 前記所定の条件とは、同期転送のリソー
    スマネージャにアクセスして獲得できたバスバンド幅が
    一定の値を上回った場合であることを特徴とする請求項
    1記載の印刷方法。
  3. 【請求項3】 前記所定の条件とは、同期転送のリソー
    スマネージャにアクセスして獲得できたバスバンド幅が
    非同期転送モードでデータ転送を行う場合の平均データ
    転送レートを上回った場合であることを特徴とする請求
    項1記載の印刷方法。
  4. 【請求項4】 前記ビットイメージデータについては、
    前記所定のインターフェースの同期転送モードを用いて
    送る場合は、前記ビットイメージデータに付随する情報
    を前記所定のインターフェースの非同期転送モードを用
    いて送ることを特徴とする請求項1記載の印刷方法。
  5. 【請求項5】 前記所定のインターフェースは、IEE
    E1394インターフェースであることを特徴とする請
    求項1または4記載の印刷方法。
  6. 【請求項6】 前記データは、文章データであることを
    特徴とする請求項1記載の印刷方法。
  7. 【請求項7】 前記印刷装置は、レーザービームプリン
    タであることを特徴とする請求項1記載の印刷方法。
  8. 【請求項8】 前記印刷装置は、カラーレーザービーム
    プリンタであることを特徴とする請求項1記載の印刷方
    法。
  9. 【請求項9】 データを所定のインターフェースを通じ
    て印刷装置に送り印刷する印刷システムにおいて、前記
    データをビットイメージデータとそれ以外のデータとに
    分けるデータ分割手段と、前記ビットイメージデータに
    ついては前記所定のインターフェースの同期転送モード
    を用いて送るか前記所定のインターフェースの非同期転
    送モードを用いて送るかを所定の条件に基づいて決定す
    る転送モード決定手段とを有することを特徴とする印刷
    システム。
  10. 【請求項10】 前記所定の条件とは、同期転送のリソ
    ースマネージャにアクセスして獲得できたバスバンド幅
    が一定の値を上回った場合であることを特徴とする請求
    項9記載の印刷システム。
  11. 【請求項11】 前記所定の条件とは、同期転送のリソ
    ースマネージャにアクセスして獲得できたバスバンド幅
    が非同期転送モードでデータ転送を行う場合の平均デー
    タ転送レートを上回った場合であることを特徴とする請
    求項9記載の印刷システム。
  12. 【請求項12】 前記ビットイメージデータについて
    は、前記所定のインターフェースの同期転送モードを用
    いて送る場合は、前記ビットイメージデータに付随する
    情報を前記所定のインターフェースの非同期転送モード
    を用いて送ることを特徴とする請求項9記載の印刷シス
    テム。
  13. 【請求項13】 前記所定のインターフェースは、IE
    EE1394インターフェースであることを特徴とする
    請求項9または12記載の印刷システム。
  14. 【請求項14】 前記データは、文章データであること
    を特徴とする請求項9記載の印刷システム。
  15. 【請求項15】 前記印刷装置は、レーザービームプリ
    ンタであることを特徴とする請求項9記載の印刷システ
    ム。
  16. 【請求項16】 前記印刷装置は、カラーレーザービー
    ムプリンタであることを特徴とする請求項9記載の印刷
    システム。
JP9366215A 1997-12-25 1997-12-25 印刷方法及びシステム Pending JPH11188952A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9366215A JPH11188952A (ja) 1997-12-25 1997-12-25 印刷方法及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9366215A JPH11188952A (ja) 1997-12-25 1997-12-25 印刷方法及びシステム

Publications (1)

Publication Number Publication Date
JPH11188952A true JPH11188952A (ja) 1999-07-13

Family

ID=18486216

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9366215A Pending JPH11188952A (ja) 1997-12-25 1997-12-25 印刷方法及びシステム

Country Status (1)

Country Link
JP (1) JPH11188952A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007282176A (ja) * 2006-03-17 2007-10-25 Ricoh Co Ltd データ転送装置およびこれを備えた画像形成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007282176A (ja) * 2006-03-17 2007-10-25 Ricoh Co Ltd データ転送装置およびこれを備えた画像形成装置

Similar Documents

Publication Publication Date Title
TW384611B (en) Data communication apparatus and method
JP3630971B2 (ja) データ通信方法、装置、システム、及び記憶媒体
JP2002077211A (ja) 情報処理装置およびその方法、並びに、記録媒体
JPH10228365A (ja) 印刷装置、印刷システム、及び、印刷方法
JP4072215B2 (ja) 画像処理装置及びその制御方法、画像処理システム
JP2000259545A (ja) 情報処理装置およびその方法、並びに、記録媒体
JP3682512B2 (ja) 画像取り込み装置及びその制御方法、印刷システム、印刷方法、及び、印刷装置及びその制御方法
JP2001274813A (ja) 情報信号処理装置及び情報信号処理方法並びに記憶媒体
JPH11188952A (ja) 印刷方法及びシステム
JP3647328B2 (ja) 画像処理装置及びその制御方法並びに画像処理システム
JP3495878B2 (ja) データ処理方法、データ処理装置及びプリンタ
JPH10228364A (ja) データ転送装置及びその制御方法及び印刷システム
JP3495879B2 (ja) データ処理方法、データ処理装置、及びコンピュータ読み取り可能な記録媒体
JP3943722B2 (ja) データ転送装置、データ転送システムおよびその方法、画像処理装置、並びに、記録媒体
JPH10307691A (ja) データ通信方法と装置及び印刷装置と前記装置を含む印刷システム
JPH11110160A (ja) 印刷制御装置及び印刷制御方法
JP2003333045A (ja) パワーマネージメント
JPH11170632A (ja) 画像データ転送補償処理方法及び装置
JPH10304007A (ja) データ処理方法、データ処理装置、プリンタ及び記憶媒体
JPH10228355A (ja) データ転送装置及びその制御方法及び印刷システム
JP2004289857A (ja) プリント方法、通信方法、プリント制御装置、及び通信制御装置
JP3869941B2 (ja) 印刷システム、印刷装置、および印刷方法
JP4058156B2 (ja) データ処理方法、データ処理装置、プリンタ、及び記憶媒体
JPH11177589A (ja) データ転送装置およびデータ転送装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JPH11196099A (ja) データ通信方法及び装置