SCAsrt: An on-line assertion library for SystemC TLM 2.0
Resumen
Electronic systems have become more and more complicated in recent years, demonstrated by the increasing gate counts in designs and the invested effort validation and verification of the same. Early architectural choices are harder to make and have a larger impact in time to market, resulting in the widespread adoption of high level modeling for design prototyping and specification. The objective of this thesis is to design and implement an on-line assertion library for validating the correctness of these high level models. The library was designed to implement assertions for the SystemC TLM 2.0 modeling facilities, using native C++ syntax and checking the assertions live as the model is simulated and without modifying SystemC’s kernel, being these two features the main differentiation factor from previous works. The library was validated using unit testing and a comparison to the existing SVA language. A proof of concept exercise was applied to an existing TLM LT model, where some features were validated using the assertion library. The performance impact of the assertion usage is of an increase of 30% on model simulation time, and a fixed increase in total memory usage. Los sistemas electrónicos han venido aumentando en complejidad en los últimos años, hecho demostrado por el aumento en la cantidad de compuertas en diseños y el esfuerzo invertido en la verificación y validación de éstos. Decisiones arquitecturales al principio del proyecto se vuelven más difíciles de tomar y tienen un mayor impacto en el tiempo de llegada al mercado, resultando en la adopción general del modelado de alto nivel para el prototipado de diseños y su especificación formal. El objetivo de esta tesis es diseñar e implementar una biblioteca de aserciones en línea para validar la correctitud de estos modelos de alto nivel. La biblioteca fue diseñada para implementar aserciones para SystemC TLM 2.0, usando la sintaxis nativa de C++ y validando las aserciones en vivo conforme el modelo es simulado y sin modificar el kernel de SystemC, siendo estos dos aspectos la principal diferenciación con respecto a trabajos anteriores. La biblioteca fue validad usando pruebas unitarias y una comparación con el lenguaje SVA ya existente. Una prueba de concepto fue aplicada a un modelo TLM LT, donde algunas características fueron validadas usando la biblioteca de aserciones. El impacto en el desempeño por el uso de la biblioteca se midió en un incremento de un 30% al tiempo de ejecución, y un incremento fijo en el uso de memoria total.
Descripción
Proyecto de Graduación (Maestría en Electrónica), Instituto Tecnológico de Costa Rica, Escuela de Ingeniería Electrónica, 2022.
Compartir
Métricas
Colecciones
El ítem tiene asociados los siguientes ficheros de licencia: