3
extend TB_NAME_T : [ ETRC ];
6
keep soft testbench == ETRC;
11
keep direction == POP;
12
keep soft type == CLASSIC;
14
keep PORT_DATAOUT == appendf("esa_data[%d]" , id);
15
keep PORT_POP_EMPTY == appendf("fifo_empty[%d]", id);
16
keep PORT_POP_ALMOST_EMPTY == appendf("ESA_PopAE[%d]" , id);
17
keep PORT_POP_ALMOST_FULL == appendf("ESA_PopAF[%d]" , id);
18
keep PORT_POP_FULL == "";
19
keep PORT_POP_ERROR == "";
20
keep PORT_POP_REQ == appendf("etrc_popreq_n[%d]" , id);
21
keep soft PORT_POP_CLK == "sysclk";
22
keep soft PORT_PUSH_CLK == "sysclk";
24
// keep logger.verbosity == HIGH;
30
'(PORT_POP_EMPTY)' = 0;
31
'(PORT_POP_ALMOST_EMPTY)' = 0;
32
'(PORT_POP_ALMOST_FULL)' = 0;
38
event clkSys is rise('sysclk');
39
event bug001 is true('pkdescnt[0]' == 1)@clkSys;
43
dut_error("Bug 001 found ... crash!");
50
extend ETRC FIFO_INJECTOR {
52
pkt_desc_if : pkt_desc_if is instance;
53
keep pkt_desc_if.MAC_uid == id;
55
add_new_pkt_desc() is also {
56
pkt_desc_if.indicate_one_pck_desc_is_come_in_FIFO();
60
pkt_desc_if.reset_sig();
65
extend ETRC CLASSIC fifo
76
if (fifo_plot &&(sys.time > 200000) && // avoid fifo plot before beginning of operation of RAMC
77
!((injector.generated_packet_nb == injector.max_generated_packets && injector.stream.size() == 0)
78
|| injector.generated_packet_nb == 0))
80
if (fifo_use_logger) {
81
messagef(HIGH, "ETRC[%d] : %d\n", id, fifo.size());
84
out("__fifo_plot: ", sys.time, " ", fifo.size() );