TWI739022B - 晶粒定址 - Google Patents
晶粒定址 Download PDFInfo
- Publication number
- TWI739022B TWI739022B TW107126493A TW107126493A TWI739022B TW I739022 B TWI739022 B TW I739022B TW 107126493 A TW107126493 A TW 107126493A TW 107126493 A TW107126493 A TW 107126493A TW I739022 B TWI739022 B TW I739022B
- Authority
- TW
- Taiwan
- Prior art keywords
- die
- written
- block
- tus
- page
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- 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/65—Details of virtual memory and virtual address translation
-
- 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/7203—Temporary 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 (AREA)
- Read Only Memory (AREA)
Abstract
本發明係關於用於晶粒定址之一實例設備,其可包括記憶胞之一陣列及一記憶體快取。該記憶體快取可經組態以儲存一定址映射表之至少一部分。該定址映射表可包括將轉譯單元(TU)映射至該陣列中之實體位置的項。該等項可包括指示該陣列內儲存一特定TU之一位置的資料,而不包括指示該TU被儲存在該陣列之哪一晶粒的資料。
Description
本發明大體上係關於半導體記憶體及方法,且更特定言之,係關於晶粒定址。
記憶體裝置通常提供為電腦或其他電子器件中之內部、半導體、積體電路及/或外部可裝卸裝置。存在諸多不同類型之記憶體,包括揮發性及非揮發性記憶體。揮發性記憶體可能需要電力以保持其資料,且可包括隨機存取記憶體(random-access memory;RAM)、動態隨機存取記憶體(dynamic random access memory;DRAM)及同步動態隨機存取記憶體(synchronous dynamic random access memory;SDRAM)等等。非揮發性記憶體可在未供電時保存儲存之資料,且可包括NAND快閃記憶體、NOR快閃記憶體、相變隨機存取記憶體(phase change random access memory;PCRAM)、電阻性隨機存取記憶體(resistive random access memory;RRAM)及磁性隨機存取記憶體(magnetic random access memory;MRAM)等等。
記憶體裝置可被合併在一起以形成固態驅動機(solid state drive;SSD)。在各種其他類型之非揮發性及揮發性記憶體當中,SSD可包括非揮發性記憶體(例如,NAND快閃記憶體及/或NOR快閃記憶體),及/或可包括揮發性記憶體(例如,DRAM及/或SRAM)。快閃記憶體裝置可包括例如在諸如浮動閘極之電荷儲存結構中儲存資料之記憶胞,且可用作用於各種電子應用之非揮發性記憶體。快閃記憶體裝置通常使用單電晶體記憶胞,其允許高記憶體密度、高可靠性及低電力消耗。
快閃記憶體裝置可用作用於各種電子應用之揮發性及非揮發性記憶體。快閃記憶體裝置通常使用單電晶體記憶胞,其允許高記憶體密度、高可靠性及低電力消耗。快閃記憶體裝置通常可具有「NAND」或「NOR」記憶體陣列架構,因此需要其中佈置各基本記憶胞配置之邏輯形式。快閃記憶體之用途包括用於固態驅動機(SSD)、個人電腦、個人數位助理(personal digital assistant;PDA)、數位攝影機、蜂巢式電話、便攜式音樂播放機(例如,MP3播放機)及影片播放機,及其他電子裝置之記憶體。資料,諸如程式碼、用戶資料及/或系統資料,諸如基本輸入/輸出系統(basic input / output system;BIOS),通常儲存於快閃記憶體裝置中。
快閃記憶體裝置可包括快閃過渡層(FTL),其可使用(例如,在快閃記憶體元件上執行之編程操作期間)以將邏輯定址映射至快閃記憶體中之實體定址(例如,經由邏輯至實體(logical to physical;L2P)表)。然而,先前FTL方法中使用之定址映射表之大小(例如,其中儲存之資料的量)可為固定的,且隨待映射記憶體(例如,非揮發性儲存陣列,NAND)之大小變得更大而變得非常大。主記憶體(諸如在DRAM中)可為昂貴的,且空間可為受限的。如同先前方法,固定、較大定址映射表可能難以容納已受限量之記憶體(例如,非揮發性儲存陣列,NAND)空間。定址映射表越大,越難容納定址映射表之一部分至快取中而不影響快取命中速率。進一步,隨著FTL映射的記憶體之大小增加,定址映射表之大小可升高至難以管理的大小。
根據本發明之實施例,本發明係關於一種設備,其包含:記憶胞之一陣列;及記憶體快取,其經組態以儲存一定址映射表之至少一部分,其中:該定址映射表包含將轉譯單元(TU)映射至陣列中之實體位置之項,及該等項包含指示該陣列內儲存一特定TU之一位置的資料,而不包括指示該TU被儲存在該陣列之哪一晶粒的資料。
根據本發明之另一實施例,本發明係關於一種方法,其包含:使用一定址映射表中之一對應項來判定將一轉譯單元(translation unit;TU)寫入至記憶胞之一陣列之哪一特定部分;在不存取該定址映射表中之對應項的情況下,判定將該TU寫入至該陣列之該部分中之哪一特定晶粒;及將該TU寫入至記憶胞之一陣列之該部分之該特定晶粒。
根據本發明之另一實施例,本發明係關於一種設備,其包含:記憶胞之一陣列;及記憶體快取,其經組態以儲存一定址映射表之至少一部分,其中:該定址映射表包含將轉譯單元(TU)映射至陣列中之實體位置之項,及該等項包含指示該陣列內儲存一特定TU之一位置的資料;及一控制器,其經組態以使用與該等TU中之各者相關之一雜湊函數以判定將該等TU中之哪一TU寫入至該陣列之複數個晶粒中之哪一晶粒。
根據本發明之另一實施例,本發明係關於一種設備,其包含:記憶胞之一陣列,其包含:記憶體之數個晶粒,該數個晶粒各自包含數個平面,該數個平面各自包含數個區塊,該數個區塊各自包含數個頁面;耦接至該陣列之一控制器,其中該控制器經組態以:使用一雜湊函數判定寫入一轉譯單元(TU) 至該數個晶粒中之一晶粒;將該TU寫入至該經判定晶粒;使用該雜湊函數判定該TU位於該晶粒中;及自該晶粒讀取該TU。
本發明係關於用於晶粒定址之一實例設備,其可包括記憶胞之一陣列及一記憶體快取。記憶體快取可經組態以儲存一定址映射表之至少一部分。定址映射表可包括將轉譯單元(TU)映射至陣列中之實體位置之項。如本文所用,TU可指轉譯單元,或管理單元,以用於傳送及監控資料。該等項可包括指示該陣列內儲存一特定TU之一位置的資料,而不包括指示該TU被儲存在該陣列之哪一晶粒的資料。
本發明之實施例可包括具有特定大小表(例如,定址映射表)之快閃轉譯層。伴隨表映射之記憶體大小增加,表之大小可同樣增加,且可變得過高。舉例而言,快閃轉譯層中之表之大小(例如,其中儲存的資料之量)可變得過大及/或不可管理。
作為實例,在一些先前方法中,邏輯至實體(L2P)定址映射表中之項可包括對其中儲存一部分資料之記憶體晶粒、區塊、平面及頁面的指代。進一步,晶粒可包括數個平面,該數個平面可各自包括數個區塊,且該數個區塊可各自包括數個頁面。由於資料部分可被寫入至任何數目之晶粒,且在此等先前方法中一部分資料寫入晶粒之末端及/或開端、遍及複數個晶粒之情況下,定址映射表中之項可指示該部分資料被寫入至哪一晶粒,此增加項之長度。隨著記憶體(例如,非揮發性儲存陣列,NAND)擴增,定址映射表中指向晶粒之項亦可增加(例如,每項更多位元以指向晶粒)。作為實例,在具有1024晶粒之主記憶體中,應使用10位元每項以識別該部分資料儲存在哪一晶粒中。增加晶粒之數目將增加項中的位元之數目。
本發明之實施例可包括基於雜湊函數,判定寫入TU中之各者的特定晶粒。如本文所用,TU係轉譯單元,或管理單元,以用於傳送及監控資料。雜湊函數亦可用於定位TU被儲存在哪一晶粒中。如一些先前方法中使用,可在映射表中之對應項中的資料中編碼將TU寫入至哪一晶粒。藉由使用雜湊函數,先前方法中指示哪一晶粒之資料可被移除,且項之大小可減小。以此方式,可將特定TU寫入至特定晶粒,而不將特定TU寫入為橫跨遍及複數個晶粒。各TU可由單一邏輯區塊定址(logical block address;LBA)或多於一LBA構成。此外,藉由使用雜湊函數以更任意地選擇將轉譯單元寫入至複數個晶粒當中之一晶粒,該複數個晶粒之任何特定晶粒的損耗可更均勻地鋪展。
以此方式,與各TU相關之各映射條目之大小可減小,且可減小映射表之整體大小。隨著記憶體驅動機大小繼續增大,一種減小定址映射表之大小的方法可允許更大記憶體驅動器大小,而不伴隨用於將邏輯定址映射至實體定址的定址映射表之對應增加。以此方式,用於儲存定址映射表之實體記憶體空間可最小化,且定址映射表之可縮放性可增加。
以下本發明之實施方式中,參考隨附圖式,該等隨附圖式形成本文之一部分,且其中以圖示可如何實踐本發明之數個實施例之方式顯示。以足夠細節描述此等實施例,以允許一般熟習此項技術者實踐本發明之實施例,且應理解可利用其他實施例,且可作出製程、電氣及/或結構改變而不背離本發明之範疇。
如本文所用,「多個」某物可指一或多個此種事物。舉例而言,多個記憶胞可指一或多個記憶胞。另外,如本文所用,指示符「N」尤其相對於圖示中之附圖標記,指示本發明之多個實施例可包含多個如此指示之特定特徵。
本文之圖式遵照第一數位對應於圖式編號且剩餘數位識別圖式中之元件或組件的編號定則。不同圖式之間的類似元件或組件可藉由使用類似數位來識別。舉例而言,324可指代圖3中之元件「24」,且類似元件在圖4中可指代為424。如應瞭解,可添加、更換及/或消除本文多個實施例中所示的元件,從而提供多個本發明額外實施例。另外,如應瞭解,圖式中提供之元件的比例及相對縮放意欲說明本發明的實施例,且不應以限制性含義採用。
圖1說明根據本發明一或多個實施例之記憶體陣列100之一部分之一圖式,該陣列具有多個實體區塊。舉例而言,記憶體陣列100可為NAND或NOR快閃非揮發性記憶體陣列。然而,本發明之實施例不限於特定類型之記憶體陣列。進一步,儘管圖1中未示,但一般熟習此項技術者將瞭解記憶體陣列100可係位於特定半導體晶粒上,或遍及複數個半導體晶粒建構,連同與其操作相關之各種周邊電路系統。
如圖1中所展示,記憶體陣列100具有記憶胞之多個實體區塊116-0 (區塊0)、116-1 (區塊1),…,116-B (區塊B)。記憶胞可為單層胞及/或多層胞。作為實例,記憶體陣列100中之實體區塊的數目可為128個區塊、512個區塊或1,024個區塊,但實施例不限於128之特定倍數或記憶體陣列100中之任何特定實體區塊數目。
在圖1中所示之實例中,各實體區塊116-0、116-1,…,116-B包括記憶胞,其可作為一個單元一起被擦除(例如,各實體區塊中之胞可係以大致上同時之方式擦除)。例如,各實體區塊中之記憶胞可在單一擦除操作中一起被擦除。
如圖1中所展示,各實體區塊116-0、116-1,…,116-B包含經耦接至存取線(例如,字線)之記憶胞的多個實體列(例如,120-0、120-1,…,120-R)。各實體區塊中之列(例如,字線)的數目可為32,但實施例不限於每實體區塊之列120-0、120-1,…,120-R之特定的數目。
如一般熟習此項技術者將瞭解,每一列120-0、120-1,…,120-R可包括(例如,儲存)資料之一或多個實體頁面。實體頁面指代編程及/或感測單元(例如,作為記憶胞之官能團一起編程及/或感測之多個胞)。在圖1中所展示之實施例中,各列120-0、120-1,…,120-R儲存一個資料頁面。然而,本發明之實施例並不限於此。例如,在本發明之一或多個實施例中,每一列可儲存多個資料頁面,一或多個偶數資料頁面與偶數編號位元線相關,且一或多個奇數資料頁面與奇數編號位元線相關。另外對於包括多層胞之實施例,實體頁面可邏輯上劃分成資料之上部頁面及下部頁面,列中之各單元朝向資料上部頁面促進一或多個位元,且朝向資料下部頁面促進一或多個位元。在一或多個實施例中,記憶體陣列可包括記憶胞之多個實體區塊,且各實體區塊可組織成多個頁面。
在本發明之一或多個實施例中,且如圖1中所展示,與可儲存資料(例如,編程操作之後)之頁面相關之列被稱作轉譯單元(TU)122-0、122-1,…,122-S。各TU 122-0、122-1,…,122-S可儲存於對應於資料之一或多個邏輯部分的頁面部分120-0、120-1,…,120-R中。舉例而言,特定TU可對應於儲存於頁面中之特定邏輯領域,例如TU 122-0至122-S被說明為儲存於頁面120-0中。
儲存於頁面120-0中之各TU 122-0、122-1,…,122-S將具有實體標識符,諸如與此關聯之實體區塊編號(physical block number;PBN)。與TU 122-0至122-S相關之PBN標識記憶體陣列100內之區段的實際實體部位。舉例而言,PBN可標識CE#、LUN、平面、區塊、頁面、位置及/或狀態。進一步,多個PBN可被映射至記憶體陣列100中之記憶胞的實體頁面上。舉例而言,取決於記憶體陣列100係何種類型,一個、兩個或四個PBN可被映射至實體頁面上。在多個實施例中,區塊指代作為一單元一起擦除之一組記憶胞。多個區塊可包含在記憶胞平面中,且陣列可包括多個平面。作為一個實例,記憶體裝置可經組態以每頁面儲存8KB (千位元組)之用戶資料,每區塊儲存128頁面之用戶資料,每平面儲存2048區塊,且每裝置儲存16平面。
在此實例中,TU被用作轉譯單元,或管理單元,以用於傳送及監控資料。各TU可由單一邏輯區塊定址(LBA)或多於一LBA構成。如一般熟習此項技術者將瞭解,邏輯區塊定址係可由主機使用以識別資料之邏輯區段的方案。舉例而言,各邏輯區段可對應於唯一邏輯區塊定址(LBA)。另外,LBA亦可對應於實體定址。作為實例,資料邏輯區段可為資料之多個位元組(例如,256個位元組、512個位元組或1,024個位元組)。然而,實施例不限於此等實例。
在本發明之一或多個實施例中,多個TU可對應於一邏輯頁面編號(LPN)。舉例而言,多個TU (例如,資料之多個邏輯分區)可對應於LPN (例如,資料之多個邏輯分區)。舉例而言,取決於TU及/或LPN之大小,一或多個LPN可邏輯地映射一個TU。應注意實體區塊116-0、116-1,…,116-B、列120-0、120-1,…,120-R、TU 122-0、122-1,…,122-S及頁面之其他組態係可能的。舉例而言,實體區塊116-0、116-1,…,116-B之列120-0、120-1,…,120-R可各自儲存對應於TU之資料,其可包括例如多於或少於512個位元組資料。
圖2係根據本發明之數個實施例,呈形式包含記憶體系統204之計算系統201的設備之方塊圖。如本文所用,記憶體系統、控制器及/或記憶體裝置可分開地被稱作「設備」。舉例而言,記憶體系統204可為固態驅動機(SSD)。在圖2中所說明之實施例中,記憶體系統204包括主機介面206、記憶體(例如,多個記憶體裝置210-1、210-2,…,210-N),及耦接至實體主機介面206及記憶體裝置210-1、210-2,…,210-N之控制器208 (例如,SSD控制器)。
記憶體裝置210-1、210-2,…,210-N (共同地稱作記憶體裝置210或記憶體210)可例如包括多個非揮發性記憶體陣列(例如,非揮發性記憶胞之陣列)。例如,記憶體裝置210可包括類似於先前結合圖1所描述之記憶體陣列100的多個記憶體陣列。記憶體裝置210-1可包括儲存於記憶體裝置210-1內之表212。在一些實施例中,表212可為對應於全部記憶體(例如,記憶體裝置210)且包括全部記憶體之邏輯至實體映射的定址映射表。
控制器208可包括儲存表214之快取207 (例如,使用DRAM 或SRAM以儲存資料之記憶體快取)。表214可包括定址映射表(例如,L2P表)之至少一部分。舉例而言,快取207可儲存負載至其中的定址映射表(例如,表212)之一或多個部分。定址映射表212之部分可對應於表212 (下文與圖3結合另外描述)映射之記憶體(例如,210-1至210-N)之對應實體區域。由於快取207之記憶體空間可受限,因此負載至表214之該一或多個部分可受限。藉由減小定址映射表212內的各項之大小,且因此減小負載至表214之內容之大小,更多實體至邏輯(L2P)映射資料可被儲存於表214中。如下文進一步描述,藉由儲存資料(諸如TU)於特定晶粒中且不使用額外資料位以指示資料儲存於哪一晶粒,可減小定址映射表(諸如表212及儲存至表214之部分)之項。作為實例,表212中之項可包括指示與該項相關之資料所在的平面、區塊及頁面的資料,而不包括指示哪一晶粒儲存該資料的資料。
在一些實施例中,記憶體裝置210可包括記憶胞之多個陣列(例如,非揮發性記憶胞)。舉例而言,陣列可為具有NAND架構之快閃陣列。然而,實施例不限於特定類型之記憶體陣列或陣列架構。如上文結合圖1所述,記憶胞可例如分組至包括記憶胞之多個實體頁面的多個區塊中。在多個實施例中,區塊指代作為一單元一起擦除之一組記憶胞。多個區塊可包含在記憶胞平面中,且陣列可包括多個平面。作為一個實例,記憶體裝置可經組態以每頁面儲存8KB (千位元組)之用戶資料,每區塊儲存128頁面之用戶資料,每平面儲存2048區塊,且每裝置儲存16平面。
在操作中,資料可例如作為資料頁面自記憶體系統之記憶體裝置(例如,記憶體系統204之記憶體裝置210)被讀取,及/或被寫入至該記憶體裝置。因而,資料頁面可被稱作記憶體系統之資料傳送大小。資料可以被稱作分區(例如,主機分區)之資料片段形式被傳送至主機202/自該主機傳送。因而,資料區段可被稱作主機之資料傳送大小。在一些實施例中,NAND區塊可被稱為擦除區塊,其中區塊為擦除之單元,頁面為讀取及/或寫入之量度。
主機介面206可用於在記憶體系統204於諸如主機202之另一裝置之間傳達資訊。主機202可包括記憶體存取裝置(例如,處理器)。如本文所用,「處理器」可能意指多個處理器,諸如平行處理系統、多個共處理器等。實例主機可包括個人膝上型電腦、桌上型電腦、數位攝影機、數位記錄及回放裝置、行動(例如,智慧型)電話、PDA、記憶卡讀取器、介面集線器及類似者。
主機介面206可呈標準化實體介面之形式。舉例而言,當記憶體系統204被用於計算系統201中之資訊儲存時,主機介面206可為串列進階附接技術(serial advanced technology attachment;SATA)實體介面、快捷外設互聯標準(peripheral component interconnect express ;PCIe)實體介面,一通用串列匯流排(universal serial bus;USB)實體介面,及其他實體連接器及/或介面。然而,一般而言,主機介面206可提供介面以用於在記憶體系統204與具有對於介面206相容之接收器的主機(例如,主機202)之間傳遞控制、定址、資訊(例如,資料)及其他信號。
舉例而言,控制器208可包括控制電路系統及/或邏輯(例如,硬體及韌體)。控制器208可包含於與記憶體210-1、210-2,…,210-N相同之實體裝置(例如,相同晶粒)上。舉例而言,控制器208可為耦接至包括實體主機介面206及記憶體210-1、210-2,…,210-N之印刷電路板的特殊應用積體電路(application specific integrated circuit;ASIC)。另外地,控制器208可包括在以通信方式耦接至包括記憶體210-1、210-2,…,210-N之實體裝置的獨立實體裝置上。在多個實施例中,控制器208之組件可作為分佈式控制器遍及多個實體裝置(例如,一些組件在與記憶體相同之晶粒上,且一些組件在不同晶粒、模塊或板上)散佈。
控制器208可與記憶體裝置210通信以進行感測(例如,讀取)、編程(例如,寫入)、擦除及/或以新資料覆寫現存資料,及其他操作。控制器208可具有電路系統,其可為多個積體電路及/或離散組件。在多個實施例中,控制器208中之電路系統可包括用於控制遍及記憶體裝置210之存取的控制電路系統,及/或用於在主機202與記憶體系統204之間提供轉譯層(例如,快閃轉譯層) 之電路系統。
控制器208作為快取控制各對應記憶體裝置210-1、210-2,…,210-N的諸如區塊定址部分之專用區域之操作。舉例而言,如本文將進一步描述(例如,結合圖3),各對應記憶體裝置210-1、210-2,…,210-N之一部分可為各對應記憶體中之記憶胞的一第一複數個區塊(例如,實體區塊),且在本文中可被稱作記憶體之一第一部分。此外,各對應記憶體裝置210-1、210-2,…,210-N之部分可包括第二複數個區塊、第三複數個區塊等。
圖2中所說明之實施例可包括未說明之額外電路系統、邏輯,及/或組件,以免混淆本發明之實施例。舉例而言,記憶體裝置204可包括定址電路系統以鎖存貫穿I/O電路系統跨越I/O連接器提供之定址信號。可藉由列解碼器及行解碼器獲得及解碼定址信號,以存取記憶體210-1、210-2,…,210-N。
圖3說明根據本發明之多個實施例之記憶體系統340之方塊圖。圖3說明分成對應平面、區塊及頁面部分之多個記憶體晶粒318-1、318-2、318-3。在此實例中,記憶體晶粒318-1、318-2、318-3(其等可在本文中被稱作晶粒318)各自包括四個記憶體平面。舉例而言,晶粒318-1包括平面320-1、320-2、320-3及320-4。晶粒318-2包括平面320-5、320-6、320-7、320-8。晶粒318-3包括平面320-9、320-10、320-11、320-12。平面320-1至320-12在本文中可被稱作平面320。各平面320包括多個記憶體區塊(例如,晶粒318-1之平面320-1包括區塊322-1、322-2、322-B,且晶粒318-2之平面320-5包括區塊322-3、322-4,等)。平面320可指記憶體之區塊的一部分。作為實例,記憶體晶粒318可經組態以每頁面儲存8KB (千位元組)之用戶資料,每區塊儲存128頁面之用戶資料,每平面儲存2048區塊,且每晶粒318儲存4平面。如本文所描述,記憶胞區塊可在一個擦除操作中被一起擦除。
各區塊包括多個頁面(例如,包含在晶粒318-1之平面320-1之區塊322-1中的頁面324-1、325-1、325-P,及包含在晶粒318-2之平面320-5之區塊322-3中的頁面324-5、325-5)。如本文所描述,記憶胞之頁面可在一個寫入或讀取操作中被一起寫入或讀取。各平面可與對應資料暫存器雙向通信,且各資料暫存器可與對應快取暫存器雙向通信。資料可係在寫入操作期間自對應資料暫存器轉移至記憶體平面320之一。資料可係在讀取操作期間自記憶體平面320之一轉移至資料暫存器。儘管說明為四個平面,但實施例不限於特定數目之平面,也不限於特定數目之每平面區塊或特定數目之每區塊頁面。
轉譯單元(TU)(例如,圖1中之TU 122-0、122-1等)可係以特定實體順序自主機寫入至記憶體系統340之部分。舉例而言,第一TU可被寫入至晶粒318-1之平面320-1之區塊322-1的頁面324-1。多個TU可被寫入至頁面324-1,且回應於TU之第一部分不被寫入至不容納TU之額外部分的頁面,TU之第二部分可繼續被寫入至晶粒318-1之平面320-2的頁面324-2,諸如此類。因此,資料可遍及平面320-1之頁面324-1被寫入,繼續被寫入至在平面320-2中之頁面324-2,繼續被寫入至在平面320-3中之頁面324-3,及繼續被寫入至在平面320-4中之頁面324-4。
在一些先前方法中,使用實體定址指代TU,其包括用於晶粒之定址部分、用於區塊之定址部分、用於平面之定址部分,及用於頁面之定址部分。各定址部分指示TU應被寫入至晶粒/區塊/平面/頁面之哪一處。在此等先前方法中,TU可在被寫入至各第一區塊之第二頁面之前,被遍及各晶粒之各平面遍及各第一區塊之各第一頁面被寫入。舉例而言,TU可被寫入至在平面320-4中之頁面324-4,直至最末TU,其第一部分被寫入至頁面324-4之最末部分,且其他部分無法容納。最末TU之額外部分可被寫入至晶粒318-2之平面320-5之頁面324-5。後續TU可遍及頁面324-5被寫入,繼續至下一個頁面324-6、繼續至下一個頁面324-7,且繼續至下一個頁面324-8。最末TU,其第一部分被寫入至頁面324-8之結尾,且其額外部分不可容納,可被寫入至晶粒318-3之平面320-9之第一頁面324-9。
在此等先前方法中,由於特定TU可被寫入至任何數目之晶粒,且在TU被寫入至晶粒之末端及/或開端,遍及多個晶粒之情況下,TU可在映射表中包括與該對應特定TU相關之定址部分,其指示該TU被寫入至哪一晶粒。舉例而言,當前進至另外編號之頁面之前,以遍及各晶粒之四個平面中之各者之各第一區塊之各第一頁面的序列寫入資料時,TU可橫跨多個晶粒。橫跨超過一個晶粒的TU映射表中的定址應包括指示該TU之資料橫跨哪些晶粒的定址部分。在替代方案中,橫跨超過一個晶粒之TU之映射表中的定址應包括定址部分,其指示TU之哪一晶粒被初始地寫入資料,且依據寫入TU之晶粒可為依序次序,可推斷後續晶粒。
如本文中結合圖4所描述,映射表中之定址部分可包括特定區塊、平面及頁面之定址,但可能不包括晶粒之定址。以此方式,相對於先前方法,可最小化映射表中之定址部分。為實現此點,TU可使用特定操作(例如,雜湊函數)被寫入至特定晶粒,且在至少一個實例中不橫跨多個晶粒。晶粒可基於經執行以指示TU被寫入至哪一晶粒中的特定操作(例如,雜湊函數)與TU相關聯。
圖4說明根據本發明之數個實施例之記憶體系統450之圖式。圖4說明轉譯單元(TU)資料可如何被寫入至特定晶粒中,使得被寫入之TU中之各者不橫跨超過一個晶粒。TU資料可被寫入至特定晶粒,使得映射表(例如,圖2中之表212)中於該TU資料相關之一定址的一部分不包括晶粒定址,由此最小化使用的映射表之大小。將在下文進一步描述在晶粒中定位TU的額外方式。
記憶體系統450可為圖3中之記憶體系統340的表示,其中記憶體系統340可為資料如何儲存及/或構造之實體表示,而記憶體系統450可為彼等資料位置之表示,以便於說明資料被如何寫入至記憶體系統340。記憶體系統450可包括多個晶粒418-1、418-2、418-3、418-4、418-5、418-6、418-7,…,418-P。該數個晶粒418-1至418-P在本文中可被稱作晶粒418,且對應於圖3中之晶粒318。晶粒418中之各者可包括多個平面。舉例而言,晶粒418中之各者可包括第一平面(「平面0」)420-1、第二平面(「平面1」)420-2、第三平面(平面2」)420-3,及第四平面(「平面3」)420-4,其對應於特定頁面(「頁面N」)424。第一晶粒418-1的平面420-1至420-4對應於圖3中之平面320-1至320-4。第二晶粒418-2之平面420-1至420-4對應於圖3中之平面320-5至320-8,諸如此類。舉例而言,在圖4中,為便於說明,在圖4中說明四個平面420-1、420-2、420-3、420-4以指全部晶粒418,但如圖3中所說明,各晶粒具有其自身實體平面,
出於說明的目的,平面420-1至420-4對應於各晶粒(例如,圖3中之第一晶粒318-1之第一平面320-1之第一區塊322-1,且貫穿各晶粒之各平面諸如此類)之各第一區塊中儲存之第一頁面其在圖4中由頁面N 424示出。更特定言之,相對於第一晶粒(例如,圖3中之318-1及圖4中之418-1),在圖4中之平面420-1之第一頁面424-1對應於圖3中之頁面324-1。圖4中的平面420-2中之第一頁面424-2對應於圖3中之頁面324-2,圖4中的平面420-3中之第一頁面424-3對應於圖3中之頁面324-3,且圖4中的平面420-4中之第一頁面424-4對應於圖3中之頁面324-4。
進一步,平面420-A至420-D (亦標註為平面0至平面3)與平面420-1至420-4係相同平面。然而,平面420-1至420-4對應於晶粒中之各者的第一區塊之第一頁面(例如,圖3中之頁面324-1至324-12),且平面420-A至420-D對應於晶粒中之各者的第一區塊之第二頁面(例如,頁面325-1至325-12)。舉例而言,頁面424-1係第一平面420-1之第一區塊之第一頁面,頁面424-2第二平面420-2之第一區塊之第一頁面,頁面424-3係第三平面420-3之第一區塊之第一頁面,且頁面424-3係第四平面420-4之第一區塊之第一頁面。頁面425-1 (例如,頁面325-1)係第一平面420-A之一第一區塊之第二頁面,頁面425-2 (例如,頁面325-2)係第一平面420-B之一第一區塊之第二頁面,頁面425-3 (例如,頁面325-3)係第一平面420-C之一第一區塊之第二頁面,且頁面425-4 (例如,頁面325-4)係第一平面420-D之一第一區塊之第二頁面。此外,為便於說明,記憶體系統450說明特定區塊(在此狀況下,各晶粒之各平面之第一區塊),且儘管並未說明各平面之額外區塊,但可執行其他區塊中之各者中之類似的資料寫入模式。
作為TU如何被寫入之實例,第一TU可依序在平面420-1之第一頁面424-1之開端處首先被寫入。TU之第一部分可在第一TU之後被寫入,且可被寫入在第一頁面424-1內,且繼續,如由箭頭430-1指示,被寫入至下一個平面420-2中之第一頁面424-2中。TU之第二部分可遍及第一頁面424-2被寫入,且繼續,如由箭頭430-2指示,被寫入至下一個平面420-3中之第一頁面424-3中。TU之第三部分可遍及第一頁面424-3被寫入,且繼續,如由箭頭430-3指示,被寫入至下一個平面420-4中之第一頁面424-4中。TU之第四部分可遍及第一頁面424-4被寫入,且,代替被寫入至下一個晶粒之第一頁面中(其應包括被寫入至頁面424-5、424-6、424-7及424-8中),繼續,如由箭頭430-4指示,被寫入至第一平面420-A (其與平面420-1為相同平面)中之第二頁面425-1中。TU之第五部分可遍及第二頁面425-1被寫入,且繼續,如由箭頭430-5指示,被寫入至第二平面420-B (其與平面420-2為相同平面)中之第二頁面425-2中。TU之第六部分可遍及第二頁面425-2被寫入,且繼續,如由箭頭430-6指示,被寫入至第二頁面425-3中。
以此方式,上文所述之TU部分可全部被寫入至同一晶粒(例如,晶粒418-1)。同樣,被寫入至第二晶粒418-2之TU可被寫入至第一頁面424-6至424-8,且繼續被遍及頁面424-8被寫入至第二頁面425-5,且繼續至第二頁面425-6 (如由箭頭432-1至432-5指示)。因此,TU並不橫跨遍及超過一個晶粒,且可判定TU之晶粒位置而不使用包括晶粒位置之定址部分。舉例而言,與TU相關的映射表之定址部分可包括指示TU位於哪一頁面、平面及區塊中之一指示,且可判定晶粒位置而無需定址部分資訊。進一步,各晶粒可獨立地被寫入,且可為每晶粒產生一寫入游標以用於晶粒上之區塊內的寫入頁面,而不參考寫入至另一晶粒的最末頁面。
可作出指示TU中之各者應被寫入至哪一晶粒之判定。此判定可保證主機對於全部晶粒執行偶數個寫入,使得TU之寫入遍及全部晶粒更均勻地分佈。可在TU定址上執行雜湊操作,以選擇將TU寫入至哪一晶粒。雜湊操作可包括簡單非加密層雜湊。雜湊操作可包括乘法雜湊,其使用一個乘法運算及一個移位運算,以執行各TU之雜湊。儘管描述雜湊函數及/或乘法雜湊,但實例不限於此。可執行任何數目之雜湊及/或類似數學函數以判定TU被寫入至及/或儲存在哪一晶粒中。使用雜湊操作分配TU至特定晶粒可劃分記憶體系統為n個單個子記憶體,其中n係晶粒之數目。劃分記憶體系統可為有利的,其在於各晶粒可能保持特定量之記憶體空間,以用於待寫入之額外TU。舉例而言,無特定晶粒可相較於其他晶粒更快用完空間,且以類似速率填充。
當額外記憶體空間待被分配以用於待寫入之額外TU時,可分配區塊條帶,且區塊條帶中之各晶粒可基於分配至其的TU被獨立地寫入。區塊條帶可指遍及多個位置中之多個區塊分割資料。舉例而言,可遍及各晶粒之各第一區塊儲存資料,且遍及此等第一區塊中之各者的資料可被稱作區塊條帶。此與使寫入游標指向區塊條帶相似,但TU被寫入在各晶粒內的實際點係獨立子寫入游標。儘管區塊條帶接近儲存TU於全部可用記憶體空間(例如,區塊條帶達到完全容量),但可闡述每一晶粒未同時被寫入其最末頁面之情形。處理此情形之第一方法可包括在一個晶粒滿時填補全部其他晶粒中之剩餘頁面,使得區塊條帶可立即關閉,且可開啟新區塊條帶以用於寫入。處理此情形之第二方法可包括使用特定操作(例如,重複雜湊操作或相似操作)以提供用於待寫入至滿晶粒之TU的替代位置。處理此情形之第三方法可包括在舊區塊條帶中之全部晶粒關閉之前啟動下一個區塊條帶。舊區塊中之全部晶粒閉合之前可經過較短時間,其可為此方法較佳之原因。
回應於TU以相較於遠高於其他晶粒的速率被寫入至一個晶粒,不管正使用的雜湊函數為何(例如,若雜湊函數反向),可藉由包括除使用雜湊函數判定之實體晶粒編號以外的邏輯晶粒編號,最小化不均勻損耗水平。可保持映射表以儲存邏輯晶粒編號與實體晶粒編號之間的每區塊條帶偏移。可藉由主機將TU寫入至雜湊函數計算出的邏輯晶粒編號。回應於偵測單個晶粒上之過量損耗,邏輯晶粒編號於實體晶粒編號之間的偏移可經修改。修改偏移可能轉移後續寫入至不同晶粒,且減小單個晶粒上之過量損耗。偏移可以特定區間遞增以更均勻地隨機分配晶粒且避免過量損耗,而非監控單個晶粒上之損耗。
隨著記憶體之大小增加,映射表可變得過大。隨著映射表中之每一項之大小影響映射表之整體大小,減小每一項之大小可允許更小映射表及記憶體空間之更高效使用。舉例而言,NAND記憶體之8 TB之記憶體驅動可使用200晶粒。50至100 TB區間之記憶體驅動可使用上至800晶粒。在此實例中,映射表(例如,邏輯至實體映射表)之晶粒定址可為8至10位元,其皆可藉由與圖式3至4結合的描述消除。進一步,隨著記憶體驅動機之大小,且藉此晶粒之數目的增加(即,更多晶粒將需要更多資料位元以引用),此可避免每TU在映射表中每項4至5位元組。此外,更小映射表可藉由提供否則將儲存映射表之額外記憶體空間,增加晶粒之數目。
儘管本文已說明及描述特定實施例,但一般熟習此項技術者將瞭解,經計算達成相同結果之佈置可取代展示之特定實施例。本發明意欲覆蓋本發明之多個實施例的調適或變化。應理解,上文描述係以說明性方式而非限定性方式作出。熟習此項技術者在審閱上文描述之後將顯而易見上文實施例的組合及本文中未具體描述之其他實施例。本發明之多個實施例之範疇包括使用以上構造及方法的其他應用。因此,應參考隨附申請專利範圍,連同此等申請專利範圍授權的等效物之完全範圍,判定本發明之多個實施例的範疇。
在前述實施方式中,各種特徵出於精簡本發明之目的而在實施例中分組在一起。本發明之方法並不被解譯為反映本發明所揭示之實施例必須使用比在各申請專利範圍中明確陳述之特徵更多的特徵的意圖。確切而言,如以下申請專利範圍所反映,本發明標的物在於單一所揭示實施例之少於全部的特徵。因此,以下申請專利範圍特此併入實施方式中,其中每一申請專利範圍就其自身而言作為單獨實施例。
100‧‧‧記憶體陣列116-0‧‧‧實體區塊116-1‧‧‧實體區塊116-B‧‧‧實體區塊120-0‧‧‧列120-1‧‧‧列120-R‧‧‧列122-0‧‧‧轉譯單元122-1‧‧‧轉譯單元122-S‧‧‧轉譯單元201‧‧‧計算系統202‧‧‧主機204‧‧‧記憶體系統206‧‧‧主機介面207‧‧‧快取208‧‧‧控制器210-1‧‧‧記憶體210-2‧‧‧記憶體210-N‧‧‧記憶體212‧‧‧表214‧‧‧表318-1‧‧‧晶粒318-2‧‧‧晶粒318-3‧‧‧晶粒320-1‧‧‧平面320-2‧‧‧平面320-3‧‧‧平面320-4‧‧‧平面320-5‧‧‧平面320-6‧‧‧平面320-7‧‧‧平面320-8‧‧‧平面320-9‧‧‧平面320-10‧‧‧平面320-11‧‧‧平面320-12‧‧‧平面322-1‧‧‧區塊322-2‧‧‧區塊322-3‧‧‧區塊322-4‧‧‧區塊322-5‧‧‧區塊322-6‧‧‧區塊322-B‧‧‧區塊324-1‧‧‧頁面324-2‧‧‧頁面324-3‧‧‧頁面324-4‧‧‧頁面324-5‧‧‧頁面324-6‧‧‧頁面324-7‧‧‧頁面324-8‧‧‧頁面324-9‧‧‧頁面324-10‧‧‧頁面324-11‧‧‧頁面324-12‧‧‧頁面325-1‧‧‧頁面325-2‧‧‧頁面325-3‧‧‧頁面325-4‧‧‧頁面325-5‧‧‧頁面325-6‧‧‧頁面325-7‧‧‧頁面325-8‧‧‧頁面325-9‧‧‧頁面325-10‧‧‧頁面325-11‧‧‧頁面325-12‧‧‧頁面325-P‧‧‧頁面340‧‧‧記憶體系統418-1‧‧‧晶粒418-2‧‧‧晶粒418-3‧‧‧晶粒418-4‧‧‧晶粒418-5‧‧‧晶粒418-6‧‧‧晶粒418-7‧‧‧晶粒418-8‧‧‧晶粒420-1‧‧‧平面420-2‧‧‧平面420-3‧‧‧平面420-4‧‧‧平面420-A‧‧‧平面420-B‧‧‧平面420-C‧‧‧平面420-D‧‧‧平面424‧‧‧頁面424-1‧‧‧頁面424-2‧‧‧頁面424-3‧‧‧頁面424-4‧‧‧頁面424-5‧‧‧頁面424-6‧‧‧頁面424-7‧‧‧頁面424-8‧‧‧頁面425‧‧‧頁面425-1‧‧‧頁面425-2‧‧‧頁面425-3‧‧‧頁面425-4‧‧‧頁面425-5‧‧‧頁面425-6‧‧‧頁面425-7‧‧‧頁面425-8‧‧‧頁面430-1‧‧‧箭頭430-2‧‧‧箭頭430-3‧‧‧箭頭430-4‧‧‧箭頭430-5‧‧‧箭頭430-6‧‧‧箭頭432-1‧‧‧箭頭432-2‧‧‧箭頭432-3‧‧‧箭頭432-4‧‧‧箭頭432-5‧‧‧箭頭450‧‧‧記憶體系統
圖1根據本發明之數個實施例說明具有數個實體區塊之記憶體陣列之一部分的圖式。
圖2係根據本發明之數個實施例,呈包含記憶體系統之計算系統形式的設備方塊圖。
圖3根據本發明之數個實施例說明記憶體系統之圖式。
圖4根據本發明之數個實施例說明記憶體系統之圖式。
418-1‧‧‧晶粒
418-2‧‧‧晶粒
418-3‧‧‧晶粒
418-4‧‧‧晶粒
418-5‧‧‧晶粒
418-6‧‧‧晶粒
418-7‧‧‧晶粒
418-8‧‧‧晶粒
420-1‧‧‧平面
420-2‧‧‧平面
420-3‧‧‧平面
420-4‧‧‧平面
420-A‧‧‧平面
420-B‧‧‧平面
420-C‧‧‧平面
420-D‧‧‧平面
424‧‧‧頁面
424-1‧‧‧頁面
424-2‧‧‧頁面
424-3‧‧‧頁面
424-4‧‧‧頁面
424-5‧‧‧頁面
424-6‧‧‧頁面
424-7‧‧‧頁面
424-8‧‧‧頁面
425‧‧‧頁面
425-1‧‧‧頁面
425-2‧‧‧頁面
425-3‧‧‧頁面
425-4‧‧‧頁面
425-5‧‧‧頁面
425-6‧‧‧頁面
425-7‧‧‧頁面
425-8‧‧‧頁面
430-1‧‧‧箭頭
430-2‧‧‧箭頭
430-3‧‧‧箭頭
430-4‧‧‧箭頭
430-5‧‧‧箭頭
430-6‧‧‧箭頭
432-1‧‧‧箭頭
432-2‧‧‧箭頭
432-3‧‧‧箭頭
432-4‧‧‧箭頭
432-5‧‧‧箭頭
450‧‧‧記憶體系統
Claims (20)
- 一種記憶體設備,其包含:記憶胞之一陣列,其包含複數個晶粒;一記憶體快取,其經組態以儲存一定址映射表之至少一部分,其中:該定址映射表包含將轉譯單元(translation unit,TU)映射至該陣列中之實體位置的項(entries),及該等項包含指示該陣列內儲存一特定TU之一位置的資料,而不包括指示該TU被儲存在該陣列之該複數個晶粒的哪一晶粒的資料;及一控制器,其經組態以:遍及(across)一區塊條帶(block stripe)寫入若干TU,該區塊條帶包括該複數個晶粒之各者(each)之一對應區塊,其中:該等TU之各者係僅被寫入至該複數個晶粒中之一單一晶粒;一寫入游標(write cursor)指示該等TU之各者係待被寫入至哪一對應晶粒的哪一對應區塊條帶;及一子寫入游標指示在該對應晶粒之該對應區塊條帶內的哪一位置寫入各對應TU;及將該特定TU寫入至該區塊條帶中之一晶粒之一對應區塊,其中該特定TU不被寫入至該區塊條帶中之其他晶粒。
- 如請求項1之設備,其包含一控制器,該控制器經組態以使用與該等TU中之各者相關之一雜湊函數(hash function),以判定將該等TU中之哪 一TU寫入至該陣列之複數個晶粒中之哪一晶粒。
- 如請求項1之設備,其包含一控制器,該控制器經組態以將該等TU寫入至該陣列之複數個晶粒,而不使用該定址映射表中之對應項。
- 如請求項1之設備,其包含經耦接至該陣列之該控制器,其中該控制器經組態以自一主機將一轉譯單元(TU)之一第一部分寫入至記憶體之一第一部分,其中記憶體之該第一部分係處於該陣列之一第一晶粒之一第一組平面之一第一編號區塊之一第一頁面中。
- 如請求項1至4中任一項之設備,其中該控制器進一步經組態以自該主機將該TU之一第二部分寫入至記憶體之一第二部分,其中記憶體之該第二部分係處於該陣列之該第一晶粒之該第一組平面之該第一編號區塊之一第二頁面中。
- 如請求項5之設備,其中該控制器進一步經組態以在寫入該TU之該第一部分之後,寫入該TU之該第二部分。
- 如請求項5之設備,其中該控制器進一步經組態以寫入該TU之該第二部分,而不寫入在該第一部分與該第二部分之間之一額外TU。
- 如請求項5之設備,其中該第二部分與該第一部分係依序實體地寫入。
- 一種用於晶粒定址之方法,其包含:使用一定址映射表中之一對應項來判定將一轉譯單元(TU)寫入至記憶胞之一陣列的哪一特定部分;在不存取該定址映射表中之該對應項的情況下,判定將該TU寫入至該陣列之該部分中之複數個晶粒的哪一特定晶粒;及遍及一區塊條帶寫入若干TU,該區塊條帶包括該複數個晶粒之各者之一對應區塊,其中:該等TU之各者係僅被寫入至該複數個晶粒中之一單一晶粒;一寫入游標指示該等TU之各者係待被寫入至哪一對應晶粒的哪一對應區塊條帶;及一子寫入游標指示在該對應晶粒之該對應區塊條帶內的哪一位置寫入各對應TU;及將該特定TU寫入至該區塊條帶中之一晶粒之一對應區塊,其中該特定TU不被寫入至該區塊條帶中之其他晶粒。
- 如請求項9之方法,其中將該TU寫入至哪一特定晶粒之該判定包含對該TU之一部分執行一雜湊函數。
- 如請求項9之方法,其中寫入該TU包含將該TU之一第一部分寫入至該特定晶粒之一第一平面之一第一編號區塊之一第一頁面;及在寫入該第一部分之後,將該TU之一第二部分寫入至該特定晶粒之一第二平面之該第一編號區塊之一第二頁面。
- 如請求項11之方法,其中被寫入該TU之該第一平面係與待寫入之該第一頁面相關之一組平面中之一最末排序平面。
- 如請求項12之方法,其中被寫入該TU之該第二平面係與待寫入之該第二頁面相關之一組平面中之一最前排序平面。
- 如請求項11至13中任一項之方法,其包含:將一額外TU之一第一部分寫入至一第二晶粒之一第一平面之該第一編號區塊之一第一頁面;及在寫入該額外TU之該第一部分之後,將該額外TU之一第二部分寫入至該第二晶粒之一第二平面之該第一編號區塊之一第二頁面。
- 一種記憶體設備,其包含:記憶胞之一陣列,其包含複數個晶粒;及一記憶體快取,其經組態以儲存一定址映射表之至少一部分,其中:該定址映射表包含將轉譯單元(TU)映射至該陣列中之實體位置的項,其中該等TU中之至少一者經映射至一特定晶粒之一第一頁面及該特定晶粒之一第二頁面兩者;及該等項包含指示該陣列內儲存一特定TU之一位置的資料;及一控制器,其經組態以:使用與該等TU中之各者相關之一雜湊函數以判定將該等TU中之哪 一TU寫入至該陣列之該複數個晶粒中的哪一晶粒;遍及一區塊條帶寫入若干TU,該區塊條帶包括該複數個晶粒之各者之一對應區塊,其中:該等TU之各者係僅被寫入至該複數個晶粒中之一單一晶粒;一寫入游標指示該等TU之各者係待被寫入至哪一對應晶粒的哪一對應區塊條帶;一子寫入游標指示在該對應晶粒之該對應區塊條帶內的哪一位置寫入各對應TU;及該等TU之各者係被寫入至其對應單一晶粒而不參考寫入至一先前晶粒上的一最末頁面;及將該特定TU寫入至該區塊條帶中之一晶粒之一對應區塊,其中該特定TU不被寫入至該區塊條帶中之其他晶粒。
- 如請求項15之設備,其中該控制器進一步經組態以在不使用該定址映射表中之對應項的情況下,判定將該等TU中之各者寫入至哪一晶粒。
- 如請求項15之設備,其中該等項不包括指示該陣列之哪一晶粒儲存該等TU中之各者的資料。
- 如請求項15之設備,其中該控制器進一步經組態以執行一乘法運算及一移位運算中之至少一者之一組合,以判定將該等TU中的哪一TU寫入至該陣列之複數個晶粒中的哪一晶粒。
- 如請求項15至18中任一項之設備,其中該控制器進一步經組態以:自一主機將一轉譯單元(TU)之一第一部分寫入至記憶體之一第一部分,其中記憶體之該第一部分係處於該陣列之一第一晶粒之一第一組平面之一第一編號區塊之一第一頁面中;及自該主機將該TU之一第二部分寫入至記憶體之一第二部分,其中記憶體之該第二部分係處於該陣列之該第一晶粒之該第一組平面之該第一編號區塊之一第二頁面中。
- 一種記憶體設備,其包含:記憶胞之一陣列,其包含:記憶體之複數個晶粒,該複數個晶粒各自包含數個平面,該數個平面各自包含數個區塊,該數個區塊各自包含數個頁面;經耦接至該陣列之一控制器,其中該控制器經組態以:使用一雜湊函數來判定將複數個轉譯單元(TU)之各對應TU寫入至該複數個晶粒中的哪一晶粒,其中使用該雜湊函數來隨機分配(randomize)哪一晶粒經選擇以寫入該複數個TU中之各對應TU且減少在該複數個晶粒中的任何特定晶粒上的損耗;遍及一區塊條帶寫入若干TU,該區塊條帶包括該複數個晶粒之各者之一對應區塊;將該等TU之各者寫入至該區塊條帶中之一晶粒之一對應區塊,其中:該等TU之各者係僅被寫入至該複數個晶粒中之一單一晶粒且該等TU之各者不橫跨超過該單一晶粒; 該等TU之各者不被寫入至在該區塊條帶中之其他對應晶粒;一寫入游標指示該等TU之各者係待被寫入至哪一對應晶粒的哪一對應區塊條帶;一子寫入游標指示在該對應晶粒之該對應區塊條帶內的哪一位置寫入各對應TU;及該等TU之各者係被寫入至其對應單一晶粒而不參考被寫入至一先前晶粒上的一最末頁面;使用該雜湊函數來判定該等TU之各者係位於其對應晶粒中;及自其對應晶粒讀取該等TU之各者。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/664,352 US11113205B2 (en) | 2017-07-31 | 2017-07-31 | Die addressing using a reduced size translation table entry |
US15/664,352 | 2017-07-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201921248A TW201921248A (zh) | 2019-06-01 |
TWI739022B true TWI739022B (zh) | 2021-09-11 |
Family
ID=65037927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107126493A TWI739022B (zh) | 2017-07-31 | 2018-07-31 | 晶粒定址 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11113205B2 (zh) |
EP (1) | EP3662375B1 (zh) |
KR (1) | KR102366238B1 (zh) |
CN (1) | CN110892386A (zh) |
TW (1) | TWI739022B (zh) |
WO (1) | WO2019027823A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102656172B1 (ko) * | 2018-03-28 | 2024-04-12 | 삼성전자주식회사 | 가상 스트림들과 물리 스트림들을 맵핑하기 위한 스토리지 장치 및 그것의 동작 방법 |
US11520696B2 (en) * | 2018-06-28 | 2022-12-06 | Seagate Technology Llc | Segregating map data among different die sets in a non-volatile memory |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8838937B1 (en) * | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
TWI490875B (zh) * | 2013-03-12 | 2015-07-01 | Macronix Int Co Ltd | 非揮發性記憶體的管理 |
US20160021024A1 (en) * | 2014-07-16 | 2016-01-21 | Vmware, Inc. | Adaptive resource management of a cluster of host computers using predicted data |
TWI578156B (zh) * | 2011-12-29 | 2017-04-11 | 英特爾公司 | 非依電性隨機存取記憶磁碟 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3268980B2 (ja) * | 1996-09-02 | 2002-03-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ・バッファリング・システム |
US7251653B2 (en) | 2004-06-30 | 2007-07-31 | Microsoft Corporation | Method and system for mapping between logical data and physical data |
US8321652B2 (en) | 2008-08-01 | 2012-11-27 | Infineon Technologies Ag | Process and method for logical-to-physical address mapping using a volatile memory device in solid state disks |
US8254191B2 (en) * | 2008-10-30 | 2012-08-28 | Micron Technology, Inc. | Switched interface stacked-die memory architecture |
US8180995B2 (en) * | 2009-01-21 | 2012-05-15 | Micron Technology, Inc. | Logical address offset in response to detecting a memory formatting operation |
US8266408B2 (en) | 2009-03-17 | 2012-09-11 | Memoir Systems, Inc. | System and method for storing data in a virtualized high speed memory system |
US20100274961A1 (en) | 2009-04-22 | 2010-10-28 | Golla Robert T | Physically-indexed logical map table |
US8724401B2 (en) * | 2009-09-29 | 2014-05-13 | Seagate Technology Llc | Data stripes and addressing for flash memory devices |
KR101678868B1 (ko) * | 2010-02-11 | 2016-11-23 | 삼성전자주식회사 | 플래시 주소 변환 장치 및 그 방법 |
US8417914B2 (en) * | 2011-01-06 | 2013-04-09 | Micron Technology, Inc. | Memory address translation |
US9183945B2 (en) * | 2012-11-30 | 2015-11-10 | Sandisk Technologies Inc. | Systems and methods to avoid false verify and false read |
US9021188B1 (en) | 2013-03-15 | 2015-04-28 | Virident Systems Inc. | Small block write operations in non-volatile memory systems |
US9164837B2 (en) | 2013-09-12 | 2015-10-20 | Seagate Technology Llc | Transfer unit management |
US9934143B2 (en) | 2013-09-26 | 2018-04-03 | Intel Corporation | Mapping a physical address differently to different memory devices in a group |
US9229876B2 (en) | 2013-12-17 | 2016-01-05 | Sandisk Technologies Inc. | Method and system for dynamic compression of address tables in a memory |
US20160210241A1 (en) * | 2015-01-21 | 2016-07-21 | HGST Netherlands B.V. | Reducing a size of a logical to physical data address translation table |
US9626312B2 (en) | 2015-07-17 | 2017-04-18 | Sandisk Technologies Llc | Storage region mapping for a data storage device |
-
2017
- 2017-07-31 US US15/664,352 patent/US11113205B2/en active Active
-
2018
- 2018-07-27 WO PCT/US2018/044036 patent/WO2019027823A1/en unknown
- 2018-07-27 CN CN201880047584.4A patent/CN110892386A/zh active Pending
- 2018-07-27 KR KR1020207005823A patent/KR102366238B1/ko active IP Right Grant
- 2018-07-27 EP EP18841046.8A patent/EP3662375B1/en active Active
- 2018-07-31 TW TW107126493A patent/TWI739022B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI578156B (zh) * | 2011-12-29 | 2017-04-11 | 英特爾公司 | 非依電性隨機存取記憶磁碟 |
US8838937B1 (en) * | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
TWI490875B (zh) * | 2013-03-12 | 2015-07-01 | Macronix Int Co Ltd | 非揮發性記憶體的管理 |
US20160021024A1 (en) * | 2014-07-16 | 2016-01-21 | Vmware, Inc. | Adaptive resource management of a cluster of host computers using predicted data |
Also Published As
Publication number | Publication date |
---|---|
US20190034348A1 (en) | 2019-01-31 |
TW201921248A (zh) | 2019-06-01 |
US11113205B2 (en) | 2021-09-07 |
EP3662375A4 (en) | 2021-05-12 |
KR20200024356A (ko) | 2020-03-06 |
EP3662375A1 (en) | 2020-06-10 |
EP3662375B1 (en) | 2022-12-07 |
KR102366238B1 (ko) | 2022-02-23 |
CN110892386A (zh) | 2020-03-17 |
WO2019027823A1 (en) | 2019-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI687807B (zh) | 混合記憶體中之資料重新定位 | |
US10628319B2 (en) | Methods for caching and reading data to be programmed into a storage unit and apparatuses using the same | |
US10678476B2 (en) | Memory system with host address translation capability and operating method thereof | |
US10606515B2 (en) | Memory system managing a command/address sequence and method of operating the same | |
US20150098271A1 (en) | System and method of storing data in a data storage device | |
CN110603532A (zh) | 存储器管理 | |
CN109697024B (zh) | 存储器系统及其操作方法 | |
US9195579B2 (en) | Page replacement method and memory system using the same | |
US9990280B2 (en) | Methods for reading data from a storage unit of a flash memory and apparatuses using the same | |
US20160328183A1 (en) | Methods for accessing data in a circular block mode and apparatuses using the same | |
US9378130B2 (en) | Data writing method, and memory controller and memory storage apparatus using the same | |
CN115934582A (zh) | 冷数据识别 | |
TWI739022B (zh) | 晶粒定址 | |
US11294824B2 (en) | System and method for reduced latency of read-modify-write operations | |
JP2023500823A (ja) | メモリ・サブシステムのための容量拡張 | |
CN112783432A (zh) | 存储装置和其操作方法 | |
US10769060B2 (en) | Storage system and method of operating the same | |
US11055011B2 (en) | Storage device | |
CN112204533B (zh) | 具有两个数据部分的存储器中的数据重定位 | |
US20240272811A1 (en) | Scheme for data entry insertion in a sparsely populated data structure | |
CN111033482A (zh) | 高速缓存缓冲器 |