JPH1117743A - シリアルインタフェース回路 - Google Patents
シリアルインタフェース回路Info
- Publication number
- JPH1117743A JPH1117743A JP16481197A JP16481197A JPH1117743A JP H1117743 A JPH1117743 A JP H1117743A JP 16481197 A JP16481197 A JP 16481197A JP 16481197 A JP16481197 A JP 16481197A JP H1117743 A JPH1117743 A JP H1117743A
- Authority
- JP
- Japan
- Prior art keywords
- data
- packet
- serial interface
- circuit
- request packet
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Systems (AREA)
Abstract
ットにして送受信でき、円滑な送受信処理をことができ
るシリアルインタフェース回路を提供する。 【解決手段】受信動作時には、要求パケット生成回路1
22において、要求パケットを生成するとともに、送信
する要求パケットに対する応答パケットの最大データ長
を計算し、トランザクションコントローラ126で、最
大データ長maxplと応答用FIFO125の残り記憶容
量とを比較し、残り記憶容量が最大データ長maxpl 以上
の場合に、要求パケットの送信を行わせ、残り記憶容量
が最大データ長maxpl より小さい場合には、要求パケッ
トのリンクコア101への出力を、残り記憶容量が最大
データ長maxpl 以上になるまで、要求パケットの他ノー
ドへの送信を一時停止するよう構成する。
Description
ルインタフェース回路に係り、特にHDD(Hard Disk
Drive) 、DVD(Digital Video Disk)−ROM、CD
(Compact Disk)−ROM、テープストリーマ(Tape Stre
amer) 等のストレージ装置に接続するシリアルインタフ
ェース回路およびその信号処理方法に関するものであ
る。
めのインタフェースとして、高速データ転送、リアルタ
イム転送を実現するIEEE(The Institute of Elect
ricaland Electronic Engineers) 1394、High
Performance Sirial Busが規
格化された。
ースのデータ転送においては、ネットワーク内で行われ
る転送動作をサブアクションと呼び、2つのサブアクシ
ョンが規定されている。一つは、従来のRequest,Acknow
ledge の要求、受信確認を行うアシンクロナス(Asynch
ronous) 転送であり、他の一つはあるノードから125
μsに1回必ずデータが送られるアイソクロナス(Isoch
ronous) 転送である。
EEE1394シリアルインタフェースでのデータは、
パケット単位で転送が行われるが、IEEE1394規
格では、取り扱う最小データの単位は1クワドレット(q
uadlet) (=4バイト=32ビット)である。
ュータデータは、図4に示すように、アシンクロナス転
送を用いて行われる。アシンクロナス転送は、図4
(a)に示すように、バスを獲得するためのアービレー
ション(arb)、データを転送するパケットトランス
ミッション、およびアクノリッジメント(ack)の3
つの遷移状態をとる。
行は、図4(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領域はこのノードのバスナンバー
とノードナンバー、プライオリティ領域は優先レベルを
示す。
は、16ビットのソースID(source ID) 領域、および
48ビットのデスティネーション・オフセット(destina
tionoffset)領域により構成されている。ソースID領
域はこのパケットを送ったノードIDを示し、デスティ
ネーション オフセット領域はハイ(High)およびロー(L
ow) の連続した領域からなり、デスティネーション・ノ
ードのアドレス空間のアドレスを示す。
長(data length) 領域、および16ビットのイクステン
ディド・トランザクション・コード(extended tcode)領
域に構成されている。データ長領域は受信したパケット
のバイト数を示し、イクステンディド tcode領域はtc
odeがロック・トランザクション(Lock transaction)
の場合、このパケットのデータが行う実際のロック動作
(Lock Action) を示す領域である。
クワドレットに付加されたヘッダCRC(header CRC)
領域は、パケットヘッダの誤り検出符号である。また、
データ領域(data field)の後のクワドレットに付加され
たデータCRC(data CRC) 領域は、データフィールド
の誤り検出符号である。
うに、アシンクロナス転送で行われる通常のコンピュー
タデータの転送では、そのプロトコルとして、SBP−
2(Serial Bus Protocol-2) が用いられる。このプロト
コルによると、ストレージデバイス(Storage Device)で
あるターゲット(Target)からホストコンピュータ(Host
Computer) であるイニシエータ(Initiator) にデータを
転送するときは、ストレージデバイスからホストコンピ
ュータのメモリへデータを書き込む形で、またホストコ
ンピュータからターゲットにデータを転送するときは、
ストレージデバイスがホストコンピュータのメモリのデ
ータを読み出す形で転送が行われる。
される、あるいはストレージデバイスから読み出される
大容量のデータをIEEE1394規格のパケットにし
て、送受信するための、いわゆるトランザクション・レ
イヤ(Transaction Layer) をコントロールする処理系回
路システムが未だ確立されていない。
のであり、その目的は、大容量のデータを所定の規格に
合わせてたパケットにして送受信することができ、ま
た、円滑な送受信処理をことができるシリアルインタフ
ェース回路を提供することにある。
め、本発明は、自ノードとシリアルインタフェースバス
を介して接続された他ノード間でアシンクロナスパケッ
トの送受信を行うシリアルインタフェース回路であっ
て、記憶手段と、他ノードのデータを自ノードへ転送す
る場合に、転送すべきデータサイズを含む要求パケット
を生成する送信パケット生成回路と、上記要求パケット
で要求するデータのサイズと上記記憶手段の残り容量と
を比較する比較手段と、上記比較手段の比較の結果、記
憶手段の残り容量が要求データサイズ以上で有る場合に
上記要求パケットを上記シリアルインタフェースバスに
送出し、他ノードからの当該要求パケットに対する応答
パケットを受信したときに、応答パケットの少なくとも
データ部を上記記憶手段に記憶させるデータ処理回路と
を有する。
タフェースバスを介して接続された他ノード間でアシン
クロナスパケットの送受信を行うシリアルインタフェー
ス回路であって、第1の記憶手段と、第2の記憶手段
と、他ノードのデータを自ノードへ転送する場合に、転
送すべきデータサイズを含む要求パケットを生成し、上
記第1の記憶手段に記憶する送信パケット生成回路と、
上記要求パケットで要求するデータのサイズと上記第2
の記憶手段の残り容量とを比較する比較手段と、上記比
較手段の比較の結果、第2の記憶手段の残り容量が要求
データサイズ以上で有る場合に上記要求パケットを上記
シリアルインタフェースバスに送出し、他ノードからの
当該要求パケットに対する応答パケットを受信したとき
に、応答パケットの少なくともデータ部を上記第2の記
憶手段に記憶させるデータ処理回路とを有する。
タフェースバスを介して接続された他ノード間でアシン
クロナスパケットの送受信を行うシリアルインタフェー
ス回路であって、記憶手段と、他ノードのデータを自ノ
ードへ転送する場合に、転送すべきデータサイズを含む
要求パケットを生成する送信パケット生成回路と、上記
要求パケットで要求可能な最大のデータサイズを求める
最大サイズ算出回路と、上記最大サイズ算出回路で求め
た最大データサイズと上記記憶手段の残り容量とを比較
する比較手段と、上記比較手段の比較の結果、記憶手段
の残り容量が最大データサイズ以上で有る場合に上記要
求パケットを上記シリアルインタフェースバスに送出
し、他ノードからの当該要求パケットに対する応答パケ
ットを受信したときに、応答パケットの少なくともデー
タ部を上記記憶手段に記憶させるデータ処理回路とを有
する。
タフェースバスを介して接続された他ノード間でアシン
クロナスパケットの送受信を行うシリアルインタフェー
ス回路であって、第1の記憶手段と、第2の記憶手段
と、他ノードのデータを自ノードへ転送する場合に、転
送すべきデータサイズを含む要求パケットを生成し、上
記第1の記憶手段に記憶する送信パケット生成回路と、
上記要求パケットで要求可能な最大のデータサイズを求
める最大サイズ算出回路と、上記最大サイズ算出回路で
求めた最大データサイズと上記第2の記憶手段の残り容
量とを比較する比較手段と、上記比較手段の比較の結
果、第2の記憶手段の残り容量が最大データサイズ以上
で有る場合に上記要求パケットを上記シリアルインタフ
ェースバスに送出し、他ノードからの当該要求パケット
に対する応答パケットを受信したときに、応答パケット
の少なくともデータ部を上記第2の記憶手段に記憶させ
るデータ処理回路とを有する。
ードへデータを転送する場合には、送信パケット生成回
路により転送すべきデータサイズを含む要求パケットが
生成されて、データ処理回路に入力(または第1の記憶
手段に格納)される。比較手段において要求パケットで
要求するデータのサイズと記憶手段(または第2の記憶
手段)の残り容量とが比較される。比較の結果、記憶手
段(または第2の記憶手段)の残り容量が要求データサ
イズ以上で有る場合に、データ処理回路から要求パケッ
トがシリアルインタフェースバスに送出される。そし
て、他ノードからの当該要求パケットに対する応答パケ
ットを受信したときに、応答パケットの少なくともデー
タ部が記憶手段(または第2の記憶手段)に記憶され
る。
ら自ノードへデータを転送する場合には、送信パケット
生成回路によりデータをパケット化して転送できるよう
に、転送すべきデータサイズを含む要求パケットが生成
されて、データ処理回路に入力(または第1の記憶手段
に格納)される。また、最大サイズ算出回路で、要求パ
ケットで要求可能な最大のデータサイズを求められ、比
較手段に入力される。比較手段においては、最大データ
サイズと記憶手段(または第2の記憶手段)の残り容量
とが比較される。比較の結果、記憶手段(または第2の
記憶手段)の残り容量が最大データサイズ以上で有る場
合に、データ処理回路から要求パケットがシリアルイン
タフェースバスに送出される。そして、他ノードからの
当該要求パケットに対する応答パケットを受信したとき
に、応答パケットの少なくともデータ部が記憶手段(ま
たは第2の記憶手段)に記憶される。
394シリアルインタフェース回路の一実施形態を示す
ブロック構成図である。なお、このシリアルインタフェ
ース回路は、アシンクロナス通信で扱われるコンピュー
タデータの転送を行うことを目的として構成されてい
る。このため、図1においては、アイソクロナス通信系
回路の具体的な構成は図示していない。
ク/トランザクション・レイヤ集積回路10、フィジカ
ル・レイヤ回路20、ストレージデバイスとしての図示
しないハードディスクドライバ(HDD)のコントロー
ラ30、ホストコンピュータとしてのローカルプロセッ
サ40により構成されている。
路10は、リンク・レイヤ回路100およびトランザク
ション・レイヤ回路120が集積化されて構成され、ロ
ーカルプロセッサ40の制御の下、アシンクロナス転送
の制御、並びにフィジカル・レイヤ回路20の制御を行
う。
ように、リンクコア(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により構成されている。
ータデータが転送されるアシンクロナス通信用パケット
およびアイソクロナス通信用パケットの送信回路、受信
回路、これらパケットのIEEE1394シリアルバス
BSを直接ドライブするフィジカル・レイヤ回路20と
のインタフェース回路、125μs毎にリセットされる
サイクルタイマ、サイクルモニタやCRC回路から構成
されている。また、図示しないハードディスクから読み
出され、トランザクション・レイヤ回路120で所定の
送信パケットとして生成されたコンピュータデータの送
信処理等を行う。たとえば、後述するトランザクション
・レイヤ回路120のトランザクションコントローラ1
26から送るべきデータがある旨の知らせを受けるとフ
ィジカル・レイヤ回路20を経由して1394シリアル
バスのアービトレーションを行いバスを確保する。な
お、図1では、上述したように、アイソクロナス通信系
のFIFO等は省略している。
カルプロセッサ40と送信用FIFO103、受信用F
IFO104とのアシンクロナス通信用パケットの書き
込み、読み出し等の調停、並びに、ローカルプロセッサ
40とCR107との各種データの送受信の調停を行
う。たとえば、イニシエータとしてのホストコンピュー
タからIEEE1394インタフェースバスBSを送信
され、受信用FIFOに格納されたストレージデバイス
としてのハードディスクのコントロール用コマンドをロ
ーカルプロセッサ40に伝送する。そして、ローカルプ
ロセッサ40からは、コンピュータデータを送受信する
ためにトランザクション・レイヤ回路120を起動させ
るためのデータがCPUインタフェース102を通して
CR107にセットされる。
後述するようにトランザクション・レイヤ回路120に
おける他ノードから自ノードへデータを転送する読み出
し(受信)動作時に、応答パケットの最大データ長を計
算するための最大データ長を指定するための4ビットの
最大長データ(max-payload) がCPUインタフェース1
02を通してCR107にセットされる。この最大長デ
ータは、トランザクション・レイヤ回路120の後述す
る要求パケット生成回路122に供給される。
94シリアルバスBSに伝送させるアシンクロナス通信
用パケットが格納され、格納データはリンクコア101
に与えられる。
1394シリアルバスBSを伝送されてきたアシンクロ
ナス通信用パケット、たとえばストレージデバイスとし
てのハードディスクのコントロール用コマンド等が、分
別回路105により格納される。
したアシンクロナス通信用パケットの第1クワドレッド
にあるトランザクションコードtcode(Transaction
code)およびトランザクションラベルtl(Transaction
label) をチェックし、イニシエータであるホストコン
ピュータからターゲットであるトランザクション・レイ
ヤ回路に対しての応答パケット(Response Packet) であ
るかその他のパケットであるかの分別を行い、応答パケ
ットのみをトランザクション・レイヤ回路120に入力
させ、その他のパケットを受信用FIFO104に格納
する。
ザクションラベル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」にセットされる。
アルインタフェースバスBSを伝送されてきたセルフI
Dパケットを解析し、CR107に格納する。また、エ
ラーチェック、ノード数のカウント等の機能も有する。
コンピュータ周辺機器(本実施形態ではハードディス
ク)のデータをSBP−2(Serial Bus Protocol-2) 規
格に基づいて、アシンクロナスパケットとして自動的に
送信、受信をする機能を備えている。また、トランザク
ション・レイヤ回路120は、リトライ(Retry) 機能並
びにスプリットタイムアウト(Split Timeout) 検出機能
を備えている。リトライ機能は、要求パケットを送信し
た後、ack busy* のAckコードが返ってきた場合、該
当する要求パケットを再送信する機能である。パケット
を再送信する場合、送信パケットの第1クワドレッドに
ある2ビットのrt領域を「00」から「01」にセッ
トしてから送信する。スプリットタイムアウト(Split T
imeout) 検出機能は、応答パケットが返ってくるまでの
タイムアウトを検出する機能である。
は、トランスポートデータインタフェース回路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が構成される。
121は、HDDコントローラ30と要求パケット生成
回路122、応答パケットデコード回路123とのデー
タの送受信の調停を行う。
レイヤ回路100のCR107からデータ転送起動の指
示を受けると、送信(書き込み)の場合、SBP−2規
格に従ってトランスポートデータインタフェース回路1
21を介して得た図示しないハードディスクに記録され
たコンピュータデータをパケットに分けられるように1
個以上のデータに分け、トランザクションラベルtl
(=a)等を指定した1394ヘッダを付加して要求用
FIFO124に格納する。また、受信(読み出し)の
場合には、SBP−2規格に従って、指定されたアドレ
ス、データ長分の1394ブロック読み出し要求コマン
ド(Block read Request Command)を1個以上のトランザ
クションラベルtl(=a)等を指定し、データ長を含
むパケットにして要求用FIFO124に格納する。さ
らに、この受信時には、CR107にて指定される最大
長データmax-payload を受けて送信する要求パケットに
対する応答パケットの最大データ長を計算し、最大デー
タ長(バイト)maxpl を示す12ビットの信号S122
をトランザクションコントローラ126に出力する。こ
の最大データ長(バイト)maxpl は次式に基づいて求め
られる。
時に応答用FIFO125に格納された応答用パケット
データを読み出し、1394ヘッダを取り除いたデータ
を所定のタイミングでトランスポートデータインタフェ
ース回路121を介してHDDコントローラ30に出力
する。
み)時にはパケット化された送信データが格納され、受
信(読み出し)の場合には、1394ブロック読み出し
要求コマンドが格納される。なお、要求用FIFO12
4は、送るべきデータを記憶しているときは、その旨を
示すたとえばローレベル(「0」)でアクティブの信号
EMTをトランザクションコントローラ126に出力す
る。
し)の場合には、ホストコンピュータ側から1394シ
リアルバスBSを伝送されてきた受信データが格納され
る。なお、応答用FIFO125は、残りの記憶容量を
示す信号S125をトランザクションコントローラ12
6に出力する。
送信時に要求用FIFO124に格納されたパケット化
された送信データ、および受信時に要求用FIFO12
4に格納された1394ブロック読み出し要求コマンド
(要求パケット)のリンク・レイヤコア回路100のリ
ンクコア101への出力制御を行う。また、受信時に
は、要求パケット生成回路122から受けた信号S12
2で与えられる最大データ長(バイト)maxpl と応答用
FIFO125から受けた信号S125で示される応答
用FIFO125の残り記憶容量とを比較し、残り記憶
容量が最大データ長maxpl 以上の場合に、要求パケット
をリンクコア101に出力し、要求パケットの送信を行
わせる。一方、残り記憶容量が最大データ長maxpl より
小さい場合には、送るべき要求パケットで要求され、そ
の応答パケットとして送られてくるデータ長の方が長く
応答用FIFO125の既記憶データが破壊されるおそ
れがあることから、要求パケットのリンクコア101へ
の出力を、残り記憶容量が最大データ長maxpl 以上にな
るまで停止する。すなわち、要求パケットの他ノードへ
の送信を一時停止する。また、送信時に、リンク・レイ
ヤ回路100の分別回路105からの応答パケットを受
けて、そのリトライコードrcodeをCR107に書
き込み、受信時には分別回路105からの応答パケット
を応答用FIFO125に格納する。
で決められたパケットを転送する場合のコンピュータデ
ータの送信および受信動作を説明する。
あるハードディスクからイニシエータであるホストコン
ピュータにデータを転送するときであって、ストレージ
デバイス(ハードディスク)からホストコンピュータの
メモリへデータを書き込む動作を行う場合について説明
する。
バスBSを転送されてきたSBP−2規格に基づいたO
RB(Operation Request Block) 等のパケットデータが
フィジカル・レイヤ回路20、リンク・レイヤ回路10
0のリンクコア101を介して分別回路105に入力さ
れる。
てホストコンピュータからターゲットであるトランザク
ション・レイヤ回路に対しての応答パケット(Response
Packet) であるかその他のパケットであるかの分別が行
われる。そしてこの場合、その他のパケットであること
から受信データが受信用FIFO104に格納される。
受信用FIFO104に格納されたORB等の受信デー
タは、CPUインタフェース回路102を介してローカ
ルプロセッサ40に入力される。ローカルプロセッサ4
0では、CPUインタフェース回路102を介してOR
Bの内容に従ってCR107のトランザクション・レイ
ヤ回路用レジスタの初期化が行われる。これにより、ト
ランザクション・レイヤ回路120が起動される。
120では、要求パケット生成回路122において、ト
ランスポートインタフェース121を介してHDDコン
トローラ30に対してのデータの要求が始められる。要
求に応じ、トランスポートインタフェース121を介し
て送られたきた送信データは、要求パケット生成回路1
22においてSBP−2規格に従ってパケットに分けら
れるように1個以上のデータに分けられ、トランザクシ
ョンラベルtl(=a)等が指定された1394ヘッダ
が付加されて自動的に要求用FIFO124に格納され
る。
パケットサイズ以上のデータが格納されると、そのデー
タはトランザクションコントローラ126によりリンク
・レイヤ回路100のリンクコア101に送られる。そ
して、リンクコア101によって、フィジカル・レイヤ
回路20を介して1394シリアルバスBSに対しアー
ビトレーションが掛けられる。これにより、バスの獲得
ができたならば、転送データを含む書き込み要求パケッ
ト(Write Request Packet)がフィジカル・レイヤ回路2
0、1394シリアルバスBSを介してホストコンピュ
ータに送信される。
要求パケットに対するAckコードと、場合によっては
書き込み応答パケット(Write Response Packet) が送ら
れてきて、フィジカル・レイヤ回路20、リンク・レイ
ヤ回路100のリンクコア101を介して分別回路10
5に入力される。
ンザクションコードtcodeおよびトランザクション
ラベルtlのチェックが行われ、ホストコンピュータか
らターゲットであるトランザクション・レイヤ回路12
0に対しての応答パケット(Response Packet) であると
判別されると、その応答パケットがトランザクション・
レイヤ回路120のトランザクションコントローラ12
6に入力される。
は、入力された応答パケットのAckコードと応答コー
ド(Response code) が正常ならば次のデータのリンクコ
ア101への送出が行われる。以上の動作が繰り返され
て、コンピュータデータのホストコンピュータのメモリ
への書き込み(送信)動作が行われる。
イヤ回路120の動作の概略を図2に示す。
ュータからターゲットにデータを転送するときであっ
て、ストレージデバイス(ハードディスク)がホストコ
ンピュータのメモリのデータを読み出す動作を行う場合
について説明する。
バスBSを転送されてきたSBP−2規格に基づいたO
RB等のパケットデータがフィジカル・レイヤ回路2
0、リンク・レイヤ回路100のリンクコア101を介
して分別回路105に入力される。
てホストコンピュータからターゲットであるトランザク
ション・レイヤ回路に対しての応答パケット(Response
Packet) であるかその他のパケットであるかの分別が行
われる。そしてこの場合、その他のパケットであること
から受信データが受信用FIFO104に格納される。
受信用FIFO104に格納されたORB等の受信デー
タは、CPUインタフェース回路102を介してローカ
ルプロセッサ40に入力される。ローカルプロセッサ4
0では、CPUインタフェース回路102を介してOR
Bの内容に従ってCR107のトランザクション・レイ
ヤ回路用レジスタの初期化が行われる。これにより、ト
ランザクション・レイヤ回路120が起動される。
ロセッサ40からは、要求パケットで指定される応答パ
ケットに含まれる最大データ長を計算するための最大デ
ータ長を指定するための4ビットの最大長データ(max-p
ayload) がCPUインタフェース102を通してCR1
07にセットされる。この最大長データは、トランザク
ション・レイヤ回路120の要求パケット生成回路12
2に供給される。
120では、要求パケット生成回路122において、S
BP−2規格に従って、指定されたアドレス、データ長
分の1394ブロック読み出し要求コマンド(Block rea
d Request Command)がパケット化され、要求パケットし
て要求用FIFO124に格納される。さらに、要求パ
ケット生成回路122においては、CR107にて指定
される最大長データmax-payload を受けて送信する要求
パケットに対する応答パケットの最大データ長が計算さ
れ、最大データ長(バイト)maxpl を示す12ビットの
信号S122がトランザクションコントローラ126に
出力される。
いては、要求パケット生成回路122から受けた信号S
122で与えられる最大データ長maxpl と応答用FIF
O125から受けた信号S125で示される応答用FI
FO125の残り記憶容量とが比較される。比較の結
果、残り記憶容量が最大データ長maxpl 以上の場合に、
要求パケットがリンクコア101に出力される。一方、
残り記憶容量が最大データ長maxpl より小さい場合に
は、送るべき要求パケットで要求され、その応答パケッ
トとして送られてくるデータ長の方が長く応答用FIF
O125の既記憶データが破壊されるおそれがあること
から、要求パケットのリンクコア101への出力が、残
り記憶容量が最大データ長maxpl 以上になるまで、要求
パケットの他ノードへの送信が一時停止される。
タ長maxpl 以上の場合に、要求用FIFO124に格納
された読み出し要求コマンドパケットは、トランザクシ
ョンコントローラ126によりリンク・レイヤ回路10
0のリンクコア101に送られる。そして、リンクコア
101によって、フィジカル・レイヤ回路20を介して
1394シリアルバスBSに対しアービトレーションが
掛けられる。これにより、バスの獲得ができたならば、
読み出し要求パケット(Read Request Packet) がフィジ
カル・レイヤ回路20、1394シリアルバスBSを介
してホストコンピュータに送信される。
要求パケットに対するAckコードと、指定されたデー
タ長分のデータを含んだ読み出し応答パケット(Read R
esponse Packet) が送られてきて、フィジカル・レイヤ
回路20、リンク・レイヤ回路100のリンクコア10
1を介して分別回路105に入力される。
ンザクションコードtcodeおよびトランザクション
ラベルtlのチェックが行われ、ホストコンピュータか
らターゲットであるトランザクション・レイヤ回路に対
しての応答パケット(Response Packet) であると判別さ
れると、その応答パケットがトランザクション・レイヤ
回路120のトランザクションコントローラ126に入
力される。
は、分別回路105からの応答パケットデータが応答用
FIFO125に格納される。応答用FIFO125に
格納されたデータは、応答パケットデコード回路123
によって読み出され、1394ヘッダが取り除かれて所
定のタイミングでトランスポートデータインタフェース
回路121を介してHDDコントローラ30に出力され
る。以上の動作が繰り返されて、コンピュータデータの
ストレージデバイス(ハードディスク)への書き込み
(受信)動作が行われる。
イヤ回路129の動作の概略を図3に示す。
よれば、ストレージデバイスが接続され、ストレージデ
バイスのデータを読み出し、自己指定のトランザクショ
ンラベルを付加して送信アシンクロナスパケットとして
シリアルインタフェースバスBSに送出し、他ノードの
データを当該ストレージデバイスへ転送する場合に、自
己指定のラベルを付加した要求パケットを生成してシリ
アルインタフェースバスBSに送出し、他ノードからの
この要求パケットに対する応答パケットを受信し、応答
パケットからデータ部を取り出してストレージデバイス
へ転送するデータ処理回路としてのトランザクション・
レイヤ回路120を設けたので、ストレージデバイスに
格納される、あるいはストレージデバイスから読み出さ
れる大容量のデータをSBP−2規格に合わせてたIE
EE1394パケットにして送受信することができ、I
EEE1394シリアルバスインタフェースのアシンク
ロナス パケットを用いて大容量のデータ転送を実現す
ることができる。そして、SBP−2規格に基づいたO
RBのフェッチ、データ転送、イニシエータへのステイ
タス送信といったシーケンスを簡略化でき、ディスクド
ライバ、テープストリーマ等のコンピュータ周辺機器の
データをIEEE1394シリアルバスに接続する際に
最適な設計が可能となる。
回路122において、要求パケットを生成するととも
に、送信する要求パケットに対する応答パケットの最大
データ長を計算し、信号S122としてトランザクショ
ンコントローラ126に出力し、要求パケット生成回路
122から受けた信号S122で与えられる最大データ
長maxpl と応答用FIFO125から受けた信号S12
5で示される応答用FIFO125の残り記憶容量とを
比較し、残り記憶容量が最大データ長maxpl 以上の場合
に、要求パケットの送信を行わせ、残り記憶容量が最大
データ長maxpl より小さい場合には、送るべき要求パケ
ットで要求され、その応答パケットとして送られてくる
データ長の方が長く応答用FIFO125の既記憶デー
タが破壊されるおそれがあることから、要求パケットの
リンクコア101への出力を、残り記憶容量が最大デー
タ長maxpl 以上になるまで、要求パケットの他ノードへ
の送信を一時停止するようにしたので、受信するに十分
なFIFO容量を確保して、自ノードが送信した要求パ
ケットに対する応答パケットを受けることができる利点
がある。
20に要求用FIFO124および応答用FIFO12
5を設けるとともに、リンク・レイヤ回路100に送信
用FIFO103および受信用FIFO104を設けた
ので、要求用FIFO124および応答用FIFO12
5によるデータのやりとりと並列して、データ以外の通
常の1394パケットの送受信を行うことできる。
ロナス通信用パケットの第1クワドレッドにあるトラン
ザクションコードtcode(Transaction code)および
トランザクションラベルtl(Transaction label) をチ
ェックし、イニシエータであるホストコンピュータから
ターゲットであるトランザクション・レイヤ回路に対し
ての応答パケット(Response Packet) であるかその他の
パケットであるかの分別を行い、応答パケットのみをト
ランザクション・レイヤ回路120に入力させ、その他
のパケットを受信用FIFO104に格納する分別回路
105を設けたので、たとえばトランザクション・レイ
ヤ回路120側で致命的なエラーがおきてデータの読み
出し/書き込み動作が止まってしたっても、データの次
の入力されてくるコマンドの読み出しができなることが
なく、データの読み出し/書き込みの状況にかかわりな
くコマンドの受信を円滑に行うことができる利点があ
る。
信する要求パケットに対する応答パケットの最大データ
長を計算し、この最大データ長maxpl と応答用FIFO
125から受けた信号S125で示される応答用FIF
O125の残り記憶容量とを比較して、要求パケットの
送信をするか一時停止するかを判断するように構成した
が、たとえば、要求パケットに含まれるデータ長データ
DLをトランザクションコントローラ126で読み出し
て、このデータ長データDLと応答用FIFO125の
残り記憶容量とを要求パケット毎に比較して、その要求
パケットの送信をするか一時停止するかを判断するよう
に構成することも可能である。このような構成において
も、上述したと同様な構成を得ることができる。
大容量のデータを所定の規格に合わせてたパケットにし
て送受信することができ、また、円滑な送受信処理を行
うことができる。また、受信するに十分な記憶容量を確
保して、自ノードが送信した要求パケットに対する応答
パケットを受けることができる利点がある。
フェース回路の一実施形態を示すブロック構成図であ
る。
おける送信動作の概略を示す図である。
おける受信動作の概略を示す図である。
説明するための図である。
…フィジカル・レイヤ回路、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…トランザクションコン
トローラ。
Claims (8)
- 【請求項1】 自ノードとシリアルインタフェースバス
を介して接続された他ノード間でアシンクロナスパケッ
トの送受信を行うシリアルインタフェース回路であっ
て、 記憶手段と、 他ノードのデータを自ノードへ転送する場合に、転送す
べきデータサイズを含む要求パケットを生成する送信パ
ケット生成回路と、 上記要求パケットで要求するデータのサイズと上記記憶
手段の残り容量とを比較する比較手段と、 上記比較手段の比較の結果、記憶手段の残り容量が要求
データサイズ以上で有る場合に上記要求パケットを上記
シリアルインタフェースバスに送出し、他ノードからの
当該要求パケットに対する応答パケットを受信したとき
に、応答パケットの少なくともデータ部を上記記憶手段
に記憶させるデータ処理回路とを有するシリアルインタ
フェース回路。 - 【請求項2】 自ノードとシリアルインタフェースバス
を介して接続された他ノード間でアシンクロナスパケッ
トの送受信を行うシリアルインタフェース回路であっ
て、 第1の記憶手段と、 第2の記憶手段と、 他ノードのデータを自ノードへ転送する場合に、転送す
べきデータサイズを含む要求パケットを生成し、上記第
1の記憶手段に記憶する送信パケット生成回路と、 上記要求パケットで要求するデータのサイズと上記第2
の記憶手段の残り容量とを比較する比較手段と、 上記比較手段の比較の結果、第2の記憶手段の残り容量
が要求データサイズ以上で有る場合に上記要求パケット
を上記シリアルインタフェースバスに送出し、他ノード
からの当該要求パケットに対する応答パケットを受信し
たときに、応答パケットの少なくともデータ部を上記第
2の記憶手段に記憶させるデータ処理回路とを有するシ
リアルインタフェース回路。 - 【請求項3】 送信パケット生成回路は、他ノードのデ
ータを自ノードへ転送する場合にはデータをパケット化
して転送できるように、転送すべきデータサイズを含む
複数の要求パケットを生成して上記シリアルインタフェ
ースバスに送出する請求項1記載のシリアルインタフェ
ース回路。 - 【請求項4】 送信パケット生成回路は、他ノードのデ
ータを自ノードへ転送する場合にはデータをパケット化
して転送できるように、転送すべきデータサイズを含む
複数の要求パケットを生成して上記シリアルインタフェ
ースバスに送出する請求項2記載のシリアルインタフェ
ース回路。 - 【請求項5】 自ノードとシリアルインタフェースバス
を介して接続された他ノード間でアシンクロナスパケッ
トの送受信を行うシリアルインタフェース回路であっ
て、 記憶手段と、 他ノードのデータを自ノードへ転送する場合に、転送す
べきデータサイズを含む要求パケットを生成する送信パ
ケット生成回路と、 上記要求パケットで要求可能な最大のデータサイズを求
める最大サイズ算出回路と、 上記最大サイズ算出回路で求めた最大データサイズと上
記記憶手段の残り容量とを比較する比較手段と、 上記比較手段の比較の結果、記憶手段の残り容量が最大
データサイズ以上で有る場合に上記要求パケットを上記
シリアルインタフェースバスに送出し、他ノードからの
当該要求パケットに対する応答パケットを受信したとき
に、応答パケットの少なくともデータ部を上記記憶手段
に記憶させるデータ処理回路とを有するシリアルインタ
フェース回路。 - 【請求項6】 自ノードとシリアルインタフェースバス
を介して接続された他ノード間でアシンクロナスパケッ
トの送受信を行うシリアルインタフェース回路であっ
て、 第1の記憶手段と、 第2の記憶手段と、 他ノードのデータを自ノードへ転送する場合に、転送す
べきデータサイズを含む要求パケットを生成し、上記第
1の記憶手段に記憶する送信パケット生成回路と、 上記要求パケットで要求可能な最大のデータサイズを求
める最大サイズ算出回路と、 上記最大サイズ算出回路で求めた最大データサイズと上
記第2の記憶手段の残り容量とを比較する比較手段と、 上記比較手段の比較の結果、第2の記憶手段の残り容量
が最大データサイズ以上で有る場合に上記要求パケット
を上記シリアルインタフェースバスに送出し、他ノード
からの当該要求パケットに対する応答パケットを受信し
たときに、応答パケットの少なくともデータ部を上記第
2の記憶手段に記憶させるデータ処理回路とを有するシ
リアルインタフェース回路。 - 【請求項7】 送信パケット生成回路は、他ノードのデ
ータを自ノードへ転送する場合にはデータをパケット化
して転送できるように、転送すべきデータサイズを含む
複数の要求パケットを生成して上記シリアルインタフェ
ースバスに送出する請求項5記載のシリアルインタフェ
ース回路。 - 【請求項8】 送信パケット生成回路は、他ノードのデ
ータを自ノードへ転送する場合にはデータをパケット化
して転送できるように、転送すべきデータサイズを含む
複数の要求パケットを生成して上記シリアルインタフェ
ースバスに送出する請求項6記載のシリアルインタフェ
ース回路。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16481197A JP3733699B2 (ja) | 1997-06-20 | 1997-06-20 | シリアルインタフェース回路 |
| US09/097,851 US6445718B1 (en) | 1997-06-20 | 1998-06-15 | Serial interface circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16481197A JP3733699B2 (ja) | 1997-06-20 | 1997-06-20 | シリアルインタフェース回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1117743A true JPH1117743A (ja) | 1999-01-22 |
| JP3733699B2 JP3733699B2 (ja) | 2006-01-11 |
Family
ID=15800376
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP16481197A Expired - Lifetime JP3733699B2 (ja) | 1997-06-20 | 1997-06-20 | シリアルインタフェース回路 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6445718B1 (ja) |
| JP (1) | JP3733699B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2000025217A1 (en) * | 1998-10-27 | 2000-05-04 | Seiko Epson Corporation | Data transfer controller and electronic device |
| US6977901B2 (en) | 2000-04-25 | 2005-12-20 | Matsushita Electric Industrial Co., Ltd. | Packet transmission/reception processor |
| CN100377131C (zh) * | 2001-12-11 | 2008-03-26 | 诺基亚有限公司 | 接收分组数据的接收机和控制分组数据发送的方法 |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3148733B2 (ja) * | 1999-02-26 | 2001-03-26 | 株式会社神戸製鋼所 | 信号処理装置及び信号処理システム |
| JP2001045031A (ja) * | 1999-08-03 | 2001-02-16 | Seiko Epson Corp | 被ログイン装置、ログイン装置、及びそれらを備える装置間通信システム、ログイン制御方法、並びに記録媒体 |
| JP3843667B2 (ja) * | 1999-10-15 | 2006-11-08 | セイコーエプソン株式会社 | データ転送制御装置及び電子機器 |
| US7281065B1 (en) | 2000-08-17 | 2007-10-09 | Marvell International Ltd. | Long latency interface protocol |
| JP4098987B2 (ja) * | 2002-01-31 | 2008-06-11 | 富士通株式会社 | インターフェース変換システム及びデータ転送方法 |
| US6834319B1 (en) * | 2002-03-21 | 2004-12-21 | Advanced Micro Devices, Inc. | Tunnel device for an input/output node of a computer system |
| US6968490B2 (en) * | 2003-03-07 | 2005-11-22 | Intel Corporation | Techniques for automatic eye-degradation testing of a high-speed serial receiver |
| US9489009B2 (en) | 2014-02-20 | 2016-11-08 | Samsung Electronics Co., Ltd. | System on chip, bus interface and method of operating the same |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5117486A (en) * | 1989-04-21 | 1992-05-26 | International Business Machines Corp. | Buffer for packetizing block of data with different sizes and rates received from first processor before transferring to second processor |
| US5416907A (en) * | 1990-06-15 | 1995-05-16 | Digital Equipment Corporation | Method and apparatus for transferring data processing data transfer sizes |
| ES2211725T3 (es) * | 1995-04-28 | 2004-07-16 | Matsushita Electric Industrial Co., Ltd. | Metodo de transmision de datos. |
| JP3301682B2 (ja) * | 1995-08-11 | 2002-07-15 | 松下電器産業株式会社 | パケット出力装置 |
| US5799209A (en) * | 1995-12-29 | 1998-08-25 | Chatter; Mukesh | Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration |
| KR100212084B1 (ko) * | 1996-09-21 | 1999-08-02 | 윤종용 | 시리얼 인터페이스 회로 |
| JPH10229410A (ja) * | 1997-02-14 | 1998-08-25 | Canon Inc | データ処理装置、電子機器および通信システム |
| US5943690A (en) * | 1997-04-07 | 1999-08-24 | Sony Corporation | Data storage apparatus and method allocating sets of data |
| US6032204A (en) * | 1998-03-09 | 2000-02-29 | Advanced Micro Devices, Inc. | Microcontroller with a synchronous serial interface and a two-channel DMA unit configured together for providing DMA requests to the first and second DMA channel |
-
1997
- 1997-06-20 JP JP16481197A patent/JP3733699B2/ja not_active Expired - Lifetime
-
1998
- 1998-06-15 US US09/097,851 patent/US6445718B1/en not_active Expired - Lifetime
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2000025217A1 (en) * | 1998-10-27 | 2000-05-04 | Seiko Epson Corporation | Data transfer controller and electronic device |
| US6854020B1 (en) | 1998-10-27 | 2005-02-08 | Seiko Epson Corporation | Data transfer controller and electronic device |
| US6977901B2 (en) | 2000-04-25 | 2005-12-20 | Matsushita Electric Industrial Co., Ltd. | Packet transmission/reception processor |
| CN100377131C (zh) * | 2001-12-11 | 2008-03-26 | 诺基亚有限公司 | 接收分组数据的接收机和控制分组数据发送的方法 |
| US7826539B2 (en) | 2001-12-11 | 2010-11-02 | Nokia Corporation | Asynchronous serial data interface |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3733699B2 (ja) | 2006-01-11 |
| US6445718B1 (en) | 2002-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3560423B2 (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 | |
| US6012117A (en) | Methods and apparatus for arbitrating and controlling arbitration for access to a serial bus | |
| US6578095B1 (en) | Data transfer control device for transferring data among a plurality of nodes and electronic equipment | |
| JP3539287B2 (ja) | データ転送制御装置及び電子機器 | |
| JPH1117710A (ja) | シリアルインタフェース回路 | |
| US6643816B1 (en) | Transmitting apparatus and error handling method in transmitting apparatus | |
| US6834316B1 (en) | Data transfer controller and electronic device | |
| JPH1117773A (ja) | シリアルインタフェース回路 | |
| JP3837843B2 (ja) | シリアルインタフェース回路 | |
| JPH1117775A (ja) | シリアルインタフェース回路 | |
| US7346714B2 (en) | Notification of completion of communication with a plurality of data storage areas | |
| JPH1117774A (ja) | シリアルインタフェース回路 | |
| JPH1117767A (ja) | シリアルインタフェース回路 | |
| JPH11308300A (ja) | シリアルインタフェース回路 | |
| JPH11308301A (ja) | シリアルインタフェース回路 | |
| JP4062829B2 (ja) | シリアルインタフェース回路 | |
| JP4582180B2 (ja) | データ伝送装置 | |
| JP2000115176A (ja) | シリアルインタフェース回路 | |
| JP2003023471A (ja) | パケット送受信処理回路 | |
| JP2003263402A (ja) | データ転送装置およびデータ転送方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040115 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050707 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050927 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051010 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121028 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121028 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131028 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |