Você está na página 1de 10

INGENIERA EN SISTEMAS DE INFORMACIN 2014

ARQUITECTURA DE COMPUTADORAS
Trabajo Prctico N 9
Sistemas de Entrada/Salida. Puerto Paralelo
Trataremos de en estos prcticos utilizar elementos que nos permitan ver como se realizan las
operaciones de I/O, por lo que plantearemos, cuando este a nuestro alcance, problemas concretos
como el que se presenta a continuacin:

Se desea simular el funcionamietno de un semforo en una esquina de una calle


utilizando el puerto paralelo de nuestra PC."
Como deseamos hacerlo prcticamente, necesitaremos algunos elementos, los cuales pasamos a
detallar:
1) Dos leds de 5 mm rojos, dos verdes y dos amarillos.
2) Seis resistencias de 470 Ohms, 1/4 - 1/8 de Watt.
3) Un conector DB 25 macho.
4) Cables multicolores.
Nota: No es necesario que se adquieran los elementos, el listado se reproduce para aquellos que deseen hacerlo.

Los pasos a seguir son:


1) Armar prcticamente el circuito para encender los led de acuerdo a la secuencia del semforo.
2) Determinar cuantos puertos paralelos tiene la PC en la que estn trabajando, y en que
direcciones de I/O se encuentran instalados.
3) Realizar el diagrama de flujo de un algoritmo que nos permita controlar la secuencia de
encendio del semforo.
4) Realizar en assembler un programa, de manera de poder accionar el circuito utilizando el
puerto paralelo de impresora.
5) Modificar el programa de manera de realizar por lo menos dos secuencias diferentes con los led.
Previamente, realizar un cuadro en el cual se detalle los valores que debe tomar el registro de
datos.
6) Qu valor tomara el registro de estado en caso de que tenga conectada una impresora sin
papel?
7) Qu valor toma el registro de estado cuando la impresora est ocupada o fuera de lnea?
8) Cmo se le indica a la impresora que se debe dejar una lnea en blanco?
9) Cul es el protocolo de transmisin de entre la PC y una impresora conectada al puerto
paralelo.? (Se recomienda leer La PC por dentro, pg. 82).

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
El Puerto Paralelo Interfaz Centronic (SPP)
En la transmisin de datos por ordenador, el mtodo ms sencillo es la transmisin paralelo, y dentro
de ste tipo se encuentra como el ms difundido el estndar Centronics.
El sistema de transmisin de datos de forma paralela consiste, en la transmisin de los bits de forma
separada, es decir, se enva solamente un bit por lnea en cada palabra a transferir del ordenador al
perifrico, o del perifrico al ordenador.
De esto se deduce fcilmente que en el circuito de interfaz debe haber tantas lneas de datos como bits
tenga una palabra que se deba transmitir, adems el circuito de interfaz debe tener las seales de
control necesarias para el correcto trasvase de toda la informacin que se vaya a transmitir.
Debido a la gran cantidad de cables en un interfaz, este tipo de transmisin se reduce solamente a la
comunicacin con los perifricos que se encuentren a mano del ordenador, o sea que se encuentren
cerca de ste. Por todo lo dicho anteriormente, el interfaz paralelo normalmente se utiliza para el
perifrico que siempre debe estar al lado de un ordenador, este perifrico, en la gran mayora de los
casos es la impresora.
El uso del protocolo de transmisin de datos paralelo se utiliza debido a la gran ventaja de que, al
utilizar tantas lneas de datos como contenga la palabra a transmitir, la informacin que se recibe por
cada impulso de transmisin es directamente transferible al bus de datos del sistema, con lo cual se
consigue una transmisin ms fluida y rpida que en los sistemas de transmisin serie.
Otra de las ventajas de los sistemas de transmisin paralelo es la sencillez del software necesario para
controlarlo. Mientras que en el sistema de transmisin serie se necesitan complicados programas para
la adquisicin de los datos, en los protocolos paralelos se precisan unas pocas instrucciones para
controlar el circuito de interfaz.
El perifrico por excelencia que se conecta al ordenador mediante el interfaz de transmisin paralelo
es, como ya hemos dicho antes, la impresora, este tipo de transmisin permite que la electrnica de la
impresora sea ms sencilla que en el caso de la conexin de sta al ordenador mediante un puerto
serie. Segn el nmero de puertos paralelos que posee una PC, ellos se identifican como LPT1, LPT2,
etc. Estas vas de comunicacin pueden sin embargo destinarse para otros propsitos, entre ellos,
colocar seales digitales en estos puertos desde o hacia el mundo externos, los cuales pueden ser de
utilidad para controlar sencillos procesos, detectar seales de un proceso fsico externo, o
sencillamente podemos trabajar con el para aprehender algo ms sobre los sistemas de entrada/salida.

