Hi, I am writing device driver for nand flash. I want to know whether the nand flash supports in-place processing or not. If it supports please give me the detail, how it can be done.
This has nothing to do with Keil tools - you need to read the Datasheet for the particular device you have in mind!
Thanks for your kind information Mr. Neil.
Do you mean in-place execution, also called execution-in-place (XIP)? That is, using a NAND flash to store program instructions, and having the 8051 instruction fetch cycle retrieve those instructions directly from the flash? NAND flash generally isn't suitable for this use. NAND is more like a disk drive than a RAM. It generally provides access to blocks of data (~512 bytes) rather than random access, so hopping around the address space is relatively slow. Also, the relatively unreliable nature of the bits means that there is usually a disk-drive-like mapping layer in the code which maintains a list of bad blocks and allocates around them. It's difficult to boot a device that needs complex software just to read the device that contains the boot code. Systems that store code in NAND usually copy it to RAM for execution. (Higher speed systems frequently do this even with NOR flash simply because the RAM access time is much lower than for flash.)
Thank You Mr.Drew Davis. Regards Vibha
Q: Do you mean A: Thank You This is sure to make the solution to the problem be there right in the next post Erik
I assume the thanks mean that I guessed the question right, and the OP really did want to execute directly out of NAND.
I assume the thanks mean that I guessed the question right, and the OP really did want to execute directly out of NAND. Point taken? would it be just too much to ask that the OP took 5 seconds to answer your question whether you assumed, guiessed or whatever correctly? Erik