Descubriendo LiteX: Construyendo SoCs como si fueran LEGO

Si alguna vez has intentado construir un microprocesador desde cero, sabes que es un campo de batalla lleno de hazards, control de memoria y manejo de instrucciones. Un verdadero caos digital. En medio de ese embrollo, me topé con una herramienta que me cambió la forma de ver el desarrollo en FPGA: LiteX. ¿Qué es LiteX? LiteX es un framework para el diseño de SoCs (System on Chip) en FPGA, que transforma el proceso en algo similar a armar bloques de LEGO: eliges un procesador, añades controladores, memorias, periféricos, y ¡listo!...

mayo 20, 2025 · 5 min · Fabian Alvarez

Diseño de un microprocesador RISC-V con integración GPIO

Introducción a RISC-V y el conjunto de instrucciones 32I RISC-V es una arquitectura de conjunto de instrucciones (ISA) abierta y libre que ha ganado gran popularidad en el diseño de microprocesadores debido a su flexibilidad y eficiencia. A diferencia de las arquitecturas propietarias, RISC-V permite a desarrolladores e investigadores crear procesadores personalizados sin restricciones de licenciamiento. ¿Qué es RISC-V? RISC-V es una arquitectura basada en el principio de computación de conjunto de instrucciones reducido (RISC), lo que significa que utiliza un conjunto de instrucciones simplificado para mejorar la eficiencia del hardware....

febrero 18, 2025 · 3 min · Fabian Alvarez

Salida HDMI con LiteX en la Tang Nano 9K

La salida HDMI en plataformas FPGA es una forma poderosa de generar gráficos en tiempo real directamente desde hardware personalizado. En este artículo exploraremos cómo implementar salida HDMI utilizando el framework LiteX en la Tang Nano 9K, una FPGA de bajo costo y sorprendente versatilidad. Ya he escrito una entrada sobre cómo inicializar LiteX y crear un SoC básico en la entrada anterior. 🧱 Arquitectura HDMI en LiteX Por defecto, el archivo tangnano9k....

mayo 25, 2025 · 4 min · Fabian Alvarez

Primeros pasos en el desarrollo del microcontrolador RISC-V

Selección del hardware y herramientas de desarrollo En este segundo artículo de la serie, comenzaré con los primeros pasos en el desarrollo del microcontrolador basado en RISC-V 32I. Para esto, he decidido utilizar una Tang Nano 20K como plataforma de implementación. Sin embargo, dependiendo del uso de recursos, podría evaluar cambiar a una Tang Nano 9K si resulta suficiente para los requerimientos del diseño. Dado que la FPGA seleccionada pertenece a la familia Tang Nano, esto limita el entorno de desarrollo a herramientas compatibles....

febrero 19, 2025 · 2 min · Fabian Alvarez

ASIC Tamagothi un proyecto para TinyTapeout

Para el proyecto personal TinyTapeout 4, diseñé un ASIC Tamagotchi que reside en el chip. Dado el espacio limitado en el chip, este Tamagotchi es simple pero funcional. Además, representa un excelente punto de partida para aprender sobre el diseño de ASIC y explora conceptos interesantes, como la implementación de la comunicación serial UART y la generación de números pseudoaleatorios, que mencioné en un post anterior. Acerca del Tamagotchi El diseño del Tamagotchi es muy sencillo....

octubre 7, 2024 · 4 min · Fabian Alvarez