1.為什麼會出現壞塊
由於nand
flash的工藝不能保證nand的memory array在其生命週期中保持效能的可靠,因此,在nand的生產中及使用過程中會產生壞塊。壞塊的特性是:當程式設計/擦除這個塊時,不能將某些位拉高,這會造成page program和block erase操作時的錯誤,相應地反映到status register的相應位。
2.壞塊的分類
總體上,壞塊可以分為兩大類
(1) 固有壞塊
這是生產過程中產生的壞塊,一般
晶元原廠都會在出廠時都會將壞塊第乙個page的spare area的第6個byte標記為不等於0xff的值。
(2) 使用壞塊
這是在nand flash使用過程中,如果block erase或者page program錯誤,就可以簡單地將這個塊作為壞塊來處理,這個時候需要把壞塊標記起來。為了和固有壞塊
資訊保持一致,將新發現的壞塊的第乙個page的spare area的第6個byte標記為非0xff的值。
一般來說是第乙個和第二個page 的spare area的第1個byte 中有不是 0xff 的表示 這個是壞塊。
一塊flash 的第乙個block 出廠時必須是好的 否則表示整塊flash 不能用
3.壞塊管理
根據上面的這些敘述,可以了解nand flash出廠時在spare area中已經反映出了壞塊資訊,因此,如果在擦除乙個塊之前,一定要先check一下spare area的第6個byte是否是0xff,如果是就證明這是乙個好塊,可以擦除;如果是非0xff,那麼就不能擦除。
當然,這樣處理可能會犯乙個錯誤―――「錯殺偽壞塊」,因為在晶元操作過程中可能由於電壓不穩定等偶然因素會造成nand操作的錯誤。但是,為了資料的可靠性及軟體設計的簡單化,我們就要奉行「蔣委員長」的「寧可錯殺一千,也決不放過乙個」的宗旨。
4.補充
(1)需要對前面由於page program錯誤發現的壞塊進行一下特別
說明。如果在對乙個塊的某個page進行程式設計的時候發生了錯誤就要把這個塊標記為壞塊,首先就要把其他好的page裡面的內容備份到另外乙個空的好塊裡面,然後,把這個塊標記為壞塊。
當然,這可能會犯「錯殺」之誤,乙個補救的辦法,就是在進行完頁備份之後,再將這個塊擦除一遍,如果block erase發生錯誤,那就證明這個塊是個真正的壞塊,那就毫不猶豫地將它打個「戳」吧!
(2)可能有人會問,為什麼要使用spare area的第六個byte作為壞塊標記。這是nand flash生產商的預設約定,你可以看到samsung,toshiba,stmicroelectronics都是使用這個byte作為壞塊標記的。
快閃儲存器晶元NAND FLASH的封裝
快閃儲存器晶元nand flash的封裝 隨著目前產品小型化的需求越來越多,且可穿戴裝置的逐漸普及,工程師們對於晶元小型化的需求也越來越強烈,這個就涉及到了晶元的封裝工藝。這次,我們只針對nand flash的封裝進行介紹。晶元常用封裝有 dip qfp pfp pga bga tsop cob等封...
NAND Flash快閃儲存器壞塊的相關知識
1.為什麼會出現壞塊 由於 nand flash的工藝不能保證nand的memory array在其生命週期中保持效能的可靠,因此,在nand的生產中及使用過程中會產生壞塊。壞塊的特性是 當程式設計 擦除這個塊時,不能將某些位拉高,這會造成page program和block erase操作時的錯誤...
oracle的快閃儲存器 Oracle快閃儲存器技術介紹
龍源期刊網 快閃儲存器技術介紹 摘要 oracle資料庫管理系統是當今應用最為廣發的一種資料庫。快閃儲存器技術作為一種儲存技術應用的也越來越廣泛。該文分別oracle中的快閃儲存器的使用方法 如快閃儲存器資料庫 快閃儲存器表 快閃儲存器查詢等技術。快閃儲存器技術通過在只更改資料上執行引發了恢復變革。...