Está en la página 1de 7

CANALES DMA

PUERTOS DE ENTRADA Y SALIDA

El canal de comunicaciones de todo PC se denomina BUS y éste puede ser INTERNO (se
da dentro del Microprocesador) o EXTERNO (propio de la tarjeta principal). De igual
manera el canal de comunicaciones toma el nombre de BUS DE DIRECCIÓN, BUS DE
CONTROL y BUS DE DATOS, debido a que se envían datos por este medio, se controla la
máquina a nivel general y se direcciona hacía los diferentes dispositivos que tiene el PC.

Cuando los dispositivos de toda la máquina se quieren comunicar utilizan el BUS DEL
SISTEMA o canal de comunicaciones para poder enviar los datos que desean, o sea que por
el BUS DE COMUNICACIONES se envían datos, y los datos son archivos, y estos a su
vez es Software y el Software se ejecuta y procesa en la memoria RAM del PC y por eso al
canal de comunicaciones se le llama DMA (Direct Memory Access – Acceso Directo a la
Memoria), ya que por el canal de comunicaciones llegan los datos a la memoria.

Los dispositivos de la máquina que envían datos por el canal, algunos son de ENTRADA y
otros son de SALIDA y por eso también recibe el nombre de CANALES O PUERTOS DE
ENTRADA Y SALIDA (Input/Output). Dispositivos o periféricos de entrada son por
ejemplo el Mouse, el teclado, el Escáner, entre otros; Dispositivos de salida como por
ejemplo la impresora, el monitor, etc.

Se denomina direcciones I/O (E/S) a unos rangos de posiciones, asignadas por el


Microprocesador o CPU, para recibir y pasar información a los dispositivos periféricos,
tales como la tarjeta controladora del disco duro, el Mouse, la impresora, el escáner
(rastreador de imagen) para poderse comunicar entre sí.

A cada dispositivo que se tiene previsto que en un momento dado necesita comunicarse con
la CPU (Microprocesador), se le asigna una determinada dirección comprendida dentro de
un cierto rango ya definido. Haciendo una comparación con los apartados postales para el
correo, es como si a cada compañía se le asignase una cierta cantidad de casillas
consecutivas, quedando a elección de tal empresa elegir cuál casilla asigna ella al empleado
que lleva y trae el correo. La dirección de puerto I/O no puede ser utilizada por ningún
otro dispositivo, como tampoco las cartas dirigidas a otro pueden ser colocadas en otro
apartado postal. Las direcciones de puerto se dan en notación Hexadecimal.

Cuando un dispositivo de Hardware desea comunicarse con el procesador, manda por su


respectivo canal DMA una señal denominada IRQ (Interrupt ReQuest) para que el
procesador les procese la rutina solicitada, y si es el Software el que desea comunicarse, se
envía una señal INT (INsTructions – Instrucciones). La respuesta que haga el procesador
para ambos casos se llamará ISR (Interrupt Solicitude Respond – Solicitud de respuesta a
una interrupción). Ver gráfico.
HD
IRQ - INT

Microprocesador CANAL DE
COMUNICACIONES F
D

ISR

KEYBOARD

Para evitar que dos dispositivos entren en conflicto al operar, caso similar al que se
presentaría en el caso de que la compañía del correo asignase por error el mismo número de
apartado a dos personas, muchos fabricantes de las tarjetas controladoras de los dispositivos
periféricos, llamadas usualmente adapters o controllers, colocan en ellas unos puentes
removibles o interruptores (DIP Swiches) que permiten elegir una entre varias alternativas
de direcciones (se exceptúan las nuevas tarjetas PCI, las cuales son configuradas
automáticamente por Software o por los nuevos sistemas operativos). Cuando se cambian
las direcciones I/O, algunos programas deben ser notificados de estos cambios.

CANALES DMA

RANGO DE DIRECCIONES DISPOSITIVO ASIGNADO


000 a 01F Controlador 1 de DMA
020 a 03F Controlador 1 de IRQ
O40 a 05F Timer (Asignación de tiempos de uso de
un canal)
060 a 06F Controlador de teclado
070 a 071 Dirección de acceso a la RAM
0A0 a 0BF Controlador 2 de IRQ
0C0 a 0DF Controlador 2 de DMA
0F0 a 0FF Coprocesador matemático
1F0 a 1F8 Controladora de disco duro
200 a 20F Puerto para juegos (Joystick)
278 a 27F Puerto paralelo LPT3
2B0 a 2dF Adaptadora de video EGA
2E8 a 2EF Puerto serial COM4
2F8 a 2FF Puerto serial COM2
360 a 36F PC Network (Tarjeta de red)
378 a 37F Puerto paralelo LPT2
3BC a 3BF Puerto paralelo LPT1
3C0 a 3CF Adaptadora de video EGA
3D0 a 3DF Adaptadora video CGA-EGA-VGA-
SVGA
3E8 – 3EF Puerto serial COM3
3F0 – 3F7 Controladora de disquetes
3F8 a 3FF Puerto serial COM1

