A possibility is SPI (Serial Peripiheral interface).
Your PC104 will need a separate line for each device select (addressing done in hardware, not part of the data protocol). It's a snap to implement in hardware.
You might be able to do it with a high speed card capable of SDLC. This is a token passing protocol, and your devices need to be connected in a ring. Infineon and others have devices that can handle this protocol. AFAICR they should be able to handle the data rate.
Are you sure you want PC104 and not PC104+? The PC104 with an ISA bus is going to be a limitation. At least with PC104+ you get a PCI bus.
I've used some of Sealevel.com's PC104 equipment for RS422 on a 20+ node network. They have a new product that supports 10M bps, but not quite your 3Mbyte/sec. ACB-104.ULTRA PC/104-Plus RS-232, RS-422, RS-485, RS-530, RS-530A, V.35 Synchronous Serial Interface (uses Z16C32)
formatting link
If you can changed to PC104+ with a PCI interface instead of PC104 with an ISA bus, then General Standards.com might have a product that gets close to what you want (only 10Mbits/sec..
We are currently using 10Base 2. It is pretty much an obsolete technology these days. Most of the major manufacturers have obsoleted their PHYs for it. Designing it into a product that will have a life of
5+ years doesn't seem like a safe decision right now.
Considering ISA is classed as a 2MBytes/sec bus (as PC104 = ISA), how are you going to get 3MBytes/sec across?
Personally at these rates either use as someone else has said PC104plus for higher bandwidth.
Then consider 100baseT network and accept the uncertainty factor, or split your 20 nodes into sub-networks of smaller sizes each with its own 'network' interface. Your network interface then can be RS422/485, or other means.
Personally I think you are trying to "fit a quart into a pint pot".
--
Paul Carpenter | paul@pcserviceselectronics.co.uk
PC Services
GNU H8 & mailing list info
For those web sites you hate
With simple selfmade hardware this specification is doable. As physical medium choose RS422, RS485, LVDS, all on twisted pair. A separate clock line allows synchroneous hardware. As serializer/deserializer, have a look at CPLDs & Serdes.
Since you don't specify a bus width, have you considered SCSI? Years ago I saw an article in DDJ where somewone had networked a couple of PCs through SCSI. I know the SCSI standard does not support more that 8/16 devices, but you could use the SCSI hardware to implement your own protocol and thus address more that 16 devices.
I've got no interest at all in developing an interface from scratch.Thats why I'm asking here. Although if it meant saving the cost of a 20 port Ethernet switch in each machine I'd give it serious consideration.
Maybe IEEE 1399 is an option ? Upto 63 devices may be daisy chained and the data rate is 400Mb/s. Cable length between devices are only upto 4.5m. It looks like one of the variants based on this core technology should handle your requirements.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.