mirror of
https://github.com/TomNisbet/TommyPROM.git
synced 2024-12-26 19:29:21 +00:00
Split Intel 8755 documentation out
This commit is contained in:
parent
3e808ce860
commit
03fb322c0d
19
README.md
19
README.md
@ -2,23 +2,18 @@
|
||||
|
||||
This is a simple EEPROM programmer and reader that can be assembled using an Arduino and a
|
||||
few additional parts. The original code was specific to the 28C256 32Kx8 EEPROM, but it
|
||||
has been extended to also support Intel 8755A EPROMS and some 29C010 Flash.
|
||||
has been extended to also support SST39SF040 Flash, many other EEPROMs and flash, and even
|
||||
Intel 8755A EPROMS.
|
||||
|
||||
See the [documentation pages](https://tomnisbet.github.io/TommyPROM/) for the full
|
||||
documentation with software, schematics, and troubleshooting tips.
|
||||
|
||||
Features include:
|
||||
* Simple hardware design that can be assembled on a breadboard.
|
||||
* ROM images transfers using XMODEM - no special host client needed.
|
||||
* Support for fast block EEPROM writes - a 32K EEPROM will program in just a few seconds.
|
||||
* Optimized code that supports the timing requirements needed to unlock the 28C series
|
||||
Software Protection Algorithm.
|
||||
[Software Protection Algorithm](docs/28C256-notes).
|
||||
* Modular software design to easily support other EEPROM and EPROM families.
|
||||
|
||||
![TommyPROM Nano Hardware](docs/images/TommyPROM-nano.jpg)
|
||||
|
||||
|
||||
See the [documentation pages](https://tomnisbet.github.io/TommyPROM/) for the full documentation
|
||||
with hardware, software, and troubleshooting tips.
|
||||
|
||||
## Further Work
|
||||
|
||||
* [ ] Add a new PromDevice class for 27 series EPROMS.
|
||||
* [x] Additional error checking in the CmdLine code.
|
||||
![TommyPROM Nano Hardware](docs/_docs/images/TommyPROM-nano.jpg)
|
||||
|
@ -20,6 +20,8 @@ docs:
|
||||
url: /docs/pcb
|
||||
- title: "Adding Chip Families"
|
||||
url: /docs/extending
|
||||
- title: "8755A Hardware"
|
||||
url: /docs/8755A-hardware
|
||||
- title: "References"
|
||||
children:
|
||||
- title: "28C256 and SDP"
|
||||
|
@ -63,10 +63,10 @@ files as well. The default code programs 28C series chips using Arduino Nano har
|
||||
use this version, just compile and upload it to the Arduino.
|
||||
|
||||
**Note well** that this code has been optimized for the Aduino UNO and Nano hardware so
|
||||
*that it can run quickly enough to meet 28C series chip timing requirements for SDP
|
||||
*unlocking. To use different Arduino hardware, like the Micro, the board-specific code in
|
||||
*PromDevice.cpp and PromAddressDriver.cpp must be changed to match the port mappings
|
||||
*between the ATmega chip and the Arduino I/O pins.
|
||||
that it can run quickly enough to meet 28C series chip timing requirements for SDP
|
||||
unlocking. To use different Arduino hardware, like the Micro, the board-specific code in
|
||||
PromDevice.cpp and PromAddressDriver.cpp must be changed to match the port mappings
|
||||
between the ATmega chip and the Arduino I/O pins.
|
||||
|
||||
Because the Arduino has limited code and RAM space available, only one PROM driver is
|
||||
compiled in at a time. To change drivers, uncomment the desired PROM_IS_xx line in
|
||||
|
@ -1,13 +1,11 @@
|
||||
---
|
||||
title: "Hardware Design"
|
||||
permalink: /docs/hardware
|
||||
exerpt: "TommyPROM Arduino EEPROM programmer software design"
|
||||
exerpt: "TommyPROM Arduino EEPROM programmer hardware design"
|
||||
---
|
||||
|
||||
## Basic Hardware Version
|
||||
|
||||
The hardware uses an Arduino to write data and to toggle control lines with the
|
||||
appropriate timing to access the PROM. A pair of 74LS164 serial to parallel shift
|
||||
appropriate timing to access the PROM. A pair of 74LS164 serial-to-parallel shift
|
||||
registers latch the address lines. Use of the shift registers allows the Arduino to
|
||||
control up to 16 address lines using only 3 output ports. This design will read and
|
||||
program the 28C series chips and can read most other parallel ROM chip families.
|
||||
@ -100,20 +98,3 @@ down to D2..D9. Most of the ROM and shift register control lines move over to t
|
||||
pins. The upper shift register is controlled directly from the Arduino instead of being
|
||||
connected to the overflow of the lower shift register. All of the connections are in the
|
||||
chart in the section above.
|
||||
|
||||
## Intel 8755A Hardware Version
|
||||
|
||||
The Intel 8755A uses a multiplexed data and address bus, plus 3 additional address lines.
|
||||
Most Arduino hardware has enough pins to support this directly, so no additional hardware
|
||||
is needed for addressing. An Arduino pin is also used to drive the ALE latch pin.
|
||||
|
||||
The 8755A requires the Vdd pin to be be switched between 5V and 25V during the programming
|
||||
of each byte. A simple transistor circuit is used for this. No voltage regulator circuit
|
||||
is present here for the programming voltage. Because this is designed as a quickly
|
||||
assembled hardware design, a triple output bench supply was used to provide the 25.5V,
|
||||
5.5V and 5V outputs.
|
||||
|
||||
[![TommyPROM Nano Schematic](images/TommyPROM-8755A-sch.png)](images/TommyPROM-8755A-sch.png)
|
||||
|
||||
Eagle-format schematics can be downloaded from the
|
||||
[hardware project page](https://github.com/TomNisbet/TommyPROM/tree/master/hardware).
|
||||
|
26
docs/_docs/design-700-8755A-hardware.md
Normal file
26
docs/_docs/design-700-8755A-hardware.md
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
title: "8755A Hardware Design"
|
||||
permalink: /docs/8755A-hardware
|
||||
exerpt: "TommyPROM Arduino programmer for the Intel 8755A"
|
||||
---
|
||||
|
||||
A special version of the TommyPROM hardware was developed to support the Intel 8755A
|
||||
EPROM with IO chip. This is a 2Kx8 UV EPROM with additional I/O ports.
|
||||
|
||||
The Intel 8355 is a one-time programmable version of the 8755A. This design can be used
|
||||
to read the 8355.
|
||||
|
||||
The Intel 8755A uses a multiplexed data and address bus, plus 3 additional address lines.
|
||||
Most Arduino hardware has enough pins to support this directly, so no shift register
|
||||
hardware is needed for addressing. An Arduino pin is also used to drive the ALE latch pin.
|
||||
|
||||
The 8755A requires the Vdd pin to be be switched between 5V and 25V during the programming
|
||||
of each byte. A simple transistor circuit is used for this. No voltage regulator circuit
|
||||
is present here for the programming voltage. Because this is designed as a quickly
|
||||
assembled hardware design, a triple output bench supply was used to provide the 25.5V,
|
||||
5.5V and 5V outputs.
|
||||
|
||||
[![TommyPROM Nano Schematic](images/TommyPROM-8755A-sch.png)](images/TommyPROM-8755A-sch.png)
|
||||
|
||||
Eagle-format schematics can be downloaded from the
|
||||
[hardware project page](https://github.com/TomNisbet/TommyPROM/tree/master/hardware).
|
Loading…
Reference in New Issue
Block a user