K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY K9F8G08UXM INFORMATION IN THIS DOCUMENT IS PROVIDED IN RELATION TO SAMSUNG PRODUCTS, AND IS SUBJECT TO CHANGE WITHOUT NOTICE. NOTHING IN THIS DOCUMENT SHALL BE CONSTRUED AS GRANTING ANY LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IN SAMSUNG PRODUCTS OR TECHNOLOGY. ALL INFORMATION IN THIS DOCUMENT IS PROVIDED ON AS "AS IS" BASIS WITHOUT GUARANTEE OR WARRANTY OF ANY KIND. 1. For updates or additional information about Samsung products, contact your nearest Samsung office. 2. Samsung products are not intended for use in life support, critical care, medical, safety equipment, or similar applications where Product failure could result in loss of life or personal or physical harm, or any military or defense application, or any governmental procurement to which special terms or provisions may apply. * Samsung Electronics reserves the right to change products or specification without notice. 1 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Document Title 1G x 8 Bit/ 2G x 8 Bit NAND Flash Memory Revision History Revision No History Draft Date Remark 0.0 1. Initial issue Sep.26th 2006 Advance 0.1 1. tCSD timing is added (min.10ns) Dec. 8th 2006 Advance 0.2 1. Add random data output after Read for copy 2. Add read for copy-back with data output timing guide 3. Modify 2-plane copy-back program operation 4. Modify 2KB program operation timing guide 5. Wafer level capacitance is added. Feb. 15nd 2007 Preliminary 1.0 1. MONO/DDP LGA package is added. 2. tCSD is changed.(10ns -> 0ns) Mar. 31st 2007 Final 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. 2 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 1G x 8 Bit/ 2G x 8 Bit NAND Flash Memory PRODUCT LIST Part Number Vcc Range K9F8G08B0M-P 2.5V ~ 2.9V Organization TSOP1 K9F8G08U0M-P K9F8G08U0M-I PKG Type x8 2.7V ~ 3.6V 52ULGA K9KAG08U1M-I FEATURES * Fast Write Cycle Time - Page Program time : 200s(Typ.) - Block Erase Time : 1.5ms(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(with 1bit/512Byte ECC) - Data Retention : 10 Years * Command Driven Operation * Intelligent Copy-Back with internal 1bit/528Byte EDC * Unique ID for Copyright Protection * Package : - K9F8G08B0M-PCB0/PIB0 48 - Pin TSOP1 (12 x 20 / 0.5 mm pitch) - K9F8G08U0M-PCB0/PIB0 48 - Pin TSOP1 (12 x 20 / 0.5 mm pitch) - K9F8G08U0M-ICB0/IIB0 52 - Pin ULGA (12 x 17 / 1.00 mm pitch) - K9KAG08U1M-ICB0/IIB0 52 - Pin ULGA (12 x 17 / 1.00 mm pitch) * Voltage Supply - 2.7V Device(K9F8G08B0M) : 2.5V ~ 2.9V - 3.3V Device(K9F8G08U0M) : 2.7V ~ 3.6V * Organization - Memory Cell Array : (1G + 32M) x 8bit - Data Register : (4K + 128) x 8bit * Automatic Program and Erase - Page Program : (4K + 128)Byte - Block Erase : (256K + 8K)Byte * Page Read Operation - Page Size : (4K + 128)Byte - Random Read : 25s(Max.) - Serial Access : 25ns(Min.) GENERAL DESCRIPTION Offered in 1Gx8bit, the K9F8G08X0M is a 8G-bit NAND Flash Memory with spare 256M-bit. The device is offered in 2.7V and 3.3V Vcc. Its NAND cell provides the most cost-effective solution for the solid state application market. A program operation can be performed in typical 200s on the (4K+128)Byte page and an erase operation can be performed in typical 1.5ms on a (256K+8K)Byte block. Data in the data register can be read out at 25ns cycle time per Byte. The I/O pins serve as the ports for address and data input/output as well as command input. 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 K9F8G08X0Ms extended reliability of 100K program/erase cycles by providing ECC(Error Correcting Code) with real time mappingout algorithm. The K9F8G08X0M is an optimum solution for large nonvolatile storage applications such as solid state file storage and other portable applications requiring non-volatility. 3 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY PIN CONFIGURATION (TSOP1) K9F8G08X0M-PCB0/PIB0 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 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 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 PACKAGE DIMENSIONS 48-PIN LEAD FREE 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.000.20 0.7870.008 +0.075 0~8 0.45~0.75 0.018~0.030 +0.003 0.005-0.001 18.400.10 0.7240.004 0.125 0.035 0.25 0.010 TYP 1.000.05 0.0390.002 ( 0.50 ) 0.020 4 1.20 0.047MAX 0.05 0.002 MIN K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY PIN CONFIGURATION (ULGA) K9F8G08U0M-ICB0/IIB0 A NC C B E D F G H NC NC K J NC L M N NC NC 7 NC 6 /RE Vcc NC NC NC NC Vss Vcc IO5 IO7 NC NC 5 4 /CE 3 2 NC CLE NC NC ALE NC NC /WP NC IO4 IO6 IO0 /WE NC Vss 1 R/B NC Vss IO2 IO1 NC NC NC NC NC NC Vss IO3 NC NC NC NC PACKAGE DIMENSIONS 52-ULGA (measured in millimeters) Bottom View Top View 12.000.10 10.00 1.00 1.00 2.00 7 (Datum A) 6 5 4 3 2 1 B 1.00 1.00 1.30 12.000.10 A #A1 A B C 1.00 2.50 17.000.10 E F 1.00 H 1.00 2.50 G J 2.00 K 0.50 L M N Side View 17.000.10 0.10 C 5 41-0.700.05 0.1 M C AB 0.65(Max.) 12-1.000.05 0.1 M C AB 12.00 17.000.10 D (Datum B) K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY K9KAG08U1M-ICB0/IIB0 A C B NC E D G F H NC NC L K J M N NC NC NC 7 NC 6 /RE1 Vcc R/B2 /RE2 IO7-2 Vss IO6-2 Vcc IO5-1 IO7-1 NC IO5-2 5 4 /CE1 3 2 CLE1 /CE2 R/B1 CLE2 /WE1 ALE2 Vss 1 NC NC ALE1 NC /WP2 IO0-1 /WP1 /WE2 IO4-1 IO6-1 IO0-2 Vss IO2-1 IO1-1 NC IO3-2 Vss IO3-1 IO1-2 NC IO4-2 NC IO2-2 NC NC PACKAGE DIMENSIONS 52-ULGA (measured in millimeters) Bottom View Top View 12.000.10 10.00 1.00 1.00 2.00 7 (Datum A) 6 5 4 3 2 1 B 1.00 1.00 1.30 12.000.10 A #A1 A B C 1.00 2.50 17.000.10 E F 1.00 H 1.00 2.50 G J 2.00 K 0.50 L M N Side View 17.000.10 0.10 C 6 41-0.700.05 0.1 M C AB 0.65(Max.) 12-1.000.05 0.1 M C AB 12.00 17.000.10 D (Datum B) K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY PIN DESCRIPTION Pin Name Pin Function I/O0 ~ I/O7 DATA INPUTS/OUTPUTS 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. CLE COMMAND LATCH ENABLE The CLE input controls the activating path 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. ALE ADDRESS LATCH ENABLE 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. CE CHIP ENABLE The CE input is the device selection control. When the device is in the Busy state, CE high is ignored, and the device does not return to standby mode in program or erase operation. RE READ ENABLE 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. WE WRITE ENABLE The WE input controls writes to the I/O port. Commands, address and data are latched on the rising edge of the WE pulse. WP WRITE PROTECT The WP pin provides inadvertent program/erase protection during power transitions. The internal high voltage generator is reset when the WP pin is active low. R/B READY/BUSY OUTPUT 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. Vcc POWER VCC is the power supply for device. Vss GROUND N.C NO CONNECTION Lead is not internally connected. NOTE : Connect all VCC and VSS pins of each device to common power supply outputs. Do not leave VCC or VSS disconnected. 7 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure 1. K9F8G08X0M Functional Block Diagram VCC VSS A13 - A30 X-Buffers Latches & Decoders 8,192M + 256M Bit NAND Flash ARRAY A0 - A12 Y-Buffers Latches & Decoders (4,096 + 128)Byte x 262,144 Data Register & S/A 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. K9F8G08X0M Array Organization 1 Block = 64 Pages (256K + 8K) Bytes 1 Page = (4K + 128)Bytes 1 Block = (4K + 128)B x 64 Pages = (256K + 8K) Bytes 1 Device = (4K + 128)B x 64 Pages x 4,096 Blocks = 8,448 Mbits 256K Pages (=4,096 Blocks) 8 bit 4K Bytes 128 Bytes I/O 0 ~ I/O 7 Page Register 4K Bytes 128 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 A8 A9 A10 A11 A12 *L *L *L Column Address Column Address 3rd Cycle A13 A14 A15 A16 A17 A18 A19 A20 Row Address 4th Cycle A21 A22 A23 A24 A25 A26 A27 A28 Row Address 5th Cycle A29 A30 *L *L *L *L *L *L Row Address NOTE : Column Address : Starting Address of the Register. * L must be set to "Low". * The device ignores any additional input of address cycles than required. 8 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Product Introduction The K9F8G08X0M is a 8,448Mbit(8,858,370,048 bit) memory organized as 262,114 rows(pages) by 4,224x8 columns. Spare 128x8 columns are located from column address of 4,096~4,223. A 4,224-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 32 cells that are serially connected to form a NAND structure. Each of the 32 cells resides in a different page. A block consists of two NAND structured strings. A NAND structure consists of 32 cells. Total 2,162,688 NAND cells reside in a block. 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 4,096 separately erasable 256K-byte blocks. It indicates that the bit by bit erase operation is prohibited on the K9F8G08X0M. The K9F8G08X0M has addresses multiplexed into 8 I/Os. This scheme dramatically reduces pin counts and allows system 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. Those are 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. Some commands require one bus cycle. For example, Reset Command, Status Read Command, etc require just one cycle bus. Some other commands, like page read and block erase and page program, require two cycles: one cycle for setup and the other cycle for execution. The 1056M byte physical space requires 31 addresses, thereby requiring five cycles for addressing : 2 cycles of column address, 3 cycles of row address, in that order. Page Read and Page Program need the same five 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 K9F8G08X0M. In addition to the enhanced architecture and interface, the device incorporates copy-back program feature from one page to another page without need for transporting the data to and from the external buffer memory. Since the time-consuming serial access and data-input cycles are removed, system performance for solid-state disk application is significantly increased. Table 1. Command Sets Function 1st Set 2nd Set Read 00h 30h Read for Copy Back 00h 35h Read ID 90h - Reset FFh - Acceptable Command during Busy O Page Program 80h 10h Copy-Back Program 85h 10h Block Erase 60h D0h 85h - Random Data Output(1) 05h E0h Read Status 70h O (4) 7Bh O (3) 60h----60h Random Data Input (1) Read EDC Status Read Status 2 Two-Plane Read F1h Two-Plane Read for Copy-Back Two-Plane Random Data Output (1) (3) O 30h 60h----60h 35h 00h----05h E0h 80h----11h 81h----10h Two-Plane Copy-Back Program 85h----11h 81h----10h Two-Plane Block Erase 60h----60h D0h 80h----11h 80h----10h 85h----11h 85h----10h Two-Plane Page Program(2) (2) Page Program with 2KB Data (2) Copy-Back Program with 2KB Data (2) NOTE : 1. Random Data Input/Output can be executed in a page. 2. Any command between 11h and 80h/81h/85h is prohibited except 70h/F1h and FFh. 3. Two-Plane Random Data Output must be used after Two-Plane Read operation 4. Read EDC Status is only available on Copy Back operation. Caution : Any undefined command inputs are prohibited except for above command set of Table 1. 9 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY ABSOLUTE MAXIMUM RATINGS Parameter Voltage on any pin relative to VSS Temperature Under Bias Storage Temperature Rating Symbol K9XXG08XXM-XCB0 VCC -0.6 to + 4.6 VIN -0.6 to + 4.6 VI/O -0.6 to Vcc + 0.3 (< 4.6V) K9XXG08XXM-XCB0 K9XXG08XXM-XIB0 Short Circuit Current V -10 to +125 TBIAS K9XXG08XXM-XIB0 Unit 2.7V / 3.3V Device C -40 to +125 TSTG -65 to +150 C IOS 5 mA NOTE : 1. Minimum DC voltage is -0.6V on input/output pins. During transitions, this level may undershoot to -2.0V for periods <30ns. 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, K9XXG08XXM-XCB0 :TA=0 to 70C, K9XXG08XXM-XIB0:TA=-40 to 85C) Parameter K9F8G08B0M(2.7V) Symbol K9XXG08UXM(3.3V) Unit Min Typ. Max Min Typ. Max Supply Voltage VCC 2.5 2.7 2.9 2.7 3.3 3.6 V Supply Voltage VSS 0 0 0 0 0 0 V DC AND OPERATING CHARACTERISTICS(Recommended operating conditions otherwise noted.) K9F8G08X0M Parameter Operating Current Symbol Test Conditions 2.7V 3.3V Unit Min Typ Max Min Typ Max - 15 30 - 15 30 1 - - 1 tRC=25ns CE=VIL, IOUT=0mA Page Read with Serial Access ICC1 Program ICC2 - Erase ICC3 - Stand-by Current(TTL) ISB1 CE=VIH, WP=0V/VCC - - Stand-by Current(CMOS) ISB2 CE=VCC-0.2, WP=0V/VCC - 10 50 - 10 50 Input Leakage Current ILI VIN=0 to Vcc(max) - - 10 - - 10 Output Leakage Current ILO VOUT=0 to Vcc(max) - - 10 - - 10 - Vcc +0.3 0.8 - Vcc +0.3 Input High Voltage VIH(1) - Input Low Voltage, All inputs VIL(1) - Output High Voltage Level VOH Output Low Voltage Level VOL Output Low Current(R/B) IOL(R/B) 0.8 xVcc -0.3 K9F8G08B0M :IOH=-100A VCC K9XXG08UXM :IOH=-400A -0.4 K9F8G08B0M :IOL=100uA K9XXG08UXM :IOL=2.1mA K9F8G08B0M :VOL=0.1V K9XXG08UXM :VOL=0.4V - -0.3 - A 0.2 xVcc - - 2.4 - - - - 0.4 - - 0.4 3 4 - 8 10 - NOTE : 1. VIL can undershoot to -0.4V and VIH can overshoot to VCC +0.4V for durations of 20 ns or less. 2. Typical value is measured at Vcc=3.3V, TA=25C. Not 100% tested. 3. The typical value of the K9KAG08U1M's ISB2 is 20A and the maximum value is 100A. 10 0.2 xVcc xVcc mA V mA K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY VALID BLOCK Parameter Symbol Min Typ. Max Unit K9F8G08X0M NVB 4,016 - 4,096 Blocks K9K8G08U1M NVB 8,032* - 8,192* Blocks NOTE : 1. The device may include initial invalid blocks when first shipped. Additional invalid blocks may develop while being used. The number of valid blocks is presented with both cases of invalid blocks considered. Invalid blocks are defined as blocks that contain one or more bad bits which cause status failure during program and erase operation. Do not erase or program factory-marked bad blocks. Refer to the attached technical notes for appropriate management of invalid blocks. 2. The 1st block, which is placed on 00h block address, is guaranteed to be a valid block up to 1K program/erase cycles with 1bit/512Byte ECC. 3. The number of valid blocks is on the basis of single plane operations, and this may be decreased with two plane operations. * : Each K9F8G08U0M chip in the K9KAG08U1M has Maximun 80 invalid blocks. AC TEST CONDITION (K9XXG08X0M-XCB0 :TA=0 to 70C, K9XXG08XXM-XIB0:TA=-40 to 85C, K9F8G08B0M: Vcc=2.5V ~ 2.9V, K9XXG08UXM: Vcc=2.7V ~ 3.3V,unless otherwise noted) Parameter K9F8G08B0M K9XXG08UXM 0V to Vcc 0V to Vcc Input Pulse Levels Input Rise and Fall Times 5ns 5ns Vcc/2 Vcc/2 1 TTL GATE and CL=30pF 1 TTL GATE and CL=50pF Input and Output Timing Levels Output Load CAPACITANCE(TA=25C, VCC=2.7V/3.3V, f=1.0MHz) Item Input/Output Capacitance Input Capacitance Symbol Test Condition Min Max Unit CI/O VIL=0V - 5 pF CI/O(W)* VIL=0V - 5 pF CIN VIN=0V - 5 pF CIN(W)* VIN=0V - 5 pF NOTE : 1. Capacitance is periodically sampled and not 100% tested. 2. CI/O(W)* and CIN(W)* are tested at wafer level. MODE SELECTION CLE ALE CE WE RE WP Mode Command Input H L L H X L H L H X H L L H H L H L H H Write Mode L L L H H Data Input L L L H X Data Output X X X X 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 NOTE : 1. X can be VIL or VIH. 2. WP should be biased to CMOS high or CMOS low for standby. 11 CC(2) Read Mode Stand-by Address Input(5clock) Command Input Address Input(5clock) K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Program / Erase Characteristics Parameter Symbol Min Typ Max Unit Program Time tPROG - 200 700 s Dummy Busy Time for Two-Plane Page Program tDBSY - 0.5 1 s Number of Partial Program Cycles Nop - - 4 cycles Block Erase Time tBERS - 1.5 2 ms NOTE : 1. Typical value is measured at Vcc=3.3V, TA=25C. Not 100% tested. 2. Typical program time is defined as the time within which more than 50% of the whole pages are programmed at 3.3V Vcc and 25C temperature. AC Timing Characteristics for Command / Address / Data Input Parameter Symbol Min Max 3.3V(2.7V) 3.3V(2.7V) Unit CLE Setup Time tCLS(1) 12 - ns CLE Hold Time tCLH 5 - ns CE Setup Time t CS(1) 20 - ns CE Hold Time tCH 5 - ns WE Pulse Width tWP 12 - ns ALS(1) 12 - ns ALE Hold Time tALH 5 - ns Data Setup Time t DS(1) 12 - ns tDH 5 - ns Write Cycle Time tWC 25 - ns WE High Hold Time tWH 10 - ns ADL(2) 100 - ns ALE Setup Time t Data Hold Time Address to Data Loading Time t NOTES : 1. The transition of the corresponding control pins must occur only once while WE is held low 2. tADL is the time from the WE rising edge of final address cycle to the WE rising edge of first data cycle 12 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY AC Characteristics for Operation Parameter Symbol Min Max 3.3V(2.7V) 3.3V(2.7V) Unit Data Transfer from Cell to Register tR - 25 s ALE to RE Delay tAR 10 - ns CLE to RE Delay tCLR 10 - ns Ready to RE Low tRR 20 - ns RE Pulse Width tRP 12 - ns WE High to Busy tWB - 100 ns Read Cycle Time tRC 25 - ns RE Access Time tREA - 20 ns CE Access Time tCEA - 25 ns RE High to Output Hi-Z tRHZ - 100 ns CE High to Output Hi-Z tCHZ - 30 ns CE High to ALE or CLE Don't Care tCSD 0 - ns RE High to Output Hold tRHOH 15 - ns RE Low to Output Hold tRLOH 5 - ns CE High to Output Hold tCOH 15 - ns RE High Hold Time tREH 10 - ns tIR 0 - ns RE High to WE Low tRHW 100 - ns WE High to RE Low tWHR 60 - Device Resetting Time(Read/Program/Erase) tRST - WP High to WE Low tWW 100 Output Hi-Z to RE Low NOTE: 1. If reset command(FFh) is written at Ready state, the device goes into Busy for maximum 5s. 13 5/10/500 - ns (1) s ns K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY NAND Flash Technical Notes Initial Invalid Block(s) Initial invalid blocks are defined as blocks that contain one or more initial invalid bits whose reliability is not guaranteed by Samsung. The information regarding the initial invalid block(s) is called the initial invalid block information. Devices with initial invalid block(s) have the same quality level as devices with all valid blocks and have the same AC and DC characteristics. An initial 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 initial invalid block(s) via address mapping. The 1st block, which is placed on 00h block address, is guaranteed to be a valid block up to 1K program/erase cycles with 1bit/512Byte ECC. Identifying Initial Invalid Block(s) All device locations are erased(FFh) except locations where the initial invalid block(s) information is written prior to shipping. The initial invalid block(s) status is defined by the 1st byte in the spare area. Samsung makes sure that either the 1st or 2nd page of every initial invalid block has non-FFh data at the column address of 4,096. Since the initial 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 initial invalid block(s) based on the original initial invalid block information and create the initial invalid block table via the following suggested flow chart(Figure 3). Any intentional erasure of the original initial invalid block information is prohibited. Start Set Block Address = 0 Increment Block Address * Create (or update) Initial Invalid Block(s) Table No Check "FFh" at the column address 4,096 of the 1st and 2nd page in the block Check "FFh" Yes No Last Block ? Yes End Figure 3. Flow chart to create initial invalid block table 14 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY NAND Flash Technical Notes (Continued) Error in write or read operation Within its life time, additional invalid blocks may develop with NAND Flash memory. Refer to the qualification report for the actual data.The following possible failure modes should be considered to implement a highly reliable system. In the case of status read failure after erase or program, block replacement should be done. Because program status fail during a page program does not affect the data of the other pages in the same block, block replacement can be executed with a page-sized buffer by finding an erased empty block and reprogramming the current target data and copying the rest of the replaced block. In case of Read, ECC must be employed. To improve the efficiency of memory space, it is recommended that the read or verification failure due to single bit error be reclaimed by ECC without any block replacement. The said additional block failure rate does not include those reclaimed blocks. Failure Mode Write Read ECC Detection and Countermeasure sequence Erase Failure Status Read after Erase --> Block Replacement Program Failure Status Read after Program --> Block Replacement Single Bit Failure Verify ECC -> ECC Correction : Error Correcting Code --> Hamming Code etc. Example) 1bit correction & 2bit detection Program Flow Chart Start Write 80h Write Address Write Data Write 10h Read Status Register I/O 6 = 1 ? or R/B = 1 ? * Program Error No Yes No I/O 0 = 0 ? Yes Program Completed * 15 : If program operation results in an error, map out the block including the page in error and copy the target data to another block. K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY NAND Flash Technical Notes (Continued) Erase Flow Chart Read Flow Chart Start Start Write 60h Write 00h Write Block Address Write Address Write D0h Write 30h Read Status Register Read Data ECC Generation No I/O 6 = 1 ? or R/B = 1 ? Reclaim the Error Yes * No Erase Error No Verify ECC Yes I/O 0 = 0 ? Page Read Completed 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 1 an error occurs. (page) 1st (n-1)th nth Buffer memory of the controller. { Block B 2 (page) * Step1 When an error happens in the nth page of the Block 'A' during erase or program operation. * Step2 Copy the data in the 1st ~ (n-1)th page to the same location of another free block. (Block 'B') * Step3 Then, copy the nth page data of the Block 'A' in the buffer memory to the nth page of the Block 'B'. * Step4 Do not erase or program Block 'A' by creating an 'invalid block' table or other appropriate scheme. 16 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY NAND Flash Technical Notes (Continued) Copy-Back Operation with EDC & Sector Definition for EDC Generally, copy-back program is very powerful to move data stored in a page without utilizing any external memory. But, if the source page has one bit error due to charge loss or charge gain, then without EDC, the copy-back program operation could also accumulate bit errors. K9F8G08X0M supports copy-back with EDC to prevent cumulative bit errors. To make EDC valid, the page program operation should be performed on either whole page(4224byte) or sector(528byte). Modifying the data of a sector by Random Data Input before Copy-Back Program must be performed for the whole sector and is allowed only once per each sector. Any partial modification smaller than a sector corrupts the on-chip EDC codes. A 4,224-byte page is composed of 8 sectors of 528-byte and each 528-byte sector is composed of 512-byte main area and 16-byte spare area. Spare Field (128 Byte) Main Field (4,096 Byte) "A" area "E" area "F" area "I" "J" "K" "L" "M" "N" "O" "P" "B" area "G" area "H" area "C" area "D" area (1'st sector) (2'nd sector)(3'rd sector) (4'th sector)(5'th sector) (6'th sector) (7'th sector) (8'th sector) (1'st ) (2'nd ) (3'rd ) (4'th ) (5'th ) (6'tht ) (7'th ) (8'th ) 512 Byte 512 Byte 512 Byte 512 Byte 512 Byte 512 Byte 512 Byte 16 16 16 16 16 16 16 16 512 Byte Byte Byte Byte Byte Byte Byte Byte Byte Table 2. Definition of the 528-Byte Sector Sector Main Field (Column 0~4,095) Spare Field (Column 4,096~4,223) Area Name Column Address Area Name Column Address 1'st 528-Byte Sector "A" 0 ~ 511 "I" 4,096 ~ 4,111 2'nd 528-Byte Sector "B" 512 ~ 1,023 "J" 4,112 ~ 4,127 3'rd 528-Byte Sector "C" 1,024 ~ 1,535 "K" 4,128 ~ 4,143 4'th 528-Byte Sector "D" 1,536 ~ 2,047 "L" 4,114 ~ 4,159 5'th 528-Byte Sector "E" 2,048 ~ 2,559 "M" 4,160 ~ 4,175 6'th 528-Byte Sector "F" 2,560 ~ 3,071 "N" 4,176 ~ 4,191 7'th 528-Byte Sector "G" 3,072 ~ 3,583 "O" 4,192 ~ 4,207 8'th 528-Byte Sector "H" 3,584 ~ 4,095 "P" 4,208 ~ 4,223 17 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Addressing for program operation Within a block, the pages must be programmed consecutively from the LSB (least significant bit) page of the block to MSB (most significant bit) pages of the block. Random page address programming is prohibited. In this case, the definition of LSB page is the LSB among the pages to be programmed. Therefore, LSB doesn't need to be page 0. Page 63 (64) Page 63 : Page 31 : (32) Page 31 : Page 2 Page 1 Page 0 (1) : (3) (2) (1) Page 2 Page 1 Page 0 Data register (3) (32) (2) Data register From the LSB page to MSB page DATA IN: Data (1) (64) Ex.) Random page program (Prohibition) Data (64) DATA IN: Data (1) 18 Data (64) K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY System Interface Using CE don't-care. For an easier system interface, CE may be inactive during the data-loading or serial access as shown below. The internal 4,224byte data 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 -seconds, de-activating CE during the data-loading and serial access would provide significant savings in power consumption. CLE Figure 4. Program Operation with CE don't-care. I/Ox ALE 80h Address(5Cycles) tCS WE CE CE don't-care Data Input tCH Data Input 10h tCEA CE CE tREA tWP RE WE I/O0~7 out CLE Figure 5. Read Operation with CE don't-care. CE don't-care ALE tR R/B RE WE I/Ox CE 00h Address(5Cycle) Data Output(serial access) 30h 19 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY NOTE I/O DATA I/Ox Data In/Out Col. Add1 Col. Add2 Row Add1 Row Add2 Row Add3 I/O 0 ~ I/O 7 4,114byte A0~A7 A8~A12 A13~A20 A21~A28 A29~A30 Device K9F8G08X0M ADDRESS Command Latch Cycle CLE tCLS tCLH tCS tCH CE tWP WE tALH tALS ALE tDH tDS I/Ox Command Address Latch Cycle tCLS CLE tCS tWC tWC tWC tWC CE tWP tWP WE tWH tALH tALS tALS tWP tWP tALH tWH tALS tWH tALH tALS tWH tALH tALS tALH ALE tDS I/Ox tDH Col. Add1 tDS tDH Col. Add2 20 tDS tDH Row Add1 tDS tDH Row Add2 tDS tDH Row Add3 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Input Data Latch Cycle tCLH CLE tCH CE tWC ALE tALS tWP tWH tDH tDS tDH tDS tDH tDS tWP tWP WE I/Ox DIN final DIN 1 DIN 0 * Serial Access Cycle after Read(CLE=L, WE=H, ALE=L) tRC CE tREA tREA tREH tCHZ tREA tCOH RE tRHZ tRHZ I/Ox Dout Dout tRHOH Dout tRR R/B NOTES : 1.Transition is measured at 200mV from steady state voltage with load. This parameter is sampled and not 100% tested. 2. tRLOH is valid when frequency is higher than 33MHz. tRHOH starts to be valid when frequency is lower than 33MHz. 21 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Serial Access Cycle after Read(EDO Type, CLE=L, WE=H, ALE=L) CE tRC tCHZ tCOH tREH tRP RE tCEA I/Ox tRHZ tREA tRHOH tRLOH tREA Dout Dout tRR R/B NOTES : 1. Transition is measured at 200mV from steady state voltage with load. This parameter is sampled and not 100% tested. 2. tRLOH is valid when frequency is higher than 33MHz. tRHOH starts to be valid when frequency is lower than 33MHz. Status Read Cycle & EDC Status Read Cycle tCLR CLE tCLS tCLH tCS CE tWP tCH WE tCEA tCHZ tCOH tWHR RE tDS I/Ox tDH tIR tREA tRHZ tRHOH Status Output 70h/7Bh 22 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Read Operation tCLR CLE CE tWC WE tCSD tWB tAR ALE tR tRHZ tRC RE I/Ox 00h Col. Add1 Col. Add2 Row Add1 Column Address Row Add2 Row Add3 30h Dout N Dout N+1 Row Address tRR Dout M Busy R/B Read Operation(Intercepted by CE) tCLR CLE CE tCSD WE tCHZ tWB tAR tCOH ALE tRC tR RE tRR I/Ox 00h Col. Add1 Col. Add2 Column Address Row Add1 Row Add2 Row Add3 Dout N 30h Row Address Busy R/B 23 Dout N+1 Dout N+2 24 R/B I/Ox RE ALE WE CE CLE 00h Col. Add2 Column Address Col. Add1 Random Data Output In a Page Row Add2 Row Add3 Row Address Row Add1 30h/35h Busy tRR tR tWB tAR Dout N tRC Dout N+1 tRHW 05h Col Add1 Col Add2 Column Address E0h tREA tWHR tCLR Dout M Dout M+1 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Page Program Operation CLE CE tWC tWC tWC WE tWB tADL tPROG tWHR ALE I/Ox 80h Co.l Add1 Col. Add2 SerialData Column Address Input Command Row Add1 RE Din Din N M 1 up to m Byte Serial Input Row Add2 Row Add3 Row Address Program Command I/O0=0 Successful Program I/O0=1 Error in Program NOTES : tADL is the time from the WE rising edge of final address cycle to the WE rising edge of first data cycle. 25 I/O0 Read Status Command R/B 70h 10h 26 R/B I/Ox RE ALE WE Col. Add1 Col. Add2 Row Add2 Row Add3 Row Address Row Add1 tWC tADL Din M 85h Col. Add1 Col. Add2 Serial Input Random Data Column Address Input Command Din N tWC tADL Din K Serial Input Din J NOTES : 1. tADL is the time from the WE rising edge of final address cycle to the WE rising edge of first data cycle. 2. For EDC operation, only one time random data input is possible at the same address. Serial Data Column Address Input Command 80h tWC CE CLE 10h Program Command tWB tPROG Page Program Operation with Random Data Input I/O0 I/O0=0 Successful Program I/O0=1 Error in Program Read Status Command 70h tWHR K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 27 R/B I/Ox RE ALE WE CE Column Address Row Address Col Add1 Col Add2 Row Add1 Row Add2 Row Add3 35h tR tWB Column Address Row Address Col Add1 Col Add2 Row Add1 Row Add2 Row Add3 Copy-Back Data Input Command Busy 85h Data 1 tADL NOTES : 1. tADL is the time from the WE rising edge of final address cycle to the WE rising edge of first data cycle. 2. For EDC operation, only one time random data input is possible at the same address. 00h tWC CLE Data N 10h tWB 70h/7Bh tWHR I/Ox Read EDC Status or Read Status Command tPROG I/O0=0 Successful Program I/O0=1 Error in Program I/O1 ~ I/O2 : EDC Status (7Bh only) Busy Copy-Back Program Operation With Random Data Input K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Block Erase Operation CLE CE tWC WE tBERS tWB tWHR ALE RE I/Ox 60h Row Add1 Row Add2 Row Add3 D0h 70h I/O 0 Busy R/B Auto Block Erase Setup Command Erase Command Row Address Read Status Command 28 I/O0=0 Successful Erase I/O0=1 Error in Erase 29 R/B I/Ox RE ALE WE CE CLE R/B I/Ox RE ALE WE CE CLE 1 00h A0~A7 A8~A12 A13~A20 A21~A28 A29~A30 A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' Row Address A13~A20 A21~A28 A29~A30 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30: Fixed 'Low' Column Address Row Address tW tWC 60h tW tWC 05h 30h A0 ~ A12 : E0h Valid Column Address A8~A12 00h A0~A7 A8~A12 A13~A20 A21~A28 A29~A30 05h A0~A7 A8~A12 tCLR Dout N Dout N+1 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30: Fixed 'Low' Column Address Row Address : Valid Column Address A0 ~ A12 E0h tREA tRC Busy tREA tRHW tW tWC tR tWHR tWB tWHR tCLR A13 ~ A18 : Valid : Fixed 'High' A19 A20 ~ A30 : Valid Row Address A13~A20 A21~A28 A29~A30 A0~A7 60h tW tWC Two-Plane Page Read Operation with Two-Plane Random Data Out Dout M tRC Dout M+1 1 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 30 R/B I/Ox RE ALE WE Din N Din M I/O0~7 A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' Col Add1,2 & Row Add 1,2,3 4,224 Byte Data Address & Data Input tDBSY : tDBSY 11h typ. 500ns max. 1s Note tDBSY 81h 81h Din N A0 ~ A12 : Valid A13 ~ A18 : Valid : Fixed 'High' A19 A20 ~ A30 : Valid Col Add1,2 & Row Add 1,2,3 4,224 Byte Data Address & Data Input Col Add1 Col Add2 Row Add1 Row Add2 Row Add3 Note: Any command between 11h and 81h is prohibited except 70h/F1h and FFh. 80h Ex.) Two-Plane Page Program R/B tWB 11h Program Page Row Address 1 up to 4,224 Byte DataCommand (Dummy) Serial Input Col Add1 Col Add2 Row Add1 Row Add2 Row Add3 Serial Data Column Address Input Command 80h tWC CE CLE 10h tPROG tPROG Program Confirm Command (True) 10h Din M tWB Two-Plane Page Program Operation I/O 70h I/O0=0 Successful Program I/O0=1 Error in Program Read Status Command 70h tWHR K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 31 Row Address 60h tWC I/O0~7 R/B 60h A13 ~ A17 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30 : Valid A13 ~ A18: Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' D0h ~ A25 A9Address Row Add1,2,3 60h Row Add1,2,3 Address D0h D0h tWB tBERS Erase Confirm Command Row Address Row Add1 Row Add2 Row Add3 Block Erase Setup Command2 Row Add1 Row Add2 RowD0h Add3 Block Erase Setup Command1 60h tWC Ex.) Address Restriction for Two-Plane Block Erase Operation R/B I/OX RE ALE WE CE CLE Two-Plane Block Erase Operation 70h Busy tBERS I/O 0 I/O 0 = 0 Successful Erase I/O 0 = 1 Error in Erase Read Status Command 70h tWHR K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Read ID Operation CLE CE WE tAR ALE RE tREA I/Ox 00h 90h Read ID Command Device Address 1cycle Device Code (2nd Cycle) K9F8G08B0M K9F8G08U0M ECh Device Code 3rd cyc. 4th cyc. 5th cyc. Maker Code Device Code 3rd Cycle 4th Cycle 5th Cycle Same as K9F8G08U0M D3 10h 32 A6h 64h K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY ID Definition Table 90 ID : Access command = 90H Description 1st Byte 2nd Byte 3rd Byte 4th Byte 5th Byte Maker Code Device Code Internal Chip Number, Cell Type, Number of Simultaneously Programmed Pages, Etc Page Size, Block Size,Redundant Area Size, Organization, Serial Access Minimum Plane Number, Plane Size 3rd ID Data Description I/O7 I/O6 I/O5 I/O4 I/O3 I/O2 I/O1 I/O0 0 0 1 1 Internal Chip Number 1 2 4 8 Cell Type 2 Level Cell 4 Level Cell 8 Level Cell 16 Level Cell Number of Simultaneously Programmed Pages 1 2 4 8 Interleave Program Between multiple chips Not Support Support Cache Program Not Support Support 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 4th ID Data Description Page Size (w/o redundant area ) 1KB 2KB 4KB 8KB Block Size (w/o redundant area ) 64KB 128KB 256KB 512KB Redundant Area Size ( byte/512byte) 8 16 Organization x8 x16 Serial Access Minimum 50ns/30ns 25ns Reserved Reserved I/O7 I/O6 I/O5 I/ I/O3 I/O2 I/O1 I/O0 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 33 0 0 1 1 0 1 0 1 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 5th ID Data Description Plane Number 1 2 4 8 Plane Size (w/o redundant Area) 64Mb 128Mb 256Mb 512Mb 1Gb 2Gb 4Gb 8Gb I/O7 I/O6 I/O5 I/O4 I/O3 I/O2 0 0 1 1 0 0 0 0 1 1 1 1 Reserved 0 34 0 0 1 1 0 0 1 1 I/O1 I/O0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Device Operation PAGE READ Page read is initiated by writing 00h-30h to the command register along with five address cycles. After initial power up, 00h command is latched. Therefore only five address cycles and 30h command initiates that operation after initial power up. The 4,224 bytes of data within the selected page are transferred to the data registers in less than 25s(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 data registers, they may be read out in 25ns cycle time by sequentially pulsing RE. The repetitive high to low transitions of the RE clock make the device output the data starting from the selected column address up to the last column address. The device may output random data in a page instead of the consecutive sequential data by writing random data output command. The column address of next data, which is going to be out, may be changed to the address which follows random data output command. Random data output can be operated multiple times regardless of how many times it is done in a page. Figure 6. Read Operation CLE CE WE ALE RE I/Ox tR R/B 00h Address(5Cycle) Data Output(Serial Access) 30h Col. Add.1,2 & Row Add.1,2,3 Data Field Spare Field 35 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure 7. Random Data Output In a Page tR R/B RE I/Ox Address 5Cycles 00h 30h/35h Data Output 05h Col. Add.1,2 & Row Add.1,2,3 Address 2Cycles E0h Data Output Col. Add.1,2 Data Field Data Field Spare Field Spare Field PAGE PROGRAM The device is programmed basically on a page basis, but it does allow multiple partial page programming of a word or consecutive bytes up to 4,224, 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 4 times for a single page. The addressing should be done in sequential order in a block. A page program cycle consists of a serial data loading period in which up to 4,224bytes of data may be loaded into the data register, followed by a non-volatile programming period where the loaded data is programmed into the appropriate cell. The serial data loading period begins by inputting the Serial Data Input command(80h), followed by the five cycle address inputs and then serial data loading. The data other than those to be programmed do not need to be loaded. The device supports random data input in a page. The column address for the next data, which will be entered, may be changed to the address which follows random data input command(85h). Random data input may be operated multiple times regardless of how many times it is done in a page. Modifying the data of a sector by Random Data Input before Copy-Back Program must be performed for the whole sector and is allowed only once per each sector. Any partial modification smaller than a sector corrupts the on-chip EDC codes. 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 controller 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 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 8). 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 8. Program & Read Status Operation tPROG R/B "0" I/Ox 80h Address & Data Input 10h 70h Pass I/O0 Col. Add.1,2 & Row Add.1,2,3 "1" Data Fail 36 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure 9. Random Data Input In a Page tPROG R/B "0" I/Ox Address & Data Input 80h 85h Address & Data Input 10h 70h Col. Add.1,2 Data Col. Add.1,2 & Row Add1,2,3 Data Pass I/O0 "1" Fail COPY-BACK PROGRAM The Copy-Back program is configured to quickly and efficiently rewrite data stored in one page without utilizing an external memory. Since the time-consuming cycles of serial access and 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 serial access and copying-program with the address of destination page. A read operation with "35h" command and the address of the source page moves the whole 4,224-byte data into the internal data buffer. As soon as the device returns to Ready state, Page-Copy Data-input command (85h) with the address cycles of destination page followed may be written. The Program Confirm command (10h) is required to actually begin the programming operation. During tPROG, the device executes EDC of itself. Once the program process starts, the Read Status Register command (70h/F1h) or Read EDC Status command (7Bh) may be entered 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. When the Copy-Back Program is complete, the Write Status Bit(I/O 0) and EDC Status Bits (I/O 1 ~ I/O 2) may be checked(Figure 10 & Figure 11& Figure 12). The internal write verification detects only errors for "1"s that are not successfully programmed to "0"s and the internal EDC checks whether there is only 1-bit error for each 528-byte sector of the source page. More than 2-bit error detection is not available for each 528-byte sector. The command register remains in Read Status commands mode or Read EDC Status command mode until another valid command is written to the command register. During copy-back program, data modification is possible using random data input command (85h) as shown in Figure11. But EDC status bits are not available during copy back for some bits or bytes modified by Random Data Input operation. However, in case of the 528 byte sector unit modification, EDC status bits are available. Figure 10. Page Copy-Back Program Operation tR R/B I/Ox 00h Add.(5Cycles) 35h tPROG 85h Add.(5Cycles) 70h 10h Col. Add.1,2 & Row Add.1,2,3 Destination Address Col. Add.1,2 & Row Add.1,2,3 Source Address "0" I/O0 Pass "1" Fail Note: 1. Copy-Back Program operation is allowed only within the same memory plane. Figure 11. Page Copy-Back Program Operation with Random Data Input R/B I/Ox tPROG tR 00h Add.(5Cycles) 35h Col. Add.1,2 & Row Add.1,2,3 Source Address 85h Add.(5Cycles) Data Col. Add.1,2 & Row Add.1,2,3 Destination Address 85h Add.(2Cycles) Data Col. Add.1,2 There is no limitation for the number of repetition. Note: 1. For EDC operation, only one time random data input is possible at the same address. 37 10h 70h K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY EDC OPERATION Note that for the user who use Copy-Back with EDC mode, only one time random data input is possible at the same address during Copy-Back program or page program mode. For the user who use Copy-Back without EDC, there is no limitation for the random data input at the same address. Figure 12. Page Copy-Back Program Operation with EDC & Read EDC Status tR R/B I/Ox Add.(5Cycles) 00h 35h tPROG 85h Add.(5Cycles) 10h 7Bh EDC Status Output Col. Add.1,2 & Row Add.1,2,3 Destination Address Col. Add.1,2 & Row Add.1,2,3 Source Address Figure 13. Two-Plane Page Copy-Back Program Operation with EDC & Read EDC Status tR R/B I/Ox 60h Add.(3Cycles) Add.(3Cycles) 60h Row Add.1,2,3 Source Address 35h Row Add.1,2,3 Source Address tDBSY tPROG R/B I/Ox 85h Add.(5Cycles) 11h Col. Add.1,2 & Row Add.1,2,3 Destination Address 81h Add.(5Cycles) 10h 7Bh EDC Status Output Col. Add.1,2 & Row Add.1,2,3 Destination Address BLOCK ERASE The Erase operation is done on a block basis. Block address loading is accomplished in three cycles initiated by an Erase Setup command(60h). Only address A19 to A30 is valid while A13 to A18 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 14 details the sequence. Figure 14. Block Erase Operation tBERS R/B "0" I/Ox 60h Address Input(3Cycle) 70h D0h Pass I/O0 "1" Row Add 1,2,3 Fail 38 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY TWO-PLANE PAGE READ Two-Plane Page Read is an extension of Page Read, for a single plane with 4,224 byte page registers. Since the device is equipped with two memory planes, activating the two sets of 4,224 byte page registers enables a random read of two pages. Two-Plane Page Read is initiated by repeating command 60h followed by three address cycles twice. In this case only same page of same block can be selected from each plane. After Read Confirm command(30h) the 8,448 bytes of data within the selected two page are transferred to the data registers in less than 25us(tR). The system controller can detect the completion of data transfer(tR) by monitoring the output of R/B pin. Once the data is loaded into the data registers, the data output of first plane can be read out by issuing command 00h with Five Address Cycles, command 05h with two column address and finally E0h. The data output of second plane can be read out using the identical command sequences. The restrictions for Two-Plane Page Program are shown in Figure 15. Two-Plane Read must be used in the block which has been programmed with Two-Plane Page Program. Figure 15. Two-Plane Page Read Operation with Two-Plane Random Data Out tR R/B I/OX 60h Address (3 Cycle) 60h Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30: Fixed 'Low' 30h Address (3 Cycle) Row Add.1,2,3 A13 ~ A18 : Valid : Fixed 'High' A19 A20 ~ A30 : Valid 1 R/B I/Ox 00h Address (5 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' 1 Address (2 Cycle) E0h Data Output Col. Add.1,2 A0 ~ A12 : Valid 2 R/B I/Ox 00h Address (5 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 2 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' A19 : Fixed 'High' A20 ~ A30 : Fixed 'Low' Address (2 Cycle) Col. Add.1,2 A0 ~ A12 39 : Valid E0h Data Output K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY TWO-PLANE PAGE PROGRAM Two-Plane Page Program is an extension of Page Program, for a single plane with 4,224 byte page registers. Since the device is equipped with two memory planes, activating the two sets of 4,224 byte page registers enables a simultaneous programming of two pages. After writing the first set of data up to 4,224 byte into the selected page register, Dummy Page Program command (11h) instead of actual Page Program command (10h) is inputted to finish data-loading of the first plane. Since no programming process is involved, R/B remains in Busy state for a short period of time(tDBSY). Read Status command (70h/F1h) 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 the other plane is inputted after the 81h command and address sequences. 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. Althougth two planes are programmed simultaneously, pass/fail is not available for each page when the program operation completes. Status bit of I/O 0 is set to "1" when any of the pages fails. Restriction in addressing with Two-Plane Page Program is shown is Figure16. Figure 16. Two-Plane Page Program tDBSY R/B I/O0 ~ 7 80h Address & Data Input 11h tPROG 81h Address & Data Input Note*2 A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Fixed 'High' A19 ~ A30: Valid NOTE :1. It is noticeable that same row address except for A18 is applied to the two blocks 2. Any command between 11h and 81h is prohibited except 70h/F1h and FFh. Data Input 80h 11h 81h 10h Plane 0 (2048 Block) Plane 1 (2048 Block) Block 0 Block 1 Block 2 Block 3 Block 4092 Block 4094 Block 4093 Block 4095 40 10h 70h I/O0 "1" Fail "0" Pass K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY TWO-PLANE COPY-BACK PROGRAM Two-Plane Copy-Back Program is an extension of Copy-Back Program, for a single plane with 4,224 byte page registers. Since the device is equipped with two memory planes, activating the two sets of 4,224 byte page registers enables a simultaneous programming of two pages. Figure 17. Two-Plane Copy-Back Program Operation tR R/B I/OX 60h Address (3 Cycle) 60h Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' 35h Address (3 Cycle) Row Add.1,2,3 A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 : Valid 1 tPROG tDBSY R/B I/Ox 85h 1 Add.(5Cycles) Col. Add.1,2 & Row Add.1,2,3 Destination Address 11h 81h Add.(5Cycles) 10h Note*2 Col. Add.1,2 & Row Add.1,2,3 Destination Address A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 Valid Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. Any command between 11h and 81h is prohibited except 70h/F1h and FFh. 41 70h K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure 18. Two-Plane Copy-Back Program Operation with Random Data Input tR R/B I/OX 60h Address (3 Cycle) 60h Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A21 ~ A30 : Fixed 'Low' Address (3 Cycle) 35h Row Add.1,2,3 A13 ~ A19 : Valid : Fixed 'High' A19 A21 ~ A30 : Valid 1 tDBSY R/B I/Ox 85h Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 1 Add.(2Cycles) Data 11h Note3 Col. Add.1,2 2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' tPROG R/B I/Ox 81h 2 Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 Add.(2Cycles) Data 10h 70h Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 : Valid Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. EDC status Bits are not available during copy back for some bits or bytes modified by Random Data Input operation. In case of the 528 byte plane unit modification, EDC status bits are available. 3. Any command between 11h and 81h is prohibited except 70h/F1h and FFh. 42 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY TWO-PLANE BLOCK ERASE Basic concept of Two-Plane Block Erase operation is identical to that of Two-Plane Page Program. Up to two blocks, one from each plane can be simultaneously erased. Standard Block Erase command sequences (Block Erase Setup command(60h) followed by three address cycles) may be repeated up to twice for erasing up to two blocks. Only one block should be selected from each plane. The Erase Confirm command(D0h) initiates the actual erasing process. The completion is detected by monitoring R/B pin or Ready/ Busy status bit (I/O 6). Figure 19. Two-Plane Block Erase Operation tBERS R/B I/OX 60h Address (3 Cycle) A13 ~ A18 : Fixed 'Low' :Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' 60h D0h Address (3 Cycle) 70h I/O0 A13 ~ A18 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30 : valid "0" Pass "1" Fail 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 or F1h 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 3 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 read command(00h) should be given before starting read cycles. Table 3. Status Register Definition for 70h Command I/O Page Program Block Erase Read I/O 0 Pass/Fail Pass/Fail Not use Pass : "0" Definition I/O 1 Not use Not use Not use Don't -cared I/O 2 Not use Not use Not use Don't -cared I/O 3 Not Use Not Use Not Use Don't -cared I/O 4 Not Use Not Use Not Use Don't -cared I/O 5 Not Use Not Use Not Use Don't -cared I/O 6 Ready/Busy Ready/Busy Ready/Busy Busy : "0" I/O 7 Write Protect Write Protect Write Protect Protected : "0" Fail : "1" Ready : "1" Not Protected : "1" NOTE : 1. I/Os defined 'Not use' are recommended to be masked out when Read Status is being executed. Table 4. F1h Read Status Register Definition I/O No. Page Program Block Erase Read Definition I/O 0 Chip Pass/Fail Chip Pass/Fail Not use Pass : "0" Fail : "1" I/O 1 Plane0 Pass/Fail Plane0 Pass/Fail Not use Pass : "0" Fail : "1" I/O 2 Plane1 Pass/Fail Plane1 Pass/Fail Not use Pass : "0" Fail : "1" I/O 3 Not Use Not Use Not Use Don't -cared I/O 4 Not Use Not Use Not Use Don't -cared Don't -cared I/O 5 Not Use Not Use Not Use I/O 6 Ready/Busy Ready/Busy Ready/Busy Busy : "0" I/O 7 Write Protect Write Protect Write Protect Protected : "0" NOTE : 1. I/Os defined 'Not use' are recommended to be masked out when Read Status is being executed. 43 Ready : "1" Not Protected : "1" K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY READ EDC STATUS Read EDC status operation is only available on 'Copy Back Program'. The device contains an EDC Status Register which may be read to find out whether there is error during 'Read for Copy Back'. After writing 7Bh command to the command register, a read cycle outputs the content of the EDC 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 5 for specific Status Register definitions. The command register remains in EDC Status Read mode until further commands are issued to it. Table 5. Status Register Definition for 7Bh Command I/O Copy Back Program Page Program Block Erase Read I/O 0 Pass/Fail of Copy Back Program Pass/Fail Pass/Fail Not use Definition Pass : "0", Fail : "1" I/O 1 EDC Status Not use Not use Not use No Error : "0", Error : "1" I/O 2 Validity of EDC Status Not use Not use Not use Valid : "1", Invalid : "0" I/O 3 Not Use Not Use Not Use Not Use Don't -cared I/O 4 Not Use Not Use Not Use Not Use Don't -cared I/O 5 Not Use Not Use Not Use Not Use I/O 6 Ready/Busy of Copy Back Program Ready/Busy Ready/Busy Ready/Busy Busy : "0", Ready : "1" Don't -cared I/O 7 Write Protect of Copy Back Program Write Protect Write Protect Write Protect Protected : "0", Not Protected :"1" NOTE : 1. I/Os defined 'Not use' are recommended to be masked out when Read Status is being executed. 2. More than 2-bit error detection isn't available for each 528 Byte sector. That is to say, only 1-bit error detection is avaliable for each 528 Byte sector. 44 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY READ ID The device contains a product identification mode, initiated by writing 90h to the command register, followed by an address input of 00h. Five read cycles sequentially output the manufacturer code(ECh), and the device code and 3rd, 4th, 5th cycle ID respectively. The command register remains in Read ID mode until further commands are issued to it. Figure 20 shows the operation sequence. Figure 20. Read ID Operation tCLR CLE tCEA CE WE tAR ALE tWHR RE I/OX 90h 00h tREA Address. 1cycle Device Device Code (2nd Cycle) K9F8G08B0M ECh Maker code Device Code 3rd Cyc. 4th Cyc. 5th Cyc. Device code 3rd Cycle 4th Cycle 5th Cycle A6h 64h Same as K9F8G08U0M K9F8G08U0M D3 10h 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. If the device is already in reset state a new reset command will be accepted by the command register. The R/B pin changes to low for tRST after the Reset command is written. Refer to Figure 21 below. Figure 21. Reset Operation tRST R/B I/OX FFh Table 6. Device Status Operation mode After Power-up After Reset 00h Command is latched Waiting for next command 45 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 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.22). Its value can be determined by the following guidance. Rp VCC ibusy Ready Vcc 2.7V device - VOL : 0.4V, VOH : Vcc-0.4V 3.3V device - VOL : 0.4V, VOH : 2.4V R/B open drain output VOH CL VOL Busy tf tr GND Device Figure 22. Rp vs tr ,tf & Rp vs ibusy @ Vcc = 2.7V, Ta = 25C , CL = 30pF @ Vcc = 3.3V, Ta = 25C , CL = 50pF 2.4 2.3 tr 30 2.3 1K tf 60 1m 0.75 0.55 2.3 2.3 2K 3K Rp(ohm) 4K 2.3 tr,tf [s] 120 90 100n Ibusy [A] tr,tf [s] 1.1 200 Ibusy 200n 2m 150 1.2 100 100n tr 0.6 50 3.6 1K tf 3.6 3.6 2K 3K Rp(ohm) 4K 3.6 Rp(min, 3.3V part) = 2.5V VCC(Max.) - VOL(Max.) IOL + IL = IOL + IL 3mA + IL 3.2V VCC(Max.) - VOL(Max.) = 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 46 1m 0.8 Rp value guidance Rp(min, 2.7V part) = 2m Ibusy [A] Ibusy 200n K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY DATA PROTECTION & POWER UP SEQUENCE 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 1.8V(2.7V device), 2V(3.3V device). WP pin provides hardware protection and is recommended to be kept at VIL during power-up and power-down. A recovery time of minimum 100s is required before internal circuit gets ready for any command sequences as shown in Figure 23. The two step command sequence for program/erase provides additional software protection. Figure 23. AC Waveforms for Power Transition 2.7V device : ~ 2.0V 3.3V device : ~ 2.5V VCC High WP 100s WE 47 2.7V device : ~ 2.0V 3.3V device : ~ 2.5V K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY READ FOR COPY-BACK WITH DATA OUTPUT TIMING GUIDE K9F8G08X0M is designed also to support the read for copy-back with data output to check a bit error for the controller which can't use the read EDC status operation. The command sequences are as follows. Figure A-1. (Using Data Output) Page Copy-Back Program Operation tR tPROG R/B 00h Add.(5Cycles) Data Output 35h I/Ox Col. Add.1,2 & Row Add.1,2,3 Source Address 85h Add.(5Cycles) 10h 70h I/O0 Col. Add.1,2 & Row Add.1,2,3 Destination Address "0" Pass "1" Note: 1. Copy-Back Program operation is allowed only within the same memory plane. Fail Figure A-2. (Using Data Output) Page Copy-Back Program Operation with Random Data Input R/B 00h Add.(5Cycles) 35h Col. Add.1,2 & Row Add.1,2,3 Source Address Data Output I/Ox tPROG tR 85h Add.(5Cycles) Data Col. Add.1,2 & Row Add.1,2,3 Destination Address 48 85h Add.(2Cycles) Data 10h Col. Add.1,2 There is no limitation for the number of repetition. 70h K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure A-3. (Using Data Output) Two-Plane Copy-Back Program Operation tR R/B I/OX 60h 60h Address (3 Cycle) 35h Address (3 Cycle) Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' Row Add.1,2,3 A13 ~ A18 : Valid : Fixed 'High' A19 A20 ~ A30 : Valid 1 R/B I/Ox 00h Address (5 Cycle) Address (2 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 Data Output Col. Add.1,2 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' 1 E0h A0 ~ A12 : Valid 2 R/B I/Ox 00h Address (5 Cycle) Address (2 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 Data Output Col. Add.1,2 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30 : Fixed 'Low' 2 E0h A0 ~ A12 : 3 Valid tPROG tDBSY R/B I/Ox Add.(5Cycles) 85h 3 11h Col. Add.1,2 & Row Add.1,2,3 Destination Address Add.(5Cycles) 81h 10h 70h Note2 Col. Add.1,2 & Row Add.1,2,3 Destination Address A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 Valid A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' Plane0 Plane1 Source page Source page Target page Target page (1) : Two-Plane Read for Copy Back (2) : Two-Plane Random Data Out (1) (2) (3) Data Field (1) Spare Field (2) (3) Data Field (3) : Two-Plane Copy-Back Program Spare Field Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. Any command between 11h and 81h is prohibited except 70h/F1h and FFh. 49 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure A-4. (Using Data Output) Two-Plane Copy-Back Program Operation with Random Data Input tR R/B I/OX 60h Address (3 Cycle) 60h Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A21 ~ A30 : Fixed 'Low' 35h Address (3 Cycle) Row Add.1,2,3 A13 ~ A19 : Valid : Fixed 'High' A19 A21 ~ A30 : Valid 1 R/B I/Ox 00h Address (5 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' 1 Address (2 Cycle) E0h Data Output Col. Add.1,2 A0 ~ A12 : Valid 2 R/B I/Ox 00h Address (5 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30 : Fixed 'Low' 2 Address (2 Cycle) E0h Data Output Col. Add.1,2 A0 ~ A12 : 3 Valid tDBSY R/B I/Ox 85h Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 3 Add.(2Cycles) Data 11h Note3 Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' tPROG R/B I/Ox 81h 4 Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 Add.(2Cycles) Data Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 : Valid Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. Any command between 11h and 81h is prohibited except 70h/F1h and FFh. 50 10h 4 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 2KB PROGRAM OPERATION TIMING GUIDE K9F8G08X0M is designed also to support the program operation with 2KByte data to offer the backward compatibility to the controller which uses the NAND with 2KByte page. The command sequences are as follows. Figure B-1. (2KB X 2) Program Operation I/O0~7 tPROG tDBSY R/B 80h Address & Data Input 80h 11h Note Col Add1,2 & Row Add 1,2,3 2112 Byte Data A0 ~ A12 A13 ~ A18 A19 A20 ~ A30 Address & Data Input 10h 70h Col Add1,2 & Row Add 1,2,3 2112 Byte Data A0 ~ A12 A13 ~ A18 A19 A20 ~ A30 Valid Fixed 'Low' : Valid : Fixed 'Low' : : Valid Vaild : Must be same with the previous : Valid : : Note: Any command between 11h and 80h is prohibited except 70h/F1h and FFh. Figure B-2. (2KB X 2) Copy-Back Program Operation tR R/B Add.(5Cycles) 00h Data Output 35h Col. Add.1,2 & Row Add.1,2,3 Source Address I/Ox 1 tDBSY tPROG R/B I/Ox 85h 1 Add.(5Cycles) Data 11h 85h Add.(5Cycles) Data 10h Col. Add.1,2 & Row Add.1,2,3 Col. Add.1,2 & Row Add.1,2,3 Destination Address Destination Address A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Must be same with the previous A20 ~ A30 : Valid A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' A19 : Valid A20 ~ A30 : Fixed 'Low' Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. Any command between 11h and 85h is prohibited except 70h/F1h and FFh. 51 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY Figure B-3. (2KB X 2) Copy-Back Program Operation with Random Data Input tR R/B 00h Add.(5Cycles) Data Output 35h Col. Add.1,2 & Row Add.1,2,3 Source Address I/Ox 1 tDBSY R/B I/Ox 85h Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 1 Add.(2Cycles) Data 11h Note2 Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' A19 : Valid A20 ~ A30 : Fixed 'Low' tPROG R/B I/Ox 85h 2 Add.(5Cycles) Data 85h Col. Add.1,2 & Row Add.1,2,3 Add.(2Cycles) Data Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Must be same with the previous A20 ~ A30 : Valid Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 2. Any command between 11h and 85h is prohibited except 70h/F1h and FFh. 52 10h 2 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY 2-PLANE PAGE PROGRAM OPERATION USING 4KB BUFFER RAM K9F8G08X0M consists of 4KB pages and can support Two-Plane program operation. The internal RAM requirement for a controller is 8KB, but for those controllers which support less than 8KB RAM, the following sequence can be used for Two-Plane program operation. Plane0 Plane1 (1) : Two-Plane Read for Copy Back Source page (2) : Random Data Out On Plane 0 (Up to 4224Byte) Source page (3) : Random Data In On Plane 0 (Up to 4224Byte) (4) : Random Data Out On Plane 1 (Up to 4224Byte) Target page (1) Target page (6) (1) 4KByte (5) : Random Data In On Plane 1 (Up to 4224Byte) (6): Two-Plane Program for Copy Back (6) 4KByte Data Field Spare Field (2) (3) Data Field (4) Spare Field (5) Figure B-4. 2-Plane Copy-Back Program Operation with Ramdon Data Input tR R/B I/OX 60h Add(3 Cycle) 60h Row Add.1,2,3 A13 ~ A18 : Fixed 'Low' A19 : Fixed 'Low' A20 ~ A30 : Fixed 'Low' Add(3 Cycle) 35h 00h Row Add.1,2,3 A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 : Valid Add(5 Cycle) 05h Col. Add. 1,2 & Row Add.1,2,3 Add(2 Cycle) Col. Add.1,2 A0 ~ A12 A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' : E0h DOUT Up to 4224Byte Valid 1 tDBSY R/B I/Ox Add(5 Cycle) 85h DIN 85h Col. Add.1,2 & Row Add.1,2,3 1 Add(2 Cycle) DIN 11h Col. Add.1,2 00h Add(5 Cycle) Col. Add. 1,2 & Row Add.1,2,3 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Fixed 'Low' : Fixed 'Low' A19 A20 ~ A30 : Fixed 'Low' A0 ~ A12 : Fixed 'Low' A13 ~ A18 : Fixed 'Low' : Fixed 'High' A19 A20 ~ A30 : Fixed 'Low' tPROG R/B I/Ox 81h Add(5 Cycle) DIN Col. Add.1,2 & Row Add.1,2,3 2 85h Add(2 Cycle) 05h DIN 10h 70h Col. Add.1,2 Destination Address A0 ~ A12 : Valid A13 ~ A18 : Valid A19 : Fixed 'High' A20 ~ A30 : Valid Note: 1. Copy-Back Program operation is allowed only within the same memory plane. 53 Add(2 Cycle) Col. Add.1,2 A0 ~ A12 : Valid E0h DOUT Up to 4224Byte 2 K9KAG08U1M K9F8G08U0M K9F8G08B0M FLASH MEMORY WP AC Timing guide Enabling WP during erase and program busy is prohibited. The erase and program operations are enabled and disabled as follows: Figure C-1. Program Operation 1. Enable Mode WE I/O 80h 10h WP R/B tww(min.100ns) 2. Disable Mode WE I/O 80h 10h WP R/B tww(min.100ns) Figure C-2. Erase Operation 1. Enable Mode WE I/O 60h D0h WP R/B tww(min.100ns) 2. Disable Mode WE I/O 60h D0h WP R/B tww(min.100ns) 54