專利名稱:隔離順序、隨機(jī)和系統(tǒng)數(shù)據(jù)以減少垃圾回收的針對基于頁映射的非易失性半導(dǎo)體存儲器的制作方法
隔離順序、隨機(jī)和系統(tǒng)數(shù)據(jù)以減少垃圾回收的針對基于頁 映射的非易失性半導(dǎo)體存儲器
背景技術(shù):
非易失性半導(dǎo)體存儲器可用于計(jì)算機(jī)系統(tǒng)(如,臺式、膝上型、便攜式計(jì)算機(jī)等 等)或消費(fèi)裝置(如音樂播放器、移動電話、照相機(jī)等等)或其他合適用具的大容量存儲裝 置。非易失性半導(dǎo)體存儲器可包括一個或更多存儲器器件(如閃存)和存取每個存儲器器 件的控制電路。每個存儲器器件都耦接到1/0(輸入/輸出)總線以及大量接口控制線。 當(dāng)向存儲器器件發(fā)出編程命令或擦除命令時(shí),控制電路通過I/O總線傳遞地址和命令數(shù)據(jù) (并為編程操作傳遞寫數(shù)據(jù))。當(dāng)發(fā)出讀取命令時(shí),控制電路通過I/O總線傳遞地址和命令 數(shù)據(jù)然后通過I/O總線接收讀取的數(shù)據(jù)。每個存儲器器件通常包括多個塊,這些塊每次被存取一頁。例如,單個塊可包括 1 頁,其中每頁包括4k字節(jié)。由于頁在尚未首次擦除的情況下通常不能被重寫,因此通常 選擇不同塊中新的一頁來執(zhí)行“重寫”操作。為了促進(jìn)重新部署數(shù)據(jù)到不同頁,非易失性半 導(dǎo)體存儲器實(shí)施間接存取,其中表示數(shù)據(jù)塊的邏輯塊地址(LBA)映射到表示多頁中一頁的 物理塊地址(PBA)。通過這種方式,當(dāng)數(shù)據(jù)塊的頁移動時(shí),LBA易于再分配給新PBA。非易失性存儲器周期性地執(zhí)行垃圾回收操作,其中第一塊的剩余有效頁被重新部 署到第二塊,從而第一塊可被擦除(由此在重寫操作期間擦除先前重新部署的無效頁)。期 望最小化非易失性存儲器中垃圾回收的量,以減小寫放大和功率消耗,以及提高持久性和 性能。
圖1是根據(jù)本發(fā)明實(shí)施例的非易失性半導(dǎo)體存儲器,其包括具有存儲器陣列的存 儲器器件,該存儲器陣列包括多個存儲段。圖2示出本發(fā)明的實(shí)施例,其中系統(tǒng)數(shù)據(jù)、隨機(jī)數(shù)據(jù)和順序數(shù)據(jù)的映射數(shù)據(jù)存儲 在各映射區(qū)中。圖3A-3D示出本發(fā)明實(shí)施例,其中基于頁的映射方案用于尋址存儲段(該實(shí)施例 中的頁)。圖4A-4C示出本發(fā)明實(shí)施例,其中大量寫命令的映射數(shù)據(jù)在被寫入到非易失性存 儲器之間緩存在易失性存儲器中。圖5A示出根據(jù)本發(fā)明實(shí)施例在易失性存儲器中存取的全局LBA/PBA映射。圖5B示出用于存儲順序存取寫命令的映射數(shù)據(jù)的順序日志,其中順序日志用于 在電源故障時(shí)更新全局LBA/PBA映射。圖5C示出用于存儲隨機(jī)/系統(tǒng)存取寫命令的映射數(shù)據(jù)的隨機(jī)/系統(tǒng)日志,其中隨 機(jī)/系統(tǒng)日志用于在電源故障時(shí)更新全局LBA/PBA映射。圖6是根據(jù)本發(fā)明實(shí)施例的流程圖,其中滿頁映射數(shù)據(jù)在被寫入到非易失性存儲 器之前存儲在每個寫日志中,且全局LBA/PBA映射被周期性寫入到非易失性存儲器中。
具體實(shí)施例方式圖1示出非易失性半導(dǎo)體存儲器2,其包括存儲器器件4和定義多個區(qū)的控制電路 8,存儲器器件4具有包括多個存儲段的存儲器陣列6,每個區(qū)包括多個存儲段。從主機(jī)10 接收多個順序存取寫命令,以將順序數(shù)據(jù)寫入到存儲器器件4,其中每個順序存取寫命令標(biāo) 識至少一個邏輯塊地址(LBA)。從主機(jī)10接收多個隨機(jī)存取寫命令,以將隨機(jī)數(shù)據(jù)寫入到 存儲器器件4,其中每個隨機(jī)存取寫命令標(biāo)識至少一個LBA。順序存取寫命令的LBA映射到 多個存儲段,以生成順序映射數(shù)據(jù),且順序映射數(shù)據(jù)映射到多個區(qū)的第一區(qū)。隨機(jī)存取寫命 令的LBA映射到多個存儲段從而生成隨機(jī)映射數(shù)據(jù),且隨機(jī)映射數(shù)據(jù)映射到多個區(qū)的第二 區(qū)。非易失性半導(dǎo)體存儲器2可包括控制電路8和存儲器器件4的任何適當(dāng)配置。在 圖1的實(shí)施例中,存儲器器件4包括合適的閃存(如NAND或N0R(閃存),且控制電路包括 閃存控制器8,閃存控制器8包括執(zhí)行不同算法(如LBA到PBA的映射、糾錯編碼(ECC)、耗 損平衡,等等)的微處理器12。存儲器控制器8進(jìn)一步包括用于在易失性存儲器(如動態(tài) 隨機(jī)存儲器(DRAM))中緩存寫/讀數(shù)據(jù)的緩存器14和用于與存儲器器件4接口的合適的 接口電路16。存儲器器件4耦連到I/O總線18以及多個接口控制線20。當(dāng)發(fā)出編程命令 或擦除命令給存儲器器件4時(shí),微處理器12通過I/O總線18傳遞地址和命令數(shù)據(jù)(并且 為編程操作傳遞寫入數(shù)據(jù))。當(dāng)發(fā)出讀取命令時(shí),微處理器12通過I/O總線18傳遞地址和 命令數(shù)據(jù),然后通過I/O總線18接收讀取的數(shù)據(jù)。在一個實(shí)施例中,微處理器12從存儲器 器件4接收狀態(tài)信息22從而判斷其何時(shí)完成寫入/讀取操作。圖1的實(shí)施例中的存儲器器件4包括用于從接口電路16接收控制信號和命令數(shù) 據(jù)的控制器24。例如,命令數(shù)據(jù)可包括地址信息,用于將數(shù)據(jù)寫入到存儲器陣列6的特定存 儲段。寫入數(shù)據(jù)緩存在數(shù)據(jù)寄存器沈中,且當(dāng)控制器M接收刷新(flush)命令時(shí),控制器 24將緩存在數(shù)據(jù)寄存器沈中的數(shù)據(jù)傳遞到存儲器陣列6的目標(biāo)存儲段(頁)中。在一個實(shí)施例中,存儲器控制器8通過仿真主機(jī)系統(tǒng)可以使用標(biāo)準(zhǔn)磁盤驅(qū)動器通 信協(xié)議(如ATA協(xié)議)對其進(jìn)行存取的磁盤驅(qū)動器來實(shí)現(xiàn)固態(tài)驅(qū)動器(SSD)。此實(shí)施例中 的主機(jī)10可包括獨(dú)立的微處理器(如在臺式或膝上型計(jì)算機(jī)中),該處理器通過合適的接 口(如串行或并行ΑΤΑ)與SSD通信。在可替換實(shí)施例中,可以在消費(fèi)裝置中實(shí)現(xiàn)(如照相 機(jī)或移動電話)非易失性半導(dǎo)體存儲器2,其中主機(jī)10可實(shí)現(xiàn)為由用于實(shí)現(xiàn)存儲器控制器 8的相同微處理器12執(zhí)行的固件組件。在一個實(shí)施例中,存儲器器件4中的存儲器陣列6包括多個塊,其中每個塊包括多 個頁。在一個實(shí)施例中,頁必須在寫入之前被擦除。因此頁是通過將新數(shù)據(jù)寫入不同頁(通 常在不同塊中)、將LBA重映射到新PBA以及使舊頁無效的方式而被“重寫”。周期性地,塊 的無效頁在垃圾回收過程中通過將塊的有效頁復(fù)制到新塊,且然后擦除整個塊而被恢復(fù)。存儲器控制器8通過為每個區(qū)分配多個塊來定義多個區(qū),其中每個區(qū)存儲與順序 存取寫命令、隨機(jī)存取寫命令或系統(tǒng)存取寫命令相關(guān)聯(lián)的寫入數(shù)據(jù)或映射數(shù)據(jù),如圖2所 示。在一個實(shí)施例中,塊可以根據(jù)需要動態(tài)地分配給每個區(qū)。將寫入數(shù)據(jù)和映射數(shù)據(jù)隔離 到各個區(qū)內(nèi)有助于通過減少存儲有效和無效頁的塊數(shù)來減少每個區(qū)內(nèi)的垃圾回收量。也 就是,如果寫入數(shù)據(jù)和映射數(shù)據(jù)被隔離,則將增加區(qū)內(nèi)整個塊被重寫的可能性,以便無需重 新定位有效頁即可擦除塊。
該概念可參考圖3A-3D來理解,圖3A-3D示出根據(jù)本發(fā)明的實(shí)施例的基于頁的映 射方案。使用基于頁的映射,每個LBA可映射到任何塊內(nèi)任何頁的PBA。當(dāng)將具有映射到 第一塊的第一頁的第一 LBA的數(shù)據(jù)寫入到第二塊的第二頁時(shí),第一塊的有效頁沒有象基于 塊的映射那樣重新分配到第二塊。這在圖3A和;3B中進(jìn)行了圖示說明,其中在寫操作過程 中,寫入數(shù)據(jù)被寫入到第二塊的頁面中,并且第一塊中的相應(yīng)頁被無效。該過程在隨后寫操 作期間針對不同頁重復(fù),如圖3B和3C所示,直到第一塊的所有頁已經(jīng)被無效,如圖3D所 示。然后,第一塊被擦除,由此其可被重新分配,而無需重新部署任何有效頁(因?yàn)闆]有有 效頁)。在每個寫操作期間,LBA到PBA的映射被更新從而反映頁的重新部署或反映新LBA 的新頁的分配。此外,映射數(shù)據(jù)被周期性地寫入到存儲器器件4中,從而在發(fā)生電源故障的 情況下保存映射。在圖4A-4C所示的實(shí)施例中,大量寫命令的映射數(shù)據(jù)在寫入存儲器器件 4之前高速緩存在易失性存儲器中。例如,在一個實(shí)施例中,直到已經(jīng)執(zhí)行足夠的寫命令以 使用映射數(shù)據(jù)填滿整個頁時(shí),才將映射數(shù)據(jù)寫入到存儲器器件4。一旦已經(jīng)高速緩存一頁的 映射數(shù)據(jù),映射數(shù)據(jù)即被寫入存儲器陣列的一頁中。與一次寫入映射數(shù)據(jù)的部分頁相比,這 減少了對存儲器陣列(以及存儲器陣列的關(guān)聯(lián)碎片)執(zhí)行的寫操作的數(shù)量。圖5A示出本發(fā)明的實(shí)施例,其中全局LBA到PBA映射存儲在存儲器器件4中,并 在上電時(shí)被讀入存儲器控制器8的易失性存儲器中。當(dāng)存儲器控制器8執(zhí)行寫命令時(shí),易 失性存儲器中的全局映射被更新以反映LBA到PBA映射的變化。映射數(shù)據(jù)也存儲在與寫操 作類型(順序、隨機(jī)或系統(tǒng))對應(yīng)的寫日志中。之后,寫日志周期性地存儲到存儲器器件4 中,從而在電源故障的情況下保存映射數(shù)據(jù)。寫日志比全局映射小的多,且因此與將整個全 局映射保存到存儲器器件4相比,將寫日志保存到存儲器器件4中需要較少的時(shí)間并導(dǎo)致 更少的寫放大。如果發(fā)生電源故障,則從存儲器器件4讀取寫日志并且寫日志用于更新全 局映射。全局映射也周期性地被保存到存儲器器件4中,但頻率比寫日志低。圖5B示出存儲與順序存取寫命令關(guān)聯(lián)的映射數(shù)據(jù)的示例寫日志的部分。使用順 序存儲,LBA和對應(yīng)的PBA是連續(xù)的,且因此只有起始LBA與連續(xù)PBA(區(qū)和區(qū)內(nèi)頁號)一 起存儲(在圖5B的例子中LBA0)。在替換實(shí)施例中,起始PBA與運(yùn)行長度的PBA —起存儲, 這要求更少的存儲器空間。圖5C示出存儲與隨機(jī)存取寫命令或系統(tǒng)存取寫命令關(guān)聯(lián)的映 射數(shù)據(jù)的示例寫日志的部分。由于LBA到PBA的映射是隨機(jī)的,因此寫日志針對每個相應(yīng) 頁存儲LBA和PBA (區(qū)和區(qū)內(nèi)頁號)。圖5B和5C還示出,在一個實(shí)施例中,每個寫日志存儲 足夠的映射數(shù)據(jù)以填充一頁,其中一旦為填充寫日志而執(zhí)行了足夠的寫操作,就將寫日志 保存到存儲器器件4。圖6是根據(jù)本發(fā)明實(shí)施例的流程圖,其中當(dāng)非易失性半導(dǎo)體存儲器上電時(shí),全局 映射從存儲器器件中讀取到易失性存儲器中(步驟觀)。映射日志從存儲器器件讀取并且 在需要時(shí)用于更新全局映射(步驟30)。當(dāng)接收到寫命令時(shí)(步驟32),根據(jù)寫命令的類型 將寫入數(shù)據(jù)寫到目標(biāo)區(qū)。如果寫命令是順序存取寫命令,則用戶數(shù)據(jù)被寫到存儲器器件的 順序數(shù)據(jù)區(qū)(步驟34),并且順序映射數(shù)據(jù)被生成并存儲在順序?qū)懭罩局?步驟36)。如果 順序?qū)懭罩疽褲M(步驟38),則順序?qū)懭罩颈粚懭氪鎯ζ髌骷捻樞蛴成鋮^(qū),并且順序?qū)懭?志被清除以處理后續(xù)順序存取寫命令(步驟40)。如果寫命令是隨機(jī)存取寫命令,則用戶數(shù) 據(jù)被寫入存儲器器件的隨機(jī)數(shù)據(jù)區(qū)(步驟42),并且隨機(jī)映射數(shù)據(jù)被生成并存儲在隨機(jī)寫日志中(步驟44)。如果隨機(jī)寫日志已滿(步驟46),則隨機(jī)寫日志被寫入存儲器器件的隨 機(jī)映射區(qū),并且隨機(jī)寫日志被清除以處理后續(xù)隨機(jī)存取寫命令(步驟48)。如果寫命令是 系統(tǒng)存取寫命令,則系統(tǒng)數(shù)據(jù)被寫入存儲器器件的系統(tǒng)數(shù)據(jù)區(qū)(步驟50),并且系統(tǒng)映射數(shù) 據(jù)被生成并存儲在系統(tǒng)寫日志(步驟52)中。如果系統(tǒng)寫日志已滿(步驟M),則系統(tǒng)寫 日志被寫入存儲器器件的系統(tǒng)映射區(qū),并且系統(tǒng)寫日志被清除以處理后續(xù)系統(tǒng)存取寫命令 (步驟56)。在預(yù)定間隔后(步驟58),全局映射被寫入存儲器器件(步驟60),并且當(dāng)前存 儲在存儲器器件中的寫日志被無效(步驟62),因?yàn)樵诎l(fā)生電源故障的情況下,不再需要 當(dāng)前存儲在存儲器器件中的寫日志更新全局映射(直到更多寫命令被處理)。在系統(tǒng)存取寫命令期間被寫入到存儲器器件的系統(tǒng)數(shù)據(jù)可包括任何合適的系統(tǒng) 數(shù)據(jù)。例如,當(dāng)寫日志被寫入存儲器器件時(shí)(在圖6的步驟40、48和56),寫命令是系統(tǒng)存 取寫命令。寫日志被寫入到系統(tǒng)數(shù)據(jù)區(qū)并且相應(yīng)的映射數(shù)據(jù)存儲在系統(tǒng)寫日志中。可能 在正常操作過程中生成其他合適的系統(tǒng)數(shù)據(jù),如與垃圾回收或耗損平衡算法關(guān)聯(lián)的系統(tǒng)數(shù) 據(jù)。存儲器控制器8可以任何合適方式將寫命令標(biāo)識為順序的或隨機(jī)的。在一個實(shí)施 例中,從主機(jī)接收的寫命令可包括指定寫命令類型的標(biāo)識符。在另一個實(shí)施例中,新的寫命 令最初作為隨機(jī)存取寫命令處理,直到順序?qū)懨畹倪B續(xù)數(shù)目超過預(yù)定閾值。之后,后續(xù)寫 命令作為順序存取寫命令處理,直到連續(xù)序列中有中斷。
權(quán)利要求
1.一種非易失性半導(dǎo)體存儲器,其包括包括存儲器陣列的存儲器器件,該存儲器陣列包括多個存儲段;以及控制電路,其可操作用于定義多個區(qū),每個區(qū)包括多個所述存儲段;從主機(jī)接收多個順序存取寫命令以將順序數(shù)據(jù)寫入到所述存儲器器件,其中每個順序 存取寫命令標(biāo)識至少一個邏輯塊地址即LBA ;從所述主機(jī)接收多個隨機(jī)存取寫命令以將隨機(jī)數(shù)據(jù)寫入到所述存儲器器件中,其中每 個隨機(jī)存取寫命令標(biāo)識至少一個LBA ;映射所述順序存取寫命令的LBA到多個所述存儲段以生成順序映射數(shù)據(jù); 映射所述順序映射數(shù)據(jù)到所述區(qū)的第一區(qū);映射所述隨機(jī)存取寫命令的LBA到多個所述存儲段以生成隨機(jī)映射數(shù)據(jù);以及 映射所述隨機(jī)映射數(shù)據(jù)到所述區(qū)的第二區(qū)。
2.根據(jù)權(quán)利要求1所述的非易失性半導(dǎo)體存儲器,其中所述控制電路進(jìn)一步可操作用于生成多個系統(tǒng)存取寫命令以將系統(tǒng)數(shù)據(jù)寫入存儲器器件,其中每個系統(tǒng)存取寫命令標(biāo) 識至少一個LBA ;映射所述系統(tǒng)存取寫命令的LBA到多個所述存儲段以生成系統(tǒng)映射數(shù)據(jù);以及 映射所述系統(tǒng)映射數(shù)據(jù)到所述區(qū)的第三區(qū)。
3.根據(jù)權(quán)利要求2所述的非易失性半導(dǎo)體存儲器,其中 所述存儲段包括多個塊,每個塊包括多個頁;所述控制電路進(jìn)一步可操作為通過擦除整個塊來擦除頁; 所述第一區(qū)包括第一塊; 所述第二區(qū)包括第二塊;并且 所述第三區(qū)包括第三塊。
4.根據(jù)權(quán)利要求3所述的非易失性半導(dǎo)體存儲器,其中所述控制電路進(jìn)一步可操作用于在執(zhí)行多個所述順序存取寫命令后,寫入所述順序映射數(shù)據(jù)到所述第一區(qū); 在執(zhí)行多個所述隨機(jī)存取寫命令后,寫入所述隨機(jī)映射數(shù)據(jù)到所述第二區(qū); 在執(zhí)行多個所述系統(tǒng)存取寫命令后,寫入所述系統(tǒng)映射數(shù)據(jù)到所述第三區(qū)。
5.根據(jù)權(quán)利要求4所述的非易失性半導(dǎo)體存儲器,其中所述控制電路進(jìn)一步可操作為 擦除所述第一、第二和第三區(qū)之一中的第一塊,而不將所述第一塊的有效頁重新部署到第 二塊。
6.一種非易失性半導(dǎo)體存儲器,其包括包括存儲器陣列的存儲器器件,所述存儲器陣列包括多個塊,每個塊包括多個頁;以及控制電路,其可操作用于定義多個區(qū),每個區(qū)包括多個所述存儲段;從主機(jī)接收多個順序存取寫命令以將順序數(shù)據(jù)寫到所述存儲器器件,其中每個順序存取寫命令標(biāo)識至少一個邏輯塊地址即LBA ;從所述主機(jī)接收多個隨機(jī)存取寫命令以將隨機(jī)數(shù)據(jù)寫到所述存儲器器件,其中每個隨機(jī)存取寫命令標(biāo)識至少一個LBA ; 映射所述順序存取寫命令的LBA到所述區(qū)的第一區(qū); 映射所述隨機(jī)存取寫命令的LBA到所述區(qū)的第二區(qū);以及 通過如下操作執(zhí)行寫命令寫入具有映射到第一塊的第一頁的第一 LBA的數(shù)據(jù)到第二塊的第二頁,而不將所述第 一塊的有效頁重新部署到所述第二塊;以及映射所述第一 LBA到所述第二塊的所述第二頁。
7.根據(jù)權(quán)利要求6所述的非易失性半導(dǎo)體存儲器,其中所述控制電路進(jìn)一步可操作用于生成多個系統(tǒng)存取寫命令以將系統(tǒng)數(shù)據(jù)寫入所述存儲器器件,其中每個系統(tǒng)存取寫命 令標(biāo)識至少一個LBA;以及映射所述系統(tǒng)存取寫命令的LBA到所述區(qū)的第三區(qū)。
8.根據(jù)權(quán)利要求7所述的非易失性半導(dǎo)體存儲器,其中 所述控制電路進(jìn)一步可操作為通過擦除整個塊來擦除一頁; 所述第一區(qū)包括第一塊;所述第二區(qū)包括第二塊;并且 所述第三區(qū)包括第三塊。
9.根據(jù)權(quán)利要求8所述的非易失性半導(dǎo)體存儲器,其中所述控制電路進(jìn)一步可操作為 擦除所述第一、第二和第三區(qū)之一中的第一塊,而不將所述第一塊的有效頁重新部署到第二塊。
10.一種操作包括存儲器器件的非易失性半導(dǎo)體存儲器的方法,所述存儲器器件包括 存儲器陣列,所述存儲器陣列包括多個存儲段,所述方法包括定義多個區(qū),每個區(qū)包括多個所述存儲段;從主機(jī)接收多個順序存取寫命令以將順序數(shù)據(jù)寫入所述存儲器器件,其中每個順序存 取寫命令標(biāo)識至少一個邏輯塊地址即LBA ;從所述主機(jī)接收多個隨機(jī)存取寫命令以將隨機(jī)數(shù)據(jù)寫入所述存儲器器件,其中每個隨 機(jī)存取寫命令標(biāo)識至少一個LBA ;映射所述順序存取寫命令的LBA到多個所述存儲段以生成順序映射數(shù)據(jù); 映射所述順序映射數(shù)據(jù)到所述區(qū)的第一區(qū);映射所述隨機(jī)存取寫命令的LBA到多個所述存儲段以生成隨機(jī)映射數(shù)據(jù);以及 映射所述隨機(jī)映射數(shù)據(jù)到所述區(qū)的第二區(qū)。
11.根據(jù)權(quán)利要求10所述的方法,進(jìn)一步包括生成多個系統(tǒng)存取寫命令以將系統(tǒng)數(shù)據(jù)寫入所述存儲器器件,其中每個系統(tǒng)存取寫命 令標(biāo)識至少一個LBA ;映射所述系統(tǒng)存取寫命令的LBA到多個所述存儲段以生成系統(tǒng)映射數(shù)據(jù);以及 映射所述系統(tǒng)映射數(shù)據(jù)到所述區(qū)的第三區(qū)。
12.根據(jù)權(quán)利要求11所述的方法,其中 所述存儲器段包括多個塊,每個塊包括多個頁; 頁是通過擦除整個塊而被擦除的;所述第一區(qū)包括第一塊; 所述第二區(qū)包括第二塊;并且 所述第三區(qū)包括第三塊。
13.根據(jù)權(quán)利要求12所述的方法,進(jìn)一步包括在執(zhí)行多個所述順序存取寫命令后,寫入所述順序映射數(shù)據(jù)到所述第一區(qū); 在執(zhí)行多個所述隨機(jī)存取寫命令后,寫入所述隨機(jī)映射數(shù)據(jù)到所述第二區(qū);以及 在執(zhí)行多個所述系統(tǒng)存取寫命令后,寫入所述系統(tǒng)映射數(shù)據(jù)到所述第三區(qū)。
14.根據(jù)權(quán)利要求13所述的方法,進(jìn)一步包括擦除所述第一、第二和第三區(qū)之一的第 一塊,而不將所述第一塊的有效頁重新部署到第二塊。
15.一種操作包括存儲器器件的非易失性半導(dǎo)體存儲器的方法,所述存儲器器件包括 存儲器陣列,所述存儲器陣列包括多個塊,每個塊包括多個頁,所述方法包括定義多個區(qū),每個區(qū)包括多個存儲段;從主機(jī)接收多個順序存取寫命令以將順序數(shù)據(jù)寫入所述存儲器器件,其中每個順序存 取寫命令標(biāo)識至少一個邏輯塊地址即LBA ;從所述主機(jī)接收多個隨機(jī)存取寫命令以將隨機(jī)數(shù)據(jù)寫入所述存儲器器件,其中每個隨 機(jī)存取寫命令標(biāo)識至少一個LBA ;映射所述順序存取寫命令的LBA到所述區(qū)的第一區(qū); 映射所述隨機(jī)存取寫命令的LBA到所述區(qū)的第二區(qū);以及 通過如下操作執(zhí)行寫命令寫入具有被映射到第一塊的第一頁的第一 LBA的數(shù)據(jù)到第二塊的第二頁,而不將所述 第一塊的有效頁重新部署到所述第二塊;以及映射所述第一 LBA到所述第二塊的所述第二頁。
16.根據(jù)權(quán)利要求15所述的方法,進(jìn)一步包括生成多個系統(tǒng)存取寫命令以將系統(tǒng)數(shù)據(jù)寫入所述存儲器器件,其中每個系統(tǒng)存取寫命 令標(biāo)識至少一個LBA;以及映射所述系統(tǒng)存取寫命令的LBA到所述區(qū)的第三區(qū)。
17.根據(jù)權(quán)利要求16所述的方法,其中 通過擦除整個塊而擦除頁所述第一區(qū)包括第一塊; 所述第二區(qū)包括第二塊;以及 所述第三區(qū)包括第三塊。
18.根據(jù)權(quán)利要求17所述的方法,進(jìn)一步包括擦除所述第一、第二和第三區(qū)之一的第 一塊,而不將所述第一塊的有效頁重新部署到第二塊。
全文摘要
一種隔離順序、隨機(jī)和系統(tǒng)數(shù)據(jù)以減少垃圾回收的針對基于頁映射的非易失性半導(dǎo)體存儲器。本發(fā)明公開了一種非易失性半導(dǎo)體存儲器,其包括具有存儲器陣列的存儲器器件,該存儲器陣列包括多個存儲段。從主機(jī)接收多個順序存取寫命令和隨機(jī)存取寫命令,其中每個寫命令標(biāo)識至少一個邏輯塊地址。順序存取寫命令的邏輯塊地址映射到多個存儲段以生成順序映射數(shù)據(jù),且順序映射數(shù)據(jù)映射到多個區(qū)的第一區(qū)。隨機(jī)存取寫命令的邏輯塊地址被映射到多個存儲段以生成隨機(jī)映射數(shù)據(jù),并且隨機(jī)映射數(shù)據(jù)映射到多個區(qū)的第二區(qū)。
文檔編號G11C16/06GK102054533SQ20101052640
公開日2011年5月11日 申請日期2010年10月27日 優(yōu)先權(quán)日2009年10月27日
發(fā)明者M-M·蘇 申請人:西部數(shù)據(jù)技術(shù)公司