Direcciones de los puertos de los adaptadores Centronic


Durante el POST, la BIOS busca los puertos de impresoras instaladas y guarda sus direcciones base
en las el mapa de direcciones de la ROM-BIOS. Las direcciones de los puertos de impresoras
instalados, se encuentran a partir de la direccin 0040:0008, del mapa de las direcciones de la ROMBIOS, y tienen una longitud de 2 bytes cada direccin. Para leerlos utilizamos el comando D del
Debug, de la siguiente manera:
D 0040:0008 L
Las direcciones que encontraremos generalmente son:
378h Puerto del primer adaptador de impresora (LPT1)
278h Puerto del segundo adaptador de impresora (LPT2)
Estas direcciones son las direcciones base, pero como ya hemos visto, a partir de ellas podemos
determinar las direcciones de los registros de datos, control y estado.
Registro de Datos (Lectura Escritura) Direccin Base + 0 (378h 278h)
D7
b7

D6
b6

D5
b5

D4
b4

D3
b3

D2
b2

D1
b1

D0
b0

Escritura: Enva un Byte al puerto


Lectura: Lee el ltimo byte enviado

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Registro de Control (Lectura Escritura) Direccin Base + 2 (37Ah 27Ah)
C7

C6

C5

C4

C3

C2

C1

C0

+Strobe
=1 para enviar un byte
+AUTO LineFeed =1 provoca LF y CR
-INIT
=0 reset de la impresora
+SLCT IN
=1 selecciona la impresora
+IRQ Enable LPT1 IRQ 7 - LPT2 IRQ 5
Registro de Estado (Solo Lectura) Direccin Base + 1 (379h 279h)
S7

S6

S5

S4

S3

S2

S1

S0
-ERROR

0= error de impresora
1= impresora seleccionada
1=sin papel
0= lista para nuevo carcter
0= impresora ocupada o fuera de lnea.

+SLCT
+PE
-ACK
-BUSY

