I was wondering what the difference between EEPROM types are.

For example 24S128 and 24LC128. My understanding is that typically the later digits, 128 in this case, represent the amount of space available on EEPROM. But what does the 24 and the S/LC/C/AA stand for?


  • 2
    \$\begingroup\$ Which vendor? I don't immediately see one that sells both of those part numbers. \$\endgroup\$ Commented Nov 12, 2012 at 21:13
  • \$\begingroup\$ Incidentally, some cheap programmers don't actually have the full regulator so if you use anything with a Vcc of less than 5V it will get damaged/fail to program correctly/etc. This is why many folks fail to program BIOS and thus throw away a potentially repairable device. This is also why certain folks sell BIOS / vBIOS chips for [lots of money]. [Edited by a moderator.] \$\endgroup\$
    – Conundrum
    Commented May 2, 2022 at 7:35

2 Answers 2


First of all: Memory IC nomenclature is not robustly standardized; There is a lot of variation and even conflicting coding between manufacturers, on the order and meaning of the codes making up the part identifier.

That being said, here is an attempt at providing an overview:

The initial 2-digit code is the device family. A leading "24" indicates a I2C serially accessed EEPROM. Some other families are 95 (SPI serial EEPROM), Flash (e.g. 28F, 29F) and "standard" EEPROM (28).

Some manufacturers precede the 2 digits by a letter code, M for memory devices (STMicroelectronics, Atmel and others) optionally followed by an additional letter e.g. MX = Macronix memory.

Thus the device family becomes M24 for these examples.

The next letter or two usually indicates logic family / device voltage, but different manufacturers differ in their use of these codes:

  • C = 5 Volts
  • W = 2.7-3.6 Volts (sometimes 2.5 to 5.5 Volts)
  • V = 3-3.6 Volts
  • L = 4.5-5.5 Volts
  • R = 1.8-5.5 Volts (typically STMicro)
  • AA = 1.8-5.5 Volts (typically MicroChip)
  • LC = 2.5-5.5 Volts

The digits after this do typically indicate memory capacity, but this is not simply the number of bits or bytes of memory. For instance, 512 = 512 Kilobits 8-bit EEPROM, but 516 = 512 Kilobits 16-bit EEPROM (usually, but not always!)

Some memory devices follow this up with a 2-digit access time code, i.e. access speed of the memory. Here again, 25 = 25 nanoseconds, but 10 = 100 nanoseconds usually.

This may be followed by a single or two-letter package indicator (B = Plastic DIP, N = TSOP, and a variety of other codes).

Last, a single-character (number or letter) device grade code may be added, i.e. various temperature ranges, military-grade, automobile grade, etc.

The only reliable way to interpret a particular memory IC's code, is to look it up in the datasheet, since there are wide variations, and even outright discrepancies, between manufacturers (and I suspect sometimes between production years too).

There are Application Notes for memory nomenclature by STM and several other manufacturers out there. Also, a fair guide to memory ICs, if somewhat incomplete, is here.

  • 1
    \$\begingroup\$ Wow. Thanks alot for this very comprehensive and informative response! \$\endgroup\$
    – moesef
    Commented Nov 19, 2012 at 23:28

For Microchip, 24 is a series of parts, specifically Serial Electrically Erasable PROM (EEPROM), I2C. AA/LC/FC is voltage range and speed.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.