DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en...

34
1 DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA) DIGITAL II – ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti

Transcript of DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en...

Page 1: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

1

DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)

DIGITAL II – ECA

Departamento de Sistemas e Informática

Escuela de Ingeniería Electrónica Rosa Corti

Page 2: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 2

Preguntas a responder sobre FPGA

¿ Qué innovación introducen ?

¿ Cuándo son una opción ?

¿ Cómo es la metodología de trabajo ?

Page 3: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 3

Electrónica e InformáticaDesde 1950 la electrónica tuvo avance muy acelerado

Dos hechosfundamentales

Crecimiento exponencial en los

niveles de integración

Rápida evolución de las herramientas informáticas de apoyo al diseño (EDA).

Nuevos dispositivos y arquitecturas.

Nuevas metodologías y herramientas de diseño

Page 4: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 4

Dispositivos ASIC

Dispositivo dedicado a una única función, o un número limitado de funciones, completamente diseñado por el usuario (Layout). El fabricante ocupa el rol de “fundidor de silicio”.

Page 5: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 5

Dispositivos ASIC: Clasificación.

ASIC

GateArray

ParcialmenteDedicados

LógicaProgramable

TotalmenteDedicados

Standard Cell SPLD CPLD FPGA

Page 6: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 6

Dispositivos de lógica programable.

Mayor flexibilidad

Que el usuario personalice un dispositivo standard.

Personalización independiente de la fábrica

Los dispositivos son de complejidad diversaEntradas

Salidas

Se desperdician recursos de pastilla

DESVENTAJA

Page 7: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 7

FPGA: ¿ Cuál es la innovación introducida ??

Arquitectura extremadamente flexible de tecnología SRAM

Reprogramación simple y rápida en circuito Bloques lógicos programables

(CLB, LE)

Bloques I/O programables

Interconexión programable

Page 8: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 8

Programación o configuración en campo del dispositivo

µP FPGA

Se cambian las conexiones y las funciones lógicasSe cambian las instrucciones

Cambia el Software Cambia el Hardware

Page 9: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 9

FPGA: ¿ Cómo cambiar la lógica ?

PLD convencionales

LUT´s

FPGA

Page 10: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 10

FPGA : Ejemplo de bloque lógico configurable.

LUT´s

Fuente: Hoja de datos de la familia XC4000E – Xilinx.

Page 11: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 11

FPGA: Ejemplo de conexiones programables

Fuente: Hoja de datos de la familia XC4000E – Xilinx.

Page 12: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 12

FPGA : Ejemplo de bloque de I/O

Fuente: Hoja de datos de la familia XC4000E – Xilinx.

Page 13: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 13

Evolución de las Arquitecturas

Virtex II y Virtex II Pro Spartan 2 y VirtexFuente: Publicaciones de la empresa Xilinx.

Page 14: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 14

Arquitectura modular orientada a las aplicaciones:

Fuente: Publicaciones de la empresa Xilinx.

Page 15: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 15

FPGA: Nuevos encapsulados

Permiten una conexión muy versátil de I/O

Se disponen de más pines para el usuario

Mejora la disipación térmica

En nuestro país aún no hay tecnología para montar estos CI.

Page 16: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 16

FPGA´s basadas en SRAM: Ideas fundamentales

1. Dispositivo de lógica programable estándar muy flexible

2. Personalizable por el usuario con ambientes EDA

programación en campo3. Arquitectura basada en SRAM

Pierden su configuración al cesar la energía4. Volátiles

Al iniciar el sistema, se debe restaurar la configuración

El diseño es accesible, tiene baja confidencialidad

Otras características5. Otras tecnologías de fabricación

Page 17: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 17

Tecnologías de fabricación

SRAM ANTIFUSIBLES

EPROMFlash

Page 18: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 18

Comparación de las tecnologías de fabricación

Page 19: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 19

Qué ASIC utilizar? Cuándo elegir FPGA ??Performance (área, frecuencia de trabajo, consumo)

Tiempo de desarrollo

Cantidad de dispositivos

Funcionalidad madura o cambiante

FPGA para lograr un diseño maduro

Volcado a una ASIC de tipo Full-Custom

Page 20: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 20

ASIC Full Custom versus FPGA

Page 21: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 21

FPGA´s: ¿Cómo se usan? ?

Su configuración se define, simula, corrige e implementa en ambientes EDA integrados

Introducen la simulación como un elemento fundamental.

Diseño Simulación Prototipo

Permiten distintas metodologías y flujos de diseño

Permiten modularización y reuso a partir de bibliotecas

Page 22: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 22

FPGA´s: Fases de desarrollo EDAIngreso del diseño

Simulación funcional

Síntesis

Implementación

Programación del dispositivo

Simulación temporal

Netlist funcional

Netlist + Restricciones

Bitstream

Page 23: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 23

Fases de desarrollo EDA: Procesos

Page 24: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 24

Ingreso del diseño

Otras asignaturasDigital II

Captura de Esquemáticos Lenguajes HDL

Editores GráficosBibliotecas de bloquesPersonalización de funcionalidadComplejidad hasta 6000 puertas

Descripciones de alto nivelEdición rápida y sencillaDiseños más complejos

Las herramientas EDA permiten modularizar el sistema y combinar distintos estilos de descripción.

Page 25: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 25

Ingreso del diseño con esquemáticos:

Page 26: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 26

Simulación comportamental del diseño

Depuración!!

Page 27: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 27

Programación en campo del dispositivo

El archivo bitstream obtenido permite configurar la FPGA

Cómo?? FPGA configurables en campo y volátiles.

Es posible bajar la configuración desde una PC

Placa académica XSA - 50

A través del puerto paralelo utilizando herramientas de software y recursos de la placa.

Existen otras formas de programar una FPGA.

Page 28: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 28

Placa XSA-50 - Conexiones externas

Fuente: XSA- Manual del usuario.

El diseño reside en la FPGA !!

Verificación de su funcionamiento

Page 29: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 29

Ley de Moore para FPGA

A medida que crece el nº de transistores el costo baja.

Page 30: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 30

FPGA: Tendencias

Fuente: Publicaciones de la empresa Actel.

Page 31: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 31

FPGA: Tendencias

Fuente: Publicaciones de la empresa Actel.

Page 32: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 32

Datos generales sobre FPGA´s

Algunas aplicaciones

Guitarras Gibson – sonido digitalVehículos de exploración de Marte (NASA)Módulo de control de Williams F1Misiles Tomahawk

AlgunosFabricantes

LatticeCypressActelQuicklogic

XilinxAlteraAtmel

Costo de los dispositivos

Desde menos de 10 dólares a varios cientos, dependiendo de las características, aún en la misma familia de dispositivos.

Page 33: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 33

ConclusionesMicroelectrónica

InformáticaHW Reconfigurable

Flexibles y reprogramables en campo.

FPGA Personalizables por el usuario con herramientas EDA

Bajo tiempo de desarrollo y tolerancia a fallas

Fundamentales para I+DIdeales para muchas aplicaciones

Page 34: DISPOSITIVOS DE LÓGICA PROGRAMABLES EN CAMPO (FPGA)€¦ · FPGA - R. Corti 27 Programación en campo del dispositivo El archivo bitstream obtenido permite configurar la FPGA Cómo??

FPGA - R. Corti 34

Bibliografía

Fundamentos del diseño de CI digitales – M.I.Schiavón –UNR Editora – Capítulos 1, 2 y 5.

Diseño digital – J. Wakerly – Capítulo 10 (dispositivos programables CPLD y FPGA).

Programmable_logic_design_handbook – Xilinx – Introducción (evolución de los dispositivos) y herramienta Webpack