Four 32-KB sectors at the top or bottom of memory array
255/127 of 128-KB sectors
Programmable linear (8/16-word) with wrap around and
continuous burst read modes
Secured Silicon Sector region consisting of 128 words each
for factory and customer
10-year data retention (typical)
Cycling Endurance: 100,000 cycles per sector (typical)
RDY output indicates data available to system
Command set compatible with JEDEC (42.4) standard
Hardware sector protection via V
Handshaking by monitoring RDY
Offered Packages
– 44-ball FBGA (6.2 mm 7.7 mm 1.0 mm)
Low V
Write operation status bits indicate program and erase
operation completion
Suspend and Resume commands for Program and Erase
operations
Asynchronous program operation, independent of burst
control register settings
V
Support for Common Flash Interface (CFI)
write inhibit
CC
input pin to reduce factory programming time
PP
PP
pin
General Description
The Cypress S29VS256/128R and S29XS256/128R are MirrorBit® Flash products fabricated on 65nm process technology. These
burst mode Flash devices are capable of performing simultaneous read and write operations with zero latency on two separate
banks using multiplexed data and address pins. These products can operate up to 108 MHz and use a single V
that makes them ideal for the demanding wireless applications of today that require higher density, better performance, and lowered
power consumption. The S29VS256/128R operates in ADM mode, while the S29XS256/128R can operate in the AADM mode.
of 1.7 V to 1.95 V
CC
Performance Characteristics
Read Access Times
Speed Option (MHz)108
Max. Synch. Latency, ns (t
Max. Synch. Burst Access, ns (t
Max. Asynch. Access Time, ns (t
Max OE# Access Time, ns (t
IA)
OE
BACC)
)80
ACC
)15
72.34
6.75
Continuous Burst Read @ 108 MHz32 mA
Simultaneous Operation @ 108 MHz71 mA
Program/Erase30 mA
Standby Mode30 µA
Single Word Programming170 µs
Effective Write Buffer Programming (V
Word
Effective Write Buffer Programming (V
Word
Sector Erase (16 Kword Sector)350 ms
Sector Erase (64 Kword Sector)800 ms
Current Consumption (typical values)
Typical Program & Erase Times
) Per
CC
) Per
PP
14.1 µs
9 µs
Cypress Semiconductor Corporation•198 Champion Court•San Jose, CA 95134-1709•408-943-2600
Document Number: 002-00833 Rev. *L Revised May 27, 2019
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Contents
Ordering Information ............................................................ 3
Cypress Developer Community ......................................75
Technical Support ..........................................................75
.............46
Document Number: 002-00833 Rev. *L Page 2 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
1.Ordering Information
The ordering part number is formed by a valid combination of the following:
S29VS256RxxBHW 000
Packing Type
0 = Tray (standard; see note (Note 1))
3 = 13-inch Tape and Reel
Model Number
00 = Top
01 = Bottom
Temperature Range
W = Wireless (–25°C to +85°C)
Package Type and Material
B = Very Thin Fine-Pitch BGA, Low Halogen Lead (Pb)-Free Package
Speed Option (Burst Frequency)
0S = 83 MHz
AA = 104 MHz
AB = 108 MHz
Process Technology
R = 65 nm MirrorBit
Flash Density
256 = 256 Mb
128 = 128 Mb
Device Family
S29VS256R = 1.8 Volt-only Simultaneous Read/Write, Burst-Mode Address and Data
Multiplexed Flash Memory
S29XS256R = 1.8 Volt-only Simultaneous Read/Write, Burst-Mode Address Low,
Address High and Data Multiplexed Flash Memory
®
Technology
1.1Valid Combinations
Valid Combination list configurations are 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.
S29VS-R Valid Combinations (1)(2)
Base Ordering
Part Number
Speed Option
Package Type, Material,
and Temperature Range
Packing
Type
Model
Numbers
S29VS256R
S29VS128R
S29XS256R
0S, AA, ABBHW (3)0, 3 (1)00, 016.2 mm x 7.7 mm, 44-ball
S29XS128R
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.
3. Industrial Temperature Range is also available. For device specification differences, please refer to the Specification Supplement with Publication Number
S29VS_XS-R_SP.
Package Type
(2)
Document Number: 002-00833 Rev. *L Page 3 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
2.Input/Output Descriptions and Logic Symbol
Table 1 identifies the input and output package connections provided on the device.
CE#InputFlash Chip Enable. Asynchronous relative to CLK.
OE#InputOutput Enable. Asynchronous relative to CLK for the Burst mode.
WE#InputWrite Enable
V
CC
V
CCQ
V
SS
V
SSQ
NCNo ConnectNo Connected internally
RDYOutputReady. Indicates when valid burst data is ready to be read
CLKInput
AVD#Input
RESET#Input Hardware Reset. Low = device resets and returns to reading array data.
V
PP
RFUReservedReserved for future use
SupplyDevice Power Supply
SupplyInput/Output Power Supply (must be ramped simultaneously with VCC)
I/OGround
I/OInput/Output Ground
Input
Higher order address lines. Amax = A23 for VS256R, A22 for VS128R.
On the XS256R and XS128R, these inputs can be left unconnected in AADM mode.
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
Address Valid input. Indicates to device that the valid address is present on the address inputs
(address bits A15 – A0 are multiplexed, address bits Amax – A16 are address only).
V
= for asynchronous mode, indicates valid address; for burst mode, cause staring address to
IL
be latched on rising edge of CLK.
VIH = device ignores address inputs
Accelerated input.
At V
, accelerates programming; automatically places device in unlock bypass mode.
HH
, disables all program and erase functions.
At V
IL
Should be at V
for all other conditions.
IH
Document Number: 002-00833 Rev. *L Page 4 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
3.Block Diagram
V
CC
V
SS
V
SSQ
Figure 1. Simultaneous Operation Circuit
Bank Address
Y-Decoder
Amax–A0
X-Decoder
Bank Address
Y-Decoder
Bank 0
Bank 1
Latches and
Control Logic
Latches and
Control Logic
DQ15–DQ0
OE#
DQ15–DQ0
VPP
RESET#
WE#
CE#
AVD #
RDY
DQ15–DQ0
Amax–A0
Amax–A0
STATE
CONTROL
&
COMMAND
REGISTER
Amax–A0
Notes:
1. Amax = A23 for S29VS/XS256R, A22 for S29VS/XS128R.
This section shows the I/O designations and package specifications for the S29VS-R/S29XS-R.
4.1Related Documents
The following document contains information relating to the S29VS-R/S29XS-R devices. Click on the title or go to www.cypress.com,
or request a copy from your sales office.
Considerations for X-ray Inspection of Surface-Mounted Flash Integrated Circuits
4.2Special Handling Instructions for FBGA Package
Special handling is required for Flash Memory products in FBGA packages.
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.
4.2.144-Ball Very Thin Fine-Pitch Ball Grid Array, S29VS256R/S29XS256R/
S29VS128R/S29XS128R
Figure 2. 44-Ball Very Thin Fine-Pitch Ball Grid Array, Top View, Balls Facing Down
Notes:
1. Ball D7 is NC for S29VS128R.
2. Balls D7, C12, C4, D5, C10, D10, C11, D4 are NC for S29XS256R and S29XS128R
Document Number: 002-00833 Rev. *L Page 6 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
4.2.2VDJ044-44-Ball Very Thin Fine-Pitch Ball Grid Array, 6.2 mm x 7.7 mm
002-24745 **
Figure 3. VDJ044—44-Ball Very Thin Fine-Pitch Ball Grid Array
Document Number: 002-00833 Rev. *L Page 7 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
5.Product Overview
The S29VS/XS-R family is 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.
DeviceMbitsMbytesMwordsBanksMbytes / Bank
S29VS128R/S29XS128R12816882
S29VS256R/S29XS256R256321684
The Flash memory array is divided into banks. 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.
Each bank is divided into sectors. A sector is the minimum address range of data which can be erased to an all Ones state. Most of
the sectors are 128 KBytes each. Depending on the option ordered, either the top-4 sectors or the bottom-4 sectors are 32 KBytes
each. 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.
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.
The S29VS/XS 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.
Document Number: 002-00833 Rev. *L Page 8 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
6.Address Space Maps
There are five address spaces within each device:
A Non-Volatile Flash Memory Array used for storage of data that may be randomly accessed by asynchronous or burst read
operations.
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.
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.
In Read Mode, a Flash Memory Array bank may be directly read by asynchronous or burst accesses from the host system bus. The
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.
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.
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.
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.
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.
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.
Document Number: 002-00833 Rev. *L Page 9 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
6.1Data Address and 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 boundary. A Word is a group of 16 bits aligned
on a 16 bit boundary.
Throughout this document quantities of data are generally expressed in terms of byte units. Example: most sectors have 128
Kilo Bytes 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 a16 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. The host system byte address uses system address 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-maximum to a1 are connected to Flash A-maximum to A0
(the documentation convention here is to use lower case for system address signal numbering and upper case for Flash address
signals). 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
addresses expressed in bytes. This means the address patterns shown in Flash command tables have traditionally been shifted by
one bit to 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.
with
Document Number: 002-00833 Rev. *L Page 10 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
6.2Flash Memory Array
The Non-Volatile Flash Memory Array is organized as shown in the following tables. Devices are factory configured to have either all
uniform size sectors or four smaller sectors at either the top of the device.
Table 2. System Versus Flash View of Address
System Address Signalsa11a10a9a8a7a6a5a4a3a2a1a0
System Byte Address HexAAA
Binary Pattern101010101010
Flash Word Address Hex555
Flash Address SignalsA10A9A8A7A6A5A4A3A2A1A0
Table 3. S29VS/XS256R Sector and Memory Address Map (Top Boot)
Bank
Size
(Mbit)
32
Sector
Count
224128
31128
Sector Size
(KByte)
432
Bank
0SA000-SA031000000h–1FFFFFh000000h–3FFFFFh
1SA032–SA063
2SA064–SA095
3SA096–SA127
4SA128–SA159
5SA160–SA191
6SA192–SA223
7
Sector
Range
SA224–SA254E00000h–FEFFFFh1C00000h–1FDFFFFh
SA255FF0000h–FF3FFFh1FE0000h–1FE7FFFh
SA256FF4000h-FF7FFFh1FE8000h-1FEFFFFh
SA257FF8000h–FFBFFFh1FF0000h–1FF7FFFh
SA258FFC000h–FFFFFFh1FF8000h–1FFFFFFh
Address
Range (word)
…
…
…
…
…
…
Address
Range (byte)
…
…
…
…
…
…
Notes
Sector Starting
Address –
Sector Ending
Address
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-00833 Rev. *L Page 11 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 4. S29VS/XS256R Sector and Memory Address Map (Bottom Boot)
Bank
Size
(Mbit)
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.
32
Sector
Count
31128SA004–SA034010000h–1FFFFFh020000h–3FFFFFh
224128
Sector Size
(Kbyte)
432
Bank
Sector
Range
SA000000000h–003FFFh000000h–007FFFh
SA001004000h–007FFFh008000h–00FFFFh
0
1SA035–SA066
2SA067–SA098
3SA099–SA130
4SA131–SA162
5SA163–SA194
6SA195–SA226
7SA227–SA258E00000h–FFFFFFh 1C00000h–1FFFFFFh
SA002008000h–00BFFFh010000h–017FFFh
SA00300C000h–00FFFFh018000h–01FFFFh
Address
Range (word)
…
…
…
…
…
…
Address
Range (byte)
…
…
…
…
…
…
Notes
Sector Starting
Address –
Sector Ending
Address
Table 5. S29VS/XS128R Sector and Memory Address Map (Top Boot)
Bank
Size
(Mbit)
16
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.
Sector
Count
112128
15128
Sector Size
(KByte)
432
Bank
0SA000-SA015000000h–0FFFFFh000000h–1FFFFFh
1SA016–SA031
2SA032–SA047
3SA048–SA063
4SA064–SA079
5SA080–SA095
6SA096–SA111
7
Sector
Range
SA112–SA126700000h–7EFFFFhE00000h–FDFFFFh
SA1277F0000h–7F3FFFhFE0000h–FE7FFFh
SA1287F4000h-7F7FFFhFE8000h-FEFFFFh
SA1297F8000h–7FBFFFhFF0000h–FF7FFFh
SA1307FC000h–7FFFFFhFF8000h–FFFFFFh
Address
Range (word)
…
…
…
…
…
…
Address
Range (byte)
…
…
…
…
…
…
Notes
Sector Starting
Address –
Sector Ending
Address
Document Number: 002-00833 Rev. *L Page 12 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 6. S29VS/XS128R Sector and Memory Address Map (Bottom Boot)
Bank
Size
(Mbit)
16
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.
Sector
Count
15128SA004–SA018010000h–0FFFFFh020000h–1FFFFFh
112128
Sector Size
(Kbyte)
432
Bank
Sector
Range
SA000000000h–003FFFh000000h–007FFFh
SA001004000h–007FFFh008000h–00FFFFh
0
1SA019–SA034
2SA035–SA050
3SA051–SA066
4SA067–SA082
5SA083–SA098
6SA099–SA114
7SA115–SA130700000h–7FFFFFhE00000h–FFFFFFh
SA002008000h–00BFFFh010000h–017FFFh
SA00300C000h–00FFFFh018000h–01FFFFh
Address
Range (word)
…
…
…
…
…
…
Address
Range (byte)
…
…
…
…
…
…
Notes
Sector Starting
Address –
Sector Ending
Address
6.3Address/Data Interface
There are two options for connection to the address and data buses.
Address and Data Multiplexed (ADM) mode. On the S29VS-R devices, the upper address is supplied on separate signal inputs
and the lower 16-bits of address are multiplexed with 16-bit data on the A/DQ15 to A/DQ0 I/Os.
Address-high, Address-low, and Data Multiplexed (AADM) mode. On the S29XS-R devices, the upper and lower address are
multiplexed with 16-bit data on the A/DQ15 to A/D0 signal I/Os.
The two options allow use with the traditional address/data multiplexed NOR interface (S29NS family), or an address
multiplexed/data multiplexed interface with the lowest signal count.
6.3.1ADM Interface (S29VS256R and S29VS128R)
A number of processors use ADM interface as a way to reduce pin count. The system permanently connects the upper address bits
(A[MAX:16] to the device. When AVD# is LOW it connects A[15:0] to DQ[15:0]. The address is latched on the rising edge of AVD#.
When AVD# is HIGH, the system connects the data bus to DQ[15:0]. This results in 16-pin savings from the traditional Address and
Data in Parallel (ADP) interface.
6.3.2AADM Interface (S29XS256R and S29XS128R)
Signal input and output (I/O) connections on a high complexity component such as an Application Specific Integrated Circuit (ASIC)
are a limited resource. Reducing signal count on any interface of the ASIC allows for either more features or lower package cost.
The memory interface described in this section is intended to reduce the I/O signal count associated with the Flash memory interface
with an ASIC.
The interface is called Address-High, Address-Low, and Data Multiplexed (AADM) because all address and data information is time
multiplexed on a single 16-bit wide bus. This interface is electrically compatible with existing ADM 16-bit wide random access static
memory interfaces but uses fewer address signals. In that sense AADM is a signal count subset of existing static memory interfaces.
This interface can be implemented in existing memory controller designs, as an additional mode, with minimal changes. No new
I/O technology is needed and existing memory interfaces can continue to be supported while the electronics industry adopts this
new interface. ASIC designers can reuse the existing memory address signals above A15 for other functions when an AADM
memory is in use.
Document Number: 002-00833 Rev. *L Page 13 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
By breaking up the memory address in to two time slots the address is naturally extended to be a 32-bit word address. But, using
two bus cycles to transfer the address increases initial access latency by increasing the time address is using the bus. However,
many memory accesses are to locations in memory nearby the previous access. Very often it is not necessary to provide both cycles
of address. This interface stores the high half of address in the memory so that if the high half of address does not change from the
previous access, only the low half of address needs to be sent on the bus. If a new upper address is not captured at the beginning of
an access the last captured value of the upper address is used. This allows accesses within the same 128-KByte address range to
provide only the lower address as part of each access.
In AADM mode two signal rising edges are needed to capture the upper and lower address portions in asynchronous mode or two
signal combinations over two clocks is needed in synchronous mode. In asynchronous mode the upper address is captured by an
AVD# rising edge when OE# is Low; the lower address is captured on the rising edge of AVD# with OE# High. In synchronous mode
the upper address is captured at the rising clock edge when AVD# and OE# are Low; the lower address is captured at the rising
edge of clock when AVD# is Low and OE# is High.
CE# going High at any time during the access or OE# returning High after RDY is first asserted High during an access, terminates
the read access and causes the address/data bus direction to switch back to input mode. The address/data bus direction switches
from input to output mode only after an Address-Low capture when AVD# is Low and OE# is High. This prevents the assertion of
OE# during Address-High capture from causing a bus conflict between the host address and memory data signals. Note, in burst
mode, this implies at least one cycle of CE# or OE# High before an Address-high for a new access may be placed on the bus so that
there is time for the memory to recognize the end of the previous access, stop driving data outputs, and ignore OE# so that assertion
of OE# with the new Address-high does not create a bus conflict with a new address being driven on the bus. At high bus
frequencies more than one cycle may be need in order to allow time for data outputs to stop driving and new address to be driven
(bus turn around time).
During a write access, the address/data bus direction is always in the input mode.
The upper address is set to Zero or all Ones, for bottom or top boot respectively, during a Hardware Reset, operate in ADM mode
during the early phase of boot code execution where only a single address cycle would be issued with the lower 16 bit of the address
reaching the memory in AADM mode. The default high order address bits will direct the early boot accesses to the 128 Kbytes at the
boot end of the device. Note that in AADM interface mode this effectively requires that one of the boot sectors is selected for any
address overlay mode because in the initial phase of AADM mode operation the host memory controller may only issue the low
order address thus limiting the early boot time address space to the 128 Kbytes at the boot end of the device.
6.3.3Default Access Mode
Upon power-up or hardware reset, the device defaults to the Asynchronous Access mode.
6.4Bus Operations
Table 7 describes the required state of each input signal for each bus operation.
Latch Upper Starting Burst Address by CLK
(S29XS256R and S29XS128R Only)
Latch Lower Starting Burst Address by CLK
(S29XS256R and S29XS128R Only)
Burst Read and advance to next address (1)LLHHXData Output ValidH
Terminate current Burst cycleXXXXXHigh-ZH
Legend:
L = Logic 0, H = Logic 1, X = can be either V
Note:
1. Data is delivered by a read operation only after the burst initial wait state count has been satisfied.
or VIH. = rising edge.
IL
LLHLXAddr InH
LHHLXAddr InH
6.5Device ID and CFI (ID-CFI)
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
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.
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 remove 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:
(SA) + 00000h to 0001FhJEDEC ID (traditional Autoselect values)32Read Only
(SA) + 00020h to CEh hCFI data structure174 Read Only
For the complete address map, see Tables in Section 11.2, Device ID and Common Flash Memory Interface Address Map
on page 59.
Document Number: 002-00833 Rev. *L Page 15 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
6.5.1JEDEC Device ID
The Joint Electron Device Engineering Council (JEDEC) standard JEP106T 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 code values are always byte
wide but are located at bus width address boundaries such that incrementing the device address inputs will read successive byte,
word, or double word locations with the codes always located in the least significant byte location of the data bus. 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.
6.5.2Common Flash Memory Interface
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.
The system can read CFI information at the addresses within the selected sector as shown in Section 11.2, Device ID and Common
Flash Memory Interface Address Map on page 59.
Like the JEDEC Device ID information, CFI information is structured to work with any memory data bus width e.g. x8, x16, x32. The
code values are always byte wide but are located at data bus width address boundaries such that incrementing the device address
reads successive byte, word, or double word locations with the codes always located in the least significant byte location of the data
bus. 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.
For further information, please refer to the Cypress CFI Version 1.4 (or later) Specification and the Cypress CFI Publication 100 (see
also JEDEC publications JEP137-A and JESD68.01). Please contact JEDEC (http://www.jedec.org) for their standards and the
Cypress CFI Publications may be found at the Cypress Web site
(http://www.cypress.com/appnotes/CFI_v1.4_VendorSpec_Ext_A1.pdf at the time of this document’s publication).
6.5.3Secured Silicon Region
The Secured Silicon region provides an extra Flash memory area that can be programmed once and permanently protected from
further changes. The Secured Silicon Region is 512 bytes in length. It consists of 256 bytes for factory data and 256 bytes for
customer-secured data.
The Secured Silicon Region (SSR) is overlaid in the sector address specified by the SSR enter command.
Table 9. Secured Silicon Region
Byte Address RangeSecure Silicon Region Size
(SA) + 0000h to 00FFhFactory256 Bytes
(SA) + 0100h to 01FFhCustomer256 Bytes
6.5.4Configuration 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 the configuration register operation description. In configuration register mode, a write of
00F0h to any address will return the sector to Read mode.
Document Number: 002-00833 Rev. *L Page 16 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.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.
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.
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.
EA and ASO modes are initiated by writing specific address and data patterns into command registers (see Table 43 on page 57).
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.
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.
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.
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.
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.
7.1Asynchronous Read
The device defaults to reading array data asynchronously after device power-up or hardware reset. The device is in the
Asynchronous mode when Bit 15 of the Configuration register is set to '1'. To read data from the memory array, the system must first
assert CE# and AVD# to V
Address access time (t
delay from stable CE# to valid data at the outputs. See 10.9.2, AC Characteristics–Asynchronous Read on page 50. Any input on
CLK is ignored while in Asynchronous mode.
with WE# at VIH and a valid address.
IL
) is equal to the delay from stable addresses to valid output data. The chip enable access time (tCE) is the
ACC
Document Number: 002-00833 Rev. *L Page 17 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.1.1S29VS-R ADM Access
With CE# at VIL, WE# at VIH, and OE# at VIH, the system presents the address to the device and drives AVD# to VIL. AVD# is kept
at V
IL
for at least t
ns. The address is latched on the rising edge of AVD#.
AVD P
7.1.2S29XS-R AADM Access
With CE# at VIL, WE# at VIH, and OE# at VIL, the system presents the upper address bits to DQ and drives AVD# to VIL. The upper
address bits are latched when AVD# transitions to VIH. The system then drives AVD# to VIL again, with OE# at VIH and the lower
address bits on the DQ signals. The lower address bits are latched on the next rising edge of AVD#.
7.2Synchronous (Burst) Read Mode and Configuration Register
The device is capable of continuous sequential burst operation and linear burst operation of a preset length.
In order to use Synchronous (Burst) Read Mode the configuration register bit 15 must be set to 0.
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 23 for further
details.
When the appropriate number of Wait States have occurred, data is output after the rising edge of the CLK. Subsequent words are
output t
indicates the initial latency and any subsequent waits.
7.2.1S29VS-R ADM Access
To burst read data from the memory array in ADM mode, the system must assert CE# to VIL, and provide a valid address while
driving AVD# to VIL for one cycle. OE# must remain at VIH during the one cycle that AVD# is at VIL. The data appears on A/DQ15
-A/DQ0 when CE# remains at V
burst sequence is read on each clock cycle that OE# and CE# remain at VIL.
OE# does not terminate a burst access if it rises to VIH during a burst access. The outputs will go to high impedance but the burst
access will continue until terminated by CE# going to VIH, or AVD# returns to VIL with a new address to initiate a another burst
access.
after the rising edge of each successive clock cycle, which automatically increments the internal address counter. RDY
BACC
, after OE# is driven to VIL and the synchronous access times are satisfied. The next data in the
IL
7.2.2S29XS-R AADM Access
To burst read data from the memory array in AADM mode, the system must assert CE# to VIL, OE# must be driven to VIL with AVD#
for one cycle while the upper address is valid. The rising edge of CLK when OE# and AVD# are at VIL captures the upper 16 bits of
address. The rising edge of CLK when OE# is at V
A/DQ15 -A/DQ0 when CE# remains at VIL, after OE# is driven to VIL and the synchronous access times are satisfied. The next data
in the burst sequence is read on each clock cycle that OE# and CE# remain at V
Once OE# returns to VIH during a burst read the OE# no longer enables the outputs until after AVD# is at VIL with OE# at VIH - which
signals that address-low has been captured for the next burst access. This is so that OE# at VIL may be used in conjunction with
AVD# at V
with Address-high.
The device has a fixed internal address boundary that occurs every 256 Bytes (128 words). A boundary crossing latency of one or
two additional wait states may be required. The device also reads data in 16 byte (8 word) aligned and length groups. When the
initial address is not aligned at the beginning of a 16 byte boundary, additional wait states may be needed when crossing the first 16
byte boundary. The number of additional wait states depends on the clock frequency and starting address location.
to indicate address-high on the A/DQ signals without enabling the A/DQ outputs, thus avoiding data output contention
IL
and AVD# is at VIL latches the lower 16 bits of address. The data appears on
IH
.
IL
Document Number: 002-00833 Rev. *L Page 18 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 10 through Table 18 provide the latency for initial and boundary crossing wait state operation (note that ws = wait state).
Table 10. Initial Wait State vs. Frequency
Wait StateFrequency (Maximum MHz)
327
440
554
666
780
895
9104
10120
Note:
The default initial wait state delay after power on or reset is 13 wait states.
Table 11. Address Latency for 10 -13 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D71 ws+2 wsD8
2D2D3D4D5D6D71 ws1 ws+2 wsD8
3D3D4D5D6D71 ws1 ws1 ws+2 wsD8
4D4D5D6D71 ws1 ws1 ws1 ws+2 wsD8
5D5D6D71 ws1 ws1 ws1 ws1 ws+2 wsD8
6D6D71 ws1 ws1 ws1 ws1 ws1 ws+2 wsD8
7D71 ws1 ws1 ws1 ws1 ws1 ws1 ws+2 wsD8
10 -13 wait states
D0D1D2D3D4D5D6D7+2 ws (1)D8
Note:
1. This column applies to the 256 Byte boundary only.
Table 12. Address Latency for 9 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D71 ws+1 wsD8
2D2D3D4D5D6D71 ws1 ws+1 wsD8
3D3D4D5D6D71 ws1 ws1 ws+1 wsD8
4D4D5D6D71 ws1 ws1 ws1 ws+1 wsD8
5D5D6D71 ws1 ws1 ws1 ws1 ws+1 wsD8
6D6D71 ws1 ws1 ws1 ws1 ws1 ws+1 wsD8
7D71 ws1 ws1 ws1 ws1 ws1 ws1 ws+1 wsD8
Note:
1. This column applies to the 256 Byte boundary only.
9 wait states
D0D1D2D3D4D5D6D7+1 ws (1)D8
Document Number: 002-00833 Rev. *L Page 19 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 13. Address Latency for 8 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D71 wsD8
2D2D3D4D5D6D71 ws1 wsD8
3D3D4D5D6D71 ws1 ws1 wsD8
4D4D5D6D71 ws1 ws1 ws1 wsD8
5D5D6 D7 1 ws1 ws1 ws1 ws1 wsD8
6D6D71 ws1 ws1 ws1 ws1 ws1 wsD8
7D71 ws1 ws1 ws1 ws1 ws1 ws1 wsD8
Table 14. Address Latency for 7 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D7D8D9
2D2D3D4D5D6D71 wsD8D9
3D3D4D5D6D71 ws1 wsD8D9
4D4D5D6D71 ws1 ws1 wsD8D9
5D5D6 D7 1 ws1 ws1 ws1 wsD8D9
6D6D7 1 ws1 ws1 ws1 ws1 wsD8D9
7D71 ws1 ws1 ws1 ws1 ws1 wsD8D9
8 wait states
7 wait states
D0D1D2D3D4D5D6D7D8
D0D1D2D3D4D5D6D7D8
Table 15. Address Latency for 6 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D7D8D9
2D2D3D4D5D6D7D8D9D10
3D3D4D5D6D71 wsD8D9D10
4D4D5D6D71 ws1 wsD8D9D10
5D5D6D71 ws1 ws1 wsD8D9D10
6D6D7 1 ws1 ws1 ws1 wsD8D9D10
7D71 ws1 ws1 ws1 ws1 wsD8D9D10
6 wait states
D0D1D2D3D4D5D6D7D8
Document Number: 002-00833 Rev. *L Page 20 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 16. Address Latency for 5 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2D3D4D5D6D7D8D9
2D2D3D4D5D6D7D8D9D10
3D3D4D5D6D7D8D9D10D11
4D4D5D6D71 wsD8D9D10D11
5D5D6D71 ws1 wsD8D9D10D11
6D6D71 ws1 ws1 wsD8D9D10D11
7D71 ws1 ws1 ws1 wsD8D9D10D11
Table 17. Address Latency for 4 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2 D3 D4D5D6D7D8D9
2D2D3D4D5D6D7D8D9D10
3D3D4D5D6D7D8D9D10D11
4D4D5D6D7D8D9D10D11D12
5D5D6D71 wsD8D9D10D11D12
6D6D71 ws1 wsD8D9D10D11D12
7D71 ws1 ws1 wsD8D9D10D11D12
5 wait states
4 wait states
D0D1D2D3D4D5D6D7D8
D0D1D2D3D4D5D6D7D8
Table 18. Address Latency for 3 Wait States
WordInitial WaitSubsequent Clock Cycles After Initial Wait States
0
1D1D2 D3D4D5D6D7D8D9
2D2D3 D4D5D6 D7 D8 D9D10
3D3D4 D5D6D7 D8 D9D10D11
4D4D5 D6D7D8 D9D10D11D12
5D5D6 D7D8D9D10D11D12D13
6D6D71 wsD8D9D10D11D12D13
7D71 ws1 wsD8D9D10D11D12D13
3 wait states
D0D1D2D3D4D5D6D7D8
Document Number: 002-00833 Rev. *L Page 21 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.2.3Continuous 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 7, Device Bus Operations on page 14.
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 might be 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).
7.2.48-, 16-Word Linear Burst with Wrap Around
Table 19. Burst Address Groups
ModeGroup SizeGroup Byte Address Ranges
8-word16 bytes0-Fh, 10-1Fh, 20-2Fh,...
16-word32 bytes0-1Fh, 20-3Fh, 30-4Fh,...
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 19).
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
, a new address is latched in for a new burst operation, or a hardware reset). In a similar fashion, the 16-word Linear Wrap
to V
IH
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.
Note that in these two burst read modes the address pointer does not cross the boundary that occurs every 128 words;
thus, no 128-word address boundary crossing wait states are inserted for linear burst with wrap.
Document Number: 002-00833 Rev. *L Page 22 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 4. Synchronous Read
Load Initial Address
Address = RA
Read Initial Data
RD = DQ[15:0]
Read Next Data
RD = DQ[15:0]
Wait Programmable
Wait State Setting
Wait X Clocks (if required):
Additional Latency Due to Starting
Address and Clock Frequency
End of Data?
Yes
Crossing
Boundary?
No
Yes
Completed
RA = Read Address
RD = Read Data
CR0.14 - CR0.11 sets initial access time
(from address latched to
valid data) from 3 to 13 clock cycles
No
7.2.5Configuration Register
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 43 on page 57).
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-00833 Rev. *L Page 23 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 20. Configuration Register
CR BItFunction Settings (Binary)
CR.15Device Read Mode
CR.14
CR.13
CR.12
CR.11
CR.10RDY Polarity
CR.9Reserved
CR.8RDY Timing
CR.7Output Drive Strength
CR.6Reserved
CR.5Reserved
CR.4Reserved
CR.3Reserved
CR.2
CR.1
CR.0
Programmable
Read Wait States
Burst Length
0 = Synchronous Read Mode
1 = Asynchronous Read Mode (Default)
0000 = Reserved
0001 = Initial data is valid on the 3rd rising CLK edge after addresses are
latched
0010 = Initial data is valid on the 4th rising CLK edge after addresses are latched
0011 = Initial data is valid on the 5th rising CLK edge after addresses are latched
.
.
.
1011 = 13th (Default)
1100 = Reserved
1101 = Reserved
1110 = Reserve d
1111 = Reserved
0 = RDY signal is active low
1 = RDY signal is active high (Default)
0 = Reserved
1 = Reserved (Default)
0 = RDY active one clock cycle before data
1 = RDY active with data (Default)
0 = Full Drive = Current Driver Strength (Default)
1 = Half Drive
0 = Reserved
1 = Reserved (Default)
0 = Reserved (Default)
1 = Reserved
0 = Reserved (Default)
1 = Reserved
0 = Reserved
1 = Reserved (Default)
000 = Continuous (Default)
010 = 8-Word (16-Byte) Linear Burst with wrap around
011 = 16-Word (32-Byte) Linear Burst with wrap around
(All other bit settings are reserved)
7.2.5.1Device 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.
Document Number: 002-00833 Rev. *L Page 24 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.2.5.2Wait States
Configuration Register bits 14 to 11 (CR.[14..11]) define the number of delay cycles after the AVD# Low cycle that captures the initial
address until the cycle that read data is valid. The bits from 14 to 11 are in most to least significant order. The random address
access at the beginning of each read burst takes longer than the subsequent read cycles. The memory bus interface must be told
how many cycles to wait before driving valid data then advancing to the next data word. The number of initial wait cycles will vary
with the memory clock rate. The number of wait states is found in the wait state table information above. The minimum number of
wait cycles is three. The maximum is 13. The default after power-on or hardware reset is 13 cycles.
When the appropriate number of Wait States have occurred, data is output after the rising edge of the CLK. Subsequent words are
output t
after the rising edge of each successive clock cycle, which automatically increments the internal address counter.
BACC
7.2.5.3RDY 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.
7.2.5.4RDY 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.
7.2.5.5Output Drive Strength
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.
7.2.5.6Burst Length
Configuration Register bits 2 to 0 (CR.[2..0]) define the length of burst read accesses. The bits from 2 to 0 are in most to least
significant order. See the register table for code meaning & default value.
7.3Status Register
The status of program and erase operations is provided by a status register. A status register read command is written followed by a
read of the status register for each access of the status register information. The Clear Status Register Command will reset the
status register. The status register can be read in synchronous or asynchronous mode.
Table 21. Status Register Reset State
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRB
1 at Reset
Notes:
1. Status bits higher than Bit 7 are undefined.
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.
Erase Suspend
Status Bit
ESSB
0 at Reset
Erase Status
Bit
ESB
0 at Reset
Program
Status Bit
PSB
0 at Reset
RFU
RFU
0 at Reset
Program
Suspend
Status Bit
PSSB
0 at Reset
Sector Lock
Status Bit
SLSB
0 at Reset
Bank Status Bit
BSB
0 at Reset
Document Number: 002-00833 Rev. *L Page 25 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 22. Status Register - Bit 7
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSBESBPSBRFUPSSBSLSBBSB
0
Device busy
programming or
erasing
1
Device ready
Notes:
1. Bit 7 is set when there is no erase or program operation in progress in the device.
2. Bits 1 through 6 are valid if and only if Bit 7 is set.
Erase Suspend
Status Bit
InvalidInvalidInvalidInvalidInvalidInvalidVALID
VAL IDVA LIDVA LIDVAL IDVA LIDVAL IDVA LID
Erase Status Bit
Program Status
Bit
RFU
Program
Suspend Status
Bit
Sector Lock
Status Bit
Table 23. Status Register - Bit 6
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRB
1
Bits 6:1 only
valid when Bit 7
= 1
1
Bit 6:1 only valid
when Bit 7 = 1
Erase Suspend
Status Bit
ESSBESBPSBRFUPSSBSLSBBSB
0
No Erase in
Suspension
1
Erase in
Suspension
Erase Status Bit
XXXXXX
XXXXXX
Program Status
Bit
RFU
Program
Suspend Status
Bit
Sector Lock
Status Bit
Bank Status Bit
Bank Status Bit
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.
2. Cleared by “Erase Resume” Command.
Table 24. Status Register - Bit 5
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSB
1
Bits 6:1 only
valid when Bit 7
= 1
1
Bit 6:1 only valid
when Bit 7 = 1
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.
Erase Suspend
Status Bit
X
X
Erase Status Bit
ESBPSBRFUPSSBSLSBBSB
0
Erase successful
1
Erase error
Program Status
Bit
XXXXX
XXXXX
RFU
Program
Suspend Status
Bit
Sector Lock
Status Bit
Bank Status Bit
Document Number: 002-00833 Rev. *L Page 26 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 25. Status Register - Bit 4
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready Bit.
Overall status
DRBESSBESB
1
Bits 6:1 only valid
when Bit 7 = 1
1
Bit 6:1 only valid
when Bit 7 = 1
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.
Erase Suspend
Status Bit
XX
XX
Erase Status Bit
Program Status
Bit
PSBRFUPSSBSLSBBSB
0
Program
successful
1
Program fail
RFU
XXXX
XXXX
Program
Suspend Status
Bit
Sector Lock
Status Bit
Table 26. Status Register - Bit 3
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSBESBPSBRFUPSSBSLSBBSB
1
Bits 6:1 only valid
when Bit 7 = 1
Erase Suspend
Status Bit
XXX
Erase Status Bit
Program Status
Bit
RFU
XXXX
Program
Suspend Status
Bit
Sector Lock
Status Bit
Bank Status Bit
Bank Status Bit
Notes:
1. This Register is reserved for future use.
2. Cleared by “Clear Status Register” Command as well as by hardware reset.
Table 27. Status Register - Bit 2
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSBESBPSBRFU
1
Bits 6:1 only
valid when Bit 7
= 1
1
Bit 6:1 only valid
when Bit 7 = 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.
Erase Suspend
Status Bit
XXXX
XXXX
Erase Status Bit
Program Status
Bit
RFU
Program
Suspend Status
Bit
PSSBSLSBBSB
0
No Program in
suspension
1
Program in
suspension
Sector Lock
Status Bit
XX
XX
Bank Status Bit
Document Number: 002-00833 Rev. *L Page 27 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 28. Status Register - Bit 1
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSBESBPSBRFUPSSB
1
Bits 6:1 only
valid when Bit 7
= 1
1
Bit 6:1 only valid
when Bit 7 = 1
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.
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.
Erase Suspend
Status Bit
XXXXX
XXXXX
Erase Status Bit
Program Status
Bit
RFU
Program
Suspend Status
Bit
Sector Lock
Status Bit
SLSBBSB
0
Sector not
locked during
operation
1
Sector locked
error
Bank Status Bit
X
X
Table 29. Status Register - Bit 0
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
Device Ready
Bit.
Overall status
DRBESSBESBPSBRFUPSSBSLSB
0
Bits 6:1 only
valid when Bit 7
= 1
0
Bits 6:1 only
valid when Bit 7
= 1
1
Bit 6:1 only valid
when Bit 7 = 1
1
Bit 6:1 only valid
when Bit 7 = 1
Erase Suspend
Status Bit
XXXXXX
XXXXXX
XXXXXX
XXXXXX
Erase Status Bit
Program Status
Bit
RFU
Program
Suspend Status
Bit
Sector Lock
Status Bit
Bank Status Bit
BSB
0
Program or
Erase op. in
addressed Bank
1
Program or
Erase op. in
other Bank
0
No active
Program or
Erase op.
1
invalid
Note:
1. BSB is used to check if a program or erase operation in progress in the current bank.
Document Number: 002-00833 Rev. *L Page 28 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.4Blank 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 555h in Sector X. while the device is in the Idle state (not during
program suspend, not during erase suspend, ...).
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.
7.5Simultaneous Read/Write
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 20, Back-to-Back Read/Write Cycle Timings - ADM Interface
on page 55 shows how read and write cycles may be initiated for simultaneous operation with zero latency. Refer to the DC
Characteristics on page 44 table for read-while-program and read-while-erase current specification.
Document Number: 002-00833 Rev. *L Page 29 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.6Writing Commands/Command Sequences
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. While an address is valid, AVD# must be driven to VIL.
Addresses are latched on the rising edge of AVD#, data is latched on the rising edge of WE#.
All writes to the memory are single word length and follow asynchronous timing. However, it is allowed to leave the host and memory
interfaces in synchronous mode as long as the host synchronous timing for a single word synchronous write can meet the timing
requirements of the memory device write cycle. Generally a synchronous write would include Clock toggling during the write but, it is
also allowed for Clock to be at V
If the device is in the Synchronous Read Mode (CR.15 = 0), the addresses are latched on the rising edge of CLK when AVD# is at
VIL, while data is latched on the rising edge of WE#. If CLK is held at VIL, addresses are latched on the rising edge of AVD#. CLK
should not be held at VIH when writing commands while the device is in Synchronous Read Mode. See the Table 7, Device Bus
Operations on page 14 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 in which 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 43, Command Definitions on page 57
for a listing of the commands accepted by the device. I
specification for an Embedded Algorithm operation.
during the write.
IL
in DC Characteristics on page 44 represents the active current
CC2
7.7Program/Erase Operations
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 25 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 data0011
new
0101
data
results0001
Any commands written to the device during the Embedded Program Algorithm are ignored except the Program Suspend, and
Status Read command. Any commands written to the device during the Embedded Erase Algorithm are ignored except Erase
Suspend and Status Read command. Reading from a bank that is not programming or erasing is allowed.
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.
Document Number: 002-00833 Rev. *L Page 30 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.7.1Write Buffer Programming
Write Buffer Programming allows the system to write 1 to 64 bytes 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 + 555h in which
programming occurs. Next, the system writes the number of word locations minus 1 at the Sector Address + 2AAh. This tells the
device how many write buffer addresses are loaded with data and therefore when to expect the Program Buffer to Flash confirm
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.
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.
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.
The counter decrements for each data load operation.
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 + 555h. 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
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 25 for
information on these status bits.
The Write Buffer Programming Sequence can be Aborted in the following ways:
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.
The Write Buffer Programming Sequence can be stopped and reset by the following: Hardware Reset or Power cycle.
programming operation can be suspended using the Program Suspend command. When the Embedded
Number of words (N) loaded into the write buffer can be from 1 to 32 words.
3 to 34Load Buffer Word NWriteProgram Address, Word NWord N
LastWrite Buffer to FlashWriteSector Address + AAAhSector Address + 555h0029h
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.
3. For maximum efficiency, it is recommended that the write buffer be loaded with the highest number of words (N words) possible.
The following is a C source code example of using the write buffer program function. Refer to the Cypress Low Level Driver User’s
Guide (available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
/* Example: Write Buffer Programming Command */
/* NOTES: Write buffer programming limited to 32 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; /* address of source data */
UINT16 *dst = destination_of_data; /* flash destination address */
UINT16 wc = words_to_program -1; /* word count (minus 1) */
*( (UINT16 *)sector_address + 0x555 ) = 0x0025; /* write write buffer load command */
*( (UINT16 *)sector_address + 0x2AA) = wc; /* write word count (minus 1) */
do{
*dst = *src; /* ALL dst MUST BE SAME PAGE */ /* write source data to destination */
dst++; /* increment destination pointer */
src++; /* increment source pointer */
wc--; /* decrement word count */
}while ( wc >= 0 ); /* do it again */
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 t
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.
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 25 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 31. Program Suspend
CycleOperationByte AddressWord AddressData
1WriteBank AddressBank Address0051h
The following is a C source code example of using the program suspend function. Refer to the Cypress Low Level Driver User’s Guide (available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
The following is a C source code example of using the program resume function. Refer to the Cypress Low Level Driver User’s Guide (available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
The sector erase function erases one sector in the memory array (see Table 43 on page 57). 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 25 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 30 for parameters and timing diagrams.
The following is a C source code example of using the sector erase function. Refer to the Cypress Low Level Driver User’s Guide
(available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
The chip erase function erases the complete memory array. (See Table 43 on page 57). 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.
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 25 for information on these status bits.
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.
See Program/Erase Operations on page 30 for parameters and timing diagrams.
The following is a C source code example of using the chip erase function. Refer to the Cypress Low Level Driver User’s Guide
(available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
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 t
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 25 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.
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.
Software Functions and Sample Code
Table 35. Erase Suspend
CycleOperationByte AddressWord AddressData
1WriteBank AddressBank Address00B0h
The following is a C source code example of using the erase suspend function. Refer to the Cypress Low Level Driver User’s Guide
(available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
The following is a C source code example of using the erase resume function. Refer to the Cypress Low Level Driver User’s Guide
(available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
/* Example: Erase resume command */
*( (UINT16 *)sector_address + 0x000 ) = 0x0030; /* write resume command */
/* The flash needs adequate time in the resume state */
Document Number: 002-00833 Rev. *L Page 36 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
7.7.6Accelerated Program/Sector Erase
Accelerated write buffer programming, and sector erase operations are enabled through the VPP function. This method is faster than
the standard chip program and sector erase command sequences.
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).
If the system asserts V
program and erase operations. Removing VHH from the VPP input, upon completion of the embedded program or erase operation,
returns the device to normal operation.
Simultaneous operations are not supported while VPP is at VHH. The VPP 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 VPP 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.
on VPP, the device automatically uses the higher voltage on the input to reduce the time required for
HH
7.8Handshaking
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#.
When 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 CE# input and OE# input is Low, the A/DQ15-A/DQ0 output signals are actively driven. When both of the
CE# inputs are High, or the OE# input is High, the A/DQ15-A/DQ0 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 20 on page 24).
When the device is operated in asynchronous mode, RDY will be high when CE# is low (active).
7.9Hardware 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
, the device immediately terminates any operation in progress, tristates all outputs, resets the configuration register, and
of t
RP
ignores all read/write commands for the duration of the reset operation. The device also resets the internal state machine to idle
state. Hardware Reset clears the AADM upper address register to zero.
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 V
current is greater.
See Figure 16 for timing diagrams
, the device draws CMOS standby current (I
SS
). If RESET# is held at VIL, but not at VSS, the standby
CC4
7.10Software Reset
Software reset is part of the command set (see Table 43 on page 57) that also returns the device to idle state and must be used for
the following conditions:
1. Exit ID/CFI mode
2. Exit Secure Silicon Region mode
3. Exit Configuration Register mode
4. Exit SSR Lock mode
Reset commands are ignored once programming/erasure has begun until the operation is complete.
Document Number: 002-00833 Rev. *L Page 37 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Software Functions and Sample Code
Table 37. Reset
CycleOperationByte AddressWord AddressData
Reset CommandWriteBase + xxxhBase + xxxh00F0h
Note:
Base = Base Address.
The following is a C source code example of using the reset function. Refer to the Cypress Low Level Driver User’s Guide (available
on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
/* Example: Reset (software reset of Flash state machine) */
*( (UINT16 *)base_addr + 0x000 ) = 0x00F0;
Document Number: 002-00833 Rev. *L Page 38 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
8.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.
8.1Sector 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 x555h and x2AAh, and data is 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 = V
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 unlocked 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.
If A6 is set to VIL,then all sectors in the array will be locked. Only one sector at a time can be unlocked.
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.
8.2Sector Lock Range Command
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 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.
Two cycles are first written: addresses are x555h and x2AAh, 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 = V
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.
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.
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.
) or unlocked (A6 = VIH).
IL
IL) for the addresses to be accepted as valid.
Document Number: 002-00833 Rev. *L Page 39 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
8.3Hardware 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:
8.3.1VPP Method
Once VPP input is set to VIL, all program and erase functions are disabled and hence all Sectors (including the Secure Silicon
Region) are protected.
8.3.2Low VCC Write Inhibit
When VCC is less than V
The command register and all internal program/erase circuits are disabled. Subsequent writes are ignored until VCC is greater than
V
. The system must provide the proper signals to the control inputs to prevent unintentional writes when VCC is greater than
LKO
.
V
LKO
, the device does not accept any write cycles. This protects data during VCC power-up and power-down.
LKO
8.3.3Write Pulse Glitch Protection
Noise pulses of less than 3 ns (typical) on OE#, WE#, or CE# do not initiate a write cycle.
8.3.4Power-Up Write Inhibit
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.
8.4SSR Lock
The SSR Lock consists of two bits. The Customer Secure Silicon Region Protection Bit is bit 0. The Factory Secure Silicon Region
Protection Bit is bit 1. All other bits in this register return “1.” If the Customer 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.”
8.5Secure Silicon Region
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.
8.5.1Factory 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.
Document Number: 002-00833 Rev. *L Page 40 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
8.5.2Customer Secure Silicon Region
The Customer Secure Silicon Region is typically 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 CL 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.
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.
8.5.3Secure Silicon Region Entry and Exit Command Sequences
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.
See Command Definition Table [Secure Silicon Region Command Table, Appendix
Table 43 on page 57 for address and data requirements for both command sequences.
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
Software Functions and Sample Code
The following are C functions and source code examples of using the Secured Silicon Sector Entry, Program, and exit commands.
Refer to the Cypress Low Level Driver User’s Guide (available on www.cypress.com) for general information on Cypress Flash
memory software development guidelines.
In the standby mode current consumption is greatly reduced, and the outputs (A/DQ15-A/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
± 0.2 V. The device requires standard access time (t
V
CC
deselected during erasure or programming, the device draws active current until the operation is completed. I
DC Characteristics on page 44 represents the standby current specification
9.2Automatic Sleep Mode
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 t
mode is independent of the CE#, WE#, and OE# control signals. Standard address access timings (t
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. I
specification.
in DC Characteristics on page 44 represents the automatic sleep mode current
CC6
or tIA) for read access, before it is ready to read data. If the device is
CE
+ 20 ns. The automatic sleep
ACC
or t
ACC
in
CC3
) provide new data
PAC C
9.3Output Disable (OE#)
When the OE# input is at VIH, output (A/DQ15-A/DQ0) from the device is disabled and placed in the high impedance state. RDY is
not controlled by OE#.
Document Number: 002-00833 Rev. *L Page 42 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10. Electrical Specifications
20 ns
20 ns
+0.8 V
–0.5 V
20 ns
–2.0 V
20 ns
20 ns
V
CC
+2.0 V
V
CC
+0.5 V
20 ns
1.0 V
10.1Absolute Maximum Ratings
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)
(Note 1)–0.5 V to +2.5 V
V
CC
V
IO
(Note 2)–0.5 V to +9.5 V
V
PP
Output Short Circuit Current (Note 3)100 mA
Notes:
1. Minimum DC voltage on input or I/Os is –0.5 V. During voltage transitions, inputs or I/Os may undershoot V
Maximum DC voltage on input or I/Os is V
2. Minimum DC input voltage on pin V
voltage on pin V
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.
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.
is +9.5 V, which may overshoot to 10.5 V for periods up to 20 ns.
PP
+ 0.5 V. During voltage transitions outputs may overshoot to VCC + 2.0 V for periods up to 20 ns. See Figure .
CC
is -0.5V. During voltage transitions, VPP may overshoot VSS to –2.0 V for periods of up to 20 ns. See Figure 5. Maximum DC
PP
Figure 5. Maximum Negative Overshoot Waveform
–0.5 V to VIO + 0.5 V
–0.5 V to +2.5 V
to –2.0 V for periods of up to 20 ns. See Figure 5.
SS
Figure 6. Maximum Positive Overshoot Waveform
Document Number: 002-00833 Rev. *L Page 43 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.2Operating Ranges
Wireless (W) Devices
Ambient Temperature (T
)–25°C to +85°C
A
Industrial (I) Devices
Ambient Temperature (TA)
(Refer to Publication Number S29VS_XS-R_SP for Industrial
–40°C to +85°C
Temperature specific differences)
Supply Voltages
Supply Voltages +1.70 V to +1.95 V
V
CC
VIO Supply Voltages
Note:
Operating ranges define those limits between which the functionality of the device is guaranteed.
3. ICC active while Embedded Erase or Embedded Program is in progress.
4. Device enters automatic sleep mode when addresses are stable for t
5. Total current during accelerated programming is the sum of V
6. I
applies while reading the status register during program and erase operations.
CC5
7. Effect of status register polling during write not included.
V
Sleep Current (4)CE# = VIL, OE# = V
CC
Accelerated Program Current
(5)
Input Low VoltageVIO = 1.8 V–0.20.4V
IL
Input High VoltageVIO = 1.8 VVIO – 0.4VIO + 0.4
IH
Output Low VoltageI
CE# = VIL, OE# = V
VPP = 9.5 V
= 100 µA, VCC = VCC
OL
Output High VoltageIOH = –100 µA, VCC = VCC
Voltage for Accelerated
Program
IH
IH,
min
= V
min
= V
IO
V
PP
V
CC
V
IO
– 0.1V
IO
8.59.5V
2040µA
710mA
2528mA
Low VCC Lock-out Voltage1.01.1V
specifications are tested with VCC = VCCmax.
CC
IO
+ 20 ns. Typical sleep mode current is equal to I
ACC
and VCC currents.
PP
CC3
.
0.1V
10.4Capacitance
SymbolDescriptionTest Condition
Input Capacitance
C
IN
C
OUT
Notes:
1. Test conditions T
2. Sampled, not 100% tested.
(Address, CE#, OE#,
WE#, AVD#, WE#, CLK,
Output Capacitance
(DQ, RDY)
= 25°C, f = 1.0 MHz
A
RESET#)
V
V
OUT
IN
Single Die2.04.56.0pF
= 0
Single Die2.04.56.0pF
= 0
Min.
Typ.Max.Unit
Dual Die4.09.012.0pF
Dual Die4.09.012.0pF
Document Number: 002-00833 Rev. *L Page 45 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.5AC Test Conditions
V
IO
V
IO
/2
Input and Output
Test Point
V
IO
/2
0V
Device
Under
Test
*CL= 30 pF including scope
and Jig capacitance
Operating Range
Input level0.0 to V
Input comparison levelVIO/2
Output data comparison levelV
Load capacitance (C
)30 pF
L
83 MHz2.50 ns
Transition time (t
) (input rise and fall times)
T
104 MHz1.85 ns
108 MHz1.85 ns
83 MHz2.50 ns
Transition time (t
) (CLK input rise and fall times)
T
104 MHz1.85 ns
108 MHz1.85 ns
Figure 7. Input Pulse and Test Point
Figure 8. Output Load
IO
IO
/2
10.6Key to Switching Waveforms
WaveformInputsOutputs
Steady
Changing from H to L
Changing from L to H
Don’t Care, Any Change PermittedChanging, State Unknown
Does Not ApplyCenter Line is High Impedance State (High-Z)
Document Number: 002-00833 Rev. *L Page 46 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.7V
V
CC
V
IO
RESET#
t
VCS
t
VIOS
t
RH
CE#
V
CC min
V
IO min
V
IH
During power-up or power-down, V
The device ignores all inputs until a time delay of t
above the minimum VCC and VIO thresholds. During t
During power-down or voltage drops below V
(V
) minimum for a period of t
RST
voltage drop the V
Power-Up and Power Down
CC
must always be greater than or equal to VIO (VCC V
CC
Lockout maximum (VLKO), the VCC and VIO voltages must drop below VCC Reset
for the part to initialize correctly when VCC and VIO again rise to their operating ranges. If during a
stays above VLKO maximum, the part will stay initialized and will work correctly when VCC is again above VCC
CC
PD
CC
).
IO
has elapsed after the moment that VCC and VIO both rise above, and stay
VCS
, the device is performing power-on reset operations.
VCS
minimum. If the part locks up from improper initialization, a hardware reset can be used to initialize the part correctly.
Normal precautions must be ensured for supply decoupling to stabilize the V
should have the V
generally in the order of 0.1 μF). At no time should V
and VIO power supplies decoupled by a suitable capacitor close to the package connections (this capacitor is
CC
be greater then 200 mV above VCC (VCC VIO - 200 mV).
IO
and VIO power supplies. Each device in a system
CC
ParameterDescriptionTest SetupVal ueUnit
t
VCS
t
VIOS
t
RH
V
V
RST
t
PD
Notes:
1. RESET# must be high after V
VIO – 200 mV during power-up.
2. V
CC
and VIO ramp rate could be non-linear
3. V
CC
4. V
and VIO are recommended to be ramped up simultaneously.
CC
5. Not 100% tested.
CC
VCC Setup Time (Note 5)Min300µs
VIO Setup TimeMin300µs
Time between RESET# (high) and CE#
(low)
and V
Duration of V
and V
CC
Low voltage needed to ensure
IO
initialization will occur
V
CC
RST (min)
are higher than VCC minimum.
IO
(Note 5)Min10µs
Min200ns
Min0.7V
Figure 9. VCC Power-up Diagram.
Document Number: 002-00833 Rev. *L Page 47 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Power Supply
Vcc
(max)
(min)
Vcc
(max)
V
IO
V
(min)
IO
Figure 10. Power-up
Voltage
Vcc
t
V
IO
Figure 11. V
and V
V
CC
IO
V
(max)
CC
V
(min)
CC
V
(max)
LKO
V
(min)
RST
Power-Down and Voltage Drop
CC
No Device Access Allowed
t
PD
VCS
Full Device Access
t
VCS
Full Device
time
Access
Allowed
time
10.8CLK Characterization
ParameterDescription108 MHz Unit
f
CLK
t
CLK
t
CL/tCH
Note:
1. DC for operations other than continuous and 16 word (32 byte) synchronous burst read. See AC Characteristics Table.
CLK Frequency
CLK PeriodMin9.26ns
CLK Low/High TimeMin0.40 t
Figure 12. CLK Characterization
t
CLK
t
CH
Max108
MinDC (1)
t
CL
CLK
MHz
ns
CLK
Document Number: 002-00833 Rev. *L Page 48 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.9AC Characteristics
10.9.1AC Characteristics–Synchronous Burst Read
Parameter (Notes)Symbol 83 MHz104 MHz108 MHzUnit
DC (0) for operations other than continuous and 32
Clock FrequencyCLKMin
Clock Cycle t
CLK Rise Timet
CLK Fall Timet
CLK High or Low Time t
CLKH/L
Internal Access Time t
Burst Access Time Valid Clock to Output
Delay
t
AVD# Setup Time to CLK t
AVD# Hold Time from CLK t
Address Setup Time to CLK t
Address Hold Time from CLK t
Data Hold Time from Next Clock Cycle t
Output Enable to Data t
CE# Disable to Output High-Z (2)t
OE# Disable to Output High-Z (2)t
CE# Setup Time to CLK t
CLK to RDY valid t
CE# low to RDY valid t
AVD# Pulse Widtht
CLK
CLKR
CLKF
Min543.86ns
IA
BACC
AVD S
AVD H
ACS
ACH
BDH
OE
CEZ
OEZ
CES
Max97.66.75ns
RACC
Max10ns
CR
AVD P
Min129.69.26ns
Max2.51.921.852ns
Max7572.34ns
Max97.66.75ns
Min43.38ns
Min32.89ns
Min42.89ns
Min54.82ns
Min322ns
Max15ns
Max10ns
Max10ns
Min43.38ns
Min6ns
byte synchronous burst.
120 in 32 Byte burst
1000 in continuous burst
KHz
Notes:
1. Not 100% tested.
2. If OE# is disabled before CE# is disabled, the output goes to High-Z by t
If CE# is disabled before OE# is disabled, the output goes to High-Z by t
If CE# and OE# are disabled at the same time, the output goes to High-Z by t
OEZ
CEZ
.
.
.
OEZ
3. AVD can not be low for 2 subsequent CLK cycles.
Figure 13. Synchronous Read Mode - ADM Interface
7 cycles for initial access is shown as an illustration.
t
CES
1234567
t
AVDP
t
AVDH
AC
t
ACH
AC
t
IA
t
CR
t
OE
t
RACC
t
t
BDH
DD
BACC
DEDB
DC
AVD #
Amax
A/DQ15
A/DQ0
RDY
CE#
CLK
A16
OE#
t
AVDS
t
ACS
–
–
Hi-Z
Document Number: 002-00833 Rev. *L Page 49 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.9.2AC Characteristics–Asynchronous Read
t
CE
WE#
Amax
–
A16
CE#
OE#
Valid RD
t
ACC
t
OEH
t
OE
A/DQ15
–
A/DQ0
t
OEZ
t
AAVDH
t
AVD P
t
AAVDS
AVD#
RA
RA
Hi-Z
Hi-Z
RDY
t
CR
t
CEZ
t
CAS
ParameterSymbolMinMaxUnit
Access Time from CE# Lowt
Asynchronous Access Time from address validt
Read Cycle Timet
AVD# Low Timet
Address Setup to rising edge of AVD#t
Address Hold from rising edge of AVD#t
Output Enable to Output Validt
CE# Setup to AVD# falling edget
CE# Disable to Output & RDY High-Z (1)t
OE# Disable to Output High-Z (1)t
AVD# High to OE# Lowt
CE# low to RDY validt
WE# Disable to AVD# Enablet
WE# Disable to OE# Enablet
Notes:
1. Not 100% tested.
2. If OE# is disabled before CE# is disabled, the output goes to High-Z by t
If CE# is disabled before OE# is disabled, the output goes to High-Z by t
If CE# and OE# are disabled at the same time, the output goes to High-Z by t
Figure 14. Asynchronous Mode Read - ADM Interface
OEZ
CEZ
.
.
.
OEZ
CE
ACC
RC
AVD P
AAVDS
AAVDH
OE
CAS
CEZ
OEZ
AVD O
CR
WEA
OEH
–80
–80
80–
6–
4–
3.5–
–15
0–
–10
–10
4–
–10
9.6–
4–
ns
Notes:
1. AVD# Transition occurs after CE# is driven to Low and Valid Address Transition occurs before AVD# is driven to Low.
2. VA = Valid Read Address, RD = Read Data.
Document Number: 002-00833 Rev. *L Page 50 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.9.3AC Characteristics–Erase/Program Timing
ParameterSymbolMin Typ Max Unit
WE# Cycle Time (1)t
AVD# low pulse widtht
Address Setup to rising edge of AVD#t
Address Hold from rising edge of AVD#t
Read Recovery Time Before Writet
Data Setup to rising edge of WE#t
Data Hold from rising edge of WE#t
CE# Setup to falling edge of WE#t
CE# Hold from rising edge of WE#t
WE# Pulse Widtht
WE# Pulse Width High t
Latency Between Read and Write Operationst
AVD# Disable to WE# Disablet
WE# Disable to AVD# Enablet
CE# low to RDY validt
CE# Disable to Output High-Zt
OE# Disable to WE# Enablet
Erase Suspend Latencyt
Program Suspend Latencyt
Erase Resume to Erase Suspendt
Program Resume to Program Suspendt
WC
AVD P
AAVDS
3.5 ––ns
AAVDH
GHWL
DS
DH
CS
CH
WP
20 ––ns
WPH
SRW
23.5––ns
VLWH
9.6 ––ns
WEA
CR
CEZ
WEH
ESL
PSL
ERS
PRS
60––ns
6––ns
4––ns
0––ns
20 ––ns
0––ns
4––ns
0 ––ns
25––ns
0––ns
––10ns
––10ns
4 ––ns
––30µs
––30µs
30––µs
30––µs
Note:
1. Sampled, not 100% tested.
Document Number: 002-00833 Rev. *L Page 51 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 15. Asynchronous Program Operation Timings - ADM Interface
RESET#
t
RP
t
RPH
CE#, OE#
t
RH
CLK
AVD#
Amax–
A16
A/DQ15–
A/DQ0
CE#
OE#
WE#
V
CC
V
V
t
AAVDS
IH
IL
t
AVD P
Program Command Sequence (last two cycles)Read Status Data
t
VLWH
t
AAVDH
PA
t
t
t
VCS
PD29h
CAS
t
WP
CS
t
WC
+ t
RH
SA(555h)
SA(555h)
t
WPH
t
DS
t
DH
t
CH
BA(555h)
BA(555h)PABA
70h
BA
Status
10.9.4Hardware Reset (Reset#)
Table 42. Warm-Reset
Parameter
JEDECStd
t
RP
t
RH
t
RPH
RESET# Pulse
Width
Reset High Time
Before Read
RESET# Low to
CE# Low
DescriptionAll Speed OptionsUnit
Min50ns
Min200ns
Min10us
Figure 16. Reset Timings
Document Number: 002-00833 Rev. *L Page 52 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 17. Latency with Boundary Crossing
CLK
Address
(hex)
D124D125D126D127D128D129D130
(stays high)
AVD#
RDY
(Note 1)
Data
OE#,
CE#
(stays low)
Address boundary occurs every 128 words, beginning at address
00007Fh: (0000FFh, 00017Fh, etc.) Address 000000h is also a boundary crossing.
7C7D7E7F7F80818283
latency
RDY
(Note 2)
latency
t
RACC
t
RACC
t
RACC
t
RACC
CLK
Address
(hex)
D124D125D126D127
00h
(stays high)
AVD#
RDY
(Note 1)
Data
OE#,
CE#
(stays low)
Address boundary occurs every 128 words, beginning at address
00007Fh: (0000FFh, 00017Fh, etc.) Address 000000h is also a boundary crossing.
7C7D7E7F7F80818283
RDY
(Note 2)
t
RACC
t
RACC
00h
00h
00h
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.
Figure 18. Latency with Boundary Crossing into Bank Performing Embedded Operation
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 crossing a bank in the process of performing an erase or program.
Document Number: 002-00833 Rev. *L Page 53 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.9.5Wait State Configuration Register Setup
Data
AVD#
OE#
CLK
1
2345
D0
D1
0
6
1
7
3
To tal number of clock cycles
following addressesbeing latched
Rising edge of next
clock cycle following
last wait state triggers
next burst data
To tal number of clock edges following addresses being latched
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. The system should read status twice to ensure valid information.
Document Number: 002-00833 Rev. *L Page 55 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
10.9.6Erase and Programming Performance
ParameterTy p (Note 1)Max (Note 2)UnitComments
0.8/1.33.5/5.5
0.35/0.62.0/3.5
0.8/1.33.5/5.5
0.35/0.62.0/3.5
78/126 (128 Mbit)
155/251 (256 Mbit)
78/126 (128 Mbit)
155/251 (256 Mbit)
170800
14.194
948
4503000
2881540
118 (128 Mbit)
236 (256 Mbit)
76 (128 Mbit)
151 (256 Mbit)
200/325 (128 Mbit)
400/650 (256 Mbit)
154/250 (128 Mbit)
308/500 (256 Mbit)
157 (128 Mbit)
315 (256 Mbit)
80 (128 Mbit)
160 (256 Mbit)
30µs
s (Note 3)
Excludes system level
µs
s
overhead (Note 4)
Excludes system level
overhead (Note 4)
Sector Erase Time
(Note 6)
128 KbyteV
32 KbyteV
128 KbyteV
32 KbyteV
CC
CC
PP
PP
V
CC
Chip Erase Time (Note 6), (Note 7)
V
PP
Single Word Program Time (using
Program Buffer)
Effective Word Programming Time
using Program Write Buffer
Total 32-Word Buffer Programming
Time
Chip Programming Time
V
CC
V
CC
V
PP
V
CC
V
PP
V
CC
(using 32 word buffer)
V
PP
Erase Suspend/Erase Resume (t
)30µs
ESL
Program Suspend/Program Resume
(t
)
PSL
Blank Check1ms
Notes:
1. Typical program and erase times assume the following conditions: 25°C, 1.8 V V
pattern.
2. Under worst case conditions of –25°C, V
3. In the pre-programming step of the Embedded Erase algorithm, all words are programmed to 00h before erasure.
4. System-level overhead is the time required to execute the bus-cycle sequence for the program command. See Table 43 on page 57 for further information on
command definitions.
5. The device has a minimum erase and program cycle endurance of 10,000 cycles.
6. The first value excludes 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)
= 1.70 V, 100,000 cycles.
CC
, 10,000 cycles. Additionally, programming typically assumes a checkerboard
CC
Document Number: 002-00833 Rev. *L Page 56 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
11.Appendix
This section contains information relating to software control or interfacing with the Flash device.
11.1Command Definitions
All values are in hexadecimal. The S29VS-R family of devices are 16-bit word address oriented. Most system address buses,
regardless of data bus size, are byte oriented. It is common practice for system designers to shift the address busses. That is, Flash
Address A0 is connected to system Address A1, etc. To accommodate the system designers, addresses are listed in both word
address and byte address where applicable. The flash address (word) is listed above the system address (byte).
Table 43. Command Definitions
Bus Cycles (Notes 1–4)
FirstSecondThird Fourth
Command Sequence
Read RARD
Reset1XF0
Write Buffer Load (8)3-34
Buffer to Flash1
Chip Erase2
Sector Erase2
Read Status Register2
Clear Status Register1
Program Suspend (5)1XXX51
Program Resume (5)1(SA) 00050
Erase Suspend (6)1XXXB0
Erase Resume (6)1(SA) 00030
Blank Check (13)1
Sector Lock/Unlock3
Sector Lock Range4
ID/CFI Entry (7)(10)1
ID/CFI Read1(SA) RAdata
ID/CFI
ID/CFI Exit1XXXFO
Cycles
AddrDataAddrDataAddrDataAddrData
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
555
AAA
555
AAA
(SA) X55
(SA) XAA
25
29
80
80
70(SA)RR
71
33
60
60
ID/CFI Command Definitions
90 or 98
(SA) 2AA
(SA) 554
(SA) 2AA
(SA) 554
(SA) 2AA
(SA) 554
2AA
554
2AA
554
WC
10
30
60SLA60
60SLA61SLA61
(SA) PA
(11)
PDPA (12)PD
Document Number: 002-00833 Rev. *L Page 57 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Table 43. Command Definitions (Continued)
FirstSecondThird Fourth
Command Sequence
Configuration
Register Entry (7)
(10)
Write Buffer Load3
Buffer to Flash
(Configuration
Register)
Configuration
Register Read
Configuration Register
Configuration
Register Exit
SSR Lock Entry
(7)(10)
Write Buffer Load (8)3
Buffer to Flash1
SSR Lock
Cycles
AddrDataAddrDataAddrDataAddrData
(SA) 555
1
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
1
(SA) AAA
1(SA) X00RR
1XXXFO
(SA) 555
1
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
SSR Lock Read1(SA) XXXRR
SSR Lock Exit 1XXXF0
Secure Silicon Region Command Definitions
Secure Silicon
Region Entry (7)(10)
Write Buffer Load (8)3-34
Buffer to Flash1
Secure Silicon
Region Read
Secure Silicon Region
Secure Silicon
Region Exit
(SA) 555
1
(SA) AAA
(SA) 555
(SA) AAA
(SA) 555
(SA) AAA
1(SA) RARD
1XXXF0
Bus Cycles (Notes 1–4)
Configuration Command Definitions
D0
25
(SA) 2AA
(SA) 554
0(SA) X00PD
29
SSR Lock Command Definitions
40
25
(SA) 2AA
(SA) 554
0(SA) 00PD
29
88
25
(SA) 2AA
(SA) 554
WC(SA) PAPD(SA) PAPD
29
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
SLA = Sector Lock Address
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.
Document Number: 002-00833 Rev. *L Page 58 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Notes:
1. See Section 7., Device Operations on page 17 for description of bus operations.
2. 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.
3. Data bits DQ15–DQ8 are don’t care in command sequences, except for RD, PD, and WD.
4. 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.
5. The Program Resume command is valid only during the Program Suspend mode/state.
6. The Erase Resume command is valid only during the Erase Suspend mode/state.
7. Command is valid when all banks are ready to read array data.
8. The total number of cycles in the command sequence is determined by the number of words written to the write buffer.
must be at VHH during the entire operation of this command.
9. V
PP
10. Entry commands are needed to enter a specific mode to enable instructions only available within that mode.
11. 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.
12. Subsequent addresses must fall within the same Sector and Page as the initial starting address.
13. Blank Check is only functional in Asynchronous Read mode (Configuration Register - CR [15] = 1).
11.2Device ID and Common Flash Memory Interface Address Map
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.
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.
(SA) + 55h(SA) + AAh0005hErase Suspend Time-out Maximum 2
(SA) + 56h(SA) + ACh0005hProgram Suspend Time-out Maximum 2
(SA) + 57h(SA) + AEh0008hBank Organization: X= Number of banks
(SA) + 58h(SA) + B0h
(SA) + 59h(SA) + B2h0020h0010h
(SA) + 5Ah(SA) + B4h0020h0010h
(SA) + 5Bh(SA) + B6h0020h0010h
(SA) + 5Ch(SA) + B8h0020h0010h
(SA) + 5Dh(SA) + BAh0020h0010h
Common Flash Interface
(SA) + 5Eh(SA) + BCh0020h0010h
(SA) + 5Fh(SA) + BEh
DATA
VS256R/XS256R VS128R/XS128R
0020h
(Top Boot)
0023h
(Bottom Boot)
0020h
(Bottom Boot)
0023h
(Top Boot)
0010h
(Top Boot)
0013h
(Bottom Boot)
0010h
(Bottom Boot)
0013h
(Top Boot)
Description
Unlock Bypass
00h = Not Supported
01h = Supported
Secure Silicon Region (Customer SSR Area) Size 2
bytes
Hardware Reset Low Time-out until reset is
completed during an embedded algorithm Maximum 2
(e.g. 10 s => n = E)
Hardware Reset Low Time-out until reset is
completed not during an embedded algorithm Maximum 2
(e.g. 10 s => n = E)
Bank 0 Region Information.
X= Number of sectors in bank
Bank 1 Region Information.
X= Number of sectors in bank
Bank 2 Region Information.
X= Number of sectors in bank
Bank 3 Region Information.
X= Number of sectors in bank
Bank 4 Region Information.
X= Number of sectors in bank
Bank 5 Region Information.
X= Number of sectors in bank
Bank 6 Region Information.
X= Number of sectors in bank
Bank 7 Region Information.
X= Number of sectors in bank
N
ns
N
ns
N
µs
N
µs
N
Document Number: 002-00833 Rev. *L Page 64 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 21. Asynchronous Read - AADM Interface
Add-HiAdd-Low
Data
t
CR
t
CR
t
CEZ
t
OEZ
t
ACC
t
ACC
t
CE
t
OE
t
AVDP
t
AVDP
t
AVDP
t
AAVDH
t
AAVDH
t
AAVDS
t
AAVDS
t
AAVDH
t
AAVDH
t
AAVDS
t
AAVDS
t
CAS
OE# enables data output only after the Address-Low cycle in which AVD# is Low and OE# is High
OE# is ignored after OE# returns high between accesses until the next Address-Low is received
OE# low with AVD# low signals the presence of Address-High.
The Address-High cycle is optional. When the high part of address does
not change only the Address-Low cycle is needed.
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
CLK
CLK may be at VIL or VIH or Active
AHALDAHALD
t
CEZ
t
CR
t
OEZ
t
CEZ
t
ACC
t
ACC
t
OEZ
t
ACC
t
ACC
t
CE
t
OE
t
AAVDH
t
AAVDS
t
AAVDH
t
AAVDS
t
WEA
t
OEH
t
AVDO
t
AVDO
t
AAVDH
t
AAVDS
t
AVDP
t
t
CAS
CLK may be at VIL or VIH or Active
CLK
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
t
OE
Figure 22. Asynchronous Read Followed By Read - AADM Interface
Document Number: 002-00833 Rev. *L Page 65 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 23. Asynchronous Read Followed By Write - AADM Interface
AHALDAHALD
t
CEZ
t
CR
t
CEZ
t
OEZ
t
CE
t
ACC
t
ACC
t
OE
t
DH
t
DS
t
AAVDH
t
AAVDS
t
CH
t
WC
t
WP
t
CS
t
VLWH
t
WPH
t
WEA
t
OEH
t
AAVDH
t
AAVDS
t
AVDO
t
AAVDH
t
AAVDS
t
AVDP
t
CAS
CLK may be at VIL or VIH or Active
CLK
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
Add-HighAdd-LowData
t
CEZ
t
CR
t
DH
t
DS
t
AAVDH
t
AAVDH
t
AAVDS
t
AAVDS
t
CH
t
VLWH
t
WC
t
WP
t
CS
t
WPH
t
WEA
t
AAVDH
t
AAVDS
t
AVDP
t
AVDP
t
AVDP
t
CAS
OE# low with AVD# low signals the presence of Address-High. The Address-High cycle is optional.
When the high part of address does not change only the Address-Low cycle is needed.
OE# enables data output only after the Address-Low cycle in which AVD# is Low and OE# is High.
OE# is ignored after OE# returns high between accesses until the next Address-Low is received.
CLK may be at VIL or VIH or Active
CLK
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
Document Number: 002-00833 Rev. *L Page 66 of 74
Figure 24. Asynchronous Write - AADM Interface
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 25. Asynchronous Write Followed By Read - AADM Interface
AHALDAHALD
t
CEZ
t
CR
t
CEZ
t
OEZ
t
ACC
t
ACC
t
OE
t
DH
t
DS
t
AAVDH
t
AAVDS
t
OEH
t
VLWH
t
CH
t
WC
t
WP
t
CS
t
WPH
t
WEA
t
AVDO
t
AAVDH
t
AAVDS
t
AVDP
t
CAS
CLK
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
CLK may be at VIL or VIH or Active
AHALDAHAL
D
t
CEZ
t
CR
t
DH
t
AAVDH
t
DS
t
AAVDH
t
AAVDS
t
AAVDS
t
VLWH
t
CH
t
WC
t
WP
t
VLWH
t
WPH
t
WP
t
WEA
t
CS
t
AAVDH
t
AAVDS
t
AAVDH
t
AAVDS
t
AVDP
t
CAS
CLK may be at VIL or VIH or Active
CLK
CE#
AVD#
OE#
WE#
A/DQ15A/DQ0
RDY
t
DS
t
DH
Document Number: 002-00833 Rev. *L Page 67 of 74
Figure 26. Asynchronous Write Followed By Write - AADM Interface
S29VS256R
S29VS128R
S29XS256R
S29XS128R
CLK
t
RACC
t
RACC
t
RACC
t
CEZ
t
RACC
t
RACC
t
RACC
t
CR
t
OEZ
t
BACC
t
BDH
t
BACC
t
OE
t
ACH
t
ACS
t
AVDH
t
AVDS
t
AVDH
t
AVDP
t
AVDS
t
CES
t
IA
t
IA
In continuous burst, wait states equal to the internal access
time are inserted between the end of one cache line and the
start of the next cache line
OE# low with AVD# low signals the presence of Address-High.
The Address-High cycle is optional. When the high part of address does
not change only the Address-Low cycle is needed.
Address-Low only cycle
OE# enables data output only after the Address-Low cycle in which AVD# is Low and OE# is High.
OE# is ignored after OE# returns high between accesses until the next Address-Low is received.
to CLK rising edge at beginning of first data out.
OE# enables data output only after the Address-Low cycle in which AVD# is Low and OE# is High.
OE# is ignored after OE# returns high between accesses until the next Address-Low is received.
OE# low with AVD# low signals the presence of Address-High.
The Address-High cycle is optional. When the high part of address does
not change only the Address-Low cycle is needed.
CLK
CE#
AVD#
OE#
WE#
A/DQ15-A/DQ0
RDY(with data)
RDY(before data)
AHALAHAL
t
RACC
t
RACC
t
RACC
t
CEZ
t
RACC
t
RACC
t
RACC
t
RACC
t
CR
t
OEZ
t
BACC
t
OE
ASIC_t
CO
t
OEZ
t
BDH
t
BACC
t
OE
t
ACH
t
ACS
t
AVDH
t
AVDS
t
AVDH
t
AVDP
t
AVDS
t
CES
t
IA
t
IA
CLK
CE#
AVD#
OE#
WE#
A/DQ15 - A/DQ0
RDY(with data)
RDY(before data)
Document Number: 002-00833 Rev. *L Page 69 of 74
Figure 30. Synchronous Read Followed By Read Burst - AADM Interface
S29VS256R
S29VS128R
S29XS256R
S29XS128R
CLK
AHALWrite DataAHAL
t
RACC
t
RACC
t
CR
t
CEZ
t
RACC
t
RACC
t
RACC
t
CR
t
OEZ
t
BACC
t
BDH
t
BACC
t
OE
t
DH
t
DS
t
AAVDH
t
AAVDS
t
OEH
t
VLWH
t
WP#
t
WC
t
WPH
t
WEA
t
AVDH
t
CES
t
AVDS
t
CAS
t
AVDP
t
IA
Address-High
Cycles Optional
Address-High
Cycles Optional
CLK
CE#
AVD#
OE#
WE#
A/DQ15-A/DQ0
RDY(with data)
RDY(before data)
CE#
AVD#
OE#
WE#
A/DQ15-A/DQ0
RDY(with data)
RDY(before data)
Figure 31. Synchronous Read Followed By Write - AADM Interface
t
IA
t
CES
t
AVDP
t
AVDH
t
AVDS
t
OEH
t
WEA
t
ACS
t
ACH
AHALAHAL
t
RACC
t
CR
t
OE
t
WPH
t
RACC
t
BACC
t
RACC
t
t
WC
BDH
t
BACC
t
RACC
t
RACC
t
OEZ
t
AVDP
t
t
RACC
t
RACC
t
WP
VLWH
t
DS
Write Data
t
CH
t
DH
t
CEZ
Document Number: 002-00833 Rev. *L Page 70 of 74
Figure 32. Synchronous Write Followed By Read Burst - AADM Interface
S29VS256R
S29VS128R
S29XS256R
S29XS128R
Figure 33. Synchronous Write Followed By Write - AADM Interface
Device ID and Common Flash Memory Interface Address Map
Changed some values in the ID/CFI Data table
Memory Address Map
Added memory address map
Updated ball positions
Functional in Asynchronous Read Mode only
DC Characteristics
Changed some ICCB values
Global
Added 108 MHz; removed 66 MHz
Modified document title
Features
Clarified some points
Ordering Information and Valid Combinations
Added Industrial Temperature range option
Address/Data Interface
Corrected typo
Device Bus OperationsTa ble
Corrected A/DQ15-A/DQ0 column information for Asynchronous Read
Asynchronous Read
Clarified asynchronous read operation.
S29XS-R AADM Access
Clarified asynchronous AADM read access.
S29VS-R ADM Access
Standardized logic Low and High descriptions to VIL and VIH. Clarified wait
states required by initial access and internal boundary crossings.
S29XS-R AADM Access
Standardized logic Low and High descriptions to VIL and VIH. Clarified wait
states required by initial access and internal boundary crossings.
Writing Commands/Command Sequences
Clarified device behavior.
Program/Erase Operations
Removed redundant information.
Sector Lock Range Command
Clarified Sector Lock Range behavior
Figure Synchronous Read Mode
Added “ADM Interface” label
Figure Asynchronous Mode Read
Added “ADM Interface” label
*D (Cont.)–WIOB05/26/2010 Figure Latency with Boundary Crossing
*E–WIOB07/22/2010 DC Characteristics
*F–WIOB11/18/2010 Erase and Programming Performance
*G–WIOB07/30/2012Command Definitions
*H5043055WIOB12/17/2015
*I5632749WIOB02/16/2017
*J5967674AESATMP811/15/2017
*K6269679PRIT08/09/2018
®
Flash
Orig. of
Change
Submission
Date
Description of Change
Corrected CR8 setting in Notes 1 and 2
Figure Latency with Boundary Crossing into Bank Performing Embedded
Operation
Corrected CR8 setting in Notes 1 and 2
Figures Asynchronous Read - AADM Interface to Asynchronous Write
Followed By Write - AADM Interface
Clarified CLK waveform behavior
Figure Synchronous Write Followed By Read Burst - AADM Interface
Corrected Figure title
ADM Interface (S29VS256R and S29VS128R)
Clarified traditional interface
Table Wait State vs. Frequency
Modified title and added note
Table Address Latency for 10–13 Wait States
Added note
Table Address Latency for 9 Wait States
Added note
Figure Synchronous Read
Removed note 1
CLK Characterization
Removed note 2
Erase and Programming Performance
Corrected note 2
Changed ICC Read test conditions to OE#=H with relevant values
Performance Characteristics
Updated tables
Erase and Programming Performance
Changed typical programming times
Changed maximum chip erase times
ID/CFI Data
Corrected Data and Description for Word Offset 03h, 55h, 56h
Corrected Data for Word Offset 1Dh, 1Eh, 52h
Corrected number of cycles for Write Buffer Load
Changed status from Advance to Final.
Updated to Cypress template.
Updated Electrical Specifications:
Updated V
Power-Up and Power Down:
CC
Added description.
Added V
, tPD parameters and their corresponding details in the
RST
table.
Added Figure 10 and Figure 11.
Updated to new template.
Updated Cypress Logo and Copyright.
Updated to new template.
Completing Sunset Review.
Updated Physical Dimensions/Connection Diagrams:
Updated Special Handling Instructions for FBGA Package:
Updated VDJ044-44-Ball Very Thin Fine-Pitch Ball Grid Array, 6.2
mm x 7.7 mm:
Removed existing spec.
Added spec 002-24745 **.
Updated to new template.
Completing Sunset Review.
Document Number: 002-00833 Rev. *L Page 74 of 74
S29VS256R
S29VS128R
S29XS256R
S29XS128R
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
Arm® Cortex® Microcontrollerscypress.com/arm
Automotivecypress.com/automotive
Clocks & Bufferscypress.com/clocks
Interfacecypress.com/interface
Internet of Thingscypress.com/iot
Memorycypress.com/memory
Microcontrollerscypress.com/mcu
PSoCcypress.com/psoc
Power Management ICscypress.com/pmic
Touch Sensingcypress.com/touch
USB Controllerscypress.com/usb
Wireless Connectivitycypress.com/wireless
PSoC® Solutions
PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5LP | PSoC 6 MCU
Cypress Developer Community
Community | Projects | Video | Blogs | Training | Components
TO THE EXTENT PERMITTED BY APPLICABLE LAW, CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS DOCUMENT OR ANY SOFTWARE
OR ACCOMPANYING HARDWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. No computing
device can be absolutely secure. Therefore, despite security measures implemented in Cypress hardware or software products, Cypress shall have no liability arising out of any security breach, such
as unauthorized access to or use of a Cypress product. CYPRESS DOES NOT REPRESENT, WARRANT, OR GUARANTEE THAT CYPRESS PRODUCTS, OR SYSTEMS CREATED USING
CYPRESS PRODUCTS, WILL BE FREE FROM CORRUPTION, ATTACK, VIRUSES, INTERFERENCE, HACKING, DATA LOSS OR THEFT, OR OTHER SECURITY INTRUSION (collectively, “Security
Breach”). Cypress disclaims any liability relating to any Security Breach, and you shall and hereby do release Cypress from any claim, damage, or other liability arising from any Security Breach. In
addition, the products described in these materials may contain design defects or errors known as errata which may cause the product to deviate from published specifications. To the extent permitted
by applicable law, Cypress reserves the right to make changes to this document without further notice. Cypress does not assume any liability arising out of the application or use of any product or
circuit described in this document. Any information provided in this document, including any sample design information or programming code, is provided only for reference purposes. It is the
responsibility of the user of this document to properly design, program, and test the functionality and safety of any application made of this information and any resulting product. “High-Risk Device”
means any device or system whose failure could cause personal injury, death, or property damage. Examples of High-Risk Devices are weapons, nuclear installations, surgical implants, and other
medical devices. “Critical Component” means any component of a High-Risk Device whose failure to perform can be reasonably expected to cause, directly or indirectly, the failure of the High-Risk
Device, or to affect its safety or effectiveness. Cypress is not liable, in whole or in part, and you shall and hereby do release Cypress from any claim, damage, or other liability arising from any use of
a Cypress product as a Critical Component in a High-Risk Device. You shall indemnify and hold Cypress, its directors, officers, employees, agents, affiliates, distributors, and assigns harmless from
and against all claims, costs, damages, and expenses, arising out of any claim, including claims for product liability, personal injury or death, or property damage arising from any use of a Cypress
product as a Critical Component in a High-Risk Device. Cypress products are not intended or authorized for use as a Critical Component in any High-Risk Device except to the limited extent that (i)
Cypress’s published data sheet for the product explicitly states Cypress has qualified the product for use in a specific High-Risk Device, or (ii) Cypress has given you advance written authorization to
use the product as a Critical Component in the specific High-Risk Device and you have signed a separate indemnification agreement.
Cypress, the Cypress logo, Spansion, the Spansion logo, and combinations thereof, WICED, PSoC, CapSense, EZ-USB, F-RAM, and Traveo are trademarks or registered trademarks of Cypress in
the United States and other countries. For a more complete list of Cypress trademarks, visit cypress.com. Other names and brands may be claimed as property of their respective owners.
Document Number: 002-00833 Rev. *L Revised May 27, 2019Page 75 of 75
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.