JP3494041B2 - データ転送制御装置及び電子機器 - Google Patents

データ転送制御装置及び電子機器

Info

Publication number
JP3494041B2
JP3494041B2 JP32153998A JP32153998A JP3494041B2 JP 3494041 B2 JP3494041 B2 JP 3494041B2 JP 32153998 A JP32153998 A JP 32153998A JP 32153998 A JP32153998 A JP 32153998A JP 3494041 B2 JP3494041 B2 JP 3494041B2
Authority
JP
Japan
Prior art keywords
node
self
data transfer
packet
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP32153998A
Other languages
English (en)
Other versions
JP2000134231A (ja
Inventor
俊孝 田中
隆央 小川
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP32153998A priority Critical patent/JP3494041B2/ja
Priority to US09/425,244 priority patent/US6578095B1/en
Publication of JP2000134231A publication Critical patent/JP2000134231A/ja
Application granted granted Critical
Publication of JP3494041B2 publication Critical patent/JP3494041B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S370/00Multiplex communications
    • Y10S370/912Packet communications

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ転送制御装
置及びこれを含む電子機器に関する。
【0002】
【背景技術及び発明が解決しようとする課題】近年、I
EEE1394と呼ばれるインターフェース規格が脚光
を浴びている。このIEEE1394は、次世代のマル
チメディアにも対応可能な高速シリアルバスインターフ
ェースを規格化したものである。このIEEE1394
によれば、動画像などのリアルタイム性が要求されるデ
ータも扱うことができる。また、IEEE1394のバ
スには、プリンタ、スキャナ、CD−Rドライブ、ハー
ドディスクドライブなどのコンピュータの周辺機器のみ
ならず、ビデオカメラ、VTR、TVなどの家庭用電化
製品も接続できる。このため、電子機器のデジタル化を
飛躍的に促進できるものとして期待されている。
【0003】このようなIEEE1394の概要につい
ては、例えば「IEEE1394ハイ・パフォーマンス
・シリアルバスの概要」(Interface Ap
r.1996の1〜10頁)、「PC周辺機器用バス規
格群総覧」(Interface Jan.1997の
106頁〜116頁)、「IEEE1394−1995
(FireWire)のリアルタイム転送モードとマル
チメディア対応プロトコル」(Interface J
an.1997の136〜146頁)に開示されてい
る。また、IEEE1394に準拠したデータ転送制御
装置としては、テキサス・インスツルメンツ社製のTS
B12LV31などが知られている。
【0004】しかしながら、このIEEE1394に準
拠したデータ転送制御装置には次のような課題があるこ
とが判明した。
【0005】即ち、現在のIEEE1394規格によれ
ば最大で400Mbpsの転送速度が実現可能となって
いる。しかし、現実には、処理のオーバーヘッドの存在
に起因して、システム全体の実転送速度はこれよりもか
なり低くなっている。つまり、CPU上で動作するファ
ームウェアやアプリケーションソフトが、送信データを
準備したり、受信データを取り込んだりするなどの処理
に多くの時間を要してしまい、バス上での転送速度が速
くても、結局、高速なデータ転送を実現できない。
【0006】特に、周辺機器に組み込まれるCPUは、
パーソナルコンピュータなどのホストシステムに組み込
まれるCPUに比べて処理能力が低い。このため、ファ
ームウェアやアプリケーションソフトの処理のオーバー
ヘッドの問題は、非常に深刻なものとなる。従って、こ
のようなオーバーヘッドの問題を効果的に解消できる技
術が望まれている。
【0007】本発明は、以上のような技術的課題に鑑み
てなされたものであり、その目的とするところは、ファ
ームウェアやアプリケーションソフトなどの処理のオー
バーヘッドを軽減し、小規模なハードウェアで高速なデ
ータ転送を実現できるデータ転送制御装置及びこれが用
いられる電子機器を提供することにある。
【0008】
【課題を解決するための手段】上記課題を解決するため
に本発明は、バスに接続される複数のノード間でのデー
タ転送のためのデータ転送制御装置であって、各ノード
の基本情報が格納される自己識別パケットが各ノードか
ら転送されてきた場合に、該自己識別パケットを診断
し、所与の管理機能を有するマネージャになるべきノー
ドを診断結果に基づき自動検出する回路と、検出された
ノードの識別番号を該ノードの自己識別パケットの基本
情報の中から取得し、該識別番号を保持する第1の保持
手段とを含むことを特徴とする。
【0009】本発明によれば、所与のマネージャになる
べきノードの識別番号がハードウェアにより自動検出さ
れ、その識別番号が、例えばレジスタ、半導体メモリな
どにより構成される第1の保持手段に保持される。従っ
て、データ転送を制御するファームウェアなどの処理負
担を軽減することが可能になる。これにより、実転送速
度の向上や、装置の低コスト化などを期待できるように
なる。
【0010】また本発明は、ノードの接続トポロジーに
おいてルートノードから遠いノードから順に自己識別パ
ケットが転送されてくる場合において、自己識別パケッ
トを転送してきたノードが、前記所与の管理機能を有す
るマネージャになれる資格を有するノードであると自己
識別パケットの基本情報に基づき判断された場合には、
該ノードの識別番号を前記第1の保持手段に上書きする
ことを特徴とする。このように自己識別パケットが送ら
れてくる順序をうまく利用することで、マネージャにな
るノードを、より簡易に検出できるようになる。
【0011】また本発明は、下層から送られてくるステ
ータス情報に基づいて自己識別期間中か否かを検出する
回路を含み、自己識別期間中に送られてきたパケットを
自己識別パケットと見なし、該自己識別パケットに基づ
いてマネージャになるべきノードの自動検出を行うこと
を特徴とする。このようにすれば、処理対象となるパケ
ットが自己識別パケットか否かを簡易に検出できるよう
になり、ハードウェアの小規模化を図れる。
【0012】また本発明は、マネージャとなるノードの
識別番号が自身のノードの識別番号と一致した場合に、
自身のノードが前記所与の管理機能を有するマネージャ
であることを示す情報を保持する第2の保持手段を含む
ことを特徴とする。このようにすれば、自身のノードが
所与の管理機能を有するマネージャか否かを容易に知る
ことができるようになる。
【0013】また本発明は、自身のノードの識別番号が
確定したことを条件にアクティブになる第1の信号と自
己識別期間が終了したことを条件にアクティブになる第
2の信号の両方を用いて、マネージャとなるノードの識
別番号が自身のノードの識別番号と一致したか否かを判
断することを特徴とする。第1の信号を用いることで、
自己識別期間が終了した後に自身のノードの識別番号が
確定した場合にも、適正に対処できるようになる。ま
た、第2の信号を用いることで、自身のノードの識別番
号が確定した後に、マネージャになるノードが変更した
場合にも、適正に対処できるようになる。
【0014】また本発明は、サブアクションギャップを
検出したことを条件にアクティブになる第3の信号を用
いて、マネージャとなるノードの識別番号が自身のノー
ドの識別番号と一致したか否かを判断することを特徴と
する。このようにすれば、自身のノードの識別番号が必
ず自己識別期間中に確定するような物理層のデバイスと
の組み合わせにおいて、簡素な回路構成で、マネージャ
となるノードの識別番号と自身のノードの識別番号の一
致を適正に検出できるようになる。
【0015】また本発明は、前記第1の保持手段から前
記所与の管理機能を有するマネージャになるノードの識
別番号を読み出し、読み出された識別番号を利用してデ
ータ転送を制御する手段を含むことを特徴とする。この
ようなデータ転送制御手段としては、例えば中央処理ユ
ニット上で動くファームウェアなどを考えることができ
る。
【0016】なお本発明では、前記所与の管理機能を有
するマネージャが、IEEE1394規格におけるアイ
ソクロナスリソースマネージャであることが望ましい。
【0017】また本発明に係る電子機器は、上記のいず
れかのデータ転送制御装置と、前記データ転送制御装置
及びバスを介して他のノードから受信したデータに所与
の処理を施す装置と、処理が施されたデータを出力又は
記憶するための装置とを含むことを特徴とする。また本
発明に係る電子機器は、上記のいずれかのデータ転送制
御装置と、前記データ転送制御装置及びバスを介して他
のノードに送信するデータに所与の処理を施す装置と、
処理が施されるデータを取り込むための装置とを含むこ
とを特徴とする。
【0018】本発明によれば、他のノードから転送され
たデータを電子機器において出力したり記憶したりする
処理、電子機器において取り込んだデータを他のノード
に転送したりする処理を高速化することが可能になる。
また、本発明によれば、データ転送を制御するファーム
ウェアなどの処理負担が軽減されるため、電子機器の低
コスト化、小規模化などを図ることも可能になる。
【0019】
【発明の実施の形態】以下、本発明の好適な実施形態に
ついて図面を用いて詳細に説明する。
【0020】1.IEEE1394 まず、IEEE1394の概要について簡単に説明す
る。
【0021】1.1 データ転送速度、接続トポロジー IEEE1394(IEEE1394−1995、IE
EE1394.A)では100〜400Mbpsの高速
なデータ転送が可能となっている(IEEE1394.
Bでは800〜3200Mbps)。また、転送速度が
異なるノードをバスに接続することも許される。
【0022】各ノードはツリー状に接続されており、1
つのバスに最大で63個のノードが接続可能になってい
る。なお、バスブリッジを利用すれば約64000個の
ノードを接続することも可能である。
【0023】電源が投入されたり、途中でデバイスの抜
き差しが発生すると、バスリセットが発生し、接続トポ
ロジーに関する情報が全てクリアされる。そして、バス
リセット後、ツリー識別(ルートノードの決定)、自己
識別が行われる。その後、アイソクロナスリソースマネ
ージャ、サイクルマスタ、バスマネージャ等の管理ノー
ドが決定される。そして、通常のパケット転送が開始さ
れる。
【0024】1.2 転送方式 IEEE1394では、パケットの転送方式として、信
頼性が要求されるデータの転送に好適な非同期転送と、
リアルタイム性が要求される動画像や音声などのデータ
の転送に好適なアイソクロナス転送が用意されている。
【0025】図1(A)に、非同期サブアクションの例
を示す。1つのサブアクションは、調停、パケット転
送、アクノリッジメントからなる。即ち、データ転送に
先立って、まず、バスの使用権に関する調停が行われ
る。そしてソース(転送元)ノードからデスティネーシ
ョン(転送先)ノードにパケットが転送される。このパ
ケットのヘッダにはソースIDとデスティネーションI
Dが含まれる。デスティネーションノードは、このデス
ティネーションIDを読んで、自ノード宛のパケットか
否かを判断する。デスティネーションノードは、パケッ
トを受け取ると、ソースノードにアクノリッジメント
(ACK)のパケットを返す。
【0026】パケット転送とACKの間にはアクノリッ
ジギャップが存在する。また、1つのサブアクションと
次のサブアクションの間にはサブアクションギャップが
存在する。そして、サブアクションギャップに相当する
一定のバス・アイドル時間が経過しないと、次のサブア
クションの調停を開始できない。これによりサブアクシ
ョン相互の衝突が回避される。
【0027】図1(B)に、アイソクロナスサブアクシ
ョンの例を示す。アイソクロナス転送はブロードキャス
ト(バスに接続される全てのノードに転送)で実行され
るため、パケット受信時にACKは返送されない。ま
た、アイソクロナス転送では、ノードIDではなくチャ
ネル番号を使用してパケット転送が行われる。なお、サ
ブアクション間にはアイソクロナスギャップが存在す
る。
【0028】図1(C)に、データ転送時のバスの様子
を示す。アイソクロナス転送は、サイクルマスタが一定
周期毎にサイクルスタートパケットを発生することで開
始する。これにより、1つのチャネル当たり、125μ
s毎に少なくとも1つのパケットを転送できるようにな
る。この結果、動画像や音声などのリアルタイム性が要
求されるデータの転送が可能になる。
【0029】非同期転送はアイソクロナス転送の合間に
行われる。即ち、アイソクロナス転送の方が非同期転送
よりも優先順位が高くなっている。これは、図1(C)
に示すように、アイソクロナスギャップの時間を、非同
期転送のサブアクションギャップの時間よりも短くする
ことで実現される。
【0030】1.3 ツリー識別 ツリー識別はバスリセットの後に行われる。ツリー識別
によりノード間の親子関係やルートノードが決定され
る。
【0031】まず、リーフノード(1つのノードにしか
接続されていないノード)が、隣接するノードに、ペア
レントノーティファイを送る。例えば図2(A)のよう
にノードA、B、C、D、Eが接続されている場合に
は、ノードAからノードBに、ノードD及びEからノー
ドCに、ペアレントノーティファイ(PN)が送られ
る。
【0032】ペアレントノーティファイを受け取ったノ
ードは、送り元のノードを自身の子と認知する。そし
て、チャイルドノーティファイをそのノードに送る。例
えば図2(A)では、ノードBからノードAに、ノード
CからノードD及びEにチャイルドノーティファイ(C
N)が送られる。これによってノードB、A間、ノード
C、D間、ノードC、E間の親子関係が決定する。
【0033】ノードB、Cの親子関係は、どちらが先に
ペアレントノーティファイを送ったかで決定される。例
えば図2(B)のように、ノードCの方が先にペアレン
トノーティファイを送ると、ノードBが親になりノード
Cが子になる。
【0034】ポートの接続先の全てのノードが自身の子
となるノードがルートになる。図2(B)では、ノード
Bがルートになる。なお、IEEE1394では、全て
のノードがルートになる可能性がある。
【0035】1.4 自己識別 ツリー識別の後、自己識別が行われる。自己識別におい
ては、接続トポロジーにおいてルートノードから遠いノ
ードから順にセルフIDパケットが転送される。
【0036】より具体的には、例えば図3において、ま
ず、ルートノードBのポート1(番号の小さいポート)
に接続されるノードAが、セルフIDパケット(自己識
別パケット)を全てのノードにブロードキャストする。
【0037】次に、ルートノードBのポート2(番号が
大きいポート)に接続されるノードCが選択され、この
ノードCのポート1(番号の小さいポート)に接続され
るノードDがセルフIDパケットをブロードキャストす
る。次に、ノードCのポート2(番号の大きいポート)
に接続されるノードEがセルフIDパケットをブロード
キャストし、その後、ノードCがブロードキャストす
る。最後に、ルートであるノードBがセルフIDパケッ
トをブロードキャストし、自己識別が完了する。
【0038】セルフIDパケットには各ノードのIDが
含まれる。ブロードキャストを行う時点で他のノードか
ら受け取ったセルフIDパケットの個数が、この各ノー
ドのIDとなる。例えば図3では、ノードAがブロード
キャストを行う時点では、どのノードもセルフIDパケ
ットを発していないため、ノードAのIDは0になる。
ノードAは、このID=0をセルフIDパケットに含ま
せてブロードキャストする。また、ノードDがブロード
キャストを行う時点では、ノードAのみがセルフIDパ
ケットを発している。このため、ノードDのIDは1に
なる。同様に、ノードE、C、BのIDは、各々、2、
3、4になる。
【0039】図4(A)にセルフIDパケットのフォー
マットを示す。同図に示すようにセルフIDパケットに
は各ノードの基本情報が含まれる。具体的には、各ノー
ドのID(PHY_ID)、リンク層がアクティブか否
か(L)、ギャップカウント(gap_cnt)、転送
速度(sp)、アイソクロナスリソースマネージャにな
れる能力を有するか否か(C)、電力状態(pwr)、
ポートの状態(p0、p1、p2)などに関する情報が
含まれる。
【0040】なお、図4(B)に、ノードのポート数が
4個以上の場合に使用されるセルフIDパケット#1、
#2、#3のフォーマットを示す。ポート数が4〜11
個の場合にはセルフIDパケット#0(図4(A))及
び#1が、12〜19個の場合にはセルフIDパケット
#0、#1及び#2が、20〜27個の場合にはセルフ
IDパケット#0、#1、#2及び#3が使用されるこ
とになる。
【0041】また、図4(C)、(D)に、セルフID
パケットと同様に、物理層のパケットであるリンクオン
パケット、PHY構成パケットのフォーマットを示す。
【0042】1.5 アイソクロナスリソースマネージ
ャ アイソクロナスリソースマネージャ(IRM)は以下の
管理機能を有する。
【0043】第1に、アイソクロナス転送に必要な種々
のリソースを提供する。例えば、チャネル番号レジスタ
や帯域幅レジスタを提供する。第2に、バスマネージャ
のIDを示すレジスタを提供する。第3に、バスマネー
ジャがいない場合に、簡易的なバスマネージャとなる役
割を有する。
【0044】IRMになれる能力を有し(アイソクロナ
スリソースを管理する能力を有し)、且つ、動作状態に
なっている(リンク層がアクティブになっている)ノー
ドの中で(IRMになれる資格を有するノードの中
で)、ルートに最も近い(IDが最も大きい)ノードが
IRMになる。より、具体的には、図4(A)のセルフ
IDパケットにおいて、IRMになれる能力を有するか
否かを示すC(CONTENDER)ビットと、リンク
層がアクティブか否かを示すL(LINK_ACTIV
E)ビットが共に1になっているノードの中で、ルート
に一番近いノード(PHY_IDが一番大きいノード)
がIRMになる。例えば、ルートノードのセルフIDパ
ケットのCビットとLビットが1の場合には、ルートノ
ードがIRMになる。
【0045】1.6 サイクルマスタ、バスマネージャ サイクルマスタは、図1(C)に示すサイクルスタート
パケットを送信する役割を有し、ルートノードがサイク
ルマスタになる。
【0046】バスマネージャは、トポロジーマップ(各
ノードの接続状態)の作成、スピードマップの作成、バ
スの電力管理、サイクルマスタの決定、ギャップカウン
トの最適化などの仕事を行う。
【0047】1.7 プロトコル構成 図5を用いて、IEEE1394のプロトコル構成(層
構造)について説明する。
【0048】IEEE1394のプロトコルは、物理
層、リンク層、トランザクション層により構成される。
また、シリリアルバスマネージメントは、物理層、リン
ク層、トランザクション層をモニターしたり制御したり
するものであり、ノードの制御やバスのリソース管理の
ための種々の機能を提供する。
【0049】物理層は、リンク層により使用されるロジ
カルシンボルを電気信号に変換したり、バスの調停を行
ったり、バスの物理的インターフェースを定義する。
【0050】リンク層は、アドレッシング、データチェ
ック、データフレーミング、サイクル制御などを提供す
る。
【0051】トランザクション層は、リード、ライト、
ロックなどのトランザクションを行うためのプロトコル
を定義する。
【0052】物理層及びリンク層は、通常、データ転送
制御装置(インターフェースチップ)などのハードウェ
アにより実現される。また、トランザクション層は、C
PU上で動作するファームウェアや、ハードウェアによ
り実現される。
【0053】2.全体構成 次に、本実施形態の全体構成について図6を用いて説明
する。
【0054】図6において、PHYインターフェース1
0は、物理層のプロトコルを実現するPHYチップとの
インターフェースを行う回路である。
【0055】リンクコア20は、リンク層のプロトコル
やトランザクション層のプロトコルの一部を実現する回
路である。レジスタ22は、これらのプロトコルを実現
したりリンクコア20を制御するためのレジスタであ
る。
【0056】FIFO(ATF)30、FIFO(IT
F)32、FIFO(RF)34は、各々、非同期送信
用、アイソクロナス送信用、受信用のFIFOであり、
例えばレジスタや半導体メモリなどのハードウェアによ
り構成される。本実施形態では、これらのFIFO3
0、32、34の段数は非常に少ない。例えば1つのF
IFOの段数は、好ましくは3段以下であり、更に好ま
しくは2段以下となる。
【0057】DMAC40、42、44は、各々、AT
F、ITF、RF用のDMAコントローラである。これ
らのDMAC40、42、44を用いることで、CPU
66に介入されることなく、RAM80とリンクコア2
0との間でのデータ転送が可能になる。なお、レジスタ
46は、DMAC40、42、44などを制御するレジ
スタである。
【0058】ポートインターフェース50は、アプリケ
ーション層のデバイス(例えばプリンタの印字処理を行
うデバイス)とのインターフェースを行う回路である。
本実施形態では、このポートインターフェース50を用
いて、例えば8ビットのデータ転送が可能になってい
る。
【0059】FIFO(PF)52は、アプリケーショ
ン層のデバイスとの間でのデータ転送のためのFIFO
であり、DMAC54は、PF用のDMAコントローラ
である。レジスタ56は、ポートインターフェース50
やDMAC54を制御するレジスタである。
【0060】CPUインターフェース60は、データ転
送制御装置をコントロールするCPU66とのインター
フェースを行う回路である。CPUインターフェース6
0は、アドレスデコーダ62、データ同期化回路63、
割り込みコントローラ64を含む。クロック制御回路6
8は、本実施形態で使用されるクロックを制御するもの
であり、PHYチップから送られてくるSCLKや、マ
スタークロックであるHCLKが入力される。
【0061】バッファマネージャ70は、RAM80と
のインターフェースを管理する回路である。バッファマ
ネージャ70は、バッファマネージャの制御のためのレ
ジスタ72、RAM80へのバス接続を調停する調停回
路74、各種の制御信号を生成するシーケンサ76を含
む。
【0062】RAM80は、ランダムアクセス可能なパ
ケット記憶手段として機能するものであり、その機能は
例えばSRAM、DRAMなどにより実現される。そし
て、本実施形態では、図7に示すように、このRAM8
0がヘッダ領域(広義には制御情報領域)とデータ領域
に分離されている。そして、パケットのヘッダ(広義に
は制御情報)は図7のヘッダ領域に格納され、パケット
のデータはデータ領域に格納される。
【0063】なおRAM80は、本実施形態のデータ転
送制御装置に内蔵させることが特に望ましいが、その一
部又は全部を外付けにすることも可能である。
【0064】バス90(或いはバス92、94)は、ア
プリケーションに接続されるものである(第1のバ
ス)。またバス96(或いはバス98)はデータ転送制
御装置をコントロールするためのものであり、データ転
送制御装置をコントロールするデバイス(例えばCP
U)に電気的に接続される(第2のバス)。またバス1
00(或いはバス102、104、105、106、1
07、108、109)は、物理層のデバイス(例えば
PHYチップ)に電気的に接続されるものである(第3
のバス)。また、バス110は、ランダムアクセス可能
な記憶手段であるRAMに電気的に接続されるものであ
る(第4のバス)。
【0065】バッファマネージャ70の調停回路74
は、DMAC40、DMAC42、DMAC44、CP
Uインターフェース60、DMAC54からのバスアク
セス要求の調停を行う。そして、この調停結果に基づい
て、各々、バス105、107、109、98、94の
いずれかと、RAM80のバス110との間にデータの
経路が確立される(第1、第2、第3のバスのいずれか
と第4のバスとの間にデータ経路が確立される)。
【0066】本実施形態の1つの特徴は、ランダムアク
セスが可能でありパケットを格納するRAM80を設け
ると共に、互いに分離されるバス90、96、100
と、これらのバスをRAM80のバス110に接続する
ための調停回路74とを設けた点にある。
【0067】例えば図8に、本実施形態と構成の異なる
データ転送制御装置の例を示す。このデータ転送制御装
置では、リンクコア902は、PHYインターフェース
900、バス922を介してPHYチップと接続され
る。また、リンクコア902は、FIFO904、90
6、908、CPUインターフェース910、バス92
0を介してCPU912に接続される。そして、CPU
912は、バス924を介して、CPUにローカルなメ
モリであるRAM914に接続される。
【0068】なお、FIFO904、906、908
は、図6のFIFO30、32、34と異なり、非常に
段数の多いものとなる(例えば1つのFIFOが16段
程度)。
【0069】図8の構成のデータ転送制御装置を用いた
場合のデータ転送の手法について図9を用いて説明す
る。PHYチップ930を介して他のノードから送られ
てきた受信パケットは、バス922、データ転送制御装
置932、バス920を介してCPU912が受け取
る。そして、CPU912は、受け取った受信パケット
をバス924を介してRAM914に書き込む。そし
て、CPU912は、受信パケットをアプリケーション
層が使用できるように加工し、バス926を介してアプ
リケーション層のデバイス934に転送する。
【0070】一方、アプリケーション層のデバイス93
4からのデータを転送する場合には、CPU912は、
このデータをRAM914に書き込む。そして、RAM
914のデータにヘッダを付加することでIEEE13
94に準拠したパケットを生成する。そして生成された
パケットは、データ転送制御装置932、PHYチップ
930などを介して他のノードに送信される。
【0071】しかしながら、このようなデータ転送手法
によると、CPU912の処理負荷が非常に重くなる。
従って、ノード間を接続するシリアルバスの転送速度が
高速になっても、CPU912の処理のオーバーヘッド
などに起因して、システム全体の実転送速度は低くな
り、結局、高速なデータ転送を実現できない。
【0072】このような問題を解決する1つの手法とし
て、図10に示すように、データ転送制御装置932と
RAM914との間でのデータ転送や、RAM914と
アプリケーション層のデバイス934との間でのデータ
転送を、ハードウェアDMAにより実現する手法も考え
られる。
【0073】しかしながら、この手法では、CPUバス
928が、データ転送制御装置932、RAM914間
でのデータ転送、RAM914、CPU912間でのデ
ータ転送、RAM914、アプリケーション層デバイス
934間でのデータ転送に使用されることになる。従っ
て、システム全体のデータ転送の高速化を図ろうとする
と、CPUバス928としてPCIバスのような高速な
バスを使用しなければならなくなり、これは、データ転
送制御装置を使用する電子機器の高コスト化を招く。
【0074】これに対して、本実施形態では図11に示
すように、データ転送制御装置120、アプリケーショ
ン層デバイス124間のバス90と、CPUバス96
と、データ転送制御装置120、RAM80間のバス1
10とが互いに分離されている。従って、CPUバス9
6をデータ転送の制御のみに使用できるようになる。ま
た、バス90を占有して、データ転送制御装置120、
アプリケーション層デバイス124間でデータ転送を行
うことができるようになる。例えば、データ転送制御装
置120が組み込まれる電子機器がプリンタである場合
には、バス90を占有して印字データを転送できるよう
になる。この結果、CPU66の処理負荷を軽減でき、
システム全体の実転送速度を高めることができる。また
CPU66として安価なものを採用できると共に、CP
Uバス96として高速なバスを使用する必要性がなくな
る。このため、電子機器の低コスト化、小規模化を図れ
るようになる。
【0075】3.IRM自動検出 さて、本実施形態のデータ転送制御装置は、IRMの自
動検出機能を有している。この機能は図6のリンクコア
20により実現される。
【0076】図12に、リンクコア20の構成の一例を
示す。なお図12では、IRM自動検出に関係ない回路
ブロックについては省略している。
【0077】リンクコア20は、バス監視回路130、
直列・並列変換回路132、IRM検出回路140を含
む。そして、IRM検出回路140は、パケット診断回
路142、PHYIDレジスタ144、IRMIDレジ
スタ146、WIRM生成回路148、WIRMレジス
タ150を含む。
【0078】ここで、バス監視回路130は、PHYイ
ンターフェース10を介してPHYチップに接続される
8ビット幅のデータバスD、2ビット幅のコントロール
バスCTLを監視する回路である。
【0079】直列・並列変換回路132は、データバス
Dのデータを32ビットのデータに変換する回路であ
る。例えば、転送速度が400Mbpsの場合には8ビ
ットのデータが32ビットのデータに、200Mbps
の場合には4ビットのデータが32ビットのデータに、
100Mbpsの場合には2ビットのデータが32ビッ
トのデータに変換される。
【0080】パケット診断回路142は、セルフIDパ
ケットなどのパケットを診断する回路である。
【0081】PHYIDレジスタ144は、自身のノー
ドのID(PHY_ID)を保持するものである。ま
た、IRMIDレジスタ146は、IRMになれる資格
のあるノードのID(IRM_ID)が順次上書きされ
るレジスタである。なお、最終的には、IRMになった
ノードのIDがIRMIDレジスタ146に保持される
ことになる。
【0082】WIRM生成回路148は、PHY_ID
とIRM_IDが一致したか否かを検出し、一致した場
合には、自身がIRMになったことを示す情報であるW
IRM(WonIRM)を生成する。そして、このWI
RMは、WIRMレジスタ150に保持される。
【0083】次に、IRMの自動検出処理の詳細につい
て、図13のタイミング波形図を用いて説明する。図1
3は、ノード数が3であり、1番目にセルフIDパケッ
トを転送したノードが自身のノードであり、3番目にセ
ルフIDパケットを転送したノードがIRMになる場合
の例である。
【0084】まず、バス監視回路130が、セルフID
期間(バスリセットから1回目のサブアクションギャッ
プまでの期間)中か否かを判断し、セルフID期間中の
場合には図13のA1に示すように、バスリセット中で
あることを示す信号BRIPをHレベルにする。
【0085】セルフID期間中か否かは以下のようにし
て検出する。まず、バス監視回路130が、PHYチッ
プからの2ビットのCTLを監視する。そして図14
(A)に示すようにCTLが(01)の場合には、図1
4(B)に示すようにPHYチップからデータバスDを
介してステータス情報が送られてくると判断する。この
PHYチップからDを介して送られてくるステータス情
報の中のステータスビットの内容を調べることで、図1
4(C)に示すようにバスリセットがなされたか否か
(ビット2)、サブアクションギャップが来たか否か
(ビット1)などを判断できる。そして、バス監視回路
130は、バスリセットがなされたと判断すると、図1
3に示すようにBRIPをHレベルにし、サブアクショ
ンギャップが来たと判断すると、BRIPをLレベルに
戻す。
【0086】このBRIPのレベルを監視することで、
パケット診断回路142は、セルフID期間中か否かを
知ることができるようになる。そして、このセルフID
期間に送られてきたパケットをセルフIDパケットと見
なし、これらのセルフIDパケットを診断することでI
RMの自動検出を行うことができるようになる。
【0087】また、バス監視回路130は、CTL及び
Dを用いて自身のノードのIDも取得する。即ち、PH
Yチップは、セルフID期間において自身のIDが確定
すると、このIDを含むセルフIDパケットをブロード
キャストすると共に、PHYチップが内蔵するレジスタ
にこのIDを格納する。このPHYチップのレジスタの
内容は、図14(C)に示すようにステータス情報のス
テータスビット8〜15を見ることで知ることができ
る。従って、バス監視回路130は、自身のIDが確定
すると、CTL及びDを調べることで、そのIDを取得
できる。そして、取得したIDは、SD(Status
Data)としてPHYIDレジスタ144に出力され
る。なおSSは、SDの取り込みタイミングを知らせる
ためのストローブ信号である。
【0088】例えば図13では、1番目にセルフIDパ
ケットを転送したノードが自身のノードである。従っ
て、取得した自身のIDを知らせるSDがA2のタイミ
ングで出力され、PHYIDレジスタ144は、このS
DをSSにより取り込む。これにより、A3に示すよう
に、PHYIDレジスタ144は、自身のノードのID
であるPHY_IDを保持できるようになる。
【0089】さて、図14(B)に示すように、CTL
が(10)である場合には受信状態になり、PHYチッ
プからデータバスDを介してセルフIDパケットが送ら
れてくる。直列・並列変換回路132は、これらのセル
フIDパケットのデータを32ビットのデータであるD
Iに変換し、パケット診断回路142、IRMIDレジ
スタ146に出力する。
【0090】なお、DIEは、DIのデータが有効か無
効かを示す信号である(DIEがHレベルの時に有
効)。このDIEを調べることでパケット診断回路14
2はパケットの区切りを知ることができる。また、DI
Sは、DIの取り込みタイミングを知らせるためのスト
ローブ信号である。
【0091】DIを受けたパケット診断回路142は、
DIに含まれる各ノードのセルフIDパケットを診断す
る。即ち図4(A)のセルフIDパケットのCビットと
Lビットを調べる。そしてIRMになれる能力を有する
か否かを示すCビットが1であり、且つ、リンク層がア
クティブか否かを示すLビットが1である場合には、そ
のセルフIDパケットを送ったノードはIRMになれる
資格があるとして、GID(GetID)をHレベルに
する。
【0092】例えば図13では、1番目にセルフIDパ
ケットを送ったノード(自身のノード)が、IRMにな
れる資格があるため、A4のタイミングでGIDがHレ
ベルになる。そして、直列・並列変換回路132からD
Iを受けているIRMIDレジスタ146は、このGI
Dをストローブ信号として、A5に示すように、1番目
のセルフIDパケットに含まれるIDを取得し、これを
保持する。
【0093】また図13では、3番目にセルフIDパケ
ットを送ったノードも、IRMになれる資格を有するた
め、A6のタイミングでGIDがHレベルになる。そし
て、IRMIDレジスタ146は、このGIDをストロ
ーブ信号として、A7に示すように、3番目のセルフI
Dパケットに含まれるIDを取得し、これを前の内容に
上書きする。そして、図13の場合には総ノード数が3
個であるため、3番目にセルフIDを送ったノードがI
RMに確定する。
【0094】即ち、セルフIDパケットはルートから遠
いノードから順(IDが小さいノードから順)に送られ
てくる。また、IRMになるのは、IRMになれる資格
(Cビット及びLビットが共に1)を有するノードの中
でルートに最も近いノードである(ルートノードがIR
Mになれる資格を有する場合にはルートノードがIR
M)。従って、IRMになれる資格を有するノードのI
DをIRMIDレジスタ146に上書きしてゆけば、最
終的には、IRMに確定するノードのIDをIRMID
レジスタ146に保持することが可能になる。
【0095】以上のようにして本実施形態では、IRM
になるノードのIDをハードウェアにより自動検出し、
保持することに成功している。
【0096】また、本実施形態では、IRMになるノー
ドが自身のノードであるか否かを判定し、自身のノード
である場合にはそのことを示す情報を保持している。
【0097】即ち、PHYIDレジスタ144は、自身
のノードのIDを示すPHY_IDをWIRM生成回路
148に出力し、IRMIDレジスタ146は、IRM
になるノード(正確にはIRMになる可能性のあるノー
ド)のIDを示すIRM_IDをWIRM生成回路14
8に出力する。
【0098】WIRM生成回路148は、これらのPH
Y_IDとIRM_IDを比較し、一致した場合にはW
IRM(WonIRM)をHレベルにし、一致しない場
合にはWIRMをLレベルにする。そして、このWIR
MはWIRMレジスタ150に保持される。
【0099】この際、本実施形態では、自身のノードの
IDが確定したことを条件にアクティブになる信号であ
るGPID(GotPhyID)と、セルフID期間が
終了したことを条件にアクティブになる信号であるES
ID(EndSelfID)の両方を用いて、PHY_
IDとIRM_IDを比較している。
【0100】ここで、前者のGPIDは、PHYIDレ
ジスタ144が、例えば信号SSなどを用いて生成す
る。また後者のESIDは、パケット診断回路142
が、例えば信号BRIPなどを用いて生成する。
【0101】例えば図13では、A8に示すように、G
PIDがHレベルになったタイミングでPHY_IDと
IRM_IDが比較される。そして比較の結果、両者が
一致しているため、WIRMはHレベルになる。またA
9に示すように、ESIDがHレベルになったタイミン
グでも、PHY_IDとIRM_IDが比較される。そ
して比較の結果、両者が不一致であるため、WIRMは
Lレベルに戻る。
【0102】即ち、IRMになるノードは、全てのノー
ドのセルフIDパケットを調べないと確定しない。この
ため、GPIDがアクティブになるタイミングのみなら
ず、ESIDがアクティブになるタイミング(セルフI
D期間が終了したタイミング)でも、PHY_IDとI
RM_IDが一致するか否かを調べる必要がある。
【0103】図15に、3番目にセルフIDパケットを
転送したノードが自身のノードであり、この自身のノー
ドがIRMになる場合の例を示す。この場合、B1に示
すようにESIDがアクティブになったタイミング、即
ちセルフID期間が終了したタイミングでは、自身のノ
ードのIDは確定していないことも有り得る。従って、
このタイミングでPHY_IDとIRM_IDを比較す
ると、これらは一致していないと判断され、WIRMは
Lレベルのままになる。
【0104】一方、B2に示すように、GPIDがアク
ティブになったタイミング、即ち自身のノードが確定し
たタイミングで、再度PHY_IDとIRM_IDを比
較すると、これらは一致している。このため、B3に示
すように、WIRMはHレベルになる。これにより、3
番目にセルフIDパケットを送った自身のノードがIR
Mになったことを、適正に検出できるようになる。
【0105】なお、GPIDがアクティブになるタイミ
ング、即ち自身のノードのIDが確定するタイミング
が、セルフID期間の終了よりも以前になるようなPH
Yチップ(物理層のデバイス)も存在し得る。このよう
なPHYチップと本実施形態のデータ転送制御装置とを
組み合わせる場合には、セルフID期間の終了、即ちサ
ブアクションギャップの検出をもって、自身のノードが
IRMになったか否かを判断できる。
【0106】以上のように本実施形態によれば、IRM
になるノードのIDを自動検出し、そのIDをIRMI
Dレジスタ146に保持できると共に、自身のノードが
IRMになったことを示す情報(WIRM)もWIRM
レジスタ150に保持できる。これにより、CPU66
上で動作するファームウェアなどの処理負担を格段に軽
減することに成功している。
【0107】即ち、アイソクロナス転送を行う場合に
は、アイソクロナス転送を行うチャネルの番号と帯域幅
をIRMから取得する必要がある。従って、ファームウ
ェア(トランザクション層)は、IRMのIDを知る必
要がある。
【0108】しかしながら、これまでは、IRMのID
をハードウェアにより自動検出できなかったため、ファ
ームウェアが、セルフIDパケットに基づいてトポロジ
ーマップを作成し、このトポロジーマップに基づいてI
RMのIDを検出する必要があった。
【0109】図8の構成のデータ転送制御装置を例にと
れば、CPU912で動作するファームウェアは図16
(A)に示すような処理を行う必要がある。即ち、ファ
ームウェアは、セルフIDパケットを受信すると、これ
をCPU912にローカルに設けられたRAM914に
格納する(ステップS1、S2)。そして、ファームウ
ェアは、全てのセルフIDパケットの受信が完了すると
(ステップS3)、RAM914から、受信したセルフ
IDパケットをリードする(ステップS4)。そして、
トポロジーマップを作成するなどしてIRMのIDをソ
フトウェアにより検出する(ステップS5)。このよう
にIRMのIDを検出する処理は、ファームウェアにと
って非常に負荷の重い処理となる。
【0110】これに対して、本実施形態によれば、図1
6(B)のステップT1に示すように、ファームウェア
は、IRMのIDを知るためには図12のIRMIDレ
ジスタ146をリードするだけでよい。従って、ファー
ムウェアの処理負荷が非常に軽くなり、システム全体の
実転送速度の向上を期待できるようになる。
【0111】また、図16(A)では、受信した全ての
セルフIDパケットをRAMに格納する必要がある。セ
ルフIDパケットは、ノードの個数に応じた個数だけ必
要であり、バスに63個のノードが接続されると例えば
最小で63個のセルフIDパケットを保持する必要があ
る。従って、セルフIDパケットをそのままRAMに格
納すると、RAMの空き容量が減ってしまう。
【0112】これに対して、本実施形態によれば、セル
フIDパケットをRAMに格納することなく、IRMを
自動検出することが可能になる。従って、RAMの使用
容量を節約することが可能となる。
【0113】なお、本実施形態においても、他の用途に
使用するためにセルフIDパケットをRAMに格納する
ようにしてもよい。この場合には、ヘッダ(広義には制
御情報)と複数のセルフIDパケットの並びからなるデ
ータとによりフレームが構成されるパケットを生成し、
このパケットをRAMに格納するようにすることが望ま
しい。更に、この場合、図4(A)、(B)のセルフI
Dパケットの2クワドレット目のエラー検出情報(最初
の32ビットの反転)の部分を削除したものの並びによ
りデータを構成することが望ましい。このようにするこ
とで、生成されるパケットのサイズを更に小さくするこ
とが可能になる。
【0114】4.電子機器 次に、本実施形態のデータ転送制御装置を含む電子機器
の例について説明する。
【0115】例えば図17(A)に電子機器の1つであ
るプリンタの内部ブロック図を示し、図18(A)にそ
の外観図を示す。CPU(マイクロコンピュータ)51
0はシステム全体の制御などを行う。操作部511はプ
リンタをユーザが操作するためのものである。ROM5
16には、制御プログラム、フォントなどが格納され、
RAM518はCPU510のワーク領域として機能す
る。表示パネル519はプリンタの動作状態をユーザに
知らせるためのものである。
【0116】PHYチップ502、データ転送制御装置
500を介して、パーソナルコンピュータなどの他のノ
ードから送られてきた印字データは、バス504を介し
て印字処理部512に直接送られる。そして、印字デー
タは、印字処理部512にて所与の処理が施され、プリ
ントヘッダなどからなる印字部(データを出力するため
の装置)514により紙に印字されて出力される。
【0117】図17(B)に電子機器の1つであるスキ
ャナの内部ブロック図を示し、図18(B)にその外観
図を示す。CPU520はシステム全体の制御などを行
う。操作部521はスキャナをユーザが操作するための
ものである。ROM526には制御プログラムなどが格
納され、RAM528はCPU520のワーク領域とし
て機能する。
【0118】光源、光電変換器などからなる画像読み取
り部(データを取り込むための装置)522により原稿
の画像が読み取られ、読み取られた画像のデータは画像
処理部524により処理される。そして、処理後の画像
データがバス505を介してデータ転送制御装置500
に直接送られる。データ転送制御装置500は、この画
像データにヘッダなどを付加することでパケットを生成
し、PHYチップ502を介してパーソナルコンピュー
タなどの他のノードに送信する。
【0119】図17(C)に電子機器の1つであるCD
−Rドライブの内部ブロック図を示し、図18(C)に
その外観図を示す。CPU530はシステム全体の制御
などを行う。操作部531はCD−Rをユーザが操作す
るためのものである。ROM536には制御プログラム
などが格納され、RAM538はCPU530のワーク
領域として機能する。
【0120】レーザ、モータ、光学系などからなる読み
取り&書き込み部(データを取り込むための装置又はデ
ータを記憶するための装置)533によりCD−R53
2から読み取られたデータは、信号処理部534に入力
され、エラー訂正処理などの所与の信号処理が施され
る。そして、信号処理が施されたデータが、バス506
を介してデータ転送制御装置500に直接送られる。デ
ータ転送制御装置500は、このデータにヘッダなどを
付加することでパケットを生成し、PHYチップ502
を介してパーソナルコンピュータなどの他のノードに送
信する。
【0121】一方、PHYチップ502、データ転送制
御装置500を介して、他のノードから送られてきたデ
ータは、バス506を介して信号処理部534に直接送
られる。そして、信号処理部534によりこのデータに
所与の信号処理が施され、読み取り&書き込み部533
によりCD−R532に記憶される。
【0122】なお、図17(A)、(B)、(C)にお
いて、CPU510、520、530の他に、データ転
送制御装置500でのデータ転送制御のためのCPUを
別に設けるようにしてもよい。
【0123】本実施形態のデータ転送制御装置を電子機
器に用いることで、高速なデータ転送が可能になる。従
って、ユーザがパーソナルコンピュータなどによりプリ
ントアウトの指示を行った場合に、少ないタイムラグで
印字が完了するようになる。また、スキャナへの画像取
り込みの指示の後に、少ないタイムラグで読み取り画像
をユーザは見ることができるようになる。また、CD−
Rからのデータの読み取りや、CD−Rへのデータの書
き込みを高速に行うことができるようになる。更に、例
えば1つのホストシステムに複数の電子機器を接続して
利用したり、複数のホストシステムに複数の電子機器を
接続して利用したりすることも容易になる。
【0124】また本実施形態のデータ転送制御装置を電
子機器に用いることで、CPU上で動作するファームウ
ェアの処理負荷が軽減される。従って、安価なCPUや
低速のバスを用いることが可能になり、電子機器の低コ
スト化、小規模化を図ることが可能になる。
【0125】なお本実施形態のデータ転送制御装置を適
用できる電子機器としては、上記以外にも例えば、種々
の光ディスクドライブ(CDROM、DVD)、光磁気
ディスクドライブ(MO)、ハードディスクドライブ、
TV、VTR、ビデオカメラ、オーディオ機器、電話
機、プロジェクタ、パーソナルコンピュータ、電子手
帳、ワードプロセッサなど種々のものを考えることがで
きる。
【0126】なお、本発明は本実施形態に限定されず、
本発明の要旨の範囲内で種々の変形実施が可能である。
【0127】例えば、本発明のデータ転送制御装置の構
成は、図6に示す構成が特に望ましいが、これに限定さ
れるものではない。例えば、図8に示すような構成を採
用することも可能である。
【0128】また、本発明における所与の管理機能を有
するマネージャは、IEEE1394規格におけるアイ
ソクロナスリソースマネージャであることが特に望まし
いが、これに限定されるものではない。
【0129】また、本発明は、IEEE1394規格で
のデータ転送に適用されることが特に望ましいが、これ
に限定されるものではない。例えばIEEE1394と
同様の思想に基づく規格やIEEE1394を発展させ
た規格におけるデータ転送にも本発明は適用できる。
【0130】
【図面の簡単な説明】
【図1】図1(A)、(B)、(C)は、非同期転送と
アイソクロナス転送について説明するための図である。
【図2】図2(A)、(B)は、ツリー識別について説
明するための図である。
【図3】自己識別について説明するための図である。
【図4】図4(A)、(B)、(C)、(D)は、セル
フIDパケットなどの物理層のパケットのフォーマット
を示す図である。
【図5】IEEE1394のプロトコル構成について示
す図である。
【図6】本実施形態のデータ転送制御装置の構成例を示
す図である。
【図7】ヘッダ(制御情報)領域とデータ領域の分離に
ついて説明するための図である。
【図8】本実施形態の比較例の構成例について示す図で
ある。
【図9】図8の構成によるデータ転送の手法について説
明するための図である。
【図10】データ転送の手法の他の例について説明する
ための図である。
【図11】本実施形態のデータ転送の手法について説明
するための図である。
【図12】リンクコア(IRM検出回路)の構成例につ
いて示す図である。
【図13】IRM検出の詳細な処理例について説明する
ためのタイミング波形図である。
【図14】図14(A)、(B)、(C)は、コントロ
ールバスCTL、データバスD、ステータス情報(ステ
ータスビット)について説明するための図である。
【図15】IRM検出の詳細な処理例について説明する
ためのタイミング波形図である。
【図16】図16(A)、(B)は、比較例と本実施形
態のファームウェアの処理について比較するための図で
ある。
【図17】図17(A)、(B)、(C)は、種々の電
子機器の内部ブロック図の例である。
【図18】図18(A)、(B)、(C)は、種々の電
子機器の外観図の例である。
【符号の説明】
10 PHYインターフェース 20 リンクコア 22 レジスタ 30 FIFO(ATF) 32 FIFO(ITF) 34 FIFO(RF) 40 DMAC(ATF用) 42 DMAC(ITF用) 44 DMAC(RF用) 50 ポートインターフェース 52 FIFO(PF) 54 DMAC(PF用) 56 レジスタ 60 CPUインターフェース 62 アドレスデコーダ 63 データ同期化回路 64 割り込みコントローラ 66 CPU 68 クロック制御回路 70 バッファマネージャ 72 レジスタ 74 調停回路 76 シーケンサ 80 RAM(パケット記憶手段) 90、92、94 バス(第1のバス) 96、98 バス(第2のバス) 100、102、104、105、 106、107、108、109 バス(第3のバス) 110 バス(第4のバス) 120 データ転送制御装置 122 PHYチップ 124 アプリケーション層のデバイス 130 バス監視回路 132 直列・並列変換回路 140 IRM検出回路 142 パケット診断回路 144 PHYIDレジスタ 146 IRMIDレジスタ(第1の保持手段) 148 WIRM生成回路 150 WIRMレジスタ(第2の保持手段)
フロントページの続き (56)参考文献 特開 平8−8913(JP,A) 特開 平10−70561(JP,A) 特開 平10−229427(JP,A) 特開 平10−285196(JP,A) 特開 平10−290237(JP,A) IEEE Computer Soc iety,IEEE Standard for a High Perfor mance Serial Bus,I EEE Std 1394−1995,米国,I EEE,1996年 8月30日,p38−42 (58)調査した分野(Int.Cl.7,DB名) H04L 12/40

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】 バスに接続される複数のノード間でのデ
    ータ転送のためのデータ転送制御装置であって、 各ノードの基本情報が格納される自己識別パケットが各
    ノードから転送されてきた場合に、該自己識別パケット
    を診断し、所与の管理機能を有するマネージャになるべ
    きノードを診断結果に基づき自動検出する回路と、 検出されたノードの識別番号を該ノードの自己識別パケ
    ットの基本情報の中から取得し、該識別番号を保持する
    第1の保持手段とを含むことを特徴とするデータ転送制
    御装置。
  2. 【請求項2】 請求項1において、 ノードの接続トポロジーにおいてルートノードから遠い
    ノードから順に自己識別パケットが転送されてくる場合
    において、 自己識別パケットを転送してきたノードが、前記所与の
    管理機能を有するマネージャになれる資格を有するノー
    ドであると自己識別パケットの基本情報に基づき判断さ
    れた場合には、該ノードの識別番号を前記第1の保持手
    段に上書きすることを特徴とするデータ転送制御装置。
  3. 【請求項3】 請求項1又は2において、 下層から送られてくるステータス情報に基づいて自己識
    別期間中か否かを検出する回路を含み、 自己識別期間中に送られてきたパケットを自己識別パケ
    ットと見なし、該自己識別パケットに基づいてマネージ
    ャになるべきノードの自動検出を行うことを特徴とする
    データ転送制御装置。
  4. 【請求項4】 請求項1乃至3のいずれかにおいて、 マネージャとなるノードの識別番号が自身のノードの識
    別番号と一致した場合に、自身のノードが前記所与の管
    理機能を有するマネージャであることを示す情報を保持
    する第2の保持手段を含むことを特徴とするデータ転送
    制御装置。
  5. 【請求項5】 請求項4において、 自身のノードの識別番号が確定したことを条件にアクテ
    ィブになる第1の信号と自己識別期間が終了したことを
    条件にアクティブになる第2の信号の両方を用いて、マ
    ネージャとなるノードの識別番号が自身のノードの識別
    番号と一致したか否かを判断することを特徴とするデー
    タ転送制御装置。
  6. 【請求項6】 請求項4において、 サブアクションギャップを検出したことを条件にアクテ
    ィブになる第3の信号を用いて、マネージャとなるノー
    ドの識別番号が自身のノードの識別番号と一致したか否
    かを判断することを特徴とするデータ転送制御装置。
  7. 【請求項7】 請求項1乃至6のいずれかにおいて、 前記第1の保持手段から前記所与の管理機能を有するマ
    ネージャになるノードの識別番号を読み出し、読み出さ
    れた識別番号を利用してデータ転送を制御する手段を含
    むことを特徴とするデータ転送制御装置。
  8. 【請求項8】 請求項1乃至7のいずれかにおいて、 前記所与の管理機能を有するマネージャが、IEEE1
    394規格におけるアイソクロナスリソースマネージャ
    であることを特徴とするデータ転送制御装置。
  9. 【請求項9】 請求項1乃至8のいずれかのデータ転送
    制御装置と、 前記データ転送制御装置及びバスを介して他のノードか
    ら受信したデータに所与の処理を施す装置と、 処理が施されたデータを出力又は記憶するための装置と
    を含むことを特徴とする電子機器。
  10. 【請求項10】 請求項1乃至8のいずれかのデータ転
    送制御装置と、 前記データ転送制御装置及びバスを介して他のノードに
    送信するデータに所与の処理を施す装置と、 処理が施されるデータを取り込むための装置とを含むこ
    とを特徴とする電子機器。
JP32153998A 1998-10-27 1998-10-27 データ転送制御装置及び電子機器 Expired - Fee Related JP3494041B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP32153998A JP3494041B2 (ja) 1998-10-27 1998-10-27 データ転送制御装置及び電子機器
US09/425,244 US6578095B1 (en) 1998-10-27 1999-10-25 Data transfer control device for transferring data among a plurality of nodes and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32153998A JP3494041B2 (ja) 1998-10-27 1998-10-27 データ転送制御装置及び電子機器

Publications (2)

Publication Number Publication Date
JP2000134231A JP2000134231A (ja) 2000-05-12
JP3494041B2 true JP3494041B2 (ja) 2004-02-03

Family

ID=18133695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32153998A Expired - Fee Related JP3494041B2 (ja) 1998-10-27 1998-10-27 データ転送制御装置及び電子機器

Country Status (2)

Country Link
US (1) US6578095B1 (ja)
JP (1) JP3494041B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3494042B2 (ja) * 1998-10-27 2004-02-03 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US6775714B1 (en) * 1999-05-19 2004-08-10 Sony Corporation Communication method, communication apparatus, communication system and providing medium
JP3608441B2 (ja) 1999-07-15 2005-01-12 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP3740379B2 (ja) * 2000-04-19 2006-02-01 キヤノン株式会社 画像処理装置及び画像処理方法
JP3450274B2 (ja) * 2000-04-26 2003-09-22 エヌイーシーマイクロシステム株式会社 通信制御回路
US7315388B2 (en) * 2001-01-24 2008-01-01 Canon Kabushiki Kaisha Image input/output control apparatus, image processing apparatus, image processing method, data communication apparatus, and data communication method
JP3738980B2 (ja) * 2001-08-27 2006-01-25 ソニー株式会社 ネットワークシステム、アドレッシング方法、通信制御装置及び方法
KR100441712B1 (ko) * 2001-12-29 2004-07-27 엘지전자 주식회사 확장 가능형 다중 처리 시스템 및 그의 메모리 복제 방법
JP2004029898A (ja) * 2002-06-21 2004-01-29 Renesas Technology Corp データプロセッサ

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5687319A (en) * 1994-09-27 1997-11-11 International Business Machines Corporation Method and system for determining maximum cable segments between all possible node to node paths on a serial bus
US5802057A (en) * 1995-12-01 1998-09-01 Apple Computer, Inc. Fly-by serial bus arbitration
JP3442593B2 (ja) * 1996-11-20 2003-09-02 株式会社東芝 ネットワーク接続装置及びネットワーク接続方法
US6138178A (en) * 1997-01-29 2000-10-24 Fuji Photo Film Co., Ltd. Controlled device storing multiple drivers that judges and downloads a particular driver corresponding to a controller's operating system having an identical or greater version number
US6157972A (en) * 1997-12-05 2000-12-05 Texas Instruments Incorporated Apparatus and method for processing packetized information over a serial bus
JP3277874B2 (ja) * 1998-01-29 2002-04-22 日本電気株式会社 Ieee1394ブリッジ
US6212171B1 (en) * 1998-06-22 2001-04-03 Intel Corporation Method and apparatus for gap count determination
JP3423620B2 (ja) * 1998-07-30 2003-07-07 キヤノン株式会社 撮像装置及び制御装置及び撮像装置制御システム及びその制御方法及び記憶媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE Computer Society,IEEE Standard for a High Performance Serial Bus,IEEE Std 1394−1995,米国,IEEE,1996年 8月30日,p38−42

Also Published As

Publication number Publication date
JP2000134231A (ja) 2000-05-12
US6578095B1 (en) 2003-06-10

Similar Documents

Publication Publication Date Title
JP3543647B2 (ja) データ転送制御装置及び電子機器
JP3543649B2 (ja) データ転送制御装置及び電子機器
JP3843667B2 (ja) データ転送制御装置及び電子機器
JP3584789B2 (ja) データ転送制御装置及び電子機器
JP3608441B2 (ja) データ転送制御装置及び電子機器
JP3494041B2 (ja) データ転送制御装置及び電子機器
JP3494040B2 (ja) データ転送制御装置及び電子機器
US6978327B1 (en) Data transfer control device and electronic equipment for performing data
JP3494042B2 (ja) データ転送制御装置及び電子機器
JPH1117743A (ja) シリアルインタフェース回路
JP3606145B2 (ja) データ転送制御装置及び電子機器
JPH1117710A (ja) シリアルインタフェース回路
JP3610982B2 (ja) データ転送制御装置及び電子機器
JP2004118704A (ja) インターフェイス装置およびインターフェイス装置の制御方法
JPH1117774A (ja) シリアルインタフェース回路

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031021

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081121

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091121

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees