From: Tom Hunter <ccth6600 at gmail.com>
Subject: Programming Bipolar PROMs
The part is an Intersil IM5600CP, but these were also
made by others, for
example Signetics and Philips made the 82S23 and TI and NTE made the
faster
SN74S188N. Some vendors still sell these parts and there are even a few on
Ebay.
How do I program these PROMs? I found one somewhat obscure description of
the algorithm in the NTE datasheet, but I suspect that each manufacturer
had (somewhat) different algorithms.
I built a project using Russian clones of the 74188, and ended up building a
programmer for them. The programming process is slow (over a minute to
program 32 bytes), draws quite a bit of power (the chip is uncomfortably
warm afterwards), and it took a while to work out the programming algorithm.
Also, as Tom Hunter mentioned, the programming process isn't perfect - about
5% don't program correctly; I don't know if this is my algorithm or the fact
that the clones aren't so good. However, once programmed, they seem to work
just fine.
I bought the Russian devices off eBay for cheap - I think they were about
$0.20 apiece, so I got a hundred of them, which I've been slowly nibbling
away at as my little product sells. I still have several dozen left; if
you'd like you could send me the hex file (or listing - it's only 32 bytes,
which I could type in), and I could program a couple for you.
I'm not sure I could recommend building your own programmer. It's obviously
possible, and there are hand-operated versions floating around on the
internet (really hand-operated: set a rotary switch for the bit and five
address switches, turn on the power, and push a button for 1-1/2 seconds;
repeat for every "1" bit in the PROM), but you'd need more than just the
Arduino. You need eight high-side drivers that will handle an amp apiece,
plus another driver to switch the power supply voltage between 5 and 13.5
volts, as well as writing a program to implement the algorithm. (actually,
it's slow enough that you could get by using relays for all the higher
voltage switching.)
I don't believe that any modern programmer handles these - if the Data I/O
does, then that's probably your only option.
~~
Mark Moulding