以下、本実施の形態を図面を参照して詳細に説明する。
[第1の実施の形態]
図1は、第1の実施の形態の電子装置を示す図である。例えば、第1の実施の形態に係る電子装置1として、ストレージサブシステム、メモリカード等の外部記憶装置、プリンタ、スキャナ、カードリーダ/ライタ等の電子機器が考えられる。また、ノート型コンピュータ、PDA(Personal Digital Assistant)、携帯電話機等の情報処理装置も考えられる。
電子装置1は、制御部1a、接続部1b1,1b2、機能部1cを有する。また、電子装置1は、接続部1b1により機器2aが接続されており、接続部1b2により機器2bが接続されている。
接続部1b1,1b2は、機器2a,2b等の他の機器と接続可能な接続部である。ここで、接続部1b1は、本来は接地用の端子であるが接地を予め開放されている開放端子を有するものとする。
制御部1aは、接続部1b1の開放端子から、開放端子が接地している状態であることを示す電圧値を検出し、接地している状態であることを示す電圧値を検出した場合には、接続部1b1を用いて機器2aと信号の送受信を行うように制御する。また、制御部1aは、接続部1b1の開放端子から接地している状態であることを示す電圧値を検出しない場合には、接続部1b2を用いて機器2bと信号の送受信を行うように制御する。
機能部1cは、電子装置1における主な目的とされる機能を実現する。例えば、電子装置1がストレージ装置であれば、機能部1cは、ハードディスクドライブ、光ディスクドライブ、メモリ等の記憶装置や記憶を制御する制御装置である。
機器2a,2bは、電子装置1と信号を送受信する装置であり、例えば、コンピュータ等の情報処理装置、その他の電子装置1との間で信号の送受信を行う機能を有する機器である。ここで、機器2aは、接続部1b1と接続される接地端子を有しており、接地端子の少なくとも1つは接続部1b1の開放端子と接続されるものとする。
電子装置1では、制御部1aが、接続部1b1が有する接地用の接地端子であって接地を予め開放されている端子から、開放端子が接地している状態であることを示す電圧値を検出する。すなわち、制御部1aは、開放端子に対応する機器2a内の接地端子を介して開放端子が接地されると、開放端子が接地している状態であることを示す電圧値を検出する。次に、接地している状態であることを示す電圧値が制御部1aによって検出された場合、接続部1b1を用いて機器2aと信号の送受信を行うよう制御する。一方、接地している状態であることを示す電圧値が制御部1aによって検出されない場合、接続部1b2を用いて機器2bと信号の送受信を行うよう制御する。
なお、本実施の形態の電子装置1は、接続部1b1,1b2を有するが、接続部の数は2個に限らず、3個以上であってもよい。
このような電子装置1によれば、接続部1b1,1b2によって提供されるインタフェースのうち、使用するインタフェースが自動的に選択可能になる。
以下の第2の実施の形態では、第1の実施の形態に係る電子装置1の応用例として、ストレージサブシステムを挙げる。ただし、前述の通り、電子装置1は、ストレージサブシステム以外の様々な電子機器に応用できる。
[第2の実施の形態]
図2は、第2の実施の形態のストレージサブシステムを使用するシステムの構成を示す図である。第2の実施の形態のストレージサブシステム10は、e−SATAインタフェースおよびUSBインタフェースを有し、これらのインタフェースによりコンピュータと接続可能である。
図2に示すストレージサブシステム10は、e−SATAコネクタ11により、e−SATAケーブル41を介してコンピュータ20aと接続されていると共に、USBコネクタ12により、USBケーブル42を介してコンピュータ20bと接続されている。
ストレージサブシステム10は、e−SATAケーブル41により他の機器と接続するe−SATAコネクタ11、USBケーブル42により他の機器と接続するUSBコネクタ12、AC電源とプラグ31で接続され、DC電源を供給するACアダプタ30と接続するDCジャック13を有する。
コンピュータ20a,20bは、ストレージサブシステム10が有するハードディスクドライブとアクセスすることによりデータの読み書きを行う。コンピュータ20aは、e−SATAコネクタ21a、USBコネクタ22aを有する。同様に、コンピュータ20bは、e−SATAコネクタ21b、USBコネクタ22bを有する。
このようにコンピュータ20a,20bに接続された状態で、ストレージサブシステム10は、コンピュータ20a,20bそれぞれの接続要求に対して適切に対応することで、例えば、コンピュータ20aからのデータをストレージサブシステム10にバックアップを取った後、ユーザはコネクタの接続を切り替えることなく、コンピュータ20bに対してデータのコピーを取る等、2台のコンピュータからの接続要求に対して自動的に適切に対応することにより、データの移動、バックアップの利便性が向上する。
図3は、第2の実施の形態のストレージサブシステムを示す図である。図3に示すように、ストレージサブシステム10は、ハードディスクドライブ(HDD)14およびインタフェース変換プリント板15を有する。
インタフェース変換プリント板15上には、USB/SATA−SATA変換制御LSI(Large Scale Integration)16、ROM(Read Only Memory)17、e−SATAコネクタ11、USBコネクタ12、SATAコネクタ18a、DCジャック13が設けられている。
USB/SATA−SATA変換制御LSI16は、ストレージサブシステム10を制御する。ROM17は、ストレージサブシステム10の動作に必要なプログラムやデータを記憶する。また、USB/SATA−SATA変換制御LSI16は、経過時間を計測するタイマを有する。また、USB/SATA−SATA変換制御LSI16は、USBコネクタ12を介してUSBインタフェースで接続されたコンピュータ20b等の他の機器との間で送受信される入出力信号をSATA形式の信号に変換する。また、USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11を介してe−SATAインタフェースで接続されたコンピュータ20a等の他の機器との間で送受信される入出力信号およびSATA形式に変換したUSBコネクタ12を介してUSBインタフェースで接続された他の機器との間で送受信される入出力信号のいずれかを選択し、選択したSATA形式の信号をハードディスクドライブ14との間で送受信する。
e−SATAコネクタ11は、e−SATAにより他の機器と接続するコネクタである。USBコネクタ12は、USBにより他の機器と接続するコネクタである。SATAコネクタ18aは、ハードディスクドライブ14が有するSATAコネクタ18bと接続する。DCジャック13は、ACアダプタ30等と接続可能であり、外部からの電源の供給を受け付ける。
ハードディスクドライブ14は、例えば、3.5インチのハードディスクを有しており、ストレージサブシステム10と接続されている他の機器から出力されるコマンドを、インタフェース変換プリント板15を介して受信し、コマンドに応じた処理(データの読み出し、書き込み)を実行する。また、ハードディスクドライブ14は、インタフェース変換プリント板15と接続するSATAコネクタ18bを有する。
図4は、第2の実施の形態のUSB/SATA−SATA変換制御LSIを示す図である。図4に示すように、USB/SATA−SATA変換制御LSI16は、USB PHY1601、USB Core1602、Registers1603、Command Buffers1604を有する。また、USB/SATA−SATA変換制御LSI16は、Data Buffer & Data Flow Control1605、MPU1606、Instruction SRAM1607、Serial Flash Control1608を有する。
また、USB/SATA−SATA変換制御LSI16は、SATA Control Block1609、SATA Transport Layer1610、SATA Link Layer1611、SATA PHY1612を有する。また、USB/SATA−SATA変換制御LSI16は、Serial Flash Control1608を介して、Serial Flash1613と接続されている。
USB PHY1601は、USBの物理インタフェースであり、高速シリアル通信用のアナログ回路である。USB Core1602は、USBの論理回路である。Registers1603には、汎用入出力ポート等が接続されており、USB/SATA−SATA変換制御LSI16外部と信号のやり取りをする。Command Buffers1604は、コンピュータ20a,20b等の他の機器から入力されるコマンドをバッファリングする。Data Buffer & Data Flow Control1605は、外部から入力されるデータをバッファリングする。
MPU1606は、Registers1603、Command Buffers1604、Data Buffer & Data Flow Control1605、USB PHY1601等を制御する。すなわち、MPU1606は、Registers1603において、開放端子の電圧値が「L」になったことが検知されると、e−SATAを用いてデータの送受信を行うように制御する。また、同様に、MPU1606は、開放端子の電圧値が「L」になり、USB PHY1601がリセットされると、e−SATAを用いてデータの送受信を行うように制御する。
Instruction SRAM1607は、Serial Flash Control1608の制御に用いられるSRAM(Static Random Access Memory)である。Serial Flash1613には、ハードディスクドライブ14を制御する上で必要な識別情報が記憶されている。Serial Flash Control1608は、Serial Flash1613を用いた制御を行う。
SATA PHY1612は、SATAインタフェースの高速シリアル通信用アナログ回路(物理層)である。SATA PHY1612には、e−SATAコネクタ11およびハードディスクドライブ14が接続される。SATA Link Layer1611は、SATAインタフェースの上位階層(SATA PHY1612)の制御を行う。また、SATA Transport Layer1610は、SATAインタフェースのデータ転送制御を行う。SATA Control Block1609は、SATA Transport Layer1610の制御を行う。
図5は、第2の実施の形態の回路構成を示す図である。図5に従って、ストレージサブシステム10の回路構成について説明する。図5に示す例では、ストレージサブシステム10は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ11、USBコネクタ12を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ18a1、SATA信号コネクタ18a2を有する。また、ストレージサブシステム10は、USB/SATA−SATA変換制御LSI16を有する。
USB/SATA−SATA変換制御LSI16に対しては、e−SATAコネクタ11によりコンピュータ20aからのe−SATA信号、USBコネクタ12によりコンピュータ20bからのUSB信号、SATA信号コネクタ18a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはDCジャック13からの5V電源の供給を受けて、インタフェース変換プリント板15に設けられた回路に供給されると共に、SATA電源コネクタ18a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI16には、汎用入出力ポート(GPIO:General Purpose Input/Output)として、e−SATA側汎用入出力ポート16a、USB側汎用入出力ポート16bが用意されている。USB/SATA−SATA変換制御LSI16は、制御部として機能する。
e−SATAコネクタ11が有する端子の数は、e−SATAに関する規格上、7本である。以下では、e−SATAコネクタ11の各端子を「1」から「7」までの番号により識別される端子として説明する。例えば、「1」によって識別される端子を端子「1」と記載する。
e−SATAコネクタ11では、端子「2」、端子「3」、端子「5」、端子「6」は、e−SATAに関する規格と同様に、信号を伝達する信号端子である。また、e−SATAコネクタ11では、e−SATAに関する規格上、接地される接地端子となっている端子「1」、端子「4」、端子「7」のうち、端子「4」は開放端子となる。また、端子「4」は、USB/SATA−SATA変換制御LSI16のe−SATA側汎用入出力ポート16aに接続され、USB/SATA−SATA変換制御LSI16により電圧が検出される。端子「4」は、DCジャック13からの電力を利用して抵抗R2でプルアップされる。e−SATAコネクタ11は、第1の接続部として機能する。
また、USBコネクタ12が有する端子の数は、USBに関する規格上、4本である。USBコネクタ12が有する端子のうち端子「4」が接地端子であり、端子「2」および端子「3」が信号端子であり、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI16のUSB側汎用入出力ポート16bに接続され、USB/SATA−SATA変換制御LSI16により電圧が検出される。端子「1」は、接地に対して抵抗R1でプルダウンされる。USBコネクタ12は、第2の接続部として機能する。
e−SATAコネクタ11やUSBコネクタ12が有する各信号端子は、USB/SATA−SATA変換制御LSI16と接続される。例えば、e−SATAコネクタ11では、信号端子である端子「2」、端子「3」、端子「5」、端子「6」がUSB/SATA−SATA変換制御LSI16と接続される。また、例えば、USBコネクタ12では、信号端子である端子「2」、端子「3」がUSB/SATA−SATA変換制御LSI16と接続される。
USB/SATA−SATA変換制御LSI16とSATA信号コネクタ18a2とは、SATA信号コネクタ18a2内にある信号端子を介して接続される。
SATA電源コネクタ18a1は、ハードディスクドライブ14に電源を供給するコネクタであり、DCジャック13から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
本実施の形態のUSB/SATA−SATA変換制御LSI16では、e−SATAコネクタ11の接続は、e−SATAコネクタ11の端子「4」をフローティングおよびプルアップ処理し、e−SATA側汎用入出力ポート16aに入力モードとして接続することにより検出される。
USB/SATA−SATA変換制御LSI16は、e−SATA側汎用入出力ポート16aにより、端子「4」の電圧値を検出する。この端子「4」の電圧値により、e−SATAコネクタ11の接続が検出される。e−SATA側汎用入出力ポート16aへの入力信号がLレベルであれば、USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11がコンピュータ20a等の他の機器と接続されているものとして、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ11を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ12の端子「1」に対してUSB側汎用入出力ポート16bが入力モードで接続されている。これにより、USB/SATA−SATA変換制御LSI16は、USBコネクタ12の端子「1」から供給されるVBUS電圧でUSBコネクタ12の接続を検出する。USB側汎用入出力ポート16bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI16は、USBコネクタ12がコンピュータ20b等の他の機器と接続されているものとして、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ12を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、ハードディスクドライブ14の出荷試験等の各種試験をe−SATAコネクタ11を用いて行う。なお、ハードディスクドライブ14の各種試験について、USBコネクタ12を用いて行ってもよい。
図6および図7は、第2の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI16がe−SATAコネクタ11およびUSBコネクタ12のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図6および図7に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム10の電源投入時に実行される。
[ステップS11]USB/SATA−SATA変換制御LSI16は、USB側汎用入出力ポート16bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS11 YES)、処理はステップS21に進められる。一方、入力信号がLレベルであれば(ステップS11 NO)、処理はステップS12に進められる。
[ステップS12]USB/SATA−SATA変換制御LSI16は、e−SATA側汎用入出力ポート16aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS12 YES)、処理はステップS13に進められる。一方、入力信号がHレベルであれば(ステップS12 NO)、処理はステップS11に進められる。
[ステップS13]USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS14]USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ11を介してe−SATAコマンドを送受信していれば(ステップS14 YES)、処理はステップS15に進められる。一方、e−SATAコネクタ11を介してe−SATAコマンドを送受信していなければ(ステップS14 NO)、処理はステップS11に進められる。
[ステップS15]USB/SATA−SATA変換制御LSI16は、タイマをセットして経過時間を計測し、所定時間(例えば、1秒)待機する。これにより、ステップS14の判定が行われる頻度を制限することができ、接続の切り換えが頻繁に起こることを抑止できる。その後、処理はステップS14に進められる。
[ステップS21]USB/SATA−SATA変換制御LSI16は、USBコネクタ12を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS22]USB/SATA−SATA変換制御LSI16は、USBコネクタ12を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ12を介してUSBコマンドを送受信していれば(ステップS22 YES)、処理はステップS23に進められる。一方、USBコネクタ12を介してUSBコマンドを送受信していなければ(ステップS22 NO)、処理はステップS12に進められる。
[ステップS23]USB/SATA−SATA変換制御LSI16は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS22に進められる。
なお、本実施の形態では、ステップS15およびステップS23で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第2の実施の形態に係るストレージサブシステム10によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム10のアクセスを行う場合に適する。一例として通常時はストレージサブシステム10をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム10のアクセスを行うような使用方法が可能である。
(第2の実施の形態の変形例)
次に、第2の実施の形態の変形例について説明する。上記の第2の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第2の実施の形態では、インタフェース判定処理においてストレージサブシステム10がUSBインタフェースによる他の機器との接続を優先して判定するが、第2の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム10がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第2の実施の形態と異なる。
図8および図9は、第2の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図8および図9に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム10の電源投入時に実行される。
[ステップS31]USB/SATA−SATA変換制御LSI16は、e−SATA側汎用入出力ポート16aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS31 YES)、処理はステップS41に進められる。一方、入力信号がHレベルであれば(ステップS31 NO)、処理はステップS32に進められる。
[ステップS32]USB/SATA−SATA変換制御LSI16は、USB側汎用入出力ポート16bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS32 YES)、処理はステップS33に進められる。一方、入力信号がLレベルであれば(ステップS32 NO)、処理はステップS31に進められる。
[ステップS33]USB/SATA−SATA変換制御LSI16は、USBコネクタ12を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS34]USB/SATA−SATA変換制御LSI16は、USBコネクタ12を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ12を介してUSBコマンドを送受信していれば(ステップS34 YES)、処理はステップS35に進められる。一方、USBコネクタ12を介してUSBコマンドを送受信していなければ(ステップS34 NO)、処理はステップS31に進められる。
[ステップS35]USB/SATA−SATA変換制御LSI16は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS34に進められる。
[ステップS41]USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS42]USB/SATA−SATA変換制御LSI16は、e−SATAコネクタ11を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ11を介してe−SATAコマンドを送受信していれば(ステップS42 YES)、処理はステップS43に進められる。一方、e−SATAコネクタ11を介してe−SATAコマンドを送受信していなければ(ステップS42 NO)、処理はステップS32に進められる。
[ステップS43]USB/SATA−SATA変換制御LSI16は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS42に進められる。
なお、本実施の形態では、ステップS35およびステップS43で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
また、e−SATAコネクタ11は、USB/SATA−SATA変換制御LSI16のファームウエアのダウンロードを行う。また、USBコネクタ12により、USB/SATA−SATA変換制御LSI16のファームウエアのダウンロードを行ってもよい。
以上、第2の実施の形態の変形例に係るストレージサブシステム10によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム10のアクセスを行う場合に適する。
[第3の実施の形態]
次に第3の実施の形態について説明する。上記の第2の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第3の実施の形態は、e−SATAコネクタおよびUSBコネクタからストレージサブシステムで使用する電源の供給を受ける場合の例である。
第2の実施の形態では、DCジャックからの5V電源の供給を受けて、インタフェース変換プリント板に設けられた回路およびハードディスクに電源が供給される。これに対して、第3の実施の形態では、e−SATAコネクタまたはUSBコネクタからの電源の供給を受けて、インタフェース変換プリント板に設けられた回路およびハードディスクに電源が供給される。
図10は、第3の実施の形態の回路構成を示す図である。図10に従って、ストレージサブシステム210の回路構成について説明する。図10に示す例では、ストレージサブシステム210は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ211、USBコネクタ212を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ218a1、SATA信号コネクタ218a2を有する。また、ストレージサブシステム210は、USB/SATA−SATA変換制御LSI216を有する。
USB/SATA−SATA変換制御LSI216に対しては、e−SATAコネクタ211によりコンピュータ20aからのe−SATA信号、USBコネクタ212によりコンピュータ20bからのUSB信号、SATA信号コネクタ218a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはe−SATAコネクタ211およびUSBコネクタ212からそれぞれ供給された5V電源を電源合成回路220で合成して得られた電源が、インタフェース変換プリント板215に設けられた回路に供給されると共に、SATA電源コネクタ218a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI216には、汎用入出力ポートとして、e−SATA側汎用入出力ポート216a、USB側汎用入出力ポート216bが用意されている。
e−SATAコネクタ211は、第2の実施の形態で説明したe−SATAに関する規格上の端子である7本の他、電源供給用の端子として端子「VBUS」および端子「GND」を有する。
e−SATAコネクタ211では、端子「2」、端子「3」、端子「5」、端子「6」は、信号を伝達する信号端子である。また、e−SATAコネクタ211では、端子「1」、端子「7」は接地端子となり、端子「4」は開放端子となる。
また、e−SATAコネクタ211の端子「VBUS」は、電源合成回路220に接続されると共に、USB/SATA−SATA変換制御LSI216のe−SATA側汎用入出力ポート216aに抵抗R22を挟んで接続され、USB/SATA−SATA変換制御LSI216により電圧が検出される。
また、USBコネクタ212は、4本の端子を有する。USBコネクタ212が有する端子のうち端子「4」が接地端子であり、端子「2」および端子「3」が信号端子であり、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI216のUSB側汎用入出力ポート216bに抵抗21を挟んで接続され、USB/SATA−SATA変換制御LSI216により電圧が検出される。
e−SATAコネクタ211やUSBコネクタ212が有する各信号端子は、USB/SATA−SATA変換制御LSI216と接続される。例えば、e−SATAコネクタ211では、信号端子である端子「2」、端子「3」、端子「5」、端子「6」がUSB/SATA−SATA変換制御LSI216と接続される。また、例えば、USBコネクタ212では、信号端子である端子「2」、端子「3」がUSB/SATA−SATA変換制御LSI216と接続される。
USB/SATA−SATA変換制御LSI216とSATA信号コネクタ218a2とは、SATA信号コネクタ218a2内にある信号端子を介して接続される。
SATA電源コネクタ218a1は、ハードディスクドライブ14に電源を供給するコネクタであり、電源合成回路220を介してe−SATAコネクタ211およびUSBコネクタ212から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
電源合成回路220は、e−SATAコネクタ211の端子「VBUS」から供給される電力およびUSBコネクタ212の端子「1」から供給される電力を合成し、ストレージサブシステム210で使用される電源を供給する。
本実施の形態のUSB/SATA−SATA変換制御LSI216では、e−SATAコネクタ211の接続は、e−SATAコネクタ211の端子「VBUS」に対してe−SATA側汎用入出力ポート216aを入力モードとして接続して、端子「VBUS」から供給されるVBUS電圧により検出される。e−SATA側汎用入出力ポート216aへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI216は、e−SATAコネクタ211を接続する。このとき、USB/SATA−SATA変換制御LSI216は、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ211を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ212の接続は、USBコネクタ212の端子「1」に対してUSB側汎用入出力ポート216bを入力モードとして接続して、端子「1」から供給されるVBUS電圧により検出される。USB側汎用入出力ポート216bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI216は、USBコネクタ212を接続する。このとき、USB/SATA−SATA変換制御LSI216は、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ212を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
図11および図12は、第3の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI216がe−SATAコネクタ211およびUSBコネクタ212のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図11および図12に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム210の電源投入時に実行される。
[ステップS51]USB/SATA−SATA変換制御LSI216は、USB側汎用入出力ポート216bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS51 YES)、処理はステップS61に進められる。一方、入力信号がLレベルであれば(ステップS51 NO)、処理はステップS52に進められる。
[ステップS52]USB/SATA−SATA変換制御LSI216は、e−SATA側汎用入出力ポート216aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS52 YES)、処理はステップS53に進められる。一方、入力信号がLレベルであれば(ステップS52 NO)、処理はステップS51に進められる。
[ステップS53]USB/SATA−SATA変換制御LSI216は、e−SATAコネクタ211を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS54]USB/SATA−SATA変換制御LSI216は、e−SATAコネクタ211を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ211を介してe−SATAコマンドを送受信していれば(ステップS54 YES)、処理はステップS55に進められる。一方、e−SATAコネクタ211を介してe−SATAコマンドを送受信していなければ(ステップS54 NO)、処理はステップS51に進められる。
[ステップS55]USB/SATA−SATA変換制御LSI216は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS54に進められる。
[ステップS61]USB/SATA−SATA変換制御LSI216は、USBコネクタ212を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS62]USB/SATA−SATA変換制御LSI216は、USBコネクタ212を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ212を介してUSBコマンドを送受信していれば(ステップS62 YES)、処理はステップS63に進められる。一方、USBコネクタ212を介してUSBコマンドを送受信していなければ(ステップS62 NO)、処理はステップS52に進められる。
[ステップS63]USB/SATA−SATA変換制御LSI216は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS62に進められる。
なお、本実施の形態では、ステップS55およびステップS63で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第3の実施の形態に係るストレージサブシステム210によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム210のアクセスを行う場合に適する。一例として通常時はストレージサブシステム210をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム210のアクセスを行うような使用方法が可能である。
また、電源の供給をe−SATAコネクタ211およびUSBコネクタ212から受けるので、他の外部電源が不要になる。
(第3の実施の形態の変形例)
次に、第3の実施の形態の変形例について説明する。上記の第3の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第3の実施の形態では、インタフェース判定処理においてストレージサブシステム210がUSBインタフェースによる他の機器との接続を優先して判定するが、第3の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム210がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第3の実施の形態と異なる。
図13および図14は、第3の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図13および図14に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム210の電源投入時に実行される。
[ステップS71]USB/SATA−SATA変換制御LSI216は、e−SATA側汎用入出力ポート216aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS71 YES)、処理はステップS81に進められる。一方、入力信号がLレベルであれば(ステップS71 NO)、処理はステップS72に進められる。
[ステップS72]USB/SATA−SATA変換制御LSI216は、USB側汎用入出力ポート216bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS72 YES)、処理はステップS73に進められる。一方、入力信号がLレベルであれば(ステップS72 NO)、処理はステップS71に進められる。
[ステップS73]USB/SATA−SATA変換制御LSI216は、USBコネクタ212を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS74]USB/SATA−SATA変換制御LSI216は、USBコネクタ212を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ212を介してUSBコマンドを送受信していれば(ステップS74 YES)、処理はステップS75に進められる。一方、USBコネクタ212を介してUSBコマンドを送受信していなければ(ステップS74 NO)、処理はステップS71に進められる。
[ステップS75]USB/SATA−SATA変換制御LSI216は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS74に進められる。
[ステップS81]USB/SATA−SATA変換制御LSI216は、e−SATAコネクタ211を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS82]USB/SATA−SATA変換制御LSI216は、e−SATAコネクタ211を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ211を介してe−SATAコマンドを送受信していれば(ステップS82 YES)、処理はステップS83に進められる。一方、e−SATAコネクタ211を介してe−SATAコマンドを送受信していなければ(ステップS82 NO)、処理はステップS72に進められる。
[ステップS83]USB/SATA−SATA変換制御LSI216は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS82に進められる。
なお、本実施の形態では、ステップS75およびステップS83で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第3の実施の形態の変形例に係るストレージサブシステム210によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム210のアクセスを行う場合に適する。
また、電源の供給をe−SATAコネクタ211およびUSBコネクタ212から受けるので、他の外部電源が不要になる。
[第4の実施の形態]
次に第4の実施の形態について説明する。上記の第2の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第4の実施の形態は、e−SATAインタフェースおよびUSBインタフェースのうち接続するインタフェースをBUSラインスイッチで切り替える場合の例である。
第2の実施の形態では、USB/SATA−SATA変換制御LSIは、e−SATAコネクタの信号線およびUSBコネクタの信号線と常に接続されている。これに対して、第4の実施の形態では、USB/SATA−SATA変換制御LSIとe−SATAコネクタの信号線との間およびUSB/SATA−SATA変換制御LSIとUSBコネクタの信号線との間に、それぞれBUSラインスイッチを設けて、接続するインタフェースに応じて各信号線の接続および遮断を切り替える。
図15は、第4の実施の形態の回路構成を示す図である。図15に従って、ストレージサブシステム310の回路構成について説明する。図15に示す例では、ストレージサブシステム310は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ311、USBコネクタ312を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ318a1、SATA信号コネクタ318a2を有する。また、ストレージサブシステム310は、USB/SATA−SATA変換制御LSI316を有する。
USB/SATA−SATA変換制御LSI316に対しては、e−SATAコネクタ311によりコンピュータ20aからのe−SATA信号、USBコネクタ312によりコンピュータ20bからのUSB信号、SATA信号コネクタ318a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはDCジャック313からの5V電源の供給を受けて、インタフェース変換プリント板315に設けられた回路に供給されると共に、SATA電源コネクタ318a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI316には、汎用入出力ポートとして、e−SATA側汎用入出力ポート316a,316c、USB側汎用入出力ポート316b,316dが用意されている。
また、USB/SATA−SATA変換制御LSI316は、e−SATA側汎用入出力ポート316cを用いて制御信号を送信し、e−SATA側汎用入出力ポート316cと接続されているBUSラインスイッチ319bを制御する。また、USB/SATA−SATA変換制御LSI316は、USB側汎用入出力ポート316dを用いて制御信号を送信し、USB側汎用入出力ポート316dと接続されているBUSラインスイッチ319aを制御する。
e−SATAコネクタ311は、第2の実施の形態で説明したe−SATAに関する規格上の端子である7本の端子を有する。
e−SATAコネクタ311では、端子「2」、端子「3」、端子「5」、端子「6」は、信号を伝達する信号端子であり、BUSラインスイッチ319bを介してUSB/SATA−SATA変換制御LSI316に接続されている。また、e−SATAコネクタ311では、端子「1」、端子「7」は接地端子となり、端子「4」は開放端子となる。また、端子「4」は、USB/SATA−SATA変換制御LSI316のe−SATA側汎用入出力ポート316aに接続され、USB/SATA−SATA変換制御LSI316により電圧が検出される。端子「4」は、DCジャック313からの電力を利用して抵抗R32でプルアップされる。
また、USBコネクタ312は、4本の端子を有する。USBコネクタ312が有する端子のうち端子「4」が接地端子である。また、端子「2」および端子「3」が信号端子であり、BUSラインスイッチ319aを介してUSB/SATA−SATA変換制御LSI316に接続されている。また、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI316のUSB側汎用入出力ポート316bに接続され、USB/SATA−SATA変換制御LSI316により電圧が検出される。端子「1」は、接地に対して抵抗R31でプルダウンされる。
USB/SATA−SATA変換制御LSI316とSATA信号コネクタ318a2とは、SATA信号コネクタ318a2内にある信号端子を介して接続される。
SATA電源コネクタ318a1は、ハードディスクドライブ14に電源を供給するコネクタであり、DCジャック313から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
BUSラインスイッチ319aは、USB/SATA−SATA変換制御LSI316の制御に基づいて、USBコネクタ312の各信号線とUSB/SATA−SATA変換制御LSI316とを接続状態または遮断状態に切り替えるスイッチである。BUSラインスイッチ319aは、USB側汎用入出力ポート316dでUSB/SATA−SATA変換制御LSI316と接続されている。
BUSラインスイッチ319bは、USB/SATA−SATA変換制御LSI316の制御に基づいて、e−SATAコネクタ311の各信号線とUSB/SATA−SATA変換制御LSI316とを接続状態または遮断状態に切り替えるスイッチである。BUSラインスイッチ319bは、e−SATA側汎用入出力ポート316cでUSB/SATA−SATA変換制御LSI316と接続されている。BUSラインスイッチ319a,319bは、スイッチ部として機能する。
本実施の形態のUSB/SATA−SATA変換制御LSI316では、e−SATAコネクタ311の接続は、e−SATAコネクタ311の端子「4」をフローティングおよびプルアップ処理し、e−SATA側汎用入出力ポート316aに入力モードとして接続することにより検出される。
USB/SATA−SATA変換制御LSI316は、e−SATA側汎用入出力ポート316aにより、端子「4」の電圧値を検出する。この端子「4」の電圧値により、SATAコネクタ311の接続が検出される。e−SATA側汎用入出力ポート316aへの入力信号がLレベルであれば、USB/SATA−SATA変換制御LSI316は、SATAコネクタ311を接続する。このとき、USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオンにすると共にBUSラインスイッチ319bをオフにし、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ311を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ312の端子「1」に対してUSB側汎用入出力ポート316bが入力モードで接続されている。これにより、USB/SATA−SATA変換制御LSI316は、USBコネクタ312の端子「1」から供給されるVBUS電圧でUSBコネクタ312の接続を検出する。USB側汎用入出力ポート316bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI316は、USBコネクタ312を接続する。このとき、USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオフにすると共にBUSラインスイッチ319bをオンにし、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ312を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
図16および図17は、第4の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI316がe−SATAコネクタ311およびUSBコネクタ312のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図16および図17に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム310の電源投入時に実行される。
[ステップS91]USB/SATA−SATA変換制御LSI316は、USB側汎用入出力ポート316bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS91 YES)、処理はステップS101に進められる。一方、入力信号がLレベルであれば(ステップS91 NO)、処理はステップS92に進められる。
[ステップS92]USB/SATA−SATA変換制御LSI316は、e−SATA側汎用入出力ポート316aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS92 YES)、処理はステップS93に進められる。一方、入力信号がHレベルであれば(ステップS92 NO)、処理はステップS91に進められる。
[ステップS93]USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオフに切り替えると共に、BUSラインスイッチ319bをオンに切り替える。これにより、USBコネクタ312の各信号線とUSB/SATA−SATA変換制御LSI316とが遮断されると共に、e−SATAコネクタ311の各信号線とUSB/SATA−SATA変換制御LSI316とが接続される。
[ステップS94]USB/SATA−SATA変換制御LSI316は、e−SATAコネクタ311を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS95]USB/SATA−SATA変換制御LSI316は、e−SATAコネクタ311を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ311を介してe−SATAコマンドを送受信していれば(ステップS95 YES)、処理はステップS96に進められる。一方、e−SATAコネクタ311を介してe−SATAコマンドを送受信していなければ(ステップS95 NO)、処理はステップS91に進められる。
[ステップS96]USB/SATA−SATA変換制御LSI316は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS95に進められる。
[ステップS101]USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオンに切り替えると共に、BUSラインスイッチ319bをオフに切り替える。これにより、USBコネクタ312の各信号線とUSB/SATA−SATA変換制御LSI316とが接続されると共に、e−SATAコネクタ311の各信号線とUSB/SATA−SATA変換制御LSI316とが遮断される。
[ステップS102]USB/SATA−SATA変換制御LSI316は、USBコネクタ312を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS103]USB/SATA−SATA変換制御LSI316は、USBコネクタ312を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ312を介してUSBコマンドを送受信していれば(ステップS103 YES)、処理はステップS104に進められる。一方、USBコネクタ312を介してUSBコマンドを送受信していなければ(ステップS103 NO)、処理はステップS92に進められる。
[ステップS104]USB/SATA−SATA変換制御LSI316は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS103に進められる。
なお、本実施の形態では、ステップS96およびステップS104で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第4の実施の形態に係るストレージサブシステム310によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム310のアクセスを行う場合に適する。一例として通常時はストレージサブシステム310をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム310のアクセスを行うような使用方法が可能である。
また、BUSラインスイッチ319a,319bにより、接続するインタフェースに応じて各信号線の接続および遮断を切り替えるので、USB/SATA−SATA変換制御LSI316に対して接続されないインタフェースの信号線を遮断できる。これにより、USB/SATA−SATA変換制御LSI316を余分な信号入力から保護できる。
(第4の実施の形態の変形例)
次に、第4の実施の形態の変形例について説明する。上記の第4の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第4の実施の形態では、インタフェース判定処理においてストレージサブシステム310がUSBインタフェースによる他の機器との接続を優先して判定するが、第4の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム310がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第4の実施の形態と異なる。
図18および図19は、第4の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図18および図19に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム310の電源投入時に実行される。
[ステップS111]USB/SATA−SATA変換制御LSI316は、e−SATA側汎用入出力ポート316aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS111 YES)、処理はステップS121に進められる。一方、入力信号がHレベルであれば(ステップS111 NO)、処理はステップS112に進められる。
[ステップS112]USB/SATA−SATA変換制御LSI316は、USB側汎用入出力ポート316bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS112 YES)、処理はステップS113に進められる。一方、入力信号がLレベルであれば(ステップS112 NO)、処理はステップS111に進められる。
[ステップS113]USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオンに切り替えると共に、BUSラインスイッチ319bをオフに切り替える。これにより、USBコネクタ312の各信号線とUSB/SATA−SATA変換制御LSI316とが接続されると共に、e−SATAコネクタ311の各信号線とUSB/SATA−SATA変換制御LSI316とが遮断される。
[ステップS114]USB/SATA−SATA変換制御LSI316は、USBコネクタ312を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS115]USB/SATA−SATA変換制御LSI316は、USBコネクタ312を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ312を介してUSBコマンドを送受信していれば(ステップS115 YES)、処理はステップS116に進められる。一方、USBコネクタ312を介してUSBコマンドを送受信していなければ(ステップS115 NO)、処理はステップS111に進められる。
[ステップS116]USB/SATA−SATA変換制御LSI316は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS115に進められる。
[ステップS121]USB/SATA−SATA変換制御LSI316は、BUSラインスイッチ319aをオフに切り替えると共に、BUSラインスイッチ319bをオンに切り替える。これにより、USBコネクタ312の各信号線とUSB/SATA−SATA変換制御LSI316とが遮断されると共に、e−SATAコネクタ311の各信号線とUSB/SATA−SATA変換制御LSI316とが接続される。
[ステップS122]USB/SATA−SATA変換制御LSI316は、e−SATAコネクタ311を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS123]USB/SATA−SATA変換制御LSI316は、e−SATAコネクタ311を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ311を介してe−SATAコマンドを送受信していれば(ステップS123 YES)、処理はステップS124に進められる。一方、e−SATAコネクタ311を介してe−SATAコマンドを送受信していなければ(ステップS123 NO)、処理はステップS112に進められる。
[ステップS124]USB/SATA−SATA変換制御LSI316は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS123に進められる。
なお、本実施の形態では、ステップS116およびステップS124で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第4の実施の形態の変形例に係るストレージサブシステム310によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム310のアクセスを行う場合に適する。
また、BUSラインスイッチ319a,319bにより、接続するインタフェースに応じて各信号線の接続および遮断を切り替えるので、USB/SATA−SATA変換制御LSI316に対して接続されないインタフェースの信号線を遮断できる。これにより、USB/SATA−SATA変換制御LSI316を余分な信号入力から保護できる。
[第5の実施の形態]
次に第5の実施の形態について説明する。上記の第2の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第5の実施の形態は、物理層リセットポートのリセットをオンにすることにより、e−SATAインタフェースおよびUSBインタフェースのうち接続しないインタフェースの動作を抑制する場合の例である。
第2の実施の形態では、USB/SATA−SATA変換制御LSIは、e−SATAコネクタの信号線およびUSBコネクタの信号線と常に接続されている。これに対して、第5の実施の形態では、USB/SATA−SATA変換制御LSIの物理層リセットポートのリセットをオンにして、e−SATAインタフェースおよびUSBインタフェースのうち、接続しないインタフェースの動作を抑制する。
図20は、第5の実施の形態の回路構成を示す図である。図20に従って、ストレージサブシステム410の回路構成について説明する。図20に示す例では、ストレージサブシステム410は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ411、USBコネクタ412を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ418a1、SATA信号コネクタ418a2を有する。また、ストレージサブシステム410は、USB/SATA−SATA変換制御LSI416を有する。
USB/SATA−SATA変換制御LSI416に対しては、e−SATAコネクタ411によりコンピュータ20aからのe−SATA信号、USBコネクタ412によりコンピュータ20bからのUSB信号、SATA信号コネクタ418a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはDCジャック413からの5V電源の供給を受けて、インタフェース変換プリント板415に設けられた回路に供給されると共に、SATA電源コネクタ418a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI416には、汎用入出力ポートとして、e−SATA側汎用入出力ポート416a,416c、USB側汎用入出力ポート416b,416dが用意されている。また、USB/SATA−SATA変換制御LSI416は、リセットをオンにすることによりe−SATAコネクタ411の信号線との間の入出力信号の送受信を無効にするe−SATA側物理層リセットポート416e、リセットをオンにすることによりUSBコネクタ412の信号線との間の入出力信号の送受信を無効にするUSB側物理層リセットポート416fを有する。e−SATA側物理層リセットポート416eおよびUSB側物理層リセットポート416fは、リセット部として機能する。
USB/SATA−SATA変換制御LSI416は、e−SATA側汎用入出力ポート416cによって、e−SATAインタフェースにより信号が入出力される端子「RXIN」および端子「RXIP」を無効にする制御信号を出力する。また、USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416dによって、USBインタフェースにより信号が入出力される端子「DM」および端子「DP」を無効にする制御信号を出力する。
USB/SATA−SATA変換制御LSI416は、USBインタフェースにより他の機器と接続する場合、e−SATA側汎用入出力ポート416cを用いて制御信号を送信し、e−SATA側汎用入出力ポート416cと接続されているe−SATA側物理層リセットポート416eのリセットをオンにし、e−SATAコネクタ411の信号線との間で送受信される信号を無効にする。また、USB/SATA−SATA変換制御LSI416は、e−SATAインタフェースにより他の機器と接続する場合、USB側汎用入出力ポート416dを用いて制御信号を送信し、USB側汎用入出力ポート416dと接続されているUSB側物理層リセットポート416fのリセットをオンにし、e−SATAコネクタ411の信号線との間で送受信される信号を無効にする。
e−SATAコネクタ411は、第2の実施の形態で説明したe−SATAに関する規格上の端子である7本の端子を有する。
e−SATAコネクタ411では、端子「2」、端子「3」、端子「5」、端子「6」は、信号を伝達する信号端子であり、USB/SATA−SATA変換制御LSI416に接続されている。また、e−SATAコネクタ411では、端子「1」、端子「7」は接地端子となり、端子「4」は開放端子となる。また、端子「4」は、USB/SATA−SATA変換制御LSI416のe−SATA側汎用入出力ポート416aに接続され、USB/SATA−SATA変換制御LSI416により電圧が検出される。端子「4」は、DCジャック413からの電力を利用して抵抗R42でプルアップされる。
また、USBコネクタ412は、4本の端子を有する。USBコネクタ412が有する端子のうち端子「4」が接地端子である。また、端子「2」および端子「3」が信号端子であり、USB/SATA−SATA変換制御LSI416に接続されている。また、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI416のUSB側汎用入出力ポート416bに接続され、USB/SATA−SATA変換制御LSI416により電圧が検出される。端子「1」は、接地に対して抵抗R41でプルダウンされる。
USB/SATA−SATA変換制御LSI416とSATA信号コネクタ418a2とは、SATA信号コネクタ418a2内にある信号端子を介して接続される。
SATA電源コネクタ418a1は、ハードディスクドライブ14に電源を供給するコネクタであり、DCジャック413から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
本実施の形態のUSB/SATA−SATA変換制御LSI416では、e−SATAコネクタ411の接続は、e−SATAコネクタ411の端子「4」をフローティングおよびプルアップ処理し、e−SATA側汎用入出力ポート416aに入力モードとして接続することにより検出される。
USB/SATA−SATA変換制御LSI416は、e−SATA側汎用入出力ポート416aにより、端子「4」の電圧値を検出する。この端子「4」の電圧値により、e−SATAコネクタ411の接続が検出される。e−SATA側汎用入出力ポート416aへの入力信号がLレベルであれば、USB/SATA−SATA変換制御LSI416は、e−SATAコネクタ411を接続する。このとき、USB/SATA−SATA変換制御LSI416は、USB側物理層リセットポート416fのリセットをオンにし、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ411を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ412の端子「1」に対してUSB側汎用入出力ポート416bが入力モードで接続されている。これにより、USB/SATA−SATA変換制御LSI416は、USBコネクタ412の端子「1」から供給されるVBUS電圧でUSBコネクタ412の接続を検出する。USB側汎用入出力ポート416bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI416は、USBコネクタ12を接続する。このとき、USB/SATA−SATA変換制御LSI416は、e−SATA側物理層リセットポート416eのリセットをオンにし、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ412を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
図21および図22は、第5の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI416がe−SATAコネクタ411およびUSBコネクタ412のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図21および図22に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム410の電源投入時に実行される。
[ステップS131]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS131 YES)、処理はステップS141に進められる。一方、入力信号がLレベルであれば(ステップS131 NO)、処理はステップS132に進められる。
[ステップS132]USB/SATA−SATA変換制御LSI416は、e−SATA側汎用入出力ポート416aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS132 YES)、処理はステップS133に進められる。一方、入力信号がHレベルであれば(ステップS132 NO)、処理はステップS131に進められる。
[ステップS133]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416dから制御信号を送信し、USB側物理層リセットポート416fのリセットをオンにする。これにより、USBコネクタ412の各信号線とUSB/SATA−SATA変換制御LSI416との間の入出力信号の送受信が無効になる。
[ステップS134]USB/SATA−SATA変換制御LSI416は、e−SATAコネクタ411を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS135]USB/SATA−SATA変換制御LSI416は、e−SATAコネクタ411を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ411を介してe−SATAコマンドを送受信していれば(ステップS135 YES)、処理はステップS136に進められる。一方、e−SATAコネクタ411を介してe−SATAコマンドを送受信していなければ(ステップS135 NO)、処理はステップS131に進められる。
[ステップS136]USB/SATA−SATA変換制御LSI416は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS135に進められる。
[ステップS141]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416cから制御信号を送信し、e−SATA側物理層リセットポート416eのリセットをオンにする。これにより、e−SATAコネクタ411の各信号線とUSB/SATA−SATA変換制御LSI416との間の入出力信号の送受信が無効になる。
[ステップS142]USB/SATA−SATA変換制御LSI416は、USBコネクタ412を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS143]USB/SATA−SATA変換制御LSI416は、USBコネクタ412を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ412を介してUSBコマンドを送受信していれば(ステップS143 YES)、処理はステップS144に進められる。一方、USBコネクタ412を介してUSBコマンドを送受信していなければ(ステップS143 NO)、処理はステップS132に進められる。
[ステップS144]USB/SATA−SATA変換制御LSI416は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS143に進められる。
なお、本実施の形態では、ステップS136およびステップS144で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第5の実施の形態に係るストレージサブシステム410によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム410のアクセスを行う場合に適する。一例として通常時はストレージサブシステム410をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム410のアクセスを行うような使用方法が可能である。
また、e−SATA側物理層リセットポート416eおよびUSB側物理層リセットポート416fにより、接続しない方のインタフェースの信号の入出力を無効にする。これにより、USB/SATA−SATA変換制御LSI416を余分な信号入力から保護できる。
(第5の実施の形態の変形例)
次に、第5の実施の形態の変形例について説明する。上記の第5の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第5の実施の形態では、インタフェース判定処理においてストレージサブシステム410がUSBインタフェースによる他の機器との接続を優先して判定するが、第5の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム410がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第5の実施の形態と異なる。
図23および図24は、第5の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図23および図24に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム410の電源投入時に実行される。
[ステップS151]USB/SATA−SATA変換制御LSI416は、e−SATA側汎用入出力ポート416aの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS151 YES)、処理はステップS161に進められる。一方、入力信号がHレベルであれば(ステップS151 NO)、処理はステップS152に進められる。
[ステップS152]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS152 YES)、処理はステップS153に進められる。一方、入力信号がLレベルであれば(ステップS152 NO)、処理はステップS151に進められる。
[ステップS153]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416cから制御信号を送信し、e−SATA側物理層リセットポート416eのリセットをオンにする。これにより、e−SATAコネクタ411の各信号線とUSB/SATA−SATA変換制御LSI416との間の入出力信号の送受信が無効になる。
[ステップS154]USB/SATA−SATA変換制御LSI416は、USBコネクタ412を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS155]USB/SATA−SATA変換制御LSI416は、USBコネクタ412を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ412を介してUSBコマンドを送受信していれば(ステップS155 YES)、処理はステップS156に進められる。一方、USBコネクタ412を介してUSBコマンドを送受信していなければ(ステップS155 NO)、処理はステップS151に進められる。
[ステップS156]USB/SATA−SATA変換制御LSI416は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS155に進められる。
[ステップS161]USB/SATA−SATA変換制御LSI416は、USB側汎用入出力ポート416dから制御信号を送信し、USB側物理層リセットポート416fのリセットをオンにする。これにより、USBコネクタ412の各信号線とUSB/SATA−SATA変換制御LSI416との間の入出力信号の送受信が無効になる。
[ステップS162]USB/SATA−SATA変換制御LSI416は、e−SATAコネクタ411を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS163]USB/SATA−SATA変換制御LSI416は、e−SATAコネクタ411を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ411を介してe−SATAコマンドを送受信していれば(ステップS163 YES)、処理はステップS164に進められる。一方、e−SATAコネクタ411を介してe−SATAコマンドを送受信していなければ(ステップS163 NO)、処理はステップS152に進められる。
[ステップS164]USB/SATA−SATA変換制御LSI416は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS163に進められる。
なお、本実施の形態では、ステップS156およびステップS164で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第5の実施の形態の変形例に係るストレージサブシステム410によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム410のアクセスを行う場合に適する。
また、e−SATA側物理層リセットポート416eおよびUSB側物理層リセットポート416fにより、接続しない方のインタフェースの信号の入出力を無効にする。これにより、USB/SATA−SATA変換制御LSI416を余分な信号入力から保護できる。
[第6の実施の形態]
次に第6の実施の形態について説明する。上記の第4の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第6の実施の形態は、e−SATAコネクタおよびUSBコネクタからストレージサブシステムで使用する電源の供給を受ける場合であって、接続するインタフェースをBUSラインスイッチで切り替えるときの例である。
第4の実施の形態では、BUSラインスイッチにより接続するインタフェースに応じて各信号線の接続および遮断を切り替えると共に、ストレージサブシステムで使用する電源については、DCジャックから供給を受ける。これに対して、第6の実施の形態では、BUSラインスイッチにより接続するインタフェースに応じて各信号線の接続および遮断を切り替える点では共通するが、ストレージサブシステムで使用する電源については、e−SATAコネクタおよびUSBコネクタから供給を受ける点で異なる。
図25は、第6の実施の形態の回路構成を示す図である。図25に従って、ストレージサブシステム510の回路構成について説明する。図25に示す例では、ストレージサブシステム510は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ511、USBコネクタ512を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ518a1、SATA信号コネクタ518a2を有する。また、ストレージサブシステム510は、USB/SATA−SATA変換制御LSI516を有する。
USB/SATA−SATA変換制御LSI516に対しては、e−SATAコネクタ511によりコンピュータ20aからのe−SATA信号、USBコネクタ512によりコンピュータ20bからのUSB信号、SATA信号コネクタ518a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはe−SATAコネクタ511およびUSBコネクタ512からそれぞれ供給された5V電源を電源合成回路520で合成して得られた電源が、インタフェース変換プリント板515に設けられた回路に供給されると共に、SATA電源コネクタ518a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI516には、汎用入出力ポートとして、e−SATA側汎用入出力ポート516a,516c、USB側汎用入出力ポート516b,516dが用意されている。
また、USB/SATA−SATA変換制御LSI516は、e−SATA側汎用入出力ポート516cを用いて制御信号を送信し、e−SATA側汎用入出力ポート516cと接続されているBUSラインスイッチ519bを制御する。また、USB/SATA−SATA変換制御LSI516は、USB側汎用入出力ポート516dを用いて制御信号を送信し、USB側汎用入出力ポート516dと接続されているBUSラインスイッチ519aを制御する。
e−SATAコネクタ511は、第2の実施の形態で説明したe−SATAに関する規格上の端子である7本の他、電源供給用の端子として端子「VBUS」および端子「GND」を有する。
e−SATAコネクタ511では、端子「2」、端子「3」、端子「5」、端子「6」は、信号を伝達する信号端子であり、BUSラインスイッチ519bを介してUSB/SATA−SATA変換制御LSI516に接続されている。また、e−SATAコネクタ511では、端子「1」、端子「4」、端子「7」は接地端子となる。
また、USBコネクタ512は、4本の端子を有する。USBコネクタ512が有する端子のうち端子「4」が接地端子である。また、端子「2」および端子「3」が信号端子であり、BUSラインスイッチ519aを介してUSB/SATA−SATA変換制御LSI516に接続されている。また、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI516のUSB側汎用入出力ポート516bに抵抗51を挟んで接続され、USB/SATA−SATA変換制御LSI516により電圧が検出される。
USB/SATA−SATA変換制御LSI516とSATA信号コネクタ518a2とは、SATA信号コネクタ518a2内にある信号端子を介して接続される。
SATA電源コネクタ518a1は、ハードディスクドライブ14に電源を供給するコネクタであり、電源合成回路520を介してe−SATAコネクタ511およびUSBコネクタ512から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
BUSラインスイッチ519aは、USB/SATA−SATA変換制御LSI516の制御に基づいて、USBコネクタ512の各信号線とUSB/SATA−SATA変換制御LSI516とを接続状態または遮断状態に切り替えるスイッチである。BUSラインスイッチ519aは、USB側汎用入出力ポート516dでUSB/SATA−SATA変換制御LSI516と接続されている。
BUSラインスイッチ519bは、USB/SATA−SATA変換制御LSI516の制御に基づいて、e−SATAコネクタ511の各信号線とUSB/SATA−SATA変換制御LSI516とを接続状態または遮断状態に切り替えるスイッチである。BUSラインスイッチ519bは、USB側汎用入出力ポート516cでUSB/SATA−SATA変換制御LSI516と接続されている。
本実施の形態のUSB/SATA−SATA変換制御LSI516では、e−SATAコネクタ511の接続は、e−SATAコネクタ511の端子「VBUS」に対してe−SATA側汎用入出力ポート516aを入力モードとして接続して、端子「VBUS」から供給されるVBUS電圧により検出される。e−SATA側汎用入出力ポート516aへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI516は、e−SATAコネクタ511を接続する。このとき、USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオフにすると共にBUSラインスイッチ519bをオンにし、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ511を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ512の端子「1」に対してUSB側汎用入出力ポート516bが入力モードで接続されている。これにより、USB/SATA−SATA変換制御LSI516は、USBコネクタ512の端子「1」から供給されるVBUS電圧でUSBコネクタ512の接続を検出する。USB側汎用入出力ポート516bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI516は、USBコネクタ512を接続する。このとき、USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオンにすると共にBUSラインスイッチ519bをオフにし、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ512を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
図26および図27は、第6の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI516がe−SATAコネクタ511およびUSBコネクタ512のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図26および図27に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム510の電源投入時に実行される。
[ステップS171]USB/SATA−SATA変換制御LSI516は、USB側汎用入出力ポート516bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS171 YES)、処理はステップS181に進められる。一方、入力信号がLレベルであれば(ステップS171 NO)、処理はステップS172に進められる。
[ステップS172]USB/SATA−SATA変換制御LSI516は、e−SATA側汎用入出力ポート516aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS172 YES)、処理はステップS173に進められる。一方、入力信号がLレベルであれば(ステップS172 NO)、処理はステップS171に進められる。
[ステップS173]USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオフに切り替えると共に、BUSラインスイッチ519bをオンに切り替える。これにより、USBコネクタ512の各信号線とUSB/SATA−SATA変換制御LSI516とが遮断されると共に、e−SATAコネクタ511の各信号線とUSB/SATA−SATA変換制御LSI516とが接続される。
[ステップS174]USB/SATA−SATA変換制御LSI516は、e−SATAコネクタ511を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS175]USB/SATA−SATA変換制御LSI516は、e−SATAコネクタ511を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ511を介してe−SATAコマンドを送受信していれば(ステップS175 YES)、処理はステップS176に進められる。一方、e−SATAコネクタ511を介してe−SATAコマンドを送受信していなければ(ステップS175 NO)、処理はステップS171に進められる。
[ステップS176]USB/SATA−SATA変換制御LSI516は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS175に進められる。
[ステップS181]USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオンに切り替えると共に、BUSラインスイッチ519bをオフに切り替える。これにより、USBコネクタ512の各信号線とUSB/SATA−SATA変換制御LSI516とが接続されると共に、e−SATAコネクタ511の各信号線とUSB/SATA−SATA変換制御LSI516とが遮断される。
[ステップS182]USB/SATA−SATA変換制御LSI516は、USBコネクタ512を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS183]USB/SATA−SATA変換制御LSI516は、USBコネクタ512を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ512を介してUSBコマンドを送受信していれば(ステップS183 YES)、処理はステップS184に進められる。一方、USBコネクタ512を介してUSBコマンドを送受信していなければ(ステップS183 NO)、処理はステップS172に進められる。
[ステップS184]USB/SATA−SATA変換制御LSI516は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS183に進められる。
なお、本実施の形態では、ステップS176およびステップS184で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第6の実施の形態に係るストレージサブシステム510によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム510のアクセスを行う場合に適する。一例として通常時はストレージサブシステム510をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム510のアクセスを行うような使用方法が可能である。
また、電源の供給をe−SATAコネクタ511およびUSBコネクタ512から受けるので、他の外部電源が不要になる。
また、BUSラインスイッチ519a,519bにより、接続するインタフェースに応じて各信号線の接続および遮断を切り替えるので、USB/SATA−SATA変換制御LSI516に対して接続されないインタフェースの信号線を遮断できる。これにより、USB/SATA−SATA変換制御LSI516を余分な信号入力から保護できる。
(第6の実施の形態の変形例)
次に、第6の実施の形態の変形例について説明する。上記の第6の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第6の実施の形態では、インタフェース判定処理においてストレージサブシステム510がUSBインタフェースによる他の機器との接続を優先して判定するが、第6の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム510がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第6の実施の形態と異なる。
図28および図29は、第6の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図28および図29に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム510の電源投入時に実行される。
[ステップS191]USB/SATA−SATA変換制御LSI516は、e−SATA側汎用入出力ポート516aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS191 YES)、処理はステップS201に進められる。一方、入力信号がLレベルであれば(ステップS191 NO)、処理はステップS192に進められる。
[ステップS192]USB/SATA−SATA変換制御LSI516は、USB側汎用入出力ポート516bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS192 YES)、処理はステップS193に進められる。一方、入力信号がLレベルであれば(ステップS192 NO)、処理はステップS191に進められる。
[ステップS193]USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオンに切り替えると共に、BUSラインスイッチ519bをオフに切り替える。これにより、USBコネクタ512の各信号線とUSB/SATA−SATA変換制御LSI516とが接続されると共に、e−SATAコネクタ511の各信号線とUSB/SATA−SATA変換制御LSI516とが遮断される。
[ステップS194]USB/SATA−SATA変換制御LSI516は、USBコネクタ512を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS195]USB/SATA−SATA変換制御LSI516は、USBコネクタ512を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ512を介してUSBコマンドを送受信していれば(ステップS195 YES)、処理はステップS196に進められる。一方、USBコネクタ512を介してUSBコマンドを送受信していなければ(ステップS195 NO)、処理はステップS191に進められる。
[ステップS196]USB/SATA−SATA変換制御LSI516は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS195に進められる。
[ステップS201]USB/SATA−SATA変換制御LSI516は、BUSラインスイッチ519aをオフに切り替えると共に、BUSラインスイッチ519bをオンに切り替える。これにより、USBコネクタ512の各信号線とUSB/SATA−SATA変換制御LSI516とが遮断されると共に、e−SATAコネクタ511の各信号線とUSB/SATA−SATA変換制御LSI516とが接続される。
[ステップS202]USB/SATA−SATA変換制御LSI516は、e−SATAコネクタ511を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS203]USB/SATA−SATA変換制御LSI516は、e−SATAコネクタ511を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ511を介してe−SATAコマンドを送受信していれば(ステップS203 YES)、処理はステップS204に進められる。一方、e−SATAコネクタ511を介してe−SATAコマンドを送受信していなければ(ステップS203 NO)、処理はステップS191に進められる。
[ステップS204]USB/SATA−SATA変換制御LSI516は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS203に進められる。
なお、本実施の形態では、ステップS196およびステップS204で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第6の実施の形態の変形例に係るストレージサブシステム510によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム510のアクセスを行う場合に適する。
また、電源の供給をe−SATAコネクタ511およびUSBコネクタ512から受けるので、他の外部電源が不要になる。
また、BUSラインスイッチ519a,519bにより、接続するインタフェースに応じて各信号線の接続および遮断を切り替えるので、USB/SATA−SATA変換制御LSI516に対して接続されないインタフェースの信号線を遮断できる。これにより、USB/SATA−SATA変換制御LSI516を余分な信号入力から保護できる。
[第7の実施の形態]
次に第7の実施の形態について説明する。上記の第5の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第7の実施の形態は、e−SATAコネクタおよびUSBコネクタからストレージサブシステムで使用する電源の供給を受ける場合であって、物理層リセットポートのリセットをオンにすることにより接続しないインタフェースの動作を抑制するときの例である。
第5の実施の形態では、物理層リセットポートのリセットをオンにすることにより接続しないインタフェースの動作を抑制すると共に、ストレージサブシステムで使用する電源については、DCジャックから供給を受ける。これに対して、第7の実施の形態では、物理層リセットポートのリセットをオンにすることにより接続しないインタフェースの動作を抑制する点では共通するが、ストレージサブシステムで使用する電源については、e−SATAコネクタおよびUSBコネクタから供給を受ける点で異なる。
図30は、第7の実施の形態の回路構成を示す図である。図30に従って、ストレージサブシステム610の回路構成について説明する。図30に示す例では、ストレージサブシステム610は、コンピュータ20a,20bと接続される側のコネクタとして、e−SATAコネクタ611、USBコネクタ612を有する。また、ハードディスクドライブ14側のコネクタとして、SATA電源コネクタ618a1、SATA信号コネクタ618a2を有する。また、ストレージサブシステム610は、USB/SATA−SATA変換制御LSI616を有する。
USB/SATA−SATA変換制御LSI616に対しては、e−SATAコネクタ611によりコンピュータ20aからのe−SATA信号、USBコネクタ612によりコンピュータ20bからのUSB信号、SATA信号コネクタ618a2によりハードディスクドライブ14からのSATA信号が接続される。一方、電源に関してはe−SATAコネクタ611およびUSBコネクタ612からそれぞれ供給された5V電源を電源合成回路620で合成して得られた電源が、インタフェース変換プリント板615に設けられた回路に供給されると共に、SATA電源コネクタ618a1を介して接続されたハードディスクドライブ14に供給される。
USB/SATA−SATA変換制御LSI616には、汎用入出力ポートとして、e−SATA側汎用入出力ポート616a,616c、USB側汎用入出力ポート616b,616dが用意されている。また、USB/SATA−SATA変換制御LSI616は、リセットをオンにすることによりe−SATAコネクタ611の信号線との間の入出力信号の送受信を無効にするe−SATA側物理層リセットポート616e、リセットをオンにすることによりUSBコネクタ612の信号線との間の入出力信号の送受信を無効にするUSB側物理層リセットポート616fを有する。
USB/SATA−SATA変換制御LSI616は、e−SATA側汎用入出力ポート616cによって、e−SATAインタフェースにより信号が入出力される端子「RXIN」および端子「RXIP」を無効にする制御信号を出力する。また、USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616dによって、USBインタフェースにより信号が入出力される端子「DM」および端子「DP」を無効にする制御信号を出力する。
USB/SATA−SATA変換制御LSI616は、USBインタフェースにより他の機器と接続する場合、e−SATA側汎用入出力ポート616cを用いて制御信号を送信し、e−SATA側汎用入出力ポート616cと接続されているe−SATA側物理層リセットポート616eのリセットをオンにし、e−SATAコネクタ611の信号線との間で送受信される信号を無効にする。また、USB/SATA−SATA変換制御LSI616は、e−SATAインタフェースにより他の機器と接続する場合、USB側汎用入出力ポート616dを用いて制御信号を送信し、USB側汎用入出力ポート616dと接続されているUSB側物理層リセットポート616fのリセットをオンにし、e−SATAコネクタ611の信号線との間で送受信される信号を無効にする。
e−SATAコネクタ611は、第2の実施の形態で説明したe−SATAに関する規格上の端子である7本の他、電源供給用の端子として端子「VBUS」および端子「GND」を有する。
e−SATAコネクタ611では、端子「2」、端子「3」、端子「5」、端子「6」は、信号を伝達する信号端子であり、USB/SATA−SATA変換制御LSI616に接続されている。また、e−SATAコネクタ611では、端子「1」、端子「4」、端子「7」は接地端子となる。
また、USBコネクタ612は、4本の端子を有する。USBコネクタ612が有する端子のうち端子「4」が接地端子である。また、端子「2」および端子「3」が信号端子であり、USB/SATA−SATA変換制御LSI616に接続されている。また、端子「1」が電源端子である。また、端子「1」は、USB/SATA−SATA変換制御LSI616のUSB側汎用入出力ポート616bに抵抗61を挟んで接続され、USB/SATA−SATA変換制御LSI616により電圧が検出される。
USB/SATA−SATA変換制御LSI616とSATA信号コネクタ618a2とは、SATA信号コネクタ618a2内にある信号端子を介して接続される。
SATA電源コネクタ618a1は、ハードディスクドライブ14に電源を供給するコネクタであり、電源合成回路620を介してe−SATAコネクタ611およびUSBコネクタ612から供給される電源を用いて、ハードディスクドライブ14に電源を供給する。
本実施の形態のUSB/SATA−SATA変換制御LSI616では、e−SATAコネクタ611の接続は、e−SATAコネクタ611の端子「VBUS」に対してe−SATA側汎用入出力ポート616aを入力モードとして接続して、端子「VBUS」から供給されるVBUS電圧により検出される。e−SATA側汎用入出力ポート616aへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI616は、e−SATAコネクタ611を接続する。このとき、USB/SATA−SATA変換制御LSI616は、USB側物理層リセットポート616fのリセットをオンにし、レジスタ設定等のe−SATAインタフェースを使用する処理を行い、e−SATAコネクタ611を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
また、USBコネクタ612の端子「1」に対してUSB側汎用入出力ポート616bが入力モードで接続されている。これにより、USB/SATA−SATA変換制御LSI616は、USBコネクタ612の端子「1」から供給されるVBUS電圧でUSBコネクタ612の接続を検出する。USB側汎用入出力ポート616bへの入力信号がHレベルであれば、USB/SATA−SATA変換制御LSI616は、USBコネクタ12を接続する。このとき、USB/SATA−SATA変換制御LSI616は、e−SATA側物理層リセットポート616eのリセットをオンにし、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ612を使用してハードディスクドライブ14と他の機器との信号の送受信を行う。
図31および図32は、第7の実施の形態のインタフェース判定処理を示すフローチャートである。インタフェース判定処理は、USB/SATA−SATA変換制御LSI616がe−SATAコネクタ611およびUSBコネクタ612のいずれを使用してハードディスクドライブ14と他の機器とを接続するかを判定する処理である。本実施の形態のインタフェース判定処理では、USBインタフェースによる接続が優先して判断され、USBインタフェースによる接続が検出されない場合に、e−SATAインタフェースによる接続の検出が行われる。以下では、図31および図32に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム610の電源投入時に実行される。
[ステップS211]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS211 YES)、処理はステップS221に進められる。一方、入力信号がLレベルであれば(ステップS211 NO)、処理はステップS212に進められる。
[ステップS212]USB/SATA−SATA変換制御LSI616は、e−SATA側汎用入出力ポート616aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS212 YES)、処理はステップS213に進められる。一方、入力信号がLレベルであれば(ステップS212 NO)、処理はステップS211に進められる。
[ステップS213]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616dから制御信号を送信し、USB側物理層リセットポート616fのリセットをオンにする。これにより、USBコネクタ612の各信号線とUSB/SATA−SATA変換制御LSI616との間の入出力信号の送受信が無効になる。
[ステップS214]USB/SATA−SATA変換制御LSI616は、e−SATAコネクタ611を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS215]USB/SATA−SATA変換制御LSI616は、e−SATAコネクタ611を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ611を介してe−SATAコマンドを送受信していれば(ステップS215 YES)、処理はステップS216に進められる。一方、e−SATAコネクタ611を介してe−SATAコマンドを送受信していなければ(ステップS215 NO)、処理はステップS211に進められる。
[ステップS216]USB/SATA−SATA変換制御LSI616は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS215に進められる。
[ステップS221]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616cから制御信号を送信し、e−SATA側物理層リセットポート616eのリセットをオンにする。これにより、e−SATAコネクタ611の各信号線とUSB/SATA−SATA変換制御LSI616との間の入出力信号の送受信が無効になる。
[ステップS222]USB/SATA−SATA変換制御LSI616は、USBコネクタ612を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS223]USB/SATA−SATA変換制御LSI616は、USBコネクタ612を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ612を介してUSBコマンドを送受信していれば(ステップS223 YES)、処理はステップS224に進められる。一方、USBコネクタ612を介してUSBコマンドを送受信していなければ(ステップS223 NO)、処理はステップS211に進められる。
[ステップS224]USB/SATA−SATA変換制御LSI616は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS223に進められる。
なお、本実施の形態では、ステップS216およびステップS224で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第7の実施の形態に係るストレージサブシステム610によれば、USBインタフェースおよびe−SATAインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、USBインタフェースがe−SATAインタフェースよりも優先して検出されるので、例えば、広く普及しており接続が容易なUSBインタフェースによる接続を優先してストレージサブシステム610のアクセスを行う場合に適する。一例として通常時はストレージサブシステム610をデスクトップ型のコンピュータに対して高速なe−SATAインタフェースのみで接続しておき、一時的にモバイル端末についてデータの送受信を行う場合に、USBインタフェースで接続したモバイル端末接続を優先してストレージサブシステム610のアクセスを行うような使用方法が可能である。
また、電源の供給をe−SATAコネクタ611およびUSBコネクタ612から受けるので、他の外部電源が不要になる。
また、e−SATA側物理層リセットポート616e、USB側物理層リセットポート616fにより、接続しない方のインタフェースの信号の入出力を無効にする。これにより、USB/SATA−SATA変換制御LSI616を余分な信号入力から保護できる。
(第7の実施の形態の変形例)
次に、第7の実施の形態の変形例について説明する。上記の第7の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。
第7の実施の形態では、インタフェース判定処理においてストレージサブシステム610がUSBインタフェースによる他の機器との接続を優先して判定するが、第7の実施の形態の変形例は、インタフェース判定処理においてストレージサブシステム610がe−SATAインタフェースによる他の機器との接続を優先して判定する点で、第7の実施の形態と異なる。
図33および図34は、第7の実施の形態の変形例のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図33および図34に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム610の電源投入時に実行される。
[ステップS231]USB/SATA−SATA変換制御LSI616は、e−SATA側汎用入出力ポート616aの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS231 YES)、処理はステップS241に進められる。一方、入力信号がLレベルであれば(ステップS231 NO)、処理はステップS232に進められる。
[ステップS232]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616bの入力信号がHレベルであるか否かを判定する。入力信号がHレベルであれば(ステップS232 YES)、処理はステップS233に進められる。一方、入力信号がLレベルであれば(ステップS232 NO)、処理はステップS231に進められる。
[ステップS233]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616cから制御信号を送信し、e−SATA側物理層リセットポート616eのリセットをオンにする。これにより、e−SATAコネクタ611の各信号線とUSB/SATA−SATA変換制御LSI616との間の入出力信号の送受信が無効になる。
[ステップS234]USB/SATA−SATA変換制御LSI616は、USBコネクタ612を用いて、ハードディスクドライブ14をコンピュータ20b等の他の機器と接続する。
[ステップS235]USB/SATA−SATA変換制御LSI616は、USBコネクタ612を介して他の機器との間でUSBコマンドを送受信しているか否かを判定する。USBコネクタ612を介してUSBコマンドを送受信していれば(ステップS235 YES)、処理はステップS236に進められる。一方、USBコネクタ612を介してUSBコマンドを送受信していなければ(ステップS235 NO)、処理はステップS231に進められる。
[ステップS236]USB/SATA−SATA変換制御LSI616は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS235に進められる。
[ステップS241]USB/SATA−SATA変換制御LSI616は、USB側汎用入出力ポート616dから制御信号を送信し、USB側物理層リセットポート616fのリセットをオンにする。これにより、USBコネクタ612の各信号線とUSB/SATA−SATA変換制御LSI616との間の入出力信号の送受信が無効になる。
[ステップS242]USB/SATA−SATA変換制御LSI616は、e−SATAコネクタ611を用いて、ハードディスクドライブ14をコンピュータ20a等の他の機器と接続する。
[ステップS243]USB/SATA−SATA変換制御LSI616は、e−SATAコネクタ611を介して他の機器との間でe−SATAコマンドを送受信しているか否かを判定する。e−SATAコネクタ611を介してe−SATAコマンドを送受信していれば(ステップS243 YES)、処理はステップS244に進められる。一方、e−SATAコネクタ611を介してe−SATAコマンドを送受信していなければ(ステップS243 NO)、処理はステップS232に進められる。
[ステップS244]USB/SATA−SATA変換制御LSI616は、タイマをセットして経過時間を計測し、所定時間待機する。その後、処理はステップS243に進められる。
なお、本実施の形態では、ステップS236およびステップS244で所定時間待機することにより、それぞれUSBコマンドまたはe−SATAコマンドの送受信を確認する頻度を調整するが、これに限らず、所定時間待機することなく、USBコマンドまたはe−SATAコマンドの送受信を確認してもよい。
以上、第7の実施の形態の変形例に係るストレージサブシステム610によれば、e−SATAインタフェースおよびUSBインタフェースの両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースがUSBインタフェースよりも優先して検出されるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム610のアクセスを行う場合に適する。
また、電源の供給をe−SATAコネクタ611およびUSBコネクタ612から受けるので、他の外部電源が不要になる。
また、e−SATA側物理層リセットポート616e、USB側物理層リセットポート616fにより、接続しない方のインタフェースの信号の入出力を無効にする。これにより、USB/SATA−SATA変換制御LSI616を余分な信号入力から保護できる。
[第8の実施の形態]
次に第8の実施の形態について説明する。上記の第2の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第8の実施の形態は、USBインタフェースがUSB−SATA変換制御LSIを介して接続される一方、e−SATAインタフェースが直接接続される場合の例である。
第2の実施の形態では、e−SATAインタフェースおよびUSBインタフェースのいずれも、ハードディスクUSB/SATA−SATA変換制御LSIを介してハードディスクドライブと接続される。これに対して、第8の実施の形態では、USBインタフェースがUSB−SATA変換制御LSIを介してハードディスク制御LSIと接続される一方、e−SATAインタフェースが直接ハードディスク制御LSIと接続される点で異なる。
また、USB−SATA変換制御LSIがハードディスクプリント板に配置されている点で異なる。
図35は、第8の実施の形態のハードディスクプリント板を示す図である。図35に示すように、ストレージサブシステム710のハードディスクドライブ714には、ハードディスクプリント板715、ディスク部723が設けられている。また、ハードディスクプリント板715上には、USB−SATA変換制御LSI716、ROM717、e−SATAコネクタ711、USBコネクタ712、ハードディスク制御LSI721が設けられている。
USB−SATA変換制御LSI716は、ストレージサブシステム710を制御する。ROM717は、ストレージサブシステム710の動作に必要なプログラムやデータを記憶する。また、USB−SATA変換制御LSI716は、経過時間を計測するタイマを有する。また、USB−SATA変換制御LSI716は、USBコネクタ712を介してUSBインタフェースで接続されたコンピュータ20b等の他の機器との間で送受信される入出力信号をSATA形式の信号に変換して、ハードディスク制御LSI721との間で送受信する。
USB−SATA変換制御LSI716は、図36において後述するようにe−SATAコネクタ711がUSB−SATA変換制御LSI716を介さずに信号の送受信を可能に接続されているが、e−SATAコネクタ711の接地端子の1つを開放端子とし、開放端子のみを図示しない汎用入出力ポートに接続する。USB−SATA変換制御LSI716では、e−SATAコネクタ711の接続は、第2の実施の形態と同様、前述したe−SATAコネクタ711の開放端子をフローティングおよびプルアップ処理し、入力モードとして接続することにより検出される。
USB−SATA変換制御LSI716は、e−SATAコネクタ711の開放端子と接続された汎用入出力ポートにより、開放端子の電圧値を検出する。この開放端子の電圧値により、e−SATAコネクタ711の接続が検出される。入出力ポートへの入力信号がLレベルであれば、USB−SATA変換制御LSI716は、e−SATAコネクタ711がコンピュータ20a等の他の機器と接続されているものとして、SATA PHY7612の出力ポートを、信号を送受信不可能なハイインピーダンスに設定すると共に、e−SATAコネクタ711を使用してハードディスクドライブを制御するハードディスク制御LSI721と他の機器との信号の送受信を行うように制御する。
一方、入出力ポートへの入力信号がHレベルであれば、USB−SATA変換制御LSI716は、USBコネクタ712をコンピュータ20b等の他の機器と接続するために、SATA PHY7612の出力ポートを、信号を送受信可能なアクティブに設定すると共に、レジスタ設定等のUSBインタフェースを使用する処理を行い、USBコネクタ712を使用してハードディスク制御LSI721と他の機器との信号の送受信を可能にする。
e−SATAコネクタ711は、e−SATAにより他の機器と接続するコネクタである。e−SATAコネクタ711は、USB−SATA変換制御LSI716を介さずに信号の送受信を可能に接続されている。USBコネクタ712は、USBにより他の機器と接続するコネクタである。
ハードディスク制御LSI721には、ディスク部723が接続される。ハードディスク制御LSI721は、e−SATAコネクタ711により送受信される入出力信号およびUSBコネクタ712により送受信される入出力信号のアクセスにおいてディスク部723を制御する。
ディスク部723は、記憶媒体であるハードディスクおよびハードディスクを回転させると共に、アクセスして読み書きを行う機構である。
また、ストレージサブシステム710は、USBコネクタ712から電源の供給を受けることができると共に、図示しないDCジャックを有し、ACアダプタ等の外部電源の供給を受けることができる。
また、e−SATAコネクタ711は、ハードディスク制御LSI721のファームウエアのダウンロードを行う。また、USBコネクタ712により、ハードディスク制御LSI721のファームウエアのダウンロードを行ってもよい。
図36は、第8の実施の形態のUSB−SATA変換制御LSIを示す図である。図36に示すように、USB−SATA変換制御LSI716は、USB PHY7601、USB Core7602、Registers7603、Command Buffers7604を有する。また、USB−SATA変換制御LSI716は、Data Buffer & Data Flow Control7605、MPU7606、Instruction SRAM7607、Serial Flash Control7608を有する。
また、USB−SATA変換制御LSI716は、SATA Control Block7609、SATA Transport Layer7610、SATA Link Layer7611、SATA PHY7612を有する。また、USB−SATA変換制御LSI716は、Serial Flash Control7608を介して、Serial Flash7613と接続されている。
USB PHY7601は、USBの物理インタフェースであり、高速シリアル通信用のアナログ回路である。USB Core7602は、USBの論理回路である。Registers7603には、汎用入出力ポート等が接続されており、USB−SATA変換制御LSI716外部と信号のやり取りをする。Command Buffers7604は、コンピュータ20a,20b等の他の機器から入力されるコマンドをバッファリングする。Data Buffer & Data Flow Control7605は、外部から入力されるデータをバッファリングする。
MPU7606は、Registers7603、Command Buffers7604、Data Buffer & Data Flow Control7605、USB PHY7601等を制御する。すなわち、MPU7606は、Registers7603において、開放端子の電圧値が「L」になったことが検知されると、e−SATAを用いてデータの送受信を行うように制御する。また、同様に、MPU7606は、開放端子の電圧値が「L」になり、USB PHY7601がリセットされると、e−SATAを用いてデータの送受信を行うように制御する。
Instruction SRAM7607は、Serial Flash Control7608の制御に用いられるSRAMである。Serial Flash7613には、ハードディスクドライブ714を制御する上で必要な識別情報が記憶されている。Serial Flash Control7608は、Serial Flash7613を用いた制御を行う。
SATA PHY7612は、SATAインタフェースの高速シリアル通信用アナログ回路である。SATA PHY7612には、ハードディスク制御LSI721を介してディスク部723が接続される。また、e−SATAコネクタ711を使用してハードディスク制御LSI721が他の機器と接続され、SATA PHY7612の出力ポートを使用しない場合には、USB−SATA変換制御LSI716は、SATA PHY7612の出力ポートを使用しないので、ハイインピーダンスの状態に設定する。
SATA Link Layer7611は、SATAインタフェースの上位階層(SATA PHY7612)の制御を行う。また、SATA Transport Layer7610は、SATAインタフェースのデータ転送制御を行う。SATA Control Block7609は、SATA Transport Layer7610の制御を行う。
図37および図38は、第8の実施の形態のインタフェース判定処理を示すフローチャートである。本実施の形態のインタフェース判定処理では、e−SATAインタフェースによる接続が優先して判断され、e−SATAインタフェースによる接続が検出されない場合に、USBインタフェースによる接続の検出が行われる。以下では、図37および図38に示すインタフェース判定処理をフローチャートのステップ番号に沿って説明する。インタフェース判定処理は、例えば、ストレージサブシステム710の電源投入時に実行される。
[ステップS251]USB−SATA変換制御LSI716は、e−SATAコネクタ711の接地端子の1つを開放端子とし、開放端子を図示しない汎用入出力ポートに接続する。そして、汎用入出力ポートの入力信号がLレベルであるか否かを判定する。入力信号がLレベルであれば(ステップS251 YES)、処理はステップS252に進められる。一方、入力信号がHレベルであれば(ステップS251 NO)、処理はステップS261に進められる。
[ステップS252]USB−SATA変換制御LSI716は、SATA PHY7612の出力ポートをハイインピーダンスに設定する。これにより、SATA PHY7612とハードディスク制御LSI721との間で信号は送受信されず、SATA PHY7612によるハードディスクドライブ14との通信は行われない。
[ステップS253]USB−SATA変換制御LSI716は、e−SATAコネクタ711を用いて、ハードディスク制御LSI721をコンピュータ20a等の他の機器と接続する。その後、処理は終了する。
[ステップS261]USB−SATA変換制御LSI716は、SATA PHY7612の出力ポートをアクティブに設定する。これにより、SATA PHY7612とハードディスク制御LSI721との間で信号の送受信が可能になり、SATA PHY7612によるハードディスクドライブ14との通信が行われる。
[ステップS262]USB−SATA変換制御LSI716は、USBコネクタ712を用いて、ハードディスク制御LSI721をコンピュータ20b等の他の機器と接続する。
[ステップS263]USB−SATA変換制御LSI716は、タイマをセットして経過時間を計測し、所定時間(例えば、10分)待機する。その後、処理はステップS251に進められる。
なお、本実施の形態では、ステップS263で所定時間待機することにより、e−SATAコネクタ711の開放端子の信号レベルを確認する頻度を調整するが、これに限らず、所定時間待機することなく、開放端子の信号レベルを確認してもよい。
以上、第8の実施の形態に係るストレージサブシステム710によれば、e−SATAインタフェースのケーブルが接続された状態では、e−SATAインタフェースを使用して接続される。一方、e−SATAインタフェースのケーブルが接続されていない状態では、USBインタフェースを使用した接続が可能になる。これにより、両方のケーブルが接続された状態で、使用するインタフェースの自動選択ができるため、マルチホスト対応が可能となる。
また、e−SATAインタフェースをUSBインタフェースに対して優先して使用するインタフェースの自動選択ができるので、例えば、高速なe−SATAインタフェースによる接続を優先してストレージサブシステム710のアクセスを行う場合に適する。
また、USB−SATA変換制御LSI716を、ハードディスクプリント板815に配置する。これにより、部品点数および製造時の工数を削減でき、生産の向上やコストダウンが図れる。
[第9の実施の形態]
次に第9の実施の形態について説明する。上記の第8の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第9の実施の形態は、第8の実施の形態との間でハードディスクプリント板を共通して使用するが、外部にはUSBコネクタのみが設けられ、e−SATAインタフェースを使用せず、USBインタフェースを使用して他の機器との接続を行う場合の例である。
第8の実施の形態では、e−SATAインタフェースおよびUSBインタフェースのいずれも直接またはUSB−SATA変換制御LSIを介してハードディスクドライブと接続される。これに対して、第9の実施の形態では、USBインタフェースがUSB−SATA変換制御LSIおよびハードディスク制御LSIを介して他の機器とハードディスクドライブとが接続される一方、e−SATAインタフェースのコネクタが設けられておらず、e−SATAインタフェースが他の機器とハードディスクドライブとの接続に使用しない点で異なる。
図39は、第9の実施の形態のストレージサブシステムを使用するシステムの構成を示す図である。第9の実施の形態のストレージサブシステム810は、USBインタフェースによりコンピュータと接続可能である。
図39に示すストレージサブシステム810は、USBコネクタ812により、USBケーブル842を介してコンピュータ820と接続されている。
ストレージサブシステム810は、USBケーブル842により他の機器と接続するUSBコネクタ812を有する。コンピュータ820は、ストレージサブシステム810が有するハードディスクドライブとアクセスすることによりデータの読み書きを行う。コンピュータ820は、USBコネクタ822を有する。
ストレージサブシステム810は、図39に示すようにコンピュータ820に接続された状態において、コンピュータ820の接続要求に対して適切に対応することで、例えば、コンピュータ820からのデータをストレージサブシステム810にバックアップを取ったり、コンピュータ820でストレージサブシステム810からデータを読み出したりすることができる。
図40は、第9の実施の形態のストレージサブシステムを示す図である。図40に示すように、ストレージサブシステム810は、ハードディスクドライブ814を有する。また、ハードディスクドライブ814は、ハードディスクプリント板815を有する。
ハードディスクプリント板815上には、第8の実施の形態のハードディスクプリント板715と同様に、USB−SATA変換制御LSI(図示省略)、ROM(図示省略)、USBコネクタ812、ハードディスク制御LSI(図示省略)が設けられている。しかし、ハードディスクプリント板815上には、第8の実施の形態と異なり、接続しないe−SATAコネクタは設けられていない。
USBコネクタ812は、接続されているUSBケーブル842を介して、USBにより他の機器と接続すると共に、接続する他の機器から電源の供給を受けるコネクタである。
なお、本実施の形態では、USBコネクタ812を有することによりUSBインタフェースで他の機器との接続を行うが、これに限らず、USBコネクタを設けずにe−SATAコネクタを設けて、e−SATAインタフェースで他の機器との接続を行ってもよい。
以上、第9の実施の形態に係るストレージサブシステム810によれば、第8の実施の形態のストレージサブシステム710との間で、ハードディスクプリント板815を共通に使用して、USBインタフェースのみで使用するストレージサブシステムを製造することができる。これにより、部品の共通化を図ることができ、これらの製品の生産効率を向上させると共に、設計変更に柔軟に対応することができる。
また、USB−SATA変換制御LSI816を、ハードディスクプリント板815に配置する。これにより、部品点数および製造時の工数を削減でき、生産の向上やコストダウンが図れる。
[第10の実施の形態]
次に第10の実施の形態について説明する。上記の第8の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第10の実施の形態は、第8の実施の形態および第9の実施の形態との間でハードディスクプリント板を共通して使用する。また、外部にe−SATAコネクタおよびUSBコネクタが設けられ、e−SATAインタフェースを使用して他の機器と接続して信号の送受信を行うが、USBインタフェースを使用して他の機器と信号の送受信は行わず、USBインタフェースは電源の供給を受けるために使用する場合の例である。
第8の実施の形態では、e−SATAインタフェースおよびUSBインタフェースのいずれも直接またはUSB−SATA変換制御LSIを介してハードディスクドライブと接続される。これに対して、第10の実施の形態では、e−SATAインタフェースがUSB−SATA変換制御LSIおよびハードディスク制御LSIを介してハードディスクドライブと接続される一方、USBインタフェースは電源の供給を受けるために使用され、ハードディスクドライブとの信号の送受信に使用しない点で異なる。
e−SATAインタフェースでは、通常、電源を供給する機能を有さないので、e−SATAインタフェースでストレージサブシステムを使用する場合に、別途電源を確保しなければならない場合がある。一方、USBは電源供給機能が規定されているため、接続する機器やその周辺の環境においてUSBインタフェースが使用可能であれば、USBインタフェースを介して電源の供給を受けることが期待できる。本実施の形態では、e−SATAインタフェースによる高速なデータ通信を使用しながら、USBインタフェースを利用して電源の供給を受けることができる。
図41は、第10の実施の形態のストレージサブシステムを使用するシステムの構成を示す図である。第10の実施の形態のストレージサブシステム910は、e−SATAインタフェースによりコンピュータと接続可能である。
図41に示すストレージサブシステム910は、e−SATAコネクタ911により、e−SATAケーブル941を介してコンピュータ920と接続されていると共に、USBコネクタ912により、電源ケーブル942を介してコンピュータ920と接続されている。
ストレージサブシステム910は、e−SATAケーブル941により他の機器と接続するe−SATAコネクタ911、ストレージサブシステム910の稼働に使用する電力を伝達する電源ケーブル942により電源の供給を受けるために他の機器と接続するUSBコネクタ912を有する。コンピュータ920は、ストレージサブシステム910が有するハードディスクドライブとアクセスすることによりデータの読み書きを行う。コンピュータ920は、e−SATAコネクタ921、USBコネクタ922を有する。コンピュータ920は、USBコネクタ922によりストレージサブシステム910に対して電源ケーブル942を介して電源を供給する。
ストレージサブシステム910は、図41に示すようにコンピュータ920に接続された状態において、コンピュータ920の接続要求に対して適切に対応することで、例えば、コンピュータ920からのデータをストレージサブシステム910にバックアップを取ったり、コンピュータ920でストレージサブシステム910からデータを読み出したりすることができる。
図42は、第10の実施の形態のストレージサブシステムを示す図である。図42に示すように、ストレージサブシステム910は、ハードディスクドライブ914を有する。また、ハードディスクドライブ914は、ハードディスクプリント板915を有する。
ハードディスクプリント板915上には、第8の実施の形態のハードディスクプリント板715と同様、USB−SATA変換制御LSI(図示省略)、ROM(図示省略)、e−SATAコネクタ911、USBコネクタ912、ハードディスク制御LSI(図示省略)が設けられている。
e−SATAコネクタ911は、接続されているe−SATAケーブル941を介して、e−SATAにより他の機器と接続するコネクタである。USBコネクタ912は、接続されている電源ケーブル942を介して、接続する他の機器から電源の供給を受けるコネクタである。
なお、本実施の形態では電源ケーブル942でコンピュータ920のUSBコネクタ922とストレージサブシステム910のUSBコネクタ912とを接続するが、これに限らず、USBケーブルで接続してもよい。
以上、第10の実施の形態に係るストレージサブシステム910によれば、接続されている機器との間で、e−SATAインタフェースで高速なデータ通信を使用しながら、USBインタフェースにより電源の供給を受けることができる。
また、第8の実施の形態のストレージサブシステム710および第9の実施の形態のストレージサブシステム810との間で、ハードディスクプリント板を共通に使用して、USBインタフェースのみで使用するストレージサブシステムを製造することができる。これにより、部品の共通化を図ることができ、これらの製品の生産効率を向上させると共に、設計変更に柔軟に対応することができる。
また、USB−SATA変換制御LSI916を、ハードディスクプリント板915に配置する。これにより、部品点数および製造時の工数を削減でき、生産の向上やコストダウンが図れる。
[第10の実施の形態の変形例]
次に第10の実施の形態の変形例について説明する。上記の第10の実施の形態との相違点を中心に説明し、同様の事項については同一の符号を用いると共に説明を省略する。第10の実施の形態の変形例は、第8の実施の形態、第9の実施の形態および第10の実施の形態との間でハードディスクプリント板を共通して使用する、コンピュータ等の機器に組み込まれる内蔵ハードディスクドライブ装置である。また、ハードディスクプリント板にSATAコネクタおよびUSBコネクタが設けられ、内蔵用のSATAインタフェースを使用して組み込まれている機器と接続して信号の送受信を行うが、USBインタフェースを使用して組み込まれている機器と信号の送受信は行わず、USBインタフェースは電源の供給を受けるために使用する場合の例である。
第10の実施の形態では、接続される他の機器との間で、外付け用のe−SATAインタフェースでハードディスクドライブと接続され、USBインタフェースは電源の供給を受けるために使用される。これに対して、第10の実施の形態の変形例では、組み込まれている機器との間で、内蔵用のSATAインタフェースでハードディスクドライブと接続され、USBインタフェースは電源の供給を受けるために使用される点で異なる。
SATAインタフェースでは、通常、電源を供給する機能を有さないので、SATAインタフェースで内蔵ハードディスクドライブを使用する場合に、別途電源を用意しなければならない場合がある。一方、USBは電源供給機能が規定されているため、内蔵する機器においてUSBインタフェースが使用可能であれば、USBインタフェースを介して電源の供給を受けることが期待できる。本実施の形態では、SATAインタフェースによる高速なデータ通信を使用しながら、USBインタフェースを利用して電源の供給を受けることができる。
図43は、第10の実施の形態の変形例の内蔵ハードディスクドライブ装置を示す図である。図43に示すように、内蔵ハードディスクドライブ装置1010は、ハードディスクドライブ1014を有する。また、ハードディスクドライブ1014は、ハードディスクプリント板1015を有する。
ハードディスクプリント板1015上には、第8の実施の形態のハードディスクプリント板715と同様、USB−SATA変換制御LSI(図示省略)、ROM(図示省略)、SATAコネクタ1011、USBコネクタ1012、ハードディスク制御LSI(図示省略)が設けられている。
SATAコネクタ1011は、接続されているSATAケーブル1041等を介して、SATAインタフェースにより他の機器と接続するコネクタである。USBコネクタ1012は、接続されている電源線1042aおよびグランド線1042bを介して、接続する他の機器から電源の供給を受けるコネクタである。
以上、第10の実施の形態の変形例に係る内蔵ハードディスクドライブ装置1010によれば、組み込まれている機器との間で、SATAインタフェースで高速なデータ通信を使用しながら、USBインタフェースにより電源の供給を受けることができる。
また、第8の実施の形態のストレージサブシステム710、第9の実施の形態のストレージサブシステム810、第10の実施の形態の変形例の内蔵ハードディスクドライブ装置1010との間で、ハードディスクプリント板を共通に使用して、USBインタフェースのみで使用する内蔵ハードディスクドライブ装置を製造することができる。これにより、部品の共通化を図ることができ、これらの製品の生産効率を向上させると共に、設計変更に柔軟に対応することができる。
また、外部接続用のUSBインタフェースとPC内蔵用のSATAインタフェース両方を有しており、ケーブルの接続に応じてインタフェースが選択されるため、インタフェース共用装置ができる。
また、USB−SATA変換制御LSI1016を、ハードディスクプリント板1015に配置する。これにより、部品点数および製造時の工数を削減でき、生産の向上やコストダウンが図れる。
なお、以上の実施の形態では、各ストレージサブシステムおよび内蔵ハードディスクドライブ装置は、2つのインタフェースを有する場合について説明したが、これに限らず、2つ以上のインタフェースを有してもよい。
また、以上の実施の形態では、インタフェースとして、e−SATAインタフェースおよびUSBインタフェースを用いる場合について説明したが、これに限らず、その他の規格のインタフェースを用いてもよい。例えば、IEEE(Institute of Electrical and Electronic Engineers)1394や、PATA(Parallel ATA)等を用いてもよい。
また、以上の実施の形態では、ストレージサブシステムおよび内蔵ハードディスクドライブ装置を挙げて説明したが、これは例示であり、コンピュータおよびその他の機器に接続可能なあらゆる電子装置に適用可能である。適用可能な電子装置として、例えば、メモリカード等の外部記憶装置、プリンタ、スキャナ、カードリーダ/ライタ、ノート型コンピュータ、PDA、携帯電話機等の情報処理装置を挙げるが、必ずしもこれらに限らない。
以上、開示の電子装置、接続制御回路および接続制御方法を、図示の実施の形態に基づいて説明したが、上記については単に本発明の原理を示すものである。開示の技術は、多数の変形、変更が当業者にとって可能であり、上記に示し、説明した正確な構成および応用例に限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、開示の技術に他の任意の構成物や工程が付加されてもよい。また、開示の技術は前述した実施の形態のうちの任意の2以上の構成を組み合わせたものであってもよい。また、開示の技術に対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
以上の第1から第10の実施の形態および各実施の形態の変形例に関し、更に以下の付記を開示する。
(付記1) 他の機器と接続可能な接続部を複数有する電子装置であって、
接地用の端子であって接地を予め開放されている開放端子を有する第1の接続部と、
前記第1の接続部の前記開放端子から当該開放端子が接地している状態であることを示す電圧値を検出し、前記接地している状態であることを示す電圧値を検出した場合には、前記第1の接続部を用いて前記他の機器と信号の送受信を行うように制御する制御部と、
を有することを特徴とする電子装置。
(付記2) 前記制御部の制御に基づいて、前記第1の接続部において前記信号を伝達する信号線と前記制御部とが接続されている状態と遮断されている状態とに切り替え可能なスイッチ部を有し、
前記制御部は、接続された前記他の機器との間の前記信号の送受信を制御すると共に、前記第1の接続部を用いて前記他の機器と前記信号の送受信を行うように制御する場合には、前記スイッチ部を前記第1の接続部の信号線と前記制御部とが接続されている状態に切り替えるように制御する一方、前記第1の接続部を用いて前記他の機器と前記信号の送受信を行わないように制御する場合には、前記スイッチ部を前記第1の接続部の信号線と前記制御部とが遮断されている状態に切り替えるように制御することを特徴とする付記1記載の電子装置。
(付記3) 前記制御部は、接続された前記他の機器との間の前記信号の送受信を制御すると共に、前記制御部の制御に基づいて前記第1の接続部において前記信号を伝達する信号線から入力されている信号を無効にするリセット部を有すると共に、前記第1の接続部を用いて前記他の機器と前記信号の送受信を行わないように制御する場合には、前記リセット部によって前記第1の接続部から入力されている信号を無効にするように制御することを特徴とする付記1記載の電子装置。
(付記4) 前記第1の接続部は、前記制御部を介さずに信号の送受信を可能に接続されており、
前記制御部は、前記第1の接続部の前記開放端子から当該開放端子が接地している状態であることを示す電圧値を検出し、前記接地している状態であることを示す電圧値を検出しない場合には、前記第1の接続部を用いて前記他の機器と信号の送受信を行わないように制御することを特徴とする付記1記載の電子装置。
(付記5) 電源を供給する電源端子を有する第2の接続部を有し、
前記制御部は、前記第2の接続部の前記電源端子から前記電源が供給されていることを示す電圧値を検出し、前記電源が供給されていることを示す電圧値を検出すると、前記第2の接続部を用いて前記他の機器と情報の送受信を行うように制御することを特徴とする付記1記載の電子装置。
(付記6) 前記制御部は、前記第1の接続部の前記開放端子の電圧値の検出を優先して行うことを特徴とする付記5記載の電子装置。
(付記7) 前記制御部は、前記第2の接続部の前記電源端子の電圧値の検出を優先して行うことを特徴とする付記5記載の電子装置。
(付記8) 前記制御部は、前記第1の接続部において前記信号を伝達する信号線による前記信号の送受信を検出し、前記第1の接続部による前記信号の送受信が行われていないことを検出した場合には、前記第2の接続部の前記電源端子の電圧値の検出を行うことを特徴とすることを特徴とする付記5記載の電子装置。
(付記9) 前記制御部は、前記第2の接続部において前記信号を伝達する信号線による前記信号の送受信を検出し、前記第2の接続部による前記信号の送受信が行われていないことを検出した場合には、前記第1の接続部の前記電源端子の電圧値の検出を行うことを特徴とすることを特徴とする付記5記載の電子装置。
(付記10) 前記第1の接続部によって前記信号の送受信を行い、
前記第2の接続部によって前記電源の供給を受ける、
ことを特徴とする付記5記載の電子装置。
(付記11) 前記制御部の制御に基づいて、前記第1の接続部において前記信号を伝達する信号線と前記制御部とが接続されている状態と遮断されている状態とに切り替え可能な第1のスイッチ部と、
前記制御部の制御に基づいて、前記第2の接続部において前記信号を伝達する信号線と前記制御部とが接続されている状態と遮断されている状態とに切り替え可能な第2のスイッチ部と、
を有し、
前記制御部は、接続された前記他の機器との間の前記信号の送受信を制御すると共に、前記第1の接続部を用いて前記他の機器と前記信号の送受信を行うように制御する場合には、前記第1のスイッチ部を前記第1の接続部の信号線と前記制御部とが接続されている状態に切り替えると共に前記第2のスイッチ部を前記第2の接続部の信号線と前記制御部とが遮断されている状態に切り替えるように制御する一方、前記第2の接続部を用いて前記他の機器と前記信号の送受信を行うように制御する場合には、前記第1のスイッチ部を前記第1の接続部の信号線と前記制御部とが遮断されている状態に切り替えると共に前記第2のスイッチ部を前記第2の接続部の信号線と前記制御部とが接続されている状態に切り替えるように制御することを特徴とする付記5記載の電子装置。
(付記12) 前記制御部は、前記制御部の制御に基づいて前記第1の接続部において前記信号を伝達する信号線から入力されている信号を無効にする第1のリセット部と、前記制御部の制御に基づいて前記第2の接続部において前記信号を伝達する信号線から入力されている信号を無効にする第2のリセット部と、を有し、接続された前記他の機器との間の前記信号の送受信を制御し、前記第1の接続部を用いて前記他の機器と前記信号の送受信を行うように制御する場合には、前記第2のリセット部によって前記第2の接続部から入力されている信号を無効にするように制御し、前記第2の接続部を用いて前記他の機器と前記信号の送受信を行うように制御する場合には、前記第1のリセット部によって前記第1の接続部から入力されている信号を無効にするように制御することを特徴とする付記5記載の電子装置。
(付記13) 前記電子装置の主な機能を実現する機能部を有し、
前記制御部は、前記機能部と同一のプリント板に配置されていることを特徴とする付記4記載の電子装置。
(付記14) 他の機器と接続可能な接続部を複数有する電子装置であって、
電源を供給可能な電源線を有する第1の接続部と、
前記第1の接続部とは異なる接続部であって、前記電源を供給可能な電源線を有する第2の接続部と、
前記第1の接続部の電源端子から前記電源が供給されていることを示す電圧値を検出し、前記電源が供給されていることを示す電圧値を検出すると、前記第1の接続部を用いて前記他の機器と情報の送受信を行うように制御し、前記第2の接続部の前記電源端子から前記電源が供給されていることを示す電圧値を検出し、前記電源が供給されていることを示す電圧値を検出すると、前記第2の接続部を用いて前記他の機器と情報の送受信を行うように制御する制御部と、
を有することを特徴とする電子装置。
(付記15) 他の機器と接続可能な接続部を複数有する電子装置の接続を制御する制御回路であって、
接地用の端子であって接地を予め開放されている開放端子を有する第1の接続部と、
前記第1の接続部の前記開放端子から当該開放端子が接地している状態であることを示す電圧値を検出し、前記接地している状態であることを示す電圧値を検出した場合には、前記第1の接続部を用いて前記他の機器と信号の送受信を行うように制御する制御部と、
を有することを特徴とする接続制御回路。
(付記16) 他の機器と接続可能な接続部を複数有する電子装置の接続制御方法であって、
接地用の端子であって接地を予め開放されている開放端子を有する第1の接続部の前記開放端子から当該開放端子が接地している状態であることを示す電圧値を検出し、
前記接地している状態であることを示す電圧値を検出した場合には、前記第1の接続部を用いて前記他の機器と信号の送受信を行うように制御する、
ことを特徴とする接続制御方法。
(付記17) 内蔵されている機器と接続可能な接続部を複数有する内蔵電子装置であって、
接地用の端子であって接地を予め開放されている開放端子を有する第1の接続部と、
前記第1の接続部の前記開放端子から当該開放端子が接地している状態であることを示す電圧値を検出し、前記接地している状態であることを示す電圧値を検出した場合には、前記第1の接続部を用いて前記内蔵されている機器と信号の送受信を行うように制御する制御部と、
を有することを特徴とする内蔵電子装置。