Hi,
I'm new to FAT file system(MDK-Pro 6.5.0) in keil RTX. I would like to know whether will there be any dependency between the FAT file system and internal RAM used.
Reason for the doubt : If I need to read/access a large file of size, say 10MB from the NAND flash MT29F2G16, don't they need to be copied to the internal RAM? As internal RAM is of range KBs(in my case, it is 256KB), how it is handled?
Or as the cluster size is in range of KBs, does only one cluster is copied to internal RAM, at a time, instead of entire data?
Or is the reading mechanism entirely different from what I have mentioned above? If so, please help me to get the right understanding on the subject.
In both cases, doesn't the performance of my microcontroller(STM32F429) gets affected?
Thanks, Sangeeth
You can take a look at the documentation about resource requirement: www.keil.com/.../fs_resource_requirements.html
These requirements are minimum real in application requirements. FileSystem component will allow you use and configure various data caching therefore for optimal performance memory requirements will increase, but RAM usage can still be in the range of a few kB.
The erase block size (128KB) is likely to be something that will eat RAM if you have to manage 512 byte sectors writes in the middle of a committed block. FAT really doesn't permit you to shuffle blocks around that some more NAND-centric file systems might.