Construye una GPU en casa con 8.192 chips RISC-V: consumirá más de 2.000 W y su primera versión moverá gráficos a 320 × 200 píxeles

Una GPU casera con chips RISC-V
Una GPU casera con chips RISC-VMontaje / Matthias Balwierz

Más que competir con NVIDIA o AMD, el objetivo es demostrar que es posible construir una arquitectura gráfica funcional utilizando componentes baratos y hardware abierto basado en RISC-V.

Fabricar una tarjeta gráfica es una de las tareas más complejas de la industria tecnológica, ya que detrás de cada GPU hay años de desarrollo, miles de ingenieros y fábricas capaces de producir chips avanzados.  

Por eso resulta difícil imaginar que alguien pueda construir un sistema gráfico desde el garaje de su casa utilizando componentes relativamente sencillos y baratos. Sin embargo, eso es lo que está haciendo Matthias Balwierz, más conocido como Bitluni. 

Su objetivo es demostrar que es posible crear una arquitectura gráfica completamente funcional a partir de miles de pequeños microcontroladores basados en la arquitectura abierta RISC-V.

No solo pretende construir una GPU formada por decenas de miles de chips, sino que además ha conseguido que esa misma estructura haga las veces de pantalla, convirtiendo el propio sistema de procesamiento en el lugar donde aparecen los gráficos.

Una GPU construida con miles de microcontroladores

Tarjeta gráfica con chip RISC-V
Tarjeta gráfica con chip RISC-VBitluni / YouTube

La base del proyecto son 8.192 microcontroladores CH570, unos pequeños chips RISC-V que normalmente se utilizan en dispositivos electrónicos de bajo consumo y tareas sencillas de control. 

Bitluni decidió emplearlos porque son económicos, fáciles de conseguir y permiten experimentar con arquitecturas distribuidas sin recurrir a un procesador gráfico convencional.

Al final pretende alcanzar alrededor de 64.000 microcontroladores, suficientes para generar una imagen con resolución 320 × 200 píxeles, una cifra muy modesta comparada con cualquier monitor actual, pero suficiente para demostrar que el concepto funciona. Lo interesante es que cada uno de esos chips no trabaja de forma aislada. 

Todos colaboran repartiendo las tareas de procesamiento gráfico y sincronizando la información necesaria para construir la imagen final, formando una enorme red de pequeños chips que actúan como si fueran una única GPU.

Consigue combinar la GPU y la pantalla en un mismo sistema

Uno de los aspectos más originales del proyecto es que la tarjeta gráfica y la pantalla forman parte del mismo conjunto. Y es que cada microcontrolador controla un LED RGB, que representa un píxel de la imagen. 

Cuando el chip calcula el color que debe mostrar, envía esa información directamente al LED que tiene asociado. En lugar de generar una señal de vídeo para un monitor externo, la propia GPU muestra el resultado de sus cálculos en tiempo real.

Aunque la resolución es muy reducida, sirve para visualizar cómo trabajan miles de chips de manera coordinada y convierte el proyecto en una excelente herramienta para comprender el funcionamiento interno de una arquitectura gráfica.

Cabe señalar que construir una máquina de estas características requiere bastante más que miles de microcontroladores. Bitluni ha utilizado un CH570 Dev Kit para desarrollar y probar el software de los chips antes de integrarlos en el sistema definitivo.

La alimentación corre a cargo de una DP100 Mini PSU, apoyada por un cargador USB-C de 65 W y un cable USB-C de 100 W, que permiten suministrar energía durante las distintas fases de desarrollo y pruebas.

Para el montaje de las placas emplea una estación de soldadura Aifen A9ED, junto con flux de limpieza, imprescindible para mejorar la calidad de las soldaduras, además de un libro de resistencias con 170 valores, utilizado para seleccionar los componentes electrónicos adecuados en cada circuito.

También recurre a pinzas de titanio, que facilitan la manipulación de piezas muy pequeñas sin transmitir calor, una extensión AWG de calibre 12 para soportar corrientes elevadas y el Tang Primer 25K, usado durante parte del proceso de ensamblaje.

Otro elemento destacado es Pixel Pump, la herramienta desarrollada para programar de forma masiva los microcontroladores. Su primera versión ya ha sido retirada, pero Bitluni trabaja en Pixel Pump 2, que simplificará aún más la carga del firmware en miles de chips.

Un experimento que va mucho más allá del rendimiento

GPU casera
GPU caseraBitluni / YouTube

Cuando el proyecto esté terminado contará con unos 64.000 microcontroladores y necesitará más de 2.000 vatios para funcionar, una cifra muy superior al consumo de una tarjeta gráfica. 

Sin embargo, el objetivo nunca ha sido crear una GPU rápida o eficiente, sino que la intención de Bitluni es demostrar hasta dónde puede llegar el hardware abierto basado en RISC-V y explorar nuevas formas de diseñar sistemas gráficos distribuidos. 

Así que su trabajo también pone de relieve el potencial del movimiento maker, donde la creatividad y la experimentación pueden dar lugar a ideas que difícilmente surgirían dentro del desarrollo comercial tradicional.

Aunque esta GPU jamás sustituirá a las soluciones de los grandes fabricantes, sí demuestra que todavía quedan muchas formas diferentes de entender cómo se construye una máquina capaz de generar gráficos.

Más información sobre: