>Mike Mansheim <
spam_OUTPICLISTTakeThisOuT
MITVMA.MIT.EDU> wrote:
>
>> I've only used the 24LC01, which is an I2C device. If it is
>> typical, one should also keep in mind that a write cycle takes
>> upwards of 10ms.
>
> Actually, Mike, it takes a MAXIMUM of 10 ms from the end of
> your "write" command until the write is actually complete.
>
>> Obviously this can be done in the background if you have other
>> stuff to do, but if you are looking for "constant" quick access,
>> like ram, this is VERY slow.
>
> Yes, BUT... If you have lots of data to write (which is the usual
> reason for needing high-speed access to the EEPROM), you're
> probably going to use multiple EEPROMs, and you can interleave
> your writes to them in order to "pipeline" the slow write cycles.
>
> For instance, let's say you're using an EEPROM with a 16-byte
> block-write mode. If you write one byte at a time to that chip,
> it takes 10 ms/byte.
>
> If you use the 16-byte block-write mode, each 16-byte write to
> the chip takes 10 ms, for an average write time of .625 ms/byte.
>
> And... If you have eight of those chips (the maximum that one
> pair of I2C lines can handle) and you write your data to them by
> sending 16 bytes to each of them consecutively, you can
> theoretically get a maximum throughput of 128 bytes/10 ms, or
> 0.078125 ms/byte.
>
> If even that isn't fast enough, chips with 32- or 64-byte
> block-write modes can cut those times by a factor of 2 or 4.
>
> -Andy
>
>
>=== Andrew Warren -
.....fastfwdKILLspam
@spam@ix.netcom.com
>=== Fast Forward Engineering - San Diego, California
>===
http://www.geocities.com/SiliconValley/2499
>