INTERRUPCIONES

Cuando un dispositivo físico (Hardware) o un programa (Software) necesita la ejecución de


un proceso o solicitar que le hagan algo, genera una señal IRQ o una instrucción INT para
pedir al microprocesador que haga una pausa en la tarea que esté ejecutando, y que procese
la rutina indicada con la interrupción.

Las interrupciones son señales o instrucciones que los dispositivos o programas envían al
microprocesador, identificando el tipo de tarea particular que quieren realizar y para lo cual
solicitan que éste interrumpa temporalmente la tarea que esté ejecutando actualmente. Se
numeran secuencialmente, de acuerdo con un orden de prioridad en la atención.

Las interrupciones se pueden agrupar básicamente en tres categorías:

1. Interrupciones generadas por el Microprocesador (CPU): Se da dentro del


Microprocesador y consiste en interrumpir la labor del mismo debido como
resultado de una operación indebida o inusual por el programa en proceso y por el
usuario que lo maneja, la cual genera un desbordamiento o bloqueo (OVERFLOW)
en los resultados. Es la interrupción de las interrupciones, ya que bloquea el
Microprocesador y por consiguiente el PC.
2. Software Interrupts (Interrupciones de Software): Son las interrupciones
generadas deliberadamente por los programas de aplicación para solicitar al
microprocesador que les atienda su solicitud y les procese lo requerido. Se les
denomina INT o instrucciones, las cuales vienen codificadas desde la INT 0 a la
INT 255 generando 256 interrupciones de Software. La interrupción por Software es
una instrucción propia de los lenguajes del PC.
3. Hardware Interrupt (Interrupciones de Hardware): Son las interrupciones
generadas por la circuitería o dispositivos físicos del computador para solicitar al
microprocesador que se les atienda la rutina solicitada o como respuesta a algún
evento, tal como la pulsación de una tecla, el movimiento del Mouse, la activación
del CD-ROM, etc. Se llaman también IRQ (Interrupt ReQuest).

Además de las interrupciones mencionadas, hay también un tipo especial de interrupción,


llamada NMI Interrupt, o no enmascarable (Non Maskable Interrupt), que se utiliza para
solicitar la atención inmediata del microprocesador. Es la que no puede esperar a que el
microprocesador termine lo que está haciendo: Un ejemplo de este caso es cuando se
presenta un error en los bancos de la memoria RAM, generando un mensaje “bit parity
error” y cesando el funcionamiento del computador y esto se da porque es la memoria
RAM la que trabaja los programas y si hay un error en uno de sus módulos, el sistema
simplemente se bloquea.

EJEMPLO DE INT: Un computador que al encenderlo lo deja en el escritorio de Windows.


Desde el proceso del arranque del PC, el computador genera una gran cantidad de
instrucciones programadas previamente y que son secuénciales (paso a paso).

ENCENDER PC
INT 0 -------- Buscar archivo HIMEN.SYS
INT 1 -------- Cargar archivo HIMEN.SYS en memoria convencional.
INT 2 -------- Verificar la cantidad de memoria RAM existente en el PC.
INT 3 -------- Buscar archivo EMM386
INT 4 -------- Cargar archivo EMM386 en memoria convencional.
INT 5 -------- Verificar la comunicación entre la memoria convencional y la extendida.
INT 6 -------- Activar la memoria superior.
INT 7 -------- Buscar los controladores del hardware y cargarlos en la memoria superior.
INT 8 -------- Activar SETUP
INT 9 -------- Verificar los diferentes dispositivos físicos de hardware conectados al PC.
INT 10 ------- Mostrar errores encontrados
INT 11 ------- Mostrar cuadro de resumen de componentes instalados y su configuración.
INT 12 ------- Buscar el Sistema de arranque en alguna de las unidades de almacenamiento.
INT 13 ------- Mostrar mensajes de error en la búsqueda del sistema de arranque.
INT 14 ------- Cargar en la memoria RAM el Sistema de arranque del PC (Cargar S.O.).
INT 15 ------- Cargar archivos de arranque del PC (Son varios archivos).
INT 16 ------- Mostrar interfaz gráfica del Sistema Operativo.
INT 17 ------- Dejar habilitado el sistema para manejo del usuario.

