<zyp>
I'd expect the last signal to both mark the end of a received packet and terminate a packet to be sent, but I haven't looked to see if it actually works that way
<rowang077[m]>
But I don't know enough about the migen/litex to understand what is going on the receive side
Degi_ has joined #litex
Degi has quit [Ping timeout: 240 seconds]
Degi_ is now known as Degi
FabM has joined #litex
FabM has joined #litex
<_florent_>
Hi rowang077[m], the LiteEthStream2UDPTX/LiteEthUDP2StreamRX are packetizing/depacketizing the frames to simplify use, so don't give you delimiter control/status.
<_florent_>
to have them, you have to compose/extract the packet with your logic and then work directly with the UDP Port.
<_florent_>
I could however have a look to see if we could support it in LiteEthStream2UDPTX/LiteEthUDP2StreamRX, but that was not the initial aim
<rowang077[m]>
@florent Clear! It's not that big of an issue for me right now. Just wanted to make sure for the RX side.
<rowang077[m]>
_florent_: This is the right tag :)
<rowang077[m]>
The only thing I'm worried about withouth having control over UDP packets is if a packet is lost. Let's say I transmit 1000 bytes "frame". Liteeth will make 2 udp packets out of that (as an example). The header consists of of some kind of packet id and a length. Now the second udp packet is dropped. The application has no way to detect this dropped packet except by adding a crc check. But even then you are now "desynchronized" in some
<rowang077[m]>
unpredictable way.
<rowang077[m]>
Basically since you have no control over packets you have to thread it as a lossy bytestream.