APRENDE A UTILIZAR UN FPGA CON LA AYUDA DE MI BLOG

 FPGA

FPGA son las siglas de Field Programmable Gate Array,o en español Matriz de Puertas Programables en Campo. Estos son unos diminutos dispositivos semiconductores que tienen la capacidad de programarse para realizarse acciones muy concretas de forma rápida y eficiente.


A pesar de que existen desde hace algún tiempo, no son dispositivos muy usuales. Sin embargo, los FPGA cuentan con una característica que los hacen únicos en distintas 
aplicaciones. Los FPGA tienen la capacidad que pueden reprogramarse. Esta característica los diferencia de su principal competencia, los dispositivos ASIC. Pues los ASIC se fabrican a medida y no pueden reprogramarse una vez han sido diseñados, por lo que; solo pueden usarse para tareas muy específicas.

A diferencia de otros chips, las FPGA no tienen un propósito. Son como una protoboard. De hecho se realizan actividades de alta velocidad (aceleración por hardware) y proyectos con muchas entradas y salidas (procesamiento paralelo).

¿Cómo funcionan?

Se componen de bloques lógicos universales y bloques de enrutado universales.

Un bloque lógico universal -CLB (Configurable Logic Block) o Gowin las llama CFU (Configurable Function Unit)- puede emular cualquier elemento digital. Dentro hay un FlipFlop, una puerta lógica universal (LUT), una pequeña ALU y un multiplexor (mux). Tú decides qué función le asignas en tu circuito.

A continuación se muestra un ejemplo de la programación de un FPGA.



Una vez visto el video anterior, se aplicará una pequeña encuesta sobre los FPGA's

Inicialmente los FPGA se caracterizaban por ser lentos, consumir grandes cantidades de energía y tener poca capacidad de cómputo paralelo. Sin embargo, esto ha cambiado gracias a las mejoras introducidas a la tecnología del silicio y al desarrollo de sistemas programables. Esto se ha traducido en una mejora sustancial en términos de velocidad y capacidad de trabajo en paralelo. Transformando a los FPGA en candidatos perfectos para aplicaciones de alta demanda de poder cómputo.

Arquitectura programable

Los FPGA a diferencia de otras arquitecturas, son programables. Esto les otorga una gran flexibilidad de uso, puesto que su programación puede alterarse para mejorarles o solucionar fallas. Esto permitiría por ejemplo; optimizar un FPGA para manejar de mejor manera procesos complejos tras haberse realizado un análisis y optimización de su programación inicial. Con ello, la nueva versión del software del FPGA permitiría mejorar el rendimiento o solucionar problemas de seguridad detectados, una situación imposible usando arquitecturas como la ASIC.

Normalmente la programación de los FPGA se realiza en lenguajes de programación de bajo nivel llamados Verilog o VHDL. Ambos sirven para “describir” al FPGA la forma en cómo debe manejar el hardware del mismo. Sin embargo, muchas empresas ofrecen sistemas de programación de más alto nivel que facilitan esta tarea aún más.

Escuchemos el siguiente PODCAST:

Una vez ESCUCHADO Y VISTA la información anterior, se te aplicará una pequeña encuesta sobre los FPGA's

إرسال تعليق

Post a Comment (0)

أحدث أقدم