Thanks, Rysc for your valuable inputs. I understand that using DDIO interface might not give consistent results across pins/ devices at 1Gbps.
We have N different clocks each sending out 8 channels of data, synchronised to the respective clock. All the clocks are of the same frequency but of different phases. N can be higher than the number of PLLs that any Arria V device can provide. (example N=8 or N=16). Keeping this constraint in mind, I was trying to use non-PLL mechanisms.
My question is as follows:
(1) If using CDR is a solution, will it work when the data does not have embedded clock information? In an initial training pattern can be generated, will it suffice if the data is constantly held at '0' or '1' with very few transitions?
(2) If using non-PLL mechanism such as ALTDDIO is an option, what is the maximum frequency (if not 1Gbps) at which we can expect consistent output.
Thanks again for your quick response.
Regards,
--Shantanu.
--- Quote Start ---
The setup and hold timing is not good. (The on-die variation in the models is really large). For 1 Gbps I believe you'll have to use altlvds logic.
Are the devices transmitting all referenced to the same clock? If so, you can use a single PLL and DPA to clock them all in. DPA basically oversamples on each incoming channel, and calibrates to it. So the phase-relationship between clock and data does not matter at all. You just want to make sure the incoming clock has a 0PPM difference from the data(i.e. they are all generated from the same source clock upstream). I have seen designs with one device sending clock and data, and the clock line is used to capture data from multiple other devices. I've also seen where many devices send data to the FPGA, and the clock sent with all of them is ignored. Instead, the base clock that drives the transmitters also drives the FPGA and is used for DPA.
If your devices are all driven from different reference clocks(so they are the same frequency on paper but in reality will drift from each other), you can use DPA with CDR(clock-data recovery). I can't remember if AV supports this, but you can give it a try.
DPA is a really nice feature, but there is one caveat. If capturing data from multiple devices, the sample point will probably not be near the middle of the clock for some interfaces. What that means is that in a single interface, some channels might be off a bit(it will be the correct data, just shifted one bit). In that case, you need the transmitter to send a test pattern and then add some logic to add a shift in the DPA to align for that. There are some control signals in DPA for doing that.
Good luck.
--- Quote End ---