NVC code coverage report

Hierarchy

Instance: CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.I_DUT.I_BM_TOP.I_BM_DATA_EDGE_DETECTOR

File:  /__w/CTU-CAN-FD/CTU-CAN-FD/src/bus_management/bm_top.vhd


Current Instance Statement Branch Toggle Expression FSM state Functional Average
CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.I_DUT.I_BM_TOP.I_BM_DATA_EDGE_DETECTOR 100.0 % (19/19) 100.0 % (12/12) 100.0 % (28/28) 100.0 % (35/35) N.A. N.A. 100.0 % (94/94)

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 161 to 172:

161:        if (rst_n = '0') then 
162:            rx_data_prev        <= RECESSIVE; 
...
171:            end if; 
172:        end if; 

Count: 1096781321
Threshold: 1

Signal assignment statement on line 162:

162:            rx_data_prev        <= RECESSIVE; 
Count: 2422674
Threshold: 1

Signal assignment statement on line 163:

163:            tx_data_prev        <= RECESSIVE; 
Count: 2422674
Threshold: 1

Signal assignment statement on line 164:

164:            rx_data_sync_prev   <= RECESSIVE; 
Count: 2422674
Threshold: 1

Signal assignment statement on line 166:

166:            rx_data_prev        <= rx_data; 
Count: 547174334
Threshold: 1

Signal assignment statement on line 167:

167:            tx_data_prev        <= tx_data; 
Count: 547174334
Threshold: 1

If statement on lines 169 to 171:

169:            if (tq_edge = '1') then 
170:                rx_data_sync_prev <= rx_data; 
171:            end if; 

Count: 547174334
Threshold: 1

Signal assignment statement on line 170:

170:                rx_data_sync_prev <= rx_data; 
Count: 345459013
Threshold: 1

If statement on lines 180 to 182:

180:    tx_edge_i <= '1' when (tx_data_prev /= tx_data) and (tx_data_prev = RECESSIVE) 
181:                     else 
182:                 '0'; 

Count: 2552323
Threshold: 1

Signal assignment statement on line 180:

180:    tx_edge_i <= '1' when (tx_data_prev /= tx_data) and (tx_data_prev = RECESSIVE) 
Count: 638509
Threshold: 1

Signal assignment statement on line 182:

182:                 '0'
Count: 1913814
Threshold: 1

If statement on lines 189 to 191:

189:    rx_edge_i <= '1' when (rx_data_prev /= rx_data) and (rx_data_prev = RECESSIVE) 
190:                     else 
191:                 '0'; 

Count: 5633104
Threshold: 1

Signal assignment statement on line 189:

189:    rx_edge_i <= '1' when (rx_data_prev /= rx_data) and (rx_data_prev = RECESSIVE) 
Count: 1408291
Threshold: 1

Signal assignment statement on line 191:

191:                 '0'
Count: 4224813
Threshold: 1

If statement on lines 201 to 206:

201:    sync_edge <= '1' when (rx_data_sync_prev /= rx_data) and 
202:                          (rx_data_sync_prev = RECESSIVE) and 
203:                          (prev_rx_sample /= rx_data) and 
204:                          (tq_edge = '1') 
205:                     else 
206:                 '0'; 

Count: 231705269
Threshold: 1

Signal assignment statement on line 201:

201:    sync_edge <= '1' when (rx_data_sync_prev /= rx_data) and 
Count: 1562664
Threshold: 1

Signal assignment statement on line 206:

206:                 '0'
Count: 230142605
Threshold: 1

Signal assignment statement on line 211:

211:    rx_edge <= rx_edge_i
Count: 2819784
Threshold: 1

Signal assignment statement on line 212:

212:    tx_edge <= tx_edge_i
Count: 1280220
Threshold: 1

Uncovered branches:

Excluded branches:

Covered branches:

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

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

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

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

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

169:            if (tq_edge = '1') then 
Evaluated toCountThreshold
BinTrue3454590131
BinFalse2017153211

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

180:    tx_edge_i <= '1' when (tx_data_prev /= tx_data) and (tx_data_prev = RECESSIVE) 
Evaluated toCountThreshold
BinTrue6385091
BinFalse19138141

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

189:    rx_edge_i <= '1' when (rx_data_prev /= rx_data) and (rx_data_prev = RECESSIVE) 
Evaluated toCountThreshold
BinTrue14082911
BinFalse42248131

"if" / "when" / "else" condition on lines 201 to 204:

201:    sync_edge <= '1' when (rx_data_sync_prev /= rx_data) and 
202:                          (rx_data_sync_prev = RECESSIVE) and 
203:                          (prev_rx_sample /= rx_data) and 
204:                          (tq_edge = '1') 

Evaluated toCountThreshold
BinTrue15626641
BinFalse2301426051

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:

 TX_DATA
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 RX_DATA
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 PREV_RX_SAMPLE
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 TQ_EDGE
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Covered toggles:

Port:

 TX_EDGE
FromToCountThreshold
Bin016385091
Bin106401101

Port:

 RX_EDGE
FromToCountThreshold
Bin0114082911
Bin1014098921

Port:

 SYNC_EDGE
FromToCountThreshold
Bin0115626641
Bin1015642651

Signal:

 RX_DATA_PREV
FromToCountThreshold
Bin0114098921
Bin1014082911

Signal:

 TX_DATA_PREV
FromToCountThreshold
Bin016384801
Bin106368811

Signal:

 RX_DATA_SYNC_PREV
FromToCountThreshold
Bin0114083831
Bin1014067821

Signal:

 RX_EDGE_I
FromToCountThreshold
Bin0114082911
Bin1014098921

Signal:

 TX_EDGE_I
FromToCountThreshold
Bin016385091
Bin106401101

Uncovered expressions:

Excluded expressions:

Covered expressions:

"=" expression on line 161:

 rst_n = '0' 
Evaluated toCountThreshold
BinFalse10943586471
BinTrue24226741

"=" expression on line 169:

 tq_edge = '1' 
Evaluated toCountThreshold
BinFalse2017153211
BinTrue3454590131

"and" expression on line 180:

 (tx_data_prev /= tx_data) and (tx_data_prev = RECESSIVE) 
  <---------LHS--------->       <---------RHS---------->  

LHSRHSCountThreshold
BinFalseTrue6384801
BinTrueFalse6368521
BinTrueTrue6385091

"/=" expression on line 180:

 tx_data_prev /= tx_data 
Evaluated toCountThreshold
BinFalse12769621
BinTrue12753611

"=" expression on line 180:

 tx_data_prev = RECESSIVE 
Evaluated toCountThreshold
BinFalse12753341
BinTrue12769891

"and" expression on line 189:

 (rx_data_prev /= rx_data) and (rx_data_prev = RECESSIVE) 
  <---------LHS--------->       <---------RHS---------->  

LHSRHSCountThreshold
BinFalseTrue14079471
BinTrueFalse14082401
BinTrueTrue14082911

"/=" expression on line 189:

 rx_data_prev /= rx_data 
Evaluated toCountThreshold
BinFalse28165731
BinTrue28165311

"=" expression on line 189:

 rx_data_prev = RECESSIVE 
Evaluated toCountThreshold
BinFalse28168661
BinTrue28162381

"and" expression on lines 201 to 204:

 (rx_data_sync_prev /= rx_data) and (rx_data_sync_prev = RECESSIVE) and (prev_rx_sample /= rx_data) and (tq_edge = '1') 
 <----------------------------------------------LHS----------------------------------------------->      <----RHS---->  

LHSRHSCountThreshold
BinFalseTrue1178347671
BinTrueFalse4807311
BinTrueTrue15626641

"and" expression on lines 201 to 203:

 (rx_data_sync_prev /= rx_data) and (rx_data_sync_prev = RECESSIVE) and (prev_rx_sample /= rx_data) 
 <------------------------------LHS------------------------------->      <----------RHS---------->  

LHSRHSCountThreshold
BinFalseTrue384749961
BinTrueFalse66011
BinTrueTrue20433951

"and" expression on lines 201 to 202:

 (rx_data_sync_prev /= rx_data) and (rx_data_sync_prev = RECESSIVE) 
  <-----------LHS------------>       <------------RHS------------>  

LHSRHSCountThreshold
BinFalseTrue1525147311
BinTrueFalse20545361
BinTrueTrue20499961

"/=" expression on line 201:

 rx_data_sync_prev /= rx_data 
Evaluated toCountThreshold
BinFalse2276007371
BinTrue41045321

"=" expression on line 202:

 rx_data_sync_prev = RECESSIVE 
Evaluated toCountThreshold
BinFalse771405421
BinTrue1545647271

"/=" expression on line 203:

 prev_rx_sample /= rx_data 
Evaluated toCountThreshold
BinFalse1911868781
BinTrue405183911

"=" expression on line 204:

 tq_edge = '1' 
Evaluated toCountThreshold
BinFalse1123078381
BinTrue1193974311

Uncovered FSM states:

Excluded FSM states:

Covered FSM states:

Uncovered functional coverage:

Excluded functional coverage:

Covered functional coverage: