Altera_Forum
Honored Contributor
14 years agoTSE MAC and marvell phy 88e1111 troubleshooting
Hi ,all
I am using development tools:Quartus II 10.1,Nios IDE 10.1.Hardware :Arria II GX, EP2AGX260FF35I5N. I am using TSE MAC and the tools described above,and a custom board with the devices described above.The FPGA design of the custom board is largely based on Cyclone II ep3c120 development kit (with revisions to the type of memory used and input frequency (20 Mhz instead of 50 Mhz ,and working frequency of the SOPC system.I am using MARVELL PHY 88E1111,the same as on evaluation board (s) ).Software running on Nios II processor is the same as the on running on evaluation board and it is lwip-based TCP/IP stack.(http://www.alteraforum.com/forum/showthread.php?t=23787).on the evaluation board it works correctly. On my custom board,on the other hand,it does not function properly.It doesn't reply to ping requests correctly.After deep inquiring of the issue,i was able to isolate the problem:The RX path works perfectly ,and the ping is received correctly ,and the SW tries to reply to the ping.But I am not able to see any ARP response from the board (the MAC) on my wireshark sniffer.After thorough debugging I was able to see that the SW does reply to the ping,and i am able to see data on ethernet TXD lines and TX_EN line rise every ping.At first I suspected PHY error and after comparing PHY registers at points of initialization,after receiving ping request and after sending ping reply I was able to see that PHY raises FIFO over/underflow error.After comparing the TX signals between my board and evaluation board (GTX_CLK and ENET_TXD0) I can see that both boards return the same data pattern,but my custom board returns data at TXD0 ,which somehow is wider by a clock pulse (about 100 ns larger ,at the speed of 100 Mbps,25 Mhz CLK).This could be the cause for the error.Also, I would like to point out that the PHY is overheating (though the temperature is in valid range ,comparing to evaluation board PHY ,which is not ).So I would like to know what is the source of the error and how to solve it .Thank You.