# CardBus

CardBus es el nombre que reciben las tarjetas pertenecientes al estándar PCMCIA 5.0 o posteriores (JEIDA 4.2 o posteriores). Todas ellas son dispositivos de 32 bits y están basadas en el bus PCI de 33 MHz (a diferencia de las PC Card que pueden ser de 16 o 32 bits)
Incluyen Bus Mastering, que admite la comunicación entre su controlador y los diversos dispositivos conectados a él sin que intervenga el CPU. Muchos chipsets están disponibles tanto para PCI y CardBus, como los que soportan Wi-Fi.

## Introducción

El CardBus actual es el resultado evolutivo de lo que originalmente fuera el PCMCIA, acrónimo del estándar y la asociación que le diera origen, la Asociación Internacional de Tarjetas de Memoria para Computadora Personal (Personal Computer Memory Card International Association, PCMCIA), que pide los requisitos de mecatrónica y logitrónica.
Este estándar, en su origen, fue desarrollado exclusivamente para la utilización de tarjetas de expansión de memoria (revisión 1.0), mismas que eran utilizadas en sistemas de cómputo de mano y laptops (no confundir con notebooks), a falta de unidades de disquete. Estas tarjetas PCMCIA tenían 3.3 mm de grosor, y finalmente fueron conocidas como Tipo I.
Las tarjetas Tipo I eran a 16 bits y únicamente podían almacenar información por tratarse de una extensión de memoria. En este tipo de tarjetas se podía incluir RAM en cualquiera de sus variantes, SRAM, DRAM, Flash RAM y ROM. La información almacenada en RAM era mantenida por una batería tipo reloj y su condición monitoreada a través de circuitería que ofrecía tres estados: ok, precaución y datos no garantizados. Era necesario cambiar la batería aproximadamente cada 11 meses para sostener los 2 MB de capacidad que tenían las más grandes. Las más rápidas eran las de tipo SRAM y finalmente se integró circuitería de compresión para permitir que 4 MB físicos pudieran almacenar hasta 8 MB.
En el caso de ROM, se daba la posibilidad de incluir aplicaciones para la utilización de programas específicos. Liberaciones posteriores del estándar PCMCIA, a partir de la versión 2.0, fueron expandidas para incluir tarjetas de entrada/salida, tales como módems, tarjetas de red, sonido, etcétera. Los fabricantes estaban presionados para cumplir con los requerimientos del factor de forma del Tipo I, con lo cual llegó el momento de crear un Tipo II, con un grosor de 5 mm y finalmente el Tipo III con 10.5 mm, usualmente para micro discos duros. Existe un Tipo IV, que si bien no es reconocido por la norma, es utilizado por algunos fabricantes para discos duros de mayor capacidad.
Aun cuando el estándar PCMCIA ha crecido de manera importante, es relevante el hecho de que todos los tipos evolutivos han sido 100 % compatibles con modelos anteriores, esto es, una tarjeta Tipo I puede ser utilizada en ranuras tipo II y III, sin complicaciones. Inclusive algunas computadoras portátiles están diseñadas para dar cabida, alternadamente, a 2 tarjetas tipo I o II o una tipo III.
El 16 de septiembre de 1997 se realizó una demostración del soporte de la industria, anunciando un nuevo estándar con el nombre PC Card, y su complemento, el CardBus, en vez de PCMCIA 3.0. En referencia al cambio de nombre existen diversas versiones, así como tipos ya que mientras se dice que este nombre busca eliminar la confusión existente entre el Tipo y la versión, ya que para el momento existen 3 tipos y 2 versiones.
El tipo se refiere al tamaño, específicamente el grosor; y la versión, a las características de entrada/salida de los dispositivos. En el estándar PC Card se incorpora Acceso directo a memoria (Direct Memory Access, DMA), una interfaz a 32 bits y 33 MHz llamada CardBus y se mejora la administración de energía.
Un concepto elemental del PCMCIA, y que heredaran las versiones posteriores, es lo que se conoce como conectar y usar (plug-and-play) y cambio en caliente (hot swap), lo que permite conectar y desconectar las tarjetas con el equipo encendido y comenzar a utilizarlas, o dejar de hacerlo, inmediatamente. Estos servicios se pueden ofrecer a través de lo que la especificación define como servicios de zócalo (socket services). En un principio, en los albores de la computación móvil, estos servicios eran posibles a través de programas residentes en memoria (Terminate and Stay Resident, TSR) que se incorporaban en los ficheros de inicialización del sistema.