Migrating Single Byte To Three Byte AN

Migrating from Single-Byte to
Three-Byte Device IDs
Application Note
1. Introduction
This document describes the device driver changes necessary to migrate from flash devices with single-byte
Device IDs to those with three-byte Device IDs. Device IDs in Spansion® flash devices are accessible either
via a software command sequence or through a high-voltage hardware method. Customers migrating from
the Am29F 5.0 volt-only flash family and certain 3.0 volt-only flash devices will need to add support for
three-byte Device IDs to fully identify a particular device. Specifically, device driver changes are required in
order to uniquely identify devices utilizing three-byte Device IDs.
2. Device Codes on Older Devices
2.1
High-Voltage Hardware Method
The “High-Voltage Method” provides a hardware method of reading device codes on Spansion flash devices.
To implement the High-Voltage Method in previous Spansion devices, control pins must be held at a specified
state and voltage VID is applied at Address Pin A9. Using the High-Voltage Method, address pins A6, A3, A2,
A1, and A0 can be used to switch between reading the Manufacturer ID, Device ID, Sector Protection
Verification, and the Secured Silicon Region Indicator Bit. With A3 held low, A2 held low, A1 held low, A0 held
high, A6 held low, and VID on A9, the device code is read on the least significant eight bits of the data bus. As
an example, Table 2.1 illustrates the hardware settings required for reading the S29AL016J Device ID using
the High-Voltage Method depending on the S29AL016J top or bottom boot sector architecture and the
Word/Byte configuration.
Table 2.1 Device ID Example
2.2
DQ15 to DQ8
DQ7
to
BYTE# BYTE#
= VIH
= VIL DQ0
CE#
OE#
WE#
A19
to
A10
A9
A8
to
A7
A6
A5
to
A4
A3
to
A2
A1
A0
Device ID: S29AL016J
(Model 01: Top Boot Block)
L
L
H
X
VID
X
L
X
L
L
H
22h
X
C4h
Device ID: S29AL016J
(Model 02: Bottom Boot Block)
L
L
H
X
VID
X
L
X
L
L
H
22h
X
49h
Description
Software Command Sequence
The manufacturer and device codes for Spansion devices may also be read via the autoselect command
sequence. The autoselect command sequence is initiated by first writing two unlock cycles. This is followed
by a third write cycle that contains the bank address and the autoselect command. The bank then enters the
autoselect mode. The typical bus-cycle sequence to access the autoselect mode is shown in Table 2.2. For
devices with only one bank, it is not necessary to include the bank address in the command sequence.
Spansion Simultaneous Read/Write devices such as the S29JL032J and S29JL064J require the bank
address bits to identify the bank from which the device code will be read.
Publication Number Migrating_Single_Byte_To_Three_Byte_AN
Revision 01
Issue Date January 27, 2011
A pplication
Note
Table 2.2 Autoselect Command Sequence
Bus Cycle
Address
Data
1
555
AA
2
2AA
55
3
(BA) 555
90
Notes:
1. BA = Bank Address.
2. While most previous Spansion devices follow this sequence, a few exception devices differ slightly. Please consult the data sheet for
device-specific information.
The system may read at any address within the same bank any number of times without initiating another
autoselect command sequence. Previously, Spansion device codes consisted of a unique single-byte
combination read at address 01h (2) within the autoselect mode. For example, the command definition for
reading the Device ID from the Am29F010B (5.0V, 1 Mbit, uniform sector device), including the autoselect
command sequence, is as follows in Table 2.3.
Table 2.3 Am29F010B Autoselect Device ID Read Command Sequence
Bus Cycle
Address
Data
1
555
AA
2
2AA
55
3
555
90
4
X01
6E
Notes:
1. X = Don’t Care.
2. Address 02h is used in devices utilizing the A-1 line during addressing. For example, byte-wide data bus mode on x8/x16 devices utilizes
the A-1 line. Likewise, word-wide data bus mode on x16/x32 devices also utilizes the A-1 line.
The Am29F010B device code is 6Eh, and the bank address is not needed since this is a single bank device.
3. Migrating to Three-Byte Device Codes
3.1
High-Voltage Hardware Method
For devices utilizing a three-byte device code, the device code may still be read via the High-Voltage Method,
but requires three separate reads in order to uniquely identify the device. In addition, the reads now require
logic applied to the A3 and A0 pins as well as the other device pins. The first Device ID byte is read while
holding A3:A1 low, A0 high, A6 low, and A9 at VID. The second byte is read by holding A3:A1 high, A0 low, A6
low, and A9 at VID. The third byte of the device code is read by holding A3:A0 high, A6 low, and A9 at VID.
Table 3.1 describes the High-Voltage Method for reading the Device ID for the S29JL064J device.
Table 3.1 S29JL064J Autoselect Codes (High-Voltage Method)
DQ15 to DQ8
DQ7
to
BYTE# BYTE#
= VIH
= VIL DQ0
CE#
OE#
WE#
A21
to
A12
A9
A8
to
A7
A6
A5
to
A4
A3
A2
A1
A0
Device IDRead
Cycle 1
L
L
H
BA
VID
X
L
X
L
L
L
H
22h
X
7Eh
Device IDRead
Cycle 2
L
L
H
BA
VID
X
L
X
H
H
H
L
22h
X
02h
Device IDRead
Cycle 3
L
L
H
BA
VID
X
L
X
H
H
H
H
22h
X
01h
Description
Note:
L = Logic Low = VIL; H = Logic High = VIH; BA = Bank Address; X = Don't care; VID = 11.5 to 12.5V.
2
Migrating_Single_Byte_To_Three_Byte_AN_01
January 27, 2011
App l ic atio n
3.2
No t e
Software Command Sequence
For devices utilizing a three-byte Device ID, the device code may still be read via the autoselect command
sequence, but will require three sequential read cycles in order to uniquely distinguish the device. The three
read cycles are read at addresses 01h, 0Eh, and 0Fh, respectively. For a device utilizing the A-1 line, the
three read cycles are read at addresses 02h, 1Ch, and 1Eh. The device code 7Eh read during the first read
cycle (where the single-byte device code was read in previous devices) now indicates that two additional read
cycles are required to completely identify the device.
For example, the command definition for reading the device code from the S29JL064J (64 Mbit, 8M x 8-bit/4M
x 16-bit device) in word-mode is as shown in Table 3.2.
Table 3.2 Compatible Root Part Number Mapping, Word-Mode
Bus Cycle
Address
Data
1
555
AA
2
2AA
55
3
555
90
4
(BA) X01
227E
5
(BA) X0E
2202
6
(BA) X0F
2201
Note:
BA = Bank Address, X = Don't care.
Likewise, the command definition for reading the S29JL064J in byte-mode is as follows:
Table 3.3 Compatible Root Part Number Mapping, Byte-Mode
Bus Cycle
Address
Data
1
AAA
AA
2
555
55
3
(BA) AAA
90
4
(BA) X02
7E
5
(BA) X1C
02
6
(BA X1E
01
Note:
BA = Bank Address, X = Don't care.
4. Required Modifications
For devices utilizing a three-byte Device ID, using only the first read cycle of the Device ID in either the highvoltage hardware method or in the software command sequence will not completely identify the device. As an
example, customers migrating from the S29AL family to the S29GL MirrorBit® family would need to update
any software drivers utilizing the software command sequence in order to read the updated device codes.
External programming equipment utilizing the High-Voltage Method should also update any drivers as
required.
January 27, 2011
Migrating_Single_Byte_To_Three_Byte_AN_01
3
A pplication
Note
5. Device ID Reference Table
Table 5.1 summarizes Device ID combinations for Spansion Flash devices. Please refer to the data sheets
posted on www.spansion.com for complete, up-to-date descriptions of device codes for all Spansion devices.
Table 5.1 Spansion Flash Device IDs (Sheet 1 of 2)
4
Flash Device
Device ID
S70GL02GP, S70GL02GS
7E/48/01h
S29GL01GP, S29GL01GS
7E/28/01h
S29GL512P, S29GL512S
7E/23/01h
S29GL256P, S29GL256S
7E/22/01h
S29GL128P, S29GL128S
7E/21/01h
S29GL064N
Model 01,02,V1,V2: 7E/0C/01h
Model 03: 7E/10/01h
Model 04: 7E/10/00h
Model 06,07,V6,V7: 7E/13/01h
S29GL032N
Model 01,02,V1,V2: 7E/1D/00h
Model 03: 7E/1A/01h
Model 04: 7E/1A/00h
S29PL129J
7E/21/00h
S29PL127J
7E/20/00h
S29PL064J
7E/02/01h
S29PL032J
7E/0A/01h
S29JL064J
7E/02/01h
S29JL032J
Model 01: 7E/0A/01h
Model 02: 7E/0A/00h
Model 21: 55h
Model 22: 56h
Model 31: 50h
Model 32: 53h
Model 41: 5Ch
Model 42: 5Fh
S29AL032D
Model 00: A3h
Model 03: F6h
Model 04: F9h
S29AL016J
Model 01: C4h
Model 02: 49h
S29AL008J
Model 01: DAh
Model 02: 5Bh
Am29F032B
41h
Am29F016D
ADh
Am29F080B
D5h
Am29F040B
A4h
Am29F002B/Am29F002NB
B0h (T); 34h (B)
Am29F010B
20h
Am29F160D
D2h (T); D8h (B)
Am29F800B
D6h (T); 58h (B)
Am29F400B
23h (T); ABh (B)
Am29F200B
51h (T); 57h (B)
S29WS512P
7E/3D/00h
S29WS256P
7E/42/00h
S29WS128P
7E/44/00h
S29WS064R
Model 00: 7E/4F/00h
Model 01: 7E/57/00h
S29VS256R
Model 00: 7E/64/01h
Model 01: 7E/66/01h
Migrating_Single_Byte_To_Three_Byte_AN_01
January 27, 2011
App l ic atio n
No t e
Table 5.1 Spansion Flash Device IDs (Sheet 2 of 2)
Flash Device
Device ID
S29VS128R
Model 00: 7E/63/01h
Model 01: 7E/65/01h
S29VS064R
Model 00: 7E/61/01h
Model 01: 7E/61/02h
S29XS256R
Model 00: 7E/64/01h
Model 01: 7E/66/01h
S29XS128R
Model 00: 7E/63/01h
Model 01: 7E/65/01h
S29XS064R
Model 00: 7E/61/01h
Model 01: 7E/61/02h
S29AS016J
Model 03: 7E/03/04h
Model 04: 7E/03/03h
S29AS008J
Model 03: 7E/04/04h
Model 04: 7E/04/03h
Note:
B = Bottom Boot Device, T = Top Boot Device.
January 27, 2011
Migrating_Single_Byte_To_Three_Byte_AN_01
5
A pplication
Note
6. Revision History
Section
Description
Revision 01 (January 27, 2011)
Initial release
6
Migrating_Single_Byte_To_Three_Byte_AN_01 January 27, 2011
App l ic atio n
No t e
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 Spansion Inc. All rights reserved. Spansion®, the Spansion logo, MirrorBit®, MirrorBit® Eclipse™, ORNAND™, EcoRAM™ 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.
January 27, 2011 Migrating_Single_Byte_To_Three_Byte_AN_01
7