2. Objetivos
Despues de estudiar este cap. el estudiante sera capaz de:
2
Listar los tres subsistemas de un computador.
Describir el rol de la unidad de procesamiento central (CPU).
Describir las fases fetch-decode-execute de un ciclo.
Describir la memoria principal y su espacio de
direccionamiento.
Describir el subsistema de entrada/salida.
Entender la interconeccion de subsistemas.
Describir diferentes metodos de direccionamiento de
entrada/salida.
Distinguir los dos grandes tendencias en el diseño de
computadoras.
Entender cómo el rendimiento (throughput) del ordenador se
puede mejorar mediante la canalización (pipelining) y el
procesamiento en paralelo.
3. Podemos dividir las partes que componen un ordenador en tres
grandes categorías o subsistemas: la unidad de procesamiento
central (CPU), la memoria principal y el subsistema de entrada /
salida.
3
Material informatico / computer hardware (subsistemas)
5. La unidad aritmética lógica (ALU)
La unidad aritmética lógica (ALU), realiza operaciones lógicas,
de desplazamiento y aritméticas en los datos.
5
6. Registros
Los registros son lugares de almacenamiento rápido
independiente que guardan datos en forma temporal. Registros
múltiples son necesarios para facilitar el funcionamiento del
CPU. Algunos de estos registros se muestran en la figura
anterior.
6
Registros de datos
Registro de Instruccion (IR)
Contador de Programa (PC)
7. La Unidad de Control
La tercera parte de cualquier CPU es la unidad de control. La
unidad de control controla el funcionamiento de cada
subsistema. El control se logra a través de señales enviadas
desde la unidad de control a otros subsistemas.
7
10. Espacio de direcciones
Para acceder a una palabra en la memoria se requiere un
identificador. Aunque los programadores utilizan un nombre
para identificar una palabra (o una colección de palabras), a
nivel de hardware se identifica cada palabra por una dirección.
El número total de localidades únicas identificables en la
memoria se llama el espacio de direcciones. Por ejemplo, una
memoria de 64 kilobytes y un tamaño de palabra de 1 byte tiene
un espacio de direcciones que va desde 0 a 65,535.
10
11. 11
Direcciones de memoria son definidas usando enteros
binarios sin signo
15. Jerarquia de la memoria
Los usuarios de computadoras necesitan una gran cantidad de
memoria, especialmente memoria rápida y barata. Esta demanda
no siempre es posible satisfacer – memoria muy rápida no suele
ser barata. El compromiso tiene que ser hecho. La solución
consiste en los niveles jerárquicos de la memoria.
15
Jerarquia de la memoria
16. Memoria cache
La memoria caché es más rápida que la memoria principal, pero
más lenta que la CPU y sus registros. La memoria caché, que
normalmente es de tamaño pequeño, se coloca entre la CPU y la
memoria principal.
16
Memoria cache
17. SSUUBBSSIISSTTEEMMAA EENNTTRRAADDAA/SSAALLIIDDAA
El tercer subsistema importante en un computador es la colección
de dispositivos referidos como el subsistema de entrada/salida
(E/S). Este subsistema permite al computador comunicarse con el
mundo exterior y almacenar programas y datos incluso cuando el
aparato está apagado. Dispositivos de entrada/salida pueden ser
dividido en dos grandes categorías: dispositivos de nnoo--
aallmmaacceennaammiieennttoo y de aallmmaacceennaammiieennttoo..
17
18. Dispositivos de no-almacenamiento
DDiissppoossiittiivvooss ddee nnoo--aallmmaacceennaammiieennttoo ppeerrmmiitteenn aa llaa mmeemmoorriiaa//CCPPUU
ccoommuunniiccaarrssee ccoonn eellmmuunnddoo eexxtteerriioorr,, ppeerroo eellllooss nnoo ppuueeddeenn
aallmmaacceennaarr iinnffoorrmmaacciioonn..
Teclado y monitor
Impresora
18
19. Dispositivos de almacenamiento
Dispositivos de almacenamiento, aunque se clasifican como
dispositivos I/O, puede almacenar grandes cantidades de
información a ser recuperada en un momento posterior. Son más
baratos que la memoria principal, y sus contenidos no son
volátiles -- es decir, no se borra cuando el computador está
apagado. A veces se refiere a dispositivos auxiliares de
almacenamiento. Podemos clasificarlos ya sea magnéticos u
ópticos.
19
28. IINNTTEERRCCOONNEEXXIIÓÓNN DDEE SSUUBBSSIISSTTEEMMAASS
Las secciones anteriores describen las características de los tres
subsistemas (CPU, memoria principal, y E/S) en un equipo
independiente. En esta sección, se explora cómo estos tres
subsistemas están interconectados. La interconexión juega un
papel importante ya que la información debe ser intercambiada
entre los tres subsistemas..
28
29. Conectando CPU y memoria
La memoria y el CPU estan normalmente conectados por tres
grupos de conexiones, cada una llamada una bus: data bus,
address bus y control bus.
29
Conectando CPU y memoria usando tres buses
30. Conectando dispositivos E/S (I/O)
Dispositivos I/O no pueden ser conectados directamente a los
buses que conectan la CPU y la memoria, porque la naturaleza de
dispositivos I/O es diferente de la naturaleza de la CPU y la
memoria. Dispositivos I/O son electromecánicos, magnéticos o
dispositivos ópticos, mientras que la CPU y la memoria son
dispositivos electrónicos. Dispositivos I/O también operan a una
velocidad mucho más lenta que la CPU/memoria. Hay una
necesidad de algún tipo de intermediario para manejar esta
diferencia. Dispositivos de entrada/salida por consiguiente, se
adjuntan a los buses a través de controladores de entrada/salida o
interfaces. Hay un controlador específico para cada dispositivo de
entrada/salida.
30
35. Direccionamiento de dispositivos E/S (I/O)
La CPU suele utilizar el mismo bus de datos para leer o escribir
datos en la memoria principal y de I/O. La única diferencia es la
instrucción. Si la instrucción se refiere a una palabra en la
memoria principal, la transferencia de datos es entre la memoria
principal y la CPU. Si la instrucción se identifica un dispositivo
de entrada-salida, la transferencia de datos entre el dispositivo
I/O y la CPU. Hay dos métodos para el manejo de
direccionamiento de dispositivos I/O: I/O aislado y memoria-mapeada
I/O.
35
38. PPRROOGGRRAAMMAA DDEE EEJJEECCUUCCIIÓÓNN
Hoy en día, las ccoommppuuttaaddoorraass ddee pprrooppóóssiittoo ggeenneerraall propósito
general utilizan un conjunto de instrucciones llamado pprrooggrraammaa
para procesar datos. Un computador ejecuta el programa para
crear datos de salida a partir de datos de entrada. Tanto el
programa como los datos se almacenan en la memoria.
38
Al final de este capítulo se dan algunos ejemplos de
cómo un hipotético simple ordenador ejecuta un
programa.
39. Ciclo de máquina
La CPU utiliza repetidamente ciclos de máquina para ejecutar las
instrucciones en el programa, uno por uno, de principio a fin. Un
ciclo simplificado puede constar de tres fases: buscar (fetch),
decodificar (decode) y ejecutar (execute).
39
Los pasos de un ciclo
45. DDIIFFEERREENNTTEESS AARRQQUUIITTEECCTTUURRAASS
La arquitectura y la organización de los ordenadores ha pasado
por muchos cambios en las últimas décadas. Aqui discutiremos
algunas arquitecturas comunes y la organización que difiere de la
arquitectura simple del computador, que discutimos antes.
45
55. UUNN SSIIMMPPLLEE CCOOMMPPUUTTAADDOORR
Para explicar la arquitectura de los ordenadores, así como su
proceso de instrucción, se introduce un simple (no-realista)
computador. Nuestro sencillo computador tiene tres
componentes: la CPU, la memoria y un subsistema de
entrada/salida.
55
62. En el lenguaje de nuestro simple ccoommppuuttaaddoorr,, eessaass cciinnccoo
iinnssttrruucccciioonneess ssoonn ccooddiiffiiccaaddaass ccoommoo::
Introduccion a la Ciencia de la Computacion - CC101 62
71. 71
LLaa ooppeerraacciióónn ddee eessccrriittuurraa eess llaa ssiigguuiieennttee::
La operación de entrada siempre debe leer datos de un
dispositivo de entrada en la memoria: la operación de salida
siempre debe escribir los datos de la memoria a un
dispositivo de salida.
72. Operaciones de 1 a 4 son para la entrada yy ooppeerraacciioonneess 99 yy 1100 ssoonn
ppaarraa llaa ssaalliiddaa.. CCuuaannddoo eejjeeccuuttaammooss eessttee pprrooggrraammaa,, eessppeerraa aa qquuee eell
uussuuaarriioo iinnggrreessee ddooss eenntteerrooss eenn eell tteeccllaaddoo yy pprreessiioonnee llaa tteeccllaa eenntteerr..
EEll pprrooggrraammaa eennttoonncceess ccaallccuullaa llaa ssuummaa yy mmuueessttrraa eell rreessuullttaaddoo eenn eell
mmoonniittoorr..
72
EEll pprrooggrraammaa eess ccooddiiffiiccaaddoo ccoommoo::