マルチプロトコル記憶装置ブリッジ
ブリッジは、ホストとデータ/コマンドを送受信する際に経由するホストインターフェイスと、記憶装置とデータ/コマンドを送受信する際に経由する記憶装置インターフェイスとを含む。ブリッジはまた、1つのSDPCと、コントローラと、切替システムとを含み、切替システムはコントローラにより設定可能であり、ホスト装置によって使用されている記憶装置プロトコルが記憶装置によって使用されている記憶装置プロトコルと異なる場合は、ホストインターフェイスと記憶装置インターフェイスにプロトコル変換器を接続し、2つの記憶装置プロトコルが同じ場合は、双方向プロトコル変換器を経由せずにホスト装置インターフェイスを記憶装置インターフェイスに接続する。ブリッジは2つのSDPCを含む場合もあり、2つのSDPCはそれぞれ異なるプロトコルをホストプロトコルに、かつ逆も同様に変換し、切替システムは2つのSDPCの間で切り替えるよう設定される。ブリッジはSDPCを完全に除外する場合もあり、この場合、切替システムは、(1)ホスト装置インターフェイスを記憶装置インターフェイスに接続する状態と、(2)記憶装置インターフェイスを迂回する状態との間で、切り替えるように設定される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般には記憶システムに関し、より具体的にはホスト装置が使用している通信プロトコルと同じかまたは異なる通信プロトコルを使用する記憶装置にホスト装置を接続する方法と、この接続方法を可能にする装置とに関する。
【背景技術】
【0002】
フラッシュ記憶装置は持ち運びができ、物理的サイズが小さく、記憶容量が大きいため、ここ数年にわたりその使用が急速に普及している。フラッシュ記憶装置には様々な設計がある。記憶装置には「取り外し可能」とみなされるものがある。これは、ユーザがある1台のホスト装置(例えば、携帯電話機)から別のホスト装置へ記憶装置を移せること、または1台のホスト装置で記憶装置を取り替えながら複数の記憶装置を使用できることを意味する。記憶装置には「組込型」とみなされるものもある。これは、記憶装置が、ホスト装置に組み込まれ、ユーザによってホスト装置から取り外せないことを意図する。
【0003】
ホストは、既存の記憶装置であれ、将来の記憶装置であれ(例えば、SDカード、UFSカード、UHS−IIカード等)、様々な種類の取り外し可能な記憶装置で動作する必要がある。様々な記憶装置は、異なる種類のプロトコルを使用するかまたは使用できるように設計される場合がある。この目的のため、ホスト装置は、様々なプロトコルに対応しなければならない可能性がある。それには通常、異なるカードおよびプロトコルに応じて別々のインターフェイスが必要となる。また、ホストは、様々な記憶装置通信トポロジに対応しなければならない可能性がある。
【0004】
様々な記憶装置と通信するために異なるプロトコルおよびトポロジに対応する多数のインターフェイスをホストに設けることは、必ずしも現実的ではなく、また効果的ではない。このため、より良いアプローチでこの問題に対処する必要がある。
【発明の概要】
【0005】
前述したことに鑑み、例えば単一の共通インターフェイスを介して様々な種類の記憶装置と通信できるホスト装置があれば有益である。記憶装置には、レガシーSDカードなどの「遅い」カードと、UHS−IIカードやUFSカードなどの「速い」カードがあり、単一の共通インターフェイスで全てのカードに対応できると有利である。種々のプロトコルで通信を行うために、単一の共通インターフェイスは、汎用インターフェイス(以下「ブリッジ」と呼ぶ)と適合される。そのような通信に対応するように設計されたブリッジの様々な実施形態を本願明細書に提示する。
【0006】
一実施例において、ブリッジは、シリアル通信経路に沿って配置され、通信の観点では、ホスト装置と取り外し可能な記憶装置との間を結合する。ホスト装置と記憶装置との間でデータとコマンドを伝達するために、ブリッジは2つのインターフェイスを含む。2つのインターフェイスのうち、一方はホスト側のホストインターフェイスであり、他方は記憶装置側の記憶装置インターフェイスである。
【0007】
ブリッジは、1つまたは複数の双方向記憶装置プロトコル変換器(「SDPC」)を含みうる。SDPCは、ホスト装置が使用する記憶装置プロトコルを使用し、データおよびコマンドを変換し、ホストインターフェイスを介してホスト装置へ伝送するように適合されうる。このようなSDPCは、記憶装置が使用する記憶装置プロトコルを使用し、データおよびコマンドを変換し、記憶装置インターフェイスを介して記憶装置へ伝送するようにさらに適合される。ブリッジはまた、コントローラと切替システムとを含む。切替システムは、コントローラによって複数の状態のうちのいずれか1つに設定されうる。例えば、ホスト装置によって使用される記憶装置プロトコルと、ホストに係合された記憶装置によって使用される記憶装置プロトコルとが異なる場合は、切替システムが、SDPCを介してホストインターフェイスを記憶装置インターフェイスに接続する状態(1)となり、2つの記憶装置プロトコルが同じ場合は、SDPCを迂回して、切替システムが、ホスト装置インターフェイスを記憶装置インターフェイスに直結するかまたは他の手段を通じて接続する状態(2)となり、ブリッジに記憶装置が接続されていない場合は、切替システムが記憶装置インターフェイスを迂回する状態(3)となる。
【0008】
前述した3つのスイッチ状態の全てが、ブリッジで実施または使用されるとは限らない。ブリッジが使用するスイッチ状態の数と種類は状況しだいで異なりうる(例えば、変換の種類、使用するネットワークトポロジの種類等)。例えば、前述した状態(1)と状態(2)は、例えばホスト装置と記憶装置がチェーントポロジで機能的に接続される場合に当てはまる。別の例では、前述した状態(1)と状態(3)は、例えばホスト装置と記憶装置がリングトポロジで機能的に接続され、プロトコル変換が不要な場合に当てはまる。また、リングトポロジでプロトコル変換が必要な場合には、前述した状態の全てが当てはまる。切替システムを操作することにより、低速記憶装置プロトコルを使用する装置も高速記憶装置プロトコルを使用する装置も、単一の共通高速記憶装置プロトコルを使用してブリッジを介してホスト装置と通信できる。
【0009】
代替として、ブリッジは、2つのSDPCを含む場合もあり、2つのSDPCはそれぞれ異なるプロトコルをホストプロトコルに、かつ逆も同様に変換し、切替システムは2つのSDPCだけを切り替えるようにコントローラによって設定される。やはり、ブリッジはSDPCを完全に除外する場合もあり、この場合、切替システムは、(1)ホスト装置インターフェイスを記憶装置インターフェイスに接続する状態と、(2)記憶装置インターフェイスを迂回する状態との間だけを切り替えるようにコントローラによって設定されうる。別の実装形態において、ブリッジはホスト装置または通信ハブに直接接続されうる。これらの実施形態、特徴、態様、および利点は、本願明細書の説明と、添付の特許請求の範囲と、後述する添付の図面からより良く理解されるはずである。
【0010】
添付の図面は、本願明細書に組み入れられかつ本願明細書の一部をなし、様々な実施形態を図解するものであるが、これらの実施例は制限を目的としていない。図を簡潔明瞭にするために、以下参照する図中の要素が必ずしも一定の縮尺で描かれていないことを理解するべきである。また、同様の要素、対応する要素、または類似する要素を指示するために必要に応じて図の中で参照番号が繰り返される場合がある。
【図面の簡単な説明】
【0011】
【図1】チェーントポロジを使用し、ホスト装置が速い記憶装置(例えば、UFSカード)、または遅い記憶装置(例えば、レガシーSDカード)と通信する、例示的な従来型ネットワークアーキテクチャの図である。
【図2】一実施形態によるブリッジを含む、チェーントポロジを使用する記憶装置ネットワークアーキテクチャの図である。
【図3】一実施形態によるブリッジを含む、チェーントポロジを使用するネットワークアーキテクチャの図である。
【図4】一実施形態によるブリッジを示す。
【図5】一実施形態によるブリッジを示す。
【図6】一実施形態によるブリッジを示す。
【図7】一実施形態によるブリッジを操作する方法を示す。
【図8】SCSI・オーバー・UFSプロトコルを使用して、記憶装置インターフェイスコマンドが双方向に透過的に伝送される、ブリッジ経由のホスト装置と記憶装置との間の通信を概略的に示す。
【図9】SD・オーバー・UFSプロトコルを使用して、記憶装置インターフェイスコマンドが双方向に透過的に伝送される、ブリッジ経由のホスト装置と記憶装置との間の通信を概略的に示す。
【図10】SCSI・オーバー・UFSプロトコルを使用するホスト装置とレガシーSDプロトコルを使用する記憶装置との間のブリッジ経由の通信を概略的に示す。
【図11】一実施形態によるブリッジの機能的配置を示す。
【図12】SD・オーバー・UFSプロトコルを使用するホスト装置とレガシーSDプロトコルを使用する記憶装置との間のブリッジ経由通信を概略的に示す。
【図13】一実施形態によるブリッジの機能的配置を示す。
【図14】リングトポロジで接続された組込型記憶装置のためのUHS−IIインターフェイスと、レガシーSDカードのための記憶装置インターフェイスと、UHS−IIカードのための記憶装置インターフェイスとを含むホスト装置を示す。
【図15】1つのレガシーSDインターフェイスと、リングトポロジで接続された1つのUHS−IIインターフェイスと、「非迂回」状態にあるバイパスソケットとを含むホスト装置を示す。
【図16】バイパスソケットが「迂回」状態にある図15のデータ記憶システムを示す。
【図17】1つのUHS−IIインターフェイスとリングトポロジで接続された図6のブリッジとを含むホスト装置を示す。
【図18】一実施形態による接続解析器を示す。
【発明を実施するための形態】
【0012】
以下の説明では例示的な実施形態の様々な詳細を提示する。しかし、この説明は特許請求の範囲を制限するものではなく、本発明の様々な原理と本発明を実践する方法を説明することを目的とする。
【0013】
ユニバーサルフラッシュストレージ(UFS)は、デジタルカメラ、携帯電話機、家庭用電子機器のために提案された共通のフラッシュストレージ仕様である。UFSは、フラッシュメモリストレージのデータ転送速度を上げ、高信頼性を提供するように設計されている。超高速タイプII(UHS−II)は、次世代SDカードを規定する新しい仕様である。UFSプロトコルとUHS−IIプロトコルは、本願明細書において「高速プロトコル」とも呼ばれる。現世代(すなわち、非UHS−II)のSDカード/プロトコルは、本願明細書において「レガシーSDカード/プロトコル」または「低速カード/プロトコル」と呼ばれる。
【0014】
セキュアデジタル(「SD」)メモリカードと組込型マルチメディアカード(「eMMC」)記憶装置は、比較的遅いフラッシュ記憶装置の例である。超高速タイプII(「UHS−II」)メモリカードとユニバーサルフラッシュストレージ(「UFS」)記憶装置は、より速いフラッシュ記憶装置の例である。「UFS」は、電子装置技術合同協議会(「JEDEC」)ソリッドステート技術協会のUFS調査委員会によって策定された規格であり、「UHS−II」は次世代SD記憶装置のためのSD協会(「SDA」)によって策定された規格である。比較的遅いデータ通信を容易にするSDプロトコルを使用して、ホスト装置が、SDカードと通信する。より速いデータ通信を容易にするUFSプロトコルとUHS−IIプロトコルをそれぞれ使用して、ホスト装置が、UFSカードおよびUHS−IIカードと通信するように設計される。UHS−IIプロトコルとUFSプロトコルは、データ転送速度がレガシーSDプロトコルを大幅に上回るものとして規定されている。そのような高速データ転送をサポートするために、これらのプロトコル(UHS−IIとUFS)は、レガシーSDインターフェイスおよびeMMCインターフェイスが使用するシングルエンド物理インターフェイスと対照的に、ディファレンシャルシグナリング物理インターフェイスを使用する。高速プロトコルおよび低速プロトコルは、1つまたは複数の層(例えば、リンク層、トランスポート層)の扱い方の点でも異なる。本願明細書では、用語「高速プロトコル/装置/インターフェイス」と「速いプロトコル/装置/インターフェイス」が互換的に使用される。同様に、本願明細書では、用語「低速プロトコル/装置/インターフェイス」と「遅いプロトコル/装置/インターフェイス」が互換的に使用される。
【0015】
ホスト装置は、従来、「ポイント・ツー・ポイント」通信方式を使用してレガシーSDカードと直接通信する。他方、UFS装置は、チェーントポロジ型のデータネットワークを介してホスト装置と通信することになっている。チェーントポロジでは、高速二線ディファレンシャルバスを使用して装置が互いに通信する。このため、より速い規格(すなわち、UFSおよび/またはUHS−II)に対応し、かつ、遅い規格(例えば、SD)の後方適合性であるには、別々の2つの通信インターフェイス、すなわち遅いインターフェイス(例えば、SDインターフェイス)と速いインターフェイス(例えば、UFSインターフェイスおよびUHS−IIインターフェイス)を、ホスト装置に用意する必要がある。このようなホスト装置では異なる通信プロトコルやトポロジを扱う必要があるため、入力・出力(「I/O」)数、プロセッサの複雑さ、回路基板配線、コンピュータリソース、ホストゲート数、試験手順等の点で代償が大きい。
【0016】
UHS−II記憶装置は、「リング」と呼ばれるネットワークトポロジを使用してホスト装置と通信するように設計することができる。「リング」トポロジは、複数の装置が直列に接続され、最初の装置と最後の装置がホスト装置に直接接続されるネットワーク構成である。リングトポロジは相互に接続された装置間に一方向通信路を提供するため、1箇所が故障すると不通になるおそれがある。また、ケーブルが破断するとリングに取り付けられた装置が孤立するおそれがある。このため、UHS−II型記憶装置を使用するホスト装置には特別な通信インターフェイスが必要となる。ホスト−記憶装置環境でリングトポロジを使用すると、取り外し可能な記憶装置が取り外されたときに通信経路が破断するという問題がある。このため、UHS−IIに基づくホスト装置には、(図14に見られるように)3種類のインターフェイス、すなわち(1)リングトポロジで接続される組込型装置のためのUHS−IIインターフェイス、(2)UHS−II規格に対応する取り外し可能な記憶装置のためのUHS−IIインターフェイス、および(3)SD後方適合性を容易にするレガシーSDインターフェイスを用意する必要がある。
【0017】
図1は、従来型記憶システムアーキテクチャ100の一実施例である。前に説明したように、新しいデータ記憶装置プロトコルは、例えばレガシーSDプロトコルに比べて、より速いデータおよびコマンドの転送を容易にするように設計されている。図1に示すように、2種類の記憶装置プロトコル(すなわち、レガシーSDプロトコル等の遅いプロトコル、ならびにUFSおよびUHS−II等の速いプロトコル)に対応する従来の解決策では、ホストプロセッサ(すなわち、ホストプロセッサ110)は2種類の記憶装置プロトコルを別々に処理することが可能になる。以下、「レガシーSD」を略して「SD」と呼ぶ。
【0018】
ホストプロセッサ110でSD後方適合性を確保するために、ホストプロセッサ110は、UFSプロトコルとSDプロトコルの両方を使用し作動するように設計されていると仮定する。UFSプロトコルとSDプロトコルに対応するため、ホストプロセッサ110には2つの別々のインターフェイス、すなわちインターフェイス112とインターフェイス114とが設けられている。インターフェイス112は(SDバス130を介して)取り外し可能なSDカード120と直接通信するために使用される。インターフェイス114は、UFS入/出力装置150、UFS入/出力装置160、UFS型メモリ装置170等の外部装置と、UFSデータ/コマンドをやり取りするために使用される。すなわち、取り外し可能な記憶装置120がUFSカードである場合、またはUFSプロトコルの中にSDデータ/コマンドをカプセル化することによってホストプロセッサ110と通信できるSD−UFSカードである場合にも、インターフェイス114が使用される。(UFSプロトコルの中にSDデータ/コマンドをカプセル化することを、以下「SD・オーバー・UFS」(SD-over-UFS) と呼ぶことに留意するべきである。)
【0019】
UFSプロトコル設計により、ホスト装置110は、チェーントポロジを有するバスを介して周辺装置と通信することができる。チェーントポロジは、装置Aが装置Bへ配線され、装置Bが装置Cへ配線され、装置Cが装置Dへ配線される等の配線方式である。チェーンの中の最後の装置は装置Aへループバックされるのではなく、他の装置を通じて装置Aと通信する。図1を参照すると、ホストプロセッサ110は、UFSバス140を介して装置150と通信し、装置150はUFSバス142を介して装置160と通信し、装置160はUFSバス144を介してUFS組込型メモリ170と通信し、UFS組込型メモリ170はUFSバス146を介して取り外し可能な記憶装置120と通信する。図1の回路構成には、2つの別々のインターフェイス、すなわちSDインターフェイス(すなわち、インターフェイス112)、およびUFSインターフェイス(すなわち、インターフェイス114)を使用するという欠点と、ホストCPU110が、2種類の記憶装置プロトコルおよびトポロジのために、スペースおよびリソースを配分し、回路を専用化することを要求するという欠点とがある。
【0020】
図2は、例示的な一実施形態によるブリッジ250を含む記憶システムアーキテクチャ200の図である。ホストCPU210は、1つの通信インターフェイス(すなわち、通信インターフェイス212)を有し、これを介して外部装置(例えば、取り外し可能な記憶装置260)と通信する。チェーントポロジを使用するこのアーキテクチャにおいて、遅い記憶装置インターフェイス(例えば、レガシーSDインターフェイス)と高速インターフェイス(例えば、UFSインターフェイス)は、いずれも高速記憶装置プロトコルを使用し、ブリッジを介してホストと通信する。このように、高速プロトコルを使用するホスト装置とブリッジ250等のブリッジとを含むシステムは、後方適合性である。つまり、低速プロトコルを使用する装置にも対応できる(この例の速い記憶装置プロトコルはUFSプロトコルであり、遅い記憶装置プロトコルはレガシーSDプロトコルであることに留意するべきである。)
【0021】
図2の実施例で、ホストCPU210と、UHS−II型入/出力モジュール220(例えば,execute in place(「XIP」)装置)と、UHS−II型入出力モジュール230(例えば,WiFi装置)と、組込型メモリ240は、UFSプロトコルを使用してデータおよびコマンドを送受信するように設計されている。相互に接続された装置の各対の間のUFSバスを介した通信は、直通式である。つまり、データとコマンドは、チェーン(チェーントポロジ)ネットワークに沿ってホストCPU210から(UFSバス270を介して)入出力モジュール220へ、入出力モジュール220から(UFSバスを介して)入出力モジュール230へ、入出力モジュール230から(UFSバスを介して)組込型メモリ240へ伝播するために、記憶装置プロトコルの変更は必要ない。
【0022】
ホストCPU210は、レガシーSDカード専用インターフェイスを有していないが(ホストCPU210はただ1つの高速インターフェイス、すなわちインターフェイス212を有し、このインターフェイスはこの実施例においてUFS通信用であることに留意するべきである)、ブリッジ250を使用してレガシーSDカードと通信する高速インターフェイス212を使用する。ブリッジ250は、記憶装置260が「遅い」カード(例えば、レガシーSDカード)であろうが「速い」カード(例えば、UFSカード、SD・オーバー・UFS適合SDカード)であろうが、ホストCPU210と取り外し可能な記憶装置260との間の通信を容易にする。
【0023】
ブリッジ250は、ホストプロセッサ210が使用するプロトコルの種類および取り外し可能な記憶装置260が使用するプロトコルの種類に応じて、「透明」状態または「変換」状態になる。つまり、ブリッジ250は、例えば図4の接続解析器442等の接続解析器を使用することにより、プロトコルの種類を識別し、プロトコルの種類に応じて作動する。つまり、ブリッジ250は、取り外し可能な記憶装置260がレガシーSDプロトコルを使用する場合は「変換」状態に移行し(または「変換」状態を維持し)、それによってUFS型ホストCPU210で使用されているUFS記憶装置プロトコルとレガシーSDカード260で使用されているレガシー記憶装置プロトコルとの間の橋渡しを行い、また、取り外し可能な記憶装置260とホストCPU210が同じプロトコル、この実施例ではUFSプロトコルを使用する場合は、「透明」状態に移行する(または「透明」状態を維持する)。(本開示に関し、本願明細書ではUFSカードとSD・オーバー・UFS型カードをUFSカードと総称することに留意するべきである。)
【0024】
「変換」状態にあるブリッジ250は、UFS記憶装置プロトコルによりホストCPU210から(装置220、230、および240を介して)データ/コマンドを受信し、これらをレガシーSD記憶装置プロトコルを使用して、レガシーSD接続252を介してレガシーSDカード260へ送信する。また、レガシーSD記憶装置プロトコルによりレガシーSDカード260からレガシーSD接続252を介してデータ/コマンドを受信し、これらをUFS記憶装置プロトコルを使用して(装置240、230、および220を介して)ホストプロセッサ210へ送信する。前に説明したように、ホストCPU210と取り外し可能な記憶装置260が同じ記憶装置プロトコル(この実施例ではUFSプロトコル)を使用する場合、プロトコルの変更は必要ない。ホストCPU210および記憶装置260がUFS装置の場合、ブリッジ250および記憶装置260は、UFS接続254経由で接続される。SD接続252とUFS接続254は、論理的に別々の接続として図に示されている。しかし、物理的には共通の端子を有することがある。透明状態にあるブリッジ(例えば、ブリッジ250)は、ホストCPU210と取り外し可能な記憶装置260との間の通信で透明となる。記憶システムアーキテクチャ200は、単独の装置(すなわち、ブリッジ250)としてブリッジを含んでいる。しかし、後述する図3に例示されているように、組込型メモリ(例えば、組込型メモリ240)にブリッジ機能を組み込むこともできる。
【0025】
SD−UFS合同カードもありうる。SD−UFS合同カードは、共通の接続端子を有しうる論理的に独立した2セットのホストインターフェイス端子、すなわちレガシーSDカードに適合する一のセット、およびUFSカードに適合する他のセットと、2セットの記憶装置インターフェイス、すなわちレガシーSDとしてカードを操作する一のセットの記憶装置インターフェイス、およびUFSカードとしてカードを操作する他のセットの記憶装置インターフェイスとを含む。2セットの端子とフロントエンドを有するSD−UFSカードは、SD−UFSカードに適応するソケット、およびインターフェイスの種類に応じてレガシーSDカードとして使用することも、UFSカードとして使用することもできる。ブリッジ250は、2種類の取り外し可能な記憶装置260に適応するただ1つの記憶装置インターフェイス(図2には示されていない)を有する場合がある。あるいは、ブリッジ250は別々の記憶装置インターフェイス(図2に示されていない)、すなわちレガシーSDカード専用の一の記憶装置インターフェイスとUFSカード専用の他の記憶装置インターフェイスとを有する場合もある。
【0026】
一実施例において、ブリッジ250は図2に見られるように(すなわち、1つまたは複数の中間装置を介して)ホストCPU210に接続されうる。別の実施例において、ブリッジ250は、ホストCPU210に直結されうる。別の実施例において、ブリッジ250は、ホストCPU210に直結された通信ハブ、または1つもしくは複数の装置を介してホストCPU210に接続された通信ハブに直結されうる。
【0027】
図3は、例示的な一実施形態によるブリッジと組込型メモリとを組み合わせた装置350を含む記憶システムアーキテクチャ300の図である。記憶システムアーキテクチャ300は、350に見られるようにブリッジと組込型メモリが一体化されている点を除けば、図2の記憶システムアーキテクチャ200と同じである。組込型メモリとブリッジの機能を1つの装置(すなわち、装置350)にまとめれば、スペース、内部配線、入出力インターフェイス等の節約になり有益である。
【0028】
図4に、例示的な一実施形態によるブリッジ400を示す。ブリッジ400はホスト装置インターフェイス402を含む。ホスト装置インターフェイス402は、通信バス404に接続され、通信バス404は(ことによるとチェーンの一部をなす他の装置412を介して)ホストCPUに接続され、ホストCPUは第1の記憶装置プロトコル(例えば、UFS)を使用する。ブリッジ400はまた、第2の記憶装置プロトコル(例えば、レガシーSD)を使用する取り外し可能な記憶装置420と結合する第1の記憶装置インターフェイス406と、第1の記憶装置プロトコルを第2の記憶装置プロトコルに、かつ逆も同様に変換する双方向記憶装置プロトコル変換器(SDPC)450とを含む。ブリッジ400はまた、コントローラ440と切替システム460とを含む。切替システム460はコントローラ440により設定可能であり、第1の記憶装置プロトコル(すなわち、ホストCPU410によって使用されている記憶装置プロトコル)が第2の記憶装置プロトコル(すなわち、取り外し可能な記憶装置によって使用されている記憶装置プロトコル)と異なる場合には、ホスト装置インターフェイス402と第1の記憶装置インターフェイス406との間にプロトコル変換器(SDPC)450を接続し、第1の記憶装置プロトコルと第2の記憶装置プロトコルが同じ場合は、プロトコル変換器450を切断してホスト装置インターフェイス402を第2の記憶装置インターフェイス408に接続する。
【0029】
コントローラ440は、ホストCPUの種類および/またはホストCPUが使用する記憶装置プロトコルの種類を事前に知る場合がある。コントローラ440は、ホストCPUの種類および/またはホスト装置が使用するストレージプロトコルの種類が、事前に分からない場合に、接続解析器442と連携してホスト装置インターフェイス402を監視し、ホストCPU410の情報から、ホストCPUの種類および/またはホストCPUが使用する記憶装置プロトコルの種類を推断する。また、コントローラ440は、接続解析器442を使用して記憶装置インターフェイス406および408を監視し、ブリッジ400に接続された記憶装置がどれなのか、および/または記憶装置インターフェイス406もしくは記憶装置インターフェイス408に接続された記憶装置で使用されている記憶装置プロトコルがどれなのかを検出する。次いで、コントローラ440は、記憶装置420で使用されている記憶装置プロトコルが、ホストCPU410でも使用されている第1の記憶装置プロトコルなのか、それともホストCPU410で使用されていない第2の記憶装置プロトコルなのかを判断する。コントローラ440は、両側(すなわち、ホストCPU410と記憶装置420)で使用されている記憶装置プロトコルの種類を判断し、それらを比較することにより、プロトコル変換が必要かどうかを判断する場合がある。あるいは、コントローラ440は、各々の使用されている記憶装置プロトコルの種類を判断することはせず、両側で同じ記憶装置プロトコルが使用されているのか、それとも異なる記憶装置プロトコルが使用されているのかを判断する場合もある。通常、ホストCPU410や記憶装置420等の装置は、使用する記憶装置プロトコルの種類および/またはバージョンに関する明示的情報を通信の「相手」側に伝達する。この場合、コントローラ440は、この情報伝達を基に記憶装置プロトコルを判断しうる。あるいは、コントローラ440は、通信を監視することによって記憶装置プロトコルの種類を判断する場合もある。
【0030】
第1の記憶装置プロトコルが第2の記憶装置プロトコルと異なる場合、ホストCPU
410がある特定の記憶装置プロトコル(例えば、UFSプロトコル)を使用してブリッジ400を介してSDカード420へ伝えるデータおよびコマンドは、SDカード420が「理解」する別の記憶装置プロトコル(すなわち、レガシーSDプロトコル)を使用してカード420へ送信しなければならないことを意味する。この場合、コントローラ440は接点「(0)」を接点「(1)」に接続するための制御信号444を切替システム460へ送信する。これにより、プロトコル変換器450が、ホスト装置インターフェイス402に接続される(図4に見られる実施例では、プロトコル変換器450は記憶装置インターフェイス406に常時接続されていることに留意するべきである)。このようにして、ホストCPU410は、第1の記憶装置プロトコル、この例ではUFSプロトコルを使用して、記憶装置420へデータ/コマンドを伝達し、また、UFS/SD変換器450は、UFSプロトコルを、レガシーSDカード420で使用できる第2の記憶装置プロトコル、この例ではレガシーSDプロトコルに変換する。第1の装置から第1の記憶装置プロトコルでデータ、コマンド、および信号を受信し、データ/コマンド/信号を翻訳し、かつ翻訳されたデータ/コマンド/信号を別の記憶装置プロトコルを使用して第2の装置へ送信する手順を、本願明細書では「プロトコル変換」または略して「変換」と呼び、用語「変換器」やその派生語を使用する。かかる変換は通常、遅いプロトコル(例えば、レガシーSDプロトコル)を速いプロトコル(例えば、UFSプロトコル、UHS−IIプロトコル)の中にカプセル化すること、および速いプロトコルから遅いプロトコルを開放することを含む。「カプセル化(encapsulation) 」は、一のプロトコルを別のプロトコルの中に埋め込むことを意味し、「開放(de-capsulation)」は反対の操作を意味する。SCSI対SD変換もまた、基礎的SD−SCSIおよびSCSI−SDコマンドの翻訳を含む(この翻訳は、例えば図11のコマンド翻訳器1130等の翻訳器によって実施される)。プロトコル変換はまた、リンク層レベルでの信号翻訳(例えば、「busy」信号翻訳)を含む(この翻訳は、例えば図11のリンク信号翻訳器1185等の翻訳器によって実施される)。
【0031】
ホストCPU410で使用されている記憶装置プロトコルが、ブリッジ400に接続された取り外し可能な記憶装置(この場合は、UFSカード430)で使用されている記憶装置プロトコルと同じ場合、コントローラ440は、接点「(0)」を接点「(2)」に接続するための制御信号444を切替システム460へ送信する。これにより、ホスト装置インターフェイス402は変換器450を経由せず記憶装置インターフェイス408へ直結(464)される(402と408との間に他のコンポーネントが接続される可能性はある)。
【0032】
図2との関係で説明したように、ホストCPU210がUFS型なら、ブリッジ250は、レガシーSDカード、SD−UFSカード、またはUFSカードとして1つの記憶装置に適応するように構成された1つの記憶装置インターフェイスを有する場合と、レガシーSDカード用とSD−UFSカードまたはUFSカード用に2つの記憶装置インターフェイスを有する場合がある。
【0033】
図5に、別の例示的な実施形態によるブリッジ500を示す。ブリッジ500は、2つのプロトコル変換器、すなわち図4に見られるUFSプロトコルからレガシーSDプロトコルに、かつ逆も同様に変換する一のプロトコル変換器(すなわち、プロトコル変換器450)と、UFSプロトコルからUHS−IIプロトコルに、かつ逆も同様に変換する他のプロトコル変換器(すなわち、プロトコル変換器510)とを含む点を除き、ブリッジ400と同様である。(ブリッジ500には一度にただ1つの取り外し可能な記憶装置、すなわちカード420またはカード530を接続することができることに留意するべきである。)
【0034】
ブリッジ500にレガシーSDカード420が現在接続されていることを接続解析器542がコントローラ540に伝えると、コントローラ540は、図4との関係で示し、かつ説明したように、接点「(0)」を接点「(1)」に接続するための制御信号544を切替システム560へ送信する。ブリッジ500にUHS−IIカード530(またはUHS−IIプロトコルを使用するSD−UHS−IIカード)が現在接続されていることを接続解析器542がコントローラ540に伝えると、コントローラ540は、接点「(0)」を接点「(2)」に接続するための制御信号544を切替システム560へ送信する。これにより、ホストCPU410で使用されているUFSプロトコルからUHS−IIカード(またはSD−UFSカード)530で使用されているUHS−IIプロトコルに、かつ逆も同様に変換することが可能となる。ホストCPU410は、UFSプロトコルを使用するので、ブリッジ400のようなブリッジ500は、チェーントポロジで構成される。UHS−IIプロトコルを使用するホストCPUの場合、ブリッジは、図6に示すようにリングトポロジで構成される。
【0035】
図6に、さらに別の例示的な実施形態によるブリッジ600を示す。ホストCPU610は、UHS−IIプロトコルを使用し、リングトポロジを有するバスを通じて外部装置(例えば、UHS−II装置620、レガシーSDカード630またはUHS−IIカード640(またはSD−UHS−IIカード640)、およびUHS−II入出力装置650)と通信する。(ブリッジ600には、レガシーSDカード630とUHS−IIカード640のうちのいずれか一方のみが一度に接続されることに留意するべきである。)ブリッジ600は、UHS−II装置620からデータおよびコマンドを受信するホスト装置インターフェイス602と、レガシーSDカード630との間でデータおよびコマンドを送受信する記憶装置インターフェイス604と、UHS−IIカード640との間でデータおよびコマンドを送受信する記憶装置インターフェイス606と、HS−II装置650へデータおよびコマンドを送信する記憶装置インターフェイス608とを含み、UHS−II装置650は、UHS−IIタイプの組込型メモリ、またはUHS−IIタイプの入出力装置、またはUHS−IIプロトコルを使用する他の何らかの装置であってもよい。
【0036】
ブリッジ600はまた、図4のコントローラ440や図5のコントローラ540と同様の働きをするコントローラ660と、ホストCPU610で使用されているUHS−IIプロトコルをレガシーSDカード630で使用されているレガシーSDプロトコルに(かつ逆も同様に)変換する双方向SDPC670と、3ポジションスイッチ680、および3ポジションスイッチ690を含む切替システム682とを含む。スイッチ680およびスイッチ690は常に同じポジションにあり、かつ常にあるポジションから別のポジションにかけて一斉に動くように設計されかつ制御される。例えば、スイッチ680がポジション「(1)」にあるなら、スイッチ690もまたポジション「(1)」にあり、コントローラ660がいずれか一方(例えば、スイッチ680)を(例えば)ポジション「(3)」に移すと、他方のスイッチ(例えば、スイッチ690)もまた同じポジションに移る。
【0037】
ブリッジ600に接続される記憶装置がレガシーSDカード630などのレガシーSDカードの場合、コントローラ660は図6に見られるようにスイッチ680および690をポジション「(1)」に設定する。ポジション「(1)」ではホストCPU610から発信されるデータおよびコマンドが、UHS−II装置620の中を伝播し、ブリッジ600で受信され、双方向UHS−II/SD変換器670へ転送される。UHS−II/SD変換器670は、UHS−IIプロトコルをレガシーSDプロトコルに変換し、レガシーSDプロトコルを使用して記憶装置インターフェイス604を介してレガシーSDカード630へデータ/コマンドを転送する。(用語「変換」の解釈は前述したとおりであることに留意するべきである。)レガシーSDカード630は、レガシーSDプロトコルを使用してデータまたは応答をUHS−II/SD変換器670へ送り、UHS−II/SD変換器670は、UHS−IIプロトコルを使用してリング内の次の装置(すなわち、UHS−II入出力装置650)へデータまたは応答を送信する。データ/コマンドは、引き続きUHS−IIプロトコルを使用してリング内を伝播する。ホストCPU610によって送信されるデータ/コマンドがレガシーSDカード630向けのものでない場合、プロトコル変換を使用することなく、記憶装置インターフェイス608を介してリング内の次の装置(すなわち、UHS−II入出力装置650)へコマンド/データを送ることにより、レガシーSDプロトコルとコマンド/データとの変換を省くことができる。これを実現する一方法は、取り外し可能な記憶装置の識別情報(「ID」)をブリッジに蓄積することである。コントローラ660は、このIDをもとに、コマンド/データが取り外し可能な記憶装置(例えば、カード630または640)向けのものかどうかを知ることが可能になる。
【0038】
ブリッジ600に接続される記憶装置がUHS−II適合カード640(すなわち、UHS−IIカードまたはSD−UHS−IIカード)の場合、プロトコル変換は不要であるため(つまり、ホストCPU610とカード640はいずれも真のUHS−II装置であるため)、コントローラ660は、スイッチ680および690をポジション「(2)」に設定する。ポジション「(2)」では、ホストCPU610から発信されるデータ/コマンドがUHS−II装置620の中を伝播し、ブリッジ600で受信され、そのまま(プロトコル変換を行わず)記憶装置インターフェイス606Aを介してUHS−IIカード640へ転送される。データ/コマンドがUHS−IIカード640向けのものでない場合、UHS−IIカード640は、記憶装置インターフェイス606Bとスイッチ690の接点「(2)」を介してリング内の次の装置へ、この例ではUHS−II入出力装置650へ、データ/コマンドを転送する。リング型データネットワークの中で装置のいずれか1つが取り外され、当該装置の取り外しによって生じた空白を埋めるための措置が講じられない場合、通信ループは切断される。再び図6に戻ると、接続解析器662は、(例えば)図4の接続解析器442に類似するが、ホスト装置インターフェイス602、ならびに記憶装置インターフェイス604、606、および608を監視し、それらのインターフェイスに接続される装置を検出し、それぞれの装置で使用されている記憶装置プロトコルを判断する。接続解析器662はインターフェイスの監視状況(インターフェイス「x」に装置が接続されているかどうか、インターフェイス「x」に接続された装置がプロトコル「y」を使用している等)をコントローラ660に知らせる。記憶装置インターフェイス604にレガシーSDカードが接続されておらず、かつ記憶装置インターフェイス606にUHS−II適合カードが接続されていないことを接続解析器662がコントローラ660に知らせると、コントローラ660はスイッチ680およびスイッチ690をポジション「(3)」に設定する。
【0039】
スイッチ680および690がポジション「(1)」になると、ブリッジ600は、「変換」状態になる。スイッチ680および690がポジション「(2)」になると、ブリッジ600は、「透明」状態になる。スイッチ680および690がポジション「(3)」になると、ブリッジ600は、「迂回」状態になる。スイッチ680および690がポジション「(3)」に設定されると、記憶装置インターフェイス604および606は、迂回される。つまり、ブリッジのリング入力(すなわち、ホスト装置インターフェイス602)がブリッジのリング出力(すなわち、記憶装置インターフェイス608)へ内部的に接続され、ブリッジ600を介してリングループが閉じられる。(取り外し可能な記憶装置、例えばレガシーSDカード630またはUHS−IIカード640が、ブリッジ600に接続される場合は、それぞれ、UHS−II/SD変換器またはUHS−II装置640を介して、リングループが閉じられることに留意するべきである。)
【0040】
図7は、例示的な一実施形態に従ってブリッジを操作する方法である。2つの装置が同一ホスト装置に組み込まれているので、ブリッジ400または500に類似するブリッジは、ホストCPUに直接的または間接的に常時接続されていると仮定する。ステップ710で、接続解析器542等の接続解析器は、取り外し可能な記憶装置(例えば、レガシーSDカード420またはUHS−II適合カード530)がブリッジに接続されているかどうかをチェックし、当該装置がブリッジに接続されている場合は、接続された装置で使用されている記憶装置プロトコルの種類を検出する(730)。取り外し可能な記憶装置がブリッジに接続されていなければ(ステップ710で「N」と表示)、ブリッジはアイドル状態を維持するかまたはアイドル状態に入り、ステップ720で取り外し可能な記憶装置が接続されるまで待つ。取り外し可能な記憶装置がブリッジに接続されていれば(ステップ710で「Y」と表示)、接続解析器はコントローラのために、ホストCPUで使用されている記憶装置プロトコルと取り外し可能な記憶装置で使用されている記憶装置プロトコルとをステップ730で識別する。(前述したように、コントローラはホストCPUで使用されているプロトコルを事前に知っている場合があり、その場合、コントローラはホストCPUで使用されている記憶装置プロトコルを「判断」する必要はない。)ステップ740で、(例えば)コントローラ540に類似するコントローラは、2つの記憶装置プロトコルが同じかどうかをチェックし、さらに図5に見られる実施形態の場合にプロトコルが同じでない場合は、コントローラ540は、使用すべきプロトコル変換の種類を判断する。2つの記憶装置プロトコルが同じなら(ステップ740で「Y」と表示)、コントローラ540は、ステップ750で、ホストCPU410と取り外し可能な記憶装置を、図4(接点「(2)」をインターフェイス408に接続)、および図6(接点「(2)」を使用することにより確立される通信経路)に見られるように、直結させる。2つの記憶装置プロトコルが異なるなら(ステップ740で「N」と表示)、コントローラは適切な双方向プロトコル変換器を使用して、入力記憶装置プロトコルを出力記憶装置プロトコルに変換する。ホストCPUからブリッジへ至るデータ/コマンド通信と、取り外し可能な記憶装置からブリッジへ至るデータ/コマンド通信は、ブリッジにデータ/コマンドが入ることから、「入力通信」とみなされる。ブリッジからホストCPUへ至るデータ/コマンド通信と、ブリッジから取り外し可能な記憶装置へ至るデータ/コマンド通信は、ブリッジからデータ/コマンドが出ることから、「出力通信」とみなされる。
【0041】
図8は、ブリッジ830を介してホスト装置810と取り外し可能な記憶装置820との間でデータおよびコマンドを交換するために使用される4つの従来型の通信層を概略的に示すものであり、ここでは小型コンピュータシステムインターフェイス(「SCSI」)規格を使用してデータおよびコマンドが双方向に伝送される。図8は、ホスト装置で使用される記憶装置プロトコルと記憶装置で使用される記憶装置プロトコルが同じ場合のシナリオを指している。このため、ブリッジは通信の観点からは透明である。つまり、記憶装置プロトコル変換は行われない。図8は、UFSカードまたはSD−UFSカード430がブリッジ400に接続される図4に関連している。「SCSI」とは、簡潔に説明すると、コンピュータと周辺装置とを物理的に接続し、コンピュータと周辺装置との間でデータを伝送するための一連の規格である。SCSI規格は、コマンドとプロトコルと電気的および光学的インターフェイスを規定している。SCSIを使用することで様々な装置を接続できる。UFS規格ではSCSIプロトコルのごく一部が使用されている。
【0042】
JEDECのUFS調査委員会によって規定された層は、「物理接続」層と、「リンクコマンド」層と、「トランスポート」層と、「アプリケーション」層とである。ホスト装置810は、UFS構成物理層とUFS構成リンク層(これらの2層を840に示す)を使用することにより、またSCSI構成トランスポート層とSCSI構成アプリケーション層(これらの2層を850に示す)を使用することにより、記憶装置820へデータ/コマンドを送信し、また記憶装置820からデータ/コマンドを受信する。(「SOUP」は、SCSI・オーバー・UFSプロトコル(SCSI-over-UFS protocol)の略であることに留意するべきである。)記憶装置820はホスト装置810と同じ通信層を使用するよう構成されている。したがって、ブリッジ830は、通信の観点からは両装置にとって透明である。つまり、プロトコル変換は必要ない/使用されない。
【0043】
図9は、図8と同様に従来の通信層を概略的に示すものであるが、ここではホスト装置910と取り外し可能な記憶装置920との間でブリッジ930を介してSDデータおよびSDコマンドをやり取りする。ホスト装置910および記憶装置920はUFS構成装置であり、SDデータおよびSDコマンドはUFS通信で伝達されるため、SDデータおよびSDコマンドは、ホスト装置910と記憶装置920との間で、ブリッジ930を介して、SD・オーバー・UFS構成を使用して、やり取りされる。「SD・オーバー・UFS構成」、および「SD・オーバー・UFS通信」は、SDデータおよびコマンドがUFS信号の中にカプセル化される(UFS信号のペイロードとして挿入される)ことを意味する。図9は、ホスト装置で使用される記憶装置プロトコルと記憶装置で使用される記憶装置プロトコルとが同じ場合のシナリオを指している。このため、ブリッジは通信の観点からは透明である。つまり、記憶装置プロトコル変換は行われない。ホスト装置910は、UFS構成物理層およびUFS構成リンク層(これらの2層を940に示す)を使用することにより、またSD・オーバー・UFSトランスポート層およびSD構成アプリケーション層(これらの2層を950に示す)を使用することにより、記憶装置920へSDデータ/コマンドを送信し、また記憶装置920からSDデータ/コマンドを受信する。記憶装置920は、通信層の点ではホスト装置910と同様に構成される。したがって、ブリッジ830は、通信の観点からは両装置にとって透明である。つまり、プロトコル変換は必要ない/使用されない。
【0044】
図10は、図8と同様に従来の通信層を概略的に示すものであるが、図10では、SCSI・オーバー・UFSプロトコルを使用するホスト装置1010とレガシーSDカードとして構成された取り外し可能な記憶装置1020との間で、ブリッジ1030を介して、データおよびコマンドが伝送される。ホスト装置1010は、UFS物理層とUFSリンク層(これらの2層を1040に示す)を使用し、またSCSIトランスポート層とSCSIアプリケーション層(これらの2層を1050に示す)を使用する。レガシーSDカード1020は、SD物理層と、SDリンク層と、SDトランスポート層と、SDアプリケーション層とを使用する。図10は、ホスト装置で使用される記憶装置プロトコルが記憶装置で使用される記憶装置プロトコルと異なる場合のシナリオを指している。このために、記憶装置プロトコル変換が行われる。
【0045】
図11は、高速プロトコルをレガシー(遅い)SDプロトコルに、かつ逆も同様に変換するために、図10のブリッジ1030等のブリッジで使用される変換方式を概略的に示すものである。記憶装置プロトコル変換器(SDPC)1100によって適用されるブリッジ方式は、SCSIトランスポートおよびアプリケーション層を使用することにより、ホスト装置とSDカードの間のデータ/コマンド通信を容易にする。SDPC1100は、SDPC450およびSDPC670をより詳細に示すものであり、高速プロトコル(例えば、UFSまたはUHS−II)の上に「乗る」SCSIコマンドを受信する(1110)。SCSI基本コマンド(例えば、「Read」/「Write」)は対応するSDコマンドに翻訳される(1130)。SDプロトコル固有のコマンド(例えば、「Write Protect」/「SD Security」)は、ホスト装置からSCSIプロトコルにカプセル化されて送信される。そのようなコマンドには開放処理(1120)が行われる。SDコマンド(SD/SCSI翻訳器1130またはSD/SCSIプロトコルカプセル化器1120で処理されたもの)は、レガシーSDコマンド/ステータス/データレジスタと共通のレジスタ1140に保持される。レガシーSDカードプロトコルは、SDトランスポートおよびリンク層1160とSD物理層1170を使用して、メモリ装置インターフェイス1150を通ってレガシーSDカード(SDカードは図11に示されていない)へコマンドを送る。コマンド/データのフロー制御に使用されるリンク層信号(例えば、「Ready」/「Busy」)は、リンク信号翻訳器1185により高速プロトコルリンク層からレガシーSDプロトコルリンク層に翻訳される。記憶装置からホスト装置へ送信される、任意のコマンド応答、データ、信号は同様の過程を経る(つまり、コマンド応答とデータはレガシーSDプロトコルによって共通のレジスタセット1140に読み込まれる。基本情報はSD/SCSI翻訳器1130によってSCSIに翻訳され、SD固有のコマンドはSD/SCSIカプセル化器1120によってSCSIの中にカプセル化されることになる。生成されたSCSIコマンドは、高速プロトコルのリンク層1180と物理層1190を使用して高速メモリインターフェイス1110から送出される。リンク層信号は、リンク信号翻訳器1185によって高速リンク層信号に翻訳される)。
【0046】
図12は、図8と同様に従来の通信層を概略的に示すものであるが、図12ではSD・オーバー・UFSプロトコルを使用するホスト装置1210とレガシーSDカード等の取り外し可能な記憶装置1220との間で、ブリッジ1230を介して、データおよびコマンドが伝送される。ホスト装置1210は、UFS物理層およびUFSリンク層(これらの2層を1240に示す)を使用し、またSDトランスポート層およびSDアプリケーション層(これらの2層を1250に示す)を使用する。図12は、ホスト装置で使用される記憶装置プロトコルが、記憶装置で使用される記憶装置プロトコルと異なる場合のシナリオを指している。このために、記憶装置プロトコル変換が行われる。
【0047】
図13は、高速プロトコルをレガシー(遅い)SDプロトコルに変換するための、図12のブリッジ1230等のブリッジで使用される変換方式を概略的に示すものである。記憶装置プロトコル変換器(SDPC)1300によって適用されるブリッジ方式は、SD・オーバー・UFSトランスポート層を使用することにより、ホスト装置およびSDカード間のデータ/コマンド通信を容易にする。SDPC1300は、SDPC450とSDPC670をより詳細に示すものであり、高速プロトコル(例えば、UFSまたはUHS−II)の中にカプセル化されたSDコマンドを受信する(1310)。SDコマンドは開放され(1320)、レジスタに保持され(1330)、SDトランスポートおよびリンク層1350とSD物理層1360を使用することによりSDカード(SDカードは図13に示されていない)へ伝送される(1340)。コマンド/データのフロー制御に使用されるリンク層信号(例えば、「Ready」/「Busy」)は、リンク信号翻訳器1385により高速プロトコルリンク層からレガシーSDプロトコルリンク層に翻訳される。記憶装置からホスト装置へ送信されるコマンド応答、データ、信号は、同様の過程を経る(つまり、コマンド応答、データ、その他はレガシーSDプロトコルによって共通のレジスタセット1330へ読み込まれる。高速プロトコルのリンク層1380および物理層1390を使用して、高速メモリインターフェイス1310からSD形式で情報が送出される。リンク層信号は、リンク信号翻訳器1385によって高速リンク層信号に直接に翻訳される)。
【0048】
図14は、リングトポロジを介してホスト装置1410へ機能的に接続された、「装置1」(1402に示す)、「装置2」(1404に示す)・・・「装置N」(1406に示す)と呼ばれるN個の組込型UHS−IIカード/装置と、UHS−IIインターフェイス1430を通じて装置1410へ接続された取り外し可能なUHS−II記憶装置1432と、SDインターフェイス1440を通じてホスト装置1410へ接続されたレガシーSD取り外し可能なカード1442とを含むシステムを概略的に示すものである。ホスト装置1410は、3種類のインターフェイス、すなわち(1)リングトポロジで接続されるN個の組込型装置「装置1」〜「装置N」のためのUHS−IIインターフェイス1420と、(2)UHS−II規格に対応する取り外し可能な記憶装置(例えば、UHS−IIカード1432)のためのUHS−IIインターフェイス1430と、(3)レガシーSDカード1442のためのレガシーSDインターフェイス1440とを有する。通信経路がそれぞれ独立しているため、取り外し可能なUHS−IIカード1432は、リングトポロジを介して配線されたN個の組込型装置の動作に影響を与えることなく、ホスト1410から機能的に切断することができる。しかし、前に説明した理由(余分な入出力配線等)のために、インターフェイス1420、1430、および1440等の3つの独立したインターフェイスを含むホスト装置には問題がある。
【0049】
図15は、図14に見られるシステム方式の問題に対する部分的解決法を概略的に示すものである。取り外し可能なUHS−IIカード1432は、バイパススイッチ1540を含むブリッジ1510を介してリングトポロジに接続される。ブリッジ1510は、取り外し可能なUHS−IIカード1432がブリッジ1510に接続されているかどうかを検出し、ブリッジ1510の入力端子1520を取り外し可能なUHS−IIカード1432の「D0」端子に接続し、ブリッジ1510の出力端子1530を取り外し可能なUHS−IIカード1432の「D1」端子に接続し、後ほど説明する図6に見られるように取り外し可能なUHS−IIカード1432がブリッジ1510から取り外れた場合には、入力端子1520を出力端子1530に内部的に接続する手段を備えている。図15のネットワーク方式において、図14に見られる2つのUHS−IIインターフェイスの一方(すなわち、UHS−IIインターフェイス1430)は省かれる。しかし、ホスト装置1500をSD後方適合装置にするには、図15においても単独SDインターフェイス(すなわち、SDインターフェイス1440)は依然として必要となる。
【0050】
図16は、図15のデータ記憶システムを示すものであるが、図15でブリッジ1510に接続されているUHS−IIカード1432はブリッジ1510から切断され、ブリッジ1510は「迂回」状態になっている。「迂回」状態の場合、ブリッジ1510の入力端子1520は、ブリッジの出力端子1530へ内部的に接続される(1610)。このため、取り外し可能なUHS−IIカード1432が記憶装置インターフェイスから取り外されるかまたは切断されている間は、ブリッジ1510内の記憶装置インターフェイスは迂回される。
【0051】
図17は、例示的な一実施形態によりリングトポロジで接続されたブリッジ1710を示す。このリングトポロジは、ホスト1740と、N個の組込型装置(すなわち、1742に示された「装置1」から1744に示された「装置N」までと、図6のブリッジ600)に対応するブリッジ1710とを含む。ホスト装置1740にはインターフェイス(すなわち、UHS−IIインターフェイス1750)が1つしかないが、ブリッジ1710により、取り外し可能なレガシーSDカード1720または取り外し可能なUHS−IIカード1730と、ホスト装置1740との間の通信は可能となる。ホスト1740は、1750に示されるただ1つの記憶装置インターフェイスを通じてUHS−IIプロトコルを使用して、リングトポロジの中の各装置と通信する。取り外し可能なUHS−IIカード1730がブリッジ1710に接続される場合は、切替システム1760が、リングのループへカード(すなわち、1730)を接続し、SDPC1770は使用しない。取り外し可能なレガシーSDカード1720がブリッジ1710に接続される場合は、UHS−IIプロトコルからレガシーSDプロトコルに、かつ逆も同様に変換するために、切替システム1760は、カードをSDPC1770を通してリングのループへ接続する。切替システム1760は、図6の切替システム682とほぼ同じであり、SDPC1770は、図6のSDPC670とほぼ同じである。
【0052】
図18は、一実施形態による接続解析器1800を示す。接続解析器1800は、ホストプロトコル検出器1810と、カードプロトコル検出器1820と、カード挿入/除去検出器1830とを含む。前に説明したように、ホスト装置が記憶装置プロトコルの種類を事前に知らない場合は、ブリッジが、ホスト装置との通信を監視することによって種類を判断しうる。この場合、ホストプロトコル検出器1810は、ホスト装置から出る通信信号を監視し、ホスト装置が使用している記憶装置プロトコルの種類を検出する。接続解析器1800は、ホスト装置が使用しうる1つまたは複数の記憶装置プロトコルをサポートするために、構成可能なインターフェイス1840を含みうる。ホスト装置が使用するプロトコルの種類を検出するために、ホストプロトコル検出器1810はまず、インターフェイス1840を第1の種類の高速プロトコル(例えば、UFS)を使用して作動するように構成する。ホストプロトコル検出器1810は、ホスト装置からインターフェイス1840を通じてホストプロトコル検出器1810が受信する通信信号に基づき、この初期インターフェイス構成がホスト装置の記憶装置プロトコルに一致するかどうかを判断する。初期インターフェイス構成がホスト装置のプロトコルに一致しない場合は、ホストプロトコル検出器1810は、インターフェイス1840を、第2の種類の高速プロトコル(例えば、UHS−II)を使用して作動するように構成する。ホスト装置が使用するプロトコルとインターフェイス構成は、1対1で対応すると仮定する。(UFSおよび/またはUHS−II以外の速い記憶装置プロトコルがホスト装置で使用される場合もあることに留意するべきである。)つまり、ホストプロトコル検出器1810は、インターフェイス1840の作動構成と対応するプロトコルとの関係から、ホスト装置が使用している記憶装置プロトコルの種類を判断する。ホストプロトコル検出器1810は、代替として、ホスト装置が上位通信層(例えば、リンク層、トランスポート層、アプリケーション層)を使用してブリッジへ伝送する情報またはプロトコルコマンドから、ホスト装置が使用しているプロトコルの種類を判断する場合がある。
【0053】
あるいは、ホストプロトコル検出器1810は、1つまたは複数の速いプロトコルに適した1つの物理インターフェイス(例えば、インターフェイス1840)を使用してホスト装置と通信する場合がある。ホスト装置は、特定の速いプロトコルを使用してプロトコルコマンドをブリッジへ伝達すると仮定する。ホストプロトコル検出器1810は、このプロトコルコマンドを受け取り、プロトコルコマンドからホスト装置が使用しているプロトコルの種類を推断し、該当する記憶装置プロトコルを使用する。
【0054】
一実施例において、カードプロトコル検出器1820は、最低でも遅い記憶装置プロトコル(例えば、レガシーSDプロトコル)を使用する記憶装置(例えば、記憶装置1870)と通信する。この実施例において、カードプロトコル検出器1820はまず、記憶装置1870から構成情報を読み取るために、遅い記憶装置プロトコルを使用して記憶装置1870と通信する(1860)。この構成情報は、記憶装置が使用することができる記憶装置プロトコルの種類に関する情報を含んでいる。カードプロトコル検出器1820は、読み取った構成情報を基に、記憶装置1870がホスト装置で使われている速い記憶装置プロトコルを使用できるかどうかを判断する。記憶装置1870が、ホスト装置で使われている速い記憶装置プロトコルを使用していない場合、カードプロトコル検出器1820は、遅いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。記憶装置1870が、ホスト装置で使われている速い記憶装置プロトコルを使用できる場合、カードプロトコル検出器1820は、速いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。
【0055】
別の実施例において、カードプロトコル検出器1820はまず、速い記憶装置プロトコル(例えば、UHS−II)を使用して記憶装置(例えば、記憶装置1870)と通信する。この実施例において、カードプロトコル検出器1820はまず、速い記憶装置プロトコルを使用して記憶装置1870と通信する(1860)。記憶装置1870が通信に応答しない場合、カードプロトコル検出器1820は、遅いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。記憶装置1870が通信に応答する場合、カードプロトコル検出器1820は、速いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。
【0056】
プロトコル検出工程に着手するには、記憶装置がブリッジに接続されているかどうかを判断する必要がある。別の実施例において、記憶装置1870は、ソケット1880を介してブリッジに接続される。リングトポロジとの関係で前に説明したように、装置がリングのループから取り外される場合は、ループが切断されないようにするために、取り外された装置を迂回しなければならない。このため、ソケット1880は機械スイッチ1890を含みうる。機械スイッチ1890は、ソケット1890と記憶装置1870が物理的かつ機能的に係合されると第1の状態(例えば、「オン」)になり、ソケット1890から記憶装置1870が取り外されると第2の状態(例えば、「オフ」)になる。そうはいっても、ソケット1880はカード接続検出器1830へ接続信号1892を送り、カード接続検出器はこの接続信号を基に、記憶装置がソケット1890(すなわち、ブリッジ)に接続されているかどうかを判断する。あるいは、カード接続検出器1830は、ポーリング方式で記憶装置1870をポーリングする場合もある。ポーリングセッションは、記憶装置で使用されているプロトコルの種類が判明した後に行われる。記憶装置で何らかのプロトコルが使用されていることが判明する場合、記憶装置はブリッジに接続されているといえる。接続されていると想定される記憶装置に対して通信を試みて失敗する場合、カードプロトコル検出部1820は、ソケット1880に記憶装置が接続されていないと判断する。
【0057】
コントローラ440、540、および660は、通常の既製のシステム・オン・チップ(「SoC」)デバイス、またはシステム・イン・パッケージ(「SiP」)デバイス、またはコントローラによって実行されたときに本願明細書で説明した設定、ステップ、操作、判断、および評価を実施する専用のファームウェア、ソフトウェア、またはアプリケーションを備える汎用処理装置であってもよい。コントローラは、ハードウェアを使用し、本願明細書で説明した設定、ステップ、操作、判断、および評価を組み込む特定用途向け集積回路(「ASIC」)であってもよい。
【0058】
本願明細書で使用する冠詞は冠詞の文法的対象が文脈しだいで1つであったり、2つ以上であったりする(少なくとも1つである)ことを意味する。例えば「要素」は、文脈しだいで1つの要素を意味することもあれば2つ以上の要素を意味することもある。本願明細書で使用する用語「含む」とは、「・・・を含むが、・・・に限定されない」ことを意味し、かつこれと互換的に使われる。本願願明細書で使用する用語「または」、「もしくは」と「および」、「かつ」は、特に文脈で明示されない限り用語「または(もしくは)/および(かつ)」を意味し、かつこれと互換的に使われる。本願明細書で使用する用語「等」は、「・・・等であるが、・・・に限定されない」ことを意味し、かつこれと互換的に使われる。
【0059】
これまで本発明の代表的な実施形態を説明してきたが、開示された実施形態の修正が本発明の範囲内にあることは当業者にとって明白である。代替の実施形態は、より多くのモジュール、より少ないモジュール、および/または機能的に等価なモジュールを含むことがある。本開示は、メモリカード、SD式フラッシュメモリカード、フラッシュ記憶装置、USBフラッシュドライブ(「UFD」)、マルチメディアカード(「MMC」)、セキュアデジタル(「SD」)、ミニSD、マイクロSD等の様々な種類の大容量記憶装置に関係する。したがって、添付の特許請求の範囲は、本願明細書での開示によって制限されるものではない。
【技術分野】
【0001】
本発明は、一般には記憶システムに関し、より具体的にはホスト装置が使用している通信プロトコルと同じかまたは異なる通信プロトコルを使用する記憶装置にホスト装置を接続する方法と、この接続方法を可能にする装置とに関する。
【背景技術】
【0002】
フラッシュ記憶装置は持ち運びができ、物理的サイズが小さく、記憶容量が大きいため、ここ数年にわたりその使用が急速に普及している。フラッシュ記憶装置には様々な設計がある。記憶装置には「取り外し可能」とみなされるものがある。これは、ユーザがある1台のホスト装置(例えば、携帯電話機)から別のホスト装置へ記憶装置を移せること、または1台のホスト装置で記憶装置を取り替えながら複数の記憶装置を使用できることを意味する。記憶装置には「組込型」とみなされるものもある。これは、記憶装置が、ホスト装置に組み込まれ、ユーザによってホスト装置から取り外せないことを意図する。
【0003】
ホストは、既存の記憶装置であれ、将来の記憶装置であれ(例えば、SDカード、UFSカード、UHS−IIカード等)、様々な種類の取り外し可能な記憶装置で動作する必要がある。様々な記憶装置は、異なる種類のプロトコルを使用するかまたは使用できるように設計される場合がある。この目的のため、ホスト装置は、様々なプロトコルに対応しなければならない可能性がある。それには通常、異なるカードおよびプロトコルに応じて別々のインターフェイスが必要となる。また、ホストは、様々な記憶装置通信トポロジに対応しなければならない可能性がある。
【0004】
様々な記憶装置と通信するために異なるプロトコルおよびトポロジに対応する多数のインターフェイスをホストに設けることは、必ずしも現実的ではなく、また効果的ではない。このため、より良いアプローチでこの問題に対処する必要がある。
【発明の概要】
【0005】
前述したことに鑑み、例えば単一の共通インターフェイスを介して様々な種類の記憶装置と通信できるホスト装置があれば有益である。記憶装置には、レガシーSDカードなどの「遅い」カードと、UHS−IIカードやUFSカードなどの「速い」カードがあり、単一の共通インターフェイスで全てのカードに対応できると有利である。種々のプロトコルで通信を行うために、単一の共通インターフェイスは、汎用インターフェイス(以下「ブリッジ」と呼ぶ)と適合される。そのような通信に対応するように設計されたブリッジの様々な実施形態を本願明細書に提示する。
【0006】
一実施例において、ブリッジは、シリアル通信経路に沿って配置され、通信の観点では、ホスト装置と取り外し可能な記憶装置との間を結合する。ホスト装置と記憶装置との間でデータとコマンドを伝達するために、ブリッジは2つのインターフェイスを含む。2つのインターフェイスのうち、一方はホスト側のホストインターフェイスであり、他方は記憶装置側の記憶装置インターフェイスである。
【0007】
ブリッジは、1つまたは複数の双方向記憶装置プロトコル変換器(「SDPC」)を含みうる。SDPCは、ホスト装置が使用する記憶装置プロトコルを使用し、データおよびコマンドを変換し、ホストインターフェイスを介してホスト装置へ伝送するように適合されうる。このようなSDPCは、記憶装置が使用する記憶装置プロトコルを使用し、データおよびコマンドを変換し、記憶装置インターフェイスを介して記憶装置へ伝送するようにさらに適合される。ブリッジはまた、コントローラと切替システムとを含む。切替システムは、コントローラによって複数の状態のうちのいずれか1つに設定されうる。例えば、ホスト装置によって使用される記憶装置プロトコルと、ホストに係合された記憶装置によって使用される記憶装置プロトコルとが異なる場合は、切替システムが、SDPCを介してホストインターフェイスを記憶装置インターフェイスに接続する状態(1)となり、2つの記憶装置プロトコルが同じ場合は、SDPCを迂回して、切替システムが、ホスト装置インターフェイスを記憶装置インターフェイスに直結するかまたは他の手段を通じて接続する状態(2)となり、ブリッジに記憶装置が接続されていない場合は、切替システムが記憶装置インターフェイスを迂回する状態(3)となる。
【0008】
前述した3つのスイッチ状態の全てが、ブリッジで実施または使用されるとは限らない。ブリッジが使用するスイッチ状態の数と種類は状況しだいで異なりうる(例えば、変換の種類、使用するネットワークトポロジの種類等)。例えば、前述した状態(1)と状態(2)は、例えばホスト装置と記憶装置がチェーントポロジで機能的に接続される場合に当てはまる。別の例では、前述した状態(1)と状態(3)は、例えばホスト装置と記憶装置がリングトポロジで機能的に接続され、プロトコル変換が不要な場合に当てはまる。また、リングトポロジでプロトコル変換が必要な場合には、前述した状態の全てが当てはまる。切替システムを操作することにより、低速記憶装置プロトコルを使用する装置も高速記憶装置プロトコルを使用する装置も、単一の共通高速記憶装置プロトコルを使用してブリッジを介してホスト装置と通信できる。
【0009】
代替として、ブリッジは、2つのSDPCを含む場合もあり、2つのSDPCはそれぞれ異なるプロトコルをホストプロトコルに、かつ逆も同様に変換し、切替システムは2つのSDPCだけを切り替えるようにコントローラによって設定される。やはり、ブリッジはSDPCを完全に除外する場合もあり、この場合、切替システムは、(1)ホスト装置インターフェイスを記憶装置インターフェイスに接続する状態と、(2)記憶装置インターフェイスを迂回する状態との間だけを切り替えるようにコントローラによって設定されうる。別の実装形態において、ブリッジはホスト装置または通信ハブに直接接続されうる。これらの実施形態、特徴、態様、および利点は、本願明細書の説明と、添付の特許請求の範囲と、後述する添付の図面からより良く理解されるはずである。
【0010】
添付の図面は、本願明細書に組み入れられかつ本願明細書の一部をなし、様々な実施形態を図解するものであるが、これらの実施例は制限を目的としていない。図を簡潔明瞭にするために、以下参照する図中の要素が必ずしも一定の縮尺で描かれていないことを理解するべきである。また、同様の要素、対応する要素、または類似する要素を指示するために必要に応じて図の中で参照番号が繰り返される場合がある。
【図面の簡単な説明】
【0011】
【図1】チェーントポロジを使用し、ホスト装置が速い記憶装置(例えば、UFSカード)、または遅い記憶装置(例えば、レガシーSDカード)と通信する、例示的な従来型ネットワークアーキテクチャの図である。
【図2】一実施形態によるブリッジを含む、チェーントポロジを使用する記憶装置ネットワークアーキテクチャの図である。
【図3】一実施形態によるブリッジを含む、チェーントポロジを使用するネットワークアーキテクチャの図である。
【図4】一実施形態によるブリッジを示す。
【図5】一実施形態によるブリッジを示す。
【図6】一実施形態によるブリッジを示す。
【図7】一実施形態によるブリッジを操作する方法を示す。
【図8】SCSI・オーバー・UFSプロトコルを使用して、記憶装置インターフェイスコマンドが双方向に透過的に伝送される、ブリッジ経由のホスト装置と記憶装置との間の通信を概略的に示す。
【図9】SD・オーバー・UFSプロトコルを使用して、記憶装置インターフェイスコマンドが双方向に透過的に伝送される、ブリッジ経由のホスト装置と記憶装置との間の通信を概略的に示す。
【図10】SCSI・オーバー・UFSプロトコルを使用するホスト装置とレガシーSDプロトコルを使用する記憶装置との間のブリッジ経由の通信を概略的に示す。
【図11】一実施形態によるブリッジの機能的配置を示す。
【図12】SD・オーバー・UFSプロトコルを使用するホスト装置とレガシーSDプロトコルを使用する記憶装置との間のブリッジ経由通信を概略的に示す。
【図13】一実施形態によるブリッジの機能的配置を示す。
【図14】リングトポロジで接続された組込型記憶装置のためのUHS−IIインターフェイスと、レガシーSDカードのための記憶装置インターフェイスと、UHS−IIカードのための記憶装置インターフェイスとを含むホスト装置を示す。
【図15】1つのレガシーSDインターフェイスと、リングトポロジで接続された1つのUHS−IIインターフェイスと、「非迂回」状態にあるバイパスソケットとを含むホスト装置を示す。
【図16】バイパスソケットが「迂回」状態にある図15のデータ記憶システムを示す。
【図17】1つのUHS−IIインターフェイスとリングトポロジで接続された図6のブリッジとを含むホスト装置を示す。
【図18】一実施形態による接続解析器を示す。
【発明を実施するための形態】
【0012】
以下の説明では例示的な実施形態の様々な詳細を提示する。しかし、この説明は特許請求の範囲を制限するものではなく、本発明の様々な原理と本発明を実践する方法を説明することを目的とする。
【0013】
ユニバーサルフラッシュストレージ(UFS)は、デジタルカメラ、携帯電話機、家庭用電子機器のために提案された共通のフラッシュストレージ仕様である。UFSは、フラッシュメモリストレージのデータ転送速度を上げ、高信頼性を提供するように設計されている。超高速タイプII(UHS−II)は、次世代SDカードを規定する新しい仕様である。UFSプロトコルとUHS−IIプロトコルは、本願明細書において「高速プロトコル」とも呼ばれる。現世代(すなわち、非UHS−II)のSDカード/プロトコルは、本願明細書において「レガシーSDカード/プロトコル」または「低速カード/プロトコル」と呼ばれる。
【0014】
セキュアデジタル(「SD」)メモリカードと組込型マルチメディアカード(「eMMC」)記憶装置は、比較的遅いフラッシュ記憶装置の例である。超高速タイプII(「UHS−II」)メモリカードとユニバーサルフラッシュストレージ(「UFS」)記憶装置は、より速いフラッシュ記憶装置の例である。「UFS」は、電子装置技術合同協議会(「JEDEC」)ソリッドステート技術協会のUFS調査委員会によって策定された規格であり、「UHS−II」は次世代SD記憶装置のためのSD協会(「SDA」)によって策定された規格である。比較的遅いデータ通信を容易にするSDプロトコルを使用して、ホスト装置が、SDカードと通信する。より速いデータ通信を容易にするUFSプロトコルとUHS−IIプロトコルをそれぞれ使用して、ホスト装置が、UFSカードおよびUHS−IIカードと通信するように設計される。UHS−IIプロトコルとUFSプロトコルは、データ転送速度がレガシーSDプロトコルを大幅に上回るものとして規定されている。そのような高速データ転送をサポートするために、これらのプロトコル(UHS−IIとUFS)は、レガシーSDインターフェイスおよびeMMCインターフェイスが使用するシングルエンド物理インターフェイスと対照的に、ディファレンシャルシグナリング物理インターフェイスを使用する。高速プロトコルおよび低速プロトコルは、1つまたは複数の層(例えば、リンク層、トランスポート層)の扱い方の点でも異なる。本願明細書では、用語「高速プロトコル/装置/インターフェイス」と「速いプロトコル/装置/インターフェイス」が互換的に使用される。同様に、本願明細書では、用語「低速プロトコル/装置/インターフェイス」と「遅いプロトコル/装置/インターフェイス」が互換的に使用される。
【0015】
ホスト装置は、従来、「ポイント・ツー・ポイント」通信方式を使用してレガシーSDカードと直接通信する。他方、UFS装置は、チェーントポロジ型のデータネットワークを介してホスト装置と通信することになっている。チェーントポロジでは、高速二線ディファレンシャルバスを使用して装置が互いに通信する。このため、より速い規格(すなわち、UFSおよび/またはUHS−II)に対応し、かつ、遅い規格(例えば、SD)の後方適合性であるには、別々の2つの通信インターフェイス、すなわち遅いインターフェイス(例えば、SDインターフェイス)と速いインターフェイス(例えば、UFSインターフェイスおよびUHS−IIインターフェイス)を、ホスト装置に用意する必要がある。このようなホスト装置では異なる通信プロトコルやトポロジを扱う必要があるため、入力・出力(「I/O」)数、プロセッサの複雑さ、回路基板配線、コンピュータリソース、ホストゲート数、試験手順等の点で代償が大きい。
【0016】
UHS−II記憶装置は、「リング」と呼ばれるネットワークトポロジを使用してホスト装置と通信するように設計することができる。「リング」トポロジは、複数の装置が直列に接続され、最初の装置と最後の装置がホスト装置に直接接続されるネットワーク構成である。リングトポロジは相互に接続された装置間に一方向通信路を提供するため、1箇所が故障すると不通になるおそれがある。また、ケーブルが破断するとリングに取り付けられた装置が孤立するおそれがある。このため、UHS−II型記憶装置を使用するホスト装置には特別な通信インターフェイスが必要となる。ホスト−記憶装置環境でリングトポロジを使用すると、取り外し可能な記憶装置が取り外されたときに通信経路が破断するという問題がある。このため、UHS−IIに基づくホスト装置には、(図14に見られるように)3種類のインターフェイス、すなわち(1)リングトポロジで接続される組込型装置のためのUHS−IIインターフェイス、(2)UHS−II規格に対応する取り外し可能な記憶装置のためのUHS−IIインターフェイス、および(3)SD後方適合性を容易にするレガシーSDインターフェイスを用意する必要がある。
【0017】
図1は、従来型記憶システムアーキテクチャ100の一実施例である。前に説明したように、新しいデータ記憶装置プロトコルは、例えばレガシーSDプロトコルに比べて、より速いデータおよびコマンドの転送を容易にするように設計されている。図1に示すように、2種類の記憶装置プロトコル(すなわち、レガシーSDプロトコル等の遅いプロトコル、ならびにUFSおよびUHS−II等の速いプロトコル)に対応する従来の解決策では、ホストプロセッサ(すなわち、ホストプロセッサ110)は2種類の記憶装置プロトコルを別々に処理することが可能になる。以下、「レガシーSD」を略して「SD」と呼ぶ。
【0018】
ホストプロセッサ110でSD後方適合性を確保するために、ホストプロセッサ110は、UFSプロトコルとSDプロトコルの両方を使用し作動するように設計されていると仮定する。UFSプロトコルとSDプロトコルに対応するため、ホストプロセッサ110には2つの別々のインターフェイス、すなわちインターフェイス112とインターフェイス114とが設けられている。インターフェイス112は(SDバス130を介して)取り外し可能なSDカード120と直接通信するために使用される。インターフェイス114は、UFS入/出力装置150、UFS入/出力装置160、UFS型メモリ装置170等の外部装置と、UFSデータ/コマンドをやり取りするために使用される。すなわち、取り外し可能な記憶装置120がUFSカードである場合、またはUFSプロトコルの中にSDデータ/コマンドをカプセル化することによってホストプロセッサ110と通信できるSD−UFSカードである場合にも、インターフェイス114が使用される。(UFSプロトコルの中にSDデータ/コマンドをカプセル化することを、以下「SD・オーバー・UFS」(SD-over-UFS) と呼ぶことに留意するべきである。)
【0019】
UFSプロトコル設計により、ホスト装置110は、チェーントポロジを有するバスを介して周辺装置と通信することができる。チェーントポロジは、装置Aが装置Bへ配線され、装置Bが装置Cへ配線され、装置Cが装置Dへ配線される等の配線方式である。チェーンの中の最後の装置は装置Aへループバックされるのではなく、他の装置を通じて装置Aと通信する。図1を参照すると、ホストプロセッサ110は、UFSバス140を介して装置150と通信し、装置150はUFSバス142を介して装置160と通信し、装置160はUFSバス144を介してUFS組込型メモリ170と通信し、UFS組込型メモリ170はUFSバス146を介して取り外し可能な記憶装置120と通信する。図1の回路構成には、2つの別々のインターフェイス、すなわちSDインターフェイス(すなわち、インターフェイス112)、およびUFSインターフェイス(すなわち、インターフェイス114)を使用するという欠点と、ホストCPU110が、2種類の記憶装置プロトコルおよびトポロジのために、スペースおよびリソースを配分し、回路を専用化することを要求するという欠点とがある。
【0020】
図2は、例示的な一実施形態によるブリッジ250を含む記憶システムアーキテクチャ200の図である。ホストCPU210は、1つの通信インターフェイス(すなわち、通信インターフェイス212)を有し、これを介して外部装置(例えば、取り外し可能な記憶装置260)と通信する。チェーントポロジを使用するこのアーキテクチャにおいて、遅い記憶装置インターフェイス(例えば、レガシーSDインターフェイス)と高速インターフェイス(例えば、UFSインターフェイス)は、いずれも高速記憶装置プロトコルを使用し、ブリッジを介してホストと通信する。このように、高速プロトコルを使用するホスト装置とブリッジ250等のブリッジとを含むシステムは、後方適合性である。つまり、低速プロトコルを使用する装置にも対応できる(この例の速い記憶装置プロトコルはUFSプロトコルであり、遅い記憶装置プロトコルはレガシーSDプロトコルであることに留意するべきである。)
【0021】
図2の実施例で、ホストCPU210と、UHS−II型入/出力モジュール220(例えば,execute in place(「XIP」)装置)と、UHS−II型入出力モジュール230(例えば,WiFi装置)と、組込型メモリ240は、UFSプロトコルを使用してデータおよびコマンドを送受信するように設計されている。相互に接続された装置の各対の間のUFSバスを介した通信は、直通式である。つまり、データとコマンドは、チェーン(チェーントポロジ)ネットワークに沿ってホストCPU210から(UFSバス270を介して)入出力モジュール220へ、入出力モジュール220から(UFSバスを介して)入出力モジュール230へ、入出力モジュール230から(UFSバスを介して)組込型メモリ240へ伝播するために、記憶装置プロトコルの変更は必要ない。
【0022】
ホストCPU210は、レガシーSDカード専用インターフェイスを有していないが(ホストCPU210はただ1つの高速インターフェイス、すなわちインターフェイス212を有し、このインターフェイスはこの実施例においてUFS通信用であることに留意するべきである)、ブリッジ250を使用してレガシーSDカードと通信する高速インターフェイス212を使用する。ブリッジ250は、記憶装置260が「遅い」カード(例えば、レガシーSDカード)であろうが「速い」カード(例えば、UFSカード、SD・オーバー・UFS適合SDカード)であろうが、ホストCPU210と取り外し可能な記憶装置260との間の通信を容易にする。
【0023】
ブリッジ250は、ホストプロセッサ210が使用するプロトコルの種類および取り外し可能な記憶装置260が使用するプロトコルの種類に応じて、「透明」状態または「変換」状態になる。つまり、ブリッジ250は、例えば図4の接続解析器442等の接続解析器を使用することにより、プロトコルの種類を識別し、プロトコルの種類に応じて作動する。つまり、ブリッジ250は、取り外し可能な記憶装置260がレガシーSDプロトコルを使用する場合は「変換」状態に移行し(または「変換」状態を維持し)、それによってUFS型ホストCPU210で使用されているUFS記憶装置プロトコルとレガシーSDカード260で使用されているレガシー記憶装置プロトコルとの間の橋渡しを行い、また、取り外し可能な記憶装置260とホストCPU210が同じプロトコル、この実施例ではUFSプロトコルを使用する場合は、「透明」状態に移行する(または「透明」状態を維持する)。(本開示に関し、本願明細書ではUFSカードとSD・オーバー・UFS型カードをUFSカードと総称することに留意するべきである。)
【0024】
「変換」状態にあるブリッジ250は、UFS記憶装置プロトコルによりホストCPU210から(装置220、230、および240を介して)データ/コマンドを受信し、これらをレガシーSD記憶装置プロトコルを使用して、レガシーSD接続252を介してレガシーSDカード260へ送信する。また、レガシーSD記憶装置プロトコルによりレガシーSDカード260からレガシーSD接続252を介してデータ/コマンドを受信し、これらをUFS記憶装置プロトコルを使用して(装置240、230、および220を介して)ホストプロセッサ210へ送信する。前に説明したように、ホストCPU210と取り外し可能な記憶装置260が同じ記憶装置プロトコル(この実施例ではUFSプロトコル)を使用する場合、プロトコルの変更は必要ない。ホストCPU210および記憶装置260がUFS装置の場合、ブリッジ250および記憶装置260は、UFS接続254経由で接続される。SD接続252とUFS接続254は、論理的に別々の接続として図に示されている。しかし、物理的には共通の端子を有することがある。透明状態にあるブリッジ(例えば、ブリッジ250)は、ホストCPU210と取り外し可能な記憶装置260との間の通信で透明となる。記憶システムアーキテクチャ200は、単独の装置(すなわち、ブリッジ250)としてブリッジを含んでいる。しかし、後述する図3に例示されているように、組込型メモリ(例えば、組込型メモリ240)にブリッジ機能を組み込むこともできる。
【0025】
SD−UFS合同カードもありうる。SD−UFS合同カードは、共通の接続端子を有しうる論理的に独立した2セットのホストインターフェイス端子、すなわちレガシーSDカードに適合する一のセット、およびUFSカードに適合する他のセットと、2セットの記憶装置インターフェイス、すなわちレガシーSDとしてカードを操作する一のセットの記憶装置インターフェイス、およびUFSカードとしてカードを操作する他のセットの記憶装置インターフェイスとを含む。2セットの端子とフロントエンドを有するSD−UFSカードは、SD−UFSカードに適応するソケット、およびインターフェイスの種類に応じてレガシーSDカードとして使用することも、UFSカードとして使用することもできる。ブリッジ250は、2種類の取り外し可能な記憶装置260に適応するただ1つの記憶装置インターフェイス(図2には示されていない)を有する場合がある。あるいは、ブリッジ250は別々の記憶装置インターフェイス(図2に示されていない)、すなわちレガシーSDカード専用の一の記憶装置インターフェイスとUFSカード専用の他の記憶装置インターフェイスとを有する場合もある。
【0026】
一実施例において、ブリッジ250は図2に見られるように(すなわち、1つまたは複数の中間装置を介して)ホストCPU210に接続されうる。別の実施例において、ブリッジ250は、ホストCPU210に直結されうる。別の実施例において、ブリッジ250は、ホストCPU210に直結された通信ハブ、または1つもしくは複数の装置を介してホストCPU210に接続された通信ハブに直結されうる。
【0027】
図3は、例示的な一実施形態によるブリッジと組込型メモリとを組み合わせた装置350を含む記憶システムアーキテクチャ300の図である。記憶システムアーキテクチャ300は、350に見られるようにブリッジと組込型メモリが一体化されている点を除けば、図2の記憶システムアーキテクチャ200と同じである。組込型メモリとブリッジの機能を1つの装置(すなわち、装置350)にまとめれば、スペース、内部配線、入出力インターフェイス等の節約になり有益である。
【0028】
図4に、例示的な一実施形態によるブリッジ400を示す。ブリッジ400はホスト装置インターフェイス402を含む。ホスト装置インターフェイス402は、通信バス404に接続され、通信バス404は(ことによるとチェーンの一部をなす他の装置412を介して)ホストCPUに接続され、ホストCPUは第1の記憶装置プロトコル(例えば、UFS)を使用する。ブリッジ400はまた、第2の記憶装置プロトコル(例えば、レガシーSD)を使用する取り外し可能な記憶装置420と結合する第1の記憶装置インターフェイス406と、第1の記憶装置プロトコルを第2の記憶装置プロトコルに、かつ逆も同様に変換する双方向記憶装置プロトコル変換器(SDPC)450とを含む。ブリッジ400はまた、コントローラ440と切替システム460とを含む。切替システム460はコントローラ440により設定可能であり、第1の記憶装置プロトコル(すなわち、ホストCPU410によって使用されている記憶装置プロトコル)が第2の記憶装置プロトコル(すなわち、取り外し可能な記憶装置によって使用されている記憶装置プロトコル)と異なる場合には、ホスト装置インターフェイス402と第1の記憶装置インターフェイス406との間にプロトコル変換器(SDPC)450を接続し、第1の記憶装置プロトコルと第2の記憶装置プロトコルが同じ場合は、プロトコル変換器450を切断してホスト装置インターフェイス402を第2の記憶装置インターフェイス408に接続する。
【0029】
コントローラ440は、ホストCPUの種類および/またはホストCPUが使用する記憶装置プロトコルの種類を事前に知る場合がある。コントローラ440は、ホストCPUの種類および/またはホスト装置が使用するストレージプロトコルの種類が、事前に分からない場合に、接続解析器442と連携してホスト装置インターフェイス402を監視し、ホストCPU410の情報から、ホストCPUの種類および/またはホストCPUが使用する記憶装置プロトコルの種類を推断する。また、コントローラ440は、接続解析器442を使用して記憶装置インターフェイス406および408を監視し、ブリッジ400に接続された記憶装置がどれなのか、および/または記憶装置インターフェイス406もしくは記憶装置インターフェイス408に接続された記憶装置で使用されている記憶装置プロトコルがどれなのかを検出する。次いで、コントローラ440は、記憶装置420で使用されている記憶装置プロトコルが、ホストCPU410でも使用されている第1の記憶装置プロトコルなのか、それともホストCPU410で使用されていない第2の記憶装置プロトコルなのかを判断する。コントローラ440は、両側(すなわち、ホストCPU410と記憶装置420)で使用されている記憶装置プロトコルの種類を判断し、それらを比較することにより、プロトコル変換が必要かどうかを判断する場合がある。あるいは、コントローラ440は、各々の使用されている記憶装置プロトコルの種類を判断することはせず、両側で同じ記憶装置プロトコルが使用されているのか、それとも異なる記憶装置プロトコルが使用されているのかを判断する場合もある。通常、ホストCPU410や記憶装置420等の装置は、使用する記憶装置プロトコルの種類および/またはバージョンに関する明示的情報を通信の「相手」側に伝達する。この場合、コントローラ440は、この情報伝達を基に記憶装置プロトコルを判断しうる。あるいは、コントローラ440は、通信を監視することによって記憶装置プロトコルの種類を判断する場合もある。
【0030】
第1の記憶装置プロトコルが第2の記憶装置プロトコルと異なる場合、ホストCPU
410がある特定の記憶装置プロトコル(例えば、UFSプロトコル)を使用してブリッジ400を介してSDカード420へ伝えるデータおよびコマンドは、SDカード420が「理解」する別の記憶装置プロトコル(すなわち、レガシーSDプロトコル)を使用してカード420へ送信しなければならないことを意味する。この場合、コントローラ440は接点「(0)」を接点「(1)」に接続するための制御信号444を切替システム460へ送信する。これにより、プロトコル変換器450が、ホスト装置インターフェイス402に接続される(図4に見られる実施例では、プロトコル変換器450は記憶装置インターフェイス406に常時接続されていることに留意するべきである)。このようにして、ホストCPU410は、第1の記憶装置プロトコル、この例ではUFSプロトコルを使用して、記憶装置420へデータ/コマンドを伝達し、また、UFS/SD変換器450は、UFSプロトコルを、レガシーSDカード420で使用できる第2の記憶装置プロトコル、この例ではレガシーSDプロトコルに変換する。第1の装置から第1の記憶装置プロトコルでデータ、コマンド、および信号を受信し、データ/コマンド/信号を翻訳し、かつ翻訳されたデータ/コマンド/信号を別の記憶装置プロトコルを使用して第2の装置へ送信する手順を、本願明細書では「プロトコル変換」または略して「変換」と呼び、用語「変換器」やその派生語を使用する。かかる変換は通常、遅いプロトコル(例えば、レガシーSDプロトコル)を速いプロトコル(例えば、UFSプロトコル、UHS−IIプロトコル)の中にカプセル化すること、および速いプロトコルから遅いプロトコルを開放することを含む。「カプセル化(encapsulation) 」は、一のプロトコルを別のプロトコルの中に埋め込むことを意味し、「開放(de-capsulation)」は反対の操作を意味する。SCSI対SD変換もまた、基礎的SD−SCSIおよびSCSI−SDコマンドの翻訳を含む(この翻訳は、例えば図11のコマンド翻訳器1130等の翻訳器によって実施される)。プロトコル変換はまた、リンク層レベルでの信号翻訳(例えば、「busy」信号翻訳)を含む(この翻訳は、例えば図11のリンク信号翻訳器1185等の翻訳器によって実施される)。
【0031】
ホストCPU410で使用されている記憶装置プロトコルが、ブリッジ400に接続された取り外し可能な記憶装置(この場合は、UFSカード430)で使用されている記憶装置プロトコルと同じ場合、コントローラ440は、接点「(0)」を接点「(2)」に接続するための制御信号444を切替システム460へ送信する。これにより、ホスト装置インターフェイス402は変換器450を経由せず記憶装置インターフェイス408へ直結(464)される(402と408との間に他のコンポーネントが接続される可能性はある)。
【0032】
図2との関係で説明したように、ホストCPU210がUFS型なら、ブリッジ250は、レガシーSDカード、SD−UFSカード、またはUFSカードとして1つの記憶装置に適応するように構成された1つの記憶装置インターフェイスを有する場合と、レガシーSDカード用とSD−UFSカードまたはUFSカード用に2つの記憶装置インターフェイスを有する場合がある。
【0033】
図5に、別の例示的な実施形態によるブリッジ500を示す。ブリッジ500は、2つのプロトコル変換器、すなわち図4に見られるUFSプロトコルからレガシーSDプロトコルに、かつ逆も同様に変換する一のプロトコル変換器(すなわち、プロトコル変換器450)と、UFSプロトコルからUHS−IIプロトコルに、かつ逆も同様に変換する他のプロトコル変換器(すなわち、プロトコル変換器510)とを含む点を除き、ブリッジ400と同様である。(ブリッジ500には一度にただ1つの取り外し可能な記憶装置、すなわちカード420またはカード530を接続することができることに留意するべきである。)
【0034】
ブリッジ500にレガシーSDカード420が現在接続されていることを接続解析器542がコントローラ540に伝えると、コントローラ540は、図4との関係で示し、かつ説明したように、接点「(0)」を接点「(1)」に接続するための制御信号544を切替システム560へ送信する。ブリッジ500にUHS−IIカード530(またはUHS−IIプロトコルを使用するSD−UHS−IIカード)が現在接続されていることを接続解析器542がコントローラ540に伝えると、コントローラ540は、接点「(0)」を接点「(2)」に接続するための制御信号544を切替システム560へ送信する。これにより、ホストCPU410で使用されているUFSプロトコルからUHS−IIカード(またはSD−UFSカード)530で使用されているUHS−IIプロトコルに、かつ逆も同様に変換することが可能となる。ホストCPU410は、UFSプロトコルを使用するので、ブリッジ400のようなブリッジ500は、チェーントポロジで構成される。UHS−IIプロトコルを使用するホストCPUの場合、ブリッジは、図6に示すようにリングトポロジで構成される。
【0035】
図6に、さらに別の例示的な実施形態によるブリッジ600を示す。ホストCPU610は、UHS−IIプロトコルを使用し、リングトポロジを有するバスを通じて外部装置(例えば、UHS−II装置620、レガシーSDカード630またはUHS−IIカード640(またはSD−UHS−IIカード640)、およびUHS−II入出力装置650)と通信する。(ブリッジ600には、レガシーSDカード630とUHS−IIカード640のうちのいずれか一方のみが一度に接続されることに留意するべきである。)ブリッジ600は、UHS−II装置620からデータおよびコマンドを受信するホスト装置インターフェイス602と、レガシーSDカード630との間でデータおよびコマンドを送受信する記憶装置インターフェイス604と、UHS−IIカード640との間でデータおよびコマンドを送受信する記憶装置インターフェイス606と、HS−II装置650へデータおよびコマンドを送信する記憶装置インターフェイス608とを含み、UHS−II装置650は、UHS−IIタイプの組込型メモリ、またはUHS−IIタイプの入出力装置、またはUHS−IIプロトコルを使用する他の何らかの装置であってもよい。
【0036】
ブリッジ600はまた、図4のコントローラ440や図5のコントローラ540と同様の働きをするコントローラ660と、ホストCPU610で使用されているUHS−IIプロトコルをレガシーSDカード630で使用されているレガシーSDプロトコルに(かつ逆も同様に)変換する双方向SDPC670と、3ポジションスイッチ680、および3ポジションスイッチ690を含む切替システム682とを含む。スイッチ680およびスイッチ690は常に同じポジションにあり、かつ常にあるポジションから別のポジションにかけて一斉に動くように設計されかつ制御される。例えば、スイッチ680がポジション「(1)」にあるなら、スイッチ690もまたポジション「(1)」にあり、コントローラ660がいずれか一方(例えば、スイッチ680)を(例えば)ポジション「(3)」に移すと、他方のスイッチ(例えば、スイッチ690)もまた同じポジションに移る。
【0037】
ブリッジ600に接続される記憶装置がレガシーSDカード630などのレガシーSDカードの場合、コントローラ660は図6に見られるようにスイッチ680および690をポジション「(1)」に設定する。ポジション「(1)」ではホストCPU610から発信されるデータおよびコマンドが、UHS−II装置620の中を伝播し、ブリッジ600で受信され、双方向UHS−II/SD変換器670へ転送される。UHS−II/SD変換器670は、UHS−IIプロトコルをレガシーSDプロトコルに変換し、レガシーSDプロトコルを使用して記憶装置インターフェイス604を介してレガシーSDカード630へデータ/コマンドを転送する。(用語「変換」の解釈は前述したとおりであることに留意するべきである。)レガシーSDカード630は、レガシーSDプロトコルを使用してデータまたは応答をUHS−II/SD変換器670へ送り、UHS−II/SD変換器670は、UHS−IIプロトコルを使用してリング内の次の装置(すなわち、UHS−II入出力装置650)へデータまたは応答を送信する。データ/コマンドは、引き続きUHS−IIプロトコルを使用してリング内を伝播する。ホストCPU610によって送信されるデータ/コマンドがレガシーSDカード630向けのものでない場合、プロトコル変換を使用することなく、記憶装置インターフェイス608を介してリング内の次の装置(すなわち、UHS−II入出力装置650)へコマンド/データを送ることにより、レガシーSDプロトコルとコマンド/データとの変換を省くことができる。これを実現する一方法は、取り外し可能な記憶装置の識別情報(「ID」)をブリッジに蓄積することである。コントローラ660は、このIDをもとに、コマンド/データが取り外し可能な記憶装置(例えば、カード630または640)向けのものかどうかを知ることが可能になる。
【0038】
ブリッジ600に接続される記憶装置がUHS−II適合カード640(すなわち、UHS−IIカードまたはSD−UHS−IIカード)の場合、プロトコル変換は不要であるため(つまり、ホストCPU610とカード640はいずれも真のUHS−II装置であるため)、コントローラ660は、スイッチ680および690をポジション「(2)」に設定する。ポジション「(2)」では、ホストCPU610から発信されるデータ/コマンドがUHS−II装置620の中を伝播し、ブリッジ600で受信され、そのまま(プロトコル変換を行わず)記憶装置インターフェイス606Aを介してUHS−IIカード640へ転送される。データ/コマンドがUHS−IIカード640向けのものでない場合、UHS−IIカード640は、記憶装置インターフェイス606Bとスイッチ690の接点「(2)」を介してリング内の次の装置へ、この例ではUHS−II入出力装置650へ、データ/コマンドを転送する。リング型データネットワークの中で装置のいずれか1つが取り外され、当該装置の取り外しによって生じた空白を埋めるための措置が講じられない場合、通信ループは切断される。再び図6に戻ると、接続解析器662は、(例えば)図4の接続解析器442に類似するが、ホスト装置インターフェイス602、ならびに記憶装置インターフェイス604、606、および608を監視し、それらのインターフェイスに接続される装置を検出し、それぞれの装置で使用されている記憶装置プロトコルを判断する。接続解析器662はインターフェイスの監視状況(インターフェイス「x」に装置が接続されているかどうか、インターフェイス「x」に接続された装置がプロトコル「y」を使用している等)をコントローラ660に知らせる。記憶装置インターフェイス604にレガシーSDカードが接続されておらず、かつ記憶装置インターフェイス606にUHS−II適合カードが接続されていないことを接続解析器662がコントローラ660に知らせると、コントローラ660はスイッチ680およびスイッチ690をポジション「(3)」に設定する。
【0039】
スイッチ680および690がポジション「(1)」になると、ブリッジ600は、「変換」状態になる。スイッチ680および690がポジション「(2)」になると、ブリッジ600は、「透明」状態になる。スイッチ680および690がポジション「(3)」になると、ブリッジ600は、「迂回」状態になる。スイッチ680および690がポジション「(3)」に設定されると、記憶装置インターフェイス604および606は、迂回される。つまり、ブリッジのリング入力(すなわち、ホスト装置インターフェイス602)がブリッジのリング出力(すなわち、記憶装置インターフェイス608)へ内部的に接続され、ブリッジ600を介してリングループが閉じられる。(取り外し可能な記憶装置、例えばレガシーSDカード630またはUHS−IIカード640が、ブリッジ600に接続される場合は、それぞれ、UHS−II/SD変換器またはUHS−II装置640を介して、リングループが閉じられることに留意するべきである。)
【0040】
図7は、例示的な一実施形態に従ってブリッジを操作する方法である。2つの装置が同一ホスト装置に組み込まれているので、ブリッジ400または500に類似するブリッジは、ホストCPUに直接的または間接的に常時接続されていると仮定する。ステップ710で、接続解析器542等の接続解析器は、取り外し可能な記憶装置(例えば、レガシーSDカード420またはUHS−II適合カード530)がブリッジに接続されているかどうかをチェックし、当該装置がブリッジに接続されている場合は、接続された装置で使用されている記憶装置プロトコルの種類を検出する(730)。取り外し可能な記憶装置がブリッジに接続されていなければ(ステップ710で「N」と表示)、ブリッジはアイドル状態を維持するかまたはアイドル状態に入り、ステップ720で取り外し可能な記憶装置が接続されるまで待つ。取り外し可能な記憶装置がブリッジに接続されていれば(ステップ710で「Y」と表示)、接続解析器はコントローラのために、ホストCPUで使用されている記憶装置プロトコルと取り外し可能な記憶装置で使用されている記憶装置プロトコルとをステップ730で識別する。(前述したように、コントローラはホストCPUで使用されているプロトコルを事前に知っている場合があり、その場合、コントローラはホストCPUで使用されている記憶装置プロトコルを「判断」する必要はない。)ステップ740で、(例えば)コントローラ540に類似するコントローラは、2つの記憶装置プロトコルが同じかどうかをチェックし、さらに図5に見られる実施形態の場合にプロトコルが同じでない場合は、コントローラ540は、使用すべきプロトコル変換の種類を判断する。2つの記憶装置プロトコルが同じなら(ステップ740で「Y」と表示)、コントローラ540は、ステップ750で、ホストCPU410と取り外し可能な記憶装置を、図4(接点「(2)」をインターフェイス408に接続)、および図6(接点「(2)」を使用することにより確立される通信経路)に見られるように、直結させる。2つの記憶装置プロトコルが異なるなら(ステップ740で「N」と表示)、コントローラは適切な双方向プロトコル変換器を使用して、入力記憶装置プロトコルを出力記憶装置プロトコルに変換する。ホストCPUからブリッジへ至るデータ/コマンド通信と、取り外し可能な記憶装置からブリッジへ至るデータ/コマンド通信は、ブリッジにデータ/コマンドが入ることから、「入力通信」とみなされる。ブリッジからホストCPUへ至るデータ/コマンド通信と、ブリッジから取り外し可能な記憶装置へ至るデータ/コマンド通信は、ブリッジからデータ/コマンドが出ることから、「出力通信」とみなされる。
【0041】
図8は、ブリッジ830を介してホスト装置810と取り外し可能な記憶装置820との間でデータおよびコマンドを交換するために使用される4つの従来型の通信層を概略的に示すものであり、ここでは小型コンピュータシステムインターフェイス(「SCSI」)規格を使用してデータおよびコマンドが双方向に伝送される。図8は、ホスト装置で使用される記憶装置プロトコルと記憶装置で使用される記憶装置プロトコルが同じ場合のシナリオを指している。このため、ブリッジは通信の観点からは透明である。つまり、記憶装置プロトコル変換は行われない。図8は、UFSカードまたはSD−UFSカード430がブリッジ400に接続される図4に関連している。「SCSI」とは、簡潔に説明すると、コンピュータと周辺装置とを物理的に接続し、コンピュータと周辺装置との間でデータを伝送するための一連の規格である。SCSI規格は、コマンドとプロトコルと電気的および光学的インターフェイスを規定している。SCSIを使用することで様々な装置を接続できる。UFS規格ではSCSIプロトコルのごく一部が使用されている。
【0042】
JEDECのUFS調査委員会によって規定された層は、「物理接続」層と、「リンクコマンド」層と、「トランスポート」層と、「アプリケーション」層とである。ホスト装置810は、UFS構成物理層とUFS構成リンク層(これらの2層を840に示す)を使用することにより、またSCSI構成トランスポート層とSCSI構成アプリケーション層(これらの2層を850に示す)を使用することにより、記憶装置820へデータ/コマンドを送信し、また記憶装置820からデータ/コマンドを受信する。(「SOUP」は、SCSI・オーバー・UFSプロトコル(SCSI-over-UFS protocol)の略であることに留意するべきである。)記憶装置820はホスト装置810と同じ通信層を使用するよう構成されている。したがって、ブリッジ830は、通信の観点からは両装置にとって透明である。つまり、プロトコル変換は必要ない/使用されない。
【0043】
図9は、図8と同様に従来の通信層を概略的に示すものであるが、ここではホスト装置910と取り外し可能な記憶装置920との間でブリッジ930を介してSDデータおよびSDコマンドをやり取りする。ホスト装置910および記憶装置920はUFS構成装置であり、SDデータおよびSDコマンドはUFS通信で伝達されるため、SDデータおよびSDコマンドは、ホスト装置910と記憶装置920との間で、ブリッジ930を介して、SD・オーバー・UFS構成を使用して、やり取りされる。「SD・オーバー・UFS構成」、および「SD・オーバー・UFS通信」は、SDデータおよびコマンドがUFS信号の中にカプセル化される(UFS信号のペイロードとして挿入される)ことを意味する。図9は、ホスト装置で使用される記憶装置プロトコルと記憶装置で使用される記憶装置プロトコルとが同じ場合のシナリオを指している。このため、ブリッジは通信の観点からは透明である。つまり、記憶装置プロトコル変換は行われない。ホスト装置910は、UFS構成物理層およびUFS構成リンク層(これらの2層を940に示す)を使用することにより、またSD・オーバー・UFSトランスポート層およびSD構成アプリケーション層(これらの2層を950に示す)を使用することにより、記憶装置920へSDデータ/コマンドを送信し、また記憶装置920からSDデータ/コマンドを受信する。記憶装置920は、通信層の点ではホスト装置910と同様に構成される。したがって、ブリッジ830は、通信の観点からは両装置にとって透明である。つまり、プロトコル変換は必要ない/使用されない。
【0044】
図10は、図8と同様に従来の通信層を概略的に示すものであるが、図10では、SCSI・オーバー・UFSプロトコルを使用するホスト装置1010とレガシーSDカードとして構成された取り外し可能な記憶装置1020との間で、ブリッジ1030を介して、データおよびコマンドが伝送される。ホスト装置1010は、UFS物理層とUFSリンク層(これらの2層を1040に示す)を使用し、またSCSIトランスポート層とSCSIアプリケーション層(これらの2層を1050に示す)を使用する。レガシーSDカード1020は、SD物理層と、SDリンク層と、SDトランスポート層と、SDアプリケーション層とを使用する。図10は、ホスト装置で使用される記憶装置プロトコルが記憶装置で使用される記憶装置プロトコルと異なる場合のシナリオを指している。このために、記憶装置プロトコル変換が行われる。
【0045】
図11は、高速プロトコルをレガシー(遅い)SDプロトコルに、かつ逆も同様に変換するために、図10のブリッジ1030等のブリッジで使用される変換方式を概略的に示すものである。記憶装置プロトコル変換器(SDPC)1100によって適用されるブリッジ方式は、SCSIトランスポートおよびアプリケーション層を使用することにより、ホスト装置とSDカードの間のデータ/コマンド通信を容易にする。SDPC1100は、SDPC450およびSDPC670をより詳細に示すものであり、高速プロトコル(例えば、UFSまたはUHS−II)の上に「乗る」SCSIコマンドを受信する(1110)。SCSI基本コマンド(例えば、「Read」/「Write」)は対応するSDコマンドに翻訳される(1130)。SDプロトコル固有のコマンド(例えば、「Write Protect」/「SD Security」)は、ホスト装置からSCSIプロトコルにカプセル化されて送信される。そのようなコマンドには開放処理(1120)が行われる。SDコマンド(SD/SCSI翻訳器1130またはSD/SCSIプロトコルカプセル化器1120で処理されたもの)は、レガシーSDコマンド/ステータス/データレジスタと共通のレジスタ1140に保持される。レガシーSDカードプロトコルは、SDトランスポートおよびリンク層1160とSD物理層1170を使用して、メモリ装置インターフェイス1150を通ってレガシーSDカード(SDカードは図11に示されていない)へコマンドを送る。コマンド/データのフロー制御に使用されるリンク層信号(例えば、「Ready」/「Busy」)は、リンク信号翻訳器1185により高速プロトコルリンク層からレガシーSDプロトコルリンク層に翻訳される。記憶装置からホスト装置へ送信される、任意のコマンド応答、データ、信号は同様の過程を経る(つまり、コマンド応答とデータはレガシーSDプロトコルによって共通のレジスタセット1140に読み込まれる。基本情報はSD/SCSI翻訳器1130によってSCSIに翻訳され、SD固有のコマンドはSD/SCSIカプセル化器1120によってSCSIの中にカプセル化されることになる。生成されたSCSIコマンドは、高速プロトコルのリンク層1180と物理層1190を使用して高速メモリインターフェイス1110から送出される。リンク層信号は、リンク信号翻訳器1185によって高速リンク層信号に翻訳される)。
【0046】
図12は、図8と同様に従来の通信層を概略的に示すものであるが、図12ではSD・オーバー・UFSプロトコルを使用するホスト装置1210とレガシーSDカード等の取り外し可能な記憶装置1220との間で、ブリッジ1230を介して、データおよびコマンドが伝送される。ホスト装置1210は、UFS物理層およびUFSリンク層(これらの2層を1240に示す)を使用し、またSDトランスポート層およびSDアプリケーション層(これらの2層を1250に示す)を使用する。図12は、ホスト装置で使用される記憶装置プロトコルが、記憶装置で使用される記憶装置プロトコルと異なる場合のシナリオを指している。このために、記憶装置プロトコル変換が行われる。
【0047】
図13は、高速プロトコルをレガシー(遅い)SDプロトコルに変換するための、図12のブリッジ1230等のブリッジで使用される変換方式を概略的に示すものである。記憶装置プロトコル変換器(SDPC)1300によって適用されるブリッジ方式は、SD・オーバー・UFSトランスポート層を使用することにより、ホスト装置およびSDカード間のデータ/コマンド通信を容易にする。SDPC1300は、SDPC450とSDPC670をより詳細に示すものであり、高速プロトコル(例えば、UFSまたはUHS−II)の中にカプセル化されたSDコマンドを受信する(1310)。SDコマンドは開放され(1320)、レジスタに保持され(1330)、SDトランスポートおよびリンク層1350とSD物理層1360を使用することによりSDカード(SDカードは図13に示されていない)へ伝送される(1340)。コマンド/データのフロー制御に使用されるリンク層信号(例えば、「Ready」/「Busy」)は、リンク信号翻訳器1385により高速プロトコルリンク層からレガシーSDプロトコルリンク層に翻訳される。記憶装置からホスト装置へ送信されるコマンド応答、データ、信号は、同様の過程を経る(つまり、コマンド応答、データ、その他はレガシーSDプロトコルによって共通のレジスタセット1330へ読み込まれる。高速プロトコルのリンク層1380および物理層1390を使用して、高速メモリインターフェイス1310からSD形式で情報が送出される。リンク層信号は、リンク信号翻訳器1385によって高速リンク層信号に直接に翻訳される)。
【0048】
図14は、リングトポロジを介してホスト装置1410へ機能的に接続された、「装置1」(1402に示す)、「装置2」(1404に示す)・・・「装置N」(1406に示す)と呼ばれるN個の組込型UHS−IIカード/装置と、UHS−IIインターフェイス1430を通じて装置1410へ接続された取り外し可能なUHS−II記憶装置1432と、SDインターフェイス1440を通じてホスト装置1410へ接続されたレガシーSD取り外し可能なカード1442とを含むシステムを概略的に示すものである。ホスト装置1410は、3種類のインターフェイス、すなわち(1)リングトポロジで接続されるN個の組込型装置「装置1」〜「装置N」のためのUHS−IIインターフェイス1420と、(2)UHS−II規格に対応する取り外し可能な記憶装置(例えば、UHS−IIカード1432)のためのUHS−IIインターフェイス1430と、(3)レガシーSDカード1442のためのレガシーSDインターフェイス1440とを有する。通信経路がそれぞれ独立しているため、取り外し可能なUHS−IIカード1432は、リングトポロジを介して配線されたN個の組込型装置の動作に影響を与えることなく、ホスト1410から機能的に切断することができる。しかし、前に説明した理由(余分な入出力配線等)のために、インターフェイス1420、1430、および1440等の3つの独立したインターフェイスを含むホスト装置には問題がある。
【0049】
図15は、図14に見られるシステム方式の問題に対する部分的解決法を概略的に示すものである。取り外し可能なUHS−IIカード1432は、バイパススイッチ1540を含むブリッジ1510を介してリングトポロジに接続される。ブリッジ1510は、取り外し可能なUHS−IIカード1432がブリッジ1510に接続されているかどうかを検出し、ブリッジ1510の入力端子1520を取り外し可能なUHS−IIカード1432の「D0」端子に接続し、ブリッジ1510の出力端子1530を取り外し可能なUHS−IIカード1432の「D1」端子に接続し、後ほど説明する図6に見られるように取り外し可能なUHS−IIカード1432がブリッジ1510から取り外れた場合には、入力端子1520を出力端子1530に内部的に接続する手段を備えている。図15のネットワーク方式において、図14に見られる2つのUHS−IIインターフェイスの一方(すなわち、UHS−IIインターフェイス1430)は省かれる。しかし、ホスト装置1500をSD後方適合装置にするには、図15においても単独SDインターフェイス(すなわち、SDインターフェイス1440)は依然として必要となる。
【0050】
図16は、図15のデータ記憶システムを示すものであるが、図15でブリッジ1510に接続されているUHS−IIカード1432はブリッジ1510から切断され、ブリッジ1510は「迂回」状態になっている。「迂回」状態の場合、ブリッジ1510の入力端子1520は、ブリッジの出力端子1530へ内部的に接続される(1610)。このため、取り外し可能なUHS−IIカード1432が記憶装置インターフェイスから取り外されるかまたは切断されている間は、ブリッジ1510内の記憶装置インターフェイスは迂回される。
【0051】
図17は、例示的な一実施形態によりリングトポロジで接続されたブリッジ1710を示す。このリングトポロジは、ホスト1740と、N個の組込型装置(すなわち、1742に示された「装置1」から1744に示された「装置N」までと、図6のブリッジ600)に対応するブリッジ1710とを含む。ホスト装置1740にはインターフェイス(すなわち、UHS−IIインターフェイス1750)が1つしかないが、ブリッジ1710により、取り外し可能なレガシーSDカード1720または取り外し可能なUHS−IIカード1730と、ホスト装置1740との間の通信は可能となる。ホスト1740は、1750に示されるただ1つの記憶装置インターフェイスを通じてUHS−IIプロトコルを使用して、リングトポロジの中の各装置と通信する。取り外し可能なUHS−IIカード1730がブリッジ1710に接続される場合は、切替システム1760が、リングのループへカード(すなわち、1730)を接続し、SDPC1770は使用しない。取り外し可能なレガシーSDカード1720がブリッジ1710に接続される場合は、UHS−IIプロトコルからレガシーSDプロトコルに、かつ逆も同様に変換するために、切替システム1760は、カードをSDPC1770を通してリングのループへ接続する。切替システム1760は、図6の切替システム682とほぼ同じであり、SDPC1770は、図6のSDPC670とほぼ同じである。
【0052】
図18は、一実施形態による接続解析器1800を示す。接続解析器1800は、ホストプロトコル検出器1810と、カードプロトコル検出器1820と、カード挿入/除去検出器1830とを含む。前に説明したように、ホスト装置が記憶装置プロトコルの種類を事前に知らない場合は、ブリッジが、ホスト装置との通信を監視することによって種類を判断しうる。この場合、ホストプロトコル検出器1810は、ホスト装置から出る通信信号を監視し、ホスト装置が使用している記憶装置プロトコルの種類を検出する。接続解析器1800は、ホスト装置が使用しうる1つまたは複数の記憶装置プロトコルをサポートするために、構成可能なインターフェイス1840を含みうる。ホスト装置が使用するプロトコルの種類を検出するために、ホストプロトコル検出器1810はまず、インターフェイス1840を第1の種類の高速プロトコル(例えば、UFS)を使用して作動するように構成する。ホストプロトコル検出器1810は、ホスト装置からインターフェイス1840を通じてホストプロトコル検出器1810が受信する通信信号に基づき、この初期インターフェイス構成がホスト装置の記憶装置プロトコルに一致するかどうかを判断する。初期インターフェイス構成がホスト装置のプロトコルに一致しない場合は、ホストプロトコル検出器1810は、インターフェイス1840を、第2の種類の高速プロトコル(例えば、UHS−II)を使用して作動するように構成する。ホスト装置が使用するプロトコルとインターフェイス構成は、1対1で対応すると仮定する。(UFSおよび/またはUHS−II以外の速い記憶装置プロトコルがホスト装置で使用される場合もあることに留意するべきである。)つまり、ホストプロトコル検出器1810は、インターフェイス1840の作動構成と対応するプロトコルとの関係から、ホスト装置が使用している記憶装置プロトコルの種類を判断する。ホストプロトコル検出器1810は、代替として、ホスト装置が上位通信層(例えば、リンク層、トランスポート層、アプリケーション層)を使用してブリッジへ伝送する情報またはプロトコルコマンドから、ホスト装置が使用しているプロトコルの種類を判断する場合がある。
【0053】
あるいは、ホストプロトコル検出器1810は、1つまたは複数の速いプロトコルに適した1つの物理インターフェイス(例えば、インターフェイス1840)を使用してホスト装置と通信する場合がある。ホスト装置は、特定の速いプロトコルを使用してプロトコルコマンドをブリッジへ伝達すると仮定する。ホストプロトコル検出器1810は、このプロトコルコマンドを受け取り、プロトコルコマンドからホスト装置が使用しているプロトコルの種類を推断し、該当する記憶装置プロトコルを使用する。
【0054】
一実施例において、カードプロトコル検出器1820は、最低でも遅い記憶装置プロトコル(例えば、レガシーSDプロトコル)を使用する記憶装置(例えば、記憶装置1870)と通信する。この実施例において、カードプロトコル検出器1820はまず、記憶装置1870から構成情報を読み取るために、遅い記憶装置プロトコルを使用して記憶装置1870と通信する(1860)。この構成情報は、記憶装置が使用することができる記憶装置プロトコルの種類に関する情報を含んでいる。カードプロトコル検出器1820は、読み取った構成情報を基に、記憶装置1870がホスト装置で使われている速い記憶装置プロトコルを使用できるかどうかを判断する。記憶装置1870が、ホスト装置で使われている速い記憶装置プロトコルを使用していない場合、カードプロトコル検出器1820は、遅いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。記憶装置1870が、ホスト装置で使われている速い記憶装置プロトコルを使用できる場合、カードプロトコル検出器1820は、速いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。
【0055】
別の実施例において、カードプロトコル検出器1820はまず、速い記憶装置プロトコル(例えば、UHS−II)を使用して記憶装置(例えば、記憶装置1870)と通信する。この実施例において、カードプロトコル検出器1820はまず、速い記憶装置プロトコルを使用して記憶装置1870と通信する(1860)。記憶装置1870が通信に応答しない場合、カードプロトコル検出器1820は、遅いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。記憶装置1870が通信に応答する場合、カードプロトコル検出器1820は、速いプロトコルを使用して記憶装置1870にアクセスするべきと判断する。
【0056】
プロトコル検出工程に着手するには、記憶装置がブリッジに接続されているかどうかを判断する必要がある。別の実施例において、記憶装置1870は、ソケット1880を介してブリッジに接続される。リングトポロジとの関係で前に説明したように、装置がリングのループから取り外される場合は、ループが切断されないようにするために、取り外された装置を迂回しなければならない。このため、ソケット1880は機械スイッチ1890を含みうる。機械スイッチ1890は、ソケット1890と記憶装置1870が物理的かつ機能的に係合されると第1の状態(例えば、「オン」)になり、ソケット1890から記憶装置1870が取り外されると第2の状態(例えば、「オフ」)になる。そうはいっても、ソケット1880はカード接続検出器1830へ接続信号1892を送り、カード接続検出器はこの接続信号を基に、記憶装置がソケット1890(すなわち、ブリッジ)に接続されているかどうかを判断する。あるいは、カード接続検出器1830は、ポーリング方式で記憶装置1870をポーリングする場合もある。ポーリングセッションは、記憶装置で使用されているプロトコルの種類が判明した後に行われる。記憶装置で何らかのプロトコルが使用されていることが判明する場合、記憶装置はブリッジに接続されているといえる。接続されていると想定される記憶装置に対して通信を試みて失敗する場合、カードプロトコル検出部1820は、ソケット1880に記憶装置が接続されていないと判断する。
【0057】
コントローラ440、540、および660は、通常の既製のシステム・オン・チップ(「SoC」)デバイス、またはシステム・イン・パッケージ(「SiP」)デバイス、またはコントローラによって実行されたときに本願明細書で説明した設定、ステップ、操作、判断、および評価を実施する専用のファームウェア、ソフトウェア、またはアプリケーションを備える汎用処理装置であってもよい。コントローラは、ハードウェアを使用し、本願明細書で説明した設定、ステップ、操作、判断、および評価を組み込む特定用途向け集積回路(「ASIC」)であってもよい。
【0058】
本願明細書で使用する冠詞は冠詞の文法的対象が文脈しだいで1つであったり、2つ以上であったりする(少なくとも1つである)ことを意味する。例えば「要素」は、文脈しだいで1つの要素を意味することもあれば2つ以上の要素を意味することもある。本願明細書で使用する用語「含む」とは、「・・・を含むが、・・・に限定されない」ことを意味し、かつこれと互換的に使われる。本願願明細書で使用する用語「または」、「もしくは」と「および」、「かつ」は、特に文脈で明示されない限り用語「または(もしくは)/および(かつ)」を意味し、かつこれと互換的に使われる。本願明細書で使用する用語「等」は、「・・・等であるが、・・・に限定されない」ことを意味し、かつこれと互換的に使われる。
【0059】
これまで本発明の代表的な実施形態を説明してきたが、開示された実施形態の修正が本発明の範囲内にあることは当業者にとって明白である。代替の実施形態は、より多くのモジュール、より少ないモジュール、および/または機能的に等価なモジュールを含むことがある。本開示は、メモリカード、SD式フラッシュメモリカード、フラッシュ記憶装置、USBフラッシュドライブ(「UFD」)、マルチメディアカード(「MMC」)、セキュアデジタル(「SD」)、ミニSD、マイクロSD等の様々な種類の大容量記憶装置に関係する。したがって、添付の特許請求の範囲は、本願明細書での開示によって制限されるものではない。
【特許請求の範囲】
【請求項1】
ホスト装置と記憶装置との間の通信方法であって、
コントローラと、
切替システムと、
双方向変換器と、
一方には、第1の記憶装置プロトコルを使用するホスト装置と結合するホストインターフェイスと、
他方には、記憶装置と結合する記憶装置インターフェイスであって、前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置インターフェイスと、を備えるブリッジにおいて、
前記ブリッジに記憶装置が結合されたときに、前記第1および第2の記憶装置プロトコルのうちのどちらを前記記憶装置が使用しているのかを判断するステップと、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定するステップと、
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するステップと、を前記コントローラにより実施するステップを含む方法。
【請求項2】
請求項1記載の方法において、
前記ホスト装置によって使用される記憶装置プロトコルの種類は、前記コントローラにとって既知である方法。
【請求項3】
請求項1記載の方法において、
前記ブリッジが前記ホスト装置によって使用される記憶装置プロトコルの種類を知らない場合に、前記ホスト装置によって使用される記憶装置プロトコルの種類を、前記コントローラと前記ホスト装置との相互作用を通じて判断するステップをさらに含む方法。
【請求項4】
請求項1記載の方法において、
前記第1の記憶装置プロトコルは、前記第2の記憶装置プロトコルの改良または高速版である方法。
【請求項5】
請求項1記載の方法において、
前記第1の記憶装置プロトコルは、ユニバーサルフラッシュストレージ(UFS)および超高速(UHS−II)のうちのいずれか1つである方法。
【請求項6】
請求項1記載の方法において、
前記第2の記憶装置プロトコルは、セキュアデジタル(SD)、ユニバーサルフラッシュストレージ(UFS)、超高速(UHS−II)、およびこれらのいずれかの組み合わせのうちのいずれか1つである方法。
【請求項7】
請求項1記載の方法において、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、小型コンピュータシステムインターフェイス(SCSI)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルである方法。
【請求項8】
請求項1記載の方法において、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、セキュアデジタル(SD)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルである方法。
【請求項9】
請求項1記載の方法において、
前記記憶装置は、前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの両方を使用することができ、前記第1および第2の記憶装置プロトコルのうちの速いほうの記憶装置プロトコルが採用される方法。
【請求項10】
請求項1記載の方法において、
前記記憶装置は、セキュアデジタル(SD)カード、ユニバーサルフラッシュストレージ(UFS)カード、超高速(UHS−II)カード、SD−UFSカード、およびSD−UHS−IIカードのうちのいずれか1つである方法。
【請求項11】
請求項1記載の方法において、
前記ブリッジは、チェーントポロジまたはリングトポロジを有するデータネットワークを介して、ホスト装置および記憶装置に接続する方法。
【請求項12】
請求項11記載の方法において、
前記記憶装置インターフェイスからの前記記憶装置の切断を検出するステップと、
前記記憶装置インターフェイスを迂回するように前記切替システム内のバイパススイッチを作動させることにより切断に対処するステップと、を前記コントローラを備える前記ブリッジによりさらに実施する方法。
【請求項13】
請求項1記載の方法において、
前記ブリッジは、前記ホスト装置または通信ハブに直接接続される方法。
【請求項14】
ストレージシステムブリッジであって、
第1の記憶装置プロトコルを使用するホスト装置と直接的または間接的に結合されるホストインターフェイスと、
記憶装置と結合するための記憶装置インターフェイスであって、前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置インターフェイスと、
前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換する双方向変換器と、
コントローラと、
切替システムと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が結合されているかどうか、また前記第1および第2の記憶装置プロトコルのうちの前記記憶装置が使用している記憶装置プロトコルがどれなのかを判断し、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、かつ
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するように構成されるブリッジ。
【請求項15】
請求項14記載のブリッジにおいて、
前記コントローラは、前記ホスト装置が前記第1の記憶装置プロトコルを使用することを事前に知るブリッジ。
【請求項16】
請求項14記載のブリッジにおいて、
前記コントローラが前記記憶装置プロトコルの種類を知らない場合、前記コントローラは、前記ホスト装置との相互作用を通じて前記記憶装置プロトコルの種類を判断するブリッジ。
【請求項17】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルは、前記第2の記憶装置プロトコルの改良または高速版であるブリッジ。
【請求項18】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルは、ユニバーサルフラッシュストレージ(UFS)プロトコルおよび超高速(UHS−II)プロトコルのうちのいずれか1つであるブリッジ。
【請求項19】
請求項14記載のブリッジにおいて、
前記第2の記憶装置プロトコルは、セキュアデジタル(SD)プロトコル、ユニバーサルフラッシュストレージ(UFS)プロトコル、超高速(UHS−II)プロトコル、およびこれらのいずれかの組み合わせのうちのいずれか1つであるブリッジ。
【請求項20】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、小型コンピュータシステムインターフェイス(SCSI)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルであるブリッジ。
【請求項21】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、セキュアデジタル(SD)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルであるブリッジ。
【請求項22】
請求項14記載のブリッジにおいて、
前記記憶装置が前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの両方を使用できる場合は、速いほうの記憶装置プロトコルが採用されるブリッジ。
【請求項23】
請求項14記載のブリッジにおいて、
前記第2の記憶装置プロトコルに適合する記憶装置は、セキュアデジタル(SD)メモリカード、ユニバーサルフラッシュストレージ(UFS)メモリカード、超高速(UHS−II)メモリカード、SD−UFSカード、およびSD−UHS−IIカードのうちのいずれか1つであるブリッジ。
【請求項24】
請求項14記載のブリッジにおいて、
前記ブリッジは、チェーントポロジまたはリングトポロジを有するバスを介して、前記ホスト装置および前記記憶装置に接続するブリッジ。
【請求項25】
請求項24記載のブリッジにおいて、
前記切替システムは、前記記憶装置インターフェイスを迂回するためのバイパススイッチを含み、
前記コントローラは、前記記憶装置インターフェイスからの前記記憶装置の切断を検出するとともに、前記記憶装置インターフェイスを迂回するように前記バイパススイッチを作動させることにより切断に対処するようにさらに構成されるブリッジ。
【請求項26】
請求項14記載のブリッジにおいて、
前記ブリッジに記憶装置が結合されているかどうか、ならびに前記ホスト装置および/または前記記憶装置が使用している前記記憶装置プロトコルの種類を判断するための接続解析器をさらに備えるブリッジ。
【請求項27】
請求項14記載の方法において、
前記ブリッジは、前記ホスト装置または通信ハブに直接接続されるブリッジ。
【請求項28】
ストレージシステムブリッジであって、
第1の記憶装置プロトコルを使用するホスト装置と直接的または間接的に結合するホストインターフェイスと、
第2の記憶装置プロトコルまたは第3の記憶装置プロトコルを使用する記憶装置に結合する記憶装置インターフェイスであって、前記第2の記憶装置プロトコルおよび前記第3の記憶装置プロトコルの両方が前記第1の記憶装置プロトコルとは異なる記憶装置インターフェイスと、
前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換する第1の双方向変換器と、
前記第1の記憶装置プロトコルから前記第3の記憶装置プロトコルに、かつ逆も同様に通信データを変換する第2の双方向変換器と、
コントローラと、
切替システムと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が結合されているかどうか、また前記第2および第3の記憶装置プロトコルのうちのどちらを前記記憶装置が使用しているのかを判断し、
前記記憶装置が前記第3の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記第1の双方向変換器が、機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、
前記記憶装置が前記第3の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記第2の双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第3の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定するように構成されるストレージシステムブリッジ。
【請求項29】
請求項28記載のブリッジにおいて、
前記コントローラは、前記ホスト装置が前記第1の記憶装置プロトコルを使用することを事前に知るブリッジ。
【請求項30】
請求項28記載のブリッジにおいて、
前記コントローラが前記記憶装置プロトコルの種類を知らない場合、前記コントローラは、前記ホスト装置との相互作用を通じて前記記憶装置プロトコルの種類を判断するブリッジ。
【請求項31】
請求項28記載のブリッジにおいて、
前記ブリッジに記憶装置が結合されているか、ならびに前記ホスト装置および/または前記記憶装置が使用している前記記憶装置プロトコルの種類を判断する接続解析器をさらに備えるブリッジ。
【請求項32】
ストレージシステムブリッジであって、
リングトポロジを有するバスを介してホスト装置と直接的または間接的に結合するホストインターフェイスと、
前記リングトポロジを有するバスを介して記憶装置と結合する記憶装置インターフェイスと、
コントローラと、
前記記憶装置インターフェイスを迂回することが設定可能なバイパススイッチと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が動作可能なように接続されているかどうかを判断し、
前記記憶装置インターフェイスに記憶装置が動作可能なように接続されていると前記コントローラが判断する場合は、前記ホスト装置インターフェイスを前記記憶装置インターフェイスに接続し、かつ
前記記憶装置インターフェイスに記憶装置が接続されていないと前記コントローラが判断する場合は、前記記憶装置インターフェイスを迂回するために前記バイパススイッチを作動させるように構成されるストレージシステムブリッジ。
【請求項33】
データストレージシステムであって、
第1の記憶装置プロトコルを使用するホスト装置と、
前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置と、
コントローラ、切替システム、双方向変換器、ならびに一方には前記ホスト装置と結合するホストインターフェイス、および他方には前記記憶装置と結合する記憶装置インターフェイスを備えるブリッジと、を備え、
前記コントローラは、
前記ブリッジに記憶装置が結合されたときに、前記第1および第2の記憶装置プロトコルのうちのどちらを記憶装置が使用しているのかを判断し、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、かつ
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するように構成されるデータストレージシステム。
【請求項1】
ホスト装置と記憶装置との間の通信方法であって、
コントローラと、
切替システムと、
双方向変換器と、
一方には、第1の記憶装置プロトコルを使用するホスト装置と結合するホストインターフェイスと、
他方には、記憶装置と結合する記憶装置インターフェイスであって、前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置インターフェイスと、を備えるブリッジにおいて、
前記ブリッジに記憶装置が結合されたときに、前記第1および第2の記憶装置プロトコルのうちのどちらを前記記憶装置が使用しているのかを判断するステップと、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定するステップと、
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するステップと、を前記コントローラにより実施するステップを含む方法。
【請求項2】
請求項1記載の方法において、
前記ホスト装置によって使用される記憶装置プロトコルの種類は、前記コントローラにとって既知である方法。
【請求項3】
請求項1記載の方法において、
前記ブリッジが前記ホスト装置によって使用される記憶装置プロトコルの種類を知らない場合に、前記ホスト装置によって使用される記憶装置プロトコルの種類を、前記コントローラと前記ホスト装置との相互作用を通じて判断するステップをさらに含む方法。
【請求項4】
請求項1記載の方法において、
前記第1の記憶装置プロトコルは、前記第2の記憶装置プロトコルの改良または高速版である方法。
【請求項5】
請求項1記載の方法において、
前記第1の記憶装置プロトコルは、ユニバーサルフラッシュストレージ(UFS)および超高速(UHS−II)のうちのいずれか1つである方法。
【請求項6】
請求項1記載の方法において、
前記第2の記憶装置プロトコルは、セキュアデジタル(SD)、ユニバーサルフラッシュストレージ(UFS)、超高速(UHS−II)、およびこれらのいずれかの組み合わせのうちのいずれか1つである方法。
【請求項7】
請求項1記載の方法において、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、小型コンピュータシステムインターフェイス(SCSI)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルである方法。
【請求項8】
請求項1記載の方法において、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、セキュアデジタル(SD)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルである方法。
【請求項9】
請求項1記載の方法において、
前記記憶装置は、前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの両方を使用することができ、前記第1および第2の記憶装置プロトコルのうちの速いほうの記憶装置プロトコルが採用される方法。
【請求項10】
請求項1記載の方法において、
前記記憶装置は、セキュアデジタル(SD)カード、ユニバーサルフラッシュストレージ(UFS)カード、超高速(UHS−II)カード、SD−UFSカード、およびSD−UHS−IIカードのうちのいずれか1つである方法。
【請求項11】
請求項1記載の方法において、
前記ブリッジは、チェーントポロジまたはリングトポロジを有するデータネットワークを介して、ホスト装置および記憶装置に接続する方法。
【請求項12】
請求項11記載の方法において、
前記記憶装置インターフェイスからの前記記憶装置の切断を検出するステップと、
前記記憶装置インターフェイスを迂回するように前記切替システム内のバイパススイッチを作動させることにより切断に対処するステップと、を前記コントローラを備える前記ブリッジによりさらに実施する方法。
【請求項13】
請求項1記載の方法において、
前記ブリッジは、前記ホスト装置または通信ハブに直接接続される方法。
【請求項14】
ストレージシステムブリッジであって、
第1の記憶装置プロトコルを使用するホスト装置と直接的または間接的に結合されるホストインターフェイスと、
記憶装置と結合するための記憶装置インターフェイスであって、前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置インターフェイスと、
前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換する双方向変換器と、
コントローラと、
切替システムと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が結合されているかどうか、また前記第1および第2の記憶装置プロトコルのうちの前記記憶装置が使用している記憶装置プロトコルがどれなのかを判断し、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、かつ
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するように構成されるブリッジ。
【請求項15】
請求項14記載のブリッジにおいて、
前記コントローラは、前記ホスト装置が前記第1の記憶装置プロトコルを使用することを事前に知るブリッジ。
【請求項16】
請求項14記載のブリッジにおいて、
前記コントローラが前記記憶装置プロトコルの種類を知らない場合、前記コントローラは、前記ホスト装置との相互作用を通じて前記記憶装置プロトコルの種類を判断するブリッジ。
【請求項17】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルは、前記第2の記憶装置プロトコルの改良または高速版であるブリッジ。
【請求項18】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルは、ユニバーサルフラッシュストレージ(UFS)プロトコルおよび超高速(UHS−II)プロトコルのうちのいずれか1つであるブリッジ。
【請求項19】
請求項14記載のブリッジにおいて、
前記第2の記憶装置プロトコルは、セキュアデジタル(SD)プロトコル、ユニバーサルフラッシュストレージ(UFS)プロトコル、超高速(UHS−II)プロトコル、およびこれらのいずれかの組み合わせのうちのいずれか1つであるブリッジ。
【請求項20】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、小型コンピュータシステムインターフェイス(SCSI)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルであるブリッジ。
【請求項21】
請求項14記載のブリッジにおいて、
前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの各々は、セキュアデジタル(SD)・オーバー・ユニバーサルフラッシュストレージ(UFS)プロトコルであるブリッジ。
【請求項22】
請求項14記載のブリッジにおいて、
前記記憶装置が前記第1の記憶装置プロトコルと前記第2の記憶装置プロトコルの両方を使用できる場合は、速いほうの記憶装置プロトコルが採用されるブリッジ。
【請求項23】
請求項14記載のブリッジにおいて、
前記第2の記憶装置プロトコルに適合する記憶装置は、セキュアデジタル(SD)メモリカード、ユニバーサルフラッシュストレージ(UFS)メモリカード、超高速(UHS−II)メモリカード、SD−UFSカード、およびSD−UHS−IIカードのうちのいずれか1つであるブリッジ。
【請求項24】
請求項14記載のブリッジにおいて、
前記ブリッジは、チェーントポロジまたはリングトポロジを有するバスを介して、前記ホスト装置および前記記憶装置に接続するブリッジ。
【請求項25】
請求項24記載のブリッジにおいて、
前記切替システムは、前記記憶装置インターフェイスを迂回するためのバイパススイッチを含み、
前記コントローラは、前記記憶装置インターフェイスからの前記記憶装置の切断を検出するとともに、前記記憶装置インターフェイスを迂回するように前記バイパススイッチを作動させることにより切断に対処するようにさらに構成されるブリッジ。
【請求項26】
請求項14記載のブリッジにおいて、
前記ブリッジに記憶装置が結合されているかどうか、ならびに前記ホスト装置および/または前記記憶装置が使用している前記記憶装置プロトコルの種類を判断するための接続解析器をさらに備えるブリッジ。
【請求項27】
請求項14記載の方法において、
前記ブリッジは、前記ホスト装置または通信ハブに直接接続されるブリッジ。
【請求項28】
ストレージシステムブリッジであって、
第1の記憶装置プロトコルを使用するホスト装置と直接的または間接的に結合するホストインターフェイスと、
第2の記憶装置プロトコルまたは第3の記憶装置プロトコルを使用する記憶装置に結合する記憶装置インターフェイスであって、前記第2の記憶装置プロトコルおよび前記第3の記憶装置プロトコルの両方が前記第1の記憶装置プロトコルとは異なる記憶装置インターフェイスと、
前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換する第1の双方向変換器と、
前記第1の記憶装置プロトコルから前記第3の記憶装置プロトコルに、かつ逆も同様に通信データを変換する第2の双方向変換器と、
コントローラと、
切替システムと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が結合されているかどうか、また前記第2および第3の記憶装置プロトコルのうちのどちらを前記記憶装置が使用しているのかを判断し、
前記記憶装置が前記第3の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記第1の双方向変換器が、機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、
前記記憶装置が前記第3の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記第2の双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第3の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定するように構成されるストレージシステムブリッジ。
【請求項29】
請求項28記載のブリッジにおいて、
前記コントローラは、前記ホスト装置が前記第1の記憶装置プロトコルを使用することを事前に知るブリッジ。
【請求項30】
請求項28記載のブリッジにおいて、
前記コントローラが前記記憶装置プロトコルの種類を知らない場合、前記コントローラは、前記ホスト装置との相互作用を通じて前記記憶装置プロトコルの種類を判断するブリッジ。
【請求項31】
請求項28記載のブリッジにおいて、
前記ブリッジに記憶装置が結合されているか、ならびに前記ホスト装置および/または前記記憶装置が使用している前記記憶装置プロトコルの種類を判断する接続解析器をさらに備えるブリッジ。
【請求項32】
ストレージシステムブリッジであって、
リングトポロジを有するバスを介してホスト装置と直接的または間接的に結合するホストインターフェイスと、
前記リングトポロジを有するバスを介して記憶装置と結合する記憶装置インターフェイスと、
コントローラと、
前記記憶装置インターフェイスを迂回することが設定可能なバイパススイッチと、を備え、
前記コントローラは、
前記記憶装置インターフェイスに記憶装置が動作可能なように接続されているかどうかを判断し、
前記記憶装置インターフェイスに記憶装置が動作可能なように接続されていると前記コントローラが判断する場合は、前記ホスト装置インターフェイスを前記記憶装置インターフェイスに接続し、かつ
前記記憶装置インターフェイスに記憶装置が接続されていないと前記コントローラが判断する場合は、前記記憶装置インターフェイスを迂回するために前記バイパススイッチを作動させるように構成されるストレージシステムブリッジ。
【請求項33】
データストレージシステムであって、
第1の記憶装置プロトコルを使用するホスト装置と、
前記第1の記憶装置プロトコルまたは前記第1の記憶装置プロトコルとは異なる第2の記憶装置プロトコルを使用する記憶装置と、
コントローラ、切替システム、双方向変換器、ならびに一方には前記ホスト装置と結合するホストインターフェイス、および他方には前記記憶装置と結合する記憶装置インターフェイスを備えるブリッジと、を備え、
前記コントローラは、
前記ブリッジに記憶装置が結合されたときに、前記第1および第2の記憶装置プロトコルのうちのどちらを記憶装置が使用しているのかを判断し、
前記記憶装置が前記第1の記憶装置プロトコルではなく前記第2の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスと前記記憶装置インターフェイスとの間に前記双方向変換器が機能的に接続されるとともに、前記第1の記憶装置プロトコルから前記第2の記憶装置プロトコルに、かつ逆も同様に通信データを変換するように前記切替システムを設定し、かつ
前記記憶装置が前記第1の記憶装置プロトコルを使用している場合は、前記ホストインターフェイスを前記記憶装置インターフェイスへ接続するときに前記双方向変換器を迂回するように前記切替システムを設定するように構成されるデータストレージシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公表番号】特表2013−505507(P2013−505507A)
【公表日】平成25年2月14日(2013.2.14)
【国際特許分類】
【出願番号】特願2012−530345(P2012−530345)
【出願日】平成22年9月2日(2010.9.2)
【国際出願番号】PCT/IB2010/002191
【国際公開番号】WO2011/036526
【国際公開日】平成23年3月31日(2011.3.31)
【出願人】(508159260)サンディスク アイエル リミテッド (33)
【Fターム(参考)】
【公表日】平成25年2月14日(2013.2.14)
【国際特許分類】
【出願日】平成22年9月2日(2010.9.2)
【国際出願番号】PCT/IB2010/002191
【国際公開番号】WO2011/036526
【国際公開日】平成23年3月31日(2011.3.31)
【出願人】(508159260)サンディスク アイエル リミテッド (33)
【Fターム(参考)】
[ Back to top ]