Estructura y funcionamiento de la CPU
Enviado por chemy1993 • 14 de Enero de 2015 • Tutorial • 5.605 Palabras (23 Páginas) • 691 Visitas
II ESTRUCTURA Y FUNCIONAMIENTO DE LA CPU 2
2.1 Organización del procesador 2
2.2 Estructura de registros 5
2.2.1 Registros visibles para el usuario 5
2.2.2 Registros de control y de estados 9
2.2.3 Ejemplos de organización de registros de CPU reales 12
2.3 El ciclo de instrucción 14
2.3.1 Ciclo Fetch-Decode-Execute 16
2.3.2 Segmentación de instrucciones 16
2.3.3 Conjunto de instrucciones: Características y Funciones 16
2.3.4 Modos de direccionamiento y formatos 22
2.4 Casos de estudio de CPU reales 24
II ESTRUCTURA Y FUNCIONAMIENTO DE LA CPU
2.1 Organización del procesador
Los procesadores utilizan la segmentación de instrucciones para acelerar la ejecución.
La segmentación de cauce se puede dividir en ciclo de instrucción en varias etapas separadas que operan secuencialmente, tales como;
El procesador y el bus del sistema
Estructura interna del procesador
La Unidad Central de Procesos (CPU)
Un procesador, incluye tanto registros visibles por el usuario como registros de control/estado. Los registros visibles por el usuario pueden ser de uso general o tener una utilidad especial, mientras que los registros de control y estado se usan para controlar el funcionamiento del procesador, un claro ejemplo es el contador de programa.
Captación de instrucción
Decodificación de instrucción
Cálculo de direcciones de operando
Ejecución de instrucción
Estructura del operando resultado
Captar instrucciones: el procesador lee una instrucción de memoria (registro, cache o memoria principal).
Interpretar instrucción: la instrucción se codifica para determinar qué acción es necesario.
Captar datos: la ejecución de una instrucción puede exigir leer datos de memoria o de un módulo de E/S.
Procesar datos: la ejecución de una instrucción puede exigir llevar a cabo alguna operación aritmética o lógica con los datos.
Escribir datos: los resultados de una ejecución pueden exigir escribir datos en la memoria o en el módulo de E/S.
Para hacer estas cosas, el procesador necesita almacenar instrucciones y datos temporalmente mientras una instrucción está ejecutándose, en otras palabras el procesador necesita una pequeña memoria interna.
En la anterior figura se muestra una visión simplificada de un procesador, que indica su conexión con el resto de sistema, a través del bus del sistema. La ALU lleva a cabo el verdadero cálculo o procesamiento de datos.
La unidad de control controla la transferencia de datos e instrucciones así a dentro y así afuera del procesador, y el funcionamiento de la ALU. Además la figura muestra una memoria interna mínima, que consta de un conjunto de posiciones de almacenamiento llamadas registros.
En esta figura se indican los caminos de transferencia de datos y de la lógica de control, que incluye un elemento con el rotulo bus interno del procesador. También se muestran los elementos básicos típicos de la ALU. Hay que observar la similitud entre la estructura interna del computador en su totalidad y la estructura interna del procesador. En ambos casos hay una pequeña colección de elementos principales (computador: procesador, E/S, memoria; procesador: unidad de control, ALU, registros) conectados por caminos de datos.
Se encarga de calcular y distribuir las tareas que se deben ejecutar. Entre sus funciones está la de hacer solicitudes a la memoria para obtener todos los datos necesarios para realizar su computación; también está la de hacer gestiones a la interfaz de entrada y salida para permitir la lectura de los caracteres del teclado, los clicks del ratón, mostrar las ventanas en el monitor, etc.
2.2 Estructura de registros
2.2.1 Registros visibles para el usuario
Un computador emplea una jerarquía de memoria. En los niveles más altos de la jerarquía, la memoria es más rápida, más pequeña y más cara (por bit). Dentro del procesador hay un conjunto de registros que funciona como un nivel de memoria por encima de la memoria principal y de la caché en la jerarquía.
Los registros del procesador son de dos tipos:
Registros visibles por el usuario: permiten al programador de lenguaje máquina o de ensamblador minimizar las referencias a memoria principal por medio de la optimización del uso de registros.
Registros de control y de estado: son utilizados por la unidad de control para controlar el funcionamiento del procesador y por programas privilegiados del sistema operativo para controlar la ejecución de programas.
No hay una separación bien definida de registros dentro de estas dos categorías. Por ejemplo, en algunas máquinas el contador de programa es visible por el usuario (por ejemplo, en el Pentium), pero en muchas no lo es. Para el objetivo de la siguiente discusión, no obstante, usaremos estas categorías.
Registros visibles por el usuario
Un registro visible por el usuario es aquél que puede ser referenciado por medio del lenguaje máquina que ejecuta el procesador. Podemos clasificarlos en las siguientes categorías:
Uso general
Datos
Direcciones
Códigos de condición
Los registros de uso general pueden ser asignados por el programador a diversas funciones. A veces, su uso dentro del repertorio de instrucciones es ortogonal a la operación. Es decir, cualquier registro de uso general puede contener el operando para cualquier código de operación. Esto proporciona una utilización de registros de uso general auténtico. Con frecuencia, sin embargo, existen restricciones.
Por ejemplo, puede haber registros específicos para operaciones en coma flotante y para operaciones con la pila.
En algunos casos los registros de uso general pueden utilizarse para funciones de direccionamiento (por ejemplo, en direccionamientos indirectos por medio de registro o con desplazamiento).
En otros casos hay una separación parcial o total entre registros de datos y registros de direcciones.
Los registros de datos pueden usarse únicamente para contener datos y no se pueden emplear en el cálculo de la dirección de un operando. Los registros de dirección pueden ser de uso más O menos general, o pueden estar dedicados a un modo de direccionamiento particular. Entre otros, se pueden citar los siguientes ejemplos:
• Punteros de segmento: en una máquina
...