Tema 6 - Horarios de los centros asociados de la uned

Anuncio
DISEÑO DEL
PROCESADOR
1
La CPU se puede descomponer en los dos
bloques siguientes:
◦ Unidad de control del procesador
◦ Unidad de procesamiento
2
Dirige la ejecución del programa.
Su diseño similar a lo visto para el multiplicador binario. Diferencia es que ahora hay muchas
más líneas de control y las operaciones realizadas son más complicadas.
Tiene en cuenta el estado presente para controlar su evolución y tomar decisiones con
respecto a las nuevas operaciones que serán iniciadas.
Se puede descomponer en tres bloques:
◦
◦
◦
Registro de memorización de estado presente.
Bloque de cálculo del próximo estado.
Bloque de cálculo de las salidas.
Realizaciones posibles:
◦
◦
Lógica cableada
técnicas clásicas de diseño de circuitos secuenciales. Circuitos rápidos,
complejos y costosos. Desventaja que cualquier modificación implica un nuevo diseño partiendo de
cero.
Realización microprogramada
Bloque de cálculo de las señales de salida y parte del bloque de
cálculo del próximo estado se sustituyen por una memoria que almacena el estado de las señales
de control en cada periodo de cada instrucción.
El registro de estado presente se convierte en un registro de dirección para esa memoria.
3
Realiza todas las operaciones necesarias para
ejecutar una instrucción.
Puede ser descrita mediante una lista de todas sus
microoperaciones.
Las microoperaciones se pueden clasificar en dos
grupos:
De transferencia
transfiere información de un
almacenamiento fuente a un almacenamiento de destino.
De proceso
Opera con unos operandos y el resultado
lo deja en el almacenamiento de destino indicado.
4
Cada instrucción lleva a cabo una parte elemental del procesamiento.
Instrucciones se interpretan en la unidad de control y se ejecutan en la unidad de
procesamiento.
Cada CPU tiene su propio formato de instrucciones.
se puede ver como una cadena de bits que se agrupan en campos
Instrucción
con tamaños diferentes:
◦
◦
◦
Longitud de los distintos campos no es igual para todas las instrucciones.
No todos los campos tienen que estar presentes en todas las instrucciones.
Las distintas instrucciones podrán por tanto tener distintas longitudes.
Campo código operación
Campo de dirección
5
Pueden tener dos campos más:
Tipo de instrucción
De transferencia de datos.
Aritméticas, lógicas y de comparación.
De desplazamiento.
De transferencia de control.
De gobierno.
Modo
indica la forma de obtener la dirección efectiva de
los datos.
Uno de los elementos esenciales es el número de
campos de dirección que posee la instrucción.
Objetivo importante
conseguir que el número de
accesos a memoria que necesitan los programas sea
mínimo.
6
Incluye tres direcciones de memoria. Requiere
un número elevado de bits para codificarla.
7
Resultado se posiciona en el lugar que
ocupaba uno de los operandos.
8
Procesador dedica un registro específico a la
función de servir como operando destino
9
Los datos se guardan en la pila.
Las microoperaciones se realizan con los datos colocados en la cima de la pila o en el nivel
inmediatamente inferior (si es una operación que necesita dos operandos).
El resultado se guarda en la cima de la pila.
En este caso las instrucciones solo necesitarán un acceso a memoria.
10
Extensión del concepto de procesador con acumulador.
En vez de un único registro acumulador, un banco de
registros para almacenar resultados.
En las instrucciones será necesario un campo adicional
para referenciar los registros.
Ventajas:
Registros más rápidos que memoria.
Se reduce las necesidades de espacio en memoria de los
programas.
Se reduce el número de accesos a memoria.
11
Repertorio de instrucciones mucho menor.
Programas más largos y en principio más lentos
de ejecución, pero se simplifica el diseño del
procesador.
Arquitectura carga/almacenamiento
accesos a
memoria para cargar o escribir datos.
Instrucciones regulares
longitud.
todas tienen la misma
12
13
14
15
16
17
18
19
Interpretación de los campos de dirección de la
instrucción viene determinado por el modo de
direccionamiento
Obtendremos así la
dirección efectiva.
Una instrucción puede tener más de un campo
de dirección, y cada dirección podrá tener su
propio modo de direccionamiento.
Ventajas de los modos de direccionamiento:
Reducción del tamaño de palabra de la instrucción.
Aumento de la flexibilidad en la programación.
20
El propio código de operación especifica de
forma implícita la posición del operando o del
resultado. (característico de procesadores con
pila).
21
El campo de dirección contiene el propio
operando en lugar de una dirección.
22
El campo de dirección contiene la dirección
de una posición de memoria o la dirección de
un registro.
23
El campo de dirección se denomina
desplazamiento y se suma al contenido de un
registro que se especifica en la instrucción.
Ventaja de que da un campo de dirección más
pequeño.
24
El campo de dirección especifica una dirección de memoria o
registro que contiene la dirección en la que realmente está el
operando buscado.
Ventaja en este caso que el direccionamiento no está limitado
por el tamaño del campo de dirección.
Desventaja que son necesarios dos accesos para acceder al
operando.
25
Para acceder a datos que están almacenados en arrays o tablas.
Campo de dirección especifica la dirección de comienzo y se le
suma al valor de un registro índice para obtener la dirección
efectiva.
El índice se puede incrementar o decrementar para acceder al
siguiente elemento.
26
27
28
29
Descargar