AT25FF321A-SSHN-T [DIALOG]
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support;型号: | AT25FF321A-SSHN-T |
厂家: | Dialog Semiconductor |
描述: | 32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support |
文件: | 总119页 (文件大小:1052K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Features
Voltage Range: 1.65 V - 3.6 V
32 Mbit (2M x 16) 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:
- 26 µA standby current (typical)
- 7 µA Deep Power-Down (DPD) current (typical)
- 5 - 7 nA Ultra Deep Power Down (UDPD) current (typical)
- 8.3 mA active read current (1-1-1 — 104 MHz)
- 9.2 mA program current
- 10.2 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) including silver free
- 8-lead SOIC (208-mil)
- 8-pad Ultra-thin DFN (5 x 6 x 0.6 mm) — Contact Adesto
- 8-pad Ultra-thin Small Outline No-lead USON (3 x 4 x 0.55 mm)
- 12-ball WLCSP (3 x 2 x 3 ball matrix)
- Die in Wafer Form (DWF)
Datasheet
2021-08-19
Revision J
1
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Contents
Features .................................................................................................................................................................................... 1
Contents.................................................................................................................................................................................... 2
Figures ...................................................................................................................................................................................... 8
Tables........................................................................................................................................................................................ 9
1 Product Overview ............................................................................................................................................................... 10
2 Block Diagram .................................................................................................................................................................... 11
3 Pin Descriptions ................................................................................................................................................................. 12
4 Device Operation ................................................................................................................................................................ 15
4.1 Data Transfer Modes ...............................................................................................................................................15
4.2 Standard SPI Operation ...........................................................................................................................................15
4.2.1 Command Only, No Address or Data (1-0-0) ............................................................................................. 16
4.2.2 Command and Address Only, No Data (1-1-0) .......................................................................................... 16
4.2.3 Command and Data Only, No Address (1-0-1) .......................................................................................... 17
4.2.4 Command, Address, and Data (1-1-1) ....................................................................................................... 18
4.3 Dual Output Operation (1-1-2) .................................................................................................................................19
4.4 Quad Output Operation (1-1-4) ................................................................................................................................20
4.5 Quad I/O Operation (1-4-4) ......................................................................................................................................21
4.6 XiP Mode Operation .................................................................................................................................................22
4.6.1 Initial Transfer and XiP Mode Detection (M[5:4]) ....................................................................................... 22
4.6.2 Subsequent Transfers ................................................................................................................................ 23
4.6.3 Set Burst with Wrap ................................................................................................................................... 24
4.7 Memory Architecture ................................................................................................................................................24
4.8 Memory Protection ...................................................................................................................................................27
4.8.1 Standard Memory Protection ..................................................................................................................... 27
4.8.2 Individual Block Lock and Unlock ............................................................................................................... 29
4.8.3 Global Block Lock and Unlock ................................................................................................................... 30
4.8.4 Reading the State of the Lock Bits ............................................................................................................. 30
4.9 Power Down Considerations ....................................................................................................................................30
4.9.1 Entering Power Down Mode ...................................................................................................................... 31
4.9.2 Exiting Power Down Mode ......................................................................................................................... 31
4.9.3 ABh Command ........................................................................................................................................... 31
4.9.4 Device Resets ............................................................................................................................................ 31
4.9.5 Enable Reset (66h) / Reset (99h) Command ............................................................................................. 31
4.9.6 Terminate Command (F0h) ........................................................................................................................ 32
4.9.7 Reset During Program and Erase Commands ........................................................................................... 32
4.10 Erase/Program Suspend Considerations and Nested Operations .........................................................................33
4.10.1 Nested Operations ................................................................................................................................... 33
4.10.2 Suspending and Terminating a Program or Erase Operation ................................................................. 35
4.10.3 Terminating a Non-Volatile Operation in Progress ................................................................................... 35
4.11 OTP Security Register Lock ...................................................................................................................................36
4.12 Standard JEDEC Hardware Reset .........................................................................................................................36
4.13 Chip Select Restrictions .........................................................................................................................................37
4.14 HOLD / RESET Function .......................................................................................................................................37
5 Status Registers ................................................................................................................................................................. 39
5.1 Register Structure and Updates ...............................................................................................................................39
5.2 Register Accesses ...................................................................................................................................................40
5.2.1 Direct and Indirect Addressing ................................................................................................................... 40
5.2.2 Volatile and Non-Volatile Register Accesses ............................................................................................. 40
5.3 Status Register 1 .....................................................................................................................................................41
5.4 Status Register 2 .....................................................................................................................................................42
5.5 Status Register 3 .....................................................................................................................................................45
5.6 Status Register 4 .....................................................................................................................................................46
5.7 Status Register 5 ....................................................................................................................................................47
Datasheet
2021-08-19
Revision J
2
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6 Commands and Addressing .............................................................................................................................................. 48
6.1 Read Array (03h, 0Bh) .............................................................................................................................................51
6.1.1 Command Prerequisites ............................................................................................................................. 51
6.1.2 Transfer Format ......................................................................................................................................... 51
6.1.3 Transfer Sequence ..................................................................................................................................... 51
6.1.4 Programming Restrictions .......................................................................................................................... 51
6.2 Dual Output Read Array (3Bh) .................................................................................................................................52
6.2.1 Command Prerequisites ............................................................................................................................. 52
6.2.2 Transfer Format ......................................................................................................................................... 52
6.2.3 Transfer Sequence ..................................................................................................................................... 52
6.2.4 Programming Restrictions .......................................................................................................................... 52
6.3 Quad Output Read Array (6Bh) ...............................................................................................................................53
6.3.1 Command Prerequisites ............................................................................................................................. 53
6.3.2 Transfer Format ......................................................................................................................................... 53
6.3.3 Transfer Sequence ..................................................................................................................................... 53
6.3.4 Programming Restrictions .......................................................................................................................... 53
6.4 XiP Read (EBh), XiP Read with Double-word Aligned Address (E7h) .....................................................................54
6.4.1 Command Prerequisites ............................................................................................................................. 54
6.4.2 Transfer Format ......................................................................................................................................... 54
6.4.3 Mode Bits ................................................................................................................................................... 54
6.4.4 Transfer Sequence — Initial Transfer ........................................................................................................ 54
6.4.5 Transfer Sequence — Subsequent Transfers ............................................................................................ 55
6.4.6 Programmable Number of Dummy Clocks ................................................................................................. 55
6.4.7 Programming Restrictions .......................................................................................................................... 57
6.5 Block Erase (20h, 52h, D8h) ....................................................................................................................................58
6.5.1 Command Prerequisites ............................................................................................................................. 58
6.5.2 Transfer Format ......................................................................................................................................... 58
6.5.3 Transfer Sequence ..................................................................................................................................... 58
6.5.4 Erase Operation ......................................................................................................................................... 58
6.5.5 Command Status ....................................................................................................................................... 58
6.5.6 Programming Restrictions .......................................................................................................................... 58
6.6 Chip Erase (60h, C7h) .............................................................................................................................................59
6.6.1 Command Prerequisites ............................................................................................................................. 59
6.6.2 Transfer Format ......................................................................................................................................... 59
6.6.3 Transfer Sequence ..................................................................................................................................... 59
6.6.4 Device Status ............................................................................................................................................. 59
6.6.5 Programming Restrictions .......................................................................................................................... 59
6.7 Byte/Page Program (02h) ........................................................................................................................................60
6.7.1 Command Prerequisites ............................................................................................................................. 60
6.7.2 Transfer Format ......................................................................................................................................... 60
6.7.3 Transfer Sequence ..................................................................................................................................... 60
6.7.4 Device Status ............................................................................................................................................. 60
6.7.5 Programming Restrictions .......................................................................................................................... 60
6.8 Sequential Program Mode (ADh/AFh) .....................................................................................................................61
6.8.1 Command Prerequisites ............................................................................................................................. 61
6.8.2 Transfer Format ......................................................................................................................................... 61
6.8.3 Transfer Sequence — Initial Transfer ........................................................................................................ 61
6.8.4 Transfer Sequence — Subsequent Transfers ............................................................................................ 62
6.8.5 Program Status .......................................................................................................................................... 62
6.8.6 Commands Allowed and Not Allowed in Sequential Program Mode .......................................................... 62
6.8.7 Programming Restrictions .......................................................................................................................... 63
6.9 Dual Output Byte/Page Program (A2h) ....................................................................................................................64
6.9.1 Command Prerequisites ............................................................................................................................. 64
6.9.2 Transfer Format ......................................................................................................................................... 64
6.9.3 Transfer Sequence ..................................................................................................................................... 64
6.9.4 Program Status .......................................................................................................................................... 65
6.9.5 Programming Restrictions .......................................................................................................................... 65
Datasheet
2021-08-19
Revision J
3
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.10 Quad Output Page Program (32h) .........................................................................................................................65
6.10.1 Command Prerequisites ........................................................................................................................... 65
6.10.2 Transfer Format ....................................................................................................................................... 66
6.10.3 Transfer Sequence ................................................................................................................................... 66
6.10.4 Programming Restrictions ........................................................................................................................ 66
6.11 Program/Erase Suspend (75h/B0h) .......................................................................................................................67
6.11.1 Command Prerequisites ........................................................................................................................... 67
6.11.2 Transfer Format ....................................................................................................................................... 67
6.11.3 Transfer Sequence ................................................................................................................................... 67
6.11.4 Command Behavior During a Program/Erase Operation ......................................................................... 67
6.11.5 Device Status ........................................................................................................................................... 68
6.11.6 Programming Restrictions ........................................................................................................................ 69
6.12 Program/Erase Resume (7Ah/D0h) .......................................................................................................................69
6.12.1 Command Prerequisites ........................................................................................................................... 69
6.12.2 Transfer Format ....................................................................................................................................... 70
6.12.3 Transfer Sequence ................................................................................................................................... 70
6.12.4 Command Behavior ................................................................................................................................. 70
6.12.5 Programming Restrictions ........................................................................................................................ 70
6.13 Set Burst Wrap (77h) .............................................................................................................................................71
6.13.1 Command Prerequisites ........................................................................................................................... 71
6.13.2 Transfer Format ....................................................................................................................................... 71
6.13.3 Transfer Sequence ................................................................................................................................... 71
6.13.4 Wrap Bits .................................................................................................................................................. 71
6.13.5 Programming Restrictions ........................................................................................................................ 72
6.14 \Write Enable (06h) ................................................................................................................................................72
6.14.1 Command Prerequisites ........................................................................................................................... 72
6.14.2 Transfer Format ....................................................................................................................................... 72
6.14.3 Transfer Sequence ................................................................................................................................... 72
6.14.4 Programming Restrictions ........................................................................................................................ 72
6.15 Write Disable (04h) ................................................................................................................................................73
6.15.1 Command Prerequisites ........................................................................................................................... 73
6.15.2 Transfer Format ....................................................................................................................................... 73
6.15.3 Transfer Sequence ................................................................................................................................... 73
6.15.4 Programming Restrictions ........................................................................................................................ 73
6.16 Volatile Status Register Write Enable (50h) ...........................................................................................................74
6.16.1 Command Prerequisites ........................................................................................................................... 74
6.16.2 Transfer Format ....................................................................................................................................... 74
6.16.3 Transfer Sequence ................................................................................................................................... 74
6.16.4 Programming Restrictions ........................................................................................................................ 74
6.17 Individual Block Lock (36h) ....................................................................................................................................75
6.17.1 Command Prerequisites ........................................................................................................................... 75
6.17.2 Transfer Format ....................................................................................................................................... 75
6.17.3 Transfer Sequence ................................................................................................................................... 75
6.17.4 Programming Restrictions ........................................................................................................................ 75
6.18 Individual Block Unlock (39h) .................................................................................................................................76
6.18.1 Command Prerequisites ........................................................................................................................... 76
6.18.2 Transfer Format ....................................................................................................................................... 76
6.18.3 Transfer Sequence ................................................................................................................................... 76
6.18.4 Programming Restrictions ........................................................................................................................ 76
6.19 Read Block Lock (3Ch/3Dh) ..................................................................................................................................77
6.19.1 Command Prerequisites ........................................................................................................................... 77
6.19.2 Transfer Format ....................................................................................................................................... 77
6.19.3 Transfer Sequence ................................................................................................................................... 77
6.19.4 Programming Restrictions ........................................................................................................................ 77
Datasheet
2021-08-19
Revision J
4
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.20 Global Block Lock (7Eh) ........................................................................................................................................78
6.20.1 Command Prerequisites ........................................................................................................................... 78
6.20.2 Transfer Format ....................................................................................................................................... 78
6.20.3 Transfer Sequence ................................................................................................................................... 78
6.20.4 Programming Restrictions ........................................................................................................................ 78
6.21 Global Block Unlock (98h) .....................................................................................................................................79
6.21.1 Command Prerequisites ........................................................................................................................... 79
6.21.2 Transfer Format ....................................................................................................................................... 79
6.21.3 Transfer Sequence ................................................................................................................................... 79
6.21.4 Programming Restrictions ........................................................................................................................ 79
6.22 Program Security Register (9Bh) ...........................................................................................................................80
6.22.1 Command Prerequisites ........................................................................................................................... 80
6.22.2 OTP Security Register Layout .................................................................................................................. 80
6.22.3 Transfer Format ....................................................................................................................................... 80
6.22.4 Transfer Sequence ................................................................................................................................... 80
6.22.5 Addressing the OTP Security Registers ................................................................................................... 81
6.22.6 Programming Status ................................................................................................................................ 81
6.22.7 Locking OTP Registers 1 - 3 .................................................................................................................... 81
6.22.8 Verifying the Locked Status of a Security Register .................................................................................. 82
6.22.9 Programming Restrictions ........................................................................................................................ 82
6.23 Read OTP Security Register (4Bh) ........................................................................................................................83
6.23.1 Command Prerequisites ........................................................................................................................... 83
6.23.2 Transfer Format ....................................................................................................................................... 83
6.23.3 Transfer Sequence — Single Register ..................................................................................................... 83
6.23.4 Transfer Sequence — All Registers ......................................................................................................... 83
6.23.5 Programming Restrictions ........................................................................................................................ 83
6.24 Read Status Registers 1 - 3 (05h, 35h, 15h) .........................................................................................................84
6.24.1 Command Prerequisites ........................................................................................................................... 84
6.24.2 Transfer Format ....................................................................................................................................... 84
6.24.3 Transfer Sequence ................................................................................................................................... 84
6.24.4 Programming Restrictions ........................................................................................................................ 84
6.25 Read Status Registers (65h) ..................................................................................................................................85
6.25.1 Command Prerequisites ........................................................................................................................... 85
6.25.2 Transfer Format ....................................................................................................................................... 85
6.25.3 Transfer Sequence ................................................................................................................................... 85
6.25.4 Reading a Single Status Register ............................................................................................................ 85
6.25.5 Continuous Read of All Status Registers ................................................................................................. 85
6.25.6 Transfer Diagram ..................................................................................................................................... 86
6.25.7 Programming Restrictions ........................................................................................................................ 86
6.26 Write Status Registers 1 - 3 — Direct (01h, 31h, 11h) ...........................................................................................86
6.26.1 Command Prerequisites ........................................................................................................................... 87
6.26.2 Transfer Format ....................................................................................................................................... 87
6.26.3 Transfer Sequence ................................................................................................................................... 87
6.26.4 Programming Restrictions ........................................................................................................................ 87
6.27 Write Status Registers — Indirect (71h) .................................................................................................................88
6.27.1 Command Prerequisites ........................................................................................................................... 88
6.27.2 Transfer Format ....................................................................................................................................... 88
6.27.3 Transfer Sequence ................................................................................................................................... 88
6.27.4 Writing to a Status Register ..................................................................................................................... 89
6.27.5 Transfer Diagram ..................................................................................................................................... 89
6.27.6 Programming Restrictions ........................................................................................................................ 89
6.28 Status Register Lock (6Fh) ....................................................................................................................................90
6.28.1 Command Prerequisites ........................................................................................................................... 90
6.28.2 Transfer Format ....................................................................................................................................... 90
6.28.3 Transfer Sequence ................................................................................................................................... 90
6.28.4 Transfer Diagram ..................................................................................................................................... 90
6.28.5 Programming Restrictions ........................................................................................................................ 90
Datasheet
2021-08-19
Revision J
5
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.29 Deep Power Down (B9h) .......................................................................................................................................91
6.29.1 Command Prerequisites ........................................................................................................................... 91
6.29.2 Transfer Format ....................................................................................................................................... 91
6.29.3 Transfer Sequence ................................................................................................................................... 91
6.29.4 Programming Restrictions ........................................................................................................................ 91
6.30 Resume from Ultra-Deep Power Down / Deep Power Down with Device ID (ABh) ...............................................92
6.30.1 Command Options ................................................................................................................................... 92
6.30.2 Command Prerequisites ........................................................................................................................... 92
6.30.3 Transfer Format — Resume from Deep Power Down ............................................................................. 92
6.30.4 Transfer Format — Resume from Deep Power Down and Obtain Device ID .......................................... 92
6.30.5 Transfer Sequence — Resume from Deep Power Down ......................................................................... 92
6.30.6 Transfer Sequence — Resume from Deep Power Down and Obtain Device ID ..................................... 93
6.30.7 Transfer Sequence — Resume from Ultra-Deep Power Down ................................................................ 93
6.30.8 Programming Restrictions ........................................................................................................................ 93
6.31 Ultra-Deep Power Down (79h) ...............................................................................................................................94
6.31.1 Command Prerequisites ........................................................................................................................... 94
6.31.2 Transfer Format ....................................................................................................................................... 94
6.31.3 Transfer Sequence ................................................................................................................................... 94
6.31.4 Programming Restrictions ........................................................................................................................ 95
6.32 Enable Reset (66h) and Reset Device (99h) .........................................................................................................96
6.32.1 Command Prerequisites ........................................................................................................................... 96
6.32.2 Transfer Format ....................................................................................................................................... 96
6.32.3 Transfer Sequence ................................................................................................................................... 96
6.32.4 Programming Restrictions ........................................................................................................................ 96
6.33 Terminate (F0h) .....................................................................................................................................................97
6.33.1 Command Prerequisites ........................................................................................................................... 97
6.33.2 Transfer Format ....................................................................................................................................... 97
6.33.3 Transfer Sequence ................................................................................................................................... 97
6.33.4 Programming Restrictions ........................................................................................................................ 97
6.34 Read Manufacturer/Device ID (90h) ......................................................................................................................98
6.34.1 Command Prerequisites ........................................................................................................................... 98
6.34.2 Transfer Format ....................................................................................................................................... 98
6.34.3 Transfer Sequence ................................................................................................................................... 98
6.34.4 Programming Restrictions ........................................................................................................................ 98
6.35 Quad I/O Read Manufacturer/Device ID (94h) .......................................................................................................99
6.35.1 Command Prerequisites ........................................................................................................................... 99
6.35.2 Transfer Format ....................................................................................................................................... 99
6.35.3 Transfer Sequence ................................................................................................................................... 99
6.35.4 Programming Restrictions ........................................................................................................................ 99
6.36 Read JEDEC ID (9Fh) .........................................................................................................................................100
6.36.1 Command Prerequisites ......................................................................................................................... 100
6.36.2 Transfer Format ..................................................................................................................................... 100
6.36.3 Transfer Sequence ................................................................................................................................. 100
6.36.4 Transfer Diagram ................................................................................................................................... 101
6.36.5 Programming Restrictions ...................................................................................................................... 102
6.37 Serial Flash Discoverable Parameters (5Ah) .......................................................................................................103
6.37.1 Command Prerequisites ......................................................................................................................... 103
6.37.2 Transfer Format ..................................................................................................................................... 103
6.37.3 Transfer Sequence ................................................................................................................................. 103
6.37.4 Programming Restrictions ...................................................................................................................... 103
6.37.5 SFDP Organization ................................................................................................................................ 103
7 Electrical Specifications .................................................................................................................................................. 104
7.1 Absolute Maximum Ratings ...................................................................................................................................104
7.2 DC and AC Operating Range ................................................................................................................................104
7.3 DC Characteristics for 1.65V to 3.6V .....................................................................................................................105
7.4 AC Characteristics - Maximum Clock Frequencies ................................................................................................105
7.5 AC Characteristics – All Other Parameters ............................................................................................................106
Datasheet
2021-08-19
Revision J
6
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7.6 Program and Erase Characteristics .......................................................................................................................107
7.7 Power On Timing ...................................................................................................................................................108
7.8 AC Timing Diagrams ..............................................................................................................................................109
8 Ordering Information ....................................................................................................................................................... 111
9 Packaging Information ..................................................................................................................................................... 112
9.1 8S1 – JEDEC SOIC ...............................................................................................................................................113
9.2 8S2 – 8-lead EIAJ SOIC ........................................................................................................................................114
9.3 8MA3 – 2 x 3 UDFN ...............................................................................................................................................115
9.4 12WLCSP — 12-ball WLCSP ................................................................................................................................116
Revision History................................................................................................................................................................... 117
Datasheet
2021-08-19
Revision J
7
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Figures
Figure 1: Block Diagram.......................................................................................................................................................... 11
Figure 2: Dialog Semiconductor Memory Package Types ...................................................................................................... 12
Figure 3: SPI Transfer — Command Only .............................................................................................................................. 16
Figure 4: SPI Transfer — Command and Address Only ......................................................................................................... 16
Figure 5: SPI Transfer — Command and Data Only — Read Operation................................................................................ 17
Figure 6: SPI Transfer — Command and Data Only — Write Operation................................................................................ 17
Figure 7: SPI Transfer — Command, Address, and Data — Read Operation with No Dummy Bytes.................................... 18
Figure 8: SPI Transfer — Command, Address, and Data — Read Operation with Dummy Bytes ......................................... 18
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation ........................................................................ 19
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 ........................... 20
Figure 14: Quad I/O Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Read Operation................................. 21
Figure 15: XiP Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Initial Read (M[5:4] = 2’b10)....................... 22
Figure 16: XiP Transfer — 4-Pin Address, and 4-Pin Data — Subsequent Reads (M[5:4] = 2’b10) ...................................... 23
Figure 17: XiP Transfer — Command, 4-Pin Address, and 4-Pin Data — Write Operation.................................................... 24
Figure 18: AT25FF321A Device Block Memory Map.............................................................................................................. 25
Figure 19: AT25FF321A Device Block Memory Map — Page Program ................................................................................. 26
Figure 20: Flow Diagram of Nested Operations Example....................................................................................................... 34
Figure 21: Allowing Enough Time for the Suspend Operation to Complete............................................................................ 35
Figure 22: OTP Security Register Program and Lock............................................................................................................. 36
Figure 23: JEDEC Standard Hardware Reset......................................................................................................................... 37
Figure 24: AT25FF321A Register Structure............................................................................................................................ 39
Figure 25: Status Register Read Operation Showing 8-bit Address Field .............................................................................. 86
Figure 26: Status Register Write Operation Showing 8-bit Address Field............................................................................... 89
Figure 27: Status Register Lock Operation with Two Verification Bytes ................................................................................. 90
Figure 28: Resume from Deep Power Down or Ultra-Deep Power Down............................................................................... 93
Figure 29: Entering Ultra-Deep Power Down State................................................................................................................. 94
Figure 30: Enable Reset and Reset Command Sequence (SPI Mode) .................................................................................. 96
Figure 31: Read JEDEC ID ................................................................................................................................................... 102
Figure 32: AC Timing During Device Power Up.................................................................................................................... 108
Figure 33: AC Power-up Timing After a Brown-Out .............................................................................................................. 109
Figure 34: Serial Input Timing............................................................................................................................................... 109
Figure 35: Serial Output Timing ............................................................................................................................................ 109
Figure 36: WP Timing for Write Status Register Command.................................................................................................. 110
Figure 37: HOLD Timing – Serial Input ................................................................................................................................. 110
Figure 38: HOLD Timing – Serial Output .............................................................................................................................. 110
Datasheet
2021-08-19
Revision J
8
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Tables
Table 1: Pin Descriptions .........................................................................................................................................................13
Table 2: Bus Transfer Types....................................................................................................................................................15
Table 3: Protection Scheme (CMPRT = 0)...............................................................................................................................28
Table 4: Protection Bits (CMPRT 1).........................................................................................................................................29
Table 5: Entering DPD or UDPD Mode....................................................................................................................................31
Table 6: Exiting DPD or UDPD Mode.......................................................................................................................................31
Table 7: Resetting the Device During a Program or Erase Operation .....................................................................................32
Table 8: Encoding of Erase/Program Suspend Operations .....................................................................................................33
Table 9: Address Field Encoding .............................................................................................................................................40
Table 10: Status Register 1 Format .........................................................................................................................................41
Table 11: Status Register 2 Format .........................................................................................................................................42
Table 12: Status Register During Normal Operation................................................................................................................44
Table 13: Status Register Protection After Reset.....................................................................................................................44
Table 14: Status Register 3 Format .........................................................................................................................................45
Table 15: Status Register 4 Format .........................................................................................................................................46
Table 16: Status Register 5 Format .........................................................................................................................................47
Table 17: Command Listing .....................................................................................................................................................48
Table 18: Frequency and Number of Dummy Clocks Based on Command Type in Non-Wrap Mode (default) ......................56
Table 19: Frequency and Number of Dummy Clocks Based on Command Type in Wrap Mode (77h)...................................57
Table 20: Command Behavior During Sequential Programming Mode ...................................................................................62
Table 21: Command Behavior During Program/Erase or Program/Erase Suspend Operations..............................................67
Table 22: Encoding of Burst Wrap Bits ....................................................................................................................................71
Table 23: OTP Security Register 0 Bit Assignments................................................................................................................80
Table 24: OTP Security Register 1 Bit Assignments................................................................................................................80
Table 25: OTP Security Register 2 Bit Assignments................................................................................................................80
Table 26: OTP Security Register 3 Bit Assignments................................................................................................................80
Table 27: OTP Register Access Address Map.........................................................................................................................81
Table 28: Indirect Addressing of the Status Registers .............................................................................................................85
Table 29: Indirect Status Register Read Sequence.................................................................................................................86
Table 30: Indirect Addressing of the Status Registers .............................................................................................................88
Table 31: Indirect Status Register Write Sequence .................................................................................................................89
Table 32: Options for Exiting DPD and UDPD Modes .............................................................................................................92
Table 33: Manufacturer and Device ID Details.......................................................................................................................101
Table 34: Device ID Part 4 Variants — EDI String Value.......................................................................................................101
Table 35: Power On Timing Requirements ............................................................................................................................108
Table 36: Ordering Code Descriptions...................................................................................................................................111
Datasheet
2021-08-19
Revision J
9
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
1
Product Overview
The AT25FF321A 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 AT25FF321A 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 AT25FF321A 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 AT25FF321A 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
2021-08-19
Revision J
10
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
2
Block Diagram
Figure 1 shows a block diagram of the AT25FF321A 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 32-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.
Figure 1: Block Diagram
Datasheet
2021-08-19
Revision J
11
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
3
Pin Descriptions
Figure 2 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
2
3
4
8
7
6
5
VCC
CS
SO (I/O1)
WP (I/O2)
GND
HOLD/RESET (I/O3)
8MA1 8-pad 5 x 6 x 0.6 mm UDFN Package
SCK
SI (I/O0)
Bottom View
NC
A1
NC
A5
VCC
B2
CS
B4
GND
C3
12-ball WLCSP Package
SO
D4
HOLD
D2
SI
E3
SCK
F2
WP
F4
G1
NC
G5
NC
Figure 2: Dialog Semiconductor Memory Package Types
Datasheet
2021-08-19
Revision J
12
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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 deas-
serted, 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 deselected, 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.
Data present on the SI pin is ignored whenever the device is deselected (CS is
deasserted and the device is in the reset condition).
Input/
Output
SI (I/O0)
SO (I/O1)
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.
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).
Input/
Output
WRITE PROTECT: The WP pin 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 can be left floating if hardware controlled
protection is not used. However, it is recommended that the WP pin also be externally
connected to VCC whenever possible.
WP (I/
O2)
Input/
Output
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
2021-08-19
Revision J
13
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 1: Pin Descriptions (continued)
Asserted
State
Symbol
Name and Function
Type
HOLD / RESET: The HOLD pin temporarily pauses serial communication without
deselecting or resetting the device. While the HOLD pin is asserted, transitions on
the SCK pin and data on the SI pin 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 becomes an output pin (I/O3) in conjunction with other pins to allow four
bits of data on (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 refer-
enced as the HOLD pin unless specifically addressing the Quad Output mode in
which case it is referenced as I/O3.
HOLD /
RESET
(I/O3)
Input/
Output
Low
The HOLD pin is internally pulled-high and can be left floating if the Hold function is
not used. However, it is recommended that the HOLD pin also be externally connect-
ed 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/RESET bit
7 in Status Register 3. Note that when the QE bit is set, the HOLD or RESET function
is not available because this pin transfers data.
DEVICE POWER SUPPLY: The VCC pin is used to supply the source voltage to the
device. Operations at invalid VCC voltages can produce spurious results; do not
attempt.
VCC
-
-
Power
Power
GROUND: The ground reference for the power supply. Connect GND to the system
ground.
GND
Datasheet
2021-08-19
Revision J
14
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4
Device Operation
This section describes the various data transfer modes supported by the device, as well as other system operations.
4.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 AT25FF321A supports the following transfer types.
Table 2: Bus Transfer Types
Transfer
Type
Transfer
Name
Pin(s) Used for
Command
Pin(s) Used for
Address
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
SPI
Yes
SI
No
--
Yes
SI (write)
SO (read)
1-1-1
1-1-2
1-1-4
SPI
Yes
Yes
Yes
SI
SI
SI
Yes
Yes
Yes
SI
SI
SI
Yes
Yes
Yes
Dual Output
Quad Output
SI, SO
SI, SO, WP,
HOLD
SI, SO, WP,
HOLD
SI, SO, WP,
HOLD
1-4-4
0-4-4
Quad I/O
XiP
Yes
No
SI
--
Yes
Yes
Yes
Yes
SI, SO, WP,
HOLD
SI, SO, WP,
HOLD
As shown in the table above, the AT25FF321A supports the transfer formats below. These formats are described in the following
subsections:
Standard SPI Operation
Dual Output Operation
Quad Output Operation
Quad I/O Operation
XiP Operation
4.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 AT25FF321A 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
2021-08-19
Revision J
15
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.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
4.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
2021-08-19
Revision J
16
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.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
2021-08-19
Revision J
17
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.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 Table 17 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
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.
Datasheet
2021-08-19
Revision J
18
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
&6
ꢃ
ꢂ
ꢀ
ꢁ
ꢇ
ꢆ
ꢄ
ꢅ
ꢊ
ꢉ
ꢂꢃ ꢂꢂ ꢂꢀ
ꢀꢉ ꢁꢃ ꢁꢂ ꢁꢀ ꢁꢁ ꢁꢇ ꢁꢆ ꢁꢄ ꢁꢅ ꢁꢊ ꢁꢉ
6&.
6,
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃ
'$7$ꢋ,1
&
06%
&
&
&
&
&
&
&
$
06%
$
$
$
$
$
$
$
$
'
06%
'
'
'
'
'
'
'
+,*+ꢈ,03('$1&(
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation
4.3 DUAL OUTPUT OPERATION (1-1-2)
The AT25FF321A 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 6,
Commands and Addressing.
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
SCK
6,ꢋꢌ6,2ꢍ
SO
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃꢋ
'800ꢋ <ꢋ
'$7$ꢋ287ꢋꢂ
DA7$ꢋ287ꢋꢀ
D
D
4
D
2
D
D
D
4
D
2
D
D
D
4
&
MS B
&
&
&
&
&
&
&
A
A
A
A
A
A
A
A
A
X
X
X
X
X
X
X
X
6
0
6
0
6
MS B
MS B
HIGH-IMPEDANCE
D
D
5
D
3
D
D
D
5
D
3
D
D
7
D
5
7
1
7
1
MS B
MS B
MS B
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
1
3
4
5
6
7
8
9
10 11 12
29 30 31 32 33 34 35 36 37 38 39
SCK
6,ꢋꢌ6,2ꢍ
SO
&200$1'
$''5(66ꢋ%,76ꢋ$ꢀꢁꢈ$ꢃꢋ
DAT$ꢋ,1ꢋꢂ
DAT$ꢋ,1ꢋꢀ
D
D
4
D
2
D
D
D
4
D
2
D
0
&
MS B
&
&
&
&
&
&
&
A
A
A
A
A
A
A
A
A
6
0
6
MS B
HIGH-IMPEDANCE
D
D
5
D
3
D
1
D
D
5
D
3
D
1
7
7
MS B
MS B
Figure 11: Dual Output Write — 1-Pin Command, 1-Pin Address, and 2-Pin Data
Datasheet
2021-08-19
Revision J
19
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.4 QUAD OUTPUT OPERATION (1-1-4)
The AT25FF321A 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: 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 Table 17 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
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
2021-08-19
Revision J
20
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.5 QUAD I/O OPERATION (1-4-4)
The AT25FF321A 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: 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-Z (tri-state) 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 Table 17 for more information.
Command
Figure 14: Quad I/O Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Read Operation
Datasheet
2021-08-19
Revision J
21
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.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-Z (tri-state) 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 6.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.
4.6.1 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
2021-08-19
Revision J
22
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.6.2 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
2021-08-19
Revision J
23
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.6.3 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 6.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 6.13, Set Burst Wrap (77h) for more information.
4.7 MEMORY ARCHITECTURE
The memory array of the AT25FF321A 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
2021-08-19
Revision J
24
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Figure 18 shows 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.
64 kB Block Erase (D8h)
32 kB Block Erase (52h)
4 kB Block Erase (20h)*
4 kB (B1023)
4 kB (B1022)
4 kB (B1021)
4 kB (B1020)
4 kB (B1019)
4 kB (B1018)
4 kB (B1017)
4 kB (B1016)
4 kB (B1015)
4 kB (B1014)
4 kB (B1013)
4 kB (B1012)
4 kB (B1011)
4 kB (B1010)
4 kB (B1009)
4 kB (B1008)
4 kB (B1007)
to
Block Address Range
3FF000h - 3FFFFFh
3FE000h - 3FEFFFh
3FD000h - 3FDFFFh
3FC000h - 3FCFFFh
3FB000h - 3FBFFFh
3FA000h - 3FAFFFh
3F9000h - 3F9FFFh
3F8000h - 3F8FFFh
3F7000h - 3F7FFFh
3F6000h - 3F6FFFh
3F5000h - 3F5FFFh
3F4000h - 3F4FFFh
3F3000h - 3F3FFFh
3F2000h - 3F2FFFh
3F1000h - 3F1FFFh
3F0000h - 3F0FFFh
3EF000h - 3EFFFFh
to
32 kB
(block 127)
64 kB
(block 63)
32 kB
(block 126)
64 kB (block 62)
to
32 kB (block 125)
to
64 kB (block 1)
32 kB (block 2)
4 kB (B16)
4 kB (B15)
4 kB (B14)
4 kB (B13)
4 kB (B12)
4 kB (B11)
010000h - 010FFFh
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)
4 kB (B10)
4 kB (B9)
64 kB
4 kB (B8)
(block 0
4 kB (B7)
4 kB (B6)
4 kB (B5)
32 kB
4 kB (B4)
(block 0)
4 kB (B3)
4 kB (B2)
4 kB (B1)
4 kB (B0)
* B = Block
Figure 18: AT25FF321A Device Block Memory Map
Datasheet
2021-08-19
Revision J
25
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Figure 19 shows how one 4 kB block maps to sixteen 256 byte pages. The very top and bottom block ranges are shown.
1 - 256 Byte Page Program
4 kB Blocks
256 Byte Page
(02h)
4 kB (B1023)
4 kB (B1022)
4 kB (B1021)
4 kB (B1020)
4 kB (B1019)
4 kB (B1018)
4 kB (B1017)
4 kB (B1016)
4 kB (B1015)
4 kB (B1014)
4 kB (B1013)
4 kB (B1012)
4 kB (B1011)
4 kB (B1010)
4 kB (B1009)
4 kB (B1008)
4kB (B1007)
to
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
.
3FFF00h - 3FFFFFh
3FFE00h - 3FFEFFh
3FFD00h - 3FFDFFh
3FFC00h - 3FFCFFh
3FFB00h - 3FFBFFh
3FFA00h - 3FFAFFh
3FF900h - 3FF9FFh
3FF800h - 3FF8FFh
3FF700h - 3FF7FFh
3FF600h - 3FF6FFh
3FF500h - 3FF5FFh
3FF400h - 3FF4FFh
3FF300h - 3FF3FFh
3FF200h - 3FF2FFh
3FF100h - 3FF1FFh
3FF000h - 3FF0FFh
.
.
.
.
.
.
4kB (B16)
.
.
4 kB (B15)
4 kB (B14)
4 kB (B13)
4 kB (B12)
4 kB (B11)
4 kB (B10)
4 kB (B9)
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
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)
Figure 19: AT25FF321A Device Block Memory Map — Page Program
Datasheet
2021-08-19
Revision J
26
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.8 MEMORY PROTECTION
The AT25FF321A 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.
4.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
AT25FF321A 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 5.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 5.3, Status
Register 1 for more information.
TB: This bit indicates if the protection is from the bottom up of the top down of the memory. See bit 5 of Section 5.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 5.3, Status Register 1 for more information.
Datasheet
2021-08-19
Revision J
27
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
The protection scheme differs based on the setting of the CMPRT bit described above. Table 3 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 3: Protection Scheme (CMPRT = 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
3F0000h - 3FFFFFh
3E0000h - 3FFFFFh
3C0000h - 3FFFFFh
380000h - 3FFFFFh
300000h - 3FFFFFh
200000h - 3FFFFFh
000000h - 3FFFFFh
NONE
000000h - 00FFFFh
000000h - 01FFFFh
000000h - 03FFFFh
000000h - 07FFFFh
000000h - 0FFFFFh
000000h - 1FFFFFh
000000h - 3FFFFFh
NONE
3FF000h - 3FFFFFh
3FE000h - 3FFFFFh
3FC000h - 3FFFFFh
3F8000h - 3FFFFFh
3F8000h - 3FFFFFh
000000h - 3FFFFFh
000000h - 3FFFFFh
NONE
000000h - 000FFFh
000000h - 001FFFh
000000h - 003FFFh
000000h - 007FFFh
000000h - 007FFFh
000000h - 3FFFFFh
000000h - 3FFFFFh
Datasheet
2021-08-19
Revision J
28
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 4 shows the relationship between the BPSIZE, BP[2:0], and TB bits when CMPRT = 1.
Table 4: Protection Bits (CMPRT 1)
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 - 3FFFFFh
000000h - 3EFFFFh
000000h - 3DFFFFh
000000h - 3BFFFFh
000000h - 37FFFFh
000000h - 2FFFFFh
000000h - 1FFFFFh
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
000000h - 3FFFFFh
010000h - 3FFFFFh
020000h - 3FFFFFh
040000h - 3FFFFFh
080000h - 3FFFFFh
100000h - 3FFFFFh
200000h - 3FFFFFh
NONE
000000h - 3FFFFFh
000000h - 3FEFFFh (1) (2)
000000h - 3FDFFFh (1) (2)
000000h - 3FBFFFh(1) (2)
000000h - 3F7FFFh (2)
000000h - 3F7FFFh (2)
NONE
NONE
000000h - 3FFFFFh
001000h - 3FFFFFh (3) (4)
002000h - 3FFFFFh (3) (4)
004000h - 3FFFFFh (3) (4)
008000h - 3FFFFFh (4)
008000h - 3FFFFFh (4)
NONE
NONE
1. When the 32 kB Erase command is used, the protected region is 0x00_0000 - 0x3F_7FFF.
2. When the 64 kB Erase command is used, the protected region is 0x00_0000 - 0x3E_FFFF.
3. When the 32 kB Erase command is used, the protected region is 0x00_8000 - 0x3F_FFFF.
4. When the 64 kB Erase command is used, the protected region is 0x01_0000 - 0x3F_FFFF.
4.8.2 Individual Block Lock and Unlock
Also to the standard protection scheme described in the previous subsection, the AT25FF321A device also provides the ability
to lock individual memory locations. Protection of memory locations can be applied individually using the Individual Block Lock
Datasheet
2021-08-19
Revision J
29
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
(36h) command and the Individual Block Unlock (39h) command. Note that in the AT25FF321A 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
AT25FF321A uses the Individual Block Lock (36h) command that provides the address of the 4 kB or 64 kB block to be locked.
See Table 14 for more information on the WPS bit.
Figure 18 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 63. For 64 kB blocks 1 - 62, the blocks can only be locked on the 64 kB boundary (1 lock bit per 64 kB). This equates to a
total of 94 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
62 bits, one each for 64 kB blocks 1 - 62
See Section 6.17, Individual Block Lock (36h) and Section 6.18, Individual Block Unlock (39h) for more information.
4.8.3 Global Block Lock and Unlock
In addition to individual block protection of memory locations as described in the previous subsection, the AT25FF321A 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 AT25FF321A 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 6.20, Global Block Lock (7Eh) and Section 6.21, Global Block Unlock (98h) for more information.
4.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 AT25FF321A 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 6.19, Read Block Lock (3Ch/
3Dh) for more information.
4.9 POWER DOWN CONSIDERATIONS
The AT25FF321A 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:
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 4.9.2 below. Note that in the AT25FF321A device, simply deas-
serting CS as in other devices does not exit DPD mode.
Datasheet
2021-08-19
Revision J
30
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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 4.9.2 below.
Note that in the AT25FF321A 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
4.9.2 below for more information on exiting power down mode.
4.9.1 Entering Power Down Mode
The conditions for entering DPD or UDPD mode are shown in the Table 5. The PDM column indicates the state of the Power
Down Mode bit in Status Register 4.
Table 5: Entering DPD or UDPD Mode
Power Down Exit
Recovery Time
Command
PDM bit
Power Down Mode
B9h
B9h
79h
1
0
x
Deep Power Down
Ultra Deep Power Down
Ultra Deep Power Down
Short
Long
Long
4.9.2 Exiting Power Down Mode
The following methods can be used to exit DPD or UDPD mode.
Table 6: Exiting DPD or UDPD Mode
Power Down Exit Com- Power On JEDEC
Command PDM bit
Hardware
66h/99h Terminate StatusAfter
Mode
DPD
mand
ABh 2
ABh 3
ABh 3
Reset
Reset Reset Pin 1 Command
(F0h)
Exit
Idle
Idle
Idle
B9h
B9h
79h
1
0
x
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
N
N
UDPD
UDPD
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.
4.9.3 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.
4.9.4 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.
4.9.5 Enable Reset (66h) / Reset (99h) Command
As shown in Table 6, 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.
Datasheet
2021-08-19
Revision J
31
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.9.6 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.
4.9.7 Reset During Program and Erase Commands
The AT25FF321A 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 7. 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 7: Resetting the Device During a Program or Erase Operation
Hardware
Command Type
Power On Reset
JEDEC Reset
66h/99h Command Terminate (F0h)
Reset Pin
Program
Erase
Y
Y
Y
Y
Y
Y
Y
Y
N
N
Datasheet
2021-08-19
Revision J
32
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.10 ERASE/PROGRAM SUSPEND CONSIDERATIONS AND NESTED OPERATIONS
The AT25FF321A 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.
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 8.
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 20 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 8: Encoding of Erase/Program Suspend Operations
SUSP
ES
0
PS
0
Status
0
1
1
1
No suspend operation in progress.
Program suspend operation in progress.
Erase suspend operation in progress.
Nested erase/program suspend operation in progress.
0
1
1
0
1
1
4.10.1 Nested Operations
The AT25FF321A 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.
Figure 20 shows an example flow diagram of a nested operation.
Datasheet
2021-08-19
Revision J
33
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Execute D8h
Execute the D8h command to
64 KB Block Erase
initiate a 64 KB erase operation.
Execute 75h
64 KB Block Erase Suspend
Execute the 75h command to suspend
the 64 KB block erase operation.
Execute 02h
Byte/Page Program
Execute the 02h command to initiate a
byte/page program operation.
Execute 75h
Byte/Page Program Suspend
Execute the 75h command to suspend
the byte/page program operation.
Execute 03h
Read Array Operation
Execute the 03h command to initiate a
read array operation.
Check to see if the read array operation
is complete. The suspended page
program operation cannot be resumed
until the 03h command has completed.
N
Is 03h Done?
Y
Once the 03h read array command has
completed, the suspended program
operation can be resumed using the 7Ah
command.
Execute 7Ah
Program Resume Operation
Check to see if the byte/page program
operation is complete. The suspended
64 KB erase operation cannot be
resumed until the 02h command has
completed.
N
Is Program
Op Done?
Y
Once the 02h byte/page program
command has completed, the
Execute 7Ah
suspended erase operation can be
resumed using the 7Ah command.
Erase Resume Operation
Check to see if the 64 KB erase
operation is complete.
N
Is Erase Op
Done?
Y
Nested
Operation
Complete
Figure 20: Flow Diagram of Nested Operations Example
Datasheet
2021-08-19
Revision J
34
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
4.10.2 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 the PS (Program Suspend) bit in status register 4 in the case of a Suspend 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.
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 the ES (Erase Suspend) bit in status register 4 in the case of a Suspend command.
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 21.
BUSY
CSB
Terminate
Command
Suspend
ES/PS
Figure 21: Allowing Enough Time for the Suspend Operation to Complete
To perform another program or erase operation, check the ES/PS flags in Status register 4 to determine if the operation can
proceed.
If the ES/PS bit is cleared, the user can issue a new Program/Erase command. Note that previous Program/Erase 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.
4.10.3 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.
Datasheet
2021-08-19
Revision J
35
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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
delayed until after the internal self-timed operations are completed; once the internal operation is completed the device is reset.
See Section 4.12 for more information on how to perform a JEDEC hardware reset.
4.11 OTP SECURITY REGISTER LOCK
The AT25FF321A 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 23 in Section 6.22, Program Security Register (9Bh) for an exact encoding of these address bits.
This concept is shown in Figure 22. 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 22: OTP Security Register Program and Lock
4.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
2021-08-19
Revision J
36
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V 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 always reverts to standard SPI mode after JEDEC hardware reset. Figure 23 illustrates the timing for the JEDEC
hardware reset operation.
tCH
tCL
CS
Mode 3
Mode 0
SCK
SI
SO
High-Impedance
tRST
Internal Reset
Device
is ready
Figure 23: JEDEC Standard Hardware Reset
4.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.
4.14 HOLD / RESET FUNCTION
The AT25FF321A 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.
Datasheet
2021-08-19
Revision J
37
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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 AT25FF321A 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
2021-08-19
Revision J
38
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5
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.
5.1 REGISTER STRUCTURE AND UPDATES
In the AT25FF321A 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
5.2.2 for more information on volatile and non-volatile register types.
The AT25FF321A 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 24.
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 24: AT25FF321A Register Structure
Datasheet
2021-08-19
Revision J
39
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.2 REGISTER ACCESSES
This section describes the various ways to access the AT25FF321A Status registers. The AT25FF321A 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 5.2.1. Also, the device supports both volatile and non-volatile registers as described in Section 5.2.2.
5.2.1 Direct and Indirect Addressing
The AT25FF321A 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 AT25FF321A 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 9.
Table 9: Address Field Encoding
Command
Address
01h
Action
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
02h
65h
03h
04h
05h
01h
02h
71h
03h
04h
05h
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.
5.2.2 Volatile and Non-Volatile Register Accesses
As shown in Figure 24, the AT25FF321A 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 command determines if the Write Status Register command is to the volatile or non-volatile register set.
Datasheet
2021-08-19
Revision J
40
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.3 STATUS REGISTER 1
Table 10 shows the bit assignments for Status register 1.
Table 10: Status Register 1 Format
Bit # Acronym Name
Type
Default Description
The SRP0 bit works in conjunction with the SRP1 bit in Status Reg-
ister 1 to control write protection. Types of protection include software
protection, one-time programmable (OTP) protection, and power
supply lock-down protection. See Table 12 for an encoding of these
bits.
Status Register
Protect 0
7
6
SRP0
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).
0: 64 kB block size
1: 4 kB block size
The blocks can also be protected from the bottom up or from the top
Block Protect
Size
BPSIZE
R/W
R/W
0
down as described in the TB bit of this register.
This controls the direction of the blocks to be protected by the Block
Protect Bits (BP2, BP1, BP0 in bits 4:2 of this register).
0: Protect from bottom up
5
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 control and
status. These bits are set using the Write Status register 1 (01h)
command. This field can be programmed to protect all, none, 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 Protection table.
4:2
BP2:0
Block Protect
R/W
000
The default is 3’b000 (none of the memory array is protected).
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 Reg-
ister 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.
Write Enable
Latch Status
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 before the CS pin is deasserted.
In order for the WEL bit to be reset when an operation aborts prema-
turely, the entire command for a program, erase, memory protection,
or Write Status Register command must have been clocked into the
device.
1
WEL
R
0
When the Write Enable (06h) command is executed, the WEL bit is
set. Conversely, whentheVolatile StatusRegisterWrite 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 progress. 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 de-
vice until the state of the RDY/BSY bit changes from a logic “1” to a
logic “0”.
Ready/Busy
Status
0
RDY/BSY
R
0
This bit is encoded as follows:
0: Device is ready.
1: Device is busy with an internal operation.
Datasheet
2021-08-19
Revision J
41
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.4 STATUS REGISTER 2
The following table shows the bit assignments for Status register 2.
Table 11: Status Register 2 Format
Bit # Acronym
Name
Type Default Description
This bit is set by hardware and indicates that the program or erase
operation has been suspended. This bit is set after software exe-
cutes 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 CMPRTis used in conjunction with BPSIZE, TB, and BP2:BP0
bits to provide additional memory array protection. This bit is en-
coded 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 protect-
ed, and protected areas of memory become unprotected. For ex-
ample, 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 pro-
grammed 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 pro-
grammed.
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.
2
R
Reserved
R
0
Reserved
Datasheet
2021-08-19
Revision J
42
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 11: Status Register 2 Format (continued)
Bit # Acronym
Name
Type Default Description
The QE bit enables Quad SPI and XiP operation.This bit is encod-
ed 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.
This bit only pertains to the following commands:
6Bh: Quad Output Read
1
QE
Quad Enable
R/W
0
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 pinto control write protection. Types of pro-
tection include software protection, hardware protection, one-time
programmable (OTP) protection, and reset lock-down protection.
See Table 12 for an encoding of these bits.
Status Register Pro-
tect 1
0
SRP1
R/W
0
Datasheet
2021-08-19
Revision J
43
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 12 shows the operation of the SRP[1:0] volatile Status register bits during normal operation.
Table 12: Status Register 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 Write Status
Register command (01h, 31h, 11h, 71h) and setting
the WEL bit of this register. Note that the WP pin has
no meaning during this type of operation.
Software Protected
(protection is controlled by the
CMPRT, BPSIZE, TB, BP[2:0], or
WPS bits
0
0
0
0
1
1
x
x
x
x
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 protected
and cannot be written to.
0
1
When the SRP[1:0] bits are 0, 1 respectively, and the
WP pin is high, the registers are not hardware pro-
tected and can be written to by executing a Write
Status Register command (01h, 31h, 11h, 71h) and
setting the WEL bit of this register.
Hardware Unprotected
(protection is controlled by the
CMPRT, BPSIZE, TB, BP[2:0], or
WPS bits
When the SRP[1:0] bits are 1, 0 respectively, the Sta-
tus registers are write protected and cannot be writ-
ten until the device is reset (caused by a power-cy-
cle, hardware reset, or software reset). After reset,
hardware changes the state of the SRP[1:0] bits as
shown in Table 12.
1
0
x
x
Hardware Protected
When the SRP[1:0] bits are 1,1 respectively, and the
SRLOCK bit is 0, the Status registers are write pro-
tected and cannot be written until the device is reset
(caused by a power-cycle, hardware reset or soft-
ware reset). After reset, hardware changes the state
of SRP[1:0] bits as shown in Table 12.
1
1
1
1
0
0
x
x
Reset Lockdown
OTP
When the SRP[1:0] bits are 1,1 respectively, and the
SRLOCK bit is 1, the Status registers are permanent-
ly write protected.
Table 13 shows the behavior of the SRP1 and SRP0 bits after a reset condition.
Table 13: Status Register Protection After Reset
VolatileRegister
Bits
Non-Volatile Memory Bits
Type of
Description
Protection
SRP1 SRP0 SRLOCK
SRP1 SRP0
Software
Protected
The reset operation maintains the volatile SRP1 and SRP0 at
0,0.
0
0
1
1
0
1
0
1
x
x
x
0
0
0
0
0
0
1
0
1
Hardware
Protected
The reset operation maintains the volatile SRP1 and SRP0 at
0,1.
Reset
Lockdown to 0,0.
The reset operation changes the volatile SRP1 and SRP0 bits
Reset
Lockdown to 0,1.
The reset operation changes the volatile SRP1 and SRP0 bits
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
2021-08-19
Revision J
44
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.5 STATUS REGISTER 3
Table 14 shows the bit assignments for Status Register 3.
Table 14: Status Register 3 Format
Bit # Acronym
Name
Type
Default Description
Dialog Semiconductor provides a variety of packages for the
AT25FF321A, as shown in Section 3. 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
01*
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 AT25FF321A 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.
Write Protection
Select
1: The AT25FF321A 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.
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 4.8, Memory
Protection.
1:0
R
Reserved
R
0
Reserved
* 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
2021-08-19
Revision J
45
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.6 STATUS REGISTER 4
Table 15 shows the bit assignments for Status register 4.
Table 15: 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.
Power Down
Mode
7
PDM
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 4.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:
Sequential
Program
Mode Status
0: Byte/Page Programming Mode (default)
1: Sequential Programming Mode entered
6
SPM
R
0
If this bit is 1, the address is only required for the first transfer of the
sequential operation. Thus, 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).
5
4
R
R
Reserved
Reserved
R
R
0
0
Reserved.
Reserved.
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).
XiP Mode
Select
3
XiP
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 6.13 for more information on the Set Burst Wrap command and
an encoding of this field.
Burst Wrap
Settings
2:0 BWS[2:0]
R
001
Datasheet
2021-08-19
Revision J
46
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
5.7 STATUS REGISTER 5
Table 16 shows the bit assignments for Status register 5.
Table 16: 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.
7
SRLOCK Status Register Lock
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.
000: 2 clocks
001: 4 clocks
6:4
DC[2:0]
Dummy Clocks
R/W
000
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:
0
DWA
Doubleword Aligned 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
2021-08-19
Revision J
47
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6
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 AT25FF321A 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 AT25FF321A memory array is 3FFFFFh, address bits A23 - A22 are always ignored by the device.
Table 17: Command Listing
1
Transfer Type
Command
Address
Dummy
Data
Section
in Doc.
Hex
Cmd
Command Name
Read Commands
2
Mode
Format Bytes Clocks
Bytes
Clocks
Bytes
Clocks
Bytes
Clocks
Read Array
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
6.1
6.1
Fast Read Array
Dual
Output
Dual Output Read Array
Quad Output Read Array
6.2
6.3
6.4
6.4
6.4
6.4
3Bh
6Bh
EBh
---
1-1-2
1-1-4
1-4-4
0-4-4
1-4-4
0-4-4
1
1
1
0
1
0
8
8
8
0
8
0
3
3
3
3
3
3
24
24
6
1
8
Var.
Var.
Var.
Var.
Var.
Var.
Var. x 4
Var, x 2
Var. x 2
Var. x 2
Var. x 2
Var. x 2
Quad
Output
1
8
XiP Mode Read Array (initial
transfer)
XiP
XiP
XiP
XiP
Var.
Var.
Var.
Var.
Var. x 2
Var. x 2
Var. x 2
Var. x 2
XiP Mode Read Array
(subsequent transfers)
6
XiP Mode Read Array - DWA
addr (initial transfer)
E7h
---
6
XiP Mode Read Array - DWA
addr, subsequent transfers
6
Program/Erase Commands
Block Erase (4 Kbytes)
Block Erase (32 Kbytes)
Block Erase (64 Kbytes)
6.5
6.5
6.5
6.6
20h
52h
D8h
60h
SPI
SPI
SPI
SPI
1-1-0
1-1-0
1-1-0
1-0-0
1
1
1
1
8
8
8
8
3
3
3
0
24
24
24
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Chip Erase
6.6
6.7
C7h
02h
SPI
SPI
1-0-0
1-1-1
1
1
8
8
0
3
0
0
0
0
0
0
0
Byte/Page Program
(1 - 256 bytes)
Var.
(1 - 256)
24
Var. x 8
3
Sequential Program Mode
(first command)
ADh/
AFh
6.8
6.8
6.9
SPI
SPI
1-1-1
1-0-1
1-1-2
1
1
1
8
8
8
3
0
3
24
0
0
0
0
0
0
0
1
8
8
Sequential Program Mode
(subsequent commands)
ADh/
AFh
1
Dual Output Byte/Page
Program
Dual
Output
Var.
(1 - 256)
A2h
24
Var. x 4
Datasheet
2021-08-19
Revision J
48
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 17: Command Listing (continued)
1
Transfer Type
Command
Address
Dummy
Data
Section
in Doc.
Hex
Cmd
Command Name
2
Mode
Format Bytes Clocks
Bytes
Clocks
Bytes
Clocks
Bytes
Clocks
Quad Output Byte/Page
Program
Quad
Output
Var.
(1 - 256)
6.10
6.11
32h
1-1-4
1-0-0
1
1
8
8
3
0
24
0
0
0
Var. x 2
75h/
B0h
Erase/Program Suspend
Erase/Program Resume
SPI
0
0
0
0
7Ah/
D0h
6.12
6.13
SPI
1-0-0
1-4-4
1
1
8
8
0
3
0
6
0
0
0
0
0
0
2
5
Set Burst with Wrap
77h
Quad I/O
1
Protection Commands
Write Enable
Write Disable
6.14
6.15
06h
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
Volatile Status Register Write
Enable
6.16
50h
SPI
1-0-0
1
8
0
0
0
0
0
0
Individual Block Lock
6.17
6.18
36h
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/
3Dh
6
Read Block Lock
6.19
SPI
1-1-1
1
8
3
24
0
0
1
8
Global Block Lock
6.20
6.21
7Eh
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.
(1 - 128)
7
6.22
6.23
9Bh
4Bh
SPI
SPI
1-1-1
1-1-1
1
1
8
8
3
3
24
24
0
1
0
8
Var. x 8
Var. x 8
Var.
(1 - 128)
7
Read OTP Security Register
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
6.24
6.24
6.24
6.25
6.25
6.26
6.26
6.26
6.27
6.27
05h
35h
15h
65h
65h
01h
31h
11h
71h
71h
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
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
1
1
1
8
8
8
8
8
8
8
8
8
8
0
0
1
1
0
0
0
1
1
8
1
1
1
1
1
10
Var.
9
Read Status Registers
6.25
65h
SPI
1-1-1
1
8
1
1
8
1
8
Var. x 8
(1 - 5)
9
Write Status Registers
Status Register Lock
6.27
6.28
71h
6Fh
SPI
SPI
1-1-1
1-0-1
1
1
8
8
8
0
0
0
0
0
1
2
8
0
16
Datasheet
2021-08-19
Revision J
49
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 17: Command Listing (continued)
1
Transfer Type
Command
Address
Dummy
Data
Section
in Doc.
Hex
Cmd
Command Name
2
Mode
Format Bytes Clocks
Bytes
Clocks
Bytes
Clocks
Bytes
Clocks
Power Down Commands
11
Deep Power-Down
6.29
6.31
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/
B9h
12
Ultra Deep Power-Down
Resume from Deep Power-
Down
6.30
6.30
6.30
ABh
ABh
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
13
Enable Reset
Reset Device
Terminate
6.32
6.32
6.33
66h
99h
SPI
SPI
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
13
F0h
Manufacturer/Device Commands
14
2
Manufacturer/Device ID
Manufacturer/Device ID
JEDEC ID
6.34
90h
94h
9Fh
SPI
Quad I/O
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
16
4
14
2
6.35
6.36
15
5
0
40
Miscellaneous Commands
16
Read SFDP
6.37
5Ah
SPI
1-1-1
1
8
3
24
1
8
Var.
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 fetches 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
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 94hcommand, 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 programs the initial address as 000000h to access
the first address, then leave CS asserted until the entire SFDP is read out.
Datasheet
2021-08-19
Revision J
50
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
.
6.1.1 Command Prerequisites
None.
6.1.2 Transfer Format
The 03h/0Bh command follows the 1-1-1 transfer format described in Section 4.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.
6.1.3 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 17 for more information on the transfer sequence for this command.
When the last byte (3FFFFFh) 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.
6.1.4 Programming Restrictions
None
Datasheet
2021-08-19
Revision J
51
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.2.1 Command Prerequisites
None.
6.2.2 Transfer Format
The 3Bh command follows the 1-1-2 transfer format described in Section 4.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.
6.2.3 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 (3FFFFFh) 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.
6.2.4 Programming Restrictions
None
Datasheet
2021-08-19
Revision J
52
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
.
6.3.1 Command Prerequisites
None.
6.3.2 Transfer Format
The 6Bh command follows the 1-1-4 transfer format described in Section 4.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.
6.3.3 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
number of bytes transferred is determined by software. The transfer can be anywhere from a single byte to the entire mem-
ory 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 (3FFFFFh) 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.
6.3.4 Programming Restrictions
None
Datasheet
2021-08-19
Revision J
53
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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 5.7, Status Register 5 for more information.
6.4.1 Command Prerequisites
None.
6.4.2 Transfer Format
The initial EBh/E7h command follows the 1-4-4 transfer format described in Section 4.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 4.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.
6.4.3 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 and is decoded by hardware to determine if the device is to
be 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 4.6, XiP Mode Operation.
6.4.4 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 Section
6.4.6 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.
Datasheet
2021-08-19
Revision J
54
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Following transfer of the dummy bytes, hardware switches the SI (IO0), SO (IO1), WP (IO2), and HOLD (IO3) pins to out-
puts.
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 (3FFFFFh) 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.
6.4.5 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 6.4.4 above.
Following the three address bytes, a programmable number of dummy bytes must be clocked into the device. See Section
6.4.6 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 6.4.4 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 (3FFFFFh) 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.
6.4.6 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 5.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
2021-08-19
Revision J
55
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 18: 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
30
50
35
60
30
50
30
50
6
80
80
75
75
8
104
104
50
104
104
60
90
90
10
2
100
65
100
65
EBh
4
104
104
104
108
40
133
133
133
133
50
104
104
104
108
45
133
133
133
133
45
6
8
10
2
4
96
96
90
90
E7h
6
100
104
104
104
104
104
100
104
104
100
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.
Datasheet
2021-08-19
Revision J
56
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 19: 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
30
45
75
85
90
50
80
96
104
100
50
85
96
96
96
30
50
30
55
80
80
85
55
80
85
96
96
50
80
85
90
90
30
55
6
75
85
8
108
120
50
96
10
2
100
55
EBh
4
120
120
120
120
50
90
6
96
8
96
10
2
96
55
4
100
120
120
120
96
E7h
6
100
100
100
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.
6.4.7 Programming Restrictions
None
Datasheet
2021-08-19
Revision J
57
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
6.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.
6.5.2 Transfer Format
The 20h/52h/D8h command follows the 1-1-0 transfer format described in Section 4.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.
6.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.
See Table 17 for more information on the transfer sequence for this command.
6.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.
6.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.
6.5.6 Programming Restrictions
The Block Erase commands adhere to the following programming restrictions. The following events can cause the block erase
operation to be aborted. If any of these events occur, the WEL bit 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.
Datasheet
2021-08-19
Revision J
58
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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 5.3, Status Register 1. For more information
on enabling individual lock bits, see bit 2 (WPS) of Section 5.5, Status Register 3.
6.6.2 Transfer Format
The 60h/C7h commands follow the 1-0-0 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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.
6.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.
Datasheet
2021-08-19
Revision J
59
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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).
6.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.
6.7.2 Transfer Format
The 02h command follows the 1-1-1 transfer format described in Section 4.2, where the command, address, and data are all
transferred on the SI pin. See Figure 9 for a timing diagram of this transaction.
6.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 17 for more information on the transfer sequence for this command.
6.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.
6.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
2021-08-19
Revision J
60
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V 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.
6.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.
6.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.
6.8.2 Transfer Format
The initial ADh/AFh command follows the 1-1-1 transfer format described in Section 4.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 4.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.
6.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.
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.
Datasheet
2021-08-19
Revision J
61
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
See Table 17 for more information on the transfer sequence for this command.
6.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.
6.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.
6.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.
Table 20 shows which commands can and cannot be executed with the device is in Sequential Program mode.
Table 20: Command Behavior During Sequential Programming Mode
During Sequential Programming Mode
Command Name
Command Code(s)
(RDY/BUSY = 0, SPM = 1)
Read Array
03h, 3Bh, 0Bh
20h, 52h, D8h
60h, C7h
02h, A2h
ADh, AFh
B0h, 75h
D0h, 7Ah
06h
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Block Erase
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
50h
Not allowed
Datasheet
2021-08-19
Revision J
62
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 20: Command Behavior During Sequential Programming Mode (continued)
During Sequential Programming Mode
(RDY/BUSY = 0, SPM = 1)
Command Name
Command Code(s)
Individual Block Lock
36h
39h
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Individual Block Unlock
Global Block Lock
7Eh
Global Block Unlock
98h
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
3Ch, 3Dh
9Bh
4Bh
05h, 35h, 15h
65h
Allowed
01h, 31h, 11h
71h
Not allowed
Not allowed
Not allowed
Allowed
6Fh
Terminate
F0h
Enable Reset
66h
Allowed
Reset Device
99h
Allowed
Read Mfg ID and Device ID
Deep Power Down
9Fh, 90h
B9h
Allowed
Not allowed
Not allowed
Not allowed
Not allowed
Resume from Deep Power Down
Ultra Deep Power Down
Read SFDP
ABh
79h
5Ah
6.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
.
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 abort 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.
Datasheet
2021-08-19
Revision J
63
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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 (3FFFFFh) 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 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 Sequential
Program mode.
6.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.
6.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.
6.9.2 Transfer Format
The A2h command follows the 1-1-2 transfer format described in Section 4.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.
6.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
Datasheet
2021-08-19
Revision J
64
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
- 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
6.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.
6.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.
For Example: 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
6.10 QUAD OUTPUT PAGE PROGRAM (32H)
This command allows between 1 to 256 bytes of data to be programmed at previously erased memory locations.
6.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 5.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 5.4, Status Register
2.
Datasheet
2021-08-19
Revision J
65
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.10.2 Transfer Format
The 32h command follows the 1-1-4 transfer format described in Section 4.4, Quad Output Operation (1-1-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.
6.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.
6.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
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.
Datasheet
2021-08-19
Revision J
66
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.11.1 Command Prerequisites
None.
6.11.2 Transfer Format
The 75h and B0h commands follow the 1-0-0 transfer format described in Section 4.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.
6.11.3 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 17 for more information on the transfer sequence for this command.
6.11.4 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.
Table 21: Command Behavior During Program/Erase or Program/Erase Suspend Operations
During Program Sus-
During Program or Erase
(RDY/BSY = 1, PS = x,
ES = x)
During Erase Suspend
(RDY/BSY = 0, PS = 0,
ES = 1)
Command
Code(s)
pend
(RDY/BSY = 0, PS = 1,
ES = x)
Command
03h, 0Bh,
3Bh, 6Bh,
EBh, E7h
Read Array
Not allowed
Allowed
Allowed
20h, 52h,
D8h
Block Erase
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Allowed 1
Chip Erase
60h, C7h
02h, A2h,
32h
Byte/Page Program
Sequential Program-
ming
ADh, AFh
B0h, 75h
Not allowed
Allowed
Not allowed
Not allowed
Allowed 1
Program/Erase Sus-
pend
Not allowed
Datasheet
2021-08-19
Revision J
67
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 21: Command Behavior During Program/Erase or Program/Erase Suspend Operations (continued)
During Program Sus-
During Program or Erase
(RDY/BSY = 1, PS = x,
ES = x)
During Erase Suspend
(RDY/BSY = 0, PS = 0,
ES = 1)
Command
Code(s)
pend
(RDY/BSY = 0, PS = 1,
ES = x)
Command
Program/Erase Re-
sume
D0h, 7Ah
Not allowed
Allowed
Allowed
Write Enable
06h
04h
50h
36h
Not allowed
Not allowed
Not allowed
Not allowed
Allowed
Allowed
Allowed
Allowed
Write Disable
Volatile Write Enable
Individual Block Lock
Allowed
Allowed
Not allowed
Not allowed
Individual Block Un-
lock
39h
Not allowed
Not allowed
Not allowed
Global Block Lock
7Eh
98h
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Global Block Unlock
Read Block Lock Sta-
tus
3Ch, 3Dh
9Bh
Not allowed
Not allowed
Not allowed
Allowed
Allowed
Not allowed
Allowed
Allowed
Not allowed
Allowed
Program OTP Securi-
ty Register
Read OTP Security
Register
4Bh
Read Status Regis-
ters (direct)
05h, 35h,
15h
Allowed
Allowed
Read Status Regis-
ters (indirect)
65h
Allowed
Allowed
Allowed
Write Status Regis-
ters (direct)
01h, 31h,
11h
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Write Status Regis-
ters (indirect)
71h
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 De-
vice ID
9Fh, 90h
B9h
Allowed
Not allowed
Allowed
Allowed
Not allowed
Allowed
Allowed
Not allowed
Allowed
Deep Power Down
Resume from Deep
Power Down
ABh
Ultra Deep Power
Down
79h
5Ah
Not allowed
Not allowed
Not allowed
Allowed
Not allowed
Allowed
Read SFDP
1. The operation is allowed in a different 64 kB block.
6.11.5 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.
Datasheet
2021-08-19
Revision J
68
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.11.6 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.
6.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.
6.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
5.3, Status Register 1 and Section 5.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.
Datasheet
2021-08-19
Revision J
69
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.12.2 Transfer Format
The 7Ah and D0h commands follow the 1-0-0 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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
.
6.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
command 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
status of the RDY/BSY bit in Status Register 1, or the ES/PS bits in Status Register 5 to determine if the previously sus-
pended 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 4.10.1,
Nested Operations.
Datasheet
2021-08-19
Revision J
70
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.13 SET BURST WRAP (77H)
The Set Burst with Wrap (77h) 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 22.
6.13.1 Command Prerequisites
None.
6.13.2 Transfer Format
The 77h command follows the 1-4-4 transfer format described in Section 4.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.
6.13.3 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.
6.13.4 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 Table 22.
Table 22: 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
Datasheet
2021-08-19
Revision J
71
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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).
6.13.5 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.
6.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.
6.14.1 Command Prerequisites
None.
6.14.2 Transfer Format
The 06h command follows the 1-0-0 transfer format described in Section 4.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.
6.14.3 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 17 for more information on the transfer sequence for this command.
6.14.4 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
2021-08-19
Revision J
72
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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 Table 10.
6.15.1 Command Prerequisites
None.
6.15.2 Transfer Format
The 04h command follows the 1-0-0 transfer format described in Section 4.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.
6.15.3 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 17 for more information on the transfer sequence for this command.
6.15.4 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
2021-08-19
Revision J
73
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.16.1 Command Prerequisites
None.
6.16.2 Transfer Format
The 50h command follows the 1-0-0 transfer format described in Section 4.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.
6.16.3 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 17 for more information on the transfer sequence for this command.
6.16.4 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
2021-08-19
Revision J
74
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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.
6.17.2 Transfer Format
The 36h command follows the 1-1-0 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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
2021-08-19
Revision J
75
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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.
6.18.2 Transfer Format
The 39h command follows the 1-1-0 transfer format described in Section 4.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 for a timing diagram of this transaction.
6.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 17 for more information on the transfer sequence for this command.
6.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
2021-08-19
Revision J
76
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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 4.8.1 for more information on the protection scheme.
6.19.2 Transfer Format
The 3Ch and 3Dh commands follow the 1-1-1 transfer format described in Section 4.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.
6.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.
6.19.4 Programming Restrictions
The Read Block Lock command adheres to the following programming restrictions.
The complete command must be clocked into the device before the CS pin is deasserted.
Datasheet
2021-08-19
Revision J
77
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.20 GLOBAL BLOCK LOCK (7EH)
The Global Block Lock command is used to set all of the block bits to 1 with one operation.
6.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 6.14, \Write Enable (06h) for more information.
6.20.2 Transfer Format
The 7Eh command follows the 1-0-0 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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
2021-08-19
Revision J
78
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.21 GLOBAL BLOCK UNLOCK (98H)
The Global Block UnLock command is used to reset all of the block bits to 0 with one operation.
6.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 6.14, \Write Enable (06h) for more information.
6.21.2 Transfer Format
The 98h command follows the 1-0-0 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command
6.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
2021-08-19
Revision J
79
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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 6.14, \Write Enable (06h) for more information.
6.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 23: OTP Security Register 0 Bit Assignments
Security Register Byte Number
127
126
125
.....
2
1
0
Factory Programmed by Dialog Semiconductor
Table 24: 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 25: OTP Security Register 2 Bit Assignments
Security Register Byte Number
383
382
381
.....
User Security OTP Register
Table 26: OTP Security Register 3 Bit Assignments
Security Register Byte Number
511
510
509
.....
User Security OTP Register
6.22.3 Transfer Format
The 9Bh command follows the 1-1-1 transfer format described in Section 4.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.
6.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.
Datasheet
2021-08-19
Revision J
80
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
See Table 27 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
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 17 for more information on the transfer sequence for this command.
6.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 27.
Table 27: OTP Register Access Address Map
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
A[6:0] = 0000000 - byte 128, A[6:0] = 1111111 - byte 255
Don’t care
Don’t care
Don’t care
0
1
1
1
0
1
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
6.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.
6.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
2021-08-19
Revision J
81
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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 5.4, Status
Register 2 for more information.
6.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
2021-08-19
Revision J
82
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.23.1 Command Prerequisites
None.
6.23.2 Transfer Format
The 4Bh command follows the 1-1-1 transfer format described in Section 4.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.
6.23.3 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.
6.23.4 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 17 for more information on the transfer sequence for this command.
6.23.5 Programming Restrictions
None.
Datasheet
2021-08-19
Revision J
83
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
6.24.1 Command Prerequisites
None.
6.24.2 Transfer Format
The 05h/35h/15h commands follow the 1-0-1 transfer format described in Section 4.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.
6.24.3 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 17 for more information on the transfer sequence for this command.
6.24.4 Programming Restrictions
None.
Datasheet
2021-08-19
Revision J
84
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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 28: Indirect Addressing of the Status Registers
Byte 0
Byte 1
Byte 2
Byte 3
Action
Command
65h
Address
01h
Dummy
Dummy
Dummy
Dummy
Dummy
Dummy
Output
S[7:0]
Read Status Register 1
Read Status Register 2
Read Status Register 3
Read Status Register 4
Read Status Register 5
65h
02h
S[15:8]
S[23:16]
S[31:24]
S[39:32]
65h
03h
65h
04h
65h
05h
6.25.1 Command Prerequisites
None.
6.25.2 Transfer Format
The 65h command follows the 1-1-1 transfer format described in Section 4.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 operation.
6.25.3 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.
See Table 17 for more information on the transfer sequence for this command.
6.25.4 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.
6.25.5 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
Datasheet
2021-08-19
Revision J
85
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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 29: Indirect Status Register Read Sequence
Clocks
0 - 7
Action
Command 65h. Clocks 0 - 3 = 0110, and clocks 4 - 7 = 0101.
Address 01h. Clocks 8 - 11 = 0000, and clocks 12 - 15 = 0001.
Dummy byte on clocks 16 - 23.
8 - 15
16 - 23
24 - 31
32 - 39
40 - 47
48 - 55
56 - 63
64 - xx
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.
6.25.6 Transfer Diagram
Figure 25 shows the bus signals during an indirect register read operation. This type of command requires only a single 8-bit
address, as shown below.
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 25 26 27 28 29 30 31 32
SCK
SI
COMMAND
ADDRESS BITS A7-A0
DUMMY
0
1
1
0
0
1
0
1
A
A
A
A
A
A
A
A
X
X
X
X
X
X
X
X
MSB
MSB
MSB
DATA OUT 1
HIGH-IMPEDANCE
D
D
D
D
D
D
D
D
D
D
SO
MSB
MSB
Figure 25: Status Register Read Operation Showing 8-bit Address Field
6.25.7 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.
6.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
Datasheet
2021-08-19
Revision J
86
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Write Status Register 2: 31h
Write Status Register 3: 11h
6.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.
6.26.2 Transfer Format
The 01h/31h/11h commands follow the 1-0-1 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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 is used with one data byte only.
Datasheet
2021-08-19
Revision J
87
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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 30: 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
02h
S[15:8]
71h
03h
S[23:16]
S[31:24]
S[39:32]
71h
04h
71h
05h
6.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 6.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.
6.27.2 Transfer Format
The 71h command follows the 1-1-1 transfer format described in Section 4.2, where the command, address, and data are
transferred on the SI pin. Figure 7 shows a timing diagram for this operation.
6.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 17 for more information on the transfer sequence for this command.
Datasheet
2021-08-19
Revision J
88
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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,
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 31 shows a write to Status Register 1.
Table 31: Indirect Status Register Write Sequence
Clocks
0 - 7
Action
Command 71h. Clocks 0 - 3 = 0111, and clocks 4 - 7 = 0001.
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.
8 - 15
16 - 23
6.27.5 Transfer Diagram
Figure 26 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
1
1
1
0
0
0
1
A
A
A
A
A
A
A
A
D
D
D
D
D
D
D
D
MSB
MSB
MSB
HIGH-IMPEDANCE
SO
Figure 26: Status Register Write Operation Showing 8-bit Address Field
6.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 AT25FF321A 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
register byte. Instead the operation is aborted and hardware clears the WEL bit in Status register 1 once the CS pin is
deasserted.
Datasheet
2021-08-19
Revision J
89
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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 6.14, \Write Enable (06h) for more information.
6.28.2 Transfer Format
The 6Fh command follows a special 1-0-1 transfer format described in Section 4.2, where the command, address, and data are
transferred on the SI pin. However, for this command, two verification bytes are transferred. Figure 27 shows a timing diagram
for this operation.
6.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 17 for more information on the transfer sequence for this command.
6.28.4 Transfer Diagram
Figure 27 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
1
1
0
1
1
1
1
0
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
MS B
MSB
MSB
HIGH-IMPEDANCE
SO
Figure 27: Status Register Lock Operation with Two Verification Bytes
6.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
2021-08-19
Revision J
90
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
6.29.1 Command Prerequisites
None.
.
6.29.2 Transfer Format
The B9h command follows the 1-0-0 transfer format described in Section 4.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.
6.29.3 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 17 for more information on the transfer sequence for this command.
6.29.4 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
2021-08-19
Revision J
91
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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 6.30.4 below. In UDPD
mode, the ABh command is used to exit the UDPD state as described in Section 6.30.5 below. Table 32 shows how to exit the
DPD and UDPD modes.
Table 32: 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
6.30.2 Command Prerequisites
None.
6.30.3 Transfer Format — Resume from Deep Power Down
For this operation, theABh command follows the 1-0-0 transfer format described in Section 4.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.
6.30.4 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 4.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.
6.30.5 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 17 for more information on the transfer sequence for this command.
Datasheet
2021-08-19
Revision J
92
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.30.6 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.
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.
6.30.7 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 Section 7.5.
Figure 28 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
de Current
Ultra-Deep Power Down mode current
Figure 28: Resume from Deep Power Down or Ultra-Deep Power Down
6.30.8 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
2021-08-19
Revision J
93
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.31.1 Command Prerequisites
None.
6.31.2 Transfer Format
The 79h command follows the 1-0-0 transfer format described in Section 4.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.
6.31.3 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 29 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 29: Entering Ultra-Deep Power Down State
See Table 17 for more information on the transfer sequence for this command.
Datasheet
2021-08-19
Revision J
94
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.31.4 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
2021-08-19
Revision J
95
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.32.1 Command Prerequisites
None.
6.32.2 Transfer Format
The 66h/99h commands are issued as two back-to-back 1-0-0 commands described in Section 4.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.
6.32.3 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 17 for more information on the transfer sequence for this command.
Figure 30 shows an example of the back-to-back command sequence.
CS
SI
66h
99h
8 clocks
8 clocks
Figure 30: Enable Reset and Reset Command Sequence (SPI Mode)
6.32.4 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
2021-08-19
Revision J
96
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.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.
6.33.2 Transfer Format
The F0h command follows the 1-0-1 transfer format described in Section 4.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.
6.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 17 for more information on the transfer sequence for this command.
6.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
2021-08-19
Revision J
97
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.34.1 Command Prerequisites
None.
6.34.2 Transfer Format
The 90h command follows the 1-1-1 transfer format described in Section 4.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.
6.34.3 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 17 for more information on the transfer sequence for this command.
6.34.4 Programming Restrictions
None.
Datasheet
2021-08-19
Revision J
98
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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).
6.35.1 Command Prerequisites
None.
6.35.2 Transfer Format
The 94h command follows the 1-4-4 transfer format described in Section 4.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 5 for a timing diagram of this transaction.
6.35.3 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.
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
6.35.4 Programming Restrictions
None.
Datasheet
2021-08-19
Revision J
99
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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.
6.36.1 Command Prerequisites
None.
6.36.2 Transfer Format
The 9Fh command follows the 1-0-1 transfer format described in Section 4.2, where the command is transferred on the SI pin,
and data is transferred on the SO pin. See Figure 31 for timing diagram of this operation. Note that no address is required for this
type of read operation.
6.36.3 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.
See Table 17 for more information on the transfer sequence for this command.
The following tables below show the exact contents of each data byte.
Datasheet
2021-08-19
Revision J
100
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Table 33: 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
47h
08h
01h
0xh
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
0
1
x
Family Code
Density Code
1
Family Code: 010 (4h)
Density Code: 00111 (7h)
Device ID (Part 1)
Device ID (Part 2)
1
Sub Code
0
0
0
1
Sub-family Code
Revision Code
0 0
Sub Code: 000
Sub-family Code: 01
Revision Code: 000
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
Extended device Identity Value
Device ID (Part 4)
(EDI String Value)
x: Device Variant/Option. See table below.
0
0
0
x
x
x
Table 34: Device ID Part 4 Variants — EDI String Value
EDI String Value
Variant
Initial device
TBD
0h
1h
2h
TBD
3h
TBD
4h
TBD
5h
TBD
6h
TBD
7h
TBD
8h - Fh
Reserved
6.36.4 Transfer Diagram
Figure 31 shows the bus signals during an indirect register read operation. This type of command requires only a single 8-bit
address.
Datasheet
2021-08-19
Revision J
101
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
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
47h
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 31: Read JEDEC ID
6.36.5 Programming Restrictions
None.
Datasheet
2021-08-19
Revision J
102
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
6.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
.
6.37.1 Command Prerequisites
None.
6.37.2 Transfer Format
The 5Ah command follows the 1-1-1 transfer format described in Figure 4.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.
6.37.3 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.
6.37.4 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.
6.37.5 SFDP Organization
Contact Dialog Semiconductor for SFDP table information.
Datasheet
2021-08-19
Revision J
103
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7
Electrical Specifications
7.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.6 V to (VCC + 0.5 V)
absolute maximum rating conditions for
extended periods may affect device reliability.
All output voltages
with respect to ground. . . . .-0.6 V to (VCC + 0.5 V)
7.2 DC AND AC OPERATING RANGE
Parameter
AT25FF321A
-40 °C to 85 °C
1.65 V to 3.6 V
Operating Temperature (Case)
VCC Power Supply
Datasheet
2021-08-19
Revision J
104
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7.3 DC CHARACTERISTICS FOR 1.65V TO 3.6V
1.65 V to 3.6 V
Typ 1
Symbol
Parameter
Condition
Units
Min
Max
Ultra-Deep Power-Down
Current
CS = VCC. All other inputs at
0V or VCC
2
IUDPD
5 - 7
7
600
nA
µA
µA
CS, RESET, WP = VCC. All
other inputs at 0V or VCC
IDPD
Deep Power-Down Current
Standby Current
15
55
CS, RESET, WP = VCC. All
other inputs at 0V or VCC
3
ISB
26
SPI (33 MHz)
IOUT = 0 mA
IOUT = 0 mA
IOUT = 0 mA
IOUT = 0 mA
5.6
8.3
10
14
mA
mA
mA
mA
SPI (104MHz)
Dual (104 MHz)
Quad (104 MHz)
4
ICC1
10.4
12.6
14.5
17
Active Current,
Program Operation
5
ICC3
CS = VCC
CS = VCC
9.2
15
mA
mA
Active Current,
Erase Operation
ICC4
10.2
16.5
6
ILI
Input Load Current
Output Leakage Current
Input Low Voltage
All inputs at CMOS levels
All inputs at CMOS levels
±2
±2
µA
µA
V
ILO
VIL
VCC x 0.2
VIH
VOL
VOH
Input High Voltage
Output Low Voltage
Output High Voltage
VCC x 0.8
VCC - 0.2
V
IOL = 100 µA
IOH = -100 µA
0.2
V
V
1. Typical values measured at 1.8 V @ 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. Its input load current is +2 / -40 μA.
2
3
7.4 AC CHARACTERISTICS - MAXIMUM CLOCK FREQUENCIES
1.65V to 3.6V
Min Typ
Max1
2.7V to 3.6V
Typ Max
Symbol
Parameter
Units
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
100
108
108
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 18 and Table 19 for the maximum frequency of EBh/E7h commands in various modes.
Datasheet
2021-08-19
Revision J
105
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7.5 AC CHARACTERISTICS – ALL OTHER PARAMETERS
1.65V to 3.6V
Typ
Symbol 1
Parameter
Units
Min
4.5
4.5
0.75
0.75
35
6
Max
tCLKH
tCLKL
tCLKR
tCLKF
tCSH
SCK High Time
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
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 >500 ms. For the shorter UDPD hold times, T
might reach
RUDPD
1200 μs under some conditions.
Datasheet
2021-08-19
Revision J
106
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7.6 PROGRAM AND ERASE CHARACTERISTICS
1.65V - 3.6V
2.7V - 3.6V
Symbol
Parameter
Units
Min
Typ 1
3.5
Max 2
Min
Typ 1
2.5
Max 2
3
tPP
Page Program Time (256 Bytes)
Byte Program Time
10.5
10.5
ms
µs
4
tBP
32
32
4 kB
95
150
1150
2250
80
150
1150
2250
ms
ms
ms
sec
µs
tBLKE
Block Erase Time
32 kB
64 kB
650
1300
75
550
1100
65
tCHPE
tSUS
Chip Erase Time (32M density)
Suspend Time (Program)
Suspend Time (Erase)
50
50
10
10
50
50
10
10
µs
Resume Time (Program)
Resume Time (Erase)
8
8
8
8
µs
tRES
µs
OTP Security Register Program Time
(<= 10K)
tOTPP
5
9
6
5
9
6
ms
ms
tWRSR
Write Status Register Time
37
37
o
o
1. Typical values measured at 1.8 V at 25 C for 1.65 V - 3.6 V, and 3.3 V at 25 C for 2.7 V - 3.6 V.
2. Unless otherwise specified, maximum is worst case measurement at cycling conditions after 100k cycles.
3. To preserve the data integrity of a sector, each page within a sector must be updated/rewritten at least once every 50,000 program/erase cycles.
4. Program time after the first byte varies.
Datasheet
2021-08-19
Revision J
107
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
7.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 instruction. 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 32 shows the AC timing during power-up.
Vcc
VCCmin
tVCSL
Full Operation
Permitted
tVR
0V
Figure 32: AC Timing During Device Power Up
Table 35: Power On Timing Requirements
1.65 V - 2.5 V
1.65 V - 3.6 V
Symbol
Parameter
Units
Min
Typ
Max
Min
Typ
Max
tVCSL
tVR
Minimum VCC to full operation permitted
VCC rise time (from 0V to VCCmin)
200
200
µs
1
6000 1
1
30,000 2
µs/V
tPWD
VCC brown-out low time
Maximum VCC brown-out
300
300
µs
V
VPWDMAX
0.2
0.2
o
o
1. 40 C to 85 C.
o
o
2. -15 C to 85 C.
Datasheet
2021-08-19
Revision J
108
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Figure 33 shows the AC power-up timing after a brown-out condition.
Vcc
VCCmin
tVCSL
Full Operation
Permitted
VPWDMAX
tVR
tPWD
Figure 33: AC Power-up Timing After a Brown-Out
7.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 34: Serial Input Timing
CS
SCK
SI
tCLKH
tCLKL
tDIS
tOH
tV
tV
SI/SO/WP/HOLD
Figure 35: Serial Output Timing
Datasheet
2021-08-19
Revision J
109
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V 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 36: WP Timing for Write Status Register Command
CS
SCK
HOLD
SI
tHHH
tHLS
tHLH
tHHS
HIGH-IMPEDANCE
SO
Figure 37: HOLD Timing – Serial Input
CS
SCK
HOLD
SI
tHHH
tHLS
tHLH
tHHS
tHLQZ
tHHQX
SO
Figure 38: HOLD Timing – Serial Output
Datasheet
2021-08-19
Revision J
110
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
8
Ordering Information
AT 25FF 321 A - SS H N - B
Shipping
B = Bulk
Designator
T = Tape
Product Family
Operating Voltage
N = 1.65 V - 3.6 V
Device Density
321 = 32 Mbit
Device Grade
H = Green, NiPdAu finish
U = Green, MatteSn or Sn alloy
Revision
Industrial Temperature Range
(-40 C - +85 C)
o
o
P = Green NiPdAu lead finish,
non-conductive silver-free
die attach material
o
o
(-40 C - +85 C)
Package Options
SS = 8-lead 0.150” narrow SOIC
S = 8-lead 0.208” wide SOIC
Note: Contact Dialog Semiconductor for more
information on die/wafer options.
M = 8-pad 5 x 6 x 0.6 mm UDFN
MB = 8-pad 3 x 4 x 0.55 mm USON
Table 36: Ordering Code Descriptions
Available to
Valid Part Number
Mechanical
Drawing
Lead
Finish
Temperature
Range
Description
Order
AT25FF321A-SSHN-B
AT25FF321A-SSHN-T
AT25FF161A-SSPN-T
8-lead, 0.150" Narrow Plastic Gull
Wing Small Outline Package (JE-
DEC SOIC)
Yes
Yes
Yes
Yes
8S1
8S2
8-lead, 0.208” Wide Plastic Gull
Wing Small Outline Package (EIAJ
SOIC)
AT25FF321A-SHN-B
AT25FF321A-SHN-T
NiPdAu
8-pad, 5 x 6 x 0.6 mm, Thermally
Enhanced Plastic Ultra Thin Dual
Flat No Lead Package (UDFN)
Industrial
(-40°C to
+85°C)
AT25FF161A-MHN-T
AT25FF161A-MBUN-T
8MA1
8MA2
8-pad, 3 x 4 x 0.55 mm, Thermally
Enhanced Plastic Ultra Thin Small
Outline No Lead Package (USON)
SnAgCu
--
AT25FF161A-UUN-T
AT25FF321A-DWF
Yes
12-WLCSP
12-ball 3 x 2 x 3 WLCSP
ContactDialog
Semiconductor Semiconductor
Contact Dialog
Die in Wafer Form
Datasheet
2021-08-19
Revision J
111
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
9
Packaging Information
The AT25FF321A device supports the following package types:
8S1, 8-lead 0.150 narrow body JEDEC SOIC
8S2, 8-lead 0.208 wide body EIAJ
8MA1, 5 x 6 x 0.6 mm UDFN
8MA2, 3 x 4 x 0.55 mm USON
12-WLCSP, 12-ball 3 x 2 x 3 array WLCSP
Each of these packages is described in the following subsections.
Datasheet
2021-08-19
Revision J
112
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
9.1 8S1 – JEDEC SOIC
Datasheet
2021-08-19
Revision J
113
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
9.2 8S2 – 8-LEAD EIAJ SOIC
Datasheet
2021-08-19
Revision J
114
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
9.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.50
0.00
NOM
0.55
0.02
MAX
0.60
0.05
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
0.25
D2
e
b
b
D
D2
E
0.20
0.30
3
4
2.00 BSC +/-0.1 mm
1.60
1.55
1.65
3.00 BSC +/-0.1 mm
0.50 BSC
e
L
0.40
0.50
L
0.45
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
2021-08-19
Revision J
115
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
9.4 12WLCSP — 12-BALL WLCSP
TOP VIEW
BOTTOM VIEW
PIN #1 MARK
PIN #1 MARK
5
4
3
2
1
1
2
3
4
5
594
A
B
A
B
200
C
400
C
D
E
D
E
400
200
800
1200
2387 25
F
F
G
G
350
184
1767 25
700
1400
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
AT25XE321D
Package Drawing Contact:
contact@adestotech.com
12-ball (3 x 2 x 3 Array)
UD
DEC
Wafer Level Chip Scale Package (WLCSP)
Datasheet
2021-08-19
Revision J
116
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Revision History
Revision
Date
Change History
A
9/2019
Initial release of AT25FF321A 32 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
Updated Section 10.3, 8MA3 2 x 3 UDFN package drawing.
Changed data sheet status from ADVANCED to PRELIMINARY.
Updated text in Section 5.5, Quad I/O Operation.
Updated max frequencies for ICC1 parameter in Section 8.3.
Updated Section 7.30, Resume from Ultra-Deep Power Down (ABh).
Updated Section 7.31, Ultra-Deep Power Down (79h).
Added WPS = 0 as a qualifier in Table 5-3 and 5-4, Device Protection
Maps.
B
1/2020
Updated Section 9.3, Reset During Program and Erase Commands.
Created subsection entitled Terminate After Suspend in Section 5.10.2,
Suspending a Program or Erase Operation.
Updated Table 6-4, Status Register Protection During Normal Operation.
Added footnotes 8, 11, and 12 in Table 7-1, Command Listing.
Updated Section 7.37, Serial Flash Discoverable Parameters (5Ah).
Updated footnotes in Section 8.5, AC Characteristics.
Removed references to the Erase Error (EE) and Program Error (PE)
register bits throughout document.
Updated tBP byte program timing in Section 8.6, Program and Erase Characteristics.
Added footnotes 3 and 4 to Section 8.6.
C
D
2/2020
7/2020
Updated timing in Section 8.6, Program and Erase Characteristics.
Updated Table 7-2, Frequency and Number of Dummy Clocks Based on Command Type.
Added footnotes 3 to Section 8.6.
Added 2.7 V - 3.6 V voltage option to Table 8-4.
Added 2.7 V - 3.6 V voltage option to Table 8-6.
Updated frequency information on page 1.
Added Section 10.4, 3 x 4 x 0.55 mm USON package.
Updated Section 9, Ordering Codes, with USON package information.
Updated Table 7-2, Frequency and Number of Dummy Clocks Based on Command Type.
Updated numbers in Table 8-3.
Updated numbers in Table 8-4.
Updated numbers in Table 8-6.
E
9/2020
Updated frequency information on page 1.
Updated power dissipation information on page 1.
Updated Table 7-2 and added Table 7-3 in Section 7.4, XiP Mode Read Command.
Updated Section 8.4, Maximum Clock Frequencies.
Updated Section 8.6, Program and Erase Characteristics.
F
10/2020
01/2021
Added entries for 1.65 V to 2.5 V supply version to Section 8.2 and
Table 8-19.
G
Datasheet
2021-08-19
Revision J
117
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory
with Multi-I/O Support
Revision
Date
Change History
H
02/2021
Changed value in second footnote of Section 8.5, AC Characteristics - All Other Parameters.
Applied new corporate template to document.
Removed "Preliminary" designation.
Changed values in Tables 18 and 19, as well as tables in sections 7.3 - 7.6.
I
07/2021
08/2021
J
Corrected title and placement of Section 9.4.
Datasheet
2021-08-19
Revision J
118
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
AT25FF321A
32-Mbit, 1.65 V - 3.6 V 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.
August 19, 2021. 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
119
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
2021-08-19
Revision J
119
DS-AT25FF321A-181
© 2021 Dialog Semiconductor
相关型号:
AT25FS040N-10SU-2.7
Flash, 64KX8, PDSO8, 0.150 INCH, LEAD AND HALOGEN FREE, PLASTIC, MS-012AA, SOIC-8
ATMEL
AT25FS040N-SU-2.7
EEPROM, 512KX8, Serial, CMOS, PDSO8, 0.150 INCH, LEAD FREE, PLASTIC, MS-012AA, SOIC-8
ATMEL
©2020 ICPDF网 联系我们和版权申明