NVC code coverage report

Hierarchy

Instance: CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.DUT.CAN_CORE_INST.PROTOCOL_CONTROL_INST.CONTROL_COUNTER_INST

File:  /__w/ctu-can-regression/ctu-can-regression/src/can_core/protocol_control.vhd


Current Instance Statement Branch Toggle Expression FSM state Functional Average
CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.DUT.CAN_CORE_INST.PROTOCOL_CONTROL_INST.CONTROL_COUNTER_INST 100.0 % (45/45) 100.0 % (40/40) 100.0 % (158/158) 100.0 % (33/33) N.A. N.A. 100.0 % (276/276)

Details:

The limit of printed items was reached (5000). Total 260336 items are not displayed.


Statement Branch Toggle Expression FSM state Functional

Uncovered statements:

Excluded statements:

Covered statements:

If statement on lines 178 to 180:

178:    ctrl_ctr_d <= unsigned(ctrl_ctr_pload_val) when (ctrl_ctr_pload = '1') else 
179:                              (ctrl_ctr_q - 1) when (rx_trigger = '1') else 
180:                                   ctrl_ctr_q; 

Count: 30000099
Threshold: 1

Signal assignment statement on line 178:

178:    ctrl_ctr_d <= unsigned(ctrl_ctr_pload_val) when (ctrl_ctr_pload = '1') else 
Count: 1863775
Threshold: 1

Signal assignment statement on line 179:

179:                              (ctrl_ctr_q - 1) when (rx_trigger = '1') else 
Count: 17455150
Threshold: 1

Signal assignment statement on line 180:

180:                                   ctrl_ctr_q
Count: 10681174
Threshold: 1

If statement on lines 183 to 185:

183:    ctrl_ctr_ce <= '1' when (rx_trigger = '1' and ctrl_ctr_ena = '1') else 
184:                   '1' when (ctrl_ctr_pload = '1') else 
185:                   '0'; 

Count: 22376288
Threshold: 1

Signal assignment statement on line 183:

183:    ctrl_ctr_ce <= '1' when (rx_trigger = '1' and ctrl_ctr_ena = '1') else 
Count: 7646756
Threshold: 1

Signal assignment statement on line 184:

184:                   '1' when (ctrl_ctr_pload = '1') else 
Count: 828450
Threshold: 1

Signal assignment statement on line 185:

185:                   '0'
Count: 13901082
Threshold: 1

If statement on lines 187 to 189:

187:    ctrl_ctr_zero <= '1' when (ctrl_ctr_q = 0) 
188:                         else 
189:                     '0'; 

Count: 7390749
Threshold: 1

Signal assignment statement on line 187:

187:    ctrl_ctr_zero <= '1' when (ctrl_ctr_q = 0) 
Count: 355655
Threshold: 1

Signal assignment statement on line 189:

189:                     '0'
Count: 7035094
Threshold: 1

If statement on lines 191 to 193:

191:    ctrl_ctr_one <= '1' when (ctrl_ctr_q = 1) 
192:                        else 
193:                    '0'; 

Count: 7390749
Threshold: 1

Signal assignment statement on line 191:

191:    ctrl_ctr_one <= '1' when (ctrl_ctr_q = 1) 
Count: 351446
Threshold: 1

Signal assignment statement on line 193:

193:                    '0'
Count: 7039303
Threshold: 1

If statement on lines 200 to 206:

200:        if (res_n = '0') then 
201:            ctrl_ctr_q <= (others => '0'); 
...
205:            end if; 
206:        end if; 

Count: 1090018206
Threshold: 1

Signal assignment statement on line 201:

201:            ctrl_ctr_q <= (others => '0'); 
Count: 2424883
Threshold: 1

If statement on lines 203 to 205:

203:            if (ctrl_ctr_ce = '1') then 
204:                ctrl_ctr_q <= ctrl_ctr_d; 
205:            end if; 

Count: 543791678
Threshold: 1

Signal assignment statement on line 204:

204:                ctrl_ctr_q <= ctrl_ctr_d; 
Count: 7846950
Threshold: 1

If statement on lines 218 to 219:

218:    compl_ctr_d <= (others => '0') when (ctrl_ctr_pload = '1') else 
219:                   compl_ctr_q + 1; 

Count: 6179186
Threshold: 1

Signal assignment statement on line 218:

218:    compl_ctr_d <= (others => '0') when (ctrl_ctr_pload = '1') else 
Count: 878930
Threshold: 1

Signal assignment statement on line 219:

219:                   compl_ctr_q + 1
Count: 5300256
Threshold: 1

If statement on lines 221 to 223:

221:    compl_ctr_ce <= '1' when (ctrl_ctr_pload = '1') else 
222:                    '1' when (compl_ctr_ena = '1') else 
223:                    '0'; 

Count: 10641200
Threshold: 1

Signal assignment statement on line 221:

221:    compl_ctr_ce <= '1' when (ctrl_ctr_pload = '1') else 
Count: 889564
Threshold: 1

Signal assignment statement on line 222:

222:                    '1' when (compl_ctr_ena = '1') else 
Count: 4471851
Threshold: 1

Signal assignment statement on line 223:

223:                    '0'
Count: 5279785
Threshold: 1

If statement on lines 227 to 233:

227:        if (res_n = '0') then 
228:            compl_ctr_q <= (others => '0'); 
...
232:            end if; 
233:        end if; 

Count: 1090018206
Threshold: 1

Signal assignment statement on line 228:

228:            compl_ctr_q <= (others => '0'); 
Count: 2424883
Threshold: 1

If statement on lines 230 to 232:

230:            if (compl_ctr_ce = '1') then 
231:                compl_ctr_q <= compl_ctr_d; 
232:            end if; 

Count: 543791678
Threshold: 1

Signal assignment statement on line 231:

231:                compl_ctr_q <= compl_ctr_d; 
Count: 5350263
Threshold: 1

If statement on lines 240 to 242:

240:    ctrl_counted_byte <= '1' when (compl_ctr_q(2 downto 0) = "111") 
241:                             else 
242:                         '0'; 

Count: 4491351
Threshold: 1

Signal assignment statement on line 240:

240:    ctrl_counted_byte <= '1' when (compl_ctr_q(2 downto 0) = "111") 
Count: 552157
Threshold: 1

Signal assignment statement on line 242:

242:                         '0'
Count: 3939194
Threshold: 1

Signal assignment statement on line 245:

245:    ctrl_counted_byte_index <= std_logic_vector(compl_ctr_q(4 downto 3))
Count: 558319
Threshold: 1

Signal assignment statement on line 248:

248:    compl_ctr_div_32 <= compl_ctr_q(G_CTRL_CTR_WIDTH - 1 downto 5)
Count: 144592
Threshold: 1

Signal assignment statement on line 251:

251:    compl_ctr_div_32_plus_5 <= to_integer(compl_ctr_div_32) + 5
Count: 144592
Threshold: 1

If statement on lines 254 to 256:

254:    compl_ctr_div_32_plus_5_sat <= 
255:        compl_ctr_div_32_plus_5 when (compl_ctr_div_32_plus_5 < 19) else 
256:        19; 

Count: 144592
Threshold: 1

Signal assignment statement on line 255:

255:        compl_ctr_div_32_plus_5 when (compl_ctr_div_32_plus_5 < 19) else 
Count: 141174
Threshold: 1

Signal assignment statement on line 256:

256:        19
Count: 3418
Threshold: 1

Signal assignment statement on line 267:

267:        std_logic_vector(to_unsigned(compl_ctr_div_32_plus_5_sat, 5))
Count: 143267
Threshold: 1

If statement on lines 275 to 283:

275:        if (res_n = '0') then 
276:            alc_alc_bit <= (others => '0'); 
...
282:            end if; 
283:        end if; 

Count: 1090018206
Threshold: 1

Signal assignment statement on line 276:

276:            alc_alc_bit <= (others => '0'); 
Count: 2424883
Threshold: 1

Signal assignment statement on line 277:

277:            alc_alc_id_field <= (others => '0'); 
Count: 2424883
Threshold: 1

If statement on lines 279 to 282:

279:            if (arbitration_lost = '1') then 
280:                alc_alc_bit <= std_logic_vector(ctrl_ctr_q(4 downto 0)); 
281:                alc_alc_id_field <= arbitration_part; 
282:            end if; 

Count: 543791678
Threshold: 1

Signal assignment statement on line 280:

280:                alc_alc_bit <= std_logic_vector(ctrl_ctr_q(4 downto 0)); 
Count: 711
Threshold: 1

Signal assignment statement on line 281:

281:                alc_alc_id_field <= arbitration_part; 
Count: 711
Threshold: 1

Uncovered branches:

Excluded branches:

Covered branches:

"if" / "when" / "else" condition on line 178:

178:    ctrl_ctr_d <= unsigned(ctrl_ctr_pload_val) when (ctrl_ctr_pload = '1') else 
Evaluated toCountThreshold
BinTrue18637751
BinFalse281363241

"if" / "when" / "else" condition on line 179:

179:                              (ctrl_ctr_q - 1) when (rx_trigger = '1') else 
Evaluated toCountThreshold
BinTrue174551501
BinFalse106811741

"if" / "when" / "else" condition on line 183:

183:    ctrl_ctr_ce <= '1' when (rx_trigger = '1' and ctrl_ctr_ena = '1') else 
Evaluated toCountThreshold
BinTrue76467561
BinFalse147295321

"if" / "when" / "else" condition on line 184:

184:                   '1' when (ctrl_ctr_pload = '1') else 
Evaluated toCountThreshold
BinTrue8284501
BinFalse139010821

"if" / "when" / "else" condition on line 187:

