Upload
horderlin-robles
View
213
Download
0
Embed Size (px)
Citation preview
7/30/2019 AN1557
1/21
1/21September 2002
AN1557APPLICATION NOTE
How to Design-in LightFlash Memories, Ensuring Compatibilitywith Standard Flash Memories in DVD and TV Applications
INTRODUCTION
This Application Note explains how to design-in the
M29KW016E and M29KW032E LightFlash memories, en-
suring compatibility with Industry Standard Flash memories
(M29W160D and M29W320D), typically in DVD and TV appli-
cations where the reprogramming feature is not required.
DESCRIPTION OF LightFlashFLASH MEMORIES
The LightFlash (M29KWxxxE) is a new family of non-volatile
Flash memories optimized for use in Basic Code Storage appli-
cations. They can be read, erased and reprogrammed. Read
operations can be performed using a single low voltage (2.7 to
3.6V) supply. Program and Erase operations require an addi-
tional VPP (11.4 to 12.6) power supply.
The memories have a uniform block architecture, where each
block can be erased independently so it is possible to preserve
valid data while old data is erased. Program and Erase com-
mands are written to the Command Interface of the memory.
An internal Program/Erase Controller simplifies the process of
programming or erasing the memory by taking care of all of the
special operations that are required to update the memory con-
tents.
The LightFlash memories feature a Multiple Word Program
command (based on a Fast Program Algorithm) which is used
to program large streams of data. It reduces the total program-
ming time by programming Words at consecutive addresses,
where the address is automatically incremented, thus reducing
the number of Write cycles required. The LightFlash family
uses a separate, external high voltage supply VPP of 12V, for
all Program and Erase operations to further reduce the Pro-gram and Erase times. Chip Erase times are typical ly 50% less
than on the Standard memories.
Refer to the M29KWxxxE datasheets for a complete descrip-
tion of the LightFlash memories.
CONTENTS
s INTRODUCTION
s DESCRIPTION OF
LIGHTFLASH FLASH
MEMORIES
s PACKAGES
s SIGNAL DESCRIPTIONS
s BLOCK ORGANIZATION
s COMMAND INTERFACE
s STATUS REGISTER
s WRITE PROTECTION
s AC AND DC
PARAMETERS
s PROGRAM AND ERASE
TIMES
s CONCLUSION
s REVISION HISTORY
7/30/2019 AN1557
2/21
AN1557 - APPLICATION NOTE
2/21
PACKAGES
Table 1 summarizes the organization and packages of the two sets of memories.
Table 1. Comparison of Industry Standard and LightFlash Memories
SO44 Connections
Figure 1 compares the S044 pin out of the M29KW016E with the M29W160D. The two differences are
highlighted by the shaded areas.
Pin 31 is DQ15A-1 in the M29W160D and DQ15 in the M29KW016E.
Pin 33 is the BYTE connection for the M29W160D but in the M29KW016E it is the VPP voltage connection.
When replacing M29W160D with M29KW016E care must be taken with pin 33. It must be set in the VPPrange to allow Program or Erase operations in the M29KW016E. If V PP is set to VIL or VIH, any Program
or Erase command will be ignored and the device will revert to read mode. To read the device VPP should
be at VIH or VSS.
Figure 1. SO44 Connections Comparison, 16Mbit
Note: The shaded areas highlight the differences.
Industry Standard LightFlash
Device Size Organization Packages Device Size Organization Packages
M29W160D 16Mb2Mb x 81Mb x16
SO44TSOP48
TFBGA48M29KW016E 16Mb 1Mb x16
SO44TSOP48
TFBGA48
M29W320D 32Mb4Mb x 82Mb x16
TSOP48TFBGA63
M29KW032E 32Mb 2Mb x16TSOP48
TFBGA48
AI06297
M29KW016E
DQ15A-1
BYTE
M29W160DM29W160D
G
DQ0
DQ8
A3
A0
E
VSS
A2
A1
A13
VSS
A14
A15
DQ7
A12
A16
DQ15
DQ5DQ2
DQ3
VCCDQ11
DQ4
DQ14
A9
A19
RP
A4
A7
8
2
34
5
6
7
9
10
11
12
13
14
15
16
32
31
30
29
28
27
26
25
24
2322
20
19
18
17DQ1
DQ9
A6
A5
DQ6
DQ13
44
39
38
37
36
35
34
33
A11
A10
DQ10
21
DQ12
40
43
1
4241
A17 A8
A18
W
VPP
G
DQ0
DQ8
A3
A0
E
VSS
A2
A1
DQ2
DQ3
DQ11
RP
A4
A7
DQ1
DQ9
A6
A5
DQ10
A17
A18
A13
VSS
A14
A15
DQ7
A12
A16
DQ5
VCC
DQ4
DQ14
A9
A19
DQ6
DQ13
A11
A10
DQ12
A8
W
7/30/2019 AN1557
3/21
3/21
AN1557 - APPLICATION NOTE
TSOP48 Connections
16Mbit Devices. Figure 2 compares the TSOP48 pin out of the M29KW016E with the M29W160D. The
three differences are highlighted by the shaded areas.
Pin 14 is NC (Not Connected) for M29W160D but VPP for M29KW016E. Pin 14 must not be left floatingon M29KW016E otherwise the memory operations are not reliable. In the M29W160D the connection is
ignored.
Pin 47 is BYTE for M29W160D but NC (Not Connected) for M29KW016E. Pin 47 is used to select between
a x8 and x16 bus width on M29W160D but it can be ignored on M29KW016E.
Pin 45 is DQ15A-1 for M29W160D and DQ15 for M29KW016E.
Figure 2. TSOP48 Connections Comparison, 16Mbit
Note: The shaded areas highlight the differences.
AI06298
M29KW016E
DQ15A-1
BYTE
M29W160DM29W160D
DQ3
DQ9
DQ2
A6
DQ0
A3
DQ6
A8
A9
DQ13
A17
A10 DQ14
A2
DQ12
DQ10
DQ15
DQ4
DQ5
A7
DQ7
12
1
13
24 25
36
37
48
DQ8
A19
A1
A18
A4
A5
DQ1
DQ11
G
A12
A13
A16
A11
A15A14 NC
E
A0
RP
VPP
NC
VSS
VCC
VSS
RB
W
NC
A6
A3
A8
A9
A17
A10
A2
A7
A19
A1
A18
A4
A5
A12
A13
A11
A15A14
RP
NC
RB
W
NC
DQ3
DQ9
DQ2
DQ0
DQ6
DQ13
DQ14
DQ12
DQ10
DQ4
DQ5
DQ7
DQ8
DQ1
DQ11
G
A16
E
A0
VSS
VCC
VSS
NC
7/30/2019 AN1557
4/21
AN1557 - APPLICATION NOTE
4/21
32Mbit Devices. Figure 3 compares the TSOP48 pin out of the M29KW032E with the M29W320D. The
three differences are highlighted by the shaded areas.
Pin 14 is VPP/WP for M29W320D but VPP for M29KW032E. When replacing M29W320D with
M29KW032E care must be taken with pin 33. It must be set in the VPP
range to allow Program or Erase
operations in the M29KW032E. If VPP is set to VIL or VIH, any Program or Erase command will be ignored
and the device will revert to read mode. To read the device V PP should be at VIH or VSS.
Pin 47 is BYTE for M29W320D but NC (Not Connected) for M29KW032E. Pin 47 is used to select between
a x8 and x16 bus width on M29W320D but it can be ignored on M29KW032E.
Pin 45 is DQ15A-1 for M29W320D and DQ15 for M29KW032E.
Figure 3. TSOP48 Connections Comparison, 32Mbit
Note: The shaded areas highlight the differences.
AI06299
M29KW032E
DQ15A-1
BYTE
M29W320DM29W320D
DQ3
DQ9
DQ2
A6
DQ0
A3
DQ6
A8
A9
DQ13
A17
A10 DQ14
A2
DQ12
DQ10
DQ15
DQ4
DQ5
A7
DQ7
12
1
13
24 25
36
37
48
DQ8
A19
A1
A18
A4
A5
DQ1
DQ11
G
A12
A13
A16
A11
A15A14 NC
E
A0
RP
A20
VSS
VCC
VSS
RB
W
NC
A6
A3
A8
A9
A17
A10
A2
A7
A19
A1
A18
A4
A5
A12
A13
A11
A15A14
RP
A20
RB
W
NC
DQ3
DQ9
DQ2
DQ0
DQ6
DQ13
DQ14
DQ12
DQ10
DQ4
DQ5
DQ7
DQ8
DQ1
DQ11
G
A16
E
A0
VSS
VCC
VSS
VPPVPP/WP
7/30/2019 AN1557
5/21
5/21
AN1557 - APPLICATION NOTE
TFBGA Connections
16Mbit Devices. Figure 4 compares the TFBGA48 pin out of the M29KW016E with the M29W160D. The
three differences are highlighted by the shaded balls.
B3 is NC (Not Connected) for M29W160D but VPP for M29KW016E. B3 must not be left floating onM29KW016E otherwise the memory operations are not reliable. In the M29W160D the connection is ig-
nored.
F6 is BYTE for M29W160D but NC (Not Connected) for M29KW016E. F6 is used to select between a x8
and x16 bus width on M29W160D but it can be ignored on M29KW016E.
G6 is DQ15A-1 for M29W160D and DQ15 for M29KW016E.
Figure 4. TFBGA48 Connections Comparison (Top view through package), 16Mbit
Note: The shaded areas highlight the differences.
AI07500
654321
VSS
DQ15
A15
A14
A12
DQ3
DQ11
DQ10
A18
DQ1
DQ9
DQ8
DQ0
A6
A5
A7
G
E
A4
A3
DQ2
DQ6
DQ13
DQ14
A10
A9 A13
DQ4
DQ12
DQ5
RP
A11
DQ7
A2
VSS
A1
A16
G
F
E
B
A
D
C
H
NC
VPPA17
A19
VCC
A8
A0
NC
RB W
NC
654321
VSS
DQ15A-1
A15
A14
A12
DQ3
DQ11
DQ10
A18
DQ1
DQ9
DQ8
DQ0
A6
A5
A7
G
E
A4
A3
DQ2
DQ6
DQ13
DQ14
A10
A9 A13
DQ4
DQ12
DQ5
RP
A11
DQ7
A2
VSS
A1
A16
G
F
E
B
A
D
C
H
NC
NCA17
A19
VCC
A8
A0
NC
RB W
BYTE
M29KW016E M29W160D
7/30/2019 AN1557
6/21
AN1557 - APPLICATION NOTE
6/21
32Mbit Devices. The 32Mbit devices are both packaged in TFBGA packages but the M29W320D has 15
extra pins that are Not Connected. With the exception of these extra pins whose connection can be ig-
nored, the packages are mechanically compatible (refer to Package Mechanical section of datasheets),
that is they can be used on the same board.
Figure 4 compares the TFBGA pin out of the M29KW032E with the M29W320D. The differences are high-
lighted by the shaded balls.
B3 is NC (Not Connected) for M29W320D but VPP for M29KW032E. B3 must not be left floating on
M29KW032E otherwise the memory operations are not reliable. In the M29W160D the connection is ig-
nored.
F6 is BYTE for M29W320D but NC (Not Connected) for M29KW032E. F6 is used to select between a x8
and x16 bus width on M29W320D but it can be ignored on M29KW032E.
G6 is DQ15A-1 for M29W320D and DQ15 for M29KW032E.
Figure 5. TFBGA Connections Comparison (Top view through package), 32Mbit
Note: The shaded areas highlight the differences.
AI07501
654321
VSS
DQ15
A15
A14
A12
DQ3
DQ11
DQ10
A18
DQ1
DQ9
DQ8
DQ0
A6
A5
A7
G
E
A4
A3
DQ2
DQ6
DQ13
DQ14
A10
A9 A13
DQ4
DQ12
DQ5
RP
A11
DQ7
A2
VSS
A1
A16
G
F
E
B
A
D
C
H
NC
VPPA17
A19
VCC
A8
A0
A20
RB W
NC
M29KW016E
TFBGA48
M29W160DTFBGA63
654321
VSS
A15
A14
A12
A13
DQ3
DQ11
DQ10
A18
VPP/WP
RB
DQ1
DQ9
DQ8
DQ0
A6
A17
A7
G
E
A0
A4
A3
DQ2
DQ6
DQ13
DQ14
A10
A8
A9
DQ4
VCC
DQ12
DQ5
A19
NC
RP
W
A11
DQ7
A1
A2
VSS
A5 A20
A16
BYTE
C
B
A
E
D
F
G
H
DQ15A1
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
NC(1)
J
K
L
M
87
NC(1)
NC(1)
NC(1)
NC(1)
7/30/2019 AN1557
7/21
7/21
AN1557 - APPLICATION NOTE
SIGNAL DESCRIPTIONS
This section describes the signals that differ between the LightFlash and Standard Flash devices.
VPP (M29KW016E, M29KW032E)
VPP is both a power supply and Write Protect pin. The two functions are selected by the voltage range
applied to the pin. The Supply Voltage VCC must be applied before the Program Supply Voltage VPP.
If VPP is in the range 11.4V to 12.6V it acts as a power supply pin for Program and Erase operations. V PPmust be stable until the Program/Erase algorithm is completed.
If VPP is kept in a low voltage range (0V to 3.6V) VPP is seen as a Write Protect pin. In this case a voltage
lower than VHH gives an absolute protection against Program or Erase, while VPP in the range of VHH en-
ables these functions. The VPP pin must be in the range of VHH when reading the Status Register during
Program and Erase operations.
A 0.1f capacitor should be connected between VPP and VSS to decouple the current surges from the pow-
er supply. Note that VPP must not be left floating or unconnected as the device may become unreliable.
VPP/Write Protect, VPP/WP (M29W320D)The VPP/Write Protectpin provides two functions. The VPP function allows the memory to use an external
high voltage power supply to reduce the time required for Unlock Bypass Program operations. The Write
Protect function provides a hardware method of protecting the 16 Kbyte Boot Block. The VPP/Write Protect
pin must not be left floating or unconnected.
When VPP/Write Protect is Low, VIL, the memory protects the 16 Kbyte Boot Block; Program and Erase
operations in this block are ignored while VPP/Write Protect is Low.
When VPP/Write Protectis High, VIH, the memory reverts to the previous protection status of the 16 Kbyte
boot block. Program and Erase operations can now modify the data in the 16 Kbyte Boot Block unless the
block is protected using Block Protection.
When VPP/Write Protect is raised to VPP the memory automatically enters the Unlock Bypass mode.
When VPP/Write Protect returns to VIH or VIL normal operation resumes.A 0.1F capacitor should be connected between the VPP/Write Protect pin and the VSS Ground pin to de-
couple the current surges from the power supply.
The VPP/Write Protectpin is not present on the M29W160D.
BYTE (M29W160D, M29W320D)
The Byte/Word Organization Select pin is used to switch between the x8 and x16 Bus modes of the mem-
ory. When Byte/Word Organization Select is Low, V IL, the memory is in x8 mode, when it is High, VIH, the
memory is in x16 mode. The Byte/Word Organization Select pin is not present in the LightFlash mem-
ories.
DQ15A-1 (M29W160D, M29W320D)
When BYTE is High, VIH, this pin behaves as a Data Input/Output pin (as DQ8-DQ14). When BYTE isLow, VIL, this pin behaves as an address pin; DQ15A1 Low will select the LSB of the Word on the other
addresses, DQ15A1 High will select the MSB.
RP
The Reset pin can be used to apply a Hardware Reset to the memory for both sets of devices. In the
M29W160D/320D it can also be used to temporarily unprotect all Blocks that have been protected (holding
RP at VID will temporarily unprotect the protected Blocks in the memory). Refer to the relevant datasheets
for a more detailed description.
NC
These pins are NOT CONNECTED internally so the memory will ignore any external connection.
7/30/2019 AN1557
8/21
AN1557 - APPLICATION NOTE
8/21
BLOCK ORGANIZATION
The LightFlash and Standard Flash memories have different block organizations. The LightFlash
memories have a Uniform block organization, while the Standard Flash memories have an Asymmetric
block organization. The block organization for each device is shown in Table 2. The differences must be
taken into account when erasing the memories using the Block Erase command (block address must be
specified). The different block organizations have no consequence for the Chip Erase command (the block
addresses are incremented internally) or Programming commands.
As the LightFlash memories only support a x16 data bus the following sections refer to operations using
only the x16 data bus.
Tables 3 and 4 give the block addresses for the LightFlash memories while Figures 6 and 7 give the
block addresses for the Standard Flash memories in x16 mode.
Table 2. Block Organization
Device Block Organization Type of Block Number of Blocks Size of Block
M29KW016E Uniform Main 8 128KWords
M29W160D Asymmetric
Main 31 32KWords
Small Main 1 16KWords
Boot 1 8KWords
Parameter 2 4KWords
M29KW032E Uniform Main 16 128KWords
M29W320D Asymmetric
Main 63 32KWords
Small Main 1 16KWords
Boot 1 8KWords
Parameter 2 4KWords
7/30/2019 AN1557
9/21
9/21
AN1557 - APPLICATION NOTE
Table 3. M29KW016E Block Addresses
Figure 6. M29W160D Block Addresses (x16)
Block Number Address Range
8 E0000h-FFFFFh
7 C0000h-DFFFFh
6 A0000h-BFFFFh
5 80000h-9FFFFh
4 60000h-7FFFFh
3 40000h-5FFFFh
2 20000h-3FFFFh
1 00000h-1FFFFh
AI07502
8 KWord
FFFFFh
FE000h
32 KWord
0FFFFh
08000h
32 KWord07FFFh
00000h
M29W160DTTop Boot Block Addresses (x16)
16 KWord
FBFFFh
F8000h
32 KWord
F0000h
F7FFFh
Total of 3132 KWord Blocks
8 KWord
FFFFFh
F8000h
32 KWord
32 KWord
01FFFh
00000h
M29W160DBBottom Boot Block Addresses (x16)
16 KWord
F7FFFh
0FFFFh
32 KWord
F0000h
08000h
Total of 3132 KWord Blocks
07FFFh
04000h
4 KWord
4 KWord
FDFFFh
FD000hFCFFFh
FC000h
4 KWord
4 KWord
03FFFh
03000h02FFFh
02000h
7/30/2019 AN1557
10/21
AN1557 - APPLICATION NOTE
10/21
Table 4. M29KW032E Block Addresses
Figure 7. M29W320D Block Addresses (x16)
Block Number Address Range
16 1E0000h-1FFFFFh
15 1C0000h-1DFFFFh
14 1A0000h-1BFFFFh
13 180000h-19FFFFh
12 160000h-17FFFFh
11 140000h-15FFFFh
10 120000h-13FFFFh
9 100000h-11FFFFh
8 0E0000h-0FFFFFh
7 0C0000h-0DFFFFh
6 0A0000h-0BFFFFh
5 080000h-09FFFFh
4 060000h-07FFFFh
3 040000h-05FFFFh
2 020000h-03FFFFh
1 000000h-01FFFFh
AI07503
8 KWord
1FFFFFh
1FE000h
32 KWord
00FFFFh
008000h
32 KWord007FFFh
000000h
M29W320DT
Top Boot Block Addresses (x16)
16 KWord
1FBFFFh
1F8000h
32 KWord
1F0000h
1F7FFFh
Total of 6332 KWord Blocks
8 KWord
1FFFFFh
1F8000h
32 KWord
32 KWord
001FFFh
000000h
M29W320DB
Bottom Boot Block Addresses (x16)
16 KWord
1F7FFFh
00FFFFh
32 KWord
1F0000h
008000h
Total of 6332 KWord Blocks
007FFFh
004000h
4 KWord
4 KWord
1FDFFFh
1FD000h1FCFFFh
1FC000h
4 KWord
4 KWord
003FFFh
003000h002FFFh
002000h
7/30/2019 AN1557
11/21
11/21
AN1557 - APPLICATION NOTE
COMMAND INTERFACE
This section describes the commands used in both the Standard Flash and LightFlash families.
Table 5. Shared Commands
Note: X Dont Care, PA Program Address, PD Program Data, BA Any address in the Block. All values in the table are in hexadecimal.
Shared Commands
Read/Reset Command. The Read/Reset command returns the memory to Read mode. This command
is the same for both families. The Read/Reset command is executed regardless of the value of V PP (VIH,
VIL or VHH) in the LightFlash devices.
Auto Select Command. The Auto Select command is used to read the Manufacturer Code and the De-
vice Code. The Auto Select command is executed regardless of the value of V PP (VIH, VIL or VHH) in the
LightFlash devices. Table 6 gives the codes for all the devices.
Word Program/ Program Command. The basic Program command is referred to as Word Program for
LightFlash and Program for Standard Flash. The command sequence is identical for both sets of devic-
es however for the LightFlash VPP must be set to VHH. If VPP is at VIL or VIH the command will be refused
and the the device will automatically revert to read mode.
Block Erase Command. The command sequence is identical for both sets of devices. In the Standard
Flash devices the Block Erase command can be used to erase one or more blocks. In the LightFlash
devices the command erases only one block at a time and V PP must be set to VHH. If VPP is at VIL or VIHthe command will be refused and the the device will automatically revert to read mode.
Table 6. Devices Codes
Command
Length
Bus Write Operations
1st 2nd 3rd 4th 5th 6th
Add Data Add Data Add Data Add Data Add Data Add Data
Read/Reset1 X F0
3 555 AA 2AA 55 X F0
Auto Select 3 555 AA 2AA 55 555 90
Word Program/Program
4 555 AA 2AA 55 555 A0 PA PD
Block Erase 6+ 555 AA 2AA 55 555 80 555 AA 2AA 55 BA 30
Chip Erase 6 555 AA 2AA 55 555 80 555 AA 2AA 55 555 10
Device Code
M29KW016E 88ABh
M29KW032E 88ACh
M29W160DT (Top) 22C4h
M29W160DB (Bottom) 2249h
M29W320DT (Top) 22CAh
M29W320DT (Bottom) 22CBh
7/30/2019 AN1557
12/21
AN1557 - APPLICATION NOTE
12/21
Special Command For LightFlash
Multiple Word Program Command. The Multiple Word Program command is an additional Program
command that can be used to program large streams of data. It greatly reduces the total programming
time when a large number of Words are written to the memory at any one time. VPP
must be set to VHHduring Multiple Word Program. If VPP is set to either VIL or VIH the command will be ignored, the data will
remain unchanged and the device will revert to Read/Reset mode.
It has four phases: the Setup Phase to initiate the command, the Program Phase to program the data to
the memory, the Verify Phase to check that the data has been correctly programmed and reprogram if
necessary and the Exit Phase. Table 7 shows the Multiple Word Program command sequence and Figure
8 shows the flowchart. Refer to the LightFlash datasheets for a complete description of this command.
The Multiple Word Program command is only available on the LightFlash devices.
Table 7. Multiple Word Program Command
Note: A Bus Read must be done between each Write cycle where the data is programmed or verified, to Read the Status Register and checkthat the memory is ready to accept the next data. NOT PA1 is any address that is not in the same block as PA1. X Dont Care, n =number of Words to be programmed.
PhaseLen
gth
Bus Write Operations
1st 2nd 3rd 4th 5th Final -1 Final
Add Data Add Data Add Data Add Data Add Data Add Data Add Data
Program3+n+1
555 AA 2AA 55 555 20 PA1 PD1 PA1 PD2 PA1 PAnNOTPA1
X
Verify n+1 PA1 PD1 PA1 PD2 PA1 PD3 PA1 PD4 PA1 PD5 PA1 PAnNOTPA1
X
7/30/2019 AN1557
13/21
13/21
AN1557 - APPLICATION NOTE
Figure 8. LightFlash Multiple Word Program Flowchart
Note: 1. Refer to datasheet for timings.
Write AAhAddress 555h
AI05554c
Start
Read StatusRegister
YES
NODQ0 = 0?
Write 55hAddress 2AAh
Write 20hAddress 555h
Write Data1(PD1)Start Address (PA1)
Write Data 2 (PD2)Address in Start Block
YES
NO
Read StatusRegister
Write Data n (PDn)Address in Start Block
YES
NO
Read StatusRegister
Write XXAny Address
NOT in Start Block
Read StatusRegister
NO
Write Data1 (PD1)Start Address (PA1)
Write Data 2 (PD2)Address in Start Block
NO
Read StatusRegister
Write Data n (PDn)Address in Start Block
Read StatusRegister
Write XXAny Address
NOT in Start Block
YES
Write F0hAddress XX
Exit (read mode)
DQ0 = 0?
DQ0 = 0?
DQ0 = 0?
DQ0 = 0?
DQ0 = 0?
Read StatusRegister
NO DQ6
toggling?
DQ5 = 1DQ4 = 0?
YES
Fail, VPP error
NO
ProgramPhase
YES
NODQ0 = 0?
YES
Setup time
exceeded?
EXIT (setup failed)
NODQ0 = 0?
Read StatusRegister
NO
Word
program timeexceeded?
YES
YES
NO
Wordprogram timeexceeded? YES
NO
Wordprogram timeexceeded? YES
DQ6toggling?
Read StatusRegister
NO
YES
YES
NO
Fail error
YES
NO
SetupPhase Verify
Phase
ExitPhase
Read StatusRegister
(tMWP-SETUP(1))
(tMWP-PROG(1))
(tMWP-PROG(1))
(tMWP-PROG(1))
YES
(tMWP-END(1))
(tMWP-TRAN(1))
7/30/2019 AN1557
14/21
AN1557 - APPLICATION NOTE
14/21
Further Commands on M29W160D/320D
Unlock Bypass Commands (Unlock Bypass, Unlock Bypass Program, Unlock Bypass Reset).
The Unlock Bypass commands are a set of commands used to speed up the Program access time on the
M29W160D/320D devices. They allow a single word to be programmed with a reduced number of BusWrite operations. They are typically used in applications where the Bus Write operations used to issue the
command can considerably increase the programming time. See Table 8 for the command sequence. Re-
fer to the datasheets for more details.
The Unlock Bypass commands are not available on the LightFlash devices.
Erase Suspend and Erase Resume. The M29W160D/320D devices feature an Erase Suspend com-
mand that can be used to temporarily suspend a Block Erase operation. The Erase Resume command is
used to restart the Erase operation. Refer to Table 8 for the command sequence.
Read CFI Query. The M29W160D/320D devices support the Common Flash Interface (CFI), a JEDEC
approved and standardized data structure that can be read from the Flash memory device. It allows a sys-
tem software to query the device to determine various electrical and timing parameters, density informa-
tion and functions supported by the memory. The Read CFI Query command is used to read data from
the Common Flash Interface (CFI) Memory Area. Refer to Table 8 for the command sequence.
The Common Flash Interface is not supported on the LightFlash devices.
Table 8. Further Commands
Note: X Dont Care, PA Program Address, PD Program Data, BA Any address in the Block. All values in the table are in hexadecimal.
Command
Length
Bus Write Operations
1st 2nd 3rd 4th 5th 6th
Addr Data Addr Data Addr Data Addr Data Addr Data Addr Data
Unlock Bypass 3 AAA AA 555 55 AAA 20
Unlock BypassProgram
2 X A0 PA PD
Unlock Bypass Reset 2 X 90 X 00
Erase Suspend 1 X B0
Erase Resume 1 X 30
Read CFI Query 1 AA 98
7/30/2019 AN1557
15/21
15/21
AN1557 - APPLICATION NOTE
STATUS REGISTER
Both sets of devices feature a Status Register which provides information on the current or previous Pro-
gram or Erase operation. The various bits convey information about the status and any errors of the op-
eration. They are output on DQ0-DQ7.
As a result of the different command sets used the Status Registers differ for the Standard Flash and Light-
Flash devices. Tables 9 and 10 show the Status Register bits for each set of devices, refer to the
datasheets for more detailed descriptions.
For LightFlash devices the VPP pin must be kept at VHH, to read the Status Register during Program
and Erase operations.
Data Polling Bit (DQ7)
The Data Polling Bit can be used to identify whether the Program/Erase Controller has successfully com-
pleted its operation. The Data Polling Bit is output on DQ7 when the Status Register is read.
On the LightFlash devices the Data Polling Bit is not available during a Multiple Word Program opera-
tion.
On the M29W160D/320D devices, the Data Polling Bit also gives information on the status of an Erase
Suspend operation.
Toggle Bit (DQ6)
The Toggle Bit can be used to identify whether the Program/Erase Controller has successfully completed
its operation. The Toggle Bit is output on DQ6 when the Status Register is read.
On the M29W160D/320D devices, the Data Polling Bit also gives information on the status of an Erase
Suspend operation and on the protection status of the blocks.
Error Bit (DQ5)
The Error Bit can be used to identify errors detected by the Program/Erase Controller. The Error Bit is set
to 1 when a Program, Block Erase or Chip Erase operation fails to write the correct data to the memory.If the Error Bit is set a Read/Reset command must be issued before other commands are issued. The Er-
ror bit is output on DQ5 when the Status Register is read.
VPP Status Bit (DQ4) (only for LightFlash)
The VPP Status Bit can be used to identify if any Program or Erase operation has failed due to a VPP error.
If VPP falls below VHH during any Program or Erase operation, the operation aborts and DQ4 is set to 1.
If VPP remains at VHH throughout the Program or Erase operation, the operation completes and DQ4 is
set to 0.
DQ4 is reserved on the M29W160D/320D devices.
Erase Timer Bit (DQ3)
The Erase Timer Bit can be used to identify the start of the Program/Erase Controller operation during aBlock Erase command. Once the Program/Erase Controller starts erasing the Erase Timer Bit is set to 1.
The Erase Timer Bit is output on DQ3 when the Status Register is read.
On the M29W160D/320D devices, the Erase Timer Bit is also useful to monitor the Program/Erase Con-
troller status when the Block Erase command is used to erase more than one block at a time.
Alternative Toggle Bit (DQ2)
The Alternative Toggle Bit can be used to monitor the Program/Erase controller during Block and Chip
Erase operations. The Alternative Toggle Bit is output on DQ2 when the Status Register is read.
It provides information on the block being erased (note that on the M29KW016E only one block can be
erased at a time with the Block Erase command) or a Block Erase error.
7/30/2019 AN1557
16/21
AN1557 - APPLICATION NOTE
16/21
On the M29W160D/320D devices, the Alternative Toggle Bit is also useful to monitor the Chip Erase op-
eration. It also provides information on the Erase Suspend status of the blocks when accessing the mem-
ory array in read mode. Refer to the datasheet for more detailed information.
Multiple Word Program Bit (DQ0) (only for LightFlash)
The Multiple Word Program Bit can be used to indicate whether the Program/Erase Controller is active or
inactive during Multiple Word Program. When the Program/Erase Controller has written one Word and is
ready to accept the next Word, the bit is set to 0.
Table 9. LightFlash Status Register Bits
Table 10. M29W160D/320DStatus Register Bits
Operation Condition DQ7 DQ6 DQ5 DQ4 DQ3 DQ2 DQ0 RB
Word Program Any Address DQ7 Toggle 0 0
Word ProgramError
VPP = VHH DQ7 Toggle 1 0 0
VPP< VHH DQ7 Toggle 1 1 0
Block/ ChipErase
Any Address 0 Toggle 0 1 Toggle 0
Erase ErrorVPP = VHH 0 Toggle 1 0 1 Toggle 0
VPP< VHH 0 Toggle 1 1 1 Toggle 0
Multiple WordProgram
P/E.C. active Toggle 0 1 0
P/E.C. inactive,waiting for next
Word Toggle 0 0 1
Multiple WordProgram
Error
VPP = VHH Toggle 1 0 1 0
VPP