TWI645289B - 資料儲存裝置以及非揮發式記憶體操作方法 - Google Patents

資料儲存裝置以及非揮發式記憶體操作方法 Download PDF

Info

Publication number
TWI645289B
TWI645289B TW106137606A TW106137606A TWI645289B TW I645289 B TWI645289 B TW I645289B TW 106137606 A TW106137606 A TW 106137606A TW 106137606 A TW106137606 A TW 106137606A TW I645289 B TWI645289 B TW I645289B
Authority
TW
Taiwan
Prior art keywords
volatile memory
host
cache area
microprocessor
storage device
Prior art date
Application number
TW106137606A
Other languages
English (en)
Other versions
TW201918886A (zh
Inventor
張明宏
彭芳儀
Original Assignee
慧榮科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 慧榮科技股份有限公司 filed Critical 慧榮科技股份有限公司
Priority to TW106137606A priority Critical patent/TWI645289B/zh
Priority to CN201810007284.5A priority patent/CN109726138B/zh
Priority to US16/117,115 priority patent/US10761982B2/en
Application granted granted Critical
Publication of TWI645289B publication Critical patent/TWI645289B/zh
Publication of TW201918886A publication Critical patent/TW201918886A/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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile 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/60Details of cache memory
    • G06F2212/608Details relating to cache mapping
    • 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/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

高效的資料儲存裝置,其中以一微處理器以及至少一揮發式記憶體操作一非揮發式記憶體。微處理器於揮發式記憶體上規劃一快取區。根據主機下達的一非同步事件要求,微處理器以該快取區收集主機下達的複數筆寫入資料,使上述複數筆寫入資料係集合自該快取區程式化至非揮發式記憶體,且程式化錯誤係由該微處理器以一非同步事件要求完成信息回報該主機。

Description

資料儲存裝置以及非揮發式記憶體操作方法
本發明係有關於資料儲存裝置以及其中非揮發式記憶體的操作方法。
非揮發式記憶體有多種形式-例如,快閃記憶體(flash memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectric RAM)、電阻式隨機存取記憶體(Resistive RAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM,STT-RAM)…等,用於長時間資料保存。一非揮發式記憶體可與一控制器結合成一資料儲存裝置,由一主機操作。
為了使非揮發式記憶體上儲存單元的損耗平均,非揮發式記憶體的物理空間係動態配置使用。非揮發式記憶體之物理空間係動態配置對應主機端識別用的邏輯位址。邏輯位址以及物理空間之間的對應關係需以映射表管理。資料成功寫入非揮發式記憶體與否需被及時回報,以確保映射表上的資訊正確。但頻繁回報寫入狀況有可能拖累非揮發式記憶體操作效能。
根據本案一種實施方式所實現的一資料儲存裝置 包括一非揮發式記憶體以及一控制器。該控制器包括一微處理器以及至少一揮發式記憶體,用以操作該非揮發式記憶體。該微處理器於上述揮發式記憶體上規劃一快取區。根據一主機下達的一非同步事件要求,該微處理器以該快取區收集該主機下達的複數筆寫入資料,使上述複數筆寫入資料係集合自該快取區程式化至該非揮發式記憶體,且程式化錯誤係由該微處理器以一非同步事件要求完成信息回報該主機。
根據本案一種實施方式實現的一種非揮發式記憶體操作方法,包括:提供至少一揮發式記憶體;於上述揮發式記憶體上規劃一快取區;令一主機發出一非同步事件要求;且根據該非同步事件要求,以該快取區收集該主機下達的複數筆寫入資料,使上述複數筆寫入資料係集合自該快取區程式化至一非揮發式記憶體,且程式化錯誤係以一非同步事件要求完成信息回報該主機。
下文特舉實施例,並配合所附圖示,詳細說明本發明內容。
100‧‧‧資料儲存裝置
102‧‧‧快閃記憶體
104‧‧‧控制器
106‧‧‧主機
112‧‧‧微處理器
114‧‧‧靜態隨機存取記憶體(SRAM)
116‧‧‧動態隨機存取記憶體(DRAM)
118‧‧‧快取區
120‧‧‧錯誤日誌
FTL‧‧‧快閃記憶體轉換層
NFC‧‧‧非及閘快閃記憶體控制器
NVMe‧‧‧非揮發式記憶體快速介面
S302...S320‧‧‧步驟
第1圖為方塊圖,圖解根據本案一種實施方式所實現的一資料儲存裝置100;第2圖根據本案一種實施方式圖解一種開放通道架構;以及第3A、3B圖為流程圖,圖解主機106如何寫入資料至快閃記憶體102。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
非揮發式記憶體可以是快閃記憶體(flash memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectrie RAM)、電阻式記憶體(Resistive RAM,RRAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM,STT-RAM)…等,提供長時間資料保存之儲存媒體,可用於實現資料儲存裝置、或應用於數據中心。以下特別以快閃記憶體(flash memory)為例進行討論。
現今資料儲存裝置常以快閃記憶體為儲存媒體,用來實現記憶卡(memory card)、通用序列匯流排閃存裝置(USB flash device)、固態硬碟(SSD)...等產品。有一種應用是採多晶片封裝、將快閃記憶體與其控制器包裝在一起-稱為嵌入式快閃記憶體模組(如eMMC)。
以快閃記憶體為儲存媒體的資料儲存裝置可應用於多種電子裝置中。所述電子裝置包括智慧型手機、穿戴裝置、平板電腦、虛擬實境設備…等。電子裝置的運算模塊可視為一主機(host),操作所使用的資料儲存裝置,以存取其中快閃記憶體。儲存媒體與主機兩者採用相同的通信介面或通信協定以進行指令或資料的交換或傳送。
快閃記憶體實現的儲存媒體也可用於建構數據中心。例如,伺服器可操作固態硬碟(SSD)陣列形成數據中心。 伺服器即可視為一主機(host),操作所連結之固態硬碟,以存取其中快閃記憶體。
主機(host)端是以邏輯位址(例如,邏輯區塊位址LBA或全域主機頁編號GHP…等)區別快閃記憶體儲存內容。快閃記憶體之儲存空間一般劃分為複數個區塊(blocks),各區塊包括複數頁(pages),各頁可更劃分為複數個儲存單元。為了最佳化使用快閃記憶體,快閃記憶體之物理空間係動態配置對應主機所識別的邏輯位址。邏輯位址以及物理空間之間的對應關係需以L2P映射表管理。
快閃記憶體多種操作都需參考、或可能牽動映射表內容。例如,快閃記憶體之讀取需要參考映射表,快閃記憶體之寫入則需更新映射表。特別是,快閃記憶體儲存空間需以區塊為單位進行抹除(erase)後方能再次使用。由於各區塊可承受的抹除次數有上限,快閃記憶體之操作有抹寫平均(wear leveling)議題需要考量。另外,舊資料更新並非同空間複寫。更新數據寫入閒置空間後,舊空間內容將被標為無效。一區塊可能零星留存有效資料,故垃圾回收(garbage collection)需求相應產生。一區塊中留存的零星有效資料可經垃圾回收技術搬移到閒置空間,使得徒留無效資料的區塊得以被抹除再利用。上述抹寫平均以及垃圾回收技術,都涉及映射表管理。甚至,其他促進快閃記憶體操作效能的技術,也都有可能與映射表相關。如何確保映射表上的資訊正確,又不因映射表維護拖累效能,為本技術領域重要議題。
第1圖為方塊圖,圖解根據本案一種實施方式所實 現的一資料儲存裝置100。資料儲存裝置100包括一快閃記憶體102以及一控制器104。一主機106可連結該資料儲存裝置100,通過該控制器104存取該快閃記憶體102。
控制器104包括一微處理器112、一靜態隨機存取記憶體(SRAM)114、以及一動態隨機存取記憶體(DRAM)116。靜態隨機存取記憶體(SRAM)114以及動態隨機存取記憶體(DRAM)116不限定是否與微處理器112結合於同一封裝內,且可以其他儲存媒體代替。另外,靜態隨機存取記憶體(SRAM)114可提供動態隨機存取記憶體(DRAM)116所提供的功能,在此設定下,資料儲存裝置100可不具有動態隨機存取記憶體(DRAM)116。
為了達到本案的目的,在本案中微處理器112係利用靜態隨機存取記憶體114記錄自主機106所輸入的一非同步事件要求(Asynchronous Event Request,簡稱AER),用以監控來自於主機106的存取指令的執行結果,例如,監控自於主機106的寫入指令執行的執行結果。微處理器112更在該動態隨機存取記憶體(DRAM)116上規劃一快取區118並儲存一錯誤日誌120。微處理器112將寫入指令所對應的寫入資料先儲存於該快取區118,而非立即將寫入資料編程(儲存)至快閃記憶體102。待一特定條件滿足時,再從該快取區118取出寫入資料並將寫入資料編程至該快閃記憶體102。
若寫入資料編程至該快閃記憶體102時有錯誤(失敗)發生,微處理器112以一非同步事件要求(AER)完成信息回報主機106,並將編程失敗等訊息記錄於AER完成信息中。當 主機106收到並解析AER完成信息後,再由主機106針對此編程失敗執行適當的錯誤處理機制。在上述的設定下,主機106不需耗費時間等待各筆寫入指令的執行結果,使寫入指令的延遲(latency)有效地降低,達到加速資料寫入的目的。其中,AER與AER完成信息較佳為一對一對應,而AER較佳涵蓋至少一寫入指令,AER完成信息較佳為編程失敗發生時才產生。
此外,微處理器112會將快閃記憶體102編程失敗之細節記錄至該錯誤日誌120,以列出究竟是哪筆寫入資料沒有成功地編程至快閃記憶體102。主機106可更向微處理器112提出錯誤日誌120回報要求,令微處理器112回報(回傳)該錯誤日誌120至主機106。
一種實施方式中,快取區118是動態隨機存取記憶體(DRAM)116的常態給電區(Always-On Region)。若斷電事件發生,快取區118內容不會掉失。復電後,尚未編程該些筆寫入資料仍可自快取區118編程至該快閃記憶體102。
一種實施方式中,當斷電事件發生時,微處理器112執行快取快沖(Cache Flushing)程序,將快取區118內未尚完成編程程序的寫入資料編程至預設區塊。待復電後,微處理器112再讀取預設區塊中的寫入資料並將寫入資料編程至快取區118。
第2圖根據本案一種實施方式圖解一種開放通道(Open Channel)架構。如圖所示,主機106採用一非揮發式記憶體快速介面NVMe的通信協定與控制器104通訊。控制器104與快閃記憶體102電性連接並由控制器104的快閃記憶體控制器 (NAND Flash Controller,NFC)控制快閃記憶體102的運作。在開放通道架構中L2P映射表的管理是由主機106的一快閃記憶體轉換層(Flash Translation Layer,標號FTL)負責,因此,來自主機106的寫入指令包括寫入資料及指定物理位址。
本案有效地在L2P映射表及時更新以及加速資料寫入之間取得平衡。上述非同步事件要求(AER)可定義於該非揮發式記憶體快速介面NVMe,而編程失敗的訊息可定義於AER完成信息中。主機106透過非揮發式記憶體快速介面NVMe對控制器104發出上述非同步事件要求(AER),用以加速寫入指令的執行以及監視編程的結果。另外,控制器104較佳將寫入資料的資料量累積至一預設量,例如:16KB,即一頁的資料儲存量,或64KB,即一超級頁(由4個區塊的一頁所虛擬而成)的資料儲存量,之後再將累積的寫入資料編程至快閃記憶體102以增加編程的效率。當編程失敗時,控制器104藉由AER完成信息以告知主機106發生了編程失敗的事件,由主機106執行後續的錯誤管理。
主機106於發出AER之後,可一口氣下達複數筆寫入指令至控制器104,再藉由解析來自於控制器104的AER完成信息而得知這些寫入指令是否成功地執行。如果有編程錯誤發生時,再從控制器104取得錯誤日誌120,並啟動錯誤管理機制,例如,輸出另一寫入指令,要求控制器104將寫入資料編程至另一指定物理位址,並令快閃記憶體轉換層FTL更新L2P映射表。如此在主機106端進行映射表管理的開放通道架構特別顯現本案技術優勢。
第3A、3B圖為流程圖,圖解主機106如何進行資料寫入的管理。步驟S302,主機106發出上述非同步事件要求(AER)至控制器104,微處理器112將該非同步事件要求(AER)標記在靜態隨機存取記憶體114中,之後,控制器104可利用AER完成信息回報編程失敗的事件。
步驟S304,主機106下達一筆寫入指令微處理器112,其中,一筆寫入指令可包括至少一筆寫入資料以及至少一個指定物理位址,每一寫入資料對應至一個指定物理位址,其中,指定物理位址較佳指向資料儲存裝置100中的一儲存單元、一頁或一超級頁。
步驟306,微處理器112以快取區118收集寫入指令的寫入資料及指定物理位址。
步驟S308,微處理器112回報主機106寫入指令已執行成功(收集於快取區118)或確收信息,使得主機106可以繼續其他操作。
步驟S310,微處理器112計算快取區118所累積的資料量是否超過預設量,例如:16KB,即一頁的資料儲存量,如果否則流程回到步驟S304,處理主機106所下達的另一筆寫入指令。相反地,若累積的資料量超過預設量,則流程進行第3B圖步驟。
參閱第3B圖,步驟S312中,微處理器112將預設量的寫入資料編程至快閃記憶體102中的指定物理位址。微處理器112自快取區118中取出預設量的寫入資料,例如4筆4KB大小的寫入資料,並將這些寫入資料編程至快閃記憶體102中的4個 指定物理位址,其中,此4個指定物理位址較佳為相鄰或置於同一頁中。
步驟S314,微處理器112判斷是否產生編程失敗的事件,如果有則執行步驟S316,微處理器112將編程失敗的事件記錄至AER完成信息,並回傳AER完成信息至主機106。
步驟S318,主機106要求微處理器112回傳錯誤日誌120。主機106接收並解析AER完成信息後可得知發生了編程失敗的事件,為了得到更進一步的資訊,主機106要求微處理器112回傳錯誤日誌120。當收到回傳錯誤日誌120時,微處理器112將產生錯誤日誌120,並將產生編程失敗的寫入資料所對應的指令辨識碼記錄至該錯誤日誌120,或將產生編程失敗的寫入資料所對應的指定物理位址記錄至該錯誤日誌120。在另一實施例中,微處理器112可於步驟S316(而非步驟S318)中主動產生錯誤日誌120。
步驟S320,微處理器112將錯誤日誌120傳遞給主機106。之後,主機106啟動錯誤管理機制,例如,主機106輸出另一寫入指令至微處理器112並要求將產生編程失敗的寫入資料編程至另一指定物理位址,並更新L2P映射表。
在步驟S314,若微處理器112判斷沒有編程失敗的事件時則執行步驟S304,處理主機106下達的另一筆寫入指令。
另外,指令傳送的方式有許多種,第一種為直接傳送,例如:主機106傳送至微處理器112或由微處理器112傳送至主機106,另一種為間接傳送,由主機106將指令推疊至提交佇列(Submission Queue)中,再通知微處理器112至提交佇列 中取得指令;當指令執行完成後,微處理器112將完成元件(Completion Element)推疊至完成佇列(Completion Queue)中,再通知主機106至完成佇列中取得完成元件,確認指令的執行。使用者可依其需求而採用直接傳送或間接傳送的指令傳送的方式。
舉凡根據主機下達的命令,統一收集寫入資料、再程式化至非揮發式記憶體,使程式化狀況得以集中回報主機的技術,都屬於本案所欲保護的範圍。基於以上技術內容,本案更涉及非揮發式記憶體操作方法。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (18)

  1. 一種資料儲存裝置,包括:一非揮發式記憶體;以及一控制器,包括一微處理器以及至少一揮發式記憶體,用以操作該非揮發式記憶體;其中:該微處理器於上述揮發式記憶體上規劃一快取區;根據一主機下達的一非同步事件要求,該微處理器以該快取區收集該主機下達的複數筆寫入資料,其中每將該主機下達的一筆寫入資料交由該快取區收集,該微處理器即回報該主機一執行成功信息;且該微處理器使上述複數筆寫入資料係集合自該快取區程式化至該非揮發式記憶體,且程式化錯誤係由該微處理器以一非同步事件要求完成信息回報該主機。
  2. 如申請專利範圍第1項所述之資料儲存裝置,其中:收集於該快取區的上述複數筆寫入資料超出一預設量時,該微處理器通知該主機發出一程式化指令;且該微處理器係根據該程式化指令將該快取區收集的上述複數筆寫入資料集合自該快取區程式化至該非揮發式記憶體。
  3. 如申請專利範圍第2項所述之資料儲存裝置,其中:將該快取區收集的上述複數筆寫入資料集合自該快取區程式化至該非揮發式記憶體時,該微處理器更於上述揮發式記憶體上規畫一錯誤日誌,記載程式化錯誤的細節。
  4. 如申請專利範圍第3項所述之資料儲存裝置,其中: 該微處理器是根據該主機之要求將該錯誤日誌自上述揮發式記憶體取出,傳遞給該主機。
  5. 如申請專利範圍第4項所述之資料儲存裝置,其中:根據該非同步事件要求完成信息,該主機要求將該錯誤日誌自上述揮發式記憶體取出。
  6. 如申請專利範圍第3項所述之資料儲存裝置,其中:該非揮發式記憶體為一快閃記憶體;該主機更指示各筆寫入資料的一寫入目標,指示該快閃記憶體上的頁空間;且該錯誤日誌記載該非揮發式記憶體上程式化失敗的頁。
  7. 如申請專利範圍第6項所述之資料儲存裝置,其中:該快閃記憶體與該主機之間的一映射表由該主機上一快閃記憶體轉換層管理。
  8. 如申請專利範圍第1項所述之資料儲存裝置,其中:該快取區為常態給電區。
  9. 如申請專利範圍第1項所述之資料儲存裝置,其中:該微處理器是將該主機下達的該非同步事件要求標記於上述揮發式記憶體。
  10. 一種非揮發式記憶體操作方法,包括:提供至少一揮發式記憶體;於上述揮發式記憶體上規劃一快取區;令一主機發出一非同步事件要求; 根據該非同步事件要求,以該快取區收集該主機下達的複數筆寫入資料,其中每將該主機下達的一筆寫入資料交由該快取區收集,即回報該主機一執行成功信息;且使上述複數筆寫入資料係集合自該快取區程式化至一非揮發式記憶體,且程式化錯誤係以一非同步事件要求完成信息回報該主機。
  11. 如申請專利範圍第10項所述之非揮發式記憶體操作方法,更包括:收集於該快取區的上述複數筆寫入資料超出一預設量時,通知該主機發出一程式化指令;以及根據該程式化指令將該快取區收集的上述複數筆寫入資料集合自該快取區程式化至該非揮發式記憶體。
  12. 如申請專利範圍第11項所述之非揮發式記憶體操作方法,更包括:將該快取區收集的上述複數筆寫入資料集合自該快取區程式化至該非揮發式記憶體時,更於上述揮發式記憶體上規畫一錯誤日誌,記載程式化錯誤的細節。
  13. 如申請專利範圍第12項所述之非揮發式記憶體操作方法,更包括:根據該主機之要求將該錯誤日誌自上述揮發式記憶體取出,傳遞給該主機。
  14. 如申請專利範圍第13項所述之非揮發式記憶體操作方法,其中: 根據該非同步事件要求完成信息,該主機要求將該錯誤日誌自上述揮發式記憶體取出。
  15. 如申請專利範圍第12項所述之非揮發式記憶體操作方法,其中:該非揮發式記憶體為一快閃記憶體;該主機更指示各筆寫入資料的一寫入目標,指示該快閃記憶體上的頁空間;且該錯誤日誌記載該非揮發式記憶體上程式化失敗的頁。
  16. 如申請專利範圍第15項所述之非揮發式記憶體操作方法,其中:該快閃記憶體與該主機之間的一映射表由該主機上一快閃記憶體轉換層管理。
  17. 如申請專利範圍第10項所述之非揮發式記憶體操作方法,其中:該快取區為常態給電區。
  18. 如申請專利範圍第10項所述之非揮發式記憶體操作方法,更包括:將該主機下達的該非同步事件要求標記於上述揮發式記憶體。
TW106137606A 2017-10-31 2017-10-31 資料儲存裝置以及非揮發式記憶體操作方法 TWI645289B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW106137606A TWI645289B (zh) 2017-10-31 2017-10-31 資料儲存裝置以及非揮發式記憶體操作方法
CN201810007284.5A CN109726138B (zh) 2017-10-31 2018-01-04 数据储存装置以及非挥发式存储器操作方法
US16/117,115 US10761982B2 (en) 2017-10-31 2018-08-30 Data storage device and method for operating non-volatile memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106137606A TWI645289B (zh) 2017-10-31 2017-10-31 資料儲存裝置以及非揮發式記憶體操作方法

Publications (2)

Publication Number Publication Date
TWI645289B true TWI645289B (zh) 2018-12-21
TW201918886A TW201918886A (zh) 2019-05-16

Family

ID=65432202

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106137606A TWI645289B (zh) 2017-10-31 2017-10-31 資料儲存裝置以及非揮發式記憶體操作方法

Country Status (3)

Country Link
US (1) US10761982B2 (zh)
CN (1) CN109726138B (zh)
TW (1) TWI645289B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710187A (zh) * 2018-12-24 2019-05-03 深圳忆联信息系统有限公司 NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质
CN111858228A (zh) * 2019-04-26 2020-10-30 三星电子株式会社 用于存储装置中的加速内核的状态监测的方法及系统

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7074454B2 (ja) * 2017-10-30 2022-05-24 キオクシア株式会社 計算機システムおよび制御方法
JP7074453B2 (ja) 2017-10-30 2022-05-24 キオクシア株式会社 メモリシステムおよび制御方法
TWI645289B (zh) * 2017-10-31 2018-12-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體操作方法
KR20190082513A (ko) * 2018-01-02 2019-07-10 에스케이하이닉스 주식회사 컨트롤러 및 그것의 동작방법
US10877693B2 (en) * 2018-06-29 2020-12-29 Intel Corporation Architecture for dynamic transformation of memory configuration
DE102019205214A1 (de) * 2019-04-11 2020-10-15 Robert Bosch Gmbh Multimediagerät, Multimediaanordnung mit dem Multimediagerät und Verfahren zur Übertragung eines optischen Codes mit der Multimediaanordnung
CN111913892B (zh) * 2019-05-09 2021-12-07 北京忆芯科技有限公司 使用cmb提供开放通道存储设备
CN111625199B (zh) * 2020-05-28 2023-07-04 深圳忆联信息系统有限公司 提升固态硬盘数据通路可靠性的方法、装置、计算机设备及存储介质
US20230350574A1 (en) * 2022-04-27 2023-11-02 Micron Technology, Inc. Error Logging for a Memory Device with On-Die Wear Leveling

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140215129A1 (en) * 2013-01-28 2014-07-31 Radian Memory Systems, LLC Cooperative flash memory control
TW201510722A (zh) * 2009-09-03 2015-03-16 Pioneer Chip Technology Ltd 以頁面為基礎管理快閃儲存裝置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0630499A4 (en) * 1992-03-09 1996-07-24 Auspex Systems Inc ACCELERATION SYSTEM WITH NON-VOLATILE, PROTECTED, WRITABLE RAM CACHE.
US6418510B1 (en) * 2000-09-14 2002-07-09 International Business Machines Corporation Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD)
US20080133654A1 (en) * 2006-12-01 2008-06-05 Chei-Yol Kim Network block device using network asynchronous i/o
CN101661431B (zh) * 2008-08-29 2011-11-09 群联电子股份有限公司 用于快闪存储器的区块管理方法、快闪储存系统及控制器
EP2374054A1 (en) * 2008-12-04 2011-10-12 Hitachi, Ltd. Storage system having volatile memory and non-volatile memory
US8365020B2 (en) * 2010-03-18 2013-01-29 Red Hat Israel, Ltd. Mechanism for saving crash dump files of a virtual machine on a designated disk
JP5520747B2 (ja) * 2010-08-25 2014-06-11 株式会社日立製作所 キャッシュを搭載した情報装置及びコンピュータ読み取り可能な記憶媒体
US8589730B2 (en) * 2010-08-31 2013-11-19 Apple Inc. Handling errors during device bootup from a non-volatile memory
CN101950261B (zh) * 2010-09-09 2013-12-04 中兴通讯股份有限公司 数据存储与鉴权并行的处理方法和终端
US8874680B1 (en) * 2011-11-03 2014-10-28 Netapp, Inc. Interconnect delivery process
US9304937B2 (en) * 2013-10-23 2016-04-05 Netapp Inc. Atomic write operations for storage devices
US9459810B2 (en) * 2013-12-30 2016-10-04 Sandisk Technologies Llc Storage module and method for configuring command attributes
US9727439B2 (en) * 2014-05-28 2017-08-08 Vmware, Inc. Tracking application deployment errors via cloud logs
US9563382B2 (en) * 2014-06-05 2017-02-07 Sandisk Technologies Llc Methods, systems, and computer readable media for providing flexible host memory buffer
US9836108B2 (en) * 2014-09-10 2017-12-05 Toshiba Memory Corporation Memory system and controller
US20160094339A1 (en) * 2014-09-30 2016-03-31 Sandisk Technologies Inc. Scrambling schemes for scrambling and descrambling data
US9740617B2 (en) * 2014-12-23 2017-08-22 Intel Corporation Hardware apparatuses and methods to control cache line coherence
CN104809075B (zh) * 2015-04-20 2017-09-12 电子科技大学 一种存取实时并行处理的固态记录装置及方法
US20170125070A1 (en) * 2015-10-29 2017-05-04 Sandisk Technologies Inc. System and method for hibernation using a delta generator engine
US9996477B2 (en) * 2016-09-14 2018-06-12 Western Digital Technologies, Inc. Asynchronous drive telemetry data notification
US10685121B2 (en) * 2017-10-17 2020-06-16 Quanta Computer Inc. Secure environment examination
TWI645289B (zh) * 2017-10-31 2018-12-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體操作方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201510722A (zh) * 2009-09-03 2015-03-16 Pioneer Chip Technology Ltd 以頁面為基礎管理快閃儲存裝置
US20140215129A1 (en) * 2013-01-28 2014-07-31 Radian Memory Systems, LLC Cooperative flash memory control

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710187A (zh) * 2018-12-24 2019-05-03 深圳忆联信息系统有限公司 NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质
CN109710187B (zh) * 2018-12-24 2022-12-02 深圳忆联信息系统有限公司 NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质
CN111858228A (zh) * 2019-04-26 2020-10-30 三星电子株式会社 用于存储装置中的加速内核的状态监测的方法及系统
CN111858228B (zh) * 2019-04-26 2023-02-03 三星电子株式会社 用于存储装置中的加速内核的状态监测的方法及系统

