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 realizar acciones muy concretas de forma rápida y eficiente.
AA a pesar de que existen desde hace algún tiempo, no son dispositivos muy habituales. Sin embargo, los FPGA cuentan con una característica que los hacen únicos en aplicaciones distintas. Los FPGA tienen la capacidad que pueden reprogramarse. Esta característica los diferencia de su competencia principal, 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 usar para tareas muy especificas.
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 mejoradas a la tecnología del silicio y al desarrollo de sistemas programables. Esto se ha convertido 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 de cómputo.
Intel, una de las grandes compañías diseñadoras de chips y procesadores del mundo, es una de las compañías que más ha invertido en el desarrollo de los FPGA. Ellos al igual que Xilinx, invierten una gran cantidad de recursos en mejorar esta tecnología y llevarla a múltiples usos en la industria. ¿Pero por qué razón? ¿Qué ventajas representan los FPGA? y ¿Cómo pueden impactar en la tecnología blockchain? Revisaremos cada uno de estos casos.
Características de los FPGA
Existen distintas razones y características por las que se invierte y desarrollan los FPGA, pero entre ellas las más relevantes son:
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.
Debajo tienes un ejemplo hipotético, para comprobar la ventaja de esta arquitectura en el mundo blockchain.
Desarrollo acelerado del hardware
Dado que los FPGA son más sencillos a nivel lógico, las compañías son capaces de traer nuevos productos al mercado de forma más rápida. Al tiempo también en el que los FPGA evolucionan y ofrecen mejores características. Esto es algo que los ASIC no pueden ofrecer, porque su desarrollo requiere ciclos de fabricación mucho más extensos.
Para las compañías dedicadas a blockchain esto es perfecto. Si por ejemplo, una compañía diseña un dispositivo de hardware FPGA para manejar Lightning Network, desarrolle y mejore dicho dispositivo le será más fácil que hacer otro desde cero. Con ello el costo general por diseño y el tiempo de salida al mercado de nuevos dispositivos disminuyendo. Una situación ventajosa para las compañías blockchain, especialmente en un mundo tecnológico que avanza a pasos agigantados.
Mejor nivel de integración en hardware
Los FPGA actuales incluyen procesadores en el chip, sistemas de entrada y salida de datos y mucho más. Más funciones dentro de la FPGA significan menos dispositivos en la placa de circuitos, lo que aumenta la fiabilidad al reducir el número de fallos de los dispositivos. Adicional a la fiabilidad, también aumenta el rendimiento, pues estos sistemas son capaces de construirse más integrados en el die.
Esta es una de las características más llamativas de los FPGA frente a los ASIC. Los ASIC son en general, una serie de chips que trabajan en paralelo dentro de una complicada tarjeta de circuitos. En dicha tarjeta hay equipos de diferentes fabricantes y con ordenes de calidad distintas. La falla de uno de esos circuitos, significa la falla de todo el ASIC. Pero en los sistemas FPGA esto es distinto. Debido a que el proceso de fabricación es más integrado, la calidad de los circuitos incluidos puede controlarse mucho mejor. Con esto, se puede mejorar sustancialmente la calidad de los dispositivos y su vida útil se alarga.
Disminución de los costos totales de operación
Los ASIC suelen ser más baratos que una solución FPGA. Pero el mantenimiento de un ASIC es mucho más costoso. De hecho, debido a la inamovilidad del hardware ASIC estos quedan rápidamente obsoletos. Sin embargo, los FPGA mejoran en muchos sentidos esta situación.
En el siguiente ejemplo, podrás comprobar el impacto que puede tener la tecnología.
En el caso de Daniel, su inversión de cientos de miles de dólares prácticamente ha quedado en el olvido. Tiene que vender los equipos, para poder reinvertir en nuevos y seguir minando. Pero Mónica tiene la oportunidad de seguir minando, y sacando provecho de esos viejos equipos que compro. Con ello su inversión en equipos FPGA tiene una mejor relación inversión/ganancia en el tiempo. Y eso es algo muy importante a la hora de invertir en una granja de minería.
Con todas las características antes explicadas es fácil darse cuenta el gran impacto que esta tecnología supone en el mundo blockchain. Se habla de readaptar equipo con un alto poder de cómputo para que realicen otras tareas que también son importantes. Ello diversifica las oportunidades de desarrollo y abre las puertas a nuevos e interesantes proyectos sobre blockchain. Porque si, blockchain es un mar de posibilidades y de futuros, y la tecnología FPGA tiene mucho que ofrecer en todo ello.
FPGA Mineros reconocidos
Los FPGA mineros más reconocidos en el mundo de la minería de criptomonedas son los siguientes:
Spartan – Xilinx
La serie Spartan de Xilinx, son de los FPGA usados para minería reconocidos máss por su versatilidad, potencia y confiabilidad. Son uno de los FPGA más ampliamente usados para la minería de criptomonedas, especialmente porque existen desarrollos de software muy útiles para sacar el máximo provecho de los mismos. Entre los puntos fuertes de los últimos modelos Spartan, está la capacidad de crearse conjunto de varios kits FPGA para hacer un minero de trabajo paralelo (conocidos como rig). Bajo esta configuración, el rendimiento de minería aumenta exponencialmente.
Stratix-Altera/Intel
Estos son otros FPGA muy usados en minería. Su principal característica es que se exigen por regla general como kits de desarrollo por lo que se puede hacer con ellos cualquier cosa. Intel adquirió la compañía Altera, pero siguió desarrollando y mejorando los modelos Stratix, y creando de menor consumo (pero menor rendimiento).
El último modelo Stratix, es Stratix10. Este modelo es capaz de usar las más nuevas tecnologías de memoria, con el fin de obtener altos niveles de rendimiento. Al igual que los Spartan, estos modelos pueden usarse en grupos de minería paralela, lo que les dota de una mayor potencia de minería final.