Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

PROGRAMMING PAL'S & GAL'S

184 views
Skip to first unread message

Alex Clarke

unread,
Sep 9, 1995, 3:00:00 AM9/9/95
to
I'm looking for some help, I need the programming alg's for the PAL and
GAL devices. I have designed and built my own Eprom programmer capable
of programming Eprom Flash prom and EEprom, I would like to write a
driver for PAL & GAL devices.

Problem is, no manufacturer will give me the data !
They all suggest buying a commercial programmer (Dat I/O) etc

Can anyone assist with the info, i'd be prepared to pay for it or buy a
data book ( the programming timing etc is not ib the standard data books
or on the manufacturers data sheets)

Tanks in anticipation

Alex, Cambridge England

Mark Zenier

unread,
Sep 9, 1995, 3:00:00 AM9/9/95
to
in <9509091...@crownhill.co.uk>, Alex Clarke wrote:
: I'm looking for some help, I need the programming alg's for the PAL and

So you want to build a PLD programmer: a FAQ File

[Last Revised: September 1, 1995]

(The following is aimed at the level of the basement hacker,
restricted to lower complexity parts. Which is what I've found
in the surplus market.)

So you want to build a logic device programmer.

Here's a list of articles and databooks that I've scraped together.
Grouped by devices supported and in order of usefulness (IMHO).

Just remember that if you build your own programmer, factor in
some money for test data (that is, destroyed parts). Unless you're
using cheap parts, the $500 to $700 you tried to avoid spending for
an inexpensive programmer could add up sooner than you expected.

First, be aware that the manufacturers don't feel it's in their
interest to give you enough information to build one. There's a
couple of reasons. Some them make money by selling programmers
and software. Some of them don't want to spend a lot of money
trying to figure out why you (and thousands others like you) can't
get parts to program (or worse, stay programmed) using your homemade
programmer.

So, starting around 1985, most manufacturers have removed this
information from their databooks. Expect most CMOS parts to
have proprietary algorithms. Also expect as parts are redesigned
to be faster, the old programming algorithms may be obselete, or
have certain parameters in them shift.

But if you are convincing, some of the manufacturers will give
you the information on a nondisclosure basis. (I've heard
National and TI are pretty nice. And Cypress doesn't even require a
nondisclosure agreement. But Lattice and AMD are downright rude.
Unfortunatly, National is reported to be getting out of this business.)

And there is a new trend in industry that will help the hobbyist.
Manufacturers would like to control their inventory, but the
way older parts are programmed adds extra (possibly) expensive
steps to the process of making a circuit board: procuring and
inventorying the unprogrammed parts, programming them, reinventorying
the programmed parts (and insuring they are programmed and marked
correctly), making sure they are available to be inserted in the
circuit board, and placed the right location ...

And after all of that, the board is tested in Automatic Test Equipment.
This automatic test equipment has the same sort of electronics that
a device programmer has (and have been used for this at many companies).
So why not design parts that can easily (without destroying connected
circuitry) programmed during the final test stage and skip many of
the steps mentioned in the previous paragraph.

In order to do this, the semiconductor companies have to make the
parts easy to program, and release the programming algorithms.
Intel and Lattice with their Flex and ispLSI families are doing this.
Altera has taken over Intel's PLD operation as of October '94.


1. GALs (EEPROM based), from Lattice, National and SGS-Thomson

"Build This PLD Programmer" by Robert G. Brown
Electronics Now (magazine), May 1994
This is a simple programmer limited to the 16v8 and 20v8
parts. It consists of two circuit cards, one a general
purpose parallel port for the IBM PC and a programmer
card with the drivers, ZIF socket, and voltage regulators.
(Very similar to the Elektor project.)

Various kits and software available from
R.G. Brown
30 Wicks Road
E. Northport, NY 17731

"Project: GAL programmer" by Manfred Nosswitz.
Elektor Electronics (magazine), May 1992
This is a simple (5 IC's, 7 transistors, 2 voltage reg.) board
driven by a program (in this case for an IBM PC or clone) using
the computer's printer port. It supports the 16v8, 20v8 original
and A versions.

"Project: GAL Programmer Upgrade" by M. Nosswitz
Elektor Electronics, June 1993
An add-on board with a D/A converter to allow a variable programming
voltage, and a new software driver. Now programs B version GALS,
22V10's, 20RA10's, and the GAL6001 PLA.


The software and PC boards are available through the Elektor
publishers/franchises in various countries.
In the US this is Old Colony Sound Lab (the publishers of
Audio Amateur, and the former publisher of the US edition of
Elektor Electronics).

Old Colony Sound Lab
P.O. Box 243
Peterborough, NH 03458
(603) 924-6371 or -6526 Fax (603) 924-9467

In the UK
Elektor Electronics (Publishing)
P. O. Box 1414
Dorchester DT2 8YH
England

The item number for the software is 1701, the US price as of
June 1993 is $22.30, the UK price 11.15 pounds. The software
upgrade is item 1881, $21.50 or 10.75 pounds. The PC board
is item 920030, US $22.30, UK 11.15 pounds. The PC board for
the upgrade is 930060, $9.50 or 4.75 pounds.

Back issues may still be available from Old Colony, otherwise
the address is

Worldwide Subcription Service, Ltd.
Unit 4, Gibbs Reed Farm
Pashley Road, Ticehurst TN5 7HE
England

"Generic Array Logic (GAL)" D. Gembris
Elektor Electronics, April 1992
A description of the architechture of a GAL, along with the
programming algorithms. Unfortunatly this describes the
nonvolatile memory layout for the original version parts, and
the A version parts would not work if this information were used.
Some other information is left out, including describing the
nonvolatile memory register that contains the part ID code and
manufacturer. (This article is useful if you want to disassemble
the software from the previous reference, but incomplete otherwise.
Not really needed if you want to build and use the project as is.)

2. Cypress and Samsung (UVEPROM based)

Contrary to the trend. Cypress Semiconductor published the
algorithms for the simpler PLD chips they produced. They
have since discontinued this, and you have to request them,
but no special agreement is required. As of the 1990 databook,
they included the algorithms for their 16L8, 16R8, 16R6,
16R4, 20G10 (like a smaller 22v10), and their 22v10 devices.

Judging from the algorithms in their 1988 databook, Samsung
is a second source for Cypress. Their CPL 20 family is the
same as the Cypress devices. In addition, they have 24 pin
devices with the same technology that implement the 20L10,
20L8, 20R8, 20R6, and 20R4 devices.

"EPLD programmer design" John Cromie
Electronics & Wireless World, February 1989
An article describing a single chip microprocessor driven
programmer (using a Hitachi 63701) that programs the devices.
"Contact the author for software.", a common trend in
this publication's "projects".

3. PEEL18CV8 (EEPROM), from International CMOS Technology, Gould AMI

"Create Your Own IC's", Bill Green
Popular Electronics, January 1990
A single board Z80 based programmer for the PEEL18CV8 using
keyboard entry. No algorithm description. PLD and EPROM
for z80 program needed to duplicate. (Listed price was
cheap, about $80 in 1990.) Later versions were produced that
had an interface to download from a computer, rather than
keypad only entry.

4. CPLDs from Intel/Altera and Lattice

Databooks from Lattice, "pLSI and ispLSI Data Book and Handbook"
and Intel, "Programmable Logic" have the interface and download
specifications. (The catch here is that the data to be downloaded
needs to be generated from a manufacturer provided software as
the internal layout and mapping of the device are still proprietary.)
This software is cheap or free, but you need to contact the
company, or find their ftp site on the internet.

As part of the Lattice's GAL line of parts, there is an ispGAL22v10
part in 28 pin PLCC package. In the 1994 Lattice databook, there are
sufficient information to download the part using the onboard serial
interface. And, since it is a standard architecture supported by
most logic compiler/assemblers, there isn't a problem with a proprietary
interal layout.

5. Classic Bipolar Fuse Programmed PALS from MMI, National, TI

"A PAL Programmer" and "Getting Started with PALS" , Robert A. Freedman
Byte, January 1987
A programmer for the original PAL family (too many to list). Implemented
in the form of a IBM PC expansion card. (And sold for a while by
Microway). Design is implemented with PALs.

PAL Programmable Array Logic Handbook
Monolithic Memories, 1981
or
"Designing with Programmable Array Logic", Tech. Staff of Monolithic Memories
McGraw-Hill, 1981
A hardback copy of the MMI databook, including the programming
algorithms.

Interface, Bipolar LSI, Bipolar Memory, Programmable Logic Databook
National Semiconductor, 1983
Databook back when they still published the algorithms.

The TTL Data Book, Volume 4, Bipolar Programmable Logic and Memory
Texas Instruments, 1985
Databook back when they still published the algorithms.

The IC Master, 1986
TI actually published some of the algorithms in the advertising
pages in the Custom/Semicustom section.

6. AMD version of the classic PALS (Fuse Programmed)

Programmable Array Logic Handbook
Advanced Micro Devices, 1986-1987
This has the algorithms for the bipolar amPAL devices that
existed at the time, including the amPAL22V10. These
differ from the 1983 algorithms, which were preliminary.

7. PLS153, PLS159 from Signetics (Fuse Programmed)

AN12, "Low Cost Programmer for PLD 20-Pin Series"
Programmable Logic Data Manual
Signetics, 1986 and 1987
A programmer for the low end 20 pin PLA family. Implemented
in those devices. Device mapping for only two of the members.

8. PLS100, from Signetics (Fuse Programmed)

"Programming p.l.d.s", V. Lakshminarayanan
Electronics & Wireless World, January and February 1988
A circuit description for a programmer for the oldest
Signetics PLA device. No Algorithm. Contact author for
software.

Bipolar and Mos Memory Databook
Signetics, 1980
Algorithm desciption. (IMHO, why bother ;-) )


Finally, here's an edited note from Paul Hoepping about some German
language articles on PLD programmers. (Thanks.)

>Date: Thu, 31 Aug 1995 00:00:00 +0200
>From: Paul_H...@citybox.fido.de (Paul Hoepping)
>Subject: List of GAL-Programmer-Projects
>
>c't is a german computer and electronics magazine. It features mainly
>articles on computer hardware, architecture and digital electronics. I do
>not know if there is a english equivalent.
>
>elrad is a very professional german electronics magazine. It features all
>kinds of digital and analog electronics and their theoretical basics.
>There is no english equivalent.
>
>c't 9/90 and 10/90
>GAL Programmer for the 16v8 and 20v8. A plug-in PC card with many 74HC374
>drivers allows programming and testing. The software to this project has a
>simple GAL assembler. Source text in Turbo Pascal.
>
>c't 12/92
>Update for the above programmer. Several different programming voltages
>and modes. The programmers decides automatically on the voltage and mode
>by reading and interpreting ID bytes. Some Information on GALs 16V8A,
>16V8B, 20V8A, and 20V8B. No source text of the parts that actually do the
>programming.
>
>c't 4/94
>Extension to a EPROM programmer project. This extension allows programming
>of 16V8, 20V8, 22V10, GAL6001 in both normal, A, B-Version. Some
>information on GALs.
>
>elrad 11/92
>very low cost programmer that uses the PC printer port. A 16V8 and a 20V8
>compensate for the differences in the pin out of the 16v8 and the 20v8.
>This programmer can only do the old 16v8 and 20v8.
>
>elrad 5/94
>overview of all CPLDs and FPGAs and their development systems.
>
>elrad 7/94
>How to chose the right PLD for a design.
>
>elrad 10/94
>Starterkit for Lattice ispLSI1016, ispGAL22v10, and ispGDS14
>These new devices from Lattice are In System Programmable. You can get the
>Lattice Development Software free of charge from the elrad BBS. Without
>any instruction book hard to use. This version of the software can only
>programm the smallest devices of the ispLSI family. If you want more you
>need the full version that sells at DM 1500,-. Interesting.
>By the way: the BBS has also a Version of PALASM, free of charge!
>
>elrad 5/95
>Presentation of the Lattice ispLSI CPLD family.
>
>elrad 1/94
>PLD development using easy-ABEL.

Mark Zenier mze...@eskimo.com mze...@netcom.com

0 new messages