TW202232325A - 用於從快閃記憶體讀取數據的方法與快閃記憶體系統 - Google Patents
用於從快閃記憶體讀取數據的方法與快閃記憶體系統 Download PDFInfo
- Publication number
- TW202232325A TW202232325A TW110109935A TW110109935A TW202232325A TW 202232325 A TW202232325 A TW 202232325A TW 110109935 A TW110109935 A TW 110109935A TW 110109935 A TW110109935 A TW 110109935A TW 202232325 A TW202232325 A TW 202232325A
- Authority
- TW
- Taiwan
- Prior art keywords
- flash memory
- controller
- data
- message
- chip
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
- G06F12/0653—Configuration or reconfiguration with centralised address assignment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/419—Read-write [R-W] circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
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)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本揭露描述了用於從快閃記憶體讀取數據的方法和系統。該方法可以包括由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求。讀取請求包含數據的邏輯地址。多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取記憶體(SRAM)儲存元件。該方法還包括:識別包含邏輯到物理(L2P)訊息的快閃記憶體晶片的晶片上SRAM儲存器;以及搜索L2P訊息,以獲得與邏輯地址對應的數據的物理地址。該方法還包括使用物理地址從快閃記憶體晶片的快閃記憶體陣列檢索數據。
Description
本揭露一般地涉及快閃記憶體領域,並且更特別地,涉及用於減少快閃記憶體元件的操作中的延遲的系統和方法。
透過改進製程技術、電路設計、編程算法和製造製程將記憶體單元縮放到了更小的大小。在很多伺服器和移動設備中,NAND快閃記憶體(一種非易失性儲存技術)由於其高儲存密度和相對低的存取延遲而被廣泛用作主要的非易失性儲存元件。三維(3D)NAND快閃記憶體被開發以進一步增加儲存密度並且降低製造成本。然而,由於更小的元件大小提供顯著改進的儲存容量的益處,因此在記憶體元件中有效地並且及時地讀取及寫入數據變得越來越具有挑戰性。
本揭露包括一種用於從快閃記憶體讀取數據的方法,包括由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求。讀取請求包含數據的邏輯地址。多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個管芯上靜態隨機存取存儲器(SRAM)存儲器件。該方法還包括:識別包含邏輯到物理(L2P)信息的閃存存儲器管芯的管芯上SRAM儲存器;以及搜索L2P信息,以獲得與邏輯地址對應的數據的物理地址。該方法還包括使用物理地址從閃存存儲器管芯的閃存存儲器陣列檢索數據。
本揭露還包括一種用於從快閃記憶體讀取數據的方法,包括由快閃記憶體控制器接收對存儲在多個快閃記憶體晶片中的數據的讀取請求。讀取請求包括數據的邏輯地址,並且快閃記憶體控制器包括控制器儲存器。多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取存儲器(SRAM)儲存器。該方法還包括在控制器儲存器中搜索邏輯到物理(L2P)訊息。響應於L2P訊息在控制器儲存器中:該方法包括使用L2P訊息獲得數據的物理地址以及使用物理地址從多個快閃記憶體晶片檢索數據。響應於L2P訊息不在控制器儲存器中:該方法包括識別包含L2P訊息的快閃記憶體晶片的晶片上SRAM存儲元件以及搜索L2P訊息以獲得與邏輯地址對應的物理地址。該方法還包括使用物理地址從快閃記憶體晶片的快閃記憶體陣列檢索數據。
本揭露還包括一種具有多個快閃記憶體晶片的快閃記憶體系統。每一個快閃記憶體晶片包括一個或多個NAND記憶體陣列以及一個或多個晶片上SRAM儲存元件。快閃記憶體系統還包括快閃記憶體控制器,快閃記憶體控制器包括控制器儲存器以及一個或多個處理器。在執行指令時,一個或多個處理器被配置爲接收對儲存在多個快閃記憶體晶片中的數據的讀取請求,其中,讀取請求包括數據的邏輯地址。一個或多個處理器還被配置爲識別包含邏輯到物理(L2P)訊息的晶片上SRAM儲存器,晶片上SRAM儲存元件形成在多個快閃記憶體晶片的快閃記憶體晶片上。一個或多個處理器還被配置爲搜索L2P訊息,以獲得與邏輯地址對應的數據的物理地址。快閃記憶體控制器還被配置爲使用物理地址從快閃記憶體晶片的NAND記憶體陣列檢索數據。
儘管討論了具體的構造和布置,但是應當理解,這樣做僅僅是出於說明的目的。相關領域的技術人員將認識到,在不脫離本揭露的精神和範圍的情況下,可以使用其他構造和布置。對於相關領域的技術人員來說,顯然本揭露也可以用於各種其他應用。
注意,在本說明書中對“一個實施例”、“實施例”、“示例性實施例”、“一些實施例”等的引用指示所描述的實施例包括特定的特徵、結構或特性,但是每個實施例可以不必包括特定的特徵、結構或特性。此外,這樣的短語未必是指同一實施例。此外,在結合實施例描述特定的特徵、結構或特性時,無論是否明確描述,結合其他實施例實現這樣的特徵、結構或特性都將在相關領域的技術人員的知識範圍之內。
一般地,術語可以至少部分地從上下文中的使用來理解。例如,至少部分地取決於上下文,如本文所使用的術語“一個或多個”可以用於以單數意義描述任何特徵、結構或特性,或者可以用於以複數意義描述特徵、結構或特性的組合。類似地,諸如“一”或“所述”的術語同樣可以被理解爲傳達單數用法或傳達複數用法,這至少部分地取決於上下文。
應當容易理解的是,在本揭露中的“在…上”、“在…上方”和“在…之上”的含義應該以最廣泛的方式來解釋,使得“在…上”不僅意味著“直接在某物上”,而且還包括“在某物上”並且其間具有中間特徵或層的含義,並且“在…上方”或“在…之上”不僅意味著在某物“上方”或“之上”的含義,而且還可以包括在某物“上方”或“之上”並且其間不具中間特徵或層(即,直接在某物上)的含義。
此外,空間相對術語,例如“在…下面”、“在…下方”、“下部”、“在…上方”、“上部”等在本文中爲了便於描述可以用於描述一個元件或特徵與另一個(或多個)元件或特徵的如圖中所示的關係。空間相對術語旨在涵蓋除了圖中描繪的方向之外的在元件使用或操作中的不同方向。裝置可以以其他方式定向(旋轉90度或在其他方向下),並且本文所使用的空間相對描述詞也可以被相應地進行解釋。
如本文所用,術語“基底”是指在其上添加後續材料層的材料。基底包括頂表面和底表面。基底的頂表面是形成半導體元件的地方,並且因此半導體元件形成在基底的頂側處。底表面與頂表面相對,並且因此基底的底側與基底的頂側相對。基底本身可以被圖案化。添加在基底的頂部上的材料可以被圖案化,也可以保持不被圖案化。此外,基底可以包括多種半導體材料,例如矽、鍺、砷化鎵、磷化銦等。替代地,基底可以由諸如玻璃、塑料、或藍寶石晶片等非導電材料製成。
如本文所用,術語“層”是指包括具有厚度的區域的材料部分。層可以在整個上層結構或下層結構之上延伸,或者可以擁有小於下層結構或上層結構的範圍的範圍。此外,層可以是均勻或不均勻的連續結構的區域,其厚度小於連續結構的厚度。例如,層可以位於在連續結構的頂表面與底表面之間的或在連續結構的頂表面和底表面處的任何一對水平面之間。層可以水平地、垂直地和/或沿著錐形表面延伸。基底可以是層,可以在其中包括一個或多個層,和/或可以在其上、其上方和/或其下方具有一個或多個層。層可以包括多個層。例如,互連層可以包括一個或多個導體和接觸層(其中形成觸點、互連線、和/或過孔)以及一個或多個介電質層。
如本文所用,術語“標稱/標稱地”是指在産品或製程的設計階段期間設置的用於部件或製程步驟的特性或參數的期望值或目標值,以及高於和/或低於期望值的值的範圍。值的範圍可能由於製造製程或公差的微小變化而産生。如本文所用,術語“大約”指示可以基於與主題半導體元件相關聯的特定技術節點而變化的給定量的值。基於特定的技術節點,術語“大約”可以指示在例如值的10%到30%內變化的給定量的值(例如,值的±10%、±20%或±30%)。
如本文所用,術語“3D NAND記憶體元件”(本文稱爲“記憶體元件”)是指一種在橫向方向的基底上具有垂直方向的3D NAND記憶體單元電晶體串(本文稱爲“記憶體串”,例如NAND串或3D NAND記憶體串)的半導體元件,其使得記憶體串相對於基底在垂直方向上延伸。如本文所用,術語“垂直/垂直地”意味著標稱地垂直於基底的橫向表面。
固態驅動器(SSD)是能夠記錄數據的儲存設備。例如,SSD設備可以使用非易失性記憶體元件來儲存和檢索數據。用戶或設備介面允許其他系統存取SSD設備的儲存容量。爲了永久性地儲存數據,可以使用各種類型的非易失性記憶體,例如,基於快閃的記憶體。3D NAND記憶體元件是一種被開發以增加數據儲存容量的非易失性記憶體元件。快閃記憶體元件可以用幾種不同類型的集成電路技術製造,例如具有浮閘的NOR或NAND邏輯門。取決於應用,快閃記憶體元件可以被布置成陣列並且被配置爲作爲塊、頁、字和/或字節被存取。每一個頁可以包含2N個字節,其中,N是整數,並且典型的頁大小可以是例如每頁2048個字節(2kb)、4096個字節(4kb)、8192個字節(8kb)或更多。頁可以被布置成塊。例如,塊可以包含64個、128個或更多個頁。用於NAND記憶體元件的讀取和寫入操作在逐頁基礎上執行,而擦除操作可以在逐塊基礎上執行。
硬碟透過邏輯地址(例如,邏輯塊地址)被線性尋址,而NAND元件透過物理地址(例如,頁號)對記憶體儲存器進行尋址。因此,快閃記憶體元件通常分配控制器電路的一部分以維持每一個邏輯塊地址到儲存數據的當前頁號的映射的記錄。該記錄映射可以由快閃轉換層(FTL)管理,FTL可以提供用於映射兩個地址的邏輯到物理(L2P)表。FTL可以使用快閃記憶體控制器電路的分配部分和控制軟體來實施。爲了檢索特定數據段,主機設備可以提供目標數據的邏輯地址,並且快閃記憶體控制器可以利用L2P映射表來識別非易失性記憶體元件中的目標數據的物理頁地址,並且檢索所儲存的數據。
可以使用幾種方法來儲存和維持L2P映射表。一種這樣的方法是單級直接L2P映射。在這種映射方案下,映射表包括用於每個頁的條目以及用於在包含邏輯塊地址訊息的每個塊的末尾處的元數據的概述頁。L2P映射表可以儲存在快閃記憶體控制器內的記憶體元件中。例如,L2P映射表可以儲存在靜態隨機存取記憶體(SRAM)元件中。單級直接L2P映射可以包含用於整個快閃記憶體元件的映射訊息。因此,單級直接頁映射方案需要大量的儲存空間(每GB用戶儲存1-2MB的量級)來儲存L2P映射表,這對於高容量快閃記憶體元件可能是具有挑戰性的。
用於儲存和維持L2P映射表的另一種方法是多級映射方案。例如,多級映射方案可以將多個相鄰邏輯塊分組在一起,並且可以包括用於每個分組的塊的頁全域目錄。頁全域目錄可以儲存在快閃記憶體控制器內的記憶體元件(例如,SRAM)中,以用於快速存取。該映射方案還包括頁中間目錄和頁表,它們儲存並且維持在位於NAND記憶體元件的備用區域中的記憶體單元級處的頁中。頁表包含數據的物理塊號和物理頁號。
快閃轉換層(“FTL”)可以位於快閃記憶體控制模組中,用於將邏輯地址轉換爲物理地址。在單級直接L2P映射下,FTL可以讀取並且掃描儲存在快閃記憶體控制器內的L2P映射表。在多級映射方案下,FTL將讀取儲存在快閃記憶體控制器中的頁全域目錄,並且存取用於頁中間目錄和頁表的NAND記憶體元件的備用記憶體單元,以便檢索所請求的數據地址。FTL可以是儲存在快閃記憶體控制器模組中的靜態隨機存取記憶體(SRAM)或動態隨機存取記憶體(DRAM)中的模組。對快閃記憶體內的SRAM的存取速度和對NAND記憶體元件的備用記憶體單元的存取速度可以不同。例如,快閃記憶體控制器模組內的SRAM的讀取延遲可以是幾微秒的量級,而從NAND記憶體元件的單元級的讀取延遲可以是更大的數量級,例如,幾十微秒。
隨著記憶體元件(例如,3D NAND記憶體)中的儲存容量的增加,L2P表的大小已經變得非常大,並且需要大量的儲存空間用於諸如儲存L2P表和緩衝數據的存取操作。特別地,在不包含DRAM儲存器的移動設備中,在快閃記憶體控制器SRAM儲存器中實施單級直接L2P表可能導致更大的元件大小和更高的製造成本。另一方面,透過在快閃記憶體控制器處和在非易失性記憶體元件的備用記憶體單元處儲存L2P表的分量來實施多級映射方案可能導致長延遲和元件性能的下降。
爲了解決上述缺點,本文描述的實施例針對用於在不擴展元件占據空間的情況下減少快閃記憶體系統中的延遲的系統和方法。更特別地,本揭露針對在SRAM儲存器中緩存L2P表,該SRAM儲存器與NAND快閃記憶體陣列位於同一晶片上,即晶片上SRAM。例如,頁中間目錄和頁表可以儲存在晶片上SRAM中,以用於由快閃記憶體控制器快速存取。該方法可以包括實施指示標誌的程序代碼和/或算法,該指示標誌用於提供包括目標數據的地址訊息的L2P表的位置。例如,指示標誌可以顯示指示目標L2P表儲存在晶片上SRAM儲存器中的第一狀態或者指示L2P表儲存在快閃記憶體控制器的SRAM中的第二狀態。由於快閃記憶體系統可以包括多於一個的快閃記憶體晶片,因此指示標誌還可以指示哪個快閃記憶體晶片包含儲存目標L2P表的晶片上SRAM。另外,該方法還可以包括在各種晶片上SRAM與快閃記憶體控制器SRAM之間交換L2P表。本申請中描述的結構和部件可以在硬體、韌體、軟體或其任何組合上實施。本揭露中描述的方法和系統可以將3D NAND快閃記憶體元件的讀取延遲減少超過90%。
圖1示出了根據一些實施例的快閃記憶體系統100的功能方塊圖。快閃記憶體系統100可以包括快閃記憶體控制器110以及快閃記憶體晶片160的陣列。快閃記憶體控制器110透過介面104與主機控制器102通訊。主機控制器102可操作以透過經由介面104發送命令和/或數據來請求快閃記憶體控制器執行快閃記憶體晶片160的讀取、編程和擦除操作。快閃記憶體控制器110可以被配置爲從一個或多個快閃記憶體晶片160(例如,快閃記憶體元件的陣列)檢索數據,並且經由數據總線將數據發送到主機控制器102。檢索的數據可以由主機控制器102傳輸到主機電腦或者其他未示出的系統元件。快閃記憶體元件的陣列可以包括一個或多個NAND快閃記憶體的陣列,如下面作爲元件170介紹的。
主機控制器102發送要儲存在快閃記憶體晶片160處的數據,或者透過命令快閃記憶體控制器110從快閃記憶體晶片160讀取數據來檢索數據。主機控制器102可以處理從主機電腦(圖1中未示出)接收的I/O請求,確保數據完整性和有效儲存,並且管理快閃記憶體晶片160。介面106可以經由數據總線在快閃記憶體控制器110與快閃記憶體晶片160之間提供數據和控制通信。
快閃記憶體控制器110可以包括編碼器/解碼器單元120、控制邏輯單元130、控制器儲存器132、快閃轉換層(FTL)140和頁緩衝器150。其他合適的元件可以被包括在快閃記憶體控制器110中,並且爲了簡單起見,在此未示出或描述。在一些實施例中,FTL 140還可以包括用於儲存L2P映射訊息或任何其他合適的訊息的儲存區域(例如,SRAM)。
編碼器/解碼器單元120可以提供對由快閃記憶體控制器110處理的數據的編碼和解碼。編碼器/解碼器單元120還可以生成並且儲存錯誤校正碼(ECC)和元數據,以及用於記憶體管理。編碼器/解碼器單元120可以用於檢測和糾正所儲存的數據中的錯誤。
控制邏輯單元130可以是任何合適的集成電路(例如,一個或多個處理器),其被配置爲從主機控制器102接收指令,並且透過經由介面106與快閃記憶體晶片160傳輸命令和/或數據來執行快閃記憶體晶片160的讀取、編程和擦除操作(如本領域普通技術人員(POSA)所理解的)。例如,控制邏輯單元130透過主機控制器102從一個或多個外部設備接收對快閃介質存取(例如,讀取或寫入操作)的請求。控制邏輯單元130還可以被配置爲與快閃記憶體控制器110的其他元件通訊並且控制這些元件。例如,控制邏輯單元130可以命令FTL掃描內部記憶體儲存器,以獲得映射訊息,並且從FTL發送/接收地址映射訊息。控制邏輯單元130還可以與編碼器/解碼器單元120、頁緩衝器150以及快閃記憶體控制器110的其他合適的元件通訊。
控制器儲存器132可以用於儲存用於控制邏輯單元130的操作的命令。在一些實施例中,控制器儲存器132可以是用於儲存映射訊息的儲存介質。例如,控制器儲存器132可以包括用於快閃記憶體晶片160的扇區的單級直接L2P映射表。在一些實施例中,控制器儲存器132可以包括用於快閃記憶體晶片160的頁全域目錄訊息。頁全域目錄訊息可以儲存在隨機存取記憶體元件(RAM)中,並且作為緩存以提供映射數據的快速查找。頁全域目錄是POSA所充分理解的,並且爲了簡單起見,在此不進行詳細描述。在一些實施例中,控制器儲存器132可以包括軟體代碼、命令、計算機邏輯、韌體、任何合適的訊息。在一些實施例中,控制器儲存器132可以是SRAM元件。
快閃轉換層(FTL)140可以被配置爲提供L2P映射表,以用於將邏輯地址轉變爲物理地址。由控制邏輯單元130接收的存取快閃介質的請求可以包括一個或多個邏輯塊地址,其中用戶數據應當被讀取或寫入。FTL 140可以被配置爲透過掃描各種L2P表而將期望數據的邏輯塊地址轉換爲物理地址。例如,FTL 140可以生成L2P映射訊息,並且將這樣的訊息發送到位於快閃記憶體控制器110中的儲存介質,例如,控制器儲存器132。FTL 140還可以將映射訊息發送到位於快閃記憶體晶片160上的儲存介質,例如晶片上SRAM或記憶體單元。FTL 140還可以在快閃記憶體控制器110請求時搜索上述儲存介質,以獲得L2P訊息。
頁緩衝器150可以包括用於儲存數據區段的一個或多個暫存器電路。例如,在兩遍編程方案下,頁緩衝器150可以儲存諸如下頁數據、中間頁數據和上頁數據的數據。主機控制器102與快閃記憶體晶片160的陣列之間的數據傳遞可以臨時儲存在頁緩衝器150中。頁緩衝器150的結構和功能是POSA所充分理解的,並且爲了簡單起見,在此不進行詳細描述。
快閃記憶體晶片160可以被配置爲儲存用戶數據,並且包括用於與快閃記憶體控制器110通訊以及用於儲存L2P映射訊息的電路元件。在一些實施例中,每一個快閃記憶體晶片160可以包括數據緩存162、晶片上SRAM 164以及NAND快閃記憶體陣列170。快閃記憶體晶片160可以是記憶體晶片(封裝)、記憶體晶片或者記憶體晶片的任何部分。在一些實施例中,每一個快閃記憶體晶片160可以包括一個或多個晶片上SRAM 164或者一個或多個NAND快閃記憶體陣列170。爲了簡單起見,在圖1中未示出附加的晶片上SRAM 164和NAND快閃記憶體陣列170。
數據緩存162可以被配置爲臨時儲存在快閃記憶體控制器110與NAND快閃記憶體陣列170之間傳輸的數據。例如,在用於從NAND快閃記憶體陣列170存取所儲存的用戶數據的讀取操作期間,數據緩存162可以被配置爲在將檢索到的數據發送到快閃記憶體控制器110之前,臨時儲存檢索到的數據。
晶片上SRAM 164可以被配置爲儲存L2P映射訊息,以用於快閃記憶體控制器110快速存取。例如,在多級映射方案下,L2P映射訊息(例如,頁中間目錄和頁表)可以儲存在晶片上SRAM 164中,並且由快閃記憶體控制器110的FTL 140透過介面160存取。由於從SRAM儲存介質讀取數據可以比從NAND快閃記憶體單元讀取數據快幾個數量級,因此與在NAND快閃記憶體陣列的備用記憶體單元中儲存L2P訊息相比,在晶片上SRAM 164中儲存這種訊息可以提供尤其是較低數據讀取延遲的益處。在一些實施例中,晶片上SRAM 164可以是具有比NAND快閃記憶體單元快的速度的任何其他合適的記憶體元件。在一些實施例中,諸如動態RAM(DRAM)的儲存介質可以在快閃記憶體晶片160中實施,以執行與晶片上SRAM 164類似的功能。
NAND快閃記憶體陣列170可以包括一個或多個記憶體平面,每一個記憶體平面可以包括多個記憶體塊。在每一個記憶體平面處可以發生相同的和並發的操作。可以是兆字節(MB)大小的記憶體塊是實行擦除操作的最小大小。每一個記憶體塊可以包括多個記憶體單元,其中,每一個記憶體單元可以透過諸如位元線和字元線的互連來尋址。位元線和字元線可以垂直地布設(例如,分別以行和列),從而形成金屬線的陣列。爲了簡單起見,記憶體塊又被稱爲“記憶體陣列”或“陣列”。記憶體陣列是記憶體晶片中的核心區域,執行儲存功能。
圖2是示出了根據本揭露的一些實施例的快閃記憶體單元布置的示意性電路圖。NAND快閃記憶體陣列170可以包括部署爲如圖2所示的陣列布置的快閃記憶體單元172的陣列。NAND快閃記憶體陣列170可以是3D NAND快閃記憶體陣列,其包括布置在基底之上的閘極電極的堆疊層,其中,半導體通道穿過字元線並且與字元線相交而進入到基底中。底部/下部閘極電極用作底部/下部選擇閘極。頂部/上部閘極電極用作頂部/上部選擇閘極。在頂部/上部選擇閘極電極與底部/下部閘極電極之間的字元線/閘極電極用作字元線。字元線與半導體通道的相交形成記憶體單元。頂部/上部選擇閘極連接到字元線,以用於行選擇,並且底部/下部選擇閘極連接到位元線,以用於列選擇。3D NAND快閃記憶體元件及其形成方法的示例可以在標題爲“記憶體元件及其形成方法(Memory Device and Forming Method Thereof)”的10559592號美國專利中找到,所述專利以全文引用的方式併入本文中。
NAND快閃記憶體單元172中的每一個指示儲存在其中的一個或多個位值。具體地,每一個NAND快閃記憶體單元172可以包括具有儲存電荷的浮閘的電晶體。NAND快閃記憶體單元172以多個串聯串174的形式耦合,其中,記憶體單元的汲極均耦合到另一NAND快閃記憶體單元172的源極。NAND快閃記憶體陣列170可以包括字元線WL0-WLN。字元線WL0-WLN中的每一個可以連接到NAND快閃記憶體陣列170的行的每一個NAND快閃記憶體單元172的控制閘極,並且用於偏置該行中的NAND快閃記憶體單元172的控制閘極。NAND快閃記憶體陣列170還包括位元線BL0-BLK。位元線BL0-BLK中的每一個耦合到串聯串174並且耦合到數據緩存162。感測電路(未示出,但是對於POSA是顯而易見的)可以由控制邏輯單元130控制以透過感測位元線BL0-BLK中的特定位元線上的電壓或電流來檢測每一個NAND快閃記憶體單元172的狀態。
其他合適的電路元件可以被包括在圖2的示意性電路圖中,並且爲了簡單起見圖中未示出。例如,選擇閘極、感測電路、地址解碼器、驅動電路、也可以包括其他支持邏輯單元/電路以及任何合適的電路元件,並且在此爲了簡潔而被省略。
圖3是示出了根據本揭露的一些實施例的實施晶片上SRAM以用於減少數據讀取延遲的快閃記憶體系統的操作的流程圖。應當理解,方法300不是窮舉的,並且在任何所示操作步驟之前、之後或之間也可以執行其他操作步驟。在一些實施例中,方法300的一些操作步驟可以被省略,或者可以包括其他操作步驟,爲了簡單起見,在此不對其進行描述。在一些實施例中,方法300的操作步驟可以以不同的順序和/或變化來執行。方法300可以使用圖1和圖2中描述的快閃記憶體元件和電路來執行。
根據本揭露的一些實施例,方法300在操作步驟310處開始,其中,主機控制器發起用戶數據讀取請求。參考圖1,主機控制器102可以透過介面104向快閃記憶體控制器110發起用戶數據請求命令,從而請求儲存在快閃記憶體陣列170中的特定用戶數據段。在一些實施例中,請求命令可以包含所請求的用戶數據的一個或多個邏輯地址。
根據本揭露的一些實施例,方法300繼續操作步驟320,其中,快閃記憶體控制器掃描並且搜索快閃記憶體控制器的介質儲存器(例如,SRAM)中的L2P表。參考圖1,快閃記憶體控制器110可以被配置爲從主機控制器接收用戶數據請求,並且命令FTL 140搜索快閃記憶體控制器110的控制器儲存器132,以確定控制器儲存器132是否包含所請求的用戶數據的映射訊息。在一些實施例中,控制器儲存器132可以包括用戶數據選擇的單級直接L2P映射。例如,爲了減少讀取延遲,快閃記憶體控制器110的儲存介質可以包含用於用戶頻繁存取的用戶數據的單級直接L2P映射訊息。在一些實施例中,快閃記憶體控制器110的儲存介質還可以包含L2P映射訊息的扇區。例如,在多級映射方案下,控制器儲存器132可以包括頁全域目錄,並且FTL 140可以被配置爲搜索頁全域目錄。
根據本揭露的一些實施例,方法300繼續操作步驟330,其中,FTL被配置爲確定L2P數據是否儲存在控制器介質儲存器中。在一些實施例中,由主機控制器發起的用戶數據請求可以包含所請求數據的邏輯地址訊息。參考圖1,FTL 140可以被配置爲確定與邏輯地址訊息對應的L2P地址訊息是儲存在控制器介質儲存器中,還是儲存在快閃記憶體晶片中。
根據本揭露的一些實施例,如果FTL確定L2P地址訊息儲存在快閃控制器儲存器中,則方法300繼續操作步驟340,其中,FTL從快閃控制器儲存器讀取L2P訊息的扇區。參考圖1,FTL 140可以被配置爲搜索控制器儲存器132的內容,以識別與從主機控制器102接收的邏輯地址訊息對應的L2P映射數據的扇區。方法300繼續操作步驟342,其中,基於L2P數據的讀取檢索物理地址。在單級直接L2P映射方案下,FTL 140可以在L2P映射表中查找物理地址,以獲得從主機控制器102接收的邏輯地址的對應物理地址。
方法300繼續到操作步驟380,其中,快閃記憶體控制器110的控制邏輯單元130基於用戶數據的物理地址從NAND快閃記憶體陣列170檢索用戶數據。然後,方法300繼續操作步驟390,其中,快閃記憶體控制器將數據傳輸到主機控制器。例如,快閃記憶體控制器110從快閃記憶體晶片160接收用戶數據,並且在透過介面104將用戶數據傳輸到主機控制器102之前,將用戶數據臨時儲存在頁緩衝器150中。
另一方面,如果FTL在操作步驟330處確定L2P地址訊息沒有儲存在快閃控制器儲存器中,則方法300繼續操作步驟350,其中,檢查指示標誌,以確定L2P地址訊息儲存在哪裏。例如,指示標誌的第一狀態(例如,狀態0)可以通知快閃記憶體控制器110對應的L2P地址訊息儲存在快閃記憶體晶片160的一個晶片中的備用單元處。指示標誌可以是提供訊息的位串,例如,識別L2P地址訊息儲存在快閃記憶體晶片中的哪個晶片中。例如,指示標誌可以是儲存在控制器儲存器132中的一位或多位訊息。指示標誌還可以包括L2P映射訊息是儲存在NAND快閃記憶體陣列170中還是儲存在晶片上SRAM 164中的塊訊息。如果L2P地址訊息儲存在NAND快閃記憶體陣列170的備用單元處,則方法300繼續操作步驟360,其中,FTL 140可以被配置爲從儲存在NAND快閃記憶體陣列170的備用單元中的L2P數據檢索物理地址。指示標誌可以包括將快閃記憶體控制器110引導到包含L2P數據的特定晶片的訊息。
替代地,指示標誌的第二狀態(例如,狀態1)可以通知快閃記憶體控制器110對應的L2P地址訊息儲存在晶片上SRAM中。指示標誌還可以被配置爲包括晶片上SRAM的標識,例如,晶片上SRAM所位於的晶片號。指示標誌還可以包括L2P映射訊息的相關部分儲存在其上的晶片上SRAM的扇區的標識。根據本揭露的一些實施例,在這種的情形中,方法300繼續操作步驟370,其中,FTL可以被配置爲將L2P映射數據的扇區從晶片上SRAM掃到控制器儲存器上。基於由指示標誌提供的訊息,FTL可以識別快閃記憶體晶片160的特定晶片上SRAM的扇區,並且將L2P映射數據的扇區從晶片上SRAM 164掃到控制器儲存器132。在一些實施例中,掃L2P映射數據的扇區包括將L2P映射數據的扇區從晶片上SRAM 164傳輸到快閃記憶體控制器110,並且將L2P映射數據的扇區儲存在控制器儲存器132中。根據本揭露的一些實施例,方法300繼續操作步驟372,其中,FTL更新指示標誌。參考圖1,FTL 140可以將指示標誌更新爲包括當前儲存在控制器儲存器132中的L2P映射數據的扇區的訊息。所儲存的訊息可以用於隨後的讀取請求。根據本揭露的一些實施例,方法300繼續操作步驟374,其中,可以從L2P數據檢索物理地址。FTL 140可以被配置爲掃描並且讀取已經被掃到控制器儲存器132上的L2P數據,並且獲得與主機控制器102提供的邏輯地址對應的物理地址。指示標誌可以包括一個或多個附加的合適狀態。
根據本揭露的一些實施例,然後,方法300繼續操作步驟380,其中,從記憶體單元讀取數據。基於由FTL 140獲得的物理地址,快閃記憶體控制器110的控制邏輯單元130基於用戶數據的物理地址從NAND快閃記憶體陣列170檢索用戶數據。
然後,方法300繼續操作步驟390,其中,快閃記憶體控制器將數據傳輸到主機控制器。例如,快閃記憶體控制器110從快閃記憶體晶片接收用戶數據,並且透過介面104將用戶數據傳輸到主機控制器102。
本揭露的各種實施例針對用於在不擴展元件占據空間的情況下減少快閃記憶體系統中的延遲的系統和方法。例如,快閃記憶體晶片可以包括與NAND快閃記憶體陣列位於同一晶片上的SRAM儲存器。該方法可以包括實施一個或多個指示標誌的程序代碼和/或算法,該一個或多個指示標誌用於提供包括目標數據的地址映射訊息的L2P表的位置。例如,指示標誌可以顯示指示目標L2P表儲存在晶片上SRAM儲存器中的第一狀態或者指示L2P表儲存在快閃記憶體控制器的SRAM中的第二狀態。
在一些實施例中,一種用於從快閃記憶體讀取數據的方法包括由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求。讀取請求包含數據的邏輯地址。多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取記憶體(SRAM)儲存元件。該方法還包括:識別包含邏輯到物理(L2P)訊息的快閃記憶體晶片的晶片上SRAM儲存器;以及搜索L2P訊息,以獲得與邏輯地址對應的數據的物理地址。該方法還包括使用物理地址從快閃記憶體晶片的快閃記憶體陣列檢索數據。
在一些實施例中,一種用於從快閃記憶體讀取數據的方法包括由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求。讀取請求包括數據的邏輯地址,並且快閃記憶體控制器包括控制器儲存器。多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取記憶體(SRAM)儲存器。該方法還包括在控制器儲存器中搜索邏輯到物理(L2P)訊息。響應於L2P訊息在控制器儲存器中:該方法包括使用L2P訊息獲得數據的物理地址以及使用物理地址從多個快閃記憶體晶片檢索數據。響應於L2P訊息不在控制器儲存器中:該方法包括識別包含L2P訊息的快閃記憶體晶片的晶片上SRAM儲存元件以及搜索L2P訊息以獲得與邏輯地址對應的物理地址。該方法還包括使用物理地址從快閃記憶體晶片的快閃記憶體陣列檢索數據。
在一些實施例中,一種快閃記憶體系統包括多個快閃記憶體晶片。每一個快閃記憶體晶片包括一個或多個NAND記憶體陣列以及一個或多個晶片上SRAM儲存元件。快閃記憶體系統還包括快閃記憶體控制器,快閃記憶體控制器包括控制器儲存器以及一個或多個處理器。在執行指令時,一個或多個處理器被配置爲接收對儲存在多個快閃記憶體晶片中的數據的讀取請求,其中,讀取請求包括數據的邏輯地址。一個或多個處理器還被配置爲識別包含邏輯到物理(L2P)訊息的晶片上SRAM儲存器,晶片上SRAM儲存元件形成在多個快閃記憶體晶片的快閃記憶體晶片上。一個或多個處理器還被配置爲搜索L2P訊息,以獲得與邏輯地址對應的數據的物理地址。快閃記憶體控制器還被配置爲使用物理地址從快閃記憶體晶片的NAND記憶體陣列檢索數據。
具體實施例的前述描述將如此充分地揭示本揭露的一般性質,使得其他人可以透過應用本領域的技術內的知識而在不進行過度實驗的情況下、不脫離本揭露的一般概念的情況下容易地修改和/或調整此些具體實施例以用於各種應用。因此,基於本文所呈現的教導和指導,此類調整和修改旨在處於所公開的實施例的等同物的含義和範圍內。應當理解,本文的措辭或術語是爲了描述而非限制的目的,使得本說明書的術語或措辭由技術人員根據教導和指導來解釋。
以上已經借助於示出了指定功能及其關係的實施方式的功能構建塊描述了本揭露的實施例。爲了便於描述,本文已經任意地限定了這些功能性構建塊的邊界。只要適當地執行指定的功能及其關係,就可以限定替換的邊界。
發明內容和摘要部分可以闡述(一個或多個)發明人所設想的本揭露的一個或多個但不是所有示例性實施例,並且因此,不旨在以任何方式限制本揭露和所附申請專利範圍。
本揭露的廣度和範圍不應由上述示例性實施例中的任何一個限制,而應僅根據所附申請專利範圍及其等同物來限定。
100:快閃記憶體系統
102:主機控制器
104,106:介面
110:快閃記憶體控制器
120:編碼器/解碼器單元
130:控制邏輯單元
132:控制器儲存器
140:快閃轉換層
150:頁緩衝器
160:快閃記憶體晶片
162:數據緩存
164:晶片上SRAM
170:NAND快閃記憶體陣列
172:快閃記憶體單元
174:串聯串
300:方法
310,320,330,340,342,380,390,350,360,370,372,374:操作步驟
WL0-WLN:字元線
BL0-BLK:位元線
當結合圖式閱讀時,從以下具體實施方式中可以最好地理解本揭露的各個方面。注意,根據工業中的慣例,各種特徵未按比例繪製。實際上,爲了清楚地說明和討論,各種特徵的尺寸可以任意地增加或減小。
圖1是示出了根據本揭露的一些實施例的快閃記憶體系統的功能方塊圖。
圖2是示出了根據本揭露的一些實施例的快閃記憶體陣列的示意性電路圖。
圖3是示出了根據本揭露的一些實施例的快閃記憶體系統的操作的流程圖。
100:快閃記憶體系統
102:主機控制器
104,106:介面
110:快閃記憶體控制器
120:編碼器/解碼器單元
130:控制邏輯單元
132:控制器儲存器
140:快閃轉換層
150:頁緩衝器
160:快閃記憶體晶片
162:數據緩存
164:晶片上SRAM
170:NAND快閃記憶體陣列
Claims (20)
- 一種用於從快閃記憶體讀取數據的方法,包括: 由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求,其中: 所述讀取請求包括所述數據的邏輯地址;並且 所述多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取記憶體(SRAM)儲存元件; 識別包含邏輯到物理(L2P)訊息的快閃記憶體晶片的晶片上SRAM儲存元件; 搜索所述L2P訊息,以獲得與所述邏輯地址對應的所述數據的物理地址;以及 使用所述物理地址從所述快閃記憶體晶片的快閃記憶體陣列檢索所述數據。
- 根據請求項1所述的方法,還包括在所述快閃記憶體控制器的控制器儲存器中搜索所述L2P訊息。
- 根據請求項2所述的方法,響應於所述L2P訊息不在所述控制器儲存器中,識別包含所述L2P訊息的快閃記憶體晶片。
- 根據請求項3所述的方法,其中,識別所述L2P訊息包括確定L2P映射表的扇區。
- 根據請求項2所述的方法,還包括響應於所述L2P訊息不在所述控制器儲存器中,檢查指示標誌。
- 根據請求項5所述的方法,其中,識別所述L2P訊息包括從所述指示標誌獲得訊息。
- 根據請求項6所述的方法,還包括基於從所述指示標誌所獲得的訊息,確定L2P映射表的扇區。
- 根據請求項7所述的方法,還包括將所述L2P映射表的所述扇區從所述晶片上SRAM儲存元件掃到所述控制器儲存器。
- 根據請求項7所述的方法,還包括用與所述L2P映射表的所述扇區相關的訊息更新所述指示標誌。
- 根據請求項8所述的方法,其中,掃所述L2P映射表的所述扇區包括: 將所述L2P映射表的所述扇區從所述晶片上SRAM儲存元件傳輸到所述快閃記憶體控制器;以及 將所述L2P映射表的所述扇區儲存在所述控制器儲存器中。
- 一種用於從快閃記憶體讀取數據的方法,包括: 由快閃記憶體控制器接收對儲存在多個快閃記憶體晶片中的數據的讀取請求,其中: 所述讀取請求包括所述數據的邏輯地址; 所述快閃記憶體控制器包括控制器儲存器;並且 所述多個快閃記憶體晶片中的每一個快閃記憶體晶片包括一個或多個快閃記憶體陣列以及一個或多個晶片上靜態隨機存取記憶體(SRAM)儲存元件; 在所述控制器儲存器中搜索邏輯到物理(L2P)訊息; 響應於所述L2P訊息在所述控制器儲存器中: 使用所述L2P訊息獲得所述數據的物理地址;以及 使用所述物理地址從所述多個快閃記憶體晶片檢索所述數據;以及 響應於所述L2P訊息不在所述控制器儲存器中: 識別包含所述L2P訊息的快閃記憶體晶片的晶片上SRAM儲存元件; 搜索所述L2P訊息,以獲得與所述邏輯地址對應的物理地址;以及 使用所述物理地址從所述快閃記憶體晶片的快閃記憶體陣列檢索所述數據。
- 根據請求項11所述的方法,還包括響應於所述L2P訊息不在所述控制器儲存器中,檢查指示標誌。
- 根據請求項12所述的方法,其中,識別所述L2P訊息包括從所述指示標誌獲得訊息。
- 根據請求項13所述的方法,還包括基於從所述指示標誌所獲得的訊息,確定L2P映射表的扇區。
- 根據請求項14所述的方法,還包括將所述L2P映射表的所述扇區從所述晶片上SRAM儲存元件掃到所述控制器儲存器。
- 一種快閃記憶體系統,包括: 多個快閃記憶體晶片,其中,每一個快閃記憶體晶片包括: 一個或多個NAND記憶體陣列;以及 一個或多個晶片上SRAM儲存元件; 快閃記憶體控制器,包括: 控制器儲存器;以及 一個或多個處理器,在執行指令時,所述一個或多個處理器被配置爲: 接收對儲存在所述多個快閃記憶體晶片中的數據的讀取請求,其中,所述讀取請求包括所述數據的邏輯地址; 識別包含邏輯到物理(L2P)訊息的晶片上SRAM儲存元件,所述晶片上SRAM儲存元件形成在所述多個快閃記憶體晶片的快閃記憶體晶片上; 搜索所述L2P訊息,以獲得與所述邏輯地址對應的所述數據的物理地址;以及 使用所述物理地址從所述快閃記憶體晶片的NAND記憶體陣列檢索所述數據。
- 根據請求項16所述的快閃記憶體系統,其中,所述快閃記憶體控制器還包括被配置爲獲得所述數據的所述物理地址的快閃轉換層(FTL)。
- 根據請求項16所述的快閃記憶體系統,其中,所述快閃記憶體控制器還包括包含所述L2P訊息的位置的指示標誌。
- 根據請求項18所述的快閃記憶體系統,其中,所述位置包括所述晶片上SRAM儲存元件的地址。
- 根據請求項16所述的快閃記憶體系統,其中,所述L2P訊息包括多級映射方案。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
WOPCT/CN2021/075939 | 2021-02-08 | ||
PCT/CN2021/075939 WO2022165828A1 (en) | 2021-02-08 | 2021-02-08 | On-die static random-access memory (sram) for caching logical to physical (l2p) tables |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202232325A true TW202232325A (zh) | 2022-08-16 |
TWI803842B TWI803842B (zh) | 2023-06-01 |
Family
ID=76233926
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112114948A TWI834542B (zh) | 2021-02-08 | 2021-03-19 | 快閃記憶體控制器、快閃記憶體及快閃記憶體系統 |
TW110109935A TWI803842B (zh) | 2021-02-08 | 2021-03-19 | 用於從快閃記憶體讀取數據的方法與快閃記憶體系統 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112114948A TWI834542B (zh) | 2021-02-08 | 2021-03-19 | 快閃記憶體控制器、快閃記憶體及快閃記憶體系統 |
Country Status (7)
Country | Link |
---|---|
US (2) | US11755471B2 (zh) |
EP (1) | EP4147134A4 (zh) |
JP (2) | JP7472324B2 (zh) |
KR (1) | KR20230010754A (zh) |
CN (2) | CN112955956B (zh) |
TW (2) | TWI834542B (zh) |
WO (1) | WO2022165828A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI822436B (zh) * | 2022-08-19 | 2023-11-11 | 旺宏電子股份有限公司 | 記憶體以及用於記憶體內搜尋的記憶體操作方法 |
US12131787B2 (en) | 2022-08-19 | 2024-10-29 | Macronix International Co., Ltd. | Page buffer counting for in-memory search |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110187828B (zh) * | 2019-04-12 | 2023-03-28 | 深圳市金泰克半导体有限公司 | Nand闪存的垃圾回收方法及nand闪存 |
JP7472324B2 (ja) | 2021-02-08 | 2024-04-22 | 長江存儲科技有限責任公司 | 論理-物理(l2p)テーブルにキャッシュするためのオンダイスタティックランダムアクセスメモリ(sram) |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050144510A1 (en) * | 2003-12-24 | 2005-06-30 | Fernando Zayas | Cache search accelerator |
US7461229B2 (en) * | 2006-05-23 | 2008-12-02 | Dataram, Inc. | Software program for managing and protecting data written to a hybrid solid-state disk drive |
JP5066894B2 (ja) | 2006-11-07 | 2012-11-07 | 富士ゼロックス株式会社 | 記憶媒体制御装置 |
CN101344867A (zh) * | 2007-07-13 | 2009-01-14 | 深圳市江波龙电子有限公司 | 提高Nand型快闪存储器数据存取速度的方法 |
US8688894B2 (en) * | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
JP5295286B2 (ja) | 2011-02-23 | 2013-09-18 | 株式会社日立製作所 | 記憶装置およびそれを搭載した計算機 |
US9218281B2 (en) | 2012-05-04 | 2015-12-22 | Seagate Technology Llc | Maintaining ordering via a multi-level map of a solid-state media |
US9207880B2 (en) * | 2013-12-27 | 2015-12-08 | Intel Corporation | Processor with architecturally-visible programmable on-die storage to store data that is accessible by instruction |
US10013352B2 (en) * | 2014-09-26 | 2018-07-03 | Intel Corporation | Partner-aware virtual microsectoring for sectored cache architectures |
US9952788B2 (en) * | 2015-09-29 | 2018-04-24 | Cnex Labs, Inc. | Method and apparatus for providing a shared nonvolatile memory system using a distributed FTL scheme |
US20170177497A1 (en) * | 2015-12-21 | 2017-06-22 | Qualcomm Incorporated | Compressed caching of a logical-to-physical address table for nand-type flash memory |
CN106775466A (zh) * | 2016-12-05 | 2017-05-31 | 深圳市金泰克半导体有限公司 | 一种无dram的ftl读缓存管理方法及装置 |
JP7080327B2 (ja) * | 2017-12-21 | 2022-06-03 | マイクロン テクノロジー,インク. | Nand論理対物理テーブル領域追跡 |
US10572391B2 (en) * | 2018-02-09 | 2020-02-25 | Western Digital Technologies, Inc. | Methods and apparatus for implementing a logical to physical address mapping in a solid state drive |
US10592141B2 (en) * | 2018-03-06 | 2020-03-17 | Western Digital Technologies, Inc. | Error characterization for control of non-volatile memory |
CN108519858B (zh) * | 2018-03-22 | 2021-06-08 | 雷科防务(西安)控制技术研究院有限公司 | 存储芯片硬件命中方法 |
US10409511B1 (en) | 2018-06-30 | 2019-09-10 | Western Digital Technologies, Inc. | Multi-device storage system with distributed read/write processing |
CN110765156A (zh) * | 2018-07-09 | 2020-02-07 | 慧荣科技股份有限公司 | 链表搜索装置及方法 |
WO2020029115A1 (en) | 2018-08-08 | 2020-02-13 | Yangtze Memory Technologies Co., Ltd. | Memory device and forming method thereof |
KR102691851B1 (ko) * | 2018-08-29 | 2024-08-06 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그 동작 방법 |
JP6995723B2 (ja) | 2018-09-19 | 2022-01-17 | キオクシア株式会社 | メモリシステム、ストレージシステム、および制御方法 |
US11301369B2 (en) * | 2019-01-24 | 2022-04-12 | Western Digital Technologies, Inc. | Logical to physical mapping management using low-latency non-volatile memory |
KR102631812B1 (ko) * | 2019-05-17 | 2024-01-30 | 양쯔 메모리 테크놀로지스 씨오., 엘티디. | 정적 랜덤 액세스 메모리가 있는 3차원 메모리 디바이스 |
EP3909049A4 (en) | 2019-05-17 | 2022-08-24 | Yangtze Memory Technologies Co., Ltd. | DATA BUFFERING OPERATION OF A THREE-DIMENSIONAL STORAGE DEVICE WITH STATIC RAM ACCESS MEMORY |
KR20210001508A (ko) * | 2019-06-28 | 2021-01-06 | 에스케이하이닉스 주식회사 | 메모리 시스템의 MLC(Multi Level Cell)영역에 데이터를 안전하게 저장하기 위한 장치 및 그 방법 |
JP7472324B2 (ja) | 2021-02-08 | 2024-04-22 | 長江存儲科技有限責任公司 | 論理-物理(l2p)テーブルにキャッシュするためのオンダイスタティックランダムアクセスメモリ(sram) |
-
2021
- 2021-02-08 JP JP2022579004A patent/JP7472324B2/ja active Active
- 2021-02-08 KR KR1020227044272A patent/KR20230010754A/ko unknown
- 2021-02-08 CN CN202180000414.2A patent/CN112955956B/zh active Active
- 2021-02-08 CN CN202211133302.7A patent/CN115458008A/zh active Pending
- 2021-02-08 EP EP21923838.3A patent/EP4147134A4/en active Pending
- 2021-02-08 WO PCT/CN2021/075939 patent/WO2022165828A1/en unknown
- 2021-03-19 TW TW112114948A patent/TWI834542B/zh active
- 2021-03-19 TW TW110109935A patent/TWI803842B/zh active
- 2021-10-13 US US17/450,732 patent/US11755471B2/en active Active
-
2023
- 2023-07-11 US US18/350,487 patent/US12066932B2/en active Active
-
2024
- 2024-04-09 JP JP2024062623A patent/JP2024106993A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI822436B (zh) * | 2022-08-19 | 2023-11-11 | 旺宏電子股份有限公司 | 記憶體以及用於記憶體內搜尋的記憶體操作方法 |
US12131787B2 (en) | 2022-08-19 | 2024-10-29 | Macronix International Co., Ltd. | Page buffer counting for in-memory search |
Also Published As
Publication number | Publication date |
---|---|
US11755471B2 (en) | 2023-09-12 |
US20230350800A1 (en) | 2023-11-02 |
CN112955956B (zh) | 2022-09-30 |
CN115458008A (zh) | 2022-12-09 |
EP4147134A4 (en) | 2023-08-23 |
WO2022165828A1 (en) | 2022-08-11 |
US12066932B2 (en) | 2024-08-20 |
KR20230010754A (ko) | 2023-01-19 |
JP7472324B2 (ja) | 2024-04-22 |
TW202331528A (zh) | 2023-08-01 |
US20220253379A1 (en) | 2022-08-11 |
JP2023532235A (ja) | 2023-07-27 |
JP2024106993A (ja) | 2024-08-08 |
EP4147134A1 (en) | 2023-03-15 |
CN112955956A (zh) | 2021-06-11 |
TWI834542B (zh) | 2024-03-01 |
TWI803842B (zh) | 2023-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108694128B (zh) | 存储器系统和用于数据存储的方法 | |
TWI803842B (zh) | 用於從快閃記憶體讀取數據的方法與快閃記憶體系統 | |
US10732847B2 (en) | Optimistic read operation | |
US11836354B2 (en) | Distribution of logical-to-physical address entries across multiple memory areas | |
US20190004944A1 (en) | System and method for host system memory translation | |
US20180321864A1 (en) | System and method for processing non-contiguous submission and completion queues | |
KR102051179B1 (ko) | 데이터를 압축하는 시스템들 및 방법들 | |
US9633738B1 (en) | Accelerated physical secure erase | |
US11360908B2 (en) | Memory-efficient block/object address mapping | |
US20200293231A1 (en) | Memory system and operation method thereof | |
EP3422353B1 (en) | Stacked memory chip device with enhanced data protection capability | |
US10381097B2 (en) | Read mode tuning | |
US20200294598A1 (en) | Routing Bad Block Flag for Reducing Routing Signals | |
US20240249772A1 (en) | Elongated capacitors in 3d nand memory devices | |
US20240061606A1 (en) | Read retry method for enhancing read performance and stability of 3d nand memory | |
US20240168640A1 (en) | Method of improving programming operations in 3d nand systems | |
US20240160356A1 (en) | Method of reducing vpass disturb in 3d nand systems | |
US20230418743A1 (en) | Data storage device and method of operating the same | |
US20220300412A1 (en) | Storage System and Method for Enabling a Software-Defined Dynamic Storage Response | |
TW202326419A (zh) | 資料儲存裝置及其操作方法 | |
JP2023073234A (ja) | 保存装置及びそれを含むデータ処理システム |