Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

TSE or SGDMA related problem with concurrent tx and rx

Hi,

Premise: I don't know if this problem is actually related to tse or sgdma; maybe even to Nios tse driver, although I don't think so.

I'm sending and receiving Ethernet packets using the standard tse reference design with minimal modifications (only added another timer and a few pio for test purposes).

I don't have timing issues in the design and it has no evident problems with tcp stack and a software like simple_socket_server.

In my design I actually don't use tcp stack but I simply send and receive raw ethernet packets.

All works fine as long as I don't have both a rx and a tx packet in the same moment (at least this seems to be the issue): a rx packet is lost if it arrives when my board is transmitting.

Example: I have a test a device which loopbacks the tx packet; if I connect it directly to my dev board I usually don't receive the answer (although sometimes I do...); if I connect them through an Ethernet switch (so a small delay between tx and rx is introduced) it works.

The PHY is correctly set to 100Mbit full duplex (I checked with an Ethernet tester), so there shouldn't be problems with concurrent rx and tx packets.

Maybe there could be any problem with memory available for rx? I use the ref design standard settings.

Can anyone suggest me if the problem is related to tse or sgdma?

Regards

17 Replies