NVC code coverage report

Hierarchy

Instance: CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.I_DUT.I_BTL_TOP.I_BTL_SYNCHRONISATION_CHECKER

File:  /__w/CTU-CAN-FD/CTU-CAN-FD/src/bit_timing_logic/btl_top.vhd


Current Instance Statement Branch Toggle Expression FSM state Functional Average
CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.I_DUT.I_BTL_TOP.I_BTL_SYNCHRONISATION_CHECKER 100.0 % (27/27) 100.0 % (24/24) 100.0 % (34/34) 100.0 % (68/68) N.A. N.A. 100.0 % (153/153)

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 149 to 150:

149:    resync_edge <= '1' when (sync_edge = '1' and sync_control = RE_SYNC) else 
150:                   '0'; 

Count: 3328784
Threshold: 1

Signal assignment statement on line 149:

149:    resync_edge <= '1' when (sync_edge = '1' and sync_control = RE_SYNC) else 
Count: 1148995
Threshold: 1

Signal assignment statement on line 150:

150:                   '0'
Count: 2179789
Threshold: 1

If statement on lines 152 to 153:

152:    h_sync_edge <= '1' when (sync_edge = '1' and sync_control = HARD_SYNC) else 
153:                   '0'; 

Count: 3328784
Threshold: 1

Signal assignment statement on line 152:

152:    h_sync_edge <= '1' when (sync_edge = '1' and sync_control = HARD_SYNC) else 
Count: 93514
Threshold: 1

Signal assignment statement on line 153:

153:                   '0'
Count: 3235270
Threshold: 1

If statement on lines 155 to 156:

155:    h_or_re_sync_edge <= '1' when (resync_edge = '1' or h_sync_edge = '1') else 
156:                         '0'; 

Count: 2488220
Threshold: 1

Signal assignment statement on line 155:

155:    h_or_re_sync_edge <= '1' when (resync_edge = '1' or h_sync_edge = '1') else 
Count: 1242509
Threshold: 1

Signal assignment statement on line 156:

156:                         '0'
Count: 1245711
Threshold: 1

If statement on lines 164 to 166:

164:    sync_flag_ce <= '1' when (h_or_re_sync_edge = '1') else 
165:                    '1' when (segment_end = '1' and is_tseg1 = '1') else 
166:                    '0'; 

Count: 71059317
Threshold: 1

Signal assignment statement on line 164:

164:    sync_flag_ce <= '1' when (h_or_re_sync_edge = '1') else 
Count: 1717603
Threshold: 1

Signal assignment statement on line 165:

165:                    '1' when (segment_end = '1' and is_tseg1 = '1') else 
Count: 22923440
Threshold: 1

Signal assignment statement on line 166:

166:                    '0'
Count: 46418274
Threshold: 1

If statement on lines 168 to 169:

168:    sync_flag_nxt <= '1' when (h_or_re_sync_edge = '1') else 
169:                     '0'; 

Count: 2488220
Threshold: 1

Signal assignment statement on line 168:

168:    sync_flag_nxt <= '1' when (h_or_re_sync_edge = '1') else 
Count: 1242509
Threshold: 1

Signal assignment statement on line 169:

169:                     '0'
Count: 1245711
Threshold: 1

If statement on lines 173 to 179:

173:        if (rst_n = '0') then 
174:            sync_flag <= '0'; 
...
178:            end if; 
179:        end if; 

Count: 1096781321
Threshold: 1

Signal assignment statement on line 174:

174:            sync_flag <= '0'; 
Count: 2422674
Threshold: 1

If statement on lines 176 to 178:

176:            if (sync_flag_ce = '1') then 
177:                sync_flag <= sync_flag_nxt; 
178:            end if; 

Count: 547174334
Threshold: 1

Signal assignment statement on line 177:

177:                sync_flag <= sync_flag_nxt; 
Count: 12566875
Threshold: 1

If statement on lines 191 to 195:

191:    resync_edge_valid <= '1' when (resync_edge = '1' and sync_flag = '0' and 
192:                                   ((is_tseg2 = '1') or 
193:                                    (is_tseg1 = '1' and no_pos_resync = '0'))) 
194:                             else 
195:                         '0'; 

Count: 28723317
Threshold: 1

Signal assignment statement on line 191:

191:    resync_edge_valid <= '1' when (resync_edge = '1' and sync_flag = '0' and 
Count: 804203
Threshold: 1

Signal assignment statement on line 195:

195:                         '0'
Count: 27919114
Threshold: 1

If statement on lines 200 to 202:

200:    h_sync_edge_valid <= '0' when (no_pos_resync = '1' and is_tseg1 = '1') else 
201:                         '1' when (h_sync_edge = '1' and sync_flag = '0') else 
202:                         '0'; 

Count: 26610593
Threshold: 1

Signal assignment statement on line 200:

200:    h_sync_edge_valid <= '0' when (no_pos_resync = '1' and is_tseg1 = '1') else 
Count: 3066160
Threshold: 1

Signal assignment statement on line 201:

201:                         '1' when (h_sync_edge = '1' and sync_flag = '0') else 
Count: 54911
Threshold: 1

Signal assignment statement on line 202:

202:                         '0'
Count: 23489522
Threshold: 1

Uncovered branches:

Excluded branches:

Covered branches:

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

149:    resync_edge <= '1' when (sync_edge = '1' and sync_control = RE_SYNC) else 
Evaluated toCountThreshold
BinTrue11489951
BinFalse21797891

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

152:    h_sync_edge <= '1' when (sync_edge = '1' and sync_control = HARD_SYNC) else 
Evaluated toCountThreshold
BinTrue935141
BinFalse32352701

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

155:    h_or_re_sync_edge <= '1' when (resync_edge = '1' or h_sync_edge = '1') else 
Evaluated toCountThreshold
BinTrue12425091
BinFalse12457111

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

164:    sync_flag_ce <= '1' when (h_or_re_sync_edge = '1') else 
Evaluated toCountThreshold
BinTrue17176031
BinFalse693417141

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

165:                    '1' when (segment_end = '1' and is_tseg1 = '1') else 
Evaluated toCountThreshold
BinTrue229234401
BinFalse464182741

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

168:    sync_flag_nxt <= '1' when (h_or_re_sync_edge = '1') else 
Evaluated toCountThreshold
BinTrue12425091
BinFalse12457111

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

173:        if (rst_n = '0') then 
Evaluated toCountThreshold
BinTrue24226741
BinFalse10943586471

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

175:        elsif (rising_edge(clk_sys)) then 
Evaluated toCountThreshold
BinTrue5471743341
BinFalse5471843131

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

176:            if (sync_flag_ce = '1') then 
Evaluated toCountThreshold
BinTrue125668751
BinFalse5346074591

"if" / "when" / "else" condition on lines 191 to 193:

191:    resync_edge_valid <= '1' when (resync_edge = '1' and sync_flag = '0' and 
192:                                   ((is_tseg2 = '1') or 
193:                                    (is_tseg1 = '1' and no_pos_resync = '0'))) 

Evaluated toCountThreshold
BinTrue8042031
BinFalse279191141

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

200:    h_sync_edge_valid <= '0' when (no_pos_resync = '1' and is_tseg1 = '1') else 
Evaluated toCountThreshold
BinTrue30661601
BinFalse235444331

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

201:                         '1' when (h_sync_edge = '1' and sync_flag = '0') else 
Evaluated toCountThreshold
BinTrue549111
BinFalse234895221

Uncovered toggles:

Excluded toggles:

Port:

 CLK_SYS
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 RST_N
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

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

Port:

 SYNC_EDGE
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 NO_POS_RESYNC
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 SEGMENT_END
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 IS_TSEG1
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 IS_TSEG2
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Covered toggles:

Port:

 RESYNC_EDGE_VALID
FromToCountThreshold
Bin018042031
Bin108058041

Port:

 H_SYNC_EDGE_VALID
FromToCountThreshold
Bin01549111
Bin10565121

Signal:

 RESYNC_EDGE
FromToCountThreshold
Bin0111489951
Bin1011505961

Signal:

 H_SYNC_EDGE
FromToCountThreshold
Bin01935141
Bin10951151

Signal:

 H_OR_RE_SYNC_EDGE
FromToCountThreshold
Bin0112425091
Bin1012441101

Signal:

 SYNC_FLAG
FromToCountThreshold
Bin0111437911
Bin1011453921

Signal:

 SYNC_FLAG_CE
FromToCountThreshold
Bin01235792331
Bin10235808341

Signal:

 SYNC_FLAG_NXT
FromToCountThreshold
Bin0112425091
Bin1012441101

Uncovered expressions:

Excluded expressions:

"and" expression on line 149:

 sync_edge = '1' and sync_control = RE_SYNC 
 <-----LHS----->     <--------RHS---------> 

LHSRHSCountThresholdExcluded due to
BinFalseTrue01Unreachable

"and" expression on line 152:

 sync_edge = '1' and sync_control = HARD_SYNC 
 <-----LHS----->     <---------RHS----------> 

LHSRHSCountThresholdExcluded due to
BinFalseTrue01Unreachable

Covered expressions:

"and" expression on line 149:

 sync_edge = '1' and sync_control = RE_SYNC 
 <-----LHS----->     <--------RHS---------> 

LHSRHSCountThreshold
BinTrueFalse4136691
BinTrueTrue11489951

"=" expression on line 149:

 sync_edge = '1' 
Evaluated toCountThreshold
BinFalse17661201
BinTrue15626641

"and" expression on line 152:

 sync_edge = '1' and sync_control = HARD_SYNC 
 <-----LHS----->     <---------RHS----------> 

LHSRHSCountThreshold
BinTrueFalse14691501
BinTrueTrue935141

"=" expression on line 152:

 sync_edge = '1' 
Evaluated toCountThreshold
BinFalse17661201
BinTrue15626641

"or" expression on line 155:

 resync_edge = '1' or h_sync_edge = '1' 
 <------LHS------>    <------RHS------> 

LHSRHSCountThreshold
BinFalseFalse12457111
BinFalseTrue935141
BinTrueFalse11489951

"=" expression on line 155:

 resync_edge = '1' 
Evaluated toCountThreshold
BinFalse13392251
BinTrue11489951

"=" expression on line 155:

 h_sync_edge = '1' 
Evaluated toCountThreshold
BinFalse23947061
BinTrue935141

"=" expression on line 164:

 h_or_re_sync_edge = '1' 
Evaluated toCountThreshold
BinFalse693417141
BinTrue17176031

"and" expression on line 165:

 segment_end = '1' and is_tseg1 = '1' 
 <------LHS------>     <----RHS-----> 

LHSRHSCountThreshold
BinFalseTrue121600161
BinTrueFalse228223801
BinTrueTrue229234401

"=" expression on line 165:

 segment_end = '1' 
Evaluated toCountThreshold
BinFalse235958941
BinTrue457458201

"=" expression on line 165:

 is_tseg1 = '1' 
Evaluated toCountThreshold
BinFalse342582581
BinTrue350834561

"=" expression on line 168:

 h_or_re_sync_edge = '1' 
Evaluated toCountThreshold
BinFalse12457111
BinTrue12425091

"=" expression on line 173:

 rst_n = '0' 
Evaluated toCountThreshold
BinFalse10943586471
BinTrue24226741

"=" expression on line 176:

 sync_flag_ce = '1' 
Evaluated toCountThreshold
BinFalse5346074591
BinTrue125668751

"and" expression on lines 191 to 193:

 resync_edge = '1' and sync_flag = '0' and ((is_tseg2 = '1') or (is_tseg1 = '1' and no_pos_resync = '0')) 
 <----------------LHS---------------->      <---------------------------RHS---------------------------->  

LHSRHSCountThreshold
BinFalseTrue242305331
BinTrueFalse3451011
BinTrueTrue8042031

"and" expression on line 191:

 resync_edge = '1' and sync_flag = '0' 
 <------LHS------>     <-----RHS-----> 

LHSRHSCountThreshold
BinFalseTrue253438791
BinTrueFalse10727241
BinTrueTrue11493041

"=" expression on line 191:

 resync_edge = '1' 
Evaluated toCountThreshold
BinFalse265012891
BinTrue22220281

"=" expression on line 191:

 sync_flag = '0' 
Evaluated toCountThreshold
BinFalse22301341
BinTrue264931831

"or" expression on lines 192 to 193:

 (is_tseg2 = '1') or (is_tseg1 = '1' and no_pos_resync = '0') 
  <----LHS----->      <----------------RHS----------------->  

LHSRHSCountThreshold
BinFalseFalse36885811
BinFalseTrue135625921
BinTrueFalse114721441

"=" expression on line 192:

 is_tseg2 = '1' 
Evaluated toCountThreshold
BinFalse172511731
BinTrue114721441

"and" expression on line 193:

 is_tseg1 = '1' and no_pos_resync = '0' 
 <----LHS----->     <-------RHS-------> 

LHSRHSCountThreshold
BinFalseTrue98663861
BinTrueFalse36788801
BinTrueTrue135625921

"=" expression on line 193:

 is_tseg1 = '1' 
Evaluated toCountThreshold
BinFalse114818451
BinTrue172414721

"=" expression on line 193:

 no_pos_resync = '0' 
Evaluated toCountThreshold
BinFalse52943391
BinTrue234289781

"and" expression on line 200:

 no_pos_resync = '1' and is_tseg1 = '1' 
 <-------LHS------->     <----RHS-----> 

LHSRHSCountThreshold
BinFalseTrue120797721
BinTrueFalse16125351
BinTrueTrue30661601

"=" expression on line 200:

 no_pos_resync = '1' 
Evaluated toCountThreshold
BinFalse219318981
BinTrue46786951

"=" expression on line 200:

 is_tseg1 = '1' 
Evaluated toCountThreshold
BinFalse114646611
BinTrue151459321

"and" expression on line 201:

 h_sync_edge = '1' and sync_flag = '0' 
 <------LHS------>     <-----RHS-----> 

LHSRHSCountThreshold
BinFalseTrue226373871
BinTrueFalse577971
BinTrueTrue549111

"=" expression on line 201:

 h_sync_edge = '1' 
Evaluated toCountThreshold
BinFalse234317251
BinTrue1127081

"=" expression on line 201:

 sync_flag = '0' 
Evaluated toCountThreshold
BinFalse8521351
BinTrue226922981

Uncovered FSM states:

Excluded FSM states:

Covered FSM states:

Uncovered functional coverage:

Excluded functional coverage:

Covered functional coverage: