PC Cards
In 1989, the Personal Computer Memory Card International Association (PCMCIA) developed the PCMCIA bus standard that was primarily intended to accommodate the needs of the space-conscious notebook and sub-notebook computer markets. A small form-factor expansion-card format, referred to as the PC Card standard, was also adopted for use. This format was derived from earlier proprietary laptop/notebook memory-card designs. Over time, the entire standard has come to be referred to as the PC Card standard. This is somewhat easier to say than PCMCIA.
The interface is designed so that cards can be inserted into the unit while it is turned on (hot insertion).
The PC Card standard defines a methodology for software programmers to write standard drivers for PC Card devices. The standard, referred to as socket services, provides for a software head to identify the type of card being used, its capabilities, and its requirements. Although the card's software driver can be executed directly on the card (instead of being moved into RAM for execution), the system's PC Card enablers must be loaded before the card can be activated.
TIP
Be aware that the PC Card enablers must be loaded in the operating system before the system can interact with a PC Card in one of its slots.
With the PC Card enablers loaded, you can install a PC Card in the system by shoving the card into one of the system's PCMCIA slots, as illustrated in Figure 3.16. If the computer is running, the card services detect that the card has been installed, and the operating system performs a PnP configuration process for it. If the device is present when the system is started, it is configured as part of the normal PnP boot process. Likewise, if the card is removed from the slot, the PC Card services also detect this event and deactivate the device in the operating system.
Figure 3.16 Inserting a PC Card.
Cardbus
The latest variation of the PCMCIA standard is Cardbus, which is a redefined and enhanced 32-bit version of the PC Card standard. The main purpose of this new specification is to extend the PCMCIA bus to higher speeds with more powerful devices and to provide support for 32-bit I/O and memory data paths.
The Cardbus slot has intelligent software that interrogates cards when they are inserted into the slot. If the slot finds that the card is a PC card, it configures itself to function like a conventional PCMCIA slot. However, if an advanced CardBus card is inserted, the slot reconfigures itself to use the 32-bit bus width and increases speed and low-voltage capabilities of the Cardbus specification.
Although the Cardbus slot is designed to work with older PCMCIA and PC Card devices, the same is not true concerning the use of Cardbus cards in older slot types. The Cardbus card is keyed with a physical sheath around its pins so that it will not plug into the traditional PC Card socket. On the software side, for a Cardbus device to work in a given system, its operating system must support 32-bit data paths.
You can use the following procedure to determine whether a particular system is a Cardbus-enabled system:
Insert the Cardbus card into your system's PC Card slot. If you cannot insert it completely, the slot is not a Cardbus slot.
Check the system BIOS setup and verify that the PC Card option is set to the CardBus option. If no option is available for Cardbus, the system does not support Cardbus devices.
Check the version of Windows installed on your system under Settings, Control Panel, System, General. If you do not have version 4.00.950B or later, you do not have the necessary software to use CardbBus PC Cards.
PC Card Functions
PC Card devices have been developed for a wide variety of portable PC expansion roles, including
Memory and disk-drive functions
Advanced I/O functions
Networking and communication functions
Adding PC Card Memory
Different types of PC Cards have been developed to increase the memory capabilities of notebook computers without requiring you to tear the system apart. The original PCMCIA card was developed as an add-on memory device. Additional memory is still a function of the PC Card industry. ATA flash cards provide semiconductor memory that operates like disk-based mass storage. These cards include intelligent controllers that provide a PC Card version of the ATA (IDE) interface. This version also includes a sophisticated error-detection and correction system. This system is similar to those used in the IDE disk drives described in Chapter 6, "Installing Disk Devices."
Similarly, the Type III PC Card specification was developed specifically to provide an effective add-on disk-drive function through the PCMCIA line. These mini drives can be as small as 1.8 inches and fit in Type II PC Card slots. Their formatted storage capacities can exceed 5GB. They also comply with both the PCMCIA PC Card and ATA standards to provide hot-swappable drives for laptop PCs. PC Card types are covered in more detail in Chapter 8, "System Upgrading and Optimizing."
Advanced PC Card I/O
Several companies have developed high-speed serial interfaces based on the PC Card/Cardbus format. In particular, many PC Cardbased USB interfaces have been developed. These interfaces permit up to 127 different USB devices to be added to the system in a PnP/hot-swap manner.
Likewise, PC Cardbased FireWire ports enable portable computers to connect to a variety of different FireWire-based A/V equipment such as CD and DVD burners, digital cameras and camcorders, digital VCRs, high-resolution printers, scanners, cable set-top boxes, and game controllers.
Even SCSI interfaces have been produced on PC Cards to permit notebook computers to interface with SCSI-based peripherals in the PC environment. These cards offer quick and easy connection to Ultra SCSI and SCSI II (Fast SCSI) devices. These cards typically provide a high-density (HD) 50-pin cable and an HD 50F-to-Centronics 50M adapter, which can be used to attach it to standard Ultra or Fast SCSI peripherals.
Installing PC Cards
Portable computers do not include standard desktop expansion slots for adding peripheral devices to the system, but they do typically include a couple of PC Card slots. Most notebooks provide two PCMCIA slots that can accept a wide variety of I/O device types. PC Cards are relatively easy to install in a PnP system that has the PCMCIA card services function running. Simply slide the card into an open PC Card slot and turn on the machine. The PnP function should detect the card in the slot and configure it with the proper drivers for the type of device it is.
The operating system must support the PCMCIA slots at two levelsat the socket level (universal support for all PCMCIA devices) and at the card level (specific drivers to handle the function of the particular card installed).
Because PCMCIA cards are hot swappable, the operating system's socket service must update the system when a new card is installed or an existing card is removed. If not, the system would lose track of its actual resources. The card service portion delivers the correct device driver for the installed PC Card (that is, when a PC Card modem is removed and replaced with a LAN card, the operating system must automatically update its ability to control and use the new card).
In many cases, the PC Card must furnish a standard I/O connector for connection to the full-sized world. Often these connections are made through nonstandard connectors at the PC Card end but terminate in standard connectors at the I/O device end. For example, a PC Card LAN card, such as the one depicted in Figure 3.17, is not physically thick enough to accommodate the standard RJ-45 plug used with Ethernet networks. To overcome this problem, a thin connector is attached to the card and a standard connector is used at the other end of the cable. Depending on their specific function, some PC Cards require an external power supply to acquire enough power to operate efficiently.
Figure 3.17 PC Card connections.
Installing PC Card Support
There are three possibilities for the card services utility to deliver the proper drivers to the card:
The operating system, such as Windows 9x/Me or Windows 2000/XP, immediately recognizes the card and installs the driver without restarting.
The operating system recognizes the card and has its driver but needs to reboot the operating system for the driver to be loaded.
The operating system does not recognize the card that has been installed and requires an external driver to be loaded. Under Windows 9x, a PC Card Wizard is started to guide the user through the driver installation process. Windows 2000 and Windows XP do not supply a PC Card Installation Wizard.
To install the PC Card (PCMCIA) Wizard on your Windows 9x system, you must navigate the Start, Settings, Control Panel path and access the Add/Remove Programs applet. Click on the Windows Setup tab, select a category, and then click on the Details tab. If you don't see the component listed in the Add/Remove Programs dialog box, it may be one that is present only on the Windows 9x distribution CD. In this case, you can download the component from an online service, such as The Microsoft Network, or from the Microsoft Download Service at the main Microsoft Web site.
At different times, you may want to stop a PC Card driver from being loaded. To turn off support for a PC Card, access the Device Manager tab and expand the PC Card slot node. Then double-click the PC Card controller, and in the Device Usage area, check the Disable in This Hardware Profile checkbox option.
The proper procedure for removing a PC Card from the computer begins with clicking the PC Card status indicator on the taskbar. Then select the command to stop the operation of the PC Card you want to remove. When the operating system prompts you, physically remove the PC Card from the system.
Challenge #1
You are traveling away from your office, and you want to complete as much work on the airplane as possible. You notice that the notebook takes several minutes to perform the PnP configuration portion of the boot process. Your notebook has a PCMCIA modem and network card, and you want to disable these devices while you are traveling so that their drivers do not need to be loaded. How can you disable these devices without permanently removing them (because you want to use them when you get back to the office)?
Refer to the "Challenge Solutions" section at the end of this chapter for the resolution to the challenge.