What can anyone tell me about SerDes?


Thread Starter

Wes Crucius

The subject says it all... Anything that you can tell me would be appreciated. My application is inherently one master device sending a single (read: broadcast) message to as many as 64 slave devices. This message needs to go out about once every 50-80 microseconds, with very little jitter. The latency must also be VERY small, on the order of 5-10 microseconds. Then during the idle time, the remaining 40-75 microseconds, the master polls some status from each of the slaves on a round robbin basis. Polling one slave per 80 microseconds, for a total of 5.12 milliseconds for a full round-robbin cycle, would be fine. The data packets in each direction would easily fit within the 46 data-byte minimum of an ethernet frame, so I'm considering Ethernet, but am nervous of things like switch latency, especially because a multi-level star heirarchy would probably be required (or do they make 65+ port cut-through ethernet switches for less than an outrageous fortune?). It sounds like there may be some SerDes implementations that look like Dual-Ported-Ram, which from the processor overhead perspective would be great... Oh yeah, cabling lengths (200-300 FT), electrically noisy environment, and isolation requirements will probably mandate fiber instead of UTP. Could a star network be created reasonably with SerDes?

Thanks again for any feedback...
Is my question just dense, or hasn't anybody ever heard of SerDes? I thought it was the newest thing in high speed peer-peer serial comms (1.25 Gb)... What about the Ethernet approach, surely someone is doing this? I just read an article that indicated that Beckhoff has a scheme for tunneling raw Ethernet frames under the Win2k TCP/IP stack to get 7 microsecond updates for 368 bits of digital I/O, which appears to not so coincidentally be the minimum Ethernet data packet size of 46 bytes.

Surely someone on the list here must be toying with the approach?


Curt Wuollet

Most of the automation world is still toying with RS232. Can you implement this SerDes in RLL? :^)