Re: how to promote flash speed



Writes to NOR flash is typically slowed down by *ERASE*, which you do not
show because that is probably in another function and called by the same
code which calls this function.

Optimizing the write time is a very specialized task. You may want to
consider consulting with a company who does this as their primary business,
like Datalight (www.datalight.com) They have special code for managing the
flash, not just the writes. By managing the flash, you can increase the
likelihood that you can write to previously erased flash, thus speeding up
the writes. But that means that sometimes the writes will be slow because
the erase must occur before the writes.

--
Bruce Eitman (eMVP)
Senior Engineer
beitman AT applieddata DOT net

Applied Data Systems
www.applieddata.net
An ISO 9001:2000 Registered Company
Microsoft WEP Gold-level Member


"make" <shihk_sh@xxxxxxxxxxx> wrote in message
news:u3WDKtUTFHA.3040@xxxxxxxxxxxxxxxxxxxxxxx
> hi all,
> I use Nor flash for a Disk,but write flash speed is so slow.
> How Can I promote my flash write speed?The following code for
> writing flash sample code.
>
> DWORD IntelL18FlashBufferedProgramBlock(volatile DWORD *pBlock, DWORD*
data,
> DWORD Len,PDISK pDisk)
> {
> DWORD i,j,k, reallen;
>
> reallen=Len /128;
> k=0;
> for (i=0;i<reallen;i++)
> {
> do
> {
> pBlock[k]=iL18_BUFFER_PROGRAM;
> }
> while (!((pBlock[k]& iL18_SRReady) == iL18_SRReady));
>
> pBlock[k]=iL18_BUFFER_PROGRAM_MAX;
> for (j=0;j<32;j++)
> {
> pBlock[k]=data[k];
> k++;
> }
> pBlock[k-32]=iL18_BUFFER_PROGRAM_CONFIRM;
> while (!((pBlock[k-32]& iL18_SRReady) == iL18_SRReady));
> }
>
> return pBlock[k-32];
> }
>
>


.



Relevant Pages

  • Re: o_sync in vfat driver
    ... flash disks are not stupid as you assume. ... It takes about a second to erase a 64k physical sector. ... device eth0 entered promiscuous mode ... movb $0xaa, 0x555 ...
    (Linux-Kernel)
  • Re: Flash filesystem
    ... I don't want to endorse any flash products publicly for several reasons. ... >> can be made to be very unstable by the driver that manages it. ... >> Applied Data Systems ... >>> saved state, saved state is known good state. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Help
    ... DWORD dwDesiredAccess, ... Create custom function and new driver ... Read or Write using low level function for your flash ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Reiser4 status: benchmarked vs. V3 (and ext3)
    ... > Don't confuse block size with erase size. ... that if an IO request size does not equal to flash ... > However since you said that one can plug in a different block allocation ... Plugin-based architecture is used in reiser4, ...
    (Linux-Kernel)
  • Unable to erase flash HC08
    ... I am unable to erase flash pages on an HC08QT4. ... the 'write to any address in the flash page' part of the erase routine, ... erases your reset vector if the ROM routine is called. ...
    (comp.arch.embedded)