•Operating temperature range: from -40 °C up to +85 °C
•Enhanced ESD protection (up to 4 kV in human body model)
•More than 4 million write cycles
•More than 40-year data retention
•Packages
–SO8N (ECOPACK2)
–TSSOP8 (ECOPACK2)
–WLCSP (ECOPACK2)
DS12179 - Rev 2 - February 2021
For further information contact your local STMicroelectronics sales office.
www.st.com
Page 2
1Description
The M95M04-DR device is electrically erasable programmable memory (EEPROM) organized as 524288 x 8 bits,
accessed through the SPI bus.
The M95M04-DR can operate with a supply range from 1.8 to 5.5 V, and is guaranteed over the -40 °C/+85 °C
temperature range.
The M95M04-DR offer an additional page, named the identification page (512 bytes). The identification page can
be used to store sensitive application parameters that can be (later) permanently locked in read-only mode.
Figure 1. Logic diagram
V
CC
D
C
M95M04-DR
Description
S
M95xxx
Q
W
HOLD
V
SS
The SPI bus signals are C, D and Q, as shown in Figure 1 and Table 1. The device is selected when Chip select
(S) is driven low. Communications with the device can be interrupted when the HOLD is driven low.
Table 1. Signal names
Signal name
CSerial clockInput
DSerial data inputInput
QSerial data outputOutput
SChip selectInput
WWrite protectInput
HOLDHoldInput
V
CC
V
SS
Supply voltage-
Ground-
FunctionDirection
MS45413V1
DS12179 - Rev 2
page 2/44
Page 3
Figure 2. 8-pin package connections (top view)
M95xxx
SV
1
8
CC
M95M04-DR
Description
2
W
3
4
SS
1.See Section 10 Package information for package dimensions, and how to identify pin 1.
Figure 3. WLCSP connections
4 32 1
A
B
C
HOLDQ
7
C
6
DV
5
MS51579V1
1 23 4
A
B
C
D
Bump side view
Table 2. Signals vs. bump position
Position
1--C-
2
3S--
4-QW-
ABCD
V
CC
D
Top view (bumps underneath)
HOLD-D
MS38243V1
V
SS
DS12179 - Rev 2
page 3/44
Page 4
2Memory organization
The memory is organized as shown in the following figure.
M95M04-DR
Memory organization
Figure 4. Block diagram
S
Q
W
D
C
HOLD
I/Os
Data register and ECC
Status
register
Control
logic
Sense amplifiers
Page latches
Array
Custom area
HV generator
and sequencer
X decoder
Y decoder
Address
register
MS52059V1
DS12179 - Rev 2
page 4/44
Page 5
3Signal description
During all operations, VCC must be held stable and within the specified valid range: VCC(min) to VCC(max).
All of the input and output signals must be held high or low (according to voltages of VIH, VOH, VIL or VOL, as
specified in Section 9 DC and AC parameters). These signals are described next.
M95M04-DR
Signal description
3.1
Serial data output (Q)
This output signal is used to transfer data serially out of the device. Data is shifted out on the falling edge of serial
clock (C).
3.2Serial data input (D)
This input signal is used to transfer data serially into the device. It receives instructions, addresses, and the data
to be written. Values are latched on the rising edge of serial clock (C).
3.3Serial clock (C)
This input signal provides the timing of the serial interface. Instructions, addresses, or data present at serial data
input (D) are latched on the rising edge of serial clock (C). Data on serial data output (Q) change from the falling
edge of serial clock (C).
3.4Chip select (S)
When this input signal is high, the device is deselected and serial data output (Q) is at high impedance. The
device is in the standby power mode, unless an internal write cycle is in progress. Driving chip select (S) low
selects the device, placing it in the active power mode.
After power-up, a falling edge on chip select (S) is required prior to the start of any instruction.
3.5Hold (HOLD)
The hold (HOLD) signal is used to pause any serial communications with the device without deselecting the
device.
During the hold condition, the serial data output (Q) is high impedance, and serial data input (D) and serial clock
(C) are "Don’t care".
To start the hold condition, the device must be selected, with chip select (
S) driven low.
3.6Write protect (W)
The main purpose of this input signal is to freeze the size of the area of memory that is protected against Write
instructions (as specified by the values in the BP1 and BP0 bits of the Status register).
This pin must be driven either high or low, and must be stable during all Write instructions.
3.7V
supply voltage
CC
VCC is the supply voltage.
3.8VSS ground
VSS is the reference for all signals, including the VCC supply voltage.
DS12179 - Rev 2
page 5/44
Page 6
4Connecting to the SPI bus
All instructions, addresses and input data bytes are shifted in to the device, most significant bit first. The serial
data input (D) is sampled on the first rising edge of the serial clock (C) after chip select (S) goes low.
All output data bytes are shifted out of the device, most significant bit first. The serial data output (Q) is latched
on the first falling edge of the serial clock (C) after the instruction (such as the read from memory array and read
status register instructions) have been clocked into the device.
Figure 5. Bus master and memory devices on the SPI bus
M95M04-DR
Connecting to the SPI bus
V
CC
SPI interface with
(CPOL, CPHA) =
(0, 0) or 1, 1)
SPI bus master
CS3 CS2 CS1
SDO
SDI
SCK
V
CC
SPI memory
RRR
device
S
W
HOLD
(1) (1)(1) (1)(1) (1)
SPI memory
device
S
W
V
CC
HOLD
C Q DC Q DC Q D
SPI memory
device
S
W
V
CC
HOLD
V
MS19755V3
SS
1.The write protect (W) and hold (HOLD) signals should be driven, high or low as appropriate.
Figure 5 shows an example of three memory devices connected to an SPI bus master. Only one memory device
is selected at a given time, so only one memory device drives the serial data output (Q) line at that time. The
other memory devices are in high impedance state. The pull-up resistor R ensures that a device is not selected if
the bus master leaves the
S line in the high impedance state.
In applications where the bus master may leave all SPI bus lines in high impedance at the same time (for
example, if the Bus master is reset during the transmission of an instruction), it is recommended to connect the
clock line (C) to an external pull-down resistor so that, if all inputs/outputs become high impedance, the C line is
pulled low (while the
so, that the t
SHCH
S line is pulled high): this ensures that S and C do not become high at the same time, and
requirement is met. The typical value of R is 100 kΩ.
DS12179 - Rev 2
page 6/44
Page 7
4.1SPI modes
These devices can be driven by a microcontroller with its SPI peripheral running in either of the following two
modes:
•CPOL = 0, CPHA = 0
•CPOL = 1, CPHA = 1
For these two modes, input data is latched in on the rising edge of serial clock (C), and output data is available
from the falling edge of serial clock (C).
The difference between the two modes, as shown in Figure 6, is the clock polarity when the bus master is in
stand-by mode and not transferring data:
•C remains at 0 for (CPOL = 0, CPHA = 0)
•C remains at 1 for (CPOL = 1, CPHA = 1)
M95M04-DR
SPI modes
Figure 6. SPI modes supported
CPOL
0
1
CPHA
0
1
C
C
D
Q
MSB
MSB
MS42674V2
DS12179 - Rev 2
page 7/44
Page 8
5Operating features
5.1Supply voltage (VCC)
5.1.1Operating supply voltage (VCC)
Prior to selecting the memory and issuing instructions to it, a valid and stable VCC voltage within the specified
[VCC(min), VCC(max)] range must be applied (see operating conditions in Section 9 DC and AC parameters).
This voltage must remain stable and valid until the end of the transmission of the instruction and, for a Write
instruction, until the completion of the internal write cycle (tW). In order to secure a stable DC supply voltage, it is
recommended to decouple the VCC line with a suitable capacitor (usually in the range between 10 and 100 nF)
close to the VCC / VSS device pins.
5.1.2Device reset
In order to prevent erroneous instruction decoding and inadvertent write operations during power-up, a power-onreset (POR) circuit is included. At power-up, the device does not respond to any instruction until VCC reaches the
POR threshold voltage. This threshold is lower than the minimum VCC operating voltage (see operating conditions
in Section 9 DC and AC parameters).
At power-up, when VCC passes over the POR threshold, the device is reset and is in the following state:
•in Standby power mode,
•deselected,
•Status register values:
–the write enable latch (WEL) bit is reset to 0
–the write in progress (WIP) bit is reset to 0
–the SRWD, BP1 and BP0 bits remain unchanged (non-volatile bits).
It is important to note that the device must not be accessed until VCC reaches a valid and stable level within
the specified [VCC(min), VCC(max)] range, as defined under Operating conditions in Section 9 DC and AC
parameters.
M95M04-DR
Operating features
5.1.3Power-up conditions
When the power supply is turned on, VCC rises continuously from VSS to VCC. During this time, the chip select (S)
line is not allowed to float but should follow the VCC voltage. It is therefore recommended to connect the
VCC via a suitable pull-up resistor (see Figure 5).
In addition, the chip select (S) input offers a built-in safety feature, as the S input is edge-sensitive as well as
level-sensitive: after power-up, the device does not become selected until a falling edge has first been detected
on chip select (
operation.
The VCC voltage has to rise continuously from 0 V up to the minimum VCC operating voltage defined in
Section 9 DC and AC parameters.
S). This ensures that chip select (S) must have been high, prior to going low to start the first
S line to
DS12179 - Rev 2
page 8/44
Page 9
M95M04-DR
Active power and standby power modes
5.1.4Power-down
During power-down (continuous decrease of the VCC supply voltage below the minimum VCC operating voltage
defined in Section 9 DC and AC parameters), the device must be:
•deselected (chip select
•in standby power mode (there must not be any internal write cycle in progress).
S must be allowed to follow the voltage applied on VCC)
5.2Active power and standby power modes
When chip select (S) is low, the device is selected, and in the active power mode. The device consumes ICC.
When chip select (S) is high, the device is deselected. If a write cycle is not currently in progress, the device then
goes into the standby power mode, and the device consumption drops to I
(see Section 9 DC and AC parameters).
, as specified in DC characteristics
CC1
5.3Hold condition
The hold (HOLD) signal is used to pause any serial communications with the device without resetting the clocking
sequence.
To enter the hold condition, the device must be selected, with chip select (S) low.
During the hold condition, the serial data output (Q) is high impedance, and the serial data input (D) and the serial
clock (C) are "Don’t care".
Normally, the device is kept selected for the whole duration of the Hold condition. Deselecting the device while it is
in the hold condition has the effect of resetting the state of the device: this mechanism can be used, if required, to
reset the ongoing processes.
Note:This resets the internal logic, except the WEL and WIP bits of the status register.
Note:In the specific case where the device has moved in a write command (Inst + Address + data bytes, each data
byte being exactly 8 bits), deselecting the device also triggers the write cycle of this decoded command.
Figure 7. Hold condition activation
C
HOLD
Hold
condition
The hold condition starts when the hold (HOLD) signal is driven low when serial clock (C) is already low (as
shown in Figure 7).
Figure 7 also shows what happens if the rising and falling edges are not timed to coincide with serial clock (C)
being low.
Hold
condition
MS47281V1
DS12179 - Rev 2
page 9/44
Page 10
5.4Status register
The status register contains a number of status and control bits that can be read or set (as appropriate) by
specific instructions. See Section 6.3 Read status register (RDSR) for a detailed description of the status register
bits.
5.5Data protection and protocol control
The device features the following data protection mechanisms:
•Before accepting the execution of the write and write status register instructions, the device checks whether
the number of clock pulses comprised in the instructions is a multiple of eight.
•All instructions that modify data must be preceded by a write enable (WREN) instruction to set the write
enable latch (WEL) bit.
•The block protect (BP1, BP0) bits in the status register are used to configure part of the memory as
read-only.
•The write protect (
For any instruction to be accepted, and executed, chip select (
serial clock (C) for the last bit of the instruction, and before the next rising edge of serial clock (C).
Two points to note in the previous sentence:
•The “last bit of the instruction” can be the eighth bit of the instruction code, or the eighth bit of a data byte,
depending on the instruction (except for read status register (RDSR) and read (READ) instructions).
•The “next rising edge of serial clock (C)” might (or might not) be the next bus transaction for some other
device on the SPI bus.
W) signal is used to protect the block protect (BP1, BP0) bits in the status register.
M95M04-DR
Status register
S) must be driven high after the rising edge of
Table 3. Write-protected block size
Status register bits
BP1BP0
00
01Upper quarter60000h - 7FFFFh
10Upper half40000h - 7FFFFh
11Whole memory00000h - 7FFFFh
Protected blockProtected array addresses
NoneNone
DS12179 - Rev 2
page 10/44
Page 11
6Instructions
Each command is composed of bytes (MSB bit transmitted first), initiated with the instruction byte, as summarized
in Table 4.
If an invalid instruction is sent (one not contained in Table 4), the device automatically enters in a wait state until
deselected.
InstructionDescriptionInstruction format
WRENWrite enable0000 0110
WRDIWrite disable0000 0100
RDSRRead status register0000 0101
WRSRWrite status register0000 0001
READRead from memory array0000 0011
WRITEWrite to memory array0000 0010
RDIDRead identification page1000 0011
WRIDWrite identification page1000 0010
RDLSRead identification page lock status1000 0011
LIDLock identification page in react-only mode1000 0010
M95M04-DR
Instructions
Table 4. Instruction set
For read and write commands to memory array and identification page the address is defined by three bytes as
explained in Table 5.
The write enable latch (WEL) bit must be set prior to each WRITE and WRSR instruction. The only way to do this
is to send a write enable instruction to the device.
As shown in Figure 8, to send this instruction to the device, chip select (S) is driven low, and the bits of the
instruction byte are shifted in, on serial data input (D). The device then enters a wait state. It waits for the device
to be deselected by chip select (S) being driven high.
S
M95M04-DR
Write enable (WREN)
Figure 8. Write enable (WREN) sequence
C
D
Q
0
2134567
Instruction
High impedance
MS41478V1
DS12179 - Rev 2
page 12/44
Page 13
6.2Write disable (WRDI)
One way of resetting the write enable latch (WEL) bit is to send a write disable instruction to the device.
As shown in Figure 9, to send this instruction to the device, chip select (S) is driven low, and the bits of the
instruction byte are shifted in, on serial data input (D).
The device then enters a wait state. It waits for a the device to be deselected, by chip select (S) being driven high.
The write enable latch (WEL) bit, in fact, becomes reset by any of the following events:
•Power-up
•WRDI instruction execution
•WRSR instruction completion
•WRITE instruction completion.
S
M95M04-DR
Write disable (WRDI)
Figure 9. Write disable (WRDI) sequence
C
D
Q
0
2134567
Instruction
High impedance
MS41478V1
DS12179 - Rev 2
page 13/44
Page 14
6.3Read status register (RDSR)
The read status register (RDSR) instruction is used to read the status register. The status register may be read at
any time, even while a write or write status register cycle is in progress. When one of these cycles is in progress,
it is recommended to check the write in progress (WIP) bit before sending a new instruction to the device. It is
also possible to read the Status register continuously, as shown in Figure 10.
Figure 10. Read Status register (RDSR) sequence
S
213 4 5 6 7 8 9 10 11 12 13 14 15
0
C
Instruction
D
M95M04-DR
Read status register (RDSR)
The status and control bits of the status register are detailed in the following subsections.
6.3.1WIP bit
The WIP bit (write in progress) is a read-only flag that indicates the ready/busy state of the device. When a write
command (WRITE, WRSR, WRID, LID) has been decoded and a write cycle (tW) is in progress, the device is
busy and the WIP bit is set to 1. When WIP = 0 the device is ready to decode a new command.
During a write cycle, reading continuously the WIP bit allows to detect when the device becomes ready (WIP = 0)
to decode a new command.
6.3.2WEL bit
The WEL bit (write enable latch) bit is a flag that indicates the status of the internal write enable latch. When WEL
is set to 1, the write instructions (WRITE, WRSR, WRID, LID) are executed; when WEL is set to 0, any decoded
write instruction is not executed.
The WEL bit is set to 1 with the WREN instruction. The WEL bit is reset to 0 after the following events:
•Write disable (WRDI) instruction completion
•Write instructions (WRITE, WRSR, WRID, LID) completion including the write cycle time t
•Power-up
High impedance
Status Register Out
Q
MSBMSB
Status Register Out
77 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
MS47548V1
W
6.3.3BP1, BP0 bits
The block protect (BP1, BP0) bits are non volatile. They define the size of the area to be software-protected
against Write instructions. These bits are written with the write status register (WRSR) instruction. When one or
both of the block protect (BP1, BP0) bits is set to 1, the relevant memory area (as defined in Table 3) becomes
protected against write (WRITE) instructions. The block protect (BP1, BP0) bits can be written provided that the
hardware protected mode has not been set.
DS12179 - Rev 2
page 14/44
Page 15
6.3.4SRWD bit
The status register write disable (SRWD) bit is operated in conjunction with the write protect (W) signal. The
status register write disable (SRWD) bit and write protect (W) signal enable the device to be put in the hardware
protected mode (when the status register write disable (SRWD) bit is set to 1, and write protect (W) is driven low).
In this mode, the non-volatile bits of the status register (SRWD, BP1, BP0) become read-only bits and the write
status register (WRSR) instruction is no longer accepted for execution.
M95M04-DR
Read status register (RDSR)
Table 6. Status register format
DS12179 - Rev 2
page 15/44
Page 16
6.4Write status register (WRSR)
The write dtatus register (WRSR) instruction is used to write new values to the status register. Before it can be
accepted, a write enable (WREN) instruction must have been previously executed.
The write Status register (WRSR) instruction is entered by driving chip select (S) low, followed by the instruction
code, the data byte on serial data input (D) and chip select (S) driven high. Chip select (S) must be driven high
after the rising edge of serial clock (C) that latches in the eighth bit of the data byte, and before the next rising
edge of serial clock (C). Otherwise, the write status register (WRSR) instruction is not executed.
The instruction sequence is shown in Figure 11.
Figure 11. Write status register (WRSR) sequence
S
M95M04-DR
Write status register (WRSR)
0
213456789 10 11 12 13 14 15
C
Instruction
D
MSB
High impedance
Status Register In
76543210
Q
MS47556V1
Driving the chip select (S) signal high at a byte boundary of the input data triggers the self-timed write cycle that
takes tW to complete (as specified in AC tables in Section 9 DC and AC parameters).
While the write status register cycle is in progress, the status register may still be read to check the value of the
write in progress (WIP) bit: the WIP bit is 1 during the self-timed write cycle tW, and 0 when the write cycle is
complete. The WEL bit (Write enable latch) is also reset at the end of the write cycle tW.
The write status register (WRSR) instruction enables the user to change the values of the BP1, BP0 and SRWD
bits:
•The block protect (BP1, BP0) bits define the size of the area that is to be treated as read-only, as defined in
Table 3.
•The SRWD (status register write disable) bit, in accordance with the signal read on the write protect pin (
enables the user to set or reset the write protection mode of the status register itself, as defined in Table 7.
When in write-protected mode, the write status register (WRSR) instruction is not executed.
The contents of the SRWD and BP1, BP0 bits are updated after the completion of the WRSR instruction, including
the tW write cycle.
The write status register (WRSR) instruction has no effect on the b6, b5, b4, b1, b0 bits in the status register. Bits
b6, b5, b4 are always read as 0.
W),
DS12179 - Rev 2
page 16/44
Page 17
Table 7. Protection modes
M95M04-DR
Write status register (WRSR)
W signal
1. As defined by the values in the Block protect (BP1, BP0) bits of the Status register. See Table 3.
SRWD
10
00
11
01
bit
ModeWrite protection of the Status register
Software-
protected
(SPM)
Hardware-
protected
(HPM)
Status register is writable (if the WREN
instruction has set the WEL bit).
The values in the BP1 and BP0 bits can be
changed.
Status register is hardware write-protected.
The values in the BP1 and BP0 bits cannot be
changed.
Writeprotected
Writeprotected
Protected
(1)
area
Memory content
Unprotected area
Ready to accept
write instructions
Ready to accept
write instructions
The protection features of the device are summarized in Table 7.
When the status register write disable (SRWD) bit in the status register is 0 (its initial delivery state), it is possible
to write to the status register (provided that the WEL bit has previously been set by a WREN instruction),
regardless of the logic level applied on the write protect (
W) input pin.
When the status register write disable (SRWD) bit in the Status register is set to 1, two cases should be
considered, depending on the state of the write protect (
W) input pin:
•If write protect (W) is driven high, it is possible to write to the status register (provided that the WEL bit has
previously been set by a WREN instruction).
•If write protect (
W) is driven low, it is not possible to write to the status register even if the WEL bit has
previously been set by a WREN instruction. (attempts to write to the status register are rejected, and are
not accepted for execution). As a consequence, all the data bytes in the memory area, which are softwareprotected (SPM) by the block protect (BP1, BP0) bits in the status register, are also hardware-protected
against data modification.
Regardless of the order of the two events, the hardware-protected mode (HPM) can be entered by:
•either setting the SRWD bit after driving the write protect (
W) input pin low,
•or driving the write protect (W) input pin low after setting the SRWD bit.
Once the hardware-protected mode (HPM) has been entered, the only way of exiting it is to pull high the write
protect (
W) input pin.
If the write protect (W) input pin is permanently tied high, the hardware-protected mode (HPM) can never be
activated, and only the software-protected mode (SPM), using the block protect (BP1, BP0) bits in the status
register, can be used.
(1)
DS12179 - Rev 2
page 17/44
Page 18
6.5Read from memory array (READ)
As shown in Figure 12, to send this instruction to the device, chip select (S) is first driven low. The bits of the
instruction byte and address bytes are then shifted in, on serial data input (D). The address is loaded into an
internal address register, and the byte of data at that address is shifted out, on serial data output (Q).
Figure 12. Read from memory array (READ) sequence
M95M04-DR
Read from memory array (READ)
If chip select (S) continues to be driven low, the internal address register is incremented automatically, and the
byte of data at the new address is shifted out.
When the highest address is reached, the address counter rolls over to zero, allowing the read cycle to be
continued indefinitely. The whole memory can, therefore, be read with a single READ instruction.
The read cycle is terminated by driving chip select (
at any time during the cycle.
The instruction is not accepted, and is not executed, if a write cycle is currently in progress.
S) high. The rising edge of the chip select (S) signal can occur
DS12179 - Rev 2
page 18/44
Page 19
6.6Write to memory array (WRITE)
As shown in Figure 13, to send this instruction to the device, chip select (S) is first driven low. The bits of the
instruction byte, address byte, and at least one data byte are then shifted in, on serial data input (D).
The instruction is terminated by driving chip select (S) high at a byte boundary of the input data. The selftimed write cycle, triggered by the chip select (S) rising edge, continues for a period tW (as specified in AC
characteristics in Section 9 DC and AC parameters), at the end of which the write in progress (WIP) bit is reset
to 0.
Figure 13. Byte write (WRITE) sequence
S
M95M04-DR
Write to memory array (WRITE)
213 4 5 6 7 8 9 1028 29 30 31 32 33 34 35
0
36 37 38
39
C
Instruction24-bit address
22 21
D
Q
High impedance
23
3 2 1 0
7 6 5 4 3 20
In the case of Figure 13, chip select (S) is driven high after the eighth bit of the data byte has been latched in,
indicating that the instruction is being used to write a single byte. However, if chip select (S) continues to be
driven low (as shown in Figure 14), the next byte of input data is shifted in, so that more than a single byte,
starting from the given address towards the end of the same page, can be written in a single internal write cycle.
Each time a new data byte is shifted in, the least significant bits of the internal address counter are incremented.
If more bytes are sent than will fit up to the end of the page, a condition known as “roll-over” occurs. In case of
roll-over, the bytes exceeding the page size are overwritten from location 0 of the same page.
The instruction is not accepted, and is not executed, under the following conditions:
•if the write enable latch (WEL) bit has not been set to 1 (by executing a write enable instruction just before),
•if a write cycle is already in progress,
•if the device has not been deselected, by driving high chip select (
S), at a byte boundary (after the eighth bit,
b0, of the last data byte that has been latched in),
•if the addressed page is in the region protected by the block protect (BP1 and BP0) bits.
Note:The self-timed write cycle tW is internally executed as a sequence of two consecutive events: [Erase addressed
byte(s)], followed by [Program addressed byte(s)]. An erased bit is read as “0” and a programmed bit is read as
“1”.
Data byte
1
MS30905V2
DS12179 - Rev 2
page 19/44
Page 20
M95M04-DR
Write to memory array (WRITE)
Figure 14. Page write (WRITE) sequence
S
2134 56 789 1028 29 30 31 32 33 34 35
0
36 37 38
39
C
Instruction24-bit address
23
D
22 21
32 10
76 54 320
Data byte 1
1
S
C
Data byte 2
D
76 54 320
76 54 320
1
Data byte 3
Data byte N
1
65 43 20
1
MS30906V2
DS12179 - Rev 2
page 20/44
Page 21
6.7Read identification page
The identification page (512 bytes) is an additional page that can be written and (later) permanently locked in
Read-only mode.
This page is read with the read identification page instruction (see Table 4). The chip select signal (S) is first
driven low, the bits of the instruction byte and address bytes are then shifted in, on serial data input (D). Address
bit A10 must be 0, upper address bits are "Don't care", and the data byte pointed to by the lower address bits
[A8:A0] is shifted out on serial data output (Q). If chip select (S) continues to be low, the internal address register
is automatically incremented, and the byte of data at the new address is shifted out.
The number of bytes to read in the ID page must not exceed the page boundary, otherwise unexpected data are
read (e.g. when reading the ID page from location 200d, the number of bytes must be lower than or equal to
312d, as the ID page boundary is 512 bytes).
The read cycle is terminated by driving chip select (
at any time during the cycle. The first byte addressed can be any byte within any page.
The instruction is not accepted, and is not executed, if a write cycle is currently in progress.
Figure 15. Read identification page sequence
S
M95M04-DR
Read identification page
S) high. The rising edge of the chip select (S) signal can occur
213 4 5 6 7 8 9 1028 29 30 31 32 33 34 35
0
36 37 38
39
C
Instruction24-bit address
23
D
Q
High impedance
22 213 2 1 0
MSB
Data Out 1
7 6 5 4 317
MSB
2
Data Out 2
0
MS30907V2
DS12179 - Rev 2
page 21/44
Page 22
6.8Write identification page
The identification page (512 bytes) is an additional page that can be written and (later) permanently locked in
Read-only mode.
Writing this page is achieved with the write identification page instruction (see Table 4). The chip select signal (S)
is first driven low. The bits of the instruction byte, address bytes, and at least one data byte are then shifted in
on serial data input (D). Address bit A10 must be 0, upper address bits are "Don't care", the lower address bits
[A8:A0] define the byte address within the identification page. The instruction sequence is shown in Figure 16.
Figure 16. Write identification page sequence
S
M95M04-DR
Write identification page
213 4 5 6 7 8 9 1028 29 30 31 32 33 34 35
0
C
Instruction24-bit address
D
High impedance
Q
23
22 213 2 1 0
7 6 5 4 3 20
36 37 38
Data byte
39
1
MS30909V1
DS12179 - Rev 2
page 22/44
Page 23
6.9Read lock status
The read lock status instruction (see Table 4) is used to check whether the identification page is locked or not in
Read-only mode. The read lock status sequence is defined with the chip select (S) first driven low. The bits of the
instruction byte and address bytes are then shifted in on serial data input (D). Address bit A10 must be 1, all other
address bits are "Don't Care". The lock bit is the LSB (least significant bit) of the byte read on serial data output
(Q). It is at “1” when the lock is active and at “0” when the lock is not active. If chip select (S) continues to be
driven low, the same data byte is shifted out. The read cycle is terminated by driving chip select (S) high.
The instruction sequence is shown in Figure 17.
S
0
C
Figure 17. Read lock status sequence
213 4 5 6 7 8 9 1028 29 30 31 32 33 34 35
Instruction24-bit address
36 37 38
M95M04-DR
Read lock status
39
D
High impedance
Q
23 22 21
MSB
3 2 1 0
Data Out 1
7 6 5 4 317
MSB
2
0
Data Out 2
MS30910V1
DS12179 - Rev 2
page 23/44
Page 24
6.10Lock ID
The lock ID instruction permanently locks the identification page in read-only mode. Before this instruction can be
accepted, a write enable (WREN) instruction must have been executed.
The lock ID instruction is issued by driving chip select (S) low, sending the instruction code, the address and a
data byte on serial data input (D), and driving chip select (S) high. In the address sent, A10 must be equal to 1,
all other address bits are "Don't Care". The data byte sent must have the b0 bit equal to 1 (b0=1) and the others
value of the bits b7 to b1 are "Don't Care". The data byte has the following format: xxxx xxx1 (where x = Don't
Care)".
Chip select (S) must be driven high after the rising edge of serial clock (C) that latches in the eighth bit of the data
byte, and before the next rising edge of serial clock (C). Otherwise, the lock ID instruction is not executed.
Driving chip select (
is tW (as specified in AC characteristics in Section 9 DC and AC parameters). The instruction sequence is shown
in Figure 18.
The instruction is discarded, and is not executed, under the following conditions:
•If a write cycle is already in progress
•If block protect bits (BP1,BP0) = (1,1)
•If a rising edge on chip select (S) happens outside of a byte boundary
•If the identification is already locked.
M95M04-DR
Lock ID
S) high at a byte boundary of the input data triggers the self-timed write cycle whose duration
Figure 18. Lock ID sequence
S
213 4 5 6 7 8 9 1028 29 30 31 32 33 34 35
C
D
Q
0
Instruction24-bit address
23
High impedance
22 213 2 1 0
6.11Error correction code (ECC x 4) and write cycling
M95M04-DR devices offer an error correction code (ECC), an internal logic function transparent for the SPI
communication protocol.
The ECC logic is implemented on each group of four EEPROM bytes (A group of four bytes is located at
addresses [4*N, 4*N+1, 4*N+2, 4*N+3], where N is an integer). Even if the ECC function is performed on groups
of four bytes, a single byte can be written/cycled independently. In this case, the ECC function also writes/cycles
the three other bytes located in the same group. As a consequence, the maximum cycling budget is defined at
group level and the cycling can be distributed over the four bytes of the group: the sum of the cycles seen by
byte0, byte1, byte2 and byte3 of the same group must remain below the maximum value defined in Section 9 .
36 37 38
Data byte
7 6 5 4 3 20
1
39
DS12179 - Rev 2
page 24/44
Page 25
7Power-up and delivery state
7.1Power-up state
After power-up, the device is in the following state:
•standby power mode
•deselected (after power-up, a falling edge is required on chip select (S) before any instructions can be
started)
•not in the hold condition
•the write enable latch (WEL) is reset to 0
•write in progress (WIP) is reset to 0.
The SRWD, BP1 and BP0 bits of the status register are unchanged from the previous power-down (they are
non-volatile bits).
7.2Initial delivery state
The device is delivered with the memory array and identification page bits set to all 1s (each byte = FFh). The
status register write disable (SRWD) and block protect (BP1 and BP0) bits are initialized to 0.
M95M04-DR
Power-up and delivery state
DS12179 - Rev 2
page 25/44
Page 26
8Maximum ratings
Stressing the device outside the ratings listed in Table 8 may cause permanent damage to the device. These
are stress ratings only, and operation of the device at these, or any other conditions outside those indicated in
the operating sections of this specification, is not implied. Exposure to absolute maximum rating conditions for
extended periods may affect device reliability.
SymbolParameterMin.Max.Unit
T
AMB
T
STG
T
LEAD
V
V
V
I
OL
I
OH
V
ESD
1. Compliant with JEDEC standard J-STD-020 (for small-body, Sn-Pb or Pb free assembly), the ST ECOPACK 7191395
specification, and the European directive on Restrictions on Hazardous Substances (RoHS directive 2011/65/EU of July
2011).
2. Positive and negative pulses applied on different combinations of pin connections, according to AEC-Q100-002 (compliant
Electrostatic discharge voltage (human body model)
Table 8. Absolute maximum ratings
(2)
M95M04-DR
Maximum ratings
See note
-4000V
(1)
V
+ 0.6
CC
mA
°C
V
DS12179 - Rev 2
page 26/44
Page 27
9DC and AC parameters
This section summarizes the operating conditions and the DC/AC characteristics.
Table 9. Operating conditions (range R)
SymbolParameterMin.Max.Unit
V
CC
T
A
SymbolParameterMin.Max.Unit
C
L
-
-
-
Supply voltage1.85.5V
Ambient operating temperature–4085°C
Load capacitance-30pF
Input rise and fall times-25ns
Input pulse voltages
Input and output timing reference voltages
Table 10. AC measurement conditions
DC and AC parameters
0.2 VCC to 0.8 V
0.3 VCC to 0.7 V
M95M04-DR
CC
CC
V
V
Input Levels
0.8 ₓ V
0.2 ₓ V
Figure 19. AC measurement I/O waveform
CC
CC
Input and Output
Timing Reference Levels
0.7 ₓ V
CC
0.3 ₓ V
CC
DS12179 - Rev 2
page 27/44
Page 28
Table 11. Cycling performance by groups of four bytes
M95M04-DR
DC and AC parameters
Symb
ol
Ncycle
ParameterTest conditionMin.Max.Unit
Write cycle
endurance
TA ≤ 25 °C, VCC(min) < VCC < VCC(max)
(1)
TA = 85 °C, VCC(min) < VCC < VCC(max)
-4,000,000
-1,200,000
Write cycle
(2)
1. The write cycle endurance is defined for groups of four data bytes located at addresses [4*N, 4*N+1, 4*N+2, 4*N+3], where
N is an integer. The write cycle endurance is defined by characterization and qualification.
2. A write cycle is executed when either a page write, a byte write, a WRSR, a WRID or an LID instruction is decoded. When
using the byte write, the page write or the WRID instruction, refer also to Section 6.11 Error correction code (ECC x 4) and
write cycling.
Table 12. Memory cell data retention
ParameterTest conditionsMin.Unit
Data retention
(1)
TA = 55 °C
40Year
1. The data retention behaviour is checked in production, while the 40-year limit is defined from characterization and
qualification results.
Table 13. Capacitance
= 0 V
(1)
Min.Max.Unit
-8pF
-8pF
-6pF
Symbol
C
OUT
C
IN
1. Sampled only, not 100% tested, at TA = 25 °C and at a frequency of 5 MHz.
Output capacitance (Q)
Input capacitance (D)
Input capacitance (other pins)
Parameter
Test conditions
V
VIN = 0 V
VIN = 0 V
OUT
DS12179 - Rev 2
page 28/44
Page 29
M95M04-DR
DC and AC parameters
Table 14. DC characteristics
SymbolParameterTest conditionsMinMaxUnit
I
CC0
I
I
I
CC1
V
V
V
I
Input leakage current
LI
Output leakage current
LO
Supply current (Read)
CC
(4)
Supply current (Write)
Supply current
(Standby power mode)
Input low voltage
IL
Input high voltage
IH
Output low voltage
OL
V
= VSS or V
IN
S= VCC, V
CC
= VSS or V
OUT
CC
C = 0.1 VCC / 0.9 VCC at 5 MHz, VCC = 1.8 V, Q = open
C = 0.1 VCC / 0.9 VCC at 10 MHz, VCC = 3.3 V, Q = open
C = 0.1 VCC / 0.9 VCC at 10 MHz, VCC = 5.5 V, Q = open
During tW,S = VCC,
S= VCC, V
S= VCC, V
S= VCC, V
= VSS or VCC, V
IN
= VSS or VCC, V
IN
= VSS or VCC, V
IN
CC
CC
CC
= 1.8 V
= 3.3 V
= 5.5 V
1.8 V ≤ VCC < 2.5 V
2.5 V ≤ VCC < 5.5 V
-±2
-±2
-
-
-
-
-2
-3
-5
- 0.45
- 0.45
1.8 V ≤ VCC < 2.5 V0.75 V
2.5 V ≤ VCC < 5.5 V0.70 V
IOL = 0.15 mA, VCC = 1.8 V
-0.3
VCC = 2.5 V, IOL = 1.5 mA, or
VCC = 5.0 V, IOL = 2.0 mA
-0.4
CC
CC
(1)
1
(2)
2
(3)
3
(5)
2
0.25 V
0.30 V
VCC + 1
VCC + 1
µA
mA
µA
CC
CC
V
IOH = –0.1 mA, VCC = 1.8 V
V
Output high voltage
OH
VCC = 2.5 V, IOH = -0.4 mA, or
VCC = 5.0 V, IOH = -2.0 mA
1. 2 mA before year 2021 - week 07, DC107 on marking
2. 3 mA before year 2021 - week 07, DC107 on marking
3. 5 mA before year 2021 - week 07, DC107 on marking
4. Value guaranteed by characterization. Not tested in production.
5. 3 mA before year 2021 - week 07, DC107 on marking
0.80 V
CC
-
DS12179 - Rev 2
page 29/44
Page 30
Table 15. AC characteristics
Test conditions specified in Table 9 and Table 10
SymbolAlt.Parameter
f
C
t
SLCH
t
SHCH
t
SHSL
t
CHSH
t
CHSL
t
CH
(1)
t
CL
t
CLCH
t
CHCL
t
DVCH
t
CHDX
t
HHCH
t
HLCH
t
CLHL
t
CLHH
t
SHQZ
t
CLQV
t
CLQX
t
QLQH
t
QHQL
t
HHQV
t
HLQZ
t
W
1. tCH + tCL must never be less than the shortest possible clock period, 1 / fC(max)
2. Value guaranteed by characterization, not 100% tested in production.
3. t
CLQV
equal to or greater than t
4. Write time for LID instruction is 10 ms.
f
Clock frequency
SCK
t
S active setup time60-30-ns
CSS1
t
S not active setup time60-30-ns
CSS2
t
S Deselect time60-40-ns
CS
t
S active hold time60-30-ns
CSH
-S not active hold time60-30-ns
(1)
t
Clock high time90-40-ns
CLH
t
Clock low time90-40-ns
CLL
(2)
t
Clock rise time-2-2µs
RC
(2)
t
Clock fall time-2-2µs
FC
t
Data in setup time20-10-ns
DSU
t
Data in hold time20-10-ns
DH
-Clock low hold time after HOLD not active60-30-ns
-Clock low hold time after HOLD active60-30-ns
-Clock low set-up time before HOLD active0-0-ns
-Clock low set-up time before HOLD not active0-0-ns
(2)
t
Output disable time-80-40ns
DIS
(3)
t
Clock low to output valid-80-40ns
V
t
Output hold time0-0-ns
HO
(2)
t
Output rise time-80-40ns
RO
(2)
t
Output fall time-80-40ns
FO
t
HOLD high to output valid-80-40ns
LZ
(2)
t
HOLD low to output high-Z-80-40ns
HZ
t
Write time-
WC
must be compatible with tCL (clock low time): if tSU is the Read setup time of the SPI bus master, then tCL must be
+ tSU.
CLQV
M95M04-DR
DC and AC parameters
V
≥ 1.8 VV
CC
Min.Max.Min.Max.
DC5DC10
(4)
5
CC
-
≥ 2.5 V
5
(4)
Unit
MHz
ms
DS12179 - Rev 2
page 30/44
Page 31
M95M04-DR
DC and AC parameters
Figure 20. Serial input timing
t
SHSL
S
C
D
Q
t
CHSL
S
C
Q
HOLD
t
DVCH
t
SLCH
MSB IN
High impedance
t
CH
t
CHCL
t
CHDX
Figure 21. Hold timing
t
CLHL
t
HLQZ
t
CHSH
t
CL
t
CLCH
t
SHCH
LSB IN
t
HLCH
t
HHCH
t
CLHH
t
HHQV
Figure 22. Serial output timing
S
t
CH
C
t
CL
t
CLQX
t
CLQV
t
CLCH
t
CHCL
Q
t
QLQH
t
QHQL
ADDR
D
LSB IN
t
SHSL
t
SHQZ
DS12179 - Rev 2
page 31/44
Page 32
10Package information
In order to meet environmental requirements, ST offers these devices in different grades of ECOPACK packages,
depending on their level of environmental compliance. ECOPACK specifications, grade definitions and product
status are available at: www.st.com. ECOPACK is an ST trademark.
10.1SO8N package information
SO8N is an 8-lead, 4.9 x 6 mm, plastic small outline, 150 mils body width, package.
M95M04-DR
Package information
Figure 23. SO8N – Outline
h x 45˚
A2
b
e
8
1
A
ccc
D
E1
E
A1
L
L1
1.Drawing is not to scale.
Table 16. SO8N – Mechanical data
Symbol
Min.Typ.Max.Min.Typ.Max.
A
--1.750--0.0689
A10.100-0.2500.0039-0.0098
A21.250--0.0492--
b0.280-0.4800.0110-0.0189
c0.170-0.2300.0067-0.0091
D4.8004.9005.0000.18900.19290.1969
E5.8006.0006.2000.22830.23620.2441
E13.8003.9004.0000.14960.15350.1575
e-1.270--0.0500-
h0.250-0.5000.0098-0.0197
k0°-8°0°-8°
L0.400-1.2700.0157-0.0500
L1-1.040--0.0409-
1. Values in inches are converted from mm and rounded to four decimal digits.
ccc--0.100--0.0039
millimeters
c
0.25 mm
GAUGE PLANE
k
inches
(1)
DS12179 - Rev 2
page 32/44
Page 33
Figure 24. SO8N - Recommended footprint
0.6 (x8)
3.9
6.7
1.27
M95M04-DR
SO8N package information
1.Dimensions are expressed in millimeters.
DS12179 - Rev 2
page 33/44
Page 34
10.2WLCSP8 package information
This WLCSP is a 8-ball, 2,809 x 1,863 mm, wafer level chip scale package.
Figure 25. WLCSP8 - Outline with BSC
Orientation
reference
E
(2X)
aaa
X
Y
M95M04-DR
WLCSP8 package information
e3
H
e4
Orientation
reference
e2
Z
bbb
DETAIL A
D
aaa
(2X)
TOP VIEWBOTTOM VIEWSIDE VIEW
F
G
e1
e
A1
eee
Z
ccc
ddd
b
ZZX Y
DETAIL A
Z
SEATING PLANE
E1_WLCSP8_4MF9V_ME_V1
1.Drawing is not to scale.
2.Dimension is measured at the maximum bump diameter parallel to primary datum Z.
3.Primary datum Z and seating plane are defined by the spherical crowns of the bump.
4.Bump position designation per JESD 95-1, SPP-010.
b
BACKSIDE PROTECTION
A3
A1
A
A2
DS12179 - Rev 2
page 34/44
Page 35
Table 17. WLCSP8 - Mechanical data
Symbol
MinTypMaxMinTypMax
A
0.5000.5400.5800.01970.02130.0228
A1-0.190--0.0075-
A2-0.325--0.0128-
A3-0.025--0.0010-
(2)
b
-0.270--0.0106-
D-2.8092.829-0.11060.1114
E-1.8631.883-0.07330.0741
e-1.100--0.0433-
e1-2.100--0.0827-
e2-0.500--0.0197-
e3-1.000--0.0394-
e4-1.400--0.0551-
F-0.232--0.0091-
G-0.355--0.0140-
H-0.200--0.0079-
aaa-0.110--0.0043-
bbb-0.110--0.0043-
ccc-0.110--0.0043-
ddd-0.060--0.0024-
eee-0.060--0.0024-
1. Values in inches are converted from mm and rounded to 4 decimal digits.
2. Dimension is measured at the maximum bump diameter parallel to primary datum Z.
millimeters
M95M04-DR
WLCSP8 package information
(1)
inches
Figure 26. WLCSP8 - Recommended footprint
0.200
0.270
1.Dimensions are expressed in millimeters.
1.000
1.400
0.500
2.100
1.100
E1_WLCSP8_4MF9V_FP_V1
DS12179 - Rev 2
page 35/44
Page 36
10.3TSSOP8 package information
TSSOP8 is an 8-lead thin shrink small outline, 3 x 6.4 mm, 0.65 mm pitch, package.
D
85
Figure 27. TSSOP8 – Outline
E
E1
M95M04-DR
TSSOP8 package information
c
1
A
CP
4
A2
b
e
1.Drawing is not to scale.
Table 18. TSSOP8 – Mechanical data
Symbol
Min.Typ.Max.Min.Typ.Max.
A
--1.200--0.0472
A10.050-0.1500.0020-0.0059
A20.8001.0001.0500.03150.03940.0413
b0.190-0.3000.0075-0.0118
c0.090-0.2000.0035-0.0079
CP--0.100--0.0039
D2.9003.0003.1000.11420.11810.1220
e-0.650--0.0256-
E6.2006.4006.6000.24410.25200.2598
E14.3004.4004.5000.16930.17320.1772
L0.4500.6000.7500.01770.02360.0295
L1-1.000--0.0394-
1. Values in inches are converted from mm and rounded to four decimal digits.
α0°-8°0°-8°
millimeters
α
A1
L
L1
inches
(1)
DS12179 - Rev 2
page 36/44
Page 37
Figure 28. TSSOP8 – Recommended footprint
2.3
1.0
7.0
0.65
M95M04-DR
TSSOP8 package information
1.Dimensions are expressed in millimeters.
0.35
DS12179 - Rev 2
page 37/44
Page 38
11Ordering information
Example:M95M04- D R MN 6TP /V
Device type
M95 = SPI serial access EEPROM
Device function
M04‑- = 4096 Kbit
Device family
D = with additional identification page
Operating voltage
R = VCC = 1.8 V to 5.5 V
Package
MN = SO8N (150 mil width)
DW = TSSOP8 (169 mil width)
CS = WLCSP
Device grade
6 = Industrial: device tested with standard test flow over -40 to 85 °C
Option
T = Tape and reel packing
blank = tube packing
Planting technology
P = RoHS compliant and halogen-free (ECOPACK2)
Process
/V = Manufacturing technology code
1. All packages are ECOPACK2 (RoHS-compliant and free of brominated, chlorinated and antimony-oxide flame retardants).
(1)
M95M04-DR
Ordering information
Table 19. Ordering information scheme
Note:Parts marked as “ES”, “E” or accompanied by an Engineering Sample notification letter, are not yet qualified and
therefore not approved for use in production. ST is not responsible for any consequences resulting from such
use. In no event will ST be liable for the customer using any of these engineering samples in production. ST
Quality has to be contacted prior to any decision to use these Engineering samples to run qualification activity.
DS12179 - Rev 2
page 38/44
Page 39
Revision history
Table 20. Document revision history
DateRevisionChanges
24-Oct-20191Initial release.
Updated:
•Features, Section 6.10 Lock ID
•Titles in Figure 25. WLCSP8 - Outline with BSC, Table 17. WLCSP8 - Mechanical data and
22-Feb-20212
Figure 26. WLCSP8 - Recommended footprint
•Table 14. DC characteristics, Table 15. AC characteristics
added sentence at the top of Section 10.2 WLCSP8 package information, note 2,3 and 5 in Table 14. DC
Table 18. TSSOP8 – Mechanical data ........................................................... 36
Table 19. Ordering information scheme........................................................... 38
Table 20. Document revision history ............................................................. 39
DS12179 - Rev 2
page 43/44
Page 44
M95M04-DR
IMPORTANT NOTICE – PLEASE READ CAREFULLY
STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST
products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST
products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgement.
Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of
Purchasers’ products.
No license, express or implied, to any intellectual property right is granted by ST herein.
Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.
ST and the ST logo are trademarks of ST. For additional information about ST trademarks, please refer to www.st.com/trademarks. All other product or service
names are the property of their respective owners.
Information in this document supersedes and replaces information previously supplied in any prior versions of this document.