SerDES with FPGA Rocket I/O, Aurora at 40 Gbits/sec???

Jun 21, 2006 8 Replies

Hi, I am currently using the Virtex-II Pro FPGA FF672 evaluation board from Xilinx. I have implemented the Aurora protocol and used that to send my modulated spectrum through the MGTs onto a spectrum analyzer. Now I have got a weird task: There's a Virtex-II Pro FPGA that receives data from 4 MGTs at



10Gbits/sec. Is it possible to combine the data and send it out at 40 Gbits/sec on the Rocket I/O?? I can only think of a multiplexer that selects one of the 10Gbits/sec and send it out on the Rocket I/O (the speed would be the same). 40 Gbits/sec--> I have no idea. Do let me know if you have come across such a problem and are aware of any solutions/pointers?? Thanks, Vivek

Vivek, the present state-of-the-art in CMOS-FPGAs is that:

3.125 Gbps is fairly easy with dedicated transceivers (unidirectional, differential) 6 Gbps is doable in the same way 10 Gbps is very demanding, but has been proven to be possible, anything faster is impossible for a few years to come.

The world of dedicated chips us> Hi,

Thanks for the pointer, Peter. But is there any way of combining say 4 X 2.5 Gbit/sec Rocket I/Os and send a 10 Gbits/sec on another Rocket I/O. Even the proof of concept will suffice. Thanks, Vivek

Peter Alfke wrote:

There are Virtex-II Pro X parts that have 10Gbit/s-capable RocketIOs, so with those it should be possible to have 4x2,5 Gbit/s coming in on 4 RocketIOs and send out 10gbit/s through another RocketIO. But the Pro X parts are hard to come by.

cu, Sean

Vivek Menon schrieb:

Very simple. The key word is channel bonding. This is done every day in the 10G XAUI interfaces. So the idea is not new and it is doable without too much trouble.

Regards Falk

P.S. The 4x2.5G is 4x3.125G due to 8B10B coding.

Hello, After reading up the Aurora user guide and the different replies for this topic, I have a couple of questions: Assume I have two V2 Pro or V4 boards with 8 Rocket I/O outputs each. I have 4 Rocket I/Os (TX side=4 X 2.5 or 3.125 Gbits/sec) on Board 1 connected to 4 Rocket I/Os (RX side=4 X 2.5 or 3.125 Gbits/sec) on Board2. I have also implemented Aurora protocol. Now is it possible to enable channel bonding and take the output from the 5th Rocket I/O (TX side) on Board 2 and safely assume that it transmits 10 GB/sec. If what I have described holds true, the same concept can be used to combine the data on 4 X 10 Gb/s(which cannot be achieved now). Also, if anyone has suggestions on what specific parameters are to be modified in Aurora, please let me know. I think the three parameters that need to be changed are: INST aurora_module_i_1/lane_0_mgt_i CHAN_BOND_MODE = OFF; INST aurora_module_i_1/lane_0_mgt_i CHAN_BOND_ONE_SHOT = FALSE; INST aurora_module_i_1/lane_0_mgt_i CHAN_BOND_SEQ_1_1 =

00101111100; INST aurora_module_i_1/lane_0_mgt_i SERDES_10B = FALSE;

I th> Yes, we support "channel bonding", which means we can use four

Vivek Menon schrieb:

If the MGTs would support 10G.

Since you dont have a 40G MGT. But you can do channel bonding using 16 MGTs @ 3.125 Gbit/s to form al logical 40G data channel.

Regards Falk

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required