Documente Academic
Documente Profesional
Documente Cultură
Captulo 1: Introduccin.
Jos Daniel Muoz Fras
Universidad Pontificia Comillas. ETSI ICAI.
Departamento de Electrnica y Automtica
ICAIdea
ndice
1.
2.
3.
Ciclo de ejecucin.
4.
5.
Anlisis/diseo de un ordenador.
ICAIdea
El tratamiento de excepciones.
ICAIdea
El juego de instrucciones est formado por todas las instrucciones que es capaz de
memoria por parte de la CPU. Por ejemplo, la direccin que se desea acceder puede
estar contenida en un registro interno, en la propia instruccin. . .
El tratamiento de excepciones define qu hace un ordenador cuando ocurre un error
interno (por ejemplo al dividir por cero), cuando ejecuta una instruccin no definida,
cuando recibe una interrupcin externa, etc.
1 Por
Cmo se controlan.
ICAIdea
desea mayor velocidad se pueden usar dos ALUs para poder efectuar dos
operaciones en paralelo, lo cual implica mayor velocidad, aunque tambin un mayor
coste.
Una misma unidad funcional se puede implantar de distintas formas. Por ejemplo un
sumador se puede implantar con propagacin de acarreo (lento pero barato) o con
prediccin de acarreo (rpido pero caro).
El flujo de datos especifica cmo se mueven los datos entre las distintas unidades del
ordenador.
Para controlar las unidades se usa la unidad de control, que puede implementarse
como una mquina de estados (control cableado) o con un secuenciador (control microprogramado).
ICAIdea
totalmente obsoleta.
Las tecnologas de fabricacin de los circuitos integrados se definen por el ancho de
canal de los transistores que es posible fabricar. Cuanto menor sea el ancho del
canal, ms rpido conmuta el transistor y por tanto puede funcionar a una frecuencia
de reloj mayor. En la actualidad la tecnologas de fabricacin de los
microprocesadores de altas prestaciones oscila entre 0,25 m y 0,13 m.
El lmite fundamental de la frecuencia de operacin es la capacidad de evacuar el
Por ejemplo:
Arquitectura: IA-32
ICAIdea
arquitectura en los sucesivos modelos. Por ejemplo, a partir del Pentium MMX se
aadieron nuevas instrucciones para soporte multimedia junto con 8 registros de 64
bits accesibles por estas nuevas instrucciones. A pesar de esto, la compatibilidad
hacia arriba est garantizada, es decir, un Pentium 4 fabricado hoy es capaz de
ejecutar un programa escrito en 1978 para el 8086.
Otro ejemplo de arquitectura es la del IBM System/360, nacida en 1964 y que ha
El funcionamiento.
La estructura.
ICAIdea
estructura.
La estructura: Es el modo en que cada uno de los componentes estn interrelaciona-
dos.
Funcin de un computador
Entonces:
Una calculadora.
Un radio-cassette.
Un telfono.
Son computadores?
ICAIdea
Los ordenadores se utilizan para todo tipo de tareas. Sin embargo, cada una de estas
tareas incluye una o varias de estas funciones:
Procesar datos. Es la funcin para la que nacieron los primeros computadores.
Veremos en esta asignatura que los datos del mundo real se modelan como entidades
codificadas en binario sobre las cuales se realizan una serie de operaciones bsicas.
Almacenar datos. La primera idea que se viene a la cabeza es la de un gran sistema
de bases de datos. Sin embargo hasta los computadores empotrados (p. ej. el ABS de
un coche) cuya funcin principal no es el almacenamiento de datos, necesitan un
almacenamiento temporal para guardar los resultados intermedios de sus clculos.
Transferir datos. Antes de procesar datos, el computador necesita adquirir dichos da-
tos desde el exterior. De la misma forma necesita enviar los resultados de sus clculos
al exterior. Para ello usa una serie de dispositivos perifricos conectados a su sistema
de entrada/salida. Adems, cada da tienen mayor importancia las comunicaciones.
En ellas los computadores tienen un papel fundamental como enrutadores de datos,
conversores de protocolo, etc.
Segn lo anterior cabe preguntarse si una calculadora sencilla (+, -, *, /) es un computador, pues es capaz de procesar datos. De la misma forma un radio cassette es capaz de
almacenar datos en una cinta magntica y un telfono permite realizar una comunicacin.
Todos estos sistemas tienen en comn el estar compuestos de un conjunto de subsistemas
interrelacionados que les permite realizar su funcin, junto con un sistema de control que los
gobierna. La diferencia entre la calculadora, el radio cassette y el telfono y un ordenador
es que en los tres primeros el control es fijo, mientras que en el ordenador el control es
programable, lo que le permite solucionar cualquier problema que pueda resolverse con sus
unidades funcionales.
Estructura de un computador
Seales
de control
CPU
Seales
de datos
Control
Instrucciones
Memoria
Camino
de
Datos
E/S
Datos
Datos
formado por una o varias ALU (Arithmetic-Logic Unit), registros para almacenar
datos temporales, unidades de punto flotante, etc.
La transferencia de datos se realiza en el sistema de entrada y salida (E/S). De esta
unidad de control viene dado por el programa, que se almacena tambin en la memoria.
Ciclo de ejecucin
Inicio
Captura
Instruccin
Ejecucin
Parar?
No
Si
Parada
ICAIdea
paraba el programa y avisaba al operador (con una campana en el caso del EDVAC)
para que este cargase el siguiente programa. Hoy en da dicho modo de
funcionamiento est totalmente obsoleto. Los ordenadores actuales estn
continuamente ejecutando mltiples procesos, incluso de varios usuarios
(multiproceso y multiusuario), con lo que no tiene sentido parar la CPU cuando un
programa termina; sino devolver el control al sistema operativo para que ejecute otro
proceso (esto es lo que hace la funcin exit() de C).
A pesar de esto, muchos ordenadores disponen de instrucciones especiales (llamadas
halt, idle, stop. . . ) que hacen que se pare la ejecucin y la CPU entre en un modo de
bajo consumo. La ejecucin de instrucciones se reanuda cuando se produce alguna
peticin de entrada/salida (p. ej. una llamada por modem, la pulsacin de una tecla,
etc.).
Qu ocurre cuando se produce un error (p. ej. una divisin por 0)? En estos casos
la CPU detecta esta condicin y ejecuta una funcin especfica para tratar este error.
Por ejemplo, puede terminar el programa y dar un mensaje de error al usuario. A este
proceso se le denomina tratamiento de excepciones.
Captacin
Instruccin
Operaciones
CPU
Clculo Dir.
Instruccin
Captacin
Dato
Varias
Palabras
Decodificar
Instruccin
Clculo Dir.
Dato
Almacenar
Resultado
Varias
Palabras
Operacin
Instruccin
Clculo Dir.
Resultado
Instruccin vectorial
Ciclo de
Captacin
ICAIdea
Ciclo de
Ejecucin
de la CPU.
Una vez obtenida la instruccin se puede pasar a su decodificacin para averiguar
Una vez que la CPU tiene todos los datos, puede pasar a ejecutar la operacin
el estudiado, del cual unas instrucciones utilizan todas las etapas y otras slo unas cuantas;
existen slo 4 ciclos bsicos de instruccin que adems son muy parecidos entre ellos:
Ciclo de lectura de memoria.
Ciclo de escritura de memoria.
Ciclo de operacin.
Ciclo de salto.
Esto hace que todas las instrucciones sean muy parecidas y como consecuencia el sistema
se puede paralelizar fcilmente. Por el contrario, en un computador CISC, unas instrucciones tienen un operando de memoria, otras dos, otras ninguno. . . lo cual hace que el ciclo de
ejecucin de cada instruccin sea distinto, siendo entonces ms difcil su paralelizacin.
En las siguientes transparencias se detallan los ciclos de instruccin del procesador
MIPS.
Captacin
Instruccin
Operaciones
CPU
Clculo Dir.
Instruccin
Captacin
Dato
Varias
Palabras
Decodificar
Instruccin
Clculo Dir.
Dato
Ciclo de
Ejecucin
Ciclo de
Captacin
Captacin
Instruccin
Operaciones
CPU
Clculo Dir.
Instruccin
Ciclo de
Captacin
Almacenar
Dato
Varias
Palabras
Decodificar
Instruccin
Clculo Dir.
Dato
Ciclo de
Ejecucin
Captacin
Instruccin
Operaciones
CPU
Clculo Dir.
Instruccin
Ciclo de
Captacin
Decodificar
Instruccin
Operacin
Instruccin
Ciclo de
Ejecucin
CPU
Acc
C.P.
RDIM
R. Est
ALU
Unidad
de control
Memoria
RDAM
Reg. 1
R. I.
Reg. 2
Bus Interno (Datos y direcciones)
Bus de Datos
ICAIdea
programa.
R.I. es el registro de instruccin. Almacena la instruccin que se est ejecutando en
este momento.
Reg. 1 y Reg. 2 son dos registros para almacenar temporalmente los operandos de la
ALU.
ALU es la unidad aritmtico lgica. Esta unidad es la encargada de realizar todas las
todos los elementos de la ruta de datos de la CPU. En este caso elemental el mismo
bus permite transportar tanto direcciones como datos. En CPUs ms complejas
existen varios buses internos de forma que se puede conseguir mayor grado de
paralelismo.
Bus de Direcciones. Es un bus que permite enviar a la memoria la direccin a la que
la memoria.
Memoria. Permite almacenar tanto el programa como los datos. Se organiza como un
vector de n palabras. Necesita una seal de control denominada R/W, que proviene
de la unidad de control, para indicar si el acceso es de lectura o de escritura.
Anlisis/diseo de un ordenador
El anlisis o el diseo de un ordenador es
complejo, pero abordable si:
ICAIdea
ms simples (divide y vencers). De esta manera se llega a sistemas que son fciles
de disear.
En el diseo de un ordenador, como en cualquier sistema digital de proceso de datos,
realizar las operaciones requeridas sobre los datos, as como los registros para
almacenar los resultados intermedios y los elementos de interconexin. Salvo
los registros, el resto de elementos de la ruta de datos son circuitos
combinacionales.
El flujo de datos por el camino de datos ha de estar coordinado
Referencias
Amdahl, G. M., Blaauw, G. A., y Brooks Jr., F. P. (1964). Architecture of the IBM System/360. IBM Journal Of Research And Development, 8(2). Disponible on-line en:
http://www.research.ibm.com/journal/rd/441/amdahl.pdf.
Patterson, D. A. y Hennessy, J. L. (2000). Estructura y diseo de computadores. Interficie
circuitera/programacin. Revert.
16-2