JPH1117774A - シリアルインタフェース回路 - Google Patents

シリアルインタフェース回路

Info

Publication number
JPH1117774A
JPH1117774A JP9164812A JP16481297A JPH1117774A JP H1117774 A JPH1117774 A JP H1117774A JP 9164812 A JP9164812 A JP 9164812A JP 16481297 A JP16481297 A JP 16481297A JP H1117774 A JPH1117774 A JP H1117774A
Authority
JP
Japan
Prior art keywords
circuit
time
data
packet
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9164812A
Other languages
English (en)
Inventor
Ryuta Nakamura
龍太 中村
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP9164812A priority Critical patent/JPH1117774A/ja
Publication of JPH1117774A publication Critical patent/JPH1117774A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】スプリットタイムアウトの検出を自動化でき、
大容量のデータを所定の規格に合わせてたパケットにし
て送受信でき、また、円滑な送受信処理をことができる
シリアルインタフェース回路を提供する。 【解決手段】他ノードからの応答がペンディングである
か否かを検出し、ペンディングであると検出した場合に
は検出信号S1261を出力するペンディング検出回路
1261と、ペンディング検出回路1261による検出
信号S1261を受けると起動して時間を計時するスプ
リットタイムカウンタ1262と、タイムアウト時間を
任意に設定可能なタイムアウトレジスタ1263と、ス
プリットタイムカウンタの時間がタイムアウトレジスタ
の設定時間に達するとスプリットタイムアウトであるこ
とを示すタイムアウト信号STOを出力する比較回路1
264とを設ける。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディジタルシリア
ルインタフェース回路に係り、特にHDD(Hard Disk
Drive) 、DVD(Digital Video Disk)−ROM、CD
(Compact Disk)−ROM、テープストリーマ(Tape Stre
amer) 等のストレージ装置に接続するシリアルインタフ
ェース回路およびその信号処理方法に関するものであ
る。
【0002】
【従来の技術】近年、マルチメディア・データ転送のた
めのインタフェースとして、高速データ転送、リアルタ
イム転送を実現するIEEE(The Institute of Elect
ricaland Electronic Engineers) 1394、High
Performance Sirial Busが規
格化された。
【0003】このIEEE1394シリアルインタフェ
ースのデータ転送においては、ネットワーク内で行われ
る転送動作をサブアクションと呼び、2つのサブアクシ
ョンが規定されている。一つは、従来のRequest,Acknow
ledge の要求、受信確認を行うアシンクロナス(Asynch
ronous) 転送であり、他の一つはあるノードから125
μsに1回必ずデータが送られるアイソクロナス(Isoch
ronous) 転送である。
【0004】このように、2つの転送モードを有するI
EEE1394シリアルインタフェースでのデータは、
パケット単位で転送が行われるが、IEEE1394規
格では、取り扱う最小データの単位は1クワドレット(q
uadlet) (=4バイト=32ビット)である。
【0005】IEEE1394規格では、通常、コンピ
ュータデータは、図7に示すように、アシンクロナス転
送を用いて行われる。アシンクロナス転送は、図7
(a)に示すように、バスを獲得するためのアービトレ
ーション(arb)、データを転送するパケットトラン
スミッション、およびアクノリッジメント(ack)の
3つの遷移状態をとる。
【0006】そして、パケットトランスミッションの実
行は、図7(b)に示すようなフォーマットで行われ
る。転送パケットの第1クワドレットは、16ビットの
デスティネーションID(destination ID)領域、6ビッ
トのトランザクション・ラベルtl(transaction labe
l) 領域、2ビットのリトライ コードrt(retry cod
e)領域、4ビットのトランザクション・コードtcod
e(transanction code) 領域、および4ビットのプライ
オリティpri(priority)領域から構成されている。デ
スティネーションID領域はこのノードのバスナンバー
とノードナンバー、プライオリティ領域は優先レベルを
示す。
【0007】第2クワドレットおよび第3クワドレット
は、16ビットのソースID(source ID) 領域、および
48ビットのデスティネーション・オフセット(destina
tionoffset)領域により構成されている。ソースID領
域はこのパケットを送ったノードIDを示し、デスティ
ネーション・オフセット領域はハイ(High)およびロー(L
ow) の連続した領域からなり、デスティネーション・ノ
ードのアドレス空間のアドレスを示す。
【0008】第4クワドレットは、16ビットのデータ
長(data length) 領域、および16ビットのイクステン
ディド・トランザクション・コード(extended tcode)領
域に構成されている。データ長領域は受信したパケット
のバイト数を示し、イクステンディド tcode領域はtc
odeがロック・トランザクション(Lock transaction)
の場合、このパケットのデータが行う実際のロック動作
(Lock Action) を示す領域である。
【0009】データフィールド領域(data field)の前の
クワドレットに付加されたヘッダCRC(header CRC)
領域は、パケットヘッダの誤り検出符号である。また、
データ領域(data field)の後のクワドレットに付加され
たデータCRC(data CRC) 領域は、データフィールド
の誤り検出符号である。
【0010】
【発明が解決しようとする課題】ところで、上述したよ
うに、アシンクロナス転送で行われる通常のコンピュー
タデータの転送では、そのプロトコルとして、SBP−
2(Serial Bus Protocol-2) が用いられる。このプロト
コルによると、ストレージデバイス(Storage Device)で
あるターゲット(Target)からホストコンピュータ(Host
Computer) であるイニシエータ(Initiator) にデータを
転送するときは、ストレージデバイスからホストコンピ
ュータのメモリへデータを書き込む形で、またホストコ
ンピュータからターゲットにデータを転送するときは、
ストレージデバイスがホストコンピュータのメモリのデ
ータを読み出す形で転送が行われる。
【0011】しかしながら、ストレージデバイスに格納
される、あるいはストレージデバイスから読み出される
大容量のデータをIEEE1394規格のパケットにし
て、送受信するための、いわゆるトランザクション・レ
イヤ(Transaction Layer) をコントロールする処理系回
路システムが未だ確立されていない。また、スプリット
トランザクションにおいてスプリットタイムアウトを検
出する回路の実現も要望されている。
【0012】本発明は、かかる事情に鑑みてなされたも
のであり、その目的は、スプリットタイムアウトの検出
を自動化でき、大容量のデータを所定の規格に合わせて
たパケットにして送受信することができ、また、円滑な
送受信処理をことができるシリアルインタフェース回路
を提供することにある。
【0013】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、自ノードとシリアルインタフェースバス
を介して接続された他ノード間でパケットの送受信を行
うシリアルインタフェース回路であって、自ノードから
他ノードへの要求パケットを生成し、上記シリアルイン
タフェースバスに送出する第1のデータ処理回路と、上
記要求パケットに対する応答パケットがあらかじめ設定
した時間内に返送されないときにスプリットタイムアウ
トを検出する第2のデータ処理回路とを有する。
【0014】また、本発明では、上記第2のデータ処理
回路は、他ノードからの応答がペンディングであるか否
かを検出し、ペンディングであると検出した場合には検
出信号を出力するペンディング検出回路と、上記ペンデ
ィング検出回路による検出信号を受けると起動して時間
を計時するスプリットタイムカウンタと、タイムアウト
時間を任意に設定可能なタイムアウトレジスタと、上記
スプリットタイムカウンタの時間が上記タイムアウトレ
ジスタの設定時間に達するとスプリットタイムアウトで
あることを示すタイムアウト信号を出力する比較回路と
を有する。
【0015】また、本発明では、上記スプリットタイム
カウンタは、計時動作開始後であってタイムアウト信号
が上記比較回路から出力される前に応答パケットを受け
ると計時動作を停止する。
【0016】また、本発明では、タイムアウトレジスタ
の設定時間は、データ長に応じて変更される。
【0017】また、本発明の回路によれば、第1のデー
タ処理回路において、自ノードから他ノードへの要求パ
ケットが生成され、シリアルインタフェースバスに送出
される。そして、第2のデータ処理回路において、要求
パケットに対する応答パケットがあらかじめ設定した時
間内に返送されないときにスプリットタイムアウトが検
出される。
【0018】たとえば、ペンディング検出回路で、他ノ
ードからの応答がペンディングであるか否かが検出さ
れ、ペンディングであると検出された場合には検出信号
がスプリットタイムカウンタに出力される。スプリット
タイムカウンタは、検出信号を受けると起動されて計時
動作が開始される。そして、このスプリットタイムカウ
ンタの時間がタイムアウトレジスタの設定時間に達する
とスプリットタイムアウトであることを示すタイムアウ
ト信号が比較回路から出力される。
【0019】
【発明の実施の形態】図1は、本発明に係るIEEE1
394シリアルインタフェース回路の一実施形態を示す
ブロック構成図である。なお、このシリアルインタフェ
ース回路は、アシンクロナス通信で扱われるコンピュー
タデータの転送を行うことを目的として構成されてい
る。このため、図1においては、アイソクロナス通信系
回路の具体的な構成は図示していない。
【0020】このシリアルインタフェース回路は、リン
ク/トランザクション・レイヤ集積回路10、フィジカ
ル・レイヤ回路20、ストレージデバイスとしての図示
しないハードディスクドライバ(HDD)のコントロー
ラ30、ホストコンピュータとしてのローカルプロセッ
サ40により構成されている。
【0021】リンク/トランザクション・レイヤ集積回
路10は、リンク・レイヤ回路100およびトランザク
ション・レイヤ回路120が集積化されて構成され、ロ
ーカルプロセッサ40の制御の下、アシンクロナス転送
の制御、並びにフィジカル・レイヤ回路20の制御を行
う。
【0022】リンク・レイヤ回路100は、図1に示す
ように、リンクコア(Link Core))101、CPUインタ
フェース回路(Sub-CPU I/F )102、アシンクロナス
通信で用いられる送信用FIFO(AT-FIFO:First-In F
irst-Out) 103、受信用FIFO(AR-FIFO)104、
受信パケットを判別する分別回路(DeMux) 105、セル
フID用リゾルバ(Resolver)106、およびコントロー
ルレジスタ(ControlRegisters 、以下CRという)1
07により構成されている。
【0023】リンクコア101は、コマンドやコンピュ
ータデータが転送されるアシンクロナス通信用パケット
およびアイソクロナス通信用パケットの送信回路、受信
回路、これらパケットのIEEE1394シリアルバス
BSを直接ドライブするフィジカル・レイヤ回路20と
のインタフェース回路、125μs毎にリセットされる
サイクルタイマ、サイクルモニタやCRC回路から構成
されている。また、図示しないハードディスクから読み
出され、トランザクション・レイヤ回路120で所定の
送信パケットとして生成されたコンピュータデータの送
信処理等を行う。たとえば、後述するトランザクション
・レイヤ回路120のトランザクションコントローラ1
26から送るべきデータがある旨の知らせを受けるとフ
ィジカル・レイヤ回路20を経由して1394シリアル
バスのアービトレーションを行いバスを確保する。な
お、図1では、上述したように、アイソクロナス通信系
のFIFO等は省略している。
【0024】CPUインタフェース回路102は、ロー
カルプロセッサ40と送信用FIFO103、受信用F
IFO104とのアシンクロナス通信用パケットの書き
込み、読み出し等の調停、並びに、ローカルプロセッサ
40とCR107との各種データの送受信の調停を行
う。たとえば、イニシエータとしてのホストコンピュー
タからIEEE1394インタフェースバスBSを送信
され、受信用FIFOに格納されたストレージデバイス
としてのハードディスクのコントロール用コマンドをロ
ーカルプロセッサ40に伝送する。
【0025】ローカルプロセッサ40からは、コンピュ
ータデータを送受信するためにトランザクション・レイ
ヤ回路120を起動させるためのデータがCPUインタ
フェース102を通してCR107にセット(ADPst
=1)される。
【0026】送信用FIFO103には、IEEE13
94シリアルバスBSに伝送させるアシンクロナス通信
用パケットが格納され、格納データはリンクコア101
に与えられる。
【0027】また、受信用FIFO104は、IEEE
1394シリアルバスBSを伝送されてきたアシンクロ
ナス通信用パケット、たとえばストレージデバイスとし
てのハードディスクのコントロール用コマンド等が、分
別回路105により格納される。
【0028】分別回路105は、リンクコア101を介
したアシンクロナス通信用パケットの第1クワドレッド
にあるトランザクションコードtcode(Transaction
code)およびトランザクションラベルtl(Transaction
label) をチェックし、イニシエータであるホストコン
ピュータからターゲットであるトランザクション・レイ
ヤ回路に対しての応答パケット(Response Packet) であ
るかその他のパケットであるかの分別を行い、応答パケ
ットのみをトランザクション・レイヤ回路120に入力
させ、その他のパケットを受信用FIFO104に格納
する。
【0029】なお、分別のチェックに用いられるトラン
ザクションラベルtlは共通に「a」にセットされ、t
code(Transaction code)は、書き込み(Write) の要
求(request)および応答(Response)、読み出し(Read)の
要求(Read request) および応答(Read Response) で異
なるデータがセットされる。具体的には、tcode
は、書き込み要求(Write request)でクワドレット書き
込み(Quadlet Write) の場合には「0」、ブロック書き
込み(Block Write) の場合には「1」にセットされる。
また、書き込み応答(Write Response)の場合には「2」
にセットされる。読み出し要求(Read request) でクワ
ドレット読み出し(Quadlet Read)の場合には「4」、ブ
ロック読み出し(Block Read)の場合には「5」にセット
される。また、読み出し応答(Read Response) の場合に
は「6/7」にセットされる。
【0030】リゾルバ106は、IEEE1394シリ
アルインタフェースバスBSを伝送されてきたセルフI
Dパケットを解析し、CR107に格納する。また、エ
ラーチェック、ノード数のカウント等の機能も有する。
【0031】トランザクション・レイヤ回路120は、
コンピュータ周辺機器(本実施形態ではハードディス
ク)のデータをSBP−2(Serial Bus Protocol-2) 規
格に基づいて、アシンクロナスパケットとして自動的に
送信、受信をする機能を備えている。また、トランザク
ション・レイヤ回路120は、リトライ(Retry) 機能並
びにスプリットタイムアウト(Split Timeout) 検出機能
を備えている。リトライ機能は、要求パケットを送信し
た後、ack busy* のAckコードが返ってきた場合、該
当する要求パケットを再送信する機能である。パケット
を再送信する場合、送信パケットの第1クワドレッドに
ある2ビットのrt領域を「00」から「01」にセッ
トしてコアリンク101に知らせ送信する。スプリット
タイムアウト(Split Timeout) 検出機能は、応答パケッ
トが返ってくるまでのタイムアウトを検出する機能であ
る。
【0032】このトランザクション・レイヤ回路120
は、トランスポートデータインタフェース回路121、
要求パケット生成回路(SBPreq)122、応答パケットデ
コード回路(SBPRsp)123、要求用FIFO(Request F
IFO:ADPTF)124、応答用FIFO(Response FIFO:ADP
RF) 125、およびトランザクションコントローラ12
6により構成されている。そして、要求パケット生成回
路122、応答パケットデコード回路123、要求用F
IFO124、応答用FIFO125、およびトランザ
クションコントローラ126によりデータ処理回路AD
Pが構成される。
【0033】トランスポートデータインタフェース回路
121は、HDDコントローラ30と要求パケット生成
回路122、応答パケットデコード回路123とのデー
タの送受信の調停を行う。
【0034】要求パケット生成回路122は、リンク・
レイヤ回路100のCR107からデータ転送起動の指
示を受けると、送信(書き込み)の場合、SBP−2規
格に従ってトランスポートデータインタフェース回路1
21を介して得た図示しないハードディスクに記録され
たコンピュータデータをパケットに分けられるように1
個以上のデータに分け、CR107にセットされた転送
データ長等のデータに基づいてSBPプロトコルのアド
レスを算出し、パケット毎に増加する1394バスアド
レスとトランザクションラベルtl(=a)やトランザ
クションコードtcode(たとえば1または5)等を
設定した4クラドレットからなる1394ヘッダを付加
して要求用FIFO124に格納する。また、受信(読
み出し)の場合には、SBP−2規格に従って、CR1
07にセットされた転送データ長等のデータに基づいて
SBPプロトコルのアドレスを算出し、パケット毎に増
加する1394バスアドレスとトランザクションラベル
tl(=a)やトランザクションコードtcode(た
とえば1または5)等を設定し、指定されたアドレス、
データ長分の1394ブロック読み出し要求コマンド(B
lock read Request Command)を1個以上のパケットにし
て要求用FIFO124に格納する。
【0035】なお、要求パケット生成回路122は、送
信および受信時には、CR107にて指定される最大長
データmax-payload を受けて送信する要求パケットに対
する応答パケットの最大データ長を計算する。この最大
データ長(バイト)maxpl は次式に基づいて求められ
る。
【0036】
【数1】maxpl =2(max,Payload+2) …(1)
【0037】応答パケットデコード回路123は、受信
時に応答用FIFO125に格納されたデータを読み出
し、1394ヘッダを取り除いて、データを所定のタイ
ミングでトランスポートデータインタフェース回路12
1を介してHDDコントローラ30に出力する。
【0038】要求用FIFO124は、送信(書き込
み)時にはパケット化された送信データが格納され、受
信(読み出し)の場合には、1394ブロック読み出し
要求コマンドが格納される。なお、要求用FIFO12
4は、送るべきデータを記憶しているときは、その旨を
示すたとえばローレベル(「0」)でアクティブの信号
EMTをトランザクションコントローラ126に出力す
る。
【0039】応答用FIFO125は、受信(読み出
し)の場合には、ホストコンピュータ側から1394シ
リアルバスBSを伝送されてきた受信データが格納され
る。なお、応答用FIFO125は、残りの記憶容量を
示す信号S125をトランザクションコントローラ12
6に出力する。
【0040】トランザクションコントローラ126は、
送信時に要求用FIFO124に格納されたパケット化
された送信データ、および受信時に要求用FIFO12
4に格納された1394ブロック読み出し要求コマンド
(要求パケット)のリンク・レイヤコア回路100のリ
ンクコア101への出力制御を行う。また、送信時に、
リンク・レイヤ回路100の分別回路105からの応答
パケットを受けて、そのリトライコードrcodeをC
R107に書き込み、受信時には分別回路105からの
応答パケットを応答用FIFO125に格納する。
【0041】また、トランザクションコントローラ12
6は、スプリットトランザクションの過程で、いわゆる
ペンディング(Pending) のackコードを受け取ってか
ら、応答パケットが返ってこない場合にスプリットタイ
ムアウトとして検出し、たとえば通信動作を停止してエ
ラー表示を行う。
【0042】IEEE1394では、要求パケットの送
信に対しては応答パケットが返ってくる。そして、他ノ
ード側であるリスポンダ(Responder) が十分な応答速度
を持たない場合には、スプリットトランザクションとい
うプロセスで応答パケットのやり取りが行われる。
【0043】図2は、スプリットトランザクションの概
念図である。この場合、自ノード側であるリクエスタ(R
equester) からの要求パケットを受け取った他ノード側
のレスポンダは、4ビットのackコードにペンディン
グであることを設定して送り返す。その後、書き込みや
読み出しの処理が完了(Complete)としたら応答パケット
をリクエスタに送信する。上述したように、このスプリ
ットトランザクション過程でペンディング(Pending) の
ackコードを受け取ってから、応答パケットが返って
こない場合にスプリットタイムアウトとして検出する。
【0044】図3は、このスプリットタイムアウト検出
機能を実現するスプリットタイムアウト検出回路の構成
例を示すブロック図である。このスプリットタイムアウ
ト検出回路は、図3に示すように、他ノードからの応答
がペンディングであるか否かを検出し、ペンディングで
あると検出した場合には検出信号S1261を出力する
ペンディング検出回路1261と、ペンディング検出回
路1261による検出信号S1261を受けると起動し
て時間を計時するスプリットタイムカウンタ1262
と、タイムアウト時間を任意に設定可能なタイムアウト
レジスタ1263と、スプリットタイムカウンタの時間
がタイムアウトレジスタの設定時間に達するとスプリッ
トタイムアウトであることを示すタイムアウト信号ST
Oを出力する比較回路1264とから構成されている。
また、スプリットタイムカウンタ1261は、計時動作
開始後であってタイムアウト信号が比較回路1264か
ら出力される前に応答パケットを受けると計時動作を停
止する。さらに、タイムアウトレジスタ1263の設定
時間は、たとえばデータ長に応じて変更される。
【0045】図4は、スプリットタイムアウト検出回路
の動作を示すフローチャートである。図4に示すよう
に、ペンディング検出回路1261で、他ノードからの
応答がペンディングであるか否かが検出され、ペンディ
ングであると検出された場合には検出信号S1261が
スプリットタイムカウンタ1261に出力される(S
1)。スプリットタイムカウンタ1262は、検出信号
を受けると起動されて計時動作が開始される(S2)。
そして、このスプリットタイムカウンタ1262の時間
がタイムアウトレジスタ1263の設定時間に達すると
(S3)、スプリットタイムアウトであることを示すタ
イムアウト信号STOが比較回路1264から出力され
る。これにより、たとえば通信動作が停止されエラー表
示が行われる。
【0046】また、ステップS4において、スプリット
タイムカウンタ1261が、計時動作開始後であってタ
イムアウト信号が比較回路1264から出力される前に
応答パケットを受けとったか否かの判別が行われる。そ
して、応答パケットを受けとったと判別された場合に
は、応答が正常に行われたものとして計時動作が停止さ
れる。これに対して、応答パケットを受けとっていない
と判別された場合には、ステップS3の動作に戻ってス
プリットタイムカウンタ1262の時間がタイムアウト
レジスタ1263の設定時間に達したか否かの判別が行
われる。
【0047】次に、上記構成において、SBP−2規格
で決められたパケットを転送する場合のコンピュータデ
ータの通常の送信および受信動作を説明する。
【0048】まず、送信動作、すなわち、ターゲットで
あるハードディスクからイニシエータであるホストコン
ピュータにデータを転送するときであって、ストレージ
デバイス(ハードディスク)からホストコンピュータの
メモリへデータを書き込む動作を行う場合について説明
する。
【0049】ホストコンピュータから1394シリアル
バスBSを転送されてきたSBP−2規格に基づいたO
RB(Operation Request Block) 等のパケットデータが
フィジカル・レイヤ回路20、リンク・レイヤ回路10
0のリンクコア101を介して分別回路105に入力さ
れる。
【0050】分別回路105では、受信パケットを受け
てホストコンピュータからターゲットであるトランザク
ション・レイヤ回路に対しての応答パケット(Response
Packet) であるかその他のパケットであるかの分別が行
われる。そしてこの場合、その他のパケットであること
から受信データが受信用FIFO104に格納される。
受信用FIFO104に格納されたORB等の受信デー
タは、CPUインタフェース回路102を介してローカ
ルプロセッサ40に入力される。ローカルプロセッサ4
0では、CPUインタフェース回路102を介してOR
Bの内容に従ってCR107のトランザクション・レイ
ヤ回路用レジスタの初期化が行われる。これにより、ト
ランザクション・レイヤ回路120が起動される。
【0051】起動されたトランザクション・レイヤ回路
120では、要求パケット生成回路122において、ト
ランスポートインタフェース121を介してHDDコン
トローラ30に対してのデータの要求が始められる。要
求に応じ、トランスポートインタフェース121を介し
て送られたきた送信データは、要求パケット生成回路1
22においてSBP−2規格に従ってトランスポートデ
ータインタフェース回路121を介して得た図示しない
ハードディスクに記録されたコンピュータデータをパケ
ットに分けられるように1個以上のデータに分けられ、
CR107にセットされた転送データ長等のデータに基
づいてSBPプロトコルのアドレスが算出され、パケッ
ト毎に増加する1394バスアドレスとトランザクショ
ンラベルtl(=a)やトランザクションコードtco
de(たとえば1または5)等が設定された4クラドレ
ットからなる1394ヘッダが付加されて要求用FIF
O124に格納される。
【0052】要求用1FIFO124に1つの1394
パケットサイズ以上のデータが格納されると、そのデー
タはトランザクションコントローラ126によりリンク
・レイヤ回路100のリンクコア101に送られる。そ
して、リンクコア101によって、フィジカル・レイヤ
回路20を介して1394シリアルバスBSに対しアー
ビトレーションが掛けられる。これにより、バスの獲得
ができたならば、転送データを含む書き込み要求パケッ
ト(Write Request Packet)がフィジカル・レイヤ回路2
0、1394シリアルバスBSを介してホストコンピュ
ータに送信される。
【0053】送信後、ホストコンピュータから書き込み
要求パケットに対するAckコードと、場合によっては
書き込み応答パケット(Write Response Packet) が送ら
れてきて、フィジカル・レイヤ回路20、リンク・レイ
ヤ回路100のリンクコア101を介して分別回路10
5に入力される。
【0054】分別回路105では、受信パケットのトラ
ンザクションコードtcodeおよびトランザクション
ラベルtlのチェックが行われ、ホストコンピュータか
らターゲットであるトランザクション・レイヤ回路12
0に対しての応答パケット(Response Packet) であると
判別されると、その応答パケットがトランザクション・
レイヤ回路120のトランザクションコントローラ12
6に入力される。
【0055】トランザクションコントローラ126で
は、入力された応答パケットのAckコードと応答コー
ド(Response code) が正常ならば次のデータのリンクコ
ア101への送出が行われる。以上の動作が繰り返され
て、コンピュータデータのホストコンピュータのメモリ
への書き込み(送信)動作が行われる。
【0056】以上の送信に関するトランザクション・レ
イヤ回路120の動作の概略を図5に示す。
【0057】次に、受信動作、すなわち、ホストコンピ
ュータからターゲットにデータを転送するときであっ
て、ストレージデバイス(ハードディスク)がホストコ
ンピュータのメモリのデータを読み出す動作を行う場合
について説明する。
【0058】ホストコンピュータから1394シリアル
バスBSを転送されてきたSBP−2規格に基づいたO
RB等のパケットデータがフィジカル・レイヤ回路2
0、リンク・レイヤ回路100のリンクコア101を介
して分別回路105に入力される。
【0059】分別回路105では、受信パケットを受け
てホストコンピュータからターゲットであるトランザク
ション・レイヤ回路に対しての応答パケット(Response
Packet) であるかその他のパケットであるかの分別が行
われる。そしてこの場合、その他のパケットであること
から受信データが受信用FIFO104に格納される。
受信用FIFO104に格納されたORB等の受信デー
タは、CPUインタフェース回路102を介してローカ
ルプロセッサ40に入力される。ローカルプロセッサ4
0では、CPUインタフェース回路102を介してOR
Bの内容に従ってCR107のトランザクション・レイ
ヤ回路用レジスタの初期化が行われる。これにより、ト
ランザクション・レイヤ回路120が起動される。
【0060】起動されたトランザクション・レイヤ回路
120では、要求パケット生成回路122において、S
BP−2規格に従って、CR107にセットされた転送
データ長等のデータに基づいてSBPプロトコルのアド
レスが算出され、パケット毎に増加する1394バスア
ドレスとトランザクションラベルtl(=a)やトラン
ザクションコードtcode(たとえば1または5)等
が設定され、指定されたアドレス、データ長分の139
4ブロック読み出し要求コマンド(Block readRequest C
ommand)がパケット化されて要求用FIFO124に格
納される。
【0061】要求用FIFO124に格納された読み出
し要求コマンドパケットは、トランザクションコントロ
ーラ126によりリンク・レイヤ回路100のリンクコ
ア101に送られる。そして、リンクコア101によっ
て、フィジカル・レイヤ回路20を介して1394シリ
アルバスBSに対しアービトレーションが掛けられる。
これにより、バスの獲得ができたならば、読み出し要求
パケット(Read Request Packet) がフィジカル・レイヤ
回路20、1394シリアルバスBSを介してホストコ
ンピュータに送信される。
【0062】送信後、ホストコンピュータから読み出し
要求パケットに対するAckコードと、指定されたデー
タ長分のデータを含んだ読み出し応答パケット(Read R
esponse Packet) が送られてきて、フィジカル・レイヤ
回路20、リンク・レイヤ回路100のリンクコア10
1を介して分別回路105に入力される。
【0063】分別回路105では、受信パケットのトラ
ンザクションコードtcodeおよびトランザクション
ラベルtlのチェックが行われ、ホストコンピュータか
らターゲットであるトランザクション・レイヤ回路に対
しての応答パケット(Response Packet) であると判別さ
れると、その応答パケットがトランザクション・レイヤ
回路120のトランザクションコントローラ126に入
力される。
【0064】トランザクションコントローラ126で
は、分別回路105からの応答パケットが応答用FIF
O125に格納される。応答用FIFO125に格納さ
れたデータは、応答パケットデコード回路123によっ
て読み出され、1394ヘッダが取り除かれて、所定の
タイミングでトランスポートデータインタフェース回路
121を介してHDDコントローラ30に出力される。
以上の動作が繰り返されて、コンピュータデータのスト
レージデバイス(ハードディスク)への書き込み(受
信)動作が行われる。
【0065】以上の受信に関するトランザクション・レ
イヤ回路129の動作の概略を図6に示す。
【0066】以上説明したように、本第1の実施形態に
よれば、ストレージデバイスが接続され、ストレージデ
バイスのデータを読み出し、自己指定のトランザクショ
ンラベルを付加して送信アシンクロナスパケットとして
シリアルインタフェースバスBSに送出し、他ノードの
データを当該ストレージデバイスへ転送する場合に、自
己指定のラベルを付加した要求パケットを生成してシリ
アルインタフェースバスBSに送出し、他ノードからの
この要求パケットに対する応答パケットを受信し、応答
パケットからデータ部を取り出してストレージデバイス
へ転送するデータ処理回路としてのトランザクション・
レイヤ回路120を設けたので、ストレージデバイスに
格納される、あるいはストレージデバイスから読み出さ
れる大容量のデータをSBP−2規格に合わせてたIE
EE1394パケットにして送受信することができ、I
EEE1394シリアルバスインタフェースのアシンク
ロナス パケットを用いて大容量のデータ転送を実現す
ることができる。そして、SBP−2規格に基づいたO
RBのフェッチ、データ転送、イニシエータへのステイ
タス送信といったシーケンスを簡略化でき、ディスクド
ライバ、テープストリーマ等のコンピュータ周辺機器の
データをIEEE1394シリアルバスに接続する際に
最適な設計が可能となる。
【0067】また、他ノードからの応答がペンディング
であるか否かを検出し、ペンディングであると検出した
場合には検出信号S1261を出力するペンディング検
出回路1261と、ペンディング検出回路1261によ
る検出信号S1261を受けると起動して時間を計時す
るスプリットタイムカウンタ1262と、タイムアウト
時間を任意に設定可能なタイムアウトレジスタ1263
と、スプリットタイムカウンタの時間がタイムアウトレ
ジスタの設定時間に達するとスプリットタイムアウトで
あることを示すタイムアウト信号STOを出力する比較
回路1264とを設けたので、スプリットタイムアウト
の検出を自動化でき、制御系回路の付加を軽減でき、ま
た、リトライインターバルを任意に設定できることか
ら、仕様に応じた円滑な送受信処理を行うことができ
る。
【0068】さらに、トランザクション・レイヤ回路1
20に要求用FIFO124および応答用FIFO12
5を設けるとともに、リンク・レイヤ回路100に送信
用FIFO103および受信用FIFO104を設けた
ので、要求用FIFO124および応答用FIFO12
5によるデータのやりとりと並列して、データ以外の通
常の1394パケットの送受信を行うことできる。
【0069】また、リンクコア101を介したアシンク
ロナス通信用パケットの第1クワドレッドにあるトラン
ザクションコードtcode(Transaction code)および
トランザクションラベルtl(Transaction label) をチ
ェックし、イニシエータであるホストコンピュータから
ターゲットであるトランザクション・レイヤ回路に対し
ての応答パケット(Response Packet) であるかその他の
パケットであるかの分別を行い、応答パケットのみをト
ランザクション・レイヤ回路120に入力させ、その他
のパケットを受信用FIFO104に格納する分別回路
105を設けたので、たとえばトランザクション・レイ
ヤ回路120側で致命的なエラーがおきてデータの読み
出し/書き込み動作が止まってしまったとしても、デー
タの次の入力されてくるコマンドの読み出しができなる
ことがなく、データの読み出し/書き込みの状況にかか
わりなくコマンドの受信を円滑に行うことができる利点
がある。
【0070】
【発明の効果】以上説明したように、本発明によれば、
スプリットタイムアウトの検出を自動化でき、制御系回
路の付加を軽減でき、大容量のデータを所定の規格に合
わせてたパケットにして送受信することができ、また、
円滑な送受信処理を行うことができる。
【図面の簡単な説明】
【図1】本発明に係るIEEE1394シリアルインタ
フェース回路の一実施形態を示すブロック構成図であ
る。
【図2】スプリットトランザクションの概念を示す図で
ある。
【図3】本発明に係るスプリットタイムアウト検出回路
の構成例を示すブロック図である。
【図4】図3の回路の動作を説明するためのフローチャ
ートである。
【図5】本発明に係るトランザクション・レイヤ回路に
おける送信動作の概略を示す図である。
【図6】本発明に係るトランザクション・レイヤ回路に
おける受信動作の概略を示す図である。
【図7】IEEE1394規格のアシンクロナス転送を
説明するための図である。
【符号の説明】
10…リンク/トランザクションレイヤ集積回路、20
…フィジカル・レイヤ回路、30…HDDコントロー
ラ、40…ローカルプロセッサ、100,100a…リ
ンク・レイヤ回路、101…リンクコア、102…CP
Uインタフェース回路、103…アシンクロナス送信用
FIFO、104…アシンクロナス受信用FIFO、1
05,105a…分別回路、106…リゾルバ、107
…コントロールレジスタ、120…トランザクション・
レイヤ回路、121…トランスポートデータインタフェ
ース回路、121…要求パケット生成回路、123…応
答パケットデコード回路、124…要求用FIFO、1
25…応答用FIFO、126…トランザクションコン
トローラ、1261…ペンディング検出回路、1262
…スプリットタイムカウンタ、1263…タイムアウト
レジスタ、1264…比較回路(Comp)。

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 自ノードとシリアルインタフェースバス
    を介して接続された他ノード間でパケットの送受信を行
    うシリアルインタフェース回路であって、 自ノードから他ノードへの要求パケットを生成し、上記
    シリアルインタフェースバスに送出する第1のデータ処
    理回路と、 上記要求パケットに対する応答パケットがあらかじめ設
    定した時間内に返送されないときにスプリットタイムア
    ウトを検出する第2のデータ処理回路とを有するシリア
    ルインタフェース回路。
  2. 【請求項2】 上記第2のデータ処理回路は、他ノード
    からの応答がペンディングであるか否かを検出し、ペン
    ディングであると検出した場合には検出信号を出力する
    ペンディング検出回路と、 上記ペンディング検出回路による検出信号を受けると起
    動して時間を計時するスプリットタイムカウンタと、 タイムアウト時間を任意に設定可能なタイムアウトレジ
    スタと、 上記スプリットタイムカウンタの時間が上記タイムアウ
    トレジスタの設定時間に達するとスプリットタイムアウ
    トであることを示すタイムアウト信号を出力する比較回
    路とを有する請求項1記載のシリアルインタフェース回
    路。
  3. 【請求項3】 上記スプリットタイムカウンタは、計時
    動作開始後であってタイムアウト信号が上記比較回路か
    ら出力される前に応答パケットを受けると計時動作を停
    止する請求項2記載のシリアルインタフェース回路。
  4. 【請求項4】 タイムアウトレジスタの設定時間は、デ
    ータ長に応じて変更される請求項2記載のシリアルイン
    タフェース回路。
  5. 【請求項5】 タイムアウトレジスタの設定時間は、デ
    ータ長に応じて変更される請求項3記載のシリアルイン
    タフェース回路。
  6. 【請求項6】 上記第2のデータ処理回路によりスプリ
    ットタイムアウトが検出されると、パケット転送処理を
    停止させる回路を有する請求項1記載のシリアルインタ
    フェース回路。