Also Published As

Publication number Publication date
US10761982B2 (en) 2020-09-01
TW201918886A (zh) 2019-05-16
CN109726138A (zh) 2019-05-07
CN109726138B (zh) 2022-11-11
US20190129850A1 (en) 2019-05-02

Similar Documents

Publication Publication Date Title
TWI645289B (zh) 資料儲存裝置以及非揮發式記憶體操作方法
US10817415B2 (en) Data storage device and method including device or controller-based space allocation and host-based mapping table searching
TWI661307B (zh) 資料儲存裝置、主機裝置、以及資料寫入方法
TWI691839B (zh) 資料管理方法
US20140032820A1 (en) Data storage apparatus, memory control method and electronic device with data storage apparatus
JP2013061799A (ja) 記憶装置、記憶装置の制御方法およびコントローラ
US20150212937A1 (en) Storage translation layer
US10459803B2 (en) Method for management tables recovery
CN110196684A (zh) 数据存储装置、其操作方法以及具有其的存储系统
TWI718709B (zh) 資料儲存裝置以及非揮發式記憶體控制方法
US10528285B2 (en) Data storage device and method for operating non-volatile memory
DE112020005044T5 (de) Zonenanhang-befehlsplanung basierend auf zonenzustand
TWI714975B (zh) 資料儲存裝置以及非揮發式記憶體控制方法
CN112130750A (zh) 数据储存装置以及非挥发式存储器控制方法
WO2018041258A1 (zh) 去分配命令处理的方法与存储设备
TWI724483B (zh) 資料儲存裝置以及非揮發式記憶體控制方法
TWI723581B (zh) 資料儲存裝置以及非揮發式記憶體控制方法
JP2013196155A (ja) メモリシステム
CN112579328A (zh) 处理编程出错的方法与存储设备
CN112578993A (zh) 多平面nvm处理编程出错的方法与存储设备
CN111857818A (zh) 存储器系统和通过该存储器系统执行命令操作的方法
KR20190066918A (ko) 반도체 장치
US11914900B2 (en) Storage system and method for early command cancelation
CN118140205A (zh) 用于早期命令取消的存储系统和方法
KR20210063814A (ko) 메모리 시스템의 리드 동작 방법 및 장치