NVC code coverage report

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_fsm.vhd

Sub-instances:

Instance 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:

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 261615 items are not displayed.

Uncovered statements:

Excluded statements:

Covered statements:

Signal assignment statement:

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

Sequential statement:

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

Count: 331324
Threshold: 1

If statement:

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: 106105
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

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

If statement:

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: 52716
Threshold: 1

If statement:

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: 7
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

If statement:

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: 52702
Threshold: 1

If statement:

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: 13330
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Sequential statement:

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

Count: 423334
Threshold: 1

Signal assignment statement:

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

If statement:

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

Count: 26365
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

If statement:

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

Count: 212348
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

Signal assignment statement:

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

If statement:

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

Count: 1055177083
Threshold: 1

Signal assignment statement:

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

If statement:

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

Count: 526374300
Threshold: 1

Signal assignment statement:

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

If statement:

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

Count: 373261
Threshold: 1

Signal assignment statement:

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

Signal assignment statement:

376:                 '0'
Count: 187427
Threshold: 1

Uncovered branches:

Excluded branches:

Covered branches:

"case" / "with" / "select" choice:

171:        when s_rxb_idle => 
Choice ofCountThreshold
Bins_rxb_idle1061051

"if" / "when" / "else" condition:

172:            if (store_metadata_f = '1') then 
Evaluated toCountThreshold
BinTrue263581
BinFalse797471

"if" / "when" / "else" condition:

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

"case" / "with" / "select" choice:

181:        when s_rxb_store_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_frame_format527161

"if" / "when" / "else" condition:

182:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinTrue71
BinFalse527091

"if" / "when" / "else" condition:

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

"case" / "with" / "select" choice:

198:        when s_rxb_store_identifier => 
Choice ofCountThreshold
Bins_rxb_store_identifier263511

"case" / "with" / "select" choice:

204:        when s_rxb_skip_ts_low => 
Choice ofCountThreshold
Bins_rxb_skip_ts_low263511

"case" / "with" / "select" choice:

210:        when s_rxb_skip_ts_high => 
Choice ofCountThreshold
Bins_rxb_skip_ts_high263511

"case" / "with" / "select" choice:

218:        when s_rxb_store_data => 
Choice ofCountThreshold
Bins_rxb_store_data527021

"if" / "when" / "else" condition:

219:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinTrue133301
BinFalse393721

"if" / "when" / "else" condition:

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

"if" / "when" / "else" condition:

226:            elsif (rec_valid_f = '1') then 
Evaluated toCountThreshold
BinTrue130211
BinFalse263511

"case" / "with" / "select" choice:

233:        when s_rxb_store_end_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_low260421

"case" / "with" / "select" choice:

239:        when s_rxb_store_end_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_high130211

"case" / "with" / "select" choice:

245:        when s_rxb_store_err_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_err_frame_format6741

"case" / "with" / "select" choice:

251:        when s_rxb_store_err_identifier => 
Choice ofCountThreshold
Bins_rxb_store_err_identifier3371

"case" / "with" / "select" choice:

257:        when s_rxb_store_err_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_low3371

"case" / "with" / "select" choice:

263:        when s_rxb_store_err_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_high3371

"case" / "with" / "select" choice:

285:        when s_rxb_idle => 
Choice ofCountThreshold
Bins_rxb_idle778411

"case" / "with" / "select" choice:

288:        when s_rxb_store_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_frame_format263651

"if" / "when" / "else" condition:

289:            if (rec_abort_f = '0') then 
Evaluated toCountThreshold
BinTrue263581
BinFalse71

"case" / "with" / "select" choice:

294:        when s_rxb_store_identifier => 
Choice ofCountThreshold
Bins_rxb_store_identifier263511

"case" / "with" / "select" choice:

298:        when s_rxb_skip_ts_low => 
Choice ofCountThreshold
Bins_rxb_skip_ts_low263511

"case" / "with" / "select" choice:

305:        when s_rxb_skip_ts_high => 
Choice ofCountThreshold
Bins_rxb_skip_ts_high263511

"case" / "with" / "select" choice:

308:        when s_rxb_store_data => 
Choice ofCountThreshold
Bins_rxb_store_data2123481

"if" / "when" / "else" condition:

311:            if (store_data_f = '1') then 
Evaluated toCountThreshold
BinTrue863361
BinFalse1260121

"case" / "with" / "select" choice:

315:        when s_rxb_store_end_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_low130211

"case" / "with" / "select" choice:

327:        when s_rxb_store_end_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_end_ts_high130211

"case" / "with" / "select" choice:

337:        when s_rxb_store_err_frame_format => 
Choice ofCountThreshold
Bins_rxb_store_err_frame_format6741

"case" / "with" / "select" choice:

342:        when s_rxb_store_err_identifier => 
Choice ofCountThreshold
Bins_rxb_store_err_identifier3371

"case" / "with" / "select" choice:

346:        when s_rxb_store_err_ts_low => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_low3371

"case" / "with" / "select" choice:

350:        when s_rxb_store_err_ts_high => 
Choice ofCountThreshold
Bins_rxb_store_err_ts_high3371

"if" / "when" / "else" condition:

365:        if (res_n = '0') then 
Evaluated toCountThreshold
BinTrue24184991
BinFalse10527585841

"if" / "when" / "else" condition:

