Large EPROMs
richaj45
Posts: 179
Hello:
Has anyone used a 1 meg bit EEPROM to replace the 32k byte boot EPROM?
If so which part number?
Thanks
rich
Has anyone used a 1 meg bit EEPROM to replace the 32k byte boot EPROM?
If so which part number?
Thanks
rich
Comments
Well thanks for correcting me.
Now do you know if there is a compatible one that is 1024k bytes in size?
cheers,
rich
The 1Mbit 24LC1025 *SHOULD* work, and I bought some to test... now I just need time to test them
http://ww1.microchip.com/downloads/en/DeviceDoc/20001941L.pdf
It appears like two 512Mbit devices. Normally, there are 8 EEPROM address select lines on the chips up to 512Mbit in size, A2-A1-A0
The 24LC1025 only has A1 and A0 externally, what is normally "A2" becomes "B0" and selects between the upper and lower 512Mbits of the chip.
Summary: it should work.
Thanks for the info.
Just what i wanted, a little help.
cheers,
rich
For example, the 24LC1025 has pins 1 to 3 configured as a0 to a2. The a0 and a1 are configurable as chip selects, but a2 is non-configurable and has to be tied high. The control byte is arranged like this, %1010baaw
where b is bit 17 of the address within the chip (two 64kbyte blocks) and aa are the a1 and a0 device select bits.
The 24LC1026 or AT24CM01 have pins 1 to 3 configured as nc, a1 and a2, The a1 and a2 are chip selects. The control byte is, %1010aabw
where b selects the internal block of 64kbytes, and aa are the a2 ans a1 device select bits.
Bottom line, not interchangeable.
Yes, that's right 1M bits - that's what the OP asked about I thought. The AT24C1024B is addressable as 128k bytes on pages of 256 bytes. One of the bits in the device address is a page address bit - 17 bits are required to address the 128k bytes. Is that what you mean by the device select code?
Yes, but the part numbers are also written as 24M01 for instance, which is one type I use that has 256 byte page size with some and 1MHz I2C operation and around $1.40. Since the memory address sent to the device (after it has been selected using the device address) is set at 16-bits that means you can only access 64K per logical device. However the 1Mbit devices (128Kbytes) are accessed as two logical devices in the same chip so therefore pin 1 which is normally A0 device address modifier is not used. Your I2C software must break up the 17-bit address into a device address, and then the memory address.
My EEPROM routines in Tachyon refer to this bit of code which selects the correct device depending upon address bits b16 onwards.
As pointed out above, be aware of the pin difference on A2 and the internal address select bits.
No problems using these devices at all