You are on page 1of 67

1

DISPOSITIVOS LÓGICOS
PROGRAMABLES
Miguel Angel Rodríguez Fuentes
2

Contenido
• Diseño con Circuitos Lógicos
• Qué son los PLDs?
• Diseño tradicional vs Diseño usando PLDs
• Clasificación CI
• Tipos de PLDs
• Leguaje de Descripción de Hardware
• Soft Processor (Programmable Processors)
3

El diseño con circuitos lógicos


4

¿Qué son los PLDs?


Son dispositivos digitales que pueden ser configurados por el
usuario con el fin de implementar una gran variedad de
funciones lógicas en algún sistema.
5

Diseño con Circuitos Lógicos


Tradicionales
Planteamiento del
problema

Tabla de verdad y
función canónica

Mapas de Karnaugh

Armado del circuito


6

Diseño con Circuitos Lógicos


Tradicionales
Planteamiento del
problema

Tabla de verdad y
función canónica

Mapas de Karnaugh

Armado del circuito


7

Diseño con Circuitos Lógicos


Tradicionales
Planteamiento del
problema

Tabla de verdad y
función canónica

Mapas de Karnaugh

Armado del circuito


8

Diseño con Circuitos Lógicos


Tradicionales
Planteamiento del
problema

Tabla de verdad y
función canónica

Mapas de Karnaugh

Armado del circuito


9

Diseño con Dispositivos Lógicos


Programables
Planteamiento del
problema

Descripción del
circuito mediante un
lenguaje

Síntesis y obtención
del archivo de
programación

Armado del circuito


10

Diseño con Dispositivos Lógicos


Programables
Planteamiento del
problema

Descripción del
circuito mediante un
lenguaje

Síntesis y obtención
del archivo de
programación

Armado del circuito


11

Diseño con Dispositivos Lógicos


Programables
Planteamiento del
problema

Descripción del
circuito mediante un
lenguaje

Síntesis y obtención
del archivo de
programación

Armado del circuito


12

Diseño con Dispositivos Lógicos


Programables
Planteamiento del
problema

Descripción del
circuito mediante un
lenguaje

Síntesis y obtención
del archivo de
programación

Programación del
Chip
13

CI estándar
• Fixed Functionality
• 7400-series standard chips
• SSI (Small Scale Integrated circuit) :less than 10 gates
• MSI (Medium Scale Integrated circuits) : about 10 to 100
gates
• LSI (Large Scale Integrate circuits) : about 100 to 10,000
gates
• VLSI (Very Large Scale Integrated circuits) : over 10,000
to 100,000 gates
• ULSI (Ultra Large Scale Integrated Circuits) : over
100,000 gates
14

Circuitos Integrados

ASICs Microprocessors
Application Specific PLDs
Integrated Circuits Microcontrollers
15

Tipos de PLDs
PLD

SPLD HCPLD
Simple PLD High Capacity PLD

CPLD
PLA PAL
Programmable Array Logic Complex PLD

FPGA
Field Programmable Gate Array
16

PLD Logic Capacity


• SPLD: about 200 gates
• CPLD
▫ Altera FLEX (250K logic gates)
▫ Xilinx XC9500
• FPGA
▫ Xilinx Virtex-E ( 3 million logic gates)
▫ Xilinx Spartan (10K logic gates)
▫ Altera
17

PLD Advantages

•Short design
PLD
time
ASIC •Less expensive
at low volume

Volume
18

Dispositivos Lógicos Programables


• PROM
• PLA
• PAL
• CPLD
• FPGA
19

Contenido
M=4
Programmable ROM (PROM)
11 1 0 0 1
N input N
2 xM M output
ROM 10 0 1 1 0
01 0 1 0 1
00 1 0 1 1
Address: N bits; Output word: M bits
Dirección
N
ROM contains 2 words of M bits each N=2

The input bits decide the particular word that


becomes available on output lines
20

Combinational Circuit Implementation


using PROM
I0 I1 I2 F0 F1 F2
0 0 0 1 0 0
0 0 1 0 1 0
0 1 0 0 1 1
0 1 1 1 0 0
1 0 0 0 1 0
1 0 1 0 0 1
1 1 0 1 0 0 F0 F1 F2
1 1 1 0 1 0
21

PROM Types
• Programmable PROM
▫ Break links through current pulses
▫ Write once, Read multiple times
• Erasable PROM (EPROM)
▫ Program with ultraviolet light
▫ Write multiple times, Read multiple times
• Electrically Erasable PROM (EEPROM)/ Flash
Memory
▫ Program with electrical signal
▫ Write multiple times, Read multiple times
22

PROM: Advantages and Disadvantages


• Widely used to implement functions with large
number of inputs and outputs
• Design of control units (Micro-programmed
control units)
• For combinational circuits with lots of don’t care
terms, PROM is a wastage of logic resources
23

Programmable Logic Array

n x k links
k AND m OR gates
gates m outputs
k X m links
n inputs n x k links

Programmable AND array + programmable OR array


n x k x m PLA has 2n x k + k x m links
Sum of products
24

PLA 4 X 6 X 2
25

Design with PLA


26

Programmable Array Logic (PAL)


• Programmable AND array
• Fixed OR array
▫ Each output line permanently connected to a
specific set of product terms
• Number of switching functions that can be
implemented with PAL are more limited than
PROM and PLA
27

