TWI428917B - 快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 - Google Patents
快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 Download PDFInfo
- Publication number
- TWI428917B TWI428917B TW098140070A TW98140070A TWI428917B TW I428917 B TWI428917 B TW I428917B TW 098140070 A TW098140070 A TW 098140070A TW 98140070 A TW98140070 A TW 98140070A TW I428917 B TWI428917 B TW I428917B
- Authority
- TW
- Taiwan
- Prior art keywords
- flash memory
- data
- logical block
- memory device
- block size
- Prior art date
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
Description
本發明係有關於快閃記憶體,特別是有關於快閃記憶體之資料儲存方法及裝置。
快閃記憶體包括多個區塊(block),每一區塊包括多個頁(page),用以儲存資料。快閃記憶體係以頁為單位進行資料寫入,而以區塊為單位進行資料抹除。亦即,當快閃記憶體接收資料時,可以個別地將資料寫入快閃記憶體之各頁中。當快閃記憶體之多個頁被寫入資料後,必須先經資料抹除,該等頁才能再度被寫入資料。然而,當快閃記憶體欲抹除資料時,必須將包含多個頁的整個區塊中所儲存的資料一併抹除。因此,唯有欲拋棄一區塊的所有頁中所儲存資料時,快閃記憶體才會對該區塊進行資料抹除。
基於上述原因,快閃記憶體之控制器對快閃記憶體進行資料抹的頻率較低。為了節省快閃記憶體的記憶空間,快閃記憶體之控制器必須在將資料寫入快閃記憶體時盡量地將資料填滿快閃記憶體的一頁。當控制器將資料寫入快閃記憶體之一特定頁時,若資料量不足填滿該特定頁,則控制器通常會先以一緩衝器儲存資料。等到緩衝器中儲存的資料已達到一頁的資料量時,控制器才會將緩衝器中儲存的資料寫入該特定頁。控制器係依據一主機的指示將資料寫入快閃記憶體。由於主機向控制器傳送的寫入資料並不一定剛好為一頁的資料量的倍數,因此控制器必須時常進行資料緩衝的動作,從而增加控制器的工作負擔,並造成寫入動作的延遲。
第1圖為將資料寫入一快閃記憶體之習知方法100的流程圖。首先,主機向快閃記憶裝置傳送資料,以供寫入快閃記憶裝置之一快閃記憶體(步驟102)。接著,快閃記憶裝置自主機接收資料(步驟104)。接著,快閃記憶裝置之一控制器是否資料的長度為快閃記憶體之一頁資料量的倍數(步驟106)。若資料的長度為快閃記憶體之一頁資料量的倍數,控制器可直接將資料寫入快閃記憶體的多個頁(步驟118)。若資料的長度不為快閃記憶體之一頁資料量的倍數,則控制器以一緩衝器儲存未滿一頁資料量之最後資料(步驟108),並將資料中除了最後資料以外的其他資料寫入快閃記憶體的多個頁(步驟110)。接著,快閃記憶裝置自主機接收後續資料至緩衝器中(步驟112),直到緩衝器儲存之資料已達一頁資料量為止(步驟114)。此時,控制器可再將緩衝器中所儲存之資料寫入快閃記憶體之一頁(步驟116)。
如第1圖中的步驟108~116所示,由於主機一般並不會剛好傳送資料量為一頁資料量之倍數的資料至快閃記憶裝置,因此每當主機指示快閃記憶裝置進行資料寫入時,快閃記憶裝置之控制器必須以緩衝器反覆對未滿一頁資料量的資料最後部份進行儲存,直到資料滿一頁資料量才可再次進行快閃記憶體之寫入。相較於主機發送的資料長度剛好為快閃記憶體之一頁資料量的倍數之情形,快閃記憶裝置之控制器需多進行108、112、114、116的步驟,增加控制器的工作負擔,並造成寫入動作的延遲。因此,需要一種資料儲存系統之運作方法,可以減輕控制器的工作負擔,加速寫入動作的完成,以提升快閃記憶裝置之效能。
有鑑於此,本發明之目的在於提供一種快閃記憶裝置,以解決習知技術存在之問題。於一實施例中,該快閃記憶裝置耦接至一主機,包括一快閃記憶體以及一控制器。該快閃記憶體包括多個寫入單元以供儲存資料,其中每一該等寫入單元之資料容量為一寫入單元大小。當該快閃記憶裝置自該主機接收到一讀取容量(read capacity)命令時,該控制器決定一邏輯區塊大小為該快閃記憶體之該寫入單元大小之一特定倍數,並依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料,其中該特定倍數為大於或等於一的正整數。其中當該主機收到該讀取容量命令之回應資料後,該主機由該回應資料取得該邏輯區塊大小,並僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之倍數的寫入資料。
本發明提供一種資料儲存系統。於一實施例中,該資料儲存系統包括一快閃記憶裝置以及一主機。該快閃記憶裝置具有一快閃記憶體以供儲存資料。該快閃記憶體包括多個寫入單元以供儲存資料,每一該等寫入單元之資料容量為該寫入單元大小。當該快閃記憶裝置自該主機接收到一讀取容量(read capacity)命令時,該快閃記憶裝置決定一邏輯區塊大小為該快閃記憶體之一寫入單元大小之一特定倍數,並依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料,其中該特定倍數為大於或等於一的正整數。該主機向該快閃記憶裝置發送該讀取容量命令,當該主機自該快閃記憶裝置收到該讀取容量命令之回應資料後,該主機由該回應資料取得該邏輯區塊大小,並僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之倍數的寫入資料。
本發明更提供一種資料儲存系統之運作方法。於一實施例中,該資料儲存系統包括一主機及一快閃記憶裝置,該快閃記憶裝置具有一快閃記憶體包括多個寫入單元以供儲存資料,每一該等寫入單元之資料容量為一寫入單元大小。首先,由該主機向該快閃記憶裝置發送一讀取容量(read capacity)命令。接著,當該快閃記憶裝置自該主機接收到一讀取容量命令時,該快閃記憶裝置決定一邏輯區塊大小為該快閃記憶體之該寫入單元大小之一特定倍數,其中該特定倍數為大於或等於一的正整數。接著,該快閃記憶裝置依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料。接著,該主機由該回應資料取得該邏輯區塊大小。最後,該主機僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之倍數的寫入資料。
為了讓本發明之上述和其他目的、特徵、和優點能更明顯易懂,下文特舉數較佳實施例,並配合所附圖示,作詳細說明如下:
第2圖為依據本發明之資料儲存系統200的區塊圖。資料儲存系統200包括主機202及快閃記憶裝置204。快閃記憶裝置204為主機202儲存進行資料儲存。於一實施例中,快閃記憶裝置204包括控制器212以及快閃記憶體214。快閃記憶體214包括多個寫入單元供儲存資料,其中每一寫入單元之資料容量為一寫入單元大小。於一實施例中,快閃記憶體214以寫入單元為單位進行資料寫入,且該等寫入單位一但被寫入資料後於未經資料抹除前無法被再度寫入資料。例如,寫入單元可為快閃記億體214之頁(page)。控制器212則依據主機202所發出的命令為主機202存取快閃記憶體214所儲存之資料。
於一實施例中,快閃記憶裝置204與主機202間溝通的介面為一通用序列匯流排(Universal Serial Bus,USB)介面,且控制器212及主機202皆支持小型計算機系統介面(Small computer system interface,SCSI)通信協議。小型計算機系統介面通信協議中包含一讀取容量(read capacity)命令,該讀取容量命令之命令代碼為0x25。當快閃記憶裝置204剛耦接至主機202時,主機202會向快閃記憶裝置204發送讀取容量命令,向快閃記憶裝置204詢問其可儲存的資料容量。第3A圖顯示讀取容量命令的格式。
當快閃記憶裝置204之控制器212自主機接收到讀取容量命令時,控制器212會先偵測快閃記憶體214之資料容量,再依據快閃記憶體214之資料容量向主機202發送讀取容量命令之一回應資料。第3B圖顯示讀取容量命令之回應資料的格式。讀取容量命令之回應資料包括兩段4位元組之資料,分別為邏輯區塊數目及邏輯區塊大小。邏輯區塊大小表示快閃記憶體214用以計算其容量大小的單位,係以一數值表示每個邏輯區塊包含多少個位元組。一實施例中,控制器212會以4個區段(sector)的大小之2048位元組對主機202進行回應。另一實施例中,控制器212會以8個區段(sector)的大小之4096位元組對主機202進行回應。邏輯區塊數目之數值表示快閃記憶體214總共包含多少個邏輯區塊。當主機202自快閃記憶裝置204收到讀取容量命令之回應資料後,便可依據邏輯區塊數目及邏輯區塊大小相乘所得之積了解快閃記憶裝置的資料容量為多少個位元組。
由於當快閃記憶裝置204自主機202收到讀取容量命令後,快閃記憶裝置204向主機202發送的回應資料包含邏輯區塊數目及邏輯區塊大小,因此快閃記憶裝置204可藉回應資料的邏輯區塊大小之值向主機202要求僅能傳送資料長度為邏輯區塊大小之倍數的資料。若主機202依據快閃記憶裝置204之要求僅向快閃記憶裝置204發送資料長度為邏輯區塊大小之倍數的寫入資料,則快閃記憶裝置204之控制器212可直接將自主機202所接收之資料寫入快閃記憶體214的多個寫入單元,而不需如第1圖的習知技術般反覆進行步驟108~116的資料緩衝。因此,控制器212的工作負擔可被顯著減輕,而快閃記憶裝置204的資料寫入動作可被加速,從而增進快閃記憶裝置204的效能。
第4圖為依據本發明之主機202與快閃記憶裝置204間傳送讀取容量命令與回應資料之方法400的流程圖。首先,快閃記憶裝置204耦接至主機202(步驟402)。接著,主機202向快閃記憶裝置204發送一讀取容量命令(步驟404)。接著,快閃記憶裝置204之控制器212檢查並取得快閃記憶體214之總資料容量及寫入單元大小(步驟406)。於一實施例中,該寫入單元大小之值為快閃記憶體214之一頁的資料量包含2048位元組。接著,控制器212決定一邏輯區塊大小之值為寫入單元大小之一特定倍數,其中該特定倍數為大於或等於一的正整數(步驟408)。
接著,控制器212將快閃記憶體214之總資料容量除以邏輯區塊大小以得到一邏輯區塊數目(步驟410)。接著,控制器212依據步驟408及410所決定的邏輯區塊數目及邏輯區塊大小值向主機202發送讀取容量命令之回應資料(步驟412)。亦即,控制器212藉讀取容量命令之回應資料要求主機202僅能向快閃記憶裝置204傳送資料長度為邏輯區塊大小之倍數的寫入資料。當主機202向快閃記憶裝置204所傳送的寫入資料之長度皆為邏輯區塊大小之倍數時,由於邏輯區塊大小為寫入單元大小之倍數,主機202向快閃記憶裝置204所傳送的寫入資料之長度亦為寫入單元大小之倍數,因此快閃記憶裝置204的控制器212不需如習知技術般進行額外的資料緩衝動作即可直接將寫入資料儲存入快閃記憶體214的多個寫入單元。
於一實施例中,快閃記憶體214的寫入單元為快閃記憶體214之頁(page)。控制器212可能因快閃記憶體214的種類而決定不同的邏輯區塊大小值。例如,當快閃記憶體214為一單層單元(single level cell,SLC)快閃記憶體時,控制器212決定邏輯區塊大小為快閃記憶體214之一頁的資料容量。當快閃記憶體214為一多層單元(multi level cell,MLC)快閃記憶體時,由於多層單元快閃記憶體的一記憶單元可儲存兩位元,控制器212決定邏輯區塊大小為快閃記憶體214之兩頁的資料容量,以便一次將快閃記憶體214之一記憶單元寫入兩位元資料。當快閃記憶體214為一三層單元(triple level cell,TLC)快閃記憶體時,由於三層單元快閃記憶體的一記憶單元可儲存三位元,控制器212決定邏輯區塊大小為快閃記憶體214之三頁的資料容量,以便一次將快閃記憶體214之一記憶單元寫入三位元資料。
第5圖為依據本發明之主機202將資料寫入快閃記憶裝置204之方法500的流程圖。首先,主機202自快閃記憶裝置204接收讀取命令之回應資料,以取得快閃記憶體之邏輯區塊大小(步驟502)。接著,若主機202欲傳送資料至快閃記憶裝置204以供寫入快閃記憶體214時(步驟504),主機202檢查是否資料之長度為邏輯區塊大小的倍數(步驟506)。若資料長度為邏輯區塊大小的倍數(步驟506),則主機202可直接向快閃記憶裝置204傳送資料(步驟510)。若資料長度不為邏輯區塊大小的倍數(步驟506),則主機202必須將資料補足至邏輯區塊大小的倍數為止(步驟508),再向快閃記憶裝置204傳送資料(步驟510)。
於一實施例中,當資料之長度不為邏輯區塊大小之倍數時(步驟506),主機202於該資料之尾端補零,以使資料之長度為邏輯區塊大小之倍數(步驟508)。因此,主機202向快閃記憶裝置204所傳送的資料的長度永遠為邏輯區塊大小之倍數。接著,快閃記憶裝置204自主機202接收資料(步驟511),而快閃記憶體214之控制器212將資料直接寫入快閃記憶體214的多個寫入單元(步驟512)。亦即,由於資料之長度為寫入單元大小的倍數,控制器212可直接將資料分割為資料量為寫入單元大小的多個寫入單元資料,並將該等寫入單元資料分別寫入快閃記憶體214的多個寫入單元。因此,快閃記憶裝置204的控制器212不需如習知技術般進行額外的資料緩衝動作即可直接將寫入資料儲存入快閃記憶體214的多個寫入單元,從而加速資料寫入動作,並增進快閃記憶裝置204的效能。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此項技術者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
200...資料儲存系統
202...主機
204...快閃記憶裝置
212...控制器
214...快閃記憶體
第1圖為將資料寫入一快閃記憶體之習知方法的流程圖;
第2圖為依據本發明之資料儲存系統的區塊圖;
第3A圖顯示讀取容量命令的格式;
第3B圖顯示讀取容量命令之回應資料的格式;
第4圖為依據本發明之主機與快閃記憶裝置間傳送讀取容量命令與回應資料之方法的流程圖;
第5圖為依據本發明之主機將資料寫入快閃記憶裝置之方法的流程圖。
Claims (21)
- 一種快閃記憶裝置,耦接至一主機,包括:一快閃記憶體,包括多個寫入單元以供儲存資料,其中每一該等寫入單元之資料容量為一寫入單元大小;以及一控制器,當該快閃記憶裝置自該主機接收到一讀取容量(read capacity)命令時,決定一邏輯區塊大小為該快閃記憶體之該寫入單元大小之一特定倍數,並依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料,其中該特定倍數為大於或等於一的正整數;其中當該主機收到該讀取容量命令之回應資料後,該主機由該回應資料取得該邏輯區塊大小,並僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之正整數倍數的寫入資料。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中當該快閃記憶裝置自該主機接收到該寫入資料,該控制器將該寫入資料分割為資料量為該寫入單元大小的多個寫入單元資料,並將該等寫入單元資料寫入該快閃記憶體的該等寫入單元。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中該快閃記憶體以該寫入單元為單位進行資料寫入,且該等寫入單位一但被寫入資料後於未經資料抹除前無法被再度寫入資料。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中當該快閃記憶裝置自該主機接收到該讀取容量命令時,該控制器取得該快閃記憶體之總資料容量,將該總資料容量 除以該邏輯區塊大小以得到一邏輯區塊數目,並依據該邏輯區塊大小以及該邏輯區塊數目向該主機發送該讀取容量命令之回應資料。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中該主機於傳送該寫入資料前檢查是否該寫入資料之長度為該邏輯區塊大小之倍數,當該寫入資料之長度不為該邏輯區塊大小之倍數時,該主機於該寫入資料之尾端補零,以使該寫入資料之長度為該邏輯區塊大小之倍數。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中該等寫入單元為該快閃記憶體之頁(page)。
- 如申請專利範圍第1項所述之快閃記憶裝置,其中當該快閃記憶體為一單層單元(single level cell,SLC)快閃記憶體時,該控制器決定該邏輯區塊大小為該快閃記憶體之一頁的資料容量;當該快閃記憶體為一多層單元(multi level cell,MLC)快閃記憶體時,該控制器決定該邏輯區塊大小為該快閃記憶體之兩頁的資料容量;當該快閃記憶體為一三層單元(triple level cell,TLC)快閃記憶體時,該控制器決定該邏輯區塊大小為該快閃記憶體之三頁的資料容量。
- 一種資料儲存系統,包括:一快閃記憶裝置,具有一快閃記憶體以供儲存資料,當該快閃記憶裝置自一主機接收到一讀取容量(read capacity)命令時,決定一邏輯區塊大小為該快閃記憶體之一寫入單元大小之一特定倍數,並依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料,其中該特定倍數 為大於或等於一的正整數,且該快閃記憶體包括多個寫入單元以供儲存資料,每一該等寫入單元之資料容量為該寫入單元大小;以及該主機,向該快閃記憶裝置發送該讀取容量命令,當該主機自該快閃記憶裝置收到該讀取容量命令之回應資料後由該回應資料取得該邏輯區塊大小,以及僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之正整數倍數的寫入資料。
- 如申請專利範圍第8項所述之資料儲存系統,其中當該快閃記憶裝置自該主機接收到該讀取容量命令時,該快閃記憶裝置取得該快閃記憶體之總資料容量,將該總資料容量除以該邏輯區塊大小以得到一邏輯區塊數目,並依據該邏輯區塊大小以及該邏輯區塊數目向該主機發送該讀取容量命令之回應資料。
- 如申請專利範圍第8項所述之資料儲存系統,其中該主機於傳送該寫入資料前檢查是否該寫入資料之長度為該邏輯區塊大小之倍數,當該寫入資料之長度不為該邏輯區塊大小之倍數時,該主機於該寫入資料之尾端補零,以使該寫入資料之長度為該邏輯區塊大小之倍數。
- 如申請專利範圍第8項所述之資料儲存系統,其中該快閃記憶體以該寫入單元為單位進行資料寫入,且該等寫入單位一但被寫入資料後於未經資料抹除前無法被再度寫入資料。
- 如申請專利範圍第8項所述之資料儲存系統,其中當該快閃記憶裝置自該主機接收到該寫入資料時,該快 閃記憶裝置將該寫入資料分割為資料量為該寫入單元大小的多個寫入單元資料,並將該等寫入單元資料寫入該快閃記憶體的該等寫入單元。
- 如申請專利範圍第8項所述之資料儲存系統,其中該等寫入單元為該快閃記憶體之頁(page)。
- 如申請專利範圍第8項所述之資料儲存系統,其中當該快閃記憶體為一單層單元(single level cell,SLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之一頁的資料容量;當該快閃記憶體為一多層單元(multi level cell,MLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之兩頁的資料容量;當該快閃記憶體為一三層單元(triple level cell,TLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之三頁的資料容量。
- 一種資料儲存系統之運作方法,其中該資料儲存系統包括一主機及一快閃記憶裝置,該快閃記憶裝置具有一快閃記憶體包括多個寫入單元以供儲存資料,每一該等寫入單元之資料容量為一寫入單元大小,該方法包括下列步驟:由該主機向該快閃記憶裝置發送一讀取容量(read capacity)命令;當該快閃記憶裝置自該主機接收到一讀取容量命令時,該快閃記憶裝置決定一邏輯區塊大小為該快閃記憶體之該寫入單元大小之一特定倍數,其中該特定倍數為大於或等於一的正整數; 該快閃記憶裝置依據該邏輯區塊大小向該主機發送該讀取容量命令之回應資料;該主機由該回應資料取得該邏輯區塊大小;以及該主機僅向該快閃記憶裝置傳送長度為該邏輯區塊大小之正整數倍數的寫入資料。
- 如申請專利範圍第15項所述之資料儲存系統之運作方法,其中該快閃記憶體以該寫入單元為單位進行資料寫入,且該等寫入單位一但被寫入資料後於未經資料抹除前無法被再度寫入資料。
- 如申請專利範圍第15項所述之資料儲存系統之運作方法,其中該讀取容量命令之回應資料之發送步驟更包括:該快閃記憶裝置取得該快閃記憶體之總資料容量;該快閃記憶裝置將該總資料容量除以該邏輯區塊大小以得到一邏輯區塊數目;以及該快閃記憶裝置依據該邏輯區塊大小以及該邏輯區塊數目向該主機發送該讀取容量命令之回應資料。
- 如申請專利範圍第15項所述之資料儲存系統之運作方法,其中該寫入資料之傳送步驟包括:該主機於傳送該寫入資料前檢查是否該寫入資料之長度為該邏輯區塊大小之倍數;以及當該寫入資料之長度不為該邏輯區塊大小之倍數時,該主機於該寫入資料之尾端補零,以使該寫入資料之長度為該邏輯區塊大小之倍數。
- 如申請專利範圍第15項所述之資料儲存系統之運 作方法,其中該方法更包括:當該快閃記憶裝置自該主機接收到該寫入資料時,該快閃記憶裝置將該寫入資料分割為資料量為該寫入單元大小的多個寫入單元資料;以及該快閃記憶裝置將該等寫入單元資料寫入該快閃記憶體的該等寫入單元。
- 如申請專利範圍第15項所述之資料儲存系統之運作方法,其中該等寫入單元為該快閃記憶體之頁(page)。
- 如申請專利範圍第15項所述之資料儲存系統之運作方法,其中該邏輯區塊大小之決定步驟包括:當該快閃記憶體為一單層單元(single level cell,SLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之一頁的資料容量;當該快閃記憶體為一多層單元(multi level cell,MLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之兩頁的資料容量;以及當該快閃記憶體為一三層單元(triple level cell,TLC)快閃記憶體時,該快閃記憶裝置決定該邏輯區塊大小為該快閃記憶體之三頁的資料容量。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098140070A TWI428917B (zh) | 2009-11-25 | 2009-11-25 | 快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 |
US12/765,060 US8380919B2 (en) | 2009-11-25 | 2010-04-22 | Flash storage device, data storage system, and data writing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098140070A TWI428917B (zh) | 2009-11-25 | 2009-11-25 | 快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201118877A TW201118877A (en) | 2011-06-01 |
TWI428917B true TWI428917B (zh) | 2014-03-01 |
Family
ID=44062934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098140070A TWI428917B (zh) | 2009-11-25 | 2009-11-25 | 快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8380919B2 (zh) |
TW (1) | TWI428917B (zh) |
Families Citing this family (211)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI497293B (zh) * | 2009-12-17 | 2015-08-21 | Ibm | 固態儲存裝置內之資料管理 |
TWI471862B (zh) * | 2011-08-19 | 2015-02-01 | Silicon Motion Inc | 快閃記憶體控制器 |
KR101923157B1 (ko) | 2012-02-22 | 2018-11-28 | 삼성전자주식회사 | 메모리 시스템 및 그것의 프로그램 방법 |
CN103514097A (zh) * | 2012-06-20 | 2014-01-15 | 安凯(广州)微电子技术有限公司 | 基于Nand Flash的数据写入方法 |
US9921954B1 (en) * | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US11630585B1 (en) | 2016-08-25 | 2023-04-18 | Pure Storage, Inc. | Processing evacuation events in a storage array that includes a plurality of storage devices |
KR102430198B1 (ko) * | 2014-06-12 | 2022-08-05 | 삼성전자주식회사 | 플래시 저장 장치의 어드레스 매핑 테이블 정리 방법 |
US11102298B1 (en) | 2015-05-26 | 2021-08-24 | Pure Storage, Inc. | Locally providing cloud storage services for fleet management |
US9716755B2 (en) | 2015-05-26 | 2017-07-25 | Pure Storage, Inc. | Providing cloud storage array services by a local storage array in a data center |
US9594678B1 (en) | 2015-05-27 | 2017-03-14 | Pure Storage, Inc. | Preventing duplicate entries of identical data in a storage device |
US9444822B1 (en) | 2015-05-29 | 2016-09-13 | Pure Storage, Inc. | Storage array access control from cloud-based user authorization and authentication |
US11503031B1 (en) | 2015-05-29 | 2022-11-15 | Pure Storage, Inc. | Storage array access control from cloud-based user authorization and authentication |
US10021170B2 (en) | 2015-05-29 | 2018-07-10 | Pure Storage, Inc. | Managing a storage array using client-side services |
US9300660B1 (en) | 2015-05-29 | 2016-03-29 | Pure Storage, Inc. | Providing authorization and authentication in a cloud for a user of a storage array |
US9588691B2 (en) | 2015-06-10 | 2017-03-07 | Pure Storage, Inc. | Dynamically managing control information in a storage device |
US9594512B1 (en) | 2015-06-19 | 2017-03-14 | Pure Storage, Inc. | Attributing consumed storage capacity among entities storing data in a storage array |
US9547441B1 (en) | 2015-06-23 | 2017-01-17 | Pure Storage, Inc. | Exposing a geometry of a storage device |
US10310740B2 (en) * | 2015-06-23 | 2019-06-04 | Pure Storage, Inc. | Aligning memory access operations to a geometry of a storage device |
US10296236B2 (en) | 2015-07-01 | 2019-05-21 | Pure Storage, Inc. | Offloading device management responsibilities from a storage device in an array of storage devices |
US9892071B2 (en) | 2015-08-03 | 2018-02-13 | Pure Storage, Inc. | Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array |
US9851762B1 (en) | 2015-08-06 | 2017-12-26 | Pure Storage, Inc. | Compliant printed circuit board (‘PCB’) within an enclosure |
US11294588B1 (en) | 2015-08-24 | 2022-04-05 | Pure Storage, Inc. | Placing data within a storage device |
US11625181B1 (en) | 2015-08-24 | 2023-04-11 | Pure Storage, Inc. | Data tiering using snapshots |
US10198194B2 (en) | 2015-08-24 | 2019-02-05 | Pure Storage, Inc. | Placing data within a storage device of a flash array |
US11360844B1 (en) | 2015-10-23 | 2022-06-14 | Pure Storage, Inc. | Recovery of a container storage provider |
US9384082B1 (en) | 2015-10-23 | 2016-07-05 | Pure Storage, Inc. | Proactively providing corrective measures for storage arrays |
US10514978B1 (en) | 2015-10-23 | 2019-12-24 | Pure Storage, Inc. | Automatic deployment of corrective measures for storage arrays |
US10284232B2 (en) | 2015-10-28 | 2019-05-07 | Pure Storage, Inc. | Dynamic error processing in a storage device |
US9740414B2 (en) | 2015-10-29 | 2017-08-22 | Pure Storage, Inc. | Optimizing copy operations |
US10374868B2 (en) | 2015-10-29 | 2019-08-06 | Pure Storage, Inc. | Distributed command processing in a flash storage system |
US10353777B2 (en) | 2015-10-30 | 2019-07-16 | Pure Storage, Inc. | Ensuring crash-safe forward progress of a system configuration update |
US9760479B2 (en) | 2015-12-02 | 2017-09-12 | Pure Storage, Inc. | Writing data in a storage system that includes a first type of storage device and a second type of storage device |
US11762764B1 (en) | 2015-12-02 | 2023-09-19 | Pure Storage, Inc. | Writing data in a storage system that includes a first type of storage device and a second type of storage device |
KR102013430B1 (ko) * | 2015-12-03 | 2019-08-22 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 어레이 컨트롤러, 솔리드 스테이트 디스크, 및 데이터를 기록하기 위해 솔리드 스테이트 디스크를 제어하는 방법 |
US10326836B2 (en) | 2015-12-08 | 2019-06-18 | Pure Storage, Inc. | Partially replicating a snapshot between storage systems |
US11616834B2 (en) | 2015-12-08 | 2023-03-28 | Pure Storage, Inc. | Efficient replication of a dataset to the cloud |
US10162835B2 (en) | 2015-12-15 | 2018-12-25 | Pure Storage, Inc. | Proactive management of a plurality of storage arrays in a multi-array system |
US11347697B1 (en) | 2015-12-15 | 2022-05-31 | Pure Storage, Inc. | Proactively optimizing a storage system |
US10346043B2 (en) | 2015-12-28 | 2019-07-09 | Pure Storage, Inc. | Adaptive computing for data compression |
US9886314B2 (en) | 2016-01-28 | 2018-02-06 | Pure Storage, Inc. | Placing workloads in a multi-array system |
US10572460B2 (en) | 2016-02-11 | 2020-02-25 | Pure Storage, Inc. | Compressing data in dependence upon characteristics of a storage system |
US9760297B2 (en) | 2016-02-12 | 2017-09-12 | Pure Storage, Inc. | Managing input/output (‘I/O’) queues in a data storage system |
US11995315B2 (en) | 2016-03-16 | 2024-05-28 | Pure Storage, Inc. | Converting data formats in a storage system |
US9959043B2 (en) | 2016-03-16 | 2018-05-01 | Pure Storage, Inc. | Performing a non-disruptive upgrade of data in a storage system |
US9841921B2 (en) | 2016-04-27 | 2017-12-12 | Pure Storage, Inc. | Migrating data in a storage array that includes a plurality of storage devices |
US11112990B1 (en) | 2016-04-27 | 2021-09-07 | Pure Storage, Inc. | Managing storage device evacuation |
US11809727B1 (en) | 2016-04-27 | 2023-11-07 | Pure Storage, Inc. | Predicting failures in a storage system that includes a plurality of storage devices |
US9811264B1 (en) | 2016-04-28 | 2017-11-07 | Pure Storage, Inc. | Deploying client-specific applications in a storage system utilizing redundant system resources |
US10303390B1 (en) | 2016-05-02 | 2019-05-28 | Pure Storage, Inc. | Resolving fingerprint collisions in flash storage system |
US10261690B1 (en) | 2016-05-03 | 2019-04-16 | Pure Storage, Inc. | Systems and methods for operating a storage system |
US11231858B2 (en) | 2016-05-19 | 2022-01-25 | Pure Storage, Inc. | Dynamically configuring a storage system to facilitate independent scaling of resources |
US9507532B1 (en) | 2016-05-20 | 2016-11-29 | Pure Storage, Inc. | Migrating data in a storage array that includes a plurality of storage devices and a plurality of write buffer devices |
US10691567B2 (en) | 2016-06-03 | 2020-06-23 | Pure Storage, Inc. | Dynamically forming a failure domain in a storage system that includes a plurality of blades |
EP3296996B1 (en) * | 2016-06-24 | 2019-08-28 | Huawei Technologies Co., Ltd. | Method for processing data, storage apparatus, solid state disk and storage system |
US10452310B1 (en) | 2016-07-13 | 2019-10-22 | Pure Storage, Inc. | Validating cabling for storage component admission to a storage array |
US11706895B2 (en) | 2016-07-19 | 2023-07-18 | Pure Storage, Inc. | Independent scaling of compute resources and storage resources in a storage system |
US10459652B2 (en) | 2016-07-27 | 2019-10-29 | Pure Storage, Inc. | Evacuating blades in a storage array that includes a plurality of blades |
US10474363B1 (en) | 2016-07-29 | 2019-11-12 | Pure Storage, Inc. | Space reporting in a storage system |
US10331588B2 (en) | 2016-09-07 | 2019-06-25 | Pure Storage, Inc. | Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling |
US10146585B2 (en) | 2016-09-07 | 2018-12-04 | Pure Storage, Inc. | Ensuring the fair utilization of system resources using workload based, time-independent scheduling |
US11481261B1 (en) | 2016-09-07 | 2022-10-25 | Pure Storage, Inc. | Preventing extended latency in a storage system |
US11531577B1 (en) | 2016-09-07 | 2022-12-20 | Pure Storage, Inc. | Temporarily limiting access to a storage device |
US11960348B2 (en) | 2016-09-07 | 2024-04-16 | Pure Storage, Inc. | Cloud-based monitoring of hardware components in a fleet of storage systems |
US10235229B1 (en) | 2016-09-07 | 2019-03-19 | Pure Storage, Inc. | Rehabilitating storage devices in a storage array that includes a plurality of storage devices |
US11886922B2 (en) | 2016-09-07 | 2024-01-30 | Pure Storage, Inc. | Scheduling input/output operations for a storage system |
US10908966B1 (en) | 2016-09-07 | 2021-02-02 | Pure Storage, Inc. | Adapting target service times in a storage system |
US10671439B1 (en) | 2016-09-07 | 2020-06-02 | Pure Storage, Inc. | Workload planning with quality-of-service (‘QOS’) integration |
US10007459B2 (en) | 2016-10-20 | 2018-06-26 | Pure Storage, Inc. | Performance tuning in a storage system that includes one or more storage devices |
US11379132B1 (en) | 2016-10-20 | 2022-07-05 | Pure Storage, Inc. | Correlating medical sensor data |
US11620075B2 (en) | 2016-11-22 | 2023-04-04 | Pure Storage, Inc. | Providing application aware storage |
US10162566B2 (en) | 2016-11-22 | 2018-12-25 | Pure Storage, Inc. | Accumulating application-level statistics in a storage system |
US10198205B1 (en) | 2016-12-19 | 2019-02-05 | Pure Storage, Inc. | Dynamically adjusting a number of storage devices utilized to simultaneously service write operations |
US11461273B1 (en) | 2016-12-20 | 2022-10-04 | Pure Storage, Inc. | Modifying storage distribution in a storage system that includes one or more storage devices |
US10489307B2 (en) | 2017-01-05 | 2019-11-26 | Pure Storage, Inc. | Periodically re-encrypting user data stored on a storage device |
US11307998B2 (en) | 2017-01-09 | 2022-04-19 | Pure Storage, Inc. | Storage efficiency of encrypted host system data |
US10503700B1 (en) | 2017-01-19 | 2019-12-10 | Pure Storage, Inc. | On-demand content filtering of snapshots within a storage system |
US11340800B1 (en) | 2017-01-19 | 2022-05-24 | Pure Storage, Inc. | Content masking in a storage system |
US11163624B2 (en) | 2017-01-27 | 2021-11-02 | Pure Storage, Inc. | Dynamically adjusting an amount of log data generated for a storage system |
US11169727B1 (en) | 2017-03-10 | 2021-11-09 | Pure Storage, Inc. | Synchronous replication between storage systems with virtualized storage |
US11803453B1 (en) | 2017-03-10 | 2023-10-31 | Pure Storage, Inc. | Using host connectivity states to avoid queuing I/O requests |
US11442825B2 (en) | 2017-03-10 | 2022-09-13 | Pure Storage, Inc. | Establishing a synchronous replication relationship between two or more storage systems |
US10454810B1 (en) | 2017-03-10 | 2019-10-22 | Pure Storage, Inc. | Managing host definitions across a plurality of storage systems |
US11675520B2 (en) | 2017-03-10 | 2023-06-13 | Pure Storage, Inc. | Application replication among storage systems synchronously replicating a dataset |
US11941279B2 (en) | 2017-03-10 | 2024-03-26 | Pure Storage, Inc. | Data path virtualization |
US10521344B1 (en) | 2017-03-10 | 2019-12-31 | Pure Storage, Inc. | Servicing input/output (‘I/O’) operations directed to a dataset that is synchronized across a plurality of storage systems |
US11089105B1 (en) | 2017-12-14 | 2021-08-10 | Pure Storage, Inc. | Synchronously replicating datasets in cloud-based storage systems |
US10503427B2 (en) | 2017-03-10 | 2019-12-10 | Pure Storage, Inc. | Synchronously replicating datasets and other managed objects to cloud-based storage systems |
US9910618B1 (en) | 2017-04-10 | 2018-03-06 | Pure Storage, Inc. | Migrating applications executing on a storage system |
US10459664B1 (en) | 2017-04-10 | 2019-10-29 | Pure Storage, Inc. | Virtualized copy-by-reference |
US11868629B1 (en) | 2017-05-05 | 2024-01-09 | Pure Storage, Inc. | Storage system sizing service |
US11609718B1 (en) | 2017-06-12 | 2023-03-21 | Pure Storage, Inc. | Identifying valid data after a storage system recovery |
US10976962B2 (en) | 2018-03-15 | 2021-04-13 | Pure Storage, Inc. | Servicing I/O operations in a cloud-based storage system |
WO2018231350A1 (en) | 2017-06-12 | 2018-12-20 | Pure Storage, Inc. | Accessible fast durable storage integrated into a bulk storage device |
US11593036B2 (en) | 2017-06-12 | 2023-02-28 | Pure Storage, Inc. | Staging data within a unified storage element |
US11422731B1 (en) | 2017-06-12 | 2022-08-23 | Pure Storage, Inc. | Metadata-based replication of a dataset |
US10884636B1 (en) | 2017-06-12 | 2021-01-05 | Pure Storage, Inc. | Presenting workload performance in a storage system |
US10417092B2 (en) | 2017-09-07 | 2019-09-17 | Pure Storage, Inc. | Incremental RAID stripe update parity calculation |
US10552090B2 (en) | 2017-09-07 | 2020-02-04 | Pure Storage, Inc. | Solid state drives with multiple types of addressable memory |
US11592991B2 (en) | 2017-09-07 | 2023-02-28 | Pure Storage, Inc. | Converting raid data between persistent storage types |
US11016824B1 (en) | 2017-06-12 | 2021-05-25 | Pure Storage, Inc. | Event identification with out-of-order reporting in a cloud-based environment |
US11989429B1 (en) | 2017-06-12 | 2024-05-21 | Pure Storage, Inc. | Recommending changes to a storage system |
US11340939B1 (en) | 2017-06-12 | 2022-05-24 | Pure Storage, Inc. | Application-aware analytics for storage systems |
US10853148B1 (en) | 2017-06-12 | 2020-12-01 | Pure Storage, Inc. | Migrating workloads between a plurality of execution environments |
US10613791B2 (en) | 2017-06-12 | 2020-04-07 | Pure Storage, Inc. | Portable snapshot replication between storage systems |
US11210133B1 (en) | 2017-06-12 | 2021-12-28 | Pure Storage, Inc. | Workload mobility between disparate execution environments |
US11442669B1 (en) | 2018-03-15 | 2022-09-13 | Pure Storage, Inc. | Orchestrating a virtual storage system |
US11561714B1 (en) | 2017-07-05 | 2023-01-24 | Pure Storage, Inc. | Storage efficiency driven migration |
US11477280B1 (en) | 2017-07-26 | 2022-10-18 | Pure Storage, Inc. | Integrating cloud storage services |
US10831935B2 (en) | 2017-08-31 | 2020-11-10 | Pure Storage, Inc. | Encryption management with host-side data reduction |
US10360214B2 (en) | 2017-10-19 | 2019-07-23 | Pure Storage, Inc. | Ensuring reproducibility in an artificial intelligence infrastructure |
US11494692B1 (en) | 2018-03-26 | 2022-11-08 | Pure Storage, Inc. | Hyperscale artificial intelligence and machine learning infrastructure |
US10452444B1 (en) | 2017-10-19 | 2019-10-22 | Pure Storage, Inc. | Storage system with compute resources and shared storage resources |
US11861423B1 (en) | 2017-10-19 | 2024-01-02 | Pure Storage, Inc. | Accelerating artificial intelligence (‘AI’) workflows |
US11455168B1 (en) | 2017-10-19 | 2022-09-27 | Pure Storage, Inc. | Batch building for deep learning training workloads |
US10671434B1 (en) | 2017-10-19 | 2020-06-02 | Pure Storage, Inc. | Storage based artificial intelligence infrastructure |
US10484174B1 (en) | 2017-11-01 | 2019-11-19 | Pure Storage, Inc. | Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices |
US10467107B1 (en) | 2017-11-01 | 2019-11-05 | Pure Storage, Inc. | Maintaining metadata resiliency among storage device failures |
US10671494B1 (en) | 2017-11-01 | 2020-06-02 | Pure Storage, Inc. | Consistent selection of replicated datasets during storage system recovery |
US10817392B1 (en) | 2017-11-01 | 2020-10-27 | Pure Storage, Inc. | Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices |
US10509581B1 (en) | 2017-11-01 | 2019-12-17 | Pure Storage, Inc. | Maintaining write consistency in a multi-threaded storage system |
US10929226B1 (en) | 2017-11-21 | 2021-02-23 | Pure Storage, Inc. | Providing for increased flexibility for large scale parity |
US10990282B1 (en) | 2017-11-28 | 2021-04-27 | Pure Storage, Inc. | Hybrid data tiering with cloud storage |
US10936238B2 (en) | 2017-11-28 | 2021-03-02 | Pure Storage, Inc. | Hybrid data tiering |
US10795598B1 (en) | 2017-12-07 | 2020-10-06 | Pure Storage, Inc. | Volume migration for storage systems synchronously replicating a dataset |
US11036677B1 (en) | 2017-12-14 | 2021-06-15 | Pure Storage, Inc. | Replicated data integrity |
US10929031B2 (en) | 2017-12-21 | 2021-02-23 | Pure Storage, Inc. | Maximizing data reduction in a partially encrypted volume |
US10992533B1 (en) | 2018-01-30 | 2021-04-27 | Pure Storage, Inc. | Policy based path management |
US11150834B1 (en) | 2018-03-05 | 2021-10-19 | Pure Storage, Inc. | Determining storage consumption in a storage system |
US11861170B2 (en) | 2018-03-05 | 2024-01-02 | Pure Storage, Inc. | Sizing resources for a replication target |
US10942650B1 (en) | 2018-03-05 | 2021-03-09 | Pure Storage, Inc. | Reporting capacity utilization in a storage system |
US11972134B2 (en) | 2018-03-05 | 2024-04-30 | Pure Storage, Inc. | Resource utilization using normalized input/output (‘I/O’) operations |
US10521151B1 (en) | 2018-03-05 | 2019-12-31 | Pure Storage, Inc. | Determining effective space utilization in a storage system |
US10296258B1 (en) | 2018-03-09 | 2019-05-21 | Pure Storage, Inc. | Offloading data storage to a decentralized storage network |
US10917471B1 (en) | 2018-03-15 | 2021-02-09 | Pure Storage, Inc. | Active membership in a cloud-based storage system |
US11210009B1 (en) | 2018-03-15 | 2021-12-28 | Pure Storage, Inc. | Staging data in a cloud-based storage system |
US11048590B1 (en) | 2018-03-15 | 2021-06-29 | Pure Storage, Inc. | Data consistency during recovery in a cloud-based storage system |
US10924548B1 (en) | 2018-03-15 | 2021-02-16 | Pure Storage, Inc. | Symmetric storage using a cloud-based storage system |
US11288138B1 (en) | 2018-03-15 | 2022-03-29 | Pure Storage, Inc. | Recovery from a system fault in a cloud-based storage system |
US11095706B1 (en) | 2018-03-21 | 2021-08-17 | Pure Storage, Inc. | Secure cloud-based storage system management |
US11171950B1 (en) | 2018-03-21 | 2021-11-09 | Pure Storage, Inc. | Secure cloud-based storage system management |
US10838833B1 (en) | 2018-03-26 | 2020-11-17 | Pure Storage, Inc. | Providing for high availability in a data analytics pipeline without replicas |
US11436344B1 (en) | 2018-04-24 | 2022-09-06 | Pure Storage, Inc. | Secure encryption in deduplication cluster |
US11392553B1 (en) | 2018-04-24 | 2022-07-19 | Pure Storage, Inc. | Remote data management |
US11675503B1 (en) | 2018-05-21 | 2023-06-13 | Pure Storage, Inc. | Role-based data access |
US11455409B2 (en) | 2018-05-21 | 2022-09-27 | Pure Storage, Inc. | Storage layer data obfuscation |
US11954220B2 (en) | 2018-05-21 | 2024-04-09 | Pure Storage, Inc. | Data protection for container storage |
US20190354628A1 (en) | 2018-05-21 | 2019-11-21 | Pure Storage, Inc. | Asynchronous replication of synchronously replicated data |
US10871922B2 (en) | 2018-05-22 | 2020-12-22 | Pure Storage, Inc. | Integrated storage management between storage systems and container orchestrators |
US11416298B1 (en) | 2018-07-20 | 2022-08-16 | Pure Storage, Inc. | Providing application-specific storage by a storage system |
US11403000B1 (en) | 2018-07-20 | 2022-08-02 | Pure Storage, Inc. | Resiliency in a cloud-based storage system |
US11146564B1 (en) | 2018-07-24 | 2021-10-12 | Pure Storage, Inc. | Login authentication in a cloud storage platform |
US11954238B1 (en) | 2018-07-24 | 2024-04-09 | Pure Storage, Inc. | Role-based access control for a storage system |
US11632360B1 (en) | 2018-07-24 | 2023-04-18 | Pure Storage, Inc. | Remote access to a storage device |
US11868309B2 (en) | 2018-09-06 | 2024-01-09 | Pure Storage, Inc. | Queue management for data relocation |
US11860820B1 (en) | 2018-09-11 | 2024-01-02 | Pure Storage, Inc. | Processing data through a storage system in a data pipeline |
US10671302B1 (en) | 2018-10-26 | 2020-06-02 | Pure Storage, Inc. | Applying a rate limit across a plurality of storage systems |
US11379254B1 (en) | 2018-11-18 | 2022-07-05 | Pure Storage, Inc. | Dynamic configuration of a cloud-based storage system |
US11340837B1 (en) | 2018-11-18 | 2022-05-24 | Pure Storage, Inc. | Storage system management via a remote console |
US10963189B1 (en) | 2018-11-18 | 2021-03-30 | Pure Storage, Inc. | Coalescing write operations in a cloud-based storage system |
US11526405B1 (en) | 2018-11-18 | 2022-12-13 | Pure Storage, Inc. | Cloud-based disaster recovery |
US11650749B1 (en) | 2018-12-17 | 2023-05-16 | Pure Storage, Inc. | Controlling access to sensitive data in a shared dataset |
US11003369B1 (en) | 2019-01-14 | 2021-05-11 | Pure Storage, Inc. | Performing a tune-up procedure on a storage device during a boot process |
US11042452B1 (en) | 2019-03-20 | 2021-06-22 | Pure Storage, Inc. | Storage system data recovery using data recovery as a service |
US11221778B1 (en) | 2019-04-02 | 2022-01-11 | Pure Storage, Inc. | Preparing data for deduplication |
US11068162B1 (en) | 2019-04-09 | 2021-07-20 | Pure Storage, Inc. | Storage management in a cloud data store |
US11204721B2 (en) * | 2019-05-06 | 2021-12-21 | Micron Technology, Inc. | Input/output size control between a host system and a memory sub-system |
US11113007B2 (en) | 2019-05-13 | 2021-09-07 | Micron Technology, Inc. | Partial execution of a write command from a host system |
US11327676B1 (en) | 2019-07-18 | 2022-05-10 | Pure Storage, Inc. | Predictive data streaming in a virtual storage system |
US11853266B2 (en) | 2019-05-15 | 2023-12-26 | Pure Storage, Inc. | Providing a file system in a cloud environment |
US11126364B2 (en) | 2019-07-18 | 2021-09-21 | Pure Storage, Inc. | Virtual storage system architecture |
US11392555B2 (en) | 2019-05-15 | 2022-07-19 | Pure Storage, Inc. | Cloud-based file services |
US12001355B1 (en) | 2019-05-24 | 2024-06-04 | Pure Storage, Inc. | Chunked memory efficient storage data transfers |
US11526408B2 (en) | 2019-07-18 | 2022-12-13 | Pure Storage, Inc. | Data recovery in a virtual storage system |
US11550514B2 (en) | 2019-07-18 | 2023-01-10 | Pure Storage, Inc. | Efficient transfers between tiers of a virtual storage system |
US11861221B1 (en) | 2019-07-18 | 2024-01-02 | Pure Storage, Inc. | Providing scalable and reliable container-based storage services |
US11093139B1 (en) | 2019-07-18 | 2021-08-17 | Pure Storage, Inc. | Durably storing data within a virtual storage system |
US11487715B1 (en) | 2019-07-18 | 2022-11-01 | Pure Storage, Inc. | Resiliency in a cloud-based storage system |
US11086553B1 (en) | 2019-08-28 | 2021-08-10 | Pure Storage, Inc. | Tiering duplicated objects in a cloud-based object store |
US11693713B1 (en) | 2019-09-04 | 2023-07-04 | Pure Storage, Inc. | Self-tuning clusters for resilient microservices |
US11625416B1 (en) | 2019-09-13 | 2023-04-11 | Pure Storage, Inc. | Uniform model for distinct types of data replication |
US11797569B2 (en) | 2019-09-13 | 2023-10-24 | Pure Storage, Inc. | Configurable data replication |
US11573864B1 (en) | 2019-09-16 | 2023-02-07 | Pure Storage, Inc. | Automating database management in a storage system |
US11669386B1 (en) | 2019-10-08 | 2023-06-06 | Pure Storage, Inc. | Managing an application's resource stack |
US20210173945A1 (en) | 2019-12-06 | 2021-06-10 | Pure Storage, Inc. | Replicating data to a storage system that has an inferred trust relationship with a client |
US11720497B1 (en) | 2020-01-13 | 2023-08-08 | Pure Storage, Inc. | Inferred nonsequential prefetch based on data access patterns |
US11709636B1 (en) | 2020-01-13 | 2023-07-25 | Pure Storage, Inc. | Non-sequential readahead for deep learning training |
US11733901B1 (en) | 2020-01-13 | 2023-08-22 | Pure Storage, Inc. | Providing persistent storage to transient cloud computing services |
US12014065B2 (en) | 2020-02-11 | 2024-06-18 | Pure Storage, Inc. | Multi-cloud orchestration as-a-service |
US11637896B1 (en) | 2020-02-25 | 2023-04-25 | Pure Storage, Inc. | Migrating applications to a cloud-computing environment |
US11868622B2 (en) | 2020-02-25 | 2024-01-09 | Pure Storage, Inc. | Application recovery across storage systems |
US11321006B1 (en) | 2020-03-25 | 2022-05-03 | Pure Storage, Inc. | Data loss prevention during transitions from a replication source |
US11301152B1 (en) | 2020-04-06 | 2022-04-12 | Pure Storage, Inc. | Intelligently moving data between storage systems |
US11630598B1 (en) | 2020-04-06 | 2023-04-18 | Pure Storage, Inc. | Scheduling data replication operations |
US11494267B2 (en) | 2020-04-14 | 2022-11-08 | Pure Storage, Inc. | Continuous value data redundancy |
US11921670B1 (en) | 2020-04-20 | 2024-03-05 | Pure Storage, Inc. | Multivariate data backup retention policies |
US11431488B1 (en) | 2020-06-08 | 2022-08-30 | Pure Storage, Inc. | Protecting local key generation using a remote key management service |
US11349917B2 (en) | 2020-07-23 | 2022-05-31 | Pure Storage, Inc. | Replication handling among distinct networks |
US11442652B1 (en) | 2020-07-23 | 2022-09-13 | Pure Storage, Inc. | Replication handling during storage system transportation |
KR20220022139A (ko) * | 2020-08-18 | 2022-02-25 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
US11397545B1 (en) | 2021-01-20 | 2022-07-26 | Pure Storage, Inc. | Emulating persistent reservations in a cloud-based storage system |
US11853285B1 (en) | 2021-01-22 | 2023-12-26 | Pure Storage, Inc. | Blockchain logging of volume-level events in a storage system |
US20220365827A1 (en) | 2021-05-12 | 2022-11-17 | Pure Storage, Inc. | Rebalancing In A Fleet Of Storage Systems Using Data Science |
US11816129B2 (en) | 2021-06-22 | 2023-11-14 | Pure Storage, Inc. | Generating datasets using approximate baselines |
US11893263B2 (en) | 2021-10-29 | 2024-02-06 | Pure Storage, Inc. | Coordinated checkpoints among storage systems implementing checkpoint-based replication |
US11714723B2 (en) | 2021-10-29 | 2023-08-01 | Pure Storage, Inc. | Coordinated snapshots for data stored across distinct storage environments |
US11914867B2 (en) | 2021-10-29 | 2024-02-27 | Pure Storage, Inc. | Coordinated snapshots among storage systems implementing a promotion/demotion model |
US11922052B2 (en) | 2021-12-15 | 2024-03-05 | Pure Storage, Inc. | Managing links between storage objects |
US11847071B2 (en) | 2021-12-30 | 2023-12-19 | Pure Storage, Inc. | Enabling communication between a single-port device and multiple storage system controllers |
US12001300B2 (en) | 2022-01-04 | 2024-06-04 | Pure Storage, Inc. | Assessing protection for storage resources |
US11860780B2 (en) | 2022-01-28 | 2024-01-02 | Pure Storage, Inc. | Storage cache management |
US11886295B2 (en) | 2022-01-31 | 2024-01-30 | Pure Storage, Inc. | Intra-block error correction |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4209820B2 (ja) * | 2004-07-15 | 2009-01-14 | 株式会社ハギワラシスコム | メモリカードシステム及び該メモリカードシステムで使用されるライトワンス型メモリカード、ホストシステムと半導体記憶デバイスとからなるシステム |
JP2008204041A (ja) * | 2007-02-19 | 2008-09-04 | Hitachi Ltd | ストレージ装置及びデータ配置制御方法 |
JP4874368B2 (ja) * | 2009-06-22 | 2012-02-15 | 株式会社日立製作所 | フラッシュメモリを用いたストレージシステムの管理方法及び計算機 |
-
2009
- 2009-11-25 TW TW098140070A patent/TWI428917B/zh active
-
2010
- 2010-04-22 US US12/765,060 patent/US8380919B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW201118877A (en) | 2011-06-01 |
US20110125955A1 (en) | 2011-05-26 |
US8380919B2 (en) | 2013-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI428917B (zh) | 快閃記憶裝置、資料儲存系統、以及資料儲存系統之運作方法 | |
CN107179996B (zh) | 数据存储装置和其操作方法 | |
US8135903B1 (en) | Non-volatile semiconductor memory compressing data to improve performance | |
US10067873B2 (en) | Data storage device and operating method thereof | |
US10223027B2 (en) | Optimized garbage collection for solid-state storage devices | |
CN107179877B (zh) | 数据传输方法、存储器控制电路单元与存储器存储装置 | |
TWI738442B (zh) | 資料儲存裝置與資料處理方法 | |
TWI512609B (zh) | 讀取命令排程方法以及使用該方法的裝置 | |
EP3506075A1 (en) | Mass storage device capable of fine grained read and/or write operations | |
KR20200025184A (ko) | 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그 동작 방법 | |
TWI715248B (zh) | 主機輸出入命令的執行裝置及方法及電腦程式產品 | |
KR20090006920A (ko) | 캐시 메모리 장치 및 캐시 메모리 장치의 데이터 처리 방법 | |
US11537328B2 (en) | Method and apparatus for executing host commands | |
KR102365602B1 (ko) | 지능형 임계치 검출을 통한 커맨드 최적화 | |
CN111352864A (zh) | 快闪存储器持久性高速缓存技术 | |
KR20180126656A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US9152348B2 (en) | Data transmitting method, memory controller and data transmitting system | |
CN108536475B (zh) | 完整编程命令处理方法与装置 | |
TWI648629B (zh) | 映射表更新方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN113495850A (zh) | 管理垃圾回收程序的方法、装置及计算机可读取存储介质 | |
CN113448487A (zh) | 写入闪存管理表的计算机可读取存储介质、方法及装置 | |
TWI835027B (zh) | 更新主機與閃存位址對照表的方法及電腦程式產品及裝置 | |
TWI760262B (zh) | 資料儲存裝置與資料處理方法 | |
US20240020252A1 (en) | Computing system and operating method thereof | |
US20240201879A1 (en) | Storage device, storage device operating method and resource management device for determining unit of data required for operation of resources of storage device based on access pattern of host device |