Migrate S29GL-N P to S29GL

Migrate S29GL-N P to S29GL
Migration from GL-N and GL-P to GL-S
Flash
Application Note
1. Introduction
Spansion® continues to extend the MirrorBit® GL family of 3V NOR flash with the introduction of the GL-S
parallel NOR family based on 65 nm MirrorBit Eclipse™ technology. Spansion developed the GL-S flash
family with migration in mind and most existing applications developed for GL-N and GL-P flash can also use
GL-S flash. This document will outline the product differences that will require attention to facilitate the
migration to GL-S flash. Note: This document discusses the use of GL-S family members from 128 Mbit to
1 Gbit density (S29GLxxxS) and the 2 Gbit density provided in a Dual Die Package (DDP) using a pair of
1 Gbit devices (S70GL02GS). This document does not address the unique feature set of the discrete 2 Gbit
(S29GL02GS) device for gaming applications.
2. GL-N, GL-P, and GL-S Flash Feature Comparison
Table 2.1 provides an overview of the features of the GL-N, GL-P, and GL-S flash families. The 65 nm
MirrorBit Eclipse GL-S flash provides significantly improved program and erase performance for high density
3V parallel NOR applications, while maintaining basic hardware and software compatibility to allow use on
existing designs which utilize GL-N and/or GL-P flash. The feature differences are discussed in Section 3.
One underlying difference between the legacy GL-N and GL-P families and the 65 nm GL-S family is the use
of a microcontroller to manage internal flash activities instead of a hard wired state machine. The benefit of
this approach is significant efficiencies gained during product development and production test. The impact of
this microcontroller based software state machine implementation is an increase in the time required for the
device to self-configure when power is applied. The differences in Power-On-Reset (POR) timing are
discussed in Section 4., Power On and Warm Reset Timing on page 9.
The differences in DC and AC specifications are detailed in Section 5., DC and AC Parameter Differences
on page 10. The differences in footprint and packaging are discussed in Section 6., Packaging on page 12.
Publication Number Migrate_S29GL-N_P_to_S29GL-S_AN
Revision 08
Issue Date May 10, 2013
A pplication
Note
Table 2.1 GL Family Feature Comparison
Family
S29GL-N
S29GL-P
S29GL-S
Migration Issues
Process Node
110 nm
90 nm
65 nm
No
Density
128 Mbit
√
√
√
No
256 Mbit
√
√
√
No
512 Mbit
√
√
√
No
√
√
No
√ (multi-die)
√ (multi-die)
No
√
√
No
1024 Mbit
2048 Mbit
Sector Architecture
Uniform 128 kB
√
Access
Data Bus Width
x8/x16
x8/x16
x16
Potential
Asynchronous
√
√
√
No
Read Page Mode
√
√
√
No
Read Page Size
16 Byte
16 Byte
32 Byte
No
Write Buffer Size
32 Byte
64 Byte
512 Byte
No
Security
Individual Sector Write Protection
√
√
√
No
Secure Silicon OTP Area
256 Byte
256 Byte
2 x 512 Byte
Potential
12V Accelerated Programming
√
√
Potential
Unlock Bypass Command
√
√
Potential
Multi-Sector Erase
√
√
Potential
High Voltage Autoselect Access
√
√
Other
Potential
√
Blank Check
No
High Voltage Autoselect Access
√
√
CFI Version
1.3
1.3
1.5
Potential
Status via Data Polling
√
√
√
No
√
No
Status via Status Register
Potential
Packaging and Ordering Options
64-ball BGA 10 x 13 mm (FAA064)
√
√
64-ball BGA 11 x 13 mm (LAA064)
√
√
64-ball BGA 9 x 9 mm (LAE064)
SnPb Solder Option (RoHS 5/6)
2
√
Migration from GL-N and GL-P to GL-S Flash
√
Yes
√
No
√
Potential
√
No
May 10, 2013
Ap pl ic atio n
No t e
3. Feature Difference Discussion
3.1
Density
The S29GL-S flash will be available in monolithic 128, 256, 512, and 1024 Mbit densities. The
same-die-stacked S70GL-S flash will be available in 2048 Mbit density only.
3.2
Sector Architecture
The GL-S flash have a 128 kB uniform sector architecture, identical to that in the GL-N and GL-P flash.
3.3
Data Bus Width
The GL-S flash support a x16 Data Bus only, e.g. DQ[15:0]. The BYTE# input on the x8/x16 GL-N and GL-P
flash devices, pin 53 on 56-TSOP and ball F7 on 64-BGA, is labeled Reserved for Future Use (RFU) on the
GL-S and that input is not connected internally. Migration to GL-S flash is only possible on existing GL-N and
GL-P designs that have the BYTE# input pulled > VIH to force operation in x16 data mode.
3.4
Read Page Buffer Size
The GL-S flash have a 32 byte (16 word) read page buffer, which is double the length of the legacy GL-N and
GL-P flash to facilitate larger processor cache line fill operations. No software modifications are required to
operate with 16 byte maximum read page transfers supported by the GL-N and GL-P flash.
Software can be modified to take advantage of the larger GL-S read page buffer by querying the CFI
programming buffer depth register at CFI word offset 4Ch and configuring software to perform additional page
mode read cycles.
3.5
Write Buffer Size
The GL-S flash have a 512 byte (256 word) write buffer, sixteen times the size of the GL-N flash and eight
times the size of the GL-P. The larger write buffer facilitates higher programming throughput and better data
alignment with most file systems. No software modifications are required to operate with a 32 byte or 64 byte
maximum write buffer fill supported by the GL-N and GL-P flash, respectively.
Software can be modified to take advantage of the larger GL-S write buffer by querying the CFI programming
buffer size register at CFI word offset 2Ah and configuring software to perform large buffer fills. It is
recommended that GL-S buffer writes be performed on multiples of 32-byte pages to maximize data integrity,
e.g. load buffer with one to sixteen 32-byte pages of data that will be programmed in parallel into the array.
3.6
High Voltage Accelerated Programming
The GL-S flash does not support accelerated programming, unlike the GL-N and GL-P flash which support
high voltage accelerated programming when VHH (nominally 12V) was applied to the WP#/ACC input.
The GL-S flash programming throughput is dramatically higher than the high voltage accelerated
programming throughput of the GL-N and GL-P flash which negates the need for this legacy feature.
The GL-S does not support input levels greater than 4.0V on any input. If an existing design is enabled to
support high voltage application for accelerated programming of GL-N or GL-P flash, it must be modified so
that it does not apply voltages greater than VIO to GL-S flash.
3.7
Autoselect Register Access
The GL-S flash only supports Autoselect Register access via software commands, unlike the GL-N and GL-P
flash, which support Autoselect Register access via software commands as well as a high voltage method
which requires VID (nominally 12V) applied to Address input A9.
The GL-S does not support input levels greater than 4.0V on any input. If an existing design is enabled to
support Autoselect Register access via the high voltage method, it must be modified so that it does not apply
voltages greater than VIO to GL-S flash.
May 10, 2013
Migration from GL-N and GL-P to GL-S Flash
3
A pplication
Note
In the GL-N and GL-P flash, the Autoselect Register is overlaid with Sector Address zero (SA00). In the GL-S
flash, the Autoselect Register is overlaid with whichever sector is selected with the Autoselect Entry
command. SW modification is not required to access the GL-S flash Autoselect Register in existing GL-N and
GL-P designs.
Sector Lock Status can be determined by accessing Autoselect Register word offset 02h within the desired
sector. In GL-N and GL-P flash, the lock protection status of multiple sectors can be determined after entering
Autoselect mode at the flash base address. On GL-S flash, only the protection status of the sector selected in
the Autoselect entry command can be determined. To determine the lock protection status of a different
sector, Autoselect mode has to be exited and reentered using the desired sector in the Autoselect Entry
command.
3.8
Device ID
The 128 Mbit, 256 Mbit, 512 Mbit, and 1024 Mbit GL-S flash will have the same Device ID register values as
the corresponding density GL-N and GL-P flash. The S70GL02GS flash will have the same Device ID as the
S70GL02GP flash.
Table 3.1 GL Flash Device IDs
Description
Address
Read Data
Device ID word 1
(SA) + 0001h
227Eh
Device ID word 2
(SA) + 000Eh
2248h = 2 Gbit
2228h = 1 Gbit
2223h = 512 Mbit
2222h = 256 Mbit
2221h = 128 Mbit
Device ID word 3
(SA) + 000Fh
2201h
Existing software which supports the GL-N or GL-P flash that utilizes Device ID to set up software command
support does not require modification to enable compatible functionality of the GL-S flash. Use of specific CFI
Register queries should be employed to take advantage of new GL-S superset features, such as larger read
page buffers and write buffers. The CFI Process Generation bits at CFI word offset 45h provide for in-system
determination of the unique GL family, e.g. GL-N: 0010h, GL-P: 0014h, GL-S: 001Ch.
Device ID can only be accessed via software Autoselect Register commands on the GL-S flash and not the
optional high voltage method supported on the GL-N and GL-P flash.
3.9
Unlock Bypass
The GL-S flash does not support Unlock Bypass mode programming, unlike the existing the GL-N and GL-P
flash.
Unlock Bypass mode programming is a legacy feature used to decrease the command cycle overhead by
50% when performing programming with the single byte/word Program command only. Applications using
high density GL devices rely on multi-word write buffer programming to maximize programming throughput.
Write buffer programming has an inherently low effective command overhead and supports single byte/word
programming. If an existing design is enabled to support Unlock Bypass programming, it must be modified so
that it does not use Unlock Bypass commands with GL-S flash.
3.10
Multi-Sector Erase
The GL-S flash does not support multi-sector erase, unlike the GL-N and GL-P flash.
Multi-sector erase is a legacy feature that allowed queueing of multiple sector erase operations within one
command string to minimize command overhead. This is a rarely used function so removal of this feature
should not prevent migration to GL-S flash on most existing designs. Those applications that do support
multi-sector erase will require modification to send a separate erase command for each sector erase
operation.
4
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
3.11
No t e
Secure Silicon OTP Area
The S29GL-S flash devices have 1024 bytes of one time programmable (OTP) memory. This Secure Silicon
Region (SSR) is divided into two areas, the lower 512B region, SSR Region 0, is Factory modifiable and the
upper 512B region, SSR Region 1, is Customer modifiable. SSR0 can be ordered Factory pre-programmed.
SSR0 is Factory locked and cannot be Customer modified. The Secure Silicon Region can only be accessed
after writing the Secure Silicon Entry command and is mapped into the lower 1 kB of the sector selected
during the entry command. SSR Region 0 is overlaid onto word offset 0x0000 to 0x00FF of the selected
sector. SSR Region 1 is overlaid onto word offset 0x0100 to 0x01FF of the selected sector. Memory outside
of the 1 kB Secure Silicon Region has undefined data when in Secure Silicon access mode.
The GL-N and GL-P flash have 256B of OTP in the Secure Silicon Sector region. This region can be ordered
Factory preprogrammed and locked, or it can be programmed and locked by the user. This region can only be
accessed in Secure Silicon Access mode and is overlaid onto word 0x0000 to 0x007F of SA0.
The Secure Silicon Lock Register bit usage is different for GL-S. The GL-S Lock Register DQ0 is Factory
programmed to 0 to indicate SSR Region 0 was Factory locked. The GL-S Lock Register bit 6 is Factory
preset to 1 to indicate SSR Region 1 is unlocked and it can be programmed to 0 by the Customer to lock SSR
Region 1. The GL-N and GL-P Lock Register DQ0 is by default preset to 1 to indicate the Secure Silicon
Region is unlocked. It can be Factory set to 0 if Factory preprogramming is ordered or can be programmed to
0 by the Customer to lock the Secure Silicon Region.
In the GL-S flash, the Factory Lockable SSR Region 0 Lock Status bit is bit 7 at x16 offset 003h in the
Autoselect Register and the User Lockable SSR Region 1 Lock Status bit is bit 6 at word offset 003h in the
Autoselect Register. In the GL-N and GL-P flash, the Secure Silicon Sector Lock Status bit is bit 7 at word
offset 003h in the Autoselect Register, and when set, indicated the Secure Silicon Region was locked either in
the Factory or by the User.
The S70GL02GS flash effectively has two 1 kB OTP areas, one in each GL01GS die. Access to the upper
region requires flash input A26 = 1 during the Secure Silicon Register Access command cycles.
3.12
Write Protection
The GL-S flash supports the Advanced Sector Protection (ASP) feature that provides software enabled
program and erase protection on a sector basis utilizing user configurable 8-byte password, non-volatile and
volatile control, consistent with the GL-N and GL-P flash.
3.13
Data Polling
GL-S flash supports legacy data polling to determine the status of embedded programming and erase
operations. The implementation is consistent with the GL-N and GL-P flash and no software modification is
required to continue using data polling routines when migrating to the GL-S flash.
During sector erase operations on GL-S, the DQ3 bit will immediately transition to logic 1 after the sixth sector
erase command cycle, indicating the erase operation has begun. On GL-N and GL-P flash, the DQ3 bit did
not transition to logic 1 until ~50 microseconds had elapsed following the sixth sector erase command cycle
to allow entry of additional sector address and erase command pairs. The GL-S does not support the sector
erase queuing feature.
If a DQ5 time out event occurs on GL-S flash, a software reset command is required to clear DQ5 and to
return the flash to a ready state. It can take up to 2 µs for the flash to stop communicating that it is busy
following this reset command.
Data polling may not be supported on future smaller process geometry MirrorBit Eclipse GL flash families.
Status Register reads will be required to determine the status of embedded program and erase operations if
data polling is not supported.
May 10, 2013
Migration from GL-N and GL-P to GL-S Flash
5
A pplication
3.14
Note
Status Register
The GL-S flash supports Status Register reads as an alternative method to Data Polling for determination of
embedded operation status. The Status Register feature is not supported on the GL-N and GL-P flash.
The 16-bit Status Register is accessed via a two cycle operation consisting of a Read Status Register
Command write cycle followed immediately by a read cycle to the same targeted sector address. Utilization of
the Status Register is advantageous because, unlike legacy data polling, software does not need to track
active address regions or compare sequential polling read values to determine embedded algorithm status.
One Status Register access provides all the information necessary to determine the flash state. A Clear
Status Register command is available to reset the last completed embedded operation portion of the Status
Register.
Status Register usage is optional and existing designs utilizing GL-N and GL-P flash do not have to
accommodate this feature. If desired, software can be modified to take advantage of this feature by querying
the Lower Software Bits at offset 000Ch in Autoselect mode. If bit 0 is set, Status Register functionality is
supported. Section 7., Appendix — Status Register Read Source Code Example on page 16 contains
sample C source code showing how to implement Data Polling and Status Register accesses.
Full details of the Status Register implementation are provided in the GL-S flash data sheet
(S29GL_128S_01GS_00). The Status Register bit definitions are provided in Table 3.2.
Table 3.2 Status Register Bit Definition
Status Register Bit
15:08
7
Description
Name
Reset Value
Busy Status
x
Invalid
1
0
Reserved
Device Ready Bit
DRB
Ready Status
x
1
ESSB
0
Invalid
0: No Erase In Suspension
1: Erase In Suspension
Erase Status Bit
ESB
0
Invalid
0: Erase Successful
1: Erase Failed
4
Program Status Bit
PSB
0
Invalid
0: Program Successful
1: Program Failed
3
Write Buffer Abort Status Bit
WBASB
0
Invalid
0: Program Not Aborted
1: Program Aborted During
Write Buffer Command
2
Program Suspend Status Bit
PSSB
0
Invalid
0: No Program In Suspension
1: Program In Suspension
1
Sector Lock Status Bit
SLSB
0
Invalid
0: Sector Not Locked During
Operation
1: Sector Locked Error
Operation
0
Reserved
0
Invalid
x
6
Erase Suspend Status Bit
5
Notes:
1. Bits 15 thru 8, and 0 are reserved for future use and may display as 0 or 1. These bits should be ignored (masked) when checking status.
2. Bit 7 is 1 when there is no Embedded Algorithm in progress in the device.
3. Bits 6 thru 1 are valid only if bit 7 is 1.
4. All bits are put in their reset status by cold reset or warm reset.
5. Bits 5, 4, 3, and 1 are cleared to 0 by the Clear Status Register command or Reset command.
6. Upon issuing the Erase Suspend Command, the user must continue to read status until DRB becomes 1.
7. ESSB is cleared to 0 by the Erase Resume Command.
8. ESB reflects success or failure of the most recent erase operation.
9. PSB reflects success or failure of the most recent program operation.
10. During erase suspend, programming to the suspended sector will cause program failure and set the Program status bit to 1.
11. Upon issuing the Program Suspend Command, the user must continue to read status until DRB becomes 1.
12. PSSB is cleared to 0 by the Program Resume Command.
13. SLSB indicates that a program or erase operation failed because the sector was locked.
14. SLSB reflects the status of the most recent program or erase operation.
6
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
3.15
No t e
Blank Check
The GL-S flash supports a sector Blank Check feature that enables system software to minimize latency
associated with erasures prior to code updates. Use of this feature is optional and is not supported in the
GL-N and GL-P flash. The addition of Blank Check feature is transparent to existing designs. Please refer to
the GL-S data sheets for Blank Check feature implementation details.
3.16
CFI Register
Table 3.3 provides a listing of all the Common Flash File (CFI) register values that are different for the GL-N,
GL-P, and GL-S flash families. Software can access the CFI register to determine device specific features
such as array size, command set, page size, and programming time and use these values to self configure for
optimal performance. GL-S supports the CFI version 1.5, which is an extended address range revision of the
legacy CFI version 1.3 supported by the GL-N and GL-P flash.
Table 3.3 CFI Register Differences
Word Offset
GL-N
GL-P
GL-S
Typical timeout for single word write = 2N µs
CFI Register
1Fh
0007h
0006h
0008h
Typical timeout for maximum multi-byte program = 2N µs
20h
0007h
0009h
0009h
Typical timeout for individual block erase = 2N ms
21h
000Ah
0009h
0008h
0012h (1 Gb)
0011h (512 Mb)
0010h (256 Mb)
000Fh (128 Mb)
Typical timeout for full chip erase = 2N ms
0000h = Not Supported
22h
0000h
0013h (1 Gb)
0012h (512 Mb)
0011h (256 Mb)
0010h (128 Mb)
Maximum timeout for single word = 2N times typical
23h
0003h
0003h
0001h
Maximum timeout for maximum multi-byte program =
2N times typical
24h
0005h
0005h
0002h
Maximum timeout for individual block erase =
2N times typical
25h
0004h
0003h
0003h
Maximum timeout for full chip erase = 2N times typical
0000h = Not Supported
26h
0000h
0002h
0003h
Flash Device Interface Description
0000h = x8-only, 0001h = x16-only,
0002h = x8/x16-capable
28h
0002h
0002h
0001h
Maximum number of bytes in multi-byte write = 2N
2Ah
0005h
0006h
0009h
Minor version number, ASCII
44h
0033h
0033h
0035h
Process Technology (Bits 5-2):
0100b = 110 nm MirrorBit, 0101b = 90 nm MirrorBit,
0111b = 65 nm MirrorBit Eclipse
Address Sensitive Unlock (Bits 1-0):
00b = Required, 01b = Not Required
45h
0010h
0014h
001Ch
Page Mode Type
0002h = 8-word Page, 0003h = 16-word Page
4Ch
0002h
0002h
0003h
ACC (Acceleration) Supply Minimum
0000h = Not Supported, D[7:4] = V, D[3:0] = 100 mV
4Dh
00B5h
00B5h
0000h
ACC (Acceleration) Supply Maximum
0000h = Not Supported, D[7:4] = V, D[3:0] = 100 mV
4Eh
00C5h
00C5h
0000h
Unlock Bypass
0000h = Not Supported, 0001h = Supported
51h
–
–
0000h
Secure Silicon Sector (Customer OTP Area) Size =
2N bytes
52h
–
–
0009h
Software Features
53h
–
–
008Fh
Read Page Size = 2N bytes
54h
–
–
0005h
Erase Suspend Timeout Maximum < 2N µs
55h
–
–
0006h
N
May 10, 2013
Program Suspend Timeout Maximum < 2 µs
56h
–
–
0006h
Embedded Hardware Reset Timeout Maximum < 2N µs
78h
–
–
0006h
Non-embedded Hardware Reset Timeout Maximum
< 2N µs
79h
–
–
0009h
Migration from GL-N and GL-P to GL-S Flash
7
A pplication
Note
Certain software drivers verify specific values in the CFI register to assure support for the specific flash. Linux
MTD drivers verify the Major and Minor version number (ASCII) entries at CFI register word offsets 43h and
44h, respectively, to determine if device specific support is built into the MTD. GL-N and GL-P flash have a
Major version number value of 0031h (ASCII ‘1’) and a Minor version number value of 0033h (ASCII ‘3’) to
indicate the CFI Register follows the CFI 1.3 standard. The GL-S flash have a Major version number value of
0031h (ASCII ‘1’) and a Minor version number value of 0035h (ASCII ‘5’) to indicate the CFI Register follows
the CFI 1.5 standard. This difference will cause legacy MTD drivers to not recognize the GL-S flash. In that
case, a software patch is required to update the MTD for GL-S support. An appropriate Linux driver patch can
be downloaded from www.spansion.com.
3.17
Lock Register Differences
There are several changes to the Lock Register for GL-S Secure flash, see Table 3.4. The Lock Register bit 8
on GL-S indicates use of PPB bits is enabled and is Factory preset to 0. On GL-N and GL-P this bit is
Reserved and factory preset to 1.
The DQ7 ‘Reserved’ bit is factory set to either 0 or 1 on GL-S flash. This bit was factory preset to 1 on GL-N
and GL-P flash.
 The DQ6 ‘SSR Region 1 (Customer) Lock Bit’ on GL-S is factory set to 1 and can be customer set to 0 to
permanently write protect the 512 byte SSR 1 OTP region. This bit was ‘Reserved’ and factory preset to 1
on GL-N and GL-P flash.
 The DQ0 ‘SSR Region 0 (Factory) Lock Bit’ on GL-S is preset at the factory to 0 to permanently write
protect the 512 byte SSR 0 OTP region. On GL-N and GL-P this bit enables locking of the Secure Silicon
Region by either the Factory or Customer. If the Secure Silicon Region is Factory preprogrammed, this bit
is 0, which indicates the Secure Silicon Region is locked, otherwise it is Factory preset to 1 and can be set
to 0 by the Customer to lock the Secure Silicon Region.
Note: The Customer is not required to program DQ2 and DQ1, or DQ6 at the same time on GL-S Secure
flash. This allows the Customer to lock the SSR before or after the device protection scheme has been
selected. When programming the Lock Register, all ‘Reserved’ bits should be written as 1 (masked).
Table 3.4 Lock Register Differences
Lock Register
Bit
8
GL-N and GL-P Flash
GL-S Flash
Definition
Default
Customer
Alterable
no
Reserved
1111111b
no
no
Reserved
0b
no
no
Reserved
0b/1b
no
1b
no
SSR Region 1
(Customer) Lock Bit
1b
yes
Reserved
1b
no
Reserved
1b
no
Reserved
1b
no
Reserved
1b
no
Reserved
1b
no
Reserved
1b
no
1b
yes
Definition
Default
DQ[15:9]
Reserved
1111111b
DQ8
Reserved
1b
DQ7
Reserved
1b
DQ6
Reserved
DQ5
DQ4
DQ3
Customer
Alterable
DQ2
Password Protection
Mode Lock Bit
1b
yes
Read Password
Protection Mode Lock
Bit
DQ1
Persistent Protection
Mode Lock Bit
1b
yes
Persistent Protection
Mode Lock Bit
1b
yes
DQ0
Secure Silicon Sector
Protection Bit
1b
yes
SSR Region 0
(Factory) Lock Bit
0b
no
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
No t e
4. Power On and Warm Reset Timing
At power on, the flash requires additional time in the reset state to self configure than it does during a warm
reset. Table 4.1 and Figure 4.1 and Figure 4.2 detail the power on and warm reset timing requirements for the
GL-N, GL-P, and GL-S flash.
Table 4.1 Power On and Warm Reset Timing Requirements
Parameter
Description
Type
GL-N
GL-P
GL-S
Power on Reset
tVCS
VCC Setup Time to first access
min
35 µs
35 µs
300 µs
tVIOS
VIO Setup Time to first access
min
35 µs
35 µs
300 µs
tRPH
RESET# Low to CE# Low
min
35 µs
35 µs
35 µs
tRP
RESET# Low to RESET# High
min
500 ns
35 µs
200 ns (2)
tRH
RESET# High to CE# Low
min
50 ns
200 ns
50 ns (2)
tCEH
CE# High to CE# Low
min
N/A
N/A
20 ns
Warm Reset
tRPH
RESET# Low to CE# Low
min
20 µs (3)
35 µs
35 µs
tRP
RESET# Low to RESET# High
min
500 ns
35 µs
200 ns (2)
tRH
RESET# High to CE# Low
min
50 ns
200 ns
50 ns (2)
tCEH
CE# High to CE# Low
min
N/A
N/A
20 ns
Notes:
1. N/A = Not Applicable.
2. For GL-S, tRP + tRH must not be less than tRPH.
3. For GL-N, tRP = 20 µs during embedded operation and tRP = 500 ns.
Figure 4.1 Power-Up Reset Timing
Note:
The sum of tRP and tRH must be equal to or greater than tRPH.
May 10, 2013
Migration from GL-N and GL-P to GL-S Flash
9
A pplication
Note
Figure 4.2 Warm Reset Timing
Note:
The sum of tRP and tRH must be equal to or greater than tRPH.
The differences in power-on timing should not present a migration challenge for most applications where the
flash interfaces directly with a Host that requires oscillator and PLL lock prior to initiating the first boot read
access to the flash. In applications which may access the flash within 300 µs of power application, some
circuit modification will be required to accommodate migration to GL-S flash.
To initiate the first read or write cycle after power on, the GL-S requires CE# to transition from High to Low no
sooner than tVCS after VCC exceeds VCC_min and VIO exceeds VIO_min. CE# must be High at least tCEH = 20
ns prior to CE# falling edge which initiates the first access. These were not requirements for GL-N and GL-P
so designs that have CE# fixed low cannot migrate to GL-S without modification to enable active CE# control.
CE# is ignored during Warm Reset; however, to initiate the first read or write cycle after warm reset, the GL-S
requires CE# to transition from High to Low no sooner than tRH after RESET# transitions from Low to High.
CE# must be high at least tCEH = 20 ns prior to CE# falling edge, which initiates first access. These were not
requirements for GL-N and GL-P so designs that have CE# fixed low cannot migrate to GL-S without
modification to enable active CE# control.
The GL-S allows VIO to ramp concurrently with or after VCC with no restriction on time or voltage differential.
During power ramp no input is allowed to exceed VIO. The GL-S data sheet provides enhanced direction on
power management and control to design a robust and reliable system. In general, this additional guidance in
the GL-S data sheet also applies to GL-N and GL-P flash.
5. DC and AC Parameter Differences
Table 5.1 provides a side by side reference of DC specification differences. The GL-S does not support the
application of more than 4.0V to any input. The GL-S maximum logic levels are specified differently than
GL-N and GL-P and are more in line with industry standards for CMOS application specifications, e.g. it is
unrealistic for low current CMOS inputs to have a steady state logic ‘0’ at more than 20% of VIO. The
difference in maximum VIH does not impact logic transition points or timing parameter specifications and
should not cause migration issues.
Table 5.1 DC Specification Differences (Sheet 1 of 2)
Parameter
Description
Type
GL-N
GL-P
GL-S
max
4.0V
4.0V
4.0V
max
12.5V
12.5V
4.0V
VIO + 0.3V
VIO + 0.3V
VIO + 0.4V
60 mA
Input Levels
VIO
All I/O other than A9 and ACC
VIO
A9 and ACC
Logic Levels
VIH
Input High Voltage
max
Power Usage
10
ICC1
Active VCC + VIO Read (5 MHz)
max
50 mA
55 mA
ICC2
Active VCC Intra-Page Read (33 MHz)
max
20 mA
20 mA
25 mA
ICC3
Active Program or Erase
max
90 mA
90 mA
100 mA
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
No t e
Table 5.1 DC Specification Differences (Sheet 2 of 2)
Parameter
Description
Type
GL-N
GL-P
GL-S
100 µA
ICC4
Standby Current
max
5 µA
5 µA
ICC5
Reset Current
max
5 µA
500 µA
20 mA
ICC6
Automatic Sleep Current (1)
max
5 µA
5 µA
150 µA
Note:
1. GL-S enables the specified automatic sleep current consumption within tACC + 30 ns of Address change while CE# < VIL and transitions
to standby mode within 8 µs of additional control signal inactivity.
Table 5.2 provides side by side comparisons of AC parameter specification differences between GL families
(less reset timing parameter differences documented in Table 4.1). All parameters should be reviewed
against actual application implementations to ensure a successful migration. For applications that utilize the
erase suspend and/or program suspend features, it is important to review the system software ramifications
of the GL-S having longer latency between issuance of the suspend and resume commands and the flash
updating status and completing the transition between modes.
Table 5.2 AC Specification Differences
Parameter
Description
Type
GL-N (1)
GL-P (1)
GL-S (1)
Async Read
tACC / tCE / tRC
Read Cycle Time
min
100 ns
100 ns
100 ns
Intra-Page Access Time
min
25 ns
25 ns
15 ns
tDF
Control negate to data High-Z
min
20 ns
20 ns
15 ns
tWC
Write Cycle Time
min
100 ns
100 ns
60 ns
tWP
WE# Enable to Disable
min
35 ns
35 ns
25 ns
tWPH
WE# Disable to Enable
min
30 ns
30 ns
20 ns
Data Setup to WE# Disable
min
45 ns
30 ns
30 ns
Erase/Program Valid to RY/BY# Delay
max
90 ns
90 ns
80 ns
tPACC
Async Write
tDS
tBUSY
Suspend Resume
tESL
Erase Suspend / Erase Resume
max
20 µs
20 µs
40 µs
tPSL
Program Suspend / Program Resume
max
15 µs
15 µs
40 µs
typ
240 µs
480 µs
340 µs
Effective per Word Write Buffer Program Time typ
15 µs
15 µs
1.33 µs
Array Update
Full Buffer Write Program Time (2)
Single Word Program Time
typ
60 µs
60 µs
125 µs
128 kB Sector Erase Time (3)
typ
1.49s
1.49s
200 ms
max
50 µs
50 µs
0s
x16 Async Read
max
20 MB/s
18 MB/s
22 MB/s
x16 Page Mode Read (4)
max
58 MB/s
56 MB/s
98 MB/s
Programming
typ
133 kB/s
133 kB/s
1.5 MB/s
Erase (3)
typ
88 kB/s
88 kB/s
655 kB/s
Sector Erase Timeout
Throughput
Notes:
1. All table specifications apply to I-temp rated 512 Mbit density devices with VCC = VIO = 2.7-3.6V. Refer to individual data sheets for
performance specifications for other densities and operating conditions.
2. Maximum Write Buffer Size varies: GL-N = 32B, GL-P = 64B, GL-S = 512B.
3. Based on sector erase operation typical completion time, including required embedded pre-programming times.
4. Page mode read throughput based on 8 word page accesses for GL-N and GL-P and 16 word page accesses for GL-S.
May 10, 2013
Migration from GL-N and GL-P to GL-S Flash
11
A pplication
6.
Note
Packaging
Standard S29GL-S flash are available in SnPb and Pb-free in 56-lead TSO056 leadframe package and two
64-ball ball grid array packages – LAA064 and LAE064. The electrical contact dimensions and footprints are
compatible with the GL-N and GL-P flash in x16 data bus width applications.
The outer dimensions of the LAE064 package are 9 x 9 mm, forty three percent smaller than the 11 x 13 mm
LAA064 package. Printed Circuit Board (PCB) layout changes will not be required to utilize the LAE064
package on existing GL-N and GL-P designs; however, surface mount placement programs will require
modification for proper part placement.
The S70GL02GS flash will be available in the same 64-ball LAA064 ball grid array package as the
S70GL02GP flash. The footprint will be compatible with the S70GL02GP flash in x16 data bus width
applications.
Several of the connection definitions have changed, reference Table 6.1.
Table 6.1 GL-N / GL-P / GL-S Pin Out Differences
Pin or Ball
GL-N
GL-P
GL-S
Migration Issue
TSOP Package
16
WP#/ACC
WP#/ACC
WP#
Potential
27
NC
NC
RFU
No
28
NC
NC
DNU
Potential
30
NC
NC
RFU
No
51
DQ15/A-1
DQ15/A-1
DQ15
No
53
BYTE#
BYTE#
RFU
No
55
NC
NC/A25 (1)
NC/A25 (1)
No
BGA Package
B1
NC
NC/A26 (2)
NC/A26 (2)
No
B4
WP#/ACC
WP#/ACC
WP#
Potential
E1
NC
NC
DNU
Potential
F7
BYTE#
BYTE#
RFU
No
G1
NC
NC
RFU
No
G7
DQ15/A-1
DQ15/A-1
DQ15
No
G8
NC
NC/A25 (1)
NC/A25 (1)
No
Legend:
NC = Not Connected internally (okay to use pad for routing).
RFU = Reserved for Future Use (not connected internally on current product).
DNU = Do Not Use (must be left floating, not okay to use pad for routing).
Notes:
1. A25 only for S29GL01GP, S29GL01GS, S70GL02GP, and S70GL02GS.
2. A26 only for S70GL02GP and S70GL02GS.
Figure 6.1 and Figure 6.2 depict the pin definitions for the GL-N/GL-P and GL-S flash TSOP packages,
respectively. Figure 6.3 and Figure 6.4 illustrate the pin definitions for GL-N/GL-P and GL-S flash BGA
packages, respectively.
12
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
No t e
Figure 6.1 TSOP Pin Definitions: GL-N and GL-P
A23
A22
A15
A14
A13
A12
A11
A10
A9
A8
A19
A20
WE#
RESET#
A21
WP#/ACC
RY/BY#
A18
A17
A7
A6
A5
A4
A3
A2
A1
NC
NC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
56-Pin TSOP
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
A24
A25
A16
BYTE#
VSS
DQ15/A-1
DQ7
DQ14
DQ6
DQ13
DQ5
DQ12
DQ4
VCC
DQ11
DQ3
DQ10
DQ2
DQ9
DQ1
DQ8
DQ0
OE#
VSS
CE#
A0
NC
VIO
Figure 6.2 TSOP Pin Definitions: GL-S
A23
A22
A15
A14
A13
A12
A11
A10
A9
A8
A19
A20
WE#
RESET#
A21
WP#
RY/BY#
A18
A17
A7
A6
A5
A4
A3
A2
A1
RNU
DNU
May 10, 2013
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
56-Pin TSOP
Migration from GL-N and GL-P to GL-S Flash
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
A24
A25
A16
RFU
VSS
DQ15
DQ7
DQ14
DQ6
DQ13
DQ5
DQ12
DQ4
VCC
DQ11
DQ3
DQ10
DQ2
DQ9
DQ1
DQ8
DQ0
OE#
VSS
CE#
A0
RFU
VIO
13
A pplication
Note
Figure 6.3 BGA Pin Definitions: GL-N and GL-P
A8
B8
C8
D8
E8
F8
G8
H8
NC
A22
A23
VIO
VSS
A24
A25
NC
A7
B7
C7
D7
E7
F7
G7
H7
A13
A12
A14
A15
A16
BYTE#
DQ15/A-1
VSS
A6
B6
C6
D6
E6
F6
G6
H6
A9
A8
A10
A11
DQ7
DQ14
DQ13
DQ6
A5
WE#
A4
B5
C5
D5
E5
F5
G5
H5
RESET#
A21
A19
DQ5
DQ12
VCC
DQ4
B4
RY/BY# WP#/ACC
14
C4
D4
E4
F4
G4
H4
A18
A20
DQ2
DQ10
DQ11
DQ3
A3
B3
C3
D3
E3
F3
G3
H3
A7
A17
A6
A5
DQ0
DQ8
DQ9
DQ1
A2
B2
C2
D2
E2
F2
G2
H2
A3
A4
A2
A1
A0
CE#
OE#
VSS
A1
B1
C1
D1
E1
F1
G1
H1
NC
A26
NC
NC
NC
VIO
NC
NC
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
No t e
Figure 6.4 BGA Pin Definitions: GL-S
A8
B8
C8
D8
E8
F8
G8
H8
NC
A22
A23
VIO
VSS
A24
A25
NC
A7
B7
C7
D7
E7
F7
G7
H7
A13
A12
A14
A15
A16
RFU
DQ15/A-1
VSS
A6
B6
C6
D6
E6
F6
G6
H6
A9
A8
A10
A11
DQ7
DQ14
DQ13
DQ6
A5
WE#
B5
C5
D5
E5
F5
G5
H5
RESET#
A21
A19
DQ5
DQ12
VCC
DQ4
A4
B4
C4
D4
E4
F4
G4
H4
RY/BY#
WP#
A18
A20
DQ2
DQ10
DQ11
DQ3
A3
B3
C3
D3
E3
F3
G3
H3
A7
A17
A6
A5
DQ0
DQ8
DQ9
DQ1
A2
B2
C2
D2
E2
F2
G2
H2
A3
A4
A2
A1
A0
CE#
OE#
VSS
A1
B1
C1
D1
E1
F1
G1
H1
NC
A26
NC
NC
DNU
VIO
RFU
NC
The WP#/ACC connection on GL-N and GL-P flash is the WP# input on GL-S flash. The ACC feature is not
supported on GL-S and this input will not tolerate application of more than VIO voltage. This input definition
difference will not cause migration issues in most applications. Only applications that switch VHH (nominally
12V) onto WP#/ACC to accelerate in-system program and erase operations will be impacted by this
difference.
The DQ15/A-1 connection on GL-N and GL-P flash is the DQ15 input/output on GL-S flash. Migration to GL-S
is only possible in x16 Data Bus applications where the alternate A-1 input feature (on GL-N and GL-P flash)
is not active. This input definition difference will not cause migration issues in x16 Data Bus applications.
The BYTE# input on GL-N and GL-P flash is electrically isolated and labeled RFU on GL-S flash. Migration to
GL-S is only possible in x16 Data Bus applications where the BYTE# input is pulled > VIH. Since this
connection on the GL-S is electrically isolated, this input difference will not cause migration issues.
The GL-S flash has one connection labeled DNU that is labeled NC on GL-N and GL-P flash. DNU
connections must be left floating. This input definition difference will not cause migration issues in most
applications since No Connect pads are generally left floating. Applications that utilize this specific pad for
signal routing purposes will be impacted.
May 10, 2013
Migration from GL-N and GL-P to GL-S Flash
15
A pplication
7.
Note
Appendix — Status Register Read Source Code Example
/****************************************************************
*
* wlld_StatusRegReadCmd - Status register read command
*
* This function sends the status register read command before
* actualy read it.
*
* RETURNS: void
*
* ERRNO:
*/
#ifndef REMOVE_LLD_STATUS_REG_READ_CMD
void wlld_StatusRegReadCmd
(
FLASHDATA * base_addr,
/* device base address in system */
ADDRESS offset
/* address offset from base address */
)
{
FLASH_WR(base_addr, (offset & SA_OFFSET_MASK) + LLD_UNLOCK_ADDR1,
NOR_STATUS_REG_READ_CMD);
}
/****************************************************************
*
* lld_StatusGet - Determines Flash Status for GL-S device
*
* Note: This routine implements both (1) read status and check
* toggles (2) use read status command(GL-S device). The
* enable_status_cmd_g flag switch between these two status get
* methods. When calling this function, the WriteBufferProgramming
* flag needs to be set to 1 if the caller wants to check DQ1 for
* WriteBuffer abort. Then the flag needs to be set back to 0. See
* lld_poll for example of how to use the WriteBufferProgramming
* flag.
*
* RETURNS: DEVSTATUS
*
*/
#define DQ1_MASK
(0x02 * LLD_DEV_MULTIPLIER) /* DQ1 mask for all
#define DQ2_MASK
(0x04 * LLD_DEV_MULTIPLIER) /* DQ2 mask for all
#define DQ5_MASK
(0x20 * LLD_DEV_MULTIPLIER) /* DQ5 mask for all
#define DQ6_MASK
(0x40 * LLD_DEV_MULTIPLIER) /* DQ6 mask for all
interleave
interleave
interleave
interleave
devices
devices
devices
devices
*/
*/
*/
*/
#define DQ6_TGL_DQ1_MASK (dq6_toggles >> 5) /* Mask for DQ1 when device DQ6 toggling */
#define DQ6_TGL_DQ5_MASK (dq6_toggles >> 1) /* Mask for DQ5 when device DQ6 toggling */
DEVSTATUS lld_StatusGet
(
FLASHDATA * base_addr,
ADDRESS
offset
)
{
FLASHDATA
FLASHDATA
FLASHDATA
FLASHDATA
16
/* device base address in system */
/* address offset from base address */
dq6_toggles;
status_read_1;
status_read_2;
status_read_3;
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Ap pl ic atio n
No t e
if( enable_status_cmd_g == 0 )
/* Do not use Read Status */
/* Command */
{
status_read_1 = FLASH_RD(base_addr, offset);
status_read_2 = FLASH_RD(base_addr, offset);
status_read_3 = FLASH_RD(base_addr, offset);
/* Any DQ6 toggles */
dq6_toggles = ((status_read_1 ^ status_read_2) &
/* Toggles between read1 and
read2 */
(status_read_2 ^ status_read_3) &
/* Toggles between read2 and read3 */
DQ6_MASK );
/* Check for DQ6 only */
if (dq6_toggles)
{
/* Checking WriteBuffer Abort condition: Check for all devices */
/* that have DQ6 toggling also have Write Buffer Abort DQ1 set */
if (WriteBufferProgramming &&
((DQ6_TGL_DQ1_MASK & status_read_1) == DQ6_TGL_DQ1_MASK) )
return DEV_WRITE_BUFFER_ABORT;
/* Checking Timeout condition: Check for all devices that have */
/* DQ6 toggling also have Time Out DQ5 set. */
if ((DQ6_TGL_DQ5_MASK & status_read_1) == DQ6_TGL_DQ5_MASK )
return DEV_EXCEEDED_TIME_LIMITS;
/* No timeout, no WB error */
return DEV_BUSY;
}
else
/* no DQ6 toggles on all devices */
{
/* Checking Erase Suspend condition */
status_read_1 = FLASH_RD(base_addr, offset);
status_read_2 = FLASH_RD(base_addr, offset);
/* Checking Erase Suspend condition */
if ( ((status_read_1 ^ status_read_2) & DQ2_MASK) == 0)
return DEV_NOT_BUSY;
/* All devices DQ2 not toggling */
if (((status_read_1 ^ status_read_2) & DQ2_MASK) == DQ2_MASK)
return DEV_SUSPEND;
/* All devices DQ2 toggling */
else
return DEV_BUSY;
/* Wait for all devices DQ2 toggling */
}
}
else
{
/*............................................................*/
/* Use Status Register Read command to read the status
*/
/* register. This is for GL-S devices only
*/
/*............................................................*/
#ifdef STATUS_REG
volatile FLASHDATA status_reg;
wlld_StatusRegReadCmd( base_addr, offset );
May 10, 2013
/* Issue status register read command */
Migration from GL-N and GL-P to GL-S Flash
17
A pplication
Note
status_reg = FLASH_RD(base_addr, offset);
/* read the status register */
if ( (status_reg & DEV_RDY_MASK) != DEV_RDY_MASK
return DEV_BUSY ;
if ( status_reg & DEV_ERASE_MASK )
return DEV_ERASE_ERROR;
) /* Are all devices done bit 7 is 1 */
/* Any erase error */
if ( status_reg & DEV_PROGRAM_MASK )/* Any program error */
return DEV_PROGRAM_ERROR;
if ( status_reg & DEV_SEC_LOCK_MASK )/* Any sector lock error */
return DEV_SECTOR_LOCK;
return DEV_NOT_BUSY ;
#endif
return DEV_STATUS_UNKNOWN;
/* should never get here */
}
}
18
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
App l ic atio n
No t e
8. Revision History
Section
Description
Revision 01 (March 28, 2011)
Initial release. Replaces the Application Note, How To Prepare Designs for 65 nm MirrorBit GL and
65 nm MirrorBit Eclipse GL Product Families.
Revision 02 (May 20, 2011)
CFI Register
Added CFI Register section.
Revision 03 (July 22, 2011)
Global
Added text clarifications.
GL-N, GL-P, and GL-S Flash Feature
Comparison
Updated table.
Device ID
Added table: Secure Flash Device IDs.
Feature Difference Discussion
Added section: Lock Register Differences.
DC and AC Parameter Differences
Updated table.
Power On and Warm Reset Timing
Added tCEH specification.
Updated figures: Power-Up Reset Timing, Warm Reset Timing.
Revision 04 (August 5, 2011)
Secure Silicon OTP Area
Corrected preset and factory set conditions.
Lock Register Differences
Corrected factory lock bit and factory set conditions.
Revision 05 (June 11, 2012)
GL-N, GL-P, and GL-S Flash Feature
Comparison
GL Family Feature Comparison table: updated Packaging and Ordering Options.
Device ID
GL Flash Device IDs table: corrected Device ID entries.
CFI Register
CFI Register Differences table: corrected technology definition.
Packaging
Updated text.
Revision 06 (February 11, 2013)
Power On and Warm Reset Timing
Corrected Table 4.1: Power On and Warm Reset Timing Requirements
Revision 07 (March 28, 2013)
Device ID
Corrected GL-S specific Device Technology CFI data
Revision 08 (May 10, 2013)
GL-N, GL-P, and GL-S Flash Feature
Comparison
May 10, 2013
GL Family Feature Comparison table: corrected Status via Status Register values for S29GL-N and
S29GL-P
Migration from GL-N and GL-P to GL-S Flash
19
A pplication
Note
Colophon
The products described in this document are designed, developed and manufactured as contemplated for general use, including without
limitation, ordinary industrial use, general office use, personal use, and household use, but are not designed, developed and manufactured as
contemplated (1) for any use that includes fatal risks or dangers that, unless extremely high safety is secured, could have a serious effect to the
public, and could lead directly to death, personal injury, severe physical damage or other loss (i.e., nuclear reaction control in nuclear facility,
aircraft flight control, air traffic control, mass transport control, medical life support system, missile launch control in weapon system), or (2) for
any use where chance of failure is intolerable (i.e., submersible repeater and artificial satellite). Please note that Spansion will not be liable to
you and/or any third party for any claims or damages arising in connection with above-mentioned uses of the products. Any semiconductor
devices have an inherent chance of failure. You must protect against injury, damage or loss from such failures by incorporating safety design
measures into your facility and equipment such as redundancy, fire protection, and prevention of over-current levels and other abnormal
operating conditions. If any products described in this document represent goods or technologies subject to certain restrictions on export under
the Foreign Exchange and Foreign Trade Law of Japan, the US Export Administration Regulations or the applicable laws of any other country,
the prior authorization by the respective government entity will be required for export of those products.
Trademarks and Notice
The contents of this document are subject to change without notice. This document may contain information on a Spansion product under
development by Spansion. Spansion reserves the right to change or discontinue work on any product without notice. The information in this
document is provided as is without warranty or guarantee of any kind as to its accuracy, completeness, operability, fitness for particular purpose,
merchantability, non-infringement of third-party rights, or any other warranty, express, implied, or statutory. Spansion assumes no liability for any
damages of any kind arising out of the use of the information in this document.
Copyright © 2011-2013 Spansion Inc. All rights reserved. Spansion®, the Spansion Logo, MirrorBit®, MirrorBit® Eclipse™, ORNAND™ and
combinations thereof, are trademarks and registered trademarks of Spansion LLC in the United States and other countries. Other names used
are for informational purposes only and may be trademarks of their respective owners.
20
Migration from GL-N and GL-P to GL-S Flash
May 10, 2013
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement