The basic unit of a Verilog HDL design. A Verilog HDL design consists of top-level modules that can contain both design information and instantiations of other modules. The information in a module can be described structurally using Continuous Assignments, behaviorally using Procedural Assignments, or both structurally and behaviorally.