1. General Information & Purpose
️· Device: GD25B16C – A 16Mb (8Mx2) SPI Flash Memory.
️· Interface: Supports Standard/Dual/Quad SPI. This means it can communicate using different widths of data (1, 2, or 4 bits simultaneously).
️· Purpose: Used for non-volatile data storage in embedded systems.
️· Memory Protection: Includes block protection features (BP4-BP0 bits) to prevent unintentional modification of memory regions.
️· OTP Security: Offers one-time programmable (OTP) features for security (LB bit).
2. Block Protection (BP4-BP0)
️· Function: These bits (BP4-BP0) define software-protected memory areas. When set to '1', these areas are protected from Page Program, Sector Erase, and Block Erase commands.
️· Control: These bits are written using the Write Status Register (WRSR) command.
️· Chip Erase: Chip Erase is only possible if BP2, BP1, and BP0 are all '0' and CMP is '0'.
️· Table 1 (referenced, but not provided in the extract): This table (mentioned but not given) is *essential* to understanding which memory ranges are protected by setting different combinations of the BP4-BP0 bits.
3. Status Register Protection (SRP1, SRP0)
️· Function: Control access to the Status Register.
️· Modes:
- Software Protection (0, 0): Status Register can be written after a Write Enable command. (Default)
- Power Supply Lock-Down (1, 0): Status Register is protected until power cycling.
- One-Time Programmable (1, 1): Status Register is permanently protected (cannot be written again).
️· Note: The Power Supply Lock-Down mode returns to the default state (0, 0) after power cycling.
️· One Time Programmable (OTP): This functionality is available upon special order.
4. Other Status Register Bits
️· QE (Quad Enable): Read-only bit that enables Quad SPI mode. Always set to '1' and cannot be changed.
️· LB (Lock Bit): One-Time Programmable bit that controls access to Security Registers. Default is '0' (unlocked).
️· CMP (Compare): Read/Write bit used in conjunction with the Block Protect bits (BP4-BP0) for more flexible array protection (refer to the omitted Table 1). Default is '0'.
️· HPM (High Performance Mode): Indicates the status of High Performance Mode.
️· SUS (Suspend): Read-only bit set when Program/Erase Suspend command is executed. Cleared by Resume command or power cycling.
5. Commands
️· Write Enable/Disable: Basic commands to allow or prevent writing to the memory.
️· Read Status Register: Allows reading of the current status register values.
️· Write Status Register: Used to change the status register values (e.g., set BP bits, SRP bits).
️· Read Data: Reads data from a specified memory address.
️· Fast Read/Quad Output/Quad I/O: Various read commands optimized for different SPI modes.
️· Page Program: Writes a small block (page) of data to memory.
️· Sector/Block/Chip Erase: Erases memory blocks or the entire chip.
️· Program/Erase Suspend/Resume: Temporarily suspends erase/program operations and allows another operation.
️· Reset: Resets the device.
Important Omissions & Where to Find More Information
️· Table 1 (Block Protection Details): This table is *critical* for understanding how the BP4-BP0 bits protect different memory ranges. Without it, you can't effectively configure memory protection.
️· Detailed Command Timing: The documentation doesn't include the precise timing diagrams for all commands.
️· Security Register Details: The LB bit refers to "Security Registers," but their specifics are not given here.
To effectively use this memory, you *must* obtain the complete documentation, especially Table 1.