187:    ctrl_ctr_zero <= '1' when (ctrl_ctr_q = 0
Evaluated toCountThreshold
BinTrue3556551
BinFalse70350941

"if" / "when" / "else" condition on line 191:

191:    ctrl_ctr_one <= '1' when (ctrl_ctr_q = 1
Evaluated toCountThreshold
BinTrue3514461
BinFalse70393031

"if" / "when" / "else" condition on line 200:

200:        if (res_n = '0') then 
Evaluated toCountThreshold
BinTrue24248831
BinFalse10875933231

"if" / "when" / "else" condition on line 202:

202:        elsif (rising_edge(clk_sys)) then 
Evaluated toCountThreshold
BinTrue5437916781
BinFalse5438016451

"if" / "when" / "else" condition on line 203:

203:            if (ctrl_ctr_ce = '1') then 
Evaluated toCountThreshold
BinTrue78469501
BinFalse5359447281

"if" / "when" / "else" condition on line 218:

218:    compl_ctr_d <= (others => '0') when (ctrl_ctr_pload = '1') else 
Evaluated toCountThreshold
BinTrue8789301
BinFalse53002561

"if" / "when" / "else" condition on line 221:

221:    compl_ctr_ce <= '1' when (ctrl_ctr_pload = '1') else 
Evaluated toCountThreshold
BinTrue8895641
BinFalse97516361

"if" / "when" / "else" condition on line 222:

222:                    '1' when (compl_ctr_ena = '1') else 
Evaluated toCountThreshold
BinTrue44718511
BinFalse52797851

"if" / "when" / "else" condition on line 227:

227:        if (res_n = '0') then 
Evaluated toCountThreshold
BinTrue24248831
BinFalse10875933231

"if" / "when" / "else" condition on line 229:

229:        elsif (rising_edge(clk_sys)) then 
Evaluated toCountThreshold
BinTrue5437916781
BinFalse5438016451

"if" / "when" / "else" condition on line 230:

230:            if (compl_ctr_ce = '1') then 
Evaluated toCountThreshold
BinTrue53502631
BinFalse5384414151

"if" / "when" / "else" condition on line 240:

240:    ctrl_counted_byte <= '1' when (compl_ctr_q(2 downto 0) = "111"
Evaluated toCountThreshold
BinTrue5521571
BinFalse39391941

"if" / "when" / "else" condition on line 255:

255:        compl_ctr_div_32_plus_5 when (compl_ctr_div_32_plus_5 < 19) else 
Evaluated toCountThreshold
BinTrue1411741
BinFalse34181

"if" / "when" / "else" condition on line 275:

275:        if (res_n = '0') then 
Evaluated toCountThreshold
BinTrue24248831
BinFalse10875933231

"if" / "when" / "else" condition on line 278:

278:        elsif (rising_edge(clk_sys)) then 
Evaluated toCountThreshold
BinTrue5437916781
BinFalse5438016451

"if" / "when" / "else" condition on line 279:

279:            if (arbitration_lost = '1') then 
Evaluated toCountThreshold
BinTrue7111
BinFalse5437909671

Uncovered toggles:

Excluded toggles:

Port:

 CLK_SYS
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 RES_N
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 RX_TRIGGER
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 CTRL_CTR_ENA
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 CTRL_CTR_PLOAD
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 CTRL_CTR_PLOAD_VAL
ElementFromToCountThresholdExcluded due to
Bin(8)0101Exclude file
Bin(8)1001Exclude file
Bin(7)0101Exclude file
Bin(7)1001Exclude file
Bin(6)0101Exclude file
Bin(6)1001Exclude file
Bin(5)0101Exclude file
Bin(5)1001Exclude file
Bin(4)0101Exclude file
Bin(4)1001Exclude file
Bin(3)0101Exclude file
Bin(3)1001Exclude file
Bin(2)0101Exclude file
Bin(2)1001Exclude file
Bin(1)0101Exclude file
Bin(1)1001Exclude file
Bin(0)0101Exclude file
Bin(0)1001Exclude file

Port:

 COMPL_CTR_ENA
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 ARBITRATION_LOST
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 ARBITRATION_PART
ElementFromToCountThresholdExcluded due to
Bin(2)0101Exclude file
Bin(2)1001Exclude file
Bin(1)0101Exclude file
Bin(1)1001Exclude file
Bin(0)0101Exclude file
Bin(0)1001Exclude file

Covered toggles:

Port:

 CTRL_CTR_ZERO
FromToCountThreshold
Bin013556551
Bin103556641

Port:

 CTRL_CTR_ONE
FromToCountThreshold
Bin013514461
Bin103530471

Port:

 CTRL_COUNTED_BYTE
FromToCountThreshold
Bin015521571
Bin105537581

Port:

 CTRL_COUNTED_BYTE_INDEX
ElementFromToCountThreshold
Bin(1)011369981
Bin(1)101385991
Bin(0)012745761
Bin(0)102761771

Port:

 CTRL_CTR_MEM_INDEX
ElementFromToCountThreshold
Bin(4)0147511
Bin(4)1063521
Bin(3)01125551
Bin(3)10141561
Bin(2)01189071
Bin(2)10189071
Bin(1)01407791
Bin(1)10423801
Bin(0)01678451
Bin(0)10678451

Port:

 ALC_ALC_BIT
ElementFromToCountThreshold
Bin(4)01681
Bin(4)1016671
Bin(3)01891
Bin(3)1016881
Bin(2)011021
Bin(2)1017011
Bin(1)011701
Bin(1)1017691
Bin(0)012971
Bin(0)1018961

Port:

 ALC_ALC_ID_FIELD
ElementFromToCountThreshold
Bin(2)01351
Bin(2)1016361
Bin(1)01411
Bin(1)1016401
Bin(0)01921
Bin(0)1016931

Signal:

 CTRL_CTR_D
ElementFromToCountThreshold
Bin(8)018604571
Bin(8)108620581
Bin(7)018845421
Bin(7)108861431
Bin(6)019321671
Bin(6)109337681
Bin(5)0110471191
Bin(5)1010487201
Bin(4)0113116761
Bin(4)1013132771
Bin(3)0120776111
Bin(3)1020792111
Bin(2)0134379111
Bin(2)1034395051
Bin(1)0160096931
Bin(1)1060112891
Bin(0)01141044301
Bin(0)10141060221

Signal:

 CTRL_CTR_Q
ElementFromToCountThreshold
Bin(8)011255571
Bin(8)101271581
Bin(7)011334541
Bin(7)101350551
Bin(6)011492181
Bin(6)101508191
Bin(5)011872981
Bin(5)101888991
Bin(4)012703131
Bin(4)102719141
Bin(3)015176131
Bin(3)105192141
Bin(2)019594091
Bin(2)109610031
Bin(1)0118646621
Bin(1)1018662581
Bin(0)0135848321
Bin(0)1035864251

Signal:

 CTRL_CTR_CE
FromToCountThreshold
Bin0177921621
Bin1077937621

Signal:

 COMPL_CTR_D
ElementFromToCountThreshold
Bin(8)0180371
Bin(8)1096381
Bin(7)01173171
Bin(7)10189181
Bin(6)01374621
Bin(6)10390631
Bin(5)01759801
Bin(5)10775811
Bin(4)011452171
Bin(4)101468181
Bin(3)012926041
Bin(3)102942051
Bin(2)015624431
Bin(2)105640441
Bin(1)0111251581
Bin(1)1011267591
Bin(0)0130386421
Bin(0)1030370421

Signal:

 COMPL_CTR_Q
ElementFromToCountThreshold
Bin(8)012138881
Bin(8)103515401
Bin(7)014535171
Bin(7)105976821
Bin(6)019263531
Bin(6)1010764821
Bin(5)0119996321
Bin(5)1022873231
Bin(4)0110830111
Bin(4)1011823951
Bin(3)0121705481
Bin(3)1022714691
Bin(2)015605161
Bin(2)105639201
Bin(1)0111213441
Bin(1)1011247481
Bin(0)0122397581
Bin(0)1022431621

Signal:

 COMPL_CTR_DIV_32
ElementFromToCountThreshold
Bin(3)0170561
Bin(3)1086571
Bin(2)01149331
Bin(2)10165341
Bin(1)01304881
Bin(1)10320891
Bin(0)01675691
Bin(0)10691701

Signal:

 COMPL_CTR_CE
FromToCountThreshold
Bin0152749831
Bin1052765831

Uncovered expressions:

Excluded expressions:

Covered expressions:

"=" expression on line 178:

 ctrl_ctr_pload = '1' 
Evaluated toCountThreshold
BinFalse281363241
BinTrue18637751

"=" expression on line 179:

 rx_trigger = '1' 
Evaluated toCountThreshold
BinFalse106811741
BinTrue174551501

"and" expression on line 183:

 rx_trigger = '1' and ctrl_ctr_ena = '1' 
 <-----LHS------>     <------RHS-------> 

LHSRHSCountThreshold
BinFalseTrue78856521
BinTrueFalse34865201
BinTrueTrue76467561

"=" expression on line 183:

 rx_trigger = '1' 
Evaluated toCountThreshold
BinFalse112430121
BinTrue111332761

"=" expression on line 183:

 ctrl_ctr_ena = '1' 
Evaluated toCountThreshold
BinFalse68438801
BinTrue155324081

"=" expression on line 184:

 ctrl_ctr_pload = '1' 
Evaluated toCountThreshold
BinFalse139010821
BinTrue8284501

"=" expression on line 200:

 res_n = '0' 
Evaluated toCountThreshold
BinFalse10875933231
BinTrue24248831

"=" expression on line 203:

 ctrl_ctr_ce = '1' 
Evaluated toCountThreshold
BinFalse5359447281
BinTrue78469501

"=" expression on line 218:

 ctrl_ctr_pload = '1' 
Evaluated toCountThreshold
BinFalse53002561
BinTrue8789301

"=" expression on line 221:

 ctrl_ctr_pload = '1' 
Evaluated toCountThreshold
BinFalse97516361
BinTrue8895641

"=" expression on line 222:

 compl_ctr_ena = '1' 
Evaluated toCountThreshold
BinFalse52797851
BinTrue44718511

"=" expression on line 227:

 res_n = '0' 
Evaluated toCountThreshold
BinFalse10875933231
BinTrue24248831

"=" expression on line 230:

 compl_ctr_ce = '1' 
Evaluated toCountThreshold
BinFalse5384414151
BinTrue53502631

"<" expression on line 255:

 compl_ctr_div_32_plus_5 < 19 
Evaluated toCountThreshold
BinFalse34181
BinTrue1411741

"=" expression on line 275:

 res_n = '0' 
Evaluated toCountThreshold
BinFalse10875933231
BinTrue24248831

"=" expression on line 279:

 arbitration_lost = '1' 
Evaluated toCountThreshold
BinFalse5437909671
BinTrue7111

Uncovered FSM states:

Excluded FSM states:

Covered FSM states:

Uncovered functional coverage:

Excluded functional coverage:

Covered functional coverage: