Bus de escritorio de Apple - Apple Desktop Bus

Bus de escritorio de Apple
ADB Icon.svgApple ADB Keyboard.jpg
El icono de Apple Desktop Bus y uno de los primeros teclados de Apple Desktop Bus
Escribe Interfaz de dispositivo de entrada humana
Diseñador computadora Apple
Diseñado 1986 ; Hace 35 años ( 1986 )
Fabricante Apple Computer Inc.
Producido 1986 hasta 1999
Reemplazado Teclado y mouse RS-422 / 6522
Sustituida por USB y FireWire (1998–1999)
Conectable en caliente apoyo ocasional
Externo
Patas 4
Conector Mini-DIN
Señal de datos Flujo de comandos en serie bidireccional
Bitrate 125 kbit / s máximo
(~ 10 kbit / s reales)
Max. dispositivos 16 máximo
(~ 5 reales, 3 compatibles)
Protocolo De serie
Pinout.svg del conector MiniDIN-4
Toma hembra desde el frente
Pin 1 Bus de dispositivos de Apple Datos
Pin 2 PSW Encendido
Pin 3 +5 V +5 voltios de potencia
Pin 4 GND Suelo
Mismo conector que S-Video

Apple Desktop Bus (ADB) es un bus periférico de serie de bits patentado que conecta dispositivos de baja velocidad a las computadoras. Se introdujo en el Apple II GS en 1986 como una forma de admitir dispositivos de bajo costo como teclados y ratones, lo que les permite conectarse en una cadena tipo margarita sin la necesidad de concentradores u otros dispositivos. Apple Device Bus se introdujo rápidamente en modelos posteriores de Macintosh , en modelos posteriores de computadoras NeXT , y también vio algún otro uso de terceros. Al igual que el conector PS / 2 similar utilizado en muchos PC compatibles en ese momento, Apple Desktop Bus fue reemplazado rápidamente por USB cuando ese sistema se hizo popular a fines de la década de 1990; El último puerto externo de bus de escritorio de Apple en un producto de Apple fue en 1999, aunque permaneció como un bus solo interno en algunos modelos de Mac hasta la década de 2000.

Historia

AppleBus

Al principio de la creación de la computadora Macintosh, el equipo de ingeniería había seleccionado el bastante sofisticado Zilog 8530 para suministrar comunicaciones en serie. Esto se hizo inicialmente para permitir la conexión de varios dispositivos en un solo puerto, utilizando protocolos de comunicación simples implementados dentro del 8530 para permitirles enviar y recibir datos con la computadora host.

Durante el desarrollo de este sistema AppleBus, las redes informáticas se convirtieron en una característica de vital importancia de cualquier sistema informático. Sin ranuras para tarjetas, el Macintosh no pudo agregar fácilmente soporte para Ethernet o estándares de redes de área local similares . El trabajo en AppleBus se redirigió a fines de redes y se lanzó en 1985 como el sistema AppleTalk . Esto dejó a la Mac con los puertos originales de mouse y teclado de un solo propósito, y sin un sistema de propósito general para usar con dispositivos de baja velocidad.

Bus de escritorio de Apple

El primer sistema que utilizó Apple Desktop Bus fue el Apple II GS de 1986. Se utilizó en todas las máquinas Apple Macintosh , empezando por Macintosh II y Macintosh SE . Apple Desktop Bus también se usó en modelos posteriores de computadoras NeXT. La gran mayoría de los dispositivos Apple Desktop Bus son para entrada, incluidos trackballs , joysticks , tabletas gráficas y dispositivos similares. Los usos con fines especiales incluyeron dongles de protección de software e incluso el módem TelePort .

Mover a USB

El primer Macintosh en pasar de Apple Desktop Bus fue el iMac en 1998, que usa USB en su lugar. La última computadora Apple que tuvo un puerto Apple Desktop Bus fue la Power Macintosh G3 (azul y blanco) en 1999. Las PowerBooks e iBooks basadas en PowerPC todavía usaban el protocolo Apple Desktop Bus en la interfaz interna con el teclado y el panel táctil integrados . Los modelos posteriores utilizan un trackpad basado en USB.

Diseño

Físico

