Data transfer for real time analysis

P

Pini

Guest
hi,
We are planning a data acquisition system with 4-12 sub units. Each sub unit
produce data of 25MBit/sec. The distance between the boxes and computer is
about 2 meters.
I'm willing to transfer and analyze the data in real-time. I'm willing to
close a control loop in 1-5msec (I. wish 100usec ......).
What is the recommended serial protocol?
The sub units will be in-house made the host computer for data analysis and
storage will be a PC (probably with raid HD).
What communication HW/protocol should I use in my sub units?
What communication HW/protocol should I use in the PC?

Regards
Pini

PS
There is a discussion about this tread at comp.realtime
 
We are planning a data acquisition system with 4-12 sub units. Each sub unit
produce data of 25MBit/sec. The distance between the boxes and computer is
about 2 meters.
I'm willing to transfer and analyze the data in real-time. I'm willing to
close a control loop in 1-5msec (I. wish 100usec ......).
What is the recommended serial protocol?
The sub units will be in-house made the host computer for data analysis and
storage will be a PC (probably with raid HD).
What communication HW/protocol should I use in my sub units?
What communication HW/protocol should I use in the PC?
One straw man would be 100 megabit ethernet. That lets you use
off-the-shelf gear on the PC end. For 12 sub units, you probably
need a gigabit ethernet card on the PC and a 12 port switch
with a gigabit uplink. (It also gives you lots of flexibility
on the length which might be handy some day.)

If you want to build your own PCI card, look at LVDS. 25 megabits
should be easy at 2 meters. Manchester encoding costs a factor
of 2 in link bandwidth (which you have lots of) but it's real
simple to decode.


--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
commercial e-mail to my suespammers.org address or any of my other addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 
I've found some boards with 32 LVDS channels. The problem is that all the 32
channels have a common clock. I would like to connect a different sub unit
to each pin of the 32 channels. How can I distribute the clock to all sub
units?


ţţ"Hal Murray" <hmurray@suespammers.org> ëúá áäĺăňä
news:9tSdnVZp843-mRLdRVn-sA@megapath.net...
We are planning a data acquisition system with 4-12 sub units. Each sub
unit
produce data of 25MBit/sec. The distance between the boxes and computer
is
about 2 meters.
I'm willing to transfer and analyze the data in real-time. I'm willing to
close a control loop in 1-5msec (I. wish 100usec ......).
What is the recommended serial protocol?
The sub units will be in-house made the host computer for data analysis
and
storage will be a PC (probably with raid HD).
What communication HW/protocol should I use in my sub units?
What communication HW/protocol should I use in the PC?

One straw man would be 100 megabit ethernet. That lets you use
off-the-shelf gear on the PC end. For 12 sub units, you probably
need a gigabit ethernet card on the PC and a 12 port switch
with a gigabit uplink. (It also gives you lots of flexibility
on the length which might be handy some day.)

If you want to build your own PCI card, look at LVDS. 25 megabits
should be easy at 2 meters. Manchester encoding costs a factor
of 2 in link bandwidth (which you have lots of) but it's real
simple to decode.


--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or
unsolicited
commercial e-mail to my suespammers.org address or any of my other
addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 
I've found some boards with 32 LVDS channels. The problem is that all the 32
channels have a common clock. I would like to connect a different sub unit
to each pin of the 32 channels. How can I distribute the clock to all sub
units?
What clock are you talking about?

I'm guessing that it's setup for driving 32 parallel signals and
listening to 32 parallel signals. Are there extra clock signals?

If those are full duplex channels and you only need 12 remote boxes,
then you could do something like send 2 signals to each box, use
one for a clock and the other for data. Now each box has a clock
synchronized to your central board. You might want a PLL to clean
it up.

Then you can do the same thing on the return path. The trick here
is that each clock has been delayed by some unknown time, but it
is running at the exact same frequency as your central clock. You
need a tiny FIFO to solve that problem. I think that takes a depth
of 4 and some tricky initialization but I can't recreate the tricks
on the fly.

You could also use a crystal on each remote box and use Manchester
encoding. If your local clock is 10x or 16x the bit rate, you can build
a small FSM to parse Manchester encoding. 10x 25 megabits is 250 MHz,
or only 125 if you process it 2 bits at a time. If you have a clean
signal you can probably do it with fewer samples per bit. (You can
work out the FSM with pencil and graph paper.) If you have 32
recv channels and only need 12 remote boxes you could use 2 channels
per box and run at half speed.

Note that a signal clock for all 32 channels is OK. That's the 10x
oversample clock, not the bit rate clock. You still have to figure
out what to do when the data arrives at slightly different rates and/or
at different times.

--
The suespammers.org mail server is located in California. So are all my
other mailboxes. Please do not send unsolicited bulk e-mail or unsolicited
commercial e-mail to my suespammers.org address or any of my other addresses.
These are my opinions, not necessarily my employer's. I hate spam.
 

Welcome to EDABoard.com

Sponsor

Back
Top