TW201544954A - 多層資料排序 - Google Patents
多層資料排序 Download PDFInfo
- Publication number
- TW201544954A TW201544954A TW104115180A TW104115180A TW201544954A TW 201544954 A TW201544954 A TW 201544954A TW 104115180 A TW104115180 A TW 104115180A TW 104115180 A TW104115180 A TW 104115180A TW 201544954 A TW201544954 A TW 201544954A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- subset
- page
- plane
- stored
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2245—Memory devices with an internal cache buffer
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/14—Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory
Landscapes
- Read Only Memory (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本發明提供一種利用了多層資料排序而程式化資料到一多層記憶體裝置之系統、方法與電腦程式產品。為了允許程式化多個資料頁面而不需要增加頁面緩衝器的大小,在一些實作中,即可操縱該等資料頁面被程式化之一資料傳送方案。特別是橫跨所有通道之資料首先可被平行地程式化到該多層快閃記憶體裝置的第一平面中。當正在進行資料傳送程式作業時,要被程式化到一後續平面(例如平面「1」)的資料可被讀入,並被快取在一或多個頁面緩衝器中。在完成該第一平面的資料傳送程式之後,快取在該頁面緩衝器中的資料可立即被閂鎖,並程式化到該多層快閃記憶體裝置當中。
Description
此申請案之標的概略關於記憶體裝置。
快閃記憶體為消費性電子產品中用於儲存的常見的非揮發性記憶體型式。快閃記憶體廣泛用於在常用的消費性產品中儲存應用資料及/或媒體資料,例如數位音訊/視訊播放器,行動電話及數位相機。快閃記憶體在沒有電力時可保持儲存的資料,其對於消費性產品可以提供省電的好處。快閃記憶體另可做為一專用儲存裝置,例如插入到一個人電腦之通用序列埠(USB,“Universal serial port”)中的一攜帶式快閃碟,及取代一磁性硬碟機(HDD,“Hard disk drive”)。
近年來,製造商已經引入快閃記憶體裝置,其組態中包括多個記憶體陣列或記憶體平面。多層記憶體裝置已經實作在一單一層級單元(single-level cell)記憶體裝置及多重層級單元(multi-level cell)記憶體裝置中。但是,多層記憶體裝置的讀取、程式化及抹除速度經常較低。當記憶體層的數目增加時,多層記憶體裝置之速度即成為一關鍵的效能問題。雖然該多層組態在一等待READ/PROGRAM間隔期間允許一資料從一通道被轉移到一緩衝器中來改善關聯於此一通道的資料轉移時間,但是當資料自多個通道轉移時,該多層組態還是會造成系統效能的降低。
用於程式化資料到一多層記憶體裝置之系統、方法與電腦程式產品利用一多層資料排序。為了允許程式化多個資料頁面而不需要增加頁面緩衝器的大小,在一些實作中,即可操縱該等資料頁面被程式化之一資料傳送方案。特別是橫跨所有通道
之資料首先可被平行地程式化到該多層快閃記憶體裝置的第一平面中。當正在進行資料傳送程式作業時,要被程式化到一後續平面(例如平面「1」)的資料可被讀入,並被快取在一或多個頁面緩衝器中。在完成該第一平面的資料傳送程式之後,快取在該頁面緩衝器中的資料可立即被閂鎖,並程式化到該多層快閃記憶體裝置當中。
在一些實作中,可使用一種方法,其中包括接收第一資料與第二資料,儲存該第一資料在一第一頁面緩衝器中,且儲存該第二資料在一第二頁面緩衝器中,程式化該儲存的第一資料到關聯於一多層記憶體裝置之一記憶體層的一第一頁面,並與程式化該儲存的第一資料平行地程式化該儲存的第二資料到關聯於該記憶體層之一第二頁面中。
在一些實作中,該第一資料包括該第一資料的第一子集合及該第一資料的第二子集合,且該第二資料包括該第二資料的第一子集合及該第二資料的第二子集合。
在一些實作中,該第一資料的第一子集合可被程式化到關聯於該記憶體平面之第一頁面當中,且該第二資料的第二子集合可被程式化到關聯於該記憶體平面之第二頁面當中。
在一些實作中,該記憶體平面可為一第一記憶體平面,該第一資料的第二子集合可被程式化到關聯於該多層記憶體裝置之一第二記憶體平面之第一頁面當中,且該第二資料的第二子集合可被程式化到關聯於該第二記憶體平面之第二頁面當中。
在一些實作中,程式化該第一資料的第二子集合到關聯於該第二記憶體平面之第一頁面當中可在程式化該第二資料的第一子集合到關聯於該第一記憶體平面之第二頁面當中之後來進行。
在一些實作中,程式化該第一資料的第二子集合到關聯於該第二記憶體平面之第一頁面當中可在程式化該第二資料的第一子集合到關聯於該第一記憶體平面之第二頁面當中之後來進行。
在一些實作中,一裝置之使用可包括一第一頁面緩衝器,其組態成自一第一通道接收第一資料,並儲存該第一資料,一第二頁面緩衝器,其組態成自一第二通道接收第二資料,並儲存該第二資料,及電路,其組態成程式化該儲存的第一資料到關聯於該記憶體平面之一第一頁面當中,並平行地程式化該儲存的第二資料到關聯於該記憶體平面的一第二頁面當中。
在一些實作中,該第一資料包括該第一資料的第一子集合及該第一資料的第二子集合,且該第二資料包括該第二資料的第一子集合及該第二資料的第二子集合。
在一些實作中,該電路可組態成程式化該第一資料的第一子集合到關聯於該記憶體平面之第一頁面當中,並程式化該第二資料的第一子集合到關聯於該記憶體平面之第二頁面當中。
在一些實作中,該記憶體平面可為一第一記憶體平面,且該電路可組態成程式化該第一資料的第二子集合到關聯於一第二記憶體平面的第一頁面當中,及程式化該第二資料的第二子集合到關聯於該第二記憶體平面之第二頁面當中。
在一些實作中,該電路可組態成在該第二資料的第一子集合被程式化到關聯於該第一記憶體平面的第二頁面當中之後,程式化該第一資料的第二子集合到關聯於該記憶體平面之第一頁面當中。
在一些實作中,該電路可組態成在該第一資料的第二子集合被程式化到關聯於該第二記憶體平面的第一頁面當中之後,程式化該第二資料的第二子集合到關聯於該記憶體平面之第二頁面當中。
在一些實作中,一系統之使用可包括一具有一記憶體平面的記憶體陣列,一第一頁面緩衝器,用於自一第一通道接收第一資料,並儲存該第一資料,一第二頁面緩衝器,用於自一第二通道接收第二資料,並儲存該第二資料,及一控制器,其組態成程式化該儲存的第一資料到關聯於該記憶體平面之一第一頁
面當中,並平行地程式化該儲存的第二資料到關聯於該記憶體平面的一第二頁面當中。
在一些實作中,該控制器可組態成在完成該儲存的第一資料之程式化之前初始化關聯於該儲存的第二資料的一程式作業。
在一些實作中,該記憶體平片可為一第一記憶體平面,該記憶體陣列可包括一第二記憶體平面,該第一資料可包括一第一子集合及一第二子集合,且該控制器可組態成程式化該第一子集合到關聯於該第一記憶體平面之第一頁面當中,並程式化該第二子集合到關聯於該第二記憶體平面的第一頁面當中。
在一些實作中,該第二資料可包括一第一子集合及一第二子集合,且該控制器可組態成程式化該第二資料的第一子集合到關聯於該第一記憶體平面的第二頁面當中,並程式化該第二資料的第二子集合到關聯於該第二記憶體平面的第二頁面當中。
在一些實作中,該控制器可組態成在初始化關聯於該第一資料的第二子集合之程式作業之前但在初始化關聯於該第一資料的第一子集合的程式作業之後,初始化關聯於該第二資料之第一子集合的一程式作業。
本發明一或多種具體實施例之細節在以下於附屬圖面及其說明當中提出。本發明之其它特徵、目的及好處將可由說明、圖面及申請專利範圍當中進行瞭解。
100‧‧‧固態驅動器系統
102‧‧‧主機
103‧‧‧匯流排
104‧‧‧固態驅動器
106a-106d‧‧‧快閃記憶體裝置
108‧‧‧固態控制器
110‧‧‧主機介面
112‧‧‧錯誤檢查碼模組
114‧‧‧介面邏輯
116‧‧‧序列器
118‧‧‧格式化器
123‧‧‧中央處理器單元
124‧‧‧嵌入式韌體
126a-126d‧‧‧通道
128‧‧‧記憶體介面
130‧‧‧記憶體控制器
132a-132d‧‧‧頁面緩衝器
134a-134d‧‧‧通道
136a-136d‧‧‧通道
138‧‧‧多層快閃記憶體裝置
140-146‧‧‧記憶單元區塊
148-154‧‧‧頁面
156‧‧‧第二頁面
158‧‧‧第三頁面
160‧‧‧頁面
162a-162d‧‧‧內部緩衝器
202-214‧‧‧區域
300‧‧‧快閃記憶體裝置單元
300a-d‧‧‧兩層快閃記憶體裝置
302-308‧‧‧頁面緩衝器
310-324‧‧‧頁面
400‧‧‧兩層快閃記憶體裝置
402-408‧‧‧頁面緩衝器
410a-416a‧‧‧頁面
410b-416b‧‧‧頁面
第一A圖為一固態驅動器系統之示例。
第一B圖為一多層快閃記憶體裝置之示例。
第二A圖為關聯於一讀取(READ)作業之NAND快閃介面中每一接腳的一時序圖之示例。
第二B圖為關聯於一程式(PROGRAM)作業之NAND快閃介面
中每一接腳的一時序圖之示例。
第二C圖為關聯於一抹除(ERASE)作業之NAND快閃介面中每一接腳的一時序圖之示例。
第三A圖為一兩平面快閃記憶體裝置之水平資料傳送方案的示例。
第三B圖為關聯於第三A圖所示之水平資料傳送方案之時序圖的示例。
第四A圖為一垂直資料傳送方案的示例。
第四B圖為關聯於第四A圖所示之垂直資料傳送方案之時序圖的示例。
第五圖為執行一垂直資料傳送方案之程序的示例。
在不同圖面中類似的參考編號代表類似的元件。
非揮發性固態記憶體,特別是電性抹除及程式化唯讀記憶體(EEPROM,“Electrically erasable and programmable read-only memory”)及快閃EEPROM,其被封裝成一小型的卡片,可以電性抹除,且新的資料可被程式化或重新程式化。概言之,一EEPROM記憶體的作業可包括一PROGRAM(程式)模式,用於寫入資料到一記憶單元中,一READ(讀取)模式,用於讀出儲存在該記憶單元中的資料,及一ERASE(抹除)模式,用於刪除該儲存的資料。
在一快閃記憶體裝置中,ERASE作業可對每個記憶體區塊或區段執行,而PROGRAM作業可在每一對應於共同耦合至一字元線的複數記憶單元的頁面上執行。該快閃記憶體裝置可組態成NAND快閃記憶體裝置,其中單元電晶體平行地耦合於一位元線與一接地電極之間。。
一快閃記憶體裝置可建構成一多層記憶體裝置。特別是該多層記憶體裝置可包括複數記憶體平面(例如一記憶體平面可包括一記憶體陣列,具有其相對應的列解碼器、頁面緩衝器
及行解碼器)。每個記憶體平面可包括配置在一行方向上的一或多個記憶體區塊,且每個區塊可對應於一記憶體平面。
一多層快閃記憶體裝置可支援多層PROGRAM或READ命令,其程式化資料到關聯於多個不同平面之多個頁面當中,或自其讀取資料。例如,一多層快閃記憶體裝置可支援多層命令,其寫入八個資料頁面到八個個別的記憶體平面當中。多個平面與多層PROGRAM命令之使用可允許一多層記憶體裝置平行地執行多個PROGRAM作業,並增進該多層記憶體裝置之PROGRAM速度。
為了程式化在一系列通道之上接收的資料到一多層記憶體裝置之個別頁面當中,該資料可一次一個地被載入及程式化到一個別記憶體平面當中。例如,在程式化來自一第一通道之資料到一平面的該頁面當中,來自一第二頻道之資料可使用相同的程序被載入及程式化到該多層記憶體裝置當中。但是此程序會延長該PROGRAM作業時間,因為該程序並不允許橫跨該等通道之平行處理。特別是,此程序一次僅允許一資料頁面被程式化,且其它通道之PROGRAM作業僅會在一先前通道之PROGRAM作業已經結束之後來進行。這些限制會延長該PROGRAM作業,並會負面地影響一多層記憶體裝置之速度效能。
再者,一多層記憶體裝置基本上包括頁面緩衝器來暫時地儲存進行中的資料。隨著要被程式化之資料頁面的數目增加,其亦需要增加這些頁面緩衝器之大小來容納增加的資料負載。但是這些頁面緩衝器之大小增加會增加該等頁面緩衝器之成本,以及該多層記憶體裝置之複雜度,並造成製造這種裝置的整體製造成本。
為了允許程式化多個資料頁面而不需要增加該等頁面緩衝器的大小,在一些實作中,在PROGRAM作業中可使用指定一垂直資料傳送順序的一垂直資料傳送方案。特別是,橫跨所有通道之資料首先可被平行地程式化到關聯於該多層快閃記憶體裝置的第一平面(例如平面「0」)的頁面當中。當正在進行該
PROGRAM作業時,要被程式化到關聯於一後續平面(例如平面「1」)的頁面當中的資料可被讀入,並被快取在一或多個頁面緩衝器中。在完成該第一平面的PROGRAM作業時,該後續平面的資料可由該等頁面緩衝器載入,閂鎖,並被程式化到該多層記憶體裝置當中。此「垂直」資料傳送方案允許每個平面(相對於每個通道)而獨立於其它平面之外「垂直地」被程式化,使得關聯於一特定通道之一頁面緩衝器的大小僅需要容納一個頁面,而非多個平面之多個頁面,其將在以下更為詳細地討論。
第一A圖所示為一固態驅動器系統100之示例。如第一A圖所示,系統100包括一主機102及一固態驅動器104。固態驅動器104可包括一主機介面110、一中央處理單元(CPU,“Central processing unit”)123、一記憶體介面128、一記憶體控制器130及快閃記憶體裝置106a、106b、106c及106d。
主機102可經由主機介面110與固態驅動器104進行通訊。在一些實作中,主機介面110可包括一序列先進技術附加(SATA,“Serial Advanced Technology Attachment”)介面,或並列先進技術附加(PATA,“Parallel Advanced Technology Attachment”)介面。其可使用一SATA介面或PATA介面來分別轉換序列或並列資料成為並列或序列資料。例如,如果主機介面110包括一SATA介面,該SATA介面可經由一匯流排103(例如一SATA匯流排)接收自主機102傳送的序列資料,並轉換該接收的序列資料成為並列資料。在其它實作中,主機介面110可包括一複合式介面。在這些實作中,該複合式介面可配合例如一序列介面使用。
在一些實作中,主機介面110可包括一或多個暫存器,其中來自主機102之作業命令及位址可被暫時地儲存。主機介面110可回應於在該等暫存器中儲存的資訊而傳遞一PROGRAM或READ命令到一固態控制器108。
在一些實作中,固態驅動器104可包括一或多個通道126a、126b、126c及126d,且每個通道126a-126d可組態成自主機102或自快閃記憶體106a-106d接收一或多個控制信號(例如
四個晶片致能信號),或READ、PROGRAM或ERASE資料或命令。
固態控制器108可組態成管理任何命令、狀態或控制請求來存取到快閃記憶體裝置106a-106d。例如,固態控制器108可組態成管理及控制快閃記憶體裝置106a-106d中資料的儲存及取得。為了初始化一READ、PROGRAM或ERASE作業,固態控制器108可自主機102(或自記憶體控制器130)接收一或多個服務請求或命令(例如READ、PROGRAM及ERASE請求)。
在一些實作中,固態控制器108可為在一微處理器(圖中未示)的控制之下一微電腦系統之一部份。固態控制器108可控制主機102與固態驅動器104之間命令與資料的流動。在一些實作中,固態控制器108可包括唯讀記憶體(ROM,“Read-only memory”)、隨機存取記憶體(RAM,“Random-access memory”)及其它內部電路。在一些實作中,固態控制器108可組態成支援關聯於快閃記憶體裝置106a-106d之多種功能,例如(但非限制)診斷快閃記憶體裝置106a-106d,傳送命令(例如啟動、READ、PROGRAM、ERASE、預充電及更新命令)到快閃記憶體裝置106a-106d,並自快閃記憶體裝置106a-106d接收狀態。固態控制器108可與快閃記憶體裝置106a-106d形成在相同或不同的晶片上,或形成在相同晶片上。固態控制器108亦可與固態驅動器104形成在相同或不同晶片上。
快閃記憶體裝置106a-106d可耦合於記憶體介面128。在一些實作中,如果快閃記憶體裝置106a-106d包括NAND型記憶體裝置,記憶體介面128可為一NAND快閃輸入/輸出介面。
如第一A圖所示,固態控制器108可包括一錯誤檢查碼(ECC,“Error checking code”)模組112、介面邏輯114、一序列器116及一格式化器118。在一些實作中,固態控制器108可耦合於包含嵌入式韌體124的CPU 123,藉此固態控制器108可受到控制。CPU 123可包括一微處理器、一信號處理器(例如一數位信號處理器)或微控制器。在一些實作中,具有嵌入式韌體124之CPU 123可位在固態驅動器104之外。
在一些實作中,固態驅動器104(及/或主機102)可安裝在一晶片上系統(SOC,“System on-chip”)。在這些實作中,SOC可使用例如一數位製程來製造。SOC可包括一嵌入式處理系統(例如一嵌入式CPU),其獨立於固態驅動器104中的CPU 123之外。SOC亦可包括一SRAM(靜態隨機存取記憶體)、系統邏輯、快取記憶體、快取控制器用於處理程式碼及資料。關聯於該嵌入式處理系統的程式碼及資料可儲存在快閃記憶體裝置106a-106d,並經由例如一SOC介面(圖中未示)傳遞到該SOC。該SOC介面可由一轉譯器使用來轉譯在該SOC之介面與內部匯流排結構之間流動的資訊。控制信號可由該SOC流動到快閃記憶體裝置106a-106d,而指令及資料可在READ作業期間由快閃記憶體裝置106a-106d流動到該SOC。指令及資料亦可在PROGRAM作業期間被傳送到快閃記憶體裝置106a-106d。
在一些實作中,快閃記憶體裝置106a-106d可由記憶體控制器130控制。主機102可經由記憶體控制器130與快閃記憶體裝置106a-106d進行通訊。記憶體控制器130可經由一相對應接腳或終端連接至快閃記憶體裝置106a-106d。在這些實作中,記憶體控制器130可實作成一特定應用積體電路(ASIC,“Application specific integrated circuit”)或作成一SOC。
另外,主機102可經由固態控制器108與快閃記憶體裝置106a-106d進行通訊。例如,主機102可傳送一或多個命令到固態控制器108,並經由記憶體介面128,固態控制器108可傳送該主機的命令到快閃記憶體裝置106a-106d。記憶體介面128可為一NAND快閃I/O介面。NAND快閃介面可包括一或多個接腳,其每一接腳對應於一特定功能,其將在以下更為詳細地討論。
在一些實作中,快閃記憶體裝置106a-106d可耦合於複數頁面緩衝器132a、132b、132c及132d。在一些實作中,每一快閃記憶體裝置106a-106d可關聯於一個別的頁面緩衝器132a-132d。例如,如第一A圖所示,快閃記憶體裝置106a可關聯於頁面緩衝器132a;快閃記憶體裝置106b可關聯於頁面緩衝器
132b;快閃記憶體裝置106c可關聯於頁面緩衝器132c;及快閃記憶體裝置106d可關聯於頁面緩衝器132d。如果需要的話,每個快閃記憶體裝置106a-106d亦可關聯於一個以上的頁面緩衝器。
如在以下更為詳細的說明,頁面緩衝器132a-132d在PROGRAM/READ作業期間做為該選出的頁面之記憶單元上的一暫時性儲存。每個頁面緩衝器132a-132d可具有至少等於一記憶體頁面之儲存容量(例如2kB)的一儲存容量。
每個頁面緩衝器132a-132d可儲存要被程式化到快閃記憶單元之一頁面當中的寫入資料的一個頁面。每個頁面緩衝器132a-132d可包括(但非限制)暫存器、用於感測自快閃記憶單元的一頁面讀取之資料的感測電路,驗證邏輯、閂鎖電路或寫入驅動器。在PROGRAM作業期間,每個頁面緩衝器132a-132d可閂鎖在一個別通道126a-126d之上接收的PROGRAM資料,並傳送該閂鎖的資料到個別的快閃記憶體裝置106a-106d。每個頁面緩衝器132a-132d亦可執行程式驗證作業來確保該程式化的資料已經被適當地程式化到快閃記憶體裝置106a-106d當中。
如上所述,頁面緩衝器132a-132d可經由個別的通道126a-126d連接至固態控制器108。在一些實作中,頁面緩衝器132a-132d亦可經由個別通道134a、134b、134c及134d連接至記憶體介面128,並經由通道136a、136b、136c及136d連接至快閃記憶體裝置106a-106d。在一些實作中,記憶體介面128及頁面緩衝器132a-132d皆可形成為固態驅動器104或固態控制器108之內部組件。在其它實作中,頁面緩衝器132a-132d可形成為固態驅動器104或固態控制器108之外部組件。
為了選擇一特定頁面緩衝器132a-132d來儲存PROGRAM資料,輸入(例如使用者輸入或由軟體程式提供的輸入)可經由一雙倍資料速率(DDR,“Double data rate”)介面(圖中未示)接收,其可由ECC模組112進行錯誤檢查。對於READ資料,ECC模組112可用於修正自快閃記憶體裝置106a-106d取得的READ資料中存在的任何錯誤。對於PROGRAM資料,ECC模組
112可用於加入一或多個冗餘位元到該PROGRAM資料。一旦該PROGRAM資料被寫入,該等冗餘位元允許在該被寫入的PROGRAM資料之一後續READ循環中執行的錯誤修正。ECC模組112首先可選擇一組資料來重新寫入到快閃記憶體裝置106a-106d,加入冗餘的資料到該選擇的資料組,並經由一相對應通道126a-126d(例如依循由韌體124發出的一韌體請求順序)傳送該選擇的資料組連同該冗餘資訊到快閃記憶體裝置106a-106d。然後ECC模組112的輸出可做為一SELECT信號來指定一頁面緩衝器132a-132d給一特定的PROGRAM作業。
在一些實作中,快閃記憶體裝置106a-106d可為多層記憶體裝置,其每一者包括例如四個平面。第一B圖所示為一多層快閃記憶體裝置138之示例。請參照第一B圖,多層記憶體裝置138可包括四個記憶體平面;即平面「0」、平面「1」、平面「2」及平面「3」。雖然顯示有四個平面,該等平面的數目可根據應用而改變,其亦可考慮比所示之有更多或更少數目的平面。
每個平面「0」、平面「1」、平面「2」及平面「3」可包括一或多個記憶單元區塊。每個記憶單元區塊可包括一或多個頁面(例如每個頁面由一或多條字元線控制)。如所示,平面「0」可包括一記憶單元區塊140,其具有頁面148做為記憶單元區塊140之初始頁面;平面「1」可包括一記憶單元區塊142,其具有頁面150做為記憶單元區塊142之初始頁面;平面「2」可包括一記憶單元區塊144,其具有頁面152做為記憶單元區塊144之初始頁面;及平面「3」可包括一記憶單元區塊146,其具有頁面154做為記憶單元區塊146之初始頁面。
在一些實作中,每個平面可關聯於一內部緩衝器(例如在該等快閃記憶體裝置內部的緩衝器)。例如,平面「0」可關聯於內部緩衝器162a;平面「1」可關聯於內部緩衝器162b;平面「2」可關聯於內部緩衝器162c;及平面「3」可關聯於內部緩衝器162d。雖然所示僅有四個內部緩衝器162a-162d,本技藝專業人士將可瞭解到每個平面「0」、平面「1」、平面「2」及平面「3」
可關聯於一個以上的內部緩衝器,或與位元線配對一樣多的內部緩衝器。
資料可依序載入到關聯於每個平面「0」、平面「1」、平面「2」及平面「3」之每一內部緩衝器162a-162d。一垂直資料傳送方案可為例如由固態控制器108執行,並用於程式化平面「0」、平面「1」、平面「2」及平面「3」之個別的頁面。特別是,在一第一通道「CH 0」之上(例如在通道126a之上)接收的資料可被載入到內部緩衝器162a,並被程式化到平面「0」之第一頁面140當中。當第一通道「CH 0」之PROGRAM作業正在進行中時,在一第二通道「CH 1」之上(例如在通道126b之上)接收的資料可被載入到內部緩衝器162a當中,並被程式化到平面「0」的一第二頁面156當中。類似地,當第一通道「CH 0」及第二通道「CH 1」之PROGRAM作業正在進行中時,在一第三通道「CH 2」之上(例如在通道126c之上)接收的資料可被載入到內部緩衝器162a當中,並被程式化到平面「0」的一第三頁面158當中。前述的PROGRAM程序可以重複直到自所有通道(例如最多到最後通道「CH 7」)接收的資料已經被程式化到平面「0」的個別頁面(例如頁面160)當中為止。
每一快閃記憶體裝置160a-160d可包括一非揮發性(或揮發性)記憶體(例如一單層級快閃記憶體或多層級快閃記憶體)。在一些實作中,該非揮發性記憶體可包括一NAND型快閃記憶體模組。一NAND型快閃記憶體模組可包括一命令/位址/資料多工化介面,例如可經由相對應輸入/輸出接腳提供的命令、資料及位址。使用NAND型快閃記憶體裝置做為快閃記憶體裝置106a-106d之好處包括(但非限制)較快的開機及恢復時間;較長的電池壽命;及較高的資料可靠性。
每個快閃記憶體裝置106a-106d可連接至一個別通道126a-126d。每個通道126a-126d可支援例如一或多個輸入及輸出線、晶片選擇信號線、晶片致能信號線及類似者。該通道亦可支援其它信號線,例如(但非限制)寫入致能、讀取致能、讀取/忙
碌輸出及重置信號線。為了增加並列的程度,每個快閃記憶體裝置126a-126d可將其本身的通道連接至固態驅動器104,如第一A圖所示。例如,快閃記憶體裝置106a可使用通道126a連接至固態驅動器104;快閃記憶體裝置106b可使用通道126b連接至固態驅動器104;快閃記憶體裝置106c可使用通道126c連接至固態驅動器104;及快閃記憶體裝置106d可使用通道126d連接至固態驅動器104。在其它實作中,快閃記憶體裝置106a-106d可共享一共用通道。
快閃記憶體裝置106a-106d可使用標準連接器而連接至固態驅動器104。標準連接器的示例可包括例如(但非限制)SATA、USB(通用序列匯流排),SCSI(小型電腦系統介面,“Small Computer System Interface”)、PCMCIA(個人電腦記憶卡國際組織,“Personal Computer Memory Card International Association”)、及IEEE 1394(Firewire)。在一些實作中,快閃記憶體裝置106a-106d可使用該等標準連接器而拆解。
每個快閃記憶體裝置106a-106d可包括配置在一記憶庫中的一或多個固態儲存元件(或記憶單元)。一固態儲存元件可區隔成頁面。在一些實作中,一固態儲存元件之容量為2,000位元組(bytes),其可對應於一個頁面。在一些實作中,一固態儲存元件可提供整體容量4,000bytes(即4kB)。每個快閃記憶體裝置106a-106d亦可包括一或多個記憶庫,其每一者使用一晶片致能信號或晶片選擇信號來選擇。該晶片致能或晶片選擇信號回應於一主機命令來選擇一或多個固態儲存元件。
在一些實作中,每個固態儲存元件可包括一或多個單一層級單元(SLC,“Single-level cell”)裝置及/或多重層級單元(MLC,“Multi-level cell”)裝置。特別是,在快閃記憶體裝置106a-106d中每一儲存元件可被程式化為每個單元為單一位元或每個單元為多個位元。每個單元的臨界電壓概略決定了儲存在該單元中的資料型別。例如,在一SLC記憶體裝置中,0.5V的臨界電壓可代表一程式化的單元(例如邏輯準位「0」狀態),而-0.5V的
臨界電壓可代表一抹除的單元(例如邏輯準位「1」狀態)。該等SLC或MLC裝置可使用一晶片致能信號或晶片選擇信號來選擇,其可藉由使用自主機102接收的控制及位址資訊之組合由固態控制器108所產生。
在一些實作中,當使用固態儲存元件的多個記憶庫時,固態驅動器104可同時存取相同快閃記憶體裝置中固態儲存元件之一個以上的記憶庫。固態驅動器104亦可同時存取在不同快閃記憶體裝置中不同的記憶庫。可存取一個以上的記憶庫之能力即允許固態驅動器104完全地利用可使用的資源及通道126a-126d來增加固態驅動器104之整體效能。再者,當快閃記憶體裝置106a-106d共享一相同記憶體輸入/輸出線及控制信號(例如晶片致能信號)時,固態控制器108之接腳數目可降低以進一步最小化製造固態驅動器104之成本。
快閃記憶體裝置106a-106d之快閃記憶體陣列基本上可組織成位元。例如,該記憶體陣列可包括8位元深度。該快閃記憶體陣列亦可組織成位元組。例如,該快閃記憶體陣列可包括一部份含有2k位元組(或2kB),及一部份含有64位元組。該記憶體陣列另可組織成頁面。例如,該快閃記憶體陣列可包括512k頁面。一單一頁面可組織成兩個部份:一第一部份(例如代表2kB的部份)及一第二部份(例如代表64位元組的部份)。該第二部份概略對應於一八位元寬資料輸入/輸出(I/O)路徑(例如I/O[0]-I/O[7]]。再者,該快閃記憶體可配置成區塊。例如,該快閃記憶體陣列可包括等於64頁面的一區塊。整體而言,一快閃記憶體裝置使用前述的位元、位元組、頁面及區塊所形成。
快閃記憶體裝置106a-106d之每一者可為一多層NAND快閃記憶體裝置。NAND快閃記憶體裝置概略比NOR型快閃記憶體裝置要具有更快的PROGRAM、READ及ERASE時間,較高的密度,每位元之成本較低,及更為耐用。一NAND快閃記憶體可耦合於允許序列性存取到資料的一NAND快閃I/O介面。一NAND快閃I/O介面可包括多個接腳,其每一接腳對應於一特
定功能。一示例介面示於表1。
如上表1所示,不同的接腳功能可對應於該介面中指定的接腳。在一些實作中,上述的NAND快閃I/O介面可作為記憶體介面128。
雖然快閃記憶體裝置106a-106d在此處描述為NAND型記憶體裝置,快閃記憶體裝置106a-106d亦可為以下型式中任一種,如NOR快閃EEPROM、AND快閃EEPROM、DiNOR快閃EEPROM、序列快閃EEPROM、DRAM、SRAM、ROM、EPROM、FRAM、MRAM或PCRAM。
第二A圖為關聯於一讀取作業之NAND快閃介面中每一接腳的一時序圖之示例。請參照第二A圖,區域202可代表一或多個命令被傳送到一NAND快閃記憶體裝置的期間,而區域204可代表資料被傳送到NAND快閃記憶體裝置或自其傳送之期間。如所示,該寫入致能信號「WE_」可為脈衝式(例如以25-ns區間),以允許列位址(例如RA 1、RA 2及RA 3)及行位址(例如CA 1及CA 2)資訊被閂鎖在該NAND快閃記憶體裝置中。出現在該資料輸入/輸出I/O[7:0]接腳上的命令「00h」可代表一READ位址輸入,而命令「30h」可代表一READ開始。
亦可使用其它命令。例如,其它記憶體命令可包括
(但非限制)READ作業、PROGRAM作業、ERASE作業、READ狀態作業、READ ID作業、寫入組態暫存器作業、寫入位址作業及重置作業。例如,命令「05h」可代表一隨機資料READ命令;命令「10h」可代表一頁面程式命令;命令「20h」可代表一晶片抹除命令;命令「21h」可代表一磁區抹除命令;命令「30h」可代表一讀取開始命令;命令「35h」可代表一頁面讀取複製命令;命令「39h」可代表一寫入裝置位址命令;命令「60h」可代表一區塊抹除命令;命令「70h」可代表一讀取狀態命令;命令「80h」可代表一序列資料輸入(寫入到緩衝器)命令;命令「85h」可代表一隨機資料輸入命令;命令「8Fh」可代表一目標位址輸入複製命令;命令「90h」可代表一讀取裝置型式命令;命令「A0h」可代表一寫入組態暫存器命令;命令「C0h」可代表一程式/抹除暫停命令;及命令「D0h」可代表一程式/抹除命令;及命令「FFh」可代表一重置命令,以及類似者。
利用讀取致能信號「RE_」脈衝,可自該NAND快閃記憶體裝置讀取資料,像是DoutN,DoutN+1,DoutN+2…DoutM。在一特定邏輯準位狀態下的讀取/忙碌輸出信號「R/B_」可代表該輸出是否為忙碌。例如,在一低邏輯準位狀態下的讀取/忙碌輸出信號「R/B_」可代表在該輸出處為一忙碌狀態。在此示例中,該讀取/忙碌輸出信號「R/B_」在寫入致能信號「WE_」之最後上升邊緣之後某段時間可進入邏輯準位HIGH(即成為代表一預備好狀態之邏輯準位HIGH)。
如第二A圖所示,該「tR」週期代表自一記憶單元讀取資料到一內部頁面緩衝器之資料傳送時間,其可為該讀取開始命令「30h」到該預備好/忙碌輸出信號「R/B_」之上升邊緣的時段,並代表用於讀取資料的一讀取時間。在一些實作中,該「tR」週期可決定一特定READ作業之固態驅動器系統(例如固態驅動器系統100)之效能。在一些實作中,一長的「tR」週期對於一固態控制器(例如固態控制器108)在該READ資料可為該控制器使用之前造成一較長的等待時間。
在該資料成為預備好之前,該NAND快閃I/O介面可為閒置,並消耗不必要的頻寬。因此,其需要固定地維持該NAND快閃I/O介面在一忙碌狀態下來達到最大的頻寬。例如,如果該NAND快閃I/O介面在tRC=25ns下運作時,一可達成的頻寬之上限為40MB/s(例如基於使用一八位元資料匯流排的消耗,且該NAND快閃記憶體具有無限制的頻寬,使得資料可由該NAND快閃記憶體連續地傳送到該固態控制器)。但是,如果要在傳回該讀取資料到一固態控制器(例如固態控制器108)之前,要給定該「tR」週期自一NAND快閃記憶體中一記憶單元讀取一頁面到一內部緩衝器,此目標很難達成。
因此,在一些實作中,多個裝置(例如多晶片致能信號)可結合到一單一通道當中,並共享一相同的NAND快閃I/O介面,使得「tR」時間可被儘可能地涵蓋,而允許資料可由該相同通道之至少一裝置中取得。
在一些實作中,該資料傳送時間對於一SLC裝置而言其範圍在約25μs,或對於一MLC裝置而言其範圍在約60μs。在該「tR」週期期間,該預備好/忙碌輸出信號「R/B_」可被確立為一邏輯準位「0」,代表該快閃記憶體裝置在一忙碌狀態,例如在該期間資料不能被寫入或抹除。
第二B圖為關聯於一程式(PROGRAM)作業之NAND快閃介面中每一接腳的一時序圖之示例。請參照第二B圖,區域206可代表一或多個命令可被傳送到一快閃記憶體裝置的一週期,區域208可代表PROGRAM資料可被傳送到該快閃記憶體裝置的一週期,且區域210可代表一狀態檢查可被傳送到該快閃記憶體裝置來檢查該快閃記憶體裝置之狀態的一週期。
如所示,出現在該資料輸入/輸出I/O[7:0]接腳上的命令「80h」可代表序列資料輸入(例如DinN...DinM)。命令「10h」可代表一自動程式,接著為由命令「70h」所代表的一狀態讀取。I/O[0]=「0」可代表一無錯誤狀況,而I/O[0]=「1」可代表在自動程式化中已經發生一錯誤。
同時,如前所述,該預備好/忙碌輸出信號「R/B_」可為低邏輯準位,代表一忙碌狀態。在一些實作中,該預備好/忙碌輸出信號「R/B_」之低邏輯準位狀態之持續時間的範圍等級在數百μs。同時,該讀取致能信號「RE_」之上升邊緣可尾隨該寫入致能信號「WE_」之上升邊緣一段時間。在一些實作中,此時段之範圍約在60ns。
同時,如第二B圖所示,該時段「tPRG」係由該預備好/忙碌輸出信號「R/B_」之尾隨邊緣到該上升邊緣可代表程式化資料的一程式時間。在一些實作中,該程式時間「tPRG」對於一SLC裝置而言其範圍在約200μs到約700μs,或對於一MLC裝置而言其範圍在約800μs到約3ms。
在一些實作中,該程式時間「tPRG」可類似於該「tR」週期,但係對於程式化資料而非對於讀取資料。在該「tPRG」週期期間,該預備好/忙碌輸出信號「R/B_」可被確立為一邏輯準位「0」,代表該快閃記憶體裝置在一忙碌狀態,例如在該期間資料不能被讀取或抹除。一長程式時間「tPRG」會降低該快閃記憶體裝置之效能,因為基本上在此週期期間並無法存取到該快閃記憶體裝置。
第二C圖為關聯於一區塊ERASE作業之NAND快閃介面中每一接腳的一時序圖之示例。請參照第二C圖,區域212可代表一或多個命令可被傳送到一快閃記憶體裝置之週期期間,而區域214可代表一狀態檢查可被傳送到該快閃記憶體裝置來檢查快閃記憶體裝置106a-106d之狀態的週期期間。
如所示,出現在該資料輸入/輸出I/O[7:0]接腳上的命令「60h」可代表一區塊ERASE作業,其供應有序列列位址(例如RA 1、RA 2及RA 3)。命令「D0h」可代表一循環2區塊ERASE作業。該區塊ERASE作業可由一狀態讀取(命令「70h」)做檢查,其中I/O[0]=「0」可代表一無錯誤狀況,而I/O[0]=「1」可代表在一區塊抹除中已經發生一錯誤。
在此例中,該預備好/忙碌輸出信號「R/B_」可為一
段時間的低邏輯準位,例如在約一毫秒的範圍內(例如為一預定的最大值)。類似地,該讀取致能信號「RE_」之上升邊緣可尾隨該寫入致能信號「WE_」之上升邊緣。在另一例中,對應於該「D0h」命令之寫入致能信號「WE_」之上升邊緣及/或該預備好/忙碌輸出信號「R/B_」之下降邊緣之範圍約在100ns。
同時,如第二C圖所示,該時段「tBERS」,其由該預備好/忙碌輸出信號「R/B_」的上升邊緣涵蓋至該預備好/忙碌輸出信號「R/B_」的尾隨邊緣,可代表抹除區塊資料的一區塊抹除時間。
在一些案例中,一區塊ERASE作業不需要存取該NAND快閃I/O介面,而是傳送一或多個區塊ERASE命令(或如果未使用讀取一預備好/忙碌輸出信號「R/B_」時讀取狀態命令)。固態驅動器系統100之效能可間接地依據該區塊ERASE作業。在某些案例中,於一區塊ERASE作業一開始時,固態驅動器系統100可決定可用於資料程式化的已抹除頁面之數目。因此,固態驅動器系統100可維持一PROGRAM作業,而不需要執行一區塊ERASE作業。但是,因為儲存在固態驅動器系統100中的資料隨著固態驅動器系統100之作業而修改,對於資料程式化而言變為較少的頁面可使用,使得固態驅動器系統100將需要執行一或多個區塊ERASE作業來空出空白的頁面來進行資料程式化。因此,一長的「tBERS」週期對於固態驅動器系統100造成一較長的等待期間來尊重該PROGRAM命令。換言之,一區塊ERASE作業對於整體驅動器效能的影像非常依賴由該韌體(例如韌體124)管理的垃圾收集機制。
在一些實作中,該區塊抹除時間「tBERS」對於一SLC裝置而言其範圍在約1.5ms到約2ms,或對於一MLC裝置而言其範圍在約1.5ms到約10ms。在該「tBERS」週期期間,該預備好/忙碌輸出信號「R/B_」可被確立為一邏輯準位「0」,代表該快閃記憶體裝置在一忙碌狀態,例如,在該期間內資料不能被讀取或寫入。
第三A圖為一兩平面快閃記憶體裝置之水平資料傳送方案的示例。如第三A圖所示,一快閃記憶體裝置單元300包括四個兩層快閃記憶體裝置300a、300b、300c及300d。兩層快閃記憶體裝置300a、300b、300c及300d可分別對應於第一A圖所示之快閃記憶體裝置106a-106d。
兩層快閃記憶體裝置300a-300d之每一者包括平面「0」及平面「1」,並在四個不同的通道上接收資料,即「CH 0」、「CH 1」、「CH 2」及「CH 3」。頁面緩衝器302、304、306及308可做為暫時儲存器來儲存自個別通道「CH 0」、「CH 1」、「CH 2」及「CH 3」上所接收到的資料,同時在一進行中的先前週期內初始化PROGRAM作業。
每個頁面緩衝器302-308可組態成一頁面大小,其等於對應於一單一平面的一單一頁面(例如每個頁面緩衝器302-308可具有等於該記憶單元大小的一頁面緩衝器大小)。頁面緩衝器302、304、306及308可為一固態控制器(例如固態控制器108)之組件,其控制關聯於程式化、讀取或抹除在平面「0」及平面「1」中的資料之PROGRAM/READ/ERASE作業,並經由一記憶體介面(例如記憶體介面128)與兩層快閃記憶體裝置300a-300d進行通訊。
在一PROGRAM作業期間,自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」接收的資料字元被載入到頁面緩衝器302-308當中。要被寫入之每個資料字元可被序列地接收(例如以資料塊接收),且頁面緩衝器302-308可在一序列的步驟中被補充資料。
在如第三A圖所示之兩層記憶體陣列組態中,資料的一個頁面藉由載入資料到頁面緩衝器302-308中,並程式化該載入的資料到平面「0」及平面「1」中一相對應頁面當中而被「水平地」(horizontally)程式化。例如,假設自主機102接收總共8kB的資料,其中4kB的資料經由通道「CH 0」傳導,且4kB的資料經由通道「CH 1」傳導,則該資料的一半(例如4kB)可儲存在關聯於通道「CH 0」的頁面緩衝器302中(例如平面「0」中2kB的資
料,及平面「1」中2kB的資料),而另一半(例如4kB)可儲存在關聯於通道「CH 1」的頁面緩衝器304中(例如平面「0」中2kB的資料,及平面「1」中2kB的資料)。
如第三A圖所示,該水平資料傳送方案(由虛線箭頭所示)開始於載入頁面緩衝器302中自通道「CH 0」接收的第一組資料(例如最高到4kB),並寫入該載入的資料到平面「0」的頁面310當中。於寫入該第一組資料同時或之後,來自通道「CH 0」之第二組資料亦可被載入到頁面緩衝器302當中。在完成該第一組資料的PROGRAM作業之後,該第二組資料可自頁面緩衝器302出發,且被程式化到平面「1」之頁面312當中。此時,頁面緩衝器304可用於自通道「CH 1」接收資料。在完成來自通道「CH 0」之第二組資料的PROGRAM作業時,來自通道「CH 1」之資料可自頁面緩衝器304取得,並被程式化到平面「0」之頁面314當中,其後剩餘的資料可自頁面緩衝器304載入,並程式化到平面「1」之頁面316當中。類似地,在完成來自通道「CH 1」之第二組資料的PROGRAM作業時,來自通道「CH 2」之資料可自頁面緩衝器306取得,並被程式化到平面「0」之頁面318當中,其後剩餘的資料可自頁面緩衝器306載入,並程式化到平面「1」之頁面320當中。前述的PROGRAM作業會重複直到自通道「CH 3」接收的資料被成功地載入,並程式化到平面「0」之頁面322及平面「1」之頁面324當中。
第三B圖為關聯於第三A圖所示之水平資料傳送方案之時序圖的示例。如第三B圖所示,通道「CH 1」之平面「0」及平面「1」的資料僅在通道「CH 0」之平面「0」及平面「1」之資料的個別PROGRAM作業完成之後被程式化。類似地,通道「CH 2」之平面「0」及平面「1」的資料僅在通道「CH 1」之平面「0」及平面「1」之資料的個別PROGRAM作業完成之後被程式化;且通道「CH 3」之平面「0」的資料僅在通道「CH 2」之平面「0」及平面「1」之資料的個別PROGRAM作業完成之後被程式化。因為由該水平資料傳送方案造成的這些時間限制,PROGRAM作業
不能夠平行地橫跨通道「CH 0」、「CH 1」、「CH 2」及「CH 3」而同時開始,其即加長了該程式化時間「tPRG」。但是一長程式化時間會加長了一快閃記憶體裝置不能夠被存取之週期期間,即使該韌體(例如韌體124)已經延長了存取請求來存取該快閃記憶體裝置。
再者,根據在通道「CH 0」、「CH 1」、「CH 2」及「CH 3」之上傳送的資料之負載以及頁面310-324之大小,增加頁面緩衝器302-308之大小的需求即會增加,藉以容納迫切的通道緩衝器大小需求。例如,當每個頁面為4kB時,每個頁面緩衝器302-308之大小對於每個兩層快閃記憶體裝置300a-300d(例如每個頁面/平面為4kB)需要最少8kB,總共為32kB的快閃介面緩衝器大小。在另一例中,對於具有每個平面對應於4kB的一單一頁面之一八層快閃記憶體裝置,將需要總共128kB的快閃頁面緩衝器大小(例如對於四個通道各32kB來容納每個通道)。
如果頁面緩衝器302-308的大小不夠容納此快閃頁面緩衝器,則頁面緩衝器302-308的大小將需要增加,藉此根據第三A圖所示之水平資料傳送順序而可完整且有效率地執行該PROGRAM作業。但是,在一些案例中,即使當該頁面緩衝器大小增加時,該快閃記憶體裝置之效能不一定能夠改善。使用第三A圖所示之兩層快閃記憶體裝置300a-300d做為一示例,增加頁面緩衝器302-308之大小(例如增加每個頁面緩衝器302-308由一頁面緩衝器大小4kB或兩頁面緩衝器大小或8kB)不一定會改善兩層快閃記憶體裝置300a-300d之整體PROGRAM速度,其係因為由於該水平資料傳送方案造成的限制。因為來自通道「CH 1」之資料不能夠被程式化,直到完成來自通道「CH 0」之資料的PROGRAM作業之後,要完成通道「CH 0」、「CH 1」、「CH 2」及「CH 3」的PROGRAM作業的時段「tPRG」仍維持較長。一長的「tPRG」週期對於一固態控制器(例如固態控制器108)在該PROGRAM資料可由該固態控制器存取之前造成一較長的等待時間,且會不想要地降低該快閃記憶體裝置可被存取之存取速度。
在一些實作中,為了允許頁面310-324被程式化而不須要增加頁面緩衝器302-308之大小,可使用一垂直資料傳送方案來程式化平面「0」及平面「1」之頁面310-324。在一些實作中,該垂直資料傳送方案允許一第一平面的頁面在程式化其它平面的頁面之前被程式化。在程式化該第一平面的頁面之後,後續平面之該等頁面的程式化可開始進行。第四A圖所示為一垂直資料傳送方案之示例。
請參照第四A圖,一兩層快閃記憶體裝置400可包括平面「0」及平面「1」。雖然僅顯示有兩個平面,本技藝專業人士將可瞭解兩層快閃記憶體裝置400可包括兩個以上的平面,且將在以下討論的垂直資料傳送方案可以同等地應用。
類似於第三圖所示之兩層快閃記憶體裝置300a-300d,兩層快閃記憶體裝置400可在通道「CH 0」、「CH 1」、「CH 2」及「CH 3」之上接收資料。頁面緩衝器402、404、406及408可做為暫時儲存器來儲存自個別通道「CH 0」、「CH 1」、「CH 2」及「CH 3」上所接收到的資料。
資料可依序地載入到每個頁面緩衝器402-408當中。特別是,頁面緩衝器402可自通道「CH 0」接收要被程式化到平面「0」之頁面410a當中的第一群組資料,以及自通道「CH 0」接收要被程式化到平面「1」之頁面410b當中的第二群組資料;頁面緩衝器404可自通道「CH 1」接收要被程式化到平面「0」之頁面412a當中的第一群組資料,以及自通道「CH 1」接收要被程式化到平面「1」之頁面412b當中的第二群組資料;頁面緩衝器406可自通道「CH 2」接收要被程式化到平面「0」之頁面414a當中的第一群組資料,以及自通道「CH 2」接收要被程式化到平面「1」之頁面414b當中的第二群組資料;及頁面緩衝器408可自通道「CH 3」接收要被程式化到平面「0」之頁面416a當中的第一群組資料,以及自通道「CH 3」接收要被程式化到平面「1」之頁面416b當中的第二群組資料。
如上所述,儲存在頁面緩衝器402-408中的資料可
使用一垂直資料傳送方案被程式化到平面「0」及平面「1」之個別頁面當中。如虛線所示,在來自通道「CH 0」之第一群組資料被載入到頁面緩衝器402當中之後,來自通道「CH 0」之第一群組資料可被程式化到平面「0」之頁面410a當中。在此程式化階段期間,儲存在頁面緩衝器404-408中的資料亦可被載入及程式化到平面「0」之個別頁面412a、414a及416a當中。例如,在載入來自通道「CH 1」之第一群組資料到頁面緩衝器404當中之後,來自通道「CH 1」之第一群組資料平行於關聯於通道「CH 0」之PROGRAM作業立即被程式化到平面「0」之頁面412a當中。類似地,來自通道「CH 2」及通道「CH 3」之第一群組資料可立即被載入並程式化到平面「0」之個別頁面414a及416a當中。
在程式化來自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」的第一群組資料到平面「0」之個別頁面410a、412a、414a及416a當中之後,來自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」的第二群組資料可被載入到頁面緩衝器402-408當中,並程式化到平面「1」之個別頁面410b、412b、414b及416b當中。例如,在程式化來自通道「CH 3」的第一群組資料到平面「0」之頁面416a當中之後,來自通道「CH 0」之第二群組資料可被載入及程式化到平面「1」之頁面410b當中。此時,來自通道「CH 1」、「CH 2」及「CH 3」之第二群組的資料亦分別被載入到頁面緩衝器404-408當中。在由頁面緩衝器404-408載入第二群組資料之後,該第二群組資料被程式化到平面「1」之頁面412b、414b及416b當中。該垂直資料傳送方案允許該第一群組資料在進行該第二群組資料到平面「1」之該等頁面的PROGRAM作業之前被程式化到平面「0」之該等頁面當中。
在一些實作中,平面「0」的頁面410a、412a、414a及416a可平行地被程式化,而平面「1」的頁面410b、412b、414b及416b可平行地被程式化。本技藝專業人士將可瞭解到程式化前述頁面並不代表個別的PROGRAM作業準確地在相同時間開始。例如,關聯程式化平面「0」之頁面410a、412a、414a及416a的
PROGRAM作業之每一者可在一預定時間偏移之後初始化。例如,關聯於程式化頁面410a之PROGRAM作業可在一特定基準時間初始化。在經過一預定時段之後(例如自從該基準時間),關聯於程式化頁面412a之PROGRAM作業可以進行。在一些實作中,此預定的時間偏移可根據關聯於載入該資料到一個別頁面緩衝器當中的時間而定。例如,在初始化關聯於程式化頁面410a之PROGRAM作業與關聯於程式化頁面412a之PROGRAM作業之間的時間差為該固態驅動器在已經開始自頁面緩衝器402載入資料之後初始化自頁面緩衝器404載入資料所需要的時間。類似地,關聯程式化平面「1」之頁面410b、412b、414b及416b的PROGRAM作業之每一者可在一預定時間偏移之後初始化。
第四B圖為關聯於第四A圖所示之垂直資料傳送方案之時序圖的示例。如第四B圖所示,自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」接收的資料之PROGRAM作業可被平行地執行。特別是,來自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」的資料可平行地被程式化到平面「0」當中。在平面「0」的頁面被程式化之後,固態控制器108可開始程式化平面「1」的該等頁面,如第四A圖所示之垂直資料傳送方案所述。相較於第三B圖所示的水平資料傳送方案的時序圖,該垂直資料傳送方案顯著地降低PROGRAM時間週期「tPRG」,並因為該垂直資料傳送方案允許所有的頻道被平行地程式化,其可改善該PROGRAM作業之整體速度。該垂直資料傳送方案可降低該PROGRAM時間週期「tPRG」對於一SLC裝置可低於200μs,對於一MLC裝置可低於800μs。
第五圖為執行一垂直資料傳送方案之程序500的示例。程序500例如可由固態系統100或固態控制器104所執行,且為了清楚呈現,以下的說明使用固態控制器104做為說明程序500之示例的基礎。但是,亦可使用另一個系統或裝置與系統的組合來執行程序500。
請參照第五圖,於502中,接收到第一資料與第二
資料。在504中,該第一資料可儲存在一第一頁面緩衝器中,且該第二資料可儲存在一第二頁面緩衝器中。在506中,儲存在該第一頁面緩衝器中的第一資料可被程式化到關聯於一第一記憶體平面之第一頁面當中。在508中,儲存在該第二頁面緩衝器中的第二資料可在程式化該第一資料時被程式化到關聯於一第一記憶體平面之第二頁面當中。
在一些實作中,作業502-508可依照所列出的順序或平行地執行(例如藉由相同或不同的程序,實質上或另為非序列式)來達到相同的結果。作業502-508亦可由相同或不同的實體或系統來執行。
雖然先前的實作係以平行地程式化來自通道「CH 0」、「CH 1」、「CH 2」及「CH 3」之資料來說明,PROGRAM作業亦可在一先前通道的PROGRAM作業已經結束之後開始。例如,來自通道「CH 1」之第一群組資料可在使用來自通道「CH 0」之資料在完成頁面410a之PROGRAM作業時進行。在另一例中,來自通道「CH 2」之第一群組資料可在使用來自通道「CH 1」之資料在完成頁面412a之PROGRAM作業時進行。在又另一例中,來自通道「CH 3」之第一群組資料可在使用來自通道「CH 2」之資料在完成頁面414a之PROGRAM作業時進行。
雖然在第四圖中僅說明兩個平面時,該垂直資料傳送方案亦可應用到具有兩個以上之平面的多層記憶體裝置。例如,該垂直資料傳送方案可被應用到具有四個平面之一多層記憶體裝置。在此例中,於完成頁面416b之PROGRAM作業之後,該垂直資料傳送方案可進行到程式化來自通道「CH 0」之第三群組資料到該第三平面(即平面「2」)之第一頁面當中。
第一A圖所示的示例固態驅動器系統100為一示例性系統組態,其僅為了概念清楚而顯示。其亦可使用任何其它適當的記憶體系統組態。對於瞭解此處所述之標的的原理所不需要的元件,例如多種介面、定址電路、時序及序列化電路及偵錯電路等,皆為了清楚起見自圖面中省略。
包括固態控制器108及記憶體控制器130之固態驅動器系統100或固態驅動器104可被安裝在一封裝中。功能性區塊及周邊電路另可被包括在該封裝中。例如,固態驅動器系統100或固態驅動器104可安裝在一封裝中,例如封裝上封裝(PoP,“Package on Package”)、球柵陣列(BGA,“Ball Grid Array”)、晶片級封裝(CSP,“Chip Scale Package”)、塑膠導線晶片載板(PLCC,“Plastic Leaded Chip Carrier”)、塑膠雙重直線封裝(PDIP,“Plastic Dual In-Line Package”)、餅狀封裝中晶粒(Die in Waffle Package)、晶圓型式中晶粒(Die in Wafer Form)、板上晶片(COB,“Chip On Board”)、陶瓷雙重直線封裝(CERDIP,“Ceramic Dual In-Line Package”)、塑膠度量四方平板封裝(MQFP,“Plastic Metric Quad Flat Package”)、薄型四方平板封裝(TQFP,“Thin Quad Flat Package”)、小型輪廓積體電路(SOIC,“Small Outline Integrated Circuit”)、縮減小型輪廓封裝(SSOP,“Shrink Small Outline Package”)、薄型小型輪廓封裝(TSOP,“Thin Small Outline Package”)、薄形四方平板封裝(TQFP,“Thin Quad Flat Package”)、封裝中系統(SIP,“System In Package”)、多晶片封裝(MCP,“Multi Chip Package”)、晶圓級製造封裝(WFP,“Wafer-level Fabricated Package”)、晶圓級處理堆疊封裝(WSP,“Wafer-level Processed Stack Package”)及類似者。
包括固態控制器108及記憶體控制器130之固態驅動器系統100或固態驅動器104亦可置於一記憶體卡中。該記憶卡可經由至少一介面與一外部裝置(例如一主機)進行通訊,例如通用序列匯流排(USB,“Universal Serial Bus”)、多媒體卡(MMC,“Multimedia Card”)、周邊組件互連快速(PCI-E,“Peripheral Component Interconnect-Express”)、序列先進技術附加(SATA,“serial Advanced Technology Attachment”)、並列先進技術附加(PATA,“Parallel Advanced Technology Attachment”)、小型電腦系統介面(SCSI,“Small Computer System Interface”)、增進小型裝置介面(ESDI,“Enhanced Small Device Interface”)、整合式驅
動器電子(IDE,“Integrated Drive Electronics”)及類似者。
包括固態控制器108與記憶體控制器130之固態驅動器系統100或固態驅動器104亦可置於一行動裝置上,例如行動電話、個人數位/資料助理(PDA,“Personal digital/data assistant”)、數位相機、攜帶式遊戲主機及MP3播放器。當固態驅動器系統100或固態驅動器104實作在一行動裝置中時,快閃記憶體裝置106a-106d可在該行動裝置的內部或外部,並可儲存該行動裝置之作業的碼以及資料。
包括固態控制器108及記憶體控制器130之固態驅動器系統100或固態驅動器104可適用於一家庭應用,例如一高解析度電視(HDTV,"High definition television”)、數位視訊碟片、數位多功能碟片(DVD,“Digital versatile disc”)、路由器、全球定位系統(GPS,“Global Positioning System”)及類似者。
包括固態控制器108及記憶體控制器130之固態驅動器系統100或固態驅動器104可適用於一運算系統中。當固態驅動器系統100或固態驅動器104實作在一運算系統中時,固態驅動器系統100或固態驅動器104另可包括一微處理器,其電氣耦合至一匯流排、一使用者介面及一數據機,例如一基頻晶片組。快閃記憶體裝置106a-106d可做為內部或外部組件而提供給該運算系統,並可儲存可由該微處理器經由記憶體控制器130進行處理的資料。如果該運算系統為一行動裝置,另可包括供應該運算系統之操作電壓的電池。本技藝專業人士將可瞭解到該運算系統另可包括一應用晶片組、一相機影像處理器(CIS,“Camera image processor”)及/或一行動DRAM。
快閃記憶體裝置106a-106d為即使電源關閉而能夠維持儲存的資料之非揮發性記憶體裝置。因此,本技藝專業人士將可瞭解到快閃記憶體裝置106a-106d可適用於不同的裝置、設備及系統以及應用。
如上所述,一快閃記憶體裝置之多個平面可使用一垂直資料傳送方案來程式化,以降低該PROGRAM時間「tPRG」,
使得快閃記憶體裝置106a-106d及固態系統100之效能可被改善,而不需要增加頁面緩衝器132a-132d之大小。
一些實作已在上述詳細說明,並有可能有多種的修正。所揭示的標的,包括在本說明書中所述的功能性作業,其可實作成電子電路、電腦硬體、韌體、軟體、或其組合,例如在本說明書中揭示的結構性手段,及其結構同等者,其可能包括一程式用於使得一或多個資料處理設備來執行所述的該等作業(例如編碼在一電腦可讀取媒體之程式,其可為一記憶體裝置、一儲存裝置、一機器可讀取儲存基板或其它實體機器可讀取媒體,或它們一或多者之組合)。
該術語「系統」涵蓋所有用於處理資料的設備、裝置及機器,其包括例如一程式化處理器、一電腦,或多個處理器或電腦。除了硬體之外,該系統可包括產生用於討論中之電腦程式的一執行環境的碼,例如構成處理器韌體、一協定堆疊、一資料庫管理系統、一作業系統或它們一或多種之組合的碼。
一程式(亦已知為一電腦程式、軟體、軟體應用、腳本或碼)可被撰寫成任何型式的程式化語言,其包括編譯或解譯的語言,或宣告式或程序式語言,且其可部署成任何型式,其包括做為一獨立運作程式,或做為一模組、組件、子例式或其它適合用於一運算環境中的單元。一程式並不一定對應於一檔案系統中的一檔案。一程式可儲存在保持其它程式或資料(例如儲存在一審定語言文件中一或多個腳本)的一檔案的一部份中,在專屬於有問題的程式之單一檔案中,或在多個協調的檔案中(例如儲存一或多個模組、子程式或碼的多個部份之檔案)。一程式可被部署以在,位於一個場所處或分散到橫跨多個場所並由一通訊網路互連的,一電腦或多部電腦上執行。
雖然此說明書包含許多特定細節時,這些不應視為所主張之範疇的限制,而是對於特殊實作所特定之特徵的說明。於個別實作之內容中在本說明書中所述之某些特徵亦可實作成單一實作中的組合。相反地,在單一實作之內容中所描述的不同特
徵亦可個別或以任何適當次組合的方式實作在多個實作中。再者,雖然特徵在以上可被描述成在某些組合中運作,且甚至初始時主張為如此,來自一主張的組合之一或多個特徵在某些案例中可由該組合實施,且所主張的組合可關於一次組合或一次組合的變化。
類似地,當在圖面中所述之作業係為一特定順序時,此不應被視為這些作業必須以所示的特定順序或以連續順序來執行,或要執行所有例示的作業來達到所要的結果。在某些狀況下,多工化及平行處理較佳。再者,在上述的該等實作中不同系統組件之區隔不應被理解為在所有實作中皆需要這種區隔。
其它的實作皆落在以下申請專利範圍之範疇內。
100‧‧‧固態驅動器系統
102‧‧‧主機
103‧‧‧匯流排
104‧‧‧固態驅動器
106a-106d‧‧‧快閃記憶體裝置
108‧‧‧固態控制器
110‧‧‧主機介面
112‧‧‧錯誤檢查碼模組
114‧‧‧介面邏輯
116‧‧‧序列器
118‧‧‧格式化器
123‧‧‧中央處理器單元
124‧‧‧嵌入式韌體
126a-126d‧‧‧通道
128‧‧‧記憶體介面
130‧‧‧記憶體控制器
132a-132d‧‧‧頁面緩衝器
134a-134d‧‧‧通道
136a-136d‧‧‧通道
Claims (11)
- 一種方法,其包含:接收一第一資料之第一子集合與一第二資料之第一子集合;儲存該第一資料之第一子集合在一第一頁面緩衝器中,並儲存該第二資料之第一子集合在一第二頁面緩衝器中,其中該第一頁面緩衝器以及該第二頁面緩衝器具有等於一記憶體平面的一個頁面的大小;程式化所儲存的該第一資料之第一子集合到關聯於一多層記憶體裝置的一第一記憶體平面的一第一頁面當中;及平行於程式化所儲存的該第一資料之第一子集合,同時程式化所儲存的該第二資料之第一子集合到關聯於該第一記憶體平面的一第二頁面當中;當程式化所儲存的該第一資料之第一子集合到關聯於該多層記憶體裝置的該第一記憶體平面的該第一頁面當中時,接收一第一資料之第二子集合且儲存該第一資料之第二子集合於該第一頁面緩衝器中;當程式化所儲存的該第二資料之第一子集合到關聯於該第一記憶體平面的該第二頁面當中時,接收一第二資料之第二子集合且儲存該第二資料之第二子集合於該第二頁面緩衝器中;在程式化所儲存的該第二資料之第一子集合到關聯於該第一記憶體平面的該第二頁面當中之後,程式化所儲存的該第一資料之第二子集合到關聯於該多層記憶體裝置的一第二記憶體平面的一第一頁面當中; 程式化所儲存的該第二資料之第二子集合到關聯於該第二記憶體平面的一第二頁面當中。
- 如申請專利範圍第1項之方法,其中接收該第一資料包括在一第一通道上接收該第一資料;及其中接收該第二資料包括在不同於該第一通道的一第二通道上接收該第二資料。
- 如申請專利範圍第1項之方法,其中程式化所儲存的該第二資料之第二子集合到關聯於該第二記憶體平面的該第二頁面當中,係平行於程式化所儲存的該第一資料之第二子集合到關聯於該第二記憶體平面的該第一頁面當中而同時進行。
- 如申請專利範圍第1項之方法,其中平行於程式化所儲存的該第一資料之第一子集合而程式化所儲存的該第二資料之第一子集合到關聯於該第一記憶體平面的該第二頁面當中,包括在程式化所儲存的該第一資料之第一子集合到關聯於該第一記憶體平面的該第一頁面完成之前,初始化關聯於所儲存的該第二資料之第一子集合的一程式作業。
- 一種裝置,其包含:一第一頁面緩衝器,其組態成自一第一通道接收一第一資料之第一子集合,並儲存該第一資料之第一子集合;一第二頁面緩衝器,其組態成自一第二通道接收一第二資料之第一子集合,並儲存該第二資料之第一子集合;及電路,其組態成同時平行地進行:程式化所儲存的該第一資料之第一子集合到關聯於一多層記憶體裝置的一第一記憶體平面的一第一頁面當中,以及程式化所儲存的該第二資料之第 一子集合到關聯於該多層記憶體裝置的該第一記憶體平面的一第二頁面當中;其中該第一頁面緩衝器係組態成,當所儲存的該第一資料之第一子集合正被程式化到關聯於該多層記憶體裝置的該第一記憶體平面的該第一頁面當中時,該第一頁面緩衝器自該第一通道接收一第一資料之第二子集合並儲存該第一資料之第二子集合,該第二頁面緩衝器係組態成,當所儲存的該第二資料之第一子集合正被程式化到關聯於該多層記憶體裝置的該第一記憶體平面的該第二頁面當中時,該第二頁面緩衝器自該第二通道接收一第二資料之第二子集合並儲存該第二資料之第二子集合,以及該電路係組態成,在所儲存的該第二資料之第一子集合被程式化到關聯於該多層記憶體裝置的該第一記憶體平面的該第二頁面當中之後,程式化所儲存的該第一資料之第二子集合到關聯於該多層記憶體裝置的一第二記憶體平面的一第一頁面當中,以及程式化所儲存的該第二資料之第二子集合到關聯於該多層記憶體裝置的一第二記憶體平面的一第二頁面當中。
- 如申請專利範圍第5項之裝置,其中該電路組態成,平行於程式化所儲存的該第一資料之第二子集合到關聯於該多層記憶體裝置的該第二記憶體平面的該第一頁面當中,同時程式化所儲存的該第二資料之第二子集合到關聯於該多層記憶體裝置的該第二記憶體平面的該第二頁面當中。
- 如申請專利範圍第5項之裝置,其中該電路組態成,在關聯於程式化所儲存的該第一資料之第一子集合的一程式作業完成之前,初始化關聯於程式化所儲存的該第二資料之第一子集合的一程式作業。
- 一種系統,該系統包含:一記憶體裝置,其具有一第一記憶體平面與一第二記憶體平面;一第一頁面緩衝器,用於自一第一通道接收一第一資料之第一子集合,並儲存該第一資料之第一子集合;一第二頁面緩衝器,用於自一第二通道接收一第二資料之第一子集合,並儲存該第二資料之第一子集合;及一控制器,其組態成:同時平行地程式化所儲存的該第一資料之第一子集合到關聯於該記憶體裝置的該第一記憶體平面的一第一頁面當中,以及程式化所儲存的該第二資料之第一子集合到關聯於該記憶體裝置的該第一記憶體平面的一第二頁面當中,其中該第一頁面緩衝器係組態成,當所儲存的該第一資料之第一子集合正被程式化到關聯於該記憶體裝置的該第一記憶體平面的該第一頁面當中時,該第一頁面緩衝器接收一第一資料之第二子集合並儲存該第一資料之第二子集合,該第二頁面緩衝器係組態成,當所儲存的該第二資料之第一子集合正被程式化到關聯於該記憶體裝置的該第一記憶體平 面的該第二頁面當中時,該第二頁面緩衝器接收一第二資料之第二子集合並儲存該第二資料之第二子集合,以及該控制器係組態成,i)在所儲存的該第二資料之第一子集合被程式化到關聯於該記憶體裝置的該第一記憶體平面的該第二頁面當中之後,程式化所儲存的該第一資料之第二子集合到關聯於該記憶體裝置的該第二記憶體平面的一第一頁面當中,以及ii)程式化所儲存的該第二資料之第二子集合到關聯於該記憶體裝置的該第二記憶體平面的一第二頁面當中。
- 如申請專利範圍第8項之系統,其中該控制器進一步組態成,在初始化關聯於程式化所儲存的該第一資料之第二子集合的一程式作業之前但在初始化關聯於程式化所儲存的該第一資料之第一子集合的一程式作業之後,初始化關聯於程式化所儲存的該第二資料之第一子集合的一程式作業。
- 如申請專利範圍第8項之系統,其中該控制器組態成,平行於程式化所儲存的該第一資料之第二子集合到關聯於該記憶體裝置的該第二記憶體平面的該第一頁面當中,同時程式化所儲存的該第二資料之第二子集合到關聯於該記憶體裝置的該第二記憶體平面的該第二頁面當中。
- 如申請專利範圍第8項之系統,其中該控制器組態成,在程式化所儲存的該第一資料之第一子集合到關聯於該記憶體裝置的該第一記憶體平面的該第一頁面完成之前,初始化關聯於所儲存的該第二資料之第一子集合的一程式作業。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9387208P | 2008-09-03 | 2008-09-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201544954A true TW201544954A (zh) | 2015-12-01 |
TWI607311B TWI607311B (zh) | 2017-12-01 |
Family
ID=41354040
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104115180A TWI607311B (zh) | 2008-09-03 | 2009-09-03 | 多層資料排序 |
TW098129668A TWI607310B (zh) | 2008-09-03 | 2009-09-03 | 多層資料排序 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098129668A TWI607310B (zh) | 2008-09-03 | 2009-09-03 | 多層資料排序 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9773557B2 (zh) |
EP (1) | EP2347417B1 (zh) |
JP (1) | JP5360214B2 (zh) |
KR (1) | KR101684583B1 (zh) |
TW (2) | TWI607311B (zh) |
WO (1) | WO2010027983A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI705372B (zh) * | 2018-12-26 | 2020-09-21 | 旺宏電子股份有限公司 | 快閃記憶體裝置及其控制方法 |
US10891077B2 (en) | 2018-12-26 | 2021-01-12 | Macronix International Co., Ltd. | Flash memory device and controlling method thereof |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8127091B2 (en) * | 2008-10-30 | 2012-02-28 | Micron Technology, Inc. | Programming memory cells with additional data for increased threshold voltage resolution |
US8255615B1 (en) * | 2009-01-08 | 2012-08-28 | Marvell International Ltd. | Flexible sequence design architecture for solid state memory controller |
KR101636248B1 (ko) * | 2009-12-10 | 2016-07-06 | 삼성전자주식회사 | 플래시 메모리 장치, 이를 포함하는 플래시 메모리 시스템 및 이의 프로그램 방법 |
CN102971795A (zh) * | 2010-05-07 | 2013-03-13 | 莫塞德技术公司 | 使用单个缓冲区同时读取多个存储器装置的方法和设备 |
TWI452465B (zh) * | 2010-08-19 | 2014-09-11 | Zeroplus Technology Co Ltd | Method of arranging and processing the electronic measuring device and its tandem parallel data |
WO2012087971A2 (en) * | 2010-12-20 | 2012-06-28 | Marvell World Trade Ltd. | Descriptor scheduler |
US8938583B1 (en) | 2011-11-16 | 2015-01-20 | Western Digital Technologies, Inc. | System and method for concurrently executing data access requests |
KR20130072667A (ko) * | 2011-12-22 | 2013-07-02 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이의 동작방법 |
KR101942272B1 (ko) | 2011-12-27 | 2019-01-28 | 삼성전자주식회사 | 비휘발성 메모리의 제어방법, 이를 구현한 비휘발성 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 |
KR20130076430A (ko) * | 2011-12-28 | 2013-07-08 | 삼성전자주식회사 | 적응적 카피백 방법 및 이를 이용한 저장 장치 |
CN103426470B (zh) * | 2012-05-21 | 2016-04-20 | 北京兆易创新科技股份有限公司 | 提高快闪存储器的页编程速度的方法 |
KR102025088B1 (ko) | 2012-09-03 | 2019-09-25 | 삼성전자 주식회사 | 메모리 컨트롤러 및 상기 메모리 컨트롤러를 포함하는 전자장치 |
US10445229B1 (en) * | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
US11249652B1 (en) | 2013-01-28 | 2022-02-15 | Radian Memory Systems, Inc. | Maintenance of nonvolatile memory on host selected namespaces by a common memory controller |
KR102128466B1 (ko) | 2014-04-14 | 2020-06-30 | 삼성전자주식회사 | 메모리 시스템, 상기 메모리 시스템의 프로그램 방법 및 상기 메모리 시스템의 테스트 방법 |
JP2015215774A (ja) * | 2014-05-12 | 2015-12-03 | Tdk株式会社 | メモリコントローラ、メモリシステム及びメモリ制御方法 |
KR20160007972A (ko) * | 2014-07-10 | 2016-01-21 | 삼성전자주식회사 | 불 휘발성 메모리 장치 및 메모리 컨트롤러, 그리고 그것의 동작 방법 |
US9443617B2 (en) * | 2014-07-18 | 2016-09-13 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
KR102234592B1 (ko) * | 2014-07-29 | 2021-04-05 | 삼성전자주식회사 | 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법 |
US9971647B2 (en) * | 2014-07-31 | 2018-05-15 | Winbond Electronics Corporation | Apparatus and method for programming ECC-enabled NAND flash memory |
US9542118B1 (en) | 2014-09-09 | 2017-01-10 | Radian Memory Systems, Inc. | Expositive flash memory control |
KR102282196B1 (ko) | 2015-04-28 | 2021-07-27 | 삼성전자 주식회사 | 비휘발성 메모리 장치, 메모리 시스템 및 그것의 동작 방법 |
US10466908B2 (en) * | 2015-08-25 | 2019-11-05 | Toshiba Memory Corporation | Memory system that buffers data before writing to nonvolatile memory |
US10096366B2 (en) * | 2016-01-28 | 2018-10-09 | Toshiba Memory Corporation | Memory system including multi-plane flash memory and controller |
US10175889B2 (en) | 2016-03-10 | 2019-01-08 | Toshiba Memory Corporation | Memory system capable of accessing memory cell arrays in parallel |
US9792995B1 (en) | 2016-04-26 | 2017-10-17 | Sandisk Technologies Llc | Independent multi-plane read and low latency hybrid read |
KR20180045102A (ko) * | 2016-10-24 | 2018-05-04 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법 및 메모리 컨트롤러를 포함하는 저장 장치의 동작 방법 |
TWI658402B (zh) * | 2017-07-20 | 2019-05-01 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置 |
US11188355B2 (en) * | 2017-10-11 | 2021-11-30 | Barefoot Networks, Inc. | Data plane program verification |
US10991445B2 (en) | 2018-09-06 | 2021-04-27 | Micron Technology, Inc. | Memory sub-system including an in-package sequencer to perform error correction and memory testing operations |
US11972811B2 (en) | 2018-11-18 | 2024-04-30 | NEO Semiconductor, Inc. | Methods and apparatus for NAND flash memory |
US12002525B2 (en) | 2018-11-18 | 2024-06-04 | NEO Semiconductor, Inc. | Methods and apparatus for NAND flash memory |
US11049579B2 (en) | 2018-11-18 | 2021-06-29 | Fu-Chang Hsu | Methods and apparatus for NAND flash memory |
JP7293063B2 (ja) | 2019-09-19 | 2023-06-19 | キオクシア株式会社 | メモリシステムおよび記憶装置 |
US11662942B2 (en) * | 2021-03-16 | 2023-05-30 | Kioxia Corporation | Explicit buffer control |
EP4392975A1 (en) * | 2021-08-26 | 2024-07-03 | NEO Semiconductor, Inc. | Methods and apparatus for nand flash memory |
US11742004B2 (en) * | 2021-11-24 | 2023-08-29 | Macronix International Co., Ltd. | Memory supporting multiple types of operations |
US11967383B2 (en) * | 2022-01-20 | 2024-04-23 | Western Digital Technologies, Inc. | Non-volatile memory with enhanced program operation for last state on slow plane |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3588173T2 (de) * | 1984-07-23 | 1998-06-10 | Texas Instruments Inc | Videosystem |
US5519847A (en) * | 1993-06-30 | 1996-05-21 | Intel Corporation | Method of pipelining sequential writes in a flash memory |
KR100389916B1 (ko) * | 2000-08-28 | 2003-07-04 | 삼성전자주식회사 | 메모리 모듈 및 메모리 컨트롤러 |
DE10215362A1 (de) * | 2002-04-08 | 2003-10-30 | Infineon Technologies Ag | Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher |
US7162564B2 (en) * | 2002-07-09 | 2007-01-09 | Intel Corporation | Configurable multi-port multi-protocol network interface to support packet processing |
US7631138B2 (en) * | 2003-12-30 | 2009-12-08 | Sandisk Corporation | Adaptive mode switching of flash memory address mapping based on host usage characteristics |
US8504798B2 (en) * | 2003-12-30 | 2013-08-06 | Sandisk Technologies Inc. | Management of non-volatile memory systems having large erase blocks |
US7120051B2 (en) * | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
KR100694968B1 (ko) * | 2005-06-30 | 2007-03-14 | 주식회사 하이닉스반도체 | 비휘발성 메모리 장치와 그것의 멀티-페이지 프로그램,독출 및 카피백 프로그램 방법 |
KR100713984B1 (ko) * | 2005-09-15 | 2007-05-04 | 주식회사 하이닉스반도체 | 멀티-플레인 구조를 갖는 비휘발성 메모리 장치의 프로그램방법 |
KR100754226B1 (ko) * | 2006-08-22 | 2007-09-03 | 삼성전자주식회사 | 비휘발성 데이터 저장장치의 프로그래밍 방법 및 그 장치 |
US7280398B1 (en) * | 2006-08-31 | 2007-10-09 | Micron Technology, Inc. | System and memory for sequential multi-plane page memory operations |
KR100806119B1 (ko) * | 2006-10-23 | 2008-02-22 | 삼성전자주식회사 | 플래시 메모리 장치 및 플래시 메모리 장치의 멀티-페이지프로그램 방법 |
KR100773400B1 (ko) * | 2006-10-26 | 2007-11-05 | 삼성전자주식회사 | 멀티 비트 플래시 메모리 장치 |
KR100843218B1 (ko) * | 2006-12-18 | 2008-07-02 | 삼성전자주식회사 | 어드레스 쉬프팅을 이용하여 블럭 사이즈를 변경하는플래시 메모리 장치 및 방법 |
TW201504495A (zh) * | 2013-07-24 | 2015-02-01 | zhi-min Xu | 洗衣機之除垢刷結構 |
-
2009
- 2009-09-01 US US12/552,027 patent/US9773557B2/en active Active
- 2009-09-01 EP EP09792140.7A patent/EP2347417B1/en not_active Not-in-force
- 2009-09-01 KR KR1020117007785A patent/KR101684583B1/ko active IP Right Grant
- 2009-09-01 JP JP2011525287A patent/JP5360214B2/ja not_active Expired - Fee Related
- 2009-09-01 WO PCT/US2009/055632 patent/WO2010027983A1/en active Application Filing
- 2009-09-03 TW TW104115180A patent/TWI607311B/zh not_active IP Right Cessation
- 2009-09-03 TW TW098129668A patent/TWI607310B/zh not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI705372B (zh) * | 2018-12-26 | 2020-09-21 | 旺宏電子股份有限公司 | 快閃記憶體裝置及其控制方法 |
US10891077B2 (en) | 2018-12-26 | 2021-01-12 | Macronix International Co., Ltd. | Flash memory device and controlling method thereof |
Also Published As
Publication number | Publication date |
---|---|
JP5360214B2 (ja) | 2013-12-04 |
US9773557B2 (en) | 2017-09-26 |
KR101684583B1 (ko) | 2016-12-08 |
KR20110069049A (ko) | 2011-06-22 |
TW201019111A (en) | 2010-05-16 |
WO2010027983A1 (en) | 2010-03-11 |
WO2010027983A9 (en) | 2011-03-10 |
US20100058003A1 (en) | 2010-03-04 |
TWI607311B (zh) | 2017-12-01 |
TWI607310B (zh) | 2017-12-01 |
EP2347417B1 (en) | 2018-04-18 |
EP2347417A1 (en) | 2011-07-27 |
JP2012502332A (ja) | 2012-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI607311B (zh) | 多層資料排序 | |
US11275526B2 (en) | Memory controller for determining channel initialization time and method of operating the same | |
US9281068B2 (en) | Nonvolatile memory and related reprogramming method | |
US10910045B2 (en) | Storage device having improved cache performance and method of operating the same | |
CN111258793A (zh) | 存储器控制器及其操作方法 | |
TW201321976A (zh) | 半導體記憶體裝置、其讀取方法以及具有該半導體記憶體裝置的資料儲存裝置 | |
CN110942795B (zh) | 存储器系统、其操作方法以及非易失性存储器装置 | |
US10658045B1 (en) | Enhanced solid-state drive write performance with background erase | |
US20240212769A1 (en) | Memory device and method of operating the same | |
CN112908370A (zh) | 存储器装置和操作该存储器装置的方法 | |
CN110838313A (zh) | 半导体存储器装置及其操作方法 | |
US11404100B2 (en) | Memory device and method of operating the same | |
CN112053711B (zh) | 存储器装置以及该存储器装置的操作方法 | |
US10599562B2 (en) | Nonvolatile memory device configured to be accessed without block address and method of operating the same | |
TW201911306A (zh) | 記憶體裝置及其操作方法 | |
US10073741B2 (en) | Memory system with reduced program time and method of operating the same | |
US10964395B2 (en) | Memory system, memory device and memory controller | |
US12087390B2 (en) | Storage device based on daisy chain topology | |
US12067258B2 (en) | Memory device and program speed control method thereof | |
US11482291B2 (en) | Memory device and method of operating the same | |
US20230134281A1 (en) | Shortened single-level cell memory programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |