covergroup是对coverage model的一种包装,每个covergroup可以包含: 1) sync event来触发采样, 2) 很多coverpoint, 3) cross coverpoint, 4) 可选的formal arguments, 5) 很多options. covergroup与class类似,也是需要new出来对象,本身定义的只是一个原型,covergroup可以被定义在 package,module,program,interface,checker或者cl