Title :
Operational semantics for Verilog
Author :
Dimitrov, Jordan
Author_Institution :
Software Technol. Res. Lab., De Montfort Univ., Leicester, UK
Abstract :
We consider a non-trivial subset of Verilog HDL and construct an operational semantics for it. Only a handful of convenient but nonessential statements are left out for the sake of brevity. However, all challenging parts of the language, including Behavioural and RTL constructs, are considered. The semantics we give is fully parallel unlike the semantics built into most Verilog simulators. This allows us to eliminate all side effects caused by employing nondeterminism instead of parallelism. Another benefit of the parallelism in our framework is the ability to better model real hardware. Several healthiness conditions are proven to support the validity of the proposed semantics. We use these healthiness conditions to formally underpin our understanding of and increase our confidence in the semantics we give.
Keywords :
hardware description languages; programming language semantics; RTL constructs; Verilog HDL; behavioural constructs; healthiness conditions; operational semantics; Automatic control; Automatic testing; Concurrent computing; Data structures; Formal verification; Hardware design languages; High level languages; Laboratories; Modems; Parallel processing;
Conference_Titel :
Software Engineering Conference, 2001. APSEC 2001. Eighth Asia-Pacific
Print_ISBN :
0-7695-1408-1
DOI :
10.1109/APSEC.2001.991473