English
Language : 

M29DW640D Datasheet, PDF (18/56 Pages) STMicroelectronics – 64 Mbit (8Mb x8 or 4Mb x16, Multiple Bank, Page, Boot Block) 3V Supply Flash Memory
M29DW640D
Block Erase Command
The Block Erase command can be used to erase
a list of one or more blocks in one or more Banks.
It sets all of the bits in the unprotected selected
blocks to ’1’. All previous data in the selected
blocks is lost.
Six Bus Write operations are required to select the
first block in the list. Each additional block in the
list can be selected by repeating the sixth Bus
Write operation using the address of the additional
block. The Block Erase operation starts the Pro-
gram/Erase Controller after a time-out period of
50µs after the last Bus Write operation. Once the
Program/Erase Controller starts it is not possible
to select any more blocks. Each additional block
must therefore be selected within 50µs of the last
block. The 50µs timer restarts when an additional
block is selected. After the sixth Bus Write opera-
tion a Bus Read operation within the same Bank
will output the Status Register. See the Status
Register section for details on how to identify if the
Program/Erase Controller has started the Block
Erase operation.
If any selected blocks are protected then these are
ignored and all the other selected blocks are
erased. If all of the selected blocks are protected
the Block Erase operation appears to start but will
terminate within about 100µs, leaving the data un-
changed. No error condition is given when protect-
ed blocks are ignored.
During the Block Erase operation the memory will
ignore all commands except the Erase Suspend
command and the Read/Reset command which is
only accepted during the 50µs time-out period.
Typical block erase times are given in Table 7.
After the Erase operation has started all Bus Read
operations to the Banks being erased will output
the Status Register on the Data Inputs/Outputs.
See the section on the Status Register for more
details.
After the Block Erase operation has completed the
memory will return to the Read Mode, unless an
error has occurred. When an error occurs Bus
Read operations to the Banks where the com-
mand was issued will continue to output the Status
Register. A Read/Reset command must be issued
to reset the error condition and return to Read
mode.
Erase Suspend Command
The Erase Suspend command may be used to
temporarily suspend a Block or multiple Block
Erase operation. One Bus Write operation specify-
ing the Bank Address of one of the Blocks being
erased is required to issue the command. Issuing
the Erase Suspend command returns the whole
device to Read mode.
The Program/Erase Controller will suspend within
the Erase Suspend Latency time (see Table 7 for
value) of the Erase Suspend Command being is-
sued. Once the Program/Erase Controller has
stopped the memory will be set to Read mode and
the Erase will be suspended. If the Erase Suspend
command is issued during the period when the
memory is waiting for an additional block (before
the Program/Erase Controller starts) then the
Erase is suspended immediately and will start im-
mediately when the Erase Resume Command is
issued. It is not possible to select any further
blocks to erase after the Erase Resume.
During Erase Suspend it is possible to Read and
Program cells in blocks that are not being erased;
both Read and Program operations behave as
normal on these blocks. If any attempt is made to
program in a protected block or in the suspended
block then the Program command is ignored and
the data remains unchanged. The Status Register
is not read and no error condition is given. Read-
ing from blocks that are being erased will output
the Status Register.
It is also possible to issue the Auto Select, Read
CFI Query and Unlock Bypass commands during
an Erase Suspend. The Read/Reset command
must be issued to return the device to Read Array
mode before the Resume command will be ac-
cepted.
During Erase Suspend a Bus Read operation to
the Extended Block will output the Extended Block
data. Once in the Extended Block mode, the Exit
Extended Block command must be issued before
the erase operation can be resumed.
Erase Resume Command
The Erase Resume command is used to restart
the Program/Erase Controller after an Erase Sus-
pend. The command must include the Bank Ad-
dress of the Erase-Suspended Bank, otherwise
the Program/Erase Controller is not restarted.
The device must be in Read Array mode before
the Resume command will be accepted. An Erase
can be suspended and resumed more than once.
Program Suspend Command
The Program Suspend command allows the sys-
tem to interrupt a program operation so that data
can be read from any block. When the Program
Suspend command is issued during a program op-
eration, the device suspends the program opera-
tion within the Program Suspend Latency time
(see Table 7 for value) and updates the Status
Register bits. The Bank Addresses of the Block
being programmed must be specified in the Pro-
gram Suspend command.
After the program operation has been suspended,
the system can read array data from any address.
18/56