Está en la página 1de 20

X

X /A
-
TEMA1: Dispositivos lógicos programables (PLDs) Clasificación X -
X X
Contenidos: X
● ● ¿Qué es un PLD?
❏ Clasificación de PLDs X
❏ Un Dispositivo Lógico Programable (PLD) es un chip LSI (VLSI) que:
❏ Estructura PAL X AE
• contiene una estructura circuital regular y flexible
-
❏ SPLDs • el diseñador puede configurar para que realice laX función
X digital
❏ CPLDs requerida
- X
❏ FPGAs • se configura programando estado interruptores -
❏ Comparativa ● Clasificación: -
X A
PLD

PAL LUT, MUX

SPLD CPLD FPGA

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 2
1

Estructura PAL Esquema simplificado de PAL


● La estructura típica consiste en “suma de productos”
A B
❏ Matriz AND programable + Matriz OR fija
+V CC
❏ Se puede implementar cualquier función de n entradas de hasta p términos
B
producto (p < 2n)
B
● Se programan las interconexiones
F4
❏ Número de interruptores=(2n p m) O1 Om F3
PT1
F2
Matriz AND programable
F1
1 Y
F8
2 F7
Fijo PT2
F6
Progr.
p F5

Matriz OR
fija +VCC
Universidad de Zaragoza, IEC.
I1 I2 In Dispositivos digitales. PLDs - 3 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 4
Tecnología de programación SPLD: PAL
(interruptores)
Entradas, realimentaciones y I/O
Salida
● Programable (bipolar) combinacional
❏ Fusible, se funde por corriente
❏ Una vez programados no se puede volver a reprogramar (OTP) Térm. producto

● Reprogramable (MOS)
❏ Programable eléctricamen te +VCC I/O
❏ Fusible = transistor MOS de puerta flotante
• Implementa puerta AND cableada Entrada
• Consumo estático por pull-up
❏ EPLD
• Borrado por luz UV. Exposición 20min.
• Encapsulado con ventana de cuarzo,

en caso contrario OTP I1 I2 D Q


❏ EEPLD Entrada
Q Salida
• Borrado eléctrico registrada
Reloj
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 6
5

SPLD: GAL22V10 Diagrama de bloques de la 22V10


● Es una GAL (Generic Array Logic, Lattice): CLK / I0 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11
❏ 12 de entradas (I) y 10 bidireccionales (I/O).

● Cada pin I/O posee un OLM (Output Logic Macrocell )


❏ Cada macrocelda posee un biestable Matriz AND programable
❏ Cada macrocelda se puede configurar como combinacional o registrada ? ?
AR SP
❏ La polaridad de la salida es programable
8 10 12 14 16 16 14 12 10 8
● Número de términos producto (TP) variable de 8 a 16
❏ No se pueden compartir TP entre macroceldas
O O O O O O O O O O
❏ Los TP no utilizados en una macrocelda no se pueden encaminar a L
M
L
M
L
M
L
M
L
M
L
M
L
M
L
M
L
M
L
M
otra
● Un biestable por macrocelda
❏ Todos los biestables con el mismo CLK y el mismo flanco activo
❏ deReset
Universidad asíncrono
Zaragoza, IEC. (AR) y preset síncrono (SP) globales Dispositivos digitales. PLDs - 7 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 8
I/O0 I/O1 I/O2 I/O3 I/O4 I/O5 I/O6 I/O7 I/O8 I/O 9

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 7 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 8
Esquema OLM CPLDs
● CPLDs vs. SPLDs

OLM
● Arquitectura
10 ● Familia XC9500 de Xilinx
AR
11
I/On
● Selección
D Q 00
CLK Q 01

SP S0
0 S1
Programab les
1 a0o1

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 10
9

CPLDs vs. SPLDs CPLD: Arquitectura


