(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6884844
(24)【登録日】2021年5月14日
(45)【発行日】2021年6月9日
(54)【発明の名称】オフボードフラッシュメモリ
(51)【国際特許分類】
G06F 12/00 20060101AFI20210531BHJP
G06F 12/06 20060101ALI20210531BHJP
G06F 13/16 20060101ALI20210531BHJP
【FI】
G06F12/00 550C
G06F12/00 597U
G06F12/06 524
G06F13/16 510E
【請求項の数】9
【全頁数】12
(21)【出願番号】特願2019-215171(P2019-215171)
(22)【出願日】2019年11月28日
(65)【公開番号】特開2020-149667(P2020-149667A)
(43)【公開日】2020年9月17日
【審査請求日】2019年11月28日
(31)【優先権主張番号】16/352,454
(32)【優先日】2019年3月13日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】508018934
【氏名又は名称】廣達電腦股▲ふん▼有限公司
【氏名又は名称原語表記】Quanta Computer Inc.
(74)【代理人】
【識別番号】100108833
【弁理士】
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100162156
【弁理士】
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】洪 明宏
(72)【発明者】
【氏名】郭 信宏
(72)【発明者】
【氏名】歐 勤富
【審査官】
後藤 彰
(56)【参考文献】
【文献】
特開2014−134981(JP,A)
【文献】
特表2012−503237(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00
G06F 12/06
G06F 13/16
(57)【特許請求の範囲】
【請求項1】
集中型フラッシュメモリモジュールであって、
2つ以上のフラッシュメモリコンポーネントであって、前記集中型フラッシュメモリモジュールから分離された少なくとも1つのサーバデバイスにそれぞれ接続されている、2つ以上のフラッシュメモリコンポーネントと、
前記2つ以上のフラッシュメモリコンポーネントに接続し、前記集中型フラッシュメモリモジュールから分離されたラック管理デバイスに接続するように構成されたフラッシュメモリ管理コントローラ(FMMC)と、
前記FMMCを前記2つ以上のフラッシュメモリコンポーネントに接続し、前記少なくとも1つのサーバデバイスを前記2つ以上のフラッシュメモリコンポーネントに接続するように構成されたコンプレックスプログラマブルロジックデバイス(CPLD)と、
を備えることを特徴とする集中型フラッシュメモリモジュール。
【請求項2】
前記2つ以上のフラッシュメモリコンポーネント及び前記少なくとも1つのサーバデバイスのトポロジを含むルーティングテーブルを記憶するように構成された不揮発性ストレージデバイスをさらに備えることを特徴とする請求項1に記載の集中型フラッシュメモリモジュール。
【請求項3】
前記FMMCは、前記ルーティングテーブルを前記ラック管理デバイスに送信するように構成されていることを特徴とする請求項2に記載の集中型フラッシュメモリモジュール。
【請求項4】
前記2つ以上のフラッシュメモリコンポーネントの各々は、リカバリのためのゴールデンイメージを有することを特徴とする請求項3に記載の集中型フラッシュメモリモジュール。
【請求項5】
サーバシステムであって、
複数のサーバデバイスを収容する少なくとも1つのラックデバイスと、
前記少なくとも1つのラックデバイスに収納されたラック管理デバイスと、
前記複数のサーバデバイスの各々に接続された少なくとも1つの集中型フラッシュメモリモジュールと、を備え、
前記集中型フラッシュメモリモジュールは、
2つ以上のフラッシュメモリコンポーネントであって、少なくとも1つのサーバデバイスにそれぞれ接続されている、2つ以上のフラッシュメモリコンポーネントと、
前記2つ以上のフラッシュメモリコンポーネントに接続し、前記集中型フラッシュメモリモジュールから分離された前記ラック管理デバイスに接続するように構成されたフラッシュメモリ管理コントローラ(FMMC)と、
前記FMMCを前記2つ以上のフラッシュメモリコンポーネントに接続し、前記少なくとも1つのサーバデバイスを前記2つ以上のフラッシュメモリコンポーネントに接続するように構成されたコンプレックスプログラマブルロジックデバイス(CPLD)と、
を有することを特徴とするサーバシステム。
【請求項6】
前記集中型フラッシュメモリモジュールは、前記少なくとも1つのラックデバイスに配置されていることを特徴とする請求項5に記載のサーバシステム。
【請求項7】
前記集中型フラッシュメモリモジュールは、前記2つ以上のフラッシュメモリコンポーネント及び前記少なくとも1つのサーバデバイスのトポロジを含むルーティングテーブルを記憶するように構成された不揮発性ストレージデバイスをさらに備え、前記FMMCは、前記ルーティングテーブルを前記ラック管理デバイスに送信するように構成されていることを特徴とする請求項5に記載のサーバシステム。
【請求項8】
前記2つ以上のフラッシュメモリコンポーネントの各々は、リカバリのためのゴールデンイメージを有することを特徴とする請求項5に記載のサーバシステム。
【請求項9】
前記集中型フラッシュメモリモジュールは、クラウドベースのサーバデバイスに配置されており、
前記2つ以上のフラッシュメモリコンポーネントのうち少なくとも1つは、前記少なくとも1つのラックデバイスのうち2つ以上のラックデバイスのリカバリのためのゴールデンイメージを有することを特徴とする請求項5に記載のサーバシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、ラックサーバシステム内のフラッシュメモリストレージシステムに関する。具体的には、集中型フラッシュメモリモジュールと、ブート、ファームウェア更新、リカバリ及びバックアップの関連する方法と、に関する。
【背景技術】
【0002】
サーバがパワーサイクルされる(power cycled)場合に、中央処理ユニット(CPU)によって行われる最初のアクションは、BIOS(Basic Input and Output System)を起動するメッセージの送信である。次に、BIOSは、POST(Power On Self-Test)と呼ばれる一連のテストを実行して、システムデバイスが正常に機能しているかどうかを確認する。BIOSは、サーバの動作に不可欠な機能を有効にする。BIOSが壊れていると、CPUは機能することができない。しかし、通常のBIOSは、破損した場合に、有効なBIOSイメージを復元することができる。これは、リカバリプログラムを、システム内で書き込み可能(in-system writable)でないフラッシュメモリに記憶することによって実現される。このようにして、リカバリプログラムが破損しないことが保証される。リカバリプログラムは、通常、最小限のシステムハードウェアを初期化して、フラッシュドライブ又は他のリムーバブルメディアから新たなコードイメージを取得する機能を有する単純なコードである。このパワーサイクル及び復元機能は、他のコントローラ(例えば、ベースボード管理コントローラ(baseboard management controller)やメモリスイッチコントローラ等)のファームウェアにも必要である。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明は、集中型フラッシュメモリモジュール(centralized flash memory module)を提供する。
【課題を解決するための手段】
【0004】
集中型フラッシュメモリモジュールが提供される。集中型フラッシュメモリモジュールは、フラッシュメモリコンポーネント(flash memory component)と、フラッシュメモリ管理コントローラ(flash memory management controller:FMMC)と、コンプレックスプログラマブルロジックデバイス(complex programmable logic device:CPLD)と、を含む。各フラッシュメモリコンポーネントは、サーバデバイスに接続されている。サーバデバイスは、集中型フラッシュメモリモジュールから分離されている。FMMCは、フラッシュメモリコンポーネント及びラック管理デバイスに接続するように構成されている。ラック管理デバイスも、集中型フラッシュメモリモジュールから分離されている。CPLDは、FMMCをフラッシュメモリコンポーネントに接続するように構成されている。また、CPLDは、サーバデバイスをフラッシュメモリコンポーネントに接続するように構成されている。
【0005】
いくつかの実施形態では、集中型フラッシュメモリモジュールは、ルーティングテーブル(routing table)を記憶するように構成された不揮発性ストレージデバイスを含むことができる。ルーティングテーブルは、フラッシュコンポーネント及びサーバデバイスのトポロジを含むことができる。FMMCは、ルーティングテーブルをラック管理デバイスに送信するように構成されてもよい。いくつかの実施形態では、各フラッシュメモリコンポーネントは、リカバリ目的のためのゴールデンイメージを含む。
【0006】
サーバシステムも提供される。サーバシステムは、サーバデバイスを収容するラックデバイスと、ラックデバイスに収納されたラック管理デバイスと、各サーバデバイスに接続された集中型フラッシュメモリモジュールと、を含む。上述したように、集中型フラッシュメモリモジュールは、フラッシュメモリコンポーネントと、フラッシュメモリ管理コントローラ(FMMC)と、コンプレックスプログラマブルロジックデバイス(CPLD)と、を含む。
【0007】
いくつかの実施形態では、集中型フラッシュメモリモジュールは、ラックデバイスに配置されている。別の実施形態では、集中型フラッシュメモリモジュールは、クラウドベース(cloud based)のサーバデバイス内に配置されている。各フラッシュメモリコンポーネントは、2つ以上のラックデバイスのリカバリを目的としたゴールデンイメージを含むことができる。
【0008】
サーバシステムも提供される。サーバシステムは、サーバデバイスを収容するラックデバイスと、ラックデバイスに収納されたラック管理デバイスと、各サーバデバイスに接続された集中型フラッシュメモリモジュールと、フラッシュメモリ管理コントローラ(FMMC)と、コンプレックスプログラマブルロジックデバイス(CPLD)と、を含む。集中型フラッシュメモリモジュールは、フラッシュメモリコンポーネントを含むことができる。各フラッシュメモリコンポーネントは、サーバデバイスに接続されている。FMMCは、フラッシュメモリコンポーネントとラック管理デバイスとに接続するように構成されている。ラック管理デバイスは、集中型フラッシュメモリモジュールから分離されている。CPLDは、FMMCをフラッシュメモリコンポーネントに接続し、サーバデバイスをフラッシュメモリコンポーネントに接続するように構成されている。いくつかの実施形態では、集中型フラッシュメモリモジュールは、クラウドベースのサーバデバイス内に配置されている。
【0009】
フラッシュメモリコンポーネントのフラッシュファームウェアイメージを更新する方法も提供される。方法は、フラッシュファームウェアイメージを検証する工程と、第1フラッシュファームウェアイメージを検証されたフラッシュファームウェアイメージに置き換えるように、フラッシュメモリコンポーネントを更新する工程と、を含む。フラッシュメモリコンポーネントは、集中型フラッシュメモリモジュールに収納されている。第1更新が成功したと判別すると、第2フラッシュファームウェアイメージを有効なフラッシュファームウェアイメージに置き換えるように、フラッシュメモリコンポーネントを更新する。第2フラッシュファームウェアイメージは、ゴールデンフラッシュイメージ(golden flash image)に関連する。また、方法は、フラッシュメモリ管理コントローラを用いて、第2フラッシュファームウェアイメージの置き換えに成功したフラッシュメモリコンポーネントを識別する工程を含む。そのフラッシュメモリコンポーネントに接続されたサーバデバイスがオンになる。
【0010】
フラッシュメモリコンポーネントのフラッシュファームウェアイメージをブートする(booting)方法も提供される。方法は、フラッシュメモリコンポーネントのフラッシュファームウェアイメージを無効化する(invalidate)工程を含む。フラッシュメモリコンポーネントは、他のフラッシュメモリコンポーネントのうち集中型フラッシュメモリモジュールに記憶される。方法は、第2フラッシュメモリコンポーネントに記憶されたゴールデンフラッシュイメージ(golden flash image)を用いて、フラッシュファームウェアイメージのリカバリを実行する工程を含む。また、方法は、フラッシュメモリ管理コントローラからコマンドを受信して、フラッシュメモリコンポーネントに接続されたサーバデバイスをパワーサイクルする(power cycle)工程を含む。サーバデバイスがパワーサイクルされる。
【0011】
本発明のさらなる特徴及び利点は、以下の説明に記載され、その一部は、説明から明らかになり、また、本明細書で開示されている原理を実施することで習得することができる。本発明のさらなる特徴及び利点は、添付の特許請求の範囲で特に指摘されている装置の手段及び組み合わせによって実現及び取得することができる。本発明のこれらの特徴及び他の特徴は、以下の説明及び添付の特許請求の範囲から十分に明らかになり、又は、本明細書に記載された原理の実施により習得することができる。
【発明の効果】
【0012】
本発明によれば、各サーバデバイスのデュアルフラッシュデバイスの要求を解決することができる。
【0013】
本発明の上述した利点及び特徴と他の利点及び特徴とが得られる方法を説明するために、上記の原理のより具体的な説明を、添付の図面に示す特定の実施形態を参照することによって行う。これらの図面は、本発明の例示的な態様のみを示しており、本発明を限定するものではないことを理解されたい。本発明の原理は、以下の図面を参照してさらなる特徴及び詳細と共に説明される。
【図面の簡単な説明】
【0014】
【
図1】従来技術において一般的に知られている従来のサーバシステムを示す図である。
【
図2】本発明の一実施形態による例示的なサーバシステムを示す図である。
【
図3】本発明の一実施形態による集中型フラッシュメモリモジュールを示す図である。
【
図4】本発明の一実施形態による例示的なサーバシステムの集中型フラッシュメモリモジュールの例示的な位置を示す図である。
【
図5】本発明の一実施形態によるファームウェアの更新、バックアップ及びリカバリのプロセスを示すフローチャートである。
【
図6】本発明の一実施形態によるサーバシステム内のサーバデバイスをブート処理するプロセスを説明するフローチャートである。
【
図7A】本発明の一実施形態による集中型フラッシュメモリモジュールのビジュアルインジケータ(visual indicator)を示す図である。
【
図7B】本発明の一実施形態によるサーバシステム内の単一のサーバデバイスのデバッグツール(debug tool)を示す図である。
【発明を実施するための形態】
【0015】
添付の図面を参照して本発明を説明する。図面において、類似又は同様の要素を示すために同様の符号が用いられている。図面は縮尺通りに示されておらず、これらは、本発明を単に例示するために提供されている。本発明のいくつかの態様を、例示的な用途を参照して以下に説明する。本発明の完全な理解を提供するために、多くの特定の詳細、関係及び方法が示されていることを理解されたい。しかし、当業者であれば、1つ以上の特定の詳細無しに又は他の方法を用いて本発明を実施することができることを容易に認識するであろう。他の例では、本発明が曖昧になるのを防ぐために、周知の構造又は動作を詳細に示していない。いくつかの動作が異なる順序で、及び/又は、他の動作や事象と同時に発生し得るので、本発明は、示された動作や事象の順序によって限定されない。さらに、本発明による方法を実施するために、示された全ての動作や事象が必要とされているわけではない。
【0016】
図1は、従来技術において一般的に知られている従来のサーバシステム100を示す図である。サーバシステム100は、ラックデバイス10に収容されたサーバデバイス15を含むことができる。各サーバデバイス15は、通常、フラッシュメモリ管理コントローラ(FMMC)30と、複数のフラッシュデバイス20と、を含む。フラッシュデバイス20は、通常、マザーボード16に搭載されている。フラッシュデバイス20は、通常、ラック管理デバイス40に接続されていない。その結果、以下に説明するように、殆どの技術者がラック管理デバイス40と直接インタフェース(interface)するので、フラッシュデバイス20のリカバリを実行することが困難になる。
【0017】
故障したフラッシュデバイス20を交換するために、技術者は、サーバデバイス15のシャーシを開けて、フラッシュデバイス20を物理的に交換しなければならない。何千ものラックデバイス10のデータセンタ内の無数のフラッシュデバイス20を潜在的に物理的に交換する負担を軽減するために、典型的に、同じサーバデバイス15に第2フラッシュデバイス20が収納される。これにより、第1フラッシュデバイス20が破損すると、第2フラッシュデバイス20が作動して(activated)、破損したデバイスをリカバリすることができる。言い換えれば、技術者は、潜在的に機密性の高い情報が漏れるのを抑制するために、フラッシュデバイス20を廃棄する(scrap)前に、手動で、全てのファームウェアを消去し、チップ情報を削除する必要がある。
【0018】
各サーバデバイス15は、認定ユーザのみがデバイス内のコンテンツにアクセスすることを保証するように保護されている。フラッシュデバイス20を保護する一般的な方法は、UEFI(Unified Extensible Firmware Interface)セキュアブート(secure boot)又はセキュアフラッシュ(secure flash)に依存して信頼チェーン(trust chain)を確立することである。さらに、特定用途向け集積回路(ASIC)を各サーバデバイス15に実装して、フラッシュデバイス20のアクティビティを監視して、読み出し、書き込み又はコマンド実行の前に、アクセスを認証することができる。言い換えれば、現在の信頼チェーンの上で高度なセキュリティを実施するために、次の動作を承認する前に、フラッシュデバイス20のアクティビティを監視し、又は、サーバデバイス15上の両方のフラッシュデバイス20の内容を比較するために、別のASICを実装する必要がある。
【0019】
本発明の実施形態は、サーバシステム100に関連する面倒なプロセスに対して独特な解決策を提供する。
図2は、本発明の一実施形態による例示的なサーバシステムを示す図である。
【0020】
図示するように、ラックデバイス10の各サーバデバイス15のフラッシュデバイス220は、集中型フラッシュメモリモジュール(CFMM)250に収納されている。CFMM250には、単一のフラッシュメモリ管理コントローラ(FMMC)230が収納されてもよい。各フラッシュデバイス220は、接続221によって、サーバデバイス15に接続されている。この実施形態では、故障したフラッシュデバイスを中央位置で修復することができる。フラッシュデバイス220が最早マザーボード16に配置されていないので、追加のセキュリティ対策を行わずにマザーボードを直接廃棄することができる。CFMM250内の各フラッシュデバイス220は、ラックデバイス10内の他のサーバデバイス15に再利用可能であるように設計されている。全てのフラッシュデバイス220を管理するには、単一のFMMC230が必要である。また、機能している各フラッシュデバイス220は、故障したフラッシュデバイスのゴールデンイメージ(golden image)(図示省略)とみなされ、これにより、各サーバデバイス15においてデュアルフラッシュデバイスが不要になる。
【0021】
いくつかの実施形態では、CFMM250は、ラックデバイス10内のネットワークスイッチに類似する単なるボックスとして実装されてもよい。さらに、CFMM250は、1つ以上のサーバデバイス15のホットプラグモジュールとして実装されてもよい。転送インタフェース(transfer interface)は、FMMC230に接続するためのケーブル又は無線接続を含むことができる。これにより、FMMC230は、フラッシュデバイス220がブート可能又は書き込み可能であることを保証する(endorsing)前に、リカバリ及びセキュリティ認証を実行することができる。
【0022】
開示される実施形態では、フラッシュデバイス220は、サーバデバイス15のマザーボード16上の空間を占有しない。代わりに、フラッシュデバイス220は、ケーブル、コネクタ又は無線接続221を介してサーバデバイス15に接続される。さらに、各サーバデバイス15は、自動リカバリのためにデュアルフラッシュデバイスを必要としなくなる。
【0023】
図3は、本発明の一実施形態によるサーバシステム200内のCFMM250のトポロジを示す図である。トポロジは、サーバデバイス間の接続のマッピング(mapping)を指すことを理解されたい。フラッシュデバイス220及び各サーバデバイス15のトポロジは、FMMC230のみによって構成することができる。或いは、本明細書で示すように、コンプレックスプログラマブルロジックデバイス(CPLD)235等の補助デバイスをCFMM250内に実装して、トポロジを管理することができる。ルーティングテーブル(図示省略)を不揮発性ストレージデバイス(図示省略)に記憶して、パワーサイクルに亘るトポロジを管理することができる。
【0024】
フラッシュデバイス220及び各サーバデバイス15のトポロジが変更された場合、ルーティングテーブルをラック管理デバイス40に送信することができる。ラック管理デバイス40は、サーバデバイス15の電力状態を制御することができる。また、ラック管理デバイス40は、ルーティングテーブルを参照して、何れのサーバデバイス15がオンライン/オフラインであるか、及び、任意の関連するエラーメッセージを判別することができる。これにより、ラック管理デバイス40は、インジケータ(例えば、「フラッシュメモリオフライン」)を、修復のために技術者に提供することができる。
【0025】
いくつかの実施形態では、CFMM250を、ラックデバイス10内の全てのサーバデバイス15にサービスを提供するために、ラックデバイス10に搭載することができる。別の実施形態では、CFMM250を、データセンタ内の複数のラックデバイス10にサービスを提供するために、ラックデバイス10から離れて配置することができる。CFMM250上の単一のフラッシュデバイス220は、ゴールデンイメージ225として実装することができる。或いは、FMMC230は、任意のサーバデバイス15からゴールデンイメージをコピーし、CFMM250上の故障したフラッシュデバイス220を更新することができる。
【0026】
図4は、本発明の一実施形態による例示的なサーバシステム300のCFMMの例示的な位置を示す図である。CFMM350’はラックデバイス10に対してローカルである(Local FMM)。或いは、CFMM350は、ラックデバイス10に対してバーチャルであってもよい(Remote CFMM)。バーチャルCFMM350が実施される場合、ローカルCPLD+FMMC275は、CFMM250(
図3)に代わってファームウェアイメージを展開するために実施され得る。いくつかの実施形態では、CPLD+FMMC275を、クラウドベースのホストサーバ351内のCFMM350に無線接続することができる。或いは、CFMM350を、クラウドベースのホストサーバとして構成することができる。バーチャルCFMM350及びローカルCFMM350’内のデータは、CPLD+FMMC275によって共有及び管理することができる。このようにして、ローカルCFMM350’が十分である(suffice)場合、サーバシステム300は、バーチャルCFMM350無しに起動(boot)することができる。
【0027】
いくつかの実施形態では、バーチャルCFMM350は、単一のラックデバイス10に限定されない。ラックデバイス10に設置されたサーバデバイス15が同じファームウェアを実行している限り、バーチャルCFMM350を任意のラックデバイス10にルーティングすることができる。さらに、ゴールデンイメージ225を、同じファームウェアを実行している全てのラックデバイス及びサーバデバイス15と共有することもできる。
【0028】
図5は、本発明の一実施形態によるファームウェア更新、バックアップ及びリカバリのプロセス500を示すフローチャートである。ここに示すプロセス500は、
図2及び
図3のサーバシステム200のコンポーネントを参照して詳細に説明される。工程501において、CFMM250内の全てのファームウェアを、FMMC230を介して更新することができる。工程502において、新たなファームウェアイメージが有効であるか否かを検証するために、公開鍵を実装することができる。新たなファームウェアイメージが有効である場合、プロセス500は工程505に進む。新たなファームウェアイメージが無効である場合、プロセス500は工程504に進む。工程504において、FMMC230は、「フラッシュイメージ無効」を記録して、更新プロセス500を終了する。工程505において、更新プロセスが進行する。
【0029】
工程505において、先ず、フラッシュデバイス(n−1)を更新する。予備のフラッシュデバイス(トポロジにおいて事前に指定されている)は、リカバリのために、ゴールデンイメージとして保存される。工程506において、更新されたフラッシュデバイスは、FMMC230に接続される。工程507において、更新されたフラッシュデバイスに関連するサーバデバイス15は、パワーサイクルする準備をする。これらのサーバデバイス15は、FMMC230に報告される。工程508において、サーバデバイス15がパワーサイクルされる。工程509において、ファームウェアが、オペレーティングシステム(OS)にブートされる。工程510において、新たなファームウェアのパスレート(pass rate)がFMMC230によって計算され、記録(logged)される。工程511において、FMMC230は、パスレートが所定の基準よりも高いか低いかを判別する。
【0030】
工程511において、パスレートが所定の基準よりも低い場合、工程513において、FMMC230は、「フラッシュ更新失敗」を記録して、新たなファームウェアを拒否する。工程515において、FMMC230は、自動的に、元のファームウェアに戻す。元のファームウェアは、予約されたゴールデンイメージと同じである。工程511において、パスレートが所定の基準を満たす場合、工程512において、残りのサーバデバイスのファームウェアが更新される。工程514において、FMMC230は、「フラッシュ更新成功」を記録する。工程516において、更新が終了する。
【0031】
図6は、本発明の一実施形態によるサーバシステム内のサーバデバイスをブートするプロセス600を示すフローチャートである。ここに示すプロセス600は、
図2及び
図3のサーバシステム200のコンポーネントを参照して詳細に説明される。
【0032】
プロセスは、工程601で開始する。工程602において、フラッシュデバイス220は、対応するサーバデバイス15に接続する前に、FMMC230によって認証(authenticated)及び承認(endorsed)され得る。また、フラッシュデバイス220がオンになる。信頼のルート(root of trust)を確立するために、FMMC230は、他のサーバデバイス15(
図4)より先にブートされる。ハッシュ署名(hash signature)を計算するために、同じ公開鍵が実装されている。工程603において、ハッシュ署名は、フラッシュデバイス220内の各ハッシュ署名と比較され、有効であるか否かが判別される。ハッシュ署名が有効である場合、プロセス600は工程605に進む。ハッシュ署名が無効である場合、プロセス600は工程604に進む。工程605において、フラッシュデバイス220は、FMMC230を用いてサーバデバイス15に接続される。工程608において、何れのサーバデバイス15がパワーサイクルを準備しているかがFMC230に通知される。工程609において、サーバデバイス15がパワーサイクルされる。工程610において、ブートが完了する。
【0033】
フラッシュデバイス220のハッシュ署名が無効である場合、FMMC230は、「フラッシュメモリ無効」というイベントを記録し、インジケータをオンにする。一時的に
図7Aを参照すると、CFMM701は、各フラッシュデバイスに関連するインジケータを含むことができる。いくつかの実施形態では、インジケータは、LEDデバイスを含むことができる。様々な色のLEDデバイスを利用して、CFMM701を管理する技術者に状態を示すことができる。例えば、緑色光は、フラッシュデバイスがオンラインであることを示すことができる。緑色の点滅光(green blinking light)は、フラッシュデバイスが更新中であることを示す。琥珀色の点滅光(amber blinking light)は、フラッシュデバイスがリカバリモード(recovery mode)にあることを示し、琥珀色光(amber light)は、フラッシュデバイスが故障(リカバリ不能)していることを示す。
【0034】
図6に戻ると、工程606において、フラッシュデバイス220は、有効なイメージに更新される。工程607において、FMMC230は、「フラッシュメモリのリカバリ」を記録し、インジケータをオフにする。リカバリプロセスが完了すると、フラッシュデバイス220は、サーバデバイス15に接続され、パワーサイクルされる。
【0035】
図7Bは、本発明の一実施形態によるサーバシステム内の単一のサーバデバイス15のデバッグツールを示す図である。新製品の導入(NPI)フェーズでは、技術者は、通常、デバッグ(debugging)を実行して新製品を実装する。フラッシュデバイス220を有するモジュール化されたデバイス700は、フラッシュデバイス220がCFMM(集中型フラッシュメモリモジュール)に移動したためにオフラインのパワーオン又は修復が必要なサーバデバイス15をデバッグするために実装されてもよい。サーバデバイス15をデバッグ又は修復するために、単一のフラッシュデバイス220は、モジュール化されたデバイス700に接続され、マザーボード16に接続される。モジュール化されたデバイス700は、ブートするためにフラッシュデバイス220とサーバデバイス15とを接続する通信インタフェースを実装する。
【0036】
以上、本発明の特定の実施形態について説明してきたが、当業者には、より広い態様において本発明から逸脱することなく変更及び修正を行うことが可能であることが明らかであろう。したがって、添付の特許請求の範囲の目的は、本発明の真の趣旨及び範囲内にあるこのような変更及び修正の全てを網羅することである。上述した説明及び添付の図面に記載されている事項は、限定としてではなく、例示としてのみ提供されている。本発明の実際の範囲は、先行技術に基づく適切な視点で見た場合に、特許請求の範囲で定義されることを意図している。
【0037】
本明細書で用いられる用語は、特定の実施形態のみを説明することを目的としており、本発明を限定することを意図していない。本明細書で使用されているように、「一」、「1つの」、「この」という単数形は、文脈が他のことを明確に示さない限り、複数形も含むことを意図している。さらに、「含む」、「有する」やこれらの変化形が、詳細な説明及び/又は特許請求の範囲に用いられており、このような用語の意味は、「備える」という用語と同様に包括的であることを意図している。特に定義されない限り、本明細書で使用される全ての用語(技術用語及び科学用語)は、当業者によって一般に理解されるのと同じ意味を有する。さらに、一般的に使用される辞書において定義されるような用語は、関連技術の文脈におけるこれらの意味と一致する意味を有するものとして解釈されるべきであり、本明細書において明示的に定義されない限り、理想化された意味又は過度に形式的な意味で解釈されない。
【符号の説明】
【0038】
100,200,300…サーバシステム
10…ラックデバイス
15…サーバデバイス
16…マザーボード
20,220…フラッシュデバイス
30,230…フラッシュメモリ管理コントローラ
40…ラック管理デバイス
221…接続
225…ゴールデンイメージ
235…コンプレックスプログラマブルロジックデバイス
250,350,350’,701…集中型フラッシュメモリモジュール
275…CPLD+FMMC
351…ホストサーバ
500,600…プロセス
501〜516,601〜610…工程
700…モジュール化されたデバイス