Hi all, to implement something like a passthru mode, we want to directly connect two XAUI ports inside the FPGA. The FPGA is a Xilinx Virtex-6. Therefor we did instantiate two XAUI-cores and connected txd/txc from one core with the rxd/rxc from the other core and vice versa. Because both cores use a different refclk we simply added two synchronizer FFs in between. In our test-design this works. But when added to the full design this code fails (the data after the synchronizer FFs seems scrambled). Is it at all possible to directly connect two XAUI cores? Is it possible to connect two blocks with the same clock frequency but - probably - different clock phase just using 2xFFs? Kind regards, /gw -- For reply: Remove the additional chars from the local part.
Directly connect two XAUI ports inside FPGA
Started by ●April 20, 2015
Reply by ●April 23, 20152015-04-23
"Guenther Wenninger" <g!!rw@bitschubbser.org> wrote in message news:slrnmja7fp.cf4.g!!rw@masterbase.bitschubbser.org...> Hi all, > > to implement something like a passthru mode, we want to directly > connect two XAUI ports inside the FPGA. The FPGA is a Xilinx Virtex-6. > > Therefor we did instantiate two XAUI-cores and connected txd/txc from > one core with the rxd/rxc from the other core and vice versa. > Because both cores use a different refclk we simply added two > synchronizer FFs in between. > > In our test-design this works. But when added to the full design > this code fails (the data after the synchronizer FFs seems scrambled). > Is it at all possible to directly connect two XAUI cores? > Is it possible to connect two blocks with the same clock frequency > but - probably - different clock phase just using 2xFFs?WHat about a DCFIFO and do transaction within packet boundary? E.g. transfer to different clock domain (read fifo) when a full packet is in? Regards Tomas D.
Reply by ●April 28, 20152015-04-28
Reply by ●April 28, 20152015-04-28
Hi all, thank you for the input. I also had the idea to use a FIFO, but this needs some non-trivial glue-logic as we want to dynamically change the connection mode from "direct-connect" to "internal-data-to-xaui". What I still would like to know: If it is "okay" to synchronize two registered std_logic_vector's (same clock frequency, different phase) using a 2-FF synchronizer. What seems to have helped in the end was the AR from Xilinx: http://www.xilinx.com/support/answers/39492.html Thanks again and kind regards, /gw Guenther Wenninger <g!!rw@bitschubbser.org> schrieb:> Hi all, > > to implement something like a passthru mode, we want to directly > connect two XAUI ports inside the FPGA. The FPGA is a Xilinx Virtex-6. > > Therefor we did instantiate two XAUI-cores and connected txd/txc from > one core with the rxd/rxc from the other core and vice versa. > Because both cores use a different refclk we simply added two > synchronizer FFs in between. > > In our test-design this works. But when added to the full design > this code fails (the data after the synchronizer FFs seems scrambled). > Is it at all possible to directly connect two XAUI cores? > Is it possible to connect two blocks with the same clock frequency > but - probably - different clock phase just using 2xFFs? > > Kind regards, > /gw >-- For reply: Remove the additional chars from the local part.