AT25FF161A-DWF [DIALOG]

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support;
AT25FF161A-DWF
型号: AT25FF161A-DWF
厂家: Dialog Semiconductor    Dialog Semiconductor
描述:

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support

文件: 总120页 (文件大小:1176K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
AT25FF161A  
16-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  
16 Mbit (2M x 8) Flash Memory  
Serial Peripheral Interface (SPI) compatible  
- Supports SPI modes 0 and 3 (1-1-1)  
- Supports dual output operation (1-1-2)  
- Supports quad output operation (1-1-4)  
- Supports quad I/O operation (1-4-4)  
- Supports XiP operation (1-4-4, 0-4-4)  
133 MHz maximum operating frequency  
- Clock-to-output of 8 ns  
Flexible, optimized erase architecture for code + data storage applications  
- Uniform 4-kByte block erase  
- Uniform 32-kByte block erase  
- Uniform 64-kByte block erase  
- Full chip erase  
Flexible non-volatile block protection  
1 x 128-byte factory-programmed unique identifier  
3 x 128-byte, One Time Programmable (OTP) security registers  
Flexible programming  
- Byte/Page program (1 to 256 Bytes)  
- Sequential program mode capability  
Erase program suspend resume  
Software controlled Reset and Terminate commands  
Hardware reset option (via HOLD pin)  
JEDEC hardware reset  
Non-volatile status register configuration option  
JEDEC standard manufacturer and device ID read methodology  
Serial Flash Discoverable Parameters (SFDP) version 1.6  
Low power dissipation:  
- 30 µA standby current (typical)  
- 8.2 µA Deep Power-Down (DPD) current (typical)  
- 5 - 7 nA Ultra Deep Power Down (UDPD) current (typical)  
- 8.6 mA active read current (1-1-1 — 108 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 (2 x 3 x 0.6 mm)  
- 8-ball WLCSP (3 x 2 x 3 ball matrix)  
- Die in Wafer Form (DWF)  
Datasheet  
2021-08-13  
Revision H  
1
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 Block Diagram .................................................................................................................................................................... 10  
2 Package Pinout and Pin Descriptions .............................................................................................................................. 11  
3 Device Operation ................................................................................................................................................................ 14  
3.1 Data Transfer Modes ...............................................................................................................................................14  
3.2 Standard SPI Operation ...........................................................................................................................................14  
3.2.1 Command Only, No Address or Data (1-0-0) ............................................................................................. 15  
3.2.2 Command and Address Only, No Data (1-1-0) .......................................................................................... 15  
3.2.3 Command and Data Only, No Address (1-0-1) .......................................................................................... 16  
3.2.4 Command, Address, and Data (1-1-1) ....................................................................................................... 17  
3.3 Dual Output Operation (1-1-2) .................................................................................................................................18  
3.4 Quad Output Operation (1-1-4) ................................................................................................................................19  
3.5 Quad I/O Operation (1-4-4) ......................................................................................................................................20  
3.6 XiP Mode Operation .................................................................................................................................................21  
3.6.1 Initial Transfer and XiP Mode Detection (M[5:4]) ....................................................................................... 21  
3.6.2 Subsequent Transfers ................................................................................................................................ 22  
3.6.3 Set Burst with Wrap ................................................................................................................................... 23  
3.7 Memory Architecture ................................................................................................................................................23  
3.8 Memory Protection ...................................................................................................................................................26  
3.8.1 Standard Memory Protection ..................................................................................................................... 26  
3.8.2 Individual Block Lock and Unlock ............................................................................................................... 29  
3.8.3 Global Block Lock and Unlock ................................................................................................................... 29  
3.8.4 Reading the State of the Lock Bits ............................................................................................................. 29  
3.9 Power Down Considerations ....................................................................................................................................29  
3.9.1 Entering Power Down Mode ...................................................................................................................... 30  
3.9.2 Exiting Power Down Mode ......................................................................................................................... 30  
3.9.3 ABh Command ........................................................................................................................................... 30  
3.9.4 Device Resets ............................................................................................................................................ 31  
3.9.5 Enable Reset (66h) / Reset (99h) Command ............................................................................................. 31  
3.9.6 Terminate Command (F0h) ........................................................................................................................ 31  
3.9.7 Reset During Program and Erase Commands ........................................................................................... 31  
3.10 Erase/Program Suspend Considerations and Nested Operations .........................................................................32  
3.10.1 Nested Operations ................................................................................................................................... 32  
3.10.2 Program and Erase Errors ....................................................................................................................... 34  
3.10.3 Suspending and Terminating a Program or Erase Operation .................................................................. 35  
3.10.4 Terminating a Non-Volatile Operation in Progress ................................................................................... 36  
3.11 OTP Security Register Lock ...................................................................................................................................37  
3.12 Standard JEDEC Hardware Reset .........................................................................................................................37  
3.13 Chip Select Restrictions .........................................................................................................................................38  
3.14 HOLD / RESET Function .......................................................................................................................................38  
4 Status Registers ................................................................................................................................................................. 40  
4.1 Register Structure and Updates ...............................................................................................................................40  
4.2 Register Accesses ...................................................................................................................................................41  
4.2.1 Direct and Indirect Addressing ................................................................................................................... 41  
4.2.2 Volatile and Non-Volatile Register Accesses ............................................................................................. 41  
4.3 Status Register 1 .....................................................................................................................................................42  
4.4 Status Register 2 .....................................................................................................................................................43  
4.5 Status Register 3 .....................................................................................................................................................46  
4.6 Status Register 4 .....................................................................................................................................................47  
4.7 Status Register 5 ....................................................................................................................................................48  
Datasheet  
2021-08-13  
Revision H  
2
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5 Commands and Addressing .............................................................................................................................................. 49  
5.1 Read Array (03h, 0Bh) .............................................................................................................................................52  
5.1.1 Command Prerequisites ............................................................................................................................. 52  
5.1.2 Transfer Format ......................................................................................................................................... 52  
5.1.3 Transfer Sequence ..................................................................................................................................... 52  
5.1.4 Programming Restrictions .......................................................................................................................... 52  
5.2 Dual Output Read Array (3Bh) .................................................................................................................................53  
5.2.1 Command Prerequisites ............................................................................................................................. 53  
5.2.2 Transfer Format ......................................................................................................................................... 53  
5.2.3 Transfer Sequence ..................................................................................................................................... 53  
5.2.4 Programming Restrictions .......................................................................................................................... 53  
5.3 Quad Output Read Array (6Bh) ...............................................................................................................................53  
5.3.1 Command Prerequisites ............................................................................................................................. 54  
5.3.2 Transfer Format ......................................................................................................................................... 54  
5.3.3 Transfer Sequence ..................................................................................................................................... 54  
5.3.4 Programming Restrictions .......................................................................................................................... 54  
5.4 XiP Read (EBh), XiP Read with Double-word Aligned Address (E7h) .....................................................................55  
5.4.1 Command Prerequisites ............................................................................................................................. 55  
5.4.2 Transfer Format ......................................................................................................................................... 55  
5.4.3 Mode Bits ................................................................................................................................................... 55  
5.4.4 Transfer Sequence — Initial Transfer ........................................................................................................ 55  
5.4.5 Transfer Sequence — Subsequent Transfers ............................................................................................ 56  
5.4.6 Programmable Number of Dummy Clocks ................................................................................................. 56  
5.4.7 Programming Restrictions .......................................................................................................................... 58  
5.5 Block Erase (20h, 52h, D8h) ....................................................................................................................................59  
5.5.1 Command Prerequisites ............................................................................................................................. 59  
5.5.2 Transfer Format ......................................................................................................................................... 59  
5.5.3 Transfer Sequence ..................................................................................................................................... 59  
5.5.4 Erase Operation ......................................................................................................................................... 59  
5.5.5 Command Status ....................................................................................................................................... 59  
5.5.6 Programming Restrictions .......................................................................................................................... 59  
5.5.7 Error Reporting ........................................................................................................................................... 60  
5.6 Chip Erase (60h, C7h) .............................................................................................................................................60  
5.6.1 Command Prerequisites ............................................................................................................................. 60  
5.6.2 Transfer Format ......................................................................................................................................... 60  
5.6.3 Transfer Sequence ..................................................................................................................................... 60  
5.6.4 Device Status ............................................................................................................................................. 60  
5.6.5 Programming Restrictions .......................................................................................................................... 60  
5.6.6 Error Reporting ........................................................................................................................................... 60  
5.7 Byte/Page Program (02h) ........................................................................................................................................61  
5.7.1 Command Prerequisites ............................................................................................................................. 61  
5.7.2 Transfer Format ......................................................................................................................................... 61  
5.7.3 Transfer Sequence ..................................................................................................................................... 61  
5.7.4 Device Status ............................................................................................................................................. 61  
5.7.5 Programming Restrictions .......................................................................................................................... 61  
5.8 Sequential Program Mode (ADh/AFh) .....................................................................................................................62  
5.8.1 Command Prerequisites ............................................................................................................................. 62  
5.8.2 Transfer Format ......................................................................................................................................... 62  
5.8.3 Transfer Sequence — Initial Transfer ........................................................................................................ 62  
5.8.4 Transfer Sequence — Subsequent Transfers ............................................................................................ 63  
5.8.5 Program Status .......................................................................................................................................... 63  
5.8.6 Commands Allowed and Not Allowed in Sequential Program Mode .......................................................... 63  
5.8.7 Programming Restrictions .......................................................................................................................... 64  
5.8.8 Error Reporting ........................................................................................................................................... 65  
Datasheet  
2021-08-13  
Revision H  
3
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.9 Dual Output Byte/Page Program (A2h) ....................................................................................................................65  
5.9.1 Command Prerequisites ............................................................................................................................. 65  
5.9.2 Transfer Format ......................................................................................................................................... 65  
5.9.3 Transfer Sequence ..................................................................................................................................... 65  
5.9.4 Program Status .......................................................................................................................................... 66  
5.9.5 Programming Restrictions .......................................................................................................................... 66  
5.9.6 Error Reporting ........................................................................................................................................... 66  
5.10 Quad Output Page Program (32h) .........................................................................................................................67  
5.10.1 Command Prerequisites ........................................................................................................................... 67  
5.10.2 Transfer Format ....................................................................................................................................... 67  
5.10.3 Transfer Sequence ................................................................................................................................... 67  
5.10.4 Programming Restrictions ........................................................................................................................ 67  
5.10.5 Error Reporting ......................................................................................................................................... 68  
5.11 Program/Erase Suspend (75h/B0h) .......................................................................................................................68  
5.11.1 Command Prerequisites ........................................................................................................................... 68  
5.11.2 Transfer Format ....................................................................................................................................... 68  
5.11.3 Transfer Sequence ................................................................................................................................... 68  
5.11.4 Command Behavior During a Program/Erase Operation ......................................................................... 68  
5.11.5 Device Status ........................................................................................................................................... 70  
5.11.6 Programming Restrictions ........................................................................................................................ 70  
5.12 Program/Erase Resume (7Ah/D0h) .......................................................................................................................71  
5.12.1 Command Prerequisites ........................................................................................................................... 71  
5.12.2 Transfer Format ....................................................................................................................................... 71  
5.12.3 Transfer Sequence ................................................................................................................................... 71  
5.12.4 Command Behavior ................................................................................................................................. 72  
5.12.5 Programming Restrictions ........................................................................................................................ 72  
5.13 Set Burst Wrap (77h) .............................................................................................................................................73  
5.13.1 Command Prerequisites ........................................................................................................................... 73  
5.13.2 Transfer Format ....................................................................................................................................... 73  
5.13.3 Transfer Sequence ................................................................................................................................... 73  
5.13.4 Wrap Bits .................................................................................................................................................. 73  
5.13.5 Programming Restrictions ........................................................................................................................ 74  
5.14 \Write Enable (06h) ................................................................................................................................................74  
5.14.1 Command Prerequisites ........................................................................................................................... 74  
5.14.2 Transfer Format ....................................................................................................................................... 74  
5.14.3 Transfer Sequence ................................................................................................................................... 74  
5.14.4 Programming Restrictions ........................................................................................................................ 74  
5.15 Write Disable (04h) ................................................................................................................................................75  
5.15.1 Command Prerequisites ........................................................................................................................... 75  
5.15.2 Transfer Format ....................................................................................................................................... 75  
5.15.3 Transfer Sequence ................................................................................................................................... 75  
5.15.4 Programming Restrictions ........................................................................................................................ 75  
5.16 Volatile Status Register Write Enable (50h) ...........................................................................................................76  
5.16.1 Command Prerequisites ........................................................................................................................... 76  
5.16.2 Transfer Format ....................................................................................................................................... 76  
5.16.3 Transfer Sequence ................................................................................................................................... 76  
5.16.4 Programming Restrictions ........................................................................................................................ 76  
5.17 Individual Block Lock (36h) ....................................................................................................................................77  
5.17.1 Command Prerequisites ........................................................................................................................... 77  
5.17.2 Transfer Format ....................................................................................................................................... 77  
5.17.3 Transfer Sequence ................................................................................................................................... 77  
5.17.4 Programming Restrictions ........................................................................................................................ 77  
5.18 Individual Block Unlock (39h) .................................................................................................................................78  
5.18.1 Command Prerequisites ........................................................................................................................... 78  
5.18.2 Transfer Format ....................................................................................................................................... 78  
5.18.3 Transfer Sequence ................................................................................................................................... 78  
5.18.4 Programming Restrictions ........................................................................................................................ 78  
Datasheet  
2021-08-13  
Revision H  
4
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.19 Read Block Lock (3Ch/3Dh) ..................................................................................................................................79  
5.19.1 Command Prerequisites ........................................................................................................................... 79  
5.19.2 Transfer Format ....................................................................................................................................... 79  
5.19.3 Transfer Sequence ................................................................................................................................... 79  
5.19.4 Programming Restrictions ........................................................................................................................ 79  
5.20 Global Block Lock (7Eh) ........................................................................................................................................80  
5.20.1 Command Prerequisites ........................................................................................................................... 80  
5.20.2 Transfer Format ....................................................................................................................................... 80  
5.20.3 Transfer Sequence ................................................................................................................................... 80  
5.20.4 Programming Restrictions ........................................................................................................................ 80  
5.21 Global Block Unlock (98h) .....................................................................................................................................81  
5.21.1 Command Prerequisites ........................................................................................................................... 81  
5.21.2 Transfer Format ....................................................................................................................................... 81  
5.21.3 Transfer Sequence ................................................................................................................................... 81  
5.21.4 Programming Restrictions ........................................................................................................................ 81  
5.22 Program Security Register (9Bh) ...........................................................................................................................82  
5.22.1 Command Prerequisites ........................................................................................................................... 82  
5.22.2 OTP Security Register Layout .................................................................................................................. 82  
5.22.3 Transfer Format ....................................................................................................................................... 82  
5.22.4 Transfer Sequence ................................................................................................................................... 82  
5.22.5 Addressing the OTP Security Registers ................................................................................................... 83  
5.22.6 Programming Status ................................................................................................................................ 83  
5.22.7 Locking OTP Registers 1 - 3 .................................................................................................................... 83  
5.22.8 Verifying the Locked Status of a Security Register .................................................................................. 84  
5.22.9 Programming Restrictions ........................................................................................................................ 84  
5.23 Read OTP Security Register (4Bh) ........................................................................................................................85  
5.23.1 Command Prerequisites ........................................................................................................................... 85  
5.23.2 Transfer Format ....................................................................................................................................... 85  
5.23.3 Transfer Sequence — Single Register ..................................................................................................... 85  
5.23.4 Transfer Sequence — All Registers ......................................................................................................... 85  
5.23.5 Programming Restrictions ........................................................................................................................ 85  
5.24 Read Status Registers 1 - 3 (05h, 35h, 15h) .........................................................................................................86  
5.24.1 Command Prerequisites ........................................................................................................................... 86  
5.24.2 Transfer Format ....................................................................................................................................... 86  
5.24.3 Transfer Sequence ................................................................................................................................... 86  
5.24.4 Programming Restrictions ........................................................................................................................ 86  
5.25 Read Status Registers (65h) ..................................................................................................................................87  
5.25.1 Command Prerequisites ........................................................................................................................... 87  
5.25.2 Transfer Format ....................................................................................................................................... 87  
5.25.3 Transfer Sequence ................................................................................................................................... 87  
5.25.4 Reading a Single Status Register ............................................................................................................ 87  
5.25.5 Continuous Read of All Status Registers ................................................................................................. 88  
5.25.6 Transfer Diagram ..................................................................................................................................... 88  
5.25.7 Programming Restrictions ........................................................................................................................ 88  
5.26 Write Status Registers 1 - 3 — Direct (01h, 31h, 11h) ...........................................................................................89  
5.26.1 Command Prerequisites ........................................................................................................................... 89  
5.26.2 Transfer Format ....................................................................................................................................... 89  
5.26.3 Transfer Sequence ................................................................................................................................... 89  
5.26.4 Programming Restrictions ........................................................................................................................ 89  
5.27 Write Status Registers — Indirect (71h) .................................................................................................................90  
5.27.1 Command Prerequisites ........................................................................................................................... 90  
5.27.2 Transfer Format ....................................................................................................................................... 90  
5.27.3 Transfer Sequence ................................................................................................................................... 90  
5.27.4 Writing to a Status Register ..................................................................................................................... 91  
5.27.5 Transfer Diagram ..................................................................................................................................... 91  
5.27.6 Programming Restrictions ........................................................................................................................ 91  
Datasheet  
2021-08-13  
Revision H  
5
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.28 Status Register Lock (6Fh) ....................................................................................................................................92  
5.28.1 Command Prerequisites ........................................................................................................................... 92  
5.28.2 Transfer Format ....................................................................................................................................... 92  
5.28.3 Transfer Sequence ................................................................................................................................... 92  
5.28.4 Transfer Diagram ..................................................................................................................................... 92  
5.28.5 Programming Restrictions ........................................................................................................................ 92  
5.29 Deep Power Down (B9h) .......................................................................................................................................93  
5.29.1 Command Prerequisites ........................................................................................................................... 93  
5.29.2 Transfer Format ....................................................................................................................................... 93  
5.29.3 Transfer Sequence ................................................................................................................................... 93  
5.29.4 Programming Restrictions ........................................................................................................................ 93  
5.30 Resume from Ultra-Deep Power Down / Deep Power Down with Device ID (ABh) ...............................................94  
5.30.1 Command Options ................................................................................................................................... 94  
5.30.2 Command Prerequisites ........................................................................................................................... 94  
5.30.3 Transfer Format — Resume from Deep Power Down ............................................................................. 94  
5.30.4 Transfer Format — Resume from Deep Power Down and Obtain Device ID .......................................... 94  
5.30.5 Transfer Sequence — Resume from Deep Power Down ......................................................................... 94  
5.30.6 Transfer Sequence — Resume from Deep Power Down and Obtain Device ID ..................................... 95  
5.30.7 Transfer Sequence — Resume from Ultra-Deep Power Down ................................................................ 95  
5.30.8 Programming Restrictions ........................................................................................................................ 95  
5.31 Ultra-Deep Power Down (79h) ...............................................................................................................................96  
5.31.1 Command Prerequisites ........................................................................................................................... 96  
5.31.2 Transfer Format ....................................................................................................................................... 96  
5.31.3 Transfer Sequence ................................................................................................................................... 96  
5.31.4 Programming Restrictions ........................................................................................................................ 97  
5.32 Enable Reset (66h) and Reset Device (99h) .........................................................................................................98  
5.32.1 Command Prerequisites ........................................................................................................................... 98  
5.32.2 Transfer Format ....................................................................................................................................... 98  
5.32.3 Transfer Sequence ................................................................................................................................... 98  
5.32.4 Programming Restrictions ........................................................................................................................ 98  
5.33 Terminate (F0h) .....................................................................................................................................................99  
5.33.1 Command Prerequisites ........................................................................................................................... 99  
5.33.2 Transfer Format ....................................................................................................................................... 99  
5.33.3 Transfer Sequence ................................................................................................................................... 99  
5.33.4 Programming Restrictions ........................................................................................................................ 99  
5.34 Read Manufacturer/Device ID (90h) ....................................................................................................................100  
5.34.1 Command Prerequisites ......................................................................................................................... 100  
5.34.2 Transfer Format ..................................................................................................................................... 100  
5.34.3 Transfer Sequence ................................................................................................................................. 100  
5.34.4 Programming Restrictions ...................................................................................................................... 100  
5.35 Quad I/O Read Manufacturer/Device ID (94h) .....................................................................................................101  
5.35.1 Command Prerequisites ......................................................................................................................... 101  
5.35.2 Transfer Format ..................................................................................................................................... 101  
5.35.3 Transfer Sequence ................................................................................................................................. 101  
5.35.4 Programming Restrictions ...................................................................................................................... 101  
5.36 Read JEDEC ID (9Fh) .........................................................................................................................................102  
5.36.1 Command Prerequisites ......................................................................................................................... 102  
5.36.2 Transfer Format ..................................................................................................................................... 102  
5.36.3 Transfer Sequence ................................................................................................................................. 102  
5.36.4 Transfer Diagram ................................................................................................................................... 103  
5.36.5 Programming Restrictions ...................................................................................................................... 104  
5.37 Serial Flash Discoverable Parameters (5Ah) .......................................................................................................105  
5.37.1 Command Prerequisites ......................................................................................................................... 105  
5.37.2 Transfer Format ..................................................................................................................................... 105  
5.37.3 Transfer Sequence ................................................................................................................................. 105  
5.37.4 Programming Restrictions ...................................................................................................................... 105  
5.37.5 SFDP Organization ................................................................................................................................ 105  
Datasheet  
2021-08-13  
Revision H  
6
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6 Electrical Specifications .................................................................................................................................................. 106  
6.1 Absolute Maximum Ratings ...................................................................................................................................106  
6.2 DC and AC Operating Range ................................................................................................................................106  
6.3 DC Characteristics for 1.65V to 3.6V .....................................................................................................................107  
6.4 AC Characteristics - Maximum Clock Frequencies ................................................................................................107  
6.5 AC Characteristics – All Other Parameters ............................................................................................................108  
6.6 Program and Erase Characteristics .......................................................................................................................109  
6.7 Power On Timing ...................................................................................................................................................110  
6.8 AC Timing Diagrams ..............................................................................................................................................111  
7 Ordering Information ....................................................................................................................................................... 113  
8 Packaging Information ..................................................................................................................................................... 114  
8.1 8S1 – JEDEC SOIC ...............................................................................................................................................115  
8.2 8S2 – 8-lead EIAJ SOIC ........................................................................................................................................116  
8.3 8MA3 – 2 x 3 UDFN ...............................................................................................................................................117  
8.4 8-WLCSP — 8-ball 3 x 2 x 3 WLCSP ....................................................................................................................118  
9 Revision History ............................................................................................................................................................... 119  
Datasheet  
2021-08-13  
Revision H  
7
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Figures  
Figure 1: Block Diagram.......................................................................................................................................................... 10  
Figure 2: Memory Package Types .......................................................................................................................................... 11  
Figure 3: SPI Transfer — Command Only .............................................................................................................................. 15  
Figure 4: SPI Transfer — Command and Address Only ......................................................................................................... 15  
Figure 5: SPI Transfer — Command and Data Only — Read Operation................................................................................ 16  
Figure 6: SPI Transfer — Command and Data Only — Write Operation................................................................................ 16  
Figure 7: SPI Transfer — Command, Address, and Data — Read Operation with No Dummy Bytes.................................... 17  
Figure 8: SPI Transfer — Command, Address, and Data — Read Operation with Dummy Bytes ......................................... 17  
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation ........................................................................ 18  
Figure 10: Dual Output Read — 1-Pin Command, 1-Pin Address, and 2-Pin Data ................................................................ 18  
Figure 11: Dual Output Write — 1-Pin Command, 1-Pin Address, and 2-Pin Data ................................................................ 18  
Figure 12: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Read Operation........................... 19  
Figure 13: Quad Output Transfer — 1-Pin Command, 1-Pin Address, and 4-Pin Data — Write Operation ........................... 19  
Figure 14: Quad I/O Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Read Operation................................. 20  
Figure 15: XiP Transfer — 1-Pin Command, 4-Pin Address, and 4-Pin Data — Initial Read (M[5:4] = 2’b10)....................... 21  
Figure 16: XiP Transfer — 4-Pin Address, and 4-Pin Data — Subsequent Reads (M[5:4] = 2’b10) ...................................... 22  
Figure 17: XiP Transfer — Command, 4-Pin Address, and 4-Pin Data — Write Operation.................................................... 23  
Figure 18: AT25FF161A Device Block Memory Map.............................................................................................................. 24  
Figure 19: AT25FF161A Device Block Memory Map — Page Program ................................................................................. 25  
Figure 20: Flow Diagram of Nested Operations Example....................................................................................................... 33  
Figure 21: Issuing a Terminate Command Before the Suspend Command has Completed .................................................. 36  
Figure 22: Allowing Enough Time for the Suspend Operation to Complete............................................................................ 36  
Figure 23: OTP Security Register Program and Lock............................................................................................................. 37  
Figure 24: JEDEC Standard Hardware Reset......................................................................................................................... 38  
Figure 25: AT25FF161A Register Structure............................................................................................................................ 40  
Figure 26: Status Register Read Operation Showing 8-bit Address Field .............................................................................. 88  
Figure 27: Status Register Write Operation Showing 8-bit Address Field............................................................................... 91  
Figure 28: Status Register Lock Operation with Two Verification Bytes ................................................................................. 92  
Figure 29: Resume from Deep Power Down or Ultra-Deep Power Down............................................................................... 95  
Figure 30: Entering Ultra-Deep Power Down State................................................................................................................. 96  
Figure 31: Enable Reset and Reset Command Sequence (SPI Mode) .................................................................................. 98  
Figure 32: Read JEDEC ID ................................................................................................................................................... 104  
Figure 33: AC Timing During Device Power Up.................................................................................................................... 110  
Figure 34: AC Power-up Timing After a Brown-Out .............................................................................................................. 111  
Figure 35: Serial Input Timing............................................................................................................................................... 111  
Figure 36: Serial Output Timing ............................................................................................................................................ 111  
Figure 37: WP Timing for Write Status Register Command.................................................................................................. 112  
Figure 38: HOLD Timing – Serial Input ................................................................................................................................. 112  
Figure 39: HOLD Timing – Serial Output .............................................................................................................................. 112  
Datasheet  
2021-08-13  
Revision H  
8
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Tables  
Table 1: Pin Descriptions .........................................................................................................................................................12  
Table 2: Bus Transfer Types....................................................................................................................................................14  
Table 3: Protection Scheme (CMPRT = 0)...............................................................................................................................27  
Table 4: Protection Bits (CMPRT 1).........................................................................................................................................28  
Table 5: Entering DPD or UDPD Mode....................................................................................................................................30  
Table 6: Exiting DPD or UDPD Mode.......................................................................................................................................30  
Table 7: Resetting the Device During a Program or Erase Operation .....................................................................................31  
Table 8: Encoding of Erase/Program Suspend Operations .....................................................................................................32  
Table 9: Command Errors and Their Effect on the EE and PE Bits.........................................................................................34  
Table 10: Address Field Encoding ...........................................................................................................................................41  
Table 11: Status Register 1 Format .........................................................................................................................................42  
Table 12: Status Register 2 Format .........................................................................................................................................43  
Table 13: Status Register Protection During Normal Operation...............................................................................................45  
Table 14: Status Register Protection During Reset..................................................................................................................45  
Table 15: Status Register 3 Format .........................................................................................................................................46  
Table 16: Status Register 4 Format .........................................................................................................................................47  
Table 17: Status Register 5 Format .........................................................................................................................................48  
Table 18: Command Listing .....................................................................................................................................................49  
Table 19: Frequency and Number of Dummy Clocks Based on Command Type in Non-Wrap Mode (default) ......................57  
Table 20: Frequency and Number of Dummy Clocks Based on Command Type in Wrap Mode (77h)...................................58  
Table 21: Command Behavior During Sequential Programming Mode ...................................................................................63  
Table 22: Command Behavior During Program/Erase or Program/Erase Suspend Operations..............................................69  
Table 23: Encoding of Burst Wrap Bits ....................................................................................................................................73  
Table 24: OTP Security Register 0 Bit Assignments................................................................................................................82  
Table 25: OTP Security Register 1 Bit Assignments................................................................................................................82  
Table 26: OTP Security Register 2 Bit Assignments................................................................................................................82  
Table 27: OTP Security Register 3 Bit Assignments................................................................................................................82  
Table 28: OTP Register Access Address Map.........................................................................................................................83  
Table 29: Indirect Addressing of the Status Registers .............................................................................................................87  
Table 30: Indirect Status Register Read Sequence.................................................................................................................88  
Table 31: Indirect Addressing of the Status Registers .............................................................................................................90  
Table 32: Indirect Status Register Write Sequence .................................................................................................................91  
Table 33: Options for Exiting DPD and UDPD Modes .............................................................................................................94  
Table 34: Manufacturer and Device ID Details.......................................................................................................................103  
Table 35: Device ID Part 4 Variants — EDI String Value.......................................................................................................103  
Table 36: Power On Timing Requirements ............................................................................................................................110  
Table 37: Valid Ordering Codes for Operating Voltage 1.65 V to 3.6 V.................................................................................113  
Datasheet  
2021-08-13  
Revision H  
9
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
1
Block Diagram  
Figure 1 shows a block diagram of the AT25FF161A 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 16 Mbit serial Flash memory array, a 256-byte SRAM buffer, and an I/O Interface Unit that operates depending on the  
type of data transfer mode.  
Serial Flash Memory Array  
CS  
SCK  
256-byte SRAM Buffer  
SI (I/O0)  
Interface  
SO (I/O1)  
Control Logic  
WP (I/O2)  
SPI  
Dual  
Quad  
HOLD/RESET (I/O3)  
Figure 1: Block Diagram  
Datasheet  
2021-08-13  
Revision H  
10  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
2
Package Pinout and Pin Descriptions  
Figure 2 show the package pinouts for the following devices. Note that the Die Wafer Scale option is not shown.  
1
2
3
4
8
7
6
5
1
2
3
4
8
7
6
5
VCC  
VCC  
CS  
CS  
HOLD/RESET (I/O3)  
SO (I/O1)  
SO (I/O1)  
HOLD/RESET (I/O3)  
WP (I/O2)  
GND  
SCK  
WP (I/O2)  
GND  
SCK  
SI (I/O0)  
SI (I/O0)  
8S1 8-lead SOIC Package (0.150”)  
8S2 8-lead EIAJ SOIC Package (0.208”)  
(Top View)  
8MA3 8-pad Ultra-Thin DFN Package  
2 x 3 x 0.6 mm (Top View)  
VCC  
A1  
CS  
A3  
GND  
B2  
SO  
C3  
HOLD  
C1  
SI  
D2  
SCK  
E1  
WP  
E3  
8-ball WLCSP Package  
3 x 2 x 3 ball matrix (bottom view)  
Figure 2: Memory Package Types  
Datasheet  
2021-08-13  
Revision H  
11  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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  
deasserted, the device is be deselected and normally be placed in standby mode  
(not Deep Power-Down mode), and the SO pin is in a high-impedance state. When  
the device is deselected, data are not accepted on the SI pin.  
CS  
Low  
Input  
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.  
SERIAL CLOCK: This pin is used to provide a clock to the device and is used to  
control the flow of data to and from the device. Command, address, and input data  
present on the SI pin is always latched in on the rising edge of SCK, while output  
data on the SO pin is always clocked out on the falling edge of SCK.  
SCK  
-
Input  
SERIAL INPUT: The SI pin is used to shift data into the device. The SI pin is used for  
all data input including command and address sequences. Data on the SI pin is  
always latched in on the rising edge of SCK.  
With the Multi I/O Read commands, the SI pin becomes an output pin (I/O0) in  
conjunction with other pins to allow either two or four bits of data on (I/O1:0 or I/O3:0  
to be clocked out on every falling edge of SCK.  
Input/  
Output  
SI (I/O0)  
-
)
Data present on the SI pin is ignored whenever the device is deselected (CS is  
deasserted and the device is in the reset condition).  
SERIAL OUTPUT: The SO pin is used to shift data out from the device. Data on the  
SO pin is always clocked out on the falling edge of SCK.  
With the Multi I/O Read commands, the SO pin remains an output pin (I/O1) in  
conjunction with other pins to allow either two or four bits of data on (I/O1:0 or I/O3:0  
to be clocked out on every falling edge of SCK.  
Input/  
Output  
SO (I/O1)  
)
-
The SO pin is in a high-impedance state whenever the device is deselected (CS is  
deasserted and the device is in the reset condition).  
WRITE PROTECT: The 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 may 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.  
Input/  
Output  
WP (I/O2)  
Low  
When the QE bit in Status Register 2 is set, enabling quad output mode, 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-13  
Revision H  
12  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 is used to temporarily pause serial communication  
without deselecting or resetting the device. While the HOLD pin is asserted,  
transitions on the SCK pin and data on the SI pin 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 (32h), 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.  
HOLD/  
RESET  
Input/  
Output  
Low  
(I/O3)  
To maintain consistency with the SPI nomenclature, the HOLD (I/O3) pin is  
referenced as the HOLD pin unless specifically addressing quad output, in which  
case it is referenced as I/O3.  
The HOLD pin is internally pulled-high and may be left floating if the Hold function is  
not used. However, it is recommended that the HOLD pin also be externally  
connected to VCC whenever possible.  
When the QE bit in the Status register is cleared, the IO3 pin can be configured  
either as a HOLD pin or as a RESET pin depending on the state of the HOLD/  
RESET bit 7 in Status Register 3. Note that when the QE bit is set, the HOLD or  
RESET function is not available as this pin is used to transfer data.  
DEVICE POWER SUPPLY: The VCC pin is used to supply the source voltage to the  
device. Operations at invalid VCC voltages 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-13  
Revision H  
13  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3
Device Operation  
This section describes the various data transfer modes supported by the device, as well as other system operations.  
3.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 AT25FF161A supports the following transfer types.  
Table 2: Bus Transfer Types  
Transfer  
Name  
Pin(s) Used for  
Command  
Pin(s) Used for  
Address  
Pin(s) Used for  
Data  
Transfer  
Type  
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 AT25FF161A 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  
3.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 AT25FF161A 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-13  
Revision H  
14  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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  
3.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-13  
Revision H  
15  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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-13  
Revision H  
16  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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 18 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-13  
Revision H  
17  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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&(  
62  
Figure 9: SPI Transfer — Command, Address, and Data — Write Operation  
3.3 DUAL OUTPUT OPERATION (1-1-2)  
The AT25FF161A 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 5,  
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-13  
Revision H  
18  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.4 QUAD OUTPUT OPERATION (1-1-4)  
The AT25FF161A 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 18 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-13  
Revision H  
19  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.5 QUAD I/O OPERATION (1-4-4)  
The AT25FF161A 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 18 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-13  
Revision H  
20  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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 5.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.  
3.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-13  
Revision H  
21  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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-13  
Revision H  
22  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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 5.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 5.13, Set Burst Wrap (77h) for more information.  
3.7 MEMORY ARCHITECTURE  
The memory array of the AT25FF161A 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-13  
Revision H  
23  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Figure 18 illustrates the breakdown of each level and details the number of pages per block. The program operations to the  
memory array can be done at the full page level or at the byte level (a variable number of bytes). Erase operations can be  
performed at the chip or block level.  
64 kB Block Erase (D8h)  
32 kB Block Erase (52h)  
4 kB Block Erase (20h)*  
4 kB (B511)  
4 kB (B510)  
4 kB (B509)  
4 kB (B508)  
4 kB (B507)  
4 kB (B506)  
4 kB (B505)  
4 kB (B504)  
4 kB (B503)  
4 kB (B502)  
4 kB (B501)  
4 kB (B500)  
4 kB (B499)  
4 kB (B498)  
4 kB (B497)  
4 kB (B496)  
4 kB (B495)  
to  
Block Address Range  
1FF000h - 1FFFFFh  
1FE000h - 1FEFFFh  
1FD000h - 1FDFFFh  
1FC000h - 1FCFFFh  
1FB000h - 1FBFFFh  
1FA000h - 1FAFFFh  
1F9000h - 1F9FFFh  
1F8000h - 1F8FFFh  
1F7000h - 1F7FFFh  
1F6000h - 1F6FFFh  
1F5000h - 1F5FFFh  
1F4000h - 1F4FFFh  
1F3000h - 1F3FFFh  
1F2000h - 1F2FFFh  
1F1000h - 1F1FFFh  
1F0000h - 1F0FFFh  
1EF000h - 1EFFFFh  
to  
32 kB  
(block 63)  
64 kB  
(block 31)  
32 kB  
(block 62)  
64 kB (block 30)  
to  
32 kB (block 61)  
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)  
4 kB (B10)  
4 kB (B9)  
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)  
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: AT25FF161A Device Block Memory Map  
Datasheet  
2021-08-13  
Revision H  
24  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 (B511)  
4 kB (B510)  
4 kB (B509)  
4 kB (B508)  
4 kB (B507)  
4 kB (B506)  
4 kB (B505)  
4 kB (B504)  
4 kB (B503)  
4 kB (B502)  
4 kB (B501)  
4 kB (B500)  
4 kB (B499)  
4 kB (B498)  
4 kB (B497)  
4 kB (B496)  
4kB (B494)  
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  
.
1FFF00h - 1FFFFFh  
1FFE00h - 1FFEFFh  
1FFD00h - 1FFDFFh  
1FFC00h - 1FFCFFh  
1FFB00h - 1FFBFFh  
1FFA00h - 1FFAFFh  
1FF900h - 1FF9FFh  
1FF800h - 1FF8FFh  
1FF700h - 1FF7FFh  
1FF600h - 1FF6FFh  
1FF500h - 1FF5FFh  
1FF400h - 1FF4FFh  
1FF300h - 1FF3FFh  
1FF200h - 1FF2FFh  
1FF100h - 1FF1FFh  
1FF000h - 1FF0FFh  
.
.
.
.
.
.
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: AT25FF161A Device Block Memory Map — Page Program  
Datasheet  
2021-08-13  
Revision H  
25  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.8 MEMORY PROTECTION  
The AT25FF161A 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.  
3.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  
AT25FF161A 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 4.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 4.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 4.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 4.3, Status Register 1 for more information.  
Datasheet  
2021-08-13  
Revision H  
26  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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  
BP[2:0]  
Protected Address Range  
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
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
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  
NONE  
1F0000h - 1FFFFFh  
1E0000h - 1FFFFFh  
1C0000h - 1FFFFFh  
180000h - 1FFFFFh  
100000h - 1FFFFFh  
000000h - 1FFFFFh  
000000h - 1FFFFFh  
NONE  
000000h - 00FFFFh  
000000h - 01FFFFh  
000000h - 03FFFFh  
000000h - 07FFFFh  
000000h - 0FFFFFh  
000000h - 1FFFFFh  
000000h - 1FFFFFh  
NONE  
1FF000h - 1FFFFFh  
1FE000h - 1FFFFFh  
1FC000h - 1FFFFFh  
1F8000h - 1FFFFFh  
1F8000h - 1FFFFFh  
000000h - 1FFFFFh  
000000h - 1FFFFFh  
NONE  
000000h - 000FFFh  
000000h - 001FFFh  
000000h - 003FFFh  
000000h - 007FFFh  
000000h - 007FFFh  
000000h - 1FFFFFh  
000000h - 1FFFFFh  
Datasheet  
2021-08-13  
Revision H  
27  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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  
BP[2:0]  
Protected Address Range  
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
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
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  
000000h - 1FFFFFh  
000000h - 1EFFFFh  
000000h - 1DFFFFh  
000000h - 1BFFFFh  
000000h - 17FFFFh  
000000h - 0FFFFFh  
NONE  
NONE  
000000h - 1FFFFFh  
010000h - 1FFFFFh  
020000h - 1FFFFFh  
040000h - 1FFFFFh  
080000h - 1FFFFFh  
100000h - 1FFFFFh  
NONE  
NONE  
000000h - 1FFFFFh  
000000h - 1FEFFFh ***  
000000h - 1FDFFFh (1) (2)  
000000h - 1FBFFFh(1) (2)  
000000h - 1F7FFFh (2)  
000000h - 1F7FFFh (2)  
NONE  
NONE  
000000h - 1FFFFFh  
001000h - 1FFFFFh*******  
002000h - 1FFFFFh (3) (4)  
004000h - 1FFFFFh (3) (4)  
008000h - 1FFFFFh (4)  
008000h - 1FFFFFh (4)  
NONE  
NONE  
* When the 32 kB Erase command is used, the protected region is 0x00_0000 - 0x1F_7FFF.  
** When the 64 kB Erase command is used, the protected region is 0x00_0000 - 0x1E_FFFF.  
*** When the 32 kB Erase command is used, the protected region is 0x00_8000 - 0x1F_FFFF.  
**** When the 64 kB Erase command is used, the protected region is 0x01_0000 - 0x1F_FFFF.  
Datasheet  
2021-08-13  
Revision H  
28  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.8.2 Individual Block Lock and Unlock  
Also to the standard protection scheme described in the previous subsection, the AT25FF161A device also provides the ability  
to lock individual memory locations. Protection of memory locations can be applied individually using the Individual Block Lock  
(36h) command and the Individual Block Unlock (39h) command. Note that in the AT25FF161A 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  
AT25FF161A uses the Individual Block Lock (36h) command that provides the address of the 4 kB or 64 kB block to be locked.  
See Table 15 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 31. For 64 kB blocks 1 - 30, the blocks can only be locked on the 64 kB boundary (1 lock bit per 64 kB). This equates to a  
total of 62 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  
30 bits, one each for 64 kB blocks 1 - 30  
See Section 5.17, Individual Block Lock (36h) and Section 5.18, Individual Block Unlock (39h) for more information.  
3.8.3 Global Block Lock and Unlock  
In addition to individual block protection of memory locations as described in the previous subsection, the AT25FF161A 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 AT25FF161A 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 5.20, Global Block Lock (7Eh) and Section 5.21, Global Block Unlock (98h) for more information.  
3.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 AT25FF161A 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 5.19, Read Block Lock (3Ch/  
3Dh) for more information.  
3.9 POWER DOWN CONSIDERATIONS  
The AT25FF161A 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  
Datasheet  
2021-08-13  
Revision H  
29  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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 3.9.2 below. Note that in the AT25FF161A device, simply deas-  
serting CS as in other devices does not exit DPD mode.  
2. Clear the PDM bit in SR4 (logic 0) and execute the B9h command to place the device into Ultra Deep Power Down (UDPD)  
mode. To exit this mode, it is necessary to execute the Resume from Ultra-Deep Power Down (ABh) command or a JEDEC  
reset, hardware reset, or power-on-reset to initiate an internal reset of the device. The resume from UDPD mode recovery  
time is defined by the tRUDPD timing parameter in the AC specifications section of this document. See Section 3.9.2 below.  
Note that in the AT25FF161A 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  
3.9.2 below for more information on exiting power down mode.  
3.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  
3.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  
Terminate  
Power Down  
Mode  
Exit  
Command  
Power On JEDEC  
Reset  
Hardware  
66h/99h  
Status  
After Exit  
Command PDM bit  
Reset Reset Pin 1 Command  
(F0h)  
B9h  
B9h  
79h  
1
0
x
DPD  
UDPD  
UDPD  
ABh 2  
ABh 3  
ABh 3  
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
N
N
Idle  
N
Idle  
N
Idle  
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.  
3.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.  
Datasheet  
2021-08-13  
Revision H  
30  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.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.  
3.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.  
3.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.  
3.9.7 Reset During Program and Erase Commands  
The AT25FF161A 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-13  
Revision H  
31  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.10 ERASE/PROGRAM SUSPEND CONSIDERATIONS AND NESTED OPERATIONS  
The AT25FF161A 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.  
0
1
Program suspend operation in progress.  
Erase suspend operation in progress.  
Nested erase/program suspend operation in progress.  
1
0
1
1
3.10.1 Nested Operations  
The AT25FF161A 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-13  
Revision H  
32  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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-13  
Revision H  
33  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.10.2 Program and Erase Errors  
The AT25FF161A device provides two Status register bits to indicate program and erase errors.  
EE — Status Register 4, bit 4. The EE bit is set by hardware whenever an error occurs during an erase operation  
PE — Status Register 4, bit 5. The PE bit is set by hardware whenever an error occurs during a program operation  
When a new program or erase command is accepted by the device, hardware clears the EE or PE bits respectively depending  
on the command. The device clears the EE bit when a new Block Erase or Chip Erase command is accepted. The device clears  
the PE bit when a new Byte/Page Program, Sequential Programming, Program OTP Security Register, Write Status Register, or  
Status Register Lock command is accepted. If an error is detected during the command execution, then the EE or PE flag is set.  
These flags hold their contents even if the program/erase operation is suspended. Note that the Resume command does not  
change the state of the EE and PE bits. If a Terminate command is issued while the device is busy (executing program/erase),  
then the PE or EE flag is set.  
The PE and EE bits are volatile, meaning that any reset operation clears these bits. The ABh command is used to exit Deep  
Power Down (DPD) or Ultra-Deep Power Down (UDPD) mode. If the device is in DPD mode and the user issues the ABh  
command, then the device exits DPD mode but does not change the state of the PE and EE bits. However, if the ABh command  
is executed and the device exits from UDPD mode, then the device initiates a reset, which causes both the PE and EE bits to be  
cleared.  
When an error occurs during a given command, the EE and PE bits are set, as shown in Table 9. Note that for any of the commands  
where a ‘Yes’ appears in the EE or PE columns, when a new command is issued, the EE or PE bit is cleared. Therefore, when  
the bit is set initially due to an error being detected, it is incumbent on software to detect when these bits are set and take the  
necessary steps to determine the exact error.  
Table 9: Command Errors and Their Effect on the EE and PE Bits  
Command Name  
Command Code  
Sets the EE Bit  
Sets the PE Bit  
Read Array  
03h, 3Bh, 6Bh, EBh, E7h  
No  
Yes  
Yes  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
Yes  
Yes  
No  
No  
No  
No  
No  
No  
No  
No  
No  
No  
Yes  
No  
No  
No  
Yes  
Yes  
Block Erase  
20h, 52h, D8h  
60h, C7h  
02h, A2h, 32h  
ADh, AFh  
B0h, 75h  
D0h, 7Ah  
06h  
Chip Erase  
Byte/Page Program  
Sequential Programming  
Program/Erase Suspend  
Program/Erase Resume  
Write Enable  
Write Disable  
04h  
Volatile Write Enable  
Individual Block Lock  
Individual Block Unlock  
Global Block Lock  
50h  
36h  
39h  
7Eh  
Global Block Unlock  
Read Block Lock Status  
Program OTP Security Register  
Read OTP Security Register  
Read Status Registers (direct)  
Read Status Registers (indirect)  
Write Status Registers (direct)  
Write Status Registers (indirect)  
98h  
3Ch, 3Dh  
9Bh  
4Bh  
05h, 35h, 15h  
65h  
01h, 31h, 11h  
71h  
Datasheet  
2021-08-13  
Revision H  
34  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 9: Command Errors and Their Effect on the EE and PE Bits (continued)  
Command Name  
Command Code  
Sets the EE Bit  
Sets the PE Bit  
Status Register Lock  
6Fh  
No  
Yes  
Yes  
Yes  
Terminate  
F0h  
(if Erase command is  
terminated)  
(if Program command is  
terminated)  
Enable Reset  
66h  
99h  
No  
No  
Reset Device  
Cleared on POR  
Cleared on POR  
Read Mfg ID and Device ID  
Deep Power Down  
9Fh, 90h, 94h  
B9h  
No  
No  
No  
No  
No  
No  
Resume from Deep Power Down  
ABh  
Resume from Ultra Deep  
Power Down  
ABh  
Cleared on POR  
Cleared on POR  
Ultra Deep Power Down  
Read SFDP  
79h  
5Ah  
77h  
No  
No  
No  
No  
No  
No  
Set Burst with Wrap  
3.10.3 Suspending and Terminating a Program or Erase Operation  
Program Operation  
A self-timed program operation can be suspended using the Suspend (75h) command and terminated using the Terminate (F0h)  
command. The device responds to either of these commands by initiating a sequence which completes some internal sub-  
operations, brings the internal voltage supplies to their quiescent state, saves the intermediate address counters and states, and  
sets either the PS (Program Suspend) bit in status register 4 in the case of a Suspend command, or the PE (Program Error) bit  
in status register 5 in case of the Terminate command.  
When the user issues the Suspend command, the device requires a period of time equal to tSUS before the BUSY flag goes low  
and the PS flag goes high. Similarly, when the user issues the Terminate command the device requires a period of time equal to  
tSWTERM before the BUSY flag goes low and the PE flag goes high.  
If the user issues the Suspend command, and then issues the Terminate command before the device has completed the internal  
suspend operation, the device honors the Terminate command and sets the PE flag. The PS flag is not set, and the BUSY flag  
is cleared. At this point the self-timed command that was terminated cannot be resumed, and the region of the memory that was  
being programmed/erased is left in an intermediate state.  
Erase Operation  
A self-timed erase operation can be suspended using the Suspend (75h) command and terminated using the Terminate (F0h)  
command. The device responds to either of these commands by initiating a sequence which completes some internal sub-  
operations, brings the internal voltage supplies to their quiescent state, saves the intermediate address counters and states, and  
sets either the ES (Erase Suspend) bit in status register 4 in the case of a Suspend command, or the EE (Erase Error) bit in status  
register 5 in case of the Terminate command.  
When the user issues the Suspend command the device requires a period of time equal to tSUS before the BUSY flag goes low  
and the PE flag goes high. Similarly, when the user issues the Terminate command the device requires a period of time equal to  
tSWTERM before the BUSY flag goes low and the EE flag goes high.  
If the user issues the Suspend command, and then issues the Terminate command before the device has completed the internal  
suspend operation, the device honors the Terminate command and sets the EE flag. The ES flags is not set, and the BUSY flag  
is cleared. At this point the self-timed command that was terminated cannot be resumed, and the region of the memory that was  
being programmed/erased is left in an intermediate state.  
Datasheet  
2021-08-13  
Revision H  
35  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
This concept is shown in Figure 21.  
BUSY  
CSB  
Terminate  
Suspe
Command  
Stop  
EE/PE  
ES/PS  
Figure 21: Issuing a Terminate Command Before the Suspend Command has Completed  
Terminate After Suspend  
If the time between the Suspend command and the Terminate command is large enough, then the device may finish the internal  
suspend operation before the Terminate command is received. In this case, the device clears the BUSY bit in Status register 1,  
and the ES/PS flag in Status register 5 is set. Now when the device receives the Terminate command, it is ignored by the hardware.  
This concept is shown in Figure 22.  
BUSY  
CSB  
Terminate  
Command  
Suspend  
Stop  
EE/PE  
ES/PS  
Figure 22: Allowing Enough Time for the Suspend Operation to Complete  
If the user wishes to perform another program operation, they must check the status of both the PS and PE flags in Status registers  
4 and 5 respectively to determine the next action.  
If the PS bit is cleared and the PE bit is set, the user can issue a new Program command. Note that previous Program command  
that was terminated leaves that region of memory in an intermediate state, and it is recommended to erase this region of memory  
before attempting to reprogram it.  
If the ES/PS bit is set, then the user cannot issue another Program/Erase command. The user must first issue a Resume command  
to re-start the suspended program operation, then either allow it to run to completion or terminate it using the Terminate command.  
The user can now issue a new Program/Erase command.  
3.10.4 Terminating a Non-Volatile Operation in Progress  
The Terminate (F0h) command, the Software Reset command (66h + 99h), the hardware reset (RESET) pin, and the JEDEC  
Reset are ways to terminate any on-going internal self-timed program/erase operation (and in some cases reset the device).  
However, abruptly terminating a Status Register Write, Status Register Lock, or OTP Security Register Program command is not  
desirable as this may leave these non-volatile registers in an indeterminate state.  
Therefore when the device is busy executing the Status Register Write, the Status Register Lock or the OTP Security Register  
Program command, then the Terminate command is ignored. The software reset, hardware reset, and JEDEC reset actions are  
delayed until after the internal self-timed operations are completed; once the internal operation is completed the device is reset.  
See Section 3.12 for more information on how to perform a JEDEC hardware reset.  
Datasheet  
2021-08-13  
Revision H  
36  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
3.11 OTP SECURITY REGISTER LOCK  
The AT25FF161A 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 24 in Section 5.22, Program Security Register (9Bh) for an exact encoding of these address bits.  
This concept is shown in Figure 23. 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 23: OTP Security Register Program and Lock  
3.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.  
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.  
Datasheet  
2021-08-13  
Revision H  
37  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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 24 illustrates the timing for the JEDEC  
hardware reset operation.  
tRUDPD  
Figure 24: JEDEC Standard Hardware Reset  
3.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.  
3.14 HOLD / RESET FUNCTION  
The AT25FF161A device provides a configurable HOLD/RESET pin. This pin can be configured to operate as either a HOLD pin,  
or as a device RESET pin, by programming bit 7 (HOLD/RESET) of Status register 3. When this bit is cleared, the HOLD/RESET  
pin functions as an active low HOLD pin. When this bit is set, the HOLD/RESET pin functions as a active low device RESET pin.  
The HOLD/RESET function is only valid in the SPI and dual output mode of operation. When bit 1 (QE) of Status register 2 is set,  
indicating the device is in either Quad Output, quad I/O mode, or XiP mode. In this case the HOLD/RESET functions are not  
available and the pin functions as the I/O3 data pin.  
Datasheet  
2021-08-13  
Revision H  
38  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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 AT25FF161A 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-13  
Revision H  
39  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4
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.  
4.1 REGISTER STRUCTURE AND UPDATES  
In the AT25FF161A 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  
4.2.2 for more information on volatile and non-volatile register types.  
The AT25FF161A 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 25.  
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 25: AT25FF161A Register Structure  
Datasheet  
2021-08-13  
Revision H  
40  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4.2 REGISTER ACCESSES  
This section describes the various ways to access the AT25FF161A Status registers. The AT25FF161A 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 4.2.1. Also, the device supports both volatile and non-volatile registers as described in Section 4.2.2.  
4.2.1 Direct and Indirect Addressing  
The AT25FF161A 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 AT25FF161A 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 10.  
Table 10: Address Field Encoding  
Command  
Address  
Action  
01h  
02h  
03h  
04h  
05h  
01h  
02h  
03h  
04h  
05h  
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  
65h  
71h  
Note that by using the indirect address method, an address width of 8 bits indicates that up to 256 registers can be accessed,  
allowing for future expansion without requiring additional commands or associated hardware complexity.  
4.2.2 Volatile and Non-Volatile Register Accesses  
As shown in Figure 25, the AT25FF161A 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-13  
Revision H  
41  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4.3 STATUS REGISTER 1  
Table 11 shows the bit assignments for Status register 1.  
Table 11: Status Register 1 Format  
Bit # Acronym Name  
Type  
Default Description  
The SRP0 bit works in conjunction with the SRP1 bit in Status  
Register 1 and the WP pin to control write protection. Types of  
protection include software protection, hardware protection, one-  
time programmable (OTP) protection, and power supply lock-down  
protection. See Table 13 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).  
Block Protect  
Size  
0: 64 kB block size  
1: 4 kB block size  
BPSIZE  
R/W  
R/W  
0
The blocks can also be protected from the bottom up or from the top  
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  
1: Protect from top down  
5
TB  
Top/Bottom  
0
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  
Register commands. The WEL bit defaults to the logic “0” state after  
a device power-up or reset.  
This bit is encoded as follows:  
0: Device is not write enabled (default).  
1: Device is write enabled.  
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.  
1
WEL  
R
0
In order for the WEL bit to be reset when an operation aborts  
prematurely, the entire command for a program, erase, memory  
protection, or Write Status Register command must have been  
clocked into the device.  
When the Write Enable (06h) command is executed, the WEL bit is  
set. Conversely, when the Volatile Status Register Write Enable  
(50h) command is executed, the WEL bit is not set.  
Datasheet  
2021-08-13  
Revision H  
42  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 11: Status Register 1 Format (continued)  
Bit # Acronym Name  
Type  
Default Description  
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  
device 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.  
4.4 STATUS REGISTER 2  
The following table shows the bit assignments for Status register 2.  
Table 12: 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  
executes an Erase/Program Suspend (75h) command. Hardware  
clears this bit when it detects that any of the following events have  
occurred:  
7
SUSP  
Suspend Status  
R
0
Erase/Program Resume (7Ah) command  
Hardware Reset, JEDEC Hardware Reset  
66h / 99h Reset command  
The CMPRT is used in conjunction with BPSIZE, TB, and BP2:BP0  
bits to provide additional memory array protection. This bit is 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.  
Datasheet  
2021-08-13  
Revision H  
43  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 12: Status Register 2 Format (continued)  
Bit # Acronym  
Name  
Type Default Description  
The 3-bit SL3:SL1 field provides a One-Time- Program (OTP) lock  
status of Security registers 1 - 3. This field is used by software to  
determine which of these Security registers have been locked.  
Note that Security register 0 is always locked as the value is  
programmed by Dialog Semiconductor at the factory.  
The default state of SL[3:1] is 0, indicating that all registers are  
unlocked. Each bit corresponds to a Status register as follows:  
SL3 (bit 5): Security register 3  
SL2 (bit 4): Security register 2  
SL1 (bit 3): Security register 1  
5:3  
SL3:SL1  
Security Lock 3:1  
R
000  
Each bit in this field is set by hardware when the most significant  
byte of the corresponding Security register (the 128th byte) is  
programmed.  
For example, when the most significant byte of Security register 1  
is set, bit 3 (SL1) of this field is set. Conversely, when the most  
significant byte of Security register 3 is set, bit 5 (SL3) of this field  
is set. Each time a bit is set, it indicates that the corresponding  
128-Byte Security register has become read-only permanently.  
2
R
Reserved  
R
0
Reserved  
The QE bit enables Quad SPI and XiP operation.This bit is  
encoded as follows:  
0: QE mode is disabled  
1: QE mode is enabled  
When the QE bit is cleared (logic 0), the WP and HOLD/RESET  
pins are enabled and perform their respective functions.  
When the QE bit is set (logic 1), the WP and HOLD/RESET pins  
function as the IO2 and IO3 pins respectively, and the WP and  
HOLD/RESET pins functions are disabled.  
1
QE  
Quad Enable  
R/W  
0
This bit only pertains to the following commands:  
6Bh: Quad Output Read  
EBh: XiP Mode Read  
E7h: XiP Mode Read with Double-word Aligned Address  
32h: Quad Output Page Program  
77h: Set Burst with Wrap  
94h: Quad I/O Read Manufacturer/Device ID  
The SRP1 bit works in conjunction with the SRP0 bit in Status  
Register 0 and the WP pin to control write protection. Types of  
protection include software protection, hardware protection, one-  
time programmable (OTP) protection, and reset lock-down  
protection. See Table 13 for an encoding of these bits.  
Status Register  
Protect 1  
0
SRP1  
R/W  
0
Datasheet  
2021-08-13  
Revision H  
44  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 13 shows the operation of the SRP[1:0] volatile Status register bits during normal operation.  
Table 13: Status Register Protection During Normal Operation  
SRP1 SRP0 SRLOCK WP Type of Protection  
Description  
When both the SRP0 and SRP1 bits are 0, the Status registers  
can be written by executing a 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
x
x
Hardware Protected  
When the SRP[1:0] bits are 0, 1 respectively, and the WP pin is  
0
0
1
1
x
x
0
1
low, the registers are hardware protected and cannot be written  
to.  
(protection is controlled  
by the WP pin)  
Hardware Unprotected  
When the SRP[1:0] bits are 0, 1 respectively, and the WP pin is  
high, the registers are not hardware protected and can be  
written to by executing a Write Status Register command (01h,  
31h, 11h, 71h) and setting the WEL bit of this register.  
(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 Status  
registers are write protected and cannot be written until the  
device is reset (caused by a power-cycle, hardware reset, or  
software reset). After reset, hardware changes the state of the  
SRP[1:0] bits, as shown in Table 14.  
1
0
x
x
Reset Lockdown  
When the SRP[1:0] bits are 1,1 respectively, and the SRLOCK  
bit is 0, the Status registers are write protected and cannot be  
written until the device is reset (caused by a power-cycle,  
hardware reset or software reset). After reset, hardware  
changes the state of SRP[1:0] bits, as shown in Table 14.  
1
1
1
1
0
1
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 permanently write protected.  
Table 14 shows the behavior of the SRP1 and SRP0 bits after a reset condition.  
Table 14: Status Register Protection During 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-13  
Revision H  
45  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4.5 STATUS REGISTER 3  
Table 15 shows the bit assignments for Status Register 3.  
Table 15: Status Register 3 Format  
Bit # Acronym  
Name  
Type  
Default Description  
Dialog Semiconductor provides a variety of packages for the  
AT25FF161A, as shown in Section 2. Each of these packages  
provides a dedicated HOLD/RESET pin that can be configured as  
a RESET pin, or as a HOLD pin, depending on the programming of  
this bit. This bit is encoded as follows:  
HOLD/  
RESET  
HOLD or RESET  
Function  
7
R/W  
0
0: HOLD function is enabled  
1: RESET function is enabled  
Note that this pin can only be configured as HOLD or RESET when  
the QE bit (see bit 1 of Status register 2) is cleared (logic 0). If the  
QE bit is set, the pin functions as a dedicated data pin and the  
HOLD/RESET functionality is disabled.  
The DRV1 and DRV0 bits are used to determine the output driver  
strength during read operations. The driver strength is  
automatically adjusted with VCC level. The driver strength is  
encoded as following:  
6:5  
4:3  
DRV1:0  
Drive Level  
Reserved  
R/W  
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 AT25FF161A 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 AT25FF161A 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 3.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-13  
Revision H  
46  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4.6 STATUS REGISTER 4  
Table 16 shows the bit assignments for Status register 4.  
Table 16: 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 3.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).  
Program  
Error  
This is set by hardware whenever an error occurs during a program  
operation.  
5
4
PE  
EE  
R
R
0
0
This is set by hardware whenever an error occurs during an erase  
operation.  
Erase Error  
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 5.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-13  
Revision H  
47  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
4.7 STATUS REGISTER 5  
Table 17 shows the bit assignments for Status register 5.  
Table 17: 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-13  
Revision H  
48  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5
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 AT25FF161A 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 AT25FF161A memory array is 1FFFFFh, address bits A23 - A21 are always ignored by the device.  
Table 18: 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  
5.1  
5.1  
03h  
0Bh  
SPI  
SPI  
1-1-1  
1-1-1  
1
1
8
8
3
3
24  
24  
0
1
0
8
Var.  
Var.  
Var. x 8  
Var. x 8  
Fast Read Array  
Dual  
Output  
Dual Output Read Array  
Quad Output Read Array  
5.2  
5.3  
5.4  
5.4  
5.4  
5.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)  
5.5  
5.5  
5.5  
5.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  
5.6  
5.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  
5.8  
5.8  
5.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-13  
Revision H  
49  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 18: 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)  
5.10  
5.11  
32h  
1-1-4  
1-0-0  
1
1
8
8
3
0
0
24  
0
0
0
Var. x 2  
75h/  
B0h  
Erase/Program Suspend  
Erase/Program Resume  
SPI  
0
0
0
0
7Ah/  
D0h  
5.12  
5.13  
SPI  
1-0-0  
1-4-4  
1
1
8
8
0
6
0
0
0
0
0
0
2
4
5
Set Burst with Wrap  
77h  
Quad I/O  
3
1
Protection Commands  
Write Enable  
Write Disable  
5.14  
5.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  
5.16  
50h  
SPI  
1-0-0  
1
8
0
0
0
0
0
0
Individual Block Lock  
5.17  
5.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  
5.19  
SPI  
1-1-1  
1
8
3
24  
0
0
1
8
Global Block Lock  
5.20  
5.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
5.22  
5.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  
5.24  
5.24  
5.24  
5.25  
5.25  
5.26  
5.26  
5.26  
5.27  
5.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  
5.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  
5.27  
5.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  
Power Down Commands  
11  
Deep Power-Down  
5.29  
B9h  
SPI  
1-0-0  
1
8
0
0
0
0
0
0
Datasheet  
2021-08-13  
Revision H  
50  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 18: 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  
79h/  
B9h  
12  
Ultra Deep Power-Down  
5.31  
5.30  
5.30  
5.30  
SPI  
1-0-0  
1-0-0  
1-1-1  
1-0-0  
1
1
1
1
8
8
8
8
0
0
3
0
0
0
0
0
0
0
0
0
Resume from Deep Power-  
Down  
ABh  
ABh  
ABh  
SPI  
SPI  
SPI  
0
24  
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  
5.32  
5.32  
5.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  
5.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
5.35  
5.36  
15  
5
0
40  
Miscellaneous Commands  
16  
Read SFDP  
5.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 94h commands, two data bytes are output. The first byte is the manufacturer ID, and the second byte is the device ID.  
15. For the 9Fh command, five bytes are output. First byte is the manufacturer ID, second byte is Device ID 1, third byte is Device ID 2, fourth byte is the extended  
string length, and the fifth byte is the extended string value.  
16. For the 5Ah command, hardware outputs the data associated with the address provided, then increments the address automatically and continues to output  
successive locations as long as the CS pin remains asserted. To read the entire SFDP value, software 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-13  
Revision H  
51  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
.
5.1.1 Command Prerequisites  
None.  
5.1.2 Transfer Format  
The 03h/0Bh command follows the 1-1-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
When the last byte (1FFFFFh) 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.  
5.1.4 Programming Restrictions  
None  
Datasheet  
2021-08-13  
Revision H  
52  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.2.1 Command Prerequisites  
None.  
5.2.2 Transfer Format  
The 3Bh command follows the 1-1-2 transfer format described in Section 3.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.  
5.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 (1FFFFFh) 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.  
5.2.4 Programming Restrictions  
None  
5.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  
Datasheet  
2021-08-13  
Revision H  
53  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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  
.
5.3.1 Command Prerequisites  
None.  
5.3.2 Transfer Format  
The 6Bh command follows the 1-1-4 transfer format described in Section 3.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.  
5.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 (1FFFFFh) 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.  
5.3.4 Programming Restrictions  
None  
Datasheet  
2021-08-13  
Revision H  
54  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 4.7, Status Register 5 for more information.  
5.4.1 Command Prerequisites  
None.  
5.4.2 Transfer Format  
The initial EBh/E7h command follows the 1-4-4 transfer format described in Section 3.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 3.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.  
5.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 3.6, XiP Mode Operation.  
5.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  
5.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-13  
Revision H  
55  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 (1FFFFFh) 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.  
5.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 5.4.4 above.  
Following the three address bytes, a programmable number of dummy bytes must be clocked into the device. See Section  
5.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 5.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 (1FFFFFh) 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.  
5.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 4.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-13  
Revision H  
56  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 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  
35  
55  
6
80  
80  
75  
85  
8
104  
104  
50  
104  
104  
60  
96  
96  
10  
2
108  
65  
108  
65  
EBh  
4
108  
120  
120  
120  
40  
133  
133  
133  
133  
50  
120  
120  
120  
120  
45  
133  
133  
133  
133  
45  
6
8
10  
2
4
96  
96  
104  
108  
108  
108  
104  
108  
108  
108  
E7h  
6
108  
108  
108  
108  
108  
108  
8
10  
As shown in Table 19, 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-13  
Revision H  
57  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 20: 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  
30  
50  
30  
55  
80  
80  
85  
55  
80  
85  
90  
90  
55  
80  
85  
90  
90  
30  
55  
6
75  
75  
85  
8
90  
108  
120  
50  
96  
10  
2
96  
100  
55  
EBh  
45  
4
85  
104  
120  
120  
120  
50  
90  
6
104  
108  
108  
45  
96  
8
104  
104  
55  
10  
2
4
90  
108  
120  
120  
120  
96  
E7h  
6
104  
108  
108  
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.  
5.4.7 Programming Restrictions  
None  
Datasheet  
2021-08-13  
Revision H  
58  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
5.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.  
5.5.2 Transfer Format  
The 20h/52h/D8h command follows the 1-1-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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.  
5.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.  
5.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-13  
Revision H  
59  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.5.7 Error Reporting  
The device incorporates an intelligent erase algorithm that can detect when a byte location fails to erase properly. If an erase  
error occurs, it is indicated by the EE and PE bits in Status Register 4. See Section 4.6, Status Register 4 for more information.  
5.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.  
5.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 4.3, Status Register 1. For more information  
on enabling individual lock bits, see bit 2 (WPS) of Section 4.5, Status Register 3.  
5.6.2 Transfer Format  
The 60h/C7h commands follow the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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.  
5.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.  
5.6.6 Error Reporting  
The device incorporates an intelligent erase algorithm that can detect when a byte location fails to erase properly. If an erase  
error occurs, it is indicated by the EE and PE bits in Status Register 4. For more information, see Section 4.6, Status Register 4.  
Datasheet  
2021-08-13  
Revision H  
60  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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).  
5.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.  
5.7.2 Transfer Format  
The 02h command follows the 1-1-1 transfer format described in Section 3.2, where the command, address, and data are all  
transferred on the SI pin. See Figure 9 for a timing diagram of this transaction.  
5.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 18 for more information on the transfer sequence for this command.  
5.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.  
5.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-13  
Revision H  
61  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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.  
5.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.  
5.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.  
5.8.2 Transfer Format  
The initial ADh/AFh command follows the 1-1-1 transfer format described in Section 3.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 3.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.  
5.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-13  
Revision H  
62  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
See Table 18 for more information on the transfer sequence for this command.  
5.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.  
5.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.  
5.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 21 shows which commands can and cannot be executed with the device is in Sequential Program mode.  
Table 21: Command Behavior During Sequential Programming Mode  
During Sequential Programming Mode  
Command Name  
Command Code(s)  
(RDY/BUSY = 0, SPM = 1)  
Read Array  
03h, 3Bh, 6Bh, EBh, E7h, 0Bh  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Allowed  
Block Erase  
20h, 52h, D8h  
60h, C7h  
02h, A2h, 32h  
ADh, AFh  
B0h, 75h  
D0h, 7Ah  
06h  
Chip Erase  
Byte/Page Program  
Sequential Programming  
Program/Erase Suspend  
Program/Erase Resume  
Write Enable  
Not Allowed  
Not allowed  
Allowed  
Write Disable  
04h  
Allowed  
Volatile Write Enable  
50h  
Not allowed  
Datasheet  
2021-08-13  
Revision H  
63  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 21: Command Behavior During Sequential Programming Mode (continued)  
During Sequential Programming Mode  
(RDY/BUSY = 0, SPM = 1)  
Command Name  
Command Code(s)  
Individual Block Lock  
Individual Block Unlock  
Global Block Lock  
36h  
39h  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Allowed  
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, 94h  
B9h  
Allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Resume from Deep Power Down  
Ultra Deep Power Down  
Read SFDP  
ABh  
79h  
5Ah  
Set Burst with Wrap  
77h  
5.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-13  
Revision H  
64  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 (1FFFFFh) 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.  
5.8.8 Error Reporting  
The device also incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly.  
If a programming error arises, it is indicated by the EE and PE bits in Status Register 4.  
5.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.  
5.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.  
5.9.2 Transfer Format  
The A2h command follows the 1-1-2 transfer format described in Section 3.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.  
5.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  
Datasheet  
2021-08-13  
Revision H  
65  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
- Second data clock: bit 5 is input on the SO pin  
- Second data clock: bit 4 is input on the SI pin  
- Third data clock: bit 3 is input on the SO pin  
- Third data clock: bit 2 is input on the SI pin  
- Fourth data clock: bit 1 is input on the SO pin  
- Fourth data clock: bit 0 is input on the SI pin  
- Subsequent data bytes are transmitted in the same sequence as above  
5.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.  
5.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  
5.9.6 Error Reporting  
The device incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly. If a  
programming error arises, it is indicated by the EE and PE bits in Status Register 4.  
Datasheet  
2021-08-13  
Revision H  
66  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.10 QUAD OUTPUT PAGE PROGRAM (32H)  
This command allows between 1 to 256 bytes of data to be programmed at previously erased memory locations.  
5.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 4.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 4.4, Status Register  
2.  
5.10.2 Transfer Format  
The 32h command follows the 1-1-4 transfer format described in Section 3.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.  
5.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.  
5.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  
Datasheet  
2021-08-13  
Revision H  
67  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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.  
5.10.5 Error Reporting  
The device also incorporates an intelligent programming algorithm that can detect when a byte location fails to program properly.  
If a programming error arises, it is indicated by the EE and PE bits in Status Register 4.  
5.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.  
5.11.1 Command Prerequisites  
None.  
5.11.2 Transfer Format  
The 75h and B0h commands follow the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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.  
Datasheet  
2021-08-13  
Revision H  
68  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 22: Command Behavior During Program/Erase or Program/Erase Suspend Operations  
During Program  
During Program or Erase  
(RDY/BSY = 1, PS = x,  
ES = x)  
During Erase Suspend  
(RDY/BSY = 0, PS = 0,  
ES = 1)  
Suspend  
(RDY/BSY = 0, PS = 1,  
ES = x)  
Command  
Code(s)  
Command  
03h, 0Bh,  
3Bh, 6Bh,  
EBh, E7h  
Read Array  
Block Erase  
Not allowed  
Not allowed  
Allowed  
Allowed  
20h, 52h,  
D8h  
Not allowed  
Not allowed  
Chip Erase  
60h, C7h  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Allowed 1  
02h, A2h,  
32h  
Byte/Page Program  
Sequential  
Programming  
ADh, AFh  
B0h, 75h  
D0h, 7Ah  
Not allowed  
Allowed  
Not allowed  
Not allowed  
Allowed  
Allowed 1  
Not allowed  
Allowed  
Program/Erase  
Suspend  
Program/Erase  
Resume  
Not 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  
Unlock  
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  
Status  
3Ch, 3Dh  
9Bh  
Not allowed  
Not allowed  
Not allowed  
Allowed  
Allowed  
Not allowed  
Allowed  
Allowed  
Not allowed  
Allowed  
Program OTPSecurity  
Register  
Read OTP Security  
Register  
4Bh  
Read Status Registers  
(direct)  
05h, 35h,  
15h  
Allowed  
Allowed  
Read Status Registers  
(indirect)  
65h  
Allowed  
Allowed  
Allowed  
Write Status Registers  
(direct)  
01h, 31h,  
11h  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Not allowed  
Write Status Registers  
(indirect)  
71h  
Status Register Lock  
Terminate  
6Fh  
F0h  
66h  
Not allowed  
Allowed  
Not allowed  
Allowed  
Not allowed  
Allowed  
Enable Reset  
Allowed  
Allowed  
Allowed  
Datasheet  
2021-08-13  
Revision H  
69  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 22: Command Behavior During Program/Erase or Program/Erase Suspend Operations (continued)  
During Program  
During Program or Erase  
(RDY/BSY = 1, PS = x,  
ES = x)  
During Erase Suspend  
(RDY/BSY = 0, PS = 0,  
ES = 1)  
Suspend  
(RDY/BSY = 0, PS = 1,  
ES = x)  
Command  
Code(s)  
Command  
Reset Device  
99h  
Allowed  
Allowed  
Allowed  
Allowed  
Allowed  
Allowed  
Read Mfg ID and  
Device ID  
9Fh, 90h,  
94h  
Deep Power Down  
B9h  
ABh  
Not allowed  
Allowed  
Not allowed  
Allowed  
Not allowed  
Allowed  
Resume from Deep  
Power Down  
Ultra Deep Power  
Down  
79h  
Not allowed  
Not allowed  
Not allowed  
Read SFDP  
5Ah  
77h  
Not allowed  
Not allowed  
Allowed  
Allowed  
Allowed  
Allowed  
Set Burst with Wrap  
1. The operation is allowed in a different 64 kB block.  
5.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.  
5.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.  
Datasheet  
2021-08-13  
Revision H  
70  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
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.  
5.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.  
5.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  
4.3, Status Register 1 and Section 4.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.  
5.12.2 Transfer Format  
The 7Ah and D0h commands follow the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
Datasheet  
2021-08-13  
Revision H  
71  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
.
5.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 3.10.1,  
Nested Operations.  
Datasheet  
2021-08-13  
Revision H  
72  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 23.  
5.13.1 Command Prerequisites  
None.  
5.13.2 Transfer Format  
The 77h command follows the 1-4-4 transfer format described in Section 3.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.  
5.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.  
5.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 23.  
Table 23: 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-13  
Revision H  
73  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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).  
5.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.  
5.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.  
5.14.1 Command Prerequisites  
None.  
5.14.2 Transfer Format  
The 06h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
74  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 11.  
5.15.1 Command Prerequisites  
None.  
5.15.2 Transfer Format  
The 04h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
75  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.16.1 Command Prerequisites  
None.  
5.16.2 Transfer Format  
The 50h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
76  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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.  
5.17.2 Transfer Format  
The 36h command follows the 1-1-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
77  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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.  
5.18.2 Transfer Format  
The 39h command follows the 1-1-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
78  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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 3.8.1 for more information on the protection scheme.  
5.19.2 Transfer Format  
The 3Ch and 3Dh commands follow the 1-1-1 transfer format described in Section 3.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.  
5.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.  
5.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-13  
Revision H  
79  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.20 GLOBAL BLOCK LOCK (7EH)  
The Global Block Lock command is used to set all of the block bits to 1 with one operation.  
5.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 5.14, \Write Enable (06h) for more information.  
5.20.2 Transfer Format  
The 7Eh command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
80  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.21 GLOBAL BLOCK UNLOCK (98H)  
The Global Block UnLock command is used to reset all of the block bits to 0 with one operation.  
5.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 5.14, \Write Enable (06h) for more information.  
5.21.2 Transfer Format  
The 98h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command  
5.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-13  
Revision H  
81  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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 5.14, \Write Enable (06h) for more information.  
5.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 24: OTP Security Register 0 Bit Assignments  
Security Register Byte Number  
127  
126  
125  
.....  
2
1
0
Factory Programmed by Dialog Semiconductor  
Table 25: 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 26: OTP Security Register 2 Bit Assignments  
Security Register Byte Number  
383  
382  
381  
.....  
User Security OTP Register  
Table 27: OTP Security Register 3 Bit Assignments  
Security Register Byte Number  
511  
510  
509  
.....  
User Security OTP Register  
5.22.3 Transfer Format  
The 9Bh command follows the 1-1-1 transfer format described in Section 3.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.  
5.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-13  
Revision H  
82  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
See Table 28 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 18 for more information on the transfer sequence for this command.  
5.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 28.  
Table 28: 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  
5.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.  
5.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-13  
Revision H  
83  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 4.4, Status  
Register 2 for more information.  
5.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-13  
Revision H  
84  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.23.1 Command Prerequisites  
None.  
5.23.2 Transfer Format  
The 4Bh command follows the 1-1-1 transfer format described in Section 3.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.  
5.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.23.5 Programming Restrictions  
None.  
Datasheet  
2021-08-13  
Revision H  
85  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
5.24.1 Command Prerequisites  
None.  
5.24.2 Transfer Format  
The 05h/35h/15h commands follow the 1-0-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.24.4 Programming Restrictions  
None.  
Datasheet  
2021-08-13  
Revision H  
86  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 29: Indirect Addressing of the Status Registers  
Byte 0  
Command  
65h  
Byte 1  
Address  
01h  
Byte 2  
Dummy  
Dummy  
Dummy  
Dummy  
Dummy  
Dummy  
Byte 3  
Output  
S[7:0]  
Action  
Read Status Register 1  
Read Status Register 2  
Read Status Register 3  
Read Status Register 4  
Read Status Register 5  
65h  
02h  
S[15:8]  
S[23:16]  
S[31:24]  
S[39:32]  
65h  
03h  
65h  
04h  
65h  
05h  
5.25.1 Command Prerequisites  
None.  
5.25.2 Transfer Format  
The 65h command follows the 1-1-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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.  
Datasheet  
2021-08-13  
Revision H  
87  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
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 30: 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.  
5.25.6 Transfer Diagram  
Figure 26 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 26: Status Register Read Operation Showing 8-bit Address Field  
5.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.  
Datasheet  
2021-08-13  
Revision H  
88  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.26 WRITE STATUS REGISTERS 1 - 3 — DIRECT (01H, 31H, 11H)  
The Write Status Register commands are used to perform a direct write of Status registers 1 - 3. These registers can also be  
indirectly accessed as described in the following section. In the direct method, a specific command is executed. Hardware  
decodes this command and writes the data to the appropriate Status register. No address field is required. Status registers 1 - 3  
are accessed by the following commands.  
Write Status Register 1: 01h  
Write Status Register 2: 31h  
Write Status Register 3: 11h  
5.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.  
5.26.2 Transfer Format  
The 01h/31h/11h commands follow the 1-0-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
89  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 31: 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  
5.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 5.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.  
5.27.2 Transfer Format  
The 71h command follows the 1-1-1 transfer format described in Section 3.2, where the command, address, and data are  
transferred on the SI pin. Figure 7 shows a timing diagram for this operation.  
5.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 18 for more information on the transfer sequence for this command.  
Datasheet  
2021-08-13  
Revision H  
90  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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 32 shows a write to Status Register 1.  
Table 32: 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  
5.27.5 Transfer Diagram  
Figure 27 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 27: Status Register Write Operation Showing 8-bit Address Field  
5.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 AT25FF161A 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-13  
Revision H  
91  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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 5.14, \Write Enable (06h) for more information.  
5.28.2 Transfer Format  
The 6Fh command follows a special 1-0-1 transfer format described in Section 3.2, where the command, address, and data are  
transferred on the SI pin. However, for this command, two verification bytes are transferred. Figure 28 shows a timing diagram  
for this operation.  
5.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 18 for more information on the transfer sequence for this command.  
5.28.4 Transfer Diagram  
Figure 28 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 28: Status Register Lock Operation with Two Verification Bytes  
5.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-13  
Revision H  
92  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
5.29.1 Command Prerequisites  
None.  
.
5.29.2 Transfer Format  
The B9h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
93  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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 5.30.4 below. In UDPD  
mode, the ABh command is used to exit the UDPD state as described in Section 5.30.5 below. Table 33 shows how to exit the  
DPD and UDPD modes.  
Table 33: 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  
5.30.2 Command Prerequisites  
None.  
5.30.3 Transfer Format — Resume from Deep Power Down  
For this operation, theABh command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
Datasheet  
2021-08-13  
Revision H  
94  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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 6.5.  
Figure 29 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 29: Resume from Deep Power Down or Ultra-Deep Power Down  
5.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-13  
Revision H  
95  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.31.1 Command Prerequisites  
None.  
5.31.2 Transfer Format  
The 79h command follows the 1-0-0 transfer format described in Section 3.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.  
5.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 30 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 30: Entering Ultra-Deep Power Down State  
See Table 18 for more information on the transfer sequence for this command.  
Datasheet  
2021-08-13  
Revision H  
96  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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-13  
Revision H  
97  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.32.1 Command Prerequisites  
None.  
5.32.2 Transfer Format  
The 66h/99h commands are issued as two back-to-back 1-0-0 commands described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
Figure 31 shows an example of the back-to-back command sequence.  
CS  
SI  
66h  
99h  
8 clocks  
8 clocks  
Figure 31: Enable Reset and Reset Command Sequence (SPI Mode)  
5.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-13  
Revision H  
98  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.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.  
5.33.2 Transfer Format  
The F0h command follows the 1-0-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.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-13  
Revision H  
99  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.34.1 Command Prerequisites  
None.  
5.34.2 Transfer Format  
The 90h command follows the 1-1-1 transfer format described in Section 3.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.  
5.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 18 for more information on the transfer sequence for this command.  
5.34.4 Programming Restrictions  
None.  
Datasheet  
2021-08-13  
Revision H  
100  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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).  
5.35.1 Command Prerequisites  
None.  
5.35.2 Transfer Format  
The 94h command follows the 1-4-4 transfer format described in Section 3.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.  
5.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  
5.35.4 Programming Restrictions  
None.  
Datasheet  
2021-08-13  
Revision H  
101  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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.  
5.36.1 Command Prerequisites  
None.  
5.36.2 Transfer Format  
The 9Fh command follows the 1-0-1 transfer format described in Section 3.2, where the command is transferred on the SI pin,  
and data is transferred on the SO pin. See Figure 32 for timing diagram of this operation. Note that no address is required for this  
type of read operation.  
5.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 18 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-13  
Revision H  
102  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Table 34: 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  
46h  
08h  
01h  
0xh  
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
1
x
Family Code  
Density Code  
1
Family Code: 010 (4h)  
Density Code: 00110 (6h)  
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 35: Device ID Part 4 Variants — EDI String Value  
EDI String Value  
Variant  
Initial device  
TBD  
00h  
01h  
02h  
TBD  
03h  
TBD  
04h  
TBD  
05h  
TBD  
06h  
TBD  
07h  
TBD  
08h - 0Fh  
Reserved  
5.36.4 Transfer Diagram  
Figure 32 shows the bus signals during an indirect register read operation. This type of command requires only a single 8-bit  
address.  
Datasheet  
2021-08-13  
Revision H  
103  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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  
46h  
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 32: Read JEDEC ID  
5.36.5 Programming Restrictions  
None.  
Datasheet  
2021-08-13  
Revision H  
104  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
5.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  
.
5.37.1 Command Prerequisites  
None.  
5.37.2 Transfer Format  
The 5Ah command follows the 1-1-1 transfer format described in Figure 3.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.  
5.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.  
5.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.  
5.37.5 SFDP Organization  
Contact Dialog Semiconductor for SFDP table information.  
Datasheet  
2021-08-13  
Revision H  
105  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6
Electrical Specifications  
6.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)  
6.2 DC AND AC OPERATING RANGE  
Parameter  
AT25FF161A  
-40 °C to 85 °C  
1.65 V to 3.6 V  
Operating Temperature (Case)  
VCC Power Supply  
Datasheet  
2021-08-13  
Revision H  
106  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6.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  
8.2  
30  
400  
nA  
µA  
µA  
CS, RESET, WP = VCC. All  
other inputs at 0V or VCC  
IDPD  
Deep Power-Down Current  
Standby Current  
17.5  
50  
CS, RESET, WP = VCC. All  
other inputs at 0V or VCC  
3
ISB  
SPI (33 MHz)  
IOUT = 0 mA  
IOUT = 0 mA  
IOUT = 0 mA  
IOUT = 0 mA  
5.5  
8.6  
9.0  
mA  
mA  
mA  
mA  
SPI (104MHz)  
Dual (104 MHz)  
Quad (104 MHz)  
13.0  
15.0  
18.0  
4
ICC1  
10.7  
13.0  
Active Current,  
Program Operation  
5
ICC3  
CS = VCC  
CS = VCC  
9.2  
13.0  
15.5  
mA  
mA  
Active Current,  
Erase Operation  
ICC4  
10.2  
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
6.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  
108  
108  
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 19 and Table 20 for the maximum frequency of EBh/E7h commands in various modes.  
Datasheet  
2021-08-13  
Revision H  
107  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6.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 >550 ms. For the shorter UDPD hold times, T  
might reach  
RUDPD  
1200 μs under some conditions.  
Datasheet  
2021-08-13  
Revision H  
108  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6.6 PROGRAM AND ERASE CHARACTERISTICS  
Symbol Parameter  
1.65V - 3.6V  
2.7V - 3.6V  
Typ 1  
4.5  
Units  
Min  
Typ 1  
4.0  
Max 2  
Min  
Max 2  
tPP  
Page Program Time (256 Bytes)  
Byte Program Time  
7.0  
7.0  
ms  
µs  
3
tBP  
32  
32  
4 kB  
32 kB  
64 kB  
90  
125  
900  
85  
125  
900  
ms  
ms  
ms  
sec  
µs  
tBLKE  
Block Erase Time  
620  
1200  
37  
550  
1600  
1100  
34  
1600  
tCHPE  
Chip Erase Time (16M density)  
Suspend Time (Program)  
Suspend Time (Erase)  
50  
50  
12  
10  
50  
50  
12  
10  
tSUS  
µs  
Resume Time (Program)  
Resume Time (Erase)  
10  
8
10  
8
µs  
tRES  
µs  
OTP Security Register Program Time  
(<= 10K)  
tOTPP  
5
6
5
6
ms  
ms  
tWRSR  
Write Status Register Time  
8.0  
15  
7.5  
15  
o
o
1. Typical values measured at 1.8 V at 25 C for 1.65 V - 3.6 V, and at 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. Program time after the first byte varies.  
Datasheet  
2021-08-13  
Revision H  
109  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
6.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 33 shows the AC timing during power-up.  
Vcc  
VCCmin  
tVCSL  
Full Operation  
Permitted  
tVR  
0V  
Figure 33: AC Timing During Device Power Up  
Table 36: Power On Timing Requirements  
1.65V - 3.6V  
Typ  
Symbol  
Parameter  
Units  
Min  
Max  
200  
tVCSL  
tVR  
Minimum VCC to full operation permitted  
VCC rise time (from 0V to VCCmin)  
VCC brown-out low time  
µs  
µs/V  
µs  
1
6000 1  
tPWD  
300  
VPWDMAX  
Maximum VCC brown-out  
0.2  
V
o
o
1. 30000 µs/V at -15 C to 85 C.  
Datasheet  
2021-08-13  
Revision H  
110  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
Figure 34 shows the AC power-up timing after a brown-out condition.  
Vcc  
VCCmin  
tVCSL  
Full Operation  
Permitted  
VPWDMAX  
tVR  
tPWD  
Figure 34: AC Power-up Timing After a Brown-Out  
6.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 35: Serial Input Timing  
CS  
SCK  
SI  
tCLKH  
tCLKL  
tDIS  
tOH  
tV  
tV  
SI/SO/WP/HOLD  
Figure 36: Serial Output Timing  
Datasheet  
2021-08-13  
Revision H  
111  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
CS  
tWPS  
tWPH  
WP  
SCK  
SI  
0
0
0
X
MSB  
MSB OF  
WRITE STATUS REGISTER  
OPCODE  
LSB OF  
WRITE STATUS REGISTER  
DATA BYTE  
MSB OF  
NEXT OPCODE  
HIGH-IMPEDANCE  
SO  
Figure 37: WP Timing for Write Status Register Command  
CS  
SCK  
HOLD  
SI  
tHHH  
tHLS  
tHLH  
tHHS  
HIGH-IMPEDANCE  
SO  
Figure 38: HOLD Timing – Serial Input  
CS  
SCK  
HOLD  
SI  
tHHH  
tHLS  
tHLH  
tHHS  
tHLQZ  
tHHQX  
SO  
Figure 39: HOLD Timing – Serial Output  
Datasheet  
2021-08-13  
Revision H  
112  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
7
Ordering Information  
AT 25FF 161 A - SS H N - B  
Shipping  
B = Bulk  
Designator  
T = Tape  
Product Family  
Operating Voltage  
N = 1.65 V - 3.6 V  
Device Density  
161 = 16 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  
MA = 8-pad 2 x 3 x 0.6 mm UDFN  
U = 8-ball WLCSP  
Note: Contact Dialog Semiconductor for more  
information on die/wafer options.  
Table 37: Valid Ordering Codes for Operating Voltage 1.65 V to 3.6 V  
Available to  
Order  
Mechanical  
Drawing  
Lead  
Finish  
Temperature  
Range  
Valid Part Number  
Description  
AT25FF161A-SSHN-B  
AT25FF161A-SSHN-T  
8-lead, 0.150" Narrow Plastic Gull Wing  
Small Outline Package (JEDEC SOIC)  
Yes  
Yes  
Yes  
Yes  
8S1  
8S2  
NiPdAu  
AT25FF161A-SHN-B  
AT25FF161A-SHN-T  
8-lead, 0.208” Wide Plastic Gull Wing  
Small Outline Package (EIAJ SOIC)  
Industrial  
(-40°C to +85°C)  
8-pad, 2 x 3 x 0.6 mm, Thermally  
Enhanced Plastic Ultra Thin Dual Flat No  
AT25FF161A-MAHN-T  
AT25FF161A-UUN-T  
AT25FF161A-DWF  
8MA3  
NiPdAu  
SnAgCu  
--  
8-ball, 3 x 2 x 3 mm Ball Matrix, 0.35 mm Z-  
Height  
8-WLCSP  
Contact Dialog Contact Dialog  
Semiconductor Semiconductor  
Die in Wafer Form  
Datasheet  
Revision H  
113  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
8
Packaging Information  
The AT25FF161A device supports the following package types:  
8S1, 8-lead 0.150 narrow body JEDEC SOIC  
8S2, 8-lead 0.208 wide body EIAJ  
8MA3, 2 x 3 x 0.6 mm UDFN  
8-WLCSP, 8-ball 3 x 2 x 3 array WLCSP  
Each of these packages is described in the following subsections.  
Datasheet  
2021-08-13  
Revision H  
114  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
8.1 8S1 – JEDEC SOIC  
Datasheet  
2021-08-13  
Revision H  
115  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
8.2 8S2 – 8-LEAD EIAJ SOIC  
Datasheet  
2021-08-13  
Revision H  
116  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
8.3 8MA3 – 2 X 3 UDFN  
E
Pin 1 ID  
D
SIDE VIEW  
A3  
A1  
TOP VIEW  
A
COMMON DIMENSIONS  
(Unit of Measure = mm)  
K
Option A  
0.45  
SYMBOL  
MIN  
0.45  
0.00  
NOM  
MAX  
0.60  
0.06  
Pin #1  
Chamfer  
(C 0.35)  
8
7
6
5
1
2
Pin #1 Notch  
(0.20 R)  
A
(Option B)  
A1  
A3  
0.150 REF  
D2  
e
b
D
D2  
E
0.20  
1.50  
0.30  
1.70  
3
4
2.00 BSC 0.1  
1.60  
3.00 BSC 0.1  
0.50 BSC  
0.50  
e
b
L
0.40  
0.60  
L
BOTTOM VIEW  
Notes:  
1. This package conforms to JEDEC reference MO-229, Saw Singulation.  
2. The terminal #1 ID is a Laser-marked Feature.  
TITLE  
GPC  
REV.  
D
DRAWING NO.  
8MA3, 8-pad (2 x 3 x 0.6 mm Body), Thermally  
Enhanced Plastic Ultra Thin Dual Flat No Lead  
Package (UDFN)  
YFG  
8MA3  
Datasheet  
2021-08-13  
Revision H  
117  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
8.4 8-WLCSP — 8-BALL 3 X 2 X 3 WLCSP  
TOP VIEW  
BOTTOM VIEW  
PIN A1 MARK  
PIN A1 MARK  
1
2
3
3
2
1
A
B
C
D
A
200  
B
400  
C
D
E
400  
800  
200  
E
350  
700  
1767  
BSL  
SIDE VIEW  
25  
All dimensions in micrometers (μm)  
250  
440 21  
210 31  
165 17  
TITLE  
Revision  
A
Ordering Part  
Internal Package  
Identifier  
Number Identifier  
8-ball (3 x 2 x 3 Array)  
Wafer Level Chip Scale Package (WLCSP)  
UD  
DEC  
Datasheet  
2021-08-13  
Revision H  
118  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory  
with Multi-I/O Support  
9
Revision History  
Revision  
Date  
3/2020  
Change History  
A
Initial release of AT25FF161A 16 Mbit data sheet.  
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 and 4 to Section 8.6.  
B
6/2020  
Added 2.7V - 3.6V voltage option to Table 8-4.  
Added 2.7V - 3.6V voltage option to Table 8-6.  
Updated frequency information on page 1.  
Changed data sheet status from ADVANCED to PRELIMINARY.  
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.  
Updated frequency information on page 1.  
Updated power dissipation information on page 1.  
C
D
9/2020  
Changed Table 8-19 to indicate temperature dependency.  
Updated Table 7-2 and added Table 7-3 in Section 7.4, XiP Mode Read Command.  
Updated Section 8.3, Maximum Clock Frequencies.  
Changed value in second footnote of Section 8.5, AC Characteristics - All Other Parameters.  
Deleted tPE row from table in Section 8.6, Program and Erase Characteristics.  
Removed footnote 4 from Section 8.3, DC Characteristics.  
01/2021  
Applied Dialog Semiconductor format.  
In section 6.2, changed Vcc Power Supply to 1.65 V to 3.75 V.  
Added section 6.4 with 1.65 V to 3.75 V characteristics.  
Added ordering code AT25FF161A-SSPN-T.  
Added device grade P to ordering info.  
E
F
04/2021  
06/2021  
Removed all references to the 1.65 V to 3.75 V version of the device.  
Added tolerance of +/-0.1 mm to rows D and E of the table in Section 8.3, 8MA3 - 2 X 3 UDFN.  
Corrected the N option in the Ordering Information figure.  
Corrected title to Table 37.  
Removed original Table 6.4.  
G
H
07/2021  
08/2021  
Removed “Preliminary” designation.  
Changed values in Tables 19 and 20, the tables sections 6.3 - 6.6, and Table 36.  
Updated UDFN package drawing in Section 8.3.  
Datasheet  
2021-08-13  
Revision H  
119  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  
AT25FF161A  
16-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 13, 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  
120  
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-13  
Revision H  
120  
DS-AT25FF161A-182  
© 2021 Dialog Semiconductor  

相关型号:

AT25FF161A-MAHN-T

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-MBUN-T

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-MHN-T

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-SHN-B

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-SHN-T

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-SSHN-B

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-SSHN-T

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-SSPN-T

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF161A-UUN-T

16-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF321A

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF321A-DWF

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG

AT25FF321A-SHN-B

32-Mbit, 1.65 V - 3.6 V SPI Serial Flash Memory with Multi-I/O Support
DIALOG