Common Flash Interface Version 1.4 Vendor Specific Extensions Application Note Introduction This application note provides an overview of the changes implemented between versions 1.3 and 1.4 of the SpansionTM Flash memory Common Flash Interface (CFI) implementation. CFI is a JEDEC standard database that may be read from a Flash memory. It allows Flash driver software to query the installed device to determine the proper configuration, e.g. memory size, speed, special features, and other characteristics. The JEDEC CFI standard provides for vendor specific extensions to the basic device information. These extensions provide information about optional device features. As successive device generations add new features new fields are added to the vendor specific extensions area. Publication Number CFI_V1.4_VendorSpecificExtensions Revision A Amendment 0 Issue Date March 22, 2004 A p p l i c a t i o n N o t e Benefit There are two main benefits of using CFI Ease of upgrading memory density or features Second source availability CFI-compliant Flash allows the system designer to add and upgrade memory without the inconvenience of modifying Flash driver software to adapt to each new device in a product family. This holds true for new devices of higher density or different sector architecture than available at the time of initial system and driver development. CFI Data Structure From the CFI mode the user can access the following information (Note, the subsequent CFI data tables are provided as examples only. For productspecific CFI data, refer to the Spansion Datasheet): 1. CFI Identification String - A standard string of characters that any CFI compliant device will display so that Flash driver software can confirm that a CFI device is in use. See Table 1. 2. System Interface String - Information on device voltage and timing parameter. See Table 2. 3. Device Geometry Definition - Information on command protocol, device size, and sector sizes. See Table 3. 4. Primary Vendor-Specific Extended Query - Information on vendor or device specific features that are supported. See Table 4. Table 1. CFI Query Identification String Addresses (x16) Data Description 10h 11h 12h 0051h 0052h 0059h Query Unique ASCII String "QRY" 13h 14h 0002h 0000h Primary OEM Command Set 15h 16h 0040h 0000h Address for Primary Extended Table 17h 18h 0000h 19h 1Ah 0000h 0000h 0000h Alternate OEM Command Set (00h = none exists) Address for Alternate OEM Extended Table (00h = none exists) Table 2. System Interface String 2 Addresses (x16) Data Description 1Bh 0027h VCC Min. (Write/Erase) D7-D4: volt, D3-D0: mV 1Ch 0036h VCC Max. (Write/Erase) D7-D4: volt, D3-D0: mV Common Flash Interface Version 1.4 Vendor Specific Extensions A p p l i c a t i o n Table 2. N o t e System Interface String (Continued) Addresses (x16) Data Description 1Dh 0000h VPP Min. voltage (00h = no VPP pin present) 1Eh 0000h VPP Max. voltage (00h = no VPP pin present) 1Fh 0007h Typical timeout per single byte/word 2N s 20h 0007h Typical timeout for Min. size buffer write 2N s (00h = not supported) 21h 0000h Typical timeout per individual block erase 2N ms 22h 0000h Typical timeout for full chip erase 2N ms (00h = not supported) 23h 0001h Max. timeout for byte/word write 2N times typical 24h 0005h Max. timeout for buffer write 2N times typical 25h 0004h Max. timeout per individual block erase 2N times typical 26h 0000h Max. timeout for full chip erase 2N times typical (00h = not supported) Table 3. CFI Device Geometry Definition Addresses (x16) Data Description 27h 0018h Device size = 2 byte 28h 29h 0002h 0000h Flash device interface description (refer to CFI publication 100) 2Ah 2Bh 0005h 0000h Max. number of bye in multi-byte write = 2N (00h = not supported) 2Ch 0001h Number of erase block regions within device (01h = uniform device, 02h = boot device) 2Dh 2Eh 2Fh 30h 00FFh 0000h 0000h 0001h Erase block region 1 information (refer to the CFI specification or CFI publication 100) 31h 32h 33h 34h 0000h 0000h 0000h 0000h Erase block region 2 information (refer to CFI publication 100) 35h 36h 37h 38h 0000h 0000h 0000h 0000h Erase block region 3 information (refer to CFI publication 100) 39h 3Ah 3Bh 3Ch 0000h 0000h 0000h 0000h Erase block region 4 information (refer to CFI publication 100) N March 22, 2004 CFI_V1.4_VendorSpecificExtensionsA0Common Flash Interface Version 1.4 Vendor Specific Extensions 3 A p p l i c a t i o n N o t e Table 4. Primary Vendor-Specific Extended Query Addresses (x16) Data Description 40h 41h 42h 0050h 0052h 0049h Query-unique ASCII string "PRI" 43h 0031h Major version number, ASCII 44h 0033h Minor version number, ASCII 45h 0004h Address Sensitive Unlock (Bits 1-0) 0 = Required, 1 = Not Required Silicon Technology (bits 5-2) 0001 = 0.17 m 46h 0002h Erase Suspend 0 = Not Supported, 1 = To Read Only, 2 = To Read & Write 47h 0001h Sector Protect 00 = Not Supported, x = Number of sectors per group 48h 0000h Sector Temporary Unprotect 00 = Not Supported, 01 = Supported 49h 0005h Sector Protect / Unprotect scheme 04 = 29LV800 mode 4Ah 0063h Simultaneous Operation Number of sectors in all banks except boot block 4Bh 0001h Burst Mode Type 00 = Not Supported, 01 = Supported 4Ch 0000h Page Mode Type 00 = Not Supported, 01 = 4 Word Page, 02 = 8 Word Page 4Dh 0085h ACC (Acceleration) Supply Minimum 00h = Not Supported, D7-D4: Volt, D3-D0: 100mV 4Eh 00C5h ACC (Acceleration) Supply Maximum 00h = Not Supported, D7-D4: Volt, D3-D0: 100mV 4Fh 00xxh Top/Bottom Boot Sector Flag 02h = Bottom Boot Device, 03h = Top Boot Device 50h 0000h Program Suspend. 00h = not supported 57h 0004h Bank Organization: x = Number of Banks 58h 0023h Bank A Region Information. x = Number of sectors in bank 59h 0020h Bank B Region Information. x = Number of sectors in bank 5Ah 0020h Bank C Region Information. x = Number of sectors in bank 5Bh 0023h Bank D Region Information. x = Number of sectors in bank Changes The major difference between SpansionTM memory specific CFI extensions version 1.3 and version 1.4 are the addition of these features in the Primary Vendor-Specific Extended Query section: Unlock Bypass SecSi Sector size Hardware Reset Low Time-out during an embedded algorithm 4 Common Flash Interface Version 1.4 Vendor Specific Extensions A p p l i c a t i o n N o t e Hardware Reset Low Time-out not during an embedded algorithm Erase Suspend Time-out Maximum Program Suspend Time-out Maximum Increased Bank region information from four bank to thirty-two bank These changes will be implemented in new SpansionTM Flash devices. The added features are highlighted in Table 5. New Features are highlighted in bold face type. Table 5. Updated Primary Vendor-Specific Extended Query Address (byte mode) Data Description 40h 41h 42h 50h 52h 49h query-unique ASCII string "PRI" 43h 31h Major version number ASCII 44h 34h Minor version ASCII 45h Address Sensitive Unlock (DQ1,DQ0) 0000 (Hex) = required, 0001 (Hex) = NOT Required Process Technology (DQ5-DQ2) 0001 (Hex) = 170-nm Floating Gate technology 0010 (Hex) = 230-nm MirrorBitTM technology 0011 (Hex) = 130-nm Floating Gate technology 0100 = 110-nm MirrorBitTM technology 0101 = 90-nm Floating Gate technology 0110 = 90-nm MirrorBitTM technology 46h Erase Suspend 00 = Not Supported, 01 = To read only, 02 = To read and write 47h Sector Protect 00 = Not Supported, X = Number of sectors per group 48h Sector Temporary Unprotect 00 = Not Supported, 01 = Supported 49h Sector Protect/Unprotect scheme 01 = 29F040 mode 02 = 29F016 mode 03 = 29F400 mode 04 = 29LV800 mode -> RESET# or A9 =Vid 05 = Software command sector locking 06 = New Sector Protect 07 = RESET# or A9 =Vid + New Sector Protect 08 = Advanced Sector Protect 4Ah Simultaneous Operation 00 = Not Supported, X = Total number of sectors in all banks except BOOT BANK 4Bh Burst Mode Type 00 = Not Supported, 01=Supported 4Ch Page Mode Type 00 = Not Supported, 01 = 4 word Page, 02 = 8 word Page, 03 = 16 word Page 4Dh ACC (Acceleration) Supply Minimum Bit 7-4 = Hex Value in Volts Bit 3-0 = BCD Value in 100 Millivolts March 22, 2004 CFI_V1.4_VendorSpecificExtensionsA0Common Flash Interface Version 1.4 Vendor Specific Extensions 5 A p p l i c a t i o n Table 5. Address (byte mode) 6 N o t e Updated Primary Vendor-Specific Extended Query (Continued) Data Description 4Eh ACC (Acceleration) Supply Maximum Bit 7-4 = Hex Value in Volts Bit 3-0 = BCD Value in 100 Millivolts 4Fh Top/Bottom Sector Flag 00 = No Boot 01 = 8x8kb, Sectors at TOP and Bottom 02 = Bottom Boot Device 03 = Top Boot Device 04 = Uniform Bottom Boot Device 05 = Uniform Top Boot Device 50h Program Suspend 00 = Not Supported, 01=Supported 51h Unlock Bypass 00 = Not Supported, 01 = Supported 52h SecSi Sector (Customer OTP Area) Size 2N (Bytes) 53h Embedded Hardware Reset Timeout Maximum < 2N (ns) 54h Non-Embedded Hardware Reset Timeout Maximum < 2N (ns) 55h Erase Suspend Timeout Maximum < 2N (us) 56h Program Suspend Timeout Maximum < 2N (us) 57h Bank Organization 00 = If data at 4Ah is Zero XX = Number of banks 58h Bank1 Region Information = Number of sectors in Bank 1 59h Bank2 Region Information = Number of sectors in Bank 2 5Ah Bank3 Region Information = Number of sectors in Bank 3 5Bh Bank4 Region Information = Number of sectors in Bank 4 5Ch Bank5 Region Information = Number of sectors in Bank 5 5Dh Bank6 Region Information = Number of sectors in Bank 6 5Eh Bank7 Region Information = Number of sectors in Bank 7 5Fh Bank8 Region Information = Number of sectors in Bank 8 60h Bank9 Region Information = Number of sectors in Bank 9 61h Bank10 Region Information = Number of sectors in Bank 10 62h Bank11 Region Information = Number of sectors in Bank 11 Common Flash Interface Version 1.4 Vendor Specific Extensions A p p l i c a t i o n Table 5. Address (byte mode) N o t e Updated Primary Vendor-Specific Extended Query (Continued) Data Description 63h Bank12 Region Information = Number of sectors in Bank 12 64h Bank13 Region Information = Number of sectors in Bank 13 65h Bank14 Region Information = Number of sectors in Bank 14 66h Bank15 Region Information = Number of sectors in Bank 15 67h Bank16 Region Information = Number of sectors in Bank 16 68h Bank17 Region Information = Number of sectors in Bank 17 69h Bank18 Region Information = Number of sectors in Bank 18 6Ah Bank19 Region Information = Number of sectors in Bank 19 6Bh Bank20 Region Information = Number of sectors in Bank 20 6Ch Bank21 Region Information = Number of sectors in Bank 21 6Dh Bank22 Region Information = Number of sectors in Bank 22 6Eh Bank23 Region Information = Number of sectors in Bank 23 6Fh Bank24 Region Information = Number of sectors in Bank 24 70h Bank25 Region Information = Number of sectors in Bank 25 71h Bank26 Region Information = Number of sectors in Bank 26 72h Bank27 Region Information = Number of sectors in Bank 27 73h Bank28 Region Information = Number of sectors in Bank 28 74h Bank29 Region Information = Number of sectors in Bank 29 75h Bank30 Region Information = Number of sectors in Bank 30 76h Bank31 Region Information = Number of sectors in Bank 31 77h Bank32 Region Information = Number of sectors in Bank 32 March 22, 2004 CFI_V1.4_VendorSpecificExtensionsA0Common Flash Interface Version 1.4 Vendor Specific Extensions 7 A p p l i c a t i o n N o t e Conclusion These changes enable updated Flash driver software to recognize and make use of new device features. 8 Common Flash Interface Version 1.4 Vendor Specific Extensions A p p l i c a t i o n N o t e Revision Summary Revision A (March 22, 2004) Initial Release. Trademarks and Notice This document contains FASL confidential information. The contents of this document may not be copied nor duplicated in any form, in whole or in part, without prior written consent from FASL. The information in this document is subject to change without notice. Product and Company names are trademarks or registered trademarks of their respective owners Copyright 2004 FASL LLC. All rights reserved. March 22, 2004 CFI_V1.4_VendorSpecificExtensionsA0Common Flash Interface Version 1.4 Vendor Specific Extensions 9