● Un aumento en N veces de las entradas y salidas en SPLD: ● CPLD = Complex Programmable Logic Device
❏ Aumento N2 de las interconexiones (tp )
● ELEMENTOS CONSTITUYENTES:
❏ Poco eficiente en area del chip
● LB: Bloques de Lógica
● 16V8 ● 128V64 = 8 16V8 ❏ Similar a una SPLD
❏ AND de 32 entradas ❏ AND de 256 entradas (fanin )
❏ 32 8 p intercone xiones ❏ 256 64 p interconexiones
● PIM: Matriz de Interconexiones Programables
❏ Unen las señales entre los diferentes LBs
● Uso más eficiente: ❏ Recorren el chip => RETARDO CONSTANTE
SPLD SPLD SPLD ● IOB: Bloque de Entradas/Salidas
❏ Interfaz entre el dispositivo y el mundo exterior
Interconexiones Programables

SPLD SPLD SPLD

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 11 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 12
IOB
Macrocelda_1

CPLD: Diagrama de bloques LB

PIM
SPLD IOB
Entradas
LB Globales
LB
I/O
Macrocelda_1 I/O
LB
Matriz Distribución Macrocelda_2
PIM AND T.P.
Progr.

Macrocelda_N I/O
I/O

Entradas globales Buried Macrocell (MC)

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 14
13

Arquitectura: LB Macrocelda
● Matriz de puertas AND: ● Programable combinacional o registrada
❏ Genera términos producto (TP)
❏ Es programable ● Contienen 1FF por MC
❏ Se pueden configurar como: D, T, latch
● Matriz de Distribución de Términos Producto (PTDM) ❏ Distintos tipos de set y reset
❏ Distribuye los TP entre las MC ❏ Flanco de CLK (en algunos casos) programable
• Compartir TP entre MC (product-term sharing)
● Polaridad de salida programable
• Encaminar TP no utilizados en una MC a otra (PT
❏ Puerta XOR
steering)
● MC
● Buried MC. Su salida sólo puede ser utilizada internamente
❏ Implementan una función digital como suma de TP
❏ Su salida va hacia la PIM y hacia los I/O (excepto MC buried) ● Realim. de la salida de MC y de pin de salida independientes.
• Realimentación local. La salida de una MC puede ser utilizada en su ❏ Si la salida de MC no se conecta al pin de salida asociado, éste puede ser
LB utilizado como entrada
sin pasar por la PIM.
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 16
15
Entradas LB
Entradas externas (X)
PIM IOB
● Basado en matriz de interruptores ● Basado en Multiplexores ● Pines I.
❏ Interruptor Puerta de paso ❏ Multiplexor por cada entrada de LB
❏ Versátil pero lento ❏ Versatilidad p ❏ Entradas globales. Suelen ser:
❏ Cualquier X se puede conectar a ❏ Rapidez p • Reloj global, Set/Reset global, Control triestado global
cualquier LB (Fully routable) ❏ Dado un LB, se puede utilizar como
entradas un subconjunto de X. ❏ No utilizan recursos de la PIM
❏ Alto fanout y bajo clock skew (para CLK)
Salidas de MC y
Líneas de la m
PIM Entradas externas (X) ● Pines I/O
❏ Cada pin I/O se pueden configurar como:Entrada/ Salida/ Bidireccional
p<m ❏ El buffer de salida es triestado. El control triestado puede ser controlado:
• Individualmente por una MC
p • Globalmente (GTS)
LB
❏ Control de slew-rate. Se pueden aumentar los tiempos de conmutación para
reducir: ringing, ground bounce y ruido.

Progr. ● En algunas arquitecturas: conexión MC-IO programable


Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 18
17

Arquitectura Bloque Lógico XC9500


XC9500
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 20
19
Macrocelda Familia XC9500
XC9500

9536 9572 95108 95144 95216 95288

Macroceldas 36 72 108 144 216 288

Puertas util. 800 1600 2400 3200 4800 6400

