A SystemC Semantics in Guarded Assignment Systems and Its Applications with VERDS
Naiju Zeng, Wenhui Zhang · 2013
SystemC is an IEEE standard system-level language and has been widely adopted in development of embedded systems. Due to the complexity of SystemC specifications, formal verification of SystemC is still at a preliminary stage and no complete formal semantics for SystemC exists so far. This work presents an executable semantics of a subset of SystemC in guarded assignment systems and its applications with the symbolic model checker VERDS. The semantics preserves most of the structures of SystemC for hardware-software co-design. And the guarded assignment system is a general model which is widely supported by many model checkers. Among all the symbolic model checkers, VERDS is a competitive one with the new data structure ternary boolean diagrams (TBDs). The scalability and the efficiency of the applications of our semantics with VERDS have been demonstrated by experimental results.