Veamos a continuacin con ms detalle las seales presentes en los puertos de datos, control y estado.
D0-D7: Son ocho lneas para la transmisin del ordenador a la impresora de los datos a imprimir.
STROBE: Es la seal por la que se indica a la impresora que los datos presentes en las lneas de
transmisin son los vlidos para su impresin. Esta seal es activa a nivel bajo. En el conector se
encuentra invertida.
ACK (acknowledge): Es una seal que enva la impresora al ordenador e indica que los datos que ha
mandado anteriormente han sido recibidos. Es activa a nivel bajo.
BUSY: Esta seal se activa (nivel alto) cuando la impresora se encuentra ocupada (en ingls, busy) y
el ordenador no debe enviar datos. Normalmente se activa cuando la impresora est fuera de lnea
(off-Iine) y despus de haber recibido datos. En el conector se encuentra invertida.
PE (paper end): esta seal se activa (nivel alto) cuando la impresora ha detectado que no dispone de
papel para imprimir.
ERROR (error): Seal activa a nivel bajo, indica que se ha detectado un error en la impresora y que,
por tanto el ordenador debe parar el envo de datos, normalmente va acompaada con otra seal de
control como PE.
AUTO: Es una seal enviada por el ordenador que indica a la impresora que debe imprimir una lnea
en blanco. Es activa a nivel bajo. En el conector se encuentra invertida.
INIT: Esta entrada de la impresora permite
inicializarla de manera que todos los datos
que se encuentren en ella sean borrados.
Activa a nivel bajo.
SLCT IN: Es una seal enviada por el ordenador que permite seleccionar la impresora.
En el conector se encuentra invertida.
En la figura, se puede apreciar la distribucin
de las seales en el conector del puerto
paralelo (DB25 hembra, en la PC).

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Extensiones Posteriores del Port Paralelo
Introduccin al estndar IEE 1284-1994
Este estndar proporciona una comunicacin bidireccional de alta velocidad entre un PC y un
perifrico externo, estableciendo una comunicacin entre 50 y 100 veces ms rpida que el original
puerto paralelo. Por supuesto es totalmente compatible con todos los perifricos existentes para
puertos paralelos.
El estndar 1284 define 5 modos de transferencia de datos. Cada modo proporciona un mtodo de
transferencia de datos hacia el exterior (PC a perifrico), hacia el interior (perifrico a PC) o
bidireccional (dplex).
Los modos definidos son:
1. Slo hacia el exterior: modo de compatibilidad "centronics" o modo estndar.
2. Slo hacia el interior:
2.1. Modo nibble, 4 bits a un tiempo empleando las lneas de estado para datos.
2.2. Modo byte, 8 bits a un tiempo empleando lneas de datos, a veces referido como puerto
bidireccional. Este modo slo lo soportan los ordenadores de IBM (PS/2).
3. Bidireccional:
3.1. EPP (Enhaced Parallel Port), empleado por perifricos como CD-ROM, cintas, discos duros,
adaptadores de red, etc.
3.2. ECP (Extended Capability Port), empleado por la nueva generacin de impresoras y
scanners.
Todos los puertos paralelos pueden implementar un enlace bidireccional empleando los modos
"compatible" y "nibble" para transferencia de datos. El modo byte puede ser empleado por el 25% de
los puertos paralelos (aproximadamente). Estos tres modos hacen uso intensivo del software para la
transferencia y limitan sta a ratios de 50 a 100 Kbytes por segundo.
Los modos EPP y ECP estn siendo implementados en la mayora de los ltimos controladores de
E/S. Estos modos emplean hardware para asistir la transferencia de datos. Por ejemplo, en el modo
EPP un byte de datos puede ser transferido al perifrico con una simple instruccin OUT. El
controlador de E/S se encarga de gestionar toda la transferencia.
En conjunto, el estndar 1284 proporciona lo siguiente:
5 modos de operacin para transferencia de datos.
Un mtodo para determinar por parte del perifrico y el controlador los modos soportados y
negociar el modo requerido.
Las interfaces fsicas (cables y conectores).
La interfaz elctrica (conductores, receptores, terminaciones e impedancia).

Modo EPP
El protocolo de puerto paralelo mejorado (EPP) fue originalmente desarrollado por Intel, Xircom y
Zenith Data Systems, como una forma de proporcionar un enlace por puerto paralelo de alto
rendimiento que pudiera seguir siendo compatible con el puerto paralelo estndar.
Este protocolo compatible fue implementado por Intel en el chipset 386SL (chip I/O 82360). Esto
sucedi antes del establecimiento del comit IEE 1284 y que los estndar asociados funcionasen.
El protocolo EPP ofrece muchas ventajas a los perifricos que lo utilicen y fue rpidamente adoptado
por muchos como un mtodo opcional de transferencia de datos. Una gran asociacin de 80 empresas
interesadas fue formada para desarrollar y promover el protocolo EPP. Esta asociacin se denomin el
comit EPP y fue el instrumento empleado para adoptar este protocolo como uno de los modos
avanzados del IEE 1284.

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Desde que los primeros puertos con capacidad EPP estuvieron disponibles antes del lanzamiento del
estndar 1284, hay una pequea desviacin entre las primeras versiones (pre-1284 EPP) y el
protocolo definitivo. Esto ser aclarado ms tarde.
El protocolo EPP proporciona cuatro tipos de ciclos de transferencia:
Ciclo de escritura de datos.
Ciclo de lectura de datos.
Ciclo de escritura de direccin.
Ciclo de lectura de direccin.
Los ciclos de datos pretenden ser empleados para transferir datos entre el ordenador y el perifrico.
Los ciclos de direccin deben ser empleados para pasar direcciones, canales, o comandos e
informacin de control. Estos ciclos pueden verse como dos ciclos diferentes de datos. El
desarrollador debe emplear y manejar las direcciones/datos de forma que el mtodo tenga sentido para
el diseo en particular. La siguiente tabla describe las seales EPP y sus asociadas seales SPP:

SPP Seal
nSTROBE

EPP
Nombre de In/Out
seal
nWRITE

Out

nAUTOFEED nDATASTB

Out

nSELECTIN nADDRSTB

Out

nINIT

nRESET

Out

nACK

nINTR

In

nBUSY

nWAIT

In

D[8:1]

AD[8:1]
Definido por
usuario
Definido por
usuario
Definido por
usuario

Bi-Di

PE
SELECT
NERROR

Descripcin de seal EPP


Activa a nivel bajo indica una operacin de escritura, a nivel alto
indica un ciclo de lectura.
Activa a nivel bajo indica que hay una operacin de
lectura/escritura de datos en proceso.
Activa a nivel bajo indica que hay una operacin de
lectura/escritura de direccin en proceso.
Activa a nivel bajo indica inicializacin (reset) del perifrico.
Perifrico interrumpido. Empleada para generar una interrupcin
al ordenador.
Seal de espera. Cuando esta a nivel bajo indica que se est
preparado para comenzar un ciclo, cuando est a nivel alto indica
que se est preparado para finalizar un ciclo.
Lneas bidireccionales de direccin/datos.

In

Puede ser empleada de forma diferente por cada perifrico.

In

Puede ser empleada de forma diferente por cada perifrico.

In

Puede ser empleada de forma diferente por cada perifrico.

Tabla 1 Definicin de seales EPP

Fases de un ciclo de escritura de datos:


1. El programa ejecuta un ciclo de escritura de e/s al puerto 4 (Puerto de datos EPP).
2. La lnea nWrite es activada y los datos son sacados al puerto paralelo.
3. El dato strobe es activado, mientras que nWAIT es desactivado.
4. El puerto espera el reconocimiento del perifrico (nWAIT desactivado).
5. El dato strobe es desactivado y el ciclo EPP finaliza.
6. El ciclo de E/S ISA finaliza.
7. NWAIT es desactivado para indicar que el prximo ciclo puede comenzar.
Una de las ms importantes caractersticas a resaltar es que la transferencia de datos ocurre sin el
ciclo ISA de e/s. La consecuencia es que empleando el protocolo EPP un sistema puede alcanzar
ratios desde 500K a 2M bytes por segundo. En estas condiciones, un perifrico por puerto paralelo
5

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
puede operar a los mismos niveles de rendimiento que una tarjeta ISA equivalente. La habilidad para
alcanzar este nivel de rendimiento de un puerto paralelo es una de las mayores ventajas del protocolo
EPP.
Con seales de control, la transferencia puede suceder a la velocidad ms lenta de las interfaces, los
adaptadores de red o los dispositivos perifricos. Esta propiedad de adaptacin a la velocidad es
transparente tanto para el ordenador como para el perifrico. Todos los modos de transferencia del
1284 estn implementados con seales de control.
Como se mencion anteriormente, los dispositivos EPP pre-12844 se desviaron del protocolo 1284.
Al principio del ciclo, nDataStrobe o nAddrStrobe deberan conceder prioridad al estado de la seal
nWAIT. Esto significa que el perifrico no puede mantener cerrado el comienzo del ciclo
manteniendo nWAIT desactivado. Esto es denominado en la mayora de las ocasiones como EPP 1.7,
en referencia a la versin 1.7 de Xircom. Esta es la versin que Intel implement en el original
controlador de e/s 82360. Un perifrico compatible 1284 EPP trabajar correctamente con un
adaptador EPP 1.7, pero un perifrico EPP 1.7 puede no operar correctamente con una interfaz 1284.

Composicin del registro EPP


La visin ms simple a nivel de software del EPP es que es una extensin de las definiciones del
registro estndar para puerto paralelo. A grosso modo el SPP consiste en tres registros, que parten de
la direccin del puerto base estndar: Puerto de datos, puerto de estado, y puerto de control. La
mayora de las implementaciones EPP expanden esto para emplear puertos no definidos por el SPP.
Vea la tabla 2.
Nombre del
Offset
puerto
SPP Puerto
+0
de datos
SPP Puerto
+1
de estado
SPP Puerto
+2
de control
EPP Puerto
+3
de direccin
EPP Puerto
+4
de datos
+5 a
No definido
+7

Modo
SPP /
EPP
SPP /
EPP
SPP /
EPP

Lectura /
Escritura

Descripcin

Puerto estndar SPP. Sin autocontrol.

Lectura de las lneas de estado procedentes del interfaz.

Posiciona el estado de las lneas de control de salida.

EPP

L/E

EPP

L/E

EPP

N/A

Genera un ciclo de lectura o escritura de direccin


controlada.
Genera un ciclo de lectura o escritura de datos
controlada.
Empleado de forma diferente segn la implementacin.
Puede ser usada para E/S de 16 o 32 bits.

Tabla 2 Composicin de Registros EPP

Generando una simple instruccin de escritura a E/S hacia "direccin base + 4", el controlador EPP
generar las seales de control necesarias y esperas para transferir el dato empleando un ciclo de
escritura EPP. Las instrucciones de E/S a las direcciones base, puertos 0 a 2, causarn el mismo efecto
que en un puerto estndar paralelo. Esto garantiza compatibilidad con el puerto paralelo estndar y
sus perifricos. Los ciclos de direccin son generados cuando las operaciones de lectura o escritura a
E/S son a "direccin base + 3".

Modo ECP (EXTENDED CAPABILITIES PORT)


Este modo es muy similar al EPP. La mayor diferencia es que emplea compresin de datos mediante
algoritmo RLE, por lo que se hace ideal para la comunicacin con impresoras lser y scanners.
El Extended Capabilities Port, como el EPP, es otro mtodo de lograr transferencias rpidas de datos
entre la PC y el exterior.
Al igual que el EPP, el ECP tambin es bidireccional con transferencia automtica de datos
(handshaking). Pero tiene adems el agregado de un buffer FIFO de diecisis elementos, que puede
ser llenado por la computadora y enviado de una sola vez en forma automtica por el port, o ser
6

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
llenado con datos provenientes del exterior, tambin en forma automtica, para que la computadora
pueda leerlos posteriormente.
Buffer FIFO de 16 elementos: es un conjunto de 16 bytes donde se pueden almacenar datos,
organizado en forma tal que el primer elemento que entra es el primero que sale (First In - First Out).
De all la sigla FIFO. En contraposicin, existen buffers FILO (FIRST IN - LAST OUT), en donde el
primer elemento que entra es el ltimo que sale. El ejemplo tpico de este tipo de buffer es el de una
pila de platos.
El port ECP, adems, permite el manejo de un canal de DMA (Acceso directo a memoria) para
acelerar an ms las transferencias, y la posibilidad de comprimir la informacin transferida.
El port ECP admite ocho modos de operacin, caracterizados por un valor binario del 000 al 111.
Posteriormente se identificar cada uno de esos modos.
Registros
Emplea seis registros, con una particularidad; su direccin corresponde a la direccin base, a la
direccin base + 1, y a la direccin base + 2, como en el port standard, pero los otros tres registros se
encuentran en la direccin base + &H400, base + &H401 y base + &H402.
El significado de cada registro depende del modo de operacin, por lo que se indica en la tabla.
Nombre
Datos
EcpAFIFO
Status
Control
CFIFO

Direccin
Base
Base
Base + 1
Base + 2
Base + &H400

Modo ECP
000,001
011
Todos
Todos
010

Descripcin
Port de datos standard o PS2
Direccin de la FIFO ECP
Status SSP
Control SSP
Parallel Port data FIFO (Modo Fast Centronics)

EcpDFIFO
TFIFO
CnfgA
CnfgB
ECR

Base + &H400
Base + &H400
Base + &H400
Base + &H401
Base + &H402

011
110
111
111
Todos

ECP Data FIFO


ECP Test FIFO
Configuracin A
Configuracin B
Registro de control extendido

Para ver cmo emular un port EPP, analizaremos el registro ECR, en la direccin Base + &H402.
Registro ECR:
Bit
Nombre
0
1
2
3
4

Lectura /
Escritura
FIFOEmpty Slo lectura
FIFOFULL Slo lectura
Serviceintr Lectura/Escritura
dmaEn
Lectura/Escritura
ErrIntrEn
Lectura/Escritura

5,6,7

ECPMode

Descripcin

1: vaco; 0: al menos contiene un byte


1: Lleno
Manejo de DMA
1: Habilita DMA
0: Genera una interrupcin ante el flanco de cada de
Error (bit 3 de Status)
Lectura/Escritura Ver Tabla

Luego, el modo se selecciona mediante los 3 bits ms significativos de este registro. Los modos a
seleccionar son los siguientes:

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Modo (Bits 5,6 y 7 de ECR)
000
001
010
011
100
101
110
111

Descripcin
SPP(original)
PS2
FastCentronics
ECP
EPP
Reservado
Test
Configuracin

Negociacin del modo 1284 a emplear


Los perifricos no tienen porqu implementar todos los modos de transferencia. Por tanto, se necesita
un mtodo para determinar las posibilidades del perifrico conectado y una forma de situarlo en uno
de esos modos.
El concepto de negociacin fue desarrollado para esta necesidad. La negociacin es una secuencia de
eventos en la interfaz del puerto paralelo que no influyen en antiguos dispositivos, pero proporcionan
la posibilidad de identificar un perifrico 1284 y que este responda para poder situarlo en un modo
soportado.
Durante la fase de negociacin, el ordenador hace una llamada en las lneas de datos y comienza la
secuencia de negociacin. La llamada puede ser para colocar el interfaz en un modo particular, o para
preguntar al dispositivo su identificacin. Los identificativos sern tratados ms tarde.
El byte de extensin es empleado durante la negociacin para situar al perifrico en un determinado
modo de transferencia, o para pedir que el perifrico mande su identificativo y as permitir identificar
el tipo de perifrico conectado. El identificativo puede ser retornado en cualquier modo de canal
inverso que no sea el EPP. La tabla 3 describe el byte de extensin y sus posibles valores. Un nivel
alto (Xflag) es empleado por el perifrico para dar conocimiento de que el modo solicitado est
disponible. El nivel debe estar siempre alto como conocimiento afirmativo para todas las peticiones
salvo para el modo Nibble de canal inverso. Todos los dispositivos compatibles 1284 deben soportar
el modo Nibble de canal inverso. La peticin de enlace extendido es empleada para proporcionar una
forma de futura expansin y adicionales nuevos modos de operacin y caractersticas.
Bit

Descripcin

8
7
6
5
4

Peticin de enlace extendido