De acuerdo con la filosofía general de diseño industrial de Apple, se pretendía que Apple Desktop Bus fuera lo más simple de usar posible, sin dejar de ser económico de implementar. Se encontró un conector adecuado en forma de conector mini-DIN de 4 pines, que también se utiliza para S-Video . Los conectores son pequeños, están ampliamente disponibles y solo se pueden insertar de la "manera correcta". No se bloquean en su posición, pero incluso con un ajuste por fricción, son lo suficientemente firmes para tareas ligeras como las diseñadas para Apple Desktop Bus.

El protocolo Apple Desktop Bus requiere solo un pin para los datos, etiquetado como Apple Desktop Bus . La señal de datos se sincroniza automáticamente . Dos de los otros pines se utilizan para una fuente de alimentación de +5 V y tierra. El pin +5 V garantiza al menos 500 mA y requiere que los dispositivos usen solo 100 mA cada uno. ADB también incluye el pin PSW que está conectado directamente a la fuente de alimentación de la computadora host. Esto se incluye para permitir que una tecla en el teclado encienda la máquina sin necesidad de que el software Apple Desktop Bus interprete la señal. En diseños más modernos, un microcontrolador auxiliar siempre se mantiene en funcionamiento, por lo que es económico usar un comando de encendido sobre el canal USB estándar.

Apple controlaba el transceptor de decodificación ASIC y las patentes asociadas ; esto requirió que los proveedores trabajaran más de cerca con Apple. En Macintosh SE, el bus de escritorio de Apple se implementa en un microcontrolador Microchip PIC16CR54 de la marca Apple.

El bus de escritorio de Apple está implementado en uno de los primeros microcontroladores PIC de Microchip en Macintosh SE.

Comunicación

El sistema Apple Desktop Bus se basa en dispositivos que tienen la capacidad de decodificar un solo número (la dirección ) y pueden contener varios pequeños bits de datos (sus registros ). Todo el tráfico en el bus es impulsado por la computadora host, que envía comandos para leer o escribir datos: los dispositivos no pueden usar el bus a menos que la computadora lo solicite primero.

Estas solicitudes toman la forma de cadenas de un solo byte . Los cuatro bits superiores contienen la dirección, el ID de uno de los dispositivos de la cadena. Los cuatro bits permiten hasta 16 dispositivos en un solo bus. Los siguientes dos bits especifican uno de los cuatro comandos y los dos últimos bits indican uno de los cuatro registros. Los comandos son:

  • talk - le dice al dispositivo seleccionado que envíe el contenido de un registro a la computadora
  • listen - le dice al dispositivo que establezca el registro en el siguiente valor
  • flush - borrar el contenido de un registro seleccionado
  • reset - decirle a todos los dispositivos en el bus que se reinicien

Por ejemplo, si se sabe que el mouse está en la dirección $ D, la computadora enviará periódicamente un mensaje de 1 byte en el bus que se parece a:

1101 11 00

Esto dice que el dispositivo $ D (1101) debería hablar (11) y devolver el contenido del registro cero (00). Para un mouse, esto significa "dime los últimos cambios de posición". Los registros pueden contener entre dos y ocho bytes. El registro cero es generalmente el canal de comunicaciones principal. Los registros uno y dos no están definidos y, por lo general, están destinados a permitir que los desarrolladores externos almacenen información de configuración. El registro tres siempre contiene información de identificación del dispositivo.

Enumeración e identificación

Las direcciones y la enumeración de los dispositivos se establecen en los valores predeterminados cuando se restablecen. Por ejemplo, todos los teclados están configurados en $ 2 y todos los ratones en $ 3. Cuando la máquina se enciende por primera vez, el controlador de dispositivo ADB enviará talkcomandos preguntando a cada una de estas direcciones predeterminadas conocidas, a su vez, por el contenido del registro tres. Si no llega respuesta de una dirección en particular, la computadora la marca como muerta y no se molesta en sondearla más tarde.

Si un dispositivo responde, lo hace diciendo que se está moviendo a una nueva dirección superior seleccionada al azar. Luego, la computadora responde enviando otro comando a esa nueva dirección, pidiendo al dispositivo que se mueva a otra nueva dirección. Una vez que esto se completa, ese dispositivo se marca en vivo y el sistema continúa sondeándolo en el futuro. Una vez que todos los dispositivos se enumeran de esta manera, el bus está listo para ser utilizado.

