The covergroup construct encapsulates the specification of a coverage model. Each covergroup specification can include the following components:
A clocking event that synchronizes the sampling of coverage points
A set of coverage points
Cross coverage between coverage points
Optional formal arguments
A Cover group is defined between key words covergroup & endgroup.
A Covergroup Instance can be created using the new()
cg cg_inst = new;
The above example defines a covergroup named "cg". An instance of "cg" is declared as "cg_inst" and created using the "new" operator.