Вы находитесь на странице: 1из 16

Los intercambios de

informacin con el exterior


Contenido
Introduccin ................................................................................................................................................................................................... 2
Terminologa ............................................................................................................................................................................................. 2
Introduccin histrica al concepto de simultaneidad entre procesamientos y E/S ............................................... 2
Modo bloqueado ................................................................................................................................................................................. 2
Modo por prueba de estado .......................................................................................................................................................... 2
Modo por interrupcin de programa ....................................................................................................................................... 2
Modo automtico por suspensin de programa o modo canal .................................................................................... 2
Encadenamiento automtico de las transferencias ........................................................................................................... 3
Conceptos y tcnicas de base ................................................................................................................................................................. 3
Nocin de interface............................................................................................................................................................................. 3
Descripcin de una salida de informacin (hacia el perifrico) .................................................................................. 4
Descripcin de una entrada de informacin (desde el perifrico) ............................................................................ 4
Nocin de multiplaje.............................................................................................................................................................................. 4
Lneas mnibus o buses ................................................................................................................................................................... 5
Concentracin y fraccionamiento de las informaciones ...................................................................................................... 5
Diferentes tcnicas de ejecucin de una transferencia elemental .................................................................................. 5
Transferencia programada: .......................................................................................................................................................... 6
Transferencia por instruccin forzada: ................................................................................................................................... 6
Transferencia por robo de ciclo: ................................................................................................................................................. 6
Transferencia por acceso directo a memoria: ...................................................................................................................... 6
Resumen de las tcnicas anteriores:......................................................................................................................................... 7
Los canales ...................................................................................................................................................................................................... 7
Enlace programado ................................................................................................................................................................................ 7
Canal automtico: modo canal .......................................................................................................................................................... 9
Encadenamiento de datos ................................................................................................................................................................ 10
Nocin de programa de canal......................................................................................................................................................... 11
Canal multiplado en el tiempo ....................................................................................................................................................... 13
Los dilogos inicializados por el canal .................................................................................................................................. 13
Los dilogos inicializados por un controlador de perifrico...................................................................................... 14
Interrupciones prioritarias .................................................................................................................................................................. 15
Generalidades ........................................................................................................................................................................................ 15
Descripcin de un sistema jerarquizado de interrupciones prioritarias ................................................................. 16
Acuse de interrupcin ........................................................................................................................................................................ 16
Introduccin
Terminologa
Los intercambios de informacin con el exterior requieren de 2 tipos de unidades entre la computadora o
su memoria, por un lado, y los perifricos por otra.
1. Las unidades de intercambio o canales que permiten transferir informacin entre la
computadora y cualquier unidad externa. Los canales ms evolucionados se llaman procesadores
de entrada-salida por diferenciarlos de la unidad central, llamada a veces procesador central.
2. Las unidades de control, o unidades de enlace o controladores de perifricos, que gobiernan
uno o varios perifricos de una determinada clase obedeciendo a las rdenes de la computadora.
A estos dos tipos de unidades se suma el sistema de interrupciones que permite al medio exterior avisar
a la computadora sobre acontecimientos exteriores, como por ejemplo la terminacin de una operacin de
entrada-salida.

Introduccin histrica al concepto de simultaneidad entre procesamientos y E/S


El problema fundamental radica en la diferencia de velocidades entre la ejecucin de instrucciones de un
programa y los ritmos de transferencia, generalmente mucho ms lentos, impuestos por los perifricos.
En principio tal problema se resolvi bloqueando a la computadora hasta concluir la operacin de E/S,
pero el aumento en la potencia de las computadoras hizo que esta solucin sea inadmisible, porque era
ilgico monopolizar la computadora durante 8 segundos para imprimir una lnea con la mquina de
escribir, cuando en ese tiempo se pudieron haber ejecutado varios millones de instrucciones. Esto llev a
buscar procedimientos para ejecutar simultneamente programas y operaciones de E/S:
1. Modo bloqueado: Se dice que una operacin de E/S se realiza en modo bloqueado cuando la
computadora ejecuta el programa de E/S esperando a cada nueva instruccin de transferencia, que el
perifrico est disponible (es el modo del que se habla arriba).
2. Modo por prueba de estado: consiste en ordenar la operacin de transferencia solo cuando el
perifrico est disponible para ejecutarla completamente. Para esto se inclua en el programa, con
cierta periodicidad, puntos de prueba para conocer el estado del perifrico. Esta tcnica resultaba muy
enojosa para el programador.
3. Modo por interrupcin de programa: Antes que obligar a los programadores a incluir los puntos de
pruebas del estado de los perifricos, se opt por liberar a la computadora de la responsabilidad de
vigilar peridicamente el estado de los perifricos y que sean estos los que la avisen cuando estaban
disponibles. Estos lo hacan mediante interrupciones, que consisten en detener momentneamente el
programa en curso para permitir que el programa de transferencia se ejecute con prioridad.
4. Modo automtico por suspensin de programa o modo canal : en el modo anterior, la
transferencia de una palabra implicaba el desarrollo de un programa de interrupcin que duraba de
10 a 20 ciclos de memoria, de los cuales solo uno se usaba realmente para la transferencia.
Esto llev a crear unidades automticas de intercambio o canales, capaces de ocuparse completamente
de la transferencia de todo un bloque de informaciones. Cuando el canal necesita intercambiar
informacin con la memoria, no produce una interrupcin de programa (como en el modo anterior),
sino simplemente una solicitud de servicio para que se le conceda un ciclo de memoria para realizar
dicho intercambio. Puede pasar que el programa en curso no pida acceso al mismo bloque de memoria
en el mismo instante, en cuyo caso la solicitud de servicio no afectar a su desarrollo. En caso
contrario, se suspender el desarrollo del programa durante el ciclo de memoria solicitado por el
canal. Esto hace que la simultaneidad entre programa y E/S sea casi total.
La realizacin de una operacin de entrada salida se desarrolla de la forma siguiente:
1) Es el programa quien inicializa la operacin dndole al canal las informaciones que va a necesitar
(nmero y emplazamiento de los datos a transferir, direccin de la unidad de E/S, condiciones
bajo las cuales debe terminarse la transferencia, etc.). Una instruccin especial inicia la
transferencia y el programa puede continuar independientemente (la transferencia est bajo
control del canal a partir de ese momento).
2) La transferencia se hace al ritmo del perifrico bajo control del canal, que le roba ciclos a la
computadora.
3) El canal avisa que la transferencia termin mediante una interrupcin.
Se distinguen dos tipos de canales automticos: los canales simples o selectores que no pueden
gestionar ms de una transferencia a la vez, y los canales multiplados en el tiempo, capaces de
gestionar varias transferencias simultneamente.
5. Encadenamiento automtico de las transferencias: en el modo anterior, la computadora est
obligada a inicializar cada transferencia cargando las informaciones necesarias en los registros del
canal. Para aliviar a la computadora de esta tarea, se hace que el canal tenga su propio programa. La
unidad central genera en la memoria central un programa de control de E/S o programa de canal,
que contiene las diferentes transferencias sucesivas a realizar. Para lanzar dicho programa, la unidad
central proporciona la direccin del mismo al canal, que se encargar de su ejecucin completa.
Adems, el programa de canal permite encadenar varias transferencias sin intervencin de la unidad
central, lo que se llama encadenamiento.

Conceptos y tcnicas de base


Nocin de interface
Debe ser posible conectar a un canal cualquier tipo de perifrico, para esto sirve la interface, que es la
caja negra que permite adaptar las seales del perifrico a la computadora, y est formada fsicamente
por un cierto nmero de conectores, salidos del canal, en los cuales puede enchufarse el perifrico.
Bsicamente, la interface se compone de 2 tipos de hilos:
Hilos de informacin, que llevan en paralelo la informacin por transmitir (en forma de niveles)
Hilos de gobierno y sincronizacin, que permiten el dilogo entre canal y perifrico.

P
E
R
I
F

R
I
C
O

I N T E R F A C E
Descripcin de una salida de informacin (hacia el perifrico)
El canal:
Posicionar la seal de nivel E/S para indicar que se trata de una salida de informacin;
Posicionar la informacin a salir en las lneas de informacin IN0 a INn;
Por ltimo, enviar un impulso DEM de demanda de servicio, y quedar a la espera;
El perifrico:
Reconocer la demanda DEM y se fijar en el hilo de gobierno E/S para saber si la operacin
consiste en una entrada o en una salida de informacin;
Como E/S vale 1, sabr que se trata de una salida y por lo tanto muestrear mediante un impulso
los hilos de informacin IN0 a INn
Dicho impulso podr ser usado tambin para decirle al canal que la demanda de salida fue
reconocida y la informacin muestreada (envindole el impulso bajo la forma ADEM de acuerdo
de demanda).
Descripcin de una entrada de informacin (desde el perifrico)
El canal:
Pondr el hilo E/S a 0 para indicar que se trata de una entrada;
Enviar el impulso DEM al perifrico
El perifrico:
Recibir la solicitud DEM y sabr que es una entrada (es decir que el debe enviar informacin) por
el valor del hilo de gobierno E/S en cero;
Pondr la informacin a enviar en los hilos IN0 a INn;
Enviar la seal de acuerdo ADEM.
El canal:
Recibe ADEM y lee de los hilos de informacin la informacin solicitada.
: retardo de la seal DEM hasta que se estabilicen los
niveles de salida de informacin.
Espera: el canal permanece bloqueado en espera de
respuesta del perifrico (tiempo indeterminado).
: tiempo durante el que la informacin a la salida
permanece disponible tras recepcin de ADEM.
: tiempo durante el que la informacin suministrada
por el perifrico permanece disponible, tras ADEM.
( corresponden a salida, a entrada)

Nocin de multiplaje
El multiplaje permite concentrar varias vas de entrada en una sola o distribuir una va de salida en
varias vas. Tambin permiten conectar varias unidades externas (perifricos) a un mismo canal. A veces
se usa este mtodo en los canales simples, es decir aquellos que no pueden gestionar ms de una
transferencia a la vez. De esta forma, el direccionamiento de las unidades externas (es decir la seleccin de
la unidad con la que se trabaja en el momento de entre todas las conectadas) se hace en estrella, un hilo
por unidad, despus de decodificar la direccin de la unidad en el canal.

Hilos de la interface
Lneas mnibus o buses
Otra forma de conectar varias unidades externas a un canal es usar una lnea mnibus que las una.
Si una unidad externa no resulta seleccionada, se comporta transparentemente frente a la informacin,
es decir que la transmite sin alterarla.
El direccionamiento puede hacerse en estrella como se explica mas arriba. Tambin es posible usar la
propia lnea mnibus para el direccionamiento, en cuyo caso, un hilo especial indica que la informacin
emitida por el canal es una direccin (no una informacin). Cada unidad externa atravesada por la lnea
mnibus comprueba este hilo a cada transferencia, y si detecta que lo trasmitido se trata de una direccin,
compara la direccin transmitida con la suya propia. Si ambas coinciden, la unidad externa se pone en
estado de dilogo con el canal, en cambio, si son distintas, transmite la direccin a la unidad siguiente.

Concentracin y fraccionamiento de las informaciones


Los perifricos trabajan normalmente a nivel de carcter (6 u 8 bits), mientras que las computadoras lo
hacen a nivel de palabra (varios caracteres). Ello obliga a realizar concentraciones o fraccionamientos
de la informacin, segn se requiera, y esto generalmente se lleva a cabo en el canal, ya que este es comn
a varios perifricos.
Las operaciones de fraccionamiento y concentracin se llevan a cabo mediante sucesivos desplazamientos
sobre dos registros que se supone estn uno a continuacin del otro: un registro de palabra de
comunicacin con la memoria y un registro de caracter de comunicacin con el exterior.

Registro de palabra de
comunicacin con la memoria

Registro de caracter de
comunicacin con el exterior

Para una operacin de salida (hacia el perifrico) los 4 caracteres de la palabra de memoria sern
enviados sucesivamente hacia el exterior, siendo transferido primero el carcter de mayor peso, es decir
la palabra de memoria se fracciona. Para una entrada, los caracteres se van concentrando
sucesivamente para formar una palabra completa.
Diferentes tcnicas de ejecucin de una transferencia elemental
Una transferencia elemental es la transferencia de una informacin (caracter o palabra) desde una
posicin de memoria central a una unidad externa (perifrico), o viceversa, segn se trate de una entrada
o de una salida. La ejecucin de una transferencia elemental supone que se conozca lo siguiente:
Informacin pidiendo el lanzamiento de la transferencia: DEM.
Indicacin del sentido de la transferencia (entrada o salida): SEN.
Direccin de memoria implicada en la transferencia (de la que se va a leer o en la que se va a
guardar): DIR.
Las tcnicas se diferencian en la forma en que la informacin anterior se suministra a la computadora, y
son las siguientes:
Transferencia programada: Es la computadora quien hace la demanda de transferencia DEM. Es
programada porque se ejecuta cuando el programa llega a una instruccin de transferencia. Las
informaciones complementarias son suministradas por dicha instruccin, que puede tener dos formas:
o ENT DIR Entrar informacin y almacenarla en la direccin de memoria DIR
o SAL DIR Leer informacin guardada en la direccin de memoria DIR y hacerla salir

Instruccin de
transferencia

Transferencia por instruccin forzada: Es la unidad externa quien hace la demanda. Genera la
instruccin de E/S y fuerza su ejecucin prioritaria una vez que la unidad central concluye con la
instruccin en curso. El programa en curso queda suspendido durante la ejecucin de esta instruccin.

Transferencia por robo de ciclo: Es la unidad externa quien hace la demanda. La unidad central
termina el ciclo de memoria en curso y concede el prximo ciclo a la unidad externa, la cual provee el
sentido SEN y la direccin implicada DIR (lo que en los dos anteriores se especifica mediante una
instruccin). El programa en curso queda en suspenso durante un ciclo.

Transferencia por acceso directo a memoria: Se supone que la memoria tiene 2 vas de acceso
(muelles), de las cuales una es para la computadora y la otra para la unidad externa. Las peticiones de
ciclo de memoria tanto de la unidad central como de la unidad externa van dirigidas a la unidad de
control de acceso a memoria (UCAM), que gestiona las prioridades de acceso de ambas.
Desde el punto de vista de la unidad externa, el proceso es el mismo que para robo de ciclo, con la
diferencia de que la solicitud de transferencia va dirigida al controlador de acceso a memoria (UCAM)
y no a la unidad central.
El programa en curso no resulta suspendido durante el ciclo de memoria solicitado, excepto cuando la
unidad central haya pedido simultneamente un ciclo de memoria.

Resumen de las tcnicas anteriores: el siguiente cuadro compara las 4 tcnicas en funcin de dos
parmetros:
el mximo tiempo de espera de la unidad exterior desde que se lanza la demanda
tiempo que el programa en curso resulta detenido

Los canales
Enlace programado
No es propiamente un canal sino un medio de acceso controlado por el programa, ya que cada
transferencia elemental est gobernada por una instruccin del programa en curso.
Son necesarias 4 instrucciones de E/S para realizar entradas-salidas en modo programado:
Dos instrucciones de gobierno de transferencias de informacin:
SAL M
que permite llevar el contenido de la direccin de memoria M a las lneas de salida de informacin de
la interfase, y
ENT M
que permite almacenar en dicha direccin la informacin presente en las lneas de entrada de
informacin de la interfase.
Dos instrucciones de control general de las operaciones de E/S, que son:
GCP (gobierno de perifrico)
que lleva la parte de direccin de la instruccin a las lneas de salida de control y direccin, lo que
permite direccionar un controlador de perifrico y especificarle la operacin por ejecutar, y
PRE (prueba de estado)
que almacena en el acumulador el contenido de las lneas de entrada de estados, lo que permite
obtener informacin descriptiva del estado del perifrico anteriormente direccionado por GCP.
Las rdenes o seales de gobierno SI, NI, SC, NC corresponden a estos cuatro tipos de operaciones.
Por ejemplo, para la salida SAL, la informacin permanece en el registro M hasta ser tomada en cuenta por
el perifrico. Durante ese tiempo las puertas SRM y SRI permanecen abiertas para mantener activos los
niveles lgicos en las lneas de salida de
informacin y al mismo tiempo la seal de gobierno
SI permanece activa para indicar una salida de
informacin. Se enva entonces al controlador de
perifrico previamente direccionado, una seal
impulsional DEM. Al recibirla ste (suponiendo que
est disponible), sabe que hay una demanda y se
fija en los hilos de gobierno para saber de qu se
trata. Al detectar SI activa, sabe que se trata de una
salida, por lo que muestrea la informacin de las
lneas de salida de informacin de la interfase y
devuelve a la computadora una seal de acuerdo con la demanda ADEM para liberarla y que empiece con
la siguiente instruccin.

