PDA

View Full Version : Sometimes communication hangs



Ira
December 30th, 2007, 01:27 PM
Twice since I've updated to (31) I've had comms hang. Both were after deleting and then reinstalling all the pmm files. Once ii don't show them in the window after the transfer and unplugging and replugging fixed that, tried it again and that worked but when I changed to the Date/Time panel and clicked Set Now it failed, then I clicked set date/time and that worked and following that so did Set Now.

Also when I copy all the files across they seem to go fast-fast-fast-slow-fast-fast-fast-slow. and whenever it pauses the blue light comes on.

Sorry it's not much to go on.

Ira

Blacky
January 1st, 2008, 07:50 PM
Also when I copy all the files across they seem to go fast-fast-fast-slow-fast-fast-fast-slow. and whenever it pauses the blue light comes on.

The flash file system is cached by a 128K of RAM buffer. When that 128K buffer fills, it needs to be flushed to flash memory. When the blue LED is illuminated FlashScan is writing to flash memory.

Regards
Paul

Ira
January 2nd, 2008, 05:38 AM
For amusement because I have nothing better to do, I pulled out a timer and discovered it takes about 7 seconds to copy E38-M.PMM from my computer to the V2 cable. During that time the blue light comes on 3 times, the first 2 for a second or so and the last time for maybe 2 seconds. No issue if that's what it takes, but it seems awfully slow. Does it really take a whole second to erase and write a single page in flash?

Ira

Blacky
January 2nd, 2008, 08:29 AM
Does it really take a whole second to erase and write a single page in flash?
Ira
No it does not take a single second it takes longer, plus its not writing a single block. Because it is writing to a FAT file system it has to write to the file allocation table, and the data itself which may be fragmented.

A single block is 64Kb and takes 0.8s to erase and 0.6s to write, 1.4 seconds minimum, and up to 18* seconds maximum (12s to erase and 6s to write). That worst case is for high temp, low voltage, old chip with 100,000's of write cycles. I would say that 2 seconds per block is perfectly reasonable.

There are 2 x 64K RAM cache buffers that remove most of the redundant erase/write operations. If the FAT file system writes to three (or more) different 64K blocks then the effectiveness of the cache is reduced for that operation. I would use more RAM but FlashScan only has 512K and it is needed elsewhere.

The flash chip inside FlashScan is not designed for lots of random write access. It is good at logging sequential data (only needs to write once per 64K). The flash chip is designed to hold config data. Placing the config data into FlashScan is not a speedy operation but it will not be done often compared with actual data logging.

Try copying the file to the SD card and note the speed difference.
The SD cards block size is 512 bytes and the erase/write times are typically <10ms.

Regards
Paul