Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jul 1996 17:02:32 -0400
From:      "Jacob M. Parnas" <jparnas@jparnas.cybercom.net>
To:        Henry Spencer <henry@zoo.toronto.edu>
Cc:        hardware@freebsd.org, bsdi-users@bsdi.com
Subject:   Re: cable vs. ISDN 
Message-ID:  <199607132102.RAA10473@jparnas.cybercom.net>
In-Reply-To: Your message of Fri, 12 Jul 1996 10:13:43 EDT. <Pine.3.89.9607120949.C21043-0100000@zoo.toronto.edu> 

next in thread | previous in thread | raw e-mail | index | archive | help

In message <Pine.3.89.9607120949.C21043-0100000@zoo.toronto.edu>you write:
>> ...It just seems like
>> a bit of a, kludge to me, for serial input, twice convert everything to a high
>> speed networking protocol, each way, and pay for it on devices that don't need
>> it, to avoid developing a really good long term protocol for serial devices...
>
>It's overkill, yes... but then, one characteristic of a mature technology 
>is that a lot of problems get solved with overkill, because it's simpler
>and cheaper to apply a heavy-duty general-purpose solution than to do major
>custom engineering for each problem.

I agree with this statement except that its done with so many computers and
peripherals/computer that it seems like it really adds up in cost.

>> My question is why was it decided to use such tiny FIFO's?  They went from 1-2
>> bytes to 16 per port, when the speed isn't so vital and with larger FIFO's,
>> it seems like there would be much fewer interrupts, and writing drivers for
>> it would be much easier.  It can't be that expensive should it? ...
>
>There are two interacting problems here, or maybe three.
>
>One is that FIFOs are actually moderately complicated devices, and eat up
>a fair bit of chip area.  Oh, it's not a lot by the standards of modern CPUs,
>but serial-I/O chips generally are not thought to merit the same level of 
>effort and pain lavished on CPUs, and that means they are constrained to
>rather smaller chips.  (Also, they are considered fairly cost sensitive;
>until quite recently, serial ports with *any* FIFOs were premium add-ons
>rather than standard equipment.)

That's interesting.  Modems seem to have like a 2-4 Kbyte FIFO, even 
inexpensive ones, made back in the mid 80's.  Why, except for poor design,
weren't they at least an option on the computer side. (1 byte was normal, 16 was
"buffered")

I'm also confused as to why building FIFO's is difficult or complicated.
I remember we built one as a project in my first hardware course back in 
1982-1983 and nobody found it hard (it was a beginning minor project nobody
seemed to have problems with.

>Another is that until very recently, almost everyone building PC hardware
>thought in terms of classical MSDOS, where only one thing happens at once 
>and nothing is interrupt-driven.  There's no real need for a FIFO if the
>whole computer is sitting there waiting for the next character to arrive.
>Only when you start running a real operating system (or a kludged imitation
>thereof :-)) do you start to care about buffering.

True, but even machines like Sun Sparc 2's or IBM RT's which only ran Unix
had small FIFO's.  And they only ran Unix.

>I guess there is a third issue:  serial ports were minor auxiliaries whose
>performance simply wasn't important.  (And this was self-reinforcing, because
>people with demanding data rates went elsewhere.)

I think this is it.  And therefore, no real need for good design.  Until
well into the product life of these workstations.  But it still seems like
a widespread problems.

Even in MS-DOS if you ran windows, there were/are strict limits without special
boards.

>> What about some DMA connection to the modems? ...
>
>Standard practice in the minicomputer world for 15-20 years, but only just
>starting to get attention in the PC world.  Don't need it under MSDOS,
>after all, so why bother?
>
>                                                           Henry Spencer
>                                                       henry@zoo.toronto.edu

Thanks for the information and ideas.  

Sincerely, Jacob



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607132102.RAA10473>