AXI Ethernet Lite Core behaviour to AXI master bus
I've generated a AXI Master which I use in combination with the AXI Ethernet Lite IP Core (V3.0 of the core & Vivado 2020.1) the Ethernet Lite Core is configured to use AXI4LITE. This works fine with the AXI Traffic Generator. However, the moment I attach the core to a custom AXI Master the core exhibits some strange behaviour in simulation. Attached a screen shot from simulation.
It can be seen that for some reason the internal signal write_in_prog is asserted directly when WValid and AWValid are asserted. Of course this needs to be 1 clock cycle later. In addition, BValid remains active even after BReady is deasserted. To me it looks like the clocking of the core is somehow incorrect. There are no warning or so present during validation of the design. In addition, the clock seen in the plot looks good to me.
Unfortunately, the AXI interface to the AXI ethernet lite core is horribly broken and has been for some time. While I haven't seen the bugs you mentioned above before, I have seen, verified, and reported other bugs in this core such as:
Writes getting applied to the read address
VALID/READY handshake violations. RVALID should not be dependent upon RREADY. This can cause a potential lockup, as shown in the following trace
AXI responses getting sent back to the wrong IDs
Write packets getting dropped due to backpressure.
RLAST getting applied to the wrong burst
I first noticed these bugs about a year ago. I last examined Vivado 2020.1 and they were still present. I'm not sure when Xilinx intends to fix them.