{"title":"Operational semantics for Verilog","authors":"J. Dimitrov","doi":"10.1109/APSEC.2001.991473","DOIUrl":null,"url":null,"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.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Eighth Asia-Pacific Software Engineering Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APSEC.2001.991473","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13
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.