Skip to content
Snippets Groups Projects
Commit da084f23 authored by BRONES Romain's avatar BRONES Romain
Browse files

Change Packeter to output fifo frame

* This avoid tvalid uncontinuous, not handled by ethernet subsystem IP.
parent 93082380
Branches fix_uncontinuous
Tags
No related merge requests found
......@@ -292,7 +292,7 @@ begin
----------
fifo_tuser(0) <= or_reduce(fifo_tuser_slv);
inst_fifo: entity work.ccn_axis_fifo_frame
inst_fifo: entity work.ccn_axis_fifo_pframe
port map(
s_axis_aresetn => aresetn,
s_axis_aclk => aclk,
......@@ -324,7 +324,7 @@ begin
end if;
end process p_fsm_sync;
p_fsm_comb:process(fsm_state, packeter_run, new_seq, pkt_cnt_zero, pkt_ix_tready, frame_timeout)
p_fsm_comb:process(fsm_state, packeter_run, new_seq, pkt_cnt_zero, pkt_ix_tready, pkt_ix_tvalid, frame_timeout)
begin
case fsm_state is
when STANDBY =>
......@@ -361,7 +361,7 @@ begin
fsm_state_next <= ERR_SEQ;
elsif frame_timeout = '1' then
fsm_state_next <= ERR_TO;
elsif pkt_cnt_zero = '1' and pkt_ix_tready = '1' then
elsif pkt_cnt_zero = '1' and pkt_ix_tready = '1' and pkt_ix_tvalid = '1' then
fsm_state_next <= STANDBY;
else
fsm_state_next <= RUN;
......
......@@ -92,6 +92,23 @@ set_property -dict [list \
set_property GENERATE_SYNTH_CHECKPOINT 0 [get_files $xcipath]
# GENERATE AXIS FRAME FIFO
set xcipath [create_ip -name axis_data_fifo -vendor xilinx.com -library ip -version 2.0 -module_name ccn_axis_fifo_pframe]
set_property -dict [list \
CONFIG.TDATA_NUM_BYTES [expr $CCN_FRAME_W/8] \
CONFIG.TUSER_WIDTH {1} \
CONFIG.FIFO_DEPTH {256} \
CONFIG.FIFO_MODE {2} \
CONFIG.IS_ACLK_ASYNC {1} \
CONFIG.SYNCHRONIZATION_STAGES {3} \
CONFIG.HAS_TKEEP {1} \
CONFIG.HAS_TLAST {1} \
CONFIG.HAS_PROG_EMPTY {0} \
] [get_ips ccn_axis_fifo_pframe]
set_property GENERATE_SYNTH_CHECKPOINT 0 [get_files $xcipath]
####################
## CCN UNPACK IPS ##
####################
......@@ -110,19 +127,16 @@ set_property -dict [list \
set_property GENERATE_SYNTH_CHECKPOINT 0 [get_files $xcipath]
#########################
## CCN PACK/UNPACK IPS ##
#########################
# GENERATE AXIS FRAME FIFO
set xcipath [create_ip -name axis_data_fifo -vendor xilinx.com -library ip -version 2.0 -module_name ccn_axis_fifo_frame]
set_property -dict [list \
CONFIG.TDATA_NUM_BYTES [expr $CCN_FRAME_W/8] \
CONFIG.TUSER_WIDTH {1} \
CONFIG.FIFO_DEPTH {256} \
CONFIG.FIFO_DEPTH {64} \
CONFIG.FIFO_MODE {1} \
CONFIG.IS_ACLK_ASYNC {1} \
CONFIG.SYNCHRONIZATION_STAGES {3} \
CONFIG.HAS_TKEEP {1} \
CONFIG.HAS_TLAST {1} \
CONFIG.HAS_PROG_EMPTY {0} \
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment