JP2010534873A - 不揮発性メモリストレージ装置と通信する方法およびシステム - Google Patents

不揮発性メモリストレージ装置と通信する方法およびシステム Download PDF

Info

Publication number
JP2010534873A
JP2010534873A JP2010515224A JP2010515224A JP2010534873A JP 2010534873 A JP2010534873 A JP 2010534873A JP 2010515224 A JP2010515224 A JP 2010515224A JP 2010515224 A JP2010515224 A JP 2010515224A JP 2010534873 A JP2010534873 A JP 2010534873A
Authority
JP
Japan
Prior art keywords
storage device
command
analysis module
host system
command analysis
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.)
Granted
Application number
JP2010515224A
Other languages
English (en)
Other versions
JP5416697B2 (ja
Inventor
ケント タニック,ハルク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SanDisk Corp
Original Assignee
SanDisk Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US11/771,165 external-priority patent/US8433842B2/en
Priority claimed from US11/771,203 external-priority patent/US8429328B2/en
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of JP2010534873A publication Critical patent/JP2010534873A/ja
Application granted granted Critical
Publication of JP5416697B2 publication Critical patent/JP5416697B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4239Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • G06F12/0661Configuration or reconfiguration with centralised address assignment and decentralised selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/17Embedded application
    • G06F2212/177Smart card

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

ストレージ装置のための方法およびシステムが提供される。一方法は、ストレージ装置のコマンド解析モジュールにより、ホストシステムからのコマンドを解釈することと、ホストシステムと連携するコマンド解析モジュールにより、操作に関する情報をコマンドから抽出することとを含む。

Description

本発明は、不揮発性メモリストレージ装置に関し、より具体的には不揮発性メモリストレージ装置との通信に関する。
関連出願の相互参照
本願は、その全体が本願明細書において参照により援用されている、2007年6月29日に出願された米国特許出願第11/771,203号(特許文献1)と2007年6月29日に出願された米国特許出願第11/771,165号(特許文献2)の利益を主張する。
情報の蓄積にあたって、不揮発性メモリストレージ装置が一般的に利用されている。これらの装置は携帯電話機、デジタルカメラ、デスクトップコンピュータ、ラップトップコンピュータ、およびその他の類似のシステムで使われている(本願明細書では合同的かつ互換的に「ホストシステム」または「ホスト」と呼ぶ)。
各種のホストシステムプラットフォームではソフトウェア層(ソフトウェア開発キット(SDK)層と呼ばれることもある)を使用し、不揮発性メモリスストレージデバイスドライバを介して不揮発性メモリストレージ装置と通信する。不揮発性メモリストレージ装置のさらなる機能にアクセスするため、ホストシステムにSDK層を追加することもあり、これにより、これらのSDK層なしでは利用できない不揮発性メモリストレージ装置のさらなる機能にアクセスすることができる。異なるホストシステム提供業者へのSDK移植は厄介であり、これを軽減することが望まれる。
米国特許出願第11/771,203号 米国特許出願第11/771,165号
一実施形態において、ストレージ装置のための方法が提供される。この方法は、ストレージ装置のコマンド解析モジュールにより、ホストシステムからのコマンドを解釈することと、コマンド解析モジュールにより、操作に関する情報をコマンドから抽出することとを含む。
別の実施形態において、ストレージ装置のための方法が提供される。この方法は、ストレージ装置により、ホストシステムからプラットフォーム独立形式コマンドを受信することと、ストレージ装置のコマンド解析モジュールにより、コマンドを解釈することと、コマンド解析モジュールにより、操作に関する情報をコマンドから抽出することと、ストレージ装置によって操作が実行された後、コマンド解析モジュールにより、ホストシステムへ応答を送信することとを含む。
さらに別の実施形態において、ストレージ装置のための方法が提供される。この方法は、ストレージ装置により、ホストシステムからプラットフォーム独立形式コマンドを受信することと、ストレージ装置のファームウェアコードにより、コマンドにて操作指令の有無を検出することと、コマンド解析モジュールにより、操作に関する情報をコマンドから抽出することと、ストレージ装置によって操作が実行された後、コマンド解析モジュールにより、ホストシステムへ応答を送信することとを含む。
一実施形態において、ストレージ装置が提供される。このストレージ装置は、ホストシステムからのプラットフォーム独立形式コマンドを解釈し、かつ操作に関する情報をコマンドから抽出する、コマンド解析モジュールを含み、このコマンド解析モジュールはホストシステムと連携する。
別の実施形態において、ストレージ装置が提供される。このストレージ装置は、ホストシステムからプラットフォーム独立形式コマンドを受信し、コマンドを解釈し、操作に関する情報をコマンドから抽出し、かつストレージ装置によって操作が実行された後にホストシステムへ応答を送信する、コマンド解析モジュールを含む。
さらに別の実施形態において、ストレージ装置が提供される。このストレージ装置は、ホストシステムからプラットフォーム独立形式コマンドを受信し、ストレージ装置のファームウェアコードがコマンドにて操作指令の有無を検出した後に操作に関する情報をコマンドから抽出し、かつストレージ装置によって操作が実行された後にホストシステムへ応答を送信する、コマンド解析モジュールを含む。
この簡単な概要は、説明の本質を速やかに理解できるように提供されたものである。この後に続く好適な実施形態の詳細な説明を添付の図面と併せて参照することにより、より完全に説明を理解することができる。
これより種々の実施形態の図面を参照しながら前述した特徴とその他の特徴を説明する。図面において、同じ構成要素には同じ参照符号を付す。図に示された実施形態は、説明を制限することではなく図解することを目的とする。図面は以下の図を含む。
不揮発性メモリ装置へ機能的に結合するホストシステムのブロック図を示す。 不揮発性メモリ装置用メモリコントローラのブロック図の一例を示す。 不揮発性メモリ装置との通信に用いる典型的なソフトウェアアーキテクチャのブロック図を示す。 一実施形態に従い、コマンド解析モジュールを備えるシステムのブロック図を示す。 一実施形態に従い、不揮発性メモリ装置と通信するプロセスの流れ図を示す。 一実施形態に従い、不揮発性メモリ装置と通信するプロセスおよびシステムの一例を示す。
種々の実施形態の理解を助けるため、計算システムと不揮発性メモリストレージ装置の一般的なアーキテクチャおよび動作を先に説明する。次に、一般的なアーキテクチャを参照しながら具合的なアーキテクチャおよび動作を説明する。
図1Aは、システムバス105へ接続された中央処理装置(「CPU」)(またはマイクロプロセッサ、またはプロセッサ)101を含む典型的なホストシステム100のブロック図を示す。システムバス105へ結合されたランダムアクセスメインメモリ(「RAM」)103は、メモリストレージへのアクセスをCPU101に提供する。CPU101はプログラム命令を実行するときに処理ステップをRAM103に蓄積し、蓄積された処理ステップをRAM103から実行する。
ホストシステム100は、ネットワークインターフェイス104経由でコンピュータネットワーク(図示せず)へ接続する。インターネットはこのようなネットワークの1つであり、ホストシステム100はインターネットからアプリケーション、コード、文書等の電子情報をダウンロードできる。
起動命令シーケンスや基本入出力操作システム(BIOS)シーケンス等、一定の命令シーケンスを蓄積するため、読み出し専用メモリ(「ROM」)102を設ける。
キーボード、キーパッド、ポインティングデバイス(「マウス」)、モニタ、モデム等の入出力(「I/O」)装置106も設ける。
ホストシステム100と結合する不揮発性メモリストレージ装置111は、コントローラモジュール108(「メモリコントローラ」または「コントローラ」と呼ばれることもある)とソリッドステートメモリモジュール109〜110(メモリモジュール#1およびメモリモジュール#Nと図に示されている)とを含む。コントローラモジュール108はバスインターフェイス107を介して、あるいはシステムバス105を介して直接的に、あるいは他の何らかの周辺バス(図示せず)を介して、ホストプロセッサ101と連携する。
不揮発性メモリストレージ装置111は、一実施形態において、フラッシュメモリ装置(またはカード)であってもよい。コンパクトフラッシュ(CF)、マルチメディアカード(MMC)、セキュアデジタル(SD)、ミニSD、メモリスティック、スマートメディア、トランスフラッシュ等、現在様々なフラッシュメモリカードが数多く市販されている。これらのカードはいずれも規格化された仕様(例えば、その全体が本願明細書において参照により援用されているユニバーサルシリアルバス(USB)仕様に基づくインターフェイス)に基づく特有の機械的および/または電気的インターフェイス(あるいは無線インターフェイス等、タイプの異なる何らかのインターフェイス)を有するが、それぞれに内蔵されたフラッシュメモリはよく似ている。これらのカードはいずれも、本件出願人にあたるサンディスク コーポレイションより入手できる。
サンディスク コーポレイションはまた、そのCruzerという商標のもとで一連のフラッシュドライブを提供している。これはユニバーサルシリアルバス(USB)プラグを有する小型の手持ち型メモリシステムであって、ホストシステムとの接続にあたってこのプラグをホストのUSB差込口に差し込む。これらのメモリカードとフラッシュドライブはコントローラを内蔵し、このコントローラがホストシステムと連携して、ホストシステムに内蔵されたフラッシュメモリの動作を制御する。
このようなメモリカードとフラッシュドライブを使用するホストシステム(100等)は数多くあり、様々である。例えば、パーソナルコンピュータ(PC)、ラップトップをはじめとするポータブルコンピュータ、携帯電話機、個人用携帯情報端末(PDA)、デジタル静止画カメラ、デジタル動画カメラ、ポータブルオーディオプレイヤ等を挙げることができる。ホストは通常ならば1種類以上のメモリカードまたはフラッシュドライブに対応する差込口を内蔵するが、メモリカードを差し込むアダプタが必要なものもある。
図1Bは、コントローラモジュール108の内部アーキテクチャのブロック図を示す。コントローラモジュール108はマイクロコントローラ114を含み、マイクロコントローラは、インターフェイスロジック116を通じて他の様々なコンポーネントと連携する。メモリ115には、マイクロコントローラ114が不揮発性メモリストレージ装置111の動作を制御するためのファームウェアおよびソフトウェア命令が蓄積される。メモリ115は、揮発性の再プログラム可能なランダムアクセスメモリ(「RAM」)か、再プログラム不可能な不揮発性メモリ(「ROM」)か、一度だけプログラム可能なメモリか、再プログラム可能なフラッシュ形式の電気的に消去可能でプログラム可能な読み出し専用メモリ(「EEPROM」)であってもよい。
ホストインターフェイス113はホストシステム100と連携し、メモリインターフェイス112はメモリモジュール109〜110と連携する。
図1Cは、ストレージデバイスドライバ121とSDK層118とを用いて不揮発性メモリストレージ装置111と通信する従来型オペレーティングシステムの最上位ブロック図を示す。ソフトウェアアプリケーション117はホストシステム100によって実行され、不揮発性メモリストレージ装置111に蓄積された情報を読み出すコマンドか、不揮発性メモリストレージ装置111で情報を書き込むコマンドか、他の何らかの機能を遂行するコマンドを送信する。これらの操作はファームウェア命令119を実行するマイクロコントローラ114によって遂行される。
ホストシステム100には、不揮発性メモリストレージ装置111へのアクセスにあたってSDK層118が必要になることがある。使用するオペレーティングシステムはホストシステム100によって異なるため、バージョンが異なるSDK層118が必要になる。これはストレージ装置の提供業者にとって厄介であり、不揮発性メモリストレージ装置111を使用するユーザにも支障をきたすことがある。
一実施形態において、不揮発性メモリストレージ装置111AへのアクセスにあたってSDK層118が不要か、パーシャルSDK層120(SDK層118の薄バージョン)(「薄SDK層」と呼ぶ)を使用する、簡略されたアーキテクチャが提供される。図1Dは、プラットフォームに依存しない形式で不揮発性メモリストレージ装置111Aと通信する最上位アーキテクチャのブロック図を示す。不揮発性メモリストレージ装置111Aは、不揮発性メモリストレージ装置111の全コンポーネントを含むほか、後述する、ホストシステム100と連携するコマンド解析モジュール122を含む。
コマンド解析モジュール122は、ホストシステム100からストレージドライバ121と薄SDK層120とを通じて送信されるコマンドを解析する。これらのコマンドは汎用形式をとるため、ホストシステムごとに別々のSDK層118を用意する必要はない。
コマンド解析モジュール122は、一実施形態において、XMLパーサである。XMLは、その全体が本願明細書において参照により援用されているW3Cコンソーシアムによって定義される標準マークアップ言語(拡張マークアップ言語(Extensible Markup language))の略である。XMLは普及しつつあるテキスト方式のマークアップ言語である。HTML(ハイパーテキストマークアップ言語)と同様に、データはタグ(山括弧で括られた識別子<...>等)を用いて識別する。これらのタグはいずれも「マークアップ」と呼ばれている。しかし、HTMLと違ってXMLのタグはデータ表示のあり方を指定するのではなく、データを識別するものである。HTMLのタグは「このデータを太字フォントで表示」(<b>...</b>)と指定するが、XMLのタグは、プログラムにおけるフィールド名のような働きをする。XMLのタグはアプリケーションのタイプに応じてカスタマイズできる。この実施形態のコマンド解析モジュール122は、ホストシステム100からXMLタグ(コマンド)を受信し、解釈できる。
パーシャルSDK層120とコマンド解析モジュール122との間では、読み出し、書き込み、削除、ディレクトリ作成コマンド等、種々のファイルシステムコマンドに対応するXMLタグが規定されている。ホストシステム100によって送信されるXMLタグは、ディレクトリ作成、データ書き込み、データ読み出し等、複数の操作の実行命令を含むことがある。操作の実行にあたって、コマンド解析モジュール122が操作に関する情報を抽出し、不揮発性メモリストレージ装置111Aの適当なコンポーネント/モジュール(マイクロコントローラ114等)に通知する。
図2は、薄SDK層120を使用するか、SDK層118を使用せずに不揮発性メモリストレージ装置111Aと通信するプロセスの流れ図を示す。このプロセスは、ホストシステム100が不揮発性メモリストレージ装置111Aへクエリコマンドを送信するステップS200で始まる。ステップS202では、不揮発性メモリストレージ装置111Aでサポートされた機能に関する情報が不揮発性メモリストレージ装置111Aから送信される。
ステップS204では、ホストシステム100がプラットフォーム独立形式のコマンドを送信する。プラットフォーム独立形式とは、コマンドの形式がホストシステム100のオペレーティングシステム/環境に左右されないことを意味する。例えば、XML等がプラットフォーム独立形式にあたる。
コマンド解析モジュール122は、ステップS206でコマンド(またはタグ)を解析し、ホストシステム100が要望する任意の操作について情報を抽出する。1つのタグに複数の操作の情報を入れることもできる。コマンド解析モジュール122は、操作を実行すべきモジュールに通知する。
ステップS208では操作が実行され、ホストシステム100が応答を望む場合には、コマンド解析モジュール122がホストシステム100に応答を送り返す。
以下、一実施形態に従いXMLタグを使用する一例を紹介する。この例のホストシステムはディレクトリ作成コマンドを送信してもよい。以下に記された斜体のテキストは、この操作の実行に用いられるXMLタグを示す。タグ「Path」にはディレクトリ名が入り、ホストがステータスを知りたい場合には、タグ「RetStatus」に操作の「リターンステータス」が蓄積される。以下、ディレクトリを作成するためのXMLタグを示す。
<FileSystemOperation>
<OpType>CreateDirectory</OpType>
<Parameters>
<Path>”0:\\MyDir\\MyMusic”</Path>
</Parameters>
<RetStatus></RetStatus>
</FileSystemOperation>
図3は、図2の処理ステップを使用する一例を示す。この例のホストシステム100は携帯電話機である。例えば、ホストシステム100は、ディレクトリを作成するためのXMLタグ(例えば、パケット/ファイル「write SNDK.XML」)を用意する。このXMLタグは、ファイルシステムオペレーションによって識別される。不揮発性メモリストレージ装置111Aは、XMLタグで指定された操作をサポートしない場合には、その旨を伝える応答(またはステータス)「Interface_Not_Supported」を返すことができる。
ファームウェア119は、タグの書き込みに先立ちXMLタグで操作指令の有無を判断する。これは、ファームウェア119がファイルシステム操作を識別するために使用可能な特別な識別子を使用することにより達成され得る。
コマンド解析モジュール122はXMLパケットを傍受し、要求された操作を実行するため、適当なモジュールに通知する。操作が実行された後にはコマンド解析モジュール122がホストシステム100へステータスXMLパケットを送信する。
ホストシステム100は、操作ステータスのチェックを望む場合にタグを読み返すことができる。例えば、図3では、「0:\\myDir\\MyMusic」作成の結果として「SD_SUCCESS」が返っている。
一実施形態において、不揮発性メモリストレージ装置と通信しその機能にアクセスするにあたって、パーシャルSDK層が必要となる場合と、SDK層が不要となる場合とがある。
前述した実施形態の説明では不揮発性メモリストレージ装置が使われているが、ハードディスクやテープドライブ、またはその他の種類のホストシステムとの連携にあたってメモリコントローラや状態マシン等のハードウェア/ソフトウェアを使用するストレージ装置等、いかなるタイプのストレージ装置であっても前述した実施形態を実装できることに留意するべきである。
現時点で好適な実施形態と考えられるものについて説明が記されているが、この説明が前述したものに限定されないことが理解できるはずである。反対に、本願の説明は様々な修正および等価構成を添付の特許請求の範囲の精神および範囲内に含めることを目的とする。

Claims (40)

  1. ストレージ装置のための方法あって、
    前記ストレージ装置により、ホストシステムからプラットフォーム独立形式コマンドを受信するステップと、
    前記ストレージ装置のコマンド解析モジュールにより、前記コマンドを解釈するステップと、
    前記コマンド解析モジュールにより、操作に関する情報を前記コマンドから抽出するステップと、
    前記ストレージ装置によって前記操作が実行された後、前記コマンド解析モジュールにより、前記ホストシステムへ応答を送信するステップと、
    を含む方法。
  2. 請求項1記載の方法において、
    前記コマンドには複数の操作に関する情報が埋め込まれる方法。
  3. 請求項1記載の方法において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供する方法。
  4. 請求項3記載の方法において、
    前記モジュールは、マイクロコントローラである方法。
  5. 請求項1記載の方法において、
    前記コマンド解析モジュールは、XMLパーサである方法。
  6. 請求項1記載の方法において、
    前記ストレージ装置は、不揮発性メモリストレージ装置である方法。
  7. ストレージ装置のための方法であって、
    前記ストレージ装置により、ホストシステムからプラットフォーム独立形式コマンドを受信するステップと、
    前記ストレージ装置のファームウェアコードにより、前記コマンドにて操作指令の有無を検出するステップと、
    コマンド解析モジュールにより、操作に関する情報を前記コマンドから抽出するステップと、
    前記ストレージ装置によって前記操作が実行された後、前記コマンド解析モジュールにより、前記ホストシステムへ応答を送信するステップと、
    を含む方法。
  8. 請求項7記載の方法において、
    前記コマンドには複数の操作に関する情報が埋め込まれる方法。
  9. 請求項7記載の方法において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供する方法。
  10. 請求項9記載の方法において、
    前記モジュールは、マイクロコントローラである方法。
  11. 請求項7記載の方法において、
    前記コマンド解析モジュールは、XMLパーサである方法。
  12. 請求項7記載の方法において、
    前記ストレージ装置は、不揮発性メモリストレージ装置である方法。
  13. 請求項7記載の方法において、
    前記コマンド解析モジュールは、パーシャルソフトウェア層を介して前記ホストシステムと連携する方法。
  14. ストレージ装置のための方法であって、
    前記ストレージ装置のコマンド解析モジュールにより、ホストシステムからのプラットフォーム独立形式コマンドを解釈するステップと、
    前記ホストシステムと連携する前記コマンド解析モジュールにより、操作に関する情報を前記コマンドから抽出するステップと、
    を含む方法。
  15. 請求項14記載の方法において、
    前記コマンドには複数の操作に関する情報が埋め込まれる方法。
  16. 請求項14記載の方法において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供する方法。
  17. 請求項16記載の方法において、
    前記モジュールは、マイクロコントローラである方法。
  18. 請求項14記載の方法において、
    前記コマンド解析モジュールは、XMLパーサである方法。
  19. 請求項14記載の方法において、
    前記ストレージ装置は、不揮発性メモリストレージ装置である方法。
  20. 請求項14記載の方法において、
    前記コマンド解析モジュールは、パーシャルソフトウェア層を介して前記ホストシステムと連携する方法。
  21. ストレージ装置であって、
    ホストシステムからプラットフォーム独立形式コマンドを受信し、前記コマンドを解釈し、操作に関する情報を前記コマンドから抽出し、かつ前記ストレージ装置によって前記操作が実行された後に前記ホストシステムへ応答を送信するためのコマンド解析モジュールを備えるストレージ装置。
  22. 請求項21記載のストレージ装置において、
    前記コマンドには複数の操作に関する情報が埋め込まれるストレージ装置。
  23. 請求項21記載のストレージ装置において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供するストレージ装置。
  24. 請求項23記載のストレージ装置において、
    前記モジュールは、マイクロコントローラであるストレージ装置。
  25. 請求項21記載のストレージ装置において、
    前記コマンド解析モジュールは、XMLパーサであるストレージ装置。
  26. 請求項21記載のストレージ装置において、
    前記ストレージ装置は、不揮発性メモリストレージ装置であるストレージ装置。
  27. ストレージ装置であって、
    ホストシステムからプラットフォーム独立形式コマンドを受信し、前記ストレージ装置のファームウェアコードが前記コマンドにて操作指令の有無を検出した後に操作に関する情報を前記コマンドから抽出し、かつ前記ストレージ装置によって前記操作が実行された後に前記ホストシステムへ応答を送信するためのコマンド解析モジュールを備えるストレージ装置。
  28. 請求項27記載のストレージ装置において、
    前記コマンドには複数の操作に関する情報が埋め込まれるストレージ装置。
  29. 請求項27記載のストレージ装置において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供するストレージ装置。
  30. 請求項29記載のストレージ装置において、
    前記モジュールは、マイクロコントローラであるストレージ装置。
  31. 請求項27記載のストレージ装置において、
    前記コマンド解析モジュールは、XMLパーサであるストレージ装置。
  32. 請求項27記載のストレージ装置において、
    前記ストレージ装置は、不揮発性メモリストレージ装置であるストレージ装置。
  33. 請求項27記載のストレージ装置において、
    前記コマンド解析モジュールは、パーシャルソフトウェア層を介して前記ホストシステムと連携するストレージ装置。
  34. ストレージ装置であって、
    ホストシステムからのプラットフォーム独立形式コマンドを解釈し、かつ操作に関する情報を前記コマンドから抽出するためのコマンド解析モジュールを備え、前記コマンド解析モジュールは前記ホストシステムと連携するストレージ装置。
  35. 請求項34記載のストレージ装置において、
    前記コマンドには複数の操作に関する情報が埋め込まれるストレージ装置。
  36. 請求項34記載のストレージ装置において、
    前記コマンド解析モジュールは、前記操作に関する情報を前記ストレージ装置のモジュールに提供するストレージ装置。
  37. 請求項36記載のストレージ装置において、
    前記モジュールは、マイクロコントローラであるストレージ装置。
  38. 請求項34記載のストレージ装置において、
    前記コマンド解析モジュールは、XMLパーサであるストレージ装置。
  39. 請求項34記載のストレージ装置において、
    前記ストレージ装置は、不揮発性メモリストレージ装置であるストレージ装置。
  40. 請求項34記載のストレージ装置において、
    前記コマンド解析モジュールは、パーシャルソフトウェア層を介して前記ホストシステムと連携するストレージ装置。
JP2010515224A 2007-06-29 2008-06-30 不揮発性メモリストレージ装置と通信する方法およびシステム Expired - Fee Related JP5416697B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/771,165 US8433842B2 (en) 2007-06-29 2007-06-29 Method for communicating with a non-volatile memory storage device
US11/771,165 2007-06-29
US11/771,203 US8429328B2 (en) 2007-06-29 2007-06-29 System for communicating with a non-volatile memory storage device
US11/771,203 2007-06-29
PCT/US2008/068796 WO2009006408A2 (en) 2007-06-29 2008-06-30 Methods and systems for communicating with a non-volatile memory storage device

Publications (2)

Publication Number Publication Date
JP2010534873A true JP2010534873A (ja) 2010-11-11
JP5416697B2 JP5416697B2 (ja) 2014-02-12

Family

ID=39930812

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010515224A Expired - Fee Related JP5416697B2 (ja) 2007-06-29 2008-06-30 不揮発性メモリストレージ装置と通信する方法およびシステム

Country Status (4)

Country Link
EP (1) EP2171618A2 (ja)
JP (1) JP5416697B2 (ja)
KR (1) KR101570662B1 (ja)
WO (1) WO2009006408A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160143987A (ko) * 2015-06-05 2016-12-15 삼성전자주식회사 스토리지 장치 및 그것의 동작 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046817A (ja) * 2002-05-23 2004-02-12 Ricoh Co Ltd プログラム、記憶媒体、データ管理装置及びデータ管理システム
JP2005539340A (ja) * 2002-09-16 2005-12-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 着脱書き換え可能コンピュータ記憶装置のコマンドセット
JP2006506714A (ja) * 2002-11-18 2006-02-23 シェンジェンシランカカジヨウシャンゴンシ コマンドおよびデータを移動体記憶装置へ送信する方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149813B2 (en) * 2001-08-14 2006-12-12 Microsoft Corporation Method and system for synchronizing mobile devices
DE10234158A1 (de) * 2002-07-26 2004-02-05 Giesecke & Devrient Gmbh Einrichten eines Dateisystems in einem Datenträger
JP2004318940A (ja) 2003-04-14 2004-11-11 Renesas Technology Corp 記憶装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046817A (ja) * 2002-05-23 2004-02-12 Ricoh Co Ltd プログラム、記憶媒体、データ管理装置及びデータ管理システム
JP2005539340A (ja) * 2002-09-16 2005-12-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 着脱書き換え可能コンピュータ記憶装置のコマンドセット
JP2006506714A (ja) * 2002-11-18 2006-02-23 シェンジェンシランカカジヨウシャンゴンシ コマンドおよびデータを移動体記憶装置へ送信する方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160143987A (ko) * 2015-06-05 2016-12-15 삼성전자주식회사 스토리지 장치 및 그것의 동작 방법
KR102267041B1 (ko) 2015-06-05 2021-06-22 삼성전자주식회사 스토리지 장치 및 그것의 동작 방법
US11182328B2 (en) 2015-06-05 2021-11-23 Samsung Electronics Co., Ltd. Storage device and operating method thereof

Also Published As

Publication number Publication date
WO2009006408A3 (en) 2009-04-30
KR20100058452A (ko) 2010-06-03
EP2171618A2 (en) 2010-04-07
KR101570662B1 (ko) 2015-11-23
JP5416697B2 (ja) 2014-02-12
WO2009006408A2 (en) 2009-01-08

Similar Documents

Publication Publication Date Title
US7447821B2 (en) U3 adapter
US8332840B2 (en) Method of computer based data card software downloading and updating
US8799521B2 (en) System and method for receiving control commands at a peripheral device
US8701104B2 (en) System and method for user agent code patch management
US20060250360A1 (en) Smart pointer
EP2997463B1 (en) Extraction of operating system-specific characteristics via a communication interface
CN101589368A (zh) 用于启动程序应用的方法及设备
US8429328B2 (en) System for communicating with a non-volatile memory storage device
US8433842B2 (en) Method for communicating with a non-volatile memory storage device
US20030237052A1 (en) Method and an apparatus for styling a web service
TW201032048A (en) Network adapter, method & computer program product
JP5416697B2 (ja) 不揮発性メモリストレージ装置と通信する方法およびシステム
US8661425B1 (en) Method, apparatus, and computer-readable medium for storing data associated with a firmware program
JP5356250B2 (ja) プログラムアプリケーションを起動するための方法および装置
US7840716B2 (en) Communication method for storage devices on the basis of file access
CN111399926A (zh) 下载启动程序的方法和装置
JP5489278B2 (ja) 情報処理装置及びその起動方法
CN114327733A (zh) 开机启动交互界面的动态更新方法、装置、设备及介质
US7516261B2 (en) Method for U3 adapter
KR100837742B1 (ko) 데이터 통신 케이블을 이용한 모바일 데이터 복구 장치 및그 방법
CN113504936B (zh) 软件版本发布方法、计算机设备及存储介质
US20100281299A1 (en) File system recognition structure
US9672390B2 (en) IC card and command processing method for IC card
CN101814057A (zh) 一种驱动信息安全设备的方法及信息安全设备
EP1830276B1 (en) Method for a host end fixedly naming a common serial port device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110620

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130205

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130502

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130513

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130603

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130610

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130621

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131115

R150 Certificate of patent or registration of utility model

Ref document number: 5416697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees