1

I'm currently trying to make an EPROM programmer on my breadboard capable of programming a single address at a time. Nothing fancy for writing large programs, just trying to learn some basics.

Right now, I am stuck without a button to trigger a RC circuit to pulse in the required timing for a single write cycle. Is there a more complex circuit than the one mentioned above or just a different approach using flip-flops to generate a single pulse under 100us?

I'm using the AMD AM27C512 EPROM.

TonyM
  • 21,742
  • 4
  • 39
  • 62

1 Answers1

1

The information I have found indicates that the programming pulse should be about 100 us, and there are several algorithms that try several times until the byte is verified, followed by several more as a safety margin. Here is a discussion of two algorithms:

https://ww1.microchip.com/downloads/en/Appnotes/DOC0578.PDF

For manual programming, you will need several multi-pole slide switches to enter the address and data. Here is a schematic of such a device:

https://www.electronicsforu.com/electronics-projects/manual-eprom-programmer

EPROM programmer

It seems that using a microcontroller like an Arduino will greatly simplify the design and allow for a lot more flexibility for entering data to be programmed, and reading it back.

https://github.com/walhi/arduino_eprom27_programmer

EPROM programmer with Arduino

As for answering the OP's question, a pulse generator for less than 900 ns can be made with a 555 timer, or 74LS123:

https://www.ti.com/lit/an/sdla006a/sdla006a.pdf

PStechPaul
  • 7,195
  • 1
  • 7
  • 23
  • Thank you for providing that documentation. My design is more similar to the first one, using dipswitches for Address and data input, and using LED's to read data out. Unfortunately, I don't have access to a slide switch or anything similar for that matter at the moment. I'm also staying away from rapid programming for now and just programming a single address at a time. My supply source is an Analog Discovery 2 device, and it is capable of emitting most input wave functions I would need but is uncapable, from what I know, to emit a single pulse from high to low and back up to high. – Andrew Albritton Jun 10 '23 at 01:17
  • You should include more information in your question, particularly details of your project schematic and a link to your Analog Discovery instrument. It appears that the WaveGen can produce waveforms up to 10 Mhz, so its pulse generator should be able to supply a pulse of several hundred ns. But it is unclear why you need that for programming. https://digilent.com/reference/test-and-measurement/guides/waveforms-waveform-generator – PStechPaul Jun 10 '23 at 01:56
  • @AndrewAlbritton I also have the Analog Discovery 2 (and the Analog Discovery Studio and various other educational products from Digilent. Wonderful company, I think.) They have a newer Analog Discovery 3, just recently announced! This tells me you are pretty serious and that makes me more interested in reading your question. I recall that similar devices used to require a high Vpp voltage (like 13 V?) for the process. Are you also doing that? Or are you using some other method? (I need to refresh my memory, I think.) Regardless, best wishes. When I get a moment, I'll read more thoroughly. – periblepsis Jun 10 '23 at 12:15
  • 2
    @PStechPaul you are abosultely right I appoligize for the lack of information posted in the initial question, This is my first post so I'm pretty new at this stuff... Besides that you are correct about the wave gen being able to produce up to 10Mhz, but I was looking for single pulse output rather than a frequency. But after periblepsis 's comment I can see that I miss read the data sheet. Rather than the Vpp needing a pulse to write, I need to drive Vpp to around 12.75 V and then the address lines have a pulse sent through them to write. Thank you both for the help! – Andrew Albritton Jun 10 '23 at 20:01
  • @AndrewAlbritton I used to use a little bit of software, a BJT, inductor, diode, and capacitor, with feedback, to create the 13 V source for Vpp. Separately, another method to bring it back down. All working from 5 V supply only. The datasheet specifies (or did) the worst case duration for programming a single word so you can work out the maximum energy required. This translates back to the number of pulses I'd need to use to return Vpp to the nominal 13 V range when doing back to back writes, though I'd check the feedback anyway. – periblepsis Jun 11 '23 at 02:21
  • Thanks for everyone's help. Got a fully functional chip now! Got it spelling out hello world in ASCII hex! – Andrew Albritton Jun 20 '23 at 01:46