Open bluecmd opened 4 years ago
PLL for generating the needed 66/64 clock seems to be happy with a 312.5 MHz and 156.25 MHz input.
On the PHY side I think this should work:
And the MAC:
There seems to be need a converter between XGMII DC and Standard, see "XGMII Mapping to Standard SDR XGMII Data" in the Transceiver guide.
The MAC code seems to be fine for usage in Qsys directly while the PHY needs to be core-ized.
If PCIe continues to be a hassle it might be worth to figure out how to get the CDCM61001 clock up and running.
That would allow another clock source for use for Ethernet. For a 156.25 MHz clock (10GigE) it seems driving PR1=1, PR0=0 , OD0=1, OD1=1, OD2=0 will do the trick.
Likely this is going to be the clock pin:
U53 SFP1G_REFCLK_p 125.0 MHz LVDS PIN_AH6
which we will obviously call something else.The clock config pins are configured by the MAX II, so there is likely going to be some need to talk to it:
Something like this (generated from builder):
The values for both
clk1
andclk2
seems to align. Other known values are:0 = Unchanged 1 = Disabled 2 = 62.5 MHz 3 = 75 MHz 4 = 100 MHz 5 = 125 MHz 6 = 150 MHz 7 = 156.25 MHz 8 = 187.50 MHz 9 = 200 MHz 10 = 250 MHz 11 = 312.5 MHz 12 = 625 MHz
Creating an IP core for configuring the two clocks seems like the best thing to do.