// El proyecto en detalle

Un laboratorio de diseño digital que cabe en un navegador.

Kmila es una aplicación libre y multiplataforma para aprender y depurar VHDL sin necesidad de hardware físico. Reúne edición, simulación y visualización en un solo lugar.

Diseñar hardware digital exige ver cómo se comportan las señales en el tiempo. Tradicionalmente eso implica una FPGA, o encadenar por separado un compilador, un visor de ondas y un editor. Kmila elimina esa barrera: escribes VHDL y ves la simulación al instante, en cualquier dispositivo.

Nació como Trabajo Terminal en la Escuela Superior de Cómputo del IPN, con un objetivo claro: que aprender diseño digital no dependa del acceso a equipo costoso.

// El problema

Tres barreras entre la teoría y la práctica.

Costo

Una tarjeta FPGA cuesta miles de pesos; equipar un laboratorio para 30 estudiantes supera los $55,000 MXN.

Fragmentación

Las herramientas libres exigen instalar y configurar por separado un compilador (GHDL), un visor de ondas (GTKWave) y un editor.

Licencias

Las suites comerciales restringen sus versiones gratuitas y se atan a familias de hardware específicas.

// La solución

Todo el flujo, integrado y sin instalar.

Kmila reúne en una sola interfaz lo que antes eran tres o cuatro herramientas separadas.

  • Editor VHDL con diagnósticos y un traductor bidireccional VHDL ↔ bloques.
  • Motor de simulación con ciclos delta, equivalente a GHDL y verificado caso por caso.
  • Formas de onda, esquemático y un runtime visual con LEDs, botones e interruptores.
  • Rutas de aprendizaje y práctica guiadas, en siete idiomas.
// Cómo funciona

Del texto a la forma de onda, en cuatro etapas.

El motor de Kmila es un simulador VHDL real, escrito desde cero en .NET.

Análisis

El tokenizador y el parser convierten tu VHDL en un árbol de sintaxis abstracta (AST).

Elaboración

Se resuelven entidades, arquitecturas, paquetes y librerías IEEE en un modelo ejecutable.

Simulación

El motor de ciclos delta planifica procesos y señales tick a tick, con atributos como 'event y 'stable.

Salida

Cada transición se registra y se convierte en formas de onda interactivas y archivos VCD compatibles con GTKWave.

// Aprender haciendo

Pensado para enseñar, no solo para simular.

Tres pistas complementarias acompañan al estudiante desde la primera señal.

Aprender

Lecciones interactivas sobre VHDL con ejemplos ejecutables.

Conceptos

El modelo de ejecución del hardware: secuencial, concurrente y el paralelismo real.

Práctica

Retos de código con casos de prueba que se corrigen automáticamente.

// Comparativa

Cómo se compara Kmila.

Frente a las alternativas típicas en un curso de diseño digital.

Característica Kmila GHDL + GTKWave ModelSim Vivado
Gratis y de código abierto✓✓——
Sin FPGA / hardware✓✓✓—
Editor + simulación + ondas integrados✓—✓✓
Multiplataforma (incluye móvil)✓———
Se ejecuta en el navegador✓———
Pistas de aprendizaje integradas✓———
// Confianza

Un motor que puedes verificar.

La salida del simulador de Kmila se compara automáticamente contra GHDL, el simulador VHDL de referencia de código abierto. En el banco de pruebas actual, los 148 de 148 casos producen resultados idénticos sobre miles de muestras de señales, sin una sola discrepancia.

// Hacia dónde va

Trabajo futuro.

Líneas abiertas más allá del alcance actual.

Investigación

Más lenguajes HDL

Extender el parser modular a Verilog / SystemVerilog reutilizando el mismo motor.

Investigación

Puente a FPGA física

Integrar cadenas abiertas (Yosys, nextpnr) para llegar a FPGAs de bajo costo como iCE40.

Exploración

Visualización 3D

Interfaces 3D del circuito y sus recursos, sobre los proyectos Unity ya iniciados.

// Preguntas frecuentes

Preguntas frecuentes

¿Qué es Kmila?

Kmila es una aplicación gratuita y de código abierto para aprender y depurar VHDL sin hardware físico. Integra edición, simulación y visualización en un solo lugar, en escritorio, web y móvil.

¿Necesito una FPGA?

No. Kmila simula tus diseños VHDL por software, así que puedes escribir, simular y depurar sin ninguna tarjeta FPGA.

¿Es gratis? ¿Qué licencia usa?

Sí, es totalmente gratuito y de código abierto bajo licencia MIT. El repositorio público estará disponible próximamente.

¿Funciona en móvil?

Sí. Kmila se ejecuta de forma nativa en Windows, macOS, Android e iOS, y en el navegador o con Docker sobre Linux.

¿En qué se diferencia de GHDL, ModelSim o Vivado?

Kmila reúne editor, simulador, formas de onda y rutas de aprendizaje en una sola app multiplataforma que se ejecuta en el navegador, sin instalar herramientas por separado ni depender de hardware. Su motor está verificado contra GHDL: 148 de 148 casos idénticos.

¿Soporta VHDL-2008?

Kmila implementa un simulador VHDL escrito desde cero en .NET, con soporte de las construcciones más usadas en cursos y laboratorios. Consulta la documentación para el detalle de características.

¿Recibirá mantenimiento a largo plazo?

Sí. Kmila es un proyecto vivo con un compromiso de mantenimiento a largo plazo: seguirá recibiendo actualizaciones, correcciones y nuevas capacidades de forma continua, con su documentación creciendo y su código abierto (MIT) publicándose en GitHub.

// Abierto por diseño

Libre, auditable y hecho en el IPN.

Kmila es un proyecto de código abierto desarrollado como Trabajo Terminal (TT 2026-B059) en la ESCOM del Instituto Politécnico Nacional.

Código abierto (MIT). El repositorio será público próximamente.

An unhandled error has occurred. Reload 🗙