SAMSUNG KM29W040AT

KM29W040AT, KM29W040AIT
FLASH MEMORY
Document Title
512K x 8 bit NAND Flash Memory
Revision History
Revision No. History
Draft Date
Remark
0.0
Initial issue.
April 10th 1998
Preliminary
1.0
1) Changed Operating Voltage 2.7V ~ 5.5V → 3.0V ~ 5.5V
July 14th 1998
Final
1.1
Data Sheet 1999
April 10th 1999
Final
1) Added CE don’t care mode during the data-loading and reading
The attached datasheets are prepared and approved by SAMSUNG Electronics. SAMSUNG Electronics CO., LTD. reserve the right
to change the specifications. SAMSUNG Electronics will evaluate and reply to your requests and questions about device. If you have
any questions, please contact the SAMSUNG branch office near you.
1
KM29W040AT, KM29W040AIT
FLASH MEMORY
512K x 8 Bit NAND Flash Memory
FEATURES
GENERAL DESCRIPTION
• Voltage Supply: 3.0V~5.5V
• Organization
- Memory Cell Array : 512K x 8
- Data Register
: 32 x 8 bit
• Automatic Program and Erase (Typical)
- Frame Program : 32 Byte in 500µs
- Block Erase : 4K Byte in 6ms
• 32-Byte Frame Read Operation
- Random Access : 15µs(Max.)
- Serial Frame Access : 120ns(Min.)
• Command/Address/Data Multiplexed I/O port
• Low Operation Current (Typical)
- 10µA Standby Current
- 10mA Read/ Program/Erase Current
• Reliable CMOS Floating-Gate Technology
- Endurance : 100K Program/Erase Cycles
• 44(40) - Lead TSOP Type II (400mil / 0.8 mm pitch)
The KM29W040A is a 512Kx8bit NAND Flash Memory. Its
NAND cell structure provides the most cost-effective solution
for Digital Audio Recording. A Program operation programs a
32-byte frame in typically 500µs and an Erase operation erase
a 4K-byte block in typically 6ms. Data in a frame can be read
out at a burst cycle rate of 120ns/byte. The I/O pins serve as
the ports for address and data input/output as well as for command inputs. The on-chip write controller automates the program and erase operations, including program or erase pulse
repetition where required, and performs internal verification of
cell data.
PIN CONFIGURATION
PIN DESCRIPTION
The KM29W040A is an optimum solution for flash memory
application that do not require the high performance levels or
capacity of larger density flash memories. These application
include data storage in digital Telephone Answering
Devices(TAD) and other consumer applications that require
voice data storage.
Pin Name
I/O0 ~ I/O7
VSS
CLE
ALE
WE
WP
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
I/O0
I/O1
I/O2
I/O3
VSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
VCC
CE
RE
R/B
GND
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
N.C
I/O7
I/O6
I/O5
I/O4
VCC
CLE
Command Latch Enable
ALE
Address Latch Enable
CE
Chip Enable
RE
Read Enable
WE
Write Enable
WP
Write Protect
GND
Ground Input
R/B
Ready/Busy output
VCC
Power
VSS
Ground
N.C
No Connection
44(40) TSOP (II)
NOTE : Connect all VCC and VSS pins of each device to common power supply outputs.
Do not leave VCC, VSS or GND inputs disconnected.
2
Pin Function
Data Inputs/Outputs
KM29W040AT, KM29W040AIT
FLASH MEMORY
Figure 1. FUNCTIONAL BLOCK DIAGRAM
X-Buffers
Latches
& Decoders
A7 - A18
4M Bit
NAND Flash ARRAY
32Byte x 4frame x 4096row
Y-Buffers
Latches
& Decoders
A 0 - A6
Page Register & S/A
Y-Gating
Command
Command
Register
I/O Buffers & Latches
Control Logic
& High Voltage
Generator
CE
RE
WE
I/O0
Global Buffers
I/O7
CLE ALE WP
Figure 2. ARRAY ORGANIZATION
Good Block
1Block(32Row)
(4K Byte)
The 1st Block (4KB)
4M : 4K Row
(=128 Blocks)
1
4
3
2
1 Frame = 32 Byte
1 Row = 4 Frames = 128 Bytes
1 Block = 32 rows = 4K Bytes
1 Device = 32B x 4frames x 32rows x 128blocks
= 4Mbits
8 bit
128Byte Column
I/O0 ~ I/O 7
Frame Register
32 Byte
I/O0
I/O1
I/O2
I/O3
I/O 4
I/O5
I/O6
I/O7
1st Cycle
A0
A1
A2
A3
A4
A5
A6
A7
2nd Cycle
A8
A9
A10
A11
A12
A13
A14
A15
3rd Cycle
A16
A17
A18
X*
X*
X*
*X
*X
(1)
NOTE : *(1) : X can be VIL or V IH
3
Column Address (A0-A4)
Frame Address (A5-A6)
Row Address (A7-A11)
Block Address (A12-A18)
KM29W040AT, KM29W040AIT
FLASH MEMORY
PRODUCT INTRODUCTION
The KM29W040A is a 4M bit memory organized as 4096 rows by 1024 columns. A 256-bit data register is connected to memory cell
arrays accommodating data transfer between the registers and the cell array during frame read and frame program operations. The
memory array is composed of unit NAND structures in which 8 cells are connected serially.
Each of the 8 cells reside in a different row. A block consists of the 32 rows, totaling 4096 unit NAND structures of 8bits each. The
array organization is shown in Figure 2. The program and read operations are executed on a frame basis, while the erase operation
is executed on a block basis. The memory array consists of 128 separately erasable 4K-byte blocks.
The KM29W040A has addresses multiplexed into 8 I/O pins. This scheme not only reduces pin count but allows systems upgrades
to higher density flash memories by maintaining consistency in system board design. Command, address and data are all written
through I/O′s by bringing WE to low while CE is low. Data is latched on the rising edge of WE. Command Latch Enable(CLE) and
Address Latch Enable(ALE) are used to multiplex command and address respectively, via the I/O pins. All commands require one
bus cycle except for Block Erase command which requires two cycles. For byte-level addressing, the 512K byte physical space
requires a 19-bit address, low row address and high row address. Frame Read and frame Program require the same three address
cycles following by a command input. In the Block Erase operation, however, only the two row address cycles are required.
Device operations are selected by writing specific commands into the command register. Table 1 defines the specific commands of
the KM29W040A.
Table 1. COMMAND SETS
Function
1st. Cycle
2nd. Cycle
Read
00h
-
Reset
FFh
-
Frame Program
80h
10h
Block Erase
60h
D0h
Status read
70h
-
Read ID
90h
-
4
Acceptable Command during Busy
O
O
KM29W040AT, KM29W040AIT
FLASH MEMORY
PIN DESCRIPTION
Command Latch Enable(CLE)
The CLE input controls the path activation for commands sent to the command register. When active high, commands are latched
into the command register through the I/O ports on the rising edge of the WE signal.
Address Latch Enable(ALE)
The ALE input controls the path activation for address and input data to the internal address/data register. Addresses are latched on
the rising edge of WE with ALE high, and input data is latched when ALE is low.
Chip Enable(CE)
The CE input is the device selection control. When CE goes high during a read operation the device is returned to standby mode.
However, when the device is in the busy state during program or erase, CE high is ignored, and does not return the device to
standby mode.
Write Enable(WE)
The WE input controls writes to the I/O port. Commands, address and data are latched on the rising edge of the WE pulse.
Read Enable(RE)
The RE input is the serial data-out control, and when active drives the data onto the I/O bus. Data is valid tREA after the falling edge
of RE which also increments the internal column address counter by one.
I/O Port : I/O0 ~ I/O7
The I/O pins are used to input command, address and data, and to output data during read operations. The I/O pins float to high-z
when the chip is deselected or when the outputs are disabled.
Write Protect(WP)
The WP pin provides inadvertent write/erase protection during power transitions. The internal high voltage generator is reset when
the WP pin is active low.
Ready/Busy(R/B)
The R/B output indicates the status of the device operation. When low, it indicates that a program, erase or random read operation is
in process and returns to high state upon completion. It is an open drain output and does not float to high-z condition when the chip
is deselected or when outputs are disabled.
5
KM29W040AT, KM29W040AIT
FLASH MEMORY
ABSOLUTE MAXIMUM RATINGS
Parameter
Symbol
Rating
Unit
VIN
-0.6 to +7.0
V
Voltage on any pin relative to V SS
Temperature Under Bias
KM29W040AT
-10 to +125
TBIAS
KM29W040AIT
°C
-40 to +125
Storage Temperature
Short Circuit Output Current
TSTG
-65 to +150
°C
IOS
5
mA
NOTE :
1. Minimum DC voltage is -0.3V on input/output pins. During transitions, this level may undershoot to -2.0V for periods <20ns.
Maximum DC voltage on input/output pins is VCC+0.3V which, during transitions, may overshoot to VCC+2.0V for periods <20ns.
2. Permanent device damage may occur if ABSOLUTE MAXIMUM RATINGS are exceeded. Functional operation should be restricted to the conditions
as detailed in the operational sections of this data sheet. Exposure to absolute maximum rating conditions for extended periods may affect reliability.
RECOMMENDED OPERATING CONDITIONS
(Voltage reference to GND, KM29W040AT :TA=0 to 70°C, KM29W040AIT :TA=-40 to 85°C)
Symbol
Min
Typ.
Max
Unit
Supply Voltage
Parameter
VCC
3.0
-
5.5
V
Supply Voltage
VSS
0
0
0
V
DC AND OPERATING CHARACTERISTICS(Recommended operating conditions otherwise noted.)
Parameter
Operating
Current
Vcc = 3.0V ~ 3.6V
Symbol
Test Conditions
Burst Read Cycle
ICC1
tcycle=120ns,CE=VIL, IOUT=0mA
-
5
Program
ICC2
-
-
5
Erase
ICC3
-
-
5
Min
Typ
Max
Vcc = 3.6V ~ 5.5V
Min
Typ
Max
10
-
10
20
10
-
10
20
10
-
10
20
Stand-by Current(TTL)
ISB1
CE=VIH, WP=0V/VCC
-
-
1
-
-
1
Stand-by Current(CMOS)
ISB2
CE=VCC-0.2, WP=0V/VCC
-
10
50
-
10
50
Input Leakage Current
ILI
VIN=0 to 5.5V
-
-
±10
-
-
±10
Output Leakage Current
ILO
VOUT=0 to 5.5V
-
-
±10
-
-
±10
Input High Voltage, All
inputs
VIH
-
2.4
-
2.4
-
Input Low Voltage, All inputs
VIL
-
-0.3
-
0.6
-0.3
-
Output High Voltage Level
VOH
IOH=-400µA
2.4
-
-
2.4
-
-
Output Low Voltage Level
VOL
IOL=2.1mA
-
-
0.4
-
-
0.4
Output Low Current(R/B)
IOL(R/B)
VOL=0.4V
8
10
-
8
10
-
6
VCC+
0.3
Unit
mA
µA
VCC+
0.5
0.8
V
mA
KM29W040AT, KM29W040AIT
FLASH MEMORY
VALID BLOCK
Parameter
Valid Block Number
Symbol
Min
Typ.
Max
Unit
NVB
125
-
128
Block
NOTE :
1. The KM29W040A may include invalid blocks. Invalid blocks are defined as blocks that contain one or more bad bits. Do not try to access these invalid
blocks for program and erase. During its lifetime of 10 years and/or 100K program/erase cycles,the minimum number of valid blocks are guaranteed
though its initial number could be reduced. (Refer to the attached technical notes)
2. The 1st block, which is placed on 00h block address, is guaranteed to be a valid block
AC TEST CONDITION
(KM29W040AT:TA=0 to 70°C, KM29W040AIT:TA=-40 to 85°C, VCC=3.0V ~ 5.5V unless otherwise noted)
Value
Parameter
Vcc=3.0V ~ 3.6V
Input Pulse Levels
Vcc=3.6V ~ 5.5V
0.4V to 2.6V
0.4V to 2.6V
Input Rise and Fall Times
5ns
Input and Output Timing Levels
0.8V and 2.0V
Output Load
1 TTL GATE and CL = 100pF
CAPACITANCE(TA=25°C, Vcc=5.0V, f=1.0MHz)
Symbol
Test Condition
Min
Max
Unit
Input / Output Capacitance
Item
CI/O
VIL=0V
-
10
pF
Input Capacitance
CIN
VIN=0V
-
10
pF
NOTE : Capacitance is periodically sampled and not 100% tested.
MODE SELECTION
CLE
ALE
CE
WE
RE
WP
H
L
L
H
X
L
H
L
H
X
Mode
Read Mode
Command Input
Address Input(3clock)
H
L
L
H
H
L
H
L
H
H
L
L
L
H
H
Data Input
L
L
L
H
X
Sequential Read & Data Output
Write Mode
L
L
L
H
H
X
During Read(Busy)
X
X
X
X
X
H
During Program(Busy)
X
X
X
X
X
H
During Erase(Busy)
X
X(1)
X
X
X
L
Write Protect
X
X
H
X
X
0V/V
CC(2)
Command Input
Address Input(3clock)
Stand-by
NOTE : 1. X can be VIL or VIH
2. WP should be biased to CMOS high or CMOS low for standby.
Program/Erase Characteristics
Parameter
Program Time
Symbol
Min
Typ
Max
Unit
tPROG
-
0.5
1
ms
Number of Partial Program Cycles in the Same Frame
Nop
-
-
10
cycles
Block Erase Time
tBERS
-
6
10
ms
7
KM29W040AT, KM29W040AIT
FLASH MEMORY
AC Timing Characteristics for Command / Address / Data Input
Parameter
Symbol
Min
Max
Unit
CLE Set-up Time
tCLS
50
-
ns
CLE Hold Time
tCLH
50
-
ns
CE Setup Time
tCS
50
-
ns
CE Hold Time
tCH
50
-
ns
WE Pulse Width
tWP
60
-
ns
ALE Setup Time
tALS
50
-
ns
ALE Hold Time
tALH
50
-
ns
Data Set-up Time
tDS
40
-
ns
Data Hold Time
tDH
20
-
ns
Write Cycle Time
tWC
120
-
ns
WE High Hold Time
tWH
40
-
ns
AC Characteristics for Operation
Parameter
Symbol
Min
Max
Unit
Data Transfer from Cell to Register
tR
-
15
µs
ALE to RE Delay
tAR
250
-
ns
CE low to RE low (ID read)
tCR
250
-
ns
Ready to RE Low
tRR
100
-
ns
RE Pulse Width
tRP
60
-
ns
WE High to Busy
tWB
-
200
ns
Read Cycle Time
tRC
120
-
ns
RE Access Time
tREA
-
50
ns
RE High to Output Hi-Z
tRHZ
0
30
ns
CE High to Output Hi-Z
tCHZ
-
50
ns
RE High Hold Time
tREH
40
-
ns
tIR
0
-
Output Hi-Z to RE Low
ns
tCRY
-
RE Low to Status Output
tRSTO
-
60
CE Low to Status Output
tCSTO
-
70
ns
WE High to RE Low
tWHR
50
-
ns
tWHRID
100
-
ns
tRST
-
5/10/500
µs
CE High to Ready(in case of interception by CE at read)
(1)
RE access time(Read ID)
Device Resetting Time(Read/Program/Erase)
NOTE : 1. If CE goes high within 50ns after the third address input, R/B will not return to VOL.
2. The time to Ready depends on the value of the pull-up resistor tied R/B pin.
8
100+tr(R/B)
(2)
ns
ns
KM29W040AT, KM29W040AIT
FLASH MEMORY
NAND Flash Technical Notes
Invalid Block(s)
Invalid blocks are defined as blocks that contain one or more invalid bits whose reliability is not guaranteed by Samsung. Typically,
an invalid block will contain a single bad bit. The information regarding the invalid block(s) is so called as the invalid block information. The invalid block information is written to the 1st or the 2nd page of the invalid block(s) with 00h data. Devices with invalid
block(s) have the same quality level or as devices with all valid blocks and have the same AC and DC characteristics. An invalid
block(s) does not affect the performance of valid block(s) because it is isolated from the bit line and the common source line by a
select transistor. The system design must be able to mask out the invalid block(s) via address mapping. The 1st block of the NAND
Flash, however, is fully guaranteed to be a valid block.
Identifying Invalid Block(s)
All device locations are erased(FFh) except locations where the invalid block information is written prior to shipping. Since the
invalid block information is also erasable in most cases, it is impossible to recover the information once it has been
erased. Therefore, the system must be able to recognize the invalid block(s) based on the original invalid block
information and create the invalid block table via the following suggested flow chart(Figure 1). Any intentional erasure of the original invalid block information is prohibited.
Start
Set Block Address = 0
Increment Block Address
Create (or update)
Invalid Block(s) Table
No
*
Check "FFH" on the 1st and 2nd page
Check "FFH" ?
Yes
No
Last Block ?
Yes
End
Figure 1. Flow chart to create invalid block table.
9
KM29W040AT, KM29W040AIT
FLASH MEMORY
KM29W040A Technical Notes(Continued)
Error in program or erase operation
The device may fail during a program or erase operation.
The following possible failure modes should be considered when implementing a highly reliable system.
Failure Mode
Detection and Countermeasure sequence
Block
Erase Failure
Read after Erase --> Block Replacement
Frame
Program Failure
Status Read after Program --> Block Replacement
Single Bit
Program Failure
("1" --> "0")
Block Verify after Program --> Block Replacement
Block Replacement
During Program operation ;
Buffer
memory
error occurs
Block A
When the error happens in Block "A", try to reprogram the
data into another Block "B" by reloading from an external
buffer. Then, prevent further system access to Block
"A"(by creating a "bad block" table or other appropriate
scheme.)
Block B
During Erase operation ;
When the error occurs after an erase operation, prevent future accesses to this bad block
(again by creating a table within the system or other appropriate scheme.)
10
KM29W040AT, KM29W040AIT
FLASH MEMORY
System Interface Using CE don’t-care.
For a easier system interface, CE may be inactive during the data-loading or sequential data-reading as shown below. The internal
32byte page registers are utilized as seperate buffers for this operation and the system design gets more flexible. In addition, for
voice or audio applications which use slow cycle time on the order of u-seconds, de-activating CE during the data-loading and reading would provide significant savings in power consumption.
Figure 3. Program Operation with CE don’t-care.
CLE
CE don’t-care
≈
≈
CE
WE
ALE
I/O0~7
80H
Start Add.(3Cycle)
Data Input
Data Input
10H
(Max. 60ns)
tCS
tCH
tCEA
CE
CE
tREA
RE
tWP
WE
I/O0~7
out
Timing requirements : If CE is is exerted high during sequential
data-reading, the falling edge of CE to valid data(tCEA) must
be kept greater than 60ns.
Figure 4. Read Operation with CE don’t-care.
CLE
CE don’t-care
≈
CE
RE
ALE
tR
R/B
WE
I/O0~7
00H
Data Output(sequential)
Start Add.(3Cycle)
11
KM29W040AT, KM29W040AIT
FLASH MEMORY
* Command Latch Cycle
CLE
tCLS
tCLH
tCS
tCH
CE
tWP
WE
tALS
tALH
ALE
tDH
tDS
Command
I/O0~7
* Address Latch Cycle
tCLS
CLE
tWC
tCS
tWC
CE
tWP
tWP
tWP
WE
tWH
tWH
tALH
tALS
ALE
tDS
I/O0~7
tDH
A0~A7
12
tDS
tDH
A8~A15
tDS
tDH
A16~A18
KM29W040AT, KM29W040AIT
FLASH MEMORY
* Input Data Latch Cycle
tCLH
CLE
tCH
CE
tWC
tALS
tWP
≈
ALE
tWP
tWP
WE
tDS
I/O0~7
tWH
tDH
tDS
tDH
tDS
DIN 31
DIN 1
DIN 0
tDH
* Burst Read Cycle After Frame Access(CLE=L, WE=H, ALE=L)
tRC
CE
tRHZ*
tREA
tREH
tREA
≈
tRP
tREA
RE
tRHZ*
Dout
I/O0~7
Dout
≈
tRHZ
Dout
tRR
R/B
NOTES : Transition is measured±200mV from steady state voltage with load.
This parameter is sampled and not 100% tested.
13
KM29W040AT, KM29W040AIT
FLASH MEMORY
* Status Read Cycle
tCLS
CLE
tCLH
tREA
CE
tCH
tWP
WE
tCSTO
tCHZ
tWHR
RE
tDH
tDS
tIR
Status Output
70H
I/O0~7
tRHZ
tRSTO
READ OPERATION(READ ONE FRAME)
CLE
CE
WE
tCHZ
tWB
tAR
ALE
tR
tRHZ
tRC
≈
RE
I/O0~7
00h
A 0 ~ A7
Column
Address
R/B
A8 ~ A15
A16 ~ A18
Dout N
Row
Address
Busy
14
Dout N+1
Dout N+2
Dout N+3
≈ ≈
tRR
Dout 32
KM29W040AT, KM29W040AIT
FLASH MEMORY
READ OPERATION(INTERCEPTED BY CE)
CLE
CE
WE
tWB
tCHZ
tAR
ALE
tR
RE
tRR
I/O0~7
00h
A0~A7
Column
Address
A8 ~A15
A16~A18
Dout N
Dout N+1
Dout N+2
Dout N+3
Row
Address
Busy
R/B
PROGRAM OPERATION
CLE
CE
tWC
tWC
≈
tWC
WE
tWB
tPROG
ALE
80H
A0 ~ A7 A8 ~ A15 A16 ~ A18
Sequential Data Column
Input Command Address
Row
Address
Din
Din
N
N+1
1 up to 32 Byte Data
Serial Input
10H
15
70H
I/O0
Read Status
Command
Program
Command
≈
R/B
Din
31
≈
I/O0~7
≈ ≈
RE
I/O0 =0 Successful Program
I/O0 =1 Error in Program
KM29W040AT, KM29W040AIT
FLASH MEMORY
BLOCK ERASE OPERATION
CLE
CE
WE
tWB
tBERS
ALE
RE
I/O0~7
60H
A8 ~A15
A16~A18
DOH
Busy
R/B
Auto Block Erase Setup Command
Erase Command
16
≈
Block
Address
KM29W040AT, KM29W040AIT
FLASH MEMORY
DEVICE OPERATION
FRAME READ
Upon initial device power up or after excution of Reset(FFh) command, the device defaults to Read mode. This operation is also initiated by writing 00H to the command register along with three address cycles. The three cycle address input must be given for
access to each new frame.
The read mode is enabled when the frame address is changed. 32 bytes of data within the selected frame are transferred to the data
registers in less than 15µs(tR). The CPU can detect the completion of this data transfer(t R) by analyzing the output of R/B pin. Once
the data in a frame is loaded into the registers, they may be read out in 120ns cycle time by sequentially pulsing RE with CE staying
low. High to low transitions of the RE clock output the data starting from the selected column address up to the last column address
within the frame(column 32).
Figure 3. Read Operation
CLE
CE
WE
ALE
RE
R/B
I/O0~7
Busy(Seek Time)
00H
Data Output(Sequential)
Start Add.(3Cycle)
A0 ~A7 & A8~A18
Seek Time
0
31
17
KM29W040AT, KM29W040AIT
FLASH MEMORY
FRAME PROGRAM
The device is programmed on a frame basis. The addressing may be done in random order in a block. A frame program cycle consist
of a serial data loading period in which up to 32 bytes of data must be loaded into the device, and a nonvolatile programming period
in which the loaded data is programmed into the appropriate cells.
The sequential data loading period begins by inputting the frame program setup command(80H), followed by the three cycle address
input and then sequential data loading. The bytes other than those to be programmed do not need to be loaded.
The frame Program confirm command(10H) initiates the programming process. Writing 10H alone without previously entering the
serial data will not initiate the programming process. The internal write controller automatically executes the algorithms and timings
necessary for program and verify, thereby freeing the CPU for other tasks. The CPU can detect the completion of a program cycle by
monitoring the R/B output, or the Status bit(I/O6) of the Status Register. Only the Read Status command and Reset command are
valid while programming is in progress. When the frame Program is complete, the Write Status Bit(I/O0) may be checked. The internal write verify detects only errors for "1"s that are not successfully programmed to "0"s. The command register remains in Read Status command mode until another valid command is written to the command register.
Figure 4. Frame Program Operation
tPROG
R/B
I/O0~7
80H
Address & Data Input
10H
A0~A7 & A 8~A18
32 Byte Data
FRAME PROGRAM
While the frame size of the device is 32 Bytes, not all the bytes in a frame have to be programmed at once. The device supports partial frame programming in which a frame may be partially programmed up to 10 separate program operations. The program size in
each of the 10 partial program operations is freely determined by the user and do not have to be equal to each other or to any preset
size. However, the user should ensure that the partial program units within a frame do not overlap as "0" data cannot be changed to
"1" data without an erase operation. To perform a partial frame program operation, the user only writes the partial frame data that is
to programmed. Just as in the standard frame program operation, an 80H command is followed by start address data. However, only
the partial program data need be divided when programming a frame in 10 partial program operations.
Figure 5. Example of Dividing a Frame into 10 Partial Program Units
1st partial program start address (00h)
2nd partial program start address (04h)
3rd partial program start address (06h)
:
:
:
:
:
:
9th partial program start address (18h)
10th partial program start address (1Fh)
FA
A2
43
CB
81
28
E0
2A
D5
- - - - - - 32
B5
7D
6F
AA
E1
D7
C0
Single
Frame
10th partial frame program data
9th partial frame program data
:
:
:
:
:
:
3rd partial frame program data
2nd partial frame program data
1st partial frame program data
18
KM29W040AT, KM29W040AIT
FLASH MEMORY
BLOCK ERASE
The Erase operation is done 4K Bytes(1 block) at a time. Block address loading is accomplished in two cycles initiated by an Erase
Setup command(60H). Only address A12 to A18 are valid while A8 to A11 is ignored. The Erase Confirm command(D0H) following the
block address loading initiates the internal erasing process. This two-step sequence of setup followed by execution command
ensures that memory contents are not accidentally erased due to external noise conditions.
At the rising edge of WE after the erase confirm command input, the internal write controller handles erase, erase-verify and pulse
repetition where required.
Figure 6. Block Erase Operation
tBERS
R/B
I/O0~7
60H
Address Input(2Cycle)
D0H
Block Add. : A 8~A18
READ STATUS
The device contains a Status Register which may be read to find out whether program or erase operation is complete, and whether
the program or erase operation completed successfully. After writing 70H command to the command register, a read cycle outputs
the contents of the Status Register to the I/O pins on the falling edge of CE or RE, whichever occurs last. This two line control allows
the system to poll the progress of each device in multiple memory connections even when R/B pins are common-wired. RE or CE
does not need to be toggled for updated status. Refer to table 2 for specific Status Register definitions. The command register
remains in Status Read mode until further commands are issued to it. Therefore, if the status register is read during a random read
cycle, the required read command(00H) should be input before serial page read cycle.
Table2. Status Register Definition
SR
I/O0
Status
Definition
"0" : Successful Program
Program
"1" : Error in Program
I/O1
"0"
I/O2
"0"
I/O3
"0"
Reserved for Future Use
I/O4
"0"
"0"
I/O5
"0"
I/O6
Device Operation
I/O 7
Write Protect
19
"0" : Busy
"1" : Ready
"0" : Protected
"1" : Not Protected
KM29W040AT, KM29W040AIT
FLASH MEMORY
RESET
The device offers a reset feature, executed by writing FFH to the command register. When the device is in Busy state during the
read, program or erase mode, the reset operation will abort these operation. In the case of Reset during Program or Erase operations, the contents of memory cells being altered are no longer valid, as the data will be partially programmed or erased. The device
enters the Read mode after completion of Reset operation as shown Table 3. If the device is already in reset state a new reset command will not be accepted to by the command register. The R/B pin transitions to low for t RST after the Reset command is written.
Reset command is not necessarily for normal device operation. Refer to Figure 7 below.
Figure 7. RESET Operation
tRST
R/B
I/O0~7
FFH
Table3. Device Status
Operation Mode
After Power-up
After Reset
Read
Read
READY/BUSY
The device has a R/B output that provides a hardware method of indicating the completion of a frame program, erase or read seek
completion. The R/B pin is normally high but transitions to low after program or erase command is written to the command register or
a random read is begin after address loading. It returns to high when the internal controller has finished the operation. The pin is an
open-drain driver thereby allowing two or more R/B outputs to be Or-tied. An appropriate pull-up resister is required for proper operation and the value may be calculated by following equation.
VCC
VCC(Max.) - VOL(Max.)
Rp =
IOL + ΣIL
Note*
=
8mA + ΣIL
R/B
open drain output
where IL is the sum of the input currents of all devices tied to the
R/B pin.
Note* KM29W040A ; 5.1V when Vcc=3.6V~5.5V
3.2V when Vcc=3.0V~3.6V
GND
Device
20
KM29W040AT, KM29W040AIT
FLASH MEMORY
DATA PROTECTTION
The device is designed to offer protection from any involuntary program/erase during power-transitions. An internal voltage detector
disables all functions whenever Vcc is below about 2V. WP pin provides hardware protection and is recommended to be kept at VIL
during power-up and power-down as shown in Figure 8. The two step command sequence for program/erase provides additional
software protection.
≈
Figure 8. AC Waveforms for Power Transition
~ 2.5V
~ 2.5V
VCC
≈
High
WP
READ ID
The device contains a product identification mode, initiated by writing 90H to the command register, followed by an address input of
00H. Two read cycles sequentially output the manufacture code(ECH), and the device code (A4H). The command register remains
in Read ID mode until further commands are issued to it. Figure 9 shows the operation sequence.
Figure 9. Read ID Operation
CLE
tCR
CE
tWHRID
WE
tAR
ALE
RE
I/O0~7
tREA
90H
Add. Input(1Cycle)
A0 ~A7 :"0"
21
Dout(ECH)
Dout(A4H)
Maker code
Device code
KM29W040AT, KM29W040AIT
FLASH MEMORY
PACKAGE DIMENSIONS
44(40) LEAD PLASTIC THIN SMALL OUT-LINE PACKAGE TYPE(II)
44(40) - TSOP2 - 400F
Unit :mm/Inch
0~8°
0.25
0.010 TYP
#23(21)
#1
10.16
0.400
11.76±0.20
0.463±0.008
0.45~0.75
0.018~0.030
#44(40)
0.50
0.020
#22(20)
+0.10
0.15 -0.05
+0.004
1.00±0.10
0.039±0.004
18.81
Max.
0.741
18.41±0.10
0.725 ±0.004
1.20
Max.
0.047
0.006 -0.002
(
0.805
)
0.032
0.35±0.10
0.014±0.004
0.05
Min.
0.002
0.10
MAX
0.004
0.80
0.0315
22