JPH10228357A - データ転送装置及びその制御方法及び印刷システム - Google Patents

データ転送装置及びその制御方法及び印刷システム

Info

Publication number
JPH10228357A
JPH10228357A JP9030888A JP3088897A JPH10228357A JP H10228357 A JPH10228357 A JP H10228357A JP 9030888 A JP9030888 A JP 9030888A JP 3088897 A JP3088897 A JP 3088897A JP H10228357 A JPH10228357 A JP H10228357A
Authority
JP
Japan
Prior art keywords
data
encoding
transfer
line
node
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
JP9030888A
Other languages
English (en)
Inventor
Shinjiro Hori
信二郎 堀
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 JP9030888A priority Critical patent/JPH10228357A/ja
Publication of JPH10228357A publication Critical patent/JPH10228357A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】 【課題】ホストから周辺装置へのデータ転送を効率化す
る。 【解決手段】ホストの外部バス制御部212は、転送す
る画像データをバッファ104に格納し、その特性に応
じて符号化#1または#2により画像データを符号化す
る。データの特性は、そのデータの所定数おきのライン
を基準ラインとし、基準ラインと注目ラインとの相関値
が一定値以上であるか否かで判別され、一定値以上あれ
ば#2、そうでなければ#1の符号化を行う#2符号化
は、注目ラインと基準ラインとの差分を計算し、その差
分をランレングス符号化等で符号化する。#2では、注
目ラインをそのまま符号化する。カラー画像データの場
合には、この基準ラインの代わりに、特定のカラープレ
インを基準とし、その他のプレインを基準プレインとの
相関に応じて決まる符号化方法で符号化することもでき
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ転送装置及
びその制御方法及び印刷システムに関するものであり、
特に、転送するデータをその特性に応じて所定の構成単
位で符号化方法を変え、効率のよい転送を実現するデー
タ転送装置及びその制御方法及び印刷システムに関する
ものである。
【0002】
【従来の技術】現在、パーソナルコンピュータ(PC)
と外部周辺機器を接続するために、SCSI(Small Com
puter System Interface)、RS−232C、セントロ
ニクスなどさまざまな外部バスが存在している。しかし
これまで使用されてきた外部バスは、それに接続される
周辺機器毎に特化されたバスであり、特定の転送方式を
採用していた。
【0003】これらの外部バスを使用して周辺機器を接
続した場合の従来例を図6及び図7を使用して説明す
る。
【0004】ホスト外部バス制御部312は、図6のよ
うな構成である。図6においては、ホスト300に含ま
れるメモリやCPUなどから成るホスト制御部等、他の
構成は省略されている。システムバスの制御信号線30
1とデータ信号線302とアドレス信号線303は制御
部311に接続されており、制御部311は不図示のホ
スト制御部から指示される制御手順によってバッファ部
304とデータ転送部306とを制御する。
【0005】外部バス310を介して周辺機器320
(図ではプリンタ)に転送されるデータはデータ信号線
302からバッファ部304に格納される。データ転送
部306は後述する手順の信号を生成し、トランシーバ
309を介して周辺機器320との間でデータの送受信
を行い、その結果を制御部311、またはバッファ部3
04に渡す。
【0006】次に、ホスト300から周辺機器320へ
のデータ転送に係る一連の動作を図7を利用して説明す
る。図7の手順は、印刷データを作成したアプリケーシ
ョンからプリンタドライバに対して印刷開始命令が発行
され、それに応じてオペレーティングシステム(以下、
単にシステムと呼ぶ)が印刷データを取得し、データ転
送を開始する時点から始まる。
【0007】システムは、取得した印刷データをプリン
タドライバで処理可能な大きさ(バンド)のデータ量に
分割して、プリンタドライバにデータを転送する(50
1)。
【0008】プリンタドライバは、受け取ったデータか
らターゲットのプリンタに最適な画像データの生成のた
めの画像処理を行う(502)。たとえば、色空間変
換、カラーマッチング、ラスタライズ、エッジ強調、ソ
フトネスなどである。これらの処理は、テキスト領域、
イメージ領域に応じて最適な組み合わせが選択される。
【0009】ステップ502で生成された画像データは
プリンタ制御コマンドに変換され(503)、プリンタ
へのデータ送信要求とともにシステムに渡される(50
4)。
【0010】システムは受け取ったプリンタ制御コマン
ドをホスト外部バス制御部312に転送する(50
5)。ホスト外部バス制御部312は受け取ったプリン
タ制御コマンドを外部バス310を介して周辺機器32
0に送信する(506,507)。周辺機器320にも
外部バス制御部が備えられており、データはそこで受信
される。データの転送が終了した時点でホスト外部バス
制御部312からシステムにデータ転送の終了が通知さ
れる。
【0011】データを受信した周辺機器320は、受信
したデータに応じてプリント出力を行うようにプリンタ
の各機能ブロックを制御する(508)。
【0012】システムは、データ転送の終了が通知され
ると(509)、印刷するページの1ページが終了する
まで、501〜509を繰り返す(510)。これを印
刷が要求されているすべてのページに対して繰り返し行
う(511)。
【0013】
【発明が解決しようとする課題】以上説明したような手
順によって、外部に接続されたプリンタへの出力が行わ
れている。ホストと周辺機器との接続手順は一般的には
同様の手法で行われている。
【0014】特にカラープリンタの場合、印刷データは
C(シアン)、M(マゼンタ)、Y(イエロー)、K
(ブラック)の4色のプレイン、またはC,M,Yの3
色のプレインで構成されている。高解像度な自然画像を
印刷する場合には、解像度があればデータ量が多くな
り、転送時間が長くなるという問題がある。
【0015】本発明は上記従来例に鑑みてなされたもの
で、データの構成単位同志の相関を利用してデータ量を
減らし、増大する転送時間を削減したデータ転送装置及
びその制御方法及び印刷システムを提供することを目的
とする。
【0016】
【課題を解決するための手段】上記目的を達成するため
に、本発明はつぎのような構成からなる。すなわち、第
1の機器から第2の機器へとデータを転送するデータ転
送装置であって、データを所定量のブロックごとに単独
に符号化する第1の符号化手段と、データを、所定量の
ブロックごとに、基準ブロックとの差分をとり該差分を
符号化する第2の符号化手段と、注目ブロックと基準ブ
ロックとの相関に応じて、前記第1の符号化手段と第2
の符号化手段とのいずれか一方を選択する選択手段と、
符号化されたデータを第1の機器から第2の機器へと転
送する転送手段とを有する。
【0017】あるいは、第1の機器から第2の機器へと
データを転送するデータ転送制御方法であって、注目ブ
ロックと基準ブロックとの相関に応じて、第1の符号化
方式と第2の符号化方式とのいずれか一方を選択する選
択工程と、第1の符号化方式が選択された場合、データ
を所定量のブロックごとに単独に符号化する第1の符号
化工程と、第2の符号化方式が選択された場合、データ
を、所定量のブロックごとに、基準ブロックとの差分を
とり該差分を符号化する第2の符号化工程と、符号化さ
れたデータを第1の機器から第2の機器へと転送する転
送工程とを有する。
【0018】あるいは、ホスト装置から画像データを転
送し、該画像データを印刷装置により印刷する印刷シス
テムであって、画像データを所定量のブロックごとに単
独に符号化する第1の符号化手段と、画像データを、所
定量のブロックごとに、基準ブロックとの差分をとり該
差分を符号化する第2の符号化手段と、注目ブロックと
基準ブロックとの相関に応じて、前記第1の符号化手段
と第2の符号化手段とのいずれか一方を選択する選択手
段と、符号化されたデータを第1の機器から第2の機器
へと転送する転送手段とを有するホスト装置と、前記転
送手段により転送された符号化されたデータを受信する
受信手段と、受信した画像データを、その符号化方式に
応じて復号する復号手段と、復号された画像データを印
刷出力する出力手段とを有する印刷装置とを具備する。
【0019】
【発明の実施の形態】
(第1の実施の形態)図2はPCなどのホスト201と
外部バス213で接続されたプリンタなどの周辺機器2
02を示している。 <印刷システムの構成>ホスト201の内部にはシステ
ムバスとしてのアドレス信号線203とデータ信号線2
04と制御信号線205があり、これにROM(Read On
ly Memory)206、RAM(Random Access Memory)20
7、全体制御部208、表示制御部209、蓄積部21
0、I/O制御部211、ホスト外部バス制御部212
が接続されている。全体制御部208はアドレス信号線
203によって、各機能ブロックの選択を行い、データ
信号線204と制御信号線205によってデータの転送
を行うことで、各ブロックの動作の制御を行い、ホスト
201の全体の動作を制御する。
【0020】ROM206には全体制御部208と各機
能ブロックとのアクセスの制御方法などの基本的なプロ
グラムのコードが格納されている。RAM207は、全
体制御部がROM206または蓄積部210に格納され
ているシステム全体のオペレーティングシステム、アプ
リケーションの動作モジュールや動作中に必要とされる
データ、外部周辺機器のドライバなどの中から、必要と
される動作モジュールや、各モジュールが動作時に必要
とするパラメータなどを一時格納するメモリである。
【0021】表示制御部209は、図示していないCR
Tモニタ、液晶ディスプレイなどの外部表示装置を制御
する。蓄積部210は、HDD(Hard Disk Drive)、C
D−ROM Driveなどの蓄積装置とその制御部で
構成されており、アプリケーションの実行ファイルやア
プリケーションで作成されたデータファイルが格納され
ている。I/O制御部211は、図示していないキーボ
ード、マウスなどの入力装置が接続されており、利用者
が希望する制御情報を入力可能にしている。
【0022】ホスト外部バス制御部212は、外部バス
213を介して周辺機器202と接続されており、周辺
機器202(本実施例ではプリンタ)にデータを送受信
する。
【0023】利用者は、I/O制御部211へ入力する
ことで、希望する動作をホストに行わせる。外部表示装
置に表示されている画面を見ながら蓄積部210に格納
されているアプリケーション、またはデータファイルを
選択してアプリケーションを起動させ、さらにそのアプ
リケーションに入力を行い一連の作業を行う。その時に
作業結果を周辺機器202に転送する要求が発生した場
合に、ホスト外部バス制御部212、外部バス213を
用いてデータの転送を行う。
【0024】周辺機器202としてプリンタを例にして
説明を行う。周辺機器202には内部バスとしてのアド
レス信号線214、データ信号線215、制御信号線2
16があり、この内部バスに周辺機器外部バス制御部2
17、モータ制御部218、ヘッド制御部219、周辺
機器制御部220、ROM221、RAM222、画像
処理部223が接続されている。周辺機器制御部220
はアドレス信号線214によって、各機能ブロックの選
択を行い、データ信号線215と制御信号線216によ
ってデータの転送の制御を行い、周辺機器202の動作
を制御する。
【0025】周辺機器外部バス制御部212は、外部バ
ス213を介してホスト201と接続されており、ホス
ト201とのデータの送受信を行う。モータ制御部21
8は、紙送り、ヘッド駆動用のモータを周辺機器制御部
220の制御に応じて駆動する。ヘッド制御部218
は、印刷するデータを受け取り、ヘッドの制御を行って
印刷する。画像処理部223は、転送されてきたデータ
にさらに画像処理を行う。
【0026】ROM223には周辺機器制御部220を
動作させるためのプログラムが格納されており、周辺機
器制御部220はこのプログラムに沿って周辺機器外部
バス制御部217に送られてくるデータを処理して、他
の機能ブロックを制御して印刷を可能にする。RAM2
22は送られてくるデータ、または処理中に発生するパ
ラメータなどを格納することに使用される。 <外部バス制御部の構成>図1は本発明の一実施の形態
であるホスト外部バス制御部212のブロック図であ
る。なお、周辺機器外部バス制御部217は、図1の構
成と同様であるが、符号化#1転送部及び符号化#2転
送部では、トランシーバを介して受信したデータを、そ
れぞれの符号化方式に対応して復号化することになる。
【0027】システムバスの制御信号線205とデータ
信号線204とアドレス信号線203は制御部111に
接続されており、ホスト制御部208の指示によって送
られる制御によってバッファ部104と二つのスイッチ
105,108と符号化#1転送部106と符号化#2
転送部107を制御する。
【0028】外部バス213を介して周辺機器に転送さ
れるデータは、データ信号線204からバッファ部10
4に格納される。転送データは、符号化#1転送部10
6と符号化#2転送部107のどちらか一方の選択され
た転送部で転送データに再構成される。この選択はスイ
ッチ105,108によって行われる。この部分はあと
で詳細に説明する。 <データ転送処理手順>本発明の特徴的な動作の流れを
図3,図4を用いて説明する。ここでは、利用者が所定
のアプリケーションによってドキュメントを作成し、こ
れをプリントアウトすることを例に取り説明する。
【0029】利用者がアプリケーション上で印刷命令を
発行すると、これがプリンタドライバに通知される(4
01)。プリンタドライバは、用紙サイズ、印刷品位な
どのプリンタの設定情報などをシステムに通知する(4
02)。
【0030】システムはアプリケーションにデータの変
換を要求し(403)、アプリケーションは印刷データ
を変換してシステムに転送する(404)。システム
は、転送されたデータをRAM207または蓄積部21
0に格納し(405)、アプリケーションに終了許可の
通知を行う(405)。アプリケーションは、この許可
を受け取り印刷動作を終了し、次の操作を受け付ける状
態に移行する(407)。
【0031】印刷データを取得したシステムは、ステッ
プ405で格納したデータをプリンタドライバで処理可
能な大きさのデータ量に分割して、プリンタドライバに
データを転送する(601)。
【0032】プリンタドライバは、受け取ったデータか
らターゲットのプリンタに最適な画像データの生成のた
めの画像処理を行う(602)。例えば、色空間変換、
カラーマッチング、ラスタライズ、エッジ強調、ソフト
ネスなどである。
【0033】ステップ602で生成された画像データは
プリンタ制御コマンドおよび印刷データに変換され(6
03)、各C,M,Y,Kプレインに変換される(60
4)。
【0034】次にプリンタドライバは各プレイン単位に
符号化方式を決定し(605)、システムに対してデー
タの転送を要求する(606,607)。この部分はあ
とで詳細に説明する。
【0035】システムはホスト外部バス制御部212に
ステップ605で決定された符号化方式とプレインデー
タを供給する(608)。
【0036】ホスト外部バス制御部212は、受け取っ
た符号化方式によりプレインデータを符号化#1転送部
106または符号化#2転送部107符号化で符号化
し、周辺機器202の周辺機器外部バス制御部217に
データを転送する(609)。
【0037】周辺機器202は受信したデータを符号化
して印刷するとともにデータの受信終了通知を返す(6
10,611)。
【0038】データ受信終了通知を受け取ったシステム
は(612)、すべてのプレインデータを送信したかを
確認し、終了するまでこれを繰り返す(613)。すべ
てのプレインデータを送信したら次のバンドをこれまで
説明したステップを繰り返し、すべてのバンドを送信し
終わるまでこれを繰り返す(614)。最後のページま
でこれを繰り返し、一連の動作は終了する(615)。
【0039】この時の転送シーケンスの一例を図5に示
す。Txが送信側、ここではホスト外部バス制御部21
2であり、Rxが受信側、周辺機器外部バス制御部に相
当する。
【0040】初めにTxからRxに対して送信相手の指
定とデータ送信の開始を意味するToken信号が送信
される。このToken信号を受け取ったRxは受信準
備状態になり、データを待つ。Txは引き続きデータ信
号(図ではData0)をRxに送信する。Rxはデー
タを受信確認後に、Txに対して、受信の成功を示すA
CK信号を送信する。これによって一回のデータ転送が
終了する。
【0041】一度に転送できない量のデータを送信する
場合には、この手順を繰り返す。
【0042】また、データの転送路で誤りが発生した場
合を想定して、データには誤り訂正符号が付加されるこ
とが一般的に用いられている。例えば、ハミング符号、
RM(Reed Muller)符号、BCH(Bose Chaudhuri Hocqu
enghem)符号、畳み込み符号、CRC(Cyclic Redundanc
y Check)符号、RS(Reed Solomon)符号などがある。
【0043】一例として、CRC符号を使用した場合、
受信側ではデータに誤りが発生したかどうかをチェック
可能になり、Data1の送信で誤りが発生したと判断
した場合、ACK信号に変わり再送要求を意味するNA
K信号をTxに送信する。NAK信号を受信すると、デ
ータ転送に誤りが発生したと判断し、もう一度Data
1を送信する。Data1を正常に受信した場合、Rx
はACK信号をTxに送信する。
【0044】このように誤りが発生しても、再送などの
手段を用いることで誤りの無いデータを転送することが
可能になる。 <符号化方式の決定方法>次に、符号化方式の決定方法
について述べる。
【0045】各プレインのデータは所定のライン数のバ
ンド幅で処理される。ここでは1つのバンドは32ライ
ンであるとして説明する。この32ラインの中で第1,
9,17,25ライン目を基準ラインとし、このライン
のデータは必ず符号化#1で符号化する。符号化#1の
方式は、ラインで独立したランレングス符号化、もしく
は可変長符号化を行う。
【0046】基準ライン以外のデータは直前の基準ライ
ン(例えば第10〜16ライン目であれば第9ライン
目)との相関をとる。この時の相関値が所定の値よりも
小さい場合には、ライン間の相関が低いとして現在処理
中のラインは符号化#1で処理を行う。また、相関値が
所定の値よりも大きい場合には、ライン間の相関が高い
として現在処理中のラインは符号化#2で処理を行う。
符号化#2は、基準ラインと現在処理中のラインとの差
分を取り、その差分データに対してランレングス符号化
もしくは可変長符号化を行う方式である。この符号化方
式では、基準データと一致した画素についてはその差分
値が0となるため、基準ラインとの相関が大きいほど0
の並びが多くなり、圧縮効率が高まることになる。一般
的に、自然画像の画面内における連続性を鑑みると、本
実施形態のように最大で7ライン程度しか離れていない
ライン間の相関はかなり強いものと考えられる。
【0047】相関をとるための関数としては公知のもの
を用いる。例えば基準ラインとこれから行う基準ライン
以外のラインで分散を計算し、その値を所定値と比較す
ることで符号化#1と符号化#2の切り替えを行うよう
にする。この判定は、基準ライン以外のラインを転送す
るごとに行ってもよいが、バンドごとに行ってもよい。
バンドごとに判定を行う場合には、いくつかのラインを
サンプルとして、前のバンドのサンプルラインとの相関
を判定することでバンド単位ごとの符号化方式を決定す
る。これは、ページ単位で符号化方式を変える場合にも
同様である。
【0048】なお、受信データを復号化する場合に備え
て、転送するデータにはその符号化方式を示す識別子を
含ませておく。周辺装置では、この識別子により復号す
る方式を決定する。
【0049】また、自然画像の場合、DCT(離散コサ
イン変換)などの周波数変換を行い、高周波成分を除去
し、低周波成分のみをデータとしてより圧縮を高めても
よい。
【0050】また、USB,IEEE1394などの新
しいバスでは、非同期転送と同期転送をサポートしてい
る。非同期転送では、データは誤り無く転送されること
が保証されており、同期転送では転送レートが保証され
ているが誤りが発生してもリカバリすることはない。こ
の新しいバスの転送モードを利用して、さらに効率を上
げることが考えられる。
【0051】基準データ、もしくは差分を取らないと判
断したデータは非同期転送で確実にの送信し、差分を取
ったデータは誤差が許容できるとし、同期転送で送信す
る。このように、データの符号化の判定結果を元に転送
モードを可変にすることで、さらに効果的な転送を行う
ことが可能である。ここでIEEE1394シリアルバ
スについて説明しておく。 <IEEE1394の技術の概要>家庭用デジタルVT
RやDVDの登場も伴って、ビデオデータやオーディオ
データなどのリアルタイムでかつ高情報量のデータ転送
のサポートが必要になっている。こういったビデオデー
タやオーディオデータをリアルタイムで転送し、パソコ
ン(PC)に取り込んだり、またはその他のデジタル機
器に転送を行うには、必要な転送機能を備えた高速デー
タ転送可能なインタフェースが必要になってくるもので
あり、そういった観点から開発されたインタフェースが
IEEE1394−1995(High Performance Serial
Bus)(以下、1394シリアルバス)である。
【0052】図8に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、DV
D、デジタルカメラ、ハードディスク、モニタ等であ
る。
【0053】各機器間の接続方式は、ディジーチェーン
方式とノード分岐方式とを混在可能としたものであり、
自由度の高い接続が可能である。
【0054】また、各機器は各自固有のIDを有し、そ
れぞれが認識し合うことによって1394シリアルバス
で接続された範囲において、1つのネットワークを構成
している。各デジタル機器間をそれぞれ1本の1394
シリアルバスケーブルで順次接続するだけで、それぞれ
の機器が中継の役割を行い、全体として1つのネットワ
ークを構成するものである。また、1394シリアルバ
スの特徴でもある、プラグアンドプレイ機能で、ケーブ
ルを機器に接続した時点で自動で機器の認識や接続状況
などを認識する機能を有している。
【0055】また、図8に示したようなシステムにおい
て、ネットワークからある機器が削除されたり、または
新たに追加されたときなど、自動的にバスリセットを行
い、それまでのネットワーク構成をリセットしてから、
新たなネットワークの再構築を行う。この機能によっ
て、その時々のネットワークの構成を常時設定、認識す
ることができる。
【0056】またデータ転送速度は100/200/4
00Mbpsと備えており、上位の転送速度をもつ機器
が回の転送速度をサポートし、互換をとるようになって
いる。
【0057】データ転送モードとしては、コントロール
信号などの非同期データ(Asynchronousデータ:以下A
syncデータ)を転送するAsynchronous転送モード、
リアルタイムなどビデオデータやオーディオデータ等の
同期データ(Isochronousデータ:以下Isoデータ)
を転送するIsochronous転送モードがある。このAsy
ncデータとIsoデータは各サイクル(通常1サイク
ル125μS)の中において、サイクル開始を示すサイ
クル・スタート・パケット(CSP)の転送に続き、I
soデータの転送を優先しつつサイクル内で混在して転
送される。
【0058】次に、図9に1394シリアルバスの構成
要素を示す。
【0059】1394シリアルバスは全体としてレイヤ
(階層)構造で構成されている図9に示したように、最
もハード的なのが1394シリアルバスのケーブルであ
り、そのケーブルのコネクタが接続されるコネクタポー
トがあり、その上にハードウェアとしてフィジカル・レ
イヤとリンク・レイヤがある。
【0060】ハードウェア部は実質的なインタフェース
チップの部分であり、そのうちフィジカル・レイヤは符
号化やコネクタ関連の制御等を行い、リンク・レイヤは
パケット転送やサイクルタイムの制御等を行う。
【0061】ファームウェア部のトランザクション・レ
イヤは、転送(トランザクション)すべきデータの管理
を行い、ReadやWriteといった命令を出す。マ
ネージメント・レイヤは、接続されている各機器の接続
状況やIDの管理を行い、ネットワークの構成を管理す
る部分である。
【0062】このハードウェアとファームウェアまでが
実質上の1394シリアルバスの構成である。
【0063】またソフトウェア部のアプリケーション・
レイヤは使うソフトによって異なり、インタフェース上
にどのようにデータをのせるか規定する部分であり、A
Vプロトコルなどのプロトコルによって規定されてい
る。
【0064】以上が1394シリアルバスの構成であ
る。
【0065】次に、図10に1394シリアルバスにお
けるアドレス空間の図を示す。
【0066】1394シリアルバスに接続された各機器
(ノード)には必ず各ノード固有の、64ビットアドレ
スを持たせておく。そしてこのアドレスをROMに格納
しておくことで、自分や相手のノードアドレスを常時認
識でき、相手を指定した通信も行える。
【0067】1394シリアルバスのアドレッシング
は、IEEE1212規格に準じた方式であり、アドレ
ス設定は、最初の10bitがバスの番号の指定様に、
次の6ビットがノードID番号の指定用に使われる。残
りの48bitが機器に与えられたアドレス幅になり、
それぞれ固有のアドレス空間として使用できる。最後の
28ビットは固有データの領域として、各機器の識別や
使用条件の指定の情報などを格納する。
【0068】以上が1394シリアルバスの技術の概要
である。
【0069】次に、1394シリアルバスの特徴といえ
る技術の部分を、より詳細に説明する。 <1394シリアルバスの電気的仕様>図11に139
4シリアルバス・ケーブルの断面図を示す。
【0070】1394シリアルバスでは接続ケーブル内
に、2組のツイストペア信号線の他に、電源ラインを設
けている。これによって、電源を持たない機器や、故障
により電圧低下した機器等にも電力の供給が可能になっ
ている。
【0071】電源線内を流れる電源の電圧は8〜40
V、電流は最大電流DC1.5Aと規定されている。 <DS−Link符号化>1394シリアルバスで採用
されている、データ転送フォーマットのDS−Link
符号化方式を説明するための図を図12に示す。
【0072】1394シリアルバスでは、DS−Lin
k(Data/Strobe Link)符号化方式が採用されている。こ
のDS−link符号化方式は、高速なシリアルデータ
通信に適しており、その構成は、2本の信号線を必要と
する。より対線のうち1本に主となるデータを送り、他
方のより対線にはストローブ信号を送る構成になってい
る。
【0073】受信側では、この通信されるデータと、ス
トローブとの排他的論理和をとることによってクロック
を再現できる。
【0074】このDS−Link符号化方式を用いるメ
リットとして、他のシリアルデータ転送方式に比べて転
送効率が高いこと、PLL回路が不要となるのでコント
ローラLSIの回路規模を小さくできること、更には、
転送すべきデータが無いときにアイドル状態であること
を示す情報を送る必要が無いので、各機器のトランシー
バ回路をスリープ状態にすることができることによっ
て、消費電力の低減が図れる、などが挙げられる。 <バスリセットのシーケンス>1394シリアルバスで
は、接続されている各機器(ノード)にはノードIDが
与えられ、ネットワーク構成として認識されている。
【0075】このネットワーク構成に変化があったと
き、例えばノードの挿抜や電源のON/OFFなどによ
るノード数の増減などによって変化が生じて、新たなネ
ットワーク構成を認識する必要があるとき、変化を検知
した各ノードはバス上にバスリセット信号を送信して、
新たなネットワーク構成を認識するモードに入る。この
ときの変化の検知方法は、1394ポート基板上でのバ
イアス電圧の変化を検知することによって行われる。
【0076】あるノードからバスリセット信号が伝達さ
れて、各ノードのフィジカルレイヤはこのバスリセット
信号を受けると同時にリンクレイヤにバスリセットの発
生を伝達し、かつ他のノードにバスリセット信号を伝達
する。最終的にすべてのノードがバスリセット信号を検
知した後、バスリセットが起動となる。
【0077】バスリセットは、先に述べたようなケーブ
ル抜挿や、ネットワーク異常等によるハード検出による
起動と、プロトコルからのホスト制御などによってフィ
ジカルレイヤに直接命令を出すことによっても起動す
る。
【0078】また、バスリセットが起動するとデータ転
送は一時中断され、この間のデータ転送は待たされ、終
了後、新しいネットワーク構成のもとで再開される。
【0079】以上がバスリセットのシーケンスである。 <ノードID決定のシーケンス>バスリセットの後、各
ノードは新しいネットワーク構成を構築するために、各
ノードにIDを与える動作に入る。このときの、バスリ
セットからノードID決定までの一般的なシーケンスを
図20,図21,図22のフローチャートを用いて説明
する。
【0080】図20のフローチャートは、バスリセット
の発生からノードIDが決定し、データ転送が行えるよ
うになるまでの、一連のバスの作業を示してある。
【0081】先ず、ステップS101として、ネットワ
ーク内にバスリセットが発生することを常時監視してい
て、ここでノードの電源ON/OFFなどでバスリセッ
トが発生するとステップS102に移る。
【0082】ステップS102では、ネットワークがリ
セットされた状態から、新たなネットワークの接続状況
を知るために、直接接続されている各ノード間において
親子関係の宣言がなされる。ステップS103として、
すべてのノード間で親子関係が決定すると、ステップS
104として一つのルートが決定する。すべてのノード
間で親子関係が決定するまで、ステップS102の親子
関係の宣言を行い、またルートも決定されない。
【0083】ステップS104でルートが決定される
と、次はステップS105として、各ノードにIDを与
えるノードIDの設定作業が行われる。所定のノード順
序で、ノードIDの設定が行われ、すべてのノードにI
Dが与えられるまで繰り返し設定作業が行われ、最終的
にステップS106としてすべてのノードにIDを設定
し終えたら、新しいネットワーク構成がすべてのノード
において認識されたので、ステップS107としてノー
ド間のデータ転送が行える状態となり、データ転送が開
始される。
【0084】このステップS107の状態になると、再
びバスリセットが発生するのを監視するモードに入り、
バスリセットが発生したらステップS101からステッ
プS106までの設定作業が繰り返し行われる。
【0085】以上が、図20のフローチャートの説明で
あるが、図20のフローチャートのバスリセットからル
ート決定までの部分と、ルート決定後からID設定終了
までの手順をより詳しくフローチャート図に表したもの
をそれぞれ、図21、図22に示す。
【0086】先ず、図21のフローチャートの説明を行
う。
【0087】ステップS201としてバスリセットが発
生すると、ネットワーク構成は一旦リセットされる。な
お、ステップS201としてバスリセットが発生するの
を常に監視している。
【0088】次に、ステップS202としてリセットさ
れたネットワークの接続状況を再認識する作業の第一歩
として、各機器にリーフ(ノード)であることを示すフ
ラグを立てておく。さらに、ステップS203として各
機器が自分の持つポートがいくつ他ノードと接続されて
いるのかを調べる。
【0089】ステップS204のポート数の結果に応じ
て、これから親子関係の宣言を始めていくために、未定
義(親子関係が決定されていない)ポートの数を調べ
る。バスリセットの直後はポート数=未定義ポート数で
あるが、親子関係が決定されていくにしたがって、ステ
ップS204で検知する未定義ポートの数は変化してい
くものである。
【0090】まず、バスリセットの直後、はじめに親子
関係の宣言を行えるのはリーフに限られている。リーフ
であるというのはステップS203のポート数の確認で
知ることができる。リーフは、ステップS205とし
て、自分に接続されているノードに対して、「自分は
子、相手は親」と宣言し動作を終了する。
【0091】ステップS203でポート数が複数ありブ
ランチと認識したノードは、バスリセットの直後はステ
ップS204で未定義ポート数>1ということなので、
ステップS206へと移り、まずブランチというフラグ
が立てられ、ステップS207でリーフからの親子関係
宣言で「親」の受付けをするために待つ。
【0092】リーフが親子関係の宣言を行い、ステップ
S207でそれを受けたブランチは適宜ステップS20
4の未定義ポート数の確認を行い、未定義ポート数が1
になっていれば残っているポートに接続されているノー
ドに対して、ステップS205の「自分が子」の宣言を
することが可能になる。2度目以降、ステップS204
で未定義ポート数を確認しても2以上あるブランチに対
しては、再度ステップS207でリーフ又は他のブラン
チからの「親」の受付けをするために待つ。
【0093】最終的に、何れか1つのブランチ、又は例
外的にリーフ(子宣言を行えるのに素早く動作しなかっ
た為)がステップS204の未定義ポート数の結果とし
てゼロになったら、これにてネットワーク全体の親子関
係の宣言が終了したものであり、未定義ポート数がゼロ
(すべて親のポートとして決定)になった唯一のノード
はステップS208としてルートのフラグが立てられ、
ステップS209としてルートとしての認識がなされ
る。
【0094】このようにして、図21に示したバスリセ
ットから、ネットワーク内すべてのノード間における親
子関係の宣言までが終了する。
【0095】次に、図22のフローチャートについて説
明する。
【0096】まず、図21までのシーケンスでリーフ、
ブランチ、ルートという各ノードのフラグの情報が設定
されているので、これを元にして、ステップS301で
それぞれ分離する。
【0097】各ノードにIDを与える作業として、最初
にIDの設定を行うことができるのはリーフからであ
る。リーフ→ブランチ→ルートの順で若い番号(ノード
番号=0〜)からIDの設定がなされていく。
【0098】ステップS302としてネットワーク内に
存在するリーフの数N(Nは自然数)を設定する。この
後、ステップS303として各自リーフがルートに対し
て、IDを与えるように要求する。この要求が複数ある
場合には、ルートはステップS304としてアービトレ
ーション(1つに調停する作業)を行い、ステップS3
05として勝ったノード1つにID番号を与え、負けた
ノードには失敗の結果通知を行う。ステップS306と
してID取得が失敗に終わったリーフは、再度ID要求
を出し、同様の作業を繰り返す。IDを取得できたリー
フからステップS307として、そのノードのID情報
をブロードキャストで全ノードに転送する。1ノードI
D情報のブロードキャストが終わると、ステップS30
8として残りのリーフの数が1つ減らされる。ここで、
ステップS309として、この残りのリーフの数が1以
上ある時はステップS303のID要求の作業からを繰
り返し行い、最終的にすべてのリーフがID情報をブロ
ードキャストすると、ステップS309がN=0とな
り、次はブランチのID設定に移る。
【0099】ブランチのID設定もリーフの時と同様に
行われる。
【0100】まず、ステップS310としてネットワー
ク内に存在するブランチの数M(Mは自然数)を設定す
る。この後、ステップS311として各自ブランチがル
ートに対して、IDを与えるように要求する。これに対
してルートは、ステップS312としてアービトレーシ
ョンを行い、勝ったブランチから順にリーフに与え終わ
った次の若い番号から与えていく。ステップS313と
して、ルートは要求を出したブランチにID情報又は失
敗結果を通知し、ステップS314としてID取得が失
敗に終わったブランチは、再度ID要求を出し、同様の
作業を繰り返す。IDを取得できたブランチからステッ
プS315として、そのノードのID情報をブロードキ
ャストで全ノードに転送する。1ノードID情報のブロ
ードキャストが終わると、ステップS316として残り
のブランチの数が1つ減らされる。ここで、ステップS
317として、この残りのブランチの数が1以上ある時
はステップS311のID要求の作業からを繰り返し、
最終的にすべてのブランチがID情報をブロードキャス
トするまで行われる。すべてのブランチがノードIDを
取得すると、ステップS317はM=0となり、ブラン
チのID取得モードも終了する。
【0101】ここまで終了すると、最終的にID情報を
取得していないノードはルートのみなので、ステップS
318として与えていない番号で最も若い番号を自分の
ID番号と設定し、ステップS319としてルートのI
D情報をブロードキャストする。
【0102】以上で、図22に示したように、親子関係
が決定した後から、すべてのノードのIDが設定される
までの手順が終了する。
【0103】次に、一例として図13に示した実際のネ
ットワークにおける動作を図13を参照しながら説明す
る。
【0104】図13の説明として、(ルート)ノードB
の下位にはノードAとノードCが直接接続されており、
さらにノードCの下位にはノードDが直接接続されてお
り、さらにノードDの下位にはノードEとノードFが直
接接続された階層構造になっている。この階層構造やル
ートノード、ノードIDを決定する手順を以下で説明す
る。
【0105】バスリセットがされた後、まず各ノードの
接続状況を認識するために、各ノードの直接接続されて
いるポート間において、親子関係の宣言がなされる。こ
の親子とは親側が階層構造で上位となり、子側が下位と
なると言うことができる。
【0106】図13ではバスリセットの後、最初に親子
関係の宣言を行ったのはノードAである。基本的にノー
ドの1つのポートにのみ接続があるノード(リーフと呼
ぶ)から親子関係の宣言を行うことができる。これは自
分には1ポートの接続のみということをまず知ることが
できるので、これによってネットワークの端であること
を認識し、その中で早く動作を行ったノードから親子関
係が決定されていく。こうして親子関係の宣言を行った
側(A−B間ではノードA)のポートが子と設定され、
相手側(ノードB)のポートが親と設定される。こうし
て、ノードA−B間では子−親、ノードE−D間で子−
親、ノードF−D間で子−親と決定される。
【0107】さらに1回層あがって、今度は複数個接続
ポートを持つノード(ブランチと呼ぶ)のうち、他ノー
ドからの親子関係の宣言を受けたものから順次、さらに
上位に親子関係の宣言を行っていく。図13ではまずノ
ードDがD−E間、D−F間と親子関係が決定した後、
ノードCに対する親子関係の宣言を行っており、その結
果ノードD−C間で子−親と決定している。
【0108】ノードDからの親子関係の宣言を受けたノ
ードCは、もう一つのポートに接続されているノードB
に対して親子関係の宣言を行っている。これによってノ
ードC−B間で子−親と決定している。
【0109】このようにして図13のような階層構造が
構成され、最終的に接続されているすべてのポートにお
いて親となったノードBが、ルートノードと決定され
た。ルートは1つのネットワーク構成中に一つしか存在
しないものである。
【0110】なお、この図13においてノードBがルー
トノードと決定されたが、これはノードAから親子関係
宣言を受けたノードBが、他のノードに対して親子関係
宣言を速いタイミングで行っていれば、ルートノードは
他のノードに移っていたこともあり得る。すなわち、伝
達されるタイミングによってはどのノードもルートノー
ドとなる可能性があり、同じネットワーク構成でもルー
トノードは一定とは限らない。
【0111】ルートノードが決定すると、次は各ノード
IDを決定するモードに入る。ここではすべてのノード
が、決定した自分のノードIDを他のすべてのノードに
通知する(ブロードキャスト機能)。
【0112】自己ID情報は、自分のノード番号、接続
されている位置の情報、もっているポートの数、接続の
あるポートの数、各ポートの親子関係の情報等を含んで
いる。
【0113】ノードID番号の割り振りの手順として
は、まず1つのポートにのみ接続があるノード(リー
フ)から起動することができ、この中から順にノード番
号=0,1,2,…と割り当てられる。
【0114】ノードIDを手にしたノードは、ノード番
号を含む情報をブロードキャストで各ノードに送信す
る。これによって、そのID番号は「割り当て済み」で
あることが認識される。
【0115】すべてのリーフが自己ノードIDを取得し
終わると、次はブランチへ移りリーフに引続いたノード
ID番号が各ノードに割り当てられる。リーフと同様
に、ノードID番号が割り当てられたブランチから順次
ノードID情報をブロードキャストし、最後にルートノ
ードが自己ID情報をブロードキャストする。すなわ
ち、常にルートは最大のノードID番号を所有するもの
である。
【0116】以上のようにして、階層構造全体のノード
IDの割り当てが終わり、ネットワーク構成が再構築さ
れ、バスの初期化作業が完了する。 <アービトレーション>1394シリアルバスでは、デ
ータ転送に先立って必ずバス使用権のアービトレーショ
ン(調停)を行う。1394シリアルバスは個別に接続
された各機器が、転送された信号をそれぞれ中継するこ
とによって、ネットワーク内すべての機器に同信号を伝
えるように、論理的なバス型ネットワークであるので、
パケットの衝突を防ぐ意味でアービトレーションは必要
である。これによってある時間には、たった一つのノー
ドのみ転送を行うことができる。
【0117】アービトレーションを説明するための図と
して図14(a)にバス使用要求の図、同図(b)にバ
ス使用許可の図を示し、以下これを用いて説明する。
【0118】アービトレーションが始まると、1つもし
くは複数のノードが親ノードに向かって、それぞれバス
使用権の要求を発する。図14(a)のノードCとノー
ドFがバス使用権の要求を発しているノードである。こ
れを受けた親ノード(図14ではノードA)はさらに親
ノードに向かって、バス使用権の要求を発する(中継す
る)。この要求は最終的に調停を行うルートに届けられ
る。
【0119】バス使用要求を受けたルートノードは、ど
のノードにバスを使用させるかを決める。この調停作業
はルートノードのみが行えるものであり、調停によって
勝ったノードにはバスの使用許可を与える。図14
(b)ではノードCに使用許可が与えられ、ノードFの
使用は拒否された図である。アービトレーションに負け
たノードに対してはDP(data prefix)パケットを送
り、拒否されたことを知らせる。拒否されたノードのバ
ス使用要求は次回のアービトレーションまで待たされ
る。
【0120】以上のようにして、アービトレーションに
勝ってバスの使用許可を得たノードは、以降データの転
送を開始できる。
【0121】ここで、アービトレーションの一連の流れ
をフローチャート図23に示して、説明する。
【0122】ノードがデータ転送を開始できるために
は、バスがアイドル状態であることが必要である。先に
行われていたデータ転送が終了して、現在バスが空き状
態であることを認識するためには、各転送モードで個別
に設定されている所定のアイドル時間ギャップ長(例.
サブアクション・ギャップ)を経過することによって、
各ノードは自分の転送が開始できると判断する。
【0123】ステップS401として、Asyncデー
タ、Isoデータ等それぞれ転送するデータに応じた所
定のギャップ長が得られたか判断する。所定のギャップ
長が得られない限り、転送を開始するために必要なバス
使用権の要求はできないので、所定のギャップ長が得ら
れるまで待つ。
【0124】ステップS401で所定のギャップ長が得
られたら、ステップS402として転送すべきデータが
あるか判断し、ある場合はステップS403として転送
するためにバスを確保するよう、バス使用権の要求をル
ートに対して発する。このときの、バス使用権の要求を
表す信号の伝達は、図14に示したように、ネットワー
ク内各機器を中継しながら、最終的にルートに届けられ
る。ステップS402で転送するデータがない場合は、
そのまま待機する。
【0125】次に、ステップS404として、ステップ
S403のバス使用要求を1つ以上ルートが受信した
ら、ルートはステップS405として使用要求を出した
ノードの数を調べる。ステップS405での選択値がノ
ード数=1(使用権要求を出したノードは1つ)だった
ら、そのノードに直後のバス使用許可が得られることと
なる。ステップS405での選択値がノード数>1(使
用要求を出したノードは複数)だったら、ルートはステ
ップS406として使用許可を与えるノードを1つに決
定する調停作業を行う。この調停作業は公平なものであ
り、毎回同じノードばかり許可を得るようなことはな
く、平等に権利を与えていくような構成となっている。
【0126】ステップS407として、ステップS40
6で使用要求を出した複数ノードの中からルートが調停
して使用許可を得た1つのノードと、敗れたその他のノ
ードに分ける選択を行う。ここで、調停されて使用許可
を得た1つのノード、またはステップS405の選択値
から使用要求ノード数=1で調停無しに使用許可を得た
ノードには、ステップS408として、ルートはそのノ
ードに対して許可信号を送る。許可信号を得たノード
は、受け取った直後に転送すべきデータ(パケット)を
転送開始する。また、ステップS406の調停が敗れ
て、バス使用が許可されなかったノードにはステップS
409としてルートから、アービトレーション失敗を示
すDP(data prefix)パケットを送られ、これを受け取
ったノードは再度転送を行うためのバス使用要求を出す
ため、ステップS401まで戻り、所定ギャップ長が得
られるまで待機する。
【0127】以上がアービトレーションの流れを説明し
た、フローチャート図23の説明である。 <Asynchronous(非同期)転送>アシンクロナス転送
は、非同期転送である。図15にアシンクロナス転送に
おける時間的な遷移状態を示す。図15の最初のサブア
クション・ギャップは、バスのアイドル状態を示すもの
である。このアイドル時間が一定値になった時点で転送
を希望するノードはバスが使用できると判断して、バス
獲得のためのアービトレーションを実行する。
【0128】アービトレーションでバスの使用許可を得
ると、次にデータの転送がパケット形式で実行される。
データ転送後、受信したノードは転送されたデータに対
しての受信結果のack(受信確認用返送コード)をa
ck gapという短いギャップの後、返送して応答す
るか、応答パケットを送ることによって転送が完了す
る。acKは4ビットの情報と4ビットのチェックサム
からなり、成功か、ビジー状態か、ペンディング状態で
あるかといった情報を含み、すぐに送信元ノードに返送
される。
【0129】次に、図16にアシンクロナス転送のパケ
ットフォーマットの例を示す。
【0130】パケットには、データ部及び誤り訂正用の
データCRCの他にはヘッダ部があり、そのヘッダ部に
は図16に示すような、目的ノードID、ソースノード
ID、転送データ長さや各種コードなどが書き込まれ、
転送が行われる。
【0131】また、アシンクロナス転送は自己ノードか
ら相手ノードへの1対1の通信である。転送元ノードか
ら転送されたパケットは、ネットワーク中の各ノードに
行き渡るが、自分宛てのアドレス以外のものは無視され
るので、宛先の1つのノードのみが読み込むことにな
る。
【0132】以上がアシンクロナス転送の説明である。 <Isochronous(同期)転送>アイソクロナス転送は同
期転送である。1394シリアルバスの最大の特徴であ
るともいえるこのアイソクロナス転送は、特にVIDE
O映像データや音声データといったマルチメディアデー
タなど、リアルタイムな転送を必要とするデータの転送
に適した転送モードである。
【0133】また、アシンクロナス転送(非同期)が1
対1の転送であったのに対し、このアイソクロナス転送
はブロードキャスト機能によって、転送元の1つのノー
ドから他のすべてのノードへ一様に転送される。
【0134】図17はアイソクロナス転送における、時
間的な遷移状態を示す図である。
【0135】アイソクロナス転送は、バス上一定時間毎
に実行される。この時間間隔をアイソクロナスサイクル
と呼ぶ。アイソクロナスサイクル時間は、125μSで
ある。この各サイクルの開始時間を示し、各ノードの時
間調整を行う役割を担っているのがサイクル・スタート
・パケットである。サイクル・スタート・パケットを送
信するのは、サイクル・マスタと呼ばれるノードであ
り、1つ前のサイクル内の転送終了後、所定のアイドル
期間(サブアクションギャップ)を経た後、本サイクル
の開始を告げるサイクル・スタート・パケットを送信す
る。このサイクル・スタート・パケットの送信される時
間間隔が125μSとなる。
【0136】また、図17にチャネルA、チャネルB、
チャネルCと示したように、1サイクル内において複数
種のパケットがチャネルIDをそれぞれ与えられること
によって、区別して転送できる。これによって同時に複
数ノード間でのリアルタイムな転送が可能であり、また
受信するノードでは自分が欲しいチャネルIDのデータ
のみを取り込む。このチャネルIDは送信先のアドレス
を表すものではなく、データに対する論理的な番号を与
えているに過ぎない。よって、あるパケットの送信は1
つの送信元ノードから他のすべてのノードに行き渡る、
ブロードキャストで転送されることになる。
【0137】アイソクロナス転送のパケット送信に先立
って、アシンクロナス転送同様アービトレーションが行
われる。しかし、アシンクロナス転送のように1対1の
通信ではないので、アイソクロナス転送にはack(受
信確認用返信コード)は存在しない。
【0138】また、図17に示したiso gap(ア
イソクロナスギャップ)とは、アイソクロナス転送を行
う前にバスが空き状態であると認識するために必要なア
イドル期間を表している。この所定のアイドル期間を経
過すると、アイソクロナス転送を行いたいノードはバス
が空いていると判断し、転送前のアービトレーションを
行うことができる。
【0139】次に、図18にアイソクロナス転送のパケ
ットフォーマットの例を示し、説明する。
【0140】各チャネルに分かれた、各種のパケットに
はそれぞれデータ部及び誤り訂正用のデータCRCの他
にヘッダ部があり、そのヘッダ部には図17に示したよ
うな転送データ長やチャネルNO、その他各種コード及
び誤り訂正用のヘッダCRCなどが書き込まれ、転送が
行われる。
【0141】以上がアイソクロナス転送の説明である。 <バス・サイクル>実際の1394シリアルバス上の転
送では、アイソクロナス転送と、アシンクロナス転送は
混在できる。その時の、アイソクロナス転送とアシンク
ロナス転送が混在した、バス上の転送状態の時間的な遷
移の様子を表した図を図19に示す。
【0142】アイソクロナス転送はアシンクロナス転送
より優先して実行される。その理由は、サイクル・スタ
ート・パケットの後、アシンクロナス転送を起動するた
めに必要なアイドル期間のギャップ長(サブアクション
ギャップ)よりも短いギャップ長(アイソクロナスギャ
ップ)で、アイソクロナス転送を起動できるからであ
る。したがって、アシンクロナス転送より、アイソクロ
ナス転送は優先して実行されることとなる。
【0143】図19に示した、一般的なバスサイクルに
おいて、サイクル#mのスタート時にサイクル・スター
ト・パケットがサイクル・マスタから各ノードに転送さ
れる。これによって、各ノードで時刻調整を行い、所定
のアイドル期間(アイソクロナスギャップ)を待ってか
らアイソクロナス転送を行うべきノードはアービトレー
ションを行い、パケット転送に入る。図19ではチャネ
ルeとチャネルsとチャネルkが順にアイソクロナス転
送されている。
【0144】このアービトレーションからパケット転送
までの動作を、与えられているチャネル分繰り返し行っ
た後、サイクル#mにおけるアイソクロナス転送がすべ
て終了したら、アシンクロナス転送を行うことができる
ようになる。
【0145】アイドル時間がアシンクロナス転送が可能
なサブアクションギャップに達することによって、アシ
ンクロナス転送を行いたいノードはアービトレーション
の実行に移れると判断する。
【0146】ただし、アシンクロナス転送が行える期間
は、アイソクロナス転送終了の力、次のサイクル・スタ
ート・パケットを転送すべき時間(cycle synch)までの
間にアシンクロナス転送を起動するためのサブアクショ
ンギャップが得られた場合に限っている。
【0147】図19のサイクル#mでは3つのチャネル
分のアイソクロナス転送と、その後アシンクロナス転送
(含むack)が2パケット(パケット1、パケット
2)転送されている。このアシンクロナスパケット2の
後は、サイクルm+1をスタートすべき時間(cycle syn
ch)にいたるので、サイクル#mでの転送はここまでで
終わる。
【0148】ただし、非同期または同期転送動作中に次
のサイクル・スタート・パケットを送信すべき時間(cyc
le synch)に至ったとしたら、無理に中断せず、その転
送が終了した後のアイドル期間を待ってから次サイクル
のサイクル・スタート・パケットを送信する。すなわ
ち、1つのサイクルが125μS以上続いたときは、そ
の分次サイクルは基準の125μSより短縮されたとす
る。このようにアイソクロナス・サイクルは125μS
を基準に超過・短縮し得るものである。
【0149】しかし、アイソクロナス転送はリアルタイ
ム転送を維持するために毎サイクル必要であれば必ず実
行され、アシンクロナス転送はサイクル時間が短縮され
たことによって次以降のサイクルにまわされることもあ
る。 [第2の実施の形態]第1の実施の形態として各プレイ
ンごとに符号化を行う方法について述べたが、プレイン
間の相関をとる方法もある。あるプレインを基準プレイ
ンとする。説明のため基準プレインをKプレインとす
る。本実施の形態では、基準プレインのあるラインと、
そのラインに相当する他のプレインのラインデータとの
差分を取り、符号化を行う。符号化方式は第1の実施の
形態と同じである。すなわち、第1の実施例では基準ラ
インとその他のラインとの相関に応じて、符号化#1か
#2かを決めているが、本実施の形態では、図4のステ
ップ605において、基準プレインと他のプレイントの
相関に応じて符号化方式を決定する。この相関値の算出
のしかたは第1の実施の形態におけるそれと同一でよ
い。基準プレインのデータは全てそのまま符号化される
が、その他のプレインのデータは、前記決定に従って、
基準プレイントとの相関に応じて差分をとられて符号化
されたり、あるいはそのまま符号化される。この符号化
方式の判定はバンドごとに行われる。しかしながら、ラ
インごとであっても、ページごとであっても実現でき
る。
【0150】カラー画像、特に写真などの自然画像で
は、中間色が画面の多くの部分を占めている。また、明
度においても墨成分が若干混じった部分も多く含まれて
いる。このような画像では、複数のプレインにおいてよ
く似た形状が形成されている。すなわち、プレイン間に
相関がある。そのため、本実施の形態のように1つのプ
レインを基準プレインとしてその相関によりデータを符
号化することで、よりデータの圧縮率を向上させること
ができる。
【0151】さらに、ここで述べたライン間、プレイン
間の相関および、符号化を組み合わせてもよい。
【0152】
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ,インタフェイス機器,リーダ,プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機,ファクシミリ
装置など)に適用してもよい。
【0153】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成される。
【0154】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0155】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
【0156】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれる。
【0157】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれる。
【0158】
【発明の効果】以上説明したように、本発明によれば、
データ転送装置において、転送するデータの特性に応じ
た符号化方式を採用することで効率のよい転送を実現す
るデータ転送装置及び制御方法及び印刷システムを実現
することが可能になる。
【0159】特に、その符号化方式として、基準となる
ラインやプレーンといった基準ブロックを設け、その基
準ブロックとの相関に応じて基準ブロックとの差分を符
号化すれば、画像の特性によっては圧縮率を高め、効率
良くデータ転送することができる。
【0160】
【図面の簡単な説明】
【図1】本発明に係る外部バス制御部の概略ブロック図
である。
【図2】本発明に係る印刷システムのブロック図であ
る。
【図3】本実施形態の印刷システムにおける印刷手順の
流れ図である。
【図4】本実施形態の印刷システムにおける印刷手順の
流れ図である。
【図5】データ転送時の転送シーケンスの図である。
【図6】従来の外部バス制御部の概略ブロック図であ
る。
【図7】本実施形態の印刷システムにおける印刷手順の
流れ図である。
【図8】1394シリアルバスを用いて構成されるネッ
トワーク・システムの例を示す図である。
【図9】1394シリアルバスの構成要素を示す図であ
る。
【図10】1394シリアルバスにおけるアドレス空間
の図を示す図である。
【図11】1394シリアルバス・ケーブルの断面図を
示す図である。
【図12】1394シリアルバスで採用されている、デ
ータ転送フォーマットのDS−Link符号化方式を説
明するための図を示す図である。
【図13】ノードの階層構造の例を示す図である。
【図14】バスのアービトレーションを説明する図であ
る。
【図15】アシンクロナス転送における時間的な遷移状
態を示す図である。
【図16】アシンクロナス転送のパケットフォーマット
の例を示す図である。
【図17】アイソクロナス転送における、時間的な遷移
状態を示す図である。
【図18】アイソクロナス転送のパケットフォーマット
の図である。
【図19】アイソクロナス転送とアシンクロナス転送が
混在した、バス上の転送状態の時間的な遷移の様子を表
した図を示す図である。
【図20】バスリセットからデータ転送が行えるまでの
手順の流れ図である。
【図21】バスリセットからルート決定までの手順の詳
しい流れ図である。
【図22】ルート決定からID設定終了までの手順の流
れ図である。
【図23】アービトレーションの手順の流れ図である。
【符号の説明】
101 制御信号線 102 データ信号線 103 アドレス信号線 104 バッファ 105,108 スイッチ(選択手段) 106 符号化#1転送部(第一の符号化手段) 106 符号化#2転送部(第二の符号化手段) 109 トランシーバ 110 外部バス(接続手段) 111 制御部 112 外部バス制御部

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 第1の機器から第2の機器へとデータを
    転送するデータ転送装置であって、 データを所定量のブロックごとに単独に符号化する第1
    の符号化手段と、 データを、所定量のブロックごとに、基準ブロックとの
    差分をとり該差分を符号化する第2の符号化手段と、 注目ブロックと基準ブロックとの相関に応じて、前記第
    1の符号化手段と第2の符号化手段とのいずれか一方を
    選択する選択手段と、 符号化されたデータを第1の機器から第2の機器へと転
    送する転送手段とを有することを特徴とするデータ転送
    装置。
  2. 【請求項2】 前記データは画像データであり、前記第
    1の符号化手段はブロックとしてラインごとに符号化
    し、前記第2の符号化手段は、所定ライン数おきのライ
    ンを基準ブロックとして、基準ブロック間のラインを前
    記基準ブロックとの差分をとって符号化することを特徴
    とする請求項1に記載にデータ転送装置。
  3. 【請求項3】 前記データはカラー画像データであり、
    前記第1の符号化手段はブロックとしてラインごとに符
    号化し、前記第2の符号化手段は、所定のプレインを基
    準ブロックとして、基準ブロックであるプレインの各ラ
    インと、それに対応する他のプレインのラインとの差分
    をとって該ラインを符号化することを特徴とする請求項
    1に記載にデータ転送装置。
  4. 【請求項4】 前記転送手段は、前記第1の符号化手段
    で符号化されたデータを非同期転送で転送し、前記第2
    の符号化手段で符号化されたデータを同期転送で転送す
    ることを特徴とする請求項1乃至3のいずれかに記載の
    データ転送装置。
  5. 【請求項5】 第1の機器から第2の機器へとデータを
    転送するデータ転送制御方法であって、 注目ブロックと基準ブロックとの相関に応じて、第1の
    符号化方式と第2の符号化方式とのいずれか一方を選択
    する選択工程と、 第1の符号化方式が選択された場合、データを所定量の
    ブロックごとに単独に符号化する第1の符号化工程と、 第2の符号化方式が選択された場合、データを、所定量
    のブロックごとに、基準ブロックとの差分をとり該差分
    を符号化する第2の符号化工程と、 符号化されたデータを第1の機器から第2の機器へと転
    送する転送工程とを有することを特徴とするデータ転送
    制御方法。
  6. 【請求項6】 前記データは画像データであり、前記第
    1の符号化工程はブロックとしてラインごとに符号化
    し、前記第2の符号化工程は、所定ライン数おきのライ
    ンを基準ブロックとして、基準ブロック間のラインを前
    記基準ブロックとの差分をとって符号化することを特徴
    とする請求項5に記載にデータ転送制御方法。
  7. 【請求項7】 前記データはカラー画像データであり、
    前記第1の符号化工程はブロックとしてラインごとに符
    号化し、前記第2の符号化工程は、所定のプレインを基
    準ブロックとして、基準ブロックであるプレインの各ラ
    インと、それに対応する他のプレインのラインとの差分
    をとって該ラインを符号化することを特徴とする請求項
    5に記載にデータ転送制御方法。
  8. 【請求項8】 前記転送工程は、前記第1の符号化工程
    で符号化されたデータを非同期転送で転送し、前記第2
    の符号化工程で符号化されたデータを同期転送で転送す
    ることを特徴とする請求項5乃至7のいずれかに記載の
    データ転送制御方法。
  9. 【請求項9】 ホスト装置から画像データを転送し、該
    画像データを印刷装置により印刷する印刷システムであ
    って、 画像データを所定量のブロックごとに単独に符号化する
    第1の符号化手段と、 画像データを、所定量のブロックごとに、基準ブロック
    との差分をとり該差分を符号化する第2の符号化手段
    と、 注目ブロックと基準ブロックとの相関に応じて、前記第
    1の符号化手段と第2の符号化手段とのいずれか一方を
    選択する選択手段と、 符号化されたデータを第1の機器から第2の機器へと転
    送する転送手段とを有するホスト装置と、 前記転送手段により転送された符号化されたデータを受
    信する受信手段と、 受信した画像データを、その符号化方式に応じて復号す
    る復号手段と、 復号された画像データを印刷出力する出力手段とを有す
    る印刷装置とを具備することを特徴とする印刷システ
    ム。
  10. 【請求項10】 前記第1の符号化手段はブロックとし
    てラインごとに符号化し、前記第2の符号化手段は、所
    定ライン数おきのラインを基準ブロックとして、基準ブ
    ロック間のラインを前記基準ブロックとの差分をとって
    符号化することを特徴とする請求項9に記載に印刷シス
    テム。
  11. 【請求項11】 前記画像データはカラー画像データで
    あり、前記第1の符号化手段はブロックとしてラインご
    とに符号化し、前記第2の符号化手段は、所定のプレイ
    ンを基準ブロックとして、基準ブロックであるプレイン
    の各ラインと、それに対応する他のプレインのラインと
    の差分をとって該ラインを符号化することを特徴とする
    請求項9に記載に印刷システム。