tPD (ns) 5 7.5 7.5 7.5 10 10

Registros 36 72 108 144 216 288


Max. I/O 34 72 108 133 166 192

Encapsu lados PLCC44 PLCC44


PLCC84 PLCC84
TQFP100 TQFP100
PQFP100 PQFP100 PQFP100
PQFP160 PQFP160 PQFP160
BGA352 BGA352

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 22
21

Selección FPGAs
● Migración de encapsulados ● Arquitectura general
❏ 2 dispositivos diferentes de la misma familia, tienen el mismo encapsulado y
son compatibles pin a pin. Ejem: XC9536 y XC9572 (PLCC44)
● Tecnologías de programación

● Programación en placa (ISP, ISR) ● Arquitectura de los Bloques Lógicos


❏ Se realiza a través del puerto JTAG, utilizando ● Arquitectura de interconexión
4 pines: TMS, TCLK, TDI, TDO (dedicados)
❏ Permite encadenar varios dispositivos para ● FPGA XC4000 de Xilinx
su programación en circuito
● Compatible PCI
● Salidas a 5V o 3.3V

❏ VCCINT y VCCIO B jo consumo
a
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 23 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 24
XC9500 XC950 0 XC9500

Vol?til
Reprogr.
Area
R( )
Universidad de Zaragoza, IEC. C(pF) Dispositivos digitales. PLDs - 23 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 24
Si
FPGA Tecnologías de programación
Si
● FPGA = Field Programmable ISR
Gate ● FPGAs se programan utilizando interruptores programables
Array eléctricamente
● Arquitectura Grande ● Tipos:
❏ Matriz de Bloques Lógicos (LB) ❏ SRAM. Celdas de memoria RAM estática (5 transistores) que controlan
❏ Rodeados de recursos de 0.5-2K puertas de paso o multiplex ores
interconexión
Celda SRAM
• Conjunto de segmentos 10-20
de Dato
Interrupto SRAM0
cable de longitud variable que r MUX
se pueden interconectar vía Program. SRAM1
interruptores programables Sel.
Antifuse
● FPGAs comerciales difieren:
Actel LB
Metal 2
• Sin programar presenta una R elevada (G )
❏ Tecnología de programación Canal de ruteo vertical Antifus.
❏ Arquitectura de los LB No • Al aplicar tensión elevada (10,12V) presenta
Canal de ruteo horizontal R Metal 1
❏ Arquitectura de interconexión
pequeña
No SiO2
• Antifusible es pequeño, pero transistores de
programación son grandes
Peque?a
Universidad de Zaragoza, IEC. Tran. Progr. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 26
25

300-500

Tecnologías de programación Arquitectura del LB


Antifuse
ypress
● Granularidad. Medida del número de puertas en el LB en relación al
No número de E/S.
❏ LBs de granularidad fina
No • Pares de transistores
• Puertas básicas (NAND2, XOR2)
Peque?a ❏ LBs de granularidad gruesa
Tran. Progr. • Multiplex ores
• Look-up table (LUTs)
50-100 ❏ Granularidad fina vs. gruesa
• Es más fácil utilizar eficientemente los LBs de granularidad fina
1
• Pero, éstos requieren mayor número de segmentos de interconexión e
interruptores programables

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 27 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 28
Tecnología CMOS 1.2 m

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 27 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 28
PSM
Arquitectura del LB Arquitectura del LB

