CHAPTER THREE

Verilog Coding

3.1 INTRODUCTION TO BASIC VERILOG CONCEPTS

Verilog is a widely used hardware description language (HDL) for design of digital circuits. It can also be used for modeling analog circuits. Whichever it is used for, the basic concept of Verilog remains the same.

When a designer writes Verilog code, it is important to know some of the basic symbols used in Verilog.

3.1.1 Verilog Syntax

Verilog is a HDL that allows a designer to describe a hardware design. As with all languages, there is a required syntax when writing Verilog code.

All Verilog syntax begins with a module declaration. A module is essentially a “box” or “unit” containing the design. The module declaration must include the module's interface ports:

module design_module_name (interface_port_list);

whereby design_module_name is the name of the module and interface_port_list is a list of all the input, output, and inout ports to the module. Each port is separated by a comma (,).

The type of interface port is declared. It can be input, output, or inout for bidirectional ports:

module DUT (A, B, C, D, E);
input A, B, C;
inout D;
output E;

If a port has more than one bit, the declaration must use symbol “[“ and “]” to denote the bus width.

module DUT (A, B, C, D, E);
input [3:0] A, B;
input C;
inout [7:0] D;
output E;

3.1.2 Comments

When writing HDL code for a design, it is a good writing habit for the designer to use comments. It is a good method of indicating to a reader what the code is being ...

Get Verilog Coding for Logic Synthesis now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.