TWI351605B - Managing bad blocks in flash memory for electronic - Google Patents

Managing bad blocks in flash memory for electronic Download PDF

Info

Publication number
TWI351605B
TWI351605B TW96132994A TW96132994A TWI351605B TW I351605 B TWI351605 B TW I351605B TW 96132994 A TW96132994 A TW 96132994A TW 96132994 A TW96132994 A TW 96132994A TW I351605 B TWI351605 B TW I351605B
Authority
TW
Taiwan
Prior art keywords
flash memory
data
block
address
memory device
Prior art date
Application number
TW96132994A
Other languages
English (en)
Other versions
TW200813713A (en
Inventor
Abraham Chih-Kang Ma
Charles C Lee
Frank I-Kang Yu
Edward W Lee
Ming Shiang Shen
Original Assignee
Imicro Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/471,000 external-priority patent/US7690031B2/en
Application filed by Imicro Technology Ltd filed Critical Imicro Technology Ltd
Publication of TW200813713A publication Critical patent/TW200813713A/zh
Application granted granted Critical
Publication of TWI351605B publication Critical patent/TWI351605B/zh

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

1351605 « 九、發明說明: 【發明所屬之技術領域】 本發明涉及電子資粗bb 卞買科決閃記憶體卡,更具體地說,是 關於電子資料快閃記怡·牌上丄 ^ 11體卡中快閃記憶體設備的快閃記 憶體塊控制的系統和方法。 【先前技術】 機密資料標案通常存儲在軟碟中,或者通過需要口 令或者安全加密的網路傳送。機密文播則通過安全封印發 送。然而,口令、加來、也 Έ 女全封印都有可能遭到破壞(被 解在)/從而給機密資料槽案和機密文槽帶來危險,導致 機密資訊被未授權存取。 隨著快閃記憶體技術變得越來越先進,快閃 逐步取代在移動系統中作 ^體
TtF舄存儲介質的傳統磁 位。!:軟碟或磁性介質硬碟相比,快閃記憶體具有以下-些顯著優點·高阻抗和低力率 . 理η丨宙“ 力旱耗散。由於快閃記憶體的物 :尺寸小,更加有利於移動系統的發展。相應 憶體的發展也得益於其與移動系統的相容性和低功二 然而,快閃記愔鞞山士好 和。 己隐體也有其固有限制。首先, 快閃記憶體單元必須經禍椴略士处A c編程的 乂肩絰過擦除才能進行再次編程。 快閃記憶體單元只有有限 问時, 元在失效前1谁!! *命,即,快閃記憶體單 耵八此進仃有限次數的擦除操作。例如
快閃記憶體單元血型的番士 ’ NAND 凡/、型的最大擦除次數爲一百萬次。相應 5 1351605 .地,由於“寫入前擦除”的特點,快閃記憶體存取速度較 . 慢’而且反復的擦除操作將會損壞快閃記憶體單元。 快閃記憶體設備的存儲單元陣列由典型的基本結構構 成,即分爲“磁區,,或“頁面”,並由“磁區,,或“頁 面”構成“塊”。一個磁區由5 12個位元組(小塊格式) . 或2112個位元組(大塊格式)構成一個資料段,由16個 * 位元組或64個位元組構成一個備用段。一個塊由一組磁 • 區構成’例如:16、32、64或更多磁區,磁區數量根據且 ^情況輕。如果其中某個磁區包含—個或多個無效存儲 單元(即,編程或擦除操作過程中,一個或多個存儲單元 無法實現既定的最小操作狀態),則認爲這是一個“壞, 塊。如果-個塊的全部存儲單元都功能完好,則認爲 一個“好”塊。 快閃記憶體設備可能一開始就有大量壞塊(例如, 1 〇 /。)此外’快閃s己憶體設備原來的好塊也可能在 規定的使用壽命之内變成壞塊。這些壞塊將在快閃記憶體 設備的寫人或擦除操作中表現出來。不幸的是,不斷辦加 的壞塊發生率極大地降低了快閃記憶體系統的性能/ 大部分快閃記恃體条α γ 卡)…用“ 電子資料快閃記憶體 卡)㈣使用多個快閃記憶體設備,並通過在多個快閃記 憶體Β又備陣列中搜索可用好塊的方法來解決壞塊問題 儲在壞塊中的有效資料(或分配給壞塊的資料)需要重新 分配或重新放置在一個或多個可用好塊 = 統全部快閃記憶體設備中搜索具有可用 方= 6 1351605 塊’在搜索過程中 -.忠%从i迥桎包括一 個把資料傳輸外部緩衝區的過程(即,存儲到快閃記憶體 設備之外)。如果找到了足夠數量的可用好磁區,再把該 資料寫回這些塊中。 上述傳統重新分配/重新放置過程可能會出現的一個 問題’即如果一個或多個快閃記憶體設備達到容量極限 (即,沒有剩餘可用好塊),則快閃記憶體系統必須繼續 搜索其他快閃記憶體設備’直到搜索到具有足夠數量的可 用好磁區的可用好塊。這可能導致外部緩衝區擁塞,從而 導致快閃記憶體系統的總體性能的降低。 快閃記憶體設備中可用好塊的數量隨著快閃記憶體設 備存儲量越來越接近容量和過期(無效)塊數量的增加: 減少。過期塊是指包含過期磁區的好塊,過期磁區是指存 儲過有資料而該資料又被更新過的磁區。資料被更新後, 過期資料仍保留在過期磁區中,被更新資料則被寫入新磁 區,該新磁區即成爲包含有效資料的有效磁區。有效資料 包括被更新資料和未被更新資料。相應地,過期塊數量將 隨著文件修改或刪除而增加。 過期塊通常通過“垃圾回收,,操作迴圈使用。在“垃 圾回收操作過程中,過期塊將被擦除以便再次執行寫入 操’作。過期塊可能同時包含過期資料和有效資料。有效資 料必須在過期塊被擦除前複製到可用好塊中。在垃圾回收 操作中過期塊中的有效資料將複製到外部緩衝區,然後 執行可用好塊搜索程式,在全部快閃記憶體設備中搜索和 7 1351605 •定位可用好塊。一旦可用好塊搜索成功,外部緩衝區中的 有效資料將被複製回可用好塊中。和重新分配/重新放置過 程相同,傳統的垃圾回收操作也可能發生外部緩衝區擁塞 問題,導致快閃記憶體系統總體性能的降低。 另一個壞塊解決方案爲包括塊替換過程的“損耗平 衡”操作。在該操作中,有效資料將從一個塊向另一個塊 轉移’從而使資料分佈更加均句。“,該操作同樣包括 外部緩衝區操作和多個設備中可用好塊的搜索操作過 程。如上所述,該操作也可能導致外部緩衝區擁塞,導致 快閃記憶體系統總體性能的降低。 索可用好塊所需的附加處理時間的問題,並且 前還沒有一個很好的解決方案。已知的解決方 解決搜索過程中外部緩衝區潛在的擁塞問題。 通常,傳統方法沒有解決在多個快閃記憶體設備中搜 ,並且這些問題目
【發明内容】
設備的電子資料快閃 面電路和處理單元。 1351605 =重m路βΓ請槽轉輸到主機卜#處理單元處於 資料重定模式時,資料槽案(以及參考 該快閃記憶體設備中被擦除。 、:)將從 :本發明實施方案中中,處理單元爲一個微處理器, 該微處理器可以是805卜8〇52、8〇2 或數位信號處理器(叫 isc、ARM、mips 在本發明實施方案中,輸入/輸出 用USB介面電路。 )力面電路採 主機1ΓΓ本發明實施方案中,^快閃記憶體設備和 機之間㈣批量傳輸(贿)協定高速傳輸資料。由於 =:輸的命令、資料、狀態不但依賴於默認控制終端點 還依賴於批量終端點,所以贿協定是—種比⑽協定 更加尚效而且快速的傳輸協定。 在本發明另一個實施方案中,電子資料快閃記憶體卡 (或其他快閃記憶體系統)包含帶有處理器的快閃記憶體 控制器’該處理器負責和系統連接的多個快閃記憶體設備 的塊管理操作。這些塊管理操作包括壞塊識別、過期塊回 收、損耗平衡操作。本發明中,處理器利用來自仲裁邏輯 =資料’在塊管理操作中,把可用好塊搜索限制在某個特 疋的决閃„己憶體设備中,而不像傳統方法那樣在全部快閃 記憶體設備中進行搜索。此外,在某個快閃記憶體設備中 搜索可用好塊時’處理器將利用該快閃記憶體設備的内部 :衝區儲存有效資料。通過把可用好塊搜索限制在一個特 定快閃記憶體設備中,並使用指定快閃記憶體設備的内部 10 ^51605 緩衝區’本發明可減少可用好塊搜索時間並消 衝區使用的需要,從而可以避免外部緩衝區擁 :: 統快閃記憶體系統的性能。相應地,塊管理操 = 有顯著提高。 处度將 【實施方式】 - 參看圖1,根據本發明實施方案,電子資料快閃記 • 體卡1G可通過介面匯流排13、讀卡器12或其他介面機^ (圖中未示)被外部電腦(主機)9存取,電子資料 記憶體卡1〇包括卡身!、處理單元2、一個或多個快閃記 憶體設備3、指紋感測器4、輸入/輸出介面電路5、可、 顯示單元6、可選電源(例如,電池)7、可選功能、鍵選 快閃記憶體設備3安|^丨i, x衣&下开i上,以已知方式儲 了-個或多個資料㈣、參考口令以及通過㈣電子 快閃記憶體卡10的-個或多個授權用戶指紋獲得的參考 # t纹資料。只有授權用戶能存取所儲存的資料槽案。該 料標案可以爲圖片文件或文字樓案。 ‘ m則器4安裝於卡身^上,通過掃描電子資料快 閃記憶體卡1〇的用戶指紋產生指紋掃描資料。.指紋感測 ”可參考本發明人共同擁有的美國專利“帶有指紋識別 月色力的積體電路卡”,糞剎躲 專利说爲6,547,130,本發明採 以專利#技術#帛。上述指紋感冑器專Μ包括一個掃描 單元陣列,該陣列定義了指紋掃描區域。指紋掃描資料包 括通過掃描相應的掃描單元陣列線而獲得的大量掃描線 11 1351605 資料。掃描單元陣列線按照行和列的方式進行掃描。各掃 描單元若檢測到持卡人指紋脊則産生第一邏輯信號若檢 测到指紋持卡人指紋穀則産生第二邏輯信號。 輪入/輪出介面電路5安裝於卡身1上,啟動後,介面 匯流排13或讀卡器12通過適當的插口建立和主機9之間 的通訊。在本發明的一個實施方案中,輸入/輸出介面電路 5包含一個USB、RS232介面電路和控制邏輯 結構’可與連接至或安裝於主機9的插口相連。在另一個 實施方案中,輸入/輸出介面電路5包含SD介面電路、MMC 介面電路、CF介面電路、MS介面電路、pciExpress介 面電路、IDE介面電路、SATA介面電路,這些電路通過 介面匯流排13或讀卡器12和主機9連接。 處理單元2安裝於卡身1上,通過卡身1上的導電線 路與與快閃記憶體設備3、@紋感冑$ 4和輸入/輸出介面 電路5連接。在本發明的一個實施方案中,處理單元2可 採用英代爾公司的8〇51、8〇52或8〇286微處理器。在其 他實施方案+ ’處理單元2採用RISC、arm、Mips或其 他數位信號處理器(DSp)。本發明中,處理單元2至少受 部分儲存在快閃記憶體設備3中的程式控制,這樣處理單 元2可以通過選擇在以下三種模式下卫作:(1)可編程模 弋在1模式下,處理單元2啟動輸入/輸出介面電路5 接收來自主機9的資料槽案和參考指紋資料,並把資料構 案和參考指紋資料儲存在快閃記憶體設備3中;(2)資料 讀取模式·在該模式下,處理單元2啟動輸人/輸出介面電 12 指紋資料將從快閃記憶體設備°;中:::::標案和參考 通過介面匯流排13或讀卡号12^除#作中’主機9 發送寫入和讀取,灰!和輸入/輸出介面電路5 理單元2,處理單_\ 料快閃記㈣卡1G上的處 從-…通過快閃記憶體控制器(圖中未干) 本發明的-個實施方荦中,A了】::其寫入資料。在 測到存儲於快門^ 進一步確保安全,-旦檢 取後超過了預設的案自上"次授權存 操作。 的時間極限,處理單元2將自動啓動重定 元2和盆他相卡身1上’並與卡纟1上的處理單 ^ 關早元相連,爲其提供電源。 可選功能鍵 女裝於卡身1上,並與處理單元2連接, 通過選擇可使處理罝 也伐 定模式。功能鍵8可田仏私^ 竹垔 _ , ^ β 了用於輸入處理單元2的口令。處理輩 凡2把輸入的口入丄 令進行比較,若^ 記憶體設備3中的參考口 料快閃記㈣和參考口令—致,則啓動電子資 隱體卡10的授權操作。 可選顯示單开< 认心 6女裝於卡身1上,與處理單元2相連 又其控制’用於顯示與主機9之間交換的資料檔案以及 電子資料快閃記德體卡H)的操作狀態。 以下爲本發明认、 的邛为優點:首先’電子資料快閃記憶 體積小、各量大,所以資料傳輸方便;其次,由於指 13 1351605 、、唯一性,電子資料快閃記憶體卡只允許授權人員存取 卡上儲存的資料檔案,從而提高了安全性。 本發明其他特點和優點如下。 圖2爲本發明優選實施方案的電子資料快閃記憶體卡 立八方框圖’纟中省略了指紋感測器和相關用戶識別程式 爲了降低集成成本,電子資料快閃記憶體卡1 〇 A包 括一個高度集成的處理單元2A、輸入/輸出介面電路5A 和快閃記憶體控制器2卜輸入/輸出介面電路“包括一個 收發器模組’串列介面引擎塊、資料緩衝器、暫存器和中 斷邏輯。輸入/輸出介面電路5A和内部匯流排相連,使輸 入/輸出介面電路s A各個$元都能和,决閃記隐體控制器η 的各單元通訊。快閃記憶體控制胃21包括—個微處理器 、唯讀記憶體(R〇M)、RAM、,決閃記憶體控制器邏 °、錯誤校正代碼邏輯、通用輸人/輸出(Gp⑴)邏輯。 在本發明的一個實对、® 、 案中’ GPI〇邏輯和數個LED相 、用於狀ϋ不,例如:電源良好快閃記憶體讀取/ 寫入中等’或和其他1/〇設備相連。快閃記憶體控制器η 和一個或多個快閃記憶體設備3相連。 在本實施方案中’主機9Α設有功能鍵8Α,在 料快閃記龍卡1GA操作過針,通過介面 器和處理單元2A連接。功8Δ田认& 飞碩卡 記憶體卡_的二模選擇電子資料快閃 作模式.編程、資料讀取或資料重定棋 式。功能鍵8Α同時可用于向主機9Α輸入口令。處理單元 2Α把輸人的口令和存財快閃記憶體設# 3中的參考口 1351605 -令進仃比較’若輸入口令和參考口令一致,則啓動電子資 料快閃記憶體卡10A的授權操作。 同時在本實施方案中,主機9A設有顯示單元6A,在 操作電子資料快閃記憶體卡10A的過程中,通過介面匯流 排或讀卡器與處理單元2八連接。單元6入用於顯示與主機 9A交換的資料;^案以及電子資料快閃記憶體卡似的操 , 作狀態。 ' • 冑3爲處理單元2A的詳細柩圖。電子資料快閃記憶 體卡10A設有功率調節器22,用於向一個或多個處理^ 元2A供電。電源根據電子資料快閃記憶體卡“A相關單 元不同的要求提供不同電壓的電源。電容器(圖中未示) 可用於提高電源穩定性。電子資料快閃記憶體卡1〇a設有 重定電路23’用於向處理單元2八提供重定信號。上電後, 重:電路23向全部單元發送重定信冑。當内部電壓達到 穩疋水平後,撤銷重定信號,由電阻器和電容器(圖中未 ·*)保證足夠長的重定調整時間。電子資料快閃記憶體卡 •,同時包括-個石英晶體振蕩器(圖中未示),向處理 單元2A内的pll提供基頻。 6在本發明的實施方案中,輸入/輸出介面電路5a、重 定電路23、功率調節器22被集成或部分集成在處理單元 2A内。這種高集成度大大減少了所需的空間、複雜度和 製造成本。 f密性和成本對移動設備至關重要,例如這襄所涉及 的電子資料㈣記憶體卡。現代IC封裝可以在—個_ 15 13516^ a 裝中集成採用不同技術和材料的離散Κ元件 入/輸出介面電路爲類h 例如,輸 成到MCP (多:片爲= 數位:合電 比電路,也可盥處理[w 刀年調印器爲類 中。 ”處理单凡同時集成到MCP (多晶片封裝) 混合信號1C技術本質上允許 路。囡古也 人胡比和數位電 阿又的集成技術可納入處理單元2A模 包括輸入/輸出介面雷玖疋2八模具中, 電路23知“ 憶體控制器21、重定 €路23和功率調節器22。 在優選的實現方案中, 合作號Tr ^ 茶甲24過利用多晶片封裝技術或混 2 實現處理單元2、輸人/輸出介面電路5、 。調卽器22和重定電路23集成或部分集成。 備::閃記憶體技術的進步促使了各種類型快閃記憶體設 :::現’以滿足對不同性能、成本和容量的需求。例如, 比單居:的形狀係數’多層單元(MLC“夬閃記憶體設備 匕單層h(SLC)快閃記憶體設備具有更高的容量。娜 I uper AND快閃記憶體則被發明用於避開快閃 識産權問題。同時’大頁面(2κ位元組)快 ^己憶體比小頁面(512位元組)快閃記憶體具有更好的 _ β此此外,快閃記憶體的快速發展使得設備的容量 斷提问。爲了支援這些不同類型的快閃記憶體,快閃記 體控制器必須能夠相應地進行檢測和存取。 在本發明的思想和範圍之内,可同時或獨立實現上述 新穎特點。例如’圖4爲本發明另一個實施方案的電子 16 1351605 貢料快閃記憶體卡 卡)。根據上述-個或多個實施;:儲:介質、積體電路 體卡〗。C顿介面匯流排或讀方卡案器,;”料快閃記憶 被主機Μ存取,由卡身K:、處訊連接裝置) 快閃記憶體設備3C構成,其中處理單元 個或多個 控制器21C和輸入/輸出介面電路5 子^隐體 記憶體卡_可以是上述電子資料快資料快閃 他UL 吖丙冈名憶體卡10 A的功
此子系統’也可以是其他應用系統的功能子系統。 快閃記憶體設備3C受快閃記憶體控制器21 命令控制,並在快閃記憶體設備中儲存資料槽案〇生 —處理單元2C通過上述輸入/輸出介面電路與㈣ 體叹備連接。處理單元2C _的快閃記憶體控制器he ^ 過一個或多個上述方法控制快閃記憶體設備3C。在本發明 實施方案中’快閃記憶體控制器21C通過執行快閃 記隐體類型演算法(利用存儲於唯讀記憶體(r⑽)(、圖 中未示)的快閃記憶體控制器邏輯靜態部分)# 憶體設傷3 C是否被去接•如婁β “此,,认 § 型,則新❾快閃記憶體類 制器快閃記憶體設備3C中的快閃記憶體控 制15邏輯動態部分。 另方面,啟動輸入/輸出介面電路5C後,通過介面 借:裝置和主機9A建立Β〇τ通訊。主機和快閃記憶體設 以下也稱爲“ USB設備,,)USB介面電路之間有四種 類型的USB軟體通訊資料流程:控制、中斷、批量和同步。 控制傳輸是主機通過控制管道向USB設備發送的資料流 17 1351605 程,用於向USB設備提供配置和控制資訊。中斷傳輸爲小 資料$、非周期性、固定等待時間 '設備發起的通訊通 常用於通知主機USB設備所請求的服務。如果沒有即時性 要求,通過USB介面電路移動的大塊資料可採用批量傳 輸。同步傳輸在同步資料工作時使用。同步傳輸在主機和 USB „又備之間提供周期性和連續性的通訊。介面電路 通常支援兩種資料傳輸協定:CBI協定和Β〇τ協定。海量 儲存類CBI傳輸規^適用於全速軟碟驅動,而不適用於高 速。X備或軟碟驅動以外的其他設備(由usb規範確定)。 在本發明實施方案中中’aUSB,决閃記憶體設備和主機之 ^傳輸问速資料只採用Β〇τ協定。由於傳輸的命令、 資料狀態同時傳輸到批量終端點和默認控制終端點,所 OT疋種比CBI協定更加高效和快速的傳輸協定。 根據刖述實現方案’當處理單元2C可通過選擇工作於 IS程模式下時’處理單元2<:啟動輸入/輸出介面電路5C 1接收來自主機9A的警魏#电μ , 據主機9A發送至快 _ $ M 的寫入命令,把資料檔案儲存到快閃 時·,-、= %中;當處理單& %工作於資料讀取模式下 21C的螬么 &據主機9A發送至快閃記憶體控制器 令和存取㈣於快閃記憶體 檔案的命令接收快閃記 J貝竹 巾的資料,並啟動輸 元-工作於資料重==傳―當處理單 體設備3C中被擦除。 時’資料槽案將從快閃記憶 18 1351605 本發明中智慧處理單元2C的優點包括: (1) 高集成度,大大減少了所需空間、複雜度和製造 成本; (2) 通過把軟體程式和資料保存在快閃記憶體中,降 低了控制器成本; (3)採用先進的快閃記 憶體的存取速度。 以下爲本發明中所使用的術語定義。塊:基本記憶艘 擦除單元。各塊包含一定數量的磁區,例如16、32、64 等。如果某個磁區發生寫入錯誤,則整個塊即被確認爲壞 塊,並且該塊内其他全部有效磁區將被重新放置到另一個 塊中。磁區:塊的子單元。典型的磁區由兩個段榛成·-資 料段和備用段。過期磁區:在編程過程t存儲 而 該資料又隨後被更新的磁區。資料被更新後,過期資料被 保留在過期磁區中,而更新後的資料則被寫入新磁區,新 磁區即成爲有效磁區。無效塊:包含過期磁區的塊。有效 :區丄在編程過程中存儲了資料並且該資料爲當前(未過 區,平衡:爲了延長快閃記憶體的使用 勾分配各快閃記憶體塊擦除次數的方法。快閃記 隐體塊只能承受有限次的擦除操
,ά μ ^ ^ ^ „ 例如,典型的NAND 决閃屺憶體的最大擦除次數爲一百 憶體中的保留空間。備用塊使 :塊.快閃圮 備處理壞塊…爲了改善存儲性能==可以提前準 存取指標的多個資料磁區。在小:業系統用作文件 °己隐體操作中,一個 19 1351605 簇通常由兩個資料磁區構成’簇爲最小的文件大小單元。 典型的記憶體小塊的簇大小爲ik位元組(即各磁區大小 爲512位元組),記憶體大塊的簇大小爲仆位元組(即各 磁區大小爲2, 112位元組^ FAT:保存指向文件地址指 標的文件分配表。簇是FAT指向的最小單元。例如,ρΑτΐ6 是指簇的地址爲16位。目錄和子目錄:作業系統所定義 的文件指標。主引導記錄(MBR):用於儲存根目錄指標 和相關引導文件(如果可引導)的固定值置。該固定位置 爲第一個塊的最後一個磁區,如果第一個是壞塊,則爲第 二個塊的最後一個磁區。包:USB基本事務單元的可變長 度格式。一個常規的符合USB規範的事務通常由三個包__ 權標(Token)包、資料包和信號交換/交握(Handshake)&。 權標包有IN,〇UT和SETUP三種格式。資料包的大小可 變,例如,USBU版爲64位元組,USB2 〇版爲512位元 組。信號交換/交握包有ACK或NAK格式,用於通知主機 事務是否完成。晝面(Frame):批量事務處理,如果usb 流量爲低,則對佔有畫面具有高優先順序。如果usb流量 爲高,批量事務也能等待後續畫面。終端點:三個終端點 包括控制、批量輸人和批量輸出。控制終端點用於系統初 始牧舉。批量輸入終端點用作主機系統讀取資料管道。批 量輸出終端點用作主機系統寫入資料管道。命令塊包 (CBW): —個命令塊包包含一個命令塊和相關資訊,例 如資料傳輸長度(例如512位元組,從第8位元组至第u 位疋組)。CBW開始f包邊界,結束於第3 1位元組(位元 20 1351605 組_3〇),以小包形式傳送。全部CBW傳輸都應按照從 最低有效位元(位元組0)向最高有效位元的順序排列。 命令狀態包(CSW): CSW開始于包邊界。精簡塊命令 (RB C) SCSI協定· 10位元組命令描述符。 圖5爲本發明另一個實施方案的電子資料快閃記憶體 卡(記憶體系統)100方框圖。快閃記憶體系统1〇〇通過 介面轉換邏輯1〇2和主機系統52相連,介面轉換邏輯ι〇2 負責爲微處理器104處理資料和時序校準。根據不同的應 用環境,介面轉換邏輯102相容多種格式,例如usb、 Pd-Express、CF、SD、MMC、Ms、ΙΜ 等。主機系統 52 可以是個人電腦(PC)、數碼照相機、Mp3播放器等。 微處理器104在快閃記憶體系統1〇〇内部執行讀取、 寫入、擦除操作、塊管理操作和其他内務操作。塊管理操 作包括複製和擦除操作,通過後臺運行1,對主機系統 52隱蔽。唯讀記憶體(R〇M) 1〇6用於儲存微處理器 操作執行代碼。 微處理器104通過仲裁邏輯1〇6對快閃記憶體系統ι〇〇 的各快閃記憶體設備110a、11〇15和u〇c分別執行塊管理 操作。仲裁邏輯可通過硬體邏輯或可編程邏輯設備實現 (例如,現場可編程閘陣列(FPGas ))。 暫存器文件112爲快閃記憶體設備丨1〇a c分配邏輯塊 地址。映射表114提供了快閃記憶體設備丨丨〇a c相關的資 訊索引。這些資訊包括邏輯塊地址、設備編號、實體位址 (Physicai Base Address,pBA)、有效位元和過期位。快閃 21 1351605 .記憶體介面控制器116與快閃記憶體u〇a c連接執行來 ..自處理器HM的命令。這類命令包括讀取、寫入和擦除操 作。 圖6爲本發明圖5所示快閃記憶體系統⑽的仲裁邏 輯1〇8、暫存器文件112和映射表m之間的詳細方框圖。 :主機系統52向快閃記憶體系統100發送邏輯塊位址302。 邏輯塊位址302包含一個磁區偏移位址。 φ 暫存器文件U2負責在各邏輯塊地址302和特定的快 閃記憶體設備編號之間建立聯繫。例如’若邏輯塊地址在 第一地址範圍之内,則指向快閃記憶體設備編號u〇a,若 邏輯塊地址在第二地址範圍之内,則指向快閃記憶體設備 編號110b,以此類推。仲裁邏輯108發送邏輯塊位址和相 關設備編號至映射表114。各快閃記憶體設備位址容量預 先編程保存在相應的暫存器114a-114c中供邏輯塊位址指 派。一旦各特定的快閃記憶體設備的實體位址(pBA)被 Φ 仲裁邏輯ι〇8確定,全部讀取/寫入操作都將在設備内部被 執行。 : 映射表114把各邏輯塊位址翻譯成相應的實體位址, 並把設備編號和實體位址輸出至快閃記憶體介面控制器 116。索引映射表114由一個或多個查詢表(LUT)構成, 可通過易失性隨即存取記憶體(RAM )實現,例如靜態 RAM ( SRAM )。在本發明的一個實現方案中,快閃記憶體 設備110a、ll〇b和110c分別對應映射表114a、U4b和 114c。例如,表114a儲存快閃記憶體設備n〇a的物理塊 22 1351605 地址資訊,表U4b儲存快閃記憶體設備ii〇b的物理塊地 址資訊,而表114c則儲存快閃記憶體設備u〇c的物理塊 地址資訊。映射表114把邏輯塊位址翻譯成由仲裁邏輯1〇8 ^供的特定权備編號實體位址。映射表114同時還提供有 效位的值。有效位的值在上電過程中被置零。上電後快 閃記憶體110首先被掃描以重建映射表114。 在初始化過程中,特定磁區最大量的擦除操作被編程 ?入暫存器文件1 i 2用於地址仲裁。快閃記憶體介面控制 器U6向特定的快閃記憶體設備11〇發送一系列時序信 號,執仃快閃記憶體設備11〇塊管理相關的寫入和擦除 作。 '
由於快閃記憶體設備110a_c的各暫存器可以獨立編 程,快閃記憶體系統!〇〇的各個快閃記憶體設備丨丨可 以具有不同的資料儲存容量。甚至可以採用不同品牌的快 閃記憶體設備。這種靈活性降低了總體製造成本◊在各快 閃記憶體設備l10a_c内部的頁面大小,即各物理磁區的位 兀組數應相同(例如,512位元組或2112位元組)。 圖7爲傳統塊管理操作方框圖。從圖中可以看出,有 效資料存儲在快閃記憶體設備A中塊4()4的磁區4Β、 4〇2b和402c中。在一個塊管理操作(例如,壞塊替換、 過期塊回收或損耗平衡)過程中,如果磁自4〇2a,碰 和402c變成壞塊、過期或需要進行損耗平衡,存儲在磁區 4〇2a、職和4G2e中的有效資料將被重新放置。塊管理 操作通常被稱爲内務操作。這些操作通常以後臺方式完 23 、方便後續寫入操作。本例中的塊管理操作爲壞塊替 換操作。 從圖中可以看出,有效資料首先被重新放置(即複製) /外。P緩衝區406 +。然後在其他快閃記憶體設備中執行 二用好塊(即功能塊)搜索程式。傳統的快閃記憶體系統 多個快閃記憶體設備當作統一的全局單元處理。相應 全。卩决閃s己憶體設備的塊都按照全局地址方案分配地 址,每樣,全部快閃記憶體設備都將進行搜索。如果在另 個決閃記憶體設備B的塊4〇8中搜索到可用好磁區,則 把有效資料複製到快閃記憶體設備B的好磁區中。在其他 塊管理操作中,外部緩衝區406起相同的作用。 圖8是爲本發明的塊管理操作方框圖。從圖中可以看 =,有效資料存儲在快閃記憶體設備504中的塊503的磁 區502a、502b和502c中。在塊管理操作過程中,存儲在 磁區502a、502b和502c的有效資料將被重新放置。 在本發明中,各快閃記憶體設備執行獨立的塊管理操 作’並在各快閃記憶體設備邊界内部執行1句話說,在 塊管理操作過程中’存儲在快閃記憶體設肖110a.中的有 效資料被重新放置在同一個快閃記憶體設備内部的最佳 位置(即,資料不是轉移到其他快閃記憶體設備u〇b或 1 中八傳統塊管理操作把有效資料重新放置在不同的 快閃記憶體設備中,與傳統塊管理操作相比,本發明通過 把有效資料重新放置操作限制在同一快閃記憶體設備之 内,提高了總體系統的性能。傳統塊管理操作存在的問題 24 塊索範圍太大’需要搜索多個快閃記憶體設 圖7所示的Γ塊管理操作要求使用外部緩衝區(例如, 體設備傳轸到If衝區4 0 6 )。把有效資料從—個快閃記憶 =將增加總體操作時間。本發明通過對各快閃= 作可r仃獨立的塊管理操作來解決該問題,這樣塊管理操 e U在各快閃記憶體設備的内部執行。 、
另—個優點是塊管理操作可以在多個快閃記 :的性Γ 發生,從而進一步提高了快閃記憶體系 、 例如’第一個資料重新放置操作可以在第一個 :閃=設備内執行,同時第二個資料重新放置操作在 憶體設備内執行。同時也使不同快閃記憶體 纟擦除和編程。系統並行性的提高顯著提高了快 閃記憶體系統的性能。 本例中的塊管理操作爲壞塊替換操作。如果磁區
5〇2a 5G2b和5G2e變成壞磁區,則存儲在磁區5G2a,502b 和502c的有效資料將被重新放置。在本實施方案中,有 效資料將被複製到内部緩衝區灌中。内部緩衝區5〇6是 在快問記憶體設備5〇4内部功能正常的易失性記憶體磁 區。在本發明的-個實現方案中,易失性記憶體磁區的塊 被預留用於向各快閃記憶體設備提供内部緩衝H 506,這 樣可以減少對外部搜索的需求(即在快閃記憶體設備的邊 界之外的搜索)可用好塊搜索在快閃記憶體設備⑽内部 〆、他4刀中執行各快閃記憶體設備的全部塊地址都根據 25 1351605 •分散式地址方案分配,如圖8所示,同時全部搜索都被限 制在快閃記憶體設備的邊界之内。 搜索到好塊之後,有效資料將被複製到一個或多個好 塊中。無論哪種情況,相比於圖7所示的傳統多晶片搜索 方法’單晶片搜索大大降低了搜索時間。同時,由於壞塊 操作發生在快問記憶體設肖5〇4内冑,有&資料重新放置 時間大大減少。本發明消除了對外部缓衝區的需求。相應 地,由於無需k有效資料轉移料部快閃記憶體設備 5〇4,重新放置時間也大大減少。 本發明的其他塊管理操作過程中,内部緩衝區—也 起相同的作用。另一個方案時,在塊管理操作過程中,有 效資料無需先被存儲到内部緩衝區5〇6中而被直接重新放 置到好磁區中。 本發明中,各快閃記憶體設備作爲獨立定址單元工 作,並且塊管理操作在各快閃記憶體設備邊界之内發生。 ^地I發明的另—個優點是在同一個快閃記憶體系統 之内可以使用不同容量的快閃記憶體設備。 圖9是本發明的,决ω 苦止 ㈣閃6己憶體塊管理方法高級流程圖。 動個快閃記憶體設備的快閃記憶體系統中啓 I考步驟⑼2。在本實施方案中爲塊管 考步驟6〇4。下一步=記憶體設備之内搜索目標塊’參 源塊向目的塊被重新放置效閃記憶體設備内部從 快閃記憶體設備可同時理:6。相應地’多個 吁執仃塊管理操作。在多個快閃記憶 26 1351605 各快閃記憶體設備都在各 各快閃記憶體設備都能進 體設備執行塊管理操作過程中, 自内部執行獨立的塊管理操作。 行獨立、同步的塊管理操。
圖ίο爲本發明的快閃記憶體設備7〇〇的詳細方框圖, 該方框圖可用於實現圖5所示的快閃記憶體設備。快閃記 隐體叹備7GG被分配了—個邏輯塊地址㈣,邏輯塊位址 的範圍由圖5所示的仲裁邏輯⑽決^。快閃記憶體設備 7〇〇的物理塊地址從零開始一直增加到决閃記憶體設備 7的最大谷量。圖中畫出了示列塊7〇6a、706b、706c和 706d。706a和706b分別爲第一和第二個實體位址塊而 7〇6d爲最後一個實體位址塊。 在本實施方案中’磁區(通常稱爲頁面)7〇1包含528 個位元組,其中包括512個位元組的資料段和16個位元 組的備用段。快閃記憶體設備700的資料結構由實體位址 706a、706b、706c和706d的資料段702和備用段704構 成。各段都有一定的位元組數,該位元組數由具體應用決 定。例如’資料段可以包含512位元組、2112位元組或更 多位元組’備用段可以包含16、64或更多位元組。 資料段702儲存原始資料,而備用段7〇4儲存記憶體 管理相關資訊。備用段704包括有效磁區段710、過期磁 區段712、壞塊指示段714、擦除計數段716、錯誤校正代 碼(ECC)段718和邏輯塊位址磁區位址段720。有效磁 區段710用於指示是否磁區中的資料可被有效讀取。過期 磁區段712爲標誌段,用於指示磁區中的資料是否過期標 27 1351605 誌。若發生了後續的寫入或擦除操作,則過期標誌可以被 修改。壞塊指示段714用於指示壞塊。在本發明的一個實 施方案中,把0值存儲於壞塊指示段7 14用於指示該塊已 被損壞。若嘗試寫入特定磁區或擦除特定塊失敗,則認爲 該塊爲壞塊。在具體的實現方案中,壞塊指示由工廠設置 確定。快閃記憶體系統的固件通過掃描各塊的第一磁區來 確定資料是否能被存取。完整的掃描資訊隨後被保存到各 快閃記憶體設備最後的塊中。 在本實施方案中’用兩個位元組(16位元)來記錄各 塊(16磁區)的壞塊資訊。用兩個磁區(1〇24位元組) s己錄快閃記憶體設備(最多5 12個塊)的壞塊資訊。爲了 達到更咼的可靠性,儲存了八份完全相同的壞塊資訊備 伤’以避免在標誌、記錄過程中發生磁區變壞事故^爲了實 現快速存取,這些八份備份都存儲在各快閃記憶體設備的 最後一個塊位置706d中》壞磁區指示段714被保存在最 後塊706d中,以便更方便地被快閃記憶體系統的固件讀 取0 擦除計數段716用於記錄一個塊將在該快閃記憶體設 備整個使用壽命内被擦除的次數。擦除計數段716包含三 個位元組,最多可記錄1 6〇〇萬次塊擦除操作。ECC段7 i 8 包含六個ECC位元組,以確保資料一致性。衆所周知, EEC是一種非常先進的方法,用於錯誤檢測和校正。邏輯 塊位址磁區段720用於電源備份和系統重入。由於快閃記 憶體系統的映射表存儲在易失性記憶體中,因此在掉電過 28 1351605 程中,無法保存有效磁區的資訊。在系統初始化和停電 時’邏輯塊位址磁區位址段72〇用於重構映射表。邏輯塊 位址磁區位址段720記錄了先前的寫入操作、有效磁區和 過期磁區資訊以便重構映射表。設定了新的資料結構後, 陕閃記憶體系統的固件可以修復懸空鎮。這可以通過校核 存儲在快閃記憶體設備中快閃記憶體陣列的FAT表實現。 圖11爲本發明資料存取方法流程圖。快閃記憶體系統
初始化後,通過查詢快閃記憶體陣列識別號(ID )確定快 閃記憶體設備中快閃記憶體陣列的容量,參考步驟8〇2。 同時,掃描各快閃記憶體設備的實體位址以確定現有壞磁 區(步驟802 )。該判斷可以通過讀取壞塊指示段實現。. 邏輯塊位址的範圍通過編程寫入快閃記憶體控制器的 暫存器文件’參考步驟8〇4。給定一個快閃記憶體設備, 由於該快閃記憶體設備中部分空間被預留用於壞塊替 換所以物理塊地址的範圍比邏輯塊地址的範圍大。例 如,把快閃記憶體陣列的1〇%用作保留空間是比較合理的。 下步,從主機系統接收邏輯塊位址磁區位址、資料 和命令,參考步驟_。採用簇資料緩衝和寫人後高速緩 衝策略以提高快閃記憶體系統的性能。下一步,由映射表 較快閃記憶體設備編號和實體位址,參考步冑8〇8。下 步’分析來自主機系統的命令’參考步冑講。如果該 命令是讀取命令,則鈾 J執仃讀取刼作,參考步驟8丨2。然後, 校核讀取操作獲件的資料,參考步驟8⑷利用ecc段位 几組中保存的f訊校核資料。如果資料校核正確,則把資 29 1351605 料返還主機系統,參考步驟8i6 料不正確,…咖操作…二 一如果該命令爲寫入命令(參考步驟8ι〇爲“ 執灯寫入操作。寫入操作所需要的時門明疋 作所需要的時間長。例如,寫 _ &執行讀取操 取操作所需時間的…。首=杳需二間可能比讀
可用磁區),參考步驟820。如要^查自由磁區(即, ^ £ . 自由磁區的數量低於自由 磁=值’則通過垃圾回收操作回收塊,參考步請。 如果自由磁區的數量不低於自由磁區的閥冑,則把資 :::閃記憶體設備,參考步驟㈣。寫入操作完成 後,即可確定寫人操作是成功還是失敗,參考步驟心 如果寫入操作成功,則結束寫入操作,參考步驟似。如 果寫入操作失敗’意味著該塊是壞塊,則執行壞塊操作, 參考步驟830 » 通常,若某個塊是壞塊,則該磁區中的資料不可靠。 即使-個塊令只有一個磁區爲壞磁區,這個塊就將被確定 爲壞塊。冑了確保資料的可靠性,資料將不再賦值到壞塊 中,而是重新分配至好塊令。相應地,儲存在壞塊中有效 磁區的資料將被轉移到好塊中供進一步參考。該操作稱爲 壞塊替換。快閃記憶體設備將在内部發出回拷命令用於減 少事務處理時間。 、' 圖12爲本發明的壞塊替換方法流程圖。壞塊中壞磁區 的位置被記錄在快閃記憶體設備的最後兩個塊的保留區 中,參考步驟902。在本發明的一個實現方案中,各塊都 30 1351605 .由16個磁區組成。另有十六個位分別與著十六個磁區相 關聯。迫些位元用於指示壞磁區。相應地,如果某個位爲 〇,則表明相關的磁區爲壞磁區,而整個塊即被確認爲壞 塊。這些位元的编程方式是通過讀取整個磁區的值,然後 把原值和位值相加,最後寫入來實現。爲了確保正確性, 固件將生成四個備份。全部八個塊(4χ2塊)都位於各快 閃記憶體設備的最後空間中。在磁區的使用壽命期限内, φ 每個位將被設置一次,用於指示壞磁區的位置。 下一步,確定是否有寫入命令,參考步驟9〇4。如果 讀取操作失敗且沒有寫入命令,壞塊磁區中的有效資料即 破確認,參考步驟906 ^如果有寫入命令(參考步驟9〇4 爲“是’’),則在同一個設備之内執行可用磁區搜索操 作,參考步驟908。如果沒有足夠數量的可用磁區,則執 行垃圾回收操作,參考步驟91〇,直到有足夠數量的可用 磁區。如果有足夠數量的可用磁區,映射表的邏輯塊位址 • ㈣更新,參考步驟912。下一步,寫入操作完成參考 * 步驟914。寫入操作完成後,壞塊中磁區的有效資料被確 ‘ 冑’參考步驟9G6°若寫人或擦除操作失敗,則執行該操 作。 下一步,確定好塊的目的磁區,用於重新分配壞塊的 有效資料,參考步驟916。下一步,有效資料被重新放置 (即,複製)到目標磁區中,參考步驟918。在重新放置 過程中,在快閃記憶體設備内部執行回拷操作,以避免外 部通信並提高快閃記憶體系統的性能。下一步,快閃記憶 31 1351605 •體控制器中的映射表被更新以反映變化供以後資料存取 用,參考步驟920。下一步,確定是否全部來自壞塊的有 效資料都已經被轉移到好塊中,參考步驟922。如果沒有, 操作迴圈回到塊906。如果全部有效資料都已經被轉移, 則壞塊替換操作結束。 . 圖13爲本發明的垃圾回收操作方法流程圖。垃圾回收 ' 操作是在各快閃記憶體設備邊界之内執行的單晶片操 φ 作。相應地,多個垃圾回收操作可以同步在各快閃記憶體 設備内部發生《首先,在快閃記憶體設備内部進行搜索, 以定位含有最多過期磁區的過期塊,參考步驟1〇〇2。特別 地,固件通過掃描整個過期磁區段以確定各塊過期磁區的 數量。搜索結果存儲在暫存器中。暫存器用於指示含有最 多過期磁區的過期塊。例如,用四個暫存器指示含有最多 過期磁區的四個過期塊。掃描結果和邏輯塊位址的值被同 時保存用於更新位址映射表。同時,不同的暫存器組被同 • 時用於記錄該設備中含有最多過期磁區的四個有效塊。目 • 的是在把有效磁區重新放置到目標(有效)塊中之後擦除 -個過期(源)塊。這四個暫存器組用於提供最匹配的源 塊和目標選擇。 下一步,確定源塊中有效磁區的數量,參考步驟1〇〇4。 下一步,確定有效磁區的位址,參考步驟1〇〇6。這些位址 指向的有效磁區被稱爲目的磁區。下一步,執行回拷操作 把有效資料從過期(源)塊向目標磁區進行複製,參考步 驟1008。在回拷操作中,有效資料可以臨時存儲在内部緩 32 1351605 衝區中。 下一步,確定在垃圾回收操作中是否出現了壞磁區, 參考步驟1〇1°。如果出現了壞磁區,則執行壞塊重新放置 =,參考步驟觸。如果沒有出現壞磁區,源塊(含有 最多過期磁區的塊)將被擦除並且這個塊各個位的值將被 =卜參考步驟1〇14。下—步,確定擦除操作是否失敗, 步驟1〇16。如果擦除操作失敗’則執行壞塊重新放置 操作,參考步驟1〇18。如果擦除操作沒有失敗則過期塊 的:圾回收操作完成’映射表被更新以反映修改供後續寫 :::用:參考步驟1020。下-步,擦除計數段中被擦除 鬼的擦除汁數增加,參考步驟1〇22。 圖14爲本發明的損耗平衡操作方法流程圖。在沒有來 ^機系統的資料傳輸請求時,損耗平衡操作將後臺運 :傳Si衡操作過程中有可能會收到來自主機系統的資 ° °損耗平衡操作通常把有效f料從低擦除計數 録斗Γ尚擦除計數的塊。低擦除計數的塊將被擦除,其 ::二將增加。這一操作過程可以通過降低塊的最高擦 二使其接近平均設備擦除計數的方法來平衡塊的擦 二。該過程同時推遲了給定塊達到其最大擦除計數的 B子間。 ,先固件讀取各塊擦除計數段中的擦除計數,並確 1102記憶體設備的平均設備擦除計數,參考步驟 數,间if後確疋全部快閃記憶體設備的平均全局擦除計 7參考步冑11〇2。+均設備擦除計數值存儲在各快 33 1351605 閃記憶體設備的暫存器中,參考步驟11〇4。 ^ ^ Rfl 'tp 憶體設備,如果平均設備擦除計數大於設備閥值計數3 器的值,則設備閥值計數將被更新爲該值。同理,如: 均全局擦除計數大於全局閥值計數暫存器的值,=平 王局闕值 S十數將被更新爲該值。這些值今後都將被用到參考步驟 1104。在本發明的一個實現方案中,指定了三個暫存器= 於保存各快閃記憶體設備的擦除計數值。第一個暫存器儲 存特定的快閃記憶體設備的平均擦除計數,稱爲設備擦除 計數。第二個暫存器儲存特定的快閃記憶體設備的平均擦 除計數,稱爲設備閥值計數。第三個暫存器儲存全部快閃 記憶體設備的平均擦除計數值,稱爲全局閥值計數。例 如,设備閥值計數可設爲5, 〇〇〇,全局閥值計數可設爲 20,000。這兩個值同時被預編程成爲快閃記憶體系統初 始化的一部分。 下一步,確定快閃記憶體設備的設備閥值計數是否大 於或等於全局閥值計數’參考步驟11〇6。如果不是,確定 該设備的設備擦除計數是否大於或等於設備閥值計數參 考步驟1108。如果不是,損耗平衡操作結束。如果是,確 定備中具有最高擦除計數的塊,參考步驟mo。下一 步’確定設備中具有最低擦除計數塊,參考步驟m2e下 一步’具有最低擦除計數的塊中的有效資料被重新放置到 另一個塊中,參考步驟1114〇下一步,具有最低擦除計數 的塊被擦除’同時其擦除計數增加,參考步驟1116。下一 步’具有最高擦除計數的塊中的有效資料被重新放置到具 34 1351605 有最低擦除計數的塊中,參考步驟1118。 卜—步,更新映 射表,參考步驟112〇。下一步’設備閥值計數增加 、 步驟1122。損耗平衡操作結束。 一個快閃記憶體設備的塊管理操作可能同時牵涉到 個快閃記憶體設備,此時有效資料通過外部從一個快閃呓 憶體設備向另一個設備被重新放置。這從 迟 个貝上徒向快閃 記憶體設備系統的總體性能。在另一個特定的實施方案 中,如果某個特定的快閃記憶體設備進行塊管理操作,其 擦除計數高於其他㈣記憶體設備,有效資料可通過外部 從一個快閃記憶體設備向另一個執行重新放置操作,以達 到不同快閃記憶體設備之間的平衡。在本發明中,既包括 内部重新放置又包括外部重新放置。 返回步驟1106,如果快閃記憶體設備的設備間值計數 大於或等*全局肖值計《’料定設備中具有《高擦除叶 數的塊’參考步驟1128。下一步’確定具有最低平均擦除 計數的快閃記憶體設備,參考步驟113〇。下一步,確定設 備中具有最低擦除計數的塊,參考步驟1132。下一步具 有最低擦除計數的塊中的有效資料被重新放置到另一個 塊中’參考步驟1134。下一步,具有最低擦除計數的塊被 擦除,其擦除計數增加,參考步驟1136。下一步,具有最 高擦除計數的塊中的有效資料被爲重新放置到具有最低 擦除計數的塊中,參考步驟1138。在本發明的一個實施方 案中’有效資料被移動到另一個快問記憶體設備中。下一 步’更新映射表’參考步冑114〇。下一纟,全局閥值計數 35 1351605 增加’參考步驟1142»損耗平衡操作結束。
本發明中的快閃記憶體控制器可以執行多塊資料存 取。傳統快閃記憶體設備内置一個512位元組的頁面暫存 器。寫入快閃記憶體設備的資料首先要寫入該頁面暫存 器,然後才此寫入快閃記憶體陣列。傳統的快閃記憶體控 制器及其固件控制著快閃記憶體系統存取周期。傳統快閃 記憶體控制器每次只能傳輸一個塊(5丨2位元組)的資料 到快間記憶體設備的頁面暫存器中。如果512個位元組的 頁面暫存器已被寫人,則不能對該快閃記憶體設備進行其 他存取。相應地,傳統快閃記憶體控制器使用單塊資料存 取技術,這限制了快閃記憶體系統的性能。 在本發明中,快閃記憶體控制器採用大小爲2〇48位、 組或更大的頁面暫存器。本發明中的快閃記憶體控制器』 夕塊存取控制器,通過同時向快閃記憶體設備發送多塊】 料來寫人頁面暫存器。與傳統的單塊資料傳輸控制器4 比’該控制器顯著提高了資料傳輸的性能。
本發明中的快閃記憶體控制器可同時進行雙通道J 從而進步改善了快閃記憶體系統的性能。雙通道t 數可提供第二通道,+
道或 自由通道,用於執行快閃記I 體控制器和快Μ < I ^ Κ閃《己憶體設備之間的事務。傳統快閃記憶漫 控制器採用單記悟挪成令M 4
隐體匯流排結構,多個快閃記憶體設備F 時與匯a排連接。然而,傳統的單通道架構限制 閃記憶體控制器的性能。 傅統1 在本發明tb '于’至少採用了兩條記憶體匯流排。各條^ 36 ^51605 $體匯流排都和獨立的快閃記憶體設備相連。記憶體控制 I可以同時或單獨存取各快閃記憶體設備。結果,操作執 行可達到採用雙通道處理的兩倍速度。此外,各記憶趙匯 流排還可以進一步擴展爲多條記憶體匯流排結構。 本發明的快閃記憶體控制器還可進行交錯式操作。傳 統决閃記憶體控制器採用單記憶體匯流排結構,多個快閃 記憶體設備同時與匯流排連接U,傳統快閃記憶體控 制器每次只能存取一個快閃記憶體設備,而這限制了 的性能》 本發明中,至少採用了 —個或兩個記憶體控制信號(例 片選和忙)。此外,共用的記憶體匯流排至少有兩個快 :記憶體設備與之相連。當-個快閃記憶體設備爲讀忙或 時’本發明中的快閃記憶體控制器可存取另-個快閃 :己憶體設備。相應&,本發明中的快閃記憶體控制器充分 利用了共用記憶體匯流排,從而顯著提高了性能。此外, 通過共用記憶體1〇和控制作 ^ ^ ^ 押徑制仁滅:’減少了快閃記憶體控制 器的管腳數量。這傕#閉#,墙胁4 便陕閃记憶體系統的成本實現了最小 化0 本發月巾纟單個快閃記憶體設備的記憶體存 期中同時集成多塊存取枯偷欠 ' ^ ^ 取技術,多記憶體交錯技術和多通道 操作技術,使其達到了最佳性能。 本發明提出的系統和方法呈 ,/、有諸多優點。例如,大大 提尚了快閃記憶體控制器在 役制器在塊管理操作過程中的搜索可 用好塊的速度。同時,消除了 ’、了決閃記憶體控制器對外部緩 37 ^31005 :區此外’快閃記憶體控制器支援多塊資料存 雙通錢理和彡存料元交料存取。相應地,大大 楗而了塊管理操作執行速度。 本發明主要介紹了快閃記憶體塊管理系統和方法。該 器統和方法提出了 一種配有處理器的快閃記憶體控制 用於執仃快Μ記憶體系統操。這I的操作是指塊管理 '作’具體包括壞塊處理、過期塊回收和損耗平衡操作。 理器利用來自仲裁邏輯的資料,對快閃記憶體系統中特 定的快閃記憶體設備執行這些操作。由於這些操作都發生 在特定的快閃記憶體設備内冑,處理器可以利用來自仲裁 α輯的貝料把可用好塊搜索限定在特定的快閃記憶體設 備内部。同時’在有效資料被重新放置前的搜索過程中, 處理器可以利用快閃記憶體設備的内部緩衝區來儲存有 效資料。結果,可用好塊搜索時間大大減少,同時消除了 對外部緩衝區的需求。相應地,塊管理操作的執行速度將 顯著提高。 雖然本說明書介紹的是帶有或不帶有指紋識別功能的 電子資料快閃記憶體卡,在本發明思想和範圍之内,本發 明同樣適用於其他類型的記憶體系統。此外,雖然本文所 介紹的是USB標準,在本發明思想和範圍之内,本發明同 樣適用於其他標準。此外,本發明的方案可通過硬體、軟 體、包含程式指令的電腦可讀介質或其組合實現。相應 地’通過相關技術對本發明進行的修改仍在以下權利要求 的思想和範圍之内。 38 【圖式簡單說明】 爲本發明-個實施方案的帶有指紋識別能力的電 子資料快閃記憶體卡方框圖。 圖2爲本發明另一個實施方案的電子資料快閃記憶體 卡電路原理方框圖。 圖3爲本發明另一個實施方案的電子資料快閃記憶體 卡採用的處理單元方框圖。 圖4爲本發明另一個實施方案的電子資料快閃記憶體 卡電路原理方框圖。 圖5爲本發明另一個實施方案的快閃記憶體系統方框 圖。 圖6爲本發明圖5所示的快閃記憶體系統仲裁邏輯、 暫存器文件、映射表之間介面的詳細方框圖。 圖7爲傳統塊管理操作方框圖。 圖8爲本發明的塊管理操作方框圖。 圖9爲本發明快閃記憶體壞塊方法管理高級流程圖。 圖10爲本發明快閃記憶體設備的詳細方框圖,該詳細 方框圖可用於實現圖6和圖8所示的快閃記憶體設備。 圖11爲本發明的資料存取方法流程圖。 圖12爲本發明的壞塊替換方法流程圖。 圖13爲本發明的垃圾回收操作方法流程圖。 圖14爲本發明的損耗平衡操作方法流程圖。 39 丄 % 丄 【主要元件符號說明】 卡身l,ic 快閃記憶體設備 指紋感測器 4
顯示單元6,6A
處理單元 2,2A,2C 353C, 110a,ll〇b,110c,504,700 輸入/輪出介面電路 5,5A,5C 電源 7
功能鍵 8,8A 電子資料快閃記憶體 讀卡器12 主機 9,9A 卡 10,10A,10C,100 介面匯流排 13 快閃記憶體控制器21,21(: 重置電路 23 功率調節器 22 主機系統 52 微處理器 104 介面轉換邏輯 102 ROM 106 仲裁邏輯1〇8 暫存器文件112 映射表114 暫存器114a,114b,114c
快閃記憶體介面控制器 116 LAB磁區地址 3〇2 磁區 402a,402b,402c,502a,502b,502c 快閃記憶體設備A中塊 404 外部頁面緩衝區 406 快閃記憶體設備B的塊 408 快閃記憶體設備504中的塊 503 内部頁面緩衝區 506 磁區(通常稱爲頁面)701 資料段702 備用段704 40 1351605 示列塊 706a,706b,706c,706d 有效磁區段710 過期磁區段712 壞塊指示段7 14 擦除計數段716 錯誤校正代碼(ECC)段718 邏輯塊位址磁區位址段720 步驟 602,604,606,802,804,8 06,808,810,812,814,816,818, 820,822,824,826,828,83 0,902,904,906,908,910,912, 914,916,918,920,922,1002,1004,1006,1008,1010, 1012,1014,1016,1018,1020,1022,1102,1104,1106, 1 108,11 10,1112,1114,11 16,1118,1120,1122,1128, 1 1 30,11 32,1134,1 136,1 138,1 140,1142

Claims (1)

135,1605 ft? 第961329M號,100年4月修正頁 十、申請專利範圍: 、 種電子貝料快閃記憶體卡,可通過建立通訊連接 被主機存取’該電子資料快閃記憶體卡包括: 一卡身; ,外個或多個安裝於該卡身的快閃記憶體設備,快閃記 隐體叹備包含數個非揮發性記憶體存儲單元用於存儲 料檔案; 文裝於卡身的輸入/輸出介面電路,用於建立和主機 之間的通訊; ㈣=於卡身的快閃記憶體控制11 ’與所述的快閃記 =权備和所料輸人/輸出介面電路之間的電氣連接,其 中快閃S己憶體控制器包括: (,記憶體控制器的處理單元根據快閃 ❹Μ指令碼確定—㈣記憶體設備是否被支援的手 段, ⑴識別快閃記憶體設備無效存儲單S的仲裁手段, 以及把物理位址指派給一邏輯塊位址的仲裁方法,其中, 各所述物理位址對應多個快閃記憶體設備存儲單元; 、C 于段以操作其下之一: 一可編程模式:在該模式 制器啟動輸入/輸出介面電路以接=閃記憶體控 匕並且把資料檔案儲存到上述快閃記憶體設備的 理位址’其係通過上述仲裁手段被指派給第一 42 7塊位址,上料編㈣式由從主機 憶體控制器的相關寫入命令啓動; 決閃5己 貝料讀取模式·’在該模式下,上述 控制器接收主機發出^己隐體 址’並啟動上述輸入/:/八取面命雷令和第—邏輯塊位 a韌入/輸出介面電路讀取第一 址的資料檔案傳送給主機;以及 位 一資料重定模式^
記憶體設備被擦除模式下’資料稽案將從快閃 所述的電子資料快閃記憶 第一快閃記憶體設備和第 2 *如申請專利範圍第1項 體卡,其中快閃記憶體設備包含 二快閃記憶體設備。 如申請專利範圍第2項所述的電子資料 體卡,#中笛一也于貝抖快閃記憶 -伊門 閃職體設備包含第—組相單元,第 —决閃記憶體設備包含第二組存儲單元’且 几第 儲單元大於或等於^二組存 ’、中第—組存 >巾4專利範圍第2項所述的電子資料快閃 nl中所述仲裁手段包括在第—快閃記憶體設備h 執:編程操作,資料讀取操作或資料重定 項’並且同步在第二快閃記憶體設備中 的- 作,資料讀取操作或資料重定操作中的—項的手段。程細 43 5 .如申請專利範圍第l Ji你· .+· Μ # jm _i. ^ . 項所述的電子資料快閃 體卡’其中所述仲裁丰ρ 4 & 内「Ί 6己憶 m☆括該快閃記憶體設備中功r在 儲早7C搜索的手段,和把— 力此存 T 個或多個無效存儲單亓知M u 第一邏輯塊位址重斩八 几相關的 心 給功能存儲單元相關的第1 理位址的手段。 耵弟一物 6·如申請專利範圍第!項所述的電子資 體卡,其中快閃記_體#偌4 U己隐 > 體備包括-個内部緩衝區,且其中 快閃記憶體控制器邱八勺人+ 、 -實體把上述資料存儲到所述第 早7L之則,在所述内部緩衝區臨 呀孖儲上述資料檔案的手段。 ⑹申凊專利範圍第1項所述的電子資料快閃記憶 其中仲裁手^還包括識別先前被指派給所述第一邏 輯塊位址的無效存儲單元的手段,識別第二實體位址所指 向的功能正常且未被指派的存儲單元的手段,以及把所述 第一邏輯塊位址重新分配給第二實體位址的手段。 如申請專利範圍第1項所述的電子資料快閃記憶 體卡’其中仲裁手段還包括識別第一邏輯塊位址中被更新 -貝料稽案的手段,把第一邏輯塊位址重新分配給第二實體 位址的手段’以及把被更新的資料檔案存儲到第二實體位 址所指向的存儲單元的手段。 9 .如申請專利範圍第8項所述的電子 體卡,其中仲裁手俨 ’诀閃記憶 m 括在破更㈣㈣純存儲到第 -實體位址所指向的存儲單元後 ttu m ^ . 代乐貫'體位址指而认 存儲早π中擦除過期資料的手段,以 0的 新分配仏第-溫實體位址重 刀3匕口第一邏輯塊位址的手段。 10=巾請專利範圍第i項所述的電子資料 =其中仲裁手段還包括第一實體位址所指向的存= 凡的第一擦除計數和第二 第二擦除計數的比較手 :向的存儲單元的 钗于奴,以及當第一擦除計數大 數時.’把資料檔案從第一實體位址的存儲單元向第 一實體位址的存儲單元傳輸的手段。 .如中請專利範圍帛1Q項所述的電子資料快閃記 心 其中快閃記憶體設備包括一個内部緩衝區,且其 _、門名隐體控制器部分包含在把上述資料存儲到所述 第-實體位址所指向的存儲單元之前,在所述内部緩衝區 臨時存儲上述資料檔案的手段。 1 2 .如申請專利範圍第2項所述的電子資料快閃記憶 n卡,甘Λ ^ ,其中快閃記憶體控制器至少支援對第一快閃記憶體 °又備和第二快閃記憶體設備進行雙通道並行存取和交錯 45 式存取兩種手段的其中之 13 j. 如申請專利範圍第1項所述的電子資 體卡,其中^A/认, 貝科快閃記憶 輸入/輪出介面電路爲通用串列匯 介面電路,該tJ ,丨1排(USB) USB介面電路包含採用bot協 的手段。 1賜疋傳輸資料
體卡i4^r":;範圍第1項所述的電子資料快閃記憶 、/入]出介面電路可採用SD介面電路、MMC 介面電路CF ;丨面電路、記憶棒()介面電路、 Ρ(:Ι-ΕΧΡ_介面電路、1DE介面電路或SATA介面電路。 46
TW96132994A 2006-09-07 2007-09-05 Managing bad blocks in flash memory for electronic TWI351605B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/471,000 US7690031B2 (en) 2000-01-06 2006-09-07 Managing bad blocks in flash memory for electronic data flash card

Publications (2)

Publication Number Publication Date
TW200813713A TW200813713A (en) 2008-03-16
TWI351605B true TWI351605B (en) 2011-11-01

Family

ID=39054843

Family Applications (1)

Application Number Title Priority Date Filing Date
TW96132994A TWI351605B (en) 2006-09-07 2007-09-05 Managing bad blocks in flash memory for electronic

Country Status (2)

Country Link
CN (1) CN101118783A (zh)
TW (1) TWI351605B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI802279B (zh) * 2022-02-18 2023-05-11 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
US11775386B2 (en) 2022-02-18 2023-10-03 Silicon Motion, Inc. Data storage device and control method for non-volatile memory
US11922044B2 (en) 2022-02-18 2024-03-05 Silicon Motion, Inc. Data storage device and control method for non-volatile memory

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291152B2 (en) * 2009-01-07 2012-10-16 Silicon Motion, Inc. Method for operating non-volatile memory and data storage system using the same
US8412880B2 (en) * 2009-01-08 2013-04-02 Micron Technology, Inc. Memory system controller to manage wear leveling across a plurality of storage nodes
TWI427476B (zh) * 2009-02-24 2014-02-21 Silicon Motion Inc 快閃記憶體的存取方法及快閃記憶體裝置
US8205037B2 (en) * 2009-04-08 2012-06-19 Google Inc. Data storage device capable of recognizing and controlling multiple types of memory chips operating at different voltages
US7888966B1 (en) * 2010-03-25 2011-02-15 Sandisk Corporation Enhancement of input/output for non source-synchronous interfaces
JP5077385B2 (ja) * 2010-04-15 2012-11-21 株式会社デンソー 車両用ナビゲーション装置
CN104077079A (zh) * 2013-03-27 2014-10-01 郑智文 闪存转接器及闪存储存装置
TWI554944B (zh) * 2014-06-20 2016-10-21 慧榮科技股份有限公司 快閃記憶體控制裝置、快閃記憶體控制系統以及快閃記憶體控制方法
US10528461B2 (en) * 2014-08-04 2020-01-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Controlling wear among flash memory devices based on remaining warranty
CN104615550B (zh) * 2015-01-27 2019-01-18 华为技术有限公司 一种存储设备坏块的处理方法、装置及存储设备
US10534716B2 (en) * 2016-07-13 2020-01-14 Seagate Technology Llc Limiting access operations in a data storage device
CN106325777A (zh) * 2016-08-24 2017-01-11 浪潮(北京)电子信息产业有限公司 一种逻辑单元管理方法及系统
KR102409760B1 (ko) * 2017-03-17 2022-06-17 에스케이하이닉스 주식회사 메모리 시스템
TWI626540B (zh) * 2017-03-22 2018-06-11 慧榮科技股份有限公司 一般及垃圾回收的資料存取方法以及使用該方法的裝置
CN107506148B (zh) * 2017-08-29 2020-03-24 郑州云海信息技术有限公司 一种固态硬盘虚拟块弃用的方法与装置
TWI633428B (zh) * 2017-09-28 2018-08-21 慧榮科技股份有限公司 資料儲存裝置與記憶體裝置之資料處理方法
CN107967125A (zh) * 2017-12-20 2018-04-27 北京京存技术有限公司 闪存转换层的管理方法、装置及计算机可读存储介质
KR20200068944A (ko) * 2018-12-06 2020-06-16 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US11061598B2 (en) * 2019-03-25 2021-07-13 Western Digital Technologies, Inc. Optimized handling of multiple copies in storage management
CN112052129A (zh) * 2020-07-13 2020-12-08 深圳市智微智能科技股份有限公司 计算机磁盘检测方法、装置、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI802279B (zh) * 2022-02-18 2023-05-11 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
US11775386B2 (en) 2022-02-18 2023-10-03 Silicon Motion, Inc. Data storage device and control method for non-volatile memory
US11922044B2 (en) 2022-02-18 2024-03-05 Silicon Motion, Inc. Data storage device and control method for non-volatile memory

Also Published As

Publication number Publication date
CN101118783A (zh) 2008-02-06
TW200813713A (en) 2008-03-16

Similar Documents

Publication Publication Date Title
TWI351605B (en) Managing bad blocks in flash memory for electronic
US7690031B2 (en) Managing bad blocks in flash memory for electronic data flash card
CN100487678C (zh) 带有闪存控制器的电子数据闪存卡
US7702831B2 (en) Flash memory controller for electronic data flash card
US20080082736A1 (en) Managing bad blocks in various flash memory cells for electronic data flash card
JP6045567B2 (ja) 不揮発性記憶のための可変オーバープロビジョニング
US7299316B2 (en) Memory flash card reader employing an indexing scheme
US8166233B2 (en) Garbage collection for solid state disks
TWI592800B (zh) 記憶體管理方法及使用所述方法的儲存控制器
JP5129484B2 (ja) デュアルメディアストレージデバイス
TWI435219B (zh) 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置
US20080071978A1 (en) Electronic data flash card with various flash memory cells
US9021187B2 (en) Logical block address remapping
TWI459202B (zh) 資料處理方法、記憶體控制器與記憶體儲存裝置
TWI421870B (zh) 用於快閃記憶體的資料寫入方法及其控制器與儲存系統
TW201947402A (zh) 記憶體管理方法以及儲存控制器
TW200915339A (en) Electronic data flash card with various flash memory cells
TW201835769A (zh) 資料寫入方法、記憶體儲存裝置與記憶體控制電路單元
JP2021533467A (ja) 論理対物理テーブルフラグメント
TWI651650B (zh) 記憶體管理方法及使用所述方法的儲存控制器
TWI805379B (zh) 基於資料優先級的風險評估方法、記憶體儲存裝置及記憶體控制電路單元
US20240078027A1 (en) Storage device including nonvolatile memory device and operating method of storage device
KR20230092173A (ko) 호스트 장치의 동작 방법, 저장 장치의 동작 방법, 및 전자 장치

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees