> I've found that my vendor has a 4-wire RS-485 full-duplex connection into
> an FPGA fast enough to handle 5-10 Mbits, and I'd like to coordinate
> communication using that interface (together with some isolators). What
> would be a good protocol for exchanging packets of 4-20 32-bit words, with
> acknowledges? I need to exchange simple command/reply sequences, receive
> asynchronous events, and send/receive bulk data (firmware updates, realtime
> sensor data). I figure something with embedded clock and data over 2 wires
> is needed, but don't know what options are available. 10 Mbit Ethernet and
> HDLC come to mind, though. Multi-drop would be a plus, with devices wired
> in a daisy chain. On the host side I want to use a tiny Linux card, so a
> protocol with good hardware support in SBCs would be nice.
You can do almost anything in a FPGA, so you'd be best working
backwards from the tiny Linux card.
How fast do you actually need to go ?
Look at FTDI and Silabs for USB<->Serial options.
-jg
Reply by Kenneth Porter●October 27, 20072007-10-27
I've found that my vendor has a 4-wire RS-485 full-duplex connection into
an FPGA fast enough to handle 5-10 Mbits, and I'd like to coordinate
communication using that interface (together with some isolators). What
would be a good protocol for exchanging packets of 4-20 32-bit words, with
acknowledges? I need to exchange simple command/reply sequences, receive
asynchronous events, and send/receive bulk data (firmware updates, realtime
sensor data). I figure something with embedded clock and data over 2 wires
is needed, but don't know what options are available. 10 Mbit Ethernet and
HDLC come to mind, though. Multi-drop would be a plus, with devices wired
in a daisy chain. On the host side I want to use a tiny Linux card, so a
protocol with good hardware support in SBCs would be nice.