Ing. Diego Barragán Guerrero Introducción a FPGA.

Click here to load reader

download Ing. Diego Barragán Guerrero  Introducción a FPGA.

of 21

Transcript of Ing. Diego Barragán Guerrero Introducción a FPGA.

Diapositiva 1

Ing. Diego Barragn Guerrerohttp://www.matpic.comIntroduccin a FPGAQu es una FPGA?Siglas de Field Programmable Gate Array.Es un dispositivo reprogramable, que permite implementar diversos circuitos digitales en l.Basadas generalmente en memorias RAM.

Por qu usar las FPGA?Hay aplicaciones en las cuales usar un microcontrolador no es suficiente, o usar una FPGA posee costos comparables (por ejemplo, codificar y decodificar en MPEG).Actualmente hay modelos que incluyen elementos adicionales en el mismo chip.La Virtex 4 de Xilinx posee uno o ms PowerPC embebidos en el chip.

Tipos de dispositivosFPGA Field Programable Gate Array.GPP General purpose processors.DSP Digital Signal Processor.ASIC Application Specific IntegratedCircuit. Integrated.Comparacin entre dispositivosDesempeoCostoPotenciaFlexibilidadEsfuerzo de diseoASICAltoAltoBajaBajoAltoDSPMedioMedioMediaMedioMedioGPPBajoBajoMediaAltaBajoFPGAMedioMedioAltaAltaMedioVentajas de las FPGASon dispositivos reconfigurables.Bajo costo respecto a los ASIC.Los circuitos se ejecutan ms rpido que en otros dispositivos reprogramables.Al ser circuitos digitales, la ejecucin de cada bloque es en paralelo, no as en un microcontrolador.Son tiles para realizar prototipos que luego sern llevados a ASIC si es necesario.

Desventajas de las FPGAAl estar basadas en RAM, pierden su configuracin al suprimir la energa (hay soluciones a ello).Poseen retardos de propagacin mayores a los existentes en ASIC o standard cells.Un procesador de alta velocidad (~GHz) se ejecuta mucho ms rpido en ASIC que en una FPGA.

Fabricantes de FPGAsXilinx.Altera.Atmel.Actel.Lattice Semiconductor.Cypress Semiconductor.Achronix Semiconductor.QuickLogic.Arquitectura de una FPGAUna FPGA posee al menos 3 bloques:CLB: Configurable-logic blocks, donde se implementan los circuitos lgicos.IOB: Input-output block, donde se conectan las configuraciones internas con pines de entrada y salida.DCM: Digital Clock Managers, permiten entregar seales de reloj a toda la FPGA.

Arquitectura de una FPGA

SliceEl elemento esencial es el slice. En l se pueden implementar tanto circuitos combinacionales como secuenciales.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 lgicas.

Look up TableLgica combinatoria est almacenada em LUTs.Conocida tambin como Generadora de funciones.Capacidad limitada por el nmero de entradas e no por la complexidad.El atraso a travs de uma LUT es constante.

RAM distribudaLUTs son tambin utilizadas como memorias.Flexibilidad: RAM, ROM, o shift register.Rpido tiempo de acceso.Aplicaciones:Shift register.Aritmtica distribuida.Registradores.Pequeas FIFO.Lneas de atraso.

Unidades de multiplicacinMultiplicadores embarcados de 18 x 18 bit.Cantidad vara dependiendo de la FPGA:Virtex II: hasta 168Virtex II pro: hasta 556Spartan 3E: hasta 20Operaciones em complemento de 2 com signo.Operandos de 4 a 18 bits.

Herramientas de programacinVHDL (ANSI/IEEE 1076-1993)Verilog (IEEE 1364-1995)SystemC (IEEE 1666-2005)System Generator (Xilinx)DSP Builder (Altera)VHDL

Verilog

SystemC

System Generator (Xilinx)

DSP Builder (Altera)

Referencias:Volnei A. Pedroni. 2004. Circuit Design with VHDL. MIT Press, Cambridge, MA, USA.

Maxinez, D.G., Alcal, J. 2003. VHDL: el arte de programar sistemas digitales. Compaa Editorial Continental.