Peticin de modo EPP
Peticin de modo ECP con RLE
Peticin de modo ECP sin RLE
Reservado

Peticin de identificativo

2
1
-

Reservado
Modo Byte
Modo Nibble

Valores vlidos de Bit


(8765 4321)
1000 0000
0100 0000
0011 0000
0001 0000
0000 1000
Retorno de datos empleando:
Modo Nibble
0000 0100
Modo Byte
0000 0101
Modo ECP sin RLE
0001 0100
Modo ECP con RLE
0011 0100
0000 0010
0000 0001
0000 0000

Tabla 3 Valores del byte de extensin

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Fases de la negociacin 1284:
1. El ordenador sita el byte de extensin pedido en las lneas de datos.
2. El ordenador entonces sita nSelectIn a nivel alto y nAutoFeed bajo para indicar una secuencia de
negociacin.
3. Un perifrico 1284 responde situando nAck bajo, y nError, PE y Select alto. Un perifrico no1284 no respondera.
4. El ordenador situa nStrobe bajo. Esto es empleado para introducir el byte de extensin en el
perifrico.
5. El ordenador entonces coloca nStrobe y nAutoFeed a nivel alto para sealar al perifrico que lo
reconoce como un dispositivo 1284.
6. El perifrico responde situando PE a nivel bajo, nError bajo si posee un canal de datos reversible
disponble, y Select alto si el modo pedido est disponible, o Select bajo si el modo requerido no
est disponible.
7. El perifrico ahora activa nAck a nivel alto para indicar que la secuencia de negociacin ha
finalizado y las lneas de seal estn situadas de forma compatible con el modo requerido.

Para Profundizar: Fundamentos de los Computadores. Pedro de Miguel Anasagasti Sexta Ed. 1998 Ed. PARANINFO.
Introduccin General a la Informtica. La PC por dentro. M.C. Ginzburg.

Ing. Juan Carlos Ansaldi

INGENIERA EN SISTEMAS DE INFORMACIN 2014


ARQUITECTURA DE COMPUTADORAS
Utilizando Interrupciones del BIOS para realizar retardos de tiempo
La Interrupcin 1Ah del BIOS provee acceso al reloj (clock) del sistema. El BIOS de las PC trabaja
con un "contador de tick" ("tick count") que cuenta intervalos de 55 en 55 ms a partir de la
medianoche.
AH=00H Lee los tick del reloj a partir de la medianoche.
Devuelve: CX,DX = nmero de "ticks" a partir de medianoche.
Parte alta en CX
Parte baja en DX
Nota: el clock se incrementa 1193180/65536 (alrededor de 18.2) ticks por segundo.
Si concideramos valores enteros:
ticks por segundo: 18
ticks por minuto: 1092
ticks por hora: 65543
ticks por da: 1573040

Procedimiento realizado en Assembler para realizar un retardo utilizando la


interrupcin 1Ah
Pasamos el nmero de tick a esperar en el registro CX.
Por ejemplo para esperar 10 segundos debemos pasar en CX el valor 10 * 18,2 = 180 = B6H
Retardo Proc near
MOV AH,00
PUSH CX
INT
1Ah
POP CX
MOV BX,DX
ADD BX,CX
LeerTIC:
INT 1Ah
CMP DX,BX
JLE
LeerTIC
RET

Comenzar

T1<-Leer Tiempo
Actual

T2 <-T1 + Retardo

T3<-Leer Tiempo
Actual

Debemos asegurarnos de guardar en la pila los valores de los


registros utilizado en este procedimiento para luego
restaurarlos.

V
T3<=T2?

Ejemplo de llamada al Procedimiento:


Retardo para esperar 10 segundos.
PUSH
PUSH
PUSH
PUSH
MOV
CALL
POP
POP
POP
POP
INT

F
Finalizar

AX
BX
DX
CX
CX,00B6H
Retardo
CX
DX
BX
AX
20

10

Ing. Juan Carlos Ansaldi

Você também pode gostar