FLASH MEMORY
K9K1G08U0M
Document Title
128M x 8 Bit NAND Flash Memory
Revision History
History
Draft Date
0.0
0.1
1. Initial issue
1.[Page 31] device code (76h) --> device code (79h)
Apr. 7th 2001
Jul. 3rd 2001
0.2
1.Powerup sequence is added
: Recovery time of minimum 1µs is required before internal circuit gets
ready for any command sequences
Jul. 23th 2001
Remark
≈
Revision No
2.5V
2.5V
High
≈
VCC
WE
1µ
≈
WP
2. AC parameter tCLR(CLE to RE Delay, min 50ns) is added.
3. [Page28] Only address A14 to A25 is valid while A9 to A13 is ignored
--> Only address A14 to A26 is valid while A9 to A13 is ignored
0.3
0.4
0.5
(page 30)
Sep. 13th 2001
A14 and A15 must be the same between source and target page
--> A14 , A15 and A26 must be the same between source and target page
New definition of the number of invalid blocks is added.
(Minimum 1004 valid blocks are guaranteed for each contiguous 128Mb
memory space.)
Note is added.
(VIL can undershoot to -0.4V and VIH can overshoot to VCC +0.4V for
durations of 20 ns or less.)
Apr. 4th 2003
Jun. 4th 2003
Note : For more detailed features and specifications including FAQ, please refer to Samsung’s Flash web site.
http://www.samsung.com/Products/Semiconductor/Flash/TechnicalInfo/datasheets.htm
The attached data sheets 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 your office.
1
FLASH MEMORY
K9K1G08U0M
128M x 8 Bit NAND Flash Memory
FEATURES
GENERAL DESCRIPTION
• Voltage Supply : 2.7V~3.6V
• Organization
- Memory Cell Array : (128M + 4,096K)bit x 8bit
- Data Register : (512 + 16)bit x8bit multipled by eight planes
• Automatic Program and Erase
- Page Program : (512 + 16)Byte
- Block Erase : (16K + 512)Byte
• 528-Byte Page Read Operation
- Random Access : 12µs(Max.)
- Serial Page Access : 50ns(Min.)
• Fast Write Cycle Time
- Program time : 200µs(Typ.)
- Block Erase Time : 2ms(Typ.)
• Command/Address/Data Multiplexed I/O Port
• Hardware Data Protection
- Program/Erase Lockout During Power Transitions
• Reliable CMOS Floating-Gate Technology
- Endurance : 100K Program/Erase Cycles
- Data Retention : 10 Years
• Command Register Operation
• Intelligent Copy-Back Operation
• Package :
- K9K1G08U0M-YCB0, K9K1G08U0M-YIB0 :
48 - Pin TSOP I (12 x 20 / 0.5 mm pitch)
• Simultaneous Four Page/Block Program/Erase
The K9K1G08U0M is a 128M(134,217,728)x8bit NAND Flash
Memory with a spare 4.096K(4,194,304)x8bit. Its NAND cell
provides the most cost-effective solution for the solid state
mass storage market. A program operation can be performed
in typical 200µs on the 528-byte page and an erase operation
can be performed in typical 2ms on a 16K-byte block. Data in
the page can be read out at 50ns cycle time per byte. The I/O
pins serve as the ports for address and data input/output as
well as command inputs. The on-chip write controller automates all program and erase functions including pulse repetition, where required, and internal verification and margining of
data. Even the write-intensive systems can take advantage of
the K9K1G08U0M’s extended reliability of 100K program/erase
cycles by providing ECC(Error Correcting Code) with real time
mapping-out algorithm. The K9K1G08U0M-YCB0/YIB0 is an
optimum solution for large nonvolatile storage applications such
as solid state file storage and other portable applications requiring non-volatility.
PIN CONFIGURATION
PIN DESCRIPTION
Pin Name
N.C
N.C
N.C
N.C
N.C
N.C
R/B
RE
CE
N.C
N.C
Vcc
Vss
N.C
N.C
CLE
ALE
WE
WP
N.C
N.C
N.C
N.C
N.C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
48-pin TSOP1
Standard Type
12mm x 20mm
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
N.C
N.C
N.C
N.C
I/O7
I/O6
I/O5
I/O4
N.C
N.C
N.C
Vcc
Vss
N.C
N.C
N.C
I/O3
I/O2
I/O1
I/O0
N.C
N.C
N.C
N.C
I/O0 ~ I/O7
CLE
Command Latch Enable
ALE
Address Latch Enable
CE
Chip Enable
RE
Read Enable
WE
Write Enable
WP
Write Protect
R/B
Ready/Busy output
VCC
Power(+2.7V~3.6V)
VSS
Ground
N.C
No Connection
NOTE : Connect all VCC and VSS pins of each device to common power supply outputs.
Do not leave VCC or VSS disconnected.
2
Pin Function
Data Input/Outputs
FLASH MEMORY
K9K1G08U0M
Figure 1. Functional Block Diagram
VCC
VSS
A9 - A26
X-Buffers
Latches
& Decoders
A0 - A 7
Y-Buffers
Latches
& Decoders
1,024M + 32M Bit
NAND Flash
ARRAY
(512 + 16)Byte x 262,144
Page Register & S/A
A8
Y-Gating
Command
Command
Register
CE
RE
WE
VCC
VSS
I/O Buffers & Latches
Control Logic
& High Voltage
Generator
Output
Driver
Global Buffers
I/0 0
I/0 7
CLE ALE WP
Figure 2. Array Organization
1 Block = 32 Pages
(16K + 512) Byte
256K Pages
(=8,192 Blocks)
1st half Page Register
2nd half Page Register
(=256 Bytes)
(=256 Bytes)
1 Page = 528 Bytes
1 Block = 528 B x 32 Pages
= (16K + 512) Bytes
1 Device = 528B x 32Pages x 8,192 Blocks
= 1,056 Mbits
8 bit
512B Bytes
16 Bytes
I/O 0 ~ I/O 7
Page Register
512 Bytes
16 Bytes
I/O 0
I/O 1
I/O 2
I/O 3
I/O 4
I/O 5
I/O 6
I/O 7
1st Cycle
A0
A1
A2
A3
A4
A5
A6
A7
2nd Cycle
A9
A10
A11
A12
A13
A14
A15
A16
3rd Cycle
A17
A18
A19
A20
A21
A22
A23
A24
4th Cycle
A25
A26
*L
*L
*L
*L
*L
*L
NOTE : Column Address : Starting Address of the Register.
00h Command(Read) : Defines the starting address of the 1st half of the register.
01h Command(Read) : Defines the starting address of the 2nd half of the register.
* A8 is set to "Low" or "High" by the 00h or 01h Command.
* L must be set to "Low".
* The device ignores any additional input of address cycles than reguired.
3
Column Address
Row Address
(Page Address)
FLASH MEMORY
K9K1G08U0M
Product Introduction
The K9K1G08U0M is a 1,026Mbit(1,107,296,436 bit) memory organized as 262,144 rows(pages) by 528 columns. Spare sixteen columns are located from column address of 512 to 527. A 528-byte data register is connected to memory cell arrays accommodating
data transfer between the I/O buffers and memory during page read and page program operations. The memory array is made up of
16 cells that are serially connected to form a NAND structure. Each of the 16 cells resides in a different page. A block consists of two
NAND structured strings. A NAND structure consists of 16 cells. Total 135168 NAND cells reside in a block. The array organization is
shown in Figure 2. The program and read operations are executed on a page basis, while the erase operation is executed on a block
basis. The memory array consists of 8,192 separately erasable 16K-byte blocks. It indicates that the bit by bit erase operation is prohibited on the K9K1G08U0M.
The K9K1G08U0M has addresses multiplexed into 8 I/O's. This scheme dramatically reduces pin counts and allows systems
upgrades to future densities 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. The 128M byte physical space
requires 27 addresses, thereby requiring four cycles for byte-level addressing: column address, low row address and high row
address, in that order. Page Read and Page Program need the same four address cycles following the required command input. In
Block Erase operation, however, only the three row address cycles are used. Device operations are selected by writing specific commands into the command register. Table 1 defines the specific commands of the K9K1G08U0M.
The device provides simultaneous program/erase capability up to four pages/blocks. By dividing the memory array into eight 128Mbit
separate planes, simultaneous multi-plane operation dramatically increases program/erase performance by 4X while still maintaining
the conventional 512 byte structure.
The extended pass/fail status for multi-plane program/erase allows system software to quickly identify the failing page/block out of
selected multiple pages/blocks. Usage of multi-plane operations will be described further throughout this document.
In addition to the enhanced architecture and interface, the device incorporates copy-back program feature from one page to another
of the same plane without the need for transporting the data to and from the external buffer memory. Since the time-consuming burstreading and data-input cycles are removed, system performance for solid-state disk application is significantly increased.
Table 1. Command Sets
Function
1st. Cycle
2nd. Cycle
3rd. Cycle
Read 1
00h/01h(1)
-
-
Read 2
50h
-
-
Read ID
90h
-
-
Reset
FFh
-
-
Page Program (True)
(2)
Page Program (Dummy)(2)
Copy-Back Program(True)(2)
Copy-Back Program(Dummy)
Block Erase
Multi-Plane Block Erase
Read Status
Read Multi-Plane Status
(2)
Acceptable Command
during Busy
O
80h
10h
-
80h
11h
-
00h
8Ah
10h
03h
8Ah
11h
60h
D0h
-
60h----60h
D0h
-
70h
-
-
O
-
-
O
71h
(3)
NOTE : 1. The 00h command defines starting address of the 1st half of registers.
The 01h command defines starting address of the 2nd half of registers.
After data access on the 2nd half of register by the 01h command, the status pointer is
automatically moved to the 1st half register(00h) on the next cycle.
2. Page Program(True) and Copy-Back Program(True) are available on 1 plane operation.
Page Program(Dummy) and Copy-Back Program(Dummy) are available on the 2nd,3rd,4th plane of multi plane operation.
3. The 71h command should be used for read status of Multi Plane operation.
Caution : Any undefined command inputs are prohibited except for above command set of Table 1.
4
FLASH MEMORY
K9K1G08U0M
Memory Map
The device is arranged in eight 128Mbit memory planes. Each plane contains 1,024 blocks and 528 byte page registers. This allows
it to perform simultaneous page program and block erase by selecting one page or block from each plane. The block address map is
configured so that multi-plane program/erase operations can be executed for every four sequential blocks by dividing the memory
array into plane 0~3 or plane 4~7 separately. For example, multi-plane program/erase operations into plane 2,3,4 and 5 are prohibited.
Figure 3. Memory Array Map
Plane 0
(1024 Block)
Block 0
Plane 2
(1024 Block)
Plane 1
(1024 Block)
Block 2
Block 1
Plane 3
(1024 Block)
Block 3
Page 0
Page 0
Page 0
Page 0
Page 1
Page 1
Page 1
Page 1
Page 30
Page 30
Page 31
Page 30
Page 30
Page 31
Page 31
Page 31
Block 4092
Block 4094
Block 4093
Block 4095
Page 0
Page 0
Page 0
Page 0
Page 1
Page 1
Page 1
Page 1
Page 30
Page 31
Page 30
Page 31
Page 30
Page 31
Page 30
Page 31
528byte Page Registers
528byte Page Registers
528byte Page Registers
528byte Page Registers
Plane 4
(1024 Block)
Plane 5
(1024 Block)
Plane 6
(1024 Block)
Plane 7
(1024 Block)
Block 4096
Block 4098
Block 4097
Block 4099
Page 0
Page 0
Page 0
Page 0
Page 1
Page 1
Page 1
Page 1
Page 30
Page 31
Page 30
Page 30
Page 31
Page 30
Page 31
Block 8188
Page 31
Block 8190
Block 8189
Block 8191
Page 0
Page 0
Page 0
Page 0
Page 1
Page 1
Page 1
Page 1
Page 30
Page 30
Page 31
Page 30
Page 30
Page 31
Page 31
Page 31
528byte Page Registers
528byte Page Registers
528byte Page Registers
528byte Page Registers
5
FLASH MEMORY
K9K1G08U0M
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 activating path for address to the internal address registers. Addresses are latched on the rising edge of
WE with ALE high.
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.
The WE must be held high when outputs are activated.
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/O 0 ~ I/O 7
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.
6
FLASH MEMORY
K9K1G08U0M
Absolute Maximum Ratings
Parameter
Voltage on any pin relative to VSS
Temperature Under Bias
K9K1G08U0M-YCB0
Symbol
Rating
VIN
-0.6 to + 4.6
VCC
-0.6 to + 4.6
V
-10 to +125
TBIAS
K9K1G08U0M-YIB0
Storage Temperature
Unit
°C
-40 to +125
TSTG
°C
-65 to +150
NOTE :
1. Minimum DC voltage is -0.6V on input/output pins. During transitions, this level may undershoot to -2.0V for periods Block Replacement
Read back ( Verify after Program) --> Block Replacement
or ECC Correction
Single Bit Failure
Verify ECC -> ECC Correction
: Error Correcting Code --> Hamming Code etc.
Example) 1bit correction & 2bit detection
Program Flow Chart
If ECC is used, this verification
operation is not needed.
Start
Write 00h
Write 80h
Write Address
Write Address
Wait for tR Time
Write Data
Write 10h
Verify Data
Read Status Register
No
*
Program Error
Yes
Program Completed
I/O 6 = 1 ?
or R/B = 1 ?
*
Program Error
Yes
No
No
*
I/O 0 = 0 ?
Yes
11
: If program operation results in an error, map out
the block including the page in error and copy the
target data to another block.
FLASH MEMORY
K9K1G08U0M
NAND Flash Technical Notes (Continued)
Erase Flow Chart
Read Flow Chart
Start
Start
Write 60h
Write 00h
Write Block Address
Write Address
Write D0h
Read Data
Read Status Register
ECC Generation
No
I/O 6 = 1 ?
or R/B = 1 ?
Reclaim the Error
No
Verify ECC
Yes
Yes
*
No
Erase Error
Page Read Completed
I/O 0 = 0 ?
Yes
Erase Completed
*
: If erase operation results in an error, map out
the failing block and replace it with another block.
Block Replacement
1st
∼
(n-1)th
{
nth
Block A
2
an error occurs.
(page)
1st
∼
(n-1)th
nth
Buffer memory of the controller.
{
Block B
1
(page)
* Step1
When an error happens in the nth page of the Block ’A’during erase or program operation.
* Step2
Copy the nth page data of the Block ’A’in the buffer memory to the nth page of another free block. (Block ’B’)
* Step3
Then, copy the data in the 1st ~ (n-1)th page to the same location of the Block ’B’.
* Step4
Do not erase or program to Block ’A’by creating an ’invalid Block’table or other appropriate scheme.
12
FLASH MEMORY
K9K1G08U0M
Pointer Operation
Samsung NAND Flash has three address pointer commands as a substitute for the two most significant column addresses. ’00h’
command sets the pointer to ’A’area(0~255byte), ’01h’command sets the pointer to ’B’area(256~511byte), and ’50h’command sets
the pointer to ’C’ area(512~527byte). With these commands, the starting column address can be set to any of a whole
page(0~527byte). ’00h’or ’50h’is sustained until another address pointer command is inputted. ’01h’command, however, is effective
only for one operation. After any operation of Read, Program, Erase, Reset, Power_Up is executed once with ’01h’ command, the
address pointer returns to ’A’ area by itself. To program data starting from ’A’ or ’C’ area, ’00h’ or ’50h’ command must be inputted
before ’80h’command is written. A complete read operation prior to ’80h’command is not necessary. To program data starting from
’B’area, ’01h’command must be inputted right before ’80h’command is written.
Table 2. Destination of the pointer
Command
Pointer position
Area
"A" area
(00h plane)
"B" area
(01h plane)
00h
01h
50h
0 ~ 255 byte
256 ~ 511 byte
512 ~ 527 byte
1st half array(A)
2nd half array(B)
spare array(C)
256 Byte
256 Byte
"A"
"B"
"C" area
(50h plane)
16 Byte
"C"
Internal
Page Register
Pointer select
commnad
(00h, 01h, 50h)
Pointer
Figure 5 Block Diagram of Pointer Operation
(1) Command input sequence for programming ’A’ area
The address pointer is set to ’A’area(0~255), and sustained
Address / Data input
00h
80h
Address / Data input
10h
00h
’A’,’B’,’C’area can be programmed.
It depends on how many data are inputted.
80h
10h
’00h’command can be omitted.
(2) Command input sequence for programming ’B’ area
The address pointer is set to ’B’area(256~512), and will be reset to
’A’area after every program operation is executed.
Address / Data input
01h
80h
Address / Data input
10h
01h
’B’, ’C’area can be programmed.
It depends on how many data are inputted.
80h
10h
’01h’command must be rewritten before
every program operation
(3) Command input sequence for programming ’C’ area
The address pointer is set to ’C’area(512~527), and sustained
Address / Data input
50h
80h
Address / Data input
10h
50h
Only ’C’area can be programmed.
80h
’50h’command can be omitted.
13
10h
FLASH MEMORY
K9K1G08U0M
System Interface Using CE don’t-care.
For an easier system interface, CE may be inactive during the data-loading or sequential data-reading as shown below. The internal
528byte page registers are utilized as separate 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 6. Program Operation with CE don’t-care.
CLE
CE don’t-care
WE
≈
≈
CE
ALE
I/O0~7
80h
Start Add.(4Cycle)
tCS
Data Input
tCH
Data Input
10h
tCEA
CE
CE
tREA
RE
tWP
WE
I/O0~7
out
Figure 7. Read Operation with CE don’t-care.
CLE
CE don’t-care
Must be held
low during tR.
≈
CE
RE
ALE
tR
R/B
WE
I/O0~7
00h
Data Output(sequential)
Start Add.(4Cycle)
14
FLASH MEMORY
K9K1G08U0M
Command Latch Cycle
CLE
tCLS
tCLH
tCS
tCH
CE
tWP
WE
tALH
tALS
ALE
tDH
tDS
Command
I/O0~7
Address Latch Cycle
tCLS
CLE
tWC
tCS
tWC
tWC
CE
tWP
tWP
tWP
tWP
WE
tWH
tALH tALS
tWH
tALH tALS
tALS
tWH
tALH tALS
tALH
ALE
tDS
I/O0~7
tDH
A0~A7
tDS
tDH
A9~A16
15
tDS
tDH
A17~A24
tDS
tDH
A25,,A26
FLASH MEMORY
K9K1G08U0M
Input Data Latch Cycle
tCLH
CLE
tCH
CE
tWC
tALS
tWP
≈
ALE
tWP
tWP
WE
tWH
tDH
tDS
tDH
tDS
tDH
≈
tDS
I/O0~7
DIN 511
DIN 1
≈
DIN 0
Serial Access Out Cycle after Read(CLE=L, WE=H, ALE=L)
tRC
≈
CE
tREH
≈
tREA
tREA
tREA
tCHZ*
RE
tRHZ*
Dout
I/O0~7
Dout
≈
tRHZ*
≈
tRR
R/B
NOTES : Transition is measured ±200mV from steady state voltage with load.
This parameter is sampled and not 100% tested.
16
Dout
FLASH MEMORY
K9K1G08U0M
Status Read Cycle
tCLR
CLE
tCLS
tCLH
tCS
CE
tCH
tWP
WE
tCEA
tCHZ*
tWHR
RE
tDS
I/O0~7
tDH
tREA
tIR
tRHZ*
Status Output
70h
Read1 Operation(Read One Page)
CLE
tCEH
CE
tCHZ
tWC
WE
tWB
tCRY
tAR2
ALE
tR
tRHZ
tRC
≈
RE
I/O0~7
00h or 01h A0 ~ A7
A9 ~ A16
Column
Address
R/B
A17 ~ A24
Dout N
A25,A26
Page(Row)
Address
Busy
17
Dout N+1 Dout N+2
≈ ≈
tRR
Dout 527
tRB
FLASH MEMORY
K9K1G08U0M
Read1 Operation(Intercepted by CE)
CLE
CE
WE
tWB
tCHZ
tAR2
ALE
tRC
tR
RE
tRR
I/O0~7
00h or 01h
A9 ~ A16
A0 ~ A7
A17 ~ A24
Dout N
A25,A26
Dout N+1
Dout N+2
Page(Row)
Address
Column
Address
Busy
R/B
Read2 Operation(Read One Page)
CLE
CE
WE
tR
tWB
tAR2
ALE
≈
tRR
I/O0~7
50h
A0 ~ A7
A9 ~ A16 A17 ~ A24
Dout
511+M
A25,A26
R/B
≈
RE
Dout 527
Selected
Row
M Address
A0~A3 : Valid Address
A4~A7 : Don′t care
512
16
Start
address M
18
FLASH MEMORY
K9K1G08U0M
Sequential Row Read Operation ( Within a Block )
CLE
CE
WE
≈
≈
ALE
00h
Dout
N
A0 ~ A7 A9 ~ A16 A17 ~ A24 A25,A26
Dout
N+1
≈
I/O0~7
Dout
0
Dout
527
≈
Busy
R/B
Dout
1
Dout
527
≈
Ready
≈
RE
Busy
M
M+1
N
Output
Output
Page Program Operation
CLE
CE
tWC
≈
tWC
tWC
WE
tWB
tPROG
ALE
I/O0~7
80h
A0 ~ A7 A9 ~ A16 A17 ~ A24
Sequential Data Column
Input Command Address
Page(Row)
Address
A25,A26
≈ ≈
RE
Din
Din
10h
N
527
1 up to 528 Byte Data Program
Command
Serial Input
≈
R/B
70h
19
I/O0
Read Status
Command
I/O0=0 Successful Program
I/O0=1 Error in Program
FLASH MEMORY
K9K1G08U0M
BLOCK ERASE OPERATION(ERASE ONE BLOCK)
CLE
CE
tWC
WE
tBERS
tWB
ALE
RE
I/O0~7
60h
A9 ~ A16 A17 ~ A24 A25,A26
DOh
70h
I/O 0
Busy
R/B
Auto Block Erase Setup Command
Erase Command
20
≈
Page(Row)
Address
Read Status
Command
I/O0=0 Successful Erase
I/O0=1 Error in Erase
21
R/B
I/O0~7
RE
ALE
WE
Sequential Data
Input Command
80h
tWC
Max. three times repeatable
Page(Row)
Address
Din
527
tDBSY :
typ. 1us
max. 10us
tDBSY
80h
I/O0~7
R/B
80h
A0 ~ A7 & A9 ~ A26
528 Byte Data
Address &
Data Input
11h
tDBSY
80h
A0 ~ A7 & A9 ~ A26
528 Byte Data
Address &
Data Input
11h
80h
Din
N
A0 ~ A7 & A9 ~ A26
528 Byte Data
Address &
Data Input
11h
tDBSY
Last Plane Input & Program
A0 ~ A7 A9 ~ A16 A17 ~ A24 A25,A26
tDBSY
Ex.) Four-Plane Page Program into Plane 0~3 or Plane 4~7
Column
Address
Din
N
≈
≈ ≈
11h
Program
1 up to 528 Byte Data Command
(Dummy)
Serial Input
A0 ~ A7 A9 ~ A16 A17 ~ A24 A25,A26
tWB
≈
CE
≈
≈ ≈
CLE
tPROG
A0 ~ A7 & A9 ~ A26
528 Byte Data
Address &
Data Input
10h
Program Confirm
Command
(True)
80h
Din
527
tWB
≈
Multi-Plane Page Program Operation
71h
tPROG
10h
I/O
71h
Read Multi-Plane
Status Command
K9K1G08U0M
FLASH MEMORY
FLASH MEMORY
K9K1G08U0M
Multi-Plane Block Erase Operation into Plane 0~3 or Plane 4~7
CLE
CE
tWC
WE
tBERS
tWB
ALE
RE
60h
I/O0~7
A9 ~ A16 A17 ~ A24 A25,A26
DOh
71h
I/O 0
Busy
R/B
Block Erase Setup Command
≈
Page(Row)
Address
Erase Confirm Command
Read Multi-Plane
Status Command
Max. 4 times repeatable
* For Multi-Plane Erase operation, Block address to be erased should be repeated before "D0H" command.
Ex.) Four-Plane Block Erase Operation
R/B
I/O0~7
tBERS
60h
Address
60h
Address
60h
Address
60h
A9 ~ A26
22
Address
D0h
71h
FLASH MEMORY
K9K1G08U0M
Read ID Operation
CLE
CE
WE
ALE
RE
tREA
I/O 0 ~ 7
90h
Read ID Command
00h
ECh
Address. 1cycle
79h
Maker Code Device Code
ID Defintition Table
90 ID: Access command = 90H
st
1 Byte
2nd Byte
3rd Byte
4th Byte
Value
Description
ECh
79h
A5h
C0h
Maker Code
Device Code
Must be don’t -cared
Supports Multi Plane Operation
23
A5h
C0h
Multi Plane Code
FLASH MEMORY
K9K1G08U0M
Copy-Back Program Operation
CLE
CE
tWC
WE
tWB
tWB tPROG
ALE
tR
RE
R/B
8Ah
A0~A7 A9~A16 A17~A24 A25,A26
Column
Address
A0~A7 A9~A16 A17~A24 A25,A26
Column
Address
Page(Row)
Address
10h
70h
I/O0
Read Status
Command
Page(Row)
Address
≈
00h
≈
I/O0~7
Busy
Busy
Copy-Back Data
Input Command
24
I/O0=0 Successful Program
I/O0=1 Error in Program
FLASH MEMORY
K9K1G08U0M
Device Operation
PAGE READ
Upon initial device power up, the device defaults to Read1 mode. This operation is also initiated by writing 00h to the command register along with four address cycles. Once the command is latched, it does not need to be written for the following page read operation. Three types of operations are available : random read, serial page read and sequential row read.
The random read mode is enabled when the page address is changed. The 528 bytes of data within the selected page are transferred to the data registers in less than 12µs(tR). The system controller can detect the completion of this data transfer(tR) by analyzing the output of R/B pin. Once the data in a page is loaded into the registers, they may be read out in 50ns cycle time by sequentially
pulsing RE. High to low transitions of the RE clock output the data stating from the selected column address up to the last column
address.
After the data of last column address is clocked out, the next page is automatically selected for sequential row read.
Waiting 12µs again allows reading the selected page. The sequential row read operation is terminated by bringing CE high. The way
the Read1 and Read2 commands work is like a pointer set to either the main area or the spare area. The spare area of bytes 512 to
527 may be selectively accessed by writing the Read2 command. Addresses A 0 to A3 set the starting address of the spare area while
addresses A4 to A7 are ignored. Unless the operation is aborted, the page address is automatically incremented for sequential row
read as in Read1 operation and spare sixteen bytes of each page may be sequentially read. The Read1 command(00h/01h) is
needed to move the pointer back to the main area. Figures 8 to 11 show typical sequence and timings for each read operation.
Figure 8. Read1 Operation
CLE
CE
WE
ALE
tR
R/B
RE
I/O0~7
00h
Data Output(Sequential)
Start Add.(4Cycle)
A0 ~ A7 & A9 ~ A26
(00h Command)
1st half array
(01h Command)*
2st half array
Data Field
Spare Field
1st half array
2st half array
Data Field
Spare Field
* After data access on 2nd half array by 01h command, the start pointer is automatically moved to 1st half
array (00h) at next cycle.
25
FLASH MEMORY
K9K1G08U0M
Figure 9. Read2 Operation
CLE
CE
WE
ALE
tR
R/B
RE
50h
I/O0~7
Data Output(Sequential)
Start Add.(4Cycle)
A0 ~ A3 & A9 ~ A26
Spare Field
(A4 ~ A7 :
Don′t Care)
1st half array
2nd half array
Data Field
Spare Field
I/O0 ~ 7
tR
tR
R/B
00h
Start Add.(4Cycle)
01h
A0 ~ A7 & A9 ~ A26
Data Output
1st
tR
Data Output
Data Output
2nd
(528 Byte)
Nth
(528 Byte)
( 01h Command)
( 00h Command)
1st half array
≈
Figure 10. Sequential Row Read1 Operation
2nd half array
1st half array
2nd half array
1st
2nd
Nth
Block
Data Field
1st
2nd
Nth
Data Field
Spare Field
Spare Field
The Sequential Read 1 and 2 operation is allowed only within a block and after the last page of a block is readout, the sequential read operation must be terminated by bringing CE high. When the page address moves onto
the next block, read command and address must be given.
26
FLASH MEMORY
K9K1G08U0M
I/O0~7
tR
tR
R/B
50h
≈
Figure 11. Sequential Row Read2 Operation
Start Add.(4Cycle)
Data Output
1st
A0 ~ A3 & A9 ~ A26
tR
Data Output
Data Output
2nd
(16Byte)
Nth
(16Byte)
(A4 ~ A7 :
Don′t Care)
1st
Block
Nth
Data Field
Spare Field
PAGE PROGRAM
The device is programmed basically on a page basis, but it does allow multiple partial page programing of a byte or consecutive bytes
up to 528, in a single page program cycle. The number of consecutive partial page programming operation within the same page without an intervening erase operation must not exceed 1 for main array and 2 for spare array. The addressing may be done in any random order in a block. A page program cycle consists of a serial data loading period in which up to 528 bytes of data may be loaded
into the page register, followed by a non-volatile programming period where the loaded data is programmed into the appropriate cell.
Serial data loading can be started from 2nd half array by moving pointer. About the pointer operation, please refer to the attached
technical notes.
The serial data loading period begins by inputting the Serial Data Input command(80h), followed by the four cycle address input and
then serial data loading. The bytes other than those to be programmed do not need to be loaded.The Page 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 state control automatically executes the algorithms and timings necessary for program and
verify, thereby freeing the system controller for other tasks. Once the program process starts, the Read Status Register command
may be entered, with RE and CE low, to read the status register. The system controller can detect the completion of a program cycle
by monitoring the R/B output, or the Status bit(I/O 6) of the Status Register. Only the Read Status command and Reset command are
valid while programming is in progress. When the Page Program is complete, the Write Status Bit(I/O 0) may be checked(Figure 12).
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 12. Program & Read Status Operation
tPROG
R/B
I/O0~7
80h
Address & Data Input
10h
70h
A0 ~ A7 & A9 ~ A26
528 Byte Data
I/O0
Fail
27
Pass
FLASH MEMORY
K9K1G08U0M
BLOCK ERASE
The Erase operation is done on a block(16K Byte) basis. Block address loading is accomplished in three cycles initiated by an Erase
Setup command(60h). Only address A14 to A26 is valid while A9 to A13 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 and erase-verify. When
the erase operation is completed, the Write Status Bit(I/O 0) may be checked. Figure 13 details the sequence.
Figure 13. Block Erase Operation
tBERS
R/B
I/O0~7
60h
Address Input(3Cycle)
Pass
I/O0
70h
D0h
Block Add. : A14 ~ A26
Fail
Multi-Plane Page Program into Plane 0~3 or Plane 4~7
Multi-Plane Page Program is an extension of Page Program, which is executed for a single plane with 528 byte page registers. Since
the device is equipped with eight memory planes, activating the four sets of 528 byte page registers into plane 0~3 or plane 4~7
enables a simultaneous programming of four pages. Partial activation of four planes is also permitted.
After writing the first set of data up to 528 byte into the selected page register, Dummy Page Program command (11h) instead of
actual Page Program (10h) is inputted to finish data-loading of the current plane and move to the next plane. Since no programming
process is involved, R/B remains in Busy state for a short period of time(tDBSY). Read Status command (standard 70h or alternate
71h) may be issued to find out when the device returns to Ready state by polling the Ready/Busy status bit(I/O 6). Then the next set
of data for one of the other planes is inputted with the same command and address sequences. After inputting data for the last plane,
actual True Page Program (10h) instead of dumy Page Program command (11h) must be followed to start the programming process.
The operation of R/B and Read Status is the same as that of Page Program. Since maximum four pages into plane 0~3 or plane 4~7
are programmed simultaneously, pass/fail status is available for each page when the program operation completes. The extended
status bits (I/O1 through I/O 4) are checked by inputting the Read Multi-Plane Status Register. Status bit of I/O 0 is set to "1" when
any of the pages fails.
Multi-Plane page Program with "01h" pointer is not supported, thus prohibited.
Figure 14. Four-Plane Page Program
tDBSY
R/B
I/O0~7
80h
Address &
11h
Data Input
A0 ~ A7 & A9 ~ A26
528 Byte Data
80h
11h
tDBSY
80h
Address &
11h
Data Input
A0 ~ A7 & A9 ~ A26
528 Byte Data
Address &
11h
Data Input
A0 ~ A7 & A9 ~ A26
528 Byte Data
80h
80h
80h
11h
tPROG
tDBSY
11h
Address &
10h
Data Input
A0 ~ A7 & A9 ~ A26
528 Byte Data
80h
80h
10h
Data
input
Plane 3
(1024 Block)
Plane 0
(1024 Block)
Plane 1
(1024 Block)
Block 0
Block 1
Block 2
Block 3
Block 4
Block 5
Block 6
Block 7
Block 4088
Block 4092
Block 4089
Block 4093
Block 4090
Block 4094
Plane 2
(1024 Block)
28
Block 4091
Block 4095
71h
FLASH MEMORY
K9K1G08U0M
Restriction in addressing with Multi Plane Page Program
While any block in each plane may be addressable for Multi-Plane Page Program, the five least significant addresses(A9-A13) for the
selected pages at one operation must be the same. Figure 15 shows an example where 2nd page of each addressed block is
selected for four planes. However, any arbitrary sequence is allowed in addressing multiple planes as shown in Figure16.
Figure 15. Multi-Plane Program & Read Status Operation
Block 0
Block 2
Block 1
Page 0
Plane 3
(1024 Block)
Plane 2
(1024 Block)
Plane 1
(1024 Block)
Plane 0
(1024 Block)
Block 3
Page 0
Page 0
Page 0
Page 1
Page 1
Page 1
Page 1
Page 30
Page 31
Page 30
Page 30
Page 31
Page 30
Page 31
Page 31
Figure 16. Addressing Multiple Planes
80h
Plane 2
11h
Plane 0
80h
11h
Plane3
80h
11h
80h
Plane 1
10h
Figure 17. Multi-Plane Page Program & Read Status Operation
tPROG
R/B
Last Plane input
I/O0~7
80h
Address & Data Input
10h
Pass
I/O
71h
A0 ~ A7 & A9 ~ A26
528 Byte Data
Fail
Multi-Plane Block Erase into Plane 0~3 or Plane 4~7
Basic concept of Multi-Plane Block Erase operation is identical to that of Multi-Plane Page Program. Up to four blocks, one from each
plane can be simultaneously erased. Standard Block Erase command sequences (Block Erase Setup command followed by three
address cycles) may be repeated up to four times for erasing up to four blocks. Only one block should be selected from each plane.
The Erase Confirm command initiates the actual erasing process. The completion is detected by analyzing R/B pin or Ready/Busy
status (I/O 6). Upon the erase completion, pass/fail status of each block is examined by reading extended pass/fail status(I/O 1
through I/O 4).
Figure 18. Four Block Erase Operation
R/B
I/O0~7
tBERS
60h
Address
(3 Cycle)
60h
Address
(3 Cycle)
60h
Address
(3 Cycle)
60h
Address
(3 Cycle)
D0h
71h
I/O
A0 ~ A7 & A9 ~ A26
Fail
29
Pass
FLASH MEMORY
K9K1G08U0M
Copy-Back Program
The copy-back program is configured to quickly and efficiently rewrite data stored in one page within the plane to another page within
the same plane without utilizing an external memory. Since the time-consuming sequently-reading and its re-loading cycles are
removed, the system performance is improved. The benefit is especially obvious when a portion of a block is updated and the rest of
the block also need to be copied to the newly assigned free block. The operation for performing a copy-back program is a sequential
execution of page-read without burst-reading cycle and copying-program with the address of destination page. A normal read operation with "00h" command and the address of the source page moves the whole 528byte data into the internal buffer. As soon as the
device returns to Ready state, Page-Copy Data-input command (8Ah) with the address cycles of destination page followed may be
written. The Program Confirm command (10h) is required to actually begin the programming operation. Copy-Back Program operation is allowed only within the same memory plane. Once the Copy-Back Program is finished, any additional partial page programming into the copied pages is prohibited before erase. A14 , A15 and A26 must be the same between source and target page.
Figure19 shows the command sequence for single plane operation. "When there is a program-failure at Copy-Back operation,
error is reported by pass/fail status. But, if Copy-Back operations are accumulated over time, bit error due to charge loss is
not checked by external error detection/correction scheme. For this reason, two bit error correction is recommended for the
use of Copy-Back operation."
Figure 19. One Page Copy-Back program Operation
tR
tPROG
R/B
I/O0~7
00h
Add.(4Cycles)
A0 ~ A7 & A9 ~ A26
Source Address
8Ah
Add.(4Cycles)
A0 ~ A7 & A9 ~ A26
Destination Address
30
10h
70h
I/O0
Fail
Pass
FLASH MEMORY
K9K1G08U0M
Multi-Plane Copy-Back Program
Multi-Plane Copy-Back Program is an extension of one page Copy-Back Program into four plane operation. Since the device is
equipped with four memory planes, activating the four sets of 528 byte page registers enables a simultaneous Multi-Plane Copy-Back
programming of four pages. Partial activation of four planes is also permitted.
First, normal read operation with the "00h"command and address of the source page moves the whole 528 byte data into internal
page buffers. Any further read operation for transferring the addressed pages to the corresponding page register must be executed
with "03h" command instead of "00h" command. Any plane may be selected without regard to "00h" or "03h". Up to four planes may
be addressed. Data moved into the internal page registers are loaded into the destination plane addresses. After the input of command sequences for reading the source pages, the same procedure as Multi-Plane Page programming except for a replacement
address command with "8Ah" is executed. Since no programming process is involved during data loading at the destination plane
address , R/B remains in Busy state for a short period of time(tDBSY). Read Status command (standard 70h or alternate 71h) may be
issued to find out when the device returns to Ready state by polling the Ready/Busy status bit(I/O 6). After inputting data for the last
plane, actual True Page Program (10h) instead of dummy Page Program command (11h) must be followed to start the programming
process. The operation of R/B and Read Status is the same as that of Page Program. Since maximum four pages are programmed
simultaneously, pass/fail status is available for each page when the program operation completes. No pointer operation is supported
with Multi-Plane Copy-Back Program. Once the Multi-Plane Copy-Back Program is finished, any additional partial page programming into the copied pages is prohibited before erase once the Multi-Plane Copy-Back Program is finished.
Figure 20. Four-Plane Copy-Back Program
Max Three Times Repeatable
Source
Address
Input
00h
Plane 0
(1024 Block)
03h
03h
03h
Plane 3
(1024 Block)
Plane 2
(1024 Block)
Plane 1
(1024 Block)
Block 0
Block 4
Block 1
Block 2
Block 3
Block 5
Block 6
Block 7
Block 4088
Block 4092
Block 4089
Block 4093
Block 4090
Block 4094
Block 4091
Block 4095
Max Three Times Repeatable
8Ah
11h
8Ah
11h
8Ah
11h
8Ah
10h
Destination
Address
Input
Plane 3
(1024 Block)
Plane 0
(1024 Block)
Plane 1
(1024 Block)
Block 0
Block 1
Block 2
Block 3
Block 4
Block 5
Block 6
Block 7
Block 4088
Block 4092
Block 4089
Block 4093
Block 4090
Block 4094
31
Plane 2
(1024 Block)
Block 4091
Block 4095
I/O0~7
R/B
00h
03h
tR
A0 ~ A7 & A9 ~ A25
Source Address
Add.( 4Cyc.)
32
03h
Add.( 4Cyc.)
tR
8Ah
tDBSY
≈
≈
A0 ~ A7 & A9 ~ A25
Source Address
≈
≈
Add.(4Cyc.)
11h
tDBSY
A0 ~ A7 & A9 ~ A25
Destination Address
8Ah
Add.(4Cyc.)
tPROG
10h
A0 ~ A7 & A9 ~ A25
Destination Address
8Ah
Max. 4 times (4 Cycle Destination Address Input) repeatable
tDBSY : Typical 1us, Max 10us
A0 ~ A7 & A9 ~ A25
Destination Address
Add.(4Cyc.) 11h
≈
≈
Max. 4 times ( 4 Cycle Source Address Input) repeatable
tR : Normal Read Busy
A0 ~ A7 & A9 ~ A25
Source Address
Add.(4Cyc.)
tR
Figure 21. Four-Plane Copy-Back Page Program (Continued)
71h
K9K1G08U0M
FLASH MEMORY
FLASH MEMORY
K9K1G08U0M
READ STATUS
The device contains a Status Register which may be read to find out whether program or erase operation is completed, and whether
the program or erase operation is completed successfully. After writing 70h command to the command register, a read cycle outputs
the content 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 4 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, a read command(00h or 50h) should be given before sequential page read cycle.
For Read Status of Multi Plane Program/Erase, the Read Multi-Plane Status command(71h) should be used to find out whether
multi-plane program or erase operation is completed, and whether the program or erase operation is completed successfully. The
pass/fail status data must be checked only in the Ready condition after the completion of Multi-Plane program or erase operation.
Table4. Read Staus Register Definition
I/O No.
Status
I/O 0
Total Pass/Fail
Definition by 70h Command
Pass : "0"
Definition by 71h Command
Fail : "1"
Pass : "0"(1)
Fail : "1"
I/O 1
Plane 0 Pass/Fail
Must be don’t -cared
Pass : "0"
I/O 2
Plane 1 Pass/Fail
Must be don’t -cared
Pass : "0"(2)
Fail : "1"
I/O 3
Plane 2 Pass/Fail
Must be don’t -cared
Pass : "0"(2)
Fail : "1"
I/O 4
Plane 3 Pass/Fail
Must be don’t -cared
Pass : "0"
(2)
Fail : "1"
I/O 5
Reserved
Must be don’t -cared
Must be don’t-cared
I/O 6
Device Operation
I/O 7
Write Protect
Busy : "0"
Ready : "1"
Protected : "0"
(2)
Fail : "1"
Busy : "0"
Not Protected : "1"
Ready : "1"
Protected : "0"
Not Protected : "1"
NOTE : 1. I/O 0 describes combined Pass/Fail condition for all planes. If any of the selected multiple pages/blocks fails in Program/
Erase operation, it sets "Fail" flag.
2. The pass/fail status applies only to the corresponding plane.
Read ID
The device contains a product identification mode, initiated by writing 90h to the command register, followed by an address input of
00h. Four read cycles sequentially output the manufacture code(ECh), and the device code (79h), Reserved(A5h), Multi plane operation code(C0h) respectively. A5h must be don’t-cared. C0h means that device supports Multi Plane operation. The command register remains in Read ID mode until further commands are issued to it. Figure 22 shows the operation sequence.
Figure 22. Read ID Operation 1
tCLR
CLE
tCEA
CE
WE
tAR1
ALE
RE
I/O0~7
tWHR
90h
tREA
00h
ECh
Address. 1cycle
Maker code
33
79h
Device code
A5h
C0h
Multi-Plane code
FLASH MEMORY
K9K1G08U0M
RESET
The device offers a reset feature, executed by writing FFh to the command register. When the device is in Busy state during random
read, program or erase mode, the reset operation will abort these operations. The contents of memory cells being altered are no
longer valid, as the data will be partially programmed or erased. The command register is cleared to wait for the next command, and
the Status Register is cleared to value C0h when WP is high. Refer to table 5 for device status after reset operation. If the device is
already in reset state a new reset command will not be accepted by the command register. The R/B pin transitions to low for tRST
after the Reset command is written. Refer to Figure 23 below.
Figure 23. RESET Operation
tRST
R/B
I/O0~7
FFh
Table5. Device Status
Operation Mode
After Power-up
After Reset
Read 1
Waiting for next command
34
FLASH MEMORY
K9K1G08U0M
READY/BUSY
The device has a R/B output that provides a hardware method of indicating the completion of a page program, erase and random
read completion. The R/B pin is normally high but transitions to low after program or erase command is written to the command register or random read is started 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. Because pull-up resistor value is related to tr(R/B) and
current drain during busy(ibusy) , an appropriate value can be obtained with the following reference chart(Fig 24). Its value can be
determined by the following guidance.
Rp
ibusy
VCC
Ready Vcc
R/B
open drain output
2.0V
0.8V
Busy
tf
tr
GND
Device
Fig 24 Rp vs tr ,tf & Rp vs ibusy
@ Vcc = 3.3V, Ta = 25°C , CL = 100pF
tr,tf [s]
Ibusy
300n
200n
290
3m
1.65
189
1.1
2m
tr
96
100n
4.2
0.825
tf
1K
4.2
4.2
4.2
2K
3K
Rp(ohm)
4K
Rp value guidance
Rp(min) =
3.2V
VCC(Max.) - VOL(Max.)
IOL + ΣIL
=
8mA + ΣIL
where IL is the sum of the input currents of all devices tied to the R/B pin.
Rp(max) is determined by maximum permissible limit of tr
35
1m
Ibusy [A]
381
3.3
FLASH MEMORY
K9K1G08U0M
Data Protection
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. A recovery time of minimum 10µs is required before internal circuit gets ready for any command
sequences as shown in Figure 25. The two step command sequence for program/erase provides additional software protection.
≈
Figure 25. AC Waveforms for Power Transition
2.5V
2.5V
High
≈
VCC
WE
10µs
≈
≈
WP
36
FLASH MEMORY
Package Dimensions
Package Dimensions
48-Pin Lead Plastic Thin Small Out-Line Package Type(I)
48 - TSOP1 - 1220F
0.10
MAX
0.004
Unit :mm/Inch
#48
#24
#25
0.50
0.0197
12.40
0.488 MAX
( 0.25 )
0.010
#1
12.00
0.472
+0.003
0.008-0.001
0.20 -0.03
+0.07
20.00±0.20
0.787±0.008
1.00±0.05
0.039±0.002
+0.075
0~8¡Æ
0.45~0.75
0.018~0.030
+0.003
0.005-0.001
18.40±0.10
0.724±0.004
0.125 0.035
0.25
0.010 TYP
1.20
0.047MAX
( 0.50 )
0.020
37
0.05
0.002 MIN