M58LW032C is a 32 M bit (2Mb x16) non-volatile
memory that can be read, erased and reprogrammed. These operations can be performed using a single low voltage (2.7V t o 3.6V) core supply.
On power-up the memory defaults to Read mode
with an asynchronous bus where it can be read in
the same way as a non-burst Flash memory.
The memory is divided into 32 blocks of 1Mbit that
can be erased i ndependently so it is poss ible to
preserve valid data while old data is erased. P rogram and Erase commands are written to the
Command Interface of the memory. An on-chip
Program/Erase Controller simplifies the process of
programming or erasing the memory by taking
care of all of the special operations that are required to update the memory contents. The end of
a Program or Erase operation can be detected and
any error conditions identified in the Status Register. The command set required to control the
memory is consistent with JEDEC standards.
The device supports synchronous burst read and
asynchronous read from all blocks of the memory
array; at power-up the device is configured for
asynchronous read. In asynchronous mode an
Address Latch input can be used to latch addresses in Latch Controlled mode. In synchronous burst
mode, data is output on each clock cycle at frequencies of up to 56MHz.
The Write Buffer allows the microprocessor to program from 1 to 16 Words in parallel, both speeding
up the programming and freeing up the microprocessor to perform other work. A Word Program
command is available to program a single Word.
Erase can be suspended in order to perform either
Read or Program in any other block and then resumed. Program ca n be s uspended to Read data
in any other block and then resum ed. Eac h block
can be programmed and erased over 100,000 cycles.
The M58LW032C has several security features to
increase data protection.
■ Block Protection, where each block can be
individually protected against p r ogram or eras e
operations. All blocks are protected during
power-up. The protection of the blocks is nonvolatile; after power-up the protection status of
each block is restored to the state when power
was last removed.
■ Program Erase Enable i nput V
, program or
PEN
erase operations are not possible when the
Program Erase Enable input V
■ Smart Protection, which allows protected blocks
PEN
is low.
to be permanently locked. This feature is not
described in the datasheet for security reasons.
Please contact STMicroelectronics for further
details.
■ 128 bit Protection Regi ster, divided in to two 64
bit segments: the f irst con tains a unique device
number written by ST, the second is user
programmable. The user programmable
segment can be protected.
The Reset/Power-Down pin is used to apply a
Hardware Reset to the memory and to set the device in power-down mode.
The device features an Auto Low Power mode. If
the bus becomes inactive during Asynchronous
Read operations, the device automatically enters
Auto Low Power mode. In this mode the power
consumption is reduced to the Auto Low Power
supply current.
The STS signal is an open drain output that can be
used to identify the Program/Erase Controller status. It can be configured in two modes: Ready/
Busy mode where a static signal indicates the status of the P/E.C, and Status mode where a pulsing
signal indicates the end of a Program or Block
Erase operation. In Status mode it can be used as
a system interrupt signal, useful for saving CPU
time.
The memory is available in TSOP56 (14 x 20 mm)
and TBGA64 (10 x 13mm, 1mm pitch) packages.
6/61
Page 7
Figure 2. Logi c D iag ramTable 1. Si gn a l Nam es
A1-A21Address inputs
V
V
DDQ
DD
DQ0-DQ15Data Inputs/Outputs
M58LW032C
A1-A21
V
PEN
W
E
RP
E
21
16
DQ0-DQ15
M58LW032C
G
STS
R
L
K
V
V
SS
SSQ
AI06208
G
KClock
L
RValid Data Ready
STSStatus/(Ready/Busy)
RP
V
PEN
W
V
DD
V
DDQ
V
SS
V
SSQ
NCNot Connected Internally
Chip Enable
Output Enable
Latch Enable
Reset/Power-Down
Program/Erase Enable
Write Enable
Supply Voltage
Input/Output Supply Voltage
Ground
Input/Output Ground
7/61
Page 8
M58LW032C
Figure 3. TSOP56 Connections
V
NC
A21
A20
A19
A18
A17
A16
V
DD
A15
A14
A13
A12
PEN
RP
A11
A10
A9
A8
V
SS
A7
A6
A5
A4
A3
A2
A1
1
R
E
14
M58LW032C
15
2829
56
43
42
NC
W
G
STS
DQ15
DQ7
DQ14
DQ6
V
SS
DQ13
DQ5
DQ12
DQ4
V
DDQ
V
SSQ
DQ11
DQ3
DQ10
DQ2
V
DD
DQ9
DQ1
DQ8
DQ0
NC
K
NC
L
8/61
AI06209
Page 9
Figure 4. TBGA64 Connections (Top view through package)
M58LW032C
87654321
A
BRA19A2
C
DA16
E
F
G
A1
V
A4A5
K
NC
DQ0
NC
A6V
SS
A7A3
A8
A10A12
A11
DQ10
DQ2
PEN
EA9
RP
DDQ
A13
A14
A15
NCNC
DQ5V
V
DD
NC
NC
NC
NC
DQ6
A20
DQ15STSDQ9DQ8DQ1DQ4DQ3
NC
DQ14
NCA18
A21
A17
GDQ12DQ11
W
H
L
NC
V
DD
V
SS
DQ13
V
SSQ
DQ7
NC
AI06210b
9/61
Page 10
M58LW032C
Figure 5. Block Addresses
Word (x16) Bus Width
1FFFFFh
1F0000h
1EFFFFh
1E0000h
Total of 32
1 Mbit Blocks
01FFFFh
010000h
00FFFFh
000000h
Note: Also see Appendix A, T able 25 for a full li st i ng of the Block Addresses.
1 Mbit or
64 KWords
1 Mbit or
64 KWords
1 Mbit or
64 KWords
1 Mbit or
64 KWords
AI06254
10/61
Page 11
SIGNAL DESCRIPTIONS
See Figure 2, Logic Diagram and Table 11, Signal
Names, for a brief overview of the signals connected to this device.
Address Inputs (A1-A21). The Address Inputs
are used to select the cells to access in the memory array during Bus Read operations either to
read or to program data to. During Bus Write operations they control the commands sent to the
Command Interface of the internal state m ac hine.
Chip Enable and Latch Enable must be low when
selecting the addresses.
The address inputs are latched on the rising edge
of Chip Enable, Write Enable or Latch Enable,
whichever occurs first in a Write operation. The
address latch is transparent when Latch Enable is
low, V
. The address is internally latched in an
IL
Erase or Program operation.
Data Inputs/Outputs (DQ0-DQ15). The Data In-
puts/Outputs output the data stored at the selected
address during a Bus Read operation, or are used
to input the data during a program operation. During Bus Write operations they repres ent the commands sent to the Command Interface of the
internal state machine. When used to input data or
Write commands they are latched on the rising
edge of Write Enable or Chip Enable, whichever
occurs first.
When Chip Enable and Output Enable are both
low, V
, the data bus outputs data from the mem-
IL
ory array, the Electronic Signature, the Block Protection status, the CFI Information or the contents
of the Status Register. The data bus is high impedance when the chip is deselected, Output E nable
is high, V
low, V
or the Reset/Power-Down signal is
IH,
. When the Program/Erase Controller is
IL
active the Ready/Busy status is given on DQ7.
Chip Enable (E
). The Chip Enable, E, input acti-
vates the memory control logic, input buffers, decoders and sense amplifiers. Chip Enable, E
V
deselects the memory and reduces the power
IH
consumption to the Standby level, I
Output Enable (G
). The Output Enable, G, gates
DD1
.
, at
the outputs through the data output buffers during
a read operation. When Output Enable, G
, is at V
IH
the outputs are high impedance. Output Enable,
G
, can be used to inhibit the data ou tput during a
burst read operation.
Write Enable (W
). The Write Enable input, W,
controls writing to the Command Interface, Input
Address and Data latches. Both addresses and
data can be latched on the rising edge of Write Enable (also see Latch Enable, L
Reset/Power-Down (RP
).
). The Reset/PowerDown pin can be used to apply a Hardware Reset
to the me mory.
M58LW032C
A Hardware Reset is achieved by holding Reset/
Power-Down Low, V
Reset/Power-Down is Low, V
ter information is c leared and t he power consumption is reduced to power-down level. The device is
deselected and outputs are high impedance. If Reset/Power-Down goes low, V
Erase, a Write to Buffe r and Program or a Block
Protect/Unprotect the operation is aborted and the
data may be corrupted. In this case the Ready/
Busy pin stays low, V
t
PLPH
+ t
until the completion of the Reset/
PHRH,
Power-Down pulse.
After Reset/Power-Down goes High, V
memory will be ready for Bus Read and Bus Write
operations after t
does not fall during a reset , s ee Rea dy /Busy Ou tput section.
In an application, it is recommended to associate
Reset/Power-Down pin, RP
of the microprocessor. Otherwise, if a reset operation occurs while the memory is performing an
Erase or Program operation, the memory may output the Status Register information inst ead of being initialized to the default Asynchronous
Random Read.
Latch Enable (L
ured to latch the Address Inputs on the rising edge
of Latch Enable, L
the address is latched on the active edge of the
Clock when Latch Enable is Low, V
ing of Latch Enable, whichever occurs first. Once
latched, the addresses may change without affecting the address used by the memory. When Latch
Enable is Low, V
Clo c k (K). The Clock, K, is used to synchronize
the memory with the external bus during Synchronous Bus Read operations. The Clock can be configured to have an active rising or falling edge. Bus
signals are latched on the active edge of the Clock
during synchronous bus operations. In Synchronous Burst Read m ode the address is latched on
the first active clock edge when Latch Enable is
low, VIL, or on the rising edge of Latch Enable,
whichever occurs first.
During asynchronous bus operations the Clock is
not used.
Valid Data Ready (R). The Valid Data Ready
output, R, is an open drain output that can be used
to identify if the memory is ready to output data or
not. The Valid Data Ready output is only active
during Synchronous Burst Read operat ions when
the Burst Length is set to Continuous. The Valid
Data Ready output can be configured to be active
on the clock edge of the invalid data read cycle or
one cycle before. Valid Data Ready Low, V
, for at least t
IL
, for a ma ximum timin g of
IL
. Note that Ready/Busy
PHQV
, the Status Regis-
IL
,during a Block
IL
PLPH
. When
, the
IH
, with the reset sig nal
). The Bus Interface is config-
. In synchronous bus operations
or on the ris-
IL
, the latch is transparent.
IL
, in-
OL
11/61
Page 12
M58LW032C
dicates that the data is not, or will not be valid. Valid Data Ready in a high-impedance state indicates
that valid data is or will be available.
Unless Synchronous Burst Read has been selected, Valid Data Ready is high-impedance. It may be
tied to other components with the same Valid Data
Ready signal to create a unique System Ready
signal.
The Valid Data Ready, R, output has an internal
pull-up resistor of approximately 1 MΩ powered
from V
, designers should use an external pull-
DDQ
up resistor of the correct value to meet the external
timing requirements for Valid Data Ready rising.
Refer to Figure 19.
Status/(Ready/Busy) (STS). The STS signal is
an open drain output t hat can be used to id entify
the Program/Erase Controller status. It can be
configured in two modes:
■ Ready/Busy - the pin is Low, V
, during
OL
Program and Erase operations and high
impedance when the memory is ready for any
Read, Program or Erase operation.
■ Status - the pin gives a pulsing signal to indicate
the end of a Program or Block Erase operation.
After power-up or reset the STS pin i s configured
in Ready/Busy mode. T he pin can be co nfigured
for Status mode using the Configure STS command.
When the Program/Erase Controller is idle, or suspended, STS can float High through a pul l-up resistor. The use of an open-drain output allows the
STS pins from several memo ries to be c onnect ed
to a single pull-up resistor (a Low will indicate that
one, or more, of the memories is busy).
STS is not Low during a reset unless the reset was
applied when the Program/Erase controller was
active. Ready/Busy can rise before Reset/PowerDown rises.
Program/Erase Enable (V
Erase Enable input, V
PEN,
). The Program/
PEN
is used to protect all
blocks, preventing Program and Erase operations
from affecting their data.
Program/Erase Enable must be kept High during
all Program/Erase Controller operations, otherwise the operations is not guaranteed to suc ceed
and data may become corrupt.
V
Supply Voltage. VDD provides the power
DD
supply to the internal core of the memory device.
It is the main power supply for all operations
(Read, Program and Erase).
Supply Voltage. V
V
DDQ
provides the power
DDQ
supply to the I/O pins and enables all Outputs to
. V
be powered independently from V
tied to V
or can use a separate supply.
DD
DD
DDQ
can be
It is recommended to power-up and power-down
V
DD
and V
together to avoid any condition that
DDQ
would result in data corruption.
Ground. Ground, V
V
SS
is the reference for
SS,
the core power supply. It must be connected to the
system ground.
V
Ground. V
SSQ
the input/output circuitry driven by V
ground is the reference for
SSQ
DDQ
. V
SSQ
must be connected to VSS.
Note: Each device in a system should have
V
DD
and V
decoupled with a 0.1µF ceramic
DDQ
capacitor close to the pin (high frequency, inherently low inductance ca pacitors should b e
as close as possible to the package). See Figure 10, AC Measurement Load Circuit.
12/61
Page 13
BUS OPERATIONS
There are six standard bus operations that control
the device. These are Address Latch, B us Read,
Bus Write, Output Disable, Power-Down and
Standby. See Table 2, Bus Operations, for a summary.
Typically glitches of less than 5ns on Chip Enable
or Write Enable are ignored by the memory and do
not affect Bus Write operations.
A valid bus operation i nvolves set ting the des ired
address on the Address Inputs, setting Chip Enable and Latch Enable Low, V
Enable High, V
; the address is latched on the ris-
IH
and keeping Write
IL
ing edge of Address Latch.
Bus Read. Bus Read operations are used to out-
put the contents of the Memory Array, the Electronic Signature, the Status Register, the Common
Flash Interface and the Block Protection Status.
A valid bus operation i nvolves set ting the des ired
address on the Address Inputs, applying a Low
signal, V
Latch Enable and keeping Write Enable High, V
, to Chip Enable, Output Enable and
IL
IH
The data read depends on the previous command
written to the memory (see Command Interface
section). See Figures 11, 12, 13, 18 and 19 Read
AC Waveforms, and Tables 15, 16, 17 and 20
Read AC Characteristics, for details of when the
output becomes valid.
Bus Write. Bus Write operations write Commands to the memory or latch addresses and input
data to be programmed.
M58LW032C
A valid Bus Write operation begin s by setting the
desired address on the Address Inputs and setting
Latch Enable Low, V
latched by the Command Interface on the rising
edge of Chip Enable or Write Enable, whichever
occurs first. The Data Inputs/Outputs are latched
by the Command Interface on the rising edge of
Chip Enable or Write Enable, whichever occurs
first. Output Enable must remain High, V
the Bus Wr ite operation.
See Figures 14, 15, 16 and 17, Write AC Waveforms, and Tables 18 and 19, Write AC Characteristics, for details of the timing requirements.
Output Disa bl e . The The Data Inputs/Outputs
are high impedance when the Out put Enable i s at
.
V
IH
Power-Down. The memory is in Power-Down
mode when Reset/Power-Down, RP
power consumption is reduced to the Power-Down
level, I
, and the out puts are high impedance,
DD2
independent of Chip Enable, Output Enable or
Write Enable.
Standby. Stan dby disables most of the inte rnal
.
circuitry, allowing a substantial reduction of the
current consumption. The memory is in standby
when Chip Enable is at V
tion is reduced to the standby level I
outputs are set to high impedance, independently
from the Output Enable or Write Enable inputs.
If Chip Enable switches to V
erase operation, the d ev ice en ters Standby mode
when finished.
. The Address Inputs are
IL
, is Low. The
. The power consump-
IH
during a program or
IH
DD1
, during
IH
and the
Table 2. Bus Operations
OperationEGWRPLA1-A21DQ0-DQ15
Address Latch
Bus Read
Bus Write
Output Disable
Power-DownXXX
Standby
Note: 1. X = Don’t Care VIL or VIH.
2. Depends on G
V
IL
V
IL
V
IL
V
IL
V
IH
X
V
IL
V
IH
V
IH
XX
V
IH
V
IH
V
IL
V
IH
V
IH
V
IH
V
IH
V
IH
V
IL
V
IH
V
IL
V
IL
V
IL
XXHigh Z
XXHigh Z
XXHigh Z
Address
AddressData Output
AddressData Input
Data Output or Hi-Z
(2)
13/61
Page 14
M58LW032C
READ MODES
Read operations can be performed in two different
ways depending on the settings in the Configura-
tion Register. If the clock signal is ‘d on’t care’ for
the data output, the read operation is asynchronous; if the data output is synchronized with clock,
the read operation is synchronous.
The read mode and f ormat of the data output are
determined by the Configuration Register. (See
Configuration Register section for details).
On Power-up or after a Hardware Reset the memory defaults to Asynchronous Read mode.
Asynchronous Read Modes
In Asynchronous Read operations the clock signal
is ‘don’t care’. The device outpu ts the dat a corresponding to the address latched, that is the mem ory array, Status Register, Common Flash
Interface, Electronic Signature or Block Protection
Status depending on the comma nd issued. CR15
in the Configuration Register must be set to ‘1’ for
asynchronous operations.
During Asynchronous Read operations, if the bus
is inactive for a time equivalent to t
vice automatically enters Auto Low Power mode.
In this mode the internal supply current is reduced
to the Auto Low Power supply current, I
Data Inputs/Outputs will still output data if a Bus
Read operation is in progress.
Automatic Low Power is only available in Asynchronous Read modes.
Asynchronous Read operations can be performed
in three different ways, Asynchronous Latch Controlled Read, Asynchronous Random Read and
Asynchronous Page Read.
Asynchronous Latch Controlled Read.
In Asynchronous Latch Controlled Read operations read the address is latched in the me mory
before the value is output on the data bus, allowing
the address to change during the cycle without affecting the address that the memory uses.
A valid bus operation i nvolves set ting the des ired
address on the Address Inputs, setting Chip Enable and Latch Enable Low, V
Enable High, V
; the address is latched on the ris-
IH
and keeping Write
IL
ing edge of Address L atch. Once latched, the Address Inputs can change. Set Output Enable Low,
, to read the data on the Data Inputs/Outputs;
V
IL
see Figure 12, Asynchronous Latch Controlled
Read AC Waveforms and Table 16, Asynchronous Latch Controlled Read AC Characteristics for
details on when the output becomes valid.
See Figures 12, Asynchronous Latch Controlled
Read AC Waveforms, and Table 16, Asynchronous Latch Controlled Read AC Characteristics,
for details.
AVQV
, the de-
. The
DD5
Asynchro nous Random R ead. As th e Lat ch En able input is transparent when set Low, V
, Asyn-
IL
chronous Random Read operations can be
performed by holding Latch Enable Low, V
throughout the bus operation.
See Figures 11, Asynchronous Random Read AC
Waveforms, and Table 15, Asynchronous Random Read AC Characteristics, for details.
Asynchro nous Page Read . In Asynchronous
Page Read mode a Page of data is internally read
and stored in a Page Buffer. Each memory page is
4 Words and has th e same A3-A22, only A 1 and
A2 may change.
The first read operation within the Page has the
normal access time (t
), subsequent reads
AVQV
within the same Page have much sho rter access
times (t
). If the Page changes then the nor-
AVQV1
mal, longer timings apply again.
See Figures 13, Asynchronous Page Read AC
Waveforms, and Table 17, Asynchronous Page
Read AC Characteristics, for details.
Synchronous Read Mo de s
In Synchronous Read mode the data output is synchronized with the clock. CR15 in the Configuration Register must be set to ‘0’ for synchronous
operations.
Synchronous Burst Read. In Synchronous
Burst Read mode the data is output in bursts synchronized with the clock. It is possible to perform
burst reads across bank boundaries.
Synchronous Burst Read mode can onl y be used
to read the memory array. For other read operations, such as Read Status Register, Read CFI,
Read Electronic Signature and Block Protection
Status, Single Synchronous Read or Asynchronous Read must be used.
In Synchronous Burst Read mode the flow o f the
data output depends on param eters that are configured in the Configuration Register.
A valid Synchronous Burst Read operation begins
when the address is set on the Address Inputs,
Write Enable is High, V
Latch Enable are Low, V
, and Chip Enable and
IH
, during the active edge
IL
of the Clock. The address is latched on the first active clock edge when Latch Enable i s low, or on
the rising edge of Latch Enable, whichever occurs
first. The data becomes available for output after
the X-latency specified in the Burst Control Register has expired. The output buffers are activated
by setting Output Enable Low, V
. See Figures 6
IL
and 7 for examples o f Synchronous Burst Read
operations.
The number of Words to be out put during a Synchronous Burst Read operation can be configured
as 4 Words, 8 Words or Continuous (Burst Length
IL
14/61
Page 15
M58LW032C
bits CR2-CR0). In Synchronous Continuous Burst
Read mode one Burst Read operation can access
the entire memory sequ entially. If the starting address is not associated with a page (4 Word)
boundary the Valid Data Ready, R, output goes
Low, V
, to indicate that the data will not be ready
IL
in time and additional wait-states are required. The
Valid Data Ready output timing (bit CR8) can be
changed in the Configuration Register.
The order of the data output can be modified
through the Burst Type bit in the Configuration
Register. The burst sequence can be sequential or
interleaved.
See Table 20, Synchronous Read AC Characteristics and Figure 18 a nd 19, Synchronous Burst
Read AC Waveform for details.
Single Synchronous Read. Single Synchronous Read operations are similar to S ync hronous
Burst Read operations except that only the first
data output after the X latency is valid. Single Synchronous Reads are used to read the Status Register, CFI, Electronic Signature and Block
Protection Status.
15/61
Page 16
M58LW032C
CONFIGURATION REGISTER
The Configuration Register is used to configure
the type of bus access that the memory will perform. The Configuration Register bits are described in Table 3. They specify the selection of
the burst length, burst type, burst X and Y latencies and the Read operation. See figures 6 and 7
for examples of Synchronous Burst Read configurations.
The Configuration Register is set through the
Command Interface and will retain its information
until it is re-configured, the device is reset, or the
device goes into Reset/Power-Down mode. The
Configuration Register is read using the Read
Electronic Signature Command at address 05h.
Read Select Bit (CR15). The Read Select bit,
CR15, is used to switch between asynchronous
and synchronous Bus Read operations. When the
Read Select bit is set to ’1’, Bus Read operations
are asynchronous; when the Read Select but is
set to ’0’, Bus Read operations are synchronous.
On reset or power-up the Read Select bit is set to
’1’ for asynchronous access.
X-Latency Bits (CR13-CR11). The X-Latency
bits are used during Synchronous Bus Read operations to set the number of clock cy cles between
the address being latched and the first data becoming available. For correct operation the X-Latency bits can only assume the values in Table 3,
Configuration Register.
Internal Clock Divider Bit (CR10). The Internal
Clock Divider Bit is used to divide the internal clock
by two. When CR10 is set to ‘1’ the internal clock
is divided by two, which effectively means that the
X and Y-Latency values are multiplied by two, that
is the number of clock cycles between the address
being latched and the first data becoming available will be twice the value set in CR13-CR11, and
the number of clock cycles between consecutive
reads will be twice the value set in CR9. For example 8-1-1-1 will be come 16-2-2-2. When C R10 is
set to ‘0’ the internal clock runs normally and the X
and Y-Latency values are those set in CR13-CR11
and CR9.
Y-Latency Bit (CR9). The Y-Latency bit is used
during Synchronous Bus Read operations to set
the number of clock cycles between consecutive
reads. The Y-Latency value depends on both the
X-Latency value and the setting in CR9.
When the Y-Latency is 1 the data changes each
clock cycle; when the Y-Latency is 2 the data
changes every seco nd clock cycle. See Tab le 3,
Configuration Register for valid combinations of
the Y-Latency, the X-Latency and the Clock frequency.
Valid Data Ready Bit (CR8). The Valid Data
Ready bit controls the timing of the Valid Data
Ready output pin, R. When the Valid Data Ready
bit is ’0’ the Valid Data Ready output pin is driven
Low for the active clock edge when invalid data is
output on the bus. When the Valid Data Ready bit
is ’1’ the Valid Data Ready output pin is driven Low
one clock cycle prior to invalid data being output
on the bus.
Burst Type Bit (CR7). The Burst Type bit is used
to configure the sequence of addresses read as
sequential or interleaved. When the Burst Type bit
is ’0’ the memory outputs from interleaved addresses; when the Burst Type bit is ’1’ the memory
outputs from sequential addresses. See Tables 4,
Burst Type Definition, for the sequence of addresses output from a given starting address in
each mode.
Valid Clock Edge Bit (CR6). The Valid Clock
Edge bit, CR6, is used to configure the active edge
of the Clock, K, during Synchronous Burst Read
operations. When the Valid Clock Edge bit is ’0’
the falling edge of the Clock is the active edge;
when the Valid Clock Edge bit is ’1’ the rising edge
of the Clock is active.
Burst Length Bit (CR2-CR0). The Burst Length
bits set the maximum number of Words that can
be output during a Synchronous Burst Read operation.
Table 3, Configuration Register gives the valid
combinations of the Burst Length bits that the
memory accepts; Tables 4, Burst Type Definition,
give the sequence of addresses output from a given starting address for each length.
CR5 CR4 and CR3 are reserved for future use.
16/61
Page 17
Table 3. Configuration Register
Address
Bit
MnemonicBit Name
16CR15Read Select1
15CR14Reserved
Reset
Value
ValueDescription
0Synchronous Burst Read
1Asynchronous Bus Read (default at power-up)
001Reserved
010
X-Latency = 4, 4-1-1-1 (use only with Y-Latency = 1)
All Bus Write operations t o the me mory are in terpreted by the Command Interface. Commands
consist of one or more sequential Bus Write operations. The Commands are summarized in Table
5, Commands. Refer to Table 5 in conjunction with
the text descriptions below.
After power-up or a Reset operation the memory
enters Read mode.
Synchronous Read operations and Latch Controlled Bus Read operations can only be used to
read the memory array. The Electr onic Sign ature,
CFI or Stat us Register will b e read in asynchro nous mode or single synchronous burst mode.
Once the memory returns to Read Memory Array
mode the bus will resume the setting in the Configuration Register automatically.
Read Memory A rray Command. The Read Memory Array command returns the memory to Read
mode. One Bus Write cycle is required to issue the
Read Memory Array command and return the
memory to Read mode. Once the command is issued the memory remains in Read mode until another command is issued. From Read mode Bus
Read commands will access the memory array.
While the Program/Erase Controller is executing a
Program, Erase, Block Protec t, Blocks Unprotect
or Protection Register Program operation the
memory will not accept the Read Mem ory Array
command until the operation completes.
Read Electr onic S ignature C ommand. The Read
Electronic Signature command is used to read the
Manufacturer Code, the Device Code, t he Block
Protection Status, the Configuration Register and
the Protect ion Registe r. One Bu s Write cycl e is required to issue the Read Electronic Signature
command. Once the command is issued subsequent Bus Read operations read the Manufacturer
Code, the Device Code, the Block Prote ction Status, the Configuration Register or the Protection
Register until another command is issued. Refer to
Table 7, Read Electronic Signature, Table 8, Read
Protection Register and Figure 8, Prot ection Register Memory Map for information on the add re sses.
Read Query Command. The Read Query Command is used to read data from the Common Flash
Interface (CFI) Memory Area. One Bus Write cycle
is required to issue the Read Query Command.
Once the command is issued subsequent Bus
Read operations read from the Common Flash Interface Memory Area. See Appendix B, Tables 26,
27, 28, 29, 30 and 31 for details on the information
contained in the Common Flash Interface (CFI)
memory area.
Read Statu s Registe r Co mm an d . The Read Status Register command is used to read the Status
Register. One Bus Write cycle is required to issue
the Read Status Register command. Once the
command is issued subsequent Bus Read operations read the Status Register until another command is issued.
The Status Register information is present on the
output data bus (DQ1-DQ 7) when both Chip Enable and Output Enable are low, V
.
IL
See the section on the Status Reg ister and Table
10 for details on the definitions of the Status Register bits
Clear Status Register Command. The Clear Status Register command can be used to res et bits
SR1, SR3, SR4 and SR5 in the Status Register to
‘0’. One Bus Write is required to issue the Clear
Status Register command.
The bits in the Status Register are stic ky and do
not automatically return to ‘0’ when a new Write to
Buffer and Program, Erase, Block Protect, Block
Unprotect or Protection Register Program command is issued. If any error occurs then it is essential to clear any error bits in the Status Register by
issuing the Clear Status Register command before
attempting a new Program, Erase or Resume
command.
Block Erase Command. The Block Erase command can be used to e rase a block. I t sets all of
the bits in the block to ‘1’. All previous data in the
block is lost. If the block is protected then the
Erase operation will abort, the data in the block will
not be changed and the Status Register will output
the error.
Two Bus Write operations are required to issue the
command; the second Bus Write cycle latches the
block address in the internal state machine and
starts the Program/Erase Controller. Once the
command is issued subsequent Bus Read operations read the Status Register. See the section on
the Status Register for details on the definitions of
the Status Register bits.
During the Erase operation the memory will only
accept the Read Status Register command and
the Program/Erase Su spend command. All ot her
commands will be ignored. Typical Erase times
are given in Table 9.
See Appendix C, Figure 25, Block Erase Flowchart and Pseudo Code, for a suggested flowchart
on using the Block Erase command.
Word Program Command. The Word Program
command is used to p rogram a single word in the
memory array. Two Bus Write operations are required to issue the command; the first write cycle
sets up the Word Program command, the second
write cycle latches the address and data to be programmed in the internal state machi ne and s tarts
the Program/Erase Controller.
20/61
Page 21
M58LW032C
If the block being program m ed i s prote cted an error will be set in the Status Register and the operation will abort without affecting the data in the
memory array. The block must be unprotected using the Blocks Unprotect command.
Write to Buffer and Program Command. The
Write to Buffer and Program comm and is used to
program the memory array.
Up to 16 Words can be loaded into the Write Buffer
and programmed into the memory. Each Write
Buffer has the same A5-A21 addresses.
Four successive steps are required to issue the
command.
1. One Bus Write operation is required to set up
the Write to Buffer and Program Comm and. Issue the set up command with the selected
memory Block Address where the program operation should occur (any address in the block
where the values will be programmed can be
used). Any Bus Read operations will start to output the Status Register after the 1st cycle.
2. Use one Bus Write operation to write the same
block address along with the value N on the
Data Inputs/Output, where N+1 is the number of
Words to be programmed.
3. Use N+1 Bus Write operations to load the address and data for each Word into the Write
Buffer. See the constraints on the address c ombinations listed below. The addresses must
have the same A5-A21.
4. Finally, use one Bus Write operation to issue the
final cycle to confirm the command and start the
Program operation.
Invalid address combinations or failing to follow
the correct sequence of Bus Write cycles will set
an error in the Status Register and abort the operation without affecting the data in the memory array. The Status Register should be cleared before
re-issuing the command.
If the block being program m ed i s prote cted an error will be set in the Status Register and the operation will abort without affecting the data in the
memory array. The block must be unprotected using the Blocks Unprotect command.
See Appendix C, Figure 23, Write to Buffer and
Program Flowchart and Pseudo Code, for a suggested flowchart on using the W rite to Buf fer and
Program command.
Program/Erase Suspend Command. The Program/Erase Suspend command is used to pause a
Word Program, Write to Buffer and Program or
Erase operation. The command will only be accepted during a Program or an Erase operation. It
can be issued at any tim e during an Erase operation but will only be accepted during a Word Pro-
gram or Write to Buf fer and P rogram comman d if
the Program/Erase Controller is running.
One Bus Write cycle is required to i ssue the P rogram/Erase Suspend command and pause the
Program/Erase Controller. Once the command is
issued it is necessary to poll the Program/Erase
Controller Status bit (SR7) to find out when the
Program/Erase Controller has paused; no other
commands will be accepted until the Program/
Erase Controller has paused. After the Program/
Erase Controller has paused, the memory will continue to output the Status Register until another
command is issued.
During the polling period between issuing the Program/Erase Suspend command and the Program/
Erase Controller pausing it is possible for the operation to complete. Once the Program/Erase
Controller Status bit (SR7) indicates that the Program/Erase Controller is no longer active, the Program Suspend Status bit (SR2) or the Erase
Suspend Status bit (SR6) can be used to determine if the operation has completed or is suspended. For timing on the delay between issuing the
Program/Erase Suspend command and the Program/Erase Controller pausing see Table 9.
During Program/Erase Suspend the Read Memory Array, Read Status Register, Read Elect ronic
Signature, Read Query and Program/Erase Resume commands will be accepted by the Command Interface. Additionally, if the suspended
operation was Erase then the W rite to B uffer and
Program, and the Program Suspend commands
will also be ac cepted. W hen a program o peration
is completed inside a Block Erase Suspend the
Read Memory Array command m ust be issued to
reset the device in Read mode, then the Erase Resume command can be issued to complete the
whole sequence. Only the blocks not being erased
may be read or programmed correctly.
See Appendix C, Figure 24 , Program Suspend &
Resume Flowchart and Pseudo Code, and Figure
26, Erase Suspend & Resume Flowchart and
Pseudo Code, for suggested flowcharts on using
the Program/Erase Suspend command .
Program / Erase Resum e Command. The Program/Erase Resume command can be used to restart the Program/Erase Controller after a
Program/Erase Suspend operat ion h as paused it.
One Bus Write cycle is required to i ssue the P rogram/Erase Resume command. Once the command is issued subsequ ent Bus Read operations
read the Status Register.
Set Conf ig uration Regis te r Com m and. Th e
Set Configuration Register command is used to
write a new value to t he B urst Configurat ion Control Register which defines the burst length, type,
X and Y latencies, Synchronous/Asynchronous
21/61
Page 22
M58LW032C
Read mode and the valid Clock edge configuration.
Two Bus Writ e cycles a re required to i ssue the Set
Configuration Register command. Once the command is issued the memory returns to Read mode
as if a Read Memory Array command had been issued.
The value for the Configuration Register is presented on A1-A16. CR0 is on A1, CR1 on A2, etc.;
the other address bits are ignored.
Block Protect Command. The Block Protect
command is used to protec t a block and prevent
Program or Erase operations from changing the
data in it. Two Bus Write cycles are required to issue the Block Protect command; the second Bus
Write cycle latches the block address in the internal state machine and sta rts the Program/Erase
Controller. Once the command is issued subsequent Bus Read operations read the Status Register. See the section on the Status Register for
details on the definitions of the Status Register
bits.
During the Block Protect operation the memory will
only accept the Read Sta tus Register command.
All other commands will be ignored. Typical Block
Protection times are given in Table 9.
The Block Protection bits are non-volatile, once
set they remain set through reset and powerdown/power-up. They ar e cleared by a Blocks Unprotect command.
See Appendix C, Figure 27, Block Protect Flowchart and Pseudo Code, for a suggested flowchart
on using the Block Protect command.
Blocks Unprotect Command. The Blocks Unprotect command is used to unprotect all of the
blocks. Two Bus Write cycles are requir ed to issue
the Blocks Unprotect command ; the second Bus
Write cycle starts the Program/Erase Controller.
Once the command is issued subsequent Bus
Read operations read the Status Register. See the
section on the Stat us Register for details on the
definitions of the Status Register bits.
During the Block Unprotect operation the memory
will only accept the Read Status Register command. All other commands will be ignored. Typical
Block Protection times are given in Table 9.
See Appendix C, Figure 28, Block Unprotect Flowchart and Pseudo Code, for a suggested flowchart
on using the Block Unprotect command.
Protectio n Register Program Comm and. The
Protection Register Program c omm and is used to
Program the 64 bit user segment of the Protection
Register. The segment is programmed 16 bits at a
time. Two write cycles are required to issue the
Protection Register Program command.
■ The first bus cycle sets up the Protection
Register Program command.
■ The second latches the Address and the Data to
be written to the Protection Register and starts
the Program/Erase Controller.
Read operations output the Status Register content after the programming has started.
The user-programmable segment can be locked
by programming bi t 1 of the Protection Register
Lock location to ‘0’ (see Table 8). Bit 0 of the Protection Register Lock location locks the factory
programmed segment and is programmed to ‘0’ in
the factory. The locking of the Protec tion Regi ster
is not reversible, once the lock bits are programmed no further changes c an be m ade to the
values stored in the Protection Register, see Figure 8, Protection Register Memory Map. Attemp ting to program a previously protected Protection
Register will result in a Status Register error.
The Protection Register Program cannot be suspended. See Appendix C, Figure 29, Protection
Register Program Flowchart and Pseudo Code,
for the flowchart for using the P rotection Regi ster
Program command.
Configure STS Command.
The Configure STS command is used to configure
the Status/(Ready/Busy) pin. After power-up or reset the STS pin is configured in Ready/Busy
mode. The pin can be configured in Status mode
using the Configure STS command (refer to Status/(Ready/Busy) section for more details.
Two write cycles are required to issue the Configure STS command.
■ The first bus cycle sets up the Configure STS
command.
■ The second specifies one of the four possible
configurations (refer to Table 6, Configuration
Codes):
– Ready/Busy mode
– Pulse on Erase complete mode
– Pulse on Program complete mode
– P ulse on E rase or Program complete mode
The device will not accept the Configure STS command while the Program/Erase controller is busy
or during Program/Erase Suspend. When STS pin
is pulsing it remains Low for a typical time of
250ns. Any invalid Configuration Code will set an
error in the Status Register.
22/61
Page 23
Table 5. Commands
Bus Operations
Command
Cycles
Read Memor y Array
2 WriteXFFh ReadRARD
≥
Read Electronic Signature ≥ 2 WriteX90h Read
Read Status Register2WriteX70h ReadXSRD
Read Query
2 WriteX98h Read
≥
Clear Status Register1WriteX50h
Block Erase2WriteX20hWriteBAD0
Word Program2WriteX
Write to Buffer and
Program
4 + N Write BAE8h WriteBANWrite PAPD WriteXD0h
Program/Erase Suspend1WriteXB0h
Program/Erase Resume1WriteXD0h
Set Configuration Register2WriteX60h W riteBCR03h
Block Protect2WriteX6 0hWriteBA01h
Blocks Unprotect2WriteX60hWriteXD0h
1st Cycle2nd CycleSubsequentFinal
Op. Addr. DataOp.Addr.Data Op. Addr. Data Op. Addr. Data
(3)
(4)
IDD
QD
40h
WritePAPD
10h
ID A
QA
M58LW032C
(3)
(4)
Protection Register
Program
2WriteXC0h WritePRAPRD
Configure STS command2WriteXB8h WriteXCC
Note: 1. X Don’t Care; RA Read Address, RD Read Data, IDA Identifier Address, IDD Identifier Data, SRD Status Register Data, PA Program
Address; PD Prog ram Data, QA Qu ery Add ress, Q D Q uery Dat a, BA A ny address in the Block, BC RConfigur at ion Re gi ster v al ue,
CC Configuration Code.
2. Base Address, refer to Fi gure 8 and Tabl e 8 f or more inform at i on.
3. For Identifier addres ses and data refer to table 7, Rea d Electronic Signature.
4. For Query A ddress and Data refer to Appendix B, CFI.
23/61
Page 24
M58LW032C
Table 6. Configuration Codes
Configuration
Code
00h00Ready/Busy
01h01
02h10
03h11
Note: 1. DQ2-DQ7 are reserved
2. When STS pin is pulsing it remains Low for a typical time of 250ns.
Table 7. Read Electronic Signature
Manufacturer Code000000h0020h
DQ1DQ2ModeSTS PinDescription
during P/E
Pulse on Erase
complete
Pulse on
Program
complete
Pulse on Erase
or Program
complete
V
OL
operations
Hi-Z when the
memory is ready
Pulse Low then
High when
operation
completed
(2)
The STS pin is Low during Program and
Erase operations and high impedance when
the memory is ready for any Read, Program
or Erase operation.
Supplies a system interrupt pulse at the end
of a Block Erase operation.
Supplies a system interrupt pulse at the end
of a Program operation.
Supplies a system interrupt pulse at the end
of a Block Erase or Program operation.
Program/Erase Cycles (per block)100,000cycles
Data Retention20years
Note: 1. Typical values m easured at room temperature and nominal voltages.
2. Sampled, but not 100% tested.
3. Effective byte programming time 6µs, effective word prog ram m i ng time 12µ s.
4. Maximu m value measured at worst case conditions for bot h temperatu re and V
5. Maximu m value measured at worst case conditions for bot h temperatu re and V
after 100,000 program/erase cycles.
DD
.
DD
s
25/61
Page 26
M58LW032C
STATUS REGISTER
The Status Register provides information on the
current or previous Program, Erase, Block Protect
or Blocks Unprotect operation. The various bits in
the Status Register convey information and errors
on the operation. They are output on DQ7-DQ0.
To read the Status Register the Read Status Register command can be issued. The Status Register
is automatically read after Program, Erase, Block
Protect, Blocks Unprotect and Program/Erase Resume commands. The Status Register can be
read from any address.
The Status Register can only be read using Asynchronous Bus Read or Single Synchronous Read
operations. Once the memory returns to Read
Memory Array mode the bus will resume the setting in the Configuration Register automatically.
The contents of the Status Register can be updated during an Erase or Program operation by toggling the Output Enable pin or by dis-activating
(Chip Enable, V
able and Output Enable, V
Status Register bits SR 5, S R4, SR 3 and SR1 are
associated with various error conditions and can
only be reset with the Clear Status Register command. The Status Register bits are summarized in
Table 10, Status Register Bits. Refer to Table 10
in conjunction with the following text descriptions.
Program/Erase Controller Status Bit (SR7). The
Program/Erase Controller Status bit indicates
whether the Program/Erase Controller is act ive or
inactive. When the Program/Erase Controller Status bit is Low, V
is active and all other Status Register bits are High
Impedance; when the bit is High, V
gram/Erase Controller is inactive.
The Program/Erase Controller Status is Low immediately after a Program/Erase Suspend command is issued until the Program/Erase Controller
pauses. After the Program/Erase Controller pauses the bit is High.
During Program, Erase, Block Protect and Blocks
Unprotect operations the Program/Erase Controller Status bit can be polled to find the end of the
operation. The other bits in the Status Register
should not be tested until the Program/Erase Controller completes the operation and the bit is High.
After the Program/Erase Cont roller completes its
operation the Erase S tatus, Program Status and
Block Protection Status bits should be tested for
errors.
Erase Suspend Status Bit ( SR6). The Erase
Suspend Status bit indicates that an Erase operation has been suspended and is waiting to be resumed. The Erase Suspend Status should only be
considered valid when the Program/Erase Controller Status bit is High (Program/Erase Controller
) and then reactivating (Chip En-
IH
, the Program/Erase Controller
OL
) the device.
IL
, the Pro-
OH
inactive); after a Program/Erase Suspend command is issued the memory may still complete the
operation rather than entering the Suspend mode.
When the Erase Suspend Statu s bit is Low, V
OL
the Program/Erase Controller is active or has completed its operation; when the bit is High, V
OH
, a
Program/Erase Suspend com mand has been issued and the memory is waiting for a Program/
Erase Resume command.
When a Program/Erase Re sume command is issued the Erase Suspend Status bit returns Low.
Erase Status Bit (SR5). The Erase Status bit
can be used to identify if the memory has failed to
verify that the block has erased correctly or that all
blocks have been unprotected successfully. The
Erase Status bit should be read once the Program/
Erase Controller Status bit is High (Program/Erase
Controller inactive).
When the Erase St atu s bit i s Low, V
, the mem-
OL
ory has successfully verified that the block has
erased correctly or all blocks have been unprotected successfully. When the Erase Status bit is
High, V
, the erase operation has failed. De-
OH
pending on the cause of the failure othe r Status
Register bits may also be set to High, V
■ If only the Erase Status bit (SR5) is set High,
V
then the Program/Erase Controller has
OH,
OH
.
applied the maximum number of pulses to the
block and still failed to verify that the block has
erased correctly or that all the blocks have been
unprotected successfully.
■ If the failure is due to an erase or blocks
unprotect with V
bit (SR3) is also set High, V
■ I f the failure is due to an erase on a protected
low, VOL, then V
PEN
OH
Status
PEN
.
block then Block Protection Status bit (SR1) is
also set High, V
■ If the failure is due to a program or erase
OH
.
incorrect command sequence then Program
Status bit (SR4) is also set High, V
OH
.
Once set High, the Erase Status bit can only be reset Low by a Clear Status Register command or a
hardware reset. If set High it should be reset before a new Program or Erase command is issued,
otherwise the new command will appear to fail.
Program Status Bit (SR4). The Program Status
bit is used to identify a Program or Block Protect
failure. The Program Status bit should be read
once the Program/Erase Controller Status bit is
High (Program/Erase Controller inactive).
When the Program Status bit is Low, V
OL
, the
memory has successfully verified that the Write
Buffer has programmed correc tly or the block is
protected. When the Program Status bit is High,
V
, the program or block protect operation has
OH
,
26/61
Page 27
M58LW032C
failed. Depending on the cause of the failure other
Status Register bits may also be set to High, V
■ If only the Program Status bit (SR4) is set High,
V
then the Program/Erase Controller has
OH,
OH
applied the maximum number of pulses to the
byte and still failed to verify that the Write Buffer
has programmed correctly or that the Block is
protected.
■ If the failure is due to a program or block protect
with V
is also set High, V
■ If the failure is due to a program on a protected
low, VOL, then V
PEN
OH
Status bit (SR3)
PEN
.
block then Block Protection Status bit (SR1) is
also set High, V
■ If the failure is due to a program or erase
OH
.
incorrect command sequence then Erase
Status bit (SR5) is also set High, V
OH
.
Once set High, the Program Status bit can only be
reset Low by a Clear Status Register command or
a hardware reset. If set High it should be reset before a new Program or Erase command is issued,
otherwise the new command will appear to fail.
V
Status Bit (SR3). The V
PEN
Status bit can
PEN
be used to identify if a Program, Erase, Block Protection or Block Unprotection operation has b een
attempted when V
When the V
PEN
is Low, VIL.
PEN
Status bit is Low, VOL, no Program, Erase, Block Protection or Block Unprotection operations have been attempted with V
PEN
Low, VIL, since the last Clear S tatus Register command, or hardware reset. When the V
bit is High, V
, a Program, Erase, Block Protec-
OH
PEN
Status
tion or Block Unprotection operation has been a ttempted with V
Once set High, the V
Low, VIL.
PEN
Status bit can only be re-
PEN
set by a Clear Status Register command or a hardware reset. If set High it should be reset befo re a
new Program, Erase, Block Protection or Block
Unprotection command is issued, otherwise the
new command will appear to fail.
Program Suspend Status Bit (SR2). The Program Suspend Status bit indicates that a Program
.
operation has been sus pended and is waiting to
be resumed. The Program Suspend Status should
only be considered valid when the Program/Erase
Controller Status bit is High (Program/Erase Controller inactive); after a Program/Erase Suspend
command is issued the memory may still complete
the operation rather than entering the Suspend
mode.
When the Program Suspend Status bit is Low,
, the Program/Erase Controller is active or has
V
OL
completed its operation; when the bit is High, V
a Program/Erase Suspend command has been issued and the memory is waiting for a Program/
Erase Resume command.
When a Program/Erase Re sume command is issued the Program Suspend Status bit returns Low.
Block Protection Status Bit (SR1). The Block
Protection Status bit can be used to identify if a
Program or Erase operation has tried to modify the
contents of a protected block.
When the Block Protection Status bit is Low, V
no Program or Erase operations have been attempted to protected blocks since the last Clear
Status Register command or hardware reset;
when the Block Protection Status bit is High, V
a Program (Program St atus bit SR4 set High) or
Erase (Erase Status bit SR5 set High) operation
has been attempted on a protected block.
Once set High, the Block Protection Status bit can
only be reset Low by a Clear Status Register command or a hardware reset. If set High it should be
reset before a new Program or Erase command is
issued, otherwise the new command will appear to
fail.
Reserved (SR0). SR0 of the Status Register is
reserved. Its value should be masked.
OH
OL
OH
,
,
,
27/61
Page 28
M58LW032C
Table 10. Status Register Bits
OPERATIONSR7SR6SR5SR4SR3S R2SR1RB
Program/Erase Controller active0Hi-Z
Write Buffer not ready0Hi-Z
Write Buffer ready 1000000Hi-Z80h
Write Buffer ready in Erase Suspend1100000Hi-ZC0h
Program suspended1000010Hi-Z84h
Program suspended in Erase Suspend1100010Hi-ZC4h
Program/Block Protect complete d
successfully
Program completed successfully in Erase
Suspend
Program/Block protect failure due to
incorrect command sequence
Program failure due to incorrect command
sequence in Erase Suspend
Program/Block Protect failure due to
V
error
PEN
Program failure due to V
error in Erase
PEN
Suspend
1000000Hi-Z80h
1100000Hi-ZC0h
1011000Hi-ZB0h
1111000Hi-ZF0h
1001100Hi-Z98h
1101100Hi-ZD8h
Result
(Hex)
V
OL
V
OL
N/A
N/A
Program failure due to Block Protection1001001Hi-Z92h
Program failure due to Block Protection in
Erase Suspend
Program/Block Protect failure due to cell
failure
Program failure due to cell failure in Erase
successfully
Erase/Blocks Unprotect failure due to
incorrect comman d sequence
Erase/Blocks Unprotect failure due to
error
V
PEN
1000000Hi-Z80h
1011000Hi-ZB0h
1010100Hi-ZA8h
Erase failure due to Block Protection1010001Hi-ZA2h
Erase/Blocks Unprotect failure due to
failed cells in Block
1010000Hi-ZA0h
28/61
Page 29
MAXIMUM RATING
Stressing the device above the ratings listed in Table 11, Absolute Maximum Ratings, may cause
permanent damage to the device. These are
stress ratings only and operation of the dev ice at
these or any other conditions above those indicated in the Operating sections of this specification is
Table 11. Absolute Maximum Ratings
SymbolParameter
M58LW032C
not implied. Exposure to Absol ute Maxim um Ra ting conditions for extended periods may affect device reliability. Refer also to the
STMicroelectronics SURE Program and other relevant quality documents.
Value
Unit
MinMax
T
BIAS
T
STG
V
IO
V
, V
DD
DDQ
Temperature Under Bias–40 125 °C
Storage Temperature–55 150 °C
V
Input or Output Voltage–0.6
Supply Voltage–0.6 5.0V
DDQ
+0.6
V
29/61
Page 30
M58LW032C
DC AND AC PARAMETERS
This section summarizes the operat ing and measurement conditions, and the DC and AC characteristics of the device. The parameters in t he DC
and AC characteristics Tables that follow, are derived from tests performed under the Measure-
Table 12. Operating and AC Measurement Conditions
Parameter
Supply Voltage (V
Input/Output Supply Voltage (V
Ambient Temperature (T
Load Capacitance (C
Clock Rise and Fall Times3ns
Input Rise and Fall Times4ns
Input Pulses Voltages
Input and Output Timing Ref. Voltages
DD
)
)
DDQ
)
A
)
L
ment Conditions summarized in Table 12,
Operating and AC Measurem ent Conditions. Designers should check that the operating conditions
in their circuit match the measurement conditions
when relying on the quoted parameters.
M58LW032C
90, 110
MinMax
2.7 3.6V
1.8
Grade 10 70°C
Grade 6–40 85°C
0 to V
0.5 V
V
DD
30pF
DDQ
DDQ
Units
V
V
V
Figure 9. AC Me asurement In put Ou t put
Waveform
V
DDQ
0.5 V
0V
DDQ
AI00610
Figure 10. AC Measurement Lo a d Cir c ui t
1.3V
V
DDQ
V
DD
DEVICE
UNDER
TEST
0.1µF
0.1µF
CL includes JIG capacitance
Table 13. Capacitance
SymbolParameterTest ConditionTypMaxUnit
V
V
IN
OUT
= 0V
= 0V
68pF
812pF
C
IN
C
OUT
Note: 1. TA = 25°C, f = 1 MHz
2. Sampled only, not 100% tested.
Input Capacitance
Output Capacitance
1N914
3.3kΩ
CL
DQ
AI03459
S
30/61
Page 31
M58LW032C
Table 14. DC Characteristics
SymbolParameterTest ConditionMinMaxUnit
I
I
I
I
DDB
I
DD1
I
DD5
I
DD2
I
DD3
Input Leakage Curren t
LI
Output Leakage Current
LO
Supply Current (Random Read)
DD
Supply Current (Burst Read)
Supply Current (Standby)
Supply Current (Auto Low-Power)
Supply Current (Reset/Power-Down)
Supply Current (Program or Erase,
Block Protect, Block Unprotect)
0V≤ V
0V
E
= VIL, G = VIH, f
E
= VIL, G = VIH, f
E
E
Program or Erase operation in
≤ V
IN
DDQ
V
≤
≤V
OUT
DDQ
add
clock
= VIH, RP = V
= VIL, RP = V
RP
= V
IL
progress
= 6MHz
= 50MHz
IH
IH
±1µA
±5µA
20mA
30mA
40
40
40µA
30mA
A
µ
A
µ
I
V
V
V
DD4
V
V
OL
OH
LKO
Supply Current
(Erase/Program Suspend)
Input Low Voltage–0.5
IL
Input High Voltage
IH
Output Low Voltage
Output High Voltage
= V
E
IH
I
= 100µA
OL
I
= –100µAV
OH
VDD Supply Voltage (Erase and
Program lockout)
V
DDQ
DDQ
x 0.7 V
–0.2
40µA
V
x 0.3
DDQ
+ 0.5
DDQ
0.2V
2V
V
V
V
31/61
Page 32
M58LW032C
Figure 11. Asynchronous Bus Read AC Waveforms
tAVAV
A1-A21
tELQV
E
L
VALID
tAXQXtELQX
tGLQV
tGLQX
G
tAVQV
DQ0-DQ15
Note: As ynchronous Re ad CR15 = 1
Table 15. Asynchronous Bus Read AC Characteristics .
SymbolParameter
t
AVAV
t
AVQV
t
ELQX
t
ELQV
t
GLQX
t
GLQV
t
EHQX
t
GHQX
t
AXQX
t
EHQZ
t
GHQZ
Address Valid to Address ValidMin90110ns
Address Valid to Output ValidMax90110ns
Chip Enable Low to Output TransitionMin00ns
Chip Enable Low to Output ValidMax90110ns
Output Enable Low to Output TransitionMin00ns
Output Enable Low to Output ValidMax2525ns
Chip Enable High to Output TransitionMin00ns
Output Enable High to Output TransitionMin00ns
Address Transition to Output TransitionMin00ns
Chip Enable High to Output Hi-ZMax2525ns
Output Enable High to Output Hi-ZMax2020ns
tEHQZ
tEHQX
tGHQZ
tGHQX
OUTPUT
AI06255
M58LW032C
Unit
901 10
32/61
Page 33
Figure 12. Asynchronous Latch Controlled Bus Read AC Waveforms
M58LW032C
A1-A21
tAVLL
L
E
G
DQ0-DQ15
Note: Asynchronous Read CR15 = 1
tAVLH
VALID
tELLL
tLLLH
tELLH
tGLQV
tGLQX
tLLQX
tLLQV
tLHAX
tEHLXtLHLL
tEHQZ
tEHQX
OUTPUT
Table 16. Asynchronous Latch Controlled Bus Read AC Characteris tics
SymbolParameter
t
AVLL
t
AVLH
t
LHLL
t
LLLH
t
ELLL
t
ELLH
t
LLQX
t
LLQV
t
LHAX
t
GLQX
t
GLQV
t
EHLX
Note: Fo r other timings see Table 15, A synchronous Bus Read Characteristics.
Address Valid to Latch Enable LowMin00ns
Address Valid to Latch Enable HighMin1010ns
Latch Enable High to Latch Enable LowMin1010ns
Latch Enable Low to Latch Enable HighMin1010ns
Chip Enable Low to Latch Enable LowMin00ns
Chip Enable Low to Latch Enable HighMin1010ns
Latch Enable Low to Output TransitionMin00ns
Latch Enable Low to Output ValidMin90110ns
Latch Enable High to Address TransitionMin66ns
Output Enable Low to Output TransitionMin00ns
Output Enable Low to Output ValidMax2525ns
Chip Enable High to Latch Enable TransitionMin00ns
90110
tGHQZ
tGHQX
AI06256b
M58LW032C
Unit
33/61
Page 34
M58LW032C
Figure 13. Asynchronous Page Read AC Waveforms
A1-A2
A3-A21
tAVQV
E
L
G
DQ0-DQ15
Note: As ynchronous Re ad CR15 = 1
VALIDVALID
VALID
tELQV
tELQX
tGLQV
tGLQX
OUTPUTOUTPUT
Table 17. Asynchronous Page Read AC Characteristics
SymbolParameter
t
AXQX1
t
AVQV1
Note: Fo r other timings see Table 15, A synchronous Bus Read Characteristics.
Address Transition to Output TransitionMin6ns
Address Valid to Output ValidMax25ns
tAVQV1
tAXQX1
tAXQX
tEHQZ
tEHQX
tGHQZ
tGHQX
AI06257
M58LW032C
Unit
90, 110
34/61
Page 35
Figure 14. Asynchronous Write AC Waveform, Write Enable Controlled
M58LW032C
A1-A21
E
L
G
W
DQ0-DQ15
RB
V
PEN
tELWL
tGHWL
tAVWH
tVPHWH
VALID
tWLWH
tDVWH
tWHEH
INPUT
tWHAX
tWHDX
tWHBL
tWHWL
tWHGL
Figure 15. Asynchronous Lat ch C on t rol le d W ri te AC Waveform, Write Ena bl e Cont ro ll ed
AI06258
A1-A21
L
E
G
W
DQ0-DQ15
RB
V
PEN
tELLL
tELWL
tAVLH
VALID
tLLLH
tWLLH
tLHWH
tWLWH
tDVWH
tVPHWH
INPUT
tLHAX
tWHEH
tWHDX
tWHBL
tWHWL
tLHGL
tWHGLtGHWL
AI06259
35/61
Page 36
M58LW032C
Table 18. Asynchronous Write and Latch Controlled Write AC Characteristics, Write Enable
Controlled.
SymbolParameter
t
AVLH
t
AVWH
t
DVWH
t
ELWL
t
ELLL
t
LHAX
t
LHGL
t
LHWH
t
LLLH
t
LLWH
t
VPHWH
t
WHAX
t
WHBL
t
WHDX
t
WHEH
t
GHWL
t
WHGL
t
WHWL
t
WLWH
t
WLLH
Address Valid to Latch Enable HighMin10ns
Address Valid to Write Enable HighMin50ns
Data Input Valid to Write Enable HighMin50ns
Chip Enable Low to Write Enable LowMin0ns
Chip Enable Low to Latch Enable LowMin0ns
Latch Enable High to Address TransitionMin6ns
Latch Enable High to Output Enable LowMin95ns
Latch Enable High to Write Enable HighMin0ns
Latch Enable low to Latch Enable HighMin10ns
Latch Enable Low to Write Enable HighMin50ns
Program/Erase Enable High to Write Enable HighMin0ns
Write Enable High to Address TransitionMin0ns
Write Enable High to Ready/Busy lowMax500ns
Write Enable High to Input TransitionMin0ns
Write Enable High to Chip Enable HighMin0ns
Output Enable High to Write Enable LowMin20ns
Write Enable High to Output Enable LowMin35ns
Write Enable High to Write Enable LowMin30ns
Write Enable Low to Write Enable HighMin70ns
Write Enable Low to Latch Enable HighMin10ns
M58LW032C
90, 110
Unit
36/61
Page 37
Figure 16. Asynchronous Write AC Waveforms, Chip Enable Controlled
Table 19. Asynchronous Write and Latch Controlled Write AC Characteristics, Chip Enable
Controlled
SymbolParameter
t
AVLH
t
AVEH
t
DVEH
t
EHAX
t
EHBL
t
EHDX
t
EHWH
t
EHGL
t
EHEL
t
ELEH
t
ELLH
t
GHEL
t
LHAX
t
LHGL
t
LHEH
t
LLLH
t
LLEH
t
VPHEH
t
WLEL
t
WLLL
Address Valid to Latch Enable HighMin10ns
Address Valid to Chip Enable HighMin50ns
Data Input Valid to Chip Enable HighMin50ns
Chip Enable High to Address TransitionMin0ns
Chip Enable High to Ready/Busy lowMax500ns
Chip Enable High to Input TransitionMin0ns
Chip Enable High to Write Enable HighMin0ns
Chip Enable High to Output Enable LowMin35ns
Chip Enable High to Chip Enable LowMin30ns
Chip Enable Low to Chip Enable HighMin70ns
Chip Enable Low to Latch Enable HighMin10ns
Output Enable High to Chip Enable LowMin20ns
Latch Enable High to Address TransitionMin6ns
Latch Enable High to Output Enable LowMin35ns
Latch Enable High to Chip Enable HighMin0ns
Latch Enable low to Latch Enable HighMin10ns
Latch Enable Low to Chip Enable HighMin50ns
Program/Erase Enable High to Chip Enable HighMin0ns
Write Enable Low to Chip Enable LowMin0ns
Write Enable Low to Latch Enable LowMin0ns
Note: 1. Valid Data Ready = Valid Low during valid clock edge (CR8 = 0)
2. V= Valid output, NV= Not Valid output.
3. R is an open drain out put with an interna l pull up re sistor of 1MΩ. Depend ing on t h e Va lid Da ta R eady pin c apac ita nce load an
external pul l up resistor must b e chosen accor di ng to the system clock period.
V
VVNVNVVV
tRLKH
(3)
Table 20. Synchronous Burst Read AC Characteristics
SymbolParameter
t
AVKH
t
AVLH
t
ELKH
t
ELLH
t
GLKH
t
KHAX
t
KHLL
t
KHLH
t
KHQX
t
LLKH
t
LLLH
t
KHQV
t
QVKH
t
RLKH
Note: Fo r other timings see Table 15, A synchronous Bus Read Characteristics.
Address Valid to Active Clock EdgeMin7ns
Address Valid to Latch Enable HighMin10ns
Chip Enable Low to Active Clock EdgeMin10 ns
Chip Enable Low to Latch Enable HighMin10ns
Output Enable Low to Valid Clock EdgeMin20ns
Valid Clock Edge to Address TransitionMin5ns
Valid Clock Edge to Latch Enable LowMin0ns
Valid Clock Edge to Latch Enable HighMin0ns
Valid Clock Edge to Output TransitionMin3ns
Latch Enable Low to Valid Clock EdgeMin6ns
Latch Enable Low to Latch Enable HighMin7ns
Valid Clock Edge to Output ValidMax15ns
Output Valid to Active Clock EdgeMin5ns
Valid Data Ready Low to Valid Clock EdgeMin5ns
M58LW032CUnit
90, 110
AI05510
40/61
Page 41
Figure 20. Reset, Power-Down and Power-up AC Waveform
W
E, G
DQ0-DQ15
tPHQV
RB
RP
tVDHPHtPLPH
VDD, VDDQ
M58LW032C
tPLRH
Power-Up
and Reset
Table 21. Reset, Power-Down and Power-u p AC Charac teris tics
SymbolParameter
t
PHQV
t
PLPH
t
PLRH
t
VDHPH
Reset/Power-Down High to Data ValidMax130150ns
Reset/Power-Down Low to Reset/Power-Down HighMin100100ns
Reset/Power-Down Low to Ready HighMax3030µs
Supply Voltages High to Reset/Power-Down HighMin00µs
Reset during
Program or Erase
AI05521
M58LW032C
Unit
90110
41/61
Page 42
M58LW032C
PACKAGE MECHANICAL
Figure 21. TSOP56 - 56 lead Plastic Thin Small Outline, 14 x 20 mm, Package Outline
A2
1N
e
E
B
N/2
D1
D
DIE
A
CP
C
TSOP-a
Note: Drawing is not to scale.
LA1α
Table 22. TSOP56 - 56 lead Plastic Thin Small Outline, 14 x 20 mm, Package M echa nical Data
N = TSOP56: 14 x 20 mm
ZA = TBGA64: 10 x 13mm, 1mm pitch
Temperature Range
1 = 0 to 70 °C
6 = –40 to 85 °C
Option
Blank = Standard Packing
T = Tape & Reel Packing
E = Lead-free Package, Standard Packing
F = Lead-free Package, Tape & Reel Packing
Note: Devices are shipped from the factory with the memory content bits erased to ’1’.
For a list of available options (Speed, Pac kage, etc...) or for furthe r information on any aspect of this de-
vice, please contact the ST Sales Office nearest to you.
The Common Flash Interface is a JEDEC approved, standardized data structure that can be
read from the Flash memory device. It allows a
system software to query the device to det ermine
various electrical and t iming parameters, density
information and functions supported by the memory. The system can interface easily with the de-
Table 26. Query Structure Overview
OffsetSub-section NameDescription
00hManufacturer Code
01hDevice Code
10hCFI Query Identification StringCommand set ID and algorithm data offset
1BhSystem Interface InformationDevice timing and voltage information
27hDevice Geometry DefinitionFlash memory layout
(1)
P(h)
A(h)
(SBA+02)h Block Status RegisterBlock-related Information
Note: 1. Offs et 15h defines P whi ch points to the Primary Algor i thm Extended Qu ery Address Ta bl e.
2. Offset 19h defines A whic h poi nts to the Alternate Algorithm Extended Query Addre ss T abl e.
3. SBA is the S t art Base Address for each bloc k.
Primary Algorithm-specific Extended Query Table
(2)
Alternate Algorithm-specific Extended Query Table
vice, enabling the software to upgrade itself when
necessary.
When the CFI Query C ommand (RCFI) is issued
the device enters CFI Query mode and the data
structure is read from the memory. Tables 26 , 27,
28, 29, 30 and 31 show the addresses used to retrieve the data.
Additional information specific to the Primary
Algorithm (optional)
Additional information specific to the Alternate
Algorithm (optional)
Table 27. CFI - Query Address and Data Output
Address
Note: 1. Query Data are always presented on DQ7-DQ0. DQ15-DQ8 are set to ’0’.
2. Offset 19h defines A which points to the Alternate Algorithm Exten ded Query Address Table.
bit6, Protection bits supported (1=yes)
bit7, Page Read supported (1=yes)
bit8, Synchronous Read supported (1=yes)
bits 9 to 31 reserved for future use
Function allowed after Suspend:
(P+9)h3Ah01h
Program allowed after Erase Suspend (1=yes)
Bit 7-1 reserved for future use
(P+A)h3Bh
01h
(P+B)h3Ch00h
(P+C)h3Dh33h
(P+D)h3Eh00h
Block Status Register
bit0, Block Protect Bit status active (1=yes)
bit1, Block Lock-Down Bit status active (not available)
bits 2 to 15 reserved for future use
OPTIMUM Program/Erase voltage conditions
V
DD
OPTIMUM Program/Erase voltage conditions
V
PP
(P+E)h3Fh01hOTP protection: No. of protection register fields
(P+F)h40h80hProtection Register’s start address, least significant bits
(P+10)h41h00hProtection Register’s start address, most significant bits
(P+11)h42h03h
Read Memory Array command:
– write FFh
– one or more data reads
from other blocks
Program Erase Resume Command:
– write D0h
to resume erasure
– if the program operation completed
then this is not necessary. The device
returns to Read Array as normal
(as if the Program/Erase Suspend
command was not issued).
AI00612b
51/61
Page 52
M58LW032C
Figure 25. Erase Flowchart and Pseudo Code
Start
Write 20h
Write D0h to
Block Address
Read Status
Register
SR7 = 1
YES
SR3 = 0
YES
SR4, SR5 = 0
YES
SR5 = 0
NO
NO
NO
NO
NO
Suspend
V
Invalid
PEN
Error (1)
Command
Sequence Error
Erase
Error (1)
YES
Suspend
Loop
Erase command:
– write 20h
– write D0h to Block Address
(A12-A17)
(memory enters read Status
Register after the Erase command)
do:
– read status register
– if Program/Erase Suspend command
given execute suspend erase loop
Read Memory Array command:
– write FFh
– one or more data reads
from other blocks
Program/Erase Resume command:
– write D0h to resume the Erase
operation
– if the Program operation completed
then this is not necessary. The device
returns to Read mode as normal
(as if the Program/Erase suspend
was not issued).
AI00615b
53/61
Page 54
M58LW032C
Figure 27. Block Protect Flowchart and Pseudo Code
Figure 29. Protection Register Program Flowchart and Pseudo Code
Start
Write C0h
Write
PR Address, PR Data
Read Status Register
SR7 = 1
YES
SR3, SR4 = 1,1
NO
SR1, SR4 = 0,1
NO
YES
YES
NO
V
PEN
Protection Register
Invalid Error
Program Error
Protection Register Program Command
– write C0h
– write Protection Register Address,
Protection Register Data
do:
– read status register
while SR7 = 1
If SR3 = 1, SR4 = 1 V
If SR1 = 0, SR4 = 1 Protection Register
Program Error
PEN
Invalid Error
SR1, SR4 = 1,1
Write FFh
PR Program
Sucessful
Note: PR = Protection Register
56/61
NO
YES
Protection Register
Program Error
If SR1 = 1, SR4 = 1 Program Error due to
Protection Register Protection
Read Memory Array Command:
– write FFh
AI06159b
Page 57
Figure 30. Command Interface and Program E rase Con trolle r Flowchart (a)
WAIT FOR
COMMAND
WRITE
NO
90h
YES
M58LW032C
READ
SIGNATURE
98h
YES
CFI
QUERY
NO
70h
YES
READ
STATUS
NO
50h
CLEAR
STATUS
PROGRAM
COMMAND
ERROR
YES
NO
NO
PROGRAM
BUFFER
E8h
LOAD
D0h
C
YES
YES
NO
20h
YES
ERASE
SET-UP
D0h
YES
A
READ
ARRAY
NO
(1)
NO
FFh
YES
NO
ERASE
COMMAND
ERROR
B
Note 1. The Erase command (20h) can only be issued if the flash is not already in Erase Suspend.
AI03618
57/61
Page 58
M58LW032C
Figure 31. Command Interface and Program E rase Con trolle r Flowchart (b)
WAIT FOR
COMMAND
WRITE
B
READ
ARRAY
YES
FFh
NO
ERASE
SUSPENDED
YES
NO
READ
STATUS
YES
YES
A
ERASE
READY
?
NO
B0h
YES
ERASE
SUSPEND
READY
?
NO
READ
STATUS
(READ STATUS)
Program/Erase Controller
Status bit in the Status
Register
NO
READ
STATUS
PROGRAM
COMMAND
ERROR
READ
STATUS
READ
SIGNATURE
CFI
QUERY
PROGRAM
BUFFER
LOAD
NO
D0h
c
YES
YES
YES
YES
YES
70h
NO
90h
NO
98h
NO
E8h
NO
D0h
READ
ARRAY
NO
YES
READ
STATUS
(ERASE RESUME)
AI03619
58/61
Page 59
Figure 32. Command Interface and Program E rase Con trolle r Flowchart (c).
B
C
M58LW032C
WAIT FOR
COMMAND
WRITE
READ
STATUS
YES
PROGRAM
SUSPENDED
YES
READ
ARRAY
FFh
NO
70h
YES
NO
NO
READ
STATUS
YES
YES
PROGRAM
READY
?
NO
B0h
YES
PROGRAM
SUSPEND
READY
?
NO
READ
STATUS
(READ STATUS)
Program/Erase Controller
Status bit in the Status
Register
NO
READ
STATUS
READ
SIGNATURE
CFI
QUERY
READ
ARRAY
YES
YES
NO
90h
98h
D0h
NO
NO
YES
READ
STATUS
(PROGRAM RESUME)
AI00618
59/61
Page 60
M58LW032C
REVISION HIST ORY
Table 32. Document Revision History
DateVersionRevision Details
11-Mar-2002-01First Issue (Data Brief)
10-Jul-2002-02Document expanded to full Product Preview
Revision numbering modified: a minor revision will be indicated by incrementing the
digit after the dot, and a major revision, by incrementing the digit before the dot
06-Aug-20022.1
02-Sep-20022.2
16-Dec-20022.3
29-Apr-20033.0
(revision version 02 equals 2.0).
Word Effective Programming Time modified. Program Write Buffer and Block Erase
Time parameters modified in Table 9. Speed Class 90ns added. V
V
signal descriptions modified.
SSQ
Figure 12, Asynchronous Latch Controlled Bus Read AC Waveforms
REVISION HISTORY moved to after the appendices. Table 9, Program, Erase Times
and Program Erase Endurance Cycles table modified. All DU connections changed to
NC in Table 4, TBGA64 Connections (Top view through package). V
min modified in Table 14, DC Characteristics. Block Protect setup command address
modified in Table 5, Commands. Data and Descriptions clarified in CFI Table 31,
Extended Query information.
Document promoted to full datasheet. Summary Description clarified, Bus Operations
clarified, Smart Protection added, Read Modes section added, Status Register and
Configuration Register bit nomenclature modified, V
Flowcharts. Lead-free packing options added to Ordering Information Scheme.
, V
DD
, modified.
max and VIH
IL
Invalid Error clarified in
PEN
, VSS and
DDQ
60/61
Page 61
M58LW032C
Information furnishe d is bel i eved to be accurate and reliable. However, STMicroelectroni cs assumes no resp onsibility for t he consequences
of use of such information nor for any infringement of patents or other rights of third parties which may result from its use. No license is granted
by implic ation or otherwise unde r any patent or patent ri ghts of STMicroelectronics. Speci fications me ntioned in th i s publication are subject
to change without notice. This publication supersedes and replaces all information previously supplied. STMicroelectronics products are not
authorized for use as crit i cal component s in l i fe support dev i ces or systems wi t hout express written approv al of STMicroelectronics.
The ST log o i s registered trademark of STM i croelect ronics
All other nam es are the property of their respective owners