Module Definition
dashboard | hierarchy | modlist | groups | tests | asserts

Module : usbdev_usbif
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.06 96.55 92.77 90.91 100.00

Source File(s) :
/workspace/default/sim-vcs/../src/lowrisc_ip_usbdev_0.1/rtl/usbdev_usbif.sv

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut.usbdev_impl 95.06 96.55 92.77 90.91 100.00



Module Instance : tb.dut.usbdev_impl

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.06 96.55 92.77 90.91 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
89.64 96.12 91.55 68.75 91.79 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
94.39 97.53 79.85 94.55 100.00 100.00 dut


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
u_usb_fs_nb_pe 90.63 96.98 91.32 70.27 94.60 100.00
u_usbdev_linkstate 86.14 91.41 91.76 66.67 80.88 100.00


Since this is the module's only instance, the coverage report is the same as for the module.
Line Coverage for Module : usbdev_usbif
Line No.TotalCoveredPercent
TOTAL878496.55
CONT_ASSIGN13411100.00
CONT_ASSIGN15200
CONT_ASSIGN15311100.00
CONT_ASSIGN15511100.00
CONT_ASSIGN15611100.00
CONT_ASSIGN15711100.00
ALWAYS16066100.00
CONT_ASSIGN18211100.00
ALWAYS18666100.00
ALWAYS19888100.00
CONT_ASSIGN21511100.00
CONT_ASSIGN21611100.00
CONT_ASSIGN22111100.00
CONT_ASSIGN22411100.00
CONT_ASSIGN22611100.00
CONT_ASSIGN22711100.00
CONT_ASSIGN22811100.00
CONT_ASSIGN22911100.00
CONT_ASSIGN23111100.00
CONT_ASSIGN23511100.00
CONT_ASSIGN23711100.00
CONT_ASSIGN24311100.00
ALWAYS24655100.00
CONT_ASSIGN25611100.00
CONT_ASSIGN25811100.00
CONT_ASSIGN26011100.00
CONT_ASSIGN26111100.00
CONT_ASSIGN26611100.00
CONT_ASSIGN27600
CONT_ASSIGN27711100.00
CONT_ASSIGN28111100.00
ALWAYS28322100.00
ALWAYS29033100.00
CONT_ASSIGN29711100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN30011100.00
CONT_ASSIGN40311100.00
CONT_ASSIGN40411100.00
ALWAYS40755100.00
ALWAYS41633100.00
ALWAYS456161381.25
CONT_ASSIGN47311100.00
CONT_ASSIGN47411100.00
CONT_ASSIGN47511100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_usbdev_0.1/rtl/usbdev_usbif.sv' or '../src/lowrisc_ip_usbdev_0.1/rtl/usbdev_usbif.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
134 1 1
152 unreachable
153 1 1
155 1 1
156 1 1
157 1 1
160 1 1
161 1 1
163 1 1
167 1 1
168 1 1
169 unreachable
170 unreachable
172 unreachable
176 1 1
182 1 1
186 1 1
188 1 1
189 1 1
190 1 1
191 1 1
192 1 1
198 1 1
199 1 1
200 1 1
201 1 1
203 1 1
204 1 1
206 1 1
207 1 1
MISSING_ELSE
215 1 1
216 1 1
221 1 1
224 1 1
226 1 1
227 1 1
228 1 1
229 1 1
231 1 1
235 1 1
237 1 1
243 1 1
246 1 1
247 1 1
248 1 1
250 1 1
251 1 1
256 1 1
258 1 1
260 1 1
261 1 1
266 1 1
276 unreachable
277 1 1
281 1 1
283 1 1
284 1 1
290 1 1
291 1 1
293 1 1
297 1 1
298 1 1
300 1 1
403 1 1
404 1 1
407 1 1
408 1 1
409 1 1
410 1 1
411 1 1
MISSING_ELSE
416 1 1
417 1 1
419 1 1
456 1 1
457 1 1
458 1 1
459 1 1
462 2 2
463 1 2
MISSING_ELSE
465 2 2
466 1 2
MISSING_ELSE
468 2 2
469 1 2
MISSING_ELSE
473 1 1
474 1 1
475 1 1


Cond Coverage for Module : usbdev_usbif
TotalCoveredPercent
Conditions837792.77
Logical837792.77
Non-Logical00
Event00

 LINE       134
 EXPRESSION (connect_en_i & usb_sense_i)
             ------1-----   -----2-----
-1--2-StatusTests
01CoveredT2,T28,T29
10CoveredT36,T7,T17
11CoveredT1,T2,T3

 LINE       153
 EXPRESSION (out_endpoint_val_o ? out_ep_current : '0)
             ---------1--------
-1-StatusTests
0Unreachable
1CoveredT1,T2,T3

 LINE       156
 EXPRESSION (((~connect_en_i)) | link_reset)
             --------1--------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       160
 EXPRESSION (out_ep_acked || out_ep_rollback)
             ------1-----    -------2-------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT53,T54,T55
10CoveredT1,T2,T28

 LINE       182
 EXPRESSION (out_ep_data_put & (int'(out_max_used_q) < (MaxPktSizeByte - 1)) & (out_ep_put_addr[1:0] == 2'b11))
             -------1-------   ----------------------2----------------------   ---------------3---------------
-1--2--3-StatusTests
011CoveredT1,T2,T28
101UnreachableT2,T29,T30
110CoveredT1,T2,T28
111CoveredT1,T2,T28

 LINE       182
 SUB-EXPRESSION (out_ep_put_addr[1:0] == 2'b11)
                ---------------1---------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T28

 LINE       215
 EXPRESSION (current_setup ? avsetup_rvalid_i : avout_rvalid_i)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT28,T31,T32

 LINE       216
 EXPRESSION (current_setup ? avsetup_rdata_i : avout_rdata_i)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT28,T31,T32

 LINE       221
 EXPRESSION (current_setup ? rx_wready_setup_i : rx_wready_out_i)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT28,T31,T32

 LINE       224
 EXPRESSION (av_rvalid & (std_write_q | (((~out_max_used_q[PktW])) & (out_max_used_q[1:0] != 2'b11) & out_ep_acked)))
             ----1----   ---------------------------------------------2---------------------------------------------
-1--2-StatusTests
01Not Covered
10CoveredT1,T2,T35
11CoveredT1,T2,T28

 LINE       224
 SUB-EXPRESSION (std_write_q | (((~out_max_used_q[PktW])) & (out_max_used_q[1:0] != 2'b11) & out_ep_acked))
                 -----1-----   -------------------------------------2-------------------------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T28,T29
10CoveredT1,T2,T28

 LINE       224
 SUB-EXPRESSION (((~out_max_used_q[PktW])) & (out_max_used_q[1:0] != 2'b11) & out_ep_acked)
                 ------------1------------   ---------------2--------------   ------3-----
-1--2--3-StatusTests
011CoveredT2,T29,T30
101CoveredT29,T4,T5
110CoveredT1,T2,T3
111CoveredT1,T28,T29

 LINE       224
 SUB-EXPRESSION (out_max_used_q[1:0] != 2'b11)
                ---------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       228
 EXPRESSION (mem_write_o ? mem_waddr : mem_raddr)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T28

 LINE       229
 EXPRESSION (mem_read | mem_write_o)
             ----1---   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T28
10CoveredT2,T3,T29

 LINE       250
 EXPRESSION (rx_wvalid_o & current_setup)
             -----1-----   ------2------
-1--2-StatusTests
01CoveredT28,T31,T32
10CoveredT1,T2,T29
11CoveredT28,T31,T32

 LINE       251
 EXPRESSION (rx_wvalid_o & ((~current_setup)))
             -----1-----   ---------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT28,T31,T32
11CoveredT1,T2,T29

 LINE       258
 EXPRESSION (((~rx_wready)) | ((~av_rvalid)))
             -------1------   -------2------
-1--2-StatusTests
00CoveredT1,T2,T35
01CoveredT1,T2,T3
10Not Covered

 LINE       266
 EXPRESSION (current_setup & rx_wvalid_o)
             ------1------   -----2-----
-1--2-StatusTests
01CoveredT1,T2,T29
10CoveredT28,T31,T32
11CoveredT28,T31,T32

 LINE       277
 EXPRESSION (in_endpoint_val_o ? in_ep_current : '0)
             --------1--------
-1-StatusTests
0Unreachable
1CoveredT1,T2,T3

 LINE       281
 EXPRESSION ({1'b0, in_ep_get_addr} == in_size_i)
            ------------------1------------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       298
 EXPRESSION (pkt_start_rd | (in_ep_data_get & (in_ep_get_addr[1:0] == 2'b0)))
             ------1-----   ------------------------2-----------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T29,T30
10CoveredT2,T3,T29

 LINE       298
 SUB-EXPRESSION (in_ep_data_get & (in_ep_get_addr[1:0] == 2'b0))
                 -------1------   --------------2--------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T29,T30
11CoveredT2,T29,T30

 LINE       298
 SUB-EXPRESSION (in_ep_get_addr[1:0] == 2'b0)
                --------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       300
 EXPRESSION (in_ep_get_addr[1] ? (in_ep_get_addr[0] ? mem_rdata_i[31:24] : mem_rdata_i[23:16]) : (in_ep_get_addr[0] ? mem_rdata_i[15:8] : mem_rdata_i[7:0]))
             --------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T29,T30

 LINE       300
 SUB-EXPRESSION (in_ep_get_addr[0] ? mem_rdata_i[31:24] : mem_rdata_i[23:16])
                 --------1--------
-1-StatusTests
0CoveredT2,T29,T30
1CoveredT2,T29,T30

 LINE       300
 SUB-EXPRESSION (in_ep_get_addr[0] ? mem_rdata_i[15:8] : mem_rdata_i[7:0])
                 --------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T29,T30

 LINE       404
 EXPRESSION (frame_q != frame_d)
            ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT29,T36,T4

 LINE       410
 EXPRESSION (sof_detected_o | do_internal_sof)
             -------1------   -------2-------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT29,T4,T7
10Not Covered

 LINE       463
 EXPRESSION (out_ep_data_put & current_setup & ((!avsetup_rvalid_i)))
             -------1-------   ------2------   ----------3----------
-1--2--3-StatusTests
011CoveredT28,T31,T32
101CoveredT1,T2,T29
110CoveredT28,T31,T32
111Not Covered

 LINE       466
 EXPRESSION (out_ep_data_put & ((!current_setup)) & ((!avout_rvalid_i)))
             -------1-------   ---------2--------   ---------3---------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT28,T31,T32
110CoveredT1,T2,T29
111Not Covered

 LINE       469
 EXPRESSION (out_ep_data_put & ((!rx_wready)))
             -------1-------   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T28
11Not Covered

Branch Coverage for Module : usbdev_usbif
Line No.TotalCoveredPercent
Branches 44 40 90.91
TERNARY 153 1 1 100.00
TERNARY 215 2 2 100.00
TERNARY 216 2 2 100.00
TERNARY 221 2 2 100.00
TERNARY 228 2 2 100.00
TERNARY 277 1 1 100.00
TERNARY 300 4 4 100.00
IF 160 3 3 100.00
CASE 188 5 4 80.00
IF 198 3 3 100.00
IF 246 2 2 100.00
IF 290 2 2 100.00
IF 408 3 3 100.00
IF 416 2 2 100.00
IF 456 10 7 70.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_usbdev_0.1/rtl/usbdev_usbif.sv' or '../src/lowrisc_ip_usbdev_0.1/rtl/usbdev_usbif.sv was not found/opened, so annotated branch coverage report could not be generated.

LineNo. Expression -1-: 153 (out_endpoint_val_o) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Unreachable


LineNo. Expression -1-: 215 (current_setup) ?

Branches:
-1-StatusTests
1 Covered T28,T31,T32
0 Covered T1,T2,T3


LineNo. Expression -1-: 216 (current_setup) ?

Branches:
-1-StatusTests
1 Covered T28,T31,T32
0 Covered T1,T2,T3


LineNo. Expression -1-: 221 (current_setup) ?

Branches:
-1-StatusTests
1 Covered T28,T31,T32
0 Covered T1,T2,T3


LineNo. Expression -1-: 228 (mem_write_o) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T28
0 Covered T1,T2,T3


LineNo. Expression -1-: 277 (in_endpoint_val_o) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Unreachable


LineNo. Expression -1-: 300 (in_ep_get_addr[1]) ? -2-: 300 (in_ep_get_addr[0]) ? -3-: 300 (in_ep_get_addr[0]) ?

Branches:
-1--2--3-StatusTests
1 1 - Covered T2,T29,T30
1 0 - Covered T2,T29,T30
0 - 1 Covered T2,T29,T30
0 - 0 Covered T1,T2,T3


LineNo. Expression -1-: 160 if ((out_ep_acked || out_ep_rollback)) -2-: 163 if (out_ep_data_put) -3-: 167 if ((int'(out_max_used_q) < (MaxPktSizeByte - 1))) -4-: 169 if ((int'(out_max_used_q) < (MaxPktSizeByte + 1)))

Branches:
-1--2--3--4-StatusTests
1 - - - Covered T1,T2,T28
0 1 1 - Covered T1,T2,T28
0 1 0 1 Unreachable T2,T29,T30
0 1 0 0 Unreachable
0 0 - - Covered T1,T2,T3


LineNo. Expression -1-: 188 case (out_ep_put_addr[1:0])

Branches:
-1-StatusTests
0 Covered T1,T2,T3
1 Covered T1,T2,T28
2 Covered T1,T2,T28
3 Covered T1,T2,T28
default Not Covered


LineNo. Expression -1-: 198 if ((!rst_ni)) -2-: 206 if (out_ep_data_put)

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T1,T2,T28
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 246 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 290 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 408 if (sof_valid) -2-: 410 if ((sof_detected_o | do_internal_sof))

Branches:
-1--2-StatusTests
1 - Covered T36,T17,T42
0 1 Covered T29,T4,T7
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 416 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 456 if ((!rst_ni)) -2-: 462 if (out_ep_newpkt) -3-: 463 if (((out_ep_data_put & current_setup) & (!avsetup_rvalid_i))) -4-: 465 if (out_ep_newpkt) -5-: 466 if (((out_ep_data_put & (!current_setup)) & (!avout_rvalid_i))) -6-: 468 if (out_ep_newpkt) -7-: 469 if ((out_ep_data_put & (!rx_wready)))

Branches:
-1--2--3--4--5--6--7-StatusTests
1 - - - - - - Covered T1,T2,T3
0 1 - - - - - Covered T1,T2,T28
0 0 1 - - - - Not Covered
0 0 0 - - - - Covered T1,T2,T3
0 - - 1 - - - Covered T1,T2,T28
0 - - 0 1 - - Not Covered
0 - - 0 0 - - Covered T1,T2,T3
0 - - - - 1 - Covered T1,T2,T28
0 - - - - 0 1 Not Covered
0 - - - - 0 0 Covered T1,T2,T3


Assert Coverage for Module : usbdev_usbif
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 6 6 100.00 6 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 6 6 100.00 6 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ParamAVFifoWidthValid 2040 2040 0 0
ParamMaxPktSizeByteValid 2040 2040 0 0
ParamNBufValid 2040 2040 0 0
ParamNEndpointsValid 2040 2040 0 0
ParamRXFifoWidthValid 2040 2040 0 0
ParamSramAwValid 2040 2040 0 0


ParamAVFifoWidthValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

ParamMaxPktSizeByteValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

ParamNBufValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

ParamNEndpointsValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

ParamRXFifoWidthValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

ParamSramAwValid
NameAttemptsReal SuccessesFailuresIncomplete
Total 2040 2040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T28 1 1 0 0
T29 1 1 0 0
T30 1 1 0 0
T31 1 1 0 0
T35 1 1 0 0
T36 1 1 0 0
T37 1 1 0 0

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%