TW576966B - Non-volatile cache integrated with mass storage device - Google Patents

Non-volatile cache integrated with mass storage device Download PDF

Info

Publication number
TW576966B
TW576966B TW090108446A TW90108446A TW576966B TW 576966 B TW576966 B TW 576966B TW 090108446 A TW090108446 A TW 090108446A TW 90108446 A TW90108446 A TW 90108446A TW 576966 B TW576966 B TW 576966B
Authority
TW
Taiwan
Prior art keywords
volatile
data
cache
storage device
scale
Prior art date
Application number
TW090108446A
Other languages
Chinese (zh)
Inventor
Richard L Coulson
Original Assignee
Intel 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
Application filed by Intel Corp filed Critical Intel Corp
Application granted granted Critical
Publication of TW576966B publication Critical patent/TW576966B/en

Links

Classifications

    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/313In storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

A method of processing a request for data, the method comprising: receiving a request for a first set of data stored in a non-volatile mass storage device; determining that the first set of data is stored in a non-volatile cache of the non-volatile mass storage device; reading the first set of data from the non-volatile cache; and sending the first set of data.

Description

576966 五、發明說明(l) 發明範疇 本發明的具體實施例係關於資料 發明的具體實施例係關於具有一非# # & f 2 ^σ本 置。 、旁 非揮發快取的大型儲存裝 發明背景 ㈣Π:可t =存資料在一非揮發記憶體及-非揮發大 憶體(DRAM),靜態隨機存取記憶體(SRAM) ’二二= 動恕P返機存取記憶體(RDRAM)等。非揮發大 範例,但不限於,一硬碟機,3. 5英对軟碟,5 2 5 碟’ZIP®機(例如美國Utah州Roy的Iomega公司所製造), Jaz® 機(I〇mega 公司製造),LS_12〇 Superdisk(例如美國 Minnesota州Oakdale的Imation公司所製造),一可寫入 位多功能光碟(DVD-RAM),一可讀寫光碟(CD-RW),二磁f 大型儲存裝置,一光學大型儲存裝置,一光磁性大型儲广 裝置,一全像式儲存裝置等。將資料儲存在電腦的非揮^ έ己憶體的範例包含電腦指令(如一作業系統,應用程式a 等),及由電腦指令所存取的資料。 工 當一揮發記憶體失去電源時,儲存在揮發記憶體中的^ 料基本上即消失掉。非揮發大型儲存裝置,例如硬碟機貝 在當該非揮發記憶體失去電源時(例如當停電時,電/腦電’ 源被關閉等),儲存在其上的資料基本上並不會消失:作 是,非揮發記憶體與揮發記憶體相比,其取得及儲存資: 的存取時間要明顯地較長。非揮發記憶體基本上每個^ $576966 V. Description of the invention (l) The scope of the invention The specific embodiments of the present invention are related to materials. The specific embodiments of the invention are related to having a non-## & f 2 ^ σ position. 2. Large non-volatile cache storage background. 旁 Π: t = data can be stored in a non-volatile memory and-non-volatile large memory (DRAM), static random access memory (SRAM). We do not allow access to memory (RDRAM), etc. Non-volatile examples, but not limited to, a hard disk drive, 3.5 British pair of floppy disks, 5 2 5 disk 'ZIP® machine (for example, manufactured by Iomega Corporation of Roy, Utah, USA), Jaz® machine (IOmega (Manufactured by the company), LS_12〇 Superdisk (for example, manufactured by Imation, Oakdale, Minnesota, USA), a writable multi-function disc (DVD-RAM), a rewritable optical disc (CD-RW), two magnetic f large storage Device, an optical large storage device, a photomagnetic large storage device, a holographic storage device, etc. Examples of non-volatile memory that store data on a computer include computer instructions (such as an operating system, application a, etc.), and data accessed by computer instructions. When a volatile memory loses power, the material stored in the volatile memory disappears substantially. For non-volatile large storage devices, such as hard disk drives, when the non-volatile memory loses power (for example, when the power is cut off, the electricity / EEG source is turned off, etc.), the data stored on it will not basically disappear: As a result, compared with volatile memory, the access time for acquiring and storing data: is significantly longer. Non-volatile memory basically every ^ $

第4頁 576966 五、發明說明(2) 單位的價格(例如每MB,或每GB等)會比某些揮發記憶體要 低,例如DRAM, SRAM, RDRAM 等。 除了揮發記憶體及非揮發記憶體之外,電腦基本上包含 能夠依據指令及資料執行運算的處理器。要由處理器運算 的指令及資料要能夠由較慢的非揮發大型儲存裝置(如硬 碟機等)複製到較快的揮發記憶體(如DRAM主記憶體,SRAM 快取等),因為較快的揮發記憶體基本上具有比非揮發大 型儲存裝置明顯較低的記憶體存取時間。處理器效能及電 腦效能可在記憶體存取時間降低時而增進。 因為一非揮發大型儲存裝置(如硬碟機)的記憶體存取時 間通常大於揮發記憶體的記憶體存取時間(如DRAM主記憶 體,SRAM快取等),該非揮發大型儲存裝置通常為效能的 瓶頸。已知的硬碟機包含一揮發性快取(如DRAM快取, SRAM快取),但這種揮發性快取基本上為硬碟機的微控制 器的主記憶體位址空間的部份,藉此來定址位元組。由前 述觀之,其可瞭解到對於能夠增進電腦系統效能的方法及 裝置有潛在的需要。 圖式簡箪說明: 圖1所示為根據本發明的一具體實施例之電腦系統。 圖2所示為根據本發明的一具體實施例之非揮發快取的 架構。 圖3所示為根據本發明的一具體實施例之方法。 圖4所示為根據本發明的一具體實施例之方法。 詳細說明:Page 4 576966 V. Description of the invention (2) The price of the unit (for example, per MB, or per GB, etc.) will be lower than some volatile memory, such as DRAM, SRAM, RDRAM, etc. In addition to volatile and non-volatile memory, computers basically include processors that can perform operations based on instructions and data. The instructions and data to be processed by the processor must be able to be copied from slower non-volatile large storage devices (such as hard drives, etc.) to faster volatile memory (such as DRAM main memory, SRAM cache, etc.) because Fast volatile memory basically has significantly lower memory access times than non-volatile large storage devices. Processor performance and computer performance can increase as memory access time decreases. Because the memory access time of a non-volatile large storage device (such as a hard disk drive) is usually greater than the memory access time of a volatile memory (such as DRAM main memory, SRAM cache, etc.), the non-volatile large storage device is usually Efficiency bottleneck. Known hard drives include a volatile cache (such as DRAM cache, SRAM cache), but this volatile cache is basically part of the main memory address space of the microcontroller of the hard drive, This is used to address the bytes. From the foregoing, it can be understood that there is a potential need for methods and devices that can improve the performance of computer systems. Brief description of the drawings: FIG. 1 shows a computer system according to a specific embodiment of the present invention. FIG. 2 shows a non-volatile cache architecture according to an embodiment of the present invention. FIG. 3 shows a method according to a specific embodiment of the present invention. Figure 4 shows a method according to a specific embodiment of the invention. Detailed description:

第5頁 576966 五、發明說明(3) 根據本發明的一具體實施例,一非揮發大型 含一非揮發快取。該非揮發快取可以儲存要、 讀取自該非揮發大型儲存裝置的主要大型儲存媒體1。’二電 腦系統結合本發明的一具體實施例,可以在當养 揮發大型儲存裝置係由該非揮發快取讀取資料,而非由/該 非揮發大型儲存裝置的主要大型儲存媒體讀取時,而具有 增加的系統效能。 〃 圖1所不為根據本發明的一具體實施例的一電腦系統 (電腦π )。電腦1 1 〇可包含耦合於一記憶體丨3 〇的一處理器 1 2 0。該名詞”耦合”包含一直接的連接,間接的連接,一 直接通訊,一間接通訊等。處理器丨20可以為像是美國加 州Santa Clara的Intel公司所製造的Pentium(g) ΙΠ處理 器’ 一特定應用積體電路(AS I C )’ 一微控制器等。記憶體 130包含儲存數位資訊的裝置,如dram,RDRAM, SRAM,唯 讀記憶體(ROM),快閃記憶體等。在另一具體實施例中, 一系統匯流排可提供該處理器丨2〇及系統元件之間的通訊 管道。該系統匯流排可以是週邊元件内連接(PCI)匯流 排,一擴充工業標準結構匯流排(E I s A)等。 在一具體實施例中,一晶片組可以耦合及管理該處理器 1 2 0及其它系統元件之間的互動,例如記憶體丨3 〇,大型儲 存裝置1 4 0,附著到一擴充匯流排的週邊元件等。該名詞 晶片組包含一個或多個積體電路晶片的組合,做為一集線 器(或核心)來傳送資料於該處理器與其它系統元件之間。 一晶片組的範例包含由I n t e 1公司所製造的8 2 0及8 1 0 E晶片 第6頁 576966 五、發明說明(4) 組。一晶片組可為單—積體電路晶片或可包含兩個或多個 積體電路晶片。一晶片組可包含一記憶體控制集線器。在 一包含一 PC I匯流排的具體實施例中,一記憶體控制集線 器可執行功能像。是熟知的”北橋功能”。一晶片組可包含一 輸入/輸出控制器集線器。在一包含PC I匯流排的具體實施 例中’ 一輸入/輸出控制器集線器可執行的功能像是熟知 的"南橋功能π 。 處理器120也可透過一通訊管道135來耦合到大型儲存裝 置140。在一具體實施例中,通訊管道135可以是一整合裝 置電子(IfE),流排,一加強IDE(EIDE)匯流排,一ΑΤ附加 (ΑΤΑ)匯流排等。在另一具體實施例中,該通訊管道丨可 以為一擴充匯、流排’例如一小型電腦系統介面(scs丨)匯流 排’ ^ \ΕΕΕ 1 3 94匯流排,一通用序列匯流排(USB)等。 大型儲存裝置1 4 〇的範例包含一硬碟機,一 Z I P®機,一 Jaz® 機’-CD-RW 機,―⑽一編機’一LS_12〇Page 5 576966 V. Description of the invention (3) According to a specific embodiment of the present invention, a non-volatile large-scale contains a non-volatile cache. The non-volatile cache can store and read the main large storage medium 1 from the non-volatile large storage device. 'Two computer systems combined with a specific embodiment of the present invention can be used when the volatile large-scale storage device is read by the non-volatile cache, rather than by the main large-scale storage medium of the non-volatile large-scale storage device. With increased system performance. 〃 FIG. 1 is not a computer system (computer π) according to a specific embodiment of the present invention. The computer 1 1 0 may include a processor 1 2 0 coupled to a memory 3 3. The term "coupled" includes a direct connection, an indirect connection, a direct communication, an indirect communication, and so on. The processor 20 may be, for example, a Pentium (g) III processor ', an application specific integrated circuit (AS IC), a microcontroller, etc., manufactured by Intel Corporation of Santa Clara, California, USA. Memory 130 contains devices that store digital information, such as dram, RDRAM, SRAM, read-only memory (ROM), flash memory, and so on. In another specific embodiment, a system bus can provide a communication channel between the processor 20 and system components. The system bus can be a peripheral component interconnect (PCI) bus, an extended industry standard structure bus (E I s A), and so on. In a specific embodiment, a chipset can couple and manage the interaction between the processor 120 and other system components, such as memory 丨 30, large storage device 140, attached to an expansion bus Peripheral components, etc. The term chipset contains a combination of one or more integrated circuit chips, which acts as a hub (or core) to transfer data between the processor and other system components. An example of a chipset includes 8 2 0 and 8 1 0 E wafers manufactured by Inte 1 Company. Page 6 576966 V. Description of Invention (4) Set. A chip set may be a single-integrated circuit chip or may include two or more integrated circuit chips. A chipset may include a memory control hub. In a specific embodiment including a PC I bus, a memory control hub can perform functional images. Is well known as the "Northbridge Function". A chipset may include an input / output controller hub. In a specific embodiment including a PC I bus, the functions performed by an input / output controller hub are like the well-known " south bridge function π. The processor 120 may also be coupled to the large storage device 140 through a communication channel 135. In a specific embodiment, the communication channel 135 may be an integrated device electronics (IfE), a bus, an enhanced IDE (EIDE) bus, an AT (AAT) bus, and the like. In another specific embodiment, the communication channel 丨 may be an expansion bus, a bus 'for example, a small computer system interface (scs 丨) bus' ^ \ ΕΕΕ 1 3 94 bus, a universal serial bus (USB )Wait. Examples of large storage devices 1 4 〇 include a hard disk drive, a Z IP® machine, a Jaz® machine ’-CD-RW machine,“ ⑽ 编 ー 编 ”-LS_12〇

Superdwk機,一磁性儲存裝置,一光學儲存裝置,一光 磁=儲存裝a ’ 一全像式儲存裝置等。一硬碟機的範例為 兵國加州 ScottsValia^A。 m 、土 aam ^ , 〇 VT ley Technology 公司所製 造的Cheetah 18XL石更碟#幾。 大型儲存裝置140可包含一大型儲存裝置控制器141,一 主要大型儲存媒體148,及一非揮發快取丨49。該大型儲存 裝置控制器1 4 1可包含一微控制器丨4 2,一記憶體1 4 3,介 面遨輯144,主要大型儲存媒體£CC(錯誤控制及檢查)邏輯 145,及非揮發快取ECC邏輯146。在本發明的另一具體實Superdwk machine, a magnetic storage device, an optical storage device, a magneto-optical = storage device a ′, a holographic storage device, etc. An example of a hard disk drive is ScottsValia ^ A, California. m, soil aam ^, 〇 Cheetah 18XL 石 更 盘 # Manufactured by VT ley Technology. The large storage device 140 may include a large storage device controller 141, a main large storage medium 148, and a non-volatile cache 49. The large storage device controller 1 4 1 may include a microcontroller 4 2, a memory 1 4 3, an interface series 144, a main large storage medium £ CC (error control and inspection) logic 145, and a non-volatile fast Take ECC logic 146. In another embodiment of the invention

576966576966

ί : I ί型儲存裝置控制器141可包含-個或多個ASIC =功能來運作大型儲存裝置14〇(如一第一題結合一處 等广。…記憶體及介面邏輯mIC實施[邏輯 制:5制:142可執仃儲存在記憶體143中的指令,藉以控 = 的運作(例如記憶體143可包含唯讀記 儲疒;二η子私式指令來在啟動電源時初始化及操作大 駐要二裝*置1 tf: s己隐體143可儲存指令來執行由大型儲存 # 0項取貝料,s己憶體143可儲存指令來控制格式化及 或寫入資料到大型儲存裝置140等。)該記憶體143也可包 έ 一緩衝器(如一揮發記憶體緩衝器),其可暫時地保留要 寫入或讀出自大型儲存裝置14〇的資料。 為一 IDE介面邏輯,EIDE介面邏輯,ATA介面邏輯,SCSI介 面邏輯,光纖通道介面邏輯,Infinigan(j介面邏輯等。在 另一具體貫施例中’大型儲存裝置HQ為一 CJ) 一 rw機或一 DVD-RAM機,而介面邏輯144為ΑΤΑ封包介面(ATAPI)邏輯。 該名詞”邏輯”包含硬體,韌體,軟體,及其組合。 a微控制器142及介面邏輯144可以處理來自處理器12〇的 凊求’進行讀取或寫入資料到大型儲存裝置丨4 〇。在一呈 體實施例中,大型儲存裝置140為一硬碟機,介面邏輯f44 在一具體實施例中,該大型儲存裝置丨4〇為一硬碟機, 該主要大型儲存媒體148包含一個或多個盤。每個盤可具 有一個或多個可記錄表面,每個可記錄表面可以藉由一特 殊讀寫頭來讀取或寫入。母個表面可以區分成複數個磁 576966ί: I ί storage device controller 141 may include one or more ASIC = functions to operate a large storage device 14 (such as a first question combined with one place .... Memory and interface logic mIC implementation [Logic system: 5 system: 142 can execute the instructions stored in the memory 143 to control the operation (for example, the memory 143 can contain read-only memory storage; two η sub-private instructions to initialize and operate when the power is turned on To install * t1, tf: the hidden body 143 can store instructions to execute the large storage # 0 item retrieval, the stored body 143 can store instructions to control formatting and or write data to the large storage device 140 Etc.) The memory 143 can also include a buffer (such as a volatile memory buffer), which can temporarily hold data to be written to or read from the large storage device 14. It is an IDE interface logic, EIDE interface Logic, ATA interface logic, SCSI interface logic, Fibre Channel interface logic, Infinigan (j interface logic, etc. In another specific embodiment, 'the large storage device HQ is a CJ) a rw machine or a DVD-RAM machine, and The interface logic 144 is an ATP package interface (ATAP I) Logic. The term "logic" includes hardware, firmware, software, and combinations thereof. A microcontroller 142 and interface logic 144 can process requests from the processor 12 to read or write data to Large-scale storage device Ⅳ. In an embodiment, the large-scale storage device 140 is a hard disk drive and the interface logic f44. In a specific embodiment, the large-scale storage device 410 is a hard disk drive. The large storage medium 148 contains one or more discs. Each disc can have one or more recordable surfaces, and each recordable surface can be read or written by a special read / write head. The female surfaces can be divided into Multiple magnetic 576966

軌,每個磁軌可以區分成複數個物理磁區。當一硬碟機且 有複數個可記錄表面時,在所有可記錄表面上的相同徑: 位置之所有磁軌的集合稱之為一磁柱。一硬碟機的每個物 理磁區的位置可由一物理位址來指定,用以指定該磁柱, 頭(表面)及物理磁區。 在一具體實施例中, 該請求並不指定該資料 址。硬碟資料的邏輯位 位址等。當袼式化一硬 可以組織所有的物理磁 磁區一個邏輯磁區位址 個邏輯磁區位址映射到 5貝寫清求指定一邏輯磁 為導向(即可定址磁區) 區的集合到特殊的邏輯 指定一邏輯區塊位址時 (即可定址區塊)。 當一處理器請求一硬碟的資料時, 的物理位址,而是該資料的邏輯位 址可包含邏輯磁區位址,邏輯區塊 ^機時,該硬碟機的硬碟機控制器 區成邏輯磁區(例如指定每個物理 等),及一映射演算法,可以將每 一特定的物理位址。當對一硬碟的 區位址時,該硬碟機可視為以磁區 :一硬碟機控制器以可映射物理磁 區塊位址。當對一硬碟的讀寫請求 ,該硬碟機可視為以區塊為導向 非揮發快取149可以快取基本上儲存在主要大型 體1 48的資料。非揮發快取丨49可以快取讀取自、 存媒體148的資#。非揮發快取149與主要:; 媒體U8的存取時間㈣,會具有較快的存取時間。 此’璜取自或寫入到大型儲存裝置14〇的資料, Λ入主要大型儲存媒體148相比,其可完成地更快Λ -具體實施例t,資料讀取/寫入非揮發快取149與資料: 576966 五、發明說明(7) :/寫入相I;匕,僅需要較少的功率。寫回演算法 :發快取“9寫回到該主要大型儲存媒體 實施非 =快取的效能。在另—具體實施例中,實施、二貫過施寫 ^揮务哄取1 4 9可以儲存經常用到的大型 =實用到賴之減少的存取= & ,中 田貝料由主要大型儲存媒體148讀取, 並、,坐由通訊管道135傳送時,該資料的複本即可儲 揮叙快取1 4 9中。當要儲存的資料經由通訊管 置140時,該資料可以寫入到非揮發快= 、根據一寫回演异法’一穿過寫入協定等來寫入到主 =儲^148。因為該非揮發快取149為一非揮發記憶 &,儲存在該非揮發快取的資料基本上在電源(例如终 大型儲存裝置140的電源,該電腦ι10的電源等)關严才]= 未消失。非揮發快取H9可以為任何一種記憶體,其可在 該非揮發快取丨49的外部電源被移除或關閉時,讀ς 入,並保持其資料。 S馬 非揮發快取1 49可為像是一快閃記憶體,一電池傷援 DRAM ’ 一電池備援SRAM,一原子力探針記憶體,一磁性 R A Μ,一鐵電r a Μ ’ 一全像式記憶體,一儲存陣列等。在 具體貫施例中,由非揮發快取1 4 9的讀取可為破壞性讀 取。非揮發快取1 49在資料係以邏輯區塊存取時(即寫^入, 讀取等),其為一區塊導向快取。舉例而言,當大型健存’ 襞置140接收一資料請求(例如一資料請求來將資料自大+型Track, each track can be divided into a plurality of physical magnetic zones. When a hard disk drive has a plurality of recordable surfaces, the set of all tracks at the same diameter on all recordable surfaces is called a magnetic cylinder. The location of each physical magnetic area of a hard disk drive can be specified by a physical address, which is used to specify the magnetic cylinder, head (surface) and physical magnetic area. In a specific embodiment, the request does not specify the data address. Logical address of hard disk data, etc. When formalizing a hard disk, you can organize all the physical magnetic domains, one logical sector address, and one logical sector address. The logical sector address is mapped to 5 bytes. Write clear. Specify a logical magnetic orientation (that is, addressable sector). When logically specifying a logical block address (that is, an addressable block). When a processor requests data from a hard disk, the physical address of the data, but the logical address of the data may include the logical magnetic disk address. When the logical block is a machine, the hard disk controller area of the hard disk drive. Into a logical magnetic area (such as specifying each physical, etc.), and a mapping algorithm, you can assign each specific physical address. When the area address of a hard disk is assigned, the hard disk drive can be regarded as a magnetic area: a hard disk drive controller can map a physical magnetic block address. When a read or write request is made to a hard disk, the hard disk drive can be regarded as block-oriented. Non-volatile cache 149 can cache data basically stored in the main large body 148. Non-volatile cache 49 can cache data read from and stored in media 148. Non-volatile cache 149 and the main :; the access time of the media U8 will have a faster access time. The data obtained from or written to the large-scale storage device 14 can be completed faster than the main large-scale storage medium 148. Specific embodiment t, data read / write non-volatile cache 149 and information: 576966 V. Description of the invention (7): / write phase I; dagger, only requires less power. Write-back algorithm: send cache "9 write back to the main large storage medium to implement non-cached performance. In another-specific embodiment, implement, consistently write ^ write the business to coax 1 4 9 can Large-scale storage often used = practical to reduce the access = &, Nakata shell material is read by the main large-scale storage medium 148, and, when transmitting through the communication channel 135, a copy of the data can be stored In the cache 1 4 9. When the data to be stored is 140 through the communication tube, the data can be written to the non-volatile fast =, according to a write-back method, a write-through protocol, etc. Main = Storage ^ 148. Because the non-volatile cache 149 is a non-volatile memory & Yancai] = not disappeared. The non-volatile cache H9 can be any kind of memory, which can be read in and retained when the external power of the non-volatile cache 49 is removed or turned off. S 马 非Volatile cache 1 49 can be like a flash memory, a battery injury DRA M 'a battery-backed SRAM, an atomic force probe memory, a magnetic RA M, a ferroelectric ra M' a holographic memory, a storage array, etc. In a specific embodiment, non-volatile cache A read of 1 4 9 can be a destructive read. Non-volatile cache 1 49 is a block-oriented cache when the data is accessed in logical blocks (ie, write, read, etc.). In other words, when the large healthy storage device 140 receives a data request (for example, a data request

第10頁 576966 五、發明說明(8) 儲存裝置140讀取到通訊管道135,一資料請求來將通訊管 道1 3 5上的資料寫入到該大型儲存裝置1 4 〇 ),該資料請求 可包含一位址,其為一邏輯區塊位址,一邏輯磁區位址 等。在本發明的一具體實施例中,儲存在非揮發快取1 4 9 中的每個資料登錄皆對應於儲存在主要大型儲存媒體148 的一邏輯位址上的資料。 在大型儲存裝置140為一硬碟機的具體實施例中 揮發快取149可增加系統效能,因為由該非揮發快取149讀 取或寫入資料並不需要像是資料寫入或讀取自硬碟機盤所 需意的暖機時間(例如旋轉該盤到運轉速率,定位讀寫頭 等)。舉例而言,電腦丨丨〇的系統啟動所需要的時間,在當 啟動資訊(例如作業系統資料,裝置驅動程式,應用資料 I)由一非揮發快取149讀取時,相對於由硬碟機盤讀取方 式’其時間可以降低。-電腦11()的使用者所感受的鍵入/ 滑鼠點選的遲滯也可降低。 在一具體實施例中,快取管理指令可以管理資料綠取/ 寫入非揮發快取149,取管理指令可以健存在記:體 143,其可為一大型儲存裝置驅動器的一部份。快取管理 指令可以決定關於什麼資料要被快取,' Π料=等„該主要大型储存心KG 生貝枓寫回專。快取管理指令也可決定什麼資 ^到該非揮發快取149。快取管理決定,例如是否* 料,須快取到非揮發快取! 49 ’其可使用已知的快取;】 演算法來進行。舉例而言,當一快取管理演算法決定有較 576966 五、發明說明(9) 低的可能性該資,r,喷# 再讀入(例如,聲音播的、;;Γ二= AJI檔案的部份,一資料流擋案的部份等)厂則該資; 資:…要大型儲存媒體叫-二 :個1要…其使用像是一最低近期 :: 法,一隨機取代演算法等。 )序一 在-具體實施例巾,該大㈣存裝置14()的 置驅動程式可以為一典型的大型储存,, ,環境中的麵.SYS等),而= 在屺憶體143之中。在這樣的具體實施例中,非揮發快取 =存,對於Ή系統來說是透明的。在另—具體實施例 1快取官理指令可以為Α型健存I置控制器⑷ 取管理邏輯的一部份。 讀取自主要大型儲存媒體148的資料可以由主要大型儲 存媒體ECC邏輯145來處理,而讀取自非揮發快取149的資 料可以由非揮發快取ECC邏輯146來處理。每個主要大型儲 存媒體ECC邏輯1 45及非揮發快取ECC邏輯丨46可在位元或多 位元層次來偵測錯誤,並在資料被送到通訊管道135時修 正其錯誤。 圖2所示為根據本發明的一具體實施例之非揮發快取的 架構。一非揮發快取2〇〇(例如圖!的非揮發快取149)可以 儲存複數個快取登錄205。每個快取登錄2〇5可包含一表登 錄攔區2 1 0及一資料登錄2 2 0。資料登錄2 2 〇可包含一有效 576966 欄區2 2 2,一修正攔區2 2 4,一位址欄區2 2 6,一資料棚f 228 及一 ECC 欄區 229。 ' 一熟知的搜尋演算法來搜尋。 一快取登錄20 5的表登錄欄區21〇可對應到該快取登錄 2 0 5的每個資料登錄220之標籤/索引資訊。該複數個表登 錄欄區210可包含一快取目錄表215,該快取目錄可以存κ取 來決定是否一特定的大型儲存裝置的資料組合(如一硬碟 機的碟磁區,一硬碟機的邏輯區塊等)可存在於該非揮發 快取中。在一具體實施例中,一快取登錄2〇5的表登錄 區210可儲存該快取登錄2〇5的該資料登錄22〇的位址(如一 邏輯磁區位址,一邏輯區塊位址等)。為了決定一大 ^置的一特定資料、組是否存在於一非揮發快取 取目錄表21 5可以佶田飧旦_祐^ ^丨人Λ .. ^ m 取中所請求的; 位址與健存在該快取目錄表2丨5中的磁 一具體貫施例中,一非揮 取。在另一具體實施例中 合快取。 取目錄表2 1 5可以使用像是一熟知的^ 另外’該快取目錄也可使用一雜湊演 體實施例中,該大剞被左驻婆炎_ # 目錄也可使用一雜湊演算法來排序。在一 該大却被左驻婆屯 。在一具Page 10 576966 V. Description of the invention (8) The storage device 140 reads the communication channel 135, a data request to write the data on the communication channel 1 35 to the large storage device 1 4 0), the data request can be Contains a single bit address, which is a logical block address, a logical sector address, and so on. In a specific embodiment of the present invention, each data entry stored in the non-volatile cache 149 corresponds to the data stored at a logical address of the main large storage medium 148. In the embodiment in which the large storage device 140 is a hard disk drive, the volatile cache 149 can increase system performance, because data read or written by the non-volatile cache 149 does not need to be written or read from the hard disk. Warm-up time required for the disc drive (such as rotating the disc to the operating speed, positioning the read / write head, etc.). For example, the time required for the computer to start the system, when the startup information (such as operating system data, device drivers, application data I) is read by a non-volatile cache 149, compared to the hard drive Disk read method 'its time can be reduced. -The lag of typing / mouse clicking felt by users of computer 11 () can also be reduced. In a specific embodiment, the cache management instruction can manage data fetching / writing to the non-volatile cache 149, and the fetch management instruction can be stored in the memory: the body 143, which can be a part of a large storage device driver. The cache management instruction can determine what information is to be cached. 'Π 料 = 等 „The main large storage core KG raw be written back to the special. The cache management instruction can also determine what resources ^ to the non-volatile cache 149. Fast Fetch management decisions, such as whether or not the material must be cached to a non-volatile cache! 49 'It can use known caches;] algorithms to perform. For example, when a cache management algorithm decides that there are more than 576966 V. Description of the invention (9) Low possibility, the data, r, spray # re-read (for example, sound broadcast ;; Γ = part of the AJI file, part of a data flow file, etc.) factory The asset: ... requires a large storage medium called -2: a 1 to ... its use is like a minimum recent :: method, a random replacement algorithm, etc.) Order 1 in-specific embodiments, the big The storage driver of the storage device 14 () may be a typical large-scale storage device, such as the environment in the environment, etc.), and = in the memory body 143. In such a specific embodiment, the non-volatile cache = Save, it is transparent to the Ή system. In another-specific embodiment 1, the cache official instruction can be type A The Jiancun I controller takes part of the management logic. The data read from the main large storage medium 148 can be processed by the main large storage medium ECC logic 145, and the data read from the non-volatile cache 149 can be processed by Non-volatile cache ECC logic 146 to process. Each major large storage medium ECC logic 1 45 and non-volatile cache ECC logic 丨 46 can detect errors at the bit or multi-bit level and send data to the communication The pipeline 135 was corrected for errors. Figure 2 shows the structure of a non-volatile cache according to a specific embodiment of the present invention. A non-volatile cache 200 (such as the non-volatile cache 149 of the picture!) Can store plural numbers Each cache entry 205. Each cache entry 205 may include a table entry block 2 10 and a data entry 2 2 0. The data entry 2 2 0 may include a valid 576966 field area 2 2 2, a correction Block 2 2 4, an address field 2 2 6, a data house f 228 and an ECC field 229. 'A well-known search algorithm to search. A cache entry 20 5 table entry field 21 〇 Corresponds to the tag / index data of each data registration 220 of the cache registration 2 0 5 The plurality of table registration column areas 210 may include a cache directory table 215, and the cache directory may store κ to determine whether a particular large storage device data combination (such as a disk sector of a hard disk drive, The logical block of the disk player, etc.) may exist in the non-volatile cache. In a specific embodiment, a table registration area 210 of a cache entry 205 may store the data entry 22 of the cache entry 20 〇 address (such as a logical sector address, a logical block address, etc.). In order to determine whether a large set of a particular data, group exists in a non-volatile cache directory table 21 5 _ ^ ^ 丨 person Λ .. ^ m fetched in the requested; address and key stored in the cache directory table 2 丨 5 in a specific embodiment, a non-swing. In another embodiment, the cache is combined. The directory table 2 1 5 can be used like a well-known ^ In addition, the cache directory can also use a hash performance. In the embodiment, the big cockroach is left in the po Yan_ # directory can also use a hash algorithm Sort. He was stationed in Potun at a big school. In one

在一具體實施例中,儲存在一大型 取中的每個快取登錄2〇5係對應於一.In a specific embodiment, each cache entry 205 stored in a large fetch corresponds to one.

大型儲存裝置的非揮發快 卜—大型铋左姑$ & 區(如一物理磁區,一邏輯磁區)。 _大型儲存裝置的邏輯 卜在一大型儲存裝置的非 對應於一大型儲存裝置 576966 五、發明說明(11) 在一具體實施例中,在一非揮發快取中有2,〇 〇 〇,〇 〇 〇個 快取登錄205 ’在該快取目錄表215中有2, 000, 000表登 錄。在此具體實施例中,該快取目錄表2丨5的每個表登錄 可以是四個位元組長度,而該快取目錄表2丨5可使用非揮 發記憶體的8 Mb。一快取目錄表2丨5的尺寸可以藉由在每 個快取登錄中包含數個磁區的一區塊來減少(因此可增加 平均快取存取速率)。 在一具體實施例中,一快取登錄2〇5的一資料登錄22〇可 具有一有效欄區222,一修正攔區2 24,一位址欄區226, 一資料攔區228及一ECC攔區229。有效欄區222當快取登錄 205包含有效資料時可以設定為”有效"(例如一邏輯,|丨,,及 :邏輯”0”之一),而當快取登錄2〇5並未包含有效資料 日彳,可以5又疋為無效丨丨(例如一邏輯"1丨,一 丨丨 -個卜舉例而言,當資料由該非揮發快及取退、出輯°來;; 其它貧料來快取在該非揮發快取時,該退出的資料登錄的 有效攔區可由”有效"變為"無效"來標示這個快取登錄不再 儲存陕取的貝料。修正欄區224可在當快取登錄2〇5中的資 同於储存在該大型健存裝置的主要大型儲存媒體 +的位置中的資料時,被設定為,,修正過"。舉例而 3 ’參考圖1及2 ’當對應於該大型儲存裝置14〇的一邏輯 寫回Λ該大型儲存裝置140,並儲存在該非 之4 p、n扮,該貝料在由該主要大型儲存媒體14 〇讀取 ,後已被修正,然後該非揮發快取登錄2 " 求表不對應於儲存在該非揮發快取 576966 五、發明說明(12) 1 4 9的邏輯位址之資料複本會不同於對應到儲存在該主要 大型儲存媒體148中的邏輯位址之資料。修正欄區224可以 稱之為”髒位元”,其可在該資料成功地寫回到該主要大型 儲存媒體148時被清除,並保持在該非揮發快取149中。 位址攔區226可包含儲存在該快取登錄2〇5中的資料之位 址(如邏輯位址,物理位址)。在一具體實施例中,該大量 儲存裝f為一硬碟機,該位址欄區226可以儲存該磁區位 址,並稱之為”磁區識別"。在這樣的具體實施例中,資料 =邏,區塊係快取在該非揮發快取(例如對應於複數個磁 二=:個邏輯區塊),位址欄區226可包含該邏輯區塊的啟 〇次品位址,其中每個邏輯區塊具有一已知的固定尺寸。 資料欄區228可儲存快取登錄20 5的資料。在一具體實施 例-t亥大昼儲存裝置為一硬碟機,資料欄區2 2 8可包含 一貪料的碟磁區(如512位元組),一資料的邏輯區塊等。 ECC_糊區22—9可儲存該資料登錄2〇5的資料之錯誤修正碼。 八體貫&例中’母個資料的邏輯區塊係結合於一錯誤 修正碼。 、、、 圖3所示為根據本發明的一具體實施例之方法。Non-volatile fast for large storage devices-large bismuth left &$; areas (such as a physical magnetic area, a logical magnetic area). _ The logic of a large storage device does not correspond to a large storage device 576966 V. Description of the invention (11) In a specific embodiment, there is 2,000,000 in a non-volatile cache. 〇 cache entries 205 'There are 2,000,000 entries in the cache directory table 215. In this specific embodiment, each table entry of the cache directory table 2-5 can be four bytes long, and the cache directory table 2-5 can use 8 Mb of non-volatile memory. The size of a cache table 2-5 can be reduced by including a block of several sectors in each cache entry (thus increasing the average cache access rate). In a specific embodiment, a data entry 22 of a cache entry 205 may have an effective field 222, a correction field 2 24, an address field 226, a data field 228, and an ECC. Block 229. The valid field 222 can be set to "valid" when the cache entry 205 contains valid data (for example, one of a logic, | 丨, and: logic "0"), and when the cache entry 205 does not include The date of valid data can be 5 and invalid. (For example, a logic " 1 丨, a 丨 丨 --a. For example, when the data from the non-volatile quickly withdraw and withdraw, edited; °; other poor Material cache When the non-volatile cache, the effective block of the logged out data registration can be changed from "active" to "invalid" to indicate that this cache registration no longer stores the shellfish retrieved from Shaanxi. Correct the column area 224 can be set to when the cache entry 2005 is the same as the data stored in the location of the main large storage medium + of the large storage device, and has been corrected ". For example, 3 'Reference Figures 1 and 2 'When a logic corresponding to the large storage device 140 is written back to the large storage device 140 and stored in the non-zero 4 p, n, the shell material is read by the main large storage medium 14 0 Has been corrected, and then the non-volatile cache is logged in 2 " A copy of the data that should be stored in the non-volatile cache 576966 V. Invention description (12) 1 4 9 will be different from the data corresponding to the logical address stored in the main large storage medium 148. Modified column 224 may be referred to as a "dirty bit", which may be cleared when the data is successfully written back to the main large storage medium 148 and maintained in the non-volatile cache 149. The address block 226 may contain storage in The address (such as a logical address, a physical address) of the data in the cache entry 2005. In a specific embodiment, the mass storage device is a hard disk drive, and the address field 226 can store The address of this magnetic area is called “magnetic area identification”. In such a specific embodiment, data = logic, and the block cache is in the non-volatile cache (for example, corresponding to a plurality of magnetic two =: logics). Block), the address field 226 may contain the address of the defective part of the logical block, where each logical block has a known fixed size. The data field 228 may store the data of the cache entry 20 5. In a specific embodiment-thai daylight storage device is a hard disk The data column area 2 2 8 can include a disc disk area (such as 512 bytes), a logical block of data, etc. ECC_ paste area 22-9 can store the data registered in the 205 data Error correction code. The logical block of 'parent data' in the eight-body & example is combined with an error correction code. Fig. 3 shows a method according to a specific embodiment of the present invention.

,I 120的請求,來自電腦110的作業系統之奪 ,,來:執行於電腦11〇的應用程式之請求等)(方塊 )。〃可決定是否該請求的資料是儲存在該 置:非揮發快取中(方塊32。卜在一具體實施例大中里錯該存賓 料明求包含一位址,而該位址係用來產生一快取碰擊•或, I 120 request, from the operating system of computer 110, to: request for applications running on computer 110, etc.) (block). 〃 Can determine whether the requested data is stored in the non-volatile cache (block 32). In a specific embodiment, the storage object is expected to include an address, and the address is used to Generate a cache hit

第15頁 576966 五、發明說明(13) 快:二;=例:代表-:取目錄包含快取 ”的請求資料可以根據4::取發快 if i:當該請求的資料儲存在該非揮發快取厂今ΐ: 發快取讀出(方塊33。),錯誤檢查及修正可以 行(方塊335) ’該資料可以由該大量儲 專;(方塊34〇)。當該請求的資料並未儲存於= 揮發快取t,該資料可由該大詈子於該非 存媒體來讀取(方塊36。)里錯存上置的-主要大量儲 資料來執行(方塊365),兮= = 以對該讀取 送(方塊370),而且該資;由該大篁儲存裝置傳 375 )。 貝科可以寫入到該非揮發快取(方塊 - ί 4Λ示Λ根次據本發明的一具體實施例之方法。其接收 例:言,-在非揮發大型儲存裝置(方塊41〇)。舉 -Γ ^ ^ 冷在—文書處理程式中編輯一文件,其可 ^該文書處理程式來儲存該 ΪΓΠ包含一自動儲存特徵,其可使該文件被自ϊ二 傅仔。又另一你丨Φ, 2U ^ (-^oDPAM^ rb 乍業系統可指示儲存在主記憶體 體(如在主記的ΛΓν皮主儲Λ到一硬碟機或其它的非揮發記憶 定,9姑次肢中〉月除空間給其它資料等)。其可做出決 •定ί=二;斗要儲存在一非揮發快取(方塊42〇)。當做出 該非揮發丨I 方料/彳該非揮發快取時,該資料可以儲存在 在$ # I路u/方塊43〇)。在一具體實施例中,儲存資料 揮^快取可包含更新該非揮發快取的一快取目錄表 第16頁 576966 五、發明說明(14) (/,=做該資料在該非揮發快取 型儲存媒體中(方塊㈣)。,大i儲存裝置的該主要大 根據本發明的一具體實施例,由— 二:法的指令係儲存在一電腦可讀 :;:可5: 媒體可為儲存數位資訊的一裝置 =该電月包可項取 取媒體包含-ROM,#為本技藝中孰牛Λ 一電腦可讀 體(如niicirocode)者。該電腦可讀心體及/或動 指令的一處理器存取來執行。該 、二La於執行 :處理器以其目前形式(如機器二來好執二”:由 7 ★,或需要進一步的作法(如編譯,解 ^供壬一 T才曰 碼等),而預備好給一處理器來執行。 成棱供一存取 根據本發明的具體實施例的方 -非揮發快取中利用快取來讀以:其可較佳地在 農置。該非揮發快取可在即料到-大型儲存 裝置的外部電源被關料,仍可取及該大量儲存 體實施例可降低資料讀取或寫入二大;二:f發明的具 間,藉以增加具有一纟型儲存裝 1儲存裝置的存取時 在此已說明在-大型健存裝^的一 ^之系統效能。 料的方法及裝置之具體實施例 7發快取中儲存資 解。但是,本:ί二;提供對本發明的完整瞭 示於方塊圖的形式。再者,本籌及裝置係 κ的專業人士可立即瞭解 576966 五、發明說明(15) 到,該特定順序中所提出及執行的方法皆為說明之用,其 可想到該順序可以改變,而仍是在本發明的精神及範圍之 内。 在先前的詳細說明中,根據本發明的具體實施例之裝置 及方法已參考特定範例具體實施例來說明。因此,本規格 及圖面應視為是說明性而非限制性。Page 15 576966 V. Description of the invention (13) Quick: Two; = Example: Representative-: Fetch directory contains cache "request data can be obtained according to 4 :: Fetch if i: When the requested data is stored in the non-volatile Cache factory today: send cache readout (block 33.), error checking and correction can be done (block 335) 'The data can be stored by the mass storage; (block 34〇). When the requested data is not Stored in = Volatile Cache t, the data can be read by the big bitch on the non-storage medium (block 36.). The upper-mainly stored data is staggered to execute (block 365). = = The reading is sent (block 370), and the data is transmitted by the large storage device (375). Beco can write to the non-volatile cache (block-ί 4Λshown according to a specific embodiment of the present invention) Method. Its receiving example: In a non-volatile large storage device (block 41〇). Give -Γ ^ ^ Cold in-word processing program to edit a document, which can ^ the word processing program to store the ΪΓΠ contains An automatic storage feature, which enables the file to be edited by the second Fuzi. Yet another you 丨 Φ, 2U ^ (-^ oD The PAM ^ rb system can be instructed to store in the main memory (for example, in the main memory of ΛΓν to a hard disk drive or other non-volatile memory, in the 9th limb, the space is removed for other data Etc.) It can make a decision. Deciding two = two; buckets need to be stored in a non-volatile cache (block 42). When the non-volatile material is made, the data can be stored. At $ # I / u / box 43〇). In a specific embodiment, storing the data cache may include updating a non-volatile cache of a cache directory table, page 16 576966 V. Description of the invention (14) (/, = The data is stored in the non-volatile cache storage medium (box ㈣). The main i storage device is mainly based on a specific embodiment of the present invention, and the method is stored in -2: Computer-readable:;: 5: The media can be a device that stores digital information. The media pack can be selected to include -ROM. # This is a yak in a computer readable body (such as niicirocode). The computer can read the body and / or the instructions of a processor to access and execute. The two La perform: The processor is in its current form (such as the second machine is better than the second one): from 7 ★, or requires further methods (such as compiling, decoding, etc.), and is ready for a processor to execute ... A method for accessing a square-non-volatile cache according to a specific embodiment of the present invention is to use a cache to read: it may be better in the farm. The non-volatile cache may be available immediately-a large storage device The external power supply is shut down, and the large number of storage embodiments can still be used to reduce data reading or writing. The second is the invention of f, which can increase the access time when the storage device has a single storage device. The system performance of a large-scale health storage device has been described here. The specific embodiment of the method and device for the data is stored in the cache. However, the present invention provides a complete illustration of the present invention in the form of a block diagram. In addition, professionals of this chip and device department can immediately understand 576966 V. Description of Invention (15), the methods proposed and implemented in this particular order are for illustration purposes, and it is conceivable that the order can be changed, and It is still within the spirit and scope of the present invention. In the previous detailed description, the device and method according to specific embodiments of the present invention have been described with reference to specific exemplary embodiments. Therefore, this specification and the drawings are to be regarded as illustrative rather than restrictive.

第18頁Page 18

Claims (1)

)/()966 、申請專利範圍 的存資料的裝£,該裝置包含具有-非揮發快取 非揮發大型儲存裝置。 存V;:;專利範圍第1項之裝置,“該非揮發大型儲 、,為區塊導向,且該非揮發快取為區塊導向。 存裝置二:圍第1項之裝置,#中該非揮發大型儲 4 ίί 導 且該非揮發快取為磁區導向。 存裝置為㈣1項之裝置’丨中該非揮發大型儲 存5裝中該非揮發大型儲 仔琛體,該非揮發快取包 文八玉碎 -非揮發儲存媒體與該第二非:::;發儲存媒體,該第 的非揮發健存媒體。 &諸存媒體為一不同形式 6 ·如申請專利範圍第5 媒體包含一且有可々棘士貝之裝置,其中該主要大型儲存 7如申#皇制一=奈表面的盤來儲存資料。 <·戈甲5月專利範圍第5 ^ 第一錯誤修正邏輯,、、之裝置,進一步包含·· 取的資料;及 以處裡自該主要大量儲存媒體讀 第二錯誤修正邏輯, 料。 用以處裡自該非揮發快取讀取的資 8. 如申請專利範圍第丨 含一非揮發儲存陣列。、裝置,其中該非揮發快取包 9. 一種電腦系統,龙台人 -處理器,· 、包含: 第20頁 )/6966 〃、、申凊專利範圍 一耦合到該處理器的記憶體;及 型儲理器的非揮發大型儲存裝置,該非揮發大 一主要大型儲存媒體,及 1 〇 ^〇由到亥主要大型儲存媒體的非揮發快取。 一筮-北拉 第非揮發儲存媒體,該非揮發快取句八 11. 如申請專利二 型儲存裝置為F持逡A 糸統,其中該非揮發大 12. 如申V專:該非揮發快取為區塊導向。 型儲存裝置為磁區了向第9 取:中該非揮發大 發儲存媒體為一可記錄據-?月“…充纟中該第-非揮 錄媒體,一朵與可“、’、粗,八係選自於包含一磁性可記 組中。 子17圯錄媒體,及一光磁性可記錄媒體的群 菸1:六如甘申%專利範圍第9項之電腦系統,其中該第'非揮 體為一館存媒體,其係選自於包含電池以^ ;:产:取S己憶體’電池電源的靜態隨機存取記憶體,快 =憶體,原子探針儲存記憶 電記憶體】: 憶體的群組中。 王琢巧。己 1 5 ·種用以處理_資料請求的方法,該方法包含: 收對儲存在一非揮發大型儲存裝置的第一組資料之請 第21頁 )76966 六、申請專利範圍 求; 決定出該第一組資料係儲存在該非 —非揮發快取中; 谭餐大型儲存裝置的 由該非揮發快取讀取該第一組資料;及 傳送該第一組資料。 1 6.如申請專利範圍第1 5項之方法,其中 :該非揮發快取讀取該第一組資料含 的次組合執行錯誤修正;及 -對該第組貝枓 傳送由該非揮發快取讀取 枓的錯誤修正次組合。 t 3傳运該第一組資 17·如申請專利範圍第16項之方法,進一牛 求接收對儲存在-非揮發大型儲存裝置的厶“料之請 的===資料並不儲存在該非揮發大型館存裝置 第發大型儲存裝置的-主要大型儲存媒體讀取該 及 f入該第二組資料到該非揮發快取 傳送該第二組資料。 其中該請求一第一 其中該請求一第一 ι_8·如申請專利範圍第丨5項之方法, 、、且身料為一區塊導向的請求。 19 ·如申請專利範圍第丨5項之方法, 組資料為一磁區導向的請求。 第22頁) / () 966, a patent application scope for storing data. This device includes a large non-volatile storage device with non-volatile cache. Store V;:; The device of the first scope of the patent, "The non-volatile large-scale storage device is block-oriented, and the non-volatile cache is block-oriented. Storage device 2: The device surrounding item 1, the non-volatile in ## The large-scale storage 4 guides and the non-volatile cache is guided by the magnetic zone. The storage device is the device of item 1 in the non-volatile large-scale storage. The non-volatile large-scale storage is installed in the 5 packages, and the non-volatile cache is packaged with eight jade pieces. Volatile storage media and the second non-::; send storage media, the first non-volatile health storage media. &Amp; storage media is a different form 6 · If the scope of the patent application No. 5 media contains one and can be thorny The device of Shibei, in which the main large-scale storage 7 such as # 皇 制 一 = Nai surface disk to store data. ≪ · Gao May patent scope 5th first error correction logic, the device, and further Contains the data retrieved; and reads the second error correction logic from the main mass storage medium. The data is used to read from the nonvolatile cache. 8. If the scope of the patent application contains a non- Volatile storage array. A non-volatile cache package 9. A computer system, a Longtai human-processor, including: page 20) / 6966, patent application, a memory coupled to the processor; and a type Non-volatile large-scale storage device of the storage device, the non-volatile large-scale main large-scale storage medium, and non-volatile cache from the main large-scale storage medium to the Haihe. The non-volatile non-volatile storage medium Cache sentence 8 11. If the patent application type 2 storage device is F holding 逡 A system, in which the non-volatile is large 12. Ru Shen V special: The non-volatile cache is block-oriented. 9 Take: The non-volatile Dafa storage medium is a recordable data-? Month "... This is the first-non-volatile recording medium, one and the", ", thick, eight series are selected from a magnetic recordable In the group, the sub 17 recording media, and a group of cigarettes of a magneto-optical recordable medium 1: the computer system of item 9 of the patent scope, where the non-volatile body is a library storage medium, which is Selected from the battery containing ^; :: produced: take S Ji Yi body 'battery power Static random access memory, fast = memory, atomic probe stores memory electrical memory]: in the group of memory. Wang Zhuoqiao. Ji 15 • A method for processing _ data requests, this method Including: Please collect the first set of data stored in a non-volatile large-scale storage device (p. 21) 76966 6. Request for the scope of patent application; Decide that the first set of data is stored in the non-volatile non-volatile cache; Tan The large-scale storage device reads the first set of data from the non-volatile cache; and transmits the first set of data. 1 6. The method according to item 15 of the scope of patent application, wherein the non-volatile cache reads the first set of data. A set of data contains sub-combinations to perform error correction; and-transmitting the error-correction sub-combinations of the non-volatile cache reads to the second group of frames. t 3 transfer the first set of materials 17. If the method of applying for the scope of patent No. 16 is applied, further information is required to receive the information stored in the non-volatile large-scale storage device. Volatile large-scale library storage device first large-scale storage device-the main large-scale storage medium reads this and f loads the second set of data to the non-volatile cache to transfer the second set of data. Where the request is first, the request is first Ι_8 · If the method of applying for the scope of patent application No. 5 and the body is a block-oriented request. 19 · For the method of applying for the scope of patent application No. 5 , the group data is a sector-oriented request. Page 22
TW090108446A 2000-06-23 2001-04-09 Non-volatile cache integrated with mass storage device TW576966B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US60201100A 2000-06-23 2000-06-23

Publications (1)

Publication Number Publication Date
TW576966B true TW576966B (en) 2004-02-21

Family

ID=24409616

Family Applications (1)

Application Number Title Priority Date Filing Date
TW090108446A TW576966B (en) 2000-06-23 2001-04-09 Non-volatile cache integrated with mass storage device

Country Status (7)

Country Link
JP (1) JP2004502237A (en)
CN (1) CN1465009A (en)
AU (1) AU2001266657A1 (en)
DE (1) DE10196383T1 (en)
GB (1) GB2380031B (en)
TW (1) TW576966B (en)
WO (1) WO2002001364A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI630494B (en) * 2013-08-01 2018-07-21 桑迪士克科技有限責任公司 Systems, apparatuses and methods for atomic storage operations

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7275135B2 (en) 2001-08-31 2007-09-25 Intel Corporation Hardware updated metadata for non-volatile mass storage cache
US7103724B2 (en) 2002-04-01 2006-09-05 Intel Corporation Method and apparatus to generate cache data
JP4327585B2 (en) * 2003-12-25 2009-09-09 株式会社東芝 Storage device
US7173863B2 (en) * 2004-03-08 2007-02-06 Sandisk Corporation Flash controller cache architecture
US7136973B2 (en) * 2004-02-04 2006-11-14 Sandisk Corporation Dual media storage device
EP1711896B1 (en) 2004-02-05 2015-11-18 BlackBerry Limited Memory controller interface
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
JP4131862B2 (en) * 2004-07-01 2008-08-13 Dts株式会社 Data transmission device with a 3.5-inch standard disk shape
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
JP2006155434A (en) * 2004-12-01 2006-06-15 Nec Engineering Ltd Pci bus controller, and method and program for controlling its operation
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
KR20090031761A (en) * 2006-07-05 2009-03-27 에이저 시스템즈 인크 Systems and methods for power management in relation to a wireless storage device
US8762636B2 (en) 2006-12-14 2014-06-24 Emc Corporation Data storage system having a global cache memory distributed among non-volatile memories within system disk drives
US8631203B2 (en) 2007-12-10 2014-01-14 Microsoft Corporation Management of external memory functioning as virtual cache
FR2924836B1 (en) * 2007-12-11 2010-12-24 Commissariat Energie Atomique RELIABILITY SERVICE DEVICE, ELECTRONIC SYSTEM AND METHOD EMPLOYING AT LEAST ONE SUCH DEVICE AND COMPUTER PROGRAM PRODUCT FOR PERFORMING SUCH A METHOD.
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US8032707B2 (en) 2008-09-15 2011-10-04 Microsoft Corporation Managing cache data and metadata
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
JP4972064B2 (en) * 2008-09-25 2012-07-11 シャープ株式会社 Optical disk drive control device
CN102521147B (en) * 2011-11-17 2015-03-25 曙光信息产业(北京)有限公司 Management method by using rapid non-volatile medium as cache
JP5803614B2 (en) 2011-11-29 2015-11-04 ソニー株式会社 Nonvolatile cache memory, processing method of nonvolatile cache memory, and computer system
EP3298500B1 (en) 2015-05-22 2021-08-25 Hewlett-Packard Development Company, L.P. Data channel allocation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594885A (en) * 1991-03-05 1997-01-14 Zitel Corporation Method for operating a cache memory system using a recycled register for identifying a reuse status of a corresponding cache entry
JPH06236241A (en) * 1993-02-09 1994-08-23 Sharp Corp Hard disk device using flash memory
JPH0883148A (en) * 1994-09-13 1996-03-26 Nec Corp Magnetic disk device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI630494B (en) * 2013-08-01 2018-07-21 桑迪士克科技有限責任公司 Systems, apparatuses and methods for atomic storage operations

Also Published As

Publication number Publication date
GB2380031A (en) 2003-03-26
WO2002001364A2 (en) 2002-01-03
JP2004502237A (en) 2004-01-22
DE10196383T1 (en) 2003-07-03
GB2380031B (en) 2004-09-29
CN1465009A (en) 2003-12-31
WO2002001364A3 (en) 2002-04-04
GB0228874D0 (en) 2003-01-15
AU2001266657A1 (en) 2002-01-08

Similar Documents

Publication Publication Date Title
TW576966B (en) Non-volatile cache integrated with mass storage device
US6725342B1 (en) Non-volatile mass storage cache coherency apparatus
US7802054B2 (en) Apparatus and methods using invalidity indicators for buffered memory
US8122193B2 (en) Storage device and user device including the same
JP4611024B2 (en) Method and apparatus for grouping pages in a block
KR100810013B1 (en) Multistage virtual memory paging system
US7979631B2 (en) Method of prefetching data in hard disk drive, recording medium including program to execute the method, and apparatus to perform the method
US20130198439A1 (en) Non-volatile storage
US9110783B1 (en) Application-transparent hybridized caching for high-performance storage
KR102087495B1 (en) Changing storage parameters
JP2013242908A (en) Solid state memory, computer system including the same, and operation method of the same
US9798673B2 (en) Paging enablement of storage translation metadata
EP3757800A1 (en) Memory system, computing system, and methods thereof
US20100318734A1 (en) Application-transparent hybridized caching for high-performance storage
CN108228088B (en) Method and apparatus for managing storage system
US11321002B2 (en) Converting a virtual volume between volume types
CN108491166B (en) Read data cache management method for optical disk library
JP2011227802A (en) Data recording device
JP2017151609A (en) Storage, and storage system
US11693574B2 (en) Method of writing data in storage device and storage device performing the same
US20240201867A1 (en) Storage device supporting trim operation and storage system including the same
TWI802279B (en) Data storage device and control method for non-volatile memory
US20220164119A1 (en) Controller, and memory system and data processing system including the same
TWI364660B (en) Method for managing a storage medium
KR100980667B1 (en) Storage medium, method, and computer-readable recording medium for improving random write performance of solid state disk

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees