TW201601062A - 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 - Google Patents
快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 Download PDFInfo
- Publication number
- TW201601062A TW201601062A TW103121404A TW103121404A TW201601062A TW 201601062 A TW201601062 A TW 201601062A TW 103121404 A TW103121404 A TW 103121404A TW 103121404 A TW103121404 A TW 103121404A TW 201601062 A TW201601062 A TW 201601062A
- Authority
- TW
- Taiwan
- Prior art keywords
- buffer
- data
- flash memory
- storage plane
- legal data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- 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/1044—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 with specific ECC/EDC distribution
-
- 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
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/1048—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 using arrangements adapted for a specific error detection or correction feature
-
- 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/1072—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 multilevel memories
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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/0656—Data buffering 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
Abstract
一種快閃記憶體控制裝置包含有:一資料讀寫介面,其係設置來耦接於一第一快閃記憶體與一第二快閃記憶體,其中該第一快閃記憶體包含有一第一儲存平面以及一第一緩衝器,該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器;以及一控制器;其中當該資料讀寫介面耦接於該第一快閃記憶體與該第二快閃記憶體時,該控制器用來透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器,並於該第一儲存平面被執行一抹除循環之後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
Description
本發明係有關於讀取快閃記憶體的控制裝置與其控制方法,尤指減少一記憶體控制器內的一靜態隨機存取記憶體的一記憶體控制器與其相關控制方法。
一般而言,當一快閃記憶體控制電路在存取(例如寫入/抹除循環)一快閃記憶體時,該快閃記憶體控制電路必須具有足夠的記憶體容量來暫存來自該快閃記憶體內的資料。舉例而言,若該快閃記憶體內的一個儲存平面(plane)的大小為8KB,則該快閃記憶體控制電路內就必須具有至少一顆容量為8KB的記憶體來暫存來自該快閃記憶體內的資料。傳統的設計是在該快閃記憶體控制電路內設置一顆靜態隨機存取記憶體(SRAM)來解決上述的問題。但是,在該快閃記憶體控制電路內設置一顆容量為8KB的靜態隨機存取記憶體無疑大幅提高了該快閃記憶體控制電路的製造成本。因此,如何更進一步降地一快閃記憶體控制電路的製造成本已成為此領域所亟需解決的問題。
因此,本發明的目的之一在於減少一記憶體控制器內的一靜態隨機存取記憶體的一記憶體控制器與其相關控制方法。
依據本發明之一第一實施例,揭示了一種快閃記憶體控制裝置。
該快閃記憶體控制裝置包含有一資料讀寫介面以及一控制器。該資料讀寫介面係設置來耦接於一第一快閃記憶體與一第二快閃記憶體,其中該第一快閃記憶體包含有一第一儲存平面以及一第一緩衝器,該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器。該控制器係耦接於該資料讀寫介面,其中當該資料讀寫介面耦接於該第一快閃記憶體與該第二快閃記憶體時,該控制器用來透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器,並於該第一儲存平面被執行一抹除循環之後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
依據本發明之一第二實施例,揭示了一種快閃記憶體控制系統。
該快閃記憶體控制系統包含有一第一快閃記憶體、一第二快閃記憶體、一資料讀寫介面以及一控制器。該第一快閃記憶體包含有一第一儲存平面以及一第一緩衝器。該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器。
該資料讀寫介面係耦接於該第一快閃記憶體與該第二快閃記憶體。該控制器係耦接於該資料讀寫介面,其中該控制器用來透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器,並於該第一儲存平面被執行一抹除循環之後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
依據本發明之一第三實施例,揭示了一種快閃記憶體控制方法。
該快閃記憶體控制方法包含有:設置一資料讀寫介面來耦接於一第一快閃記憶體與一第二快閃記憶體,其中該第一快閃記憶體包含有一第一儲存平面以及一第一緩衝器,該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器;透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器;對該第一儲存平面執行一抹除循環;以及將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
100、202‧‧‧快閃記憶體控制裝置
102、206‧‧‧資料讀寫介面
104、208‧‧‧控制器
106、204‧‧‧快閃記憶體裝置
200‧‧‧快閃記憶體控制系統
1042、2082‧‧‧定序器
1044、2084‧‧‧資料塊緩衝裝置
1044a、2084a‧‧‧第一資料塊緩衝器
1044b、2084b‧‧‧第二資料塊緩衝器
1046、2086‧‧‧主機介面
1048、2088‧‧‧錯誤更正碼編解器
1062、2042‧‧‧第一快閃記憶體
1064、2044‧‧‧第二快閃記憶體
1062a、2042a‧‧‧第一儲存平面
1062b、2042b‧‧‧第一緩衝器
1064a、2042a‧‧‧第二儲存平面
1064b、2042b‧‧‧第二緩衝器
2046‧‧‧第三快閃記憶體
2048‧‧‧第四快閃記憶體
2046a‧‧‧第三儲存平面
2046b‧‧‧第三緩衝器
2048a‧‧‧第四儲存平面
2048b‧‧‧第四緩衝器
302~310‧‧‧步驟
第1圖係本發明一種快閃記憶體控制裝置之一實施例示意圖。
第2圖係本發明一種快閃記憶體控制系統之一實施例示意圖。
第3圖係本發明一快閃記憶體控制方法之一實施例示意圖。
在說明書及後續的申請專利範圍當中使用了某些詞彙來指稱特定
的元件。所屬領域中具有通常知識者應可理解,製造商可能會用不同的名詞來稱呼同樣的元件。本說明書及後續的申請專利範圍並不以名稱的差異來作為區別元件的方式,而是以元件在功能上的差異來作為區別的基準。在通篇說明書及後續的請求項當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於」。此外,「耦接」一詞在此係包含任何直接及間接的電氣連接手段。因此,若文中描述一第一裝置電性連接於一第二裝置,則代表該第一裝置可直接連接於該第二裝置,或透過其他裝置或連接手段間接地連接至該第二裝置。
請參考第1圖。第1圖所示係依據本發明一種快閃記憶體控制裝置100之一實施例示意圖。快閃記憶體控制裝置100包含有一資料讀寫介面102以及一控制器104。快閃記憶體控制裝置100可用來讀寫(read/write)一快閃記憶體裝置。為了更清楚描述本發明快閃記憶體控制裝置100的操作特徵,第1圖另繪示了一快閃記憶體裝置106,快閃記憶體裝置106係耦接於快閃記憶體控制裝置100。快閃記憶體裝置106包含有一第一快閃記憶體1062以及一第二快閃記憶體1064。第一快閃記憶體1062包含有一第一儲存平面(plane)1062a以及一第一緩衝器(plane-buffer)1062b。第二快閃記憶體1064包含有一第二儲存平面1064a以及一第二緩衝器1064b。控制器104包含有一定序器1042、一資料塊緩衝裝置1044、一主機介面1046以及一錯誤更正碼編解器1048。請注意,在快閃記憶體裝置106中,一儲存平面會搭配一緩衝器,
當資料暫存滿該緩衝器時,控制器104才會將該緩衝器內的資料寫入(program)對應的該儲存平面。資料塊緩衝裝置1044可由一靜態隨機存取記憶體(SRAM)來加以實作。
當快閃記憶體控制裝置100用來存取快閃記憶體裝置106時,資料讀寫介面102係用來耦接於第一快閃記憶體1062與第二快閃記憶體1064。
在一操作中,控制器104係用來透過資料讀寫介面102來將第一儲存平面1062a所儲存的複數筆合法資料暫存至第二緩衝器1064b,並於第一儲存平面1062a被執行一抹除循環之後,控制器104另將暫存於第二緩衝器1064b的該複數筆合法資料重新寫入第一儲存平面1062a。定序器1042係耦接於資料讀寫介面102,用來決定讀寫第一儲存平面1062a的一位址的順序。資料塊緩衝裝置1044耦接於定序器1042,當控制器104將所讀出的該複數筆合法資料暫存至第二緩衝器1064b之前,資料塊緩衝裝置1044係用來依序地緩衝該複數筆合法資料中的每一筆合法資料,當控制器104將該複數筆合法資料重新寫入第一儲存平面1062a之前,資料塊緩衝裝置1044係用來依序地緩衝該複數筆合法資料中的每一筆合法資料。主機介面1046係耦接於資料塊緩衝裝置1044以及錯誤更正碼編解器1048,主機介面1046係用來輸出一讀取指令以指示定序器1042透過資料讀寫介面102來從第一儲存平面1062a讀出的該複數筆合法資料,以及輸出一寫入指令以指示定序器1042透過資料讀寫介面102將該複數筆合法資料寫入第一儲存平面1062a。
在本實施例中,資料塊緩衝裝置1044包含有一第一資料塊緩衝器(chunk buffer)1044a以及一第二資料塊緩衝器1044b。當控制器104將所讀出的該複數筆合法資料暫存至第二緩衝器1064b之前,第一資料塊緩衝器1044a係用來依序緩衝該複數筆合法資料中的每一筆合法資料。當控制器104將該複數筆合法資料重新寫入第一儲存平面1062a之前,第二資料塊緩衝器1044b係用來依序緩衝該複數筆合法資料中的一筆合法資料。
進一步而言,當本實施例的快閃記憶體控制裝置100對第一快閃
記憶體1062(或第二快閃記憶體1064)內的第一儲存平面1062a執行一抹除/寫入(erase/program)循環操作時,控制器104會先將第一儲存平面1062a所儲存的複數筆合法資料暫存至第二緩衝器1064b,並於第一儲存平面1062a被執行該抹除循環之後,控制器104另將暫存於第二緩衝器1064b的該複數筆合法資料重新寫入第一儲存平面1062a。舉例而言,在一實施例中,第一儲存平面1062a以及第二儲存平面1064a的儲存容量均為8KB,第一緩衝器1062b與第二緩衝器1064b的儲存容量均為8KB,第一資料塊緩衝器1044a以及第二資料塊緩衝器1044b的儲存容量均為1KB。控制器104每一次只會從第一儲存平面1062a中讀取出容量為1KB的一筆合法資料。當該1KB的合法資料從第一儲存平面1062a中讀取出來後會先緩衝在第一資料塊緩衝器1044a。接著,該1KB的合法資料才會被暫存至第二緩衝器1064b。當該1KB的合法資料被暫存至第二緩衝器1064b後,控制器104才會從第一儲存平面1062a中讀取出容量為1KB的另一筆合法資料。一樣地,該1KB的另一筆合法資料會先緩衝在第一資料塊緩衝器1044a。接著,該1KB的另一筆合法資料才會被暫存至第二緩衝器1064b。經由重覆地進行上述的操作之後,控制器104就可以將第一儲存平面1062a所儲存的所有合法資料暫存至第二緩衝器1064b內。
接著,控制器104就會對已經沒有合法資料的第一儲存平面1062a執行一抹除循環操作,以清除第一儲存平面1062a內的非合法資料以及整理出第一儲存平面1062a內的閒置空間。當控制器104對第一儲存平面1062a執行完該抹除循環操作之後,第一儲存平面1062a內的儲存空間就可以重新被清理出來。換言之,當控制器104對第一儲存平面1062a執行完該抹除循環操作之後,第一儲存平面1062a的可儲存容量恢復為8KB。請注意,當第一儲存平面1062a未執行該抹除循環操作之前,由於第一儲存平面1062a在經過多次的讀取資料之後,第一儲存平面1062a內可能會存在一些非合法的資料以及未能被讀取到的閒置空間,因此第一儲存平面1062a的可儲存容量
可能會少於8KB。執行該抹除循環操作的一目的就是使得第一儲存平面1062a的可儲存容量恢復為8KB。
當第一儲存平面1062a執行完該抹除循環之後,控制器104必需要將暫存於第二緩衝器1064b的該複數筆合法資料重新寫入第一儲存平面1062a。同樣的,控制器104每一次只會從第二緩衝器1064b中讀取出容量為1KB的合法資料。當該1KB的合法資料從第二緩衝器1064b中讀取出來後會先緩衝在第二資料塊緩衝器1044b。接著,該1KB的合法資料才會被重新寫入第一儲存平面1062a。當該1KB的合法資料被重新寫入第一儲存平面1062a後,控制器104才會從第二緩衝器1064b中讀取出容量為1KB的另一筆合法資料。一樣地,該1KB的另一筆合法資料會先緩衝在第二資料塊緩衝器1044b。接著,該1KB的另一筆合法資料才會被重新寫入第一儲存平面1062a中。經由重覆地進行上述的操作之後,控制器104就可以將暫存在第二緩衝器1064b內的所有合法資料重新存入第一儲存平面1062a內。
從上述的操作可以得知,相較於一傳統的快閃記憶體控制電路,傳統的快閃記憶體控制電路內係設置一顆容量為8KB的靜態隨機存取記憶體,而本發明的控制器104內則只需設置兩個容量為1KB的資料塊緩衝器(即第一資料塊緩衝器1044a以及第二資料塊緩衝器1044b)就可以完成一抹除/寫入循環的操作。因此,在不影響一快閃記憶體控制器的正常操作下,本發明可大幅降低該快閃記憶體控制器的製造成本。
請注意,當本實施例的快閃記憶體控制裝置100對第一快閃記憶體1062內的第一儲存平面1062a執行該抹除/寫入循環操作時,控制器104從第一儲存平面1062a所讀取出來的合法資料以及從第二資料塊緩衝器1044b寫入第一儲存平面1062a的合法資料都不會經過一錯誤更正碼的處理。進一步而言,當控制器104從第一儲存平面1062a讀出合法資料並暫存入第二資料塊緩衝器1044b時,該合法資料的傳送路徑是從第一快閃記憶體1062開始,經由資料讀寫介面102、定序器1042、第一資料塊緩衝器1044a、
定序器1042、資料讀寫介面102,最後到達第二緩衝器1064b。當控制器104將暫存的合法資料從第二資料塊緩衝器1044b寫入第一儲存平面1062a時,該合法資料的傳送路徑是從第一資料塊緩衝器1044a開始,經由資料讀寫介面102、定序器1042、第二資料塊緩衝器1044b、定序器1042、資料讀寫介面102,最後到達第一快閃記憶體1062。換言之,當本實施例的控制器104將第一儲存平面1062a所儲存的該複數筆合法資料暫存至第二緩衝裝置1064b,以及當控制器104將暫存於第二緩衝器1064b的該複數筆合法資料重新寫入第一儲存平面1062a時,該複數筆合法資料是不會經過錯誤更正碼編解器1048。在另一實施例中,主機介面1046可另輸出一控制訊號來抑能(disable)錯誤更正碼編解器1048,以使得錯誤更正碼編解器1048不會對該複數筆合法資料進行一錯誤更正碼操作。但是,本發明並不受限於上述的控制方法。任何使得錯誤更正碼編解器1048不會對該複數筆合法資料進行一錯誤更正碼操作的方法均屬於本發明快閃記憶體控制裝置100的範疇所在。
由於該複數筆合法資料不會經過一錯誤更正碼的操作,因此本發明的快閃記憶體控制裝置100具有更快的抹除/寫入的速度。
此外,本發明也沒有限制第二緩衝器1064b的容量必需為1KB,任何小於第一儲存平面1062a的容量均可適用於本發明的快閃記憶體控制裝置100。進一步而言,只要可以用來緩衝從一筆從第一儲存平面1062a所讀出來的合法資料就可適用於本發明的快閃記憶體控制裝置100。
另一方面,當本實施例的控制器104將第一儲存平面1062a所儲存的該複數筆合法資料暫存至第二緩衝裝置1064b時,控制器104係透過該資料讀寫介面來隨機地(random in)將第一儲存平面1062a內所儲存的該複數筆合法資料中的每一筆合法資料暫存至第二緩衝器1064b。當第一儲存平面1062a被執行完該抹除循環後,且控制器104將暫存於第二緩衝器1064b的該複數筆合法資料重新寫入第一儲存平面1062a之前,控制器104係先將暫存於第二緩衝器1064b的該複數筆合法資料隨機地(random out)寫入第一緩衝器
1062b,當第二緩衝器1064b內所有的合法資料都被暫存至第一緩衝器1062b後,控制器104另執行一寫入循環(program cycle)來一次性的將暫存至第一緩衝器1062b的該複數筆合法資料寫入第一儲存平面1062a內。
請注意,雖然第1圖所示的第一快閃記憶體1062以及第二快閃記憶體1064均係設置在同一顆快閃記憶體晶片(即106)內,但此並不是本發明的限制所在。第一快閃記憶體1062以及第二快閃記憶體1064亦可以分別設置在兩顆不同的快閃記憶體晶片上。
雖然上述的描述是以抹除第一儲存平面1062a為例,但此領域具有通常知識者應可瞭解本發明的快閃記憶體控制裝置100亦可用來抹除/寫入第二儲存平面1062b。當快閃記憶體控制裝置100用來對第二儲存平面1062b執行一抹除循環操作時,則第一快閃記憶體1062的第一緩衝器1062b就可用來暫存來自第二儲存平面1062b的複數個合法資料。由於其操作是相似於上述有關於抹除/寫入第一儲存平面1062a的操作,故其細部運作在此不另贅述。
再者,在此實施例中,由於第二緩衝器1064b的儲存容量為8KB,而來自第一儲存平面1062a的複數筆合法資料並不一定可以填滿第二緩衝器1064b,因此暫存入第二緩衝器1064b亦可以來自其他或多個儲存平面的合法資料。如此一來,當來自多個儲存平面的合法資料填滿了第二緩衝器1064b時,控制器104才對沒有合法資料的一個或多個儲存平面進行抹除操作。接著,控制器104才會將暫存在第二緩衝器1064b內8KB的合法資料重新寫入一個儲存平面,例如第一儲存平面1062a。請參考第2圖。第2圖所示係依據本發明一種快閃記憶體控制系統200之一實施例示意圖。快閃記憶體控制系統200包含有一快閃記憶體控制裝置202以及一快閃記憶體晶片204。相似於第1圖的快閃記憶體控制裝置100,本實施例的快閃記憶體控制裝置202亦包含有一資料讀寫介面206以及一控制器208。控制器208亦包含有一定序器2082、一資料塊緩衝裝置2084、一主機介面2086以及一錯誤更正碼編解器2088。資料塊緩衝裝置2084亦包含有一第一資料塊緩衝器2084a以及一
第二資料塊緩衝器2084b。相較於第一實施例,本實施例的快閃記憶體晶片204包含有四個快閃記憶體,亦即一第一快閃記憶體2042、一第二快閃記憶體2044、一第三快閃記憶體2046以及一第四快閃記憶體2048。第一快閃記憶體2042包含有一第一儲存平面2042a以及一第一緩衝器2042b。第二快閃記憶體2044包含有一第二儲存平面2044a以及一第二緩衝器2044b。第三快閃記憶體2062包含有一第三儲存平面2062a以及一第三緩衝器2062b。第四快閃記憶體2084包含有一第四儲存平面2084a以及一第四緩衝器2084b。請注意,該四個快閃記憶體也可以分別存在於四顆不同的快閃記憶體晶片。
在第2圖的實施例中,舉例而言,若控制器208要對第一儲存平面2042a執行一抹除/寫入的操作,控制器208會先將第一儲存平面2042a內的複數筆合法資料暫存到第二緩衝器2044b。若第一儲存平面2042a內的複數筆合法資料不足8KB,則控制器208可以將第三儲存平面2062a以及/或第四儲存平面2084a內的複數筆合法資料暫存到第二緩衝器2044b,一直到第二緩衝器2044b收集滿8KB的合法資料為止。當第二緩衝器2044b收集滿8KB的合法資料時,控制器208就會對第一儲存平面2042a執行一抹除的操作。
當第一儲存平面2042a被抹除完之後,控制器208就會將暫存在第二緩衝器2044b的複數筆合法資料重新寫入第一儲存平面2042a。請注意,在將合法資料暫存入第二緩衝器2044b的過程中,若第三儲存平面2062a以及第四儲存平面2084a中的合法資料也完全被暫存入第二緩衝器2044b中,則控制器208也可以對第三儲存平面2062a以及第四儲存平面2084a執行一抹除的操作,以使得第三儲存平面2062a以及第四儲存平面2084a的可儲存容量恢復為原來的8KB。如此一來,經由上述操作,快閃記憶體晶片204內被非合法資料所佔據的空間以及閒置空間就可以被整理出來,以增加快閃記憶體晶片204內的可儲存空間。
請注意,此領域具有通常知識者在閱讀完第1圖的快閃記憶體控制裝置100對快閃記憶體裝置106的抹除/寫入的操作後,應可經易瞭解快閃
記憶體控制裝置202對快閃記憶體晶片204所執行的該抹除/寫入的操作,故其細部操作在此不另贅述。
簡言之,上述有關於快閃記憶體控制裝置100以及快閃記憶體控制裝置202的操作方法可簡化為第3圖所示的流程圖。第3圖所示係依據本發明一快閃記憶體控制方法300之一實施例示意圖。倘若大體上可達到相同的結果,並不需要一定照第3圖所示之流程中的步驟順序來進行,且第3圖所示之步驟不一定要連續進行,亦即其他步驟亦可***其中。此外,以下流程圖是以快閃記憶體控制裝置100為例來說明本發明快閃記憶體控制方法300的技術特徵。快閃記憶體控制方法300包含有下步驟:步驟302:設置資料讀寫介面102來耦接於第一快閃記憶體1062與第二快閃記憶體1064;步驟304:透過資料讀寫介面102來隨機地將第一儲存平面1062a內所儲存的該複數筆合法資料中的每一筆合法資料暫存至第二緩衝器1064b;步驟306:當第一儲存平面1062a內所有的合法資料都被暫存至第二緩衝器1064b後,執行該抹除循環來抹除第一儲存平面1062a;步驟308:當第一儲存平面1062a執行完該抹除循環後,將暫存於第二緩衝器1064b的該複數筆合法資料暫存於第一緩衝器1062b;步驟310:當第二緩衝器1064b內所有的合法資料都被暫存至第一緩衝器1062b後,執行一寫入循環來將暫存至第一緩衝器1062b的該複數筆合法資料寫入第一儲存平面1062a內。
請注意,當第一儲存平面1062a內的該複數筆合法資料暫存至第二緩衝裝置1064b,以及當第二緩衝器1064b內的該複數筆合法資料重新寫入第一儲存平面1062a時,該複數筆合法資料是不會經過一錯誤更正碼操作的,因此本發明的快閃記憶體控制方法300具有更快的抹除/寫入的速度。此外,經由快閃記憶體控制方法300的操作,快閃記憶體晶片106內被非合法資料所佔據的空間以及閒置空間就可以被整理出來,以增加快閃記憶體晶片
106內的可儲存空間。
綜上所示,本發明的快閃記憶體控制裝置100、202以及快閃記憶體控制方法300係利用快閃記憶體晶片內一儲存平面的一緩衝器來暫存來自一需要被抹除/寫入的儲存平面內的所有合法資料,而不是在快閃記憶體控制裝置102、202直接設置一顆大容量的緩衝器來暫存該需要被抹除/寫入的儲存平面內的所有合法資料。如此一來,該些合法資料就不須經過一錯誤更正碼操作,進而增加快閃記憶體控制裝置102、202的操作速度。此外,由於本發明的快閃記憶體控制裝置102、202內則只需設置兩個小容量(例如1KB)的資料塊緩衝器就可以完成一抹除/寫入循環的操作,因此本發明亦可大幅降低一快閃記憶體控制器的製造成本。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100‧‧‧快閃記憶體控制裝置
102‧‧‧資料讀寫介面
104‧‧‧控制器
106‧‧‧快閃記憶體裝置
1042‧‧‧定序器
1044‧‧‧資料塊緩衝裝置
1044a‧‧‧第一資料塊緩衝器
1044b‧‧‧第二資料塊緩衝器
1046‧‧‧主機介面
1048‧‧‧錯誤更正碼編解器
1062‧‧‧第一快閃記憶體
1064‧‧‧第二快閃記憶體
1062a‧‧‧第一儲存平面
1062b‧‧‧第一緩衝器
1064a‧‧‧第二儲存平面
1064b‧‧‧第二緩衝器
Claims (19)
- 一種快閃記憶體控制裝置,包含有:一資料讀寫介面,其係設置來耦接於一第一快閃記憶體與一第二快閃記憶體,其中該第一快閃記憶體包含有一第一儲存平面(plane)以及一第一緩衝器(buffer),該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器;以及一控制器,耦接於該資料讀寫介面;其中當該資料讀寫介面耦接於該第一快閃記憶體與該第二快閃記憶體時,該控制器用來透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法(valid)資料暫存至該第二緩衝器,並於該第一儲存平面被執行一抹除循環(erase cycle)之後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
- 如申請專利範圍第1項所述的快閃記憶體控制裝置,該控制器係用來透過該資料讀寫介面來隨機地(random in)將該第一儲存平面內所儲存的該複數筆合法資料中的每一筆合法資料暫存至該第二緩衝器,當該第一儲存平面內所有的合法資料都被暫存至該第二緩衝器後,該控制器另執行該抹除循環來抹除該第一儲存平面,當該控制器抹除該第一儲存平面後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
- 如申請專利範圍第1項所述的快閃記憶體控制裝置,其中當該控制器用來將該第一儲存平面所儲存的該複數筆合法資料暫存至該第二緩衝器時,該控制器每一次只會從該第一儲存平面中讀取出該複數筆合法資料中的一筆合法資料,以及當該控制器將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面時,該控制器每一次只會將該第二緩衝器中的該 複數筆合法資料中的一筆合法資料寫入該第一儲存平面。
- 如申請專利範圍第1項所述的快閃記憶體控制裝置,其中該控制器將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面之前,該控制器係先將暫存於該第二緩衝器的該複數筆合法資料隨機地(random out)寫入該第一緩衝器,當該第二緩衝器內所有的合法資料都被暫存至該第一緩衝器後,該控制器另執行一寫入循環(program cycle)來將暫存至該第一緩衝器的該複數筆合法資料寫入該第一儲存平面內。
- 如申請專利範圍第1項所述的快閃記憶體控制裝置,其中該控制器包含有:一定序器(sequencer),耦接於該資料讀寫介面,用來決定讀寫該第一儲存平面的一位址的順序;一資料塊緩衝裝置,耦接於該定序器,當該控制器將所讀出的該複數筆合法資料暫存至該第二緩衝器之前,該資料塊緩衝裝置係用來緩衝該複數筆合法資料中的每一筆合法資料,當該控制器將該複數筆合法資料重新寫入該第一儲存平面之前,該資料塊緩衝裝置係用來緩衝該複數筆合法資料中的每一筆合法資料;一主機(host)介面,耦接於該資料塊緩衝裝置,用來輸出一讀取指令以指示該定序器透過該資料讀寫介面來從該第一儲存平面讀出的該複數筆合法資料,以及輸出一寫入指令以指示該定序器透過該資料讀寫介面將該複數筆合法資料寫入該第一儲存平面。
- 如申請專利範圍第5項所述的快閃記憶體控制裝置,其中該資料塊緩衝裝置的容量係一第一儲存容量,該第一緩衝器與該第二緩衝器的容量均為一第二儲存容量,以及該第一儲存容量係小於該第二儲存容量。
- 如申請專利範圍第5項所述的快閃記憶體控制裝置,其中該資料塊緩衝裝置包含有:一第一資料塊緩衝器(chunk buffer),當該控制器將所讀出的該複數筆合法資料暫存至該第二緩衝器之前,該第一資料塊緩衝器用來緩衝該複數筆合法資料中的每一筆合法資料;以及一第二資料塊緩衝器,該控制器將該複數筆合法資料重新寫入該第一儲存平面之前,該第二資料塊緩衝器用來緩衝該複數筆合法資料中的一筆合法資料。
- 如申請專利範圍第7項所述的快閃記憶體控制裝置,其中該第一資料塊緩衝器以及該第二資料塊緩衝器的容量均只可以用來緩衝一筆合法資料。
- 如申請專利範圍第5項所述的快閃記憶體控制裝置,其中該控制器另包含有:一錯誤更正碼(ECC,Error Correction Code)編解器,耦接於該定序器與該資料塊緩衝裝置;其中當該控制器將該第一儲存平面所儲存的該複數筆合法資料暫存至該第二緩衝裝置,以及當該控制器將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面時,該主機介面另輸出一控制訊號來抑能(disable)該錯誤更正碼編解器。
- 如申請專利範圍第5項所述的快閃記憶體控制裝置,其中該控制器另包含有:一錯誤更正碼編解器,耦接於該定序器與該資料塊緩衝裝置;其中當該控制器將該第一儲存平面所儲存的該複數筆合法資料暫存至該第二緩衝裝置,該錯誤更正碼編解器不會對該複數筆合法資料進行一錯誤 更正碼操作,以及當該控制器將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面時,該錯誤更正碼編解器不會對該複數筆合法資料進行一錯誤更正碼操作。
- 一種快閃記憶體控制系統,包含有:一第一快閃記憶體,包含有一第一儲存平面以及一第一緩衝器;一第二快閃記憶體,包含有一第二儲存平面以及一第二緩衝器;一資料讀寫介面,耦接於該第一快閃記憶體與該第二快閃記憶體;以及一控制器,耦接於該資料讀寫介面;其中該控制器用來透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器,並於該第一儲存平面被執行一抹除循環之後,該控制器另將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
- 如申請專利範圍第11項所述的快閃記憶體控制系統,其中該第一快閃記憶體以及該第二快閃記憶體係設置在同一顆快閃記憶體晶片內。
- 如申請專利範圍第11項所述的快閃記憶體控制系統,其中該第一快閃記憶體以及該第二快閃記憶體係分別為兩顆不同的快閃記憶體晶片。
- 一種快閃記憶體控制方法,包含有:設置一資料讀寫介面來耦接於一第一快閃記憶體與一第二快閃記憶體,其中該第一快閃記憶體包含有一第一儲存平面以及一第一緩衝器,該第二快閃記憶體包含有一第二儲存平面以及一第二緩衝器;透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器; 對該第一儲存平面執行一抹除循環;以及將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
- 如申請專利範圍第14項所述的快閃記憶體控制方法,其中透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器的步驟包含有:透過該資料讀寫介面來隨機地將該第一儲存平面內所儲存的該複數筆合法資料中的每一筆合法資料暫存至該第二緩衝器;對該第一儲存平面執行該抹除循環的步驟包含有:當該第一儲存平面內所有的合法資料都被暫存至該第二緩衝器後,執行該抹除循環來抹除該第一儲存平面;將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面的步驟包含有:當該第一儲存平面執行完該抹除循環後,將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面。
- 如申請專利範圍第14項所述的快閃記憶體控制方法,其中透過該資料讀寫介面來將該第一儲存平面所儲存的複數筆合法資料暫存至該第二緩衝器的步驟另包含有:每一次只從該第一儲存平面中讀取出該複數筆合法資料中的一筆合法資料;以及將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面的步驟另包含有:每一次只將該第二緩衝器中的該複數筆合法資料中的一筆合法資料寫入該第一儲存平面。
- 如申請專利範圍第14項所述的快閃記憶體控制方法,另包含有:當暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面之前,先將暫存於該第二緩衝器的該複數筆合法資料隨機地寫入該第一緩衝器;以及當該第二緩衝器內所有的合法資料都被暫存至該第一緩衝器後,執行一寫入循環來將暫存至該第一緩衝器的該複數筆合法資料寫入該第一儲存平面內。
- 如申請專利範圍第14項所述的快閃記憶體控制方法,另包含有:在該複數筆合法資料暫存至該第二緩衝器之前,利用一資料塊緩衝裝置來緩衝該複數筆合法資料中的每一筆合法資料;在該複數筆合法資料重新寫入該第一儲存平面之前,利用該資料塊緩衝裝置來緩衝該複數筆合法資料中的每一筆合法資料;依據一讀取指令來從該第一儲存平面讀出的該複數筆合法資料;以及依據一寫入指令來將該複數筆合法資料寫入該第一儲存平面。
- 如申請專利範圍第14項所述的快閃記憶體控制方法,另包含有:當將該第一儲存平面所儲存的該複數筆合法資料暫存至該第二緩衝裝置時,不對該複數筆合法資料進行一錯誤更正碼操作;以及當將暫存於該第二緩衝器的該複數筆合法資料重新寫入該第一儲存平面時,不對該複數筆合法資料進行該錯誤更正碼操作。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103121404A TWI554944B (zh) | 2014-06-20 | 2014-06-20 | 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 |
US14/666,320 US9760433B2 (en) | 2014-06-20 | 2015-03-24 | Flash memory control apparatus utilizing buffer to temporarily storing valid data stored in storage plane, and control system and control method thereof |
KR1020150057854A KR101698949B1 (ko) | 2014-06-20 | 2015-04-24 | 스토리지 플레인에 저장된 유효 데이터를 일시적으로 저장하는 버퍼를 이용하는 플래시 메모리 제어 장치, 제어 시스템 및 그것의 제어 방법 |
CN201510335092.3A CN105279115B (zh) | 2014-06-20 | 2015-06-17 | 闪存控制装置、闪存控制***以及闪存控制方法 |
CN201810719948.0A CN109062827B (zh) | 2014-06-20 | 2015-06-17 | 闪存控制装置、闪存控制***以及闪存控制方法 |
US15/666,569 US10049005B2 (en) | 2014-06-20 | 2017-08-02 | Flash memory control apparatus utilizing buffer to temporarily storing valid data stored in storage plane, and control system and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103121404A TWI554944B (zh) | 2014-06-20 | 2014-06-20 | 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201601062A true TW201601062A (zh) | 2016-01-01 |
TWI554944B TWI554944B (zh) | 2016-10-21 |
Family
ID=54869725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103121404A TWI554944B (zh) | 2014-06-20 | 2014-06-20 | 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9760433B2 (zh) |
KR (1) | KR101698949B1 (zh) |
CN (2) | CN109062827B (zh) |
TW (1) | TWI554944B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11194710B2 (en) | 2017-04-25 | 2021-12-07 | Samsung Electronics Co., Ltd. | Garbage collection—automatic data placement |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6466279B2 (ja) * | 2015-08-05 | 2019-02-06 | アラクサラネットワークス株式会社 | 通信装置 |
US10719237B2 (en) * | 2016-01-11 | 2020-07-21 | Micron Technology, Inc. | Apparatuses and methods for concurrently accessing multiple partitions of a non-volatile memory |
US10110255B2 (en) * | 2016-04-27 | 2018-10-23 | Silicon Motion Inc. | Method for accessing flash memory module and associated flash memory controller and memory device |
CN107391026B (zh) | 2016-04-27 | 2020-06-02 | 慧荣科技股份有限公司 | 闪存装置及闪存存储管理方法 |
US10019314B2 (en) | 2016-04-27 | 2018-07-10 | Silicon Motion Inc. | Flash memory apparatus and storage management method for flash memory |
CN111679787B (zh) | 2016-04-27 | 2023-07-18 | 慧荣科技股份有限公司 | 闪存装置、闪存控制器及闪存存储管理方法 |
US10289487B2 (en) | 2016-04-27 | 2019-05-14 | Silicon Motion Inc. | Method for accessing flash memory module and associated flash memory controller and memory device |
CN107391296B (zh) | 2016-04-27 | 2020-11-06 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
US10216417B2 (en) | 2016-10-26 | 2019-02-26 | Samsung Electronics Co., Ltd. | Method of consolidate data streams for multi-stream enabled SSDs |
JP2018112883A (ja) * | 2017-01-11 | 2018-07-19 | 東芝メモリ株式会社 | 半導体記憶装置 |
US11048624B2 (en) | 2017-04-25 | 2021-06-29 | Samsung Electronics Co., Ltd. | Methods for multi-stream garbage collection |
US11521690B2 (en) * | 2018-03-16 | 2022-12-06 | Micron Technology, Inc. | NAND data placement schema |
TWI671756B (zh) * | 2018-11-13 | 2019-09-11 | 慧榮科技股份有限公司 | 資料儲存裝置與資料儲存方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0877066A (ja) | 1994-08-31 | 1996-03-22 | Tdk Corp | フラッシュメモリコントローラ |
US7690031B2 (en) * | 2000-01-06 | 2010-03-30 | Super Talent Electronics, Inc. | Managing bad blocks in flash memory for electronic data flash card |
US20050132128A1 (en) * | 2003-12-15 | 2005-06-16 | Jin-Yub Lee | Flash memory device and flash memory system including buffer memory |
US20110029723A1 (en) * | 2004-08-06 | 2011-02-03 | Super Talent Electronics, Inc. | Non-Volatile Memory Based Computer Systems |
US7409473B2 (en) | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
US20060184719A1 (en) * | 2005-02-16 | 2006-08-17 | Sinclair Alan W | Direct data file storage implementation techniques in flash memories |
JP5162846B2 (ja) | 2005-07-29 | 2013-03-13 | ソニー株式会社 | 記憶装置、コンピュータシステム、および記憶システム |
US7409489B2 (en) * | 2005-08-03 | 2008-08-05 | Sandisk Corporation | Scheduling of reclaim operations in non-volatile memory |
CN101118783A (zh) * | 2006-09-07 | 2008-02-06 | 晶天电子(深圳)有限公司 | 带有闪存坏块控制***的电子数据闪存卡 |
CN101256535B (zh) * | 2007-03-01 | 2011-03-09 | 创惟科技股份有限公司 | 硬盘资料读写快取装置及方法 |
TW201007734A (en) * | 2008-08-06 | 2010-02-16 | Genesys Logic Inc | Flash memory control apparatus having signal-converting module |
TW201037725A (en) * | 2009-04-07 | 2010-10-16 | Giga Byte Tech Co Ltd | Flash memory control device |
US8806090B2 (en) * | 2011-05-31 | 2014-08-12 | Micron Technology, Inc. | Apparatus including buffer allocation management and related methods |
KR101920500B1 (ko) | 2012-06-29 | 2018-11-21 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그 동작 방법 |
CN103365789B (zh) * | 2013-08-08 | 2016-12-28 | 曹乃承 | 数据存储装置和flash存储装置的块删除块写入方法 |
-
2014
- 2014-06-20 TW TW103121404A patent/TWI554944B/zh active
-
2015
- 2015-03-24 US US14/666,320 patent/US9760433B2/en active Active
- 2015-04-24 KR KR1020150057854A patent/KR101698949B1/ko active IP Right Grant
- 2015-06-17 CN CN201810719948.0A patent/CN109062827B/zh active Active
- 2015-06-17 CN CN201510335092.3A patent/CN105279115B/zh active Active
-
2017
- 2017-08-02 US US15/666,569 patent/US10049005B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11194710B2 (en) | 2017-04-25 | 2021-12-07 | Samsung Electronics Co., Ltd. | Garbage collection—automatic data placement |
TWI771383B (zh) * | 2017-04-25 | 2022-07-21 | 南韓商三星電子股份有限公司 | 固態驅動機、其方法及物品 |
US11630767B2 (en) | 2017-04-25 | 2023-04-18 | Samsung Electronics Co., Ltd. | Garbage collection—automatic data placement |
Also Published As
Publication number | Publication date |
---|---|
CN109062827B (zh) | 2021-10-29 |
CN105279115B (zh) | 2018-08-17 |
US20170329668A1 (en) | 2017-11-16 |
US10049005B2 (en) | 2018-08-14 |
US9760433B2 (en) | 2017-09-12 |
US20150370630A1 (en) | 2015-12-24 |
CN105279115A (zh) | 2016-01-27 |
CN109062827A (zh) | 2018-12-21 |
KR101698949B1 (ko) | 2017-01-23 |
KR20150145693A (ko) | 2015-12-30 |
TWI554944B (zh) | 2016-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI554944B (zh) | 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法 | |
KR102089613B1 (ko) | 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템 | |
TWI566253B (zh) | 用來管理一記憶裝置之方法以及記憶裝置與控制器 | |
US7007140B2 (en) | Storage device, storage device controlling method, and program | |
TWI668570B (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
JP2003015929A (ja) | 不揮発性メモリの制御方法 | |
CN110858128B (zh) | 数据存储装置及其共享控制器中存储器的方法 | |
KR20060124598A (ko) | 기억 장치 | |
TW201541251A (zh) | 快閃記憶體控制器以及資料儲存裝置以及快閃記憶體控制方法 | |
WO2015117493A1 (zh) | 一种flash的控制方法和控制器 | |
KR20100094241A (ko) | 예비 블록을 포함하지 않는 불휘발성 메모리 장치 | |
TW201707006A (zh) | 包括多個記憶體區域的記憶體系統和操作該記憶體系統的方法 | |
TWI523030B (zh) | 緩衝記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TW201514999A (zh) | 非揮發性記憶體裝置及其資料驗證方法 | |
US9396769B1 (en) | Memory device and operating method of same | |
TW201839595A (zh) | 記憶裝置、記憶裝置的控制方法及存取系統 | |
JP2009123191A (ja) | Norインターフェイスフラッシュメモリ装置及びそのアクセス方法 | |
TW201303881A (zh) | 資料處理方法、記憶體控制器及記憶體儲存裝置 | |
TWI634561B (zh) | 資料保護方法、記憶體儲存裝置及記憶體控制電路單元 | |
KR20170030900A (ko) | 반도체 메모리 장치 및 그것의 동작 방법 | |
KR20180006783A (ko) | 반도체 메모리 장치 | |
US11782646B2 (en) | Memory device and memory system having the memory device | |
TWI807919B (zh) | 資料重讀方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI837829B (zh) | 存取快閃記憶體模組的方法與相關的快閃記憶體控制器及記憶裝置 | |
JP4324149B2 (ja) | エミュレータ及びそれを用いた開発支援システム |