AT25FF041A-DWF [DIALOG]
4 Mbit, 1.65 V - 3.6 V Range SPI Serial Flash Memory with Multi-I/O Support;型号: | AT25FF041A-DWF |
厂家: | Dialog Semiconductor |
描述: | 4 Mbit, 1.65 V - 3.6 V Range SPI Serial Flash Memory with Multi-I/O Support |
文件: | 总121页 (文件大小:1576K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Key Features
Voltage Range: 1.65 V - 3.6 V
4 Mbit (2M x 2) Flash Memory
Serial Peripheral Interface (SPI) compatible
Supports SPI modes 0 and 3 (1-1-1)
Supports dual output operation (1-1-2)
Supports quad output operation (1-1-4)
Supports quad I/O operation (1-4-4)
Supports XiP operation (1-4-4, 0-4-4)
133 MHz maximum operating frequency
Clock-to-output of 8 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
Flexible non-volatile block protection
1 x 128-byte factory-programmed unique identifier
3 x 128-byte, One Time Programmable (OTP) security registers
Flexible programming
Byte/Page program (1 to 256 Bytes)
Sequential program mode capability
Erase program suspend resume
Software controlled Reset and Terminate commands
Hardware reset option (via HOLD pin)
JEDEC hardware reset
Non-volatile status register configuration option
JEDEC standard manufacturer and device ID read methodology
Serial Flash Discoverable Parameters (SFDP) version 1.6
Low power dissipation
30 µA standby current (typical)
8.5 µA Deep Power-Down (DPD) current (typical)
7 nA Ultra Deep Power Down (UDPD) current (typical)
8.5 mA active read current (1-1-1 — 104 MHz)
8.5 mA program current
9.6 mA erase current
User configurable and auto I/O pin drive levels
Endurance :100,000 program/erase cycles
Data Retention: 20 years
Temperature Range: -40 oC to +85 oC
Industry standard green (Pb/Halide-free/RoHS Compliant) Package Options
8-lead SOIC (150-mil)
8-lead SOIC (208-mil)
8-pad Ultra-thin DFN (2 x 3 x 0.6 mm)
8-ball WLCSP (3 x 2 x 3 ball matrix)
Die in Wafer Form (DWF)
Datasheet
5-Aug-2021
Revision F
1
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Contents
Key Features............................................................................................................................................................................. 1
Contents.................................................................................................................................................................................... 2
Figures ...................................................................................................................................................................................... 7
Tables........................................................................................................................................................................................ 8
1 Product Overview ................................................................................................................................................................. 9
2 Package Pinouts ................................................................................................................................................................ 10
3 Block Diagram .................................................................................................................................................................... 11
4 Pin Descriptions ................................................................................................................................................................. 12
5 Device Operation ................................................................................................................................................................ 14
5.1 Data Transfer Modes ...............................................................................................................................................14
5.2 Standard SPI Operation ...........................................................................................................................................14
5.2.1 Command Only, No Address or Data (1-0-0) ............................................................................................. 15
5.2.2 Command and Address Only, No Data (1-1-0) .......................................................................................... 15
5.2.3 Command and Data Only, No Address (1-0-1) .......................................................................................... 16
5.2.4 Command, Address, and Data (1-1-1) ....................................................................................................... 17
5.3 Dual Output Operation (1-1-2) .................................................................................................................................19
5.4 Quad Output Operation (1-1-4) ................................................................................................................................20
5.5 Quad I/O Operation (1-4-4) ......................................................................................................................................22
5.6 XiP Mode Operation .................................................................................................................................................23
5.7 Memory Architecture ................................................................................................................................................26
5.8 Memory Protection ...................................................................................................................................................29
5.8.1 Standard Memory Protection ..................................................................................................................... 29
5.8.2 Individual Block Lock and Unlock ............................................................................................................... 32
5.8.3 Global Block Lock and Unlock ................................................................................................................... 32
5.8.4 Reading the State of the Lock Bits ............................................................................................................. 32
5.9 Power Down Considerations ....................................................................................................................................32
5.9.1 Entering Power Down Mode ...................................................................................................................... 33
5.9.2 Exiting Power Down Mode ......................................................................................................................... 33
5.9.3 Reset During Program and Erase Commands ........................................................................................... 34
5.10 Erase/Program Suspend Considerations and Nested Operations .........................................................................34
5.10.1 Nested Operations ................................................................................................................................... 35
5.10.2 Program and Erase Errors ....................................................................................................................... 37
5.10.3 Suspending and Terminating a Program or Erase Operation .................................................................. 38
5.10.4 Terminating a Non-Volatile Operation in Progress ................................................................................... 39
5.11 OTP Security Register Lock ...................................................................................................................................40
5.12 Standard JEDEC Hardware Reset .........................................................................................................................40
5.13 Chip Select Restrictions .........................................................................................................................................41
5.14 HOLD / RESET Function .......................................................................................................................................42
6 Status Registers ................................................................................................................................................................. 43
6.1 Register Structure and Updates ...............................................................................................................................43
6.2 Register Accesses ...................................................................................................................................................44
6.2.1 Direct and Indirect Addressing ................................................................................................................... 44
6.2.2 Volatile and Non-Volatile Register Accesses ............................................................................................. 45
6.3 Status Register 1 .....................................................................................................................................................45
6.4 Status Register 2 .....................................................................................................................................................47
6.5 Status Register 3 .....................................................................................................................................................50
6.6 Status Register 4 .....................................................................................................................................................51
6.7 Status Register 5 ....................................................................................................................................................53
7 Commands and Addressing .............................................................................................................................................. 54
7.1 Read Array (03h, 0Bh) .............................................................................................................................................57
7.1.1 Transfer Format ......................................................................................................................................... 57
7.1.2 Transfer Sequence ..................................................................................................................................... 57
Datasheet
5-Aug-2021
Revision F
2
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.2 Dual Output Read Array (3Bh) .................................................................................................................................58
7.2.1 Transfer Format ......................................................................................................................................... 58
7.2.2 Transfer Sequence ..................................................................................................................................... 58
7.3 Quad Output Read Array (6Bh) ...............................................................................................................................58
7.3.1 Transfer Format ......................................................................................................................................... 58
7.3.2 Transfer Sequence ..................................................................................................................................... 59
7.4 XiP Read (EBh), XiP Read with Double-word Aligned Address (E7h) .....................................................................60
7.4.1 Transfer Format ......................................................................................................................................... 60
7.4.2 Mode Bits ................................................................................................................................................... 60
7.4.3 Transfer Sequence — Initial Transfer ........................................................................................................ 60
7.4.4 Transfer Sequence — Subsequent Transfers ............................................................................................ 61
7.4.5 Programmable Number of Dummy Clocks ................................................................................................. 61
7.5 Block Erase (20h, 52h, D8h) ....................................................................................................................................63
7.5.1 Command Prerequisites ............................................................................................................................. 63
7.5.2 Transfer Format ......................................................................................................................................... 63
7.5.3 Transfer Sequence ..................................................................................................................................... 63
7.5.4 Erase Operation ......................................................................................................................................... 64
7.5.5 Command Status ....................................................................................................................................... 64
7.5.6 Programming Restrictions .......................................................................................................................... 64
7.5.7 Error Reporting ........................................................................................................................................... 64
7.6 Chip Erase (60h, C7h) .............................................................................................................................................64
7.6.1 Command Prerequisites ............................................................................................................................. 64
7.6.2 Transfer Format ......................................................................................................................................... 64
7.6.3 Transfer Sequence ..................................................................................................................................... 65
7.6.4 Device Status ............................................................................................................................................. 65
7.6.5 Programming Restrictions .......................................................................................................................... 65
7.6.6 Error Reporting ........................................................................................................................................... 65
7.7 Byte/Page Program (02h) ........................................................................................................................................66
7.7.1 Command Prerequisites ............................................................................................................................. 66
7.7.2 Transfer Format ......................................................................................................................................... 66
7.7.3 Transfer Sequence ..................................................................................................................................... 66
7.7.4 Device Status ............................................................................................................................................. 66
7.7.5 Programming Restrictions .......................................................................................................................... 66
7.8 Sequential Program Mode (ADh/AFh) .....................................................................................................................67
7.8.1 Command Prerequisites ............................................................................................................................. 67
7.8.2 Transfer Format ......................................................................................................................................... 67
7.8.3 Transfer Sequence — Initial Transfer ........................................................................................................ 67
7.8.4 Transfer Sequence — Subsequent Transfers ............................................................................................ 68
7.8.5 Program Status .......................................................................................................................................... 68
7.8.6 Commands Allowed and Not Allowed in Sequential Program Mode .......................................................... 68
7.8.7 Programming Restrictions .......................................................................................................................... 69
7.8.8 Error Reporting ........................................................................................................................................... 70
7.9 Dual Output Byte/Page Program (A2h) ....................................................................................................................71
7.9.1 Command Prerequisites ............................................................................................................................. 71
7.9.2 Transfer Format ......................................................................................................................................... 71
7.9.3 Transfer Sequence ..................................................................................................................................... 71
7.9.4 Program Status .......................................................................................................................................... 71
7.9.5 Programming Restrictions .......................................................................................................................... 72
7.9.6 Error Reporting ........................................................................................................................................... 72
7.10 Quad Output Page Program (32h) .........................................................................................................................73
7.10.1 Command Prerequisites ........................................................................................................................... 73
7.10.2 Transfer Format ....................................................................................................................................... 73
7.10.3 Transfer Sequence ................................................................................................................................... 73
7.10.4 Programming Restrictions ........................................................................................................................ 73
7.10.5 Error Reporting ......................................................................................................................................... 74
Datasheet
5-Aug-2021
Revision F
3
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.11 Program/Erase Suspend (75h/B0h) .......................................................................................................................74
7.11.1 Transfer Format ....................................................................................................................................... 74
7.11.2 Transfer Sequence ................................................................................................................................... 74
7.11.3 Command Behavior During a Program/Erase Operation ......................................................................... 74
7.11.4 Device Status ........................................................................................................................................... 76
7.11.5 Programming Restrictions ........................................................................................................................ 76
7.12 Program/Erase Resume (7Ah/D0h) .......................................................................................................................77
7.12.1 Command Prerequisites ........................................................................................................................... 77
7.12.2 Transfer Format ....................................................................................................................................... 77
7.12.3 Transfer Sequence ................................................................................................................................... 77
7.12.4 Command Behavior ................................................................................................................................. 77
7.12.5 Programming Restrictions ........................................................................................................................ 77
7.13 Set Burst Wrap (77h) .............................................................................................................................................78
7.13.1 Transfer Format ....................................................................................................................................... 78
7.13.2 Transfer Sequence ................................................................................................................................... 78
7.13.3 Wrap Bits .................................................................................................................................................. 78
7.13.4 Programming Restrictions ........................................................................................................................ 79
7.14 Write Enable (06h) .................................................................................................................................................79
7.14.1 Transfer Format ....................................................................................................................................... 79
7.14.2 Transfer Sequence ................................................................................................................................... 79
7.14.3 Programming Restrictions ........................................................................................................................ 79
7.15 Write Disable (04h) ................................................................................................................................................80
7.15.1 Transfer Format ....................................................................................................................................... 80
7.15.2 Transfer Sequence ................................................................................................................................... 80
7.15.3 Programming Restrictions ........................................................................................................................ 80
7.16 Volatile Status Register Write Enable (50h) ...........................................................................................................81
7.16.1 Transfer Format ....................................................................................................................................... 81
7.16.2 Transfer Sequence ................................................................................................................................... 81
7.16.3 Programming Restrictions ........................................................................................................................ 81
7.17 Individual Block Lock (36h) ....................................................................................................................................82
7.17.1 Command Prerequisites ........................................................................................................................... 82
7.17.2 Transfer Format ....................................................................................................................................... 82
7.17.3 Transfer Sequence ................................................................................................................................... 82
7.17.4 Programming Restrictions ........................................................................................................................ 82
7.18 Individual Block Unlock (39h) .................................................................................................................................83
7.18.1 Command Prerequisites ........................................................................................................................... 83
7.18.2 Transfer Format ....................................................................................................................................... 83
7.18.3 Transfer Sequence ................................................................................................................................... 83
7.18.4 Programming Restrictions ........................................................................................................................ 83
7.19 Read Block Lock (3Ch/3Dh) ..................................................................................................................................84
7.19.1 Command Prerequisites ........................................................................................................................... 84
7.19.2 Transfer Format ....................................................................................................................................... 84
7.19.3 Transfer Sequence ................................................................................................................................... 84
7.19.4 Programming Restrictions ........................................................................................................................ 84
7.20 Global Block Lock (7Eh) ........................................................................................................................................85
7.20.1 Command Prerequisites ........................................................................................................................... 85
7.20.2 Transfer Format ....................................................................................................................................... 85
7.20.3 Transfer Sequence ................................................................................................................................... 85
7.20.4 Programming Restrictions ........................................................................................................................ 85
7.21 Global Block Unlock (98h) .....................................................................................................................................86
7.21.1 Command Prerequisites ........................................................................................................................... 86
7.21.2 Transfer Format ....................................................................................................................................... 86
7.21.3 Transfer Sequence ................................................................................................................................... 86
7.21.4 Programming Restrictions ........................................................................................................................ 86
Datasheet
5-Aug-2021
Revision F
4
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.22 Program Security Register (9Bh) ...........................................................................................................................87
7.22.1 Command Prerequisites ........................................................................................................................... 87
7.22.2 OTP Security Register Layout .................................................................................................................. 87
7.22.3 Transfer Format ....................................................................................................................................... 87
7.22.4 Transfer Sequence ................................................................................................................................... 87
7.22.5 Addressing the OTP Security Registers ................................................................................................... 88
7.22.6 Programming Status ................................................................................................................................ 88
7.22.7 Locking OTP Registers 1 - 3 .................................................................................................................... 88
7.22.8 Verifying the Locked Status of a Security Register .................................................................................. 89
7.22.9 Programming Restrictions ........................................................................................................................ 89
7.23 Read OTP Security Register (4Bh) ........................................................................................................................90
7.23.1 Transfer Format ....................................................................................................................................... 90
7.23.2 Transfer Sequence — Single Register ..................................................................................................... 90
7.23.3 Transfer Sequence — All Registers ......................................................................................................... 90
7.24 Read Status Registers 1 - 3 (05h, 35h, 15h) .........................................................................................................90
7.24.1 Transfer Format ....................................................................................................................................... 90
7.24.2 Transfer Sequence ................................................................................................................................... 91
7.25 Read Status Registers (65h) ..................................................................................................................................91
7.25.1 Transfer Format ....................................................................................................................................... 91
7.25.2 Transfer Sequence ................................................................................................................................... 91
7.25.3 Reading a Single Status Register ............................................................................................................ 92
7.25.4 Continuous Read of All Status Registers ................................................................................................. 92
7.25.5 Transfer Diagram ..................................................................................................................................... 92
7.25.6 Programming Restrictions ........................................................................................................................ 93
7.26 Write Status Registers 1 - 3 — Direct (01h, 31h, 11h) ...........................................................................................93
7.26.1 Command Prerequisites ........................................................................................................................... 93
7.26.2 Transfer Format ....................................................................................................................................... 93
7.26.3 Transfer Sequence ................................................................................................................................... 93
7.26.4 Programming Restrictions ........................................................................................................................ 93
7.27 Write Status Registers — Indirect (71h) .................................................................................................................94
7.27.1 Command Prerequisites ........................................................................................................................... 94
7.27.2 Transfer Format ....................................................................................................................................... 94
7.27.3 Transfer Sequence ................................................................................................................................... 94
7.27.4 Writing to a Status Register ..................................................................................................................... 94
7.27.5 Transfer Diagram ..................................................................................................................................... 95
7.27.6 Programming Restrictions ........................................................................................................................ 95
7.28 Status Register Lock (6Fh) ....................................................................................................................................96
7.28.1 Command Prerequisites ........................................................................................................................... 96
7.28.2 Transfer Format ....................................................................................................................................... 96
7.28.3 Transfer Sequence ................................................................................................................................... 96
7.28.4 Transfer Diagram ..................................................................................................................................... 96
7.28.5 Programming Restrictions ........................................................................................................................ 96
7.29 Deep Power Down (B9h) .......................................................................................................................................97
7.29.1 Transfer Format ....................................................................................................................................... 97
7.29.2 Transfer Sequence ................................................................................................................................... 97
7.29.3 Programming Restrictions ........................................................................................................................ 97
7.30 Resume from Ultra-Deep Power Down / Deep Power Down with Device ID (ABh) ...............................................98
7.30.1 Command Options ................................................................................................................................... 98
7.30.2 Transfer Format — Resume from Deep Power Down ............................................................................. 98
7.30.3 Transfer Format — Resume from Deep Power Down and Obtain Device ID .......................................... 98
7.30.4 Transfer Sequence — Resume from Deep Power Down ......................................................................... 98
7.30.5 Transfer Sequence — Resume from Deep Power Down and Obtain Device ID ..................................... 98
7.30.6 Transfer Sequence — Resume from Ultra-Deep Power Down ................................................................ 99
7.30.7 Programming Restrictions ........................................................................................................................ 99
Datasheet
5-Aug-2021
Revision F
5
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.31 Ultra-Deep Power Down (79h) .............................................................................................................................100
7.31.1 Transfer Format ..................................................................................................................................... 100
7.31.2 Transfer Sequence ................................................................................................................................. 100
7.31.3 Programming Restrictions ...................................................................................................................... 100
7.32 Enable Reset (66h) and Reset Device (99h) .......................................................................................................101
7.32.1 Transfer Format ..................................................................................................................................... 101
7.32.2 Transfer Sequence ................................................................................................................................. 101
7.32.3 Programming Restrictions ...................................................................................................................... 101
7.33 Terminate (F0h) ...................................................................................................................................................102
7.33.1 Command Prerequisites ......................................................................................................................... 102
7.33.2 Transfer Format ..................................................................................................................................... 102
7.33.3 Transfer Sequence ................................................................................................................................. 102
7.33.4 Programming Restrictions ...................................................................................................................... 102
7.34 Read Manufacturer/Device ID (90h) ....................................................................................................................103
7.34.1 Transfer Format ..................................................................................................................................... 103
7.34.2 Transfer Sequence ................................................................................................................................. 103
7.35 Quad I/O Read Manufacturer/Device ID (94h) .....................................................................................................103
7.35.1 Transfer Format ..................................................................................................................................... 103
7.35.2 Transfer Sequence ................................................................................................................................. 103
7.36 Read JEDEC ID (9Fh) .........................................................................................................................................104
7.36.1 Transfer Format ..................................................................................................................................... 104
7.36.2 Transfer Sequence ................................................................................................................................. 104
7.36.3 Transfer Diagram ................................................................................................................................... 105
7.37 Serial Flash Discoverable Parameters (5Ah) .......................................................................................................106
7.37.1 Transfer Format ..................................................................................................................................... 106
7.37.2 Transfer Sequence ................................................................................................................................. 106
7.37.3 Programming Restrictions ...................................................................................................................... 106
7.37.4 SFDP Organization ................................................................................................................................ 106
8 Electrical Specifications .................................................................................................................................................. 107
8.1 Absolute Maximum Ratings ...................................................................................................................................107
8.2 DC and AC Operating Range ................................................................................................................................107
8.3 DC Characteristics .................................................................................................................................................107
8.4 AC Characteristics - Maximum Clock Frequencies ................................................................................................108
8.5 AC Characteristics – All Other Parameters ............................................................................................................109
8.6 Program and Erase Characteristics .......................................................................................................................110
8.7 Power On Timing ...................................................................................................................................................111
8.8 AC Timing Diagrams ..............................................................................................................................................112
9 Ordering Information ....................................................................................................................................................... 114
10 Packaging Information ................................................................................................................................................... 115
10.1 8S1 – JEDEC SOIC .............................................................................................................................................116
10.2 8S2 – 8-lead EIAJ SOIC ......................................................................................................................................117
10.3 8MA3 – 2 x 3 UDFN .............................................................................................................................................118
10.4 8-WLCSP — 8-ball 3 x 2 x 3 WLCSP ..................................................................................................................119
11 Revision History ............................................................................................................................................................. 120
Datasheet
5-Aug-2021
Revision F
6
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Figures
Figure 1: Dialog Semiconductor Memory Package Types ...................................................................................................... 10
Figure 2: Block Diagram.......................................................................................................................................................... 11
Figure 3: SPI Transfer — Command Only .............................................................................................................................. 15
Figure 4: SPI Transfer — Command and Address Only ......................................................................................................... 15
Figure 5: SPI Transfer — Command and Data Only — Read Operation................................................................................ 16
Figure 6: SPI Transfer — Command and Data Only — Write Operation................................................................................ 16
Figure 7: SPI Transfer — Command, Address, and Data — Read Operation with No Dummy Bytes.................................... 17
Figure 8: SPI Transfer — Command, Address, and Data — Read Operation with Dummy Bytes ......................................... 17
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation ........................................................................ 18
Figure 10: Dual Output Read — 1-Pin Command, 1-Pin Address, and 2-Pin Data ................................................................ 19
Figure 11: Dual Output Write — 1-Pin Command, 1-Pin Address, and 2-Pin Data ................................................................ 19
Figure 12: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Read Operation........................... 20
Figure 13: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Write Operation ........................... 21
Figure 14: Quad I/O Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Read Operation................................. 22
Figure 15: XiP Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Initial Read (M[5:4] = 2’b10)....................... 23
Figure 16: XiP Transfer — 4-Pin Address, and 4-Pin Data — Subsequent Reads (M[5:4] = 2’b10) ...................................... 24
Figure 17: XiP Transfer — Command, 4-Pin Address, and 4-Pin Data — Write Operation.................................................... 25
Figure 18: Flow Diagram of Nested Operations Example....................................................................................................... 36
Figure 19: Issuing a Terminate Command Before the Suspend Command has Completed .................................................. 39
Figure 20: Allowing Enough Time for the Suspend Operation to Complete............................................................................ 39
Figure 21: OTP Security Register Program and Lock............................................................................................................. 40
Figure 22: JEDEC Standard Hardware Reset......................................................................................................................... 41
Figure 23: AT25FF041A Register Structure............................................................................................................................ 43
Figure 24: Status Register Read Operation Showing 8-bit Address Field .............................................................................. 92
Figure 25: Status Register Write Operation Showing 8-bit Address Field............................................................................... 95
Figure 26: Status Register Lock Operation with Two Verification Bytes ................................................................................. 96
Figure 27: Resume from Deep Power Down or Ultra-Deep Power Down............................................................................... 99
Figure 28: Entering Ultra-Deep Power Down State............................................................................................................... 100
Figure 29: Enable Reset and Reset Command Sequence (SPI Mode) ................................................................................ 101
Figure 30: Read JEDEC ID ................................................................................................................................................... 105
Figure 31: AC Timing During Device Power Up.................................................................................................................... 111
Figure 32: AC Power-up Timing After a Brown-Out .............................................................................................................. 112
Figure 33: Serial Input Timing............................................................................................................................................... 112
Figure 34: Serial Output Timing ............................................................................................................................................ 112
Figure 35: WP Timing for Write Status Register Command.................................................................................................. 113
Figure 36: HOLD Timing – Serial Input ................................................................................................................................. 113
Figure 37: HOLD Timing – Serial Output .............................................................................................................................. 113
Datasheet
5-Aug-2021
Revision F
7
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Tables
Table 1: Pin Descriptions .........................................................................................................................................................12
Table 2: Bus Transfer Types....................................................................................................................................................14
Table 3: AT25FF041A Device Block Memory Map .................................................................................................................27
Table 4: AT25FF041A Device Block Memory Map — Page Program .....................................................................................28
Table 5: AT25FF041A Device Block Protection Map — CMPRT = 0, WPS = 0 ......................................................................30
Table 6: AT25FF041A Device Block Protection Map — CMPRT = 1, WPS = 0 ......................................................................31
Table 7: Entering DPD or UDPD Mode....................................................................................................................................33
Table 8: Exiting DPD or UDPD Mode.......................................................................................................................................33
Table 9: Resetting the Device During a Program or Erase Operation .....................................................................................34
Table 10: Encoding of Erase/Program Suspend Operations ...................................................................................................35
Table 11: Command Errors and Their Effect on the EE and PE Bits.......................................................................................37
Table 12: Indirect Addressing of Status Registers ...................................................................................................................44
Table 13: Status Register 1 Format .........................................................................................................................................45
Table 14: Status Register 2 Format .........................................................................................................................................47
Table 15: Status Register Protection During Normal Operation...............................................................................................49
Table 16: Status Register Protection During Reset..................................................................................................................49
Table 17: Status Register 3 Format .........................................................................................................................................50
Table 18: Status Register 4 Format .........................................................................................................................................51
Table 19: Status Register 5 Format .........................................................................................................................................53
Table 20: Command Listing .....................................................................................................................................................54
Table 21: Frequency and Number of Dummy Clocks Based on Command Type in Non-Wrap Mode (default) ......................62
Table 22: Frequency and Number of Dummy Clocks Based on Command Type in Wrap Mode (77h)...................................63
Table 23: Command Behavior During Sequential Programming Mode ...................................................................................69
Table 24: Command Behavior During Program/Erase or Program/Erase Suspend Operations..............................................75
Table 25: Encoding of Burst Wrap Bits ....................................................................................................................................78
Table 26: OTP Security Register 0 Bit Assignments................................................................................................................87
Table 27: OTP Security Register 1 Bit Assignments................................................................................................................87
Table 28: OTP Security Register 2 Bit Assignments................................................................................................................87
Table 29: OTP Security Register 3 Bit Assignments................................................................................................................87
Table 30: OTP Security Register Addressing...........................................................................................................................88
Table 31: Indirect Addressing of the Status Registers .............................................................................................................91
Table 32: Indirect Status Register Read Sequence.................................................................................................................92
Table 33: Indirect Addressing of the Status Registers .............................................................................................................94
Table 34: Indirect Status Register Write Sequence .................................................................................................................95
Table 35: Options for Exiting DPD and UDPD Modes .............................................................................................................98
Table 36: Manufacturer and Device ID Details.......................................................................................................................105
Table 37: Device ID Part 4 Variants — EDI String Value.......................................................................................................105
Table 38: Power On Timing Requirements ............................................................................................................................111
Table 39: Valid Ordering Codes.............................................................................................................................................114
Datasheet
5-Aug-2021
Revision F
8
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
1
Product Overview
The AT25FF041A is a serial interface Flash memory device designed for use in a wide variety of high-volume consumer and
connected applications. It is optimized for low-energy applications and can be operated using modern Lithium battery technologies
over a wide input voltage range of 1.65V - 3.6V.
The AT25FF041A is ideally suited for systems in which program code is shadowed from Flash memory into embedded or external
RAM (code shadow) for execution, and where small amounts of data are stored and updated locally in the Flash memory.
The erase block sizes of the AT25FF041A have been optimized to meet the needs of today's code and data storage applications.
The device supports 4 kilobyte (kB), 32 kB, and 64 kB block erase operations and a full-chip erase. By optimizing the size of the
erase blocks, the memory space can be used much more efficiently.
The device contains four specialized 128-byte One-Time Programmable (OTP) security registers that can be used to store a
unique device ID and locked key storage.
Specifically designed for use in a wide variety of systems, the AT25FF041A supports read, program, and erase operations. No
separate voltage is required for programming and erasing.
Throughout this document, the term Multi-I/O is used generically to refer to all of the multiple I/O modes, including dual, quad,
and XiP.
Datasheet
5-Aug-2021
Revision F
9
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
2
Package Pinouts
Figure 1 shows the package pinouts for the following packages. Note that the Die in Wafer Form (DWF) option is not shown.
Top View
1
2
3
4
8
7
6
5
VCC
CS
HOLD/RESET (I/O3)
SO (I/O1)
8S1 8-lead SOIC Package (0.150”)
WP (I/O2)
GND
SCK
8S2 8-lead EIAJ SOIC Package (0.208”)
SI (I/O0)
Top View
1
8
7
6
5
VCC
CS
SO (I/O1)
WP (I/O2)
GND
2
3
4
HOLD/RESET (I/O3)
8MA3 8-pad 2 x 3 Ultra-Thin DFN Package
SCK
SI (I/O0)
Bottom View
VCC
CS
A3
A1
GND
B2
8-ball WLCSP Package
SO
C3
HOLD
C1
SI
D2
SCK
E1
WP
E3
Figure 1: Dialog Semiconductor Memory Package Types
Datasheet
5-Aug-2021
Revision F
10
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
3
Block Diagram
Figure 2 shows a block diagram of the AT25FF041A device. The Interface Control Logic block connects to external device through
a set of pins. The state of these pins is distributed Interface Control Logic block to other blocks as necessary. The design also
contains a 4 Mbit serial Flash memory array, a 256-byte SRAM buffer, and an I/O Interface Unit that operates depending on the
type of data transfer mode.
Serial Flash Memory Array
CS
SCK
256-byte SRAM Buffer
SI (I/O0)
Interface
SO (I/O1)
Control Logic
WP (I/O2)
SPI
Dual
Quad
HOLD/RESET (I/O3)
Figure 2: Block Diagram
Datasheet
5-Aug-2021
Revision F
11
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
4
Pin Descriptions
Table 1: Pin Descriptions
Asserted
State
Symbol
Name and Function
Type
CHIP SELECT: Asserting the CS pin selects the device. When the CS pin is deasserted,
the device is be deselected and normally be placed in standby mode (not Deep Power-
Down mode), and the SO pin is in a high-impedance state. When the device is deselect-
ed, data are not 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 does not enter the standby mode until the
completion of the operation.
CS
Low
Input
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 SCK, while output data on the SO pin
is always clocked out on the falling edge of SCK.
SCK
-
-
Input
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 Multi I/O Read commands, the SI pin becomes an output pin (I/O0) in conjunction
with other pins to allow either two or four bits of data on (I/O1:0 or I/O3:0) to be clocked
out on every falling edge of SCK.
Input/
Output
SI (I/O0)
Data present on the SI pin is ignored whenever the device is deselected (CS is deassert-
ed and the device is in the reset condition).
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 Multi I/O Read commands, the SO pin remains an output pin (I/O1) in conjunction
with other pins to allow either two or four bits of data on (I/O1:0 or I/O3:0) to be clocked
out on every falling edge of SCK.
Input/
Output
SO (I/O1)
-
The SO pin is in a high-impedance state whenever the device is deselected (CS is
deasserted and the device is in the reset condition).
WRITE PROTECT:The WPpin controls the hardware locking feature of the device. When
set, this bit prevents the Status Register from being written. This bit is used in conjunction
with other Status Register bits (CMPRT, BPSIZE, TB, and BP[2:0]) to provide hardware
protection of the memory array.
The WP pin is internally pulled-high and may be left floating if hardware controlled pro-
tection is not used. However, it is recommended that the WP pin also be externally
connected to VCC whenever possible.
Input/
Output
WP (I/O2)
Low
When the QE bit in Status Register 2 is set, enabling quad mode (Output or I/O), the WP
pin becomes bidirectional and functions as the IO2 pin used to transmit address and/or
data, depending on the transfer mode.
Datasheet
5-Aug-2021
Revision F
12
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 1: Pin Descriptions (continued)
Asserted
State
Symbol
Name and Function
Type
HOLD /RESET:TheHOLD pinisusedtotemporarilypauseserialcommunicationwithout
deselecting or resetting the device. While the HOLD pin is asserted, transitions on the
SCK pin and data on the SI pin are ignored and the SO pin is placed 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.
With the Quad Output Byte/Page Program command, the HOLD pin becomes an input
pin (I/O3) and, along with other pins, allows four bits (on I/O3-0) of data to be clocked in
on every rising edge of SCK. With the Quad-Output Read commands, the HOLD Pin
HOLD/RESET becomes an output pin (I/O3) in conjunction with other pins to allow four bits of data on
Input/
Output
Low
(I/O3)
(I/O33-0) to be clocked in on every falling edge of SCK.
To maintain consistency with the SPI nomenclature, the HOLD (I/O3) pin is referenced
as the HOLD pin unless specifically addressing the Quad Output mode in which case it
is referenced as I/O3.
The HOLD pin is internally pulled-high and may be left floating if the Hold function is not
used. However, it is recommended that the HOLD pin also be externally connected to
VCC whenever possible.
When the QE bit in the Status register is cleared, the IO3 pin can be configured either as
a HOLD pin or as a RESET pin depending on the state of the HOLD/RESETbit 7 in Status
Register 3. Note that when the QE bit is set, the HOLD or RESET function is not available
as this pin is used to transfer data.
DEVICE POWER SUPPLY: The VCC pin is used to supply the source voltage to the
device.
Operations at invalid VCC voltages may produce spurious results; do not attempt this.
VCC
-
-
Power
Power
GROUND: The ground reference for the power supply. Connect GND to the system
ground.
GND
Datasheet
5-Aug-2021
Revision F
13
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5
Device Operation
This section describes the various data transfer modes supported by the device, as well as other system operations.
5.1 DATA TRANSFER MODES
The JEDEC specification uses a numerical system to indicate the type of transfer for a given command. The nomenclature for
this system is defined as (x-y-z) to indicate the number of active pins used for the command (x), address (y), and data (z). For an
example, a designation of 1-1-2 indicates that one pin (SI) is used to transfer the command, one pin (SI) for the address, and two
pins (SI and SO) for the data. The AT25FF041A supports the following transfer types.
Table 2: Bus Transfer Types
Transfer
Type
Transfer
Name
Pin(s) Used for
Command
Pin(s) Used forAd-
dress
Pin(s) Used for
Data
Command
Address
Data
1-0-0
1-1-0
SPI
SPI
Yes
Yes
SI
SI
No
--
No
No
--
--
Yes
SI
SI (write)
SO (read)
1-0-1
1-1-1
SPI
SPI
Yes
Yes
SI
SI
No
--
Yes
Yes
SI (write)
SO (read)
Yes
SI
1-1-2
1-1-4
1-4-4
0-4-4
Dual Output
Quad Output
Quad I/O
XiP
Yes
Yes
Yes
No
SI
SI
SI
--
Yes
Yes
Yes
Yes
SI
Yes
Yes
Yes
Yes
SI, SO
SI
SI, SO, WP, HOLD
SI, SO, WP, HOLD
SI, SO, WP, HOLD
SI, SO, WP, HOLD
SI, SO, WP, HOLD
The AT25FF041A supports the transfer formats below, which are described in the following subsections:
Standard SPI Operation
Dual Output Operation
Quad Output Operation
Quad I/O Operation
XiP Operation
5.2 STANDARD SPI OPERATION
Standard SPI transfers are divided into three elements; command, address, and data. SPI mode support the following four transfer
types, as described in Table 2.
Command only, no address or data (1-0-0)
Command and address only, no data (1-1-0)
Command and data only, no address (1-0-1)
Command, address, and data (1-1-1)
For standard SPI transfers, command and address are always transferred on the SI pin. For write operations, data is also
transferred on the SI pin. For read operations, data is transferred on the SO pin.
The AT25FF041A supports the two most common SPI modes, 0 and 3, meaning that data is always latched on the rising edge
of SCK and always output on the falling edge of SCK.
Datasheet
5-Aug-2021
Revision F
14
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.2.1 Command Only, No Address or Data (1-0-0)
The following diagram shows a command-only transfer. In this type of transfer no address or data are required. An example would
be the Chip Erase (60h/C7h) command. A 1-0-0 transfer type is shown in Figure 3.
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
6&.
6,
&200$1'
&
06%
&
&
&
&
&
&
&
+,*+ꢈ,03('$1&(
62
Figure 3: SPI Transfer — Command Only
5.2.2 Command and Address Only, No Data (1-1-0)
The following diagram shows a transfer with command and address only. In this type of transfer no data is required. An example
would be the Block Erase (20h) command, where the address indicates the location of the block to be erased.
The 1-1-0 transfer type is shown in Figure 4.
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
ꢊ
ꢉ
ꢂꢃ ꢂꢂ ꢂꢀ
ꢀꢄ ꢀꢅ ꢀꢊ ꢀꢉ ꢁꢃ ꢁꢂ
6&.
6,
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃ
&
06%
&
&
&
&
&
&
&
$
06%
$
$
$
$
$
$
$
$
$
$
$
+,*+ꢈ,03('$1&(
62
Figure 4: SPI Transfer — Command and Address Only
Datasheet
5-Aug-2021
Revision F
15
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.2.3 Command and Data Only, No Address (1-0-1)
The following diagram shows a transfer with command and data only. In this type of transfer no address is required. An example
would be the Status Register Read (05h/35h/15h) and Status Register Write (01h/31h/11h) commands, where the command itself
indicates the location of the register. The 1-0-1 transfer type for a read operation is shown in Figure 5.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
SCK
SI
COMMAND
C
C
C
C
C
C
C
C
MSB
DATA OUT 1
DATA OUT 1
HIGH-IMPEDANCE
D
MSB
D
D
D
D
D
D
D
D
MSB
D
D
D
D
D
D
D
D
MSB
D
SO
Figure 5: SPI Transfer — Command and Data Only — Read Operation
The 1-0-1 transfer type for a write operation is shown in Figure 6.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
SCK
SI
COMMAND
DATA IN
C
C
C
C
C
C
C
C
D
D
D
D
D
D
D
D
MSB
MSB
HIGH-IMPEDANCE
SO
Figure 6: SPI Transfer — Command and Data Only — Write Operation
Datasheet
5-Aug-2021
Revision F
16
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.2.4 Command, Address, and Data (1-1-1)
The following diagram shows a command, address, and data transfer. In this type of transfer the command and address are
followed by one or more data types, depending on the command type.
Note that this type of transfer may contain one or more dummy bytes between the end of the address and the beginning of the
data output depending on the type of command. See the command table in Section 7 for more information.
The 1-1-1 transfer type for a read operation without dummy bytes is shown in Figure 7. An example would be the Read Array
(03h) command.
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
ꢊ
ꢉ
ꢂꢃ ꢂꢂ ꢂꢀ
ꢀꢉ ꢁꢃ ꢁꢂ ꢁꢀ ꢁꢁ ꢁꢇ ꢁꢆ ꢁꢄ ꢁꢅ ꢁꢊ ꢁꢉ ꢇꢃ
6&.
6,
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃ
&
06%
&
&
&
&
&
&
&
$
06%
$
$
$
$
$
$
$
$
'$7$ꢋ287ꢋꢂ
+,*+ꢈ,03('$1&(
'
06%
'
'
'
'
'
'
'
'
06%
'
62
Figure 7: SPI Transfer — Command, Address, and Data — Read Operation with No Dummy Bytes
The 1-1-1 transfer type for a read operation with dummy bytes is shown in Figure 8. An example would be the Fast Read Array
(0Bh) command. Note that eight dummy clocks are shown in the figure below for illustration purposes only. More than eight clocks
may be required depending on the type of operation and operating frequency.
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
ꢊ
ꢉ
ꢂꢃ ꢂꢂ ꢂꢀ
ꢀꢉ ꢁꢃ ꢁꢂ ꢁꢀ ꢁꢁ ꢁꢇ ꢁꢆ ꢁꢄ ꢁꢅ ꢁꢊ ꢁꢉ ꢇꢃ ꢇꢂ ꢇꢀ ꢇꢁ ꢇꢇ ꢇꢆ ꢇꢄ ꢇꢅ ꢇꢊ
6&.
6,
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃ
'800<
&
06%
&
&
&
&
&
&
&
$
06%
$
$
$
$
$
$
$
$
;
06%
;
;
;
;
;
;
;
'$7$ꢋ287ꢋꢂ
+,*+ꢈ,03('$1&(
'
06%
'
'
'
'
'
'
'
'
06%
'
62
Figure 8: SPI Transfer — Command, Address, and Data — Read Operation with Dummy Bytes
Datasheet
5-Aug-2021
Revision F
17
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
The 1-1-1 transfer type for a write operation is shown in Figure 9. An example would be the Byte/Page Program (02h) command.
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
ꢊ
ꢉ
ꢂꢃ ꢂꢂ ꢂꢀ
ꢀꢉ ꢁꢃ ꢁꢂ ꢁꢀ ꢁꢁ ꢁꢇ ꢁꢆ ꢁꢄ ꢁꢅ ꢁꢊ ꢁꢉ
6&.
6,
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃ
'$7$ꢋ,1
&
06%
&
&
&
&
&
&
&
$
06%
$
$
$
$
$
$
$
$
'
06%
'
'
'
'
'
'
'
+,*+ꢈ,03('$1&(
62
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation
Datasheet
5-Aug-2021
Revision F
18
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.3 DUAL OUTPUT OPERATION (1-1-2)
The AT25FF041A supports the dual output mode (1-1-2) transfer type which enhances overall throughput over the standard SPI
mode. This mode transfer command and address on the SI pin like in SPI mode, but the data is transferred on to the SI and SO
pins. This means that only half the number of clocks are required to transfer the data.
A dual output read operation is shown in Figure 10. An example of this operation would be a Dual Output Read (3Bh). Note that
this type of transfer may contain one or more dummy bytes between the end of the address and the beginning of the data output
depending on the type of command and the operating frequency. For more information, see the Command table in Section 7.
CS
0
1
4
5
6
7
8
9
2
3
10 11
12
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
SCK
SI (SIO)
SO
COMMAND
ADDRESS BITS A23-A0
DUMMY
DATA OUT 1
D2
DATA OUT 2
D2
D0
D4
D6 D4
D0 D6 D4
X
X
D6
C
C
C
C
C
C
C
C
A
X
X
A
A
A
X
X
X
X
A
A
A
A
A
MSB
MSB
MSB
HIGH-IMPEDANCE
D3
D7
D5
D3
D5
D7
D1
D5
D7
D1
MSB
MSB
MSB
Figure 10: Dual Output Read — 1-Pin Command, 1-Pin Address, and 2-Pin Data
A dual output (1-1-2) write operation is shown in Figure 11. An example of this operation would be a Dual Output Byte/Page
Program (A2h).
CS
0
29
37
1
2
3
4
8
11 12
30 31 32
38 39
5
6
7
9
10
33 34 35 36
SCK
COMMAND
ADDRESS BITS A23-A0
DATA IN 2
DATA IN 1
A
D
D
D
D
D
D
D
D
0
C
C
C
C
C
C
C
C
A
A
A
A
A
A
A
A
6
4
2
0
6
4
2
SI (SIO)
SO
MSB
HIGH-IMPEDANCE
D
7
D
5
D
3
D
1
D
7
D
5
D
3
D
1
MSB
MSB
Figure 11: Dual Output Write — 1-Pin Command, 1-Pin Address, and 2-Pin Data
Datasheet
5-Aug-2021
Revision F
19
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.4 QUAD OUTPUT OPERATION (1-1-4)
The AT25FF041A supports the Quad Output which enhances overall throughput over the standard SPI and dual operating modes
by increasing the data transfer rate. In this mode, data is transferred on four pins; SI, SO, WP, and HOLD. This means that only
1/4th the number of clocks are required to transfer the data relative to standard SPI mode. This is known as a 1-1-4 transfer,
which is defined as follows:
1-pin command, 1-pin address, 4-pin data (1-1-4)
In Quad Output the command (C) and address (A) are driven to the memory device on the SI (IO0) pin. During write operations,
the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins switched to inputs and the data is driven on all four pins, allowing four data
bits to be transferred on every clock. During read operations, once the command and address are transferred on the SI (IO0) pin,
the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins switched to outputs and the data is driven on all four pins, allowing four
data bits to be transferred on every clock.
A 1-1-4 Quad Output read operation is shown in Figure 12. An example of this operation would be a Quad Output Read (6Bh).
Note that this type of transfer may contain one or more dummy bytes between the end of the address and the beginning of the
data output depending on the type of command and the operating frequency. See the Command table in Section 7 for more
information.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
DATA DATA DATA DATA DATA
SCK
OUT 1 OUT 2 OUT 3 OUT 4 OUT 5
DUMMY
COMMAND
Address Bits A23-A0
C
C
C
C
C
C
C
C
A
A
A
A
A
A
A
A
A
X
X
X
X
X
X
X
X
D4 D0 D4 D0 D4 D0 D4 D0 D4 D0
D5 D1 D5 D1 D5 D1 D5 D1 D5 D1
D6 D2 D6 D2 D6 D2 D6 D2 D6 D2
I/O0
(SI)
High-impedance
High-impedance
High-impedance
I/O1
(SO)
I/O2
(WP)
D7 D3 D7 D3 D7 D3 D7 D3 D7 D3
I/O3
(HOLD)
MSB
MSB
MSB
MSB
MSB
Figure 12: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Read Operation
Datasheet
5-Aug-2021
Revision F
20
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
A 1-1-4 Quad Output write operation is shown in Figure 13. An example of this operation would be a Quad Output Byte/Page
Program (32h).
CS
0
1
2
3
4
5
6
7
8
9
10 11 12
29 30 31 32 33 34 35 36 37 38 39 40 41
DATA DATA DATA DATA DATA
SCK
IN 1
IN 2
IN 3
IN 4
IN 5
COMMAND
Address Bits A23-A0
C
C
C
C
C
C
C
C
A
A
A
A
A
A
A
A
A
D4 D0 D4 D0 D4 D0 D4 D0 D4 D0
D5 D1 D5 D1 D5 D1 D5 D1 D5 D1
D6 D2 D6 D2 D6 D2 D6 D2 D6 D2
I/O0
(SI)
High-impedance
High-impedance
High-impedance
I/O1
(SO)
I/O2
(WP)
D7 D3 D7 D3 D7 D3 D7 D3 D7 D3
I/O3
(HOLD)
MSB
MSB
MSB
MSB
MSB
Figure 13: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Write Operation
Datasheet
5-Aug-2021
Revision F
21
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.5 QUAD I/O OPERATION (1-4-4)
The AT25FF041A supports the Quad I/O mode which enhances overall throughput over the standard SPI and dual operation
modes by increasing the data transfer rate. In this mode, address and data are transferred on four pins; SI, SO, WP, and HOLD.
This means that only 1/4th the number of clocks are required to transfer the address and data relative to standard SPI mode. This
is known as a 1-4-4 transfer which is defined as follows:
1-pin command, 4-pin address, and 4-pin data (1-4-4)
In Quad I/O mode the command (C) is driven to the memory device on the SI (IO0) pin. During write operations, the SI (IO0), SO
(IO1), WP (IO2), and HOLD (IO3) pins switched to inputs and the address and data are driven on all four pins, allowing four bits
to be transferred on every clock. During read operations, once the command is transferred on the SI (IO0) pin, address is
transferred on the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins, allowing a 24-bit address to be transferred in only six clocks.
Once the address transfer is complete, these pins are switched to outputs and the data is driven on all four pins, allowing four
data bits to be transferred on every clock. Note that mode bits M[7:0] must not be in high impedance mode. For optimal perfor-
mance it is recommended to drive a value of 55h or FFh on these bits when not in XiP mode.
A 1-4-4 quad I/O read operation is shown in Figure 14. An example of this operation would be a Manufacturer/Device ID Read
(94h). Note that this type of transfer may contain one or more dummy bytes between the end of the address and the beginning
of the data output depending on the type of command and the operating frequency. See the Command table in Section 7 for more
information.
Command
High-Impedance
High-Impedance
High-Impedance
Figure 14: Quad I/O Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Read Operation
Datasheet
5-Aug-2021
Revision F
22
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.6 XIP MODE OPERATION
The XiP mode is similar to the Quad I/O mode in that both the address and data are transferred on all four pins, SI (IO0), SO
(IO1), WP (IO2), and HOLD (IO3). Using all four pins to transfer address and data allows XiP mode to reduce the overall number
of clocks required to complete the operation, thereby streamlining code execution.
The XiP mode is enabled by setting bit 2 (QE) of Status register 1, and bit 3 (XiP) of Status register 4. Setting the QE bit enables
Quad Output, allowing address and data to be transferred on all four pins. Setting the XiP bit enables continuous read mode,
allowing subsequent transfers to occur without the need for driving the command each time, controlled by mode bits M[5:4] as
explained below. Therefore, the initial EBh or E7h command requires the command to be driven, but for subsequent transfers the
command is not required.
The XiP mode is only used for the following commands:
EBh: XiP mode initial read (1-4-4)
EBh: XiP mode subsequent reads (0-4-4)
E7h: XiP mode initial read with Doubleword Aligned (DWA) address (1-4-4)
E7h: XiP mode subsequent reads with DWA address (0-4-4)
As shown above, the only difference between the EBh and E7h commands is that the E7h command is performed only on a
double-word aligned address boundary. The EBh command does not have this restriction. Note that mode bits M[7:0] must not
be in high-impedance mode. For optimal performance it is recommended to drive a value of 55h or FFh on these bits when not
in XiP mode.
The Set Burst with Wrap (77h) command does not access the memory directly, but rather is used in conjunction with the EBh and
E7h commands to select 8-, 16-, 32-, or 64-Byte sections within a 256-byte page. The user selects the size by programming the
wrap bits as part of the 77h command. See the table in Section 7.13, Set Burst Wrap (77h) for more information.
When the EBh/E7h command is driven onto the bus, the associated data immediately following the address contains eight mode
bits, known as M[7:0]. Of these bits, M[5:4] are decoded and used by hardware to determine if the device is in XiP continuous
read mode. If the value on M[5:4] equals 2’b10, the device is placed into XiP mode to allow for continuous read operations to
occur, meaning that for subsequent operations the command field is not required. Each time a subsequent transfer is made, it
contains only the address and mode bits.
Initial Transfer and XiP Mode Detection (M[5:4])
The initial XiP transfer follows the 1-4-4 format, where the EBh or E7h command is transferred on the SI (IO0) pin, and address
and data are transferred on the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins. Because all four pins are used, the address
requires only six clocks to transfer. The initial 1-4-4 XiP mode transfer is shown in Figure 15.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20 21 22 23
SCK
DATA
OUT 1
DATA
OUT 2
COMMAND
A23-A16 A15-A8
A7-A0
M7-M0
DUMMY
D0 D4
D0
I/O
0
D
4
C
C
C
C
C
C
C
C
A20
A16
A
12
A8
A4
A0 M4 M0
(SI)
MSB
D1 D5
D2 D6
D3 D7
I/O1
A
21
A
17
A
13
A
9
A
5
A
1
M
5
M
1
D
5
D1
(SO)
I/O2
D
6
D2
A22
A18
A14
A10
A
6
A2 M6 M2
(WP)
I/O3
D
7
D3
A
23
A19
A15
A11
A
7
A3 M7 M3
(HOLD)
Figure 15: XiP Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Initial Read (M[5:4] = 2’b10)
Datasheet
5-Aug-2021
Revision F
23
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Subsequent Transfers
Once XiP mode is detected, subsequent operations do not require the command to be transferred. After the data stream starts,
the user can deassert the CS pin. Once CS is deasserted, data output is suspended. Once CS is again driven low, only the address
and M[7:0] mode data are required because the device is already in XiP mode. Each time a new operation is transferred on the
bus, hardware decodes the M[7:0] bits. As long as M[5:4] have a value of 2’b10, the device is in XiP mode and it is not necessary
to transfer the command. Once M[5:4] ≠ 2’b10 (any value other than 2’b10), the operation completes and the device exits XiP
mode.
A subsequent 0-4-4 XiP mode transfer is shown in Figure 16.
CS
17
10 11 12 13 14 15 16
0
1
2
3
4
5
6
7
8
9
SCK
DATA
OUT 1
DATA
OUT 2
A23-A16 A15-A8
A7-A0
M7-M0
DUMMY
D0 D4
D0
I/O
0
D
4
A
20
A16
A
12
A8
A4
A0 M4 M0
(SI)
D1 D5
D2 D6
D3 D7
I/O1
A
21
A
17
A
13
A
9
A
5
A
1
M
5
M
1
D
5
D1
(SO)
I/O2
D
6
D2
A
22
A18
A14
A10
A
6
A2 M6 M2
(WP)
I/O3
D
7
D3
A
23
A19
A15
A11
A
7
A3 M7 M3
(HOLD)
Figure 16: XiP Transfer — 4-Pin Address, and 4-Pin Data — Subsequent Reads (M[5:4] = 2’b10)
Datasheet
5-Aug-2021
Revision F
24
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Set Burst with Wrap
As mentioned above, the Set Burst with Wrap (77h) command is used in conjunction with the EBh and E7h commands to select
specific sections within a 256-byte page. When this command is transferred, the data field contains 8 wrap bits. Bits 6:4 of this
field determine the wrap length, which can be between 8 and 64 bytes. See Section 7.13, Set Burst Wrap (77h) for more
information.
Note that when the device receives the EBh/E7h command with M[5:4] = 2’b10, then the device enters XiP mode. While in the
XiP (0-4-4) mode (see Subsequent Transfers subsection above) the only command that the device can execute are EBh (or E7h).
This is mandatory since the command field for subsequent transfers does not exist.
During normal operation, the user sends the 77h command before entering XiP mode. If the user wants to issue a 77h command
after XiP mode has been entered (to change the wrap length/properties), they must exit the XiP mode by sending a 0-4-4
command with M[5:4] ≠ 2’b10. This exits XiP mode. Then the user can issue the 77h command.
The 77h command is a 1-4-4 XiP mode transfer as shown in Figure 17.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
SCK
DON’T
CARE
DON’T
CARE
DON”T WRAP
CARE BIT
COMMAND
I/O0
C
C
C
C
C
C
C
C
W
4
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
(SI)
MSB
X
X
X
I/O1
W5
(SO)
I/O2
X
X
X
X
X
X
X
X
X
X
W6
(WP)
I/O3
X
(HOLD)
Figure 17: XiP Transfer — Command, 4-Pin Address, and 4-Pin Data — Write Operation
See Section 7.13, Set Burst Wrap (77h) for more information.
Datasheet
5-Aug-2021
Revision F
25
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.7 MEMORY ARCHITECTURE
The memory array of the AT25FF041A memory array is divided into three levels of granularity comprised of blocks and pages;
64 kB blocks
32 kB blocks
4 kB blocks
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.
Datasheet
5-Aug-2021
Revision F
26
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 3 shows the breakdown of each level and details the number of pages per block. The program operations to the memory
array can be done at the full page level or at the byte level (a variable number of bytes). Erase operations can be performed at
the chip or block level.
Table 3: AT25FF041A Device Block Memory Map
64 kB Block Erase (D8h)
32 kB Block Erase (52h)
4 kB Block Erase (20h)1
Block Address Range
4 kB (B127)
4 kB (B126)
4 kB (B125)
4 kB (B124)
4 kB (B123)
4 kB (B122)
4 kB (B121)
4 kB (B120)
4 kB (B119)
4 kB (B118)
4 kB (B117)
4 kB (B116)
4 kB (B115)
4 kB (B114)
4 kB (B113)
4 kB (B112)
07F000h - 07FFFFh
07E000h - 07EFFFh
07D000h - 07DFFFh
07C000h - 07CFFFh
07B000h - 07BFFFh
07A000h - 07AFFFh
079000h - 079FFFh
078000h - 078FFFh
077000h - 077FFFh
076000h - 076FFFh
075000h - 075FFFh
074000h - 074FFFh
073000h - 073FFFh
072000h - 072FFFh
071000h - 071FFFh
070000h - 070FFFh
32 kB
(block 15)
64 kB
(block 7)
32 kB
(block 14)
64 kB (block 6)
to
64 kB (block 1)
32 kB (block 13)
to
32 kB (block 2)
4 kB (B111)
to
4 kB (B16)
06F000h - 06FFFFh
to
010000h - 010FFFh
4 kB (B15)
4 kB (B14)
4 kB (B13)
4 kB (B12)
4 kB (B11)
4 kB (B10)
4 kB (B9)
4 kB (B8)
4 kB (B7)
4 kB (B6)
4 kB (B5)
4 kB (B4)
4 kB (B3)
4 kB (B2)
4 kB (B1)
4 kB (B0)
00F000h - 00FFFFh
00E000h - 00EFFFh
00D000h - 00DFFFh
00C000h - 00CFFFh
00B000h - 00BFFFh
00A000h - 00AFFFh
009000h - 009FFFh
008000h - 008FFFh
007000h - 007FFFh
006000h - 006FFFh
005000h - 005FFFh
004000h - 004FFFh
003000h - 003FFFh
002000h - 002FFFh
001000h - 001FFFh
000000h - 000FFFh
32 kB
(block 1)
64 kB
(block 0
32 kB
(block 0)
1 B = Block
Datasheet
5-Aug-2021
Revision F
27
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 4 shows how one 4 kB block maps to sixteen 256 byte pages. The very top and bottom block ranges are shown.
Table 4: AT25FF041A Device Block Memory Map — Page Program
4 kB Blocks
256 Byte Page
1 - 256 Byte Page Program (02h)
4 kB (B127)
4 kB (B126)
4 kB (B125)
4 kB (B124)
4 kB (B123)
4 kB (B122)
4 kB (B121)
4 kB (B120)
4 kB (B119)
4 kB (B118)
4 kB (B117)
4 kB (B116)
4 kB (B115)
4 kB (B114)
4 kB (B113)
4 kB (B112)
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
07FF00h - 07FFFFh
07FE00h - 07FEFFh
07FD00h - 07FDFFh
07FC00h - 07FCFFh
07FB00h - 07FBFFh
07FA00h - 07FAFFh
07F900h - 07F9FFh
07F800h - 07F8FFh
07F700h - 07F7FFh
07F600h - 07F6FFh
07F500h - 07F5FFh
07F400h - 07F4FFh
07F300h - 07F3FFh
07F200h - 07F2FFh
07F100h - 07F1FFh
07F000h - 07F0FFh
4 kB (B111)
to
4 kB (B16)
.
.
.
.
.
.
.
.
.
4 kB (B15)
4 kB (B14)
4 kB (B13)
4 kB (B12)
4 kB (B11)
4 kB (B10)
4 kB (B9)
4 kB (B8)
4 kB (B7)
4 kB (B6)
4 kB (B5)
4 kB (B4)
4 kB (B3)
4 kB (B2)
4 kB (B1)
4 kB (B0)
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
256 Bytes
000F00h - 000FFFh
000E00h - 000EFFh
000D00h - 000DFFh
000C00h - 000CFFh
000B00h - 000BFFh
000A00h - 000AFFh
000900h - 0009FFh
000800h - 0008FFh
000700h - 0007FFh
000600h - 0006FFh
000500h - 0005FFh
000400h - 0004FFh
000300h - 0003FFh
000200h - 0002FFh
000100h - 0001FFh
000000h - 0000FFh
Datasheet
5-Aug-2021
Revision F
28
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.8 MEMORY PROTECTION
The AT25FF041A device incorporates a robust memory protection scheme that allows memory locations to be protected down
to the 4 kB block level. The device provides the ability to globally lock all blocks in one operation, or to lock individual blocks on
a per-block basis.
5.8.1 Standard Memory Protection
The standard memory protection scheme is invoked by clearing bit 2 (WPS) of Status register 3. When this bit is cleared, the
AT25FF041A uses a combination of the following register fields to set the memory protection scheme:
CMPRT: When this bit is set, unprotected areas of memory become protected, and protected areas of memory become
unprotected. For example, when CMPRT = 0, a top 64 kB block can be protected while the rest of the array is not; when
CMP = 1, the same 64 kB block would become unprotected while the rest of the array becomes read-only. See bit 6 of Sec-
tion 6.4, Status Register 2 for more information.
BPSIZE: This bit works in conjunction with bits 4:2 (BP[2:0]) in Status register 1 to determine the size of the blocks to be
protected. Block sizes of 4 kB and 64 kB can be protected depending on the state of this bit. See bit 6 of Section 6.3, Status
Register 1 for more information.
TB: This bit indicates if the protection is from the bottom up or the top down of the memory. See bit 5 of Section 6.3, Status
Register 1 for more information.
BP[2:0]: This field can be programmed to protect all of the memory array, none of the memory array, or a portion of the
memory array. When that portion of the memory if protected, it is protected from the program and erase commands. See bit
4:2 of Section 6.3, Status Register 1 for more information.
Datasheet
5-Aug-2021
Revision F
29
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
The protection scheme differs based on the setting of the CMPRT bit described above. Table 5 shows the relationship between
the BPSIZE, BP[2:0], and TB bits when CMPRT = 0. The right-most column shows the protected address range. All addresses
not shown are unprotected.
Table 5: AT25FF041A Device Block Protection Map — CMPRT = 0, WPS = 0
CMPRT
BPSIZE
TB
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
BP[2:0]
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
Protected Address Range
NONE
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
070000h - 07FFFFh
060000h - 07FFFFh
040000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
NONE
000000h - 00FFFFh
000000h - 01FFFFh
000000h - 03FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
NONE
07F000h - 07FFFFh
07E000h - 07FFFFh
07C000h - 07FFFFh
078000h - 07FFFFh
078000h - 07FFFFh
000000h - 07FFFFh
000000h - 07FFFFh
NONE
000000h - 000FFFh
000000h - 001FFFh
000000h - 003FFFh
000000h - 007FFFh
000000h - 007FFFh
000000h - 07FFFFh
000000h - 07FFFFh
Datasheet
5-Aug-2021
Revision F
30
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 6 shows the relationship between the BPSIZE, BP[2:0], and TB bits when CMPRT = 1.
Table 6: AT25FF041A Device Block Protection Map — CMPRT = 1, WPS = 0
CMPRT
BPSIZE
TB
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
BP[2:0]
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
3'b000
3'b001
3'b010
3'b011
3'b100
3'b101
3'b110
3'b111
Protected Address Range
000000h - 07FFFFh
000000h - 06FFFFh
000000h - 05FFFFh
000000h - 03FFFFh
NONE
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
NONE
NONE
NONE
000000h - 07FFFFh
010000h - 07FFFFh
020000h - 07FFFFh
040000h - 07FFFFh
NONE
NONE
NONE
NONE
000000h - 07FFFFh
000000h - 07EFFFh 1 2
000000h - 07DFFFh 1 2
000000h - 07BFFFh1 2
000000h - 077FFFh 2
000000h - 077FFFh 2
NONE
NONE
000000h - 07FFFFh
001000h - 07FFFFh 3 4
002000h - 07FFFFh 3 4
004000h - 07FFFFh 3 4
008000h - 07FFFFh 4
008000h - 07FFFFh 4
NONE
NONE
1. When the 32 kB Erase command is used, the protected region is 0x00_0000 - 0x07_7FFF.
2. When the 64 kB Erase command is used, the protected region is 0x00_0000 - 0x06_FFFF.
3. When the 32 kB Erase command is used, the protected region is 0x00_8000 - 0x07_FFFF.
4. When the 64 kB Erase command is used, the protected region is 0x01_0000 - 0x07_FFFF.
Datasheet
5-Aug-2021
Revision F
31
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.8.2 Individual Block Lock and Unlock
In addition to the standard protection scheme described in the previous subsection, the AT25FF041A device also provides the
ability to lock individual memory locations. Protection of memory locations can be applied individually using the Individual Block
Lock (36h) command and the Individual Block Unlock (39h) command. Note that in the AT25FF041A device all lock bits are set
by default, making all memory locations protected. The user must execute a series of one or more Individual Block Unlock (39h)
commands to unlock the desired memory locations.
The individual memory protection scheme is invoked by setting bit 2 (WPS) of status register 3. When this bit is set, the
AT25FF041A uses the Individual Block Lock (36h) command that provides the address of the 4 kB or 64 kB block to be locked.
See Table 17 for more information on the WPS bit.
Figure 3 above shows the address ranges for each 4 kB block corresponding to the top and bottom 64 kB blocks of the memory
map. The appropriate 24-bit address is driven on the SI pin after the 36h command. After decoding the command, hardware reads
the address and sets the appropriate lock bit for that 4 kB block.
Note that the ability to lock 4 kB blocks only applies to the top and bottom 64 kB blocks of the map. This corresponds to blocks
0 and 7. For 64 kB blocks 1 - 6, the blocks can only be locked on the 64 kB boundary (1 lock bit per 64 kB). This equates to a
total of 38 lock bits;
16 bits, one per 4 kB sub-block in the top 64 kB block
16 bits, one per 4 kB sub-block in the bottom 64 kB block
6 bits, one each for 64 kB blocks 1 - 6
See Section 7.17, Individual Block Lock (36h) and Section 7.18, Individual Block Unlock (39h) for more information.
5.8.3 Global Block Lock and Unlock
In addition to individual block protection of memory locations, as described in the previous subsection, the AT25FF041A also
allows for the blocks to be locked and unlocked globally using the Global Block Lock (7Eh) and the Global Block Unlock (98h)
commands. Note that in the AT25FF041A device all lock bits are set by default, making all memory locations protected. The user
must execute a Global Unlock Block command to unlock the memory locations.
See Section 7.20, Global Block Lock (7Eh) and Section 7.21, Global Block Unlock (98h) for more information.
5.8.4 Reading the State of the Lock Bits
In addition to globally or individually locking and unlocking selected memory blocks as described above, the AT25FF041A device
allows the user to poll any block in memory to determine if it has been locked. This is accomplished by executing either the 3Ch
or 3Dh command, along with the 24-bit address. Both of these commands perform the exact same operation and can be used
interchangeably.
Once this information is decoded, hardware fetches the 8-bit lock field from the requested location and outputs this information
onto the SO pin. The most significant bit (MSB) of the value is transferred first, and the least significant bit (LSB) is transferred
last. If the LSB is 1, the corresponding block is locked and no erase or program operation can be executed to that block. If the
LSB is 0, the block or section is unlocked and program/erase operations are allowed. See Section 7.19, Read Block Lock (3Ch/
3Dh) for more information.
5.9 POWER DOWN CONSIDERATIONS
The AT25FF041A device supports the Deep Power Down (B9h) and Ultra Deep Power Down (79h/B9h) modes. Also, bit 7 (PDM)
of Status register 4 (SR4) can be used to select either of these modes using the B9h command. The 79h command is provided
for backward compatibility.
There are three ways to enter power down mode:
Datasheet
5-Aug-2021
Revision F
32
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
1. Set the PDM bit in SR4 (logic 1) and execute the B9h command to place the device into Deep Power Down (DPD) mode.
In this mode it is possible to execute the Resume from Power Down (ABh) command or Enable Reset (66h) and Reset
Device (99h) commands in order to exit DPD mode. The device could also be reset by JEDEC reset, hardware reset, or
power-on-reset in order to exit DPD mode. The exit from DPD mode time is defined by the tRDPD timing parameter in the
AC specifications section of this document. See Section 5.9.2 below. Note that in the AT25FF041A device, simply deas-
serting CS as in other devices does not exit DPD mode.
2. Clear the PDM bit in SR4 (logic 0) and execute the B9h command to place the device into Ultra Deep Power Down
(UDPD) mode. To exit this mode, it is necessary to execute the Resume from Ultra-Deep Power Down (ABh) command
or a JEDEC reset, hardware reset, or power-on-reset to initiate an internal reset of the device. The resume from UDPD
mode recovery time is defined by the tRUDPD timing parameter in the AC specifications section of this document. See
Section 5.9.2 below. Note that in the AT25FF041A device, simply deasserting CS as in other devices does NOT exit
UDPD mode.
3. Execute the 79h command to place the device into Ultra Deep Power Down (UDPD) mode. If this command is used, the
state of the PDM bit in SR4 is ignored. This mode allows for software backward compatibility. A device reset is required to
exit UPDP mode. In this mode it is necessary to execute the Resume from Ultra-Deep Power Down (ABh) command or a
JEDEC reset, hardware reset or power-on-reset to initiate an internal reset of the device. The exit from UDPD mode
recovery time is defined by the tRUDPD timing parameter in the AC specifications section of this document. See Section
5.9.2 below for more information on exiting power down mode.
5.9.1 Entering Power Down Mode
The conditions for entering DPD or UDPD mode are shown in the Table 7. The PDM column indicates the state of the Power
Down Mode bit in Status Register 4.
Table 7: Entering DPD or UDPD Mode
Command
B9h
PDM bit
Power Down Mode
Deep Power Down
Power Down Exit Recovery Time
1
0
x
Short
Long
Long
B9h
Ultra Deep Power Down
Ultra Deep Power Down
79h
5.9.2 Exiting Power Down Mode
The following methods can be used to exit DPD or UDPD mode.
Table 8: Exiting DPD or UDPD Mode
Power-Down
Mode
Exit
Command
Power On JEDEC
Reset
Hardware
66h/99h Terminate
Status
After Exit
Command PDM bit
Reset Reset Pin 1 Command
(F0h)
B9h
B9h
79h
1
0
x
DPD
UDPD
UDPD
ABh 2
ABh 3
ABh 3
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
N
N
Idle
Idle
Idle
N
N
1. Hardware reset function must be enabled by software before entering the Power Down mode. See bit 7 of Status Register 3.
2. Executing the ABh command in DPD mode returns the device to an idle state. The SRAM contents are retained.
3. Executing the ABh command in UDPD mode causes the device to initiate an internal reset sequence.The SRAM contents are undefined.
ABh Command
Executing the ABh command while in the Deep Power Down (DPD) mode causes the device to exit DPD and return back to an
idle state. This command does not reset the device and no data is lost. Executing the ABh command while in the Ultra-Deep
Power Down (UDPD) mode causes the device to perform an internal reset.
Datasheet
5-Aug-2021
Revision F
33
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Device Resets
In addition to theABh command described above, performing a Power On Reset (POR), a JEDEC reset, or asserting the hardware
reset pin (RESET) also causes the device to exit DPD or UDPD mode.
Enable Reset (66h) / Reset (99h) Command
As shown in Table 8, the 66h/99h reset command is accepted in DPD mode. The device does not exit UDPD mode, regardless
of whether the device entered UDPD mode using the B9h command or the 79h command. To exit UDPD mode, the device must
be reset as described in the previous subsections.
Terminate Command (F0h)
The Terminate (F0) command does not cause exit from DPD or UDPD modes. To exit DPD or UDPD mode still requires either
the ABh command, or resetting the device as described in the previous subsections.
5.9.3 Reset During Program and Erase Commands
The AT25FF041A device supports the following program and erase operations.
Program operations include:
Byte/Page Program (02h)
Sequential Program (AFh/ADh)
Dual Output Byte/Page Program (A2h)
Quad Output Byte/Page Program (32h)
Program Security Register (9Bh)
Erase operations include:
4 kB Block Erase (20h)
32 kB Block Erase (52h)
64 kB Block Erase (D8h)
Chip Erase (60h/C7h)
These commands are affected when resetting the device as shown in Table 9. In this table, a ‘Y’ entry indicates that the device
is reset when that type of reset occurs during the corresponding command. A ‘N’ entry indicates that the operation is terminated,
but the device is not reset. For example, when the F0h command is executed during a program or erase operation, the operation
is halted, but the device is not reset.
Table 9: Resetting the Device During a Program or Erase Operation
Hardware
Reset Pin
66h/99h Com-
mand
Terminate
(F0h)
Command Type
Power On Reset
JEDEC Reset
Program
Erase
Y
Y
Y
Y
Y
Y
Y
Y
N
N
5.10 ERASE/PROGRAM SUSPEND CONSIDERATIONS AND NESTED OPERATIONS
The AT25FF041A device provides three status register bits to manage program and erase suspend operations.
SUSP — Status Register 2, bit 7. The SUSP bit is set by hardware and indicates that the program or erase operation has
been suspended.
Datasheet
5-Aug-2021
Revision F
34
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
ES — Status Register 5, bit 3. The ES bit is set by hardware whenever an erase operation is suspended.
PS — Status Register 5, bit 2. The PS bit is set by hardware whenever a program operation is suspended.
These three bits work in conjunction to define the state of a suspend operation as shown in Table 10.
In this table, the SUSP is a logical OR of the ES and PS bits. When either the ES or PS bit is set, the SUSP bit is set. When both
of the ES and PS bits are cleared, the SUSP bit is cleared.
These bits relate to the flow diagram in Figure 18 below as follows: when the erase operation is suspended, hardware sets the
ES bit. When the program operation is suspended, hardware sets the PS bit. Once the program operation is complete, hardware
clears the PS bit. Finally, when the erase operation is completed, hardware clears the ES bit.
Table 10: Encoding of Erase/Program Suspend Operations
SUSP
ES
PS
Status
0
0
0
No suspend operation in progress.
1
1
1
0
1
1
1
0
1
Program suspend operation in progress.
Erase suspend operation in progress.
Nested erase/program suspend operation in progress.
5.10.1 Nested Operations
The AT25FF041A device supports nested erase and program suspend operations. An erase operation can be suspended and a
program operation started. This operation can then also be suspended and another operation commenced, such as a read. After
the read operation is complete, the program operation can be resumed. Once the program operation is completed, the erase
operation can be resumed. Nested operations adhere to the following constraint:
Suspending an erase operation followed by a program operation is supported
Suspending a program operation followed by an erase operation is NOT supported
The erase operation must be suspended first, followed by suspension of the program operation.
Datasheet
5-Aug-2021
Revision F
35
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Figure 18 shows an example flow diagram of a nested operation.
Figure 18: Flow Diagram of Nested Operations Example
Datasheet
5-Aug-2021
Revision F
36
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.10.2 Program and Erase Errors
The AT25FF041A device provides two Status register bits to indicate program and erase errors.
EE — Status Register 4, bit 4. The EE bit is set by hardware whenever an error occurs during an erase operation
PE — Status Register 4, bit 5. The PE bit is set by hardware whenever an error occurs during a program operation
When a new program or erase command is accepted by the device, hardware clears the EE or PE bits respectively depending
on the command. The device clears the EE bit when a new Block Erase or Chip Erase command is accepted. The device clears
the PE bit when a new Byte/Page Program, Sequential Programming, Program OTP Security Register, Write Status Register, or
Status Register Lock command is accepted. If an error is detected during the command execution, then the EE or PE flag is set.
These flags hold their contents even if the program/erase operation is suspended. Note that the Resume command does not
change the state of the EE and PE bits. If a Terminate command is issued while the device is busy (executing program/erase),
then the PE or EE flag is set.
The PE and EE bits are volatile, meaning that any reset operation clears these bits. The ABh command is used to exit Deep
Power Down (DPD) or Ultra-Deep Power Down (UDPD) mode. If the device is in DPD mode and the user issues the ABh
command, then the device exits DPD mode but does not change the state of the PE and EE bits. However, if the ABh command
is executed and the device exits from UDPD mode, then the device initiates a reset, which causes both the PE and EE bits to be
cleared.
When an error occurs during a given command, the EE and PE bits are set as shown in Table 11. Note that for any of the
commands where a ‘Yes’appears in the EE or PE columns, when a new command is issued, the EE or PE bit is cleared. Therefore,
when the bit is set initially due to an error being detected, it is incumbent on software to detect when these bits are set and take
the necessary steps to determine the exact error.
Table 11: Command Errors and Their Effect on the EE and PE Bits
Command Name
Command Code
Sets the EE Bit
Sets the PE Bit
Read Array
03h, 3Bh, 6Bh, EBh, E7h
No
Yes
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
Yes
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
Yes
Block Erase
20h, 52h, D8h
60h, C7h
02h, A2h, 32h
ADh, AFh
B0h, 75h
D0h, 7Ah
06h
Chip Erase
Byte/Page Program
Sequential Programming
Program/Erase Suspend
Program/Erase Resume
Write Enable
Write Disable
04h
Volatile Write Enable
Individual Block Lock
Individual Block Unlock
Global Block Lock
50h
36h
39h
7Eh
Global Block Unlock
Read Block Lock Status
Program OTP Security Register
Read OTP Security Register
Read Status Registers (direct)
Read Status Registers (indirect)
Write Status Registers (direct)
98h
3Ch, 3Dh
9Bh
4Bh
05h, 35h, 15h
65h
01h, 31h, 11h
Datasheet
5-Aug-2021
Revision F
37
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 11: Command Errors and Their Effect on the EE and PE Bits (continued)
Command Name
Command Code
Sets the EE Bit
Sets the PE Bit
Write Status Registers (indirect)
Status Register Lock
71h
6Fh
No
No
Yes
Yes
Yes
Yes
Terminate
F0h
(if Erase command is terminat- (if Program command is termi-
ed)
nated)
Enable Reset
66h
99h
No
No
Reset Device
Cleared on POR
Cleared on POR
Read Mfg ID and Device ID
Deep Power Down
9Fh, 90h, 94h
B9h
No
No
No
No
No
No
Resume from Deep Power Down
ABh
Resume from Ultra Deep
Power Down
ABh
Cleared on POR
Cleared on POR
Ultra Deep Power Down
Read SFDP
79h
5Ah
77h
No
No
No
No
No
No
Set Burst with Wrap
5.10.3 Suspending and Terminating a Program or Erase Operation
Program Operation
A self-timed program operation can be suspended using the Suspend (75h) command and terminated using the Terminate (F0h)
command. The device responds to either of these commands by initiating a sequence which completes some internal sub-
operations, brings the internal voltage supplies to their quiescent state, saves the intermediate address counters and states, and
sets either the PS (Program Suspend) bit in status register 4 in the case of a Suspend command, or the PE (Program Error) bit
in status register 5 in case of the Terminate command.
When the user issues the Suspend command, the device requires a period of time equal to tSUS before the BUSY flag goes low
and the PS flag goes high. Similarly, when the user issues the Terminate command the device requires a period of time equal to
tSWTERM before the BUSY flag goes low and the PE flag goes high.
If the user issues the Suspend command, and then issues the Terminate command before the device has completed the internal
suspend operation, the device honors the Terminate command and sets the PE flag. The PS flag is not set, and the BUSY flag
is cleared. At this point the self-timed command that was terminated cannot be resumed, and the region of the memory that was
being programmed/erased is left in an intermediate state.
Erase Operation
A self-timed erase operation can be suspended using the Suspend (75h) command and terminated using the Terminate (F0h)
command. The device responds to either of these commands by initiating a sequence which completes some internal sub-
operations, brings the internal voltage supplies to their quiescent state, saves the intermediate address counters and states, and
sets either the ES (Erase Suspend) bit in status register 4 in the case of a Suspend command, or the EE (Erase Error) bit in status
register 5 in case of the Terminate command.
When the user issues the Suspend command the device requires a period of time equal to tSUS before the BUSY flag goes low
and the PE flag goes high. Similarly, when the user issues the Terminate command the device requires a period of time equal to
tSWTERM before the BUSY flag goes low and the EE flag goes high.
If the user issues the Suspend command, and then issues the Terminate command before the device has completed the internal
suspend operation, the device honors the Terminate command and sets the EE flag. The ES flags is not set, and the BUSY flag
is cleared. At this point the self-timed command that was terminated cannot be resumed, and the region of the memory that was
being programmed/erased is left in an intermediate state.
Datasheet
5-Aug-2021
Revision F
38
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
This concept is shown in Figure 19.
BUSY
CSB
Terminate
Command
Suspend
EE/PE
ES/PS
Figure 19: Issuing a Terminate Command Before the Suspend Command has Completed
Terminate After Suspend
If the time between the Suspend command and the Terminate command is large enough, then the device may finish the internal
suspend operation before the Terminate command is received. In this case, the device clears the BUSY bit in Status register 1,
and the ES/PS flag in Status register 5 is set. Now when the device receives the Terminate command, it is ignored by the hardware.
This concept is shown in Figure 20.
BUSY
CSB
Terminate
Command
Suspend
EE/PE
ES/PS
Figure 20: Allowing Enough Time for the Suspend Operation to Complete
If the user wishes to perform another program operation, they must check the status of both the PS and PE flags in Status registers
4 and 5 respectively to determine the next action.
If the PS bit is cleared and the PE bit is set, the user can issue a new Program command. Note that previous Program command
that was terminated leaves that region of memory in an intermediate state, and it is recommended to erase this region of memory
before attempting to reprogram it.
If the ES/PS bit is set, then the user cannot issue another Program/Erase command. The user must first issue a Resume command
to re-start the suspended program operation, then either allow it to run to completion or terminate it using the Terminate command.
The user can now issue a new Program/Erase command.
5.10.4 Terminating a Non-Volatile Operation in Progress
The Terminate (F0h) command, the Software Reset command (66h + 99h), the hardware reset (RESET) pin, and the JEDEC
Reset are ways to terminate any on-going internal self-timed program/erase operation (and in some cases reset the device).
However, abruptly terminating a Status Register Write, Status Register Lock, or OTP Security Register Program command is not
desirable as this may leave these non-volatile registers in an indeterminate state.
Therefore when the device is busy executing the Status Register Write, the Status Register Lock or the OTP Security Register
Program command, then the Terminate command is ignored. The software reset, hardware reset, and JEDEC reset actions are
Datasheet
5-Aug-2021
Revision F
39
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
delayed until after the internal self-timed operations are completed; once the internal operation is completed, the device is reset.
See Section 5.12 for more information on how to perform a JEDEC hardware reset.
5.11 OTP SECURITY REGISTER LOCK
The AT25FF041A device supports four 128-byte OTP security registers. One register is programmed by Dialog Semiconductor
at the factory and is always locked. The other three OTP registers can be programmed by the user and become locked whenever
any bit in the most significant byte of that register is written. In response to this write operation, hardware writes bits 5:3 (SL3:SL1)
of Status register 2 to indicate that the corresponding register has been locked. Software can read this field to determine which
registers have been locked.
Each byte of each register can be written using address bits 8:0 that are driven with the Program OTP Security register command
(9Bh). See Table 30 in Section 7.22, Program Security Register (9Bh) for an exact encoding of these address bits.
This concept is shown in Figure 21. In this figure, A[8:7] are used to select between the four OTP Security registers, and A[6:0]
are used to select one of the 128 bytes within that register. A value of 7’b1111111 on A[6:0] indicates an access to the MSB of
that register as shown below.
Software programs any bit in
the most significant byte of
OTP Security register 3.
Software programs any bit in
the most significant byte of
OTP Security register 2.
No programming allowed. OTP
register 0 is programmed by
Adesto at the factory. The value
in this register can be read by
executing the 4Bh command.
Software programs any bit in
the most significant byte of
OTP Security register 1.
A[8:0] = 111111111
A[8:0] = 101111111
A[8:0] = 011111111
Byte number
Byte number
Byte number
Byte number
511
510:385
384
383
382:257
256
255
254:129
128
127
126:1
0
OTP Register 3
User-Defined
OTP Register 2
User-Defined
OTP Register 1
User-Defined
OTP Register 0
Factory Programmed by Adesto
Hardware sets
bit 4 of SR2
Hardware sets
bit 5 of SR2
Hardware sets
bit 3 of SR2
SL3 SL2 SL1
7
5
4
3
0
Status Register 2
Figure 21: OTP Security Register Program and Lock
5.12 STANDARD JEDEC HARDWARE RESET
The JEDEC hardware reset sequence does not use the SCK pin. The SCK pin must be held low (mode 0) or high (mode 3)
through the entire reset sequence. This prevents any confusion with a command, as no command bits are transferred.
A reset is commanded when the data on the SI pin is 0101 on four consecutive positive edges of the CS pin with no edge on the
SCK pin throughout. This is a sequence where
1. CS is driven active low to select the device
2. Clock (SCK) remains stable in either a high or low state
3. SI is driven low by the bus master, simultaneously with CS going active low. No SPI bus slave drives SI during CS low
before a transition of SCK
4. CS is driven inactive. The slave captures the state of SI on the rising edge of CS
The above steps are repeated 4 times, each time alternating the state of SI.
Datasheet
5-Aug-2021
Revision F
40
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
After the fourth CS pulse, the slave triggers its internal reset. SI is low on the first CS, high on the second, low on the third, high
on the fourth. This provides a value of 5h, unlike random noise. Any activity on SCK during this time halts the sequence and a
Reset is not generated.
After a JEDEC hardware reset while the device is in Ultra-Deep Power Down (UDPD) mode, the SRAM buffer resets to an
undefined value. Hardware resets all volatile status registers, including the block protection bits, to their default values.
After a JEDEC hardware reset while the device is in any other mode than UDPD mode, the SRAM buffer keeps the values it had
prior to Reset, with the following exception: If the reset sequence is initiated during an update of the SRAM buffer, the contents
of the SRAM buffer may be corrupted. Hardware resets all volatile status registers, including the block protection bits, reset to
their default values.
All non-volatile status registers keep the value they had prior to reset, with the following exception: If the reset sequence is initiated
during a write to a non-volatile status register, the value of that register may be corrupted.
The device reverts to standard SPI mode after JEDEC hardware reset. Figure 22 below shows the timing for the JEDEC hardware
reset operation.
tRUDPD
Figure 22: JEDEC Standard Hardware Reset
5.13 CHIP SELECT RESTRICTIONS
The CS pin is used to start and end operations in the device. Once the CS pin is asserted and the operation begins, it can only
be deasserted on a byte boundary. If the CS pin is deasserted on a non-byte boundary, the operation is ignored.
For example, when executing the ABh command to exit power down mode, only the command is required. No address and data
are required to perform this operation. Therefore, only eight clocks are required to transfer the command. If the CS pin is raised
after the 8th clock (most significant bit of the command is transferred), hardware performs the operation. If the CS pin is raised
after the 9th or 10th clock (not a byte boundary), the operation is ignored and no ABh command is executed.
Similarly, if the ABh command is used to fetch the device ID, once the CS pin is asserted, 40 clock cycles are required: 8 clocks
for the command, 24 dummy clocks, and 8 clocks to shift out the device ID. If the CS pin is raised after the 40th clock, hardware
transfers the ID information, exits power down mode, and completes the operation. However, if the CS pin is raised on the 41st
or 42nd clock (not a byte boundary), the ID information is still returned as that occurred in clocks 32 - 40, but the device does not
exit power down mode.
Datasheet
5-Aug-2021
Revision F
41
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
5.14 HOLD / RESET FUNCTION
The AT25FF041A device provides a configurable HOLD/RESET pin. This pin can be configured to operate as either a HOLD pin,
or as a device RESET pin, by programming bit 7 (HOLD/RESET) of Status register 3. When this bit is cleared, the HOLD/RESET
pin functions as an active low HOLD pin. When this bit is set, the HOLD/RESET pin functions as a active low device RESET pin.
The HOLD/RESET function is only valid in the SPI and dual output mode of operation. When bit 1 (QE) of Status register 2 is set,
indicating the device is in either Quad Output, quad I/O mode, or XiP mode. In this case the HOLD/RESET functions are not
available and the pin functions as the I/O3 data pin.
When configured as a RESET pin, no commands are accepted while the pin is low and the device is in reset.
Configuring the pin for the HOLD function allows an operation to be paused, then resumed when the HOLD pin is deasserted.
Once the HOLD pin is asserted (with CS low), the HOLD function takes effect on the next falling edge of SCK. Conversely, once
the HOLD pin is deasserted, the HOLD function is removed on the next falling edge of SCK. Note that the CS pin must be low
for the entire time in which the HOLD operation is in progress.
The HOLD function can be used in situations where the clock and data signals of the AT25FF041A device are shared with other
external agents, allowing the device to share the bus with other high priority events such as interrupts or other events that need
immediate attention. Once the condition is resolved, the HOLD pin can be deasserted, allowing the operation to resume.
During the time the HOLD pin is asserted, the Serial Output (SO) pin is forced to the high impedance state. The state of the Serial
Input (SI) and Serial Clock (SCK) pins are ignored. Note that the CS pin must be low for the entire time in which the HOLD
operation is in progress.
Datasheet
5-Aug-2021
Revision F
42
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6
Status Registers
The device contains five Status registers (SR) described in the following subsections. The Status registers can be read to deter-
mine the device's ready/busy status, as well as the status of many other functions such as hardware locking and software
protection.
6.1 REGISTER STRUCTURE AND UPDATES
In the AT25FF041A device there are two sets of Status registers. One set is implemented in hardware and is accessed as Status
registers 1 - 5. These are known as volatile registers as they lose their data during a device reset. Also, the device keeps a copy
of the Status registers in memory. These are known as non-volatile registers because they are stored in the Flash and are not
affected by a device reset. On power up, the non-volatile contents of the memory are copied to the Status registers. See Section
6.2.2 for more information on volatile and non-volatile register types.
The AT25FF041A provides two methods for updating the Status Registers. When the Write to Status Register command is
preceded by the Volatile Status Register Write Enable (50h) command, only the flip-flops holding the Status register bits are
updated; the non-volatile memory dedicated to the Status registers is not updated. When the Write to Status Register command
is preceded with a Write Enable (06h) command, then both the flip-flops holding the Status register bits and the non-volatile
memory dedicated to the Status registers are updated. This concept is shown in Figure 23.
The main difference between these two commands is the time required to execute them. Accesses to memory are much slower
by default. So for the 50h command, the write is to the volatile Status registers only which is very fast. For the 06h command, the
write is not only to the Status registers, but also to non-volatile memory which is much slower.
50h
Status
Registers
06h
Power Up
Memory
Figure 23: AT25FF041A Register Structure
Datasheet
5-Aug-2021
Revision F
43
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.2 REGISTER ACCESSES
This section describes the various ways to access the AT25FF041A Status registers. The AT25FF041A incorporates five Status
registers. Each of these registers can be written or read using both the direct and indirect addressing methods as described in
Section 6.2.1. Also, the device supports both volatile and non-volatile registers as described in Section 6.2.2.
6.2.1 Direct and Indirect Addressing
The AT25FF041A device supports both direct and indirect addressing for accessing the Status registers. The indirect addressing
method can be used for all five Status registers, and the direct addressing for the first three Status registers. This means that
Status registers 4 - 5 can only be accessed using the indirect addressing method.
Historically, Dialog Semiconductor products have supported at most three Status registers. These registers have been accessed
using the direct addressing method, where every register has a specific command used to access it and perform read or write
operations. An example of these commands is as follows:
05h: Read Status Register 1
35h: Read Status Register 2
15h: Read Status Register 3
01h: Write Status Register 1
31h: Write Status Register 2
11h: Write Status Register 3
The above commands have been retained to provide backward compatibility with existing software. In addition to the direct
method, the AT25FF041A device also provides an indirect method. In the indirect method, a single command (65h) is used to
execute a read operation on all of the Status registers. Another command (71h) is used to execute a write operation on all of the
Status registers. Once the command is provided, an 8-bit address field is used to determine which register to access. The
encoding of the address field is shown in Table 12.
Table 12: Indirect Addressing of Status Registers
Command
Address
Action
01h
Read Status Register 1
02h
03h
04h
05h
01h
02h
03h
04h
05h
Read Status Register 2
Read Status Register 3
Read Status Register 4
Read Status Register 5
Write Status Register 1
Write Status Register 2
Write Status Register 3
Write Status Register 4
Write Status Register 5
65h
71h
Note that by using the indirect address method, an address width of 8 bits indicates that up to 256 registers can be accessed,
allowing for future expansion without requiring additional commands or associated hardware complexity.
Datasheet
5-Aug-2021
Revision F
44
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.2.2 Volatile and Non-Volatile Register Accesses
As shown in Figure 23, the AT25FF041A device supports both volatile and non-volatile register accesses. Volatile register ac-
cesses are to the Status registers implemented in hardware. Non-volatile register accesses are to the Status registers stored in
memory. During power-up, the contents of the registers in memory are copied to the hardware Status registers.
The preceding 50h or 06h commands determines if the Write Status Register command is to the volatile or non-volatile register set.
6.3 STATUS REGISTER 1
The following table shows the bit assignments for Status register 1.
Table 13: Status Register 1 Format
Bit #
Acronym
Name
Type
Default Description
The SRP0 bit works in conjunction with the SRP1 bit in
Status Register 1 and the WP pin to control write protec-
tion. Types of protection include software protection, hard-
ware protection, one-time programmable (OTP) protec-
tion, and power supply lock-down protection. See Table
15 for an encoding of these bits.
7
SRP0
Status Register Protect 0 R/W
0
The BPSIZE bit controls the size of the blocks protected
by the Block Protect Bits (BP2, BP1, BP0 in bits 4:2 of this
register). This bit is encoded as follows:
0: 64 kB block size
6
5
BPSIZE
Block Protect Size
R/W
R/W
0
1: 4 kB block size
The blocks can also be protected from the bottom up or
from the top down as described in the TB bit of this regis-
ter.
The TB bit controls the direction of the blocks to be pro-
tected by the Block Protect Bits (BP2, BP1, BP0 in bits 4:2
of this register). This bit is encoded as follows:
0: Protect from bottom up
TB
Top/Bottom
0
1: Protect from top down
The size of the protected blocks can also be selected as
described in the BPSIZE bit of this register.
The 3-bit Block Protect field provides write protection con-
trol and status. These bits are set using the Write Status
register 1 (01h) command. This field can be programmed
to protect all of the memory array, none of the memory
array, or a portion of the memory array. When that portion
of the memory is selected, it is protected from the Program
and Erase commands as described in the Memory Pro-
tection table.
4:2
BP2:0
Block Protect
R/W
000
The default is 3’b000 for this field, indicating that none of
the memory array is protected.
Datasheet
5-Aug-2021
Revision F
45
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 13: Status Register 1 Format (continued)
Bit #
Acronym
Name
Type
Default Description
The WEL bit indicates the current status of the internal
Write Enable Latch. When the WEL bit is in the logic “0”
state, the device does not accept any program, erase,
memory protection, or Write Status Register commands.
The WEL bit defaults to the logic “0” state after a device
power-up or reset.
This bit is encoded as follows:
0: Device is not write enabled (default).
1: Device is write enabled.
If the WEL bit is in the logic “1” state, it is not reset to a
logic “0” if an operation aborts due to an incomplete or
unrecognized command being clocked into the device be-
fore the CS pin is deasserted.
Write Enable Latch Sta-
tus
1
WEL
R
0
In order for the WEL bit to be reset when an operation
aborts prematurely, the entire command for a program,
erase, memory protection, or Write Status Register com-
mand must have been clocked into the device.
When the Write Enable (06h) command is executed, the
WEL bit is set. Conversely, when the Volatile Status Reg-
ister Write Enable (50h) command is executed, the WEL
bit is not set.
The RDY/BSY bit is used to determine whether or not an
internal operation, such as a program or erase, is in prog-
ress. To poll the RDY/BSY bit to detect the completion of
a program or erase cycle, new Status Register data must
be continually clocked out of the device until the state of
the RDY/BSY bit changes from a logic “1” to a logic “0”.
This bit is encoded as follows:
0
RDY/BSY
Ready/Busy Status
R
0
0: Device is ready.
1: Device is busy with an internal operation.
Datasheet
5-Aug-2021
Revision F
46
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.4 STATUS REGISTER 2
The following table shows the bit assignments for Status register 2.
Table 14: Status Register 2 Format
Bit #
Acronym
Name
Type
Default
Description
The SUSP bit is set by hardware and indicates that
the program or erase operation has been
suspended. This bit is set after software executes an
Erase/Program Suspend (75h) command. Hardware
clears this bit when it detects that any of the
following events have occurred:
7
SUSP
Suspend Status
R
0
Erase/Program Resume (7Ah) command
Hardware Reset, JEDEC Hardware Reset
66h / 99h Reset command
The CMPRT is used in conjunction with BPSIZE, TB,
and BP2:BP0 bits to provide additional memory array
protection. This bit is encoded as follows:
0: Current protection mechanism is unchanged
1: Current protection mechanism is reversed
6
CMPRT
Complement Protect
R/W
0
When this bit is set, unprotected areas of memory
become protected, and protected areas of memory
become unprotected. For example, when CMPRT =
0, a top 64 kB block can be protected while the rest
of the array is not; when CMP = 1, the same 64 kB
block would become unprotected while the rest of the
array becomes read-only.
The 3-bit SL3:SL1 field provides a One-Time-
Program (OTP) lock status of Security registers 1 -
3. This field is used by software to determine which
of these Security registers have been locked. Note
that Security register 0 is always locked as the value
is programmed by Dialog Semiconductor at the
factory.
The default state of SL[3:1] is 0, indicating that all
registers are unlocked. Each bit corresponds to a
Status register as follows:
SL3 (bit 5): Security register 3
SL2 (bit 4): Security register 2
SL1 (bit 3): Security register 1
5:3
SL3:SL1
Security Lock 3:1
R
000
Each bit in this field is set by hardware when the
most significant byte of the corresponding Security
register (the 128th byte) is programmed.
For example, when the most significant byte of
Security register 1 is set, bit 3 (SL1) of this field is
set. Conversely, when the most significant byte of
Security register 3 is set, bit 5 (SL3) of this field is
set. Each time a bit is set, it indicates that the
corresponding 128-Byte Security register has
become read-only permanently.
Datasheet
5-Aug-2021
Revision F
47
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 14: Status Register 2 Format (continued)
Bit #
Acronym
Name
Type
Default
Description
2
R
Reserved
R
0
Reserved
The QE bit enables Quad SPI and XiP
operation.This bit is encoded as follows:
0: QE mode is disabled
1: QE mode is enabled
When the QE bit is cleared (logic 0), the WP and
HOLD/RESET pins are enabled and perform their
respective functions.
When the QE bit is set (logic 1), the WP and HOLD/
RESET pins function as the IO2 and IO3 pins
respectively, and the WP and HOLD/RESET pins
functions are disabled.
1
QE
Quad Enable
R/W
0
This bit only pertains to the following commands:
6Bh: Quad Output Read
EBh: XiP Mode Read
E7h: XiP Mode Read with Double-word Aligned
Address
32h: Quad Output Page Program
77h: Set Burst with Wrap
94h: Quad I/O Read Manufacturer/Device ID
The SRP1 bit works in conjunction with the SRP0 bit
in Status Register 0 and the WP pin to control write
protection. Types of protection include software
protection, hardware protection, one-time
programmable (OTP) protection, and reset lock-
down protection. See Table 15 for an encoding of
these bits.
Status Register Protect
1
0
SRP1
R/W
0
Datasheet
5-Aug-2021
Revision F
48
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 15 shows the operation of the SRP[1:0] volatile Status register bits during normal operation.
Table 15: Status Register Protection During Normal Operation
SRP1
SRP0
SRLOCK
WP
Type of Protection
Description
When both the SRP0 and SRP1 bits are 0, the
Status registers can be written by executing a
Software Protected
(protectioniscontrolledby Write Status Register command (01h, 31h, 11h,
the CMPRT, BPSIZE, TB, 71h) and setting the WEL bit of this register. Note
0
0
x
x
BP[2:0], or WPS bits)
that the WP pin has no meaning during this type
of operation.
Hardware Protected
(protection is controlled
by the WP pin)
When the SRP[1:0] bits are 0, 1 respectively, and
the WP pin is low, the registers are hardware pro-
tected and cannot be written to.
When the SRP[1:0] bits are 0, 1 respectively, and
the WP pin is high, the registers are not hardware
protected and can be written to by executing a
Write Status Register command (01h, 31h, 11h,
71h) and setting the WEL bit of this register.
0
0
1
1
x
x
0
1
Hardware Unprotected
(protectioniscontrolledby
the CMPRT, BPSIZE, TB,
BP[2:0], or WPS bits)
When the SRP[1:0] bits are 1, 0 respectively, the
Status registers are write protected and cannot be
written until the device is reset (caused by a pow-
er-cycle, hardware reset, or software reset). After
reset, hardwarechangesthestateoftheSRP[1:0]
bits as shown in Table 16.
1
0
x
x
Reset Lockdown
When the SRP[1:0] bits are 1,1 respectively, and
the SRLOCK bit is 0, the Status registers are write
protected and cannot be written until the device is
reset (caused by a power-cycle, hardware reset
or software reset). After reset, hardware changes
the state of SRP[1:0] bits as shown in Table 16.
When the SRP[1:0] bits are 1,1 respectively, and
the SRLOCK bit is 1, the Status registers are per-
manently write protected.
1
1
1
1
0
1
x
x
Reset Lockdown
OTP
Table 16 shows the behavior of the SRP1 and SPR0 bits after a reset condition.
Table 16: Status Register Protection During Reset
Volatile Register
Bits
Non-Volatile Memory Bits
Type of Protection Description
SRP1
SRP0
SRLOCK
SRP1
SRP0
The reset operation maintains the volatile
SRP1 and SRP0 at 0,0.
0
0
x
Software Protected
Hardware Protected
Reset Lockdown
Reset Lockdown
0
0
The reset operation maintains the volatile
SRP1 and SRP0 at 0,1.
0
1
1
1
0
1
x
x
0
0
0
0
1
0
1
The reset operation changes the volatile
SRP1 and SRP0 bits to 0,0.
The reset operation changes the volatile
SRP1 and SRP0 bits to 0,1.
The reset operation maintains the volatile
SRP1 and SRP0 at 1,1. This makes the
Status registers permanently write protected.
One-Time Program
(OTP)
1
1
1
1
1
Datasheet
5-Aug-2021
Revision F
49
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.5 STATUS REGISTER 3
The following table shows the bit assignments for Status register 3.
Table 17: Status Register 3 Format
Bit #
Acronym
Name
Type
Default
Description
Dialog Semiconductor provides a variety of packages
for the AT25FF041A as shown in Section 2. Each of
these packages provides a dedicated HOLD/RESET pin
that can be configured as a RESET pin, or as a HOLD
pin, depending on the programming of this bit. This bit is
encoded as follows:
HOLD/
RESET
HOLD or RESET
Function
7
R/W
0
0: HOLD function is enabled
1: RESET function is enabled
Note that this pin can only be configured as HOLD or
RESET when the QE bit (see bit 1 of Status register 2) is
cleared (logic 0). If the QE bit is set, the pin functions as
a dedicated data pin and the HOLD/RESET functionality
is disabled.
The DRV1 and DRV0 bits are used to determine the
output driver strength during read operations. The driver
strength is automatically adjusted with VCC level. The
driver strength is encoded as following:
6:5
4:3
DRV1:0
Drive Level
Reserved
R/W
011
00: Reserved
01: 100% (increase 1.66X at low VCC)
10: 66% (increase 2X at low VCC)
11: 33% (increase 3X at low VCC)
R
R
0
Reserved
The WPS bit selects the Write Protect scheme. This bit
is encoded as follows:
0: The AT25FF041A uses a combination of CMPRT,
BPSIZE, TB, and BP[2:0] bits in Status register 1 to
protect a specific area of the memory array.
1: The AT25FF041A uses the individual block locks to
protect any individual block. The default value for all
individual block lock bits is 1 upon device power on or
after reset.
Write Protection
Select
2
WPS
R/W
0
When this bit is set, software uses the Block Lock (36h)
and Block Unlock (39h) commands to lock and unlock
blocks of memory.
For more information on this functionality, see Section
5.8, Memory Protection.
1:0
R
Reserved
R
0
Reserved
1 Default driver strength was used for device test and characterization. In order to achieve optimal performance in user system, it is recommended to adjust
driver strength setting to match user system load under application specific environmental conditions.
Datasheet
5-Aug-2021
Revision F
50
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.6 STATUS REGISTER 4
The following table shows the bit assignments for Status register 4.
Table 18: Status Register 4 Format
Bit #
Acronym
Name
Type
Default
Description
This bit is used in conjunction with the Deep Power
Down command (B9h) to place the device into either
Deep Power Down mode, or Ultra Deep Power Down
mode. This bit is encoded as follows:
0: Execution of the B9h command invokes Ultra Deep
Power Down mode. This is the same as executing the
UDPD command 79h. In this mode the SRAM buffer
contents are not preserved.
7
PDM
Power Down Mode
R/W
0
1: Execution of the B9h command invokes Deep Power
Down mode. In this mode the SRAM buffer contents are
preserved.
In both modes, the ABh command is required to exit the
corresponding Power Down mode. Simply toggling the
CS pin does not result in exiting from Power Down
mode. For more information see Section 5.9, Power
Down Considerations.
The SPM bit indicates whether the device is in the Byte/
Page Program mode or the Sequential Program Mode.
The default state after power-up or device reset is the
Byte/Page Program mode.
This bit is encoded as follows:
0: Byte/Page Programming Mode (default)
1: Sequential Programming Mode entered
Sequential Pro-
gram Mode Status
6
SPM
R
0
If this bit is 1, the address is only required for the first
transfer of the sequential operation. Therefore, on the
first transfer, command, address, and data are required.
If there are subsequent operations, the address is not
required. Software need only supply the command and
data (on a write).
This bit is set by hardware whenever an error occurs
during a program operation.
5
4
PE
EE
Program Error
Erase Error
R
R
0
0
This bit is set by hardware whenever an error occurs
during an erase operation.
Datasheet
5-Aug-2021
Revision F
51
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 18: Status Register 4 Format (continued)
Bit #
Acronym
Name
Type
Default
Description
This bit determines whether a command is required
each time a read operation is executed using the E7h or
EBh (Quad Read) commands. This bit is encoded as
follows:
0: XiP mode (continuous read mode) is disabled
1: XiP mode (continuous read mode) is enabled
If this bit is set and either the E7h or EBh commands are
executed, the command is only required for the first
access (1-4-4). In this case, the command is transferred
on the SI pin, and the address and data are transferred
on the SI (I/O0), SO (I/O1), WP (I/O2), and HOLD (I/O3)
pins. Subsequent accesses require only address and
data (0-4-4).
3
XiP
XiP Mode Select
R/W
0
Note that if either this bit or the QE bit (see bit 1 of
Status register 2) is 0, the device can never be placed
into 0-4-4 mode, and a command is required for each
access.
This 3-bit field maps to the W6:W4 bits of the Set Burst
Wrap command (77h) to determine the burst wrap
status and the wrap length. See Section 7.13 for more
information on the Set Burst Wrap command and an
encoding of this field.
Burst Wrap Set-
tings
2:0
BWS[2:0]
R
001
Datasheet
5-Aug-2021
Revision F
52
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
6.7 STATUS REGISTER 5
The following table shows the bit assignments for Status register 5.
Table 19: Status Register 5 Format
Bit #
Acronym
Name
Type
Default
Description
Hardware sets this bit when the user executes the
Status Register Lock (6Fh) command, immediately
followed by two verification bytes, 4Dh and 67h. Once
this action occurs, the Status registers can be
permanently locked.
Status Register
Lock
7
SRLOCK
R
0
This field indicates the number of dummy clocks to be
inserted between the address and data transactions for
the EBh and E7h commands. Note that the dummy
clocks include the 2 clocks required to clock in the
M[7:0] bits.
6:4
DC[2:0]
Dummy Clocks
R/W
000
000: 2 clocks
001: 4 clocks
010: 6 clocks
011: 8 clocks
100: 10 clocks
101 - 111: Reserved
This bit is set by hardware whenever an erase operation
is suspended.
3
2
ES
PS
Erase Suspend
R
R
0
0
This bit is set by hardware whenever a program
operation is suspended.
Program Suspend
The TERE bit is used to enable or disable the Terminate
command. This bit is encoded as follows:
0: Terminate command is disabled
1: Terminate command is enabled
When the TERE bit is cleared (the default state after
power-up), the Terminate command is disabled and any
attempts to reset the device using the Terminate
command are ignored. When the TERE bit is set, the
Terminate command is enabled.
1
TERE
Terminate Enable
R/W
0
The TERE bit retains its state as long as power is
applied to the device. Once set, the TERE bit remains in
that state until it is modified using the Write Status
Register Byte 5 command or until the device has been
power cycled.
Setting the DWA bit indicates that the devices adheres
to double-word aligned addressing. This bit is only used
when the EBh (XiP DWA Read) command is executed
and is encoded as follows:
Doubleword
Aligned
0
DWA
R/W
0
0: Double-word addressing is disabled
1: Double-word addressing is enabled
When this bit is set, the lower 2 bits of address are
ignored and assumed to be 00.
Datasheet
5-Aug-2021
Revision F
53
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7
Commands and Addressing
A valid command 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 command on the SPI bus. Following the command, information such as address and
data bytes would then be clocked out by the host controller. All command, address, and data bytes are transferred with the most-
significant bit (MSB) first. An operation is ended by deasserting the CS pin.
Commands not supported by the AT25FF041A are ignored by the device and no operation is started. The device continues to
ignore any data presented on the SI pin until the start of the next operation (CS pin being deasserted and then reasserted). Also,
if the CS pin is deasserted before the complete command and address information are sent to the device, then no operation is
performed and the device simply returns to the idle state and waits for the next operation.
Depending on the command, up to three bytes of information may be required, representing address bits A23 - A0. Since the
upper address limit of the AT25FF041A memory array is 07FFFFh, address bits A23 - A19 are always ignored by the device.
Table 20: Command Listing
Transfer Type 1
Command
Address
Dummy
Data
Bytes 2
Sct in
Doc.
Hex
Cmd
Command Name
Mode Format Bytes Clocks Bytes Clocks Bytes Clocks
Clocks
Read Commands
Read Array
7.1
7.1
03h
0Bh
SPI
SPI
1-1-1
1-1-1
1
1
8
8
3
3
24
24
0
1
0
8
Var.
Var.
Var. x 8
Var. x 8
Fast Read Array
Dual
Dual Output Read Array
Quad Output Read Array
7.2
7.3
3Bh
6Bh
1-1-2
1-1-4
1
1
8
8
3
3
24
24
1
1
8
8
Var.
Var.
Var. x 4
Var, x 2
Output
Quad
Output
XiP Mode Read Array
(initial transfer)
7.4
7.4
7.4
EBh
---
XiP
XiP
XiP
1-4-4
0-4-4
1-4-4
1
0
1
8
0
8
3
3
3
6
6
6
Var. Var. x 2
Var. Var. x 2
Var. Var. x 2
Var.
Var.
Var.
Var. x 2
Var. x 2
Var. x 2
XiP Mode Read Array
(subsequent transfers)
XiP Mode Read Array -
DWA addr (initial transfer)
E7h
XiP Mode Read Array -
DWA addr, subsequent
transfers
7.4
---
XiP
0-4-4
0
0
3
6
Var. Var. x 2
Var.
Var. x 2
Program/Erase Commands
Block Erase (4 Kbytes)
Block Erase (32 Kbytes)
Block Erase (64 Kbytes)
7.5
7.5
7.5
20h
52h
D8h
SPI
SPI
SPI
1-1-0
1-1-0
1-1-0
1
1
1
8
8
8
3
3
3
24
24
24
0
0
0
0
0
0
0
0
0
0
0
0
7.6
7.6
60h
C7h
SPI
SPI
1-0-0
1-0-0
1
1
8
8
0
0
0
0
0
0
0
0
0
0
0
0
Chip Erase
Byte/Page Program
(1 - 256 bytes)
Var.
7.7
7.8
7.8
02h
SPI
SPI
SPI
1-1-1
1-1-1
1-0-1
1
1
1
8
8
8
3
3
0
24
24
0
0
0
0
0
0
0
Var. x 8
(1 - 256)
Sequential Program
ADh/
AFh
1
1
8
8
Mode 3 (first command)
Sequential Program Mode
(subsequent commands)
ADh/
AFh
Datasheet
5-Aug-2021
Revision F
54
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 20: Command Listing (continued)
Transfer Type 1
Command
Address
Dummy
Data
Bytes 2
Sct in
Doc.
Hex
Cmd
Command Name
Mode Format Bytes Clocks Bytes Clocks Bytes Clocks
Clocks
Dual Output Byte/Page
Program
Dual
Var.
7.9
A2h
1-1-2
1-1-4
1
1
8
8
3
3
24
24
0
0
0
0
Var. x 4
Output
(1 - 256)
Quad Output Byte/Page
Program
Quad
Output
Var.
(1 - 256)
7.10 32h
Var. x 2
75h/
7.11
Erase/Program Suspend
Erase/Program Resume
Set Burst with Wrap
SPI
SPI
1-0-0
1-0-0
1-4-4
1
1
1
8
8
8
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
2
B0h
7Ah/
7.12
D0h
Quad I/
O
7.13 77h
3 4
1 5
Protection Commands
Write Enable
7.14 06h
7.15 04h
SPI
SPI
1-0-0
1-0-0
1
1
8
8
0
0
0
0
0
0
0
0
0
0
0
0
Write Disable
Volatile Status Register
Write Enable
7.16 50h
SPI
1-0-0
1
8
0
0
0
0
0
0
Individual Block Lock
7.17 36h
7.18 39h
SPI
SPI
1-1-0
1-1-0
1
1
8
8
3
3
24
24
0
0
0
0
0
0
0
0
Individual Block Unlock
3Ch/
7.19
1 6
8
Read Block Lock
SPI
1-1-1
1
8
3
24
0
0
3Dh
Global Block Lock
7.20 7Eh
7.21 98h
SPI
SPI
1-0-0
1-0-0
1
1
8
8
0
0
0
0
0
0
0
0
0
0
0
0
Global Block Unlock
Security Register Commands
Program OTP Security
Register
Var.
7.22 9Bh
SPI
SPI
1-1-1
1-1-1
1
1
8
8
3 7
3 7
24
24
0
1
0
8
Var. x 8
Var. x 8
(1 - 128)
Read OTP Security
Register
Var.
(1 - 128)
7.23 4Bh
Status Register Commands
Read Status Register 1
Read Status Register 2
Read Status Register 3
Read Status Register 4
Read Status Register 5
Write Status Register 1
Write Status Register 2
Write Status Register 3
Write Status Register 4
Write Status Register 5
7.24 05h
7.24 35h
7.24 15h
7.25 65h
7.25 65h
7.26 01h
7.26 31h
SPI
SPI
SPI
SPI
SPI
SPI
SPI
SPI
SPI
SPI
1-0-1
1-0-1
1-0-1
1-1-1
1-1-1
1-0-1
1-0-1
1-0-1
1-1-1
1-1-1
1
1
1
1
1
1
1
1
1
1
8
8
8
8
8
8
8
8
8
8
0
0
0
1
1
0
0
0
1
1
0
0
0
8
8
0
0
0
8
8
0
0
0
1
1
0
0
0
0
0
0
0
0
8
8
0
0
0
0
0
1
1
8
8
8
8
8
8
8
8
8
8
1
1
1
1 8
1
7.26
11h
1
7.27 71h
7.27 71h
1
1
Datasheet
5-Aug-2021
Revision F
55
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 20: Command Listing (continued)
Transfer Type 1
Mode Format Bytes Clocks Bytes Clocks Bytes Clocks
Command
Address
Dummy
Data
Bytes 2
Sct in
Doc.
Hex
Cmd
Command Name
Clocks
Var. 10
(1 - 5)
1 9
8
1
8
Var. x 8
Read Status Registers
7.25 65h
SPI
1-1-1
1
8
Write Status Registers
Status Register Lock
Power Down Commands
Deep Power-Down 11
7.27 71h
7.28 6Fh
SPI
SPI
1-1-1
1-0-1
1
1
8
8
1 9
0
8
0
0
0
0
0
1
2
8
16
7.29 B9h
SPI
SPI
1-0-0
1-0-0
1
1
8
8
0
0
0
0
0
0
0
0
0
0
0
0
79h/
7.31
Ultra Deep Power-Down 12
B9h
Resume from Deep
Power-Down
7.30 ABh
7.30 ABh
7.30 ABh
SPI
SPI
SPI
1-0-0
1-1-1
1-0-0
1
1
1
8
8
8
0
3
0
0
24
0
0
0
0
0
0
0
0
1
0
0
8
0
Resume from Deep
Power-Down with Device
ID
Resume from Ultra Deep
Power-Down
Reset Commands
Enable Reset
Reset Device
Terminate
7.32 66h 13 SPI
7.32 99h 13 SPI
1-0-0
1-0-0
1-0-1
1
1
1
8
8
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
8
7.33 F0h
SPI
Manufacturer/Device Commands
Manufacturer/Device ID
Manufacturer/Device ID
7.34 90h
SPI
1-1-1
1-4-4
1-0-1
1
1
1
8
8
8
3
3
0
24
6
0
1
0
0
2
0
2 14
2 14
5 15
16
4
Quad I/
O
7.35 94h
7.36 9Fh
JEDEC ID
SPI
0
40
Miscellaneous Commands
Read SFDP
7.37 5Ah
SPI
1-1-1
1
8
3
24
1
8
Var. 16 Var. x 8
1. Indicates command, address, and data, and the number of pins each type is driven on. For example, 1-1-2 indicates that the command is driven on one pin
(SI), address is driven on one pin (SI), and data is driven on two pins (SI and SO).
2. Var = Variable
3. For the initial transfer of the ADh/AFh command, the command, address, and data are required. For all subsequent command, only the command and data
are necessary. The address field is not required and increments automatically within the device.
4. For the 77h command, 24 bits are transferred in the address field, but these bits are don’t care and are not used in the operation.
5. For the 77h command, the data byte consists of wrap bits W[7:0]. Bits 6:4 of this value are the only valid bits of the byte and are used to set the wrap mode.
6. For the 3Ch/3Dh command, the data byte returned provides the lock status for the 4 kB block relative to the address provided.
7. For the 9Bh and 4Bh commands, only the lower 9 bits of address (A[8:0]) are valid. Address bits 23:9 are don’t care.
8. For compatibility with legacy devices, command 01h can also be used with 2 bytes of data. In such case, the second byte is written to Status Register 2.
9. The 65h and 71h commands require only one byte of address.
10. For the 65h command, if the initial value in the address field is 01h, pointing to SR1, all of the Status registers can be read in one operation as long as the
CS pin is held low. Once the data for SR1 is fetched, hardware increments the address automatically and fetch the contents of SR2, etc., until all five registers
have been read.
11. Deep Power-Down mode can be entered by executing the B9h command with bit 7 (PDM) of Status Register 4 set.
12. Ultra Deep Power-Down mode can be entered by either executing the 79h command, or by executing the B9h command with bit 7 (PDM) of Status Register
Datasheet
5-Aug-2021
Revision F
56
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
4 cleared.
13. The 66h and 99h commands are used together and form back-to-back 1-0-0 sequences on the bus.
14. For the 90h and 94h commands, two data bytes are output. The first byte is the manufacturer ID, and the second byte is the device ID.
15. For the 9Fh command, five bytes are output. First byte is the manufacturer ID, second byte is Device ID 1, third byte is Device ID 2, fourth byte is the extended
string length, and the fifth byte is the extended string value.
16. For the 5Ah command, hardware outputs the data associated with the address provided, then increments the address automatically and continues to output
successive locations as long as the CS pin remains asserted. To read the entire SFDP value, software must program the initial address as 000000h to access
the first address, the leave CS asserted until the entire SFDP is read out.
7.1 READ ARRAY (03H, 0BH)
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 time one byte of data is output by the device.
Two commands (0Bh and 03h) can be used to read the memory array. The use of each command depends on the maximum
clock frequency that is used to read data from the device. The 0Bh command can be used at any clock frequency up to the
maximum specified by fSCK, and the 03h command can be used for lower frequency read operations up to the maximum specified
by fRDLF
.
7.1.1 Transfer Format
The 03h/0Bh command follows the 1-1-1 transfer format described in Section 5.2, where the command and address are trans-
ferred on the SI pin, and data is transferred on the SO pin. See Figure 7 for timing diagram of a 1-1-1 transfer showing the toggling
of external bus signals for a read operation without dummy bytes. Figure 8 shows a read operation with dummy bytes.
7.1.2 Transfer Sequence
To perform the Read Array command, the CS pin is asserted and the information transferred as follows:
Assert the CS pin.
The appropriate command (0Bh or 03h) is clocked into the device. Eight clocks are required to transfer the command. The
most significant bit of the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Following the three address bytes, an additional dummy byte must be clocked into the device if the 0Bh command is used.
Data is output on the SO pin. Each byte transfer requires eight clock cycles. The number of bytes transferred is determined
by software. The transfer can be anywhere from a single byte to the entire memory array. The most significant bit of each
data byte is transferred first.
Deasserting the CS pin terminates the read operation and puts 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.
See Table 20 for more information on the transfer sequence for this command.
When the last byte (07FFFFh) of the memory array has been read, the device loops back and continues reading at the beginning
of the array (000000h). No delays are incurred when wrapping around from the end of the array to the beginning of the array.
Datasheet
5-Aug-2021
Revision F
57
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.2 DUAL OUTPUT READ ARRAY (3BH)
The Dual Output Read Array command is similar to the standard Read Array (03h/0Bh) command and 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 has been
specified. Unlike the standard Read Array command, however, the Dual Output Read Array command allows two bits of data to
be clocked out of the device on every clock cycle, rather than just one.
7.2.1 Transfer Format
The 3Bh command follows the 1-1-2 transfer format described in Section 5.3, where the command and address are transferred
on the SI pin, and output data is transferred on the SI and SO pin. To facilitate this transfer, hardware switches the SI pin to an
output as soon as the command has been decoded and the address transferred. See Figure 10 for a timing diagram of this
command.
7.2.2 Transfer Sequence
To perform the Dual Output Read Array operation, the CS pin is asserted and the information transferred as follows:
The 3Bh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Following the three address bytes, an additional dummy byte must be clocked into the device. This requires eight clock
cycles to complete.
Data is output on the SI and SO pins. As a result, each byte transfer requires four clock cycles, half that of the 03h/0Bh
commands. The data is always output with the most significant bit of the byte transferred first. The number of bytes trans-
ferred is determined by software. The transfer can be anywhere from a single byte to the entire memory array. The data is
driven onto the bus as follows:
- 1st data clock: bit 7 is output on the SO pin
- 1st data clock: bit 6 is output on the SI pin
- 2nd data clock: bit 5 is output on the SO pin
- 2nd data clock: bit 4 is output on the SI pin
- 3rd data clock: bit 3 is output on the SO pin
- 3rd data clock: bit 2 is output on the SI pin
- 4th data clock: bit 1 is output on the SO pin
- 4th data clock: bit 0 is output on the SI pin
- Subsequent bytes are output with each additional 4 clocks. The sequence above continues with each byte of data being
output after every four clock cycles.
Deasserting the CS pin terminates the read operation and puts the SO and SI pins into a high-impedance state. The CS pin
can be deasserted at any time and does not require that a full byte of data be read.
When the last byte (07FFFFh) of the memory array has been read, the device continues reading from the beginning of the array
(000000h). No delays are incurred when wrapping around from the end of the array to the beginning of the array.
7.3 QUAD OUTPUT READ ARRAY (6BH)
The Quad Output Read Array command is similar to the Dual Output Read Array command, except that the Quad Output Read
Array command allows four bits of data to be clocked out of the device on every clock cycle, rather than just one or two. Note that
the Quad Enable bit (QE) in Status Register 2 (SR2) must be set to enable this command. The Quad Output Read Array command
can be used at any clock frequency, up to the maximum specified by fSCK
.
7.3.1 Transfer Format
The 6Bh command follows the 1-1-4 transfer format described in Section 5.4, where the command and address are transferred
on the SI pin, and data is transferred on the HOLD, WP, SO, and SI pins. See Figure 14 for a timing diagram of this transaction.
Datasheet
5-Aug-2021
Revision F
58
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.3.2 Transfer Sequence
To perform the Quad Output Read Array operation, the CS pin is asserted and the information transferred as follows:
The 6Bh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Following the three address bytes, an additional dummy byte must be clocked into the device. This requires eight clock
cycles to complete.
Following transfer of the dummy byte, hardware switches the HOLD, WP, and SI pins to outputs.
Data is output on the HOLD, WP, SO, and SI pins. As a result, each byte transfer requires two clock cycles, one-fourth
that of the 03h/0Bh commands. The data is always output with the most significant bit of the byte transferred first. The num-
ber of bytes transferred is determined by software. The transfer can be anywhere from a single byte to the entire memory
array. Each data byte is shifted out of the device as follows:
- First data clock: bit 7 is output on the HOLD pin
- First data clock: bit 6 is output on the WP pin
- First data clock: bit 5 is output on the SO pin
- First data clock: bit 4 is output on the SI pin
- Second data clock: bit 3 is output on the HOLD pin
- Second data clock: bit 2 is output on the WP pin
- Second data clock: bit 1 is output on the SO pin
- Second data clock: bit 0 is output on the SI pin
Deasserting the CS pin terminates the read operation and puts the HOLD, WP, SO, SI pins into a high-impedance state.
The CS pin can be deasserted at any time and does not require that a full byte of data be read.
When the last byte (07FFFFh) of the memory array has been read, the device continues reading from the beginning of the array
(000000h). No delays are incurred when wrapping around from the end of the array to the beginning of the array.
Datasheet
5-Aug-2021
Revision F
59
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.4 XIP READ (EBH), XIP READ WITH DOUBLE-WORD ALIGNED ADDRESS (E7H)
The XiP Read command (EBh) is similar to the Quad Output Read Array command, except that four bits of address are clocked
into the device on every clock cycle, rather than just one. The E7h command is similar to the EBh command but works only on
double-word aligned (DWA) addresses. As such, the E7h command ignores address bits A[1:0] and internally assumes that these
two bits are always 2'b00. This allows us to run the E7h command at faster clock speeds or fewer dummy clock cycles compared
to the EBh command.
The EBh command can operate in either DWA mode or non-DWA mode depending on the state of the DWA bit in Status Register
5. See Section 6.7, Status Register 5 for more information.
7.4.1 Transfer Format
The initial EBh/E7h command follows the 1-4-4 transfer format described in Section 5.6, where the command is transferred on
the SI pin, and the address and data are transferred on the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins. See Figure 15 for
a timing diagram of this command.
Subsequent EBh/E7h commands follow the 0-4-4 transfer format described in Section 5.6, where the address and data are
transferred on the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins. No command transfer is required. See Figure 16 for a timing
diagram of this command.
7.4.2 Mode Bits
The EBh and E7h commands follow the 1-4-4 and 0-4-4 transfer formats as described above. During the initial transfer, an 8-bit
mode field is transferred immediately following the last address byte; it is decoded by hardware to determine if the device is placed
into XiP continuous read mode. If so, then subsequent transfers do not require the command field, resulting in a 0-4-4 transfer
type. This mode increases performance by saving 8 clocks cycles per transfer. For more information on this mode, see Section
5.6, XiP Mode Operation.
7.4.3 Transfer Sequence — Initial Transfer
To perform the initial XiP Mode Read operation, the CS pin is asserted and the information transferred as follows:
The EBh/E7h command is clocked into the device. Eight clocks are required to transfer the command. The most significant
bit of the command is transferred first. This field is transferred on the SI pin.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 6 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Each address byte is shifted out of the device as follows:
- First clock: address bit 23 is input on the HOLD pin
- First clock: address bit 22 is input on the WP pin
- First clock: address bit 21 is input on the SO pin
- First clock: address bit 20 is input on the SI pin
- Second clock: address bit 19 is input on the HOLD pin
- Second clock: address bit 18 is input on the WP pin
- Second clock: address bit 17 is input on the SO pin
- Second clock: address bit 16 is input on the SI pin
- Third and fourth clocks: A15:A8 are shifted in same as above
- Fifth and sixth clocks: A7:A0 are shifted in same as above
Following the three address bytes, a programmable number of dummy bytes must be clocked into the device. See the Sec-
tion 7.4.5 below for more information. Note that the Mode bits are treated as part of the dummy bytes and must be clocked
in to the device.
Following transfer of the dummy bytes, hardware switches the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins to out-
puts.
Datasheet
5-Aug-2021
Revision F
60
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Data is output on the HOLD, WP, SO, and SI pins. As a result, each byte transfer requires two clock cycles. The data is
always output with the most significant bit of the byte transferred first. Each data byte is shifted out of the device as follows:
- First clock: bit 7 is output on the HOLD pin
- First clock: bit 6 is output on the WP pin
- First clock: bit 5 is output on the SO pin
- First clock: bit 4 is output on the SI pin
- Second clock: bit 3 is output on the HOLD pin
- Second clock: bit 2 is output on the WP pin
- Second clock: bit 1 is output on the SO pin
- Second clock: bit 0 is output on the SI pin
Deasserting the CS pin terminates the read operation and puts the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins into
a high-impedance state. The CS pin can be deasserted at any time and does not require that a full byte of data be read.
When the last byte (07FFFFh) of the memory array has been read, the device continues reading from the beginning of the
array (000000h). No delays are incurred when wrapping around from the end of the array to the beginning of the array.
7.4.4 Transfer Sequence — Subsequent Transfers
To perform subsequent XiP Mode Read operations, the CS pin is asserted and the information transferred as follows:
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 6 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
The address is transferred on the bus in the same manner described in Section 7.4.3 above.
Following the three address bytes, a programmable number of dummy bytes must be clocked into the device. See Section
7.4.5 below for more information. Note that the Mode bits are treated as part of the dummy bytes and must be clocked in to
the device.
Data is output on the HOLD, WP, SO, and SI pins. As a result, each byte transfer requires two clock cycles. The data is
always output with the most significant bit of the byte transferred first. Data is shifted out onto the bus in the same manner
described in Section 7.4.3 above.
Deasserting the CS pin terminates the read operation and puts the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins into
a high-impedance state. The CS pin can be deasserted at any time and does not require that a full byte of data be read.
When the last byte (07FFFFh) of the memory array has been read, the device continues reading from the beginning of the array
(000000h). No delays are incurred when wrapping around from the end of the array to the beginning of the array.
7.4.5 Programmable Number of Dummy Clocks
The number of dummy clocks required differs depending on the frequency, the type of command being performed, and the state
of bit 0 (DWA) of Status register 5. This relationship is shown in the table below. The number of Dummy clocks is set using bits
6:4 (DC[2:0]) of Status register 5. See Section 6.7, Status Register 5 for more information. Note that the number of dummy clocks
includes the 2 SCK clock periods required to clock in the M[7:0] mode bits.
Datasheet
5-Aug-2021
Revision F
61
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 21: Frequency and Number of Dummy Clocks Based on Command Type in Non-Wrap Mode (default)
XiP enabled (044) XiP enabled (044) XiP disabled (144) XiP disabled (144)
DWA
Bit
Dummy
Clocks
Cmd
DC[2:0]
(1.65 V - 3.6 V)
(2.7 V - 3.6 V)
(1.65 V - 3.6 V)
(2.7 V - 3.6 V)
SCK Frequency (MHz)
0
0
0
0
0
1
1
1
1
1
x
x
x
x
x
000
001
010
011
100
000
001
010
011
100
000
001
010
011
100
2
4
25
45
30
55
25
45
30
45
6
75
85
60
60
8
104
104
45
108
108
55
85
90
10
2
108
65
108
65
EBh
4
108
120
120
120
45
108
133
133
133
50
108
120
120
120
50
133
133
133
133
50
6
8
10
2
4
96
96
104
108
108
108
104
120
120
120
E7h
6
104
108
108
120
120
120
8
10
As shown in the above table, the EBh command can operate on both doubleword-aligned (DWA= 1) and non-doubleword-aligned
(DWA = 0) addresses. The E7h command works only on doubleword aligned addresses, so the state of the DWA bit is ignored.
Datasheet
5-Aug-2021
Revision F
62
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 22: Frequency and Number of Dummy Clocks Based on Command Type in Wrap Mode (77h)
XiP enabled (044) XiP enabled (044) XiP disabled (144) XiP disabled (144)
DWA
Bit
Dummy
Clocks
Cmd
DC[2:0]
(1.65 V - 3.6 V)
(2.7 V - 3.6 V)
(1.65 V - 3.6 V)
(2.7 V - 3.6 V)
SCK Frequency (MHz)
0
0
0
0
0
1
1
1
1
1
x
x
x
x
x
000
001
010
011
100
000
001
010
011
100
000
001
010
011
100
2
4
25
40
25
40
25
45
70
85
85
50
85
90
96
96
45
85
85
90
90
30
50
6
60
60
85
8
75
75
96
10
2
96
108
40
104
50
EBh
40
4
75
75
96
6
100
108
108
40
120
120
120
40
100
100
104
50
8
10
2
4
80
80
96
E7h
6
100
108
108
120
120
120
104
104
104
8
10
As shown in the above table, the EBh command can operate on both doubleword aligned (DWA = 1) and non-doubleword aligned
(DWA = 0) addresses. The E7h command works only on doubleword aligned addresses, so the state of the DWA bit is ignored.
7.5 BLOCK ERASE (20H, 52H, D8H)
A block of 4-, 32-, or 64-kBytes (kB) can be erased (all bits set to the logical “1” state) in a single operation by using one of three
different forms of the Block Erase command.
The 20h command is used for a 4 kB erase
The 52h command is used for a 32 kB erase
The D8h command is used for a 64 kB erase
7.5.1 Command Prerequisites
Before a Block Erase command can be issued, the Write Enable (06h) command must have been previously issued to the device
to set the WEL bit of Status Register 1.
7.5.2 Transfer Format
The 20h/52h/D8h command follows the 1-1-0 transfer format described in Section 5.2, where the command and address are
transferred on the SI pin. The address represents the block to be erased. No data is transferred for this command.
7.5.3 Transfer Sequence
To perform the Block Erase operation, the CS pin is asserted and the information transferred as follows:
The appropriate command is clocked into the device. Eight clocks are required to transfer the command. The most signifi-
cant bit of the command is transferred first.
Three address bytes are clocked in to specify the address location within the 4-, 32-, or 64-kByte block to be erased. A
total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Datasheet
5-Aug-2021
Revision F
63
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
See Table 20 for more information on the transfer sequence for this command.
7.5.4 Erase Operation
When the CS pin is deasserted, the device starts the erase of the appropriate block. The erasing of the block is internally self-
timed and takes place in time tBLKE. Since the Block Erase command erases a region of bytes, the lower order address bits do
not need to be decoded by the device. Depending on the command issued, the address is treated as follows:
For a 4 kB erase, address bits A11 - A0 are ignored by the device and their values can be either a logical “1” or “0”.
For a 32 kB erase, address bits A14 - A0 are ignored by the device.
For a 64 kB erase, address bits A15 - A0 are ignored by the device.
7.5.5 Command Status
While the device is executing, a successful erase cycle, bit 0 in Status Register 1 (SR1) indicates that the device is busy. For
faster throughput, it is recommended that Status Register 1 be polled rather than waiting the tBLKE time to determine if the device
has finished erasing. At some point before the erase cycle completes, the WEL bit in the Status Register is reset back to the
logical “0” state.
7.5.6 Programming Restrictions
The following events can cause the block erase operation to be aborted. If any of these events occur, the WELbit in Status Register
1 is reset back to the logic ‘0’ state.
The CS pin must be deasserted on a byte boundary (multiples of eight bits). Otherwise, the device aborts the operation and
no erase operation is performed.
Despite the lower order address bits not being decoded by the device, the complete three address bytes must still be
clocked into the device before the CS pin is deasserted. If the address is incomplete, the operation is aborted.
If the memory is in the protected state, the Block Erase command cannot be executed and the device returns to the idle
state once the CS pin has been deasserted.
7.5.7 Error Reporting
The device incorporates an intelligent erase algorithm that can detect when a byte location fails to erase properly. If an erase
error occurs, it is indicated by the EE and PE bits in Status Register 4. See Section 6.6, Status Register 4 for more information.
7.6 CHIP ERASE (60H, C7H)
The entire memory array can be erased in a single operation by using the Chip Erase command. Two commands (60h and C7h)
can be used for the Chip Erase command. There is no difference in device functionality when utilizing these two commands, so
they can be used interchangeably.
7.6.1 Command Prerequisites
Before a Chip Erase command can be issued, the Write Enable (06h) command must have been previously issued to the device
to set the WEL bit of Status Register 1.
The Chip Erase command is not executed if any memory region is protected by either the block protect bits or the individual block
locks. For more information on the block protect bits, see bits 4:2 (BP[2:0]) of Section 6.3, Status Register 1. For more information
on enabling individual lock bits, see bit 2 (WPS) of Section 6.5, Status Register 3.
7.6.2 Transfer Format
The 60h/C7h commands follow the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI
pin. No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
Datasheet
5-Aug-2021
Revision F
64
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.6.3 Transfer Sequence
To perform the Chip Erase operation, the CS pin is asserted and the information transferred as follows:
The 60h/C7h command is clocked into the device. Eight clocks are required to transfer the command. The most significant
bit of the command is transferred first.
When the CS pin is deasserted, the device begins to erase the entire memory array. The erasing of the device is internally
self-timed and takes place in time tCHPE
.
See Table 20 for more information on the transfer sequence for this command.
7.6.4 Device Status
While the device is executing a successful erase cycle, the RDY/BSY bit in Status Register 1 can be read and indicates the device
is busy. For faster throughput, it is recommended that Status Register 1 be polled rather than waiting the tCHPE time to determine
if the device has finished erasing. At some point before the erase cycle completes, the WEL bit in SR1 is reset back to the logical
“0” state.
7.6.5 Programming Restrictions
The Chip Erase command adheres to the following programming restrictions. The following events can cause the chip erase
operation to be aborted. If either one occurs, the WEL bit in Status Register 1 is reset back to the logical “0” state.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no erase operation is performed.
If any block in the memory is in the protected state, the Chip Erase command cannot be executed and the device returns to
the idle state once the CS pin has been deasserted.
A Chip Erase command cannot be suspended by executing the Program/Erase Suspend (75h) command. Hardware
ignores the Program/Erase Suspend command if it is issued during a Chip Erase.
7.6.6 Error Reporting
The device incorporates an intelligent erase algorithm that can detect when a byte location fails to erase properly. If an erase
error occurs, it is indicated by the EE and PE bits in Status Register 4. For more information, see Section 6.6, Status Register 4.
Datasheet
5-Aug-2021
Revision F
65
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.7 BYTE/PAGE PROGRAM (02H)
The Byte/Page Program command allows anywhere from a single byte of data to 256 bytes of data to be programmed into
previously erased memory locations. An erased memory location is one that has all eight bits set to the logical “1” state (a byte
value of FFh).
7.7.1 Command Prerequisites
Before a Byte/Page Program command can be issued, the Write Enable (06h) command must have been previously issued to
the device to set the WEL bit of Status Register 1.
7.7.2 Transfer Format
The 02h command follows the 1-1-1 transfer format described in Section 5.2, where the command, address, and data are all
transferred on the SI pin. See Figure 9 for a timing diagram of this transaction.
7.7.3 Transfer Sequence
To perform the Byte/Page Program operation, the CS pin is asserted and the information transferred as follows:
The 02h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Each byte transfer requires eight clock cycles. The data is always input with the most significant bit of the byte transferred
first. The number of bytes transferred is determined by software. The transfer can be anywhere from a single byte to the
entire buffer. If less than 256 bytes of data were sent to the device, then the remaining bytes within the page are not
programmed and remain in the erased state (FFh).
Once the CS pin is deasserted, hardware moves the data from the buffer to the memory. The programming of the data
bytes is internally self-timed and takes place in time tPP or tBP if only programming a single byte.
See Table 20 for more information on the transfer sequence for this command.
7.7.4 Device Status
While the data is being transferred, bit 0 (RDY/BSY) of Status Register 1 can be read and indicates that the device is busy. For
faster throughput, it is recommended that Status Register 1 be polled rather than waiting the tBP or tPP time to determine if the
data bytes have finished programming.
7.7.5 Programming Restrictions
The Byte/Page Program command adheres to the following programming restrictions. If any of the following conditions occur, the
programming cycle is aborted and the WEL bit in Status Register 1 is reset back to the logic ‘0’ state.
Deassertion of the CS Pin
The CS pin must be deasserted on even byte boundaries (multiples of eight bits). Otherwise, the device aborts the operation and
no data is programmed into the memory array.
Protected Memory
If the memory is in a protected state, then the Byte/Page Program command is not executed, and the device returns to the idle
state once the CS pin has been deasserted.
Datasheet
5-Aug-2021
Revision F
66
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Page Address Boundary
If the starting memory address denoted by A[23:0] does not fall on an even 256-byte page boundary (A[7:0] are not all 0), then
special circumstances regarding which memory locations to be programmed apply. In this situation, any data sent to the device
that exceeds the page size wraps around back to the beginning of the same page.
For example, if the starting address denoted by A23-A0 is 0000FEh, and three bytes of data are sent to the device, then the first
two bytes of data is programmed at addresses 0000FEh and 0000FFh while the last byte of data is programmed at address
000000h. The remaining bytes in the page (addresses 000001h through 0000FDh) are not programmed and remain in the current
state. Also, if more than 256 bytes of data are sent to the device, then only the last 256 bytes sent are latched into the internal
buffer.
Incomplete Address or Data
If the device receives either an incomplete address, or an incomplete data byte, the operation is aborted and hardware clears the
WEL bit is Status Register 1.
7.8 SEQUENTIAL PROGRAM MODE (ADH/AFH)
The Sequential Program Mode improves throughput over the Byte/Page Program command when the Byte/Page Program com-
mand is used to program single bytes only into consecutive address locations. For example, some systems may be designed to
program only a single byte of information at a time and cannot utilize a buffered Page Program operation due to design restrictions.
In such a case, the system would normally have to perform multiple Byte Program operations in order to program data into
sequential memory locations. This approach can add considerable system overhead and SPI bus traffic.
The Sequential Programming Mode helps reduce system overhead and bus traffic by incorporating an internal address counter
that keeps track of the byte location to program, thereby eliminating the need to supply an address sequence to the device for
every byte being programmed.
7.8.1 Command Prerequisites
Before a Sequential Program command can be issued, the Write Enable (06h) command must have been previously issued to
the device to set the WEL bit of Status Register 1.
When using the Sequential Program mode, all address locations to be programmed must be in the erased state.
7.8.2 Transfer Format
The initial ADh/AFh command follows the 1-1-1 transfer format described in Section 5.2, where the command, address, and data
are all transferred on the SI pin. See Figure 9 for a timing diagram of this transaction.
All subsequent ADh/AFh commands follow the 1-0-1 transfer format described in Section 5.2, where the command and data are
both transferred on the SI pin. Subsequent accesses do not require an address. See Figure 6 for a timing diagram of this
transaction.
7.8.3 Transfer Sequence — Initial Transfer
To perform the initial Sequential Program operation, the CS pin is asserted and the information transferred as follows:
The AFh/ADh command is clocked into the device. Eight clocks are required to transfer the command. The most significant
bit of the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to written to within the device
(typically the memory array). A total of 24 clocks are required to transfer the address. The most significant bit of the address
(A[23]) is transferred first.
Transfer the first byte of data. This requires eight clock cycles. The data is always input with the most significant bit of the
byte transferred first.
Datasheet
5-Aug-2021
Revision F
67
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Deasserting the CS pin starts the internally self-timed program operation, and the byte of data is programmed into the
memory location specified by the A23:A0.
See Table 20 for more information on the transfer sequence for this command.
7.8.4 Transfer Sequence — Subsequent Transfers
To perform subsequent Sequential Program operations, the CS pin is asserted and the information transferred as follows:
The AFh/ADh command is clocked into the device. Eight clocks are required to transfer the command. The most significant
bit of the command is transferred first.
Because the initial transfer has already occurred and hardware knows already knows the location of the next byte to be
programmed, the address field is not necessary. The command can be followed by the next data byte.
Transfer the next byte of data. This requires eight clock cycles. The data is always input with the most significant bit of the
byte transferred first.
Deasserting the CS pin starts the internally self-timed program operation, and the byte of data is programmed into the
memory location specified by the internal address counter. There is no need to reissue the Write Enable command once
the Sequential Program Mode has been entered.
When the last desired byte has been programmed into the memory array, the Sequential Program Mode operation can be
terminated by reasserting the CS pin and sending the Write Disable command to the device to reset the WEL bit in Status
Register 1.
7.8.5 Program Status
While the device is programming a byte, the RDY/BSY bit in Status Register 1 can be read to determine if the device is busy. The
programming of the data bytes is internally self-timed and takes place in time tPP (page) or tBP (single byte).
For faster throughput, it is recommended that the Status Register be polled at the end of each program cycle rather than waiting
the tBP or tPP time to determine if the byte has finished programming before starting the next operation.
7.8.6 Commands Allowed and Not Allowed in Sequential Program Mode
When the device is busy executing a self-timed program/erase operation (RDY/BSY bit in SR1 = 1), then it normally ignores most
commands from the user. However, there are a handful of commands which are accepted by the device.
Similarly, if the device is not busy (RDY/BSY bit in SR1 = 0), but is in Sequential Programming mode, only some commands are
accepted, and others are rejected by the device.
Datasheet
5-Aug-2021
Revision F
68
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 23 shows which commands can and cannot be executed with the device is in Sequential Program mode.
Table 23: Command Behavior During Sequential Programming Mode
During Sequential Programming Mode
(RDY/BUSY = 0, SPM = 1)
Command Name
Command Code(s)
Read Array
03h, 3Bh, 6Bh, EBh, E7h, 0Bh
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Block Erase
20h, 52h, D8h
60h, C7h
02h, A2h, 32h
ADh, AFh
B0h, 75h
D0h, 7Ah
06h
Chip Erase
Byte/Page Program
Sequential Programming
Program/Erase Suspend
Program/Erase Resume
Write Enable
Not Allowed
Not allowed
Allowed
Write Disable
04h
Allowed
Volatile Write Enable
Individual Block Lock
Individual Block Unlock
Global Block Lock
50h
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
36h
39h
7Eh
Global Block Unlock
Read Block Lock Status
Program OTP Security Register
Read OTP Security Register
Read Status Registers (direct)
Read Status Registers (indirect)
Write Status Registers (direct)
Write Status Registers (indirect)
Status Register Lock
Terminate
98h
3Ch, 3Dh
9Bh
4Bh
05h, 35h, 15h
65h
Allowed
01h, 31h, 11h
71h
Not allowed
Not allowed
Not allowed
Allowed
6Fh
F0h
Enable Reset
66h
Allowed
Reset Device
99h
Allowed
Read Mfg ID and Device ID
Deep Power Down
9Fh, 90h, 94h
B9h
Allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Resume from Deep Power Down
Ultra Deep Power Down
Read SFDP
ABh
79h
5Ah
Set Burst with Wrap
77h
7.8.7 Programming Restrictions
The Sequential Program mode adheres to the following programming restrictions.
Multiple Data Bytes per Program Cycle
If more than one byte of data is clocked in during a program cycle, then only the last byte of data sent on the SI pin is stored in
the internal latches. The programming of each byte is internally self-timed and takes place in time tBP
.
Datasheet
5-Aug-2021
Revision F
69
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Deasserting the CS Pin
For each program cycle, a complete byte of data must be clocked into the device before the CS pin is deasserted, and the CS
pin must be deasserted on even byte boundaries (multiples of eight bits). Otherwise, the device aborts the operation, and the
byte of data is not programmed into the memory array. Also, hardware resets the WEL bit in Status Register 1.
Protected Memory
If the address initially specified by A[23:0] points to a memory location within a block that is in the protected state, then the
Sequential Program Mode command is not executed, and the device returns to the idle state once the CS pin has been deassert-
ed. The WEL bit in the Status Register is also reset back to the logical “0” state.
Sequential Program mode does not automatically skip over protected blocks. Therefore, once the highest unprotected memory
location in a programming sequence has been programmed, the device automatically exits the Sequential Program mode and
resets the WEL bit in Status Register 1.
For example, if block 1 was protected and block 0 was currently being programmed, once the last byte of block 0 was programmed,
the Sequential Program mode would automatically end. To continue programming with block 2, the Sequential Program mode
would have to be restarted by supplying the ADh or AFh command, the three address bytes, and the first byte of block 2 to
program.
Address Wrapping
There is no address wrapping when using the Sequential Program Mode. Therefore, when the last byte (07FFFFh) of the memory
array has been programmed, the device automatically exits the Sequential Program mode and resets the WEL bit in Status
Register 1.
64 kB Block Accesses
If during a Sequential Program operation, the address increments into a 64 kB block where an erase operation has been sus-
pended, hardware exits the Sequential Program mode.
Clearing the WEL Bit in Status Register 1
If the WEL bit in Status register 1 is cleared at any time during a sequential programming operation, hardware exits the Sequential
Program mode.
7.8.8 Error Reporting
The device also incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly.
If a programming error arises, it is indicated by the EE and PE bits in Status Register 4.
Datasheet
5-Aug-2021
Revision F
70
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.9 DUAL OUTPUT BYTE/PAGE PROGRAM (A2H)
The Dual Output Byte/Page Program (A2h) command is similar to the standard Byte/Page Program command (02h) and can be
used to program anywhere from a single byte of data up to 256 bytes of data into previously erased memory locations. Unlike the
standard Byte/Page Program command, however, the Dual Output Byte/Page Program command allows two bits of data to be
clocked into the device on every clock cycle rather than just one.
7.9.1 Command Prerequisites
Before the Dual Output Byte/Page Program command can be executed, the Write Enable command (06h) must have been
previously issued to set the Write Enable Latch (WEL) bit in Status Register 1.
7.9.2 Transfer Format
The A2h command follows the 1-1-2 transfer format described in Section 5.3, where the command and address are transferred
on the SI pin, and input data is transferred on the SI and SO pins. To facilitate this transfer, hardware switches the SO pin to an
input as soon as the command has been decoded and the address transferred. See Figure 11 for a timing diagram of this
transaction.
7.9.3 Transfer Sequence
To perform a Dual Output Page Program operation, the CS pin is asserted and the information transferred as follows:
The A2h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to written. A total of 24 clocks are
required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
The first byte of data is transferred on the SI and SO pins. This requires four clock cycles. The data is always input with the
most significant bit on the SO pin during each clock as shown below. Like the standard Byte/Page Program command,
all data clocked into the device is stored to an internal buffer.
- First data clock: bit 7 is input on the SO pin
- First data clock: bit 6 is input on the SI pin
- Second data clock: bit 5 is input on the SO pin
- Second data clock: bit 4 is input on the SI pin
- Third data clock: bit 3 is input on the SO pin
- Third data clock: bit 2 is input on the SI pin
- Fourth data clock: bit 1 is input on the SO pin
- Fourth data clock: bit 0 is input on the SI pin
- Subsequent data bytes are transmitted in the same sequence as above
7.9.4 Program Status
While the device is programming a byte, Status Register 1 can be read to determine if the device is busy. The programming of
the data bytes is internally self-timed and takes place in time tPP (page) or tBP (single byte).
For faster throughput, it is recommended that the Status Register be polled at the end of each program cycle rather than waiting
the tBP or tPP time to determine if the byte has finished programming before starting the next operation.
Datasheet
5-Aug-2021
Revision F
71
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.9.5 Programming Restrictions
The Dual Output Byte/Page Program operation adheres to the following programming restrictions.
Page Address Boundary
If the starting memory address denoted by A[23:0] does not fall on a 256-byte page boundary (A[7:0] are not all 0), then special
circumstances regarding which memory locations are to be programmed apply. In this situation, any data sent to the device that
exceeds the end of the page wraps around to the beginning of the same page.
If the starting address denoted by A[23:0] is 0000FEh and three bytes of data are sent to the device, then the first two bytes of
data is programmed at addresses 0000FEh and 0000FFh, while the last byte of data is programmed at address 000000h. The
remaining bytes in the page (addresses 000001h through 0000FDh) are not programmed and remain in the erased state (FFh).
Data Transfers
When the CS pin is deasserted, the device programs the data stored in the internal buffer into the appropriate memory array
locations based on the starting address specified by A[23:0] and the number of data bytes sent to the device. If fewer than 256
bytes of data is sent to the device, then the remaining bytes within the page are not programmed and remains in the erased state
(FFh). Conversely, if more than 256 bytes of data are sent to the device, then only the last 256 bytes sent are latched into the
internal buffer.
Deassertion of the CS Pin
The three address bytes and at least one complete byte of data must be clocked into the device before the CS pin can be
deasserted. Also, the CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the
operation and no data is programmed into the memory array.
Protected Memory
If the address specified by A[23:0] points to a memory location within a block that is in the protected state, then the Byte/Page
Program command is not executed, and the device returns to the idle state once the CS pin has been deasserted. The WEL bit
in the Status Register is reset back to the Logical 0 state if the program cycle is aborted
7.9.6 Error Reporting
The device incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly. If a
programming error arises, it is indicated by the EE and PE bits in Status Register 4.
Datasheet
5-Aug-2021
Revision F
72
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.10 QUAD OUTPUT PAGE PROGRAM (32H)
The Quad Output Page Program command allows between 1 to 256 bytes of data to be programmed at previously erased memory
locations.
7.10.1 Command Prerequisites
Before a Sequential Program command can be issued, the Write Enable (06h) command must have been previously issued to
the device to set the WEL bit of Status Register 1. For more information on the QE bit, see Section 6.3, Status Register 1. Also,
the Quad Enable bit (QE bit in Status Register 2) must be set. For more information on the QE bit, see Section 6.4, Status Register
2.
7.10.2 Transfer Format
The 32h command follows the 1-1-4 transfer format described in Section 5.4, where the command and address are transferred
on the SI pin, and data is transferred on the HOLD, WP, SO, and SI pins. See Figure 13 for a timing diagram of this operation.
7.10.3 Transfer Sequence
To perform the Quad Output Page Program operation, the CS pin is asserted and the information transferred as follows:
The 32h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Following transfer of the last address byte, hardware switches the SO pin to an input.
Data is input on the HOLD, WP, SO, and SI pins. As a result, each byte transfer requires only two clock cycles to com-
plete. The data is always input with the most significant bit of the byte transferred first. The number of bytes transferred is
determined by software. The transfer can be anywhere from a single byte to the entire memory array. Each data byte is
shifted into the device as follows:
- First data clock: bit 7 is input on the HOLD pin
- First data clock: bit 6 is input on the WP pin
- First data clock: bit 5 is input on the SO pin
- First data clock: bit 4 is input on the SI pin
- Second data clock: bit 3 is input on the HOLD pin
- Second data clock: bit 2 is input on the WP pin
- Second data clock: bit 1 is input on the SO pin
- Second data clock: bit 0 is input on the SI pin
- Additional data bytes are transferred on the four pins in the same manner as shown above.
7.10.4 Programming Restrictions
The Quad Output Byte/Page Program command adheres to the following programming restrictions
The CS pin must be deasserted on a byte boundary (multiples of eight bits). Otherwise, the device aborts the operation and
no action is taken.
If the memory is in a protected state, then the Byte/Page Program command is not executed, and the device returns to the
idle state once the CS pin has been deasserted.
If the starting memory address denoted by A[23:0] does not fall on an even 256-byte page boundary (A[7:0] are not all 0),
then special circumstances regarding which memory locations to be programmed apply. In this situation, any data sent to
the device that exceeds the page size wraps around back to the beginning of the same page.
For example, if the starting address denoted by A23-A0 is 0000FEh, and three bytes of data are sent to the device, then the
first two bytes of data is programmed at addresses 0000FEh and 0000FFh while the last byte of data is programmed at
address 000000h. The remaining bytes in the page (addresses 000001h through 0000FDh) are not programmed and
Datasheet
5-Aug-2021
Revision F
73
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
remain in the current state. Also, if more than 256 bytes of data are sent to the device, then only the last 256 bytes sent are
latched into the internal buffer.
If the device receives either an incomplete address, or an incomplete data byte, the operation is aborted and hardware
clears the WEL bit is Status Register 1.
7.10.5 Error Reporting
The device also incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly.
If a programming error arises, it is indicated by the EE and PE bits in Status Register 4.
7.11 PROGRAM/ERASE SUSPEND (75H/B0H)
The device supports two Program/Erase Suspend commands, 75h and B0h, that perform the exact same function. The 75h
command can be used for legacy software, and the B0h command is used for compatibility with future implementations.
In some code plus data storage applications, it is often necessary to process certain high-level system interrupts that require
relatively immediate reading of code or data from the Flash memory. In such an instance, it may not be possible for the system
to wait the microseconds or milliseconds required for the Flash memory to complete a program or erase cycle. The Program/
Erase Suspend command allows a program or erase operation in progress to be suspended so that other device operations can
be performed. For example, by suspending an erase operation to a particular block, the system can perform functions such as a
program or read to a different block.
7.11.1 Transfer Format
The 75h and B0h commands follow the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the
SI pin. No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.11.2 Transfer Sequence
To perform the Program Erase/Suspend operation, the CS pin is asserted and the information transferred as follows:
The 75h or B0h command is clocked into the device. Eight clocks are required to transfer the command. The most signifi-
cant bit of the command is transferred first.
When the CS pin is deasserted, the device suspends the program.
See Table 20 for more information on the transfer sequence for this command.
7.11.3 Command Behavior During a Program/Erase Operation
If an attempt is made to perform an operation that is not allowed during a program or erase suspend, such as a Write Status
Register operation, then the device simply ignores the command and no operation is performed. The state of the WEL bit in Status
Register 1 is not affected. Note that in the table below, the RDY/BSY bit is located in Status Register 1. The PS and ES bits are
located in Status Register 5.
Datasheet
5-Aug-2021
Revision F
74
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Table 24: Command Behavior During Program/Erase or Program/Erase Suspend Operations
During Program or Erase During Program Suspend During Erase Suspend
Command
Code(s)
Command
(RDY/BSY = 1, PS = x,
ES = x)
(RDY/BSY = 0, PS = 1,
ES = x)
(RDY/BSY = 0, PS = 0,
ES = 1)
03h, 0Bh, 3Bh,
6Bh, EBh, E7h
Read Array
Not allowed
Allowed
Allowed
Block Erase
20h, 52h, D8h
60h, C7h
02h, A2h, 32h
ADh, AFh
B0h, 75h
D0h, 7Ah
06h
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Not allowed
Not allowed
Allowed1
Allowed(1)
Not allowed
Allowed
Chip Erase
Byte/Page Program
Sequential Programming
Program/Erase Suspend
Program/Erase Resume
Write Enable
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Allowed
Write Disable
04h
Allowed
Allowed
Volatile Write Enable
Individual Block Lock
Individual Block Unlock
Global Block Lock
Global Block Unlock
Read Block Lock Status
50h
Allowed
Allowed
36h
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
39h
7Eh
98h
3Ch, 3Dh
Program OTP Security
Register
9Bh
4Bh
Not allowed
Not allowed
Allowed
Not allowed
Allowed
Not allowed
Allowed
Read OTP Security Regis-
ter
Read Status Registers (di-
rect)
05h, 35h, 15h
65h
Allowed
Allowed
Read Status Registers (in-
direct)
Allowed
Allowed
Allowed
Write Status Registers (di-
rect)
01h, 31h, 11h
71h
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Write Status Registers (in-
direct)
Status Register Lock
Terminate
6Fh
F0h
66h
99h
Not allowed
Allowed
Not allowed
Allowed
Not allowed
Allowed
Enable Reset
Reset Device
Allowed
Allowed
Allowed
Allowed
Allowed
Allowed
Read Mfg ID and Device ID 9Fh, 90h, 94h
Allowed
Allowed
Allowed
Deep Power Down
B9h
Not allowed
Not allowed
Not allowed
Resume from Deep Power
Down
ABh
Allowed
Allowed
Allowed
Ultra Deep Power Down
Read SFDP
79h
5Ah
77h
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Not allowed
Allowed
Set Burst with Wrap
Allowed
Allowed
1 The operation is allowed in a different 64 kB block.
Datasheet
5-Aug-2021
Revision F
75
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.11.4 Device Status
When the CS pin is deasserted, the program or erase operation currently in progress suspends within a time of tSUSE. Hardware
sets the Suspend (SUSP) bit in Status Register 2 and the ES or PS bits in Status Register 5 to indicate that the program or erase
operation has been suspended. Also, hardware clears the RDY/BSY bit in Status Register 1 to indicate that the device is ready
for another operation.
7.11.5 Programming Restrictions
The Erase/Program Suspend command adheres to the following programming restrictions.
The following commands cannot be suspended:
Write Status Register 1 (01h)
Write Status Register 2 (31h)
Write Status Register 3 (11h)
Write Status Registers (71h)
Status Register Lock (6Fh)
Program OTP Security Registers (9Bh)
Chip Erase (60h/C7h)
Sequential Programming (AFh/ADh)
Hardware ignores the Program/Suspend command if it is issued while these commands are in progress.
Erase Suspend and Program Suspend Ordering
Aprogram operation can be performed while an erase operation is suspended. However, that operation must be completed before
the erase operation can be resumed. Also, an erase operation cannot be performed while a program operation is suspended.
Other device operations, such as a Read Status Register, can also be performed while a program or erase operation is suspended.
Write Enable Latch Ignored
Since the need to suspend a program or erase operation is immediate, the Write Enable command does not need to be issued
prior to the Program/Erase Suspend command being issued. Therefore, the Program/Erase Suspend command operates inde-
pendently of the state of the WEL bit in the Status Register.
Deasserting the CS Pin
The complete command must be clocked into the device before the CS pin is deasserted. Also, the CS pin must be deasserted
on a byte boundary (multiples of eight bits). Otherwise, no suspend operation is performed.
Accessing a Suspended Area
If a read operation is attempted to a suspended area (page for programming or block for erasing), then the device outputs
undefined data. Therefore, when performing a Read Array operation to an unsuspended area and the device's internal address
counter increments and crosses into the suspended area, the device starts outputting undefined data until the internal address
counter crosses to an unsuspended area.
Datasheet
5-Aug-2021
Revision F
76
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.12 PROGRAM/ERASE RESUME (7AH/D0H)
The device supports two Program/Erase Resume commands, 7Ah and D0h, that perform the exact same function. The 7Ah
command can be used for legacy software, and the D0h command is used for compatibility with future implementations.
The Program/Erase Resume command allows a suspended program or erase operation to be resumed and continue program-
ming a Flash page or erasing a Flash memory block where it left off.
7.12.1 Command Prerequisites
Hardware accepts the Program/Erase Resume command only if the ES bit (set when an erase operation is suspended) or PS bit
(set when a program operation is suspended) in Status Register 5 is set and the RDY/BSY bit in Status Register 1 is cleared. If
the ES/PS bit is cleared or the RDY/BSY bit is set, the Program/Erase Resume command is ignored by the device. See Section
6.3, Status Register 1 and Section 6.7, Status Register 5.
Note that the Write Enable command does not need to be issued prior to the Program/Erase Resume command being issued.
Therefore, the Program/Erase Resume command operates independently of the state of the WEL bit in Status Register 1.
7.12.2 Transfer Format
The 7Ah and D0h commands follow the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the
SI pin. No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.12.3 Transfer Sequence
To perform the Program/Erase Resume operation, the CS pin is asserted and the information transferred as follows:
The 7Ah or D0h command is clocked into the device. Eight clocks are required to transfer the command. The most signifi-
cant bit of the command is transferred first. No address of data are required for this command.
When the CS pin is deasserted, the device resumes the program.
See Table 20 for more information on the transfer sequence for this command.
7.12.4 Command Behavior
When the command is executed, hardware performs the following:
Hardware clears either the PS or the ES bits in Status Register 5 depending on whether a program or erase operation has
been suspended. If both of these bits are cleared, hardware clears the SUSP bit in Status Register 2.
Hardware sets the RDY/BSY bit in Status Register 1 to indicate that the device is busy.
When the CS pin is deasserted, the program or erase operation currently suspended resumes within a time of tRES
.
7.12.5 Programming Restrictions
The Program/Erase Resume command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiples of eight bits). Otherwise, no resume operation is performed.
While the device is busy resuming a program or erase operation, any attempts at issuing the Program/Erase Suspend com-
mand are ignored. Therefore, if a resumed program or erase operation needs to be subsequently suspended again, the
system must either wait the entire tRES time before issuing the Program/Erase Suspend command, or it can check the sta-
tus of the RDY/BSY bit in Status Register 1, or the ES/PS bits in Status Register 5 to determine if the previously suspended
program or erase operation has resumed.
During a simultaneous Erase Suspend/Program Suspend condition, issuing the Program/Erase Resume command results
in the program operation resuming first. After the program operation has been completed, the Program/Erase Resume
command must be issued again in order for the erase operation to be resumed. For more information, see Section 5.10.1,
Nested Operations.
Datasheet
5-Aug-2021
Revision F
77
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.13 SET BURST WRAP (77H)
This command is used in conjunction with the EBh and E7h commands to support a cache line fill, regardless of the starting
address. This type of operation, known as ‘address wrapping’, is an MCU-friendly feature that allows the Microcontroller Unit
(MCU) cache controller to fill a cache line in one operation, starting from a specific address (known as the critical byte) within the
cache line, proceeding to the end of the line, then wrapping around the start of the cache line to complete the fill.
For example, if the wrap size is 16 bytes and the starting address is 0x1004, then the read sequence would be as follows: 0x1004,
0x1005, 0x1006, 0x1007, 0x1008, 0x1009, 0x100A, 0x100B, 0x100C, 0x100D, 0x100E, 0x100F, 0x1000, 0x1001, 0x1002,
0x1003. As shown in this sequence, the fill starts at address 0x1004, proceeds to the end of the cache line (0x100F), then wraps
around to 0x1000 to complete the fill.
The wrap feature can improve code execution performance in the MCU system, as the MCU first receives the command or data
it requires at that instant, and then fetches the remainder of the cache line without requiring additional commands or addresses
to be sent.
The 77h command is used to both enable/disable the wrap-around feature, and determine the size of the wrap. The 77h command
sets the state of bits W6, W5, and W4 as shown in Table 25.
7.13.1 Transfer Format
The 77h command follows the 1-4-4 transfer format described in Section 5.6, where the command is transferred on the SI pin,
and the address and data are transferred on the HOLD, WP, SO, and SI pins. See Figure 17 for a timing diagram of this command.
7.13.2 Transfer Sequence
To perform the Set Burst with Wrap operation, the CS pin is asserted and the information transferred as follows:
The 77h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in. A total of 6 clocks are required to transfer the address. The most significant bit of the
address (A[23]) is transferred first. Even though the address must be clocked in, the address is treated as a don’t care field
internally.
Following transfer of the last address byte, eight Wrap bits are transferred which indicate the length of the wrap operation
as described in the table below.
7.13.3 Wrap Bits
After the last address byte is transferred, the device transfers eight wrap bits (W7-0), which indicate the wrap length. Note that
only wrap bits W6:W4 are used during this operation. The W7 and W3:W0 bits are not used. This is shown in the following table.
Table 25: Encoding of Burst Wrap Bits
W4 = 0
W4 = 1
W6
W5
Wrap Length
8-byte
Wrap Around
Wrap Length
Wrap Around
0
0
1
1
0
1
0
1
Yes
Yes
Yes
Yes
N/A
N/A
N/A
N/A
No
No
No
No
16-byte
32-byte
64-byte
Once the 77h command is executed and the W6:W4 bits are set, the subsequent EBh or E7h command uses these bits to
determine what section size to access within a given page. As shown in the table, returning to the normal read operation requires
the execution of another 77h command with the W4 bit driven high (W4 = 1).
Datasheet
5-Aug-2021
Revision F
78
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.13.4 Programming Restrictions
The Set Burst with Wrap command adheres to the following programming restrictions.
The CS pin must be deasserted on a byte boundary (multiples of eight bits). Otherwise, the device aborts the operation and
no action is taken.
7.14 WRITE ENABLE (06H)
The Write Enable command is used to set the Write Enable Latch (WEL) bit in Status Register 1. The WEL bit must be set for
any of the following commands to be executed:
Byte/Page Program (02h)
Dual Output Byte/Page Program (A2h)
Quad Output Byte/Page Program (32h)
Sequential Program Mode (AFh/ADh)
Any Erase command (20h, 52h, D8h, 60h/C7h)
Program OTP Security Register (9Bh)
Write Status Register (01h, 31h, 11h, 71h)
This makes the issuance of the above commands a two step process, thereby reducing the chances of a command being
accidentally or erroneously executed. If the WEL bit in the Status Register is not set prior to the issuance of one of these
commands, that command is not executed.
7.14.1 Transfer Format
The 06h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.14.2 Transfer Sequence
To perform the Write Enable operation, the CS pin is asserted and the information transferred as follows:
The 06h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. No address or data are required for this command.
When the CS pin is deasserted, hardware sets the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.14.3 Programming Restrictions
The Write Enable command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
79
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.15 WRITE DISABLE (04H)
The Write Disable command is used to clear the Write Enable Latch (WEL) bit in Status Register 1. When the WEL bit is cleared,
the following commands cannot be executed:
Byte/Page Program (02h)
Dual Output Byte/Page Program (A2h)
Quad Output Byte/Page Program (32h)
Sequential Program Mode (AFh/ADh)
Any Erase command (20h, 52h, D8h, 60h/C7h)
Program OTP Security Register (9Bh)
Write Status Register (01h, 31h, 11h, 71h)
Other conditions can also cause the WEL bit to be cleared. For more information, see Section 13, Status Register 1 Format.
7.15.1 Transfer Format
The 04h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.15.2 Transfer Sequence
To perform the Write Disable operation, the CS pin is asserted and the information transferred as follows:
The 04h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. No address or data are required for this command.
When the CS pin is deasserted, hardware clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.15.3 Programming Restrictions
The Write Disable command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
80
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.16 VOLATILE STATUS REGISTER WRITE ENABLE (50H)
To write the volatile version of the Status Register bits, the Write Enable for Volatile Status Register (50h) command must be
issued prior to each Write Status Register (01h) command. The Write Enable for the Volatile Status Register command does not
set the Write Enable Latch (WEL) bit in Status Register 1. It is only valid for the next following Write Status Register command,
to change the volatile Status Register bit values.
7.16.1 Transfer Format
The 50h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.16.2 Transfer Sequence
To perform the Write Disable operation, the CS pin is asserted and the information transferred as follows:
The 50h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. No address or data are required for this command.
When the CS pin is deasserted, hardware performs the operation.
See Table 20 for more information on the transfer sequence for this command.
7.16.3 Programming Restrictions
The Volatile Status Register Write Enable command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
81
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.17 INDIVIDUAL BLOCK LOCK (36H)
The Individual Block Lock command can be used to protect individual pages in the memory array from being programmed or
erased via one of the Program or Erase commands. To enable the individual block lock function, the WPS bit in Status Register
3 must be set. If the WPS bit is cleared, write protection is then determined by the combination of the CMPRT, BPSIZE, TB, and
BP[2:0] bits in the Status Register 1. The default value for each individual lock bit is 1 at power-up or reset, so the entire memory
array is protected.
7.17.1 Command Prerequisites
The Write Enable (06h) command must be executed before the device can accept the Individual Block Lock command. This is
required to set the WEL bit in Status Register 1.
7.17.2 Transfer Format
The 36h command follows the 1-1-0 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin. The address represents the individual block to be locked. Hence no data is transferred for this command.
7.17.3 Transfer Sequence
To perform the Individual Block Lock operation, the CS pin is asserted and the information transferred as follows:
The 36h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the address location to be locked within the memory array. A total of 24
clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
When the CS pin is deasserted, hardware performs the operation and clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.17.4 Programming Restrictions
The Individual Block Lock command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
82
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.18 INDIVIDUAL BLOCK UNLOCK (39H)
The Individual Block Unlock command can be used to unlock individual pages in the memory array to allow them to be pro-
grammed or erased via one of the Program or Erase commands. To enable the individual block unlock function, the WPS bit in
Status Register 3 must be set. If WPS is cleared, write protection is then determined by the combination of the CMP, SEC, TB,
and BP[2:0] bits in Status Register 1. The default value for each individual lock bit is 1 at power-up or reset, so the entire memory
array is being protected.
7.18.1 Command Prerequisites
The Write Enable (06h) command must be executed before the device can accept the Individual Block Unlock command. This is
required to set the WEL bit in Status Register 1.
7.18.2 Transfer Format
The 39h command follows the 1-1-0 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin. The address represents the individual block to be unlocked. Hence no data is transferred for this command. See
Figure 4, SPI Transfer — Command and Address Only for a timing diagram of this transaction.
7.18.3 Transfer Sequence
To perform the individual block unlock operation, the CS pin is asserted and the information transferred as follows:
The 39h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the address location to be unlocked within the memory array. A total of 24
clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
When the CS pin is deasserted, hardware performs the operation and clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.18.4 Programming Restrictions
The Individual Block Unlock command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
83
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.19 READ BLOCK LOCK (3CH/3DH)
The Read Block Lock commands allow the user to read the status of the lock bits in each block. The individual block locks
are used to protect any individual block. The default value for all individual block lock bits is 1 upon device power on or after reset.
The 3Ch and 3Dh commands perform the exact same operation. These two commands are identical and are provided for
backward compatibility purposes.
7.19.1 Command Prerequisites
The WPS bit in Status Register 3 must be set. When WPS is set, software uses the Block Lock (36h) and Block Unlock (39h)
commands to lock and unlock blocks of memory. If the WPS bit is cleared, write protection is determined by the combination of
CMP, SEC, TB, BP[2:0] bits in the Status Registers. The Read Block Lock command must not be used to determine the protection
status of any region of the memory. See Section 5.8.1 for more information on the protection scheme.
7.19.2 Transfer Format
The 3Ch and 3Dh commands follow the 1-1-1 transfer format described in Section 5.2, where the command and address are
transferred on the SI pin, and data is transferred on the SO pin. Figure 7 shows a timing diagram for this transaction.
7.19.3 Transfer Sequence
To perform the Read Block Lock operation, the CS pin is asserted and the information transferred as follows:
The 3dh or 3Dh command is clocked into the device. Eight clocks are required to transfer the command. The most signifi-
cant bit of the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the buffer. A total
of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Data is output on the SO pin and requires eight clock cycles. The MSB of the lock value is driven onto the SO pin first,
and the LSB is driven out last. If the LSB is 1, the corresponding block is locked and no erase or program operation
can be executed to that block. If the LSB is 0, the block is unlocked, indicating that program/erase operations are
allowed. The remaining bits 7:1 of this value are undefined.
If CS is kept low and additional data is clocked out, the device simply repeats the same byte over and over again until CS
goes high. Out of the 8 bits in this byte, the LSB (bit 0) has the lock bit information, the rest of the are undefined. The lock
bit information corresponds to the region of memory that encapsulates the 20-bit address provided by the user. So for
example:
- If the user provides an address of 0x000000, the device returns the lock status of the 4 kB region from 0x000000 -
0x000FFF.
- If the user provides an address of 0x001234, the device returns the lock status of the 4 kB region 0x001000 - 0x001FFF.
7.19.4 Programming Restrictions
The Read Block Lock command adheres to the following programming restriction.
The complete command must be clocked into the device before the CS pin is deasserted.
Datasheet
5-Aug-2021
Revision F
84
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.20 GLOBAL BLOCK LOCK (7EH)
The Global Block Lock command is used to set all of the block bits to 1 with one operation.
7.20.1 Command Prerequisites
The Write Enable command (06h) must be executed to set WEL bit in Status Register 1 before the Global Block Lock command
can be executed. See Section 7.14, Write Enable (06h) for more information.
7.20.2 Transfer Format
The 7Eh command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.20.3 Transfer Sequence
To perform the Global Block Lock operation, the CS pin is asserted and the information transferred as follows:
The 7Eh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. No address or data are required for this command.
When the CS pin is deasserted, hardware performs the operation and clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.20.4 Programming Restrictions
The Global Block Lock command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
85
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.21 GLOBAL BLOCK UNLOCK (98H)
The Global Block UnLock command is used to reset all of the block bits to 0 with one operation.
7.21.1 Command Prerequisites
The Write Enable command (06h) must be executed to set WEL bit in Status Register 1 before the Global Block Unlock command
can be executed. See Section 7.14, Write Enable (06h) for more information.
7.21.2 Transfer Format
The 98h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.21.3 Transfer Sequence
To perform the Global Block Unlock operation, the CS pin is asserted and the information transferred as follows:
The 98h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. Since all blocks are unlocked with this command, no address or data are required.
When the CS pin is deasserted, hardware performs the operation and clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command
7.21.4 Programming Restrictions
The Global Block Unlock command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
86
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.22 PROGRAM SECURITY REGISTER (9BH)
There are four specialized 128-byte OTP (One-Time Programmable) Security Registers that can be used for purposes such as
unique device serialization and locked key storage.
7.22.1 Command Prerequisites
Before the Program OTP Security Register command can be issued, the Write Enable command (06h) must be executed to set
WEL bit in Status Register 1. See Section 7.14, Write Enable (06h) for more information.
7.22.2 OTP Security Register Layout
The OTP Security Registers are independent of the main Flash memory array. The four registers are organized as follows:
Table 26: OTP Security Register 0 Bit Assignments
Security Register Byte Number
127
126
125
.....
2
1
0
Factory Programmed by Dialog Semiconductor
Table 27: OTP Security Register 1 Bit Assignments
Security Register Byte Number
255
254
253
.....
130
258
386
129
257
385
128
256
384
User Security OTP Register
Table 28: OTP Security Register 2 Bit Assignments
Security Register Byte Number
383
382
381
.....
User Security OTP Register
Table 29: OTP Security Register 3 Bit Assignments
Security Register Byte Number
511
510
509
.....
User Security OTP Register
7.22.3 Transfer Format
The 9Bh command follows the 1-1-1 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin, and data is transferred on the SO pin. See Figure 9 for timing diagram of this transfer.
7.22.4 Transfer Sequence
To perform the Program OTP Register operation, the CS pin is asserted and the information transferred as follows:
The 9Bh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
For this command, address bits 23:9 are don’t care. Only bits 8:0 are used to address the appropriate Security register. See
Table 30 for an encoding of the address.
Data is input on the SI pin. Each byte transfer requires eight clock cycles. The data is always input with the most significant
Datasheet
5-Aug-2021
Revision F
87
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
bit of the byte transferred first. The number of bytes transferred is determined by software. The transfer can be anywhere
from a single byte to the entire OTP register array. Additional data bytes are transferred every eight clocks as long as the
CS pin is asserted. The programming of the data bytes is internally self-timed and takes place in a time of tOTPP if the
entire 128-byte register is programmed at once.
When the CS pin is deasserted, the device takes the data stored in the internal buffer and programs it into the appropriate
OTP Security Register locations based on the starting address specified by A8-A0 and the number of data bytes sent to the
device.
Note that the Program OTP Security Register command utilizes an internal 256-buffer for processing. Therefore, the contents of
the buffer is altered from its previous state when this command is issued.
See Table 20 for more information on the transfer sequence for this command.
7.22.5 Addressing the OTP Security Registers
Each byte within the four OTP security registers can be accessed using bits 8:0 of the address. Bits 23:9 of the address are
ignored. The lower 7 bits (6:0) are used to select a byte within a given 128-byte OTP register. The next two bits (8:7) are used to
select one of the four OTP registers. This is shown in Table 30.
Table 30: OTP Security Register Addressing
Address
23:9
A8
0
A7
0
A6
A5
A4
A3
A2
A1
A0
OTP Security Register 0 (Factory Programmed by Dialog Semiconductor)
A[6:0] = 0000000 - byte 0, A[6:0] = 1111111 - byte 127
Don’t care
User defined OTP Security Register 1
Don’t care
Don’t care
Don’t care
0
1
1
1
0
1
A[6:0] = 0000000 - byte 128, A[6:0] = 1111111 - byte 255
User defined OTP Security Register 2
A[6:0] = 0000000 - byte 256, A[6:0] = 1111111 - byte 383
User defined OTP Security Register 3
A[6:0] = 0000000 - byte 384, A[6:0] = 1111111 - byte 511
7.22.6 Programming Status
While the device is programming the OTP Security Register, the RDY/BSY bit in Status Register 1 can be read to determine if
the operation is still in progress. For faster throughput, it is recommended that the Status Register be polled rather than waiting
the tOTPP time to determine if the data bytes have finished programming. At some point before the OTP Security Register
programming completes, hardware clears the WEL bit in the Status Register.
7.22.7 Locking OTP Registers 1 - 3
The tables above show the bytes associated with each OTP register. OTP register 0 is locked by default as the value is pro-
grammed by Dialog Semiconductor at the factory and cannot be changed. For OTP registers 1 - 3, the most significant byte is as
follows:
OTP Register 1: MSB = byte 255
OTP Register 2: MSB = byte 383
OTP Register 3: MSB = byte 511
For OTP registers 1 - 3, bit-level programming is allowed for the first 127 bytes of the registers. However, the register is locked
whenever one or more bits of the most significant byte are programmed. For example, if any bit of byte 255 in OTP register 1 is
programmed, that register is locked by hardware can cannot be programmed further.
Datasheet
5-Aug-2021
Revision F
88
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.22.8 Verifying the Locked Status of a Security Register
As described in the previous subsection, once any bit in the MSB of Security registers 1 - 3 is written, the register is locked and
not further programming is allowed. Software can determine the Locked status of each register by reading bits 5:3 (SL3:SL1) of
Status Register 2. Each bit corresponds to one of the user defined OTP security registers. If the corresponding bit is cleared, the
register is not locked. If the corresponding bit is set, the register is locked and cannot be programmed. See Section 6.4, Status
Register 2 for more information.
7.22.9 Programming Restrictions
The Program OTP Register command adheres to the following program restrictions.
Early Power Down
If the device is powered-down during the OTP Security Register program cycle, then the contents of the 128-byte user program-
mable portion of the OTP Security Register cannot be guaranteed and may not be programmed again.
Deasserting the CS Pin
The CS pin must be deasserted on a byte boundary (multiples of eight bits). Otherwise, the device aborts the operation and the
user-programmable portion of the OTP Security Register is not programmed.
Incomplete Address or Data
The WEL bit in the Status Register is cleared if the OTP Security Register program cycle aborts due to an incomplete address
being sent or an incomplete byte of data being sent.
Register Previously Programmed
Prior to programming an OTP register, hardware checks the state of the SL3:1 field in Status Register 2. For example, if an attempt
is made to program OTP register 1, and the register was previously programmed as indicated by the SL1 bit in Status Register
2 being set, the operation is aborted.
Datasheet
5-Aug-2021
Revision F
89
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.23 READ OTP SECURITY REGISTER (4BH)
The Read OTP Security Register command accesses the four specialized OTP security registers. Any portion of the value can
be read out depending on when the CS pin is deasserted.
7.23.1 Transfer Format
The 4Bh command follows the 1-1-1 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin, and data is transferred on the SO pin. See Figure 7 for a timing diagram of this transaction. In this diagram a single
byte of data is shown.
7.23.2 Transfer Sequence — Single Register
To perform the Read OTP Security register operation of a single register, the CS pin is asserted and the information transferred
as follows:
The 4Bh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
The address breakdown is as follows:
- A[23:9] are don’t care
- A[8:0] indicate the byte address
Following the three address bytes, an additional dummy byte must be clocked into the device.
Data is output on the SO pin. Each byte transfer requires eight clock cycles. The data is always output with the most signif-
icant bit of the byte transferred first. The number of bytes transferred depends on how long the CS pin remains asserted. A
total of 1024 clocks would be required to shift out all 128 bytes of data.
7.23.3 Transfer Sequence — All Registers
To perform the Read OTP Security register operation of all four register, the transfer sequence is the same as above, except that
the CS pin remains asserted until all registers are read. As noted above, a total of 1024 clocks would be required to read one
register. Therefore, a total of 4096 clocks would be required to read out the contents of all four registers.
See Table 20 for more information on the transfer sequence for this command.
7.24 READ STATUS REGISTERS 1 - 3 (05H, 35H, 15H)
Three Read Status Register commands are used to perform a direct read of Status registers 1 - 3. These registers can also be
indirectly accessed using the 65h command as described in the following section. In the direct method, a specific command is
executed. Hardware decodes this command and retrieves data from the appropriate Status register. No address field is required.
Status registers 1 - 3 are accessed by the following commands.
Read Status Register 1: 05h
Read Status Register 2: 35h
Read Status Register 3: 15h
7.24.1 Transfer Format
The 05h/35h/15h commands follow the 1-0-1 transfer format described in Section 5.2, where the command is transferred on the
SI pin, and data is transferred on the SO pin. No address is required for this command. See Figure 5 for a timing diagram of this
transaction.
Datasheet
5-Aug-2021
Revision F
90
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.24.2 Transfer Sequence
To perform the Read Status Register register operation, the CS pin is asserted and the information transferred as follows:
The 05h/35h/15h command is clocked into the device. Eight clocks are required to transfer the command. The most signif-
icant bit of the command is transferred first.
Data is output on the SO pin. Each byte transfer requires eight clock cycles. The data is always output with the most signif-
icant bit of the byte transferred first. After the last bit (0) of the Status Register has been clocked out, the sequence repeats
itself, starting again with bit 7 of the selected register byte. This continues as long as the CS pin remains asserted and the
clock pin is being pulsed. The data in the Status Register is constantly being updated, so each repeating sequence may
output new data.
Deasserting the CS pin terminates the Read Status Register operation and put the SO pin into a high-impedance state. The
CS pin can be deasserted at any time and does not require that a full byte of data be read.
See Table 20 for more information on the transfer sequence for this command.
7.25 READ STATUS REGISTERS (65H)
The Read Status Register command works in conjunction with an 8-bit address field to perform an indirect read of Status registers
1 - 5. Registers 1 - 3 can also be directly accessed as described in the previous section. In the indirect method, a Read Status
register command (65h) is executed. Hardware decodes this command and retrieves data from the appropriate Status register
as directed by the 8-bit address field, which follows the command in the sequence. Status registers 1 - 5 are read in the following
manner.
Table 31: Indirect Addressing of the Status Registers
Byte 0
Command
65h
Byte 1
Address
01h
Byte 2
Dummy
Dummy
Byte 3
Output
S[7:0]
Action
Read Status Register 1
Read Status Register 2
Read Status Register 3
Read Status Register 4
Read Status Register 5
65h
65h
65h
65h
02h
03h
04h
05h
Dummy
Dummy
Dummy
Dummy
S[15:8]
S[23:16]
S[31:24]
S[39:32]
7.25.1 Transfer Format
The 65h command follows the 1-1-1 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin, and data is transferred on the SO pin. Figure 24 shows a timing diagram for this operation.
7.25.2 Transfer Sequence
To perform the Read Status Register operation, the CS pin is asserted and the information transferred as follows:
The 65h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
One address byte is clocked in to specify the address the register to be written. A total of 8 clocks are required to transfer
the address. The most significant bit of the address (A[7]) is transferred first.
Following the one address byte, one dummy byte is clocked into the device.
Data is output on the SO pin. Each byte transfer requires eight clock cycles. The data is always output with the most signif-
icant bit of the byte transferred first. The number of bytes transferred is determined by software. The transfer can be any-
where from a single register to all five registers.
Deasserting the CS pin terminates the read operation and puts 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.
Datasheet
5-Aug-2021
Revision F
91
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
See Table 20 for more information on the transfer sequence for this command.
7.25.3 Reading a Single Status Register
To read a specific Status Register, the CS pin must first be asserted and the corresponding command of 65h must be clocked
into the device. After the command has been clocked in, the 8-bit address of the register to be read is clocked into the device as
shown in the above table. Once the address is decoded, hardware begins outputting Status Register data on the SO pin during
every subsequent clock cycle.
7.25.4 Continuous Read of All Status Registers
To read all five Status registers in sequence, execute a 65h command with the address field equivalent to 01h. Once the contents
of Status Register 1 are read out, the hardware increments the address automatically and begins reading the contents of Status
Register 2. This continues until all five Status registers have been read out as long as the CS pin remains asserted and the clock
pin is being pulsed. Once the process is started, data is input and output from the device as follows:
Table 32: Indirect Status Register Read Sequence
Clocks
Action
0 - 7
Command 65h. Clocks 0 - 3 = 0110, and clocks 4 - 7 = 0101.
8 - 15
16 - 23
24 - 31
32 - 39
40 - 47
48 - 55
56 - 63
64 - xx
Address 01h. Clocks 8 - 11 = 0000, and clocks 12 - 15 = 0001.
Dummy byte on clocks 16 - 23.
Status Register 1 data. Clock 24 = bit 7, and clock 31 = bit 0.
Status Register 2 data. Clock 32 = bit 7, and clock 39 = bit 0.
Status Register 3 data. Clock 40 = bit 7, and clock 47 = bit 0.
Status Register 4 data. Clock 48 = bit 7, and clock 55 = bit 0.
Status Register 5 data. Clock 56 = bit 7, and clock 63 = bit 0.
Data is undefined.
7.25.5 Transfer Diagram
Figure 24 shows the bus signals during an indirect register read operation. This type of command requires only a single 8-bit
address as shown.
ꢁꢀ
ꢊ
ꢉ
ꢇ
ꢈ
ꢎ
ꢍ
ꢋ
ꢌ
ꢐ
ꢏ
ꢉꢊ ꢉꢉ ꢉꢇ ꢉꢈ ꢉꢎ ꢉꢍ ꢉꢋ ꢉꢌ ꢉꢐ ꢉꢏ ꢇꢊ ꢇꢉ ꢇꢇ ꢇꢈ ꢇꢎ ꢇꢍ ꢇꢋ ꢇꢌ ꢇꢐ ꢇꢏ ꢈꢊ ꢈꢉ ꢈꢇ
ꢀꢁꢂ
ꢀꢃ
ꢁꢄꢅꢅꢑꢒꢓ
ꢑꢓꢓꢕꢖꢀꢀꢗꢆꢃꢘꢀꢗꢑꢌꢙꢑꢊ
ꢓꢚꢅꢅꢛ
ꢊ
ꢉ
ꢉ
ꢊ
ꢊ
ꢉ
ꢊ
ꢉ
ꢑ
ꢑ
ꢑ
ꢑ
ꢑ
ꢑ
ꢑ
ꢑ
ꢔ
ꢔ
ꢔ
ꢔ
ꢔ
ꢔ
ꢔ
ꢔ
ꢅꢀꢆ
ꢅꢀꢆ
ꢅꢀꢆ
ꢓꢑꢘꢑꢗꢄꢚꢘꢗꢉ
ꢜꢃꢝꢜꢙꢃꢅ ꢖꢓꢑꢒꢁꢖ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢓ
ꢀꢄ
ꢅꢀꢆ
ꢅꢀꢆ
Figure 24: Status Register Read Operation Showing 8-bit Address Field
Datasheet
5-Aug-2021
Revision F
92
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.25.6 Programming Restrictions
The Read Status Register command adheres to the following programming restrictions.
Reading Register Addresses 7 Through 255
As the address is an 8-bit value, the device continues to read up to 255 register bytes as long as the CS pin remains asserted,
even though only five registers are implemented at this time. Starting with a read of register 6 through register 255, the device
returns undefined data. If the CS pin remains asserted and all 255 bytes are read out, the address wraps around from FFh to 00h.
This continues until the CS pin is deasserted.
7.26 WRITE STATUS REGISTERS 1 - 3 — DIRECT (01H, 31H, 11H)
The Write Status Register commands are used to perform a direct write of Status registers 1 - 3. These registers can also be
indirectly accessed as described in the following section. In the direct method, a specific command is executed. Hardware
decodes this command and writes the data to the appropriate Status register. No address field is required. Status registers 1 - 3
are accessed by the following commands.
Write Status Register 1: 01h
Write Status Register 2: 31h
Write Status Register 3: 11h
7.26.1 Command Prerequisites
To write the volatile version of the Status Register bits, the Write Enable for Volatile Status Register (50h) command must be
issued prior to each Write Status Register (01h/31h/11h) command. The Write Enable for the Volatile Status Register command
does not set the Write Enable Latch (WEL) bit in Status Register 1. It is only valid for the next following Write Status Register
command, to change the volatile Status Register bit values.
To write the non-volatile version of the Status Register bits, the Write Enable (06h) command must be issued prior to each Write
Status Register (01h/31h/11h) command.
7.26.2 Transfer Format
The 01h/31h/11h commands follow the 1-0-1 transfer format described in Section 5.2, where the command and data are trans-
ferred on the SI pin. No address is required for this command. See Figure 6 for a timing diagram of this transaction.
7.26.3 Transfer Sequence
To perform the Write Status Register register operation, the CS pin is asserted and the information transferred as follows:
The 01h/31h/11h command is clocked into the device. Eight clocks are required to transfer the command. The most signif-
icant bit of the command is transferred first.
Data is input on the SI pin. Each byte transfer requires eight clock cycles. The data is always input with the most significant
bit of the byte transferred first.
When the CS pin is deasserted, hardware clears the WEL bit in Status Register 1.
See Table 20 for more information on the transfer sequence for this command.
7.26.4 Programming Restrictions
The Write Status Register command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
For compatibility with legacy devices, command 01h can also be used with 2 bytes of data. In such case, the second byte is
written to Status Register 2.
To ensure that only Status Register 1 is written, command 01h must be used with one data byte only.
Datasheet
5-Aug-2021
Revision F
93
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.27 WRITE STATUS REGISTERS — INDIRECT (71H)
The Write Status Register command works in conjunction with an 8-bit address field to perform an indirect write of Status registers
1 - 5. Registers 1 - 3 can also be directly accessed as described in the previous section. In the indirect method, a Write Status
register command (71h) is executed. Hardware decodes this command and writes data to the appropriate Status register using
the 8-bit address field, which follows the command in the sequence. Status registers 1 - 5 are written in the following manner.
Table 33: Indirect Addressing of the Status Registers
Byte 0
Command
71h
Byte 1
Address
01h
Byte 2
Write Data
S[7:0]
Action
Write Status Register 1
Write Status Register 2
Write Status Register 3
Write Status Register 4
Write Status Register 5
71h
71h
71h
71h
02h
03h
04h
05h
S[15:8]
S[23:16]
S[31:24]
S[39:32]
7.27.1 Command Prerequisites
The Write Enable command (06h) must be executed to set WEL bit in Status Register 1 before the Write Status Register (71h)
command can be executed. See Section 7.14, Write Enable (06h) for more information.
To write the volatile version of the Status Register bits, the Write Enable for Volatile Status Register (50h) Command must be
issued prior to each Write Status Register (71h) command. The Write Enable for the Volatile Status Register command does not
set the Write Enable Latch (WEL) bit in Status Register 1. It is only valid for the next following Write Status Register command,
to change the volatile Status Register bit values.
To write the non-volatile version of the Status Register bits, the Write Enable (06h) command must be issued prior to each Write
Status Register (01h/31h/11h) command.
7.27.2 Transfer Format
The 71h command follows the 1-1-1 transfer format described in Section 5.2, where the command, address, and data are
transferred on the SI pin. Figure 25 shows a timing diagram for this operation.
7.27.3 Transfer Sequence
To perform the Write Status Register operation, the CS pin is asserted and the information transferred as follows:
The 71h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
One address byte is clocked in to specify the address of the register to be written. A total of 8 clocks are required to transfer
the address. The most significant bit of the address (A[7]) is transferred first.
Data is input on the SI pin. Each byte transfer requires eight clock cycles. The data is always input with the most significant
bit of the byte transferred first. If more than one byte of data is provided before the CS pin is deasserted, no register is writ-
ten.
See Table 20 for more information on the transfer sequence for this command.
7.27.4 Writing to a Status Register
To write a specific Status Register, the CS pin must first be asserted and the corresponding command of 71h must be clocked
into the device. After the command has been clocked in, the 8-bit address of the register to be written is clocked into the device
Datasheet
5-Aug-2021
Revision F
94
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
as shown in the above table. Once the address is decoded, hardware begins writing to the Status Register with the data on the
SI pin. This sequence in Table 34 shows a write to Status Register 1.
Table 34: Indirect Status Register Write Sequence
Clocks
Action
0 - 7
Command 71h. Clocks 0 - 3 = 0111, and clocks 4 - 7 = 0001.
8 - 15
Address 01h. Clocks 8 - 11 = 0000, and clocks 12 - 15 = 0001.
Status Register 1 write data. Clock 16 = bit 7, and clock 23 = bit 0.
16 - 23
7.27.5 Transfer Diagram
Figure 25 shows the bus signals during an indirect register write operation. This type of command requires only a single 8-bit
address.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20 21 22 23
SCK
SI
COMMAND
ADDRESS BITS A7-A0
DATA IN
0
MSB
1
1
1
0
0
0
1
A
A
A
A
A
A
A
A
D
MSB
D
D
D
D
D
D
D
MSB
HIGH-IMPEDANCE
SO
Figure 25: Status Register Write Operation Showing 8-bit Address Field
7.27.6 Programming Restrictions
The Write Status Registers command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
The AT25FF041A device implements Status registers 1 - 5 at addresses 0x01 through 0x05. If the user attempts to write to
a register that is not defined or reserved (addresses 0x00, or 0x06 - 0xFF), then the device does not write to any Status reg-
ister byte. Instead the operation is aborted and hardware clears the WEL bit in Status register 1 once the CS pin is deas-
serted.
Datasheet
5-Aug-2021
Revision F
95
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.28 STATUS REGISTER LOCK (6FH)
The Status Register Lock command is used to explicitly lock the Status registers when the SRP1 and SRP0 bits in Status Registers
2 and 1 are set. Once this occurs, they can no longer be programmed. This command is provided to eliminate the possibility of
inadvertently locking the registers by accidentally setting the SRP1 and SRP0 bits in Status Registers 2 and 1. Even if these two
bits are set to 2’b11, this command, along with two verification bytes, is required in order for hardware to lock the Status registers.
7.28.1 Command Prerequisites
The Write Enable command (06h) must be executed to set the WEL bit in Status Register 1 before the Status Register Lock
command can be executed. See Section 7.14, Write Enable (06h) for more information.
7.28.2 Transfer Format
The 6Fh command follows a special 1-0-1 transfer format described in Section 5.2, where the command, address, and data are
transferred on the SI pin. However, for this command, two verification bytes are transferred. Figure 26 shows a timing diagram
for this operation.
7.28.3 Transfer Sequence
To perform the Status Register Lock operation, the CS pin is asserted and the information transferred as follows:
The 6Fh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Data is input on the SI pin. The first verification byte of 4Dh is transferred, followed by a second verification byte of 67h.
Each byte transfer requires eight clock cycles. The data is always input with the most significant bit of the byte transferred
first. Note that these values must be transferred in the correct order. If a value other than 4Dh followed by 67h is trans-
ferred, the operation is aborted.
See Table 20 for more information on the transfer sequence for this command.
7.28.4 Transfer Diagram
Figure 26 shows the bus signals during a Status Register Lock operation. In this transfer the command is followed by two
verification bytes.
CS
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20 21 22 23
SCK
SI
COMMAND
VERIFICATION BYTE 1
VERIFICATION BYTE 2
0
MSB
1
1
0
1
1
1
1
0
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
MSB
MSB
HIGH-IMPEDANCE
SO
Figure 26: Status Register Lock Operation with Two Verification Bytes
7.28.5 Programming Restrictions
The Write Status Registers command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
96
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.29 DEEP POWER DOWN (B9H)
The Deep Power-Down command is used in conjunction with bit 7 (PDM) in Status register 4 to place the device into Deep Power-
Down mode. When the PDM bit is set and the B9h command is executed, the device enters Deep Power Down mode.
When the device is in Deep Power-Down mode, most commands, including the Read Status Register command, are ignored.
The only commands that are accepted while in this mode are the Resume from Deep Power-Down command (ABh), the Enable
Reset command (66h), and the Reset Device (99h) commands. Since all other commands are ignored, the mode can be used
as an extra protection mechanism against program and erase operations. When the CS pin is deasserted, the device enters the
Deep Power-Down mode within the maximum time of tEDPD
.
7.29.1 Transfer Format
The B9h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.29.2 Transfer Sequence
To perform the Deep Power Down operation, the CS pin is asserted and the information transferred as follows:
The B9h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
When the CS pin is deasserted, the device begins the power down operation.
See Table 20 for more information on the transfer sequence for this command.
7.29.3 Programming Restrictions
The Deep Power Down command adheres to the following programming restrictions.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation.
The B9h command is ignored if an internally self-timed operation such as a program or erase cycle is in progress. In this
case, the B9h command must be reissued after the internally self-timed operation has been completed. Software can mon-
itor the RDY/BSY bit in Status Register 1 to determine when the program or erase operation has completed.
Datasheet
5-Aug-2021
Revision F
97
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.30 RESUME FROM ULTRA-DEEP POWER DOWN / DEEP POWER DOWN WITH DEVICE ID (ABH)
In order to exit the Deep Power Down (DPD) mode and resume normal device operation, the Resume from Deep Power-Down
(ABh) command must be issued. This command, along with the 66h/99h Reset Enable/Reset command, are the only commands
that the device recognizes while in the Deep Power-Down mode. This command allows both the exit from DPD mode, as well as
a fetch of the Device ID. Which operation is executed depends on the way in which CS is used as described below.
The ABh command can also be used to exit from Ultra-Deep Power Down (UDPD) mode. Execution of this command while in
Ultra-Deep Power Down causes the device to initialize, and then enters standby mode, where it is ready to accept commands.
7.30.1 Command Options
As mentioned above, the ABh command can be used to exit both DPD and UDPD modes. In DPD mode, execution of the ABh
command causes the device to exit the DPD state, and also fetch the device ID as described in Section 7.30.3 below. In UDPD
mode, the ABh command is used to exit the UDPD state as described in Section 7.30.4 below. Table 35 shows how to exit the
DPD and UDPD modes.
Table 35: Options for Exiting DPD and UDPD Modes
Currently in
DPD Mode?
Currently in
UDPD Mode?
Command
Exit DPD Mode
Exit UDPD Mode
Fetch Device ID
No
Yes
No
No
No
No
Yes
No
No
No
Yes
Yes
No
ABh
Yes
Yes
7.30.2 Transfer Format — Resume from Deep Power Down
For this operation, theABh command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred
on the SI pin. No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.30.3 Transfer Format — Resume from Deep Power Down and Obtain Device ID
For this operation, theABh command follows the 1-1-1 transfer format described in Section 5.2, where the command is transferred
on the SI pin and address and data on the SO pin. See Figure 7 for a timing diagram of this operation. Note that no address is
transferred for this command. Rather, three dummy bytes are transferred in place of the address.
7.30.4 Transfer Sequence — Resume from Deep Power Down
To perform the Resume from Deep Power Down operation, the CS pin is asserted and the information transferred as follows:
The ABh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
For this operation, the CS pin must be deasserted on the 8th clock, immediately after the command is issued. This causes
the device begins the resume from power down operation. When the CS pin is deasserted after the 8th clock, the device
exits the Deep Power-Down mode within the maximum time of tRDPD and returns to the standby mode. After the device has
returned to the standby mode, normal command operations such as Read Array can be resumed.
See Table 20 for more information on the transfer sequence for this command.
7.30.5 Transfer Sequence — Resume from Deep Power Down and Obtain Device ID
To perform the Resume from Deep Power Down operation, the CS pin is asserted and the information transferred as follows:
The ABh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three dummy bytes are then clocked in for the address. These clocks are required to provide time for the device to exit
power down mode and fetch the device ID. A total of 24 clocks are required to transfer the three dummy bytes.
Datasheet
5-Aug-2021
Revision F
98
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
For this operation, the CS pin continues to be asserted after the 8th clock. In this operation, the CS pin is held low for the
time it takes to transfer the Device ID. Therefore, 40 clocks are required to complete this operation; 8 for the command, 24
for the dummy bytes, and 8 clocks for the device ID.
The device ID is shifted out on the SO pin, with the most significant bit of the value being transmitted first. The device ID is
read out continuously until the CS pin is deasserted.
7.30.6 Transfer Sequence — Resume from Ultra-Deep Power Down
To perform the resume from Ultra-Deep Power Down operation, the CS pin is asserted and the information transferred as follows:
The ABh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Once CS is deasserted, hardware initiates an internal reset of the device and the SRAM contents are lost.
The device exits the Ultra Deep Power-Down mode within the time tRUDPD as defined in Figure 8.5, AC Characteristics – All
Other Parameters.
Figure 27 shows a timing diagram of this timing parameter.
CS
tRDPD
t
RUDPD
0
1
2
3
4
5
6
7
SCK
SI
OPCODE
1
MSB
0
1
0
1
0
1
1
HIGH-IMPEDANCE
Active Current
SO
I
CC
Deep Power Down mode or
Standby Mode Current
e Current
Ultra-Deep Power Down mode current
Figure 27: Resume from Deep Power Down or Ultra-Deep Power Down
7.30.7 Programming Restrictions
The Resume from Deep Power Down command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
Datasheet
5-Aug-2021
Revision F
99
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.31 ULTRA-DEEP POWER DOWN (79H)
The Ultra-Deep Power-Down (UDPD) mode allows the device to further reduce energy consumption compared to Deep Power-
Down mode by shutting down additional internal circuitry. The UDPD mode can be entered by either executing the 79h command,
or by executing the B9h command with bit 7 (PDM) of Status Register 4 cleared. When the device is in the Ultra-Deep Power-
Down mode, all commands except the ABh command are ignored.
Execution of the ABh command allows the device to exit from Ultra-Deep Power Down mode. Execution of this command while
in Ultra-Deep Power Down causes the device to initialize, and then enters standby mode.
7.31.1 Transfer Format
The 79h command follows the 1-0-0 transfer format described in Section 5.2, where the command is transferred on the SI pin.
No address or data are transferred for this command. See Figure 3 for a timing diagram of this operation.
7.31.2 Transfer Sequence
To perform the Ultra-Deep Power Down operation, the CS pin is asserted and the information transferred as follows:
The 79h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
When the CS pin is deasserted, the device enters the Ultra-Deep Power-Down mode within the maximum time
of t
. Any additional data clocked into the device after this command is ignored.
EUDPD
Figure 28 shows a diagram with this timing parameter.
CS
tEUDPD
0
1
2
3
4
5
6
7
SCK
SI
Opcode
0
MSB
1
1
1
1
0
0
1
High-impedance
SO
Active Current
I
CC
Standby Mode Current
Ultra-Deep Power-Down Mode Current
Figure 28: Entering Ultra-Deep Power Down State
See Table 20 for more information on the transfer sequence for this command.
7.31.3 Programming Restrictions
The following events can cause the Ultra-Deep Power Down operation to be aborted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
return to the standby mode once the CS pin is deasserted. Also, the device defaults to the standby mode after a power
cycle.
The 79h command is ignored if an internally self-timed operation such as a program or erase cycle is in progress. The 79h
command must be reissued after the internally self-timed operation has been completed. Software can monitor the RDY/
BSY bit in Status Register 1 to determine when the program or erase operation has completed.
Datasheet
5-Aug-2021
Revision F
100
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.32 ENABLE RESET (66H) AND RESET DEVICE (99H)
Executing the Reset (66h/99h) command terminates all internal operations and causes the device to initialize. After reset, the
device is set to its default parameters and all previous register settings are lost.
7.32.1 Transfer Format
The 66h/99h commands are issued as two back-to-back 1-0-0 commands described in Section 5.2. The first command (66h)
enables the reset function and is transferred on the SI pin. The second command (99h) immediately follows the 66h command
and initiates a reset of the device. This command is also transferred on the SI pin. No address or data are transferred for this
command. See Figure 3 for a timing diagram of this operation.
7.32.2 Transfer Sequence
To perform a device reset operation, the CS pin is asserted and the information transferred as follows:
The 66h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Deassert the CS pin for one clock cycle.
Reassert the CS pin.
The 99h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. Note that no other command can be issued in between the 66h command and the 99h
command.
When the CS pin is deasserted after the 99h command, the device initiates the reset operation within a time of tSWRST
.
During the reset sequence, no other command can be accepted by the device.
See Table 20 for more information on the transfer sequence for this command.
Figure 29 shows an example of the back-to-back command sequence.
CS
SI
66h
99h
8 clocks
8 clocks
Figure 29: Enable Reset and Reset Command Sequence (SPI Mode)
7.32.3 Programming Restrictions
The Enable Reset command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
no action is taken.
If an erase or program operation has been suspended (75h command has been executed prior to the 66h/99h command)
and the device reset sequence is initiated, the data is corrupted. To prevent this from happening, check the RDY/BSY in
Status Register 1 and the SUSP bit in Status Register 2 to make sure each bit is cleared before issuing the 66h/99h Reset
command sequence.
Datasheet
5-Aug-2021
Revision F
101
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.33 TERMINATE (F0H)
In some applications, it may be necessary to prematurely terminate a program or erase operation rather than wait for the program
or erase operation to complete normally. The Terminate command immediately aborts any operation in progress and returns the
device to an idle state.
Since the need to terminate the operation is immediate, the Write Enable command does not need to be issued prior to the
Terminate command. Therefore, the Terminate command operates independently of the state of the WEL bit in Status Register 1.
Once this command is issued, the operation in progress cannot be continued. To suspend and then continue an operation, use
the Program/Erase Suspend (75h) and Program/Erase Resume (7Ah) commands.
7.33.1 Command Prerequisites
The Terminate command can be executed only if the command has been enabled by setting the Reset Enabled (RSTE) bit in
Status Register 5 using the Write Status Register 5 command (71h + 05h address offset). This command must be executed before
the Terminate command is executed. If the Reset command has not been enabled (the RSTE bit in is cleared), then any attempt
at executing the Terminate command is ignored.
7.33.2 Transfer Format
The F0h command follows the 1-0-1 transfer format described in Section 5.2, where the command and data are transferred on
the SI pin. Immediately after the command is transferred, a confirmation data byte is transferred. This byte is required by the
hardware before the Terminate command can be executed. A timing diagram of this operation is shown in Figure 6.
7.33.3 Transfer Sequence
To perform device reset operation, the CS pin is asserted and the information transferred as follows:
The F0h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
The D0h confirmation byte is clocked into the device. Eight clocks are required to transfer the command. The most signifi-
cant bit of the command is transferred first. Note that is the confirmation byte is any value other than D0h, the entire com-
mand is ignored and the device returns to the idle state.
When the CS pin is deasserted after the D0h confirmation byte, the device initiates the terminate operation within a time of
tSWTERM. During the terminate sequence, no other command can be accepted by the device.
See Table 20 for more information on the transfer sequence for this command.
7.33.4 Programming Restrictions
The F0h Terminate command adheres to the following programming restrictions.
If a program or erase operation is in progress and cannot complete before the operation is terminated via the F0h com-
mand, the contents of the page being programmed or erased cannot be guaranteed to be valid.
The F0h command does not reset the device configuration registers in volatile mode. If a reset of the internal state is
desired, perform a 66h/99h command. This command resets the device and all programmable parameters and all volatile
register contents are lost.
The CS pin must be deasserted on a byte boundary (multiple of eight bits). Otherwise, the device aborts the operation and
returns to the standby mode once the CS pin is deasserted. Also, the device defaults to the standby mode after a power
cycle.
Datasheet
5-Aug-2021
Revision F
102
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.34 READ MANUFACTURER/DEVICE ID (90H)
The Read Manufacturer/Device ID (90h) command provides both the JEDEC assigned manufacturer ID, and the specific device
ID.
7.34.1 Transfer Format
The 90h command follows the 1-1-1 transfer format described in Section 5.2, where the command and address are transferred
on the SI pin, and data is transferred on the SO pin. See Figure 7 for timing diagram of this operation.
7.34.2 Transfer Sequence
To perform the Read Array operation, the CS pin is asserted and the information transferred as follows:
The 90h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three dummy bytes are clocked in during the address phase. A total of 24 clocks are required. These three dummy bytes
are not used
Data is output on the SO pin. Two bytes are transferred, requiring a total of 16 clock cycles. The data is driven onto the bus
as follows:
- 1st data clock: bit 7 of the manufacturer ID is output on the SO pin
- 2nd data clock: bit 6 of the manufacturer ID is output on the SO pin
- .........
- 8th data clock: bit 0 of the manufacturer ID is output on the SO pin
- 9th data clock: bit 7 of the device ID is output on the SO pin
- 10th data clock: bit 6 of the device ID is output on the SO pin
- .........
- 16th data clock: bit 0 of the device ID is output on the SO pin
Deasserting the CS pin terminates the read operation and puts the SO pin into high-impedance state. If the CS pin remains
asserted, the device continues to shift out the manufacturer ID followed by the device ID.
See Table 20 for more information on the transfer sequence for this command.
7.35 QUAD I/O READ MANUFACTURER/DEVICE ID (94H)
The Read Manufacturer/Device ID command operates in quad I/O mode, where the SI, SO, WP, and HOLD pins are all bidirec-
tional, to allow the manufacturer and device ID information to be transmitted at four times the speed of the Read Manufacturer/
Device ID command (90h).
7.35.1 Transfer Format
The 94h command follows the 1-4-4 transfer format described in Section 5.6, where the command is transferred on the SI pin,
and the address and data are transferred on the SI, SO, WP, and HOLD pins. See Figure 15 for a timing diagram of this transaction.
7.35.2 Transfer Sequence
To perform the Quad Read Manufacturer/Device ID command, the CS pin is asserted and the information transferred as follows:
The 94h command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three dummy address bytes are clocked in during the address phase. A total of 6 clocks are required. These three dummy
bytes are ignored.
The mode byte is clocked into the device. Two clocks are required to transfer the command. The one dummy byte is
ignored.
Datasheet
5-Aug-2021
Revision F
103
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Four dummy clocks are driven to the device prior to the output of data.
Data is output on the SI, SO, WP, and HOLD pins. Each byte transfer requires two clock cycles. The data is always output
with the most significant bit of the byte transferred first. The first byte transferred is the manufacturer ID. The second byte
transferred is the device ID. As long as CS is asserted, hardware continues to shift these two bytes out onto the bus. Each
data byte is shifted out of the device as follows:
- First data clock: bit 7 of the manufacturer ID is output on the HOLD pin
- First data clock: bit 6 of the manufacturer ID is output on the WP pin
- First data clock: bit 5 of the manufacturer ID is output on the SO pin
- First data clock: bit 4 of the manufacturer ID is output on the SI pin
- Second data clock: bit 3 of the manufacturer ID is output on the HOLD pin
- Second data clock: bit 2 of the manufacturer ID is output on the WP pin
- Second data clock: bit 1 of the manufacturer ID is output on the SO pin
- Second data clock: bit 0 of the manufacturer ID is output on the SI pin
- In clocks 3 and 4, the device ID is shifted out on byte 2 in the same manner as above
7.36 READ JEDEC ID (9FH)
The Read JEDEC ID command allows software to identify the manufacturer and device ID information for the device while it is in
the system. This command allows the ID information to be read out a relatively low clock frequency to ensure the device can be
identified. Once the identification process is complete, the application can increase the clock frequency as necessary. For more
information, see the Serial Flash Discoverable Parameters (SFDP) JEDEC specification, edition JESD216C.
7.36.1 Transfer Format
The 9Fh command follows the 1-0-1 transfer format described in Section 5.2, where the command is transferred on the SI pin,
and data is transferred on the SO pin. See Figure 30 for timing diagram of this operation. Note that no address is required for this
type of read operation.
7.36.2 Transfer Sequence
To perform the JEDEC ID operation, the CS pin is asserted and the information transferred as follows:
The 9Fh command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first. No address is required for this transaction.
Data is output on the SO pin. Five bytes are transferred, requiring a total of 40 clock cycles. The data is driven onto the bus
as follows:
- 1st data clock: bit 7 of the manufacturer ID is output on the SO pin
- .........
- 8th data clock: bit 0 of the manufacturer ID is output on the SO pin
- 9th data clock: bit 7 of the device ID byte 1 is output on the SO pin
- .........
- 16th data clock: bit 0 of the device ID byte 1 is output on the SO pin
- 17th data clock: bit 7 of the device ID byte 2 is output on the SO pin
- .........
- 24th data clock: bit 0 of the device ID byte 2 is output on the SO pin
- 25th data clock: bit 7 of the extended device string length byte is output on the SO pin
- .........
- 32nd data clock: bit 0 of the extended device string length byte is output on the SO pin
- 33rd data clock: bit 7 of the extended device string value byte is output on the SO pin
- .........
- 40th data clock: bit 0 of the extended device string value byte is output on the SO pin
Deasserting the CS pin terminates the read operation and puts the SO pin into high-impedance state. If the CS pin remains
asserted, the device continues to shift out the manufacturer ID followed by the device ID.
Datasheet
5-Aug-2021
Revision F
104
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
See Table 20 for more information on the transfer sequence for this command.
Table 36 and Table 37 show the contents of each data byte.
Table 36: Manufacturer and Device ID Details
Hex
Value
Data Type
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Details
JEDEC Assigned Code
JEDEC Code: 0001 1111 (1Fh for Dialog
Semiconductor)
Manufacturer ID
1Fh
44h
08h
01h
0xh
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
1
x
Family Code
Density Code
1
Family Code: 010 (4h)
Density Code: 00100 (4h)
Device ID (Part 1)
Device ID (Part 2)
1
Sub Code
0
0
0
0
Sub-family Code
Revision Code
0 0
Sub Code: 000
Sub-family Code: 01
0
1
Number of Extended Device ID Bytes to Follow
Device ID (Part 3)
(EDI String Length)
Bytes to follow: 1
0
0
0
0
0
0
0
x
Extended device Identity Value
Device ID (Part 4)
(EDI String Value)
x: Device Variant/Option. See table below.
0
0
x
x
Table 37: Device ID Part 4 Variants — EDI String Value
EDI String Value
00h
Variant
Initial device
TBD
01h - 07h
08h - 0Fh
Reserved
7.36.3 Transfer Diagram
Figure 30 shows the bus signals during an indirect register read operation. This command requires only a single 8-bit address.
CS
0
6
7
8
14 15 16
22 23 24
30 31 32
38 39 40
46
SCK
SI
OPCODE
9Fh
HIGH-IMPEDANCE
08h
01h
1Fh
44h
0x
SO
MANUFACTURER ID
DEVICE ID
BYTE1
DEVICE ID
BYTE2
EXTENDED
DEVICE
INFORMATION
STRING LENGTH
EXTENDED
DEVICE
INFORMATION
STRING VALUE
Note: Each transition
shown for SI and SO represents one byte (8 bits)
Figure 30: Read JEDEC ID
Datasheet
5-Aug-2021
Revision F
105
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
7.37 SERIAL FLASH DISCOVERABLE PARAMETERS (5AH)
The device contains a 256-byte Serial Flash Discoverable Parameter (SFDP) register. The SFDP register can be sequentially
read in a similar fashion to the Read Array operation up to the maximum clock frequency specified by fSCK
.
7.37.1 Transfer Format
The 5Ah command follows the 1-1-1 transfer format described in Section 5.2.4, where the command, address, and dummy bytes
are transferred on the SI pin, and data is transferred on the SO pin. Figure 8 shows a timing diagram of a read operation with
dummy bytes. In this diagram one byte of data is transferred. Additional bytes can be transferred as long as the CS pin is asserted.
7.37.2 Transfer Sequence
To perform the SFDP operation, the CS pin is asserted and the information transferred as follows:
The 5Ah command is clocked into the device. Eight clocks are required to transfer the command. The most significant bit of
the command is transferred first.
Three address bytes are clocked in to specify the starting address location of the first byte to read within the memory array.
A total of 24 clocks are required to transfer the address. The most significant bit of the address (A[23]) is transferred first.
Following the three address bytes, an additional dummy byte must be clocked into the device.
Data is output on the SO pin. Each byte transfer requires eight clock cycles. The data is always output with the most signif-
icant bit of the byte transferred first. The number of bytes transferred is determined by software. The transfer can be any-
where from a single byte to the entire SFDP value. The most significant bit of each data byte is transferred first.
Deasserting the CS pin terminates the read operation and puts 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. The format of the SFDP re ister follows the format
provided in JEDEC Standard No. 216 Rev B.
7.37.3 Programming Restrictions
When the last byte (0000FFh) of the SFDP Security Register has been read, the device continues reading back at the beginning
of the register (000000h). No delays are incurred when wrapping around from the end of the register to the beginning of the
register.
7.37.4 SFDP Organization
Contact Dialog Semiconductor for SFDP table information.
Datasheet
5-Aug-2021
Revision F
106
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
8
Electrical Specifications
8.1 ABSOLUTE MAXIMUM RATINGS
*Notice: Stresses beyond those listed under “Absolute
Maximum Ratings” may cause permanent
damage to the device. This is a stress rating
only and functional operation of the device at
these or any other conditions beyond those
indicated in the operational sections of this
specification is not implied. Exposure to
Temperature under bias . . . . . . . . . . . . . -55 °C to +125 °C
Storage Temperature . . . . . . . . . . . . . . . -65 °C to +150 °C
All input voltages (including NC pins)
with respect to ground. . . . . . . . . . . . -0.6V to (VCC + 0.5V)
All output voltages
absolute maximum rating conditions for
extended periods may affect device reliability.
with respect to ground..........................-0.6V to (VCC + 0.5V)
8.2 DC AND AC OPERATING RANGE
Parameter
AT25FF041A
Operating Temperature (Case)
-40 °C to 85 °C
VCC Power Supply
1.65V to 3.6V
8.3 DC CHARACTERISTICS
1.65V to 3.6V
Symbol
Parameter
Condition
Units
Min
Typ1
Max
CS = VCC. All other inputs at
0V or VCC
2
IUDPD
Ultra-Deep Power-Down Current
Deep Power-Down Current
Standby Current
5 - 7
250
nA
µA
µA
CS, RESET, WP = VCC. All
other inputs at 0V or VCC
IDPD
8.5
30
19
50
CS, RESET, WP = VCC. All
other inputs at 0V or VCC
3
ISB
IOUT = 0mA
IOUT = 0mA
IOUT = 0mA
IOUT = 0mA
5.6
8.5
10.5
14.5
15
mA
mA
mA
mA
mA
mA
µA
µA
V
SPI (33 MHz)
SPI (104 MHz)
4
ICC1
10.6
13.0
8.5
Dual (104 MHz)
17.5
14.5
15.5
±2
Quad (104 MHz)
ICC3
ICC4
Active Current, Program Operation
Active Current, Erase Operation
Input Load Current
Output Leakage Current
Input Low Voltage
CS = VCC
9.6
CS = VCC
5
ILI
All inputs at CMOS levels
All inputs at CMOS levels
ILO
±2
VIL
VCC x 0.2
VIH
VOL
VOH
VCC x 0.8
VCC - 0.2
V
Input High Voltage
IOL = 100 µA
IOH = -100 µA
0.2
V
Output Low Voltage
V
Output High Voltage
o
1 Typical values measured at 1.8V @ 25 C for the 1.65 V to 3.6 V range.
2 I
value is estimated. Not 100% tested.
UDPD
3 During continuous read mode (0-4-4), I may exceed maximum limit.
SB
4 Checkerboard pattern.
5 WP (IO ) and HOLD/RESET (IO ) pins have an internal pull-up resistor. It's input load current is +2 /-40 μA.
2
3
Datasheet
5-Aug-2021
Revision F
107
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
8.4 AC CHARACTERISTICS - MAXIMUM CLOCK FREQUENCIES
1.65V to 3.6V
Typ
Max1
2.7V to 3.6V
Min Typ Max
Unit
s
Symbol
Parameter
Min
Maximum clock frequency for all operations
(except 03h, 0Bh, 3Bh, 6Bh, EBh, and E7h
commands)
108
133
MHz
Maximum clock frequency for 0Bh and 3Bh
commands
104
108
108
104
108
133
MHz
MHz
MHz
fSCK
Maximum clock frequency for 6Bh command
Maximum clock frequency for EBh and E7h
commands
Maximum clock frequency for 03h command
(Read Array – Low Frequency)
fRDLF
40
40
MHz
1 See Table 21 and Table 22 for the maximum frequency of EBh/E7h commands in various modes.
Datasheet
5-Aug-2021
Revision F
108
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
8.5 AC CHARACTERISTICS – ALL OTHER PARAMETERS
1.65V to 3.6V
Typ
Symbol 1
Parameter
Units
Min
Max
tCLKH
tCLKL
tCLKR
tCLKF
tCSH
SCK High Time
4.5
ns
ns
V/ns
V/ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
µs
µs
µs
µs
µs
µs
SCK Low Time
4.5
0.75
0.75
35
6
Clock Rise Time, Peak-to-Peak (Slew Rate)
Clock Fall Time, Peak-to-Peak (Slew Rate)
Minimum CS High Time
tCSLS
tCSLH
tCSHS
tCSHH
tDS
CS Low Setup Time (relative to clock)
CS Low Hold Time (relative to clock)
CS High Setup Time (relative to clock)
CS High Hold Time (relative to clock)
Data In Setup Time
6
6
6
2
tDH
Data In Hold Time
1
tDIS
Output Disable Time
8
8
tV
Output Valid Time
tOH
Output Hold Time
0
6
6
6
6
tHLS
HOLD Low Setup Time (relative to clock)
HOLD Low Hold Time (relative to clock)
HOLD High Setup Time (relative to clock)
HOLD High Hold Time (relative to clock)
HOLD Low to Output High-Z
tHLH
tHHS
tHHH
tHLQZ
tHHQX
tWPS
tWPH
tEDPD
tEUDPD
tSWTERM
tSWRST
7
7
HOLD High to Output Low-Z
Write Protect Setup Time
20
Write Protect Hold Time
100
CS High to Deep Power-Down
CS High to Ultra Deep Power-Down
Resume from Terminate Command Time
Resume from Software Reset Time
Resume form Ultra Deep Power-Down Time
Resume from Deep Power-Down Time
3
3
50
200
200
35
2
tRUDPD
160
tRDPD
1 Not 100% tested (value guaranteed by design and characterization).
2 The maximum spec is valid for UDPD hold time (duration of Ultra-Deep Power-Down state) of >550 ms. For the shorter UDPD hold times, T
may reach
RUDPD
1200 μs under some conditions.
Datasheet
5-Aug-2021
Revision F
109
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
8.6 PROGRAM AND ERASE CHARACTERISTICS
Symbol Parameter
1.65 V - 3.6 V
2.7 V - 3.6 V
Typ 1
Units
Min
Typ 1
Max 2
Min
Max 2
tPP
Page Program Time (256 Bytes)
Byte Program Time
3.8
7.8
3.2
7.8
ms
µs
3
tBP
24
80
24
70
4 kB
125
850
125
850
ms
ms
ms
sec
µs
tBLKE
Block Erase Time
32 kB
64 kB
560
1100
9
470
920
7.8
1700
1700
tCHPE
Chip Erase Time (4M density)
Suspend Time (Program)
Suspend Time (Erase)
50
50
10
10
50
50
10
10
tSUS
µs
Resume Time (Program)
Resume Time (Erase)
8
8
8
8
µs
tRES
µs
OTP Security Register Program Time
(<= 10K)
tOTPP
5
6
5
6
ms
ms
tWRSR
Write Status Register Time
7.2
37
6.8
37
o
o
1. Typical values measured at 1.8V @ 25 C for the 1.65 V to 3.6 V range; 3.3 V @ 25 C for the 2.7 V to 3.6 V range.
2. Unless otherwise specified, maximum is worst case measurement at cycling conditions after 100K cycles.
3. Program time after the first byte varies.
Datasheet
5-Aug-2021
Revision F
110
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
8.7 POWER ON TIMING
When power is first applied to the device, or when recovering from a reset condition, the output pin (SO) is in a high impedance
state, and a high-to-low transition on the CS pin is required to start a valid command. The SPI mode (Mode 3 or Mode 0) is
automatically selected on every falling edge of CS by sampling the inactive clock state.
As the device initializes, there is a transient current demand. The system needs to be capable of providing this current to ensure
correct initialization. During power-up, the device must not be accessed for at least the minimum tVCSL time after the supply
voltage reaches the minimum VCC level (VCC min). While the device is being powered-up, the internal Power-On Reset (POR)
circuitry keeps the device in a reset mode until the supply voltage rises above the minimum VCC. During this time, all operations
are disabled, and the device does not respond to any commands. (the tVCSL time is measured from when VCC reaches VCC min.)
If Power On Reset (POR) has not been properly completed by the end of tVCSL, the execution of a JEDEC Reset sequence restarts
the POR process. This ensures the device can complete POR sequence, even if some aspect of system Power-On voltage ramp-
up causes the POR to not initiate or complete correctly.
Figure 31 shows the AC timing during power-up.
Vcc
VCCmin
tVCSL
Full Operation
Permitted
tVR
0V
Figure 31: AC Timing During Device Power Up
Table 38: Power On Timing Requirements
1.65V - 3.6V
Typ
Symbol
Parameter
Units
Min
Max
200
µs
µs/V
µs
tVCSL
Minimum VCC to full operation permitted
VCC rise time (from 0V to VCCmin)
VCC brown-out low time
1
6000 1
tVR
300
tWPD
0.2
V
VPWDMAX
Maximum VCC brown-out
o
o
1. 30000 µs/V at -10 C to 85 C.
Datasheet
5-Aug-2021
Revision F
111
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Figure 32 shows the AC power-up timing after a brown-out condition.
Vcc
VCCmin
tVCSL
Full Operation
Permitted
VPWDMAX
tVR
tPWD
Figure 32: AC Power-up Timing After a Brown-Out
8.8 AC TIMING DIAGRAMS
W&6+
&6
W&6/6
W&6/+
W&/./
W&6++
W&/.+
W&6+6
6&.
W'6
W'+
06%
/6%
06%
6,ꢌ62ꢌ:3ꢌ+2/'
Figure 33: Serial Input Timing
CS
SCK
SI
tCLKH
tCLKL
tDIS
tOH
tV
tV
SI/SO/WP/HOLD
Figure 34: Serial Output Timing
Datasheet
5-Aug-2021
Revision F
112
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
CS
tWPS
tWPH
WP
SCK
0
0
0
X
MSB
SI
MSB OF
WRITE STATUS REGISTER
OPCODE
LSB OF
WRITE STATUS REGISTER
DATA BYTE
MSB OF
NEXT OPCODE
HIGH-IMPEDANCE
SO
Figure 35: WP Timing for Write Status Register Command
CS
SCK
HOLD
SI
tHHH
tHLS
tHLH
tHHS
HIGH-IMPEDANCE
SO
Figure 36: HOLD Timing – Serial Input
CS
SCK
tHHH
tHLS
tHLH
tHHS
HOLD
SI
tHLQZ
tHHQX
SO
Figure 37: HOLD Timing – Serial Output
Datasheet
5-Aug-2021
Revision F
113
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
9
Ordering Information
AT 25FF 041 A - SS H N - B
Designator
Shipping
B = Bulk
T = Tape
Product Family
Operating Voltage
N = 1.65V - 3.6V
Device Density
041 = 4 Mbit
Device Grade
H = Green, NiPdAu finish
Revision
U = Green, MatteSn or Sn alloy
Industrial Temperature Range
o
o
(-40 C - +85 C)
Package Options
SS = 8-lead 0.150” narrow SOIC
S = 8-lead 0.208” wide SOIC
MA = 8-pad 2 x 3 x 0.6 mm UDFN
U = 8-ball WLCSP
Table 39: Valid Ordering Codes
Available
to Order
Mechanical
Drawing
Lead
Finish
Operating
Voltage
Temperature
Range
Valid Part Numbers
Description
8-lead, 0.150" Narrow
Plastic Gull Wing Small
Outline Package (JE-
DEC SOIC)
AT25FF041A-SSHN-B
AT25FF041A-SSHN-T
8S1
8S2
8-lead, 0.208” Wide
Plastic Gull Wing Small
Outline Package (EIAJ
SOIC)
AT25FF041A-SHN-B
AT25FF041A-SHN-T
NiPdAu
Yes
8-pad, 2 x 3 x 0.6 mm,
Thermally Enhanced
Plastic Ultra Thin Dual
Flat No Lead Package
(UDFN)
1.65 V to
3.6 V
Industrial
(-40°C to +85°C)
AT25FF041A-MAHN-T
8MA3
8-ball, 3 x 2 x 3 mm Ball
Matrix, 0.35 mm Z-
Height
AT25FF041A-UUN-T
AT25FF041A-DWF 1
8-WLCSP
SnAgCu
--
Contact Dialog
Semiconductor
Die in Wafer Form
1. For more information on Die Wafer From, contact Dialog Semiconductor.
Datasheet
5-Aug-2021
Revision F
114
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
10 Packaging Information
The AT25FF041A device supports the following package types:
8S1, 8-lead 0.150 narrow body JEDEC SOIC
8S2, 8-lead 0.208 wide body EIAJ
8MA3, 2 x 3 x 0.6 mm UDFN
8-WLCSP, 8-ball 3 x 2 x 3 array WLCSP
Each of these packages is described in the following subsections. For information on all other packages, including the Die Wafer
Form, contact Dialog Semiconductor.
Datasheet
5-Aug-2021
Revision F
115
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
10.1 8S1 – JEDEC SOIC
C
1
E
E1
L
N
Ø
TOP VIEW
END VIEW
e
b
COMMON DIMENSIONS
(Unit of Measure = mm)
A
MIN
1.35
0.10
MAX
1.75
0.25
NOM
1.60
0.18
NOTE
SYMBOL
A1
A
A1
b
C
0.31
0.17
4.80
3.81
5.79
0.43
0.22
0.51
0.25
5.05
3.99
6.20
D
4.83
D
E1
E
3.90
6.00
SIDE VIEW
Notes: This drawing is for general information only.
Refer to JEDEC Drawing MS-012, Variation AA
for proper dimensions, tolerances, datums, etc.
e
1.27 BSC
0.60
L
0.40
0°
1.27
8°
ꢀꢀꢀØꢀ
3.75
5/19/10
TITLE
GPC
DRAWING NO.
REV.
8S1, 8-lead (0.150” Narrow Body), Plastic Gull
Wing Small Outline (JEDEC SOIC)
SWB
8S1
F
Datasheet
5-Aug-2021
Revision F
116
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
10.2 8S2 – 8-LEAD EIAJ SOIC
Datasheet
5-Aug-2021
Revision F
117
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
10.3 8MA3 – 2 X 3 UDFN
E
Pin 1 ID
D
SIDE VIEW
A3
A1
TOP VIEW
A
COMMON DIMENSIONS
(Unit of Measure = mm)
K
Option A
0.45
SYMBOL
MIN
0.45
0.00
NOM
MAX
0.60
0.06
Pin #1
Chamfer
(C 0.35)
8
7
6
5
1
2
Pin #1 Notch
(0.20 R)
A
(Option B)
A1
A3
0.150 REF
D2
e
b
D
D2
E
0.20
1.50
0.30
1.70
3
4
2.00 BSC 0.1
1.60
3.00 BSC 0.1
0.50 BSC
0.50
e
b
L
0.40
0.60
L
BOTTOM VIEW
Notes:
1. This package conforms to JEDEC reference MO-229, Saw Singulation.
2. The terminal #1 ID is a Laser-marked Feature.
TITLE
GPC
REV.
D
DRAWING NO.
8MA3, 8-pad (2 x 3 x 0.6 mm Body), Thermally
Enhanced Plastic Ultra Thin Dual Flat No Lead
Package (UDFN)
YFG
8MA3
Datasheet
5-Aug-2021
Revision F
118
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
10.4 8-WLCSP — 8-BALL 3 X 2 X 3 WLCSP
TOP VIEW
BOTTOM VIEW
PIN A1 MARK
PIN A1 MARK
1
2
3
3
2
1
A
B
C
D
A
200
B
400
C
D
E
400
800
200
E
350
700
1767
BSL
SIDE VIEW
25
All dimensions in micrometers (μm)
250
440 21
210 31
165 17
TITLE
Revision
A
Ordering Part
Internal Package
Identifier
Number Identifier
8-ball (3 x 2 x 3 Array)
Wafer Level Chip Scale Package (WLCSP)
UD
DEC
Datasheet
5-Aug-2021
Revision F
119
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
11 Revision History
Revision
Date
Change History
A
3/2020
Initial release of AT25FF041A 8 Mbit data sheet.
Updated low power dissipation numbers in Features on page 1.
Updated Table 8-3, DC Characteristics.
Updated Table 8-4, Maximum Operating Frequencies
Updated Table 8-5, AC Characteristics
Updated Table 8-6, Program and Erase Characteristics
Added 2.7V - 3.6V voltage option to Table 8-6.
B
5/2020
Updated Section 10.3, 8MA3 2 x 3 UDFN package drawing.
Changed data sheet status from ADVANCED to PRELIMINARY.
Updated Table 7-2, Frequency and Number of Dummy Clocks Based on Command Type.
Added 2.7V - 3.6V voltage option to Table 8-4.
Updated frequency information on page 1.
C
D
8/2020
Updated power dissipation information on page 1.
Changed Table 8-19 to indicate temperature dependency.
Updated Table 7-2 and added Table 7-3 in Section 7.4, XiP Mode Read Command.
Updated Section 8.3, Maximum Clock Frequencies.
Changed value in second footnote of Section 8.5, AC Characteristics - All Other Parameters.
Deleted tPE row from table in Section 8.6, Program and Erase Characteristics.
Removed footnote 4 from Section 8.3, DC Characteristics.
01/2021
Applied new corporate template to document.
Removed “Preliminary” designation.
Changed values in Tables 21 and 22, Tables 8.3 - 8.6, and Table 38.
E
F
06/2021
08/2021
Updated UDFN package drawing in Section 10.3.
Datasheet
5-Aug-2021
Revision F
120
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
AT25FF041A
Datasheet
4 Mbit, 1.65 V - 3.6 V Range
SPI Serial Flash Memory with Multi-I/O Support
Disclaimer
Unless otherwise agreed in writing, the Dialog Semiconductor products (and any associated software) referred to in this document are not designed, authorized or warranted
to be suitable for use in life support, life-critical or safety-critical systems or equipment, nor in applications where failure or malfunction of a Dialog Semiconductor product (or
associated software) can reasonably be expected to result in personal injury, death or severe property or environmental damage. Dialog Semiconductor and its suppliers
accept no liability for inclusion and/or use of Dialog Semiconductor products (and any associated software) in such equipment or applications and therefore such inclusion
and/or use is at the customer's own risk.
Information in this document is believed to be accurate and reliable. However, Dialog Semiconductor does not give any representations or warranties, express or implied, as
to the accuracy or completeness of such information. Dialog Semiconductor furthermore takes no responsibility whatsoever for the content in this document if provided by any
information source outside of Dialog Semiconductor.
Dialog Semiconductor reserves the right to change without notice the information published in this document, including, without limitation, the specification and the design of
the related semiconductor products, software and applications. Notwithstanding the foregoing, for any automotive grade version of the device, Dialog Semiconductor
reserves the right to change the information published in this document, including, without limitation, the specification and the design of the related semiconductor products,
software and applications, in accordance with its standard automotive change notification process.
Applications, software, and semiconductor products described in this document are for illustrative purposes only. Dialog Semiconductor makes no representation or warranty
that such applications, software and semiconductor products will be suitable for the specified use without further testing or modification. Unless otherwise agreed in writing,
such testing or modification is the sole responsibility of the customer and Dialog Semiconductor excludes all liability in this respect.
Nothing in this document may be construed as a license for customer to use the Dialog Semiconductor products, software and applications referred to in this document. Such
license must be separately sought by customer with Dialog Semiconductor.
All use of Dialog Semiconductor products, software and applications referred to in this document are subject to Dialog Semiconductor's Standard Terms and
Conditions of Sale, available on the company website (www.dialog-semiconductor.com) unless otherwise stated.
Dialog, Dialog Semiconductor and the Dialog logo are trademarks of Dialog Semiconductor Plc or its subsidiaries. All other product or service names and marks are
the property of their respective owners.
© 2021 Dialog Semiconductor. All rights reserved.
RoHS Compliance
Dialog Semiconductor's suppliers certify that its products are in compliance with the requirements of Directive 2011/65/EU of the European Parliament on the restriction
of the use of certain hazardous substances in electrical and electronic equipment. RoHS certificates from our suppliers are available on request.
Contacting Dialog Semiconductor
United Kingdom (Headquarters)
Dialog Semiconductor (UK) LTD
Phone: +44 1793 757700
North America
Dialog Semiconductor Inc.
Phone: +1 408 845 8500
Hong Kong
Dialog Semiconductor Hong Kong
Phone: +852 2607 4271
China (Shenzhen)
Dialog Semiconductor China
Phone: +86 755 2981 3669
Germany
Japan
Korea
China (Shanghai)
Dialog Semiconductor GmbH
Phone: +49 7021 805-0
Dialog Semiconductor K. K.
Phone: +81 3 5769 5100
Dialog Semiconductor Korea
Phone: +82 2 3469 8200
Dialog Semiconductor China
Phone: +86 21 5424 9058
The Netherlands
Taiwan
121
Dialog Semiconductor B.V.
Phone: +31 73 640 8822
Dialog Semiconductor Taiwan
Phone: +886 281 786 222
Email:
Web site:
enquiry@diasemi.com
www.dialog-semiconductor.com
Datasheet
5-Aug-2021
Revision F
121
DS-AT25FF041A-184
© 2021 Dialog Semiconductor
相关型号:
SI9130DB
5- and 3.3-V Step-Down Synchronous ConvertersWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135LG-T1-E3
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9135_11
SMBus Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9136_11
Multi-Output Power-Supply ControllerWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130CG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130LG-T1-E3
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9130_11
Pin-Programmable Dual Controller - Portable PCsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137DB
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9137LG
Multi-Output, Sequence Selectable Power-Supply Controller for Mobile ApplicationsWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
SI9122E
500-kHz Half-Bridge DC/DC Controller with Integrated Secondary Synchronous Rectification DriversWarning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY
©2020 ICPDF网 联系我们和版权申明