English
Language : 

AT26F004_08 Datasheet, PDF (9/38 Pages) ATMEL Corporation – 4-megabit 2.7-volt Only Serial Firmware DataFlash Memory
AT26F004
8.2 Sequential Byte Program Mode
The Sequential Byte Program mode improves throughput over the single Byte Program opera-
tion when programming multiple bytes of data into consecutive address locations. When using
the Sequential Byte Programming mode, an internal address counter keeps track of the byte
location to program, thereby eliminating the need to supply an address sequence to the device
for every byte to program. All address locations to be programmed using the Sequential Byte
Program mode must be in the erased state. Before the Sequential Byte Program mode can first
be entered, the Write Enable command must have been previously issued to the device to set
the WEL bit of the Status Register to a logical “1” state.
To start the Sequential Byte Program mode, the CS pin must first be asserted, and the opcode
of AFh must be clocked into the device. For the first program cycle, three address bytes must be
clocked in after the opcode to designate the first byte location to program. After the address
bytes have been clocked in, the next byte of data clocked into the device will be latched inter-
nally. Deasserting the CS pin will start the internally self-timed program operation, and the first
byte will be programmed into the memory location specified by A23 - A0.
After the first byte has been successfully programmed, a second byte can be programmed by
simply reasserting the CS pin, clocking in the AFh opcode, and then clocking in the next byte of
data. When the CS pin is deasserted, the second byte of data will be programmed into the next
sequential memory location. The process would be repeated for any additional bytes. There is
no need to reissue the Write Enable command once the Sequential Byte Program mode has
been entered.
When the last desired byte has been programmed into the memory array, the Sequential Byte
Program mode operation can be terminated by reasserting the CS pin and sending the Write
Disable command to the device to reset the WEL bit in the Status Register back to the logical “0”
state.
If more than one byte of data is ever clocked in during each program cycle, then only the first
byte of data sent on the SI pin will be stored in the internal latches and all subsequent bytes will
be ignored. The programming of each byte is internally self-timed and should take place in a
time of tBP. For each program cycle, a complete byte of data must be clocked into the device
before the CS pin is deasserted; otherwise, the device will abort the operation, the byte of data
will not be programmed into the memory array, and the WEL bit in the Status Register will be
reset back to the logical “0” state.
If the address initially specified by A23 - A0 points to a memory location within a sector that is in
the protected state, then the Sequential Byte Program mode command will not be executed, and
the device will return to the idle state once the CS pin has been deasserted. The WEL bit in the
Status Register will also be reset back to the logical “0” state.
There is no address wrapping when using the Sequential Byte Program mode. Therefore, when
the last byte (07FFFFh) of the memory array has been programmed, the device will automati-
cally exit the Sequential Byte Program mode and reset the WEL bit in the Status Register back
to the logical “0” state. In addition, the Sequential Byte Program mode will not automatically skip
over protected sectors; therefore, once the highest unprotected memory location in a program-
ming sequence has been programmed, the device will automatically exit the Sequential Byte
Program mode and reset the WEL bit in the Status Register. For example, if Sector 1 was pro-
tected and Sector 0 was currently being programmed, once the last byte of Sector 0 was
programmed, the Sequential Byte Program mode would automatically end. To continue pro-
gramming with Sector 2, the Sequential Byte Program mode would have to be restarted by
supplying the AFh opcode, the three address bytes, and the first byte of Sector 2 to program.
9
3588D–DFLASH–10/08