(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-02
(45)【発行日】2022-09-12
(54)【発明の名称】ストレージシステム、及びプログラマブルロジックデバイス
(51)【国際特許分類】
G06F 13/14 20060101AFI20220905BHJP
G06F 3/08 20060101ALI20220905BHJP
G06F 3/06 20060101ALI20220905BHJP
G06F 13/10 20060101ALI20220905BHJP
G06F 3/00 20060101ALI20220905BHJP
【FI】
G06F13/14 330A
G06F3/08 H
G06F3/06 301A
G06F13/10 340A
G06F3/00 S
(21)【出願番号】P 2019017620
(22)【出願日】2019-02-04
【審査請求日】2022-01-11
(32)【優先日】2018-03-05
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-05-16
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】390019839
【氏名又は名称】三星電子株式会社
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【住所又は居所原語表記】129,Samsung-ro,Yeongtong-gu,Suwon-si,Gyeonggi-do,Republic of Korea
(74)【代理人】
【識別番号】110000051
【氏名又は名称】弁理士法人共生国際特許事務所
(72)【発明者】
【氏名】サムポン ポール オラリグ
(72)【発明者】
【氏名】フレッド ワーレイ
【審査官】松平 英
(56)【参考文献】
【文献】特開2018-018514(JP,A)
【文献】特開2018-005907(JP,A)
【文献】池西 樹,Samsung、NGSFF NVMe SSD「PM983」やGDDR6グラフィックスメモリを準備中,[online],日本,エルミタージュ秋葉原,2017年11月13日,[2022年3月18日検索]、インターネット<https://www.gdm.or.jp/pressrelease/2017/1113/242635>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/00
3/06-3/08
3/18
12/08-12/128
13/10-13/14
13/20-13/42
(57)【特許請求の範囲】
【請求項1】
一つ以上のスイッチボードを含むシャーシ(chassis)と、
前記一つ以上のスイッチボードとインターフェース(interface)するミッドプレーン(midplane)と、
コネクタを用いて前記ミッドプレーンと連結された少なくとも一つのデータストレージデバイスと、を包含し、
前記ミッドプレーンは、前記ミッドプレーンと前記少なくとも一つのデータストレージデバイスをインタフェースする
CPLD(complex programmable logic device:プログラマブル複合的論理デバイス)を包含し、
前記少なくとも一つのデータストレージデバイスは、前記コネクタのピン上の第1信号に基づいて、第1プロトコルにより構成され、
前記少なくとも一つのデータストレージデバイスは、前記コネクタの前記ピン上の第2信号に基づいて、第2プロトコルにより再構成可能であ
り、
前記CPLDは、前記ミッドプレーンの動作を管理し、前記一つ以上のスイッチボードのBMC(baseboard management controller)と通信し、前記少なくとも一つのデータストレージデバイスの存在/不存在を検出し、前記BMCに連結する、ことを特徴とするストレージシステム。
【請求項2】
前記少なくとも1つのデータストレージデバイスは、プロセッサ、FPGA(field-programmable gate array)又はASIC(application-specific integrated circuit)を含む、ことを特徴とする請求項1に記載のストレージシステム。
【請求項3】
前記コネクタは、PCIe(peripheral component interconnect express)を支援できる、ことを特徴とする請求項1に記載のストレージシステム。
【請求項4】
前記コネクタは、U.2コネクタ又はM.2コネクタの少なくとも1つである、ことを特徴とする請求項1に記載のストレージシステム。
【請求項5】
前記少なくとも一つのデータストレージデバイスは、NF1(new form factor 1)標準と互換可能である、ことを特徴とする請求項1に記載のストレージシステム。
【請求項6】
前記少なくとも一つのデータストレージデバイスは、少なくとも一つのNVMe(non-volatile memory express)SSD及びNVMe-oF(NVMe over fabrics)SSDを含む、ことを特徴とする請求項1に記載のストレージシステム。
【請求項7】
前記コネクタは、供給者によって定義されたピンである、ことを特徴とする請求項6に記載のストレージシステム。
【請求項8】
前記シャーシは2Uシャーシであり、
前記ストレージシステムは、前記2Uシャーシから互いの上に配置される第1スイッチボード及び第2スイッチボードを含む、ことを特徴とする請求項1に記載のストレージシステム。
【請求項9】
前記ミッドプレーンは、
前記データストレージデバイスもあらかじめ決定された数が挿入されるドライブベイを有する、ことを特徴とする請求項8に記載のストレージシステム。
【請求項10】
前記ストレージシステムは、
前記シャーシ内の
前記一つ以上のスイッチボードを含み、前記シャーシは1Uシャーシを含むことを特徴とする請求項1に記載のストレージシステム。
【請求項11】
前記ストレージシステムは、
前記シャーシ内に並んで配置される第1スイッチボード及び第2スイッチボードを含み、前記シャーシは2Uシャーシを含むことを特徴とする請求項1に記載のストレージシステム。
【請求項12】
前記ミッドプレーンは、HA(high-availability)モードで動作するように前記データストレージ
デバイスを構成する、ことを特徴とする請求項1に記載のストレージシステム。
【請求項13】
レジスタと、
一つ以上のBMC(baseboard management board)マルチプレクサと、
スロットマルチプレクサと、を包含し、
プログラマブル(programmable)ロジックデバイスは、データストレージシステムのミッドプレーンに集積され、前記ミッドプレーンは、少なくとも一つのデータストレージデバイスを挿入するためのコネクタを含む、ドライブベイを包含し、
前記プログラマブルロジックデバイスは、前記一つ以上のBMCマルチプレクサのそれぞれのBMCマルチプレクサを利用して、一つ以上のスイッチボードの一つ以上のBMCにインターフェースを提供して前記少なくとも一つのデータストレージデバイスの動作を管理し、
前記一つ以上のBMCマルチプレクサのそれぞれは、前記スロットマルチプレクサと連結されて前記一つ以上のスイッチボードのBMCが前記少なくとも一つのデータストレージデバイスと同時に通信可能にし、
前記プログラマブルロジックデバイスは、前記一つ以上のBMCのそれぞれが、前記レジスタにアクセスすることにより、前記コネクタ上の第1信号に基づく第1プロトコルにより前記少なくとも一つのデータストレージデバイスへのインターフェースを提供し、
前記プログラマブルロジックデバイスは、前記コネクタ上の第2信号に基づく第2プロトコルにより前記少なくとも一つのデータストレージデバイスを再構成できる、ことを特徴とするプログラマブルロジックデバイス。
【請求項14】
前記プログラマブルロジックデバイスは、前記データストレージシステムの前記一つ以上のスイッチボードとインターフェースする、ことを特徴とする請求項
13に記載のプログラマブルロジックデバイス。
【請求項15】
前記プログラマブルロジックデバイスは、FPGA(field-programmable gate array)である、ことを特徴とする請求項
13に記載のプログラマブルロジックデバイス。
【請求項16】
前記レジスタは、構成レジスタ、活性のBMC ID、スロットID、及び存在レジスタを含む、ことを特徴とする請求項
13に記載のプログラマブルロジックデバイス。
【請求項17】
前記コネクタは、供給者によって定義されたピンを含む、ことを特徴とする請求項
13に記載のプログラマブルロジックデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はラック装着型データストレージシステム、及びプログラマブルロジックデバイスに係り、より詳しくは、複数のSSD(solid-state drives)を支援するラック装着型データストレージシステム、及びプログラマブルロジックデバイスに関する。
【背景技術】
【0002】
エッジ(edge)デバイスはエンタープライズ(enterprise)又はサービス提供者のコアネットワーク(service provider core networks)に多様なモバイルデバイスによって生成されるネットワークのトラフィックのエントリーポイント(entry point)を提供する。エッジデバイスの例示はルーター(router)、ルーティングスイッチ(routing switch)、スイッチ、統合アクセスデバイス(integrated access device)、マルチプレクサ(multiplexer)、多様なMAN(metropolitan area network)とWAN(wide area network)のアクセスポイントなどを含む。
【0003】
エッジデバイスは一つのタイプのネットワークのプロトコルと他のプロトコルとの間を変換する。一般的に、エッジデバイスはより速く、より効率的な中枢(backbone)及びコア(core)ネットワークへのアクセスを提供する。エッジデバイスはVPN(Virtual Private Network)支援、VoIP(Voice over IP)、及びQoS(Quality of Service)のような向上されたサービスも提供ができる。エッジデバイスはエッジデバイスの機能及び受信(incoming)と送信(outgoing)とのトラフィック(traffic)の通信プロトコルによって、受信されたトラフィックを修正したり、修正しなかったりする。例えば、簡単なスイッチは受信パケット(packet)を修正せずに、受信トラフィックをルーティングするが、SBC(session border controller)は修正されたパケットを送る前に、受信パケットについての少しのデータ変換が行える。
【0004】
モバイルデバイスからデータが生成されればされるほど、このモバイルデバイスからデータセンターに伝送されるデータの量は急速に増加する。エッジデバイスはモバイルデバイスにより生成されるローカル(local)データを前処理(pre-process)したり、遠隔クラウド(remote cloud)から基地局(base station)へワークロード(workload)をオフロードイング(offloading)したりするための能力(capability)、即ち、エッジコンピューティング能力を有する。エッジデバイスのエッジコンピューティング能力は、モバイルデバイスとサービスネットワークのエンタープライズとの間のデータ伝送を効率的かつ経済的にする。
【0005】
一つのシャーシー(chassis)内のデータストレージデバイスは、相異なる供給会社により製造でき、そしてそれらの意図された機能及び実行のためのターゲットアプリケーション(applications)により異なるように構成されなければならない。相異なる供給会社から相異なるタイプのデータストレージデバイスを支援できる共通するシステムプラットフォーム(platform)が非常に望ましい。なお、NF1(New Form Factor 1)ベースのSSDのように最近注目されるデータストレージデバイスを支援できる共通システムプラットフォームを有することも望ましい。
【先行技術文献】
【特許文献】
【0006】
【文献】米国登録特許第9501110 B2号公報
【文献】米国公開特許第20170364295A1号公報
【文献】米国公開特許第20150120874A1号公報
【文献】米国公開特許第20170228328A1号公報
【文献】米国公開特許第20160239460A1号公報
【文献】米国公開特許第20170102895A1号公報
【文献】米国公開特許第20170300445A1号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は上述した技術的な課題を解決するために導出され、本発明は複数のソリッドステートドライブを支援するためのモジュラーシステムのアーキテクチャーを提供する。
【課題を解決するための手段】
【0008】
一実施例において、ラック装着型データストレージシステムは以下を包含する。つまり、一つ以上のスイッチボードを含むシャーシと、前記一つ以上のスイッチボードとインターフェースするミッドプレーンと、コネクタを用いて前記ミッドプレーンと着脱可能に連結された一つ以上のデータストレージデバイスである。前記一つ以上のデータストレージデバイスの中の少なくとも一つのデータストレージデバイスは、前記ミッドプレーンとインターフェースするロジックデバイスを含む。前記ロジックデバイスは、前記ミッドプレーンと該当するデータストレージデバイスのデバイス特定インターフェースを提供する。前記少なくとも一つのデータデバイスは、前記コネクタのピン上の信号に基づいて第1プロトコルにより前記のロジックデバイスを用いて構成され、前記少なくとも一つのデータストレージデバイスは前記ロジックデバイスを用いて前記コネクタの前記ピン上の信号の変化に基づいて第2プロトコルにより再構成できる。
【0009】
他の実施例において、プログラマブルロジックデバイスは、レジスタと、一つ以上のBMC(baseboard management board)マルチプレクサと、スロットマルチプレクサとを包含する。プログラマブルロジックデバイスは、データストレージシステムのミッドプレーンに集積され、前記ミッドプレーンは、一つ以上のデータストレージデバイスを挿入するための複数のコネクタを含むドライブベイ(drive bay)を含む。前記プログラマブルロジックデバイスは、前記一つ以上のBMCマルチプレクサのそれぞれのBMCマルチプレクサを利用し、一つ以上のスイッチボードの一つ以上のBMCにインターフェースを提供して、一つ以上のデータストレージデバイスの動作を管理する。前記一つ以上のBMCマルチプレクサのそれぞれは、前記スロットマルチプレクサと連結されて前記一つ以上のスイッチボードのBMCが、前記一つ以上のデータストレージデバイスと同時に通信可能にする。前記プログラマブルロジックデバイスは、前記一つ以上のBMCのそれぞれが前記レジスタにアクセスすることにより、第1プロトコルにより前記一つ以上のデータストレージデバイスにデバイス特定のインターフェースを提供する。前記プログラマブルロジックデバイスは、前記一つ以上のデータストレージデバイスに対応する前記複数のコネクタのピンの変化に基づいて、第2プロトコルによって前記一つ以上のデータストレージデバイスの中の少なくとも一つのデータストレージデバイスを再構成できる。
【0010】
イベントの具現及び組合わせの多様で新規な細部事項を含む、前述した特徴と他の好ましい特徴は、添付図面を参照しながら、より具体的に説明し、請求の範囲において言及する。本文で説明する特定のシステム及び方法は限定としてではなく、ただの例示として図示する。当業者が理解できるように、本文で説明した原理及び特徴は、本開示の範囲を逸脱せずに多様で数多くの実施例で利用できる。
【発明の効果】
【0011】
本発明の実施例によると、共通システムプラットフォームはM.2コネクタ(connector)を利用するNF1(New Form Factor 1)ベースのSSDのような最近作られたデバイスだけではなくて、標準U.2コネクタ(例えば、PM1725a/1735 SSD)を有するNVMeーoFデバイスを支援できる。
【図面の簡単な説明】
【0012】
本明細書の一部としての添付図面は、現在の望ましい実施例を図示し、前述した一般的な説明、及び以下の望ましい実施例の詳しい説明とともに本文で説明する原理を説明して教示するために提供する。
【0013】
【
図1】一実施例による2Uシャーシにおいて具現された例示的なデータストレージシステムのブロック図である。
【
図2】他の実施例による2Uシャーシにおいて具現された例示的なデータストレージシステムのブロック図である。
【
図3】一実施例によるデータストレージシステムのミッドプレーン内に含まれた例示的なCPLDのブロック図である。
【
図4】一実施例による2個の小型フォームファクターSSDを含む例示的なデータストレージデバイスの図である。
【
図5】一実施例による1Uシャーシで具現される例示的なデータストレージシステムのブロック図である。
【
図6】一実施例による
図5のデータストレージシステム内で利用される例示的なデータストレージデバイスの図である。
【0014】
図面は、一定の比率で図示せず、類似の構造又は機能の要素は図面の全体にわたって類似の参照番号によって表示する。図面は、単に本文で説明する多様な実施例の説明を容易にするためと意図する。図面は本文で開示する教示のすべての態様を説明せず、請求の範囲を限定しない。
【発明を実施するための形態】
【0015】
本文で開示する特徴及び教示の各々は、複数のソリッドステートドライブ(solid-state drives)を、支援するためのモジュラー(modular)システムアーキテクチャを、提供するためのシステム及び方法を提供するために他の特徴及び教示と分離され、又は共に活用される。多くの追加的な特徴及び教示を、分離し、そして共に活用する代表的な例示は、添付した図面を参照してより詳細に説明する。詳しい説明は、本教示を実施するための態様のための追加の細部事項を当業者に教示するためと意図し、請求の範囲を限定しない。よって、詳しい説明で前述した特徴の組み合せは教示を実施するのに必須的ではない可能性があり、本教示の代表的な例示を特に説明する。
【0016】
以下の説明で、単に説明の目的のために、特定の名称を、本開示の完全な理解を提供するために提示する。しかし、当業者には、特定の細部事項が本開示の教示を実施するのに要求されないことが明らかであろう。
【0017】
本文の詳細な説明の一部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズム及び記号的表現の側面から提示する。アルゴリズムの説明及び表現は、データ処理分野における当業者が研究内容を他の当業者に効果的に伝達するために利用される。アルゴリズムは、一般的に、望みの結果を誘導するステップの一貫性のある順序で考えられる。ステップは、物理量の物理的操作を要求するステップである。一般的に、必ずしもそうではないが、このような量は格納、伝送、結合、比較、及びその他の操作が可能な電気的又は磁気的信号の形態を取る。主に共通活用の理由で、ビット、値、要素、記号、文字、用語、数字などとして、これらの信号が参照されることが、時には便利である。
【0018】
しかし、これらのすべての用語及び類似の用語は、適切な物理量に関連され、ただ、このような量に適用される便利なラベルであることに留意しなければならない。以下の説明で明らかに異なるように、特に記述しない限り、説明の全体にわたり、「処理(processing)」、「コンピューティング」、「計算」、「判断」、「表示(displaying)」などのような用語を活用する議論は、コンピュータシステムのレジスタ及びメモリ内の物理的(電子)量として表現されたデータを、コンピュータシステムのメモリ、レジスタ、他の情報ストレージ、伝送、又はディスプレイデバイス内の物理量として同様に表現される他のデータに操作して変形するコンピュータシステム、又は同様の電子コンピューティングデバイスの動作とプロセスを参照することが明らかである。
【0019】
なお、代表的例示及び従属項の多様な特徴は、本教示の追加の有用な実施例を提供するために、具体的かつ明示的に列挙しない方式で結合される。すべての値の範囲又はエンティティ(entity)のグループの表示は、請求された主題を制限する目的だけではなく、本来の開示を目的として、すべての可能な中間値又は中間エンティティを開示する。図面に示す構成要素の寸法及び形状は、本教示がどのように実施されるかの理解を助けるために設計されたものや、例示において示した寸法及び形状に限定しようとする意図でないことを、また明示する。
【0020】
本開示は、相異なる供給会社によって作成された他のNVMe-oF(non-volatile memory express(NVMe)over fabrics)デバイスを支援できる共通システムプラットフォーム、そしてNVMeデバイス又はNVMe-oFデバイスで構成されうるマルチモード(multi-mode)ストレージデバイスを説明する。一実施例において、本共通システムプラットフォームは、複数のNVMe又はNVMe-oFデバイスをそれぞれ収容できるミッドプレーン(midplane)と1つ以上のマザーボード(motherboards: NVMeデバイスの場合)又は一つ以上のスイッチボード(switchboards:NVMe-oFデバイスの場合)を含むラック装着型シャーシ(rack-mountable chassis又はエンクロージャー(enclosure))を呼称する。本共通システムプラットフォームは、M.2コネクタ(connector)を利用するNF1(New Form Factor 1)ベースのSSDのような最近作られたデバイスだけではなく、標準U.2コネクタ(例えば、PM1725a/1735 SSD)を有するNVMe-oFデバイスを支援できる。
【0021】
マルチモードのNVMe-oF(non-volatile memory express(NVMe)over fabrics)デバイスは、知られている位置から、又はシャーシタイプのピン、例えば、ピンE6若しくはマルチモードNVMe-oFデバイスが挿入されたシャーシのタイプに応じたU.2コネクタの供給会社によって定義された予約のピンから情報を検出することにより、NVMe又はNVMe-oFプロトコルのいずれか一つを支援する。マルチモードのNVMe-oFデバイスがNVMeシャーシのドライブベイ(drive bay)に挿入されると、U.2コネクタの4つのPCIe(peripheral component interconnect express)レーン(lane)のすべてのエンベデッド(embedded)PCIeエンジンによって駆動される。この場合、NVMe-oFデバイスは、エンベデッドイーサネット(Ethernet)エンジンを非活性化して(disable)、すべてのNVMeコマンド及び機能が支援されたり活性化されたりする(enable)。一方では、マルチモードNVMe-oFデバイスがNVMe-oFシャーシのドライブベイに挿入されると、NVMe-oF装置のイーサネット(登録商標)ポートが活性化され、データプレーン(data-plane)として使用する。このモードで、by-4(X4)のPCIeレーンは2つのby-2(X2)のPCIeレーンとしての2つの制御プレーン(control plane)として動作する。
【0022】
一実施例による本共通システムプラットフォームのミッドプレーンは、NVMeデバイス又はNVMe-oFデバイスのいずれか一つから構成される、本マルチモードのストレージデバイスだけでなく、NVMe及びNVMe-oFデバイスの両方を支援できる。
NVMeモードで構成されると、本マルチモードのストレージデバイスは、NVMeデバイスとして機能し(又は動作して)、NVMe-oFモードで構成されると、本マルチモードのストレージデバイスは、一つ以上のイーサネットポートに対するU.2コネクタ上のSASピンを利用して、NVMe-oFデバイスとして機能する(又は動作する)。
【0023】
一実施例による本共通システムプラットフォームのミッドプレーンは、HA(high availability)(デュアルポート(dual-port))モード及びnon-HA(非HA)モード(シングルポート(single-port))の両方を支援する。ミッドプレーンは、2つのスイッチボードが2つのPCIeスイッチのNTB(Non-Transparent Bridge)を介して互いに通信するHAモードを支援するために、高速の、クロック(clock)及び制御信号に予めルーティング(routing )される。一般的に、HAモードを支援できるNVMe-oFデバイスは、より高価である場合もある。本共通システムプラットフォームは、HA及びnon-HAモードの両方を支援するミッドプレーンを利用するシステムの構成及びアプリケーションに基づいてHA及びnon-HAモードの両方を支援することにより、経済的効果を提供する。non-HAモード構成されると、本共通システムプラットフォームは、制御プレーンとしてすべての標準特徴のために一つのby-2(X2)のPCIeレーンを利用する。
HAモードで構成されると、本共通システムプラットフォームは、4つのPCIeレーンをポート(A)及びポート(B)のための2つのby-2(X2)PCIレーンにそれぞれ分ける。イーサネット信号は、主イーサネットポート(例えば、Eth0)のためのいくつかのSASピン(例えば、S2、S3、S5及びS6)と副イーサネットポート(例えば、Eth1)のための他のSASピン(例えば、S9、S10、S12及びS13)を利用する。ピン(E25、DualPort_EN#)は、デュアルポートの構成を活性化するために利用される。例えば、ピン(E25)がロー(low)になると、NVMe-oFデバイスはデュアルポートモードで動作し、そうでなければ、NVMe-oFデバイスはシングルポートモードで動作する。
2つのPCIeスイッチ106は、それぞれのNTBポートを介して相互に連結される。
【0024】
NVMe-oFの場合、本共通システムプラットフォームのスイッチボードは、制御プレーンとして2つのby-2(X2)のPCIeレーンを利用して、追加的なコストなしに、シャーシに取り付けられたNVMe-oFデバイスのそれぞれと通信する。同じミッドプレーンがNVMeベースのシャーシ又はNVMe-oFベースのシャーシの両方のために利用される。したがって、本共通システムのプラットフォームは、より速い市場投入までの期間、及びより低い開発リスクを提供できる。本共通システムのプラットフォームは、データストレージシステムの性能を線形的に調整でき、スロット(slot)当たり小型フォームファクタ(Small Form Factor)当たり、より多くのSSDを提供する。
【0025】
一実施例において、既存のPCIeドライバ(driver)は、本共通システムプラットフォーム、及び本マルチモードのストレージデバイスを支援するための修正なしに利用される。なお、本共通システムプラットフォームは、1U及び2Uシャーシのような多様なフォームファクタ(form factors)のマザーボード又はスイッチボードを再使用できる。
【0026】
本共通システムのプラットフォームは、同じデータストレージデバイスがNVMeデバイス又はNVMe-oFデバイスとして利用されるので、データストレージデバイスのユニット当たりのエッジ(edge)デバイス又はデータストレージサーバのコストを下げることができる。なお、本マルチモードのデータストレージデバイスは、多様な製品に使用され、及び/又はデータセンター内のラック装着型シャーシに取り付けられる。
【0027】
一実施例による本共通システムプラットフォームのミッドプレーンは、ミッドプレーンの動作を管理するCPLD(complex programmable logic device:プログラマブル複合的論理デバイス)を含む。CPLDは、I2C及び/又はSMBusを介して取り付けられたマザーボード又はスイッチボードのBMCと通信する。各マザーボード又はスイッチボードのBMCは、それに取り付けられた、相異なるタイプのデータストレージデバイスの行動(又は動作)を検出し、調整するのに役立つ。
【0028】
一実施例によるミッドプレーンは、コンピュータを利用した支援を提供しない可能性がある。代わりに、ミッドプレーンとSSDとの間に配置されるSSDインターポーザカード(SSD interposer card、図示せず)は、FPGA(Field-Programmable Gate Array)又はASIC(Application-Specific Integrated Circuit)を含んでミッドプレーンとインターフェース(interface:接続又は連結)して、それ自身のインターフェーシング(interfacing)の最適化を管理する。例えば、SSDインターポーザカードは、BMCと連携して、ミッドプレーンとともに取り付けられたSSDを管理する。
【0029】
本共通システムプラットフォームのミッドプレーンは、複数のSSDが連結される1つ以上のエッジSSDコントローラを含む。ミッドプレーンは、システムの構成の、例えば、1U及び2Uシャーシに応じて一つ以上のエッジSSDコントローラをマザーボードやスイッチボードに連結するように構成される。複数のエッジSSDコントローラのそれぞれは、複数のSSDの、例えば、4つのイーサネットSSD(Ethernet SSDs: eSSDs)と直接インターフェースする。eSSDのそれぞれは、それ自身のもっと軽いASICを有し、例えば、NGSFF(Next Generation Small Form Factor)又はNF1(Next Generation Small Form Factor)の標準と互換可能な小型フォームファクタを有する。
【0030】
図1は、一実施例による2Uシャーシにおいて具現された例示的なデータストレージシステムのブロック図である。データストレージシステム100Aは、2Uラック装着型シャーシで並んで配置される2つのスイッチボード(101a、101b)を含む。2つのスイッチボードに(101a、101b)は、シャーシ内のそれ自身の配置を除いては同一である。システム構成に応じて、データストレージシステム100Aは、ただ1つのスイッチボードを含む。以下で、2つのスイッチボード(101a、101b)は、集合的に又は独立的に、スイッチボード101と称す。
【0031】
スイッチボード(101a、101b)のそれぞれは、CPU(central processing unit)102、BMC(baseboard management controller)103、イーサネットスイッチコントローラ105、PCIeスイッチ106、イーサネットポーとPCIeポートを含む複数のアップリンク(uplink)ポート114、共通ミッドプレーン151を介して、複数のデータストレージデバイス150(例えば、NVMe SSD又はeSSD)とインターフェースする高速コネクタ115、及び管理LAN(local area network)ポート116を含む。データストレージシステム100Aの例示は、サムスン電子(株)によって設計されて製造されたPM1725a NVMe SSDである。以下で、用語、データストレージデバイス及びeSSDは、いくつかの実施例で説明の便宜のために交換して利用される。しかし、データストレージデバイス150は、任意のタイプのデータストレージデバイスの、例えば、NVMe SSD、イーサネットSSD及びNVMe SSD又はNVMe-oF SSDで構成されるマルチモードSSDである。
【0032】
BMC103は、多様なセンサ、例えば、パワー状態センサー(図示せず)及び温度センサーを利用して、スイッチボード101の物理的な状態をモニタリング(monitoring)できるローカルサービスプロセッサである。
BMC103は、ディスプレイを有するポータブルデバイスを使用して、管理LANポート116又はSMBus(system management bus:システム管理バス)(図示せず)のような独立的な通信経路を介してサービスマネージャーと通信する。
【0033】
アップリンクポート114は、アプリケーションを実行するホストコンピュータに連結され、ホストコンピュータで実行されるアプリケーションは、データストレージデバイス150にアクセスしてアップリンクポート114を介してデータを格納し、格納されたデータにアクセスする。データストレージシステム100AがNVMe-oFシステムであれば、ホストコンピュータは、イーサネット、ファイバチャネル(Fibre Channel)、インフィニバンド(InfiniBand)のような、ファブリック(fabric)ネットワークを介してデータストレージデバイス150にアクセスする。
【0034】
例えば、アップリンクポート114の各々は、100ギガビットイーサネット(Gigabit Ethernet:Gbe)ポートである。NVMe-oFの場合、ホストコンピュータは、イーサネットパケットをデータストレージデバイス150上のデータを読み取り、修正し、そして書込むコマンドを含むスイッチボード101に伝送する。NVMeの場合、データストレージデバイス150は、従来のX86ベースのマザーボード(図示せず)に取り付けられる。
【0035】
管理LANポート116は、外部の管理スイッチ(図示せず)に連結される。システムマネージャーは、IPMI(intelligent platform management interface)のプロトコルを使用して管理LANポート116を介して複数のスイッチボードの状態を直接管理(又はモニタリング)する。IPMIのプロトコルはIPMIメッセージを利用して、管理LANポート116を介して、システムマネージャーとBMC103との間の通信を許容する。スイッチボード101は、他の構成要素、回路、及び/又はサブシステム、例えば、一つ以上のDDR4(dual data rate 4)DIMMs(dual in-line memory modules)を包含し、データストレージデバイス150へのデータ伝送、及びデータストレージデバイス150からのデータ伝送を容易にし、データストレージデバイス150を制御して効果的に管理する。
【0036】
一実施例によれば、最大24個のデータストレージデバイス150が、データストレージシステム100Aのスイッチボード(101a、101b)のそれぞれに連結される。従って、合計24個のデータストレージデバイス150は、データストレージシステム100Aに取り付けられる。例えば、スイッチボード101aは、イーサネットポート0を介してeSSD1からeSSD24まで連結され、そしてスイッチボード101bは、イーサネットポート1を介してeSSD1からeSSD24まで連結される。各eSSDは最大700k IOPs(input/output operations per second)まで支援できる。データストレージシステム100Aの評価された性能は、ランダムリード(read)の入出力(I/O)に対して、約1680万IOPs(又は約1680 IOPs:各 eSSD 当たり24×700k IOPS)である。
【0037】
eSSD1乃至eSSD24のそれぞれはNVMeモード又はNVMe-oFモードで動作するように構成される。例えば、データストレージデバイス150は、NVMe-oFモードで動作するように構成されるNVMe-oFデバイス(又はeSSD)である。この場合、4つのPCIeレーンの中の2つ(2X PCIe)は、第1スイッチボード101aの高速コネクタ115に連結されるように構成され、そして残りの2つのPCIeレーンは、第2スイッチボード101bの高速コネクタ115に連結されるように構成される。同様に、第1イーサネットポート(Eth0)は、第1スイッチボード101aの高速コネクタ115に連結されるように構成され、そして第2イーサネットポート(Eth1)は、第2スイッチボード101bの高速コネクタ115に連結されるように構成される。データストレージデバイス150のそれぞれに伝送され、データストレージデバイス150のそれぞれから受信されるイーサネット及びPCIeトラフィック(traffic)は、イーサネットスイッチコントローラ105及びPCIeスイッチ106を介してそれぞれルーティング(routing)される。
【0038】
一実施例によるミッドプレーン151は、ミッドプレーンの動作を管理するCPLD(complex programmable logic device)152を含む。CPLD152は、取り付けられたスイッチボード101のBMC103と通信する。CPLD152及び各スイッチボード101のBMC103は、シャーシに取り付けられた相異なるタイプのデータストレージデバイス150の行動(又は動作)を検出し、調整するのに役立つ。例えば、CPLD152は、高速コネクタ115上のデータストレージデバイス150に対応する特定のピン上の電圧を測定することにより、各スロット内のデータストレージデバイス150の存在/不存在を検出する。
【0039】
CPLD152は、BMC103ついての多様な支援を提供し、データストレージデバイス150を管理する。例えば、CPLD152は、専用のSMBus及び/又はI2Cポートを介してBMC103を取り付けられたデータストレージデバイス150(データストレージシステム100A内の最大24個まで)に連結する。CPLD152は、各データストレージデバイス150が同じセンサーアドレスを有する制約のために、BMC103が一度に1つずつデータストレージデバイス150と通信できるようにする。データストレージデバイス150は、2.5’’小型フォームファクタを有するドライブを支援するシャーシの各ドライブスロットに取り付けられる。CPLD152は、BMC103に連結されたI2Cポートをまた支援(又は提供)して、データストレージデバイス150の各グループのパワーオン/オフを可能にする保護メカニズム(mechanism)との信頼可能なI2C通信を支援(又は提供)できる。CPLD152は、(可能な場合)PMBusを介してPSU(power supply unit:パワー供給部)の情報にアクセスすることにより、最大24個のデータストレージデバイス150のミッドプレーン151上の表示灯(例えば、ドライブ障害LED)をさらにオン(on)し、ロジック制御及びパワーオン/ダウン(power-on/down)のタイミング制御をリセット(reset)する。
【0040】
一実施例によるデータストレージシステム100Aは、PDB(power distribution board:分電盤)153を含む。分電盤153は、スイッチボード(101a、101b)のそれぞれのホットスワップコントローラ(hot swap controller、図示せず)にパワー(例えば、12V)を供給するために余分のPSU(power supply unit:パワー供給部)を含む。ホットスワップコントローラは、スイッチボード101をパワーオフせずに、データストレージデバイス150が、シャーシに取り付けられたり、又はシャーシから着脱されたりする(つまり、データストレージデバイス150は、リムーバブルデータストレージデバイスである)。
【0041】
図2は他の実施例による2Uシャーシにおいて具現された例示的なデータストレージシステムのブロック図である。データストレージシステム100Bは1個又は2個のスイッチボード(111a、111b)、分電盤153及びミッドプレーン161を含む。データストレージシステム100Bが2個のスイッチボード(111a、111b)を包含すると、2個のスイッチボード(111a、111b)はシャーシー内のそれ自身の配置を除外して同一である。システムの構成によっては、データストレージシステム100Bは、ただ1個のスイッチボードを包含する。以下で、2個のスイッチボード(111a、111b)は集合的に又は独立的にスイッチボード111と称す。
【0042】
図1のデータストレージシステム100Aと同様に、データストレージシステム100Bは2Uシャーシに囲まれて、そして2個のスイッチボード(111a、111b)を含む。データストレージシステム100Bは、相異なるタイプのイーサネットスイッチコントローラー107、そしてデータストレージシステム100Aのデータストレージデバイス150のフォームファクターと相異なるフォームファクターを有するデータストレージデバイス250を収容するためのミッドプレーン161のドライブベイを包含できる。データストレージデバイス(150、250)は同一のM.2コネクタを利用できる。
【0043】
構造的な差異に起因して、データストレージデバイス250とインターフェースするためのミッドプレーン161に含まれたSSDコントローラーは、データストレージシステム100Aのミッドプレーンに含まれたSSDコントローラと比較して相異なる構成及び設計を有する。例えば、データストレージシステム100Bのスイッチボード111に含まれたイーサネットスイッチコントローラー107は、ブロードコム社(Broadcom)により設計されて制作されたトライデントシリーズ(Trident series)のスイッチボードであるが、
図1に図示したデータストレージシステム100Aのスイッチボード101に含まれたイーサネットスイッチコントローラー105は、ブロードコム社により設計されて制作されたトマホークシリーズ(Tomahawk series)のスイッチボードである。データストレージシステム100Bのスイッチボード111に含まれたイーサネットスイッチコントローラー107がデータストレージシステム100Aのスイッチボード101に含まれたイーサネットスイッチコントローラー105より安価であるので、データストレージシステム100Bのコストはデータストレージシステム100Aのコストとほぼ同じであったり、少なかったりする。しかし、これはネットワーキングアプリケーションよりストレージアプリケーションにもっと適合する、より大きなサイズのバッファを有する。なお、データストレージシステム100Bのデータストレージデバイス250の個別IOPS性能(例えば、550k IOPS)がデータストレージシステム100Aのデータストレージデバイス150のIOPS性能(例えば、700k IOPS)より低い可能性であるにもかかわらず、同時かつ独立的にアクセスされるデータストレージデバイス150の増加された個数(例えば、データストレージシステム100Bの48個のデータストレージデバイス250対データストレージシステム100Aの24個のデータストレージデバイス150)によりデータストレージシステム100BのIOPS性能はデータストレージシステム100AのIOPS性能と同一であるか、より勝る。
【0044】
一実施例において、データストレージシステム100Bに含まれたデータストレージデバイス250は、一つ以上のNGSFFフォームファクターSSD(本文で、またNF1SSDと称される。)を有する。いくつかの実施例において、NGSFF又はNF1フォームファクターは、またM.3フォームファクターと称される。NF1 SSDはM.2コネクタを利用するものの、幅広いPCB(printed circuit board)を収容するフォームファクターを有して追加的な回路(例えば、FPGA又はASIC)及び/又はNANDパッケージのためのさらに多くの空間を提供する。例えば、NF1 SSDは30.5mmの幅と110mmの長さを有する。一方、標準M.2モジュールは多様な幅(例えば、12、16、22及び30mm)と長さ(16、26、30、38、42、60、80、110mm)を可能とする。一実施例において、各々のデータストレージデバイス250はデータストレージシステム100Bに取り付けられ、同時かつ独立的にアクセスされるSSDの最大個数が48になるように2個のSSDを収容できる。一方、
図1に図示したデータストレージシステム100Aのデータストレージデバイス150は、ただ1個のSSDを有し、データストレージシステム100Aに取り付けられるSSDの最大個数は24である。
【0045】
一実施例によるスイッチボード(111a、111b)のイーサネットスイッチコントローラ107は、イーサネットリピータ(repeater)又はリタイマ(re-timer)と交替される。イーサネットスイッチコントローラ107に含まれたリピータは、高速コネクタ115を介してアップリンクポート114とダウンリンクポートとの間のイーサネット信号のアクティブパススルー(active pass-through)を、データストレージデバイス250に提供する。例えば、第1スイッチボード111aのリピータは、第1スイッチボード111aに取り付けられたeSSD(1-24)のポート(0’s)だけでなく、ミッドプレーン161を介して第2スイッチボード111bに取り付けられたeSSD(1-24)のイーサネットポート(1’s)のイーサネット信号をアクティブパススルー(つまり、長距離の信号伝送のために信号を増幅)する。同様に、第2スイッチボード111bのリピータは、第2スイッチボード111bに取り付けられたeSSD(1-24)のポート(1’s)だけでなく、ミッドプレーン161を介して、第1スイッチボード111a に取り付けられたeSSD(1-24)のイーサネットポート(0’s)のイーサネット信号をアクティブパススルーする。
【0046】
HAモードで、スイッチボード111aのPCIeスイッチ106は、取り付けられたeSSDのU.2コネクタの2つのPCIeレーンの(0、1)を第1イーサネットポート(イーサネットポート0)のためのコントロールプレーンとして利用できる。SASポート0の第1組は、第1イーサネットのために使用される。スイッチボード(111a又はは111b)のPCIeスイッチ106は、すべてのeSSD(1乃至24)のPCIeポートAと通信する。同様に、スイッチボード111bのPCIeスイッチ106は取り付けられたeSSDのU.2コネクタの2つのPCIeレーン(2、3)を第2イーサネットポートのための制御プレーンとして利用する。SASポート1の第2組は、第2イーサネットポート(たとえば、イーサネットポート1)のために使用される。スイッチボード111bのPCIeスイッチ106は、すべてのeSSD(1乃至24)のPCIeポート1と通信する。
【0047】
取り付けられたeSSDの各々は、PCIeスイッチ106とeSSDとの間で樹立された制御プレーン上のPCIeスイッチ106を介してBMC103に、一部のデバイス特定の情報を提供する。制御プレーンを介して伝達される、このようなデバイス特定の情報の例示は、eSSDの発見(discovery)の情報とFRU情報とを含むが、これに限定されない。
【0048】
ミッドプレーン161は、
図1のデータストレージシステム100Aで使用される同じミッドプレーンである。しかし、データストレージシステム100Bは、ただ一つのSSDを含む(例えば、データストレージデバイス150は、1つのPM1725a SSDを含む)データストレージシステム100Aに比べて、同時かつ独立的にアクセスされる、1つ以上のNF1 SSD(例えば、データストレージデバイス250は、2つのSSDを含む)を収容する。データストレージデバイス250に含まれたSSDのそれぞれの最大のI/Oパフォーマンスは550k IOPsある。この場合、データストレージシステム100Bの予想される最大のI/O性能は、2450万IOPs(又は24500000 IOPs:各SSD当たり48×550k IOPs)である。一実施例において、データストレージシステム100Bは、1つのSSDを有する1つ以上のデータストレージデバイス150を、また収容する。つまり、
図1のデータストレージデバイス150は、データストレージシステム100B(M.2コネクタを有する)と逆に互換されるが、
図1のデータストレージシステム100Aで適切に機能する
図2に図示したデータストレージデバイス250を有するように、新しい制御ロジックの設計が必要になる。新しい制御ロジックは、SSDインターポーザカード内で又はデータストレージデバイス250内部的に具現される(例えば、
図4の制御ロジックデバイス351)。1つのSSDは1つのPCIe RP(root port:ルートポート)を要求する。データストレージデバイス250内の2つのSSDは、2つのPCIeルートポートを要求し、これらは新しい制御ロジックによって具現される必要がある。この場合、データストレージシステム100Bの最大性能は、2640万の最大IOPs(26,400,000 IOPs、即ち、24個のeSSD 250、及びeSSD 250内の2つのSSDの各々当たり550k IOPs)から3360万の最大IOPS(33,600,000 IOPS、即ち 、48個のeSSD 250、及びeSSD 250内の2つのSSDの各々当たり700k IOPs)に増加する。システム構成と目標コストに応じて、相異なるI/Oパフォーマンスは、相異なるデータストレージシステム及び異なるデータストレージデバイスを選択することにより、達成される。
【0049】
図3は、一実施例によるデータストレージシステムのミッドプレーン内に含まれた例示的なCPLDのブロック図である。データストレージシステム200は、2つのスイッチボード(201a、201b)、ミッドプレーン251及び各コネクタ281(例えば、U.2コネクタ、M.2コネクタ)を介してミッドプレーン251に取り付けられた複数のデータストレージデバイス250を含む。分電盤267は、PMBus266を介してCPLD252のレジスタにアクセスする。I2C又はスロットマルチプレクサ263は、BMC203を活性化するのに使用されて、一度に1つずつeSSD 250と通信する。BMCマルチプレクサ262は、システムに1つ以上のBMC203が存在するときに使用される。スイッチボードの201のそれぞれは、BMC203と
図1、
図2で示したデータストレージシステム(100A、100B)について説明したように、他の構成要素(図示せず)を有している。図示の便宜のために、
図3は、スイッチボード201内にBMC203だけを図示する。ミッドプレーン251は、CPLD252とEEPROM(electrically erasable programmable read-only memory)チップに格納される、VPD265(vital product data:必須製品データ)を含む。VPD265は、スイッチボード201の製造業者によって設定された製品特定のデータを含む。
【0050】
2つのスイッチボード(201a、201b)が互いの上に配置されること(例えば、
図2)の代わりに並んで配置されると(例えば、
図1)、スイッチボード201のそれぞれとミッドプレーン251との間のインターフェース領域が半分に減少するので、スイッチボード201のそれぞれとミッドプレーン251との間の複数のインターフェースピンを有するコネクタを配置するのに十分な物理的空間がない可能性がある。
【0051】
BMC203は、CPLD252のレジスタ空間にアクセスして取り付けされたeSSD250のそれぞれの構成を設定して、状態を読んで、又は行動(または動作の)を遂行する。CPLD252のレジスタは、構成レジスタ271、活性BMC ID272、スロットID273、およびPRSNT(present:存在)レジスタ274を含むが、これに限定されない。活性BMC ID272は、2つのスイッチボードに(201a、201b)のBMCの(203a、203b)の中で、活性BMCの識別子を示す。スロットID273は、データストレージシステムのドライバスロットの、例えば、1乃至24は、それぞれに対する識別子を示す。
PRSNTレジスタ274は、スロットID273によって識別されたものとして、該当するスロット内の各eSSD250の存在/不存在の状態を示す。
【0052】
システムがブートされたり、リセットされたりした後に、CPLD252は、第2スイッチボード201bがシャーシに存在するか否かに関係なく、第1スイッチボード201a上のBMC203aを活性BMCとしてCPLD252によってデフォルト(default)で指定する。活性BMC203aがパワーダウンされたり故障したりすると、他のBMC203bが活性BMCの役割を有する。デフォルトBMC203aが故障から復旧されると、BMC203aは、BMC203bから活性の役割を受け取る。
【0053】
活性BMCは、活性なBMCとターゲットのeSSD250との間のSMBus/I2C連結を有する特定の適切なスロットID273を有するレジスタの状態を読み取ったり、書き込んだりして各eSSD250を構成する。連結が樹立された後に、BMC203は、コマンドをターゲットのeSSD250のセンサーアドレスに伝送する。BMC203は、またドライブ及びスロットの状態レジスタを読み取り、ターゲットのeSSDに対する意図された行動(又は動作)を遂行する。
【0054】
図4は、一実施例による2個の小型フォームファクタSSDを含む例示的なデータストレージデバイスの図である。データストレージデバイス350は、制御ロジックデバイス351(例えば、FPGA又はASIC)、各SSD(例えば、NF1 SSD)の表面積を提供するための2つの上部の構成要素の領域(353a、353b)、制御ロジックデバイス351のプロセッササブシステム(processor subsystem:PS)及びプログラマブルロジック(programmable logic; PL)のそれぞれに連結されるメモリ(352a、352b)を含む。制御ロジックデバイス351は、他の構成要素、例えば、電圧レギュレータ(voltage regulator)、I2Cスイッチとともにデータストレージデバイス350のPCBの一側面に配置される。制御ロジックユニット351は、コネクタ(例えば、U.2コネクタ、M.2コネクタ)を介して
図2のスイッチボード101上のPCIeスイッチ(例えば、PCIeスイッチ106)と通信し、データストレージデバイス350に含まれた2つの小型フォームファクタのSSDを構成し、動作させる。一実施例に基づいて、データストレージデバイス350は、HAモード又はnon-HAモードで動作するように構成される。PCIe RPが、2つのX4デバイス又はDualPort_En#ピンが表明された(asserted)ことを検出すると、PCIe EP#2とイーサネットポートが活性化される。なお、データストレージデバイス350は、
図1のデータストレージデバイス150として、ホットスワップが可能である(例えば、パワーオフせずに挿入又は削除される)。
図4で、図示したデータストレージデバイス350のブロック配置は、それぞれのSSDの上部の構成要素の領域353が、制御ロジックデバイス351及びメモリ352(そして、他の構成要素)から離隔されて配置されることを図示する。しかし、物理的な配置で、データストレージデバイス350に含まれる2つのSSDの上部の構成要素の領域353は、部分的に又は完全に制御ロジックデバイス351の領域と重なってデータストレージデバイス350が占めるフットプリント(footprint)を減らす。
【0055】
一実施例において、制御ロジックデバイス351は、パワー損失(power-loss又は電力損失)の保護を提供する。一般的なパワー オフサイクルの間に、ホストコンピュータは、時間を割り当てて、データストレージデバイス350に待機コマンドを伝送することにより、データの整合性を保存する。予期せぬパワー損失の場合、データストレージデバイス350の内部バッファ(例えば、DRAM)内のキャッシュ(cache)されたデータが失われる。キャッシュされたデータの損失は、ユーザーがシャーシからデータストレージデバイス350のプラグを抜く場合だけでなく、予期せぬ停電(power outage)から発生する。制御ロジックデバイス351は、予期せぬパワーシャットダウン(power shutdown:電力遮断)によるデータの損失を防ぐ。故障又はホットスワップの検出のとき、データストレージデバイス350に含まれたSSDは、すぐにその中に(例えば、タンタルキャパシタ)貯蔵されたエネルギーを利用して、バッファ内のキャッシュされたデータをフラッシュメモリに伝送するのに十分な時間を提供して、データ損失の防止を保障する。パワー損失からの保護のために、バッファからフラッシュメモリへのデータ伝送のタイミング及びレイテンシ(latency)は、データストレージデバイス350のタイプに応じて変化する。
【0056】
図5は、一実施例による1Uシャーシで具現される例示的なデータストレージシステムのブロック図である。
1Uシャーシは、スイッチボード401及びミッドプレーン451を含む。スイッチボード401は、CPU402(例えば、X86プロセッサ)、BMC403、PCIeスイッチ406、イーサネットスイッチコントローラ407、管理LANポート416、アップリンクポート414、及びミッドプレーン451を介して1つ以上のeSSD450とインターフェースする高速コネクタ415を含む。スイッチボード401は、
図2のスイッチボード(111a、111b)と同一である。
図2の同じスイッチボード(111a、111b)が再使用されるが、ミッドプレーン451は、1Uシャーシで機能するために新しい制御ロジック(例えば、FPGA及びASIC)を必要とする。
【0057】
一実施例によるミッドプレーン451は、一つ以上のエッジSSDコントローラ455を含む。各エッジSSDコントローラ455は、最大4つのデータストレージデバイス450(例えば、eSSD)をサポートし、制御する。
【0058】
一実施例によるミッドプレーン451は、取り付けられたデータストレージデバイス450をパワーオン/オフするためにBMC403のための保護メカニズムとの通信を提供するように構成されたIC2スイッチ452を含む。BMC403は、各グループ内のデータストレージデバイス450が、同じセンサーアドレスを有する制約のために、各データストレージデバイス450と一回に一つずつ通信する。
NF1フォームファクタを有するデータストレージデバイス450は、エッジSSDコントローラの各ドライブスロットに取り付けられる。各エッジSSDコントローラ455は、4つのデータストレージデバイス450の組み合わされた(又は結合された)グループをパワーオン/オフする。
【0059】
図6は、一実施例による
図5のデータストレージシステム400内で利用される例示的なデータストレージデバイスの図である。データストレージデバイス450は、コネクタ(例えば、U.2コネクタ、M.2コネクタ)を介して、
図5のエッジSSDコントローラ455に取り付けられるのに適したNF1フォームファクタ(M.3フォームファクタ又はNGSFFと称されることもある)を有する。データストレージデバイス450は、上部の構成要素の領域553に搭載される(取り付けられる)1つ以上のフラッシュデバイス(例えば、SSD)と通信するように構成される制御ロジックデバイス551(例えば、ASIC)を含む。
【0060】
一実施例において、ラック装着型データストレージシステムは、以下を含む。つまり、1つ以上のスイッチボードを含むシャーシと、一つ以上のスイッチボードとインターフェースするミッドプレーンと、コネクタを利用してミッドプレーンと着脱可能に連結された一つ以上のデータストレージデバイスと、である。一つ以上のデータストレージデバイスの中の少なくとも一つのデータストレージデバイスは、ミッドプレーンとインターフェースするロジックデバイスを含む。ロジックデバイスは、ミッドプレーンと該当するデータストレージデバイスのデバイス特定のインターフェースを提供する。少なくとも一つのデータストレージデバイスは、コネクタのピン上の信号に基づいて、第1プロトコルにより、前記ロジックデバイスを用いて構成され、少なくとも1つのデータストレージデバイスは、ロジックデバイスを利用して、コネクタのピン上の信号の変化に基づいて第2プロトコルにより再構成できる。
【0061】
ロジックデバイスは、FPGA(field-programmable gate array)又はASIC(application-specific integrated circuit)である。
【0062】
コネクタは、U.2コネクタである。
【0063】
コネクタは、M.2コネクタである。
【0064】
一つ以上のデータストレージデバイスは、NF1(new form factor 1)標準と互換可能な少なくとも一つのNF1 SSD(solid-state drive)を含む。
【0065】
一つ以上のデータストレージデバイスは、少なくとも一つのNVMe SSD及びNVMe-oF SSDを含む。
【0066】
ピンは、コネクタの供給者によって定義された、予約のピンである。
【0067】
シャーシは、2Uシャーシであり、ラック装着型データストレージシステムは、2Uシャーシで互いの上に配置される第1スイッチボード及び第2スイッチボードを含む。
【0068】
ミッドプレーンは、24個のSSDを挿入するドライブベイ(drive bay)を有する。
【0069】
ラック装着型データストレージシステムは、1Uシャーシ内の1つのスイッチボードを含む。
【0070】
ラック装着型データストレージシステムは、2Uシャーシで並んで配置される第1スイッチボード及び第2スイッチボードを含む。
【0071】
ミッドプレーンは、一つ以上のデータストレージデバイスの存在を検出し、一つ以上のデータストレージデバイスの動作を管理する1つ以上のスイッチボードのBMC(baseboard management board)とインターフェースを提供するためのプログラマブルロジックデバイスを含む。
【0072】
ミッドプレーンは、48個のSSDを挿入するドライブベイ(drive bay)を有する。
【0073】
ミッドプレーンは、HA(high-availability)モード又はnon-HAモードで動作するように構成可能な一つ以上のデータストレージデバイスを構成する。
【0074】
他の実施例において、プログラマブルロジックデバイスは、以下を含む。つまり、レジスタと、一つ以上のBMC(baseboard management board)マルチプレクサと、スロットマルチプレクサと、である。プログラマブルロジックデバイスは、データストレージシステムのミッドプレーンに集積、具現又は統合され、ミッドプレーンは、一つ以上のデータストレージデバイスを挿入するための複数のコネクタを含むドライブベイ(drive bay)を含む。プログラマブルロジックデバイスは、一つ以上のBMCマルチプレクサのそれぞれのBMCマルチプレクサを利用して、一つ以上のスイッチボードの一つ以上のBMCにインターフェースを提供し、1つ以上のデータストレージデバイスの動作を管理する。一つ以上のBMCマルチプレクサの各々は、スロットマルチプレクサと連結されて一つ以上のスイッチボードのBMCが一つ以上のデータストレージデバイスと同時に通信可能にする。プログラマブルロジックデバイスは、一つ以上のBMCのそれぞれがレジスタにアクセスするようにすることにより、第1プロトコルにより一つ以上のデータストレージデバイスに、デバイス特定のインターフェースを提供する。プログラマブルロジックデバイスは、少なくとも一つのデータストレージデバイスに対応する複数のコネクタのピンの変化に基づいて、第2プロトコルにより一つ以上のデータストレージデバイスの中の少なくとも一つのデータストレージデバイスを再構成できる。
【0075】
プログラマブルロジックデバイスは、データストレージシステムの一つ以上のスイッチボードとインターフェースする。
【0076】
プログラマブルロジックデバイスは、FPGA(field-programmable gate array)である。
【0077】
レジスタは、構成レジスタ、活性BMC ID、スロットID及び存在レジスタを含む。
【0078】
ピンは、前記コネクタの供給者によって定義された予約のピンである。
【0079】
以上、複数のソリッドステートドライブを支援するためのモジュラーシステムアーキテクチャを提供するためのシステム及び方法を具現する多様な実施例を説明した。開示した例示的な実施例から多様な修正及び離脱は、当業者に理解できる。本発明の範囲内に有ると意図した主題は、以下の特許請求の範囲において提供される。
【産業上の利用可能性】
【0080】
本発明は、複数のソリッドステートドライブを支援するためのモジュラーシステムアーキテクチャの具現に有用である。
【符号の説明】
【0081】
100A、100B、400 データストレージシステム
101、101a、101b、111、201,401 スイッチボード
102、402 CPU
103、203、403 BMC
105、107、407 イーサネットスイッチコントローラ
106、406 PCIeスイッチ
114、414 アップリンクポート
115、415 高速コネクタ
116、416 管理LANポート
150、250、350、450 データストレージデバイス
151、161、251、451 ミッドプレーン
152、252 CPLD
153、267 分電盤(PDB)
262 BMCマルチプレクサ
263 スロットマルチプレクサ
265 VPD
266 PMBus
271 構成レジスタ
272 活性BMCID
273 スロットID
274 PRSNTレジスタ
281 コネクタ
351、551 制御ロジックデバイス
352 メモリ
353 上部の構成要素の領域
417 DDR4
452 IC2スイッチ
455 エッジSSDコントローラ
553 上部の構成要素の領域