PLDs
DISPOSITIVOS DISPOSITIVOS DE DE LOGICA LOGICA PROGRAMABLES PROGRAMABLES Una Una alternativa alternativa en en el el Diseo Diseo de de Sistemas . Sistemas Digitales Digitales.
Introduccin
La realidad del diseo lgico actual
Complejidad creciente Tiempos menores de introduccin al mercado Disminucin costos (lost market oportunity-costo de oportunidad)
Las exigencias que plantea son
Confiabilidad Accesibilidad para pruebas
La meta principal es
Contar con una solucin de uso universal
Costos
Fijos Globales
Aprendizaje de la tecnologa Herramientas de diseo De ingeniera del diseo Costos no repetitivos Costos de iteracin (repetir el diseo)
Variables por unidad
Precio del componente Accesibilidad para pruebas
Costo fijo + costo unitario * volumen
Beneficios de una solucin universal
Fcil adaptabilidad a cambios de diseo
Aumento de la vida comercial til del producto Posibilidad de la reingeniera y compatibilidad
Mayor desempeo
Rpido, pequeo, confiable y fcil de armar Dispositivos semi-custom
Aprovechamiento de los recursos de ingeniera
Menor costo de desarrollo
Qu es un PLD ?
Es un circuito integrado que contiene una gran cantidad de elementos lgicos que a travs de la programacin se interconectan para que realice una funcin especfica.
Qu es un PLD ?
Es un dispositivo cuyas caractersticas pueden ser modificadas y almacenadas mediante programacin. El dispositivo programable ms simple consiste de una matriz de conexiones de compuertas AND y un arreglo de compuertas OR. Una matriz de conexiones es una red de conductores distribuidos en filas y columnas con un fusible en cada punto de interseccin, mediante el cual se seleccionan cules entradas del dispositivo sern conectadas al arreglo AND y cuyas salidas, a su vez, se envan al arreglo OR, para obtener una funcin lgica en forma de suma de productos.
Notacin convencional y notacin PLD
Configuraciones bsicas
PLE Entradas PAL Entradas Arreglo AND Programable Arreglo OR Fijo Salidas Arreglo AND Fijo Arreglo OR Programable Salidas
PLA Entradas Arreglo AND Programable Arreglo OR Programable Salidas
Configuracin PLE/PROM
Configuracin PAL
Configuracin PLA
Clasificacin de los PLDs
Productos comerciales
SPLDs
Fabricante Altera Atmel Cypress Lattice Philips Vantis Fabricante Altera Atmel Cypress Lattice Philips Vantis Xilinx Fabricante Actel Altera Atmel Lucent QuickLogic Vantis Xilinx
SPLD Clsicos,FLASHLogic PAL PAL GAL PLA,PAL PAL CPLD MAX 5000,7000 Y 9000 ATF, ATV FLASH370, ULTRA37000 IspLSI 1000 a 8000 XPLA MACH 1 a 5 XC9500, CoolRunner FPGA ACT 1 a 3 , MX, SX FLEX 6000,8000 Y 10K AT6000, AT40K ORCA 1 a 3 pASIC1 a 3 VF1 XC4000,Virtex, Spartan
PLDs
CPLDs
FPGAs
Integracin en un SPLD
Sustituye a 100 C.I. SSI TTL o CMOS
Soy un SPLD
PALs GALs
C.I. Series 74xx y 40xx
Arquitectura PAL
Matriz de fusibles de interconexin
Un trmino producto para control de tercer estado Suma de 7 trminos producto
Lneas especficas de entrada
Retroalimentacin desde una E/S
La Esquema circuital de un PAL
Se cuenta a lo largo de TODO EL CHIP con los literales de todas las variables de entrada (la variable y la variable negada) Mediante lgica cableada es posible generar trminos producto (AND) de la cantidad de literales que se desee Para generar la funcin slo es posible sumar (OR) hasta 7 u 8 trminos producto
PAL16L8
64 AND de 32 entradas 8 OR de 7 entradas 8 Inversores de tercer estado 16 Buffers doble salida Aproximadamente : 200 C.I. SSI (TTL o CMOS) serie 74xx o 40xx
PAL16R8
Un nico clock global Matriz de interconexin global
Entradas dedicadas Salidas de los registros Tri-State
.................................................
Feedback desde los registros
Una seal global de control de TriState
Incorporacin de elementos de memoria
Ideal para la sntesis de mquinas secuenciales
Arquitectura GAL
Macroceldas lgicas de salida Suma de 8 a 16 trminos producto
La macrocelda consta de:
Un Flip-Flop Dos multiplexores
Limitaciones de los SPLD
Reducida cantidad de macroceldas. La exigencia de optar entre la retroalimentacin desde la macrocelda o desde la entrada forza que ante la necesidad de un flip-flop o de un trmino lgico intermedio a veces se deba perder una posible terminal de entrada/salida. La distribucin de todas la seales por todo el chip consume mucha superficie del silicio y genera retardos capacitivos de importancia. En los primeros PAL, el uso de fusibles afectaba seriamente la confiabilidad del dispositivo.
Integracin en un CPLD
Sustituye a 50 SPLDs
Soy un CPLD
PALs y GALs
CPLDs
Agrupamiento de las De lneas de macroceldas (LABs) entrada dedicadas (8 a 20) Generacin de reas de conexionado global (PIA) Generacin de reas de conexin dentro del LAB Expansores para generar trminos producto auxiliares Con un trmino producto p/control de inversin lgica Con un bloque de E/S por cada macrocelda con dual feedback De 32 a 192 macroceldas en chips de 28 a 100 terminales
Interconexin global (PIA)
Matriz de macroceldas
Bloque de control de E/S
Interconexin del LAB
4..16 pines de I/O por cada LAB
Matriz de expansores
Macrocelda y Expansores
LAB Arreglo local Clear Clock Global Global Expansores paralelos
Desde terminal E/S
PRN D Q
Matriz de seleccin
Clock
ENA CLRN
hacia PIA y Bloque de control E/S
Desde PIA
Expansores lgicos
FPGAs
Field Programmable Gate Array (Arreglo de compuertas programable en el campo). Es un circuito integrado que contiene celdas lgicas programables (64 a 8,000,000) Las celdas lgicas se interconectan por medio de una matriz de interconexiones programables
Arquitectura del FPGA
Bloques de E/S
Bloques Lgicos
Interconexin Programable
Bloque Lgico del FPGA
Densidades de FPGAs
Spartan II XC2S15 Spartan IIE XC2S150E Virtex E XCV50E Virtex E XCV3200E Virtex II XC2V40 Virtex II XC2V8000
15, 000* 150,000* 72,000* 4,047,000* 40,000* 8,000,000*
* Compuertas equivalentes (System gates)
Densidades de IP Cores
Encriptador AES Microcontrolador 80530 Microcontrolador 8051 Decodificador Viterbi Controlador de Ethernet Decodificador JPEG color 40,000* 130,000* 150,000* 190,000* 195,000* 780, 000*
* Compuertas equivalentes (System gates)
Costos de FPGAs
Varan dependiendo de la densidad y velocidad Spartan 20,000 compuertas ~ US$1 Spartan 100,000 compuertas ~ US$20 Virtex 300,000 compuertas ~ US$150 Virtex II 8-millones compuertas ~ US$8,000
Xilinx vs. Altera
CPLDs
FPGAs
Software
Diseo utilizando lgica programable
Conclusiones :
El uso de lgica programable no descarta el uso de lgica discreta, sino que la restringe a casos muy simples. Es una herramienta rpida, de alta confiabilidad, y de bajsimo costo por compuerta. La fcil modificacin de un diseo permite asegurar el mantenimiento y actualizacin de un producto. Conocer profundamente las tcnicas de diseo lgico es la mejor manera de aprovechar la lgica programable. Se pasa del diseo por compuertas al diseo por sistemas.
Sistema bsico y Flujo de Diseo para Lgica Programable
Introduccin/Descripcin Introduccin/Descripcin del del Diseo Diseo Captura Captura Esquemtica Esquemtica Descripcin Descripcin basada basada en en Lenguaje Lenguaje Realizacin/Implementacin Realizacin/Implementacin del del Diseo Diseo Translacin/Sntesis Translacin/Sntesis del del Diseo Diseo Verificacin Verificacin de de Reglas Reglas de de Diseo Diseo Particin Particin y y Mapeo Mapeo de de Lgica Lgica Asignacin Asignacin o o Colocacin Colocacin (Place) de la (Place) de la Lgica Lgica en en los los Bloques configurables Bloques configurables Enrutamiento Enrutamiento (Route) (Route) Creacin Creacin de de Archivo Archivo de de Programacin Programacin Programacin-Dispositivo Programacin-Dispositivo Simulacin Simulacin Funcional Funcional Verificacin Verificacin de de la la funcionalidad funcionalidad de de la la Lgica Lgica Temporizacin Temporizacin estimada estimada (opcional) (opcional) Simulacin Simulacin Temporizada Temporizada Se Se requiere requiere de de informacin informacin de de temporizacin posterior temporizacin posterior a a los los procesos procesos de de Colocacin Colocacin (Place) (Place) y y Enrutamiento (Route) Enrutamiento (Route) Anlisis Anlisis de de Temporizacin Temporizacin Esttico Esttico Se Se requiere requiere de de informacin informacin de de temporizacin posterior temporizacin posterior al al proceso proceso de de Colocacin Colocacin (Place) (Place) y y Enrutamiento Enrutamiento (Route) (Route) Objetivo: Objetivo: Obtener Obtener resultados resultados mejores mejores a a los los de de la la simulacin simulacin temporizada temporizada Depuracin Depuracin del del diseo diseo integrado integrado al al Sistema (In-System) siendo Sistema (In-System) siendo desarrollado desarrollado Para Para dispositivos dispositivos reprogramables reprogramables Uso Uso de de otros otros Sistemas Sistemas de de Software Software & Hardware & Hardware
Sistema Bsico de Desarrollo
Computadora Personal / Estacin de Trabajo Software CAE/CAD [Link]. WebPack (Gratuito) de Xilinx Programador Opcional
Verificacin del Diseo
Cul Cul es es la la primera primera fase fase del del diseo diseo de de un un sistema sistema digital digital utilizando utilizando SPLDs, SPLDs, CPLDs CPLDs y y FPGAs FPGAs ? ?
Descripcin Descripcin del del Diseo Diseo
Mtodos
Captura Esquemtica ([Link]. OrCAD) Descripcin por Lenguaje
Limitacin: Difcil o imposible la manipulacin de diseos complejos
De Bajo Nivel:
PALASM OPAL PLPL ABEL CUPL Verilog VHDL
De Alto Nivel:
GRACIAS POR NO DOMIRSE