Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

xilinx rocket io learning materials

Status
Not open for further replies.

ghattasak

Member level 1
Joined
Dec 31, 2012
Messages
33
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,595
hello
where can i find design tutorials and help for understanding and implementing rocket io on xilinx virtex
for fast data transfer?
 

yes i tried that but was thinking of founding something easier and maybe straight forward :D thanks ill return to it
 

what do you think is the easiest and most efficient protocol to use with rocket io for sending data from pc to fpga i have the digilentinc virtex 2 pro board and trying to send the data to a sequential sorter
 

The easiest and most efficient is a simple custom protocol with a start k-code and an end k-code with uninterrupted burst transfers (i.e. SOP-DATA_PACKET-EOP). With a V2P you'll probably want to add a clock correction sequence that is periodically inserted in the output from the PC. Don't recall the exact spacing that was called out in the V2P MGT user guide, but it was something in the us range.

You might want to read about using the transceivers in this document from Xilinx.
http://www.xilinx.com/publications/archives/books/serialio.pdf

If you just want easy to implement, use something like Aurora, which is something core generator can produce.
http://www.xilinx.com/products/design_resources/conn_central/grouping/aurora.htm

Regards
 
but i was a bit confused on what is the hardware used on the pc side ? the normal serial interface does not support such data burst :( should i use ethernet ?

- - - Updated - - -

i am working with this tutorial
http://www.fpgadeveloper.com/2008/03/create-aurora-transceiver.html

but still unsure what will be the hardware used on the pc side
 

So you don't already have a method to hook up the PC to the transceivers. Well in that case you'll either have to use ethernet (use something like UDP so you don't have to have the entire protocol stack, which you don't want to implement in HW) or option 2 is get one of the Xilinx/Altera boards with PCIe and transceivers (of course that means you have two FPGA designs instead of one).

If you go the ethernet route you'll have to make sure you have an ethernet mac chip to connect to the FPGA if the board doesn't already have one. You'll also have to write some SW on the PC side to transmit the ethernet UDP packets to your FPGA design.

Regards
 
oh ok i was thinking about the udp transfer and using labview to transfer the data from the pc to the fpga since labview is the easiest with ready libraries will also build the the ethernet on the fpga side over the aurora protocol i am going through the documents once again just to get a more and clearer view and see the big picture

thank you

- - - Updated - - -

i have the labview virtex 2 pci card hooked up in the motherboard but i didnt check if it support rocket io if it does i will use DMA to communicate with the card and the trancievers do you think that could do ? since this is a labview specific card and not a xilinx/altera one

- - - Updated - - -

the card is pci rio 7830R i will check the datasheets to see if it supports rocket io
 

oh ok i was thinking about the udp transfer and using labview to transfer the data from the pc to the fpga since labview is the easiest with ready libraries will also build the the ethernet on the fpga side over the aurora protocol i am going through the documents once again just to get a more and clearer view and see the big picture
you won't be using Aurora for the Ethernet. You'll be using RGMII, GMII/MII, XAUI or something else.


i have the labview virtex 2 pci card hooked up in the motherboard but i didnt check if it support rocket io if it does i will use DMA to communicate with the card and the trancievers do you think that could do ? since this is a labview specific card and not a xilinx/altera one
the card is pci rio 7830R i will check the datasheets to see if it supports rocket io
That board has a Virtex-II, which doesn't have any MGTs (Rocket IOs) only the Virtex-II Pro has them.

I'm getting a bit confused with what you have available to work with. So you have a NI PCI-7830R and a Digilent V2Pro board on the bench? Can your labview SW access the host (PC) Ethernet?
Is this the Digilent board you have? http://www.digilentinc.com/Products/Detail.cfm?Prod=XUPV2P
This board appears to have a 10/100 Ethernet port and PHY, which means you will be using RGMII or maybe GMII.

Regards
 
yes correct that is the board i have
the ethernet 10/100 is a bit slow wont rocket io be useless since my pc doesnt have proper hardware to interface with it ?
i mean im still a bit lost when i use a slow protocol like the 10/100 ethernet how can rocket io scale it up to 600mbps +

- - - Updated - - -

In 10/100 Mbps mode, the TEMAC uses the MII interface
i should be using the MII interface since i have the 10/100mbps
but will that give a good speed ? this means i wont be using rocket io only normal ethernet udp transfer
what hadware should i have on the pc side to support aurora protocol ?

- - - Updated - - -

in the case where i cannot get higher then the 100mbps ethernet speed the labview board can provide me with dma access and easy to configure that will get me near 250mbps right ? then the rocket io wouldnt be a good use for me here

- - - Updated - - -

on the other at the university i think we have hp servers equipped with 1gb ethernet interface i will try to see if i can use those to benefit from the rocket io speed
 

yes correct that is the board i have
the ethernet 10/100 is a bit slow wont rocket io be useless since my pc doesnt have proper hardware to interface with it ?
i mean im still a bit lost when i use a slow protocol like the 10/100 ethernet how can rocket io scale it up to 600mbps +

In 10/100 Mbps mode, the TEMAC uses the MII interface i should be using the MII interface since i have the 10/100mbps but will that give a good speed ? this means i wont be using rocket io only normal ethernet udp transfer what hadware should i have on the pc side to support aurora protocol ?

in the case where i cannot get higher then the 100mbps ethernet speed the labview board can provide me with dma access and easy to configure that will get me near 250mbps right ? then the rocket io wouldnt be a good use for me here

on the other at the university i think we have hp servers equipped with 1gb ethernet interface i will try to see if i can use those to benefit from the rocket io speed

Okay Stop. It's obvious that you don't have a clear vision of what you are trying to accomplish and are getting lost amid all the "well you could try..." discussions.

First of all let's reset/reboot and start with the following list of what I perceive to be the project requirements.
1. Must use A PC with Labview to generate data.
2. Must post process labview data with an FPGA (i.e. the sequential sorter).
2. Must use a PCI 7830R labview board to interface to a Digilent board.
3. Must use Rocket IO to interface the PC to the Digilent board.
4. Must be able to transfer data at more than 600Mbps+.

Given that set of requirements, you can't accomplish all of them together without new hardware. A PC with labview can be used to generate data, but it won't have access to a multi-gigabit-transceiver (MGT/Rocket IO) without adding a different Xilinx board. The Digilent board supports the MGTs, but there is nothing you have on the PC that can interface to those MGTs. The a serial transfer rate of 600Mbps+ is impossible to accomplish with the setup you currently have.


Therefore instead of continuing down this road, I suggest starting off with the basics.
1. What are the objectives of the demonstration. (e.g. showcase 600Mbps+ serial data transfer? Hardware acceleration of Labview with remote HW?, etc)
2. Determine the requirements to accomplish the objectives in #1.
3. Create a block diagram of the demonstration's configuration. (i.e. what hw/sw is required and how they are all connected and interact)

Once you've accomplished this you'll hopefully have a better idea of what it is you have to implement.

Regards
 
ok i have a vhdl module of a sequential sorter with about 1000 cells i would like to input data from the pc
i have two options:

1)either to input the data from the pc to labview board using DMA
2)input data from the pc to the virtex 2 pro digilent board using rocket io

