Академический Документы
Профессиональный Документы
Культура Документы
procesador
1.
2.
3.
4.
Lenguaje ensamblador
Estructura y funcionamiento del CPU
RISC vs CISC
Procesadores super escalares
UNIDADES
Arquitectura de Computadores
3. Captar datos.
La ejecucin de una instruccin puede exigir leer datos de la memoria o de
un mdulo de E/S.
4. Procesar datos.
La ejecucin de una instruccin puede exigir llevar a cabo alguna operacin
aritmtica o lgica con los datos.
5. Escribir datos.
Los resultados de una ejecucin pueden exigir escribir datos en la memoria
o en mdulo de E/S.
Arquitectura de Computadores
de
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Registro visible puede ser referenciado por medio del lenguaje de mquina.
Clasificacin en las siguientes categoras:
Uso general.
Datos.
Direcciones.
Cdigos de condicin.
Arquitectura de Computadores
Tipos de registros:
1. Contador de programa (PC): Contiene la direccin de la instruccin a captar.
2. Registro de instruccin (IR): Contiene la instruccin captada ms
recientemente.
3. Registro de direccin de memoria (MAR): Contiene la direccin de una
posicin de memoria.
4. Registro de intermedio de memoria (MBR): Contiene la palabra de datos a
escribir en memoria o la palabra leda ms recientemente.
Arquitectura de Computadores
Ciclo de instruccin
El ciclo de instruccin posee los siguientes subciclos:
1. Captacin
Llevar la siguiente instruccin de la memoria al procesador.
2. Ejecucin
Interpretar el cdigo de operacin y realizar la operacin indicada.
3. Interrupcin
En caso de que las interrupciones se encuentren habilitadas y se ha
producido una interrupcin, se deber guardar el proceso actual y atender a
la interrupcin.
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Segmentacin de instrucciones
Arquitectura de Computadores
Segmentacin de instrucciones
Arquitectura de Computadores
Segmentacin de instrucciones
Solapamiento de la captacin.
La primera etapa capta la instruccin y la almacena en un buffer.
La segunda etapa se encuentra libre, la primera le pasa la instruccin almacenada.
La segunda etapa ejecuta la instruccin.
La primera etapa usa algn ciclo de memoria libre para captar y almacenar la
siguiente instruccin.
Arquitectura de Computadores
Segmentacin de instrucciones
Razones por las que la duplicacin de la velocidad de ejecucin es poco probable:
1. Tiempo de ejecucin suele ser ms largo que el tiempo de captacin, ya que
implica la lectura y almacenamiento de operandos y la realizacin de alguna
operacin.
2. En una instruccin de salto condicional la direccin de la siguiente instruccin a
captar es desconocida, por lo que en la etapa de captacin se debe esperar
hasta que reciba la direccin de la siguiente instruccin.
A pesar de que estos factores reducen la efectividad potencial del cauce de dos
etapas, se produce cierta aceleracin.
Para conseguir mayor aceleracin, el cauce debe tener ms etapas.
Arquitectura de Computadores
Segmentacin de instrucciones
Descomposicin del procesamiento de una instruccin:
1. Captar instruccin (FI): Lectura de la siguiente instruccin del buffer.
2. Decodificar instruccin (DI): Determinar el cdigo de operacin y los campos
de operando.
3. Calcular operandos (CO): Calcula la direccin efectiva de cada operando
fuente.
4. Captar operandos (FO): Capta cada operando que resida en memoria. Los
operandos en registros no tienen que ser captados.
5. Ejecutar instruccin (EI): Realiza la operacin indicada y almacena el resultado
en la posicin de operando destino especificada.
6. Escribir operando (WO): Almacena el resultado en memoria.
Arquitectura de Computadores
Segmentacin de instrucciones
Un cauce de seis etapas puede reducir el tiempo de ejecucin de 9 instrucciones
de 54 a 14 unidades de tiempo.
Arquitectura de Computadores
Segmentacin de instrucciones
Un salto es una interrupcin del flujo normal de las instrucciones, haciendo que el
procesador contine en otro punto del programa ("salta" a otra parte del
programa). Un salto condicional es una instruccin (ms bien una familia de
instrucciones) que realiza el salto si se cumple una condicin determinada con
anterioridad. El problema es que el procesador no sabe si se realizar el salto o no
hasta que se evala la condicin y si esto ocurre en la mitad del pipeline, es posible
que tenga que borrar el pipeline y comenzar de nuevo en el nuevo punto de
ejecucin, perdiendo tiempo y trabajo.
Arquitectura de Computadores
Segmentacin de instrucciones
Arquitectura de Computadores
Segmentacin de instrucciones
Arquitectura de Computadores
Segmentacin de instrucciones
Factores que frustran el patrn de diseo de altas prestaciones:
1. En cada etapa del cauce, existe algn gasto extra por la transferencia de datos
de buffer a buffer y a la realizacin de varias funciones de preparacin y
distribucin.
Esto es importante cuando las instrucciones secuenciales son lgicamente
dependientes por un uso abundante de bifurcaciones o por dependencia de
acceso a memoria.
Arquitectura de Computadores
Flujos mltiples.
Precaptar el destino del salto.
Buffer de bucles.
Prediccin de saltos.
Salto retardado.
Arquitectura de Computadores
1. Flujos mltiples.
Debe escoger una de las dos instrucciones a captar a continuacin y puede hacer
una eleccin equivocada.
La solucin es duplicar las partes iniciales del cauce y dejar que este capte las dos
instrucciones usando los dos caminos.
Problemas:
Con cauces mltiples hay retardos debido a la competencia por el acceso a los
registros y a la memoria.
Pueden entrar en el cauce instrucciones de salto adicionales antes de que se
resuelva la decisin del salto original. Cada una de estas instrucciones exige un
flujo adicional.
Arquitectura de Computadores
1. Prediccin de saltos
Tcnicas para predecir saltos:
Arquitectura de Computadores
1. Prediccin de saltos
Tcnicas para predecir saltos:
Arquitectura de Computadores
Arquitectura de Computadores
Los operandos de origen y destino pueden estar en alguna de las siguientes reas:
1. Memoria principal o virtual: Para las referencias a instrucciones siguientes, se
debe indicar la direccin de memoria principal o memoria virtual.
2. Registro del procesador: El procesador contiene uno o ms registros que
pueden ser referenciados por instrucciones mquina. Si existen varios registros
tendr cada uno asignado un nmero nico y la instruccin tendr el nmero
del registro deseado.
3. Dispositivo de E/S: La instruccin debe especificar el mdulo y dispositivo de
E/S para la operacin.
Arquitectura de Computadores
Cada instruccin se representa por una secuencia de bits, que est dividida en
campos correspondientes a los elementos constitutivos de la misma.
El procesador debe ser capaz de extraer los datos de los distintos campos de la
instruccin para realizar la operacin requerida.
Arquitectura de Computadores
Sumar
Restar
Multiplicar
Dividir
Cargar datos de memoria
Almacenar datos en memoria
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Direcciones.
Nmeros
Caracteres
Datos lgicos.
Direcciones.
Las direcciones son un tipo de dato.
En muchos casos se debe realizar algn clculo sobre la referencia a un operando
de una instruccin a fin de determinar la direccin de memoria principal o virtual.
Arquitectura de Computadores
Nmeros
Los nmeros usados en el computador se encuentran limitados:
1. Hay un lmite para la magnitud de los nmeros representables en una mquina.
2. En el caso de nmeros en coma flotante, su precisin est limitada.
Tipos de datos numricos usuales:
Arquitectura de Computadores
Caracteres
Texto o secuencia de caracteres.
Informacin no puede ser almacenada o transmitida fcilmente en forma de
caracteres por los sistemas de comunicacin y de procesamiento de datos, ya que
se encuentran diseados para datos binarios.
Arquitectura de Computadores
Datos Lgicos
Una unidad de n bits como n elementos o datos de un bit, donde cada elemento
tiene un valor 1 o 0.
Ventajas:
A veces suele interesar almacenar una matriz de elementos binarios o
booleanos, en la que cada elemento pueda tomar solo los valores 1 (verdadero)
o 0(falso).
Se necesite manipular bits individuales de un dato.
Los mismos datos suelen ser tratados como datos lgicos y otras como numricos o
como texto. El tipo de una unidad de datos viene determinado por la operacin
que se est realizando con ella.
Arquitectura de Computadores
Transferencia de datos.
Aritmticas.
Lgicas.
De conversin.
De E/S.
De control del sistema.
De control de flujo.
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Inmediato
Operando = A
El operando est presente en la propia instruccin.
Este modo es usado para definir y usar constantes o para fijar valores iniciales de
variables.
Ventaja:
Una vez captada la instruccin, no se requiere una referencia a memoria para
obtener el operando, ahorrndose un ciclo de memoria o de cach en el ciclo
de instruccin.
Desventaja:
El tamao del nmero est restringido a la longitud del campo de direcciones
que suele ser pequeo comparado con la longitud de la palabra.
Arquitectura de Computadores
Directo
EA = A
El campo de direcciones contiene la direccin efectiva del operando.
Slo necesita una referencia a memoria y no necesita ningn clculo especial.
La limitacin es que proporciona un espacio de direcciones restringido.
Indirecto
EA = (A)
Problema: l
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
PERO
El microprograma crece.
Incrementa el nmero de instrucciones.
Crecimiento por compatibilidad de familias.
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Arquitectura de Computadores
Procesadores superescalares
Arquitectura de Computadores
Procesadores superescalares
Arquitectura de Computadores
Arquitectura de Computadores
Procesadores multinucleo
Arquitectura de Computadores
TAREA
Realizar un cuadro sinptico sobre el ciclo de instruccin.
Definicin
Secuencia de eventos que se presentan durante el ciclo de instruccin.
Arquitectura de Computadores
PREGUNTAS DE REPASO
1.
2.
3.
4.
Arquitectura de Computadores