You are on page 1of 19

Hardware interno del PC

Estructura del BUS ISA 8/16 bits


El BUS clsico de un PC (ISA BUS) se compone de dos partes:
La clsica de 8 bits, perteneciente a los PC, XT y AT. La extensin de
16 bits de los AT.
Entre ambos forman el bus ISA que todos los ordenadores PC actuales
poseen (no confundir con VESA o PCI, siendo el primero una tercera
ampliacin del bus ISA de 8 bits y el PCI un bus totalmente diferente).
Estructura del BUS de 8 bits PC, XT y AT:
-------Tierra -|B1 A1|- -I/O CH CHK (NMI)
+Reset DRV -|B2 A2|- +D7
+5V -|B3 A3|- +D6
+IRQ2 -|B4 A4|- +D5
-5V -|B5 A5|- +D4
+DRQ2 -|B6 A6|- +D3
-12V -|B7 A7|- +D2
-CARD SLCTD -|B8 A8|- +D1
+12V -|B9 A9|- +D0
Tierra -|B10 A10|- +I/O CH RDY
-MEMW -|B11 A11|- +AEN
-MEMR -|B12 A12|- +A19
-IOW -|B13 A13|- +A18
-IOR -|B14 A14|- +A17
-DACK3 -|B15 A15|- +A16
+DRQ3 -|B16 A16|- +A15
-DACK1 -|B17 A17|- +A14
+DRQ1 -|B18 A18|- +A13
-DACK0 (MREF) -|B19 A19|- +A12
CLK -|B20 A20|- +A11
+IRQ7 -|B21 A21|- +A10
+IRQ6 -|B22 A22|- +A9
+IRQ5 -|B23 A23|- +A8
+IRQ4 -|B24 A24|- +A7
+IRQ3 -|B25 A25|- +A6
-DACK2 -|B26 A26|- +A5
+TC -|B27 A27|- +A4
+ALE -|B28 A28|- +A3
+5V -|B29 A29|- +A2
+OSC -|B30 A30|- +A1
Tierra -|B31 A31|- +A0
--------

Extensin AT de 16 Bit:
--------MEM CS16 -|D1 C1|- SBHE
-I/O CS16 -|D2 C2|- A23
IRQ10 -|D3 C3|- A22
IRQ11 -|D4 C4|- A21

IRQ12 -|D5 C2|- A20


IRQ15 -|D6 C6|- A19
IRQ14 -|D7 C7|- A18
-DACK0 -|D8 C8|- A17
DRQ0 -|D9 C9|- -MEMR
-DACK5 -|D10 C10|- -MEMW
DRQ5 -|D11 C11|- D8
-DACK6 -|D12 C12|- D9
DRQ6 -|D13 C13|- D10
-DACK7 -|D14 C24|- D11
DRQ7 -|D15 C15|- D12
+5V -|D16 C16|- D13
-Master -|D17 C17|- D14
Tierra -|D18 C18|- D15
--------

La numeracin empieza desde la parte posterior de la mquina.

SEAL

DESCRIPCIN

A0-A19

Bits de direccin 0-19, permiten direccionar 1Mb de memoria y 64K


de puertos de e/s.

A17-A23

Bits de direccin 17-23, permiten direccionar desde 256Kb de


memoria a 16Mb.

AEN

Address Enable; Cuando est activa el controlador DMA posee el


control de las lineas de direccin y del BUS de datos, conforme se
indique en MEMR/MEMW. Cuando est inactiva la CPU tiene el
control de estas lineas.

ALE

Address Latch Enable (salida); se emplea para que la CPU est aislada
de las lneas de direccin (triestado). Es forzado activado durante los
ciclos DMA.

CARD
SLCTD

Card Selected; indica que una tarjeta ha sido activada en el slot XT de


8 bits.

CLK

Seal de reloj del sistema (actual velocidad del BUS).

D0-D7

Bits de datos 0-7 para e/s a memoria o puertos de e/s.

DACK0DACK3

Reconocimiento DMA para los canales 0 al 3; empleada por el


controlador para reconocer una peticin DMA (validacin de acceso
DMA). DACK0 es empleada para el refresco de memoria (MREF).

DRQ0DRQ3

Peticin DMA 0-3; empleada por perifricos que desean los servicios
del controlador DMA; Se mantiene activa hasta que la correspondiente
seal DACKx se hace activa.

I/O CH
CHK

I/O Channel Check; Genera una interrupcin no enmascarable.

I/O CH
RDY

I/O Channel Ready; es puesta inactiva por memoria o dispositivos de


e/s para retardar el acceso a memoria o los ciclos de e/s. Normalmente
es empleada por dispositivos lentos para aadir estados de espera. No
debe ser inactiva durante ms de 17 ciclos.

I/O CS16

I/O Chip Select 16 Bit; indica ciclo de e/s de 16 bits

IOR

I/O Read; indica a un dispositivo de e/s que coloque su dato en el BUS


del sistema.

IOW

I/O Write; indica a un dispositivo de e/s a leer un dato del BUS del
sistema.

IRQ2-IRQ7

Peticin de interrupcin 2-7; indica a la CPU que un dispositivo de e/s


necesita servicio.

MASTER

Empleado por DRQ para ganar el control del sistema.

MEM
CS16

Memory Chip Select 16 bit; indica ciclo de memoria de 16 bits.

MEMR

Memory Read; esta seal es producida por la CPU o el controlador


DMA e indica a la memoria que debe introducir el dato direccionado
en el BUS del sistema. Presente tanto en el BUS PC como en la
extensin AT.

MEMW

Memory Write; esta seal es producida por la CPU o el controlador


DMA e indica a la memoria que debe leer y almacenar el dato presente
en el BUS. Presente tanto en el BUS PC como en la extensin AT.

OSC

Oscilador; Seal de reloj de 14.31818 MHZ (periodo de 70ns); 50%


del ciclo de servicio.

RESET
DRV

Reset Drive; empleada para resetear la lgica del sistema.

SBHE

System BUS High Enable; activa los bits de datos 8-15 de la extensin
AT del BUS.

TC

Terminal Count; produce un impulso cuando la cuenta final de un


canal DMA es alcanzado.

Todas las seales del BUS ISA emplean niveles TTL estndar.
La entrada y la salida es con respecto a la CPU.
E/S significa entrada/salida.

Tabla de interrupciones hardware


Las interrupciones estn ordenadas por orden de prioridad.
IRQ#

INTERRUPCIN FUNCIN

IRQ 0 8

Reloj (55ms de intervalo, 18.2 por segundo).

IRQ 1 9

Requerimiento de los servicios del teclado.

IRQ 2 A

Esclavo 8259 o retrazo vertical de la EGA/VGA.

IRQ 8 70

reloj en tiempo real (AT, XT286, PS50+).

IRQ 9 71

Software redireccionado a IRQ2 (AT, XT286, PS50+).

IRQ
10

72

Reservado (AT, XT286, PS50+).

IRQ
11

73

Reservado (AT, XT286, PS50+).

IRQ
12

74

Interrupcin del ratn (PS50+).

IRQ
13

75

Error en coprocesador numrico (AT, XT286, PS50+).

IRQ
14

76

controlador del disco duro (AT, XT286, PS50+).

IRQ
15

77

Reservado (AT, XT286, PS50+).

IRQ 3 B

Peticin de servicio a COM2 o COM4, (COM3-COM8


en el MCA PS/2).

IRQ 4 C

Peticin de servicio a COM1 o COM3.

IRQ 5 D

Disco duro o peticin de datos desde LPT2.

IRQ 6 E

Peticin de servicio al disco flexible.

IRQ 7 F

Peticin de datos desde LPT1 (sin relacin en el IBM


mono).

Puerto paralelo (impresora)


Conector (en el PC):

PIN

DENOMINACIN DESCRIPCIN

Patilla 1 OUTPUT DATA

Impulso para transmitir 1 octeto de datos (strobe).

Patilla 2 DATA 0

Bit de datos n 0 ('LSB') del octeto de datos.

Patilla 3 DATA 1

Bit de datos n 1.

Patilla 4 DATA 2

Bit de datos n 2.

Patilla 5 DATA 3

Bit de datos n 3.

Patilla 6 DATA 4

Bit de datos n 4.

Patilla 7 DATA 5

Bit de datos n 5.

Patilla 8 DATA 6

Bit de datos n 6.

Patilla 9 DATA 7

Bit de datos n 7 ('MSB') del octeto de datos.

Patilla
10

ACKNLG

Acknowledgement. Aceptacin de la recepcin de


datos.

Patilla
11

BUSY

Ocupado. La recepcin de datos no est operativa.

Patilla
12

PE

Paper Empty/No hay papel.

Patilla
13

ON-LINE

Estado de la impresora: activada/desactivada (on


line/off line).

Patilla
14

AUTOFEED XT

Avanzar lnea despus de imprimir cada lnea.

Patilla
15

ERROR

Ha ocurrido un error.

Patilla
16

INIT

Ordenador o impresora reinicializado.

Patilla
17

SLCT IN

Select in / Seleccin de entrada. Aceptacin de la


transmisin de datos.

Patilla
18

NC

Ground / Tierra

Patilla
19

GND

Ground / Tierra

Patilla
20

GND

Ground / Tierra

Patilla
21

GND

Ground / Tierra

Patilla
22

GND

Ground / Tierra

Patilla
23

GND

Ground / Tierra

Patilla

GND

Ground / Tierra

24
Patilla
25

GND

Ground / Tierra

Caractersticas bsicas de los puertos paralelos estndares:


N puerto Denominacin IRQ Direccin
1
LPT1:
7 378h
2
LPT2:
5 278h
Puertos de impresora empleados:
Puerto 3BC, salida de datos (legible)

76543210 puertos 278, 378, 3BC


+---- dato bit 0, hardware pin 2
+----- dato bit 1, hardware pin 3
+------ dato bit 2, hardware pin 4
+------- dato bit 3, hardware pin 5
+-------- dato bit 4, hardware pin 6
+--------- dato bit 5, hardware pin 7
+---------- dato bit 6, hardware pin 8
+----------- dato bit 7, hardware pin 9

Puerto 3BD, registro de estado (puerto paralelo de impresora)


76543210 puertos 279, 379, 3BD
+---- 1 = time-out
+------- no empleado
+-------- 1 = error,
pin 15
+--------- 1 = en linea (on-line), pin 13
+---------- 1 = sin papel, pin 12
+----------- 0 = datos recibidos, pin 10
+------------ 0 = ocupado, pin 11

Puerto 3BE registro de control (puerto paralelo de impresora)


76543210 puertos 27A, 37A, 3BE
+---- 1 = impulso de transmisin de datos, (pin 1)
+----- 1 = avanzar lnea tras imprimir una, (pin 14)
+------ 0 = inicializar impresora, (pin 16)
+------- 1 = aceptacin de datos transmitidos, (pin 17)
+-------- 0 = IRQ deshabilitado,1=IRQ habilitado para ACK
+------------- no empleado

Puerto Serie
Conector de 25 pin (en el PC):

Conector de 9 pin (en el PC):

PIN-9 PIN-25 DESCRIPCIN

Carrier Detect (DCD/CD); Deteccin de portadora.

Receive Data (RXD/RD); Entrada de datos.

Transmit Data (TXD/TD); Salida de datos.

20

Data Terminal Ready (DTR); Indica que el puerto est preparado.

Signal Ground (GND/SG); Proporciona la referencia cero de


voltaje.

Data Set Ready (DSR); Datos preparados, listo para recibir.

Request to Send (RTS); Peticin de envo de datos.

Clear to Send (CTS); Indica que se desea transmitir.

22

Ring Indicator (RI); Anuncia una llamada al otro dispositivo.

9-19

No empleadas

Masa del chasis (GND)

Voltajes mximos entre -15V y +15V.


Salidas binarias entre +5V a +15V y -5V a -15V.
Entradas binarias entre +3V a +15V y -3V a -15V.
Voltajes de entrada entre -3V a +3V y voltajes de salida entre -5V a +5V son
indefinidos.
Voltajes positivos indican ON o ESPACIO, voltajes negativos indican OFF o
MARCA.

Puerto de juegos (joystick)


Conector en el PC:

PIN
1
2
3
4
5
6
7
8
9
10
11
12
13

DESCRIPCIN
+5v
Joystick A, Botn 1
Joystick A, eje X
Tierra
Tierra
Joystick A, eje Y
Joystick A, Botn 2
+5v
+5v
Joystick B, Botn 1
Joystick B, eje X
Tierra
Joystick B, eje Y

14 Joystick B, Botn 2
15 +5v
Acceso a travs del puerto 201h:
76543210 Puerto 201h
+---- joystick a, coord x (0 = temporizacin activa)
+----- joystick a, coord y (0 = temporizacin activa)
+------ joystick b, coord x (0 = temporizacin activa)
+------- joystick b, coord y (0 = temporizacin activa)
+-------- joystick a, botn 1 (0=pulsado)
+--------- joystick a, botn 2 (0=pulsado)
+---------- joystick b, botn 1 (0=pulsado)
+----------- joystick b, botn 2 (0=pulsado)

Los bits 3-0 son entradas resistivas con una longitud de pulso determinada por
una carga resistiva de 0-100K ohm. Emplear la frmula:
tiempo = 24.2u + ( 0.011u * resistencia )
o
resistencia = ( tiempo - 24.2 ) / 0.011

Una lectura debe ser inmediatamente precedida por una escritura (cualquier
dato) para comenzar la temporizacin del valor resistivo.

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:
Slo hacia el exterior: modo de compatibilidad "centronics" o modo estndar.
Slo hacia el interior:
Modo nibble, 4 bits a un tiempo empleando las lneas de estado para datos.
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).
Bidireccional:
EPP (Enhaced Parallel Port), empleado por perifricos como CD-ROM, cintas,
discos duros, adaptadores de red, etc.
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.
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:
Tabla 1 Definicin de seales EPP

SPP Seal

NSTROBE

NAUTOFEED

nSELECTIN

nINIT

nACK

EPP
Nombre
de seal

nWRITE

nDATASTB

nADDRSTB

nRESET

nINTR

In/O
ut

Descripcin de seal EPP

Out

Activa a nivel bajo indica una


operacin de escritura, a nivel
alto indica un ciclo de lectura.

Out

Activa a nivel bajo indica que hay


una operacin de
lectura/escritura de datos en
proceso.

Out

Activa a nivel bajo indica que hay


una operacin de
lectura/escritura de direccin en
proceso.

Out

Activa a nivel bajo indica


inicializacin (reset) del
perifrico.

In

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.

BUSY

nWAIT

In

D[8:1]

AD[8:1]

Bi-Di

PE

Definido
por usuario

In

Puede ser empleada de forma


diferente por cada perifrico.

SELECT

Definido
por usuario

In

Puede ser empleada de forma


diferente por cada perifrico.

Lneas bidireccionales de
direccin/datos.

NERROR

Definido
por usuario

In

Puede ser empleada de forma


diferente por cada perifrico.

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 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.
Tabla 2 Composicin de Registros EPP

Nombre
del
puerto

Lectura
Offse
/
Modo
t
Escritur
a

Descripcin

SPP Puerto
de datos

+0

SPP /
EPP

Puerto estndar SPP. Sin


autocontrol.

SPP Puerto
de estado

+1

SPP /
EPP

Lectura de las lneas de


estado procedentes del
interfaz.

SPP Puerto
de control

+2

SPP /
EPP

Posiciona el estado de las


lneas de control de salida.

EPP Puerto
de
direccin

+3

EPP

L/E

Genera un ciclo de lectura o


escritura de direccin
controlada.

EPP Puerto
de datos

+4

EPP

L/E

Genera un ciclo de lectura o


escritura de datos controlada.

No
definido

+5 a
+7

N/A

Empleado de forma diferente


segn la implementacin.
Puede ser usada para E/S de
16 o 32 bits.

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
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.
No entraremos a detallar este modo, ya que no es muy empleado
salvo en los mencionados perifricos.

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.
Tabla 3 Valores del byte de extensin

Bi
t

Descripcin

Valores vlidos de Bit


(8765 4321)

Peticin de enlace
extendido

1000 0000

Peticin de modo EPP

0100 0000

Peticin de modo ECP con


RLE

0011 0000

Peticin de modo ECP sin


RLE

0001 0000

Reservado

0000 1000

Retorno de datos
empleando:
Modo Nibble
0000 0100
3

Peticin de identificativo

Modo Byte

0000
0101

Modo ECP sin RLE

0001
0100

Modo ECP con RLE

0011
0100

Reservado

0000 0010

Modo Byte

0000 0001

Modo Nibble

0000 0000

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 no-1284 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.

Conectores
El estndar identifica tres tipos de conectores para el interfaz 1284:
1284 Tipo A: 25 pin DB25.
1284 Tipo B: 36 conductor, .085 (conector champ).
1284 Tipo C: 36 conductor, .050 (conector mini).

Asignacin de puertos de e/s en el PC

NOTA: slo las primeras 10 lneas de direccin son empleadas para


operaciones de e/s. Esto nos limita el espacio direccionable para e/s
desde la direccin 000 (hexadecimal) hasta la 3FF. Algunos sistemas
permiten emplear 16 bits para direccionar e/s, pero estn limitados
debido a que algunas tarjetas slo decodifican 10 de esos 16 bits.
Puerto (hex)
Asignacin
000-00F

Controlador DMA

010-01F

Controlador DMA (PS/2)

020-02F

Controlador maestro programable de interrupciones (PIC)

030-03F

PIC esclavo

040-05F

Temporizador programable de intervalos (PIT)

060-06F

Controlador del teclado

070-071

Reloj en tiempo real

080-083

Registro de pgina DMA

090-097

Seleccionador programable de opciones (PS/2)

0A0-0AF

PIC #2

0C0-0CF

DMAC #2

0E0-0EF

reservado

0F0-0FF

Coprocesador matemtico, controlador de disco PCJr

100-10F

Seleccionador programable de opciones (PS/2)

110-16F

LIBRE

170-17F

Disco duro 1 (AT)

180-1EF

LIBRE

1F0-1FF

Disco duro 0 (AT)

200-20F

Adaptador de juegos (Joystick)

210-217

Puertos de trajetas de expansin

220-26F

LIBRE

278-27F

Puerto paralelo 3

280-2A1

LIBRE

2A2-2A3

Reloj

2B0-2DF

EGA/Video

2E2-2E3

Adaptador de adquisicin de datos (AT)

2E8-2EF

Puerto serie COM4

2F0-2F7

Reservado

2F8-2FF

Puerto serie COM2

300-31F

Adaptador de prototipos, periscopio para depurar hardware (Debugger)

320-32F

LIBRE

330-33F

Reservado para XT/370

340-35F

LIBRE

360-36F

Red (network)

370-377

Controlador de disco flexible

378-37F

Puerto paralelo 2

380-38F

Adaptador SDLC

390-39F

Adaptador de Cluster

3A0-3AF

reservado

3B0-3BF

Adaptador monocromo

3BC-3BF

Puerto paralelo 1

3C0-3CF

EGA/VGA

3D0-3DF

Adaptador Grfico en Color (CGA)

3E0-3EF

Puerto serie COM3

3F0-3F7

Controlador de disco flexible

3F8-3FF
Puerto serie COM1
Las tarjetas Soundblaster suelen emplear los puertos de e/s 220-22F.
Las tarjetas de adquisicin de datos emplean frecuentemente las
direcciones 300-31F.

Diagrama de tiempos de acceso a memoria o e/s de 8 bits


Se muestran 4 ciclos de espera (W1 a W4):

ALE

__
__
__ __
__
__
__
___| |___| |___| |__| |___| |___| |___| |__
W1 W2
W3
W4
__
_______| |_______________________________________

AEN

__________________________________________________

CLK

A0-A19

______________________________________
---------<______________________________________>-

_____________
Lnea de comando
(IOR,IOW,
MEMR, o MEMW)
D0-D7
(Lectura)

_____
|______________________________|

_____
---------------------------------------<_____>----

___________________________________
D0-D7
---------<___________________________________>---(Escritura)

ALE se pone a nivel lgico alto (1) y la direccin aparece en A0 a A19.


El dispositivo esclavo debe leer la direccin durante el flanco de
bajada de ALE, y la direccin en A0 a A19 permanece vlida hasta el
final del ciclo de transferencia. Notar que AEN permanece a nivel bajo
durante todo el ciclo de transferencia.

La lnea de comando es puesta a nivel bajo (IOR o IOW para e/s,


MEMR p MEMW para memoria, lectura y escritura respectivamente).
Para operaciones de escritura, los datos permanecen en D0 a D7
hasta el resto del ciclo de transferencia. Para operaciones de lectura,
los datos deben ser vlidos en el flanco de bajada del ltimo ciclo.
CARD SLCTD se emplea en la mitad de cada ciclo de espera. Si est a
nivel bajo, el ciclo de transferencia termina sin ms ciclos de espera.
I/O CHRDY se emplea en la primera mitad de cada ciclo de espera. Si
est a nivel bajo, ms ciclos de espera sern introducidos.
Por defecto el ciclo de transferencia de 8 bits posee 4 ciclos de
espera. La mayora de las BIOS del ordenador pueden cambiar el
nmero de ciclos de espera.

Diagrama de tiempos de acceso a memoria o e/s de 16 bits


Se muestra 1 ciclo de espera:
__
__
__ __
__
__
___| |___| |___| |__| |___| |___| |_

CLK
AEN [2]

__________________________________________

A17-A23

__
______________| |________________________

ALE
SBHE

_____________
-------<_____________>-[1]-----------------

________________
_______
|__________________|

A0-A19

__________________
---------------<__________________>-------

_________________
____________________
MEM CS16
|____|
* * [4]
_________________
___________
I/O CS16 [3]
|_____________|
*
_________________
Linea de comando
(IOR,IOW,
MEMR, o MEMW)
D0-D7
(Lectura)

___________
|____________|

____
---------------------------<____>---------

______________
D0-D7
-----------------<______________>--------(Escritura)

Un asterisco (*) indica el punto donde la seal es tomada.


[1] La porcin de direccionamiento del bus de extensin de 16 bits
para el siguiente ciclo puede ser puesto ahora en el bus. Esto se
emplea para que las tarjetas puedan comenzar a decidificar la

direccin ms rpidamente. Para ello el este tipo de acceso debe


estar activado (pipeline).
[2] AEN se mantiene bajo durante todo el ciclo de transferencia,
indicando que un ciclo normal (no DMA) est producindose.
[3] Algunos controladores de bus presentan esta seal durante el
mismo ciclo de reloj que MEM CS16, en vez de durante el primer ciclo
de espera, como se muestra en el diagrama. En este caso, I/O CS16
necesita ser puesto a nivel bajo tan pronto como la direccin ha sido
decodificada, lo sual sucede antes que la activacin de las lneas de
comando.
[4] MEM CS16 es tomada una segunda vez, en caso que el adaptador
no active la seal a tiempo durante la primera vez (normalmente
debido a que el dispositivo no est monitorizando el bus de 16 bits
para tomar el direccionamieto rpido, o est esperando al flanco de
bajada de la seal ALE).
Las transferencias de 16 bits siguen los mismos tiempos bsicos que
las transferencias de 8 bits. Un direccionamiento vlido debe aparecer
en el bus de extensin de 16 bits antes del comienzo del ciclo de
transferencia, De lo contrario el bus extendido de 16 bits no es
direccionado, y no es vlido para el resto del ciclo de transferencia
(en la mayora de los ordenadores). El bus extendido de 16 bits
debera ser direccionado en el flanco de bajada de ALE. Hay que
mencionar que en algunos sistemas, el bus extendido de 16 bits sigue
los mismos tiempos que el bus de 8 bits. En ambos sistemas, una
direccin vlida debe estar presente en el bus en el flanco de bajada
de ALE.
Las tarjetas de expansin de e/s no necesitan monitorizar el bus
extendido de 16 bits o ALE, ya que el espacio de direccionamiento de
e/s siempre est dentro del rango del bus de 8 bits.
SBHE ser puesta a nivel bajo por la placa base, y la tarjeta de
expansin debe responder con I/O CS16 o MEM CS16 en el momento
apropiado, o realizar dos transferencias separadas de 8 bits. Muchos
sistemas esperan a I/O CS16 o MEM CS16 antes que las lneas de
comandos sean vlidas. Esto requiere que I/O CS16 o MEM CS16 sean
puestas a nivel bajo tan pronto como la direccin sea decodificada
(antes que se sepa si el ciclo es de e/s o memoria). Si el sistema
comienza un ciclo de memoria, ignorar I/O CS16 (y viceversa para
ciclos de e/s con MEM CS16).
Para operaciones de lectura, los datos son tomados en el flanco de
subida del ltimo ciclo de reloj. Para operaciones de escritura, los
datos vlidos aparecen en el bus antes del final del ciclo, como es
mostrado en el diagrama de tiempos. Mientras que el diagrama indica
que los datos necesitan ser tomados en el flanco de subida, en la
mayora de los sistemas permanecen vlidos durante todo el ciclo de
reloj.
Para transferencias de 16 bits se toma por defecto un tiempo de
espera de 1 ciclo de reloj. Esto puede ser acortado o alargado de la
misma forma que las transferencias de 8 bits, mediante las seales
CARD SLCTD y I/O CHRDY. Mucho sistemas solo permiten dispositivos
de memoria de 16 bits (y no dispositivos de e/s) para transferir

empleando 0 ciclos de espera (CARD SLCTD no tiene efecto en los


ciclos de e/s de 16 bits).
Las seales MEMR/MEMW presentes en el bus de 16 bits siguen los
mismos tiempos que las presentes en el bus de 8 bits cuando el
direccionamiento est dentro del primer megabyte de memoria. Si el
direccionamiento es mayor (por encima del primer megabyte), las
seales MEMR/MEMW del bus de 8 bits permanecen a nivel alto
durante el resto del ciclo.

You might also like