NVC code coverage report

Hierarchy

Instance: CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.DUT.RX_BUFFER_INST.RX_BUFFER_FSM_INST

File:  /__w/ctu-can-regression/ctu-can-regression/src/rx_buffer/rx_buffer.vhd

Nested Instances Statement Branch Toggle Expression FSM state Functional Average
ASSERTIONS_BLOCK 100.0 % (1/1) N.A. 100.0 % (8/8) N.A. N.A. 100.0 % (3/3) 100.0 % (12/12)

Current Instance Statement Branch Toggle Expression FSM state Functional Average
CTU_CAN_FD_TB.TB_TOP_CTU_CAN_FD.DUT.RX_BUFFER_INST.RX_BUFFER_FSM_INST 100.0 % (68/68) 100.0 % (50/50) 100.0 % (40/40) 100.0 % (29/29) 100.0 % (24/24) N.A. 100.0 % (211/211)

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:

Signal assignment statement on line 164:

164:        next_state <= curr_state; 
Count: 332930
Threshold: 1

Sequential statement on lines 166 to 266:

166:        case curr_state is 
167: 
...
265: 
266:        end case; 

Count: 332930
Threshold: 1

If statement on lines 172 to 176:

172:            if (store_metadata_f = '1') then 
173:                next_state <= s_rxb_store_frame_format; 
174:            elsif (mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1') then 
175:                next_state <= s_rxb_store_err_frame_format; 
176:            end if; 

Count: 107166
Threshold: 1

Signal assignment statement on line 173:

173:                next_state <= s_rxb_store_frame_format; 
Count: 26419
Threshold: 1

Signal assignment statement on line 175:

175:                next_state <= s_rxb_store_err_frame_format; 
Count: 317
Threshold: 1

If statement on lines 182 to 190:

182:            if (rec_abort_f = '1') then 
183:                if (mr_mode_erfm = ERFM_ENABLED) then 
...
189:                next_state <= s_rxb_store_identifier; 
190:            end if; 

Count: 52838
Threshold: 1

If statement on lines 183 to 187:

183:                if (mr_mode_erfm = ERFM_ENABLED) then 
184:                    next_state <= s_rxb_store_err_frame_format; 
185:                else 
186:                    next_state <= s_rxb_idle; 
187:                end if; 

Count: 8
Threshold: 1

Signal assignment statement on line 184:

184:                    next_state <= s_rxb_store_err_frame_format; 
Count: 5
Threshold: 1

Signal assignment statement on line 186:

186:                    next_state <= s_rxb_idle; 
Count: 3
Threshold: 1

Signal assignment statement on line 189:

189:                next_state <= s_rxb_store_identifier; 
Count: 52830
Threshold: 1

Signal assignment statement on line 199:

199:            next_state <= s_rxb_skip_ts_low; 
Count: 26411
Threshold: 1

Signal assignment statement on line 205:

205:            next_state <= s_rxb_skip_ts_high; 
Count: 26411
Threshold: 1

Signal assignment statement on line 211:

211:            next_state <= s_rxb_store_data; 
Count: 26411
Threshold: 1

If statement on lines 219 to 228:

219:            if (rec_abort_f = '1') then 
220:                if (mr_mode_erfm = ERFM_ENABLED) then 
...
227:                next_state <= s_rxb_store_end_ts_low; 
228:            end if; 

Count: 52822
Threshold: 1

If statement on lines 220 to 224:

220:                if (mr_mode_erfm = ERFM_ENABLED) then 
221:                    next_state <= s_rxb_store_err_frame_format; 
222:                else 
223:                    next_state <= s_rxb_idle; 
224:                end if; 

Count: 13349
Threshold: 1

Signal assignment statement on line 221:

221:                    next_state <= s_rxb_store_err_frame_format; 
Count: 15
Threshold: 1

Signal assignment statement on line 223:

223:                    next_state <= s_rxb_idle; 
Count: 13334
Threshold: 1

Signal assignment statement on line 227:

227:                next_state <= s_rxb_store_end_ts_low; 
Count: 13062
Threshold: 1

Signal assignment statement on line 234:

234:            next_state <= s_rxb_store_end_ts_high; 
Count: 26124
Threshold: 1

Signal assignment statement on line 240:

240:            next_state <= s_rxb_idle; 
Count: 13062
Threshold: 1

Signal assignment statement on line 246:

246:            next_state <= s_rxb_store_err_identifier; 
Count: 674
Threshold: 1

Signal assignment statement on line 252:

252:            next_state <= s_rxb_store_err_ts_low; 
Count: 337
Threshold: 1

Signal assignment statement on line 258:

258:            next_state <= s_rxb_store_err_ts_high; 
Count: 337
Threshold: 1

Signal assignment statement on line 264:

264:            next_state <= s_rxb_idle; 
Count: 337
Threshold: 1

Signal assignment statement on line 275:

275:        write_raw_intent <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 276:

276:        select_ts_wptr <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 277:

277:        data_selector <= (others => '0'); 
Count: 424259
Threshold: 1

Signal assignment statement on line 278:

278:        commit_intent <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 279:

279:        store_ts_wr_ptr <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 280:

280:        inc_ts_wr_ptr <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 281:

281:        reset_overrun_flag <= '0'; 
Count: 424259
Threshold: 1

Signal assignment statement on line 282:

282:        rec_erf <= '0'; 
Count: 424259
Threshold: 1

Sequential statement on lines 284 to 355:

284:        case curr_state is 
285:        when s_rxb_idle => 
...
354:            commit_intent <= '1'; 
355:        end case; 

Count: 424259
Threshold: 1

Signal assignment statement on line 286:

286:            reset_overrun_flag <= '1'; 
Count: 78840
Threshold: 1

If statement on lines 289 to 291:

289:            if (rec_abort_f = '0') then 
290:                write_raw_intent <= '1'; 
291:            end if; 

Count: 26427
Threshold: 1

Signal assignment statement on line 290:

290:                write_raw_intent <= '1'; 
Count: 26419
Threshold: 1

Signal assignment statement on line 292:

292:            data_selector <= "00001"; 
Count: 26427
Threshold: 1

Signal assignment statement on line 295:

295:            write_raw_intent <= '1'; 
Count: 26411
Threshold: 1

Signal assignment statement on line 296:

296:            data_selector <= "00010"; 
Count: 26411
Threshold: 1

Signal assignment statement on line 299:

299:            write_raw_intent <= '1'; 
Count: 26411
Threshold: 1

Signal assignment statement on line 303:

303:            store_ts_wr_ptr <= '1'; 
Count: 26411
Threshold: 1

Signal assignment statement on line 306:

306:            write_raw_intent <= '1'; 
Count: 26411
Threshold: 1

Signal assignment statement on line 309:

309:            data_selector <= "00100"; 
Count: 211950
Threshold: 1

If statement on lines 311 to 313:

311:            if (store_data_f = '1') then 
312:                write_raw_intent <= '1'; 
313:            end if; 

Count: 211950
Threshold: 1

Signal assignment statement on line 312:

312:                write_raw_intent <= '1'; 
Count: 86097
Threshold: 1

Signal assignment statement on line 316:

316:            data_selector <= "01000"; 
Count: 13062
Threshold: 1

Signal assignment statement on line 321:

321:            select_ts_wptr <= '1'; 
Count: 13062
Threshold: 1

Signal assignment statement on line 325:

325:            inc_ts_wr_ptr <= '1'; 
Count: 13062
Threshold: 1

Signal assignment statement on line 328:

328:            data_selector <= "10000"; 
Count: 13062
Threshold: 1

Signal assignment statement on line 333:

333:            select_ts_wptr <= '1'; 
Count: 13062
Threshold: 1

Signal assignment statement on line 335:

335:            commit_intent <= '1'; 
Count: 13062
Threshold: 1

Signal assignment statement on line 338:

338:            write_raw_intent <= '1'; 
Count: 674
Threshold: 1

Signal assignment statement on line 339:

339:            data_selector <= "00001"; 
Count: 674
Threshold: 1

Signal assignment statement on line 340:

340:            rec_erf <= '1'; 
Count: 674
Threshold: 1

Signal assignment statement on line 343:

343:            write_raw_intent <= '1'; 
Count: 337
Threshold: 1

Signal assignment statement on line 344:

344:            data_selector <= "00010"; 
Count: 337
Threshold: 1

Signal assignment statement on line 347:

347:            write_raw_intent <= '1'; 
Count: 337
Threshold: 1

Signal assignment statement on line 348:

348:            data_selector <= "01000"; 
Count: 337
Threshold: 1

Signal assignment statement on line 351:

351:            write_raw_intent <= '1'; 
Count: 337
Threshold: 1

Signal assignment statement on line 352:

352:            data_selector <= "10000"; 
Count: 337
Threshold: 1

Signal assignment statement on line 354:

354:            commit_intent <= '1'; 
Count: 337
Threshold: 1

If statement on lines 365 to 371:

365:        if (res_n = '0') then 
366:            curr_state <= s_rxb_idle; 
...
370:            end if; 
371:        end if; 

Count: 1090018206
Threshold: 1

Signal assignment statement on line 366:

366:            curr_state <= s_rxb_idle; 
Count: 2424883
Threshold: 1

If statement on lines 368 to 370:

368:            if (rx_fsm_ce = '1') then 
369:                curr_state <= next_state; 
370:            end if; 

Count: 543791678
Threshold: 1

Signal assignment statement on line 369:

369:                curr_state <= next_state; 
Count: 186271
Threshold: 1

If statement on lines 375 to 376:

375:    rx_fsm_ce <= '1' when (next_state /= curr_state) else 
376:                 '0'; 

Count: 374151
Threshold: 1

Signal assignment statement on line 375:

375:    rx_fsm_ce <= '1' when (next_state /= curr_state) else 
Count: 186279
Threshold: 1

Signal assignment statement on line 376:

376:                 '0'
Count: 187872
Threshold: 1

Uncovered branches:

Excluded branches:

Covered branches:

"case" / "with" / "select" choice on line 171:

171:        when s_rxb_idle => 
Choice ofCountThreshold
Bins_rxb_idle1071661

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

172:            if (store_metadata_f = '1') then 
Evaluated toCountThreshold
BinTrue264191
BinFalse807471

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

174:            elsif (mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1') then 
Evaluated toCountThreshold
BinTrue3171
BinFalse804301

"case" / "with" / "select" choice on line 181:

181:        when s_rxb_store_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_frame_format528381

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

182:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinTrue81
BinFalse528301

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

183:                if (mr_mode_erfm = ERFM_ENABLED) then 
Evaluated toCountThreshold
BinTrue51
BinFalse31

"case" / "with" / "select" choice on line 198:

198:        when s_rxb_store_identifier => 
Choice ofCountThreshold
Bins_rxb_store_identifier264111

"case" / "with" / "select" choice on line 204:

204:        when s_rxb_skip_ts_low => 
Choice ofCountThreshold
Bins_rxb_skip_ts_low264111

"case" / "with" / "select" choice on line 210:

210:        when s_rxb_skip_ts_high => 
Choice ofCountThreshold
Bins_rxb_skip_ts_high264111

"case" / "with" / "select" choice on line 218:

218:        when s_rxb_store_data => 
Choice ofCountThreshold
Bins_rxb_store_data528221

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

219:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinTrue133491
BinFalse394731

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

220:                if (mr_mode_erfm = ERFM_ENABLED) then 
Evaluated toCountThreshold
BinTrue151
BinFalse133341

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

226:            elsif (rec_valid_f = '1') then 
Evaluated toCountThreshold
BinTrue130621
BinFalse264111

"case" / "with" / "select" choice on line 233:

233:        when s_rxb_store_end_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_low261241

"case" / "with" / "select" choice on line 239:

239:        when s_rxb_store_end_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_high130621

"case" / "with" / "select" choice on line 245:

245:        when s_rxb_store_err_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_err_frame_format6741

"case" / "with" / "select" choice on line 251:

251:        when s_rxb_store_err_identifier => 
Choice ofCountThreshold
Bins_rxb_store_err_identifier3371

"case" / "with" / "select" choice on line 257:

257:        when s_rxb_store_err_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_low3371

"case" / "with" / "select" choice on line 263:

263:        when s_rxb_store_err_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_high3371

"case" / "with" / "select" choice on line 285:

285:        when s_rxb_idle => 
Choice ofCountThreshold
Bins_rxb_idle788401

"case" / "with" / "select" choice on line 288:

288:        when s_rxb_store_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_frame_format264271

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

289:            if (rec_abort_f = '0') then 
Evaluated toCountThreshold
BinTrue264191
BinFalse81

"case" / "with" / "select" choice on line 294:

294:        when s_rxb_store_identifier => 
Choice ofCountThreshold
Bins_rxb_store_identifier264111

"case" / "with" / "select" choice on line 298:

298:        when s_rxb_skip_ts_low => 
Choice ofCountThreshold
Bins_rxb_skip_ts_low264111

"case" / "with" / "select" choice on line 305:

305:        when s_rxb_skip_ts_high => 
Choice ofCountThreshold
Bins_rxb_skip_ts_high264111

"case" / "with" / "select" choice on line 308:

308:        when s_rxb_store_data => 
Choice ofCountThreshold
Bins_rxb_store_data2119501

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

311:            if (store_data_f = '1') then 
Evaluated toCountThreshold
BinTrue860971
BinFalse1258531

"case" / "with" / "select" choice on line 315:

315:        when s_rxb_store_end_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_low130621

"case" / "with" / "select" choice on line 327:

327:        when s_rxb_store_end_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_high130621

"case" / "with" / "select" choice on line 337:

337:        when s_rxb_store_err_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_err_frame_format6741

"case" / "with" / "select" choice on line 342:

342:        when s_rxb_store_err_identifier => 
Choice ofCountThreshold
Bins_rxb_store_err_identifier3371

"case" / "with" / "select" choice on line 346:

346:        when s_rxb_store_err_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_low3371

"case" / "with" / "select" choice on line 350:

350:        when s_rxb_store_err_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_high3371

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

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

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

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

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

368:            if (rx_fsm_ce = '1') then 
Evaluated toCountThreshold
BinTrue1862711
BinFalse5436054071

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

375:    rx_fsm_ce <= '1' when (next_state /= curr_state) else 
Evaluated toCountThreshold
BinTrue1862791
BinFalse1878721

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:

 MR_MODE_ERFM
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 STORE_METADATA_F
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 STORE_DATA_F
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 REC_VALID_F
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Port:

 REC_ABORT_F
FromToCountThresholdExcluded due to
Bin0101Exclude file
Bin1001Exclude file

Covered toggles:

Port:

 WRITE_RAW_INTENT
FromToCountThreshold
Bin011128531
Bin101144541

Port:

 SELECT_TS_WPTR
FromToCountThreshold
Bin01130621
Bin10146631

Port:

 COMMIT_INTENT
FromToCountThreshold
Bin01133991
Bin10150001

Port:

 DATA_SELECTOR
ElementFromToCountThreshold
Bin(4)01133991
Bin(4)10150001
Bin(3)01133991
Bin(3)10150001
Bin(2)01264111
Bin(2)10280121
Bin(1)01267481
Bin(1)10283491
Bin(0)01267511
Bin(0)10283521

Port:

 STORE_TS_WR_PTR
FromToCountThreshold
Bin01264111
Bin10280121

Port:

 INC_TS_WR_PTR
FromToCountThreshold
Bin01130621
Bin10146631

Port:

 REC_ERF
FromToCountThreshold
Bin013371
Bin1019381

Port:

 RESET_OVERRUN_FLAG
FromToCountThreshold
Bin01283371
Bin10267361

Signal:

 RX_FSM_CE
FromToCountThreshold
Bin011862711
Bin101878721

Uncovered expressions:

Excluded expressions:

Covered expressions:

"=" expression on line 172:

 store_metadata_f = '1' 
Evaluated toCountThreshold
BinFalse807471
BinTrue264191

"and" expression on line 174:

 mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1' 
 <-----------LHS----------->     <------RHS------> 

LHSRHSCountThreshold
BinFalseTrue309611
BinTrueFalse5101
BinTrueTrue3171

"=" expression on line 174:

 mr_mode_erfm = ERFM_ENABLED 
Evaluated toCountThreshold
BinFalse799201
BinTrue8271

"=" expression on line 174:

 rec_abort_f = '1' 
Evaluated toCountThreshold
BinFalse494691
BinTrue312781

"=" expression on line 182:

 rec_abort_f = '1' 
Evaluated toCountThreshold
BinFalse528301
BinTrue81

"=" expression on line 183:

 mr_mode_erfm = ERFM_ENABLED 
Evaluated toCountThreshold
BinFalse31
BinTrue51

"=" expression on line 219:

 rec_abort_f = '1' 
Evaluated toCountThreshold
BinFalse394731
BinTrue133491

"=" expression on line 220:

 mr_mode_erfm = ERFM_ENABLED 
Evaluated toCountThreshold
BinFalse133341
BinTrue151

"=" expression on line 226:

 rec_valid_f = '1' 
Evaluated toCountThreshold
BinFalse264111
BinTrue130621

"=" expression on line 289:

 rec_abort_f = '0' 
Evaluated toCountThreshold
BinFalse81
BinTrue264191

"=" expression on line 311:

 store_data_f = '1' 
Evaluated toCountThreshold
BinFalse1258531
BinTrue860971

"=" expression on line 365:

 res_n = '0' 
Evaluated toCountThreshold
BinFalse10875933231
BinTrue24248831

"=" expression on line 368:

 rx_fsm_ce = '1' 
Evaluated toCountThreshold
BinFalse5436054071
BinTrue1862711

"/=" expression on line 375:

 next_state /= curr_state 
Evaluated toCountThreshold
BinFalse1878721
BinTrue1862791

Uncovered FSM states:

Excluded FSM states:

Covered FSM states:

"T_RX_BUF_STATE" FSM on line 151:

151:    signal curr_state   : t_rx_buf_state; 
StateCountThreshold
BinS_RXB_IDLE283371
BinS_RXB_STORE_FRAME_FORMAT264191
BinS_RXB_STORE_IDENTIFIER264111
BinS_RXB_SKIP_TS_LOW264111
BinS_RXB_SKIP_TS_HIGH264111
BinS_RXB_STORE_END_TS_LOW130621
BinS_RXB_STORE_END_TS_HIGH130621
BinS_RXB_STORE_DATA264111
BinS_RXB_STORE_ERR_FRAME_FORMAT3371
BinS_RXB_STORE_ERR_IDENTIFIER3371
BinS_RXB_STORE_ERR_TS_LOW3371
BinS_RXB_STORE_ERR_TS_HIGH3371

"T_RX_BUF_STATE" FSM on line 152:

152:    signal next_state   : t_rx_buf_state; 
StateCountThreshold
BinS_RXB_IDLE283371
BinS_RXB_STORE_FRAME_FORMAT264191
BinS_RXB_STORE_IDENTIFIER264191
BinS_RXB_SKIP_TS_LOW264111
BinS_RXB_SKIP_TS_HIGH264111
BinS_RXB_STORE_END_TS_LOW130621
BinS_RXB_STORE_END_TS_HIGH130621
BinS_RXB_STORE_DATA264111
BinS_RXB_STORE_ERR_FRAME_FORMAT3371
BinS_RXB_STORE_ERR_IDENTIFIER3371
BinS_RXB_STORE_ERR_TS_LOW3371
BinS_RXB_STORE_ERR_TS_HIGH3371

Uncovered functional coverage:

Excluded functional coverage:

Covered functional coverage: