SPLDs, CPLDs, FPGAs Flashcards
What does SPLD stand for?
Simple programmable logic devices
What is an SPLD?
This is a chip that has an undefined function when manufactured and are used to implament digital circuits
What are some basic parameters of SPLDs?
> Number of gates
Number of IO
Max operating frequency
What are the two types of SPLDs?
> Programmable array logic (PAL)
> General array logic (GAL)
What is programmable array logic?
> This is an array of fuses, that during programming are broken. The unbroken links allow a SOP expression to be formed
The SOP expression has a limited number of allowed variables
They are only programmable once
What is general array logic?
> Fuses are replaced with transistors that are enabled and disabled at startup using an EPROM or S-RAM
They are reprogrammable
What is a macrocell?
> The outputs of multiple PAL or GALs are connected to a macrocell
The multiple PALs or GALs are connected together with multiple input OR gates
The macrocell also provides additional output logic
Macrocells are also programmable
[Picture1]
What does CPLD stand for?
Complex programmable logic devices
What is a CPLD?
> Made from multiple SPLDs connected with a programmable interconnect
This allows them to perform more logic operations that a single SPLD and fit larger digital circuits onto the CPLD
What is the arrangement of parts of a CPLD?
> There are multiple LABs (Logic array blocks) connected together using a a PIA (Programmable interconnect arrays)
Each lab is formed of a macrocell and SPLDs
[Picture2]
What parts of a CPLD can be programmed?
> The LABs
> The Interconnects
How are CPLDs fromgrammed?
> Reprogrammabled
> Using EEPROMS
What are the aspects of a CPLD Macrocell?
> 5x 5-input AND gate SPLD (GAL)
A product term selection matrix
Expander
What is a product term selection matrix?
This allows different AND gates to be disconnected from the OR gate. For example, if only 3 out of 5 AND gates are used, then they can be disconnected
What does having 5 AND gates limit?
It can produce up to 5 product terms for the output. If more are needed then an expander can be used