M95640-RMB3T
AI

The **M95640-RMB3TG** is a high-performance, electrically erasable programmable memory (EEPROM) manufactured by STMicroelectronics. It is commonly used for parameter storage in automotive, industrial, and consumer electronics.
---
### 1. Key Technical Specifications
The following table summarizes the primary electrical and physical characteristics:
| Parameter | Specification |
| :--- | :--- |
| **Memory Size** | 64 Kbit (8,192 x 8 bits) |
| **Interface** | SPI (Serial Peripheral Interface) |
| **Max Clock Frequency** | 20 MHz |
| **Operating Voltage ($V_{CC}$)** | 1.8V to 5.5V |
| **Operating Temperature** | -40°C to +125°C |
| **Package Type** | UFDFPN8 (MLP8) |
| **Endurance** | 4 million write cycles |
| **Data Retention** | 200 years |
---
### 2. Functional Description
The device operates using the SPI protocol, which requires four signals:
* **Chip Select ($\bar{S}$):** Activates the device.
* **Serial Data Input (D):** Receives instructions, addresses, and data.
* **Serial Data Output (Q):** Sends data out during read operations.
* **Serial Clock (C):** Synchronizes data movement.
It also features hardware protection pins:
* **Write Protect ($\bar{W}$):** Prevents unauthorized write operations to the status register.
* **Hold ($\bar{HOLD}$):** Pauses communication without resetting the chip select.
---
### 3. Part Number Breakdown
Understanding the suffix "RMB3TG" helps identify the specific variant:
| Code | Meaning |
| :--- | :--- |
| **M95** | SPI Family EEPROM |
| **640** | Density (64 Kbit) |
| **-R** | Low Voltage (1.8V to 5.5V) |
| **MB** | UFDFPN8 Package (2x3 mm) |
| **3** | Range 3 (-40 to +125°C / Automotive Grade) |
| **TG** | Tape & Reel Packing / Green (Lead-free) |
---
### 4. Implementation Example (SPI Logic)
Below is a conceptual example of how to interact with the M95640 using a standard SPI command structure in C:
```c
// Define standard M95640 Opcodes
#define WREN 0x06 // Write Enable
#define WRITE 0x02 // Write to Memory Array
#define READ 0x03 // Read from Memory Array
void write_byte(uint16_t address, uint8_t data) {
select_chip();
spi_transfer(WREN); // Must enable write latch first
deselect_chip();
select_chip();
spi_transfer(WRITE); // Send Write instruction
spi_transfer((address >> 8) & 0xFF); // Address MSB
spi_transfer(address & 0xFF); // Address LSB
spi_transfer(data); // Send data byte
deselect_chip();
}
```
- ⤷
What are the differences between M95640 and the I2C-based M24C64?
- ⤷ How does the Page Write mode improve efficiency in this EEPROM?
- ⤷ What is the maximum current consumption during a write cycle?