Está en la página 1de 43

LÓGICA

PROGRAMABLE

Fulvio Andres Pedraza


Carmona
DISPOSITIVOS LÓGICOS
PROGRAMABLES
(PLD)
los dispositivos lógicos programables fueron introducidos a
mediados de los 70s.
la idea era construir circuitos lógicos combinacionales que
fueran programables.
el primer pld fue llamado pal (lógica de matriz programable). los
pal solo utilizan compuertas lógicas (sin flip-flops), por lo que
solo permiten la implementación de circuitos combinacionales.
para superar esta limitación luego fueron creados los registered
plds.
A comienzos de los 80s, se fueron agregando circuitos lógicos
adicionales a las salidas de los plds. la nueva celda de salida,
llamada macrocell, contiene (a parte de flip-flops) puertas lógicas y
multiplexores. esta nueva estructura fue llamada generic pal (gal).

todos estos chips (pal, pla, registered pld, gal/palce) son conocidos
en conjunto como splds (simple plds).
.
El PLD, está conformado por una matriz de compuertas
AND y compuertas OR, que se pueden programar para la
construcción de funciones lógicas específicas.

Matriz
OR
Matriz
AND
Existen cuatro tipos de Dispositivos:

1. Memoria Programable de solo Lectura (PROM)

Entrada 1 Salida 1

Entrada 2 Matriz Salida 2


Matriz OR
AND Fija Programable

Entrada n Salida m
2. Matriz Lógica Programable (PLA)

Entrada 1 Salida 1

Matriz Matriz
Entrada 2 Salida 2
AND OR
Programable Programable

Entrada n Salida m
3. Matriz Lógica Programable (PAL)

Entrada 1 Salida 1

Matriz Matriz
Entrada 2 Salida 2
AND OR Fija y
Programable Lógicas de
Salida

Entrada n Salida m
4. Matriz Lógica Genérica (GAL)

Entrada 1 Salida 1
Matriz
Matriz OR Fija y
Entrada 2 Salida 2
AND Lógica de
Programable Salida
Programable

Entrada n Salida m

a. La GAL es reprogramable (E2CMOS)


b. Tiene configuración de salidas programables
PAL
ARREGLO LOGICO PROGRAMABLE
Se permite implementar cualquier suma de
productos lógicos con un número de variables
definidas.
Lógica Combinacional de Salida

Salida Combinacional
Se usa para suma de productos.

Entrada/Salida Combinacional
La función de Salida se puedee realimentar a una entrada
de la matriz o cuando el pin E/S, se usa solo como
entrada.

Salida de Polaridad Programable


Seleccionar la función de Salida o su complemento,
programando la compuerta XOR para realizar la
inversión o no.
GAL
MATRIZ LOGICA
GENERICA
Formada por una matriz de puertas AND
reprogramable (E2CMOS) conectada a una matriz
de puertas OR fijas.

Se permite implementar una expresión lógica de


Suma de Productos con un número de variables
definidas.
EJEMPLO

A A´ B B´ C C´

Z = A’B + B’C + AC’ + A’B’


GAL22V10

E/S
De la Matriz
Programable Buffer

OLMC Tri-State

A la Matriz
Programable

La salida de la Matriz AND, se introducen en la macro celda


(OLMC, output logic macrocell), conformada por puertas OR y lógica
programable.

Las OLMC, se pueden programar como Lógica Combinacional y


Lógica Secuencial

La GAL22V10, está conformada por 12 entradas dedicadas y diez


E/S.
El OLMC, internamente, está conformado por un multiplexor
de dos señales de selección para cuatro configuraciones:

Modo Combinacional con salida activa en Alto o activa en


Bajo. El Multiplexor, selecciona la salida de la puerta OR

Modo Secuencial como salida activa Alto o activa en Bajo


El Multiplexor, selecciona la salida del Flip - Flop

Buffer de Salida Tri – State


Cuando se encuentra en alto, se produce una salida
Cuando se encuentra en Bajo se, el buffer entra en alta
impedancia y se configura el pin como entrada.
PROCESO DE
PROGRAMACIÓN
Diseño del
Circuito Lógico

Desarrollar el
Programa

si
Errores

no
Compilar

Programar Implementar
DISPOSITIVOS LÓGICOS
PROGRAMABLES
COMPLEJOS
(CPLD)
¿QUE ES UN CPLD?

los cplds son el avance y conjunto de otros dispositivos


electrónicos programables; antes de estos fueron los plds o
simplemente dispositivos lógicos programables.
Estos se fabricaron chips con muchas gal en su interior utilizando
una arquitectura mucho más sofisticada, mejor tecnología y
muchas otras características adicionales. estas estructuras son
conocidas como cpld (complex pld). los cpld son bastante
populares por su alta densidad de puertas, alto performance y bajo
costo.
ARQUITECTURA CPLDS

MATRIZ DE INTERCONEXIONES PROGRAMABLES PIM : es una matriz de


filas y columnas con una celda programable de conexión en cada
intersección, permite unir los pines de entrada/salida a las entradas del
bloque lógico, o las salidas del bloque lógico a las entradas de otro bloque
lógico o inclusive a las entradas del mismo.
BLOQUES LÓGICOS: cada uno pose un bloque de compuertas and y or en
forma de suma de productos.
MACROCELDAS: equivale a unas 20/40 compuertas (incluyendo un flip/flop
programable). en cada macrocelda se desarrolla individualmente las señales
de control global. cada cpld contiene entre 16 a 1024 macroceldas.

CELDA DE ENTRADA/SALIDA: la función de una celda de entrada/salida es


permitir el paso de una señal hacia dentro o hacia el exterior del dispositivo.
Los CPLDs que combinan varios bloques lógicos similares a
las PAL o GAL con una matriz de interconexión programable.
PROGRAMACION DE CPLDS

Dependiendo el tipo de CPLD existen también varios modos de


programación y borrado; para el caso común se establece el
tipo de programación conocido como Borrable eléctricamente.
Este modo de programación/borrado se lleva a cabo mediante la
conexión CPLD a una computadora, se realiza con un cable
conocido como JTAG USB. La programación de estos
dispositivos es generalmente en lenguajes de descripción
de hardware , por ejemplo, VHDL, Mentor Graphics o Verilog.
FABRICANTES

• Altera (EPM3032A, EPM3064A, EPM3128A, EPM3256A, EPM3512A)


• Atmel (ATF15xxAS/ASL/ASV/ASVL)
• Cypress Semiconductor
• Lattice Semiconductor (software) (LC4032V-75TN48C. - MACH4000 ISP)
• Xilinx (CPLD MAX 7000)

Dependiendo la aplicación y la complejidad de la misma se fabrican


CPLDs especificas o con gran capacidad a disposición.
APLICACIONES DISPUESTAS EN CPLDS

SE PUEDEN USAR CPLDS PARA PEQUEÑAS


APLICACIONES, PERO ALGUNOS DE LOS USOS MAS
RENOMBRADOS SON:

oCONTROLADORES DE VIDEO.
oCONTROLADORES LAN.
oCONTROLADORES UART.
oCONTROL DE MEMORIAS CACHE.
MATRIZ DE PUERTAS
PROGRAMABLES
(FPGA)
FIELD PROGRAMMABLE GATE
ARRAY
• Un FPGA es un circuito integrado que consta de arreglos lógicos
que se interconectan por medio de una matriz de cables e
interruptores programables. Es altamente programable y realiza
procesamiento de información muy compleja

• Ciertos fabricantes cuentan con FPGAs que sólo se pueden


programar una vez, por lo que sus ventajas e inconvenientes se
encuentran a medio camino entre los ASICs y las FPGAs
reprogramables.
HISTORIA

• Las FPGAs fueron inventadas en el año 1984 por Ross Freeman


y Bernard Vonderschmitt, co-fundadores de Xilinx, y surgen
como una evolución de los CPLDs.

• Las FPGA son el resultado de la convergencia de dos tecnologías


diferentes, los dispositivos lógicos programables (PLDs
Programmable Logic Devices) y los circuitos integrados de
aplicación específica (ASIC [Application-Specific Integrated
Circuit]).
CARACTERISTICAS DE LAS FPGA

• FPGA puede desempeñar


cualquier función lógica
necesaria.
A
r
q
• Muchos FPGA modernos u
soportan la reconfiguración i
t
parcial del sistema, e
permitiendo que una parte del c
t
diseño sea reprogramada, u
mientras las demás partes r
a
siguen funcionando
i
n
t
e
r
n
a
d
e
u
n
ARQUITECTURA DE UNA FPGA
• Una FPGA posee al menos 3 bloques:
• CLB: Configurable-logic blocks, donde se
implementan los circuitos lógicos.
• IOB: Input-output block, donde se conectan
las configuraciones internas con pines de
entrada y salida.
• DCM: Digital Clock Managers, permiten
entregar señales de reloj a toda la FPGA.

EL693
Implementación de Sistemas Digitales en
35
FPGA
ARQUITECTURA DE UNA FPGA

• Una FPGA
básica (Xilinx
Corp.)

EL693
Implementación de Sistemas Digitales en
36
FPGA
ARQUITECTURA DE UNA FPGA
• El elemento esencial es el slice. En él se
pueden implementar tanto circuitos
combinacionales como secuenciales.

37
CÓMO ES UN SLICE
• Una slice es la base de las CLB
• En esencia es un bloque de look-up
tables enlazadas con una salida que
puede ser registrada (flip-flop) o
directa, pudiendo implementarse
diversas funciones lógicas.
• También hay implementaciones con
multiplexores. 38
PROGRAMACION EN LAS FPGA

• En la FPGA no se realiza
programación tal cual como • Estos lenguajes de
se realiza en otros programación especiales
dispositivos como: son conocidos
como HDL o Hardware
Description
• DSP, CPLD o Language
microcontroladores

• HDLs más utilizados son:


• Un diseño puede ser • VHDL
capturado ya sea como
esquemático, o haciendo • Verilog
uso de un lenguaje de • ABEL
programación especial.
APLICACIONES
PROCESAMIENT
Enlaces de O DIGITAL DE
Sistemas de sistemas de alta SEÑALES
Misiles
radar velocidad. ROBUSTO Y DE
ALTA
SEGURIDAD
GPS Infoentretenimiento Control de frenos Control de luces

Sistemas Reconocimiento de
Sistema de seguridad aeroespaciales Bioinformática
voz
FIN

También podría gustarte