cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
277 Views
Registered: ‎05-21-2018

ERNIC v2.0 with CMAC v3.1 - FCS & AXI Stream tuser

The ERNIC IP core apparently checks tuser when tlast is high on the input AXI-Stream (rx_pk_hndler_s_axis).  If tuser is low, the input packet is flagged with a Frame Check Sequence (FCS) error and dropped.  This is not documented in pg332.  

This can be observed In the simulated design.
1)  Enable error buffer by setting bit 5 of the configuration register
0x20000 per pg332
32'h50060000 in XRNIC_Reg_Config.vh in the example design

2) Set the xrnic_inst rx_pkt_hndler_s_axis_tuser input to 1'b0 in the top level module.

In simulation the incoming message is flagged with error status 32'h8000_000 indicating FCS error.

 

The problem is that the cmac_usplus core (when using the AXIS interface) has the opposite polarity on tuser.  Per pg203, rx_axis_tuser is high when indicating an error.

Simple work around is to invert the tuser signal between the CMAC axis_rx port and the ERNIC rx_pkt_hndler_s_axis port.

1 Reply
Highlighted
Contributor
Contributor
161 Views
Registered: ‎10-05-2018

Thanks for that. I was facing the same issue. ERNIC IP User Guide does not specify how it uses the tuser signal.

0 Kudos