JP9164812A 1997-06-20 1997-06-20 シリアルインタフェース回路 Pending JPH1117774A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9164812A JPH1117774A (ja) 1997-06-20 1997-06-20 シリアルインタフェース回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9164812A JPH1117774A (ja) 1997-06-20 1997-06-20 シリアルインタフェース回路

Publications (1)

Publication Number Publication Date
JPH1117774A true JPH1117774A (ja) 1999-01-22

Family

ID=15800395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9164812A Pending JPH1117774A (ja) 1997-06-20 1997-06-20 シリアルインタフェース回路

Country Status (1)

Country Link
JP (1) JPH1117774A (ja)

Similar Documents

Publication Publication Date Title
JP3543647B2 (ja) データ転送制御装置及び電子機器
JP3584789B2 (ja) データ転送制御装置及び電子機器
JP3608441B2 (ja) データ転送制御装置及び電子機器
JP3733699B2 (ja) シリアルインタフェース回路
US6580711B1 (en) Serial interface circuit and signal processing method of the same
US7164689B2 (en) Multi-initiator control unit and method
JP3494041B2 (ja) データ転送制御装置及び電子機器
JP3539287B2 (ja) データ転送制御装置及び電子機器
JP3494040B2 (ja) データ転送制御装置及び電子機器
JPH1117710A (ja) シリアルインタフェース回路
JPH1117775A (ja) シリアルインタフェース回路
JP3494042B2 (ja) データ転送制御装置及び電子機器
JPH1117773A (ja) シリアルインタフェース回路
JP3837843B2 (ja) シリアルインタフェース回路
JPH1117774A (ja) シリアルインタフェース回路
JPH1117767A (ja) シリアルインタフェース回路
JPH11308300A (ja) シリアルインタフェース回路
JPH11308301A (ja) シリアルインタフェース回路
JP4582180B2 (ja) データ伝送装置
JP4062829B2 (ja) シリアルインタフェース回路
JP2003023471A (ja) パケット送受信処理回路
JP2002366508A (ja) データ転送方法
JP2004173304A (ja) データ転送制御装置及び電子機器