0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
KFG1216Q2A-DIB6

KFG1216Q2A-DIB6

  • 厂商:

    SAMSUNG(三星)

  • 封装:

  • 描述:

    KFG1216Q2A-DIB6 - FLASH MEMORY - Samsung semiconductor

  • 数据手册
  • 价格&库存
KFG1216Q2A-DIB6 数据手册
OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY OneNANDTM Specification Density 512Mb Part No. KFG1216Q2A KFG1216D2A KFG1216U2A VCC(core & IO) 1.8V(1.7V~1.95V) 2.65V(2.4V~2.9V) 3.3V(2.7V~3.6V) Temperature Extended Extended Industrial PKG 63FBGA(LF)/63FBGA 63FBGA(LF)/63FBGA 63FBGA(LF)/63FBGA Version: Ver. 1.0 Date: May 17th, 2005 1 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.0 INTRODUCTION This specification contains information about the Samsung Electronics Company OneNAND™‚ Flash memory product family. Section 1.0 includes a general overview, revision history, and product ordering information. Section 2.0 describes the OneNAND device. Section 3.0 provides information about device operation. Electrical specifications and timing waveforms are in Sections 4.0 though 6.0. Section 7.0 provides additional application and technical notes pertaining to use of the OneNAND. Package dimensions are found in Section 8.0 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. OneNAND™‚ is a trademark of Samsung Electronics Company, Ltd. Other names and brands may be claimed as the property of their rightful owners. Copyright © 2005, Samsung Electronics Company, Ltd 2 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.1 OneNAND Revision History Document Title Revision History Revision No. History 0.0 0.1 Initial issue. 1. Corrected Errata 2. Revised cache read flow chart 3. Revised standby current 4. Revised spare area description 5. Added CE don’t care state for Asynch Write, Load, Program, and Block Erase timing diagram 1. Added Copy Back Operation with Random Data Input 2. Changed tBA from 11ns to 11.5ns 3. Pended Active Erase Current Draft Date Nov. 4, 2004 Dec. 7, 2004 Remark Preliminary Preliminary 0.2 Dec. 24, 2004 Preliminary 0.3 1. Corrected the errata Jan. 13, 2005 2. Revised typical value of ISB from 50uA to 10uA 3. Revised maximum value of ISB from 100uA to 50uA 4. Revised maximum value of tCE, tAA and tACC from 70ns to 76ns 5. Revised Vcc-IO description 6. Revised Spare Area description 7. Added extra information on Controller Status Register 8. Added commands related to Interrupt Status Register bits 9. Revised Write Protection Status on Chapter 3.4.3 10. Revised Copy-Back Program Operation description 11. Added extra information on Multi-Block Erase Operation 12. Disabled FBA restriction in OTP operation 13. Revised Cache Read Flow Chart 14. Revised Reset Parameter descriptions 15. Added RDY information on Warm Reset Timing diagram 16. Added information on Data Protection Timing During Power Down 17. Revised Interrupt pin rise and falling slope graph 18. Added restriction on address register setting on Dual Operations 19. Added restriction on address register setting on Cache Read Operation 1. Corrected the errata 2. Updated DC parameters to RMS values 3. Added Speed Information on Product Number 4. Revised tOEZ description 5. Revised OTP register setting restriction 6. Added Boot Sequence Infrormation on Technical Notes 7. Added Cint Information Feb. 25, 2005 Preliminary 0.4 Preliminary 3 OneNAND512(KFG1216x2A-xxB5) Revision History Revision No. History 1.0 1. Corrected the errata 2. Added Data Protection flow chart. 3. Removed Cache Read Operation. 4. Added additional information on command register. 5. Revised Interrupt status register information. 6. Added INT pin schematic. 7. Changed tPGM1 to 205 from 320us, tPGM2 to 220 from 350us. 8. Revised AC/DC parameters 9. Revised ECC Bypass Description. 10. Revised Reset Parameters and Timing Diagrams. FLASH MEMORY Draft Date May. 17, 2005 Remark Final 4 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.2 Flash Product Type Selector Samsung offers a variety of Flash solutions including NAND Flash, OneNAND™ and NOR Flash. Samsung offers Flash products both component and a variety of card formats including RS-MMC, MMC, CompactFlash, and SmartMedia. To determine which Samsung Flash product solution is best for your application, refer the product selector chart. Application Requires Fast Random Read Fast Sequential Read Fast Write/Program Multi Block Erase Erase Suspend/Resume Copyback Lock/Unlock/Lock-Tight ECC Scalability Samsung Flash Products NAND • • OneNAND • • • (Max 64 Blocks) • • (EDC) External (Hardware/Software) • • (ECC) • Internal • • X • • NOR • 1.3 Ordering Information K F G 12 1 6 Q 2 A - x x B 5 Speed 5 : 54MHz 6 : 66MHz Product Line desinator B : Include Bad Block D : Daisy Sample Operating Temperature Range E = Extended Temp. (-30 °C to 85 °C) I = Industrial Temp. (-40 °C to 85 °C) Package D : FBGA(Lead Free) F : FBGA(Leaded) Version 2nd Generation Page Architecture 2 : 2KB Page Samsung OneNAND Memory Device Type G : Single Chip Density 12: 512Mb Organization x16 Organization Operating Voltage Range Q : 1.8V(1.7 V to 1.95V) D : 2.65V(2.4V to 2.9V) U : 3.3V(2.7 V to 3.6V) 5 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.4 Architectural Benefits OneNAND is a highly integrated non-volatile memory solution based around a NAND Flash memory array. The chip integrates system features including: • A BootRAM and bootloader • Two independent bi-directional 2KB DataRAM buffers • A High-Speed x16 Host Interface • On-chip Error Correction • On-chip NOR interface controller This on-chip integration enables system designers to reduce external system logic and use high-density NAND Flash in applications that would otherwise have to use more NOR components. OneNAND takes advantage of the higher performance NAND program time, low power, and high density and combines it with the synchronous read performance of NOR. The NOR Flash host interface makes OneNAND an ideal solution for applications like G3 Smart Phones, Camera Phones, and mobile applications that have large, advanced multimedia applications and operating systems, but lack a NAND controller. When integrated into a Samsung Multi-Chip-Package with Samsung Mobile DDR SDRAM, designers can complete a high-performance, small footprint solution. The attached datasheets are prepared and approved by SAMSUNG Electronics. SAMSUNG Electronics CO., LTD. reserve the right to change the specifications. SAMSUNG Electronics will evaluate and reply to your requests and questions about device. If you have any questions, please contact the SAMSUNG branch office near you. 6 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.5 Product Features 90nm 1.8V (1.7V ~ 1.95V), 2.65V (2.4 ~ 2.9V), 3.3V (2.7 ~3.6V) 16 bit 1KB BootRAM, 4KB DataRAM (2K+64)B Page Size, (128K+4K)B Block Size Device Architecture • Design Technology: • Supply Voltage: • Host Interface: • 5KB Internal BufferRAM: • SLC NAND Array: Device Performance • Host Interface Type: • • • • • Programmable Burst Read Latency Multiple Sector Read: Multiple Reset Modes: Multi Block Erase: Low Power Dissipation: Synchronous Burst Read - Up to 54MHz clock frequency - Linear Burst 4-, 8-, 16, 32-words with wrap around - Continuous 1K word Sequential Burst Asynchronous Random Read - 76ns access time Asynchronous Random Write Latency 3(up to 40MHz), 4, 5, 6, and 7 Up to 4 sectors using Sector Count Register Cold/Warm/Hot/NAND Flash Resets up to 64 blocks Typical Power, - Standby current : 10uA@1.8Vdevice, 35uA@2.65V/3.3V device - Synchronous Burst Read current : 12mA@1.8Vdevice 22mA@2.65V/3.3V device - Load current : 30mA@all device - Program current : 25mA@1.8v device 28mA@2.65V/3.3V device - Erase current : 20mA@1.8V device 23mA@2.65V/3.3V device - Multi Block Erase current : 20mA@1.8V device 23mA@2.65V/3.3V device System Hardware • Voltage detector generating internal reset signal from Vcc • Hardware reset input (/RP) - Write Protection for BootRAM • Data Protection Modes - Write Protection for NAND Flash Array - Write Protection during power-up - Write Protection during power-down • User-controlled One Time Programmable(OTP) area • Internal 2bit EDC / 1bit ECC • Internal Bootloader supports Booting Solution in system • Handshaking Feature • Detailed chip information - INT pin indicates Ready / Busy - Polling the interrupt register status bit - by ID register Packaging 63ball, 9.5mm x 12mm x max 1.0mmt , 0.8mm ball pitch FBGA 7 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 1.6 General Overview OneNAND™‚ is a monolithic integrated circuit with a NAND Flash array using a NOR Flash interface. This device includes control logic, a NAND Flash array, and 5KB of internal BufferRAM. The BufferRAM reserves 1KB for boot code buffering (BootRAM) and 4KB for data buffering (DataRAM), split between 2 independent buffers. It has a x16 Host Interface and a random access time speed of ~76ns. The device operates up to a maximum host-driven clock frequency of 54MHz for synchronous reads at Vcc(or Vccq. Refer to chapter 4.2) with minimum 4-clock latency. Below 40MHz it is accessible with minimum 3-clock latency. Appropriate wait cycles are determined by programmable read latency. OneNAND provides for multiple sector read operations by assigning the number of sectors to be read in the sector counter register. The device includes one block-sized OTP (One Time Programmable) area that can be used to increase system security or to provide identification capabilities. 8 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.0 2.1 DEVICE DESCRIPTION Detailed Product Description The OneNAND is an advanced generation, high-performance NAND-based Flash memory. It integrates on-chip a single-level-cell (SLC) NAND Flash Array memory with two independent data buffers, boot RAM buffer, a page buffer for the Flash array, and a one-time-programmable block. The combination of these memory areas enable high-speed pipelining of reads from host, BufferRAM, Page Buffer, and NAND Flash Array memory. Clock speeds up to 54MHz with a x16 wide I/O yields a 68MByte/second bandwidth. The OneNAND also includes a Boot RAM and boot loader. This enables the device to efficiently load boot code at device startup from the NAND Array without the need for off-chip boot device. One block of the NAND Array is set aside as an OTP memory area. This area, available to the user, can be configured and locked with secured user information. On-chip controller interfaces enable the device to operate in systems without NAND Host controllers. 9 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.2 Definitions B (capital letter) W (capital letter) b (lower-case letter) ECC Calculated ECC Written ECC BufferRAM BootRAM DataRAM Sector Byte, 8bits Word, 16bits Bit Error Correction Code ECC that has been calculated during a load or program access ECC that has been stored as data in the NAND Flash array or in the BufferRAM On-chip internal buffer consisting of BootRAM and DataRAM A 1KB portion of the BufferRAM reserved for Boot Code buffering A 4KB portion of the BufferRAM reserved for Data buffering Part of a Page ; 512B for the main data area and 16B for the spare area. It is also the minimum Load/Program/Copy-Back Program unit during a 1~4 sector operation is available. Possible data unit to be read from memory to BufferRAM or to be programmed to memory. - 528B of which 512B is in main area and 16B in spare area - 1056B of which 1024B is in main area and 32B in spare area - 1584B of which 1536B is in main area and 48B in spare area - 2112B of which 2048B is in main area and 64B in spare area Data unit 10 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.3 Pin Configuration NC NC NC NC NC NC NC WE RP DQ14 VSS VSS DQ13 DQ12 DQ8 DQ1 OE DQ9 VCC Core VCC IO DQ7 DQ4 DQ11 DQ10 DQ3 DQ15 A12 DQ0 A15 DQ5 DQ6 CLK CE DQ2 NC NC A9 A14 A13 AVD A7 A11 A8 INT A0 A1 NC A10 A6 RDY A4 A5 A2 A3 NC NC NC NC NC NC NC NC NC (TOP VIEW, Balls Facing Down) 63ball FBGA OneNAND Chip 63ball, 9.5mm x 12mm x max 1.0mmt , 0.8mm ball pitch FBGA 11 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.4 Pin Name Host Interface A15~A0 Pin Description Type Nameand Description Address Inputs - Inputs for addresses during read and write operation, which are for addressing BufferRAM & Register. Data Inputs/Outputs - Inputs data during program and commands during all operations, outputs data for memory array/ register read cycles. Data pins float to high-impedance when the chip is deselected or outputs are disabled. Interrupt Notifies the Host when a command is completed. It is open drain output with internal resistor(~50kohms). After power-up, it is at hi-z condition. Once IOBE is set to 1, it does not float to hi-z condition even when the chip is deselected or when outputs are disabled. Ready Indicates data valid in synchronous read modes and is activated while CE is low Clock CLK synchronizes the device to the system bus frequency in synchronous read mode. The first rising edge of CLK in conjunction with AVD low latches address input. Write Enable WE controls writes to the bufferRAM and registers. Datas are latched on the WE pulse’s rising edge Address Valid Detect Indicates valid address presence on address inputs. During asynchronous read operation, all addresses are latched on AVD’s rising edge, and during synchronous read operation, all addresses are latched on CLK’s rising edge while AVD is held low for one clock cycle. > Low : for asynchronous mode, indicates valid address ;for burst mode, causes starting address to be latched on rising edge on CLK > High : device ignores address inputs Reset Pin When low, RP resets internal operation of OneNAND. RP status is don’t care during power-up and bootloading. Chip Enable CE-low activates internal control logic, and CE-high deselects the device, places it in standby state, and places DQ in Hi-Z Output Enable OE-low enables the device’s output data buffers during a read cycle. Power for MuxOneNAND Core This is the power supply for OneNAND Core. Power for MuxOneNAND I/O This is the power supply for OneNAND I/O Vcc-IO / Vccq is internally separated from Vcc-Core / Vcc. Ground for OneNAND Do Not Use Leave it disconnected. These pins are used for testing. No Connection Lead is not internally connected. I DQ15~DQ0 I/O INT O RDY O CLK I WE I AVD I RP I CE I OE Power Supply VCC-Core / Vcc VCC-IO / Vccq VSS etc. DNU NC I NOTE: Do not leave power supply(Vcc-Core/Vcc-IO, VSS) disconnected. 12 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.5 Block Diagram DQ15~DQ0 A15~A0 CLK CE Host Interface OE WE RP AVD INT RDY (Address/Command/Configuration /Status Registers) OTP (One Block) DataRAM0 DataRAM1 NAND Flash Array BufferRAM BootRAM StateMachine Bootloader Error Correction Internal Registers Logic 2.6 Memory Array Organization The OneNAND architecture integrates several memory areas on a single chip. 2.6.1 Internal (NAND Array) Memory Organization The on-chip internal memory is a single-level-cell (SLC) NAND array used for data storage and code. The internal memory is divided into a main area and a spare area. Main Area The main area is the primary memory array. This main area is divided into Blocks of 64 Pages. Within a Block, each Page is 2KB and is comprised of 4 Sectors. Within a Page, each Sector is 512B and is comprised of 256 Words. Spare Area The spare area is used for invalid block information and ECC storage. Spare area of internal memory is associated with corresponding main area of internal memory. Within a Block, each Page has four 16B Sectors of spare area. Each spare area Sector is 8 words. 13 OneNAND512(KFG1216x2A-xxB5) Internal Memory Array Information Area Main Spare Block 128KB 4KB Page 2KB 64B FLASH MEMORY Sector 512B 16B Internal Memory Array Organization Sector Main Area Spare Area 512B 16B Page Main Area Spare Area 512B Sector0 512B Sector1 512B Sector2 2KB 512B Sector3 16B Sector0 16B Sector1 16B Sector2 16B Sector3 64B Block Main Area Spare Area 2KB Page0 64B Page0 Page 0 2KB Page63 128KB 64B Page63 4KB Page 63 14 OneNAND512(KFG1216x2A-xxB5) 2.6.2 External (BufferRAM) Memory Organization FLASH MEMORY The on-chip external memory is comprised of 3 buffers used for Boot Code storage and data buffering. The BootRAM is a 1KB buffer that receives Boot Code from the internal memory and makes it available to the host at start up. There are two independent 2KB bi-directional data buffers, DataRAM0 and DataRAM1. These dual buffers enable the host to execute simultaneous Read-While load, and Write-While-program operations after Boot Up. During Boot Up, the BootRam is used by the host to initialize the main memory, and deliver boot code from NAND Flash core to host. External (BufferRAM) Memory BootRAM (1KB) Internal (Nand Array) Memory Boot code (1KB) Host Nand Array DataRAM0 (2KB) DataRAM1 (2KB) OTP Block The external memory is divided into a main area and a spare area. Each buffer is the equivalent size of a Sector. The main area data is 512B. The spare area data is 16B. External Memory Array Information Area Total Size Number of Sectors Sector Main Spare BootRAM 1KB+32B 2 512B 16B DataRAM0 2KB+64B 4 512B 16B DataRAM1 2KB+64B 4 512B 16B 15 OneNAND512(KFG1216x2A-xxB5) External Memory Array Organization FLASH MEMORY Main area data (512B) Spare area data (16B) { BootRAM BootRAM 0 BootRAM 1 DataRAM 0_0 DataRAM0 DataRAM 0_1 DataRAM 0_2 DataRAM 0_3 DataRAM 1_0 DataRAM1 DataRAM 1_1 DataRAM 1_2 DataRAM 1_3 { Sector: (512 + 16) Byte 16 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.7 Memory Map The following tables are the memory maps for the OneNAND. 2.7.1 Internal (NAND Array) Memory Organization The following tables show the Internal Memory address map in word order. Block Block0 Block1 Block2 Block3 Block4 Block5 Block6 Block7 Block8 Block9 Block10 Block11 Block12 Block13 Block14 Block15 Block16 Block17 Block18 Block19 Block20 Block21 Block22 Block23 Block24 Block25 Block26 Block27 Block28 Block29 Block30 Block31 Block Address 0000h 0001h 0002h 0003h 0004h 0005h 0006h 0007h 0008h 0009h 000Ah 000Bh 000Ch 000Dh 000Eh 000Fh 0010h 0011h 0012h 0013h 0014h 0015h 0016h 0017h 0018h 0019h 001Ah 001Bh 001Ch 001Dh 001Eh 001Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block32 Block33 Block34 Block35 Block36 Block37 Block38 Block39 Block40 Block41 Block42 Block43 Block44 Block45 Block46 Block47 Block48 Block49 Block50 Block51 Block52 Block53 Block54 Block55 Block56 Block57 Block58 Block59 Block60 Block61 Block62 Block63 Block Address 0020h 0021h 0022h 0023h 0024h 0025h 0026h 0027h 0028h 0029h 002Ah 002Bh 002Ch 002Dh 002Eh 002Fh 0030h 0031h 0032h 0033h 0034h 0035h 0036h 0037h 0038h 0039h 003Ah 003Bh 003Ch 003Dh 003Eh 003Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 17 OneNAND512(KFG1216x2A-xxB5) Block Block64 Block65 Block66 Block67 Block68 Block69 Block70 Block71 Block72 Block73 Block74 Block75 Block76 Block77 Block78 Block79 Block80 Block81 Block82 Block83 Block84 Block85 Block86 Block87 Block88 Block89 Block90 Block91 Block92 Block93 Block94 Block95 Block Address 0040h 0041h 0042h 0043h 0044h 0045h 0046h 0047h 0048h 0049h 004Ah 004Bh 004Ch 004Dh 004Eh 004Fh 0050h 0051h 0052h 0053h 0054h 0055h 0056h 0057h 0058h 0059h 005Ah 005Bh 005Ch 005Dh 005Eh 005Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block96 Block97 Block98 Block99 Block100 Block101 Block102 Block103 Block104 Block105 Block106 Block107 Block108 Block109 Block110 Block111 Block112 Block113 Block114 Block115 Block116 Block117 Block118 Block119 Block120 Block121 Block122 Block123 Block124 Block125 Block126 Block127 Block Address 0060h 0061h 0062h 0063h 0064h 0065h 0066h 0067h 0068h 0069h 006Ah 006Bh 006Ch 006Dh 006Eh 006Fh 0070h 0071h 0072h 0073h 0074h 0075h 0076h 0077h 0078h 0079h 007Ah 007Bh 007Ch 007Dh 007Eh 007Fh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 18 OneNAND512(KFG1216x2A-xxB5) Block Block128 Block129 Block130 Block131 Block132 Block133 Block134 Block135 Block136 Block137 Block138 Block139 Block140 Block141 Block142 Block143 Block144 Block145 Block146 Block147 Block148 Block149 Block150 Block151 Block152 Block153 Block154 Block155 Block156 Block157 Block158 Block159 Block Address 0080h 0081h 0082h 0083h 0084h 0085h 0086h 0087h 0088h 0089h 008Ah 008Bh 008Ch 008Dh 008Eh 008Fh 0090h 0091h 0092h 0093h 0094h 0095h 0096h 0097h 0098h 0099h 009Ah 009Bh 009Ch 009Dh 009Eh 009Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block160 Block161 Block162 Block163 Block164 Block165 Block166 Block167 Block168 Block169 Block170 Block171 Block172 Block173 Block174 Block175 Block176 Block177 Block178 Block179 Block180 Block181 Block182 Block183 Block184 Block185 Block186 Block187 Block188 Block189 Block190 Block191 Block Address 00A0h 00A1h 00A2h 00A3h 00A4h 00A5h 00A6h 00A7h 00A8h 00A9h 00AAh 00ABh 00ACh 00ADh 00AEh 00AFh 00B0h 00B1h 00B2h 00B3h 00B4h 00B5h 00B6h 00B7h 00B8h 00B9h 00BAh 00BBh 00BCh 00BDh 00BEh 00BFh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 19 OneNAND512(KFG1216x2A-xxB5) Block Block192 Block193 Block194 Block195 Block196 Block197 Block198 Block199 Block200 Block201 Block202 Block203 Block204 Block205 Block206 Block207 Block208 Block209 Block210 Block211 Block212 Block213 Block214 Block215 Block216 Block217 Block218 Block219 Block220 Block221 Block222 Block223 Block Address 00C0h 00C1h 00C2h 00C3h 00C4h 00C5h 00C6h 00C7h 00C8h 00C9h 00CAh 00CBh 00CCh 00CDh 00CEh 00CFh 00D0h 00D1h 00D2h 00D3h 00D4h 00D5h 00D6h 00D7h 00D8h 00D9h 00DAh 00DBh 00DCh 00DDh 00DEh 00DFh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block224 Block225 Block226 Block227 Block228 Block229 Block230 Block231 Block232 Block233 Block234 Block235 Block236 Block237 Block238 Block239 Block240 Block241 Block242 Block243 Block244 Block245 Block246 Block247 Block248 Block249 Block250 Block251 Block252 Block253 Block254 Block255 Block Address 00E0h 00E1h 00E2h 00E3h 00E4h 00E5h 00E6h 00E7h 00E8h 00E9h 00EAh 00EBh 00ECh 00EDh 00EEh 00EFh 00F0h 00F1h 00F2h 00F3h 00F4h 00F5h 00F6h 00F7h 00F8h 00F9h 00FAh 00FBh 00FCh 00FDh 00FEh 00FFh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 20 OneNAND512(KFG1216x2A-xxB5) Block Block256 Block257 Block258 Block259 Block260 Block261 Block262 Block263 Block264 Block265 Block266 Block267 Block268 Block269 Block270 Block271 Block272 Block273 Block274 Block275 Block276 Block277 Block278 Block279 Block280 Block281 Block282 Block283 Block284 Block285 Block286 Block287 Block Address 0100h 0101h 0102h 0103h 0104h 0105h 0106h 0107h 0108h 0109h 010Ah 010Bh 010Ch 010Dh 010Eh 010Fh 0110h 0111h 0112h 0113h 0114h 0115h 0116h 0117h 0118h 0119h 011Ah 011Bh 011Ch 011Dh 011Eh 011Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block288 Block289 Block290 Block291 Block292 Block293 Block294 Block295 Block296 Block297 Block298 Block299 Block300 Block301 Block302 Block303 Block304 Block305 Block306 Block307 Block308 Block309 Block310 Block311 Block312 Block313 Block314 Block315 Block316 Block317 Block318 Block319 Block Address 0120h 0121h 0122h 0123h 0124h 0125h 0126h 0127h 0128h 0129h 012Ah 012Bh 012Ch 012Dh 012Eh 012Fh 0130h 0131h 0132h 0133h 0134h 0135h 0136h 0137h 0138h 0139h 013Ah 013Bh 013Ch 013Dh 013Eh 013Fh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 21 OneNAND512(KFG1216x2A-xxB5) Block Block320 Block321 Block322 Block323 Block324 Block325 Block326 Block327 Block328 Block329 Block330 Block331 Block332 Block333 Block334 Block335 Block336 Block337 Block338 Block339 Block340 Block341 Block342 Block343 Block344 Block345 Block346 Block347 Block348 Block349 Block350 Block351 Block Address 0140h 0141h 0142h 0143h 0144h 0145h 0146h 0147h 0148h 0149h 014Ah 014Bh 014Ch 014Dh 014Eh 014Fh 0150h 0151h 0152h 0153h 0154h 0155h 0156h 0157h 0158h 0159h 015Ah 015Bh 015Ch 015Dh 015Eh 015Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block352 Block353 Block354 Block355 Block356 Block357 Block358 Block359 Block360 Block361 Block362 Block363 Block364 Block365 Block366 Block367 Block368 Block369 Block370 Block371 Block372 Block373 Block374 Block375 Block376 Block377 Block378 Block379 Block380 Block381 Block382 Block383 Block Address 0160h 0161h 0162h 0163h 0164h 0165h 0166h 0167h 0168h 0169h 016Ah 016Bh 016Ch 016Dh 016Eh 016Fh 0170h 0171h 0172h 0173h 0174h 0175h 0176h 0177h 0178h 0179h 017Ah 017Bh 017Ch 017Dh 017Eh 017Fh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 22 OneNAND512(KFG1216x2A-xxB5) Block Block384 Block385 Block386 Block387 Block388 Block389 Block390 Block391 Block392 Block393 Block394 Block395 Block396 Block397 Block398 Block399 Block400 Block401 Block402 Block403 Block404 Block405 Block406 Block407 Block408 Block409 Block410 Block411 Block412 Block413 Block414 Block415 Block Address 0180h 0181h 0182h 0183h 0184h 0185h 0186h 0187h 0188h 0189h 018Ah 018Bh 018Ch 018Dh 018Eh 018Fh 0190h 0191h 0192h 0193h 0194h 0195h 0196h 0197h 0198h 0199h 019Ah 019Bh 019Ch 019Dh 019Eh 019Fh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block416 Block417 Block418 Block419 Block420 Block421 Block422 Block423 Block424 Block425 Block426 Block427 Block428 Block429 Block430 Block431 Block432 Block433 Block434 Block435 Block436 Block437 Block438 Block439 Block440 Block441 Block442 Block443 Block444 Block445 Block446 Block447 Block Address 01A0h 01A1h 01A2h 01A3h 01A4h 01A5h 01A6h 01A7h 01A8h 01A9h 01AAh 01ABh 01ACh 01ADh 01AEh 01AFh 01B0h 01B1h 01B2h 01B3h 01B4h 01B5h 01B6h 01B7h 01B8h 01B9h 01BAh 01BBh 01BCh 01BDh 01BEh 01BFh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 23 OneNAND512(KFG1216x2A-xxB5) Block Block448 Block449 Block450 Block451 Block452 Block453 Block454 Block455 Block456 Block457 Block458 Block459 Block460 Block461 Block462 Block463 Block464 Block465 Block466 Block467 Block468 Block469 Block470 Block471 Block472 Block473 Block474 Block475 Block476 Block477 Block478 Block479 Block Address 01C0h 01C1h 01C2h 01C3h 01C4h 01C5h 01C6h 01C7h 01C8h 01C9h 01CAh 01CBh 01CCh 01CDh 01CEh 01CFh 01D0h 01D1h 01D2h 01D3h 01D4h 01D5h 01D6h 01D7h 01D8h 01D9h 01DAh 01DBh 01DCh 01DDh 01DEh 01DFh Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB Block Block480 Block481 Block482 Block483 Block484 Block485 Block486 Block487 Block488 Block489 Block490 Block491 Block492 Block493 Block494 Block495 Block496 Block497 Block498 Block499 Block500 Block501 Block502 Block503 Block504 Block505 Block506 Block507 Block508 Block509 Block510 Block511 Block Address 01E0h 01E1h 01E2h 01E3h 01E4h 01E5h 01E6h 01E7h 01E8h 01E9h 01EAh 01EBh 01ECh 01EDh 01EEh 01EFh 01F0h 01F1h 01F2h 01F3h 01F4h 01F5h 01F6h 01F7h 01F8h 01F9h 01FAh 01FBh 01FCh 01FDh 01FEh 01FFh FLASH MEMORY Page and Sector Address 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh 0000h~00FFh Size 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 128KB 24 OneNAND512(KFG1216x2A-xxB5) 2.7.2 Internal Memory Spare Area Assignment FLASH MEMORY The figure below shows the assignment of the spare area in the Internal Memory NAND Array. Spare Spare Spare Spare Main area Main area Main area Main area area area area area 256W 256W 256W 256W 8W 8W 8W 8W Note1 Note1 Note2 Note2 Note2 Note3 Note3 Note3 ECCm ECCm ECCm 1st 2nd 3rd LSB LSB MSB MSB LSB ECCs 1st ECCs 2nd Note3 Note4 Note4 Spare Area Assignment in the Internal Memory NAND Array Information Word 1 2 3 4 Byte LSB MSB LSB MSB LSB MSB LSB MSB LSB 5 MSB LSB 6 MSB LSB MSB 8 LSB MSB 3 4 Dedicated to internal ECC logic. Read Only. ECCm 1st for main area data Dedicated to internal ECC logic. Read Only. ECCm 2nd for main area data Dedicated to internal ECC logic. Read Only. ECCm 3rd for main area data Dedicated to internal ECC logic. Read Only. ECCs 1st for 2nd word of spare area data Dedicated to internal ECC logic. Read Only. ECCs 2nd for 3rd word of spare area data Reserved for future use Available to the user 3 Reserved for future use 2 Managed by internal ECC logic for Logical Sector Number data Note 1 Description Invalid Block information in 1st and 2nd page of an invalid block { { { { { { { { 1st W 2nd W 3rd W 4th W 5th W 6th W 7th W 8th W 7 MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB MSB 25 OneNAND512(KFG1216x2A-xxB5) 2.7.3 External Memory (BufferRAM) Address Map FLASH MEMORY The following table shows the External Memory address map in Word and Byte Order. Note that the data output is unknown while host reads a register bit of reserved area. Division Main area (64KB) Address (word order) 0000h~00FFh 0100h~01FFh 0200h~02FFh 0300h~03FFh 0400h~04FFh 0500h~05FFh 0600h~06FFh 0700h~07FFh 0800h~08FFh 0900h~09FFh 0A00h~7FFFh Address (byte order) 00000h~001FEh 00200h~003FEh 00400h~005FEh 00600h~007FEh 00800h~009FEh 00A00h~00BFEh 00C00h~00DFEh 00E00h~00FFEh 01000h~011FEh 01200h~013FEh 01400h~0FFFEh 10000h~1000Eh 10010h~1001Eh 10020h~1002Eh 10030h~1003Eh 10040h~1004Eh 10050h~1005Eh 10060h~1006Eh 10070h~1007Eh 10080h~1008Eh 10090h~1009Eh 100A0h~11FFEh 12000h~17FFEh 18000h~19FFEh 512B 512B 512B 512B 512B 512B 512B 512B 512B 512B 59K 16B 16B 16B 16B 16B 16B 16B 16B 16B 16B 8032B 24KB 8KB 16KB 8KB Size (total 128KB) 1KB R Usage BootM 0 BootM 1 DataM 0_0 DataM 0_1 DataM 0_2 DataM 0_3 DataM 1_0 DataM 1_1 DataM 1_2 DataM 1_3 Description BootRAM Main sector0 BootRAM Main sector1 DataRAM Main page0/sector0 DataRAM Main page0/sector1 DataRAM Main page0/sector2 DataRAM Main page0/sector3 DataRAM Main page1/sector0 DataRAM Main page1/sector1 DataRAM Main page1/sector2 DataRAM Main page1/sector3 Reserved BootRAM Spare sector0 BootRAM Spare sector1 DataRAM Spare page0/sector0 DataRAM Spare page0/sector1 DataRAM Spare page0/sector2 DataRAM Spare page0/sector3 DataRAM Spare page1/sector0 DataRAM Spare page1/sector1 DataRAM Spare page1/sector2 DataRAM Spare page1/sector3 Reserved Reserved Reserved Reserved Registers 4KB R/W 59K 32B R Reserved BootS 0 BootS 1 DataS 0_0 DataS 0_1 DataS 0_2 DataS 0_3 DataS 1_0 DataS 1_1 DataS 1_2 DataS 1_3 Spare area (8KB) 8000h~8007h 8008h~800Fh 8010h~8017h 8018h~801Fh 8020h~8027h 8028h~802Fh 8030h~8037h 8038h~803Fh 8040h~8047h 8048h~804Fh 8050h~8FFFh 128B R/W 8032B 24KB 8KB 16KB 8KB R or R/W Reserved Reserved Reserved Reserved Registers Reserved (24KB) Reserved (8KB) Reserved (16KB) Registers (8KB) 9000h~BFFFh C000h~CFFFh D000h~EFFFh 1A000h~1DFFEh F000h~FFFFh 1E000h~1FFFEh 26 OneNAND512(KFG1216x2A-xxB5) 2.7.4 External Memory Detail Map Information FLASH MEMORY The tables below show Word Order Address Map information for the BootRAM and DataRAM main and spare areas. • BootRAM(Main area) -0000h~01FFh: 2(sector) x 512byte(NAND main area) = 1KB 0000h~00FFh(512B) BootM 0 (sector 0 of page 0) • DataRAM(Main area) -0200h~09FFh: 8(sector) x 512byte(NAND main area) = 4KB 0200h~02FFh(512B) DataM 0_0 (sector 0 of page 0) 0600h~06FFh(512B) DataM 1_0 (sector 0 of page 1) • BootRAM(Spare area) -8000h~800Fh: 2(sector) x 16byte(NAND spare area) = 32B 8000h~8007h(16B) BootS 0 (sector 0 of page 0) • DataRAM(Spare area) -8010h~804Fh: 8(sector) x 16byte(NAND spare area) = 128B 8010h~8017h(16B) DataS 0_0 (sector 0 of page 0) 8030h~8037h(16B) DataS 1_0 (sector 0 of page 1) 8018h~801Fh(16B) DataS 0_1 (sector 1 of page 0) 8038h~803Fh(16B) DataS 1_1 (sector 1 of page 1) 8020h~8027h(16B) DataS 0_2 (sector 2 of page 0) 8040h~8047h(16B) DataS 1_2 (sector 2 of page 1) 8028h~802Fh(16B) DataS 0_3 (sector 3 of page 0) 8048h~804Fh(16B) DataS 1_3 (sector 3 of page 1) 8008h~800Fh(16B) BootS 1 (sector 1 of page 0) 0300h~03FFh(512B) DataM 0_1 (sector 1 of page 0) 0700h~07FFh(512B) DataM 1_1 (sector 1 of page 1) 0400h~04FFh(512B) DataM 0_2 (sector 2 of page 0) 0800h~08FFh(512B) DataM 1_2 (sector 2 of page 1) 0500h~05FFh(512B) DataM 0_3 (sector 3 of page 0) 0900h~09FFh(512B) DataM 1_3 (sector 3 of page 1) 0100h~01FFh(512B) BootM 1 (sector 1 of page 0) *NAND Flash array consists of 2KB page size and 128KB block size. 27 OneNAND512(KFG1216x2A-xxB5) 2.7.5 Buf. BootS 0 FLASH MEMORY External Memory Spare Area Assignment Equivalent to 1word of NAND Flash Word Address 8000h 8001h 8002h 8003h 8004h 8005h 8006h 8007h Byte Address 10000h 10002h 10004h 10006h 10008h 1000Ah 1000Ch 1000Eh 10010h 10012h 10014h 10016h 10018h 1001Ah 1001Ch 1001Eh 10020h 10022h 10024h 10026h 10028h 1002Ah 1002Ch 1002Eh 10030h 10032h 10034h 10036h 10038h 1003Ah 1003Ch 1003Eh F E D C B A 9 8 BI 7 6 5 4 3 2 1 0 Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1 ) st Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Free Usage BI Reserved for the current and future use FFh(Reserved for the future use) BootS 1 8008h 8009h 800Ah 800Bh 800Ch 800Dh 800Eh 800Fh Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1 ) st Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Free Usage BI Reserved for the current and future use FFh(Reserved for the future use) DataS 0_0 8010h 8011h 8012h 8013h 8014h 8015h 8016h 8017h Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) FFh(Reserved for the future use) Free Usage BI Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) FFh(Reserved for the future use) Free Usage Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use DataS 0_1 8018h 8019h 801Ah 801Bh 801Ch 801Dh 801Eh 801Fh 28 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY Buf. DataS 0_2 Word Byte Address Address 8020h 8021h 8022h 8023h 8024h 8025h 8026h 8027h 10040h 10042h 10044h 10046h 10048h 1004Ah 1004Ch 1004Eh 10050h 10052h 10054h 10056h 10058h 1005Ah 1005Ch 1005Eh 10060h 10062h 10064h 10066h 10068h 1006Ah 1006Ch 1006Eh 10070h 10072h 10074h 10076h 10078h 1007Ah 1007Ch 1007Eh 10080h 10082h 10084h 10086h 10088h 1008Ah 1008Ch 1008Eh F E D C B A 9 8 BI 7 6 5 4 3 2 1 0 Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) Reserved for the future use Free Usage BI Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) Reserved for the future use Free Usage BI Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1 ) st Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use DataS 0_3 8028h 8029h 802Ah 802Bh 802Ch 802Dh 802Eh 802Fh Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use DataS 1_0 8030h 8031h 8032h 8033h 8034h 8035h 8036h 8037h Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Free Usage BI Reserved for the current and future use Reserved for the future use DataS 1_1 8038h 8039h 803Ah 803Bh 803Ch 803Dh 803Eh 803Fh Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1 ) st Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Free Usage BI Reserved for the current and future use Reserved for the future use DataS 1_2 8040h 8041h 8042h 8043h 8044h 8045h 8046h 8047h Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) Reserved for the future use Free Usage Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use 29 OneNAND512(KFG1216x2A-xxB5) Equivalent to 1word of NAND Flash FLASH MEMORY Buf. DataS 1_3 Word Byte Address Address 8048h 8049h 804Ah 804Bh 804Ch 804Dh 804Eh 804Fh 10090h 10092h 10094h 10096h 10098h 1009Ah 1009Ch 1009Eh F E D C B A 9 8 BI 7 6 5 4 3 2 1 0 Managed by Internal ECC logic Reserved for the future use ECC Code for Main area data (2nd) ECC Code for Spare area data (1st) Reserved for the future use Free Usage Managed by Internal ECC logic ECC Code for Main area data (1st) ECC Code for Main area data (3rd) ECC Code for Spare area data (2nd) Reserved for the current and future use NOTE: - BI: Bad block Information >Host can use complete spare area except BI and ECC code area. For example, Host can write data to Spare area buffer except for the area controlled by ECC logic at program operation. >In case of ’with ECC’ mode, OneNAND automatically generates ECC code for both main and spare data of memory during program operation, but does not update ECC code to spare bufferRAM during load operation. >When loading/programming spare area, spare area BufferRAM address(BSA) and BufferRAM sector count(BSC) is chosen via Start buffer register as it is. 30 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.8 2.8.1 Registers Register Address Map Section 2.8 of this specification provides information about the OneNAND512 registers. This map describes the register addresses, register name, register description, and host accessibility. Address (word order) F000h F001h F002h F003h F004h F005h F006h F007h~F0FFh F100h F101h F102h F103h F104h F105h F106h F107h F108h~F1FFh Address (byte order) 1E000h 1E002h 1E004h 1E006h 1E008h 1E00Ah 1E00Ch 1E00Eh~1E1FEh 1E200h 1E202h 1E204h 1E206h 1E208h 1E20Ah 1E20Ch 1E20Eh 1E210h~1E3FEh Host Access R R R R R R R R/W R/W R/W R/W R/W Device identification N/A Data buffer size Boot buffer size Amount of data/boot buffers Info about technology Reserved for user NAND Flash Block Address Reserved Destination Block address for Copy back program Destination Page & Sector address for Copy back program N/A N/A N/A NAND Flash Page & Sector address Reserved for user Buffer Number for the page data transfer to/from the memory and the start Buffer Address The meaning is with which buffer to start and how many buffers to use for the data transfer Reserved for user Reserved for vendor specific purposes Host control and memory operation commands memory and Host Interface Configuration N/A Reserved for user Reserved for vendor specific purposes Controller Status and result of memory operation Memory Command Completion Interrupt Status Reserved for user Start memory block address in Write Protection mode Name Manufacturer ID Device ID Version ID Data Buffer size Boot Buffer size Amount of buffers Technology Reserved Start address 1 Start address 2 Start address 3 Start address 4 Start address 5 Start address 6 Start address 7 Start address 8 Reserved Description Manufacturer identification F200h 1E400h Start Buffer R/W F201h~F207h F208h~F21Fh F220h F221h F222h F223h~F22Fh F230h~F23Fh F240h F241h F242h~F24Bh F24Ch 1E402h~1E40Eh 1E410h~1E43Eh 1E440h 1E442h 1E444h 1E446h~1E45Eh 1E460h~1E47Eh 1E480h 1E482h 1E484h~1E496h 1E498h Reserved Reserved Command System Configuration 1 System Configuration 2 Reserved Reserved Controller Status Interrupt Reserved Start Block Address R/W R, R/W R R/W R/W 31 OneNAND512(KFG1216x2A-xxB5) Address (word order) F24Dh F24Eh F24Fh~FEFFh FF00h FF01h FF02h FF03h FF04h FF05h FF06h FF07h FF08h FF09h~FFFFh Address (byte order) 1E49Ah 1E49Ch 1E49Eh~1FDFEh 1FE00h 1FE02h 1FE04h 1FE06h 1FE08h 1FE0Ah 1FE0Ch 1FE0Eh 1FE10h 1FE12h~1FFFEh Host Access R/W R R R R R R R R R R Reserved for user FLASH MEMORY Name Reserved Write Protection Status Reserved ECC Status Register ECC Result of main area data ECC Result of spare area data ECC Result of main area data ECC Result of spare area data ECC Result of main area data ECC Result of spare area data ECC Result of main area data ECC Result of spare area data Reserved Description Current memory Write Protection status (unlocked/locked/tight-locked) Reserved for user ECC status of sector ECC error position of Main area data error for first selected Sector ECC error position of Spare area data error for first selected Sector ECC error position of Main area data error for second selected Sector ECC error position of Spare area data error for second selected Sector ECC error position of Main area data error for third selected Sector ECC error position of Spare area data error for third selected Sector ECC error position of Main area data error for fourth selected Sector ECC error position of Spare area data error for fourth selected Sector Reserved for vendor specific purposes 2.8.2 Manufacturer ID Register F000h (R) This Read register describes the manufacturer's identification. Samsung Electronics Company manufacturer's ID is 00ECh. F000h, default = 00ECh 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ManufID 32 OneNAND512(KFG1216x2A-xxB5) 2.8.3 Device ID Register F001h (R) FLASH MEMORY This Read register describes the device. F001h, see table for default. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 DeviceID Device Identification Device Identification DeviceID [1:0] Vcc DeviceID [2] Muxed/Demuxed DeviceID [3] Single/DPP DeviceID [6:4] Density Device ID Default Description 00 = 1.8V, 01 = 2.65V/3.3V, 10/11 = reserved 0 = Muxed, 1 = Demuxed 0 = Single, 1 = DDP 000 = 128Mb, 001 = 256Mb, 010 = 512Mb, 011 = 1Gb, 100 = 2Gb Device KFG1216Q2A KFG1216D2A KFG1216U2A DeviceID[15:0] 0024h 0025h 0025h 33 OneNAND512(KFG1216x2A-xxB5) 2.8.4 Version ID Register F002h FLASH MEMORY This register is reserved for manufacturer 2.8.5 Data Buffer Size Register F003h (R) This Read register describes the size of the Data Buffer. F003h, default = 0800h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 DataBufSize Data Buffer Size Information Version Identification DataBufSize Description Total data buffer size in Words equal to 2 buffers of 1024 Words each (2 x 1024 = 211) in the memory interface 2.8.6 Boot Buffer Size Register F004h (R) This Read register describes the size of the Boot Buffer. F004h, default = 0200h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 BootBufSize Register Information BootBufSize Description Total boot buffer size in Words equal to 1 buffer of 512 Words (1 x 512 = 29) in the memory interface 34 OneNAND512(KFG1216x2A-xxB5) 2.8.7 Number of Buffers Register F005h (R) FLASH MEMORY This Read register describes the number of each Buffer. F005h, default = 0201h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 DataBufAmount BootBufAmount Number of Buffers Information Register Information DataBufAmount BootBufAmount Description The number of data buffers = 2 (2N, N=1) The number of boot buffers = 1 (2N, N=0) 2.8.8 Technology Register F006h (R) This Read register describes the internal NAND array technology. F006h, default = 0000h 15 14 13 12 11 10 9 8 Tech 7 6 5 4 3 2 1 0 Technology Information Technology NAND SLC NAND MLC Reserved Register Setting 0000h 0001h 0002h ~ FFFFh 35 OneNAND512(KFG1216x2A-xxB5) 2.8.9 Start Address1 Register F100h (R/W) FLASH MEMORY This Read/Write register describes the start address of the NAND Flash block address which will be loaded, programmed, or erased. F100h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 FBA 3 2 1 0 Reserved(00000) Device 512Mb Number of Block 512 FBA FBA[8:0] Start Address1 Information Register Information FBA Description NAND Flash Block Address 2.8.10 Start Address2 Register F101h (R/W) This register is reserved for future use. 36 OneNAND512(KFG1216x2A-xxB5) 2.8.11 Start Address3 Register F102h (R/W) FLASH MEMORY This Read/Write register describes the NAND Flash destination block address which will be copy back programmed. F102h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 FCBA 3 2 1 0 Reserved(000000) Device 512Mb Start Address3 Information Register Information FCBA Number of Block 512 FBA FCBA[8:0] Description NAND Flash Copy Back Block Address 2.8.12 Start Address4 Register F103h (R/W) This Read/Write register describes the NAND Flash destination page address in a block and the NAND Flash destination sector address in a page for copy back programming. F103h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 FCPA 4 3 2 1 FCSA 0 Reserved(00000000) Start Address4 Information Item FCPA FCSA Description NAND Flash Copy Back Page Address NAND Flash Copy Back Sector Address Default Value 000000 00 Range 000000 ~ 111111, 6 bits for 64 pages 00 ~ 11, 2 bits for 4 sectors 37 OneNAND512(KFG1216x2A-xxB5) 2.8.13 Start Address5 Register F104h This register is reserved for future use. FLASH MEMORY 2.8.14 Start Address6 Register F105h This register is reserved for future use. 2.8.15 Start Address7 Register F106h This register is reserved for future use. 2.8.16 Start Address8 Register F107h (R/W) This Read/Write register describes the NAND Flash start page address in a block for a page load, copy back program, or program operation and the NAND Flash start sector address in a page for a load, copy back program, or program operation. F107h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 FPA 4 3 2 1 FSA 0 Reserved (00000000) Start Address8 Information Item FPA FSA Description NAND Flash Page Address NAND Flash Sector Address Default Value 000000 00 Range 000000 ~ 111111, 6 bits for 64 pages 00 ~ 11, 2 bits for 4 sectors 38 OneNAND512(KFG1216x2A-xxB5) 2.8.17 Start Buffer Register F200h (R/W) FLASH MEMORY This Read/Write register describes the BufferRAM Sector Count (BSC) and BufferRAM Sector Address (BSA). The BufferRAM Sector Count (BSC) field specifies the number of sectors to be loaded, programmed, or copy back programmed. At 00 value (the default value), the number of sector is "4". If the internal RAM buffer reaches its maximum value of 11, it will count up to 0 value to meet the BSC value. For example, if BSA = 1101, BSC = 00, then the selected BufferRAM will count up from '1101 → 1110 → 1111 → 1100'. The BufferRAM Sector Address (BSA) is the sector 0~3 address in the internal BootRAM and DataRAM where data is placed. F200h, default = 0000h 15 14 13 12 11 10 BSA 9 8 7 6 5 4 3 2 1 BSC 0 Reserved(0000) Reserved(000000) Start Address8 Information Item BSA[3] BSA[2] BSA[1:0] Description Selection bit between BootRAM and DataRAM Selection bit between DataRAM0 and DataRAM1 Selection bit between Sector0 and Sector1 in the internal BootRAM Selection bit between Sector0 to Sector3 in the internal DataRAM Main area data 512B BootRAM 0 BootRAM 1 Spare area data 16B { BootRAM DataRAM 0_0 DataRAM0 DataRAM 0_1 DataRAM 0_2 DataRAM 0_3 DataRAM 1_0 DataRAM1 DataRAM 1_1 DataRAM 1_2 DataRAM 1_3 { BSA 0000 0001 Sector: (512 + 16) Byte 1000 1001 1010 1011 BSC 1100 1101 1110 1111 01 10 11 00 Number of Sectors 1 sector 2 sector 3 sector 4 sector 39 OneNAND512(KFG1216x2A-xxB5) 2.8.18 Command Register F220h (R/W) FLASH MEMORY This Read/Write register describes the operation of the OneNAND interface. Note that all commands should be issued right after INT is turned from ready state to busy state. (i.e. right after 0 is written to INT register.) After any command is issued and the corresponding operation is completed, INT goes back to ready state. (00F0h and 00F3h may be accepted during busy state of some operations. Refer to the rightmost column of the command register table below.) F220h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Command CMD 0000h 0013h 0080h 001Ah 001Bh 0023h 002Ah 002Ch 0071h 0094h 0095h 00B0h 0030h 00F0h 00F3h 0065h Operation Load single/multiple sector data unit into buffer Load single/multiple spare sector into buffer Program single/multiple sector data unit from buffer Program single/multiple spare data unit from buffer Copy back Program operation Unlock NAND array a block Lock NAND array a block Lock-tight NAND array a block Erase Verify Read Block Erase Multi-Block Erase Erase Suspend Erase Resume Reset NAND Flash Core Reset OneNAND OTP Access 2) 1) Acceptable command during busy 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h 00F0h, 00F3h NOTE: 1) 0080h programs both main and spare area, while 001Ah programs only spare area. Refer to chapter 5.8 for NOP limits in issuing these commands. When using 0080h and 001Ah command, Read-only part in spare area must be masked by FF. (Refer to chapter 2.7.2) 2) ’Reset OneNAND’(=Hot reset) command makes the registers and NAND Flash core into default state as the warm reset(=reset by RP pin). 40 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.8.19 System Configuration 1 Register F221h (R, R/W) This Read/Write register describes the system configuration. F221h, default = 40C0h 15 R/W RM 14 13 R/W BRL 12 11 10 R/W BL 9 8 R/W ECC 7 R/W RDY pol 6 R/W INT pol 5 R/W IOBE 4 R/W RDY Conf 3 2 R Reserved(000) 1 0 R BWPS Read Mode (RM) RM 0 1 Read Mode Information[15] Item RM Burst Read Latency (BRL) BRL 000 001 010 011 100 101 110 111 Latency Cycles 8(N/A) 9(N/A) 10(N/A) 3(up to 40MHz) 4(default, min.) 5 6 7 Definition Read Mode Description Selects between asynchronous read mode and synchronous read mode Read Mode Asynchronous read(default) Synchronous read Burst Read Latency (BRL) Information[14:12] Item BRL Definition Burst Read Latency Description Specifies the access latency in the burst read transfer after the initial access 41 OneNAND512(KFG1216x2A-xxB5) Burst Length (BL) BL 000 001 010 011 100 101~111 Burst Length (BL) Information[11:9] Item BL Definition Burst Length 32 words Reserved Burst Length(Main) FLASH MEMORY Burst Length(Spare) Continuous(default) 4 words 8 words 16 words N/A Description Specifies the size of the burst length during a synchronous read, wrap around and linear burst read Error Correction Code (ECC) Information[8] Item ECC Definition Error Correction Code Operation Description 0 = with correction (default) 1 = without correction (bypassed) RDY Polarity (RDYpol) Information[7] Item RDYpol Definition RDY signal polarity Description 1 = high for ready (default) 0 = low for ready INT Polarity (INTpol) Information[6] INTpol 0 1 (default) INT bit of Interrupt Status Register 0 (busy) 1 (ready) 0 (busy) 1 (ready) INT Pin output High Low Low High 42 OneNAND512(KFG1216x2A-xxB5) I/O Buffer Enable (IOBE) FLASH MEMORY IOBE is the I/O Buffer Enable for the INT and RDY signals. At startup, INT and RDY outputs are High-Z. Bits 6 and 7 become valid after IOBE is set to "1". IOBE can be reset by a Cold Reset or by writing "0" to bit 5 of System Configuration1 Register. I/O Buffer Enable Information[5] Item IOBE Definition I/O Buffer Enable for INT and RDY signals Description 0 = disable (default) 1 = enable RDY Configuration (RDY conf) RDY Configuration Information[4] Item RDY conf Definition RDY configuration Description 0=active one clock before valid data(default) 1=active with valid data Boot Buffer Write Protect Status (BWPS) Boot Buffer Write Protect Status Information[0] Item BWPS Definition Boot Buffer Write Protect Status Description 0 = locked (fixed) 43 OneNAND512(KFG1216x2A-xxB5) 2.8.20 System Configuration 2 Register F222h This register is reserved for future use. FLASH MEMORY 2.8.21 Controller Status Register F240h (R) This Read register shows the overall internal status of the OneNAND and the controller. F240h, default = 0000h 15 OnGo 14 Lock 13 Load 12 Prog 11 Erase 10 Error 9 Sus 8 7 6 OTPL 5 4 3 2 1 0 TO (0) Reserv RSTB ed(0) Reserved(000000) OnGo This bit shows the overall internal status of the OneNAND device. OnGo Information[15] Item OnGo Definition Internal Device Status Description 0 = ready 1 = busy Lock This bit shows whether the host is loading data from the NAND Flash array into the locked BootRAM or whether the host is performing a program/erase of a locked block of the NAND Flash array. Lock Information[14] Lock 0 1 Locked/Unlocked Check Result Unlocked Locked Load This bit shows the Load Operation status. Load Information[13] Item Load Definition Load Operation status Description 0 = ready (default) 1 = busy or error (see controller status output modes) 44 OneNAND512(KFG1216x2A-xxB5) Program This bit shows the Program Operation status. Program Information[12] Item Prog Definition Program Operation status FLASH MEMORY Description 0 = ready (default) 1 = busy or error (see controller status output modes) Erase This bit shows the Erase Operation status. Erase Information[11] Item Erase Definition Erase Operation status Description 0 = ready (default) 1 = busy or error (see controller status output modes) Error This bit shows the overall Error status, including Load Reset, Program Reset, and Erase Reset status. Error Information[10] Current Sector/Page Load/Program/CopyBack. Program/ Erase Result and Invalid Command Input Pass Fail Error 0 1 Erase Suspend (Sus) This bit shows the Erase Suspend status. Sus Information[9] Sus 0 1 Erase Suspend Status Erase Resume(Default) Erase Suspend, Program Ongoing(Susp.), Load Ongoing(Susp.), Program Fail(Susp.), Load Fail(Susp.), Invalid Command(Susp.) 45 OneNAND512(KFG1216x2A-xxB5) Reset / Busy (RSTB) This bit shows the Reset Operation status. RSTB Information[7] Item RSTB Definition Reset Operation Status FLASH MEMORY Description 0 = ready (default) 1 = busy (see controller status output modes) OTP Lock Status (OTPL) This bit shows whether the OTP block is locked or unlocked. Locking the OTP has the effect of a 'write-protect' to guard against accidental re-programming of data stored in the OTP block. The OTPL status bit is automatically updated at power-on. OTP Lock Information[6] OTPL 0 1 OTP Locked/Unlocked Status OTP Block Unlock Status(Default) OTP Block Lock Status(Disable OTP Program/Erase) Time Out (TO) This bit determines if there is a time out for load, program, copy back program, and erase operations. It is fixed at 'no time out'. TO Information[0] Item TO Definition Time Out Description 0 = no time out 46 OneNAND512(KFG1216x2A-xxB5) Controller Status Register Output Modes FLASH MEMORY Mode Load Ongoing Program Ongoing Erase Ongoing Reset Ongoing Multi-Block Erase Ongoing Erase Verify Read Ongoing Load OK Program OK Erase OK Erase Verify Read OK3) Load Fail1) Program Fail Erase Fail Erase Verify Read Fail3) Load Reset2) Program Reset Erase Reset Erase Suspend Program Lock Erase Lock Load Lock(Buffer Lock) OTP Program Fail(Lock) OTP Program Fail OTP Erase Fail Program Ongoing(Susp.) Load Ongoing(Susp.) Program Fail(Susp.) Load Fail(Susp.) Invalid Command Invalid Command(Susp.) Controller Status Register [15:0] OnGo 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 Lock 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 0 0 0 0 0 Load 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 Prog 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 1 0 1 0 1 0 0 0 Erase Error 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 Sus 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 0 1 Reserved(0) RSTB OTPL Reserved(0) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 00000 TO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 NOTE: 1. ERm and/or ERs bits in ECC status register at Load Fail case is 10. (2bits error - uncorrectable) 2. ERm and ERs bits in ECC status register at Load Reset case are 00. (No error) 3. Multi Block Erase status should be checked by Erase Verify Read operation. 47 OneNAND512(KFG1216x2A-xxB5) 2.8.22 Interrupt Status Register F241h (R/W) This Read/Write register shows status of the OneNAND interrupts. F241h, defaults = 8080h after Cold Reset; 8010h after Warm/Hot Reset 15 INT 14 13 12 11 10 9 8 7 RI 6 WI 5 EI 4 FLASH MEMORY 3 2 1 0 Reserved(0000000) RSTI Reserved(0000) Interrupt (INT) This is the master interrupt bit. The INT bit is wired directly to the INT pin on the chip. Upon writing '0' to the INT bit, the INT pin goes low if INTpol is high and goes high if INTpol is low. INT Interrupt [15] Status Conditions Default State Cold 1 sets itself to ’1’ One or more of RI, WI, RSTI and EI is set to ’1’, or 0065h, 0023h, 0071h, 002A and 002C commands are completed ’0’ is written to this bit, or Cold/Warm/Hot reset is being performed Warm/hot 1 Valid State 0 0→ 1 1→ 0 Interrupt Function off Pending clears to ’0’ off Read Interrupt (RI) This is the Read interrupt bit. RI Interrupt [7] Status Conditions Default State Cold 1 sets itself to ’1’ At the completion of an Load Operation (0000h, 0013h, Load Data into Buffer, or boot is done) ’0’ is written to this bit, or Cold/Warm/Hot reset is being performed Warm/hot 0 Valid State 0 0→ 1 1→ 0 Interrupt Function off Pending clears to ’0’ off Write Interrupt (WI) This is the Write interrupt bit. WI Interrupt [6] Status Conditions Default State Cold 0 sets itself to ’1’ clears to ’0’ At the completion of an Program Operation (0080h, 001Ah, 001Bh) ’0’ is written to this bit, or Cold/Warm/Hot reset is being performed Warm/hot 0 Valid State 0 0→ 1 1→ 0 Interrupt Function off Pending off 48 OneNAND512(KFG1216x2A-xxB5) Erase Interrupt (EI) This is the Erase interrupt bit. EI Interrupt [5] Status Conditions Default State Cold 0 sets itself to ’1’ clears to ’0’ At the completion of an Erase Operation (0094h, 0095h, 0030h) ’0’ is written to this bit, or Cold/Warm/Hot reset is being performed Warm/hot 0 FLASH MEMORY Valid State 0 0→ 1 1→ 0 Interrupt Function off Pending off Reset Interrupt (RSTI) This is the Reset interrupt bit. RSTI Interrupt [4] Status Conditions Default State Cold 0 sets itself to ’1’ clears to ’0’ At the completion of an Reset Operation (00B0h, 00F0h, 00F3h or warm reset is released) ’0’ is written to this bit Warm/hot 1 Valid State 0 0→ 1 1→ 0 Interrupt Function off Pending off 2.8.23 Start Block Address Register F24Ch (R/W) This Read/Write register shows the NAND Flash block address in the Write Protection mode. Setting this register precedes a 'Lock Block' command, 'Unlock Block' command, or ’Lock-Tight' Command. F24Ch, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 SBA 3 2 1 0 Reserved(0000000) Device 512Mb SBA Information[9:0] Item SBA Definition Start Block Address Number of Block 512 SBA [8:0] Description Precedes Lock Block, Unlock Block, or Lock-Tight commands 49 OneNAND512(KFG1216x2A-xxB5) 2.8.24 End Block Address Register F24Dh This register is reserved for future use. FLASH MEMORY 2.8.25 NAND Flash Write Protection Status Register F24Eh (R) This Read register shows the Write Protection Status of the NAND Flash memory array. To read the write protection status, FBA has to be set before reading the register. F24Eh, default = 0002h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 US 1 LS 0 LTS Reserved(0000000000000) Write Protection Status Information[2:0] Item US LS LTS Bit 2 1 0 Definition Unlocked Status Locked Status Locked-Tight Status Description 1 = current NAND Flash block is unlocked 1 = current NAND Flash block is locked 1 = current NAND Flash block is locked-tight 2.8.26 ECC Status Register FF00h (R) This Read register shows the Error Correction Status. The OneNAND can detect 1- or 2-bit errors and correct 1-bit errors. 3-bit or more error detection and correction is not supported. ECC can be performed on the NAND Flash main and spare memory areas. The ECC status register can also show the number of errors in a sector as a result of an ECC check in during a load operation. ECC status bits are also updated during a boot loading operation. FF00h, default = 0000h 15 14 13 ERs3 12 11 10 9 ERs2 8 7 ERm1 6 5 ERs1 4 3 ERm0 2 1 ERs0 0 ERm3 Error Status ERm, ERs 00 01 10 11 ECC Status No Error 1-bit error(correctable) 2 bits error (uncorrectable) Reserved ERm2 50 OneNAND512(KFG1216x2A-xxB5) ECC Information[15:0] FLASH MEMORY Item ERm0 Definition 1st selected sector of the main BufferRAM 2nd selected sector of the main BufferRAM 3rd selected sector of the main BufferRAM 4th selected sector of the main BufferRAM 1st selected sector of the spare BufferRAM 2nd selected sector of the spare BufferRAM 3rd selected sector of the spare BufferRAM 4th selected sector of the spare BufferRAM Description Status of errors in the 1st selected sector of the main BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 2nd selected sector of the main BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 3rd selected sector of the main BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 4th selected sector of the main BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 1st selected sector of the spare BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 2nd selected sector of the spare BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 3rd selected sector of the spare BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. Status of errors in the 4th selected sector of the spare BufferRAM as a result of an ECC check during a load operation. Also updated during a Bootload operation. ERm1 ERm2 ERm3 ERs0 ERs1 ERs2 ERs3 2.8.27 ECC Result of 1st Selected Sector, Main Area Data Register FF01h (R) This Read register shows the Error Correction result for the 1st selected sector of the main area data. ECCposWord0 is the error position address in the Main Area data of 256 words. ECCposIO0 is the error position address which selects 1 of 16 DQs. ECCposWord0 and ECCposIO0 are also updated at boot loading. FF01h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000) ECCposWord0 ECCposIO0 2.8.28 ECC Result of 1st Selected Sector, Spare Area Data Register FF02h (R) This Read register shows the Error Correction result for the 1st selected sector of the spare area data. ECClogSector0 is the error position address for 1.5 words of 2nd and 3rd words in the spare area. ECCposIO0 is the error position address which selects 1 of 16 DQs. ECClogSector0 and ECCposIO0 are also updated at boot loading. FF02h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000000000) ECClogSector0 ECCposIO0 51 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.8.29 ECC Result of 2nd Selected Sector, Main Area Data Register FF03h (R) This Read register shows the Error Correction result for the 2nd selected sector of the main area data. ECCposWord1 is the error position address in the Main Area data of 256 words. ECCposIO1 is the error position address which selects 1 of 16 DQs. ECCposWord1 and ECCposIO1 are also updated at boot loading. FF03h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000) ECCposWord1 ECCposIO1 2.8.30 ECC Result of 2nd Selected Sector, Spare Area Data Register FF04h (R) This Read register shows the Error Correction result for the 2nd selected sector of the spare area data. ECClogSector1 is the error position address for 1.5 words of 2nd and 3rd words in the spare area. ECCposIO1 is the error position address which selects 1 of 16 DQs. ECClogSector1 and ECCposIO1 are also updated at boot loading. FF04h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000000000) ECClogSector1 ECCposIO1 2.8.31 ECC Result of 3rd Selected Sector, Main Area Data Register FF05h (R) This Read register shows the Error Correction result for the 3rd selected sector of the main area data. ECCposWord2 is the error position address in the Main Area data of 256 words. ECCposIO2 is the error position address which selects 1 of 16 DQs. ECCposWord2 and ECCposIO2 are also updated at boot loading. FF05h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000) ECCposWord2 ECCposIO2 2.8.32 ECC Result of 3rd Selected Sector, Spare Area Data Register FF06h (R) This Read register shows the Error Correction result for the 3rd selected sector of the spare area data. ECClogSector2 is the error position address for 1.5 words of 2nd and 3rd words in the spare area. ECCposIO2 is the error position address which selects 1 of 16 DQs. ECClogSector2 and ECCposIO2 are also updated at boot loading. FF06h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000000000) ECClogSector2 ECCposIO2 52 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 2.8.33 ECC Result of 4th Selected Sector, Main Area Data Register FF07h (R) This Read register shows the Error Correction result for the 4th selected sector of the main area data. ECCposWord3 is the error position address in the Main Area data of 256 words. ECCposIO3 is the error position address which selects 1 of 16 DQs. ECCposWord3 and ECCposIO3 are also updated at boot loading. FF07h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000) ECCposWord3 ECCposIO3 2.8.34 ECC Result of 4th Selected Sector, Spare Area Data Register FF08h (R) This Read register shows the Error Correction result for the 4th selected sector of the spare area data. ECClogSector3 is the error position address for 1.5 words of 2nd and 3rd words in the spare area. ECCposIO3 is the error position address which selects 1 of 16 DQs. ECClogSector3 and ECCposIO3 are also updated at boot loading. FF08h, default = 0000h 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Reserved(0000000000) ECClogSector3 ECCposIO3 ECC Log Sector ECClogSector0~ECClogSector3 indicates the error position in the 2nd word and LSB of 3rd word in the spare area. Refer to note 2 in chapter 2.7.2 ECClogSector Information [5:4] ECClogSector 00 01 10, 11 Error Position 2nd word 3rd word Reserved 53 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.0 DEVICE OPERATION This section of the datasheet discusses the operation of the OneNAND device. It is followed by AC/DC Characteristics and Timing Diagrams which may be consulted for further information. The OneNAND supports either a command-based or a register-based interface for performing operations on the device including reading device ID, writing data to buffer etc. The command-based interface is active in the boot partition. Commands can only be written with a boot area address. Boot area data is only returned if no command has been issued prior to the read. When reading and programming the OneNAND, data handling is data unit-based. One data is read at the time from NAND Flash array. 3.1 Command Based Operation The command-based interface is active in the boot partition. Commands can only be written with a boot area address. Boot area data is only returned if no command has been issued prior to the read. The entire address range, except for the boot area, can be used for the data buffer. All commands are written to the boot partition. Writes outside the boot partition are treated as normal writes to the buffers or registers. The command consists of one or more cycles depending on the command. After completion of the command the device starts its execution. Writing incorrect information including address and data to the boot partition or writing an improper command will terminate the previous command sequence and make the device enter the ready status. The defined valid command sequences are stated in Command Sequences Table. Command Sequences Command Definition Read Data from Buffer Write Data to Buffer Reset OneNAND Load Data into Buffer3) Read Identification Data 6) Add Data Add Data Add Data Add Data Add Data Cycles 1 1 1 2 2 1st cycle DP 1) 2nd cycle Data DP Data BP2) 00F0h BP 00E0h BP 0090h BP 0000h4) XXXXh5) Data NOTE: 1) DP(Data Partition) : DataRAM Area 2) BP(Boot Partition) : BootRAM Area [0000h ~ 01FFh, 8000h ~ 800Fh] 3) Load Data into Buffer operation is available within a block(128KB) 4) Load 2KB unit into DataRAM0. Current Start address(FPA) is automatically incremented by 2KB unit after the load. 5) 0000h -> Data is Manufacturer ID 0001h -> Data is Device ID 0002h -> Current Block Write Protection Status 6) WE toggling can terminate ’Read Identification Data’ operation. 54 OneNAND512(KFG1216x2A-xxB5) 3.1.1 Reading Data From Buffer FLASH MEMORY The buffer memory can be read by addressing a Read to the desired buffer area. 3.1.2 Writing Data to Buffer The buffer memory can be written to by addressing a Write to a desired buffer area. 3.1.3 Reset OneNAND Command The Reset command is given by writing 00F0h to the boot partition address. Reset will return all default values into the device. 3.1.4 Load Data Into Buffer Command Load Data into Buffer command is a two-cycle command. Two sequential designated command activates this operation. Sequentially writing 00E0h and 0000h to the boot partition [0000h~01FFh, 8000h~800Fh] will load one page to DataRAM0. This operation refers to FBA and FPA. FSA, BSA, and BSC are not considered. At the end of this operation, FPA will be automatically increased by 1. So continuous issue of this command will sequentially load data in next page to DataRAM0. This page address increment is restricted within a block. The default value of FBA and FPA is 0. Therefore, initial issue of this command after power on will load the first page of memory, which is usually boot code. 3.1.5 Read Identification Data Command The Read Identification Data command consists of two cycles. It gives out the devices identification data according to the given address. The first cycle is 0090h to the boot partition address and second cycle is read from the addresses specified in Identification Data Description Table. Identification Data Description Address 0000h 0001h 0002h Data Out Manufacturer ID : 00ECh Device ID : refer to chapter 2.8.3 Current Block Write Protection Status 1) Note 1) To read the write protection status, FBA has to be set before issuing this command. 55 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.2 Device Bus Operation The device bus operations are shown in the table below. Operation Standby Warm Reset Asynchronous Write Asynchronous Read CE H X L L OE X X H L WE X X L H ADD0~15 X X Add. In Add. In DQ0~15 High-Z High-Z Data In Data Out RP H L H H CLK X X L L AVD X X X or L Load Initial Burst Address L H H Add. In X Burst Data Out High-Z High-Z H Burst Read Terminate Burst Read Cycle Terminate Burst Read Cycle via RP Terminate Current Burst Read Cycle and Start New Burst Read Cycle L L H X H X H X X X H X X X H L X X X X H H Add In High-Z H Note : L=VIL (Low), H=VIH (High), X=Don’t Care. 56 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.3 Reset Mode Operation The One NAND has 4 reset modes: Cold/Warm/Hot Reset, and NAND Flash Array Reset. Section 3.3 discusses the operation of these reset modes. The Register Reset Table shows the which registers are affected by the various types or Reset operations. Internal Register Reset Table Internal Registers F000h F001h F002h F003h F004h F005h F006h F100h F101h F102h F103h F107h F200h F220h F221h F240h F241h F24Ch F24Dh F24Eh FF00h FF01h FF02h FF03h FF04h FF05h FF06h FF07h FF08h Manufacturer ID Register (R) Device ID Register (R): OneNAND Version ID Register (R): N/A Data Buffer size Register (R) Boot Buffer size Register (R) Amount of Buffers Register (R) Technology Register (R) Start Address1 Register (R/W): FBA Start Address2 Register (R/W): Reserved Start Address3 Register (R/W): FCBA Start Address4 Register (R/W): FCPA, FCSA Start Address8 Register (R/W): FPA, FSA Start Buffer Register (R/W): BSA, BSC Command Register (R/W) System Configuration 1 Register (R/W) Controller Status Register (R) Interrupt Status Register (R/W) Start Block Address (R/W) End Block Address: N/A NAND Flash Write Protection Status (R) ECC Status Register (R) (Note2) ECC Result of Sector 0 Main area data Register(R) ECC Result of Sector 0 Spare area data Register (R) ECC Result of Sector 1 Main area data Register(R) ECC Result of Sector 1 Spare area data Register (R) ECC Result of Sector 2 Main area data Register(R) ECC Result of Sector 2 Spare area data Register (R) ECC Result of Sector 3 Main area data Register(R) ECC Result of Sector 3 Spare area data Register (R) Default Cold Reset 00ECh (Note 3) N/A 0800h 0200h 0201h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 40C0h 0000h 0000h N/A 0002h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h N/A N/A N/A N/A N/A N/A N/A 0000h 0000h 0000h 0000h 0000h 0000h 0000h 40C0h 0000h 8080h 0000h N/A 0002h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h Warm Reset (RP) N/A N/A N/A N/A N/A N/A N/A 0000h 0000h 0000h 0000h 0000h 0000h 0000h O (Note1) 0000h 8010h 0000h N/A 0002h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h Hot Hot NAND Flash Reset Reset Reset(00F0h) (00F3h) (BP-F0) N/A N/A N/A N/A N/A N/A N/A 0000h 0000h 0000h 0000h 0000h 0000h 0000h O (Note1) 0000h 8010h N/A N/A N/A 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h 0000h N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NOTE: 1) RDYpol, INTpol, IOBE is reset by Cold reset. The other bits are reset by Cold/Warm/Hot reset. 2) ECC Status Register & ECC Result Registers are reset when any command is issued. 3) Refer to Device ID Register F001h. 57 OneNAND512(KFG1216x2A-xxB5) 3.3.1 Cold Reset Mode Operation See Timing Diagram 6.11 FLASH MEMORY At system power-up, the voltage detector in the device detects the rising edge of Vcc and releases an internal power-up reset signal. This triggers bootcode loading. Bootcode loading means that the boot loader in the device copies designated sized data (1KB) from the beginning of memory into the BootRAM. This sequence is the Cold Reset of OneNAND. The POR(Power On Reset) triggering level is typically 1.5V. Boot code copy operation activates 400us after POR. Therefore, the system power should reach 1.7V within 400us from the POR triggering level for bootcode data to be valid. For 2.65V and 3.3V device, POR level is typically 1.8V and system power should reach 2.2V within 400us. It takes approximately 70us to copy 1KB of bootcode. Upon completion of loading into the BootRAM, it is available to be read by the host. The INT pin is not available until after IOBE = 1 and IOBE bit can be changed by host. 3.3.2 Warm Reset Mode Operation See Timing Diagrams 6.12 A Warm Reset means that the host resets the device by using the /RP pin. When the a /RP low is issued, the device logic stops all current operations and executes internal reset operation and resets current NAND Flash core operation synchronized with the falling edge of /RP. During an Internal Reset Operation, the device initializes internal registers and makes output signals go to default status. The BufferRAM data is kept unchanged after Warm/Hot reset operations. The device guarantees the logic reset operation in case /RP pulse is longer than tRP min. (200ns). The device may reset if tRP < tRP min(200ns), but this is not guaranteed. Warm reset will abort the current NAND Flash core operation. During a warm reset, the content of memory cells being altered is no longer valid as the data will be partially programmed or erased. Warm reset has no effect on contents of BootRAM and DataRAM. 3.3.3 Hot Reset Mode Operation See Timing Diagram 6.13 A Hot Reset means that the host resets the device by Reset command. The reset command can be either Command based or Register Based. Upon receiving the Reset command, the device logic stops all current operation and executes an internal reset operation and resets the current NAND Flash core operation. During an Internal Reset Operation, the device initializes internal registers and makes output signals go to default status. The BufferRAM data is kept unchanged after Warm/Hot reset operations. Hot reset will abort the current NAND Flash core operation. During a Hot reset, the content of memory cells being altered is no longer valid as the data will be partially programmed or erased. Hot reset has no effect on contents of BootRAM and DataRAM. 3.3.4 NAND Flash Core Reset Mode Operation See Timing Diagram 6.14 The Host can reset the NAND Flash Core operation by issuing a NAND Flash Core reset command. NAND Flash core reset will abort the current NAND Flash core operation. During a NAND Flash core reset, the content of memory cells being altered is no longer valid as the data will be partially programmed or erased. Hot reset has no effect on contents of BootRAM and DataRAM, as well as register values. 58 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.4 Write Protection Operation The OneNAND can be write-protected to prevent re-programming or erasure of data. The areas of write-protection are the BootRAM, and the NAND Flash Array. 3.4.1 BootRAM Write Protection Operation At system power-up, voltage detector in the device detects the rising edge of Vcc and releases the internal power-up reset signal which triggers bootcode loading. And the designated size data(1KB) is copied from the first page of the first block in the NAND flash array to the BootRAM. After the bootcode loading is completed, the BootRAM is always locked to protect the boot code from the accidental write. 3.4.2 NAND Flash Array Write Protection Operation The device has both hardware and software write protection of the NAND Flash array. Hardware Write Protection Operation The hardware write protection operation is implemented by executing a Cold or Warm Reset. On power up, the NAND Flash Array is in its default, locked state. The entire NAND Flash array goes to a locked state after a Cold or Warm Reset. Software Write Protection Operation The software write protection operation is implemented by writing a Lock command (002Ah) or a Lock-tight command (002Ch) to command register (F220h). Lock (002Ah) and Lock-tight (002Ch) commands write protects the block defined in the Start Block Address Register F24Ch. 3.4.3 NAND Array Write Protection States There are three lock states in the NAND Array: unlocked, locked, and locked-tight. OneNAND512 supports lock/unlock/lock-tight by one block, so each block should be locked/unlocked/locked-tight individually. Write Protection Status The current block Write Protection status can be read in NAND Flash Write Protection Status Register(F24Eh). There are three bits US, LS, LTS -, which are not cleared by hot reset. These Write Protection status registers are updated when FBA is set, and when Write Protection command is entered. The followings summarize locking status. example) In default, [2:0] values are 010. -> If host executes unlock block operation, then [2:0] values turn to 100. -> If host executes lock-tight block operation, then [2:0] values turn to 001. 59 OneNAND512(KFG1216x2A-xxB5) 3.4.3.1 Unlocked NAND Array Write Protection State FLASH MEMORY An Unlocked block can be programmed or erased. The status of an unlocked block can be changed to locked or locked-tight using the appropriate software command. (locked-tight state can be achieved via lock-tight command which follows lock command) Only one block can be released from lock state to unlock state with Unlock command and addresses. The unlocked block can be changed with new lock command. Therefore, each block has its own lock/unlock/lock-tight state. Unlocked Unlock Command Sequence: Start block address+Unlock block command (0023h) 3.4.3.2 Locked NAND Array Write Protection State A Locked block cannot be programmed or erased. All blocks default to a locked state following a Cold or Warm Reset. Unlocked blocks can be changed to locked using the Lock block command. The status of a locked block can be changed to unlocked or locked-tight using the appropriate software command. Locked Lock Command Sequence: Start block address+Lock block command (002Ah) 60 OneNAND512(KFG1216x2A-xxB5) 3.4.3.3 Locked-tight NAND Array Write Protection State FLASH MEMORY A block that is in a locked-tight state can only be changed to lock state after a Cold or Warm Reset. Unlock and Lock command sequences will not affect its state. This is an added level of write protection security. A block must first be set to a locked state before it can be changed to locked-tight using the Lock-tight command. locked-tight blocks will revert to a locked state following a Cold or Warm Reset. Locked-tight Lock-Tight Command Sequence: Start block address+Lock-tight block command (002Ch) 3.4.4 NAND Flash Array Write Protection State Diagram Lock RP pin: High & Start block address Lock block Command or Cold reset or Warm reset unlock Lock RP pin: High & Start block address +Unlock block Command Lock Power On RP pin: High & Start block address +Lock-tight block Command Lock Lock-tight Lock Cold reset or Warm reset 61 OneNAND512(KFG1216x2A-xxB5) Data Protection Operation Flow Diagram FLASH MEMORY Start Write ’SBA’ of Flash Add: F24Ch DQ=SBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’lock/unlock/lock-tight’ Command Add: F220h DQ=002Ah/0023h/002Ch Wait for INT register low to high transition Add: F241h DQ[15]=INT Lock/Unlock/Lock-Tight completed Note) Samsung strongly recommend to follow the above flow chart 62 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.5 Data Protection During Power Down Operation See Timing Diagram 6.15 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 POR level, about 1.3V. It is recommended that the /RP pin, which provides hardware protection, should be kept at VIL before power-down. 3.6 Load Operation See Timing Diagram 6.8 The Load operation is initiated by setting up the start address from which the data is to be loaded. The Load command is issued in order to initiate the load. During a Load operation, the device: -Transfers the data from NAND Flash array into the BufferRAM -ECC is checked and any detected and corrected error is reported in the status response as well as any unrecoverable error. Once the BufferRAM has been filled, an interrupt is issued to the host so that the contents of the BufferRAM can be read. The read from the BufferRAM can be an asynchronous read mode or synchronous read mode. The status information related to load operation can be checked by the host if required. The device has a dual data buffer memory architecture (DataRAM0, DataRAM1), each 2KB in size. Each DataRAM buffer has 4 Sectors. The device is capable of independent and simultaneous data-read operation from one data buffer and data-load operation to the other data buffer. Refer to the information for more details in section 3.12.1, "Read-While-Load Operation". Load Operation Flow Chart Diagram Start Write ’Load’ Command Add: F220h DQ=0000h or 0013h Write ’FBA’ of Flash Add: F100h DQ=FBA Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Wait for INT register low to high transition Add: F241h DQ[15]=INT Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC Read Controller Status Register Add: F240h DQ[10]=Error Write 0 to interrupt register Add: F241h DQ=0000h DQ[10]=0? YES Host reads data from DataRAM NO Map Out Read completed 63 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.7 Read Operation See Timing Diagrams 6.1, 6.2, 6.3, 6.4, 6.5 and 6.6 The device has two read modes; Asynchronous Read and Synchronous Burst Read. The initial state machine automatically sets the device into the Asynchronous Read Mode (RM=0) to prevent the spurious altering of memory content upon device power up or after a Hardware reset. No commands are required to retrieve data in Asynchronous Read Mode. The Synchronous Read Mode is enabled by setting RM bit of System Configuration1 Register (F221h) to Synchronous Read Mode (RM=1). See Section 2.8.19 for more information about System Configuration1 Register. 3.7.1 Asynchronous Read Mode Operation (RM=0) See Timing Diagrams 6.3, 6.4, 6.5 and 6.6 In an Asynchronous Read Mode, data is output with respect to a logic input, /AVD. Output data will appear on DQ15-DQ0 in when a valid address is asserted on A15-A0 while driving /AVD and /CE to VIL. / WE is held at VIH. The function of the /AVD signal is to latch the valid address. Address access time from /AVD low (tAA) is equal to the delay from valid addresses to valid output data. The Chip Enable access time (tCE) is equal to the delay from the falling edge of /CE to valid data at the outputs. The Output Enable access time (tOE) is the delay from the falling edge of /OE to valid data at the output. 3.7.2 Synchronous Read Mode Operation (RM=1) See Timing Diagrams 6.1 and 6.2 In a Synchronous Read Mode, data is output with respect to a clock input. The device is capable of a continuous linear burst operation and a fixed-length linear burst operation of a preset length. Burst address sequences for continuous and fixed-length burst operations are shown in the table below. Burst Address Sequences Start Addr. 0 Wrap around 1 2 . . Burst Address Sequence(Decimal) Continuous Burst 0-1-2-3-4-5-6... 1-2-3-4-5-6-7... 2-3-4-5-6-7-8... . . 4-word Burst 0-1-2-3-0... 1-2-3-0-1... 2-3-0-1-2... . . 8-word Burst 0-1-2-3-4-5-6-7-0... 1-2-3-4-5-6-7-0-1... 2-3-4-5-6-7-0-1-2... . . 16-word Burst 0-1-2-3-4-....-13-14-15-0... 1-2-3-4-5-....-14-15-0-1... 2-3-4-5-6-....-15-0-1-2... . . 32-word Burst 0-1-2-3-4-....-29-30-31-0... 1-2-3-4-5-....-30-31-0-1... 2-3-4-5-6-....-31-0-1-2... . . In the burst mode, the initial word will be output asynchronously, regardless of BRL. While the following words will be determined by BRL value. The latency is determined by the host based on the BRL bit setting in the System Configuration 1 Register. The default BRL is 4 latency cycles. At clock frequencies of 40MHz or lower, latency cycles can be reduced to 3. BRL can be set up to 7 latency cycles. The BRL registers can be read during a burst read mode by using the /AVD signal with an address. 64 OneNAND512(KFG1216x2A-xxB5) 3.7.2.1 Continuous Linear Burst Read Operation See Timing Diagram 6.2 FLASH MEMORY First Clock Cycle The initial word is output at tIAA after the rising edge of the first CLK cycle. The RDY output indicates the initial word is ready to the system by pulsing high. If the device is accessed synchronously while it is set to Asynchronous Read Mode, the first data can still be read out. Subsequent Clock Cycles Subsequent words are output (Burst Access Time from Valid Clock to Output) tBA after the rising edge of each successive clock cycle, which automatically increments the internal address counter. Terminating Burst Read The device will continue to output sequential burst data until the system asserts /CE high, or /RP low, wrapping around until it reaches the designated address (see Section 2.7.3 for address map information). Alternately, a Cold/Warm/Hot Reset, asserting /CE high, or a /WE low pulse will terminate the burst read operation. Synchronous Read Boundary Division BootRAM Main(0.5Kw) BrfferRAM0 Main(1Kw) BufferRAM1 Main(1Kw) Reserved Main BootRAM Spare(16w) BufferRAM0 Spare(32w) BufferRAM1 Spare(32w) Reserved Spare Reserved Register Register(4Kw) Add.map(word order) 0000h~01FFh 0200h~05FFh 0600h~09FFh 0A00h~7FFFh 8000H~800Fh 8010h~802Fh 8030h~804Fh 8050h~8FFFh 9000h~EFFFh F000h~FFFFh Not Support Not Support Not Support Not Support Not Support * Reserved area is not available on Synchronous read 3.7.2.2 4-, 8-, 16-, 32-Word Linear Burst Read Operation See Timing Diagram 6.1 An alternate Burst Read Mode enables a fixed number of words to be read from consecutive address. The device supports a burst read from consecutive addresses of 4-, 8-, 16-, and 32-words with a linear-wrap around. When the last word in the burst has been reached, /CE and /OE are asserted high. In this mode, the start address for the burst read can be any address of the address map with one exception. The device does not support a 32-word linear burst read on the spare area of the BufferRAM. 65 OneNAND512(KFG1216x2A-xxB5) 3.7.2.3 Programmable Burst Read Latency Operation See Timing Diagrams 6.1 and 6.2 FLASH MEMORY Upon power up, the number of initial clock cycles from Valid Address (/AVD) to initial data defaults to four clocks. The number of clock cycles (n) which are inserted after the clock which is latching the address. The host can read the first data with the (n+1)th rising edge. The number of total initial access cycles is programmable from three to seven cycles. After the number of programmed burst clock cycles is reached, the rising edge of the next clock cycle triggers the next burst data. Four Clock Burst Read Latency (default condition) Rising edge of the clock cycle following last read latency triggers next burst data CE ≈ CLK ≈ -1 AVD 0 1 2 3 4 ≈ tBA A0: A15 DQ0: DQ15 tIAA OE Hi-Z tRDYS Valid Address ≈ D6 D7 D0 D1 D2 D3 D7 D0 ≈ Hi-Z ≈ RDY tRDYA 3.7.3 Handshaking Operation The handshaking feature allows the host system to simply monitor the RDY signal from the device to determine when the initial word of burst data is ready to be read. To set the number of initial cycles for optimal burst mode, the host should use the programmable burst read latency configuration (see Section 2.8.19, "System Configuration1 Register"). The rising edge of RDY which is derived from one cycles ahead of data fetch clock indicates the initial word of valid burst data. 66 OneNAND512(KFG1216x2A-xxB5) 3.7.4 Output Disable Mode Operation FLASH MEMORY When the CE or OE input is at VIH, output from the device is disabled. The outputs are placed in the high impedance state. 3.8 Program Operation See Timing Diagram 6.9 The Program operation is used to program data from the on-chip BufferRAMs into the NAND FLASH memory array. The device has two 2KB data buffers, each 1 Page (2KB + 64B) in size. Each page has 4 sectors of 512B each main area and 16B spare area. The device can be programmed in units of 1~4 sectors. The architecture of the DataRAMs permits a simultaneous data-write operation from the Host to one of data buffers and a program operation from the other data buffer to the NAND Flash Array memory. Refer to Section 3.12.2, "Write While Program Operation", for more information. 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. Page 63 (64) : Page 63 (64) : Page 31 (32) : Page 31 (1) : Page 2 Page 1 Page 0 (3) (2) (1) Page 2 Page 1 Page 0 (3) (32) (2) Data register From the LSB page to MSB page DATA IN: Data (1) Data (64) Data register Ex.) Random page program (Prohibition) DATA IN: Data (1) Data (64) 67 OneNAND512(KFG1216x2A-xxB5) Program Operation Flow Diagram FLASH MEMORY Start Write 0 to interrupt register Add: F241h DQ=0000h Write ’Program’ Command Add: F220h DQ=0080h or 001Ah Write Data into DataRAM2) ADD: DP DQ=Data-in Data Input Completed? YES Write ’FBA’ of Flash Add: F100h DQ=FBA NO Wait for INT register low to high transition Add: F241h DQ[15]=INT Read Controller Status Register Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Add: F240h DQ[10]=Error Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC DQ[10]=0? YES Program completed NO Program Error * Note : If program operation results in an error, map out the block including the page in error and copy the target data to another block. 1) This must happen before data input 2) Data input could be done anywhere between "Start" and "Write Program Command". During the execution of the Internal Program Routine, the host is not required to provide any further controls or timings. Furthermore, all commands, except a Reset command, will be ignored. A reset during a program operation will cause data corruption at the corresponding location. If a program error is detected at the completion of the Internal Program Routine, map out the block, including the page in error, and copy the target data to another block. An error is signaled if DQ10 = "1" of Controller Status Register(F240h) . Data input from the Host to the DataRAM can be done at any time during the Internal Program Routine after "Start" but before the "Write Program Command" is written. 68 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.9 Copy-Back Program Operation The Copy-Back program is configured to quickly rewrite data stored in one page without utilizing memory other than OneNAND. 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 block is updated and the rest of the block also need to be copied to the newly assigned free block. Data from the source page is saved in one of the on-chip DataRAM buffers and then programmed directly into the destination page. The DataRAM overwrites the previous data using the Buffer Sector Address (BSA) and Buffer Sector Count (BSC). The Copy-Back Program Operation does this by performing sequential page-reads without a serial access and executing a copy-program using the address of the destination page. Copy-Back Program Operation Flow Chart Start Write ’Copy-back Program’ command Add: F220h DQ=001Bh Write ’FBA’ of Flash Add: F100h DQ=FBA Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Wait for INT register low to high transition Add: F241h DQ[15]=INT Write ’FCBA’ of Flash Add: F102h DQ=FCBA Read Controller Status Register Add: F240h DQ[10]=Error Write ’FCPA, FCSA’ of Flash Add: F103h DQ=FCPA, FCSA DQ[10]=0? YES Copy back completed NO Copy back Error Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC 1) Write 0 to interrupt register Add: F241h DQ=0000h * : If program operation results in an error, map out the block including the page in error and copy the target data to another block. Note 1) Selected DataRAM by BSA & BSC is used for Copy back operation, so previous data is overwritten. 2) FBA, FPA and FSA should be input prior to FCBA, FCPA and FCSA. 69 OneNAND512(KFG1216x2A-xxB5) The Copy-Back steps shown in the flow chart are: FLASH MEMORY • Data is read from the NAND Array using Flash Block Address (FBA), Flash Page Address (FPA) and Flash Sector Address (FSA). FBA, FPA, and FSA identify the source address to read data from NAND Flash array. • The BufferRAM Sector Count (BSC) and BufferRAM Sector Address (BSA) identifies how many sectors and the location of the sectors in DataRAM that are used. • The destination address in the NAND Array is written using the Flash Copy-Back Block Address (FCBA), Flash Copy-Back Page Address (FCPA), and Flash Copy-Back Sector Address (FCSA). • The Copy-Back Program command is issued to start programming. • Upon completion of copy-back programming to the destination page address, the Host checks the status to see if the operation was successfully completed. If there was an error, map out the block including the page in error and copy the target data to another block. 70 OneNAND512(KFG1216x2A-xxB5) 3.9.1 FLASH MEMORY Copy-Back Program Operation with Random Data Input The Copy-Back Program Operation with Random Data Input in OneNAND consists of 2 phase, Load data into DataRAM, Modify data and program into designated page. Data from the source page is saved in one of the on-chip DataRAM buffers and modified by the host, then programmed into the destination page. As shown in the flow chart, data modification is possible upon completion of load operation. ECC is also available at the end of load operation. Therefore, using hardware ECC of OneNAND, accumulation of 1 bit error can be avoided. Copy-Back Program Operation with Random Data Input will be effectively utilized at modifying certain bit, byte, word, or sector of source page to destination page while it is being copied. Copy-Back Program Operation with Random Data Input Flow Chart Start DQ[10]=0? YES Random Data Input Add: Random Address in Selected DataRAM DQ=Data NO Map Out Write ’FBA’ of Flash Add: F100h DQ=FBA Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC Write ’FBA’ of Flash Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Write ’Load’ Command Add: F220h DQ=0000h or 0013h Write 0 to interrupt register Add: F241h DQ=0000h Write ’Program’ Command Wait for INT register low to high transition Add: F241h DQ[15]=INT Add: F220h DQ=0080h or 001Ah Read Controller Status Register Add: F240h DQ[10]=Error Wait for INT register low to high transition Add: F241h DQ[15]=INT Read Controller Status Register Add: F240h DQ[10]=Error DQ[10]=0? YES Copy back completed NO Copy back Error 71 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.10 Erase Operation There are multiple methods for erasing data in the device including Block Erase and Multi-Block Erase. 3.10.1 Block Erase Operation See Timing Diagram 6.10 The device can be erased one block at a time. To erase a block is to write all 1's into the desired memory block by executing the Internal Erase Routine. All previous data is lost. Block Erase Operation Flow Chart Start Write ’FBA’ of Flash Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’Erase’ Command Add: F220h DQ=0094h Wait for INT register low to high transition Add: F241h DQ=[15]=INT Read Controller Status Register Add: F240h DQ[10]=Error DQ[10]=0? YES Erase completed NO Erase Error * : If erase operation results in an error, map out the failing block and replace it with another block. 72 OneNAND512(KFG1216x2A-xxB5) In order to perform the Internal Erase Routine, the following command sequence is necessary. • The Host sets the block address of the memory location. FLASH MEMORY • The Erase Command initiates the Internal Erase Routine. During the execution of the Routine, the host is not required to provide further controls or timings. During the Internal erase routine, all commands, except the Reset command and Erase Suspend Command, written to the device will be ignored. A reset during an erase operation will cause data corruption at the corresponding location. 3.10.2 Multi-Block Erase Operation See Timing Diagram 6.10 Using Multi-Block Erase, the device can erase up to 64 multiple blocks simultaneously. Multiple blocks can be erased by issuing a Multi-Block Erase command and writing the block address of the memory location to be erased. The final Flash Block Address (FBA) and Block Erase command initiate the internal multi block erase routine. During a Multi-Block Erase, the OnGo bit of the Controller Status Register is set to '1'(busy) from the time first block address to be latched is written until the actual erase has finished. During block address latch sequence, issuing of other commands except Block Erase, Multi Block Erase, and Erase suspend at INT=High will abort the current operation. So to speak, It will cancel the previously latched addresses of Multi Block Erase Operation. On the other hand, Other command issue at INT=low will be ignored. A reset during an erase operation will cause data corruption at the address location being operated on during the reset. Despite a failed block during Multi-Block Erase operation, the device will continue the erase operation until all other specified blocks are erased. Erase Suspend Command issue during Multi Block Erase Address latch sequence is prohibited. Locked Blocks If there are locked blocks in the specified range, the Multi-Block Erase operation works as the follows. Case 1: All specified blocks except BA(2) will be erased. [BA(1)+0095h] + [BA((2), locked))+0095h] + ... + [BA(N-1)+0095h] + [BA(N)+0094h] Case 2: Multi-Block Erase Operation is suspended and fails to start if the last Block Erase command is put together with the locked block address until right command and address input are issued. [BA(1)+0095h] + [BA(2)+0095h] + ... + [BA(N-1)+0095h] + [BA((N), locked))+0094h] Case 3: All specified blocks except BA(N) are erased. [BA(1)+0095h] + [BA(2)+0095h] + ... + [BA(N-1)+0095h] + [BA((N, locked))+0094h] + [BA(N+1)+0094h] 73 OneNAND512(KFG1216x2A-xxB5) 3.10.3 Multi-Block Erase Verify Read Operation FLASH MEMORY After a Multi-Block Erase Operation, verify Erase Operation result of each block with Multi-Block Erase Verify Command combined with address of each block. If a failed address is identified, it must be managed in firmware. Multi Block Erase/ Multi Block Erase Verify Read Flow Chart Start Write ’FBA’ of Flash Add: F100h DQ=FBA Read Controller Status Register Add: F240h DQ[10]=Error Write ’FBA’ of Flash Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h DQ[10]=0? NO YES Erase completed Write 0 to interrupt register Add: F241h DQ=0000h Write ’Block Erase Command’ Add: F220h DQ=0094h Write ’Multi Block Erase’ Command Add: F220h DQ=0095h Wait for INT register low to high transition Add: F241h DQ=[15]=INT Wait for INT register low to high transition Add: F241h DQ=[15]=INT Write ’FBA’ of Flash Add: F100h DQ=FBA NO NO Erase Error Final Multi Block Erase Address? YES Multi Block Erase completed Final Multi Block Erase? YES Write 0 to interrupt register Add: F241h DQ=0000h Multi Block Erase Verify Read Write ’Multi Block Erase Verify Read Command’ Add: F220h DQ=0071h Wait for INT register low to high transition Add: F241h DQ=[15]=INT 74 OneNAND512(KFG1216x2A-xxB5) 3.10.4 Erase Suspend / Erase Resume Operation FLASH MEMORY The Erase Suspend/Erase Resume Commands interrupt and restart a Block Erase or Multi-Block Erase operation so that user may perform another urgent operation on the block that is not being designated by Erase/Multi-Block Erase Operation. Erase Suspend During a Block Erase Operation When Erase Suspend command is written during a Block Erase or Multi-Block Erase operation, the device requires a maximum of 500us to suspend erase operation. Erase Suspend Command issue during Block Address latch sequence is prohibited. After the erase operation has been suspended, the device is ready for the next operation including a load, program, copy-back program, Lock, Unlock, Lock-tight, Hot Reset, NAND Flash Core Reset, Command Based Reset, Multi-Block Erase Read Verity, or OTP Access. The subsequent operation can be to any block that was NOT being erased. A special case arises pertaining Erase Suspend to the OTP. A Reset command is used to exit from the OTP Access mode. If the Reset-triggered exit from the OTP Access Mode happens during an Erase Suspend Operation, the erase routine could fail. Therefore to exit from the OTP Access Mode without suspending the erase operation stop, a 'NAND Flash Core Reset' command should be issued. For the duration of the Erase Suspend period the following commands are not accepted: • Block Erase/Multi-Block Erase/Erase Suspend Erase Suspend and Erase Resume Operation Flow Chart Start Write 0 to interrupt register Add: F241h DQ=0000h Write 0 to interrupt register Add: F241h DQ=0000h Write ’Erase Resume Command’ Add: F220h DQ=0030h Write ’Erase Suspend Command’ 1) Add: F220h DQ=00B0h Wait for INT register low to high transition Add: F241h DQ=[15]=INT Wait for INT register low to high transition for 500us Add: F241h DQ=[15]=INT Check Controller Status Register in case of Block Erase Do Multi Block Erase Verify Read in case of Multi Block Erase Another Operation * * Another Operation ; Load, Program Copy-back Program, OTP Access2), Hot Reset, Flash Reset, CMD Reset, Multi Block Erase Verify, Lock, Lock-tight, Unlock Note 1) Erase Suspend command input is prohibited during Multi Block Erase address latch period. 2) If OTP access mode exit happens with Reset operation during Erase Suspend mode, Reset operation could hurt the erase operation. So if a user wants to exit from OTP access mode without the erase operation stop, Reset NAND Flash Core command should be used. 75 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY Erase Resume When the Erase Resume command is executed, the Block Erase will restart. The Erase Resume operation does not actually resume the erase, but starts it again from the beginning. When an Erase Suspend or Erase Resume command is executed, the addresses are in Don't Care state. 3.11 OTP Operation On Block of the NAND Flash Array memory is reserved as a One-Time Programmable Block memory area. The OTP block can be read, programmed and locked using the same operations as any other NAND Flash Array memory block. OTP block cannot be erased. OTP block is fully-guaranteed to be a valid block. Entering the OTP Block The OTP block is separately accessible from the rest of the NAND Flash Array by using the OTP Access command instead of the Flash Block Address (FBA). Exiting the OTP Block To exit the OTP Access Mode, a Cold-, Warm-, Hot-, or NAND Flash Core Reset operation is performed. Exiting the OTP Block during an Erase Operation If the Reset-triggered exit from the OTP Access Mode happens during an Erase Suspend Operation, the erase routine could fail. Therefore to exit from the OTP Access Mode without suspending the erase operation stop, a 'NAND Flash Core Reset' command should be issued. The OTP Block Page Assignments OTP area is one block size (128KB+4KB, 64 Pages) and is divided into two areas. The 10-page User Area is available as an OTP storage area. The 54-page Manufacturer Area is programmed by the manufacturer prior to shipping the device to the user. OTP Block Page Allocation Information Area User Manufacturer Page 0 ~ 9 (10 pages) 10 ~ 63 (54 pages) Use Designated as user area Used by the device manufacturer 76 OneNAND512(KFG1216x2A-xxB5) OTP Area Structure FLASH MEMORY Page:2KB+64B Sector(main area):512B One Block: 64pages 128KB+4KB Sector(spare area):16B Manufacturer Area : 54pages page10 to page63 User Area : 10pages page0 to page9 77 OneNAND512(KFG1216x2A-xxB5) 3.11.1 OTP Load Operation FLASH MEMORY An OTP Load Operation accesses the OTP area and transfers identified content from the OTP to the DataRAM on-chip buffer, thus making the OTP contents available to the Host. The OTP area is a separate part of the NAND Flash Array memory. It is accessed by issuing OTP Access command(65h) instead of a Flash Block Address (FBA) command. After being accessed with the OTP Access Command, the contents of OTP memory area are loaded using the same operations as a normal load operation to the NAND Flash Array memory (see section 3.6 for more information). To exit the OTP access mode following an OTP Load Operation, a Cold-, Warm-, Hot-, or NAND Flash Core Reset operation is performed. OTP Read Operation Flow Chart Start Write ’FBA’ of Flash1) Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’Load’ Command Add: F220h DQ=0000h or 0013h Write ’OTP Access’ Command Add: F220h DQ=0065h Wait for INT register low to high transition Add: F241h DQ[15]=INT Wait for INT register low to high transition Add: F241h DQ[15]=INT Write ’FPA, FSA’ of Flash1) Add: F107h DQ=FPA, FSA Host reads data from DataRAM OTP Reading completed Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC Do Cold/Warm/Hot /NAND Flash Core Reset Write 0 to interrupt register Add: F241h DQ=0000h OTP Exit Note 1) FBA(NAND Flash Block Address) could be any address. 78 OneNAND512(KFG1216x2A-xxB5) 3.11.2 OTP Program Operation FLASH MEMORY An OTP Program Operation accesses the OTP area and programs content from the DataRAM on-chip buffer to the designated page(s) of the OTP. A memory location in the OTP area can be programmed only one time (no erase operation permitted). The OTP area is programmed using the same sequence as normal program operation after being accessed by the command (see section 3.8 for more information). Programming the OTP Area • Issue the OTP Access Command • Write data into the DataRAM (data can be input at anytime between the "Start" and "Write Program" commands • Issue a Flash Block Address (FBA) which is unlocked area address of NAND Flash Array address map. • Issue a Write Program command to program the data from the DataRAM into the OTP • When the OTP programming is complete, do a Cold-, Warm-, Hot-, NAND Flash Core Reset to exit the OTP Access mode. 79 OneNAND512(KFG1216x2A-xxB5) OTP Program Operation Flow Chart FLASH MEMORY Start Write ’FBA’ of Flash1) Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’FBA’ of Flash Add: F100h DQ=FBA3) Write 0 to interrupt register Add: F241h DQ=0000h Write ’FPA, FSA’ of Flash Add: F107h DQ=FPA, FSA Write ’OTP Access’ Command Add: F220h DQ=0065h Wait for INT register low to high transition Add: F241h DQ[15]=INT Write ’BSA, BSC’ of DataRAM Add: F200h DQ=BSA, BSC Write Program command Add: F220h DQ=0080h or 001Ah Automatically checked OTPL=0? YES NO Automatically updated Write Data into DataRAM2) Add: DP DQ=Data-in Data Input Completed? NO Wait for INT register low to high transition Add: F241h DQ[15]=INT Update Controller Status Register Add: F240h DQ[14]=1(Lock), DQ[10]=1(Error) Wait for INT register low to high transition Add: F241h DQ[15]=INT Read Controller Status Register Add: F240h DQ[10]=0(Pass) OTP Programming completed Read Controller Status Register Add: F240h DQ[10]=1(Error) Do Cold/Warm/Hot /NAND Flash Core reset Do Cold/Warm/Hot /NAND Flash Core reset OTP Exit OTP Exit Note 1) FBA(NAND Flash Block Address) could be any address. 2) Data input could be done anywhere between "Start" and "Write Program Command". 80 OneNAND512(KFG1216x2A-xxB5) 3.11.3 OTP Lock Operation FLASH MEMORY Even though the OTP area can only be programmed once without erase capability, it can be locked when the device starts up to prevent any changes from being made. Unlike the main area of the NAND Flash Array memory, once the OTP block is locked, it cannot be unlocked. Locking the OTP Programming to the OTP area can be prevented by locking the OTP area. Locking the OTP area is accomplished by programming XXXCh to 8th word of sector0 of page0 of the spare0 memory area. At device power-up, this word location is checked and if XXXCh is found, the OTPL bit of the Controller Status Register is set to "1", indicating the OTP is locked. When the Program Operation finds that the status of the OTP is locked, the device updates the Error Bit of the Controller Status Register as "1" (fail). OTP Lock Operation Steps • • • • Issue the OTP Access Command Fill data to be programmed into DataRAM (data can be input at anytime between the "Start" and "Write Program" commands) Write 'XXXCH' data into the 8th word of sector0 of page0 of the spare0 memory area of the DataRAM. Issue a Flash Block Address (FBA) to any address in the NAND Flash Array address map. • Issue a Program command to program the data from the DataRAM into the OTP • When the OTP lock is complete, do a Cold Reset to exit the OTP Access mode and update OTP lock bit[6]. • OTP lock bit[6] of the Controller Status Register will be set to "1" and the OTP will be locked. 81 OneNAND512(KFG1216x2A-xxB5) OTP Lock Operation Flow Chart FLASH MEMORY Start Write ’FBA’ of Flash Add: F100h DQ=FBA3) Write ’FBA’ of Flash1) Add: F100h DQ=FBA Write 0 to interrupt register Add: F241h DQ=0000h Write ’FPA, FSA’ of Flash Add: F107h DQ=0000h Write ’BSA, BSC’ of DataRAM Add: F200h DQ=0001h Write ’OTP Access’ Command Add: F220h DQ=0065h Wait for INT register low to high transition Add: F241h DQ[15]=INT Write 0 to interrupt register Add: F241h DQ=0000h Write Program command Add: F220h DQ=0080h or 001Ah Write Data into DataRAM2) Add: 8th Word in spare0/sector0/page0 DQ=XXXCh Wait for INT register low to high transition Add: F241h DQ[15]=INT Do Cold reset Automatically updated Update Controller Status Register Add: F240h DQ[6]=1(OTPL) OTP lock completed Note 1) FBA(NAND Flash Block Address) could be any address. 2) Data input could be done anywhere between "Start" and "Write Program Command". 3) FBA should point the unlocked area address among NAND Flash Array address map. 82 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.12 Dual Operations The device has independent dual data buffers on-chip (except during the Boot Load period) that enables higher performance read and program operation. 3.12.1 Read-While-Load Operation This operation accelerates the read performance of the device by enabling data to be read out by the host from one DataRAM buffer while the other DataRAM buffer is being loaded with data from the NAND Flash Array memory. 1) Data Load Page A 3) Data Load Page B Data Buffer0 Data Buffer1 2) Data Read 2) Data Load 3) Data Read The dual data buffer architecture provides the capability of executing a data-read operation from one of DataRAM buffers during a simultaneous data-load operation from Flash to the other buffer. Simultaneous load and read operation to same data buffer is prohibited. See sections 3.6 and 3.7 for more information on Load and Read Operations. If host sets FBA, FSA, or FPA while loading into designated page, it will fail the internal load operation. Address registers should not be updated until internal operation is completed. 3.12.2 Write-While-Program Operation This operation accelerates the programming performance of the device by enabling data to be written by the host into one DataRAM buffer while the NADN Flash Array memory is being programmed with data from the other DataRAM buffer. Page A 2) Program 1) Data Write Data Buffer0 Data Buffer1 3) Data Write Page B 3) Program 2) Data Write The dual data buffer architecture provides the capability of executing a data-write operation to one DataRAM buffers during simultaneous data-program operation to Flash from the other buffer. Simultaneous program and write operation to same data buffer is prohibited. See sections 3.8 for more information on Program Operation. If host sets FBA, FSA, or FPA while programming into designated page, it will fail the internal program operation. Address registers should not be updated until internal operation is completed. 83 Read While Load Diagram ADD Add_ reg Int_ reg 0000h LD_ CMD Flash _add 0000h Read Status LD_ CMD DB1 _add DB0 _add CMD_ reg CS_ reg Add_ reg Int_ reg CMD_ reg 0~15 Page A Add_ reg Page B Add_ reg Data Load 2) _DB1 DQ 0~15 Flash _add 1) Data Load _DB0 1) Data Load _DB0 DB0_radd* Data Load 2) _DB1 Data Read _DB0 * WE OE OneNAND512(KFG1216x2A-xxB5) INT 84 Int_reg : Interrupt Register Address Add_reg : Address Register Address Flash_add : Flash Address to be loaded DBn_add : DataRAM Address to be loaded CMD_reg : Command Register Address LD_CMD : Load Command Data Load_DBn : Load Data from NAND Flash Array to DataRAMn CS_reg : Controller Status Register Address Data Read_DBn : Read Data from DBn DBn_radd : DataRAM Address to be read FLASH MEMORY Write While Program Diagram Page A Add_ reg Add_ reg Add_ reg DB1_wadd* 2) DB0 _add 0000h Read Status Flash _add 0000h DB1 _add PD_ CMD Data PGM _PageA Data Write _DB1 * PD_ CMD Int_ reg CMD_ reg Data PGM _PageA CS_ reg CMD_ reg Int_ reg Page B ADD 0~15 DB0_wadd* 1) Add_ reg Data PGM _PageB DB0_wadd* DQ 0~15 Data Write _DB0 * Flash _add Data PGM _PageB Data Write _DB0 * WE OE OneNAND512(KFG1216x2A-xxB5) INT 85 Add_reg : Address Register Address DBn_add : DataRAM Address to be programmed DBn_wadd : DataRAM Address to be written Data Write_DBn : Write Data to DataRAMn Flash_add : Flash Address to be programmed Int_reg : Interrupt Register Address CMD_reg : Command Register Address PD_CMD : Program Command Data PGM_PageA : Program Data from DataRAM to PageA CS_reg : Controller Status Register Address FLASH MEMORY OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.13 ECC Operation The OneNAND device has on-chip ECC with the capability of detecting 2 bit errors and correcting 1-bit errors in the NAND Flash Array memory main and spare areas. As the device transfers data from a BufferRAM to the NAND Flash Array memory Page Buffer for Program Operation, the device initiates a background operation which generates an Error Correction Code (ECC) of 24bits for each sector main area data and 10bits for 2nd and 3rd word data of each sector spare area. During a Load operation from the NAND Flash Array memory Page, the on-chip ECC engine generates a new ECC. The 'Load ECC result' is compared to the originally 'Program ECC' thus detecting the number and position of errors. Single-bit error is corrected. ECC is updated by the device automatically. After a Load Operation, the Host can determine whether there was error by reading the 'ECC Status Register' (refer to section 2.8.26). Error types are divided into 'no error', '1bit correctable error', and '2bit error uncorrectable error'. OneNAND supports 2bit EDC even though 2bit error seldom or never occurs. Hence, it is not recommeded for Host to read 'ECC Status Register' for checking ECC error because the built-in Error Correction Logic of OneNAND automatically corrects ECC error. When the device reads the NAND Flash Array memory main and spare area data with an ECC operation, the device doesn't place the newly generated ECC for main and spare area into the buffer. Instead it places the ECC which was generated and written during the program operation into the buffer. An ECC operation is also done during the Boot Loading operation. 3.13.1 ECC Bypass Operation In an ECC bypass operation, the device does not generate ECC as a background operation. The result does not indicate error position (refer to the ECC Result Table). In a Program Operation the ECC code to NAND Flash Array memory spare area is not updated. During a Load operation, the on-chip ECC engine does not generate a new ECC internally. Also the ECC Status & Result to Registers are invalid. The error is not corrected and detected by itself, so that ECC bypass operation is not recommended for host. ECC bypass operation is set by the 9bit of System Configuration 1 Register (see section 2.8.19) ECC Code and ECC Result by ECC Operation Program operation Operation ECC operation ECC bypass Load operation ECC Status & Result Update to Registers Update Invalid 1bit Error Correct Not correct ECC Code Update to NAND ECC Code at BufferRAM Spare Flash Array Spare Area Area Update Not update Pre-written ECC code(1) loaded Pre-written code loaded NOTE: 1. Pre-written ECC code : ECC code which is previously written to NAND Flash Spare Area in program operation. 86 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 3.14 Invalid Block Operation Invalid blocks are defined as blocks in the device's NAND Flash Array memory that contain one or more invalid bits whose reliability is not guaranteed by Samsung. The information regarding the invalid block(s) is called the Invalid Block Information. Devices with invalid block(s) have the same quality level as devices with all valid blocks and have the same AC and DC characteristics. An invalid block(s) does not affect the performance of valid block(s) because it is isolated from the bit line and the common source line by a select transistor. The system design must be able to mask out the invalid block(s) via address mapping. The 1st block, which is placed on 00h block address, is always fully guaranteed to be a valid block. Due to invalid marking, during load operation for indentifying invalid block, a load error may occur. 3.14.1 Invalid Block Identification Table Operation A system must be able to recognize invalid block(s) based on the original invalid block information and create an invalid block table. Invalid blocks are identified by erasing all address locations in the NAND Flash Array memory except locations where the invalid block(s) information is written prior to shipping. An invalid block(s) status is defined by the 1st word in the spare area. Samsung makes sure that either the 1st or 2nd page of every invalid block has non-FFFFh data at the 1st word of sector0. Since the invalid block information is also erasable in most cases, it is impossible to recover the information once it has been erased. Any intentional erase of the original invalid block information is prohibited. The following suggested flow chart can be used to create an Invalid Block Table. 87 OneNAND512(KFG1216x2A-xxB5) Invalid Block Table Creation Flow Chart FLASH MEMORY Start Set Block Address = 0 Increment Block Address Create (or update) Invalid Block(s) Table No * Check "FFFFh" ? Yes Check "FFFFh" at the 1st word of sector 0 in 1st and 2nd page of every block No Last Block ? Yes End 3.14.2 Invalid Block Replacement Operation Within its life time, additional invalid blocks may develop with NAND Flash Array memory. Refer to the device's qualification report for the actual data. The following possible failure modes should be considered to implement a highly reliable system. In the case of a status read failure after erase or program, a block replacement should be done. Because program status failure during a page program does not affect the data of the other pages in the same block, a 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. Block Failure Modes and Countermeasures Failure Mode Erase Failure Program Failure Single Bit Failure in Load Operation Detection and Countermeasure sequence Status Read after Erase --> Block Replacement Status Read after Program --> Block Replacement Error Correction by ECC mode of the device 88 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY Referring to the diagram for further illustration, when an error happens in the nth page of block 'A' during program operation, copy the data in the 1st ~ (n-1)th page to the same location of block 'B' via data buffer0. Then copy the nth page data of block 'A' in the data buffer1 to the nth page of block 'B' or any free block. Do not further erase or program block 'A' but instead complete the operation by creating an 'Invalid Block Table' or other appropriate scheme. Block Replacement Operation Sequence 1st (n-1)th nth (page) { { Block A 1 an error occurs. 1 Block B 2 Data Buffer0 of the device Data Buffer1 of the device (assuming the nth page data is maintained) 1st (n-1)th nth (page) ∼ ∼ 89 OneNAND512(KFG1216x2A-xxB5) FLASH MEMORY 4.0 4.1 DC CHARACTERISTICS Absolute Maximum Ratings Parameter Vcc Symbol Vcc (for 1.8V) Vcc (for 2.65V/3.3V) VIN (for 1.8V) VIN (for 2.65V/3.3V) Tbias Tstg IOS TA (Extended Temp.) TA (Industrial Temp.) Rating -0.5 to + 2.45 -0.5 to + 4.6 -0.5 to + 2.45 -0.5 to + 4.6 -30 to +125 -40 to +125 -65 to +150 5 -30 to +85 -40 to +85 °C °C mA °C V Unit Voltage on any pin relative to VSS All Pins Temperature Under Bias Storage Temperature Short Circuit Output Current Recommended Operating Temperature Extended Industrial NOTES: 1. Minimum DC voltage is -0.5V on Input/ Output pins. During transitions, this level should not fall to POR level(typ. 1.5V@1.8V device, 1.8V@2.65V/ 3.3V device). Maximum DC voltage is Vcc+0.6V on input / output pins which, during transitions, may overshoot to Vcc+2.0V for periods
KFG1216Q2A-DIB6 价格&库存

很抱歉,暂时无法提供与“KFG1216Q2A-DIB6”相匹配的价格&库存,您可以联系我们找货

免费人工找货