![]() |
|
If you can't view the Datasheet, Please click here to try to view without PDF Reader . |
|
Datasheet File OCR Text: |
ds-25sf081a?045b?5/2014 features ? single 2.5v - 3.6v supply ? serial peripheral inte rface (spi) compatible ? supports spi modes 0 and 3 ? supports dual and quad output read ? 104mhz maximum operating frequency ? clock-to-output (t v ) of 6 ns ? flexible, optimized erase architecture for code + data storage applications ? uniform 4-kbyte block erase ? uniform 32-kbyte block erase ? uniform 64-kbyte block erase ? full chip erase ? hardware controlled locking of protected blocks via wp pin ? 3 protected programmable security register pages ? flexible programming ? byte/page program (1 to 256 bytes) ? fast program and erase times ? 0.7ms typical page program (256 bytes) time ? 70ms typical 4-kbyte block erase time ? 300ms typical 32-kbyte block erase time ? 600ms typical 64-kbyte block erase time ? jedec standard manufacturer and device id read methodology ? low power dissipation ? 2a deep power-down current (typical) ? 10a standby current (typical) ? 4ma active read current (typical) ? endurance: 100,000 pr ogram/erase cycles ? data retention: 20 years ? complies with full industrial temperature range ? industry standard green (pb/halide-fr ee/rohs compliant) package options ? 8-lead soic (150-mil and 208-mil) ? 8-pad ultra thin dfn (5 x 6 x 0.6 mm and 2 x 3 x 0.6 mm ) (1) ? 8-lead tssop (4 x 4 mm) (1) 1. tssop and dfn packages are not currently in pr oduction. package outline di mensions are subject ? to change. at25sf081 8-mbit, 2.5v minimum spi serial flash memory with dual-i/o and quad-io support preliminary datasheet
2 at25sf081 ds-25sf081a?045b?5/2014 description the adesto ? at25sf081 is a serial interface flash memory device designed for use in a wide variety of high-volume consumer based applications in which program code is s hadowed from flash memory into embedded or external ram for execution. the flexible erase architecture of the at25 sf081 is ideal for data storage as well, eliminating the need for additional data storage devices. the erase block sizes of the at25sf081 have been optimized to meet the needs of today's code and data storage applications. by optimizing the size of the erase blocks, the memory space can be used much more efficiently. because certain code modules and data storage segments must reside by themselves in their own erase regions, the wasted and unused memory space that occurs with large block erase flash memory devices can be greatly reduced. this increased memory space efficiency allows additional code routines and data storage segments to be added while still maintaining the same overall device density. the device also contains three pages of security regist er that can be used for purposes such as unique device serialization, system-level electronic serial number (esn) storage, locked key storage, etc. these security register pages can be individually locked. 1. pin descriptions and pinouts table 1-1. pin descriptions symbol name and function asserted state type cs chip select: asserting the cs pin selects the device. when the cs pin is deasserted, the device will be deselected and normally be placed in standby mode (not deep power-down mode), and the so pin will be in a high-impedanc e state. when the device is deselected, data will not be accepted on the si pin. a high-to-low transition on the cs pin is required to start an operation, and a low-to-high transition is required to end an operation. when ending an internally self-timed operation such as a program or erase cycle, the device will not enter the standby mode until the completion of the operation. low input sck serial clock: this pin is used to provide a clock to the device and is used to control the flow of data to and from the device. command , address, and input data present on the si pin is always latched in on the rising edge of sc k, while output data on the so pin is always clocked out on the falling edge of sck. - input si (i/o 0 ) serial input: the si pin is used to shift data into the device. the si pin is used for all data input including command and address sequences. data on the si pin is always latched in on the rising edge of sck. with the dual-output and quad- output read commands, the si pin becomes an output pin (i/o 0 ) in conjunction with other pins to allow two or four bits of data on (i/o 3-0 ) to be clocked in on every falling edge of sck to maintain consistency with the spi nomenclature, the si (i/o 0 ) pin will be referenced as the si pin unless specifically addressing the d ual-i/o and quad-i/o modes in which case it will be referenced as i/o 0 data present on the si pin will be ignored whenever the device is deselected (cs is deasserted). - input/output 3 at25sf081 ds-25sf081a?045b?5/2014 so (i/o 1 ) serial output: the so pin is used to shift data out from the device. data on the so pin is always clocked out on the falling edge of sck. with the dual-output read commands, the so pin remains an output pin (i/o 0 ) in conjunction with other pins to allow two bits of data on (i/o 1-0 ) to be clocked in on every falling edge of sck to maintain consistency with the spi nomenclature, the so (i/o 1 ) pin will be referenced as the so pin unless specifically addressing the dual-i/o modes in which case it will be referenced as i/o 1 the so pin will be in a high-impedance stat e whenever the device is deselected (cs is deasserted). - input/output wp (i/o 2 ) write protect: the wp pin controls the hardware locking feature of the device. please refer to ?program/erase suspend (75h)? on page 17 for more details on protection features and the wp pin. with the quad-input byte/p age program command, the wp pin becomes an input pin (i/o 2 ) and, along with other pins, al lows four bits (on i/o 3-0 ) of data to be clocked in on every rising edge of sck. with the quad-output read commands, the wp pin becomes an output pin (i/o 2 ) in conjunction with other pins to allow four bits of data on (i/o3 3-0 ) to be clocked in on every falling edge of sck. to maintain consistency with the spi nomenclature, the wp (i/o 2 ) pin will be referenced as the wp pin unless specifically addressing the quad-i/o modes in which case it will be referenced as i/o 2 the wp pin is internally pulled-high and may be le ft floating if hardware controlled protection will not be used. however, it is recommended that the wp pin also be externally connected to v cc whenever possible. - input/output hold (i/o 3 ) hold: the hold pin is used to temporarily pause serial communication without deselecting or resetting the device. while the hold pin is asserted, transitions on the sck pin and data on the si pin will be ignored, and the so pin will be in a high-impedance state. the cs pin must be asserted, and the sck pin must be in the low state in order for a hold condition to start. a hold condition pauses serial communication only and does not have an effect on internally self-timed operations such as a program or erase cycle. please refer to ?hold function? on page 31 for additional details on the hold operation. with the quad-input byte/page program command, the hold pin becomes an input pin (i/o 3 ) and, along with other pins, allows four bits (on i/o 3-0 ) of data to be clocked in on every rising edge of sck. with the qu ad-output read commands, the hold pin becomes an output pin (i/o 3 ) in conjunction with other pins to allow four bits of data on (i/o3 3-0 ) to be clocked in on every falling edge of sck. to maintain consistency with the spi nomenclature, the hold (i/o 3 ) pin will be referenced as the hold pin unless specifically addressing the quad-i/o modes in which case it will be referenced as i/o 3 the hold pin is internally pulled-high and may be left floating if the hold function will not be used. however, it is recommended that the hold pin also be externally connected to v cc whenever possible. - input/output v cc device power supply: the v cc pin is used to supply the source voltage to the device. operations at invalid v cc voltages may produce spurious results and should not be attempted. - power gnd ground: the ground reference for the power supply. gnd should be connected to the system ground. - power table 1-1. pin descriptions (continued) symbol name and function asserted state type 4 at25sf081 ds-25sf081a?045b?5/2014 2. block diagram figure 2-1. block diagram 3. memory array to provide the greatest flexibility, the memory array of the at25sf081 can be erased in four levels of granularity including a full chip erase. the size of the erase blocks is optimized for both code and data storage applications, allowing both code and data segments to reside in their own erase regions. the memory architecture diagram illustrates the breakdown of each erase level. figure 1-1. 8-soic, 8-tssop (top view) figure 1-2. 8-udfn (top view) 1 2 3 4 8 7 6 5 cs so wp gnd vcc hold sck si cs so wp gnd 1 2 3 4 8 7 6 5 vcc hold sck si flash memory array y-gating cs sck note: i/o 3-0 pin naming convention is used for dual-i/o and quad-i/o commands. so (i/o 1 ) si (i/o 0 ) y-decoder address latch x-decoder i/o buffers and latches control and protection logic sram data buffer wp (i/o 2 ) interface control and logic hold (i/o 3 ) 5 at25sf081 ds-25sf081a?045b?5/2014 figure 3-1. memory architecture diagram 64kb 32kb 4kb 1-256 byte 4kb 0fffffh ? 0ff000h 256 bytes 0fffffh ? 0fff00h 4kb 0fefffh ? 0fe000h 256 bytes 0ffeffh ? 0ffe00h 4kb 0fdfffh ? 0fd000h 256 bytes 0ffdffh ? 0ffd00h 4kb 0fcfffh ? 0fc000h 256 bytes 0ffcffh ? 0ffc00h 4kb 0fbfffh ? 0fb000h 256 bytes 0ffbffh ? 0ffb00h 4kb 0fafffh ? 0fa000h 256 bytes 0ffaffh ? 0ffa00h 4kb 0f9fffh ? 0f9000h 256 bytes 0ff9ffh ? 0ff900h 4kb 0f8fffh ? 0f8000h 256 bytes 0ff8ffh ? 0ff800h 4kb 0f7fffh ? 0f7000h 256 bytes 0ff7ffh ? 0ff700h 4kb 0f6fffh ? 0f6000h 256 bytes 0ff6ffh ? 0ff600h 4kb 0f5fffh ? 0f5000h 256 bytes 0ff5ffh ? 0ff500h 4kb 0f4fffh ? 0f4000h 256 bytes 0ff4ffh ? 0ff400h 4kb 0f3fffh ? 0f3000h 256 bytes 0ff3ffh ? 0ff300h 4kb 0f2fffh ? 0f2000h 256 bytes 0ff2ffh ? 0ff200h 4kb 0f1fffh ? 0f1000h 256 bytes 0ff1ffh ? 0ff100h 4kb 0f0fffh ? 0f0000h 256 bytes 0ff0ffh ? 0ff000h 4kb 0effffh ? 0ef000h 256 bytes 0fefffh ? 0fef00h 4kb 0eefffh ? 0ee000h 256 bytes 0feeffh ? 0fee00h 4kb 0edfffh ? 0ed000h 256 bytes 0fedffh ? 0fed00h 4kb 0ecfffh ? 0ec000h 256 bytes 0fecffh ? 0fec00h 4kb 0ebfffh ? 0eb000h 256 bytes 0febffh ? 0feb00h 4kb 0eafffh ? 0ea000h 256 bytes 0feaffh ? 0fea00h 4kb 0e9fffh ? 0e9000h 256 bytes 0fe9ffh ? 0fe900h 4kb 0e8fffh ? 0e8000h 256 bytes 0fe8ffh ? 0fe800h 4kb 0e7fffh ? 0e7000h 4kb 0e6fffh ? 0e6000h 4kb 0e5fffh ? 0e5000h 4kb 0e4fffh ? 0e4000h 256 bytes 0017ffh ? 001700h 4kb 0e3fffh ? 0e3000h 256 bytes 0016ffh ? 001600h 4kb 0e2fffh ? 0e2000h 256 bytes 0015ffh ? 001500h 4kb 0e1fffh ? 0e1000h 256 bytes 0014ffh ? 001400h 4kb 0e0fffh ? 0e0000h 256 bytes 0013ffh ? 001300h 256 bytes 0012ffh ? 001200h 256 bytes 0011ffh ? 001100h 256 bytes 0010ffh ? 001000h 4kb 00ffffh ? 00f000h 256 bytes 000fffh ? 000f00h 4kb 00efffh ? 00e000h 256 bytes 000effh ? 000e00h 4kb 00dfffh ? 00d000h 256 bytes 000dffh ? 000d00h 4kb 00cfffh ? 00c000h 256 bytes 000cffh ? 000c00h 4kb 00bfffh ? 00b000h 256 bytes 000bffh ? 000b00h 4kb 00afffh ? 00a000h 256 bytes 000affh ? 000a00h 4kb 009fffh ? 009000h 256 bytes 0009ffh ? 000900h 4kb 008fffh ? 008000h 256 bytes 0008ffh ? 000800h 4kb 007fffh ? 007000h 256 bytes 0007ffh ? 000700h 4kb 006fffh ? 006000h 256 bytes 0006ffh ? 000600h 4kb 005fffh ? 005000h 256 bytes 0005ffh ? 000500h 4kb 004fffh ? 004000h 256 bytes 0004ffh ? 000400h 4kb 003fffh ? 003000h 256 bytes 0003ffh ? 000300h 4kb 002fffh ? 002000h 256 bytes 0002ffh ? 000200h 4kb 001fffh ? 001000h 256 bytes 0001ffh ? 000100h 4kb 000fffh ? 000000h 256 bytes 0000ffh ? 000000h ? ? ? 64kb block erase detail page program detail page address block address 32kb 32kb range ? ? ? ? ? ? range 32kb 32kb ? ? ? 64kb 32kb 32kb 64kb 6 at25sf081 ds-25sf081a?045b?5/2014 4. device operation the at25sf081 is controlled by a set of instructions that are sent from a host controller, commonly referred to as the spi master. the spi master communicates with the at25sf081 via th e spi bus which is comprised of four signal lines: chip select ( cs ), serial clock (sck), serial input (si), and serial output (so). the spi protocol defines a total of four modes of operation (mode 0, 1, 2, or 3) with each mode differing in respect to the sck polarity and phase and how the polarity and phase control the flow of data on the spi bus. the at25sf081 supports the two most common modes, spi modes 0 and 3. the only difference between spi modes 0 and 3 is the polarity of the sck signal when in the inactive state (when the spi master is in standby mode and not transferring any data). with spi modes 0 and 3, data is always latched in on the rising edge of sck and always output on the falling edge of sck. figure 4-1. spi mode 0 and 3 4.1 dual output read the at25sf081 features a dual-output read mode that allow two bits of data to be clocked out of the device every clock cycle to improve throughput. to accomplish this, both the si and so pins are utilized as outputs for the transfer of data bytes. with the dual-output read array command, the si pin becomes an output along with the so pin. 4.2 quad output read the at25sf081 features a quad-output read mode that allow four bits of data to be clocked out of the device every clock cycle to improve throughput. to accomplish this, the si, so, wp , hold pins are utilized as outputs for the transfer of data bytes. with the quad-output read array command, the si, wp , hold pins become outputs along with the so pin. 5. commands and addressing a valid instruction or operation must always be started by first asserting the cs pin. after the cs pin has been asserted, the host controller must then clock out a valid 8-bit opcode on the spi bus. following the opcode, instruction dependent information such as address and data bytes would then be clocked out by the host controller. all opcode, address, and data bytes are transferred with the most-significant bit (msb) first. an operation is ended by deasserting the cs pin. opcodes not supported by the at25sf081 will be ignored by the device and no operation will be started. the device will continue to ignore any data presented on the si pin until the start of the next operation ( cs pin being deasserted and then reasserted). in addition, if the cs pin is deasserted before complete opcode and address information is sent to the device, then no operation will be performed and the device will simply return to the idle state and wait for the next operation. addressing of the device requires a total of three bytes of information to be sent, representing address bits a23-a0. since the upper address limit of the at25sf081 memory arra y is 0fffffh, address bits a 23-a19 are always ignored by the device. sck cs si so msb lsb msb lsb 7 at25sf081 ds-25sf081a?045b?5/2014 table 5-1. command listing command opcode clock frequency address bytes dummy bytes data bytes section link read commands read array 0bh 0000 1011 up to 85 mhz 3 1 1+ 6.1 03h 0000 0011 up to 50 mhz 3 0 1+ dual output read 3bh 0011 1011 up to 85 mhz 3 1 1+ 6.2 dual i/o read bbh 1011 1011 up to 85 mhz 3 0 1+ 6.3 quad output read 6bh 0110 1011 up to 85 mhz 3 1 1+ 6.4 quad i/o read ebh 1110 1011 up to 85 mhz 3 1 1+ 6.5 continuous read mode reset - dual ffffh 1111 1111 1111 1111 up to 104 mhz 0 0 0 6.6 continuous read mode reset - quad ffh 1111 1111 up to 104 mhz 0 0 0 6.6 program and erase commands block erase (4 kbytes) 20h 0010 0000 up to 104 mhz 3 0 0 7.2 block erase (32 kbytes) 52h 0101 0010 up to 104 mhz 3 0 0 block erase (64 kbytes) d8h 1101 1000 up to 104mhz 3 0 0 chip erase 60h 0110 0000 up to 104 mhz 0 0 0 7.3 c7h 1100 0111 up to 104 mhz 0 0 0 byte/page program (1 to 256 bytes) 02h 0000 0010 up to 104 mhz 3 0 1+ 7.1 protection commands write enable 06h 0000 0110 up to 104 mhz 0 0 0 8.1 write disable 04h 0000 0100 up to 104 mhz 0 0 0 8.2 security commands erase security register page 44h 0100 0100 up to 104 mhz 3 0 0 9.1 program security register page 42h 0100 0010 up to 104 mhz 3 0 1+ 9.2 read security register page 48h 0100 1000 up to 85mhz 3 1 1+ 9.3 status register commands read status register byte 1 05h 0000 0101 up to 104 mhz 0 0 1 10.1 read status register byte 2 35h 0011 0101 up to 104 mhz 0 0 1 write status register 01h 0000 0001 up to 104 mhz 0 0 1 or 2 10.2 write enable for volatile status register 50h 0101 0000 up to 104mhz 0 0 0 10.3 miscellaneous commands read manufacturer and device id 9fh 1001 1111 up to 104mhz 0 0 3 11.1 read id 90h 1001 0000 up to 104 mhz 3 0 2 11.2 8 at25sf081 ds-25sf081a?045b?5/2014 6. read commands 6.1 read array (0bh and 03h) the read array command can be used to sequentially read a continuous stream of data from the device by simply providing the clock signal once the initial starting address is specified. the device incorporates an internal address counter that automatically increments every clock cycle. two opcodes (0bh and 03h) can be used for the read array command. the use of each opcode depends on the maximum clock frequency that will be used to read data from the device. the 0bh opcode can be used at any clock frequency up to the maximum specified by f clk , and the 03h opcode can be used for lower frequency read operations up to the maximum specified by f rdlf . to perform the read array operation, the cs pin must first be asserted and the appropriate opcode (0bh or 03h) must be clocked into the device. after the opcode has been clocked in, the three address bytes must be clocked in to specify the starting address location of the first byte to read within the memory array. following the three address bytes, an additional dummy byte needs to be clocked into the device if the 0bh opcode is used for the read array operation. after the three address bytes (and the dummy byte if us ing opcode 0bh) have been clocked in, additional clock cycles will result in data being output on the so pin. the data is always output with the msb of a byte first. when the last byte (0fffffh) of the memory array has been read, the device will continue reading back at the beginning of the array (000000h). no delays will be incurred when wrapping around from the end of the array to the beginning of the array. deasserting the cs pin will terminate the read operation and put the so pin into high-impedance state. the cs pin can be deasserted at any time and does not require a full byte of data be read. figure 6-1. read array - 03h opcode deep power-down b9h 1011 1001 up to 104 mhz 0 0 0 11.3 resume from deep power-down abh 1010 1011 up to 104 mhz 0 0 0 11.4 resume from deep power-down and read id abh 1010 1011 up to 104 mhz 0 3 1 11.4 table 5-1. command listing command opcode clock frequency address bytes dummy bytes data bytes section link 6 & |