JP4098987B2 - インターフェース変換システム及びデータ転送方法 - Google Patents

インターフェース変換システム及びデータ転送方法 Download PDF

Info

Publication number
JP4098987B2
JP4098987B2 JP2002022843A JP2002022843A JP4098987B2 JP 4098987 B2 JP4098987 B2 JP 4098987B2 JP 2002022843 A JP2002022843 A JP 2002022843A JP 2002022843 A JP2002022843 A JP 2002022843A JP 4098987 B2 JP4098987 B2 JP 4098987B2
Authority
JP
Japan
Prior art keywords
interface
scsi
data
host
processing unit
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
JP2002022843A
Other languages
English (en)
Other versions
JP2003223411A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002022843A priority Critical patent/JP4098987B2/ja
Priority to US10/211,290 priority patent/US6948025B2/en
Publication of JP2003223411A publication Critical patent/JP2003223411A/ja
Application granted granted Critical
Publication of JP4098987B2 publication Critical patent/JP4098987B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Debugging And Monitoring (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、IEEE1394規格のインターフェースを備えた機器と、SCSI規格のインターフェースを備えた機器との間でデータ転送を行う場合に使用されるインターフェース変換装置に関するものである。
【0002】
ホスト機器であるIEEE1394規格のインターフェースを備えた機器と、SCSI規格のインターフェースを備えた機器とでデータ転送を行う場合、ホスト機器の指示に基づいて、コマンドを受け渡し、データを送受信し、ステータスを返すという動作をしていると、データ転送効率の向上は望めず、エラーが発生した場合の復旧処理にも時間を要し、システム全体のパフォーマンスが低下する。データ転送を効率よく行うためには、IEEE1394機器と、SCSI機器との間のデータ転送を効率よく仲介するインターフェース変換装置が必要となる。
【0003】
【従来の技術】
近年、高速シリアルバスインターフェースの規格であるIEEE1394準拠のインターフェースを搭載した機器が年々増加し始めている。このIEEE1394インターフェースは、電源が投入された状態で、バスの接続あるいは取外しが可能となっている。
【0004】
一方、コンピュータと周辺機器を接続するための高速インターフェース規格であるSCSIは、これまでにハードディスクドライブやCD−ROMドライブ・スキャナー等、数多くのパソコン周辺機器に採用され、普及が進んでいる。
【0005】
IEEE1394インターフェースを有するwindows(R)等のOSを搭載したホストPCと、SCSIインターフェースを備えたデバイスとを接続する場合、異なるインターフェースを仲介するようなデータ変換を行うインターフェース変換装置が必要である。
【0006】
従来の1394−SCSI間のインターフェース変換装置は、図16に示すように、データ変換器1と、1394側のI/Fコントローラー2及びSCSI側のI/Fコントローラー3とから構成される。
【0007】
そして、I/Fコントローラー2がホストPC4に接続され、I/Fコントローラー3がSCSIデバイス5に接続される。
このようなインターフェース変換装置では、データの切り貼り程度の簡単なフォーマット変換により、IEEE1394とSCSIとの異なるインターフェース間でのデータ転送を行っている。
【0008】
これは、IEEE1394インターフェース上で利用されているSBP2と呼ばれるプロトコルが、SCSIプロトコルをベースとして作られているため、転送されてくるデータのフォーマットが異なっていても、処理手順やデータの内容に共通性を持っていることによる。
【0009】
すなわち、IEEE1394インターフェース及びSCSIインターフェースでは、図17に示すように、コマンドフェッチ(取り込み)動作(ステップ1)と、コマンドに基づくデータ転送動作(ステップ2)と、データ転送動作終了後のステータス報告(ステップ3)とを繰り返す共通の処理手順で動作する。
【0010】
具体的には、図20に示すように、1394側インターフェースでは、IEEE1394インターフェースで動作するホストPCからのコマンドORB(Operation request Block)の取り込み動作と、そのコマンドに基づくデータ転送動作と、データ転送終了後のステータス報告動作とを繰り返す。
【0011】
また、SCSIインターフェース側では、上記コマンドORBの取り込み動作に対応するCMDフェーズと、データ転送動作に対応するデータIN/OUTフェーズと、ステータス報告動作に対応するステータスフェーズ及びメッセージフェーズとを繰り返す。
【0012】
コマンドORBは、命令の指示を行うパケットフォーマットであり、図18に示すように、データの大きさ、転送速度、ページサイズ、データサイズ等の各種データ領域と、command block領域に実際の実行コマンドが書き込まれている。
【0013】
command blockの内容は、SCSIデバイスに送られるコマンドと同一である。従って、インターフェース変換装置において、コマンドORBの取り込み動作時には、データ変換器1でcommand block領域部分を切り出して、SCSIデバイス側に転送すればよい。
【0014】
コマンドORBの取り込み動作に続くデータ転送動作時には、データ変換器1は実行コマンドに基づいてホストPC4から受け取ったデータ、あるいはSCSIデバイス5から受け取ったデータを加工することなく転送する。
【0015】
ステータス報告動作時には、インターフェース変換装置ではSCSIデバイス側から前記実行コマンドに対するステータス及びメッセージ報告を受け取ると、その内容を1394側インターフェースのステータスFIFOフォーマットに反映させて、ホストPC4に転送する。
【0016】
具体的には、ステータス及びメッセージ報告の内容を、図19に示すステータスFIFOフォーマットのcommand set-dependent領域に反映させて転送する。
また、1394側のホストPC4では、Windows(R)等のOS上でSPB2プロトコルを制御するドライバが動作し、その1つのドライバで、接続されるすべてのSPB2対応IEEE1394デバイスを制御している。
【0017】
従って、接続されたSCSIデバイスに対するコマンドやデータの出力開始タイミングあるいはエラー処理を開始するタイミングは、ホストPC4の動作状態によって変動する。
【0018】
【発明が解決しようとする課題】
上記のようなインターフェース変換装置では、次に示すような問題点がある。
(1)ホストPC4からSCSIデバイス5にコマンドあるいはデータを転送する場合、1394インターフェース側では正常に転送しているのに、SCSIインターフェース側でエラーが発生すると、ホストPC4に対しエラー報告をする必要がある。
(2)SCSIデバイス5からホストPC4にデータを転送する場合、SCSIインターフェース側では正常に転送しているのに、1394インターフェース側でエラーが発生すると、ホストPC4に対しエラー報告をする必要がある。
(3)エラーが発生した場合、ホストPC4からの指示を待って復旧処理を行うため、復旧完了までに時間を要する。特に、データ転送動作時にエラーが発生すると、データの転送レートが低下し、システムのパフォーマンス低下を招く。
(4)1394インターフェース側若しくはSCSIインターフェース側でエラーが発生した場合、当該コマンドで行ったデータ転送を最初からやり直す(リトライ)必要がある。
(5)ホストPC4でのコマンドORBの取り込み動作、そのコマンドに基づくデータ転送動作、及びデータ転送終了後のステータス報告動作の各動作の開始タイミングに対し、SCSIデバイスでのCMDフェーズ、データ入出力フェーズ及びステータスフェーズの開始タイミングのずれが大きくなると、SCSIインターフェース側でエラーが発生していないにも関わらず、ホストPC4がエラーと認識してしまい、復旧処理が必要となる。
【0019】
この発明の目的は、1394インターフェースとSCSIインターフェースとの間でのデータ転送動作のパフォーマンスを向上させ得るインターフェース変換装置を提供することにある。
【0020】
【課題を解決するための手段】
図1に示すように、インターフェース変換装置は、1394インターフェース11,12と、データ変換器14,15,16と、SCSIインターフェース13とを備え、1394プロトコルとSCSIプロトコルとの間のデータ転送時にデータの変換処理を行う。前記データ変換器は、前記1394プロトコルとSCSIプロトコルとを独立して制御する制御部14,16を備えた。
【0021】
また、前記データ変換器は、前記1394インターフェース11,12とSCSIインターフェース13との間でデータを転送するDMAコントローラー15と、前記1394インターフェース11,12、SCSIインターフェース13及びDMAコントローラー15を制御する中央処理部14と、前記中央処理部14に接続されたメモリー16とから構成される。中央処理部14は、 1394 プロトコルで動作するホスト機器からのリセット要求発生時に、 SCSI プロトコルで動作する SCSI デバイスをリセットすることなくバスフリーフェーズとする第三の処理部を備えた。
【0022】
【発明の実施の形態】
図1は、この発明を具体化したインターフェース変換装置の概要を示す。1394PHY11は、1394機器と接続するための物理層機能を備え、1394インターフェースバスを介して1394ホストPC4(ホスト機器)に接続される。
【0023】
1394PHY11に接続される1394LINK12は、リンク層機能を備え、1394PHY11が送受信するデータやパケットに対し、管理及び制御を行う。前記1394PHY11と1394LINK12とで、1394インターフェースが構成される。
【0024】
SCSIコントローラー13は、SCSIインターフェースバスを介してターゲットとなるSCSIデバイス5に接続され、SCSIデバイス5とのデータの送受信を制御する。
【0025】
MPU14は、前記1394LINK12、SCSIコントローラー13に接続されるとともに、DMA(Direct Memory Access)コントローラー15及びメモリー16に接続される。そして、MPU14はメモリー16内に格納されているプログラムに基づいて動作して、1394LINK12、SCSIコントローラー13、DMAコントローラー15及びメモリー16の動作を制御し、かつ監視する。また、メモリー16は1394LINK12、MPU14及びSCSIコントローラー13を経由するデータを一時的に格納するメモリーとして使用される。
【0026】
前記DMAコントローラー15は、通常のデータ転送動作時に、MPU14を介することなく、1394LINK12とSCSIコントローラー13との間のデータ転送を行うものである。そして、前記MPU14、DMAコントローラー15及びメモリー16で制御部が構成される。
【0027】
図2は、インターフェース変換装置において、データ転送動作中に何らかのエラーが発生した場合のMPU14の動作を示す。
データ転送動作中に、MPU14は1394PHY11、1394LINK12及びSCSIコントローラー13の動作を監視している(ステップ1)。そして、1394インターフェースでのエラーの発生、SCSIインターフェースでのエラーの発生あるいは1394ホストPC4からのリセット要求の発生を検出すると(ステップ2)、第一の処理部として動作して1394インターフェースのエラー処理(ステップ3)を行い、第二の処理部としてSCSIインターフェースのエラー処理(ステップ4)を行い、あるいは第三の処理部として1394ホストPC4からのリセット要求に対する処理(ステップ5)を行って、ステップ1に復帰する。
(1394インターフェースでエラーが検出された場合のエラー処理)
ステップ3の内容を図3に従って説明する。1394インターフェースでエラーが検出されると、MPU14は、ステップ6〜8とステップ9,10とのいずれかの処理を選択する。
【0028】
ステップ6では、エラーが検出されると、SCSIターゲットデバイス5へのデータ転送動作を終結させる。次いで、1394ホストPC4にエラー報告を行い(ステップ7)、1394ホストPC4からの指示を待つ状態(ステップ8)となってエラー処理を終了する。
【0029】
ステップ9では、データ転送動作中にエラーが発生したパケットについて、そのパケットの再送受信を行い、その再送受信が正常に行われると、続くパケットの通常のデータ転送を再開して(ステップ10)、エラー処理を終了する。
【0030】
ステップ6〜8は、従来のインターフェース変換装置と同様な処理であり、ステップ6〜8とステップ9,10のいずれを選択するかは、エラーの内容に基づいてMPU14が選択する。
(SCSIインターフェースでエラーが検出された場合のエラー処理)
前記ステップ4の内容を図4に従って説明する。SCSIインターフェースでエラーが検出されると、MPU14は、ステップ11〜13とステップ14〜16とのいずれかの処理を選択する。
【0031】
ステップ11では、エラーが検出されると、SCSIターゲットデバイスへのデータ転送動作を終結させる。次いで、図19に示すステータスFIFOフォーマットに基づいて1394ホストPC4にエラー報告を行い(ステップ12)、1394ホストPC4からの指示を待つ状態(ステップ13)となってエラー処理を終了する。
【0032】
ステップ14では、エラーが検出されると、ステップ11と同様に、SCSIターゲットデバイス5へのデータ転送動作を終結させる。
次いで、ステップ14で中止したコマンドをSCSIターゲットデバイス5に再発行するか、若しくはデータ転送中止以降の領域に対するコマンドを発行する(ステップ15)。
【0033】
そして、ステップ15で発行したコマンドに合わせて、データの転送動作を再開して(ステップ16)、エラー処理を終了する。
ステップ11〜13は、従来のインターフェース変換装置と同様な処理であり、ステップ11〜13とステップ14〜16のいずれを選択するかは、エラーの内容に基づいてMPU14が選択する。
(1394ホストPC4からリセット要求が入力された場合の処理)
前記ステップ5の内容を図5に従って説明する。1394ホストPC4からリセット要求が入力されると、MPU14はステップ17〜19の処理動作と、ステップ20,21の処理動作のいずれかを選択して行う。いずれを選択するかは、1394ホストPC4からの要求内容(Management ORBの内容)に基づいて決定される。
【0034】
Management ORBの内容が、Abort Task、Abort Task Set、Logical Unit Reset、Target Reset、Logoutのいずれかである場合には、MPU14はステップ17〜19の処理動作を行う。
【0035】
すなわち、Management ORBの入力に基づいて、SCSIデバイス5とのデータ転送動作を終了し(ステップ17)、そのManagement ORBに対する応答パケットを1394ホストPC4に出力する(ステップ18)。次いで、1394ホストPC4からの次の指示を待つ状態となる(ステップ19)。
【0036】
一方、1394ホストPC4から入力されるManagement ORBの内容が、上記以外の内容であれば、MPU14はそのManagement ORBに対する応答パケットを1394ホストPC4に出力し(ステップ20)、データ転送を再開する(ステップ21)。
(SCSIターゲットデバイス5に対するのデータ転送終結処理)
図6は、前記ステップ6,11,17におけるデータ転送終結処理の処理内容を示す。SCSIターゲットデバイス5に対するのデータ転送終結処理は、エラーの内容あるいは1394ホストPC4からのリセット要求の内容に基づいて、ステップ22,23と、ステップ24〜26と、ステップ27〜29とのいずれかがMPU14により選択される。
【0037】
ステップ22では、当該SCSIデバイス5に対しリセット処理を行い、そのSCSIデバイス5をバスフリーフェーズとして(ステップ23)、データ転送終結処理を終了する。この動作は従来のインターフェース変換装置と同様である。
【0038】
ステップ24では、データ転送終結処理の開始とともに、ダミーデータによるデータ転送動作(Padding転送)を開始し、当該コマンドに対応するデータ転送動作を完了させる。
【0039】
次いで、ステップ24の動作に基づいて、メッセージINフェーズでCommand Complete応答を確認し、ステータスINフェーズでGood応答を確認して、データ転送が終了したことを確認し(ステップ25)、さらにSCSIデバイス5がバスフリー状態となったことを確認して(ステップ26)、データ転送終結処理を終了する。
【0040】
ステップ27では、ATN信号をアサートし、ダミーデータによるデータ転送動作(Padding転送)を開始し、当該コマンドに対応するデータ転送動作を完了させる。
【0041】
次いで、ステップ27の動作に基づいて、SCSIデバイス5がメッセージOUTフェーズに移行すると、SCSIデバイス5に対しAbort信号を出力する(ステップ28)。
【0042】
そして、さらにSCSIデバイス5がバスフリー状態となったことを確認して(ステップ29)、データ転送終結処理を終了する。
(1394ホストPC4からコマンドを受信した場合の処理内容)
図7は、インターフェース変換装置が1394ホストPC4からコマンドを受信した場合のMPU14の第四の処理部としての動作を示す。
【0043】
すなわち、インターフェース変換装置が1394ホストPC4からコマンドを受信すると、MPU14は受信したCommand ORBパケットが、どのようなコマンドか、あるいは転送データ量がどのくらいであるかの解析を行う(ステップ30)。
【0044】
次いで、MPU14はステップ31,32若しくはステップ33のいずれかの処理を行う。
ステップ31では、受信したコマンドを分割して1つのコマンドあたりの転送データ量を少なくしたり、あるいは1つのコマンドあたりの転送データ量を少なくするための代替コマンドを生成する等の処理を行う。
【0045】
次いで、ステップ32ではステップ31で生成されたコマンドをSCSIデバイス5に順次発行して、データ転送動作に移行する。
ステップ33では、ステップ30で解析したコマンドを加工することなく、そのままSCSIデバイス5に発行する。
【0046】
ステップ30に続いて、ステップ31,32とステップ33のいずれを実行するかは、受信したコマンドの内容と、SCSIデバイス5や1394ホストPC4の性能に応じて選択される。
(SCSIデバイス5にコマンドを発行する場合の処理内容)
図8は、インターフェース変換装置からSCSIデバイス5にコマンドを発行してデータ転送動作を開始する場合のMPU14の第五の処理部としての動作を示す。
【0047】
この処理動作は、ステップ34,35と、ステップ36〜38のいずれかが選択される。
ステップ34で、SCSIデバイス5へのコマンド発行に続いて、SCSIデバイス5のデータフェーズへの移行を検出すると、ステップ35で1394ホストPC4に転送データを要求し、データ転送動作を開始する。
【0048】
ステップ36では、SCSIデバイス5へのコマンド発行に続いて、1394ホストPC4に直ちに転送データを要求する。次いで、1394ホストPC4から転送されるデータをメモリー16に一時格納する(ステップ37)。
【0049】
そして、SCSIデバイス5がデータフェーズに移行すると、メモリー16に格納されたデータからSCSIデバイス5に順次転送して(ステップ38)、データ転送動作を行う。
【0050】
ステップ34,35と、ステップ36〜38のいずれを選択するかは、SCSIデバイス5の性能に応じてMPU14により決定される。
次に、上記のように構成されたインターフェース変換装置の動作を説明する。
【0051】
図9は、図3に示すステップ9,10において、1394ホストPC4からSCSIデバイス5へデータ転送を行う場合のエラー処理動作を示す。データ転送時には、インターフェース変換装置から1394ホストPC4への読み出し要求信号(Read Request)に基づいて、パケット毎に1394ホストPC4からインターフェース変換装置内のDMAコントローラー15を介してデータOUTフェーズであるSCSIデバイス5にデータが転送される。
【0052】
そして、1394ホストPC4からインターフェース変換装置に転送されたデータにエラーが検出されると、MPU14はエラーを含むパケットを破棄し、1394ホストPC4に再度同一データの読み出し要求信号を出力し、再送されたデータが正常であれば、当該データをSCSIデバイス5に転送する。この後は、通常のデータ転送動作に復帰する。
【0053】
図10は、図3に示すステップ9,10において、SCSIデバイス5から1394ホストPC4へデータ転送を行う場合のエラー処理動作を示す。データは、データINフェーズであるSCSIデバイス5からインターフェース変換装置に転送され、インターフェース変換装置からホストPCに書き込み要求信号(Write Request)が出力されて、データが1394ホストPC4に転送される。このとき、転送データはDMAコントローラー15を介して転送される。
【0054】
そして、データが1394ホストPC4に正常に転送されると、1394ホストPC4からインターフェース変換装置に書き込み応答信号(Write Response)が入力され、このような動作が繰り返される。DMAコントローラー15では、書き込み応答信号が入力されるまで、前転送データを保持している。
【0055】
インターフェース変換装置から1394ホストPC4にデータを転送する際、1394インターフェースでエラーが発生すると、MPU14はエラーが発生したパケットと同一のデータをDMAコントローラー15から読み出し、再度1394ホストPC4に対し転送動作を行う。
【0056】
このとき、SCSIデバイス5からインターフェース変換装置へのデータ転送動作を中断しない。そして、1394ホストPC4へのデータの再送に成功すれば、続くデータの転送動作を引き続いて行う。
【0057】
図11は、図4に示すステップ14〜16において、1394ホストPC4からSCSIデバイス5へデータ転送を行う場合のエラー処理動作を示す。データ転送時には、インターフェース変換装置から1394ホストPC4への読み出し要求信号(Read Request)に基づいて、パケット毎に1394ホストPC4からインターフェース変換装置内のDMAコントローラー15を介してデータOUTフェーズであるSCSIデバイス5にデータが転送される。
【0058】
そして、SCSIインターフェースでデータにエラーが検出されると、MPU14は1394ホストPC4へのエラー報告を行うことなく、データの転送動作を中止し、当該転送動作の実行コマンドを再度SCSIデバイス5に発行する。
【0059】
そして、MPU14は1394ホストPC4へ読み出し要求信号を出力し、当該コマンドによるSCSIデバイス5への転送動作を最初からやり直す。
図12は、図4に示すステップ14〜16において、SCSIデバイス5から1394ホストPC4へデータ転送を行う場合のエラー処理動作を示す。データは、データINフェーズであるSCSIデバイス5からインターフェース変換装置に転送され、インターフェース変換装置からホストPCに書き込み要求信号(Write Request)が出力されて、データが1394ホストPC4に転送される。
【0060】
そして、データが1394ホストPC4に正常に転送されると、1394ホストPC4からインターフェース変換装置に書き込み応答信号(Write Response)が出力され、このような動作が繰り返される。
【0061】
SCSIデバイス5から1394ホストPC4にデータを転送する際、SCSIインターフェースでエラーが発生すると、MPU14は1394ホストPC4へエラー報告することなく、図6に示すステップ27〜29にしたがって動作し、SCSIデバイス5に対しATN信号をアサートする。
【0062】
そして、SCSIデバイス5から当該実行コマンドに対応する残りのデータの空読み出し(Padding転送)を行って、SCSIデバイス5をメッセージOUTフェーズに移行させる。
【0063】
SCSIデバイス5のメッセージOUTフェーズへの移行に基づいて、MPU14はSCSIデバイス5にAbortメッセージを出力して実行中のコマンドを中止させ、SCSIデバイス5をバスフリーフェーズに移行させる。
【0064】
SCSIデバイス5がバスフリーフェーズに移行すると、MPU14はエラー発生時の実行コマンドを再度SCSIデバイス5に発行し、SCSIデバイス5から1394ホストPCへのデータ転送を再開する。
【0065】
図13は、図5に示すステップ17〜19において、1394ホストPC4からLogical Unit ResetのManagement ORBが発行された場合の処理動作を示す。
1394ホストPC4からSCSIデバイス5にデータを転送中に、1394ホストPC4からLogical Unit ResetのManagement ORBのフェッチ要求(Write Request)が出力されると、MPU14はその要求に応答し(Write Response)、次いでManagement ORBのフェッチ動作(Read Request,Read Response)を行う。
【0066】
次いで、SCSIデバイス5をリセットすることなく、図6に示すステップ27〜29に示すように、SCSIデバイス5にATN信号をアサートし、SCSIデバイス5に空書き込み(Padding転送)を行い、メッセージOUTフェーズに移行後、Abort信号を出力してバスフリーフェーズに移行させる。そして、通常の処理に復帰する。
【0067】
図14は、図7に示すステップ30〜32において、SCSIデバイス5から1394ホストPC4にデータ転送を行う場合を示す。
1394ホストPC4からCommand ORBを受け取り、そのコマンドの内容が例えばRead10コマンドで転送量が10MByteである場合、MPU14はそのコマンドの変換を行い、例えばRead10コマンドで転送量が1Mbyteの10個のコマンドに分割する。
【0068】
そして、分割したコマンドをSCSIデバイス5に順次発行して、データ転送動作を繰り返す。
従って、転送量の大きいコマンドは、転送量の小さい複数のコマンドに分割されて実行される。
【0069】
図15は、図8に示すステップ36〜38において、1394ホストPC4からSCSIデバイス5にデータ転送を行う場合を示す。
1394ホストPC4からCommand ORBを受け取り、そのコマンドをSCSIデバイス5に発行した後、SCSIデバイス5がコマンドフェーズからデータOUTフェーズに移行するまでの間、インターフェース変換装置では1394ホストPC4から読み出したデータをメモリー16に格納する。
【0070】
そして、SCSIデバイス5がデータOUTフェーズに移行した後、まずメモリー16に格納されているデータをSCSIデバイス5に転送し、次いで通常の転送動作に移行する。
【0071】
このような動作により、SCSIデバイス5のコマンドフェーズからデータOUTフェーズへの移行が遅い場合にも、1394ホストPC4がSCSIデバイス5の処理動作をエラーと判定することなく、1394ホストPC4からのデータ読み出し動作を遅滞なく行うことができる。
【0072】
上記のように構成されたインターフェース変換装置では、次に示す作用効果を得ることができる。
(1)図9に示すように、1394ホストPC4からSCSIデバイス5にデータを転送する場合、1394インターフェースでエラーが発生しても、1394ホストPC4にエラー報告することなく、エラーが発生したデータと同じデータを再送することにより、SCSIデバイス5へのデータ転送を継続することができる。従って、コマンドを最初からやり直す必要がないので、データ転送効率を向上させることができる。
(2)図10に示すように、SCSIデバイス5から1394ホストPC4にデータを転送する場合、1394インターフェースでエラーが発生しても、1394ホストPC4にエラー報告することなく、エラーが発生したデータと同じデータをDMAコントローラー15から読み出して再送することにより、SCSIデバイス5から1394ホストPC4へのデータ転送を継続することができる。従って、1394ホストPC4の指示を待つことなくデータ転送を継続することができるので、データ転送効率を向上させることができる。
(3)図11に示すように、1394ホストPC4からSCSIデバイス5にデータを転送する場合、SCSIインターフェースでエラーが発生しても、1394ホストPC4にエラー報告することなく、SCSIデバイス5にコマンドを再発行することにより、1394ホストPC4からSCSIデバイス5へのデータ転送を最初からやり直すことができる。従って、1394ホストPC4にエラー報告し、1394ホストPC4の指示を待って転送動作をやり直す従来の処理動作に比較して、転送効率を向上させることができる。
(4)図12に示すように、SCSIデバイス5から1394ホストPC4にデータを転送する場合、SCSIインターフェースでエラーが発生しても、1394ホストPC4にエラー報告することなく、SCSIデバイス5に対し空読み出しを行ってバスフリーフェーズとし、次いでSCSIデバイス5にコマンドを再発行することにより、SCSIデバイス5から1394ホストPC4へのデータ転送を最初からやり直すことができる。従って、1394ホストPC4にエラー報告し、1394ホストPC4の指示を待って転送動作をやり直す従来の処理動作に比較して、転送効率を向上させることができる。
(5)図13に示すように、データ転送中にSCSIデバイス5のリセット要求が入力されても、SCSIデバイス5をリセットすることなく、通常動作に復帰させることができる。従って、SCSIデバイス5を通常動作へ速やかに復帰させて、データ転送効率を向上させることができる。
(6)図14に示すように、データ転送量の大きいコマンドを、データ転送量の小さい複数のコマンドに分割して実行することができる。従って、データ転送時におけるエラーの発生により、コマンドを再実行する場合、重複して転送するデータ量を少なくして、データ転送効率を向上させることができる。
(7)図15に示すように、SCSIデバイス5においてコマンドフェーズからデータOUTフェーズへの移行が遅く、1394ホストPC4からのデータの読み出し開始動作に対し、SCSIデバイス5へのデータ転送動作の開始が遅れる場合にも、1394ホストPC4から読み出されたデータを一旦メモリー16に格納することで、1394ホストPC4によりSCSIデバイス5がエラーであると判定されることを回避することができる。従って、エラーの発生を防止して、データ転送効率を向上させることができる。
(8)エラーが発生した場合、1394ホストPC4からの指示を待つことなく、エラー回復処理を行うことができるので、データ転送効率を向上させることができる。
(9)1394ホストPC4とSCSIデバイス5との異なるインターフェースプロトコルを個別に制御することができるので、1394ホストPC4とSCSIデバイス5との性能の違いによる問題を吸収することができる。
(10)1394インターフェースあるいはSCSIインターフェースでエラーが発生した場合、コマンドの再実行を必要最低限として、データ転送効率を向上させることができる。
(11)1394インターフェースで発生したエラーをSCSIインターフェースに伝えることなく、エラー回復処理を行うことができる。また、SCSIインターフェースで発生したエラーを1394インターフェースに伝えることなくエラー回復処理を行うことができる。
(12)通常のデータ転送動作時には、MPU14の処理動作を介することなく、DMAコントローラー15を介してデータ転送を行うことができるので、データ転送速度を向上させることができる。
【0073】
上記各実施の形態は、次に示すように変更することもできる。
・インターフェース変換装置に複数のSCSIデバイス5を接続し、1394ホストPC4とターゲットとして選択されたSCSIデバイスとの間でデータ転送動作を行うようにしてもよい。
(付記1)1394インターフェースと、データ変換器と、SCSIインターフェースとを備え、1394プロトコルとSCSIプロトコルとの間のデータ転送時にデータの変換処理を行うインターフェース変換装置であって、前記データ変換器には、前記1394プロトコルとSCSIプロトコルとを独立して制御する制御部を備えたことを特徴とするインターフェース変換システム。
(付記2)前記データ変換器は、前記1394インターフェースとSCSIインターフェースとの間でデータを転送するDMAコントローラーと、前記1394インターフェース、SCSIインターフェース及びDMAコントローラーを制御する中央処理部とを備えることを特徴とする付記1記載のインターフェース変換システム。(2)
(付記3)前記中央処理部にメモリーを接続したことを特徴とする付記2記載のインターフェース変換システム。
(付記4)前記中央処理部は、前記1394インターフェースでのデータエラー発生時に、前記1394プロトコルで動作するホスト機器にエラー報告することなく、データの再転送を行う第一の処理部を備えたことを特徴とする付記2記載のインターフェース変換システム。
(付記5) 前記中央処理部は、前記SCSIインターフェースでのデータエラー発生時に、前記1394プロトコルで動作するホスト機器にエラー報告することなく、データの再転送を行う第二の処理部を備えたことを特徴とする付記2乃至4の少なくともいずれかに記載のインターフェース変換システム。
(付記6)前記中央処理部は、前記ホスト機器からのリセット要求発生時に、前記SCSIプロトコルで動作するSCSIデバイスをリセットすることなくバスフリーフェーズとする第三の処理部を備えた特徴とする付記2乃至5の少なくともいずれかに記載のインターフェース変換システム。
(付記7)前記中央処理部は、前記1394プロトコルで動作するホスト機器から出力されるコマンドを分割して、前記SCSIプロトコルで動作するSCSIデバイスに発行する第四の処理部を備えたことを特徴とする付記2乃至6のいずれかに記載のインターフェース変換システム。
(付記8)前記中央処理部は、前記1394プロトコルで動作するホスト機器から出力されるコマンドを前記SCSIデバイスに転送し、前記コマンドに基づいて前記ホスト機器から転送されるデータを前記メモリーに格納し、前記SCSIデバイスがデータフェーズに移行した後に、前記メモリーに格納されたデータから順次SCSIデバイスに転送する第五の処理部を備えたことを特徴とする付記2乃至7のいずれかに記載のインターフェース変換システム。
(付記9)1394ホスト機器とSCSIデバイスとの間のデータ転送時に、1394インターフェース若しくはSCSIインターフェースでデータエラーが発生したとき、1394ホスト機器にエラー報告することなく、またはSCSIデバイスの動作をリセットすることなくデータの再転送を行うことを特徴とするデータ転送方法。
(付記10)1394ホスト機器とSCSIデバイスとの間のデータ転送時に、1394ホスト機器からのリセット要求が発行されたとき、SCSIデバイスをリセットすることなくバスフリーフェーズとすることを特徴とするデータ転送方法。
(付記11)1394ホスト機器とSCSIデバイスとの間のデータ転送時に、1394ホスト機器からコマンドが発行されたとき、当該コマンドを複数のコマンドに分割してSCSIデバイスに発行することを特徴とするデータ転送方法。
(付記12) 1394ホスト機器からSCSIデバイスへのデータ転送時に、1394ホスト機器からSCSIデバイスにコマンドが発行されたとき、SCSIデバイスがデータフェーズに移行するまでの間、1394ホスト機器から読み出されるデータをメモリーに格納し、SCSIデバイスがデータフェーズに移行した後は、メモリーに格納されたデータから順次SCSIデバイスに転送することを特徴とするデータ転送方法。
(付記13)1394ホスト機器からSCSIデバイスへのデータ転送時に、1394インターフェースでデータエラーが発生したとき、エラーを含むパケットを破棄し、1394ホスト機器から再度同一データを読み出してSCSIデバイスに転送することを特徴とするデータ転送方法。
(付記14)SCSIデバイスから1394ホスト機器へのデータ転送時に、1394インターフェースでデータエラーが発生したとき、エラーが発生したパケットと同一データを再度1394ホスト機器に転送して、データ転送を継続することを特徴とするデータ転送方法。
(付記15)1394ホスト機器からSCSIデバイスへのデータ転送時に、SCSIインターフェースでエラーが発生したとき、1394ホスト機器にエラー報告することなく、当該転送動作の実行コマンドを再度SCSIデバイスに発行して、当該コマンドのデータ転送をはじめからやり直すことを特徴とするデータ転送方法。
(付記16)SCSIデバイスから1394ホスト機器へのデータ転送時に、SCSIインターフェースでエラーが発生したとき、SCSIデバイスにATN信号をアサートし、SCSIデバイスから当該コマンドで転送するデータの空読み出しを行ってSCSIデバイスをメッセージOUTフェーズに移行させ、次いでAbort信号をSCSIデバイスに入力してバスフリーフェーズとし、エラー発生時の実行コマンドを再度SCSIデバイスに発行して、当該コマンドのデータ転送をはじめからやり直すことを特徴とするデータ転送方法。
(付記17)1394ホスト機器からSCSIデバイスへのデータ転送時に、1394ホスト機器からのリセット要求が発行されたとき、SCSIデバイスにATN信号をアサートし、SCSIデバイスから当該コマンドで転送するデータの空書き込みを行ってSCSIデバイスをメッセージOUTフェーズに移行させ、次いでAbort信号をSCSIデバイスに入力してバスフリーフェーズとして、SCSIデバイスをリセットすることなく、通常処理に復帰させることを特徴とするデータ転送方法。
【0074】
【発明の効果】
以上詳述したように、この発明は1394インターフェースとSCSIインターフェースとの間でのデータ転送動作のパフォーマンスを向上させ得るインターフェース変換装置を提供することができる。
【図面の簡単な説明】
【図1】 一実施の形態のインターフェース変換装置を示すブロック図である。
【図2】 インターフェース変換装置の動作を示すフローチャート図である。
【図3】 インターフェース変換装置の動作を示すフローチャート図である。
【図4】 インターフェース変換装置の動作を示すフローチャート図である。
【図5】 インターフェース変換装置の動作を示すフローチャート図である。
【図6】 インターフェース変換装置の動作を示すフローチャート図である。
【図7】 インターフェース変換装置の動作を示すフローチャート図である。
【図8】 インターフェース変換装置の動作を示すフローチャート図である。
【図9】 インターフェース変換装置の動作を示す説明図である。
【図10】 インターフェース変換装置の動作を示す説明図である。
【図11】 インターフェース変換装置の動作を示す説明図である。
【図12】 インターフェース変換装置の動作を示す説明図である。
【図13】 インターフェース変換装置の動作を示す説明図である。
【図14】 インターフェース変換装置の動作を示す説明図である。
【図15】 インターフェース変換装置の動作を示す説明図である。
【図16】 従来のインターフェース変換装置を示す概要図である。
【図17】 従来のインターフェース変換装置のデータ転送動作を示す説明図である。
【図18】 コマンドORBを示す説明図である。
【図19】 ステータスブロックを示す説明図である。
【図20】 1394インターフェースとSCSIインターフェースの動作を示す説明図である。
【符号の説明】
11 1394インターフェース(1394PHY)
12 1394インターフェース(1394LINK)
13 SCSIインターフェース(SCSIコントローラー)
14 データ変換器、制御部(MPU)
15 データ変換器(DMAコントローラー)
16 データ変換器、制御部(メモリー)

Claims (6)

1394インターフェースと、データ変換器と、SCSIインターフェースとを備え、1394プロトコルとSCSIプロトコルとの間のデータ転送時にデータの変換処理を行うインターフェース変換装置であって、
前記データ変換器は、
前記1394プロトコルとSCSIプロトコルとを独立して制御する制御部と、
前記1394インターフェースとSCSIインターフェースとの間でデータを転送するDMAコントローラーと、
前記1394インターフェース、SCSIインターフェース及びDMAコントローラーを制御する中央処理部と、を備え、
前記中央処理部は、
前記1394プロトコルで動作するホスト機器からのリセット要求発生時に、前記SCSIプロトコルで動作するSCSIデバイスをリセットすることなくバスフリーフェーズとする第三の処理部を備えたことを特徴とするインターフェース変換システム。
前記中央処理部は、
前記1394インターフェースでのデータエラー発生時に、前記1394プロトコルで動作するホスト機器にエラー報告することなく、データの再転送を行う第一の処理部を備えたことを特徴とする請求項1記載のインターフェース変換システム。
前記中央処理部は、
前記SCSIインターフェースでのデータエラー発生時に、前記1394プロトコルで動作するホスト機器にエラー報告することなく、データの再転送を行う第二の処理部を備えたことを特徴とする請求項1または2記載のインターフェース変換システム。
前記中央処理部は、
前記1394プロトコルで動作するホスト機器から出力されるコマンドを分割して、前記SCSIプロトコルで動作するSCSIデバイスに発行する第四の処理部を備えたことを特徴とする請求項1乃至3のいずれか1つに記載のインターフェース変換システム。
1394 インターフェースと、
SCSI インターフェースと、
前記 1394 インターフェースと前記 SCSI インターフェースとの間でデータを転送するDMAコントローラーと、
前記 1394 インターフェース、前記 SCSI インターフェース及び前記DMAコントローラーを制御する中央処理部と、を備えるデータ変換器と、
を含むインターフェース変換システムのデータ転送方法であって、
前記中央処理部は、
1394ホスト機器とSCSIデバイスとの間のデータ転送時に、1394ホスト機器からのリセット要求が発行されたとき、SCSIデバイスをリセットすることなくバスフリーフェーズとすることを特徴とするデータ転送方法。
1394 インターフェースと、
SCSI インターフェースと、
前記 1394 インターフェースと前記 SCSI インターフェースとの間でデータを転送するDMAコントローラーと、
前記 1394 インターフェース、前記 SCSI インターフェース及び前記DMAコントローラーを制御する中央処理部と、を備えるデータ変換器と、
を含むインターフェース変換システムのデータ転送方法であって、
前記中央処理部は、
1394 ホスト機器から SCSI デバイスへのデータ転送時に、 1394 ホスト機器からのリセット要求が発行されたとき、 SCSI デバイスに ATN 信号をアサートし、 SCSI デバイスから当該コマンドで転送するデータの空書き込みを行って SCSI デバイスをメッセージOUTフェーズに移行させ、次いで Abort 信号を SCSI デバイスに入力してバスフリーフェーズとして、 SCSI デバイスをリセットすることなく、通常処理に復帰させることを特徴とするデータ転送方法。
JP2002022843A 2002-01-31 2002-01-31 インターフェース変換システム及びデータ転送方法 Expired - Fee Related JP4098987B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002022843A JP4098987B2 (ja) 2002-01-31 2002-01-31 インターフェース変換システム及びデータ転送方法
US10/211,290 US6948025B2 (en) 2002-01-31 2002-08-05 System and method for transferring data between an IEEE 1394 device and a SCSI device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002022843A JP4098987B2 (ja) 2002-01-31 2002-01-31 インターフェース変換システム及びデータ転送方法

Publications (2)

Publication Number Publication Date
JP2003223411A JP2003223411A (ja) 2003-08-08
JP4098987B2 true JP4098987B2 (ja) 2008-06-11

Family

ID=27606369

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002022843A Expired - Fee Related JP4098987B2 (ja) 2002-01-31 2002-01-31 インターフェース変換システム及びデータ転送方法

Country Status (2)

Country Link
US (1) US6948025B2 (ja)
JP (1) JP4098987B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004070570A (ja) * 2002-08-05 2004-03-04 Seiko Epson Corp データ転送制御システム、電子機器、プログラム及びデータ転送制御方法
JP2005115545A (ja) * 2003-10-06 2005-04-28 Seiko Epson Corp データ転送制御システム、電子機器、プログラム及びデータ転送制御方法
US7500047B1 (en) * 2004-12-03 2009-03-03 Crossroads Systems, Inc. System and method for processing commands
US7345998B2 (en) * 2004-12-15 2008-03-18 Smart Labs, Inc. Mesh network of intelligent devices communicating via powerline and radio frequency
US8104719B2 (en) * 2005-11-17 2012-01-31 Raytheon Company Digital interface unit (DIU) and method for controlling stages of a multi-stage missle
KR100739348B1 (ko) * 2006-03-06 2007-07-16 엔에이치엔(주) 키워드 별로 사용자의 전문가 지수를 산정하는 방법 및상기 방법을 수행하는 시스템
EP2122296B1 (en) * 2007-01-18 2016-08-03 Raytheon Company Scalable electronics architecture
KR101573791B1 (ko) * 2009-06-10 2015-12-02 삼성전자주식회사 범용 직렬 버스를 이용한 데이터 전송 방법 및 그 장치
JP5527512B2 (ja) 2009-09-28 2014-06-18 ソニー株式会社 バスプロトコル変換装置及びバスプロトコル変換方法
CN102098277A (zh) * 2009-12-11 2011-06-15 传象科技股份有限公司 网络接口转换系统及方法,及其相关装置
JP2011166587A (ja) * 2010-02-12 2011-08-25 Cipherium Systems Co Ltd ネットワークインターフェースの変換システム、ネットワークインターフェースの変換方法、及びネットワークインターフェース変換装置
CN101788972B (zh) * 2010-03-08 2012-07-11 威盛电子股份有限公司 一种数据传输的系统与方法
TWI480731B (zh) * 2010-06-30 2015-04-11 Insyde Software Corp 轉接裝置及經由該轉接裝置之除錯方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491812A (en) * 1992-09-28 1996-02-13 Conner Peripherals, Inc. System and method for ethernet to SCSI conversion
US5818029A (en) * 1995-10-03 1998-10-06 Intermart Systems Method and apparatus for connecting PCMCIA cards to computer interfaces
US5748924A (en) * 1995-10-17 1998-05-05 Methode Electronics, Inc. Method and apparatus for transferring data from SCSI bus to serial device and from serial device to SCSI bus
JP3733699B2 (ja) * 1997-06-20 2006-01-11 ソニー株式会社 シリアルインタフェース回路
US6115771A (en) * 1998-03-31 2000-09-05 Lsi Logic Corporation Method and system for converting computer peripheral equipment to SCSI-compliant devices
JP3408442B2 (ja) 1998-12-24 2003-05-19 エヌイーシーアクセステクニカ株式会社 データ転送装置
JP3584789B2 (ja) * 1999-07-15 2004-11-04 セイコーエプソン株式会社 データ転送制御装置及び電子機器

Also Published As

Publication number Publication date
US20030145150A1 (en) 2003-07-31
US6948025B2 (en) 2005-09-20
JP2003223411A (ja) 2003-08-08

Similar Documents

Publication Publication Date Title
KR100456180B1 (ko) 주변 기기 및 그 제어 방법
JP4098987B2 (ja) インターフェース変換システム及びデータ転送方法
US6742076B2 (en) USB host controller for systems employing batched data transfer
US20070006020A1 (en) Inter-host data transfer method, program, and system
US7007119B2 (en) System and method for supporting split transactions on a bus
JP5932947B2 (ja) ホスト及びシステム
JP5151500B2 (ja) コンピュータシステム、障害処理方法および障害処理プログラム
JP2963426B2 (ja) バスブリッジ装置及びトランザクションフォワード方法
US7080189B1 (en) USB device communication
US8151028B2 (en) Information processing apparatus and control method thereof
JP4339527B2 (ja) 多重化記憶制御装置
US20080104286A1 (en) Data transfer apparatus and data transfer method
JP2000132507A (ja) Scsiプロトコルにおけるコマンド処理方法およびそれに用いる装置
JP3157794B2 (ja) 周辺制御処理装置
JP2723388B2 (ja) プロセッサモジュールの内部バス制御方法及び情処理装置
JP2541158B2 (ja) 情報処理システム
JP2006301810A (ja) データ転送処理方法、データ転送処理装置およびデータ転送処理制御プログラム
JP3248796B2 (ja) ネットワークプリンタシステム
JP2001125866A (ja) データ処理システム、中央処理装置およびディスク制御装置
JP2001265711A (ja) データ転送装置およびバスシステム
JP2004050582A (ja) プリンタ装置
JPS63262743A (ja) チヤネル制御方式
JP2001084216A (ja) データプリフェッチシステム、プリフェッチ方法、記録媒体
JPH01175656A (ja) 高速データ転送方式
JPH05151137A (ja) 電子計算機装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041203

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070515

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080118

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: 20080311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080314

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees