Seguimiento
Uso de métodos que obtienen el grado de cobertura:
- get_coverage
- get_inst_coverage
Si solamente hemos hecho una instancia del covergroup, no notaremos diferencias entre ambos métodos.
Podremos saber la cobertura del covergroup o de los coverpoints según el uso que hagamos de dichos métodos.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
covergroup COV_salidas; coverpoint mports.px.data_out { bins bin1 = {[44:56]}; bins others[] = default; } as:coverpoint {mports.px.vacio,mports.px.wr_en,mports.px.rd_en} { bins e1w0r1={3'b101}; bins e1w1r1={3'b111}; bins e0w1r1={3'b011}; } endgroup; .... if (COV_salidas.get_coverage()<90) .... if (COV_salidas.ae.get_inst_coverage()<80) |
También se puede util el «system task» $get_coverage que nos daría el grado de cobertura de todos los covergroups instanciados.
Informes
Suelen ser muy herramienta dependientes. Vamos a ver dos ejemplos:
En el primero de ellos vamos a ver como obtener los informes de cobertura en una herramienta accesible a través de Edaplayground.
En este segundo ejemplo utilizamos las herramientas de Questasim: