JP2007525771A - データ操作のためのシステム及び方法 - Google Patents
データ操作のためのシステム及び方法 Download PDFInfo
- Publication number
- JP2007525771A JP2007525771A JP2007500989A JP2007500989A JP2007525771A JP 2007525771 A JP2007525771 A JP 2007525771A JP 2007500989 A JP2007500989 A JP 2007500989A JP 2007500989 A JP2007500989 A JP 2007500989A JP 2007525771 A JP2007525771 A JP 2007525771A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- data manipulation
- manipulation device
- backup
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
Abstract
低プロフィールのフォームファクタハウジングに配置されているデータ操作装置のための配置が与えられる。データ操作装置は、データの記憶を行うために構成されるメモリと、メモリがバックアップされるとき、バックアップスペースを提供するために構成されるバックアップ記憶装置とを含んでいる。
【選択図】図1
【選択図】図1
Description
本発明はデータ操作のためのシステム及び方法と、データ操作装置を含むシステムに関する。
本出願は、その全体がここで参考文献として含まれる2004年2月27日出願の米国暫定特許出願第60/548,110号明細書に基づき、その優先権を得ている。
本発明はデータ操作のためのシステム及び方法を提供することを目的としている。
本発明のデータ操作装置は、低プロフィールフォームファクタのハウジングと、前記ハウジング中に配置され、データの記憶を行うように構成されているメモリと、前記ハウジング中に配置され、前記メモリを制御するように構成されているメモリ制御装置と、前記ハウジング中に配置され、前記メモリ制御装置に接続され、データリクエストを受信して、そのデータリクエストに応答する情報を返送するインターフェースを提供するように構成されているチャンネル制御装置と、前記ハウジング中に配置され、前記チャンネル制御装置に接続され、前記メモリをバックアップするための記憶スペースを提供するように構成されているバックアップ記憶装置とを具備していることを特徴としている。
ここで請求されている本発明は幾つかの実施形態で例示される。これらの例示的な実施形態は図面を参照にして詳細に説明される。これらの実施形態は図面に示されている例示的な実施形態だけに限定されない。同じ参照符号は図面全体を通して類似の部分を表している。
以下説明する処理は、適切にプログラムされた汎用目的コンピュータ単独で、または特別目的のコンピュータと接続して実行されることができる。このような処理は単一のプラットフォームによって、または分配された処理プラットフォームによって実行されることができる。さらに、このような処理及び機能は、特別目的のハードウェアの形態、または汎用目的またはネットワークのプロセッサによって稼動されるソフトウェアまたはファームウェアの形態で実行されることができる。したがって、図面で示され以下説明される動作ブロックは、特別目的の回路であってもよく、或いはプロセッサで実行されるソフトウェアのセクションであってもよい。このような処理で扱われるデータ、または、このような処理の結果として生成されるデータは、技術では通常であるように任意のメモリに記憶されることができる。例示によって説明すると、このようなデータは所定のコンピュータシステムまたはサブシステムのRAMのような一時的なメモリに記憶されることができる。さらに、又はその代わりに、このようなデータは長期の記憶装置、例えば磁気ディスク、再書込み可能な光学ディスク等に記憶されることができる。ここでの説明のために、コンピュータの読取可能な媒体は、このような既存のメモリ技術と、このような構造及びこのようなデータを表すハードウェアまたは回路を含めた任意の形態のデータ記憶機構を含むことができる。
以下説明する処理は、適切にプログラムされた汎用目的コンピュータ単独で、または特別目的のコンピュータと接続して実行されることができる。このような処理は単一のプラットフォームによって、または分配された処理プラットフォームによって実行されることができる。さらに、このような処理及び機能は、特別目的のハードウェアの形態、または汎用目的またはネットワークのプロセッサによって稼動されるソフトウェアまたはファームウェアの形態で実行されることができる。したがって、図面で示され以下説明される動作ブロックは、特別目的の回路であってもよく、或いはプロセッサで実行されるソフトウェアのセクションであってもよい。このような処理で扱われるデータ、または、このような処理の結果として生成されるデータは、技術では通常であるように任意のメモリに記憶されることができる。例示によって説明すると、このようなデータは所定のコンピュータシステムまたはサブシステムのRAMのような一時的なメモリに記憶されることができる。さらに、又はその代わりに、このようなデータは長期の記憶装置、例えば磁気ディスク、再書込み可能な光学ディスク等に記憶されることができる。ここでの説明のために、コンピュータの読取可能な媒体は、このような既存のメモリ技術と、このような構造及びこのようなデータを表すハードウェアまたは回路を含めた任意の形態のデータ記憶機構を含むことができる。
図1は、本発明の1実施形態によるデータ操作装置(DMD)100の高レベルの機能ブロック図を示している。DMD100は、SCSIチャンネル制御装置またはファイバチャンネル制御装置であることのできるチャンネル制御装置140と、技術内で利用可能な他のインターフェース制御装置上に、メモリ120のデータ記憶及びアクセスを制御するメモリ制御装置110と、バックアップ記憶システム130と、パワーPC(210)及びバッテリシステムのような低電力CPU150を具備している。DMD100中のSCSI/ファイバ/インターフェースチャンネル制御装置140は外界とのインターフェースを行うためのものである。DMD100と外界との間の相互動作特性は、DMD100が配備される目的と、配備の文脈におけるDMD100の機能的役割にしたがうことができる。例えば、DMD100が高速度の固体ディスク記憶をエミュレートするために配備されるとき、SCSI/ファイバ(または技術内の他のインターフェース)チャンネル制御装置140は1以上のホストシステムとインターフェースすることができる。この場合、DMD100はSCSI/ファイバチャンネル制御装置140を通して、ホストシステムからデータリクエストを受信し、その後、リクエストされたことに基づいて、高速度でデータをアクセスする。DMD100が指定されたアプリケーションを実行するためのスレーブデータ操作装置として配備されるとき、これはSCSI/ファイバインターフェースチャンネル制御装置140を介して、マスターサーバとインターフェースすることができ、マスターサーバは例えばDMD100に記憶されているデータ中で大量の問い合わせ検索を行うためにDMD100を呼び出すことができる。
DMD100では、チャンネル制御装置140はSCSIまたはファイバチャンネル或いはデータバスへのその他のインターフェースにアクセスするための共通の駆動装置を提供できる。即ち、DMD100の各構成は同一の駆動装置を使用していずれかの任意の共通のインターフェース制御装置を配備できる。制御装置の配備は、配備されたDMDプロダクトが使用される位置および態様にしたがって決定されることができる。
共通の駆動装置はUltra320にしたがうことのできるSCSIインターフェースをサポートすることができ、Fat SCSI、Ultra SCSI、Ultra2 SCSI、Ultra160 SCSIとは後方の適合性を有する。16ビットの並列のSCSIバスは毎秒160メガの転送を行うことができ、これは320Mバイト/秒の同期データ転送レートを生成することができる。共通の駆動装置はまた二重の2Gビットファイバチャンネル(FC)インターフェースをサポートすることができ、1GビットのFCとの後方の適合性を提供する。DMD100はまた商用の回線インターフェース(CLI)用のRS−232インターフェース(図1には示されていない)を提供することができる。
チャンネル制御装置により受信されるデータリクエストはメモリ制御装置110に導かれ、メモリ制御装置110はその後、データリクエストを処理する。データリクエストは読取リクエストまたは書込みリクエストを含むことができ、これは例えば新しいデータのピースを書込むか、既存のデータのピースを更新することを含んでいる。データリクエストが受信されるときのシステム状態にしたがって、メモリ制御装置110は、適切な記憶装置からのデータリクエストを実行できる。例えば、メモリ制御装置110は、メモリ120から、バックアップ記憶装置130から、又はその両者からリクエストされたデータアクセスを直接実行することができる。
データリクエストが終了されるとき、DMD100は、チャンネル制御装置140を通って、応答を、基本をなすリクエストしたホストシステムへ返送する。応答には、リクエストまたは書込み確認に基づいてDMD100から読取られたデータのピースを含むことができ、この応答はDMD100に書込まれるようにリクエストされたデータが、リクエストされたように書込まれたことを示す。読取リクエストに対する応答はまた、読取動作が成功したことを示す類似の確認を含むことができる。
DMD100は異なる目的で配備されることができる。例えば、これは標準的な低プロフィールの3.5”高密度ディスク(HDD)をエミュレートするために使用されることができる。この場合、これはSCSI/ファイババスを介して、このような標準的な装置としてそれ自体を外界に対して識別でき、それによって外界からの相互動作するパーティがDMD100と相互動作するための適切な標準及び広く利用可能な装置または駆動装置を呼び出すことができる。DMD100はその後、装置が固体ディスク(SSD)として使用されることを可能にするため、固体メモリ120を使用することができる。
メモリ制御装置110はメモリ120で実行される動作を制御する。通常の状態下では、ホストシステムからのデータリクエストはメモリ120に関して実行される。メモリロードがまだ終了されていないときのようなある状態では、データアクセス動作はメモリ120以外のどこかから実行される必要がある可能性がある。例えばDMD100が回復システム状態にあるとき、読取リクエストは一時的にバックアップ記憶装置130から実行されることができる。この場合、パワーPC(210)を通して、メモリ制御装置110はまたバックアップ記憶装置130で実行されるデータ動作を制御できる。メモリ制御装置110に関する詳細を図2及び3を参照して説明する。
バッテリ170と関連してバックアップ記憶装置130は自蔵されたおよび非揮発性バックアップ記憶装置をDMD100に提供する。このような記憶プロセスは、例えば、DMD100への電力が低いか中断しているとき、メモリ120に記憶されているデータをバックアップするために使用されることができる。バックアップ記憶装置130はまた診断手順の期間中に得られた診断情報の記憶または記録に使用されることができ、それによってこのような記録された診断情報は、これが例えばシステムの問題を決定するために必要とされるときオフラインで検索またはアクセスされることができる。このような記憶スペースはまたメモリロードがまだ終了していないときに転移メモリスペースとしても使用されることができる。この特徴に関する詳細を図4及び8を参照して説明する。
DMD100中のバッテリシステム170はDMD100に対してオフライン電力を提供する。バッテリシステムは、パワーが不変的に低いか遮断されているとき、メモリからバックアップ記憶装置130へのデータのバックアップを容易にするために重要である可能性がある。バッテリシステムに関する詳細を図5を参照して説明する。
メモリ120は1以上のメモリボード上に組織化された複数のメモリバンクを具備することができる。各メモリバンクは固定したメモリ容量およびダイナミックランダムアクセス(DRAM)を提供できる。異なるメモリバンクはコヒーレントな方法でアドレスされることができる。メモリ120はまた複数の論理装置番号(LUN)構造に組織され、それぞれのこのような構造は可変のブロックサイズをサポートできる。メモリ割当ては種々の規準にしたがってメモリ制御装置110により実行されることができる。メモリ組織に関する詳細を図5および7を参照して説明する。
図2は本発明の1実施形態によるメモリ制御装置110の高レベルの機能ブロック図を示している。メモリ制御装置110はプロセッサ210、PCIXバスインターフェース(I/F)250、エラー補正回路(ECC)270を有するDRAM制御装置260、DRAMコネクタ280を備えている。プロセッサ210は市販の汎用目的の低電力中央処理装置(CPU)を使用して実現されることができる。例えばIBM社の400MHzの32ビットパワーPC405GPrマイクロ制御装置がプロセッサ210として使用されることができ、これは400MHzのクロックレートで600MIPSが可能な実時間クロック240を有する。32ビットパワーPC405GPrマイクロ制御装置(プロセッサ210)はプロセッサローカルバス上に単一の装置を有し、これはある量(例えば32MB)のSDRAM(220)に32ビットのバス幅を提供する。プロセッサ210はまたローカルバス上にその固有のブートフラッシュ装置(230)を有し、これはある量(例えば32MB)の非揮発性フラッシュメモリに16ビットのバス幅を提供する。実時間クロックは、タイムスタンプエラーログ、バッテリ充電のための長い間隔のタイミング、電力損失濾波等のような異なる目的のために設けられることができる。
PCIXバスI/F250はPCIXバスの転送レートおよびバースト長を、メモリ120に必要な転送レートおよびバースト長(例えば二重のデータレート同期ダイナミックランダムアクセス(DDR SDRAM))に適合するために使用されることができる。DRAM制御装置260はメモリアクセスに関する種々の機能を行うことができる。例えば、ECC回路270を通して、単一ビットエラー補正および二重ビットエラー検出を行い、メモリ120からの64ビットデータにわたって8ビットECCをサポートできる。DRAM制御装置260はメモリエラーを検出したときはいつでもプロセッサ210に対して中断信号を生成することもできる。さらに、リフレッシュサイクルおよびリフレッシュサイクルタイミングを提供することもできる。1実施形態では、DRAM制御装置はまた、メモリモードを制御するために信号をメモリバンクに送信することによって、プロセッサ210により制御される電力節約戦略を実行することができる。これについては図3を参照して詳細に説明する。DRAMコネクタ280はメモリ制御装置110とメモリ120との間の物理的な接続を行う。
図3は本発明の1実施形態によるプロセッサ210の高レベルの機能ブロック図を示している。プロセッサ210は、そこにインストールされて稼動するオペレーティングシステム300と、初期化装置365と、PCIXバスインターフェース330と、データアクセスリクエストハンドラ335と、メモリ状態制御装置340と、回復機構345と、メモリバックアップハンドラ350と、読取リクエストハンドラ355と、書込みリクエストハンドラ360とを使用する。プロセッサ210は種々の診断ルーチンを実行する診断機構305と、エラーメッセージをバックアップ記憶装置130に書込むためのエラー記録機構310も含むことができる。
オペレーティングシステム300はLinux(登録商標)のような市販の製品であってもよい。システムのスタートップ(またはリセット)時に、オペレーティングシステム300はバックアップ記憶装置130からロードされることができる。ブート時に、オペレーティングシステム300は種々の初期化を実行するために初期化装置365を呼び出すことができる。初期化装置365はメモリアレイ、バックアップ記憶装置、SCSI/ファイバ/他のインターフェースシステムの初期化を行うことができる。これらの装置のブート画像は初期化期間中にそれぞれの装置にダウンロードされることができる。初期化された装置が適切に機能していることを確実にするために、初期化装置365はある診断ルーチンを実行するために診断機構305を呼び出すことができる。
診断機構305は、幾つかの予め定められた診断構造(320)にしたがって診断ルーチンを実行できる。このような構造はアプリケーションの要求を満たすためにダイナミックに改訂されることができる。DMD100にコンポーネントが付加されるか、そこから除去されるとき、診断構造はそれに従って変更される必要がある。例えば、さらに多くのメモリボードが付加されるならば、診断の構造は付加的な装置を反映することができる。
診断機構305が診断ルーチンを実行するとき、試験されるように構成された装置に信号を送り、その後、試験されたコンポーネントからの応答を幾つかの予想された結果325と比較する。測定された結果が予想された結果と異なるならば、エラーメッセージが発生されることができ、エラー記録機構310は診断情報をバックアップ記憶装置130中に記録するために呼び出されることができる。幾つかの実施形態では、診断機構305はオペレーティングシステム300のシェルを介して手作業の付勢(302)によって呼び出されることもできる。
診断が適切に終了されたならば、初期化装置365は種々の駆動装置からの信号を受信するために登録でき、バックアップ記録装置130からメモリ120へのデータのコピーを含めた復旧動作を行うために回復機構345を呼び出すことができる。復旧動作が終了されるとき、初期化装置365はその後、システム状態をデータアクセス動作に適切な状態に変化できる。
DMD100のシステム状態は複数のフラグ315を通して表明されることができる。例えば初期化装置365がシステム状態を回復へ変更するとき、システムがデータを復旧しているか、またはメモリロードが実行されていることを示す“回復”フラグ315-1を設定することができる。回復機構345がメモリの負荷(ロード)を終了するとき、メモリロードが終了されたことを示す同じフラグ315-1をリセットすることができる。同様に、システムがバックアップ動作を実行しているならば(例えばメモリ120からバックアップ記憶装置130へデータを移動するならば)、“バックアップ”フラグが設定されることができる。異なるシステム状態はデータが現在記憶されている場所を示すことができる。それ故、システム状態に応じて、データリクエストは異なって処理されることができる。
PCIXバスインターフェース330は制御装置140、バックアップ記憶装置130、およびメモリアレイ120と通信するために使用される。制御装置140がホストシステムからメモリ制御装置110へデータリクエストを転送するとき、そのデータリクエストはPCIX接続を介して制御装置140と、プロセッサ210のPCIXバスインターフェース330との間で通信される。
データリクエストを受信するとき、PCIXバスインターフェース330はデータリクエストをデータアクセスリクエストハンドラ335へ送信する。データアクセスリクエストハンドラ335はそのリクエストを解析し、その後、リクエストが読取リクエストであるならば、読取リクエストハンドラ355を付勢し、リクエストが書込みリクエストであるならば、書込みリクエストハンドラ360を付勢する。システム状態にしたがって、読取及び書込みリクエストハンドラ355、360は異なった動作を行うことができる。例えばデータ読取リクエストが回復動作(メモリロード)が終了される前に受信されるならば、読取リクエストハンドラ355は、読取命令をメモリ120へ送る代わりに、バックアップ記憶装置130へ導くことができる。データ書込みリクエストがメモリロードが終了される前に受信されるならば、書込みリクエストハンドラ360は、書込み命令をメモリ120とバックアップ記憶装置130の両者へ送り、その後、バックアップ記憶装置130からのみ確認を受信する。
メモリバックアップハンドラ350はメモリのバックアップ動作を実行する。このハンドラは、持続的な電力損失が検出されるとき、或いはバッテリの電力があるレベルまで低下したときのような、あるシナリオにおいて付勢される。これが付勢されるとき、システム状態がバックアップシステム状態に転移することを示す“バックアップ”フラグを設定することができる。このシステム状態下で、DMD100はホストシステムから受信されたデータリクエストを拒否することができる。このシステム状態は、例えば定常の電力が戻ったことが検出されるまで変化できない。
メモリ状態制御装置340はメモリバンクの電力節約方式を実行できる。本発明の1実施形態では、電力消費およびしたがって熱発生を減少させるために、DMD100は電力節約方式を使用し、その方式では、異なるメモリバンクが異なるモードに置かれ、そのうちのいくつかは低い電力消費をもたらす。電力節約方式の構成はシステム状態に応じている。幾つかの実施形態では、システムが“標準”または“回復”モードであるとき、プロセッサ210はメモリ状態制御装置340を通して、1つのアクチブバンクを除く全てのメモリバンクを“休眠”または“パワーダウン”モードにする。DDR SDRAMメモリにより、ウェイクアップ時間は(SDR SDRAMの30マイクロ秒と比較して)約3マイクロ秒であることができる。このような非常に短いウェイクアップ時間はさらに高速度の記憶アクセスを容易にする。“休眠”モードにあるとき、インアクチブなメモリバンクは依然としてクロッキングを受信できる。電力節約方式はまた、標準的なサイズのDDRチップフォームファクタのスペースにおける記憶容量密度を増加するために開発されている特別なDDRメモリ120のチップにも適用される。この特別なDDRメモリチップは、ダイが物理的に単一フォームファクタ内に位置されているが、各ダイが単一チップとしてアドレスされることを可能にする方法で、多数のメモリダイのスタックにより開発される。
システムが“バックアップ”モードであるとき、プロセッサ210はさらに、インアクチブなメモリバンクへのクロッキングの送信を停止し、インアクチブなメモリバンクを“自己リフレッシュ”動作モードにすることによって電力消費を減少できる。“自己リフレッシュ”モードを出るために長い時間(約20マイクロ秒)がかかるが、このような長いウェイクアップ時間はバックアップ状態では許容可能である。
図4は、本発明の1実施形態によるバックアップ記憶装置130の機能ブロック図を示している。バックアップ記憶装置130はバックアップ記憶ディスク420およびバックアップディスク制御装置410を含んでいる。制御装置410はPCIXバスに接続され、ディスク420との間のデータの記憶およびアクセスの制御を行う。ディスクは回転ディスクまたは高密度ディスク(HDD)として構成されることができる。ディスクの容量はアプリケーションの要求にしたがって決定されることができる。バックアップ記憶装置130はバックアップ目的だけではなく、メモリロードがまだ終了されていないときのメモリとして、記録診断情報またはエラーメッセージ、或いはDDR120メモリに書込まれるミラーデータとして使用されるような他の目的でも使用されることができる。
通常のシステムでは、典型的な回復期間は単位ギガバイト当り1乃至2分間の範囲である。回復期間中、システムは典型的に、任意のデータリクエストに応答することはできない。これは遅延を生じる。本発明の幾つかの実施形態では、バックアップ記憶装置130はメモリのロードが終了される前にメモリとして使用されるので、それは遅延を除去する。さらに、1実施形態では、DMD100はその固有のSDRAMを有するLinuxオペレーティングシステム下で動作しており、これはさらにこの動作速度を改良する。例えばメモリの12ギガバイトでは、動作を終了するために約5分間かかる可能性がある。メモリのロードの終了前に、メモリとしてバックアップ記憶装置130を使用することに関する詳細を図8、15、19を参照して説明する。
バックアップ記憶装置130はまた、故障の場合のエラーメッセージ、診断ルーチンが実行されるときに得られる診断情報をログするために使用されることもできる。システムの故障の場合、バックアップ記憶装置130中にログされているエラー情報は故障の原因を評価するために除去されることができる。
図5は、本発明の1実施形態によるバッテリシステム150の機能ブロック図を示している。バッテリシステム150は組込みのガスゲージ540、DC−DC変換器510、モニタ530、バッテリ充電器520を具備している。モニタ530はガスゲージ540を通して、バッテリ500の状態を観察する。監視結果は、システム状態が変更されるのを必要とするか否かの決定に使用されることができる。例えばバッテリ電力が持続的に低下し、ある低いしきい値に到達すると、システム状態は“正常”状態から“バックアップ”状態へ変更されうことができる。
バッテリ500は7.2vのようなある電圧を出力できる。バッテリ充電器520はこれが必要とされるとき、バッテリの再充電を行う。DC−DC変換器510は例えば7.2vのバッテリ出力電圧または12vのSCSI電力を、システムで必要とされる異なる電圧に変換する。例えばDC−DC変換器510は7.2vまたは12vの入力電圧を採取して、1.2v、1.25v、1.8v、2.5v、3.0vまたは3.3vに変換できる。
本発明の幾つかの実施形態では、バッテリシステム150はメモリ制御装置110中の汎用目的のプロセッサ210により制御されることができる。監視方式はバッテリの寿命を延長させる目的で、汎用目的のプロセッサ210の制御下で、実行されることができる。この方式下では、モニタ530はバッテリ500の電力レベルを監視する。観察された電力レベルは汎用目的のプロセッサ210へ送信される。電力レベルがあるレベル(例えばフルパワー)に到達するとき、汎用目的のプロセッサ210は電力がある低いレベル(例えば90%)に低下するまで、充電を停止できる。これによって、これが既に(バッテリ寿命を短くすることで知られる)フルパワーレベルであるとき、バッテリの連続的な充電が阻止される。さらに、監視された電力レベルが低いしきい値に到達するとき、汎用目的のプロセッサ210は装置の運転を自動的に停止させることができる。
図6は、本発明の1実施形態によるメモリ120の例示的な組織を示している。メモリ120は1以上のメモリボードを備えることができる。各メモリボードは複数のメモリバンクを含むことができる。例えば1つのメモリボードはメモリバンク610-1、610-2、610-3、620-1、620-2、620-3を含むことができる。別のメモリボードはメモリバンク630-1、630-2、630-3、640-1、640-2、640-3を含むことができる。
各メモリボードはまた複数のレジスタおよび、位相ロックループ(PLL)クロックのようなクロックを含むことができる。したがって、1つのメモリボードはクロッキングを各メモリバンク610-1、610-2、610-3、620-1、620-2、620-3へ提供するためにチップ選択/クロック選択装置610と620を含んでいる。他のメモリボードはクロッキングを各メモリバンク630-1、630-2、630-3、640-1、640-2、640-3へ提供するためにチップ選択/クロック選択装置630と640を含んでいる。
メモリ120は複数のLUN構造に論理的に組織化されることもできる。DMD100は、可変のブロックサイズを処理できる多数のLUN構造をサポートできる。異なるLUN構造は異なるブロックサイズを促すことができる。さらに、各LUN構造は異なるブロックサイズをサポートすることができる。このような能力によって、DMD100はそれぞれあるブロックサイズを備えている多数の記憶装置を有するように見えることができる。これによってDMD100は異なるブロックサイズを必要とするホストシステムとインターフェースすることが可能である。
可変のブロックサイズがサポートされるとき、必要とされるブロックサイズを有するホストシステムからのデータリクエストは、最初に、一致するブロックサイズを有するLUN構造にマップされることができる。図7は本発明の1実施形態による種々のフラグ315および多数のLUN構造700に関するデータアクセスリクエストハンドラ335の高レベルの機能ブロック図を示している。前述したように、データリクエストは(例えばメモリ120から、バックアップ記憶装置から、又はその両者から)の異なる内部記憶媒体中で処理されることができ、システム状態に基づいて決定が行われることができる。さらに、データリクエストが処理される場所に応じて、適切なLUN構造がしたがって識別されることができる。
図7に示されている例示的な実施形態では、メモリは例えばM個のLUN構造、即ちLUN1 700-1,LUN2 700-2,…,LUNM 700-Mに組織化される。データアクセスリクエストハンドラ335は、システムフラグ検索装置710、LUN初期化装置720、システム状態決定装置730、LUNマッピング機構740、動作装置決定装置750、種々のデータアクセス演算子を具備し、種々のデータアクセス演算子は例えばメモリ読取演算子760-1、メモリ書込み演算子760-2、バックアップ記憶読取演算子770-1、バックアップ記憶書込み演算子770-2を含んでいる。
LUN初期化装置720は多数のLUN構造700を初期化することができる。例えば、システムが最初にセットアップされるとき、全てのLUN構造は統一したまたは標準的なブロックサイズ(例えば512バイト)で設定されることができ、この初期ブロックサイズは異なるブロックサイズ値を有するデータリクエストを満足するために後に変更されることができる。例えば、幾つかのシステム(例えばUnisys製品)は180バイトのブロックサイズで動作することができ、幾つか(例えばTandem製品)は514バイトのブロックサイズで動作することができる。
データリクエストを受信するとき、データアクセスリクエストハンドラ335は最初に、システムフラグ検索装置710を介して、フラグ315にアクセスすることができ、これはシステムの動作状態を示している。システムフラグ検索装置710はその後、現在のシステム状態を識別するために、検索されたフラグ値をシステム状態決定装置730へ転送することができる。決定されたシステム状態に基づいて、動作装置決定装置750は、読取/書込み動作がどこの装置(例えばメモリ120またはバックアップ記憶装置130、或いはその両者)から/どこの装置へ行われるかを決定することができる。例えば、システムフラグが標準のシステム状態を示すとき、動作装置決定装置750は動作装置としてメモリ120を選択する可能性があり、即ち読取リクエストのいずれかまたは書込みリクエストであるデータリクエストはメモリ120から処理される。
メモリのロードがまだ終了されていないことを示すシステムフラグ“回復”が出されるとき、オペレーティングシステム決定装置750は読取及び書込みリクエストを異なって処理するように選択することができる。例えば、読取られるデータが依然としてバックアップ記憶装置130にある可能性があるので、読取リクエストはバックアップ記憶装置130から実行されることができる。書込みリクエストに関しては、システムは、データの統合性を確実にするために、同一のデータをメモリ120とバックアップ記憶装置130の両者に書込むことができる。システム状態決定装置730により決定されるシステム状態は、データリクエストを特定のLUN構造へマップするために、LUNマッピング機構740により使用されることもできる。
読取/書込み動作がどこから/どこへ実行されるかに関する決定に基づいて、動作装置決定装置750は適切なデータリクエスト演算子を呼び出すことができる。例えば、データ読取/書込みリクエストがメモリ120から処理されるとき、メモリ読取/書込み演算子760-1/760-2が付勢されることができる。データ読取/書込みリクエストがバックアップ記憶装置130から処理されるとき、そのバックアップ読取/書込み演算子770-1/770-2が付勢されることができる。
さらに、LUNマッピングの結果にしたがって、LUNマッピング機構740はまた、関連情報を、呼出された演算子へ供給することができる。例えば、LUNマッピング機構740は、マップされたLUN構造に関する情報を、付勢された演算子に転送することができる。
付勢された演算子が幾つかのデータ動作命令を適切な装置へ送信し、データ動作が終了された後、その装置から応答を受信することができる。このような応答には、(例えばデータが読み取られるとき)データのピース、確認(例えば書込みの確認)、または(例えば読取動作または書込み動作からの)エラーメッセージの返信を含むことができる。応答は動作命令が送信されたそれぞれの装置から来る。例えば、対応する読取リクエストを満足させるためにデータのピースを読み取るとき、読取演算子(メモリ読取演算子760-1またはバックアップ読取演算子770-1)は、(例えばLUNマッピング機構740により決定される特別なLUN構造内の)適切なアドレスと共に読取命令を、基本をなす動作装置へ送信することができる。読取が終了されるとき、読取演算子は幾つかの確認メッセージと共に、または確認メッセージなしに、動作装置から読取られたデータを受信できる。受信されたデータ及び確認は、それらが存在するならば、リクエストしているホストシステムヘ転送されるように、PCIXバスインターフェース330(図3参照)へ送信される。動作中にエラーが生じたとき、読取演算子もまたエラーメッセージを受信し転送することができる。
書込み動作が呼び出されるとき、動作がメモリ120のみから(例えば正常のシステム状態において)、またはメモリ120とバックアップ記憶装置130の両者から(例えば回復システム状態において)処理されるかに応じて、書込み演算子は異なる動作をすることができる。正常のシステム状態ではメモリ書込み演算子760-2が書込み動作のために呼出される。メモリ書込み演算子760-2は最初に、書込まれるデータと共に書込み命令を送信し、その後、メモリ120から確認またはエラーメッセージを受信するのを待機する。応答を受信すると、メモリ書込み演算子760-2は、受信された情報をPCIXバスインターフェース330へ転送する。
(以下の図8を参照して説明する)幾つかの他のシステム状態では、書込み動作はメモリ120とバックアップ記憶装置130との両者で行われる。この場合、メモリ書込み演算子760-2とバックアップ書込み演算子770-2の両者が呼び出される。両方の書込み演算子は、書込み命令(例えば書込む場所)と共に、書込まれるデータをそれらのそれぞれの動作装置(即ち、メモリ120とバックアップ記憶装置130)へ送信する。メモリ120はバックアップ記憶装置130よりも非常に高速度で動作できるので、バックアップ書込み演算子770-2だけがバックアップ記憶装置130から受信された書込み確認またはエラーメッセージをPCIXバスインターフェース330へ転送するように構成されることができるが、メモリ書込み演算子760-2もメモリ120からこのような情報を受信できる。
図8は、本発明の1実施形態による、DMD100における異なる動作条件下の種々の例示的なシステム状態および転移を示している。状態転移表800は行及び列を含んでいる。行は現在のシステム状態810に対応し、列は現在の状態が異なる状態に転移するか同じシステム状態のままである事象または状態820に対応している。現在のシステム状態が行により表され、事象/状態が基本をなす列により表されるとすると、特定の行及び特定の列に対応する表800の各エントリは、次のシステム状態を表す。
表800では、(1)と符号を付されたブート状態810-1、(2)と符号を付された回復状態810-2、(3)と符号を付されたサービス中のバックアップ状態810-3、(4)と符号を付されたサービス中の状態810-4、(5)と符号を付されたサービス中のバックアップ係属状態810-5、(6)と符号を付された回復バックアップ係属状態810-6、(7)と符号を付されたバックアップ状態810-7、(8)と符号を付されたアイドル状態810-8、(9)と符号を付されたオフ状態810-9を含む9つの例示的なシステム状態が存在する。メモリアレイ故障820-1、バックアップ故障820-2、電力なし820-3、電力オン820-4、バッテリ出力低下/バックアップ820-5、バッテリ出力上昇/バックアップ820-6、電力損失820-7、持続的電力損失820-8、持続的電力帰還820-9を含む、システム状態の転移をトリガーできる種々の事象/状態が存在する。
各システム状態は特定のシステム動作状態を示している。例えば、ブート状態(1)はDMD100が例えば電力オン、リセットによって、または幾つかのソフトウェア手段を介して、トリガーされるブートプロセスを受けていることを示す。回復状態(2)はDMD100が、バックアップ記憶装置からメモリへデータを回復しているか、または単にメモリをロードしていることを示している。サービス中バックアップ状態(3)はメモリ120が(例えばメモリ故障、バックアップ用のバッテリが不十分であるため)適切に機能しておらず、データリクエストがバックアップ記憶装置からサービスされていることを示している。サービス中状態(4)はDMD100が正常の状態下で動作していることを示している。即ち全てのデータリクエストはメモリ120から処理される。
サービス中のバックアップ係属状態(5)はデータリクエストがサービスされているが係属バックアップを有する状態を示すことができる。即ちデータリクエストは依然として、メモリ120から処理されているが、監視され、近い将来にバックアップ手順をトリガーする可能性がある幾つかの状態(例えば電力の低下)が存在する。回復バックアップ係属状態(6)は、システムがメモリのロードを行っており(バックアップ記憶装置からメモリへデータを回復しており)、状態が持続的に悪いならば(例えば持続的な電力損失)、幾つかの既存の状態/事象(例えば電力の損失が)が近い将来にバックアップ手順をトリガーする可能性があることを示している。バックアップ状態(7)は単に、メモリ120からバックアップ記憶装置130へデータを移動することにより、バックアップ手順を実行していることを示している。アイドル状態(8)は、システムが現在アイドルであり、何等のデータリクエストも受取っていないことを示している。オフ状態(9)はDMD100が現在オフであることを示している。
各システム状態は、データリクエストを処理する方法に関して、DMD100に異なる動作をさせることができる。例えば、システム状態中のサービス中状態(4)およびサービス中のバックアップ係属状態(5)では、データリクエストは常にメモリ120からサービスされる。システム状態中の回復状態(2)、サービス中のバックアップ状態(3)、回復バックアップ係属状態(6)では、データリクエストはリクエストの性質および、リクエストされたデータの位置にしたがって、メモリ120、またはバックアップ記憶装置130、或いは両者からサービスされることができる。システム状態中のブート状態(1)、バックアップ状態(7)、アイドル状態(8)、オフ状態(9)では、データリクエストはサービスされない。
システム状態は、ある状態/トリガー事象下で変化する。固定された現在の状態では、DMD100は、異なる事象が生じるとき、異なるシステム状態に転移できる。例えば、ブート状態(1)では、メモリの故障(820-1)が生じるならば、システム状態はブート状態(1)からサービス中のバックアップ状態(3)に転移する。即ち、全てのデータリクエストは、メモリアレイの故障のために、バックアップ記憶装置130から処理される。ブート期間中にバックアップ記憶装置130の故障(820-2)が生じるならば、ブートプロセスはバックアップ記憶装置130なしでは、さらに動作することができないので、システム状態はブート状態(1)からアイドル状態(8)へ転移できる。現在のシステム状態が正常(サービス中状態(4))であり、電力損失(820-7)が検出されたならば、システム状態はサービス中のバックアップ係属状態(5)へ転移できる。この状態では、システムは依然としてサービス中であるが、可能な係属バックアップが存在する。この状態では、電力損失が持続している(820-8)ならば、システム状態はさらにバックアップ状態(7)に転移する。空欄のエントリを有しているあるセルが表800に存在しており、これは現在の状態では、列により表されている基本をなす事象が適用されないことを示している。例えば、システムがオフ状態であるとき、メモリアレイの故障820-1およびバックアップ記憶装置の故障820-2のような、ある事象はシステム状態に影響しない。
図9は、本発明の1実施形態によるDMD100の異なるコンポーネントの例示的な組織的配置900を示している。例示的な組織的配置900はSCSI/ファイバ制御装置ボード(SCB)910、DRAM制御装置ボード(DCB)940、メモリボード(MB)950、バックアップ記憶スペースを提供する高密度ディスク930、バッテリ920を含む5つの別々の物理的部分を含んでいる。
前述した同じ論理組織の幾つかのコンポーネントは異なるボード上でグループ化されることができる。例えば、バックアップ記憶ディスク制御装置410は、取付け(ATA)制御装置(7)を使用して実現されることができ、図9に示されている例示的な配置では、これは(例えば((9)として符号を付されている)東芝1.8” 20GBの高密度ディスクを使用して構成される)バックアップ記憶ディスク930から物理的に別々に配置されることができる。同様に、DC−DCコンバータ510(図5参照)、バッテリ充電器520、及びモニタ530は、バッテリ500およびガスゲージ540とは分離されてSCB910上に配置されてもよい。サイズ、熱消費、コンポーネントが容易に置換されることができる位置に配置される必要があるか否かのような、論理的または機能的な組織化の考察以外の要因に基づいて、例示的な配置が行われることができる。その代わりに、またはそれに加えて、物理的な組織的配置は、システム全体のコンパクトさに関する考察に基づいて設計されることができる。
SCSI/ファイバ制御装置ボード(SCB)910はATA制御装置チップ7と、SCSI/ファイバ制御装置チップ6と、電力管理装置および変換器チップ3とを含んでおり、電力管理装置および変換器チップ3はDC−DC変換器、バッテリ充電器、モニタを含んでいる。DRAM制御装置(DCB)940は、汎用目的のプロセッサチップ(例えば32ビットの405GPr)12、SDRAMチップ16、ブートフラッシュメモリ17、実時間クロック18、フィールドプログラム可能なゲートアレイ(FPGA)チップ11を含んでおり、このフィールドプログラム可能なゲートアレイ(FPGA)チップ11はPCIXバスI/F11-1およびECC回路11-2を有するDRAM制御装置の両者としてプログラムされている(図2を参照して説明)。
各ボードはまた、異なるボード及びコンポーネント間での接続を容易にするための、ある異なる部分を含むことができる。例えばSCB910は、ATA制御装置チップ7とバックアップディスク9との間の接続を容易にするATAコネクタ8と、SCB910とDCB940との間のPCIX接続を容易にするPCIXコネクタ10と、SCSI/ファイバ制御装置とSCSI/ファイババックプレーン(1)との間の物理的な接続を行うSCSI/ファイバコネクタ2と、SCB910をバッテリ5へ接続するバッテリコネクタ4とを含んでいる。同様に、DCB940は、SCB910上のPCIXコネクタへの接続を容易にする対応するPCIXコネクタ10と、DRAM制御装置11-2とメモリボード950との間の接続を行うDRAMコネクタ19と、外部とDMD100との間に直列接続点を設けるRS232コネクタと、システム状態およびアクティビティを示す手段を与えるLED灯14と、外部からシステムをリセットする要求を満たすリセットボタン15とを含んでいる。
1実施形態にしたがって、FPGA11はPCIXコネクタ10に直接接続されている。これによって、DMD100は汎用目的のプロセッサ12を通らずに高速度の記憶アクセスを実現するためにその搭載FPGAを通してデータ転送を行うことが可能である。さらに、PCIXコネクタ10もまたSCSI制御装置6に接続されているので、FPGA11は、汎用目的のプロセッサ12を通らずに、直接、外部ソースとの間でデータを転送することができる。このことにより、記憶装置が高速度でアクセス可能であるだけでなく、共用もされることができる。さらに、汎用目的のプロセッサ12は、商用のオペレーティングシステム(例えばLinux)と共に配備される市販のCPUを使用して構成されることができるので、DMD100は完全なコンピュータであり、これは通常の汎用コンピュータで通常動作する種々のアプリケーションをサポートできる。この場合、アプリケーションは汎用目的のプロセッサ12で動作でき、アプリケーションに必要なデータはプロセッサ12のSDRAMに転送されることができる。
図10乃至13は、本発明の1実施形態によるメモリボードとそれらの内部組織の例示的な配置を示している。1実施形態では、メモリ120は、それぞれ3または6つのメモリバンクを含むことができる1以上のメモリボードを具備することができる。1つのメモリボード内および異なるメモリボード内の異なるメモリバンクは、統一したアドレス及びクロッキングを行うために、ある方法で接続されることができる。図10は2つの例示的なメモリボード、即ちメモリボード0の1010とメモリボード1の1020がDCB940上のDRAM制御装置と接続される態様を示している。メモリボード0の1010は6つのメモリバンク、即ち、バンク0の1010-1、バンク1の1010-2、バンク2の1010-3、バンク3の1010-4、バンク4の1010-5、バンク5の1010-6を有している。6つのバンクは共に連結され、メモリボードコネクタ1005-1を通してDCB940に接続されている。同様に、メモリボード1の1020は6つのメモリバンク、即ち、バンク0の1020-1、バンク1の1020-2、バンク2の1020-3、バンク3の1020-4、バンク4の1020-5、バンク5の1020-6を有している。メモリボード1の1020上の6つのバンクは同様に共に連結され、メモリコネクタ1005-2を介してメモリボード0の1010に接続されることができる。メモリボード1の1020はメモリボード0の1010を通してDCB940に接続されている。
メモリボードコネクタ1005-1と1005-2は異なるタイプの信号通過を可能にする。例えばこれはデータの通過を可能にする。これはまた、アドレス情報の通過を可能にできる。さらに、これは制御信号の通過を可能にする。幾つかの実施形態では、メモリボードコネクタは、64ビットデータ及び8ビットECCと、データストローブと、データマスク信号とを有する72ビットデータバスを含んでいる。これらは類似した方法で経路を設定されることができる。メモリボードコネクタはまたアドレスバスと、制御信号用の付加的なパスも含んでいる。アドレス及び制御信号はレジスタバッファによって各ボードで終端されることができ、このレジスタバッファはボードに特有のクロックによりクロックされることができる。
図11は、本発明の1実施形態によるメモリボードのレジスタバッファの例示的な配置を示している。図11では、各メモリボードは1つのレジスタバッファを有する。メモリボード0 1010はレジスタバッファ1110を有し、メモリボード1 1020はレジスタバッファ1120を有する。それぞれ基本を成すメモリボードに指定されたアドレス及び制御信号を受信するために、異なってクロックされることができる。各メモリボードは異なるクロック(CK)、クロックエネーブル(CKE)信号、チップ選択(CS)信号を使用することができる。各メモリバンクは別々のCKEとCS信号を有することができる。各メモリボードは、位相ロックループ(PLL)クロックとして構成されることができる1以上のクロックを有することができる。
図12は、本発明の1実施形態によるメモリボード中のPLLクロックの例示的な配置を示している。この例では、メモリボード1200は2つのPLLクロック1210と1220とを有し、それぞれ例えば3つのメモリバンクとして動作する。例示的な実施形態では、PLLクロック1210はクロッキングバンク3の1200-4と、バンク4の1200-5と、バンク5の1200-6との機能を行い、PLLクロック1220はクロッキングバンク0の1200-1と、バンク1の1200-2と、バンク2の1200-3の機能を行う。
DCB−MB−MBを横切って通過する経路選択信号に適応するために、メモリボードはピンシフトを容易にするように設計されることができる。本発明の1実施形態による2個のメモリボード間の1つの例示的なピンシフト方式が図13に示されている。6個のメモリバンク(A、B、C、D、E、F)を有する2個のメモリボード間で信号を経路選択するために、各メモリボードは各側に28個のピンを有することができる。メモリボード0の1010をDCB940へ接続するために使用される28個のピンの中で、14個のピンがDCB940とメモリボード0の1010との間の信号の経路選択に使用され、他の14個のピンがDCB940とメモリボード1の1020との間の信号の経路選択に使用される。
メモリボード0の1010への接続専用である第1のセットの14個のピンの中で、6個のピンは、6個のメモリバンク(CKE0A、CKE0B、CKE0C、CKE0D、CKE0E、CKE0F)のそれぞれのCKE信号用であり、6個のピンは、6個のメモリバンク(CS0A、CS0B、CS0C、CS0D、CS0E、CS0F)のそれぞれのCS信号用であり、2個のピンは2つのPLLクロックをクロッキングするためのものであり、ここで、PLL1310のクロッキング用のCLK0ABはバンクA、B、Cに応答し、PLL1320のクロッキング用のCLK0CDはバンクD、E、Fに応答する。これらのピンは(第1の位置として最も右側から開始する)(CKE0A−CKE0F用の)位置7−12と、(CKEABとCKE0CD用の)位置15−16と、(CS0A−CS0F用の)位置17−22に位置される。
残りの14個のピンはDCB940とメモリボード1の1020とを接続するためのものである。位置1−6の6個のピンは、メモリボード1の1020上の6個のバンクのクロックエネーブル信号CKE1A−CKE1F用のものであり、位置13−14の2個のピンは(メモリボード1の1020のそれぞれクロッキングバンクA、B、C、D、E、Fに対して応答する)2つのPLLクロック1330と1340のための2つのクロッキング信号CKE1AB−CKE1CD用のものであり、位置23−28の別の6個のピンは、第2のボード1020上の6個のバンクに対応するチップ選択信号CS1A−CS1F用のものである。第2のメモリボード1020に専用の信号は、対応する信号が第1のメモリボード1010へ経路選択される同じピン位置に到達するように、第1のメモリボード1010を通って導かれる。即ち、クロックエネーブル信号CKE1A−CKE1Fは(CKE0A−CKE0Fの位置と同一の)位置7−12においてメモリボード1の1020へ経路設定され、クロッキング信号CLK/ABおよびCLK/CDは(CLK0ABおよびCLKCDに対して同一の)位置15−16においてメモリボード1の1020へ経路設定され、チップ選択信号CS1A−CS1Fは(CS0A−CS0Fと同一の)位置17−22においてメモリボード1の1020へ経路設定される。
図14aは、本発明の1実施形態によるSCSI制御装置ボードSCB1400の例示的な物理的レイアウトを示している。SCB1400は、456のピンを有する53C1030TのようなSCSI制御装置チップ1404、SCSI制御装置から熱を抽出するために、SCSI制御装置の近く(例えばSCSI制御装置の上部の)に置かれた随意選択的なヒートシンク1401、チップHP1371NのようなATA制御装置1406、東芝1.8”HDDディスクのようなバックアップ記憶ディスク1403、(HDDディスク1403の下の)ATAコネクタ1409、バッテリモニタ及び充電器を有するDC−DC電力変換器1402、ホストシステムがSCSI制御装置と通信するためのホストSCSIコネクタ1408(またはSCSIバックプレーン)、SCSIバックプレーンをSCSI制御装置へ接続するSCSIコネクタ1408-1、1408-2、1408-3を含んでいるが、それらに限定されない複数のコンポーネントを有している。SCB1400は発振器1405、100個のピン1407-1および1407-2を有する2個のPCIXコネクタPK5も含むことができる。種々のコンポーネントの例示的なサイズ及びそれらの動作電力レベルが図14aに示されている。
図14bは、本発明の1実施形態によるDRAM制御装置ボードまたはDCB1410の例示的な物理的レイアウトを示している。DCB1410は、456個のピンを有する405GPrのような汎用目的のプロセッサチップ1418、SDRAMチップ1411、フラッシュメモリチップ1412、実時間クロックチップ1413、PCIXバスI/FおよびDRAM制御装置としてプログラムされているFPGAチップ1414、RS232インターフェース1415、DRAMコネクタ用の2つのスロット、即ちPAK5-140スロット1416-1およびPAK5-120スロット1416-2、SCB1400へのPCIXコネクタ用の2つのスロット、即ちSCB1400上の対応部1407-1および1407-2に対応するPK5 1417-1および1417-2を物理的に構成している。同様に、DCB1410の異なるコンポーネントに対する例示的なサイズ及びそれらの動作電力レベルも示されている。
図14cは、本発明の1実施形態によるメモリボード1420上のメモリチップの例示的な物理的レイアウトを示している。この例では、9個のスタック(1421-1,…,1421-9,1422-1,…,1422-9,1426-1,…,1426-9,1427-1,…,1427-9)を有する各行を備えた4個の別々の行(1421、1422、1426、1427)にそれぞれ配置されている3チップの全体で36のメモリスタックが存在している。スタックの4つの行は物理ボードの各側に存在する18のスタックの2つのグループに集合される。2つのグループの間には、2つのPLLクロック1424、レジスタバッファ1423、DRAMコネクタ用の2つのスロット、即ち(DCB1410上の対応するコネクタ1416-1と1416-2に対応する)PAK5-140 1425-1とPAK5-120 1425-2が存在する。各コンポーネントの例示的な物理的サイズおよびそれらの動作電力レベルが示されている。各メモリスタックは、ある数のバイトのメモリ容量を表すことができる。前述したように、DMD100には多数のメモリボードが含まれている。
図14dは、本発明の1実施形態によるコンパクトボックス1430中のDMD100の異なるボードの例示的な物理的配置を示している。熱の減少、コンポーネントの置換の容易さ、接続の効率について考慮して、コンパクトな方法で配置されたボード及びコンポーネントの複数の層が存在する。本発明の1実施形態によれば、DMD100の全てのコンポーネントは、任意の装置の任意の駆動ベイ中に配備可能である低プロフィールの3.5”フォームファクタでパッケージされることができる。上部の2つの層は2つのメモリボード1420-1と1420-2を含んでおり、それぞれ図14cを参照して説明したような、メモリチップ配置を有している。2つのメモリボード1420-1と1420-2は対応するDRAMコネクタ1425-1と1425-2またはPAK5 140とPAK5 120コネクタを介して接続される。メモリボードの下にはDBC1410が存在し、それは上方のメモリボード(1420-2)にそのDRAMコネクタ1416-1と1416-2を介して、メモリボード1420上のそれらの対応部分、即ち1425-1と1425-2(図14c参照)に接続している。
DCB1410の下にはコンパクトボックス1430の底部にSCB1400が位置している。汎用目的のプロセッサチップ405 GPr(1418)はDCB1410の底部に設置されている。内部バックアップディスク1430は、その下にATAコネクタ1409を有するSCB1400の左側に存在する。SCSI制御装置チップ1404は、上部にヒートシンク1401を有するSCB1400の右側に存在する。ホストSCSIコネクタ1408はコンパクトボックス1430の右下に位置されている。SCSIコネクタ1408-1、1408-2、1408-3はホストSCSIコネクタ1408をSCSI制御装置チップ1404へ接続する。SCB1400は、両ボード上の対応部分(1407-1対1417-1と1407-2対1417-2)として位置され整列されているPCIXコネクタを介してDCB1410と通信する。PCIXコネクタの2つの対はSCSI制御装置チップ1404とヒートシンク1401の前方に整列されている。ATA制御装置1404はこれらのコネクタの後方にある。
2つのメモリボード1420-1と1420-2およびDCB1410はSCB1400よりも狭く、コンパクトボックス1430の右側方向に設置されている。これらの小さいボードの左側にはバッテリ1431が存在し、これはSCB1400の左上にある。
図14eおよびhは、本発明の1実施形態によるDMD100ボックスの異なる方向から見た構造図を示している。図14eでは、DMDボックス1440は熱の散逸を助けるために分散して設けられた種々の穴を有する。この図では、バッテリ1431は右上にあり、2つのメモリボード1420-1と1420-2およびDCB1410の近くであり、SCB1400上のバックアップ記憶ディスク1403および(バックアップ記憶ディスク1403下の)そのATAコネクタ1409の上方に配置されている。ホストSCSIコネクタ1408はSCB1400上のバックアップ記憶ディスク1403と反対側に存在する。
本発明の1実施形態では、DMD100は低プロフィールの3.5”フォームファクタを有するボックス中に非常にコンパクトな方法でパッケージされている。前述したように、DMD100は十分に完全なコンピュータである。これは低プロフィールの3.5”フォームファクタを有するコンパクトなパッケージングにより、任意の装置の任意の駆動ベイに配備可能にされ、以下さらに詳細に説明するように、種々のアプリケーションで使用されることができる。
図14fは、図14eと比較して、90度回転されている図を示している。この図では、SCSI制御装置チップ1404はホストSCSIコネクタ1408の近くにあり、SCSIコネクタ1408-1、1408-2、1408-3(見えない)を介して、ホストSCSIコネクタ1408に接続されていることが認められる。
図14gは、図14fを畳んだ図である。ボードが設置され、コンパクトボックス1430が閉じられるとき、ボックスのバックプレーンから見られるのは、ホストSCSIコネクタ1408であり、それはSCB1400と同じ層に位置され、DCB1410と2つのメモリボード1420-1と1420-2の下にある。
図14hは、ボードが設置されるときの、コンパクトボックス1430の反対側を示している。バッテリ1431はボックスのエッジにあり、これは3つの小さいボードと、メモリボード1420-1と1420-2の近くであり、SCB1400上のバックアップ記憶ディスク1403とそのATAコネクタ1409の上にある。
前述したようにDMD100は低プロフィールの3.5”フォームファクタのデータプロセッサであり、任意の装置の任意のドライブベイ中に配備可能である。図15の(a)および(b)は標準的な低プロフィールの3.5”高密度ディスク(HDD)のような高速度ディスク記憶エミュレータとして配備されているDMD100を示している。DMD100は非常に高速度のデータ移動を行うことができるので、記憶エミュレータとしてDMD100を使用することによって、高速度の転送での大容量のデータ記憶のための効率的な手段を提供することができる。図15の(a)は、DMD100が複数のホストシステム、即ちホストシステム1 1510とホストシステム2 1520,…,ホストシステムK 1530に対する高速度ディスク記憶エミュレータとして配備されるときの例示的な構造を示している。この配備では、ホストシステムはデータリクエストを、SCSI/ファイバチャンネル制御装置140(図1参照)を介してDMD100へ送信することができる。データリクエストを受信したとき、DMD100はそのデータリクエストを処理し、リクエストされたデータにアクセスし、その後、リクエストしているホストシステムへ応答を返送する。
図15の(b)は、DMD100が高速度ディスク記憶エミュレータとして配備されるときの異なる例示的な構造を示している。この構造では、単一のホストシステム1540は複数のDMD、即ち大容量データ記憶用のDMD1 1560、DMD2 1570,…,DMDK 1580を配備することができる。多数のDMD間で調整するため、ディスパッチャ1550が配備され、ホストシステム1540からのデータリクエストを誘導し、DMDからの応答をホストシステム1540へ転送するように構成されることができる。多数のDMDに記憶されているデータは、決定された種々の規準にしたがって、例えばアプリケーションの要求にしたがって、分配されることができる。例えば、データベースの異なる論理部分が異なるDMDに記憶されてもよく、分配マップが設定されることができ、ディスパッチャ1550によって、リクエストを誘導して応答を転送する方法を決定するために使用されることができる。幾つかのDMDは故障を許容する目的で設けられることもできる。その代わりに、ディスパッチャはデータリクエストを特定のDMDへ発送する前に、負荷の平衡を実行するように構成されることができる。
図16は、本発明の1実施形態にしたがって、DMD100が、(固体の高速度ディスクをエミュレートする)高速度ディスクエミュレータとして使用され、データリクエストを処理する例示的なプロセスのフローチャートである。そのシステムは最初にステップ1600で初期化される。初期化の終了時に、適切なシステム状態が設定される。初期化プロセスに関する詳細を図17を参照して説明する。初期化後、システムは1605で、ホストシステムからデータリクエストを受信する。データリクエストの受信に関する詳細を図18を参照して説明する。データリクエストがDMD100に記憶されているあるデータをアクセス(即ち読取または書込み)するとき、(図9を参照して説明したように)汎用目的のプロセッサ12を通過せずに、FPGA12を通って直接データ転送が行われることができる。このようなデータリクエストをサービスするため、システムは現在のシステム状態を決定する。それぞれ1610および1650で決定されたシステム状態がサービス中(状態(4))であるか、サービス中バックアップ係属(システム状態(5))であるならば、データリクエストはしたがって1615で、メモリ120から処理される。メモリ120からのデータリクエストの処理プロセスを図19を参照して説明する。
システム状態が、それぞれ1650、1665、1670で決定されたサービス中バックアップ(システム状態(3))、回復バックアップ係属状態(システム状態(6))、又は回復(システム状態(2))であるならば、データリクエストは、したがって1660で、リクエストされた位置にしたがって、メモリ120またはバックアップ記憶装置130からのデータが処理される。メモリ120またはバックアップ記憶装置130から処理されるデータリクエストに関する詳細を図20を参照して説明する。システム状態が、それぞれ1675、1685、1690で決定されたバックアップ状態(システム状態(7))、アイドル状態(システム状態(8))、オフ状態(システム状態(9))のうちの1つであるならば、システムは1680で、データリクエストのサービスを拒否する。
データリクエストが処理された(1615または1660でサービスされた)後、システムは1620において、バックアップが実行される必要があるか否かをチェックする。バックアッププロセスが初期化される必要がある状態については、図8(システム状態の転移)を参照して説明される。バックアップが必要とされるならば、DMD100は1625で、バックアッププロセスを呼び出す。バックアップ(または回復)プロセス期間中、あるフラグは正しいシステム状態の転移を可能にするために適時に設定されることができる。例えば、バックアッププロセスが開始されるとき、システムはそれがバックアッププロセスの終了前の全ての次のデータリクエストを拒否するようにバックアップフラグを設定することができる。終了時、フラグはシステム状態の転移が初期化されることができるように、適切にリセットされることができる。
システムはまた、ある診断ルーチンが実行される必要があるか否かを、1630でチェックできる。診断ルーチンを実行する場合に関する例示的な規準は前述したとおりである。例えば、このようなルーチンが規則的に実行されるように、規則的な間隔が設定されることができる。診断ルーチンはまた、ある事象の検出時に幾つかのソフトウェアアプリケーションによりトリガーされることができる。責任者がこれらを外部で付勢することもできる。診断ルーチンはステップ1635で実行される。診断期間中に、1640で検出されたエラーが存在することが決定されたならば、ステップ1645で、バックアップ記憶装置130にエラーメッセージが書込まれるか記録される。
システムは1646で、回復プロセス(メモリのロード)が初期化される必要があるか否かをチェックされる。メモリのロードプロセスが初期化される例示的な状態について図8(システム状態の転移)を参照して説明する。回復が必要とされるならば、プロセスは1647で実行される。このプロセス期間中、データがバックアップ記憶装置130からメモリ120へ移動されることを示すためにあるフラグが設定されることができ、それによってこのようなシステム状態の下で受信されたデータリクエストは適切に処理されることができる。回復プロセスの終了時に、フラグはシステム状態が適切に変更されることができるようにリセットされる。
図17は、本発明の1実施形態による、DMD100が初期化される例示的なプロセスのフローチャートである。オペレーティングシステム(OS)は最初に、1710でブートされる。OSのブートが終了すると、プロセッサ210は、1720においてメモリ120を、1730においてバックアップ記憶駆動装置を、また1740においてSCSI/ファイバ駆動装置を含む種々の駆動装置を初期化する。初期化の状態に基づいて、システムはその後、1750で適切なシステム状態を設定する。
図18は、本発明の1実施形態による、プロセッサ210がデータリクエストを受信し、そのリクエストを適切な駆動装置へ転送する例示的なプロセスのフローチャートである。プロセッサ210が1810で、そのPCIXインターフェースを介してデータリクエストを受信するとき、これは最初に、1820でデータリクエストを翻訳する。データリクエストを適切な駆動装置へ転送する前に、プロセッサ210は1830で、現在のシステム状態を決定する。現在のシステム状態およびデータリクエストの特性に基づいて、プロセッサ210は1840で、データリクエストを処理する適切なオペレーティング装置を決定し、それに続いて1850で、データリクエストを、このように決定されたオペレーティング装置へ転送する。
図19は、本発明の1実施形態にしたがって、データリクエストがメモリ120から処理される例示的なプロセスのフローチャートである。データリクエストを受信するとき、DMD100は最初に、1900で、例えば必要とされるブロックサイズに基づいて、データリクエストを適切なLUN構造へマップする。データリクエストの性質がその後1910で解析される。データリクエストが読取リクエストであるならば、読取リクエストは1915で、メモリ120へ送信される。そのデータはその後、1920で読取られる。メモリ120から読取られたデータが1925で受信されるとき、これは1930でデータリクエストを行ったホストシステムへ戻される。データリクエストが書込みリクエストであるならば、書込みリクエストは書込まれるデータと共に1935でメモリ120へ送信される。そのデータは1940でメモリ120へ書込まれる。データ書込みが終了されるとき、確認が1945でメモリ120から受信され、その後、1950でデータリクエストを行ったホストシステムへ転送される。
図20は、本発明の1実施形態によって、データリクエストがメモリ120またはバックアップ記憶装置130から処理される例示的なプロセスのフローチャートである。前述したように、システム状態がサービス中バックアップ(システム状態(3))、回復バックアップ係属状態(システム状態(6))、又は回復(システム状態(2))であるならば、データリクエストは、データがリクエストされた位置にしたがって、メモリ120またはバックアップ記憶装置130から処理される。このような状態でデータリクエストを処理するために、DMD100は最初に、2000でデータリクエストが読取リクエストであるかまたは書込みリクエストであるかを決定する。
データリクエストが読取リクエストであるならば、読取られるデータの位置は2005で決定される。読取られるデータがバックアップ記憶装置130に位置されているならば、読取リクエストが2015でバックアップ記憶装置130へ送信される前に、適切なLUN構造がデータリクエストにしたがって、2010でマップされる。データが2020で、バックアップ記憶装置130から読取られた後、そのデータは、2025でバックアップ記憶装置130から受信され、その後、2030で読取リクエストを行ったホストシステムヘ転送される。
読取られるデータがメモリ120に位置されているならば、データリクエストが2040でメモリ120へ送信される前に、2035で適切なLUN構造へマップされる。データが2045でメモリ120から読取られた後、データは2050で受信され、その後、2030でリクエストを行ったホストシステムヘ転送される。
データリクエストが書込みリクエストであることが2000で決定されたならば、DMD100はメモリ120とバックアップ記憶装置130との両者で書込み動作を行うことができる。この場合、書込みリクエストは最初に、2055でメモリ120とバックアップ記憶装置130との両者の適切なLUN構造にマップされる。マッピングは必要とされるブロックサイズにしたがって行われることができる。マップされたLUN構造に基づいて、書込み命令と、書込まれるデータが、2060でメモリ120とバックアップ記憶装置130との両者に送られ、2065で、データはその後、両者の記憶スペースに書込まれる。書込み確認が2070で、バックアップ記憶装置130から受信されたとき、DMD100はその確認を書込みリクエストを行ったホストシステムヘ転送する。
図21は、本発明の1実施形態による、診断が行われ、エラーメッセージがバックアップ記憶装置130に記録される例示的なプロセスのフローチャートである。この例示的な実施形態では、診断は一時に1つのコンポーネントで実行される。DMD100のコンポーネントを試験するために、信号が最初に2110でプロセッサ210からコンポーネントへ送信される。プロセッサ210はその後、2120でコンポーネントが信号を受信した後の結果を測定する。測定された結果は、その後2130で予め記憶されている予想された結果と比較される。測定された結果が予想された結果と一致しないことが2140で決定されたならば、それはそのコンポーネントが故障していることを示している可能性がある。この場合、試験に関するエラーメッセージが、2150でバックアップ記憶装置130に書き込まれる。診断プロセスは、2160で試験される全てのコンポーネントが試験されたことが決定されるまで継続される。診断プロセスは2170で終了する。
ここで説明されたDMD100はさらに他の目的で配備されることができる。例えばDMDはデータオフロードエンジンまたは装置として配備されることができる。このような応用では、サーバはそのI/O集約的なタスクをDMDへオフロードすることができる。このようなDMDはDMDとサーバ中のプロセッサとの間でデータを共有するために必要とされる可能性がある。データはDMDとサーバとの両者にアクセス可能な位置に配置される必要がある可能性がある。このように配備されたDMDは、DMD中のデータ転送/移動が汎用目的のプロセッサを通らずにFPGAによって直接的に実行されることができるので、指定されたタスクの要求にしたがって、高速度のデータ操作を行うことができる。ここで説明されるDMDがオープンアーキテクチャであり、小さい寸法であるので、このようなアプリケーションは実行可能である。それ故、これは任意の特別な装置またはソフトウェア接続を必要とせずに、サーバに容易に埋設または接続されることが可能である。
図22は、1以上のスレーブDMDがデータオフロードエンジンまたは装置としてマスター装置により配備される例示的な構造を示している。この実施形態では、複数のDMD(例えばDMD1 2230、DMD2 2240,…,DMDk 2250)が1以上のクライアント(例えばクライアント2210)に接続されたサーバ2220により配備される。クライアント2210がサービスリクエストをサーバ2220に送信するとき、リクエストの特性にしたがって、サーバ2220は幾つかの処理を1つのDMDへ指令できる。ここで説明されるDMDは十分に完全なコンピュータ装置であるので、これはデータの操作と処理を非常に高速度で実行することができる。例えばリクエストが大容量データベース中の検索に基づいた回答を求める問合せであるならば、サーバが検索自体を実行するならば、そのコンピュータ処理パワーは停止し、したがってサーバの性能が劣化する可能性がある。代わりに、例示された方法では、スレーブDMDがデータベースの異なる部分を記憶し、データベースのアプリケーションを実行するように構成されているならば、マスターサーバ2220は(そこに記憶されているデータベースのデータの適切な部分を有する可能性がある)スレーブ装置DMDの1つに、必要な大容量検索を高速度で実行するように命令することができる。
図23は、DMD100の別の応用を示している。この例では、DMDはネットワーク制御機構として配備されている。この構造では、ネットワークノードi 2310は、1以上のネットワークスイッチにより決定されたダイナミックネットワークパスを介して、別のネットワークノードj 2350へ接続されている。これを行うため、DMD2340は高速度のデータ操作能力を1以上のネットワークスイッチ(例えばネットワークスイッチmの2330-1,…,ネットワークスイッチnの2330-2)へ提供するために配備されることができる。このようなデータ操作タスクは、セキュリティ及び監視等のこのようなトラフィック制御およびネットワーク管理を行う種々のネットワーク制御決定を含んでいる。ネットワーク化において、スイッチはしばしば、トラフィックロードおよびネットワークの健全さに関する情報に基づいて、トラフィックをダイナミックに指令するように要求される。このようなダイナミックなネットワーク情報はしばしば、ネットワークトラフィックの現在の状態を効率的に反映するために、迅速な速度で解析され、その後フラッシュアウトされる。さらに、情報はしばしば、異なるスイッチ間で共用され、非常に高速度で操作されることを必要とされる。ここで説明されたDMD100はこれらの要求を満足するのに適している。このような設定で配備されるDMDは例えばソフトウェアまたはファームウェアの形態で必要なトラフィック制御および/または管理特性を有していてもよい。FPGAはそこに記憶されているデータをアクセスするパスを指令し、DMDが非常に高速度でデータ操作タスクを実行することを許容する。
図24は、DMD100の別の例示的な応用を示している。この実施形態では、DMDはデータの送信及び受信のための高速度のデータ操作用として配備されることができる。これはデータ送信が、光ファイバネットワークのような高速度ネットワーク接続におけるマルチメディアまたはビデオ情報のような高帯域幅のチャンネルにわたる高容量のデータに関連するとき特に適している。この応用では、送信者2410は受信者2450によって、送信機サイトに記憶されたあるデータを送信するようにリクエストされることができる。例えばビデオ・オン・デマンド(VoD)アプリケーションでは、ユーザはケーブルネットワークを介して映画を送信するようにサービスプロバイダにリクエストできる。このようなデータの容量が大きく、送信時間がしばしば重要であるので、送信者2410は1以上のDMD(例えばDMD2420)を、データ記憶のためだけでなく、高速度送信のために配備することができる。即ち、配備されたDMD2420は高速度接続2440(例えばケーブルネットワーク)に直接接続されることができ、データ送信の前に行われる種々のデータ動作を行う。例えばリクエストされたデータは送信前に暗号化される必要がある可能性がある。DMD自体は受動的記憶装置ではなく、完全なコンピュータ装置であるので、この設定で配備されるDMDには必要な暗号化アプリケーションが設けられることができる。さらに、汎用目的のプロセッサおよび説明したその他の特徴(例えば代わりのメモリモード方式)を通らずに、データのアクセスを指令するためのFPGAパスによって、DMDは非常に高速度で、データをメモリへ、及びメモリから転送することができ、これはマルチメディア及びビデオ応用でしばしば必要である。
同様に、受信サイトで、別のDMD2460が高速度受信及び記憶を行うために配備されることができる。さらに、DMD2460はデータの暗号解読を行うように構成されることもでき、これは受信されたデータをDMD2460へ保存する前に、または記憶されたデータがDMDの記憶装置から受信装置によって検索されるときに行われることができる。例えばユーザはビデオ・オン・デマンドサービスを介して映画をリクエストすることができ、受信された映画は最初にその暗号化された形態で受信機サイトに記憶され、後で視聴のため検索され、解読されることができる。
前述した実施例は単なる例示である。ここで説明したDMD100は、小型でコンパクトなオープンアーキテクチャ、商用のCPUおよびOSを使用するための通常のデータ処理能力、プロセッサ及び変わりのメモリモード方式によらない直接的なFPGAのメモリアクセス、自蔵された機上バックアップ記憶装置を含むが、それらに限定されない種々の特有の特徴を有している。これらの特徴によってDMD100は種々の異なる応用シナリオで配備され、またモジュラ方法での大きい固体ディスクシステムの核として使用される。このような高度にモジュール化されたシステムは、単一の装置内の多数のファイル構造、効率的なデータ統合構造、故障隔離、迅速なバックアップ及び回復、及び故障許容度を処理することができる。
本発明をある例示された実施形態を参照して説明したが、ここで使用した用語は、限定の用語ではなく、説明の用語である。本発明の技術的範囲を逸脱せずに、特許請求の範囲内で、変更を行うことができる。本発明は特定の構造、作用、材料を参照してここで説明したが、本発明は説明した特定の要項に限定されるものではなく、広範囲の形態で実施されることができ、そのうちの幾つかは説明した実施形態のものとはかなり異なる可能性があり、特許請求の技術的範囲内であるような全ての等価の構造、動作、材料に及んでいる。
Claims (196)
- 低プロフィールフォームファクタのハウジングと、
前記ハウジング中に配置され、データの記憶を行うように構成されているメモリと、
前記ハウジング中に配置され、前記メモリを制御するように構成されているメモリ制御装置と、
前記ハウジング中に配置され、前記メモリ制御装置に接続され、データリクエストを受信して、そのデータリクエストに応答する情報を返送するインターフェースを提供するように構成されているチャンネル制御装置と、
前記ハウジング中に配置され、前記チャンネル制御装置に接続され、前記メモリをバックアップするための記憶スペースを提供するように構成されているバックアップ記憶装置とを具備しているデータ操作装置。 - 前記メモリは固体ディスクメモリである請求項1記載のデータ操作装置。
- 前記バックアップ記憶装置はエラー記録メッセージを記憶するために使用される請求項2記載のデータ操作装置。
- 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中のメモリスペースとして使用される請求項2記載のデータ操作装置。
- 前記メモリは1以上のLUN構造を有し、各LUN構造は異なるブロックサイズを有するデータを記憶するために使用されることができる請求項1記載のデータ操作装置。
- 前記メモリは複数のメモリ部分に分割され、各メモリ部分はスリープモード、ウェイクアップモードのうちの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項1記載のデータ操作装置。
- 前記チャンネル制御装置はSCSIチャンネル制御装置またはファイバ制御装置のうちの1つである請求項2記載のデータ操作装置。
- 前記SCSIチャンネル制御装置と前記ファイバチャンネル制御装置は共通の駆動装置に対応している請求項7記載のデータ操作装置。
- 前記メモリ制御装置は、
前記チャンネル制御装置に接続され、メモリアクセスを制御するように構成されているプロセッサと、
このプロセッサに接続されている同期ダイナミックランダムアクセスメモリ(SDRAM)と、
前記メモリに接続され、メモリに直接アクセスすることのできるダイナミックランダムアクセスメモリ(DRAM)制御装置とを具備している請求項1記載のデータ操作装置。 - 前記DRAM制御装置は前記プロセッサに接続され、前記プロセッサの制御下で前記メモリにアクセスする請求項9記載のデータ操作装置。
- 前記メモリ制御装置はさらに、
前記プロセッサに接続されているブートフラッシュメモリと、
実時間クロック信号を前記プロセッサに提供するように構成される実時間クロックと、
前記DRAM制御装置とメモリとの間に情報コンジットを提供するように構成されるダイナミックランダムアクセスメモリ(DRAM)コネクタとを具備している請求項9記載のデータ操作装置。 - 前記プロセッサは汎用目的のプロセッサである請求項9記載のデータ操作装置。
- 前記汎用目的のプロセッサは市場で入手可能である請求項12記載のデータ操作装置。
- オペレーティングシステムが前記プロセッサに配備され、前記プロセッサにおいて動作することができる請求項9記載のデータ操作装置。
- 前記オペレーティングシステムは商用のオペレーティングシステムである請求項14記載のデータ操作装置。
- 前記商用のオペレーティングシステムはLinux(登録商標)である請求項15記載のデータ操作装置。
- 前記プロセッサは、
前記チャンネル制御装置とインターフェースするように構成されているバスインターフェースと、
データのリクエストを処理するために前記バスインターフェースと通信するデータアクセスリクエストハンドラと、
メモリのロードを行うように構成されているメモリロードハンドラと、
データをメモリから前記バックアップ記憶装置へ移動するように構成されているメモリバックアップハンドラとを具備している請求項9記載のデータ操作装置。 - 前記データアクセスリクエストハンドラは、
データ操作装置の現在のシステム状態を決定するように構成されているシステム状態決定装置と、
データリクエストがメモリから処理されるべきか否かを決定するように構成されている動作装置決定装置と、
前記動作装置決定装置が、読取リクエストにしたがって読取られるデータがメモリから読取られることを決定するとき、メモリ読取動作を行うように構成されているメモリ読取ハンドラと、
前記動作装置決定装置が、書込みリクエストにしたがって書込まれるデータがメモリへ書込まれることを決定するとき、メモリ書込みを行うように構成されているメモリ書込みハンドラと、
前記動作装置決定装置が、読取リクエストにしたがって読取られるデータがバックアップ記憶装置から読取られることを決定するとき、バックアップ記憶装置からの読取動作を行うように構成されているバックアップ記憶装置の読取ハンドラと、
前記動作装置決定装置が、書込みリクエストにしたがって書込まれるデータがバックアップ記憶装置へ書込まれることを決定するとき、バックアップ記憶装置における書込み動作を行うように構成されているバックアップ記憶装置の書込みハンドラとを具備している請求項17記載のデータ操作装置。 - 前記システム状態決定装置は、少なくとも1つのフラグに基づいて、システム状態を決定する請求項18記載のデータ操作装置。
- 前記少なくとも1つのフラグは、進行中のメモリロードプロセスを示す回復フラグと、メモリからバックアップ記憶装置へ移動しているデータを示すバックアップフラグとを含んでいる請求項19記載のデータ操作装置。
- メモリロードプロセスが開始するとき、メモリロードフラグはメモリロードハンドラによって設定され、メモリロードプロセスが終了されるとき、リセットされる請求項20記載のデータ操作装置。
- メモリバックアップが開始するとき、バックアップフラグはメモリバックアップハンドラにより設定され、メモリバックアップが終了されるとき、リセットされる請求項20記載のデータ操作装置。
- 前記データアクセスリクエストハンドラはさらに、データリクエストを複数のLUN構造のうちの1つにマップするように構成されているLUNマッピング機構を具備し、マップされたLUN構造のブロックサイズはデータリクエストにより要求されるブロックサイズに一致する請求項18記載のデータ操作装置。
- 前記データアクセスリクエストハンドラはさらに、データ操作装置が初期化されるとき、均一のブロックサイズを有する複数のLUN構造を初期化するように構成されているLUN初期化装置を具備している請求項23記載のデータ操作装置。
- 前記プロセッサはさらに、
診断ルーチンを行うように構成されている診断機構と、
前記診断機構により発生されるエラー情報をバックアップ記憶装置へ書込むように構成されているエラー記録機構とを具備している請求項17記載のデータ操作装置。 - 診断機構は、外部の手作業の付勢により、および/またはプロセッサで稼動するオペレーティングシステムにより付勢される請求項25記載のデータ操作装置。
- 診断機構は局地的および/または遠隔操作で付勢されることができる請求項25記載のデータ操作装置。
- 前記プロセッサはさらに、メモリ中の異なるメモリ部分のモードを制御するように構成されているメモリ状態制御装置を具備する請求項17記載のデータ操作装置。
- 前記メモリは、メモリは二倍のデータ率の同期ダイナミックランダムアクセス(DDR DRAM)メモリの少なくとも1つのメモリボードを具備している請求項1記載のデータ操作装置。
- メモリボードは、
少なくとも1つのメモリバンクと、
前記少なくとも1つのメモリバンクをクロックするための1以上の位相ロックループ(PLL)と、
少なくとも1つの登録されたバッファとを具備している請求項29記載のデータ操作装置。 - 前記バックアップ記憶装置は、バックアップ記憶制御装置と、そのバックアップ記憶制御装置によって制御されるディスクとを具備している請求項1記載のデータ操作装置。
- 前記バックアップ記憶制御装置はチャンネル制御装置及びメモリ制御装置と通信する請求項31記載のデータ操作装置。
- さらに、充電可能なバッテリを介してデータ操作装置へ電力を供給するように構成されているバッテリシステムを具備している請求項1記載のデータ操作装置。
- 前記バッテリシステムは、
再充電可能なバッテリと、
再充電可能なバッテリの電力レベルを監視するように構成されているモニタと、
バッテリを充電するように構成されているバッテリ充電装置と、
ある入力電圧を有する再充電可能なバッテリから、データ操作装置により必要とされる複数の出力電力のうちの1つへ電力を変換するように構成されているDC−DC変換器とを具備している請求項33記載のデータ操作装置。 - 前記再充電可能なバッテリは自動的に放電を開始できるように構成されている請求項34記載のデータ操作装置。
- バッテリは周期的に放電される請求項35記載のデータ操作装置。
- バッテリはバッテリがフルパワーに到達したときに放電される請求項35記載のデータ操作装置。
- バッテリの放電は前記プロセッサによって制御される請求項35記載のデータ操作装置。
- データの記憶を行うように構成されたメモリと、
前記メモリを制御するように構成されたメモリ制御装置と、
前記メモリ制御装置に接続され、データリクエストを受信して、そのデータリクエストに応答して情報を返送するためのインターフェースを提供するように構成されているチャンネル制御装置とを具備し、
前記メモリは複数のメモリ部分を有し、各メモリ部分はスリープモード、ウェイクアップモードのうちの1つに設定されることが可能であり、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能であるデータ操作装置。 - さらに、チャンネル制御装置に接続され、メモリをバックアップするための記憶スペースを提供するように構成されているバックアップ記憶装置を具備している請求項39記載のデータ操作装置。
- 前記メモリは固体ディスクメモリである請求項39記載のデータ操作装置。
- 前記バックアップ記憶装置はエラー記録メッセージを記憶するために使用される請求項40記載のデータ操作装置。
- 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中にメモリスペースとして使用される請求項40記載のデータ操作装置。
- 前記メモリは1以上のLUN構造を有し、各LUN構造は異なるブロックサイズを有するデータを記憶するために使用されることができる請求項39記載のデータ操作装置。
- 前記チャンネル制御装置はSCSIチャンネル制御装置またはファイバ制御装置のうちの一方である請求項39記載のデータ操作装置。
- 前記SCSIチャンネル制御装置と前記ファイバチャンネル制御装置は共通の駆動装置に対応している請求項45記載のデータ操作装置。
- 前記メモリ制御装置は、
前記チャンネル制御装置に接続され、メモリアクセスを制御するように構成されているプロセッサと、
このプロセッサに接続されている同期ダイナミックランダムアクセスメモリ(SDRAM)と、
前記メモリに接続され、メモリを直接アクセスすることができるダイナミックランダムアクセスメモリ(DRAM)制御装置とを具備している請求項39記載のデータ操作装置。 - 前記DRAM制御装置は前記プロセッサに接続され、プロセッサの制御下でメモリにアクセスする請求項47記載のデータ操作装置。
- 前記プロセッサは市場で入手可能な汎用目的のプロセッサである請求項47記載のデータ操作装置。
- 商用のオペレーティングシステムが前記プロセッサに配備され、プロセッサで動作する請求項47記載のデータ操作装置。
- 前記商用のオペレーティングシステムはLinuxである請求項50記載のデータ操作装置。
- 前記プロセッサは、現在のシステム状態に基づいて、データリクエストがメモリまたはバックアップ記憶装置から処理されるか、或いはそれらの両者から処理される請求項47記載のデータ操作装置。
- 前記システム状態は、少なくとも1つのフラグに基づいて決定される請求項52記載のデータ操作装置。
- 前記少なくとも1つのフラグは、進行中のメモリロードプロセスを示す回復フラグと、メモリからバックアップ記憶装置へ移動しているデータを示すバックアップフラグとを含んでいる請求項53記載のデータ操作装置。
- 前記プロセッサはさらに、データリクエストを複数のLUN構造のうちの1つにマップすることが可能であり、マップされたLUN構造のブロックサイズはデータリクエストにより必要とされるブロックサイズに一致する請求項54記載のデータ操作装置。
- 前記プロセッサはさらに、
診断ルーチンを行うように構成されている診断機構と、
この診断機構により発生されるエラー情報をバックアップ記憶装置へ書込むように構成されているエラー記録機構とを具備している請求項47記載のデータ操作装置。 - 前記プロセッサはさらに、メモリ中の異なるメモリ部分のモードを制御するように構成されているメモリ状態制御装置を具備している請求項47記載のデータ操作装置。
- さらに、充電可能なバッテリを介してデータ操作装置へ電力を提供するように構成されているバッテリシステムを具備しており、充電可能なバッテリは自動的に放電を開始できるように構成されている請求項39記載のデータ操作装置。
- バッテリは周期的に放電される請求項58記載のデータ操作装置。
- バッテリはバッテリがフルパワーに到達したときに放電される請求項58記載のデータ操作装置。
- データの記憶を行うように構成されたメモリと、
このメモリを制御するように構成されたメモリ制御装置と、
前記メモリ制御装置に接続され、データリクエストを受信して、そのデータリクエストに対する応答として情報を返送するためのインターフェースを提供するように構成されているチャンネル制御装置とを具備し、
前記メモリは複数のLUN構造として組織され、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することが可能にされているデータ走査装置。 - 前記メモリは固体ディスクメモリである請求項61記載のデータ操作装置。
- さらに、前記チャンネル制御装置に接続され、メモリをバックアップするための記憶スペースを提供するように構成されるバックアップ記憶装置を具備している請求項61記載のデータ操作装置。
- 前記バックアップ記憶装置はエラー記録メッセージを記憶するために使用される請求項63記載のデータ操作装置。
- 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中にメモリスペースとして使用される請求項63記載のデータ操作装置。
- 前記チャンネル制御装置はSCSIチャンネル制御装置またはファイバ制御装置のうちの一方である請求項61記載のデータ操作装置。
- 前記SCSIチャンネル制御装置と前記ファイバチャンネル制御装置は共通の駆動装置に対応している請求項66記載のデータ操作装置。
- 前記メモリ制御装置は、
前記チャンネル制御装置に接続され、メモリアクセスを制御するように構成されるプロセッサと、
このプロセッサに接続されている同期ダイナミックランダムアクセスメモリ(SDRAM)と、
前記メモリに接続され、メモリに直接アクセスすることができるダイナミックランダムアクセスメモリ(DRAM)制御装置とを具備している請求項61記載のデータ操作装置。 - 前記DRAM制御装置はプロセッサに接続され、プロセッサの制御下でメモリにアクセスする請求項68記載のデータ操作装置。
- 前記プロセッサは市場で入手可能な汎用目的のプロセッサである請求項68記載のデータ操作装置。
- 商用のオペレーティングシステムがプロセッサに配備され、プロセッサで動作している請求項68記載のデータ操作装置。
- 前記商用のオペレーティングシステムはLinuxである請求項71記載のデータ操作装置。
- 前記プロセッサは、現在のシステム状態に基づいて、データリクエストがメモリまたはバックアップ記憶装置から処理されるか、或いは両者から処理される請求項68記載のデータ操作装置。
- システム状態は、少なくとも1つのフラグに基づいて決定される請求項73記載のデータ操作装置。
- 前記少なくとも1つのフラグは、進行中のメモリロードプロセスを示す回復フラグと、メモリからバックアップ記憶装置へ移動しているデータを示すバックアップフラグとを含んでいる請求項74記載のデータ操作装置。
- 前記プロセッサはさらに、データリクエストを複数のLUN構造のうちの1つにマップすることが可能であり、マップされたLUN構造のブロックサイズはデータリクエストにより必要とされるブロックサイズに一致している請求項68記載のデータ操作装置。
- 前記プロセッサはさらに、
診断ルーチンを行うように構成されている診断機構と、
この診断機構により発生されるエラー情報をバックアップ記憶装置へ書込むように構成されているエラー記録機構とを具備している請求項68記載のデータ操作装置。 - 前記プロセッサはさらに、メモリ中の異なるメモリ部分のモードを制御するように構成されているメモリ状態制御装置を具備している請求項68記載のデータ操作装置。
- さらに、充電可能なバッテリを介してデータ操作装置へ電力を提供するように構成されるバッテリシステムを具備しており、充電可能なバッテリは自動的に放電を開始できるように構成されている請求項61記載のデータ操作装置。
- バッテリは周期的に放電される請求項79記載のデータ操作装置。
- バッテリはバッテリがフルパワーに到達したときに放電される請求項79記載のデータ操作装置。
- 低プロフィールのフォームファクタのハウジングと、
前記ハウジング中に配置され、データの記憶を行うように構成されている固体ディスクメモリと、
前記ハウジング中に配置され、固体ディスクメモリを制御するように構成されているメモリ制御装置と、
前記ハウジング中に配置され、前記メモリ制御装置に接続され、データリクエストを受信して、そのデータリクエストに対する応答として情報を返送するためのインターフェースを提供するように構成されているチャンネル制御装置と、
前記ハウジング中に配置され、前記チャンネル制御装置に接続され、固体ディスクメモリをバックアップするための記憶スペースを提供するように構成されるバックアップ記憶装置とを具備しているデータ操作装置。 - 前記固体ディスクメモリは複数のメモリ部分を有し、各メモリ部分はスリープモード、ウェイクアップモードのうちの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項82記載のデータ操作装置。
- 前記バックアップ記憶装置はエラー記録メッセージを記憶するために使用される請求項82記載のデータ操作装置。
- 前記バックアップ記憶装置は、バックアップ記憶装置から固体ディスクメモリへのメモリロード期間中にメモリスペースとして使用される請求項82記載のデータ操作装置。
- 前記固体ディスクメモリは1以上のLUN構造に組織化され、各LUN構造は異なるブロックサイズを有するデータを記憶するために使用されることができる請求項82記載のデータ操作装置。
- 前記チャンネル制御装置はSCSIチャンネル制御装置またはファイバ制御装置のうちの一方である請求項82記載のデータ操作装置。
- 前記SCSIチャンネル制御装置と前記ファイバチャンネル制御装置は共通の駆動装置に対応している請求項87記載のデータ操作装置。
- 前記メモリ制御装置は、
前記チャンネル制御装置に接続され、メモリアクセスを制御するように構成されているプロセッサと、
このプロセッサに接続されている同期ダイナミックランダムアクセスメモリ(SDRAM)と、
前記固体ディスクメモリに接続され、固体ディスクメモリに直接アクセスすることができるダイナミックランダムアクセスメモリ(DRAM)制御装置とを具備している請求項82記載のデータ操作装置。 - 前記DRAM制御装置はプロセッサに接続され、前記プロセッサの制御下で固体ディスクメモリにアクセスする請求項89記載のデータ操作装置。
- 前記プロセッサは市場で入手可能な汎用目的のプロセッサである請求項89記載のデータ操作装置。
- 商用のオペレーティングシステムがプロセッサに配備され、プロセッサで動作される請求項89記載のデータ操作装置。
- 前記商用のオペレーティングシステムはLinuxである請求項92記載のデータ操作装置。
- 前記プロセッサは、現在のシステム状態に基づいて、データリクエストが固体ディスクメモリまたはバックアップ記憶装置から処理されるか、或いは両者から処理される請求項89記載のデータ操作装置。
- システム状態は、少なくとも1つのフラグに基づいて決定される請求項94記載のデータ操作装置。
- 前記少なくとも1つのフラグは、進行中のメモリロードプロセスを示す回復フラグと、固体ディスクメモリからバックアップ記憶装置へ移動しているデータを示すバックアップフラグとを含んでいる請求項96記載のデータ操作装置。
- 前記プロセッサはさらに、データリクエストを複数のLUN構造のうちの1つにマップすることが可能に構成され、マップされたLUN構造のブロックサイズはデータリクエストにより必要とされるブロックサイズに一致している請求項96記載のデータ操作装置。
- 前記プロセッサはさらに、
診断ルーチンを行うように構成されている診断機構と、
診断機構により発生されるエラー情報を前記バックアップ記憶装置へ書込むように構成されているエラー記録機構とを具備している請求項89記載のデータ操作装置。 - 前記プロセッサはさらに、固体ディスクメモリ中の異なるメモリ部分のモードを制御するように構成されているメモリ状態制御装置を具備している請求項89記載のデータ操作装置。
- さらに、充電可能なバッテリを介してデータ操作装置へ電力を提供するように構成されているバッテリシステムを具備しており、充電可能なバッテリは自動的に放電を開始できるように構成されている請求項82記載のデータ操作装置。
- バッテリは周期的に放電される請求項100記載のデータ操作装置。
- バッテリはバッテリがフルパワーに到達したときに放電される請求項100記載のデータ操作装置。
- 高速度のデータ記憶及びアクセスを行うように構成されているデータ操作装置と、
前記データ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
前記データ操作装置は、データ記憶を行うように構成されているメモリと、このメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有している記憶システム。 - 高速度のデータ記憶及びアクセスを行うように構成されるデータ操作装置と、
このデータ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
データ操作装置は、データ記憶を行うように構成されているメモリと、このメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有しており、
データリクエストは、データ操作装置のシステム状態にしたがって、メモリおよび/またはバックアップ記憶装置から処理される記憶システム。 - 高速度のデータ記憶及びアクセスを行うように構成されているデータ操作装置と、
このデータ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
前記データ操作装置は、データ記憶を行うように構成されているメモリと、メモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置と、商用のオペレーティングシステムと共に配備されている汎用目的のプロセッサを使用して構成されているメモリ制御装置とを具備している記憶システム。 - 高速度のデータ記憶及びアクセスを行うように構成されているデータ操作装置と、
このデータ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
前記データ操作装置は、データ記憶を行うように構成されているメモリと、メモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置と、商用のオペレーティングシステムと共に配備される汎用目的のプロセッサを使用して構成されているメモリ制御装置と、チャンネル制御装置とを具備し、このチャンネル制御装置はSCSIチャンネル制御装置またはファイバチャンネル制御装置の一方であり、SCSIチャンネル制御装置とファイバチャンネル制御装置は共通の駆動装置に対応している記憶システム。 - 前記メモリは固体ディスクメモリである請求項106記載の記憶装置。
- 前記データ操作装置は、低プロフィールフォームファクタである請求項106記載の記憶システム。
- 前記データ操作装置は、診断ルーチンを実行するために付勢されることのできる診断機構を含み、付勢は内部および/または外部でトリガーされることが可能である請求項117記載の記憶システム。
- 前記診断ルーチン期間中に発生されたエラーメッセージはバックアップ記憶装置中に記録される請求項109記載の記憶システム。
- 前記データ操作装置はさらに、充電可能なバッテリを介してデータ操作装置へ電力を提供するように構成されているバッテリシステムを具備しており、充電可能なバッテリは自動的に放電を開始できるように構成されている請求項109記載の記憶システム。
- 高速度のデータ記憶及びアクセスを行うように構成されているデータ操作装置と、
このデータ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
前記データ操作装置は、データ記憶を行うように構成されているメモリを具備し、そのメモリはそれぞれ異なるブロックサイズのデータを記憶することができる複数のLUN構造に組織されている記憶システム。 - 高速度のデータ記憶及びアクセスを行うように構成されているデータ操作装置と、
このデータ操作装置と通信し、データリクエストを送信し、データ操作装置から応答を受信する1以上のホストシステムとを具備し、
前記データ操作装置は、データ記憶を行うように構成されるメモリを有し、
メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードとのうちの一方に設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である記憶システム。 - サービスを提供するように構成されているマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はマスターサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されているメモリと、そのメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有しているマスター−スレーブ構造。 - サービスを提供するように構成されているマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はマスターサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されているメモリと、メモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有しているマスター−スレーブ構造。 - サービスを提供するように構成されているマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はマスターサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されているメモリと、そのメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置と、商用のオペレーティングシステムと共に配備されている汎用目的のプロセッサを使用して構成されているメモリ制御装置とを有しているマスター−スレーブシステム。 - サービスを提供するように構成されるマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はマスターサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されているメモリと、そのメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置と、商用のオペレーティングシステムと共に配備されている汎用目的のプロセッサを使用して構成されるメモリ制御装置と、チャンネル制御装置とを具備し、そのチャンネル制御装置はSCSIチャンネル制御装置またはファイバチャンネル制御装置のいずれか一方であり、SCSIチャンネル制御装置とファイバチャンネル制御装置は共通の駆動装置に対応しているマスター−スレーブシステム。 - メモリは固体ディスクメモリである請求項117記載のマスター−スレーブシステム。
- 前記データ操作装置は、診断ルーチンを実行するために付勢されることのできる診断機構を含み、その付勢は内部および/または外部でトリガーされることが可能である請求項117記載のマスター−スレーブ構造。
- 診断ルーチン期間中に発生されたエラーメッセージはバックアップ記憶装置に記録される請求項119記載のマスター−スレーブ構造。
- 前記データ操作装置はさらに、充電可能なバッテリを介してデータ操作装置へ電力を提供するために構成されているバッテリシステムを具備しており、充電可能なバッテリは自動的に放電を開始できるように構成されている請求項117記載のマスター−スレーブ構造。
- サービスを提供するように構成されているマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されているメモリとを具備し、
そのメモリはそれぞれ異なるブロックサイズのデータを記憶することができる複数のLUN構造に組織化されているマスター−スレーブシステム。 - サービスを提供するように構成されているマスターサーバと、
このマスターサーバと通信する1以上のスレーブのデータ操作装置とを具備し、
前記各データ操作装置はサーバにより割当てられたタスクを実行し、応答をサーバに返送するように構成され、
前記各データ操作装置は低プロフィールフォームファクタであり、データ記憶を行うように構成されるメモリを有し、
前記メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの一方に設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能であるマスター−スレーブシステム。 - データ操作装置を初期化し、
データリクエストを受信し、
データ操作装置のシステム状態を決定し、
決定されたシステム状態に基づいて、データリクエストを処理するステップを含んでおり、
前記データ操作装置は、データ記憶のためのメモリと、データ操作装置がメモリをバックアップするときのバックアップスペースのためのバックアップ記憶装置を提供し、
前記データリクエストは、システム状態に基づいて、メモリと、バックアップ記憶装置の一方から処理されるか、或いは両方から処理されるデータ操作装置の処理方法。 - 前記初期化は、
前記データ操作装置に配備されているオペレーティングシステムをブートし、
1以上のメモリ部分を有するメモリを初期化し、
バックアップ記憶装置を駆動するバックアップディスク駆動装置を初期化し、
共通の駆動装置に対応するSCSI/ファイバ駆動装置を初期化し、
初期化状態に基づいてシステム状態を設定するステップを含んでいる請求項124記載の方法。 - 前記受信は、
データリクエストをSCSI/ファイバインターフェースを介して獲得し、
データリクエストを翻訳し、
翻訳されたデータリクエストを、システム状態に基づいて、バックアップディスク駆動装置と、メモリを駆動するメモリ駆動装置の少なくとも一方へ転送するステップを含んでいる請求項124記載の方法。 - 前記決定は、以下の複数のシステム状態の1つを決定し、複数のシステム状態は、
ブートシステム状態と、
サービス中のシステム状態と、
回復システム状態と、
バックアップシステム状態と、
サービス中−バックアップ係属状態と、
サービス中−バックアップ状態と、
回復−バックアップ係属状態と、
アイドルシステム状態と、
オフシステム状態とを含んでいる請求項124記載の方法。 - 前記処理は、
決定されたシステム状態が、バックアップシステム状態、アイドルシステム状態、オフシステム状態のうちの1つに対応しないならば、データリクエストに基づいてデータアクセスを実行し、
システム状態が、バックアップシステム状態、アイドルシステム状態、オフシステム状態のうちの1つに対応するならば、データリクエストの処理を拒否するステップを含んでいる請求項124記載の方法。 - 前記実行は、
システム状態が、サービス中システム状態およびサービス中−バックアップ係属システム状態の一方に対応するならば、メモリからのデータリクエストに基づいて、データアクセスを実行し、
システム状態が、回復システム状態、サービス−バックアップシステム状態、回復−バックアップ係属システム状態のうちの1つに対応するならば、メモリまたはバックアップ記憶装置のいずれか一方からのデータリクエストにしたがって、データアクセスを実行するステップを含んでいる請求項128記載の方法。 - 前記メモリからのデータアクセスの実行は、
データリクエストにより要求されるブロックサイズに一致するブロックサイズに対応するメモリ中の複数のLUN構造のうちの1つにデータリクエストをマップし、
データリクエストが読取リクエストであるならば、メモリ中のマップされたLUN構造からデータを読取り、
データリクエストが書込みリクエストであるならば、メモリ中のマップされたLUN構造へデータを書込むステップを含んでいる請求項129記載の方法。 - さらに、前記読取後、メモリから読取られたデータを受信し、
前記書込み後、メモリからの確認を受信するステップを含んでいる請求項130記載の方法。 - メモリまたはバックアップ記憶装置のいずれか一方からのデータアクセスの前記実行は、
データリクエストが読取リクエストであり、読取られるデータがメモリに存在しないならば、バックアップ記憶装置からデータを読取り、
データリクエストが読取リクエストであり、読取られるデータがメモリに存在するならば、メモリからデータを読取り、
データリクエストが書込みリクエストであるならば、メモリおよびバックアップ記憶装置の両者へデータを書込むステップを含んでいる請求項129記載の方法。 - メモリおよびバックアップ記憶装置の両者へのデータの前記書込みは、
データリクエストにより要求されるブロックサイズに対応するブロックサイズを有する複数のLUN構造のうちの1つに書込みリクエストをマップし、
バックアップ記憶装置およびメモリ中のマップされたLUN構造へデータを書込み、
前記データの書込み後、バックアップ記憶装置から書込み確認を受信するステップを含んでいる請求項132記載の方法。 - さらに、バックアップ動作を行うステップを含んでいる請求項128記載の方法。
- さらに、診断動作を行うステップを含んでいる請求項128記載の方法。
- 前記診断の実行は、ある時間間隔にしたがって、手作業のコマンドおよび実時間クロックプリセットの少なくとも一方により付勢される請求項135記載の方法。
- 前記診断の実行は、
試験されているコンポーネントに信号を送信し、
その信号を受信した後、コンポーネントに関して測定された結果を予想された結果と比較し、
コンポーネントからの結果が予想された結果と一致しない場合には、バックアップ記憶装置中にエラーメッセージを記録するステップを含んでいる請求項135記載の方法。 - さらに、データリクエストに対する応答として、前記処理の結果に関連する情報を送信するステップを含んでいる請求項124記載の方法。
- 前記メモリは固体ディスクメモリである請求項124記載の方法。
- 前記メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの一方に設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項124記載の方法。
- データリクエストを、ホストシステムから、データ操作装置へ送信し、
そのデータ操作装置によって、データリクエストを受信し、
前記データ操作装置の現在のシステム状態にしたがって、前記データ操作装置によりデータリクエストを処理し、
前記データ操作装置によって、データリクエストに対する応答としての結果を、前記ホストシステムヘ送信するステップを含み、
前記データ操作装置はデータ記憶のためのメモリと、メモリのバックアップのためのバックアップ記憶装置を備えており、
メモリとバックアップ記憶装置の両者は低プロフィールフォームファクタのハウジング中に配置されている記憶方法。 - バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中に、一時的なメモリとして使用されることができる請求項141記載の方法。
- 前記データ操作装置はSCSIおよびファイバインターフェースの一つを介して、データリクエストを受信し、SCSIおよびファイバインターフェースは共通の駆動装置を共有する請求項141記載の方法。
- 前記メモリは固体ディスクメモリである請求項141記載の方法。
- 前記メモリは複数のLUN構造を有し、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することが可能である請求項141記載の方法。
- メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項141記載の方法。
- 前記データ操作装置は、条件が満たされるとき、そのバッテリの電力を自動的に放電することができる請求項141記載の方法。
- データ操作装置は、診断ルーチンを実行することができる請求項141記載の方法。
- 診断ルーチン期間中に発生されるエラーメッセージは、バックアップ記憶装置に書込まれる請求項148記載の方法。
- 前記データ操作装置は汎用目的のプロセッサを使用し、商用のオペレーティングシステムは汎用目的のプロセッサで動作される請求項141記載の方法。
- データリクエストを、ホストシステムから、データ操作装置へ送信し、
そのデータ操作装置によって、そのデータリクエストを受信し、
データ操作装置の現在のシステム状態にしたがって、データ操作装置によってデータリクエストを処理し、
データ操作装置によって、データリクエストに対する応答としての結果を、ホストシステムヘ送信するステップを含み、
データ操作装置はデータ記憶のためのメモリと、メモリのバックアップのためのバックアップ記憶装置を備え、
前記メモリは複数のLUN構造を有し、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することが可能である記憶方法。 - 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中に一時的なメモリとして使用されることができる請求項151記載の方法。
- データ操作装置はSCSIとファイバインターフェースの一方を介して、データリクエストを受信し、SCSIとファイバインターフェースは共通の駆動装置を共有している請求項151記載の方法。
- 前記メモリは固体ディスクメモリである請求項151記載の方法。
- 前記メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項151記載の方法。
- データ操作装置は、条件が満たされるとき、そのバッテリの電力を自動的に放電することができる請求項151記載の方法。
- 前記データ操作装置は、診断ルーチンを実行することができる請求項151記載の方法。
- 診断ルーチン期間中に発生されるエラーメッセージは、バックアップ記憶装置に書込まれる請求項157記載の方法。
- 前記データ操作装置は汎用目的のプロセッサを使用している請求項151記載の方法。
- 商用のオペレーティングシステムが配備され、汎用目的のプロセッサで動作される請求項159記載の方法。
- データリクエストを、ホストシステムから、データ操作装置へ送信し、
そのデータ操作装置によって、データリクエストを受信し、
データ操作装置の現在のシステム状態にしたがって、データ操作装置によりそのデータリクエストを処理し、
データ操作装置によって、データリクエストに対する応答としての結果を、ホストシステムヘ送信するステップを含み、
データ操作装置はデータ記憶のためのメモリと、メモリのバックアップのためのバックアップ記憶装置とを備えており、
メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である記憶方法。 - 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中に一時的なメモリとして使用されることができる請求項161記載の方法。
- 前記データ操作装置はSCSIとファイバインターフェースの一つを介して、データリクエストを受信し、SCSIとファイバインターフェースは共通の駆動装置を共有している請求項161記載の方法。
- 前記メモリは固体ディスクメモリである請求項161記載の方法。
- 前記メモリは複数のLUN構造を有し、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することが可能である請求項161記載の方法。
- 前記データ操作装置は、条件が満たされるとき、そのバッテリの電力を自動的に放電することができる請求項161記載の方法。
- 前記データ操作装置は、診断ルーチンを実行することができる請求項161記載の方法。
- 診断ルーチン期間中に発生されるエラーメッセージは、バックアップ記憶装置に書込まれる請求項167記載の方法。
- 前記データ操作装置は汎用目的のプロセッサを使用する請求項161記載の方法。
- 商用のオペレーティングシステムが配備され、汎用目的のプロセッサで動作される請求項169記載の方法。
- データリクエストを、ホストシステムから、データ操作装置へ送信し、
データ操作装置によって、そのデータリクエストを受信し、
データ操作装置の現在のシステム状態を決定し、
現在のシステム状態にしたがって、データ操作装置によってデータリクエストを処理し、
データ操作装置によって、データリクエストに対する応答としての結果を、ホストシステムヘ送信するステップを含み、
前記データ操作装置はデータ記憶のための固体ディスクメモリと、固体ディスクメモリのバックアップのためのバックアップ記憶装置とを備えており、
固体ディスクメモリとバックアップ記憶装置の両者は、低プロフィールのフォームファクタのハウジング中に配置される記憶方法。 - 前記バックアップ記憶装置は、バックアップ記憶装置から固体ディスクメモリへのメモリロード期間中に一時的なメモリとして使用されることができる請求項171記載の方法。
- 前記データ操作装置はSCSIとファイバインターフェースの一方を介して、データリクエストを受信し、SCSIとファイバインターフェースは共通の駆動装置を共有している請求項171記載の方法。
- 前記メモリは複数のLUN構造を有し、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することができる請求項171記載の方法。
- 前記メモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である請求項171記載の方法。
- 前記データ操作装置は、予め定められた条件が満たされるとき、そのバッテリの電力を自動的に放電することができる請求項171記載の方法。
- データ操作装置は、診断ルーチンを実行することができる請求項171記載の方法。
- 診断ルーチン期間中に発生されるエラーメッセージは、バックアップ記憶装置に書込まれる請求項177記載の方法。
- 前記データ操作装置は汎用目的のプロセッサを使用する請求項171記載の方法。
- 商用のオペレーティングシステムが配備され、汎用目的のプロセッサで動作される請求項179記載の方法。
- マスターサーバをスレーブデータ操作装置と接続し、
マスターサーバによって、指定されたタスクを実行するようにスレーブデータ操作装置を付勢するステップを含み、
前記スレーブデータ操作装置は、低プロフィールのフォームファクタのハウジング中に配置され、記憶を行うように構成されているメモリと、そのメモリをバックアップするためのバックアップスペースを提供するように構成されるバックアップ記憶装置とを有しているマスター−スレーブ方法。 - 前記バックアップ記憶装置は、バックアップ記憶装置からメモリへのメモリロード期間中に一時的なメモリとして使用されることができる請求項181記載の方法。
- 前記データ操作装置はSCSIとファイバインターフェースの一方を介してデータリクエストを受信し、SCSIとファイバインターフェースは共通の駆動装置を共有している請求項181記載の方法。
- 前記データ操作装置は、予め定められた条件が満たされるとき、そのバッテリの電力を自動的に放電することができる請求項181記載の方法。
- 前記データ操作装置は、診断ルーチンを実行することができる請求項181記載の方法。
- 診断ルーチン期間中に発生されるエラーメッセージは、バックアップ記憶装置に書込まれる請求項185記載の方法。
- 前記データ操作装置は、商用のオペレーティングシステムを配備している汎用目的のプロセッサを使用する請求項181記載の方法。
- マスターサーバをスレーブデータ操作装置と接続し、
マスターサーバによって、指定されたタスクを実行するようにスレーブデータ操作装置を付勢するステップを含み、
前記スレーブデータ操作装置は、データの記憶を行うように構成されているメモリを有し、そのメモリは複数のLUN構造を有し、それぞれ少なくとも2つの異なるブロックサイズのデータを記憶することができるマスター−スレーブ方法。 - マスターサーバをスレーブデータ操作装置と接続し、
マスターサーバによって、指定されたタスクを実行するようにスレーブデータ操作装置を付勢するステップを含み、
前記スレーブデータ操作装置は、データの記憶を行うように構成されているメモリを有し、そのメモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能であるマスター−スレーブ方法。 - マスターサーバをスレーブデータ操作装置と接続し、
マスターサーバによって、指定されたタスクを実行するようにスレーブデータ操作装置を付勢するステップを含み、
前記スレーブデータ操作装置は、低プロフィールフォームファクタのハウジング中に配置され、データ記憶を行うように構成されている固体ディスクメモリと、固体ディスクメモリをバックアップするためのバックアップスペースを提供するように構成されるバックアップ記憶装置とを有しているマスター−スレーブ方法。 - データ操作装置によって、データを受信し、
受信されたデータを処理し、
前記解析および/またはデータからの結果をネットワークノードに送信するステップを含み、
前記データ操作装置は、低プロフィールフォームファクタのハウジング中に配置され、データ記憶を行うように構成されているメモリと、そのメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有している方法。 - ネットワークノードはネットワークスイッチを含んでいる請求項191記載の方法。
- ネットワークノードはルータを含んでいる請求項191記載の方法。
- データ操作装置によって、データを受信し、
受信されたデータを処理し、
解析および/またはデータからの結果をネットワークノードに送信するステップを含み、
メモリはデータ記憶を行うように構成されているメモリを有し、そのメモリは複数のLUN構造を有し、そのそれぞれは2以上の異なるブロックサイズのデータを記憶することができるように構成されている方法。 - データ操作装置によって、データを受信し、
受信されたデータを処理し、
前記解析および/またはデータからの結果をネットワークノードに送信するステップを含み、
データ操作装置はデータ記憶を行うように構成されているメモリを有し、そのメモリは複数のメモリ部分を有し、各メモリ部分はスリープモードと、ウェイクアップモードの1つに設定されることができ、スリープモード下では、メモリ部分は低電力消費状態であり、アクセス可能ではなく、ウェイクアップモード下では、メモリ部分はアクセス可能である方法。 - データ操作装置によって、データを受信し、
受信されたデータを処理し、
前記解析および/またはデータからの結果をネットワークノードに送信するステップを含み、
データ操作装置は、低プロフィールフォームファクタのハウジング中に配置され、データ記憶を行うように構成されている固体ディスクメモリと、固体ディスクメモリをバックアップするためのバックアップスペースを提供するように構成されているバックアップ記憶装置とを有している方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US54811004P | 2004-02-27 | 2004-02-27 | |
PCT/US2005/006008 WO2005084218A2 (en) | 2004-02-27 | 2005-02-25 | System and method for data manipulation |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007525771A true JP2007525771A (ja) | 2007-09-06 |
Family
ID=34919335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007500989A Withdrawn JP2007525771A (ja) | 2004-02-27 | 2005-02-25 | データ操作のためのシステム及び方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20080178025A1 (ja) |
EP (1) | EP1725940A4 (ja) |
JP (1) | JP2007525771A (ja) |
CA (1) | CA2557641A1 (ja) |
WO (1) | WO2005084218A2 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101288970B1 (ko) * | 2006-11-28 | 2013-07-24 | 삼성전자주식회사 | 렌더링 장치 및 방법 |
US7769972B2 (en) | 2007-01-18 | 2010-08-03 | Lsi Corporation | Storage system management based on a backup and recovery solution embedded in the storage system |
US8295178B2 (en) * | 2008-05-19 | 2012-10-23 | Solarwinds Worldwide Llc | Manual configuration for sites that cannot give read/write credentials to a voice over internet protocol (VOIP) monitor |
US8595572B2 (en) | 2009-04-08 | 2013-11-26 | Google Inc. | Data storage device with metadata command |
US20100262773A1 (en) * | 2009-04-08 | 2010-10-14 | Google Inc. | Data striping in a flash memory data storage device |
EP2366148B1 (en) | 2009-04-21 | 2013-06-12 | International Business Machines Corporation | Apparatus and method for controlling a solid state disk ( ssd ) device |
US8423724B2 (en) * | 2010-09-08 | 2013-04-16 | Smart Modular Technologies, Inc. | Dynamic back-up storage system with rapid restore and method of operation thereof |
USD637192S1 (en) | 2010-10-18 | 2011-05-03 | Apple Inc. | Electronic device |
US8738843B2 (en) | 2010-12-20 | 2014-05-27 | Lsi Corporation | Data manipulation during memory backup |
JP5697195B2 (ja) * | 2010-12-24 | 2015-04-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | アクセス予測に基づいてテーブルのミラーリングを制御する管理システム、プログラムおよび方法 |
KR20140064788A (ko) | 2011-07-25 | 2014-05-28 | 서버지, 아이엔씨. | 저전력 컴퓨터 시스템을 구축하기 위한 방법 및 시스템 |
EP2581850B1 (en) * | 2011-10-11 | 2018-12-12 | OCT Circuit Technologies International Limited | Increased flexibility of security framework during low power modes management |
US9239887B2 (en) * | 2012-12-18 | 2016-01-19 | Cisco Technology, Inc. | Automatic correlation of dynamic system events within computing devices |
US9336313B1 (en) * | 2013-07-24 | 2016-05-10 | NXGN Data, Inc. | Systems and methods for performing single and multi threaded searches and complex pattern matching in a solid state drive |
US9336135B1 (en) * | 2013-07-24 | 2016-05-10 | NXGN Data, Inc. | Systems and methods for performing search and complex pattern matching in a solid state drive |
US10587689B2 (en) * | 2014-02-14 | 2020-03-10 | Western Digital Technologies, Inc. | Data storage device with embedded software |
KR101758558B1 (ko) * | 2016-03-29 | 2017-07-26 | 엘에스산전 주식회사 | 에너지 관리 서버 및 그를 갖는 에너지 관리 시스템 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US723701A (en) * | 1902-03-22 | 1903-03-24 | Matthias Messner | Shell for mouth-harmonicas. |
US3703710A (en) * | 1970-01-05 | 1972-11-21 | Hitachi Ltd | Semiconductor memory |
US5036493A (en) * | 1990-03-15 | 1991-07-30 | Digital Equipment Corporation | System and method for reducing power usage by multiple memory modules |
US5499337A (en) * | 1991-09-27 | 1996-03-12 | Emc Corporation | Storage device array architecture with solid-state redundancy unit |
US5420998A (en) * | 1992-04-10 | 1995-05-30 | Fujitsu Limited | Dual memory disk drive |
US5459742A (en) * | 1992-06-11 | 1995-10-17 | Quantum Corporation | Solid state disk memory using storage devices with defects |
US5404508A (en) * | 1992-12-03 | 1995-04-04 | Unisys Corporation | Data base backup and recovery system and method |
JP3264465B2 (ja) * | 1993-06-30 | 2002-03-11 | 株式会社日立製作所 | 記憶システム |
US5535399A (en) * | 1993-09-30 | 1996-07-09 | Quantum Corporation | Solid state disk drive unit having on-board backup non-volatile memory |
JP3188071B2 (ja) * | 1993-10-14 | 2001-07-16 | 富士通株式会社 | ディスクキャッシュ装置 |
US5884093A (en) * | 1994-09-02 | 1999-03-16 | Rock Solid Systems, Inc. | Hard disk cache for CD-ROM and other slow access time devices |
US5878240A (en) * | 1995-05-11 | 1999-03-02 | Lucent Technologies, Inc. | System and method for providing high speed memory access in a multiprocessor, multimemory environment |
JPH0934805A (ja) * | 1995-07-20 | 1997-02-07 | Toshiba Corp | 半導体ディスク装置 |
JP3477689B2 (ja) * | 1995-12-07 | 2003-12-10 | 株式会社日立製作所 | 磁気ディスク制御装置 |
US5805787A (en) * | 1995-12-29 | 1998-09-08 | Emc Corporation | Disk based disk cache interfacing system and method |
JP3180063B2 (ja) * | 1997-08-26 | 2001-06-25 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | ディスク・ドライブ装置及びこれの制御方法 |
US6493804B1 (en) * | 1997-10-01 | 2002-12-10 | Regents Of The University Of Minnesota | Global file system and data storage device locks |
US5835435A (en) * | 1997-12-02 | 1998-11-10 | Intel Corporation | Method and apparatus for dynamically placing portions of a memory in a reduced power consumtion state |
US6567889B1 (en) * | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
KR19990060338A (ko) * | 1997-12-31 | 1999-07-26 | 윤종용 | 하드 디스크 드라이브의 바이러스에 의한 손상 데이터복구방법 |
US6467022B1 (en) * | 1998-04-16 | 2002-10-15 | International Business Machines Corporation | Extending adapter memory with solid state disks in JBOD and RAID environments |
JP3734620B2 (ja) * | 1998-06-24 | 2006-01-11 | 沖電気工業株式会社 | 半導体ディスク装置 |
US6324620B1 (en) * | 1998-07-23 | 2001-11-27 | International Business Machines Corporation | Dynamic DASD data management and partitioning based on access frequency utilization and capacity |
US6484290B1 (en) * | 1999-11-03 | 2002-11-19 | Feiya Technology Corp. | IC package similar IDE interface solid state disk module and optimized pin design |
EP1128267A1 (en) * | 2000-02-25 | 2001-08-29 | Hewlett-Packard Company, A Delaware Corporation | Disk storage system having redundant solid state data storage devices |
US7177798B2 (en) * | 2000-04-07 | 2007-02-13 | Rensselaer Polytechnic Institute | Natural language interface using constrained intermediate dictionary of results |
JP3734146B2 (ja) * | 2000-08-07 | 2006-01-11 | 光洋器材株式会社 | ボード用アンカー |
US6965403B2 (en) * | 2000-10-16 | 2005-11-15 | Canon Kabushiki Kaisha | External storage device for image pickup apparatus, control method therefor, image pickup apparatus and control method therefor |
US20020112116A1 (en) * | 2000-11-17 | 2002-08-15 | Nelson Mark Edward | Methods, systems, and computer program products for storing data in collections of tagged data pieces |
US7136883B2 (en) * | 2001-09-08 | 2006-11-14 | Siemens Medial Solutions Health Services Corporation | System for managing object storage and retrieval in partitioned storage media |
US7149846B2 (en) * | 2002-04-17 | 2006-12-12 | Lsi Logic Corporation | RAID protected external secondary memory |
US20030225966A1 (en) * | 2002-05-31 | 2003-12-04 | Jorgen Frandsen | Serverless network data storage operation managed by peripheral device |
JP3578153B2 (ja) * | 2002-05-31 | 2004-10-20 | ブラザー工業株式会社 | 情報処理装置、プログラム、記録媒体、及びインストール状況表示方法 |
US20040002958A1 (en) * | 2002-06-26 | 2004-01-01 | Praveen Seshadri | System and method for providing notification(s) |
US7237021B2 (en) * | 2003-04-04 | 2007-06-26 | Bluearc Uk Limited | Network-attached storage system, device, and method supporting multiple storage device types |
US7216222B2 (en) * | 2003-10-30 | 2007-05-08 | Texas Memory Systems, Inc. | System and method for writing data from a storage means to a memory module in a solid state disk system |
EP1538630A1 (en) * | 2003-11-18 | 2005-06-08 | Buffalo Inc. | Memory module and memory-assist module |
US7062624B2 (en) * | 2004-09-29 | 2006-06-13 | Hitachi, Ltd. | Method for managing volume groups considering storage tiers |
-
2005
- 2005-02-25 CA CA002557641A patent/CA2557641A1/en not_active Abandoned
- 2005-02-25 EP EP05723746A patent/EP1725940A4/en not_active Withdrawn
- 2005-02-25 WO PCT/US2005/006008 patent/WO2005084218A2/en active Application Filing
- 2005-02-25 JP JP2007500989A patent/JP2007525771A/ja not_active Withdrawn
-
2006
- 2006-08-28 US US11/510,642 patent/US20080178025A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20080178025A1 (en) | 2008-07-24 |
EP1725940A2 (en) | 2006-11-29 |
WO2005084218A3 (en) | 2006-08-03 |
EP1725940A4 (en) | 2009-05-06 |
WO2005084218A2 (en) | 2005-09-15 |
CA2557641A1 (en) | 2005-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007525771A (ja) | データ操作のためのシステム及び方法 | |
CN101571815B (zh) | 信息系统及i/o处理方法 | |
CN1971497B (zh) | 主机端为sas接口的冗余储存虚拟化子系统及其系统 | |
US6493811B1 (en) | Intelligent controller accessed through addressable virtual space | |
US6957313B2 (en) | Memory matrix and method of operating the same | |
EP2035933B1 (en) | Generating storage system commands | |
US7523253B2 (en) | Storage system comprising a plurality of tape media one of which corresponding to a virtual disk | |
JP4555036B2 (ja) | ストレージ装置及びストレージ装置のデバイス切替制御方法 | |
US20090150629A1 (en) | Storage management device, storage system control device, storage medium storing storage management program, and storage system | |
US20050050401A1 (en) | Disk array system and fault information control method | |
US8131957B2 (en) | Splitting writes between a storage controller and replication engine | |
US10620841B2 (en) | Transfer of object memory references in a data storage device | |
CN102024044A (zh) | 分布式文件系统 | |
US9690506B2 (en) | Virtual tape library | |
US7237056B2 (en) | Tape mirror interface | |
JP6455382B2 (ja) | 制御装置および制御プログラム | |
JP4469829B2 (ja) | ブロックデバイス制御装置及びプログラム | |
US8949383B1 (en) | Volume hierarchy download in a storage area network | |
Herminghaus et al. | Storage Management in Data Centers: Understanding, Exploiting, Tuning, and Troubleshooting Veritas Storage Foundation | |
Scriba et al. | Disk and Storage System Basics | |
US11068172B1 (en) | Optimizing parallel data replication spanning physical storage devices | |
Shu et al. | Design and Implementation of a Non-volatile RAM Disk in the SAN Environment | |
JP2008016028A (ja) | 広域複製を持つ分散記憶システム | |
JP2004078993A (ja) | 複合計算機システムおよび複合i/oシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080129 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20100518 |