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

Linux en LiteX: Construyendo un SoC con Buildroot y Tang Nano 20K

Uno de los objetivos que siempre se tiene al trabajar con sistemas embebidos es correr un sistema operativo (OS), y siempre hay uno por excelencia para este tipo de plataformas —y más importante aún, de software libre— como lo es Linux, además de que existen muchas herramientas que nos ayudan a adaptar el sistema a nuestras necesidades. Limitaciones de la Tang Nano 20K Bueno, la Tang Nano 20K es bastante limitada en conceptos de FPGA, algo entendible al tratarse de una FPGA de bajo costo....

junio 12, 2025 · 5 min · Fabian Alvarez