"Spansion, Inc." and "Cypress Semiconductor Corp." have merged together to deliver high-performance, high-quality solutions
at the heart of today's most advanced embedded systems, from automotive, industrial and networking platforms to highly
interactive consumer and mobile devices. The new company "Cypress Semiconductor Corp." will continue to offer "Spansion,
Inc." products to new and existing customers.
Continuity of Specifications
ig
n
There is no change to this document as a result of offering the device as a Cypress product. Any changes that have been made
are the result of normal document improvements and are noted in the document history page, where supported. Future
revisions will occur when appropriate, and changes will be noted in a document history page.
es
Continuity of Ordering Part Numbers
ew
D
Cypress continues to support existing part numbers. To order these products, please use only the Ordering Part Numbers listed
in this document.
For More Information
N
ot
R
ec
om
m
en
de
d
fo
rN
Please contact your local sales office for additional information about Cypress products and solutions.
S29WS512R, S29WS256R, S29WS128R
512/256/128 Mb (32/16/8M x 16 bit)
1.8 V S29WS-R MirrorBit® Flash
This product family has been retired and is not recommended for designs. For new and current designs, S29WS512P,
S29WS256P, and S29WS128P supersedes S29WS512R, S29WS256R, and S29WS128R respectively. This is the factoryrecommended migration path. Please refer to the S29WS-P data sheet for specifications and ordering information.
Availability of this document is retained for reference and historical purposes only.
Features
65 nm MirrorBit Technology
– 100,000 cycles per sector (typical)
– 10-year data retention (typical)
Single supply 1.8 V read/program/erase (1.70 V – 1.95 V)
Data Protection
– Low VCC write inhibit
Secured Silicon Sector
– 512 Bytes of Secured Silicon Sector region consisting of One Time
Program (OTP) area of 256 bytes each for factory and customer
– Hardware Sector Protection (via ACC pin)
Wireless Temperature range (-25°C to +85°C)
ig
n
16-bit (Word) data bus width
es
Simultaneous Read/Write (SRW) operation
– Read from one bank while programming or erasing in another
bank
– Memory array is divided into 16 equal size banks
D
– All sectors protected when ACC input is at VIL
Programmable linear (8/16) with wrap around and continuos burst
read modes
ew
– Boot code controlled sector protection
– A range of sectors may be protected to prevent program and erase
until the next hardware reset or power is removed from the device
RDY output for data transfer flow control
Sector Erase
– Four 32 Kbyte sectors at top or bottom of memory array
– All other sectors are 128 Kbytes
rN
– Dynamic sector protection
fo
om
m
en
de
Optional acceleration voltage supply (ACC) to reduce factory
programming time
d
Write Buffer Programming up to 64 -byte groups
Suspend and Resume commands for Program and Erase
operations
Write operation status register bits indicate program and erase
operation completion
Common Flash Interface (CFI) data structure
Offered Packages
– 512/256/128R: 84-ball FBGA (11.6mm x 8mm) VBH084
N
ot
R
ec
Program-Erase Endurance
– All sectors are unprotected at power on for simplified system
production test & programming
– A single command is used to protect all sectors from program or
erase
– A single sector at a time may be unprotected by a command to
enable programming or erase.
Cypress Semiconductor Corporation
Document Number: 002-01101 Rev. *I
•
198 Champion Court
•
San Jose, CA 95134-1709
•
408-943-2600
Revised October 09, 2015
S29WS512R, S29WS256R,
S29WS128R
Performance Characteristics
Read Access Times (maximum values)
Speed Option (MHz)
104
Synch. Internal Access, ns (tIA)
75
Synch. Burst Access, ns (tBACC)
7.6
Asynch. Access Time, ns (tACC)
80
Current Consumption (typical values)
Burst Read @ 104 MHz (ICCB)
32 mA
Simultaneous Operation @ 104 MHz (ICC5)
52 mA
20 mA
20 mA
Standby Mode (ICC3)
20 µA
ig
n
Program (ICC2)
Erase (ICC2)
es
Typical Program & Erase Times (typical values)
Effective Write Buffer Programming (VCC) Per Word
12.5 µs
Sector Erase (128 KByte Sector) (VCC)
0.8 s
N
ot
R
ec
om
m
en
de
d
fo
rN
0.35 s
D
8 µs
Sector Erase (32 KByte Sector) (VCC)
ew
Effective Write Buffer Programming (VACC) Per Word
Document Number: 002-01101 Rev. *I
Page 3 of 77
S29WS512R
S29WS256R, S29WS128R
Contents
2.
2.1
Ordering Information ................................................... 5
Valid Combinations ........................................................ 5
3.
Input/Output Descriptions & Logic Symbol .............. 6
4.
Block Diagrams............................................................ 7
5.
5.1
5.2
5.3
Physical Dimensions/Connection Diagrams.............
Related Documents .......................................................
Special Handling Instructions for FBGA Package..........
Connection Diagrams and Physical Dimensions ...........
6.
Product Overview ...................................................... 10
7.
7.1
7.2
7.3
Address Space Maps .................................................
Data Address & Quantity Nomenclature ......................
Flash Memory Array.....................................................
Device ID and CFI (ID-CFI)..........................................
10
11
12
21
Device Operations .....................................................
Device Bus Operations ................................................
Asynchronous Read.....................................................
Page Mode Read .........................................................
Synchronous (Burst) Read Mode and Configuration
Register........................................................................
8.5 Status Register ............................................................
8.6 Blank Check.................................................................
8.7 Simultaneous Read/Write ............................................
8.8 Writing Commands/Command Sequences..................
8.9 Program/Erase Operations ..........................................
8.10 Handshaking ................................................................
8.11 Hardware Reset ...........................................................
8.12 Software Reset ............................................................
23
24
24
25
Power Conservation Modes....................................... 46
Standby Mode............................................................... 46
Automatic Sleep Mode.................................................. 46
Output Disable (OE#).................................................... 46
11.
11.1
11.2
11.3
11.4
11.5
11.6
11.7
11.8
11.9
Electrical Specifications............................................. 47
Absolute Maximum Ratings .......................................... 47
Operating Ranges......................................................... 47
DC Characteristics ........................................................ 48
Capacitance .................................................................. 49
AC Test Conditions ....................................................... 49
Key to Switching Waveforms ........................................ 50
VCC Power Up............................................................... 50
CLK Characterization.................................................... 51
AC Characteristics ........................................................ 52
rN
fo
12. Appendix ..................................................................... 63
12.1 Command Definitions.................................................... 63
12.2 Device ID and Common Flash Memory Interface
Address Map................................................................. 65
d
de
8.
8.1
8.2
8.3
8.4
7
7
7
8
10.
10.1
10.2
10.3
ig
n
General Description..................................................... 5
es
1.
Sector Protection/Unprotection................................. 42
Sector Lock/Unlock Command ..................................... 43
Sector Lock Range Command...................................... 43
Hardware Data Protection Methods.............................. 44
SSR Lock...................................................................... 44
Secure Silicon Region................................................... 44
D
Performance Characteristics............................................... 3
9.
9.1
9.2
9.3
9.4
9.5
ew
Features................................................................................. 2
13.
Revision History.......................................................... 71
N
ot
R
ec
om
m
en
25
31
34
35
35
35
41
42
42
Document Number: 002-01101 Rev. *I
Page 4 of 77
S29WS512R
S29WS256R, S29WS128R
1.
General Description
The Spansion S29WS512/256/128R are Mirrorbit flash products fabricated on 65 nm process technology. These burst mode flash
devices are capable of performing simultaneous read and write operations with zero latency on two separate banks using separate
data and address pins. These products can operate up to 104 MHz and use a single VCC of 1.7 V to 1.95 V that makes them ideal
for today’s demanding wireless applications requiring higher density, better performance and lowered power consumption.
2.
Ordering Information
This product family has been retired and is not recommended for designs. For new and current designs, S29WS512P, S29WS256P,
and S29WS128P supersedes S29WS512R, S29WS256R, and S29WS128R respectively. This is the factory-recommended
migration path. Please refer to the S29WS-P data sheet for specifications and ordering information.
Availability of this document is retained for reference and historical purposes only.
R
0P
BH
W
00
0
ew
Packing Type
0 = Tray (standard; see note 1)
2 = 7-inch Tape and Reel
3 = 13-inch Tape and Reel
es
512
D
S29WS
ig
n
The order number is formed by a valid combinations of the following:
rN
Model Number
(Boot Configuration Options)
00 = Uniform, 1 CE
20 = Top Boot, 1 CE
fo
Temperature Range
W = Wireless (–25C to +85C)
de
d
Package Type And Material
BH = Very Thin Fine-Pitch BGA, Low-Halogen Lead (Pb)-free Package
om
m
en
Speed Option (Burst Frequency)
0P = 66 MHz
0S = 83 MHz
AA = 104 MHz
Flash Density
512 =512 Mb
256 =256 Mb
128 =128 Mb
Device Family
S29WS =1.8 Volt-only Simultaneous Read/Write, Burst Mode Flash Memory
N
ot
R
ec
Process Technology
R = 65 nm MirrorBit Technology
2.1
Valid Combinations
Valid Combinations list configurations planned to be supported in volume for this device. Consult your local sales office to confirm
availability of specific valid combinations and to check on newly released combinations.
S29WS-R Valid Combinations (Notes 1, 2)
Base Ordering
Part Number
Speed
Option
Package Type, Material, &
Temperature Range
Packing
Type
Model
Numbers
Package Type
(Note 2)
Product
Status
0P, 0S, AA
BHW (Low-Halogen, Lead
(Pb)-free)
0, 2, 3
(Note 1)
00, 20
11.6 mm x 8 mm
84-ball
MCP-Compatible
Advance
S29WS512R
S29WS256R
S29WS128R
Notes:
1. Type 0 is standard. Specify other options as required.
2. BGA package marking omits leading S29 and packing type designator from ordering part number.
Document Number: 002-01101 Rev. *I
Page 5 of 77
S29WS512R
S29WS256R, S29WS128R
3. Input/Output Descriptions & Logic Symbol
Table identifies the input and output package connections provided on the device.
Table 3.1 Input/Output Descriptions
Symbol
Type
Description
Input
Higher order address lines. Amax = A24 for WS512R, A23 for WS256R,
A22 for WS128R
DQ15 – DQ0
I/O
Data input/output
F1-CE#
Input
Flash-1 Chip Enable. Asynchronous relative to CLK. Used to select the first portion of the flash device
address space that can be directly selected by one host chip enable signal.
F2-CE#
Input
Flash-2 Chip Enable. Asynchronous relative to CLK. Used to select the first portion of the flash device
address space that can be directly selected by one host chip enable signal.
OE#
Input
Output Enable. Asynchronous relative to CLK for the Burst mode
WE#
Input
Write Enable
VCC
Supply
Device Power Supply
es
ig
n
Amax – A0
Supply
Input/Output Power Supply (must be ramped simultaneously with VCC)
Supply
Ground
NC
No Connect
No Connected internally
RDY
Output
Ready. Indicates when valid burst data is ready to be read
CLK
Input
The first rising edge of CLK in conjunction with AVD# low latches address input and activates burst
mode operation. After the initial word is output, subsequent rising edges of CLK increment the internal
address counter. CLK should remain low during asynchronous access
AVD#
Input
Address Valid input. Indicates to device that the valid address is present on the address inputs.
VIL = for asynchronous mode, indicates valid address; for burst mode, cause staring address to be
latched on rising edge of CLK.
VIH = device ignores address inputs
RESET#
Input
Hardware Reset. Low = device resets and returns to reading array data.
ACC
Input
Accelerated input.
At VIL,disables all program and erase functions.
Should be at VIH for all other conditions.
RFU
Reserved
Reserved for future use
N
ot
R
ec
om
m
en
de
d
fo
rN
ew
D
VCCQ
VSS
Document Number: 002-01101 Rev. *I
Page 6 of 77
S29WS512R
S29WS256R, S29WS128R
4.
Block Diagrams
VCC
VSS
Y-Decoder
Bank Address
VCCQ
Bank 0
Latches and
Control Logic
Figure 4.1 Simultaneous Operation Circuit
DQ15–DQ0
Amax–A0
X-Decoder
OE#
X-Decoder
ig
n
D
Amax–A0
STATE
CONTROL
&
COMMAND
REGISTER
Status
DQ15–DQ0
ew
ACC
RESET#
WE#
Fx-CE#
AVD#
RDY
DQ15–DQ0
es
Bank 1
Latches and
Control Logic
Y-Decoder
Bank Address
rN
Control
Amax–A0
DQ15–DQ0
Latches and
Control Logic
Bank (n)
R
ec
Bank Address
DQ15–DQ0
X-Decoder
Y-Decoder
om
m
en
Amax–A0
Latches and
Control Logic
d
Bank (n-1)
de
Bank Address
Y-Decoder
fo
X-Decoder
DQ15–DQ0
N
2. n = 15.
ot
Notes:
1. Amax = A24 for WS512R, A23 for WS256R, A22 for WS128R.
5. Physical Dimensions/Connection Diagrams
This section shows the I/O designations and package specifications.
5.1
Related Documents
The following documents contain information related to this family of flash devices. Click on the title or go to www.spansion.com to
download the PDF file, or request a copy from your sales office.
5.2
Considerations for X-ray Inspection of Surface-Mounted Flash Integrated Circuits
Special Handling Instructions for FBGA Package
Special handling is required for flash memory products in FBGA packages.
Document Number: 002-01101 Rev. *I
Page 7 of 77
S29WS512R
S29WS256R, S29WS128R
Flash memory devices in FBGA packages may be damaged if exposed to ultrasonic cleaning methods. The package and/or
data integrity may be compromised if the package body is exposed to temperatures above 150°C for prolonged periods of time.
5.3
Connection Diagrams and Physical Dimensions
Figure 5.1 84-ball Fine-Pitch Ball Grid Array
WS512R/WS256R/WS128R
(Top View, Balls Facing Down, MCP Compatible)
1
2
3
4
5
6
7
8
9
10
Legend
DNU
Do Not Use
A
DNU
VSS
CLK
F2-CE#
VCC
RFU
RFU
RFU
RFU
A7
RFU
ACC
WE#
A8
A11
RFU
D
C
A3
A6
RFU
RESET#
RFU
A19
A2
A5
A18
RDY
A20
A9
A1
A4
A17
RFU
A23
A0
VSS
DQ1
RFU
fo
A13
A10
Power
A15
Ground
A21
A14
A22
A24
A16
d
F
A12
rN
E
ew
D
de
G
DQ6
F1-CE#
OE#
DQ9
DQ3
DQ4
DQ13
DQ15
RFU
RFU
DQ0
DQ10
VCC
RFU
DQ12
DQ7
VSS
DQ8
DQ2
DQ11
RFU
DQ5
DQ14
RFU
RFU
VSS
VCC
RFU
RFU
VCCQ
RFU
J
ec
K
RFU
om
m
en
H
ot
R
RFU
L
Reserved for
Future Use
es
AVD#
ig
n
B
N
RFU
M
DNU
DNU
Notes
1. Ball G8 is RFU on the WS256R.
2. Ball G8 is A24 on densities 256 Mbit.
3. Address signals numbered greater than Amax of a particular device are reserved for future use and only indicate where the higher order address will be in higher
density members of related or future family devices.
Document Number: 002-01101 Rev. *I
Page 8 of 77
S29WS512R
S29WS256R, S29WS128R
VBH084—84-ball Fine-Pitch Ball Grid Array (FBGA) 11.6 x 8 mm MCP Compatible Package
0.05 C
(2X)
D
D1
A
e
10
9
e
7
8
SE
7
6
E1
E
5
4
3
2
1
M
A1 CORNER
K
J
H
G
B
10
E
D
SD
6
0.05 C
(2X)
F
NXφb
φ 0.08 M C
TOP VIEW
C
B
A
A1 CORNER
7
ig
n
INDEX MARK
L
es
φ 0.15 M C A B
BOTTOM VIEW
A1
C
D
0.10 C
A2
A
0.08 C
ew
SEATING PLANE
fo
rN
SIDE VIEW
NOTES:
PACKAGE
VBH 084
1. DIMENSIONING AND TOLERANCING PER ASME Y14.5M-1994.
d
N/A
11.60 mm x 8.00 mm NOM
PACKAGE
MIN
NOM
MAX
A
---
---
1.00
A1
0.18
---
---
A2
0.62
---
0.76
11.60 BSC.
E
8.00 BSC.
D1
8.80 BSC.
E1
7.20 BSC.
MD
12
ME
10
N
84
?
3. BALL POSITION DESIGNATION PER JESD 95-1, SPP-010 (EXCEPT
AS NOTED).
4.
SYMBOL "ME" IS THE BALL COLUMN MATRIX SIZE IN THE
"E" DIRECTION.
BODY THICKNESS
BALL FOOTPRINT
BALL FOOTPRINT
R
ROW MATRIX SIZE D DIRECTION
---
0.43
ROW MATRIX SIZE E DIRECTION
TOTAL BALL COUNT
BALL DIAMETER
0.80 BSC.
BALL PITCH
0.40 BSC.
SOLDER BALL PLACEMENT
(A2-A9, B10-L10,
M2-M9, B1-L1)
DEPOPULATED SOLDER BALLS
e REPRESENTS THE SOLDER BALL GRID PITCH.
5. SYMBOL "MD" IS THE BALL ROW MATRIX SIZE IN THE
"D" DIRECTION.
N IS THE TOTAL NUMBER OF SOLDER BALLS.
BODY SIZE
ot
e
SD / SE
0.33
BALL HEIGHT
2. ALL DIMENSIONS ARE IN MILLIMETERS.
BODY SIZE
N
φb
OVERALL THICKNESS
ec
D
NOTE
om
m
en
SYMBOL
de
JEDEC
6
DIMENSION "b" IS MEASURED AT THE MAXIMUM BALL
DIAMETER IN A PLANE PARALLEL TO DATUM C.
7
SD AND SE ARE MEASURED WITH RESPECT TO DATUMS
A AND B AND DEFINE THE POSITION OF THE CENTER
SOLDER BALL IN THE OUTER ROW.
WHEN THERE IS AN ODD NUMBER OF SOLDER BALLS IN ?
THE OUTER ROW PARALLEL TO THE D OR E DIMENSION,
RESPECTIVELY, SD OR SE = 0.000.
WHEN THERE IS AN EVEN NUMBER OF SOLDER BALLS IN
THE OUTER ROW, SD OR SE = e/2
8. NOT USED.
9. "+" INDICATES THE THEORETICAL CENTER OF DEPOPULATED
BALLS.
10 A1 CORNER TO BE IDENTIFIED BY CHAMFER, LASER OR INK
MARK, METALLIZED MARK INDENTATION OR OTHER MEANS.
3339 \ 16-038.25b
Note:
1. BSC is an ANSI standard for Basic Space Centering.
Document Number: 002-01101 Rev. *I
Page 9 of 77
S29WS512R
S29WS256R, S29WS128R
6.
Product Overview
The S29WS-R family consists of 128 Mbit to 1 Gbit, 1.8-V only, simultaneous read/write, burst-mode, flash devices. These devices
have a 16 bit (word) wide data bus. All read accesses provide 16 bits of data on each bus transfer cycle. All writes take 16 bits of
data from each bus transfer cycle.
Device
Mbits
Mbytes
Mwords
Banks
Mbytes / Bank
S29WS128R
128
16
8
16
1
S29WS256R
256
32
16
16
2
S29WS512R
512
64
32
16
4
ig
n
The flash memory array is divided into banks as shown in the above table. A bank is the address range within which one program, or
erase operation may be in progress at the same time as one read operation is in progress in any other bank of the memory. This
multiple bank structure enables Simultaneous Read and Write (SRW) so that code may be executed or data read from one bank
while a group of data is programmed, or erased as a background task in one other bank.
D
es
Each bank is divided into sectors. A sector is the minimum address range of data which can be erased to an all Ones state. There
are four 32 Kbyte sectors which are located either at the bottom or top of the memory array depending on the device model
purchased. These are called boot sectors because they are often used for holding boot code or parameters that need to be
protected or erased separately from other data in the flash array. All other sectors are a uniform size of 128 Kbytes.
rN
ew
Programming is done via a 64 Byte write buffer. It is possible to program from one to 32 words (64 bytes) in each programming
operation.
om
m
en
7. Address Space Maps
de
d
fo
The S29WS family is capable of continuous, synchronous burst read or linear read (8- or 16-word aligned group) with wrap around.
A wrapped burst begins at the initial location and continues to the end of an 8- or 16-word aligned group then “wraps-around” to
continue at the beginning of the 8, or 16-word aligned group. The burst completes with the last word before the initial location. Word
wrap around burst is generally used for processor cache line fill.
There are five address spaces within each device:
A Non-Volatile Flash Memory Array used for storage of data that may be randomly read and reprogrammed
A Read Only Memory Array used for factory programmed permanent device characteristics information. This area contains
the Device Identification (ID) and Common Flash Interface (CFI) information.
A One Time Programmable (OTP) Non-volatile flash array used for factory programmed permanent data, and customer
programmable permanent data. This is called the Secure Silicon Region (SSR).
An OTP location used to permanently protect the SSR. This is call the SSR Lock.
A volatile register used to configure device behavior options. This is called the Configuration Register.
N
ot
R
ec
The main Flash Memory Array is the primary and default address space but, it may be partially overlaid by the other four address
spaces with one alternate address space available at any one time. The location where the alternate address space is overlaid is
defined by the address provided in the command that enables each overlay. The portion of the command address that is sufficient to
select a sector is used to select the sector that is overlaid by an alternate Address Space Overlay (ASO).
Any address range, within the overlaid sector, not defined by an overlay address map, is reserved for future use. All read accesses
outside of an address map within the selected sector, return non-valid data. The locations will display actively driven data but the
meaning of whatever ones or zeros appear are not defined.
There are three operation modes for each bank that determine what portions of the address space are readable at any given time:
Read Mode
Embedded Algorithm (EA) Mode
Address Space Overlay (ASO) Mode
Each bank of the device can be in any operation mode but, only one bank can be in EA or ASO mode at any one time.
Document Number: 002-01101 Rev. *I
Page 10 of 77
S29WS512R
S29WS256R, S29WS128R
In Read Mode a Flash Memory Array bank may read directly by asynchronous or synchronous accesses from the host system bus.
The Flash Control Unit (CU) puts all banks in Read mode during Power-on, a Hardware Reset, after a Command Reset, or after a
bank is returned to Read mode from EA mode. A bank with a suspended EA is considered to be returned to Read mode even
though some or all of the data in the bank may be in an invalid state and thus not useful if read.
In EA mode the flash memory array data in a bank is stable but undefined, and effectively unavailable for read access from the host
system. While in EA mode the bank is used by the CU in the execution of commands. Typical EA mode operations are programming
or erasing of data in the flash array. All other banks are available for read access while the one bank is in EA mode. This ability to
read from one bank while another bank is used in the execution of a command is called Simultaneous Read and Write (SRW) and
allows for continued operation of the system via the reading of data or execution of code from other banks while one bank is
programming or erasing data as a relatively long time frame background task.
In ASO mode, one of the overlay address spaces are overlaid in a bank (entered). That bank is in ASO mode and no other bank may
be in EA or ASO mode. All EA activity must be completed before entering any ASO mode. A command for entering an EA or ASO
mode while another bank is in EA or ASO mode will be ignored.
es
ig
n
While an ASO mode is active (entered) in a bank, a read for flash array data to any other bank is allowed. ASO mode selects a
specific sector for the overlaid address space. Other sectors in the ASO bank still provide flash array data and may be read during
ASO mode.
ew
D
The ASOs are functionally tied to the lowest address bank. The commands used to overlay (enter) these areas must select a sector
address within the lowest address bank.
rN
While SSR Lock, SSR, or Configuration Register is overlaid only the SSR Lock, SSR, or Configuration Register respectively may be
programmed in the overlaid sector. While any of these ASO areas are being programmed the ASO bank switches to EA mode. The
ID/CFI and factory portion of the SSR ASO is not customer programmable.
7.1
om
m
en
de
d
fo
The address nomenclature used in this document is a shorthand form that shows addresses are formed from a concatenation of
high order bits, sufficient to select a Sector Address (SA), with low order bits to select a location within the sector. When in Read
mode and reading from the flash array the entire address is used to select a specific word for asynchronous read or the starting word
address of a burst read. When writing a command, the address bits between SA and the command specified least significant bits
must be Zero to allow for future extension of an overlay address map.
Data Address & Quantity Nomenclature
A Bit is a single One or Zero data value. A Byte is a group of 8 bits aligned on an 8 bit address boundary. A Word is a group of 16
bits aligned on a 16 bit address boundary. A Kbyte (KB) is 1024 Bytes (not 1000 Bytes).
N
ot
R
ec
Throughout this document quantities of data are generally expressed in terms of bytes. Example: most sectors have 128 Kbytes
of data and is written as 128 Kbytes or 128 KB. Addresses are also expressed in byte units. A 128 Kbyte sector has an address
range from 00000h to 1FFFFh Byte locations. Byte units are used because most host systems and software for these systems use
byte resolution addresses. Software & hardware developers most often calculate code and data sizes in terms of bytes, so this is
more familiar terminology than describing data sizes in bits or words. In general, data units will not be abbreviated if possible so that
full unit names of Byte, Word, or bit are used. However, there may be cases where capital B is used for byte units and lower case b
is used for bit units, in situations where space is limited such as in table column headers.
In some cases data quantities will also be expressed in word or bit units in addition to the quantity shown in bytes. This may be done
as an aid to readers familiar with prior device generation documentation which often provided only word or bit unit values. Word units
may also be used to emphasize that, in the memory devices described in this documentation, data is always exchanged with the
host system in word units. Each bus cycle transfer of read or write data on the host system bus is a transfer 16 bits of data. A read
bus cycle is always a 16 bit wide transfer of data to the host system whether the host system chooses to look at all the bits or not. A
write bus cycle is always a transfer of 16 bits to the memory device and the device will store all 16 bits to a register. In the case of a
program operation all 16 bits of each word to be programmed will be stored in the flash array.
Because data is always transferred in word units, the memory devices being discussed use only the address signals from the
system necessary to select words. Most host systems use address line A0 to select bytes and a1 to select words. Flash memories
with word wide data paths have traditionally started their address signal numbering with A0 being the selector for words because a
byte select input is not needed. So, system address a[max] to a1 are connected to flash A[max] to A0.
In prior generation flash documentation, address values used in commands to the flash were documented from the viewpoint of the
flash device - the bit pattern appearing on flash address inputs A10 to A0. However, most software is written with addresses
expressed in bytes. This means the address patterns shown in flash command tables have traditionally been shifted by one bit to
Document Number: 002-01101 Rev. *I
Page 11 of 77
S29WS512R
S29WS256R, S29WS128R
express them as byte address values in flash control programs. Example: a prior generation flash data sheet would show a
command write of data value xxA0h to address 555h; this is an address pattern of 10101010101b on flash address inputs A10 to A0;
but software would define this as a byte address value of AAAh since the least significant address bit is not used by the flash); which
is 101010101010b on system address bus a11 to a0. Because system a11 to a1 is connected to flash A10 to A0 the flash word
address of 555h and the system byte address of AAAh provides the same bit pattern on the same address inputs. Because all
address values are being documented as system byte addresses, that are more familiar to software writers, the command tables
have addresses that are shifted from those shown in prior generation devices.
7.2
Flash Memory Array
Table 7.1 System Versus Flash View of Address
a10
1
0
Binary Pattern
a7
a6
1
0
1
0
A
Flash Word Address Hex
a4
a3
1
0
1
A
5
A10
a5
A8
A7
A6
0
0
a1
A
5
A9
a0
a2
1
5
A5
A4
A3
A2
A1
A0
N
ot
R
ec
om
m
en
de
d
fo
rN
Flash Address Signals
a8
D
System Byte Address Hex
a9
es
a11
ew
System Address Signals
ig
n
The Non-Volatile Flash Memory Array is organized as shown in the following tables. Devices have either all uniform size sectors or
four smaller sectors at either the top or bottom of the device.
Document Number: 002-01101 Rev. *I
Page 12 of 77
S29WS512R
S29WS256R, S29WS128R
Table 7.2 S29WS512R Sector and Memory Address Map (Bottom Boot)
32
0
004000h–007FFFh
008000h–00FFFFh
SA002
008000h–00BFFFh
010000h–017FFFh
SA003
00C000h–00FFFFh
018000h–01FFFFh
SA004
010000h–01FFFFh
020000h–03FFFFh
SA034
1F0000h–1FFFFFh
3E0000h–3FFFFFh
1
SA035–SA066
200000h–3FFFFFh
400000h–7FFFFFh
2
SA067–SA098
3
SA097–SA130
4
SA131–SA162
5
SA163–SA194
6
SA195–SA226
SA291–SA322
10
SA323–SA354
11
SA355–SA386
12
SA387–SA418
es
1000000h–11FFFFFh
9
D
SA259–SA290
ew
SA227–SA258
8
Sector Starting
Address to Sector
Ending Address
2000000h–23FFFFFh
… … … … …
rN
7
Notes
ig
n
…
SA001
… … … … … …
000000h–007FFFh
…
000000h–003FFFh
… … … … … …
128
Address Range (byte)
SA000
13
SA419–SA450
14
SA451–SA482
de
480
128
Address Range
(word)
1C00000h–1DFFFFFh
3800000h–3BFFFFFh
15
SA483–SA514
1E00000F–1FFFFFFh
3C00000F–3FFFFFFh
om
m
en
31
Sector
Range
fo
32
32
Bank
d
4
Sector
Size
(Kbyte)
… … … … …
Sector
Count
…
Bank Size
(Mbit)
N
ot
R
ec
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 13 of 77
S29WS512R
S29WS256R, S29WS128R
Address
Range (byte)
0
SA000–SA031
000000h–1FFFFFh
000000h–3FFFFFh
1
SA032–SA063
200000h–3FFFFFh
400000h–7FFFFFh
2
SA064–SA095
3
SA096–SA127
4
SA128–SA159
5
SA160–SA191
6
SA192–SA223
7
SA224–SA255
… … … … … …
8
SA256–SA287
1000000h–11FFFFFh
2000000h–23FFFFFh
9
SA288–SA319
10
SA320–SA351
32
15
32
ig
n
3C00000h–3C1FFFF
SA510
1FE0000h–1FEFFFFh
3FC0000h–3FDFFFFh
SA511
1FF0000h–1FF3FFFh
3FE0000h–3FE7FFFh
SA512
1FF4000h–1FF7FFFh
3FE8000h–3FEFFFFh
SA513
1FF8000h–1FFBFFFh
3FF0000h–3FF7FFFh
SA514
1FFC000h–1FFFFFFh
3FF8000h–3FFFFFFh
Sector Starting
Address –
Sector Ending
Address
N
ot
R
ec
om
m
en
4
3800000h–3BFFFFFh
fo
128
es
1E00000h–1E0FFFF
D
1C00000h–1DFFFFFh
SA480
ew
SA448–SA479
SA384–SA415
Sector Starting
Address –
Sector Ending
Address
…
SA416–SA447
14
SA352–SA383
12
Notes
rN
13
11
… … … … …
Address
Range (word)
… … … … …
Sector
Range
d
31
128
Bank
…
480
Sector Size
(Kbyte)
de
32
Sector
Count
…
Bank
Size
(Mbit)
… … … … … …
Table 7.3 S29WS512R Sector and Memory Address Map (Top Boot)
Document Number: 002-01101 Rev. *I
Page 14 of 77
S29WS512R
S29WS256R, S29WS128R
Sector
Range
Address
Range (word)
Address
Range (byte)
0
SA000–SA031
000000h–1FFFFFh
000000h–3FFFFFh
1
SA032–SA063
200000h–3FFFFFh
400000h–7FFFFFh
2
SA064–SA095
3
SA096–SA127
4
SA128–SA159
5
SA160–SA191
6
SA192–SA223
7
SA224–SA255
… … … … … …
8
SA256–SA287
1000000h–11FFFFFh
2000000h–23FFFFFh
9
SA288–SA319
Notes
SA448–SA479
1C00000h–1DFFFFFh
3800000h–3BFFFFFh
15
SA480–SA511
1E00000h–1FFFFFFh
3C00000h–3FFFFFFh
12
SA384–SA415
D
SA352–SA383
ig
n
SA416–SA447
14
SA320–SA351
11
Sector Starting
Address –
Sector Ending
Address
es
13
10
… … … … …
128
Bank
ew
512
Sector Size
(Kbyte)
rN
32
Sector
Count
… … … … …
Bank
Size
(Mbit)
… … … … … …
Table 7.4 S29WS512R Sector and Memory Address Map (Uniform Sectors)
N
ot
R
ec
om
m
en
de
d
fo
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 15 of 77
S29WS512R
S29WS256R, S29WS128R
Table 7.5 S29WS256R Sector and Memory Address Map (Bottom Boot)
0
SA000
000000h–003FFFh
000000h–007FFFh
SA001
004000h–007FFFh
008000h–00FFFFh
SA002
008000h–00BFFFh
010000h–017FFFh
SA003
00C000h–00FFFFh
018000h–01FFFFh
SA004
010000h–01FFFFh
020000h–03FFFFh
SA018
0F0000h–0FFFFFh
170000h–1FFFFFh
SA019–SA034
100000h–1FFFFFh
200000h–3FFFFFh
2
SA035–SA050
3
SA051–SA066
4
SA067–SA082
5
SA083–SA098
6
SA099–SA114
… … … … … …
SA147–SA162
10
SA163–SA178
11
SA179–SA194
12
SA195–SA210
SA211–SA226
14
SA227–SA242
15
SA243–SA258
1000000h–11FFFFFh
fo
… … … … …
13
es
800000h–8FFFFFh
9
D
SA131–SA146
ew
SA115–SA130
8
Sector Starting
Address –
Sector Ending Address
rN
7
ig
n
…
Notes
1
d
128
Address
Range (byte)
… … … … … …
240
128
Address
Range (word)
1C00000h–1DFFFFFh
F00000h–FFFFFFh
1E00000h–1FFFFFFh
E00000h–EFFFFFh
om
m
en
15
Sector
Range
…
32
16
16
Bank
… … … … …
4
Sector Size
(Kbyte)
de
Sector
Count
…
Bank
Size
(Mbit)
N
ot
R
ec
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 16 of 77
S29WS512R
S29WS256R, S29WS128R
Table 7.6 S29WS256R Sector and Memory Address Map (Top Boot)
Address
Range (byte)
0
SA000–SA015
000000h–0FFFFFh
000000h–1FFFFFh
1
SA016–SA031
100000h–1FFFFFh
200000h–3FFFFFh
2
SA032–SA047
3
SA048–SA063
4
SA064–SA079
5
SA080–SA095
SA112–SA127
… … … … … …
8
SA128–SA143
800000h–8FFFFFh
1000000h–11FFFFFh
… … … … …
9
SA144–SA159
10
SA160–SA175
11
SA176–SA191
12
SA192–SA207
13
SA208–SA223
14
SA224–SA239
E00000h–EFFFFFh
1C00000h–1DFFFFFh
SA240
F00000h–F0FFFFh
1E00000h–1E1FFFFh
es
D
ew
…
FE0000h–FEFFFFh
SA255
FF0000h–FF3FFFh
1FE0000h–1FE7FFFh
SA256
FF4000h–FF7FFFh
1FE8000h–1FEFFFFh
SA257
FF8000h–FFBFFFh
1FF0000h–1FF7FFFh
FFC000h–FFFFFFh
1FF8000h–1FFFFFFh
fo
SA254
om
m
en
32
Sector Starting
Address –
Sector Ending Address
rN
128
SA258
ig
n
SA096–SA111
7
15
4
Notes
6
d
15
Address
Range (word)
… … … … … …
16
Sector
Range
… … … … …
128
Bank
…
240
Sector Size
(Kbyte)
de
Sector
Count
…
Bank
Size
(Mbit)
1FC0000h–1FDFFFFh
N
ot
R
ec
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 17 of 77
S29WS512R
S29WS256R, S29WS128R
Table 7.7 S29WS256R Sector and Memory Address Map (Uniform Boot)
Sector
Range
Address
Range (word)
Address
Range (byte)
0
SA000–SA015
000000h–0FFFFFh
000000h–1FFFFFh
1
SA016–SA031
100000h–1FFFFFh
200000h–3FFFFFh
2
SA032–SA047
3
SA048–SA063
4
SA064–SA079
5
SA080–SA095
SA112–SA127
8
SA128–SA143
800000h–8FFFFFh
1000000h–11FFFFFh
9
SA144–SA159
10
SA160–SA175
11
SA176–SA191
12
SA192–SA207
SA208–SA223
14
SA224–SA239
E00000h–EFFFFFh
1C00000h–1DFFFFFh
15
SA240–SA255
F00000h–FFFFFFh
1E00000h–1FFFFFFh
ew
D
es
13
Sector Starting
Address –
Sector Ending Address
ig
n
SA096–SA111
7
… … … … …
6
… … … … … …
Notes
rN
128
Bank
N
ot
R
ec
om
m
en
de
d
fo
256
Sector Size
(Kbyte)
… … … … … …
16
Sector
Count
… … … … …
Bank
Size
(Mbit)
Document Number: 002-01101 Rev. *I
Page 18 of 77
S29WS512R
S29WS256R, S29WS128R
Table 7.8 S29WS128R Sector and Memory Address Map (Bottom Boot)
SA000
000000h–003FFFh
000000h–007FFFh
SA001
004000h–007FFFh
008000h–00FFFFh
SA002
008000h–00BFFFh
010000h–017FFFh
SA003
00C000h–00FFFFh
018000h–01FFFFh
SA004
010000h–01FFFFh
020000h–03FFFFh
128
070000h–07FFFFh
0E0000h–FFFFFh
080000h–0FFFFFh
100000h–1FFFFFh
2
SA019–SA026
3
SA027–SA034
4
SA035–SA042
5
SA043–SA050
6
SA051–SA058
7
… … … … … …
SA083–SA090
11
SA091–SA098
12
SA099–SA106
SA107–SA114
14
SA115–SA122
15
SA123–SA130
800000h–8FFFFFh
fo
700000h–77FFFFh
780000h–7FFFFFh
… … … … …
13
es
10
D
400000h–47FFFFh
SA075–SA082
ew
SA067–SA074
9
Sector Starting
Address –
Sector Ending
Address
rN
SA059–SA066
8
ig
n
SA010
SA011–SA018
d
128
Notes
1
… … … … … …
120
Address
Range (byte)
…
7
Address
Range (word)
…
0
Sector
Range
…
32
8
8
Bank
… … … … …
4
Sector Size
(Kbyte)
de
Sector
Count
om
m
en
Bank
Size
(Mbit)
E00000h–EFFFFFh
F00000h–FFFFFFh
N
ot
R
ec
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 19 of 77
S29WS512R
S29WS256R, S29WS128R
Address
Range (byte)
0
SA000–SA007
000000h–07FFFFh
000000h–0FFFFFh
1
SA008–SA015
080000h–0FFFFFh
100000h–1FFFFFh
2
SA016–SA023
3
SA024–SA031
4
SA032–SA039
5
SA040–SA047
6
SA048–SA055
7
SA056–SA063
… … … … … …
8
SA064–SA071
400000h–47FFFFh
800000h–8FFFFFh
… … … … …
SA072–SA079
SA080–SA087
11
SA088–SA095
12
SA096–SA103
SA104–SA111
14
SA112–SA119
700000h–77FFFFh
E00000h–EFFFFFh
SA120
780000h–78FFFFh
F00000h–F1FFFFh
15
32
D
ew
7E0000h–7EFFFFh
SA127
7F0000h–7F3FFFh
FE0000h–FE7FFFh
SA128
7F4000h–7F7FFFh
FE8000h–FEFFFFh
SA129
7F8000h–7FBFFFh
FF0000h–FF7FFFh
SA130
…
SA126
om
m
en
4
rN
128
Sector Starting
Address –
Sector Ending
Address
es
13
ig
n
9
10
Notes
fo
7
Address
Range (word)
d
8
Sector
Range
… … … … …
128
Bank
…
120
Sector Size
(Kbyte)
de
Sector
Count
…
Bank
Size
(Mbit)
… … … … … …
Table 7.9 S29WS128R Sector and Memory Address Map (Top Boot)
7FC000h–7FFFFFh
FC0000h–FDFFFFh
FF8000h–FFFFFFh
N
ot
R
ec
Note
All tables have been condensed to show sector-related information for an entire device on a single page. Sectors and their address ranges that are not explicitly listed
(such as SA008–SA009) have sector starting and ending addresses that form the same pattern as all other sectors of that size. For example, all 128 KB sectors have the
byte address pattern x000000h–x1FFFFh.
Document Number: 002-01101 Rev. *I
Page 20 of 77
S29WS512R
S29WS256R, S29WS128R
7.3
Address
Range (word)
Address
Range (byte)
0
SA000–SA007
000000h–07FFFFh
000000h–0FFFFFh
1
SA008–SA015
080000h–0FFFFFh
100000h–1FFFFFh
2
SA016–SA023
3
SA024–SA031
4
SA032–SA039
5
SA040–SA047
6
SA048–SA055
7
SA056–SA063
… … … … … …
8
SA064–SA071
400000h–47FFFFh
800000h–8FFFFFh
9
SA072–SA079
12
SA096–SA103
ig
n
SA088–SA095
Sector Starting
Address –
Sector Ending
Address
es
SA080–SA087
11
Notes
D
10
… … … … …
128
Sector
Range
13
SA104–SA111
14
SA112–SA119
700000h–77FFFFh
E00000h–EFFFFFh
15
SA120–SA127
780000h–7FFFFFh
F00000h–FFFFFFh
ew
128
Bank
rN
Sector Size
(Kbyte)
fo
16
Sector
Count
… … … … …
Bank
Size
(Mbit)
… … … … … …
Table 7.10 S29WS128R Sector and Memory Address Map (Uniform Boot)
Device ID and CFI (ID-CFI)
ot
R
ec
om
m
en
de
d
There are two traditional methods for systems to identify the type of flash memory installed in the system. One has been traditionally
been called Autoselect and is now referred to as Device Identification (ID). A command is used to enable an address space overlay
where up to 16 word locations can be read to get JEDEC manufacturer identification (ID), device ID, and some configuration and
protection status information from the flash memory. The system can use the manufacturer and device IDs to select the appropriate
driver software to use with the flash device. The other method is called Common Flash Interface (CFI). It also uses a command to
enable an address space overlay where an extendable table of standard information about how the flash memory is organized and
behaves can be read. With this method the driver software does not have to be written with the specifics of each possible memory
device in mind. Instead the driver software is written in a more general way to handle many different devices but adjusts the driver
behavior based on the information in the CFI table stored in the flash memory. Traditionally these two address spaces have used
separate commands and were separate overlays. However, the mapping of these two address spaces are now non-overlapping and
so can be combined in to a single address space and appear together in a single overlay. Either of the traditional commands used to
access enter the Autoselect (ID) or CFI overlay will cause the now combined ID-CFI address map to appear.
N
A write at any sector address, in bank zero, having the least significant byte address value of AAh, with xx98h or xx90h data,
switches the addressed sector to an overlay of the ID-CFI address map. These are called ID-CFI Enter commands and are only valid
when written to the specified bank when it is in read mode. The ID-CFI address map appears within, and replaces flash array data
of, the selected sector address range. The ID-CFI enter commands use the same address and data values used on previous
generation memories to access the JEDEC Manufacturer ID (Autoselect) and Common Flash Interface (CFI) information,
respectively. While the ID-CFI address space is overlaid, any write with xxF0h data to the device will exit the overlay and return the
selected sector to showing flash memory array data. Thus, the ID-CFI address space and commands are backward compatible with
standard memory discovery algorithms.
Within the ID-CFI address map there are two subsections:
Table 7.11 ID-CFI Address Map Overview
Byte Address
Description
Size Allocated (Bytes)
Read/Write
(SA) + 00000h to 0001Fh
JEDEC ID
(traditional Autoselect values)
32
Read Only
(SA) + 00020h to CEh
CFI data structure
174
Read Only
For the complete address map in Device ID and Common Flash Memory Interface Address Map on page 65.
Document Number: 002-01101 Rev. *I
Page 21 of 77
S29WS512R
S29WS256R, S29WS128R
7.3.1
JEDEC Device ID
The Joint Electron Device Engineering Council (JEDEC) standard JEP106x defines a method for reading the manufacturer ID and
device ID of a compliant memory. This information is primarily intended for programming equipment to automatically match a device
with the corresponding programming algorithm.
The JEDEC ID information is structured to work with any memory data bus width (e.g. x8, x16, x32). The Query addressing is always
relative to the device word (largest supported) with data always presented on the lowest order byte (D7 - D0 outputs). Because the
data bus is word wide each code byte is located in the lower half of each word location and the high order byte is always zero.
7.3.2
Common Flash Memory Interface
ig
n
The Common Flash Interface (CFI) specification defines a standardized data structure that may be read from a flash memory
device, which allows vendor-specified software algorithms to be used for entire families of devices. The data structure contains
information for system configuration such as various electrical and timing parameters, and special functions supported by the
device. Software support can then be device-independent, JEDEC ID-independent, and forward-and-backward-compatible for the
specified flash device families.
D
es
The system can read CFI information at the addresses within the selected sector as shown in Section 12.2, Device ID and Common
Flash Memory Interface Address Map on page 65.
rN
ew
Like the JEDEC Device ID information, CFI information is structured to work with any memory data bus width (e.g. x8, x16, x32). The
Query addressing is always relative to the device word (largest supported) with data always presented on the lowest order byte (D7
- D0 outputs). Because the data bus is word wide each code byte is located in the lower half of each word location and the high order
byte is always zero.
Secure Silicon Region
de
7.3.3
d
fo
For further information, please refer to the Spansion CFI Version 1.4 (or later) Specification and the Spansion CFI Publication 100
(see also JEDEC publications JEP137-A and JESD68.01). Please contact JEDEC (http://www.jedec.org) for their standards.
om
m
en
The Secure Silicon Region (SSR) provides an extra flash memory area that can be programmed once and permanently protected
from further changes. The SSR is 512 bytes in length. It consists of 256 bytes for factory data and 256 bytes for customer-secured
data.
The SSR is overlaid in the sector address specified by the SSR enter command.
ec
Table 7.12 Secure Silicon Region
R
Byte Address Range
(SA) + 0000h to 00FFh
7.3.4
Size
Factory
256 Bytes
Customer
256 Bytes
N
ot
(SA) + 0100h to 01FFh
Secure Silicon Region
Configuration Register
The Configuration Register Enter command is only valid when written to a bank that is in Read mode. The configuration register
mode address map appears within, and replaces flash array data of, the selected sector address range. The meaning of the
configuration register bits is defined in Configuration Register on page 29. In configuration register mode a write of 00F0h to any
address will return the sector to Standard Read mode.
Document Number: 002-01101 Rev. *I
Page 22 of 77
S29WS512R
S29WS256R, S29WS128R
8. Device Operations
This section describes the read and write bus operations, program, erase, simultaneous read/write, handshaking, and reset features
of the flash devices.
The address space of the Flash Memory Array is divided into banks. There are three operation modes for each bank:
Read Mode
Embedded Algorithm (EA) Mode
Address Space Overlay (ASO) Mode
Each bank of the device can be in any operation mode but, only one bank can be in EA or ASO mode at any one time.
ig
n
In Read Mode a Flash Memory Array bank may be read by simply selecting the memory, supplying the address, and taking read
data when it is ready. This is done by asynchronous or burst accesses from the host system bus. The CU puts all banks in Read
mode during Power-on, a Hardware Reset, after a Command Reset, or after a bank is returned to Read mode from EA mode.
es
During a burst read access valid read data is indicated by the RDY signal being High. When RDY is Low burst read data is not valid
and wait states must be added. The use of the RDY signal to indicate when valid data is transferred on the system data bus is called
handshaking or flow control.
rN
ew
D
EA and ASO modes are initiated by writing specific address and data patterns into command registers (see Table 12.1 on page 63).
The command registers do not occupy any memory locations; they are loaded by write bus cycles with the address and data
information needed to execute a command. The contents of the registers serve as input to the Control Unit (CU) and the CU dictates
the function of the device. Writing incorrect address and data values or writing them in an improper sequence may place the device
in an unknown state, in which case the system must write the reset command to return all banks to Read mode.
om
m
en
de
d
fo
The flash memory array data in a bank that is in EA mode, is stable but undefined, and effectively unavailable for read access from
the host system. While in EA mode the bank is used by the CU in the execution of commands. Typical command operations are
programming or erasing of data in the flash array. All other banks are available for read access while the one bank is in EA mode.
This ability to read from one bank while another bank is used in the execution of a command is called Simultaneous Read and Write
(SRW) and allows for continued operation of the system via the reading of data or code from other banks while one bank is
programming or erasing data as a relatively long time frame background task. Only a status register read command can be used in
a bank in EA mode to retrieve the EA status.
ec
While any one of the overlay address spaces are overlaid in a bank (entered) that bank is in ASO mode and no other bank may be
in EA or ASO mode. All EA activity must be completed or suspended before entering any ASO mode. A command for entering an EA
or ASO mode while another bank is in EA or ASO mode will be ignored.
ot
R
While an ASO mode is active (entered) in a bank, a read for flash array data to any other bank is allowed. ASO mode selects a
specific sector for the overlaid address space. Other sectors in the ASO bank still provide flash array data and may be read during
ASO mode.
N
While SSR Lock, SSR, or Configuration Register is overlaid only the SSR Lock, SSR, or Configuration Register respectively may be
programmed in the overlaid sector. While any of these ASO areas are being programmed the ASO bank switches to EA mode. The
ID/CFI and factory portion of the SSR ASO is not customer programmable. An attempt to program in these areas will fail.
Document Number: 002-01101 Rev. *I
Page 23 of 77
S29WS512R
S29WS256R, S29WS128R
8.1
Device Bus Operations
The Device Bus Operations table describes the required state of each control pin for any particular bus operation. The Control Unit
(CU) is set to the idle state for reading array data upon device power-up, or after a hardware reset. This ensures that no spurious
alteration of the memory content occurs during the power transition.
Table 8.1 Device Bus Operations
Operation
CE#
OE#
WE#
CLK
AVD#
Addresses
Data
RDY
RESET#
Addr In
High-Z
H
H
Asynchronous Operations
L
H
H
X
Asynchronous Read AVD# Steady State
L
L
H
X
L
Addr In
Output
Valid
H
H
Asynchronous Read - Data on bus
L
L
H
X
H
X
Output
Valid
H
H
Asynchronous Write (AVD# Latched
Addresses)
L
H
L
X
Addr In
X
Asynchronous Write (WE# Latched Data)
L
H
H
X
Input
Valid
Standby (CE#)
H
X
X
X
X
X
Hardware Reset
X
X
X
X
X
X
High-Z
High-Z
H
High-Z
High-Z
Addr In
Output
Invalid
X
H
L
H
H
X
Output
Valid
H
H
Terminate current Burst read cycle
H
X
X
Terminate current Burst read cycle
through RESET#
X
X
X
High-Z
High-Z
H
X
X
X
X
X
X
High-Z
High-Z
L
Terminate current Burst read cycle
and start new Burst read cycle
L
H
H
L
Addr In
Output
Invalid
X
H
= rising edge,
ew
= high to low.
Asynchronous Read
N
8.2
ot
R
ec
Legend
L = Logic 0, H = Logic 1, X = can be either VIL or VIH.,
rN
fo
L
d
Advance Burst read to next address
L
de
H
om
m
en
H
es
H
Synchronous Operations
L
H
H
Non-Operations
Latch Starting Burst Address by CLK
H
D
X
ig
n
Asynchronous Read - Addresses Latched
To read data from the memory array, the system must first assert a valid address while driving AVD# and CE# to VIL. WE# must
remain at VIH. CLK may toggle or remain at VIL or VIH. The rising edge of AVD# will latch the address. The data appears on DQ15–
DQ0 when CE# is Low, OE# is Low, AVD# is High, and the asynchronous access times are satisfied.
In order to use Asynchronous Read Mode the configuration register bit 15 must be set to 1.
Address access time (tACC) is equal to the delay from stable addresses to valid output data. The chip enable access time (tCE) is the
delay from stable CE# to valid data at the outputs. See 11.9.2, AC Characteristics–Asynchronous Read on page 53.
Document Number: 002-01101 Rev. *I
Page 24 of 77
S29WS512R
S29WS256R, S29WS128R
8.3
Page Mode Read
The device is capable of fast page mode read. This mode provides random read access speed for locations within a page. Address
bits Amax–A3 select a 8-word page, and address bits A2 – A0 select a specific word within that page. This is an asynchronous
operation with the microprocessor supplying the specific word location.
The random or initial page access is tACC or tCE and subsequent page read accesses (as long as the locations specified falls within
that page) is equivalent to tPACC. When CE# is deasserted (=VIH), the re-assertion of CE# for subsequent access has access time of
tACC or tCE. See Figure 11.13 on page 55.
Table 8.2 Word Select
A2
A1
A0
0
0
0
0
0
1
0
1
0
Word 5
1
0
Word 6
1
1
Word 7
1
1
1
0
es
1
0
1
D
0
1
ew
Word 3
Word 4
ig
n
Word 1
Word 2
0
1
rN
8.4
Word
Word 0
Synchronous (Burst) Read Mode and Configuration Register
fo
The device is capable of continuous sequential burst operation and linear burst operation of a preset length.
d
In order to use Synchronous (Burst) Read Mode the configuration register bit 15 must be set to 0.
om
m
en
de
Prior to entering burst mode, the system should determine how many wait states are needed for the initial word of each burst access
(see table below), what mode of burst operation is desired, how the RDY signal transitions with valid data, and output drive strength.
The system would then write the configuration register command sequence. See Configuration Register on page 29 for further
details.
R
ec
When the appropriate number of initial Wait States have occurred, data is output after the rising edge of the CLK. Subsequent
words are output tBACC after the rising edge of each successive clock cycle, which automatically increments the internal address
counter. RDY indicates the initial latency and any subsequent wait states. The device has 3 burst options: Continuous Burst, 16Word Burst with Wrap Around, and 8-Word Burst with Wrap Around. If the device is operated in Continuous Burst mode or 16-word
Burst mode,
N
ot
The device has 3 burst options: Continuous Burst, 16-Word Burst with Wrap Around, and 8-Word Burst with Wrap Around. If the
device is operated in Continuous Burst mode or 16-word Burst mode, 0 to 7 wait states may be inserted at 8 word boundary
crossings. Wait states are inserted between the last word below the boundary and the first word above the boundary. The number of
wait states inserted are based on the initial address and the initial number of wait states. See the Address Latency tables for the
number of wait states inserted.
The device also has a fixed internal address boundary that occurs every 128 words (256 Bytes). When a 128 word boundary is
crossed, 0 to 2 additional wait states are inserted. The 128-word boundary can only be crossed when the device is operated in
continuous burst mode. See Table 8.1 on page 24 for the number of wait states inserted at the 128-word boundary.
The following table shows the number of initial wait states needed at different burst frequencies.
Document Number: 002-01101 Rev. *I
Page 25 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.3 Initial Wait States vs. Frequency
Frequency
Wait State Requirement
Frequency 27 MHz
3
27 MHz < Frequency 40 MHz
4
40 MHz < Frequency 54 MHz
5
54 MHz < Frequency 66 MHz
6
66 MHz < Frequency 79 MHz
7
79 MHz < Frequency 95 MHz
8
95 MHz < Frequency 104 MHz
9
104 MHz < Frequency 120 MHz
10
ig
n
The following tables show the address related latency (note that ws = wait state).
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
D1
D2
D3
D4
1
D1
D2
D3
D4
D5
2
D2
D3
D4
D5
D6
D7
D5
D6
D6
D7
5
D5
D6
D7
6
D6
D7
7
D7
D6
de
D6
D7
D7
1 ws
D7
fo
D4
D5
d
D3
D4
8 to 13 wait
states
2 ws
D8
D8
D8
3 ws
D8
4 ws
D8
5 ws
D8
6 ws
D8
7 ws
om
m
en
3
D5
rN
D0
4
D
Initial Wait
0
ew
Word
es
Table 8.4 Address Latency for 8 to13 Wait States
D8
Table 8.5 Address Latency for 7 Wait States
Word
Initial Wait
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
D0
D1
1
D1
D2
2
D2
D3
4
D4
D5
6
N
5
D3
7
D7
D6
D4
D5
D6
D7
D4
D5
D6
D7
0 ws
D4
D5
D6
D7
D4
D5
D6
D7
D5
D6
D7
D6
D7
R
7 wait
states
D3
D3
ot
3
D2
ec
0
1 ws
D8
D8
2 ws
D8
3 ws
D8
4 ws
D7
D8
D8
5 ws
D8
6 ws
D8
Table 8.6 Address Latency for 6 Wait States
Word
Initial Wait
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
0
D0
D1
D2
D3
D4
D5
D6
1
D1
D2
D3
D4
D5
D6
D7
2
D2
D3
D4
D5
D6
D7
D7
3
D3
D4
D5
D6
D4
D5
D6
D7
5
D5
D6
D7
6
D6
D7
7
D7
4
6 wait
states
Document Number: 002-01101 Rev. *I
1 ws
3 ws
5 ws
0 ws
0 ws
2 ws
4 ws
D7
D8
D8
D8
D8
D8
D8
D8
D8
Page 26 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.7 Address Latency for 5 Wait States
Word
Initial Wait
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
0
D0
D1
D2
D3
D4
D5
D6
D7
D8
1
D1
D2
D3
D4
D5
D6
D7
0 ws
D8
D2
D3
D4
D5
D6
D7
D3
D4
D5
D6
D7
D7
2
3
D4
D5
D6
5
D5
D6
D7
6
D6
D7
7
D7
0 ws
1 ws
D8
3 ws
D8
D8
D3
D4
D5
1
D1
D2
D3
D4
D5
D6
2
D2
D3
D4
D5
D6
D7
D7
D4
D5
D6
D5
D6
D7
5
D5
D6
D7
6
D6
D7
7
D7
0 ws
D8
0 ws
D8
fo
D8
D8
D8
de
d
D1
D2
2
D2
D3
D2
D3
D4
D5
D6
D7
D3
D4
D5
D6
D7
0 ws
D4
D5
D6
D7
D7
D3
D6
D5
D4
D6
D7
5
D5
D6
D7
6
D6
N
ot
D5
D4
R
ec
1
7
D8
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
D1
3 wait
states
D8
D8
1 ws
om
m
en
Initial Wait
D0
3
0 ws
0 ws
3 ws
0
4
D7
D7
2 ws
Table 8.9 Address Latency for 3 Wait States
Word
rN
D3
D4
4 wait
states
D6
ew
D2
es
Wait States Inserted at 8 Word (16 byte) Boundaries After Initial Wait States
D1
D
Initial Wait
D0
3
D8
4 ws
0
4
D8
2 ws
Table 8.8 Address Latency for 4 Wait States
Word
D8
0 ws
ig
n
4
5 wait
states
0 ws
0 ws
0 ws
D7
D7
0 ws
D8
D8
D8
D8
D8
D8
1 ws
D8
2 ws
D8
Table 8.10 256 Byte Boundary Crossing Latency - Additional Wait States
Initial Wait States
Boundary Crossing Latency
3
4
5
6
0 ws
7
8
9
1 ws
10 to 13
2 ws
Document Number: 002-01101 Rev. *I
Page 27 of 77
S29WS512R
S29WS256R, S29WS128R
8.4.1
Continuous Burst
The device continues to output sequential burst data from the memory array, wrapping around to address 0000000h after it reaches
the highest addressable memory location, until the system drives CE# high, RESET# low, or AVD# low in conjunction with a new
address. See Table 8.1, Device Bus Operations on page 24.
If the host system crosses a bank boundary while reading in burst mode, and the subsequent bank is not programming or erasing,
an address boundary crossing latency is required. If the host system crosses the bank boundary while the subsequent bank is
programming or erasing, continuous burst halts (RDY will be disabled and data will continue to be driven).
8.4.2
8-, 16-Word Linear Burst with Wrap Around
ig
n
Table 8.11 Burst Address Groups
Group Size
16 bytes
Group Byte Address Ranges
0-Fh, 10-1Fh, 20-2Fh,...
16-word
32 bytes
0-1Fh, 20-3Fh, 30-4Fh,...
D
es
Mode
8-word
rN
ew
The remaining two modes are fixed length linear burst with wrap around, in which a fixed number of words are read from consecutive
addresses. In each of these modes, the burst addresses read are determined by the group within which the starting address falls.
The groups are sized according to the number of words read in a single burst sequence for a given mode (see Table 8.11).
N
ot
R
ec
om
m
en
de
d
fo
As an example: if the starting address in the 8-word mode is system byte address 3Ch, the address range to be read would be byte
address 30-3Fh, and the burst sequence would be 3C-3E-30-32-34-36-38-3Ah. The burst sequence begins with the starting address
written to the device, wraps back to the first address in the selected group, and outputs a maximum of 8 words. No additional wait
states will be required within the 8-word burst. The 8th word will continue to be driven until the burst operation is aborted (CE# goes
to VIH, a new address is latched in for a new burst operation, or a hardware reset). In a similar fashion, the 16-word Linear Wrap
modes begin their burst sequence on the starting address written to the device, and then wrap back to the first address in the
selected address group. Additional wait states could be added the first time the device crosses from one to the other group of 8
words in a 16-word burst. The number will depend on the starting address and the wait state set within the configuration register.
See Table 8.4 on page 26 to Table 8.9 on page 27. Note that in these two burst read modes the address pointer does not
cross the boundary that occurs every 128 words; thus, no address boundary crossing wait states are inserted for linear
burst with wrap.
Document Number: 002-01101 Rev. *I
Page 28 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 8.1 Synchronous Read
Load Initial Address
Address = RA
RA = Read Address
Wait Programmable
Wait State Setting
CR0.14 - CR0.11 sets initial access time
(from address latched to
valid data) from 3 to 13 clock cycles
Read Initial Data
RD = DQ[15:0]
RD = Read Data
es
ig
n
Wait X Clocks (if required):
Additional Latency Due to Starting
Address and Clock Frequency
ew
D
Read Next Data
RD = DQ[15:0]
No
End of Data?
de
d
Yes
fo
Crossing
Boundary?
(Note 1)
Yes
rN
No
om
m
en
Completed
Note
1. Required only if device is performing a Continuous Burst operation.
8.4.3
Configuration Register
N
ot
R
ec
Configuration register (CR) sets various operational parameters associated with burst mode. Upon power-up or hardware reset, the
device defaults to the idle state, and the configuration register settings are in their default state. The host system should determine
the proper settings for the configuration register, and then execute the Set Configuration Register command sequence, before
attempting burst operations. The Configuration Register can also be read using a command sequence (see Table 12.1 on page 63).
The table below describes the register settings and indicates the default state of each bit after power-on or a hardware reset. The
configuration register bits are not affected by a command reset.
Document Number: 002-01101 Rev. *I
Page 29 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.12 Configuration Register
CR BIt
CR.15
Function
Settings (Binary)
0 = Synchronous Read Mode
Device Read Mode
1 = Asynchronous Read Mode (Default)
0000 = Reserved
0001 =
3rd
0010 =
4th
0011 =
CR.14
CR.13
CR.12
..
.
Programmable
Read Wait States
..
.
13th
(Default)
1011 =
CR.11
rising CLK edge after
addresses are latched
5th
Initial data is valid on the
ig
n
1100 = Reserved
1101 = Reserved
es
1110 = Reserved
RDY Polarity
CR.9
Reserved
CR.8
RDY Timing
CR.7
Output Drive Strength
CR.6
Reserved
CR.5
Reserved
CR.4
Reserved
CR.3
Reserved
1 = RDY signal is active high (Default)
rN
0 = Reserved
1 = Reserved (Default)
fo
0 = RDY active one clock cycle before data
1 = RDY active with data (Default)
de
d
0 = Full Drive= Current Driver Strength (Default)
1 = Half Drive
om
m
en
0 = Reserved
1 = Reserved (Default)
0 = Reserved (Default)
1 = Reserved
0 = Reserved (Default)
ec
1 = Reserved
R
0 = Reserved
1 = Reserved (Default)
ot
000 = Continuous (Default)
010 = 8-Word (16-Byte) Linear Burst with wrap around
N
CR.1
ew
0 = RDY signal is active low
CR.10
CR.2
D
1111 = Reserved
Burst Length
011 = 16-Word (32-Byte) Linear Burst with wrap around
CR.0
(All other bit settings are reserved)
8.4.3.1
Device Read Mode
Configuration Register bit 15 (CR.15) controls whether read accesses via the bus interface are in asynchronous or burst mode.
Asynchronous mode is the default after power-on or hardware reset. Write accesses are always conducted with asynchronous mode
timing, independent of the read mode.
8.4.3.2
Wait States
Configuration Register bits 14 to 11 (CR.[14..11]) define the number of CLK cycles after the AVD# Low cycle that captures the initial
address until the device presents valid data on the data bus. The bits from 14 to 11 are in most to least significant order.
When the corresponding number of Wait States have occurred, data is presented on the data bus after the rising edge of the CLK.
Subsequent words are output tBACC after the rising edge of each successive clock cycle, which automatically increments the internal
address counter. Prior to setting the device into synchronous read mode, the system should set CR[14..11] according to the CLK
frequency. Appropriate settings are indicated in Table 8.3 on page 26
Document Number: 002-01101 Rev. *I
Page 30 of 77
S29WS512R
S29WS256R, S29WS128R
8.4.3.3
RDY Polarity
Configuration Register bit 10 (CR.10) controls whether the RDY signal indicates valid data when High or when Low. When this bit is
zero the RDY signal indicates data is valid when the signal is Low. When this bit is one the RDY signal indicates data is valid when
the signal is High. The default for this bit is set to one after power-on or a hardware reset.
8.4.3.4
RDY Timing
Configuration Register bit 8 (CR.8) controls whether the RDY signal indicates valid data on the same cycle that data is valid or one
cycle before data is valid. When this bit is zero, the RDY signal indicates data is valid in the same cycle the data is valid. When this
bit is one the RDY signal indicates data is valid one cycle before data is valid. The default for this bit is set to one after power-on or a
hardware reset.
8.4.3.5
Output Drive Strength
Burst Length
D
8.4.3.6
es
ig
n
Configuration Register bit 7 (CR.7) controls whether the data outputs drive with full or half strength. When this bit is zero the data
outputs drive with full strength. When this bit is one the data outputs drive with half strength. The default for this bit is cleared to zero
after power-on or a hardware reset.
Status Register
fo
8.5
rN
ew
Configuration Register bits 2 to 0 (CR.[2..0]) define the length of burst read and write accesses. The bits from 2 to 0 are in most to
least significant order. See Table 8.13 for code meaning & default value.
Table 8.13 Status Register Reset State
Device Ready
Bit.
Overall status
Bit 6
Bit 5
Erase Suspend
Status Bit
Erase Status
Bit
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Program Status
Bit
RFU
Program
Suspend
Status Bit
Sector Lock
Status Bit
Bank Status Bit
ec
Bit 7
om
m
en
de
d
The status of program and erase operations is provided by a single 16 bit status register. The status register read command is
written followed by a read of the status register for each access of the status register information. The status register can be read in
synchronous or asynchronous bus access mode. If read in synchronous (burst) mode for more than access cycle the same status
results will appear in each of the read cycles of the burst access until the burst is terminated.
ESSB
ESB
0 at Reset
0 at Reset
PSB
RFU
PSSB
SLSB
BSB
0 at Reset
0 at Reset
0 at Reset
0 at Reset
0 at Reset
ot
R
DRB
1 at Reset
N
Notes
1. Status bits 15 to 8 always return the current progress code.
2. Bit 7 reflects the device status.
3. If the device is busy, Bit 0 is used to check whether the addressed bank is busy or some other bank is busy.
4. All the other bits reflect the status of the device.
Document Number: 002-01101 Rev. *I
Page 31 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.14 Status Register - Bit 7
Bit 7
Device Ready
Bit.
Overall status
DRB
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sector Lock
Status Bit
Bank Status Bit
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
ESSB
ESB
PSB
RFU
PSSB
SLSB
BSB
Invalid
Invalid
Invalid
Invalid
Invalid
Invalid
VALID
VALID
VALID
VALID
VALID
VALID
VALID
VALID
0
Device busy
programming
or erasing
1
Device ready
ig
n
Notes
1. Bit 7 is set when there is no erase or program operation in progress in the device.
Bits 6:1 only
valid when Bit
7=1
1
Bit 6:1 only
valid when Bit
7=1
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
ESSB
ESB
PSB
RFU
X
X
X
X
X
0
No Erase in
Suspension
1
Erase in
Suspension
Bit 1
Bit 0
Sector Lock
Status Bit
Bank Status Bit
SLSB
BSB
X
X
X
X
X
X
D
Bit 2
ew
Bit 3
PSSB
fo
1
Bit 4
d
DRB
Bit 5
de
Overall status
Bit 6
X
om
m
en
Bit 7
Device Ready
Bit.
rN
Table 8.15 Status Register - Bit 6
es
2. Bits 1 through 6 are valid if and only if Bit 7 is set.
Notes
1. Upon issuing the “Erase Suspend” Command, the user must continue to read status until DRB becomes 1 before accessing another sector within the same bank.
R
Table 8.16 Status Register - Bit 5
ec
2. Cleared by “Erase Resume” Command.
Overall status
DRB
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
Sector Lock
Status Bit
Bank Status Bit
ESSB
ESB
PSB
RFU
PSSB
SLSB
BSB
X
Erase
successful
X
X
X
X
X
X
X
X
X
X
Erase Suspend
Status Bit
1
Bits 6:1 only
valid when Bit
7=1
ot
Device Ready
Bit.
Bit 6
N
Bit 7
0
1
Bit 6:1 only
valid when Bit
7=1
X
1
Erase error
Notes
1. ESB bit reflects “success” or “failure” of the most recent erase operation.
2. Cleared by “Clear Status Register” Command as well as by hardware reset.
Document Number: 002-01101 Rev. *I
Page 32 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.17 Status Register - Bit 4
Bit 7
Device Ready
Bit.
Overall status
DRB
Bit 6
Bit 5
Bit 4
Bit 2
Bit 1
Bit 0
Sector Lock
Status Bit
Bank Status Bit
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
ESSB
ESB
PSB
RFU
PSSB
SLSB
BSB
X
X
Program
successful
X
X
X
X
X
X
X
X
X
X
1
Bits 6:1 only
valid when Bit
7=1
Bit 3
0
1
Program fail
ig
n
1
Bit 6:1 only
valid when Bit
7=1
es
Notes
1. PSB bit reflects “success” or “failure” of the most recent program operation.
2. Cleared by “Clear Status Register” Command as well as by hardware reset.
Overall status
DRB
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
Sector Lock
Status Bit
Bank Status Bit
ESSB
ESB
PSB
RFU
PSSB
SLSB
BSB
X
X
X
X
X
X
X
de
om
m
en
Bits 6:1 only
valid when Bit
7=1
d
1
ew
Bit 5
rN
Device Ready
Bit.
Bit 6
fo
Bit 7
D
Table 8.18 Status Register - Bit 3
Notes
1. This Register is reserved for future use.
2. Cleared by “Clear Status Register” Command as well as by hardware reset.
DRB
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
Sector Lock
Status Bit
Bank Status Bit
ESB
PSB
RFU
PSSB
SLSB
BSB
X
X
X
X
No Program in
suspension
X
X
X
X
X
X
Program in
suspension
X
X
ESSB
R
Bit 5
ot
Overall status
Bit 6
N
Bit 7
Device Ready
Bit.
ec
Table 8.19 Status Register - Bit 2
1
Bits 6:1 only
valid when Bit
7=1
0
1
Bit 6:1 only
valid when Bit
7=1
1
Notes
1. Upon issuing the “Program Suspend” Command, the user must continue to read status until DRB becomes 1 before accessing another sector within the same bank.
2. Cleared by “Program Resume” Command.
Document Number: 002-01101 Rev. *I
Page 33 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.20 Status Register - Bit 1
Bit 7
Bit 6
Device Ready
Bit.
Overall status
DRB
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Sector Lock
Status Bit
Bank Status Bit
BSB
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
Program
Suspend
Status Bit
ESSB
ESB
PSB
RFU
PSSB
SLSB
X
X
X
X
X
Sector not
locked during
operation
X
X
X
X
X
Sector locked
error
1
0
Bits 6:1 only
valid when Bit
7=1
1
1
X
ig
n
Bit 6:1 only
valid when Bit
7=1
X
es
Notes
1. SLSB indicates that a program or erase operation failed to program or erase because the sector was locked or the operation was attempted on the protected Secure
Silicon Region.
D
2. SLSB reflects the status of the most recent program or erase operation.
3. SLSB is cleared by “Clear Status Register” or by hardware reset.
DRB
Bit 3
Erase Suspend
Status Bit
Erase Status
Bit
Program Status
Bit
RFU
ESSB
ESB
PSB
RFU
0
X
X
X
X
X
1
Sector Lock
Status Bit
Bank Status Bit
PSSB
SLSB
BSB
X
0
X
X
1
X
X
X
X
X
X
X
No active
Program or
Erase op.
X
X
X
X
X
X
X
X
Program or
Erase op. in
addressed
Bank
Program or
Erase op. in
other Bank
0
N
1
Bit 6:1 only
valid when Bit
7=1
Program
Suspend
Status Bit
ot
Bit 6:1 only
valid when Bit
7=1
Bit 0
ec
X
R
0
Bits 6:1 only
valid when Bit
7=1
Bit 1
om
m
en
Bits 6:1 only
valid when Bit
7=1
Bit 2
rN
Bit 4
fo
Bit 5
d
Overall status
Bit 6
de
Bit 7
Device Ready
Bit.
ew
Table 8.21 Status Register - Bit 0
1
invalid
Notes
BSB is used to check if a program or erase operation in progress in the current bank.
8.6
Blank Check
The Blank Check command will confirm if the selected sector is erased.
The Blank Check command does not allow for reads to the array during the Blank Check. Reads to the array while this command is
executing will return unknown data.
Blank Check is only functional in Asynchronous Read mode (Configuration Register - CR[15] = 1).
To initiate a Blank Check on Sector X, write 33h to address AAAh in Sector X. while the device is in the Idle state (not
during program suspend, not during erase suspend,...).
Document Number: 002-01101 Rev. *I
Page 34 of 77
S29WS512R
S29WS256R, S29WS128R
The Blank Check command may not be written while the device is actively programming or erasing. Blank Check does not
support simultaneous operations.
Use the Status Register read to confirm if the device is still busy and when compete if the sector is blank or not.
Bit 5 of the Status Register will be cleared to zero if the sector is erased and set to one if not erased.
Bit 7 & Bit 0 of the Status Register will show if the device is performing a Blank Check (similar to an erase operation).
As soon as any bit is found to not be erased, the device will halt the operation and report the results.
Once the Blank Check is completed, the device will to return to the Idle State.
8.7
Simultaneous Read/Write
Writing Commands/Command Sequences
ew
8.8
D
es
ig
n
The simultaneous read/write feature allows the host system to read data from one bank of memory while programming or erasing
another bank of memory. An erase operation may also be suspended to read from or program another location within the same bank
(note: programming to the sector being erased is not allowed). Figure 11.19, Back-to-Back Read/Write Cycle Timings on page 61
shows how read and write cycles may be initiated for simultaneous operation with zero latency. Refer to the DC Characteristics
on page 48 table for read-while-program and read-while-erase current specification.
om
m
en
de
d
fo
rN
The device accepts Asynchronous write bus operations. During an asynchronous write bus operation, the system must drive CE#
and WE# to VIL and OE# to VIH when providing an address and data. When latching an address, AVD# must be driven to VIL.
Addresses are latched on the rising edge of AVD#, while data is latched on the rising edge of WE#. See the Table 8.1, Device Bus
Operations on page 24 for the signal combinations that define each phase of a write bus operation to the device. Each write is a
command or part of a command sequence to the device. The address provided in each write operation may be a bit pattern used to
help identify the write as a command to the device. The upper portion of the address may also select the bank or sector the
command operation is to be performed. A Bank Address (BA) is the set of address bits required to uniquely select a bank. Similarly,
a Sector Address (SA) is the address bits required to uniquely select a sector. The data in each write identifies the command
operation to be performed or supplies information needed to perform the operation. See Table 12.1, Command Definitions
on page 63 for a listing of the commands accepted by the device. ICC2 in DC Characteristics on page 48 represents the active
current specification for a write (Embedded Algorithm) operation.
Program/Erase Operations
ec
8.9
ot
R
For all program and/or erase operations, including writing command sequences, the system must drive AVD# and CE# to VIL, and
OE# to VIH when providing an address to the device, and drive WE# and CE# to VIL, and OE# to VIH when writing commands or
programming data.
N
Addresses are latched on the rising edge of AVD# during asynchronous writes. Data is latched on the rising edge of WE# during
asynchronous writes.
Note the following:
When the Embedded Program algorithm is complete, the device returns to the calling routing (Erase Suspend, SSR Lock,
Secure Silicon Region, or Idle State).
The system can determine the status of the program operation by reading the Status Register. Refer to Status Register
on page 31 for information on these status bits.
A 0 cannot be programmed back to a 1. A succeeding read shows that the data is still 0. Only erase operations can convert
a 0 to a 1.
old data
new data
results
0011
0101
0001
Any commands written to the device during the Embedded Program Algorithm are ignored except the Reads from the nonProgramming Bank, Program Suspend, and Status Read command. Any commands written to the device during the
Embedded Erase Algorithm are ignored except Reads from the non-Erasing Bank, Erase Suspend and Status Read
command.
Document Number: 002-01101 Rev. *I
Page 35 of 77
S29WS512R
S29WS256R, S29WS128R
8.9.1
A hardware reset immediately terminates the program/erase operation and the program command sequence should be
reinitiated once the device has returned to the idle state, to ensure data integrity.
Write Buffer Programming
Write Buffer Programming allows the system to write 1 to 32 words in one programming operation. The Write Buffer Programming
command sequence is initiated by first writing the Write Buffer Load command written at the Sector Address + AAAh in which
programming occurs. Next, the system writes the number of word locations minus 1 at the Sector Address + 555h. This tells the
device how many write buffer addresses are loaded with data and therefore when to expect the Program Buffer to Flash command.
The Sector Address must match during the Write Buffer Load command and during the Write Word Count command and the Sector
must be unlocked or the operation will abort and return to the initiating state.
ig
n
The write buffer is used to program data within a 64 byte page aligned on a 64 byte boundary.Thus, a full page Write Buffer
programming operation must be aligned on a page boundary. Programming operations of less than a full page may start on any
word boundary but may not cross a page boundary.
ew
D
es
The system then writes the starting address/data combination. This starting address is the first address/data pair to be programmed,
and selects the write-buffer-page address. The Sector address must match the Write Buffer Load Sector Address or the operation
will abort and return to the initiating state. All subsequent address/data pairs must be in sequential order. All write buffer addresses
must be within the same page. If the system attempts to load data outside this range, the operation aborts after the Write to Buffer
command is executed and the device will indicate a Program Fail in the Status Register at bit location 4 (PSB). A “Clear Status
Register” must be issued to clear the PSB status bit.
rN
The counter decrements for each data load operation.
om
m
en
de
d
fo
Once the specified number of write buffer locations have been loaded, the system must then write the Program Buffer to Flash
command at the Sector Address + AAAh. The device then goes busy. The Embedded Program algorithm automatically programs
and verifies the data for the correct data pattern. The system is not required to provide any controls or timings during these
operations. If the incorrect number of write buffer locations have been loaded and the Program Buffer to Flash command is issued,
the Status Register will indicate a program fail at bit location 4 (PSB). A “Clear Status Register” must be issued to clear the PSB
status bit.
The write-buffer embedded programming operation can be suspended using the Program Suspend command. When the Embedded
Program algorithm is complete, the device then returns to Erase Suspend, SSR Lock, Secure Silicon Region, or Idle state. The
system can determine the status of the program operation by reading the Status Register. Refer to Status Register on page 31 for
information on these status bits.
ec
The Write Buffer Programming Sequence will be Aborted under the following conditions:
Load a value greater than the buffer size during the Number of Locations step.
Write an address that is outside the Page of the Starting Address during the write buffer data loading stage of the operation.
Or, have a sector address not matching the one used in the initial command cycle of the write buffer operation.
The sector to be programmed is locked.
The Program Buffer to flash command is not issued after the Write Word Count number of data words is loaded.
N
ot
R
When any of the conditions that cause an abort of write buffer command occur the abort is immediate and will indicate a Program
Fail in the Status Register at bit location 4 (PSB). The next successful program operation will clear the failure status or a “Clear
Status Register” may be issued to clear the PSB status bit.
The Write Buffer Programming Sequence can be stopped and reset by the following: Hardware Reset or Power cycle.
Document Number: 002-01101 Rev. *I
Page 36 of 77
S29WS512R
S29WS256R, S29WS128R
Software Functions and Sample Code
Table 8.22 Write Buffer Program
(LLD Functions Used = lld_WriteToBufferCmd, lld_ProgramBufferToFlashCmd)
Cycle
Description
Operation
Word Address
Data
1
Write Buffer Load Command
Write
Program Address + 555h
0025h
2
Write Word Count
Write
Program Address + AAAh
Word Count (N–1)h
3 to 34
Load Buffer Word N
Write
Program Address, Word N
Word N
Last
Write Buffer to Flash
Write
Sector Address + 555h
0029h
Number of words (N) loaded into the write buffer can be from 1 to 32 words.
Notes:
1. Base = Base Address.
2. Last = Last cycle of write buffer program operation; depending on number of words written, the total number of cycles may be from 6 to 37.
ig
n
3. For maximum efficiency, it is recommended that the write buffer be loaded with the highest number of words (N words) possible.
d
fo
rN
ew
*/
*/
*/
*/
*/
*/ /*Addresses are given as word addresses.*/
/* address of source data
*/
/* flash destination address
*/
/* word count (minus 1)
*/
/* write write buffer load command */
/* write word count (minus 1)
*/
1 address/data pairs have been entered.
om
m
en
de
/* Example: Write Buffer Programming Command
/* NOTES: Write buffer programming limited to 16 words.
/*
All addresses to be written to the flash in
/*
one operation must be within the same flash
/*
page. A flash page begins at addresses
/*
evenly divisible by 0x20.
UINT16 *src = source_of_data;
UINT16 *dst = destination_of_data;
UINT16 wc
= words_to_program -1;
*( (UINT16 *)sector_address + 0x555 )
= 0x0025;
*( (UINT16 *)sector_address + 0xAAA)
= wc;
for(x = wc + 1; x>0; x--)
// Loop until wc +
D
es
The following is a C source code example of using the write buffer program function. Refer to the Spansion Low Level Driver User’s
Guide (available on www.spansion.com) for general information on Spansion Flash memory software development guidelines.
{
/* write source data to destination
/* increment destination pointer
/* increment source pointer
/* do it again
/* write confirm command
*/
*/
*/
*/
*/
N
ot
R
ec
*dst = *src; /* ALL dst MUST BE SAME PAGE */
dst++;
src++;
} ;
*( (UINT16 *)sector_address + 0x555)
= 0x0029;
/* poll for completion */
do
{
*((UNIT16 *)sector_address + 0x555)
= 0x0070;
reg
= *(dst-1);
} while (reg & 0x80) !=0x80);
/* Example: Write Buffer Abort Reset
*( (UINT16 *)addr + 0x555 ) = 0x00F0;
8.9.2
/* enter the Read Status Register command.*/
/* Read the Status Register.*/
/* Loop until bit 7 is 1.*/
*/
/* write buffer abort reset
*/
Program Suspend/Program Resume Commands
The Program Suspend command allows the system to interrupt an embedded programming operation or a Write to Buffer
programming operation so that data can read from any non-suspended sector. When the Program Suspend command is written
during a programming process, the device halts the programming operation within tPSL (program suspend latency) and updates the
status bits. Addresses are don't-cares when writing the Program Suspend command.
After the programming operation has been suspended, the system can read array data from any non-suspended sector and page.
The Program Suspend command may also be issued during a programming operation while an erase is suspended. In this case,
data may be read from any addresses not in Erase Suspend or Program Suspend.
Document Number: 002-01101 Rev. *I
Page 37 of 77
S29WS512R
S29WS256R, S29WS128R
After the Program Resume command is written, the device reverts to programming and the status bits are updated. The system can
determine the status of the program operation by reading the Status Register, just as in the standard program operation. See Status
Register on page 31 for more information.
The system must write the Program Resume command to exit the Program Suspend mode and continue the programming
operation. Further writes of the Program Resume command are ignored. Another Program Suspend command can be written after
the device has resumed programming.
Software Functions and Sample Code
Table 8.23 Program Suspend
(LLD Function = lld_ProgramSuspendCmd)
Cycle
Operation
Byte Address
Word Address
Data
1
Write
Bank Address
Bank Address
0051h
es
ig
n
The following is a C source code example of using the program suspend function. Refer to the Spansion Low Level Driver User’s
Guide (available on www.spansion.com) for general information on Spansion flash memory software development guidelines.
/* Example: Program suspend command */
D
/* write suspend command
*/
ew
*( (UINT16 *)base_addr + 0x000 ) = 0x0051;
Table 8.24 Program Resume
rN
(LLD Function = lld_ProgramResumeCmd)
Operation
Byte Address
Word Address
Data
1
Write
Bank Address
Bank Address
0050h
fo
Cycle
om
m
en
/* Example: Program resume command */
*( (UINT16 *)base_addr + 0x000 ) = 0x0050;
8.9.3
de
d
The following is a C source code example of using the program resume function. Refer to the Spansion Low Level Driver User’s
Guide (available on www.spansion.com) for general information on Spansion flash memory software development guidelines.
Sector Erase
/* write resume command
*/
N
ot
R
ec
The sector erase function erases one sector in the memory array. (See Table 12.1 on page 63) The device does not require the
system to preprogram prior to erase. The Embedded Erase algorithm automatically programs and verifies the entire memory for an
all zero data pattern prior to electrical erase. After a successful sector erase, all locations within the erased sector contain FFFFh.
The system is not required to provide any controls or timings during these operations. Sector Erase requires 2 commands. Each of
the Sector Addresses must match, the lower addresses must be correct, and the sector must be unlocked previously by executing
the Sector Unlock command and must not be locked by the Sector Lock Range command.
When the Embedded Erase algorithm is complete, the bank returns to idle state and addresses are no longer latched. Note that
while the Embedded Erase operation is in progress, the system can read data from the non-erasing banks. The system can
determine the status of the erase operation by reading the Status Register. See Status Register on page 31 for information on these
status bits.
Once the sector erase operation has begun, only reading from outside the erase bank, read of Status Register, and the Erase
Suspend command are valid. All other commands are ignored. However, note that a hardware reset immediately terminates the
erase operation. If that occurs, the sector erase command sequence must be reinitiated once the device has returned to idle state,
to ensure data integrity.
See Program/Erase Operations on page 35 for parameters and timing diagrams.
Document Number: 002-01101 Rev. *I
Page 38 of 77
S29WS512R
S29WS256R, S29WS128R
Software Functions and Sample Code
Table 8.25 Sector Erase
(LLD Function = lld_SectorEraseCmd)
Cycle
Description
Operation
Byte Address
Word Address
Data
1
Setup Command
Write
Sector Address + AAAh
Sector Address + 555h
0080h
2
Sector Erase Command
Write
Sector Address + 555h
Sector Address + AAAh
0030h
Unlimited additional sectors may be selected for erase; command(s) must be written within tSEA.
The following is a C source code example of using the sector erase function. Byte address space is used. Refer to the Spansion
Low Level Driver User’s Guide (available on www.spansion.com) for general information on Spansion flash memory software
development guidelines.
/* Example: Sector Erase Command */
/* write setup command
= 0x0030;
*/
/* write sector erase command
*/
8.9.4
D
es
*( (UINT16 *)sector_address + 0x2AA)
ig
n
*( (UINT16 *)base_addr + 0x555 ) = 0x0080;
Chip Erase
de
d
fo
rN
ew
The chip erase function erases the complete memory array. (See Table 12.1 on page 63). The device does not require the
system to preprogram prior to erase. The Embedded Erase algorithm automatically programs and verifies the entire memory for
an all zero data pattern prior to electrical erase. After a successful chip erase, all locations within the device contain FFFFh. The
system is not required to provide any controls or timings during these operations. Chip Erase requires 2 commands. Each of the
Sector Addresses must match, the lower addresses must be correct, and Sector 0 must be unlocked previously by executing
the Sector Unlock command. If any sector has been locked by the Sector Lock Range command, the Chip Erase command will
not start.
om
m
en
When the Embedded Erase algorithm is complete, the device returns to idle state and addresses are no longer latched. Note
that while the Embedded Erase operation is in progress, the system can not read data from the device. The system can
determine the status of the erase operation by reading the Status Register. See Status Register on page 31 for information on
these status bits.
ec
Once the chip erase operation has begun, only a Status Read, Hardware RESET or Power cycle are valid. All other commands
are ignored. However, note that a Hardware Reset or Power Cycle immediately terminates the erase operation. If that occurs,
the chip erase command sequence must be reinitiated once the device has returned to idle state, to ensure data integrity.
R
See Program/Erase Operations on page 35 for parameters and timing diagrams.
N
Table 8.26 Chip Erase
ot
Software Functions and Sample Code
(LLD Function = lld_ChipEraseCmd)
Cycle
Description
Operation
Byte Address
Word Address
Data
1
Setup Command
Write
Base + AAAh
Base + 555h
0080h
2
Chip Erase Command
Write
Base + 555h
Base + AAAh
0010h
The following is a C source code example of using the chip erase function. Byte address space is used. Refer to the Spansion
Low Level Driver User’s Guide (available on www.spansion.com) for general information on Spansion flash memory software
development guidelines.
/* Example: Chip Erase Command */
/* Note: Cannot be suspended
*/
*( (UINT16 *)base_addr + 0x555 ) = 0x0080;
/* write setup command
*/
*( (UINT16 *)base_addr + 0x2AA ) = 0x0010;
/* write chip erase command
*/
Document Number: 002-01101 Rev. *I
Page 39 of 77
S29WS512R
S29WS256R, S29WS128R
8.9.5
Erase Suspend/Erase Resume Commands
The Erase Suspend command allows the system to interrupt a sector erase operation and then read data from, or program data to,
the device. This command is valid only during the sector erase operation. The Erase Suspend command is ignored if written during
the chip erase operation.
When the Erase Suspend command is written during the sector erase operation, the device requires a maximum of tESL (erase
suspend latency) to suspend the erase operation and update the status bits.
After the erase operation has been suspended, the bank enters the erase-suspend mode. The system can read data from or
program data to the device. Reading at any address within erase-suspended sectors produces undetermined data. The system can
read the Status Register to determine if a sector is actively erasing or is erase-suspended. Refer to Status Register on page 31 for
information on these status bits.
After an erase-suspended program operation is complete, the bank returns to the erase-suspend mode. The system can determine
the status of the program operation by reading the Status Register, just as in the standard program operation.
es
ig
n
To resume the sector erase operation, the system must write the Erase Resume command. The device will revert to erasing and the
status bits will be updated. Further writes of the Resume command are ignored. Another Erase Suspend command can be written
after the chip has resumed erasing.
D
Software Functions and Sample Code
ew
Table 8.27 Erase Suspend
rN
(LLD Function = lld_EraseSuspendCmd)
Operation
Byte Address
Word Address
Data
1
Write
Bank Address
Bank Address
00B0h
fo
Cycle
/* Example: Erase suspend command */
/* write suspend command
*/
N
ot
R
ec
om
m
en
*( (UINT16 *)bank_addr + 0x000 ) = 0x00B0;
de
d
The following is a C source code example of using the erase suspend function. Refer to the Spansion Low Level Driver User’s Guide
(available on www.spansion.com) for general information on Spansion flash memory software development guidelines.
Document Number: 002-01101 Rev. *I
Page 40 of 77
S29WS512R
S29WS256R, S29WS128R
Table 8.28 Erase Resume
(LLD Function = lld_EraseResumeCmd)
Cycle
Operation
Byte Address
Word Address
Data
1
Write
Bank Address
Bank Address
0030h
The following is a C source code example of using the erase resume function. Refer to the Spansion Low Level Driver User’s Guide
(available on www.spansion.com) for general information on Spansion flash memory software development guidelines.
/* Example: Erase resume command */
*( (UINT16 *)bank_addr + 0x000 ) = 0x0030;
/* write resume command
*/
/* The flash needs adequate time in the resume state */
Accelerated Program/Sector Erase
ig
n
8.9.6
es
Accelerated write buffer programming, and sector erase operations are enabled through the ACC function. This method is faster
than the standard chip program and sector erase command sequences.
ew
D
The accelerated write buffer program and sector erase functions must not be used more than 50 times per sector. In
addition, accelerated write buffer program and sector erase should be performed at room temperature (30°C 10°C).
rN
If the system asserts VHH on ACC, the device automatically uses the higher voltage on the input to reduce the time required for
program and erase operations. Removing VHH from the ACC input, upon completion of the embedded program or erase operation,
returns the device to normal operation.
Simultaneous operations are not supported while ACC is at VHH. The ACC pin must not be at VHH for operations other than
accelerated write buffer programming, accelerated sector erase, and status register read or device damage may result.
The ACC pin must not be left floating or unconnected; inconsistent behavior of the device may result.
There is a minimum of 100 ms required between accelerated write buffer programming and a subsequent accelerated
sector erase.
d
de
om
m
en
8.10
fo
Handshaking
ec
The handshaking feature allows the host system to detect when data is ready to be read by simply monitoring the RDY (Ready) pin,
which is a dedicated output controlled by CE#.
N
ot
R
When either CE# input is Low, the RDY output signal is actively driven. When both of the CE# inputs are High the RDY output is
high-impedance. When either CE# input and OE# input is Low, the DQ15-DQ0 output signals are actively driven. When both of the
CE# inputs are High, or the OE# input is High, the DQ15DQ0 outputs are high-impedance.
When the device is operated in synchronous mode, and OE# is low (active), the initial word of burst data becomes available after the
rising edge of the RDY. CR.8 in the Configuration Register allows the host to specify whether RDY is active at the same time that
data is ready, or one cycle before data is ready (see Table 8.12 on page 30).
When the device is operated in asynchronous mode, RDY will be high when CE# is low (active).
Document Number: 002-01101 Rev. *I
Page 41 of 77
S29WS512R
S29WS256R, S29WS128R
8.11
Hardware Reset
The RESET# input provides a hardware method of resetting the device to idle state. When RESET# is driven low for at least a period
of tRP, the device immediately terminates any operation in progress, in the high-impedance state all outputs, resets the configuration
register, and ignores all read/write commands for the duration of the reset operation. The device also resets the internal state
machine to idle state.
To ensure data integrity, the operation that was interrupted should be reinitiated once the device is ready to accept another
command sequence.
When RESET# is held at VSS, the device draws CMOS standby current (ICC4). If RESET# is held at VIL, but not at VSS, the standby
current is greater.
See Figure 11.6 for timing diagrams
Software Reset
ig
n
8.12
es
Software reset is part of the command set (see Table 12.1 on page 63) that also returns the device to idle state and must be used for
the following conditions:
D
1. Exit ID/CFI mode
ew
2. Exit Secure Silicon Region mode
3. Exit Configuration Register mode
rN
4. Exit SSR Lock mode
fo
Reset commands are ignored once programming/erasure has begun until the operation is complete.
d
Software Functions and Sample Code
de
Table 8.29 Reset
om
m
en
(LLD Function = lld_ResetCmd)
Cycle
Operation
Byte Address
Word Address
Data
Reset Command
Write
Base + xxxh
Base + xxxh
00F0h
Note:
Base = Base Address.
R
ec
The following is a C source code example of using the reset function. Refer to the Spansion Low Level Driver User’s Guide
(available on www.spansion.com) for general information on Spansion flash memory software development guidelines.
ot
/* Example: Reset (software reset of Flash state machine) */
N
*( (UINT16 *)base_addr + 0x000 ) = 0x00F0;
9. Sector Protection/Unprotection
The Sector Protection/Unprotection feature disables or enables programming or erase operations in one or multiple sectors and can
be implemented through software and/or hardware methods, which are independent of each other. This section describes the
various methods of protecting data stored in the memory array.
Document Number: 002-01101 Rev. *I
Page 42 of 77
S29WS512R
S29WS256R, S29WS128R
9.1
Sector Lock/Unlock Command
The Sector Lock/Unlock command sequence allows the system to protect all sectors from accidental writes or, unprotect one sector
to allow programming or erasing of the sector. When the device is first powered up, all sectors are unlocked. To lock all sectors
(enter protected mode), a Sector Lock/Unlock command must be issued to any Sector Address. Once this command is issued, only
one sector at a time can be unlocked until power is cycled. To unlock a sector, the system must write the Sector Lock/Unlock
command sequence. Two cycles are first written: addresses are xAAAh and x555 with data 60h. During the third cycle, the sector
address (SLA) and unlock command (60h) are written, while specifying with address A6 whether that sector should be locked (A6 =
VIL) or unlocked (A6 = VIH).
A Program or Erase operation will check the unlocked Sector Address only at the beginning of the Program or Erase operation. It is
not necessary to keep the sector being Programmed or Erased locked during the operation. The system can change the unlocked
Sector after programming or erasing the sector has begun. An Erase Resume or Program Resume command does not check the
value of the unlocked Sector.
ig
n
If A6 is set to VIL,then all sectors in the array will be locked. Only one sector at a time can be unlocked.
Sector Lock Range Command
ew
9.2
D
es
If a Sector Lock/Unlock command is issued to a sector that is protected by the Sector Lock Range command, all sectors in the part
will be locked.
fo
rN
This command allows a range of sectors to be protected from program or erase (locked) until a hardware reset or power is removed
from the device. Once this command is issued, all sectors are protected and the Sector Lock/Unlock command is ignored for the
selected the range of sectors. Sectors outside of the selected range must be unlocked one sector at a time using the Sector Unlock
command in order to be erased/programmed.
om
m
en
de
d
Two cycles are first written: addresses are xAAAh and data is 60h. During the third cycle, the sector address (SLA) and load sector
address command (61h) is written. This cycle sets the lower sector address of the range. During the fourth cycle, the sector address
(SLA) and load sector address command (61h) is written. This cycle sets the upper sector address of the range. The addresses
reference a large sector address range (128 KB). If a sector address matches the location of the four small sectors, all of the small
sectors will be protected as a group. The sectors selected by the lower and upper address, as well as all sectors between these
sectors, are protected from program and erase until a hardware reset or power is removed. If the lower and upper sector addresses
are for the same sector then only that one sector is locked. flash address input A6 (system byte address bit a7) during both address
cycles must be zero (A6 = VIL) for the addresses to be accepted as valid.
R
ec
If the first sector address cycle contains an address which is higher than the second sector address cycle, then the command
sequence will be invalid. If A6 is set to one (A6 = VIH) on either address cycle, the command sequence will disable subsequent
Sector Lock Range commands.
ot
A valid Sector Lock Range command sequence is accepted only once after a Hardware Reset or initial power up. Additional Sector
Lock Range commands will be ignored.
N
If a Sector Unlock command tries to unlock a Sector within the Sector Lock Range, the Sector will remain in locked state. Similarly, if
a Sector that is currently unlocked by the Sector Unlock command is overlapped by a subsequent Sector Lock Range, that sector
will be locked and program erase operations to that region will be ignored.
This command is generally used by trusted boot code. After power on reset boot code has the option to check for any need to
update sectors before locking them for the remainder of power on time. Once boot code is satisfied with the content of sectors to be
protected the Sector Lock Range command is used to lock sectors against any program or erase during normal system operation.
This adds an extra layer of protection for critical data that must be protected against accidental or malicious corruption. Yet,
maintains flexibility for trusted boot code to perform occasional updates of the data. It is important to issue the Sector Lock Range
command even if no sectors are to be protected so that sectors that should remain available for update cannot be later locked by
accidental or malicious code behavior.
Document Number: 002-01101 Rev. *I
Page 43 of 77
S29WS512R
S29WS256R, S29WS128R
9.3
Hardware Data Protection Methods
There are additional hardware methods by which intended or accidental erasure of any sectors can be prevented via hardware
means. The following subsections describes these methods:
9.3.1
ACC Method
Once the ACC input is set to VIL, all program and erase functions are disabled and hence all Sectors (including the Secure Silicon
Region and SSR Lock) are protected. ACC does not prevent programming (writing) of the configuration register.
9.3.2
Low VCC Write Inhibit
When VCC is less than VLKO, the device does not accept any write cycles. This protects data during VCC power-up and power-down.
Write Pulse Glitch Protection
D
9.3.3
es
ig
n
The command register and all internal program/erase circuits are disabled. Subsequent writes are ignored until VCC is greater than
VLKO. The system must provide the proper signals to the control inputs to prevent unintentional writes when VCC is greater than
VLKO.
Power-Up Write Inhibit
rN
9.3.4
ew
Noise pulses of less than 3 ns (typical) on OE#, WE#, or CE# do not initiate a write cycle.
SSR Lock
de
9.4
d
fo
If CE# = RESET# = VIL and OE# = VIH during power up, the device does not accept write commands. The internal state machine is
automatically reset to the idle state on power-up.
om
m
en
The SSR Lock consists of two bits. The Customer Secure Silicon Region Protection Bit is in location 0. The Factory Secure Silicon
Region Protection Bit is in location 1. All other bits in this location return “1.”
If the Secure Silicon Region Protection Bit is set to “0,” the Customer Secure Silicon Region is protected and can not be
programmed. If this bit is set to “1,” the Customer Secure Silicon Region is available for programming. Once this area has been
programmed, the SSR Lock bit 0 should be programmed to “0.”
ot
R
ec
Similarly the Factory Secure Silicon Region Protection Bit is set to “0” when protected. This area is always programmed and
protected at the Spansion factory.
Secure Silicon Region
N
9.5
The Secure Silicon Region provides an extra flash memory region that may be programmed once and permanently protected from
further programming or erase.
Reads can be performed in the Asynchronous or Synchronous mode.
Sector address supplied during the Secure Silicon Entry command selects the flash memory array sector that is overlaid by
the Secure Silicon Region address map.
Continuous burst mode reads within Secure Silicon Region wrap from address FFh back to address 00h.
Reads outside of the overlaid sector return memory array data.
The Secure Silicon Region is not accessible when the device is executing an Embedded Algorithm (nor during Program
Suspend, Erase Suspend, or while another AOS is active).
See the Secure Silicon address map for address range of this area.
Document Number: 002-01101 Rev. *I
Page 44 of 77
S29WS512R
S29WS256R, S29WS128R
9.5.1
Factory Secure Silicon Region
The Factory Secure Silicon Region is always protected when shipped from the factory and has the Factory SSR Lock Bit (bit 1)
permanently set to a Zero. This prevents cloning of a factory locked part and ensures the security of the ESN and customer code
once the product is shipped to the field.
9.5.2
Customer Secure Silicon Region
The Customer Secure Silicon Region is shipped unprotected, Customer SSR Lock Bit (bit 0) set to a One. allowing customers to
utilize that sector in any manner they choose.
The Customer Secure Silicon Region can be read any number of times, but each word can be programmed only once and the region
locked only once. The Customer Secure Silicon Region lock must be used with caution as once locked, there is no procedure
available for unlocking the Customer Secure Silicon Region area and none of the bits in the Customer Secure Silicon Region
memory space can be modified in any way. The Customer Indicator Bit is located in the SSR Lock at bit location 0.
Secure Silicon Region Entry and Exit Command Sequences
D
9.5.3
es
ig
n
Once the Customer Secure Silicon Region area is protected, any further attempts to program in the area will fail with status
indicating the area being programmed is protected.
rN
ew
The system can access the Secure Silicon Region region by issuing the one-cycle Enter Secure Silicon Region Entry command
sequence from the IDLE State. The device continues to have access to the Secure Silicon Region region until the system issues the
Exit Secure Silicon Region command sequence, performs a Hardware RESET, or until power is removed from the device.
fo
See Command Definition Table [Secure Silicon Region Command Table, Appendix
Table 12.1 on page 63 for address and data requirements for both command sequences.
d
The Secure Silicon Region Entry Command allows the following commands to be executed
Read customer and factory Secure Silicon Regions
Program the customer Secure Silicon Region
Read data out of all sectors not re-mapped to Secure Silicon Region
Secure Silicon Region Exit
om
m
en
de
Software Functions and Sample Code
R
ec
The following are C functions and source code examples of using the Secured Silicon Sector Entry, Program, and exit commands.
Refer to the Spansion Low Level Driver User’s Guide (available soon on www.spansion.com) for general information on Spansion
flash memory software development guidelines.
ot
Table 9.1 Secured Silicon Region Entry
N
(LLD Function = lld_SecSiSectorEntryCmd)
Cycle
Operation
Byte Address
Word Address
Data
Entry Cycle
Write
Base + AAAh
Base + 555h
0088h
Note:
Base = Base Address.
/* Example: SecSi Sector Entry Command Byte Address*/
*( (UINT16 *)base_addr + 0x555 ) = 0x0088;
/* write Secsi Sector Entry Cmd
*/
Table 9.2 Secured Silicon Region Program
(LLD Function = lld_ProgramCmd)
Cycle
Operation
Byte Address
Word Address
Data
Program Setup
Write
Base + AAAh
Sector Address + 555h
0025h
Write Word Count
Write
Program Address + 555h
Sector Address + 2AA
Word Count (N–
1)h
Document Number: 002-01101 Rev. *I
Page 45 of 77
S29WS512R
S29WS256R, S29WS128R
Table 9.2 Secured Silicon Region Program
(LLD Function = lld_ProgramCmd)
Cycle
Operation
Byte Address
Word Address
Data
Number of words (N) loaded into the write buffer can be from 1 to 32 words.
Load Buffer Word N
Write
Program Address, Word
N
Write Buffer to Flash
Write
Sector Address + AAAh
Word N
Sector Address + 555h
0029h
Note:
Base = Base Address.
/* Once in the SecSi Sector mode, you program */
/* words using the programming algorithm.
*/
ig
n
Table 9.3 Secured Silicon Region Exit
es
(LLD Function = lld_SecSiSectorExitCmd)
Operation
Byte Address
Word Address
Data
Exit Cycle
Write
Any Address
Any Address
00F0h
D
Cycle
ew
Note:
Base = Base Address.
Standby Mode
om
m
en
10.1
de
10. Power Conservation Modes
fo
/* write SecSi Sector Exit cycle */
d
*( (UINT16 *)XXX ) = 0x00F0;
rN
/* Example: SecSi Sector Exit Command */
Automatic Sleep Mode
ot
10.2
R
ec
In the standby mode current consumption is greatly reduced, and the outputs (DQ15-DQ0) are placed in the high impedance state,
independent of the OE# input. The device enters the CMOS standby mode when the CE# and RESET# inputs are both held at VCC
± 0.2 V. The device requires standard access time (tCE or tIA) for read access, before it is ready to read data. If the device is
deselected during erasure or programming, the device draws active current until the operation is completed. ICC3 in DC
Characteristics on page 48 represents the standby current specification
N
The automatic sleep mode minimizes flash device energy consumption while in asynchronous mode and while the device is not in a
suspended state. The device automatically enables this mode when addresses remain stable for tACC + 20 ns. The automatic sleep
mode is independent of the CE#, WE#, and OE# control signals. Standard address access timings (tACC or tPACC) provide new data
when addresses are changed. While in sleep mode, output data is latched and always available to the system. While in synchronous
mode, the automatic sleep mode is disabled. ICC6 in DC Characteristics on page 48 represents the automatic sleep mode current
specification.
10.3
Output Disable (OE#)
When the OE# input is at VIH, output (DQ15-DQ0) from the device is disabled and placed in the high impedance state. RDY is not
controlled by OE#.
Document Number: 002-01101 Rev. *I
Page 46 of 77
S29WS512R
S29WS256R, S29WS128R
11. Electrical Specifications
11.1
Absolute Maximum Ratings
Table 11.1
Storage Temperature
Plastic Packages
–65°C to +150°C
Ambient Temperature with Power Applied
–65°C to +125°C
Voltage with Respect to Ground:
All Inputs and I/Os except as noted below
(Note 1)
–0.5 V to +2.5 V
VIO
–0.5 V to +2.5 V
ACC (Note 2)
–0.5 V to +9.5 V
es
VCC (Note 1)
ig
n
–0.5 V to VIO + 0.5 V
100 mA
D
Output Short Circuit Current (Note 3)
ew
Notes
1. Minimum DC voltage on input or I/Os is –0.5 V. During voltage transitions, inputs or I/Os may undershoot VSS to –2.0 V for periods of up to 20 ns. See Figure 11.1.
Maximum DC voltage on input or I/Os is VCC + 0.5 V. During voltage transitions outputs may overshoot to VCC + 2.0 V for periods up to 20 ns. See Figure 11.2.
rN
2. Minimum DC input voltage on pin ACC is -0.5V. During voltage transitions, ACC may overshoot VSS to –2.0 V for periods of up to 20 ns. See Figure 11.1. Maximum DC
voltage on pin ACC is +9.5 V, which may overshoot to 10.5 V for periods up to 20 ns.
3. No more than one output may be shorted to ground at a time. Duration of the short circuit should not be greater than one second.
de
d
fo
4. Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress rating only; functional operation of the
device at these or any other conditions above those indicated in the operational sections of this data sheet is not implied. Exposure of the device to absolute maximum
rating conditions for extended periods may affect device reliability.
Figure 11.1 Maximum Negative Overshoot Waveform
20 ns
om
m
en
20 ns
+0.8 V
ec
–0.5 V
–2.0 V
ot
R
20 ns
N
Figure 11.2 Maximum Positive Overshoot Waveform
20 ns
VCC
+2.0 V
VCC
+0.5 V
1.0 V
11.2
20 ns
20 ns
Operating Ranges
Table 11.2
Wireless (I) Devices
Ambient Temperature (TA)
–25°C to +85°C
Supply Voltages
VCC Supply Voltages
Document Number: 002-01101 Rev. *I
+1.70 V to +1.95 V
Page 47 of 77
S29WS512R
S29WS256R, S29WS128R
Table 11.2
+1.70 V to +1.95 V
VIO Supply Voltages
VCC(min) VIO(min) - 200 mV
Notes
Operating ranges define those limits between which the functionality of the device is guaranteed.
CMOS Compatible
Description
Test Conditions (Notes 1 & 2)
ILI
Input Load Current
VIN = VSS to VCC, VCC = VCCmax
ILO
Output Leakage Current
VOUT = VSS to VCC, VCC = VCCmax
Min
26
36
mA
104 MHz
33
44
mA
66 MHz
24
35
mA
83 MHz
26
38
mA
104 MHz
30
40
mA
66 MHz
28
39
mA
83 MHz
30
42
mA
104 MHz
32
44
mA
20
30
µA
D
83 MHz
rN
fo
d
IIO2
VIO Standby
CE# = RESET# = VCC ± 0.2V
om
m
en
VCC Active Asynchronous
Read Current
ICC3
VCC Standby Current
ICC4
VCC Reset Current
CE# = VIL, OE# = VIH,
ACC = VIH
ec
VCC Active Write Current
(3) (7)
CE# = RESET# = VCC ± 0.2 V
ICC5
VCC Active Current Simultaneous
Operation
(Read While Write) (6)
2
3
µA
10 MHz
40
80
mA
5 MHz
20
40
mA
1 MHz
10
20
mA
VACC
1
5
µA
VCC
20
40
mA
VACC
1
5
µA
VCC
20
50
µA
RESET# = VIL, CLK = VIL
N
ot
ICC2
CE# = VIL, OE# = VIH,
WE# = VIH
R
ICC1
µA
µA
de
OE# = VIH , RDY = Tri-State
±1
mA
CE# = VIL, OE# = VIH, WE# = VIH,
burst length = Continuous
VIO Non-active Output
Unit
33
CE# = VIL, OE# = VIH, WE# = VIH, burst
length = 16
IIO1
Max
24
CE# = VIL, OE# = VIH, WE# = VIH, burst
length = 8
VCC Active burst Read Current
Typ
±1
66 MHz
ICCB
ig
n
Parameter
es
11.3.1
DC Characteristics
ew
11.3
CE# = VIL, OE# = VIH, ACC = VIH
150
250
µA
66 MHz,
Continuous Burst
50
60
mA
83 MHz,
Continuous Burst
50
60
mA
104 MHz,
Continuous Burst
52
60
mA
ICC6
VCC Sleep Current (4)
CE# = VIL, OE# = VIH
20
50
µA
ICC7
VCC Active Page Read Current
OE# = VIH, 8 word Page Read @ 10 MHz
10
15
mA
IACC
Accelerated Program Current
(5)
CE# = VIL, OE# = VIH,
VACC = 9.5 V
7
10
mA
20
mA
VIL
Input Low Voltage
VIO = 1.8 V
–0.2
0.4
V
VIH
Input High Voltage
VIO = 1.8 V
VIO – 0.4
VIO + 0.4
VOL
Output Low Voltage
IOL = 100 µA, VCC = VCC min = VIO
VOH
Output High Voltage
IOH = –100 µA, VCC = VCC min = VIO
VHH
Voltage for Accelerated Program
8.5
9.5
V
VLKO
Low VCC Lock-out Voltage
1.0
1.1
V
Document Number: 002-01101 Rev. *I
VACC
15
VCC
0.1
VIO – 0.1
V
V
Page 48 of 77
S29WS512R
S29WS256R, S29WS128R
Notes
1. Maximum ICC specifications are tested with VCC = VCCmax.
2. VCC= VIO
3. ICC active while Embedded Erase or Embedded Program is in progress.
4. Device enters automatic sleep mode when addresses are stable for tACC + 20 ns. Typical sleep mode current is equal to ICC3.
5. Total current during accelerated programming is the sum of VACC and VCC currents.
6. ICC5 apples while reading the status register during program and erase operations
7. Effect of status register polling during write not included.
Capacitance
Description
CIN
Input Capacitance
(Address, CE#, OE#, WE#,
AVD#, WE#, CLK, RESET#)
Test Condition
VIN = 0
COUT
Output Capacitance
(DQ, RDY)
VOUT = 0
Min.
Typ.
Max.
Unit
Single CE
2.0
4.5
6.0
pF
Dual CE
4.0
9.0
12.0
pF
6.0
pF
12.0
pF
Single CE
2.0
4.5
Dual CE
4.0
9.0
D
Notes
1. Test conditions TA = 25°C, f = 1.0 MHz
ew
2. Sampled, not 100% tested.
AC Test Conditions
rN
11.5
ig
n
Symbol
es
11.4
fo
Operating Range
0.0 to VIO
d
Input level
VIO/2
de
Input comparison level
Output data comparison level
om
m
en
Load capacitance (CL)
ec
Transition time (tT) (input rise and fall times)
66 MHz
3.00 ns
83 MHz
2.40 ns
104 MHz
1.85 ns
66 MHz
3.00 ns
83 MHz
2.40 ns
104 MHz
1.85 ns
N
ot
R
Transition time (tT) (CLK input rise and fall times)
VIO/2
30 pF
Figure 11.3 Input Pulse and Test Point
VIO
VIO /2
Input and Output
Test Point
VIO /2
0V
Figure 11.4 Output Load
Device
Under
Test
*CL = 30 pF including scope
and Jig capacitance
Output Load
Document Number: 002-01101 Rev. *I
Page 49 of 77
S29WS512R
S29WS256R, S29WS128R
11.6
Key to Switching Waveforms
Waveform
Inputs
Outputs
Steady
Changing from H to L
Changing from L to H
Changing, State Unknown
Does Not Apply
Center Line is High Impedance State (High Z)
VCC Power Up
ig
n
11.7
Don’t Care, Any Change Permitted
Table 11.3 VCC Power-up
Description
Test Setup
tVCS
VCC Setup Time
Min
tVIOS
VIO Setup Time
D
es
Parameter
Unit
300
µs
300
µs
ew
Min
Speed
Notes
1. RESET# must be high after VCC and VIO are higher than VCC minimum.
rN
2. VCC VIO – 200 mV during power-up.
fo
3. VCC and VIO ramp rate could be non-linear.
4. VCC and VIO are recommended to be ramped up simultaneously.
d
5. Time between a short power off to power on should be >10 ms when system is at 0°C or below.
om
m
en
de
Figure 11.5 VCC Power-up Diagram
VCC min
tVIOS
VIO min
ec
VCC
tRP
R
VIO
tVCS
VIH
tRPH
ot
RESET#
N
tRH
CE#
11.7.1
Hardware Reset (Reset#)
Table 11.4 Warm-Reset
Parameter
JEDEC
Std
Description
All Speed Options
Unit
tRP
RESET# Pulse Width
Min
50
ns
tRH
Reset High Time
Before Read
Min
200
ns
tRPH
RESET# Low to CE#
Low
Min
10
us
Document Number: 002-01101 Rev. *I
Page 50 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.6 Reset Timings
CE#, OE#
tRH
RESET#
tRP
tRPH
Description
104 MHz
CLK Frequency
fCLK
Max
104
Min
DC (Note 1)
CLK Period
Min
CLK Low/High Time
Min
Unit
MHz
9.6
ns
0.45 tCLK
ns
ew
tCLK
tCL/tCH
es
Parameter
ig
n
CLK Characterization
D
11.8
rN
Note
1. DC for operations other than continuous and 16 word (32 byte) synchronous burst read. See Section 11.9.1, AC Characteristics–Synchronous Burst Read on page 52.
fo
2. Clock jitter of +/- 5% is permitted.
om
m
en
tCH
de
d
Figure 11.7 CLK Characterization
tCL
N
ot
R
ec
CLK
tCLK
Document Number: 002-01101 Rev. *I
Page 51 of 77
S29WS512R
S29WS256R, S29WS128R
11.9
AC Characteristics
11.9.1
AC Characteristics–Synchronous Burst Read
Parameter (Notes)
Symbol
66
Clock Frequency
CLK
Min
Clock Cycle
tCLK
Min
83
104
Unit
DC (0) for operations other than continuous and
32 byte synchronous burst.
KHz
120 in 32 Byte burst
1000 in continuous burst
12.0
9.62
ns
Min
tIA
Max
75
75
75
ns
tBACC
Max
11.2
9
7.6
ns
AVD# Setup Time to CLK
tAVDS
Min
5
5
5
ns
AVD# Hold Time from CLK
tAVDH
Min
3
3
3
ns
Address Setup Time to CLK
tACS
Min
4
4
4
ns
Address Hold Time from CLK
tACH
Min
6
5
5
ns
Data Hold Time from Next Clock Cycle
tBDH
Min
3
Output Enable to Data
tOE
Max
15
CE# Disable to Output High-Z (2)
tCEZ
Max
10
OE# Disable to Output High-Z (2)
tOEZ
Max
10
CE# low to RDY valid
AVD# Pulse
tCES
Min
tRACC
Max
tCR
Max
tAVDP
Min
Notes
1. Not 100% tested.
4
ns
D
ew
3
2
ns
15
15
ns
10
10
ns
10
10
ns
rN
fo
CE# Setup Time to CLK
CLK to RDY valid
4
4
ns
9
7.6
ns
10
10
10
ns
6
6
6
ns
d
Burst Access Time Valid Clock to Output
Delay
0.45 tCLK
11.2
de
Internal Access Time
om
m
en
CLK High or Low Time
ig
n
tCLKH/L
es
15
ec
2. If OE# is disabled before CE# is disabled, the output goes to High-Z by tOEZ.
If CE# is disabled before OE# is disabled, the output goes to High-Z by tCEZ.
If CE# and OE# are disabled at the same time, the output goes to High-Z by tOEZ.
3. Synchronous Access Time is calculated using the formula (# of WS - 1)*(clock period) + (tBACC).
R
4. AVD can not be low for 2 subsequent CLK cycles
ot
2
3
N
1
CLK
Figure 11.8 Synchronous Read Mode
tCES
4
5
6
7
7? cycles for initial access is shown as an illustration.
CE#
tCLKH tCLKL
tAVDS
AVD#
tCEZ
tCLK
tAVDP
tACS
tBACC
tAVDH
tOEZ
High-Z
Data
tIA
tACH
Address
DC
DE
DB
AC
tBDH
OE#
tCR
RDY
DD
tOE
Hi-Z
Document Number: 002-01101 Rev. *I
tRACC
tCEZ
High-Z
Page 52 of 77
S29WS512R
S29WS256R, S29WS128R
11.9.2
AC Characteristics–Asynchronous Read
Symbol
Min
Max
Access Time from CE# Low
tCE
–
80
Asynchronous Access Time from address valid
tACC
–
80
Read Cycle Time
tRC
80
–
AVD# Low Time
tAVDP
6
–
Address Setup to rising edge of AVD#
tAAVDS
5
–
Address Hold from rising edge of AVD#
tAAVDH
3.5
–
15
Output Enable to Output Valid
tOE
–
CE# Setup to AVD# falling edge
tCAS
4
–
CE# Disable to Output & RDY High-Z (Note 1)
tCEZ
–
10
OE# Disable to Output High-Z (Note 1)
tOEZ
–
10
AVD# High to OE# Low
tAVDO
0
–
tCR
–
10
CE# low to RDY valid
tWEA
tCLK
–
tOEH
4
–
Intra Page Access Time
tPACC
–
ns
es
WE# Disable to AVD# Enable
WE# Disable to OE# Enable
Unit
ig
n
Parameter
D
15
rN
2. If OE# is disabled before CE# is disabled, the output goes to High-Z by tOEZ.
If CE# is disabled before OE# is disabled, the output goes to High-Z by tCEZ.
If CE# and OE# are disabled at the same time, the output goes to High-Z by tOEZ.
ew
Notes
1. Not 100% tested.
de
CLK
d
fo
Figure 11.9 Asynchronous Read Mode (AVD# Toggling - Case 1)
CLK may be at Vil or Vih or Toggle
tAVDP
AVD#
N
ot
WE#
R
tWEA
tOEH
ec
OE#
om
m
en
Address valid before AVD# Low before CE# Low
CE#
tAAVHD
tAAVDS
A-max - A0
tOE
tCE
tACC
tOEZ
tCEZ
DQ15-DQ0
tCR
tCEZ
RDY
Document Number: 002-01101 Rev. *I
Page 53 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.10 Asynchronous Read Mode (AVD# Toggling - Case 2)
CLK may be at Vil or Vih or Toggle
CLK
CE# & Address valid before AVD#
CE#
tAVDP
AVD#
OE#
tWEA
tOEH
tAAVDS
ig
n
WE#
tAAVHD
es
A-Max - A0
rN
DQ15 - DQ0
ew
tCE
tACC
D
tOE
tCEZ
fo
tCR
tCEZ
tOEZ
om
m
en
de
d
RDY
Figure 11.11 Asynchronous Read Mode (AVD# Toggling - Case 3)
CLK may be at Vil or Vih or Toggle
CLK
ec
CE# before AVD# before Address
R
CE#
N
OE#
ot
tAVDP
AVD#
tWEA
tOEH
WE#
tAAVHD
tAAVDS
A-max - A0
tOE
tCE
tACC
tCEZ
tOEZ
DQ15 - DQ0
tCR
tCEZ
RDY
Document Number: 002-01101 Rev. *I
Page 54 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.12 Asynchronous Read Mode (AVD# tied to CE#)
CLK
VIL or VIH
tRC
CE#
tCEZ
AVD#
tOE
OE#
tOEH
WE#
tOEZ
tCE
tWEA
RD
ig
n
DQ15-DQ0
tACC
Amax-A0
D
es
VA
tCR
tCEZ
Hi-Z
ew
RDY Hi-Z
rN
Notes
1. AVD# is tied to CE#
de
d
fo
2. VA = Valid Read Address, RD = Read Data.
om
m
en
Figure 11.13 Asynchronous Page Mode Read
Page
Amax-A3
A2-A0
R
ec
A0
D0
Ax
A2
tPACC
D1
tPACC
Dx
D7
CE#
N
ot
Data Bus
tACC
A1
tPACC
OE#
AVD#
Note
RA = Read Address, RD = Read Data.
Document Number: 002-01101 Rev. *I
Page 55 of 77
S29WS512R
S29WS256R, S29WS128R
11.9.3
AC Characteristics–Asynchronous Write Operation
Parameter
WE# Cycle Time
Symbol
Min
Typ
Max
Unit
tWC
60
–
–
ns
tAVDP
6
–
–
ns
tAAVDS
5
–
–
ns
Address Setup to falling edge of WE#
tAWES
5
–
–
ns
Address Hold from rising edge of AVD#
tAAVDH
3.5
–
–
ns
Address Hold from falling edge of WE#
tAWEH
3.5
–
–
ns
Read Recovery time before Write
tGHWL
0
–
–
ns
Data Setup to rising edge of WE#
tDS
20
–
–
ns
Data Hold from rising edge of WE#
tDH
0
–
–
ns
ns
4
–
–
AVD# toggled
tCH1
0
–
–
CE# Hold from rising edge of WE#
AVD# = CE#
tCH2
0
–
–
tWP
25
–
WE# Pulse Width
es
tCS
CE# Hold from rising edge of WE#
–
D
CE# Setup to falling edge of WE#
ig
n
AVD# low pulse width
Address Setup to rising edge of AVD#
ns
ns
tWPH
20
–
tVLWH
23.5
–
–
ns
WE# Disable to AVD# Enable
tWEA
7.5
–
–
ns
tCR
–
–
10
ns
CE# Disable to Output High Z
tCEZ
–
–
10
ns
OE# Disable to WE# Enable
tWEH
4
–
–
ns
Erase Suspend Latency
tESL
–
–
30
µs
Program Suspend Latency
tPSL
–
–
30
µs
Latency between Read and Write Operations
tSRW
rN
fo
d
de
0
–
–
ns
30
–
–
µs
tPRS
30
–
–
µs
N
ot
R
ec
Program Resume to Program Suspend
ns
tERS
om
m
en
Erase Resume to Erase Suspend
ew
WE# Pulse Width High
AVD# Disable to WE# Disable
CE# low to RDY valid
–
ns
Document Number: 002-01101 Rev. *I
Page 56 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.14 Latched Asynchronous Write Mode (AVD# Toggling)
Case 1 : AVD# is toggled every write cycle
CL
K
VIL or VIH
tCH1
tCS
CE#
tAVDP
AVD#
tVLWH
tWEA
OE#
tWPH
ig
n
tWP
es
WE#
tWC
D
tDH
WD
DQ15-DQ0
tAH
VA2
fo
VA1
VA
Amax-A0
d
tCR
Notes
1. VA = Valid Read Address, WD = Write Data.
Hi-Z
N
ot
R
ec
2. Addresses latched by rising edge of AVD#.
de
Hi-Z
tCEZ
om
m
en
RDY
rN
tAS
WD
ew
tDS
Document Number: 002-01101 Rev. *I
Page 57 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.15 Asynchronous Write Mode (AVD# Tied to CE#)
Case 2 : AVD# is synchronized with CE#
CLK
VIL or VIH
tCH2
tCS
CE#
AVD#
OE#
tWPH
ig
n
tWP
WE#
tDH
WD
D
WD
DQ15-DQ0
es
tDS
tAHEH
tAWES
VA
rN
VA
Amax-A0
Hi-Z
Hi-Z
de
d
Notes
1. VA = Valid Read Address, WD = Write Data.
om
m
en
2. Addresses latched by falling edge of WE#.
11.9.4
tCEZ
fo
tCR
RDY
ew
tWC
Wait State Configuration Register Setup
Figure 11.16 Example of Programmable Wait States
ec
Data
D1
Rising edge of next
clock cycle following
last wait state triggers
next burst data
N
AVD#
ot
R
D0
Total number of clock cycles
following addresses being latched
OE#
1
2
3
4
5
7
6
CLK
0
1
2
3
4
5
6
7
Total number of clock edges following addresses being latched
Document Number: 002-01101 Rev. *I
Page 58 of 77
S29WS512R
S29WS256R, S29WS128R
Configuration
Register
Programmable Wait States
0000 =
0001 =
3rd
0010 =
4th
0011 =
5th
CR.13
0100 =
6th
CR.12
0101 =
CR.11
0110 =
7th
initial data is valid on the
10th
.
.
.
.
.
.
1011 =
13th
Reserved
ew
1111 =
ig
n
1000 =
es
9th
1100 =
rising CLK edge after addresses are latched
8th
0111 =
D
CR.14
rN
Figure 11.17 Latency with Boundary Crossing
AVD#
7E
7F
7F
d
7D
80
(stays high)
OE#,
CE#
83
ec
D124
D125
latency
tRACC
tRACC
latency
R
ot
N
Data
82
tRACC
tRACC
RDY
(Note 1)
RDY
(Note 2)
81
de
7C
om
m
en
Address
(hex)
CLK
fo
Address boundary occurs every 128 words, beginning at address
00007Fh: (0000FFh, 00017Fh, etc.) Address 000000h is also a boundary crossing.
D126
D127
D128
D129
D130
(stays low)
Notes
1. RDY active with data (CR.8 = 1 in the Configuration Register).
2. RDY active one clock cycle before data (CR.8 = 0 in the Configuration Register).
3. Figure shows the device not crossing a bank in the process of performing an erase or program.
Document Number: 002-01101 Rev. *I
Page 59 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.18 Latency with Boundary Crossing into Bank Performing Embedded Operation
Address boundary occurs every 128 words, beginning at address
00007Fh: (0000FFh, 00017Fh, etc.) Address 000000h is also a boundary crossing.
Address
(hex)
CLK
AVD#
7C
7D
7E
7F
7F
80
D127
00h
81
82
83
(stays high)
tRACC
RDY
(Note 1)
ig
n
tRACC
D126
00h
00h
00h
ew
D125
(stays low)
rN
OE#,
CE#
D124
D
Data
es
RDY
(Note 2)
2. RDY active one clock cycle before data (CR.8 = 0 in the Configuration Register).
fo
Notes
1. RDY active with data (CR.8 = 1 in the Configuration Register).
N
ot
R
ec
om
m
en
de
d
3. Figure shows the device crossing a bank in the process of performing an erase or program.
Document Number: 002-01101 Rev. *I
Page 60 of 77
S29WS512R
S29WS256R, S29WS128R
Figure 11.19 Back-to-Back Read/Write Cycle Timings
Last Cycle in
Program or
Sector Erase
Command Sequence
Read status (at least two cycles) in same bank
and/or array data from other bank
tWC
tRC
Begin another
write or program
command sequence
tRC
tWC
CE#
OE#
tOE
tOEH
ig
n
tGHWL
WE#
tWP
tACC
tDS
tOEZ
WD
rN
WA
25h
RD
ew
RD
tSR/W
RA
RA
SA555h
fo
Addresses
D
tDH
Data
es
tWPH
AVD#
om
m
en
tAAVDH
de
d
tAAVDS
N
ot
R
ec
Note
Breakpoints in waveforms indicate that system may alternately read array data from the non-busy bank while checking the status of the program or
erase operation in the busy bank.
Document Number: 002-01101 Rev. *I
Page 61 of 77
S29WS512R
S29WS256R, S29WS128R
Erase and Programming Performance
128 Kbyte
Sector Erase Time (7)
VCC
Typ (Note 1)
Max (Note 2)
0.8/1.3 (6)
3.5
32 Kbyte
VCC
0.35/0.6 (6)
2
128 Kbyte
ACC
0.8 / 1.3 (6)
3.5
32 Kbyte
ACC
VCC
(6)
Chip Erase Time (7)
ACC
0.35 / 0.6 (6)
2
78/126 (128 Mbit)
154/250 (128 Mbit)
155/251 (256 Mbit)
308/500 (256 Mbit)
308/500 (512 Mbit)
612/998 (512 Mbit)
78/126 (128 Mbit)
154/250 (128 Mbit)
155/251 (256 Mbit)
308/500 (256 Mbit)
308/500 (512 Mbit)
612/998 (512 Mbit)
VCC
130
400
Effective Word Programming Time using Program
Write Buffer
VCC
12.5
94
ACC
8
60
VCC
400
3000
ACC
256
1920
105 (128 Mbit)
210 (128 Mbit)
210 (256 Mbit)
420 (256 Mbit)
420 (512 Mbit)
840 (512 Mbit)
68 (128 Mbit)
136 (128 Mbit)
ACC
Blank Check
D
ew
om
m
en
Program Suspend/Program Resume (tPSL)
Excludes system level
overhead (Note 4)
s
Excludes system level
overhead (Note 4)
270 (256 Mbit)
538 (512 Mbit)
de
Erase Suspend/Erase Resume (tESL)
µs
rN
135 (256 Mbit)
269 (512 Mbit)
s
fo
Chip Programming Time
(using 32 word buffer)
d
VCC
Comments
(Note 3)
Single Word Program Time
Total 32-Word Buffer Programming Time
Unit
ig
n
Parameter
es
11.9.5
30
µs
30
µs
1
ms
Notes
1. Typical program and erase times assume the following conditions: 25°C, 1.8 V VCC, 10,000 cycles. Additionally, programming typically assumes a checkerboard
pattern.
2. Under worst case conditions of 90°C, VCC = 1.70 V, 100,000 cycles.
ec
3. In the pre-programming step of the Embedded Erase algorithm, all words are programmed to 00h before erasure.
R
4. System-level overhead is the time required to execute the bus-cycle sequence for the program command. See Table 12.1 on page 63 for further information on
command definitions.
ot
5. The device has a minimum erase and program cycle endurance of 100,000 cycles.
N
6. The first value is excluding pre-programming time, while the second value is inclusive of pre-programming time for the FFFFh pattern, with status polling rate as 400
ns.
7. The erase time is calculated from the time of issuing erase command to the completion of erase operation (indicated by status register).
Document Number: 002-01101 Rev. *I
Page 62 of 77
S29WS512R
S29WS256R, S29WS128R
12. Appendix
This section contains information relating to software control or interfacing with the flash device.
12.1
Command Definitions
Where appropriate, addresses are listed in both 16-bit word mode for the flash device address space and byte mode for the system
address space. The byte address is listed above the word address.
Table 12.1 Command Definitions (Sheet 1 of 2)
Bus Cycles (Notes 1–5)
4-35
(SA) AAA
Buffer to Flash
1
Chip Erase
2
Sector Erase
2
Status Register Read
2
Status Register Clear
1
Program Suspend (6)
1
XXX
Program Resume (6)
1
XXX
Erase Suspend (7)
1
XXX
Erase Resume (7)
1
Blank Check (14)
1
Sector Lock Range
(SA) AAA
4
(SA) 555
80
(SA) 555
(SA) AAA
(SA) AAA
(SA) PA (12)
ig
n
WC
Data
(SA) PA (13)
PD
SLA
61
es
(SA) 555
80
(SA) 555
(SA) AAA
(SA) AAA
70
(SA) 555
(SA) AAA
PD
10
30
(SA)
RR
71
(SA) 555
51
50
ec
XXX
R
(SA) AAA
(SA) 555
ot
3
(SA) AAA
29
(SA) 555
N
Sector Lock/Unlock
(SA) 555
25
(SA) 555
D
F0
Data
ew
Write Buffer Load (9)
XX
(SA) AAA
Data
Fourth
Addr
Byte
Word
rN
1
RD
Third
Addr
Byte
Word
d
Reset
Data
RA
Addr
Byte
Word
om
m
en
1
Addr
Byte
Word
fo
Command Sequence
Read
Second
de
Cycles
First
AAA
555
AAA
555
B0
30
33
555
60
AAA
555
60
AAA
60
SLA
60
60
SLA
61
ID/CFI
ID/CFI Command Definitions
(SA) XAA
ID/CFI Entry (8) (11)
1
ID/CFI Read
1
(SA) RA
ID/CFI Exit
1
XXX
(SA) X55
90 or 98
data
F0
Configuration Command Definitions
Document Number: 002-01101 Rev. *I
Page 63 of 77
S29WS512R
S29WS256R, S29WS128R
Table 12.1 Command Definitions (Sheet 2 of 2)
Bus Cycles (Notes 1–5)
Addr
Byte
Word
Data
(SA) AAA
Configuration Register
Entry (8) (11)
1
Write Buffer Load
3
Buffer to Flash
(Configuration Register)
1
Configuration Register
Read
1
(SA)
X00(SA) X00
RR
Configuration Register Exit
1
XXX
F0
Addr
Byte
Word
Third
Addr
Byte
Word
Data
(SA) AAA
25
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA)
X00(SA) X00
0
40
(SA) 555
(SA) AAA
25
(SA) 555
(SA) AAA
1
(SA) XXX
SSR Lock Exit
1
XXX
(SA) 555
(SA) AAA
29
(SA) 555
SSR Lock Read
PD
D
1
(SA) AAA
RR
F0
0
ew
Buffer to Flash
(SA) PA (13)
29
(SA) 555
(SA) 00
FE
(SA) PA (12)
PD
rN
3
PD
fo
Write Buffer Load (9)
Data
d
SSR Lock
1
Data
D0
(SA) 555
SSR Lock Command Definitions
SSR Lock Entry (8) (11)
Fourth
Addr
Byte
Word
ig
n
Configuration Register
Command Sequence
Second
es
Cycles
First
Write Buffer Load (9)
88
de
(SA) AAA
1
om
m
en
Secure Silicon Region Entry
(8) (11)
(SA) 555
(SA) AAA
4-35
(SA) 555
(SA) AAA
25
1
Secure Silicon Region Read
1
(SA) RA
RD
Secure Silicon Region Exit
1
XXX
F0
ec
(SA) 555
(SA) 555
(SA) AAA
WC
29
Buffer to Flash
R
Secure Silicon Region
Secure Silicon Region Command Definitions
N
ot
Legend
X = Don’t care
RA = Address of the location to be read.
RD = Read Data from location RA during read operation.
RR = Read Register value
PA = Address of the memory location to be programmed.
PD = Data to be programmed at location PA.
BA = Address bits sufficient to select a bank
SA = Address bits sufficient to select a sector
WBL = Write Buffer Location. Address must be within the same write buffer page as PA.
WC = Word Count. Number of write buffer locations to load minus 1.
Notes
1. See Section 8., Device Operations on page 23 for description of bus operations.
2. All values are in hexadecimal. All addresses are shown both in terms of system viewpoint byte address above the flash viewpoint word address where system address
a-max to a1 is connected to flash A-max to A0. Low order address bit patterns in commands, that are below the bits that specify (BA) or (SA), are relevant only on
system address signals a11 to a1 i.e. flash address signals A10 to A0. In commands using address bit patterns as part of the command recognition the address bits
above system a11 (flash A10) and below (BA) or (SA) are don’t care. System a0 is also don’t care because it is not connected to the flash address inputs.
3. Except for the following, all bus cycles are write cycle: read cycle during Read, ID/CFI Read (Manufacturing ID, Device ID, Indicator Bits), Configuration Register read,
Secure Silicon Region Read, SSR Lock Read, and 2nd cycle of Status Register Read
4. Data bits DQ15–DQ8 are don’t care in command sequences, except for RD, PD, and WD.
5. Writing incorrect address and data values or writing them in the improper sequence may place the device in an unknown state. The system must write the reset
command to return the device to reading array data
Document Number: 002-01101 Rev. *I
Page 64 of 77
S29WS512R
S29WS256R, S29WS128R
6. The Program Resume command is valid only during the Program Suspend mode/state.
7. The Erase Resume command is valid only during the Erase Suspend mode/state.
8. Command is valid when all banks are ready to read array data.
9. The total number of cycles in the command sequence is determined by the number of words written to the write buffer.
10. ACC must be at VHH during the entire operation of this command
11. Entry commands are needed to enter a specific mode to enable instructions only available within that mode.
12. Must be the lowest word address of the words being programmed within the 32 word write buffer page. This is not necessarily the lowest address of the page. Data
words are loaded into the write page buffer in sequential order from lowest to highest address.
13. Subsequent addresses must fall within the same Sector and Page as the initial starting address.
14. Blank Check is only functional in Asynchronous Read mode (Configuration Register - CR[15] = 1).
12.2
Device ID and Common Flash Memory Interface Address Map
es
ig
n
The Device ID fields occupy the first 32 bytes of address space followed by the Common Flash Interface data structure. The
Common Flash Interface (CFI) specification defines a standardized data structure containing device specific parameter, structure,
and feature set information, which allows vendor-specified software algorithms to be used for entire families of devices. Software
support can then be device-independent, JEDEC ID-independent, and forward- and back-ward-compatible for the specified flash
device families. Flash driver software can be standardized for long-term compatibility.
N
ot
R
ec
om
m
en
de
d
fo
rN
ew
D
This device enters the ID/CFI mode when the system writes the ID/CFI Query command, 90h or 98h, to address (SA)55h any time
all banks are in read mode (the CU is in Idle State). The system can then read ID and CFI information at the addresses, within the
selected sector, given in the following tables. To terminate reading ID/CFI, the system must write the reset command.
Document Number: 002-01101 Rev. *I
Page 65 of 77
S29WS512R
S29WS256R, S29WS128R
(SA) + 00h
(SA) + 01h
(SA) + 02h
WS256R
WS128R
Description
0001h
(WS) 007Eh
Spansion Manufacturer ID
Device ID, Word 1 Extended ID address code. Indicates
(WS) 007Eh (WS) 007Eh an extended two byte device ID is located at byte
address 1Ch and 1Eh.
(SA) + 02h
(SA) + 04h
00FFh
Reserved
(SA) + 03h
(SA) + 06h
00FFh
Revision ID
Reserved
(SA) + 04h
(SA) + 08h
00FFh
(SA) + 05h
(SA) + 0Ah
00FFh
Reserved
(SA) + 06h
(SA) + 0Ch
00FFh
ID Version
(SA) + 07h
(SA) + 0Eh
00BFh
Reserved
(SA) + 08h
(SA) + 10h
00FFh
Reserved
(SA) + 09h
(SA) + 12h
00FFh
Reserved
(SA) + 0Ah
(SA) + 14h
00FFh
Reserved
(SA) + 0Bh
(SA) + 16h
00FFh
Reserved
ew
00FF
Lower Software Bits
om
m
en
Bit 3-2 - Command Set Support
11 = Reserved
10 = Reserved
01 = Reduced Command Set
00 = Old Command Set
fo
Bit 1 - DQ Polling Support
1 = DQ bits polling supported
0 = DQ bits polling not supported
d
(SA) + 18h
rN
Bit 0 - Status Register Support
1 = Status Register Supported
0 = Status register not Supported
(SA) + 0Ch
ig
n
(SA) + 00h
DATA
WS512R
es
Byte Offset
Address
D
Word Offset
Address
de
Device Identification
Table 12.2 ID/CFI Data (Sheet 1 of 5)
Bit 4-F - 00Fh - Reserved
(SA) + 1Ah
00FFh
(SA) + 0Eh
(SA) + 1Ch
0025h
(SA) + 0Fh
(SA) + 1Eh
0003h
R
CFI
0027h
High Order Device ID, Word 2
0003h
0003h
Low Order Device ID, Word 3
CFI Query Identification String
(SA) + 20h
(SA) + 11h
(SA) + 22h
(SA) + 12h
(SA) + 24h
0059h
(SA) + 13h
(SA) + 26h
0002h
(SA) + 14h
(SA) + 28h
0000h
(SA) + 15h
(SA) + 2Ah
0040h
(SA) + 16h
(SA) + 2Ch
0000h
(SA) + 17h
(SA) + 2Eh
0000h
(SA) + 18h
(SA) + 30h
0000h
(SA) + 19h
(SA) + 32h
0000h
(SA) + 1Ah
(SA) + 34h
0000h
N
ot
(SA) + 10h
Document Number: 002-01101 Rev. *I
Upper Software Bits
Reserved
0026h
ec
(SA) + 0Dh
0051h
0052h
Query Unique ASCII string “QRY”
Primary Algorithm Command Set (Spansion = 0002h)
Address for Primary Extended Table
Alternate Algorithm Command Set (00h = none exists)
Address for Secondary Algorithm extended Query Table
(00h = none exists)
Page 66 of 77
S29WS512R
S29WS256R, S29WS128R
Table 12.2 ID/CFI Data (Sheet 2 of 5)
Word Offset
Address
Byte Offset
Address
DATA
WS512R
WS256R
WS128R
Description
System Interface String
(SA) + 36h
VCC Logic Supply Minimum Program/Erase
or Write voltage
0017h
D7-D4: Volt
D3-D0: 100 millivolt
VCC Logic Supply Maximum Program/Erase
or Write voltage
(SA) + 1Ch
(SA) + 38h
0019h
(SA) + 1Dh
(SA) + 3Ah
0085h
VPP [Programming] Supply Minimum Program/Erase
voltage (00h = no VPP pin present)
(SA) + 1Eh
(SA) + 3Ch
0095h
VPP [Programming] Supply Maximum Program/Erase
voltage (00h = no VPP pin present)
(SA) + 1Fh
(SA) + 3Eh
0008h
Typical Word Programming Time per single word 2N s
(e.g. < or = 32 s)
(SA) + 20h
(SA) + 40h
0009h
Typical Program Time for programming the complete
buffer 2N s (e.g. < or = 256 s) (00h = not supported)
(SA) + 21h
(SA) + 42h
000Ah
Typical Time for Sector Erase 2N s
(SA) + 22h
(SA) + 44h
(SA) + 23h
(SA) + 46h
0003h
Max. Program Time per single word
[2N times typical value]
(SA) + 24h
(SA) + 48h
0003h
Max. Program Time using buffer [2N times typical value]
(SA) + 25h
(SA) + 4Ah
0003h
(SA) + 26h
(SA) + 4Ch
0003h
ig
n
es
D
ew
rN
Typical Time for full chip erase 2N s
(00h = not supported)
d
fo
0011h
Max. Time for sector erase [2N times typical value]
de
0012h
om
m
en
0013h
D7-D4: Volt
D3-D0: 100 millivolt
Max. Time for full chip erase [2N times typical value]
(00h = not supported)
N
ot
R
ec
Common Flash Interface
(SA) + 1Bh
Document Number: 002-01101 Rev. *I
Page 67 of 77
S29WS512R
S29WS256R, S29WS128R
Table 12.2 ID/CFI Data (Sheet 3 of 5)
Word Offset
Address
Byte Offset
Address
DATA
WS512R
WS256R
WS128R
Description
Device Geometry Definition
(SA) + 27h
(SA) + 4Eh
001Ah
0019h
0018h
Device Size = 2N byte
Flash Device Interface
0h = x8
1h = x16
2h = x8/x16
3h = x32 [lower byte]
(SA) + 28h
(SA) + 50h
0001h
(SA) + 29h
(SA) + 52h
0000h
[upper byte] (00h = not supported)
Max. number of bytes in multi-byte buffer write = 2N
[lower byte]
(SA) + 2Bh
(SA) + 56h
0000h
0002h Top or Bottom
00FEh
007Eh
(Top Boot)
(Top Boot)
(SA) + 5Ah
0003h (Bottom Boot)
(SA) + 5Eh
(SA) + 30h
(SA) + 60h
000h
(Bottom Boot)
0000h
(Bottom Boot)
0000h (Top Boot or Uniform)
0080h (Bottom Boot)
0000h (Bottom Boot)
0002h (Top Boot or Uniform)
0003h
00FEh
R
(SA) + 62h
000h (Top
Boot)
(SA) + 64h
0003h
(Top Boot)
00FEh
007Eh
(Bottom
Boot)
(Bottom
Boot)
[lower byte] - Sector Size in bytes divided by 256
(n [bytes]h = sector size / 256)
[upper byte]
00FFh (Uniform)
N
ot
(Bottom Boot)
(SA) + 32h
0003h
(Top Boot)
ec
(Top Boot)
(SA) + 31h
[upper byte]
de
(SA) + 2Fh
0000h
(Top Boot or Uniform)
om
m
en
Common Flash Interface
(SA) + 5Ch
0001h
(Top Boot or
Uniform)
Erase Block Region 1 information
[lower byte] - Number of Erase sectors minus one, of
identical size within the Erase Block Region.
Example:
00h = 1 sector;
01h = 2 sectors
rN
007Fh
(Uniform)
00FFh (Uniform)
(SA) + 2Eh
es
0001h Uniform
(SA) + 58h
fo
(SA) + 2Dh
Number of Erase Block Regions within device
(Number of regions within the device containing one or
more contiguous Erase Blocks of the same size)
d
(SA) + 2Ch
[upper byte] (00h = not supported)
ig
n
0006h
D
(SA) + 54h
ew
(SA) + 2Ah
0000h
(Top Boot)
0001h
(Bottom Boot)
0000h
(Top Boot)
Erase block Region 2 Information
0000h (Bottom Boot)
00FFh
(Uniform)
(SA) + 33h
(SA) + 34h
(SA) + 66h
(SA) + 68h
0000h (Bottom Boot or Uniform)
0080h (Top Boot)
0002h (Bottom Boot)
0000h (Top Boot or Uniform)
Document Number: 002-01101 Rev. *I
Page 68 of 77
S29WS512R
S29WS256R, S29WS128R
Table 12.2 ID/CFI Data (Sheet 4 of 5)
Word Offset
Address
Byte Offset
Address
DATA
WS512R
WS256R
WS128R
Description
Primary Algorithm-Specific Extended Query
(SA) + 40h
(SA) + 80h
0050h
(SA) + 41h
(SA) + 82h
0052h
(SA) + 42h
(SA) + 84h
0049h
(SA) + 43h
(SA) + 86h
0031h
Major CFI version number, ASCII
(SA) + 44h
(SA) + 88h
0034h
Minor CFI version number, ASCII
0020h
Address Sensitive Unlock (Bits 1-0):
00b = Required
01b = Not required
Process Technology (Bits 5-2)
0011b = 130 nm Floating-Gate Technology
0100b = 110 nm MirrorBit Technology
0101b = 90 nm Floating-Gate Technology
0110b = 90 nm MirrorBit Technology
1000b = 65 nm MirrorBit Technology
ig
n
(SA) + 8Ah
(SA) + 8Ch
0002h
(SA) + 47h
(SA) + 8Eh
0001h
(SA) + 48h
(SA) + 90h
0000h
0= Not supported
1 = To Read Only
2 = To Read & Write
rN
(SA) + 46h
ew
Erase Suspend
D
es
(SA) + 45h
Query Unique ASCII string “PRI”
Sector Protection per Group
de
Sector Temporary Unprotect
00h = Not Supported
(SA) + 92h
(SA) + 4Ah
(SA) + 94h
(SA) + 4Bh
(SA) + 96h
0009h
0020h
0010h
0008h
ec
(SA) + 49h
om
m
en
01h = Supported
0001h
(SA) + 4Dh
(SA) + 4Eh
(SA) + 98h
0002h (WS-R)
N
(SA) + 4Ch
ot
R
Common Flash Interface
d
fo
0 = not Supported
X = number of sectors in per group
(SA) + 9Ah
(SA) + 9Ch
Sector Protect/Unprotect scheme
08h = Advanced Sector Protection
09h = Single-Sector Lock + Sector Lock Range
Simultaneous Operations
Number of Sectors in all banks except Boot Bank
Burst Mode Type
00h = Not Supported
01h = Supported
Page Mode Type
00h = Not Supported
01h = 4-Word Page
02h = 8-Word Page
04h = 16-Word Page
0085h
ACC (Acceleration) Supply Minimum
00h = Not Supported
D7-D4: Volt
D3-D0: 100 millivolt
0095h
ACC (Acceleration) Supply Maximum
00h = Not Supported
D7-D4: Volt
D3-D0: 100 millivolt
Top/Bottom Sector Flag
0003h (Top Boot)
(SA) + 4Fh
(SA) + 9Eh
0002h (Bottom Boot)
0000h (Uniform or No Boot)
00h = No Boot
01h = Dual Boot
02h = Bottom boot
03h = Top boot
04h = Uniform Bottom Boot
05h = Uniform Top Boot;
Program Suspend
(SA) + 50h
(SA) + A0h
Document Number: 002-01101 Rev. *I
0001h
00h = Not Supported
01h= Supported
Page 69 of 77
S29WS512R
S29WS256R, S29WS128R
Table 12.2 ID/CFI Data (Sheet 5 of 5)
Word Offset
Address
(SA) + 51h
Byte Offset
Address
DATA
WS512R
WS256R
(SA) + A2h
Description
Unlock Bypass
0000h
00h = Not Supported
(SA) + A4h
0008h
(SA) + 53h
(SA) + A6h
000Eh
Hardware Reset Low Time-out until reset is completed
during an embedded algorithm - Maximum 2N ns
(e.g. 10 s => n = E)
(SA) + 54h
(SA) + A8h
000Eh
Hardware Reset Low Time-out until reset is completed
not during an embedded algorithm - Maximum 2N ns
(e.g. 10 s => n = E)
(SA) + 55h
(SA) + AAh
0005h
Erase Suspend Time-out Maximum 2N µs
(SA) + 56h
(SA) + ACh
0005h
Program Suspend Time-out Maximum 2N µs
(SA) + 57h
(SA) + AEh
0010h
Bank Organization: X= Number of banks
000Bh
(Bottom
Boot)
(SA) + B0h
0020h
0010h
0008h
(Top Boot or
Uniform)
(Top Boot or
Uniform)
(Top Boot or
Uniform)
Bank 0 Region Information.
X= Number of sectors in bank
ew
(SA) + 58h
es
(Bottom
Boot)
D
(Bottom Boot)
rN
0013h
ig
n
(SA) + 52h
Secure Silicon Region (Customer SSR Area) Size 2N
bytes
0023h
(SA) + B2h
0020h
0010h
0008h
Bank 1 Region Information.
X= Number of sectors in bank
(SA) + 5Ah
(SA) + B4h
0020h
0010h
0008h
Bank 2 Region Information.
X= Number of sectors in bank
(SA) + 5Bh
(SA) + B6h
0020h
0010h
0008h
(SA) + 5Ch
(SA) + B8h
0020h
(SA) + 5Dh
(SA) + BAh
0020h
(SA) + 5Eh
(SA) + BCh
0020h
(SA) + 5Fh
(SA) + BEh
0020h
(SA) + 60h
(SA) + C0h
0020h
(SA) + 61h
(SA) + C2h
(SA) + 62h
om
m
en
de
d
fo
(SA) + 59h
Bank 3 Region Information.
X= Number of sectors in bank
0008h
Bank 4 Region Information.
X= Number of sectors in bank
0010h
0008h
Bank 5 Region Information.
X= Number of sectors in bank
0010h
0008h
Bank 6 Region Information.
X= Number of sectors in bank
0010h
0008h
Bank 7 Region Information.
X= Number of sectors in bank
0010h
0008h
Bank 8 Region Information.
X= Number of sectors in bank
0020h
0010h
0008h
Bank 9 Region Information.
X= Number of sectors in bank
(SA) + C4h
0020h
0010h
0008h
Bank 10 Region Information.
X= Number of sectors in bank
(SA) + 63h
(SA) + C6h
0020h
0010h
0008h
Bank 11 Region Information.
X= Number of sectors in bank
(SA) + 64h
(SA) + C8h
0020h
0010h
0008h
Bank 12 Region Information.
X= Number of sectors in bank
(SA) + 65h
(SA) + CAh
0020h
0010h
0008h
Bank 13 Region Information.
X= Number of sectors in bank
(SA) + 66h
(SA) + CCh
0020h
0010h
0008h
Bank 14 Region Information.
X= Number of sectors in bank
(SA) + 67h
ot
R
ec
0010h
N
Common Flash Interface
WS128R
(SA) + CEh
0023h
0013h
000Bh
(Top Boot)
(Top Boot)
(Top Boot)
0020h
(Bottom Boot
or Uniform)
Document Number: 002-01101 Rev. *I
0010h
0008h
(Bottom
Boot or
Uniform)
(Bottom
Boot or
Uniform)
Bank 15 Region Information.
X= Number of sectors in bank
Page 70 of 77
S29WS512R
S29WS256R, S29WS128R
13. Revision History
Section
Description
Revision 01 (March 28, 2007)
Initial release
Revision 02 (April 24, 2007)
Device ID and Common Flash Memory
Interface Address Map
Updated device ID for word offset 03H to 00FFh
Revision 03 (March 19, 2008)
Changed Typical value from 4.7µs to 9.6 µs
Effective Write Buffer Programming
(VACC) Per Byte
Changed Typical value from 2.5 µs to 6 µs
Typical Program & Erase Time
Change Sector Erase (32 KByte Sector) from 0.3s to 0.355s
Product Ordering Information
Added package, boot configuration and frequency information to ordering information
es
ig
n
Effective Write Buffer Programming
(VCC) Per Byte
Removed WS2901GR
D
Valid Combination Table
Added model # 00 and 02 for boot configuration
Renamed VPP to ACC
Input/Output Descriptions & Logic
Symbol
Removed A/D mux from I/O description
Pin Out Diagram
Removed WP# pin
Synchronous Read Wait State Table
Reformatted the frequency description
rN
ew
Block Diagram
fo
Removed Address multiplexing wording from AVD#
de
d
Added 83 MHz value for ICCB and ICC5
DC Characterization
Changed all 108 MHz to 104 MHz
om
m
en
Changed VLKO Min/Max from 1.3V/1.4V to 1.0V/1.1V
Synchronous Burst: Changed tBDH min from 5 ns for 66 MHz/83 MHz to 3 ns, 2.5 ns for 108 MHz/
133 Mhz to 2 ns for 104 Mhz/133 MHz
Asynchronous Read: Changed tWEA from 4 ns to tCLK
AC Characterization
Asyncronous Write: Change tESL and tPSL from 20 µs to 30 µs
ec
Added note 3 on AVD requirement to subsequent CLK cycle
Corrected Secure Silicon Region size to 512 Bytes
VCC Power Up
N
ot
Synchronous Burst Read Mode
R
Product Overview
Deleted wait state 2 from Wait State Tables Figure 7.1
Changed 256 Byte Boundary Crossing Latency additional wait states up to 2
Changed tVCS value to 300 µs
Changed VIOS value to 300 µs
Added tRPH to timing diagram
Wait State Configuration Register Setup
Corrected typo in table to wait state 13
Device ID and CFI Table
General update CFI values
Revision 04 (March 25, 2008)
Device ID and Common Flash Memory
Interface Table
Corrected CFI setting for 4Ah
Revision 05 (October 27, 2008)
Global
Removed 133 MHz speed option
Ordering Information & Valid
Combination Table
Added Low-Halogen Lead Free package option
Flash Memory Array
Updated table 6.6 to correct sector range for bank 16 of S29WS512R
Table 7.1 Device Bus Operation
Deleted Asynchronous Write (WE# latched Address)
Document Number: 002-01101 Rev. *I
Removed Standard Lead Free package option
Page 71 of 77
S29WS512R
S29WS256R, S29WS128R
Section
Description
Write Buffer Programming Command
Changed to word offset
AC Characterization
Changed Clock High or Low time (tCLK H/L) to .45 tCLK
Program/Erase Operation
Deleted 7.9.2 Programming of a previously programmed location
Deleted ACC mode from single word programming
Changed 32-word buffer programming performance VCC mode 400 µs, ACC mode to 256 µs
Change Chip Programming Time for VCC mode as below:
• 128 Mbit 105s typical 210s max
• 256 Mbit 210s typical 420s max
• 512 Mbit 420s typical 840s max
Changed sector erase time as follows:
• 128 Kbyte VCC: 0.8/1.3 (Note 6) (typ), 3.5/5.5 (max)
• 32 Kbyte VCC: 0.35/0.6 (Note 6) (typ), 2.0/3.5 (max)
• 128 Kbyte ACC: 0.8/1.3 (Note 6) (typ), 3.5/5.5 (max)
• 32 Kbyte ACC: 0.35/0.6 (Note 6) (typ), 2.0/3.5 (max)
Updated chip erase time (both VCC and VPP) as follows:
es
ig
n
Program and Erase Performance
rN
ew
D
• WS128R: 78/126 s (typ), 154/250 s (max)
• WS256R: 155/251 s (typ), 308/500 s (max)
• WS512R: 308/500 s (typ), 612/998 s (max)
Added Note 6 to state, The first value is excluding pre-programming time, while the second value is
inclusive of pre-programming for the FFFFh pattern, with status polling rate as 400 ns (typ).
fo
Added Note 7 to state, The erase time is calculated from the time of issuing erase command to the
completion of erase operation (indicated by status register).
Revision 06 (February 27, 2009)
Remove 1G product option
Ordering Information and Valid
Combinations
Add additional model numbers for uniform boot, 1 and 2CEs
om
m
en
de
d
Global
Device Operation
Blank Check Command functional in Asynchronous Read Mode only
DC Characteristics
Change ICCB for 83 MHz 16word burst to 26 mA
Effect Word Programming time using Write Buffer change to 12.5 µs for VCC mode and 8 µs for ACC
mode
Programming Performance
R
Ordering Information and Valid
Combinations
ec
Revision 07 (May 7, 2009)
VCC Power Up
N
ot
Input/Output Descriptions & Logic
Symbol
Device ID and Common Flash Memory
Interface Address Map
Removed model numbers 10, 30, 50
Input/Output Descriptions table – Updated ACC description
Removed tRH from table
ID/CFI Data table – Updated (SA) + 51h description
Revision 08 (June 1, 2010)
Sector Lock Range Command
Clarified Sector Lock Range command behavior
Revision 09 (September 19, 2011)
Global
Document Number: 002-01101 Rev. *I
Added product obsolescence information
Page 72 of 77
S29WS512R
S29WS256R, S29WS128R
Document History Page
Document Title: S29WS512R, S29WS256R, S29WS128R 512/256/128 Mb (32/16/8M x 16 bit), 1.8 V, S29WS-R MirrorBit® Flash
Document Number: 002-01101
Rev.
ECN No.
Orig. of
Change
Submission
Date
**
WIOB
03/28/2007
Initial release
*A
WIOB
04/24/2007
Device ID and Common Flash Memory Interface Address Map: Updated
device ID for word offset 03H to 00FFh
Description of Change
es
ig
n
Effective Write Buffer Programming (VCC) Per Byte: Changed Typical value
from 4.7µs to 9.6 µs
Effective Write Buffer Programming (VACC) Per Byte: Changed Typical value
from 2.5 µs to 6 µs
Typical Program & Erase Time: Change Sector Erase (32 KByte Sector) from
0.3s to 0.355s
Product Ordering Information: Added package, boot configuration and frequency information to ordering information
D
Valid Combination Table: Removed WS2901GR
ew
Added model # 00 and 02 for boot configuration
Block Diagram: Renamed VPP to ACC
fo
rN
Input/Output Descriptions & Logic Symbol: Removed A/D mux from I/O
description
Removed Address multiplexing wording from AVD#
̶
*B
om
m
en
de
d
Pin Out Diagram: Removed WP# pin
Synchronous Read Wait State Table: Reformatted the frequency description
DC Characterization: Added 83 MHz value for ICCB and ICC5 Changed all
108 MHz to 104 MHz
Changed VLKO Min/Max from 1.3V/1.4V to 1.0V/1.1V
03/19/2008
R
ec
WIOB
AC Characterization: Synchronous Burst: Changed tBDH min from 5 ns for 66
MHz/83 MHz to 3 ns, 2.5 ns for 108 MHz/133 Mhz to 2 ns for 104 Mhz/133
MHz
Asynchronous Read: Changed tWEA from 4 ns to tCLK
Asyncronous Write: Change tESL and tPSL from 20 µs to 30 µs
ot
Added note 3 on AVD requirement to subsequent CLK cycle
N
Product Overview: Corrected Secure Silicon Region size to 512 Bytes
Synchronous Burst Read Mode: Deleted wait state 2 from Wait State Tables
Figure 7.1Changed 256 Byte Boundary Crossing Latency additional wait
states up to 2
VCC Power Up: Changed tVCS value to 300 µs
Changed VIOS value to 300 µs
Added tRPH to timing diagram
Wait State Configuration Register Set-up: Corrected typo in table to wait state
13
*C
̶
WIOB
Document Number: 002-01101 Rev. *I
03/25/2008
Device ID and Common Flash Memory Interface Table: Corrected CFI setting
for 4Ah
Page 73 of 77
S29WS512R
S29WS256R, S29WS128R
Document History Page (Continued)
Document Title: S29WS512R, S29WS256R, S29WS128R 512/256/128 Mb (32/16/8M x 16 bit), 1.8 V, S29WS-R MirrorBit® Flash
Document Number: 002-01101
Rev.
ECN No.
Orig. of
Change
Submission
Date
Description of Change
̶
WIOB
10/27/2008
Change Chip Programming Time for VCC mode as below:
• 128 Mbit 105s typical 210s max
• 256 Mbit 210s typical 420s max
• 512 Mbit 420s typical 840s max
Changed sector erase time as follows:
de
d
fo
*D
rN
ew
D
es
ig
n
Global: Removed 133 MHz speed option
Ordering Information & Valid Combination Table: Added Low-Halogen Lead
Free package option
Removed Standard Lead Free package option
Flash Memory Array: Updated table 6.6 to correct sector range for bank 16 of
S29WS512R
Table 7.1 Device Bus Operation: Deleted Asynchronous Write (WE# latched
Address)
Write Buffer Programming Command: Changed to word offset
AC Characterization: Changed Clock High or Low time (tCLK H/L) to .45 tCLK
Program/Erase Operation: Deleted 7.9.2 Programming of a previously programmed location
Program and Erase Performance: Deleted ACC mode from single word programming
Changed 32-word buffer programming performance VCC mode 400 µs, ACC
mode to 256 µs
N
ot
R
ec
om
m
en
• 128 Kbyte VCC: 0.8/1.3 (Note 6) (typ), 3.5/5.5 (max)
• 32 Kbyte VCC: 0.35/0.6 (Note 6) (typ), 2.0/3.5 (max)
• 128 Kbyte ACC: 0.8/1.3 (Note 6) (typ), 3.5/5.5 (max)
• 32 Kbyte ACC: 0.35/0.6 (Note 6) (typ), 2.0/3.5 (max)
Updated chip erase time (both VCC and VPP) as follows:
̶
WIOB
*E
*F
̶
WIOB
Document Number: 002-01101 Rev. *I
• WS128R: 78/126 s (typ), 154/250 s (max)
• WS256R: 155/251 s (typ), 308/500 s (max)
• WS512R: 308/500 s (typ), 612/998 s (max)
Added Note 6 to state, The first value is excluding pre-programming time,
while the second value is inclusive of pre-programming for the FFFFh pattern,
with status polling rate as 400 ns (typ).
Added Note 7 to state, The erase time is calculated from the time of issuing
erase command to the completion of erase operation (indicated by status register).
02/27/2009
Global: Remove 1G product option
Ordering Information and Valid Combinations: Add additional model numbers
for uniform boot, 1 and 2CEs
Device Operation: Blank Check Command functional in Asynchronous Read
Mode only
DC Characteristics: Change ICCB for 83 MHz 16word burst to 26 mA
Programming Performance: Effect Word Programming time using Write Buffer
change to 12.5 µs for VCC mode and 8 µs for ACC mode
05/07/2009
Ordering Information and Valid Combinations: Removed model numbers 10,
30, 50
Input/Output Descriptions & Logic Symbol: Input/Output Descriptions table –
Updated ACC description
VCC Power Up: Removed tRH from table
Device ID and Common Flash Memory Interface Address Map: ID/CFI Data
table – Updated (SA) + 51h description
Page 74 of 77
S29WS512R
S29WS256R, S29WS128R
Document History Page (Continued)
Document Title: S29WS512R, S29WS256R, S29WS128R 512/256/128 Mb (32/16/8M x 16 bit), 1.8 V, S29WS-R MirrorBit® Flash
Document Number: 002-01101
Rev.
ECN No.
Orig. of
Change
*G
̶
Submission
Date
Description of Change
06/01/2011
Sector Lock Range Command: Clarified Sector Lock Range command behavior
̶
WIOB
18/19/2011
Global: Added product obsolescence information
*I
4953774
WIOB
10/09/2015
Updated to Cypress template.
N
ot
R
ec
om
m
en
de
d
fo
rN
ew
D
es
ig
n
WIOB
*H
Document Number: 002-01101 Rev. *I
Page 75 of 77
S29WS512R
S29WS256R, S29WS128R
Sales, Solutions, and Legal Information
Worldwide Sales and Design Support
Cypress maintains a worldwide network of offices, solution centers, manufacturer’s representatives, and distributors. To find the office
closest to you, visit us at Cypress Locations.
Products
PSoC® Solutions
Automotive..................................cypress.com/go/automotive
psoc.cypress.com/solutions
Clocks & Buffers ................................ cypress.com/go/clocks
PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5LP
Interface......................................... cypress.com/go/interface
Cypress Developer Community
Lighting & Power Control............ cypress.com/go/powerpsoc
Community | Forums | Blogs | Video | Training
Memory........................................... cypress.com/go/memory
Technical Support
PSoC ....................................................cypress.com/go/psoc
ig
n
cypress.com/go/support
Touch Sensing .................................... cypress.com/go/touch
es
USB Controllers....................................cypress.com/go/USB
N
ot
R
ec
om
m
en
de
d
fo
rN
ew
D
Wireless/RF .................................... cypress.com/go/wireless
© Cypress Semiconductor Corporation, 2007-2015. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of
any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for
medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as
critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems
application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.
Any Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign),
United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of,
and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress
integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without
the express written permission of Cypress.
Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not
assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in life-support systems where
a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer
assumes all risk of such use and in doing so indemnifies Cypress against all charges.
Use may be limited by and subject to the applicable Cypress software license agreement.
Document Number: 002-01101 Rev. *I
®
®
®
®
Revised October 09, 2015
Page 76 of 76
Cypress , Spansion , MirrorBit , MirrorBit Eclipse™, ORNAND™, HyperBus™, HyperFlash™, and combinations thereof, are trademarks and registered trademarks of Cypress Semiconductor Corp.
All products and company names mentioned in this document may be the trademarks of their respective holders.