From owner-freebsd-hackers Fri Nov 14 21:58:40 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id VAA02386 for hackers-outgoing; Fri, 14 Nov 1997 21:58:40 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id VAA02378 for ; Fri, 14 Nov 1997 21:58:37 -0800 (PST) (envelope-from bde@zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.6.9) id QAA31140; Sat, 15 Nov 1997 16:53:53 +1100 Date: Sat, 15 Nov 1997 16:53:53 +1100 From: Bruce Evans Message-Id: <199711150553.QAA31140@godzilla.zeta.org.au> To: bde@zeta.org.au, mouth@ibm.net Subject: Re: Status of 650 UART support Cc: hackers@freebsd.org Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Suppose I set all 8 ports to 460,800 bps and saturate them with >inbound data. With the 32-byte FIFO I might set the trigger level to >16, giving 16 bytes of headroom in each UART, or possibly set the >trigger level to 8, giving 24 bytes of headroom. > >Once I start draining the first UART, will I reach the eighth UART >before it's overrun, and if so, how much margin will I have? I'm not >sure how to calculate the time required for the 8-bit bus cycles. 16 character times at 460800 bps is about 348 usec. The worst case is approximately 8 ports saturated with 32 bytes of input, 32 bytes of output and a modem status change. This takes about 2*32 + 1*32 + 5 i/o's per port. Each i/o takes about 1 usec on an 8MHz ISA bus (perhaps 125 nsec more or less). Altogether, it takes about 8*101 = 808. usec. It won't work. OTOH, there will often be less than 32 bytes of input per port (there will normally be >= 16 because the trigger level is 16), and there may be very little input, depending on the application. Altogether, with saturated input and no output it takes at least about 8*37 = 296 usec. This leaves a whole 52 usec for doing real work. It won't work well. Non-saturated cases might work well. Bruce