APPLICATION NOTE Replacing Spansion S25FL_P with Macronix MX25L_35E 1. Introduction Macronix offers MX25L_35E high performance serial flash in densities from 32Mb to 256Mb. MX25L_35E and Spansion S25FL_P devices have similar features, performance, and command codes, but there are differences. This application note explains how to accommodate those differences when replacing Spansion S25FL_P devices with equivalent Macronix MX25L_35E series flash products. The information in this document is based on datasheets listed in Section 8. Newer versions of the datasheets may override the contents of this document. 2. Feature Comparison Both flash device families have similar features and functions as shown in Table 2-1. Significant differences are highlighted in blue and may require special considerations. Table 2-1: Features Feature Vcc voltage range I/O mode*1*2 Macronix MX25L_35E 2.7V ~ 3.6V 1-1-1 1-1-2/1-2-2 1-1-4/1-4-4 Sector Size 4KB/32KB/64KB Program Buffer Size Security OTP Configurable Dummy Cycle S/W Reset Command Hold# Pin Reset# Pin Individual Block Protection Manufacturer ID 32Mb Device ID 64Mb 128Mb 256 Byte 4Kb Yes*3 Yes Yes Yes*4 Yes C2h 20h/16h 20h/17h 20h/18h 8-SOP (209 mil) 16-SOP (300mil) 8-WSON (6x5mm) 8-WSON (6x8mm) 24-BGA (4x6 Ball) Package Spansion S25FL_P 2.7V ~ 3.6V 1-1-1 1-1-2/1-2-2 1-1-4/1-4-4 64KB w/ 4KB boot sector*2 /256KB 256 Byte 128bit*2 Yes 01h 02h/15h 02h/16h 02h/18h 8-pin SO (209 mil) 16-PIN SOP (300mil) 8-WSON (6x5mm) 8-WSON (8x6mm) 24-BGA (4x6 Ball) Note: 1. x-y-z in I/O mode indicates the number of active pins used for opcode(x), address(y) and data(z). 2. S25FL128P doesn’t support multi I/O mode, 4KB boot sector, Security OTP. 3. MX25L12835E doesn’t support Configurable Dummy Cycles. 4. MX25L12835E supports Reset# Pin in 16-SOP package only. P/N: AN0189 1 REV.1, Sep 07, 2014 APPLICATION NOTE 3. Performance Comparison Tables 3-1 and 3-2 show MX25L_E series and S25FL_P series AC performance which should be used as a reference for the design. Table 3-1: Read Performance Parameter Macronix MX25L_35E Normal Read (max.) 50MHz Fast Read (max.) 104MHz 86MHz/104MHz*2 Multo I/O Read 32Mb – 64Mb (max.) 128Mb 70MHz 15pf 6ns tCLQV / tV (max.) 30pf 8ns Spansion S25FL_P 50MHz*1 104MHz 80MHz 80MHz 7ns(3.0V-3.6V) 8ns Note: 1. S25FL128P max SCK Clock Frequency for READ command is 40MHz. 2. MX25L3235E/MX25L6435E run 86MHz with 6 dummy cycles; 104Hhz with 8 dummy cycles. Table 3-2: Write Performance Parameter Erase Chip Erase Program Macronix MX25L_35E Spansion S25FL_P 4KB (typ.) 32KB (typ.) 64KB (typ.) 256KB (typ.) 32Mb (typ.) 64Mb (typ.) 128Mb (typ.) Byte 60ms 0.5s 0.7s -25s 50s 80s 12us page 1.4ms 200ms -0.5s 2s 32s 64s 128s -1.5ms/1.2ms w/ ACC 1.2ms/1.0ms w/ ACC*1 Write/Erase Cycles (Endurance) 100,000 100,000 Note: 1. S25FL128P page program performance. P/N: AN0189 2 REV.1, Sep 07, 2014 APPLICATION NOTE 4. DC Characteristics Comparison DC characteristics are similar for both device families. Table 4-1: Read / Write Current Parameter Read Current @ 1xI/O 32Mb 64Mb Macronix MX25L_35E 19mA (max.) @ 104MHz 19mA (max.) @ 104MHz 128Mb 19mA (max.) @ 104MHz 32Mb Standby Current 64Mb 128Mb Write Current 80uA (max.) 80uA (max.) 100uA (max.) 25mA (max.) Spansion S25FL_P 25mA (max.) @ 104MHz 26mA (max.) @ 104MHz 25mA (max.) @ 104MHz 22mA (max.) @ 104MHz *1 200uA (max.) 200uA (max.) 200uA (max.) 26mA (max.) Note: 1. S25FL128P read current value. This section will show voltage values between the two families. Generally, Spansion supports ACC Program Acceleration Voltage for acceleration program, but Macronix doesn’t. The 9V off-line programming voltage could damage the Macronix device. Table 4-2: Input / Output Voltage Parameter ACC Program Acceleration Voltage Input Low Voltage Input High Voltage Macronix MX25L_35E Spansion S25FL_P - 8.5V ~ 9.5V -0.3V (min.) / 0.3Vcc(max.) 0.7Vcc (min.) / Vcc+0.5V (max.) Output Low Voltage -0.5V (min.) / 0.8 (max.) 0.7VCC (min.) / VCC+0.4V (max.) 0.4V (max.) Output High Voltage VCC-0.2 (min.) Vcc-0.6 (min.) P/N: AN0189 3 0.4 (max.) REV.1, Sep 07, 2014 APPLICATION NOTE 5. Hardware Considerations Both devices are available in 8-SOP, 16-SOP, 8-WSON and 24-BGA packages with identical footprints. The figures below show the common packages and the pinout assignments for the Macronix and Spansion devices. 16-SOP (300mil) HOLD#/SIO3 VCC 1 2 16 SCLK HOLD#/IO3 1 16 SCK HOLD#/IO3 1 16 SCK SI/SIO0 VCC 2 15 SI/IO0 VCC 2 15 SI NC DNC 3 14 DNC NC 3 14 PO6 13 DNC PO2 4 13 PO5 12 DNC PO1 5 12 PO4 NC 3 Reset# for MX25L12835E 15 14 NC 4 13 NC DNC 4 NC 5 12 NC DNC 5 NC 6 11 NC DNC 6 11 DNC PO6 6 11 PO3 CS# 7 10 GND CS# 7 10 GND CS# 7 10 GND SO/SIO1 8 9 SO/IO1 8 9 SO/PO7 8 9 MX25L_35E WP#/SIO2 S25FL_P WP# /ACC/IO2 S25FL128P WP# /ACC Reset# and Hold# signals are internal pull high 8-SOP (200mil): Macronix and Spansion 32Mb device CS# 1 2 SO/SIO1 WP#SIO2 3 GND 4 MX25L_35E 8 VCC 7 6 Hold#/SIO3 CS# 5 SI/SIO0 SCLK SO/SIO1 1 2 WP#/ACC/SIO2 3 GND 4 S25FL_P 8 VCC 7 6 Holdt#/SIO3 5 SI/SIO0 SCK Hold# signal is internal pull high 8-WSON (6x5mm, 8x6mm) 1 8 VCC SO/SIO1 2 7 Hold#/SIO3 WP#SIO2 3 6 SCLK GND 4 5 SI/SIO0 CS# MX25L_35E CS# 1 SO/SIO1 2 WP#/ACC/SIO2 p GND 3 S25FL_P 4 8 VCC 7 HOLD#/SIO3 6 SCK 5 SI/SIO0 CS# 1 SO 2 WP#/ACC p GND 3 4 S25FL128P 8 VCC 7 HOLD# 6 SCK 5 SI Hold# signal is internal pull high 24-BGA (6x4 ball array): Macronix and Spansion 64Mb device 4 NC VCC WP#/ SIO2 HOLD #/SIO3 NC NC 4 NC VCC WP#/ ACC/S IO2 HOLD #/SIO3 NC NC 3 NC GND NC SI/SIO 0 NC NC 3 NC GND NC SI/IO0 NC NC NC NC 2 NC SCLK CS# SO/SI O1 NC NC 2 NC SCK CS# SO/IO 1 NC NC 1 NC NC NC NC NC NC 1 NC NC NC NC NC NC A B C D E F A B C D E F Hold# signal is internal pull high P/N: AN0189 4 REV.1, Sep 07, 2014 APPLICATION NOTE 6. Software Considerations Basic command sets of both flash families are similar. Status Register and Configuration Register definitions may be slightly different, but the concepts are the same. Minor modifications to the algorithm may be necessary depending on your application. See the Macronix datasheet for a complete list of commands, as additional features are provided and not shown. Table 6-1: Command Comparison Instruction Instruction Type Read ID Read RDID READ FAST_READ DREAD 2READ QREAD 4READ Write Register Other Command WREN WRDI PP SE 4K SE 32K SE 64K CE RDSR RDCR WRSR RDSCUR WRSCUR DP RES OTPP OTPR ENSO EXSO Entry Exit RSTEN RST Description Read Identification Read Data Bytes Read Data Bytes at Higher Speed 1I/2O read 2xI/O Read 1I/4O read 4xI/O Read Write Enable Write Disable Page Program Sector Erase Sector Erase 32KB Sector Erase 64KB Chip Erase Read Status Register Read Configuration Register Write Status Register Read Security Register Write Security Register Deep Power Down Release from Deep Power Down Program OTP memory Read OTP Memory Enter Secure OTP Exit Secure OTP Enter x8 Parallel Mode Exit x8 Parallel Mode Reset Enable Reset Memory Macronix Spansion MX25L_35E S25FL_P 9Fh 03h 0Bh 3Bh BBh 6Bh 9Fh 03h 0Bh 3Bh*1 BBh*1 6Bh*1 EBh EBh *1 06h 04h 02h 20h 52h D8h 60 or C7h 06h 04h 02h 20h*1 20h*2 or D8h 60 or C7h 05h 15h 01h 2Bh 2Fh B9h ABh B1h C1h 66h 99h 05h 35h 01h B9h ABh 42h 4Bh 55h*1 45h*1 - Note: 1. S25FL128P doesn’t support multi I/O mode, 4KB boot sector, Security OTP, and has special x8 Parallel mode. 2. S25FL128P option 00 device supports 64KB erase size and uses both 20h and D8h to erase the 64KB block. S25FL128P option 01 device supports 256KB erase size and uses only D8h to erase the 256KB block. P/N: AN0189 5 REV.1, Sep 07, 2014 APPLICATION NOTE 6-2. Status Register, Configuration Register, and Security Register Both devices use registers to setup flash conditions, but there are some differences that designers need to be aware of as modifications to software may be needed. A detailed register comparison is shown in Table 6-2 to Table 6-4. If a detailed functional description of register bits is required please refer to the datasheets listed in section 8. Table 6-2: Status Register Register Bit Macronix MX25L_35E Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 WIP; 1=write operation WEL; 1=write enable BP0; BP protection BP1; BP protection BP2; BP protection BP3; BP protection QE; 1=Quad mode enable SRWD; 1=SR write disable Table 6-3: Configuration Register Register Bit Macronix MX25L_35E Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 Reserved Reserved Reserved TB; 1=Bottom area protect Reserved Reserved Reserved DC; 1=8 dummy cycle Table 6-4: Security Register Register Bit Macronix MX25L_35E Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 4Kb Secured OTP; 1=factory lock LDSO; 1=OTP lock down Reserved Reserved CP mode; 1=CP mode enable P_FAIL; 1=program fail E_FAIL; 1=erase fail WPSEL; 1=individual WP Spansion S25FL_P WIP; 1=write operation WEL; 1=write enable BP0; BP protection BP1; BP protection BP2; BP protection *1 E_ERR; 1=erase fail *1 P_ERR; 1=program fail SRWD; 1=SR write disable Spansion S25FL_P FREEZE; 1=BPx write disable QUAD; 1=Quad mode enable *2 TBPARM; 1= Top parameter sector BPNV; 1=BPx is Volatile NA TBPROT; 1=boot array protect NA NA Spansion S25FL_P - - Note: 1. S25FL128P doesn’t have E_ERR & P_ERR function. It’s NA in 256KB structure and BP3 in 64KB structure. 2. Bit2 of Configuration Register is NA in the S25FL129P with 256KB structure option. 3. MX25L12835E and S25FL128P don’t have Configuration Register. P/N: AN0189 6 REV.1, Sep 07, 2014 APPLICATION NOTE 6-3. Manufacturer ID and Device ID Manufacturer IDs are different. This permits software to identify the device manufacturer. The Device IDs are different in the 32Mb and 64Mb densities. The same command is used to read the different IDs. Table 6-5: Manufacturer and Device ID Command Type 32Mb RDID 9Fh 64Mb 128Mb 32Mb REMS 90h 64Mb 128Mb Macronix MX25L_35E C2h/20h/16h C2h/20h/17h C2h/20h/18h C2h/15h C2h/16h C2h/17h Spansion S25FL_P 01h/02h/15h 01h/02h/16h 01h/02h/18h 01h/15h 01h/16h 01h/17h 7. Summary The Macronix MX25L_35E and Spansion S25FL_P have similar commands, functions, and features. Additionally, the supported package types have identical footprints and nearly identical pinout definitions. A more detailed analysis should be done if any of the “special” functions not supported by the Macronix flash are used, such as the Spansion 8KB erase size, 8-bit parallel programming, or the 9V off-line accelerated programming voltage. Commands to access and program the OTP area are different as well. If common features are used in standard traditional modes, the replacement may need only minimal software modification. 8. References Table 8-1 shows the datasheet versions used for comparison in this application note. For the most current, detailed specification, please refer to the Macronix Website at http://www.macronix.com Table 8-1: Datasheet Version Datasheet MX25L3235E MX25L6435E MX25L12835E S25FL032P S25FL064P S25FL128P S25FL129P P/N: AN0189 Location Website Website Website Website Website Website Website 7 Data Issued JUN. 18, 2012 APR. 19, 2012 MAY 28, 2012 DEC. 07, 2011 NOV. 18, 2011 May. 16, 2012 May. 16, 2012 Version Rev. 1.1 Rev. 0.05 Rev. 1.3 Rev. 06 Rev. 05 Rev. 10 Rev. 07 REV.1, Sep 07, 2014 APPLICATION NOTE 9. Appendix Table 9-1 shows the basic part number and package information cross reference between Macronix MX25L_35E and Spansion S25FL_P parts. Table 9-1: Part Number Cross Reference Density 32Mb 64Mb Macronix Part No. Spansion Part No. Package Dimension MX25L3235EMI-10G S25FL032P0XMFI00 16-SOP 300 mil MX25L3235EM2I-10G S25FL032P0XMFI01 8-SOP 208 mil MX25L3235EZNI-10G S25FL032P0XNFI01 8-WSON 6x5mm MX25L6435EMI-10G S25FL064P0XMFI00 16-SOP 300 mil MX25L6435EM2I-10G - 8-SOP 208 mil MX25L6435EZNI-10G - 8-WSON 6x5mm MX25L6435EXCI-10G S25FL064P0XBHI03 24-BGA 6x4 Ball 16-SOP 300 mil 8-WSON 8x6mm / MX25L12835EMI-10G 128Mb S25FL128P0XMFI00 01 S25FL129P0XMFI00/01 / MX25L12835EZNI-10G *1 25FL128P0XNFI00 01 *1 *1 S25FL129P0XNFI00/01 *1 Note: 1. S25FL128P & S25FL129P have two sector structures. 00:64KB structure; 01: 256KB structure. P/N: AN0189 8 REV.1, Sep 07, 2014 APPLICATION NOTE Except for customized products which have been expressly identified in the applicable agreement, Macronix's products are designed, developed, and/or manufactured for ordinary business, industrial, personal, and/or household applications only, and not for use in any applications which may, directly or indirectly, cause death, personal injury, or severe property damages. In the event Macronix products are used in contradicted to their target usage above, the buyer shall take any and all actions to ensure said Macronix's product qualified for its actual use in accordance with the applicable laws and regulations; and Macronix as well as it’s suppliers and/or distributors shall be released from any and all liability arisen therefrom. Copyright© Macronix International Co., Ltd. 2014. All rights reserved, including the trademarks and tradename thereof, such as Macronix, MXIC, MXIC Logo, MX Logo, Integrated Solutions Provider, NBit, Nbit, NBiit, Macronix NBit, eLiteFlash, HybridNVM, HybridFlash, XtraROM, Phines, KH Logo, BE-SONOS, KSMC, Kingtech, MXSMIO, Macronix vEE, Macronix MAP, Rich Au-dio, Rich Book, Rich TV, and FitCAM. The names and brands of third party referred thereto (if any) are for identification purposes only For the contact and order information, please visit Macronix’s Web site at: http://www.macronix.com P/N: AN0189 9 REV.1, Sep 07, 2014