ABSTRACT

374After a few decades of research and experimentation, register-transfer dialects of two languages—SystemVerilog and VHDL—have emerged as the industry standard starting point for automatic large-scale digital integrated circuit synthesis. Writing register-transfer-level descriptions of hardware designs remains a largely human process, and hence the clarity, precision, and ease with which such descriptions can be coded correctly have a profound impact on the quality of the final product and the speed with which the design can be created.

While the efficiency of a design (e.g., the speed at which it can run or the power it consumes) is obviously important, its correctness is paramount, consuming the majority of the time (and hence money) spent during the design process. In response to this challenge, a number of so-called verification languages have arisen. These have been designed to assist in a simulation-based or formal verification process by providing mechanisms for checking temporal properties, generating pseudorandom test cases, and for checking how much of a design’s behavior has been exercised by the test cases.

Through examples and discussion, this chapter describes the two main design languages—VHDL and SystemVerilog—and SystemC, a language currently used to build large simulation models.