Cset 4650 field programmable logic devices l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 42

CSET 4650 Field Programmable Logic Devices PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

Introduction to PLDs. CSET 4650 Field Programmable Logic Devices. Dan Solarek. Objectives. Review of Digital Systems History of PLDs Types of PLDs Terminology. any number of inputs. any number of outputs. logic gates AND, OR, NOT (typically 7400 series SSI). Some Basics.

Download Presentation

CSET 4650 Field Programmable Logic Devices

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Cset 4650 field programmable logic devices l.jpg

Introduction to PLDs

CSET 4650 Field Programmable Logic Devices

Dan Solarek

Objectives l.jpg


  • Review of Digital Systems

  • History of PLDs

  • Types of PLDs

  • Terminology

Some basics l.jpg

any number of inputs

any number of outputs

logic gates


(typically 7400 series SSI)

Some Basics

  • a combinational logic circuit is one where the next output depends only on the current input

Some basics4 l.jpg

usually flip-flops

SR, JK, D, T

Some Basics

  • a sequential logic circuit is one where the next output depends not only on the current input but also on the sequence of past inputs

Some basics5 l.jpg

any number of inputs

any number of outputs

logic gates


(typically 7400 series SSI)

Some Basics

  • the design of a sequential logic circuit includes the design of a combinational logic circuit

Purpose of this course l.jpg

Purpose of this Course

  • This course is about logic circuit implementation

Karnaugh Map

X1 X2 Q1 Q2 Y

0 0 0 0 0

0 0 0 1 0

0 0 1 0 0

0 0 1 1 0

0 1 0 0 1

0 1 0 1 1

0 1 1 0 x

0 1 1 1 1

1 0 0 0 0

1 0 0 1 1

1 0 1 0 x

1 0 1 1 1

1 1 0 0 0

1 1 0 1 1

1 1 1 0 1

1 1 1 1 1





truth table

Logic circuit implementation l.jpg

Logic Circuit Implementation

  • there are several options


SSI Gates


Logic circuit implementation8 l.jpg

Logic Circuit Implementation

  • there are several options


Programmable Devices

Electronic components l.jpg






Electronic Components

Common Resources

Configurable Logic Blocks (CLB)

  • Memory Look-Up Table (LUT)

  • AND-OR planes

  • Simple gates

    Input / Output Blocks (IOB)

  • Bidirectional, latches, inverters, pullup/pulldowns

    Interconnect or Routing

  • Local, internal feedback, and global


Logic Devices






Full Custom






SPLD = Simple Prog. Logic Device

PAL = Prog. Array of Logic

CPLD = Complex PLD

FPGA = Field Prog. Gate Array

ASIC = Application Specific IC

How do you make a programmable circuit l.jpg

How Do You Make a “Programmable” Circuit?

  • One time programmable

    • Fuses (destroy internal links with current)

    • Anti-fuses (grow internal links)

    • PROM

  • Reprogrammable

    • EPROM

    • EEPROM

    • Flash

    • SRAM - volatile



Programmable rom prom l.jpg

Programmable ROM (PROM)

  • First ones had fusible links

  • High voltage would blow out links

  • Fast to program

  • Single use

Uv eprom l.jpg


  • Erasable PROM

  • Common technologies used UV light to erase complete device

    • Took about 10 minutes

  • Holds state as charge in very well insulated areas of the chip

  • Nonvolatile for several (10?) years

Eeprom l.jpg


  • Electrically Erasable PROM

  • Similar technology to UV EPROM

  • Erased in blocks by higher voltage

  • Programming slower than reading

  • Some called flash memory

    • Digital cameras, MP3 players, BIOS

    • Limited life

    • Some support individual word write, some block

    • One on Xess board has 5 blocks

    • Has a boot block that is carefully protected

Details of rom l.jpg

a combinational logic circuit

Details of ROM

  • Memory that is permanent

  • k address lines

  • 2k items

  • n bits

Simple plds l.jpg

Simple PLDs

Programmable logic device l.jpg

Programmable Logic Device

  • A programmable logic device or PLD is an electronic component used to build digital circuits.

  • Unlike a logic gate, which has a fixed function, a PLD has an undefined function at the time of manufacture.

  • Before the PLD can perform in a circuit it must be programmed.