i did not much understand how rocket io is it is a data aquisition way that works under a protocol ? to speed it up ?
the first part interfacing with labview is easy but if i use a pc from the university i might get to use the ethernet gigabit card and aquire higher speed

my pc support sata serial and ethernet
so i cannot use most of the rocket io protocol the fastest i can get is either to use the ethernet 10/100 with the digilent board
or go back to option 1
 

Use option 1. You've just indicated that using RocketIO wasn't a requirement.

RocketIO or as I prefer to call it MGT isn't a protocol or a data acquisition interface. It is a high speed serial transceiver interface that uses current mode differential signaling to allow transmission of data that has been encoded to ensure there are enough transitions to allow clock recovery from the data lines. Aurora, XAUI, Rapid IO, etc. are all protocols that can be transmitted over a MGT link. It's not used to "speed up" anything, just to transfer up to 2.5Gbps (and more for newer generations of FPGAs) of data between two points using only 2 connections.

Ethernet isn't the same as RocketIO they use different signaling standards. Don't know what signalling standard SATA uses, but I'm sure you would have even more problems trying to use that.

Regards
 
thank you :D
and sorry for the hard time
that clarified alot
 

ok i got myself a network card supporting 1gbps
i will try to implement this on the virtex 2 pro digilent board :D
 

Your digilent board doesn't have Gigabit Ethernet PHY. All it has is 10/100.
 

yes but cant i connect the wires to the sata interface of the mgts ? ill build an intermediate board with wires connected

- - - Updated - - -

then i can make a gigabit phy in the fpga
 

yes but cant i connect the wires to the sata interface of the mgts ? ill build an intermediate board with wires connected
then i can make a gigabit phy in the fpga

sata is a disk drive interface and I'm not sure what you mean by connecting the wires to the sata interface of the MGTs.

What is this intermediate board have on it an Ethernet PHY chip? You can't connect the FPGA directly to a RJ45 and expect to have an GbE connection.

I think you should read some of the articles on Wikipedia about Ethernet PHY chips and Xilinx's Ethernet core user guide to understand how to implement Ethernet on a V2Pro.

Regards
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top