專利名稱:存儲(chǔ)器系統(tǒng)中的數(shù)據(jù)再定位的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及半導(dǎo)體非易失性數(shù)據(jù)存儲(chǔ)系統(tǒng)架構(gòu)及其操作方法的領(lǐng)域,且可應(yīng)用于基 于快閃電子可擦可編程只讀存儲(chǔ)器(EEPROM)的數(shù)據(jù)存儲(chǔ)系統(tǒng)和其它類型的存儲(chǔ)器系 統(tǒng)。
背景技術(shù):
快閃EEPROM裝置的普通應(yīng)用是作為用于電子裝置的大容量數(shù)據(jù)存儲(chǔ)子系統(tǒng)。所述 子系統(tǒng)通常實(shí)施為可插入多個(gè)主機(jī)系統(tǒng)中的抽取式存儲(chǔ)器卡或在主機(jī)系統(tǒng)中的非抽取式 嵌入存儲(chǔ)裝置。在這兩個(gè)實(shí)施方案中,所述子系統(tǒng)包括一個(gè)或一個(gè)以上快閃裝置和(通 常) 一子系統(tǒng)控制器??扉WEEPROM裝置包含晶體管單元的一個(gè)或一個(gè)以上陣列,每一單元能夠非易失性 地存儲(chǔ)一個(gè)或一個(gè)以上數(shù)據(jù)位。因此,快閃存儲(chǔ)器不需要電力來(lái)保留編程于其中的數(shù)據(jù)。 然而, 一旦已被編程,就必須在單元可以新數(shù)據(jù)值重新編程之前擦除所述單元。將單元 的這些陣列分割成群組以提供讀取、編程和擦除功能的有效實(shí)施。用于大容量存儲(chǔ)裝置 的典型快閃存儲(chǔ)器架構(gòu)將大的單元群組配置成可擦除區(qū)塊,其中一區(qū)塊含有可一次擦除 的最小數(shù)目的單元(擦除單位)。在一種商業(yè)形式中,每一區(qū)塊含有足夠的單元以存儲(chǔ)一個(gè)扇區(qū)的用戶數(shù)據(jù)加上一些 關(guān)于用戶數(shù)據(jù)和/或關(guān)于其被存儲(chǔ)的區(qū)塊的額外開(kāi)銷數(shù)據(jù)。在所述存儲(chǔ)器系統(tǒng)的一個(gè)種類 中,包括在扇區(qū)中的用戶數(shù)據(jù)的量是標(biāo)準(zhǔn)的512字節(jié),但可以是某一其它大小。因?yàn)槭?單元的區(qū)塊可個(gè)別地擦除所需的對(duì)所述個(gè)別單元區(qū)塊彼此間的隔離在集成電路芯片上占 據(jù)了空間,所以另一種類的快閃存儲(chǔ)器使得所述區(qū)塊顯著更大,以使得所述隔離要求較 少空間。但因?yàn)檫€需要在更小的扇區(qū)中處理用戶數(shù)據(jù),所以每一大區(qū)塊經(jīng)常進(jìn)一步分割 成為可個(gè)別尋址的頁(yè),其為用于讀取和編程用戶數(shù)據(jù)的基本單位;盡管寫入頁(yè)的大小不 需要與讀取頁(yè)的大小相同,但下文中將其看待為相同的以便簡(jiǎn)化論述。每一頁(yè)通常存儲(chǔ) 用戶數(shù)據(jù)的一個(gè)扇區(qū),但一頁(yè)可存儲(chǔ)一部分扇區(qū)或多個(gè)扇區(qū)。"扇區(qū)"在本文中用來(lái)指稱 作為單位傳輸?shù)街鳈C(jī)和從主機(jī)傳輸?shù)挠脩魯?shù)據(jù)的量。大區(qū)塊系統(tǒng)中的子系統(tǒng)控制器執(zhí)行許多功能,其包括在由存儲(chǔ)器子系統(tǒng)從主機(jī)接收 的邏輯地址(LBA)與在存儲(chǔ)器單元陣列中的實(shí)體區(qū)塊號(hào)(PBN)和頁(yè)地址之間的轉(zhuǎn)譯。
此轉(zhuǎn)譯經(jīng)常涉及使用邏輯區(qū)塊號(hào)(LBN)和邏輯頁(yè)的中間項(xiàng)。所述控制器還通過(guò)一系列 其經(jīng)由接口總線發(fā)布給快閃存儲(chǔ)器裝置的命令來(lái)管理低層級(jí)快閃電路操作。所述控制器 執(zhí)行的另一功能是通過(guò)各種方式,例如通過(guò)使用誤差校正碼(ECC)來(lái)維持存儲(chǔ)到子系 統(tǒng)的數(shù)據(jù)的完整性。圖1展示快閃存儲(chǔ)器裝置131的典型內(nèi)部架構(gòu)。主要特征包括用以介接到外部控制 器的輸入/輸出(I/O)總線411和控制信號(hào)412,用以控制內(nèi)部存儲(chǔ)器操作的具有用于命 令、地址和狀態(tài)信號(hào)的寄存器的存儲(chǔ)器控制電路450。包括快閃EEPROM單元的一個(gè)或 一個(gè)以上陣列400,每一陣列具有其自身的行解碼器(XDEC) 401和列解碼器(YDEC) 402, —組讀出放大器和編程控制電路(SA/PROG) 454和數(shù)據(jù)寄存器404。目前,存儲(chǔ) 器單元通常包括作為存儲(chǔ)元件的一個(gè)或一個(gè)以上傳導(dǎo)性浮動(dòng)?xùn)艠O,但可改為使用其它長(zhǎng) 期電子電荷存儲(chǔ)元件。所述存儲(chǔ)器單元陣列可以為每一存儲(chǔ)元件定義的兩個(gè)電荷電平來(lái) 操作,因此每一元件存儲(chǔ)一個(gè)數(shù)據(jù)位?;蛘?,可為每一存儲(chǔ)元件定義兩個(gè)以上的存儲(chǔ)狀 態(tài),在此種情況下,在每一元件中存儲(chǔ)一個(gè)以上數(shù)據(jù)位。必要時(shí),提供多個(gè)陣列400,以及相關(guān)的X解碼器、Y解碼器、編程/核對(duì)電路、數(shù) 據(jù)寄存器和類似物,例如1999年3月30日頒予的并轉(zhuǎn)讓給本申請(qǐng)案的受讓人SanDisk 公司的美國(guó)專利5,890,192所教示,所述專利以引用的方式并入本文中。相關(guān)的存儲(chǔ)器系 統(tǒng)特征描述于2002年7月30日頒予的并轉(zhuǎn)讓給本申請(qǐng)案的受讓人SanDisk公司的美國(guó) 專利6,426,893中,所述申請(qǐng)案也明確地以引用的方式并入本文中。這些專利描述在單一 存儲(chǔ)器芯片上具有稱為平面或"四邊形(quad)"的多個(gè)半自治陣列。外部接口 I/O總線411和控制信號(hào)412可包括以下各項(xiàng)CE-芯片啟用 用于啟動(dòng)快閃存儲(chǔ)器接口。RE-讀取啟用 用于指示I/0總線正用于從存儲(chǔ)器陣列傳輸數(shù)據(jù)。WE-寫入啟用 用于指示I/0總線正用于將數(shù)據(jù)傳輸?shù)酱鎯?chǔ)器降列。 ALE-地址鎖存啟用 用于指示I/O總線正用于傳輸?shù)刂沸畔?。CLE-命令鎖存啟用 用于指示I/O總線正用于傳輸命令信息。10[7:0]-地址/數(shù)據(jù)總線此I/O總線用于在控制器與存儲(chǔ)器控制450的快閃存儲(chǔ)器命令、地址和數(shù)據(jù)寄存器之間傳輸數(shù)據(jù)。除了這些信號(hào)外,所述存儲(chǔ)器通常還具有存儲(chǔ)子系統(tǒng)控制器可借以確定存儲(chǔ)器正忙于執(zhí)行某一任務(wù)的構(gòu)件。所述構(gòu)件可包括專用信號(hào)或當(dāng)存儲(chǔ)器正忙時(shí)可存取的內(nèi)部存儲(chǔ)器寄存器中的狀態(tài)位。 此接口僅作為實(shí)例而給出,因?yàn)榭墒褂闷渌盘?hào)配置來(lái)提供相同的功能性。圖l僅 展示一個(gè)具有其相關(guān)組件的快閃存儲(chǔ)器陣列400,但多個(gè)所述陣列可存在于單一快閃存 儲(chǔ)器芯片上,所述陣列共享共同接口和存儲(chǔ)器控制電路但具有單獨(dú)的XDEC401、 YDEC 402、 SA/PROG454和數(shù)據(jù)寄存器(DATAREG) 404電路以便允許并行讀取和編程操作。 更一般化地,可存在一個(gè)或兩個(gè)額外的所述數(shù)據(jù)寄存器,其通常配置成在第6,560,143號(hào) 美國(guó)專利中進(jìn)一步發(fā)展的那種主從配置,所述專利以引用的方式并入本文中。經(jīng)由數(shù)據(jù)寄存器404,經(jīng)由數(shù)據(jù)寄存器到I/O總線IO[7:0] 411的耦合,將數(shù)據(jù)從存 儲(chǔ)器陣列傳輸?shù)酵獠靠刂破鳌?shù)據(jù)寄存器404還耦合到讀出放大器/編程電路454。耦合 到每一讀出放大器/編程電路元件的數(shù)據(jù)寄存器的元件的數(shù)目可取決于在存儲(chǔ)器單元、快 閃EEPROM單元中的每一存儲(chǔ)元件中所存儲(chǔ)的位的數(shù)目,所述單元各含有一個(gè)或一個(gè)以 上作為存儲(chǔ)元件的浮動(dòng)?xùn)艠O。如果存儲(chǔ)器單元以多狀態(tài)模式操作,那么每一存儲(chǔ)元件可 存儲(chǔ)多個(gè)位,例如2或4?;蛘?,存儲(chǔ)器單元可以二元模式(binary mode)操作以使得 每一存儲(chǔ)元件存儲(chǔ)一個(gè)數(shù)據(jù)位。列解碼器401解碼陣列400的行地址以便選擇待存取的實(shí)體頁(yè)。行解碼器401經(jīng)由 內(nèi)部行地址線419從存儲(chǔ)器控制邏輯450接收行地址。列解碼器402經(jīng)由內(nèi)部列地址線 429從存儲(chǔ)器控制邏輯450接收列地址。圖2展示典型非易失性數(shù)據(jù)存儲(chǔ)系統(tǒng)的架構(gòu),在此種情況下采用快閃存儲(chǔ)器單元作 為存儲(chǔ)媒體。在一種形式中,將此系統(tǒng)封裝在具有沿著一側(cè)延伸的電連接器的抽取式卡 中,以當(dāng)插入主機(jī)的插孔中時(shí)提供主機(jī)接口?;蛘?,可將圖2的系統(tǒng)以永久安裝的嵌入 電路或另外的形式嵌入主機(jī)系統(tǒng)中。所述系統(tǒng)使用執(zhí)行高級(jí)主機(jī)和存儲(chǔ)器控制功能的單 一控制器101??扉W存儲(chǔ)器媒體由一個(gè)或一個(gè)以上快閃存儲(chǔ)器裝置組成,每一所述裝置 通常在其自身的集成電路芯片上形成。系統(tǒng)控制器和快閃存儲(chǔ)器由總線121連接,所述 總線121允許控制器101載入命令、地址,并將數(shù)據(jù)傳輸?shù)娇扉W存儲(chǔ)器陣列和從所述快 閃存儲(chǔ)器陣列傳輸數(shù)據(jù)。(總線121包括圖1的412和411。)控制器101與主機(jī)系統(tǒng)(未 圖示)介接,快閃存儲(chǔ)器陣列與所述主機(jī)系統(tǒng)進(jìn)行用戶數(shù)據(jù)的來(lái)往傳輸。在圖2的系統(tǒng) 包括在卡中的情況下,主機(jī)接口包括在所述卡和主機(jī)設(shè)備上的相配的插頭和插座組合件 (未圖示)。控制器101從主機(jī)接收讀取或?qū)懭朐谔囟ㄟ壿嫷刂诽庨_(kāi)始的用戶數(shù)據(jù)的一個(gè)或一個(gè) 以上扇區(qū)的命令。此地址可與或可不與存儲(chǔ)器單元的區(qū)塊中的第一實(shí)體頁(yè)對(duì)準(zhǔn)。在一些具有劃分成多個(gè)頁(yè)的大容量存儲(chǔ)器單元區(qū)塊的現(xiàn)有技術(shù)系統(tǒng)中,需要將來(lái)自 未經(jīng)更新的區(qū)塊的數(shù)據(jù)從原始區(qū)塊復(fù)制到也含有由主機(jī)寫入的新的、經(jīng)更新的數(shù)據(jù)的新 區(qū)塊。在其它現(xiàn)有技術(shù)系統(tǒng)中,將旗標(biāo)與用戶數(shù)據(jù)一起記錄在頁(yè)中,且所述旗標(biāo)用于指 示由新寫入的數(shù)據(jù)所替代的原始區(qū)塊中的數(shù)據(jù)頁(yè)是無(wú)效的。第6,763,424號(hào)美國(guó)專利中描 述了一種機(jī)制,通過(guò)所述機(jī)制可寫入部分地替代存儲(chǔ)在現(xiàn)有區(qū)塊中的數(shù)據(jù)的數(shù)據(jù),而無(wú) 須復(fù)制來(lái)自現(xiàn)有區(qū)塊的未改變的數(shù)據(jù)或編程先前已編程的頁(yè)的旗標(biāo),所述申請(qǐng)案以引用 的方式明確地并入本文中。此類型的非易失性存儲(chǔ)器系統(tǒng)正用于許多應(yīng)用中,尤其是當(dāng)封裝在與主機(jī)系統(tǒng)可抽 取地連接的封閉卡中時(shí)。目前商用存儲(chǔ)器卡格式包括個(gè)人計(jì)算機(jī)存儲(chǔ)器卡國(guó)際協(xié)會(huì) (Personal Computer Memory Card International Association, PCMCIA )、 壓縮快閃 (CompactFlash, CF)、多媒體卡(MuI鐘ediaCard、 MMC)和安全數(shù)字(Secure Digital、 SD)。其它系統(tǒng)包括USB裝置,例如包括具有兩組接點(diǎn)的卡的存儲(chǔ)器卡,例如美國(guó)專利 申請(qǐng)案10/826,801和美國(guó)專利申請(qǐng)案US 10/826,796中描述的那些存儲(chǔ)器卡,所述兩個(gè)專 利申請(qǐng)案均于2004年4月16日申請(qǐng),且以引用的方式并入本文中。這些卡的一個(gè)供應(yīng) 商是本申請(qǐng)案的受讓人SanDisk公司。與所述卡一起使用的主機(jī)系統(tǒng)包括個(gè)人計(jì)算機(jī)、 筆記本計(jì)算機(jī)、手持式計(jì)算裝置、相機(jī)、音頻重現(xiàn)裝置,及其類似物??扉WEEPROM系 統(tǒng)也用作嵌入在主機(jī)系統(tǒng)中的大容量存儲(chǔ)裝置(bulk mass storage )。所述非易失性存儲(chǔ)器系統(tǒng)包括浮動(dòng)?xùn)艠O存儲(chǔ)器單元的一個(gè)或一個(gè)以上陣列和一系統(tǒng) 控制器。所述控制器管理與主機(jī)系統(tǒng)的通信和存儲(chǔ)器單元陣列的操作以存儲(chǔ)和檢索用戶 數(shù)據(jù)。將存儲(chǔ)器單元一起分組成單元區(qū)塊,單元區(qū)塊是可同時(shí)擦除的單元的最小分組。 將數(shù)據(jù)寫入到一個(gè)或一個(gè)以上單元區(qū)塊之前,擦除那些單元區(qū)塊。通常在主機(jī)與存儲(chǔ)器 陣列之間以扇區(qū)來(lái)傳輸用戶數(shù)據(jù)。用戶數(shù)據(jù)的扇區(qū)可以是便于處理的任何量,優(yōu)選地小 于存儲(chǔ)器區(qū)塊的容量,通常等于標(biāo)準(zhǔn)磁盤驅(qū)動(dòng)器扇區(qū)大小,512字節(jié)。在一種商用架構(gòu) 中,存儲(chǔ)器系統(tǒng)區(qū)塊的大小被設(shè)定以存儲(chǔ)用戶數(shù)據(jù)的一個(gè)扇區(qū)加上額外開(kāi)銷數(shù)據(jù),所述 額外開(kāi)銷數(shù)據(jù)包括例如用于存儲(chǔ)在區(qū)塊中的用戶數(shù)據(jù)的誤差校正碼(ECC)、區(qū)塊的使用 歷史、存儲(chǔ)器單元區(qū)塊的缺陷和其它實(shí)體信息的信息。轉(zhuǎn)讓給SanDisk公司的下列美國(guó) 專利和待決的申請(qǐng)案中描述了此類型的非易失性存儲(chǔ)器系統(tǒng)的各種實(shí)施方案,所述專利 和申請(qǐng)案的每一者全文以引用的方式并入本文中第5,172,338、 5,602,987、 5,315,541、 5,200,959、 5,270,979、 5,428,621、 5,663,901、 5,532,962、 5,430,859和5,712,180號(hào)專利, 以及1997年8月7日申請(qǐng)的第08/910,947號(hào)申請(qǐng)案和1999年6月30日申請(qǐng)的第 09/343,328號(hào)申請(qǐng)案。另一類型的非易失性存儲(chǔ)器系統(tǒng)使用存儲(chǔ)用戶數(shù)據(jù)的多個(gè)扇區(qū)的
更大的存儲(chǔ)器單元區(qū)塊大小。存儲(chǔ)器單元陣列的一種架構(gòu)方便地由在子陣列或單元的其它單位中且共享共同擦除柵極的一行或兩行存儲(chǔ)器單元來(lái)形成區(qū)塊。SanDisk公司的第5,677,872號(hào)和第5,712,179 號(hào)美國(guó)專利給出此架構(gòu)的實(shí)例,所述專利全文并入本文中。盡管目前最普遍的是通過(guò)僅 定義兩個(gè)經(jīng)編程的閾值電平來(lái)在每一浮動(dòng)?xùn)艠O單元中存儲(chǔ)一個(gè)數(shù)據(jù)位,但趨勢(shì)是通過(guò)建 立兩個(gè)以上的浮動(dòng)?xùn)艠O晶體管閾值范圍來(lái)在每一單元中存儲(chǔ)一個(gè)以上數(shù)據(jù)位。每浮動(dòng)?xùn)?極存儲(chǔ)兩個(gè)數(shù)據(jù)位(四個(gè)閾值電平范圍或狀態(tài))的存儲(chǔ)器系統(tǒng)目前是可用的,對(duì)于將來(lái) 的系統(tǒng)已構(gòu)想每單元三個(gè)位(八個(gè)閾值電平范圍或狀態(tài))和每單元四個(gè)位(十六個(gè)閾值 電平范圍)。當(dāng)然,存儲(chǔ)數(shù)據(jù)的扇區(qū)所需的存儲(chǔ)器單元的數(shù)目隨著在每一單元中存儲(chǔ)的位 的數(shù)目上升而下降。結(jié)合由單元結(jié)構(gòu)和一般半導(dǎo)體處理的改進(jìn)所導(dǎo)致的陣列的縮放 (scaling),此趨勢(shì)使在一行單元的分段部分中形成存儲(chǔ)器單元區(qū)塊變得可行。如在 SanDisk公司的第5,930,167號(hào)美國(guó)專利中描述,也可形成區(qū)塊結(jié)構(gòu)以使得能夠在兩個(gè)狀 態(tài)(每一單元一個(gè)數(shù)據(jù)位)或在某多個(gè)(例如,四個(gè))狀態(tài)(每一單元兩個(gè)數(shù)據(jù)位)中 選擇存儲(chǔ)器單元的每一者的操作,所述專利全文以引用的方式并入本文中。除了增加所述非易失性存儲(chǔ)器的容量外,還在尋求通過(guò)增加其性能和減少其對(duì)誤差 的敏感度來(lái)改進(jìn)所述存儲(chǔ)器。例如上述的使用大區(qū)塊管理技術(shù)的存儲(chǔ)器的存儲(chǔ)器對(duì)存儲(chǔ) 器的文件系統(tǒng)執(zhí)行許多數(shù)據(jù)管理技術(shù),包括無(wú)用數(shù)據(jù)收集,以便更有效地使用存儲(chǔ)器區(qū) 域。所述無(wú)用數(shù)據(jù)收集方案涉及包括從存儲(chǔ)器中的一個(gè)(或多個(gè))位置讀取數(shù)據(jù)和將其 重寫到另一存儲(chǔ)器位置的數(shù)據(jù)再定位過(guò)程。(除了以上并入的參考案中的許多參考案外, 無(wú)用數(shù)據(jù)收集進(jìn)一步論述于,例如,2002年11月第37巻第11期的正EE Journal of Solid-State Circuits第1493-1501頁(yè),K. Imamiya等人的"A 125-mm2 1-Gb NAND Flash Memory With 10-MByte/s Program Speed"中,其全文以引用的方式并入本文中。)此數(shù)據(jù) 再定位時(shí)間是對(duì)所有無(wú)用數(shù)據(jù)收集例行程序的主要影響因素。現(xiàn)有技術(shù)的方法將數(shù)據(jù)再 定位操作描述為在將數(shù)據(jù)寫入到新位置之前連續(xù)的數(shù)據(jù)讀取,接著是(如果必要)數(shù)據(jù) 完整性檢査和誤差校正,使得存在數(shù)據(jù)傳輸和驗(yàn)證的較大的恒定性能損失。在有數(shù)據(jù)誤 差的情況中,在寫入前必須花費(fèi)額外的時(shí)間來(lái)校正數(shù)據(jù)。其它現(xiàn)有技術(shù)的方法利用芯片上復(fù)制特征,將數(shù)據(jù)從一個(gè)位置寫入到另一位置而不 預(yù)檢査數(shù)據(jù)完整性。所述方法描述于,例如,2002年11月第37巻第11期的IEEE Journal of Solid-State Circuits第1502-1509頁(yè),J. Lee等人的"High Performance 1-Gb NAND Flash Memory With 0.12jim Technology"中,其全文以引用的方式并入本文中。完整性檢查與
數(shù)據(jù)寫入同時(shí)進(jìn)行,使得在有誤差的情況中,必須損失大量性能和中斷時(shí)間/等待時(shí)間以 重寫整個(gè)區(qū)塊的機(jī)率很高。特定芯片上復(fù)制機(jī)制展示于圖3中,且在第6,266,273號(hào)美國(guó)專利中更詳細(xì)地提出, 所述專利以引用的方式并入本文中。如在圖3中由步驟(1)所指示,將數(shù)據(jù)集,例如頁(yè), 從源位置讀取到讀取/編程從數(shù)據(jù)寄存器(slave data register)。圖3中展示的架構(gòu)為其數(shù) 據(jù)寄存器使用主從配置,且數(shù)據(jù)集的所讀取的副本在步驟(2)中傳輸?shù)街骷拇嫫?master register)。在步驟(3)中,經(jīng)復(fù)制的數(shù)據(jù)集隨后被再定位到目的地位置,同時(shí)從主數(shù)據(jù) 寄存器將其傳輸?shù)娇刂破?。此技術(shù)允許芯片上再定位,同時(shí)還將數(shù)據(jù)的副本傳輸?shù)娇蓹z 查所述數(shù)據(jù)副本的控制器。根據(jù)現(xiàn)有技術(shù),有時(shí),當(dāng)快閃存儲(chǔ)器媒體管理算法需要在快閃存儲(chǔ)器陣列中將數(shù)據(jù) 從一個(gè)位置復(fù)制到另一位置時(shí),存在兩種用于達(dá)成此目的的基本方法。第一種方法是從 所述陣列將數(shù)據(jù)讀取到緩沖器,在編程前將數(shù)據(jù)傳輸?shù)娇刂破鞑㈦S后從控制器傳輸回到 快閃存儲(chǔ)器中的新位置。第二種方法是從陣列將數(shù)據(jù)讀取到緩沖器并隨后直接編程回到 新陣列位置中。所述第二種方法稱為芯片上復(fù)制。所述第二種方法提供較短的復(fù)制時(shí)間,因?yàn)闆](méi)有從控制器向快閃存儲(chǔ)器的傳輸。在 讀取與編程的并行度較高的情況下,差異可能較顯著。然而,所述性能是以靈活性的損 失為代價(jià)的。芯片上復(fù)制機(jī)制目前將操作限制于平面內(nèi)的復(fù)制,使得不可能在兩個(gè)不同 芯片或在同一芯片上的兩個(gè)不同平面之間傳輸數(shù)據(jù)。這意味著必須組織數(shù)據(jù)使得其將始 終在同一芯片的同一平面中的兩個(gè)位置之間復(fù)制,或必須使用單獨(dú)的讀取和寫入。后一 種方法導(dǎo)致性能根據(jù)數(shù)據(jù)的來(lái)源和目標(biāo)的位置而改變。在控制器中需要潛在大量的緩沖 以允許在快閃芯片中進(jìn)行并行操作。因此,如果可延伸數(shù)據(jù)再定位操作以允許在不同平面或芯片之間再定位而無(wú)需在控 制器中緩沖數(shù)據(jù),那么可大大改進(jìn)所述存儲(chǔ)器系統(tǒng)的操作。對(duì)于依賴于所述無(wú)用數(shù)據(jù)收 集操作對(duì)存儲(chǔ)器的管理提出較高要求的大區(qū)塊數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)器系統(tǒng)來(lái)說(shuō)尤其如此。 發(fā)明內(nèi)容根據(jù)本發(fā)明的一個(gè)主要方面,簡(jiǎn)要地且大體上來(lái)說(shuō),延伸芯片上復(fù)制過(guò)程以使得可 在可能位于不同芯片上、在同一芯片上的不同平面上,或同一芯片的同一平面上的兩個(gè) 區(qū)塊之間復(fù)制數(shù)據(jù)。更具體來(lái)說(shuō),此處描述的方法提供一種允許在存儲(chǔ)器系統(tǒng)中的任何 兩個(gè)位置之間復(fù)制數(shù)據(jù)的單一數(shù)據(jù)復(fù)制機(jī)制。復(fù)制的性能與通常實(shí)施的傳統(tǒng)芯片上復(fù)制 的性能相同。通過(guò)移除對(duì)數(shù)據(jù)位置的限制,可產(chǎn)生減小復(fù)制數(shù)據(jù)的頻率的算法操作上的改進(jìn)。更具體來(lái)說(shuō),本發(fā)明將芯片上復(fù)制延伸到芯片到芯片復(fù)制和在同一芯片上的陣列之 間復(fù)制,而無(wú)須將再定位的數(shù)據(jù)集臨時(shí)存儲(chǔ)在控制器中。所描述的方法可用于在共同數(shù) 據(jù)總線上的陣列之間復(fù)制,以及用于通過(guò)不同數(shù)據(jù)總線將陣列連接到系統(tǒng)控制器的拓?fù)?結(jié)構(gòu)中。在特定的多總線實(shí)施例中,在控制器中在源陣列的總線與目的地陣列的總線之 間每次一字地傳輸再定位的數(shù)據(jù)集。提出一組統(tǒng)一命令以涵蓋所有所述所描述的情況。 示范性實(shí)施例使用EDO型時(shí)序。根據(jù)本發(fā)明的另一方面,再定位的數(shù)據(jù)的選定部分,例如所傳輸?shù)捻?yè)中的選定的字, 可在運(yùn)行中在控制器中加以更新。舉例來(lái)說(shuō),這可用于更新頁(yè)的標(biāo)頭部分,作為所述再 定位過(guò)程的一部分。除了將數(shù)據(jù)集從源陣列的讀取緩沖器直接傳輸?shù)侥康牡仃嚵械膶懭?緩沖器外,必要時(shí),還可同時(shí)將數(shù)據(jù)集復(fù)制到控制器中,在所述控制器中可對(duì)所述數(shù)據(jù) 集執(zhí)行誤差檢測(cè)和校正操作。在示范性實(shí)施例中,從源緩沖器每次一字地將再定位的數(shù)據(jù)頁(yè)的數(shù)據(jù)放置在數(shù)據(jù)總 線上,所述數(shù)據(jù)由目的地緩沖器在同一周期中從所述數(shù)據(jù)總線讀出。所述過(guò)程始于控制 器將命令和源地址發(fā)布到選定的陣列,并將命令和目的地地址發(fā)布到選定的目的地陣列, 所述選定的目的地陣列可以是同一陣列,在同一芯片的不同平面上或在不同芯片上。在 多芯片的情況下,命令序列導(dǎo)致在同一總線上多個(gè)芯片同時(shí)工作。接著,在待再定位的 頁(yè)被每次一字地傳輸時(shí),控制器雙態(tài)觸發(fā)讀取啟用和寫入啟用信號(hào)。完成后,當(dāng)需要時(shí), 控制器禁用目的地和源。本發(fā)明的額外方面、特征和優(yōu)勢(shì)包括在以下實(shí)施方式中,此描述內(nèi)容應(yīng)結(jié)合附圖來(lái) 閱讀。
圖i是具有存儲(chǔ)器控制邏輯、數(shù)據(jù)和地址寄存器的典型現(xiàn)有技術(shù)快閃EEPROM存儲(chǔ) 器陣列的方框圖。圖2說(shuō)明使用圖1的存儲(chǔ)器且具有系統(tǒng)控制器的架構(gòu)。圖3展示在現(xiàn)有技術(shù)中芯片上復(fù)制序列的實(shí)例。圖4展示示范性實(shí)施例的存儲(chǔ)器-控制器連接。圖5是一般化的芯片外復(fù)制序列的示意表示。圖6是根據(jù)一個(gè)實(shí)施例的用于兩個(gè)芯片之間的復(fù)制的命令序列。圖7展示使用典型快閃接口時(shí)序的具有數(shù)據(jù)修改的芯片到芯片復(fù)制的實(shí)例。
圖8展示基于典型快閃接口時(shí)序的數(shù)據(jù)傳輸時(shí)序的實(shí)例。 圖9展示基于類EDO讀取時(shí)序的數(shù)據(jù)傳輸時(shí)序的實(shí)例。 圖IO展示通過(guò)類EDO讀取時(shí)序進(jìn)行數(shù)據(jù)修改的實(shí)例。 圖11展示在同一芯片上的兩個(gè)位置之間的復(fù)制。 圖12展示通過(guò)類EDO讀取時(shí)序進(jìn)行數(shù)據(jù)修改的實(shí)例。 圖13展示多總線系統(tǒng)的實(shí)例的存儲(chǔ)器-控制器連接。 圖14是使用類EDO讀取時(shí)序的多總線復(fù)制的實(shí)例。
具體實(shí)施方式
在第一方面,本發(fā)明使允許在兩個(gè)存儲(chǔ)器區(qū)塊之間復(fù)制數(shù)據(jù)的復(fù)制操作一般化,所 述存儲(chǔ)器區(qū)塊可在兩個(gè)不同芯片上,在同一芯片上的兩個(gè)平面上,或在同一芯片的同一 平面上。因此,此處描述的方法提供了一種允許在快閃存儲(chǔ)器或其它存儲(chǔ)器陣列中的任 何兩個(gè)位置之間復(fù)制數(shù)據(jù)的單一數(shù)據(jù)復(fù)制機(jī)制。此種較一般的復(fù)制的性能與通常用于現(xiàn) 有技術(shù)中的芯片上復(fù)制的性能相同。移除對(duì)數(shù)據(jù)位置的限制產(chǎn)生減小數(shù)據(jù)復(fù)制頻率的改 進(jìn)的算法操作。一般來(lái)說(shuō),此處描述的方法允許將存儲(chǔ)器區(qū)塊中的數(shù)據(jù)復(fù)制到另一存儲(chǔ)器區(qū)塊,所 述另一存儲(chǔ)器區(qū)塊可1) 在不同芯片中;2) 在同一芯片的不同平面中;或3) 在同一芯片的同一平面中。為了支持此功能性,相對(duì)于現(xiàn)有技術(shù)修改了在快閃芯片中的控制邏輯和數(shù)據(jù)路徑。 此概念是在現(xiàn)有快閃芯片引腳的情境下描述的,但可通過(guò)實(shí)施經(jīng)修改的接口來(lái)促進(jìn)系統(tǒng) 集成。然而,對(duì)接口的所述改變將消除與現(xiàn)有系統(tǒng)的兼容性,這可能或可能不合乎需要。 對(duì)于向不同芯片的復(fù)制,以下描述內(nèi)容的第一部分將僅考慮在同一總線上的兩個(gè)芯片之 間的數(shù)據(jù)復(fù)制。 一種允許在單獨(dú)的總線上的兩個(gè)芯片之間進(jìn)行復(fù)制的方案在描述內(nèi)容的 稍后部分中加以考慮,所述方案是控制器設(shè)計(jì)或系統(tǒng)架構(gòu)的功能,而非存儲(chǔ)器芯片的功 能。首先針對(duì)在不同芯片之間的芯片外復(fù)制來(lái)描述所述過(guò)程。圖4展示小型存儲(chǔ)器系統(tǒng) 的示意表示。所述控制器501經(jīng)由數(shù)據(jù)總線502連接到第一存儲(chǔ)器(此處為快閃)芯片 511和第二存儲(chǔ)器(此處為快閃)芯片512。共享的控制信號(hào)(地址鎖存啟用(ALE)、 命令鎖存啟用(CLE)、讀取啟用(RE)、寫入啟用(WE))和芯片啟用信號(hào)(CE1、 CE2)
的路徑也已明確展示。在實(shí)際系統(tǒng)中可能僅存在一個(gè)或可能存在兩個(gè)以上快閃芯片,但 出于解釋性的目的,最初針對(duì)兩個(gè)不同芯片來(lái)描述所述過(guò)程。以下提供兩個(gè)實(shí)例,其說(shuō)明用于稍許簡(jiǎn)化的實(shí)施方案的大體命令流程;實(shí)際裝置的 詳細(xì)操作可能與所述實(shí)例不同。這些實(shí)例之后是對(duì)接口時(shí)序的更詳細(xì)描述。作為第一實(shí)例,考慮將扇區(qū)從芯片1復(fù)制到芯片2的操作。此展示于圖6中且具有 以下階段1. 控制器發(fā)送命令到芯片1以將數(shù)據(jù)從源陣列中的第一位置讀取到緩沖器;在一些 實(shí)施例中,這些緩沖器可以是用于芯片外復(fù)制的特殊緩沖器。2. 控制器發(fā)送命令和地址字節(jié)到芯片1以將所述芯片配置為芯片外復(fù)制源。這通過(guò) 啟用芯片l (XCE1變低),使得命令鎖存啟用(CLE)變高,將復(fù)制源開(kāi)始(CSS)命令 置于I/O線上,和雙態(tài)觸發(fā)寫入啟用來(lái)實(shí)施。對(duì)于地址,當(dāng)雙態(tài)觸發(fā)所述寫入啟用時(shí), 將地址鎖存啟用(ALE)變高并將源地址(AS)置于I/0線上。地址字節(jié)確定數(shù)據(jù)的源 平面。3. 控制器發(fā)送命令和地址字節(jié)到芯片2來(lái)以類似方式將所述芯片配置為芯片外復(fù)制 目的地,但現(xiàn)在啟用芯片2 UCE2低)。地址字節(jié)確定數(shù)據(jù)的目標(biāo)地址(例如,平面、區(qū) 塊、頁(yè)和列)。4. 控制器以同步方式雙態(tài)觸發(fā)RE (讀取啟用)和WE (寫入啟用)以將數(shù)據(jù)集每次 一字節(jié)(在此實(shí)例中,對(duì)應(yīng)于總線寬度)地從芯片1傳輸?shù)叫酒?。也可同時(shí)將數(shù)據(jù)從 芯片1緩沖器傳輸?shù)娇刂破鳌W鳛樾酒鈴?fù)制目的地,芯片2響應(yīng)WE而無(wú)須斷言CE2(芯片2啟用),但忽略RE。(如以下所論述,如果數(shù)據(jù)也傳輸?shù)娇刂破?,那么控制器?在復(fù)制期間修改數(shù)據(jù)。這通過(guò)在RE上驅(qū)動(dòng)脈沖(同時(shí)WE為高)以從芯片l讀取數(shù)據(jù) 而不復(fù)制到芯片2來(lái)實(shí)現(xiàn)。數(shù)據(jù)在控制器中被修改且隨后通過(guò)在WE上驅(qū)動(dòng)脈沖(同時(shí) RE為高)且從控制器驅(qū)動(dòng)數(shù)據(jù)總線來(lái)將數(shù)據(jù)傳輸?shù)叫酒?。這些操作展示于下文描述的 時(shí)序圖中。)5. —旦傳輸完成,控制器就發(fā)送命令(CSC和CDC)到每一芯片以終止芯片外復(fù)制。 對(duì)于芯片l來(lái)說(shuō),不需要CSC命令是可能的。在芯片2的情況下,此命令識(shí)別編程操作。 命令的范圍優(yōu)選可支持復(fù)制放棄選項(xiàng),此選項(xiàng)將會(huì)在讀取數(shù)據(jù)中發(fā)生ECC失敗的情況下 使用。在此配置下,芯片2被指定為目的地且接收目的地地址,使得目的地芯片以及源芯 片同時(shí)被啟用;也就是說(shuō),在總線上將同時(shí)存在多個(gè)作用中的裝置。在數(shù)據(jù)的實(shí)際傳輸
期間,用于芯片2的芯片啟用信號(hào)未斷言(\CE2為高)僅源芯片的啟用信號(hào)被明確地 斷言。正傳輸?shù)臄?shù)據(jù)被置于總線上,且當(dāng)將WE驅(qū)動(dòng)到高時(shí),目的地芯片接收總線上的 數(shù)據(jù)。僅重?cái)嘌阅康牡匦酒膯⒂眯盘?hào)以接收指示所述傳輸?shù)慕Y(jié)束的CDC命令。下文進(jìn) 一步論述圖6及其變化形式(例如,當(dāng)作為傳輸?shù)囊徊糠中薷臄?shù)據(jù)集的一部分時(shí))。在將扇區(qū)從一個(gè)芯片復(fù)制到另一芯片的此論述中,以及在源位置和目的地位置兩者 在同一芯片中的以下論述中,隱含地假定目的地位置不忙于其它操作。然而,視裝置設(shè) 計(jì)而定,這些技術(shù)可容易地延伸到目的地可能正忙于編程來(lái)自先前操作的數(shù)據(jù)的情況。 存在許多允許在非復(fù)制操作期間在完成當(dāng)前編程操作之前傳輸數(shù)據(jù)以用于接下來(lái)的編程 操作的裝置。此類操作管線技術(shù)稱為"高速緩存寫入(cached write)"且可與本發(fā)明的數(shù) 據(jù)再定位技術(shù)組合。舉例來(lái)說(shuō),在提供所述機(jī)制的存儲(chǔ)器設(shè)計(jì)中,可在單一芯片內(nèi)通過(guò) 允許讀取對(duì)程序進(jìn)行中斷來(lái)實(shí)現(xiàn)使用高速緩存復(fù)制的數(shù)據(jù)再定位。有關(guān)所述重疊操作的 更多細(xì)節(jié)描述于2002年2月22日申請(qǐng)的美國(guó)專利申請(qǐng)案10/081,375以及2004年5月 13日申請(qǐng)的美國(guó)專利申請(qǐng)案10/846,289和第6,134,145號(hào)美國(guó)專利中,其全部以引用的 方式并入本文中。在第二實(shí)例中,源位置和目的地位置兩者都在芯片1上。此展示于圖ll中。為了支 持此功能, 一些實(shí)施例可在存儲(chǔ)器芯片中引入額外緩沖。視芯片中的緩沖和邏輯而定, 此方法允許將來(lái)自一個(gè)區(qū)塊的數(shù)據(jù)傳輸?shù)叫酒械娜魏纹渌鼌^(qū)塊。從外部觀點(diǎn)來(lái)看,復(fù) 制回同一芯片與在芯片之間復(fù)制是相同的。如從圖6與圖11的比較可看出,圖11的不 同之處是芯片2不被啟用(將XCE2保持為高)且將不需要可能的CSC命令,因?yàn)樾酒? 是目的地和源且現(xiàn)接收CDC命令。所述過(guò)程允許對(duì)于芯片上復(fù)制和芯片外復(fù)制兩者進(jìn)行 統(tǒng)一處理,且如下1. 控制器發(fā)送命令到芯片1以從陣列將數(shù)據(jù)讀取到緩沖器;這些緩沖器可以是用于 此目的的特殊緩沖器。2. 控制器發(fā)送命令和地址字節(jié)到芯片1以將所述芯片配置為芯片外復(fù)制源。地址字 節(jié)確定數(shù)據(jù)的源平面。3. 控制器發(fā)送命令和地址字節(jié)到芯片1以將所述芯片配置為芯片外復(fù)制目的地。地 址字節(jié)確定數(shù)據(jù)的(例如)目標(biāo)平面、區(qū)塊、頁(yè)和列。4. 控制器也可以同步方式雙態(tài)觸發(fā)RE和WE以經(jīng)由雙向數(shù)據(jù)緩沖器同時(shí)將數(shù)據(jù)從 芯片1傳輸?shù)娇刂破骱蛡鬏敾匦酒?。控制器可通過(guò)使用在實(shí)例1的步驟4中描述的相 同技術(shù)來(lái)在復(fù)制期間修改數(shù)據(jù)。這些操作展示于以下時(shí)序圖中。
5. —旦傳輸完成,控制器就發(fā)送命令(CDC)到芯片l以終止芯片外復(fù)制。用于此 命令的選項(xiàng)范圍與在實(shí)例1的步驟5中用于芯片2的選項(xiàng)范圍相同。 下文中還進(jìn)一步論述圖ll及其變化形式。圖5以類似于圖3中所示的方式來(lái)說(shuō)明一般過(guò)程。圖5展示組成存儲(chǔ)器的陣列中的 兩個(gè)陣列。這些陣列可在不同芯片上(如由虛線所指示),或?yàn)樵谕恍酒系膬蓚€(gè)半自 治陣列(平面)。對(duì)于將數(shù)據(jù)寫回到同一平面的芯片上復(fù)制的情況來(lái)說(shuō),可認(rèn)為陣列l(wèi)和 陣列2是相同的,且可認(rèn)為數(shù)據(jù)寄存器1和數(shù)據(jù)寄存器2是同一寄存器。所述過(guò)程通過(guò)將數(shù)據(jù)集從陣列1中的源位置復(fù)制到與陣列1相關(guān)聯(lián)的數(shù)據(jù)寄存器1 中而開(kāi)始。數(shù)據(jù)寄存器1可以是單一寄存器、更普通的主從配置(如在圖3中),或某一 其它配置。在這些情況的任一種中,將數(shù)據(jù)讀出到可從陣列接收數(shù)據(jù)的副本的寄存器的 一部分中,且接著執(zhí)行在數(shù)據(jù)的副本可傳輸?shù)搅硪魂嚵谢騻鬏數(shù)娇刂破髦氨匦璧娜魏?隨后的傳輸。(數(shù)據(jù)寄存器中的這些額外傳輸,如圖3的步驟(2)中從所述從數(shù)據(jù)寄存 器到所述主數(shù)據(jù)寄存器的傳輸,未明確地展示于圖5中。)數(shù)據(jù)的副本接著被傳輸?shù)脚c目 的地陣列2相關(guān)聯(lián)的數(shù)據(jù)寄存器2,包括將數(shù)據(jù)置于可從中將其寫入到目的地位置的寄 存器中所需的數(shù)據(jù)寄存器2中的任何必需的傳輸。從源位置讀取的數(shù)據(jù)也將被傳輸?shù)娇刂破饕赃M(jìn)行檢查,且如果必要,進(jìn)行校正。這 種向控制器中的緩沖器的傳輸可與在數(shù)據(jù)寄存器之間的傳輸同時(shí)發(fā)生,且因此也被標(biāo)記 為(2)。如果在數(shù)據(jù)集中發(fā)現(xiàn)誤差且其將被校正,那么使用誤差校正碼(ECC)來(lái)校正 控制器的緩沖器中的數(shù)據(jù)集的副本。 一旦被校正,就可在步驟(2')中將數(shù)據(jù)集發(fā)送到數(shù) 據(jù)寄存器2,使得經(jīng)校正的值可寫入到新位置。當(dāng)包括這種向控制器的傳輸時(shí),其可為所有再定位的一部分(類似于上文參看圖3 描述及在第6,266,273號(hào)美國(guó)專利中進(jìn)一步描述的情況)或僅用于某些傳輸。有關(guān)可與本 發(fā)明的各方面組合的數(shù)據(jù)再定位操作的其它技術(shù)可査閱2004年5月13日申請(qǐng)的第US 10/846,289號(hào)美國(guó)專利申請(qǐng)案和2004年8月9日申請(qǐng)的第US 10/915,039號(hào)美國(guó)專利申 請(qǐng)案(所述專利申請(qǐng)案以引用的方式并入本文中),以及上文以引用的方式并入的第 6,266,273號(hào)美國(guó)專利。如下文參看圖7所論述,在一些情況中,即使數(shù)據(jù)集的大部分從源直接傳輸?shù)侥康?地,但數(shù)據(jù)集的一部分可被修改。舉例來(lái)說(shuō),可修改標(biāo)頭。本發(fā)明的另一方面允許在運(yùn) 行中進(jìn)行此操作,使得在繼續(xù)執(zhí)行直接傳輸之后,從數(shù)據(jù)寄存器1向數(shù)據(jù)寄存器2的直 接傳輸在所述傳輸?shù)闹虚g暫停且插入來(lái)自控制器的若干經(jīng)修改的字。
一旦數(shù)據(jù)的副本在目的地陣列的寫入寄存器中,無(wú)論直接來(lái)自源陣列的讀取緩沖器, (以經(jīng)校正形式)來(lái)自控制器,還是直接來(lái)自源陣列的讀取緩沖器但數(shù)據(jù)集的某些字經(jīng) 修改,都將其寫入到目的地位置中。
將通過(guò)示范性實(shí)施例的若干時(shí)序圖來(lái)進(jìn)一步說(shuō)明本發(fā)明的各方面。返回圖6,其展 示如上文在上述第一實(shí)例中描述在兩個(gè)芯片之間的基本復(fù)制操作。在此序列開(kāi)始時(shí),已 將數(shù)據(jù)從芯片1的陣列讀取到其內(nèi)部緩沖器中。命令CSS (復(fù)制源開(kāi)始)和(源)地址 AS定義將作為傳輸?shù)脑吹钠矫妗C頒DS (復(fù)制目的地開(kāi)始)和(目的地)地址AD選 擇芯片2作為芯片到芯片復(fù)制的目的地且定義芯片中數(shù)據(jù)將被寫入的地址(例如,平面、 區(qū)塊、頁(yè)和列)。此情況下的數(shù)據(jù)傳輸不涉及數(shù)據(jù)的任何修改。在傳輸數(shù)據(jù)后,發(fā)出命令 到芯片1和芯片2 (CSC和CDC)以完成所述傳輸。CSC和CDC分別代表復(fù)制源完成 (Copy Source Complete)禾口復(fù)制目的地完成(Copy Destination Complete)。
圖7展示在傳輸期間修改數(shù)據(jù)集中間的某些字的情況。舉例來(lái)說(shuō),這允許作為傳輸 的一部分在運(yùn)行中更新標(biāo)頭的若干部分(例如,時(shí)戳),而不必將整個(gè)數(shù)據(jù)集傳輸?shù)娇刂?器。圖7展示相當(dāng)標(biāo)準(zhǔn)的快閃存儲(chǔ)器接口時(shí)序的過(guò)程。對(duì)于將被修改的字,當(dāng)從源芯片 讀取數(shù)據(jù)時(shí),停止WE脈沖以暫停直接的、緩沖器到緩沖器的傳輸。在控制器中修改此 數(shù)據(jù),且隨后僅通過(guò)使WE脈動(dòng)來(lái)將所述數(shù)據(jù)傳輸?shù)侥康牡匦酒?。該圖展示4個(gè)字被修 改。以此方式可修改任何數(shù)目的字,且對(duì)于傳輸中經(jīng)修改的數(shù)據(jù)的位置不存在限制。
圖8更詳細(xì)地展示傳輸時(shí)序,其再次基于典型的快閃接口時(shí)序。此圖說(shuō)明管理時(shí)序 偏斜的特定細(xì)節(jié),即、WE和XRE的上升的協(xié)調(diào)。如I/0線上所指示,其展示三種情況當(dāng) 數(shù)據(jù)字直接從源緩沖器去往目的地緩沖器,從源去往控制器,和從控制器去往目的地。
在該圖中,tREA(讀取存取時(shí)間)是從啟用以進(jìn)行讀取直到數(shù)據(jù)處于總線上的時(shí)間,且t0H(輸出保持時(shí)間)是在RE的上升沿之后快閃芯片繼續(xù)驅(qū)動(dòng)IO的時(shí)間。如果存在顯著的 偏斜,那么需要延長(zhǎng)讀取脈沖以確保將數(shù)據(jù)正確地選通到目的地芯片中。讀取周期需要 減緩的程度(如果需要的話)將取決于許多因素,包括電容負(fù)載、快閃芯片I/O線的輸 出驅(qū)動(dòng)強(qiáng)度以及控制器XRE和WVE輸出的驅(qū)動(dòng)強(qiáng)度和時(shí)序分解能力。理論上,應(yīng)可能實(shí) 現(xiàn)等于常規(guī)讀取傳輸速率的傳輸速率。
在另一實(shí)施例中,這些時(shí)序問(wèn)題可通過(guò)在RE為高時(shí)使源快閃芯片繼續(xù)驅(qū)動(dòng)I/O總線 來(lái)克服,此類似于EDO (延長(zhǎng)的驅(qū)動(dòng)輸出)DRAM接口操作的方式。圖9中針對(duì)若干字 展示了這種類EDO方案的時(shí)序(僅用于直接的源到目的地的復(fù)制)。相對(duì)時(shí)序或XRE和 VWE脈沖現(xiàn)較不關(guān)鍵,且應(yīng)可能實(shí)現(xiàn)更高的傳輸速率。在此實(shí)施例中,XRE和XWE波形
并不相對(duì)于彼此偏斜,且一起上升和下降。這種類EDO時(shí)序也可用于增加常規(guī)讀取的傳 輸速率,或許通過(guò)使用特殊命令選擇傳輸模式來(lái)實(shí)現(xiàn)。通過(guò)類EDO讀取時(shí)序,應(yīng)可實(shí)現(xiàn)50 MB/秒的傳輸速率或更好的傳輸速率。在I/0線上,Dn、 Dn+1、 Dn+2.....是指數(shù)據(jù)集中的連續(xù)的字,且x指示所述線被驅(qū)動(dòng)但未定義。通過(guò)類EDO時(shí)序,當(dāng)ALE、 CLE和XCE為低時(shí),源快閃芯片在VRE的下降沿啟用其 1/0驅(qū)動(dòng)器。只要ALE、 CLE和XCE保持為低,就連續(xù)地驅(qū)動(dòng)快閃芯片輸出。如果需要以類EDO讀取時(shí)序來(lái)修改任何數(shù)據(jù),那么將禁用快閃芯片輸出。用于所述 操作的時(shí)序展示于圖10中,其展示了與圖8中相同的三個(gè)情況。圖6-10涉及在兩個(gè)不同芯片之間復(fù)制的情況。返回圖11,展示在同一芯片上兩個(gè)位 置之間復(fù)制的第二種情況。與之前一樣,所說(shuō)明的序列在已將數(shù)據(jù)從陣列傳輸?shù)骄彌_器 之后開(kāi)始。在示范性實(shí)施例中,需要兩個(gè)命令來(lái)起始復(fù)制,但這次其以上文描述的方式 發(fā)布到同一芯片。在數(shù)據(jù)傳輸已完成后,單一命令可足以終止所述復(fù)制。如果在數(shù)據(jù)傳輸期間不存在數(shù)據(jù)修改,那么類EDO讀取時(shí)序的序列與圖6或圖11 的序列看上去幾乎相同。當(dāng)數(shù)據(jù)被修改時(shí),需要改變對(duì)到達(dá)源芯片的CE線的控制。圖 12對(duì)應(yīng)于圖7,且展示在兩個(gè)芯片之間的數(shù)據(jù)(有修改)的復(fù)制,但現(xiàn)使用類EDO讀取時(shí)序。在此情況下,當(dāng)數(shù)據(jù)從控制器傳輸?shù)侥康牡匮b置時(shí),也將使m:ei升高。利用至此所描述的方案,將僅在可實(shí)現(xiàn)最大陣列讀取和陣列編程并行度時(shí)達(dá)到復(fù)制 數(shù)據(jù)區(qū)塊的最佳性能。如果對(duì)數(shù)據(jù)相對(duì)于平面的對(duì)準(zhǔn)不施加限制,那么使用某種形式的 高速緩存讀取操作來(lái)允許陣列讀取與緩沖器讀取管線化將是有益的?,F(xiàn)有的高速緩存讀 取通常對(duì)連續(xù)地址操作;在每一平面中具有兩個(gè)緩沖器,應(yīng)可能在傳輸來(lái)自第一次讀取 的數(shù)據(jù)之前,開(kāi)始在一個(gè)或一個(gè)以上平面上的第二次陣列讀取。以此方式,陣列讀取與 數(shù)據(jù)傳輸可并行地操作。對(duì)于示范性實(shí)施例,快閃芯片內(nèi)部的接口邏輯將從典型接口邏輯中進(jìn)行修改以便支 持所描述的方法。所述改變的程度將取決于所要求的優(yōu)化的程度。最簡(jiǎn)單的方案將僅允 許在兩個(gè)芯片之間復(fù)制;這可隨后利用現(xiàn)有的緩沖器結(jié)構(gòu)。為了支持復(fù)制回源芯片,可 能存在緩沖器結(jié)構(gòu)將需要修改的情況;在一些實(shí)施例中,可使用額外的緩沖器。在一些 情況下,陣列讀取與數(shù)據(jù)傳輸?shù)墓芫€化除現(xiàn)有設(shè)計(jì)中所提供的那些緩沖器外還使用額外 緩沖器。所描述的方法允許數(shù)據(jù)的非常靈活、高性能的再定位,同時(shí)在運(yùn)行中檢査和修改數(shù) 據(jù)。在額外實(shí)施例中,可向陣列讀取操作施加進(jìn)一步的增強(qiáng),其允許在所有情況下的最
佳數(shù)據(jù)復(fù)制。在一些情況下,這些方法將使用對(duì)快閃存儲(chǔ)器控制邏輯的運(yùn)算的改變。至此描述內(nèi)容已基本上假定當(dāng)數(shù)據(jù)再定位是在不同芯片上的陣列之間時(shí),同一總線 將芯片彼此連接。所描述的用于在共享共同數(shù)據(jù)總線的兩個(gè)存儲(chǔ)器芯片之間復(fù)制數(shù)據(jù)的 方法可延伸為在單獨(dú)的總線上在存儲(chǔ)器芯片之間復(fù)制數(shù)據(jù)。這是當(dāng)(例如)源存儲(chǔ)器陣 列和目的地存儲(chǔ)器陣列不在同一總線上且經(jīng)由單獨(dú)的數(shù)據(jù)總線連接到控制器時(shí)的情況。 對(duì)控制器設(shè)計(jì)的修改將允許延伸所描述的方法以涵蓋這種新的架構(gòu)。圖13展示具有兩個(gè)快閃數(shù)據(jù)總線(621、 622)和復(fù)制的控制信號(hào)組的簡(jiǎn)單系統(tǒng)。實(shí) 際系統(tǒng)可具有兩個(gè)以上總線??刂破?01接著連接到兩個(gè)存儲(chǔ)器芯片(611、 612)。為了 在芯片1 611與芯片2 612之間復(fù)制數(shù)據(jù),發(fā)布與用于上述單一總線情況相同的命令序列; 然而,因?yàn)閺男酒?11置于總線621上的數(shù)據(jù)不可被芯片612直接存取,所以其必須首 先被傳輸?shù)娇偩€622上??刂破?01經(jīng)設(shè)置以便以一個(gè)周期的延遲將在總線1 621上讀 取的數(shù)據(jù)傳輸?shù)娇偩€2 622。因此,數(shù)據(jù)集中的每一字在被置于連接到源芯片的總線上之 后一個(gè)周期可為目的地芯片所用。被傳輸?shù)臄?shù)據(jù)集本身決不在控制器中作為整體進(jìn)行緩 沖,而僅每次一字地通過(guò)開(kāi)關(guān)603。此復(fù)制機(jī)制可在現(xiàn)有設(shè)計(jì)的快閃芯片之間使用??v 橫開(kāi)關(guān)603的設(shè)計(jì)將取決于所要求的靈活性和總線的數(shù)目。舉例來(lái)說(shuō),在某些實(shí)施例中, 將可能具有(例如)四個(gè)總線且具有在兩對(duì)總線之間的同時(shí)復(fù)制。圖14展示圖13中的系統(tǒng)的時(shí)序,其假定使用類EDO讀取時(shí)序,且對(duì)應(yīng)于圖9的單 一總線情況。如果需要,也可使用常規(guī)讀取時(shí)序。現(xiàn)對(duì)于每一總線包括了單獨(dú)的讀取和 寫入啟用信號(hào),圖14的MIE1禾口WVE2分別替代了圖9中的、RE禾口VWE,同時(shí)VRE2和VWE1 在整個(gè)過(guò)程中都保持為高。如I/0線上所示,由于縱橫開(kāi)關(guān)處的延遲的緣故,當(dāng)字Dn在 總線622上時(shí),字Dn+1在總線621上,且對(duì)于數(shù)據(jù)集的其它字來(lái)說(shuō)是類似的。因此, 對(duì)芯片2的寫入比從芯片1進(jìn)行的讀取晚1個(gè)周期開(kāi)始和結(jié)束。通過(guò)視需要暫停寫入或 讀取周期來(lái)使數(shù)據(jù)修改成為可能。對(duì)芯片2的寫入被從芯片1進(jìn)行的讀取有效地隱藏。在總線之間添加縱橫開(kāi)關(guān)的直接連接允許不依賴于所涉及的快閃總線的數(shù)目而將單 一協(xié)議用于在快閃存儲(chǔ)器陣列的任何兩個(gè)位置之間復(fù)制數(shù)據(jù)。與單一總線的情況一樣, 可作為傳輸過(guò)程的一部分來(lái)修改數(shù)據(jù)集的選定部分,對(duì)圖14的延伸類似于圖7和12中 所示的那些延伸。如上文所提及,至此論述內(nèi)容主要涉及基于快閃EEPROM存儲(chǔ)器單元的實(shí)施例,且 是相對(duì)于使用傳導(dǎo)性浮動(dòng)?xùn)艠O作為電荷存儲(chǔ)元件的類型的單元而描述的。然而,本發(fā)明 的各方面可與各種替代的非易失性存儲(chǔ)器技術(shù)(例如,薄膜、MRAM、 FRAM、 NMOS 等)結(jié)合使用,所述替代的非易失性存儲(chǔ)器技術(shù)描述于2004年5月7日申請(qǐng)的第 10/841,379號(hào)美國(guó)專利申請(qǐng)案中,所述專利申請(qǐng)案以引用的方式并入本文中。舉例來(lái)說(shuō), 本發(fā)明也可實(shí)施于一種將電荷捕集電介質(zhì)用作個(gè)別存儲(chǔ)器單元中的存儲(chǔ)元件以替代浮動(dòng) 柵極的系統(tǒng)中。介電存儲(chǔ)元件也進(jìn)一步論述于2002年10月25日申請(qǐng)的第US 10/280,352 號(hào)美國(guó)專利申請(qǐng)案中,所述專利申請(qǐng)案以引用的方式并入本文中。盡管已參照各種示范性實(shí)施例描述了本發(fā)明,但將了解,本發(fā)明享有在所附權(quán)利要 求書的整個(gè)范圍內(nèi)受到保護(hù)的權(quán)利。
權(quán)利要求
1 一種存儲(chǔ)器系統(tǒng),其包含存儲(chǔ)器,其包括多個(gè)半自治存儲(chǔ)器陣列;以及相應(yīng)的多個(gè)讀取/寫入緩沖器,每一緩沖器與各自的半自治存儲(chǔ)器陣列相關(guān)聯(lián);以及控制器,其用于管理存儲(chǔ)在所述存儲(chǔ)器中的數(shù)據(jù)并控制數(shù)據(jù)在所述存儲(chǔ)器系統(tǒng)中的傳輸,其中所述控制器可選擇所述陣列中的任一陣列作為源陣列并選擇所述陣列中的其它任一陣列作為目的地陣列,且其中所述控制器可在所述源陣列和目的地陣列的各自緩沖器之間傳輸數(shù)據(jù)頁(yè)而不將所述數(shù)據(jù)頁(yè)作為所述傳輸?shù)囊徊糠峙R時(shí)存儲(chǔ)在所述控制器中。
2. 根據(jù)權(quán)利要求l所述的存儲(chǔ)器系統(tǒng),其中所述源陣列和目的地陣列在相同芯片上形 成。
3. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中所述源陣列和目的地陣列在不同芯片上形成。
4. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中所述源緩沖器和目的地緩沖器可連接到共同數(shù)據(jù)總線。
5. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中所述源緩沖器和目的地緩沖器不可連接到 共同數(shù)據(jù)總線,且可通過(guò)單獨(dú)的數(shù)據(jù)總線連接到所述控制器。
6. 根據(jù)權(quán)利要求5所述的存儲(chǔ)器系統(tǒng),其中數(shù)據(jù)可在所述控制器中在所述單獨(dú)的數(shù)據(jù) 總線之間傳輸。
7. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中使用EDO型時(shí)序來(lái)執(zhí)行所述傳輸。
8. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中所述控制器可修改所述控制器中所述數(shù)據(jù) 頁(yè)的選定部分作為所述傳輸?shù)囊徊糠帧?br>
9. 根據(jù)權(quán)利要求1所述的存儲(chǔ)器系統(tǒng),其中在所述源陣列和目的地陣列的各自緩沖器 之間傳輸數(shù)據(jù)頁(yè)而不將所述數(shù)據(jù)頁(yè)臨時(shí)存儲(chǔ)在所述控制器中當(dāng)作所述傳輸?shù)囊徊?分的同時(shí),所述控制器可將所述數(shù)據(jù)頁(yè)復(fù)制到控制器且在其中對(duì)所述頁(yè)的副本執(zhí)行 誤差檢測(cè)和校正操作。
10. 根據(jù)權(quán)利要求9所述的存儲(chǔ)器系統(tǒng),其中在對(duì)所述頁(yè)的副本執(zhí)行誤差檢測(cè)和校正操 作之后,所述控制器可將所述頁(yè)的經(jīng)校正副本傳輸?shù)剿瞿康牡仃嚵械母髯跃彌_ 器。
11. 根據(jù)權(quán)利要求l所述的存儲(chǔ)器系統(tǒng),其中當(dāng)所述目的地陣列正忙于編程操作時(shí),所 述控制器可將所述數(shù)據(jù)頁(yè)傳輸?shù)剿瞿康牡仃嚵械木彌_器。
12. —種存儲(chǔ)器系統(tǒng),其包含-多個(gè)半自治存儲(chǔ)器陣列,每一半自治存儲(chǔ)器陣列具有相關(guān)聯(lián)的讀取/寫入緩沖器; 控制器,其用于管理存儲(chǔ)在所述存儲(chǔ)器系統(tǒng)中的數(shù)據(jù),并控制數(shù)據(jù)在所述存儲(chǔ)器系統(tǒng)中的傳輸;以及總線,其可連接到所述控制器和所述存儲(chǔ)器陣列以用于其間的數(shù)據(jù)傳輸,其中所 述控制器可選擇多個(gè)所述陣列以同時(shí)作用以用于數(shù)據(jù)傳輸操作。
13. 根據(jù)權(quán)利要求12所述的存儲(chǔ)器系統(tǒng),其中響應(yīng)于控制器命令,對(duì)于在給定時(shí)鐘周 期期間置于所述總線上的數(shù)據(jù),所述同時(shí)作用的陣列中的第一陣列充當(dāng)源而所述同 時(shí)作用的陣列中的第二陣列充當(dāng)目的地。
14. 一種操作存儲(chǔ)器系統(tǒng)的方法,所述存儲(chǔ)器系統(tǒng)包含多個(gè)半自治存儲(chǔ)器陣列和存儲(chǔ)器 控制器,所述陣列的每一者具有相應(yīng)的讀取/寫入緩沖器,所述方法包含由所述控制器選擇所述陣列中的第一陣列作為源;由所述控制器選擇所述陣列中的第二陣列作為目的地,其中所述第一陣列與所述 第二陣列不同,且其中所述第一和第二陣列可以是所述多個(gè)陣列中的任一者;以及將數(shù)據(jù)集從對(duì)應(yīng)于所述源陣列的緩沖器傳輸?shù)綄?duì)應(yīng)于所述目的地陣列的緩沖器 而不在所述控制器中臨時(shí)存儲(chǔ)所述數(shù)據(jù)集。
15. 根據(jù)權(quán)利要求14所述的方法,其中每次一子單元地傳輸所述數(shù)據(jù)集,所述傳輸包 括修改所述控制器中所述子單元中的選定子單元。
16. 根據(jù)權(quán)利要求15所述的方法,其進(jìn)一步包含與所述將所述數(shù)據(jù)集傳輸?shù)綄?duì)應(yīng)于所述目的地陣列的緩沖器同時(shí),在所述控制器 中存儲(chǔ)所述數(shù)據(jù)集的副本。
17. 根據(jù)權(quán)利要求16所述的方法,其進(jìn)一步包含在所述控制器中存儲(chǔ)所述數(shù)據(jù)集的副本之后,對(duì)所述數(shù)據(jù)集執(zhí)行誤差檢測(cè)和校正操作。
18. 根據(jù)權(quán)利要求17所述的方法,其進(jìn)一步包含將所述數(shù)據(jù)的經(jīng)校正副本傳輸?shù)綄?duì)應(yīng)于所述目的地陣列的緩沖器。
19. 根據(jù)權(quán)利要求14所述的方法,其中使用EDO型時(shí)序來(lái)執(zhí)行所述傳輸。
20. 根據(jù)權(quán)利要求14所述的方法,其中每次一子單元地傳輸所述數(shù)據(jù)集且其中所述源 陣列和目的地陣列可連接到共同數(shù)據(jù)總線,所述傳輸包含將所述數(shù)據(jù)集從對(duì)應(yīng)于所述源陣列的緩沖器每一周期一個(gè)子單元地寫入到所述 總線上;以及在將所述子單元寫入到所述總線上的相同周期期間,將寫入到所述總線上的所述 子單元讀取到對(duì)應(yīng)于所述目的地陣列的緩沖器。
21. 根據(jù)權(quán)利要求14所述的方法,其中每次一子單元地傳輸所述數(shù)據(jù)集且其中所述源 陣列和目的地陣列可在不同的、各自的第一和第二數(shù)據(jù)總線上連接到所述控制器, 所述傳輸包含將所述數(shù)據(jù)集從對(duì)應(yīng)于所述源陣列的緩沖器每一周期一個(gè)子單元地寫入到所述 第一總線上;依次地將所述控制器中的所述子單元從所述第一總線傳輸?shù)剿龅诙偩€;以及 將傳輸?shù)剿龅诙偩€上的所述子單元讀取到對(duì)應(yīng)于所述目的地陣列的緩沖器。
22. 根據(jù)權(quán)利要求21所述的方法,其中以一個(gè)周期的延遲執(zhí)行所述依次地將所述控制 器中的所述子單元從所述第一總線傳輸?shù)剿龅诙偩€。
23. 根據(jù)權(quán)利要求14所述的方法,其中當(dāng)所述目的地陣列正忙于編程操作時(shí),執(zhí)行所 述將數(shù)據(jù)集從對(duì)應(yīng)于所述源陣列的緩沖器傳輸?shù)綄?duì)應(yīng)于所述目的地陣列的緩沖器。
全文摘要
本發(fā)明延伸芯片上復(fù)制過(guò)程,以使得可在可能位于不同芯片上、同一芯片上的不同平面上,或同一芯片的同一平面上的兩個(gè)區(qū)塊之間復(fù)制數(shù)據(jù)。更具體來(lái)說(shuō),本文描述的方法提供一種允許在存儲(chǔ)器系統(tǒng)中的任何兩個(gè)位置之間復(fù)制數(shù)據(jù)的單一數(shù)據(jù)復(fù)制機(jī)制。示范性實(shí)施例使用EDO型時(shí)序。根據(jù)另一方面,經(jīng)再定位的數(shù)據(jù)的選定部分,例如被傳輸頁(yè)中的所選擇字,可在運(yùn)行中在控制器中被更新。除了將數(shù)據(jù)集從源陣列的讀取緩沖器直接傳輸?shù)侥康牡仃嚵械膶懭刖彌_器外,必要時(shí),還可同時(shí)將所述數(shù)據(jù)集復(fù)制到所述控制器中,在所述控制器中可對(duì)所述數(shù)據(jù)集執(zhí)行誤差檢測(cè)和校正操作。
文檔編號(hào)G11C16/06GK101120414SQ200580048233
公開(kāi)日2008年2月6日 申請(qǐng)日期2005年12月15日 優(yōu)先權(quán)日2004年12月21日
發(fā)明者凱文·M·康利, 彼得·約翰·史密斯 申請(qǐng)人:桑迪士克股份有限公司