12-01-2013 07:43 AM
Is there an actual reason why a master-slave setup of two ISERDESE2 primitives can handle 10 and 14 bit but not 12 bit?
I can see that a 16 bit mode is not possible as the slave version starts with Q3 instead of Q1, but why is a 12 bit mode a problem?
Thanks in advance,
09-29-2016 01:08 AM
No idea but the workaround I mentionned here might work symmetrically for output. Or maybe 12b OSERDESE2 just works with the native cascade setup, I don't know. I never use OSERDES. Is it a fast signal you have to output ?
10-07-2016 11:27 AM
I haven't tried playing with it, but it would seem to me that there should be no need to tell it how many bits, other that related to whether one or two serdes are required. I would think that setting it to 14 would work for 12 or 10 as well, just fine, as long as the frame clock was 1/6 (12 bit DDR) or whatever of the bit clock. I would presume the implementation is a double buffered combination of shift register and holding register. It isn't obvious why fewer shift clocks before a load clock would make any difference to the hardware. Am I missing something? There would obviously be "don't care" bits in the output, but they don't even have to be routed to anything.
11-07-2016 10:10 AM
Push Xilinx support to get the latest version of xapp524 from Marc. He has done some modifications.
I asked for help to get xapp524 to synthezise for 12-bit and I posted some modifications to the original xapp524 here:
05-19-2021 05:29 AM
I am not sure if I understand your question. Do you mean you want to know if you should use OSERDES if you need to send a serial data over LVDS ? Well I guess if you can then sure you should, it saves you ressources, you don't have to add some severe timing constraints, and it enables higher frequencies. Now if you ask whether it's mandatory or not, then no, or at least it depends on your frequency. If you don't need such a high frequency, and you're struggling using OSERDES (it sure can be tricky sometimes), then you can use ODDR and make your own shift registers using LUTs instead. I think there is some performance data in the data sheet comparing ODDR and OSERDES.