XICOR X25F008VE-5, X25F008VE, X25F008V-5, X25F008V, X25F008SI-5 Datasheet

...
0 (0)

APPLICATION NOTE

A V A I L A B L E

AN61 • AN75 • AN77 • AN79 • AN82

X25F064/032/016/008

SerialFlash™ Memory With Block Lock TM Protection

FEATURES

DESCRIPTION

1MHz Clock Rate

SPI Serial Interface

64K/32K/16K/8K Bits

32 Byte Small Sector Program Mode

Low Power CMOS

<1 μA Standby Current

<5mA Active Current

1.8V – 3.6V or 5V “Univolt” Read and Program Power Supply Versions

Block Lock Protection

Protect 1/4, 1/2, or all of E 2PROM Array

Built-in Inadvertent Program Protection

Power-Up/Power-Down protection circuitry

Program Enable Latch

Program Protect Pin

Self-Timed Program Cycle

5ms Program Cycle Time (Typical)

High Reliability

Endurance: 100,000 cycles per byte

Data Retention: 100 Years

ESD protection: 2000V on all pins

8-Lead PDlP Package

8-Lead 150 mil SOIC Packages

32K, 16K, 8K available in 14-Lead TSSOP, 64K available in 20-Lead TSSOP

The X25F064/032/016/008 family are 8/16/32/64K-bit CMOS SerialFlash memory, internally organized X 8. They feature a “Univolt” Program and Read voltage, Serial Peripheral Interface (SPI), and software protocol allowing operation on a simple three-wire bus. The bus signals are a clock input (SCK), plus separate data in (SI) and data out (SO) lines. Access to the device is controlled through a chip select (CS) input, allowing any number of devices to share the same bus.

The X25F064/032/016/008 also features two additional inputs that provide the end user with added flexibility. By asserting the HOLD input, the X25F064/032/016/008 will ignore transitions on its inputs, thus allowing the host to service higher priority interrupts. The PP input can be used as a hardwire input to the X25F064/032/016/008 disabling all program attempts to the status register, thus providing a mechanism for limiting end user capability of altering 0, 1/4, 1/2, or all of the memory.

The X25F064/032/016/008 utilizes Xicor’s proprietary flash cell, providing a minimum endurance of 100,000 cycles and a minimum data retention of 100 years.

FUNCTIONAL DIAGRAM

SI

 

DATA REGISTER

 

SECTOR DECODE LOGIC

 

 

SO

 

32

8

 

 

 

COMMAND

 

 

 

DECODE

X

 

SCK

AND CONTROL

 

DECODE

 

LOGIC

 

 

LOGIC

MEMORY

 

 

 

 

 

ARRAY

CS

 

 

 

HOLD

 

STATUS

 

 

 

REGISTER

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PROGRAMMING

 

HIGH VOLTAGE

 

PP

 

 

 

 

CONTROL LOGIC

 

CONTROL

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6685 ILL F01.4

SerialFlash™ and Block Lock™ Protection are trademarks of Xicor, Inc.

 

 

 

 

© Xicor, Inc. 1995, 1996 Patents Pending

 

 

 

 

Characteristics subject to change without notice

6685-3.1 8/29/96 T3/C0/D0 SH

 

 

 

 

 

 

X25F064/032/016/008

PIN DESCRIPTIONS

Serial Output (SO)

SO is a push-pull serial data output pin. During a read cycle, data is shifted out on this pin. Data is clocked out by the falling edge of the serial clock.

Serial Input (SI)

SI is the serial data input pin. All opcodes, byte addresses, and data to be written to the memory are input on this pin. Data is latched by the rising edge of the serial clock.

Serial Clock (SCK)

The Serial Clock controls the serial bus timing for data input and output. Opcodes, addresses, or data present on the SI pin are latched on the rising edge of the clock input, while data on the SO pin change after the falling edge of the clock input.

Chip Select (CS)

When CS is HIGH, the X25F064/032/016/008 is deselected and the SO output pin is at high impedance and unless an internal program operation is underway the X25F064/032/016/008 will be in the standby power mode. CS LOW enables the X25F064/032/016/008, placing it in the active power mode. It should be noted that after power-up, a HIGH to LOW transition on CS is required prior to the start of any operation.

Program Protect (PP)

When PP is LOW and the nonvolatile bit PPEN is “1”, nonvolatile programming of the X25F064/032/016/008 status register is disabled, but the part otherwise functions normally. When PP is held HIGH, all functions, including nonvolatile programming operate normally. PP going LOW while CS is still LOW will interrupt programming of the X25F064/032/016/008 status register. If the internal program cycle has already been initiated, PP going LOW will have no effect on programming.

The PP pin function is blocked when the PPEN bit in the status register is “0”. This allows the user to install the X25F064/032/016/008 into a system with PP pin grounded and still be able to program the status register. The PP pin functions will be enabled when the PPEN bit is set “0”.

Hold (HOLD)

HOLD is used in conjunction with the CS pin to select the device. Once the part is selected and a serial sequence is underway, HOLD may be used to pause the serial communication with the controller without resetting the serial sequence. To pause, HOLD must be brought LOW while SCK is LOW. To resume communication, HOLD is brought HIGH, again while SCK is LOW. If the pause feature is not used, HOLD should be held HIGH at all times.

PIN CONFIGURATION

 

 

 

 

 

 

 

 

 

 

 

 

 

8-Lead DIP/SOIC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

8

 

 

VCC

 

 

 

 

 

 

 

 

 

 

 

 

 

CS

 

 

 

 

X25F064/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SO

 

 

2

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

HOLD

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

032/016/

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PP

 

 

 

 

 

 

SCK

 

 

 

 

 

 

 

 

 

 

 

VSS

 

 

4

 

008

 

 

 

 

5

 

 

SI

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14-Lead TSSOP

 

 

 

 

 

 

 

 

 

 

 

 

20-Lead TSSOP

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NC

 

 

 

 

 

 

 

 

 

 

CS

 

 

 

1

14

 

 

 

VCC

 

1

 

20

 

NC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SO

 

2

13

 

 

 

 

HOLD

 

 

 

CS

 

 

2

 

19

 

VCC

 

 

 

 

 

 

 

NC

 

3

12

 

 

 

NC

NC

 

3

 

18

 

NC

NC

 

4

X25F032/

 

 

 

 

 

 

SO

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

016/008 11

 

 

 

NC

 

 

17

 

HOLD

 

 

 

 

 

 

 

NC

 

5

10

 

 

 

NC

NC

 

5

 

X25F064 16

 

NC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PP

 

6

9

 

 

 

SCK

NC

 

6

 

15

 

NC

 

 

 

 

 

 

 

VSS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

8

 

 

 

SI

 

 

 

PP

 

 

7

 

14

 

SCK

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

VSS

 

8

 

13

 

SI

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NC

 

 

 

9

 

12

 

NC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NC

 

 

 

10

11

 

NC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6685 ILL F02.4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PIN NAMES

 

SYMBOL

DESCRIPTION

 

 

 

 

 

 

Chip Select Input

 

CS

 

 

SO

Serial Output

 

 

 

 

 

SI

Serial Input

 

 

 

 

 

SCK

Serial Clock Input

 

 

 

 

 

PP

Program Protect Input

 

 

 

 

 

VSS

Ground

 

VCC

Supply Voltage

 

HOLD

Hold Input

 

 

 

 

 

NC

No Connect

 

 

 

 

6685 PGM T01.1

2

X25F064/032/016/008

PRINCIPLES OF OPERATION

The X25F064/032/016/008 family are SerialFlash Memory designed to interface directly with the synchronous serial peripheral interface (SPI) of many popular microcontroller families.

The X25F064/032/016/008 family contains an 8-bit instruction register. It is accessed via the SI input, with

data being clocked in on the rising SCK. CS must be LOW and the HOLD and PP inputs must be HIGH during

the entire operation. The PP input is “Don’t Care” if PPEN is set “0”.

Table 1 contains a list of the instructions and their operation codes. All instructions, addresses and data are transferred MSB first.

Data input is sampled on the first rising edge of SCK after CS goes LOW. SCK is static, allowing the user to stop the clock and then resume operations. If the clock line is shared with other peripheral devices on the SPI bus, the user can assert the HOLD input to place the X25F064/ 032/016/008 into a “PAUSE” condition. After releasing HOLD, the X25F064/032/016/008 device will resume operation from the point when HOLD was first asserted.

Program Enable Latch

The X25F064/032/016/008 device contains a program enable latch. This latch must be SET before a program operation will be completed internally. The PREN instruction will set the latch and the PRDI instruction will reset the latch. This latch is automatically reset on power-up and after the completion of a sector program or status register write cycle.

Status Register

The RDSR instruction provides access to the status register. The status register may be read at any time, even during a program cycle. The status register is

Table 1. Instruction Set

formatted as follows:

7

6

5

4

3

2

1

0

 

 

 

 

 

 

 

 

PPEN

X

X

X

BL1

BL0

PEL

PIP

6685 PGM T02.2

PPEN, BL0, and BL1 are set by the PRSR instruction. PEL and PIP are “read-only” and automatically set by other operations.

The Programming-In-Process (PIP) bit indicates whether the X25F064/032/016/008 device is busy with a program operation. When set to a “1” programming is in progress, when set to a “0” no programming is in progress. During programming, all other bits are set to “1”.

The Program Enable Latch (PEL) bit indicates the status of the program enable latch. When set to a “1” the latch is set; when set to a “0” the latch is reset.

The Block Lock (BL0 and BL1) bits are nonvolatile and allow the user to select one of four levels of protection. The X25F064/032/016/008 device array is divided into four equal segments. One, two, or all four of the segments may be locked. That is, the user may read the segments, but will be unable to alter (program) data within the selected segments. The partitioning is controlled as illustrated below.

Status Register Bits

Array Addresses

 

 

 

BL1

BL0

Locked

 

 

 

0

0

None

0

1

upper fourth

 

 

 

1

0

upper half

 

 

 

1

1

All

6685 PGM T03.1

Program-Protect Enable

The Program-Protect-Enable bit (PPEN) in the X25F064/032/016/008 status register acts as an enable bit for the PP pin.

Instruction Name

Instruction Format*

Operation

 

 

 

 

PREN

0000

0110

Set the Program Enable Latch (Enable Program Operations)

 

 

 

 

PRDI

0000

0100

Reset the Program Enable Latch (Disable Program Operations)

RDSR

0000 0101

Read Status Register

 

 

 

PRSR

0000 0001

Program Status Register

 

 

 

 

READ

0000

0011

Read from Memory Array beginning at Selected Address

PROGRAM

0000

0010

Program Memory Array beginning at Selected Address

(32 Bytes)

 

 

 

 

 

 

 

 

 

 

6685 PGM T04.2

*Instructions are shown MSB in leftmost position. Instructions are transferred MSB first.

3

X25F064/032/016/008

 

 

 

Locked

Unlocked

Status

PPEN

PP

PEL

Blocks

Blocks

Register

 

 

 

 

 

 

0

X

0

Locked

Locked

Locked

0

X

1

Locked

Programmable

Programmable

1

LOW

0

Locked

Locked

Locked

1

LOW

1

Locked

Programmable

Locked

 

 

 

 

 

 

X

HIGH

0

Locked

Locked

Locked

 

 

 

 

 

 

X

HIGH

1

Locked

Programmable

Programmable

 

 

 

 

 

 

 

 

 

 

 

6685 PGM T05.2

The Program Protect (PP) pin and the nonvolatile Program Protect Enable (PPEN) bit in the Status Register control the programmable hardware write protect feature. Hardware program protection is enabled when PP pin is LOW, and the PPEN bit is “1”. Hardware program protection is disabled when either the PP pin is HIGH or the PPEN bit is “0”. When the chip is hardware program protected, nonvolatile programming of the Status Register in disabled, including the Block Lock bits and the PPEN bit itself, as well as the Block Lock sections in the memory array. Only the sections of the memory array that are not Block Locked can be programmed.

Note: Since the PPEN bit is program protected, it cannot be changed back to a “0”, as long as the PP pin is held LOW.

Clock and Data Timing

Data input on the SI line is latched on the rising edge of SCK. Data is output on the SO line by the falling edge of SCK.

Read Sequence

