EMiX es un framework de emulación escalable que permite superar los límites de una sola FPGA para validar diseños de chips multi-core antes de su fabricación. La emulación a nivel de FPGA es un paso crucial en el desarrollo de nuevos procesadores, ya que permite probar el hardware y software en condiciones reales antes de costlyos pasos de fabricación. Sin embargo, los sistemas modernos con múltiples núcleos requieren cada vez más recursos de hardware (lógica, memoria, conectividad) que exceden la capacidad de una sola FPGA. EMiX aborda este problema distribuirdo la arquitectura multi-core completa en varias FPGAs interconectadas, dividiendo el diseño monolítico en componentes que se ejecutan en paralelo. El framework实现una partición sistemática del sistema y usa las conexiones de alta velocidad entre FPGAs para mantener la coherencia y el rendimiento sin redesignar el RTL fundamental. En la práctica, EMiX ha demostrado emular exitosamente una arquitectura de 64 núcleos RISC-V ejecutando Linux, desplegada sobre ocho FPGAs Alveo U55c de AMD/Xilinx, siendo escalable tanto en número de núcleos como de FPGAs. Este enfoque permite a los diseñadores validar sistemas completos que antes eran imposibles de emulate en tiempo razonable, reduciendo significativamente el tiempo de desarrollo y los costos de ingeniería. Entre las aplicaciones principales se encuentran la validación de sistemas operativos, drivers, aplicaciones de usuario y flujos de trabajo de compilación para nuevos procesadores. También permite a investigadores probar arquitecturas innovnodas antes de comprometerse con la fabricación del chip. Las limitaciones incluyen la complejidad de configurar el sistema distribuido, la latencia adicional entre FPGAs, y que no todas las arquitecturas se benefレクトáng linearly. Alternativas incluyen emulación en software (más lenta pero más flexible) o simulación abstracta (más rápida pero menos precisa). EMiX se publicará como plataforma de código abierto, lo que permitirá su adopción y extensión por la comunidad de investigación.
Nuevo framework permite emular chips multi-core usando varias FPGAs