Programmable array logic pal l.jpg

Programmable Array Logic (PAL)

  • The first programmable logic devices were produced by the Advanced Micro Devices (AMD) corporation.

  • The devices were called PALs, for programmable array logic.

  • The PLD business split from AMD under the name Vantis, and was acquired by Lattice Semiconductor in 1999.

Early pals l.jpg

Early PALs

  • The programmable array contains logic gates, themselves fixed in function, with programmable interconnections between them.

  • The array has a number of inputs and outputs, and can create any Boolean function of a selection of the inputs at any of its outputs.

  • A single PAL can replace a circuit containing a large number, perhaps a few hundred, of fixed logic gates.

Early pals19 l.jpg

Early PALs

  • In a PAL the logic gates are arranged as a sum-of-products array.

  • In Boolean terms, this means a number of AND gates whose outputs feed into a large OR gate that drives one output.

  • By selecting which inputs drive each AND gate, and which AND gates drive the OR gate, any Boolean function can be created.

Early pals20 l.jpg

Early PALs

  • A PAL is programmed by fitting it into a machine called a PAL programmer.

  • PAL programmers are usually general-purpose machines that can program all types of PLDs from all manufacturers.

  • A PAL may be programmed only once.

Early pals21 l.jpg

Early PALs

  • The PAL programmer must be supplied with a description of the PAL's desired configuration.

  • This is usually in the form of a computer text file with a standard format defined by the Joint Electron Device Engineering Council (JEDEC).

  • JEDEC files can be hand-typed by the design engineer or, more commonly, produced by a computer program similar to the language compilers used by software engineers.

Generic array logic gal l.jpg

Generic Array Logic (GAL)

  • An innovation of the PAL was the generic array logic device, or GAL, invented by Lattice Semiconductor Inc.

  • This device has the same logical properties as the PAL but can be erased and reprogrammed.

  • The GAL is very useful in the prototyping stage of a design, when any bugs in the logic can be corrected by reprogramming.

  • GALs are programmed and reprogrammed using a PAL programmer.

Programmable electrically erasable logic peel l.jpg

Programmable Electrically Erasable Logic (PEEL)

  • A PEEL is a device similar to a GAL and was introduced by the Integrated Circuit Technology (ICT) corporation.

  • As the name implies, it differs from a GAL or PAL in that it is electrically erasable (reprogrammable)

Complex programmable logic devices cplds l.jpg

Complex Programmable Logic Devices (CPLDs)

  • Xilinx devices that are cheaper and have fewer gates than FPGAs

  • Meant for interfacing rather than heavy computation

  • Built-in flash memory

    • Instead of FPGA, which needs external

  • Xess bd. has XC9572XL part

    • Approx $2-$7 in one’s qty. (vs. ~$15-20 for the Spartan2 on the board). Larger qty much lower.

    • 1600 gates, 72 registers

Complex plds l.jpg

Complex PLDs

  • PALs and GALs are available only in small sizes, equivalent to a few hundred logic gates.

  • For bigger logic circuits, complex PLDs or CPLDs can be used.

  • These contain the equivalent of several PALs linked by programmable interconnections, all in one integrated circuit.

  • CPLDs can replace thousands, or even hundreds of thousands, of logic gates.

Complex plds26 l.jpg

Complex PLDs

  • Some CPLDs are programmed using a PAL programmer, but this method becomes inconvenient for devices with hundreds of pins.

  • A second method of programming is to solder the device to its printed circuit board, then feed it with a serial data stream from a personal computer.

  • The CPLD contains a circuit that decodes the data stream and configures the CPLD to perform its specified logic function.

Complex plds27 l.jpg

Complex PLDs

  • Each manufacturer has a proprietary name for its CPLD programming system.

  • For example, Lattice calls it "in-system programming".

  • However, these proprietary systems are beginning to give way to a standard from the Joint Test Action Group (JTAG).

Field programmable logic devices fpgas l.jpg

