These electrically erasable programmable memory (EEPROM) devices are accessed by a high
speed SPI-compatible bus. The memory array is
organized as 32768 x 8 bit (M95256) and 16384 x
8 bit (M95128).
The device is accessed by a simple serial interface
that is SPI-compatible. The bus signa ls are C, D
and Q, as shown in Table 2. and Figu re 2..
The device is selected when Chip Select (S
en Low. Communications with the devi ce can be
interrupted using Hold (HOLD
).
Figure 2. Logic Diagram
V
CC
D
C
S
W
HOLD
M95xxx
) is tak-
Q
Figure 3. DIP, SO and TSSOP Connections
M95xxx
SV
1
2
W
3
4
SS
Note: See PACKAGE MECHANICAL section for package dimen-
sions, and how to identify pi n-1.
8
7
6
5
AI01790D
CC
HOLDQ
C
DV
Table 2. Signal Names
C Serial Clock
D Serial Data Input
Q Serial Data Output
SChip Select
Write Protect
W
HOLD
Hold
V
CC
V
SS
AI01789C
V
SS
Supply Voltage
Ground
5/39
M95256, M95128
SIGNAL DESCRIPTION
During all operations, VCC must be held stable and
within the specified valid range: V
(max).
V
CC
All of the input and out put signals must be held
High or Low (according to voltages of V
or VOL, as specified in Table 13. to Table 17.).
These signals are described next.
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).
Serial 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).
Serial 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) changes after the falling
edge of Serial Clock (C).
Chip Select (S
). When this input signal is High,
the device is des elected and Serial Data Ou tput
(min) to
CC
, VOH, V
IH
(Q) is at high impedance. Unless an internal Write
cycle is in progress, the device will be in the Standby Power mode. Drivi ng Chip Select ( S
lects the device, placing it in the Active Power
mode.
IL
After Power-up, a falling edge on Chip Select (S
is required prior to the start of any instruction.
Hold (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 impedanc e, and Serial D ata Input (D)
and Serial Clock (C) are Don’t Care.
To start the Hold condition, the device must be selected, wit h Ch ip Select (S
Write Protect (W
). The main purpose of this in-
) driven Low.
put 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 e ither High or Low, and
must be stable during all write instructions.
) Low se-
)
6/39
CONNECTI NG TO THE SPI BUS
These devices are fully compatible with the SPI
protocol.
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
Selec t ( S
) goes Low.
All output data bytes are shifted out of the device,
most significant bit first. The Serial Data Output
Figure 4. Bus Master and Memory Devices on the SPI Bus
(Q) is latched on the first fa lling edge of the Serial
Clock (C) after the instruction (such as the Read
from Memory Array and Read Status Re gister instructions) have been clocked into the device.
Figure 4 . shows three devices, con nected to an
MCU, on a SPI bus. Only one device is selected at
a time, so only one de vice drives the Serial Data
Output (Q) line at a time, all the o thers be ing high
impedance.
M95256, M95128
SPI Interface with
(CPOL, CPHA) =
(0, 0) or (1, 1)
Bus Master
(ST6, ST7, ST9,
ST10, Others)
CS3CS2CS1
Note: The Write Protect (W) and Hold (HOLD) signals should be drive n, High or Low as appropriate.
SDO
SDI
SCK
CQD
SPI Memory
Device
S
CQD
SPI Memory
Device
HOLD
W
S
HOLD
W
CQD
SPI Memory
Device
S
W
AI03746D
HOLD
7/39
M95256, M95128
SPI Modes
These devices can be drive n by a microcont roller
with its SPI peripheral running in either of the two
following modes:
–CPOL=0, CPHA=0
–CPOL=1, CPHA=1
For these two modes, input data is latc hed in on
the rising edge of Serial Clock (C), and output data
Figure 5. SPI Mo de s S upported
CPHA
CPOL
0
0
1
1
C
C
D
Q
MSB
is avai lable from t he falling edge of S erial Clock
(C).
The difference between the two modes, as shown
in Figure 5., 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)
MSB
AI01438B
8/39
OPERATING FEAT URES
Power-up
When the power supply is turned on, V
from V
During this time, the Chip Select (S
lowed to follow the V
to VCC.
SS
) must be al-
voltage. It must not be al-
CC
lowed to float, but should be connected to V
a suitable pull-up resistor.
As a built in safety feature, Chip Select (S
sensitive as well a s level sens itive. After P owerup, the device does not become s elected until a
falling edge has first been detected on Chip Select
). This ensures that Ch ip Select (S) must have
(S
been High, prior to going Low to start the first operation.
Power On Reset: V
Lock-Out Write Protect
CC
In order to prevent data corruption and inadvertent
Write instructions during Power-up, a Power On
Reset (POR) circuit is included. The internal reset
is held active until V
has reached the Power On
CC
Reset (POR) threshold voltage, and all operations
are disabled – the device will not respond to any
instruction. In the same way, when V
CC
the operating voltage, below the Power On Reset
(POR) threshold voltage, all operations are disabled and the device will not res pond to any instruction.
A stable and valid V
must be applied before ap-
CC
plying any logic signal.
Power-down
At Power-down, the device must be deselected.
Chip Select (S
voltage applied on V
) should be allowed to follow the
.
CC
Active Power and Standb y Power M ode s
When Chip Select (S
) is Low, the device is select-
ed, and in the Active Power mode. The device
rises
CC
via
CC
) is edge
drops from
M95256, M95128
consumes I
17..
When Chip Select (S
lected. If an Erase/Write cycle is not currently in
progress, the device then goes in to the Standby
Power mode, and the device cons umption drops
CC1
.
to I
Hold Condition
The Hold (HOLD
rial communications with the device without resetting the clocking sequence.
During the Hold condition, the Serial Data Output
(Q) is high impedanc e, and Serial D ata Input (D)
and Serial Clock (C) are Don’t Care.
To enter the Hold condition, the device must be
selecte d, with Chip Selec t (S
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, and this mechanism can be used if it is required to reset any processes that had been in progress.
The Hold condition starts when the Hold (HOLD
signal is driven Low at the same time as Serial
Clock (C) already being Low (as shown in Figure
6.).
The Hold condition ends when the Hold (HOLD
signal is driven High at the same time as Serial
Clock (C) already being Low.
Figure 6 . also shows what happens if the rising
and falling edges are not timed to coincide with
Serial Clock (C) being Low.
, as specified in Table 13. to Table
CC
) is High, the device is dese-
) signal is used to pause any se-
) Low.
)
)
Figure 6. Hold Condition Activation
C
HOLD
Hold
Condition
Hold
Condition
AI02029D
9/39
M95256, M95128
Status Register
Figure 7. shows the position of the Status Register
in the control logic of the d evice. The Status Register contains a number of status and cont rol bits
that can be read or set (as appropriate) by specific
instructions.
WIP bit. The Write In Progress (WIP) bit indicates
whether the memory is busy with a Write or Write
Status Register cycle.
WEL bit. The Write Enable Latch (WEL) bit i ndicates the status of the internal Write Enable Latch.
BP1, 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.
SRWD 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 an d Write Protect (W
signal allow the device to be put in the Hardware
Protected mode. In this mode, the non-volatile bits
of the Status Register (SRWD, BP1, BP0) become
read-only bits.
Table 3. Status Register Format
b7 b0
SRWD0 0 0 BP1 BP0 WEL WIP
Status Register Write Protect
Block Protect Bits
Write Enable Latch Bit
Write In Progress Bit
Data Protec ti on a n d Protocol Cont rol
Non-volatile memory devices can be used in environments that are particularly noisy, and within applications that could experience problems if
memory bytes are corrupted. Consequently, the
device features the following data protection
mechanisms:
■Write and Write Status Register instructions
are checked that they consist of a number of
clock pulses that is a multiple of eight, before
they are accepted for execution.
■All instructions that modify data must be
preceded by a Write Enable (WREN)
instruction to set the Write Enable Latch
(WEL) bit. This bit is returned to its reset state
by the following events:
–Power-up
–Write Disable (WRDI) instruction
completion
–Write Status Register (WRSR) instruction
completion
)
–Write (WRITE) instruction completion
■The Block Protect (BP1, BP0) bits allow part of
the memory to be configured as read-only.
This is the Software Protected Mode (SPM).
■The Write Protect (W) signal allows the Block
Protect (BP1, BP0) bits to be protected. This is
the Hardware Protected Mode (HPM).
For any instruction to be accepted, and e xe cuted,
Chip Select (S
) must be driven High after the rising
edge of Serial Clock (C) for the last bit of the instruction, and before the next rising edge of Serial
Clock (C).
Two points need to be no ted in the p revious 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.