PC Hardware in a Nutshell, 3rd Edition [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

PC Hardware in a Nutshell, 3rd Edition [Electronic resources] - نسخه متنی

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید










Chapter 24. USB Communications


The
first PCs shipped in 1981 used serial ports and parallel ports to
connect external peripherals. Although the RS-232 serial and
Centronics parallel technologies had improved gradually over the
years, by the mid-'90s those technologies had
reached their limits. In terms of connectivity to external devices,
the PC of 1995 differed very little from the PC of 1981; the ports
were a bit faster, perhaps, but they were fundamentally
similar.


In the interim, the bandwidth needs
of external peripherals had increased greatly. Character-mode
dot-matrix and daisy-wheel printers had given way to graphic-mode
page printers. Modems were pushing the throughput limitations of
RS-232. Also, it was obvious that emerging categories of external
peripheralssuch as digital cameras, CD writers, tape drives,
and other external storage deviceswould require much more
bandwidth than standard serial or parallel connections could provide.
Neither was bandwidth the only limitation. Serial and parallel ports
have the following drawbacks for connecting external peripherals:

Low bandwidth



Standard serial ports top out at 115 Kb/s, and parallel ports at 500
Kb/s to 2 Mb/s. Although these speeds are adequate for low-speed
peripherals, they are unacceptably slow for hi-speed peripherals.


Point-to-point connections



Standard serial and parallel ports
dedicate a port to each device. Because there is a practical limit to
the number of serial ports and parallel ports that can be installed
in a PC, the number and type of external devices that can be
connected are limited.


Resource demands




Each serial or parallel port occupies
scarce system resources, in particular an IRQ. A PC has only 16 IRQ
lines, most of which are already occupied. It is often impossible to
install the required number of serial or parallel ports because
insufficient interrupts are available.


Ease-of-use issues




Connecting devices to serial or
parallel ports may be complex and trouble-prone because cable pinouts
and port configurations are not well-standardized. Serial ports in
particular accept a wide variety of different cables, none of which
is likely to be interchangeable with any other. Parallel ports use
more standardized cable pinouts, but various parallel devices may
require different port configurations. In particular, attempting to
daisy-chain parallel devices via pass-through ports often introduces
incompatibilities. Also, serial and parallel ports are always located
on the rear of the computer, which makes connecting and disconnecting
them inconvenient.



What PCs really needed was a fast bus-based scheme that allowed
multiple devices to be daisy-chained together from a single port on
the PC. SCSI had the potential to fulfill this need, but its high
cost and complexity made it a nonstarter for that purpose.
IEEE-1394, also called
FireWire, might have been suitable, but FireWire
is a proprietary Apple technology with, at the time, high licensing
costs that motherboard and peripheral makers refused to pay. The PC
industry had long been aware of the need for better external
peripheral connectivity, but it was not until 1996 that vendors
finally began to address it. Their solution is called
Universal Serial Bus (USB).

USB is aptly named. It is

universal because
every modern PC or motherboard includes USB and because USB allows
you to connect almost any type of peripheral, including modems,
printers, speakers, keyboards, scanners, mice, joysticks, external
drives, and digital cameras. It is

serial in
that it uses serial communication protocols on a single data pair. It
is a logical

bus (although the physical topology
is a tiered star) that allows up to 127 devices to be daisy-chained
on a single pair of conductors.

One convenient way to think about USB is as an outside-the-box
Plug-and-Play bus. All connected USB devices are managed by the
USB Host Controller Interface
(HCI) in the PC, and all devices share the IRQ
assigned to that HCI. Devices can (in theory, at least) be plugged or
unplugged without rebooting the computer.

Although
nearly all PCs and motherboards made since 1997 have USB ports, for a
long time those ports were nearly useless, for three reasons:

    USB requires native operating system support to provide full
    functionality. Until Windows 98 and Windows 2000 began to
    proliferate, that support was lacking. Windows NT 4 and early Windows
    95 releases have no USB support, although a few peripheral makers
    provided custom drivers to allow their devices to work under these
    operating systems. Windows 95 OSR 2.1 introduced limited support for
    a few USB devices, but using USB under Windows 95 is an exercise in
    frustration. Windows 98/98SE/Me/2000/XP support USB 1.1. Windows XP
    supports USB 2.0 natively if SP1 or later is applied, although you
    may need to download the latest release of the USB 2.0 driver from
    the Windows Update site. Even with the latest service pack installed,
    Windows 2000 does not support USB 2.0 directly, although you can
    download native Windows 2000 USB 2.0 drivers from the Windows Update
    site. For more information about USB 2.0 support under Windows 2000
    and Windows XP, see Knowledge Base articles 319973 and 312370,
    respectively. The Linux kernel has included USB support since 2.2.18.
    The Linux 2.4.20 or later kernel supports USB 2.0 directly.


    Only Windows 2000 and XP officially support USB 2.0, but many PCI USB
    2.0 interface cards are available that include Windows 9X USB 2.0
    drivers supplied by the hardware vendor. The only PCI USB 2.0
    interface card we have used is the Adaptec USB2connect, which
    operates properly with the supplied drivers. But our readers report
    that many other brands of PCI USB 2.0 adapter cards provide fast,
    reliable USB 2.0 support under Windows 9X.

    USB peripherals were hard to find prior to
    1999, and were often more expensive than versions that used legacy
    interfaces. By 2000, that situation had reversed itself, with USB
    peripherals readily available and often cheaper than peripherals with
    legacy interfaces. As of July 2003, nearly all mainstream external
    peripherals use the USB interface, and old-style serial and parallel
    peripherals are becoming hard to find.

    Early USB ports and peripherals often exhibited
    incompatibilities and other strange behavior. Removing a connected
    peripheral might crash your system, or a newly connected device might
    require a reboot to be recognized. Some peripherals demanded that
    their drivers be reinstalled every time they were disconnected and
    then reconnected. Some peripherals drew so much power that other
    devices on that USB port would cease operating or the system would
    refuse to boot until the offending device was disconnected. And so
    on. In fact, these conflicts and incompatibilities remain a problem
    with more recent USB interfaces and devices, although the problems
    are less severe. As of July 2003, it appears that the teething pains
    USB experienced during its early days have largely been overcome,
    although even some very recent motherboards and chipsets continue to
    cause problems.


Despite
these problems, by mid-2000 USB had achieved critical mass. With
Windows 98/SE/Me and Windows 2000 available and USB peripherals
shipping in volume, USB transitioned from a developing standard with
great potential into a real-world solution, albeit a flawed one. USB
has now largely replaced the legacy connectors that clutter the back
of recent PCs.

Legacy-reduced
motherboards that began shipping in 2000 replaced or supplemented
serial and parallel ports with additional USB portsusually
four rather than the previously standard two.
Legacy-free motherboards provide nothing

but USB ports for connecting external
peripherals (other than perhaps video), and are usually equipped with
six USB portsfour at the rear and two on the front panel. A
few legacy-free motherboards also include IEEE-1394 (FireWire) ports.
Most external peripherals now have

only a USB
interface, as serial and parallel peripherals now teeter on the edge
between obsolescent and obsolete.

Despite its slow
start and the nagging problems that still sometimes plague it, USB
has moved from being the wave of the future to being the current
standard. This chapter tells you what you need to know about USB.


/ 238