TWI408689B - 存取儲存裝置的方法及相關控制電路 - Google Patents

存取儲存裝置的方法及相關控制電路 Download PDF

Info

Publication number
TWI408689B
TWI408689B TW098112304A TW98112304A TWI408689B TW I408689 B TWI408689 B TW I408689B TW 098112304 A TW098112304 A TW 098112304A TW 98112304 A TW98112304 A TW 98112304A TW I408689 B TWI408689 B TW I408689B
Authority
TW
Taiwan
Prior art keywords
block
storage unit
storage
control circuit
mapping
Prior art date
Application number
TW098112304A
Other languages
English (en)
Other versions
TW201037717A (en
Inventor
Chao Yin Liu
Sheng Hsuan Wang
Original Assignee
Jmicron Technology Corp
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 Jmicron Technology Corp filed Critical Jmicron Technology Corp
Priority to TW098112304A priority Critical patent/TWI408689B/zh
Priority to US12/641,330 priority patent/US20100262764A1/en
Publication of TW201037717A publication Critical patent/TW201037717A/zh
Application granted granted Critical
Publication of TWI408689B publication Critical patent/TWI408689B/zh

Links

Classifications

    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • 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/7202Allocation control and policies
    • 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/7205Cleaning, compaction, garbage collection, erase control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

存取儲存裝置的方法及相關控制電路
本發明係關於缺陷區塊管理的方法及相關控制電路,尤指一種用於包含有複數個快閃記憶體的儲存裝置(如:一多通道固態硬碟機)的缺陷區塊管理的方法及相關電路。
由快閃記憶體所組成的各種儲存裝置,已逐漸普及於嵌入式系統與攜帶式裝置。當人們對儲存裝置所提供的容量與效能要求越高時,也間接帶動快閃記憶體裝置的發展,最終,快閃記憶體裝置漸漸地在各個領域取代習知儲存裝置(例如傳統硬碟)的運用。一個如火如荼且轉向明朗的發展趨勢即是固態硬碟機(Solid State Drive,SSD),其係一種由快閃記憶體所組成的大容量儲存裝置,並且定位於取代傳統硬碟。相較於發展已成熟的傳統硬碟,快閃記憶體先天的物理特性導致其仍有許多亟待改良之處,其一便是資料寫入與讀取速度不佳。為了能有效提升快閃記憶體裝置的讀取與寫入效能,因此設計者引入了冗餘(redundancy)技術於固態硬碟機,主要是透過冗餘技術中一種用以提升儲存裝置之存取速度的資料分割(data stripping)技術,在固態硬碟機中設置複數個快閃記憶體,且分別形成複數個存取通道(channel)。當外部系統存取固態硬碟機時,複數個快閃記憶體可同時進行存取操作,從而提高固態硬碟機的資料存取速度。然而,由於快閃記憶體不論在製造或使用的過程中,可能因為某些原因而造成內部儲存單位的故障,又因為快閃記憶體的資料抹除係以區塊(block)為單位,因此故障的儲存單位會進一步造成其所屬的整個區塊不能再度進行抹除與儲存操作,進而形成缺陷區塊(bad block)。
傳統上,快閃記憶體的控制電路都有處理與管理缺陷區塊的機制(bad block management)。在眾多習知作法中,最簡單的一種就是區塊忽略法(Skip block method),當一儲存資料的目標位址對應於一缺陷區塊的位址時,則該筆儲存資料會被儲存至該缺陷區塊之後的下一個良好區塊(good block),亦即跳過該缺陷區塊。但此種方法若運用於多通道固態硬碟機(multi-channel SSD)中,則會因為不同存取通道之快閃記憶體間存在著區塊關聯性,若跳過某個快閃記憶體之一缺陷區塊,則其它快閃記憶體中對應於該缺陷區塊的關聯區塊,不論其是否為缺陷區塊都會被跳過,因而導致無謂的儲存空間浪費。
此外,在習知技藝中除了區塊忽略法外,亦有透過蒐集缺陷區塊的資訊(如:缺陷區塊的位址),而避免於這些已知的缺陷區塊上執行寫入或讀取操作;並且透過良好區塊(good block)來置換這些缺陷區塊以進行讀取或寫入操作,其中,缺陷區塊的位址將會被重新映射(remapping)至良好區塊以進行區塊置換操作,這些重新映射結果(remapping result)會被記錄於固態硬碟機中之控制電路。當控制電路欲對缺陷區塊進行寫入或讀取操作時,此時會依據重新映射結果轉而向缺陷區塊所對應之置換區塊進行寫入或讀取操作。一般而言,置換區塊的來源通常有兩種方式,第一種方式即是從同一快閃記憶體中,透過特定的演算法來找一個良好區塊以作為置換區塊,因此每個快閃記憶體擁有個別的重新映射結果,控制電路會依據每個快閃記憶體的重映射結果來分別存取快閃記憶體,然而,此種方法將導致控制電路的負擔過大,此外控制電路必須依據重新映射結果,依序將每個缺陷區塊替換為置換區塊,故造成較多的電路延遲;第二種方式即是在快閃記憶體中配置保留區塊(reserved block)以作為置換區塊之用,然而,此種作法的主要問題在於會增加快閃記憶體的製造成本,亦即由於相同快閃記憶體中必須保留一部分空間作為保留區塊,使得真正可規劃為儲存之用的區塊較少。
綜上所述,對於提升固態硬碟機的資料存取效能而言,習知技術仍存有許多改進的空間。
有鑑於此,為了解決習知缺陷區塊管理技術於多通道固態硬碟之應用上往往效能過低的問題,本發明便提出一種創新的缺陷區塊管理方法以及相關控制電路,來解決習知固態硬碟機之效能不彰的問題。
依據本發明之一實施例,其係提供一種用以存取一儲存裝置的方法。該儲存裝置包含有複數個儲存單元分別對應複數個存取通道,每一儲存單元分別包含有複數個區塊,該複數個存取通道係於該儲存裝置進行一資料存取操作時同時動作,以及該複數個儲存單元包含有一第一儲存單元與至少一第二儲存單元。該方法包含有:依據該複數個儲存單元中無法正常操作之缺陷區塊(bad block)來產生分別對應至該複數個儲存單元之複數個缺陷區塊列表;依據該第一儲存單元所對應之一缺陷區塊列表所指出之至少一缺陷區塊,將每一第二儲存單元中對應於該缺陷區塊且可正常操作之一良好區塊(good block)設定為一置換區塊;依據每一第二儲存單元之一缺陷區塊列表與每一置換區塊來產生相對應之一映射結果;以及依據該第一儲存單元所對應之該缺陷區塊列表與每一第二儲存單元所對應之該映射結果來存取該儲存裝置。
依據本發明之另一實施例,其係提供一種用於存取一儲存裝置之控制電路。該儲存裝置包含有複數個儲存單元分別對應複數個存取通道,每一儲存單元分別包含有複數個區塊,該複數個存取通道係於該儲存裝置進行一資料存取操作時同時動作,以及該複數個儲存單元包含有一第一儲存單元與至少一第二儲存單元。該控制電路包含有一處理單元、一儲存單元以及複數個映射單元。該處理單元會依據該複數個儲存單元中無法正常操作之缺陷區塊(bad block)來產生分別對應至該複數個儲存單元之複數個缺陷區塊列表、依據該第一儲存單元所對應之一缺陷區塊列表所指出之至少一缺陷區塊而將每一第二儲存單元中對應於該缺陷區塊且可正常操作之一良好區塊(good block)設定為一置換區塊以及依據每一第二儲存單元之一缺陷區塊列表與每一置換區塊來產生相對應之一映射結果。該儲存單元係耦接於該處理單元,用以儲存該第一儲存單元所對應之該缺陷區塊列表。該複數個映射單元分別耦接於該處理單元以及該複數個儲存單元,並且用以依據該複數個映射結果進行以相對應之設定,其中該控制電路係利用該複數個映射單元與儲存於該儲存元件之該第一儲存單元所對應之該缺陷區塊列表來存取該複數個儲存單元。
在說明書及後續的申請專利範圍當中使用了某些詞彙來指稱特定的元件。所屬領域中具有通常知識者應可理解,硬體製造商可能會用不同的名詞來稱呼同一個元件。本說明書及後續的申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的準則。在通篇說明書及後續的請求相當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於」。此外,「耦接」一詞在此係包含任何直接及間接的電氣連接手段,因此,若文中描述一第一裝置耦接於一第二裝置,則代表該第一裝置可直接電氣連接於該第二裝置,或者透過其他裝置或連接手段間接地電氣連接至該第二裝置。
請參考第1圖,其係本發明方法之一實施例的示意圖。如圖所示,固態硬碟機100為一個具有四個存取通道(4-channel)之儲存裝置,分別包含有快閃記憶體A、B、C以及D。快閃記憶體A、B、C以及D分別包含有7個區塊,而區塊的編號(即代表對應於不同位址之區塊)如圖示之標記所示,且圖示中以”X”來代表缺陷區塊。本發明之一技術特徵係在於以多通道固態硬碟機其中之一存取通道所對應之快閃記憶體的缺陷區塊狀態為基準,來產生其它快閃記憶體所對應之缺陷區塊的(重新)映射結果。因此,基於解釋上之方便,本實施例中係以快閃記憶體A之缺陷區塊狀態為基準來作為說明。應當注意的是,選用其它快閃記憶體B、C或D來作為缺陷區塊之映射結果的產生基準亦屬本發明之範疇。此外,本實施例所利用之固態硬碟機的通道數目亦非本發明之限制,換言之,本發明方法適用於採用任何其它通道數目的固態硬碟機,更甚者,熟知本發明技術領域之人,在詳讀本說明書之內容之後,亦可將本發明透過適當地修改或重新詮釋,將本發明方法應用於任何採用冗餘技術之儲存裝置,此亦屬本發明的涵蓋範圍。
由圖可知,當選定快閃記憶體A的缺陷區塊為其它快閃記憶體之映射結果的產生基準時,區塊2與區塊5會被當作基準,並將快閃記憶體B、C以及D中之對應區塊2與對應區塊5分別視為該快閃記憶體中之置換區塊,以取代該快閃記憶體中之缺陷區塊。因此,於快閃記憶體B中,區塊2本來為良好區塊,但為配合快閃記憶體A的缺陷區塊2,因此被用來做為快閃記憶體B之缺陷區塊1之置換區塊,而良好區塊5則被用來作為對應缺陷區塊6之置換區塊。同樣的,在快閃記憶體C中,良好區塊2被用來作為缺陷區塊3之置換區塊,而良好區塊5則被用來作為對應缺陷區塊4之置換區塊,而在快閃記憶體D中,區塊2本來就是缺陷區塊,因此不被用來作為置換區塊,而良好區塊5則被用來作為缺陷區塊7之置換區塊。經由以上的替換關係,缺陷區塊位址便映射至置換區塊位址以產生每一快閃記憶體的缺陷區塊映射結果,如此一來,便避免於區塊忽略法中,由於這些置換區塊因為對應至快閃記憶體A的缺陷區塊而被忽略,進而導致儲存空間浪費的情形。應當特別注意的是,於每一快閃記憶體中,置換區塊被選來替換哪一缺陷區塊的方法並非本發明所欲強調的重點,亦即,上述實施例中所描述的選擇方法僅做為範例說明之用,實非本發明之限制。
總結來說,在應用本發明方法之後,對於上述實施例中的固態硬碟機100來說,所有快閃記憶體中僅有區塊2以及區塊5是無法使用的,其餘皆可正常進行資料儲存。然而,為解決習知技藝中,每一通道之快閃記憶體擁有各自的映射結果而導致控制電路必須依序依據這些映射結果來執行位址映射的動作而耗費過多的效能與功率的問題,因此本發明另外於控制電路中為每個快閃記憶體設計一映射單元以執行位址映射的動作。請參考第2圖,映射單元200係為一硬體映射單元,設計來執行一接線式(hardwired)映射。
於初始化時,映射單元200會依據一映射結果來進行設定,接著,當指向於一缺陷區塊的一輸入位址被輸入映射單元200後,映射單元200即會依據該映射結果來將該輸入位址轉換為該缺陷區塊所對應之一置換區塊的位址,再將該置換區塊的位址輸入至快閃記憶體的位址輸入埠,因而完成位址映射。應當注意的是,若該輸入位址指向一良好區塊,則該輸入位址會被旁通(bypass)至快閃記憶體之位址輸入埠。透過這樣的映射單元,因此可以減少控制電路的工作負擔。另外,儘管上述內容將映射單元描述為設置於控制電路內,但若將任何源自本發明精神所設計之映射單元設置於控制電路外亦屬本發明的範疇。
基於上述實施例所建立的基礎,本發明所提供的方法可進一步歸納為以下步驟,並繪示於第3圖所示之流程中的步驟310~340。本發明方法所執行的流程依序可描述為:依據一儲存裝置之複數個儲存單元中無法正常操作之缺陷區塊來產生分別對應至該複數個儲存單元之複數個缺陷區塊列表;依據該複數個儲存單元中一第一儲存單元所對應之一缺陷區塊列表所指出之至少一缺陷區塊,將該複數個儲存單元中每一第二儲存單元中對應於該缺陷區塊且可正常操作之一良好區塊設定為一置換區塊;依據每一第二儲存單元之一缺陷區塊列表與每一置換區塊來產生相對應之一映射結果;以及依據該第一儲存單元所對應之該缺陷區塊列表與每一第二儲存單元所對應之該映射結果來存取該儲存裝置。
依據上述方法所揭露的精神與概念,本發明從而提供一種設置於快閃記憶體裝置中之控制電路,該控制電路按上述的缺陷區塊管理機制來進行快閃記憶體裝置(例如多通道固態硬碟機)的缺陷區塊管理。請參考第4圖,其係應用本發明控制電路之多通道固態硬碟機的實施示意圖。如圖所示,控制電路410設置於一多通道固態硬碟機400中,用以同時利用複數個存取通道491~494以對快閃記憶體401a、401b、401c以及401d進行資料存取操作。由於利用複數個存取通道來對儲存裝置進行資料寫入與讀取係為熟知本發明所屬技術領域之人所明瞭之資料分割技術的應用且亦非屬本發明之技術特徵所在,因此其詳細操作及原理在此便不多作贅述。再者,控制電路410包含有一處理單元420、一儲存單元430以及複數個錯誤校正碼處理單元442、444、446以及448,此外,複數個映射單元452、454、456以及458係分別設置於複數個錯誤校正碼處理單元442、444、446以及448中。基本上,任何寫入至快閃記憶體或讀取自快閃記憶體的資料都必須先經過錯誤校正碼處理單元的處理,因此第4圖所示之實施例便將映射單元整合於錯誤校正碼處理單元,然而依據本發明其它實施例,映射單元452、454、456以及458亦可設置於控制電路410內部的其他電路模組中或是設置於控制電路410之外。再者,映射單元452、454、456以及458的詳細操作與功能已於第2圖所代表的實施例中闡述過,在此便不贅述。
於多通道固態硬碟機400初始化時,處理單元420會分別檢查快閃記憶體401a、401b、401c以及401d之所有區塊是否能正常運作,以分別產生對應於快閃記憶體401a、401b、401c以及401d之缺陷區塊列表TE、TF、TG以及TH。通常來說,快閃記憶體401a、401b、401c以及401d於製造之初(亦即出廠時)就可能已帶有缺陷區塊,因此在每一區塊中的特定位置會被填入非0xff的值,用以指出該區塊為缺陷區塊。再者,多通道固態硬碟機400在實際使用的過程中,也會因為各種操作不當或快閃記憶體本身儲存單元先天上的有限存取次數而產生新的缺陷區塊,處理單元420會在特定位置標上非0xff的值。因此,處理單元420會檢查每一個區塊是否為缺陷區塊來產生缺陷區塊列表TE、TF、TG以及TH或者自快閃記憶體401a、401b、401c以及401d載入已產生的缺陷區塊列表TE、TF、TG以及TH,並且將缺陷區塊列表TE、TF、TG以及TH儲存於儲存單元430中。接著,處理單元420會依據缺陷區塊列表TE、TF、TG以及TH的資訊,選擇其中一缺陷區塊列表TE、TF、TG以及TH所對應之快閃記憶體的缺陷區塊狀態來作為上述發明內容中的映射結果產生基準。此處假設處理單元所選定的基準為快閃記憶體401b。
於此,處理單元420找出缺陷區塊列表TF所有的缺陷區塊,並依據這(些)缺陷區塊,將快閃記憶體401a、401c以及401d的對應於該(些)缺陷區塊且為可正常運作之良好區塊分別作為快閃記憶體401a、401c以及401d的置換區塊。請注意,此處所謂的區塊對應係源自於快閃記憶體401a、401b、401c以及401d間的冗餘關係。此外,若快閃記憶體401a、401c以及401d中對應於快閃記憶體401b之缺陷區塊的關聯區塊亦為缺陷區塊時,則其不會被使用來作為快閃記憶體401a、401c以及401d的置換區塊。當處理單元420依據缺陷區塊列表TF來分別決定出快閃記憶體401a、401c以及401d的置換區塊後,接著,處理單元420會再依據缺陷區塊列表TE、TG以及TH與每一置換區塊來分別產生相對應之映射結果ME、MG以及MH,其中,映射結果是指快閃記憶體中之缺陷區塊的位址與置換區塊之位址的映射關係,其可能以映射表(mapping table)的形式寫入儲存單元430中,因此,在不違背本發明方法的精神下,由處理單元420直接至儲存單元430讀取這些快閃記憶體的映射表以執行位址轉換亦是可行的。此外,於本實施例中,映射單元452、454、456以及458係透過接線式(hardwired)映射來進行置換區塊之實體位址與缺陷區塊之實體位址間的映射,然而,此非本發明之唯一限制,任何透過硬體手段來完成映射的技術皆應屬本發明之範疇。
簡言之,一快閃記憶體中的所有置換區塊,將會分別被對應到該快閃記憶體已存在的缺陷區塊,以產生該快閃記憶體之映射結果。最後,處理單元420將會依據映射結果ME、MG以及MH來分別設定映射單元452、456、458,使得之後的存取操作中不會存取到那些已存在的缺陷區塊,而是透過映射單元的幫助將資料儲存於相對應的置換區塊中。於本實施例中,由於映射單元的存在,使得處理單元420不用另外進行置換區塊與缺陷區塊間的位址轉換,因而得以減少處理單元420的工作負擔。當映射結果順利產生後,往後,多通道固態硬碟機400的資料存取便會由控制電路410參考儲存單元中的缺陷區塊列表F來執行。舉例來說,當資料寫入時,控制電路410接收到該資料的邏輯區塊位址(Logic Block Address,LBA)後,首先將其轉換為實體區塊位址,接著會參考缺陷區塊列表F來決定該實體區塊位址是否為可用的實體區塊位址(舉例來說,於第1圖代表的實施例中,區塊2與區塊5所對應的實體區塊位址就是不可用的),若為可用,則將該實體區塊位址指定給該邏輯區塊位址;否則的話,則另指定一實體區塊位址給該資料的邏輯區塊位址。接著,依據資料分割的原理,該資料的段落會被分別寫入至快閃記憶體401a、401b、401c以及401d中的良好區塊或是置換區塊,因此,處理單元420僅需依據快閃記憶體的缺陷區塊位址來發出一指定的實體區塊位址,映射單元接收該實體區塊位址會視情況進行位址映射以避免資料可能寫入到該實體區塊位址所指向的缺陷區塊。於資料讀取的時候,便透過實體區塊位址與邏輯區塊位址的關係來將資料分別自快閃記憶體401a、401b、401c以及401d取出。由於映射單元已經將快閃記憶體401a、401c以及401d的缺陷區塊利用置換區塊來取代,因此控制電路410在進行資料存取的時候,完全不需考慮快閃記憶體401a、401c以及401d的缺陷區塊,而僅需考慮快閃記憶體401b的缺陷區塊,並且避免將邏輯區塊位址指定至快閃記憶體401b的缺陷區塊的實體位址即可。
相較於先前技術的作法,本發明大幅減輕了處理單元的工作負擔,另一方面又避免快閃記憶體中無謂的儲存空間浪費,故對於採用資料分割技術之儲存裝置(例如多通道固態硬碟機)而言,本發明提供一個絕佳的缺陷區塊管理方法與相關控制電路。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100、400...多通道固態硬碟機
401a~401d...快閃記憶體
200、452~458...映射單元
310~340...步驟
410...控制電路
420...處理單元
430...儲存單元
442~448...錯誤校正碼處理單元
491~494...存取通道
第1圖係本發明方法的應用示意圖。
第2圖係本發明映射單元之實施例的示意圖。
第3圖係本發明方法之範例流程圖。
第4圖係應用本發明控制電路的固態硬碟機與本發明控制電路之實施例的示意圖。
400...多通道固態硬碟機
401a~401d...快閃記憶體
452~458...映射單元
410...控制電路
420...處理單元
430...儲存單元
442~448...錯誤校正碼處理單元
491~494...存取通道

Claims (14)

  1. 一種用以存取一儲存裝置的方法,該儲存裝置包含有複數個儲存單元分別對應複數個存取通道,每一儲存單元分別包含有複數個區塊,該複數個存取通道係於該儲存裝置進行一資料存取操作時同時動作,該複數個儲存單元包含有一第一儲存單元與至少一第二儲存單元,該方法包含有:依據該複數個儲存單元中無法正常操作之缺陷區塊(bad block)來產生分別對應至該複數個儲存單元之複數個缺陷區塊列表;依據該第一儲存單元所對應之一缺陷區塊列表所指出之至少一缺陷區塊,將每一第二儲存單元中對應於該缺陷區塊且可正常操作之一良好區塊(good block)設定為一置換區塊;依據每一第二儲存單元之一缺陷區塊列表與每一置換區塊來產生相對應之一映射結果;以及依據該第一儲存單元所對應之該缺陷區塊列表與每一第二儲存單元所對應之該映射結果來存取該儲存裝置。
  2. 如申請專利範圍第1項所述之方法,其中該儲存裝置係以資料分割方式(data striping)將資料儲存於該複數個儲存單元。
  3. 如申請專利範圍第1項所述之方法,其中依據每一第二儲存單元之該缺陷區塊列表與每一置換區塊來產生相對應之該映射結果的步驟包含有:將每一第二儲存單元中至少一缺陷區塊的位址映射至同一儲存單元中一置換區塊的位址以產生該映射結果。
  4. 如申請專利範圍第3項所述之方法,其中每一第二儲存單元中之該缺陷區塊的位址係透過一接線式(hardwired)映射方式而映射至同一儲存單元中之該置換區塊的位址。
  5. 如申請專利範圍第1項所述之方法,其中每一儲存單元係為一非揮發性記憶體。
  6. 如申請專利範圍第5項所述之方法,其中該非揮發性記憶體係為一快閃記憶體。
  7. 如申請專利範圍第1項所述之方法,其中該儲存裝置係為一多通道固態硬碟機(multi-channel solid state drive)。
  8. 一種用於存取一儲存裝置之控制電路,該儲存裝置包含有複數個儲存單元分別對應複數個存取通道,每一儲存單元分別包含有複數個區塊,該複數個存取通道係於該儲存裝置進行一資料存取操作時同時動作,該複數個儲存單元包含有一第一儲存單元與至少一第二儲存單元,該控制電路包含有:一處理單元,依據該複數個儲存單元中無法正常操作之缺陷區塊(bad block)來產生分別對應至該複數個儲存單元之複數個缺陷區塊列表;依據該第一儲存單元所對應之一缺陷區塊列表所指出之至少一缺陷區塊,將每一第二儲存單元中對應於該缺陷區塊且可正常操作之一良好區塊(good block)設定為一置換區塊;依據每一第二儲存單元之一缺陷區塊列表與每一置換區塊來產生相對應之一映射結果;一儲存單元,耦接於該處理單元,係用以儲存該第一儲存單元之該缺陷區塊列表;以及複數個映射單元,分別耦接於該處理單元以及該複數個儲存單元,用以依據該複數個映射結果進行以相對應之設定,其中該控制電路係利用該複數個映射單元與儲存於該儲存單元之該第一儲存單元所對應之該缺陷區塊列表來存取該複數個儲存單元。
  9. 如申請專利範圍第8項所述之控制電路,其中該控制電路係以資料分割方式(data striping)將資料儲存於該複數個儲存單元。
  10. 如申請專利範圍第8項所述之控制電路,其中該控制電路將每一第二儲存單元中至少一缺陷區塊的位址映射至同一儲存單元中一置換區塊的位址以產生該映射結果。
  11. 如申請專利範圍第10項所述之控制電路,其中該複數個映射單元係透過一接線式(hardwired)映射方式而將每一第二儲存單元中之該缺陷區塊的位址而映射至同一儲存單元中之該置換區塊的位址。
  12. 如申請專利範圍第8項所述之控制電路,其中該控制電路所控制之儲存單元係為非揮發性記憶體。
  13. 如申請專利範圍第12項所述之控制電路,其中該控制電路所控制之非揮發性記憶體係為快閃記憶體。
  14. 如申請專利範圍第8項所述之控制電路,其中該控制電路所控制之該儲存裝置係為一多通道固態硬碟機(multi-channel solid state drive)。
TW098112304A 2009-04-14 2009-04-14 存取儲存裝置的方法及相關控制電路 TWI408689B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098112304A TWI408689B (zh) 2009-04-14 2009-04-14 存取儲存裝置的方法及相關控制電路
US12/641,330 US20100262764A1 (en) 2009-04-14 2009-12-18 Method for accessing storage apparatus and related control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098112304A TWI408689B (zh) 2009-04-14 2009-04-14 存取儲存裝置的方法及相關控制電路

Publications (2)

Publication Number Publication Date
TW201037717A TW201037717A (en) 2010-10-16
TWI408689B true TWI408689B (zh) 2013-09-11

Family

ID=42935245

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098112304A TWI408689B (zh) 2009-04-14 2009-04-14 存取儲存裝置的方法及相關控制電路

Country Status (2)

Country Link
US (1) US20100262764A1 (zh)
TW (1) TWI408689B (zh)

Families Citing this family (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442833B1 (en) * 2010-07-20 2016-09-13 Qualcomm Incorporated Managing device identity
US8423730B2 (en) * 2010-07-27 2013-04-16 Qualcomm Innovation Center, Inc. Method and apparatus for supporting diverse memory access schemes
TWI519166B (zh) * 2012-10-31 2016-01-21 晶睿通訊股份有限公司 影像錄製系統、裝置與錄影時的資料存取方法
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
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
US11102298B1 (en) 2015-05-26 2021-08-24 Pure Storage, Inc. Locally providing cloud storage services for fleet management
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
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
US10021170B2 (en) 2015-05-29 2018-07-10 Pure Storage, Inc. Managing a storage array using client-side services
US11503031B1 (en) 2015-05-29 2022-11-15 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
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
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
US11625181B1 (en) 2015-08-24 2023-04-11 Pure Storage, Inc. Data tiering using snapshots
US11294588B1 (en) 2015-08-24 2022-04-05 Pure Storage, Inc. Placing data within a storage device
US10198194B2 (en) 2015-08-24 2019-02-05 Pure Storage, Inc. Placing data within a storage device of a flash array
US11385797B2 (en) 2015-10-05 2022-07-12 Micron Technology, Inc. Solid state storage device with variable logical capacity based on memory lifecycle
US10514978B1 (en) 2015-10-23 2019-12-24 Pure Storage, Inc. Automatic deployment of corrective measures for storage arrays
US9384082B1 (en) 2015-10-23 2016-07-05 Pure Storage, Inc. Proactively providing corrective measures for storage arrays
US11360844B1 (en) 2015-10-23 2022-06-14 Pure Storage, Inc. Recovery of a container storage provider
US10284232B2 (en) 2015-10-28 2019-05-07 Pure Storage, Inc. Dynamic error processing in a storage device
US10374868B2 (en) 2015-10-29 2019-08-06 Pure Storage, Inc. Distributed command processing in a flash storage system
US9740414B2 (en) 2015-10-29 2017-08-22 Pure Storage, Inc. Optimizing copy operations
US10353777B2 (en) 2015-10-30 2019-07-16 Pure Storage, Inc. Ensuring crash-safe forward progress of a system configuration update
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
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
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
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
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
US11886922B2 (en) 2016-09-07 2024-01-30 Pure Storage, Inc. Scheduling input/output operations for 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
US11960348B2 (en) 2016-09-07 2024-04-16 Pure Storage, Inc. Cloud-based monitoring of hardware components in a fleet of storage systems
US11481261B1 (en) 2016-09-07 2022-10-25 Pure Storage, Inc. Preventing extended latency in a storage system
US10908966B1 (en) 2016-09-07 2021-02-02 Pure Storage, Inc. Adapting target service times in a storage system
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
US11531577B1 (en) 2016-09-07 2022-12-20 Pure Storage, Inc. Temporarily limiting access to a storage device
US10146585B2 (en) 2016-09-07 2018-12-04 Pure Storage, Inc. Ensuring the fair utilization of system resources using workload based, time-independent scheduling
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
US10162566B2 (en) 2016-11-22 2018-12-25 Pure Storage, Inc. Accumulating application-level statistics in a storage system
US11620075B2 (en) 2016-11-22 2023-04-04 Pure Storage, Inc. Providing application aware storage
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
US11340800B1 (en) 2017-01-19 2022-05-24 Pure Storage, Inc. Content masking in a storage system
US10503700B1 (en) 2017-01-19 2019-12-10 Pure Storage, Inc. On-demand content filtering of snapshots within 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
US10503427B2 (en) 2017-03-10 2019-12-10 Pure Storage, Inc. Synchronously replicating datasets and other managed objects to cloud-based storage systems
US10454810B1 (en) 2017-03-10 2019-10-22 Pure Storage, Inc. Managing host definitions across a plurality of storage systems
US11442825B2 (en) 2017-03-10 2022-09-13 Pure Storage, Inc. Establishing a synchronous replication relationship between two or more storage systems
US11089105B1 (en) 2017-12-14 2021-08-10 Pure Storage, Inc. Synchronously replicating datasets in cloud-based storage systems
US11675520B2 (en) 2017-03-10 2023-06-13 Pure Storage, Inc. Application replication among storage systems synchronously replicating a dataset
US11803453B1 (en) 2017-03-10 2023-10-31 Pure Storage, Inc. Using host connectivity states to avoid queuing I/O requests
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
US11169727B1 (en) 2017-03-10 2021-11-09 Pure Storage, Inc. Synchronous replication between storage systems with virtualized storage
US11941279B2 (en) 2017-03-10 2024-03-26 Pure Storage, Inc. Data path virtualization
KR102409760B1 (ko) * 2017-03-17 2022-06-17 에스케이하이닉스 주식회사 메모리 시스템
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
US10552090B2 (en) 2017-09-07 2020-02-04 Pure Storage, Inc. Solid state drives with multiple types of addressable memory
US10853148B1 (en) 2017-06-12 2020-12-01 Pure Storage, Inc. Migrating workloads between a plurality of execution environments
WO2018231350A1 (en) 2017-06-12 2018-12-20 Pure Storage, Inc. Accessible fast durable storage integrated into a bulk storage device
US10884636B1 (en) 2017-06-12 2021-01-05 Pure Storage, Inc. Presenting workload performance in a storage system
US11210133B1 (en) 2017-06-12 2021-12-28 Pure Storage, Inc. Workload mobility between disparate execution environments
US11016824B1 (en) 2017-06-12 2021-05-25 Pure Storage, Inc. Event identification with out-of-order reporting in a cloud-based environment
US10976962B2 (en) 2018-03-15 2021-04-13 Pure Storage, Inc. Servicing I/O operations in a cloud-based storage system
US11609718B1 (en) 2017-06-12 2023-03-21 Pure Storage, Inc. Identifying valid data after a storage system recovery
US11989429B1 (en) 2017-06-12 2024-05-21 Pure Storage, Inc. Recommending changes to a storage system
US10613791B2 (en) 2017-06-12 2020-04-07 Pure Storage, Inc. Portable snapshot replication between storage systems
US11340939B1 (en) 2017-06-12 2022-05-24 Pure Storage, Inc. Application-aware analytics for storage systems
US11422731B1 (en) 2017-06-12 2022-08-23 Pure Storage, Inc. Metadata-based replication of a dataset
US11442669B1 (en) 2018-03-15 2022-09-13 Pure Storage, Inc. Orchestrating a virtual storage system
US10417092B2 (en) 2017-09-07 2019-09-17 Pure Storage, Inc. Incremental RAID stripe update parity calculation
US20180357017A1 (en) 2017-06-12 2018-12-13 Pure Storage, Inc. Accessible fast durable storage integrated into a bulk storage device
US11592991B2 (en) 2017-09-07 2023-02-28 Pure Storage, Inc. Converting raid data between persistent storage types
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
US11861423B1 (en) 2017-10-19 2024-01-02 Pure Storage, Inc. Accelerating artificial intelligence (‘AI’) workflows
US10360214B2 (en) 2017-10-19 2019-07-23 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
US10671434B1 (en) 2017-10-19 2020-06-02 Pure Storage, Inc. Storage based artificial intelligence infrastructure
US10452444B1 (en) 2017-10-19 2019-10-22 Pure Storage, Inc. Storage system with compute resources and shared storage resources
US11455168B1 (en) 2017-10-19 2022-09-27 Pure Storage, Inc. Batch building for deep learning training workloads
US11494692B1 (en) 2018-03-26 2022-11-08 Pure Storage, Inc. Hyperscale artificial intelligence and machine learning 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
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
US10671494B1 (en) 2017-11-01 2020-06-02 Pure Storage, Inc. Consistent selection of replicated datasets during storage system recovery
US10467107B1 (en) 2017-11-01 2019-11-05 Pure Storage, Inc. Maintaining metadata resiliency among storage device failures
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
US10936238B2 (en) 2017-11-28 2021-03-02 Pure Storage, Inc. Hybrid data tiering
US10990282B1 (en) 2017-11-28 2021-04-27 Pure Storage, Inc. Hybrid data tiering with cloud storage
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
US10942650B1 (en) 2018-03-05 2021-03-09 Pure Storage, Inc. Reporting capacity utilization in a storage system
US11150834B1 (en) 2018-03-05 2021-10-19 Pure Storage, Inc. Determining storage consumption in a storage system
US10521151B1 (en) 2018-03-05 2019-12-31 Pure Storage, Inc. Determining effective space utilization in a storage system
US11861170B2 (en) 2018-03-05 2024-01-02 Pure Storage, Inc. Sizing resources for a replication target
US11972134B2 (en) 2018-03-05 2024-04-30 Pure Storage, Inc. Resource utilization using normalized input/output (‘I/O’) operations
US10296258B1 (en) 2018-03-09 2019-05-21 Pure Storage, Inc. Offloading data storage to a decentralized storage network
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
US10917471B1 (en) 2018-03-15 2021-02-09 Pure Storage, Inc. Active membership in 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
US11392553B1 (en) 2018-04-24 2022-07-19 Pure Storage, Inc. Remote data management
US11436344B1 (en) 2018-04-24 2022-09-06 Pure Storage, Inc. Secure encryption in deduplication cluster
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
US11128578B2 (en) 2018-05-21 2021-09-21 Pure Storage, Inc. Switching between mediator services for a storage system
US11675503B1 (en) 2018-05-21 2023-06-13 Pure Storage, Inc. Role-based data access
US10871922B2 (en) 2018-05-22 2020-12-22 Pure Storage, Inc. Integrated storage management between storage systems and container orchestrators
US11403000B1 (en) 2018-07-20 2022-08-02 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11416298B1 (en) 2018-07-20 2022-08-16 Pure Storage, Inc. Providing application-specific storage by a storage system
US11632360B1 (en) 2018-07-24 2023-04-18 Pure Storage, Inc. Remote access to a storage device
US11954238B1 (en) 2018-07-24 2024-04-09 Pure Storage, Inc. Role-based access control for a storage system
US11146564B1 (en) 2018-07-24 2021-10-12 Pure Storage, Inc. Login authentication in a cloud storage platform
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
US12026381B2 (en) 2018-10-26 2024-07-02 Pure Storage, Inc. Preserving identities and policies across replication
US10963189B1 (en) 2018-11-18 2021-03-30 Pure Storage, Inc. Coalescing write operations in a cloud-based storage system
US12026060B1 (en) 2018-11-18 2024-07-02 Pure Storage, Inc. Reverting between codified states in a cloud-based storage system
US12026061B1 (en) 2018-11-18 2024-07-02 Pure Storage, Inc. Restoring a cloud-based storage system to a selected state
US11340837B1 (en) 2018-11-18 2022-05-24 Pure Storage, Inc. Storage system management via a remote console
US11379254B1 (en) 2018-11-18 2022-07-05 Pure Storage, Inc. Dynamic configuration of 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
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
US11861221B1 (en) 2019-07-18 2024-01-02 Pure Storage, Inc. Providing scalable and reliable container-based storage services
US11526408B2 (en) 2019-07-18 2022-12-13 Pure Storage, Inc. Data recovery in a virtual storage system
US11093139B1 (en) 2019-07-18 2021-08-17 Pure Storage, Inc. Durably storing data within a virtual storage system
US11797197B1 (en) 2019-07-18 2023-10-24 Pure Storage, Inc. Dynamic scaling of 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
US12045252B2 (en) 2019-09-13 2024-07-23 Pure Storage, Inc. Providing quality of service (QoS) for replicating datasets
US11360689B1 (en) 2019-09-13 2022-06-14 Pure Storage, Inc. Cloning a tracking copy of replica data
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
US11868318B1 (en) 2019-12-06 2024-01-09 Pure Storage, Inc. End-to-end encryption in a storage system with multi-tenancy
US11733901B1 (en) 2020-01-13 2023-08-22 Pure Storage, Inc. Providing persistent storage to transient cloud computing services
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
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
US12038881B2 (en) 2020-03-25 2024-07-16 Pure Storage, Inc. Replica transitions for file storage
US11630598B1 (en) 2020-04-06 2023-04-18 Pure Storage, Inc. Scheduling data replication operations
US11301152B1 (en) 2020-04-06 2022-04-12 Pure Storage, Inc. Intelligently moving data between storage systems
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
US11442652B1 (en) 2020-07-23 2022-09-13 Pure Storage, Inc. Replication handling during storage system transportation
US11349917B2 (en) 2020-07-23 2022-05-31 Pure Storage, Inc. Replication handling among distinct networks
CN112558863B (zh) * 2020-11-25 2023-02-14 成都佰维存储科技有限公司 Ssd坏块替换方法、装置、可读存储介质及电子设备
CN112527201B (zh) * 2020-12-11 2022-08-09 成都佰维存储科技有限公司 Ssd坏块替换方法、装置、可读存储介质及电子设备
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
US11914867B2 (en) 2021-10-29 2024-02-27 Pure Storage, Inc. Coordinated snapshots among storage systems implementing a promotion/demotion model
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
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

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6427186B1 (en) * 1999-03-30 2002-07-30 Frank (Fong-Long) Lin Memory, interface system and method for mapping logical block numbers to physical sector numbers in a flash memory, using a master index table and a table of physical sector numbers
US20080082860A1 (en) * 2003-12-25 2008-04-03 Matsushita Electric Industrial Co., Ltd. Information processing apparatus for performing a system boot by using programs stored in a non-volatile storage device
TW200820259A (en) * 2006-10-25 2008-05-01 Samsung Electronics Co Ltd Hybrid flash memory device and method for assigning reserved blocks thereof
TW200844999A (en) * 2006-10-12 2008-11-16 Sandisk Corp Non-volatile memory with worst-case control data management and methods therefor
TW200903516A (en) * 2007-05-17 2009-01-16 Samsung Electronics Co Ltd Non-volatile memory devices and systems including bad blocks address re-mapped and methods of operating the same
US7506098B2 (en) * 2006-06-08 2009-03-17 Bitmicro Networks, Inc. Optimized placement policy for solid state storage devices

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4498426B2 (ja) * 2008-03-01 2010-07-07 株式会社東芝 メモリシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6427186B1 (en) * 1999-03-30 2002-07-30 Frank (Fong-Long) Lin Memory, interface system and method for mapping logical block numbers to physical sector numbers in a flash memory, using a master index table and a table of physical sector numbers
US20080082860A1 (en) * 2003-12-25 2008-04-03 Matsushita Electric Industrial Co., Ltd. Information processing apparatus for performing a system boot by using programs stored in a non-volatile storage device
US7506098B2 (en) * 2006-06-08 2009-03-17 Bitmicro Networks, Inc. Optimized placement policy for solid state storage devices
TW200844999A (en) * 2006-10-12 2008-11-16 Sandisk Corp Non-volatile memory with worst-case control data management and methods therefor
TW200820259A (en) * 2006-10-25 2008-05-01 Samsung Electronics Co Ltd Hybrid flash memory device and method for assigning reserved blocks thereof
TW200903516A (en) * 2007-05-17 2009-01-16 Samsung Electronics Co Ltd Non-volatile memory devices and systems including bad blocks address re-mapped and methods of operating the same

Also Published As

Publication number Publication date
TW201037717A (en) 2010-10-16
US20100262764A1 (en) 2010-10-14

Similar Documents

Publication Publication Date Title
TWI408689B (zh) 存取儲存裝置的方法及相關控制電路
US8606987B2 (en) Data writing method for flash memory and controller using the same
US8001356B2 (en) Methods and apparatus for reallocating addressable spaces within memory devices
JP5996838B2 (ja) メモリリマップ情報を記憶する不揮発性メモリ
US8001317B2 (en) Data writing method for non-volatile memory and controller using the same
US8510502B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
US20170039141A1 (en) Mapping table updating method, memory storage device and memory control circuit unit
US20130227246A1 (en) Management information generating method, logical block constructing method, and semiconductor memory device
US20090198875A1 (en) Data writing method for flash memory, and controller and system using the same
WO2009096180A1 (ja) メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
US10303367B2 (en) Mapping table updating method without updating the first mapping information, memory control circuit unit and memory storage device
JP2006048893A (ja) 不良ブロック管理機能を有するフラッシュメモリ装置及びフラッシュメモリ装置の不良ブロック管理方法
US20060047889A1 (en) Memory device and controlling method for nonvolatile memory
US11036429B2 (en) Memory control method, memory storage device and memory control circuit unit to determine a source block using interleaving information
US9965400B2 (en) Memory management method, memory control circuit unit and memory storage device
US11163694B2 (en) Memory control method, memory storage device and memory control circuit unit
TWI457755B (zh) 資料寫入方法、記憶體控制器與儲存裝置
US8943289B2 (en) Data moving method for flash memory module, and memory controller and memory storage apparatus using the same
CN112051971B (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
US8738847B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
US20210064284A1 (en) Memory control method, memory storage device and memory control circuit unit
CN112394883B (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
US8832358B2 (en) Data writing method, memory controller and memory storage apparatus
CN101866319B (zh) 存取储存装置的方法及相关控制电路
TW202026884A (zh) 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元