PSM
● LB basado en multiplexores ● LB basado en LUTs
❏ Se basa en la capacidad de un MUX de implementar diferentes funciones ❏ La tabla de verdad de una función lógica de K-entradas se almacena en una
lógicas conectando sus entradas a valores constantes o a señales
SRAM 2K 1. Las líneas de direcciones de la SRAM son las entradas.
• Gran funcionalidad para pocos transistores
• Gran funcionalidad. Una LUT de K entradas puede implementar
• LBs con gran número de entradas Gran demanda de recursos de
interconexión cualquier función lógica de K entradas.
• Se suele utilizar en FPGAs con antifusibles (ACTEL) • El número de celdas de memoria (2K) aumenta exponencialmente con K
y se hace inaceptable para más de 5 entradas
'0' 0 •
f s Xilinx
a 1 a
b 0 8 1SRAM c b a f
s A2
f s a s b 0 0 0 1
c
a 1 b A1 O a b
f c
s f s s b s 1 1 1 1
'1' 1 a A0
b

s
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 30
29

Arquitectura de Arquitectura de interconexión


interconexión
● Arquitectura segmentada ● Interconexión
❏ Segmentos de cable de diferentes ❏ Objetivos: LB
longitudes se interconectan a través CRV • Flexibilidad (Routability)
de interruptores programables LB LB • Minimizar pasos por interruptores ya que tp
● Terminología ❏ Decisiones arquitecturales LB
❏ Segmento (S) CRH CB CB • Número de segmentos por canal Reducir num.
❏ Track (T) • Distribución de longitudes de los
S
segmentos
❏ Canal de ruteo (CR): program M LB LB
• W tracks ables )
(
• Bloque de conexiones (CB) P
• Matrix de interruptores S T
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 31 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 32
LB
LB LB LB LB LB

Interruptor Longitud cuádruple Longitud


Progr.
LB
doble Longitud simple

LB

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 31 Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 32
SD
H'

YQ G2 X

G2
F3

XILINX Arquitectura de XC4000


● Tipo de FPGA
❏ Tecnología de programación SRAM Slew Passive
Vcc
CLB C LB Rate Pull-Up,

• Cargar datos de configuración en las celdas de memoria


Control Pull-Down

SRAM.
S witc
h D Q
Ma Output Pad
trix Buffer

• Los datos de configuración se leen de una ROM externa Input


CLB C LB Buffer
Q D

• Interruptores=Puertas de paso NMOS Consumo estático Delay

❏ Arquitectura de LBs basado en LUT.


Programmable
❏ Arquitectura de interconexión regular Interconnect I/O Blocks (IOBs)
• Los LBs se disponen de forma regular entre los canales de C1 C2 C3 C4

ruteo, rodeados por una periferia de bloques de E/S H1 DIN S/R EC


S/ R

❏ XC4000:
DI
G4 N
F'
C ont ro l

G3 G G'

Fu
nc. H'
G en. SD
G1 D Q

H
Fu
nc .
G'

• XC4000E: 5V, 5K – 40K


G en. H'
EC
RD
1

F4 Y
F3 F DI
N S /R
C ont ro l

puertas
. F2 Fu
F'

nc
Gen.
G'

F1 H'
SD
D Q

EC
RD
1

• XC4000EX: 5V, 45K – 60K puertas


F'

• XC4000XL: 3.3V, E/S compatibles 5V, 3K – 180K puertas Configurable


• XC4000XV: 2.5V/3.3V, E/S compatibles 5V, 250K – 500K Logic Blocks (CLBs)
puerta
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 34
33

Bloque Lógico Bloque de E/S (IOB)


● 2 LUTs de 4 entradas ● Cada IOB controla una patilla del encapsulado
❏ Generadores de ❏ 2 FFs por IOB
funciones H1 DIN S/R EC
❏ Memoria distribuida S/R
Control ● Configurable:
• 1 puerto/ Doble G4 DIN ❏ Entrada, salida o bidireccional
puerto G3 G
F'
SD

Func.
Gen.
G'
H'
D Q
❏ Con FF, latch o combinacio nal
• 2 bloques 16 1, G1
EC

o un bloque RD ❏ Polaridad
1
I
16 2 o 32 1 H
G'
Y
Salida triestado
H'
Func. O
Gen. S/R

IOB
● 2 biestables F4
Control
Pin
F TS
❏ Configurables como F2 Func.
Gen.
DI
N
F' D Q XQ ● Slew-rate configurable Clocks
FFs o latchs F1 G'
H'

❏ Polaridad de reloj EC
RD
independiente H'
1

X
❏ Set/Reset síncronos K F'

y asíncronos
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 36
35
Bloque de E/S Arquitectura de interconexión
(IOB)
● CB
❏ Transistores de paso para los pines de salida
❏ Multiplexores para los pines de entrada
● PSM
❏ Matriz de elementos de conexión entre segmentos horizontales y verticales
• Cada elemento permite conexión entre 4 segmentos N, S, E, O
N

O E
Celda
SRAM

Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 38
37

Arquitectura de interconexión Familia XC4000


● Líneas de interconexión Part CLB Matrix CLBs FFs Max RAM IOBs
❏ Directas
• Entre LB y LB o IOB adyacen te 4002XL 8x8 64 256 2048 64
• No interceptan PSM: Rápidas <1ns
❏ De propósito general
4003E 10x10 100 360 3200 80
• Flexibilidad
• Lentas si interceptan muchos PSM
• 8 líneas simples y 4 dobles 4010E/XL 20x20 400 1120 12800 160
❏ Globales
• Líneas de metal que atraviesan el chip a lo largo y a lo 4025E 32x32 1024 2560 32768 256
ancho
• Skew mínimo
4085XL 56x56 3136 7168 100352 448
• Ideales para:
– Señales con gran fanout
– Reloj
39
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs -
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 40
Comparativa Comparativa
● FPGAs vs. CPLDs
❏ Lógica ● Frente a circuitos estándar SSI/MSI :
❏ Disminuye el COSTE del circuito
• CPLD. Las funciones se implementan utilizando lógica
AND- OR de dos niveles. • Se reduce el número de chips y por tanto el tamaño de las placas. Esto
– Puertas AND con muchas entradas redunda en
– aumento de la velocidad de funcionamiento del circuito.
• FPGA. Las funciones se implementan utilizando múltiples
niveles de lógica con puertas de menor fanin. – aumento de la fiabilidad (disminución de interconexiones)
– LB más sencillos pero en mayor número – reducción del coste del circuito (área de PCB)
❏ Interconexi ón – reducción del consumo
❏ Flexibi lidad
• CPLD. Interconexión tipo crossbar. Cada salida de LB es
directamente interconectable a cada entrada a través de 1 o 2 • se puede cambiar la funcionalidad del diseño para añadir nuevas
interruptores características sin modificar el PCB.
– Tiempo predecible ❏ Es más difícil de copiar (propiedad intelectual). Incorporan un bit de
• FPGA. Interconexión segmentada. Las conexiones entre LBs seguridad programable para protección del diseño
típicamente pasan a través de varios interruptores ❏ Simplifica el trabajo del diseñador
• Permite utilizar herramientas de diseño (ECAD).
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 42
41

Comparativa Comparativa
● MPGA vs. FPGA ● MPGA vs. FPGA
❏ MPGA = Mask Programmable Gate Array. Estructura:
• Existe una estructura regular de celdas (transistores) FPGA Gate Array
(Application Specific Integrated Circuit)
prefabricada
• Personalización mediante conexionado específico
Fixed cell size Fixed cell size
– Sólo requiere de las últimas etapas del proceso tecnológico (routing layers)
Program. Cell type Fixed cell type Fixed cell
Fixed cell placement placement Fabrication
No fabrication layers routing layers
Higher unit cost Lower unit cost
Routing Standard Product Custom Product
Pads
Off the shelf delivery Cost FPGA Months to manufa cture
Fast Time to Market MPGA Slow Time to Market
Gates No NRE NRE+
Fully factory tested User Test Development
BE Units
Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - Universidad de Zaragoza, IEC. Dispositivos digitales. PLDs - 44
43

También podría gustarte