1. General Information and Key Concepts
️· Device Types: The document covers two closely related flash memory devices: GD25LD05C and GD25LD10C. They share many of the same commands and functionality, but there are differences in ID readings (see Section 9).
️· Flash Memory Basics: This is flash memory, so data is stored non-volatility. Programming and erasing are fundamental operations.
️· WEL (Write Enable Latch): Before any programming, erasing, or status register write operation, the Write Enable Latch *must* be set to 1. It's automatically cleared after certain operations.
️· Status Register: Contains information about the device’s state. Crucially, the `WIP` (Write In Progress) bit indicates whether a program/erase operation is currently running.
️· CS# (Chip Select): This pin is always brought low before a command is sent and brought high after the command sequence is complete.
2. Commands and Their Functionality
️· WREN (06H) - Write Enable:
- Function: Sets the WEL bit to 1.
- Pre-requisite: None
- Sequence: CS# Low -> 06H -> CS# High
️· WRDI (04H) - Write Disable:
- Function: Sets the WEL bit to 0.
- Pre-requisite: Usually after programming, erasing, or writing to the status register.
- Sequence: CS# Low -> 04H -> CS# High
️· RDSR (05H) - Read Status Register:
- Function: Reads the Status Register content.
- Pre-requisite: None. Safe to read during write cycles.
- Sequence: CS# Low -> 05H -> Data on SO -> CS# High.
️· WRSR (01H) - Write Status Register:
- Function: Writes to the Status Register to modify settings (Block Protect, SRP).
- Pre-requisite: WEL must be set (WREN must be performed first).
- Sequence: CS# Low -> 01H -> Data Byte -> CS# High. *Important:* Modifies Block Protect bits.
️· READ (03H) - Read Data Bytes:
- Function: Reads a contiguous block of memory starting at the specified address.
- Pre-requisite: None, but safe to read during write cycles.
- Sequence: CS# Low -> 03H -> 3-Byte Address -> Data on SO -> CS# High. Address auto-increments.
️· FAST READ (0BH) - Read Data Bytes at Higher Speed:
- Function: Same as READ but faster.
- Pre-requisite: None
- Sequence: CS# Low -> 0BH -> 3-Byte Address + Dummy Byte -> Data on SO -> CS# High.
️· DUAL OUTPUT FAST READ (3BH) - Simultaneous Read:
- Function: Reads data faster, transmitting 2 bits per clock cycle.
- Pre-requisite: None.
- Sequence: CS# Low -> 3BH -> 3-Byte Address + Dummy Byte -> Data on SO -> CS# High.
️· PAGE PROGRAM (02H) - Write to a Page:
- Function: Programs (writes) data to a specific page in the flash memory.
- Pre-requisite: WEL must be set (WREN).
- Sequence: CS# Low -> 02H -> 3-Byte Address -> At Least 1 Data Byte -> CS# High. Pages have fixed size (usually 256 bytes). Any data beyond the page size is discarded.
3. Key Differences between GD25LD05C and GD25LD10C
The primary difference documented here is in the ID reading (more detail in the document excerpt).
4. Important Considerations and Precautions
️· WEL is Essential: Always make sure WEL is set before attempting to modify the memory.
️· CS# Timing: Ensure proper timing of CS# to avoid errors.
️· Page Size: Programming is done in pages (typically 256 bytes).
️· WIP Status: Check the WIP bit before sending new commands during program/erase operations.
️· Hardware Protection: The SRP bit in the Status Register can be used to enter a hardware-protected mode that prevents further modifications.