Departamento de Sistemas e Informática Síntesis de sistemas digitales en FPGA 2016 Qué es una FPGA? Dispositivo semiconductor basado en una matriz de bloques lógicos configurables, cuya interconexión es programable. El usuario puede reconfigurarla, para cumplir con requerimientos específicos. Dispositivo semiconductor cuya funcionalidad y características se pueden definir luego de fabricado e instalado, reconfigurando el hardware en el circuito integrado. 2 Tecnología FPGA Field Programmable Gate Array Fueron creadas en 1984 por Ross Freeman y Bernard Vonderschmitt, co-fundadores de Xilinx. Existen diversas tecnologías para su fabricación que definen distintas características en los CI Las FPGA mas difundidas se basan en tecnología SRAM, con un proceso de fabricación estándar más barato que permite un nivel de integración creciente. 3 Esquema general de la arquitectura Flexibilidad Paralelismo 4 Configuración de una FPGA BITSTREAM Los bits definen el circuito que se implementa en el chip Un bit de configuración controla un switch de conexión o un bit de lógica 5 Programación de un dispositivo 6 µP - µC FPGA Se cambian las instrucciones Se cambian las conexiones y las funciones lógicas Cambia el Software Cambia el Hardware Aspectos importantes Prototipado rápido y simple Flexibilidad Desarrollo tolerante a fallas Mantenimiento y actualización de los diseños Reducción del tiempo de puesta en el mercado de los productos Mantenimiento a largo plazo de las aplicaciones Velocidad – Arquitectura paralela Alta capacidad de procesamiento Implementación de SoC 7 Dominios de aplicación El procesamiento digital de señales (DSP) es su principal aplicación Fuente: Genera (2008) – www.generatecnologias.es 8 Sistemas de visión artificial Sistemas de imágenes médicas Codificación y encriptación Reconocimiento de voz Radioastronomía Aeronáutica y defensa Fabricantes y participación en el mercado Volumen del mercado global FPGA: US$5.4 billion en 2013, US$9.9 billion en 2020 (TABB Group - abril 2015) Fuente: High Tech Marketing (2011) 9 www.xilinx.com www.altera.com www.microsemi.com www.latticesemi.com www.quicklogic.com Evolución del mercado FPGA TABB Group – Abril 2015 10 Consumo de los dispositivos ACTEL/MICROSEMI 11 XILINX 1 Precios de dispositivos www.em.avnet.com – 05/06/2013 12 Tendencias Evolución de la tecnología de fabricación Aumentar los niveles de integración Reducir el consumo de potencia Dispositivos FinFet Mejorar el desempeño Año 2012 2013 2014 2015 13 Empresa ALTERA XILINX ALTERA XILINX ALTERA XILINX Familia / Tecnología Serie 5 (Stratix, Arria, Cyclone) – 28 nm – Tec. Planar Serie 7 (Kintex, Virtex, Artix) – 28 nm – Tec. Planar Arria 10 - 20 nm – Tecnología Planar Kintex, Virtex, Zynq UltraScale – 20 nm – Tec. Planar Stratix 10 – 14 nm – Tenología FinFet Kintex, Virtex, Zynq UltraScale+ - 16 nm – Tec. FinFet Tendencias: Tecnología de fabricación Tecnología Planar Xcell Journal – 3º quarter 2013 Tecnología FinFET La puerta “rodea” el canal brindando mayor control Las corrientes de pérdida disminuyen drásticamente 14 Tendencias Arquitecturas heterogéneas orientadas hacia aplicaciones de características diversas (lógica, procesadores, DSP) Enlaces serie de alta velocidad (Gb/s) LUTs con mayor cantidad de entradas (6) Reprogramación dinámica o “en vuelo” Dispositivos mixtos que soportan entradas analógicas Xilinx: Virtex7, Artix7, Kintex 7 Altera: Cyclone IV, Cyclone V Microsemi: SmartFusion Fabricación basada en otras tecnologías (Flash - antifusibles) 15 Tecnologías de fabricación de FPGA Característica SRAM Antifusibles Flash SI NO SI SI (50 a 500 ms) NO NO Velocidad Más lenta Mejor Más lenta Potencia Peor Segunda mejor Mejor Densidad Mejor Segunda mejor Media Tolerancia a la radiación Peor Mejor Media Reprogramable Memoria externa Existen FPGA de tecnología mixta (SRAM – FLASH) Xilinx: Familia Spartan 3AN Lattice: Familia XP 16 Tendencias System on Chip (SoC) y Multi Processor SoC (MPSoC) Microsemi: SmartFusion2 (Cortex-M3) 17 Migración de FPGA hacia FPGA-ASIC Volúmenes de producción superiores a 500.000 unidades por año ALTERA Reduce costos Aporta seguridad al diseño Disminuye el consumo de potencia Incrementa el rendimiento (velocidad) HardCopy ASICs XILINX 18 EasyPath Algunos datos en Argentina Incorporación de la tecnología en los planes de estudio de Ingeniería Electrónica y otras carreras afines en diversas Universidades Presentación de trabajos locales sobre la temática en congresos y eventos nacionales relacionados • Congreso de Microelectrónica Aplicada • Simposio Argentino de Sistemas Embebidos • Eventos sobre Ciencias de la Computación (JAIIO, CACIC) • ………… Proyecto FPGA libre liderado por el INTI http://fpgalibre.sourceforge.net/ Empresas proveedoras de productos y servicios • www.emtech.com.ar (Microsemi) • www.edudevices.com.ar (Altera) • ………… 19 Metodología de desarrollo para FPGA Lenguajes de descripción de HW (HDL) Herramientas EDA Reutilización de diseños incorporando IP cores Ambientes integrados de desarrollo Diseño a nivel sistema Codiseño HW / SW 20 Núcleos de propiedad intelectual (IP cores) Implementación de funciones lógicas preconfiguradas que pueden reutilizarse en distintos diseños Unidades reutilizables de lógica o diseños del layout de un chip que son propiedad intelectual de un proveedor. IP cores de software IP cores de hardware Reutilización de diseños www.opencores.org 21 Contenido del curso Capítulo I: Dispositivos reconfigurables Arquitectura de las familia Spartan3 (Xilinx) Capítulo II: Herramientas CAD para diseño digital Herramienta ISE (Xilinx). Placas de desarrollo. Capítulo III: Lenguaje de descripción de hardware VHDL Características generales Estilos de descripción Tipos de datos. Bibliotecas y paquetes Descripción de circuitos combinacionales Descripción de circuitos secuenciales. Máquina de Estado Finito. Capítulo IV: Componentes Virtuales Cores IP Procesadores embebidos. Ambiente Integrado de Desarrollo (IDE) Capítulo IV: Conceptos básicos de DSP basado en FPGA Ambiente de desarrollo System Generador/Simulink 22 Flujo de diseño VHDL Análisis Mapeo, rutas y ubicación 23 Código Síntesis Simulación post PAR Simulación funcional Bitstream Metodología de trabajo del curso IMPACT 24 ¿Preguntas?