SAL M

3 4 1

GCP DIR PERIF

TMS

DEC

controladores de perifricos
Canal automtico: modo canal
Los canales automticos, a diferencia del enlace programado, son capaces de gestionar el conjunto de una
operacin de E/S sin intervencin de la unidad central, excepto para inicializar y concluir dicha operacin.
Vamos a describir de manera esquemtica una unidad de este tipo en que las transferencias elementales
se hacen por robo de ciclo.
La operacin de E/S queda enteramente definida por: el sentido de la transferencia a realizar (entrada o
salida), y la zona de almacenamiento en memoria de las informaciones por transferir. Esta zona puede
delimitarse mediante la direccin de su primera palabra (DIR) y su nmero de palabras (CDP).

La unidad central es quien inicializa la operacin, por programa (cuando se llega a una instruccin de
E/S). Selecciona el perifrico que va a estar implicado en las transferencias y carga las informaciones que
definen la zona de almacenamiento de la memoria (de la que se van a sacar informaciones o en la que se
van a guardar) en 2 registros del canal, uno es el DEC (direccin en curso) y el otro el CDP (cuenta de
palabras).
Una vez hecha la inicializacin, la operacin de E/S se desarrolla ya al ritmo del perifrico y es a peticin
de este que el canal ejecuta una transferencia elemental. Para esto usa el contenido del registro DEC para
saber con cual palabra de la zona de memoria se est trabajando en ese instante, luego lo incrementa para
que pase contener la direccin de la palabra siguiente y decrementa el registro CDP.
La transferencia termina cuando el canal detecta que el registro CDP llega a cero o cuando el controlador
de perifrico enva una seal de fin de informacin. En ese momento el canal genera una interrupcin para
indicar a la unidad central que la operacin de E/S concluy.
A este modo de funcionamiento soportado por 2 registros, uno para la direccin en curso y el otro para la
cuenta de palabras, se denomina modo canal, y a la unidad que lo soporta se le llama canal.
C A N A L
En el siguiente grfico se muestra un esquema de una entrada de informacin a travs del canal
automtico de Abacus
Suponemos que la operacin ya se inicializ (se cargaron DEC y CDP). En determinado momento,
controlador de perifrico posiciona la informacin en las lneas de entrada de informacin del canal y
le enva una demanda de transferencia (DEM).
El canal recibe la demanda y muestrea la informacin en el registro T (EINT), luego devuelve al
controlador un acuerdo de demanda (ADEM) para liberarlo.
El canal pide un ciclo de memoria (PCM) a la unidad central, para hacer la transferencia elemental, es
decir para guardar la info que le mand el perifrico. La informacin (en T) y el (DEC) ya estn
disponibles para cuando la unidad central lo requiera mas adelante.
La unidad central espera al final del ciclo en curso y luego manda (DEC) S activando SDEC y ENS.
Luego lanza un ciclo de escritura al mismo tiempo que deja disponible (T) en M con SRT y ENM. En
este momento, la informacin enviada por el perifrico se escribe en la direccin de memoria dada por
(DEC).
La unidad central devuelve al canal un acuerdo APCM dicindole que ya escribi la informacin. El
ciclo de E/S termin por lo que devuelve el control al programa.
El canal incrementa DEC, decrementa CDP y si CDP = 0 manda una interrupcin a la unidad central y
un fin de operacin al controlador, sin, espera otra demanda del mismo

Encadenamiento de datos
En el canal automtico, para pasar de una zona de memoria a otra, la unidad central deba desarrollar,
despus de la interrupcin de fin de transferencia correspondiente a la primera zona, un programa cuyo
objetivo sera recargar los registros DEC y CDP del canal, con las caractersticas de la segunda zona y
relanzar la operacin de entrada o de salida.
El encadenamiento de datos permite cargar dichos registros del canal para pasar de una zona a otra sin la
intervencin de la unidad central. Para poder hacerlo, es necesario aadir a las informaciones DEC y CDP
dos informaciones binarias de gobierno:
=0 no interrupcin
IT {
=1 interrupcin
=0 no encadenamiento
ED {
=1 encadenamiento
De esta forma, de haber encadenamiento, las nuevas palabras de control se encontrarn al final de la zona
actual:

As, en el esquema de arriba:


la unidad central solo se encargar de cargar la doble palabra de control (1) en los registros del
canal y de iniciar la transferencia.
Luego, el canal se encargar de transferir la Zona 1, de cargar las palabras de control (2) en sus
registros, ya que ED = 1 en (1), de transferir la Zona 2 y generar la interrupcin pedida en (2), todo
esto sin intervencin de la UC.
Nocin de programa de canal
El canal de las computadoras avanzadas es unidad programable capaz de leer, decodificar y ejecutar un
programa de gobierno de E/S o programa canal, registrado en la memoria central, con los mismos
derechos que la unidad central lee, decodifica y ejecuta un programa de procesamiento. Entonces:
La unidad central lee, decodifica y ejecuta instrucciones;
El canal lee, decodifica y ejecuta instrucciones de canal;
El controlador de perifrico recibe, decodifica y ejecuta cdigos de operacin perifrica.
Cmo funciona el programa de canal?
1) En el curso del programa de la unidad central se genera en memoria el programa de gobierno de
E/S o programa de canal, que consiste en una lista de instrucciones de canal.
2) La unidad central ejecuta una instruccin inicio de E/S que proporciona al canal la direccin del
rgano perifrico asociado y de la primera instruccin del programa canal. Si el perifrico est
libre, se lo pone en actividad, si no, la unidad central es avisada de que el programa de canal no
debe arrancar.
Suponiendo que se cumple lo primero, la direccin de la primera instruccin de canal es enviada y
almacenada en el contador de instrucciones del canal (que funciona como CP en el canal). A
partir de ese instante, el programa de canal se desarrollar sin intervencin de la unidad central.
3) Con lo que se guard en el contador de instrucciones del canal, el canal va a buscar en memoria la
primera instruccin de canal, que tiene los siguientes elementos:

Cdigo de operacin Direccin de la 1ra palabra Cuenta de palabras Indicadores


perifrica de la zona de E/S asociada
a esta instruccin de canal

El canal transmite al controlador del perifrico el cdigo de operacin que le es destinado. En este
momento la operacin de E/S queda inicializada y un proceso idntico se desarrolla cada vez que
el canal pide una nueva instruccin de canal (lo que pasa cuando termina con la zona de E/S
asociada a la instruccin actual).
4) Una vez inicializada la operacin de E/S, las demandas de transferencia elemental de informacin
las hace el controlador del perifrico, que trabaja a su propio ritmo. Al recibir una de estas
demandas, el canal efecta la transferencia pedida usando y actualizando las informaciones DEC
(que al principio sustituye a la direccin de la 1ra palabra) y CDP.
5) Una transferencia se terminar ya sea cuando que el contenido de CDP es nulo, o bien cuando el
controlador de perifrico manda una seal de fin de transferencia. En cualquiera de los dos casos
el canal comprobar los indicadores para decidir qu hacer:
Encadenamiento de datos (ED): si este indicador est activado, el canal pasar a la
siguiente instruccin de canal incrementado el contador de instrucciones de canal e
ignorando el nuevo cdigo de operacin perifrica.
Encadenamiento de gobierno (EG): si est activado, el canal pasar a la siguiente
instruccin de canal, usando en este caso el nuevo COP.
Interrupcin (IT): si est activado, se generar una interrupcin al final de la transferencia.

Para aclarar:

est asociada
una instruccin de a un
inicio de E/S

Cada instruccin
del programa de
canal est
asociada a una
zona de E/S
Canal multiplado en el tiempo
El canal multiplado en el tiempo es capaz de gestionar simultneamente varias transferencias entre
memoria y perifricos. Cada una de estas transferencias es controlada por un programa canal presente en
la memoria central. Por lo tanto va a existir, asociado a cada controlador de perifrico conectado al canal,
un subcanal, que guarda las informaciones actualizadas del programa canal asociado a ese perifrico.
Estas informaciones son: la direccin de la instruccin de canal actual del programa canal de ese
perifrico, la DEC, la CDP y los indicadores de encadenamiento e interrupcin de esa instruccin.
Al transferir una informacin entre la memoria central y uno de los controladores de perifrico, se llevan
los DEC y CDP del subcanal asociado a ese perifrico, a los registros DEC y CDP del canal principal. Este
ltimo devuelve las informaciones actualizadas despus de utilizadas (DEC incrementado, CDP
decrementado) al subcanal.
Es como si el canal principal fuera comn a todos los subcanales y stos formaran una memoria que
almacena las informaciones del programa de canal asociado a su perifrico (cada subcanal est asociado a
un perifrico).

(canal multiplado)
Canal Principal
Subcanales (1 por
cada perifrico)

El dilogo entre el canal y los controladores de perifricos se hace a travs de un bus (lnea mnibus) y un
hilo de prioridad.

Existen 2 clases de dilogo entre canal y controladores de perifricos:


1. Los dilogos inicializados por el canal, para lanzar una operacin de entrada-salida, o para
comprobar el estado de un perifrico.
El canal pone en los hilos de informacin del bus la direccin del perifrico y la valida por una seal de
seleccin SEL.
Los controladores de perifrico detectan la seal SEL y comparan la direccin en el bus con la suya.
o Si no coinciden se muestran transparentes (la transmiten al siguiente controlador).
o Si coinciden, el controlador no transmite la informacin, sin que se conecta y generalmente pone
en los hilos de informacin su estado acompaado por una seal ESTD para validarlo.
2. Los dilogos inicializados por un controlador de perifrico . Generalmente se trata de una solicitud
de ejecucin de una transferencia elemental. Como se pueden producir varias solicitudes simultneas,
se usa un hilo de prioridad para seleccionar cual atender primero.

Uno o varios controladores emiten una seal de demanda de servicio DES.


En respuesta a la DES, el canal enva una seal PRI por medio del hilo de prioridad, que se comunica con los
distintos controladores en el orden establecido por sus prioridades.
Los controladores se comportan transparentes a la PRI si no emitieron una DES.
Por otro lado, el primer controlador atravesado por PRI que haya emitido una DES, no transmitir la seal
PRI al siguiente controlador, sino que pondr sobre los hilos de informacin su direccin, acompaada de
una seal DIR para validarla.
El canal recibe DIR y aprueba la direccin mediante una seal ADIR. Al mismo tiempo cargar sus registros
DEC y CDP con las mismas informaciones del subcanal asociado al perifrico en cuestin.
Al recibir ADIR el perifrico se conecta y puede ahora enviar una o varias demandas de transferencia,
indicando si se trata de una entrada o una salida. Para hacer esto, su controlador enva una demanda de
transferencia DT, indicando el sentido.
o Si es una entrada, al mismo tiempo que enva DT coloca las informaciones a enviar al canal sobre los
hilos de informacin.
o Si es una salida, esperar a que el canal le mande la informacin.
En cada transferencia, el canal usa el contenido del registro DEC (para saber la posicin de la zona de E/S de
la que debe extraer la informacin o en la que debe almacenarla), la incrementa y decrementa CDP,
comprobando que este no haya llegado a cero.
Al final, el controlador termina el servicio con una seal FDES (fin de demanda de servicio) que lo
desconecta. En ese momento el canal reactualiza los DEC y CDP del subcanal asociado al perifrico, a partir
de los contenidos actuales de sus registros DEC y CDP.
Si despus el canal detecta una seal DES, significa que otro controlador present una demanda de servicio,
por lo que vuelve a enviar PRI, y todo comienza de nuevo.

Interrupciones prioritarias
Generalidades
Las interrupciones permiten detener provisoriamente el desarrollo de un programa en curso para dar
paso a otro considerado como prioritario y consiste, en general, en memorizar el estado de la mquina
desde el final de la instruccin en curso y forzar seguidamente en el contador de programa la direccin de
la primera instruccin del programa asociado a la interrupcin, el cual termina en una instruccin que
restaura el estado que tena la mquina en el momento de la interrupcin, lo que permite la reanudacin
del programa interrumpido.
Algunas computadoras tienen una sola posibilidad de interrupcin (un solo nivel), caso en el cual se
pasarn todas las causas de interrupcin a travs de un OR lgico y el programa de interrupcin deber
comprobar un conjunto de indicadores para detectar cual fue la causa de la misma.

Otras tienen varios niveles de interrupcin. Dichos niveles pueden estar jerarquizados, lo que significa
que estn clasificados por prioridades y que un programa de interrupcin de un nivel puede ser, a su vez,
interrumpido por una demanda de interrupcin de un nivel con ms prioridad. El programa interrumpido
pasa entonces a un estado de espera.En la figura siguiente se ve un sistema jerarquizado de interrupcin
de 8 niveles, donde la prioridad crece de abajo hacia arriba. Al terminar de ejecutarse un programa
cualquiera de interrupcin, el control se transfiere al programa de menor prioridad.
Descripcin de un sistema jerarquizado de interrupciones prioritarias
Cada nivel de interrupcin tiene asociados 4 biestables, que dan los estados posibles del nivel

1) Estado desactivado: el nivel no acepta ninguna demanda de interrupcin.


Estado activado: el nivel acepta y memoriza una demanda de interrupcin.
Un nivel de interrupcin puede ser activado o desactivado por programa
2) Estado de espera: el nivel pasa al estado de espera si recibe una seal de demanda de interrupcin.
Se distinguen 2 formas del estado de espera, lo que me lleva al 3er biestable:
3) Estado de espera inhibido: el nivel fue inhibido por programa, de tal manera que la interrupcin fue
memorizada pero no tomada en cuenta por la computadora. Tambin se suele decir que el nivel ha
sido enmascarado.
Estado de espera autorizado: la interrupcin puede ser tomada en cuenta por la computadora, si se
satisfacen las siguientes condiciones:
a- No hay niveles de prioridad superior en espera autorizados
b- La unidad central se encuentra en una fase interrumpible (generalmente en final de instruccin).
Si se cumplen las dos condiciones anteriores el nivel pasa al estado activo.
4) Estado activo: la unidad central toma en cuenta la interrupcin.
A cada nivel de interrupcin se asocian 2 seales: una impulsional, para pedir la interrupcin, y otra de
larga duracin, que la computadora deja activada hasta tanto no se haya tratado la interrupcin.
Acuse de interrupcin
Se trata del momento en que se pasa al estado activo. A cada nivel se asocia un conjunto de posiciones de
memoria, que se dividen en 2 partes: la 1ra contiene las informaciones necesarias para el arranque del
programa de interrupcin (como la direccin de su primera instruccin); la 2da sirve para guardar las
informaciones del estado del programa en el instante de la interrupcin, para su posterior reanudacin.
El paso de una interrupcin al estado activo, consiste en memorizar el estado del programa, almacenando
las informaciones pertinentes en las posiciones asociadas de memoria, y en instaurar despus el estado de
interrupcin, buscando las informaciones necesarias para el arranque del programa de interrupcin. La
ltima instruccin del mismo tiene como fin restaurar el estado del programa en el momento de la
interrupcin, buscando en memoria las informaciones de estado guardadas anteriormente. Adems,
desactiva el nivel de interrupcin, lo que permite responder a otra posible seal de interrupcin.

Вам также может понравиться