TW202011186A - 記憶體儲存裝置及其操作方法 - Google Patents
記憶體儲存裝置及其操作方法 Download PDFInfo
- Publication number
- TW202011186A TW202011186A TW107131159A TW107131159A TW202011186A TW 202011186 A TW202011186 A TW 202011186A TW 107131159 A TW107131159 A TW 107131159A TW 107131159 A TW107131159 A TW 107131159A TW 202011186 A TW202011186 A TW 202011186A
- Authority
- TW
- Taiwan
- Prior art keywords
- garbage collection
- program
- quota
- controller
- request
- Prior art date
Links
- 230000005055 memory storage Effects 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000010586 diagram Methods 0.000 description 8
- 230000007423 decrease Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
Images
Landscapes
- Memory System (AREA)
Abstract
記憶體儲存裝置的操作方法,該記憶體儲存裝置耦接至執行複數個程式的一主機,該記憶體儲存裝置包括一記憶體陣列以及一控制器。該操作方法包括:由該控制器接收由該主機所傳來的該些程式中的一第一程式的一第一請求與一第一程式辨別碼;以及該控制器根據該第一程式的該第一程式辨別碼所對應的一第一垃圾收集額度參數,以對該第一請求與一垃圾收集操作進行排序,該第一垃圾收集額度參數代表該第一程式的一第一垃圾收集等待時間。當該第一程式辨別碼所對應的該第一垃圾收集額度參數到達一臨界值時,該第一請求的排序優於該垃圾收集操作。當該第一程式辨別碼所對應的該第一垃圾收集額度參數未到達該臨界值時,該垃圾收集操作的排序優於該第一請求。
Description
本發明是有關於一種記憶體儲存裝置及其操作方法,且特別是有關於一種非揮發性記憶體儲存裝置及其操作方法。
主機(耦接至記憶體儲存裝置)可能執行一個到多個程式(process),該些程式有可能想要同時存取記憶體儲存裝置內的相同或不同晶片。所以,在排序該些程式的存取先後順序時,原則上應該考量每個程式在存取時的公平性(fairness)。亦即,儘量不要讓某一個程式佔去太多存取時間,或者是出現某一程式一直沒有機會存取的情況,這將使得公平性不足,降低系統性能。
故而,為考量到公平性與性能的問題,在以前,可利用排序器(scheduler),如果有某一程式佔太多資源,則該排序器可以先暫停(block)該程式的存取,並讓其他程式來存取記憶體。
然而,現有方法並未考量垃圾回收(Garbage Collection,縮寫為GC)。垃圾回收在電腦科學中是一種自動的記憶體管理機制。當一個電腦上的動態記憶體不再需要時,就應該予以釋放,以釋放出記憶體,這種記憶體資源管理,稱為垃圾回收。
例如,當有2個程式在存取記憶體時,如果有其中一個程式觸發了GC,則另一個程式需要等待GC完成才能繼續存取記憶體,這將使得系統效能降低。
故而,如何兼顧程式在存取記憶體時的公平性乃是目前業界努力方向之一。
根據本案一實施例,提出一種記憶體儲存裝置的操作方法,該記憶體儲存裝置耦接至執行複數個程式的一主機,該記憶體儲存裝置包括一記憶體陣列以及一控制器,該操作方法包括:由該控制器接收由該主機所傳來的該些程式中的一第一程式的一第一請求與一第一程式辨別碼;以及該控制器根據該第一程式的該第一程式辨別碼所對應的一第一垃圾收集額度參數,以對該第一請求與一垃圾收集操作進行排序,該第一垃圾收集額度參數代表該第一程式的一第一垃圾收集等待時間。當該第一程式辨別碼所對應的該第一垃圾收集額度參數到達一臨界值時,該第一請求的排序優於該垃圾收集操作。當該第一程式辨別碼所對應的該第一垃圾收集額度參數未到達該臨界值時,該垃圾收集操作的排序優於該第一請求。
根據本案另一實施例,提出一種記憶體儲存裝置,耦接至一主機,該主機執行複數個程式,該記憶體儲存裝置包括:一記憶體陣列;以及一控制器,耦接至該記憶體陣列與該主機,該控制器接收由該主機所傳來的該些程式中的一第一程式的一第一請求與一第一程式辨別碼,該控制器根據該第一程式的該第一程式辨別碼所對應的一第一垃圾收集額度參數,以對該第一請求與一垃圾收集操作進行排序,該第一垃圾收集額度參數代表該第一程式的一第一垃圾收集等待時間。當該第一程式辨別碼所對應的該第一垃圾收集額度參數到達一臨界值時,該第一請求的排序優於該垃圾收集操作。當該第一程式辨別碼所對應的該第一垃圾收集額度參數未到達該臨界值時,該垃圾收集操作的排序優於該第一請求。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
本說明書的技術用語係參照本技術領域之習慣用語,如本說明書對部分用語有加以說明或定義,該部分用語之解釋係以本說明書之說明或定義為準。本揭露之各個實施例分別具有一或多個技術特徵。在可能實施的前提下,本技術領域具有通常知識者可選擇性地實施任一實施例中部分或全部的技術特徵,或者選擇性地將這些實施例中部分或全部的技術特徵加以組合。
第1圖顯示根據本案一實施例的記憶體儲存裝置200的架構示意圖。如第1圖所示,記憶體儲存裝置200包括控制器210與記憶體陣列220。記憶體儲存裝置200耦接至主機100。
控制器210包括:主機介面邏輯(host interface logic,HIL)230與快閃轉譯層(flash translation layer,FTL)240。在一實例中,主機介面邏輯230與快閃轉譯層240乃是以韌體方式實施,但本案並不受限於此。
快閃轉譯層240包括:映射器(mapping unit)242、GC管理器(GC manager)244、公平GC排序器(fair GC scheduler)246與佇列(queue)248。
映射器242用以將主機100所傳來的邏輯位址(logical address)轉譯為實體位址(physical address)。
GC管理器244用以進行GC管理。至於在本案實施例中,GC管理器244進行GC操作的時間點則由公平GC排序器246來排序。
公平GC排序器246用於將程式請求與GC的操作順序進行排序,其細節將於底下說明之。
佇列248用以儲存公平GC排序器246所排序的請求與GC的操作順序,以讓記憶體陣列220依照所排定的操作順序來執行請求或GC。
記憶體陣列220包括排列成陣列形式的複數個記憶體晶胞、複數個字元線與複數個位元線。該些記憶體晶胞舉例但不受限於,是快閃記憶體晶胞或其他的非揮發性記憶體晶胞,如相變化記憶體(Phase Change Random Access Memory, PCRAM),可變電阻式記憶體(Resistive random-access memory,縮寫為RRAM 或ReRAM),嵌入式多媒體卡(Embedded Multi-Media Card,eMMC),固態硬碟(Solid-state drive或Solid-state disk,簡稱SSD)等。
在主機100的作業系統上有一或多個程式P1-PN(N為正整數)在執行。另外,主機100更包括輸出入排序器(I/O scheduler)110,其根據所接收到的該些程式P1-PN的請求,將請求(Req)與程式辨別碼(PID)送至記憶體儲存裝置200,該程式辨別碼(PID)可用於辨別該請求是由哪一個程式所發出,亦即不同的程式分配到不同的程式辨別碼。輸出入排序器110可偵測該些程式P1-PN的資源消耗,並重新分配資源給該些程式P1-PN。輸出入排序器110的細節在此可不特別限定之。
現請參考第2圖,其顯示根據本案一實施例的公平GC排序器246的操作示意圖。如第2圖所示,假設由輸出入排序器110所排定的執行順序由高至低分別是:GC、PID=1的請求(亦即,來自程式P1的請求)、PID=2的請求(亦即,來自程式P2的請求)、PID=3的第1個請求(亦即,來自程式P3的請求)與PID=3的第2個請求(亦即,來自程式P3的請求),其中,1代表優先執行,5代表最後執行。不過,經過檢查各程式所對應的GC額度(GC quota)後(程式P1與程式P2的GC額度未到達臨界值(例如GC額度不為0),而程式P3的GC額度到達臨界值(例如GC額度為0)),公平GC排序器246將執行順序重新排序為:PID=3的第1個請求(亦即,來自程式P3的請求)、PID=3的第2個請求(亦即,來自程式P3的請求)、GC、PID=1的請求(亦即,來自程式P1的請求)、PID=2的請求(亦即,來自程式P2的請求)。其中,以GC額度而言,如果某一程式的GC額度到達臨界值(例如但不受限於,GC額度=0)代表該程式所發出的請求有高優先執行順序(比GC的執行順序高);反之,如果某一程式的GC額度未到達臨界值(例如但不受限於,GC額度不等0),代表該程式所發出的請求不具有高優先執行順序(比GC的執行順序低)。GC額度的細節將於後面說明之。經由公平GC排序器246所排定後的執行順序會暫存至佇列248中,之後,便依公平GC排序器246所排定後的執行順序來對記憶體陣列220進行存取或GC。
現將進一步說明本案一實施例中,如何決定GC與請求的執行順序。請參照第3圖,其顯示根據本案一實施例的操作示意圖。橫軸是時間軸,最左方代表T=0。假設在時間點TGC-start
時,公平GC排序器246排定開始執行GC。之後,於時間點TR-arrival
時,有一程式的請求1到達,而該程式所對應的GC額度尚未到達該臨界值(假設GC額度目前為5),故而,GC可以繼續執行。由於目前正在執行GC,故而,程式的請求1必須等待。程式的請求1每等待1個時間單位,其GC額度便減少1個固定值(例如1)(亦即GC額度被公平GC排序器246更新)。所以,當程式的請求1等待了5個時間單位後(GC等待時間為5個時間單位),其GC額度從5減少為0,所以,在此時,公平GC排序器246將GC的執行暫停(如時間點TGC-suspend
所示),因為公平GC排序器246必須讓該程式的請求1執行。等到該程式的請求1執行完畢後,公平GC排序器246將GC的執行恢復(如時間點TGC-resume
所示),直到GC執行結束為止(如時間點TGC-complete
所示)。
也就是說,在本案實施例中,程式的GC額度代表該程式的GC等待時間。每等待一個時間單位,程式的GC額度便減少1(或減少1個固定值),直到該程式的GC額度到達臨界值為止(亦即,在此例中,程式的GC額度逐漸減少)。一旦當該程式的GC額度到達臨界值,則公平GC排序器246會對GC額度到達臨界值的該程式給予高優先執行順序,且將目前正在執行GC暫停(即便目前正在執行GC尚未執行完畢),如果一來,GC額度到達臨界值的該程式就可以被允許存取記憶體。
當然,在本案其他可能實施例中,也可以每等待一個時間單位,程式的GC額度便增加1(或增加1個固定值),直到該程式的GC額度到達臨界值為止(亦即,在此例中,程式的GC額度逐漸增加)。一旦當該程式的GC額度達到臨界值,則公平GC排序器246會對GC額度到達臨界值的該程式給予高優先執行順序,且將目前正在執行GC暫停(即便目前正在執行GC尚未執行完畢),如果一來,GC額度到達臨界值的該程式就可以被允許存取記憶體。
請參照第4圖,其顯示根據本案一實施例的另一種操作示意圖,橫軸是時間軸,最左方代表T=0。假設在時間點T1時,公平GC排序器246接收到2個請求(請求1與請求2)與GC執行請求,請求1與請求2分別對應到程式1與程式2,其中,在T1時,程式1的GC額度GC-Q1=0(到達臨界值),而程式2的GC額度GC-Q2=X(X不等於0)。
由於程式1的GC額度GC-Q1=0,故而,公平GC排序器246讓程式1的請求1優先執行。於時間T2時,程式1的請求1執行完畢,故而,接著換GC執行。
於時間T3時,GC已執行X個時間單位,而此時的程式2的GC額度GC-Q2已從X更新為0(GC-Q2=0)。故而,在時間T3時,公平GC排序器246暫停GC的執行,並優先執行請求2。於時間T4時,請求2執行完畢,此時,公平GC排序器246恢復GC的執行,直到時間T5時,GC執行完畢。
也就是說,在本案實施例中,公平GC排序器246會定期檢查各程式所對應的GC額度,如果有某一程式的GC額度到達臨界值,則公平GC排序器246優先排定該程式可以存取記憶體(亦即該程式的請求可以被執行)。如此一來,可以避免某一程式等待GC的時間太久進而影響效能。
現將說明公平GC排序器246如何更新與重置GC額度。如上述般,每當GC執行1個時間單位,則所有的程式的GC額度皆被更新1次,直到到達臨界值為止。
在本案一實施例中,設置一GC額度時期(GC quota epoch),其有關於GC額度的重置。當GC額度時期結束時,所有程式的GC額度都會被重置(例如,重置為10)。至於如何決定GC額度時期的結束則有2個原則。第1個原則是,如果所有程式的GC額度都到達臨界值,則可視為是GC額度時期的結束。第2個原則是,額外設定一預期時期(anticipation period)。於重置所有程式的所有GC額度之後,當有最早到達臨界值的GC額度出現時,設定該預期時期(例如但不受限於,為20秒),並開始計時。如果在其餘的GC額度當中,有任一GC額度到達臨界值,則重置該預期時期(亦即讓預期時期重新回到初始值,例如20秒);反之,則讓該預期時期繼續計時。如果該預期時期能計時直到結束,則將所有的GC額度重置。也就是,在某一個程式的GC額度到達臨界值之後,如果在預期時期的計時時間內(亦即20秒),都沒有任何一個其他程式的GC額度到達臨界值,則在預期時期結束後,將所有的GC額度重置。第2個原則是為了避免,如果有某一(或某些)程式的GC額度一直沒有到達臨界值的話,代表在這段時間內,該(或該些)程式並未被GC執行而延誤其記憶體存取。所以,可以將所有的GC額度重置。
也就是說,在本案一實施例中,GC被觸發時,當有任一程式的GC額度到達臨界值時,公平GC排序器246對GC額度到達臨界值的該(或該些)程式的請求優先執行。相反地,如果GC被觸發時,所有程式的GC額度都沒有到達臨界值的話,公平GC排序器246將優先執行GC。
第5圖顯示根據本案一實施例的記憶體儲存裝置的操作方法。如第5圖所示,在步驟510中,控制器接收由主機所傳來的第一程式的第一請求與第一程式辨別碼。在步驟520中,控制器根據第一程式辨別碼所對應的第一垃圾收集額度參數,以對第一請求與垃圾收集操作進行排序。
綜上所述,在本案實施例中,透過透入GC額度,可以避免原本分配給程式的資源因為執行GC而浪費。如此,可以避免程式一直被GC的執行延誤了程式對記憶體的存取,所以,可以藉由本案實施例來避免性能下降,又能兼顧到公平性。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
200:記憶體儲存裝置210:控制器220:記憶體陣列230:主機介面邏輯240:快閃轉譯層242:映射器244:GC管理器246:公平GC排序器248:佇列100:主機P1-PN:程式110:輸出入排序器Req:請求PID:程式辨別碼TGC-start、TR-arrival、TGC-suspend、TGC-resume、TGC-complete:時間點T1-T5:時間點510、520:步驟
第1圖顯示根據本案一實施例的記憶體儲存裝置的架構示意圖。 第2圖顯示根據本案一實施例的公平GC排序器的操作示意圖。 第3圖顯示根據本案一實施例的操作示意圖。 第4圖,其顯示根據本案一實施例的另一種操作示意圖。 第5圖顯示根據本案一實施例的記憶體儲存裝置的操作方法。
510-520:步驟
Claims (10)
- 一種記憶體儲存裝置的操作方法,該記憶體儲存裝置耦接至執行複數個程式的一主機,該記憶體儲存裝置包括一記憶體陣列以及一控制器,該操作方法包括: 由該控制器接收由該主機所傳來的該些程式中的一第一程式的一第一請求與一第一程式辨別碼;以及 該控制器根據該第一程式的該第一程式辨別碼所對應的一第一垃圾收集額度參數,以對該第一請求與一垃圾收集操作進行排序,該第一垃圾收集額度參數代表該第一程式的一第一垃圾收集等待時間, 其中,當該第一程式辨別碼所對應的該第一垃圾收集額度參數到達一臨界值時,該第一請求的排序優於該垃圾收集操作;以及 當該第一程式辨別碼所對應的該第一垃圾收集額度參數未到達該臨界值時,該垃圾收集操作的排序優於該第一請求。
- 如申請專利範圍第1項所述之記憶體儲存裝置的操作方法,其中, 如果於該垃圾收集操作執行期間,該第一程式的該第一請求到達該控制器,而該第一程式辨別碼所對應的該第一垃圾收集額度參數尚未到達該臨界值,該控制器讓該垃圾收集操作繼續執行且讓該第一程式的該第一請求處於等待; 於該第一程式的該第一請求等待時,該控制器更新該第一垃圾收集額度參數; 如果該第一垃圾收集額度參數到達該臨界值時,該垃圾收集操作尚未執行完畢,則該控制器暫停該垃圾收集操作並執行該第一程式的該第一請求;以及 當該第一程式的該第一請求執行完畢後,該控制器恢復執行該垃圾收集操作。
- 如申請專利範圍第1項所述之記憶體儲存裝置的操作方法,其中,如果於一第一時間點,該控制器接收到該些程式的一第二程式的一第二請求、一第三程式的一第三請求與該垃圾收集操作,該第二程式的一第二程式辨別碼所對應的一第二垃圾收集額度參數已到達該臨界值,且該第三程式的一第三程式辨別碼所對應的一第三垃圾收集額度參數尚未到達該臨界值,則該控制器排序為:該第二請求、該垃圾收集操作與該第三請求。
- 如申請專利範圍第1項所述之記憶體儲存裝置的操作方法,其中, 每當該垃圾收集操作執行一個時間單位,該控制器更新該些程式所對應的複數個垃圾收集額度參數,直到到達該臨界值為止;以及 如果該些程式之一程式的一垃圾收集額度參數已到達該臨界值,則該控制器讓該些程式之該程式的該垃圾收集額度參數繼續保持為該臨界值,直到該些程式之該程式的該垃圾收集額度參數被重置為止。
- 如申請專利範圍第1項所述之記憶體儲存裝置的操作方法,其中, 該控制器設置一垃圾收集額度參數時期; 當該垃圾收集額度參數時期結束時,該控制器重置該些程式所對應的複數個垃圾收集額度參數; 如果該些程式所對應的該些垃圾收集額度參數都到達該臨界值,則該控制器讓該垃圾收集額度參數時期結束且該控制器重置該些程式所對應的該些垃圾收集額度參數; 於該控制器重置該些程式所對應的該些垃圾收集額度參數之後,當該些垃圾收集額度參數之一最早到達該臨界值時,該控制器更設定一預期時期,並開始計時; 如果在其餘的該些垃圾收集額度參數之中,有任一垃圾收集額度參數到達該臨界值,則該控制器重置該預期時期,反之,則該控制器讓該預期時期繼續計時;以及 如果該預期時期計時直到結束,則該控制器將所有的該些垃圾收集額度參數重置。
- 一種記憶體儲存裝置,耦接至一主機,該主機執行複數個程式,該記憶體儲存裝置包括: 一記憶體陣列;以及 一控制器,耦接至該記憶體陣列與該主機,該控制器接收由該主機所傳來的該些程式中的一第一程式的一第一請求與一第一程式辨別碼,該控制器根據該第一程式的該第一程式辨別碼所對應的一第一垃圾收集額度參數,以對該第一請求與一垃圾收集操作進行排序,該第一垃圾收集額度參數代表該第一程式的一第一垃圾收集等待時間, 其中,當該第一程式辨別碼所對應的該第一垃圾收集額度參數到達一臨界值時,該第一請求的排序優於該垃圾收集操作;以及 當該第一程式辨別碼所對應的該第一垃圾收集額度參數未到達該臨界值時,該垃圾收集操作的排序優於該第一請求。
- 如申請專利範圍第6項所述之記憶體儲存裝置,其中, 如果於該垃圾收集操作執行期間,該第一程式的該第一請求到達該控制器,而該第一程式辨別碼所對應的該第一垃圾收集額度參數尚未到達該臨界值,該垃圾收集操作繼續執行且該第一程式的該第一請求處於等待; 於該第一程式的該第一請求等待時,該控制器更新該第一垃圾收集額度參數; 如果該第一垃圾收集額度參數到達該臨界值時,該垃圾收集操作尚未執行完畢,則該控制器暫停該垃圾收集操作並執行該第一程式的該第一請求;以及 當該第一程式的該第一請求執行完畢後,該控制器恢復執行該垃圾收集操作。
- 如申請專利範圍第6項所述之記憶體儲存裝置,其中,如果於一第一時間點,該控制器接收到該些程式的一第二程式的一第二請求、一第三程式的一第三請求與該垃圾收集操作,該第二程式的一第二程式辨別碼所對應的一第二垃圾收集額度參數已到達該臨界值,且該第三程式的一第三程式辨別碼所對應的一第三垃圾收集額度參數尚未到達該臨界值,則該控制器排序為:該第二請求、該垃圾收集操作與該第三請求。
- 如申請專利範圍第6項所述之記憶體儲存裝置,其中, 每當該垃圾收集操作執行一個時間單位,該控制器更新該些程式所對應的複數個垃圾收集額度參數,直到到達該臨界值為止;以及 如果該些程式之一程式的一垃圾收集額度參數已到達該臨界值,則該些程式之該程式的該垃圾收集額度參數繼續保持為該臨界值,直到該些程式之該程式的該垃圾收集額度參數被重置為止。
- 如申請專利範圍第6項所述之記憶體儲存裝置,其中, 該控制器設置一垃圾收集額度參數時期; 當該垃圾收集額度參數時期結束時,該控制器重置該些程式所對應的複數個垃圾收集額度參數; 如果該些程式所對應的該些垃圾收集額度參數都到達該臨界值,則該垃圾收集額度參數時期結束且該控制器重置該些程式所對應的該些垃圾收集額度參數; 於該控制器重置該些程式所對應的該些垃圾收集額度參數之後,當該些垃圾收集額度參數之一最早到達該臨界值時,該控制器更設定一預期時期,並開始計時; 如果在其餘的該些垃圾收集額度參數之中,有任一垃圾收集額度參數到達該臨界值,則該控制器重置該預期時期,反之,則該控制器讓該預期時期繼續計時;以及 如果該預期時期計時直到結束,則該控制器將所有的該些垃圾收集額度參數重置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW107131159A TWI696115B (zh) | 2018-09-05 | 2018-09-05 | 記憶體儲存裝置及其操作方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW107131159A TWI696115B (zh) | 2018-09-05 | 2018-09-05 | 記憶體儲存裝置及其操作方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202011186A true TW202011186A (zh) | 2020-03-16 |
| TWI696115B TWI696115B (zh) | 2020-06-11 |
Family
ID=70766774
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW107131159A TWI696115B (zh) | 2018-09-05 | 2018-09-05 | 記憶體儲存裝置及其操作方法 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI696115B (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114968830A (zh) * | 2021-02-18 | 2022-08-30 | 慧荣科技股份有限公司 | 垃圾回收操作的管理机制 |
| US12153820B2 (en) | 2021-03-19 | 2024-11-26 | Silicon Motion, Inc. | Method of performing wear-leveling operation in flash memory and related controller and storage system |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020073103A1 (en) * | 2000-08-25 | 2002-06-13 | Bottomley Thomas Mark Walter | Memory garbage collection method and apparatus |
| US20090006720A1 (en) * | 2007-06-27 | 2009-01-01 | Shai Traister | Scheduling phased garbage collection and house keeping operations in a flash memory system |
| US8205203B2 (en) * | 2008-10-16 | 2012-06-19 | International Business Machines Corporation | Scheduling for real-time garbage collection |
| US20100287217A1 (en) * | 2009-04-08 | 2010-11-11 | Google Inc. | Host control of background garbage collection in a data storage device |
| US10430332B2 (en) * | 2013-03-25 | 2019-10-01 | Salesforce.Com, Inc. | System and method for performance tuning of garbage collection algorithms |
| US9032410B1 (en) * | 2014-08-19 | 2015-05-12 | Xamarin Inc. | Non-precise garbage collection in non-cooperative systems |
-
2018
- 2018-09-05 TW TW107131159A patent/TWI696115B/zh active
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114968830A (zh) * | 2021-02-18 | 2022-08-30 | 慧荣科技股份有限公司 | 垃圾回收操作的管理机制 |
| CN114968834A (zh) * | 2021-02-18 | 2022-08-30 | 慧荣科技股份有限公司 | 垃圾回收操作的管理机制 |
| US11494299B2 (en) | 2021-02-18 | 2022-11-08 | Silicon Motion, Inc. | Garbage collection operation management with early garbage collection starting point |
| TWI784514B (zh) * | 2021-02-18 | 2022-11-21 | 慧榮科技股份有限公司 | 垃圾回收操作的管理機制 |
| US11681615B2 (en) | 2021-02-18 | 2023-06-20 | Silicon Motion, Inc. | Garbage collection operation management based on overall valid page percentage of source block and candidate source block |
| US11704241B2 (en) | 2021-02-18 | 2023-07-18 | Silicon Motion, Inc. | Garbage collection operation management with early garbage collection starting point |
| US11809312B2 (en) | 2021-02-18 | 2023-11-07 | Silicon Motion, Inc. | Garbage collection operation management based on overall spare area |
| CN114968830B (zh) * | 2021-02-18 | 2025-08-26 | 慧荣科技股份有限公司 | 垃圾回收操作的管理机制 |
| US12153820B2 (en) | 2021-03-19 | 2024-11-26 | Silicon Motion, Inc. | Method of performing wear-leveling operation in flash memory and related controller and storage system |
Also Published As
| Publication number | Publication date |
|---|---|
| TWI696115B (zh) | 2020-06-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN104090847B (zh) | 一种固态存储设备的地址分配方法 | |
| CN102667724B (zh) | 用于动态管理加速器资源的方法和系统 | |
| US20190050255A1 (en) | Devices, systems, and methods for lockless distributed object input/output | |
| CN103336669B (zh) | 一种基于固态盘内部并行性的i/o调度方法及调度器 | |
| CN111580749B (zh) | 存储节点、混合存储器控制器及控制混合存储器组的方法 | |
| WO2024119764A1 (zh) | 一种任务调度方法、装置及电子设备和存储介质 | |
| WO2018103685A1 (zh) | 一种nand闪存设备的操作指令调度方法及装置 | |
| CN105339897A (zh) | 高效的优先级感知线程调度 | |
| US20130173843A1 (en) | Write bandwidth management for flash devices | |
| US10019283B2 (en) | Predicting a context portion to move between a context buffer and registers based on context portions previously used by at least one other thread | |
| US10042773B2 (en) | Advance cache allocator | |
| CN107870866B (zh) | Io命令调度方法与nvm接口控制器 | |
| US12197784B2 (en) | Storage device supporting multi-host and operation method thereof | |
| WO2024193096A1 (zh) | 数据迁移方法及计算设备 | |
| CN106537321B (zh) | 存取文件的方法、装置和存储系统 | |
| TWI696115B (zh) | 記憶體儲存裝置及其操作方法 | |
| US12321637B2 (en) | Data storage device for guaranteeing that system resources meet performance requirements, method of operating the same, and memory controller for the same | |
| CN110908790B (zh) | 存储器存储装置及其操作方法 | |
| US20170192720A1 (en) | Prioritization of order ids in dram scheduling | |
| CN118349339A (zh) | 数据处理方法、装置、处理器、电子设备以及存储介质 | |
| EP3696674A1 (en) | Triggered operations for collective communication | |
| KR102858676B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
| CN112199044A (zh) | 面向多租户的ftl设置方法、系统、计算机程序及存储介质 | |
| US20240272827A1 (en) | Storage system supporting multiple queues | |
| US12141439B2 (en) | Memory command assignment based on command processor workload |