PAL Logic Diagram


28

PAL Implications
• Number of product terms per output > number
of product terms in each sum-of-product
expression
• No sharing of product terms between outputs
29

Design with PAL


Arquitectura de una GAL22V10
GAL (Arreglo Lógico Genérico)
Características GAL 22V10
34

SPLD - CPLD
• Simple Programmable logic device
▫ Single AND Level
▫ Flip-Flops and feedbacks
• Complex Programmable logic device
▫ Several PLDs Stacked together

PLD PLD

I/O

I/O
• •
• Block Block •
A B C Select • •
Enable

f1
Flip-flop
Interconnection Matrix
D Q MUX

Clock
PLD PLD
I/O

I/O
• •
AND plane • Block Block •
• •
35

CPLD

Logic Logic
Block Block

Programmable
Interconnect
I/O I/O

Logic Logic
Block Block
36

CPLD Logic Block


• Simple PLD
▫ Inputs
▫ Product-term array
▫ Product term allocation function
▫ Macro-cells (registers)
• Logic blocks executes sum-of-product expressions and
stores the results in micro-cell registers
• Programmable interconnects route signals to and from
logic blocks
37

Major CPLD Resources


• Number of macro-cells per logic block
• Number of inputs from programmable
interconnect to logic block
• Number of product terms in logic block
38

XILINX XC9572
39

XILINX XC9572
40

FPGA - Field Programmable Gate Array


Programmable logic blocks (Logic Element “LE”)
Implement combinatorial and sequential logic. Based on LUT and DFF.
Programmable I/O blocks
Configurable I/Os for external connections supports various voltages and tri-states.
Programmable interconnect
Wires to connect inputs , outputs and logic blocks.
 clocks Logic Interconnection switches
block
 short distance local connections
I/O
 long distance connections across chip

y
a

b N Input

I/O

I/O
LUT
SET
c MUX D Q q

d
CLR Q
clk

rst

I/O
41

FPGA

programable
programable functions
interconnections

configuration

logic cell I/O cells


42

Structure of FPGA (Xilinx)

Logic Block

I/O Block

Interconnect
43

Configurable Logic Block CLB


44

Logic Function
• Implemented as look-up table (LUT)
K
• K-input LUT corresponds to 2 x 1 bit memory
• K-input LUT can implement any k-input 1-
output logic function
45

Configuring FPGA
• Configure CLB and IOB
• Configure interconnect
• Interconnect technology
▫ SRAM
▫ Anti-fuse (program once)
▫ EPROM / EEPROM
Programming Technology
Name Re-programmable Volatile

EPROM yes (out of circuit) no

EEPROM yes (in circuit) no

SRAM yes (in circuit) yes

Antifuse no no

46
47

FPGA Applications
• Glue Logic (replace SSI and MSI parts)
• Digital designs where ASIC is not
commercial
• Rapid turnaround
• Upgradeable systems
• Prototype design
• Emulation
• Custom computing
• Reconfigurable systems
• Education
48

FPGA Applications
• Digital signal processing
• Aerospace and defense system
• ASIC prototyping
• Software defined radio
• Medical imaging
• Speech recognition
• Computer vision
• Cryptography
• Bioinformatics
• Computer hardware emulation
• Radio astronomy
• Metal detection
Comparison
Flexibility

Processors
Instruction Flexibility
90% Area Overhead
(Cache , Predictions)

FPGA
Device-wide flexibility
99% Area Overhead
(Configuration)

ASIC
No Flexibility
20% Area Overhead
(Testing)

49
Speed , Power Efficiency
50

CPLD vs FPGA
CPLD FPGA
- No volátil - Configuración SRAM
- Amplio Fan in - Diseño similar a un ASIC
- Máquinas de estado y contadores - Excelente para arquitectura
muy rápidos de computadoras, DSP, etc.
- Lógica Combinacional - Mayor flexibilidad en el
diseño
- Proyectos pequeños de estudiantes, - Perfecto para diseños de
cursos de niveles bajos cualquier nivel.
51

Proceso diseño FPGAs

Esquemático HDL

Compilación

Ecu. Lógicas

Vectores de Prueba
Minimización

Ecuaciones Lógicas Simulación


reducidas(Netlist)
52
53
XILINX SPARTAN 3E

54
55

Espartan 3E

-1164 CLBs en
arreglo de 46
renglones x 34
columnas.
56

Simplified
IOB Diagram
57

Spartan 3E
CP132
Digilent Nexys 2

www.digilentinc.com
58
Digilent Nexys 2

59
60

VHDL (Very High Speed Integrated


Circuit Hardware Description Language)
• Two purposes :
A documentation language for describing
the structure of complex digital circuits
Modeling the behavior of the digital circuit
• CAD tools are used to synthesize the VHDL code
into a hardware implementation
• VHDL is an extremely complex sophisticated
language
61

Ventajas del VHDL


VHDL offers a number of advantages :
• VHDL provides design portability
• A circuit specified in VHDL can be implemented in
different types of chips
• Each CAD tool provided by different companies
without having to change the VHDL specification
62

Soft
Processors
63

Soft Processors
64

Soft Processors
65

Soft Processors
66

FIN
67

Preguntas

You might also like