Libre-SOC, el primer chip híbrido abierto al estilo CDC 6600
El proyecto Libre-SOC dio a conocer hace poco que han alcanzado la etapa de producción de la primera muestra de prueba del SoC de CPU/GPU híbrido de código abierto basado en OpenPOWER al estilo CDC 6600, en la que las instrucciones de CPU, VPU y GPU no están separadas y se ofrecen en una única ISA para reducir el tamaño y la complejidad del chip.
Este es el primer ASIC Power ISA totalmente independiente fuera de IBM que se convierte en Silicon en 12 años, ya que ellMicrowatt pasó a Skywater 130nm en marzo; sin embargo, también es desarrollado por IBM, como un diseño de referencia excepcionalmente bien hecho y que Libre-SOC utilizó para la verificación.
El proyecto se desarrolló originalmente con el nombre Libre RISC-V, pero pasó a llamarse Libre-SOC después de la decisión de reemplazar RISC-V con OpenPOWER 3.0 Instruction Set Architecture (ISA).
El desarrollo de Libre-SOC fue financiado por la Fundación NLnet, que destinó 400 mil euros para crear un chip completamente abierto como parte de un programa para crear soluciones técnicas fundamentales verificables y confiables. El chip tiene un tamaño de 5.5×5.9 mm e incluye 130 mil puertas lógicas.
El proyecto tiene como objetivo crear un sistema completo, totalmente abierto y libre de regalías en un chip (SoC) que se pueda usar en computadoras de placa única, netbooks y varios dispositivos portátiles. Además de las instrucciones específicas de la CPU y los registros de propósito general, Libre-SOC proporciona en un solo bloque funcional de procesador las capacidades para realizar operaciones vectoriales y cálculos especializados inherentes a la VPU y la GPU.
El chip utiliza la arquitectura de conjunto de instrucciones OpenPOWER, la extensión Simple-V con instrucciones para vectorizar y procesar datos en paralelo, así como instrucciones especializadas para convertir a ARGB y realizar operaciones 3D típicas.
“Desarrollamos este ASIC en la arquitectura Power debido a su pedigrí de supercomputación y al compromiso y la estabilidad de décadas que IBM y otros miembros de la Fundación OpenPOWER han mantenido”, dijo Luke Kenneth Casson Leighton , desarrollador líder y coordinador de proyectos de Libre-SOC. «Sobre esta base sólida, podemos construir una CPU-VPU-GPU 3D híbrida confiable y eficiente, y nuestro próximo ASIC de prueba incluirá extensiones de vector de estilo Draft Cray, SVP64».
Las instrucciones de la GPU se centran en el uso con la API de gráficos Vulkan y la VPU en la aceleración de la conversión y decodificación YUV-RGB de MPEG1/2, MPEG4 ASP (xvid), H.264, H.265, VP8, VP9, AV1, MP3, Formatos AC3, Vorbis y Opus.
Además de que se está desarrollando un controlador gratuito para Mesa que utiliza las capacidades de Libre-SOC para proporcionar una implementación de software acelerada por hardware de la API de gráficos Vulkan. Por ejemplo, los sombreadores Vulkan se pueden traducir JIT para su ejecución utilizando instrucciones especializadas disponibles en Libre-SOC.
En el próximo prototipo de prueba, se planean implementar la extensión SVP64 (Vectorización de longitud variable), que permite utilizar Libre-SOC como procesador vectorial (además de 32 registros de propósito general de 64 bits, 128 registros para cálculos vectoriales será proporcionado). El primer prototipo incluye solo un núcleo, operando a una frecuencia de 300 Mhz, pero dentro de dos años se planea lanzar una versión de 4 núcleos, luego una de 8 núcleos y, a largo plazo, una versión de 64 núcleos.
El primer lote del chip se fabricará en TSMC utilizando la tecnología de proceso de 180 nm. Todos los desarrollos del proyecto se distribuyen bajo licencias libres, incluidos archivos en formato GDS-II con una descripción de la topología completa del chip, suficiente para iniciar nuestra propia producción. El Libre-SOC será el primer chip totalmente independiente no basado en IBM Power.
El desarrollo utilizó el lenguaje de descripción de hardware nMigen (HDL basado en Python, sin usar VHDL y Verilog), la biblioteca de células estándar FlexLib del proyecto Chips4Makers y el kit de herramientas VLSI Coriolis2 gratuito para convertir de HDL a GDS-II.
Finalmente para quienes estén interesados en poder conocer más al respecto, pueden consultar los detalles del proyecto en su sitio web oficial o para quienes estén interesados en el código fuente pueden consultar este desde el siguiente enlace.
Fuente: https://openpowerfoundation.org