// 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 y switches.
  • 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.

Learn

Lecciones interactivas sobre VHDL con ejemplos ejecutables.

Concepts

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

Practice

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.

// 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.