File system for FLASH?
average joe
Posts: 795
I have a few (10) 64M-BIT SERIAL FLASH MEMORY WITH DUAL/QUAD SPI & QPI chips on their way. I think I have the schematic ready. Use 4 chips to make 16 bit bus, connect clock and /CS together and each get a pin. 18 pins = 256 M-BIT flash drive. And then I started thinking about file systems... My first thought was to try and modify Kye's SD driver, but FAT is bloated?
http://www.winbond.com/NR/rdonlyres/05A6F2FD-83D2-4748-8394-65909AC2A8E3/0/W25Q64FV.pdf
256 byte page. 16 - 4k sector per block, 127 - 64k blocks
The memory can read 1 long per address.(4bits x 4 chips x 2 clocks.) 24 bit address. Would it be better to create my own file system? I think a simple 8.3 filename, size in longs, and starting address should be enough for a lookup table? Should the last long of each sector contain the the next sector address, or should it just be on block rollover?
QPI looks very promising though. Two clocks per byte is pretty sweet, even if I do need to setup 4 copies of the data *one for each chip*
Any sage advice would be greatly appreciated!
http://www.winbond.com/NR/rdonlyres/05A6F2FD-83D2-4748-8394-65909AC2A8E3/0/W25Q64FV.pdf
256 byte page. 16 - 4k sector per block, 127 - 64k blocks
The memory can read 1 long per address.(4bits x 4 chips x 2 clocks.) 24 bit address. Would it be better to create my own file system? I think a simple 8.3 filename, size in longs, and starting address should be enough for a lookup table? Should the last long of each sector contain the the next sector address, or should it just be on block rollover?
QPI looks very promising though. Two clocks per byte is pretty sweet, even if I do need to setup 4 copies of the data *one for each chip*
Any sage advice would be greatly appreciated!
pdf
15K
Comments
I've also been thinking about a filesystem for a long time...
My latest idea is to use tar format:
http://forums.parallax.com/showthread.php/145619
This is easy to implement and will allow long filenames and directories.
FAT would also seem to be a good option. It would be really nice if a FAT driver could be devoloped to handle both SD and flash chips.
Still, TAR has a lot of advantages, one being combining all the files I need for a code into one tarball.
Also, I find 8.3 filenames to be a burden...
I'm working on a tar wrapper for both SD and flash.
BTW, since you have so many chips, you might take a look at what I'm doing for RamPage2, using two SQI chips in parallel to form an 8-bit bus on P0..P7:
http://www.rayslogic.com/Propeller/Products/FlashPoint/FlashPoint.htm