Wear leveling support in nor flash-wince 6.0
Siddiq posted on Monday, December 14,200 9 AM
I am using 256MB NOR Flash. I need to support "wear Leveling". Is WinCE 6.0FAL.lib supports "Wear Leveling" by default. If yes, Where can I find thesupport in WinCE 6.0?. Please help me in this regard.Thanks in advance.
Windows CE 6.
Cjay replied to Siddiq on Monday, December 14,200 9 AM
Windows CE 6.0 does provide some implementation for wear-leveling although onNOR flash devices this is not as critical as it is on NAND flash devices asNOR flash devices are not prone to bad blocks unlike NAND flash.Depending upon the level of PRIVATE source code you have installed the FALsources are here: \WINCE600\PRIVATE\WINCEOS\DRIVERS\MSFLASH\SRCCJ--http://developce.blogspot.com/
Thanks cjay for your information.
Siddiq replied to cjay on Tuesday, December 15,200 9 AM
Thanks Cjay for your information.So this wear Leveling support will be added by default in WinCE for both NORFlash & NAND Flash.
If your block driver links with FAL.
Henrik viklund [emvp] replied to Siddiq on Tuesday, December 15,200 9 AM
If your block driver links with FAL.lib you should be OK, and you areprobably OK even if it dosn't. In fact, wear leveling comes as a sideeffect of the sector write speed optimization algoritms that youpretty much need to have in place in order to get decent modify/writeperformance out of flash devices. Rather than waiting for a slow eraseoperation to finish the modified data is instead moved to a freshsector and the old sector is then erased in a background operation.This functionality is implemented by FAL.Henrik ViklundPrevas ABNORugh onasFALCE 6.0theing
On 12/14/2009 pm, cjay wrote: wear leveling is not only about bad-Blocks
Valter minute [emvp] replied to cjay on Monday, December 21,200 9 AM
Wear leveling is not only about bad-blocks management. it is true, as yousaid, that NOR flash has no bad-blocks and do not need CRC or other waysto manage corrupted data, but the number of erase cycles of each flashblock is still limited (and usually lower on NOR flashes than in NANDones), so you have to distribut the block-rewrite operation evenly amongthe blocks or you will risk to "kill" your flash by repeatedly changingthe same block (and if you have FAT filesystem this may happen on theblock that holds FAT sectors and it is update every time you access afile, modifying its access date). Obviously you can damage your flashalso with wear-leveling, only in a much longer time.If you do not have this directory on your system you may need to installthe shared source. Simply restart windows CE setup from the originalDVD, select "modify installation" and choose the shared source component.--Valter Minute (eMVP)Training, support and development for Windows CE:www.fortechembeddedlabs.itMy embedded programming and cooking blog:www.geekswithblogs.net/WindowsEmbeddedCookbookWindows Embedded support forums in Italian:http://social.msdn.microsoft.com/Forums/it-IT/windowsembeddedit/threads(the reply address of this message is invalid)