JPH10307691A - データ通信方法と装置及び印刷装置と前記装置を含む印刷システム - Google Patents

データ通信方法と装置及び印刷装置と前記装置を含む印刷システム

Info

Publication number
JPH10307691A
JPH10307691A JP9115831A JP11583197A JPH10307691A JP H10307691 A JPH10307691 A JP H10307691A JP 9115831 A JP9115831 A JP 9115831A JP 11583197 A JP11583197 A JP 11583197A JP H10307691 A JPH10307691 A JP H10307691A
Authority
JP
Japan
Prior art keywords
data
printing
error
print data
transmission
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
JP9115831A
Other languages
English (en)
Inventor
Jiro Tateyama
二郎 立山
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 JP9115831A priority Critical patent/JPH10307691A/ja
Priority to US09/053,747 priority patent/US6018816A/en
Publication of JPH10307691A publication Critical patent/JPH10307691A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 、ホストより送信される印刷データにおける
データの欠落を補って印刷するデータ通信方法と装置及
び印刷装置と前記装置を含む印刷システム提供する。 【解決手段】 PC103でプリンタ102の構造に特
化したデータ形式に変換した印刷データをアイソクロナ
ス伝送によりプリンタ102に伝送してリアルタイムに
印刷を行う印刷システムにおいて、プリンタ102でア
イソクロナスパケットでのエラーを検知すると、そのパ
ケットのエラー情報を保持するとともに、そのエラー部
分をブランクでプリントする。そしてそのエラー部分の
再送をPC103に要求し、PC103から再送される
データブロックの内、そのエラー箇所のデータを判別し
てプリントする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、制御信号や画像デ
ータを混在させて通信することが可能なデータ通信バス
を用いて、ホストと印刷装置間でデータの送受信を行う
データ通信方法と装置及び印刷装置と前記装置を含む印
刷システムに関するものである。
【0002】
【従来の技術】従来はホストとなるパーソナルコンピュ
ータ(以下、PCと称す)にスキャナやデジタルスチル
カメラやデジタルビデオカメラといったデジタル機器を
接続し、各デジタル機器で取り込まれた映像データを一
旦PC上のハードディスク等に格納し、その映像データ
をPC上のアプリケーションを介して印刷データに変換
してプリンタに出力してプリントするシステムがあっ
た。
【0003】このようなシステムでは、デジタル機器か
らの映像データはPC上で最も使い易く、かつ表示しや
すい形式のデータとして保存され、印刷時にはこの保存
された画像の状態を見て、入出力機器間で適切となるよ
うな画像処理を行って印刷データを作成し、パラレル・
インターフェース等を介してプリンタに送出していた。
【0004】ここでの印刷データとは、各プリンタで対
応しているプリンタ・エミュレーション(例えばESC
/P、PostScript等)によって決められた制御コマンド
や画像データを含んでいる。従来のインターフェースで
は、各機器間のデータ伝送速度がそれほど高くなかった
が、これらの印刷データはデータ容量が少なくなるよう
ソフトウェア処理等によりデータ圧縮がなされていたの
で、十分な印刷速度が得られていた。
【0005】
【発明が解決しようとする課題】しかしながら近年、プ
リンタはエミュレーションによるデータ処理機能や、デ
ータ保存や処理を行うための十分なバッファ容量を持つ
必要があり、プリンタのハードウェア構造を複雑なもの
にしていた。
【0006】また、近年のプリンタ装置における印刷の
解像度の増大により、ホストからプリンタに伝送される
画像データの容量が多くなったり、且つプリンタ装置に
おける印刷スピードの向上により、大量の画像データを
より高速に伝送することが要求される。このような要求
に対処するためにプリンタのコストが上昇するという欠
点があった。
【0007】また、近年IEEE1394シリアルバス
を用いたホストとプリンタとの間でのデータ伝送を行う
ことが行なわれているが、このIEEE1394シリア
ルバスを用いたアイソクロナス伝送では、エラーパケッ
トが発生して正しいデータを伝送することができなかっ
た時も常にリアルタイムにデータを送る必要があるた
め、同期したタイミングで伝送元に対してエラーレスポ
ンスを返す処理を入れることができなかった。即ち、印
刷中に画像データの欠落が起きても対処する方法がなか
った。
【0008】本発明は上記従来例に鑑みてなされたもの
で、ホストより送信される印刷データにおけるデータの
欠落を補って印刷するデータ通信方法と装置及び印刷装
置と前記装置を含む印刷システム提供するものである。
【0009】本発明の目的は、印刷装置における大容量
のプリントバッファを不要にして高速にプリントできる
データ通信方法と装置及び印刷装置と前記装置を含む印
刷システムを提供することにある。
【0010】本発明の他の目的は、印刷データにエラー
が発生した場合、そのエラーより効率良く復帰して高速
に印刷できるデータ通信方法と装置及び印刷装置と前記
装置を含む印刷システムを提供することにある。
【0011】
【課題を解決するための手段】上記目的を達成するため
に本発明のデータ通信装置は以下のような構成を備え
る。
【0012】印刷装置に印刷データを伝送して印刷を行
うデータ通信装置であって、前記印刷装置における印刷
データ構造に変換した印刷データを作成するデータ変換
手段と、前記印刷データをアイソクロナス伝送により前
記印刷装置の機能に合わせてデータブロック単位に伝送
する伝送手段と、前記伝送手段によるデータブロックの
伝送後、前記データブロック内でのアイソクロナスパケ
ット伝送におけるエラー発生が前記印刷装置から伝送さ
れると、前記データブロックを前記印刷装置に再送する
再送手段とを有することを特徴とする。
【0013】また上記目的を達成するために本発明のデ
ータ通信方法は以下のような工程を備える。即ち、ホス
トより印刷データをアイソクロナス伝送により印刷装置
に伝送するデータ通信方法であって、前記ホストは、前
記印刷装置における印刷データ構造に変換した印刷デー
タをアイソクロナス伝送により前記印刷装置の機能に合
わせてデータブロック単位に伝送し、前記データブロッ
クの伝送後、前記データブロック内でのアイソクロナス
パケット伝送におけるエラーが発生すると当該エラーに
関するエラー情報を前記印刷装置に保持し、次のデータ
ブロックの伝送開始時に前記ホストにアシンクロナス伝
送によりエラー情報を前記ホストに返送することを特徴
とする。
【0014】また本発明の印刷システムは、ホストより
印刷データをアイソクロナス伝送により印刷装置に伝送
して印刷する印刷システムであって、前記印刷装置は、
前記印刷データの受信時、前記印刷データのアイソクロ
ナスパケット伝送におけるエラーの発生を検知する検知
手段と、前記印刷データに基づいてマルチパスによるプ
リントを実行し、前記検知手段により検知された印刷デ
ータのエラー箇所をブランクのままでプリントするプリ
ント手段と、前記エラーの発生により前記ホストにデー
タの再送要求を発行する再送要求手段と、前記再送要求
手段による再送要求に応じて前記ホストより再送される
印刷データのうち、前記保持手段に保持されているエラ
ー情報に基づいて前記エラー箇所に該当する印刷データ
部分を判別する判別手段と、前記ホストは、前記印刷装
置における印刷データ構造に変換した印刷データをアイ
ソクロナス伝送により前記印刷装置の機能に合わせてデ
ータブロック単位に伝送する伝送手段と、前記再送要求
手段により発行された再送要求に応じて、前記印刷装置
における次のパスでプリントされる印刷データに当該エ
ラーが発生したデータブロックを重畳した印刷データを
作成して伝送するデータ伝送手段とを有することを特徴
とする。
【0015】
【発明の実施の形態】以下、添付図面を参照して本発明
の好適な実施の形態を詳細に説明する。
【0016】図1は、本発明の実施の形態の印刷システ
ムの接続構成を示した図である。ここでは、各機器を接
続するデジタル・インターフェースをIEEE1394
インターフェースを使用した構成にしている。従って、
まず最初にIEEE1394インターフェースの概略に
ついての説明をする。
【0017】≪IEEE1394の技術の概要≫家庭用
デジタルVTRやDVDの登場に伴って、ビデオデータ
やオーディオデータなどのリアルタイムで、かつ高情報
量のデータ伝送を行うためのサポートが必要になってい
る。こういったビデオデータやオーディオデータをリア
ルタイムで伝送し、パソコン(PC)に取り込んだり、
またはその他のデジタル機器に伝送を行うには、必要な
伝送機能を備えた高速データ伝送可能なインタフェース
が必要となり、そういった観点から開発されたインタフ
ェースがIEEE1394−1995(High Performan
ce Serial Bus)(以下1394シリアルバス)であ
る。
【0018】図2は、この1394シリアルバスを用い
て構成されるネットワーク・システムの例を示す図であ
る。このシステムは、機器A,B,C,D,E,F,
G,Hを備えており、A−B間、A−C間、B−D間、
D−E間、C−F間、C−G間、及びC−H間をそれぞ
れ1394シリアルバスのツイスト・ペア・ケーブルで
接続している。これら機器A〜Hは、例としてPC、デ
ジタルVTR、DVD、デジタルカメラ、ハードディス
ク、モニタ等である。
【0019】各機器間の接続方式は、ディジーチェーン
方式とノード分岐方式とを混在可能としたものであり、
自由度の高い接続が可能である。また、各機器は各自固
有のIDを有し、それぞれが互いのIDを認識し合うこ
とによって、1394シリアルバスで接続された範囲に
おいて、1つのネットワークを構成している。各デジタ
ル機器間をそれぞれ1本の1394シリアルバスケーブ
ルで順次接続するだけで、それぞれの機器が中継の役割
を行い、全体として1つのネットワークを構成してい
る。また、1394シリアルバスの特徴でもある、Pl
ug&Play機能により、ケーブルを機器に接続した
時点で自動で機器の認識や接続状況などを認識する機能
を有している。
【0020】また、図2に示したようなシステムにおい
て、ネットワークからある機器が削除されたり、または
新たに追加されたときなどは自動的にバスリセットを行
い、それまでのネットワーク構成をリセットしてから、
新たなネットワークの再構築を行う。この機能によっ
て、その時々のネットワークの構成を常時設定、認識す
ることができる。また、このシステムにおけるデータ伝
送速度は、100/200/400Mbps(メガビッ
ト/秒)であり、上位の伝送速度を持つ機器が下位の伝
送速度をサポートし、互換をとるようになっている。
【0021】データ伝送モードとしては、コントロール
信号などの非同期データ(Asynchronousデータ:以下As
yncデータ)を伝送するAsynchronous伝送モード、リア
ルタイムなビデオデータやオーディオデータ等の同期デ
ータ(Isochronousデータ:以下Isoデータ)を伝送する
Isochronous伝送モードがある。このAsyncデータとIso
データは、各サイクル(通常1サイクル125μs)の
中において、サイクル開始を示すサイクル・スタート・
パケット(CSP)の伝送に続き、Isoデータの伝送を
優先しつつサイクル内で混在して伝送される。
【0022】図3は、この1394シリアルバスの構成
要素を示す図である。
【0023】1394シリアルバスは全体としてレイヤ
(階層)構造で構成されている。図3に示したように、
純粋なハードウェアとして1394シリアルバスのケー
ブルがあり、そのケーブルのコネクタが接続されるコネ
クタポートがあり、その上にハードウェアとしてフィジ
カル・レイヤとリンク・レイヤがある。
【0024】ハードウェア部はインターフェースチップ
の部分であり、そのうちフィジカル・レイヤは符号化や
コネクタ関連の制御等を行い、リンク・レイヤはパケッ
ト伝送やサイクルタイムの制御等を行う。
【0025】ファームウェア部のトランザクション・レ
イヤは、伝送(トランザクション)すべきデータの管理
を行い、Read(読出し)やWrite(書き込み)といった
命令を出す。マネージメント・レイヤは、接続されてい
る各機器の接続状況やIDの管理を行い、ネットワーク
の構成を管理する部分である。このハードウェアとファ
ームウェアまでが実質上の1394シリアルバスの構成
である。
【0026】またソフトウェア部のアプリケーション・
レイヤは、使用されるソフトウェアによって異なり、イ
ンタフェース上にどのようにデータをのせるか規定する
部分で、例えばAVプロトコルなどのプロトコルによっ
て規定されている。
【0027】図4は1394シリアルバスにおけるアド
レス空間を示す図である。
【0028】1394シリアルバスに接続された各機器
(ノード)には必ず各ノード固有の64ビットアドレス
を持たせておく。そしてこのアドレスをROMに格納し
ておくことで、自分や相手のノードアドレスを常時認識
でき、相手を指定した通信も行える。
【0029】1394シリアルバスのアドレッシング
は、IEEE1212規格に準じており、アドレス設定
は、最初の10ビット(bit)がバスの番号の指定用
に、次の6bitがノードID番号の指定用に使われる。
それぞれの機器内で使用できる48ビットのアドレスに
ついても20ビットと28ビットに分けられ、256M
バイト単位の構造を持って利用される。最初の20ビッ
トの0〜0xFFFFDの部分はメモリ空間と呼ばれ
る。0xFFFFEの部分はプライベート空間と呼ば
れ、機器内で自由に利用できるアドレスである。0xF
FFFFの部分はレジスタ空間と呼ばれ、バスに接続さ
れた機器間で共通な情報が置かれ、各機器間のコミュニ
ケーションに使われる。レジスタ空間の最初の512バ
イトには、CSRアーキテクチャのコアになるレジスタ
(CSRコア)がある。次の512バイトにはシリアル
バスのレジスタがある。その次の1024バイトにはCo
nfigurationn ROMが置かれる。残りはユニット空
間で機器固有のレジスタがある。
【0030】一般的には異種バスシステムの設計の簡略
化のため、ノードは初期ユニット空間の最初の2048
バイトだけを使うべきであり、この結果としてCSRア
ーキテクチャの核(CSRコア)、シリアルバスのレジ
スタ、Configuration ROMと、ユニット空間の最初
の2048バイトの合わせて4096バイトで構成する
ことが望ましい。以上が1394シリアルバスの技術の
概要である。
【0031】次に、1394シリアルバスの特徴といえ
る技術の部分を、より詳細に説明する。
【0032】≪1394シリアルバスの電気的仕様≫図
5は、1394シリアルバス・ケーブルの断面図を示す
図である。1394シリアルバスでは、接続ケーブル内
に2組のツイストペア信号線の他に、電源ラインを設け
ている。これによって、電源を持たない機器や、故障に
より電圧低下した機器等にも電力の供給が可能になって
いる。この電源線内を流れる電源の電圧は8〜40V、
電流は最大電流DC1.5Aに規定されている。
【0033】≪DS−Link符号化≫図6は、139
4シリアルバスで採用されている、データ伝送フォーマ
ットのDS−Link符号化方式を説明するための図で
ある。
【0034】1394シリアルバスでは、DS−Lin
k(Data/Strobe Link)符号化方式が採用されてい
る。このDS−Link符号化方式は、高速なシリアル
データ通信に適しており、この構成は、2本の信号線を
必要とする。撚り対線のうち1本に主となるデータを送
り、他方の撚り対線にはストローブ信号を送る構成にな
っている。受信側では、この通信されるデータ(Data)と
ストローブ(Strobe)との排他的論理和をとることによっ
てクロックを再現できる。
【0035】このDS−Link符号化方式を用いるメ
リットとして、他のシリアルデータ伝送方式に比べて伝
送効率が高いこと、PLL回路が不要となるのでコント
ローラLSIの回路規模を小さくできること、更には、
伝送すべきデータが無いときにアイドル状態であること
を示す情報を送る必要が無いので、各機器のトランシー
バ回路をスリープ状態にすることができることによっ
て、消費電力の低減が図れる、などが挙げられる。
【0036】≪バスリセットのシーケンス≫1394シ
リアルバスでは、接続されている各機器(ノード)には
ノードIDが与えられ、ネットワーク構成として認識さ
れている。このネットワーク構成に変化があったとき、
例えばノードの挿抜や、各ノードの電源のON/OFF
などによるノード数の増減などによって変化が生じて、
新たなネットワーク構成を認識する必要があるときに、
その変化を検知した各ノードはバス上にバスリセット信
号を送信して、新たなネットワーク構成を認識するモー
ドに入る。このときの変化の検知方法は、1394ポー
ト基板上でのバイアス電圧の変化を検知することによっ
て行われる。あるノードからバスリセット信号が伝達さ
れ、各ノードのフィジカルレイヤがこのバスリセット信
号を受けると同時にリンクレイヤにバスリセットの発生
を伝達し、かつ他のノードにバスリセット信号を伝達す
る。こうして最終的に、そのネットワークの全てのノー
ドがバスリセット信号を検知した後、バスリセットが起
動となる。
【0037】このバスリセットは、先に述べたようなケ
ーブル抜挿や、ネットワークの異常等によるハードウェ
アでの検出による起動と、プロトコルからのホスト制御
などによってフィジカルレイヤに直接命令を出すことに
よっても起動する。また、バスリセットが起動するとデ
ータ伝送は一時中断され、この間のデータ伝送は待たさ
れ、終了後、新しいネットワーク構成のもとで、データ
伝送が再開される。
【0038】以上がバスリセットのシーケンスである。
【0039】≪ノードID決定のシーケンス≫バスリセ
ットの後、各ノードは新しいネットワーク構成を構築す
るために、各ノードにIDを与える動作に入る。このと
きの、バスリセットからノードID決定までの一般的な
シーケンスを図7、図8、図9のフローチャートを用い
て説明する。
【0040】図7のフローチャートは、バスリセットの
発生からノードIDが決定され、データ伝送が行えるよ
うになるまでの、一連のバスの作業を示してある。
【0041】まず、ステップS101で、ネットワーク
内にバスリセットが発生したかどうか常時監視してい
て、ここでノードの電源ON/OFFなどでバスリセッ
トが発生するとステップS102に進む。ステップS1
02では、ネットワークがリセットされた状態から、新
たなネットワークの接続状況を知るために、直接接続さ
れている各ノード間において親子関係の宣言がなされ
る。次にステップS103に進み、そのネットワークで
全てのノード間で親子関係が決定するとステップS10
4に進み、一つのルートを決定する。こうして全てのノ
ード間で親子関係が決定するまでステップS102の親
子関係の宣言を行い、またルートも決定されない。
【0042】ステップS104でルートが決定されると
ステップS105に進み、各ノードにIDを与えるノー
ドIDの設定作業が行われる。所定のノード順序で、ノ
ードIDの設定が行われ、全てのノードにIDが与えら
れるまで繰り返し設定作業が行われ、最終的にステップ
S106で全てのノードにIDを設定し終えると、新し
いネットワーク構成が全てのノードにおいて認識された
のでステップS107に進み、ノード間のデータ伝送が
行える状態となりデータ伝送が開始される。
【0043】こうしてステップS107の状態になると
ステップS101に戻り、再びバスリセットが発生する
のを監視するモードに入り、バスリセットが発生したら
前述したステップS101からステップS106までの
設定作業が繰り返し行われる。
【0044】以上が、図7のフローチャートの説明であ
るが、図7のフローチャートのバスリセットからルート
決定までの部分と、ルート決定後からID設定終了まで
の手順をより詳しくフローチャート図に表したものをそ
れぞれ図8、図9に示す。
【0045】まず、図8のフローチャートの説明を行
う。
【0046】ステップS201でバスリセットが発生す
ると、ネットワーク構成は一旦リセットされる。なお、
ステップS201では、バスリセットが発生するのを常
に監視している。次にステップS202に進み、リセッ
トされたネットワークの接続状況を再認識する作業の第
一歩として、各機器にリーフ(ノード)であることを示
すフラグを立てておく。そしてステップS203に進
み、各機器が自分の持つポートがいくつ他ノードと接続
されているのかを調べる。
【0047】ステップS204では、ステップS203
で確認したポート数の結果に応じて、これから親子関係
の宣言を始めていくために、未定義(親子関係が決定さ
せてない)ポートの数を調べる。バスリセットの直後は
(ポート数=未定義ポート数)であるが、親子関係が決
定されていくにしたがって、ステップS204で検知す
る未定義ポートの数は減少していく。
【0048】まずバスリセットの直後、はじめに親子関
係の宣言を行えるのはリーフに限られている。リーフで
あるというのはステップS203のポート数の確認で知
ることができる。リーフは、ステップS205で、自分
に接続されているノードに対して、「自分は子、相手は
親」と宣言して動作を終了する。ステップS203でポ
ート数が複数あり、ブランチと認識したノードは、バス
リセットの直後はステップS204で未定義ポート数
(>1)であるためステップS206に進み、まずブラ
ンチというフラグが立てられ、ステップS207でリー
フから親子関係宣言で「親(Parent)」の受付をするため
に待つ。
【0049】リーフが親子関係の宣言を行い、ステップ
S207でそれを受けたブランチは適宜ステップS20
4の未定義ポート数の確認を行い、未定義ポート数が
“1”になっていれば残っているポートに接続されてい
るノードに対して、ステップS205の「自分が子(Chi
ld)」の宣言をすることが可能になる。2度目以降、ス
テップS204で未定義ポート数を確認しても“2”以
上あるブランチに対しては、再度ステップS207でリ
ーフ又は他のブランチからの「親」の受付をするために
待つ。
【0050】こうして最終的に、いずれか1つのブラン
チ、又は例外的にリーフ(子宣言を行えるのにすばやく
動作しなかった為)がステップS204の未定義ポート
数の結果として“0”になったら、これによりネットワ
ーク全体の親子関係の宣言が終了したものであり、未定
義ポート数が“0”(全て親のポートとして決定)にな
った唯一のノードはステップS208でルートのフラグ
が立てられ、ステップS209でルートとしての認識が
なされる。
【0051】このようにして、図8に示したバスリセッ
トから、ネットワーク内全てのノード間における親子関
係の宣言までが終了する。
【0052】次に、図9のフローチャートについて説明
する。
【0053】まず、図8までのシーケンスでリーフ、ブ
ランチ、ルートという各ノードのフラグの情報が設定さ
れているので、これを基にして、ステップS301でそ
れぞれ分類する。ここで各ノードにIDを与える作業と
して、最初にIDの設定を行うことができるのはリーフ
からである。リーフ→ブランチ→ルートの順で若い番号
(ノード番号=0〜)からIDの設定がなされていく。
【0054】まずステップS302で、ネットワーク内
に存在するリーフの数N(Nは自然数)を設定する。こ
の後、ステップS303に進み、各自リーフがルートに
対してIDを与えるように要求する。この要求が複数あ
る場合には、ルートはステップS304に進み、アービ
トレーション(1つに調停する作業)を行い、ステップ
S305で、勝ったノード1つにID番号を与え、負け
たノードには失敗の結果通知を行う。こうしてステップ
S306では、ID取得が失敗に終わったリーフは、再
度ID要求を出し、同様の作業を繰り返す。
【0055】ステップS306でIDを取得できたリー
フはステップS307に進み、そのノードのID情報を
ブロードキャストで全ノードに伝送する。1つのノード
ID情報のブロードキャストが終わるとステップS30
8に進み、残りのリーフの数が1つ減らされる。ステッ
プS309では、この残りのリーフの数が“1”以上か
どうかを調べ、“1”以上の時はステップS303に戻
り、ID要求の作業からを繰り返し行い、最終的に全て
のリーフがID情報をブロードキャストするとN=0と
なり、次にステップS310に進んでブランチのID設
定に移る。
【0056】このブランチのID設定もリーフの時と同
様に行われる。即ちまずステップS310でネットワー
ク内に存在するブランチの数M(Mは自然数)を設定す
る。この後ステップS311に進み、各自ブランチがル
ートに対してIDを与えるように要求する。これに対し
てルートは、ステップS312で、アービトレーション
を行い、勝ったブランチから順に、リーフに与え終わっ
た次の若い番号から与えいく。ステップS313では、
ルートは要求を出したブランチにID情報又は失敗結果
を通知する。ステップS314では、ID取得が失敗に
終わったブランチが再度ID要求を出し、前述と同様の
作業を繰り返す。
【0057】こうしてステップS315では、IDを取
得できたブランチから、そのノードのID情報をブロー
ドキャストで全ノードに伝送する。こうして1つのノー
ドID情報のブロードキャストが終わるとステップS3
16に進み、残りのブランチの数が1つ減らされる。そ
してステップS317では、この残りのブランチの数が
“1”以上かどうかを調べ、そうである時はステップS
311に戻ってID要求の作業からを繰り返し、最終的
に全てのブランチがID情報をブロードキャストするま
で行われる。こうして全てのブランチがノードIDを取
得するとステップS317でM=0となり、ブランチの
ID取得モードも終了する。
【0058】ここまで終了すると、最終的にID情報を
取得していないノードはルートのみとなるので、ステッ
プS318で、それまで与えていない番号で最も若い番
号を自分のID番号と設定し、次にステップS319
で、ルートのID情報をブロードキャストする。
【0059】以上で、図9に示したように、親子関係が
決定した後、全てのノードのIDが設定されるまでの手
順が終了する。
【0060】図10は、ネットワークの構成例を示す図
でこのネットワークにおける動作を図12を参照しなが
ら説明する。
【0061】図10において、(ルート)ノードBの下
位にはノードAとノードCが直接接続されており、更に
ノードCの下位にはノードDが直接接続されており、更
にノードDの下位にノードEとノードFが直接接続され
た階層構造になっている。この階層構造やルートノー
ド、ノードIDを決定する手順を以下で説明する。
【0062】バスリセットがされた後、まず各ノードの
接続状況を認識するために、各ノードが直接接続されて
いるポート間において、親子関係の宣言がなされる。こ
の親子とは親側が階層構造で上位となり、子側が下位と
なると言うことができる。
【0063】図10では、バスリセットの後、最初に親
子関係の宣言を行ったのはノードAである。基本的にノ
ードの1つのポートにのみ接続があるノード(リーフと
呼ぶ)から親子関係の宣言を行うことができる。これは
自分には1ポートの接続のみということをまず知ること
ができるので、これによってネットワークの端であるこ
とを認識し、その中で早く動作を行ったノードから親子
関係が決定されていく。こうして親子関係の宣言を行っ
た側(A−B間ではノードA)のポートが子(c)と設定
され、相手側(ノードB)のポートが親(p)と設定され
る。こうして、ノードA−B間では子−親、ノードE−
D間で子−親、ノードF−D間で子−親と決定される。
【0064】次に1階層上がって、今度は複数個接続ポ
ートを持つノード(ブランチと呼ぶ)のうち、他ノード
からの親子関係の宣言を受けたものから順次、更に上位
に親子関係の宣言を行っていく。図10では、まずノー
ドDがD−E間、D−F間と親子関係が決定した後、ノ
ードCに対する親子関係の宣言を行っており、その結果
ノードD−C間で子−親と決定している。
【0065】これによりノードDから親子関係の宣言を
受けたノードCは、もう一つのポートに接続されている
ノードBに対して親子関係の宣言を行っている。これに
よってノードC−B間で子−親と決定している。
【0066】このようにして、図10のような階層構造
が構成され、最終的に接続されている全てのポートにお
いて親となったノードBが、ルートノードと決定され
た。ルートは1つのネットワーク構成中に一つしか存在
しないものである。
【0067】尚、この図10において、ノードBがルー
トノードと決定されたが、これはノードAから親子関係
宣言を受けたノードBが、他のノードに対して親子関係
宣言を早いタイミングで行っていれば、ルートノードは
他ノードに移っていたこともあり得る。即ち、伝達され
るタイミングによってはどのノードもルートノードとな
る可能性があり、同じネットワーク構成でもルートノー
ドは一定とは限らない。こうしてルートノードが決定す
ると、次は各ノードIDを決定するモードに入る。ここ
では全てのノードが、決定した自分のノードIDを他の
全てのノードに通知する(プロードキャスト機能)。
【0068】自己ID情報は、自分のノード番号、接続
されている位置の情報、持っているポートの数、接続の
あるポートの数、各ポートの親子関係の情報等を含んで
いる。ノードID番号の割り振りの手順としては、まず
1つのポートにのみ接続があるノード(リーフ)から起
動することができ、この中から順にノード番号=0,
1,2,…と割り当てられる。
【0069】ノードIDを手にしたノードは、ノード番
号を含む情報をブロードキャストで各ノードに送信す
る。これによって、そのID番号は『割り当て済み』で
あることが認識される。
【0070】全てのリーフが自己ノードIDを取得し終
わると、次はブランチへ移りリーフに引き続いたノード
ID番号が各ノードに割り当てられる。リーフと同様
に、ノードID番号が割り当てられたブランチから順次
ノードID情報をブロードキャストし、最後にルートノ
ードが自己ID情報をブロードキャストする。即ち、常
にルートは最大のノードID番号を所有するものであ
る。
【0071】以上のようにして、階層構造全体のノード
IDの割り当てが終わり、ネットワーク構成が再構築さ
れ、バスの初期化作業が完了する。
【0072】≪ノード管理のための制御情報≫ノード管
理のためのCSRアーキテクチャの基本的な機能とし
て、図4に示したCSRコアがレジスタ上に存在する。
それらのレジスタの位置と機能を図11に示すが、図中
のオフセットは0xFFFFF0000000からの相
対位置である。
【0073】CSRアーキテクチャでは、0xFFFF
F0000200からシリアルバスに関するレジスタが
配置されていて、それらのレジスタの位置と機能を図1
2に示す。
【0074】また0xFFFFF0000800から始
まる場所には、シリアルバスのノード資源に関する情報
が配置されていて、それらのレジスタの位置と機能を図
13に示す。
【0075】CSRアーキテクチャでは、各ノードの機
能を表すためConfigurationn ROMを持っている
が、このROMには最小形式と一般形式があり、xFF
FFF0000400から配置される。
【0076】最小形式では図14のようにベンダIDを
表しているだけであり、このIDは24ビットで表され
る全世界で固有の数値である。
【0077】一般形式では、図15のような形式でノー
ドに関する情報を持っているが、この場合のベンダID
はroot_directoryに持つことができる。
【0078】また、bus_info_blockとroot_leafには、
ベンダIDを含んだ64ビットの全世界で固有な装置番
号を持っている。
【0079】この装置番号は、バスリセットなどの再構
成後に継続してノードを認識するために使用する。
【0080】≪シリアルバス管理≫IEEE1394バ
スのプロトコルは、図3に示すようにフィジカルレイ
ヤ、リンクレイヤ、トランザクションレイヤから構成さ
れている。
【0081】この中でのバス管理は、CSRアーキテク
チャに基づいたノードの制御とバス資源管理の為の基本
的な機能を提供している。
【0082】バス管理を行うノードはバス上で唯一存在
して動作するもので、このバス管理ノードはシリアルバ
ス上の他のノードに管理可能を提供するが、この管理機
能にはサイクルマスタの制御や、性能の最適化、電源管
理、伝送速度管理、構成管理などがある。
【0083】このバス管理機能は大きく分けて、バスマ
ネージャ、アイソクロノスリソースマネージャと、ノー
ド制御の3つの機能から構成される。
【0084】はじめにノード制御とは、CSRによって
フィジカルレイヤ、リンクレイヤ、トランザクションレ
イヤ、アプリケーションでのノード間通信を可能にする
管理機能である。
【0085】次にアイソクロノスリソースマネージャと
は、シリアルバス上で同期型のデータ伝送を行うために
必要となる管理機能で、アイソクロノスデータの伝送帯
域幅とチャネル番号の割り付けを管理するものである。
【0086】この管理を行うノードはバス上に唯一存在
するもので、バスの初期化フェーズ後にアイソクロノス
リソースマネージャ機能を持ったノードの中から動的に
選出される。
【0087】また、このノードはバスマネージャノード
の決定を行うものでもあるが、バス上にバスマネージャ
のノードが存在しない構成では、電源管理やサイクルマ
スタの制御のようなバスマネージャの一部の機能をアイ
ソクロノスリソースマネージャノードが行う。
【0088】更にバスマネージャとは、アプリケーショ
ンに対するバス制御のインターフェースを提供するサー
ビスを行う管理機能であり、その制御インターフェース
にはシリアルバス制御要求(SB_CONTROL.request)、シ
リアルバス・イベント制御確認(SB_CONTROL.confirmat
ion)、シリアルバス・イベント通知(SB_EVENT.indica
tion)がある。
【0089】SB_CONTROL.requestは、バスのリセット、
バスの初期化、バスの状態情報などをアプリケーション
からバス管理に要求する場合に利用する。
【0090】SB_CONTROL.confirmationは、 SB_CONTRO
L.requestの結果は、バスマネージャからアプリケーシ
ョンに確認通知するものである。
【0091】SB_EVENT.indicationは、バスマネージャ
からアプリケーションに対して非同期に発生するイベン
トを通知する為のものである。
【0092】≪データ伝送プロトコル≫IEEE139
4でのデータ伝送は、周期的に送信する必要のある同期
データ(アイソクロナス・パケット)と、任意のタイミ
ングでのデータ送受信が許容される非同期データ(アシ
ンクロナス・パケット)とが同時に存在し、なおかつ同
期伝送データのリアルタイム性を保証している。
【0093】データ伝送では、伝送に先立ってバス使用
権を要求し使用承諾件を得るために、バス・アービトレ
ーションを行う。
【0094】アシンクロナス伝送においては、送信ノー
ドIDと受信ノードIDが伝送データと一緒にパケット
・データとして送られるが、受信ノードは自分のIDを
確認してパケットを受け取るとアクノリッジ信号を送信
ノードに返すことで、一つのトランザクショが完了す
る。
【0095】アイソクロナス伝送においては、送信ノー
ド側で伝送速度と一緒にアイソクロノス・チャネルを要
求し、チャネルIDが伝送データと一緒にパケットデー
タとして送られ、受信ノード側では自分が欲しいチャネ
ルIDを確認してデータパケットを受け取る。必要とな
るチャネル数と伝送速度はアプリケーションレイヤで決
定される。
【0096】これらのデータ伝送プロトコルは、フィジ
カルレイヤ、リンクレイヤ、トランザクションレイヤの
三つのレイヤによって定義される。
【0097】フィジカルレイヤは、バスとの物理的・電
気的インターフェースや、ノード接続の自動認識、バス
上のノード間のバス使用権(バス・アービトレーショ
ン)などを行う。リンクレイヤは、アドレッシング、デ
ータチェック、パケット送受信、そしてアイソクロナス
伝送の為のサイクル制御を行う。またトランザクション
レイヤは、アシンクロナス・データに関する処理を行
う。以下に各レイヤにおける処理について説明する。
【0098】≪フィジカルレイヤ≫フィジカルレイヤに
おける、バス・アービトレーションを説明するための図
として図16にバス使用要求、図17にバス使用許可の
図を示し、以下、これらの図を参照して説明する。
【0099】アービトレーションが始まると、1つもし
くは複数のノードが親ノードに向かって、それぞれバス
使用権の要求を発する。図16のノードCとノードFが
バス使用権の要求を発しているノードである。これを受
けた親ノード(図16ではノードA)は更に親ノードに
向かって、バス使用権の要求を発する(中継する)。こ
の要求は最終的に調停を行うルートに届けられる。
【0100】このバス使用要求を受けたルートノード
は、どのノードにバスを使用させるかを決める。この調
停作業はルートノードのみが行えるものであり、調停に
よって勝ったノードにはバスの使用許可を与える。図1
7ではノードCに使用許可が与えられ、ノードFの使用
は拒否された図である。アービトレーションに負けたノ
ードに対してはDP(data prefix)パケットを送り、
拒否されたことを知らせる。拒否されたノードのバス使
用要求は次回のアービトレーションまで待たされる。以
上のようにして、アービトレーションに勝ってバスの使
用許可を得たノードは、以降データの伝送を開始でき
る。
【0101】ここで、アービトレーションの一連の流れ
をフローチャート図18を参照して説明する。
【0102】ノードがデータ伝送を開始できるために
は、バスがアイドル状態であることが必要である。先に
行われていたデータ伝送が終了して、現在バスが空き状
態であることを認識するためには、各伝送モードで個別
に設定されている所定のアイドル時間ギャップ長(例.
サブアクション・ギャップ)を経過する事によって、各
ノードは自分の伝送が開始できると判断する。
【0103】まずステップS401で、Asyncデータ、I
soデータ等それぞれ伝送するデータに応じた所定のギャ
ップ長が得られたかを判断する。所定のギャップ長が得
られない限り、伝送を開始するために必要なバス使用権
の要求はできないので、所定のギャップ長が得られるま
で待つ。ステップS401で所定のギャップ長が得られ
たらステップS402に進み、伝送すべきデータがある
か判断し、ある場合はステップS403に進み、そのデ
ータを伝送するためにバスを確保するようにバス使用権
の要求をルートに対して発する。このときの、バス使用
権の要求を表す信号の伝達は、図16及び図17に示し
たように、ネットワーク内各機器を中継しながら、最終
的にルートに届けられる。尚、ステップS402で伝送
するデータがない場合はステップS401に戻る。
【0104】次にステップS404に進み、ステップ4
03のバス使用要求を1つ以上ルートが受信したら、ル
ートはステップS405で、その使用要求を出したノー
ドの数を調べる。ステップS405での選択値がノード
数=1(使用権要求を出したノードは1つ)であればス
テップS408に進み、そのノードに直後のバス使用許
可が与えられることとなる。ステップS405での選択
値がノード数が1以上(>1)(使用要求を出したノー
ドは複数)であればステップS406に進み、ルートは
使用許可を与えるノードを1つに決定する調停作業を行
う。この調停作業は公平なものであり、毎回同じノード
ばかりが許可を得る様なことはなく、平等に権利を与え
ていくような構成となっている。
【0105】ステップS407で、ステップS406で
使用要求を出した複数ノードの中からルートが調停して
使用許可を得た1つのノードと、敗れたその他のノード
に分ける選択を行う。ここで、調停されて使用許可を得
た1つのノード、またはステップS405の選択値から
使用要求ノード数=1で調停無しに使用許可を得たノー
ドには、ステップS408で、ルートはそのノードに対
して許可信号を送る。こうして許可信号を得たノード
は、受け取った直後に伝送すべきデータ(パケット)を
伝送開始する。また、ステップS406の調停で敗れ
て、バス使用が許可されなかったノードにはステップS
409としてルートから、アービトレーション失敗を示
すDP(data prefix)パケットを送られ、これを受け
取ったノードは再度伝送を行うためのバス使用要求を出
すため、ステップS401まで戻り、所定ギャップ長が
得られるまで待機する。
【0106】以上がアービトレーションの流れを説明し
た、フローチャート図18の説明である。
【0107】≪トランザクションレイヤ≫トランザクシ
ョンの種類には、リード・トランザクション、ライト・
トランザクション、ロック・トランザクションの3種類
がある。
【0108】リード・トランザクションでは、イニシエ
ータ(要求ノード)がターゲット(応答ノード)の特定
アドレスのメモリのデータを読み取る。またライト・ト
ランザクションでは、イニシエータがターゲットの特定
アドレスのメモリにデータを書き込む。更に、ロック(l
ock)・トランザクションでは、イニシエータからターゲ
ットに参照データと更新データを伝送し、その参照デー
タとターゲットのアドレスのデータを組み合わせて処理
を行い、ターゲットの指定されたアドレスのデータを更
新する。
【0109】図19は、トランザクションレイヤにおけ
るCSRアーキテクチャに基づいた、読み出し(リー
ド)、書き込み(ライト)、ロックの各コマンドの要求
・応答プロトコルを説明するための図で、図に示した要
求・通知・応答・確認はトランザクションレイヤでのサ
ービス単位になっている。
【0110】トランザクション要求(TR_DATA.reques
t)は応答ノードに対するパケットの伝送、トランザク
ション通知(TR_DATA.indication)は応答ノードに要求
が届いたことの通知、トランザクション応答(TR_DATA.
response)はアクノリッジの送信、トランザクション確
認(TR_DATA.confirmation)はアクノリッジの受信であ
る。
【0111】≪リンクレイヤ≫図20は、リンクレイヤ
におけるサービスを説明する図で、応答ノードに対する
パケットの伝送を要求するリンク要求(LK_DATA.reques
t)、応答ノードにパケット受信を通知するリンク通知
(LK_DATA.indication)、応答ノードからのアクノリッ
ジ送信のリンク応答(LK_DATA.response)、要求ノード
のアクノリッジ送信のリンク確認(LK_DATA.confirmati
on)のサービス単位に分けられる。
【0112】1つのパケット伝送プロセスはサブアクシ
ョンと呼ばれ、アシンクロナス・サブアクションとアイ
ソクロナス・サブアクションの2つの種類がある。
【0113】各サブアクションの動作について、以下に
説明する。
【0114】≪アシンクロナス・サブアクション≫アシ
ンクロナス・サブアクションは、非同期データ伝送であ
る。図21にアシンクロナス伝送における時間的な遷移
状態を示す。図21の最初のサブアクション・ギャップ
(subaction gap)は、バスのアイドル状態を示すもので
ある。このアイドル時間が一定値になった時点で、伝送
を希望するノードはバスが使用できると判断して、バス
獲得のためのアービトレーションを実行する。
【0115】アービトレーションでバスの使用許可を得
ると、次にデータ伝送がパケット形式で実行される。デ
ータ伝送後、受信したノードは伝送されたデータに対し
ての受信結果のack(受信確認用返送コード)を(ac
k gap)という短いギャップの後、返送して応答する
か、応答パケットを送ることによって伝送が完了する。
この「ack」は、4ビットの情報と4ビットのチェッ
クサムからなり、成功か、ビジー状態か、ペンディング
状態であるかといった情報を含み、すぐに送信元にノー
ドに返送される。
【0116】図22は、アシンクロナス伝送のパケット
フォーマットの一例を示す図ある。このパケットには、
データ部(data field)及び誤り訂正用のデータCRC(d
ata_CRC)の他にヘッダ部があり、そのヘッダ部には図2
2に示したような、目的ノードID(destination_ID)、
ソースノードID(source_ID)、伝送データ長さ(data_l
ength)や各種コード(extended_tcode)及び誤り訂正用の
ヘッダCRC(header_CRC)などが書き込まれ、伝送が行
われる。
【0117】また、アシンクロナス伝送は自己ノードか
ら相手ノードへの1対1の通信である。伝送元ノードか
ら伝送されたパケットは、ネットワーク中の各ノードに
行き渡るが、自分宛てのアドレス以外のものは無視され
るので、宛先の1つのノードのみを読込むことになる。
【0118】以上がアシンクロナス伝送の説明である。
【0119】≪アイソクロナス・サブアクション≫アイ
ソクロナス・サブアクションは同期データ伝送である。
1394シリアルバスの最大の特徴であるともいえるこ
のアイソクロナス伝送は、特にビデオ映像データや音声
データといったマルチメディアデータなど、リアルタイ
ムな伝送を必要とするデータの伝送に適した伝送モード
である。
【0120】また、アシンクロナス伝送(非同期)が1
対1の伝送であったのに対し、このアイソクロナス伝送
はブロードキャスト機能によって、伝送元の1つのノー
ドから他の全てのノードへ一様に伝送される。
【0121】図23は、アイソクロナス伝送における時
間的な遷移状態を説明するための図である。
【0122】アイソクロナス伝送は、バス上で一定時間
毎に実行される。この時間間隔をアイソクロナスサイク
ルと呼ぶ。アイソクロナスサイクル時間は125μsで
ある。この各サイクルの開始時間を示し、各ノードの時
間調整を行う役割を担っているのがサイクル・スタート
・パケットである。このサイクル・スタート・パケット
を送信するのは、サイクル・マスタと呼ばれるノードで
あり、1つ前のサイクル内の伝送終了後、所定のアイド
ル期間(サブアクションギャップ(subaction gap))を
経た後、このサイクルの開始を告げるサイクル・スター
ト・パケットを送信する。このサイクル・スタート・パ
ケットの送信される時間間隔が125μsとなる。
【0123】また、図23においてチャネルA、チャネ
ルB、チャネルCと示したように、1サイクル内におい
て複数種のパケットがチャネルIDをそれぞれ与えられ
ることによって、区別して伝送できる。これによって同
時に複数ノード間でのリアルタイム伝送が可能であり、
また受信するノードでは自分が欲しいチャネルIDのデ
ータのみを取り込む。このチャネルIDは送信先のアド
レスを表すものではなく、データに対する論理的な番号
を与えているに過ぎない。よって、あるパケットの送信
は1つの送信元ノードから他の全てのノードに行き渡る
ブロードキャストで伝送されることになる。
【0124】アイソクロナス伝送のパケット送信に先立
って、アシンクロナス伝送同様アービトレーションが行
われる。しかし、アシンクロナス伝送のように1対1の
通信ではないので、アイソクロナス伝送にはack(受
信確認用返信コード)は存在しない。
【0125】また、図23に示したiso gap(ア
イソクロナスギャップ)とは、アイソクロナス伝送を行
う前にバスが空き状態であると確認するために必要なア
イドル期間を表している。この所定のアイドル期間を経
過すると、アイソクロナス伝送を行いたいノードはバス
が空いていると判断し、伝送前のアービトレーションを
行うことができる。
【0126】図24は、アイソクロナス伝送のパケット
フォーマットの一例を示す図である。
【0127】各チャネルに分かれた、各種のパケットに
はそれぞれデータ部(data_field)及び誤り訂正用のデー
タCRC(data_CRC)の他にヘッダ部(header)があり、そ
のヘッダ部には図24に示したような、伝送データ長(d
ata_length)やチャネルNO(channel)、その他各種コー
ド及び誤り訂正用のヘッダCRC(header_CRC)などが書
き込まれ、伝送が行われる。
【0128】以上がアイソクロナス伝送の説明である。
【0129】それぞれのパケットフォーマットにおけ
る、パケットフィールドの詳細を図25に示す。
【0130】≪バス・サイクル≫実際の1394シリア
ルバス上の伝送では、アイソクロナス伝送と、アシンク
ロナス伝送は混在できる。その時の、アイソクロナス伝
送とアシンクロナス伝送が混在した、バス上の伝送状態
の時間的な遷移の様子を表した図を図26に示す。
【0131】アイソクロナス伝送はアシンクロナス伝送
より優先して実行される。その理由は、サイクル・スタ
ート・パケットの後、アシンクロナス伝送を起動するた
めに必要なアイドル期間のギャップ長(サブアクション
ギャップ)よりも短いギャップ長(アイソクロナスギャ
ップ)で、アイソクロナス伝送を起動できるからであ
る。従ってアシンクロナス伝送より、アイソクロナス伝
送は優先して実行されることとなる。
【0132】図26に示した、一般的なバスサイクルに
おいて、サイクル#mのスタート時にサイクル・スター
ト・パケット(CSP)がサイクル・マスタから各ノードに
伝送される。これによって、各ノードで時刻調整を行
い、所定のアイドル期間(アイソクロナスギャップ)を
待ってからアイソクロナス伝送を行うべきノードはアー
ビトレーションを行い、パケット伝送に入る。図26で
はチャネルe(ch e)とチャネルs(ch s)とチャネルk(c
h k)が順にアイソクロナス伝送されている。
【0133】このアービトレーションからパケット伝送
までの動作を、与えられているチャネル分繰り返し行っ
た後、サイクル#mにおけるアイソクロナス伝送が全て
終了したら、アシンクロナス伝送を行うことができるよ
うになる。アイドル時間が、アシンクロナス伝送が可能
なサブアクションギャップ(subaction gap)に達するこ
とによって、アシンクロナス伝送を行いたいノードはア
ービトレーションの実行に移れると判断する。
【0134】但し、アシンクロナス伝送が行える期間
は、アイソクロナス伝送終了後から、次のサイクル・ス
タート・パケットを伝送すべき時間(cycle synch)ま
での間にアシンクロナス伝送を起動するためのサブアク
ションギャップが得られた場合に限っている。
【0135】図26のサイクル#mでは、3つのチャネ
ル分のアイソクロナス伝送と、その後、アシンクロナス
伝送(含むack)が2パケット(パケット1、パケッ
ト2)が伝送されている。このアシンクロナス・パケッ
ト2の後は、サイクル(#m+1)をスタートすべき時
間(cyclecsynch)に到るので、サイクル#mでの伝送
は、ここまでで終わる。但し、非同期または同期伝送動
作中に次のサイクル・スタート・パケットを送信すべき
時間(cycle synch)に至ったとしたら、無理に中断せ
ず、その伝送が終了した後のアイドル期間を待ってから
次サイクルのサイクル・スタート・パケットを送信す
る。即ち、1つのサイクルが125μs以上続いたとき
は、その分次のサイクルは基準の125μsより短縮さ
れたとする。このようにアイソクロナス・サイクルは1
25μsを基準に超過、短縮し得るものである。
【0136】しかし、アイソクロナス伝送はリアルタイ
ム伝送を維持するために毎サイクルで必要であれば必ず
実行され、アシンクロナス伝送はサイクル時間が短縮さ
れたことによって次以降のサイクルにまわされることも
ある。
【0137】≪FCP≫AV/Cプロトコルでは、IE
EE1394バス上の装置を制御するためにFunctional
Control Protocol(FCP)が用意されている。
【0138】このFCPの制御コマンドの送信と応答に
は、IEEE1394で規定されているアシンクロナス
・パケットが用いられている。
【0139】FCPでは制御する側のノードをコントロ
ーラ、制御される側のノードをターゲットと呼び、コン
トローラからターゲットに送られるFCPパケットフレ
ームをAV/Cコマンドフレーム、逆にターゲットから
コントローラに送られるFCPパケットフレームをAV
/Cレスポンス・フレームと呼ぶ。
【0140】図27においてノードA(node A)がコント
ローラ(controller)、ノードB(node B)がターゲット(t
arget)の場合を示していて、それぞれに用意されている
レジスタアドレスのうち、0000B00番地(16進
数)からの512バイトがコマンドレジスタ、0000
D00番地からの512バイトがレスポンスレジスタで
あり、それぞれアシンクロナス伝送を用いたパケットフ
レームにより、指定されたアドレスのレジスタにデータ
が書き込まれる。
【0141】この時のコントローラからのAV/Cコマ
ンドフレームの送信と、ターゲットからのAV/Cレス
ポンスフレームの応答の関係はAV/Cトランザクショ
ンと呼ばれ、一般的なAV/Cトランザクションでは、
ターゲットはコマンドフレームを受け取ってから100
ms以内にコントローラに対してレスポンスフレームを
応答する必要がある。
【0142】図28は、FCPパケットフレームを含ん
だアシンクロナス伝送のパケットフォーマットを示した
図で、図22に示したアシンクロナスデータパケットの
データ領域に対して、コマンドフレームやレスポンスフ
レームを挿入してAV/Cトランザクションが実行され
る。
【0143】図29は、AV/Cコマンドフレーム、図
30はAV/Cレスポンスフレームの構造を示したもの
で、FCPパケットフレームとしては、ヘッダのctype,
response, subunit_type, Subunit_IDの後に、FCP
のデータ部分が繋がった構造になっている。
【0144】ここで、ctypeはコマンドフレームにおけ
るコマンドタイプを示していて、CONTROL・STATUS・INQ
UIRY・NOTIFYの各状態を示している。
【0145】また、responseはレスポンスフレームにお
けるレスポンスコードを示していて、ACCEPTED・REJECT
ED・IN TRANSITION・IMPLEMENTED・CHANGED・INTERIM等
の各状態を示している。
【0146】また、subunit_typeはデバイスの分類、su
bunit_IDは、インスタンス番号を示している。
【0147】FCPのデータ部分はオペコード+オペラ
ンドの構成になっていて、各種のAV/Cコマンドを使
ってターゲットの制御を行ったり、AV/Cレスポンス
の応答をすることができる。
【0148】以上が、IEEE1394シリアルバスの
概略である。
【0149】次に本発明の実施の形態として、図1に示
すような1394シリアルバスケーブルで各デジタル機
器が接続されたシステムの場合で説明する。
【0150】図1におけるバス構成は、実線で描いた1
394シリアルバスで接続された、プリンタ装置10
2、ホスト装置(PC)103との間で構成されてお
り、各機器間で、1394シリアルバスの仕様に基づい
たデータ伝送が行なえるように構成されている。また、
1394シリアルバスの接続方法は、図1のような接続
に限ったものではなく、任意の機器間での接続でバスを
構成しても可能であり、また図1に示した機器のほかに
もデータ通信機器が接続された構成であってもよい。な
お、この図1のネットワークは一例とした機器群であっ
て、接続されている機器は、ハードディスクなどの外部
記憶装置や、CD−R、DVD等の1394シリアルバ
スでネットワークが構成できる機器なら何であってもよ
い。
【0151】図31は、図1の各機器の内部ブロック図
であり、102はプリンタ、103はPCである。
【0152】PC103の構成要素として、61は他の
デバイスとのデータのやり取りを行う1394・I/F
部、62はPC103の内部の各デバイス間のデータの
やり取りを行うPCIバス、63はPC103全体の主
制御を行うMPU、65は表示を行うディスプレイ、6
6は記憶補助装置となるハードディスク、67は主記憶
用のメインメモリ、68は操作部で、オペレータにより
操作され、その操作に応じて各種データを入力するキー
ボードやマウス等を備えている。
【0153】次にプリンタ装置102の構成要素を説明
する。19は1394・I/F部、20はデータセレク
タ、23はプリント画像を保持するためのデータラッ
チ、24はプリントヘッド、25はプリントヘッド24
の走査や紙送りの制御を行なうための駆動源である各種
モータを駆動するためのモータドライバである。26は
プリンタコントローラで、例えばマイクロコンピュータ
等を備え、プリンタ装置102全体の制御を行ってい
る。27はプリンタ操作部で、オペレータにより操作さ
れる各種キーや液晶等のディスプレイを備えている。
【0154】初めにPC103での動作を説明すると、
オペレータが操作部68を使ってPC103のグラフィ
ック処理のアプリケーションを実行している環境で、ハ
ードディスク66に保存されていた一般的なRGBフォ
ーマットの画像データ・ファイルとして記憶されている
画像データを印刷する場合を考える。
【0155】まず画像データの変換処理として、アプリ
ケーションによって画像データをメインメモリ67に一
時的に書き込み、MPU63によって画像変換処理を行
い、RGBフォーマットのデータから、プリンタ装置1
02のプリントヘッド25の出力形式に適合したYMC
Kフォーマットの2値化したデータに変換して、再度ハ
ードディスク66に書き込む。次にアプリケーションに
よる印刷指示命令を受けると、ハードディスク66に記
憶されている2値化された画像データを適時読み出し、
1394・I/Fを介してプリンタ装置102に対し
て、その画像データを伝送する。この時、プリンタ装置
102の動作に合わせた、プリントヘッド24の走査や
改行・排紙命令などのプリンタ制御用のコマンドデータ
を先に伝送しておき、印刷する際は画像データのみリア
ルタイム伝送しながら実行する。
【0156】次に、プリンタ装置102の動作について
説明する。1394・I/F部19を介して入力された
データは、データセレクタ20で各データの種類毎に分
類される。まずアイソクロナス伝送により伝送された画
像データは、データラッチ23に送られ、プリントヘッ
ド24の縦1列分に相当するデータ量を保持すると、プ
リンタコントローラ26からのトリガ信号のタイミング
で、プリントヘッド24タを出力する。また、コマンド
データはプリンタコントローラ26のメモリ21に一時
貯えられ、アイソクロナス伝送による印刷起動開始命令
(プリントスタートコマンド)が発行されると、プリン
トヘッド24走査やインク吐出トリガのタイミングの制
御を行う。このとき、データラッチ23に入力されたプ
リント用の画像データは、PC103でプリントに適し
た画像処理が施されたYMCKの2値化されたデータな
ので、直接、プリントヘッド24へデータを伝送して印
刷を行うことができる。さらにコマンドデータに基づく
制御信号は、プリンタコントローラ26からドライバ2
5を介してプリンタ装置102の各モータを作動させ、
それらモータ制御に合わせたタイミングでデータラッチ
23に書き込まれた画像データをプリントヘッド24に
出力して印刷動作が行われる。プリンタ操作部27は、
紙送りやリセット、インクチェック、プリンタ動作のス
タンバイ/開始/停止等の動作を指示入力するためのも
のであり、その指示入力に応じてプリンタコントローラ
26によって各部の制御がされる。このようにPC10
3上で2値化した画像データを同期伝送でプリンタ装置
102へ伝送することにより、大容量の画像データで
も、プリンタ装置102内に大容量のプリントバッファ
を持たせることなく印刷動作を行うことが可能となる。
【0157】図32は、本実施の形態における1394
シリアルバス上の画像データのアイソクロナス伝送のタ
イミングと、プリンタ装置102のメモリ21に一時保
持されたコマンドデータを読み出して、プリンタコント
ローラ26から出力される伝送トリガ信号、データイネ
ーブル信号、及びプリントヘッドのモータ駆動励磁相信
号のタイミングの関係を示した図である。
【0158】1394シリアルバスには、125μs単
位でサイクルスタートパケットが発生していて、このサ
イクルスタートパケットに同期してアイソクロナス伝送
でデータが送られてくる。ここで印刷を行う際、プリン
トヘッド24の動きに合わせてPC103から画像デー
タが伝送される必要があるので、プリンタ装置102は
プリントスタート(PrintStart)用の画像データが送られ
てきたタイミングで、印刷スタートのタイムカウントを
開始する。この時、メモリ21に一時保持しているコマ
ンドデータ群がプリントヘッド24を駆動するシーケン
ス制御の情報になっているので、このプリントスタート
データを受けた後のタイムカウントに同期させながら、
メモリ21から順次コマンドデータを読み出し、プリン
トヘッド24の走査のためモータ相信号(図中では1−
2相励磁の場合を示す)を切り替えながらヘッド24を
加速駆動する。そしてキャリッジ(ヘッド)が等速領域
に入ったタイミングから画像データをPC103から取
り込み、次の吐出タイミングで伝送トリガを出力してイ
ンク吐出し印刷を行う。尚、図32における画像データ
の“00H”、“FCH”、“12H”、“12H”、
“12H”及び“FCH”は図35の文字パターンデー
タに対応している。また、ここで“H”は16進数を示
している。
【0159】即ち、PC103からは、設定された位置
(等速領域)にプリントヘッド24が到達して伝送トリ
ガが発行されるタイミングまでに画像データが次々に伝
送され、プリントヘッド24の動きに同期した印刷制御
を行うことができる。ここでの画像データはインクジェ
ットプリンタ装置102のプリントデータに対応した2
値のYMCKデータに変換されているので、プリンタ装
置102はプリンタバッファ等を介さずにデータラッチ
23を経由して、直接プリントヘッド24にプリントデ
ータを伝送することができる。こうして1行分の画像デ
ータの伝送が完了した後は、メモリ21に記憶されたコ
マンドデータに従ってプリントヘッド24を走査駆動す
るキャリッジモータが減速され、最終的には1行分の画
像データを印刷したところで停止する。以上がアイソク
ロナス伝送を用いた印刷動作シーケンスの説明である。
【0160】図33は、PC103とプリンタ装置10
2の間でのアシンクロナス及びアイソクロナスを使った
印刷のためのデータ伝送の順序を示したフローチャート
である。
【0161】まずS501は、PC103からのアシン
クロナス伝送を用いたコマンドデータ伝送要求コマンド
で、プリンタ装置102の取り込み準備ができていれば
レスポンスデータを使った伝送許可が指示される。また
プリンタ装置102の準備ができていない場合は、レス
ポンスデータを使って伝送待機が指示され、再度PC1
03が問い合わせるまで待機する。
【0162】いま、PC103に伝送許可が返されると
次のステップとしてS502では、プリントヘッド24
を1行分動作させるべき制御シーケンスで構成されたコ
マンドデータが、アシンクロナス伝送を用いて一気にプ
リンタ装置102に送られる。ここでのコマンドデータ
の伝送には、特にレスポンスは必要なくデータ伝送のみ
が行われる。
【0163】次にS503では、PC103から、アシ
ンクロナス伝送を用いた画像データ伝送要求コマンドが
送信され、プリンタ装置102が既に印刷可能状態にな
っていれば、レスポンスデータによる伝送許可が指示さ
れる。プリンタ装置102が印刷が可能な状態に至って
いなければ、このレスポンスデータを使って伝送待機を
指示し、再度PC103から問い合わせがくるまで待機
する。
【0164】S504は、画像データ伝送が許可された
場合のステップを示し、PC103が、プリントヘッド
24の動作に合わせて1行目の画像データをアイソクロ
ナス伝送で送るステップである。初めプリントスタート
のデータを伝送したタイミングから印刷動作が開始さ
れ、メモリ21のコマンドデータを順次読み出しながら
任意のタイミングでプリントヘッド24のモータ制御信
号と伝送トリガ信号を出力する。この時PC103は、
伝送トリガの発生するタイミングより前に画像データを
伝送しておくようなリアルタイムでのデータ伝送を行う
ので、プリンタ装置102にプリントバッファを設ける
必要はない。こうして1行分のデータを伝送し終わった
ところで印刷を完了するが、印刷の動作モードが片方向
印刷であれば、2行目の印刷のためヘッド位置のリター
ン動作と紙の改行動作を行う必要があるが、印刷モード
が両方向印刷であれば紙の改行動作のみで良い。
【0165】S505は、PC103から2行目のアシ
ンクロナス伝送による画像データの伝送要求コマンド
で、プリンタ装置102が既に2行目の印刷可能状態に
なっていればレスポンスデータを使った伝送許可が指示
される。一方、プリンタ装置102が2行目の印刷が可
能な状態に至っていなければ、レスポンスデータを使っ
て伝送待機を指示し、再度PC103から問い合わせが
くるまで待機させる。
【0166】S506は、PC103から、2行目の画
像データをプリンタ装置102の印刷動作に合わせてア
イソクロナス伝送で送るステップである。
【0167】以上、この動作を繰り返すことで1ページ
分の印刷を行うことができる。
【0168】図34は、アイソクロナス伝送による画像
データのパケット伝送が1394シリアルバス上で伝送
エラーとなり、印刷中に正しいデータ伝送が行われなか
った場合の説明するための図である。
【0169】S501からS504までは図33と同様
の処理であるが、アイソクロナス伝送でエラーがあった
場合は、S507において、画像データ伝送要求コマン
ドに対するレスポンスデータで画像データのリトライを
指示する画像データ再送レスポンスを発行する。これに
対してPC103は、S508においてS504の時と
同様に、1行目の画像データを再度繰り返して出力を行
うことで、データパケットのエラーに対する処理を行う
ことができる。この時のレスポンスデータはどのパケッ
トがエラーであったかまでの確認は必要なく、PC10
3のから再出力される画像データは、前回出力した1行
目のものと全く同じデータで良い。即ち、エラーデータ
に対する処理は、プリンタ装置102側で行うように構
成されている。
【0170】この時のプリンタ装置102でのエラー処
理方法について、図35から図37を参照して説明す
る。
【0171】図35は、縦8ドット×横6ドットで形成
された画像データ「A」の文字パターン例を示す図であ
る。
【0172】このパターンと図32のタイミング図とを
参照すると、1回に8ドット分のインクを吐出するプリ
ントヘッド24を使用し、6回の伝送トリガを使って縦
8ドット×横6ドットのデータを印刷できることにな
る。この時に伝送する画像データは、印刷する順に、
“00H”、“FCH”、“12H”、“12H”、
“12H”、“FCH”となる。
【0173】図36は、データ伝送エラーが発生して2
番目のデータ“FCH”がプリンタ装置102に送られ
なかった場合を示した図である。エラーパケットがあっ
た場合は、データが送られない代わりにエラーフラグだ
けが送られてくるので、その時に、プリンタ装置102
はエラーとなった画像データを“00H”に置き換えて
処理を行う。即ち、印刷結果としては左から2列目のデ
ータが抜けた形にして動作シーケンスを完了する。
【0174】図32のデータイネーブル信号は、この場
合の動きを示したもので、2番目のデータ“FCH”が
エラーパケットだった場合、このデータイネーブル信号
をディセーブルにセットし、伝送データの出力を“00
H”に変換してしまう。その後、伝送トリガを発行した
後に、データイネーブル信号を再度イネーブルにセット
し直す。
【0175】図37は、伝送データのエラー補正を行う
ために再印刷をするためのデータを示した図である。
【0176】プリンタ装置102が片方向印刷の場合
は、そのプリンタ装置102は動作シーケンスが完了し
た段階で、紙の1行分の改行動作とヘッドのリターン動
作を行ってプリントヘッド24を初期位置に移動させ、
次の画像データの印刷を行う準備が整ったところで、画
像データ伝送要求コマンドが送られてきたら伝送許可レ
スポンスを発行する。しかし、その行の印刷においてエ
ラーパケットが発生していた時は記録紙の1行分の改行
を行わずにプリントヘッド24だけをリターンさせ、再
度前回と同じ画像データをそのまま送ってもらうように
PC103に対して再送レスポンスデータを発行する。
この時プリンタ装置102は、前回エラーが発生したデ
ータパケットの場所をエラーフラグにより記憶してある
ので、再度印刷を実行する時は、前回エラーでなかった
データ部をデータラッチ23の出力イネーブルビットを
ディスイネーブルにして“00H”に変換し、前回のエ
ラーフラグが存在しているデータパケット部分だけイネ
ーブルにして画像データをプリントヘッド24に伝送す
る。
【0177】図38はエラーリトライによる印刷動作の
処理について、1394シリアルバス上の画像データの
アイソクロナス伝送のタイミングと、メモリ21に一時
保持されたコマンドデータに伴いプリンタコントローラ
26から出力されるトリガ信号、データイネーブル信
号、及びモータ駆動信号のタイミングの関係を示した図
である。
【0178】この中でのデータイネーブル信号が、プリ
ンタ装置102で制御されるエラーパケット補正の信号
となり、前回のエラーフラグがあった2番目のパケット
“FCH”の時だけイネーブルになるように設定し、他
のパケットに対しては前回既に印刷が完了しているので
ディセーブルに設定することでエラー処理が行われる。
【0179】本実施の形態でのアシンクロナス伝送のコ
マンドとレスポンスのやり取りは、図29及び図30で
示したFCPのコマンドフレームとレスポンスフレーム
を用いて行う。
【0180】コマンドフレームの種類はctype(command
type)の4ビットで設定できるが、通常のコマンドの
時が“0H”、ステータスが“1H”になっている。こ
こでの拡張機能として、ctypeの値がプリンタの制御コ
マンドデータをレスポンス無しのFCPで送る時は“4
H”とし、同様に画像データをレスポンス無しのFCP
で送る時は“5H”に設定する。即ち、データを送る時
はctypeを“4H”や“5H”に設定し、オペランド・
オペコードの代わりに直接コマンドデータや画像データ
を埋め込むことが可能となる。通常のコマンドデータを
送る時はctypeの値を“0H”に設定し、オペランド・
オペコードの形でコマンドデータ伝送要求コマンドや画
像データ伝送要求コマンドを送出する。
【0181】また、コマンドフレームに対する返答は、
許可レスポンスや待機レスポンス、再送レスポンスをオ
ペコード・オペランドの形でレスポンスフレームを使い
伝送することで、トランザクション動作を実行すること
ができる。
【0182】このようなエラー処理により、画像データ
をアイソクロナス伝送を用いてプリンタ装置102に伝
送するシステムにおいて、エラーパケットが発生した場
合は再送レスポンスを使って画像データの再伝送要求を
行い、PC103側は前回と同じ画像データを送ること
でプリンタ装置102側でデータ補正を行うことが可能
となる。
【0183】即ち、PC103はデータパケット単位で
補正データをわざわざ作り直す必要がないので、データ
作成時間が短縮し、またプリンタ装置102とPC10
3の間で細かいやり取りを行う必要もなく、画像データ
伝送要求に対するレスポンスデータでエラーが有ったか
どうかをプリンタ装置102がPC103に発行するだ
けでエラー処理が実行される。
【0184】図39及び図40は、本実施の形態1の印
刷システムのプリンタ装置における処理を示すフローチ
ャートである。
【0185】まずステップS1で、PC103からのプ
リントスタートを受信するとステップS2に進み、キャ
リッジモータ(プリントヘッド24)の加速を開始し、
ステップS3で、その速度が等速になるとデータイネー
ブル信号をオンにする(ステップS4)。次にステップ
S5に進み、PC103からのデータを受信したかどう
かを調べ、受信するとステップS6で伝送トリガを出力
してデータラッチ23に、その受信したデータをラッチ
する。ステップS7では、その受信したデータブロック
にエラーがあるかどうかを調べ、エラーがないときはス
テップS8に進み、そのデータをプリントヘッド24に
出力してプリントする。そしてステップS9で、1行の
印刷が終了したかを調べ、終了していない時はステップ
S5に戻り、前述の処理を実行する。
【0186】一方、ステップS7でエラーが発生すると
ステップS13に進み、そのエラーが発生したデータブ
ロックの場所を記憶し、そのエラー部分をブランクでプ
リントする。そしてステップS9で1行のプリントが終
了するとステップS10に進み、その行でエラーが発生
していたかどうかを調べ、エラーが発生していない時は
ステップS11に進み、キャリッジリターン、1行分の
紙送りを実行してステップS12で、1頁の印刷が終了
したかを調べ、1頁の印刷処理が終了するまで前述の処
理を繰返す。
【0187】一方ステップS10でエラーが発生してい
た時はステップS15に進み、キャリッジリターンのみ
を行い、ステップS16でPC103に対してデータの
再送要求を発行する。そしてステップS17〜ステップ
S21で、前述のステップS2〜S6と同様に、キャリ
ッジの加速、PC103からのデータ受信を行ってデー
タラッチ23にラッチし、ステップS22で、データを
受信してラッチしたデータが、前回エラーが発生した箇
所に該当するデータであるかをみる。そうであればステ
ップS23に進み、そのエラー箇所に相当するデータ部
分をプリントし、そうでない時はそのデータを読み飛ば
す。
【0188】[実施の形態2の説明]一般、シリアル型
のインクジェットプリンタでは、ヘッドの解像度に対し
て紙の改行時の送り量の精度が悪いことが多いので、そ
のまま1行単位で印刷を行うと1行ごとの隙間(ムラ)
が目立ってしまう。そこで、印刷するデータを2回以上
に分けて、その分、紙の改行量を1/2以下に減らすこ
とで、ずらしながら重ね打ちをすることでムラを目立た
なくするマルチパス印刷が用いられている。このマルチ
パス印刷は、2回に分けた場合を2パス、3回に分けた
場合を3パス、4回に分けた場合を4パスと呼んでいる
が、2パスの場合は画像データをムラの目立たなくなる
ようなランダムパターンを使って2面のデータに分けて
1/2行単位で印刷を行うことで、1行単位での隙間を
発生させることなく1ページ分の画像データを印刷する
ことができる。3パス、4パスと回数が増える毎にムラ
は目立ちにくくなるが、その分印刷時間が長くなるとい
う欠点があるので、印刷品位とスピードは相反するもの
となっている。
【0189】ここで、1394シリアルバスのアイソク
ロナス伝送を用いた画像データを使いリアルタイムに印
刷するシステムにおいてマルチパス印刷を行った時につ
いて考えてみる。まず前述の実施の形態1のようにエラ
ーパケットが発生した際に再度前回と同じデータを使っ
て印刷を行う方式を使うと、ただでさえスピードの遅く
なっているマルチパス印刷が更に遅くなっていた。
【0190】そこで本実施の形態2では、アイソクロナ
ス伝送でエラー処理を行う場合に、画像データ伝送開始
コマンドに対するレスポンスデータに前回エラーだった
パケットデータの場所を特定できる情報を載せ、次に送
る画像データに対して前回エラーになってしまったデー
タパケットのデータ部分だけを重ねてしまう。即ち、エ
ラーでブランクデータになってしまった部分の画像デー
タを次の画像データに重ねてPC103側で処理するこ
とにより、プリンタ装置102はそのまま画像データを
印刷するだけでエラー処理を行うことが可能となり、印
刷時間も余計にかかることがなくなる。
【0191】この場合の処理を図41のフローチャート
を参照して説明する。
【0192】図41は、PC103で実行される、プリ
ンタ装置102へのマルチパス・プリントデータ(この
例ではプリンタ装置102は、2パスでプリントする)
の送信処理を示すフローチャートである。
【0193】まずステップS21で、1パス目の印刷デ
ータを、前述の実施の形態1と同様にしてプリンタ装置
102に送信する。ステップS32では、1パス目のデ
ータの送信後、プリンタ装置102からエラー再送情報
が送られてきたかどうかを調べ、そうでないときはステ
ップS34に進み、2パス目のデータを伝送する。
【0194】1パス目のデータ伝送でエラーが発生した
ときはステップS33に進み、次に送信する2パス目の
データに、1パス目でエラーが発生した印刷データ部分
を重ねた新たな2パス目の印刷データを作成してプリン
タ装置102に送信する。これにより、プリンタ装置1
02は、通常のデータ受信の場合と同様にして印刷する
ことができる。また2パス目でエラーが発生した時は、
PC103は、その2パス目のデータのうち、エラーが
生じた部分だけを再送しても良く、あるいは前述の実施
の形態1と同様に、再度2パス目のデータ全部を再送
し、プリンタ装置102で該当箇所を判断して印刷する
ようにしても良い。
【0195】以上説明したように本実施の形態によれ
ば、従来のインターフェースの問題点を極力解消した、
各デジタル機器に搭載可能な汎用的インターフェース
(例えばIEEE1394シリアル・インターフェー
ス)を用い、PCやプリンタ等の周辺機器、或いはデジ
タルスチルカメラやデジタルビデオカメラ等の記録再生
装置をネットワーク接続したときの、各デジタル機器間
のデータ通信を高速に行うリアルタイムデータ伝送で行
い、その時のデータ欠落の補正処理を実行する手段を提
供するものである。
【0196】また、PC103からプリンタ装置102
へ印刷を実行するための画像データをアイソクロナス伝
送で送ることで、プリンタ装置102は印刷に必要な部
分の画像データをリアルタイムで取り込みながら印刷を
行い、プリンタ装置102側で大容量のプリントバッフ
ァを持たない構成でも最適なデータ伝送手段を提供する
ものである。
【0197】更に、PCを使わずデジタルビデオカメラ
等のデータ出力機器からプリンタへ直接画像データを伝
送して印刷をするダイレクトプリントについても、同様
のシステム構成で実現が可能となる。
【0198】
【発明の効果】以上説明したように本発明によれば、ホ
ストより送信される印刷データにおけるデータの欠落を
補って印刷できる。
【0199】また本発明によれば、印刷装置における大
容量のプリントバッファを不要にして高速にプリントで
きるという効果がある。
【0200】また本発明によれば、印刷データにエラー
が発生した場合、そのエラーより効率良く復帰して高速
に印刷できるという効果がある。
【0201】
【図面の簡単な説明】
【図1】本発明の実施の形態の各デジタル機器を接続し
た印刷システムの構成を示した図である。
【図2】1394シリアル・インターフェースでのネッ
トワークの構成を示した図である。
【図3】1394シリアルバスの構成要素を示した図で
ある。
【図4】1394シリアルバスのアドレス空間を示した
図である。
【図5】1394シリアルバス・ケーブルの断面を示し
た図である。
【図6】1394シリアル・インターフェースでのDS
−Link符号化方式を示したタイミング図である。
【図7】1394シリアル・インターフェースでのバス
リセットからノードID決定までのシーケンスを示した
フローチャートである。
【図8】1394シリアル・インターフェースでのバス
リセットからノードID決定までのシーケンスを示した
フローチャートである。
【図9】1394シリアル・インターフェースでのバス
リセットからノードID決定までのシーケンスを示した
フローチャートである。
【図10】1394シリアル・インターフェースでのネ
ットワークの動作を示した図である。
【図11】1394シリアル・インターフェースでのC
SRアーキテクチャの機能を説明する図である。
【図12】1394シリアルバスに関するレジスタを説
明する図である。
【図13】1394シリアルバスのノード資源に関する
レジスタを説明する図である。
【図14】1394シリアルバスのConfigurationn RO
Mの最小形式を示した図である。
【図15】1394シリアルバスのConfigurationn RO
Mの一般形式を示した図である。
【図16】1394シリアルバスのバス使用要求を説明
する図である。
【図17】1394シリアルバスのバス使用許可を説明
する図である。
【図18】1394シリアルバスのアービトレーション
の流れを示したフローチャートである。
【図19】1394シリアルバスのトランザクションレ
イアのサービスを説明する図である。
【図20】1394シリアルバスのリンクレイアのサー
ビスを説明する図である。
【図21】1394シリアル・インターフェースにおけ
るアシンクロナス伝送の遷移状態を説明する図である。
【図22】1394シリアル・インターフェースにおけ
るアシンクロナス伝送のパケットフォーマットを示した
図である。
【図23】1394シリアル・インターフェースにおけ
るアイソクロナス伝送の遷移状態を説明する図である。
【図24】1394シリアル・インターフェースにおけ
るアイソクロナス伝送のパケットフォーマットを示した
図である。
【図25】1394シリアル・インターフェースにおけ
るアイソクロナス伝送のパケットフォーマットのフィー
ルドの詳細を示した図である。
【図26】1394シリアル・インターフェースにおけ
るアシンクロナス伝送、アイソクロナス伝送が混在した
場合の遷移状態を説明する図である。
【図27】1394シリアル・インターフェースにおけ
るトランザクションの動作を示した図である。
【図28】1394シリアル・インターフェースにおけ
るアシンクロナス伝送におけるFCPパケットフレーム
の構成を示した図である。
【図29】1394シリアル・インターフェースにおけ
るFCPパケットフレームにおけるコマンドフレームの
構成を示した図である。
【図30】1394シリアル・インターフェースにおけ
るFCPパケットフレームにおけるレスポンスフレーム
の構成を示した図である。
【図31】本発明の実施の形態を適用したプリンタ装置
とPCの構成を示すブロック図である。
【図32】本実施の形態におけるPCとプリンタ装置間
でのデータ伝送の流れを示すタイミング図である。
【図33】本実施の形態のPCとプリンタ間における印
刷のためのデータ伝送の順序を説明する図である。
【図34】本実施の形態のPCとプリンタ間におけるア
イソクロナス伝送のエラー発生時における、印刷のため
のデータ伝送の順序を説明する図である。
【図35】縦8ドット×横6ドットで形成された画像デ
ータ「A」の文字パターンデータの構成例を示す図であ
る。
【図36】データ伝送エラーが発生して2番目のデータ
“FCH”がプリンタ装置に送られなかった場合のデー
タを示した図である。
【図37】データ伝送エラに伴い、その伝送データエラ
ーを補正するために再印刷をするためのデータを示した
図である。
【図38】本実施の形態におけるPCとプリンタ装置間
でのデータ伝送におけるエラーリトライによるデータ伝
送の流れを示したタイミング図である。
【図39】本実施の形態1の印刷システムのプリンタ装
置における印刷処理を示すフローチャートである。
【図40】本実施の形態1の印刷システムのプリンタ装
置における印刷処理を示すフローチャートである。
【図41】本実施の形態2のPCにおける印刷データ伝
送処理を示すフローチャートである。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 ホストより印刷データをアイソクロナス
    伝送により印刷装置に伝送するデータ通信方法であっ
    て、 前記ホストは、前記印刷装置における印刷データ構造に
    変換した印刷データをアイソクロナス伝送により前記印
    刷装置の機能に合わせてデータブロック単位に伝送し、 前記データブロックの伝送後、前記データブロック内で
    のアイソクロナスパケット伝送におけるエラーが発生す
    ると当該エラーに関するエラー情報を前記印刷装置に保
    持し、次のデータブロックの伝送開始時に前記ホストに
    アシンクロナス伝送によりエラー情報を前記ホストに返
    送することを特徴とする通信方法。
  2. 【請求項2】 請求項1に記載のデータ通信方法であっ
    て、前記印刷装置は、前記エラーが発生したデータブロ
    ックの印刷データをブランクデータとして印刷し、前記
    ホストに返送したエラー情報に基づいて前記ホストから
    再送されるデータブロックのうち、当該エラーが発生し
    たデータブロックの印刷データを使用して再度印刷する
    ことにより前記エラーによる印刷を復帰させることを特
    徴とする。
  3. 【請求項3】 請求項1又は2に記載のデータ通信方法
    であって、前記印刷装置は、マルチパスによる印刷を行
    い、前記ホストは前記エラー情報によりエラーで欠落し
    たデータブロックの印刷データを、前記印刷装置の次の
    パスで印刷する印刷データの当該データブロックに重畳
    させて前記印刷装置に送信することを特徴とする。
  4. 【請求項4】 印刷装置に印刷データを伝送して印刷を
    行うデータ通信装置であって、 前記印刷装置における印刷データ構造に変換した印刷デ
    ータを作成するデータ変換手段と、 前記印刷データをアイソクロナス伝送により前記印刷装
    置の機能に合わせてデータブロック単位に伝送する伝送
    手段と、 前記伝送手段によるデータブロックの伝送後、前記デー
    タブロック内でのアイソクロナスパケット伝送における
    エラー発生が前記印刷装置から伝送されると、前記デー
    タブロックを前記印刷装置に再送する再送手段と、を有
    することを特徴とするデータ通信装置。
  5. 【請求項5】 請求項4に記載のデータ通信装置であっ
    て、前記印刷データは前記印刷装置におけるマルチパス
    印刷に対応するデータであり、前記エラーが発生したデ
    ータブロックの印刷データを、前記印刷装置において次
    のパスで印刷する印刷データの当該データブロックに重
    畳させて前記印刷装置に送信するデータ送信制御手段を
    更に有することを特徴とする。
  6. 【請求項6】 ホストよりアイソクロナス伝送による印
    刷データを受信して印刷する印刷装置であって、 前記印刷データの受信時、前記印刷データのアイソクロ
    ナスパケット伝送におけるエラーの発生を検知する検知
    手段と、 前記検知手段により検知された前記エラーに関するエラ
    ー情報を保持する保持手段と、 前記検知手段により検知された印刷データのエラー箇所
    をブランクのままでプリントするプリント手段と、 前記エラーの発生により前記ホストにデータの再送要求
    を発行する再送要求手段と、 前記再送要求手段による再送要求に応じて前記ホストよ
    り再送される印刷データのうち、前記保持手段に保持さ
    れているエラー情報に基づいて前記エラー箇所に該当す
    る印刷データ部分を判別する判別手段と、 前記判別手段により判別された印刷データ部分により前
    記エラー箇所を印刷する印刷制御手段と、を有すること
    を特徴とする印刷装置。
  7. 【請求項7】 請求項6に記載の印刷装置であって、前
    記ホストより伝送される印刷データはプリントヘッドの
    1回の駆動データに相当していることを特徴とする。
  8. 【請求項8】 ホストより印刷データをアイソクロナス
    伝送により印刷装置に伝送して印刷する印刷システムで
    あって、 前記ホストは、前記印刷装置における印刷データ構造に
    変換した印刷データをアイソクロナス伝送により前記印
    刷装置の機能に合わせてデータブロック単位に伝送し、 前記印刷装置は、 前記印刷データの受信時、前記印刷データのアイソクロ
    ナスパケット伝送におけるエラーの発生を検知する検知
    手段と、 前記検知手段により検知された前記エラーに関するエラ
    ー情報を保持する保持手段と、 前記検知手段により検知された印刷データのエラー箇所
    をブランクのままでプリントするプリント手段と、 前記エラーの発生により前記ホストにデータの再送要求
    を発行する再送要求手段と、 前記再送要求手段による再送要求に応じて前記ホストよ
    り再送される印刷データのうち、前記保持手段に保持さ
    れているエラー情報に基づいて前記エラー箇所に該当す
    る印刷データ部分を判別する判別手段と、 前記判別手段により判別された印刷データ部分により前
    記エラー箇所を印刷する印刷制御手段と、を有すること
    を特徴とする印刷システム。
  9. 【請求項9】 請求項8に記載の印刷システム、前記印
    刷装置は、前記エラーが発生したデータブロックの印刷
    データをブランクデータとして印刷し、前記ホストに返
    送したエラー情報に基づいて前記ホストから再送される
    データブロックのうち、当該エラーが発生したデータブ
    ロックの印刷データを使用して再度印刷することにより
    前記エラーによる印刷を復帰させることを特徴とする。
  10. 【請求項10】 ホストより印刷データをアイソクロナ
    ス伝送により印刷装置に伝送して印刷する印刷システム
    であって、 前記印刷装置は、 前記印刷データの受信時、前記印刷データのアイソクロ
    ナスパケット伝送におけるエラーの発生を検知する検知
    手段と、 前記印刷データに基づいてマルチパスによるプリントを
    実行し、前記検知手段により検知された印刷データのエ
    ラー箇所をブランクのままでプリントするプリント手段
    と、 前記エラーの発生により前記ホストにデータの再送要求
    を発行する再送要求手段と、 前記再送要求手段による再送要求に応じて前記ホストよ
    り再送される印刷データのうち、前記保持手段に保持さ
    れているエラー情報に基づいて前記エラー箇所に該当す
    る印刷データ部分を判別する判別手段と、 前記ホストは、 前記印刷装置における印刷データ構造に変換した印刷デ
    ータをアイソクロナス伝送により前記印刷装置の機能に
    合わせてデータブロック単位に伝送する伝送手段と、 前記再送要求手段により発行された再送要求に応じて、
    前記印刷装置における次のパスでプリントされる印刷デ
    ータに当該エラーが発生したデータブロックを重畳した
    印刷データを作成して伝送するデータ伝送手段と、を有
    することを特徴とする印刷システム。
JP9115831A 1997-04-04 1997-05-06 データ通信方法と装置及び印刷装置と前記装置を含む印刷システム Withdrawn JPH10307691A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9115831A JPH10307691A (ja) 1997-05-06 1997-05-06 データ通信方法と装置及び印刷装置と前記装置を含む印刷システム
US09/053,747 US6018816A (en) 1997-04-04 1998-04-02 Information processing system and method, image processing system and method, information processing apparatus and computer readable memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9115831A JPH10307691A (ja) 1997-05-06 1997-05-06 データ通信方法と装置及び印刷装置と前記装置を含む印刷システム

Publications (1)

Publication Number Publication Date
JPH10307691A true JPH10307691A (ja) 1998-11-17

Family

ID=14672206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9115831A Withdrawn JPH10307691A (ja) 1997-04-04 1997-05-06 データ通信方法と装置及び印刷装置と前記装置を含む印刷システム

Country Status (1)

Country Link
JP (1) JPH10307691A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007529950A (ja) * 2004-03-17 2007-10-25 ソニー エリクソン モバイル コミュニケーションズ, エービー アドホック・ネットワークのための選択的ヘッダ誤り訂正
JP2008112436A (ja) * 2006-10-04 2008-05-15 Seiko Epson Corp ファイル処理装置、ファイル送信装置、ファイル処理方法、ファイル送信方法及びそれらの方法のプログラム
US7388864B2 (en) 2002-10-11 2008-06-17 Ricoh Company, Ltd. Data communication apparatus, data communication system, data communication method, data communication program and information recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7388864B2 (en) 2002-10-11 2008-06-17 Ricoh Company, Ltd. Data communication apparatus, data communication system, data communication method, data communication program and information recording medium
JP2007529950A (ja) * 2004-03-17 2007-10-25 ソニー エリクソン モバイル コミュニケーションズ, エービー アドホック・ネットワークのための選択的ヘッダ誤り訂正
JP2008112436A (ja) * 2006-10-04 2008-05-15 Seiko Epson Corp ファイル処理装置、ファイル送信装置、ファイル処理方法、ファイル送信方法及びそれらの方法のプログラム

Similar Documents

Publication Publication Date Title
US6334161B1 (en) System for reverse data transmission flow control wherein command is transferred by asynchronous transfer mode while data is transferred by isochronous transfer mode
US7430660B2 (en) Data transmission apparatus, system and method, and image processing apparatus
US6018816A (en) Information processing system and method, image processing system and method, information processing apparatus and computer readable memory
US6771668B2 (en) Information processing apparatus and method and storage medium
US6717694B1 (en) Data transmission apparatus, system and method, and recording medium
US6603737B1 (en) Data transmission apparatus, system and method, and image processing apparatus
US6775020B2 (en) Information processing apparatus and method of processing information
US6473816B1 (en) Apparatus and method for determining bus use right
JPH10290247A (ja) データ通信方法、装置、システム、及び記憶媒体
JP4072215B2 (ja) 画像処理装置及びその制御方法、画像処理システム
JPH10229533A (ja) 画像形成装置、画像形成システム、及び、画像形成方法
JP3682512B2 (ja) 画像取り込み装置及びその制御方法、印刷システム、印刷方法、及び、印刷装置及びその制御方法
JPH10307691A (ja) データ通信方法と装置及び印刷装置と前記装置を含む印刷システム
JP3566495B2 (ja) データ転送装置、データ転送システムおよびその方法、画像処理装置、並びに、記録媒体
JP2002016750A (ja) 画像形成装置及びその制御方法と画像形成システム
JP3647328B2 (ja) 画像処理装置及びその制御方法並びに画像処理システム
JP3774542B2 (ja) データ処理方法、データ処理装置、プリンタ及び記憶媒体
JPH10228364A (ja) データ転送装置及びその制御方法及び印刷システム
JP3495878B2 (ja) データ処理方法、データ処理装置及びプリンタ
JP3495879B2 (ja) データ処理方法、データ処理装置、及びコンピュータ読み取り可能な記録媒体
JPH10228355A (ja) データ転送装置及びその制御方法及び印刷システム
JPH11282645A (ja) 画像形成システムと印刷制御装置及び方法
JP2003345533A (ja) 画像データ処理システム
JPH11282641A (ja) 電子機器とその制御方法及びマルチファンクションシステム
JP2003333045A (ja) パワーマネージメント

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040706