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

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

Convierte un Joystick PS2 en Gamepad USB con Feather 32u4

En esta guía aprenderás cómo interfazar un joystick PS2 genérico con una Feather 32u4 para que funcione como un gamepad USB en Windows y Steam. Cubriremos el hardware, el cableado, el firmware en Arduino IDE y la configuración en Steam. Motivación Olvidé mi joystick de Xbox 360 en casa, pero tengo un joystick PS2 que compré hace años para un proyecto retro. Con una Feather 32u4 y un poco de código, podemos convertirlo en un gamepad USB compatible con cualquier PC....

junio 1, 2025 · 8 min · Fabian Alvarez