TWI788161B - 動態調整單級區塊及三級區塊比例的控制方法 - Google Patents

動態調整單級區塊及三級區塊比例的控制方法 Download PDF

Info

Publication number
TWI788161B
TWI788161B TW110148828A TW110148828A TWI788161B TW I788161 B TWI788161 B TW I788161B TW 110148828 A TW110148828 A TW 110148828A TW 110148828 A TW110148828 A TW 110148828A TW I788161 B TWI788161 B TW I788161B
Authority
TW
Taiwan
Prior art keywords
level blocks
level
blocks
memory
flash memory
Prior art date
Application number
TW110148828A
Other languages
English (en)
Other versions
TW202326733A (zh
Inventor
黃勁勳
廖哲賢
Original Assignee
技嘉科技股份有限公司
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 技嘉科技股份有限公司 filed Critical 技嘉科技股份有限公司
Priority to TW110148828A priority Critical patent/TWI788161B/zh
Priority to US17/824,392 priority patent/US20230205459A1/en
Priority to EP22177226.2A priority patent/EP4202932A1/en
Application granted granted Critical
Publication of TWI788161B publication Critical patent/TWI788161B/zh
Publication of TW202326733A publication Critical patent/TW202326733A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7206Reconfiguration of flash memory system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices

Abstract

一種動態調整單級區塊及三級區塊比例的控制方法,適用於一儲存裝置中。本發明的控制方法包括,接收一選擇輸入;根據選擇輸入,調整一快閃記憶體的單級區塊及三級區塊的數量;以及當儲存裝置被重置時,重新調整快閃記憶體的單級區塊及三級區塊的數量。

Description

動態調整單級區塊及三級區塊比例的控制方法
本發明係有關於一種控制方法,特別是有關於一種動態調整單級區塊及三級區塊比例的控制方法。
一般而言,電腦的記憶體分為揮發性記憶體(volatile memory)與非揮發性記憶體(non-volatile memory)。非揮發生記憶體包括,唯讀記憶體(ROM)、可規化式唯讀記憶體(PROM)、可擦可規化式唯讀記憶體(EPROM)、以及快閃記憶體。揮發性記憶體包括,動態隨機存取記憶體(DRAME)以及靜態隨機存取記憶體(SRAM)。
本發明之一實施例提供一種動態調整單級區塊及三級區塊比例的控制方法,適用於一儲存裝置中。本發明的控制方法包括,接收一選擇輸入;根據選擇輸入,調整一快閃記憶體的單級區塊及三級區塊的數量;以及當儲存裝置被重置時,重新調整快閃記憶體的單級區塊及三級區塊的數量。
本發明之另一實施例提供一種儲存裝置,包括一第一記憶體、一快閃記憶體以及一控制電路。第一記憶體儲存一特定檔案。快閃記憶體具有複數區塊。該等區塊之一者作為一單級區塊或是一三級區塊。單級區塊的數量為一第一數值。三級區塊的數量為一第二數值。控制電路根據特定檔案,調整第一及第二數值。當控制電路被重置時,控制電路根據一選擇輸入,選擇一第二記憶體所儲存的複數檔案之一者,並利用選擇的檔案更新特定檔案。
本發明之控制方法可經由本發明之儲存裝置來實作,其為可執行特定功能之硬體或韌體,亦可以透過程式碼方式收錄於一紀錄媒體中,並結合特定硬體來實作。當程式碼被電子裝置、處理器、電腦或機器載入且執行時,電子裝置、處理器、電腦或機器變成用以實行本發明之儲存裝置。
為讓本發明之目的、特徵和優點能更明顯易懂,下文特舉出實施例,並配合所附圖式,做詳細之說明。本發明說明書提供不同的實施例來說明本發明不同實施方式的技術特徵。其中,實施例中的各元件之配置係為說明之用,並非用以限制本發明。另外,實施例中圖式標號之部分重覆,係為了簡化說明,並非意指不同實施例之間的關聯性。
第1圖為本發明之儲存裝置的示意圖。如圖所示,儲存裝置110包括一控制電路111、一記憶體112以及一快閃記憶體113。本發明並不限定儲存裝置110的種類。在一可能實施例中,儲存裝置110係為一固態硬碟(solid state drive;SSD)。
控制電路111動態地調整快閃記憶體113的單級區塊(single-level cell;SLC)及三級區塊(triple-level cell;TLC)的數量。單級區塊的記憶胞儲存一位元的資料,而三級區塊的記憶胞儲存三位元的資料。單級區塊的存取速度比三級區塊的存取速度快。然而,對於相同數量的區塊而言,三級區塊所儲存的資料量大於單級區塊所儲存的資料量。
在一可能實施例中,控制電路111根據一選擇輸入IN,控制快閃記憶體113的單級區塊及三級區塊的數量。選擇輸入IN可能來自一應用程式(application)。舉例而言,如果使用者開啟一特定應用程式,並點選「速度快」選項,控制電路111可能增加快閃記憶體113的單級區塊數量,並減少快閃記憶體113的三級區塊的數量。在此例中,單級區塊可能佔快閃記憶體113所有的區塊中的70%,而三級區塊可能佔快閃記憶體113所有的區塊中的30%。然而,如果使用者點選「儲存空間大」選項,控制電路111可能減少快閃記憶體113的單級區塊數量,並增加快閃記憶體113的三級區塊的數量。在此例中,單級區塊可能佔快閃記憶體113所有的區塊中的30%,而三級區塊可能佔快閃記憶體113所有的區塊中的70%。在其它實施例中,選擇輸入IN可能來自一基本輸入輸出系統(Basic Input/Output System;BIOS)。在此例中,基本輸入輸出系統提供複數選項,供使用者選擇。控制電路111根據使用者所選擇的選項,調整快閃記憶體113的單級區塊及三級區塊的數量。
記憶體112耦接控制電路111,並儲存一特定檔案SFL。特定檔案SFL用以指示快閃記憶體113的單級區塊及三級區塊的數量。本發明並不限定記憶體112的種類。在一可能實施例中,記憶體112係為一揮發性記憶體,如雙倍資料速率同步動態隨機存取記憶體(Double Data Rate Synchronous Dynamic Random Access Memory;DDR SRAM)。在一些實施例中,控制電路111係利用一串列匯流排介面(SPI)117與記憶體112溝通。在其它實施例中,記憶體112整合於控制電路111之中。
在本實施例中,記憶體112具有一特定區塊SB,用以儲存特定檔案SFL。在一可能實施例中,儲存裝置110更包括一輸入輸出介面116。輸入輸出介面116耦接儲存裝置120。本發明並不限定輸入輸出介面116的種類。在一可能實施例中,輸入輸出介面116係為一通用序列匯流排(Universal Serial Bus,USB)介面、一先進技術附著(advanced technology attachment,ATA)介面、一序列先進技術附著(serial advanced technology attachment,SATA)介面、一快速周邊元件互聯(peripheral component interconnect express,PCI-E) 介面。
控制電路111透過輸入輸出介面116與外部的儲存裝置120溝通。儲存裝置120獨立於儲存裝置110之外。儲存裝置120可能係為另一固態硬體。本發明並不限定儲存裝置120的內部架構。在一可能實施例中,儲存裝置120至少具有一記憶體121以及一輸入輸出介面122。
記憶體121儲存複數檔案。每一檔案記錄快閃記憶體113的單級區塊及三級區塊的數量。舉例而言,假設,記憶體121儲存第一至第四檔案。在此例中,第一檔案可能表示快閃記憶體113的單級區塊的數量為快閃記憶體113的所有區塊數量的0%,以及快閃記憶體113的三級區塊的數量為快閃記憶體113的所有區塊數量的100%。第二檔案可能表示快閃記憶體113的單級區塊的數量為快閃記憶體113的所有區塊數量的30%,以及快閃記憶體113的三級區塊的數量為快閃記憶體113的所有區塊數量的70%。第三檔案可能表示快閃記憶體113的單級區塊的數量為快閃記憶體113的所有區塊數量的70%,以及快閃記憶體113的三級區塊的數量為快閃記憶體113的所有區塊數量的30%。第四檔案可能表示快閃記憶體113的單級區塊的數量為快閃記憶體113的所有區塊數量的100%,以及快閃記憶體113的三級區塊的數量為快閃記憶體113的所有區塊數量的0%。
輸入輸出介面122耦接輸入輸出介面116,用以輸出記憶體121所儲存的檔案。在一可能實施例中,控制電路111根據選擇輸入IN,由記憶體121所儲存的多個檔案中,選擇一者,並將選擇的檔案儲存於記憶體112的特定區塊SB中。
快閃記憶體113耦接控制電路111,並具有區塊114及115。區塊114及115之每一者可作為單級區塊或是三級區塊。在其它實施例中,區塊114及115之一者作為單級區塊,區塊114及115之另一者作為三級區塊。為方便說明,第1圖僅顯示區塊114及115,但並非用以限制本發明。在其它實施例中,快閃記憶體113具有更多的區塊。在一些實施例中,快閃記憶體113為NAND型快閃記憶體。
控制電路111根據特定檔案SFL,調整快閃記憶體113的單級區塊及三級區塊的數量,並存取快閃記憶體113。在一些實施例中,控制電路111透過至少一通道(未顯示),存取快閃記憶體113。在本實施例中,當控制電路111被重置時,控制電路111根據選擇輸入IN,選擇一目標記憶體所儲存的複數檔案之一者,並利用選擇的檔案更新特定檔案SFL。在一可能實施例中,目標記憶體係指儲存裝置110外的記憶體(如121)或是儲存裝置110內的記憶體(如112)。目標記憶體的每一檔案記錄一第一數量以及一第二數量,其中第一數量係為快閃記憶體113的單級區塊的數量,第二數量係為快閃記憶體113的三級區塊的數量。
在其它實施例中,目標記憶體更儲存一表格(未顯示)。表格記錄複數選擇輸入以及複數檔案的對應關係。因此,控制電路111可利用查找表方式,由目標記憶體所儲存的表格中,得知一對應檔案的位址,再根據該位址,讀取目標記憶體,用以取得一對應檔案。在此例中,控制電路111將該對應檔案儲存於記憶體112的特定區塊SB中,再由特定區塊SB載入該對應檔案。
在一些實施例中,控制電路111更接收一重置信號RST。當重置信號RST被致能時,控制電路111根據選擇輸入IN,更新特定檔案SFL。舉例而言,當儲存裝置110上電後,控制電路111根據選擇輸入IN(或稱第一選擇),從目標記憶體中,讀取一第一檔案。控制電路111將第一檔案作為特定檔案SFL儲存於特定區塊SB中。當重置信號RST被致能時,控制電路111根據選擇輸入IN(或稱第二選擇),再次讀取目標記憶體,用以取得一第二檔案,並將第二檔案作為特定檔案SFL儲存於特定區塊SB中。
在一些實施例中,當快閃記憶體113閒置時(即快閃記憶體113未輸出資料予控制電路110,也沒有接收來自控制電路110的資料),控制電路111判斷快閃記憶體113的單級區塊中,空閒的單級區塊的數量是否小於一臨界值。空閒的單級區塊係指未儲存有效資料的單級區塊。在此例中,當空閒的單級區塊的數量未小於一臨界值時,控制電路111繼續寫入資料至快閃記憶體113的空閒單級區塊中。然而,當空閒的單級區塊的數量小於臨界值時,控制電路111寫入資料至快閃記憶體113的三級區塊中。在其它實施例中,當空閒的單級區塊的數量小於臨界值時,控制電路111可能將快閃記憶體113的單級區塊的部分資料搬移到三級區塊中。
第2A圖為快閃記憶體113的單級區塊及三級區塊的示意圖。單級區塊210及三級區塊220均具有複數記憶胞。在本實施例中,單級區塊210的記憶胞數量約佔快閃記憶體113的總記憶胞數量的三分之一,而三級區塊220的記憶胞數量約佔快閃記憶體113的總記憶胞數量的三分之二。當單級區塊210的空閒記憶胞的數量小於一臨界值時,控制電路111寫入資料至三級區塊220中。
第2B圖為本發明之快閃記憶體113的特性曲線。當控制電路111將資料寫入單級區塊210時,快閃記憶體113每秒大約可傳送1500MB的資料。當單級區塊210的空閒記憶胞不足時,控制電路111改將資料寫入三級區塊220中。此時,快閃記憶體113每秒大約可傳送1000MB的資料。
第3圖為本發明之控制方法的一可能流程示意圖。本發明的控制方法適用於一第一儲存裝置中,用以調整儲存裝置裡的單級區塊及三級區塊的數量。首先,接收一選擇輸入(步驟S311)。在一可能實施例中,使用者可能透過一應用程式(APP)或是一基本輸入輸出系統(BIOS),提供一選擇輸入。
根據該選擇輸入,調整一快閃記憶體的單級區塊及三級區塊的數量(步驟S312)。在本實施例中,步驟S312包括步驟S313~S316。首先,判斷該選擇輸入是否符合一預設條件(步驟S313)。當選擇輸入符合該預設條件時,由多個檔案中,選擇一第一檔案作為一特定檔案(步驟S314)。當選擇輸入不符合該預設條件時,由多個檔案中,選擇一第二檔案作為一特定檔案(步驟S315)。接著,根據特定檔案,設定快閃記憶體的單級區塊及三級區塊的數量(步驟S316)。
在本實施例中,第一及第二檔案指示不同數量的單級區塊及三級區塊。舉例而言,第一檔案可能指示快閃記憶體的單級區塊數量佔所有區塊的數量的30%,並且快閃記憶體的三級區塊數量佔所有區塊的數量的70%。在此例中,第二檔案可能指示快閃記憶體的單級區塊數量佔所有區塊的數量的70%,並且快閃記憶體的三級區塊數量佔所有區塊的數量的30%。
在一些實施例中,步驟S314及S315係讀取一目標記憶體(或稱第二記憶體),用以從多個檔案中選擇一者作為一特定檔案。在一可能實施例中,步驟S314及S315將特定檔案儲存於目標記憶體的一特定區塊中。在另一可能實施例中,步驟S314及S315將特定檔案儲存於另一記憶體(或稱第一記憶體)中。在此例中,第一記憶體可能位於第一儲存裝置中,而目標記憶體可能位於第二儲存裝置中。第一及第二儲存裝置各自獨立。
在其它實施例中,步驟S312係查詢一表格。該表格記錄複數選擇輸入以及複數檔案的對應關係。步驟S312根據步驟S311所接收的選擇輸入,利用一查找表方式,找到步驟S311的選擇輸入所對應的檔案的位址,再根據位址,讀取目標記憶體。在此例中,表格可能也儲存於目標記憶體中。在一些實施例中,表格可能儲存於另一記憶體中,不同於儲存複數檔案的目標記憶體。
在其它實施例中,本發明之控制方法更判斷是否發生一重置事件(步驟S317)。如果沒有發生重置事件,執行步驟S316,繼續寫入資料至快閃記憶體中。然而,當第一儲存裝置被重置時,執行步驟S311,並重新調整快閃記憶體的單級區塊及三級區塊的數量(步驟S312)。在此例中,步驟S311再次讀取選擇輸入,步驟S312根據選擇輸入,選擇合適的檔案,用以更新特定檔案。
在一可能實施例中,步驟S316更判斷快閃記憶體的空閒單級區塊的數量是否小於一臨界值。當快閃記憶體的空閒單級區塊的數量未小於一臨界值時,步驟S316寫入資料至快閃記憶體的空閒單級區塊中。然而,當快閃記憶體的空閒單級區塊的數量小於一臨界值時,步驟S316寫入資料至快閃記憶體的三級區塊中。在其它實施例中,當快閃記憶體的空閒單級區塊的數量小於一臨界值時,步驟S316將快閃記憶體的單級區塊的部分資料搬移到快閃記憶體的三級區塊中。
由於快閃記憶體的單級區塊及三級區塊的數量將依各種需求做調整,故可滿足各種情境的需求。在儲存裝置空閒時,判斷單級區塊是否還有夠的容量。如果單級區塊的可用容量低於一臨界值時,將單級區塊的部分資料搬移到三級區塊,使得儲存裝置維持較快的寫入速度。
必須瞭解的是,當一個元件或層被提及與另一元件或層「耦接」時,係可直接耦接或連接至其它元件或層,或具有其它元件或層介於其中。反之,若一元件或層「連接」至其它元件或層時,將不具有其它元件或層介於其中。
本發明之控制方法,或特定型態或其部份,可以以程式碼的型態存在。程式碼可儲存於實體媒體,如軟碟、光碟片、硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限於外在形式之電腦程式產品,其中,當程式碼被機器,如電腦載入且執行時,此機器變成用以參與本發明之儲存裝置。程式碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態進行傳送,其中,當程式碼被機器,如電腦接收、載入且執行時,此機器變成用以參與本發明之儲存裝置。當在一般用途處理單元實作時,程式碼結合處理單元提供一操作類似於應用特定邏輯電路之獨特裝置。
除非另作定義,在此所有詞彙(包含技術與科學詞彙)均屬本發明所屬技術領域中具有通常知識者之一般理解。此外,除非明白表示,詞彙於一般字典中之定義應解釋為與其相關技術領域之文章中意義一致,而不應解釋為理想狀態或過分正式之語態。雖然“第一”、“第二”等術語可用於描述各種元件,但這些元件不應受這些術語的限制。這些術語只是用以區分一個元件和另一個元件。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾。舉例來說,本發明實施例所述之系統、裝置或是方法可以硬體、軟體或硬體以及軟體的組合的實體實施例加以實現。因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
110、120:儲存裝置 111:控制電路 112、121:記憶體 113:快閃記憶體 114、115、210、220:區塊 116、122:輸入輸出介面 117:串列匯流排介面 IN:選擇輸入 SB:特定區塊 SFL:特定檔案 RST:重置信號 S311~S317:步驟
第1圖為本發明之儲存裝置的示意圖。 第2A圖為快閃記憶體的單級區塊及三級區塊的示意圖。 第2B圖為本發明之快閃記憶體的特性曲線。 第3圖為本發明之控制方法的一可能流程示意圖。
S311~S317:步驟

Claims (18)

  1. 一種動態調整單級區塊及三級區塊比例的控制方法,適用於一第一儲存裝置中,該控制方法包括: 接收一選擇輸入; 根據該選擇輸入,調整一快閃記憶體的單級區塊及三級區塊的數量;以及 當該第一儲存裝置被重置時,重新調整該快閃記憶體的單級區塊及三級區塊的數量。
  2. 如請求項1之動態調整單級區塊及三級區塊比例的控制方法,其中根據該選擇輸入,調整該快閃記憶體的單級區塊及三級區塊的數量的步驟包括: 根據該選擇輸入,由複數檔案中選擇一者作為一特定檔案。
  3. 如請求項2之動態調整單級區塊及三級區塊比例的控制方法,更包括: 儲存該特定檔案於一第一記憶體的一特定區塊中。
  4. 如請求項3之動態調整單級區塊及三級區塊比例的控制方法,其中該等檔案係儲存於一第二儲存裝置中,該第一及第二儲存裝置各自獨立。
  5. 如請求項3之動態調整單級區塊及三級區塊比例的控制方法,其中該等檔案儲存於該第一記憶體中。
  6. 如請求項2之動態調整單級區塊及三級區塊比例的控制方法,更包括: 儲存一表格,該表格記錄複數選擇輸入以及該等檔案的對應關係。
  7. 如請求項1之動態調整單級區塊及三級區塊比例的控制方法,更包括: 判斷該快閃記憶體的空閒單級區塊的數量是否小於一臨界值, 其中,當該快閃記憶體的空閒單級區塊的數量未小於該臨界值時,寫入資料至該快閃記憶體的空閒單級區塊中。
  8. 如請求項7之動態調整單級區塊及三級區塊比例的控制方法,其中當該快閃記憶體的空閒單級區塊的數量小於該臨界值時,寫入資料至該快閃記憶體的三級區塊中。
  9. 如請求項7之動態調整單級區塊及三級區塊比例的控制方法,其中當該快閃記憶體的空閒單級區塊的數量小於該臨界值時,將該快閃記憶體的至少一單級區塊的資料搬移到該快閃記憶體的三級區塊中。
  10. 一種動態調整單級區塊及三級區塊比例的儲存裝置,包括: 一第一記憶體,儲存一特定檔案; 一快閃記憶體,具有複數區塊,該等區塊之一者作為一單級區塊或是一三級區塊,其中該單級區塊的數量為一第一數值,該三級區塊的數量為一第二數值;以及 一控制電路,根據該特定檔案,調整該第一及第二數值, 其中,當該控制電路被重置時,該控制電路根據一選擇輸入,選擇一第二記憶體所儲存的複數檔案之一者,並利用選擇的檔案更新該特定檔案。
  11. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,其中該第二記憶體係為該第一記憶體,該第一記憶體儲存該等檔案,並具有一特定區塊,該特定區塊用以儲存該特定檔案,該控制電路根據該選擇輸入,選擇該等檔案之一者,並將選擇的檔案儲存於該特定區塊中。
  12. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,其中該第二記憶體位於該動態調整記憶區塊比例的儲存裝置之外。
  13. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,更包括: 一輸入輸出介面,用以耦接該第二記憶體。
  14. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,其中該第一記憶體整合於該控制電路之中。
  15. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,其中該第二記憶體儲存一表格,該表格記錄複數選擇輸入以及該等檔案的對應關係。
  16. 如請求項10之動態調整單級區塊及三級區塊比例的儲存裝置,其中該快閃記憶體具有複數單級區塊以及複數三級區塊,該控制電路判斷該等單級區塊中,空閒的單級區塊的數量是否小於一臨界值,當空閒的單級區塊的數量未小於該臨界值時,該控制電路寫入資料至該等單級區塊中。
  17. 如請求項16之動態調整單級區塊及三級區塊比例的儲存裝置,其中當空閒的單級區塊的數量小於該臨界值時,該控制電路寫入資料至該等三級區塊中。
  18. 如請求項16之動態調整單級區塊及三級區塊比例的儲存裝置,其中當空閒的單級區塊的數量小於該臨界值時,該控制電路將該等單級區塊的部分資料搬移到該等三級區塊中。
TW110148828A 2021-12-27 2021-12-27 動態調整單級區塊及三級區塊比例的控制方法 TWI788161B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW110148828A TWI788161B (zh) 2021-12-27 2021-12-27 動態調整單級區塊及三級區塊比例的控制方法
US17/824,392 US20230205459A1 (en) 2021-12-27 2022-05-25 Control method for dynamically adjusting ratio of single-level cell (slc) blocks and three-level cells (tlc) blocks
EP22177226.2A EP4202932A1 (en) 2021-12-27 2022-06-03 Control method for dynamically adjusting ratio of single-level cell (slc) blocks and three-level cells (tlc) blocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110148828A TWI788161B (zh) 2021-12-27 2021-12-27 動態調整單級區塊及三級區塊比例的控制方法

Publications (2)

Publication Number Publication Date
TWI788161B true TWI788161B (zh) 2022-12-21
TW202326733A TW202326733A (zh) 2023-07-01

Family

ID=81940520

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110148828A TWI788161B (zh) 2021-12-27 2021-12-27 動態調整單級區塊及三級區塊比例的控制方法

Country Status (3)

Country Link
US (1) US20230205459A1 (zh)
EP (1) EP4202932A1 (zh)
TW (1) TWI788161B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060686B2 (en) * 2008-05-16 2011-11-15 Phison Electronics Corp. Method, apparatus and controller for managing memories
US9274893B2 (en) * 2013-05-31 2016-03-01 Silicon Motion, Inc. Data storage device and error correction method thereof
TWI533305B (zh) * 2014-02-10 2016-05-11 慧榮科技股份有限公司 將資料寫入至快閃記憶體的方法及相關的記憶裝置與快閃記憶體
US10210926B1 (en) * 2017-09-15 2019-02-19 Pure Storage, Inc. Tracking of optimum read voltage thresholds in nand flash devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7295480B2 (en) * 2003-12-18 2007-11-13 Agere Systems Inc Semiconductor memory repair methodology using quasi-non-volatile memory
US20100017556A1 (en) * 2008-07-19 2010-01-21 Nanostar Corporationm U.S.A. Non-volatile memory storage system with two-stage controller architecture
US20100332922A1 (en) * 2009-06-30 2010-12-30 Mediatek Inc. Method for managing device and solid state disk drive utilizing the same
US9021177B2 (en) * 2010-04-29 2015-04-28 Densbits Technologies Ltd. System and method for allocating and using spare blocks in a flash memory
EP2845088A4 (en) * 2012-04-30 2016-08-03 Hewlett Packard Entpr Dev Lp CONFIGURABLE COMPUTER MEMORY
US9489263B2 (en) * 2014-01-09 2016-11-08 Sandisk Technologies Llc Selective ECC refresh for on die buffered non-volatile memory
WO2017022082A1 (ja) * 2015-08-04 2017-02-09 株式会社日立製作所 フラッシュメモリパッケージ、及び、フラッシュメモリパッケージを含むストレージシステム
KR102550343B1 (ko) * 2016-07-27 2023-07-03 삼성전자주식회사 솔리드 스테이트 드라이브 장치 및 그것의 동작 방법
US10545685B2 (en) * 2017-08-30 2020-01-28 Micron Technology, Inc. SLC cache management
US10572388B2 (en) * 2017-08-30 2020-02-25 Micron Technology, Inc. Managed NVM adaptive cache management
US20190034330A1 (en) * 2017-12-01 2019-01-31 Intel Corporation Mass storage device with dynamic single level cell (slc) buffer specific program and/or erase settings
KR20210057254A (ko) * 2019-11-11 2021-05-21 삼성전자주식회사 스토리지 장치 및 그 동작방법
US11550657B1 (en) * 2021-09-01 2023-01-10 Apple Inc. Efficient programming schemes in a nonvolatile memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060686B2 (en) * 2008-05-16 2011-11-15 Phison Electronics Corp. Method, apparatus and controller for managing memories
US9274893B2 (en) * 2013-05-31 2016-03-01 Silicon Motion, Inc. Data storage device and error correction method thereof
TWI533305B (zh) * 2014-02-10 2016-05-11 慧榮科技股份有限公司 將資料寫入至快閃記憶體的方法及相關的記憶裝置與快閃記憶體
US10210926B1 (en) * 2017-09-15 2019-02-19 Pure Storage, Inc. Tracking of optimum read voltage thresholds in nand flash devices

Also Published As

Publication number Publication date
TW202326733A (zh) 2023-07-01
EP4202932A1 (en) 2023-06-28
US20230205459A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
US11036646B2 (en) Data storage device and method of writing logical-to-physical mapping table thereof
US8380945B2 (en) Data storage device, memory system, and computing system using nonvolatile memory device
US8762703B2 (en) Boot partitions in memory devices and systems
US20170262173A1 (en) Data storage device and operating method thereof
TWI438778B (zh) 用來抑制資料錯誤之方法以及相關之記憶裝置及其控制器
CN101369451A (zh) 固态存储器、包含其的计算机系统和操作其的方法
CN111651371B (zh) 非对称型平面管理方法以及数据存储装置及其控制器
TW201828035A (zh) 資料傳輸方法、記憶體儲存裝置及記憶體控制電路單元
US10503433B2 (en) Memory management method, memory control circuit unit and memory storage device
US9037781B2 (en) Method for managing buffer memory, memory controllor, and memory storage device
US11204698B2 (en) Memory controller to set operating environment of memory device, method of operating the same and storage device including the same
US20230418485A1 (en) Host device, storage device, and electronic device
US20200402598A1 (en) Operating method of controller
CN112162695A (zh) 一种数据缓存方法、装置、电子设备及存储介质
US10423338B2 (en) Method of extending lifetime of solid state disk
TWI788161B (zh) 動態調整單級區塊及三級區塊比例的控制方法
TWI718635B (zh) 非對稱型平面管理方法以及資料儲存裝置及其控制器
TWI727985B (zh) 資料儲存裝置及其操作方法
CN116364140A (zh) 动态调整单级区块及三级区块比例的控制方法
US11347635B2 (en) Memory control method, memory storage device and memory control circuit unit
TWI820473B (zh) 瞬間斷電回復處理方法及裝置以及電腦程式產品
CN117632038B (zh) 损耗平衡方法、存储器存储装置及存储器控制电路单元
US10942858B2 (en) Data storage devices and data processing methods
US20240036731A1 (en) Memory system and method of operating the same
KR20230166612A (ko) 메모리 컨트롤러 및 그 동작 방법