JP5728292B2 - メモリデバイス及びホストシステム - Google Patents
メモリデバイス及びホストシステム Download PDFInfo
- Publication number
- JP5728292B2 JP5728292B2 JP2011110242A JP2011110242A JP5728292B2 JP 5728292 B2 JP5728292 B2 JP 5728292B2 JP 2011110242 A JP2011110242 A JP 2011110242A JP 2011110242 A JP2011110242 A JP 2011110242A JP 5728292 B2 JP5728292 B2 JP 5728292B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- command
- function
- extension register
- driver
- 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.)
- Active
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/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- 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
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30134—Register stacks; shift registers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ホストドライバが、追加機能を制御する機能ドライバを探して、対応する機能ドライバがホストにインストールされていた場合、その機能ドライバに制御を渡す仕組みを取り入れることにより、機能拡張が容易に行えるようになる。機能固有の制御は、機能ドライバの中に隠蔽されるため、ホストドライバは最小限の情報のみで追加機能を実装可能となる。例えばファームウェアが管理する複数ページの拡張レジスタを有し、これら拡張レジスタのページ0に、特定のドライバを認識するための標準的な汎用情報(general information)フィールドを提供する。これによりホストシステムは、プラグ・アンド・プレイの実装が可能となる。また、マルチ機能カード/デバイスをサポートするために、個々の機能を指し示すことができるようにホストシステムが管理しておくことで、ホストソフトウエアの改変なしにマルチ機能カード/デバイスを使用可能にする。
SDメモリ用のホストコントローラにおいても、追加機能の制御を効率良く行える拡張レジスタをアクセスするための専用コマンドを定義する。512バイトの固定ブロック長の転送とすることにより、従来のSDメモリ用ホストコントローラからこの専用コマンドを発行できる。さらに、コマンドの引数として有効データ長の情報や、ライト時のマスク機能を持つことにより、リード・モディファイ・ライトを不要にすることが可能となる。
カードベンダーにより、拡張レジスタ上の任意の位置に追加機能を制御するレジスタを割り当てることを可能とし、実装したレジスタのアドレス情報を汎用情報フィールドから提供することにより、レジスタ配置をリロケータブルとすることを可能としている。このため、従来標準化が必要であったアドレス配置は不要となり、メモリデバイスを製造し易くなる。再配置が可能であるため、レジスタを拡張しても容易に対応ができる。
図2は、メモリデバイス11のROM14に記憶されたファームウェアの機能構成の一例を示している。これらの機能はコントローラ11aを構成するCPU13等の各ハードウェアとの組み合わせにより実現されるものである。ファームウェアは、例えばコマンド処理部14a、フラッシュメモリ制御部14b、拡張レジスタ処理部14c、機能処理プログラム14dにより構成されている。拡張レジスタ処理部14cは、メモリデバイス11が起動された際、RAM15内に拡張レジスタ31を生成する。この拡張レジスタ31は、仮想レジスタであり、拡張機能を定義可能とされている。
図2に示すように、拡張レジスタ31は、例えば8ページにより構成されている、1ページは、512バイトにより構成されている。512バイトの拡張レジスタをバイト単位にアクセスするため、最低9ビットのアドレスが必要となり、8ページアクセスするために、最低3ビットのアドレスが必要となる。合計12ビットのアドレスにより、拡張レジスタの全空間がアクセス可能となる。512バイトは殆どのホストがサポート可能なアクセス単位であるが、512バイトに限定されず大きくしても良い。長いビット長のアドレスフィールドで構成される場合は、下位何ビットかがアクセス単位として使用され、残りの上位のビットは、複数ページのひとつを選択するために使用される。
図3は、拡張レジスタのリードコマンド(CMD48)のフィールド構成の一例を示している。“S”は、コマンドのスタートビットを示し、“T”は転送方向を示すビットであり、“index”は、コマンド番号を示している。“RS”(レジスタセレクト)は拡張レジスタ31内のページを示し、“OFS”は選択されたページ内におけるデータの位置(ページの先頭からのオフセット)を示している。3ビットの“RS”と、9ビットの“OFS”で、512バイトの拡張レジスタ8ページ分の空間をバイト単位に指定することができる。具体的には、選択された拡張レジスタ内のリード開始位置が“RS”と“OFS”により指定される。
図4は、第1の動作モードによる拡張レジスタのリード動作の例を示している。
図5は、第2の動作モードによるデータポートリードの動作の例を示している。
置が指定される。図5ではレングスが1の場合のデータポート例が示されている。すなわち、データポートは、拡張レジスタマップ上において、1バイトのアドレスを占有するだけで良い。データポートであるかどうかをアドレスのデコードによって識別できれば良く、実際に1バイト幅のポートを通してデータが伝送される必要はないので、データ伝送性能には影響しない。このデータポートに割り当てられたデバイスから1ブロック(512バイト単位)のデータをリードすることができる。すなわち、1回当たり、1ブロック(512バイト単位)のデータをリードすることができる。この読み出されたデータは、例えばバッファ16に保持され、ホスト20によって読み出される。
図6は、拡張レジスタのライトコマンドの一例を示している。ライトコマンド(CMD49)において、リードコマンド(CMD48)と同一部分には同一符号を付している。ライトコマンドとリードコマンドは、“index”により区別される。3ビットの“RS”と、9ビットの“OFS”により、拡張レジスタのページと選択されたページ内のデータの位置が指定される。9ビットの“LEN”フィールドにより、512バイトの拡張レジスタに書き込むデータ長が指定される。したがって、512バイト内の任意のデータ長(バイト単位)のデータを拡張レジスタの任意のページと場所に書き込むことが可能である。
図8は、第1の動作モードによる拡張レジスタのライト動作の例を示している。
図9は、第2の動作モードによるライトデータポートの動作の例を示している。
図10は、拡張レジスタ31のページ0に示された汎用情報フィールドの例を示している。この汎用情報フィールドにより、ホスト20が拡張機能を制御するドライバを特定できるようにすることにより、拡張機能を追加した場合において、ホストシステムが容易に拡張機能を使えることができ、プラグ・アンド・プレイを実現することができる。
ストラクチャレビジョンは、拡張レジスタ31のページ0のフォーマットを定義するレビジョンである。汎用情報フィールドに新しい情報を追加した場合、ストラクチャレビジョンを更新することにより、どのバージョンの汎用情報フィールドを保持しているかを示す。以前のバージョンの機能ホストドライバは、新しいフィールドを無視する。
データ長は、ページ0に記録されている有効データ長を示している。
拡張機能数は、デバイスが何個の拡張機能をサポートしているかを示している。ホストドライバは、起動時に、サポートしている機能数だけ繰り返し、各拡張機能用のドライバがインストールされているかどうかを調べる。
デバイス1機能識別コードに、コードが設定してある場合、標準ドライバを用いることができることを示す。OSが標準ドライバをサポートしている場合、専用ドイバをインストールすることなく、このデバイスが使用できる。専用ドライバがインストールされている場合は、そちらの使用を優先する。非標準の機能の場合、このフィールドに“0”が設定される。この場合は、専用ドライバによってのみこの機能は制御される。
デバイス1製造者識別情報、デバイス1機能識別情報は、それぞれ専用ドライバを特定するための情報であり、これらのフィールドには、例えばASCII文字列により製造者名や販売者名、又は拡張機能の識別情報が記載される。ホストドライバは、これらの情報をもとにデバイス1の専用ドライバがインストールされているかどうかを探す。
次デバイスの先頭アドレスは、次のデバイス情報が記載されているページ0内のアドレスを示している。ホストシステムがこのデバイスをサポートしていない場合、このデバイスは使用できないため、次のデバイスがチェックされる。これ以降のフィールドは可変長のため、この位置に定義している。
デバイス1アドレスポインタ1〜X、レングスフィールド1〜Xは、ひとつの機能に複数の拡張レジスタ領域を定義できることを示している。それぞれのアドレスとレングスを下記に列挙する。
デバイス1が使用する拡張レジスタの第1領域。拡張レジスタのページ1〜7の空間内の先頭アドレスと、使用する拡張レジスタ領域の大きさを示している。
デバイス1に割り当てられた拡張レジスタ内の第2領域の位置と領域の大きさを示している。これにより、例えば標準ドライバは、第1領域のみで制御するが、専用ドライバは、第1領域と第2領域を用いて効率良く制御することを可能にするなどの応用が可能となる。
デバイス1に割り当てられた第X領域の位置と領域の大きさを示している。
図11は、上記リードコマンド(CMD48)に対応するメモリデバイス11内のコントローラ11aの動作を示している。
図12は、上記ライトコマンド(CMD49)に対応するメモリデバイス11内のコントローラ11aの動作を示している。
図13は、ホスト20の処理を示している。ホスト20に、メモリデバイス11が接続されると、メモリデバイス11が起動され、メモリデバイス11のRAM15に拡張レジスタ31が展開される。ホストデバイス11は、ホストドライバによって先ず、リードコマンド(CM48)を発行して、拡張レジスタ31のページ0のデータを取得する(ST31)。次に、取得したページ0のストラクチャレビジョンが確認され、どのバージョンの汎用情報フィールドを保持しているかが確認される(ST32)。この後、サポート機能数Nと、デバイス情報の先頭アドレスが取得される(ST33、ST34)。
図15は、SDIOにおける拡張レジスタアクセスを示している。
さらに、SDIOカード対応のホストコントローラにおいては、SDIOのアクセスコマンドを用いて、拡張レジスタをアクセスすることにより、小さいブロック長転送とマルチブロック転送とに対応可能となる。このため、さらに最適化したドライバを作ることが可能となる。
上記各機能は、その機能で定義した拡張レジスタ・セットにレビジョンを示すレジスタを具備する。また、機能ドライバは対応するレビジョンをドライバ自身が知っている。ある機能をレビジョンアップで拡張する場合、従来の機能と互換性を維持しつつ機能を拡張することにより互換性を維持することができる。リムーバブルカードを用いる場合、カードの機能レビジョンと、ホストシステムにインストールされている機能ドライバのレビジョンの組み合わせによって使用可能な機能が決定される。
図17、図18は、第2の実施形態に係るリードコマンドCMD48、及びライトコマンドCMD49のフィールド構成の一例を示している。尚、図17、図18において、図3、図6と同一部分には同一符号を付し、説明は省略する。
カードに機能を実装するとき、“FID/FNO”にユニークな値が割り当てられ、後述するように、汎用情報のフィールド定義に表示される。このため、機能ドライバがデータポートへのコマンド発行時、引数に“FID/FNO”を設定することにより、カードは、コマンドが指定した機能に対するコマンドであることが確認できる。したがって、間違ったデータポートの指定により、誤書き込みによるデータ破壊、誤動作などを防止でき、安全性が担保される。
図19は、拡張レジスタのリードコマンド(CMD48)の第1の動作モードによる拡張レジスタのリード動作の例を示している。
図21は、拡張レジスタのライトコマンドの一例を示している。
図22は、第2の動作モードによるライトデータポートの動作の例を示している。
図23は、第2の実施形態に係るFIDの指定に関する例を示した図である。汎用情報フィールドの意味は、図10と同じである。異なる点は、拡張アドレス、長さフィールドのフォーマットで、“FID/FNO”の値を設定するために4ビットフィールドが確保されていることにある。各機能毎にユニークな“FID/FNO”が設定される。カードに実装された各機能は自分の“FID/FNO”を認識している。
図24は、図19、図20に示すリードコマンド(CMD48)に対応するメモリデバイス11内のコントローラ11aの動作を示している。
図25は、上記ライトコマンド(CMD49)に対応するメモリデバイス11内のコントローラ11aの動作を示している。
図26、図27は、データの転送効率を良くするためのマルチブロック転送コマンドを示すものであり、図26は、CMD58(Multi-Block Read)、図27は、CMD59(Multi-Block Write)を示している。
SDIO機能(CMD52/53)が使用可能かどうかは、ホストシステムがサポートする機能によって決まる。SDIOをサポートしないホストは、CMD48/49、CMD58/59を用いた機能ドライバをインストールする。SDIOをサポートするホストシステムは、さらにCMD52/53を用いた機能ドライバもインストールすることが可能となる。
SDIO対応カードに関して、CMD52/53を用いた機能ドライバがインストールされている場合、その機能ドライバが使用され、インストールされていない場合、CMD48/49、CMD58/59を用いた機能ドライバが使用される。
図30は、コンボカードにおけるSDIOの初期化動作を概略的に示している。
従来、SDIOは、共通レジスタに必要な制御ビットを割り当てて制御していた。これを行うためハードウェアを実装する必要がある。専用の機能ドライバで機能を制御する場合、実装は自由に行うことができる。このため、必ずしも共通レジスタで制御を行う必要はない。従来共通レジスタで行っていた制御を機能ドライバのAPI(Application Program Interface)として定義すれば、制御をソフトウエア化することができる。APIレベルを標準化することにより、ハードウェアによる標準化は不要であり、実装を容易化することができる。
機能を初期化するために、ホストドライバから呼び出す。
機能のアボート、又はリセット。
機能レビジョンの読み出し。
機能が実装しているパワーモード情報。
電源を切っても良いタイミングを通知する。
アプリケーションとの間の制御インターフェース。
メモリデバイス11は、アドレス情報を識別することにより、どの機能に対するコマンドであるかを判別することが可能ではある。しかし、アドレス範囲は機能によって異なるため、ホスト20はアドレスから機能を識別するのが難しい。
Claims (12)
- 不揮発性半導体記憶装置と、
前記不揮発性半導体記憶装置を制御する制御部と、
前記制御部に接続された作業エリアとしてのメモリと、
前記制御部により制御される拡張機能部と、
前記メモリ上に仮想的に、または制御部にハードウェアとして設けられ、前記拡張機能部の拡張機能を定義可能な一定のブロック長を有する拡張レジスタと、
前記制御部は、前記拡張レジスタを前記一定のデータ長単位でリードする第1のコマンドと、前記拡張レジスタを前記一定のデータ長単位でライトする第2のコマンドとを処理し、
前記拡張レジスタは、第1の領域、前記第1の領域と異なる第2の領域を含み、
前記第1の領域は、前記拡張機能の種別及び制御可能なドライバを特定する第1情報と、前記拡張機能を制御する第2情報が記録された、前記第2の領域内の位置を示すアドレス情報とを記録し、
前記第1、第2のコマンドは、前記複数ページで構成される拡張レジスタの1ページ内のデータをアクセスするために必要なアドレスフィールドと、有効なデータ長を示すレングスフィールドを引数として有し、
前記第1、第2のコマンドの前記アドレスフィールドの値は、それぞれ第1、第2の動作モードを有し、
前記第1のコマンドの前記第1の動作モードは、前記アドレスフィールドが示す拡張レジスタの位置から、レングスフィールドで示されたデータ長のデータを読み出すリード動作であり、
前記第2のコマンドの前記第1の動作モードは、前記アドレスフィールドが示す拡張レジスタの位置に、レングスフィールドで示されたデータ長のデータを書き込むライト動作であり、前記第1、第2のコマンドの前記第2の動作モードは、前記アドレスフィールドが示す特定のアドレスを拡張レジスタのデータポートと解釈し、データポートと関係付けられた前記拡張機能部とのデータ転送を行うことを特徴とするメモリデバイス。 - 前記第1のコマンドの前記第1の動作モードにおいて、前記拡張レジスタの指定されたページ内の位置に配置されたデータは、リードデータブロックの先頭から前記データを転送するように配置され、前記データの先頭は前記アドレスフィールドによって指定され、前記レングスフィールドはリードデータブロックからの有効データ長を示し、
前記第2のコマンドの前記第1の動作モードにおいて、ライトデータブロックの先頭から転送されたデータを前記拡張レジスタのページに書き込み、前記拡張レジスタの指定されたページの書き込み位置の先頭は、前記アドレスフィールドによって特定され、前記データ長はレングスフィールドによって特定されることを特徴とする請求項1記載のメモリデバイス。 - 前記第2のコマンドは、引数にマスクライトを行うかどうかを選択するビットを持ち、マスクライトを行わない場合、前記レングスフィールドは有効なライトデータ長を示し、マスクライトを行う場合、ライトデータ長は固定値となり、前記レングスフィールドはビット単位に書き込むか元のデータを保持するかを選択するマスク情報を示し、マスク情報は前記ライトデータ長と同じ長さを持つことを特徴とする請求項1記載のメモリデバイス。
- 複数の拡張レジスタによって構成された拡張レジスタ・セットを用いた複数の方法によって制御される機能をさらに備え、複数の機能は単一の拡張レジスタ・セットによって制御され、
前記第1の領域内の前記機能識別情報は、全ての機能に対するコマンド情報と、前記第2の領域内の拡張レジスタ・セットの各々の位置を明らかにする複数の情報を含むことを特徴とする請求項1記載のメモリデバイス。 - 固定ブロック長、及び複数ブロック転送をサポートするリードコマンドとしての第3のコマンドと、固定ブロック長、及び複数ブロック転送をサポートするライトコマンドとしての第4のコマンドを具備し、
前記第3、第4のコマンドは、引数としてアドレスフィールドを含み、前記アドレスフィールドが拡張レジスタのデータポートを指定した場合のみデータ転送が実行され、データ長転送はブロック数によって指定されることを特徴とする請求項1記載のメモリデバイス。 - 前記拡張レジスタの前記第1の領域に配置された汎用情報は、標準の拡張機能を識別するための機能識別コード、製造者を識別するための製造者識別情報、拡張機能のクラスを識別するための機能識別情報のいずれか1つを含み、前記汎用情報は汎用ドライバ又は専用ドライバを選択するための情報として用いられることを特徴とする請求項1記載のメモリデバイス。
- ホストドライバ及びシステムメモリをさらに具備し、前記ホストドライバは、前記第1のコマンドを用いて、前記拡張レジスタの前記第1の領域に記載された前記汎用情報から前記機能識別コード、前記製造者識別情報、前記機能識別情報のいずれか1つを読み出して使用可能な前記汎用ドライバ又は専用ドライバを特定し、特定された前記汎用ドライバ又は専用ドライバが存在する場合、前記ホストドライバは特定された前記汎用ドライバ又は専用ドライバを前記システムメモリにロードし、ロードされた前記汎用ドライバ又は専用ドライバは前記メモリデバイス内の拡張機能を初期化することを特徴とする請求項6記載のメモリデバイスを使用するホストシステム。
- 前記ホストドライバは、前記汎用情報から、拡張機能に割り当てられた前記拡張レジスタの位置情報を、ロードされた前記汎用ドライバ又は専用ドライバに渡すことにより、拡張機能が任意の位置に配置されていても制御可能とすることを特徴とする請求項7記載のホストシステム。
- 可変ブロック長、及び複数ブロック転送をサポートするリード、ライトが可能な第5のコマンドと、引数とレスポンスで1バイトデータのリード、ライトが可能な第6のコマンドと、
前記第5、第6のコマンドによってアクセス可能な複数のファンクション領域を持ち、先頭のファンクション領域のある一部に前記第1の領域を割り当て、それ以外のファンクション領域に前記第2の領域を割り当て、前記第5、第6のコマンドによってアクセス可能な拡張レジスタ領域を前記第1、第2のコマンドでも、アクセス可能にしたことを特徴とする請求項1記載のメモリデバイス。 - 前記メモリデバイスは、固定ブロック長、及び複数ブロック転送をサポートするリードコマンドとしての第3のコマンドと、固定ブロック長、及び複数ブロック転送をサポートするライトコマンドとしての第4のコマンドを具備し、
前記第3、第4のコマンドは、引数としてアドレスフィールドを含み、前記アドレスフィールドが拡張レジスタのデータポートを指定した場合のみデータ転送が実行され、データ長転送はブロック数によって指定され、
前記第3、第4のコマンドの前記アドレスフィールドの値は、それぞれ第1、第2の動作モードを有し、
前記ホストドライバは、前記第1、第2のコマンド、又は前記第3、第4のコマンドにより、前記第1の動作モードを用いて前記メモリデバイスの前記拡張レジスタをアクセスし、前記第2の動作モードを用いて前記メモリデバイスの前記拡張機能部と前記ホストシステム間でデータ転送を行うことを特徴とする請求項7記載のホストシステム。 - 前記ホストドライバは、各々の機能に単独で割り当てられた、前記機能識別コード、前記製造者識別情報、及び前記機能識別情報を含む汎用情報によって、複数の複数機能デバイスからあるひとつの機能を特定し、
前記拡張レジスタの位置は、特定された機能に対応した前記汎用情報のアドレスフィールドによって決定され、前記拡張レジスタの長さは、前記機能の拡張レジスタ内に特定されることを特徴とする請求項7記載のホストシステム。 - 前記メモリデバイスは、固定ブロック長、及び複数ブロック転送をサポートするリードコマンドとしての第3のコマンドと、固定ブロック長、及び複数ブロック転送をサポートするライトコマンドとしての第4のコマンドを具備し、
前記第3、第4のコマンドは、引数としてアドレスフィールドを含み、前記アドレスフィールドが拡張レジスタのデータポートを指定した場合のみデータ転送が実行され、データ長転送はブロック数によって指定され、
前記ホストドライバは、複数の機能デバイスに対応して個々に配置された前記複数のバッファと、前記第1のコマンド、第2のコマンド、第3のコマンドまたは、第4のコマンドの引数に設定された機能識別情報に基づき、前記複数のバッファの1つを選択し、
前記ホストドライバは、前記複数の機能デバイスを制御するコマンドを発行し、前記コマンドは前記複数の機能デバイスにより混在して使用されることを特徴とする請求項7記載のホストシステム。
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011110242A JP5728292B2 (ja) | 2011-02-04 | 2011-05-17 | メモリデバイス及びホストシステム |
KR1020137020444A KR101493633B1 (ko) | 2011-02-04 | 2011-09-16 | 확장 기능이 용이하게 설정될 수 있는 메모리 시스템 |
CN201180068856.7A CN103403803B (zh) | 2011-02-04 | 2011-09-16 | 可以很容易在其中设定扩展功能的存储器*** |
EP15176252.3A EP2955716B1 (en) | 2011-02-04 | 2011-09-16 | Memory system in which extended function can easily be set |
PCT/JP2011/071776 WO2012105084A1 (en) | 2011-02-04 | 2011-09-16 | Memory system in which extended function can easily be set |
EP11784802.8A EP2671226B1 (en) | 2011-02-04 | 2011-09-16 | Memory system in which extended function can easily be set |
TW100133693A TWI460589B (zh) | 2011-02-04 | 2011-09-20 | 可容易設定延伸功能之記憶體系統 |
US13/956,825 US9104539B2 (en) | 2011-02-04 | 2013-08-01 | Memory system in which extended function can easily be set |
US14/797,867 US9335953B2 (en) | 2011-02-04 | 2015-07-13 | Memory system in which extended function can easily be set |
US15/463,765 USRE47542E1 (en) | 2011-02-04 | 2017-03-20 | Memory system in which extended function can easily be set |
US16/452,252 USRE48997E1 (en) | 2011-02-04 | 2019-06-25 | Memory system in which extended function can easily be set |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011023217 | 2011-02-04 | ||
JP2011023217 | 2011-02-04 | ||
JP2011110242A JP5728292B2 (ja) | 2011-02-04 | 2011-05-17 | メモリデバイス及びホストシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012178132A JP2012178132A (ja) | 2012-09-13 |
JP5728292B2 true JP5728292B2 (ja) | 2015-06-03 |
Family
ID=44993823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011110242A Active JP5728292B2 (ja) | 2011-02-04 | 2011-05-17 | メモリデバイス及びホストシステム |
Country Status (7)
Country | Link |
---|---|
US (4) | US9104539B2 (ja) |
EP (2) | EP2671226B1 (ja) |
JP (1) | JP5728292B2 (ja) |
KR (1) | KR101493633B1 (ja) |
CN (1) | CN103403803B (ja) |
TW (1) | TWI460589B (ja) |
WO (1) | WO2012105084A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5398761B2 (ja) | 2011-02-28 | 2014-01-29 | 株式会社東芝 | メモリシステム |
JP5832963B2 (ja) | 2012-06-29 | 2015-12-16 | 株式会社東芝 | メモリシステム |
JP5779148B2 (ja) * | 2012-07-06 | 2015-09-16 | 株式会社東芝 | メモリシステム |
JP5814871B2 (ja) * | 2012-07-06 | 2015-11-17 | 株式会社東芝 | メモリシステム |
JP5976608B2 (ja) | 2012-10-30 | 2016-08-23 | 株式会社東芝 | メモリデバイス |
US9612773B2 (en) * | 2013-11-21 | 2017-04-04 | Samsung Electronics Co., Ltd. | User device having a host flash translation layer (FTL), a method for transferring an erase count thereof, a method for transferring reprogram information thereof, and a method for transferring a page offset of an open block thereof |
WO2015166540A1 (ja) * | 2014-04-28 | 2015-11-05 | 株式会社日立製作所 | ストレージ装置とそのデータ処理方法及びストレージシステム |
US10616033B2 (en) * | 2017-11-06 | 2020-04-07 | Honda Motor Co., Ltd. | Different perspectives from a common virtual environment |
US10795576B2 (en) * | 2018-11-01 | 2020-10-06 | Micron Technology, Inc. | Data relocation in memory |
CN111240582B (zh) * | 2018-11-29 | 2022-01-28 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
JP2020154584A (ja) * | 2019-03-19 | 2020-09-24 | キオクシア株式会社 | メモリシステム |
US11334402B2 (en) * | 2019-09-10 | 2022-05-17 | Qualcomm Incorporated | SDIO chip-to-chip interconnect protocol extension for slow devices and power savings |
CN110971621B (zh) * | 2020-01-09 | 2023-07-11 | 成都三零嘉微电子有限公司 | 基于sdio接口的嵌入式多cpu互联电路、互联方法及驱动方法 |
JP7366765B2 (ja) * | 2020-01-20 | 2023-10-23 | 株式会社東芝 | Icカード、icカード処理システム、及びicカード処理装置の制御プログラム |
CN111818060B (zh) * | 2020-07-09 | 2023-04-07 | 厦门海为科技有限公司 | 一种支持混合及离散数据传输的通讯协议、方法及*** |
CN114461566A (zh) * | 2022-01-10 | 2022-05-10 | 武汉海微科技有限公司 | 基于单片机i2c接口的协议扩展与移植方法 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5280599A (en) * | 1989-01-09 | 1994-01-18 | Kabushiki Kaisha Toshiba | Computer system with memory expansion function and expansion memory setting method |
US6356551B1 (en) * | 1997-02-14 | 2002-03-12 | Advanced Micro Devices, Inc. | Method and network switch having dual forwarding models with a virtual lan overlay |
JP3609389B2 (ja) * | 1999-09-30 | 2005-01-12 | 富士通株式会社 | プロトコル変換装置、通信装置、通信プログラム記憶媒体、および通信システム |
JP4649009B2 (ja) * | 2000-03-08 | 2011-03-09 | 株式会社東芝 | カードインタフェースを備えた情報処理装置、同装置に装着可能なカード型電子機器、及び同装置におけ動作モード設定方法 |
JP5090591B2 (ja) * | 2000-04-12 | 2012-12-05 | ソニー株式会社 | 電子装置の制御方法,電子装置及び電子装置の機能の認識方法 |
US6820148B1 (en) * | 2000-08-17 | 2004-11-16 | Sandisk Corporation | Multiple removable non-volatile memory cards serially communicating with a host |
JP2002091709A (ja) * | 2000-09-18 | 2002-03-29 | Toshiba Corp | 電子機器システム、カード型電子部品及び通信方法 |
JP4102018B2 (ja) * | 2000-11-30 | 2008-06-18 | 株式会社東芝 | 無線通信カードおよびシステム |
JP3641230B2 (ja) * | 2001-10-22 | 2005-04-20 | 株式会社東芝 | メモリカードを制御するための装置および方法 |
JP2004046498A (ja) | 2002-07-11 | 2004-02-12 | Toshiba Corp | 情報処理装置 |
US7197583B2 (en) * | 2003-01-21 | 2007-03-27 | Zentek Technology Japan, Inc. | SDIO controller |
JP4173863B2 (ja) * | 2003-03-20 | 2008-10-29 | 株式会社ルネサステクノロジ | メモリカードおよびその初期化設定方法 |
TW594478B (en) * | 2003-05-05 | 2004-06-21 | Winbond Electronics Corp | Device to extend an address space by inserting a waiting state and operation method for the device |
KR100596410B1 (ko) * | 2004-11-04 | 2006-07-03 | 한국전자통신연구원 | 기능 확장용 에스디 메모리 카드 |
JP2005322109A (ja) * | 2004-05-11 | 2005-11-17 | Renesas Technology Corp | Icカードモジュール |
JP2006018610A (ja) * | 2004-07-01 | 2006-01-19 | Matsushita Electric Ind Co Ltd | デジタルデータ処理カード、及びデジタルデータ処理システムの制御方法 |
US7660938B1 (en) * | 2004-10-01 | 2010-02-09 | Super Talent Electronics, Inc. | Flash card reader and data exchanger utilizing low power extended USB protocol without polling |
JP2006236200A (ja) * | 2005-02-28 | 2006-09-07 | Toshiba Corp | カード状記憶装置とそのホスト装置 |
US20060218324A1 (en) * | 2005-03-25 | 2006-09-28 | Matsushita Electrical Industrial Co., Ltd | Systems and methods for flexible data transfers in SDIO and/or MMC |
CN101167038A (zh) * | 2005-04-27 | 2008-04-23 | 松下电器产业株式会社 | 卡型电子装置以及主机装置 |
TW200719141A (en) * | 2005-11-07 | 2007-05-16 | Cheertek Inc | Flash memory access method and circuit of an embedded system |
JP2008269380A (ja) * | 2007-04-23 | 2008-11-06 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
JP2009026296A (ja) * | 2007-06-21 | 2009-02-05 | Toshiba Corp | 電子デバイス、メモリデバイス、ホスト装置 |
JP2009157493A (ja) * | 2007-12-25 | 2009-07-16 | Sharp Corp | データ転送制御装置及びicカード |
JP5324908B2 (ja) * | 2008-08-22 | 2013-10-23 | パナソニック株式会社 | カードホストlsiを有するセット機器、およびカードホストlsi |
US8219922B2 (en) * | 2008-12-30 | 2012-07-10 | International Business Machines Corporation | Dynamic point and extend user interface |
US20100268897A1 (en) * | 2009-04-16 | 2010-10-21 | Keishi Okamoto | Memory device and memory device controller |
JP2010272701A (ja) * | 2009-05-21 | 2010-12-02 | Fujitsu Ltd | 情報処理装置、情報処理装置搭載ラックおよび空間制御システム |
US8370535B2 (en) * | 2010-10-27 | 2013-02-05 | Sandisk Il Ltd. | Routing commands within a multifunctional device |
JP5395824B2 (ja) * | 2011-02-16 | 2014-01-22 | 株式会社東芝 | メモリシステム |
JP5398761B2 (ja) | 2011-02-28 | 2014-01-29 | 株式会社東芝 | メモリシステム |
-
2011
- 2011-05-17 JP JP2011110242A patent/JP5728292B2/ja active Active
- 2011-09-16 CN CN201180068856.7A patent/CN103403803B/zh active Active
- 2011-09-16 WO PCT/JP2011/071776 patent/WO2012105084A1/en active Application Filing
- 2011-09-16 EP EP11784802.8A patent/EP2671226B1/en active Active
- 2011-09-16 EP EP15176252.3A patent/EP2955716B1/en active Active
- 2011-09-16 KR KR1020137020444A patent/KR101493633B1/ko active IP Right Grant
- 2011-09-20 TW TW100133693A patent/TWI460589B/zh active
-
2013
- 2013-08-01 US US13/956,825 patent/US9104539B2/en active Active
-
2015
- 2015-07-13 US US14/797,867 patent/US9335953B2/en not_active Ceased
-
2017
- 2017-03-20 US US15/463,765 patent/USRE47542E1/en active Active
-
2019
- 2019-06-25 US US16/452,252 patent/USRE48997E1/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN103403803B (zh) | 2016-08-10 |
US20150317102A1 (en) | 2015-11-05 |
EP2955716A1 (en) | 2015-12-16 |
TW201234178A (en) | 2012-08-16 |
WO2012105084A1 (en) | 2012-08-09 |
KR101493633B1 (ko) | 2015-02-13 |
TWI460589B (zh) | 2014-11-11 |
US9104539B2 (en) | 2015-08-11 |
US20130318281A1 (en) | 2013-11-28 |
KR20130111622A (ko) | 2013-10-10 |
USRE47542E1 (en) | 2019-07-30 |
EP2671226A1 (en) | 2013-12-11 |
EP2955716B1 (en) | 2018-10-24 |
CN103403803A (zh) | 2013-11-20 |
USRE48997E1 (en) | 2022-03-29 |
JP2012178132A (ja) | 2012-09-13 |
US9335953B2 (en) | 2016-05-10 |
EP2671226B1 (en) | 2015-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5728292B2 (ja) | メモリデバイス及びホストシステム | |
JP5814871B2 (ja) | メモリシステム | |
US6282647B1 (en) | Method for flashing a read only memory (ROM) chip of a host adapter with updated option ROM bios code | |
US8037228B2 (en) | Bridge device with page-access based processor interface | |
JP6734751B2 (ja) | インタフェイス制御メカニズムを有する電子システム及びその動作方法 | |
TWI453614B (zh) | 可於自網路獲得之資料上附加時間資訊之記憶體系統 | |
JP5832963B2 (ja) | メモリシステム | |
JP5779147B2 (ja) | メモリシステム | |
CN110795373B (zh) | 一种i2c总线到并行总线的转换方法、终端及存储介质 | |
US20050198425A1 (en) | Combined optical storage and flash card reader using single ide or sata port and method thereof | |
JP6017379B2 (ja) | メモリシステム及びホスト機器 | |
JP5779148B2 (ja) | メモリシステム | |
JP2000030375A (ja) | データ処理システム、アクセス装置及び記録媒体 | |
US20080256289A1 (en) | Memory apparatus to write and read data, and method thereof | |
TWI406175B (zh) | 記憶卡以及用於記憶卡之方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130904 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131205 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131212 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131219 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131226 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140826 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140827 |
|
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: 20150310 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150406 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5728292 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |