APPLICATION NOTE Replacing Spansion S25FL256S with Macronix MX25L25635F 1. Introduction This application note compares the Macronix MX25L25635F and Spansion S25FL256S serial flash devices. This document does not provide detailed information on each individual device, but highlights the similarities and differences between them. The comparison covers the general features, performance, packaging, command set, and other parameters. The information in this document is based on datasheets listed in Section 9. 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. Table 2-1: Features Feature Supply Voltage Range READ (1-1-1) (1) FAST_READ (1-1-1)(1) DREAD/DOR (1-1-2)(1) 2READ/DIOR (1-2-2)(1) QREAD/QOR (1-1-4)(1) 4READ/QIOR (1-4-4)(1) QPI (4-4-4)(1) DDR (Double Data Rate) Page Program Size Sector Size Block Size Security OTP Size Program/Erase Suspend & Resume Read Burst Mode Adjustable Output Driver FastBoot/AutoBoot Mode Configurable Dummy Cycles S/W Reset Command HOLD# Pin RESET# Pin Advanced Sector Protection Manufacturer ID Device ID Package(3) Macronix MX25L25635F 2.7V ~ 3.6V Yes Yes Yes Yes Yes Yes Yes 256B 4KB 32KB and 64KB 512B Spansion S25FL256S 2.7V~3.6V / 1.65~3.6V VIO(4) Yes Yes Yes Yes Yes Yes Yes Hybrid Sector Uniform Sector 256B 512B 4KB boot sector 64KB 256KB 1024B Yes Yes Yes Yes Yes Yes Yes Yes Yes C2h 20h/19h 16-SOP (300mil) 8-WSON (8x6mm) - Yes Yes Yes Yes Yes(2) Yes 01h 02h/19h 16-PIN SOP (300mil) 8-WSON (8x6mm) 24-BGA (5x5 ball) Note: P/N: AN-0232 1 Ver 01. Apr. 15, 2013 APPLICATION NOTE 1. x-y-z in I/O mode indicates the number of active pins used for op-code(x), address(y) and data(z). 2. Macronix offers the RESET# pin in all packages, but Spansion only offers the RESET# pin in 16-SOP and 24-BGA packages. 3. See datasheet for full list of packages available. 4. VIO support not offered in all package options. See datasheet ordering information. 3. Performance Comparison Tables 3-1 and 3-2 show MX25L25635F and S25FL256S AC performance. Table 3-1: Read Performance Parameter Macronix MX25L25635F Normal Read 50MHz Fast Read 1-1-1 104MHz(1) DREAD 1-1-2 104MHz 2READ 1-2-2 84MHz(2) QREAD 1-1-4 104MHz 4READ 1-4-4 84MHz(2) 15pf 6ns tCLQV / tV 30pf 8ns Spansion S25FL256S 50MHz 133MHz 104MHz 104MHz 104MHz 104MHz 6.5ns(3.0V-3.6V) 8ns Note: 1. MX25L25635F Fast Read runs up to 104MHz with default dummy cycles and 133MHz with 10 dummy cycles. 2. MX25L25635F Multi I/O runs up to 104MHz with 8 dummy cycles and 133MHz with 10 dummy cycles. 3. All values in Table 3-1 are maximum. Table 3-2: Write Performance Parameter Macronix MX25L25635F 4KB 43ms 32KB 190ms Sector/Block Erase 64KB 340ms 256KB Chip Erase / Bulk Erase 120s Byte 12us Program Page 600us(256B) Program/Erase Cycles 100,000 (Endurance) Spansion S25FL256S 130ms 130ms 520ms 66s 250us(256B) / 340us(512B) 100,000 Note: All values in Table 3-2 are typical. P/N: AN-0232 2 Ver 01. Apr. 15, 2013 APPLICATION NOTE 4. DC Characteristics Both flash series characteristics are similar in primary features and functions. However, there are minor differences in DC characteristics which should be evaluated to determine their significance. Table 4-1: Read / Write Current Parameter Read Current @ 1xI/O Standby Current Deep Power Down Current Write Current Macronix MX25L25635F 15mA @ 84MHz 60uA 20uA 25mA Spansion S25FL256S 16mA @ 50MHz 100uA N/A 100mA Note: All values in Table 4-1 are maximum. Table 4-2 compares I/O voltage levels between the two families. Spansion supports a Versatile I/O Voltage on some package options while Macronix does not. Table 4-2: Input / Output Voltage Parameter VIO Voltage Input Low Voltage Input High Voltage Output Low Voltage Output High Voltage P/N: AN-0232 Macronix MX25L25635F Spansion S25FL256S -0.5V (min.) / 0.8 (max.) 0.7VCC (min.) / VCC+0.4V (max.) 0.2V (max.) VCC-0.2 (min.) 1.65V ~ VCC+200mV -0.5V (min.) / 0.2VIO(max.) 0.7VIO (min.) / VIO+0.4V (max.) 0.15VIO (max.) 0.85VIO (min.) 3 Ver 01. Apr. 15, 2013 APPLICATION NOTE 5. Hardware Consideration The pin assignments of the 16-SOP and 8-WSON are identical, with the exception of the VIO and HOLD# pin functions which are unavailable on the Macronix chips. The figures below show the common packages and the pin assignments for the Macronix and Spansion devices. 16-SOP (300mil) NC/SIO3 VCC RESET# 1 2 3 HOLD#/IO3 1 16 SCK VCC 2 15 SI/IO0 NC RESET#/RFU 3 14 VIO/RFU 13 NC DNU 4 13 NC 12 NC DNU 5 16 SCLK 15 14 SI/SIO0 NC 4 NC 5 12 DNU NC 6 11 NC RFU 6 11 DNU CS# 7 10 GND CS# 7 10 VSS SO/SIO1 8 9 SO/IO1 8 9 MX25L_35F WP#/SIO2 Reset# signal is internal pull high S25FL_S WP# /IO2 DNU means Do Not Use RFU means Reserve for Future Use Reset# and Hold# signals are internal pull high WSON (8x6mm) CS# 1 SO/SIO1 2 WP#SIO2 3 GND 4 MX25L_35F 8 VCC 7 Reset#/SIO3 6 SCLK 5 SI/SIO0 CS# 1 SO/SIO1 2 WP#/SIO2 p 3 VSS Reset# signals is internal pull high P/N: AN-0232 4 S25FL_S 8 VCC 7 HOLD#/SIO3 6 SCK 5 SI/SIO0 Hold# signals are internal pull high 4 Ver 01. Apr. 15, 2013 APPLICATION NOTE 6. Software Considerations The basic command set and 4-Byte command set of both flash families are similar. Status Register and Configuration Register definitions are slightly different. Minor algorithm modifications may be necessary depending on your application. The most common commands are the same as shown in Tables 6-1 and 6-2. Notable differences are highlighted in blue in Table 6-3. Table 6-1: Core Command Set Comparison Instruction Type Read Write Read ID Register Instruction Macronix Spansion MX25L25635F S25FL256S READ READ FAST_READ FAST_READ DREAD DOR 2READ DIOR QREAD QOR 4READ QIOR WREN WREN WRDI WRDI PP PP SE 4K P4E BE SE CE BE RDID RDID RDSR RDSR1 WRSR WRR Description Normal Read Fast Read (1-1-1) 1I/2O Read (1-1-2) 2xI/O Read (1-2-2) 1I/4O Read (1-1-4) 4xI/O Read (1-4-4) Write Enable Write Disable Page Program Sector Erase (1) Block Erase 64KB/256KB Chip Erase / Bulk Erase Read Identification Read Status Register Write Status & Configuration Registers Op-code Macronix Spansion MX25L25635F S25FL256S 03h 03h 0Bh 0Bh 3Bh 3Bh BBh BBh 6Bh 6Bh EBh EBh 06h 06h 04h 04h 02h 02h 20h 20h D8h D8h 60h or C7h 60h or C7h 9Fh 9Fh 05h 05h 01h 01h Notes: 1. Block Erase command D8h erases 64KBytes on the MX25L25635F and S25FL256S Hybrid Sector devices, but erases 256KBytes on S25FL256S Uniform Sector devices. Table 6-2: 4-Byte Command Set Comparison Instruction Type Write P/N: AN-0232 Instruction Macronix Spansion MX25L25635F S25FL256S READ4B 4READ Fast Read4B 4FAST_READ DREAD4B 4DOR 2READ4B 4DIOR QREAD4B 4QOR 4READ4B 4QIOR PP4B 4PP QPP4B 4PP4B SE4B 4P4E BE4B 4SE Description Normal Read Fast Read (1-1-1) 1I/2O Read (1-1-2) 2xI/O Read (1-2-2) 1I/4O Read (1-1-4) 4xI/O Read (1-4-4) Page Program (1-1-1) Quad Page Program (1-1-4) Quad Input Page Program (1-4-4) Sector Erase Block Erase 64KB 5 Op-code Macronix Spansion MX25L25635F S25FL256S 13h 13h 0Ch 0Ch 3Ch 3Ch BCh BCh 6Ch 6Ch ECh ECh 12h 12h 34h 3Eh 21h 21h DCh DCh Ver 01. Apr. 15, 2013 APPLICATION NOTE Table 6-3: Command Comparison Instruction Instruction Type Other Macronix MX25L25635F Spansion S25FL256S EN4B EX4B RSTEN RST EQIO PGM/ERS Suspend PGM/ERS Resume PGM/ERS Suspend PGM/ERS Resume RDSFDP REMS RES 4PP RESET MBR (1) CLSR Enter 4-Byte Mode Exit 4-Byte Mode Reset Enable Software Reset Memory Mode Bit Reset Enable QPI Clear Status Register Fail Flags B7h (2) E9h 66h 99h FFh (2) 35h - F0h FFh (2) 30h PGSP Program Suspend B0h 85h PGRS Program Resume ERSP Erase Suspend ERRS Erase Resume ENSO EXSO RDCR RDSCUR WRSCUR ESFBR RDFBR WRFBR RDDPB WRDPB RDSPB WRSPB ESSPB RDDPB REMS RES QPP OTPP OTPR RDSR2 RDCR ABRD ABWR DYBRD DYBWR PPBRD PPBP PPBE DYBRD WRLR ASPP RDLR ASPRD RDPASS WRPASS PASSULK WPSEL PASSRD PASSP PASSU - Read SFDP Read Electronic Manufacturer Signature Read Electronic ID Quad Page Program (1-1-4) Quad Page Program (1-4-4) OTP Program OTP Read Enter Secured OTP Exit Secured OTP Read Status Register-2 Read Configuration Register Read Security Register Write Security Register Erase Fast Boot Register Read FastBoot/AutoBoot Register Write FastBoot/AutoBoot Register Read DPB (DYB) Register Write DPB (DYB) Register Read SPB (PPB) Status SPB (PPB) Bit Program Erase All SPB (PPB) Read DPB (DYB) Register Write Lock Register (Advanced Sector Protection Register) Read Lock Register (Advanced Sector Protection Register) Read Password Register Write Password Register Password Unlock Write Protect Selection Write Register Advanced Sector Protection Op-code Description Macronix MX25L25635F Spansion S25FL256S 30h (2) B0h 30h 8Ah 75h (2) 5Ah 90h ABh (2) 38h B1h C1h (2) 15h (2) 2Bh (2) 2Fh 18h (2) 16h (2) 17h E0h E1h E2h E3h E4h E0h 7Ah 90h ABh (2) 32h or 38h 42h 4Bh 07h (2) 35h 14h (2) 15h E0h E1h E2h E3h E4h E0h 2Fh 2Dh 2Bh 27h 28h 29h 68h E7h E8h (2) E9h - 1. MX25L25635F devices automatically clear the program or erase fail flags and do not have an explicit command to do so. 2. MX25L25635F and S25FL256S devices share the same command opcode, but the command function is different. P/N: AN-0232 6 (2) 2Ch (2) Ver 01. Apr. 15, 2013 APPLICATION NOTE 6-1. Page Program Length Alignment The MX25L25635F and Hybrid Sector S25FL256S share the same 256-Byte maximum Page Program length. However the Uniform Sector S25FL256S has a 512-Byte Page Program length. Software modification is necessary if the longer page program length is being used. The Page Program length should be set to a maximum of 256 bytes and the 1 to 256 bytes to be programmed must fall within the same 256-Byte page boundary. 6-2. Sector Sizes The MX25L25635F has uniform 64KB blocks that are each subdivided into two 32KB blocks and sixteen 4KB sectors. The S25FL256S is offered in either Hybrid Sector Structure (a hybrid mix of non-overlapping 4KB parameter sectors and 64KB main blocks) or Uniform Sector Structure (uniform 256KB blocks). Please refer to the datasheets listed in Section 9 for memory organization details. For Spansion Hybrid Sector devices, no software adjustment will be required. The MX25L25635F sector and block organization is a superset of the Spansion hybrid memory organization and can match sector for sector and block for block. Spansion devices using uniform 256KB blocks will require software adjustments to accommodate the smaller blocks provided by the MX25L25635F. 6-3. Secure OTP Differences Both device families provide a secure One Time Programmable (OTP) area outside of the main memory array for user defined storage. The sizes, features, and access methods are different. The S25FL256S has commands to directly read (OTPR) and program (OTPW) the OTP area and does not need to explicitly open this area for read and write operations. The MX25L25635F operates in the OTP area using normal read and program instructions after explicitly opening the OTP area with the Enter Secured OTP (ENSO) command. While the OTP area is open, the main array is not accessible. When finished in the OTP area, the Exit Secure OTP (EXSO) command must be issued to return to the Read Main Array mode. The MX25L25635F OTP area has 512 bytes available for user data. The user may permanently lock the whole OTP area to prevent new data from being stored there. This area can optionally be programmed with user supplied data and factory locked by Macronix. 6-4. Block Protection Mode The S25FL256S and the MX25L25635F use Status Register BP (Block Protect) bits to software write protect areas of memory. The S25FL256S only has three BP bits (BP2-BP0) and the granularity of the protected areas is very large. The MX25L25635F uses four BP bits (BP3-BP0) and provides a finer protection area granularity. 6-5. Advanced Sector Protection Mode Both devices offer an Advanced Sector Protection mode used to provide volatile and nonvolatile individual sector (or block) protection and an optional password protection mode, but there are differences that need to be accommodated if this feature is used. P/N: AN-0232 7 Ver 01. Apr. 15, 2013 APPLICATION NOTE 6-6 Status Register, Configuration Register, and Security Register Both devices use registers to configure the flash for operation modes, but there are some differences that designers need to be aware of as software modifications may be needed. A detailed register comparison is shown in Table 6-4, Table 6-5, and Table 6-6. If a detailed functional description of register bits is required, please refer to the datasheets listed in Section 9. Table 6-4: Status Register Register Bit Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 Macronix MX25L25635F 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 Spansion S25FL256S WIP; 1=write operation WEL; 1=write enable BP0; BP protection BP1; BP protection BP2; BP protection E_ERR; 1=erase fail*1 P_ERR; 1=program fail*1 SRWD; 1=SR write disable Note: 1. Macronix MX25L25635F Program and Erase Error bits are located in bits 5 and 6 of its Security Register. Table 6-5: Configuration Register Register Bit Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7 Macronix MX25L25635F Spansion S25FL256S ODS0; Output driver strength FREEZE; 1=BPx write disable ODS1; Output driver strength QUAD; 1=Quad mode enable ODS2; Output driver strength TBPARM; 1= Top parameter sector(1) TB; 1=Bottom area protect BPNV; 1=BPx is Volatile Reserved RFU 4 BYTE; 1=4byte address TBPROT; 1=boot array protect DC0; Dummy cycle LC0; Latency cycle DC1; Dummy cycle LC1; Latency cycle Note: 1. Bit2 of Configuration Register is RFU for S25FL256S with uniform 256KB sector structure. Table 6-6: Security Register Register Bit Macronix MX25L25635F Bit0 4Kb Secured OTP; 1=factory lock Bit1 LDSO; 1=OTP lock down Bit2 PSB; 1=Program suspend Bit3 ESB; 1=Erase suspend Bit4 Reserved Bit5 P_FAIL; 1=Program fail Bit6 E_FAIL; 1=Erase fail Bit7 WPSEL; 1=Individual WP P/N: AN-0232 8 Spansion S25FL256S PS; 1=Program suspend ES; 1=Erase suspend RFU RFU RFU RFU RFU RFU Ver 01. Apr. 15, 2013 APPLICATION NOTE 6-7. Manufacturer and Device Identification Numbers Table 6-7 compares the Manufacturer and Device IDs returned by the RDID and REMS commands. Table 6-7: Manufacturer and Device ID Command Type Macronix MX25L25635F RDID 9Fh C2h/20h/19h REMS 90h C2h/18h Spansion S25FL256S 01h/02h/19h 01h/18h 7. Address Protocol Support 7-1. Addressing Memory Beyond 16MBytes Both devices support various methods to address memory beyond 128Mb (16MBytes). Some of the methods employed are different, but the concepts are the same. Depending on the application, the software may require minor modifications. Please refer to the datasheets listed in Section 9 for more details. 7-1-1. 4-Byte Address Mode 4-Byte Address mode uses the legacy command set but the address field is 4-Bytes instead of 3-Bytes. The Macronix device uses the EN4B and EX4B commands to enter and exit 4-Byte address mode. On the Spansion device, 4-Byte address mode is entered or exited by setting or clearing bit-7 in the Bank Address Register (BAR). After making the mode selection, the appropriate number of address bytes (3-Byte or 4-Byte) must be used for all commands that require an address argument (with the exception of the Read SFDP command (5Ah), which always uses 3-Byte addressing). 7-1-2. Bank Address Mode Bank Address Mode uses one or more of the low-order bits of a bank address register to supply address bits A24 and above for legacy read, program, and erase commands that use 3-Byte addressing. The serial flash internally appends the low-order bits from the bank address to the 3-Byte address to form an extended address. This allows access to addresses beyond 128Mb while still using the legacy command set and 3-Byte addressing. In Spansion devices the bank register is the BAR. In Macronix devices the bank address register is the Extended Address Register (EAR). 7-1-3. 4-Byte Address Command Set Both Macronix and Spansion devices support a 4-Byte Address Command Set which always uses 4-Bytes of address, eliminating the need to enter or exit 4-Byte Address mode. The 4-Byte Address Command Set (see Table 6-2) supplements the legacy 3-Byte command set. P/N: AN-0232 9 Ver 01. Apr. 15, 2013 APPLICATION NOTE 8. Summary The Macronix MX25L25635F and Spansion S25FL256S have similar commands, functions, and features. Additionally, the supported package types have identical footprints and nearly identical pin out definitions. If common features are used in standard traditional modes, the replacement may need only minimal software modification due to differences in status and configuration register bit assignments and the commands used to access them. A more detailed analysis should be done if functions such as Advanced Sector Protection, HOLD# pin, VIO voltage, DDR, or AutoBoot are used. 9. References Table 9-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 9-1: Datasheet Version Datasheet MX25L25635F S25FL128S/256S Location Website Data Issued DEC. 26, 2012 Version Rev. 1.1 Website JUL. 12, 2012 Rev. 05 10. Appendix Table 10-1 shows the basic part number and package information cross reference between Macronix MX25L25635F and Spansion S25FL256S parts. Table 10-1: Part Number Cross Reference Density Macronix Part No. MX25L25635FMI-10G 256Mb MX25L25635FZ2I-10G Spansion Part No. S25FL256SAGMFI00/G0/R0(1)/(2) S25FL256SAGMFI01/G1/R1(1)/(3) S25FL256SDPMFIG0/G1(1)/(2)/(3) S25FL256SAGNFI00/01(1)/(2)/(3) S25FL256SDPNFI00/01(1)/(2)/(3) Package Dimension 16-SOP 300 mil 8-WSON 8x6mm Note: 1. AG: 133MHz; DP: DTR 66MHz; 2. 00: 16-SOP/8-WSON with 64KB sector; G0: 16-SOP with Reset# & 64KB sector; R0: 16-SOP with Reset#, VIO & 64KB sector. 3. 01: 16-SOP/8-WSON with 256KB sector; G1: 16-SOP with Reset# & 256KB sector; R1: 16-SOP with Reset#, VIO & 256KB sector. P/N: AN-0232 10 Ver 01. Apr. 15, 2013 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. 2013. 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: AN-0232 11 Ver 01. Apr. 15, 2013