Aunque no era común, es posible que el bus de bus de escritorio de Apple tenga más de un dispositivo del mismo tipo enchufado: dos tabletas gráficas o dongles de protección contra copia de software , por ejemplo. En este caso, cuando solicite dispositivos en esa dirección predeterminada, ambos responderán y podría ocurrir una colisión. Los dispositivos incluyen un poco de tiempo que les permite evitar este problema. Después de recibir un mensaje del host, los dispositivos esperan un breve tiempo aleatorio antes de responder, y solo lo hacen después de "espiar" el bus para asegurarse de que no esté ocupado.

Con dos dongles enchufados, por ejemplo, cuando el bus se configura por primera vez y consulta esa dirección, uno de ellos será el primero en responder debido al temporizador de espera aleatorio. El otro notará que el autobús estaba ocupado y no responderá. El anfitrión enviará otro mensaje a esa dirección original, pero como un dispositivo se ha movido a una nueva dirección, solo el otro responderá. Este proceso continúa hasta que nadie responde a la solicitud en la dirección original, lo que significa que no hay más dispositivos de ese tipo para enumerar.

Las velocidades de datos en el bus son teóricamente tan altas como 125 kbit / s. Sin embargo, la velocidad real es en el mejor de los casos la mitad, debido a que solo se comparte un pin entre la computadora y los dispositivos, y en la práctica, el rendimiento es aún menor, ya que todo el sistema se maneja por la rapidez con la que la computadora sondea el bus. El Mac OS clásico no es particularmente adecuado para esta tarea, y el bus a menudo se atasca a unos 10 kbit / s. Los primeros módems Teleport que se ejecutan a 2400 bit / s no tienen problemas para usar Apple Desktop Bus, pero los modelos posteriores se vieron obligados a pasar a los puertos RS-422 más costosos a medida que las velocidades se movían a 14,4 kbit / sy superiores.

Problemas

Si bien los conectores Mini-DIN no se pueden enchufar de "manera incorrecta", es posible tener problemas para encontrar el camino correcto sin mirar dentro de la cubierta del conector circular. Apple intentó ayudar utilizando agarraderas de plástico blando en forma de U alrededor de los conectores para enchufar tanto enchufes como enchufes de modo que el lado plano tenga una relación específica con el chavetero de la carcasa, pero algunos fabricantes externos ignoraron esta característica. Además, hay cuatro formas de orientar el conector de recepción en un dispositivo como un teclado; varios teclados de Apple utilizan al menos tres de estas posibles orientaciones.

El conector mini-DIN solo está clasificado para 400 inserciones y es fácil doblar una clavija si no se inserta con precaución; Además, el enchufe puede aflojarse y provocar una función intermitente.

Algunos dispositivos Apple Desktop Bus carecen de un conector de paso, lo que hace imposible conectar en cadena más de uno de estos dispositivos a la vez sin unidades divisorias oscuras. Pocos ratones o trackballs los tienen.

Una peculiaridad de Apple Desktop Bus es que, a pesar de ser eléctricamente inseguro para el intercambio en caliente en todas las máquinas, excepto en unas pocas, tiene todas las capacidades básicas necesarias para el intercambio en caliente (como los autobuses modernos) implementadas en su software y hardware. En prácticamente todos los sistemas Apple Desktop Bus originales, no es seguro conectar un dispositivo una vez que el sistema está encendido. Esto puede provocar la apertura de un fusible soldado en la placa base. Si lo lleva a un distribuidor autorizado, esto puede resultar en un cambio de placa base con un gasto significativo. Una alternativa simple es obtener un fusible a un costo nominal y conectarlo en paralelo a través del fusible abierto de la placa base (no necesariamente requiere soldadura ).

Patentes

  • 4.875.158 Ashkin; Peter B. (Los Gatos, CA), Clark; Michael (Glendale, CA)
  • 4.910.655 Ashkin; Peter B. (Los Gatos, CA), Clark; Michael (Glendale, CA)
  • 4.912.627 Ashkin; Peter B. (Los Gatos, CA), Clark; Michael (Glendale, CA)
  • 4.918.598 Ashkin; Peter B. (Los Gatos, CA), Clark; Michael (Glendale, CA)
  • 5.128.677 Donovan; Paul M. (Santa Clara, CA), Caruso; Michael P. (Sudbury, MA)
  • 5.175.750 Donovan; Paul M. (Santa Clara, CA), Caruso; Michael P. (Sudbury, MA)
  • 5,828,857 Scalise; Albert M. (San José, CA)

Ver también

Referencias

enlaces externos