JPH09244967A - イニシエータおよびターゲットならびにデータ転送制御方法 - Google Patents
イニシエータおよびターゲットならびにデータ転送制御方法Info
- Publication number
- JPH09244967A JPH09244967A JP8070945A JP7094596A JPH09244967A JP H09244967 A JPH09244967 A JP H09244967A JP 8070945 A JP8070945 A JP 8070945A JP 7094596 A JP7094596 A JP 7094596A JP H09244967 A JPH09244967 A JP H09244967A
- Authority
- JP
- Japan
- Prior art keywords
- data
- pulse
- initiator
- ack
- target
- 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
Links
Landscapes
- Bus Control (AREA)
Abstract
(57)【要約】
【課題】 SCSIバスを使用したデータ転送の信頼性
および転送効率を向上させる。 【解決手段】 イニシエータ1のREQ/ACK制御部
11は、制御ラインCL上のREQパルスを入力とし
て、データ・バスDBからデータ・レジスタ12にデー
タを読込む。さらに、REQ/ACK制御部11はRE
Qパルスに基づくACKパルスを出力する際、このAC
Kパルスに同期してデータ・レジスタ12から前記デー
タをデータ・バスDBに書出す。ターゲット2は、AC
Kパルスに応答してデータ・バスDBからデータを読込
み、データ比較部22で、自己が出力したオリジナル・
データとの一致を判定してデータ・エラーを検出する。
および転送効率を向上させる。 【解決手段】 イニシエータ1のREQ/ACK制御部
11は、制御ラインCL上のREQパルスを入力とし
て、データ・バスDBからデータ・レジスタ12にデー
タを読込む。さらに、REQ/ACK制御部11はRE
Qパルスに基づくACKパルスを出力する際、このAC
Kパルスに同期してデータ・レジスタ12から前記デー
タをデータ・バスDBに書出す。ターゲット2は、AC
Kパルスに応答してデータ・バスDBからデータを読込
み、データ比較部22で、自己が出力したオリジナル・
データとの一致を判定してデータ・エラーを検出する。
Description
【0001】
【発明の属する技術分野】本発明は、イニシエータおよ
びターゲットならびにデータ転送制御方法に関し、特
に、SCSIバス・プロトコルを用いてデータ転送を実
行する際の信頼性および効率の向上を図るのに好適なイ
ニシエータおよびターゲットならびにデータ転送制御方
法に関する。
びターゲットならびにデータ転送制御方法に関し、特
に、SCSIバス・プロトコルを用いてデータ転送を実
行する際の信頼性および効率の向上を図るのに好適なイ
ニシエータおよびターゲットならびにデータ転送制御方
法に関する。
【0002】
【従来の技術】ホスト・コンピュータと周辺機器コント
ローラとを結合するインタフェースとしてSCSIバス
が知られている。1つのSCSIバスにはホスト・コン
ピュータや周辺機器コントローラを最大で8台まで接続
できるという特徴がある。一方、複数の機器つまりSC
SI装置を接続できるためにこれらの追加や交換による
伝送特性の変化に起因した伝送トラブルが発生するおそ
れもある。
ローラとを結合するインタフェースとしてSCSIバス
が知られている。1つのSCSIバスにはホスト・コン
ピュータや周辺機器コントローラを最大で8台まで接続
できるという特徴がある。一方、複数の機器つまりSC
SI装置を接続できるためにこれらの追加や交換による
伝送特性の変化に起因した伝送トラブルが発生するおそ
れもある。
【0003】そこで、データ転送の信頼性を向上させる
ために送信データにパリティ・ビットを付加し、データ
受信時にパリティ・ビットのチェックを実施する機能を
有するシステムが知られている(特開昭57−1764
37号公報)。
ために送信データにパリティ・ビットを付加し、データ
受信時にパリティ・ビットのチェックを実施する機能を
有するシステムが知られている(特開昭57−1764
37号公報)。
【0004】さらに、ノイズ等によって前記パリティ・
ビットのチェックでは検出されないエラーが生じるおそ
れがあることから、特開平2−224045号公報にお
いて、次のような対策を講じたデータ転送制御装置が提
案されている。該データ転送制御装置では、受信データ
を格納するデータ格納部と、該データ格納部に格納され
たデータおよびデータ・バス上の受信データを比較する
データ比較部とを有している。すなわち、データの送信
側は受信側からACKパルスつまりデータ応答信号を受
信しない限り繰り返してデータを送信する。したがっ
て、受信側は先の読込みタイミングでデータを受信して
それをデータ格納部に格納した後も、ACKパルスを出
力しないで、データが再び送信されるのを待ち、次の読
込みタイミングで再びデータを取り込む。こうして、先
にデータ格納部に格納したデータと、後で受信したデー
タが一致するまでACKパルスを出力せずに転送シーケ
ンスを続行し、両データが一致した時点でACKパルス
を出力して受信を完了する。
ビットのチェックでは検出されないエラーが生じるおそ
れがあることから、特開平2−224045号公報にお
いて、次のような対策を講じたデータ転送制御装置が提
案されている。該データ転送制御装置では、受信データ
を格納するデータ格納部と、該データ格納部に格納され
たデータおよびデータ・バス上の受信データを比較する
データ比較部とを有している。すなわち、データの送信
側は受信側からACKパルスつまりデータ応答信号を受
信しない限り繰り返してデータを送信する。したがっ
て、受信側は先の読込みタイミングでデータを受信して
それをデータ格納部に格納した後も、ACKパルスを出
力しないで、データが再び送信されるのを待ち、次の読
込みタイミングで再びデータを取り込む。こうして、先
にデータ格納部に格納したデータと、後で受信したデー
タが一致するまでACKパルスを出力せずに転送シーケ
ンスを続行し、両データが一致した時点でACKパルス
を出力して受信を完了する。
【0005】また、SCSIバス上でのインタフェース
動作はマスタ/スレーブの関係ではなく、バス上のすべ
てのSCSI装置について双方向対等関係となってい
る。したがって、入出力要求を発行したSCSI装置つ
まりイニシエータと該入出力要求を受けて入出力動作を
実行するSCSI装置つまりターゲットとの間での通信
は、バス・フェーズの組み合わせによって実行される。
なお、バス・フェーズとはSCSIバス上でのひとつの
まとまった動作単位をいう。
動作はマスタ/スレーブの関係ではなく、バス上のすべ
てのSCSI装置について双方向対等関係となってい
る。したがって、入出力要求を発行したSCSI装置つ
まりイニシエータと該入出力要求を受けて入出力動作を
実行するSCSI装置つまりターゲットとの間での通信
は、バス・フェーズの組み合わせによって実行される。
なお、バス・フェーズとはSCSIバス上でのひとつの
まとまった動作単位をいう。
【0006】イニシエータとターゲットとの間で互いに
データ交換を実行する場合を想定するとSCSIバス上
でのバス・フェーズの遷移シーケンスは図7のようにな
る。同図において、まず、すべてのSCSI装置を使用
していない状態、つまりバス・フリー・フェーズから、
セレクション・フェーズへ移行して、イニシエータが動
作させるターゲットとなるSCSI装置を選択する。コ
マンド・フェーズではターゲットからの要求によりイニ
シエータからターゲットへREAD(リード)コマンド
が転送される。
データ交換を実行する場合を想定するとSCSIバス上
でのバス・フェーズの遷移シーケンスは図7のようにな
る。同図において、まず、すべてのSCSI装置を使用
していない状態、つまりバス・フリー・フェーズから、
セレクション・フェーズへ移行して、イニシエータが動
作させるターゲットとなるSCSI装置を選択する。コ
マンド・フェーズではターゲットからの要求によりイニ
シエータからターゲットへREAD(リード)コマンド
が転送される。
【0007】続いて、データ・イン・フェーズにおい
て、ターゲットは前記READコマンドに応答して、予
定のデータをイニシエータに転送する。ステータス・フ
ェーズではターゲットはイニシエータに対してコマンド
終了状態を示すステータス・バイトを通知する。メッセ
ージ・イン・フェーズではターゲットはイニシエータに
対してコマンド・コンプリート・メッセージを送信し、
コマンドの実行が完了したことを通知してバス・フリー
・フェーズへ移る。
て、ターゲットは前記READコマンドに応答して、予
定のデータをイニシエータに転送する。ステータス・フ
ェーズではターゲットはイニシエータに対してコマンド
終了状態を示すステータス・バイトを通知する。メッセ
ージ・イン・フェーズではターゲットはイニシエータに
対してコマンド・コンプリート・メッセージを送信し、
コマンドの実行が完了したことを通知してバス・フリー
・フェーズへ移る。
【0008】そして、再び、イニシエータからのデータ
転送のため、バス・フリー・フェーズ、セレクション・
フェーズ、コマンド・フェーズを経由する。このコマン
ド・フェーズでは、ターゲットからの要求によりイニシ
エータからターゲットへWRITE(ライト)コマンド
が転送される。データ・アウト・フェーズにおいて、イ
ニシエータは前記WRITEコマンドに応答して予定の
データをターゲットに転送する。ステータス・フェーズ
ではターゲットはイニシエータに対してコマンド終了状
態を示すステータス・バイトを通知する。メッセージ・
イン・フェーズではターゲットはイニシエータに対して
コマンド・コンプリート・メッセージを送信し、コマン
ドの実行が完了したことを通知してバス・フリー・フェ
ーズへ移る。以上の手順において、実質的なデータ交換
はデータ・イン・フェーズおよびデータ・アウト・フェ
ーズで行われる。
転送のため、バス・フリー・フェーズ、セレクション・
フェーズ、コマンド・フェーズを経由する。このコマン
ド・フェーズでは、ターゲットからの要求によりイニシ
エータからターゲットへWRITE(ライト)コマンド
が転送される。データ・アウト・フェーズにおいて、イ
ニシエータは前記WRITEコマンドに応答して予定の
データをターゲットに転送する。ステータス・フェーズ
ではターゲットはイニシエータに対してコマンド終了状
態を示すステータス・バイトを通知する。メッセージ・
イン・フェーズではターゲットはイニシエータに対して
コマンド・コンプリート・メッセージを送信し、コマン
ドの実行が完了したことを通知してバス・フリー・フェ
ーズへ移る。以上の手順において、実質的なデータ交換
はデータ・イン・フェーズおよびデータ・アウト・フェ
ーズで行われる。
【0009】
【発明が解決しようとする課題】上記公報に記載された
データ転送制御装置やデータ交換手順では、次のような
問題点があった。まず、前記公報に記載されたデータ転
送制御装置は、瞬間的な信号レベルの変化には対応でき
るが、瞬間的でないレベル変化に対しては誤ったデータ
が長時間出力されたままとなり、該データ転送制御装置
では不十分である。瞬間的でない誤ったデータ出力の例
としては、データ・バスの欠損やケーブル・コネクタの
不完全な結合状態があげられる。
データ転送制御装置やデータ交換手順では、次のような
問題点があった。まず、前記公報に記載されたデータ転
送制御装置は、瞬間的な信号レベルの変化には対応でき
るが、瞬間的でないレベル変化に対しては誤ったデータ
が長時間出力されたままとなり、該データ転送制御装置
では不十分である。瞬間的でない誤ったデータ出力の例
としては、データ・バスの欠損やケーブル・コネクタの
不完全な結合状態があげられる。
【0010】また、従来のSCSIバス上でのインタフ
ェース動作でSCSI装置相互間のデータ交換を実行す
る場合、データ送受信毎に上述のバス・フェーズを経な
ければならずシステム全体の効率向上の見地からは問題
が大きい。特に、少ない量のデータを頻繁に送受信する
場合には、実質的なデータ転送時間に対するバス・フェ
ーズの実行時間の割合が大きくなり、I/Oプロセスの
効率の低下をきたすという問題点がある。
ェース動作でSCSI装置相互間のデータ交換を実行す
る場合、データ送受信毎に上述のバス・フェーズを経な
ければならずシステム全体の効率向上の見地からは問題
が大きい。特に、少ない量のデータを頻繁に送受信する
場合には、実質的なデータ転送時間に対するバス・フェ
ーズの実行時間の割合が大きくなり、I/Oプロセスの
効率の低下をきたすという問題点がある。
【0011】本発明は、上記の問題点を解消し、データ
転送の信頼性の向上を図るとともに、手続きフェーズつ
まりバス・フェーズを極力少なくして効率の向上を図る
ことができるイニシエータおよびターゲットならびにこ
れらの間におけるデータ転送制御方法を提供することを
目的とする。
転送の信頼性の向上を図るとともに、手続きフェーズつ
まりバス・フェーズを極力少なくして効率の向上を図る
ことができるイニシエータおよびターゲットならびにこ
れらの間におけるデータ転送制御方法を提供することを
目的とする。
【0012】
【課題を解決するための手段】上記の課題を解決し、目
的を達成するための本発明は、ターゲットからSCSI
バス上に出力されたREQパルスに基づいて読込信号を
出力するデータ読込手段と、前記読込信号に応答して読
込まれたSCSIバス上のデータを受信するデータ受信
手段と、前記REQパルスに応答してSCSIバス上に
出力されるACKパルスに同期して、SCSIバス上に
データを出力させるための書出信号を出力するデータ書
出手段と、前記書出信号に応答してデータを出力するデ
ータ送信手段とを具備したイニシエータであることを第
1の特徴とする。
的を達成するための本発明は、ターゲットからSCSI
バス上に出力されたREQパルスに基づいて読込信号を
出力するデータ読込手段と、前記読込信号に応答して読
込まれたSCSIバス上のデータを受信するデータ受信
手段と、前記REQパルスに応答してSCSIバス上に
出力されるACKパルスに同期して、SCSIバス上に
データを出力させるための書出信号を出力するデータ書
出手段と、前記書出信号に応答してデータを出力するデ
ータ送信手段とを具備したイニシエータであることを第
1の特徴とする。
【0013】また、本発明は、イニシエータからのコマ
ンドに基づくREQパルスと同期してデータをSCSI
バスに出力するデータ送信手段と、イニシエータからS
CSIバス上に出力されたACKパルスに基づいて読込
信号を出力するデータ読込手段と、前記読込信号に応答
して読込まれたSCSIバス上のデータを受信するデー
タ受信手段とを具備したターゲットであることを第2の
特徴とする。
ンドに基づくREQパルスと同期してデータをSCSI
バスに出力するデータ送信手段と、イニシエータからS
CSIバス上に出力されたACKパルスに基づいて読込
信号を出力するデータ読込手段と、前記読込信号に応答
して読込まれたSCSIバス上のデータを受信するデー
タ受信手段とを具備したターゲットであることを第2の
特徴とする。
【0014】また、本発明は、ターゲットからのREQ
パルスに同期してSCSIバス上のデータを読込んだ
後、前記REQパルスに基づいてSCSIバスにACK
パルスを出力するとともに、このACKパルスに同期し
てイニシエータからデータをSCSIバスに出力するデ
ータ転送制御方法である点に第3の特徴がある。
パルスに同期してSCSIバス上のデータを読込んだ
後、前記REQパルスに基づいてSCSIバスにACK
パルスを出力するとともに、このACKパルスに同期し
てイニシエータからデータをSCSIバスに出力するデ
ータ転送制御方法である点に第3の特徴がある。
【0015】また、本発明は、ターゲットからSCSI
バス上に出力されたREQパルスに基づいて読込信号を
出力するデータ読込手段と、前記読込信号に応答して読
込まれたSCSIバス上のデータを記憶するデータ・レ
ジスタと、前記REQパルスに応答してSCSIバス上
に出力されるACKパルスに同期して、前記データ・レ
ジスタからSCSIバス上にデータを書出すための書出
信号を出力するデータ書出手段とを具備したイニシエー
タである点に第4の特徴がある。
バス上に出力されたREQパルスに基づいて読込信号を
出力するデータ読込手段と、前記読込信号に応答して読
込まれたSCSIバス上のデータを記憶するデータ・レ
ジスタと、前記REQパルスに応答してSCSIバス上
に出力されるACKパルスに同期して、前記データ・レ
ジスタからSCSIバス上にデータを書出すための書出
信号を出力するデータ書出手段とを具備したイニシエー
タである点に第4の特徴がある。
【0016】また、本発明は、イニシエータからのコマ
ンドに基づくREQパルスと同期してオリジナル・デー
タをSCSIバスに出力するデータ送出手段と、イニシ
エータからSCSIバス上に出力されたACKパルスに
基づいて読込信号を出力するデータ読込手段と、前記読
込信号に応答して読込まれたSCSIバス上のデータお
よび前記オリジナル・データを比較してデータ・エラー
の有無を判定する比較手段とを具備したターゲットであ
る点に第5の特徴がある。
ンドに基づくREQパルスと同期してオリジナル・デー
タをSCSIバスに出力するデータ送出手段と、イニシ
エータからSCSIバス上に出力されたACKパルスに
基づいて読込信号を出力するデータ読込手段と、前記読
込信号に応答して読込まれたSCSIバス上のデータお
よび前記オリジナル・データを比較してデータ・エラー
の有無を判定する比較手段とを具備したターゲットであ
る点に第5の特徴がある。
【0017】また、本発明は、ターゲットからのREQ
パルスに同期してSCSIバス上のデータを読込んでイ
ニシエータの記憶手段に記憶する段階と、前記REQパ
ルスに基づいてSCSIバスにACKパルスを出力する
とともに、このACKパルスに同期してイニシエータか
ら前記記憶手段に記憶されたデータをSCSIバスに出
力する段階と、前記ACKパルスに基づいてSCSIバ
ス上のデータをターゲットのデータ比較手段に読込む段
階と、前記比較手段において、前記SCSIバス上から
読込まれたデータおよびオリジナル・データを比較して
データ・エラーの有無を判定する段階とからなるデータ
転送制御方法である点に第6の特徴がある。
パルスに同期してSCSIバス上のデータを読込んでイ
ニシエータの記憶手段に記憶する段階と、前記REQパ
ルスに基づいてSCSIバスにACKパルスを出力する
とともに、このACKパルスに同期してイニシエータか
ら前記記憶手段に記憶されたデータをSCSIバスに出
力する段階と、前記ACKパルスに基づいてSCSIバ
ス上のデータをターゲットのデータ比較手段に読込む段
階と、前記比較手段において、前記SCSIバス上から
読込まれたデータおよびオリジナル・データを比較して
データ・エラーの有無を判定する段階とからなるデータ
転送制御方法である点に第6の特徴がある。
【0018】上記第1ないし第6の特徴を有する本発明
によれば、イニシエータはACKパルスの出力時に該A
CKパルスに同期して、予定のデータをSCSIバス上
に送出する。また、ターゲットは前記ACKパルスに同
期してSCSIバス上に送出されるデータを読込むこと
ができる。
によれば、イニシエータはACKパルスの出力時に該A
CKパルスに同期して、予定のデータをSCSIバス上
に送出する。また、ターゲットは前記ACKパルスに同
期してSCSIバス上に送出されるデータを読込むこと
ができる。
【0019】特に、第4の特徴によればターゲットから
出力されたデータを読込み、さらにこのデータをACK
パルスに同期してターゲットに返送できる。そして、第
5の特徴によれば、イニシエータから返送されたデータ
に基づいてデータ・エラーが発生したか否かを判定する
ことができる。
出力されたデータを読込み、さらにこのデータをACK
パルスに同期してターゲットに返送できる。そして、第
5の特徴によれば、イニシエータから返送されたデータ
に基づいてデータ・エラーが発生したか否かを判定する
ことができる。
【0020】第6の特徴によれば、ターゲットから出力
されたオリジナル・データとイニシエータからACKパ
ルスと同期して転送されたデータとを比較して、データ
転送が正常に行われたか否かが判断できる。
されたオリジナル・データとイニシエータからACKパ
ルスと同期して転送されたデータとを比較して、データ
転送が正常に行われたか否かが判断できる。
【0021】
【発明の実施の形態】以下に、図面を参照して本発明を
詳細に説明する。図1は本発明の一実施形態に係るSC
SIバス転送制御システムの要部構成を示す図である。
同図において、イニシエータ1とターゲット2とはSC
SIバス3で接続されている。SCSIバス3はデータ
・バスDBと制御ラインCLとからなる。データ・バス
DBでは実データが送受され、制御ラインCLではAC
KパルスやREQパルスつまり要求信号が送受される。
なお、制御ラインCLはACKパルスおよびREQパル
ス用以外の制御ラインをも含むが、本発明と直接関係が
ないので図示を省略してある。同様に、パリティ信号ラ
インも省略してある。
詳細に説明する。図1は本発明の一実施形態に係るSC
SIバス転送制御システムの要部構成を示す図である。
同図において、イニシエータ1とターゲット2とはSC
SIバス3で接続されている。SCSIバス3はデータ
・バスDBと制御ラインCLとからなる。データ・バス
DBでは実データが送受され、制御ラインCLではAC
KパルスやREQパルスつまり要求信号が送受される。
なお、制御ラインCLはACKパルスおよびREQパル
ス用以外の制御ラインをも含むが、本発明と直接関係が
ないので図示を省略してある。同様に、パリティ信号ラ
インも省略してある。
【0022】前記イニシエータ1は、REQ/ACK制
御部11とデータ・レジスタ12とを有する。REQ/
ACK制御部11は、前記制御ラインCL上のREQパ
ルスを入力として、ACKパルスの送出タイミングを決
定するタイミング制御機能と読込信号RDおよび書込信
号WRを生成する機能を有する。前記データ・レジスタ
12は前記読込信号RDおよび書出信号WRに応答して
データ・バスDB上のデータを読込むとともに、データ
・バスDB上にデータを書出す機能を有する。
御部11とデータ・レジスタ12とを有する。REQ/
ACK制御部11は、前記制御ラインCL上のREQパ
ルスを入力として、ACKパルスの送出タイミングを決
定するタイミング制御機能と読込信号RDおよび書込信
号WRを生成する機能を有する。前記データ・レジスタ
12は前記読込信号RDおよび書出信号WRに応答して
データ・バスDB上のデータを読込むとともに、データ
・バスDB上にデータを書出す機能を有する。
【0023】一方、前記ターゲット2は、ACK/RE
Q制御部21とデータ比較部22とを有する。ACK/
REQ制御部21は、前記制御ラインCL上のACKパ
ルスを入力として、REQパルスの送出タイミングを決
定するタイミング制御機能と読込信号RDおよび書出信
号WRを生成する機能を有する。前記データ比較部22
は前記読込信号RDに応答してデータ・バスDB上のデ
ータを読込み、そのデータをオリジナル・データつまり
ターゲット2が送出したデータと比較してその一致・不
一致によりエラー判定を行う機能を有する。
Q制御部21とデータ比較部22とを有する。ACK/
REQ制御部21は、前記制御ラインCL上のACKパ
ルスを入力として、REQパルスの送出タイミングを決
定するタイミング制御機能と読込信号RDおよび書出信
号WRを生成する機能を有する。前記データ比較部22
は前記読込信号RDに応答してデータ・バスDB上のデ
ータを読込み、そのデータをオリジナル・データつまり
ターゲット2が送出したデータと比較してその一致・不
一致によりエラー判定を行う機能を有する。
【0024】次に、イニシエータ1側に設けられるRE
Q/ACK制御部11の構成を図2のブロック図を参照
して説明する。同図において、パルス発生器110には
同期モードでのデータ転送を実行するための転送周期の
値が設定され、ACKパルスの繰り返しパルスと等しい
周期で、単一クロックを出力する。前記転送周期の値
は、イニシエータとターゲットとの間で所定の同期デー
タ転送要求(シンクロナス・データ・トランスファ・リ
クエスト)メッセージを交換して予め決定される2つの
転送制御パラメータのうちのひとつである。
Q/ACK制御部11の構成を図2のブロック図を参照
して説明する。同図において、パルス発生器110には
同期モードでのデータ転送を実行するための転送周期の
値が設定され、ACKパルスの繰り返しパルスと等しい
周期で、単一クロックを出力する。前記転送周期の値
は、イニシエータとターゲットとの間で所定の同期デー
タ転送要求(シンクロナス・データ・トランスファ・リ
クエスト)メッセージを交換して予め決定される2つの
転送制御パラメータのうちのひとつである。
【0025】パルス計数器111は、REQパルスの前
縁つまり立上がりエッジで該REQパルスを計数する。
また、パルス計数器112は、アンドゲート115から
出力されるACKパルスの後縁つまり立ち下がりエッジ
で該ACKパルスを計数する。カウント比較器113は
前記パルス計数器111とパルス計数器112から入力
されるカウンタ値を比較して両者が等しい場合に「0」
を出力する。カウント比較器114は前記パルス計数器
112から入力されるカウンタ値とコマンドフェーズの
コマンドによって決定された転送バイト数とを比較して
両者が等しい場合に「0」を出力する。すなわち、予定
のデータ数を転送したときにカウント比較器114の出
力は「0」になる。
縁つまり立上がりエッジで該REQパルスを計数する。
また、パルス計数器112は、アンドゲート115から
出力されるACKパルスの後縁つまり立ち下がりエッジ
で該ACKパルスを計数する。カウント比較器113は
前記パルス計数器111とパルス計数器112から入力
されるカウンタ値を比較して両者が等しい場合に「0」
を出力する。カウント比較器114は前記パルス計数器
112から入力されるカウンタ値とコマンドフェーズの
コマンドによって決定された転送バイト数とを比較して
両者が等しい場合に「0」を出力する。すなわち、予定
のデータ数を転送したときにカウント比較器114の出
力は「0」になる。
【0026】アンド・ゲート115は、前記パルス発生
器110から出力されるクロック、前記カウント比較器
113の出力信号、前記カウント比較器114の出力信
号、および後述するナンド・ゲート11cの出力信号を
入力としてACKパルスを出力する。すなわち、アンド
ゲート115はターゲット2からREQパルスが入力さ
れ、かつ該REQパルスから所定の遅延時間を経過し、
さらに加えて、予定の転送バイト数を送出し終えていな
い場合に、前記転送周期に対応する単一クロックに応答
してACKパルスを出力する。
器110から出力されるクロック、前記カウント比較器
113の出力信号、前記カウント比較器114の出力信
号、および後述するナンド・ゲート11cの出力信号を
入力としてACKパルスを出力する。すなわち、アンド
ゲート115はターゲット2からREQパルスが入力さ
れ、かつ該REQパルスから所定の遅延時間を経過し、
さらに加えて、予定の転送バイト数を送出し終えていな
い場合に、前記転送周期に対応する単一クロックに応答
してACKパルスを出力する。
【0027】なお、前記ACKパルスはインバータ11
6で反転されてパルス計数器112および後述のフリッ
プ・フロップ11bに入力される。また、REQパルス
はインバータ117で反転されて遅延回路118に入力
される。
6で反転されてパルス計数器112および後述のフリッ
プ・フロップ11bに入力される。また、REQパルス
はインバータ117で反転されて遅延回路118に入力
される。
【0028】遅延回路118は入力信号つまり前記RE
Qパルスの反転信号を遅延させてフリップ・フロップ1
1bのセット端子および遅延回路119に出力する。遅
延回路119はさらに入力信号を遅延させてフリップ・
フロップ11aのリセット端子に出力する。
Qパルスの反転信号を遅延させてフリップ・フロップ1
1bのセット端子および遅延回路119に出力する。遅
延回路119はさらに入力信号を遅延させてフリップ・
フロップ11aのリセット端子に出力する。
【0029】前記フリップ・フロップ11aはSRフリ
ップ・フロップであり、前記REQパルスのアサート状
態「1」でセットされ、前記該REQパルスのネゲート
状態「0」が遅延回路118,119で遅延された後に
リセットされる。また、前記フリップ・フロップ11b
もSRフリップ・フロップであり、前記REQパルスの
ネゲート状態「0」が遅延回路118で遅延された後に
セットされ、前記ACKパルスのネゲート状態「0」で
リセットされる。
ップ・フロップであり、前記REQパルスのアサート状
態「1」でセットされ、前記該REQパルスのネゲート
状態「0」が遅延回路118,119で遅延された後に
リセットされる。また、前記フリップ・フロップ11b
もSRフリップ・フロップであり、前記REQパルスの
ネゲート状態「0」が遅延回路118で遅延された後に
セットされ、前記ACKパルスのネゲート状態「0」で
リセットされる。
【0030】ナンド・ゲート11cはEXCHG有効信
号と前記フリップ・フロップ11aの出力信号を入力と
して前記アンド・ゲート115に信号を出力する。アン
ド・ゲート11dは前記EXCHG有効信号と前記フリ
ップ・フロップ11bの出力信号を入力として書出信号
WRを出力し、RD信号生成器11eは前記REQパル
スに応答して読込信号RDを出力する。前記EXCHG
有効信号は、本実施の形態に特有の設定信号であり、通
常の同期モードでのデータ転送とは異なり、イニシエー
タとターゲットとでデータを交互に送信・受信するモー
ドを設定したときに「1」となる。すなわちこのモード
を設定しようとする場合、イニシエータ1がコマンド・
フェーズでEXCHG信号を発行する。REQ/ACK
制御部11および後述のACK/REQ制御部21では
このEXCHG信号によってEXCHG有効信号を
「1」にする。
号と前記フリップ・フロップ11aの出力信号を入力と
して前記アンド・ゲート115に信号を出力する。アン
ド・ゲート11dは前記EXCHG有効信号と前記フリ
ップ・フロップ11bの出力信号を入力として書出信号
WRを出力し、RD信号生成器11eは前記REQパル
スに応答して読込信号RDを出力する。前記EXCHG
有効信号は、本実施の形態に特有の設定信号であり、通
常の同期モードでのデータ転送とは異なり、イニシエー
タとターゲットとでデータを交互に送信・受信するモー
ドを設定したときに「1」となる。すなわちこのモード
を設定しようとする場合、イニシエータ1がコマンド・
フェーズでEXCHG信号を発行する。REQ/ACK
制御部11および後述のACK/REQ制御部21では
このEXCHG信号によってEXCHG有効信号を
「1」にする。
【0031】次に、ターゲット2側に設けられるACK
/REQ制御部21の構成を図3のブロック図を参照し
て説明する。同図において、パルス発生器210には前
記転送周期の値が設定され、REQパルスの繰り返しパ
ルスと等しい周期で単一クロックを出力する。パルス計
数器211は、ACKパルスの立上がりエッジで該AC
Kパルスを計数し、パルス計数器212は、REQパル
スの立ち下がりエッジで該REQパルスを計数する。全
加算器21fでは転送制御パラメータのひとつであるA
CK/REQオフセット値とパルス計数器211から出
力されるカウント値とが加算される。カウント比較器2
13は前記パルス計数器212から入力されるカウンタ
値と全加算器21fの出力値とを比較して両者が等しい
場合に「0」を出力する。カウント比較器214は前記
パルス計数器212から入力されるカウンタ値と前記転
送バイト数とを比較して両者が等しい場合に「0」を出
力する。
/REQ制御部21の構成を図3のブロック図を参照し
て説明する。同図において、パルス発生器210には前
記転送周期の値が設定され、REQパルスの繰り返しパ
ルスと等しい周期で単一クロックを出力する。パルス計
数器211は、ACKパルスの立上がりエッジで該AC
Kパルスを計数し、パルス計数器212は、REQパル
スの立ち下がりエッジで該REQパルスを計数する。全
加算器21fでは転送制御パラメータのひとつであるA
CK/REQオフセット値とパルス計数器211から出
力されるカウント値とが加算される。カウント比較器2
13は前記パルス計数器212から入力されるカウンタ
値と全加算器21fの出力値とを比較して両者が等しい
場合に「0」を出力する。カウント比較器214は前記
パルス計数器212から入力されるカウンタ値と前記転
送バイト数とを比較して両者が等しい場合に「0」を出
力する。
【0032】アンド・ゲート215は、前記パルス発生
器210から出力されるクロック、前記カウント比較器
213の出力信号、前記カウント比較器214の出力信
号、および後述するナンド・ゲート21cの出力信号を
入力としてREQパルスを出力する。
器210から出力されるクロック、前記カウント比較器
213の出力信号、前記カウント比較器214の出力信
号、および後述するナンド・ゲート21cの出力信号を
入力としてREQパルスを出力する。
【0033】前記REQパルスはインバータ216で反
転されてパルス計数器212および後述のフリップ・フ
ロップ21bに入力される。また、ACKパルスはイン
バータ217で反転されて遅延回路218に入力され
る。遅延回路218は入力信号つまり前記ACKパルス
の反転信号を遅延させてフリップ・フロップ21bのセ
ット端子および遅延回路219に出力する。遅延回路2
19はさらに入力信号を遅延させてフリップ・フロップ
21aのリセット端子に出力する。
転されてパルス計数器212および後述のフリップ・フ
ロップ21bに入力される。また、ACKパルスはイン
バータ217で反転されて遅延回路218に入力され
る。遅延回路218は入力信号つまり前記ACKパルス
の反転信号を遅延させてフリップ・フロップ21bのセ
ット端子および遅延回路219に出力する。遅延回路2
19はさらに入力信号を遅延させてフリップ・フロップ
21aのリセット端子に出力する。
【0034】前記フリップ・フロップ21aはSRフリ
ップ・フロップであり、前記ACKパルスのアサート状
態「1」でセットされ、前記該ACKパルスのネゲート
状態「0」が遅延回路218,219で遅延された後に
リセットされる。また、前記フリップ・フロップ21b
もSRフリップ・フロップであり、前記ACKパルスの
ネゲート状態「0」が遅延回路218で遅延された後に
セットされ、前記REQパルスのネゲート状態「0」で
リセットされる。
ップ・フロップであり、前記ACKパルスのアサート状
態「1」でセットされ、前記該ACKパルスのネゲート
状態「0」が遅延回路218,219で遅延された後に
リセットされる。また、前記フリップ・フロップ21b
もSRフリップ・フロップであり、前記ACKパルスの
ネゲート状態「0」が遅延回路218で遅延された後に
セットされ、前記REQパルスのネゲート状態「0」で
リセットされる。
【0035】ナンド・ゲート21cは前記EXCHG有
効信号と前記フリップ・フロップ21aの出力信号を入
力として前記アンド・ゲート215に信号を出力する。
アンド・ゲート21dは前記EXCHG有効信号と前記
フリップ・フロップ21bの出力信号を入力として書出
信号WRを出力し、RD信号生成器21eは前記ACK
パルスに応答して読込信号RDを出力する。
効信号と前記フリップ・フロップ21aの出力信号を入
力として前記アンド・ゲート215に信号を出力する。
アンド・ゲート21dは前記EXCHG有効信号と前記
フリップ・フロップ21bの出力信号を入力として書出
信号WRを出力し、RD信号生成器21eは前記ACK
パルスに応答して読込信号RDを出力する。
【0036】このACK/REQ制御部21が前記RE
Q/ACK制御部11と実質的に異なる点は、ACK/
REQオフセット値で設定されたパルス数を超えてAC
Kパルスよりも多くのREQパルスを送出しないよう
に、全加算器21fを設けた点である。
Q/ACK制御部11と実質的に異なる点は、ACK/
REQオフセット値で設定されたパルス数を超えてAC
Kパルスよりも多くのREQパルスを送出しないよう
に、全加算器21fを設けた点である。
【0037】続いて、上記構成に基づくイニシエータ1
およびターゲット2間のデータ転送動作を説明する。図
5は、SCSIバス上での情報転送フェーズのタイミン
グチャートである。この情報転送フェーズによってデー
タ転送を実行するためには、予めメッセージ・アウト・
フェーズにおいてイニシエータ1およびターゲット2間
で制御情報のひとつとして同期データ転送要求メッセー
ジを交換し、両者間で実行可能なREQ/ACKオフセ
ット値と転送周期とを決定しておく。
およびターゲット2間のデータ転送動作を説明する。図
5は、SCSIバス上での情報転送フェーズのタイミン
グチャートである。この情報転送フェーズによってデー
タ転送を実行するためには、予めメッセージ・アウト・
フェーズにおいてイニシエータ1およびターゲット2間
で制御情報のひとつとして同期データ転送要求メッセー
ジを交換し、両者間で実行可能なREQ/ACKオフセ
ット値と転送周期とを決定しておく。
【0038】同期モード転送では、REQパルスおよび
ACKパルスのパルス数が等しいことで転送の正常性を
確認する。ターゲット2はイニシエータ1からのACK
パルスを受け取る前にREQ/ACKオフセット値を越
えない範囲の個数だけREQパルスを送出できる。ター
ゲット2はREQ/ACKオフセット値の分だけREQ
パルスを送出したら、ACKパルスの立上がりを検出す
るまでの間、REQパルスの送出を中断する。
ACKパルスのパルス数が等しいことで転送の正常性を
確認する。ターゲット2はイニシエータ1からのACK
パルスを受け取る前にREQ/ACKオフセット値を越
えない範囲の個数だけREQパルスを送出できる。ター
ゲット2はREQ/ACKオフセット値の分だけREQ
パルスを送出したら、ACKパルスの立上がりを検出す
るまでの間、REQパルスの送出を中断する。
【0039】転送周期は連続するREQパルスおよびA
CKパルスの最小繰返し時間、つまり同期モードでの上
限の転送速度となる。本実施形態では、転送周期は20
0n秒に設定した。また、REQ/ACKオフセット値
は「01H」に設定した。すなわち、1回のREQ/A
CKハンドシェイクで1個の情報が転送される。
CKパルスの最小繰返し時間、つまり同期モードでの上
限の転送速度となる。本実施形態では、転送周期は20
0n秒に設定した。また、REQ/ACKオフセット値
は「01H」に設定した。すなわち、1回のREQ/A
CKハンドシェイクで1個の情報が転送される。
【0040】図5において、ターゲット2はタイミング
Taでオリジナル・データをデータ・ラインDBに送出
した後、タイミングTbでREQパルスを送出する。タ
イミングTaからTbまでの時間はSCSIのタイミン
グ規約によるデ・スキュー遅延時間およびケーブル・ス
キュー遅延時間(55n秒)以上を確保する。
Taでオリジナル・データをデータ・ラインDBに送出
した後、タイミングTbでREQパルスを送出する。タ
イミングTaからTbまでの時間はSCSIのタイミン
グ規約によるデ・スキュー遅延時間およびケーブル・ス
キュー遅延時間(55n秒)以上を確保する。
【0041】イニシエータ1は、前記REQパルスの立
上がりの検出によって前記RD信号生成器11eから出
力される読込信号RDに応答してタイミングIaでデー
タ・ラインDB上から前記オリジナル・データをデータ
・レジスタ12に取り込む。データを取り込んだ後も、
前記フリップ・フロップ11aはREQパルスでセット
されているので、前記アンド・ゲート115は開かず、
ACKパルスの出力は禁止状態に維持される。
上がりの検出によって前記RD信号生成器11eから出
力される読込信号RDに応答してタイミングIaでデー
タ・ラインDB上から前記オリジナル・データをデータ
・レジスタ12に取り込む。データを取り込んだ後も、
前記フリップ・フロップ11aはREQパルスでセット
されているので、前記アンド・ゲート115は開かず、
ACKパルスの出力は禁止状態に維持される。
【0042】ターゲット2は、前記REQパルスの立ち
下がり後も、ACK/REQオフセット値の設定によ
り、ACK/REQ制御部21は次のREQパルスを送
出しない。そして、ターゲット2は前記REQパルスの
送出後、タイミング規約によるホールド時間(45n
秒)および前記補償時間の合計(100n秒)以上に設
定された予定時間が経過したタイミングTcでデータ・
ラインDBを開放する。
下がり後も、ACK/REQオフセット値の設定によ
り、ACK/REQ制御部21は次のREQパルスを送
出しない。そして、ターゲット2は前記REQパルスの
送出後、タイミング規約によるホールド時間(45n
秒)および前記補償時間の合計(100n秒)以上に設
定された予定時間が経過したタイミングTcでデータ・
ラインDBを開放する。
【0043】データ・ラインDBが開放されると、イニ
シエータ1は、タイミングIbでREQパルスの立ち下
がりを検出した後、さらに前記遅延回路118で遅延さ
れた時間t1が経過すると、タイミングIcで前記アン
ド・ゲート11dを開いて書出信号WRを出力する。該
書出信号WRは前記データ・レジスタ12に供給され、
前記タイミングIaで読込んだデータがデータ・バスD
B上に送出される。
シエータ1は、タイミングIbでREQパルスの立ち下
がりを検出した後、さらに前記遅延回路118で遅延さ
れた時間t1が経過すると、タイミングIcで前記アン
ド・ゲート11dを開いて書出信号WRを出力する。該
書出信号WRは前記データ・レジスタ12に供給され、
前記タイミングIaで読込んだデータがデータ・バスD
B上に送出される。
【0044】イニシエータ1においては、前記データを
データ・ラインDBに送出した後、前記遅延回路119
に設定した補償時間t2が経過すると、タイミングId
でフリップ・フロップ11aがリセットされる。そうす
ると、前記アンド・ゲート115が開いてACKパルス
の出力禁止状態が解除され、ACKパルスが送出され
る。
データ・ラインDBに送出した後、前記遅延回路119
に設定した補償時間t2が経過すると、タイミングId
でフリップ・フロップ11aがリセットされる。そうす
ると、前記アンド・ゲート115が開いてACKパルス
の出力禁止状態が解除され、ACKパルスが送出され
る。
【0045】ターゲット2においては、前記ACKパル
スの立上がりに応答して、タイミングTdで前記RD信
号生成器21eが読込信号RDを出力する。前記データ
比較部22は、この読込信号RDに応答してデータ・ラ
インDB上のデータを取り込み、このデータと、先にタ
ーゲット2自身が送出したオリジナル・データとを比較
する。
スの立上がりに応答して、タイミングTdで前記RD信
号生成器21eが読込信号RDを出力する。前記データ
比較部22は、この読込信号RDに応答してデータ・ラ
インDB上のデータを取り込み、このデータと、先にタ
ーゲット2自身が送出したオリジナル・データとを比較
する。
【0046】ACKパルスの立上がりエッジが検出され
ると、前記パルス計数器211のカウント値は更新され
るが、同じACKパルスの立上がりによって前記フリッ
プ・フロップ21aがセットされ、REQパルスの送出
禁止状態は継続している。イニシエータ1は、ACKパ
ルスを送出すると、前記ホールド時間および補償時間
(100n秒)経過したタイミングIeでデータ・バス
DBを開放する。なお、タイミングTe以降は、データ
エラーを判定しない場合に関するものであり、説明は後
述する。
ると、前記パルス計数器211のカウント値は更新され
るが、同じACKパルスの立上がりによって前記フリッ
プ・フロップ21aがセットされ、REQパルスの送出
禁止状態は継続している。イニシエータ1は、ACKパ
ルスを送出すると、前記ホールド時間および補償時間
(100n秒)経過したタイミングIeでデータ・バス
DBを開放する。なお、タイミングTe以降は、データ
エラーを判定しない場合に関するものであり、説明は後
述する。
【0047】ターゲット2がイニシエータ1から送出さ
れたデータを確認したならば、ステータス・フェーズに
移行して確認結果を通知する。すなわち、比較部22で
の比較の結果、両データが一致したならば、ターゲット
2はイニシエータ1へコマンド終了状態を示すステータ
ス・バイトを通知する。一方、両データが不一致なら
ば、ターゲット2はデータエラーと判断してイニシエー
タ1へエラー発生を示すステータス・バイトを通知する
とともに、データ・イン・フェーズのリトライ(再実
行)を行う。
れたデータを確認したならば、ステータス・フェーズに
移行して確認結果を通知する。すなわち、比較部22で
の比較の結果、両データが一致したならば、ターゲット
2はイニシエータ1へコマンド終了状態を示すステータ
ス・バイトを通知する。一方、両データが不一致なら
ば、ターゲット2はデータエラーと判断してイニシエー
タ1へエラー発生を示すステータス・バイトを通知する
とともに、データ・イン・フェーズのリトライ(再実
行)を行う。
【0048】このように、ターゲット2から送出したオ
リジナル・データがイニシエータ1で確実に転送された
かどうかを判定するため、ターゲット2からデータ・バ
スDBに送出されたデータを読込んだイニシエータ1
が、そのデータをACKパルスに同期させてデータ・バ
スDB上に送出するようにした。こうして、ターゲット
2では、データの転送が確実に行われたか否かを判定で
きると同時に、イニシエータ1は、前記判定のためのデ
ータ送出に際して、ACKパルスに同期して該データを
送出できるので、複数のフェーズを経るという手続きを
とる必要がない。
リジナル・データがイニシエータ1で確実に転送された
かどうかを判定するため、ターゲット2からデータ・バ
スDBに送出されたデータを読込んだイニシエータ1
が、そのデータをACKパルスに同期させてデータ・バ
スDB上に送出するようにした。こうして、ターゲット
2では、データの転送が確実に行われたか否かを判定で
きると同時に、イニシエータ1は、前記判定のためのデ
ータ送出に際して、ACKパルスに同期して該データを
送出できるので、複数のフェーズを経るという手続きを
とる必要がない。
【0049】以上説明した実施形態では、イニシエータ
1からターゲット2に転送されるデータは、エラー判定
に利用するためのデータであった。しかし、イニシエー
タ1からターゲット2には、ACKパルスに同期して、
イニシエータ1の独自のデータを送出してもよい。すな
わち、イニシエータ1とターゲット2とで互いに異なる
データを交互に転送しあってもよい。
1からターゲット2に転送されるデータは、エラー判定
に利用するためのデータであった。しかし、イニシエー
タ1からターゲット2には、ACKパルスに同期して、
イニシエータ1の独自のデータを送出してもよい。すな
わち、イニシエータ1とターゲット2とで互いに異なる
データを交互に転送しあってもよい。
【0050】図4は、上記実施形態の変形例を示すイニ
シエータ4とターゲット5の要部構成を示すブロック図
である。同図において、ターゲット4のデータ受信部4
2およびデータ送信部43はデータバッファを有してお
り、内部データ・バス40を介して図示しないCPUや
記憶部に接続されている。同様に、ターゲットのデータ
受信部52およびデータ送信部53はデータバッファを
有しており、内部データ・バス50を介して図示しない
CPUや記憶部に接続されている。
シエータ4とターゲット5の要部構成を示すブロック図
である。同図において、ターゲット4のデータ受信部4
2およびデータ送信部43はデータバッファを有してお
り、内部データ・バス40を介して図示しないCPUや
記憶部に接続されている。同様に、ターゲットのデータ
受信部52およびデータ送信部53はデータバッファを
有しており、内部データ・バス50を介して図示しない
CPUや記憶部に接続されている。
【0051】REQ/ACK制御部41およびACK/
REQ制御部51は前記REQ/ACK制御部11およ
びACK/REQ制御部21と同様の機能を有する。タ
ーゲット5のデータ送信部53は、ACK/REQ制御
部51から入力される書出信号WRに従い、REQパル
スに同期して前記データ送信部53のバッファに準備さ
れているオリジナル・データをデータ・バスDBに送出
する。
REQ制御部51は前記REQ/ACK制御部11およ
びACK/REQ制御部21と同様の機能を有する。タ
ーゲット5のデータ送信部53は、ACK/REQ制御
部51から入力される書出信号WRに従い、REQパル
スに同期して前記データ送信部53のバッファに準備さ
れているオリジナル・データをデータ・バスDBに送出
する。
【0052】データ・バスDB上のオリジナル・データ
は、イニシエータ4のREQ/ACK制御部41からの
読込信号RDに従ってデータ受信部42に受信される。
イニシエータ4はデータを受信すると、独自のオリジナ
ル・データをデータ送信部43のバッファから読み出
し、REQ/ACK制御部41の書出信号WRによって
ACKパルスの出力タイミングで該データをデータ・バ
スDBに送出する。
は、イニシエータ4のREQ/ACK制御部41からの
読込信号RDに従ってデータ受信部42に受信される。
イニシエータ4はデータを受信すると、独自のオリジナ
ル・データをデータ送信部43のバッファから読み出
し、REQ/ACK制御部41の書出信号WRによって
ACKパルスの出力タイミングで該データをデータ・バ
スDBに送出する。
【0053】ターゲット5のACK/REQ制御部51
は前記ACKパルスを検出してデータ受信部52に読込
信号RDを出力し、該データ受信部52はデータ・バス
DBからデータを読込む。
は前記ACKパルスを検出してデータ受信部52に読込
信号RDを出力し、該データ受信部52はデータ・バス
DBからデータを読込む。
【0054】こうして、イニシエータ4およびターゲッ
ト5の両者間で交互にデータが送受され、このデータ送
受では、複雑なフェーズ交換すなわち図7に関して説明
したデータ・イン・フェーズおよびデータ・アウト・フ
ェーズ間の手順を簡略化することができる。図6は簡略
化したバス・フェーズの遷移シーケンス図である。同図
に示すように、イニシエータ1はコマンド・フェーズに
おいて、EXCHG信号を発行する。その結果、データ
・イン・フェーズにおいてイニシエータ1およびターゲ
ット2間でデータの送受が行われる。予定の転送バイト
数だけデータが転送されると、ステータス・フェーズお
よびメッセージ・フェーズを経て、再びフリー・フェー
ズに移行する。
ト5の両者間で交互にデータが送受され、このデータ送
受では、複雑なフェーズ交換すなわち図7に関して説明
したデータ・イン・フェーズおよびデータ・アウト・フ
ェーズ間の手順を簡略化することができる。図6は簡略
化したバス・フェーズの遷移シーケンス図である。同図
に示すように、イニシエータ1はコマンド・フェーズに
おいて、EXCHG信号を発行する。その結果、データ
・イン・フェーズにおいてイニシエータ1およびターゲ
ット2間でデータの送受が行われる。予定の転送バイト
数だけデータが転送されると、ステータス・フェーズお
よびメッセージ・フェーズを経て、再びフリー・フェー
ズに移行する。
【0055】なお、ターゲット2でデータエラーの判定
を行う場合は、先に図5に関して説明したように、ター
ゲット2がデータを受信した後は、データ・イン・フェ
ーズからステータス・フェーズに移行するが、データエ
ラーの判定を他の手段で行う場合は、さらに、多数の予
定データを交換した後に、ステータス・フェーズに移行
するようにできる。すなわち、イニシエータ1,4およ
びターゲット2,5間で同数のデータを交互に送信する
場合は、いちいちデータ・イン・フェーズからステータ
ス・フェーズに移行することなくデータを交互に送信で
きる。
を行う場合は、先に図5に関して説明したように、ター
ゲット2がデータを受信した後は、データ・イン・フェ
ーズからステータス・フェーズに移行するが、データエ
ラーの判定を他の手段で行う場合は、さらに、多数の予
定データを交換した後に、ステータス・フェーズに移行
するようにできる。すなわち、イニシエータ1,4およ
びターゲット2,5間で同数のデータを交互に送信する
場合は、いちいちデータ・イン・フェーズからステータ
ス・フェーズに移行することなくデータを交互に送信で
きる。
【0056】複数のデータを交互に送信する場合は、図
5のタイミングTe以降に示す動作となる。すなわち、
ACKパルスの立ち下がりから後は、データ・バスDB
が開放されているので、ターゲット2は、タイミングT
eで次のオリジナル・データをデータ・バスDB上に送
出する。また、ターゲット2では、オリジナル・データ
を送出した後、遅延回路219に設定されている補償時
間(55n秒)を経過した後、前記フリップ・フロップ
21aがリセットされて前記アンド・ゲート215が開
き、タイミングTfでREQパルスが送出される。この
データ転送は予め指定された転送バイト数だけ繰り返さ
れ、カウント比較器24で予定の転送バイト数だけデー
タ転送されたと判定されると、それ以上はREQパルス
が送出されず、動作を終了する。
5のタイミングTe以降に示す動作となる。すなわち、
ACKパルスの立ち下がりから後は、データ・バスDB
が開放されているので、ターゲット2は、タイミングT
eで次のオリジナル・データをデータ・バスDB上に送
出する。また、ターゲット2では、オリジナル・データ
を送出した後、遅延回路219に設定されている補償時
間(55n秒)を経過した後、前記フリップ・フロップ
21aがリセットされて前記アンド・ゲート215が開
き、タイミングTfでREQパルスが送出される。この
データ転送は予め指定された転送バイト数だけ繰り返さ
れ、カウント比較器24で予定の転送バイト数だけデー
タ転送されたと判定されると、それ以上はREQパルス
が送出されず、動作を終了する。
【0057】
【発明の効果】以上の説明から明らかなように、請求項
1ないし請求項6の発明によれば、イニシエータはAC
Kパルスの出力時に該ACKパルスに同期して、予定の
データをSCSIバス上に送出する。また、ターゲット
は前記ACKパルスに同期してSCSIバス上に送出さ
れるデータを読込むことができる。
1ないし請求項6の発明によれば、イニシエータはAC
Kパルスの出力時に該ACKパルスに同期して、予定の
データをSCSIバス上に送出する。また、ターゲット
は前記ACKパルスに同期してSCSIバス上に送出さ
れるデータを読込むことができる。
【0058】したがって、ターゲットからイニシエータ
にデータを転送した後、バス・フェーズの遷移シーケン
スをバス・フリー・フェーズに戻すことなく、ターゲッ
トのデータ・イン・フェーズの中でイニシエータからタ
ーゲットにデータを出力することができる。その結果、
複数のフェーズを省略して効率的にデータ転送を行うこ
とができる。
にデータを転送した後、バス・フェーズの遷移シーケン
スをバス・フリー・フェーズに戻すことなく、ターゲッ
トのデータ・イン・フェーズの中でイニシエータからタ
ーゲットにデータを出力することができる。その結果、
複数のフェーズを省略して効率的にデータ転送を行うこ
とができる。
【0059】また、請求項4ないし6の発明によれば、
ターゲットから出力されたオリジナル・データとイニシ
エータからACKパルスと同期して転送されたデータと
を比較して、データ転送が正常に行われたか否かが判断
できる。特に、データ・バスの欠損やコネクタの不完全
な結合が生じていた場合等にもデータ・エラーを確実に
検出することができる。
ターゲットから出力されたオリジナル・データとイニシ
エータからACKパルスと同期して転送されたデータと
を比較して、データ転送が正常に行われたか否かが判断
できる。特に、データ・バスの欠損やコネクタの不完全
な結合が生じていた場合等にもデータ・エラーを確実に
検出することができる。
【図1】 本発明の一実施形態に係るイニシエータおよ
びターゲットの構成を示すデータ転送システムの構成図
である。
びターゲットの構成を示すデータ転送システムの構成図
である。
【図2】 イニシエータに含まれるREQ/ACK制御
部の構成を示すブロック図である。
部の構成を示すブロック図である。
【図3】 ターゲットに含まれるACK/REQ制御部
の構成を示すブロック図である。
の構成を示すブロック図である。
【図4】 本発明の一実施形態に係るイニシエータおよ
びターゲットの変形例の構成を示すデータ転送システム
の構成図である。
びターゲットの変形例の構成を示すデータ転送システム
の構成図である。
【図5】 イニシエータおよびターゲット間のデータ転
送のタイミングを示すタイミングチャートである。
送のタイミングを示すタイミングチャートである。
【図6】 本発明に係るバス・フェーズの遷移シーケン
ス図である。
ス図である。
【図7】 従来のバス・フェーズの遷移シーケンスを示
す図である。
す図である。
1,4…イニシエータ、 2,5…ターゲット、 3…
SCSIバス、 11,41…REQ/ACK制御部、
12…データ・レジスタ、 21,51…ACK/R
EQ制御部、 22…データ比較部、 42,52…デ
ータ送信部、 43,53…データ受信部
SCSIバス、 11,41…REQ/ACK制御部、
12…データ・レジスタ、 21,51…ACK/R
EQ制御部、 22…データ比較部、 42,52…デ
ータ送信部、 43,53…データ受信部
Claims (6)
- 【請求項1】 ターゲットからSCSIバス上に出力さ
れたREQパルスに基づいて読込信号を出力するデータ
読込手段と、 前記読込信号に応答して読込まれたSCSIバス上のデ
ータを受信するデータ受信手段と、 前記REQパルスに応答してSCSIバス上に出力され
るACKパルスに同期して、SCSIバス上にデータを
出力させるための書出信号を出力するデータ書出手段
と、 前記書出信号に応答してデータを出力するデータ送信手
段とを具備したことを特徴とするイニシエータ。 - 【請求項2】 イニシエータからのコマンドに基づくR
EQパルスと同期してデータをSCSIバスに出力する
データ送信手段と、 イニシエータからSCSIバス上に出力されたACKパ
ルスに基づいて読込信号を出力するデータ読込手段と、 前記読込信号に応答して読込まれたSCSIバス上のデ
ータを受信するデータ受信手段とを具備したターゲッ
ト。 - 【請求項3】 ターゲットおよびイニシエータ間でSC
SIバスを使用してデータ転送を行うデータ転送制御方
法において、 ターゲットからのREQパルスに同期してSCSIバス
上のデータを読込んだ後、前記REQパルスに基づいて
SCSIバスにACKパルスを出力するとともに、この
ACKパルスに同期してイニシエータからデータをSC
SIバスに出力することを特徴とするデータ転送制御方
法。 - 【請求項4】 ターゲットからSCSIバス上に出力さ
れたREQパルスに基づいて読込信号を出力するデータ
読込手段と、 前記読込信号に応答して読込まれたSCSIバス上のデ
ータを記憶するデータ・レジスタと、 前記REQパルスに応答してSCSIバス上に出力され
るACKパルスに同期して、前記データ・レジスタから
SCSIバス上にデータを書出すための書出信号を出力
するデータ書出手段とを具備したことを特徴とするイニ
シエータ。 - 【請求項5】 イニシエータからのコマンドに基づくR
EQパルスと同期してオリジナル・データをSCSIバ
スに出力するデータ送出手段と、 イニシエータからSCSIバス上に出力されたACKパ
ルスに基づいて読込信号を出力するデータ読込手段と、 前記読込信号に応答して読込まれたSCSIバス上のデ
ータおよび前記オリジナル・データを比較してデータ・
エラーの有無を判定する比較手段とを具備したことを特
徴とするターゲット。 - 【請求項6】 ターゲットおよびイニシエータ間でSC
SIバスを使用してデータ転送を行うデータ転送制御方
法において、 ターゲットからのREQパルスに同期してSCSIバス
上のデータを読込んでイニシエータの記憶手段に記憶す
る段階と、 前記REQパルスに基づいてSCSIバスにACKパル
スを出力するとともに、このACKパルスに同期してイ
ニシエータから前記記憶手段に記憶されたデータをSC
SIバスに出力する段階と、 前記ACKパルスに基づいてSCSIバス上のデータを
ターゲットのデータ比較手段に読込む段階と、 前記比較手段において、前記SCSIバス上から読込ま
れたデータおよびオリジナル・データを比較してデータ
・エラーの有無を判定する段階とからなるデータ転送制
御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8070945A JPH09244967A (ja) | 1996-03-04 | 1996-03-04 | イニシエータおよびターゲットならびにデータ転送制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8070945A JPH09244967A (ja) | 1996-03-04 | 1996-03-04 | イニシエータおよびターゲットならびにデータ転送制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09244967A true JPH09244967A (ja) | 1997-09-19 |
Family
ID=13446159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8070945A Pending JPH09244967A (ja) | 1996-03-04 | 1996-03-04 | イニシエータおよびターゲットならびにデータ転送制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09244967A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100389839B1 (ko) * | 1999-12-14 | 2003-07-02 | 삼성전자주식회사 | 데이터 동기화 시스템 및 운용 방법 |
-
1996
- 1996-03-04 JP JP8070945A patent/JPH09244967A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100389839B1 (ko) * | 1999-12-14 | 2003-07-02 | 삼성전자주식회사 | 데이터 동기화 시스템 및 운용 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6813251B1 (en) | Split Transaction protocol for a bus system | |
US4979097A (en) | Method and apparatus for interconnecting busses in a multibus computer system | |
US4864496A (en) | Bus adapter module for interconnecting busses in a multibus computer system | |
KR960006506B1 (ko) | 컴퓨터 시스템, 시스템 확장장치, 버스 결합장치 및 버스억세스 조정방법 | |
EP0335424B1 (en) | Improved parity checking apparatus | |
EP0522763B1 (en) | High performance asynchronous bus interface | |
JPH0682349B2 (ja) | 位相変換のための原子シーケンス | |
US5812875A (en) | Apparatus using a state device and a latching circuit to generate an acknowledgement signal in close proximity to the request signal for enhancing input/output controller operations | |
JPH02176846A (ja) | 非同期装置間で通信を行なうための効率的なプロトコル | |
JPH0736827A (ja) | 複数のデータ処理装置間に情報を転送する方法および装置 | |
KR20140045324A (ko) | 직렬 인터페이스 | |
US11567893B2 (en) | Method and a mirrored serial interface (MSI) for transferring data | |
JP3592547B2 (ja) | 情報処理装置および信号転送方法 | |
CN112380157A (zh) | 一种带fifo缓存和校验功能的iic总线的通信装置 | |
US4858234A (en) | Method and apparatus for error recovery in a multibus computer system | |
US6463494B1 (en) | Method and system for implementing control signals on a low pin count bus | |
US6085285A (en) | Intermixing different devices along a single data communication link by placing a strobe signal in a parity bit slot | |
JPH0337221B2 (ja) | ||
JPH09244967A (ja) | イニシエータおよびターゲットならびにデータ転送制御方法 | |
US7302508B2 (en) | Apparatus and method for high speed data transfer | |
JPH04230563A (ja) | データ処理システム | |
JP5926583B2 (ja) | 情報処理装置、シリアル通信システムおよびそれらの通信初期化の方法、並びにシリアル通信装置 | |
JPH0635825A (ja) | コンピュータ・システムおよびシステム拡張装置 | |
TW502171B (en) | Data transmitting system | |
EP0357413B1 (en) | Data transfer control circuit |