TW201839613A - 數據儲存裝置及其操作方法 - Google Patents

數據儲存裝置及其操作方法 Download PDF

Info

Publication number
TW201839613A
TW201839613A TW106135847A TW106135847A TW201839613A TW 201839613 A TW201839613 A TW 201839613A TW 106135847 A TW106135847 A TW 106135847A TW 106135847 A TW106135847 A TW 106135847A TW 201839613 A TW201839613 A TW 201839613A
Authority
TW
Taiwan
Prior art keywords
address
unmapped
mapping
request
data storage
Prior art date
Application number
TW106135847A
Other languages
English (en)
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 南韓商愛思開海力士有限公司
Publication of TW201839613A publication Critical patent/TW201839613A/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/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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
    • 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/202Non-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/65Details of virtual memory and virtual address translation
    • G06F2212/657Virtual address space management
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本發明公開了一種數據儲存裝置的操作方法,該數據儲存裝置使用包括臨時儲存數據的緩衝記憶塊的非揮發性記憶體裝置作爲儲存介質,該方法包括:從主機裝置接收請求擦除取消映射位址的取消映射請求;將取消映射位址和指示取消映射位址被取消映射的標記資訊儲存在緩衝記憶塊的第一空頁面中;以及在與緩衝記憶塊的第一空頁面相對應的實體到邏輯(P2L)映射中,映射取消映射位址並標記指示取消映射位址被取消映射的標記資訊。

Description

數據儲存裝置及其操作方法
各個實施例總體關於一種使用非揮發性記憶體裝置作爲儲存介質的數據儲存裝置。
近來,計算機環境的範例已經變成普適計算,使得可隨時隨地使用計算機系統。由於該事實,諸如行動電話、數位相機和筆記型電腦的便携式電子裝置的使用已經迅速增加。通常,便携式電子裝置使用數據儲存裝置,該數據儲存裝置使用記憶體裝置。數據儲存裝置用於儲存在便携式電子裝置中使用的數據。
使用記憶體裝置的數據儲存裝置由於其不包括機械驅動單元而具有優異的穩定性和持久性。此外,使用記憶體裝置的數據儲存裝置的優點在於它可以更快地存取數據且消耗更少的電力。具有這種優點的數據儲存裝置的非限制性示例包括通用串行匯流排(USB)記憶體裝置、具有各種介面的記憶卡、通用快閃儲存(UFS)裝置和固態磁碟(SSD)。
本申請要求於2017年4月28日提交的申請號爲10-2017-0055583的韓國申請的優先權,其全文透過引用並入本文。
各個實施例關於一種能夠有效地處理主機裝置的取消映射請求的數據儲存裝置及其操作方法。
在實施例中,一種使用包括臨時儲存數據的緩衝記憶塊的非揮發性記憶體裝置的數據儲存裝置的操作方法可以包括:從主機裝置接收請求擦除取消映射位址的取消映射請求;將取消映射位址和指示取消映射位址被取消映射的標記資訊儲存在緩衝記憶塊的第一空頁面中;以及在與緩衝記憶塊的第一空頁面相對應的實體到邏輯(P2L)映射中,映射取消映射位址並標記指示取消映射位址被取消映射的標記資訊。
在實施例中,數據儲存裝置可以包括:非揮發性記憶體裝置,其包括臨時儲存數據的緩衝記憶塊;隨機存取記憶體,其適於儲存映射非揮發性記憶體裝置的實體位址和從主機裝置提供的邏輯位址的實體到邏輯(P2L)映射;以及控制單元,其適於基於P2L映射更新邏輯到實體(L2P)映射,並且刷新非揮發性記憶體裝置中的L2P映射,其中,根據請求擦除取消映射位址的主機裝置的取消映射請求,控制單元將取消映射位址和指示取消映射位址被取消映射的標記資訊儲存在緩衝記憶塊的第一空頁面中,並且在與其中儲存取消映射位址的緩衝記憶塊的第一空頁面相對應的P2L映射中,映射取消映射位址並標記指示取消映射位址被取消映射的標記資訊。
根據實施例,數據儲存裝置可以有效地處理主機裝置的取消映射請求,並且穩定地儲存位址映射資訊。
在本發明中,在結合附圖閱讀以下示例性實施例後,優點、特徵及實現它們的方法將變得更加顯而易見。然而,本發明可以不同的形式來體現,並且不應被理解爲限於本文所闡述的實施例。相反,提供這些實施例以詳細地描述本發明,達到本發明所屬技術領域中具有通常知識者可容易地實施本發明的技術構思的程度。
本文中應當理解,本發明的實施例不限於附圖中所示的細節,並且附圖不一定按比例繪製,並且在一些實例中,比例可能被誇大以更清楚地描繪本發明的某些特徵。當本文使用特定術語時,應當理解,本文使用的術語僅用於描述特定實施例的目的,並不旨在限定本發明的範圍。
如本文所使用的,術語“和/或”包括相關所列項目中的一個或多個的任何和所有組合。應當理解,當一個元件被稱爲在另一個元件“上”、“被連接到”或“被聯接至”另一個元件時,它可以直接在另一個元件上、被連接到或被聯接至另一個元件,或者可以存在中間元件。除非上下文另有明確指示,否則如本文所使用的,單數形式也旨在包括複數形式。將進一步理解,當在本說明書中使用術語“包括”和/或“包括有”時,其說明存在至少一個所述特徵、步驟、操作和/或元件,但不排除存在或添加一個或多個其它特徵、步驟、操作和/或其元件。
在下文中,將參照附圖透過各個實施例的示例描述數據儲存裝置及其操作方法。
圖1是說明根據實施例的數據儲存裝置100的示例表示的方塊圖。參照圖1,數據儲存裝置100可以儲存有待被諸如行動電話、MP3播放器、筆記型電腦、桌上型電腦、游戲機、電視(TV)、車載資訊娛樂系統等的主機裝置400存取的數據。數據儲存裝置100可被稱爲記憶體系統。
數據儲存裝置100可根據表示關於主機裝置400的傳輸協定的主機介面HIF用各種類型的儲存裝置中的任何一種來實現。例如,數據儲存裝置100可以用諸如以下的各種類型的儲存裝置中的任何一種來實現:固態磁碟(SSD),諸如MMC、eMMC、RS-MMC和微型-MMC的多媒體卡,諸如SD、迷你-SD和微型-SD的保全數位卡,通用串行匯流排(USB)儲存裝置,通用快閃儲存(UFS)裝置,個人計算機記憶卡國際協會(PCMCIA)卡型儲存裝置,外圍組件互連(PCI)卡型儲存裝置,高速PCI(PCI-e)卡型儲存裝置,標準快閃儲存(CF)卡,智慧媒體卡,記憶棒等。
數據儲存裝置100可用各種封裝類型中的任何一種來實現。例如,數據儲存裝置100可被製造成諸如以下的各種封裝類型中的任何一種:堆疊封裝(POP)、系統封裝(SIP)、系統晶片(SOC)、多晶片封裝(MCP)、板上晶片(COB)、晶片級製造封裝(WFP)和晶片級堆疊封裝(WSP)。
數據儲存裝置100可以包括控制器200和非揮發性記憶體裝置300。控制器200可以包括主機介面單元210、控制單元220、隨機存取記憶體230以及記憶體控制單元240。
主機介面單元210可接合主機裝置400和數據儲存裝置100。例如,主機介面單元210可以透過使用主機介面HIF,即諸如以下的標準傳輸協定中的任何一個,與主機裝置400通信:通用串行匯流排(USB)、通用快閃儲存(UFS)、多媒體卡(MMC)、並行高級技術附件(PATA)、串行高級技術附件(SATA)、小型計算機系統介面(SCSI)、串列SCSI(SAS)、外圍組件互連(PCI)和高速PCI(PCI-e)協定。
控制單元220可以由微控制單元(MCU)或中央處理單元(CPU)來配置。控制單元220可以處理從主機裝置400接收的請求。爲了處理請求,控制單元220可以驅動加載在隨機存取記憶體230中的碼類型的指令或算法(即,軟體),並且可以控制內部功能塊或非揮發性記憶體裝置300。
隨機存取記憶體230可以由諸如動態隨機存取記憶體(DRAM)或靜態隨機存取記憶體(SRAM)的隨機存取記憶體來配置。隨機存取記憶體230可以儲存待被控制單元220驅動的軟體。此外,隨機存取記憶體230可以儲存驅動軟體所必需的數據。也就是說,隨機存取記憶體230可以作爲控制單元220的工作記憶體來操作。
隨機存取記憶體230可臨時儲存待從主機裝置400傳輸到非揮發性記憶體裝置300或從非揮發性記憶體裝置300傳輸到主機裝置400的數據。也就是說,隨機存取記憶體230可以作爲數據緩衝記憶體或數據高速緩衝記憶體來操作。
記憶體控制單元240可以根據控制單元220的控制來控制非揮發性記憶體裝置300。記憶體控制單元240也可被稱爲記憶體介面單元。記憶體控制單元240可以向非揮發性記憶體裝置300提供控制信號。控制信號可以包括用於控制非揮發性記憶體裝置300的命令、位址、控制信號等。記憶體控制單元240可以向非揮發性記憶體裝置300提供數據或者可以被提供來自非揮發性記憶體裝置300的數據。
非揮發性記憶體裝置300可以透過通道CH與控制器200聯接,通道CH包括能夠傳輸命令、位址、控制信號和數據的至少一條信號線。非揮發性記憶體裝置300可以用作數據儲存裝置100的儲存介質。
非揮發性記憶體裝置300可以由諸如以下的各種類型的非揮發性記憶體裝置中的任何一種來配置:NAND快閃記憶體裝置、NOR快閃記憶體裝置、使用鐵電電容器的鐵電隨機存取記憶體(FRAM)、使用穿隧磁阻(TMR)層的磁性隨機存取記憶體(MRAM)、使用硫族化合物合金的相變隨機存取記憶體(PCRAM)和使用過渡金屬氧化物的電阻式隨機存取記憶體(RRAM或ReRAM)。
非揮發性記憶體裝置300可以包括記憶體單元區域310。從可操作觀點或實體(或結構)觀點,包括在記憶體單元區域310中的記憶體單元可以被配置成分層記憶體單元集或記憶體單元組。例如,聯接到相同字線並且同時待被讀取和寫入或編程的記憶體單元可以被配置爲頁面P。在下面的描述中,被配置爲頁面P的記憶體單元將被稱爲“頁面”。另外,同時待被擦除的記憶體單元可以被配置爲記憶塊B。記憶體單元區域310可以包括多個記憶塊B1至Bm,並且記憶塊B1至Bm中的每一個可以包括多個頁面P1至Pn。
記憶塊B1至Bm可以透過控制單元220被用作緩衝塊和/或數據塊。緩衝塊可以被定義爲在根據主機裝置400的寫入請求的數據被寫入數據塊中之前臨時被使用的記憶塊。緩衝塊可以被稱爲記錄塊或開放塊。數據塊可以被定義爲其中被寫入緩衝塊中的數據最終被寫入的記憶塊。
圖2是說明根據實施例的實體到邏輯(P2L)映射的簡圖的示例表示。圖3是說明根據實施例的邏輯到實體(L2P)映射的簡圖的示例表示。作爲示例,圖2和圖3中示出了各自包括五個頁面P1至P5的記憶塊B1和B2。
當圖2所示的主機裝置400存取數據儲存裝置100,例如,向數據儲存裝置100傳送請求時,主機裝置400可以向數據儲存裝置100提供邏輯位址。數據儲存裝置100可以將提供的邏輯位址轉換或轉變爲非揮發性記憶體裝置300的實體位址,並透過參考轉換的實體位址來處理主機裝置400的請求。
對於這樣的位址轉換操作,數據儲存裝置100可以生成並管理位址映射資訊(即,位址映射)。位址映射可以包括圖2所示的P2L映射和圖3所示的L2P映射。
參照圖2,P2L映射可以基於實體位址來生成。也就是說,P2L映射可以透過使用實體位址PADD作爲索引IDX來生成。P2L映射可以包括關於與索引IDX相對應的邏輯位址LADD的資訊。
另外,P2L映射可以包括與邏輯位址LADD相對應的標記資訊FLAG。標記資訊FLAG可以指示是否存在對對應的邏輯位址LADD的取消映射請求。也就是說,標記資訊FLAG可以指示對應的邏輯位址LADD是被映射還是被取消映射。例如,被標記爲映射MP的標記資訊FLAG可以表示對應的邏輯位址LADD被映射。又如,被標記爲取消映射UNM的標記資訊FLAG可以表示對應的邏輯位址LADD被取消映射。
參照圖3,L2P映射可以基於邏輯位址來生成。即,L2P映射可以透過使用邏輯位址LADD例如邏輯塊位址1(LBA1)到LBA5作爲索引IDX來生成。L2P映射可以包括關於與索引IDX相對應的實體位址PADD的資訊。
參照圖2和圖3,P2L映射和L2P映射可以具有相同的位址映射資訊。也就是說,透過參考P2L映射獲得的位址映射資訊和透過參考L2P映射獲得的位址映射資訊可以彼此相同。爲了匹配P2L映射和L2P映射,L2P映射可以基於P2L映射進行更新。
圖4是說明根據實施例的數據儲存裝置100處理主機裝置400的取消映射請求的操作的簡圖的示例表示。圖5是說明根據實施例的當主機裝置400的取消映射請求被處理時,緩衝塊和實體到邏輯(P2L)映射被改變的進程的簡圖的示例表示。作爲示例,示出包括緩衝塊BB以及數據塊DB1和DB2的數據儲存裝置100,緩衝塊BB以及數據塊DB1和DB2中的每一個包括五個頁面P1至P5。
主機裝置400可以請求數據儲存裝置100擦除某個邏輯位址或映射到某個邏輯位址的實體位址。爲此,主機裝置400可以向數據儲存裝置100傳送取消映射請求。取消映射請求可以包括取消映射命令和待被取消映射的邏輯位址,在下文中被稱爲取消映射位址。數據儲存裝置100可以根據取消映射請求在位址映射(即,P2L映射和L2P映射)中將取消映射位址取消映射。
由於用於匹配P2L映射和L2P映射的更新位址映射的操作可以包括比較P2L映射和L2P映射的操作、在非揮發性記憶體裝置300中刷新或備份L2P映射的操作以及用於管理L2P映射的更新諸如L2P映射的位置資訊的元資訊的操作,因此可能消耗大量的資源,並且可能需要很長時間。
因此,數據儲存裝置100可以透過將主機裝置400的取消映射請求劃分爲主要取消映射處理和次要取消映射處理來逐步地處理主機裝置400的取消映射請求。也就是說,數據儲存裝置100可以優先地在P2L映射中將取消映射位址取消映射。然後,數據儲存裝置100可以在需要更新L2P映射的時間點最終在L2P映射中將取消映射位址取消映射。
如圖4和圖5所示,作爲示例,描述了一種狀態,在該狀態下,根據主機裝置400的寫入請求,第九邏輯位址LBA9被映射到第二數據塊DB2的第五頁面P5,並且生成L2P映射。此外,作爲示例,描述了一種狀態,在該狀態下,第一邏輯位址LBA1被映射到緩衝塊BB的第一頁面P1,第二邏輯位址LBA2被映射到緩衝塊BB的第二頁面P2,並且生成P2L映射。在這些狀態下,如果從主機裝置400接收到對第九邏輯位址LBA9的取消映射請求RQ_UNM,則第九邏輯位址LBA9可以優先在P2L映射中被取消映射。
例如,參照圖5,取消映射位址LBA9和被標記爲取消映射UNM的標記資訊FLAG可以儲存在緩衝塊BB的空頁面P3中。即使數據DT沒有被寫入,取消映射位址LBA9也可以與請求寫入的邏輯位址LBA1和LBA2類似地被映射到緩衝塊BB的第三頁面P3並被寫入緩衝塊BB的第三頁面P3中。
在取消映射位址LBA9的取消映射被寫入緩衝塊BB中之後,取消映射位址LBA9可以在P2L映射中被取消映射。即,在與緩衝塊BB的第三頁面P3相對應的P2L映射中,取消映射位址LBA9可以被映射,並且標記資訊FLAG可以被標記爲取消映射UNM以指示取消映射位址LBA9被取消映射。
P2L映射可以被載入隨機存取記憶體230中,並被控制單元220參考。如果電源關閉,則載入隨機存取記憶體230中的P2L映射可能丟失。爲了防止P2L映射由於諸如突然斷電的異常斷電而丟失,取消映射位址LBA9可以寫入緩衝塊BB和P2L映射兩者中,並且當從突然斷電恢復時,可以透過參考緩衝塊BB來重建取消映射位址LBA9。
再次參照圖4,在取消映射位址LBA9優先在P2L映射中被取消映射之後,在需要更新L2P映射的時間點,取消映射位址LBA9可以最終在L2P映射中被取消映射。需要更新L2P映射的時間點可以指用於匹配P2L映射和L2P映射的周期性位址映射更新操作被執行的時間點。需要更新L2P映射的時間點可以指應主機裝置400的請求的緩衝塊BB的映射完成的時間點(即,緩衝塊BB的所有頁面被寫入的時間點)。可替代地,需要更新L2P映射的時間點可以指數據儲存裝置100從突然斷電恢復的時間。
當透過反射P2L映射來更新L2P映射時,可以從L2P映射擦除映射到第二數據塊DB2的第五頁面P5的取消映射位址LBA9。例如,當L2P映射被更新時,可以從L2P映射擦除映射到取消映射位址LBA9的實體位址DB2/P5的資訊。
圖6是說明根據實施例的數據儲存裝置100處理主機裝置400的取消映射請求的操作的簡圖的示例表示。圖7是說明根據實施例的當主機裝置的取消映射請求被處理時,緩衝塊和實體到邏輯(P2L)映射被改變的進程的簡圖的示例表示。作爲示例,示出了包括緩衝塊BB以及數據塊DB1和DB2的數據儲存裝置100,緩衝塊BB以及數據塊DB1和DB2中的每一個包括五個頁面P1至P5。
如圖6和圖7所示,作爲示例,描述了一種狀態,在該狀態下,根據主機裝置400的寫入請求,第一邏輯位址LBA1被映射到緩衝塊BB的第一頁面P1,第二邏輯位址LBA2被映射到緩衝塊BB的第二頁面P2並且生成P2L映射。在該狀態下,如果從主機裝置400接收到對第二邏輯位址LBA2的取消映射請求RQ_UNM,則第二邏輯位址LBA2可以優先在P2L映射中被取消映射。
例如,參照圖7,取消映射位址LBA2和被標記爲取消映射UNM的標記資訊FLAG可以被儲存在緩衝塊BB的空頁面P3中。即使數據DT沒有被寫入,但取消映射位址LBA2也可以像請求寫入的邏輯位址LBA1一樣被映射到緩衝塊BB的第三頁面P3並被寫入緩衝塊BB的第三頁面P3中。
在取消映射位址LBA2的取消映射被寫入緩衝塊BB中之後,取消映射位址LBA2可以在P2L映射中被取消映射。即,在與緩衝塊BB的第三頁面P3相對應的P2L映射中,取消映射位址LBA2可以被映射,並且標記資訊FLAG可以被標記爲取消映射UNM以指示取消映射位址LBA2被取消映射。在這種情況下,爲了確保先前被映射到取消映射位址LBA2的緩衝塊BB的第二頁面P2不被參考,在取消映射請求之前被映射的取消映射位址LBA2的映射資訊係為無效。
再次參照圖6,在取消映射位址LBA2優先在P2L映射中被取消映射之後,在需要更新L2P映射的時間點,取消映射位址LBA2可以最終在L2P映射中被取消映射。由於取消映射位址LBA2僅透過P2L映射已經被映射,所以在L2P映射中僅更新第一邏輯位址LBA1。
在更新L2P映射之前,可以從主機裝置400接收對取消映射位址的讀取請求或寫入請求。在這種情況下,下面將參照圖8至圖10來描述數據儲存裝置100的請求處理方法。
圖8是說明根據實施例的用於處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的讀取請求的方法的簡圖的示例表示。作爲示例,主機裝置400傳送對上面參照圖5描述的取消映射位址LBA9的讀取請求。
當從主機裝置400接收到對邏輯位址LBA9的讀取請求時,數據儲存裝置100可以檢索邏輯位址LBA9是否在P2L映射中被命中。如果透過參考標記資訊FLAG確定邏輯位址LBA9被取消映射,則數據儲存裝置100可以傳送取消映射響應。例如,數據儲存裝置100可以向主機裝置400傳送具有與主機裝置400相符的特定模式的數據作爲取消映射響應。再如,數據儲存裝置100可以向主機裝置400傳送取消映射響應,以通知請求讀取的邏輯位址LBA9處於被取消映射的狀態。
圖9是說明根據實施例的用於處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的取消映射請求的方法的簡圖的示例表示。作爲示例,主機裝置400傳送對如上參照圖7所述的取消映射位址LBA2的取消映射請求。
當再次從主機裝置400接收到對已經被取消映射的邏輯位址LBA2的取消映射請求時,取消映射位址LBA2和被標記爲取消映射UNM的標記資訊FLAG可以被儲存在緩衝塊BB的空頁面P4中。即使數據DT沒有被寫入,取消映射位址LBA2也可以與請求寫入的邏輯位址LBA1類似地被映射到緩衝塊BB的第四頁面P4並被寫入緩衝塊BB的第四頁面P4中。
在取消映射位址LBA2的取消映射被寫入緩衝塊BB中之後,取消映射位址LBA2可以在P2L映射中被取消映射。即,在與緩衝塊BB的第四頁面P4相對應的P2L映射中,取消映射位址LBA2可以被映射,並且標記資訊FLAG可以被標記爲取消映射UNM以指示取消映射位址LBA2被取消映射。在這種情況下,在當前取消映射請求之前被映射的取消映射位址LBA2的所有映射資訊係為無效。
圖10是說明根據實施例的用於處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的寫入請求的方法的簡圖的示例表示。作爲示例,主機裝置400傳送對如上參照圖7所述的取消映射位址LBA2的寫入請求。
當從主機裝置400接收到對已經被取消映射的邏輯位址LBA2的寫入請求時,請求寫入的第二邏輯位址LBA2、被標記爲映射MP的標記資訊FLAG和請求寫入的數據DT可以被儲存在緩衝塊BB的空頁面,即第四頁面P4中。
在新的映射資訊和數據被儲存在緩衝塊BB中之後,第二邏輯位址LBA2可以在P2L映射中被映射。也就是說,在與緩衝塊BB的第四頁面P4相對應的P2L映射中,第二邏輯位址LBA2可以被映射,並且用於指示第二邏輯位址LBA2未被取消映射的標記資訊FLAG可以被標記。在這種情況下,在當前寫入請求之前被映射的第二邏輯位址LBA2的所有映射資訊係為無效。
圖11是說明根據實施例的包括固態磁碟(SSD)的數據處理系統1000的示例表示的簡圖。參照圖11,數據處理系統1000可以包括主機裝置1100和SSD 1200。
SSD 1200可以包括控制器1210,緩衝記憶體裝置1220,非揮發性記憶體裝置1231至123n中的至少一個,電源1240,信號連接器1250和電源連接器1260。
控制器1210可以控制SSD 1200的一般操作。控制器1210可以包括主機介面單元1211、控制單元1212、隨機存取記憶體1213、錯誤校正碼(ECC)單元1214和記憶體介面單元1215。
主機介面單元1211可以透過信號連接器1250與主機裝置1100交換信號SGL。信號SGL可以包括命令、位址、數據等。主機介面單元1211可以根據主機裝置1100的協定來接合主機裝置1100和SSD 1200。例如,主機介面單元1211可以透過諸如以下的標準介面協定中的任意一個與主機裝置1100通信:保全數位(secure digital)、通用串行匯流排(USB)、多媒體卡(MMC)、嵌入式MMC(eMMC)、個人計算機記憶卡國際協會(PCMCIA)、並行高級技術附件(PATA)、串行高級技術附件(SATA)、小型計算機系統介面(SCSI)、串列SCSI(SAS)、外圍組件互連(PCI)、高速PCI(PCI-e)和通用快閃儲存(UFS)。
控制單元1212可以分析和處理從主機裝置1100接收的信號SGL。控制單元1212可以根據用於驅動SSD 1200的韌體或軟體來控制內部功能塊的操作。隨機存取記憶體1213可以用作驅動該韌體或軟體的工作記憶體。
ECC單元1214可以生成待被傳輸到非揮發性記憶體裝置1231至123n中的至少一個的數據的校驗數據。生成的校驗數據可以與數據一起被儲存在非揮發性記憶體裝置1231至123n中。ECC單元1214可以基於校驗數據來檢測從非揮發性記憶體裝置1231至123n中的至少一個中讀取的數據的錯誤。如果檢測的錯誤在可校正範圍內,則ECC單元1214可以校正檢測的錯誤。
記憶體介面單元1215可以根據控制單元1212的控制將諸如命令和位址的控制信號提供給非揮發性記憶體裝置1231至123n中的至少一個。此外,記憶體介面單元1215可以根據控制單元1212的控制與非揮發性記憶體裝置1231至123n中的至少一個交換數據。例如,記憶體介面單元1215可以將儲存在緩衝記憶體裝置1220中的數據提供給非揮發性記憶體裝置1231至123n中的至少一個,或者將從非揮發性記憶體裝置1231至123n中的至少一個讀取的數據提供給緩衝記憶體裝置1220。
緩衝記憶體裝置1220可以臨時儲存非揮發性記憶體裝置1231至123n中的至少一個中的數據。此外,緩衝記憶體裝置1220可以臨時儲存從非揮發性記憶體裝置1231至123n中的至少一個讀取的數據。臨時儲存在緩衝記憶體裝置1220中的數據可以根據控制器1210的控制被傳輸到主機裝置1100或被傳輸到非揮發性記憶體裝置1231至123n中的至少一個。
非揮發性記憶體裝置1231至123n可以用作SSD 1200的儲存介質。非揮發性記憶體裝置1231至123n可以分別透過多個通道CH1至CHn與控制器1210聯接。一個或多個非揮發性記憶體裝置可以聯接到一個通道。聯接到每個通道的非揮發性記憶體裝置可以聯接到相同的信號匯流排和數據匯流排。
電源1240可以將透過電源連接器1260輸入的電力PWR提供到SSD 1200的內部。電源1240可以包括輔助電源1241。輔助電源1241可以提供電力以使SSD 1200在發生突然斷電時正常地終止。輔助電源1241可以包括大容量電容器。
信號連接器1250可以根據主機裝置1100和SSD 1200之間的介面方案由各種類型的連接器來配置。
電源連接器1260可以根據主機裝置1100的電源供給方案由各種類型的連接器來配置。
圖12是說明包括根據實施例的數據儲存裝置2200的數據處理系統2000的示例表示的簡圖。參照圖12,數據處理系統2000可以包括主機裝置2100和數據儲存裝置2200。
主機裝置2100可以以諸如印刷電路板的板的形式來配置。儘管未示出,主機裝置2100可以包括用於執行主機裝置的功能的內部功能塊。
主機裝置2100可以包括連接端子2110,諸如插座、插槽或連接器。數據儲存裝置2200可以安裝到連接端子2110。
數據儲存裝置2200可以以諸如印刷電路板的板的形式來配置。數據儲存裝置2200可以被稱爲儲存模組或記憶卡。數據儲存裝置2200可以包括控制器2210、緩衝記憶體裝置2220、非揮發性記憶體裝置2231和2232、電源管理集成電路(PMIC)2240和連接端子2250。
控制器2210可以控制數據儲存裝置2200的一般操作。控制器2210可以以與圖11所示的控制器1210相同的方式來配置。
緩衝記憶體裝置2220可以臨時儲存非揮發性記憶體裝置2231和2232中的數據。此外,緩衝記憶體裝置2220可臨時儲存從非揮發性記憶體裝置2231和2232讀取的數據。臨時儲存在緩衝記憶體裝置2220中的數據可以根據控制器2210的控制被傳輸到主機裝置2100或非揮發性記憶體裝置2231和2232。
非揮發性記憶體裝置2231和2232可以用作數據儲存裝置2200的儲存介質。
PMIC 2240可以將透過連接端子2250輸入的電力提供到數據儲存裝置2200的內部。PMIC 2240可以根據控制器2210的控制來管理數據儲存裝置2200的電力。
連接端子2250可以聯接到主機裝置2100的連接端子2110。透過連接端子2250,諸如命令、位址、數據等的信號和電力可以在主機裝置2100和數據儲存裝置2200之間傳輸。連接端子2250可以根據主機裝置2100和數據儲存裝置2200之間的介面方案被配置成各種類型。連接端子2250可以設置在數據儲存裝置2200的任一側。
圖13是說明包括根據實施例的數據儲存裝置3200的數據處理系統3000的示例表示的簡圖。參照圖13,數據處理系統3000可以包括主機裝置3100和數據儲存裝置3200。
主機裝置3100可以以諸如印刷電路板的板的形式來配置。儘管未示出,主機裝置3100可以包括用於執行主機裝置的功能的內部功能塊。
數據儲存裝置3200可以以表面安裝型封裝的形式來配置。數據儲存裝置3200可以透過焊球3250安裝到主機裝置3100。數據儲存裝置3200可以包括控制器3210、緩衝記憶體裝置3220和非揮發性記憶體裝置3230。
控制器3210可以控制數據儲存裝置3200的一般操作。控制器3210可以以與圖11所示的控制器1210相同的方式來配置。
緩衝記憶體裝置3220可以臨時儲存非揮發性記憶體裝置3230中的數據。此外,緩衝記憶體裝置3220可臨時儲存從非揮發性記憶體裝置3230讀取的數據。臨時儲存在緩衝記憶體裝置3220中的數據可以根據控制器3210的控制被傳輸到主機裝置3100或非揮發性記憶體裝置3230。
非揮發性記憶體裝置3230可以用作數據儲存裝置3200的儲存介質。
圖14是說明包括根據實施例的數據儲存裝置的網路系統4000的示例表示的簡圖。參照圖14,網路系統4000可以包括透過網路4500聯接的服務器系統4300和多個客戶端系統4410至4430。
服務器系統4300可以響應於來自多個客戶端系統4410至4430的請求來服務數據。例如,服務器系統4300可以儲存從多個客戶端系統4410至4430提供的數據。再如,服務器系統4300可以向多個客戶端系統4410至4430提供數據。
服務器系統4300可以包括主機裝置4100和數據儲存裝置4200。數據儲存裝置4200可以按圖1所示的數據儲存裝置100、圖11所示的數據儲存裝置1200、圖12所示的數據儲存裝置2200或圖13所示的數據儲存裝置3200來配置。
圖15是說明包括在根據實施例的數據儲存裝置300中的非揮發性記憶體裝置的示例表示的方塊圖。參照圖15,非揮發性記憶體裝置300可以包括記憶體單元陣列310、列解碼器320、數據讀取/寫入塊330、行解碼器340、電壓發生器350和控制邏輯360。
記憶體單元陣列310可以包括布置在字線WL1至WLm和位線BL1至BLn彼此相交的區域處的記憶體單元MC。
列解碼器320可以透過字線WL1至WLm與記憶體單元陣列310聯接。列解碼器320可以根據控制邏輯360的控制操作。列解碼器320可解碼從外部裝置(未示出)提供的位址。列解碼器320可以基於解碼結果來選擇並驅動字線WL1至WLm。例如,列解碼器320可以將由電壓發生器350提供的字線電壓提供給字線WL1至WLm。
數據讀取/寫入塊330可以透過位線BL1至BLn與記憶體單元陣列310聯接。數據讀取/寫入塊330可以包括分別與位線BL1至BLn相對應的讀取/寫入電路RW1至RWn。數據讀取/寫入塊330可以根據控制邏輯360的控制來操作。數據讀取/寫入塊330可以根據操作模式作爲寫入磁碟或讀出放大器來操作。例如,數據讀取/寫入塊330可以在寫入操作中作爲將從外部裝置提供的數據儲存在記憶體單元陣列310中的寫入磁碟操作。再如,數據讀取/寫入塊330可以在讀取操作中作爲從記憶體單元陣列310中讀取數據的讀出放大器操作。
行解碼器340可以根據控制邏輯360的控制進行操作。行解碼器340可解碼從外部裝置提供的位址。行解碼器340可以基於解碼結果將分別對應於位線BL1至BLn的數據讀取/寫入塊330的讀取/寫入電路RW1至RWn與數據輸入/輸出線或數據輸入/輸出緩衝器聯接。
電壓發生器350可以生成用於非揮發性記憶體裝置300的內部操作的電壓。由電壓發生器350産生的電壓可以被供給到記憶體單元陣列310的記憶體單元。例如,在編程操作中産生的編程電壓可以被供應到待對其執行編程操作的記憶體單元的字線。再如,在擦除操作中生成的擦除電壓可以被供給到待對其執行擦除操作的記憶體單元的阱區。又如,在讀取操作中生成的讀取電壓可以被供給到待對其執行讀取操作的記憶體單元的字線。
控制邏輯360可以基於由外部裝置提供的控制信號來控制非揮發性記憶體裝置300的一般操作。例如,控制邏輯360可以控制非揮發性記憶體裝置300的操作,例如非揮發性記憶體裝置300的讀取操作、寫入操作和擦除操作。
雖然上面已經描述了各個實施例,但是本發明所屬技術領域中具有通常知識者將理解的是,描述的實施例僅僅是示例。因此,本文所述的數據儲存裝置及其操作方法不應限於所描述的實施例。
爲了說明的目的,上面已經公開了本公開的實施例。本發明所屬技術領域中具有通常知識者將理解的是,在不脫離所附申請專利範圍中公開的本公開的範圍和精神的情況下,可以進行各種修改、添加和替換。
100‧‧‧數據儲存裝置
200‧‧‧控制器
210‧‧‧主機介面單元
220‧‧‧控制單元
230‧‧‧隨機存取記憶體
240‧‧‧記憶體控制單元
300‧‧‧非揮發性記憶體裝置
310‧‧‧記憶體單元區域
320‧‧‧列解碼器
330‧‧‧數據讀取/寫入塊
340‧‧‧行解碼器
350‧‧‧電壓發生器
360‧‧‧控制邏輯
400‧‧‧主機裝置
1000‧‧‧數據處理系統
1100‧‧‧主機裝置
1200‧‧‧SSD
1210‧‧‧控制器
1211‧‧‧主機介面單元
1212‧‧‧控制單元
1213‧‧‧隨機存取記憶體
1214‧‧‧錯誤校正碼(ECC)單元
1215‧‧‧記憶體介面單元
1220‧‧‧緩衝記憶體裝置
1231‧‧‧非揮發性記憶體裝置
123n‧‧‧非揮發性記憶體裝置
1240‧‧‧電源
1241‧‧‧輔助電源
1250‧‧‧信號連接器
1260‧‧‧電源連接器
2000‧‧‧數據處理系統
2100‧‧‧主機裝置
2110‧‧‧連接端子
2200‧‧‧數據儲存裝置
2210‧‧‧控制器
2220‧‧‧緩衝記憶體裝置
2231‧‧‧非揮發性記憶體裝置
2232‧‧‧非揮發性記憶體裝置
2240‧‧‧電源管理集成電路(PMIC)
2250‧‧‧連接端子
3000‧‧‧數據處理系統
3100‧‧‧主機裝置
3200‧‧‧數據儲存裝置
3210‧‧‧控制器
3220‧‧‧緩衝記憶體裝置
3230‧‧‧非揮發性記憶體裝置
3250‧‧‧焊球
4000‧‧‧網路系統
4100‧‧‧主機裝置
4200‧‧‧數據儲存裝置
4300‧‧‧服務器系統
4410‧‧‧客戶端系統
4420‧‧‧客戶端系統
4430‧‧‧客戶端系統
4500‧‧‧網路
B1‧‧‧記憶塊
B2‧‧‧記憶塊
Bm‧‧‧記憶塊
CH‧‧‧通道
CH1‧‧‧通道
CHn‧‧‧通道
HIF‧‧‧主機介面
P1‧‧‧頁面
P2‧‧‧頁面
P3‧‧‧頁面
P4‧‧‧頁面
P5‧‧‧頁面
Pn‧‧‧頁面
LBA1‧‧‧邏輯塊位址
LBA2‧‧‧邏輯塊位址
LBA3‧‧‧邏輯塊位址
LBA4‧‧‧邏輯塊位址
LBA5‧‧‧邏輯塊位址
LBA9‧‧‧邏輯塊位址
IDX‧‧‧索引
PADD‧‧‧實體位址
LADD‧‧‧邏輯位址
FLAG‧‧‧標記資訊
BB‧‧‧緩衝塊
DB1‧‧‧數據塊
DB2‧‧‧數據塊
RQ_UNM‧‧‧取消映射請求
P2L‧‧‧實體到邏輯
L2P‧‧‧邏輯到實體
MP‧‧‧映射
DT‧‧‧數據
UNM‧‧‧取消映射
SGL‧‧‧交換信號
PWR‧‧‧電力
WL1‧‧‧字線
WLm‧‧‧字線
MC‧‧‧記憶體單元
BL1‧‧‧位線
BLn‧‧‧位線
RW1‧‧‧讀取/寫入電路
RWn‧‧‧讀取/寫入電路
[圖1]是說明根據實施例的數據儲存裝置的示例表示的方塊圖。 [圖2]是說明根據實施例的實體到邏輯(P2L)映射的簡圖的示例表示。 [圖3]是說明根據實施例的邏輯到實體(L2P)映射的簡圖的示例表示。 [圖4]是說明根據實施例的數據儲存裝置處理主機裝置的取消映射請求的操作的簡圖的示例表示。 [圖5]是說明根據實施例的當主機裝置的取消映射請求被處理時,緩衝塊和實體到邏輯(P2L)映射被改變的進程的簡圖的示例表示。 [圖6]是說明根據實施例的數據儲存裝置處理主機裝置的取消映射請求的操作的簡圖的示例表示。 [圖7]是說明根據實施例的當主機裝置的取消映射請求被處理時,緩衝塊和實體到邏輯(P2L)映射被改變的進程的簡圖的示例表示。 [圖8]是說明根據實施例的用於處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的讀取請求的方法的簡圖的示例表示。 [圖9]是說明根據實施例的用於再次處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的取消映射請求的方法的簡圖的示例表示。 [圖10]是說明根據實施例的用於處理對實體到邏輯(P2L)映射中被取消映射的取消映射位址的寫入請求的方法的簡圖的示例表示。 [圖11]是說明根據實施例的包括固態磁碟的數據處理系統的示例表示的簡圖。 [圖12]是說明包括根據實施例的數據儲存裝置的數據處理系統的示例表示的簡圖。 [圖13]是說明包括根據實施例的數據儲存裝置的數據處理系統的示例表示的簡圖。 [圖14]是說明包括根據實施例的數據儲存裝置的網路系統的示例表示的簡圖。 [圖15]是說明包括在根據實施例的數據儲存裝置中的非揮發性記憶體裝置的示例表示的方塊圖。

Claims (20)

  1. 一種數據儲存裝置的操作方法,該數據儲存裝置使用非揮發性記憶體裝置,該非揮發性記憶體裝置包括臨時儲存數據的緩衝記憶塊,該方法包括: 從主機裝置接收請求擦除取消映射位址的取消映射請求; 將該取消映射位址和指示該取消映射位址被取消映射的標記資訊儲存在該緩衝記憶塊的第一空頁面中;以及 在與該緩衝記憶塊的第一空頁面相對應的實體到邏輯映射(P2L映射)中,映射該取消映射位址並標記指示該取消映射位址被取消映射的標記資訊。
  2. 如請求項1所述的方法,其中,當從突然斷電恢復時,基於該緩衝記憶塊的標記資訊,在邏輯到實體映射(L2P映射)中擦除該取消映射位址。
  3. 如請求項1所述的方法,其中,當該緩衝記憶塊的所有頁面被寫入時,基於該P2L映射的標記資訊,在邏輯到實體映射(L2P)映射中擦除該取消映射位址。
  4. 如請求項1所述的方法,其中,在用於匹配該P2L映射和L2P映射的周期性位址映射更新被執行的時間點,基於該P2L映射的標記資訊,在該L2P映射中擦除該取消映射位址。
  5. 如請求項1所述的方法,其進一步包括: 在該P2L映射中,使在該取消映射請求之前被映射的該取消映射位址的所有映射資訊無效。
  6. 如請求項1所述的方法,其進一步包括: 當從該主機裝置接收到對該取消映射位址的讀取請求時,透過參考該P2L映射的標記資訊來傳送取消映射響應。
  7. 如請求項6所述的方法,其中,傳送該取消映射響應包括通知請求讀取的取消映射位址處於取消映射狀態。
  8. 如請求項1所述的方法,其進一步包括: 當從該主機裝置再次接收到請求擦除該取消映射位址的取消映射請求時,將該取消映射位址和指示該取消映射位址被取消映射的標記資訊儲存在該緩衝記憶塊的第二空頁面中;以及 在與該緩衝記憶塊的第二空頁面相對應的該P2L映射中,映射該取消映射位址並標記指示該取消映射位址被取消映射的標記資訊。
  9. 如請求項1所述的方法,其進一步包括: 當從該主機裝置接收到對該取消映射位址的寫入請求時,將請求寫入的位址、指示該請求寫入的位址還未被取消映射的標記資訊和請求寫入的數據儲存在該緩衝記憶塊的第二空頁面中;以及 在與該緩衝記憶塊的第二空頁面相對應的該P2L映射中,映射該請求寫入的位址並標記指示該請求寫入的位址被映射的標記資訊。
  10. 如請求項9所述的方法,其進一步包括: 在該P2L映射中,使在該寫入請求之前被映射的該請求寫入的位址的所有映射資訊無效。
  11. 一種數據儲存裝置,其包括: 非揮發性記憶體裝置,包括臨時儲存數據的緩衝記憶塊; 隨機存取記憶體,適於儲存映射該非揮發性記憶體裝置的實體位址和由主機裝置提供的邏輯位址的實體到邏輯映射(P2L映射);以及 控制單元,適於基於該P2L映射更新邏輯到實體映射(L2P映射),並且刷新該非揮發性記憶體裝置中的該L2P映射, 其中,根據請求擦除取消映射位址的該主機裝置的取消映射請求,該控制單元將該取消映射位址和指示該取消映射位址被取消映射的標記資訊儲存在該緩衝記憶塊的第一空頁面中,並且在與其中儲存該取消映射位址的該緩衝記憶塊的第一空頁面相對應的該P2L映射中,映射該取消映射位址並標記指示該取消映射位址被取消映射的標記資訊。
  12. 如請求項11所述的數據儲存裝置,其中,當從突然斷電恢復時,該控制單元基於該緩衝記憶塊的標記資訊在該L2P映射中擦除該取消映射位址。
  13. 如請求項11所述的數據儲存裝置,其中,當該緩衝記憶塊的所有頁面被寫入時,該控制單元基於該P2L映射的標記資訊在該L2P映射中擦除該取消映射位址。
  14. 如請求項11所述的數據儲存裝置,其中,在用於匹配該P2L映射和該L2P映射的周期性位址映射更新操作期間,該控制單元基於該P2L映射的標記資訊在該L2P映射中擦除該取消映射位址。
  15. 如請求項11所述的數據儲存裝置,其中,該控制單元根據該取消映射請求擦除被映射到該取消映射位址的該L2P映射的實體位址。
  16. 如請求項11所述的數據儲存裝置,其中,在該P2L映射中,該控制單元使在該取消映射請求之前被映射的該取消映射位址的所有映射資訊無效。
  17. 如請求項11所述的數據儲存裝置,其中,當從該主機裝置接收到對該取消映射位址的讀取請求時,該控制單元透過參考該P2L映射的標記資訊來傳送取消映射響應。
  18. 如請求項17所述的數據儲存裝置,其中,該控制單元傳送具有與該主機裝置相符的特定模式的數據,以作爲該取消映射響應。
  19. 如請求項11所述的數據儲存裝置,其中,當從該主機裝置再次接收到請求擦除該取消映射位址的取消映射請求時,該控制單元將該取消映射位址和指示該取消映射位址被取消映射的標記資訊儲存在該緩衝記憶塊的第二空頁面中,並且在與該緩衝記憶塊的第二空頁面相對應的該P2L映射中,映射該取消映射位址並標記指示該取消映射位址被取消映射的標記資訊。
  20. 如請求項11所述的數據儲存裝置,其中,當從該主機裝置接收到對該取消映射位址的寫入請求時,該控制單元將請求寫入的位址、指示該請求寫入的位址還未被取消映射的標記資訊和請求寫入的數據儲存在該緩衝記憶塊的第二空頁面中,並且在與該緩衝記憶塊的第二空頁面相對應的該P2L映射中,映射該請求寫入的位址並標記指示該請求寫入的位址被映射的標記資訊。
TW106135847A 2017-04-28 2017-10-19 數據儲存裝置及其操作方法 TW201839613A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??10-2017-0055583 2017-04-28
KR1020170055583A KR102395538B1 (ko) 2017-04-28 2017-04-28 데이터 저장 장치 및 그것의 동작 방법

Publications (1)

Publication Number Publication Date
TW201839613A true TW201839613A (zh) 2018-11-01

Family

ID=63916644

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106135847A TW201839613A (zh) 2017-04-28 2017-10-19 數據儲存裝置及其操作方法

Country Status (4)

Country Link
US (1) US10891236B2 (zh)
KR (1) KR102395538B1 (zh)
CN (1) CN108804023B (zh)
TW (1) TW201839613A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI707453B (zh) * 2019-05-17 2020-10-11 大陸商長江存儲科技有限責任公司 三維記憶裝置、用於操作三維記憶裝置上的緩衝單元的系統以及用於操作三維記憶裝置上的數據緩衝器的方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102423278B1 (ko) 2017-11-28 2022-07-21 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR102583592B1 (ko) 2018-03-27 2023-10-06 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
CN109542800A (zh) * 2018-11-23 2019-03-29 深圳大普微电子科技有限公司 基于闪存的垃圾处理的方法、固态硬盘以及存储装置
CN111290976A (zh) * 2018-12-06 2020-06-16 沈阳新松机器人自动化股份有限公司 一种fram存储器读写***
KR20200077276A (ko) * 2018-12-20 2020-06-30 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20200085966A (ko) * 2019-01-07 2020-07-16 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
KR20200085967A (ko) * 2019-01-07 2020-07-16 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
KR20200095103A (ko) * 2019-01-31 2020-08-10 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
KR20200095130A (ko) * 2019-01-31 2020-08-10 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
TWI682395B (zh) * 2019-02-01 2020-01-11 睿寬智能科技有限公司 固態硬碟的未映射位址的重導向方法
KR20200100955A (ko) * 2019-02-19 2020-08-27 에스케이하이닉스 주식회사 메모리 시스템의 맵 데이터 관리 방법 및 장치
US10877900B1 (en) * 2019-06-26 2020-12-29 Western Digital Technologies, Inc. Enabling faster and regulated device initialization times
US11216218B2 (en) * 2019-07-15 2022-01-04 Micron Technology, Inc. Unmap data pattern for coarse mapping memory sub-system
KR20220005322A (ko) * 2020-07-06 2022-01-13 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR20220025401A (ko) * 2020-08-24 2022-03-03 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US11947818B2 (en) * 2022-04-20 2024-04-02 Silicon Motion, Inc. Method for accessing flash memory module and associated flash memory controller and electronic device
CN117234959A (zh) * 2023-08-29 2023-12-15 中电云计算技术有限公司 一种数据处理方法、装置、设备及存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3737528B2 (ja) * 1993-06-30 2006-01-18 インテル・コーポレーション フラッシュ・メモリ・デバイス、それのページ・バッファー資源の割り当てをする方法および回路
KR100437609B1 (ko) * 2001-09-20 2004-06-30 주식회사 하이닉스반도체 반도체 메모리 장치의 어드레스 변환 방법 및 그 장치
KR20100013824A (ko) * 2008-08-01 2010-02-10 주식회사 하이닉스반도체 고속 동작하는 반도체 스토리지 시스템
CN101930404B (zh) * 2010-08-27 2012-11-21 威盛电子股份有限公司 存储装置及其操作方法
US9727570B2 (en) * 2011-06-03 2017-08-08 Apple Inc. Mount-time unmapping of unused logical addresses in non-volatile memory systems
CN102841905B (zh) * 2011-06-24 2016-06-01 联想(北京)有限公司 电子设备及其存储管理方法
US9069657B2 (en) * 2011-12-12 2015-06-30 Apple Inc. LBA bitmap usage
US9514041B2 (en) * 2013-03-08 2016-12-06 Kabushiki Kaisha Toshiba Memory controller and memory system
TWI514142B (zh) 2013-11-26 2015-12-21 Synology Inc 儲存系統及其控制方法
GB2527529B (en) * 2014-06-24 2021-07-14 Advanced Risc Mach Ltd A device controller and method for performing a plurality of write transactions atomically within a non-volatile data storage device
KR20160024546A (ko) * 2014-08-26 2016-03-07 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US9575853B2 (en) * 2014-12-12 2017-02-21 Intel Corporation Accelerated data recovery in a storage system
US20170344478A1 (en) * 2014-12-18 2017-11-30 Hua Zhong University Of Science Technology Storing log records in a non-volatile memory
US9880770B2 (en) * 2015-09-02 2018-01-30 SK Hynix Inc. Supporting invalidation commands for non-volatile memory
CN105243025B (zh) * 2015-09-25 2019-04-19 北京联想核芯科技有限公司 一种映射表的形成及加载方法、电子设备
US10185658B2 (en) * 2016-02-23 2019-01-22 Sandisk Technologies Llc Efficient implementation of optimized host-based garbage collection strategies using xcopy and multiple logical stripes
US20170242785A1 (en) 2016-02-23 2017-08-24 Sandisk Technologies Llc Efficient Implementation of Optimized Host-Based Garbage Collection Strategies Using Xcopy and Arrays of Flash Devices
KR102530262B1 (ko) * 2016-07-21 2023-05-11 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20180080589A (ko) * 2017-01-04 2018-07-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102310117B1 (ko) * 2017-07-07 2021-10-08 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
TWI629591B (zh) * 2017-08-30 2018-07-11 慧榮科技股份有限公司 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
TWI692690B (zh) * 2017-12-05 2020-05-01 慧榮科技股份有限公司 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
TWI679537B (zh) * 2018-03-09 2019-12-11 深圳大心電子科技有限公司 資料移動方法及儲存控制器

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI707453B (zh) * 2019-05-17 2020-10-11 大陸商長江存儲科技有限責任公司 三維記憶裝置、用於操作三維記憶裝置上的緩衝單元的系統以及用於操作三維記憶裝置上的數據緩衝器的方法
US11221793B2 (en) 2019-05-17 2022-01-11 Yangtze Memory Technologies Co., Ltd. Data buffering operation of three-dimensional memory device with static random-access memory
US11922058B2 (en) 2019-05-17 2024-03-05 Yangtze Memory Technologies Co., Ltd. Data buffering operation of three-dimensional memory device with static random-access memory

Also Published As

Publication number Publication date
KR102395538B1 (ko) 2022-05-10
CN108804023A (zh) 2018-11-13
US20180314643A1 (en) 2018-11-01
US10891236B2 (en) 2021-01-12
CN108804023B (zh) 2021-06-25
KR20180121187A (ko) 2018-11-07

Similar Documents

Publication Publication Date Title
CN108804023B (zh) 数据存储装置及其操作方法
TW201826127A (zh) 數據儲存設備及其操作方法
CN108932107B (zh) 数据存储装置及其操作方法
KR102419036B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20200042791A (ko) 데이터 저장 장치 및 그것의 동작 방법
US11704048B2 (en) Electronic device
KR20170111386A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20200129863A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
KR20200114212A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20180097026A (ko) 불휘발성 메모리 장치, 그것을 포함하는 데이터 저장 장치 및 데이터 저장 장치의 동작 방법
KR102544162B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20210147696A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR102434840B1 (ko) 데이터 저장 장치
KR20200114086A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
KR102270103B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
CN114764396A (zh) 数据存储装置及其操作方法
US11249917B2 (en) Data storage device and operating method thereof
KR20190106005A (ko) 메모리 시스템, 그것의 동작 방법 및 전자 장치
KR20190095825A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20190091035A (ko) 메모리 시스템 및 그것의 동작 방법
KR102475688B1 (ko) 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그것의 동작 방법
KR20170109344A (ko) 데이터 저장 장치 및 그것의 동작 방법
US11157401B2 (en) Data storage device and operating method thereof performing a block scan operation for checking for valid page counts
KR20210079894A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20190102998A (ko) 컨트롤러, 데이터 저장 장치 및 그것의 동작 방법