TWI790512B - Storage control method and storage system - Google Patents
Storage control method and storage system Download PDFInfo
- Publication number
- TWI790512B TWI790512B TW109144211A TW109144211A TWI790512B TW I790512 B TWI790512 B TW I790512B TW 109144211 A TW109144211 A TW 109144211A TW 109144211 A TW109144211 A TW 109144211A TW I790512 B TWI790512 B TW I790512B
- Authority
- TW
- Taiwan
- Prior art keywords
- storage
- data
- storage area
- cache buffer
- available capacity
- Prior art date
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本發明是有關於一種儲存控制技術,且特別是有關於一種儲存控制方法與儲存系統。The present invention relates to a storage control technology, and in particular to a storage control method and a storage system.
隨著記憶體儲存技術的演進,固態硬碟(Solid State Drive, SSD)的使用也越來越普及。一般來說,固態硬碟中會配置有快取區與儲存區。屬於快取區的記憶胞的資料存取速度較快,但每一個記憶胞的儲存容量較小。反之,屬於儲存區的記憶胞的資料存取速度較慢,但每一個記憶胞的儲存容量較大。因此,當快取區的容量被用盡時,若資料被持續儲存至固態硬碟中,則此資料勢必被改為儲存至固態硬碟的儲存區,從而導致資料的儲存速度大幅下降。With the evolution of memory storage technology, the use of Solid State Drive (SSD) is becoming more and more popular. Generally, a solid state drive is configured with a cache area and a storage area. The data access speed of memory cells belonging to the cache area is faster, but the storage capacity of each memory cell is smaller. On the contrary, the data access speed of the memory cells belonging to the storage area is relatively slow, but the storage capacity of each memory cell is relatively large. Therefore, when the capacity of the cache area is exhausted, if the data is continuously stored in the solid-state hard disk, the data must be changed to be stored in the storage area of the solid-state hard disk, thereby causing the data storage speed to drop significantly.
本發明提供一種儲存控制方法與儲存系統,可提高儲存裝置的資料存取效率。The invention provides a storage control method and a storage system, which can improve the data access efficiency of a storage device.
本發明的實施例提供一種儲存控制方法,包括:偵測儲存裝置的快取緩衝區的使用狀態;根據所述快取緩衝區的所述使用狀態將寫入目標區決定為所述儲存裝置的第一儲存區或所述儲存裝置的第二儲存區,其中所述快取緩衝區的資料寫入速度高於所述第二儲存區的資料寫入速度,且所述第二儲存區的所述資料寫入速度高於所述第一儲存區的資料寫入速度;若所述寫入目標區被決定為所述第一儲存區,將來自主機系統的第一資料經由所述快取緩衝區的緩存後儲存至所述第一儲存區;以及若所述寫入目標區被決定為所述第二儲存區,不經由所述快取緩衝區的緩存而將來自所述主機系統的第二資料儲存至所述第二儲存區。An embodiment of the present invention provides a storage control method, including: detecting the use status of the cache buffer of the storage device; determining the write target area as the storage device according to the use status of the cache buffer The first storage area or the second storage area of the storage device, wherein the data writing speed of the cache buffer is higher than the data writing speed of the second storage area, and all the data writing speeds of the second storage area The data writing speed is higher than the data writing speed of the first storage area; if the write target area is determined to be the first storage area, the first data from the host system will be buffered through the cache stored in the first storage area; and if the write target area is determined to be the second storage area, the first storage area from the host system is not passed through the cache of the cache buffer The second data is stored in the second storage area.
本發明的實施例另提供一種儲存系統,其包括主機系統與儲存裝置。所述儲存裝置耦接至所述主機系統並具有快取緩衝區、第一儲存區及第二儲存區。所述主機系統用以偵測所述快取緩衝區的使用狀態。所述主機系統更用以根據所述快取緩衝區的所述使用狀態將寫入目標區決定為所述第一儲存區或所述第二儲存區。所述快取緩衝區的資料寫入速度高於所述第二儲存區的資料寫入速度。所述第二儲存區的所述資料寫入速度高於所述第一儲存區的資料寫入速度。若所述寫入目標區被決定為所述第一儲存區,所述儲存裝置用以將來自所述主機系統的第一資料經由所述快取緩衝區的緩存後儲存至所述第一儲存區。若所述寫入目標區被決定為所述第二儲存區,所述儲存裝置更用以不經由所述快取緩衝區的緩存而將來自所述主機系統的第二資料儲存至所述第二儲存區。An embodiment of the present invention further provides a storage system, which includes a host system and a storage device. The storage device is coupled to the host system and has a cache buffer, a first storage area and a second storage area. The host system is used to detect the usage status of the cache buffer. The host system is further configured to determine the write target area as the first storage area or the second storage area according to the usage status of the cache buffer. The data writing speed of the cache buffer is higher than the data writing speed of the second storage area. The data writing speed of the second storage area is higher than the data writing speed of the first storage area. If the write target area is determined to be the first storage area, the storage device is used to store the first data from the host system in the first storage after passing through the cache of the cache buffer district. If the write target area is determined to be the second storage area, the storage device is further configured to store the second data from the host system in the second storage area without going through the cache of the cache buffer Two storage areas.
基於上述,根據儲存裝置的快取緩衝區的使用狀態,寫入目標區可動態地被決定為儲存裝置的第一儲存區或儲存裝置的第二儲存區。若所述寫入目標區被決定為所述第一儲存區,來自主機系統的第一資料可經由所述快取緩衝區的緩存後儲存至所述第一儲存區。然而,若所述寫入目標區被決定為所述第二儲存區,則在不經由所述快取緩衝區的緩存之前提下,將來自所述主機系統的第二資料可被儲存至所述第二儲存區。其中所述快取緩衝區的資料寫入速度高於所述第二儲存區的資料寫入速度,且所述第二儲存區的所述資料寫入速度高於所述第一儲存區的資料寫入速度。藉此,可有效提高儲存裝置的資料儲存效率。Based on the above, according to the usage state of the cache buffer of the storage device, the write target area can be dynamically determined as the first storage area of the storage device or the second storage area of the storage device. If the write target area is determined to be the first storage area, the first data from the host system can be stored in the first storage area after being cached in the cache buffer. However, if the write target area is determined to be the second storage area, the second data from the host system can be stored in the second storage area without going through the cache of the cache buffer. the second storage area. Wherein the data writing speed of the cache buffer is higher than the data writing speed of the second storage area, and the data writing speed of the second storage area is higher than the data writing speed of the first storage area write speed. Thereby, the data storage efficiency of the storage device can be effectively improved.
圖1是根據本發明的一實施例所繪示的儲存系統的功能方塊圖。請參照圖1,儲存系統包括儲存裝置10與主機系統11。主機系統11耦接至儲存裝置10並可將資料儲存至儲存裝置10中或從儲存裝置10中讀取資料。FIG. 1 is a functional block diagram of a storage system according to an embodiment of the present invention. Referring to FIG. 1 , the storage system includes a
主機系統11包括連接界面111與處理器112。連接界面111耦接至處理器112。連接界面111用以連接儲存裝置10。主機系統11可藉由連接界面111與儲存裝置10通訊。例如,連接界面111可符合相容於序列先進附件(Serial Advanced Technology Attachment, SATA)標準、高速周邊零件連接界面(Peripheral Component Interconnect Express, PCI Express)標準、或通用序列匯流排(Universal Serial Bus, USB)標準等連接界面標準,本發明不加以限制。The
處理器112可控制主機系統11的部分或整體操作。例如,處理器112可包括中央處理單元(CPU)、或是其他可程式化之一般用途或特殊用途的微處理器、數位訊號處理器(Digital Signal Processor, DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuits, ASIC)、可程式化邏輯裝置(Programmable Logic Device, PLD)或其他類似裝置或這些裝置的組合。The
儲存裝置10包括連接界面101、控制器102、儲存模組103及儲存模組104。連接界面101用以連接主機系統11。儲存裝置10可藉由連接界面101與主機系統11通訊。例如,連接界面111亦可符合SATA標準、PCI Express標準或USB標準等連接界面標準,本發明不加以限制。The
控制器102耦接至連接界面101、儲存模組103及儲存模組104。控制器102用以控制儲存模組103與儲存模組104。此外,控制器102也可控制儲存裝置10的整體或部分運作。例如,控制器102可包括中央處理單元(CPU)、或是其他可程式化之一般用途或特殊用途的微處理器、數位訊號處理器(DSP)、可程式化控制器、特殊應用積體電路(ASIC)、可程式化邏輯裝置(PLD)或其他類似裝置或這些裝置的組合。The
儲存模組103用以儲存主機系統11所寫入之資料。須注意的是,儲存模組103中的儲存單元(亦稱為記憶胞)是藉由電壓(亦稱為臨界電壓)之改變來儲存資料。例如,儲存模組103可包括固態硬碟(SSD)或類似的快閃記憶體模組。The
在一實施例中,儲存模組103可包括單階胞(single level cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞可儲存1個位元的快閃記憶體模組)、多階胞(multi level cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞可儲存2個位元的快閃記憶體模組)、三階胞(triple level cell, TLC)NAND型快閃記憶體模組(即,一個記憶胞可儲存3個位元的快閃記憶體模組)、四階胞(quad level cell, QLC)NAND型快閃記憶體模組(即,一個記憶胞可儲存4個位元的快閃記憶體模組)及/或其他類型的快閃記憶體模組。In one embodiment, the
儲存模組103包括快取緩衝區1031與儲存區(亦稱為第一儲存區)1032。快取緩衝區1031與儲存區1032分別包括多個記憶胞。此些記憶胞的每一者可被程式化以改變其臨界電壓以儲存相應的位元(亦稱為資料位元)。快取緩衝區1031中的單一個記憶胞可用以儲存n個資料位元。儲存區中的單一個記憶胞可用以儲存m個資料位元。n與m皆為正整數,且m大於n。例如,n可為1,且m可為2、3或4。The
在一實施例中,快取緩衝區1031中的記憶胞是以虛擬SLC(pSLC)程式化模式來儲存資料,而儲存區1032中的記憶胞是以TLC程式化模式來儲存資料。在此實施例中,快取緩衝區1031中的單一個記憶胞可用以儲存1個資料位元(即n=1),而儲存區1032中的單一個記憶胞可用以儲存3個資料位元(即m=3)。In one embodiment, the memory cells in the
在一實施例中,快取緩衝區1031中的記憶胞是以pSLC程式化模式來儲存資料,而儲存區1032中的記憶胞是以QLC程式化模式來儲存資料。在此實施例中,快取緩衝區1031中的單一個記憶胞可用以儲存1個資料位元(即n=1),而儲存區1032中的單一個記憶胞可用以儲存4個資料位元(即m=4)。依此類推,n與m的數值可根據所採用的程式化模式而調整,只要符合m大於n之規範即可。In one embodiment, the memory cells in the
儲存模組104也可用以儲存主機系統11所寫入之資料。例如,儲存模組104包括儲存區(亦稱為第二儲存區)1041。儲存區1041包含多個儲存單元。然而,須注意的是,相異於儲存模組103,儲存模組104中的儲存單元是藉由磁性之改變來儲存資料。例如,儲存模組104可包括機械硬碟(Hard disk drive, HDD)(亦稱為傳統硬碟或硬碟驅動器)。The
基於快取緩衝區1031、儲存區1032及儲存區1041對於儲存單元的使用方式之差異及/或先天上的物理性差異,快取緩衝區1031的資料寫入速度(或寫入頻寬)可高於儲存區1041的資料寫入速度(或寫入頻寬),且儲存區1041的資料寫入速度(或寫入頻寬)可高於儲存區1032的資料寫入速度(或寫入頻寬)。例如,在一實施例中,快取緩衝區1031的平均資料寫入速度可約為1GB/s,儲存區1041的平均資料寫入速度可約為140MB/s,而儲存區1032的平均資料寫入速度可約為30~50MB/s。Based on the differences and/or inherent physical differences between the
在一實施例中,主機系統11的處理器112可偵測快取緩衝區1031的使用狀態。例如,快取緩衝區1031的使用狀態可反映快取緩衝區1031中當前的可用容量(亦稱為剩餘容量)。例如,假設快取緩衝區1031的總容量為2GB。在快取緩衝區1031儲存了1.5GB的有效資料的狀態下,快取緩衝區1031的可用容量約為0.5GB。換言之,若當前儲存於快取緩衝區1031中的有效資料越多,則快取緩衝區1031中當前的可用容量越小。反之,若當前儲存於快取緩衝區1031中的有效資料越少,則快取緩衝區1031中當前的可用容量越大。In one embodiment, the
在一實施例中,儲存裝置10的控制器102可持續更新快取緩衝區1031的使用狀態。此外,控制器102可發送通知訊息至主機系統11。此通知訊息可反映快取緩衝區1031的使用狀態。換言之,主機系統11的處理器112可根據此通知訊息得知快取緩衝區1031的使用狀態(例如快取緩衝區1031當前的可用容量)。In one embodiment, the
在一實施例中,處理器112可根據快取緩衝區1031的使用狀態將一個寫入目標區決定為儲存區1032與儲存區1041的其中之一。例如,此目標寫入區可指示來自主機系統的資料(即待儲存資料)的目標寫入位置(或目標寫入磁碟)。處理器112可將所決定的寫入目標區設定至儲存裝置10中的一個管理表格。爾後,控制器102可查詢此管理表格以根據當前設定的寫入目標區來儲存來自主機系統11的資料。In one embodiment, the
在一實施例中,假設寫入目標區被決定為儲存區1032。在寫入目標區為儲存區1032的狀態下,控制器102可將來自主機系統11的資料(亦稱為第一資料)經由快取緩衝區1031的緩存後儲存至儲存區1032。In one embodiment, it is assumed that the write target area is determined as the
在一實施例中,假設寫入目標區被決定為儲存區1041。在寫入目標區為儲存區1041的狀態下,控制器102可在不經由快取緩衝區1031的緩存之前提下,將來自主機系統11的資料(亦稱為第二資料)直接儲存至儲存區1041。In one embodiment, it is assumed that the write target area is determined as the
在一實施例中,處理器112可根據快取緩衝區1031的可用容量來將寫入目標區決定為儲存區1032與儲存區1041的其中之一。在一實施例中,處理器112可判斷快取緩衝區1031的可用容量是否大於某一門檻值(亦稱為第一門檻值)。若快取緩衝區1031的可用容量大於第一門檻值,處理器112可將寫入目標區決定為儲存區1032。反之,若快取緩衝區1031的可用容量不大於第一門檻值,處理器112可不調整寫入目標區,亦即,將寫入目標區維持於當前的儲存區1032與儲存區1041的其中之一。In one embodiment, the
在一實施例中,處理器112可判斷快取緩衝區1031的可用容量是否小於另一門檻值(亦稱為第二門檻值)。若快取緩衝區1031的可用容量小於第二門檻值,處理器112可將寫入目標區決定為儲存區1041。反之,若快取緩衝區1031的可用容量不小於第二門檻值,處理器112可不調整寫入目標區,亦即,將寫入目標區維持於當前的儲存區1032與儲存區1041的其中之一。In one embodiment, the
在一實施例中,第一門檻值可約為快取緩衝區1031的總容量的80%~90%,而第二門檻值可約為快取緩衝區1031的總容量的10%~20%。在一實施例中,第一門檻值與第二門檻值皆可以是其他數值,只要符合第一門檻值大於第二門檻值之規範即可。In one embodiment, the first threshold may be about 80%-90% of the total capacity of the
圖2是根據本發明的一實施例所繪示的寫入目標區為第一儲存區的狀態下儲存資料之路徑的示意圖。請參照圖2,控制器102可從主機系統11接收資料201。在寫入目標區為儲存區1032(即第一儲存區)的狀態下,控制器102可先將資料201緩存至快取緩衝區1031。例如,資料201可藉由pSLC程式化模式儲存於快取緩衝區1031中。稍後,控制器102可執行一個資料整理操作,以藉由此資料整理操作將資料201複製到儲存區1032,進行較長時間的保存。例如,資料201可藉由TLC或QLC程式化模式儲存於儲存區1032中。FIG. 2 is a schematic diagram of a path for storing data in a state where the writing target area is the first storage area according to an embodiment of the present invention. Referring to FIG. 2 , the
須注意的是,在資料整理操作中,快取緩衝區1031中的m個實體單元(或記憶胞)中的有效資料可被集中複製到儲存區1032中的n個實體單元(或記憶胞)中進行儲存。例如,假設一個實體單元為一個實體頁、n=1且m=4,則快取緩衝區1031中的四個實體頁中的有效資料可被集中複製到儲存區1032中的一個實體頁進行儲存。爾後,快取緩衝區1031中的這四個實體頁中的資料可被標記為無效並且等待被抹除。在這四個實體頁被抹除後,這四個實體頁的儲存空間即可被視為快取緩衝區1031的一部分的可用容量。換言之,在一實施例中,控制器102可藉由資料整理操作來減少快取緩衝區1031中的有效資料的資料量並增加快取緩衝區1031的可用容量。It should be noted that, in the data sorting operation, valid data in the m physical units (or memory cells) in the
圖3是根據本發明的一實施例所繪示的寫入目標區為第二儲存區的狀態下儲存資料之路徑的示意圖。請參照圖3,控制器102可從主機系統11接收資料301。在寫入目標區為儲存區1041(即第二儲存區)的狀態下,控制器102可直接將資料301儲存至儲存區1041以進行長時間保存。特別是,在寫入目標區為儲存區1041的狀態下,資料301在儲存至儲存區1041之前,並不需要緩存至快取緩衝區1031,如圖3所示。FIG. 3 is a schematic diagram of a path for storing data in a state where the writing target area is the second storage area according to an embodiment of the present invention. Referring to FIG. 3 , the
須注意的是,圖2的實施例所示的資料寫入路徑是快取緩衝區1031的可用容量較為充足(例如快取緩衝區1031的可用容量大於第一門檻值或介於第一門檻值與第二門檻值之間)的情況下的資料寫入路徑。在此狀態下,對於主機系統11而言,資料(例如資料201)的寫入速度可約為快取緩衝區1031的平均資料寫入速度(例如1GB/s)。It should be noted that the data writing path shown in the embodiment of FIG. 2 is that the available capacity of the
然而,圖3的實施例所示的資料寫入路徑則是快取緩衝區1031的可用容量較為不足(例如快取緩衝區1031的可用容量小於第二門檻值或介於第一門檻值與第二門檻值之間)的情況下的資料寫入路徑。在此狀態下,對於主機系統11而言,資料(例如資料301)的寫入速度仍可約略維持於儲存區1041的平均資料寫入速度(例如140MB/s)。However, the data writing path shown in the embodiment of FIG. 3 is that the available capacity of the
在一實施例中,在快取緩衝區1031的可用容量較為不足甚至完全用盡的狀態下,若未將寫入目標區調整為儲存區1041(即寫入目標區持續被設定為儲存區1032),則控制器102會略過快取緩衝區1031而直接以TLC或QLC程式化模式將資料儲存至儲存區1032。此時,對於主機系統11而言,資料的寫入速度可能會降到儲存區1032的平均資料寫入速度(例如30~50MB/s)。換言之,此時主機系統11可能會明顯偵測到儲存裝置10的寫入速度大幅下降,進而造成不良的使用體驗。然而,藉由圖2與圖3的實施例之控制機制,即可有效避免此狀況發生。In one embodiment, when the available capacity of the
在一實施例中,在快取緩衝區1031(或儲存模組103)的閒置狀態下(例如寫入目標區為儲存區1041的狀態下及/或在控制器102直接將資料301儲存至儲存區1041的期間),控制器102可對快取緩衝區1031執行前述資料整理操作,以增加快取緩衝區1031的可用容量。在增加快取緩衝區1031的可用容量後,當符合預設條件(例如快取緩衝區1031的可用容量大於第一門檻值)時,處理器112可再次將寫入目標區調整為儲存區1032,從而提高後續資料的寫入速度。In one embodiment, when the cache buffer 1031 (or the storage module 103) is in an idle state (for example, when the write target area is the
在一實施例中,儲存裝置10同時具有固態硬碟(例如儲存模組103)與機械硬碟(例如儲存模組104)。因此,在一實施例中,儲存裝置10亦可稱為混合硬碟或複合式硬碟。In one embodiment, the
圖4是根據本發明的一實施例所繪示的儲存控制方法的流程圖。請參照圖4,在步驟S401中,偵測儲存裝置的快取緩衝區的使用狀態。在步驟S402中,根據所述快取緩衝區的所述使用狀態將寫入目標區決定為所述儲存裝置的第一儲存區或所述儲存裝置的第二儲存區,其中所述快取緩衝區的資料寫入速度高於所述第二儲存區的資料寫入速度,且所述第二儲存區的所述資料寫入速度高於所述第一儲存區的資料寫入速度。若所述寫入目標區被決定為所述第一儲存區,在步驟S403中,將來自主機系統的第一資料經由所述快取緩衝區的緩存後儲存至所述第一儲存區。若所述寫入目標區被決定為所述第二儲存區,在步驟S404中,不經由所述快取緩衝區的緩存而將來自所述主機系統的第二資料儲存至所述第二儲存區。FIG. 4 is a flowchart of a storage control method according to an embodiment of the invention. Referring to FIG. 4 , in step S401 , the usage status of the cache buffer of the storage device is detected. In step S402, the write target area is determined as the first storage area of the storage device or the second storage area of the storage device according to the usage status of the cache buffer, wherein the cache buffer The data writing speed of the area is higher than the data writing speed of the second storage area, and the data writing speed of the second storage area is higher than the data writing speed of the first storage area. If the write target area is determined to be the first storage area, in step S403, the first data from the host system is stored in the first storage area after being cached in the cache buffer. If the write target area is determined to be the second storage area, in step S404, store the second data from the host system in the second storage area without going through the cache of the cache buffer district.
圖5是根據本發明的一實施例所繪示的儲存控制方法的流程圖。請參照圖5,在步驟S501中,偵測儲存裝置的快取緩衝區的可用容量。在步驟S502中,判斷快取緩衝區的可用容量是否大於第一門檻值。若快取緩衝區的可用容量大於第一門檻值,在步驟S503中,將寫入目標區決定為所述儲存裝置的第一儲存區。在步驟S504中,將來自主機系統的第一資料經由所述快取緩衝區的緩存後儲存至所述第一儲存區。FIG. 5 is a flow chart of a storage control method according to an embodiment of the invention. Please refer to FIG. 5 , in step S501 , the available capacity of the cache buffer of the storage device is detected. In step S502, it is determined whether the available capacity of the cache buffer is greater than a first threshold. If the available capacity of the cache buffer is larger than the first threshold, in step S503, the write target area is determined as the first storage area of the storage device. In step S504, the first data from the host system is stored in the first storage area after being cached in the cache buffer.
若快取緩衝區的可用容量不大於第一門檻值,在步驟S505中,判斷快取緩衝區的可用容量是否小於第二門檻值。若快取緩衝區的可用容量小於第二門檻值,在步驟S506中,將寫入目標區決定為所述儲存裝置的第二儲存區。在步驟S507中,不經由所述快取緩衝區的緩存而將來自所述主機系統的第二資料儲存至所述第二儲存區。此外,若於步驟S505中判定快取緩衝區的可用容量不小於第二門檻值,則可不調整當前設定的寫入目標區(即維持當前的寫入目標區之設定)。If the available capacity of the cache buffer is not greater than the first threshold, in step S505, it is determined whether the available capacity of the cache buffer is less than the second threshold. If the available capacity of the cache buffer is smaller than the second threshold, in step S506, the write target area is determined as the second storage area of the storage device. In step S507, the second data from the host system is stored in the second storage area without going through the cache of the cache buffer. In addition, if it is determined in step S505 that the available capacity of the cache buffer is not less than the second threshold value, then the currently set write target area may not be adjusted (that is, the current write target area setting is maintained).
然而,圖4與圖5中各步驟已詳細說明如上,在此便不再贅述。值得注意的是,圖4與圖5中各步驟可以實作為多個程式碼或是電路,本發明不加以限制。此外,圖4與圖5的方法可以搭配以上範例實施例使用,也可以單獨使用,本發明不加以限制。However, each step in FIG. 4 and FIG. 5 has been described in detail above, and will not be repeated here. It should be noted that each step in FIG. 4 and FIG. 5 can be implemented as a plurality of program codes or circuits, which is not limited by the present invention. In addition, the methods shown in FIG. 4 and FIG. 5 can be used together with the above exemplary embodiments, or can be used alone, which is not limited by the present invention.
綜上所述,儲存裝置中的寫入目標區可根據其快取緩衝區的使用狀態而動態地被決定為第一儲存區或第二儲存區。若寫入目標區被決定為第一儲存區,來自主機系統的第一資料可經由快取緩衝區的緩存後儲存至第一儲存區。然而,若寫入目標區被決定為第二儲存區,則來自所述主機系統的第二資料可不經由快取緩衝區的緩存而直接儲存至所述第二儲存區。藉此,可有效改善傳統上因固態硬碟(或快閃記憶體)的快取區被用盡而導致儲存裝置的資料儲存速度大幅下降的問題及/或提高儲存裝置的資料存取效率。To sum up, the write target area in the storage device can be dynamically determined as the first storage area or the second storage area according to the usage status of its cache buffer. If the write-in target area is determined as the first storage area, the first data from the host system can be stored in the first storage area after being cached in the cache buffer. However, if the write target area is determined to be the second storage area, the second data from the host system can be directly stored in the second storage area without going through the cache of the cache buffer. In this way, the traditional problem of greatly reducing the data storage speed of the storage device due to the exhaustion of the cache area of the solid-state hard disk (or flash memory) can be effectively improved and/or the data access efficiency of the storage device can be improved.
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。Although the present invention has been disclosed above with the embodiments, it is not intended to limit the present invention. Anyone with ordinary knowledge in the technical field may make some changes and modifications without departing from the spirit and scope of the present invention. The scope of protection of the present invention should be defined by the scope of the appended patent application.
10:儲存裝置
11:主機系統
101, 111:連接界面
112:處理器
10:儲存裝置
102:控制器
103, 104:儲存模組
1031:快取緩衝區
1032, 1041:儲存區
201, 301:資料
S401~S404, S501~S507:步驟
10: storage device
11:
圖1是根據本發明的一實施例所繪示的儲存系統的功能方塊圖。 圖2是根據本發明的一實施例所繪示的寫入目標區為第一儲存區的狀態下儲存資料之路徑的示意圖。 圖3是根據本發明的一實施例所繪示的寫入目標區為第二儲存區的狀態下儲存資料之路徑的示意圖。 圖4是根據本發明的一實施例所繪示的儲存控制方法的流程圖。 圖5是根據本發明的一實施例所繪示的儲存控制方法的流程圖。 FIG. 1 is a functional block diagram of a storage system according to an embodiment of the present invention. FIG. 2 is a schematic diagram of a path for storing data in a state where the writing target area is the first storage area according to an embodiment of the present invention. FIG. 3 is a schematic diagram of a path for storing data in a state where the writing target area is the second storage area according to an embodiment of the present invention. FIG. 4 is a flowchart of a storage control method according to an embodiment of the invention. FIG. 5 is a flow chart of a storage control method according to an embodiment of the invention.
S401~S404:步驟 S401~S404: steps
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109144211A TWI790512B (en) | 2020-12-15 | 2020-12-15 | Storage control method and storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109144211A TWI790512B (en) | 2020-12-15 | 2020-12-15 | Storage control method and storage system |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202225982A TW202225982A (en) | 2022-07-01 |
TWI790512B true TWI790512B (en) | 2023-01-21 |
Family
ID=83437042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109144211A TWI790512B (en) | 2020-12-15 | 2020-12-15 | Storage control method and storage system |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI790512B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140189236A1 (en) * | 2012-12-28 | 2014-07-03 | Huawei Technologies Co., Ltd. | Data storage method and storage device |
US20150205538A1 (en) * | 2014-01-17 | 2015-07-23 | Kabushiki Kaisha Toshiba | Storage apparatus and method for selecting storage area where data is written |
TW201533656A (en) * | 2014-02-27 | 2015-09-01 | Nat Univ Chung Cheng | Multi-threshold storage device and method thereof |
CN107710143A (en) * | 2015-09-30 | 2018-02-16 | 西部数据技术公司 | Areas of dielectric management for data storage device |
CN107977159A (en) * | 2016-10-21 | 2018-05-01 | 华为技术有限公司 | A kind of date storage method and device |
TW201935257A (en) * | 2016-09-19 | 2019-09-01 | 美商美光科技公司 | Memory devices and electronic systems having a hybrid cache with static and dynamic cells, and related methods |
-
2020
- 2020-12-15 TW TW109144211A patent/TWI790512B/en active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140189236A1 (en) * | 2012-12-28 | 2014-07-03 | Huawei Technologies Co., Ltd. | Data storage method and storage device |
US20150205538A1 (en) * | 2014-01-17 | 2015-07-23 | Kabushiki Kaisha Toshiba | Storage apparatus and method for selecting storage area where data is written |
TW201533656A (en) * | 2014-02-27 | 2015-09-01 | Nat Univ Chung Cheng | Multi-threshold storage device and method thereof |
CN107710143A (en) * | 2015-09-30 | 2018-02-16 | 西部数据技术公司 | Areas of dielectric management for data storage device |
TW201935257A (en) * | 2016-09-19 | 2019-09-01 | 美商美光科技公司 | Memory devices and electronic systems having a hybrid cache with static and dynamic cells, and related methods |
CN107977159A (en) * | 2016-10-21 | 2018-05-01 | 华为技术有限公司 | A kind of date storage method and device |
Also Published As
Publication number | Publication date |
---|---|
TW202225982A (en) | 2022-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11355197B2 (en) | Memory system with nonvolatile cache and control method thereof | |
US10379782B2 (en) | Host managed solid state drivecaching using dynamic write acceleration | |
KR101498673B1 (en) | Solid state drive, data storing method thereof, and computing system including the same | |
US20090323419A1 (en) | Read-time wear-leveling method in storage system using flash memory device | |
US20130013853A1 (en) | Command executing method, memory controller and memory storage apparatus | |
US12013762B2 (en) | Meta data protection against unexpected power loss in a memory system | |
TWI698749B (en) | A data storage device and a data processing method | |
TW201814489A (en) | Data storage method and data storage system | |
KR20090006920A (en) | Cache memory device and data processing method of the device | |
TWI802068B (en) | Memory performance optimization method, memory control circuit unit and memory storage device | |
TWI656531B (en) | Average wear method, memory control circuit unit and memory storage device | |
US10789003B1 (en) | Selective deduplication based on data storage device controller status and media characteristics | |
EP3772682A1 (en) | Method and apparatus to improve write bandwidth of a block-based multi-level cell non-volatile memory | |
TWI790512B (en) | Storage control method and storage system | |
TWI672593B (en) | Memory management method, memory storage device and memory control circuit unit | |
TWI790568B (en) | Work status control method for memory device and data storage system | |
US11861224B2 (en) | Data transfer management from host buffers | |
CN113094306B (en) | Effective data management method, memory storage device and memory controller | |
TWI768829B (en) | Parameter adjusting method for a memory device and a memory storage system | |
TW202125206A (en) | Memory management method and memory device | |
CN117632038B (en) | Wear leveling method, memory storage device and memory control circuit unit | |
TWI851329B (en) | Device control method, memory storage device and memory control circuit unit | |
US12147674B1 (en) | Memory control method, memory storage device and memory control circuit unit | |
KR102583244B1 (en) | Storage device and operating method of storage device | |
TWM652759U (en) | data storage device |