(Field Programmable Gate Array) FPGA (Field Programmable Gate Array)
Lógica digital configurable FPGA’s Lógica digital configurable PLA (Programmable Logic Array) PAL (Programmable Array Logic) GAL (Gate Array Logic) CPLD (Complex Programmable Logic Device) FPGA (Field Programmable Gate Array) Sistemas Digitales - FIUBA
FPGA’s Qué es una FPGA? Es un dispositivo semiconductor conformado por bloques de lógica, cuya interconexión y funcionalidad puede ser configurada luego de su fabricación Elementos lógicos Recursos de interconexión Celdas de E/S Sistemas Digitales - FIUBA
Ventajas de las FPGAs Prototipado rápido Time to market corto Costo más bajo asociado a NRE (ingeniería no recurrente) Capacidad para reconfiguración en campo Ciclo de vida largo (reduce el riesgo de obsolescencia) Flexibilidad Posibilidad de reconfiguración del hardware sin necesidad de cambio en la placa madre del diseño que la contiene Procesamiento en paralelo Sistemas Digitales - FIUBA
Aplicaciones de las FPGAs Comunicaciones Industria aeroespacial Procesamiento de imagen/video de alta resolución Procesamiento digital de señales Prototipado de ASICs Switches y Routers Amplificadores Lock-in Equipos médicos (Resonadores magnéticos) Sistemas Digitales - FIUBA
Clasificación de las FPGAs Volátiles Una vez retirada la alimentación la configuración se pierde. Para subsanar esta característica se utilizan memorias externas tipo flash para conservar la configuración, la que al momento del energizado se vuelca sobre la FPGA. No volátiles Sistemas Digitales - FIUBA
Empresas fabricantes de FPGAs Xilinx Altera Lattice Semiconductor Microsemi (Actel) QuickLogic Sistemas Digitales - FIUBA
FPGA’s Generación Spartan-3 - Incluye las familias Spartan-3, Spartan-3E y Spartan-3A (Spartan-3A, Spartan-3AN, Spartan-3A DSP) - Dispositivos de la empresa Xilinx - Esta generación de FPGAs está orientada a necesidades de alto volumen, sensibles a la variable costo Sistemas Digitales - FIUBA
Características de la generación Spartan-3 FPGA’s Características de la generación Spartan-3 Sistemas Digitales - FIUBA
FPGA’s Spartan-3E: Recursos La siguiente tabla muestra los diferentes recursos disponibles en una fpga Spartan-3E Cuadro extraído de “Spartan-3 Generation FPGA User Guide” Sistemas Digitales - FIUBA
Spartan-3E: Pines de Entrada / Salida FPGA’s Spartan-3E: Pines de Entrada / Salida Cuadro extraído de “Spartan-3 Generation FPGA User Guide” Nota: Los valores entre paréntesis indican la cantidad de pines de solo lectura Sistemas Digitales - FIUBA
Spartan-3: Arquitectura FPGA’s Spartan-3: Arquitectura Consiste de 5 elementos programables fundamentales: CLBs (Configurable Logic Blocks) IOBs (Input/Output Blocks) Block RAM Multiplicadores DCM (Digital Clock Manager) Sistemas Digitales - FIUBA
Spartan-3: Arquitectura FPGA’s Spartan-3: Arquitectura CLBs Sistemas Digitales - FIUBA
FPGA’s Spartan-3: CLB Sistemas Digitales - FIUBA
Spartan-3: Diagrama simplificado de un Slice FPGA’s Spartan-3: Diagrama simplificado de un Slice Sistemas Digitales - FIUBA
Spartan-3: Slices dentro del CLB FPGA’s Spartan-3: Slices dentro del CLB Sistemas Digitales - FIUBA
FPGA’s Spartan-3: Block RAM Esta generación de FPGAs posee bloques de memoria que mediante diferentes configuraciones permiten crear RAMs, ROMs, FIFOs, LUTS grandes, buffers circulares, y registros de desplazamiento. Sistemas Digitales - FIUBA
Spartan-3: Ubicación de la Block RAM FPGA’s Spartan-3: Ubicación de la Block RAM Sistemas Digitales - FIUBA
Spartan-3: Block RAM (config. de cada bloque) FPGA’s Spartan-3: Block RAM (config. de cada bloque) Tabla extraída de “Spartan-3 Generation FPGA User Guide” Sistemas Digitales - FIUBA
Spartan-3: Block RAM total FPGA’s Spartan-3: Block RAM total Tabla extraída de “Spartan-3 Generation FPGA User Guide” Sistemas Digitales - FIUBA
Spartan-3: Block RAM FPGA’s Imagen extraída de “Spartan-3 Generation FPGA User Guide” Sistemas Digitales - FIUBA
FPGA’s Spartan-3: Block RAM Sistemas Digitales - FIUBA
Spartan-3: Multiplicador FPGA’s Spartan-3: Multiplicador Sistemas Digitales - FIUBA
Spartan-3: DCM (Digital Clock Manager) FPGA’s Spartan-3: DCM (Digital Clock Manager) Sistemas Digitales - FIUBA
FPGA’s Spartan-3: DCM Sistemas Digitales - FIUBA
FPGA’s Spartan-3: DCM Sistemas Digitales - FIUBA
FPGA’s Spartan-3: DCM Sistemas Digitales - FIUBA
FPGA’s Spartan-3: IOB Sistemas Digitales - FIUBA
FPGA’s Spartan-3: IOB Sistemas Digitales - FIUBA
FPGA’s FIN Sistemas Digitales - FIUBA