JPWO2012137411A1 - インターフェース中継装置およびインターフェース中継方法 - Google Patents
インターフェース中継装置およびインターフェース中継方法 Download PDFInfo
- Publication number
- JPWO2012137411A1 JPWO2012137411A1 JP2013508732A JP2013508732A JPWO2012137411A1 JP WO2012137411 A1 JPWO2012137411 A1 JP WO2012137411A1 JP 2013508732 A JP2013508732 A JP 2013508732A JP 2013508732 A JP2013508732 A JP 2013508732A JP WO2012137411 A1 JPWO2012137411 A1 JP WO2012137411A1
- Authority
- JP
- Japan
- Prior art keywords
- command
- master
- slave
- interface circuit
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Small-Scale Networks (AREA)
Abstract
コマンド判別部(103)は、マスタコマンド(MCD)の中継が不要であると判別した場合、マスタ機器(10)から第1のインターフェース回路(101)を経由して受信したマスタコマンド(MCD)をスレーブ機器(20)に送信しない。この場合、電力制御部(104)は、第2のインターフェース回路(102)の電力モードを低電力モードに設定し、応答制御部(105)は、マスタ機器(10)から第1のインターフェース回路(101)を経由してコマンド判別部(103)によって受信されたマスタコマンド(MCD)に対応する代理応答コマンドをスレーブコマンド(SCD)として第1のインターフェース回路(101)を経由してマスタ機器(10)に送信する。
Description
この発明は、マスタ機器とスレーブ機器との間を中継するインターフェース中継装置に関し、さらに詳しくは、インターフェース中継装置の消費電力の低減化技術に関する。
現在、システムの低消費電力化に伴い、システムを構成する機器本体だけでなく機器の間を接続するインターフェースの消費電力を低減することも検討されている。例えば、シリアルATA規格では、機器の間でデータ転送などの通信が行われていない場合にシリアルATAインターフェースの消費電力を低減するために、通常電力モード(PHY_READY)と2つの低電力モード(Partial,Slumber)が規定されている。また、シリアルATA規格では、PartialモードからPHY_READYモードへの復帰時間が10μsec以内であり、SlumberモードからPHY_READYモードへの復帰時間が10msec以内であれば、機器およびインターフェースのどの部分の消費電力を低減するのかを任意に決定できる。
このようなインターフェースの電力制御の一例として、特許文献1には、ATAインターフェースとシリアルATAインターフェースとの間に設けられたSATAインターフェース制御回路(インターフェース変換器)において、ATAインターフェースを低電力モードに移行させるコマンドであるスリープコマンドの発行または受信が検知された場合に、シリアルATAインターフェースも低電力モードに移行させることが記載されている。さらに、特許文献1には、インターフェース変換の対象となるコマンドの受信に応じてシリアルATAインターフェースがアイドルモード(通常電力モード)へ移行する毎に時間計測を開始し、予め設定された一定時間が計測されても新たなコマンドが受信されなかった場合に、シリアルATAインターフェースを所定の低電力モードに移行させることが記載されている。
なお、機器の間を接続するインターフェースとしては、シリアルATAインターフェースやATAインターフェースの他に、USBインターフェース,IEEE1394インターフェースなど多くのインターフェースがある。
マスタ機器とスレーブ機器との間(例えば、ホストコンピュータと周辺機器との間)でコマンドを送受信することによってマスタ機器がスレーブ機器を制御する場合、コマンドの送受信の開始タイミングはマスタ機器によって決定されることになる。また、スレーブ機器の動作状況によっては、マスタ機器とスレーブ機器との間において同一のコマンド送受信が繰り返される場合がある。例えば、スレーブ機器がアクセス不可能な動作状況からアクセス可能な動作状況になるまでの期間において、マスタ機器によるアクセス要求コマンドの送信とスレーブ機器によるアクセス否定応答コマンドの送信とが交互に繰り返されることになる。そのため、特許文献1のように予め設定された一定時間の間にマスタ機器からのコマンド送信がなければスレーブ機器の電力モードを低電力モードに移行させる場合であっても、マスタ機器からコマンドが送信される毎に、スレーブ機器が応答コマンドを送信できるようにするためにスレーブ機器の電力モードを通常電力モードに復帰させることになる。さらに、マスタ機器によるマスタコマンドの送信時間間隔が予め設定された一定時間よりも短い場合、スレーブ機器の電力モードを低電力モードに移行させることができなくなってしまう。
また、マスタ機器とスレーブ機器との間をインターフェース中継装置によって中継する場合も、マスタ機器からコマンドが送信される毎に、インターフェース中継装置に含まれるスレーブ側のインターフェース回路(インターフェースを経由してスレーブ機器に接続されるインターフェース回路)の電力モードを通常電力モードに復帰させることになる。さらに、マスタ機器によるマスタコマンドの送信時間間隔が予め設定された一定時間よりも短い場合、スレーブ側のインターフェース回路の電力モードを低電力モードに移行させることができなくなってしまう。
以上のように、マスタ機器とスレーブ機器との間において同一のコマンド送受信が繰り返される場合であっても、マスタ機器からコマンドが送信される毎にインターフェース回路の電力モードを通常電力モードに復帰させることになる。そのため、インターフェース回路の低電力期間(低電力モードに維持されている期間)が間欠的になってしまうので、インターフェース中継装置の消費電力を効率的に低減することが困難である。
そこで、この発明は、マスタ機器とスレーブ機器との間を中継するインターフェース中継装置の消費電力を効率的に低減することを目的とする。
この発明の1つの局面に従うと、インターフェース中継装置は、マスタ機器とスレーブ機器との間を中継する装置であって、第1のインターフェースを経由して上記マスタ機器に接続される第1のインターフェース回路と、第2のインターフェース回路を経由して上記スレーブ機器に接続され、且つ、通常電力モードと低電力モードとを切替可能な第2のインターフェース回路と、上記スレーブ機器の動作状況を示した機器状況情報に基づいて上記マスタ機器から上記スレーブ機器へのマスタコマンドの中継の要否を判別し、上記マスタコマンドの中継が必要であると判別した場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記第2のインターフェース回路を経由して上記スレーブ機器に送信し、上記マスタコマンドの中継が不要であると判別した場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記スレーブ機器に送信しないコマンド判別部と、上記コマンド判別部によって上記マスタコマンドの中継が必要であると判別された場合、上記第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別された場合、上記第2のインターフェース回路の電力モードを上記低電力モードに設定する電力制御部と、上記コマンド判別部によって上記マスタコマンドの中継が必要であると判別された場合、上記スレーブ機器から上記第2のインターフェース回路を経由して受信したスレーブコマンドを上記第1のインターフェース回路を経由して上記マスタ機器に送信し、上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別された場合、上記マスタ機器から上記第1のインターフェース回路を経由して上記コマンド判別部によって受信されたマスタコマンドに対応する代理応答コマンドを上記スレーブコマンドとして上記第1のインターフェース回路を経由して上記マスタ機器に送信する応答制御部とを備える。
上記インターフェース中継装置では、マスタコマンドの中継が不要である場合、マスタコマンドに対応する代理応答コマンドが送信されるので、マスタコマンドをスレーブ機器へ送信するために第2のインターフェース回路の電力モードを通常電力モードに復帰させなくても良い。そのため、第2のインターフェース回路の低電力期間(低電力モードに維持されている期間)が間欠的にならないように低電力期間を確保できるので、第2のインターフェース回路の消費電力を効率的に低減でき、その結果、インターフェース中継装置の消費電力も低減できる。
なお、上記機器状況情報は、上記スレーブ機器のアクセスの可否を示し、上記コマンド判別部は、上記スレーブ機器がアクセス可能な動作状況である場合には上記マスタコマンドの中継が必要であると判別し、スレーブ機器がアクセス不可能な動作状況である場合には上記マスタコマンドの中継が不要であると判別しても良い。例えば、上記スレーブ機器は、記憶メディアを装填可能な記憶装置を含み、上記機器状況情報は、上記記憶装置への記憶メディアの装填の有無を示し、上記コマンド判別部は、上記記憶装置に上記記憶メディアが装填されている場合には上記マスタコマンドの中継が必要であると判別し、上記記憶装置に上記記憶メディアが装填されていない場合には上記マスタコマンドの中継が不要であると判別しても良い。また、上記スレーブ機器は、記憶メディアをスピンアップして上記記憶メディアに対してデータを読み書きする記憶装置を含み、上記機器状況情報は、上記記憶メディアのスピンアップが完了したか否かを示し、上記コマンド判別部は、上記記憶メディアのスピンアップが完了している場合には上記マスタコマンドの中継が必要であると判別し、上記記憶メディアのスピンアップが完了していない場合には上記マスタコマンドの中継が不要であると判別しても良い。
また、上記応答制御部は、上記マスタ機器からのマスタコマンドと上記スレーブ機器からのスレーブコマンドとが対応付けられたコマンド対応テーブルを有し、上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別された場合、上記コマンド対応テーブルの中から上記マスタ機器から上記第1のインターフェース回路を経由して上記コマンド判別部によって受信されたマスタコマンドに対応するスレーブコマンドを上記代理応答コマンドとして選出しても良い。
この発明の別の局面に従うと、インターフェース中継装置は、マスタ機器と複数のスレーブ機器との間を中継する装置であって、第1のインターフェースを経由して上記マスタ機器に接続される第1のインターフェース回路と、複数の第2のインターフェースを経由して上記複数のスレーブ機器にそれぞれ接続され、且つ、それぞれが通常電力モードと低電力モードとを切替可能な複数の第2のインターフェース回路と、上記複数のスレーブ機器の動作状況を示した機器状況情報に基づいて上記複数のスレーブ機器の各々について上記マスタ機器からそのスレーブ機器へのマスタコマンドの中継の要否を判別し、上記複数のスレーブ機器のうち上記マスタコマンドの中継が必要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記複数の第2のインターフェース回路のうちそのスレーブ機器に対応する第2のインターフェース回路を経由してそのスレーブ機器に送信し、上記複数のスレーブ機器のうち上記マスタコマンドの中継が不要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドをそのスレーブ機器に送信しないコマンド判別部と、上記複数の第2のインターフェース回路のうち上記コマンド判別部によって上記マスタコマンドの中継が必要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記複数の第2のインターフェース回路のうち上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを上記低電力モードに設定する電力制御部と、上記複数のスレーブ機器のうち上記マスタコマンドの中継が必要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、そのスレーブ機器から上記複数の第2のインターフェース回路のうちそのスレーブ機器に対応する第2のインターフェース回路を経由して受信したスレーブコマンドを上記第1のインターフェース回路を経由して上記マスタ機器に送信し、上記複数のスレーブ機器のうち上記マスタコマンドの中継が不要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、上記マスタ機器から上記第1のインターフェース回路を経由して上記コマンド判別部によって受信されたマスタコマンドに対応する代理応答コマンドを上記スレーブコマンドとして上記第1のインターフェース回路を経由して上記マスタ機器に送信する応答制御部とを備える。
上記インターフェース中継装置では、マスタコマンドの中継が不要である場合、代理応答コマンドが送信されるので、マスタコマンドをコマンド送信先として指定されたスレーブ機器へ送信するために第2のインターフェース回路の電力モードを通常電力モードに復帰させなくても良い。そのため、第2のインターフェース回路の低電力期間が間欠的にならないように低電力期間を確保できるので、第2のインターフェース回路の消費電力を効率的に低減でき、その結果、インターフェース中継装置の消費電力も低減できる。
なお、上記電力制御部は、上記複数の第2のインターフェース回路のうち上記マスタ機器のコマンド送信先として指定されたスレーブ機器に対応する第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記複数の第2のインターフェース回路のうち上記マスタ機器のコマンド送信先として指定されないスレーブ機器に対応する第2のインターフェース回路の電力モードを上記低電力モードに設定しても良い。
上記のように構成することにより、コマンド送信先として指定されないスレーブ機器に対応する第2のインターフェース回路の消費電力を低減できるので、インターフェース中継装置の消費電力をさらに低減できる。
この発明の別の局面に従うと、インターフェース中継方法は、第1のインターフェースを経由してマスタ機器に接続される第1のインターフェース回路と、第2のインターフェースを経由してスレーブ機器に接続され、且つ、通常電力モードと低電力モードとを切替可能な第2のインターフェース回路とを備えるインターフェース中継機器を用いて上記マスタ機器と上記スレーブ機器との間を中継する中継方法であって、上記スレーブ機器の動作状況を示した機器状況情報に基づいて上記マスタ機器から上記スレーブ機器へのマスタコマンドの中継の要否を判別するステップ(a)と、上記ステップ(a)によって上記マスタコマンドの中継が必要であると判別された場合、上記第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記ステップ(a)によって上記マスタコマンドの中継が不要であると判別された場合、上記第2のインターフェース回路の電力モードを上記低電力モードに設定するステップ(b)と、上記ステップ(a)によって上記マスタコマンドの中継が必要であると判別された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記第2のインターフェース回路を経由して上記スレーブ機器に送信し、上記スレーブ機器から上記第2のインターフェース回路を経由して受信したスレーブコマンドを上記第1のインターフェース回路を経由して上記マスタ機器に送信するステップ(c)と、上記ステップ(a)によって上記マスタコマンドの中継が不要であると判別された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記スレーブ機器に送信せずに、そのマスタコマンドに対応する代理応答コマンドを上記スレーブコマンドとして上記第1のインターフェース回路を経由して上記マスタ機器に送信するステップ(d)とを備える。
上記インターフェース中継方法では、マスタコマンドの中継が不要である場合、代理応答コマンドが送信されるので、マスタコマンドをスレーブ機器へ送信するために第2のインターフェース回路の電力モードを通常電力モードに復帰させなくても良い。そのため、第2のインターフェース回路の低電力期間が間欠的にならないように低電力期間を確保できるので、第2のインターフェース回路の消費電力を効率的に低減でき、その結果、インターフェース中継装置の消費電力も低減できる。
この発明の別の局面に従うと、インターフェース中継方法は、第1のインターフェースを経由してマスタ機器に接続される第1のインターフェース回路と、複数の第2のインターフェースを経由して複数のスレーブ機器にそれぞれ接続され、且つ、それぞれが通常電力モードと低電力モードとを切替可能な複数の第2のインターフェース回路とを備えるインターフェース中継装置を用いて上記マスタ機器と上記複数のスレーブ機器との間を中継する方法であって、上記複数のスレーブ機器の動作状況を示した機器状況情報に基づいて、上記複数のスレーブ機器の各々について上記マスタ機器からそのスレーブ機器へのマスタコマンドの中継の要否を判別するステップ(a)と、上記複数の第2のインターフェース回路のうち上記ステップ(a)によって上記マスタコマンドの中継が必要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記複数の第2のインターフェース回路のうち上記ステップ(a)によって上記マスタコマンドの中継が不要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを上記低電力モードに設定するステップ(b)と、上記ステップ(a)によって上記複数のスレーブ機器のうち上記マスタコマンドの中継が必要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記複数の第2のインターフェース回路のうちそのスレーブ機器に対応する第2のインターフェース回路を経由してそのスレーブ機器に送信し、そのスレーブ機器から上記複数の第2のインターフェース回路のうちそのスレーブ機器に対応する第2のインターフェース回路を経由して受信したスレーブコマンドを上記第1のインターフェース回路を経由して上記マスタ機器に送信するステップ(c)と、上記ステップ(a)によって上記複数のスレーブ機器のうち上記マスタコマンドの中継が不要であると判別されたスレーブ機器が上記マスタ機器のコマンド送信先として指定された場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドをそのスレーブ機器に送信せずに、そのマスタコマンドに対応する代理応答コマンドを上記スレーブコマンドとして上記第1のインターフェース回路を経由して上記マスタ機器に送信するステップ(d)とを備える。
上記インターフェース中継方法では、マスタコマンドの中継が不要である場合、代理応答コマンドが送信されるので、マスタコマンドをコマンド送信先として指定されたスレーブ機器へ送信するために第2のインターフェース回路の電力モードを通常電力モードに復帰させなくても良い。そのため、第2のインターフェース回路の低電力期間が間欠的にならないように低電力期間を確保できるので、第2のインターフェース回路の消費電力を効率的に低減でき、その結果、インターフェース中継装置の消費電力も低減できる。
以上のように、第2のインターフェース回路の低電力期間が間欠的にならないように低電力期間を確保できるので、第2のインターフェース回路の消費電力を効率的に低減でき、その結果、インターフェース中継装置の消費電力も低減できる。
以下、実施の形態を図面を参照して詳しく説明する。なお、図中同一または相当部分には同一の符号を付しその説明は繰り返さない。
(実施形態1)
図1は、実施形態1によるインターフェース中継装置1の構成例を示す。インターフェース中継装置1は、マスタ機器10とスレーブ機器20とを中継するものであり、インターフェース回路101,102と、コマンド判別部103と、電力制御部104と、応答制御部105とを備える。
図1は、実施形態1によるインターフェース中継装置1の構成例を示す。インターフェース中継装置1は、マスタ機器10とスレーブ機器20とを中継するものであり、インターフェース回路101,102と、コマンド判別部103と、電力制御部104と、応答制御部105とを備える。
〔マスタ機器,スレーブ機器〕
マスタ機器10は、スレーブ機器20を制御するためのマスタコマンドMCDをインターフェース中継装置1を経由してスレーブ機器20に送信する。スレーブ機器20は、マスタコマンドMCDに対する応答結果に応じたスレーブコマンドSCDをインターフェース中継装置1を経由してマスタ機器10に送信する。このように、マスタ機器10とスレーブ機器20との間でコマンドを送受信することによって、マスタ機器10がスレーブ機器20を制御する。例えば、マスタ機器10は、ホストコンピュータであっても良く、スレーブ機器20は、外部記憶装置(例えば、光ディスクドライブ,テープドライブ,リムーバブルディスクドライブ,メモリカードドライブなど)のような周辺機器であっても良い。また、マスタコマンドMCDは、スレーブ機器20へのアクセスを要求するアクセス要求コマンドであっても良い。スレーブコマンドSCDは、スレーブ機器20へのアクセスの可否を示したコマンド(アクセス肯定応答コマンドやアクセス否定応答コマンドなど)であっても良い。
マスタ機器10は、スレーブ機器20を制御するためのマスタコマンドMCDをインターフェース中継装置1を経由してスレーブ機器20に送信する。スレーブ機器20は、マスタコマンドMCDに対する応答結果に応じたスレーブコマンドSCDをインターフェース中継装置1を経由してマスタ機器10に送信する。このように、マスタ機器10とスレーブ機器20との間でコマンドを送受信することによって、マスタ機器10がスレーブ機器20を制御する。例えば、マスタ機器10は、ホストコンピュータであっても良く、スレーブ機器20は、外部記憶装置(例えば、光ディスクドライブ,テープドライブ,リムーバブルディスクドライブ,メモリカードドライブなど)のような周辺機器であっても良い。また、マスタコマンドMCDは、スレーブ機器20へのアクセスを要求するアクセス要求コマンドであっても良い。スレーブコマンドSCDは、スレーブ機器20へのアクセスの可否を示したコマンド(アクセス肯定応答コマンドやアクセス否定応答コマンドなど)であっても良い。
〔インターフェース回路〕
インターフェース回路101は、インターフェース100を経由してマスタ機器10に接続され、インターフェース回路102は、インターフェース200を経由してスレーブ機器20に接続される。また、インターフェース回路102は、通常電力モードと低電力モードとを切替可能である。インターフェース回路102の電力モードが通常電力モードに設定されている場合、インターフェース回路102は、スレーブ機器20との間でコマンド(マスタコマンドMCDやスレーブコマンドSCDなど)の送受信が可能である。一方、インターフェース回路102の電力モードが低電力モードに設定されている場合、インターフェース回路102の消費電力は通常電力モードに設定されている場合よりも低いが、インターフェース回路102とスレーブ機器20との間で所定のコマンド(例えば、スレーブ機器20の動作状況の変化を通知するための状況通知コマンドや、低電力モードから通常電力モードへの復帰を指示するための復帰指示コマンドなど)を送受信できる程度にインターフェース回路102の電力が確保されている。なお、ここでは、スレーブ機器20も、インターフェース回路102と同様に、通常電力モードと低電力モードとを切替可能であるものとする。
インターフェース回路101は、インターフェース100を経由してマスタ機器10に接続され、インターフェース回路102は、インターフェース200を経由してスレーブ機器20に接続される。また、インターフェース回路102は、通常電力モードと低電力モードとを切替可能である。インターフェース回路102の電力モードが通常電力モードに設定されている場合、インターフェース回路102は、スレーブ機器20との間でコマンド(マスタコマンドMCDやスレーブコマンドSCDなど)の送受信が可能である。一方、インターフェース回路102の電力モードが低電力モードに設定されている場合、インターフェース回路102の消費電力は通常電力モードに設定されている場合よりも低いが、インターフェース回路102とスレーブ機器20との間で所定のコマンド(例えば、スレーブ機器20の動作状況の変化を通知するための状況通知コマンドや、低電力モードから通常電力モードへの復帰を指示するための復帰指示コマンドなど)を送受信できる程度にインターフェース回路102の電力が確保されている。なお、ここでは、スレーブ機器20も、インターフェース回路102と同様に、通常電力モードと低電力モードとを切替可能であるものとする。
例えば、インターフェース200がシリアルATAインターフェースである場合、インターフェース回路102およびスレーブ機器20の電力モードとして、通常電力モードに相当するPHY_READYモードと、低電力モードに相当するPartialモードおよびSlumberモードが規定されている。Partialモードにおける消費電力は、PHY_READYモードにおける消費電力よりも低く、Slumberモードにおける消費電力は、Partialモードにおける消費電力よりも低い。また、シリアルATA規格では、PartialモードからPHY_READYモードへの復帰時間が10μsec以内であり、SlumberモードからPHY_READYモードへの復帰時間が10msec以内であれば、インターフェース回路102およびスレーブ機器20のどの部分の消費電力を低減するのかを任意に決定できる。
なお、インターフェース100,200は、シリアルATAインターフェースだけでなく、ATAインターフェース,USBインターフェース,IEEE1394インターフェースなど他のインターフェースであっても良い。また、インターフェース100,200の規格は互いに異なっていても良い。例えば、インターフェース100がUSBインターフェースであり、インターフェース200がシリアルATAインターフェースであっても良い。この場合、インターフェース回路101,102の少なくとも一方がインターフェース変換機能(インターフェース100の規格に準拠したデータをインターフェース200の規格に準拠したデータに変換する機能,およびインターフェース200の規格に準拠したデータをインターフェース100の規格に準拠したデータに変換する機能)を有していても良い。または、インターフェース100,200の規格は互いに同一であっても良い。
〔コマンド判別部〕
コマンド判別部103は、スレーブ機器20の動作状況を示した機器状況情報に基づいて、マスタ機器10からスレーブ機器20へのマスタコマンドMCDの中継の要否を判別する。なお、機器状況情報については後述する。また、コマンド判別部103は、マスタコマンドMCDの中継要否の判別結果に応じて、マスタ機器10からスレーブ機器20へのマスタコマンドMCDの中継を制御する。マスタコマンドMCDの中継が必要であると判別した場合、コマンド判別部103は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをインターフェース回路102を経由してスレーブ機器20に送信する。一方、マスタコマンドMCDの中継が不要であると判別した場合、コマンド判別部103は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをスレーブ機器20に送信しない。
コマンド判別部103は、スレーブ機器20の動作状況を示した機器状況情報に基づいて、マスタ機器10からスレーブ機器20へのマスタコマンドMCDの中継の要否を判別する。なお、機器状況情報については後述する。また、コマンド判別部103は、マスタコマンドMCDの中継要否の判別結果に応じて、マスタ機器10からスレーブ機器20へのマスタコマンドMCDの中継を制御する。マスタコマンドMCDの中継が必要であると判別した場合、コマンド判別部103は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをインターフェース回路102を経由してスレーブ機器20に送信する。一方、マスタコマンドMCDの中継が不要であると判別した場合、コマンド判別部103は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをスレーブ機器20に送信しない。
〔電力制御部〕
電力制御部104は、コマンド判別部103による判別結果に応じて、インターフェース回路102の電力モードを制御する。コマンド判別部103によってマスタコマンドMCDの中継が必要であると判別された場合、電力制御部104は、インターフェース回路102の電力モードを通常電力モードに設定する。一方、コマンド判別部103によってマスタコマンドMCDの中継が不要であると判別された場合、電力制御部104は、インターフェース回路102の電力モードを低電力モードに設定する。
電力制御部104は、コマンド判別部103による判別結果に応じて、インターフェース回路102の電力モードを制御する。コマンド判別部103によってマスタコマンドMCDの中継が必要であると判別された場合、電力制御部104は、インターフェース回路102の電力モードを通常電力モードに設定する。一方、コマンド判別部103によってマスタコマンドMCDの中継が不要であると判別された場合、電力制御部104は、インターフェース回路102の電力モードを低電力モードに設定する。
〔応答制御部〕
応答制御部105は、コマンド判別部103による判別結果に応じて、スレーブ機器20からマスタ機器10へのスレーブコマンドSCDの中継を制御する。コマンド判別部103によってマスタコマンドMCDの中継が必要であると判別された場合、応答制御部105は、スレーブ機器20からインターフェース回路102を経由して受信したスレーブコマンドSCDをインターフェース回路101を経由してマスタ機器10に送信する。一方、コマンド判別部103によってマスタコマンドMCDの中継が不要であると判別された場合、応答制御部105は、マスタ機器10からインターフェース回路101を経由してコマンド判別部103によって受信されたマスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDとしてインターフェース回路101を経由してマスタ機器10に送信する。
応答制御部105は、コマンド判別部103による判別結果に応じて、スレーブ機器20からマスタ機器10へのスレーブコマンドSCDの中継を制御する。コマンド判別部103によってマスタコマンドMCDの中継が必要であると判別された場合、応答制御部105は、スレーブ機器20からインターフェース回路102を経由して受信したスレーブコマンドSCDをインターフェース回路101を経由してマスタ機器10に送信する。一方、コマンド判別部103によってマスタコマンドMCDの中継が不要であると判別された場合、応答制御部105は、マスタ機器10からインターフェース回路101を経由してコマンド判別部103によって受信されたマスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDとしてインターフェース回路101を経由してマスタ機器10に送信する。
また、応答制御部105は、マスタ機器10からのマスタコマンドMCDとスレーブ機器20からのスレーブコマンドSCDとが対応付けられたコマンド対応テーブルを有していても良い。この場合、応答制御部105は、コマンド判別部103によってマスタコマンドMCDの中継が不要であると判別された場合、マスタ機器10からインターフェース回路101を経由してコマンド判別部103によって受信されたマスタコマンドMCDに対応するスレーブコマンドSCDをコマンド対応テーブルの中から代理応答コマンドとして選出しても良い。
〔動作〕
次に、図2を参照して、インターフェース中継装置1による動作について説明する。コマンド判別部103は、機器状況情報に基づいてマスタコマンドMCDの中継の要否を判別し(ST101)、マスタコマンドMCDの中継が不要である場合、電力制御部104は、インターフェース回路102の電力モードを低電力モードに設定する(ST102)。一方、マスタコマンドMCDの中継が必要である場合には、電力制御部104は、インターフェース回路102の電力モードを通常電力モードに設定する(ST103)。次に、コマンド判別部103は、マスタ機器10からのマスタコマンドMCDを受信したか否かを確認する(ST104)。マスタ機器10からのマスタコマンドMCDを受信していない場合には、ステップST101へ進んでステップST101〜ST103が再度実行される。一方、マスタ機器10からのマスタコマンドMCDを受信している場合、コマンド判別部103および応答制御部105は、ステップST101における判別結果に応じて動作する(ST105)。マスタコマンドMCDの中継が不要である場合、コマンド判別部103は、マスタコマンドMCDをスレーブ機器20に送信せず、応答制御部105は、マスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDとしてマスタ機器10に送信する(ST106)。一方、マスタコマンドMCDの中継が必要である場合、コマンド判別部103は、マスタコマンドMCDをスレーブ機器20に送信し、応答制御部105は、スレーブ機器20からのスレーブコマンドSCDをマスタ機器10に送信する(ST107)。次に、インターフェース中継装置1による動作が継続される場合には、ステップST101へ進む(ST108)。
次に、図2を参照して、インターフェース中継装置1による動作について説明する。コマンド判別部103は、機器状況情報に基づいてマスタコマンドMCDの中継の要否を判別し(ST101)、マスタコマンドMCDの中継が不要である場合、電力制御部104は、インターフェース回路102の電力モードを低電力モードに設定する(ST102)。一方、マスタコマンドMCDの中継が必要である場合には、電力制御部104は、インターフェース回路102の電力モードを通常電力モードに設定する(ST103)。次に、コマンド判別部103は、マスタ機器10からのマスタコマンドMCDを受信したか否かを確認する(ST104)。マスタ機器10からのマスタコマンドMCDを受信していない場合には、ステップST101へ進んでステップST101〜ST103が再度実行される。一方、マスタ機器10からのマスタコマンドMCDを受信している場合、コマンド判別部103および応答制御部105は、ステップST101における判別結果に応じて動作する(ST105)。マスタコマンドMCDの中継が不要である場合、コマンド判別部103は、マスタコマンドMCDをスレーブ機器20に送信せず、応答制御部105は、マスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDとしてマスタ機器10に送信する(ST106)。一方、マスタコマンドMCDの中継が必要である場合、コマンド判別部103は、マスタコマンドMCDをスレーブ機器20に送信し、応答制御部105は、スレーブ機器20からのスレーブコマンドSCDをマスタ機器10に送信する(ST107)。次に、インターフェース中継装置1による動作が継続される場合には、ステップST101へ進む(ST108)。
〔具体例〕
次に、図3および図4を参照して、インターフェース中継装置1による動作について具体的に説明する。ここでは、インターフェース200は、シリアルATAインターフェースであり、スレーブ機器20は、動作状況に変化があったことを示した状況通知コマンドNTFCをインターフェース回路102に送信(非同期通知)するものとする。なお、状況通知コマンドNTFCは、インターフェース回路102の電力モードが低電力モードに設定されている場合であっても、インターフェース回路102を経由して応答制御部105に送信可能なコマンドである。また、スレーブ機器20は、時刻t1〜t4の期間および時刻t6以降の期間ではアクセス不可能な動作状況であり、時刻t4〜t6の期間ではアクセス可能な動作状況であるものとする。
次に、図3および図4を参照して、インターフェース中継装置1による動作について具体的に説明する。ここでは、インターフェース200は、シリアルATAインターフェースであり、スレーブ機器20は、動作状況に変化があったことを示した状況通知コマンドNTFCをインターフェース回路102に送信(非同期通知)するものとする。なお、状況通知コマンドNTFCは、インターフェース回路102の電力モードが低電力モードに設定されている場合であっても、インターフェース回路102を経由して応答制御部105に送信可能なコマンドである。また、スレーブ機器20は、時刻t1〜t4の期間および時刻t6以降の期間ではアクセス不可能な動作状況であり、時刻t4〜t6の期間ではアクセス可能な動作状況であるものとする。
時刻t1になると、マスタ機器10は、マスタコマンドMCDとしてアクセス要求コマンドACSREQを送信する。コマンド判別部103は、インターフェース回路101を経由して受信したアクセス要求コマンドACSREQをインターフェース回路102を経由してスレーブ機器20に送信する。スレーブ機器20は、スレーブコマンドSCDとしてアクセス不可能な動作状況であることを示したアクセス否定応答コマンドACSNAKを送信する。応答制御部105は、インターフェース回路102を経由して受信したアクセス否定応答コマンドACSNAKをインターフェース回路101を経由してマスタ機器10に送信する。これにより、マスタ機器10は、スレーブ機器20がアクセス不可能な動作状況であることを認識する。また、応答制御部105は、アクセス否定応答コマンドACSNAKを受信したことをコマンド判別部103に通知する。コマンド判別部103は、応答制御部105からの通知(アクセス否定応答コマンドACSNAKの受信通知)に基づいてスレーブ機器20がアクセス不可能な動作状況であることを認識し、マスタ機器10からスレーブ機器20へのアクセス要求コマンドACSREQの中継が不要であると判別する。
時刻t11になると、スレーブ機器20は、電力管理要求コマンドPMREQを送信する。コマンド判別部103は、インターフェース回路102を経由して受信した電力管理要求コマンドPMREQに応答して、電力管理肯定応答コマンドPMACKをインターフェース回路102を経由してスレーブ機器20に送信する。これにより、スレーブ機器20の電力モードは、通常電力モードから低電力モードへ移行する。また、コマンド判別部103は、マスタ機器10からスレーブ機器20へのアクセス要求コマンドACSREQの中継が不要であると判別しているので、インターフェース回路102の電力モードを低電力モードに設定することを指示するための電力制御指示(低電力指示)を電力制御部104に通知する。電力制御部104は、コマンド判別部103からの通知(すなわち、コマンド判別部103による判別結果)に応答して、インターフェース回路102の電力モードを通常電力モードから低電力モードへ移行させる。
時刻t2になると、マスタ機器10は、アクセス要求コマンドACSREQを再度送信する。このとき、コマンド判別部103は、アクセス要求コマンドACSREQの中継が不要であると判別しているので、アクセス要求コマンドACSREQをスレーブ機器20に送信しない。また、応答制御部105は、アクセス要求コマンドACSREQに対応するアクセス否定応答コマンドACSNAKを代理応答コマンドとして選出し、代理応答コマンド(すなわち、アクセス否定応答コマンドACSNAK)をインターフェース回路101を経由してマスタ機器10に送信する。例えば、応答制御部105のコマンド対応テーブルにおいて、アクセス要求コマンドACSREQにアクセス否定応答コマンドACSNAKが対応付けられている。応答制御部105による代理応答コマンド(すなわち、アクセス否定応答コマンドACSNAK)の送信により、マスタ機器10は、スレーブ機器20がアクセス不可能な動作状況であることを再度認識する。なお、コマンド判別部103は、アクセス要求コマンドACSREQの中継が不要であると判別している場合にマスタ機器10からのアクセス要求コマンドACSREQを受信すると、代理応答コマンドの送信を指示するための応答制御指示を応答制御部105に通知しても良い。この場合、応答制御部105は、コマンド判別部103からの通知(すなわち、コマンド判別部103による判別結果)に応答して、代理応答コマンドを送信しても良い。
時刻t3においても、時刻t2と同様に、マスタ機器10からのアクセス要求コマンドACSREQはスレーブ機器20には送信されず、応答制御部105がアクセス要求コマンドACSREQに対応するアクセス否定応答コマンドACSNAKをマスタ機器10に送信する。
時刻t4になると、スレーブ機器20は、アクセス可能な動作状況となり、動作状況が変化したことを示した状況通知コマンドNTFCを送信する。応答制御部105は、インターフェース回路102を経由して状況通知コマンドNTFCを受信すると、状況通知コマンドNTFCを受信したことをコマンド判別部103に通知する。コマンド判別部103は、応答制御部105からの通知(状況通知コマンドNTFCの受信通知)に基づいてスレーブ機器20の動作状況が変化したことを認識し、マスタ機器10からスレーブ機器20へのアクセス要求コマンドACSREQの中継が必要であると判別する。また、コマンド判別部103は、インターフェース回路102の電力モードを通常電力モードに設定することを指示するための電力制御指示(通常電力指示)を電力制御部104に通知する。電力制御部104は、コマンド判別部103からの通知に応答して、インターフェース回路102の電力モードを低電力モードから通常電力モードへ移行させる。また、コマンド判別部103は、スレーブ機器20を低電力モードから通常電力モードへ復帰させるための復帰指示コマンドWAKEUPをインターフェース回路102を経由してスレーブ機器20に送信する。スレーブ機器20が復帰指示コマンドWAKEUPを受信すると、スレーブ機器20の電力モードが低電力モードから通常電力モードへ移行する。
時刻t5になると、マスタ機器10は、マスタコマンドMCDとしてアクセス要求コマンドACSREQを送信する。このとき、コマンド判別部103は、アクセス要求コマンドACSREQの中継が必要であると判別しているので、アクセス要求コマンドACSREQをインターフェース回路102を経由してスレーブ機器20に送信する。スレーブ機器20は、スレーブコマンドSCDとしてアクセス可能な動作状況であることを示したアクセス肯定応答コマンドACSACKを送信する。応答制御部105は、インターフェース回路102を経由して受信したアクセス肯定応答コマンドACSACKをインターフェース回路101を経由してマスタ機器10に送信する。これにより、マスタ機器10は、スレーブ機器20がアクセス可能な動作状況であることを認識する。
時刻t6になると、スレーブ機器20は、アクセス不可能な動作状況になり、動作状況が変化したことを示した状況通知コマンドNTFCを送信する。応答制御部105は、インターフェース回路102を経由して状況通知コマンドNTFCを受信すると、状況通知コマンドNTFCを受信したことをコマンド判別部103に通知する。コマンド判別部103は、応答制御部105からの通知に基づいて、マスタ機器10からスレーブ機器20へのアクセス要求コマンドACSREQの中継が必要であると判別し、インターフェース回路102の電力モードを通常電力モードに設定することを指示するための電力制御指示(通常電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードが既に通常電力モードに設定されているので、インターフェース回路102の電力モードを通常電力モードのまま維持する。
時刻t7になると、時刻t1の場合と同様に、マスタ機器10は、アクセス要求コマンドACSREQを送信し、コマンド判別部103は、インターフェース回路101を経由して受信したアクセス要求コマンドACSREQをインターフェース回路102を経由してスレーブ機器20に送信する。スレーブ機器20は、アクセス否定応答コマンドACSNAKを送信し、応答制御部105は、インターフェース回路102を経由して受信したアクセス否定応答コマンドACSNAKをインターフェース回路101を経由してマスタ機器10に送信する。これにより、マスタ機器10は、スレーブ機器20がアクセス不可能な動作状況であることを認識する。また、応答制御部105は、アクセス否定応答コマンドACSNAKを受信したことをコマンド判別部103に通知し、コマンド判別部103は、応答制御部105からの通知に基づいて、マスタ機器10からスレーブ機器20へのアクセス要求コマンドACSREQの中継が不要であると判別する。その後、時刻t11の場合と同様に、スレーブ機器20は、電力管理要求コマンドPMREQを送信する。スレーブ機器20がコマンド判別部103からの電力管理肯定応答コマンドPMACKを受信すると、スレーブ機器20の電力モードが通常電力モードから低電力モードへ移行する。また、コマンド判別部103は、インターフェース回路102の電力モードを低電力モードに設定することを指示するための電力制御指示(低電力指示)を電力制御部104に通知し、電力制御部104は、コマンド判別部103からの通知に応答してインターフェース回路102の電力モードを通常電力モードから低電力モードへ移行させる。
〔機器状況情報〕
上記の具体例のように、インターフェース200がシリアルATAインターフェースである場合(すなわち、スレーブ機器20およびインターフェース回路102がシリアルATA規格に準拠した動作を実行する場合)、コマンド判別部103は、応答制御部105からの通知(ここでは、アクセス不定応答コマンドACSNAKの受信通知および状況通知コマンドNTFCの受信通知)を機器状況情報(スレーブ機器20の動作状況を示した情報)として利用することができる。なお、コマンド判別部103は、スレーブ機器20からインターフェース回路102を経由して送信された特定の情報(ここでは、アクセス否定応答コマンドACSNAKおよび状況通知コマンドNTFC)を機器状況情報として受信しても良い。
上記の具体例のように、インターフェース200がシリアルATAインターフェースである場合(すなわち、スレーブ機器20およびインターフェース回路102がシリアルATA規格に準拠した動作を実行する場合)、コマンド判別部103は、応答制御部105からの通知(ここでは、アクセス不定応答コマンドACSNAKの受信通知および状況通知コマンドNTFCの受信通知)を機器状況情報(スレーブ機器20の動作状況を示した情報)として利用することができる。なお、コマンド判別部103は、スレーブ機器20からインターフェース回路102を経由して送信された特定の情報(ここでは、アクセス否定応答コマンドACSNAKおよび状況通知コマンドNTFC)を機器状況情報として受信しても良い。
また、スレーブ機器20は、シリアルATAインターフェースに含まれる信号線のうちDP(Device Present)信号線を経由して状況通知コマンドNTFCをインターフェース回路102に送信しても良い。このようなDP信号線は、記憶メディアに関連するデータの送受信に使用される信号線とは別の信号線としてスリムタイプの記憶装置の電源ケーブルなどに含まれていることが多い。なお、インターフェース200がシリアルATAインターフェースではない他のインターフェースである場合であっても、機器状況情報として利用可能な特定の情報をスレーブ機器20からインターフェース回路102を経由して応答制御部105(または、コマンド判別部103)に送信することは可能である。
〔アクセス可否〕
ここで、スレーブ機器20のアクセス可能な動作状況およびアクセス不可能な動作状況について例を挙げて説明する。
ここで、スレーブ機器20のアクセス可能な動作状況およびアクセス不可能な動作状況について例を挙げて説明する。
《記憶メディアの装填の有無》
まず、スレーブ機器20が、記憶メディアを装填可能な記憶装置を含んでいる場合を例に挙げて説明する。この場合、スレーブ機器20の「アクセス可能な動作状況」は、記憶装置に記憶メディアが装填されている状態に相当し、スレーブ機器20の「アクセス不可能な動作状況」は、記憶装置に記憶メディアが装填されていない状態に相当する。また、この場合、アクセス要求コマンドACSREQは、記憶装置に記憶メディアが装填されているか否かを問い合わせるコマンドに相当し、アクセス否定応答コマンドACSNAKは、記憶装置に記憶メディアが装填されていないことを示したコマンドに相当し、アクセス肯定応答コマンドACSACKは、記憶装置に記憶メディアが装填されていることを示したコマンドに相当する。また、コマンド判別部103は、記憶装置に記憶メディアが装填されている場合にはマスタコマンドMCDの中継が必要であると判別し、記憶装置に記憶メディアが装填されていない場合にはマスタコマンドMCDの中継が不要であると判別することになる。
まず、スレーブ機器20が、記憶メディアを装填可能な記憶装置を含んでいる場合を例に挙げて説明する。この場合、スレーブ機器20の「アクセス可能な動作状況」は、記憶装置に記憶メディアが装填されている状態に相当し、スレーブ機器20の「アクセス不可能な動作状況」は、記憶装置に記憶メディアが装填されていない状態に相当する。また、この場合、アクセス要求コマンドACSREQは、記憶装置に記憶メディアが装填されているか否かを問い合わせるコマンドに相当し、アクセス否定応答コマンドACSNAKは、記憶装置に記憶メディアが装填されていないことを示したコマンドに相当し、アクセス肯定応答コマンドACSACKは、記憶装置に記憶メディアが装填されていることを示したコマンドに相当する。また、コマンド判別部103は、記憶装置に記憶メディアが装填されている場合にはマスタコマンドMCDの中継が必要であると判別し、記憶装置に記憶メディアが装填されていない場合にはマスタコマンドMCDの中継が不要であると判別することになる。
《スピンアップ》
次に、スレーブ機器20が、記憶メディアをスピンアップして記憶メディアに対してデータを読み書きする記憶装置を含んでいる場合を例に挙げて説明する。この場合、スレーブ機器20の「アクセス可能な動作状況」は、記憶メディアのスピンアップが完了している状態に相当し、スレーブ機器20の「アクセス不可能な動作状況」は、記憶メディアのスピンアップが完了していない状態に相当する。また、この場合、アクセス要求コマンドACSREQは、記憶メディアに対するデータの読み書きを要求するコマンドに相当し、アクセス否定応答コマンドACSNAKは、記憶メディアのスピンアップが完了していないこと(データの読み書きを実行できないこと)を示したコマンドに相当し、アクセス肯定応答コマンドACSACKは、記憶メディアのスピンアップが完了していること(データの読み書きを実行できること)を示したコマンドに相当する。また、コマンド判別部103は、記憶メディアのスピンアップが完了している場合にはマスタコマンドMCDの中継が必要であると判別し、記憶メディアのスピンアップが完了していない場合にはマスタコマンドMCDの中継が不要であると判別することになる。
次に、スレーブ機器20が、記憶メディアをスピンアップして記憶メディアに対してデータを読み書きする記憶装置を含んでいる場合を例に挙げて説明する。この場合、スレーブ機器20の「アクセス可能な動作状況」は、記憶メディアのスピンアップが完了している状態に相当し、スレーブ機器20の「アクセス不可能な動作状況」は、記憶メディアのスピンアップが完了していない状態に相当する。また、この場合、アクセス要求コマンドACSREQは、記憶メディアに対するデータの読み書きを要求するコマンドに相当し、アクセス否定応答コマンドACSNAKは、記憶メディアのスピンアップが完了していないこと(データの読み書きを実行できないこと)を示したコマンドに相当し、アクセス肯定応答コマンドACSACKは、記憶メディアのスピンアップが完了していること(データの読み書きを実行できること)を示したコマンドに相当する。また、コマンド判別部103は、記憶メディアのスピンアップが完了している場合にはマスタコマンドMCDの中継が必要であると判別し、記憶メディアのスピンアップが完了していない場合にはマスタコマンドMCDの中継が不要であると判別することになる。
〔比較例〕
次に、図5を参照して、インターフェース中継装置1の比較例(中継要否判別機能および代理応答機能を有さないインターフェース中継装置)について説明する。このインターフェース中継装置は、図1に示したコマンド判別部103,電力制御部104,および応答制御部105に代えて制御部904を備える。制御部904は、マスタコマンドMCDの中継制御,スレーブコマンドSCDの中継制御,およびインターフェース回路102の電力制御を実行する。
次に、図5を参照して、インターフェース中継装置1の比較例(中継要否判別機能および代理応答機能を有さないインターフェース中継装置)について説明する。このインターフェース中継装置は、図1に示したコマンド判別部103,電力制御部104,および応答制御部105に代えて制御部904を備える。制御部904は、マスタコマンドMCDの中継制御,スレーブコマンドSCDの中継制御,およびインターフェース回路102の電力制御を実行する。
時刻t1になると、制御部904は、インターフェース回路101を経由して受信したアクセス要求コマンドACSREQをインターフェース回路102を経由してスレーブ機器20に送信し、インターフェース回路102を経由して受信したアクセス否定応答コマンドACSNAKをインターフェース回路101を経由してマスタ機器10に送信する。また、制御部904は、インターフェース回路102を経由して受信した電力管理要求コマンドPMREQに応答して、電力管理肯定応答コマンドPMACKをインターフェース回路102を経由してスレーブ機器20に送信するとともに、インターフェース回路102の電力モードを通常電力モードから低電力モードへ移行させる。
時刻t2になると、マスタ機器10は、アクセス要求コマンドACSREQを再度送信する。このとき、制御部904は、アクセス要求コマンドACSREQをスレーブ機器20に送信するために、インターフェース回路102の電力モードを低電力モードから通常電力モードへ移行させるとともに、スレーブ機器20を低電力モードから通常電力モードへ復帰させるための復帰指示コマンドWAKEUPをインターフェース回路102を経由してスレーブ機器20に送信する。その後、時刻t1の場合と同様に、制御部904は、アクセス要求コマンドACSREQをインターフェース回路102を経由してスレーブ機器20に送信し、インターフェース回路102を経由して受信したアクセス否定応答コマンドACSNAKをインターフェース回路101を経由してマスタ機器10に送信する。また、時刻1と同様に、制御部904は、電力管理要求コマンドPMREQに応答して電力管理肯定応答コマンドPMACKをスレーブ機器20に送信するとともに、インターフェース回路102の電力モードを通常電力モードから低電力モードへ移行させる。時刻t3においても、時刻t1,t2の場合と同様の動作が行われる。
このように、中継要否判別機能および代理応答機能を有さないインターフェース中継装置では、スレーブ機器20がアクセス不可能な動作状況である場合であっても、マスタ機器10からアクセス要求コマンドACSREQが送信される毎にインターフェース回路102およびスレーブ機器20の電力モードが通常電力モードに復帰してしまうことになる。そのため、インターフェース回路102の低電力期間(低電力モードに維持されている期間)が間欠的になってしまうので、インターフェース回路102の消費電力を効率的に低減することが困難である。
一方、図1に示したインターフェース中継装置1では、図3のように、スレーブ機器20がアクセス不可能な動作状況である場合、応答制御部105は、スレーブ機器20の代わりにアクセス要求コマンドACSREQに対応するアクセス否定応答コマンドACSNAKをマスタ機器10に送信し、電力制御部104は、インターフェース回路の電力モードを低電力モードのまま維持する。そのため、マスタ機器10からアクセス要求コマンドACSREQが繰り返し送信されても、インターフェース回路102の電力モードは、低電力モードのまま維持される。
以上のように、マスタコマンドMCDの中継が不要である場合、マスタコマンドMCDに対応する代理応答コマンドが送信されるので、マスタコマンドMCDをスレーブ機器20へ送信するためにインターフェース回路102の電力モードを通常電力モードに復帰させなくても良い。そのため、インターフェース回路102の低電力期間が間欠的にならないように低電力期間を確保できるので、インターフェース回路102の消費電力を効率的に低減できる。その結果、インターフェース中継装置1の消費電力も低減できる。
また、マスタコマンドMCDの中継が不要である場合、マスタ機器10からのマスタコマンドMCDはスレーブ機器20に送信されないので、スレーブ機器20の電力モードを通常電力モードに復帰させなくても良い。そのため、スレーブ機器20の低電力期間が間欠的にならないように低電力期間を確保できるので、スレーブ機器20の消費電力も効率的に低減できる。
〔段階的な電力制御〕
なお、インターフェース回路102およびスレーブ機器20の電力モードを段階的に切り替えても良い。例えば、インターフェース200がシリアルATAインターフェースである場合、図6のように、インターフェース回路102およびスレーブ機器20の電力モードを制御しても良い。すなわち、時刻t11になると、スレーブ機器20は、Partialモードへの移行を要求する電力管理要求コマンドPMREQ−Pを送信し、コマンド判別部103は、電力管理肯定応答コマンドPMACKをスレーブ機器20に送信する。これにより、スレーブ機器20は、PHY_READYモード(通常電力モード)からPartialモードへ移行する。また、コマンド判別部103は、インターフェース回路102の電力モードをPartialモード(第1の低電力モード)に設定することを指示するための電力制御指示(第1回目の低電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードからPartialモードへ移行させる。次に、時刻t21になると、スレーブ機器20は、復帰指示コマンドWAKEUPをインターフェース回路102を経由してコマンド判別部103に送信し、コマンド判別部103は、インターフェース回路102の電力モードをPHY_READYモードに設定することを指示するための電力制御指示(通常電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードに復帰させる。時刻t22になると、スレーブ機器20は、Slumberモードへの移行を要求する電力管理要求コマンドPMREQ−Sを送信し、コマンド判別部103は、電力管理肯定応答コマンドPMACKをスレーブ機器20に送信する。これにより、スレーブ機器20は、PHY_READYモードからSlumberモードへ移行する。また、コマンド判別部103は、インターフェース回路102の電力モードをSlumberモード(第2の低電力モード)に設定することを指示するための電力制御指示(第2回目の低電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードからSlumberモードへ移行させる。
なお、インターフェース回路102およびスレーブ機器20の電力モードを段階的に切り替えても良い。例えば、インターフェース200がシリアルATAインターフェースである場合、図6のように、インターフェース回路102およびスレーブ機器20の電力モードを制御しても良い。すなわち、時刻t11になると、スレーブ機器20は、Partialモードへの移行を要求する電力管理要求コマンドPMREQ−Pを送信し、コマンド判別部103は、電力管理肯定応答コマンドPMACKをスレーブ機器20に送信する。これにより、スレーブ機器20は、PHY_READYモード(通常電力モード)からPartialモードへ移行する。また、コマンド判別部103は、インターフェース回路102の電力モードをPartialモード(第1の低電力モード)に設定することを指示するための電力制御指示(第1回目の低電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードからPartialモードへ移行させる。次に、時刻t21になると、スレーブ機器20は、復帰指示コマンドWAKEUPをインターフェース回路102を経由してコマンド判別部103に送信し、コマンド判別部103は、インターフェース回路102の電力モードをPHY_READYモードに設定することを指示するための電力制御指示(通常電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードに復帰させる。時刻t22になると、スレーブ機器20は、Slumberモードへの移行を要求する電力管理要求コマンドPMREQ−Sを送信し、コマンド判別部103は、電力管理肯定応答コマンドPMACKをスレーブ機器20に送信する。これにより、スレーブ機器20は、PHY_READYモードからSlumberモードへ移行する。また、コマンド判別部103は、インターフェース回路102の電力モードをSlumberモード(第2の低電力モード)に設定することを指示するための電力制御指示(第2回目の低電力指示)を電力制御部104に通知する。電力制御部104は、インターフェース回路102の電力モードをPHY_READYモードからSlumberモードへ移行させる。
(実施形態2)
図7は、実施形態2によるインターフェース中継装置2に構成例を示す。インターフェース中継装置2は、マスタ機器10と複数のスレーブ機器(ここでは、スレーブ機器20a,20b)との間を中継するものであり、インターフェース回路101と、複数のインターフェース回路(ここでは、インターフェース回路102a,102b)と、コマンド判別部203と、電力制御部204と、応答制御部205とを備える。
図7は、実施形態2によるインターフェース中継装置2に構成例を示す。インターフェース中継装置2は、マスタ機器10と複数のスレーブ機器(ここでは、スレーブ機器20a,20b)との間を中継するものであり、インターフェース回路101と、複数のインターフェース回路(ここでは、インターフェース回路102a,102b)と、コマンド判別部203と、電力制御部204と、応答制御部205とを備える。
〔インターフェース回路〕
インターフェース回路102a,102bは、それぞれ、インターフェース200a,200bを経由してスレーブ機器20a,20bにそれぞれ接続される。また、インターフェース回路102a,102bの各々は、インターフェース回路102と同様に、通常電力モードと低電力モードとを切替可能である。なお、ここでは、スレーブ機器20a,20bの各々も、スレーブ機器20と同様に、通常電力モードと低電力モードとを切替可能であるものとする。
インターフェース回路102a,102bは、それぞれ、インターフェース200a,200bを経由してスレーブ機器20a,20bにそれぞれ接続される。また、インターフェース回路102a,102bの各々は、インターフェース回路102と同様に、通常電力モードと低電力モードとを切替可能である。なお、ここでは、スレーブ機器20a,20bの各々も、スレーブ機器20と同様に、通常電力モードと低電力モードとを切替可能であるものとする。
〔コマンド判別部〕
コマンド判別部203は、スレーブ機器20a,20bの動作状況を示した機器状況情報に基づいて、スレーブ機器20a,20bの各々についてマスタ機器10からそのスレーブ機器へのマスタコマンドMCDの中継の要否を判別する。また、コマンド判別部203は、スレーブ機器20a,20bの各々について中継要否の判別結果に応じて、マスタ機器10からスレーブ機器20a,20bへのマスタコマンドMCDの中継を制御する。スレーブ機器20a,20bのうちマスタコマンドMCDの中継が必要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、コマンド判別部203は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをインターフェース回路102a,102bのうちそのスレーブ機器に対応するインターフェース回路を経由してそのスレーブ機器に送信する。一方、スレーブ機器20a,20bのうちマスタコマンドMCDの中継が不要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、コマンド判別部203は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをそのスレーブ機器に送信しない。
コマンド判別部203は、スレーブ機器20a,20bの動作状況を示した機器状況情報に基づいて、スレーブ機器20a,20bの各々についてマスタ機器10からそのスレーブ機器へのマスタコマンドMCDの中継の要否を判別する。また、コマンド判別部203は、スレーブ機器20a,20bの各々について中継要否の判別結果に応じて、マスタ機器10からスレーブ機器20a,20bへのマスタコマンドMCDの中継を制御する。スレーブ機器20a,20bのうちマスタコマンドMCDの中継が必要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、コマンド判別部203は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをインターフェース回路102a,102bのうちそのスレーブ機器に対応するインターフェース回路を経由してそのスレーブ機器に送信する。一方、スレーブ機器20a,20bのうちマスタコマンドMCDの中継が不要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、コマンド判別部203は、マスタ機器10からインターフェース回路101を経由して受信したマスタコマンドMCDをそのスレーブ機器に送信しない。
〔電力制御部〕
電力制御部204は、コマンド判別部203による判別結果に応じて、インターフェース回路102a,102bの電力モードを制御する。電力制御部204は、インターフェース回路102a,102bのうちコマンド判別部203によってマスタコマンドMCDの中継が必要であると判別されたスレーブ機器に対応するインターフェース回路の電力モードを通常電力モードに設定する。また、電力制御部204は、インターフェース回路102a,102bのうちコマンド判別部203によってマスタコマンドMCDの中継が不要であると判別されたスレーブ機器に対応するインターフェース回路の電力モードを低電力モードに設定する。
電力制御部204は、コマンド判別部203による判別結果に応じて、インターフェース回路102a,102bの電力モードを制御する。電力制御部204は、インターフェース回路102a,102bのうちコマンド判別部203によってマスタコマンドMCDの中継が必要であると判別されたスレーブ機器に対応するインターフェース回路の電力モードを通常電力モードに設定する。また、電力制御部204は、インターフェース回路102a,102bのうちコマンド判別部203によってマスタコマンドMCDの中継が不要であると判別されたスレーブ機器に対応するインターフェース回路の電力モードを低電力モードに設定する。
〔応答制御部〕
応答制御部205は、コマンド判別部203による判別結果に応じて、スレーブ機器20a,20bからマスタ機器10へのスレーブコマンドSCDa,SCDbの中継を制御する。スレーブ機器20a,20bのうちマスタコマンドMCDの中継が必要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、応答制御部205は、そのスレーブ機器からインターフェース回路102a,102bのうちそのスレーブ機器に対応するインターフェース回路を経由して受信したスレーブコマンドSCDa(または、SCDb)をインターフェース回路101を経由してマスタ機器10に送信する。一方、スレーブ機器20a,20bのうちマスタコマンドMCDの中継が不要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、応答制御部205は、マスタ機器10からインターフェース回路101を経由してコマンド判別部203によって受信されたマスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDa(または、SCDb)としてインターフェース回路101を経由してマスタ機器10に送信する。
応答制御部205は、コマンド判別部203による判別結果に応じて、スレーブ機器20a,20bからマスタ機器10へのスレーブコマンドSCDa,SCDbの中継を制御する。スレーブ機器20a,20bのうちマスタコマンドMCDの中継が必要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、応答制御部205は、そのスレーブ機器からインターフェース回路102a,102bのうちそのスレーブ機器に対応するインターフェース回路を経由して受信したスレーブコマンドSCDa(または、SCDb)をインターフェース回路101を経由してマスタ機器10に送信する。一方、スレーブ機器20a,20bのうちマスタコマンドMCDの中継が不要であると判別されたスレーブ機器がマスタ機器10のコマンド送信先として指定された場合、応答制御部205は、マスタ機器10からインターフェース回路101を経由してコマンド判別部203によって受信されたマスタコマンドMCDに対応する代理応答コマンドをスレーブコマンドSCDa(または、SCDb)としてインターフェース回路101を経由してマスタ機器10に送信する。
〔動作〕
次に、図8および図9を参照して、インターフェース中継装置2による動作について説明する。コマンド判別部203は、スレーブ機器20a,20bの中から中継要否の判別対象となるスレーブ機器を選択し(ST201)、マスタ機器10から判別対象のスレーブ機器へのマスタコマンドMCDの中継の要否を判別する(ST202)。マスタコマンドMCDの中継が不要である場合、電力制御部204は、インターフェース回路102a,102bのうち判別対象のスレーブ機器に対応するインターフェース回路の電力モードを低電力モードに設定する(ST203)。一方、マスタコマンドMCDの中継が必要である場合、電力制御部204は、インターフェース回路102a,102bのうち判別対象のスレーブ機器に対応するインターフェース回路の電力モードを通常電力モードに設定する(ST204)。次に、コマンド判別部203は、スレーブ機器20a,20bの中から中継要否の判別対象として別のスレーブ機器を選択すべきか否か(すなわち、インターフェース回路102a,102bの電力モードの設定を終了するか否か)を判断する(ST205)。インターフェース回路102a,102bの電力モードの設定を終了しない場合には、ステップST201へ進んでステップST201〜ST204が再度実行される。一方、インターフェース回路102a,102bの電力モードの設定を終了する場合、コマンド判別部203は、マスタ機器10からのマスタコマンドMCDを受信したか否かを確認する(ST206)。マスタ機器10からのマスタコマンドMCDを受信していない場合には、ステップST201へ進んでステップST201〜ST205が再度実行される。
次に、図8および図9を参照して、インターフェース中継装置2による動作について説明する。コマンド判別部203は、スレーブ機器20a,20bの中から中継要否の判別対象となるスレーブ機器を選択し(ST201)、マスタ機器10から判別対象のスレーブ機器へのマスタコマンドMCDの中継の要否を判別する(ST202)。マスタコマンドMCDの中継が不要である場合、電力制御部204は、インターフェース回路102a,102bのうち判別対象のスレーブ機器に対応するインターフェース回路の電力モードを低電力モードに設定する(ST203)。一方、マスタコマンドMCDの中継が必要である場合、電力制御部204は、インターフェース回路102a,102bのうち判別対象のスレーブ機器に対応するインターフェース回路の電力モードを通常電力モードに設定する(ST204)。次に、コマンド判別部203は、スレーブ機器20a,20bの中から中継要否の判別対象として別のスレーブ機器を選択すべきか否か(すなわち、インターフェース回路102a,102bの電力モードの設定を終了するか否か)を判断する(ST205)。インターフェース回路102a,102bの電力モードの設定を終了しない場合には、ステップST201へ進んでステップST201〜ST204が再度実行される。一方、インターフェース回路102a,102bの電力モードの設定を終了する場合、コマンド判別部203は、マスタ機器10からのマスタコマンドMCDを受信したか否かを確認する(ST206)。マスタ機器10からのマスタコマンドMCDを受信していない場合には、ステップST201へ進んでステップST201〜ST205が再度実行される。
一方、マスタ機器10からのマスタコマンドMCDを受信している場合、コマンド判別部203は、マスタ機器10からのマスタコマンドMCDに基づいてスレーブ機器20a,20bの中からマスタ機器10のコマンド送信先として指定されたスレーブ機器を特定する(ST207)。次に、コマンド判別部203および応答制御部205は、コマンド送信先のスレーブ機器に関するステップST201における判別結果に応じて動作する(ST208)。マスタ機器10からコマンド送信先のスレーブ機器へのマスタコマンドMCDの中継が不要である場合、コマンド判別部203は、マスタコマンドMCDをコマンド送信先のスレーブ機器に送信せず、応答制御部205は、マスタコマンドMCDに対応する代理応答コマンドをコマンド送信先のスレーブ機器からのスレーブコマンド(SCDaまたはSCDb)としてマスタ機器10に送信する(ST209)。一方、マスタ機器10からコマンド送信先のスレーブ機器へのマスタコマンドMCDの中継が必要である場合、コマンド判別部203は、マスタコマンドMCDをコマンド送信先のスレーブ機器に送信し、応答制御部205は、コマンド送信先のスレーブ機器からのスレーブコマンド(SCDaまたはSCDb)をマスタ機器10に送信する(ST210)。次に、インターフェース中継装置2による動作が継続される場合には、ステップST201へ進む(ST211)。
以上のように、マスタコマンドMCDの中継が不要である場合、代理応答コマンドが送信されるので、マスタコマンドMCDをコマンド送信先として指定されたスレーブ機器20a(または、20b)へ送信するためにインターフェース回路102a(または、102b)の電力モードを通常電力モードに復帰させなくても良い。そのため、インターフェース回路102a(または、102b)の低電力期間が間欠的にならないように低電力期間を確保できるので、インターフェース回路102a(または、102b)の消費電力を効率的に低減でき、その結果、インターフェース中継装置2の消費電力も低減できる。
また、マスタコマンドMCDの中継が不要である場合、マスタ機器10からのマスタコマンドMCDはコマンド送信先として指定されたスレーブ機器20a(または、20b)に送信されないので、スレーブ機器20a(または、20b)の電力モードを通常電力モードに復帰させなくても良い。そのため、スレーブ機器20a(または、20b)の低電力期間が間欠的にならないように低電力期間を確保できるので、スレーブ機器20a(または、20b)の消費電力も効率的に低減できる。
なお、図10のように、電力制御部204は、インターフェース回路102a,102bのうちコマンド送信先のスレーブ機器に対応しないインターフェース回路の電力モードを低電力モードに設定しても良い(ST220)。このように制御することにより、コマンド送信先として指定されないスレーブ機器に対応するインターフェース回路の消費電力を低減できるので、インターフェース中継装置2の消費電力をさらに低減できる。
以上のように、上述のインターフェース中継装置は、消費電力を効率的に低減できるので、マスタ機器(例えば、ホストコンピュータなど)とスレーブ機器(例えば、外部記憶装置などの周辺機器)との間を中継する中継装置などとして有用である。
1,2 インターフェース中継装置
10 マスタ機器
20,20a,20b スレーブ機器
101,102,102a,102b インターフェース回路
103,203 コマンド判別部
104,204 電力制御部
105,205 応答制御部
10 マスタ機器
20,20a,20b スレーブ機器
101,102,102a,102b インターフェース回路
103,203 コマンド判別部
104,204 電力制御部
105,205 応答制御部
この発明の1つの局面に従うと、インターフェース中継装置は、マスタ機器とスレーブ機器との間を中継する装置であって、第1のインターフェースを経由して上記マスタ機器に接続される第1のインターフェース回路と、第2のインターフェースを経由して上記スレーブ機器に接続され、且つ、通常電力モードと低電力モードとを切替可能な第2のインターフェース回路と、上記スレーブ機器の動作状況を示した機器状況情報に基づいて上記マスタ機器から上記スレーブ機器へのマスタコマンドの中継の要否を判別し、上記マスタコマンドの中継が必要であると判別した場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記第2のインターフェース回路を経由して上記スレーブ機器に送信し、上記マスタコマンドの中継が不要であると判別した場合、上記マスタ機器から上記第1のインターフェース回路を経由して受信したマスタコマンドを上記スレーブ機器に送信しないコマンド判別部と、上記コマンド判別部によって上記マスタコマンドの中継が必要であると判別された場合、上記第2のインターフェース回路の電力モードを上記通常電力モードに設定し、上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別された場合、上記第2のインターフェース回路の電力モードを上記低電力モードに設定する電力制御部と、上記コマンド判別部によって上記マスタコマンドの中継が必要であると判別された場合、上記スレーブ機器から上記第2のインターフェース回路を経由して受信したスレーブコマンドを上記第1のインターフェース回路を経由して上記マスタ機器に送信し、上記コマンド判別部によって上記マスタコマンドの中継が不要であると判別された場合、上記マスタ機器から上記第1のインターフェース回路を経由して上記コマンド判別部によって受信されたマスタコマンドに対応する代理応答コマンドを上記スレーブコマンドとして上記第1のインターフェース回路を経由して上記マスタ機器に送信する応答制御部とを備える。
一方、マスタ機器10からのマスタコマンドMCDを受信している場合、コマンド判別部203は、マスタ機器10からのマスタコマンドMCDに基づいてスレーブ機器20a,20bの中からマスタ機器10のコマンド送信先として指定されたスレーブ機器を特定する(ST207)。次に、コマンド判別部203および応答制御部205は、コマンド送信先のスレーブ機器に関するステップST202における判別結果に応じて動作する(ST208)。マスタ機器10からコマンド送信先のスレーブ機器へのマスタコマンドMCDの中継が不要である場合、コマンド判別部203は、マスタコマンドMCDをコマンド送信先のスレーブ機器に送信せず、応答制御部205は、マスタコマンドMCDに対応する代理応答コマンドをコマンド送信先のスレーブ機器からのスレーブコマンド(SCDaまたはSCDb)としてマスタ機器10に送信する(ST209)。一方、マスタ機器10からコマンド送信先のスレーブ機器へのマスタコマンドMCDの中継が必要である場合、コマンド判別部203は、マスタコマンドMCDをコマンド送信先のスレーブ機器に送信し、応答制御部205は、コマンド送信先のスレーブ機器からのスレーブコマンド(SCDaまたはSCDb)をマスタ機器10に送信する(ST210)。次に、インターフェース中継装置2による動作が継続される場合には、ステップST201へ進む(ST211)。
Claims (13)
- マスタ機器とスレーブ機器との間を中継する装置であって、
第1のインターフェースを経由して前記マスタ機器に接続される第1のインターフェース回路と、
第2のインターフェース回路を経由して前記スレーブ機器に接続され、且つ、通常電力モードと低電力モードとを切替可能な第2のインターフェース回路と、
前記スレーブ機器の動作状況を示した機器状況情報に基づいて前記マスタ機器から前記スレーブ機器へのマスタコマンドの中継の要否を判別し、前記マスタコマンドの中継が必要であると判別した場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記第2のインターフェース回路を経由して前記スレーブ機器に送信し、前記マスタコマンドの中継が不要であると判別した場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記スレーブ機器に送信しないコマンド判別部と、
前記コマンド判別部によって前記マスタコマンドの中継が必要であると判別された場合、前記第2のインターフェース回路の電力モードを前記通常電力モードに設定し、前記コマンド判別部によって前記マスタコマンドの中継が不要であると判別された場合、前記第2のインターフェース回路の電力モードを前記低電力モードに設定する電力制御部と、
前記コマンド判別部によって前記マスタコマンドの中継が必要であると判別された場合、前記スレーブ機器から前記第2のインターフェース回路を経由して受信したスレーブコマンドを前記第1のインターフェース回路を経由して前記マスタ機器に送信し、前記コマンド判別部によって前記マスタコマンドの中継が不要であると判別された場合、前記マスタ機器から前記第1のインターフェース回路を経由して前記コマンド判別部によって受信されたマスタコマンドに対応する代理応答コマンドを前記スレーブコマンドとして前記第1のインターフェース回路を経由して前記マスタ機器に送信する応答制御部とを備える
ことを特徴とするインターフェース中継装置。 - 請求項1において、
前記機器状況情報は、前記スレーブ機器のアクセスの可否を示し、
前記コマンド判別部は、前記スレーブ機器がアクセス可能な動作状況である場合には前記マスタコマンドの中継が必要であると判別し、スレーブ機器がアクセス不可能な動作状況である場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継装置。 - 請求項2において、
前記スレーブ機器は、記憶メディアを装填可能な記憶装置を含み、
前記機器状況情報は、前記記憶装置への記憶メディアの装填の有無を示し、
前記コマンド判別部は、前記記憶装置に前記記憶メディアが装填されている場合には前記マスタコマンドの中継が必要であると判別し、前記記憶装置に前記記憶メディアが装填されていない場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継装置。 - 請求項2において、
前記スレーブ機器は、記憶メディアをスピンアップして前記記憶メディアに対してデータを読み書きする記憶装置を含み、
前記機器状況情報は、前記記憶メディアのスピンアップが完了したか否かを示し、
前記コマンド判別部は、前記記憶メディアのスピンアップが完了している場合には前記マスタコマンドの中継が必要であると判別し、前記記憶メディアのスピンアップが完了していない場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継装置。 - 請求項1〜4のいずれか1項において、
前記応答制御部は、前記マスタ機器からのマスタコマンドと前記スレーブ機器からのスレーブコマンドとが対応付けられたコマンド対応テーブルを有し、前記コマンド判別部によって前記マスタコマンドの中継が不要であると判別された場合、前記コマンド対応テーブルの中から前記マスタ機器から前記第1のインターフェース回路を経由して前記コマンド判別部によって受信されたマスタコマンドに対応するスレーブコマンドを前記代理応答コマンドとして選出する
ことを特徴とするインターフェース中継装置。 - マスタ機器と複数のスレーブ機器との間を中継する装置であって、
第1のインターフェースを経由して前記マスタ機器に接続される第1のインターフェース回路と、
複数の第2のインターフェースを経由して前記複数のスレーブ機器にそれぞれ接続され、且つ、それぞれが通常電力モードと低電力モードとを切替可能な複数の第2のインターフェース回路と、
前記複数のスレーブ機器の動作状況を示した機器状況情報に基づいて前記複数のスレーブ機器の各々について前記マスタ機器から当該スレーブ機器へのマスタコマンドの中継の要否を判別し、前記複数のスレーブ機器のうち前記マスタコマンドの中継が必要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記複数の第2のインターフェース回路のうち当該スレーブ機器に対応する第2のインターフェース回路を経由して当該スレーブ機器に送信し、前記複数のスレーブ機器のうち前記マスタコマンドの中継が不要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを当該スレーブ機器に送信しないコマンド判別部と、
前記複数の第2のインターフェース回路のうち前記コマンド判別部によって前記マスタコマンドの中継が必要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを前記通常電力モードに設定し、前記複数の第2のインターフェース回路のうち前記コマンド判別部によって前記マスタコマンドの中継が不要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを前記低電力モードに設定する電力制御部と、
前記複数のスレーブ機器のうち前記マスタコマンドの中継が必要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、当該スレーブ機器から前記複数の第2のインターフェース回路のうち当該スレーブ機器に対応する第2のインターフェース回路を経由して受信したスレーブコマンドを前記第1のインターフェース回路を経由して前記マスタ機器に送信し、前記複数のスレーブ機器のうち前記マスタコマンドの中継が不要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、前記マスタ機器から前記第1のインターフェース回路を経由して前記コマンド判別部によって受信されたマスタコマンドに対応する代理応答コマンドを前記スレーブコマンドとして前記第1のインターフェース回路を経由して前記マスタ機器に送信する応答制御部とを備える
ことを特徴とするインターフェース中継装置。 - 請求項6において、
前記電力制御部は、前記複数の第2のインターフェース回路のうち前記マスタ機器のコマンド送信先として指定されたスレーブ機器に対応する第2のインターフェース回路の電力モードを前記通常電力モードに設定し、前記複数の第2のインターフェース回路のうち前記マスタ機器のコマンド送信先として指定されないスレーブ機器に対応する第2のインターフェース回路の電力モードを前記低電力モードに設定する
ことを特徴とするインターフェース中継装置。 - 請求項1〜7のいずれか1項において、
前記第1および第2のインターフェースは、シリアルATAインターフェースである
ことを特徴とするインターフェース中継装置。 - 第1のインターフェースを経由してマスタ機器に接続される第1のインターフェース回路と、第2のインターフェースを経由してスレーブ機器に接続され、且つ、通常電力モードと低電力モードとを切替可能な第2のインターフェース回路とを備えるインターフェース中継機器を用いて前記マスタ機器と前記スレーブ機器との間を中継する中継方法であって、
前記スレーブ機器の動作状況を示した機器状況情報に基づいて前記マスタ機器から前記スレーブ機器へのマスタコマンドの中継の要否を判別するステップ(a)と、
前記ステップ(a)によって前記マスタコマンドの中継が必要であると判別された場合、前記第2のインターフェース回路の電力モードを前記通常電力モードに設定し、前記ステップ(a)によって前記マスタコマンドの中継が不要であると判別された場合、前記第2のインターフェース回路の電力モードを前記低電力モードに設定するステップ(b)と、
前記ステップ(a)によって前記マスタコマンドの中継が必要であると判別された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記第2のインターフェース回路を経由して前記スレーブ機器に送信し、前記スレーブ機器から前記第2のインターフェース回路を経由して受信したスレーブコマンドを前記第1のインターフェース回路を経由して前記マスタ機器に送信するステップ(c)と、
前記ステップ(a)によって前記マスタコマンドの中継が不要であると判別された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記スレーブ機器に送信せずに、当該マスタコマンドに対応する代理応答コマンドを前記スレーブコマンドとして前記第1のインターフェース回路を経由して前記マスタ機器に送信するステップ(d)とを備える
ことを特徴とするインターフェース中継方法。 - 請求項9において、
前記機器状況情報は、前記スレーブ機器のアクセスの可否を示し、
前記ステップ(a)は、前記スレーブ機器がアクセス可能な動作状況である場合には前記マスタコマンドの中継が必要であると判別し、スレーブ機器がアクセス不可能な動作状況である場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継方法。 - 請求項10において、
前記スレーブ機器は、記憶メディアを装填可能な記憶装置を含み、
前記機器状況情報は、前記記憶装置への記憶メディアの装填の有無を示し、
前記ステップ(a)は、前記記憶装置に前記記憶メディアが装填されている場合には前記マスタコマンドの中継が必要であると判別し、前記記憶装置に前記記憶メディアが装填されていない場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継方法。 - 請求項10において、
前記スレーブ機器は、記憶メディアをスピンアップして前記記憶メディアに対してデータを読み書きする記憶装置を含み、
前記機器状況情報は、前記記憶メディアのスピンアップが完了したか否かを示し、
前記ステップ(a)は、前記記憶メディアのスピンアップが完了している場合には前記マスタコマンドの中継が必要であると判別し、前記記憶メディアのスピンアップが完了していない場合には前記マスタコマンドの中継が不要であると判別する
ことを特徴とするインターフェース中継方法。 - 第1のインターフェースを経由してマスタ機器に接続される第1のインターフェース回路と、複数の第2のインターフェースを経由して複数のスレーブ機器にそれぞれ接続され、且つ、それぞれが通常電力モードと低電力モードとを切替可能な複数の第2のインターフェース回路とを備えるインターフェース中継装置を用いて前記マスタ機器と前記複数のスレーブ機器との間を中継する方法であって、
前記複数のスレーブ機器の動作状況を示した機器状況情報に基づいて、前記複数のスレーブ機器の各々について前記マスタ機器から当該スレーブ機器へのマスタコマンドの中継の要否を判別するステップ(a)と、
前記複数の第2のインターフェース回路のうち前記ステップ(a)によって前記マスタコマンドの中継が必要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを前記通常電力モードに設定し、前記複数の第2のインターフェース回路のうち前記ステップ(a)によって前記マスタコマンドの中継が不要であると判別されたスレーブ機器に対応する第2のインターフェース回路の電力モードを前記低電力モードに設定するステップ(b)と、
前記ステップ(a)によって前記複数のスレーブ機器のうち前記マスタコマンドの中継が必要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを前記複数の第2のインターフェース回路のうち当該スレーブ機器に対応する第2のインターフェース回路を経由して当該スレーブ機器に送信し、当該スレーブ機器から前記複数の第2のインターフェース回路のうち当該スレーブ機器に対応する第2のインターフェース回路を経由して受信したスレーブコマンドを前記第1のインターフェース回路を経由して前記マスタ機器に送信するステップ(c)と、
前記ステップ(a)によって前記複数のスレーブ機器のうち前記マスタコマンドの中継が不要であると判別されたスレーブ機器が前記マスタ機器のコマンド送信先として指定された場合、前記マスタ機器から前記第1のインターフェース回路を経由して受信したマスタコマンドを当該スレーブ機器に送信せずに、当該マスタコマンドに対応する代理応答コマンドを前記スレーブコマンドとして前記第1のインターフェース回路を経由して前記マスタ機器に送信するステップ(d)とを備える
ことを特徴とするインターフェース中継方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011081832 | 2011-04-01 | ||
JP2011081832 | 2011-04-01 | ||
PCT/JP2012/001648 WO2012137411A1 (ja) | 2011-04-01 | 2012-03-09 | インターフェース中継装置およびインターフェース中継方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2012137411A1 true JPWO2012137411A1 (ja) | 2014-07-28 |
Family
ID=46968827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013508732A Pending JPWO2012137411A1 (ja) | 2011-04-01 | 2012-03-09 | インターフェース中継装置およびインターフェース中継方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20140025979A1 (ja) |
JP (1) | JPWO2012137411A1 (ja) |
CN (1) | CN103460158A (ja) |
WO (1) | WO2012137411A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6167516B2 (ja) | 2012-12-19 | 2017-07-26 | 富士通株式会社 | 中継装置、中継方法及び電力制御システム |
DE102014209489A1 (de) * | 2014-05-20 | 2015-11-26 | Robert Bosch Gmbh | Vorrichtung zum sicheren Einbinden einer Softwarekomponente in einem Kraftfahrzeug |
GB2536309B (en) * | 2015-03-09 | 2017-08-02 | Cirrus Logic Int Semiconductor Ltd | Low power bidirectional bus |
US11216061B2 (en) * | 2019-07-25 | 2022-01-04 | Arm Limited | Methods and apparatus for interfacing between power domains |
JP6992142B2 (ja) * | 2020-10-13 | 2022-01-13 | キヤノン株式会社 | 電子機器及び電子機器の制御方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001350548A (ja) * | 2000-06-07 | 2001-12-21 | Konica Corp | 外部記憶装置の電源制御回路 |
JP3570996B2 (ja) * | 2001-02-15 | 2004-09-29 | Necパーソナルプロダクツ株式会社 | ネットワーク中継装置およびネットワーク管理システム |
JP4274523B2 (ja) * | 2003-01-24 | 2009-06-10 | 株式会社日立製作所 | 記憶装置システム、及び記憶装置システムの起動方法 |
JP4133459B2 (ja) * | 2003-03-06 | 2008-08-13 | シャープ株式会社 | 集線装置,ネットワーク対応装置,通信システム |
US7107442B2 (en) * | 2003-08-20 | 2006-09-12 | Apple Computer, Inc. | Method and apparatus for implementing a sleep proxy for services on a network |
US7913043B2 (en) * | 2004-05-14 | 2011-03-22 | Bakbone Software, Inc. | Method for backup storage device selection |
CN101051242A (zh) * | 2006-04-05 | 2007-10-10 | 华硕电脑股份有限公司 | 用于一计算机***的电源供应控制方法及装置 |
TW201015286A (en) * | 2008-10-02 | 2010-04-16 | Alcor Micro Corp | Bridging device with power-saving function |
TW201107991A (en) * | 2009-08-26 | 2011-03-01 | Hon Hai Prec Ind Co Ltd | Electronic device capable of switching between a USB master and a USB slave mode automatically |
-
2012
- 2012-03-09 JP JP2013508732A patent/JPWO2012137411A1/ja active Pending
- 2012-03-09 CN CN2012800157929A patent/CN103460158A/zh active Pending
- 2012-03-09 WO PCT/JP2012/001648 patent/WO2012137411A1/ja active Application Filing
-
2013
- 2013-09-24 US US14/035,722 patent/US20140025979A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
WO2012137411A1 (ja) | 2012-10-11 |
US20140025979A1 (en) | 2014-01-23 |
CN103460158A (zh) | 2013-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101473310B (zh) | 无线闪存卡扩充*** | |
WO2012137411A1 (ja) | インターフェース中継装置およびインターフェース中継方法 | |
US20060174049A1 (en) | USB to SATA bridge system | |
KR101410596B1 (ko) | 정보 처리 장치, 카피 제어 프로그램 및 카피 제어 방법 | |
JP4556220B2 (ja) | データ伝送ブリッジ装置とそのコントロールチップ及びデータ伝送ブリッジ方法 | |
CN107908589B (zh) | I3c验证从设备、主从设备的通信验证***及方法 | |
JP5284140B2 (ja) | インタフェース制御装置 | |
JP2006343815A (ja) | 通信装置、通信方法、通信システム | |
CN101697149B (zh) | 多处理器设备、多处理器设备对外通信的方法和*** | |
US7831755B2 (en) | Method and system for interfacing a plurality of memory devices using an MMC/SD protocol | |
JP2008521080A (ja) | マルチメディア・カード・インターフェース方法、コンピュータ・プログラム及び装置 | |
CN111143898B (zh) | 可插拔存储器装置数据保护方法 | |
JP2003202961A (ja) | データ再生システム、送受信装置、およびバス変換ユニット | |
JP4239930B2 (ja) | データ転送制御システム、電子機器及びプログラム | |
JP5082599B2 (ja) | データ転送装置 | |
JP5320780B2 (ja) | 情報処理システム、機能拡張装置及び制御方法 | |
KR100592106B1 (ko) | 개별 메모리 접근 허용 방법 및 장치 | |
JP2011181011A (ja) | データ記憶装置およびデータ記憶装置の低消費電力制御方法 | |
KR100736902B1 (ko) | 복수의 프로세서에 의한 메모리 공유 방법 및 장치 | |
JP2009266178A (ja) | 中継装置および中継システム | |
US20070050048A1 (en) | Control apparatus and method, and program | |
JP6631370B2 (ja) | マイクロコンピュータ及び電子制御装置 | |
JP2006243890A (ja) | バスブリッジおよびデータ転送方法およびプログラム | |
JP5481583B2 (ja) | インタフェース制御装置 | |
JP5359309B2 (ja) | 電子機器 |