Date: Fri, 17 Mar 1995 06:20:47 -0500 (EST) From: Peter Dufault <dufault@hda.com> To: bde@zeta.org.au (Bruce Evans) Cc: freebsd-hackers@freefall.cdrom.com Subject: Re: Multiport serial cards Message-ID: <199503171120.GAA07796@hda.com> In-Reply-To: <199503170852.SAA12539@godzilla.zeta.org.au> from "Bruce Evans" at Mar 17, 95 06:52:32 pm
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans writes: > > >I'm interested in a board that will let me receive continuous data at > >28.8 on four ports without any problems. At roughly 300 us per > >character that will mean we have to service each port every 4.8 ms with > >a 16550, or roughly 1.2 ms per port. (Of course lots of times when > >you're in the interrupt you'll be able to to serve more than one port) > > This is a small load for sio. The overhead using an AST/4 on a DX2/66 > should be about 6% for input-only and 4% for output-only plus whatever > you protocol handler adds. > > >I think I should use a board with a large FIFO, which I don't think > >any of these have. > > A 1-char "FIFO" as found on 8250's should be adequate provided you have > no bus-hogging devices. sio can handle continuous data in both directions > at once at 115.2 on 2 ports (but not 3) on a 486DX/33 with 8250's. The > system load for this is about 60% (too high for continuous use). A > 486DX2/66 with 16550's can probably handle about 6 times as many ports. > There is no retry in that protocol in the "I own the link" case when all 4 ports are sending at 28.8 continuous. Any corrupted packets must be dropped. In most cases this doesn't matter, and in others the three minute run will be canceled and started over. I wouldn't try this application with 8250s. I realize 16550s can handle this load but like the insurance of more latency - it removes FreeBSD interrupt latency issue completely. Would you be willing to hazard a guess as to the interrupt latency for the SIO on a 486DX/33 for FreeBSD 2.x? How are we for keeping interrupts on in the kernel? I have a two port 16550 board around and will look into performance on that before going ahead to add Digiboard support. Finally - is there an AST/8, or other 8 port 16550 board that works with the "sio" driver? There will be at least two other light duty serial ports for this application. An AST/4 plus COM1 and COM2 will do it, but I would just as soon identify another path. Peter -- Peter Dufault Real Time Machine Control and Simulation HD Associates, Inc. Voice: 508 433 6936 dufault@hda.com Fax: 508 433 5267
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199503171120.GAA07796>