A partir de aquí se siguen manejando más instrucciones, las cuales son generadas por los
programas debido al manejo que hace el usuario. Las INT son 256, enumeradas desde la
INT 0 a la INT 255 y se hacen disponibles cada vez que se ejecuta un proceso y se termina.
ASIGNACIÓN DE LAS INTERRUPCIONES (IRQ)
COMPONENTE DEL SISTEMA IRQ CANAL DMA UTILIZADO
TIMER (Tiempos de acceso) 0 040 a 05F
TECLADO 1 060 a 06F
TARJETAS DE INTERFASE 2 3C0 a 3CF
TARJETA ADAPTADORA DE VIDEO VGA 2 3D0 a 3DF
PUERTO SERIAL COM 2 3 2F8 a 2FF
PUERTO SERIAL COM 4 3 2E8 a 2EF
PUERTO SERIAL COM 1 4 3F8 a 3FF
PUERTO SERIAL COM 3 4 3E8 a 3EF
PUERTO PARALELO LPT2 5 378 a 37F
CONTROLADORA DE DISQUETES 6 3F0 a 3F7
PUERTO PARALELO LPT1 7 3BC a 3BF
RELOJ HORA – FECHA (Real Time Clock) 8 070 a 07F
REDIRECCIONADO COMO IRQ 2 9
DISPONIBLE 10
DISPONIBLE 11
DISPONIBLE 12
COPROCESADOR MATEMATICO 13 0F0 a 0FF
CONTROLADORA DE DISCOS DUROS 14 1F0 a 1F8
DISPONIBLE 15
PUERTO PARA JUEGOS (JOYSTICK) 200 a 207
BUS PARA EL RATON (USB PORT) 230 a 23F

Casi todas las tarjetas manejadoras de dispositivos periféricos, como la controladora del
rastreador de imagen (Scanner), la controladora del CD-ROM, etc., tienen puentes
eléctricos removibles (Jumpers) para definir la dirección del puerto de conexión. No
configures dos tarjetas para que usen una misma dirección de puerto I/O. Puede darse el
caso de que ambas ordenen a la vez dos acciones distintas, causando un conflicto que
bloquea el funcionamiento del computador. Usualmente el resultado es que ninguna de las
dos tarjetas funciona.

REGLAS BASICAS PARA ASIGNAR INTERRUPCIONES: Existen unas reglas


básicas al asignar interrupciones, las cuales se tienen que cumplir. Estas reglas son:

1. Cuando existen en el PC dos o más dispositivos de características similares o


iguales, estos se configuran asignando el mismo canal DMA pero diferente
interrupción.
2. Cuando hay en el PC dispositivos de diferentes características, estos pueden tomar
la misma IRQ pero diferente canal DMA.
3. La tarjeta de sonido asume el canal DMA de tarjetas de interfase pero el IRQ a
utilizar es el 5, 7, 9 ó 14. Los dispositivos que ella maneja asumen la misma
configuración.
4. La tarjeta de video utiliza los mismos IRQ de tarjetas de interfase pero su canal
DMA es diferente (3D0 a 3DF).
5. Los IRQ disponibles los puede asignar a cualquier dispositivo. Se recomienda
asignar en orden las IRQ disponibles.
6. Si existen dos disqueteras, ambas asumen el mismo direccionamiento. Esto debido a
que nunca las dos disqueteras trabajan al tiempo.
7. Para una buena configuración del PC, se debe cumplir que ningún dispositivo afecte
o tenga la misma configuración de otro dispositivo.
8. Las tarjetas de interfase de comunicaciones como la de FAX MODEM, asumen la
configuración de IRQ de los puertos de comunicación, pero no utilizan
configuración de tarjetas de interfase normales.
9. La tarjeta de red utiliza el canal DMA 360 a 36F y su IRQ puede ser 2, 9 ó
disponibles.

RUTINAS DE SERVICIO (ISR): Se denomina ISR (Interrupt Solicitude Respond) a la


respuesta de solicitud de interrupción y es un programa que el microprocesador debe
ejecutar como respuesta a una determinada petición de interrupción, ya sea por parte de un
dispositivo físico (Hardware Interrupt), o por una instrucción INT (Software Interrupt).

LAS INTERRUPCIONES EN EL COMPUTADOR


HARDWARE SOFTWARE
IDENTIFICACIÓN IRQ 1, IRQ 5, IRQ 14, etc. INT 12, INT 21, INT 33, etc.
CANTIDAD En un PC XT son 8 y en 256 enumeradas desde la 0 a
AT son 15 la 255
EN QUE CONSISTE Es una señal que el Es una instrucción en
dispositivo pone en la lenguaje de máquina que el
correspondiente línea del procesador entiende para que
bus. el software se pueda
comunicar.
QUIEN LAS GENERA O Un circuito integrado 8259ª Son generadas por los
MANEJA las maneja pero son programas que habitualmente
generadas por los maneja el usuario.
dispositivos físicos.
SE PUEDEN Usted puede modificar una No pueden cambiarse por
MODIFICAR interrupción de hardware estar grabadas en los
(IRQ) cambiando de circuitos integrados.
posición un Jumper o
asignando otra que pueda
tomar.

También podría gustarte