PCMCIA BUS OVERVIEW
Expanding Portable
Systems
Founded in 1990, the
Personal Computer Memory Card International Association
(PCMCIA), developed a set of standards by which additional
memory could be added to portable systems. It soon became
apparent that this same interface could be used to add I/O
devices and hard disk drives as well, thereby dramatically
increasing functionality of laptop computers. Today, just about
any device available for desktop computers using an ISA or PCI
bus is also available with a "PC-Card" interface for use with
laptop computers, and in some cases, handheld machines.
Physical Characteristics
The PCMCIA
specification 2.0 release in 1991 added protocols for I/O
devices and hard disks. The 2.1 release in 1993 refined these
specifications, and is the standard around which PCMCIA cards
are built today.
PCMCIA cards are
credit card size adapters which fit into PCMCIA slots found in
most handheld and laptop computers. In order to fit into these
small size drives, PCMCIA cards must meet very strict physical
requirements as shown in the figure below. There are three types
of PCMCIA cards, Type I generally used for memory cards such as
FLASH and STATIC RAM; Type II used for I/O peripherals such as
serial adapters, parallel adapters, and fax-modems and
Type III which are used for rotating media such as hard disks.
The only difference in the physical specification for these
cards is thickness.
|
PCMCIA Card Physical Characteristics |
|
Interface:
68 Pins |
 |
|
I/O Connection:
manufacturer determined |
|
Length:
85.6 mm |
|
Width: 54.0
mm |
|
Thickness:
dependant on Type (see right) |
Card & Socket Services
Functionally, a
PCMCIA card can perform any memory or I/O operation so long as
it adheres to the PCMCIA interface structure. As shown in the
figure below, PCMCIA is a tiered system which uses a set of
device independent drivers to integrate any type of PCMCIA card
into the host system. Socket Services, the lowest tier in the
architecture, provides a universal software interface for the
PCMCIA sockets themselves. Socket Services manages all the
sockets installed in a system so that resources can be properly
allocated. It is also the means by which individual cards access
registers on the host system. Socket Services can be added to a
computer as a device driver, or it can be built into PC BIOS.
Directly above
Socket Services in the hierarchy sits Card Services. Card
Services is an application programming interface (API) which
permits multiple software programs to work with multiple PCMCIA
cards. For instance, Card Services will allow both Internet
applications and fax applications to use an installed PCMCIA
card modem. Like Socket Services, Card Services can be
implemented as a device driver. It can also be built into a
computer's operating system, as it is in Windows
95/98/NT/2000/XP and OS/2.
16-Bit PCMCIA
PCMCIA specification 2.1 provides
for a 16-bit bus interface, has a maximum clock speed of 10MHz
and is capable of speeds to 20Mbps. The 2.1 spec. does not
provide for bus mastering, DMA, or multiple interrupts, While
PCMCIA provides only a minimal performance improvement over ISA,
and does not come close in speed to PCI, it does provide for
considerably more flexibility than either of the others.
The two most important features of PCMCIA are its Plug and Play
and Hot Swapping capabilities. As with PCI, PCMCIA cards are
truly Plug and Play--you simply insert them, and instructions
coded into chips on the card provide the information a host
needs to configure the cards and appropriately allocate
resources. Not only are there no jumpers or switches to set,
users never even see the inside of a PCMCIA card. It is simply
inserted into the drive, and the system does the rest. (An open
PCMCIA card is pictured below, to show what you've been
missing.)
This configuration
procedure, along with the fact that PCMCIA cards are not
connected directly to the motherboard, but are easily inserted
into and ejected from a PCMCIA drive, allows the cards to be hot
swappable. This means that the system need not be shut down then
rebooted to add, remove, or exchange cards. Thus, you could
insert a PCMCIA scanner, scan a drawing of your newest board
layout, then remove the scanner and insert a modem and e-mail
the scan to a manufacturer for mass production. While this might
not be very important for desktop PCs with large numbers of
expansion slots, it is vitally important for laptops with
limited resources and usually only two PCMCIA slots. It becomes
even more important for handheld computers which often have only
one PCMCIA slot and one serial port.
32-Bit CardBus
In 1995 the PCMCIA 2.1
specification was enhanced to provide for 32-bit operation. The
new architecture, called CardBus, was closely based on the PCI
bus, and strove to provide the same improvements over the 16-bit
PCMCIA card as PCI did over ISA. As such, CardBus provides for
33MHz operation and correspondingly increased data transfer. It
also introduces DMA and bus mastering to PCMCIA based systems,
which can markedly increase performance. Realizing that there
are still many 16-bit PCMCIA card peripherals in the marketplace
CardBus is fully backward compatible with the older card design.
Because of this backward
compatibility, most manufacturers decided not to redesign our
serial data communication PCMCIA cards for CardBus or any of the
other newer PCMCIA-based busses such as CardBay, as doing so
would limit the number of systems that could use our cards. As
discussed with PCI, because of the limitations imposed by serial
and parallel transfers, there would be no noticeable performance
gains for serial cards under CardBus.
PCMCIA for Data Communication
Though PCMCIA card
use is not limited to portable computers, there are few
instances where it is the best choice for data communication in
desktop computers, however it can be a very useful choice for
sharing peripherals that were purchased for primary use in a
laptop such as a wireless modem or a scanner. In desktops,
PCMCIA is better suited for adding extra storage space via
hard-disk cards, or transferring large files from portable
systems. However, for laptop and handheld computers, PCMCIA
provides a way to connect a varied array of peripherals to the
system, and to share those devices with a desktop computer.
Clearly there is a
size advantage to PCMCIA for portable applications. The cards
are small, light, and have low power requirements. They are an
ideal interface choice for peripherals that have been scaled
down for portable use. Further, the ability to Hot Swap PCMCIA
cards provides for the flexibility needed to use multiple
peripherals with only one or two slots. USB which also provides
Hot Swapping is another alternative for portable applications.
However, to use USB the peripheral devices in your system must
be replaced with bus specific devices--an expensive prospect.
Further, many USB products must be powered by the computer
itself, thereby reducing the time a laptop can function on
battery alone. Or, if too much power is required, they must be
plugged-in, making them less attractive portable solutions. So
if cost and power conservation are your primary concerns, PCMCIA
is still the best, most flexible choice for portable
applications.
There are USB
adapters available, that perform the same function as serial
PCMCIA cards--essentially permitting standard RS-232 or
RS-422/485 peripherals to be connected to a PC that lacks native
serial ports. Such products exist for parallel ports as well.
With parallel ports in particular, (but in some cases with
serial ports ), PCMCIA is a much more reliable solution. Many
software applications designed to work with a computer's native
ports have much more success using a PCMCIA based parallel port
than a USB-based parallel port. This may be because PCMCIA was
based on a traditional plug-in board bus, and thus the add-in
ports implemented via PCMCIA are more similar to a native port
than those implemented via USB which has a completely different
bus architecture.
 |
 |
 |
PCMCIA Specs
|
| Bus
Clock Signal |
|
10 MHz |
|
| Bus
Width |
|
16-bit |
|
|
Theoretical Max. Transfer Rate |
|
20 Mbytes/sec (160 Mbits/sec) |
|
|
Advantages |
|
Ideal for portable
systems, hot swappable, Plug & Play |
|
|
Disadvantages |
|
lower speed , needs
special drive for use in desktop PCs |
|
|