JP9030888A 1997-02-14 1997-02-14 データ転送装置及びその制御方法及び印刷システム Withdrawn JPH10228357A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9030888A JPH10228357A (ja) 1997-02-14 1997-02-14 データ転送装置及びその制御方法及び印刷システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9030888A JPH10228357A (ja) 1997-02-14 1997-02-14 データ転送装置及びその制御方法及び印刷システム

Publications (1)

Publication Number Publication Date
JPH10228357A true JPH10228357A (ja) 1998-08-25

Family

ID=12316273

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9030888A Withdrawn JPH10228357A (ja) 1997-02-14 1997-02-14 データ転送装置及びその制御方法及び印刷システム

Country Status (1)

Country Link
JP (1) JPH10228357A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006304059A (ja) * 2005-04-22 2006-11-02 Kawasaki Microelectronics Kk 電子回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006304059A (ja) * 2005-04-22 2006-11-02 Kawasaki Microelectronics Kk 電子回路

Similar Documents

Publication Publication Date Title
US7062579B2 (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
EP0859327B1 (en) Data transmission apparatus, system and method, and image processing apparatus
JP3782542B2 (ja) 画像処理装置及び画像処理システム
JPH10243327A (ja) 画像入力装置とその制御方法及び画像入出力システム
JP2000358033A (ja) データ通信システム及びデータ通信方法
JPH10229427A (ja) 情報処理装置及び方法
JP4072215B2 (ja) 画像処理装置及びその制御方法、画像処理システム
JPH10224719A (ja) 電子機器、像形成システム、ビデオプリントシステム及びカメラ一体型記録再生装置
JP3682512B2 (ja) 画像取り込み装置及びその制御方法、印刷システム、印刷方法、及び、印刷装置及びその制御方法
JP3501613B2 (ja) データ通信システム、プリントシステム及びデータ通信装置
JPH10285240A (ja) データ通信装置及び方法、データ通信システム及び記憶媒体
JPH10228357A (ja) データ転送装置及びその制御方法及び印刷システム
JPH10228355A (ja) データ転送装置及びその制御方法及び印刷システム
JPH10228364A (ja) データ転送装置及びその制御方法及び印刷システム
JP3774542B2 (ja) データ処理方法、データ処理装置、プリンタ及び記憶媒体
US7397574B1 (en) Image processing controlling distribution of work among apparatuses based on apparatus performance
JP3495879B2 (ja) データ処理方法、データ処理装置、及びコンピュータ読み取り可能な記録媒体
JP3862349B2 (ja) 情報処理システム、画像処理システムおよびそれらの方法、並びに、情報処理装置およびコンピュータ可読メモリ
JP3495878B2 (ja) データ処理方法、データ処理装置及びプリンタ
JPH10307691A (ja) データ通信方法と装置及び印刷装置と前記装置を含む印刷システム
JP2004030109A (ja) 情報処理装置、情報処理方法及びそのプログラムを記憶した記憶媒体
JP2001147790A (ja) 情報処理装置および方法および記憶媒体
JP2001077823A (ja) 画像処理装置及びその制御方法並びに画像処理システム
JP2002064511A (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: 20040511