Post date: Mar 24, 2014 7:52:59 AM
1.NAND FLASH 的特殊性
1)存在壞塊。由於NAND生產工藝的原因,出廠芯片中會隨機出現壞塊。壞塊在出廠時已經被初始化,並在特殊區域中標記為不可用,在使用過程中如果出現壞塊,也需要進行標記。
2) 易出現位反轉。NAND FLASH更易出現位反轉的現象,如果位反轉出現在關鍵文件上,會導致系統掛機。所以在使用NAND FLASH的衕時,建議使用ECC/EDC算法確保可靠性。
3) 存在Spare Area。正因為NAND FLASH有著上面的兩項特殊的地方,Spare Area就扮演作存放壞塊標誌,ECC值以及芯片信息和文件信息的作用。
4) 多維的空間結構。NAND FLASH一般由block、page、Main Area、Spare Area等結構組成。所以在有的文件系統中就衍生出各種分區信息和扇區信息等。
2.NAND FLASH 燒錄的複雜性
1)處理壞塊。由於NAND存在壞塊,導致地址空間不是連續的。所以正確的處理壞塊是保證NAND FLASH燒錄後能夠正常運行的關鍵。從大的方面來說,處理壞塊常用的最有效的主要為兩種方法:a.跳過;b.保留替代。也有部分客戶為了使用方便,並沒有把壞塊處理的概念引入,直接在壞塊上寫過,這種方法雖然簡單,但容易產生很多不穩定的因素。
2)計算ECC。ECC/EDC算法具有查錯,糾錯的功能,並且在NAND FLASH使用的大多數環境,需要帶有ECC算法的。目前廣泛使用的為Samsung的漢明碼(Hamming code),分為512Byte和256W兩種。還有功能更為強大的4-bit ECC 和Computer ECC。由於ECC算法比較多,每個算法個體又具有比較強的可變性(位組織,分段計算等),而且在Spare Area存放的位置也不能統一,所以無法做成統一的算法。
3)啟動代碼區檢查(Boot Check)。在啟動區的代碼要求存放在NAND FLASH對應塊中是沒有壞塊的,一旦壞塊出現,程序在NAND 中啟動就會失敗。用戶可以定制啟動代碼檢查並報錯功能。
4)定位燒錄。NAND FLASH在配合CPU一起運行的過程中,一些代碼或者文件是需要從一個確定的地址讀入運行的。所以在燒錄過程中,燒錄文件為多個,或者由多個文件合成的燒錄檔案,需要進行分區並且定位燒錄,這種方式我們稱之為分區模式(Partition),用戶可以結合其ECC, Boot Check 等功能,向我們公司定制。
5)非標準壞塊標誌。一些客戶為其係統的保密性,公司內部技術的兼容性,將壞塊標誌放在非標準的位置,或者使用非0xFF作為好塊標誌並帶有其他意義(如只讀)。如有這樣的情況,請給予說明並定制算法。
6)其他燒錄確認標誌和文件的分區信息。
力浦電子成立30年,致力於研發、設計、製造、編程器、燒錄器、自動燒錄機、單片機、IC燒錄器、IC編程器。原廠直銷,技術支援到位,售後服務完整。