When reading from the SerialFlash memory array, CS is first pulled LOW to select the device. The 8-bit READ instruction is transmitted to the X25F064/032/016/008 device, followed by the 16-bit address. After the read opcode and address are sent, the data stored in the memory at the selected address is shifted out on the SO line. The data stored in memory at the next address can be read sequentially by continuing to provide clock pulses. The address is automatically incremented to the next higher address after each byte of data is shifted out. When the highest address is reached the address counter rolls over to address $0000, allowing the read cycle to be continued indefinitely. The read operation is terminated by taking CS HIGH. Refer to the Read SerialFlash Memory Array Operation Sequence illustrated in Figure 1.

To read the status register, the CS line is first pulled LOW to select the device followed by the 8-bit instruc-

tion. After the read status register opcode is sent, the contents of the status register are shifted out on the SO line. The Read Status Register Sequence is illustrated in Figure 2.

Programming Sequence

Prior to any attempt to program the X25F064/032/016/ 008 device, the program enable latch must first be set by issuing the PREN instruction (See Figure 3). CS is first taken LOW, then the PREN instruction is clocked into the X25F064/032/016/008 device. After all eight bits of the instruction are transmitted, CS must then be taken HIGH. If the user continues the programming operation without taking CS HIGH after issuing the PREN instruction, the programming operation will be ignored.

To program the SerialFlash memory array, the user issues the PROGRAM instruction, followed by the address of the first location in the sector and then the data to be programmed. The data is programmed in a 256clock operation. CS must go LOW and remain LOW for the duration of the operation. The 32 bytes must reside in the same sector and cannot cross sector boundaries. If the address counter reaches the end of the sector and the clock continues, or if fewer than 32 bytes are clocked in, the contents of the sector cannot be guaranteed.

For the program operation to be completed, CS can only be brought HIGH after bit 0 of data byte 32 is clocked in. If it is brought HIGH at any other time the program operation will not be completed. Refer to Figure 4 below for a detailed illustration of the programming sequence and time frames in which CS going HIGH is valid.

To program the status register, the PRSR instruction is followed by the data to be programmed. Data bits 0, 1, 4, 5 and 6 must be “0”. This sequence is shown in Figure 5.

While the program cycle is in progress, following a status register or memory write sequence, the status register may be read to check the PIP bit. During this time the PIP bit will be HIGH.

Hold Operation

The HOLD input should be HIGH (at VIH) under normal operation. If a data transfer is to be interrupted HOLD can be pulled LOW to suspend the transfer until it can be

resumed. The only restriction is that the SCK input must be LOW when HOLD is first pulled LOW and SCK

must also be LOW when HOLD is released.

The HOLD input may be tied HIGH either directly to VCC or tied to VCC through a resistor.

4

XICOR X25F008VE-5, X25F008VE, X25F008V-5, X25F008V, X25F008SI-5 Datasheet

X25F064/032/016/008

Operational Notes

The device powers-up in the following state:

The device is in the low power standby state.

A HIGH to LOW transition on CS is required to enter an active state and receive an instruction.

SO pin is high impedance.

The program enable latch is reset.

Data Protection

The following circuitry has been included to prevent inadvertent programming:

The program enable latch is reset upon power-up.

A program enable instruction must be issued to set the program enable latch.

CS must come HIGH at the proper clock count in order to start a program cycle.

Figure 1. Read SerialFlash Memory Array Operation Sequence

CS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

2

3

4

5

6

7

8

9

10

20

21

22

23

24

25

26

27

28

29

30

 

SCK

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

INSTRUCTION

 

 

 

 

 

16 BIT ADDRESS

 

 

 

 

 

 

 

 

 

 

SI

 

 

 

 

 

 

 

15

14

13

3

2

1

0

 

 

 

 

 

 

 

 

HIGH IMPEDANCE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DATA OUT

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

6

5

4

3

2

1

0

SO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MSB

 

 

 

 

6685 ILL F03

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Figure 2. Read Status Register Operation Sequence

CS

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

SCK

INSTRUCTION

SI

DATA OUT

HIGH IMPEDANCE

SO 7 6 5 4 3 2 1 0

MSB

6685 ILL F04

5

Loading...
+ 11 hidden pages