mirror of
https://github.com/TomNisbet/TommyPROM.git
synced 2025-01-02 17:30:44 +00:00
expand chips tested list in docs
This commit is contained in:
parent
c6b91d0768
commit
a2129459df
@ -90,7 +90,7 @@ to that sector.
|
|||||||
|
|
||||||
## Misc Flash
|
## Misc Flash
|
||||||
|
|
||||||
**29C Series**
|
#### 29C Series
|
||||||
|
|
||||||
The 29C series flash chips are similar to the 28C EEPROMs, except they must erase an
|
The 29C series flash chips are similar to the 28C EEPROMs, except they must erase an
|
||||||
entire sector before programming new data. The start of a block write operation causes
|
entire sector before programming new data. The start of a block write operation causes
|
||||||
@ -110,7 +110,7 @@ of the sector. The second write will then erase the data just written and then
|
|||||||
bytes into the second half of the sector. To fix this, the code would need to be modified
|
bytes into the second half of the sector. To fix this, the code would need to be modified
|
||||||
to keep 256 bytes of data from two packets before initiating a block write.
|
to keep 256 bytes of data from two packets before initiating a block write.
|
||||||
|
|
||||||
**28F Series**
|
#### 28F Series
|
||||||
|
|
||||||
The 28F series flash do not have sectors. The entire chip must be erased before writing
|
The 28F series flash do not have sectors. The entire chip must be erased before writing
|
||||||
new data. Data is written a byte at a time using a command register to control the
|
new data. Data is written a byte at a time using a command register to control the
|
||||||
@ -119,7 +119,7 @@ the programming or erase operations**. TommyPROM does not currently support 28F
|
|||||||
but it would not be difficult to write a driver. The default 28C driver will read 28F
|
but it would not be difficult to write a driver. The default 28C driver will read 28F
|
||||||
chips.
|
chips.
|
||||||
|
|
||||||
**29F Series**
|
#### 29F Series
|
||||||
|
|
||||||
The 29F series flash have sectors that must be explicitly erased before writing new
|
The 29F series flash have sectors that must be explicitly erased before writing new
|
||||||
data. Data is written a byte at a time using a command register to control the
|
data. Data is written a byte at a time using a command register to control the
|
||||||
@ -150,8 +150,55 @@ The 8755 build of TommyPROM also has a circuit to control the 25V programming pu
|
|||||||
|
|
||||||
|Model |Manufacturer |Type |Module |Notes|
|
|Model |Manufacturer |Type |Module |Notes|
|
||||||
|:--- |:--- |:--- |:--- |:--- |
|
|:--- |:--- |:--- |:--- |:--- |
|
||||||
|28C256 |Atmel, others|EEPROM |28C |Fully supported|
|
|AT28C256 |Atmel, others|EEPROM |28C |Fully supported|
|
||||||
|SST39SF040|Microchip |Flash |SST39SF|All SST39SF0x0 supported|
|
|SST39SF040|Microchip |Flash |SST39SF|All SST39SF0x0 supported|
|
||||||
|27E257 | |EEPROM |27 |Continual 12V or 14V for program/erase|
|
|WE27E257 |Winbond |EEPROM |27 |Continual 12V or 14V for program/erase|
|
||||||
|29C010 | |Flash |28C |Only with 128 byte or less sector size|
|
|AT29C010 |Atmel |Flash |28C |Only with 128 byte or less sector size|
|
||||||
|8755A |Intel |EPROM |8755A |Requires 25V pulses to program|
|
|8755A |Intel |EPROM |8755A |Requires 25V pulses to program|
|
||||||
|
|
||||||
|
#### 28C256
|
||||||
|
|
||||||
|
Tested with chips from several manufacturers including Atmel AT28C256, Xicor X28C256, and
|
||||||
|
CSI CAT28C256. Also works with the smaller 28C64 and 28C16 chips, although some
|
||||||
|
parameters may need to be adjusted. Some smaller chips do not support SDP, so the _Lock_
|
||||||
|
and _Unlock_ commands have no effect. Check the datasheet to see if block writes are
|
||||||
|
supported. Some 28C16s use a 16 byte block instead of the 64 bytes used on the 28C256.
|
||||||
|
It is always safe to just set the block size parameter to zero when declaring the chip to
|
||||||
|
disable block writes altogether.
|
||||||
|
|
||||||
|
The 28C chips do not need to be explicitly erased. Each memory cell is automatically
|
||||||
|
erased during a write operation, so they are more similar to a slow RAM than to other
|
||||||
|
PROMs.
|
||||||
|
|
||||||
|
#### SST39SF040
|
||||||
|
|
||||||
|
The SST39SF driver supports all chips in this family, so the 040, 020, and 010 chips can
|
||||||
|
be all be used with no code change. These chips use sectors that must be erased before
|
||||||
|
writing new data. The code keeps track of the current sector and will automatically do
|
||||||
|
an erase operation whenever a write starts to a new sector. The _Erase_ command is
|
||||||
|
supported, but is not needed unless overwriting new data to a single sector.
|
||||||
|
|
||||||
|
#### 27E257
|
||||||
|
|
||||||
|
The Winbond WE27E257 and WE27C257 appear to be identical 32Kx8 EEPROMs. These have a
|
||||||
|
_VPP_ pin that needs a constant 12V during programming. Unlike the newer 28C EEPROMs,
|
||||||
|
these chips do not automatically erase before writing to a location. Instead, the
|
||||||
|
entire chip is erased by applying 14V to _VPP_ and _A9_ and then pulsing _CE_.
|
||||||
|
|
||||||
|
Because the chips use a constant high voltage for programming instead of a pulse, an
|
||||||
|
external power supply and two diodes can be used to supply either 5V or 12V to the
|
||||||
|
pins for programming and erasing.
|
||||||
|
|
||||||
|
Note that the WE27x257 chip are almost a drop-in replacement for the 28C256. The _WE_,
|
||||||
|
_VPP_, and _A14_ pins are the only differences. For reading, the _VPP_ pin should be
|
||||||
|
connected to 5V.
|
||||||
|
|
||||||
|
#### 29C010
|
||||||
|
|
||||||
|
The 29C0x0 chips are 5V sectored flash chips. They automatically erase a sector at the
|
||||||
|
start of a new write, so they can be used with the default 28C code.
|
||||||
|
|
||||||
|
Note that some versions of the 29C040 use a 256 byte sector size. This will not work
|
||||||
|
with the TommyPROM code because the XModem transfer buffer is only 128 bytes. Code
|
||||||
|
changes would be needed to buffer up two packets of data into a single write operation
|
||||||
|
for chips with the 256 byte buffer.
|
||||||
|
Loading…
Reference in New Issue
Block a user