The M25PX16-VMN6P is a 16 NOR Serial Flash Embedded Memory with advanced write protection mechanisms, accessed by a high speed SPI-compatible bus. The device supports two high-performance dual input/output instructions that double the transfer bandwidth for read and program operations. The memory can be programmed 1 to 256 bytes at a time, using the page program instruction. It is organized as 32 sectors that are further divided into 16 subsectors each. The memory can be erased a 4kB subsector at a time, a 64kB sector at a time or as a whole. It can be write protected by software using a mix of volatile and non-volatile protection features, depending on the application needs. This has 64 one-time-programmable-bytes that can be read and programmed using two dedicated instructions, read OTP and program OTP respectively. These 64 bytes can be locked permanently by a particular program OTP sequence. Once they have been locked, they become read-only and this state cannot be reverted.