Field Programmable Logic Devices (FPGAs)

  • While PALs were busy developing into GALs and CPLDs, a separate stream of development was happening.

  • This type of device is based on gate-array technology and is called the field-programmable gate array (FPGA).

Field programmable logic devices fpgas29 l.jpg

Field Programmable Logic Devices (FPGAs)

  • Gate arrays are non-programmable devices that can be manufactured more cheaply than other types of IC, because they contain a standard grid of logic gates whose interconnections are specified by the customer.

  • When a customer orders a new type of chip, the manufacturer does not have to design it from scratch, but can just take a standard gate array and modify it to the customer's requirement.

Field programmable logic devices fpgas30 l.jpg

Field Programmable Logic Devices (FPGAs)

  • FPGAs use a similar grid of logic gates, but the programming is done by the customer, not by the manufacturer.

  • The term "field-programmable" may be obscure to some, but the "field" is just an engineering term for the world outside the factory where customers live.

Field programmable logic devices fpgas31 l.jpg

Field Programmable Logic Devices (FPGAs)

  • FPGAs are usually programmed after being soldered down to the circuit board, in the same way as larger CPLDs.

  • In most larger FPGAs the configuration is volatile, and must be re-loaded into the device whenever power is applied or different functionality is required.

Field programmable logic devices fpgas32 l.jpg

Field Programmable Logic Devices (FPGAs)

  • FPGAs and CPLDs are often equally good choices for a particular task.

  • Sometimes the decision is more an economic one than a technical one, or may depend on the engineer's personal preference and history.

Slide33 l.jpg

PLD Device Density and VLSI Technology

*note: Xilinx Virtex-II Pro XC2VP100 (9/16/2003)

How plds remember their configuration l.jpg

How PLDs Remember Their Configuration

  • A PLD is a combination of a logic device and a memory device.

  • The memory is used to store the pattern that was given to the chip during programming.

  • Most of the methods for storing data in an integrated circuit have been adapted for use in PLDs.

How plds remember their configuration35 l.jpg

How PLDs Remember Their Configuration

  • The methods for storing data in an integrated circuit include:

    • silicon antifuses

    • static RAM (SRAM)

    • flash memory

    • EPROM cells

How plds remember their configuration antifuses l.jpg

How PLDs Remember Their Configuration - Antifuses

  • Silicon antifuses are the storage elements used in the PAL, the first type of PLD.

  • These are connections that are made by applying a voltage across a modified area of silicon inside the chip.

  • They are called antifuses because they work in the opposite way to normal fuses, which begin life as connections until they are broken by an electric current.

How plds remember their configuration sram l.jpg

How PLDs Remember Their Configuration - SRAM

  • SRAM, or static RAM, is a volatile type of memory, meaning that its contents are lost each time the power is switched off.

  • SRAM-based PLDs therefore have to be programmed every time the circuit is switched on.

  • This is usually done automatically by another part of the circuit.

How plds remember their configuration flash l.jpg

How PLDs Remember Their Configuration - Flash

  • Flash memory is non-volatile, retaining its contents even when the power is switched off.

  • It can be erased and reprogrammed as required.

  • This fact makes flash memory useful for PLD memory.

How plds remember their configuration eprom l.jpg

How PLDs Remember Their Configuration - EPROM

  • An EPROM cell is a MOS (metal-oxide-semiconductor) transistor that can be switched on by trapping an electric charge permanently on its gate electrode.

  • This is done by a PAL programmer.

  • The charge remains for many years and can only be removed by exposing the chip to strong ultraviolet light in a device called an EPROM eraser.

Pld programming languages l.jpg

PLD Programming Languages

  • PLD programming languages

    • PALASM

    • ABEL

    • CUPL

Hardware description languages l.jpg

Hardware Description Languages

  • The languages used as source code for logic compilers are called hardware description languages, or HDLs.

  • Examples of HDLS include:

    • VHDL

    • Verilog HDL

    • AHDL

Programmable logic solutions l.jpg

Programmable Logic Solutions

  • No high development cost barriers

  • Recovered time for authoring and innovating

    • SW improvements reduce design iterations

  • No lengthy prototyping cycle

  • Ability to remotely upgrade any networked system

  • Ultimate flexibility to manage rapid change

  • Login