367:        elsif (rising_edge(clk_sys)) then 
Evaluated toCountThreshold
BinTrue5263743001
BinFalse5263842841

"if" / "when" / "else" condition:

368:            if (rx_fsm_ce = '1') then 
Evaluated toCountThreshold
BinTrue1858271
BinFalse5261884731

"if" / "when" / "else" condition:

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

Uncovered toggles:

Excluded toggles:

Covered toggles:

Port:

 CLK_SYS
FromToCountThreshold
Bin015275788691
Bin105275804601

Port:

 RES_N
FromToCountThreshold
Bin0180821
Bin1080721

Port:

 MR_MODE_ERFM
FromToCountThreshold
Bin011531
Bin1017531

Port:

 STORE_METADATA_F
FromToCountThreshold
Bin01263581
Bin10279581

Port:

 STORE_DATA_F
FromToCountThreshold
Bin01863361
Bin10879361

Port:

 REC_VALID_F
FromToCountThreshold
Bin01130211
Bin10146211

Port:

 REC_ABORT_F
FromToCountThreshold
Bin01308201
Bin10324201

Port:

 WRITE_RAW_INTENT
FromToCountThreshold
Bin011130311
Bin101146311

Port:

 SELECT_TS_WPTR
FromToCountThreshold
Bin01130211
Bin10146211

Port:

 COMMIT_INTENT
FromToCountThreshold
Bin01133581
Bin10149581

Port:

 DATA_SELECTOR(4)
FromToCountThreshold
Bin01133581
Bin10149581

Port:

 DATA_SELECTOR(3)
FromToCountThreshold
Bin01133581
Bin10149581

Port:

 DATA_SELECTOR(2)
FromToCountThreshold
Bin01263511
Bin10279511

Port:

 DATA_SELECTOR(1)
FromToCountThreshold
Bin01266881
Bin10282881

Port:

 DATA_SELECTOR(0)
FromToCountThreshold
Bin01266901
Bin10282901

Port:

 STORE_TS_WR_PTR
FromToCountThreshold
Bin01263511
Bin10279511

Port:

 INC_TS_WR_PTR
FromToCountThreshold
Bin01130211
Bin10146211

Port:

 REC_ERF
FromToCountThreshold
Bin013371
Bin1019371

Port:

 RESET_OVERRUN_FLAG
FromToCountThreshold
Bin01282751
Bin10266751

Signal:

 RX_FSM_CE
FromToCountThreshold
Bin011858271
Bin101874271

Uncovered expressions:

Excluded expressions:

Covered expressions:

"=" expression

172:            if (store_metadata_f = '1') then 
Evaluated toCountThreshold
BinFalse797471
BinTrue263581

"=" expression

174:            elsif (mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1') then 
Evaluated toCountThreshold
BinFalse789201
BinTrue8271

"=" expression

174:            elsif (mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1') then 
Evaluated toCountThreshold
BinFalse489471
BinTrue308001

"and" expression

174:            elsif (mr_mode_erfm = ERFM_ENABLED and rec_abort_f = '1') then 
                       <-----------LHS----------->     <------RHS------>       

LHSRHSCountThreshold
BinFalseTrue304831
BinTrueFalse5101
BinTrueTrue3171

"=" expression

182:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinFalse527091
BinTrue71

"=" expression

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

"=" expression

219:            if (rec_abort_f = '1') then 
Evaluated toCountThreshold
BinFalse393721
BinTrue133301

"=" expression

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

"=" expression

226:            elsif (rec_valid_f = '1') then 
Evaluated toCountThreshold
BinFalse263511
BinTrue130211

"=" expression

289:            if (rec_abort_f = '0') then 
Evaluated toCountThreshold
BinFalse71
BinTrue263581

"=" expression

311:            if (store_data_f = '1') then 
Evaluated toCountThreshold
BinFalse1260121
BinTrue863361

"=" expression

365:        if (res_n = '0') then 
Evaluated toCountThreshold
BinFalse10527585841
BinTrue24184991

"=" expression

368:            if (rx_fsm_ce = '1') then 
Evaluated toCountThreshold
BinFalse5261884731
BinTrue1858271

"/=" expression

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

Uncovered FSM states:

Excluded FSM states:

Covered FSM states:

"T_RX_BUF_STATE" FSM

151:    signal curr_state   : t_rx_buf_state; 
StateCountThreshold
BinS_RXB_IDLE282751
BinS_RXB_STORE_FRAME_FORMAT263581
BinS_RXB_STORE_IDENTIFIER263511
BinS_RXB_SKIP_TS_LOW263511
BinS_RXB_SKIP_TS_HIGH263511
BinS_RXB_STORE_END_TS_LOW130211
BinS_RXB_STORE_END_TS_HIGH130211
BinS_RXB_STORE_DATA263511
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

152:    signal next_state   : t_rx_buf_state; 
StateCountThreshold
BinS_RXB_IDLE282751
BinS_RXB_STORE_FRAME_FORMAT263581
BinS_RXB_STORE_IDENTIFIER263581
BinS_RXB_SKIP_TS_LOW263511
BinS_RXB_SKIP_TS_HIGH263511
BinS_RXB_STORE_END_TS_LOW130211
BinS_RXB_STORE_END_TS_HIGH130211
BinS_RXB_STORE_DATA263511
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: