Professional Documents
Culture Documents
computadores y
perifricos
Estructura de
computadores y
perifricos
Rafael J. Martnez Dur,
Jos A. Boluda Grau,
Juan J. Prez Solano
Departamento de Informtica
Universitat de Valencia
Alfaomega A
yLr Ra-Ma
l Estmtnra de Computsdons y PerifMcos
O Rafael J. M h e z Dnr., Jos6 A. Boluda Gmu, Juan J. P6rw Solana
ISBN 970-15.0690-1
N<WLIMPORTANTE
La infomiaci6n coatenidaen esta obra tiene un 5exclusivamente didcticoY, wr lo
tanto. no est amisu, w aorovcchamicato anivcl umfesional o industrial. G i u d i -
caciolvs t6cGcis y p r o g r k incluidos. bm sidodiboradoa con &ran cuidado por
el autor Y nvroducidoii baio estrictas nomas de control. ALFAOMEOA GRUPO
E D ~ S.A. R de C.V. no jurdicamente responsable por: m o r e s u omisiones;
dafloa y perjuicios que pe pudieran atribuir al usa de h informacidncomprendida en
wte libw ni por la UtiliZBEi6n indebidn que pudiaa dfbsle.
-
Impmo en Colombia Rined In Colombh
.
PROLOGO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi
.
CAPTULO 1 INTRODUCCI~NA LA ESTRUCTURA
DE COMPUTADORES . . . . . . . . . . . 1
1.1 Conceptos preliminares . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Arquitectura clsica de un computador: Modelo Von Neumann . 4
1.2.1 Unidad central de proceso . . . . . . . . . . . . . . . . 6
1.2.2 Memoria . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.3 Entradalsalida . . . . . . . . . . . . . . . . . . . . . . 12
1.2.4 Sistemas de interconexin: Buses . . . . . . . . . . . . 13
1.2.5 Perifricos . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3 Ejecucin de una instruccin . . . . . . . . . . . . . . . . . . . 15
1.3.1 El sistema operativo . . . . . . . . . . . . . . . . . . . 16
1.3.2 Lenguajes de alto nivel, ensamblador y cdigo mquina 16
1.3.3 Flujo de datos . . . . . . . . . . . . . . . . . . . . . . . 19
1.4 Tecnologa de computadores . . . . . . . . . . . . . . . . . . . 20
1.4.1 Tecnologas de circuitos integrados . . . . . . . . . . . 21
1.4.2 Circuitos de memoria . . . . . . . . . . . . . . . . . . . 24
1.5 Cuestiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.6 Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
.
CAPfTUL0 2 UNIDAD DE CONTROL: EJECUCION
DE INSTRUCCIONES . . . . . . . . . . . . 31
2.1 introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Repertorio de instrucciones . . . . . . . . . . . . . . . . . . . . 32
2.3 Modos de direccionamiento. . . . . . . . . . . . . . . . . . . . 37
2.4 Formato de instrucciones . . . . . . . . . . . . . . . . . . . . . 45
2.5 Arquitectura de un computador elemental . . . . . . . . . . . . 50
2.5.1 Esquema del computador elemental . . . . . . . . . . . 50
2.5.2 Operaciones wn registros . . . . . . . . . . . . . . . . 56
2.5.3 Instrucciones . . . . . . . . . . . . . . . . . . . . . . . 58
2.6 Ejecucin de las instrucciones . . . . . . . . . . . . . . . . . . 60
2.6.1 Cron~gramade ejecucin de la instruccin ADD #4 5 6 . 61
2.6.2 Ejecucin de la instrucci6n SW #456 . . . . . . . . . . 66
2.6.3 Ejecucin de la instrucci6n JMZ #4 5 6 . . . . . . . . . 67
2.7 Submtinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.8 Excepciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.9 Diseo de la Unidad de Control . . . . . . . . . . . . . . . . . . 75
2.9.1 Unidad de control cableada . . . . . . . . . . . . . . . . 76
2.9.2 Unidad de control microprogramada . . . . . . . . . . . 77
2.10 Evolucin de los procesadores . . . . . . . . . . . . . . . . . . 83
2.10.1 Aumento de las prestaciones . . . . . . . . . . . . . . . 83
2.10.2 Evolucin de la arquitecturaintel iX86 ......... 85
2.10.3 Computadores RISC y CISC . . . . . . . . . . . . . . . 86
2.11 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.12 Cuestiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.13 BibliograMa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
.
CAP~TULO3 UNIDAD A R I ~ T I C O
LGICA ... 95
3.1 Introducci6n . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.2 Estructura y operaciones de la ALU . . . . . . . . . . . . . . . 97
3.3 Operaciones de desplazamiento . . . . . . . . . . . . . . . . . . 101
3.4 Operaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . 103
3.5 Operaciones de cambio y extensin de signo . . . . . . . . . . . 104
3.6 Suma y resta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
3.6.1 Sumador elemental binario . . . . . . . . . . . . . . . . 106
3.6.2 Sumadores wn acarreo adelantado . . . . . . . . . . . . 107
ORA-MA MCE
vii
.DE MEMORIA . . . . . . .
CAP~TULO4 JERARQUA
4.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.2 El principio de localidad . . . . . . . . . . . . . . . . . . . . . 132
4.3 Memoriacache . . . . . . . . . . . . . . . . . . . . . . . . . . 135
4.3.1 Mapeado directo . . . . . . . . . . . . . . . . . . . . .137
4.3.2 Mapeado asociativo por conjuntos . . . . . . . . . . . . 140
4.3.3 Mapeado totalmente asociativo . . . . . . . . . . . . . . 141
4.3.4 Algoritmos de reemplazo . . . . . . . . . . . . . . . . . 142
4.3.5 Manejo de los fallos en los accesos a la cache . . . . . . 142
4.3.6 Rendimiento de la cache . . . . . . . . . . . . . . . . . 144
4.3.7 Diseo del sistema de memoria . . . . . . . . . . . . . 146
4.4 Memoria virtual . . . . . . . . . . . . . . . . . . . . . . . . . .148
4.4.1 Mecanismo de traduccin de direcciones . . . . . . . . 149
4.4.2 Acceso a memoria . . . . . . . . . . . . . . . . . . . .152
4.4.3 Diseo del sistema de memoria virtual . . . . . . . . . . 153
4.4.4 Memoria segmentada . . . . . . . . . . . . . . . . . . . 154
4.5 Segmentacin paginada . . . . . . . . . . . . . . . . . . . . . . 156
4.6 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
4.7 Cuestiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
4.8 Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
ORA-MA fND1CE ix
.
CAPTULO8 DISPOSITIVOS DE ENTRADA
DEDATOS . . . . . . . . . . . . . . . . 239
8.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
8.2 Interruptores . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
8.2.1 El problema de los rebotes . . . . . . . . . . . . . . . . 241
8.3 Teclados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
8.4 Ratones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
8.5 Displays griificos interactivos . . . . . . . . . . . . . . . . . . . 250
8.5.1 Lpiz ptico . . . . . . . . . . . . . . . . . . . . . . .250
8.5.2 Pantallas sensibles al tacto . . . . . . . . . . . . . . . . 251
8.5.3 Tablem digitalizadoras . . . . . . . . . . . . . . . . . . 252
8.6 Digitalizadoresde imgenes (escners) . . . . . . . . . . . . . . 253
8.6.1 Funcionamiento . . . . . . . . . . . . . . . . . . . . . 254
8.6.2 Calidad del digitalizador . . . . . . . . . . . . . . . . . 255
8.7 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
8.8 Cuestiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
8.9 Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
.
CAPTULO9 DISPOSITIVOS DE COPIA IMPRESA 261
9.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . .261
9.2 Clasificacin de las impresoras . . . . . . . . . . . . . . . . . .263
9.3 impresoras de matriz de puntos . . . . . . . . . . . . . . . . . . 264
9.4 Impresoras de transferencia directa . . . . . . . . . . . . . . . . 266
9.5 Impresoras lser . . . . . . . . . . . . . . . . . . . . . . . . . . 267
9.5.1 Operacin . . . . . . . . . . . . . . . . . . . . . . . . . 267
9.5.2 Impresora lser en color ................. 269
9.5.3 Lenguajes de descripcin de pdginas . . . . . . . . . . . 270
x eSTRUCTUR.4 DE COMPTADORBS Y P B ~ C O S ORA-MA
.
CAPTULO 10 TERMINALES DE V ~ E O. . . . . . . . 283
10.1 introduccin: Transductores pticos . . . . . . . . . . . . . . . 283
10.2 Pantallas de rayos cat6dicos . . . . . . . . . . . . . . . . . . . 285
10.2.1 Seal de vdeo PAL . . . . . . . . . . . . . . . . . . . .289
10.3 Terminales de video rnster . . . . . . . . . . . . . . . . . . . . 290
10.4 Controladores de pantalla . . . . . . . . . . . . . . . . . . . . . 291
10.4.1 Controladores de pantalla aifanumrica . . . . . . . . . 291
10.4.2 Controladores de pantalla grfica . . . . . . . . . . . . . 297
10.5 Otraspantallas . . . . . . . . . . . . . . . . . . . . . . . . . . 299
10.5.1 Pantallas de cristal lquido . . . . . . . . . . . . . . . . 300
10.5.2 Pantallas & transistores de pelcula fina . . . . . . . . . 301
10.5.3 Pantallas de plasma . . . . . . . . . . . . . . . . . . . . 301
10.6 Cuestiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
10.7 Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . .304
.
CAPTULO 11 ALMACENAMIENTO MASIVO .... 305
11.1 introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
11.2 Grabacin magntica ....................... 306
11.3 C6digos de grabacin magntica . . . . . . . . . . . . . . . . . 309
11.4 Discos magnticos . . . . . . . . . . . . . . . . . . . . . . . . 313
11 A.1 Discos flexibles . . . . . . . . . . . . . . . . . . . . . .315
11.4.2 Discos duros . . . . . . . . . . . . . . . . . . . . . . . 317
ORA-MA ICE xi
12.1 Introduccin . . . . . . . . . . . . . . . .
12.2 Segmentacin . . . . . . . . . . . . . . .
12.3 Clasificacin de las arquitecturas avanzadas
12.3.1 Clasificacin de Flynn . . . . . .
12.3.2 Clasificacin de Zargham . . . .
12.4 Multiprocesadores y Multicomputadores .
12.4.1 Redes de interconexin . . . . . .
12.4.2 Multiprocesadores . . . . . . . .
12.4.3 Multicomputadores . . . . . . . .
12.5 El rendimiento . . . . . . . . . . . . . .
12.5.1 Sistemas con un solo procesador .
12.5.2 Mquinas paralelas . . . . . . . .
12.6 Cuestiones . . . . . . . . . . . . . . . . .
12.7 Bibliografa . . . . . . . . . . . . . . . .
NDICE DE TABLAS
Junto a los contenidos citados en cada uno de los capitulas se incluye biblio-
@a y cuestiones.
Los Autores.
INTRODUCCI~NA LA ESTRUCTURA
DE COMPUTADORES
tensin, donde un '1' lgico viene definido por un nivel de tensin de 3.3 voltios
y un 'O' lgico por O voltios.
- -
4. Nivel RTL. El nivel de transferencia de registros RTL (Register
. Transfer
Level) ser el preferido para la descripcin de los computadores en el pre-
.
sente texto. Elementos t~icos -
en este nivel de abstraccin son los registros
y mdulos combinacionales aritmticos. Los registros se encargarn de
almacenar la informacin binaria y se construyen con puertas y elementos
del nivel digital inferior. Los mdulos combinacionales aritmticos sern
los encargados de realizar transformaciones bsicas de los datos.
5. Nivel PMS. Este nivel es el ms alto en la jerarqua de descripcin de
computadores. Las siglas PMS provienen del ingls Processor Memory
.
Switch. Son elementos de este nivel de .ieraraua los buses. memorias.
procesadores y otros mdulos de alto nivel. La descripcin del sistema
se hace utilizando bloques que intercambian informacin por una serie de
enlaces llamados buses.
En este texto se realizar una descriucin iermaica del comuutador utilizan-
do bsicamente el nivel RTL. Algunas Geces ser6 necesario bajar al nivel digital,
pero en ningn caso se descender a los dos niveles ms bajos de la jerarqua.
e Procesamiento de datos.
e Almacenamiento de datos.
e Transferencia de datos.
.
Memoria
1.2.2 Memoria
En la memoria se almacenarn el programa y los datos que, provenientes
de un dispositivo de Entradalsalida o dispositivos de almacenamiento secunda-
rio, va a -ejecuta la CPU. Las instrucciones no son ms que cdigos binarios
interpretados por la unidad de control, y los datos estn tambi6n almacenados
de forma binaria en alguno de los formatos de representacin de la infomiaci6n
binarios existentes. De esta manera el cdigo biario 1100001almacenado en
memoria puede representar una operacin en cdigo mquina, el carcter ASCII
'a', el nmero entero sin signo 97 o el nmero negativo -31 (en complemento a
2) o -33 (en signo magnitud).
Bus de datos: Son las ineas por las que se transmiten los datos entre
los diversos dispositivos que forman el computador: CPU, memoria y
controladores de Entradalsalida.
Bus de direcciones j
4
Bus de datos i
Bus decontml ;
Alimentacin
-
A mi vez los diversos buses de un computador estn organizados en una
jerarqua que optimiza el acceso a los recursos y la comunicacin entre los pe-
-
rifkricos Y la CPU. En el captulo 6 se estudiarn las generalidades de los buses,
su jerarqua y los protocolos de comunicaci6n y de arbitraje del bus.
@RAMA CAPfTULO l. INTRODUCCI~NA LA ESTRUCTLIRA DE COMPUTADORES 15
1.2.5 Perifricos
Por perifricos se entendern todos aquellos dispositivos que sin ser impres-
cindibles en la estrnctura de un computador, son necesarios para suministrar
datos a la mquina o visualizar los resultados.
Contenido Ensamblador
1
ioiclo : W(I H. TABLA
Zona de
ADDL cdigo
MOV l A
...
...
Unidad TABLA
de Control
Zona de
control datos
...
Figura 1.7: Cdigo mdquina y lenguaje ensamblador equivalente a la instruc-
cin p r i n t f
CPU I I MEMORIA
! ! Direccibn Contenido Ensarnblador
Unidad
Aritrndtico
igica de Contml
sas mscaras que proyectan las siluetas de los polgonos que forman los
transistores sobre un material fotosensible depositado sobre una superfi-
cie circular (oblea) de silicio. El tratamiento qumico de esta oblea y la
aplicacin ordenada de las mascaras provoca la aparicin y crecimiento
de los diversos tipos de difusiones que forman los transistores. El proceso
de impresin de las mscaras sobre la supercie de silicio se realiza con
una ptica muy compleja que reduce los segmentos mnimos hasta Uegar
a las mioras. Este tamao mnimo debe garantizar que las difusiones y
polgonos que forman los transistores van a estar bien definidos y que no
se van a destruir en los mltiples procesos qumicos a los que se somete
la oblea. Obviamente, cuanto mejor y ms preciso sea el proceso tec-
nolgico de creaci6n de las difusiones, los tamaos podrn ser menores,
y por tanto en una misma super6cie de silicio se podi$ incluir ms lgica
Esta RAM utiliza la misma tecnologa que las SRAM asncronas, con lo
que son vol&iles y de un rpido acceso. La diferencia estriba en que existe una
sefial de reloj que sincmniza el proceso de lectura y escritura. Esto puede ser
til cuando se van a realizar accesos a direcciones consecutivas en memoria:
en primer lugar se suministra la direccin base y despus, en cada flanco, la
memoria proporciona el dato (lectura) o se le suministra el dato a escribir. Este
es el tipo de acceso a memoria conocido como rfaga o burst.
RAM dinmica
celdas con vanos transistores, con lo que se consigue una muy alta escala de in-
tegracin. El inconveniente principal de esta tecnologa es que las capacidades
se descargan mediante la comente de prdidas de los transistores. Esto obliga a
tener que realizar un refresco peridico de las capacidades si se quiere evitar que
se pierda la informacin. En los ciclos normales de lectura y escxituni habr que
intercalar ciclos de refresco, de manera que ser necesha una lgica adicional
que se encargue de realizar estos ciclos. De manera adicional una desventaja de
este tipo de memorias es su lentitud si se comparan con las SRAM.
Las memorias DRAM tienen modos de acceso ms rpidos en los que se su-
ministra la parte alta de la direccin y posteriormente se suministra solamente la
parte baja de posiciones de memoria consecutiva. Este modo de acceso se deno-
mina modo pagina y acelera el acceso a las DRAM al no tener que suministrar
para cada acceso la direccin completa.
Memorlas ROM
cin o las nitinas del sistema, Las ROM se fabrican para aplicaciones masivas
con mscaras de silicio. Si la aplicaci6n es un prototipo o la produccin va a ser
baja no es viable la inversin en mascaras de silicio para la fabricaci6n de las
ROM. Afortunadamente hay tres tipos de ROM que pueden ser programadas en
el laboratorio, algunas de ellas incluso pueden ser borradas.
Memoria FLASH
1.5 CUESTIONES
1.6 Enumerar las funciones bsicas de los buses de dimcciones, datos, control
y alimentacibn.
1.9 Enumerar las partes en las que se divide una CPU bsica. Cul es la
jmeidn de cada una de ellas?
m Registros generales
m Unidad aritmeticolgica
e Unidad de control
e Buses del sistema
e Buses internos
.--.---.-----------------
-
I
1
I
I PeriiBrlm
! Unldad Unidad ,j
! AntrnBtlw de PeMBrlw
I Lgica
A
control
A
i 1
Unidad
I
de
Entradal
jiijzq I
I
Salida
L - - - - - - - - - - - - - - - - -..
CPU
-----4
;
b Y
Mernorla Principal
periieriw 1
Figura 2.1: Esquema bsico de la arquitectura Von Neunuuvl
Para programar las tareas que se desea que ejecute el procesador, los usua-
nos a menudo construyen programas utilizando lenguajes de alto nivel como
son el C o el Pascal. Estos programas no son directamente interpretables por
el computador, sino que estn a medio camino entre el lenguaje humano y el
@RA-MA CApfi'ULO 2. UNIDAD DECONTROL: WECUCI~NDE WSTRUCCIONES 33
Eficacia: Debe permitir una alta velocidad de clculo, sin exigir a cam-
bio una excesiva complejidad de la unidad de control ni de la unidad
aritmtica.
1. Las instrucciones realizan una funci6n nica y sencilla, por lo que su de-
codificacin por la CPU es senda.
2. Una misma instruccin emplea siempre un nmero fijo de operandos. Di-
ferentes instrucciones pueden tener diferente nmero de operandos.
3. La codificacin de las instrucciones es sistemtica, puesto que facilita su
decodiicaci6n.
4. Las instruccionesson autocontenidase independientes, es decir, contienen
toda la infamacin necesaria para ejecutarse. Deben expresar: el tipo de
operacin a realizar, el valor o la posicin donde se hailan los operan-
dos, el lugar donde se tiene que depositar el resultado y la ubicacion & la
siguiente instruccin. La CP ejecutar la instruccin siguiente almace
nada en el cdigo del programa si no se indica explcitamente la direccin
de la nueva instmccin a ejecutar.
Aunque las instrucciones mquina son cadenas de unos y ceros, para identi-
ficarlas ms fcilmente, se emplear& sus nombres ms comentes (en ingls) a
modo de nemnicos. Los cdigos nemnicos empleados por los ensambladores
permiten a los programadores no trabajar directamente con los cdigos binarios,
lo que facilita la programacin. Una vez realizado el programa ensamblador se
encarga de traducir la secuencia de nemnicos a cdigos binarios interpretables
ORA-MA 2. UNIDAD DE CONTROL: E I E C U C ~ NDE INSTRUCCIONES 35
CAP~WLO
Las diversas formas con las que se puede hacer referencia, tanto a los ope-
rando~fuentes como a los resultados, originan los modo8de direcdonamiento.
Este pnicedimiento sirve para deteminar la ubicaci6n del operando que depen-
diendo del tipo de instrucci6n puede estar en:
La propia i n s t d 6 n : Parte de los bits que componen una instruccin
sirven para almacenar el valor del operando.
Memoria prindpal: Los datos para realizar la operaci6n estn almacem-
dos en la memoria principai, y parte de los bits de la instmcci6n contienen
la direccin donde se almacena el operado en memoria. A esta diwci6n
se le llama direcci6n efectiva del dato.
Registro8 internos de la CPU:Los datos ya se encuentran en los registros
de almacenamiento interno de la CPU como resultado de la ejecucin de
operaciones anteriores.
Direccionamiento inmediato
Operando
. --------------------
Reglstmde lnsbuocidn
, Zona de Ctdigo
CO :Operando lnmedlato
COI Operando Inmediato ....................
. .........-..------
'i
t _.li-dn
nks lectura cido blisqueda
Direccionamiento directo
Operando .-~-----~--~-~~~--~
ni-
Regkbo de Insi~cc6n
, Zona de Cddlgo
CO ; Direod(in op.
Zona de Datos
MEMORIA 1)
P ledura (operando)
Direccionamiento meianteregistro
Direccionamientorelativo a registro
Operando
.--------------------
.--------------------
ZOM de CWigO
Registro de Inslniocibn
CO ! Reiemncia a reg.
CO; Rehtrenda a w.
CPU
MEMORIA
Zona de Cbdlp
Direccionamiento indexado
Direccionamiento indirecto
Zona de Datos
El tamao de la memoria
La organizacin de la memoria
La estructura de buses
La complejidad de la CPU y su velocidad
Este campo especifica la operacin que realiza cada instruccin. Hay tantos
cdigos de operacin distintos como instrucciones diferentes posea el computa-
ORA-MA cAPTU.0 2. UNIDADDE CONTROL: EJBCUCI~N
DE E V S U C O 47
Si el tamao del campo de cdigo de operacin es fijo para todos los posibles
formatos de instrucciones &un procesador, y este campo tiene a bits, se podrn
tener Za cdigos diferentes cada uno de elios asociado a una instrucci6n dife-
rente. Dado que la frecuencia de utilizacin de las instcuccioncs difiere mucho
de unas a otras, para optimizar el espacio ocupado por los programas, se pue-
de emplear una codificaci6n que utilice menos bits para las instrucciones ms
frecuentes. Pero la utilizacin & esta tcnica complica mucho el diseo de la
unidad & control. Algunos procesadores emplean como solucin la extensin
del campo del cdigo de operacin. Esta tecnica consiste en el uso de un campo
de cdigo de operacin fijo y reducido, con el que se codifican las operacio-
nes ms utilizadas. Para la codificacin del resto de instrucciones se usa, junto
con un c6digo de operaci6n especial que no se corresponde con ningn cdigo
perteneciente a instrucciones anteriores, un campo de extensin del cdigo de
operacin que permite identificar las instrucciones restantes.
Campo de direccin
Campo de condici6n
Regigtro de estado
Registros internos
Builhltw
Memoria =-CS
-WR
pmolpal .-RD
A recibir los datos directamente del AC y la entrada B recibir los datos prove-
nientes del registro interno MDR.Antes de realizar una operacin se tendr que
cargar el registro MDR con uno de los operandos y habilitar la salida de datos de
este registro al bus interno de datos. El otro operando deber estar almacenado
en el registro acumulador (AC).
La ALU recibe la informacin sobre el tipo de operacin que debe realizar,
mediante la activacin de las entradas de operacin (OP). En el computador
ejemplo estas operaciones quedan restringidas a las 6 siguientes:
OP(lOO)=A and B: AND lgico bit a bit de los valores de las entradas.
Unidad de control: UC
-
Generar las seales de operacin -
de la ALU,- deoendiendo de si la ins-
truccin que se quiere ejecutar realiza alguna operacin aritmtico-lgica.
Anteriormente se deben situar los datos en sus entradas correspondientes
habilitando los registros de datos AC y MDR.
Memoria principal
2.5.3 Instrucciones
El repertorio de instrucciones de un computador est formado por el con-
junto de todas las instrucciones que puede ejecutar. En el computador ejemplo
se considera que el microprocesadores capaz de ejecutar 16 instrucciones, aun-
que hay destacar que en los procesadores~comer~iales actuales este nmero es
mucho mayor. Una vez que la UC ha cargado la instruccin a ejecutar en el
registro iR, decodica el campo CD para saber de qu6 instruccin se trata. En
el computador ejemplo este campo tiene 4 bib, con los que se pueden codificar
16 instrucciones distintas. Estas instrucciones se pueden agrupar en 4 tipos:
Todas las instrucciones presentan el mismo formato, donde los 4 bits me-
nos significativos contienen el cdigo de operacin, y los 12 bits siguientes el
cdigo binario del campo de direccin, que permite direccionar 4 Kbytes de me-
moria. En el caso de la instruccin INC, que no precisa de campo de diieccin,
el contenido del mismo no se tiene en cuenta. Ya que todas las instrucciones
tienen la misma longitud, el ciclo de bsqueda de las instrucciones consta de
2 accesos a memoria, con lo aue se simvlifica el diseiio de la UC al no haber
casos especiales. En los procesadores reales esta circunstancia puede cambiar
al haber instrucciones de diferentes tamaos, aue necesitan un nmero diferente
de accesos a memoria para su lectura.
AC t AC + M(456) (2.1)
SUM CD=458
Fase de blsqueda de la i n s t n d b n
Relo]
MDR-El
MDR-01
MDR-EE
MDR-CE
PC.C
PC-E
PC-INC
MAR-C
MAR-E
AC-E
ACC
OP13:1]
CS
WR
RD
IR-CI
IR-C2
IR-E
RE-C
Periodos
este periodo tambin se activa la seal (PC-INC) de incremento del registro PC,
para que apunte a la siguiente posicin de memoria que contiene la parte alta de
la instrucci6n.
La instruccin esta compuesta por los 4 bits del cdigo de instruccin, y los
12 bits necesarios para indicar la direccin de memoria donde se guarda el AC.
El cronograma que describe la ejecucin de esta instruccin se muestra en la
figura 2.13
mloi
MDR-El
MDRCl
MDR-EE
MDR-CE
PCC
PGE
PC-INC
MAR4
MAR-E
AGE
AGC
OP[3:1]
cs
WR
RD
IR-C1
IR62
IR-E
RE-C
peiiodos
Reloj
MDR-El
MDR-CI
MDR-EE
MDR-CE
PGC
PC-E
PC-INC
MAR-C
MAR-E
AC-E
AC-C
OP[3:1]
CS
WR
RD
IR-C1
IR-C2
IR-E
RE-C
Periodos 1 2 3 4 5 8
2.7 SUBRUTINAS
o UNIDAD DE CONTROL: J~IECUCI~N
c A F ' ~ ~ L 2. DE iiiSTRUCClONES 69
Los programas que ejecuta la CPU estn formados por una secuencia de
instrucciones. Para estructurarlos se dividen en mdulos independientes y se-
parados lgicamente denominados subnitinas. La utilizacin de subnitinas per-
mite que los programas sean ms fciles de depurar, ms portables y se facilita
la reutilizacin de cdigo. Con esta divisin la estructura de un programa est
formada por un mdulo principal, que realiza llamadas a diversas subnitinas.
Cuando se produce un salto a subnitina el procesador detiene la ejecucin del
mdulo principal y comienza la ejecucin de la subnitina. sta realizar una
determinada funcin y al finalizar el procesador vuelve a retomar la ejecucin
del mdulo principal.
Al saltar a una subnitina es normal que el programa principal tenga que pasar
a la subnitina una serie de argumentos para que pueda realizar su funcin, y que
sta devuelva algn resultado. Estos parmetros pueden pasarse utilizando algn
registro interno o alguna posicin de memoria, pero en general se presentarn
los mismos problemas que en el caso del almacenamiento del PC. El mtodo
mis general de pasar los argumentos a la subnitina ser tambin mediante la
pila.
70 ES'IUCURA DE COMPUTADORES Y PERIE%ICOS @RAMA 1
Para permitir la ualizacin de subrutinas en el pmcesador ejemplo, se van
a implementar los elementos necesarios para gestionar una pila. Para ello se
tendrii que dotar al procesador de un nuevo registro interno: el puntero a pila
(SP). Este registro apunta a la siguiente posicin va& dentro de la pila Despus
de apilar un nuevo valor hay que decrementar el puntero y antes de desapilar
hay que inmementarlo. De esta forma la pila ir creciendo hacia posiciones de
memoria inferiores. Tambin hay que ampliar el repertorio de instrucciones con
cinco nuevas:
que se pueden almacenar tendrn un valor fijado por la UC, ya que no se utili-
zan, y el resto de los bits se corresponden con los del PC.Cuando se salva el PC
en 1pila cada uno de los dos by& utilizados estn en posiciones consecutivas
de memoria. Al desapilarlos se accede en orden inverso, primero se accede al
byte que fue apilado en segundo lugar, ya que la pila accede primero a la ltima
posicin utilizada, y a continuacin se accede al primer byte apilado.
: CPU Y-
, _ _ _ _ _.____..______.____...--------..--.--------------
_
2.8 EXCEPCIONES
0011 CD
LEE CD 0100 CD
ESC CD 0101 CD
SAO CD 10101 CD
8 Cdigos de
/
/ R t - +
C MDR-CI
MDR-EE
4 MDR-CE
expanslon ; Clrculto comblnaclonal
:
,MAR-C
4 // * MAR-E
-
Demdificador 4 IR-Ct
. y IR-C2
7 IR-E
-16 lns<ruociones +
~
SP-INC
4 SP-DEC
...............diferentes
................ 4 SP-C
y SP-E
+RagWo contad; de;lfw
;
f PC-C
39 Entradas 31 Salidas + PC-INC
4 PC-ce1
-
PC-CB2
Hasta 258 pedodos. 7 PC-CE1
PC-CE
71-
I .................. ......, 4- RE-CB
lmerrupcin externa. / I
* + RE-E
/ RE-C
& AC-E
AC-C
y oP[3:1]
F cs
F WR
4 RD
8 Condiciones J I
del registro de estado ............................. 8
PCC
PGE
PClNC
MAR-C
MAR-E
AGE
ACG
OP[3:1]
CS
WR
RD
IR41
IR42
IR-E
RE-C
RD
MAR-E
MDR-EE
11
k MDR-CE J
f W d bus da dlmiones SP-E 1
IR-E
PC-E
f Carcia desde el bus de direcciones SP-C 1
I- PC-C
MAR-C
Control ALU
SP-INC
AC-C
.
OP[3:l]
RE-C ,
Figura 2.20: Agrupacidn en campos de las semles de control del computador
elemental
Estruciura de la UC micmprogramada
MUX
-- -
IR 7
Memoria de Contml
t1
l Seales de wntml
MIPS = F/CPI
Los argumentos empleados para justificar que, mientras m88 rico y variado
es el juego de instrucciones, mejor es la arquitectura, son los siguientes:
2.11 CONcLUSIONEs
2.12 CUESTIONES
2.1 Enumerar todos los modos de direccionamiento indicando cules son sus
ventajas.
Direccin Contenido
100 101
101 104
102 100
103 103
Direccin Contenido
400 10
401 5
QRA-MA CAPfTULO 2. UNIDAD DE CONTROL: ElXUCI6N DE INSTRUCCIONES 91
bucle: LW#401
INC AC
SW #401
SUB #4W
JMZfin (salto condicional a lnea indicada por la etiqueta fin)
JMP bucle (salto incondicional a lnea indicada por bucle)
fin: STP
2.10 Enumerar los tipos de excepciones y explica cucEles son sus cdusas.
e inmediato
e directo
e relativo a registro
e indirecto
En esta mquina cada campo de operando debe tener un campo indicador del
modo de direccionamientode dicho operando. Este campo, junto con el cdigo
de operacin, es el que distingue entre los diferentesf o m t o s de insfruccidn.
Disear los formatos de instrucciones. Programar la funcih de salto con re-
tomo y la furicidn de retorno con las anteriores instrucciones, suponiendo que
la direccin de retorno se almacena en:
l . Un registm general.
2. El principio de la subtutina.
3. En la pila.
ORA-MA CAP~WLO 2. UNIDAD DE CONTROL: EJECUCINDE INSTRUCCIONES 93
Gobernada por la unidad de control, la ALU tiene como entradas los datos
almacenados en los registros internos de la CPU. Su salida (los datos transfor-
mados) se almacenan a su vez en los registros de la CPU. Adicionalmente, la
ALU tiene como salida los indicadores de estado que sealan caractersticas
del resultado de la ltima operacin (por ejemplo, si el resultado ha sido cero,
negativo, etc.)
de manera secuencial los bits a una sola unidad de suma elemental y almacena
el resultado parcial en un registro, se trata de un sumador serie.
Operando2 Operando2
C
(Fkg de mndlclh)
Rasunam
Las ALUs suelen tener varios operadores que pueden funcionar indepen-
dientemente de los dems y en algunos casos en paralelo. En el ejemplo de la
figura 3.3 se puede seleccionar el mdulo de la ALU que va a realizar la ope-
racin mediante unas seales especificas de seleccin. El banco de registros de
prop6sito general sirve para almacenar resultados de operaciones intermedias,
tpicamente una ALU de tamao intermedio suele tener de 8 a 16 registros. En
algunas CPUs existe un registro especial llamado acumulador que recibe los
resultados del operador y ciertas operaciones slo pueden realizarse sobre el
contenido del acumulador.
Reglstm de estado
Desplazamientos lgicw
11 01 01 11 11 11 01 1
Deeplazamlentoa la Izquierda Desplazamiento a la derecha
Desplazamientos circui&uw
Desplazamientos aritm6ticos
Muchas veces, para implementar una operacin de resta se opta por cam-
biar el signo al sustraendo y utilizar la unidad de suma. El cambio del signo
de un nmero depender del sistema de representacin de nmeros negativos
utilizado.
La figura 3.9 ilustra la inversin de signo para los nmeros enteros en estos tres
formatos.
CO =90 +e-i.Po
c1 =gl+go'Pl +c-l.Po.Pl
-
En el caso de aue se tengan nmeros en comulemento a 1 se utilizar un
A
circuito similar. La nica diferencia ser que la seal Ci, vale O para la resta y
si Cmt=lhay que corregir el resultado aadiendo un 1 posteriormente.
110 ESTRUCIWRA DE COMPUTADORES Y PERl@EICOS QRA-MA
Apmximaci6n combinacional
Aproximacin secuencial
+
final queda almacenado en el registro de n m bits que forman el acumulador
de n bits y el registro de desplazamiento de m bits.
. .
e....
e..
.ae .q.1 e e e e. e
e.
@P e O .
e e..
e e. e...
e +.
e.
o
e...
e
C A S ;S,
Paso 1 O 0000 0000 0111 1 0 Inicialiracin
1
Paso 2 O 00001110 011110 SOS-l=lOA<-A-M
1 0000 O111 0011 1 1 Desplazamientode 1 bit. C=1
1
Paso 3 1 00000111 0011 11 Can
Paso 2 3 0000 0001 1100 1 1 Desolezamlentode 2 bits. C=3
Paso 3 3 00000001 iia0;i can
Paso 2 4 1111 0011 1100 II
1
SOS-l=O1 A<-A+M
4 1111 1001 1110 1 O Desplazamientode 1 bit. C=4
Paso 3 4 ,1111 1001 1110; O G m Fin del Algoritmo
V
Por este motivo, para realizar la divisin entera en la mayora de casos 5610 se
recune a algoritmos secuenciales. La divisin entera se basa en dos algoritmos
de divisi& de nmeros sin signo: La divisin con y sin restauracin.
DiM16ncon restauracin
3. A t A-D.
4. Si A<O entonces Qo t O y se restaura A haciendo A t A+D.
Si A>O entonces Qo t 1.
5. Si C=n - 1 entonces n del algoritmo. Q contiene el cociente y A el
resto.
Si C<n - 1 inwmentar C ( C t C + l ) y volver al paso 2.
El algoritmo toma su nombre de la operacin de restauracidn que se realiza
para el registro A si el resultado de A-D es negativo.
D (divisor) m 4
,q---mj
Q (dividendo) n= Qn C
Paso 2
Paso 3
Paso 4
Paso 5
Paso 2
Paso 3
Paso 4
Paso S
...
Paso 2
Paso 3
Paso 4
Paso 5
5. C t C+l
6. i Si C< n - 1 entonces volver al paso 4.
i Si C= n - 1 entonces
- Si A<O Qot O. A t A+D.
- Si A20 Qot 1.
EEE. Para expresar cualquier nmero real en binario slo hay que extender la
representacin en base 2 a los exponentes negativos. De esta manera se tendra
por ejemplo:
Para realizar la resta se selecciona como exponente el mayor (0111 111 l),
se desplaza la mantisa del nmero menor tantas veces a la derecha como la
diferencia de los exponentes (2). Con lo que al final hay que realizar la resta
1.1002 - 0.O1l2 = 1.0012, quedando de signo positivo.
3.9 CUESTIONES
13.15625io
W 2593,7510
-3124.000976562510
w 101100110101000000000OOO000OOO00
w 00101O11111o11oo00OOOoOOO000000o
w 10111011101101110001000000000000
m Division Algorithms
- and Implementations.
- Stuart E Oberman y Mi-
chael J. Flynn. IEEE Transactions on Computers, vol. 46, nc 8, Agosto
1997.
JERARQUA DE MEMORIA
- . .
Cuanto antes llemen las instrucciones v los datos desde la memoria al oro-
cesador mayor sed la velocidad de ejecuci6n de los programas. Para medir la
velocidad del sistema de memoria se consideran los siguientes parmetros:
Tiempo de acceso: Tiempo mnimo que transcurre desde que las direc-
ciones se depositan en el bus y se recogen los datos, en el caso de una
lectura.
Tiempo de ciclo: Tiempo mnimo que tiene que transcurrir entre dos
operaciones de memoria consecutivas
Es muy importante hacer un buen diseo del sistema de memoria para mi-
nimizar estos tiempos y por tanto aumentar el rendimiento del ordenador al
mximo. En este disefo hay que tener en cuenta que no s610 el procesador
accede a la memoria, sino que tambi6n existen transferencias entre la memoria
y los dispositivosde entradalsalida,haciendo que la memoria sea un dispositivo
muy ocupado que pueda llegar a ser el cuello de botella del sistema.
2. Fao (Miss ofault): Los datos no estn en el nivel superior. Por tanto se
debe acceder al inferior para traer el bloque que los contiene. Se define la
tasa de fallos (miss mre) como 1 menos la tasa de aciertos.
tiempo de acierto o Hit time: tiempo necesario para acceder a los datos
en el nivel superior, incluyendo el tiempo necesario para determinar si es
un acierto o un fallo.
Los datos son copias de una parte de la memoria principal. Para poder ave-
riguar de qu parte se trata se utiliza la etiqueta, que indica de alguna manera
la direccin que ocupan en memoria estos datos. Cuando el procesador realiza
una lectura, primero se buscan los datos en la cache utilizando la etiqueta. Si se
encuentran se ha producido un acierto y el procesador lee los datos directamente
de la cache. En caso contrario ocurre un fallo en la lectura y no hay ms remedio
que leer los datos de la memoria principal.
Nobloque
oca
001
o10
o11
1 O0
101
110
111
Memoria Cache
Memorla Wnclpal
- si
Cuando el vrocesador realiza un acceso a un dato se tiene que averiguar
existe una copia del mismo en la cache para evitar un acceso a memoria principal
innecesario. Para ello, primero se calcula qu bloque de memoria contiene el
138 ESTRUCPVRADE COMPUTADORES Y FEIUP~ICOS ORA-MA
Debido a que se usan los bits menos significativos (LSB bits) de la direccin
del bloque para acceder a la cache, sta tendr un tamao potencia de 2. La
cantidad de memoria necesaria para implementar una cache estar por tanto en
funcin del nmero de bloques que se desee guardar en la cache y del tamao
del espacio de direccionamiento del procesador, (que influir sobre la longitud
de las etiquetas). Como ejemplo es posible calcular la memoria necesaria para
implementar una cache mapeada directamente de tamao 2". Esta cache servir
para el procesador MIPS, que usa direcciones de 32 bits y con un tamao bloque
de 1 palabra (4 bytes).
Para ello, se averigua primero qu6 bloque de memoria contiene el dato y qu6
conjunto le corresponde a ese bloque en la cache. A partir de este momento
ya se sabe que si existe copia del bloque, inicamente se podr encontrar en
alguno de los bloques que pertenecen al conjunto que se acaba de calcular. A
continuacin se procede a comparar las etiquetas de estos bloques con la etiqueta
que se obtiene a partir de la direccin del dato para ver si coinciden. En caso
afirmativolos datos estn en la cache.
ORA-MA C W h I L 0 4. JERARQU'~DE MEMORIA 141
log, N log, L
1 etiqueta 1 conjunto 1 byte 1
Figura 4.3: Dimccionamiento de una linee de cache genLlrica
w e r s de escritura de alta velocidad que guardan los datos para ser escritos
posteriormente en la memoria El procesador una vez ha escrito los datos en
el buffer contina ejecutando la instruccin. Si se llena el buffer el procesador
debe esperar hasta que los buffersse escriban en memoria. El tamao del buffer
oscila entre 1 y 10 bloques.
Otro problema que surge al aumentar el tamao del bloque es que se incre-
menta el coste de un fallo (tiempo que se tarda en recuperar el bloque del nivel
inferior y cargarlo en la cache). Si el tamao del bloque aumenta, el tiempo
de transferencia aumenta y con ello el tiempo que tiene que estar esperando el
procesador hasta que se acabe de cargar el bloque completo. Se utilizan dos
soluciones para solucionar este problema:
4 16 64 256
Tamafio del bloque (bytes)
u - 1
Mumplexor
Memorla lnterpolada
Con este mtodo las direcciones que produce el procesador son direcciones
vimiales. De la misma forma que el tamao de la cache era inferior al de la
memoria principal, ahora la CPU hace referencia a un espacio de diiciona-
miento virtual independiente del espacio fsico existente en memoria principal.
El tamao del espacio de direccionarniento virtual no est en relacin con la
memoria fsica disponible y suele ser mucho mayor. A cada direccin virtual
se le asocia una direcci6n fsica en memoria central mediante el mecanismo de
mapeado o de traduccin de las direcciones. Si la pagina que contiene el dato
no est copiada en la memoria, el resultado es un faiio de pgina que produce la
copia
Direccin vlftual
TLB
Dlrecd6n fsica
Figura 4.8: Direccionamiento de pdgim en la memoria virtual
cdigo en segmentos diferentes. Son habituales los segmentos para las variables
globales del programa, para la pila y para el cdigo del programa
4.6 CONCLUSIONES
Direccin virtual
Direccin fisica
4.7 CUESTIONES
4.14 Dada una cache con un tamaAo.fijo para los datos, indicar si la modifi-
caci6n de los siguientes pardmetros inrJIuirlasobe el tamao total de la m h e :
tamaAo del espacio de direcciomiento delprocesador,algoritmo utiliuido pa-
m el mapeado de los bloques, tamao del bloque, nilmero de bloques.
4.18 Dibujar un diagrama con todos los elementos necesarios pana implemen-
tar un sistema con memoria virtual.
4.22 Explicar las diferencias entre memoria cache y memoria virtual con res-
pecto a:
Traduccin de direcciones:
Poltica en escrituras:
4.31 Si se tiene una cache wtite-back con 2 Mbytes de memoria para almace-
nar 40% bloques y el pmcesador es capaz de direccionar4 Gbytes de memoria,
indicar cmo se podra saber cuntos bits tendrdn Eas etiquetas en el caso de
que la cache sea con mapeado directo o bien totalmente asociativa.
temporalmente los datos que van a ser transferidos. De esta manera se facilita la
sincronizacinentre el procesador y el perifrico.
Los dispositivos perifricos son muy diversos, por lo-que para clasificarlos
se tendrn en cuenta:
Para realizar una operacin de WS, el procesador debe generar una direcci6n
que especifique el perif6rico al que se quiere acceder dentro de un mdulo de
E/S y por el bus de datos se enviar la orden que se quiere ejecutar. La figura
5.1 muestra la estnictura e interconexi6n genrica de una inteflace de WS.
Como existen muchos mdulos de WS, cada uno de eilos con varios pe-
rifrico~,se utiliza un identificadornico (una deccin) para cada uno de eilos.
Cuando la CPU, la memoria y la EIS comparten el mismo bus se pueden dife-
renciar dos modos distintos de dicionamiento: E/S mapeada en memoria y
WS aislada.
Llneas de dlreaiones
Llneas de datos
Lfneas de oonml
U
Disposlllvode entrada
Para que el usuario no pueda acceder directamente a los registros de los con-
. -
troladores, el S.O. prohibe su acceso mediante los mecanismos de traduccin de
las direcciones. Si un usuario intenta acceder a uno de los registros se producir
un error de proteccin.
172 ESTRUCTURA DE COMPUTADORES Y PERIPRICOS ORA-MA
E/S aislada:
I
Cuando el procesador est ejecutando un programa y encuentra una opera-
cin & WS, ejecuta esa instrucci6n enviando una orden con la operacin a rea-
lizar al controlador del perifrico apropiado. Si la sincronizacin es por prueba
-
de estado, el controlador realizar la accin con el perifrico v activar los bits
correspondientes en el registro de estado una vez terminada, no realizando nin-
guna accin posterior para aviw al procesador. Por lo tanto es responsabilidad
de la CPU el comprobar peridicamente, mediante la ejecucin de un programa,
el estado del periferico para determinar si el perifrico est listo para aceptar o
enviar los datos. De esta manera la CPU podr dirigir la transferencia de los
datos.
Las ventajas que presenta este mBtodo son la respuesta rpida y que el pro-
gramador no tiene que utilizar rutinas de muestre0 del estado del perifrico. El
inconveniente es que a pesar de obtener una mayor velocidad en la respuesta
an no es un mtodo lo suficientemente rpido, puesto que cada dato transferido
desde la memoria al perifrico an tiene que pasar por la CPU.
Enmascaramiento
...B. ........,
.....Dato;
r- ............. ..
B. Dir
! :
Control
del Bus
1 Decodiicaci6n
Direcciones
l....,
111
AEN
....
L - r
Buffer de
t
.I Memoria
5.8 CONCLUSIONES
En este captulo se han descrito los conceptos y las operaciones que tienen
lugar cuando se realiza una transferencia de EnWSalida. No hay que olvi-
dar que el subsistema de EntradaJSalidacompone uno de los grandes pilares de
la arquitectura del computador, junto con el procesador y la memoria, por ello
es de vital importancia realizar un disefo eficiente del mismo. El ordenador se
comunica con el mundo extenor a travs de los perifricos. No es necesario
disponer de un sistema demasiado eficiente pata cubrir las necesidades de co-
municacin de los usuarios, pero sin embargo s que es preciso de disponer de
enlaces de alta velocidad para conectar unas mquinas con otras.
5.9 CUESTIONES
5.4 Qu ventajas tiene usar DMA para realizar una transferencia de datos?
Qu es mejor; utilizar DMA o un canal? Razonar la respuesta.
5.5 Enumerar los mtodos que el procesador puede emplear para transferir un
bloque de datos desde un controlador de perifrico a una zona de la memoria.
5.8 i Que! ventajas presenta In sincronizacin por interrupcin frente a las sin-
cronizacin por prueba de estado?
Habitualmente los buses estn compartidos por los dispositivos. Es, por tan-
to, necesaria la implementacin de mecanismos que aseguren que nunca va a
haber ms de un dispositivo controlando el estado (el nivel de tensin) de las
lneas del bus. Si varios dispositivos tratan de transmitir informacin por el mis-
mo bus en el mismo instante de tiempo, las seales se solaparan producindose
un error llamado contencin del bus. En todas las transferencias siempre existe
un elemento emisor, o dispositivo origen, que enva informacin a uno o vatios
elementos receptores o dispositivos destino.
Todos los elementos conectados a un mismo bus deben ser capaces de in-
terpretar de maneni correcta la informaci6n que se transmite por el bus. Para
conseguir que diferentes m6dulos de distintos fabricantes puedan interactuar en-
tre ellos sin problemas, todos los buses deben estar estandarizados, cumpliendo
una serie de requisitos elctricos (niveles de tensin en el bus), mecnicos (tipos
de conectores) y de protocolo (cmo se enva la informacin). De manera adi-
cional, la estandarizacin tiene otras ventajas como son la flexibilidad y el bajo
coste, ya que si se define un nico sistema de conexin con los mismos conecto-
res para todos o para una conjunto grande de dispositivos,se podrz intercambiar
dispositivos entre diferentes ordenadores o aadir nuevos.
Por otro lado, el principal inconveniente que plantea el uso de buses para la
interconexin de los elementos de un computador es que puede convemise en
un cuello de botella que limite las prestaciones del sistema. Esta situacin se
produce si las necesidades que tienen los diferentes elementos conectados a un
mismo bus (CPU, memoria y E/S) de transferir informacin, supera la capaci-
dad de transferencia, produ~i6ndosemltiples estados de espera que &&dan
el rendimiento del sistema. La mxima velocidad en las comunicaciones vendr
dada por el ancho de banda del bus que indica la cantidad de datos que se pue-
den transferir por unidad de tiempo (habitualmente en byteds). Si la velocidad
del bus no es suficiente para evitar la degradacin del rendimiento, se puede au-
mentar el nmero de buses del sistema const~yendouna jerarqua que permita
realizar transferencias simultneas.
6.2 CARACTER~STICAS
DE UN BUS
Todas las cmcte&ticas que tiene un bus y que lo diferencian de otros buses
se recogen en un documento llamado estndar del bus. Dependiendo del mbito
de aplicacin, ser conveniente elegir un bus con unas c&tedsticas determi-
nadas que permita realizar mejor todas las transferencias. Las caractersticas
bhsicas que d e h e el estndar son el nivel fsico, nmero y funcin de las lneas
elctricas y el modo de operacin.
Nivel fsico
Lneas
Existen buses donde las mismas lneas fsicas se utilizan para llevar infor-
macin tanto de datos como de direcciones. El ciclo de bus se divide en dos,
190 ESTRUCTURA DE COMPUTADORBS Y F%W&lUCOS @RA.MA
Modo de operaci6n
El estndar tambin regula el modo de operaci6n del bus que indica la forma
en la que se realiza una transferencia, incluyendo protocolo, ordenaci6n y tem-
porizaci6n de las seales. Se distingue entre buses sncronos, donde todas las
acciones se realizan en instantes de tiempo determinados en funci6n de la seal
de reloj perteneciente al bus, y asincronos, que utilizan seiiales de control para
indicar la reazaci6n de determinadas acciones.
Por regla general cada uno de los dispositivos conectados a un bus tendr
una determinada velocidad de funcionamiento. Tambi6n es habitual que la ne-
cesidad de ancho de banda en las transferencias que realiza cada dispositivo
sea diferente. Dado que la incorporaci6n de elementos lentos puede retrasar
las transferencias de los elementos ms rpidos, necesitados de mayor ancho de
banda, los dispositivosdentro de un com&tador se suelen agrupar por sus velo-
cidades y necesidades de ancho de banda. Los dispositivos dentro de un gmpo
comparten un mismo bus y el conjunto de todos los buses forman una jerarqua
dentro del sistema. Con la separacin de los buses se consigue reducir los retra-
sos de las seales, al reducir la capacidad de las lneas debida a la conexin de
mltiples elementos. Tambin se reduce el riesgo de que el bus pueda llegar a
constituirse como un cuello de botella del sistema si la demanda de transferencia
de datos alcanza el ancho de banda mximo del bus. Un esquema de la jerarqua
de buses se muestra en la figura 6.1. Normalmente en una jerarqua de buses se
encuentran los siguientes niveles:
lkansferencia en bloque
2. Juego limpio Cfaimess): Cualquier dispositivo que quiera usar el bus tie-
ne garantizado que tarde o temprano lo podr usar.
6.6 INTERRUPCIONES
Los buses como medio de conexin entre los distintos elementos de un sis-
tema infonntico deben permitir que cualquier esclavo pueda producir interrup-
ciones en el sistema. Dependiendo de la prioridad de la interrupcin, el maestro
parar la tarea actual eiun instante determinado y la atender. Si se solicitan
varias interrupciones a la vez, se debe determinar cul es la ms prioritaria y
dejar las dems en espera. Los mtodos ms utilizados para la implementacin
de las interrupciones son:
-
-..-.. - ....-.. --.-
.
Con respecto al bus cabe destacar que tiene un funcionamiento sncrono con
frecuencias de reloj que pueden llegar hasta los 33Mhz. Estn multiplexadas las
d i i i o n e s y los datos, lo cual disminuye el niimero de lneas necesarias para
implementw el bus pero reduce la velocidad de funcionamiento. Para evitar en
lo posible esta degradacin, el modo de transferencia bsico es el modo bloque,
con un nmero cualquiera de datos en cada transferencia.
Seales de control:
FRAME# Es utilizada por el maestro para indicar el principio y la dura-
cin de un acceso.
IRDY#: Indica que durante la presente transaccin el maestro est prepa-
rado para aceptar los datos (lectura) o ha puesto los datos (escritura).
TRDY#: Indica que durante la presente transaccin el esclavo est prepa-
rado para aceptar los datos (escritura) o ha puesto los datos (lectura).
STOP#: Indica que el esclavo quiere parar la transaccin en curso.
LOCW. Indica una operacin atmica que requiere mltiples transac-
ciones para completarse.
IDSEL: Seleccin de dispositivos para configuracin.
DEVSEM Reconocimiento activado por el dispositivo seleccionado.
Seales de error:
P E R W Se activa por el elemento receptor de los datos cuando ha habido
un error de paridad en los datos.
SERRk Se activa por el elemento receptor de los datos cuando ha habido
un error de paridad en las direcciones o cuando hay un error catastrfico.
Seales de interrupcin:
INTA#: Hay 4 lneas de interrupcin activas por nivel.
INTB#, C, D: Son lneas utilizadas para dispositivos multifuncin.
rdenes
Transferencias en el bus
Bus bmd
IRDYI
I
TRDY# 1 1 1 1 1
l l I l l I
I A I I I I
W
-
. Sefial de escritura o lectura.
DSW,DSW Indican un dato de 8 6 16 bits respectivamente.
LWORM Indica una transferencia con un dato de 32 bits.
AS#, DTACI(#: Seiales de protocolo para transferencia asnmna, el
maestro activa AS# al indicar la dimxi6n y el esclavo activa DTACK#
al completar una transferencia.
BR#, BGIN#, BGOUT#, BBSY# y B C L M Seales de arbitraje con
BR#,petici6n del bus, daisy chain, BBSY#, BCLR# bus ocupado y libre
respectivamente.
ILEGAL 1,0,1,0
ILEGAL 0,1,1,0
Tabla 6.1: Tamao y posicin de los datos en el bus VME
Transferencias en el bus
e Ciclo read-modify-write.
e Ciclo de reconocimiento de interrupciones.
Iniao de deb
Conclusin
6.10 CUESTIONES
6.1 iQu6 utilidad tiene el driver m'esrado medianie el cual los dispositivos
acceden a las lfneasde un bus?
6.2 A que' bus se conectaran las tarjetas de integu con la conexin RS-232
dentro de la jemrqua de buses?
6.5 Enumerar las ventajas y desventajas de cada uno de los mtodos de arbi-
traje del bus.
6.6 Qu tipo de arbitraje tiene el bus VME? Cmo funciona este tipo de
arbitraje?
214 ESTRUCTURA DE COMPUTAWRESY PERI@RICOS ORA-MA
6.7 Enumerar las ventajas y desventajas de cada uno de los mtodos de imple-
mentacin las interrupciones en un bus.
6.8 Cul fue la causa que impuls la aparicin del bus P U ? Qu problemas
solucion?
6.11 BIBLIOGRA~A
a Design of Microprocessor Based Systems. Nikitas Alexandridis. Rentice-
Hall Intemational, Inc. ISBN 0-13-588567-1. 1993.
a The Indispensable PC Hardware Book. Hans-Peter Messmer: 35 ed.
Addison Wesley Longman, Inc. 1997. ISBN 0-201-40399-4.
a Penfncos e Interfaces Industriales. Jos C. Campelo, FranciscoRodr-
guez, Vicente Torres. Servicio de Publicaciones de UPV. ISBN 84-7721-
474-3.1997.
a PCI Local Bus Specification. Revision 2.1.
a Computer Organizanon and Architecture. Designing for performan-
ce. William Stallings. 4"ed. Prentice-Hall Intemational, Inc. 1996. ISBN
0-13-394255-4.
CAPTULO7
EL ENLACE EXTERIOR
Las operaciones que tienen lugar y los protocolos que se siguen en las trans-
ferencias se unifican en una sene de estndares que hacen ms fcil la intercone-
xin de dispositivos con caractersticas similares. A todos los elementos hard-
ware y s o f t k que hacen posible la conexin entre dos unidades diferentes se
les denomina interfaz. Esta interfaz debe estar diseada segn las caractersticas
del perifrico al que se accede para poder obtener el mayoirendimientoposible.
Normalmente se distingue entre interfaces sene e interfaces paralelas.
1. Interlaz serie: Se utiliza una nica lnea para transmitir los datos.
2. Interfaa paralela: Se utilizan varias ineas de datos para transmiti~mlti-
ples bits de forma simultnea.
con el ndmero de bits por segundo transfexidos si se incluyen tambin los bits
de comienzo, de fin y el de paridad.
Para poder realizar una transferencia asfncrona, tanto el emisor wmo el re-
ceptor se deben poner de acuerdo en la frecuencia de transmisin de datos y en
la fo* de las tramas que se van a enviar: nmero de bits de datos, de comien-
zo, de fin y tipo de paridad. Despu6s de la recepcin de una trama, se pueden
producir los siguientes errores:
e E m r de trama (Frming error). Se produce cuando el receptor detecta un
bit de stop en un momento que no le cotresponde, puesto que no se adapta
a la forma de las tramas que se espera recibir.
Error de rotura (Break error). Se produce cuando se detecta que la lnea
est a nivel bajo durante un tiempo mayor al que se tarda en enviar una
trama completa. Esto es asf ya que por defecto. cuando no se utiliza la
Inea, permanece a nivel alto.
e Em>r de sobrepasamiento (Overrun error). Se produce cuando la CPU
an no ha recogido los datos del controlador y de nuevo llegan nuevos
datos que sobreesaiben los primeros.
Error de paridad (Parity e m r ) . En este caso la paridad que calcula el
receptor con los datos que le llegan no coincide con la paridad recibida.
En la tabla 7.1 se puede obsewar una tabla que recoge la denici6n de las
seaies tanto paca los conectores de 25 patas como para los de 9 patas.
Tabla 7.1: SeAales del estndar RS-232C
zan las lneas de sincronizacinDTR, DSR, RTS y CTS, que permanecen activas
durante todo el tiempo (por ejemplo, en el caso de la configuracin null-modem).
En la tabla 7.2 se muestra un ejemplo del protocolo que se siguecuando un dis-
positivo externo quiere conectarse con el host a travs de un m6dem. Se ha
implementado un protocolo de entendimiento hardware que utiliza las lneas de
sincronizacin del estndar.
El estndar define voltajes que oscilan entre +[3-15]V para el nivel alto y -[3-
15]V para el nivel bajo. Debido a la gran diferencia de voltaje que existe entre
los niveles altos y bajos, se permiten tasas de transferencia de hasta 115.200
baudios si la longitud del cable es de unas pocas decenas de metros.
t RI - - ~ R I - - c R I - -
t DCD - - t D C D - A t DCD - A
A - D T R + A - D T R + A - DTR +
c D S R - A e DSR - A t DSR -A
t CT8 X - c CTS - A c CTS -A
X - R T S - t A - RTS + A - RTS -r
t RD - t RD - t l U > - A
- TD -r - TD + A 1 D +
4. Cuando el mdem termina 5. El mddwn activa DCD pare 6. Se tmnsnilten datos hasta
de preparar la conexldnactiva indlcar que la wnexi6n es* que se desaciiva DCD, DSR o
DSR. lista. El PC acva RTS para DTR.
enviar datos y el mdem res-
ponde con CTS.
-
Anteriormente los *rerifricos se conectaban mamados directamente en di-
recciones de WS, se les asignaba una interrupcin especfica y en algunos casos
-
un canal DMA. Esta situaci6n conduca a tener conflictos en la asienaci6n de
estos recursos, puesto que siempre han estado bastante limitados en el ordena-
dor. Adems cada dispositivo tena su propio puerto de conexin y utilizaba sus
cables especficos, lo que daba lugar a un incremento de los costea. Debido a
que a cada dispositivo se le tenan que asignar unos recursos e s p d c o s (so-
bre todo si es plug-a&-play, es decir que el Sistema Operativo lo configura de
forma automtica) la deteccin del mismo deba hacerse a la hora de arrancar
el sistema y nunca se poda incorporar un nuevo dispositivo cuando el sistema
estaba en marcha.
Este estndar define una topologa de conexin en estrella, tal como se mues-
tra en la figura 7.1. por medio de la incorporacin de varios concentradores
(hubs) conectados en serie. Cada concentrador se conecta por un lado al compu-
tador (llamado host en el estndar) -
. aue contiene una o dos interfaces de este tipo
en la placa base o a otro concentrador, y por otro lado se conecta a varios disposi-
tivos o incluso a otro concentrador. De este modo pueden existir ~erifericosaue.
vengan ya preparados con nuevos conectores USB para incorporar nuevos dis-
uositivos.
* hasta un total de 127. todos ellos funcionando simultneamente. Los
hubs tienen la misin de ampliar el nmero de dispositivos que se pueden conec-
. .
tar al bus. Son concentradores cableados aue uermiten la conexi6n simultnea
& mltiples dispositivos y lo m8s importante es que se pueden concatenar entre
s ampliando la cantidad de puertos disponibles para los perifricos. El concen-
trador detecta cundo un periftrico es conectado o desconectado alde uno de
sus puertos notificndolo de inmediato al controlador del USB. Tambitn realiza
funciones de acoplamiento de las velocidades de los dispositivos ms lentos.
@lRA-MA OAP~TULO7. EL ENLACE EXTFXUOR 223
F!
Hub ralz
El USB define dos lneas para transmitir datos y otras dos para transmitir
potencia (vase 7.2). Los datos se transmiten de forma balanceada a velocida-
des entre 12 Mbps y 1.5Mbps. La seiial se transmite codificada en un cdigo
autoreloj de no retorno a c m invertido (NRZI) para poder incluir junto con los
datos informacin de sincronizacin. (Se puede ampliar la informacin sobre el
cdigo NRZI en el captulo 11). Las lneas de alimentacin (Vbus y GND) evi-
tan la necesidad de utilizar fuentes de alimentacin externas. Tiene una tensin
de 5V y la corriente se limita a un mximo de 3 a 5 amperios por tazones de se-
guridad, siendo el consumo y la configuracin elctrica to&nte transparente
al usuario. La distancia entre dos perifricos conectados al mismo cable no debe
ser superior a los 5 metros para evitar problemas de cadas de tensin.
D+
D- D -
GND GND
-
Intel ha implementado un coniunto de controladores de USB vara -uerifricos
de PCs (8x930x USB ~ e r i ~ h e rController)
ai y para los concentradores (8x930-
Hx USB Hub Controller y el 8x93 1Ax USB Peripheral Controller).
e Interfaz serie (Serial Inteiface Engine - SIE) que serializa los datos y se
encarga adems de realizar la codificacin NRZI, el control de errores, el
control de los protocolos y el secuenciamento de los paquetes.
B
-
230 ESTRUClWRA DE COMPUTADORES Y PERIR~ICOS
DB-25 estbndar.
C o n W r centmnica de 38 pl-
DlatPiidP
(m)
2
2
Comentulos
@RA-NLP
nes. impresora.
C Coneoior centronias de 38pines 10 Nuevo estinilar de conexlbn.
mlnlatura. w n nuevos voltajes que permi-
ten un mayor ancho de banda.
Desarrollado por intel, Xlrcom.
and Zenllh.
En la figura 7.3 se muestran las seales de este bus. Existen 9 llneas de datos
y 9 seales de protocolo que coordinan la transferencia entre el controlador y el
host. A continuacin se presenta una lista que describe la funcionalidad de las
sefiales de protocolo del bus.
(PeMrim intellgents.
wnidndor Inteligente
1
Figura 7.3: Descripcin de la inte$hz SCSI
Las transferencias que tienen lugar en el bus se dividen en varias fases, tal
como muestra la figura 7.4. Como se puede observar no todas las transferen-
cias tienen que pasar por todas las fases para completarse. A continuaci6n se
describen las fases por las que se pasa en el prutocolo SCSI.
1. Bus libre. No es una fase propiamente dicha, ya que ningn dispositivo
est utilizando el bus.
2. Fase de arbitraje. Antes de empezar o continuar con la operaci6n de WS
en necesario ganar el control del bus, ya que puede haber mltiples inicia-
dores de la transferencia.
3. Fase de selecci6n. El iniciador selecciona un objetivo. ste contesta con
los tipos de transferencia que es capaz de soportar: entradalsalida de da-
tos, peticin de comando, reconocimiento de estado o entradalsalida de
mensaje.
4. Fase de reseleccin. El objetivo se vuelve a conectar con un iniciador con
la intencin de continuar con la operacin que 61 mismo suspendi.
5. Fase de orden. El objetivole pide al iniciador informacin sobre la orden.
@RAMA C A P f n a o 7. ELENLACE,EXTERIOR 233
.1
Selecci6n o
BUSlibre Arbitraje reseleccibn
A
T
Figura 7.4: Fases en una transferencia SCSl
Cuando ya se han transferido todos los datos que se pidieron, el objetivo po-
ne al bus en la fase de estado v transfiere un bvte de estado al iniciador indicando
el xito de la transferencia. n este caso la &a C/D se activa de nuevo y la lnea
U 0 permanece activada. Tambin aqui se utiliza el protocolo REQIACK.
Finalmente, para concluir con la transacci6n el objetivo pone al bus en la
fase de mensaje activando la lnea MSG y transfiere un byte que contiene el
mensaje de orden terminada. Cuando este byte es recibido por el iniciador, el
objetivo desactiva todas la lneas para dejar al bus en estado de no utilizacin.
ORA-MA 0 EL ENLACE EXTERIOR 235
C A ~ f r v L 7.
Mensajes
7.5 CONCLUSIONES
Adems se han clasificado las interfaces en funcin del nmero de lneas uti-
lizadas para la transmisin de los datos y del nmero de dispositivosconectados
y se han introducido las interfaces serie (RS232) y paralelo (IEEE 1284) como
ejemplo de la gran diversidad de estndares que existen.
7.6 CUESTIONES
7.1 Se quiere enviar uno secuencia de 3 caracteres (15h, 255 y AOh) por una
ltnea serie utilizando un protocolo asncrono. Se conjguran tanto el emisor
como el receptor para emiiar/recibir caracteres a una velocidad de 10 bits por
segundo, con paridad par y un bit de stop. Realizar un esquema temporal que
muestre el estado de la lnea de transmisin incluyendo [as celdas de bit. .jCmo
sabe el receptor cuando debe muestrear la lnea?
7.3 .jQu&tipo de arbitraje utiliza el bus SCSI? Indicar cmo tiene lugar el
proceso de arbitraje.
7.7 BIBLIOGRAF~A
e Computer Peripherais. Bany M. Cook, Neil H. White. 30 ed. Edward
b o l d . ISBN 0-340-60658-4. 1995.
e An Introduction to Micxucomputer Systems. Architecture & Intea-
dng. John Fulcher. Addison Wesley Publishers Ltd. ISBN 0-201-41623-9.
1989.
@RA.MA CAP~~ULO
7. EL ENLACE EXTBRIOR 237
Los medios a travs de los cuales llega informacin al procesador son muy
dispares. A lo largo de este captulo nicamente se van a considerar aquellos
dispositivos que utiliza el usuario para introducir informacin en el ordenador.
Nlideo
magntlw
Material
magn61iw
l.Salida
son muy delgados y baratos, y adems son hermticos, lo que los hace
ms duraderos, pudiendo ser incluso hasta sumergibles.
m Capacitivos: Como se puede observar en la figura 8.1 (b), estos inte-
rruptores internamente tienen dos placas de condensador en la base del
interruptor. Al presionar se acerca una tercera placa que produce una
variacin de tensin entre las dos placas de la base. La calidad de los
interruptores de este tipo es bastante elevada, ya que no existen contactos
mecnicos que se puedan estropear o desgastar con el tiempo.
m De efecto Hall: El efecto Hall produce una diferencia de potencial en-
tre los extremos de una pieza hecha a base de un material semiconductor
cuando fluye la corriente a travs de la misma y el material sufre los efec-
tos de un campo magntico perpendicular a la direccin del flujo de la
comente. La figura 8.1 (c) muestra un interruptor de estas caracterlsticas.
Cuando se presiona la tecla, al acercarse el ncleo magntico produce
una variacin del flujo magntico que atraviesa la pieza del fondo del in-
terruptor. Esta variacin de flujo produce un cambio en la tensin del
semiconductor que sirve para detectar la pulsacin de la tecla.
Nivel
bajo Rebdss
Reset Set
8.3 TECLADOS
Cuando se escribe un 'O' por la fila 1, siempre que se detecte un 'O' en la co-
lumna l significa que se ha presionado la tecla (1,l). En memoria se tendr una
tabla que indique cud es la tecla que se tiene en esta posicin. Existen 8 posibi-
lidades para cada fila, indicando desde las tres teclas pulsadas simultneamente
(000) hasta ninguna tecla pulsada (111). Esta tcnica de decodificacidn por soft-
ware consume mucha memoria debido a la gran cantidad de posibilidades que
se pueden obtener, por lo tanto normalmente no se tienen en cuenta las pulsa-
ciones mltiples en este tipo de teclados cuando se aplican estos algoritmos &
interpretacin de las teclas pulsadas.
Otro de los problemas que presenta esta tcnica consiste en que el procesa-
dor tiene que estar todo el tiempo comprobando las filas secuenciaimente para
detectar las pulsaciones de las teclas. por lo que se pierde eficiencia. Para so-
lucionarlo se emplean otros algoritmos en los cuales el procesador activa todas
las filas a la vez y pasa a realizar alguna otra tarea en espera de la pulsaci6n de
alguna tecla (detectada por la presencia de al& cero en alguna columna). En
@IRA-MA 8. DISPOSITIVOS DE ENTRADA DE DATOS 245
CAP~ULO
5v
Puerto de
Entrada
El conector del teclado dispone de 5 hilos para transmitir las seales de reloj,
datos, reset, tierra y alimentacin, con lo que se puede establecer una comunica-
cin bidireccional entre el ordenador y el teclado con propsitos de transferencia
de datos o de configuracin (como, por ejemplo, para programar la velocidad de
repeticin de la tecla pulsada, o para deshabilitar el teclado). La lnea de reset
sirve para inicializar el teclado.
ll~l - h k m de
lnwmipd6n
W --
,--
DI
-- Controlador
d i Idado
11
ol -
M- - 8741
DS --
06 -- 8741
D7 -- Cable &l
tulodo
8.4 RATONES
Los ratones funcionan asociados con las interfaces de usuario grficas, en las
que la mayora de las acciones vienen determinadas por la pulsacin de un botn
del ratn cuando Bste se encuentra sobre una determinada rea en la pantalla.
Los botones diferencian eventos cuando se aprietan o cuando se sueltan. El
driver de ratn es el programa que se encarga de convertir las seales recibidas
en rdenes de la CPU.
a botn n apretado
a botn n soltado
La luz roja es absorbida tanto por las ineas negras como por las d e s ,
mientras que la luz infrarroja slo es absorbida por las lneas negras. Por lo
tanto, el fotodetectorde luz roja generar6 pulsos cada vez que el rat6n se mueva
por encima de alguna lnea, sea cual sea su color, mientras que el fotodetector
de M j o s generar6 pulsos nicamente al pasar por encima de las ineas ne-
-
mas. Para detectar la d i i c i n del movimiento las ventanas tienen un mueo
A
desplazamiento tanto horizontal como vertical, con lo que se consigue una pe-
quea variaci6n en los pulsos generados por los sensores que produce una seal
cuadrangular.
Estos ratones no tienen partes mviles, por lo tanto son m& fiables, pero
necesitan una almohadilla especial. Los mechicos tienen la desventaja de que
la bola de goma y sobre todo los rodillos que la sujetan se suelen ensuciar, con
lo que no se transmite bien el movimiento.
I
250 ESTRUCTURA DE COMPUTADORES Y PERJF&IcoS ORA-MA
.
El conector del ratn sirve de manera adicional ara alimentar al ratn.
Cuando se mueve el ratn o se aprieta algn botn, el ratn transmite un paquete
. .
de datos a la interfaz oue ~roduceuna interruocin. La nitina de tratamiento de
la interrupcin (es decir el driver del ratn) se encarga de leer el paquete de da-
tos y de actualizar el estado de los pulsadores y de la posicin del ratn. Adems
se debe encargar tambin de mover el puntero del ratn sobre la pantalia. Para
ello se borra el puntero de la posicin actual, se escriben los contenidos anterio-
res de esa posicin, se leen los contenidos de la nueva posicin y se dibuja el
puntero del ratn.
Los displays
- - -grsficos interactivos permiten al usuario retomar informacin
sobre la posicin en la pantalla de los objetos seleccionados, los objetos movidos
o borrados. Esta informacin se puede introducir de muy diversas maneras.
m Usar el lbipiz para controlar un cursor que le sigue como si fuera un ratn.
Tiene el inconveniente de que no se puede separar el Ibipiz de la pantalla.
m iluminar la pantalla cada vez que se pulsa el botn del lpiz para evitar los
puntos no iluminados.
m El primero usa una hoja transparente que se pega sobre la pantalla. Las
hojas pueden ser de tipo resistivo o capacitivo. Las de tipo resistivo usan
dos hojas, la primera con hilos conductores trazados horizontalmente y la
segunda con los hilos trazados verticalmente. Si se presiona un punto de la
pantalla los hilos hacen contacto suministrando la informacin de donde
se ha tocado con el dedo. Las de tipo capacitivo utilizan una tecnologa
similar.
Estos dispositivos tienen una resolucin mucho mayor que la de los ratones,
por lo que se usan en aplicaciones de CAD. Para la mayora de estos programas,
la tableta viene dividida en varias partes: una central para posicionar el cursor, y
una seccin en los bordes con diferentes smbolos. La pulsacin del botn en la
ORA-MA GVhJI.0 8. DiSPOSfllVOS DE ENTRADA DE DATOS ?S3
Tiras de
MkrMci~os
El sensor de luz suele ser un dispositivo CCD (Charge Coupled Device) que
convierte la intensidad de luz recibida en un voltaje proporcional. El cabezal
monta una tira con miles de estos elementos. El escner emite luz sobre tres
filtros (rojo, verde y azul) y la luz reflejada en el documento a digitalizar es
diigida hacia la tira de sensores mediante un sistema de espejos y lentes. El
CCD acta como un fotmetro que produce un voltaje que posteriormente se
convierte en informacin digital.
Actualmente se utiliza una nueva tecnologa, llamada CIS, que utiliza bancos
de leds de color rojo, verde y azul que producen luz y sustituye los espejos
y las lentes por una fila de sensores ubicados en una zona muy cercana a la
imagen. Como resultado se puede construir un digitaiizador mucho ms delgado
y ligero, con un menor consumo y ms barato, aunque de momento, la calidad
que muestran no es tan buena como la de los digitalizadores convencionales.
El color: Los digitalizadoresen color utilizan tres fuentes de luz para cada
uno de los colores primarios. Otros contienen un nico tubo fluorescente
y tres CCDs por pxel que iltran la luz. Los primeros necesitan dar tres
pasadas al documento, mientras que los segundos, que son los ms utiliza-
dos, digitalizan la imagen en una sola pasada. Los digitalizadores de una
pasada utilizan dos mktodos diferentes para leer la imagen. El primero
pasa la luz a trav6s de un prisma para separar los tres colores primarios,
que son entonces leidos por tres CCDs distintos. La otra tcnica, ms ba-
rata. consiste en la utilizacin de tres CCDs, recubiertos con filtros para
que nicamente puedan leer un color concreto. Esta tcnica da casi los
mismos resultados que La anterior.
8.7 CONCLUSIONES
Por otro lado, con los avances tecnolgicos, y con el auge de los sistemas
multimedia y de realidad vimial, han salido al mercado multitud de dispositivos
de entrada de altas prestaciones que no han podido ser incluidos en el presente
texto. Como ejemplo se pueden citar micrfonos, guantes con sensores de pre-
sin, sensores de movimiento, ratones tridimensionales y pistolas inalmbricas.
258 ESTRUCTURA DE COMPUTADORES Y PERU~RICOS ORA-MA
8.8 CUESTIONES
8.8 Describir los elementos que tiene un ratn ptico e indica para qu sirven.
8.9 Explicar las diferencias existentes entre un ratn y una tableta digitaliza-
dora atendiendo a la informacin que recibe el procesador de dnde se encuen-
tra el cursor en la pantalla y a la resolucin que presentan.
ORA-MA CAF'hU.0 8. DISPOSITIVOS DE ENTRADA DE DATOS 259
Sin duda, uno de los dispositivos que resulta imprescindible en todo sistema
informtico es la impresora. Cualquier sistema consta al menos de uno de es-
tos dispositivos, desde los pequeos ordenadores personales que se instalan en
casa, hasta los grandes supercomputadores. Debido a que cada da se va am-
pliando tanto el abanico de aplicaciones que ejecutan los ordenadores como su
expansi6n por entornos no especializados, las impresoras resultan de vital im-
portancia para poder escribir sobre el papel documentos de texto, fotografas,
planos, esquemas de circuitos elctricos e incluso nrninas y cheques. En este
captulo se describen los tipos de impresoras que se han venido utilizando hasta
ahora, empezando por las antiguas impresoras matnciales y terminando por las
sofisticadas impresoras lser en color.
4
Ralles gula
Estas impresoras van formando los caracteres de forma gradual por colum-
nas de puntos. En el cabezal existen 9 guas distribuidas circularmente que
QRA-MA CAPfnnO 9. DlswSiTWOS DB COPIA iMPESA 265
i
Clnia
Papel
Figura 9.2: Detalle de una aguja del cabezal de una impresora matricial
Las impresoras matnciales tienen la ventaja sobre las que usan otras tecno-
logas de que el papel puede ser continuo y que adems permiten la alimentacin
con hojas sueltas, utilizando rodillos o ruedas dentadas. Para la cinta con tin-
ta es posible tener dos carretes o un cartucho que contiene una cinta continua.
Sin embargo la velocidad es bastante lenta, oscilando entre los 50 y los 500
caracteres por segundo, dependiendo de la calidad de las letras que se quieran
imprimir.
266 ESTRUCTIJRA DE COMPUTADORESY PERW~ICOS ORA-MA
Rodlllo
de papel
dieWritrlco
El espacio que existe entre las agujiis es aproximadamentede 0'25 mm, por
lo que la impresora tiene una resolucih de 100 puntos por pulgada. Ademk
es posible utilizar dos mas de agujas para doblar la resolucin. Tambibn se
puede imprimir en color, simplemente pasando el papel varias veces con tners
& diversos colores.
Las ventajas de estas impresoras frente a las de inyeccin de tinta son que
producen mejor calidad en blanco y negro, que estn pensadas para produccio-
nes altas y adems permiten la utilizacin con facilidad de otros soportes como
postales, sobres y cualquier otro tipo de material de tamaiio no estndar.
9.5.1 Operacin
En las impresoras lser, el componente ms m'tico es el tambor fotosensi-
-
ble o tambin conocido como cartucho orgnico fotoconductor (OPC - Oraanic -
Photo-conducting Cartridge). El tambor est cubierto por un material compues-
to vor selenio que es sensible a la luz. En la oscuridad tiene una alta capacidad
y acta como un condensador que se carga a un alto voltaje a medida que pasa
por el hilo cargador. Un rayo lser se refleja sobre un espejo poligonal movi-
ble que lo mueve sobre una lnea del tambor. Ya que el tambor est rotando el
haz lo cubre totalmente. La luz, al incidir sobre el tambor, reduce la capacidad
del tambor en el punto del impacto, reducindose el efecto del condensador y
descargndose, eliminando el alto voltaje. Modulando la intensidad del lser,
se pueden descargar los puntos del tambor selectivamente o dejarlos cargados
268 ESTRUCTURA DE COMPUTADORES Y P E R E ~ U C ~ S ORA-MA
El ltimo paso consiste en limpiar el t6ner remanente del tambor para iniciar
de nuevo el proceso. Existen dos formas de hacerlo, la fsica y la elctrica. En
la primera el tner se elimina de forma mecanica mediante la actuacin de unos
cepillos y se devuelve a su recipiente, en la segunda el cable de la corona carga
el tambor para repeler y por tanto eliminar el t6ner. En la figura 9.4 se muestra
un detalle de los elementos ms importantes que se encuentran en este tipo de
impresoras.
Tambor
fotosensible
Papel
Hilo /
de fusin
Hilo de
la corona
una forma similar, utilizando un panel de cristal lquido como la fuente de luz
en vez de utilizar la matriz de leds.
Cualquier color se puede obtener con una mezcla de azul claro, morado,
amarillo y negro (colores tambin llamados CMYK). Las impresoras lser en
color realizan cuatro fases en el proceso electro-fotogrfico. situando cada vez
un t6ner en la pgina o construyendo la imagen de cuatro colores en una su-
perficie intermedia de transferencia. Las prestaciones no son tan buenas co-
mo las de las impresoras en blanco y negro, llegando a imprimir entre 3 y 5
pginas por minuto. Las nuevas impresoras tienden a procesar los cuatro tners
simultdeamente para ganar velocidad, para eiio se dispone de 4 tambores y de
4 vectores de leds, uno para cada color. Los datos se envan simultneamente a
las cuatro cabezas y se van imprimiendo primero el color morado, luego el azul
claro, despus el amarillo y por ltimo el negro. Otra de las grandes ventajas
de estas impresoras es que el tner se pega al papel, y no es absorbido por ste
270 ESTRUCTURA DE COMPUTADORESY PERl&JCOS QRA-MA
como ocurre en las impresom de inyeccin de tinta, por lo que se puede impri-
mir en multitnd de superficies sin que debido a la humedad se amgue el papel.
Se puede decir que stas van a ser las impresoras del futuro, siendo tan usuales
como las fotocopiadoras.
Una impresora lser necesita tener toda la informacin sobre la pagina antes
de empezar a imprimir. Para enviar las imgenes, el mtodo ms sencillo, pero
menos prctico, es transferir la misma como un mapa de puntos. La impresora
simplemente se dedicar a transferir estos puntos sobre el papel, por lo que no
puede haber un procesado intermedio de la informacin para mejorar la imagen.
Si se utiliza este mtodo, drsticamente se reduce la portabilidad que tiene la
pagina impresa entre diferentes impresoras. No es practico describir el resultado
deseado a nivel de bit, ya que diferentes impresoras trabajan con resoluciones
diferentes, desde menos de 70 ppp a ms de 2000 ppp y tambin con tamaos de
pginas diferentes, por lo que el mismo mapa de bits no quedar representado
de igual manera en el papel.
Las ventajas de este mtodo son que se puede variar el grado de flexin del
cristal para producir puntos de tinta ms grandes o ms pequeos. Como no es
necesario calentar la tinta, sta puede ser de mayor calidad y mejor absorbida
por el papel.
ORA-MA P. DISPOSlTlVOSDE COPIA IMPRESA 273
~~ph'lJI.0
Electmdo Planos da
de carga deflexldn
Las ltimas impresoras de inyeccin de tinta tienen cabezales con 128 agujas
para el negro y 64 para cada uno de los colores azul, morado y amarillo (Cyan,
Magenta, Yellow (CMY)),obteniendo una resolucin de 720 x 720 ppp. Adems
si se hacen dos pasadas, como la precisin de los cabezales es excelente, se
pueden lograr resoluciones de hasta 1440 x 720 ppp.
Las impresoras utilizan los colores azul claro, morado y amarillo para pro-
ducir los colores. Para producir el blanco no se imprime ningn color. Existen
impresoras de inyeccin que adems incluyen un cartucho de tinta negra para
imprimir en blanco y negro, pudiendo intercambiar este modo de funcionamien-
to con el de impresin en color.
bujos es mejor tener muchos niveles de colores para poder obtener fotografas
fidedignas, mientras que para aplicaciones omaticas prima la resolucin. El
modo ms simple de imprimir en color es utilizar puntos con colores puros, sin
ser posible la utilizacin de niveles intermedios. Si la impresora permite unir
varios puntos de color, se imprimira 6~camente en morado, amarillo, rojo, ver-
&, azul, negro y blanco, produciendo una calidad insnficiente para la mayora
de aplicaciones. La solucin adoptada consiste en la utilizacin de un tamaf~o
de punto variable, basado en una celda que contiene varios puntos elementales,
de forma que combinando las proporciones de los puntos con los colores puros
se Uega a producir sensacin de color (Aalffonning).
La tinta se almacena en folios del mismo tamao del que se quiere imprimir
y la imagen se realiza impregnando el folio en blanco cada vez con un color
distinto (amarillo, azul claro, morado o negro), empezando por el amari110 y
terminando por el negro. Estas impresoras n e c e ~ i t & ~ a ~especial
el para poder
crear los colores de forma precisa y las velocidades de impresin son inferiores
a una pgina por minuto.
La mayora de las impresoras escriben todos los caracteres que forman una
lnea de forma consecutiva teniendo que esperar por tanto a que se reciba total-
mente la siguiente lnea para poder imprimirla. En consecuencia es necesario
almacenar de forma temporal los caracteres a medida que se van recibiendo en
QRA-MA cAP~TUW9 DISPOSITIVOSDE COPIA IMPRGSA 279
9.12 CONCLUSIONES
Como se habr6 podido observw con la lectura de este captulo, los aspectos
tecnolgicos tambin influyen notablemente en el desarrollo de nuevos tipos de
impresoras can mayores prestaciones. En un par de doadas se ha pasado de las
ruidosas impresoras de h a s y de margarita alas potentes impresoras de inyec-
ci6n de tinta y a las impresoras laser. Resulta necesario advertir que cuando se
analicen las prestaciones de los dispositivos objeto de este capitulo, no se de-
ben considerar de forma absoluta los parmetros de resolucin y velocidad que
marcan la calidad de la impresora, ya que seguramente se estaran utilizando
valores obsoletos. Es d s interesante realizar una comparacin entre los dispo-
sitivos, ya que las cantidades relativas se alteran menomiente con los avances
teenol6gicos.
9.13 CUESTIONES
9.3 1QuC ventajas se obtienen & utilizar un lenguaje & descripcidn & pginas
para enviar los datos a la impresom?
9.4 Indicar las diferencias que existen entre una impresora ekctrosttica y una
impresom Mser:
9.6 Cubl es el papel que desempeia el rayo kser en las impresoras ldser?
Los transductores pticos ms sencillos son los leds (light emitting diodes).
La mayora de los computadores disponen de algunos leds para mostrar infor-
macin bsica del sistema: la alimentacin de la CPU, alimentacin del monitor
o la utilizacin de la disquetera. Sin duda los transductores pticos ms popu-
lares en los computadores domsticos son los tubos de rayos catdicos o CRT's
(Cathode Ray Tubes),conocidos por su utilizacin en los monitores de TV.En la
actualidad se utilizan mucho otros transductores ~ticos,como son los cristales
de cuarzo lquido y las pantallas de plasma, debido principalmente a los avances
impulsados por la introduccin de los ordenadores porttiles.
Los transductores pticos tienen en comn que emiten luz para mostrar in-
formacin digital. Este principio bsico se consigue con sencillez en el caso de
los leds, pero no se logra de forma tan inmediata en el caso de la pantalla grfica
de los computadores. Este dispositivo necesita una circuitera especial que co-
difique la informacin digital que se desea mostrar en las seales elctricas ne-
cesarias para el transductor ptico.
Los leds esin formados por una unin p-n de f6sforo de galio (Gap) que
cuando son atravesados por una corriente elctdca emiten luz. La comente
tpica que suele atravesar un led es del orden de unos pocos miamperios y
la cada de te11si6n entre sus extremos vara entre 0'5 y 3 voltios. La luz se
emite desde los extremos de la uni6n y se refleja hacia el exterior por medio de
un metal en el ctodo. Los leds se suelen empaquetar en plsticos coloreados
formando lentes.
Los displays de 7 segmentos suelen incluir lentes para aumentar la luz de los
distintos segmentos. Este tipo de pantallas es adecuado para aplicaciones que re-
quieren un nmero limitado de caracteres, por ejemplo para representar nmeros
en los equipos de prueba y medida. Habilitando combinaciones adecuadas de
segmentos se pueden representar los nmeros. El ordenador suministra la infor-
macin del carcter a visualizar en cdigo decimal codificado en binario 6 BCD,
surgiendo la necesidad de implementar un decodiicador de BCD a 7 segmentos
para representar los caracteres.
Grid d e control
\
A~~.~ t o o a l , d r
I -
Tubo d e vacio
El haz debe orientarse para que llegue a cualquier punto de la pantalla. Esta
orientacin se logra por medios electrostticos o por medios magdticos. Los
primeros utilizan dos planos para la deflexin horizontal y dos para la vertical,
formndose un campo electrostttico que atrae el haz hacia un plano y lo repele
hacia el otro. Este sistema se utiliza en los instrumentos de medida, puesto que
es fcii desviar el haz rpidamente. Los segundos utilizan cuatro bobinas que se
encuenhan fuera del tubo y que generan un campo magntico. Estos ltimos se
utilizan en aplicaciones gricas donde la longitud del tubo debe ser reducida y
no se precisa de una velocidad de deflexin muy alta.
El rapido refresco de la pantalla (50 a 100 veces por segundo) consigue en-
gaar al ojo humano, produciendo la impresin de una imagen fija. Dependien-
do del tipo de fsforo, la imagen persiste iluminada un mayor o menor tiempo,
compensando el parpadeo. Sin embargo, si la persistencia es demasiado gran-
de, cuando se rehsca de nuevo La pantalla con otra imagen se pueden producir
sombras no deseadas debido a la retencin de las imgenes previas.
ORA-MA CAPflWJ.0 10. TERMINALES DE VbBO 287
Para crear una imagen precisa, es necesario asegurar que el haz de electrones
de cada color incide nicamente sobre el fsforo adecuado para ese color. Para
288 ESTRUCTURA DE COMPUTADORESY P E ~ R I C O S QRA-MA
El sincronismo vertical se genera cada 312'5 lneas con una duracin de 2'5
lneas, introducindose pulsos para mantener el sincronismo horizontal durante
los cuales el haz se inhibe.
Las cmaras y los monitores RGB utilizan una codificacin similar para
mantener la compatibilidad con la seal PAL en blanco y negro, con este fin,
a partir de las seales RGB se calcula la luminancia Y como una media pon-
derada de la intensidad de los colores que se sigue transmitiendo como la seal
PAL en escala de grises. De manera adicional se transmite la seal R - Y y
B - Y, durante el prtico posterior de la lnea PAL con una portadora de 4'43
MHz. De esta manera se pueden recomponer las seales R, G, y B.
290 ESTRUCTURA DB COMPUTAWR6SY PER&UCOS ORA-MA
Slncmnismo
Horizontal
Figurn 10.4: Evolucidn de la seAal de vieo PAL
Direccionamiento Direccionamiento
lineal por filas y columnas
a M oM 0 Es:
un tipo especial de memoria dinmica RAM
(DRAM) de doble puerto. Requiere una menor frecuencia de refresco y
por tanto tiene un funcionamiento m& ptimo que la DRAM habitual.
Cada carcter est representado por una matnz de puntos, llamada celda
de cartcter de dimensi6n m x n, que indica la forma con la que aparecen los
caracteres por la pantalla. Esta informaci6n se guarda en memoria ROM, en
una tabla llamada generador de caracteres. Si se desea cambiar la forma de
los caracteres, bastar con sustituir la ROM que guardan los patrones de bit del
c h t e r de un tipo de letra determinado por otro.
Generador de
Memoria de Vldeo
Las pantallas @cas no se suelen programar a nivel de bit, sino que se dis-
pone de una serie de primitivas grficas o macros que permiten dibujar ineas,
recinguios, crculos y otra serie de formas geomtricas. Los circuitos integra-
dos controladores grficos empezaron a desmolamea partir & los aos ochenta
y hoy en da son parte fundamental en los controladores de pantalla grica.
Normalmente el plano de bits almacena 8 bits por pxel. que se utilizan para
acceder a una tabla en memoria, llamada paleta de colores, donde cada entrada
tiene 12 bits de infomtci6n (cuatro para cada color primano). que son tiles
para controlar la intensidad de los 3 haces de electrones del Cr. Los bits de
informaci6n son previamente dirigidos a 3 convertidores digital-anal6gicos lla-
mados DACRAM, que se encargan de generar la seial de vdeo que actuar
sobre la rejilla de control de los caones de electrones. La figura 10.8 mues-
tra esta disposicin con 8 bits por pxel y una paleta de colores de 12 bits. El
nmero de planos de bits determina el nmero de colores simultneos que se
observan en la pantalla. De manera adicional, el nmero de bits de la paleta de
colores indica el nmero de colores disponibles de los cuales se eligen los que
se visualizan de forma simultnea.
Paleta de colores
12 bits
11000010 1011
Los CRTs son las pantallas que ms se utilizan en los computadores debido
a la alta calidad de las idgenes que pueden producir (nmero de colores, re-
3M) ESTRUCTURA DE COMPUTAWRBS Y PEl&RIcOS ORA-MA
Los cristales lquidos, descubiertos a inales del siglo XM, son sustancias
casi transparentes, que presentan propiedadea combinadas de los slidos y los
lquidos. La luz que atraviesa los cristales lquidos se polariza en el sentido
del cristal, siendo sta una propiedad de los materiales slidos. Posteriormen-
te se descubri6 que mediante campos electrostticos cambiaba su alineamiento
molecular, y de esta manera la polarizacin de la luz que los atraviesa.
Polarizador Polarizador
Luz
incidente
Electrodo \
Cristal llquido
entre ellos que suele ser una mezcla de ne6n y de argn/xenn. Si se aplica un
voltaje entre los electrodos, el gas se ioniza y emite luz.
10.6 CUESTIONES
10.3 Enumemr los mCtodos por los que se arbiim el acceso de la CPU y del
controlador de la pantalla de rayos catdicos a la memoda de vieo.
10.5 En una aplicacin CAD es interesante disponer de una pantalla con una
buena resolucin y de un monitor que no canse demasiado la vista Si se supone
que la resolucin de la pantalla es de lOOOxlOOO y que se tiene un monitor
Eo,RA-MA CAPlTUL0 10. TERMINALES DE V ~ E O3a3
10.7 BIBLIOGRAFA
Barry M. Cwk,Neil H. White. Compurer Peripherals. 3%ed. Edward
Amold. ISBN 0-340-60658-4. 1995.
e John Fulcher. An Introducrion ro Microcomputer Systems. Architecture
& Interjacing. Addison Wesley Publishers Ltd. ISBN 0-201-41623-9.
1989.
e Hans-Peter Messmer. The Indispensable PC Hardware Book. 3%ed.
Addison Wesley Longman, Inc. 1997. ISBN 0-201-40399-4.
ALMACENAMIENTO MASNO
. .
Los tnimeros ca~itulosdel texto se centraron en el funcionamiento interno
del computador y en el proceso de ejecuci6n de las instrucciones almacenadas
en memoria principal. Sin embargo, normalmente esta memoria del computador
es voltil y tanto el sistema operativo, como los programas y los datos, desapa-
recen al interrumpirse la alimentacin del sistema. Para evitar este problema,
es necesario que el sistema operativo y los programas estn almacenados en al-
guna memoria no voltil a la que pueda acceder el procesador para cargarlos
en memoria principal. Este espacio de memoria constituye el almacenamien-
to secundario, y permite salvar de forma masiva gran cantidad de programas y
datos.
Cuando las celdas se magnetizan con polos Norte y Sur sobre la superficie
magntica, el proceso de denomina grabacin horizontal. Tambin es posible
encontrar mtodos de grabacin vertical o perpendicular, que crean celdas a
travs de todo el medio con el polo Norte en una superficie y el polo Sur en
otra. Con este mtodo se consiguen celdas 30 veces ms estrechas. Sin embargo
la grabacin horizontal es ms simple y se puede realizar por ambas caras. La
grabacin vertical se utiliza en los discos magneto-pticos.
El proceso de lectura utiliza el mismo cabezal, pero en este caso sin apli-
- comente a la bobina que
car ninguna - rodea el ncleo. Al mover el soporte
magntico por debajo del cabezal, se producen variaciones en el flujo magntico
que atraviesa el ncleo de femta, debidas a las diferentes magnetizaciones
- de las
celdas de bit. Estas variaciones generan una comente inducida en la bobina que
se utiliza para determinar la informacin almacenada. Si se mide la tensin en
los extremos de la bobina se observan pulsos de voltaje (100pV - 100mV) cada
vez que se produce un cambio en el flujo magntico que pasa por el ncleo. Este
cambio en el flujo se da al pasar de una zona con un sentido de magnetizacin
a otra zona con sentido distinto. En la figura 11.1 se muestra el esquema de
lectura m a i ~ t i c a .
Cabezal
inducida
almacenada
seal producida por la interferencia con los pulsos producidos por transiciones
cercanas, no sean detectados por un sensor de nivel. Para evitar esta degrada-
cin e incrementar la densidad de grabacin, se utiliza la tcnica PRML (Partial
Response Maximum Likelihood). Esta tcnica en lugar de detectar pulsos indi-
viduales para determinar los cambios de flujo, emplea algoritmos de procesado
digital para manipular la seal analgica y averiguar la secuencia ms parecida
de bits que representa. El mtodo se divide en dos pasos:
Cdigos no autoreloj
e No retorno a cero (NRZ): Es el mdtodo ms simple. Un 1 se representa
por una celda magnetizada en sentido Norte y un O por una celda magne-
tizada en sentido Sur.
o No retorno a cero invertido (NRZI): Un 1 se representa invirtiendo la
direccin del flujo. Un O se representa no cambiando la direccin del
mismo.
Cdigos autoreloj
o Codilcacin de fase (PE):Para cada bit se necesita producir dos cambios
de flujo, por lo que con las mismas celdas de bit, representa la mitad de
datos que en los dos ejemplos anteriores. Se almacena un 1 mediante
un flujo con sentido Sur seguido de un flujo con sentido Norte y un O se
representa de forma contraria.
e Modulacin en Frecuencia (FM):Siempre existe un cambio de flujo al
comienzo de cada bit. Para almacenar un 1 se utiliza otra celda adicional
para producir un cambio de flujo. Los O's se graban a una frecuencia y los
1's al doble de esa frecuencia.
Modulacin de frecuencia modificada (MFM):Es la misma que el cdigo
FM excepto en que el cambio de flujo al principio de cada codificacin de
bit se produce nicamente si el bit actual y el anterior son O's. Con ello se
garantiza que slo se necesita un cambio de flujo para cada bit.
OCR
1101 01101
1110 o1110
1111 o1111
RLL
10 SRSS
11 RSSS
010 RSSRSS
O11 SSRSSS
O010 SSRSSRSS
0011 SSSSRSSS
Un disco est formado por uno o varios platos que giran simultneamente
movidos por el mismo motor, teniendo cada plato sus pmpios cabezaies de lec-
tudescritura, tal como se muestra en la figura 11.3. La informacin se almacena
distribuida en pistas conc6ntrcas. grabadas sobre el material magn6ticm en una
o en las dos caras de cada plato que hace de sustrato. Para acceder a los datos
314 ESTRUCURA DE COMPUTADORESY ~ C O S (EIRA-MA
Cabezales
ni- / n
Cada pista se divide en sectores formando una estructura de tarta, tal como
se muestra en la figura 11.4. Cuando el disco est formado por varios platos, al
conjunto de pistas que tienen el mismo nmero se le denomina cilindro. No toda
la superficie del disco se utiliza para almacenar datos, s610 se usa la parte m&
exterior, ya que debido a la velocidad angular constante del disco, los patrones
magnBticos de la superficie del interior quedaran muy comprimidos. A su vez,
cada sector contiene un conjunto de bloques de tamao fijo donde se almace-
na la informacin. Cada bloque dentro del disco se distingue por su posicin
especificada mediante un nmero de bloque, sector, cilindro y cabezal.
Figura 11.4: Divisin del disco
Nombre 380k 5.25" 1.2M 5.25" 720k 3.5" 1.44M 3.5" 2.88M 3.5"
TPI 48 96 135 135 135
BPI 5.876 9.869 8.717 17.434 34.868
Denaldad DD doble HD alta DD doble HD atta ED eatm - alta
Tabla 11.3: ClasQicacin de los discos por densidades
Los discos duros estn formados por vanos platos que esth continuamente
girando y poseen una capacidad y velocidad superiores a la del disco flexible.
AdemBs, para alcanzar altas densidades de grabacin, el equipamiento mecnico
y el control del disco es ms preciso.
Es el disco duro por excelencia. Los platos estn formados por un material
metlico, normalmente aluminio, ya que su ligereza reduce la inercia del disco.
El metal se recubre con xido de nquel o cobalto que permite altos niveles de
densidad de grabacin. Suelen tener un tamao de 3.5",para que el tiempo
de posicionado del cabezal sobre la pista sea pequeo, al ser el radio del disco
pequeo.
La velocidad a la que giran los discos es superior a 7200 rpm, con un circuito
de control que la regula para reducir sus variaciones a menos del 0.1%. Esto
supone una velocidad 10 veces superior a la de los discos flexibles.
Para evitar el problema de los sectores internos, se utiliza una tcnica que
divide el disco en varias zonas (zonning), teniendo cada zona un nmero de
sectores constante, tal como se muestra en la figura 11.6. En la zona interna,
como hay menos sectores, las celdas magnticas tendrn el mismo tamao que
las de la zona extema. La zona externa tendr ms sectores, y como la velocidad
angular es la misma, stos se leern mucho ms rpido. Es interesante poner en
esa zona los bloques ms utilizados para aumentar el rendimiento.
FF 00 FF 1 28 FF
-..
-e2E---
-- -<--
_<--
7 11 6
.... 131 Z
.Z
r e- -
**-- 1
FF 00
,
,
, .,FF
Cada pista comienza cuando se detecta la marca ndice. Existen unos cam-
pos, llamados huecos, (gaps), que se usan para separar los campos de infor-
macidn de la pista y que compensan las tolerancias mecaaicas y elctricas que
puedan existir en el posicionamiento de la cabeza y las pequefiar variaciones
en la velocidad de rotacin del disco. Tambiin permiten la actualizacin de un
campo de infomaci6n sin afectar a los campos adyacentes, ya que el inicio de
cada cama0* - -
puede variar ligeramente. En cada hueco se tiene un nmero varia-
ble de bytes puestos a uno, seguidos siempre por 6 bytes con ceros, que sirven
para sincronizar el circuito separador de datos.
Una vez se formatea un disco a bajo nivel, slo es posible alterar el campo
de datos y su CRC asociado. En cada sector se incluyen 2 bits de informacin
en forma de CRC.Al leer los datos, se vuelve a calcular el CRC y se comprueba
si es el mismo.
Los cdigos de grabacin mhs usuales son el NRZI (se utiliza con paridad
impar para asegurar que hay al menos una inversin en cada bit), el NRZI Mo-
dificado y el de grabacin por codificacin de fase (PE).
BOT IBG Cabezal atos Cola IBG Cabezal ... IBG EOT
Cartucho de cinta
Las cintas de ordenador fueron reemplazadas por los cartuchos, los cuales
incluyen la cinta y los dos carretes, con lo que su uso es mucho ms cmodo.
Los drivers contienen cabezales separados de lectura y de escritura para poder
leer inmediatamente lo que se est escribiendo y as poder detectar cuanto antes
un posible error. Al cartucho de datos se le conoce como el cartucho de 114 de
pulgada, y existen tamaos estndar de 5.25 y de 3.5 pulgadas pero que operan
de la misma forma. La longitud de la cinta oscila entre los 200 y los 1000 pies,
y tiene una anchura de 114 de pulgada. Para mover la cinta existe un cinturn
de goma que est en contacto con la cinta y al mover el mecanismo accionador,
el cinturn de goma mueve los carretes y desplaza la cinta. Este mecanismo
es muy simple y produce una velocidad lineal constante independientemente de
la cantidad de cinta que se encuentre en cada carrete. Para este tipo de cintas
existen muchos estndares de cdigos de grabacin y de densidades de pista. El
esquema se muestra en la figura 11.10.
Pueda de 7
+ Mecanisr
acceso accionador Proteccin
Detector
. .. contra
ae iin escritura
de cinta
Cinta de vdeo de 8 mm
Cabezal de
lectura/ewiN
1-1 Cinta
Cabezal m6vil
n
i Fotodetector
haz presenta un pozo o no, ya que los pozos reflejan el haz de luz de forma
dispersa. A continuacin, mediante una serie de espejos y lentes, se focaliza
la luz reflejada hacia un fotodetector. que la transforma en una seilal elctrica
Como las kflexiones de luz provenien& de pozos presentan un gran dispersin
del haz, la intensidad de luz reflejada recogida en el fotodetector ser menor y
la diferencia de seal elctrica pi&ite la c&ificaci6n de 1's y O's. Existen do*
tipos principalmente de dispositivos 6pticos: el CD-ROM y el DVD.
cronizndose la velocidad del motor con los datos recibidos. As, los primeros
CD-ROM funcionan a la misma velocidad que los CD de audio. con velocidades
de rotacin que varan entre 210 a 539 revoluciones por minuto (rpm), depen-
diendo de la localizacin del cabezal. Con estas velocidades de giro se consigue
una tasa de transferencia de 150 KB/s. Posteriormente empezaron a aparecer
lectores que multiplican la velocidad de rotacin aumentando la tasa de trans-
ferencia. El problema de este tipo de lectores comenz al superar velocidades
multiplicadas por 12, ya que en el diseo de estos lectores mucho ms rpidos,
se trataba de mantener la velocidad lineal constante. Con velocidades de rota-
cin variables en el rango de 210 rpm a 539 no se presentan graves problemas,
pero el diseo se complica cuando es necesario variar la velocidad de rotacin
entre 5,040 a 12,936 rpm. Esta aceleracin y desaceleracin de la velocidad de
rotacin es uno de los factores que ms degradan el acceso aleatorio a estos dis-
positivos, ya que no puede realizarse de forma bmsca. Con el aumento gradual
de la velocidad de los lectores, se ha tenido que volver al diseo de velocidades
de transferencia variables, en los que la variacin de la velocidad de rotacin
no es lo suficiente como para mantener una velocidad lineal constante. Actual-
mente, la velocidad de transferencia anunciada en los lectores indica la mxima
velocidad que pueden alcanzar en las zonas externas del disco.
e Audio digital (CD-DA (CD Digital Audio)) . Almacenan msica con for-
mato digital en estreo, muestreada a 44.1 Khz. Cada muestra tiene 16
bits, por lo tanto cada segundo estreo ocupa (44,100*2*2) bytes. Los
datos se almacenan en bloques, llamados tambin sectores, que contienen
2,352 bytes de datos e informacin adicional sobre nmero de bytes usa-
dos para deteccin de errores. Son necesarios 75 bloques por segundo de
sonido en un CD estndar de 74 minutos y la capacidad total del disco es
de unos 747 Mbytes.
324 ESTRUCTURA DE CU-RES Y P&RICOS QRA-MA
Estos discos presentan la ventaja de que pueden ser regrabados varios millo-
nes de veces, a diferencia de los discos pticos tradicionales, y alcanzan tiempos
de acceso inferiores a 25ms, con capacidades de hasta 5Gb con discos de tamao
5.25" y 640Mb para la serie de 3.5".
3% BSTRUCTURA DECOMPUTADORES Y PEN&IcaS @RAMA
11.8 CONCLUSIONES
-
ORA-MA CAP~TULO11. ALMACENAMIENTO MASIVO 335
11.9 CUESTIONES
11.4 iPara qusinte el formato a bajo nivel y a alto nivel de los discos magnticos?
11.8 Enumerar las ventajas y desventajas de los discos pticos frente a los
magnticos.
ARQUITECTURAS AVANZADAS
Cuando se segmenta
- una tarea (es decir, se divide una tarea en etapas) se
realiza un cauce segmentado. Es importante que cada etapa tenga capacidad de
almacenamientode los tesultados parciales producidos en ella. Con estos requi-
sitos el cauce segmentado puede sSimultne&ente realizar varias tareas, ya que
cada etapa podr funcionar en paralelo almacenando sus resultados parciales.
Tras la finalizacin de cada etapa se transmitir el resultado a la etapa siguiente
para as poder completar la tarea.
. ....,.....
3 pj
~1n4s 1
w3 c o i % ~ > ~
0-
-
I
-12-, _ _ , a _ _ ,
..... ....
.........
1 2 3 4 5 6 7 8
Etapas Tiempo
En el caso de que las etapas estn bien denidas y se pueda almacenar infor-
macin entre ellas, se pueden empezar otras instrucciones sin haber terminado
de ejecutar una instmcci6n. De hecho. en cada etapa se podra estar ejecutando
una instruccin en el caso ideal, llegndose a la mxima paralekaci6n posible.
Esta arquitectura es la que se conoce como cauce segmentado de instrucciones,
y se utiliza de forma masiva en cualquier procesador moderno. Un ejemplo de
esta arquitectura se puede observar en la figura 12.2 (A), y la evolucin temporal
a la que dara paso en la figura 12.2 (B).
Etapas
Procesador Segmentado
1 2 3 4 5 8 7 8
Tiempo
Etapas
Figura 12.2: (A) Cauce segmntado cle instrucciones (B) Evoluci6n temporal
las fronteras entre los grupos definidos por Flynn. De la misma manera alguno
de los gmpos de la clasificacin de Flynn no est claramente definido y varios
autores discrepan sobre la catalogacin de un grupo de mquinas en una clase u
otra.
I
Red de interconexin
I
Memoria
-----
I I
1 - - - - - J
a) Multiprocesador b) Multicomputador
instrucciones 1 linstruccion7
vectoriaies
47$ J,
3. Arquitecturas MISD
m Procesadores vectoriales: Un procesador vectorial es una mquina
optimizada para la ejecucin de instrucciones que involucren la uti-
lizacin de vectores. Normaimente consta de una unidad escalar
segmentada ms una unidad vectorial segmentada que optimiza el
tiempo de ejecucin en el caso de operaciones sistemticas con vec-
tores. La unidad de control decodifica las instrucciones y las enva al
cauce escalar o vectorial en funci6n del tipo de instnicci6n. La figura
12.7 muestra la estructura genrica de un procesador vectorial.
Instrucciones
escalares
1 1 instrucciones
\1 'vectoriaies
4
J
lb
En las arquitecturas definidas por Fiynn como MIMD cada pmesador ejecu-
ta su propio flujo de instniccionessobre su propio flujo de datos. La arquitectura
multipmesador consiste en dotar al computador de varios procesadores, com-
partiendo &tos la memoria y recursos del sistema. El programador debe dividir
las tareas de forma eficiente a lo largo de la red de procesadores para aprovechar
al mximo el paralelismo. Anlogamente en los multicomputadoresla tarea glo-
bal se ha dividido entre varios computadores conectados a travks de una red de
interconexin. Las ventajas obtenidas del paralelismo de la divisin del tiem-
po de proceso entre varios procesadores o computadores pueden perderse en la
comunicacin a travs de la red de interconexin. Es w r tanto necesario aue
la red de interconexin entre los elementos que milizan-los clculos no degrade
las prestaciones globales del multiprocesador o multicomputador.
Redes estticas
...
a) Bus compartido b) Red lineal c) Anillo
J. Otro tipo de redes son las genricas redes n-cubos tambikn conocidas co-
mo hipercubos de orden n. En un hipercubo de orden n cada nodo tiene n
enlaces que lo comunican con n nodos vecinos. Si se utilizan n bits para
identificar a cada nodo, entonces cada nodo se comunicar con aquellos
nodos cuyo identificador se diferencie en un solo bit. De esta manera es
posible un encaminado eficiente de la informacin manteniendo redes de
gran potencia y complejidad. La figura 12.11 c) muestra la topologa de
un hipercubo de orden 3.
Redes dinmicas
En este tipo de redes, adems de los enlaces y los nodos, aparecen los con-
mutadores de interconexin como elementos que deinen la topologa de la red.
Los conmutadores de interconexin son unos circuitos que, en funcin de unas
seales de control, conectan un conjunto de salidas con un conjunto de entra-
das. De esta manera los enlaces entre nodos son reconigurables simplemente
cambiando las seales de control del conmutador de interconexin.
Conmutadores
a) Red de barras cruzadas b) Red monoetapa c) Red multietapa
MEMORIA COMPARTIDA
- J L Y -
1 Red de interconexin 1
II
Red de interconexi6n MEMORIA COMPARTIDA
. -
incoherencia de datos comuartidos entre caches. Si embargo la mavora de las
veces hay mecanismos hardware que garantizan la coherencia de caches que do-
tan de total transuarencia al software. Los diversos urotocolos de coherencia de
caches se basan en dos metodologas bhsicas:
125 EL RENDIMIENTO
Las palabras rendimiento y mejora han sido utilizadas hasta ahora de una
manera bastante intuitiva en el presente texto, permitiendo hacer comparaciones
de sistemas paralelos entre s o entre estos sistemas y la mquina Von Neumann.
Para estos conceptos existen unas definiciones matemticas que permiten com-
parar computadoresentre s sin ambigtiedades. Una de las medidas consideradas
ms populares, como los MIPS definidos en la seccin 2.10.1, no son en reali-
dad fiables de las prestaciones de un computador. En esta seccin se introducen
algunas ideas que van a ser tiles al estudiante para realizar comparacionesentre
computadores.
TCpO= CLK . N
I CPI
TCPU= u
Esta ecuacin da la relacin entre los tres factores clave para obtener el ren-
dimiento de un procesador secuencial.
ORA-MA S ARO- AVANZADAS 359
cAPTULO 12.
S+P
acelemcidn = -
S++
1
aceleracin = -
S++
l 3 M BSTRUCVRA DE COMPUTADORES Y PERU?&ZOS ORA-MA
s+p. N
aceleracin de ancho escalado =
S+P
Estos programas de pmeba pueden ser tiles para evaluar de forma compa-
rativa mquinas que van a destinarse a la misma aplicacin; clculo cientiw,
ingeniera, bases de datos, etc. La asociacin sin nimo de lucro SPEC (Stan-
&ni Peqormance Evaluation Corpomtion) dispone de una amplio catlogo de
programas y aplicaciones que pueden ser tiles para evaluar: grandes aplica-
ciones industriales, arquitecturas secuenciales y paralelas de memoria compar-
tidatdistnbuida, estaciones de trabajo y computadores paralelos de altas presta-
ciones.
12.6 CUESTIONES
de lneas, 263
de leds, 268
de margarita, 261 Lpiz ptico, 250
de matriz de puntos, 264 LCD (Liquid Cristal Display), vase
de sublimacin de tinta, 277 Pantalla de cristal lquido
de tinta slida, 277 Lectura
de transferencia directa, 266 de la instruccin, 60
electrosttica, 264 de los operandos, 60
lser, 267 LED Light Emitting Diode, vase
en color, 269 Diodo emisor de luz
trmica Lenguaje de
de cera, 278 alto nivel, 16
de color, 278 descripcin de pgina, 270
windows, 270 Ley de
Inconsistencia de memoria, 143 Ahmdal, 359
Iniciador, 230 Guftafson, 360
Instruccin mquina, 15,32 Lnea de
Intel iX86, 85 cache, 136
Interfaz, 216 Longitud de palabra, 51
Centronics, 226 LRU (Last Recently Used), 142
EPP, 228
paralelo, 226
SCSI, 228 Maestro de bus, 190
serie, 217 Main memory, vase Memoria prin-
Znterleaving, 147, 319 cipal
Interrupcin, 73 Malla
Interrupciones, 199 bidimensional, 351
Daisy-Chain, 200 de apertura, 288
mediante exploracin secuen- de control, 287
cial, 200 Mapeado
mediante lneas individuales, asociativo por conjuntos, 140
199 directo, 137
Interruptor, 240 totalmente asociativo, 141
Mquina de flujo de datos, 364
J
Marcos de pgina, 148
Jerarqua Mscara
de buses, 190 binaria de condicin, vase
de memoria, 129 Campo de condicin
370 ESTRUCTURA DE COMPUTADORES Y PERW~ICOS ORA-MA