FUJITSU SEMICONDUCTOR DATA SHEET DS05-20910-2E BURST MODE FLASH MEMORY CMOS 128M (8M × 16) BIT MBM29BS/FS12DH 15 ■ DESCRIPTION The MBM29BS/FS12DH is a 128 Mbit, 1.8 Volt-only, Burst mode and dual operation Flash memory organized as 8M words of 16 bits each. The device offered in a 80-ball FBGA package. This device is designed to be programmed in-system with the standard system 1.8 V VCC supply. 12.0 V VPP and 5.0 V VCC are not required for write or erase operations. The device can also be programmed in standard EPROM programmers. (Continued) ■ PRODUCT LINE UP Synchronous/Burst Asynchronous Part No. MBM29BS12DH MBM29FS12DH Handshaking On/Off Non-Handshaking Handshaking Max Latency (even address in case of Handshaking) Time (ns) 71 56 Max Burst Access Time (ns) 11 11 Max OE Access Time (ns) 11 11 Max Address Access Time (ns) 50 50 Max CE Access Time (ns) 50 50 Max OE Access Time (ns) 11 11 ■ PACKAGE 80-ball plastic FBGA (BGA-80P-M04) MBM29BS/FS12DH15 (Continued) The device provides truly high performance non-volatile memory solution. The device offers fast burst access frequency of 66 MHz with initial access times of 56 ns at Handshaking mode, allowing operation of high-speed microprocessors without wait states. To eliminate bus connection the device has separate chip enable (CE), write enable (WE), address valid (AVD) and output enable (OE) controls. For burst operations, the device additionally requires Ready (RDY) at Handshaking mode, and Clock (CLK). This implementation allows easy interface with minimal glue logic to a wide range of microprocessors/ microcontrollers for high performance read operations. The burst read mode feature gives system designers flexibility in the interface to the device. The user can preset the burst length and wrap through the same memory space. At 66 MHz, the device provides a burst access of 11 ns with a latency of 56 ns at 30 pF (Handshaking mode). The dual operation function provides simultaneous operation by dividing the memory space into four banks. The device can improve overall system performance by allowing a host system to program or erase in one bank, then immediately and simultaneously read from another bank, with zero latency. This releases the system from waiting for the completion of program or erase operations. The device is command set compatible with JEDEC standard E2PROMs. Commands are written to the command register using standard microprocessor write timing. Register contents serve as inputs to an internal statemachine which controls the erase and programming circuitry. Write cycles also internally latch addresses and data needed for the programming and erase operations. Reading data out of the device is similar to reading from 5.0 V and 12.0 V Flash or EPROM devices. The device is programmed by executing the program command sequence. This will invoke the Embedded Program Algorithm which is an internal algorithm that automatically times the program pulse widths and verifies proper cell margins. Typically, each 32K words sector can be programmed and verified in about 0.3 second. Erase is accomplished by executing the erase command sequence. This will invoke the Embedded Erase Algorithm which is an internal algorithm that automatically preprograms the array if it is not already programmed before executing the erase operation. During erase, the device automatically times the erase pulse widths and verifies proper cell margins. Any individual sector is typically erased and verified in 0.5 second. (If already preprogrammed.) The device also features a sector erase architecture. The sector mode allows each sector to be erased and reprogrammed without affecting other sectors. The device is erased when shipped from the factory. The Enhanced VI/O (VCCQ) feature allows the output voltage generated on the device to be determined based on the VI/O level. This feature allows this device to operate in the 1.8 V I/O environment, driving and receiving signals to and from other 1.8 V devices on the same bus. The device features single 1.8 V power supply operation for both read and write functions. Internally generated and regulated voltages are provided for the program and erase operations. The end of program or erase is detected by Data Polling of DQ7, by the Toggle Bit feature on DQ6, output pin. Once the end of a program or erase cycle has been completed, the device internally resets to the read mode. Fujitsu’s Flash technology combines years of Flash memory manufacturing experience to produce the highest levels of quality, reliability and cost effectiveness. The device electrically erases all bits within a sector simultaneously via Fowler-Nordheim tunneling. The data is programmed using hot electron injection. 2 MBM29BS/FS12DH15 ■ FEATURES • • • • • • • • • • • • • • • • • • • • • 0.13 µm process technology Single 1.8 V read, program and erase (1.65 V to 1.95 V) Simultaneous Read/Write operation (Dual Bank) FlexBankTM*1 Bank A: 16 Mbit (4 Kwords × 8 and 32 Kwords × 31) Bank B: 48 Mbit (32 Kwords × 96) Bank C: 48 Mbit (32 Kwords × 96) Bank D: 16 Mbit (4 Kwords × 8 and 32 Kwords × 31) Enhanced VI/OTM*2 (VCCQ) Feature Input/ Output voltage generated on the device is determined based on the VI/O level High Performance Burst frequency reach at 66 MHz Burst access times of 11 ns @ 30 pF at industrial temperature range Asynchronous random access times of 50 ns (at 30 pF) Synchronous latency of 56 ns with 1.8 V VCCQ for Handshaking mode Programmable Burst Interface Linear Burst: 8, 16, and 32 words with wrap-around Compatible with JEDEC-standard commands Uses same software commands as E2PROMs Minimum 100,000 program/erase cycles Sector Erase Architecture Eight 4 Kwords, two hundred fifty-four 32 Kwords sectors, eight 4 Kwords sectors. Any combination of sectors can be concurrently erased. Also supports full chip erase. HiddenROM region 64 words for factory and 64 words for customer of HiddenROM, accessible through a new “HiddenROM Enable” command sequence Factory serialized and protected to provide a sector secure serial number (ESN) Write Protect Pin (WP) At VIL, allows protection of “outermost” 4×4 K words on low, high end or both ends of boot sectors, regardless of sector protection/unprotection status Accelerate Pin (ACC) At VACC, increases program performance. ; all sectors locked when ACC = VIL Embedded EraseTM*2 Algorithms Automatically preprograms and erases the chip or any sector Embedded ProgramTM*2 Algorithms Automatically writes and verifies data at specified address Data Polling and Toggle Bit feature for detection of program or erase cycle completion Ready Output (RDY) In Synchronous Mode, indicates the status of the Burst read. In Asynchronous Mode, indicates the status of the internal program and erase function. Automatic sleep mode When address remain stable, the device automatically switches itself to low power mode Erase Suspend/Resume Suspends the erase operation to allow a read data and/or program in another sector within the same device In accordance with CFI (Common Flash Interface) Hardware reset pin (RESET) Hardware method to reset the device for reading array data *1 : FlexBankTM is a trademark of Fujitsu Limited. *2 : Embedded EraseTM, Embedded ProgramTM and Enhanced VI/OTM are trademarks of Advanced Micro Devices, Inc. (Continued) 3 MBM29BS/FS12DH15 (Continued) • Sector Protection Persistent sector protection Password sector protection ACC protects all sectors WP protects the outermost 4 x 4 K words on both ends of boot sectors, regardless of sector protection / unprotection status. • Handshaking feature available (MBM29FS12DH) Provides host system with minimum possible latency by monitoring RDY • CMOS compatible inputs, CMOS compatible outputs 4 MBM29BS/FS12DH15 ■ PIN ASSIGNMENT FBGA (TOP VIEW) Marking Side A8 B8 C8 D8 E8 F8 G8 H8 J8 K8 L8 M8 N.C. N.C. N.C. A22 N.C. VCCQ VSSQ N.C. N.C. N.C. N.C. N.C. A7 B7 C7 D7 E7 F7 G7 H7 J7 K7 L7 M7 N.C. N.C. A13 A12 A14 A15 A16 N.C. DQ15 VSS N.C. N.C. C6 D6 E6 F6 G6 H6 J6 K6 A9 A8 A10 A11 DQ7 DQ14 DQ13 DQ6 C5 D5 E5 F5 G5 H5 J5 K5 WE RESET A21 A19 DQ5 DQ12 VCC DQ4 C4 D4 E4 F4 G4 H4 J4 K4 RDY ACC A18 A20 DQ2 DQ10 DQ11 DQ3 C3 D3 E3 F3 G3 H3 J3 K3 A7 A17 A6 A5 DQ0 DQ8 DQ9 DQ1 A2 B2 C2 D2 E2 F2 G2 H2 J2 K2 N.C. N.C. A3 A4 A2 A1 A0 CE OE VSS A1 B1 C1 D1 E1 F1 G1 H1 J1 K1 L1 M1 N.C. N.C. N.C. VCC CLK WP AVD VCCQ VSSQ N.C. N.C. N.C. L2 M2 N.C. N.C. (BGA-80P-M04) ■ PIN DESCRIPTIONS Pin name A22 to A0 DQ15 to DQ0 MBM29BS/FS12DH Pin Configuration Table Function Address Inputs Data Inputs/Outputs CLK CLK Input CE Chip Enable OE Output Enable WE Write Enable AVD Address Valid Input RDY Ready Output. (In asynchronous mode, RY/BY Output) RESET Hardware Reset WP Hardware Write Protection ACC Program Acceleration N.C. Pin Not Connected Internally VSS Device Ground VCC Device Power Supply VSSQ Input & Output Buffer Ground VCCQ Input & Output Buffer Power Supply 5 MBM29BS/FS12DH15 Bank A address Cell Matrix 16 Mbit (Bank A) A22 to A0 Cell Matrix 48 Mbit (Bank B) X-Decoder Y-Gating VCC VSS VCCQ VSSQ Y-Gating ■ BLOCK DIAGRAM X-Decoder Bank B Address State Control & Command Register RDY DQ15 to DQ0 Status Control Bank C Address X-Decoder Cell Matrix 16 Mbit (Bank D) Bank D address Y-Gating X-Decoder Cell Matrix 48 Mbit (Bank C) ■ LOGIC SYMBOL 23 A22 to A0 16 DQ15 to DQ0 CLK WP ACC CE OE WE RESET AVD 6 RDY Y-Gating RESET WE CE OE WP AVD CLK ACC MBM29BS/FS12DH15 ■ DEVICE BUS OPERATION MBM29BS/FS12DH User Bus Operations Table CE OE WE WP ACC A22 to A0 DQ15 to DQ0 CLK AVD RESET Operation Asynchronous Mode Operations (Default) Asynchronous Read Addresses Latched *1 L L H X X Addr In DOUT X L H Standby H X X X X X High-Z X X H L H H X Output Disable Write - WE address latched * 3 L 3 H L X X High-Z X X H H* 2 Addr In DIN X L H X* H* 2 Addr In DIN X 2 X* 2 Write - AVD address latched * L H Boot Block Sector Write Protection *2 X X X L X X X X X H All Sector Write Protection *2 X X X X L X X X X H RESET X X X X X X High-Z X X L H Synchronous Mode Operations (need to set the configuration register) Load Starting Burst Address (CLK latch) *1 L X H X X Addr In X Advance Burst to next address with appropriate Data presented on the Data Bus *1 L L H X X X DOUT H H Terminate current Burst read cycle H X H X X X High-Z X H Terminate current Burst read via RESET X X H X X X High-Z X L Terminate current Burst read cycle and start new Burst read cycle L X H X X Addr In DOUT Burst Suspend L H H X X X High-Z X H H Standby H X X X X X High-Z X X H Output Disable L H H X X X High-Z X X H Write - WE address latched *4 L H L X*2 H*2 Addr In DIN H/L L H Write - CLK address latched *4 L H X*2 H*2 Addr In DIN L H 2 2 Addr In DIN H/L X X All Sector Write Protection *2 X RESET X 4 Write - AVD address latched * Boot Block Sector Write Protection * 2 Legend: L = VIL, H = VIH, X = VIL or VIH, H X H H X* H* H X L X X X X X H X X X L X X X X H X X X X X High-Z X X L = Pulse input. See “■DC CHARACTERISTICS” for voltage levels. *1 : WE can be VIL if OE is VIL, OE at VIH initiates the write operations. *2 : At WP=VIL, SA0-SA3 and SA266-SA269 are protected. At ACC=VIL, all sectors are protected. *3 : Write Operation: at asynchronous mode, addresses are latched on the last falling edge of WE pulse while AVD is held low or rising edge of AVD pulse whichever comes first. Data is latched on the 1st rising edge of WE. *4 : Write Operation: at synchronous mode, addresses are latched on the falling edge of WE while AVD is held low or active edge of CLK while AVD is held low whichever happens first. Data is latched on the 1st rising edge of WE. 7 MBM29BS/FS12DH15 MBM29BS/FS12DH Command Definitions Table Command Sequence First Bus Bus Second Write Write Write Cycle Cycle Cycles Req’d Addr. Data Addr. Data Read / Reset 1 XXXh F0h Read / Reset 3 555h AAh 2AAh RA Third Write Fourth Write Fifth Write Sixth Write Cycle Cycle Cycle Cycle Addr. Data RD — — 55h 555h F0h 90h Addr. Seventh Write Cycle Data Addr. Data Addr. Data Addr. Data — — — — — — — — RA RD — — — — — — — — — — — — — — Autoselect 3 555h AAh 2AAh 55h (BA) 555h Program 4 555h AAh 2AAh 55h 555h A0h PA PD — — — — — — Chip Erase 6 555h AAh 2AAh 55h 555h 80h 555h AAh 2AAh 55h 555h 10h — — Sector Erase 6 555h AAh 2AAh 55h 555h 80h 555h AAh 2AAh 55h SA 30h — — Erase Suspend 1 BA B0h — — — — — — — — — — — — Erase Resume 1 BA 30h — — — — — — — — — — — — Set to Fast Mode 3 555h AAh 2AAh 55h 555h 20h — — — — — — — — Fast Program 2 XXXh PD — — — — — — — — — — Reset from Fast Mode *1 2 BA — — — — — — — — — — Set Burst Mode Configuration Register 3 555h AAh 2AAh 55h (CR) 555h C0h — — — — — — — — Query 1 (BA) 55h — — — — — — — — — — — HiddenROM Entry 3 555h AAh 2AAh 55h 555h 88h — — — — — — — — HiddenROM Program*2 4 555h AAh 2AAh 55h 555h A0h (HRA) PA PD — — — — — — HiddenROM Exit *2 4 555h AAh 2AAh 55h 90h XXXh 00h — — — — — — HiddenROM Protect *2 6 555h AAh 2AAh 55h 555h 60h OPBP 68h OPBP 48h XXXh RD (0) — — 555h AAh 2AAh 55h 555h 38h XX0h PD0 — — — — — — 555h AAh 2AAh 55h 555h 38h XX1h PD1 — — — — — — 555h AAh 2AAh 55h 555h 38h XX2h PD2 — — — — — — 555h AAh 2AAh 55h 555h 38h XX3h PD3 — — — — — — 555h AAh 2AAh 55h 555h 28h XX0h PD0 XX1h PD1 XX2h PD2 XX3h PD3 Password Program Password Unlock 4 7 A0 PA 90h XXXh F0h*3 98h — (HRBA) 555h (Continued) 8 MBM29BS/FS12DH15 (Continued) Command Sequence First Bus Bus Second Third Write Write Write Write Cycle Cycle Cycle Cycles Req’d Addr. Data Addr. Data Addr. Data Fourth Write Cycle Fifth Write Cycle Addr. Addr. Password Verify 4 555h AAh 2AAh 55h 555h C8h Password Mode Locking Bit Program 6 555h AAh 2AAh 55h 555h 60h Persistent Protection Mode Locking Bit Program 6 555h AAh 2AAh 55h 555h 60h SPML PPB Program 6 555h AAh 2AAh 55h 555h 60h PPB Verify 4 555h AAh 2AAh 55h (BA) 555h All PPB Erase 6 555h AAh 2AAh 55h PPB Lock Bit Set 6 555h AAh 2AAh PPB Lock Bit Verify 4 555h DPB Write 4 DPB Erase 4 DPB Verify 4 Data Sixth Write Cycle Data Addr. Data Seventh Write Cycle Addr. Data — — — — — — PL 48h XXh RD (0) — — 68h SPML 48h XXh RD (0) — — SGA+ WP 68h SGA+ 48h WP XXh RD (0) — — 90h SGA+ WP RD (0) — — — — — — 555h 60h WPE 60h WPE 40h XXh RD (0) — — 55h 555h 78h — — — — — — — — AAh 2AAh 55h 555h 58h SA RD (1) — — — — — — 555h AAh 2AAh 55h 555h 48h SA X1h — — — — — — 555h AAh 2AAh 55h 555h 48h SA X0h — — — — — — SA RD (0) — — — — — — 555h AAh 2AAh 55h 555h 58h PWA PWD PL 68h Legend: RA PA = Address of the memory location to be read. = Address of the memory location to be programmed. Addresses latch on the rising edge of the AVD pulse or active edge of CLK while AVD = VIL whichever comes first or falling edge of write pulse while AVD = VIL. SA = Address of the sector to be erased. The combination of A22, A21, A20, A19, A18, A17, A16, A15, A14, A13, and A12 will uniquely select any sector. BA = Bank Address. Address settled by A22, A21, A20 will select Bank A, Bank B, Bank C and Bank D. RD = Data read from location RA during read operation. PD = Data to be programmed at location PA. Data latches on the rising edge of write pulse. SGA = Sector group address to be protected. SD = Sector group protection verify data. Output 01h at protected sector group addresses and output 00h at unprotected sector group addresses. HRA = Address of the HiddenROM area 000000h to 00007Fh HRBA = Bank Address of the HiddenROM area (A22 = A21 = A20 = VIL) RD (0) = Read Data bit. If programmed, DQ0 = 1, if erase, DQ0 = 0 RD (1) = Read Data bit. If programmed, DQ1 = 1, if erase, DQ1 = 0 OPBP = (A7, A6, A5, A4, A3, A2, A1, A0) is (0, 0, 0, 1, 1, 0, 1, 0) PWA/PWD = Password Address/Password Data PL = (A7, A6, A5, A4, A3, A2, A1, A0) is (0, 0, 0, 0, 1, 0, 1, 0) SPML = (A7, A6, A5, A4, A3, A2, A1, A0) is (0, 0, 0, 1, 0, 0, 1, 0) WP = (A7, A6, A5, A4, A3, A2, A1, A0) is (0, 0, 0, 0, 0, 0, 1, 0) WPE = (A7, A6, A5, A4, A3, A2, A1, A0) is (0, 1, 0, 0, 0, 0, 1, 0) CR = Configuration Register address bits A19 to A12. (Continued) 9 MBM29BS/FS12DH15 (Continued) *1: This command is valid during Fast Mode. *2: This command is valid during HiddenROM mode. *3: The data “00h” is also acceptable. Notes : • Address bits A22 to A11 = X = “H” or “L” for all address commands except for PA, SA, BA, SGA, OPBP, PWA, PL, SPML, WP, WPE. • Bus operations are defined in “MBM29BS/FS12DH User Bus Operations Table”. • Both Read/Reset commands are functionally equivalent, resetting the device to the read mode. • Command Combinations not described in “MBM29BS/FS12DH Command Definitions Table” are illegal. Type MBM29BS/FS12DH Sector Protection Verify Autoselect Codes Table A7 A6 A5 A4 A3 A2 A1 A0 Code (HEX) A22 to A12 Manufacture’s Code BA VIL VIL VIL VIL VIL VIL VIL VIL 04h Device Code BA VIL VIL VIL VIL VIL VIL VIL VIH 227Eh BA VIL VIL VIL VIL VIH VIH VIH VIL 2218h BA VIL VIL VIL VIL VIH VIH VIH VIH 2200h Sector Group Addresses VIL VIL VIL VIL VIL VIL VIH VIL 01h*1 VIH DQ7 - Factory Lock Bit 1 = Locked, 0 = Not Locked DQ6 - Customer Lock Bit 1 = Locked, 0 = Not Locked DQ5 - Handshake Bit 1 = Handshake (FS12), 0 = non-Handshake(BS12) Extended Device Code*2 Sector Group Protection Indicator Bits BA VIL VIL VIL VIL VIL VIL VIH *1 : Outputs 01h at protected sector group addresses and outputs 00h at unprotected sector group addresses. *2 : A read cycle at address (BA) 01h outputs device code. When 227Eh is output, it indicates that two additional codes, called Extended Device Codes, will be required. Therefore the system may continue reading out these Extended Device Codes at the address of (BA) 0Eh, as well as at (BA) 0Fh. Extended Autoselect Code Table Type Manufacture’s Code 10 Code DQ15 DQ14 DQ13 DQ12 DQ11 DQ10 DQ9 DQ8 DQ7 DQ6 DQ5 DQ4 DQ3 DQ2 DQ1 DQ0 04h 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 Device Code 227Eh 0 0 1 0 0 0 1 0 0 1 1 1 1 1 1 0 Extended Device Code 2218h 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 0 2200h 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 Sector Group Protection 00h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 MBM29BS/FS12DH15 ■ FLEXIBLE SECTOR-ERASE ARCHITECTURE Sector Address Table (Bank A) Sector Address Bank Bank A Sector SA0 SA1 SA2 SA3 SA4 SA5 SA6 SA7 SA8 SA9 SA10 SA11 SA12 SA13 SA14 SA15 SA16 SA17 SA18 SA19 SA20 SA21 SA22 SA23 SA24 SA25 SA26 SA27 SA28 SA29 SA30 SA31 SA32 SA33 SA34 SA35 SA36 SA37 SA38 Bank Address A22 A21 A20 A19 A18 A17 A16 A15 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 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 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 0 0 0 0 0 1 1 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 A14 0 0 0 0 1 1 1 1 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X A13 0 0 1 1 0 0 1 1 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X A12 0 1 0 1 0 1 0 1 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Sector Size (× 16) (Kwords) Address Range 4 4 4 4 4 4 4 4 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 000000h to 000FFFh 001000h to 001FFFh 002000h to 002FFFh 003000h to 003FFFh 004000h to 004FFFh 005000h to 005FFFh 006000h to 006FFFh 007000h to 007FFFh 008000h to 00FFFFh 010000h to 017FFFh 018000h to 01FFFFh 020000h to 027FFFh 028000h to 02FFFFh 030000h to 037FFFh 038000h to 03FFFFh 040000h to 047FFFh 048000h to 04FFFFh 050000h to 057FFFh 058000h to 05FFFFh 060000h to 06FFFFh 068000h to 06FFFFh 070000h to 077FFFh 078000h to 07FFFFh 080000h to 087FFFh 088000h to 08FFFFh 090000h to 097FFFh 098000h to 09FFFFh 0A0000h to 0A7FFFh 0A8000h to 0AFFFFh 0B0000h to 0B7FFFh 0B8000h to 0BFFFFh 0C0000h to 0C7FFFh 0C8000h to 0CFFFFh 0D0000h to 0D7FFFh 0D8000h to 0DFFFFh 0E0000h to 0E7FFFh 0E8000h to 0EFFFFh 0F0000h to 0F7FFFh 0F8000h to 0FFFFFh 11 MBM29BS/FS12DH15 Sector Address Table (Bank B) Sector Address 12 Bank Sector Bank B SA39 SA40 SA41 SA42 SA43 SA44 SA45 SA46 SA47 SA48 SA49 SA50 SA51 SA52 SA53 SA54 SA55 SA56 SA57 SA58 SA59 SA60 SA61 SA62 SA63 SA64 SA65 SA66 SA67 SA68 SA69 SA70 SA71 SA72 SA73 SA74 SA75 SA76 SA77 Bank Address A22 A21 A20 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 Sector Size (× 16) Address Range A19 A18 A17 A16 A15 A14 A13 A12 (Kwords) 0 0 0 0 0 X X X 32 100000h to 107FFFh 0 0 0 0 1 X X X 32 108000h to 10FFFFh 0 0 0 1 0 X X X 32 110000h to 117FFFh 0 0 0 1 1 X X X 32 118000h to 11FFFFh 0 0 1 0 0 X X X 32 120000h to 127FFFh 0 0 1 0 1 X X X 32 128000h to 12FFFFh 0 0 1 1 0 X X X 32 130000h to 137FFFh 0 0 1 1 1 X X X 32 138000h to 13FFFFh 0 1 0 0 0 X X X 32 140000h to 147FFFh 0 1 0 0 1 X X X 32 148000h to 14FFFFh 0 1 0 1 0 X X X 32 150000h to 157FFFh 0 1 0 1 1 X X X 32 158000h to 15FFFFh 0 1 1 0 0 X X X 32 160000h to 167FFFh 0 1 1 0 1 X X X 32 168000h to 16FFFFh 0 1 1 1 0 X X X 32 170000h to 177FFFh 0 1 1 1 1 X X X 32 178000h to 17FFFFh 1 0 0 0 0 X X X 32 180000h to 187FFFh 1 0 0 0 1 X X X 32 188000h to 18FFFFh 1 0 0 1 0 X X X 32 190000h to 197FFFh 1 0 0 1 1 X X X 32 198000h to 19FFFFh 1 0 1 0 0 X X X 32 1A0000h to 1A7FFFh 1 0 1 0 1 X X X 32 1A8000h to 1AFFFFh 1 0 1 1 0 X X X 32 1B0000h to 1B7FFFh 1 0 1 1 1 X X X 32 1B8000h to 1BFFFFh 1 1 0 0 0 X X X 32 1C0000h to 1C7FFFh 1 1 0 0 1 X X X 32 1C8000h to 1CFFFFh 1 1 0 1 0 X X X 32 1D0000h to 1D7FFFh 1 1 0 1 1 X X X 32 1D8000h to 1DFFFFh 1 1 1 0 0 X X X 32 1E0000h to 1E7FFFh 1 1 1 0 1 X X X 32 1E8000h to 1EFFFFh 1 1 1 1 0 X X X 32 1F0000h to 1F7FFFh 1 1 1 1 1 X X X 32 1F8000h to 1FFFFFh 0 0 0 0 0 X X X 32 200000h to 207FFFh 0 0 0 0 1 X X X 32 208000h to 20FFFFh 0 0 0 1 0 X X X 32 210000h to 217FFFh 0 0 0 1 1 X X X 32 218000h to 21FFFFh 0 0 1 0 0 X X X 32 220000h to 227FFFh 0 0 1 0 1 X X X 32 228000h to 22FFFFh 0 0 1 1 0 X X X 32 230000h to 237FFFh (Continued) MBM29BS/FS12DH15 Sector Address Bank Sector Bank B SA78 SA79 SA80 SA81 SA82 SA83 SA84 SA85 SA86 SA87 SA88 SA89 SA90 SA91 SA92 SA93 SA94 SA95 SA96 SA97 SA98 SA99 SA100 SA101 SA102 SA103 SA104 SA105 SA106 SA107 SA108 SA109 SA110 SA111 SA112 SA113 SA114 SA115 SA116 Bank Address A22 A21 A20 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 Sector Size (× 16) Address Range A19 A18 A17 A16 A15 A14 A13 A12 (Kwords) 0 0 1 1 1 X X X 32 238000h to 23FFFFh 0 1 0 0 0 X X X 32 240000h to 247FFFh 0 1 0 0 1 X X X 32 248000h to 24FFFFh 0 1 0 1 0 X X X 32 250000h to 257FFFh 0 1 0 1 1 X X X 32 258000h to 25FFFFh 0 1 1 0 0 X X X 32 260000h to 267FFFh 0 1 1 0 1 X X X 32 268000h to 26FFFFh 0 1 1 1 0 X X X 32 270000h to 277FFFh 0 1 1 1 1 X X X 32 278000h to 27FFFFh 1 0 0 0 0 X X X 32 280000h to 287FFFh 1 0 0 0 1 X X X 32 288000h to 28FFFFh 1 0 0 1 0 X X X 32 290000h to 297FFFh 1 0 0 1 1 X X X 32 298000h to 29FFFFh 1 0 1 0 0 X X X 32 2A0000h to 2A7FFFh 1 0 1 0 1 X X X 32 2A8000h to 2AFFFFh 1 0 1 1 0 X X X 32 2B0000h to 2B7FFFh 1 0 1 1 1 X X X 32 2B8000h to 2BFFFFh 1 1 0 0 0 X X X 32 2C0000h to 2C7FFFh 1 1 0 0 1 X X X 32 2C8000h to 2CFFFFh 1 1 0 1 0 X X X 32 2D0000h to 2D7FFFh 1 1 0 1 1 X X X 32 2D8000h to 2DFFFFh 1 1 1 0 0 X X X 32 2E0000h to 2E7FFFh 1 1 1 0 1 X X X 32 2E8000h to 2EFFFFh 1 1 1 1 0 X X X 32 2F0000h to 2F7FFFh 1 1 1 1 1 X X X 32 2F8000h to 2FFFFFh 0 0 0 0 0 X X X 32 300000h to 307FFFh 0 0 0 0 1 X X X 32 308000h to 30FFFFh 0 0 0 1 0 X X X 32 310000h to 317FFFh 0 0 0 1 1 X X X 32 318000h to 31FFFFh 0 0 1 0 0 X X X 32 320000h to 327FFFh 0 0 1 0 1 X X X 32 328000h to 32FFFFh 0 0 1 1 0 X X X 32 330000h to 337FFFh 0 0 1 1 1 X X X 32 338000h to 33FFFFh 0 1 0 0 0 X X X 32 340000h to 347FFFh 0 1 0 0 1 X X X 32 348000h to 34FFFFh 0 1 0 1 0 X X X 32 350000h to 357FFFh 0 1 0 1 1 X X X 32 358000h to 35FFFFh 0 1 1 0 0 X X X 32 360000h to 367FFFh 0 1 1 0 1 X X X 32 368000h to 36FFFFh (Continued) 13 MBM29BS/FS12DH15 (Continued) Sector Address 14 Bank Sector Bank B SA117 SA118 SA119 SA120 SA121 SA122 SA123 SA124 SA125 SA126 SA127 SA128 SA129 SA130 SA131 SA132 SA133 SA134 Bank Address A22 A21 A20 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 Sector Size (× 16) Address Range A19 A18 A17 A16 A15 A14 A13 A12 (Kwords) 0 1 1 1 0 X X X 32 370000h to 377FFFh 0 1 1 1 1 X X X 32 378000h to 37FFFFh 1 0 0 0 0 X X X 32 380000h to 387FFFh 1 0 0 0 1 X X X 32 388000h to 38FFFFh 1 0 0 1 0 X X X 32 390000h to 397FFFh 1 0 0 1 1 X X X 32 398000h to 39FFFFh 1 0 1 0 0 X X X 32 3A0000h to 3A7FFFh 1 0 1 0 1 X X X 32 3A8000h to 3AFFFFh 1 0 1 1 0 X X X 32 3B0000h to 3B7FFFh 1 0 1 1 1 X X X 32 3B8000h to 3BFFFFh 1 1 0 0 0 X X X 32 3C0000h to 3C7FFFh 1 1 0 0 1 X X X 32 3C8000h to 3CFFFFh 1 1 0 1 0 X X X 32 3D0000h to 3D7FFFh 1 1 0 1 1 X X X 32 3D8000h to 3DFFFFh 1 1 1 0 0 X X X 32 3E0000h to 3E7FFFh 1 1 1 0 1 X X X 32 3E8000h to 3EFFFFh 1 1 1 1 0 X X X 32 3F0000h to 3F7FFFh 1 1 1 1 1 X X X 32 3F8000h to 3FFFFFh MBM29BS/FS12DH15 Sector Address Table (Bank C) Sector Address Bank Sector Bank C SA135 SA136 SA137 SA138 SA139 SA140 SA141 SA142 SA143 SA144 SA145 SA146 SA147 SA148 SA149 SA150 SA151 SA152 SA153 SA154 SA155 SA156 SA157 SA158 SA159 SA160 SA161 SA162 SA163 SA164 SA165 SA166 SA167 SA168 SA169 SA170 SA171 SA172 SA173 Bank Address A22 A21 A20 A19 A18 A17 A16 A15 A14 A13 A12 1 0 0 0 0 0 0 0 X X X 1 0 0 0 0 0 0 1 X X X 1 0 0 0 0 0 1 0 X X X 1 0 0 0 0 0 1 1 X X X 1 0 0 0 0 1 0 0 X X X 1 0 0 0 0 1 0 1 X X X 1 0 0 0 0 1 1 0 X X X 1 0 0 0 0 1 1 1 X X X 1 0 0 0 1 0 0 0 X X X 1 0 0 0 1 0 0 1 X X X 1 0 0 0 1 0 1 0 X X X 1 0 0 0 1 0 1 1 X X X 1 0 0 0 1 1 0 0 X X X 1 0 0 0 1 1 0 1 X X X 1 0 0 0 1 1 1 0 X X X 1 0 0 0 1 1 1 1 X X X 1 0 0 1 0 0 0 0 X X X 1 0 0 1 0 0 0 1 X X X 1 0 0 1 0 0 1 0 X X X 1 0 0 1 0 0 1 1 X X X 1 0 0 1 0 1 0 0 X X X 1 0 0 1 0 1 0 1 X X X 1 0 0 1 0 1 1 0 X X X 1 0 0 1 0 1 1 1 X X X 1 0 0 1 1 0 0 0 X X X 1 0 0 1 1 0 0 1 X X X 1 0 0 1 1 0 1 0 X X X 1 0 0 1 1 0 1 1 X X X 1 0 0 1 1 1 0 0 X X X 1 0 0 1 1 1 0 1 X X X 1 0 0 1 1 1 1 0 X X X 1 0 0 1 1 1 1 1 X X X 1 0 1 0 0 0 0 0 X X X 1 0 1 0 0 0 0 1 X X X 1 0 1 0 0 0 1 0 X X X 1 0 1 0 0 0 1 1 X X X 1 0 1 0 0 1 0 0 X X X 1 0 1 0 0 1 0 1 X X X 1 0 1 0 0 1 1 0 X X X Sector Size (× 16) (Kwords) Address Range 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 400000h to 407FFFh 408000h to 40FFFFh 410000h to 417FFFh 418000h to 41FFFFh 420000h to 427FFFh 428000h to 42FFFFh 430000h to 437FFFh 438000h to 43FFFFh 440000h to 447FFFh 448000h to 44FFFFh 450000h to 457FFFh 458000h to 45FFFFh 460000h to 467FFFh 468000h to 46FFFFh 470000h to 477FFFh 478000h to 47FFFFh 480000h to 487FFFh 488000h to 48FFFFh 490000h to 497FFFh 498000h to 49FFFFh 4A0000h to 4A7FFFh 4A8000h to 4AFFFFh 4B0000h to 4B7FFFh 4B8000h to 4BFFFFh 4C0000h to 4C7FFFh 4C8000h to 4CFFFFh 4D0000h to 4D7FFFh 4D8000h to 4DFFFFh 4E0000h to 4E7FFFh 4E8000h to 4EFFFFh 4F0000h to 4F7FFFh 4F8000h to 4FFFFFh 500000h to 507FFFh 508000h to 50FFFFh 510000h to 517FFFh 518000h to 51FFFFh 520000h to 527FFFh 528000h to 52FFFFh 530000h to 537FFFh (Continued) 15 MBM29BS/FS12DH15 Sector Address Bank Bank C 16 Sector SA174 SA175 SA176 SA177 SA178 SA179 SA180 SA181 SA182 SA183 SA184 SA185 SA186 SA187 SA188 SA189 SA190 SA191 SA192 SA193 SA194 SA195 SA196 SA197 SA198 SA199 SA200 SA201 SA202 SA203 SA204 SA205 SA206 SA207 SA208 SA209 SA210 SA211 SA212 Bank Address A22 A21 A20 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 A19 A18 A17 A16 A15 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 A14 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X A13 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X A12 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Sector Size (× 16) (Kwords) Address Range 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 538000h to 53FFFFh 540000h to 547FFFh 548000h to 54FFFFh 550000h to 557FFFh 558000h to 55FFFFh 560000h to 567FFFh 568000h to 56FFFFh 570000h to 577FFFh 578000h to 57FFFFh 580000h to 587FFFh 588000h to 58FFFFh 590000h to 597FFFh 598000h to 59FFFFh 5A0000h to 5A7FFFh 5A8000h to 5AFFFFh 5B0000h to 5B7FFFh 5B8000h to 5BFFFFh 5C0000h to 5C7FFFh 5C8000h to 5CFFFFh 6D0000h to 5D7FFFh 6D8000h to 5DFFFFh 5E0000h to 5E7FFFh 5E8000h to 5EFFFFh 5F0000h to 5F7FFFh 5F8000h to 5FFFFFh 600000h to 607FFFh 608000h to 60FFFFh 610000h to 617FFFh 618000h to 61FFFFh 620000h to 627FFFh 628000h to 62FFFFh 630000h to 637FFFh 638000h to 63FFFFh 640000h to 647FFFh 648000h to 64FFFFh 650000h to 657FFFh 658000h to 65FFFFh 660000h to 667FFFh 668000h to 66FFFFh (Continued) MBM29BS/FS12DH15 (Continued) Bank Bank C Sector SA213 SA214 SA215 SA216 SA217 SA218 SA219 SA220 SA221 SA222 SA223 SA224 SA225 SA226 SA227 SA228 SA229 SA230 Sector Address Bank Address A22 A21 A20 A19 A18 A17 A16 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 1 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1 0 0 1 1 1 0 1 0 1 0 1 1 0 1 0 1 0 1 1 0 1 0 1 1 1 1 0 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 1 1 Sector Size A15 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 A14 X X X X X X X X X X X X X X X X X X A13 X X X X X X X X X X X X X X X X X X (× 16) Address Range A12 (Kwords) X 32 670000h to 677FFFh X 32 678000h to 67FFFFh X 32 680000h to 687FFFh X 32 688000h to 68FFFFh X 32 690000h to 697FFFh X 32 698000h to 69FFFFh X 32 6A0000h to 6A7FFFh X 32 6A8000h to 6AFFFFh X 32 6B0000h to 6B7FFFh X 32 8B8000h to 6BFFFFh X 32 6C0000h to 6C7FFFh X 32 6C8000h to 6CFFFFh X 32 6D0000h to 6D7FFFh X 32 6D8000h to 6DFFFFh X 32 6E0000h to 6E7FFFh X 32 6E8000h to 6EFFFFh X 32 6F0000h to 6F7FFFh X 32 6F8000h to 6FFFFFh 17 MBM29BS/FS12DH15 Sector Address Table (Bank D) Sector Address Bank Bank D 18 Sector SA231 SA232 SA233 SA234 SA235 SA236 SA237 SA238 SA239 SA240 SA241 SA242 SA243 SA244 SA245 SA246 SA247 SA248 SA249 SA250 SA251 SA252 SA253 SA254 SA255 SA256 SA257 SA258 SA259 SA260 SA261 SA262 SA263 SA264 SA265 SA266 SA267 SA268 SA269 Bank Address A22 A21 A20 A19 A18 A17 A16 A15 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0 0 1 1 1 1 0 1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 A14 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 0 0 0 0 1 1 1 1 A13 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 0 0 1 1 0 0 1 1 A12 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 0 1 0 1 0 1 0 1 Sector Size (× 16) (Kwords) Address Range 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 4 4 4 4 4 4 4 4 700000h to 707FFFh 708000h to 70FFFFh 710000h to 717FFFh 718000h to 71FFFFh 720000h to 727FFFh 728000h to 72FFFFh 730000h to 737FFFh 738000h to 73FFFFh 740000h to 747FFFh 748000h to 74FFFFh 750000h to 757FFFh 758000h to 75FFFFh 760000h to 767FFFh 768000h to 76FFFFh 770000h to 777FFFh 778000h to 77FFFFh 780000h to 787FFFh 788000h to 78FFFFh 790000h to 797FFFh 798000h to 79FFFFh 7A0000h to 7A7FFFh 7A8000h to 7AFFFFh 7B0000h to 7B7FFFh 7B8000h to 7BFFFFh 7C0000h to 7C7FFFh 7C8000h to 7CFFFFh 7D0000h to 7D7FFFh 7D8000h to 7DFFFFh 7E0000h to 7E7FFFh 7E8000h to 7EFFFFh 7F0000h to 7F7FFFh 7F8000h to 7F8FFFh 7F9000h to 7F9FFFh 7FA000h to 7FAFFFh 7FB000h to 7FBFFFh 7FC000h to 7FCFFFh 7FD000h to 7FDFFFh 7FE000h to 7FEFFFh 7FF000h to 7FFFFFh MBM29BS/FS12DH15 Sector Group Address Table A19 A18 A17 A16 A15 Sector Group A22 A21 A20 A14 A13 A12 Sectors SGA0 0 0 0 0 0 0 0 0 0 0 0 SA0 SGA1 0 0 0 0 0 0 0 0 0 0 1 SA1 SGA2 0 0 0 0 0 0 0 0 0 1 0 SA2 SGA3 0 0 0 0 0 0 0 0 0 1 1 SA3 SGA4 0 0 0 0 0 0 0 0 1 0 0 SA4 SGA5 0 0 0 0 0 0 0 0 1 0 1 SA5 SGA6 0 0 0 0 0 0 0 0 1 1 0 SA6 SGA7 0 0 0 0 0 0 0 0 1 1 1 SA7 SGA8 0 0 0 0 0 0 0 1 X X X SA8 SGA9 0 0 0 0 0 0 1 0 X X X SA9 SGA10 0 0 0 0 0 0 1 1 X X X SA10 SGA11 0 0 0 0 0 1 X X X X X SA11 to SA14 SGA12 0 0 0 0 1 0 X X X X X SA15 to SA18 SGA13 0 0 0 0 1 1 X X X X X SA19 to SA22 SGA14 0 0 0 1 0 0 X X X X X SA23 to SA26 SGA15 0 0 0 1 0 1 X X X X X SA27 to SA30 SGA16 0 0 0 1 1 0 X X X X X SA31 to SA34 SGA17 0 0 0 1 1 1 X X X X X SA35 to SA38 SGA18 0 0 1 0 0 0 X X X X X SA39 to SA42 SGA19 0 0 1 0 0 1 X X X X X SA43 to SA46 SGA20 0 0 1 0 1 0 X X X X X SA47 to SA50 SGA21 0 0 1 0 1 1 X X X X X SA51 to SA54 SGA22 0 0 1 1 0 0 X X X X X SA55 to SA58 SGA23 0 0 1 1 0 1 X X X X X SA59 to SA62 SGA24 0 0 1 1 1 0 X X X X X SA63 to SA66 SGA25 0 0 1 1 1 1 X X X X X SA67 to SA70 SGA26 0 1 0 0 0 0 X X X X X SA71 to SA74 SGA27 0 1 0 0 0 1 X X X X X SA75 to SA78 (Continued) 19 MBM29BS/FS12DH15 Sector Group A22 A21 A20 A19 A18 A17 A16 A15 A14 A13 A12 Sectors SGA28 0 1 0 0 1 0 X X X X X SA79 to SA82 SGA29 0 1 0 0 1 1 X X X X X SA83 to SA86 SGA30 0 1 0 1 0 0 X X X X X SA87 to SA90 SGA31 0 1 0 1 0 1 X X X X X SA91 to SA94 SGA32 0 1 0 1 1 0 X X X X X SA95 to SA98 SGA33 0 1 0 1 1 1 X X X X X SA99 to SA102 SGA34 0 1 1 0 0 0 X X X X X SA103 to SA106 SGA35 0 1 1 0 0 1 X X X X X SA107 to SA110 SGA36 0 1 1 0 1 0 X X X X X SA111 to SA114 SGA37 0 1 1 0 1 1 X X X X X SA115 to SA118 SGA38 0 1 1 1 0 0 X X X X X SA119 to SA122 SGA39 0 1 1 1 0 1 X X X X X SA123 to SA126 SGA40 0 1 1 1 1 0 X X X X X SA127 to SA130 SGA41 0 1 1 1 1 1 X X X X X SA131 to SA134 SGA42 1 0 0 0 0 0 X X X X X SA135 to SA138 SGA43 1 0 0 0 0 1 X X X X X SA139 to SA142 SGA44 1 0 0 0 1 0 X X X X X SA143 to SA146 SGA45 1 0 0 0 1 1 X X X X X SA147 to SA150 SGA46 1 0 0 1 0 0 X X X X X SA151 to SA154 SGA47 1 0 0 1 0 1 X X X X X SA155 to SA158 SGA48 1 0 0 1 1 0 X X X X X SA159 to SA162 SGA49 1 0 0 1 1 1 X X X X X SA163 to SA166 SGA50 1 0 1 0 0 0 X X X X X SA167 to SA170 SGA51 1 0 1 0 0 1 X X X X X SA171 to SA174 (Continued) 20 MBM29BS/FS12DH15 (Continued) Sector Group A22 A21 A20 A19 A18 A17 A16 A15 A14 A13 A12 Sectors SGA52 1 0 1 0 1 0 X X X X X SA175 to SA178 SGA53 1 0 1 0 1 1 X X X X X SA179 to SA182 SGA54 1 0 1 1 0 0 X X X X X SA183 to SA186 SGA55 1 0 1 1 0 1 X X X X X SA187 to SA190 SGA56 1 0 1 1 1 0 X X X X X SA191 to SA194 SGA57 1 0 1 1 1 1 X X X X X SA195 to SA198 SGA58 1 1 0 0 0 0 X X X X X SA199 to SA202 SGA59 1 1 0 0 0 1 X X X X X SA203 to SA206 SGA60 1 1 0 0 1 0 X X X X X SA207 to SA210 SGA61 1 1 0 0 1 1 X X X X X SA211 to SA214 SGA62 1 1 0 1 0 0 X X X X X SA215 to SA218 SGA63 1 1 0 1 0 1 X X X X X SA219 to SA222 SGA64 1 1 0 1 1 0 X X X X X SA223 to SA226 SGA65 1 1 0 1 1 1 X X X X X SA227 to SA230 SGA66 1 1 1 0 0 0 X X X X X SA231 to SA234 SGA67 1 1 1 0 0 1 X X X X X SA235 to SA238 SGA68 1 1 1 0 1 0 X X X X X SA239 to SA242 SGA69 1 1 1 0 1 1 X X X X X SA243 to SA246 SGA70 1 1 1 1 0 0 X X X X X SA247 to SA250 SGA71 1 1 1 1 0 1 X X X X X SA251 to SA254 SGA72 1 1 1 1 1 0 X X X X X SA255 to SA258 SGA73 1 1 1 1 1 1 0 0 X X X SA259 SGA74 1 1 1 1 1 1 0 1 X X X SA260 SGA75 1 1 1 1 1 1 1 0 X X X SA261 SGA76 1 1 1 1 1 1 1 1 0 0 0 SA262 SGA77 1 1 1 1 1 1 1 1 0 0 1 SA263 SGA78 1 1 1 1 1 1 1 1 0 1 0 SA264 SGA79 1 1 1 1 1 1 1 1 0 1 1 SA265 SGA80 1 1 1 1 1 1 1 1 1 0 0 SA266 SGA81 1 1 1 1 1 1 1 1 1 0 1 SA267 SGA82 1 1 1 1 1 1 1 1 1 1 0 SA268 SGA83 1 1 1 1 1 1 1 1 1 1 1 SA269 21 MBM29BS/FS12DH15 Description Query-unique ASCII string “QRY” Primary OEM Command Set 2h: AMD/FJ standard type Address for Primary Extended Table Alternate OEM Command Set (00h = not applicable) Address for Alternate OEM Extended Table VCC Min (write/erase) DQ7 to DQ4: 1 V, DQ3 to DQ0: 100 mV VCC Max (write/erase) DQ7 to DQ4: 1 V, DQ3 to DQ0: 100 mV VPP Min voltage VPP Max voltage Typical timeout per single byte/ word write 2N µs Typical timeout for Min size buffer write 2N µs Typical timeout per individual block erase 2N ms Typical timeout for full chip erase 2N ms Max timeout for byte/word write 2N times typical Max timeout for buffer write 2N times typical Max timeout per individual block erase 2N times typical Max timeout for full chip erase 2N times typical Device Size = 2N byte Flash Device Interface description Max number of byte in multi-byte write = 2N Number of Erase Block Regions within device 10h 11h 12h 0051h 0052h 0059h 13h 14h 0002h 0000h 15h 16h 0040h 0000h 17h 18h 0000h 0000h 19h 1Ah 0000h 0000h 1Bh 0017h 1Ch 0019h 1Dh 0000h 1Eh 0000h 1Fh 0004h 20h 0000h 21h 0009h 22h 0000h 23h 0004h 24h 0000h 25h 0004h 26h 0000h 27h 0018h 28h 29h 0001h 0000h 2Ah 2Bh 0000h 0000h 2Ch 0003h Erase Block Region 1 Information 2Dh 2Eh 2Fh 30h 0007h 0000h 0020h 0000h Erase Block Region 2 Information 31h 32h 33h 34h 00FDh 0000h 0000h 0001h 35h 36h 37h 38h 0007h 0000h 0020h 0000h Erase Block Region 3 Information 22 Common Flash Memory Interface Code Table A6 to A0 DQ15 to DQ0 Description A6 to A0 DQ15 to DQ0 Erase Block Region 4 Information 39h 3Ah 3Bh 3Ch 0000h 0000h 0000h 0000h Query-unique ASCII string “PRI” 40h 41h 42h 0050h 0052h 0049h 43h 0031h 44h 0033h 45h 000Ch 46h 0002h 47h 0001h 48h 0000h 49h 0007h 4Ah 00E7h 4Bh 0001h 4Ch 0000h 4Dh 00B5h 4Eh 00C5h 4Fh 0001h 50h 0000h 57h 0004h 58h 0027h Major version number, ASCII Minor version number, ASCII Address Sensitive Unlock 0h = Required 1h = Not Required Erase Suspend 0h = Not Supported 1h = To Read Only 2h = To Read & Write Sector Protection 0h = Not Supported X = Number of sectors in per group Sector Temporary Unprotection 00h = Not Supported 01h = Supported Sector Protection Algorithm Simultaneous Operation 00h = Not Supported, X = Total number of sectors in all Banks except Bank A Burst Mode Type 00h = Not Supported Page Mode Type 00h = Not Supported ACC (Acceleration) Supply Minimum 00h = Not Supported, DQ7 to DQ4: 1 V, DQ3 to DQ0: 100 mV ACC (Acceleration) Supply Maximum 00h = Not Supported, DQ7 to DQ4: 1 V, DQ3 to DQ0: 100 mV Boot Type Program Suspend 00h = Not Supported, 01h = Supported Bank Organization Bank A Region Information Bank B Region Information Bank C Region Information Bank D Region Information 59h 0060h 5Ah 0060h 5Bh 0027h MBM29BS/FS12DH15 ■ FUNCTIONAL DESCRIPTION Asynchronous Read Operation (Non-Burst) Mode When the device first powers up, it is enabled for asynchronous read operation. CLK is ignored in this operation. To read data from the memory array, the system must first assert a valid address on A22 to A0, while driving AVD and CE to VIL. WE should remain at VIH. The addresses are latched on the falling edge of CE while AVD is held low or the address transition while AVD is held low. The data will appear on DQ15 to DQ0. Since the memory array is divided into four banks, each bank remains enabled for read access until the command register contents are altered. Address access time (tACC) is equal to the delay from stable addresses to valid output data. The chip enable access time (tCE) is the delay from the stable addresses and stable 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. The internal state machine is set for reading array data in asynchronous mode upon device power-up, or after a hardware reset. During power transition RESET must be held low. (Refer to "Power On/Off Timing Diagram") This ensures that no spurious alteration of the memory content occurs during the power transition. Synchronous (Burst) Read Operation Mode The device is capable of linear burst operation of a preset length. Prior to entering burst mode, the system should determine how many wait states are desired for the initial word (tIACC) of each burst access, what mode of burst operation is desired, which edge of the clock will be the active clock edge, and how the RDY signal will transition with valid data. The system would then write the configuration register set command sequence. See "Configuration Register Set Command" and "Command Definitions" for further details. Once the system has written the "Configuration Register Set" command sequence, the device Read mode is enabled for synchronous reads only. The initial word is output tIACC after the active edge of the first CLK cycle. Subsequent words are output tBACC after the active edge of each successive clock cycle, which automatically increments the internal address counter. 8-, 16-, and 32-Word Linear Burst with Wrap Around The device provides Linear burst mode, in which a fixed number of words are read from consecutive addresses. In each of these modes, the burst addresses read are determined by the group within which the starting address falls. The groups are sized according to the number of words read in a single burst sequence for a given mode. As an example: if the starting address in the 8-word with wrap-around mode is 39h, the address range to be read would be 38-3Fh, and the burst sequence would be 39-3A-3B-3C-3D-3E-3F-38h-etc. The burst sequence begins with the starting address written to the device, but wraps back to the first address in the selected group. In a similar fashion, the 16-word and 32-word Linear Wrap modes begin their burst sequence on the starting address written to the device, and then wrap back to the first address in the selected address group. The RDY pin indicates when data is valid on the bus in synchronous read mode. The devices can wrap through a maximum of 128 words of data (8 words up to 16 times, 16 words up to 8 times, or 32 words up to 4 times) before requiring a new synchronous access (latching of a new address). Burst Address Groups Table Mode Group Size Group Address Ranges 8-word with wrap-around 8 words 0h-7h, 8h-Fh, 10h-17h, ... 16-word with wrap-around 16 words 0h-Fh, 10h-1Fh, 20h-2Fh, ... 32-word with wrap-around 32 words 00h-1Fh, 20h-3Fh, 40h-5Fh, ... 23 MBM29BS/FS12DH15 Configuration Register The device uses a configuration register to set the various burst parameters: number of wait states, burst read mode, active clock edge, RDY configuration, and synchronous mode active. Burst Suspend / Resume The Burst Suspend / Resume feature allows the system temporarily suspend a synchronous burst operation during the initial access (before data is available) or after the device is outputting data. When the burst operation is suspended, any previously latched internal data and the current state are retained. At Handshaking mode, when the Burst Suspend is enabled the device will enter power down mode, in which the current consumption is reduced to typically 1mA. At Non-Handshaking mode, the device does not go to power down mode. Burst plus Burst Suspend should not last longer than tRCC without relaching an address or crossing address boundary. Burst Suspend requires CE to be asserted, WE deasserted, and the initial address latched by the CLK edge. Burst Suspend occurs when OE is deasserted. To resume the burst access, OE must be re-asserted. The next active CLK edge will resume the burst sequence where it had been suspended. The RDY pin is only controlled by CE. RDY will remain active and is not placed into a high-impedance state when OE is de-asserted. When using Burst Suspend feature, the host system should set the configuration register to "RDY active with data (A18=1)". Refer to "Configuration Register Set Command". Handshaking Option The device is equipped with a handshaking feature that brings out the fastest initial latency of this burst mode flash memory by simply monitoring the RDY signal from the device to determine when the initial word of burst data is ready to be read. In this handshaking mode, the microprocessor does not need to set its register the number of initial wait clocks. The device will indicate when the initial word of burst data is valid by the rising edge of RDY after OE goes low. The presence of the handshaking feature may be verified by writing the autoselect command sequence to the device. See "Autoselect Command Sequence" for details. For optimal burst mode performance on devices with the handshaking option, the host system must set the appropriate number of wait states in the flash device depending on clock frequency. See "Configuration Register Set Command" section for more information. Non-Handshaking Option In Non-Handshaking option, the device does not require the host system monitoring RDY signal. The microprocessor will know the number of initial wait count to be required by setting its own register. The device always provides initial data with same initial clock latency that is set by Configuration Register. See "Configuration Register Set Command" section for more information. Simultaneous Operation The device features functions that enable reading of data from one memory bank while a program or erase operation is in progress in the other memory bank (simultaneous operation) , in addition to conventional features (read, program, erase, erase-suspend read, and erase-suspend program) . The bank can be selected by bank address (A22, A21, A20)with zero latency. The device consists of the following four banks : Bank A : 8 X 4 Kword and 31 X 32 Kword; Bank B : 96 X 32 Kword; Bank C : 96 X 32 Kword; Bank D : 8 X 4 Kword and 31 X 32 Kword. The device can execute simultaneous operations between Bank 1, a bank chosen from among the four banks, and Bank 2, a bank consisting of the three remaining banks. (See “Burst Address Groups Table”. ) This is what we call a “FlexBank”, for example, the rest of banks B, C and D to let the system read while Bank A is in the process of program (or erase) operation. However, the different types of operations for the three banks are impossible, e.g.Bank A writing, Bank B erasing, and Bank C reading out. With this “FlexBank”, as described in “FlexBankTM Architecture Table”,the system gets to select from four combinations of data volume for Bank 1 and Bank 2, which works well to meet the system requirement. The simultaneous operation cannot execute multi-function mode in the same bank. “Simultaneous Operation Table” shows the possible combinations for simultaneous operation. (Refer to “Bank-to-Bank Read/Write Timing Diagram” in “■ TIMING DIAGRAM”. ) 24 MBM29BS/FS12DH15 FlexBankTM Architecture Table Bank 1 Bank 2 Bank Splits Volume Combination Volume Combination 1 16 Mbit Bank A 112 Mbit Remember (Bank B, C, D) 2 48 Mbit Bank B 96 Mbit Remember (Bank A, C, D) 3 48 Mbit Bank C 96 Mbit Remember (Bank A, B, D) 4 16 Mbit Bank D 112 Mbit Remember (Bank A, B, C) Bank Splits Example of Virtual Banks Combination Table Bank 1 Megabits Combination of Memory Bank Sector Sizes Bank 2 Megabits Combination of Memory Bank Sector Sizes Eight 4K word, two hundred twentythree 32K word 1 16 Mbit Bank A Eight 4K word, thirty-one 32K word 112 Mbit Bank B + Bank C + Bank D 2 32 Mbit Bank A + Bank D Sixteen 4K word, sixty-two 32K word 96 Mbit Bank B + Bank C One hundred ninetytwo 32K word Sixteen 4K word, one hundred fiftyeight 32K word Eight 4K word, one hundred twentyseven 32K word 3 48 Mbit Bank B Ninety-six 32K word 80 Mbit Bank A + Bank C + Bank D 4 64 Mbit Bank A + Bank B Eight 4K word, one hundred twentyseven 32K word 64 Mbit Bank C + Bank D Note : When multiple sector erase over several banks is operated, the system cannot read out of the bank to which a sector being erased belongs. For example, suppose that erasing is taking place at both Bank A and Bank B, neither Bank A nor Bank B is read out (they would output the sequence flag once they were selected. ) Meanwhile the system would get to read from either Bank C or Bank D. Case Simultaneous Operation Table Bank 1 Status Bank 2 Status 1 Read mode Read mode 2 Read mode Autoselect mode 3 Read mode Program mode 4 Read mode Erase mode 5 Autoselect mode Read mode 6 Program mode Read mode 7 Erase mode Read mode Note : Bank 1 and Bank 2 are divided for the sake of convenience at Simultaneous Operation. Actually, the Bank consists of 4 banks, Bank A, Bank B, BankC and Bank D. Bank Address (BA) meant to specify each of the Banks. 25 MBM29BS/FS12DH15 Standby Mode There are two ways to implement the standby mode on the device, one using both the CE and RESET pins, and the other via the RESET pin only. When using both pins, a CMOS standby mode is achieved with CE and RESET input held at VCC±0.2 V. Under this condition the current consumed is less than 10 µA Max. During Embedded Algorithm operation, VCC active current (ICC2) is required even if CE=“H”. The device can be read with standard access time (tCE) from either of these standby modes. When using the RESET pin only, a CMOS standby mode is achieved with RESET input held at VSS±0.3 V (CE=“H” or “L”) . Under this condition the current consumed is less than 5µA Max. Once the RESET pin is set high, the device requires tRH as a wake-up time for output to be valid for read access. During standby mode, the output is in the high impedance state, regardless of OE input. ICC3 in the DC Characteristics table represents the standby current specification. Automatic Sleep Mode Automatic sleep mode works to restrain power consumption during read-out of the device data. This mode can be useful in the application such as a handy terminal which requires low power consumption. While in asynchronous mode, the device automatically enables this mode when addresses remain stable for tACC +60 ns. The automatic sleep mode is independent of the CE, WE, and OE control signals. Standard address access timings provide new data when addresses are changed. While in sleep mode, output data is latched and always available to the system. Under the mode, the current consumed is typically 0.2 µA (CMOS Level). Since the data are latched during this mode, the data are continuously read out. When the addresses are changed, the mode is automatically canceled and the device reads the data for changed addresses. While in synchronous mode, the device automatically enables this mode when the first active CLK level (if rising edge is acitive, the first period of CLK=VIH) is greater than tACC. During this mode on Handshaking devices, initial latency will be same between even and odd address. The device always outputs data with the same latency to even address. In case of Non-Handshaking devices, initial latecny is fixed same as normal operation. When the deivce is in the Automatic sleep mode, the device outputs burst data with the CLK. Please note that if CLK runs faster (active CLK level is shorter than tACC) during burst access in the Automatic speep mode, the device will output incorrect data. In this case, a new burst operations (addresses must be re-latched) is required to provide correct data. Under the mode, the current consumed is typically TBD µA (CMOS Level). During simultaneous operation, VCC active current (ICC2) is required. Output Disable When the OE input is at VIH, output from the device is disabled. The outputs are placed in the high impedance state. Write Device erasure and programming are accomplished via the command register. The contents of the register serve as input to the internal state machine. The state machine output dictates the function of the device. The command register itself does not occupy any addressable memory location. The register is a latch used to store the commands, along with the address and data information needed to execute the command. The programming operation is dependent of the Set Device Read Mode bit in the Configuration Register. - At Asynchronous Mode Clock is ignored when the Configuration Register is set to Asynchronous mode, the device has the capability of performing two types of programming operation. WE latch - The system must drive CE, WE, and AVD to VIL and OE to VIH when providing an address and data. Addresses are latched on the falling edge of WE while data is latched on the rising edge of WE. (Refer to "Program Operation Timing at Asynchronous Mode (WE latch)"). AVD latch - The system must drive CE and AVD to VIL, and OE to VIH when providing an address to the device, and drive WE and CE to VIL, and OE to VIH when wiring data. Addresses are latched on the rising edge of AVD and data is latched on the rising edge of WE. (Refer to "Program Operation Timing at Asynchronous Mode (AVD latch)"). 26 MBM29BS/FS12DH15 - At Synchronous Mode When the Configuration Register is set to Synchronous mode, the device has the capability of performing two types of programming operation. WE latch - The system must drive CE, WE, and AVD to VIL and OE to VIH when providing an address and data. Addresses are latched on the falling edge of WE while AVD is held VIL and data is latched on the rising edge of WE. (Refer to "Program Operation Timing at Synchronous Mode (WE latch)"). Refer to AC Write Characteristics and the Erase/Program Waveforms for specific timing parameters. Note : Addresses are latched on the first of either the falling edge of WE or active edge of CLK. CLK latch - The system must drive CE and AVD to VIL, and OE to VIH when providing an address to the device, and drive WE and CE to VIL, and OE to VIH when wiring data. Addresses are latched on the active edge of clock while AVD is held VIL and data is latched on the rising edge of WE. (Refer to "Program Operation Timing at Synchronous Mode (CLK latch)"). RESET Hardware Reset The device may be reset by driving the RESET pin to VIL. The RESET pin has a pulse requirement and has to be kept low (VIL) for at least “tRP” in order to properly reset the internal state machine. Any operation in the process of being executed will be terminated and the internal state machine will be reset to the read mode “tREADY” after the RESET pin is driven low. Furthermore, once the RESET pin goes high the device requires an additional “tRH” before it will allow read access. When the RESET pin is low, the device will be in the standby mode for the duration of the pulse and all the data output pins will be tri-stated. If a hardware reset occurs during a program or erase operation, the data at that particular location will be corrupted. Accelerated Program Operation The device offers accelerated program operation which enables the programming in high speed. If the system asserts VACC to the ACC pin, the device automatically enters the acceleration mode and the time required for program operation will reduce to about 60%. This function is primarily intended to allow high speed program, so caution is needed as the sector group will temporarily be unprotected. When at VIL, ACC locks all sectors. Should be at VIH for all other conditions. The system would use a fast program command sequence when programming during acceleration mode. Set command to fast mode and reset command from fast mode are not necessary. When the device enters the acceleration mode, the device automatically set to fast mode. Therefore, the pressent sequence could be used for programming and detection of completion during acceleration mode. Removing VACC from the ACC pin returns the device to normal operation. Do not remove VACC from ACC pin while programming. See “Accelerated Fast mode Programming Timing” in “■ TIMING DIAGRAM”. HiddenROM Region The HiddenROM feature provides a Flash memory region that the system may access through a new command sequence. This is primarily intended for customers who wish to use an Electronic Serial Number (ESN) in the device with the ESN protected against modification. Once the HiddenROM region is protected, any further modification of that region becomes impossible. This ensures the security of the ESN once the product is shipped to the field. ONLY Program is possible in this area until it is protected. Once it is protected, it is impossible to unprotect, so please use this with caution. HiddenROM area is 128 words (64 words for factory and 64 words for customer) in length and is stored at the same address of the "outermost" 4 Kwords boot sector. The device occupies the address of the 000000h 00007Fh. After the system has written the Enter HiddenROM command sequence, the system may read the HiddenROM region by using the addresses normally occupied by the boot sector (particular area of SA0). That is, the device sends all commands that would normally be sent to the boot sector to the HiddenROM region. This mode of operation continues until the system issues the Exit HiddenROM command sequence, or until power is removed from the device. On power-up, or following a hardware reset, the device reverts to sending commands to the boot sector. 27 MBM29BS/FS12DH15 HiddenROM area is devided into two regions, which are Factory Locked area and Customer Locked area. The Factory Locked area is 64 words (address: 000000h - 00003Fh) that is programmed and locked at Fujitsu. The Customer Locked area is also 64 words (address: 000040h - 00007Fh) that is programmed and locked at user. The Factory indicator Bit (DQ7) is used to indicate whether or not the Factory Locked area is locked when shipped from the factory. The Customer Indicator Bit (DQ6) is used to indicate whether or not the Customer Locked area is locked. The Factory Locked area can be programmed and protected at Fujitsu ONLY and is always protected when shipped from the factory regardless of the conditon whether or not this area is programmed. Therefore this area has the Factory Indicator Bit (DQ7) permanently set to a "1". The Factory Locked area cannot be modified in any way. The Customer Locked area is shipped unprotected, allowing users to utilize that area in any manner they choose. The Customer Indicator Bit set to "0". Once the Customer Locked area is protected, the Customer Indicator Bit will be permanently set to "1". <Protection> The MBM29BS/FS12DH features several levels of sector protection, which can disable both the program and erase operations (1) Write Protect (WP)[Hardware Protection] The device features a hardware protection option using a write protect pin that prevents programming or erasing, regardless of the state of the sector’s Persistent or Dynamic Protection Bits. The WP pin is associated with the “outermost” 4 × 4K words on both ends of boot sectors (SA0-SA3 and SA266-SA269). The WP pin has no effect on any other sector. When WP is taken to VIL, programming and erase operations of the “outermost” 4 × 4K words sectors on both ends are disabled. By taking WP back to VIH, the “outermost” 4 × 4K words sectors are enabled for program and erase operations, depending upon the status of the individual sector Persistent or Dynamic Protection Bits. If either of the four outermost sectors Persistent or Dynamic Protection Bits are programmed, program or erase operations are inhibited. If the sector Persistent or Dynamic Protection Bits are both erased, the four outermost sectors are available for programming or erasing as long as WP remains at VIH. (2) ACC Protect (ACC)[Hardware Protection2] The device has also hardware protect feature by ACC pin. When ACC is VIL, all sectors are locked. Should be at VIH for all other condition. (3) New Sector Protection [Software Protection] A command sector protection method that replaces the old VID controlled protection method. a) Persistent Protection Bit (PPB) A single Persistent (non-volatile) Protection Bit is assigned to a maximum four sectors (see the “sector group address table” in “■ FLEXIBLE SECTOR-ERASE ARCHITECTURE” for specific sector protection groupings). All 4 K words boot-block sectors have individual sector Persistent Protection Bits (PPBs) for greater flexibility. Each PPB is individually modifiable through the PPB Write Command. Note : If a PPB requires erasure, all of the sector PPBs must first be preprogrammed prior to PPB erasing. All PPBs erase in parallel, unlike programming where individual PPBs are programmable. It is the responsibility of the user to perform the preprogramming operation. Otherwise, an already erased sector PPBs has the potential of being over-erased. There is no hardware mechanism to prevent sector PPBs over-erasure. b) Dynamic Protection Bit (DPB) A volatile protection bit is assigned for each sector. After power-up or hardware reset, the contents of all DPBs is “0”. Each DPB is individually modifiable through the DPB Write Command. When the parts are first shipped, the PPBs are cleared, the DPBs are cleared, and PPB Lock is defaulted to power up in the cleared state - meaning the PPBs are changeable. When the device is first powered on the DPBs power up cleared (sectors not protected). The Protection State for each sector is determined by the logical OR of the PPB and the DPB related to that sector. For the sectors that have the PPBs cleared, the DPBs control whether or not the sector is protected or unprotected. By issuing the DPB Write/Erase command sequences, the DPBs will be set or cleared, thus placing each sector in the protected or unprotected state. These are the so-called Dynamic Locked or Unlocked states. They are called 28 MBM29BS/FS12DH15 dynamic states because it is very easy to switch back and forth between the protected and unprotected conditions. This allows software to easily protect sectors against inadvertent changes yet does not prevent the easy removal of protection when changes are needed. The DPBs maybe set or cleared as often as needed. PPB vs DPB The PPBs allow for a more static, and difficult to change, level of protection. The PPBs retain their state across power cycles because they are Non-Volatile. Individual PPBs are set with a command but must all be cleared as a group through a complex sequence of program and erasing commands. The PPBs are also limited to 100 erase cycles. The PBB Lock bit adds an additional level of protection. Once all PPBs are programmed to the desired settings, the PPB Lock may be set to “1”. Setting the PPB Lock disables all program and erase commands to the NonVolatile PPBs. In effect, the PPB Lock Bit locks the PPBs into their current state. The only way to clear the PPB Lock is to go through a power cycle. System boot code can determine if any changes to the PPB are needed e.g. to allow new system code to be downloaded. If no changes are needed then the boot code can set the PBB Lock to disable any further changes to the PBBs during system operation. It is possible to have sectors that have been persistently locked, and sectors that are left in the dynamic state. The sectors in the dynamic state are all unprotected. If there is a need to protect some of them, a simple DPB Write command sequence is all that is necessary. The DPB write/erase command for the dynamic sectors switch the DPBs to signify protected and unprotected, respectively. If there is a need to change the status of the persistently locked sectors, a few more steps are required. First, the PPB Lock bit must be disabled by either putting the device through a power-cycle, or hardware reset. The PPBs can then be changed to reflect the desired settings. Setting the PPB lock bit once again will lock the PPBs, and the device operates normally again. Note : to achieve the best protection, it’s recommended to execute the PPB lock bit set command early in the boot code, and protect the boot code by holding WP = VIL. DPB PPB PPB Lock Sector State 0 0 0 Unprotected—PPB and DPB are changeable 1 0 0 Protected—PPB and DPB are changeable 0 1 0 Protected—PPB and DPB are changeable 1 1 0 Protected—PPB and DPB are changeable 0 0 1 Unprotected—PPB not changeable, DPB is changeable 1 0 1 Protected—PPB not changeable, DPB is changeable 0 1 1 Protected—PPB not changeable, DPB is changeable 1 1 1 Protected—PPB not changeable, DPB is changeable The above table contains all possible combinations of the DPB, PPB, and PPB lock relating to the status of the sector. In summary, if the PPB is set, and the PPB lock is set, the sector is protected and the protection can not be removed until the next power cycle clears the PBB lock. If the PPB is cleared, the sector can be dynamically locked or unlocked. The DPB then controls whether or not the sector is protected or unprotected. If the user attempts to program or erase a protected sector, the device ignores the command and returns to read mode. A program command to a protected sector enables status polling for approximately 1 µs before the device returns to read mode without having modified the contents of the protected sector. An erase command to a protected sector enables status polling for approximately 50 µs after which the device returns to read mode without having erased the protected sector. The programming of the DPB, PPB, and PPB lock for a given sector can be verified by writing a DPB/PPB lock verify command to the device. 29 MBM29BS/FS12DH15 –DPB Status The programming of the DPB for a given sector can be verified by writing a DPB status verify command to the device. –PPB Status The programming of the PPB for a given sector can be verified by writing a PPB status verify command to the device. –PPB Lock Bit Status The programming of the PPB Lock Bit for a given sector can be verified by writing a PPB Lock Bit status verify command to the device. c) Persistent Protection Bit Lock (PPB Lock) • PPB Locked • PPB Locked with Password A highly sophisticated protection method that requires a password before changes to certain sectors or sector groups are permitted. All parts default to operate in the Persistent Sector Protection mode. The customer must then choose if the Persistent or Password Protection method is most desirable. There are two one-time programmable non-volatile bits that define which sector protection method will be used. If the customer decides to continue using the Persistent Sector Protection method, they must set the Persistent Sector Protection Mode Locking Bit. This will permanently set the part to operate only using Persistent Sector Protection. If the customer decides to use the password method, they must set the Password Mode Locking Bit. This will permanently set the part to operate only using password sector protection. It is important to remember that setting either the Persistent Sector Protection Mode Locking Bit or the Password Mode Locking Bit permanently selects the protection mode. It is not possible to switch between the two methods once a locking bit has been set. It is important that one mode is explicitly selected when the device is first programmed, rather than relying on the default mode alone. This is so that it is not possible for a system program or virus to later set the Password Mode Locking Bit, which would cause an unexpected shift from the default Persistent Sector Protection Mode into the Password Protection Mode. The WP and ACC Hardware Protection feature is always available, independent of the software managed protection method chosen. PPB lock bit is a global volatile bit. When set to “1”, the PPBs cannot be changed. When cleared (“0”), the PPBs are changeable. There is only one PPB Lock bit per device. The PPB Lock is cleared after power-up or hardware reset. There is no command sequence to unlock the PPB Lock. The Persistent Protection Bit (PPB) Lock is a volatile bit that reflects the state of the Password Mode Locking Bit after power-up reset. If the Password Mode Locking Bit is set, which indicates the device is in Password Protection Mode, the PPB Lock Bit is also set after a hardware reset (RESET asserted) or a power-up reset. The ONLY means for clearing the PPB Lock Bit in Password Protection Mode is to issue the Password Unlock command. Successful execution of the Password Unlock command clears the PPB Lock Bit, allowing for sector PPBs modifications. Asserting RESET, taking the device through a power-on reset, or issuing the PPB Lock Bit Set command sets the PPB Lock Bit back to a “1”. If the Password Mode Locking Bit is not set, indicating Persistent Sector Protection Mode, the PPB Lock Bit is cleared after power-up or hardware reset. The PPB Lock Bit is set by issuing the PPB Lock Bit Set command. Once set the only means for clearing the PPB Lock Bit is by issuing a hardware or power-up reset. The Password Unlock command is ignored in Persistent Sector Protection Mode. 30 MBM29BS/FS12DH15 -Password and Password Mode Locking Bit In order to select the Password sector protection scheme, the customer must first program the password. Fujitsu recommends that the password be somehow correlated to the unique Electronic Serial Number (ESN) of the particular flash device. Each ESN is different for every flash device; therefore each password should be different for every flash device. While programming in the password region, the customer may perform Password Verify operations. Once the desired password is programmed in, the customer must then set the Password Mode Locking Bit. This operation achieves two objectives: (1) It permanently sets the device to operate using the Password Protection Mode. It is not possible to reverse this function. (2) It also disables all further commands to the password region. All program, and read operations are ignored. Both of these objectives are important, and if not carefully considered, may lead to unrecoverable errors. The user must be sure that the Password Protection method is desired when setting the Password Mode Locking Bit. More importantly, the user must be sure that the password is correct when the Password Mode Locking Bit is set. Due to the fact that read operations are disabled, there is no means to verify what the password is afterwards. If the password is lost after setting the Password Mode Locking Bit, there will be no way to clear the PPB Lock bit. The Password Mode Locking Bit, once set, prevents reading the 64-bit password on the DQ bus and further password programming. The Password Mode Locking Bit is not erasable. Once Password Mode Locking Bit is programmed, the Persistent Sector Protection Locking Bit is disabled from programming, guaranteeing that no changes to the protection scheme are allowed. 64-bit Password The 64-bit Password is located in its own memory space and is accessible through the use of the Password Program and Verify commands (see “Password Veri fy Command”). The password function works in conjunction with the Password Mode Locking Bit, which when set, prevents the Password Verify command from reading the contents of the password on the pins of the device. -Persistent Sector Protection Mode Locking Bit Like the password mode locking bit, a Persistent Sector Protection mode locking bit exists to guarantee that the device remain in software sector protection. Once set, the Persistent Sector Protection locking bit prevents programming of the password protection mode locking bit. This guarantees that a hacker could not place the device in password protection mode. 31 MBM29BS/FS12DH15 ■ COMMAND DEFINITIONS Device operations are selected by writing specific address and data sequences into the command register. Some commands require Bank Address (BA) input. When command sequences are input into a bank reading, the commands have priority over the reading. “MBM29BS/FS12DH Command Definitons Table” shows the valid register command sequences. Note that the Erase Suspend (B0h) and Erase Resume (30h) commands are valid only while the Sector Erase operation is in progress. Moreover, Read/Reset commands are functionally equivalent, resetting the device to the read mode. Please note that commands are always written at DQ7 to DQ0 and DQ15 to DQ8 bits are ignored. Read/Reset Command In order to return from Autoselect mode or Exceeded Timing Limits (DQ5 = 1) to Read/Reset mode, verify mode of secter protect commands the Reset operation is initiated by writing the Reset command sequence into the command register. Microprocessor read cycles retrieve array data from the memory. The device remains enabled for reads until the command register contents are altered. The device will automatically power-up in the Asynchronous Read/Reset state. In this case, a command sequence is not required to read data. Standard microprocessor read cycles will retrieve array data. Refer to the AC Read Characteristics and Waveforms for specific timing parameters. Configuration Register Set Command The device uses a configuration register to set the various burst parameters: number of wait states, burst read mode(burst length), active clock edge, RDY configuration, and synchronous mode active. The configuration register must be set before the device will enter burst mode. The configuration register is loaded with a three-cycle command sequence. The first two cycles are standard unlock sequences. On the third cycle, the data should be C0h, address bits A11 to A0 should be 555h, address bits A19 to A12 set the code to be latched. The device will power up or after a hardware reset with the default setting, which is in asynchronous mode. The register must be set before the device can enter synchronous mode. The configuration register can not be changed during device operations (program, erase, or New Sector Protection). Read Mode Setting On power-up or hardware reset, the device is set to be in asynchronous read mode. This setting allows the system to enable or disable burst mode during system operations. Address A19 determines this setting: "1’ for asynchronous mode, "0" for synchronous mode. Programmable Wait State Configuration Setting The programmable wait state feature informs the device of the number of clock cycles that must elapse after AVD is driven active before data will be available. This value is determined by the input frequency of the device. Address bits A14 to A12 determine the setting (see “Third Cycle Address/Data Table”). The wait state command sequence instructs the device to set a particular number of clock cycles for the initial access in burst mode. The number of wait states that should be programmed into the device is directly related to the clock frequency. A14 0 0 0 0 1 1 1 1 32 Third Cycle Address/Data Table A13 A12 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 Total Initial Access Cycles 2 3 4 5 6 7 Reserved Reserved MBM29BS/FS12DH15 - Handshaking Option If the device is equipped with the handshaking option, the host system should set address bits (A14,A13, A12) = (0, 1, 0)for a clock frequency of 54/66 MHz for the system/device to execute at maximum speed. The device will automatically delay RDY by one additional clock cycle when the starting address is odd. “Third Cycle Address/Data Table” describes the typical number of clock cycles (wait states) for various conditions. Wait States for Handshaking Table Conditions at Address Typical No. of Clock Cycles after AVD Low 66/54 MHz Initial address is even 4 Initial address is odd 5 The autoselect function allows the host system to determine whether the flash device is enabled for handshaking. See the "Autoselect Command" section for more information. - Non-Handshaking Option For optimal burst mode performance on devices without the handshaking option, the host system must set the appropriate number of wait states in the flash device depending on the clock frequency. Wait States for Non-Handshaking Table Typical No. of Clock Cycles after AVD Low Conditions at Address 66/54 MHz Initial address is even 5 Initial address is odd 5 Burst Read Mode Configuration Setting(Burst Length) The device supports three different burst read modes: 8, 16, and 32 word linear wrap around modes. A continuous sequence begins at the starting address and advances the address pointer until the burst operation is complete. For example, an eight-word linear burst with wrap around begins on the starting burst address written to the device and then advances to the next 8-word boundary. The address pointer then returns to the 1st word after the previous eight-word boundary, wrapping through the starting location. The sixteen- and thirty-two linear wrap around modes operate in a fashion similar to the eight-word mode. “Wait States for Handshaking Table” shows the address bits and settings for the three burst read modes. Burst Read Mode Settings Table Burst Modes Address Bits A16 A15 8-word linear wrap around 0 1 16-word linear wrap around 1 0 32-word linear wrap around 1 1 Active Clock Edge Configuration Setting The device can be set so that either the rising clock edge or falling clock edge is active for all synchronous access. Address bit A17 determines this setting; "1" for rising active, "0" for falling active. 33 MBM29BS/FS12DH15 RDY Configuration Setting The device can be set so that RDY goes active either with valid data or one data cycle before active data. Address bit A18 determines this setting; "1" for RDY active with data, "0" for RDY active one clock cycle before valid data. “Configuration Register Table” shows the address bits that determine the configuration register settings for various device functions. Configuration Register Table Settings (Binary) Address BIt Function A19 Set Device Read Mode A18 RDY 0 = RDY active one clock cycle before data 1 = RDY active with data A17 Clock 0 = Burst starts and data is output on the falling edge of CLK 1 = Burst starts and data is output on the rising edge of CLK A16 A15 A14 A13 A12 Burst Read Mode 0 = Synchronous Read (Burst Mode) Enabled 1 = Asynchronous Mode (Default) 00 = Reserved 01 = 8-word linear with wrap around 10 = 16-word linear with wrap around 11 = 32-word linear with wrap around 000 = Data is valid on the 2th active CLK edge after AVD transition to VIH 001 = Data is valid on the 3th active CLK edge after AVD transition to VIH 010 = Data is valid on the 4th active CLK edge after AVD transition to VIH Programmable 011 = Data is valid on the 5th active CLK edge after AVD transition to VIH Wait State 100 = Data is valid on the 6th active CLK edge after AVD transition to VIH 101 = Data is valid on the 7th active CLK edge after AVD transition to VIH 110 = Reserved 111 = Reserved Autoselect Command Flash memories are intended for use in applications where the local CPU alters memory contents. Therefore, manufacture and device codes must be accessible while the device resides in the target system. PROM programmers typically access the signature codes by raising A9 to a higher voltage. However, multiplexing high voltage onto the address lines is not generally desired system design practice. The device contains an Autoselect command operation to supplement traditional PROM programming methodology. The operation is initiated by writing the Autoselect command sequence into the command register. The Autoselect command sequence is initiated first by writing two unlock cycles. This is followed by a third write cycle that contains the bank address (BA) and the Autoselect command. Then the manufacture and device codes can be read from the bank, and actual data from the memory cell can be read from another bank. The higher order address (A22, A21, A20) required for reading out the manufacture and device codes demands the bank address (BA) set at the third write cycle. Following the command write ,a read cycle from address (BA)00h returns the manufacturer’s code (Fujitsu= 04h) . And a read cycle at address (BA)01h outputs device code. When 227Eh was output, this indicates that two additional codes, called Extended Device Codes will be required. Therefore the system may continue reading out these Extended Device Codes at the address of (BA) 0Eh, as well as at (BA) 0Fh. (Refer to “MBM29BS/ FS12DH Sector Protection Verify Autoselect Codes Table” and “Extended Autoselect Code Table” in “■ DEVICE BUS OPERATIION”. ) The sector state (PPB protection or PPB unprotection) will be informed by address (BA) XX02h. Scanning the sector group addresses (A22, A21, A20, A19, A18, A17, A16, A15, A14, A13, and A12) while(A7, A6, A5, A4, A3, A2, A1,A0) = (0, 0, 0, 0, 0, 0, 1, 0) will produce a logical “1” at device output DQ0 for a protected sector group. The programming 34 MBM29BS/FS12DH15 verification should be performed by verifying sector group protection on the protected sector. (See “MBM29BS/ FS12DH User Bus Operations Table” in “■ DEVICE BUS OPERATIION”. ) The manufacture and device codes can be read from the selected bank. To read the manufacture and device codes and sector protection status from a non-selected bank, it is necessary to write the Read/Reset command sequence into the register. Autoselect command should then be written into the bank to be read. If the software (program code) for Autoselect command is stored in the Flash memory, the device and manufacture codes should be read from the other bank, which does not contain the software. No subsequent data will be made available if the autoselect data is read in synchronous mode. To terminate the operation, it is necessary to write the Read/Reset command sequence into the register. To execute the Autoselect command during the operation, Read/Reset command sequence must be written before the Autoselect command. Word Programming Command The device is programmed on word-by-word basis. Programming is a four bus cycle operation. There are two “unlock” write cycles. These are followed by the program set-up command and data write cycles. Upon executing the Embedded Program Algorithm command sequence, the system is not required to provide further controls or timings. The device will automatically provide adequate internally generated program pulses and verify the programmed cell margin. The system can determine the status of the program operation by using DQ7 (Data Polling), DQ6 (Toggle Bit). The Data Polling and Toggle Bit must be performed at the memory location which is being programmed. The automatic programming operation is completed when the data on DQ7 is equivalent to data written to this bit at which time the device returns to the read mode and addresses are no longer latched (see “Hardware Sequence Flags Table”). Therefore, the device requires that a valid address to the device be supplied by the system in this particular instance. Hence, Data Polling must be performed at the memory location which is being programmed. If hardware reset occurs during the programming operation, the data being written is not guaranteed. Programming is allowed in any sequence and across sector boundaries. Beware that a data “0” cannot be programmed back to a “1”. Attempting to do so may either hang up the device or result in an apparent success according to the data polling algorithm but a read from Read/Reset mode will show that the data is still “0”. Only erase operations can convert from “0”s to “1”s. “Embedded ProgramTM Algorithm” in “■ FLOW CHART” illustrates the Embedded ProgramTM Algorithm using typical command strings and bus operations. Chip Erase Command Chip erase is a six-bus cycle operation. There are two “unlock” write cycles. These are followed by writing the “set-up” command. Two more “unlock” write cycles are then followed by the chip erase command. Chip erase does not require the user to program the device prior to erase. Upon executing the Embedded Erase Algorithm command sequence the device will automatically program and verify the entire memory for an all zero data pattern prior to electrical erase. (Preprogram Function). The system is not required to provide any controls or timings during these operations. The system can determine the status of the erase operation by using DQ7 (Data Polling), or DQ6 (Toggle Bit). The chip erase begins on the rising edge of the last WE, whichever happens first in the command sequence and terminates when the data on DQ7 is “1” (See Write Operation Status section. ) at which time the device returns to read the mode. Chip Erase Time; Sector Erase Time × All sectors + Chip Program Time (Preprogramming) “Embedded EraseTM Algorithm” in “■ FLOW CHART” illustrates the Embedded EraseTM Algorithm using typical command strings and bus operations. 35 MBM29BS/FS12DH15 Sector Erase Command Sector erase is a six bus cycle operation. There are two “unlock” write cycles. These are followed by writing the “set-up” command. Two more “unlock” write cycles are then followed by the Sector Erase command. After timeout of “tTOW” from the rising edge of the last sector erase command, the sector erase operation will begin. Multiple sectors may be erased concurrently by writing the six bus cycle operations on “MBM29BS/FS12DH Command Definitions Table” in “■ DEVICE BUS OPERATION”. This sequence is followed with writes of the Sector Erase command to addresses in other sectors desired to be concurrently erased. The time between writes must be less than “tTOW” otherwise that command will not be accepted and erasure will not start. It is recommended that processor interrupts be disabled during this time to guarantee this condition. The interrupts can be re-enabled after the last Sector Erase command is written. A time-out of “tTOW” from the rising edge of last WE will initiate the execution of the Sector Erase command(s). If another falling edge of CE or WE, whichever happens first occurs within the “tTOW” time-out window the timer is reset. (Monitor DQ3 to determine if the sector erase timer window is still open, see section DQ3, Sector Erase Timer. ) Any command other than Sector Erase or Erase Suspend during this time-out period will reset the device to the read mode, ignoring the previous command string. Resetting the device once execution has begun will corrupt the data in the sector. In that case, restart the erase on those sectors and allow them to complete. (Refer to Write Operation Status section for Sector Erase Timer operation. ) Loading the sector erase buffer may be done in any sequence and with any number of sectors. Sector erase does not require the user to program the device prior to erase. The device automatically programs all memory locations in the sector(s) to be erased prior to electrical erase (Preprogram function). When erasing a sector or sectors the remaining unselected sectors are not affected. The system is not required to provide any controls or timings during these operations. The system can determine the status of the erase operation by using DQ7 (Data Polling), or DQ6 (Toggle Bit). The sector erase begins after the “tTOW” time out from the rising edge of WE for the last sector erase command pulse and terminates when the data on DQ7 is “1” (See Write Operation Status section. ) at which time the device returns to the read mode. Data polling and Toggle Bit must be performed at an address within any of the sectors being erased. Multiple Sector Erase Time; [Sector Erase Time + Sector Program Time (Preprogramming)] × Number of Sector Erase. In case of multiple sector erase across bank boundaries, a read from the bank (read-while-erase) to which sectors being erased belong cannot be performed. “Embedded EraseTM Algorithm” in “■ FLOW CHART” illustrates the Embedded EraseTM Algorithm using typical command strings and bus operations. Erase Suspend/Resume Command The Erase Suspend command allows the user to interrupt a Sector Erase operation and then perform data reads from or programs to a sector not being erased. This command is applicable ONLY during the Sector Erase operation which includes the time-out period for sector erase. The Erase Suspend command will be ignored if written during the Chip Erase operation or Embedded Program Algorithm. Writting the Erase Suspend command (B0h) during the Sector Erase time-out results in immediate termination of the time-out period and suspension of the erase operation. Writing the Erase Resume command (30h) resumes the erase operation. The addresses are “DON’T CARES” when writting the Erase Suspend or Erase Resume command. When the Erase Suspend command is written during the Sector Erase operation, the device will take a maximum of “tSPD” to suspend the erase operation. When the device has entered the erase-suspended mode, the DQ7 bit will be at logic “1”, and DQ6 will stop toggling. The user must use the address of the erasing sector for reading DQ6 and DQ7 to determine if the erase operation has been suspended. Further writes of the Erase Suspend command are ignored. When the erase operation has been suspended, the device defaults to the erase-suspend-read mode. Reading data in this mode is the same as reading from the standard read mode except that the data must be read from 36 MBM29BS/FS12DH15 sectors that have not been erase-suspended. Successively reading from the erase-suspended sector while the device is in the erase-suspend-read mode will cause DQ2 to toggle. (See the section on DQ2. ) After entering the erase-suspend-read mode, the user can program the device by writing the appropriate command sequence for Program. This program mode is known as the erase-suspend-program mode. Again, programming in this mode is the same as programming in the regular Program mode except that the data must be programmed to sectors that are not erase-suspended. Successively reading from the erase-suspended sector while the device is in the erase-suspend-program mode will cause DQ2 to toggle. The end of the erase-suspended Program operation is detected by the Data polling of DQ7 or by the Toggle Bit I (DQ6) which is the same as the regular Program operation. Note that DQ7 must be read from the Program address while DQ6 can be read from any address within Bank being programmed (erase-suspend program). To resume the operation of Sector Erase, the Resume command (30h) should be written. Any further writes of the Resume command at this point will be ignored. Another Erase Suspend command can be written after the chip has resumed erasing. Extended Command (1) Fast Mode The device has Fast Mode function. This mode dispenses with the initial two unlock cycles required in the standard program command sequence writing Fast Mode command into the command register. In this mode, the required bus cycle for programming is two cycles instead of four bus cycles in standard program command. Do not write any other commands, except Fast Program Command and Reset from Fast Program Command. The read operation is also executed after exiting this mode. To exit this mode, it is necessary to write Fast Mode Reset command into the command register. (Refer to “Embedded Programming Algorithm for Fast Mode” in “■ FLOW CHART”. ) The VCC active current is required even CE = VIH during Fast Mode. (2) Fast Programming During Fast Mode, the programming can be executed with two bus cycles operation. The Embedded Program Algorithm is executed by writing program set-up command (A0h) and data write cycles (PA/PD). (Refer to “Embedded Programming Algorithm for Fast Mode” in “■ FLOW CHART”. ) (3) CFI (Common Flash Memory Interface) The CFI (Common Flash Memory Interface) specification outlines device and host system software interro gation handshake which allows specific vendor-specified software algorithms to be used for entire families of device. This allows device-independent, JEDEC ID-independent, and forward-and backward-compatible software support for the specified flash device families. Refer to CFI specification in detail. The operation is initiated by writing the query command (98h) into the command register. Following the command write, a read cycle from specific address retrives device information. Please note that output data of upper byte (DQ15 to DQ8) is “0” in word mode (16 bit) read. Refer to the CFI code table. To terminate operation, it is necessary to write the Read/Reset command sequence into the register. HiddenROM Entry Command The device has a HiddenROM area with One Time Protect function. This area is to enter the security code and to unable the change of the code once set. Program/erase is possible in this area until it is protected. However, once it is protected, it is impossible to unprotect, so please use this with caution. The HiddenROM area is 128 words (64 words for factory and 64 words for customer). This area is normally the “outermost” 4 Kwords boot block area in Bank A. Therefore, write the HiddenROM entry command sequence to enter the HiddenROM area. It is called HiddenROM mode when the HiddenROM area appears. The following commands are not allowed when the HiddenROM is enabled. 1. CFI 2. Set to Fast Mode 3. Fast Program 4. Reset from Fast Mode 5. Sector Erase Suspend 6. Sector Erase Resume 7. Chip Erase Command 37 MBM29BS/FS12DH15 HiddenROM Program Command To program the data to the HiddenROM area, write the HiddenROM program command sequence during HiddenROM mode. This command is the same as the program command in usual except to write the command during HiddenROM mode. Therefore the detection of completion method is the same as in the past, using the DQ7 data polling, and DQ6 toggle bit. Need to pay attention to the address to be programmed. If the address other than the HiddenROM area is selected to program, data of the address will be changed. HiddenROM Protect Command To protect the HiddenROM area, write the HiddenROM Protect command sequence during HiddenROM mode. After issuing "OPBP/48h" at 4th bus cycle, the device requires approximately 150us time out period for protecting HiddenROM area. Then by writing "OPBP/48h" at 5th bus cycle, the device outputs verify data at DQ0. If DQ0=1 then HiddenROM area is protected. If not, then the user needs to repeat this program sequence from the 4th cycle of "OPBP/48h". Password Program Command The Password Program Command permits programming the password that is used as part of the hardware protection scheme. The actual password is 64-bits long. 4 Password Program commands are required to program the password. The user must enter the unlock cycle, password program command (38h) and the program address/data for each portion of the password when programming. There are no provisions for entering the 2-cycle unlock cycle, the password program command, and all the password data. There is no special addressing order required for programming the password. Also, when the password is undergoing programming, Simultaneous Operation is disabled. Read operations to any memory location will return the programming status. Once the Password is written and verified, the Password Mode Locking Bit must be set in order to prevent verification. The Password Program Command is only capable of programming “0”s. Programming a “1” after a cell is programmed as a “0” results in a time-out by the Embedded Program Algorithm with the cell remaining as a “0”. The password is all F’s when shipped from the factory. All 64-bit password combinations are valid as a password. Writing the HiddenROM Exit command returns the device back to normal operation. Password Verify Command The Password Verify Command is used to verify the Password. The Password is verifiable only when the Password Mode Locking Bit is not programmed. If the Password Mode Locking Bit is programmed and the user attempts to verify the Password, the device will always drive all F’s onto the DQ data bus. Also, the device will not operate in Simultaneous Operation when the Password Verify command is executed. Only the password is returned regardless of the bank address. The lower two address bits (A1:A0) are valid during the Password Verify. Writing the HiddenROM Exit command returns the device back to normal operation. Password Protection Mode Locking Bit Program Command The Password Protection Mode Locking Bit Program Command programs the Password Protection Mode Locking Bit, which prevents further verifies or updates to the Password. Once programmed, the Password Protection Mode Locking Bit cannot be erased and the Persistent Sector Protection Locking Bit program circuitry is disabled, thereby forcing the device to remain in the Password Protection mode. After issuing "PL/68h" at 4th bus cycle, the device requires approximately 150µs time out period for programming the Password Protection Mode Locking Bit. Then by writing "PL/48h" at 5th bus cycle, the device outputs verify data at DQ0. If DQ0=1 then Password Protection Mode Locking Bit is programmed. If not, then the user needs to repeat this program sequence from the 4th cycle of "PL/68h". Exiting the Password Protection Mode Locking Bit Program command is accomplished by writing the HiddenROM Exit command. Persistent Sector Protection Mode Locking Bit Program Command The Persistent Sector Protection Mode Locking Bit Program Command programs the Persistent Sector Protection Mode Locking Bit, which prevents the Password Mode Locking Bit from ever being programmed. By disabling the program circuitry of the Password Mode Locking Bit, the device is forced to remain in the Persistent Sector Protection mode of operation, once this bit is set. After issuing "SPML/68h" at 4th bus cycle, the device requires approximately 150 µs time out period for programming the Persistent Protection Mode Locking Bit. Then by writing "SPML/48h" at 5th bus cycle, the device outputs verify data at DQ0. If DQ0=1 then Persistent Protection 38 MBM29BS/FS12DH15 Mode Locking Bit is programmed. If not, then the user needs to repeat this program sequence from the 4th cycle of "SPML/68h". Exiting the Persistent Protection Mode Locking Bit Program command is accomplished by writing the HiddenROM Exit command. PPB Lock Bit Set Command The PPB Lock Bit Set command is used to set the PPB Lock bit if it is cleared either at reset or if the Password Unlock command was successfully executed. There is no PPB Lock Bit Clear command. Once the PPB Lock Bit is set, it cannot be cleared unless the device is taken through a power-on clear or the Password Unlock command is executed. If the Password Mode Locking Bit is set, the PPB Lock Bit status is reflected as set, even after a power-on reset cycle. Exiting the PPB Lock Bit Set command is accomplished by writing the HiddenROM Exit command. DPB Write(Erase) Command The DPB Write command is used to set or clear a DPB for a given sector. The high order address bits (A22 to A12) are issued at the same time as the code 01h or 00h on DQ7 to DQ0. All other DQ data bus pins are ignored during the data write cycle. The DPBs are modifiable at any time, regardless of the state of the PPB or PPB Lock Bit. The DPBs are cleared at power-up or hardware reset. Exiting the DPB Write command is accomplished by writing the HiddenROM Exit command. DPB verify command DPB verify command is uesed to verify the status of a DPB for given sector. Scanning the sector addresses (SA) will produce a logical "1" at the device output DQ0 for a protected sector. Otherwise the device will produce "0" at DQ0 for the sector which is not protected. Writing the HiddenROM Exit Command returns the device back to normal operation. PPB Lock Bit verify command PPB Lock Bit verify command is used to verify the status of a PPB Lock Bit. A logical "1" at the device output DQ1 indicates that the PPB Lock Bit is set. If PPB Lock Bit is not set, DQ1 will output"0". Writing the HiddenROM Exit Command returns the device back to normal operation. Password Unlock Command The Password Unlock command is used to clear the PPB Lock Bit so that the PPBs can be unlocked for modification, thereby allowing the PPBs to become accessible for modification. The exact password must be entered in order for the unlocking function to occur. This command cannot be issued any faster than 2 µs at a time to prevent a hacker from running through the all 64-bit combinations in an attempt to correctly match a password. If the command is issued before the 2 µs execution window for each portion of the unlock, the command will be ignored. The Password Unlock function is accomplished by writing Password Unlock command and data to the device to perform the clearing of the PPB Lock Bit. A0 and A1 are used to determine the 16 bit data quantity is used to match separated 16 bits. Writing the Password Unlock command is address order specific. In other words, the lowers address A1:A0 = 00, the next cycle command is to A1:A0 = 01, then to A1:A0 = 10, and finally to A1:A0 = 11. Writing out of sequence results in the Password Unlock not returning a match with the password and the PPB Lock Bit remains set. Once the Password Unlock command is entered, the RY/BY pin goes LOW indicating that the device is busy. Also, reading the Bank A results in the DQ6 pin toggling, indicating that the Password Unlock function is in progress. Reading the other bank returns actual array data. Approximately 2µs is required for each portion of the unlock. Once the first portion of the password unlock completes (RY/BY is not driven and DQ6 does not toggle when read), the next cycle is issued, only this time with the next part of the password. Seven cycles Password Unlock commands are required to successfully clear the PPB Lock Bit. As with the first Password Unlock command, the RY/BY signal goes LOW and reading the device results in the DQ6 pin toggling on successive read operations until complete. It is the responsibility of the microprocessor to keep track of the number of Password Unlock cycles, the order, and when to read the PPB Lock bit to confirm successful password unlock. Writing the HiddenROM Exit Command returns the device back to normal operation. 39 MBM29BS/FS12DH15 PPB Program Command The PPB Program command is used to program, or set, a given PPB. Each PPB is individually programmed (but is bulk erased with the other PPBs). The specific sector address (A22 to A12) are written at the same time as the program command 60h. If the PPB Lock Bit is set and the corresponding PPB is set for the sector, the PPB Program command will not execute and the command will time-out without programming the PPB. After issuing "SGA+WP/68h" at 4th bus cycle, the device requires approximately 150µs time out period for programming the PPB. Then by writing "SGA+WP/48h" at 5th bus cycle, the device outputs verify data at DQ0. If DQ0=1 then PPB is programmed. If not, then the user needs to repeat this program sequence from the 4th cycle of "SGA+WP/68h". The PPB Program command does not follow the Embedded Program algorithm. Writing the HiddenROM Exit Command returns the device back to normal operation. All PPB Erase Command The All PPB Erase command is used to erase all PPBs in bulk. There is no means for individually erasing a specific PPB. Unlike the PPB program, no specific sector address is required. However, when the PPB erase command is written (60h), all Sector PPBs are erased in parallel. If the PPB Lock Bit is set the ALL PPB Erase command will not execute and the command will time-out without erasing the PPBs. After issuing "WPE/60h" at 4th bus cycle, the device requires approximately 1.5ms time out period for programming the PPB. Then by writing "WPE/40h" at 5th bus cycle, the device outputs verify data at DQ0. If DQ0=0 then PPB is successfully erased. If not, then the user needs to repeat this program sequence from the 4th cycle of "WPE/60h". It is the responsibility of the user to preprogram all PPBs prior to issuing the All PPB Erase command. If the user attempts to erase a cleared PPB, over-erasure may occur making it difficult to program the PPB at a later time. Also note that the total number of PPB program/erase cycles is limited to 100 cycles. Cycling the PPBs beyond 100 cycles is not guaranteed. Writing the HiddenROM Exit Command returns the device back to normal operation. WRITE OPERATION STATUS Detailed in “Hardware Sequence Flags Table” are all the status flags which can determine the status of the bank for the current mode operation. The read operation from the bank which doesn’t operate Embedded Algorithm returns data of memory cells. These bits offer a method for determining whether an Embedded Algorithm is properly completed. The information on DQ2 is address-sensitive. This means that if an address from an erasing sector is consecutively read, the DQ2 bit will toggle. However, DQ2 will not toggle if an address from a non-erasing sector is consecutively read. This allows users to determine which sectors are in erase and which are not. The status flag is not output from banks (non-busy banks) which do not execute Embedded Algorithms. For example, a bank (busy bank) is executing an Embedded Algorithm. When the read sequence is [1] < busy bank >, [2] < non-busy bank >, [3] < busy bank >, the DQ6 toggles in the case of [1] and [3]. In case of [2], the data of memory cells are output. In the erase-suspend read mode with the same read sequence, DQ6 will not be toggled in [1] and [3]. 40 MBM29BS/FS12DH15 Status Hardware Sequence Flags Table DQ6 DQ7 Embedded Program Algorithm Embedded Erase Algorithm In Progress DQ7 Toggle DQ5 DQ3 DQ2 0 0 No Toggle*3 Toggle*1 Erase Sector Non-Erase Sector Erase Suspend Read (Erase Suspended Sector) Erase Erase Suspend Read Suspended (Non-Erase Suspended Sector) Mode Erase Suspend Program (Non-Erase Suspended Sector) Embedded Program Algorithm Embedded Erase Algorithm Exceeded Time Limits Erase Erase Suspend Program Suspended (Non-Erase Suspended Sector) Mode 0 Toggle 0 1 1 No Toggle *3 0 0 Toggle Data Data Data Data Data DQ7 Toggle 0 0 No Toggle*2,*3 DQ7 Toggle 1 0 No Toggle*3 0 Toggle 1 1 N/A DQ7 Toggle 1 0 N/A No Toggle*3 *1: Successive reads from the erasing or erase-suspend sector will cause DQ2 to toggle. *2: Reading from non-erase suspend sector address will indicate logic “1” at the DQ2 bit. *3: When the device is se to Asynchronous mode, these status flags should be read by CE toggle. DQ7 Data Polling The device features Data Polling as a method to indicate to the host that the Embedded Algorithms are in progress or completed. During the Embedded Program Algorithm, an attempt to read the device will produce a complement of data last written to DQ7. Upon completion of the Embedded Program Algorithm, an attempt to read the device will produce true data last written to DQ7. During the Embedded Erase Algorithm, an attempt to read the device will produce a “0” at the DQ7 output. Upon completion of the Embedded Erase Algorithm, an attempt to read device will produce a “1” on DQ7. The flowchart for Data Polling (DQ7) is shown in “Data Polling Algorithm” in “■ FLOW CHART”. For programming, the Data Polling is valid after the rising edge of the fourth write pulse in the four write pulse sequences. For chip erase and sector erase, the Data Polling is valid after the rising edge of the sixth write pulse in the six write pulse sequences. Data Polling must be performed at sector addresses of sectors being erased, not protected sectors. Otherwise the status may become invalid. If a program address falls within a protected sector, Data Polling on DQ7 is active for approximately 1 µs, then that bank returns to the read mode. After an erase command sequence is written, if all sectors selected for erasing are protected, Data Polling on DQ7 is active for approximately 400 µs, then the bank returns to read mode. Once the Embedded Algorithm operation is close to being completed, the device data pins (DQ7) may change asynchronously while the output enable (OE) is asserted low. This means that device is driving status information on DQ7 at one instant, and then that byte’s valid data at the next instant. Depending on when the system samples the DQ7 output, it may read the status or valid data. Even if device has completed the Embedded Algorithm operation and DQ7 has a valid data, data outputs on DQ0 to DQ6 may still be invalid. The valid data on DQ0 to DQ7 will be read on successive read attempts. The Data Polling feature is active only during the Embedded Programming Algorithm, Embedded Erase Algorithm or sector erase time-out. (See “Hardware Sequence Flags Table”. ) See “Data Polling Timings/Toggle Bit Timings (During Embedded Algorithm) ” and “Synchronous Data Polling Timings/Toggle Bit Timings” in “■ TIMING DIAGRAM” for the Data Polling timing specifications and diagrams. 41 MBM29BS/FS12DH15 DQ6 Toggle Bit I The device also features the “Toggle Bit I” as a method to indicate to the host system that the Embedded Algorithms are in progress or completed. During Embedded Program or Erase Algorithm cycle, successive attempts to read (CE toggling) data from the busy bank will result in DQ6 toggling between one and zero. Once the Embedded Program or Erase Algorithm cycle is completed, DQ6 will stop toggling and valid data will be read on the next successive attempts. During programming, the Toggle Bit I is valid after the rising edge of the fourth write pulse in the four write pulse sequences. For chip erase and sector erase, the Toggle Bit I is valid after the rising edge of the sixth write pulse in the six write pulse sequences. The Toggle Bit I is active during the sector time out. In programming, if the sector being written is protected, the toggle bit will toggle for about 1 µs and then stop toggling with data unchanged. In erase, the device will erase all selected sectors except for protected ones. If all selected sectors are protected, the chip will toggle the toggle bit for about 400 µs and then drop back into read mode, having data kept remained. CE toggling will cause DQ6 to toggle. In addition, an Erase Suspend/Resume command will cause DQ6 to toggle. The system can use DQ6 to determine whether a sector is actively erased or is erase-suspended. When a bank is actively erased (that is, the Embedded Erase Algorithm is in progress) , DQ6 toggles. When a bank enters the Erase Suspend mode, DQ6 stops toggling. Successive read cycles during erase-suspend-program cause DQ6 to toggle. To operate toggle bit function properly, CE must be high when bank address is changed. See “Data Polling Timings/Toggle Bit Timings (During Embedded Algorithm) ” and “Synchronous Data Polling Timings/Toggle Bit Timings” in “■ TIMING DIAGRAM” for the Toggle Bit I timing specifications and diagrams. DQ5 Exceeded Timing Limits DQ5 will indicate if the program or erase time has exceeded the specified limits (internal pulse count) . Under these conditions DQ5 will produce “1”. This is a failure condition indicating that the program or erase cycle was not successfully completed. Data Polling is only operating function of the device under this condition. The CE circuit will partially power down device under these conditions (to approximately 2 mA) . The OE and WE pins will control the output disable functions as described in “MBM29BS/FS12DH User Bus Operations Table” in “■ DEVICE BUS OPERATIION”. The DQ5 failure condition may also appear if a user tries to program a non-blank location without pre-erase. In this case the device locks out and never completes the Embedded Algorithm operation. Hence, the system never reads valid data on DQ7 bit and DQ6 never stop toggling. Once the device has exceeded timing limits, the DQ5 bit will indicate a “1”. Please note that this is not a device failure condition since the device was incorrectly used. If this occurs, reset device with the command sequence. DQ3 Sector Erase Timer After completion of the initial sector erase command sequence, sector erase time-out begins. DQ3 will remain low until the time-out is completed. Data Polling and Toggle Bit are valid after the initial sector erase command sequence. If Data Polling or the Toggle Bit I indicates that a valid erase command has been written, DQ3 may be used to determine whether the sector erase timer window is still open. If DQ3 is high (“1”) the internally controlled erase cycle has begun. If DQ3 is low (“0”) , the device will accept additional sector erase commands. To insure the command has been accepted, the system software should check the status of DQ3 prior to and following each subsequent Sector Erase command. If DQ3 were high on the second status check, the command may not have been accepted. See “Configuration Register Table” : Hardware Sequence Flags. 42 MBM29BS/FS12DH15 DQ2 Toggle Bit II This toggle bit II, along with DQ6, can be used to determine whether the device is in the Embedded Erase Algorithm or in Erase Suspend. Successive reads from the erasing sector will cause DQ2 to toggle during the Embedded Erase Algorithm. If the device is in the erase-suspended-read mode, successive reads from the erase-suspended sector will cause DQ2 to toggle. When the device is in the erase-suspended-program mode, successive reads from the non-erase suspended sector will indicate a logic “1” at the DQ2 bit. DQ6 is different from DQ2 in that DQ6 toggles only when the standard program or Erase, or Erase Suspend Program operation is in progress. The behavior of these two status bits, along with that of DQ7, is summarized as follows : For example, DQ2 and DQ6 can be used together to determine if the erase-suspend-read mode is in progress. (DQ2 toggles while DQ6 does not. ) See also “Hardware Sequence Flags Table”. Furthermore DQ2 can also be used to determine which sector is being erased. At the erase mode, DQ2 toggles if this bit is read from an erasing sector. To operate toggle bit function properly, CE or OE must be high when bank address is changed. Reading Toggle Bits DQ6/DQ2 Whenever the system initially begins reading toggle bit status, it must read DQ7 to DQ0 at least twice in a row to determine whether a toggle bit is toggling. Typically a system would note and store the value of the toggle bit after the first read. After the second read, the system would compare the new value of the toggle bit with the first. If the toggle bit is not toggling, the device has completed the program or erase operation. The system can read array data on DQ7 to DQ0 on the following read cycle. However, if, after the initial two read cycles, the system determines that the toggle bit is still toggling, the system also should note whether the value of DQ5 is high (see the section on DQ5) . If it is, the system should then determine again whether the toggle bit is toggling, since the toggle bit may have stopped toggling just as DQ5 went high. If the toggle bit is no longer toggling, the device has successfully completed the program or erase operation. If it is still toggling, the device did not complete the operation successfully, and the system must write the reset command to return to reading array data. The remaining scenario is that the system initially determines that the toggle bit is toggling and DQ5 has not gone high. The system may continue to monitor the toggle bit and DQ5 through successive read cycles, determining the status as described in the previous paragraph. Alternatively, it may choose to perform other system tasks. In this case, the system must start at the beginning of the algorithm when it returns to determine the status of the operation. (Refer to “Toggle Bit Algorithm” in “■ FLOW CHART”. ) RDY: Ready The RDY is a dedicated output that, when the device is configured in the Synchronous mode, indicates (when at logic low) the system should wait 1 clock cycle before expecting the next word of data. Using the RDY Configuration Command Sequence, RDY can be set so that a logic low indicates the system should wait 2 clock cycles before expecting valid data. In Synchronous mode RDY functions only data valid indicator. The RDY output to be low during the initial access in burst mode. When the device is configured in Asynchronous mode, the RDY is an open-drain output which indicates whether an Embedded Alogorithm is in progress or completed (RY/BY). If output is low, the device is busy with either a program or erase operation. If output is high (RY/BY should be pulled up), the device is ready to accept any read/write or erase operation. If the device is placed in an Erase Suspend mode, RDY output will be High-Z. During programming at Asynchronous mode, the RDY pin is driven low after the rising edge of the fourth write pulse. During an erase operation, the RY/BY pin is driven low after the rising edge of the sixth write pulse. The RDY pin will indicate a busy condition during RESET pulse. Since this is an open-drain output at Asynchronous mode, RDY pins can be tied together in parallel with a pullup resistor to VCCQ. 43 MBM29BS/FS12DH15 Data Protection The device is designed to offer protection against accidental erasure or programming caused by spurious system level signals that may exist during power transitions. During power up device automatically resets internal state machine to Read mode. Also, with its control register architecture, alteration of memory contents only occurs after successful completion of specific multi-bus cycle command sequence. Device also incorporates several features to prevent inadvertent write cycles resulting from VCC power-up and power-down transitions or system noise. Write Pulse "Glitch" Protection Noise pulses of less than 3 ns (typical) on OE, CE, or WE will not initiate a write cycle. Logical Inhibit Write cycles are inhibited by holding any one of OE = VIL, CE = VIH or WE = VIH. To initiate a write cycle, CE and WE must be a logical zero while OE is a logical one. Power-Up Write Inhibit Power-up of the device with WE = CE = VIL and OE = VIH will not accept commands on the rising edge of WE. The internal state machine is automatically reset to read mode on power-up. 44 MBM29BS/FS12DH15 ■ ABSOLUTE MAXIMUM RATINGS Parameter Symbol Rating Unit Min Max Tstg –55 +125 °C TA –40 +85 °C VIN, VOUT –0.5 VCCQ+0.5 V Power Supply Voltage*1 VCC –0.5 +2.5 V I/O’s Power Supply Voltage VCCQ –0.5 +2.5 V VACC –0.5 +10.5 V Storage Temperature Ambient Temperature with Power Applied Voltage with Respect to Ground All inputs and I/Os pins except as noted below*1,*2 1, 3 ACC* * *1 : Voltage is defined on the basis of VSS = GND = 0 V. *2 : Minimum DC voltage on input or l/O pins is –0.5 V. During voltage transitions, input or I/O pins may undershoot VSS to –2.0 V for periods of up to 20 ns. Maximum DC voltage on input or l/O pins is VCC +0.5 V. During voltage transitions, input or I/O pins may overshoot to VCC +2.0 V for periods of up to 20 ns. *3 : Minimum DC input voltage on ACC pin is –0.5 V. During voltage transitions, ACC pin may undershoot VSS to –2.0 V for periods of up to 20 ns. Voltage difference between input and supply voltage (VIN - VCC) does not exceed +8.0 V. Maximum DC input voltage on ACC pin is +10.5 V which may overshoot to +12.5 V for periods of up to 20 ns. WARNING: Semiconductor devices can be permanently damaged by application of stress (voltage, current, temperature, etc.) in excess of absolute maximum ratings. Do not exceed these ratings. ■ RECOMMENDED OPERATING CONDITIONS Parameter Symbol Part No. Value Min Max Unit Ambient Temperature TA MBM29BS/FS12DH 12 –40 +85 °C Power Supply Voltage* VCC MBM29BS/FS12DH 12 +1.65 +1.95 V VCCQ Supply Voltage* VCCQ MBM29BS/FS12DH 12 +1.65 +VCC V * : Voltage is defined on the basis of VSS = GND = 0 V. Notes:Operating ranges define those limits between which the functionality of the device is quaranteed. WARNING: The recommended operating conditions are required in order to ensure the normal operation of the semiconductor device. All of the device’s electrical characteristics are warranted when the device is operated within these ranges. Always use semiconductor devices within their recommended operating conditionranges. Operation outside these ranges may adversely affect reliability and could result in device failure. No warranty is made with respect to uses, operating conditions, or combinations not represented on the data sheet. Users considering application outside the listed conditions are advised to contact their FUJITSU representatives beforehand. 45 MBM29BS/FS12DH15 ■ MAXIMUM OVERSHOOT/MAXIMUM UNDERSHOOT 20 ns 20 ns +0.8 V –0.5 V –2.0 V 20 ns Figure 1 Maximum Undershoot Waveform 20 ns VCC +2.0 V VCC +0.5 V +1.0 V 20 ns Figure 2 46 20 ns Maximum Overshoot Waveform 1 MBM29BS/FS12DH15 ■ DC CHARACTERISTICS • CMOS Compatible Parameter Symbol Conditions Value Min Typ Max Unit Input Leakage Current ILI VIN = VSS to Vcc, VCC = Vcc Max — — ±1.0 µA Output Leakage Current ILO VOUT = VSS to Vcc, VCC = Vcc Max — — ±1.0 µA VCC Active Burst Read Current ICCB CE = VIL, OE = VIH, WE = VIH, 66 MHz — 15 30 mA VCC Active Asynchronous Read Current*1 ICC1 CE = VIL, OE = VIH, 10 MHz WE = VIH 5 MHz — 20 30 10 15 VCC Active Current*2 ICC2 CE = VIL, OE = VIH, VPP = VIH — 15 40 mA VCC Current (Standby) ICC3 CE = RESET = VCC ± 0.2 V — 0.2 50 µA VCC Current (Standby, Reset)*3 ICC4 RESET = VSSQ ± 0.2 V, CLK = VIL — 0.2 50 µA VCC Current (Automatic Sleep Mode) ICC5 VCC = VCC Max, CE = VSSQ ± 0.2 V, RESET = VCCQ ± 0.2 V, VIN = VCCQ ±0.2 V or VSSQ ± 0.2 V — 0.2 50 µA VCC Active Current (Read-While-Program )*4 ICC6 CE = VIL, OE = VIH — 25 60 mA VCC Active Current (Read-While-Erase)*4 ICC7 CE = VIL, OE = VIH — 25 60 mA Input Low Level VIL VCCQ = 1.8 V –0.5 — 0.4 V Input High Level VIH VCCQ = 1.8 V VCCQ–0.4 — VCCQ+0.4 V Output Low Voltage Level VOL IOL = 100 µA, VCC = VCC Min = VCCQ — — 0.1 V Output High Voltage Level VOH IOH = –100 µA, VCC = VCC Min = VCCQ VCCQ –0.1 — — V Voltage for ACC Program Acceleration*5 VACC 11.5 — 12.5 V — mA *1: The lCC current listed includes both the DC operating current and the frequency dependent component. *2: lCC active while Embedded Algorithm (Program or Erase) is in progress. *3: Automatic sleep mode enables the low power mode when address remain stable for tACC + 60 ns. *4: Embedded Algorithm (Program or Erase) is in progress. (@5 MHz) *5: Applicable for only VCC. 47 MBM29BS/FS12DH15 ■ AC CHARACTERISTICS • Synchronous/Burst Read Parameter Value 54 MHz 66 MHz Unit Standard Min Max Min Max Latency (Even Address in Handshake Mode) tIACC — 69 — 56 ns Latency—(Non-Handshake or Odd Address in Handshake mode) tIACC — 87.5 — 71 ns Burst Access Time Valid Clock to Output Delay tBACC — 13.5 — 11 ns Address Setup Time to CLK* tACS 5 — 4 — ns Address Hold Time from CLK* tACH 7 — 6 — ns Data Hold Time from Next Clock Cycle tBDH 4 — 3 — ns Chip Enable to RDY Valid tCR — 13.5 — 11 ns Output Enable to Output Valid tOE — 13.5 — 11 ns Chip Enable to High-Z tCEZ — 10 — 8 ns Output Enable to High-Z tOEZ — 10 — 8 ns CE Setup Time to CLK tCES 5 — — 4 ns Ready Access Time from CLK tRACC — 13.5 — 11 ns CE Setup Time to AVD tCAS 0 — 0 — ns AVD Set Up Time to CLK tAVSC 5 — 4 — ns AVD Hold Time to CLK tAVHC 7 — 6 — ns Access Time tACC — 55 — 50 ns CLK to access resume tCKA — 13.5 — 11 ns CLK to High-Z tCKZ — 10 — 8 ns Output Enable Setup Time tOES 5 — 4 — ns Read Cycle for Continuous suspend tRCC — 1 — 1 ms Read Cycle Time tRC 55 — 50 — ns *: Addresses are latched on the active edge of CLK. Note : Test Conditions: Output Load: VCCQ = 1.65 V to 1.95 V : 30 pF Input rise and fall times: 5 ns Input pulse levels: 0.0 V to VCCQ Timing measurement reference level Input: 0.5 × VCCQ Output: 0.5 × VCCQ 48 Symbols MBM29BS/FS12DH15 • Asynchronous Read Value Symbols Parameter 54 MHz 66 MHz Unit JEDEC Standard Min Max Min Max Read Cycle Time — tRC 55 — 50 — ns Access Time from CE Low — tCE — 55 — 50 ns Asynchronous Access Time* — tACC — 55 — 50 ns Output Enable to Output Valid — tOE — 13.5 — 11 ns Output Read Enable Hold Toggle and Data Polling Time 0 — 0 — ns — tOEH 10 — 8 — ns Chip Enable to High-Z — tCEZ — 10 — 8 ns CE High During Toggle Bit Polling — tCEPH 20 — 20 — ns Output Enable to High-Z — tOEZ — 10 — 8 ns * : Asynchronous Access Time is from the last of either stable addresses or the falling edge of AVD. • Hardware Reset (RESET) Parameter Symbols All Speed Options Unit JEDEC Standard RESET Pin Low (During Embedded Algorithms) to Read Mode — tREADY — 20 µs RESET Pulse Width — tRP 500 — ns Reset High Time Before Read — tRH 200 — ns Power On/Off Time — tPS 0 — ns 49 MBM29BS/FS12DH15 • Write (Erase/Program) Operations Parameter Value Symbols 54 MHz 66 MHz JEDEC Standard Min Write Cycle Time tAVAV tWC 55 — — 50 — — ns Address Setup Time tAVWL tAS 0 — — 0 — — ns Address Hold Time tWLAX tAH 20 — — 20 — — ns AVD Low Time — tAVDP 12 — — 10 — — ns CE Low to AVD High — tCLAH 12 — — 10 — — ns Data Setup Time tDVWH tDS 45 — — 20 — — ns Data Hold Time tWHDX tDH 0 — — 0 — — ns Read Recovery Time Before Write tGHWL tGHWL 0 — — 0 — — ns CE Hold Time tWHEH tCH 0 — — 0 — — ns Write Pulse Width tEHWH tWP 30 — — 20 — — ns Write Pulse Width High tWHWL tWPH 20 — — 20 — — ns — tSR/W 0 — — 0 — — ns Programming Operation tWHWH1 tWHWH1 — 6 — — 6 — µs Sector Erase Operation* tWHWH2 tWHWH2 — 0.5 — — 0.5 — s VACC Rise and Fall Time — tVID 500 — — 500 — — ns VACC Setup Time (During Accelerated Programming) — tVIDS 1 — — 1 — — µs VCC Setup Time — tVCS 50 — — 50 — — µs tELWL tCS 0 — — 0 — — ns AVD Set Up Time to CLK — tAVSC 5 — — 4 — — ns AVD Hold Time to CLK — tAVHC 7 — — 6 — — ns AVD Setup Time to WE — tAVSW 5 — — 4 — — ns AVD Hold Time to WE — tAVHW 7 — — 6 — — ns Address Setup Time to CLK — tACS 5 — — 4 — — ns Address Hold Time to CLK — tACH 7 — — 6 — — ns Address Setup Time to AVD — tAAS 5 — — 4 — — ns Address Hold Time to AVD — tAAH 7 — — 6 — — ns WE Low to CLK — tWLC 0 — — 0 — — ns AVD High to WE Low — tAHWL 5 — — 5 — — ns CLK to WE Low — tCWL 5 — — 5 — — ns Erase Time-out TIme — tTOW 50 — — 50 — — µs Latency Between Read and Write Operations CE Setup Time to WE Typ Max *: Does not include the preprogramming time. Note : See the "Erase and Programming Performance" section for more information.1. 50 Min Unit Typ Max MBM29BS/FS12DH15 ■ ERASE AND PROGRAMMING PERFORMANCE Limit Parameter Unit Comments Min Typ Max Sector Erase Time — 0.5 2 s Excludes programming prior to erasure Word Programming Time — 6.0 100 µs Excludes system level overhead Chip Programming Time — 25.2 95 s Excludes system level overhead 100,000 — — cycle Erase/Program Cycle Note : Test conditions TA = +25°C, Typical Erase conditions TA = +25°C, VCC = 1.8 V, Typical Program conditions TA = +25°C, VCC = 1.8 V, Data = checker ■ FBGA PIN CAPACITANCE Parameter Symbol Test Setup Typ Max Unit Input Capacitance CIN VIN = 0 TBD TBD pF Output Capacitance COUT VOUT = 0 TBD TBD pF Control Pin Capacitance CIN2 VIN = 0 TBD TBD pF Note : Test conditions TA = +25°C, f = 1.0 MHz 51 MBM29BS/FS12DH15 ■ TIMING DIAGRAM • Key to Switching Wavwforms WAVEFORM INPUTS OUTPUTS Steady Steady Change from H to L Change from H to L Change from L to H Change from L to H Don’t Care Any Change Permitted Changing, State Unknown Does Not Apply Center Line is HighImpedance State(High-Z) 7 cycles for initial access shown. tCEZ tCES CE 1 2 3 4 5 6 7 CLK tAVSC AVD tAVHC tACS tBDH A22 to A0 Aa tBACC tACH High-Z DQ15 to DQ0 tOES OE tCR RDY Da tIACC tACC Da + 1 Da + n tCKA tRACC High-Z High-Z Notes : • Figure shows total number of wait states set to seven cycles. The total number of wait states can be programmed from two cycles to seven cycles. • The device is in synchronous mode. Figure 3 52 Synchronous Burst Mode Read (Latched By Rising Active CLK) MBM29BS/FS12DH15 4 cycles for initial access shown. tCEZ tCES CE 1 2 3 4 5 CLK tAVSC AVD tAVHC tACS tBDH A22 to A0 Aa tBACC tACH High-Z DQ15 to DQ0 Da tIACC Da + 1 Da + n tACC tOES OE tCR tCKA tRACC High-Z High-Z RDY Notes : • Figure shows total number of wait states set to four cycles. The total number of wait states can be programmed from two cycles to seven cycles. Clock is set for active falling edge. • The device is in synchronous mode. Figure 4 Synchronous Burst Mode Read (Latched By Falling Active CLK) 53 MBM29BS/FS12DH15 7 cycles for initial access shown. tCES CE 1 2 3 4 5 6 7 CLK tAVSC AVD tAVHC tACS A22 to A0 tCEZ tBDH Aa tBACC tACH DQ15 to DQ0 tOES OE RDY tIACC tACC D0 D1 D2 D3 D4 D5 D6 D7 tCKA tCR tRACC High-Z Note : Figure assumes 7 wait states for initial access, synchronous read. D0 to D7 in data waveform indicate the order of data within a given 8-word address range, from lowest to highest. See "Requirements for Synchronous (Burst) Read Operation". The Set Configuration Register command sequence has been written with A18 = 1; device will output RDY with valid data. Figure 5 54 8-word Linear Burst MBM29BS/FS12DH15 7 cycles for initial access shown. tCES CE 1 2 3 4 5 6 7 CLK tAVSC AVD tAVHC tACS A22 to A0 tCEZ tBDH Aa tBACC tACH DQ15 to DQ0 tOES OE RDY tIACC tACC D6 D7 D0 D1 D2 D3 D4 D5 tCKA tCR tRACC High-Z Note : Figure assumes 7 wait states for initial access, synchronous read. D0 to D7 in data waveform indicate the order of data within a given 8-word address range, from lowest to highest. Starting address in figure is the 7th address in range (A6). See "Requirements for Synchronous (Burst) Read Operation". The Set Configuration Register command sequence has been written with A18 = 1; device will output RDY with valid data. Figure 6 8-word Linear Burst with Wrap Around 55 MBM29BS/FS12DH15 6 wait cycles for initial access shown. tCEZ tCES CE 1 2 3 4 5 6 CLK tAVSC AVD tAVHC tACS tBDH A22 to A0 Aa tBACC tACH High-Z DQ15 to DQ0 D0 tIACC tOES OE tACC tCKA D1 D2 D3 Da + n tRACC tCR RDY High-Z High-Z Note : Figure assumes 6 wait states for initial access, 66 MHz clock, and synchronous read. The Set Configuration Register command sequence has been written with A18 = 0; device will output RDY one cycle before valid data. Figure 7 56 Linear Burst with RDY Set One Cycle Before Data MBM29BS/FS12DH15 Suspend Resume CLK VIH AVD Address tOES tOES OE tCKZ tCKA Data D20 D20 tRACC tRACC D21 D22 D23 tRACC D23 D23 D24 tRACC RDY CE VIL Note : Figure is for any even address other than 3Eh (or multiple thereof). The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. When the Burst Suspend is enabled the device will enter power down mode. Figure 8 Handshake Mode Burst Suspend at an even address 57 MBM29BS/FS12DH15 Suspend Resume CLK VIH AVD Address tOES tOES OE tCKZ tCKA Data D23 D23 tRACC tRACC D24 D25 tRACC D25 D25 D26 D27 tRACC RDY CE VIL Note : Figure is for any odd address other than 3Fh (or multiple thereof). The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. When the Burst Suspend is enabled the device will enter power down mode. Figure 9 58 Handshake Mode Burst Suspend at an odd address MBM29BS/FS12DH15 1 2 3 4 Suspend 5 6 Resume 7 CLK AVD Address A(0) tOES OE tCKA Data D(0) tRACC D(1) D(2) D(3) tRACC D(3) D(3) D(4) tRACC RDY CE Note : Figure assumes 6 wait states for initial access and synchronous read. The starting address is Even. The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. When the Burst Suspend is enabled the device will enter power down mode. Figure 10 Handshake Mode Burst Suspend prior to Initial Access when the starting address is Even 59 MBM29BS/FS12DH15 1 2 3 4 Suspend 5 6 Resume 7 CLK AVD Address A(1) tOES OE tCKA Data D(1) tRACC D(2) D(3) D(3) tRACC D(3) D(4) D(5) tRACC RDY CE Note : Figure assumes 6 wait states for initial access and synchronous read. The starting address is Odd. The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. When the Burst Suspend is enabled the device will enter power down mode. Figure 11 Handshake Mode Burst Suspend prior to Initial Access when the starting address is Odd 60 MBM29BS/FS12DH15 Suspend Resume CLK VIH AVD Address tOES tOES OE tCKZ tCKA Data D20 D20 tRACC D21 D22 D23 D24 D25 D26 tRACC RDY CE VIL Note : The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. Figure 12 No-Handshake Mode Burst Suspend 61 MBM29BS/FS12DH15 1 2 3 4 Suspend 5 6 Resume 7 CLK AVD Address A(n) tOES OE tCKA Data D(n) D(n+1) D(n+2) D(n+3) D(n+4) tRACC RDY CE Note : Figure assumes 6 wait states for initial access and synchronous read. The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. Figure 13 62 No-Handshake Mode Burst Suspend prior to Initial Access MBM29BS/FS12DH15 1 2 3 4 Suspend 5 6 Resume 7 CLK tRCC AVD Address A(n) tOES OE tCKA tRCC Data D(n) Invalid Data RDY CE Notes : • Figure assumes 6 wait states for initial access and synchronous read. The Set Configuration Register command sequence must be written with A18=1; device will output RDY with valid data. The clock during Burst Suspend is Don’t care. • Burst plus Burst Suspend should not last longer than tRCC without relaching an address. After the period of tRCC the device will output invalid data. Figure 14 Read Cycle for No-Handshake Mode Continuous Suspend 63 MBM29BS/FS12DH15 tRC Address Address Stable tACC CE tOE tCEZ OE tOEZ tOEH WE tOH tCE High-Z Outputs Outputs Valid Notes : • AVD is assumed to be VIL. • Configuration Register is set to Asynchronous mode. Figure 15 64 Asynchronous Mode Read High-Z MBM29BS/FS12DH15 CE, OE tRH RESET tRP Reset Timings NOT during Embedded Algorithms Reset Timings during Embedded Algorithms CE, OE tREADY RESET tRP Figure 16 Reset Timings tPS tPS RESET VCC 0V 1.65 V 1.65 V Valid Data In Address Data Valid Data Out tRH Figure 17 tACC Power On/Off Timings 65 MBM29BS/FS12DH15 Program Command Sequence (last two cycles) Read Status Data CLK tAVSW tAVHW AVD VIL Data Polling 3rd Bus Cycle 555h Address tWC PA tAS PA VA tRC tAH tOH tDS tDH A0h Data PD DQ7 DOUT DOUT tCEZ CE tCS tOEZ tCH tCE OE tGHWL tWP tWPH tOE tWHWH1 WE Notes : • PA = Program Address, PD = Program Data, VA = Valid Address for reading status bits. • "In progress" and "complete" refer to status of program operation. • A22 to A12 are don’t care during command sequence unlock cycles. • CLK is Don’t care. • Configuration Register is set to Asynchronous mode. Figure 18 66 Program Operation Timings at Asynchronous Mode (WE latch) MBM29BS/FS12DH15 Program Command Sequence (last two cycles) Read Status Data CLK tCLAH AVD tAVDP tAAH tAAS Address 555h Data VA PA A0h VA In Progress PD Complete tDS tDH CE tCH OE tAHWL WE tWP tCS tWHWH1 tWPH tWC tVCS VCC Notes : • PA = Program Address, PD = Program Data, VA = Valid Address for reading status bits. • "In progress" and "complete" refer to status of program operation. • A22 to A12 are don’t care during command sequence unlock cycles. • CLK is Don’t care. • Configuration Register is set to Asynchronous mode. • Addresses are latched on the rising edge of AVD. Figure 19 Program Operation Timings at Asynchronous Mode (AVD latch) 67 MBM29BS/FS12DH15 Program Command Sequence (last two cycles) Read Status Data CLK tAVSW tAVHW AVD Address tAS VA PA 555h tAH Data A0h VA In Progress PD Complete tDS tDH CE OE tCH tWLC tWP WE tWPH tCS tWHWH1 tWC tVCS VCC Notes : • PA = Program Address, PD = Program Data, VA = Valid Address for reading status bits. • "In progress" and "complete" refer to status of program operation. • A22 to A12 are don’t care during command sequence unlock cycles. • Configuration Register is set to Synchronous mode. • Addresses are latched on the first of either the falling edge of WE or active edge of CLK. When "tWLC" is not met then AVD/address set up and hold time to CLK will be required. Figure 20 68 Program Operation Timings at Synchronous Mode (WE latch) MBM29BS/FS12DH15 Program Command Sequence (last two cycles) Read Status Data CLK tACS tACH CE tAVSC tAVHC AVD Address Data A0h tDS tCAS VA PA 555h VA In Progress PD Complete tDH OE tCH tCWL tWP WE tWHWH1 tWPH tVCS tWC Vcc Notes : • PA = Program Address, PD = Program Data, VA = Valid Address for reading status bits. • "In progress" and "complete" refer to status of program operation. • A22 to A12 are don’t care during command sequence unlock cycles. • Configuration Register is set to Synchronous mode. • Addresses are latched on the first of either the active edge of CLK or the rising edge of AVD. Figure 21 Program Operation Timings at Synchronous Mode (CLK latch) 69 MBM29BS/FS12DH15 Program Command Sequence (last two cycles) Read Status Data CLK tAVSW tAVHW AVD Address SA 555h for chip erase 2AAh tAS tAH Data 55h VA VA 10h for chip erase In Progress 30h Complete tDS tDH tAVSC CE OE tCH tWLC tWP WE tWPH tCS tWHWH2 tWC tVCS VCC Notes : • SA is the sector address for Sector Erase. • Address bits A22 to A12 are don’t cares during unlock cycles in the command sequence. • This timing is for Synchronous mode. Figure 22 70 Chip/Sector Erase Command Sequence MBM29BS/FS12DH15 CE AVD WE PA Address Data Don't Care Don't Care PD Don't Care tVIDS OE ACC A0h VID tVID VIL or VIH Note : Use setup and hold times from conventional program operation. Figure 23 Accelerated Fast mode Programming Timing 71 MBM29BS/FS12DH15 AVD tCEZ tCE CE tCH tOEZ tOE OE tOEH WE tACC Address VA VA Status Data Status Data Notes : • Status reads in figure are shown as asynchronous mode. • VA = Valid Address. Two read cycles are required to determine status. When the Embedded Algorithm operation is complete, and Data Polling will output true data and the toggle bits will stop toggling. Figure 24 72 Data Polling Timings/Toggle Bit Timings (During Embedded Algorithm) MBM29BS/FS12DH15 CE CLK AVD Address VA VA OE tIACC Data tIACC Status Data Status Data RDY Notes : • The timings are similar to synchronous read timings. • VA = Valid Address. Two read cycles are required to determine status. When the Embedded Algorithm operation is complete, the toggle bits will stop toggling. • RDY is active with data (A18 = 0 in the Burst Mode Configuration Register). When A18 = 1 in the Burst Mode Configuration Register, RDY is active one clock cycle before data. Figure 25 Synchronous Data Polling Timings/Toggle Bit Timings 73 MBM29BS/FS12DH15 Data D0 Rising edge of next clock cycle following last wait state triggers next burst data AVD total number of clock cycles following AVD falling edge OE 1 2 3 0 1 4 5 6 7 3 4 5 CLK 2 number of clock cycles programmed Wait State Decoding Addresses: A14, A13, A12 = "101" ⇒ 5 programmed, 7 total A14, A13, A12 = "100" ⇒ 4 programmed, 6 total A14, A13, A12 = "011" ⇒ 3 programmed, 5 total A14, A13, A12 = "010" ⇒ 2 programmed, 4 total A14, A13, A12 = "001" ⇒ 1 programmed, 3 total A14, A13, A12 = "000" ⇒ 0 programmed, 2 total Note : Figure assumes address D0 is not at an address boundary, active clock edge is rising, and wait state is set to "101". Figure 26 74 Example of Wait States Insertion (Non-Handshaking Device) D1 MBM29BS/FS12DH15 Last Cycle in Program or Sector Erase Command Sequence Read status (at least two cycles) in same bank and/or array data from other bank tWC tRC Begin another write or program command sequence tRC tWC tCEPH CE OE tOE tOEH tGHWL WE tWP tWPH tDS tDH Data tOEZ tACC PD/30h tOEH AAh RD RD tAS tAH Address PA/SA tSR/W RA RA 555h AVD Note : Breakpoints in waveforms indicate that system may alternately read array data from the "non-busy bank" while checking the status of the program or erase operation in the "busy" bank. The system should read status twice to ensure valid information. Figure 27 Bank-to-Bank Read/Write Cycle Timings 75 MBM29BS/FS12DH15 Power-up/ Hardware Reset Asynchronous Read Mode Only Set Burst Mode Configuration Register Command for Synchronous Mode (A19 = 0) Set Burst Mode Configuration Register Command for Asynchronous Mode (A19 = 1) Synchronous Read Mode Only Figure 28 76 Synchronous/Asynchronous State Diagram MBM29BS/FS12DH15 ■ FLOW CHART EMBEDDED ALGORITHM Start Write Program Command Sequence (See Below) Data Polling Device Embedded Program Algorithm in progress No Verify Data ? Yes Increment Address No Last Address ? Yes Programming Completed Program Command Sequence (Address/Command): 555h/AAh 2AAh/55h 555h/A0h Program Address/Program Data Figure 29 Embedded ProgramTM Algorithm 77 MBM29BS/FS12DH15 EMBEDDED ALGORITHM Start Write Erase Command Sequence (See Below) Data Polling or Toggle Bit from Device No Data = FFh ? Embedded Erase Algorithm in progress Yes Erasure Completed Chip Erase Command Sequence (Address/Command): Individual Sector/Multiple Sector Erase Command Sequence (Address/Command): 555h/AAh 555h/AAh 2AAh/55h 2AAh/55h 555h/80h 555h/80h 555h/AAh 555h/AAh 2AAh/55h 2AAh/55h 555h/10h Sector Address/30h Sector Address/30h Additional sector erase commands are optional. Sector Address/30h Notes : • See “MBM29BS/FS12DH Command Definitions” in “■ DEVICE BUS OPERATION” for erase command sequence. • See the section on DQ3 for information on the sector erase timer. Figure 30 78 Embedded EraseTM Algorithm MBM29BS/FS12DH15 Start Read Byte (DQ7 to DQ0) Addr. = VA DQ7 = Data? Yes VA = Address for programming = Any of the sector addresses within the sector being erased during sector erase or multiple erases operation. = Any of the sector addresses within the sector not being protected during sector erase or multiple sector erases operation. No No DQ5 = 1? Yes Read Byte (DQ7 to DQ0) Addr. = VA DQ7 = Data? * Yes No Fail Pass * : DQ7 is rechecked even if DQ5 = “1” because DQ7 may change simultaneously with DQ5. Figure 31 Data Polling Algorithm 79 MBM29BS/FS12DH15 Start Read DQ 7 to DQ 0 Addr. = VA Read DQ 7 to DQ 0 Addr. = VA DQ 6 = Toggle? *1 *1 No Yes No VA = Bank address being executed Embedded Algorithm DQ 5 = 1? Yes Read DQ 7 to DQ 0 Addr. = VA Read DQ 7 to DQ 0 Addr. = VA DQ 6 = Toggle? *1,*2 *1,*2 No Yes Program/Erase Operation Not Complete, Write Reset Command Program/Erase Operation Complete *1 : Read toggle bit twice to determine whether it is toggling. *2 : Recheck toggle bit because it may stop toggling as DQ5 changes to “1”. Figure 32 80 Toggle Bit Algorithm MBM29BS/FS12DH15 FAST MODE ALGORITHM Start 555h/AAh Set Fast Mode 2AAh/55h 555h/20h XXXXh/A0h Program Address/Program Data Data Polling Device Verify Data? No In Fast Program Yes No Increment Address Last Address ? Yes Programming Completed XXXXh/90h Reset Fast Mode XXXXh/F0h Figure 33 Embedded Programming Algorithm for Fast Mode 81 MBM29BS/FS12DH15 ■ ORDERING INFORMATION Part No. Package Access Time(ns) MBM29BS/FS12DH15PBT 80-ball plastic FBGA (BGA-80P-M04) 15 MBM29BS/FS12 D H 15 Remarks PBT PACKAGE TYPE PBT = 80-Ball Fine Pitch Ball Grid Array Package (FBGA) SPEED OPTION See Product Selector Guide DEVICE REVISION Boot Sector Architecture D = Dual Boot Type DEVICE NUMBER/DESCRIPTION MBM29BS12 128 Mega-bit (8M × 16-Bit) Burst Mode Flash Memory 1.8 V-only Read, Write, and Erase with Non-Handshake MBM29FS12 128 Mega-bit (8M × 16-Bit) Burst Mode Flash Memory 1.8 V-only Read, Write, and Erase with Handshake 82 MBM29BS/FS12DH15 ■ PACKAGE DIMENSIONS 80-ball plastic FBGA (BGA-80P-M04) +0.12 11.00±0.10(.433±.004) 1.08 –0.13 +.005 B (Mounting height) .043 –.005 0.40(.016) REF 0.38±0.10 (Stand off) (.015±.004) 0.80(.031) REF 8 7 6 5 4 3 2 1 A 8.00±0.10 (.315±.004) 0.10(.004) S (INDEX AREA) S M L K J H G F E D C B A (INDEX AREA) 80-ø0.45±0.05 (80-ø.018±.002) C 0.08(.003) M S A B 2003 FUJITSU LIMITED B80004S-c-1-1 Dimensions in mm (inches) Note : The values in parentheses are reference values. 83 MBM29BS/FS12DH15 FUJITSU LIMITED All Rights Reserved. The contents of this document are subject to change without notice. Customers are advised to consult with FUJITSU sales representatives before ordering. The information, such as descriptions of function and application circuit examples, in this document are presented solely for the purpose of reference to show examples of operations and uses of Fujitsu semiconductor device; Fujitsu does not warrant proper operation of the device with respect to use based on such information. When you develop equipment incorporating the device based on such information, you must assume any responsibility arising out of such use of the information. Fujitsu assumes no liability for any damages whatsoever arising out of the use of the information. Any information in this document, including descriptions of function and schematic diagrams, shall not be construed as license of the use or exercise of any intellectual property right, such as patent right or copyright, or any other right of Fujitsu or any third party or does Fujitsu warrant non-infringement of any third-party’s intellectual property right or other right by using such information. Fujitsu assumes no liability for any infringement of the intellectual property rights or other rights of third parties which would result from the use of information contained herein. The products described in this document are designed, developed and manufactured as contemplated for general use, including without limitation, ordinary industrial use, general office use, personal use, and household use, but are not designed, developed and manufactured as contemplated (1) for use accompanying fatal risks or dangers that, unless extremely high safety is secured, could have a serious effect to the public, and could lead directly to death, personal injury, severe physical damage or other loss (i.e., nuclear reaction control in nuclear facility, aircraft flight control, air traffic control, mass transport control, medical life support system, missile launch control in weapon system), or (2) for use requiring extremely high reliability (i.e., submersible repeater and artificial satellite). Please note that Fujitsu will not be liable against you and/or any third party for any claims or damages arising in connection with above-mentioned uses of the products. Any semiconductor devices have an inherent chance of failure. You must protect against injury, damage or loss from such failures by incorporating safety design measures into your facility and equipment such as redundancy, fire protection, and prevention of over-current levels and other abnormal operating conditions. If any products described in this document represent goods or technologies subject to certain restrictions on export under the Foreign Exchange and Foreign Trade Law of Japan, the prior authorization by Japanese government will be required for export of those products from Japan. F0312 FUJITSU LIMITED Printed in Japan