JP2008511072A - 消去可能/書換え可能メモリ用に設計されたホスト装置で一回又は数回プログラム可能なメモリを使用する方法および装置 - Google Patents
消去可能/書換え可能メモリ用に設計されたホスト装置で一回又は数回プログラム可能なメモリを使用する方法および装置 Download PDFInfo
- Publication number
- JP2008511072A JP2008511072A JP2007529862A JP2007529862A JP2008511072A JP 2008511072 A JP2008511072 A JP 2008511072A JP 2007529862 A JP2007529862 A JP 2007529862A JP 2007529862 A JP2007529862 A JP 2007529862A JP 2008511072 A JP2008511072 A JP 2008511072A
- Authority
- JP
- Japan
- Prior art keywords
- memory device
- controller
- data
- memory
- address
- 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
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/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
-
- 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
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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
- 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/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
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
- G06F2212/2142—Solid state disk using write-once memory, e.g. OTPROM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
- Communication Control (AREA)
Abstract
Description
この出願は、2004年8月24日に申請の米国の仮出願番号60/604,353の特典を主張し、ここに参照することによって組み入れる。
FAT12/16ファイル・システムを使用することが一般的なので、これらの技術は必然的に互換性がない。装置の中のファームウェアをOTPかFTPメモリ技術用にカスタマイズされたファイル・システムに更新すれば、この問題は解決できるが、これでは、全体の有効市場がソフトウェアをアップグレードした新しいカメラに制限されることになるか、さもなければ、ユーザにフィールドで既存のカメラのソフトウェアをアップグレードすることを要求することになる。そこで、エンドユーザが既存のカメラで、OTPまたはFTPのメモリーカードが比較的シームレスに使えるようにするハードウェア・コントローラ・ソリューション、つまり、下位互換性をもつコントローラ(BCC)を作り上げる必要がある。
この好ましい態様は、ここに添付した図面を参照して記述する。
システム概観
ここに記述された態様は一回又は数回プログラム可能なメモリを、ファームウェアのアップグレードを要しないで、既存の家庭用電子機器(フラッシュ、つまり消去可能な、不揮発性メモリで作動するような機器)との作動を可能にするように使用することができ、そのため、ユーザに対する影響を最小限に止める一方、下位互換性を提供する。それによって、これらの態様は既存のフラッシュカード・スロットを備えた家庭用電子機器と、一回又は数回プログラム可能なメモリとの橋渡しをする実行可能な方法である。これらの態様は、又、一回又は数回プログラム可能なメモリ用にカスタマイズしたファイル・システムを組み込むためにファームウェアを更新しなくても、将来の家庭用電子機器を設計できるようにする。
digital assistant)、携帯電話、ディジタルオーディオ・プレーヤーあるいはパソコン(USBリーダ/ライタ付きあるいはPCMCIAカード・アダプター付型)のようであるが、これらに制限されない家庭用電子機器の形式をとることができる。この態様では、ホスト装置5が、DOS-FATファイル・システムのような多数回書き込み(write-many,)ファイル・システム7を含む。
Digital, メモリスティック(Memory Stick)、コンパクトフラッシュ(Compact Flash)(登録商標)、スマートメディア(Smart
Medaia)、xD、USB、HS-MM、あるいは利用可能な多くのポータブル記憶メディア用にコンフィギュアできる。バックサイドバス・プロトコル・ロジック38は、NANDフラッシュ、NORフラッシュあるいはその他私有または公共のメモリ・インターフェース用にコンフィギュアできる。コントローラ20はさらに2個のページ・レジスタ40、42(ページレジスタ0
[page register 0]およびページレジスタ1[page register 1])、スマートフィルタ・ロジック44(smart filter
logic 44)、リマップ・ロジック46{remap logic 46}およびスマートECCロジック48(smart filter 48)を含む。簡潔にするため図2に示していないが、メモリ装置10はさらに計時ネットワークおよび他の「接着(glue)」ロジックを含むことができる。下に詳細に記述するように、コントローラ20は、多数回書込み
ファイル・システムを使用して、メモリ装置10がホスト装置と下位互換性をもつことができるようにする。そのため、時には、コントローラ20は「下位互換性があるコントローラ」あるいは「BCC」とここで呼ぶことがある。
またはFTPメモリと作動するよう設計された超低コストのコントローラは、1個より多いページレジスタ、リマップ・ロジック、あるいはスマート・フィルタ・ロジックを必要としないかもしれない。
12/16に基づいた記憶カードのメモリマップ50である。ここに使用するように、「ファイル・システム構造」とは、メモリ内のパーティション、パーティション内のメモリ・スペースおよび/またはファイル・システムがそのパーティションで使用できるか、あるいは、できないコマンドのタイプを記述するすべてのデータのことを言う。ファイル・システム構造の例は、マスター・ブート・レコード、パーティション・ブート・レコード、ファイル割付けテーブル(「FAT」あるいは「FATテーブル」)、ルート・ディレクトリー、およびサブディレクトリーを含むが、これらに制限されない。マスター・ブート・レコード(MBR)は、個々の論理パーティションのスタートする位置はもとよりカード(つまりメモリ装置10)のブート情報を保存するために使用される。ここに示されたような大抵のメモリーカードは論理パーティションを一つだけ含む。この例で、クラスタ・サイズ、クラスタの数、パーティション・タイプ、パーティション名などのような情報を含むパーティション・ブーツ・レコード(PBR)は、アドレス0x4000でスタートする。FAT1はFATテーブル1に相当し、それは、カード10上の各ファイル、ディレクトリーおよび他の情報のクラスタ番号のリンクしたリストを含む。FAT2はFATテーブル2に相当する。最後に、ルート・ディレクトリーおよびファイル・データ・エリアは物理アドレス0C200で始まる。これらのエリアは、各FATテーブル中のクラスタ番号に対応するクラスタに分割される。この例の目的には、各クラスタのサイズが正確に4KBであると仮定する。これがFATファイル・システムのほんの一例であって、本発明を全く制限する意図が無いことに注意すること。各構造に対する異なる位置、異なるクラスタ・サイズおよび、異なるファイル・システムさえも、ここに記述された態様に関連ができることである。
スマート・フィルタ・ロジック44は、コントローラ20がユーザが希望する行動に基き、スマートにホスト・オペレーションを修正することを可能にする。スマート・フィルタ・ロジック44の1つの形式は、アドレスに書き込みを要求されたデータをそのアドレスに以前書込まれたデータと比較するために書き込みの前の読み取り(read-before-write)オペレーションを実行する(つまり「新しい」データを「古い」データと比較する)。最も単純な場合では、以前に書込まれたデータの何らかの修正がある場合、スマート・フィルタ・ロジック44はリマップ・オペレーションを実行することができるが、これは好ましくないユーザ・モデルという結果になるかもしれない。複雑さを加え、スマートにデータの差異を判断することによって、コントローラ20は、ホスト装置5が何を行おうと試みているか推論することができ、次いで、次のオペレーションのうちの一つを選んで実行することができる:そのアドレスに新しいデータを書込か、データを「偽書き(fake
write)」する (つまり、実際には何も書込まれなかったのに、ホスト装置5に、書き込みオペレーションはうまく実行されたと伝えるか、書き込みを却下しカード・エラーを発生するか、あるいはリマップ・オペレーションを実行する。これは、図4のフローチャートに図示されている。図示のように、下位互換性をもつコントローラ(BCC)20は、書き込みオペレーション(実行60)を受け取る。データがブランクページにもたらされて書込まれるか、あるいは、データが付加される場合(実行65)、コントローラ20はホスト装置5によって要求されたままのデータを書込む(実行70)。「最後にアクセスした」フィールドが更新中か、あるいは、FATテーブルを「ゼロ」に設定しようと試みがなされている場合、コントローラ20は「偽書き」を実行する(実行80)。書込みがPBRになされる場合、あるいはリマップ・ゾーンとのコリジョン(実行85)がある場合、コントローラ20はカード・エラーを出す(実行90)。その他すべての書込みオペレーション(実行95)に対応する場合、コントローラ20はリマッピング・オペレーションを実行する。これらのブランチ(分岐)はより詳細に以下記述する。大切なことは、スマート・フィルタ・ロジック44は、フローチャートに示された全4個のブランチ、全4個のブランチ未満、或いは、示されていない追加のブランチをインプリメントできることに注目することである。
FFを書き込むことにより割り付けられる。任意の新しく作成されたディレクトリーの内部には、ファイル「.」とファイル「..」があり、ディレクトリーとその親をそれぞれ指す(その「.」ファイル・クラスタ番号はディレクトリー・クラスタと同じである。)これらの二つファイルが書込まれた後、ホストは、最終の6バイトを32バイトのリスティング書込むことによりディレクトリー・リスティングを完成する。
ユーザのオペレーションの別の例は、以前にカードに書込まれたファイルを削除することである。ユーザが削除する場合、FAT系オペレーティング・システムは、普通にはカードからファイル・データあるいはファイル名を削除しない。代わりに、文字0xE5がファイル・リスティングの第1番目のバイトに書込まれ、ファイルのクラスタは、FATテーブルのそれらの位置に0x00を書込むことにより割り付けが解除される。ファイル・リスティングで第1番目の文字として「E5」を読み出すホストは、どれも、このファイルが削除済みとしてスキップすることを知る。これにより、さらに、ファイルへ正しい文字を書換え、オリジナルのクラスタを再び割り付けることにより、ファイルを回復する機会が与えられる。
(図5のバイト18-19)が更新されるときに、偽書きの実行によりメモリを保存することに決めてもよい。この例外の理由は、ファイルが読み取られるごとに、マイクロソフト・ウィンドウズ(登録商標)のようなホストの中には、このフィールドに新しい日付を書込み、これで、メモリの512バイトをリマップのために使われる可能性があるためである。これはユーザが知らないうちに書き込みオペレーションを実行するシステムの例である。これを回避するために、スマート・フィルタ・ロジック144は、この特定の更新をインプリメントしないように選択できる。これらの隠しオペレーションの意味および取り扱い方については、この明細書で後に、より深く詳細に検討することとする。
から24KBに拡大する場合)これが起こり得る。ここで、エンド・オブ・ファイル・マーカー0xFFは、新しく付加したデータを指すクラスタ番号と取り替えられることになる。この場合、リマップ・オペレーションが起こり、ホスト5が望むようにデータを修正することが可能になる。
20が、FATテーブルの1MBの値のクラスタをゼロに設定することを偽造する、と仮定する。次に、ユーザがメモリ30に500KBファイルを書込もうとすると仮定する。この場合、ホスト5は、削除オペレーションによって空けたクラスタに新しいファイルを入れようと試みるであろう。ホストは、したがって、新しいクラスタ割付けを書込み、残余のクラスタ0x00を残すであろう。したがって、該スマート・フィルタは、同時に、以前に偽造されたスペースをゼロにしない一方、新しいファイルのクラスタをリマップしなければならない。この例は図8および9で見ることができる。時間0では、偽書き込みが、カード上に値11-FFを維持し、時間1でリマップ・オペレーションにより、カードに新しいファイルのクラスタ11-FFが書込まれるが、猶、スペースが空けられたようには見えないことを保証するために14-FFも維持される。
重要なことは、オペレーションが書き込みであったか、消去、または他のコマンドであったかどうかを問わず、コントローラが、古いデータと新しいデータの比較に基づいた規定のオペレーションをスマートに実行するこの種のシステムにも同じく容易ににスマート・フィルタの概念を適用できることに注目することである。
リマッピング・ロジック46は、特定のアドレスを消去したとホスト装置5に思わせることが出来る新しい論理アドレスに、データを移動させるのに使用することができる。リマッピングはメモリ・コントローラ20による、データおよびアドレスのインディレクション(間接化indirection)を記述するために使用される用語である。この用語は、ホスト5が供給した論理アドレスとは異なる物理位置にデータを書込む概念を指す。リマッピングはフラッシュ・メモリーを含む様々な技術が使用するが、その理由は、性能の向上からウエアレベリング・アルゴリズムによるデータ保全までと色々である。しかし、BCCで作動するOTPまたはFTPのメモリにとって、リマッピングが、消去性を模倣するために使用されるという点で独特である。例えば、ホストがデータセットAをアドレス0に書込むように要求する場合、コントローラ20はアドレス0にデータを書込むことを選ぶことができる。その後、前述のように消去オペレーションを実行するため、文字「E5」を書込むような時に、ホスト5はデータをAからBに変更したいと思うかもしれない。この時に、コントローラ20は、スマート・フィルタを使用し、ホスト5が適切にデータセットAを修正していたと断定し、アドレス1のような異なる物理位置にデータセットBを書込むことになる。さて、ホスト5がアドレス0を読み取る場合、コントローラ20は、代わりに、アドレス1にあるデータを返すことを承知していなければならず、従って、ホスト5およびユーザにとってメモリが修正されたように見せるのである。
20は2つの別個のオペレーションを実行する。第一に、前記のように、スマート・フィルタ・ロジック44は、ホスト5がスペースを空けようとFATテーブルに複数の0を書込むことがないように保つ。これは、ファイル削除のような、ユーザが支配するオペレーションがメモリを削除し、開くように見えることのないように保つであろう。しかしながら、リマッッピング用にコントローラ20が消費するメモリは説明がつかなけばならない。
Read3コマンド: READ3として知られるより速い読み取りコマンドが使えるが、これは、コントローラ20が側波帯データを読み取るだけ出来るようにする。これは、最も最近のデータを見つける前にデータの多くの全ページを読み取るオーバーヘッドを減らすでしょう。
フィールドで起きるかもしれない信頼度エラーに対して保護するために、ECCを使用するのが好ましい。現在の好ましい態様では、BCC 20が、上記のリマップ・ポインタもECCデータも保存するために側波帯を使用する。ECCは側波帯利用可能性の点で8バイト、16バイトか、あるいは任意の適切なサイズであってよい。現在の好ましい態様では、128B
ECCアルゴリズムが使用され、ここでは「スマートな大きいブロックECC」(”smart large block ECC”)と呼ぶ。大きいブロックECC (「LB
ECC」)はECCワードにつき二個のクローズ(closes)を使用するが、これは、補遺Iで検討する。BCC 20がリマップおよびECC情報の両用に側波帯を利用するに当たり、側波帯は、正常な大きいブロックECCスキームに基づいて、ワード当たり二箇のクローズを保存するだけの十分なスペースを持たないかもしれない。従って、この大きいブロックECCスキームは、ワードの最終の2バイトが書込まれてしまうと、各ワードを1回クロ−ズするだけにより「スマート」になる。FATテーブル中の各エントリーがサイズで2バイトであるので、2バイトの値が選ばれる。(LB ECCと組み合わせて動的リマッピングを実行する場合、コントローラ20は、フィールドでの製品の最高の信頼度を保証するために、ECCのクローズ・オペレーションを考慮するのが好ましい。言いかえれば、割付けは、好ましくは、FATテーブル中のECCワードをクローズし、続いて後日、同じワードを更新してはならない。) 亦、データ・エリアに依存するクローズ・オペレーションを持つこともできる。例えば、FATテーブルを更新する場合、上記のように2バイトのセグメントに基づいて更新するのが意味があるかもしれないが、データ・エリアを更新する場合には、これは意味をなさないかもしれない。データ・エリアを更新する場合、大抵のホストは、完全にデータをすべて書込んだ後にだけ、ファイル・エントリーの最終の6バイトを更新するので、クローズオペレーションは、ワードの最後の6バイトに基づいて実行することができる。最後に、BCC
20は、以前にクローズしたECCワードが更新中であることを検知する場合、リマップ・オペレーションを実行することを決めてもよい。これは、フィールドでの最高の信頼度を維持するために、ECCと組み合わせてリマップ・オペレーションを利用することになる。
これらの好ましい態様と共に使用できる代案が多数ある。例えば、メモリ装置のコントローラにインプリメントする代わりに、スマートフィルタ・ロジック、リマッピング・ロジックおよびスマートECCのどれか、あるいはすべてを、全体的にあるいは部分的に、メモリ装置あるいはホスト装置中の別のコントローラのような別のコンポーネント中で実行することができる。さらに、用語「回路類」は、それに記述された機能をインプリメントすることができるすべてのコンポーネントを指す。回路類の例は、上記の例も、コンピューター実行可能な命令を実行するプロセッサー、アプリケイション専用集積回路、フィールドでプログラム可能なゲート・アレイ、アナログ回路、あるいは現在既知か将来開発されるその他すべてのハードウェア装置(ソフトウェアを実行するかまたは実行せず)も、さらにこれらの任意の組み合わせも含む。
大きなブロックECCのインプリメンテーション
概観
大きなブロックECCは下記を含むことが好ましい:
— 128BのECCワードサイズ。
— 単一のエラー修正、しかしダブルのエラー検知なし。
— 高々二回のECCパリティー更新を許可するスマートECC更新。
ECCインプリメンテーションは、ECCパリティ・ビットがバイト当たり計算されることを可能にするインプリメンテーションに類似。側波帯中の記憶装置(ストレージ)が制限されているので、パリティ・ビットを縮小するために、DEDなしでSECのみを行うため次の修正を行った。図13は、どのようにパリティ・ビットが8ビットのデータの例に作動するかを示す:
— P0はD1、D3、D5、D7をカバーする。
— P1はD2、D3、D6、D7をカバーする。
— P2はD4、D5、D6、D7をカバーする。
— P3はD0、D1、D2、D3をカバーする。
— P4はデータ・ビットをすべてカバーする。
下記は、1024ビット(すべての1のECCワードはすべての1のパリティ・ビットに帰着すべきである)のECCワードに好ましくは要求される12のパリティー方程式である:
— P0=!XOR(D1,D3,D5,...,D1023)
— P1=!XOR(D2-D3,D6-D7,...,D1022-D1023)
— P2=!XOR(D4-D7,D12-D15,...,D1020-D1023)
— P3=!XOR(D8-D15,D24-31,...,D1016-D1023)
— P4=!XOR(D16-D31,D48-D63,...,D1008-D1023)
— P5=!XOR(D32-D63,D96-127,...,D992-D1023)
— P6=!XOR(D64-D127,D192-D255,...,D960-D1023)
— P7=!XOR(D128-D255,D384-D511,...,D896-D1023)
— P8=!XOR(D256-D511,D768-D1023)
— P9=!XOR(D512-D1023)
— P10=!XOR(D0-D511)[0091]
— P11=!XOR(D0-D1023)
スマートECCの更新が、パリティ・ビットがECCワードにつき二度書込まれることを可能にするのが好ましい。この特性は、部分的なページ書き込みをECCによってカバーするのを可能にする。パリティ・ビットの第一セットは、新しいデータの第一書き込み中にECCワードに書込まれる。新しいデータを備えたどんな後の書き込みも、パリティ・ビットの第1セットを無効にするのが好ましい。ページが「クローズ」中の時、パリティ・ビットの第2セットが書込まれる。ページは、ECCワードの最後のオクトバイト中の任意のビットがプログラムされるとき、ページが「クローズ」されたと見なされる。このモデルは、部分的なページ書き込みを要するFAT構造とうまく作動する。
ECCワードで、1ページ当たり16BのパリティーのECCパリティ(parity)、 未使用(unused)、および有効(valid)ビットがある。
Unused[1:0] フラグおよびValid[1:0]フラグは、パリティ・ビット用に三つの異なの状態をエンコードするのに使用される。次のテーブルはこれらの状態を列記する。
TF_SECC_PAGE0_TB='1='の場合、メモリのPAGE 0の取り扱いは、わずかに異なる。通常は、ワードの最後のオクトバイト中の任意のビットがプログラムされる場合に限り、Parity1ビットを書込むことができる。この特別の場合では、この制限が撤廃される。したがって、一旦Parity0ビットが使用されれば、次の書き込みは常に使用されているParity1ビットに帰着する。
ECCロジックに影響するトリム・ヒューズ・ビットが3個ある:
TF_ECC_DISABLE_TB
TF_SMARTECC_DISABLE_TB='1’の場合、Smart ECC更新ロジックは無効(ディセーブル)にする。TF_SMARTECC_DISABLE_TB='0’の場合、Smart
ECC更新ロジックが可能にする。(TF_ECC_DISABLE_TBも'0’にセットしければならない。
TF_SECC_PAGE0_TB='0’の場合、すべてのページは同じSmart ECロジックを使用する。TF_SECC_PAGE0_TB='1’の場合、pageの取り扱いは、Smart
EC更新ロジックに関して、すべての他のページとは異なる。
すべてのECCのパリティ(parity)、 未使用(unused)、および有効(valid)ビットは、各ページの側波帯中のバイト512-527に存在する。
以下に4つのECCワードすべてのビットがどのように配列されるかを示す。
ECCロジックのテストはDAMモードを使用して行うことができる。DAMモードが書き込みか読み取りのどちらかのトランザクション用に可能になっている場合は、データはページ・レジスタとメモリ配列間で転送されない。ECCロジックをテストするのには、TF_ECC_DISABLE_TBビットをデアサート(deassert)しなければならない。次にこのテストをより詳細に記述する。
1. DAMモードを可能にし、ECCを可能にする。
2. 書き込みデータの512バイトおよびECCデータの16バイトでDATAINコマンドを出す。
3. READコマンドを出す。(データをリードバック出来る前に、ECCのスクラッビングがなされるので、チップは使用中になる。)
4. データの512バイトが予想通りであることを確認する。(シングル・ビット・エラーがPRに書き込まれた場合は、エラーが修正されたことを確認する。)
1. DAMモードを可能にし、ECCを可能にする
2. 書き込みデータの512バイトでDATAINコマンドを出す。
3. PROGコマンドを出す。(これによってECCの生成された16バイトが、PRに書込まれる。)
4. READコマンドを出す。(書き込みデータの以前の512バイトは、ECCデータの生成された16バイトと一緒にリードバックされる。)
5. 16ECCバイトが正確に生成されていることを確認する。
内部ECC生成を拡張ページ・スペースに保存されたシンドロームと使い、ユーザが拡張ページ・スペースにアクセスすることができない;および(2) 内部ECC生成をバイパスし、ユーザが拡張ページ・スペースにアクセスし、かつ自己のECCアルゴリズムを使用することを可能にする。別のオプション(オプション2)では、ECCシンドロームビットを専用スペースに保存する。ブロック・サイズによっては、これは、CRスペースのうちの幾分かを使用することもある。
Claims (59)
- メモリ装置において、
メモリ配列と、
該メモリ配列と接続されているコントローラとを備え、
該コントローラは、
(a)メモリ配列の第一アドレスから、データを書込むことの要求を、該メモリ配列と接続されているホスト装置から受け取り、
(b)該第1アドレスに書込まれるよう要求されたデータを該第1アドレスに格納されているデータと比較し、
(c)(b)における該比較に基づいて、
(c1)該第1アドレスに該データを書き込む、
(c2)該第1アドレスに該データを書込まずに、該ホスト装置に該データが該第1アドレスに書込まれたと通知する、又は
(c3)第1のアドレスの代わりに第2アドレスにデータを書き込む
のうちの一つを実行する
ことを特徴とするメモリ装置。 - 該コントローラが、一組のプログラムされていないメモリ・セルを含む該第1アドレスに応じて、(c1)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該第1アドレスに書込むように要求されたデータが該第1アドレスに格納されているデータに付加する場合には、(c1)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該第1アドレスに含まれている該データが、ファイル・システム構造を含むことを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、以前に割り付けられたアドレスが空きであることを示すデータをファイル割付けテーブルに書込むよう試みている該ホストに応じて、(c2)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、ファイル・リスティングに前もって定めたフィールドにのみデータを書込むよう試みている該ホストに応じて、
(c2) を実行するように作動することを特徴とする請求項1に記載のメモリ装置。 - 該コントローラが、最後にアクセスされた日付フィールドにのみデータを書込むよう試みている該ホストに応じて、(c2)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、ディレクトリ・リスティングの前もって定めたフィールドにのみデータを書込むよう試みている該ホストに応じて、(c2)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該第1アドレスに書込まれるよう要求された該データが第1アドレスに格納されている該データとは異なる場合に、(c3)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該第1アドレスに書込まれるよう要求された該データが該第1アドレスに格納されている該データとは異なり、その差分がファイル・リスティングに前もって定めたフィールドだけに存在しない場合には、(c3)を実行するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該第1アドレスに書込まれるよう要求された該データが該第1アドレスに格納されている該データとは異なり、その差分がディレクトリ・リスティングに前もって定めたフィールドだけに存在しない場合には、(c3)を実行するように作動することを特徴とする請求項1に記載のメモリ装置
- 該コントローラが、該メモリ装置をフォーマットしようする試みに応じて、エラーを発生することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、ファイル割付けテーブルのアドレスに先行するアドレスにデータを書込もうとする試みに応じて、エラーを発生するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該メモリ配列に前もって定めたアドレスにデータを書込もうとする試みに応じて、更にエラーを発生するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、該メモリ配列が一杯であることに応じて、エラーを発生するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、(c3)を実行する時に該第2アドレスがもはや空きでないことを示すために、更にメモリ配列中のファイル割付けテーブルを更新するように作動することを特徴とする請求項1に記載のメモリ装置。
- 該メモリ配列が、部分的に書込みできる論理ユニットへ組織化され、それによって、該ロジック・ユニットが一杯になるまでは、複数の書込みオペレーションが個々の論理ユニットに実行することができ、最後の書き込みオペレーションが論理ユニットになされる場合に、該コントローラが、論理ユニット用にECCデータを書込むように作動することを特徴とする請求項1に記載のメモリ装置。
- 該コントローラが、
第1ページレジスタ、と
第2ページレジスタとを備え、
該第1アドレスに格納されている該データは、該第1ページレジスタに書込まれ、一方、該第1アドレスに書込まれるべき該データが該第2ページレジスタに書込まれる
ことを特徴とする請求項1に記載のメモリ装置。 - 該メモリ配列は、一回プログラム可能なメモリ配列を含むことを特徴とする請求項1に記載のメモリ装置。
- 該メモリ配列は数回プログラム可能なメモリ配列を含むことを特徴とする請求項1に記載のメモリ装置。
- 該メモリ配列が三次元のメモリ配列を含むことを特徴とする請求項1に記載のメモリ装置。
- 該メモリ装置が、該ホスト装置上の対応する電気的コネクターと対をなすように設定された電気的なコネクターを有し、また、該ホスト装置が多数回書込みファイル・システムを含むことを特徴とする請求項1に記載のメモリ装置。
- メモリ装置において、
ファイル・システム構造を保存するメモリ配列と、
該メモリ配列と連通しているコントローラを備え、
該コントローラは、
(a)該メモリ配列と接続しているホスト装置から、以前に割り付けられたアドレスが空きであることを示すデータを該ファイル・システム構造に書込めという要求を受け取り、
(b)該ファイル・システム構造に該データを書込まずに、該ホスト装置に、該データが該ファイル・システム構造に既に書込まれていたと通知するように作動する
ことを特徴とするメモリ装置。 - 該ファイル・システム構造がファイル割付けテーブルを含むことを特徴とする請求項23に記載のメモリ装置。
- 該データが複数の0を含むことを特徴とする請求項23に記載のメモリ装置。
- 該メモリ配列が1回プログラム可能なメモリ配列を含むことを特徴とする請求項23に記載のメモリ装置。
- 該メモリ配列が数回プログラム可能なメモリ配列を含むことを特徴とする請求項23に記載のメモリ装置。
- 該メモリ配列が三次元のメモリ配列を含むことを特徴とする請求項23に記載のメモリ装置。
- メモリ装置において、
ファイル・システム構造を保存するメモリ配列と、
該メモリ配列と連通しているコントローラを備え、
該コントローラは、該ファイル・システム構造のアドレスに先行するアドレスにデータを書込もうとする試みに応じて、エラーを発生するように作動する
ことを特徴とするメモリ装置。 - 該ファイル・システム構造がファイル割付けテーブルを含むことを特徴とする請求項29に記載のメモリ装置。
- 該メモリ装置をフォーマットするコマンドに応じて、該ファイル・システム構造の該アドレスに先行する該アドレスにデータを書込もうとする試みがなされることを特徴とする請求項29に記載のメモリ装置。
- 該メモリ配列が一回プログラム可能なメモリ配列を含むことを特徴とする請求項29に記載のメモリ装置。
- 該メモリ配列が数回プログラム可能なメモリ配列を含むことを特徴とする請求項29に記載のメモリ装置。
- 該メモリ配列が三次元のメモリ配列を含むことを特徴とする請求項29に記載のメモリ装置。
- メモリ装置において、
メモリ配列と、
該メモリ配列と連通しているコントローラとを含み、
該コントローラは、
(a)メモリ装置と連通しているホスト装置からリクエストを受け取り、メモリ配列の第一アドレスにデータを書込み、
(b)第1アドレスではなくて、第2アドレスにデータを書込み、
(c)第2アドレスが最早空きでないことを示すために、メモリ配列のファイル・システム構造の更新を行う
ことを特徴とするメモリ装置。 - 該ファイル・システム構造がファイル割付けテーブルを含むことを特徴とする請求項35に記載のメモリ装置。
- 該メモリ配列は、第1サイズを持つエリアへ論理上組織化され、該データが該第1サイズ未満の第2サイズから成り、側波帯エリアは、該第1サイズと該第2サイズとの差として定義され、該コントローラがさらに該第1アドレスの側波帯エリアに該第2アドレスを書込むように作動することを特徴とする請求項35に記載のメモリ装置。
- 該コントローラがさらに、該側波帯エリアだけを読み取るように作動することを特徴とする請求項37に記載のメモリ装置。
- 該コントローラが、側波帯からのデータを保存するように作動するキャッシュを含むことを特徴とする請求項37に記載のメモリ装置。
- 該メモリ配列は、第1サイズを持つエリアへ論理上組織化され、該データが該第1サイズ未満の第2サイズから成り、側波帯エリアは、第1サイズと第2サイズとの差によって定義され、該コントローラがさらに、該第1アドレスの側波帯エリアのリマップ・テーブルにアドレスを書込むように作動することを特徴とする請求項35に記載のメモリ装置。
- 該コントローラが、該リマップ・テーブルからのデータを保存するように作動するキャッシュを含むことを特徴とする請求項40に記載のメモリ装置。
- 該コントローラがさらに、物理から論理へのアドレス変換テーブル(physical-to-logical-address table)に該第2アドレスを書込むように作動することを特徴とする請求項35に記載のメモリ装置。
- 該コントローラがさらに、ポインター・テーブルに該第2アドレスを書込むように作動することを特徴とする請求項35に記載のメモリ装置。
- 該メモリ配列がリマッピング・オペレーション用に指定された、あらかじめ割り付けられたエリアを含み、該メモリ配列に空きアドレスがこれ以上ないことを該ファイル・システム構造が示す場合に、該コントローラが、該あらかじめ割り付けられたエリアへ書込むように作動することを特徴とする請求項35に記載のメモリ装置。
- 該あらかじめ割り付けられたエリアは、該ホスト装置でアクセス可能であることを特徴とする請求項44に記載のメモリ装置。
- 該コントローラが、2つの状態を含むフラグを保存し、第1状態はポインタ追跡スキームが使われていることを示し、第2状態はテーブル・スキームが使用されていることを示すことを特徴とする請求項35に記載のメモリ装置。
- 該メモリ配列が一回プログラム可能なメモリ配列を含むことを特徴とする請求項35に記載のメモリ装置。
- 該メモリ配列が数回プログラム可能なメモリ配列を含むことを特徴とする請求項35に記載のメモリ装置。
- 該メモリ配列が三次元のメモリ配列を含むことを特徴とする請求項35に記載のメモリ装置。
- 該メモリ装置が、該ホスト装置上の対応する電気的なコネクターと対をなすように設定された電気的なコネクターを有し、該ホスト装置が多数回書込みファイル・システムを含むことを特徴とする請求項35に記載のメモリ装置。
- 部分的に書込みできる複数の論理ユニットに組織化され、それによって、個々の論理ユニットへの複数の書込みを、該ロジック・ユニットが一杯になるまでは、実行することができるようにしたメモリ配列論理ユニットと、
メモリ配列と接続しているコントローラとを備え
該コントローラは、一つの論理ユニットに対しECCデータを、最後の書き込みオペレーションがその論理ユニットになされるまで、書込むようにされている
ことを特徴とするメモリ装置。 - 最後の書き込みオペレーションが該論理ユニットになされる場合だけに、該コントローラが、該論理ユニット用にECCデータを書込むように作動することを特徴とする請求項1に記載のメモリ装置。
- 最初の書き込みオペレーションが該論理ユニットになされる場合および最後の書き込みオペレーションが該論理ユニットになされる場合の両方に、該コントローラが、該論理ユニット用にECCデータを書込むように作動することを特徴とする請求項51に記載のメモリ装置。
- 最後の2バイトが論理ユニットに書込まれる場合に、該コントローラが、論理ユニット用にECCデータを書込むように作動することを特徴とする請求項51に記載のメモリ装置。
- 最後の6バイトが論理ユニットに書込まれる場合に、該コントローラが論理ユニット用にECCデータを書込むように作動することを特徴とする請求項51に記載のメモリ装置。
- ECCワードが無効とされていることに応じて、該コントローラがさらにリマップ・オペレーションを実行するように作動することを特徴とする請求項51に記載のメモリ装置。
- 該メモリ配列が一回プログラム可能なメモリ配列を含むことを特徴とする請求項51に記載のメモリ装置。
- 該メモリ配列が数回プログラム可能なメモリ配列を含むことを特徴とする請求項51に記載のメモリ装置。
- 該メモリ配列が三次元のメモリ配列を含むことを特徴とする請求項51に記載のメモリ装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US60435304P | 2004-08-24 | 2004-08-24 | |
US60/604,353 | 2004-08-24 | ||
US10/956,463 US7398348B2 (en) | 2004-08-24 | 2004-09-30 | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewritable memory |
US10/956,463 | 2004-09-30 | ||
PCT/US2005/026054 WO2006023196A2 (en) | 2004-08-24 | 2005-07-22 | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewriteable memory |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008511072A true JP2008511072A (ja) | 2008-04-10 |
JP2008511072A5 JP2008511072A5 (ja) | 2008-09-11 |
JP4852548B2 JP4852548B2 (ja) | 2012-01-11 |
Family
ID=35944823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007529862A Expired - Fee Related JP4852548B2 (ja) | 2004-08-24 | 2005-07-22 | 消去可能/書換え可能メモリ用に設計されたホスト装置で一回又は数回プログラム可能なメモリを使用する方法および装置 |
Country Status (10)
Country | Link |
---|---|
US (4) | US7398348B2 (ja) |
EP (3) | EP2088510A3 (ja) |
JP (1) | JP4852548B2 (ja) |
KR (1) | KR101139224B1 (ja) |
CN (2) | CN102163133B (ja) |
AT (1) | ATE505762T1 (ja) |
AU (1) | AU2005277792A1 (ja) |
CA (1) | CA2572788A1 (ja) |
DE (1) | DE602005027471D1 (ja) |
WO (1) | WO2006023196A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154676A (ja) * | 2009-12-28 | 2011-08-11 | Panasonic Corp | 半導体記録装置、半導体記録装置の制御方法及び半導体記録システム |
JP2014523596A (ja) * | 2011-07-25 | 2014-09-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ファイルシステムをクリーニングするための方法及び装置並びにその記憶媒体 |
Families Citing this family (146)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7800932B2 (en) * | 2005-09-28 | 2010-09-21 | Sandisk 3D Llc | Memory cell comprising switchable semiconductor memory element with trimmable resistance |
WO2005091136A1 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method for a self-optimizing reservation in time of compute resources |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2586763C (en) | 2004-11-08 | 2013-12-17 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
KR101404083B1 (ko) * | 2007-11-06 | 2014-06-09 | 삼성전자주식회사 | 반도체 디스크 및 그것의 동작 방법 |
US20060139995A1 (en) * | 2004-12-28 | 2006-06-29 | Ali Keshavarzi | One time programmable memory |
US8452938B1 (en) | 2004-12-30 | 2013-05-28 | Azul Systems, Inc. | Garbage collection with memory quick release |
US7315917B2 (en) * | 2005-01-20 | 2008-01-01 | Sandisk Corporation | Scheduling of housekeeping operations in flash memory systems |
US7904518B2 (en) | 2005-02-15 | 2011-03-08 | Gytheion Networks Llc | Apparatus and method for analyzing and filtering email and for providing web related services |
US8402109B2 (en) | 2005-02-15 | 2013-03-19 | Gytheion Networks Llc | Wireless router remote firmware upgrade |
US8631130B2 (en) | 2005-03-16 | 2014-01-14 | Adaptive Computing Enterprises, Inc. | Reserving resources in an on-demand compute environment from a local compute environment |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
US9225663B2 (en) | 2005-03-16 | 2015-12-29 | Adaptive Computing Enterprises, Inc. | System and method providing a virtual private cluster |
WO2006108187A2 (en) | 2005-04-07 | 2006-10-12 | Cluster Resources, Inc. | On-demand access to compute resources |
WO2007016419A2 (en) * | 2005-07-29 | 2007-02-08 | The General Hospital Corporation | Methods and compositions for reducing skin damage |
US7689807B2 (en) * | 2006-02-09 | 2010-03-30 | Sigmatel, Inc. | Mass storage device, mass storage controller and methods for use therewith |
JP4911576B2 (ja) * | 2006-03-24 | 2012-04-04 | 株式会社メガチップス | 情報処理装置および追記型メモリ利用方法 |
US7851761B2 (en) * | 2006-03-27 | 2010-12-14 | Liviu Popa-Simil | Multi-band terahertz receiver and imaging device |
US8429375B1 (en) * | 2006-06-16 | 2013-04-23 | Synopsys, Inc. | Memory management unit (MMU) to make only one time programmable (OTP) memory appear multiple times programmable (MTP) |
US7783956B2 (en) * | 2006-07-12 | 2010-08-24 | Cronera Systems Incorporated | Data recorder |
US7450414B2 (en) * | 2006-07-31 | 2008-11-11 | Sandisk 3D Llc | Method for using a mixed-use memory array |
WO2008016419A2 (en) * | 2006-07-31 | 2008-02-07 | Sandisk 3D Llc | Mixed-use memory array and method for use therewith |
US20080023790A1 (en) * | 2006-07-31 | 2008-01-31 | Scheuerlein Roy E | Mixed-use memory array |
US7486537B2 (en) * | 2006-07-31 | 2009-02-03 | Sandisk 3D Llc | Method for using a mixed-use memory array with different data states |
JP5072292B2 (ja) * | 2006-09-05 | 2012-11-14 | キヤノン株式会社 | 撮像装置及びその制御方法 |
WO2008042594A1 (en) * | 2006-09-29 | 2008-04-10 | Sandisk Corporation | Managing file allocation table information |
US7752412B2 (en) * | 2006-09-29 | 2010-07-06 | Sandisk Corporation | Methods of managing file allocation table information |
US7630225B2 (en) | 2006-09-29 | 2009-12-08 | Sandisk Corporation | Apparatus combining once-writeable and rewriteable information storage to support data processing |
US7681008B2 (en) * | 2006-09-29 | 2010-03-16 | Sandisk Corporation | Systems for managing file allocation table information |
US7730270B2 (en) | 2006-09-29 | 2010-06-01 | Sandisk Corporation | Method combining once-writeable and rewriteable information storage to support data processing |
US20080091901A1 (en) * | 2006-10-12 | 2008-04-17 | Alan David Bennett | Method for non-volatile memory with worst-case control data management |
US20080091871A1 (en) * | 2006-10-12 | 2008-04-17 | Alan David Bennett | Non-volatile memory with worst-case control data management |
WO2008070813A2 (en) | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a front-end, distributed raid |
US8935302B2 (en) | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
US8095723B2 (en) * | 2007-02-16 | 2012-01-10 | Electronics And Telecommunications Research Institute | Log-based flash translation layer and operating method thereof |
US7917479B2 (en) | 2007-03-20 | 2011-03-29 | Micron Technology, Inc. | Non-volatile memory devices, systems including same and associated methods |
US7633799B2 (en) * | 2007-03-30 | 2009-12-15 | Sandisk Corporation | Method combining lower-endurance/performance and higher-endurance/performance information storage to support data processing |
US7603499B2 (en) * | 2007-03-30 | 2009-10-13 | Sandisk Corporation | Method for using a memory device with a built-in memory array and a connector for a removable memory device |
US7613857B2 (en) * | 2007-03-30 | 2009-11-03 | Sandisk Corporation | Memory device with a built-in memory array and a connector for a removable memory device |
US20080244203A1 (en) * | 2007-03-30 | 2008-10-02 | Gorobets Sergey A | Apparatus combining lower-endurance/performance and higher-endurance/performance information storage to support data processing |
US8010502B2 (en) * | 2007-04-13 | 2011-08-30 | Harris Corporation | Methods and systems for data recovery |
US7890711B2 (en) * | 2007-04-18 | 2011-02-15 | Oracle America, Inc. | Methods, apparatus, and program products for improved finalization |
US8533847B2 (en) * | 2007-05-24 | 2013-09-10 | Sandisk Il Ltd. | Apparatus and method for screening new data without impacting download speed |
US11237956B2 (en) * | 2007-08-13 | 2022-02-01 | Digital Kiva, Inc. | Apparatus and system for object-based storage solid-state device |
US7970919B1 (en) * | 2007-08-13 | 2011-06-28 | Duran Paul A | Apparatus and system for object-based storage solid-state drive and method for configuring same |
US9824006B2 (en) | 2007-08-13 | 2017-11-21 | Digital Kiva, Inc. | Apparatus and system for object-based storage solid-state device |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US20090144513A1 (en) * | 2007-12-03 | 2009-06-04 | Pitney Bowes Inc. | Database update method |
US7836226B2 (en) | 2007-12-06 | 2010-11-16 | Fusion-Io, Inc. | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
JP4479806B2 (ja) * | 2008-02-19 | 2010-06-09 | ソニー株式会社 | 記録制御装置、記録システム、記録メディア制御方法及びプログラム |
US20100017558A1 (en) | 2008-04-11 | 2010-01-21 | Richard Matthew Fruin | Memory device operable in read-only and re-writable modes of operation |
US8386664B2 (en) * | 2008-05-22 | 2013-02-26 | International Business Machines Corporation | Reducing runtime coherency checking with global data flow analysis |
US8281295B2 (en) * | 2008-05-23 | 2012-10-02 | International Business Machines Corporation | Computer analysis and runtime coherency checking |
US8285670B2 (en) | 2008-07-22 | 2012-10-09 | International Business Machines Corporation | Dynamically maintaining coherency within live ranges of direct buffers |
US8156404B1 (en) * | 2008-08-29 | 2012-04-10 | Nvidia Corporation | L2 ECC implementation |
US9104686B2 (en) | 2008-12-16 | 2015-08-11 | Sandisk Technologies Inc. | System and method for host management of discardable objects |
US8849856B2 (en) * | 2008-12-16 | 2014-09-30 | Sandisk Il Ltd. | Discardable files |
US8880776B2 (en) * | 2008-12-16 | 2014-11-04 | Sandisk Il Ltd. | Data access at a storage device using cluster information |
US9020993B2 (en) | 2008-12-16 | 2015-04-28 | Sandisk Il Ltd. | Download management of discardable files |
US8205060B2 (en) * | 2008-12-16 | 2012-06-19 | Sandisk Il Ltd. | Discardable files |
US20100153474A1 (en) * | 2008-12-16 | 2010-06-17 | Sandisk Il Ltd. | Discardable files |
US8375192B2 (en) * | 2008-12-16 | 2013-02-12 | Sandisk Il Ltd. | Discardable files |
US9015209B2 (en) * | 2008-12-16 | 2015-04-21 | Sandisk Il Ltd. | Download management of discardable files |
US20100235473A1 (en) * | 2009-03-10 | 2010-09-16 | Sandisk Il Ltd. | System and method of embedding second content in first content |
US8341501B2 (en) | 2009-04-30 | 2012-12-25 | International Business Machines Corporation | Adaptive endurance coding of non-volatile memories |
US20100333155A1 (en) * | 2009-06-30 | 2010-12-30 | Philip David Royall | Selectively using local non-volatile storage in conjunction with transmission of content |
CN101610477B (zh) | 2009-07-13 | 2012-09-05 | 中兴通讯股份有限公司 | 多媒体消息业务的处理系统和方法 |
WO2011031796A2 (en) * | 2009-09-08 | 2011-03-17 | Fusion-Io, Inc. | Apparatus, system, and method for caching data on a solid-state storage device |
US8289801B2 (en) | 2009-09-09 | 2012-10-16 | Fusion-Io, Inc. | Apparatus, system, and method for power reduction management in a storage device |
US8601222B2 (en) | 2010-05-13 | 2013-12-03 | Fusion-Io, Inc. | Apparatus, system, and method for conditional and atomic storage operations |
EP2476079A4 (en) | 2009-09-09 | 2013-07-03 | Fusion Io Inc | APPARATUS, SYSTEM, AND METHOD FOR STORAGE ALLOCATION |
US9223514B2 (en) | 2009-09-09 | 2015-12-29 | SanDisk Technologies, Inc. | Erase suspend/resume for memory |
US9122579B2 (en) | 2010-01-06 | 2015-09-01 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for a storage layer |
US8255655B2 (en) | 2009-10-02 | 2012-08-28 | Sandisk Technologies Inc. | Authentication and securing of write-once, read-many (WORM) memory devices |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
TWI407327B (zh) * | 2009-11-24 | 2013-09-01 | Phison Electronics Corp | 資料處理方法、系統及儲存裝置控制器 |
JP2011141638A (ja) * | 2010-01-06 | 2011-07-21 | Sony Corp | 情報処理装置および方法、並びにプログラム |
US9070453B2 (en) | 2010-04-15 | 2015-06-30 | Ramot At Tel Aviv University Ltd. | Multiple programming of flash memory without erase |
US8725934B2 (en) | 2011-12-22 | 2014-05-13 | Fusion-Io, Inc. | Methods and appratuses for atomic storage operations |
WO2012016089A2 (en) | 2010-07-28 | 2012-02-02 | Fusion-Io, Inc. | Apparatus, system, and method for conditional and atomic storage operations |
US8463802B2 (en) | 2010-08-19 | 2013-06-11 | Sandisk Il Ltd. | Card-based management of discardable files |
US8549229B2 (en) | 2010-08-19 | 2013-10-01 | Sandisk Il Ltd. | Systems and methods for managing an upload of files in a shared cache storage system |
TWI443666B (zh) * | 2010-08-31 | 2014-07-01 | Silicon Motion Inc | 單次可編程記憶體之資料編程電路及方法 |
US8984216B2 (en) | 2010-09-09 | 2015-03-17 | Fusion-Io, Llc | Apparatus, system, and method for managing lifetime of a storage device |
TWI447736B (zh) * | 2010-09-13 | 2014-08-01 | Silicon Motion Inc | 單次可編程記憶體之資料編程電路及方法 |
TWI420305B (zh) * | 2010-10-08 | 2013-12-21 | Phison Electronics Corp | 記憶體儲存裝置、其記憶體控制器與自動產生填充檔案的方法 |
US8769374B2 (en) | 2010-10-13 | 2014-07-01 | International Business Machines Corporation | Multi-write endurance and error control coding of non-volatile memories |
US9218278B2 (en) | 2010-12-13 | 2015-12-22 | SanDisk Technologies, Inc. | Auto-commit memory |
US10817502B2 (en) | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent memory management |
US10817421B2 (en) | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent data structures |
US9208071B2 (en) | 2010-12-13 | 2015-12-08 | SanDisk Technologies, Inc. | Apparatus, system, and method for accessing memory |
US9047178B2 (en) | 2010-12-13 | 2015-06-02 | SanDisk Technologies, Inc. | Auto-commit memory synchronization |
CN103262054B (zh) | 2010-12-13 | 2015-11-25 | 桑迪士克科技股份有限公司 | 用于自动提交存储器的装置、系统和方法 |
US20120239860A1 (en) | 2010-12-17 | 2012-09-20 | Fusion-Io, Inc. | Apparatus, system, and method for persistent data management on a non-volatile storage media |
WO2012100087A2 (en) | 2011-01-19 | 2012-07-26 | Fusion-Io, Inc. | Apparatus, system, and method for managing out-of-service conditions |
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US9201677B2 (en) | 2011-05-23 | 2015-12-01 | Intelligent Intellectual Property Holdings 2 Llc | Managing data input/output operations |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
WO2012116369A2 (en) | 2011-02-25 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for managing contents of a cache |
US8788849B2 (en) | 2011-02-28 | 2014-07-22 | Sandisk Technologies Inc. | Method and apparatus for protecting cached streams |
US8966191B2 (en) | 2011-03-18 | 2015-02-24 | Fusion-Io, Inc. | Logical interface for contextual storage |
US9563555B2 (en) | 2011-03-18 | 2017-02-07 | Sandisk Technologies Llc | Systems and methods for storage allocation |
US9925021B2 (en) | 2011-08-29 | 2018-03-27 | David Regev | Dental implant systems and methods for accessing intra cavity areas therethrough |
US9292668B1 (en) * | 2011-09-01 | 2016-03-22 | Google Inc. | Systems and methods for device authentication |
US8984032B2 (en) | 2011-12-15 | 2015-03-17 | Sandisk Technologies Inc. | Method and system for providing storage device file location information |
US9152641B2 (en) | 2011-12-15 | 2015-10-06 | Sandisk Technologies Inc. | Method and system for providing storage device file location information |
US9274937B2 (en) | 2011-12-22 | 2016-03-01 | Longitude Enterprise Flash S.A.R.L. | Systems, methods, and interfaces for vector input/output operations |
US8971144B2 (en) | 2012-01-19 | 2015-03-03 | Quixant Plc | Hardware write-protection |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US9116812B2 (en) | 2012-01-27 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a de-duplication cache |
US10359972B2 (en) | 2012-08-31 | 2019-07-23 | Sandisk Technologies Llc | Systems, methods, and interfaces for adaptive persistence |
US8914570B2 (en) | 2012-05-04 | 2014-12-16 | International Business Machines Corporation | Selective write-once-memory encoding in a flash based disk cache memory |
US9612966B2 (en) | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
US10339056B2 (en) | 2012-07-03 | 2019-07-02 | Sandisk Technologies Llc | Systems, methods and apparatus for cache transfers |
US10509776B2 (en) | 2012-09-24 | 2019-12-17 | Sandisk Technologies Llc | Time sequence data management |
US10318495B2 (en) | 2012-09-24 | 2019-06-11 | Sandisk Technologies Llc | Snapshots for a non-volatile device |
US9183082B2 (en) | 2013-01-29 | 2015-11-10 | Qualcomm Incorporated | Error detection and correction of one-time programmable elements |
US9842053B2 (en) | 2013-03-15 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for persistent cache logging |
US10102144B2 (en) | 2013-04-16 | 2018-10-16 | Sandisk Technologies Llc | Systems, methods and interfaces for data virtualization |
US10558561B2 (en) | 2013-04-16 | 2020-02-11 | Sandisk Technologies Llc | Systems and methods for storage metadata management |
US9842128B2 (en) | 2013-08-01 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for atomic storage operations |
US10019320B2 (en) | 2013-10-18 | 2018-07-10 | Sandisk Technologies Llc | Systems and methods for distributed atomic storage operations |
TWI494944B (zh) * | 2013-10-25 | 2015-08-01 | Phison Electronics Corp | 記憶體模組偵測方法、記憶體控制電路單元及儲存裝置 |
US10073630B2 (en) | 2013-11-08 | 2018-09-11 | Sandisk Technologies Llc | Systems and methods for log coordination |
US9858990B2 (en) | 2014-12-18 | 2018-01-02 | Apple Inc. | Hardware-based performance equalization for storage devices |
US9946607B2 (en) | 2015-03-04 | 2018-04-17 | Sandisk Technologies Llc | Systems and methods for storage error management |
US10657274B2 (en) * | 2015-06-29 | 2020-05-19 | Samsng Electronics Co., Ltd. | Semiconductor device including memory protector |
US9785354B2 (en) * | 2015-06-29 | 2017-10-10 | International Business Machines Corporation | Selective write control |
US20170038994A1 (en) * | 2015-08-06 | 2017-02-09 | Kabushiki Kaisha Toshiba | Storage device and data reading method |
US9760301B2 (en) * | 2015-08-13 | 2017-09-12 | Texas Instruments Incorporated | WOM code emulation of EEPROM-type devices |
WO2017058184A1 (en) * | 2015-09-30 | 2017-04-06 | Hewlett Packard Enterprise Development Lp | Remapping operations |
JP6426666B2 (ja) * | 2016-07-27 | 2018-11-21 | ファナック株式会社 | プログラマブルコントローラ |
US10838637B2 (en) | 2018-02-08 | 2020-11-17 | Micron Technology, Inc. | Status management in storage backed memory package |
TWI705329B (zh) * | 2018-06-25 | 2020-09-21 | 慧榮科技股份有限公司 | 實體儲存對照表產生裝置及方法以及電腦程式產品 |
TWI661302B (zh) * | 2018-06-25 | 2019-06-01 | 慧榮科技股份有限公司 | 實體儲存對照表產生裝置及方法以及電腦程式產品 |
US11200118B2 (en) | 2019-08-29 | 2021-12-14 | Micron Technology, Inc. | Semiconductor device with modified command and associated methods and systems |
US10963336B2 (en) | 2019-08-29 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with user defined operations and associated methods and systems |
US11042436B2 (en) | 2019-08-29 | 2021-06-22 | Micron Technology, Inc. | Semiconductor device with modified access and associated methods and systems |
KR102493864B1 (ko) * | 2021-11-16 | 2023-01-31 | 삼성전자주식회사 | 스토리지 장치의 동작 방법 및 호스트 및 스토리지 장치를 포함하는 스토리지 시스템의 동작 방법 |
US11960397B2 (en) * | 2022-06-16 | 2024-04-16 | Western Digital Technologies, Inc. | Data mapping comparison for improved synchronization in data storage devices |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1331548A2 (en) * | 2002-01-18 | 2003-07-30 | Lexar Media, Inc. | File management of one-time-programmable non volatile memory devices |
US20040098428A1 (en) * | 2001-11-13 | 2004-05-20 | Schulze Paul E. | Memory card having one-time programmable memory |
Family Cites Families (91)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2346801A (en) | 1942-06-11 | 1944-04-18 | Blaw Knox Co | Fluid dosing device |
EP0108053A1 (en) | 1982-04-30 | 1984-05-16 | Massachusetts Institute Of Technology | Method and apparatus for reusing non-erasable memory media |
US4608300A (en) * | 1983-06-21 | 1986-08-26 | Ciba-Geigy Corporation | Fibre composite materials impregnated with a curable epoxide resin matrix |
US4740890A (en) | 1983-12-22 | 1988-04-26 | Software Concepts, Inc. | Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media |
US5247494A (en) * | 1984-06-08 | 1993-09-21 | Matsushita Electric Industrial Co. Ltd. | Method for recording and reproducing information on and from an optical disk having a read-only recorded zone and a writable and readable zone using a spot laser light |
US4646266A (en) | 1984-09-28 | 1987-02-24 | Energy Conversion Devices, Inc. | Programmable semiconductor structures and methods for using the same |
US4682318A (en) * | 1985-10-16 | 1987-07-21 | Sony Corporation | Method and apparatus for updating optical memory disc |
US4953122A (en) * | 1986-10-31 | 1990-08-28 | Laserdrive Ltd. | Pseudo-erasable and rewritable write-once optical disk memory system |
US5218685A (en) * | 1987-01-02 | 1993-06-08 | General Electric Company | System for write once read many optical storage devices to appear rewritable |
US5119291A (en) | 1987-03-26 | 1992-06-02 | International Business Machines Corporation | Modular data storage directories for large-capacity data storage units wherein the index to the records in a sector is located in the next adjacent sector |
US5040110A (en) * | 1987-10-30 | 1991-08-13 | Matsushita Electric Industrial Co., Ltd. | Write once read many optical disc storage system having directory for storing virtual address and corresponding up-to-date sector address |
US5029125A (en) | 1989-03-07 | 1991-07-02 | Drexler Technology Corporation | Method of reading and writing files on nonerasable storage media |
DE69024086T2 (de) * | 1989-04-13 | 1996-06-20 | Sundisk Corp | EEprom-System mit Blocklöschung |
US5266230A (en) * | 1989-04-26 | 1993-11-30 | Tonen Corporation | Electroviscous fluid containing antioxidant and/or corrosion inhibitor |
US5307497A (en) | 1990-06-25 | 1994-04-26 | International Business Machines Corp. | Disk operating system loadable from read only memory using installable file system interface |
CA2045799C (en) * | 1990-07-11 | 1999-03-23 | Kenneth L. Thompson | File system with read/write and read only storage |
US5537652A (en) | 1990-08-20 | 1996-07-16 | International Business Machines Corporation | Data file directory system and method for writing data file directory information |
US5265230A (en) * | 1990-08-29 | 1993-11-23 | Hewlett-Packard Company | Method and apparatus for determining sector status in a data storage device by writing a status of read-only, writable, or obliterated in an error recovery area of each sector |
JP3315711B2 (ja) * | 1990-09-17 | 2002-08-19 | ヒューレット・パッカード・カンパニー | 磁気光学ディスクデータ記憶装置の書き込み管理システム及び方法 |
GB2251323B (en) * | 1990-12-31 | 1994-10-12 | Intel Corp | Disk emulation for a non-volatile semiconductor memory |
US5321824A (en) | 1991-04-22 | 1994-06-14 | International Business Machines Corporation | Accessing last recorded data in a continuation chain |
US5448728A (en) * | 1991-08-08 | 1995-09-05 | Sharp Kabushiki Kaisha | Storage medium control system for controlling a write-once read-many storage medium |
US5261072A (en) * | 1991-10-31 | 1993-11-09 | Tandy Corporation | Compact disk data transfer system using cache memory |
TW261687B (ja) * | 1991-11-26 | 1995-11-01 | Hitachi Seisakusyo Kk | |
JP3445304B2 (ja) | 1993-03-29 | 2003-09-08 | 株式会社東芝 | ファイル管理装置 |
KR970008188B1 (ko) * | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
US5437012A (en) * | 1993-04-19 | 1995-07-25 | Canon Information Systems, Inc. | System for updating directory information and data on write once media such as an optical memory card |
US5463772A (en) | 1993-04-23 | 1995-10-31 | Hewlett-Packard Company | Transparent peripheral file systems with on-board compression, decompression, and space management |
JPH0745085A (ja) | 1993-07-30 | 1995-02-14 | Tec Corp | データ書込装置及びデータ読取装置 |
US5559778A (en) | 1993-12-28 | 1996-09-24 | Sony Corporation | Apparatus and method for completing an incomplete recording on an optical disc |
CA2145379C (en) | 1994-03-24 | 1999-06-08 | William P. Robbins | Method and apparatus for addressing memory |
US5590320A (en) * | 1994-09-14 | 1996-12-31 | Smart Storage, Inc. | Computer file directory system |
DE69535330T2 (de) * | 1994-09-14 | 2007-05-31 | Intel Corporation, Santa Clara | Caching-System mit Explitzer Folgeliste |
US5761700A (en) | 1994-12-27 | 1998-06-02 | Motorola Inc. | ROM mapping and inversion apparatus and method |
US5838614A (en) * | 1995-07-31 | 1998-11-17 | Lexar Microsystems, Inc. | Identification and verification of a sector within a block of mass storage flash memory |
RU2182722C2 (ru) * | 1995-11-10 | 2002-05-20 | Сони Корпорейшн | Устройство и способ обработки информации |
US5752005A (en) | 1996-01-22 | 1998-05-12 | Microtest, Inc. | Foreign file system establishing method which uses a native file system virtual device driver |
US5832263A (en) * | 1996-03-15 | 1998-11-03 | Digidox, Inc. | System and method for in-place modification of information recorded in read-only storage using modifiable non-volatile storage associated with an agent |
JPH09330273A (ja) * | 1996-06-10 | 1997-12-22 | Mitsubishi Electric Corp | メモリカードおよびメモリカードにおける誤り訂正方法 |
US5832525A (en) | 1996-06-24 | 1998-11-03 | Sun Microsystems, Inc. | Disk fragmentation reduction using file allocation tables |
KR100205539B1 (ko) | 1996-07-19 | 1999-07-01 | 윤종용 | 하드디스크의 중첩 분할 방법 |
JP2001503167A (ja) | 1996-08-14 | 2001-03-06 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ |
US5907855A (en) | 1996-10-15 | 1999-05-25 | Micron Technology, Inc. | Apparatus and method for reducing programming cycles for multistate memory system |
US5835396A (en) | 1996-10-17 | 1998-11-10 | Zhang; Guobiao | Three-dimensional read-only memory |
JP3220041B2 (ja) | 1997-04-08 | 2001-10-22 | 北海道日本電気ソフトウェア株式会社 | Cd−rom読み出しシステムおよびcd−rom読み出し方法 |
NO972803D0 (no) * | 1997-06-17 | 1997-06-17 | Opticom As | Elektrisk adresserbar logisk innretning, fremgangsmåte til elektrisk adressering av samme og anvendelse av innretning og fremgangsmåte |
JP3175648B2 (ja) | 1997-07-07 | 2001-06-11 | ソニー株式会社 | 記憶装置及びデータの書込み方法 |
JPH1145085A (ja) | 1997-07-24 | 1999-02-16 | Takashi Kasamatsu | ピアノ |
NO973993L (no) | 1997-09-01 | 1999-03-02 | Opticom As | Leseminne og leseminneinnretninger |
JPH11203191A (ja) | 1997-11-13 | 1999-07-30 | Seiko Epson Corp | 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体 |
JPH11149788A (ja) * | 1997-11-17 | 1999-06-02 | Oki Electric Ind Co Ltd | 半導体記憶装置及びその制御方法 |
US6073280A (en) * | 1998-02-23 | 2000-06-13 | Farnum; Randal J. | Rescue and invalid support belt |
US6108236A (en) * | 1998-07-17 | 2000-08-22 | Advanced Technology Materials, Inc. | Smart card comprising integrated circuitry including EPROM and error check and correction system |
US6034882A (en) | 1998-11-16 | 2000-03-07 | Matrix Semiconductor, Inc. | Vertically stacked field programmable nonvolatile memory and method of fabrication |
MY122279A (en) * | 1999-03-03 | 2006-04-29 | Sony Corp | Nonvolatile memory and nonvolatile memory reproducing apparatus |
US6351838B1 (en) | 1999-03-12 | 2002-02-26 | Aurora Communications, Inc | Multidimensional parity protection system |
US6377526B1 (en) | 1999-04-01 | 2002-04-23 | Plasmon Ide, Inc. | Erasable WORM optical disk and method of writing thereto multiple times |
US6370642B1 (en) * | 1999-05-21 | 2002-04-09 | Advanced Micro Devices, Inc. | Programming the size of a broad-specific boot ROM |
US6539396B1 (en) * | 1999-08-31 | 2003-03-25 | Accenture Llp | Multi-object identifier system and method for information service pattern environment |
US6615253B1 (en) * | 1999-08-31 | 2003-09-02 | Accenture Llp | Efficient server side data retrieval for execution of client side applications |
US6490703B1 (en) | 1999-09-30 | 2002-12-03 | Intel Corporation | Bus power savings using selective inversion in an ECC system |
JP3249959B2 (ja) | 1999-10-12 | 2002-01-28 | 株式会社ソニー・コンピュータエンタテインメント | 可搬型記憶装置及びメモリカード |
EP1279249B1 (en) * | 2000-03-29 | 2007-08-01 | Vadium Technology Inc. | One-time-pad encryption with central key service and keyable characters |
US6775423B2 (en) | 2000-05-03 | 2004-08-10 | Microsoft Corporation | Systems and methods for incrementally updating an image in flash memory |
US6598135B1 (en) * | 2000-05-03 | 2003-07-22 | Plasmon Ide | System and method for defining rewriteable data storage media as write once data storage media |
JP2002050157A (ja) * | 2000-08-03 | 2002-02-15 | Hitachi Ltd | 情報記録媒体及び情報記録再生装置 |
US6515888B2 (en) | 2000-08-14 | 2003-02-04 | Matrix Semiconductor, Inc. | Low cost three-dimensional memory array |
US6424581B1 (en) * | 2000-08-14 | 2002-07-23 | Matrix Semiconductor, Inc. | Write-once memory array controller, system, and method |
US6545891B1 (en) | 2000-08-14 | 2003-04-08 | Matrix Semiconductor, Inc. | Modular memory device |
US6658438B1 (en) * | 2000-08-14 | 2003-12-02 | Matrix Semiconductor, Inc. | Method for deleting stored digital data from write-once memory device |
US6772274B1 (en) | 2000-09-13 | 2004-08-03 | Lexar Media, Inc. | Flash memory system and method implementing LBA to PBA correlation within flash memory array |
US20030120858A1 (en) | 2000-09-15 | 2003-06-26 | Matrix Semiconductor, Inc. | Memory devices and methods for use therewith |
US6584541B2 (en) * | 2000-09-15 | 2003-06-24 | Matrix Semiconductor, Inc. | Method for storing digital information in write-once memory array |
JP3898430B2 (ja) * | 2000-09-18 | 2007-03-28 | 株式会社日立製作所 | 光記録装置およびそれに用いる光ディスク |
US20020108054A1 (en) | 2001-02-02 | 2002-08-08 | Moore Christopher S. | Solid-state memory device storing program code and methods for use therewith |
US6778974B2 (en) | 2001-02-02 | 2004-08-17 | Matrix Semiconductor, Inc. | Memory device and method for reading data stored in a portion of a memory device unreadable by a file system of a host device |
US6948026B2 (en) * | 2001-08-24 | 2005-09-20 | Micron Technology, Inc. | Erase block management |
EP1532520A2 (en) * | 2001-12-10 | 2005-05-25 | Incipient, Inc. | Fast path for performing data operations |
US6563745B1 (en) * | 2001-12-14 | 2003-05-13 | Matrix Semiconductor, Inc. | Memory device and method for dynamic bit inversion |
US6904492B2 (en) * | 2001-12-19 | 2005-06-07 | Hewlett-Packard Development Company, L.P. | Write-once memory device including non-volatile memory for temporary storage |
US6950918B1 (en) * | 2002-01-18 | 2005-09-27 | Lexar Media, Inc. | File management of one-time-programmable nonvolatile memory devices |
US6888785B2 (en) * | 2002-01-25 | 2005-05-03 | Sun Microsystems, Inc. | Fault tolerance mechanism for a storage device that stores data in stacks within an integral storage medium |
AU2003201837A1 (en) * | 2002-04-01 | 2003-10-23 | Sony Corporation | Storage medium and storage medium recording method |
DE60322143D1 (de) | 2002-04-30 | 2008-08-28 | Lexar Media Inc | Dateienverwaltung für einmalig programmierbare nichtflüchtige Speicheranordnungen |
US20040088474A1 (en) * | 2002-10-30 | 2004-05-06 | Lin Jin Shin | NAND type flash memory disk device and method for detecting the logical address |
US7051251B2 (en) | 2002-12-20 | 2006-05-23 | Matrix Semiconductor, Inc. | Method for storing data in a write-once memory array using a write-many file system |
US20040153902A1 (en) * | 2003-01-21 | 2004-08-05 | Nexflash Technologies, Inc. | Serial flash integrated circuit having error detection and correction |
US7240277B2 (en) * | 2003-09-26 | 2007-07-03 | Texas Instruments Incorporated | Memory error detection reporting |
US7106636B2 (en) * | 2004-06-22 | 2006-09-12 | Intel Corporation | Partitionable memory device, system, and method |
US7451265B2 (en) * | 2006-08-04 | 2008-11-11 | Sandisk Corporation | Non-volatile memory storage systems for phased garbage collection |
US7752412B2 (en) * | 2006-09-29 | 2010-07-06 | Sandisk Corporation | Methods of managing file allocation table information |
-
2004
- 2004-09-30 US US10/956,463 patent/US7398348B2/en active Active
-
2005
- 2005-07-22 AT AT05773526T patent/ATE505762T1/de not_active IP Right Cessation
- 2005-07-22 CN CN2011100641632A patent/CN102163133B/zh not_active Expired - Fee Related
- 2005-07-22 AU AU2005277792A patent/AU2005277792A1/en not_active Abandoned
- 2005-07-22 WO PCT/US2005/026054 patent/WO2006023196A2/en active Application Filing
- 2005-07-22 JP JP2007529862A patent/JP4852548B2/ja not_active Expired - Fee Related
- 2005-07-22 KR KR1020077002998A patent/KR101139224B1/ko not_active IP Right Cessation
- 2005-07-22 EP EP09006071A patent/EP2088510A3/en not_active Withdrawn
- 2005-07-22 CN CN2005800278711A patent/CN101401076B/zh active Active
- 2005-07-22 EP EP09006070A patent/EP2088509A3/en not_active Withdrawn
- 2005-07-22 EP EP05773526A patent/EP1782209B1/en active Active
- 2005-07-22 DE DE602005027471T patent/DE602005027471D1/de active Active
- 2005-07-22 CA CA002572788A patent/CA2572788A1/en not_active Abandoned
-
2007
- 2007-04-27 US US11/796,828 patent/US7861058B2/en active Active
- 2007-04-27 US US11/796,882 patent/US7689805B2/en active Active
-
2010
- 2010-11-01 US US12/917,293 patent/US8209476B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040098428A1 (en) * | 2001-11-13 | 2004-05-20 | Schulze Paul E. | Memory card having one-time programmable memory |
EP1331548A2 (en) * | 2002-01-18 | 2003-07-30 | Lexar Media, Inc. | File management of one-time-programmable non volatile memory devices |
JP2003257132A (ja) * | 2002-01-18 | 2003-09-12 | Lexar Media Inc | 1回プログラム可能な不揮発性メモリデバイスのファイル管理 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154676A (ja) * | 2009-12-28 | 2011-08-11 | Panasonic Corp | 半導体記録装置、半導体記録装置の制御方法及び半導体記録システム |
JP2014523596A (ja) * | 2011-07-25 | 2014-09-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ファイルシステムをクリーニングするための方法及び装置並びにその記憶媒体 |
US9104685B2 (en) | 2011-07-25 | 2015-08-11 | Tencent Technology (Shenzhen) Company Limited | Method, device and storage medium for cleaning up file systems |
Also Published As
Publication number | Publication date |
---|---|
KR20070046844A (ko) | 2007-05-03 |
KR101139224B1 (ko) | 2012-04-20 |
US20060047920A1 (en) | 2006-03-02 |
CA2572788A1 (en) | 2006-03-02 |
CN102163133A (zh) | 2011-08-24 |
DE602005027471D1 (de) | 2011-05-26 |
EP2088509A3 (en) | 2009-08-26 |
EP1782209A2 (en) | 2007-05-09 |
US7398348B2 (en) | 2008-07-08 |
US20110047416A1 (en) | 2011-02-24 |
WO2006023196A3 (en) | 2008-09-25 |
CN101401076A (zh) | 2009-04-01 |
CN101401076B (zh) | 2011-05-18 |
US20070208908A1 (en) | 2007-09-06 |
US20070208907A1 (en) | 2007-09-06 |
ATE505762T1 (de) | 2011-04-15 |
US7689805B2 (en) | 2010-03-30 |
JP4852548B2 (ja) | 2012-01-11 |
EP2088510A3 (en) | 2009-08-26 |
WO2006023196A2 (en) | 2006-03-02 |
EP1782209A4 (en) | 2009-04-22 |
US8209476B2 (en) | 2012-06-26 |
EP2088509A2 (en) | 2009-08-12 |
CN102163133B (zh) | 2013-07-10 |
EP1782209B1 (en) | 2011-04-13 |
AU2005277792A1 (en) | 2006-03-02 |
US7861058B2 (en) | 2010-12-28 |
EP2088510A2 (en) | 2009-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4852548B2 (ja) | 消去可能/書換え可能メモリ用に設計されたホスト装置で一回又は数回プログラム可能なメモリを使用する方法および装置 | |
JP2008511072A5 (ja) | ||
US8266366B2 (en) | Memory device operable in read-only and write-once, read-many (WORM) modes of operation | |
US7752412B2 (en) | Methods of managing file allocation table information | |
US7681008B2 (en) | Systems for managing file allocation table information | |
JP4238514B2 (ja) | データ記憶装置 | |
US10126959B2 (en) | Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage | |
JP4206688B2 (ja) | データ処理装置及びデータ処理方法 | |
US20060161725A1 (en) | Multiple function flash memory system | |
US20100217927A1 (en) | Storage device and user device including the same | |
TW200841174A (en) | Host device and memory system | |
WO2003056433A1 (fr) | Dispositif a memoire et appareil d'enregistrement/reproduction utilisant ledit dispositif | |
TWI498738B (zh) | 檔案保護方法與系統及其記憶體控制器與記憶體儲存裝置 | |
JPH10124384A (ja) | 不揮発性半導体メモリの制御方法 | |
WO2008042594A1 (en) | Managing file allocation table information | |
KR20050086389A (ko) | 플래시메모리카드의 미러인터페이스 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080722 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110412 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110708 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110715 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110811 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110818 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110912 |
|
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: 20111018 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111024 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4852548 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141028 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |