Eugenio Villar
Professor Eugenio Villar obtained his PhD in Electronics many years ago. Since 2002, he has been a Professor in the TEISA Department at the University of Cantabria, where he is responsible for the Embedded Systems Design (HW/SW) area within the Microelectronics Engineering Group. His research has always focused on the specification and design of electronic systems. He is currently working on the use of Artificial Intelligence in the co-design and simulation of model-driven systems. Professor Villar has authored over 100 papers published in national and international conferences and journals. He has participated in electronic systems design projects under European (FP and Horizon Europe) and transnational programs, such as Medea-Catrene, Artemis, ECSEL, KDT, and Chips JU. He is the University of Cantabria's representative in Chips JU and the Director of the Cantabria Chip Chair.
Session
The verification of integrated systems traditionally relies on detailed Register Transfer Level (RTL) simulations to ensure functional correctness before hardware implementation. While RTL simulation provides cycle-accurate behavior and can even achieve event-level precision when combinational delays are modeled, it suffers from extremely long execution times. Simulating complex software workloads such as booting an operating system may require several days of simulation time.
Instruction Set Simulators (ISS) provide a faster alternative for software execution. In the RISC-V ecosystem, Spike is the reference ISS and can achieve simulation speeds several orders of magnitude faster than equivalent RTL processor models. However, replacing the processor RTL model with an ISS introduces temporal discrepancies that may affect the accuracy of system-level simulations. This work presents Spike-RTL, a HW/SW co-simulation framework that integrates the Spike ISS with RTL models of the remaining hardware components. The tool supports both Verilog simulation and C/SystemC HW models (e.g. generated using Verilator). Experimental results show simulation speedups of up to 40× compared to Verilog simulation and 4× compared to Verilator, while maintaining timing errors on the order of 10%. The framework also introduces configurable timing models for instruction execution, cache miss latency integration, and variable-granularity synchronization mechanisms between ISS and RTL components.