(57)【特許請求の範囲】
【請求項１】
8個より多い装置をマスターＳＣＳＩバスに実効的に接続することができるシステムであって、第一のＳＣＳＩポートを有するホスト装置と各々が一つのＳＣＳＩポートを有する複数のターゲット装置との間で、通信を可能にするように適合され、さらに以下の（ａ）から（ｃ）を有することを特徴とするシステム、
（ａ）前記マスターＳＣＳＩバス上のホスト装置を識別するために使用される第一のマスターバスＳＣＳＩ・ＩＤ番号を有する前記ホスト装置の前記第一のＳＣＳＩポートに接続されているマスターＳＣＳＩバス、
（ｂ）前記複数のターゲット装置の前記ＳＣＳＩポートに接続されている下位のＳＣＳＩバス、
（ｃ）前記ホスト装置と、前記ホスト装置によって選択された前記複数のターゲット装置の一つとの間の通信を行う為に、第二のＳＣＳＩポートと第三のＳＣＳＩポートを有する小装置手段であって、前記小装置手段は、前記第二のＳＣＳＩポートで前記マスターＳＣＳＩバスと接続されまた前記第三のＳＣＳＩポートで前記下位のＳＣＳＩバスと接続されており、前記小装置手段は、前記マスターＳＣＳＩバス上で前記小装置手段を識別する為に使用される第二のマスターバスＳＣＳＩ・ＩＤ番号と、前記下位のＳＣＳＩバス上で前記小装置手段を識別する為に使用される第一の下位バスＳＣＳＩ・ＩＤ番号を有し、前記小装置手段は、前記ホスト装置から受け取ったＳＣＳＩ論理ユニット番号を第二の下位バスＳＣＳＩ・ＩＤ番号へ変換し、前記ホスト装置と前記選択されたターゲット装置との間の通信を確立する為に、前記第二の下位バスＳＣＳＩ・ＩＤ番号で前記下位のＳＣＳＩバス上の前記選択されたターゲット装置を識別し、前記小装置手段は、さらに前記選択されたターゲット装置が前記ホスト装置を再選択することを可能にするために、前記選択されたターゲット装置から受け取った前記第二の下位バスＳＣＳＩ・ＩＤ番号を前記ＳＣＳＩ論理ユニット番号に変換し、前記選択されたターゲット装置と前記ホスト装置との間の通信を確立する為に、前記第一のマスターバスＳＣＳＩ・ＩＤ番号で前記マスターＳＣＳＩバス上の前記ホスト装置を識別する。
【請求項２】
前記小装置手段が、以下の（１）から（４）を有することを特徴とする請求項１記載のシステム、
（１）前記第二のＳＣＳＩポートで前記マスターＳＣＳＩバスに接続されており、前記第二のマスターバスＳＣＳＩ・ＩＤ番号に応答し、前記ＳＣＳＩ論理ユニット番号と前記第二の下位バスＳＣＳＩ・ＩＤ番号との変換を行う、マスター選択機械、
（２）前記第三のＳＣＳＩポートで前記下位のＳＣＳＩバスと接続され、また前記マスター選択機械と接続され前記マスター選択機械から受け取った前記第二の下位バスＳＣＳＩ・ＩＤ番号に基づいて前記選択されたターゲット装置を選択し、前記第二の下位バスＳＣＳＩ・ＩＤ番号を含む下位バスメッセージアウト識別を前記選択されたターゲット装置へ送る、下位の選択機械手段、
(３)前記マスターＳＣＳＩバスと前記下位のＳＣＳＩバスを接続するトランシーバ手段、
(４)前記マスター選択機械手段、前記下位の選択機械手段、及び前記トランシーバ手段に接続される主制御機械手段であって、さらに前記下位の選択機械手段に前記選択されたターゲット装置との通信を確立させ、前記トランシーバ手段に、前記選択されたターゲット装置が前記下位の選択機械手段に応答した後、前記ホスト装置と前記選択されたターゲット装置との間で通信を接続させる主制御機械手段。
【請求項３】
8個より多いマスターＳＣＳＩバス上のユニットに対して、第一のＳＣＳＩポートを有するホスト装置と各々が一つのＳＣＳＩポートを有する複数のターゲット装置との間で、通信を可能にする方法であって、前記ホスト装置は、前記第一のＳＣＳＩポートで前記マスターＳＣＳＩバスと接続され、また前記マスターＳＣＳＩバス上のホスト装置を識別するために使用される第一のマスターバスＳＣＳＩ・ＩＤ番号を有し、前記マスターＳＣＳＩバスに接続される第二のＳＣＳＩポートと、下位のＳＣＳＩバスに接続される第三のＳＣＳＩポートとを有する小装置手段を有し、前記複数のターゲット装置は前記下位のＳＣＳＩバスに接続されているシステムにおいて、以下の（ａ）から（ｊ）のステップを有することを特徴とする方法、
（ａ）前記ホスト装置が前記マスターＳＣＳＩバス上の前記小装置手段を認識するための第二のマスターバスＳＣＳＩ・ＩＤ番号を指定するステップ、
（ｂ）前記ホスト装置が前記指定された第二のマスターバスＳＣＳＩ・ＩＤ番号で、前記小装置手段を選択できるように第一の選択サイクルを実行するステップ、
（ｃ）前記小装置手段が、前記マスターＳＣＳＩバス上のホスト装置から受け取ったＳＣＳＩ論理ユニット番号を前記下位のＳＣＳＩバス上の選択されたターゲット装置に対応する第二の下位バスＳＣＳＩ・ＩＤ番号に変換するステップ、
（ｄ）前記小装置手段が、前記第二の下位バスＳＣＳＩ・ＩＤ番号で前記選択されたターゲット装置を選択することが出来るように第二の選択サイクルを実行するステップ、
（ｅ）前記ホスト装置と前記選択されたターゲット装置との間の通信を確立する為に、前記小装置手段を介して前記ホスト装置と前記選択されたターゲット装置を接続するステップ、
（ｆ）前記選択されたターゲット装置が前記下位のＳＣＳＩバス上の前記小装置手段を認識する第一の下位バスＳＣＳＩ・ＩＤ番号を指定するステップ、
（ｇ）前記選択されたターゲット装置が、前記指定された第一の下位バスＳＣＳＩ・ＩＤ番号で前記小装置手段を選択することが出来るように第一の再選択サイクルを実行するステップ、
（ｈ）前記小装置手段が、前記下位のＳＣＳＩバス上の前記選択されたターゲット装置に関する
前記第二の下位バスＳＣＳＩ・ＩＤ番号を前記ＳＣＳＩ論理ユニット番号に変換するステップ、
（ｉ）前記小装置手段が、前記第一のマスターＳＣＳＩ・ＩＤ番号で前記ホスト装置を選択することが出来るように第二の再選択サイクルを実行するステップ、
（ｊ）前記ホスト装置と前記選択されたターゲット装置との間の通信ができるように前記小装置手段を介して、前記ホスト装置と前記選択されたターゲット装置を接続するステップ。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は概してSCSIバスに関係し、更に詳細には、付加装置をSCSIバスに実効的に接続するための装置及び方法に関する。この場合、付加装置の台数は識別(ID)番号で定められる最大数8を越えることができる。
【０００２】
【従来技術と発明が解決しようとする課題】
Small Computer System Interface(SCSI)は、電気的及び論理的プロトコル仕様を含むANSI標準通信バスである。SCSIは、バス上において、それぞれ0から7までのユニークな識別子(ID)を有する8個までの装置の接続を可能にする。8個の装置は、ホストコンピュータからディスクドライブ、テープドライブ、光学記憶装置、プリンタ、スキャナ等まであらゆるタイプの装置であって差し支えない。
【０００３】
SCSIのための電気的及び論理的プロトコル仕様については、ANSIドキュメント番号X3.131-1986(Global Engineering Documents, Irvine, CA)に記載されている。
【０００４】
SCSIは、今日、業界標準となった。例えば、SCSIは、コンピュータワークステーション環境において使われ、パーソナルコンピュータ環境にも使われる。SCSIは、例えば、ディスクドライブ、テープドライブ、光学的記憶装置、プリンタ、スキャナ等のような周辺装置についても標準となった。
【０００５】
全ての標準のように、SCSIは、コンピュータ装置を構成する多数の部品に使われる。ユーザーは、SCSIを使用したコンピュータ及び周辺装置にかなりの金額を投資してきた。
【０００６】
コンピュータシステムの性能／価格比率が絶えず増加するにつれて、データの量及びSCSIの収容が必要な周辺装置の個数も増加してきた。問題は、この増加にもかかわらず、SCSIが収容できる装置は8個に過ぎないことである。8個よりも多い装置が必要とされるか、望まれているアプリケーションは多い。
【０００７】
図1は、従来のSCSIシステムのブロック図を示す。図1において、ホストコンピュータ（イニシエータと呼ばれる）102には、任意にSCSI ID No.7が割り当てられている。ホストコンピュータ102は、SCSIバス104に電気的に接続される。SCSIバス104には、7個の付加装置（ターゲットと呼ばれる）106、108、110、112、114、116、及び118が接続される。これらの付加（ターゲット）装置106から118は、SCSIの標準プロトコルに適合する装置でありさえすれば差し支えない。付加装置106には、例えば、SCSI ID No.0が割り当てられている。同様に、ドライブ108にはSCSI ID No.1、ドライブ110にはSCSI ID No.2が割り当てられ、ロボティックス(robotics)112にはSCSI ID No.3が割り当てられ、ドライブ114にはSCSI ID No.4、ドライブ116にはSCSI ID No.5が割り当てられ、ロボティックス118にはSCSI ID No.6が割り当てられている。
【０００８】
ここでついでながら注意しておけば、ドライブ108、ドライブ110、及びロボティックス112は光学ライブラリ筺体120内に存在するものとして図示されている。このように図示したのは、単にSCSIバスに接続されている複数の装置が物理的な単一筺体内に収容可能であることを説明するためである。物理的な1つの（機械的な）筺体内に複数の装置が所在するということは、例えば、大量データの記憶装置に関して見られる傾向である。
【０００９】
図1には、他の従来の概念も図示されている。SCSIバスの長さは、所定の電気性能を達成するために制限される。例えば、不平衡型を用いる場合には、SCSIバスは、6メートルより長くできない。平衡型通信を用いる場合には、SCSIバスの長さは、最大25メートルにすることができる。
【００１０】
付加装置がホストコンピュータ102から（採用した通信体系に応じて）6メートル以上、或いは、25メートル以上離れて位置する場合も少なくない。この種の状況を図1に示す。従来のリピータ124が、SCSIバス2（参照番号126で示される）を経て、付加装置106を（主）SCSIバス104に接続する場合が図示されている。周知のように、リピータ124は、付加装置106がホストコンピュータ102から物理的に6メートル又は25メートルの限界を越えて位置することを可能にするために必要な信号増幅作用を提供する。
【００１１】
周知のように、リピータ124は、単に1つのSCSIバス上において受信した信号の信号レベルを増幅する作用をするに過ぎない。増幅された信号は別のSCSIに供給され、その逆も行われる。実際に、このリピータは、1つのバスから別のバスへ信号レベルを単に増幅するという点においては、従来のリピータと同じに作用する。リピータ124においては、信号の記憶、マッピング或いは他の機能は行われないことに注意されたい。
【００１２】
既に述べたように、8個よりも多い装置をSCSIバスに接続することが必要または望まれる場合が少なくない。
【００１３】
8個以上のユニットがSCSIバスに実効的に接続するひとつの従来方法を図2に示す。SCSIバス104は、周辺装置202に接続される。周辺装置202には、ひとつのSCSI ID番号が割り当てられる。SCSIバス104に関する限り、周辺装置202はひとつのSCSI装置として識別される。
【００１４】
周辺装置202には、例えば、N個のドライブが含まれる（ここで、Nは1より大きい正の整数である）。例に示すように、具体的には、周辺装置202には、ドライブ1（参照番号218で示される）、ドライブ2（参照番号224で示される）、及びドライブN（参照番号230で示される）が含まれる。コントローラ204は、次に説明するような、ハードワイヤード(hard-wired)の、（しばしばメーカ独自の）及び専用の方法を用いてSCSIバス104をドライブ218、224、及び230に電気的に接続する。
【００１５】
図に示すように、コントローラ204は、マイクロプロセッサ206、スイッチング電子装置208、記憶されたコンピュータプログラム210、及び、コントローラ204とマイクロプロセッサ206で使用される電子記憶装置212を備える。共にコントローラ204は、SCSIバス104から受信した情報を、プログラム210内のコントローラ204に記憶されたプログラムの決定に従って、指定されたドライブ218、224、230へ伝達する。この情報伝達は、各々のドライブの個別のバス及び制御ラインを用いて達成される。例えば、図に示すように、ドライブ218は、バス214を経てコントローラ204に接続される。更に、コントローラ204によるドライブ218の動作を制御可能にするために、制御ライン216が含まれる。同様に、ドライブ224は、バス220及び制御ライン222を含み、ドライブ230は、バス226及び制御ライン228を含む。この方法においては、コントローラ204が所要のデータ転送を行うために、特別なバス及び制御ラインを必要とするということが明らかである。
【００１６】
コントローラ204は、SCSIバス104を収容するために必要とされる所定の機能を遂行できるように、その記憶しているコンピュータプログラム210を用いて、プログラムされなければならない。ドライブ218、224、及び230は、SCSIバス104に直接接続不能であることがわかるだろう。同様に、SCSIバス104とドライブ218、224、及び230との間のインタフェースを収容するためにコントローラ204が必要とされることもわかるだろう。一般に、コントローラ204は、ドライブ218、224、及び230のうちの1つ又は複数のドライブに伝送するためには、SCSIバス104から受信したデータをフォーマットし直すことが要求され、SCSIバス104で伝送するためには、ドライブ218、224、及び230から受信したデータをフォーマットし直すことが要求される。従って、かなりの量のデータの再フォーマット及びSCSIバスプロトコルの収容が周辺装置202に要求されることもわかるだろう。ただし、周辺装置202は、SCSIバス104にひとつのドライブを直接取り付けることによって達成されるよりも更に多くの記憶容量を追加することができる。
【００１７】
SCSI標準は、更に、論理ユニット番号(LUN)を備える。論理ユニット番号には、0から7までが指定される。或るホストコンピュータ102では、論理ユニット番号を提供するドライバ（ハードウェア及び／又はソフトウェア）を備え、一方、他のホストコンピュータでは、論理ユニット番号を提供しないより簡単なドライバを備える。この種のドライバを持つようにホストコンピュータを改造することは比較的簡単で安価であり、従来周知である。
【００１８】
SCSIバス104上において、ホストコンピュータ102によって論理ユニット番号が供給されると、周辺装置202が周辺装置202に含まれる8個までの装置を指定することが可能である。換言すれば、論理ユニット番号により、周辺装置202は、周囲のデバイスがSCSIバス104によって指定された所要の内部装置を選択することが可能となる。従って、SCSIバス104に供給された論理ユニット番号を用いて認識及び操作可能なコントローラ204を持つ周辺装置202には、8個までの装置を含ませることができる。
【００１９】
従来の方法では、コントローラ204が論理ユニット番号を認識し、次に、内部装置218、224から230までを制御するように作用し、コントローラ204を経て装置218、224から230までに対して送受されたデータをマッピングし直すように作用することが要求される。この場合には、一般に、装置218、224、及び230は専用であることが要求される。SCSIバス104上において指定された論理ユニット機能を収容するためには、かなりの電子装置を追加する必要がある。にもかかわらず、論理ユニット番号の指定により、単一のSCSI ID番号で8個までの内部装置を収容することが可能になる。
【００２０】
従来の方法には重大な欠陥がある。論理ユニット番号が使用されない場合には、SCSIバス104に収容可能な装置は8個が限度である。
【００２１】
論理ユニット番号が用いられる場合には、SCSIバス104に収容可能な装置の論理ユニット番号の最大数は56である（7 SCSI ID番号 × 8 論理ユニット、ここで、最初のSCSI ID番号はホストコンピュータ102に割り当てられる）。しかしながら、特定の1つのSCSI ID番号が割り当てられた付加装置を収容するためにはかなりの電子装置が必要とされる。更に、これらの装置は、一般に専用でなくてはならず、それらのコントローラ204と装置218、224から230までの間にはSCSIバスインタフェースを使っていない。再フォーマットの実施及び制御信号の発生が必要であり、SCSIインタフェースを持っているだけの既存の装置はコントローラ204に接続したり、この種のコンフィギュレーションで使用することはできない。
【００２２】
【課題を解決するための手段】
本発明は以下のような方法により、これらの問題を解決する。
【００２３】
本発明は、マスターSCSIバス上において、8個よりも多い数のユニットを接続可能にするためのシステム及び方法に関する。本システムは、イニシエータ装置及びターゲット装置を収容可能とされている。この場合のイニシエータは1つのSCSIポート及びそれに接続するようにされた1つのマスターSCSIバスを有し、ターゲット装置はSCSIポート及びそれに接続するようにされた下位のSCSIバスを有する。
【００２４】
本発明は、小装置(Minnow)のためのマスターSCSI ID番号の設定に関する。小装置は、マスターSCSIバスに接続されたイニシエータ装置と下位のSCSIバスに接続されたターゲット装置との間で通信できるようにするために、選択サイクルを実行することができる。更に、小装置は、ターゲット装置とイニシエータ装置との間で通信できるようにするための再選択サイクルを実行することができる。
【００２５】
選択サイクルに際して、イニシエータ装置は、マスターSCSIバス上にセットされたSCSI ID番号を用いて小装置を選定し、小装置はこれに応答して、標準SCSIプロトコルに従ってメッセージアウト識別(Identify Message Out)から論理ユニット番号を読み取る。次に、小装置は論理ユニット番号を下位のSCSIバス上の指定されたターゲット装置のIDに変換し、ターゲット装置はこれに応答して、メッセージアウト識別が下位のSCSIバス上のターゲット装置に送信される。次に、小装置は、マスターSCSIバスを下位のSCSIバスに接続し、その結果、イニシエータ装置はターゲット装置と交信可能になる。
【００２６】
再選択サイクルに際して、ターゲット装置は、下位のSCSIバス上において送られたSCSI ID番号を用いて小装置を再選択する。小装置は下位のバスのSCSI ID番号をマスターSCSIバスの論理ユニット番号に変換し、マスターSCSIバス上のイニシエータ装置を再選択し、メッセージイン識別(Identify Message In)をイニシエータにハンドシェークする。次に、小装置はマスターSCSIバスを下位のSCSIバスに接続し、その結果、ターゲット装置はイニシエータ装置と交信可能になる。
【００２７】
【実施例】
本発明は、56台までの装置をSCSIバス104に接続可能にする。この場合、各装置がSCSIインタフェースを使用可能であり、一切の改修を必要としない。ホストコンピュータ102は装置に割り当てられたSCSI ID番号及び論理ユニット番号を用いてあらゆる（ターゲット）装置にアクセス可能であり、当該装置は標準SCSIプロトコルに従って同様の様態でホストコンピュータ102にアクセスすることができる。従来の技術を用いる場合のような専用配線またはバス構造は何も必要としない。装置やホストコンピュータ102に関する限り、2つの装置の間の通信はSCSIプロトコルに従って直接行われるように見える。
【００２８】
本発明の高レベルアーキテクチャを図3のブロック図に示す。図3及び他の図面に示される同様な参照番号は各々同一のものに対応する。
【００２９】
ホストコンピュータ（イニシエータ）102は、SCSIプロトコルに従ってSCSI ID番号及び論理ユニット番号を供給する。ホストコンピュータ102にはSCSI ID番号7が割り当てられる。ホストコンピュータ102は論理ユニット番号(LUN)を供給できるドライバを含まなければならないことに注意されたい。この種のドライバは従来でも使われているものであり、容易に入手可能である。
【００３０】
ホストコンピュータ102は、SCSIバスを用いる任意のコンピュータシステムであって差し支えない。例えば、本願出願人が製造するワークステーション、アメリカ合衆国カリフォルニア州マウンティンビューのサンマイクロシステムズ社製ワークステーション、又は同様な他社製のワークステーションであっても差し支えない。同様に、パーソナルコンピュータであっても差し支えない。
【００３１】
ホストコンピュータ102は、SCSIバス104に接続される。このバスは、図3に示すように、マスターSCSIバス104とラベル付けされている。マスターという用語を使用する理由は、単に説明を容易にするために過ぎない。ホストコンピュータ102に関する限り、マスターSCSIバス104がこのホストコンピュータのSCSIバスである。マスターSCSIバス104には、付加装置106、108、110、112、及び114が接続される。これらの付加装置には、それぞれマスターSCSI ID番号0、1、2、3、及び4が割り当てられる。
【００３２】
マスターSCSI ID番号6は、小装置304と呼ばれる装置によってマスターSCSIバス104に接続される。小装置304には、マスターSCSI ID番号6が割り当てられる。装置304に対する小装置という用語は、単に議論及び説明を容易にするために短い識別子として使われるに過ぎず、いかなる点においても本発明を制限しない。小装置304は、マスターSCSI ID番号6と関連する8個の付加装置と関連する。この関連性は、破線で囲まれた箱302によって示される。マスターSCSI ID番号6と関連する付加装置は、同じ機械的筺体内或いは同じ場所に物理的に配置される必要はなく、どのリピータにもマスターSCSI ID番号6が対応付けられていないという仮定のもとに、小装置304からの物理的な距離が、使用されるSCSIプロトコルで制限される通信距離（6メートル、或いは、25メートル）以内であることだけが必要とされることに注意されたい。
【００３３】
マスターSCSI ID番号6と関連した8個の付加装置は、「下位の」SCSIバス306によって小装置304に接続される。「下位の」という用語は、単に説明のためのみに使われる。SCSIバス306で使われるプロトコルは標準SCSIプロトコルであることに注意されたい。従って、下位のSCSIバス306に接続された付加装置は、普通のSCSIプロトコルを使用する装置であって差し支えなく、本発明に使用するために何の改造または拡張も必要としないことを理解されたい。
【００３４】
下位のSCSIバス306に接続可能な付加装置の代表的な例を図3に示す。例えば下位のSCSIバス306用として下位のSCSI ID番号0が割り当てられたプリンタ308が使用できる。同様に、例えば下位のSCSIバス306用として下位のSCSI ID番号1が割り当てられたスキャナ310が使用できる。例えば下位のSCSIバス306用として下位のSCSI ID番号2が割り当てられたテープドライブ312が使用できる。例えば下位のSCSIバス306用として下位のSCSI ID番号3が割り当てられた光学記憶装置が使用できる。例えば下位のSCSIバス306用として下位のSCSI ID番号7が割り当てられたモデム（変調器／復調器）が使用できる。これらは、本発明に従って下位のSCSIバス306に接続可能な8個の付加装置の代表的な例に過ぎない。標準SCSIインタフェースを利用するあらゆる付加装置が下位のSCSIバス306に接続可能であることを理解されたい。付加装置は一切の修正または拡張を必要としない。
【００３５】
非常に大量のデータを記憶するために光学ライブラリを収納する物理的筺体320を本発明の具体例として示す。この大量のデータは、マスターSCSIバス104によってホストコンピュータ102に供給できる。物理的筺体320には小装置304'が含まれる。小装置304'は、マスターSCSI ID番号5に応答するという点以外は、小装置340と同じであることに注意されたい。小装置が備えるマスターSCSI ID番号を指定する能力については以下に詳細に検討する。ユーザーによって、0から7までのあらゆるマスターSCSI ID番号に応答するように小装置304又は304'をセットできることを理解されたい。
【００３６】
下位のSCSIバス322は小装置304'に接続される。2つの光磁気(MO)再書込み可能ドライブ326及び328が下位のSCSIバス322に接続される。ドライブ326は、例えば下位のSCSIバス322用として下位のSCSI ID番号1が割り当てられる。更に、ドライブ328は、例えば下位のSCSIバス322用として下位のSCSI ID番号0が割り当てられる。ロボティックメカニズム324は、同様に下位のSCSIバス322に接続される。ロボティックメカニズム324は、下位のSCSIバス322用として下位のSCSI ID番号2が割り当てられる。ロボティックメカニズム324は、光磁気媒体をMOドライブ326及び328まで運搬するために使われる。MOドライブを下位のSCSIバス322に追加することもできることを理解されたい。
【００３７】
小装置304及び小装置304'は、それぞれ、特定のマスターSCSI ID用としてマスターSCSIバス104に与えられた通信を、関連した下位のSCSIバス306又は322上の該当する装置に各々マップする。
【００３８】
具体的にいえば、ホストコンピュータ102は、その標準SCSIプロトコルの一部として、マスターSCSI ID番号及び論理ユニット番号を提供する。小装置304は、そのマスターSCSI ID番号6に応答する。小装置304は、ホストコンピュータ102によって供給された論理ユニット番号に従って、その下位のSCSIバス306に接続された装置に通信内容をマップする。マスターSCSIバス104用としては、ただ1つのマスターSCSI ID番号が用いられる。しかしながら、当該マスターSCSI ID番号と関連した論理ユニット番号を使用することにより、小装置304は、そのマッピング機能とその下位のSCSIバス306を使用して、8個までの付加装置をホストコンピュータ102に接続することができる。マスターSCSIバス104からの論理ユニット番号のマッピングは、次に検討される方法によって下位のSCSIバス306用として下位のSCSI ID番号に変換されるので、その下位のSCSIバス306に接続された各々の付加装置は改造する必要はない。このようにして、小装置304は、マスターSCSIバス104とその下位のSCSIバス306との橋渡しをする。これについては、以下に、更に詳細に説明する。
【００３９】
本発明の方法の高レベルの部分については図5及び図6を用いて説明する。高レベルにおける選択サイクル544と関連したステップを図5に示す。高レベルにおける再選択サイクル644と関連したステップを図6に示す。
【００４０】
ここで、図5のフローチャートの各ブロックでは以下のような処理が行われる。
５０２：マスターSCSIバス上に送られたSCSI ID番号を用いてイニシエータは小装置を選択する。小装置はこれに応答し、メッセージアウト識別から論理ユニット番号を読み取る。
５０４：小装置は論理ユニット番号を下位のSCSIバス上の指定されたターゲットのIDに変換する。ターゲットは応答し、下位のSCSIバス上のターゲットにメッセージアウト識別が送られる。
５０６：小装置はマスターSCSIバスを下位のSCSIバスに接続し、その結果イニシエータはターゲットと通信できる。
【００４１】
加えて、図6のフローチャートの各ブロックでは以下のような処理が行われる。
６０２：ターゲットは下位のSCSIバス上で送られたSCSI ID番号を用いて小装置を再選択する。
６０４：小装置は下位のバスのSCSI IDをマスターSCSIバスの論理ユニット番号に変換し、マスターSCSIバス上のイニシエータを再選択し、イニシエータにメッセージイン識別をハンドシェークする。
６０６：小装置はマスターSCSIバスを下位のSCSIバスに接続し、その結果イニシエータはターゲットと通信できる。
【００４２】
ここで使用されているように、選択サイクル544及び再選択サイクル644は、SCSIプロトコルで使われているそれらのサイクルに従っている。本発明のアーキテクチャ及び方法では、選択サイクル又は再選択サイクルやその他のあらゆる事柄に関して、SCSIプロトコルは一切変更されていない。
【００４３】
図5において、選択サイクル544の第1ステップ502においては、イニシエータ（ホストコンピュータ102とも呼ばれる）は、マスターSCSIバス104上にそのマスターSCSI ID番号を送ることによって小装置304を選択する。小装置はそのマスターバスのSCSI ID番号に応答し、メッセージアウト識別から論理ユニット番号を読み取り、次に、読み取られた当該番号はイニシエータ102によって送られる。既知のSCSIプロトコルに従って、このステップ502は、イニシエータ102と小装置304の間に選択サイクル544における通信を確立するように作用する。イニシエータ102に関する限り、マスターSCSI ID番号を用いて選択される小装置はターゲット装置である。
【００４４】
小装置は、ステップ504において、メッセージアウト識別からの論理ユニット番号を、下位のSCSIバス306上の指定されたターゲットの下位のSCSI ID番号に変換する。次に、小装置304は、ターゲットの下位のSCSI ID番号を用いてターゲットと交信する。ターゲット装置が応答し、次に、小装置304は、下位のSCSIバス306経由でメッセージアウト識別をターゲットに送る。要約すると、ステップ504は、イニシエータ102から受け取った論理ユニット番号によって指定されるように、小装置304とターゲット装置との間の通信を確立させる。
【００４５】
選択サイクル554の最後である第3のステップ506においては、小装置304はマスターSCSIバス104を下位のSCSIバス306に接続し、イニシエータ102が下位のSCSIバス306上のターゲット装置と通信できるようにする。イニシエータ102から下位のSCSIバス306上のターゲット装置への通信、及びこの逆の通信は、それぞれの送受側にとっては直接通信に見える。事実、次に説明するように、小装置304においてはトランシーバが利用され、マスターSCSIバス104と下位のSCSIバス306との間のデータ転送が小装置304によって達成できるようにする。
【００４６】
周知のように、SCSIプロトコルは再選択サイクル644を含む。この目的は、ターゲット装置がある作業を行い、この作業中は当該ターゲット装置がSCSIバスに結合されていなくてもよいようにすることである。換言すれば、選択サイクルである作業を割り当てられたターゲット装置は、マスター及び下位のSCSIバスと関係を断ち、指定された作業を開始することが可能である。ターゲット装置は、指定された作業において、マスター及び下位のSCSIバスによってデータを送り返す準備が整った時点に達すると、再選択サイクル644を開始する。このようにして、SCSIマスター及び下位のバスは最適利用される。
【００４７】
図6に示す再選択サイクル644の第1ステップ602において、ターゲットは、下位のSCSIバス306上でそのSCSI IDを送ることにより小装置を再選択する。小装置は、そのマスターバスのSCSI ID番号に応答し、ターゲットによって送られるメッセージイン識別から論理ユニット番号を読み取る。このステップ602は、再選択サイクルにおいてターゲット装置と小装置304との間に通信が確立されるように作用する。ターゲット装置に関する限り、再選択された小装置がイニシエータである。
【００４８】
ステップ604において、小装置は、下位のバスのSCSI ID番号をマスターSCSIバスの論理ユニット番号に変換する。次に、小装置304は、マスターSCSIバス104上のイニシエータ102を再選択する。次に、小装置304は、メッセージイン識別をマスターSCSIバス104上のイニシエータ102にハンドシェークする。要約すれば、ステップ604は、小装置304とイニシエータ102の間の通信が再確立される。
【００４９】
再選択サイクル644の最後である第3のステップ606において、小装置304はマスターSCSIバス104を下位のSCSIバス306に接続し、イニシエータ102が下位のSCSIバス306上のターゲット装置と通信できるようにする。イニシエータ102から下位のSCSIバス306上のターゲット装置への通信、及びその逆の通信は、送受それぞれの側にとって直接通信に見える。事実、次に検討するように、小装置304においてはトランシーバが使用され、マスターSCSIバス104と下位のSCSIバス306との間のデータ転送が小装置304によって達成できるようにする。
【００５０】
本発明の選択及び再選択サイクルについて説明したので、次に、小装置304の代表的なアーキテクチャを、図4に関連して説明する。
【００５１】
図4を参照すれば、マスターSCSIバス104は、マスター選択機械402、マスター再選択機械404及びトランシーバ406に接続される。マスター選択機械402は、マスター再選択機械404と同様に、IDスイッチ426に接続される。IDスイッチ426は、一般に従来設計のDIPスイッチ又はトグルスイッチであり、小装置304が応答するようにセットされるマスターSCSIバス104用のマスターSCSI ID番号を指定するためにユーザーによってセット可能である。
【００５２】
マスター選択機械402は、マスターSCSIバス104上を送られたマスターSCSI ID番号に応答し、次に、マスターSCSIバス104から受け取ったメッセージアウト識別から論理ユニット番号を読み取る。マスター選択機械402は、論理ユニット番号を、下位のSCSIバス306上の指定されたターゲットの下位のSCSI ID番号に変換する。この下位のSCSI ID番号（ID情報とも呼ばれる）はライン408を経て下位の選択機械410に供給される。
【００５３】
下位の選択機械410は下位のSCSIバス306に接続される。同様に、下位の再選択機械440は下位のSCSIバス306に接続される。加えて、トランシーバ406は下位のSCSIバス306に接続される。
【００５４】
主制御機械412は、マスター選択機械402との間でマスター選択機械制御信号414を送受信し、マスター再選択機械404との間でマスター再選択機械制御信号416を送受信し、トランシーバ406との間でトランシーバ制御信号418を送受信し、下位の選択機械410との間で下位の選択機械制御信号420を送受信し、下位の再選択機械440との間で下位の再選択機械制御信号422を送受信する。主制御機械412は、小装置304に接続された5個の装置（状態機械402、404、410、440、及びトランシーバ406）の動作を制御するように作用する。図5及び6に関連して既に説明し、図7及び8に関連して次に検討するように、選択サイクル及び再選択サイクルに従って制御が行われる。当業者が本発明を実施するに当ってこれら5個の装置について実際の回路を作成する必要はなく、このことは、SCSI技術分野で働く者にとっては明白になるはずである。
【００５５】
下位の選択機械410は下位のSCSIバス306を経てターゲットと交信する。ターゲットはライン408上で受信されるID情報によって識別される。下位の選択機械410は主制御機械412の制御下にあり、下位のSCSIバス306上でメッセージアウト識別をターゲットに送る。
【００５６】
その後、主制御機械412はトランシーバ406と交信してマスターSCSIバス104上のデータ及び下位のSCSIバス306上のデータが適切に転送されるようにし、イニシエータ及びターゲットにとっては相互に直接交信しているように見えるようにする。
【００５７】
再選択サイクル644において、下位の再選択機械440は、下位のSCSIバス306上でターゲットから受信した再選択及びメッセージイン識別に応答する。下位の再選択機械440は、下位のバスのSCSI IDをメッセージイン識別から読み取る。
【００５８】
下位の再選択機械440は、下位のバスのSCSI ID番号を論理ユニット番号に変換する。論理ユニット番号はLUN情報とも呼ばれる。論理ユニット番号(LUN情報)は、ライン424を経てマスター再選択機械404に供給される。
【００５９】
マスター再選択機械404はマスターSCSIバス104上のイニシエータを再選択する。主制御機械412の制御下でマスター再選択機械404は、イニシエータを再選択し、次に、メッセージイン識別をマスターSCSIバス104に接続されたイニシエータへハンドシェークする。
【００６０】
その後、主制御機械412は、トランシーバ制御信号418を介してトランシーバ406を使用し、下位のSCSIバス306上のデータをマスターSCSIバス104へ適切に転送し、また、この逆の転送も行う。このようにして、ターゲット及びイニシエータからは、相互に直接交信しているように見える。小装置304は、従来の任意の方法または将来開発される方法によって作り上げることができる。小装置304は、IDスイッチ426は別として、従来の技術を用いることにより1個の単一チップの形に容易に作成できると推測される。このような単一チップを用いることは、もし達成されれば、サイズが小さく、コストが安く、消費電力が小さいために魅力的である。
【００６１】
ここで、図7のフローチャートの各ブロックでは以下のような処理が行われる。
７０２：パワーアップ状態。
７０４：マスター制御機械がマスター選択機械と下位の再選択機械を作動可能にする。
７０６：アイドル状態。
７０８：イニシエータがIDスイッチで設定されたアドレスのターゲットを選択する。
７１０：マスター選択機械が選択のために応答する。
７１２：マスター選択機械がイニシエータからの識別メッセージをハンドシェークする。７１４：マスター選択機械がマスター制御機械に選択を知らせ、論理ユニット番号を下位の選択機械に送る。
７１６：マスター制御が下位の選択機械をイネーブルにする。
７１８：下位の選択機械がID情報に示されるIDのターゲットを選択する。
７２０：下位の選択機械が論理ユニット番号=0となっている識別をターゲットにハンドシュエークする。
７２２：下位の選択機械はマスター制御機械に終了を知らせる。
７２４：マスター制御機械はトランシーバを介してマスターバスと下位のバスを接続する。
７２６：マスター制御機械はディスコネクト(disconnect)を検出する。
【００６２】
図7を参照しながら、選択サイクル644について更に詳細に検討することとする。「パワーアップ」ステップ702において、従来の方法により、小装置304に電源が供給される。その後、ステップ704において、主制御機械412により、マスター選択機械402及び下位の再選択機械410が作動可能にされる。次に、ステップ706において、小装置304はアイドル状態に入る。
【００６３】
小装置304はアイドル状態に留っている。IDスイッチ426で設定されたようにイニシエータがマスターバスの SCSI ID（或いは、アドレス）においてターゲットを選定した場合、ステップ708において、小装置304の状態が変化する。その後、ステップ710において、マスター選択機械402は、マスターSCSIバス104からのマスターSCSI IDの受信に従って、IDスイッチ406によって設定されたように、小装置304の選択を応答する。ステップ712において、マスター選択機械402は、マスターSCSIバス104上のイニシエータから受け取ったメッセージアウト識別をハンドシェークする。
【００６４】
その後、ステップ714において、マスター選択機械402は、マスター選択機械制御信号414を介して、主制御機械412に選定について通知する。次に、マスター選択機械は、メッセージアウト識別から論理ユニット番号を読み取り、下位のSCSIバス306上のターゲットのID情報（下位のバスのSCSI ID番号）に変換する。次に、マスター選択機械402は、ライン408を経て、ID情報を下位の選択機械410に送る。
【００６５】
その後、ステップ716において、マスター制御機械412は下位の選択機械410を作動可能にする。これは、下位の選択機械制御信号420によって行われる。
【００６６】
その後、ステップ718において、下位の選択機械410は、マスター選択機械402から受け取った下位のバスのSCSI ID番号に従い、下位のSCSIバス306上のターゲット装置を選択する。
【００６７】
ステップ720において、下位の選択機械410は、メッセージアウト識別をターゲットにハンドシェークする。下位のSCSIバス306に供給されるメッセージアウト識別の論理ユニット番号はゼロにセットされることに注意されたい。あらゆる場合に、このようになる。換言すれば、下位のSCSIバス306上の論理ユニット番号は常にゼロにセットされる。下位のSCSIバス306上では、主SCSIバス104上の従来のSCSIプロトコルを使う方法がないので、LUNに対してゼロ以外の値は使用できない。
【００６８】
ステップ722において、下位の選択機械410は、主制御機械412に対し、ターゲットについてのメッセージアウト識別後にハンドシェークの完了をしらせる。
【００６９】
その後、ステップ724において、主制御機械412は、トランシーバ制御信号418により、トランシーバ406に、マスターSCSIバス104を下位のSCSIバス306に接続させる。従って、マスターSCSIバス104上のイニシエータと下位のSCSIバス306上のターゲットとの間に、直接交信が行われているように見える。この交信は、イニシエータとターゲットが交信の実行を望む限り、標準SCSIプロトコルに従って行われる。
【００７０】
交信が終止すると、ステップ726に示すように、主制御機械412はディスコネクトを検出する。この時点において、小装置304はアイドル状態706に戻る。
【００７１】
図7に示す破線で囲まれた箱は、図7のステップと図5のステップとの間の対応を示すことに注意されたい。このように対応を示すことにより、図7及び図5に示す選択サイクルの3ステップが理解し易くなる。
【００７２】
ここで、図8のフローチャートの各ブロックでは以下のような処理が行われる。
７０６：アイドル状態。
８０８：ターゲットがイニシエータを再選択する。
８１０：下位の再選択機械が再選択に応答する。
８１２：ターゲットが下位の再選択機械に識別メッセージをハンドシュエークする。
８１４：下位の再選択機械が主制御機械に再選択を知らせ、またターゲットのアドレスを論理ユニット番号情報に乗せてマスター再選択機械に送る。
８１６：主制御機械が、マスター再選択機械を使用可能にする。
８１８：マスター再選択機械がイニシエータを再選択する。
８２０：マスター再選択機械がイニシエータにターゲットのアドレスを示す論理ユニット番号付きの識別メッセージをハンドシェークする。
８２２：マスター再選択機械が主制御機械に終了を知らせる。
８２４：主制御機械がトランシーバを介してマスターバスと下位のバスを接続する。
８２６：主制御機械がディスコネクトを検出する。
【００７３】
次に、図8を参照して、再選択サイクル644について詳細に説明することとする。下位のSCSIバス306上に下位のバスのSCSI ID番号を送ることによってターゲットがイニシエータを再選択する時まで、小装置304はアイドル状態706にある。この状況をステップ808に示す。
【００７４】
イニシエータに対応する下位のSCSIバス306上における下位のバスのSCSI ID番号の受信によって示されるように、下位の再選択機械440はターゲットの再選択に応答する。この状況をステップ810に示す。
【００７５】
その後、ステップ812に示すように、ターゲットは、メッセージイン識別を下位の再選択機械440にハンドシェークする。図7のステップ720に示す選択サイクルについて既に述べたように、論理ユニット番号は、全ての下位のバスのSCSI ID番号に対して常にゼロであるように指定される。
【００７６】
その後、下位の再選択機械440は、主制御機械412に対し、下位の再選択機械制御信号422を介して再選択について通知する、次に、下位のバスのSCSI ID番号を論理ユニット情報に変換する。この情報は、ライン424によってマスター再選択機械404に供給される。この状況をステップ814に示す。
【００７７】
その後、マスター制御機械412は、ステップ816に示すように、マスター再選択機械制御信号416を用いて、マスター再選択機械404を作動可能にする。
【００７８】
マスター再選択機械404は、イニシエータのSCSI ID番号に対応するマスターバスのSCSI ID番号をマスターSCSIバス104上に送り出すことによってイニシエータを再選択する。この動作を、ステップ818に示す。
【００７９】
その後、マスター再選択機械404は、論理ユニット番号がターゲットのアドレスを示すメッセージイン識別をマスターSCSIバス104上のイニシエータにハンドシェークする。この動作をステップ820に示す。
【００８０】
次に、ステップ822に示すように、マスター再選択機械404は、主制御機械412に対して、メッセージイン識別のハンドシェークが完了したことを通知する。
【００８１】
マスター制御機械412は、トランシーバ制御信号418を用いて、トランシーバ406に対し、下位のSCSIバス306とマスターSCSIバス104との間に適切な接続を行わせ、これによりこの段階において、下位のSCSIバス306に接続されたターゲットとマスターSCSIバス104に接続されたイニシエータとの間に直接的な交信が行われるように見えるようにする。これをステップ824に示す。この交信は交信が完了するまで行われる。交信が完了した後で、ステップ826に示すように、マスター制御機械412はディスコネクトを検出する。その後、小装置304はアイドル状態706に入る。
【００８２】
本発明の様々な実施例について説明してきたが、これらの実施例は飽くまで例に過ぎず、制限的意味をもたないことを理解されたい。従って、本発明の適用幅及び有効範囲は、上記の模範的実施例のいずれによっても制限されるものでなく、特許請求の範囲によってのみ規制されるべきである。
【００８３】
【発明の効果】
以上のように、本発明は、SCSI装置に改修を加えることなく、56台までの装置をSCSIバスに接続することができる。
【図面の簡単な説明】
【図１】SCSIバス上のホストコンピュータに接続された7個の装置と、付加装置とホストコンピュータ間の距離の増加を可能にするために、付加装置の一つを付けたリピータを含む、従来システムのブロック図。
【図２】コントローラを介してSCSIバスに接続されたいくつかの内部装置を持つ従来の周辺装置202アーキテクチャのブロック図。
【図３】本発明の高レベルアーキテクチャのブロック図。
【図４】小装置304のアーキテクチャのブロック図。
【図５】本発明の選択サイクルのステップの高レベルのフローチャート。
【図６】本発明の再選択サイクルのステップの高レベルのフローチャート。
【図７】本発明の選択サイクルのステップのより詳細なフローチャート。
【図８】本発明の再選択サイクルのステップのより詳細なフローチャート。
【符号の説明】
１０２：ホストコンピュータ
１０４：マスターSCSIバス
１０６、１０８、１１０、１１２、１１４：付加装置
３０２、３２０：物理筺体
３０４、３０４’：小装置
３０６、３２２：下位のSCSIバス
３０８、３１０、３１２、３１４、３１６、３２４、３２６、３２８：付加装置
【図１】
0004017194.tif 000002
【図２】
0004017194.tif 000003
【図３】
0004017194.tif 000004
【図４】
0004017194.tif 000005
【図５】
0004017194.tif 000006
【図６】
0004017194.tif 000007
【図７】
0004017194.tif 000008
【図８】
0004017194.tif 000009