> Does anyone know of any PCI cards that can support these speeds?
>
brainbox.com have some running 15M and 18M
--
Med venlig hilsen/mojn/regards
Martin Hansen
Center for Software Innovation
Stenager 2, DK-6400 S�nderborg, Web: www.cfsi.dk
Reply by Rene Tschaggelar●November 3, 20052005-11-03
Larry Martell wrote:
> I am developing an embedded app that must receive a 128 byte
> message every 100 microseconds. It must reply with a 128 byte
> message within 100 us of receiving it's message (i.e. before
> the next message comes in). So I need bandwidth of 10,240,000
> bits/second.
>
> Does anyone know of any PCI cards that can support these speeds?
>
> I have tried to do this with TCP/IP over ethernet, but was
> unable to maintain the needed speeds. I've also tried UDP, also
> without success. I've looked at some USB host-host devices, but
> I haven't found any that support these speeds and allow me to
> programmatically control them. Firewire isn't supported by my
> RTOS, so that's out. So now I'm thinking LVDS or some other
> high speed serial device, but I'm not having any luck finding
> applicable products. Anyone??
The response time is a bit on the short side for a PC.
A modern standard OS won't be able to cope with that.
An embedded systems however can.
Rene
--
Ing.Buero R.Tschaggelar - http://www.ibrtses.com
& commercial newsgroups - http://www.talkto.net
Reply by Larry Martell●November 2, 20052005-11-02
Thanks much to Paul and Jim for your replies. We have found a
high-speed serial PCI card from a company called EDT and we will
most likely go with that.
-larry
Reply by Paul Keinanen●November 2, 20052005-11-02
On 1 Nov 2005 15:12:42 -0800, "Larry Martell" <natkelcri@yahoo.com>
wrote:
>I am developing an embedded app that must receive a 128 byte
>message every 100 microseconds. It must reply with a 128 byte
>message within 100 us of receiving it's message (i.e. before
>the next message comes in). So I need bandwidth of 10,240,000
>bits/second.
That 10.24 Mbit/s bandwidth requirement only applies in a completely
full duplex environment, in which you can transmit the response while
receiving the next request. However, on a half-duplex network (such as
RS-485 or 10base2/5 or 100baseT hubs) the raw data rate would have to
be at least twice that. In addition this would assume that the
response frame would be sent immediately after receiving the request.
Thus 50 us time for the Rx frame and 50 us for the Tx frame. If some
processing (or other latencies) occur after the reception and before
the transmission can begin, the actual data transfer time would be
reduced from the 50 us and thus, some higher raw data rate is
required.
>Does anyone know of any PCI cards that can support these speeds?
>
>I have tried to do this with TCP/IP over ethernet, but was
>unable to maintain the needed speeds.
TCP/IP is useless for this kind of realtime applications.
>I've also tried UDP, also without success.
Why didn't you use raw ethernet frames with 100BaseT and a full duplex
connection ? With any decent hardware receiving and transmitting one
frame every 100 us should not be too hard.
As such also UDP could be used (which would simplify monitoring e.g.
on a PC), since only a fixed IP header would be added to the beginning
of the frame, but the RTOS TCP/UDP/IP stack might cause some extra
delays. When using raw ethernet frames, it might be possible to handle
all the processing in the Rx interrupt routine and fire up the
transmission of the response frame from that Rx ISR.
Paul
Reply by Jim Stewart●November 1, 20052005-11-01
Larry Martell wrote:
> I am developing an embedded app that must receive a 128 byte
> message every 100 microseconds. It must reply with a 128 byte
> message within 100 us of receiving it's message (i.e. before
> the next message comes in). So I need bandwidth of 10,240,000
> bits/second.
It's actually worse than that. Given 10BaseT
there's a 9.6us preamble. Add 20 bytes for
overhead with a type 0600 ethernet packet,
and you're up to 128us. Unless there's some
terrible overhead I'm not aware of, 100BaseT
should work.
Of course, it's game over if there's collisions,
routers or switches....
> Does anyone know of any PCI cards that can support these speeds?
>
> I have tried to do this with TCP/IP over ethernet, but was
> unable to maintain the needed speeds. I've also tried UDP, also
> without success. I've looked at some USB host-host devices, but
> I haven't found any that support these speeds and allow me to
> programmatically control them. Firewire isn't supported by my
> RTOS, so that's out. So now I'm thinking LVDS or some other
> high speed serial device, but I'm not having any luck finding
> applicable products. Anyone??
Reply by Larry Martell●November 1, 20052005-11-01
I am developing an embedded app that must receive a 128 byte
message every 100 microseconds. It must reply with a 128 byte
message within 100 us of receiving it's message (i.e. before
the next message comes in). So I need bandwidth of 10,240,000
bits/second.
Does anyone know of any PCI cards that can support these speeds?
I have tried to do this with TCP/IP over ethernet, but was
unable to maintain the needed speeds. I've also tried UDP, also
without success. I've looked at some USB host-host devices, but
I haven't found any that support these speeds and allow me to
programmatically control them. Firewire isn't supported by my
RTOS, so that's out. So now I'm thinking LVDS or some other
high speed serial device, but I'm not having any luck finding
applicable products. Anyone??
TIA!
-larry