Arquitectura De Computadoras
andrixed23 de Septiembre de 2014
3.120 Palabras (13 Páginas)153 Visitas
DIRECCIÓN GENERAL DE EDUCACIÓN SUPERIOR TECNOLÓGICA
INSTITUTO TECNOLÓGICO DE CD. VALLES
MATERIA:
ARQUITECTURA DE COMPUTADORAS
TRABAJO:
“UNIADAD 2. ESTRUCTURA Y FUNCIONAMIENTO DE LA CPU”
ALUMNO:
GUZMÁN ANDRÉS EUSEBIO
DOCENTE:
ING. ROSA MARIA JIMENEZ MALDONADO
CD. VALLES, S.L.P. 24 DE SEPTIEMBRE DE 2014
2.1 ORGANIZACIÓN DEL PROCESADOR
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.
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 la captación de instrucción, decodificación de instrucción, cálculo de direcciones de operando, ejecución de instrucción y estructura del operando resultado.
A continuación se muestra cómo se organiza un procesador, para esto se tiene que considerar los siguientes requisitos:
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 e 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.
Figura 12.1 El procesador y el bus del sistema
En esta 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.
Figura 12.2 Estructura interna del procesador
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.
2.2 ESTRUCTURA DE REGISTROS
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 de la CPU 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 de la CPU son de dos tipos:
Registros visibles para el usuario: Permiten al programador de lenguaje máquina o ensamblador, minimizar las referencias a memoria principal cuando optimiza el uso de registros.
Registros de control y de estado: Son utilizados por la unidad de control para controlar el funcionamiento de la CPU, 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 para el usuario (por ejemplo, en el VAX), pero en muchas no lo es.
2.2.1 Registros visibles para el usuario
Un registro visible para el usuario es uno que puede ser referenciado por medio del lenguaje máquina que ejecuta la CPU. 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 depende de 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 auténtico uso general. Con frecuencia, sin embargo, existen restricciones. Por ejemplo, puede haber registros específicos para operaciones en coma flotante y operaciones de pila. En algunos casos, los registros de uso general pueden ser utilizados para funciones de direccionamiento (este tema será visto más adelante en esta asignatura). 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 una dirección de operando. Los registros de dirección pueden ser de uso más o menos generales, 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 con direccionamiento segmentado un registro de segmento contiene la dirección de la base del segmento. Puede haber múltiples registros: por ejemplo, uno para el sistema operativo y otro para el proceso actual.
Registros índices: Se usan para direccionamiento indexado, y pueden ser auto indexado.
Puntero de pila: Si existe direccionamiento a pila visible al usuario, la pila está normalmente en memoria, y hay un registro dedicado que apunta a la cabecera de ésta. Esto permite un direccionamiento implícito; es decir, apilar (“push”), desapilar (“pop”), y otras instrucciones dela pila que no necesitan contener un operando explícito referente a ella
2.2.2 Registros de control y de estados
Hay diversos registros de la CPU que se emplean para controlar su funcionamiento. La mayoría de ellos, en la mayor parte de las máquinas, no son visibles para el usuario. Algunos de ellos pueden ser visibles a instrucciones máquina ejecutada en un modo de control o de sistema operativo. Naturalmente, máquinas diferentes tendrán diferentes organizaciones de registros y usarán distinta terminología. Se incluye aquí una lista razonablemente completa de tipos de registros, con una breve descripción. Son esencial cuatro registros para la ejecución de una instrucción:
Contador de programa (Program Counter, PC): contiene la dirección de la siguiente instrucción a captar.
Registro de instrucciones (Instruction Register, IR): contiene la instrucción captada más recientemente.
Registro de direcciones de memoria (Memory Address Register, MAR): Está conectado a las líneas de dirección del bus del sistema. Especifica la dirección de memoria de una operación de lectura o de escritura.
Registro intermedio de memoria o Registro de Datos o Registro de Palabra (MemoryBuffer Register, MBR): Está conectado a las líneas de datos del bus del sistema. Contiene el valor a almacenar en memoria o el último valor leído de memoria
Normalmente, la CPU actualiza el contador de programa después de cada captación de instrucción, de manera que siempre apunta a la siguiente instrucción a ejecutar. Una instrucción de bifurcación o salto también modificará el contenido del PC. La instrucción captada se carga en IR, donde son analizados el código de operación y los campos de operando. Se intercambian datos con la memoria por medio deMAR y de MBR. En un sistema con organización de bus, MAR se conecta directamente al bus de direcciones y MBR directamente al bus de datos. Los registros visibles por el usuario intercambian repetidamente datos con MBR. Los cuatro registros que se acaban de mencionar se usan para la transferencia de datos entre la CPU y la memoria. Dentro de la CPU, los datos tienen que ofrecerse a la ALU para su procesamiento. La ALU puede tener acceso directo a MBR y a los registros visibles para el usuario. Como alternativa, puede haber registros intermedios adicionales en torno a la ALU; estos registros sirven como registros de entrada y salida de la ALU, e intercambian datos con MBR y los registros visibles para el usuario. Todos los diseños de CPU incluyen un registro o un conjunto de registros, conocidos a menudo como palabra de estado del programa (program status word, PSW), que contiene información de estado. PSW contiene normalmente códigos de condición, además de otra información de estado. Entre los campos o indicadores comunes se incluyen los siguientes:
Signo: Contiene el bit de signo del resultado de la última operación aritmética.
Cero: Puesto a uno cuando el resultado es
...