W78M32VP-XBX
Programming to the same word address multiple times
The “write-buffer-page” addresses must be the same for all
address/data pairs loaded into the write buffer. (This means Write
Buffer Programming cannot be performed across multiple “write-
buffer-pages.” This also means that Write Buffer Programming
cannot be performed across multiple sectors. If the system attempts
to load programming data outside of the selected “write-buffer-
page”, the operation ABORTs.)
without intervening erases is permitted.
SINGLE WORD PROGRAMMING
Single word programming mode is one method of programming the
Flash. In this mode, four Flash command write cycles are used to
program an individual Flash address. The data for this programming
operation could be 8 or 16-bits wide.
After writing the StartingAddress/Data pair, the system then writes
the remaining address/data pairs into the write buffer.
While the single word programming method is supported by most
Spansion devices, in general Single Word Programming is not
recommended for devices that support Write Buffer Programming.
See Table 39 for the required bus cycles and Figure 4 for the
flowchart. When the Embedded Program algorithm is complete,
the device then returns to the read mode and addresses are no
longer latched. The system can determine the status of the program
operation by reading the DQ status bits. Refer to Write Operation
Status for information on these status bits.
Note that if a Write Buffer address location is loaded multiple
times, the “address/data pair” counter is decremented for every
data load operation. Also, the last data loaded at a location before
the “Program Buffer to Flash” confirm command is the data
programmed into the device. It is the software's responsibility to
comprehend ramifications of loading a write-buffer location more
than once. The counter decrements for each data load operation,
NOT for each unique write-buffer-address location. Once the
specified number of write buffer locations have been loaded, the
system must then write the “Program Buffer to Flash” command
at the Sector Address. Any other address/data write combinations
abort the Write Buffer Programming operation. The Write Operation
Status bits should be used while monitoring the last address
location loaded into the write buffer. This eliminates the need to
store an address in memory because the system can load the
last address location, issue the program confirm command at the
last loaded address location, and then check the write operation
status at that same address. DQ7, DQ6, DQ5, DQ2, and DQ1
should be monitored to determine the device status during Write
Buffer Programming.
During programming, any command (except the Suspend
Program command) is ignored.
The Secured Silicon Sector, Autoselect, and CFI functions
are unavailable when a program operation is inprogress.
A hardware reset immediately terminates the program
operation. The program command sequence should
be reinitiated once the device has returned to the read
mode, to ensure data integrity.
Programming to the same address multiple times
continuously (for example, “walking” a bit within a word) is
permitted.
The write-buffer “embedded” programming operation can be
suspended using the standard suspend/resume commands. Upon
successful completion of the Write Buffer Programming operation,
the device returns to READ mode. The Write Buffer Programming
Sequence is ABORTED under any of the following conditions:
WRITE BUFFER PROGRAMMING
Write Buffer Programming allows the system to write a maximum
of 32 words in one programming operation. This results in a
faster effective word programming time than the standard “word”
programming algorithms.
Load a value that is greater than the page buffer size during
the “Number of Locations to Program” step.
The Write Buffer Programming command sequence is initiated by
first writing two unlock cycles. This is followed by a third write cycle
containing the Write Buffer Load command written at the Sector
Address in which programming occurs. At this point, the system
writes the number of “word locations minus 1” that are loaded
into the page buffer at the Sector Address in which programming
occurs. This tells the device how many write buffer addresses are
loaded with data and therefore when to expect the “Program Buffer
to Flash” confirm command. The number of locations to program
cannot exceed the size of the write buffer or the operation aborts.
(Number loaded = the number of locations to program minus 1.
For example, if the system programs 6 address locations, then
05h should be written to the device.)
Write to an address in a sector different than the one
specified during the Write-Buffer-Load command.
Write an Address/Data pair to a different write-buffer-page
than the one selected by the “Starting Address” during the
“write buffer data loading” stage of the operation.
Writing anything other than the Program to Buffer Flash
Command after the specified number of “data load” cycles.
The ABORT condition is indicated by DQ1 = 1, DQ7 =
DATA# (for the “last address location loaded”), DQ6 =
TOGGLE, DQ5 = 0. This indicates that the Write Buffer
Programming Operation was ABORTED. A “Write-to- Buffer-
Abort reset” command sequence is required when using the
write buffer Programming features in Unlock Bypass mode.
Note that the Secured Silicon sector, autoselect, and CFI
functions are unavailable when a program operation is in
progress.
The system then writes the starting address/data combination. This
starting address is the first address/data pair to be programmed,
and selects the “write-buffer-page” address. All subsequent
address/data pairs must fall within the elected-write-buffer-page.
The “write-buffer-page” is selected by using the addresses
AMAX–A5.
Write buffer programming is allowed in any sequence of memory
(or address) locations. These flash devices are capable of handling
Microsemi Corporation reserves the right to change products or specifications without notice.
August 2011 © 2011 Microsemi Corporation. All rights reserved.
Rev. 15
4
Microsemi Corporation • (602) 437-1520 • www.microsemi.com