Re: Commodore PLA equations (complete)

From: Nate Lawson <nate_at_root.org>
Date: Tue, 5 Jun 2012 12:34:07 -0700
Message-Id: <3B784198-2963-40CE-862D-97ADE763F994@root.org>
On Jun 5, 2012, at 12:19 PM, Thomas Giesel wrote:

>> btw, at the end, isnt it all NANDs ? or NORs ?
> 
> How exactly it's done in the 82S100 is written in its datasheet: It has
> (up to) 48 product terms which are AND combinations of any of the
> inputs and inverted inputs.
> 
> Any of these 48 product terms can be combined to 8 sums, which are OR
> combinations of the product terms.
> 
> The final result can be inverted (which is done with the CASRAM output
> obviously, which re-uses most of the terms of the other outputs).

It's the classic AND-OR-INVERT (AOI) logic, also called "sum of products".

http://en.wikipedia.org/wiki/AND-OR-Invert

> For my PLA clone (which should arrive in the next few days from
> Donald...) I wrote the terms in exactly this form. Which makes no
> difference as the CPLD synthesizer/fitter optimizes it anyway, even if
> it is written in other forms - but it feels more original ;)


Heh. For those that don't know, a CPLD/FPGA implements a lookup table using SRAM or flash. So instead of actual logic, you just select one of the pre-coded outputs, based on the input. This is exactly like a truth table as used by people. So however you specify the equations, it gets synthesized to a lookup table in the end.

The PLA was the early version of this, with a ROM mask selecting individual gates to implement the equations. But determining the mask was more low-level, like assembly coding. You check off a term on graph paper and blow that bit in ROM to manually implement your equations.

-Nate


       Message was sent through the cbm-hackers mailing list
Received on 2012-06-05 20:00:33

Archive generated by hypermail 2.2.0.