SGS Thomson Microelectronics M59DR032B, M59DR032A, M59DR032 Datasheet

1/38
PRELIMINARY DATA
October 1999
This is preliminary information on a new product now in development or undergoing evaluation. Details are subject to change without notice.
M59DR032A M59DR032B
32 Mbit (2Mb x16, Dual Bank, Page) Low Voltage Flash Memory
SUPPLY VOLTAGE
DD
= V
DDQ
= 1.65V to 2.2V: for Program,
Erase and Read
PP
= 12V: o ptional Supply Voltage for fast
Program and Erase
ASYNCHRONOUS PAGE MODE READ
– Page Width: 4 words – Page Access: 35ns – Random Access: 100ns
PROGRAMMING TIME
– 10µs by Word typical – Double Word Programming Option
MEMORY BLOCKS
– Dual Bank Memory Array: 4 Mbit - 28 Mbit – Parameter Blo cks (Top or Bottom location) – Main Blocks
DUAL BANK OPERATIONS
– Read within one Bank while Program or
Erase within the other
– No delay between Read and Write operations
BLOCK PROTECTION/UNPROTECTION
– All Blocks protected at Power Up – Any combination of Blocks can be protected –WP
for Block Locking
COMMON FLASH INTERFACE (CFI)
64 bit SECURITY CODE
ERASE SUSPEND and RESUME MODES
100,000 PROGRAM/ERASE CYCL ES per
BLOCK
20 YEARS DATA RETEN TION
– Defectivity below 1ppm/year
ELECTRONIC SIGNATURE
– Manufacturer Code: 20h – Device Code, M59DR032A: A0h – Device Code, M59DR032B: A1h
BGA
TSOP48 (N)
12 x 20mm
FBGA48 (ZB)
8 x 6 solder balls
Figure 1. Logic Diagram
AI02544B
21
A0-A20
W
DQ0-DQ15
V
DD
M59DR032A M59DR032B
E
V
SS
16
G
RP
WP
V
DDQVPP
M59DR032A, M59DR032B
2/38
Figure 2A. FBGA Connections (Top View)
AI02532C
C
B
A
87654321
E
D
F
A4
A7V
PP
A8A11
A13
A0EDQ8DQ5DQ14A16
V
SS
DQ0DQ9DQ3DQ6DQ15V
DDQ
DQ1DQ10V
DD
DQ7V
SS
DQ2
A2
A5A17WA10
A14
A1A3A6A20DUA9A12A15
RP A18
DQ4
DQ13
G
DQ12
DQ11
WP A19
Figure 2B. TSOP Connections
DQ3
DQ9
DQ2
A6
DQ0
W
A3
NC
DQ6
A8
A9
DQ13
A17
A10 DQ14
A2
DQ12
DQ10
DQ15
V
DD
DQ4
DQ5
A7
DQ7
V
PP
WP
AI02533B
M59DR032A M59DR032B
12
1
13
24 25
36
37
48
DQ8
A20
A19
A1
A18
A4
A5
DQ1
DQ11
G
A12
A13
A16
A11
V
DDQ
A15 A14
V
SS
E A0
RP
V
SS
Table 1. Signal Names
A0-A20 Address Inputs DQ0-DQ15 Data Input/Outputs, Command Inputs E
Chip Enable
G
Output Enable
W
Write Enable
RP
Reset/Power Down
WP
Write Protect
V
DD
Circuitry Supp ly Voltage
V
DDQ
Input/Output Buffers Supply Voltage
V
PP
Optional Supply Voltage for Fast Program & Erase
V
SS
Ground NC Not Connected Internally DU Don’t use as internally connected
3/38
M59DR032A, M59DR032B
DESCRIPTION
The M59DR032 is a 32 Mbit non-volatile Flash memory that m ay be erased electrically a t block level and programmed i n-system on a Word-by­Word basis using a 1.65V to 2.2V V
DD
supply for the circuitry. For Program and Erase operations the necessary high voltages are g enerated inter­nally. The device supports asynchronous page mode from all the blocks of the memory array.
The array matrix organization allows each block to be erased and reprogrammed without affecting other blocks. All blocks are protected against pro­gramming and erase at Power Up. Blocks can be unprotected to make changes in the application and then reprotected.
Instructions for Read/Reset, Auto Select, Write Configuration Register, Programming, Block Erase, Bank Erase, Erase Suspend, Erase Re­sume, Block Protect, Block Unprotect, Block Lock­ing, CFI Query, are written to the memory through a Command Interface using standard micropro­cessor write timings.
The device is offered in TSOP48 (12 x 20 mm) and in FBGA48 0.75 mm ball pitch packages.
When shipped all bits of the M59DR032 device are
at the logical level ‘1’.
Organization
The M59DR032 is organized as 2Mb x16 bits. A0­A20 are the address lines, DQ0-DQ15 are the Data Input/Output. Memory control is provided by Chip Enable E
, Output Enable G and Write Enable
W
inputs.
Reset RP
is used to reset all the memory circuitry and to set the chip in power down mode if this function is enabled by a proper setting of the Con­figuration Register. Erase and Program operations are controlled by an internal Program/Erase Con­troller (P/E.C.). Status Register data output on DQ7 provides a Data Polling signal, DQ6 and DQ2 provide Toggle signals and DQ5 provides error bit to indicate the state of the P/E.C operations.
Memory Blocks
The device features asymmetrically blocked archi­tecture. M59DR032 has an array of 71 blocks and is divided into two banks A and B, prov iding D ual Bank operations. While programming or erasing in Bank A, read operations are possible into Bank B or vice versa. The memory also features an erase suspend allowing to read or program in another block within the same bank. Once suspended the erase can be resumed. The Bank Size and Sector­ization are summarized in Table 7. Parameter Blocks are located at the top of the m emory ad­dress space for the M59DR032A, and at the bo t­tom for the M59DR032B. The memory maps are shown in Tables 3, 4, 5 and 6.
The Program and Erase operation s are managed automatically by the P/E.C. Block protection against Program or Erase provides additional data security. All blocks are protected at Power Up. In­structions are provided to protect or unprotect any block in the application. A second register locks the protection status while WP
is low (see B lock Locking description). The Reset command does not affect the configurati on of unprotected blo cks and the Configuration Register status.
Table 2. Absolute Maximum Ratings
(1)
Note: 1. Except for th e rating "O perating T em perature R ange", stresses abo ve those listed in the T able "Absol ute Maxim um Ratings" may
cause permanent damage to the device. These are stress ratings only and operation of the device at these or any other conditions above those indi cated in t he Operating sect i ons of thi s specifi cation i s not impl i ed. Exposure to Absolute M aximum Rating c ondi­tions for extended per iods may aff ect device reliabilit y. Refer also to the STMicroel ectronics SURE Program an d other relevan t qual ­ity docum en ts .
2. Depends on range.
3. Minim um Voltage may undershoot to –2V duri ng transit i on and for less than 20ns.
Symbol Parameter Value Unit
T
A
Ambient Operating Temperature
(2)
–40 to 85 °C
T
BIAS
Temperature Under Bias –40 to 125 °C
T
STG
Storage Temperature –55 to 155 °C
V
IO
(3)
Input or Output Voltage
–0.5 to V
DDQ
+0.5
V
V
DD
, V
DDQ
Supply Voltage –0.5 to 2.7 V
V
PP
Program Voltage –0.5 to 13 V
M59DR032A, M59DR032B
4/38
Table 3. Bank A, Top Boot Block Address
Table 4. Bank B, Top Boot Block Address
Size (KWord) Address Range
4 1FF000h-1FFFFFh 4 1FE000h-1FEFFFh 4 1FD000h-1FDFFFh 4 1FC000h-1FCFFFh 4 1FB000h-1FBFFFh 4 1FA000h-1FAFFFh 4 1F9000h-1F9FFFh
4 1F8000h-1F8FFFh 32 1F0000h-1F7FFFh 32 1E8000h-1EFFFFh 32 1E0000h-1E7FFFh 32 1D8000h-1DFFFFh 32 1D0000h-1D7FFFh 32 1C8000h-1CFFFFh 32 1C0000h-1C7FFFh
Size (KWord) Address Range
32 1B8000h-1BFFFFh 32 1B0000h-1B7FFFh 32 1A8000h-1AFFFFh 32 1A0000h-1A7FFFh 32 198000h-19FFFFh 32 190000h-197FFFh 32 188000h-18FFFFh 32 180000h-187FFFh 32 178000h-17FFFFh 32 170000h-177FFFh 32 168000h-16FFFFh 32 160000h-167FFFh 32 158000h-15FFFFh 32 150000h-157FFFh 32 148000h-14FFFFh 32 140000h-147FFFh 32 138000h-13FFFFh 32 130000h-137FFFh
32 128000h-12FFFFh 32 120000h-127FFFh 32 118000h-11FFFFh 32 110000h-117FFFh 32 108000h-10FFFFh 32 100000h-107FFFh 32 0F8000h-0FFFFFh 32 0F0000h-0F7FFFh 32 0E8000h-0EFFFFh 32 0E0000h-0E7FFFh 32 0D8000h-0DFFFFh 32 0D0000h-0D7FFFh 32 0C8000h-0CFFFFh 32 0C0000h-0C7FFFh 32 0B8000h-0BFFFFh 32 0B0000h-0B7FFFh 32 0A8000h-0AFFFFh 32 0A0000h-0A7FFFh 32 098000h-09FFFFh 32 090000h-097FFFh 32 088000h-08FFFFh 32 080000h-087FFFh 32 078000h-07FFFFh 32 070000h-077FFFh 32 068000h-06FFFFh 32 060000h-067FFFh 32 058000h-05FFFFh 32 050000h-057FFFh 32 048000h-04FFFFh 32 040000h-047FFFh 32 038000h-03FFFFh 32 030000h-037FFFh 32 028000h-02FFFFh 32 020000h-027FFFh 32 018000h-01FFFFh 32 010000h-017FFFh 32 008000h-00FFFFh 32 000000h-007FFFh
5/38
M59DR032A, M59DR032B
Table 5. Bank B, Bottom Boot Block Address
Size (KWord) Address Range
32 1F8000h-1FFFFFh 32 1F0000h-1F7FFFh 32 1E8000h-1EFFFFh 32 1E0000h-1E7FFFh 32 1D8000h-1DFFFFh 32 1D0000h-1D7FFFh 32 1C8000h-1CFFFFh 32 1C0000h-1C7FFFh 32 1B8000h-1BFFFFh 32 1B0000h-1B7FFFh 32 1A8000h-1AFFFFh 32 1A0000h-1A7FFFh 32 198000h-19FFFFh 32 190000h-197FFFh 32 188000h-18FFFFh 32 180000h-187FFFh 32 178000h-17FFFFh 32 170000h-177FFFh 32 168000h-16FFFFh 32 160000h-167FFFh 32 158000h-15FFFFh 32 150000h-157FFFh 32 148000h-14FFFFh 32 140000h-147FFFh 32 138000h-13FFFFh 32 130000h-137FFFh 32 128000h-12FFFFh 32 120000h-127FFFh 32 118000h-11FFFFh 32 110000h-117FFFh 32 108000h-10FFFFh 32 100000h-107FFFh 32 0F8000h-0FFFFFh 32 0F0000h-0F7FFFh 32 0E8000h-0EFFFFh 32 0E0000h-0E7FFFh
Table 6. Bank A, Bottom Boot Block Address
32 0D8000h-0DFFFFh 32 0D0000h-0D7FFF h 32 0C8000h-0CFFFFh 32 0C0000h-0C7FFF h 32 0B8000h-0B FFFFh 32 0B0000 h-0B7FFFh 32 0A8000h-0A FFFFh 32 0A0000 h-0A7FFFh 32 098000 h-09FFFFh 32 0 90000h-097FFFh 32 088000 h-08FFFFh 32 0 80000h-087FFFh 32 078000 h-07FFFFh 32 0 70000h-077FFFh 32 068000 h-06FFFFh 32 0 60000h-067FFFh 32 058000 h-05FFFFh 32 0 50000h-057FFFh 32 048000 h-04FFFFh 32 0 40000h-047FFFh
Size (KWord) Address Range
32 038000h-03FFFFh 32 030000h-037FFFh 32 028000h-02FFFFh 32 020000h-027FFFh 32 018000h-01FFFFh 32 010000h-017FFFh 32 008000h-00FFFFh
4 007000h-007FFFh 4 006000h-006FFFh 4 005000h-005FFFh 4 004000h-004FFFh 4 003000h-003FFFh 4 002000h-002FFFh 4 001000h-001FFFh 4 000000h-000FFFh
M59DR032A, M59DR032B
6/38
SIGNAL DESCRIPTIONS
See Figure 1 and Table 1. Address Inputs (A0-A20). The address inputs
for the memory array are latched during a write op­eration on the falling edge of Chip Enable E
or
Write Enable W
, whichever occurs last.
Data Input/Output (DQ0-DQ15). The Input is data to be programm ed in the memory array or a command to be written to the Command Interface (C.I.) Both input data and commands are latc hed on the rising edge of Write Enable W
. The Ouput is data from the Memory Array, the Common Flash Interface, the Electronic Signature Manufacturer or Device codes, the Block Protection status, the Configuration Register status or the Status Regis­ter Data Polling bit DQ7, the Toggle Bits DQ6 and DQ2, the Error bit DQ5. The data bus is high im­pedance when the chip is deselected, Output En­able G
is at VIH, or RP is at VIL.
Chip Enable (E
). The Chip Enable input acti-
vates the memory control logic, input buffers, de­coders and sense amplifiers. E
at VIH deselects the memory and red uces the power consumption to the standby level. E
can also be used to control writing to the command register and to the memo­ry array, while W
remains at VIL.
Output Enable (G
). The Output Enable gates the
outputs through the data buffers during a read op­eration. When G
is at VIH the outputs are High im-
pedance.
Write Enable (W
). This input controls writing to
the Command Register and Data latches. Data are latched on the rising edge of W
.
Write Protect (WP
). This input gives an addition-
al hardware protection level against program or erase when pulled at V
IL
, as described in the Block
Lock instruction description.
Reset/Power Down Input (RP
). The RP input
provides hardware reset of the memory (without affecting the Configuration Register status ), and/ or Power Down functions, depending on the Con­figuration Register status. Reset/Power Down of the memory is achieved by pulling RP
to VIL for at
least t
PLPH
. When the reset pul se is given, if the memory is in Read, Erase Suspend Read or Standby, it will output new valid data in t
PHQ7V1
af-
ter the rising edge of RP
. If the memory is in Erase
or Program modes, the oper ation will be aborted
and the reset recovery will take a maximum ot t
PLQ7V
. The memory will recover from Power
Down (when enabled) in t
PHQ7V2
after the rising
edge of RP
. See Tables 25, 26 and Figure 9.
V
DD
and V
DDQ
Supply Voltage (1.65V to 2.2V).
The main power supply for all operations (Read, Program and Erase). V
DD
and V
DDQ
must be at
the same voltage.
V
PP
Programming Voltage (11.4V to 12.6V ). Used
to provide high voltage for fast factory program­ming. High voltage on V
PP
pin is required to use the Double Word Program instruction. It is also possible to perform word program or erase instruc­tions with V
PP
pin grounded.
V
SS
Ground. VSS is the reference for al l the vol t-
age measurements.
DEVICE OPERATIONS
The following operations can be performed using the appropriate bus cycles: Read Array (Random, and Page Modes), Write command, Output Dis­able, Standby, Reset/Power Down and Block Locking. See Table 8.
Read. Read operations are used to output the contents of the Memory Array, the Electronic Sig­nature, the Status Register, the CFI, the Block Protection Status or the Configuration Register status. Read operation of the memory array is per­formed in asynchronous page mode, that provides fast access time. Data is internally read and stored in a page buffer. The page has a size of 4 words and is addressed by A0-A1 address inputs. Read operations of the Electroni c Signature, th e Status Register, the CFI, the Block Protection Status, the Configuration Register status and the Security Code are performed as single asyncronous read cycles (Random Read). Both Chip Enabl e E
and
Output Enable G
must be at VIL in order to read the
output of the memory. Write. Write operations are u sed to give Instruc-
tion Commands to the memory or to latch Input Data to be programmed. A write operation is initi­ated when Chip Enable E
and Write Enable W are
at V
IL
with Output Enable G at VIH. Addresses are
latched on the falling edge of W
or E whichever oc­curs last. Commands and Input Data are latched on the rising edge of W
or E whichever occurs first.
Noise pulses of less than 5ns typical on E
, W and
G
signals do not start a write cycle.
Table 7. Bank Size and Sectorization
Bank Size Parameter Blocks Main Blocks
Bank A 4 Mbit 8 blocks of 4 KWord 7 blocks of 32 KWord Bank B 28 Mbit - 56 blocks of 32 KWord
7/38
M59DR032A, M59DR032B
Table 8. User Bus Operations
(1)
Note: 1. X = Don’t care.
Table 9. Read Electronic Signature (AS and Read CFI instructions)
Table 10. Read Block Protection (AS and Read CFI instructions)
Table 11. Read Configuration Register (AS and Read CFI instructions)
Operation E G W RP WP DQ15-DQ0
Write
V
IL
V
IH
V
IL
V
IH
V
IH
Data Input
Output Disable
V
IL
V
IH
V
IH
V
IH
V
IH
Hi-Z
Standby
V
IH
XX
V
IH
V
IH
Hi-Z
Reset / Power Down X X X
V
IL
V
IH
Hi-Z
Block Locking
V
IL
XX
V
IH
V
IL
X
Code Device E
G W A0 A1 A7-A2
Other
Addresses
DQ15-DQ8 DQ7-DQ0
Manufacturer Code
V
IL
V
IL
V
IH
V
IL
V
IL
0 Don’t Care 00h 20h
Device Code
M59DR032A
V
IL
V
IL
V
IH
V
IH
V
IL
0 Don’t Care 00h A0h
M59DR032B
V
IL
V
IL
V
IH
V
IH
V
IL
0 Don’t Care 00h A1h
Block Status E
G W A0 A1 A20-A12 A7-A2
Other
Addresses
DQ0 DQ1 DQ15-DQ2
Protected Block
V
ILVILVIHVILVIH
Block Address 0 Don’t Care 1 0 0000h
Unprotected Block
V
ILVILVIHVILVIH
Block Address 0 Don’t Care 0 0 0000h
Locked Block
V
ILVILVIHVILVIH
Block Address 0 Don’t Care X 1 0000h
RP
Function E G W A0 A1 A7-A2 Other Addresses DQ10
DQ9-DQ0
DQ15-DQ11
Reset
V
IL
V
IL
V
IH
V
IH
V
IH
0 Don’t Care 0 Don’t Care
Reset/Power Down
V
IL
V
IL
V
IH
V
IH
V
IH
0 Don’t Care 1 Don’t Care
Automatic Standby. When in Read mode, after 150ns of bus inactivity and when CMOS levels are driving the addresses, the chip automatically en­ters a pseudo-standby mode where consumption is reduced to the CMOS standby value, while out­puts still drive the bus.
Power Down. The memory is in Power Down when the Configuration Register is set for Power Down and RP
is at VIL. The power consumption is reduced to the Power Down level, and Outputs are in high impedance, independent of the Chip En­able E
, Output Enable G or Write Enable W inputs.
Block Locking. Any combination of blocks can be temporarily protected against Program or Erase by setting the lock register and pulling WP to VIL (see Block Lock instruction).
Dual Bank Operations. The Dual Bank allows to read data from one bank of memory while a pro­gram or erase operation is in progress in the other bank of the memory. Read and Write cycles can be initiated for simultaneous operations in different banks without any d elay. Status Register du ring Program or Erase must be monitored using an ad­dress within the bank being modified.
Output Disa bl e . The data outputs are high im­pedance when the Output Enable G
is at VIH with
Write Enable W
at VIH.
Standby. The memory is in standby when Chip Enable E
is at VIH and the P/E.C. is idle. The pow­er consumption is reduced to the standby level and the outputs are high impedance, independent of the Output Enable G
or Write Enable W input s.
M59DR032A, M59DR032B
8/38
INSTRUCTIONS AND COMMANDS
Seventeen instructions are defined (see Table 14A), and the internal P /E.C. automatically han­dles all timing and verification of the Pr ogram and Erase operations. The Status Register Dat a Poll­ing, Toggle, Error bits can be read at any time, dur­ing programming or erase, to monitor the progress of the operation.
Instructions, made up of one or more com mands written in cycles, can be given to the Program/ Erase Controller through a Command Interface (C.I.). The C.I. latches comma nds written to the memory. Commands are made of address and data sequences. Two Coded Cycles unlock the Command Interface. They are followed by an input command or a confirmation command. The Coded Sequence consists of writing the dat a AAh at the address 555h during the f irst cycle and the data 55h at the address 2AAh during the second cycle.
Instructi ons a re co mpose d of up to si x cycles. The first two cycles input a Coded Sequence to the Command Interface which is common to all in­structions (see Table 14A). T he third cycle inputs the instruction set-up command. Subseq uent cy­cles output the addressed data, Elect ronic Signa­ture, Block Protection, Configuration Register Status or CFI Query for Read operations. In order to give additional data protection, the instructions for Block Erase and Bank Erase require further command inputs. For a Program instruction, the fourth command cycle inputs the address and data to be programmed. For a Double Word Program­ming instruction, the fourth and fifth co mmand cy­cles input the address and data to be programmed. For a Block Eras e and Bank Erase instructions, the fourth and fifth cycles input a fur­ther Coded Sequence before the Erase confirm command on the sixth cycle. Any combination of blocks of the same memory bank can be erased. Erasure of a memory block may be suspended, in order to read data from another block or to pro­gram data in another block, and then resumed. When power is first applied the command interface is reset to Read Array.
Command sequencing must be followed exactly. Any invalid combination of commands will reset the device to Read Array. The inc reased number of cycles has been chosen to ensure maximum data security.
Read/Reset (RD) Instruction. The Read/Reset instruction consists of one write cycle giving the command F0h. It can be optionally preceded by the two Coded Cycles. Subsequent read opera­tions will r ead the memory array a ddressed and output the data read.
CFI Query (RCFI) Instruction. Common Flash Interface Query mode is entered writing 98h at ad­dress 55h. The CFI data structure gives informa­tion on the device, such as the sectorization, the command set and some el ectrical specifications. Tables 15, 16, 17 and 18 show the addresses used to retrieve each data. The CFI data structure contains also a se curity area; in this section, a 64 bit unique security number is written, starting at address 80h. This area can be accessed only in read mode by the final user and there are no ways of changing the code after it has been written by ST. Write a read instruction (RD) to return to Read mode.
Table 12. Commands
Hex Code Command
00h Bypass Reset 10h Bank Erase Confir m 20h Unlock Bypass 30h Block Erase Resume/Confirm 40h Double Word Program
60h
Block Protect, or Block Unprotect, or Block Lock, or Write Configuration Register
80h Set-up Erase
90h
Read Electronic Signature, or Block Protection Status, or
Configuration Register Status 98h CFI Query A0h Program B0h Erase Suspend F0h Read Array/Reset
9/38
M59DR032A, M59DR032B
Auto Select (AS) Instruction. This instruction
uses two Coded Cycles followed by one write cy­cle giving the command 90h to address 555h for command set-up. A subsequent read will output the Manufacturer or the Device Code (Electronic Signature), the Block Protection status or the Con­figuration Register status depending on the levels of A0 and A1 (see Tables 9, 10 and 11). A7-A2 must be at V
IL
, while other address input are ig-
nored. The bank address is don’t care for this in­struction. The Electronic Signature can be read from the memory allowing programming equip­ment or applications to automatically match their interface to the characteristics of M59DR032. The Manufacturer Code is output when the address lines A0 and A1 are at V
IL
, the Device Code is out-
put when A0 is at V
IH
with A1 at VIL.
The codes are output on DQ0-DQ7 with DQ8­DQ15 at 00h. The AS instruction also allows the access to the Block Protection Status. After giving the AS inst ructio n, A 0 is s et to V
IL
with A1 at VIH, while A12-A20 define t he address of the block to be verified. A read in these conditions will output a 01h if the block is protected and a 00h if the block is not protected.
The AS Instruction finally allows the access to the Configuration Register status if both A0 and A1 are set to V
IH
. If DQ10 is '0' only the Reset function
is active as RP
is set to VIL (default at power-up). If DQ10 is '1' both the Reset and the Power Down functions will be achieved by pulling RP
to VIL. The other bits of the Configuration Register are re­served and must be ignored. A reset command puts the device in read array mode.
Write Configuration Register (CR) Instruc­tion. This instruction uses t wo Coded Cyc les fol-
lowed by one write cycle giving the command 60h to address 555h. A further write cycle giving the command 03h writes the conte nts of address bi ts A0-A15 to the 16 bits configuration register. Bits written by inputs A0-A9 and A11-A15 are reserved for future use. Address input A10 defines the sta­tus of the Reset/Power Down functions. It must be set to V
IL
to enable only the Reset function and to
V
IH
to enable also the Power Down function. At Power Up all the Con figuration Register bits are reset to '0'.
Enter Bypass Mode (EBY) Instruction. This in­struction uses the two Coded cycles f ollowed by one write cycle giving the command 20h to ad­dress 555h for mode set-up. Once in Bypass mode, the device will accept the Exit Bypass
(XBY) and Program or Double Word Program in Bypass mode (PGBY, DPGBY) commands. The Bypass mode allows to reduce the overall pro­gramming time when large memory arrays need to be programmed.
Exit B y pa ss Mode (XBY) Ins t r u c t i o n. This in­struction uses two write cycles. The first inputs to the memory the command 90h and the second in­puts the Exit Bypass mode confirm (00h). After the XBY instruction, the device resets to Read Memo­ry Array mode.
Program in Bypass Mode (PGBY) Instruc­tion. This instruction uses two write cycles. The
Program command A0h is written to any Address on the first cycle and the second write cycle latch­es the Address on t he falling e dge of W or E and the Data to be written on the rising edge and starts the P/E.C. Read operations within the same bank output the Status Regist er bits after th e program­ming has started. Memory programming is made only by writing '0' in place of '1'. Status bits D Q6 and DQ7 determine if programming is on-going and DQ5 allows verification of any possible error.
Program (PG) Instruction. This ins truction uses four write cycles. The Program command A0h is written to address 555h on the third cycle after two Coded Cycles. A fourth write operation latches the Address and the Dat a to be writte n a nd starts the P/E.C. Read operations within the same bank out­put the Status Register bits after the programming has started. Memory program ming is made only by writing '0' in place of '1'. Status bits DQ6 and DQ7 determine if programming is on-going and DQ5 allows verification of any possible error. Pro­gramming at an address not in blocks being erased is also possible during erase suspend.
Double Word Program (DPG) Instruction. This feature is offered to improve the programming throughput, writing a page of two adjacent words in parallel. High voltage (11.4V to 12.6V) on V
PP
pin is required. This instruction uses five write cy­cles. The double word program command 40h is written to address 555h on the third cycle after two Coded Cycles. A fourth write cycle latches the ad­dress and data to be written to the first location. A fifth write cycle latches the new data to be written to the second location and starts the P/E.C.. Note that the two locations must have the same address except for the address bit A0. The Double Word Program can be executed in Bypass mode (DPG­BY) to skip the two coded cycles at the beginning of each command.
M59DR032A, M59DR032B
10/38
Block Protect (BP), Blo ck Unprotect (BU), Block Lock (BL) Instructions. All blocks are
protected at power-up. Each block of the array has two levels of protection against program or erase operation. The first level is set by the Block Protect instruction; a protected block cannot be pro­grammed or erased until a Block Unprotect in­struction is given for that block. A second l evel of protection is set by the Block Lock instruction, and requires the use of the WP
pin, according to t he
following scheme:
– when WP
is at VIH, the Lock status is overridden
and all blocks can be protected or unprotected;
– when WP
is at VIL, Lock status is enabled; the locked blocks are protected, regardless of their previous protect state, and protection status cannot be changed. Bloc ks that are not locked can still change their protection status, and pro­gram or erase accordingly;
– the lock status is cleared for all blocks at power
up; once a block ha s been locke d state can be cleared only with a reset command. The protec­tion and lock status can be monit ored for each block using the Autoselect (AS) instruction. Pro­tected blocks will output a ‘1’ on DQ0 and locked blocks will output a ‘1’ on DQ1.
Refer to Table 13 for a list of the protection states. Block Erase (BE) Instruction. This instruction
uses a minimum of six write cycles. The Erase Set-up command 80h is written to ad dress 555h on third cycle after the two Coded cycles. The Block Erase Confirm command 30h is similarly written on the sixth cycle after another two Coded cycles and an address within the block to be erased is given and latched into the memory.
Table 13. Protection States
(1)
Note: 1. All bl ocks are protected at pow er-up, so the default con figuratio n i s 001 or 101 according to WP status.
2. Current state a nd Next state gi ves the pr ot ection sta t us of a block . The protec tion status is defined by the write pr otect pin and by DQ1 (= 1 for a loc ked block) an d DQ0 (= 1 for a prot ected block ) as read in the A ut oselect inst ruction with A1 = V
IH
and A0 = VIL.
3. Next state is the protection status of a block after a Protect or Unprotect or Lock command has been issued or after WP
has changed
its logic value.
4. A WP
transition to VIH on a locked block will restore the previous DQ0 value, giving a 111 or 110.
Current State
(2)
(WP
, DQ1, DQ0)
Program/Erase
Allowed
Next State After Event
(3)
Protect Unprotect Lock WP transition
100 yes 101 100 111 000 101 no 10 1 100 111 001 110 yes 111 110 111 011 111 no 11 1 110 111 011 000 yes 001 000 011 100 001 no 00 1 000 011 101
011 no 01 1 011 011
111 or 110
(4)
Additional block Erase Confirm commands and block addresses can be written subsequently to erase other blocks i n paral l el, wit h out fu rthe r Co d­ed cycles. All blocks must belong to the same bank of memory; if a new block belonging to the other bank is given, the operation is aborted. The erase will start after an erase timeout period of 100µs. Thus, additional Erase Confirm commands for other blocks must be given within this delay. The input of a new Erase Confirm command will restart the timeout period. The status of the in ter­nal timer can be monitored through the level of DQ3, if DQ3 is '0' the Block Erase Command has been given and the timeout is running, if DQ3 is '1', the timeout has expired and the P/E.C. is erasing the Block(s). If the second command given is not an erase confirm or if the Coded cycles are wrong, the instruction aborts, and the device is reset to Read Array. It is not necessary to program the block with 00h as the P/E.C. will do t his a uto mati­cally before erasing to FFh. Read operations with­in the same bank, after the sixth rising edge of W or E, output the status register bits.
During the execution of the erase by the P/E.C., the memory accepts only the Erase Suspend ES instruction; the Read/Reset RD instruction is ac­cepted during the 100µs time-out period. Data Polling b it DQ7 retur ns '0' while the erasur e is in progress and '1' when it has com pleted. The Tog­gle bit DQ6 toggles during the erase operation, and stops when erase is completed.
After completion the Status Re gister bit DQ5 re­turns '1' if there has been an erase failure. In such a situation, the Toggle bit DQ2 can be used to de­termine which block is not correctly erased. In the case of erase failure, a Read/Reset RD instruction is necessary in order to reset the P/E.C.
11/38
M59DR032A, M59DR032B
Bank Erase (BKE) Instruction. This instruction
uses six write cycles and is used to e rase all the blocks belonging to the selected bank. The Erase Set-up command 80h is written to ad dress 555h on the third cycle after the two Coded cycles. The Bank Erase Confirm command 10h is similarly written on the sixth cycle after another two Coded cycles at an address within the selected bank. If the second command gi ven is not an erase con­firm or if the Coded cy cles are wrong, the instruc­tion aborts and the device is reset to Read A rray. It is not necessary to program the array with 00h first as the P/E.C. will automatically do this before erasing it to FFh. Read operations within the same bank after the sixth rising edge of W
or E output the Status Register bits. During the execution of the erase by the P/E.C., Data Polling bit DQ7 re­turns ’0’, then ’1’ on completion. The Toggle bit DQ6 toggles during erase operation and stops when erase is completed. After completion the Status Register bit DQ5 returns ’1’ if there has been an Erase Failure.
Erase Suspend (ES) Instruction. In a dual bank memory the Erase Suspend instruction is used to read data within the bank where erase is in
progress. It is also possible to program data in blocks not being erased.
The Erase Suspend in struction con sists o f writing the command B0h without any s pecific address. No Coded Cycles are requ ired. Erase s uspend is accepted only during the Block Erase i nstruction execution. The Toggle bit DQ6 stops toggling
when the P/E.C. is suspended within 15µs after the Erase Suspend (ES) command has been writ­ten. The device will then automatically be set to Read Memory Array mode. When erase is sus­pended, a Read from blocks being erased will out­put DQ2 toggling and DQ 6 at '1'. A Read from a block not being erased returns valid data. During suspens ion the memory w ill respond only to the Erase Resume ER and the Program PG instruc­tions. A Program operation can be initiated during erase suspend in one of the blocks not being erased. It will result in DQ6 toggling when the data is being programmed.
Erase Resume (ER) Instruction. If an Erase Suspend instruction was previously exec uted, the erase operation may be resumed by giving the command 30h, at an address within the bank be­ing erased and without any Coded Cycle.
M59DR032A, M59DR032B
12/38
Table 14A. Instructions
(1,2)
Mne. Instr. Cyc. 1st Cyc. 2nd Cyc. 3rd Cyc. 4th Cyc. 5th Cyc. 6th Cyc.
RD
(4)
Read/Reset Memory Array
1+
Addr.
(3)
X
Read Memory Array until a new write cycle is initiated.
Data F0h
3+
Addr. 555h 2AAh 555h
Read Memory Array until a new write cycle is initiated.
Data AAh 55h F0h
RCFI CFI Query 1+
Addr. 55h
Read CFI data until a new write cycle is initiated.
Data 98h
AS
(4)
Auto Select 3+
Addr. 555h 2AAh 555h Read electronic Signature or
Block Protection or Configuration Register Status until a new cycle is initiated.
Data AAh 55h 90h
CR
Configuration Register Write
4
Addr. 555h 2AAh 5 55h
Configura­tion Data
Data AAh 55h 60h 03h
PG Program 4
Addr. 555h 2AAh 555h
Program Address
Read Data Polling or Toggle Bit until Program completes.
Data AAh 55h A0h
Program
Data
DPG
Double Word Program
5
Addr. 555h 2AAh 5 55h
Program
Address 1
Program
Address 2
Note 6, 7
Data AAh 55h 40h
Program
Data 1
Program
Data 2
EBY
Enter Bypass Mode
3
Addr. 555h 2AAh 555h Data AAh 55h 20h
XBY
Exit Bypass Mode
2
Addr. XX Data 90h 00h
PGBY
Program in Bypass Mode
2
Addr. X
Program Address
Read Data Polling or Toggle Bit until Program completes.
Data A0h
Program
Data
DPGBY
Double Word Program in Bypass Mode
3
Addr. X
Program
Address 1
Program
Address 2
Note 6, 7
Data 40h
Program
Data 1
Program
Data 2
BP Block Protect 4
Addr. 555h 2AAh 555h
Block
Address
Data AAh 55h 60h 01h
BU Block Unprotect 1
Addr. 555h 2AAh 555h
Block
Address
Data AAh 55h 60h D0h
Loading...
+ 26 hidden pages