El controlador de comunicaciones IBM 3705 es un ordenador sencillo que se conecta a un IBM System/360 o System/370 . Su finalidad es conectar las líneas de comunicación al canal del mainframe . Fue el primer controlador de comunicaciones de la popular serie IBM 37xx . Se anunció en marzo de 1972. Diseñado para memoria de semiconductores que no estaba lista en el momento del anuncio, el 3705-I tenía que utilizar almacenamiento central de 1,2 microsegundos; el posterior 3705-II utiliza SRAM de 1,0 microsegundos. Se utilizaron componentes de Solid Logic Technology , similares a los del S/370.
El modelo 3705 normalmente ocupa un único bastidor de dos pies de ancho y tres pies de profundidad. Se pueden conectar hasta tres bastidores de expansión para lograr una capacidad teórica de 352 líneas half-duplex y dos adaptadores de canal independientes.
El 3704 es una versión básica del 3705 con funciones limitadas.
IBM pretendía utilizarlo de tres maneras:
La longitud de la palabra de almacenamiento es de 16 bits . Los registros tienen el mismo ancho que el bus de direcciones. Su longitud varía entre 16, 18 y 20 bits según la cantidad de almacenamiento instalada. Un nivel de interrupción particular tiene ocho registros. El registro cero es el contador de programa que proporcionó la dirección de la siguiente instrucción a ejecutar; los otros siete son acumuladores. Los cuatro acumuladores impares pueden direccionarse como ocho acumuladores de un solo byte.
Las instrucciones son bastante simples. La mayoría son instrucciones de registro a registro o de registro inmediato que se ejecutan en un solo ciclo de memoria. Hay ocho instrucciones de referencia de almacenamiento que requieren dos o tres ciclos de almacenamiento para completarse. La única capacidad de desplazamiento es desplazarse a la derecha o agregar un registro a sí mismo.
Un hardware especial ayuda en el cálculo de una comprobación de redundancia cíclica para la detección de errores de transmisión. Se admiten tanto CRC-16 CCITT como CRC-16 IBM. Suponiendo que el valor en ejecución se mantiene en el almacenamiento, el tiempo de ejecución para acumular un byte más es de cinco ciclos de almacenamiento (tres instrucciones).
El cambio rápido de contexto fue un objetivo de diseño. El archivo de registros está dividido en cuatro secciones. Los tres niveles de interrupción más utilizados y el nivel de fondo tienen conjuntos de registros distintos. Por lo tanto, para ingresar a la mayoría de los niveles de interrupción no es necesario guardar los registros del programa interrumpido. El nivel poco utilizado, que procesaba errores de programa y hardware, comparte registros con el siguiente nivel más alto y, por lo tanto, tiene que guardar y restaurar registros.
Los cinco niveles del programa son:
El 3705 tiene un panel de control con luz intermitente que es superior a la mayoría de los demás paneles IBM de ese estilo. Las dos características inusuales (para IBM) son:
El 3705 tiene una capacidad de memoria máxima de 512 KB, pero esto requiere cuatro marcos físicos (el marco base y tres marcos de expansión).
Un Amdahl 4705 tiene una capacidad de memoria máxima de 1024 KB, la cual está contenida en su totalidad dentro del marco base.
Había tres tipos de periféricos disponibles: escáneres de comunicaciones, adaptadores de canal y disquetes de 8" (sólo disponibles en modelos sin adaptador de canal). El primer escáner de comunicaciones y el primer adaptador de canal ocupaban el mismo chasis que la CCU. Los periféricos adicionales requerían chasis adicionales.
Todos los Amdahl 4705 se suministraban con una unidad de disquete de 8", que se utilizaba para diagnósticos y para la carga remota de programas. Esta unidad de disquete y todos los adaptadores de canal estaban incluidos en el chasis base, aunque las interfaces de E/S de canal S/370 adicionales podían requerir un chasis de expansión. Es decir, más de cuatro interfaces de E/S requerían un chasis de expansión, que admitía cuatro interfaces de E/S adicionales.
Se ofrecieron tres escáneres de comunicación diferentes:
El escáner de comunicaciones tipo I era un dispositivo de nivel básico que presentaba una interrupción en cada bit recibido. La transmisión también requería una interrupción para cada bit. En teoría, esto habría permitido usos bastante imaginativos, como el código Morse y la conexión a dispositivos con métodos de trama inusuales. Se podían conectar un máximo de 64 líneas semidúplex. El ancho de banda agregado estaba restringido debido a los altos requisitos de procesamiento.
El escáner de comunicación tipo II realizaba funciones similares a las de un USART . Había una interrupción para cada carácter transmitido o recibido. Se admitían seis formatos de caracteres asíncronos diferentes, dos formas de Bisync y HDLC / SDLC . Un solo escáner podía conectar hasta 96 (64 para el primer escáner) líneas half-duplex. Esta es la base de la capacidad máxima teórica de 352 líneas. En la práctica, el límite era menor, ya que un escáner con más de 48 líneas half-duplex no podía admitir ninguna línea de 9,6 kbit/s .
El escáner de comunicaciones de tipo III era un dispositivo de alto rendimiento para la conexión de líneas Bisync y HDLC / SDLC . Funcionaba en tramas completas. Se utilizaba DMA para buscar y almacenar los bytes de una trama. En teoría, la capacidad de conexión de líneas era la misma que la del escáner de comunicaciones de tipo II (límite de 352 líneas). Aún existía la necesidad de restringir el tamaño del escáner a 48 líneas para soportar 9,6 kbit/s. Restringir el tamaño del escáner a 16 líneas permitía velocidades de línea de hasta 30 kbit/s. Un tamaño de escáner de 8 líneas permitía una velocidad de aproximadamente 60 kbit/s.
Con la sincronización suministrada por módem, una sola línea estaba limitada a 56 kbit/s; con la sincronización interna el límite era 2,4 kbit/s.
La capacidad de conexión de la línea agregada estaba limitada por la velocidad de procesamiento.
En el caso de un escáner de comunicaciones de tipo II, el procesamiento de un carácter recibido o transmitido puede requerir cincuenta ciclos de almacenamiento (cuarenta instrucciones). En un 3705-II, esto da una capacidad total de 20 kB/s . Esto permitiría que unas 160 líneas semidúplex funcionaran a una velocidad media de 120 ciclos por segundo (cps). Como alternativa, el límite teórico sería de dieciséis líneas semidúplex a 1200 cps (9,6 kbit/s). La experiencia de IPSANET indicaba que el límite era de seis líneas full-duplex a 9,6 kbit/s que transportaran una carga pesada. Es posible que el software de IBM tuviera un rendimiento superior.
Para un escáner de comunicaciones de tipo III, el procesamiento de un solo carácter mediante el método de robo de ciclos era bastante económico: se requería un solo ciclo de almacenamiento. Esto daría un límite teórico de un millón de cps (ochenta líneas semidúplex de 9,6 kbit/s). En la práctica, el límite probablemente era menor, ya que se requeriría algún procesamiento para el final de la trama. Además, si el contenido de la trama se moviera en el almacenamiento, esto requeriría 3,5 ciclos de almacenamiento por byte.
Los escáneres de comunicaciones de IBM estaban limitados a 48 líneas en el primer escáner de comunicaciones y a 96 líneas en los escáneres de comunicaciones del dos al cuatro.
Los escáneres de comunicaciones Amdahl teóricamente tenían una capacidad de 128 líneas por escáner, pero esta capacidad se limitó artificialmente a 48 y 96 por razones de marketing.
Se ofrecieron dos tipos de adaptadores de canal:
Los adaptadores de canal de tipo 1 y tipo 4 se diseñaron para la emulación 270x. Reconocían hasta 256 direcciones de canal y transferían datos en pequeñas ráfagas (cuatro bytes para el tipo 1; 32 bytes como máximo para el tipo 4). El hardware podía aceptar casi todos los 240 códigos de comando de canal posibles. El software tenía que analizar el comando del canal y rechazarlo o procesarlo según reglas específicas. El procesamiento de interrupciones requería unos cincuenta ciclos de almacenamiento para procesar una transferencia de cuatro bytes. El 3705 solo podía tener un único adaptador de tipo 1, pero se permitían dos adaptadores de tipo 4.
Un Amdahl 4705 podría tener cuatro adaptadores de canal tipo 4 (no se ofrecían adaptadores de canal tipo 1).
Los adaptadores de canal de tipo 2 y tipo 3 fueron diseñados para uso exclusivo de NCP. Se reconocía solo una dirección de dispositivo. La transferencia de datos se realizaba mediante un robo de ciclo, lo que reducía la sobrecarga si se utilizaban búferes grandes. El hardware aceptaba siete comandos de canal, de los cuales el adaptador procesaba completamente cuatro. Esto dejaba un comando de lectura y dos de escritura para que los procesara el software. Estos adaptadores se podían conectar a cualquiera de los tres tipos de canal System/370 , pero se prefería un canal multiplexor de bloques. El adaptador de tipo 3 podía funcionar simultáneamente (pero no a mitad de un comando) en dos canales diferentes que podían estar conectados a diferentes hosts.
Un Amdahl 4705 podía tener adaptadores de canal de tipo 2 y de tipo 4 (hasta un total de cuatro adaptadores de canal). El adaptador de canal de tipo 2 del Amdahl 4705 también simulaba un adaptador de canal de tipo 3.
El Amdahl 4705 era compatible con un 3705-II comparable y funcionaba aproximadamente 2,5 veces más rápido que éste. El IBM 3704 era una versión básica del 3705. Estaba limitado a 26 líneas half duplex (suponiendo que se tratase de un escáner de tipo 2). El 3704 no era compatible con dispositivos DMA. El rendimiento era aproximadamente el mismo que el de un 3705-I. Se planeó un 4704 (un dispositivo compatible con el 3704), pero nunca se presentó.
El Amdahl 4745 era, en todos sus aspectos, un superconjunto lógico o un subconjunto físico del IBM 3745. Mientras que el IBM 3745 ofrecía uno o dos procesadores físicos y uno o dos buses físicos, ambos aparentemente por redundancia, el Amdahl ofrecía un procesador físico de gran fiabilidad y un bus físico de gran fiabilidad (pero dos buses lógicos), sin necesidad aparente de redundancia. Mientras que el IBM 3745 ofrecía dos buses, el Amdahl 4745 ofrecía un único bus cuya capacidad de rendimiento superaba la capacidad de rendimiento total de los dos buses del IBM 3745.
El diseño del Amdahl 4745 era tal que el programa de control (NCP) no podía determinar si estaba funcionando en un IBM 3745 o en un Amdahl 4745 (o, en realidad, en un IBM 3725 o en un Amdahl 4725). La simulación lógica y física del IBM 3745 (IBM 3725) que realizó Amdahl fue así de completa.
Más tarde, se ofreció un escáner de muy alta velocidad con el Amdahl 4745 (y también con el Amdahl 4725, para el cual IBM no tenía una oferta correspondiente 3725) que ofrecía mayor redundancia sobre el escáner de muy alta velocidad IBM 3745 (1,544 Mbit/s , T1, o 2,048 Mbit/s, E1) al tener la línea conmutable a un 4725/4745 de respaldo bajo el control de la consola del operador.
El 3705 fue finalmente reemplazado por el 3720 y el 3725. El 3745 era similar pero no totalmente compatible. El 3705 fue retirado del mercado en diciembre de 1985. El servicio de mantenimiento de hardware se suspendió en enero de 1999.