Você está na página 1de 12

UNIDAD 2.

ESTRUCTURA
Y FUNCIONAMIENTO DE
LA CPU
INSTITUTO TECNOLOGICO DE TAPACHULA
INGENIERIA EN SISTEMAS COMPUTACIONALES
5 SEMESTRE
ARQUITECTURA DE COMPUTADORAS
CATEDRATICO: ING. ROSEL MUOZ LOPEZ
ENSAYO UNIDAD 2
REALIZADO POR: RUIZ BALCAZAR JESUS HUMBERTO

Conceptos Bsicos
Estructura. La estructura es la distribucin de las partes de un cuerpo, aunque
tambin puede usarse en sentido abstracto. El concepto hace mencin a la
disposicin y el orden de las partes dentro de un todo.
Funcionamiento. En trminos generales, la palabra funcionamiento refiere a la
ejecucin de la funcin propia que despliega una persona o en su defecto una
mquina, en orden a la concrecin de una tarea, actividad o trabajo, de manera
satisfactoria.
CPU. Esta denominacin es una abreviacin que refiere a unaUnidad Central de
Procesamiento. Es un componente bsico de la computadora personal u
ordenador que procesa datos y realiza clculos matemticos-informticos.
Proporciona la capacidad de programacin, y junto con la memoria y los
dispositivos de entrada/salida es de los componentes computacionales que
encontramos presente en toda la historia de las computadoras.

Organizacin 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 segmentacin
de instrucciones para acelerar la
ejecucin. La segmentacin de cauce se
puede dividir en ciclo de instruccin en
varias etapas separadas que operan
secuencialmente,
tales
como
la
captacin de instruccin, decodificacin
de instruccin, clculo de direcciones de
operando, ejecucin de instruccin y
estructura del operando resultado.
La CPU controla las operaciones bsicas del ordenador enviando y recibiendo
seales de control, direcciones de memoria y datos de un lugar a otro de la
computadora a travs de un grupo de canales llamados BUS.
La Unidad Central de Proceso est constituida internamente por:

La Unidad de Control
Unidad Aritmtico-Lgica

Unidad Aritmtico-Lgica (ALU)


Recibe los datos sobre los que efecta operaciones de clculo y comparaciones.
Toma decisiones lgicas (determina si una afirmacin es correcta o falsa mediante
reglas del algebra de Boole) y devuelve luego el resultado. Todo ello bajo
supervisin de la unidad de control.

La Unidad de Control
La unidad de control le indica al resto del sistema como llevar a cabo las
instrucciones de un programa. Comanda las seales electrnicas entre la memoria
y la unidad aritmtico-lgica, y entre el CPU y los dispositivos de entrada y salida.
Para ejecutar cualquier programa, cada comando del mismo se desglosa en
instrucciones.
Los procesadores utilizan la segmentacin de instrucciones para acelerar la
ejecucin. La segmentacin de cauce se puede dividir en ciclo de instruccin en
varias etapas separadas que operan secuencialmente, tales como la captacin de

instruccin, decodificacin de instruccin, clculo de direcciones de operando,


ejecucin de instruccin y estructura del operando resultado.
A continuacin, se muestra cmo se organiza un procesador, para esto se tiene
que considerar los siguientes requisitos:
Captar instrucciones: el procesador lee una instruccin de memoria
(registro, cache o memoria principal).
Interpretar instruccin: la instruccin se codifica para determinar qu accin
es necesario.
Captar datos: la ejecucin de una instruccin puede exigir leer datos de
memoria o de un mdulo de E/S.
Procesar datos: la ejecucin de una instruccin puede exigir llevar a cabo
alguna operacin aritmtica o lgica con los datos.
Escribir datos: los resultados de una ejecucin pueden exigir escribir datos
en la memoria o en el mdulo de E/S.
Para hacer estas cosas, el procesador necesita almacenar instrucciones y datos
temporalmente mientras una instruccin est ejecutndose, en otras palabras, el
procesador necesita una pequea memoria interna, tambin llamados registros.

Estructura de registros
El Registro est organizado en una estructura jerrquica compuesta por
subrboles con sus respectivas claves, subclaves y entradas.
El contenido del Registro puede variar considerablemente de un equipo a otro, en
funcin de los dispositivos, servicios y programas instalados en cada equipo.
Las claves pueden contener subclaves que, a su vez, pueden contener otras
subclaves. Aunque la mayor parte de la informacin del Registro se almacena en
disco y se considera permanente, algunos datos almacenados en claves voltiles
se sobrescriben cada vez que se inicia el sistema operativo.

Registros visibles para el usuario


Minimizan el acceso entre el microprocesador y CPU, debido a que se encuentran
dentro del CPU, son manipulables por lenguaje de mquina. Aqu tenemos los 2
principales:
1) Registros de Datos. (Manipulables a bajo nivel).
2) Registro de Direcciones (Manipulables a bajo nivel).
Registro de ndice.
Sirve para direccionamiento, es similar al PC, pero tiene un valor base de
autoincremento: Ejemplo: Base 3 3, 6, 9n, n+1; que se ir sumando para
obtener una direccin ms efectiva.

Registros de control y de estados


Hay diversos registros del procesador que se emplean para controlar su
funcionamiento. La mayora de ellos, en la mayor parte de las mquinas, no son
visibles por el usuario. Algunos de ellos pueden ser visibles por ciertas
instrucciones mquina ejecutadas en un modo de controlo de sistema operativo.
Naturalmente, mquinas diferentes tendrn distintas organizaciones de registros y
usarn distinta terminologa. A continuacin, se presenta una lista razonablemente
completa de tipos de registros, con una breve descripcin.
Son esenciales cuatro registros para la ejecucin de una instruccin:
Contador de programa (Program Counter, PC): contiene la direccin de la
instruccin a captar.
Registro de instruccin (lnstruction Register, IR): contiene la instruccin
captada ms recientemente.
Registro de direccin de memoria (Memory Address Register, MAR):
contiene la direccin de una posicin de memoria.
Registro intermedio de memoria (Memory Buffer Register, MBR): contiene
la palabra de datos a escribir en memoria o la palabra leda ms
recientemente.
No todos los procesadores tienen registros internos designados como MAR y
MBR, pero es necesario algn mecanismo de almacenamiento intermedio
equivalente mediante el cual se d salida a los bits que van a ser transferidos al
bus del sistema y se almacenen temporalmente los bits ledos del bus de datos.
Tpicamente, el procesador actualiza PC despus de cada captacin de
instruccin de manera que siempre apunta a la siguiente instruccin a ejecutar.
Una instruccin de bifurcacin o salto tambin modificar el contenido de PC. La
instruccin captada se carga en IR, donde son analizados el cdigo de operacin y
los campos de operando. Se intercambian datos con la memoria por medio de
MAR y de MBR. En un sistema con organizacin de bus, MAR se conecta
directamente al bus de direcciones, y MBR directamente al bus de datos. Los
registros visibles por el usuario repetidamente intercambian datos con MBR.
Los cuatro registros que se acaban de mencionar se usan para la transferencia de
datos entre el procesador y la memoria. Dentro del procesador, los datos tienen
que ofrecerse a la ALU para su procesamiento.
La ALU puede tener acceso directo a MBR y a los registros visibles por el usuario.
Como alternativa, puede haber registros intermedios adicionales en tomo a la ALU;
estos registros sirven como registros de entrada y salida de la ALU e intercambian
datos con MBR y los registros visibles por el usuario.

Ejemplos de organizacin de registros de CPU reales


En algn diseo concreto de procesador es posible encontrar otros registros
relativos a estado y control. Puede existir un puntero a un bloque de memoria que
contenga informacin de estado adicional (por ejemplo, bloques de control de
procesos). En las mquinas que usan interrupciones puede existir un registro de
vector de interrupcin. Si se utiliza una pila para llevar a cabo ciertas funciones
(por ejemplo, llamada a subrutina), se necesita un puntero de pila del sistema. En
un sistema de memoria virtual se usa un puntero a la tabla de pginas.
Por ltimo, pueden emplearse registros para el control de operaciones de E/S. En
el diseo de la organizacin de los registros de control y estado entran en juego
varios factores. Una cuestin primordial es el soporte del sistema operativo.
Algunos tipos de informacin de control son de utilidad especfica para el sistema
operativo. Si el diseador del procesador posee una comprensin funcional del
sistema operativo que se va a utilizar, la organizacin de los registros puede
adaptarse hasta cierto punto a ese sistema operativo. Otra decisin importante en
el diseo es la distribucin de informacin de control entre registros y memoria. Es
frecuente dedicar los primeros (ms bajos) pocos cientos o miles de palabras de
memoria para fines de control. El diseador debe decidir cunta informacin de
control debiera estar en registros y cunta en memoria. Se presenta el
compromiso habitual entre coste y velocidad.

El ciclo de instruccin
Un ciclo de instruccin (tambin llamado ciclo de fetch-and-execute o ciclo de
fetch-decode-execute en ingls) es el periodo de tiempo que tarda la unidad
central de proceso (CPU) en ejecutar una instruccin de lenguaje mquina.
Comprende una secuencia de acciones determinada que debe llevar a cabo la
CPU para ejecutar cada instruccin en un programa. Cada instruccin del juego de
instrucciones de una CPU puede requerir diferente nmero de ciclos de instruccin
para su ejecucin. Un ciclo de instruccin est formado por uno o ms ciclos
mquina.
Para que cualquier sistema de proceso de datos basado en microprocesador (por
ejemplo, una computadora) o microcontrolador (por ejemplo, un reproductor de
MP3) realice una tarea(programa) primero debe buscar cada instruccin en la
memoria principal y luego ejecutarla.
Definicin. Conjunto de acciones que se llevan a cabo en la realizacin de una
instruccin. Se compone de las dos siguientes fases:
Fase de bsqueda.
En esta fase se transfiere la instruccin que
corresponde ejecutar desde la memoria central a la unidad de control.
Fase de ejecucin. Consiste en la realizacin de todas las acciones que
conlleva la propia instruccin.

TIPOS DE INSTRUCCIONES
Las instrucciones de acuerdo a su funcin se clasifican en:
Instrucciones de clculo (aritmtico y lgico).
Instrucciones de transferencia de datos.
Instrucciones de ruptura de secuencial.
De acuerdo a su formato y nmero de operandos se clasifican en:
Instrucciones de tres operandos.
Instrucciones de dos operandos.
Instrucciones de un operando.
Instrucciones sin operandos.
INSTRUCCIONES DE TRES OPERANDOS.
Tambin denominadas instrucciones de tres direcciones. Constan en primer lugar
del cdigode operacin al que siguen tres operandos, de los cuales, los dos
primeros son las direcciones delos argumentos que hay que operar y el tercero es
la direccin donde se depositar el resultado.
INSTRUCCIONES DE DOS OPERANDOS.
Contiene el cdigo de operacin y dos operandos, de los cuales uno de ellos
acta, adems, como receptor del resultado de la operacin
INSTRUCCIONES DE UN OPERANDO.
Se utiliza en computadoras cuya arquitectura funciona con filosofa de acumulador.
El acumulador contiene previamente el primer argumento de la operacin, el
segundo es el contenido en la propia instruccin, y despus de ser operado
ambos, el resultado queda depositado de nuevo en el acumulador.
MTODOS DE DIRECCIONAMIENTO.
El mtodo de direccionamiento de una instruccin es el modo que se utiliza en la
misma para indicar la posicin de memoria en que est situado el dato o datos que
constituyen los operandos que intervienen en la instruccin.
Los principales mtodos son:

Direccionamiento inmediato.
Direccionamiento directo.
Direccionamiento indirecto.

Direccionamiento relativo.
Direccionamiento inmediato.

En este mtodo el dato que hay que utilizar forma parte de la propia instruccin,
no siendo necesario ningn acceso a memoria para la realizacin de la misma.
Direccionamiento directo.
En este caso la instruccin contiene la direccin de la memoria donde se
encuentra almacenado el dato. Esto hace necesario un acceso a la memoria para
trasladar el dato hasta la unidad aritmtico-lgica.
Direccionamiento indirecto.
Aqu la direccin contenida en la instruccin no es la del dato implicado sino la de
una posicin de memoria que contiene la direccin de ese dato. Esta posicin se
denomina direccin intermedia e implica en las instrucciones que utilizan este
mtodo de direccionamiento la necesidad de un ciclo de memoria ms para
acceder al dato.
Direccionamiento relativo.
En l, la direccin de memoria donde se encuentra el dato, se consigue sumando
la direccin contenida en la propia instruccin con una magnitud fija contenidaen
un registro especial. De esta manera se posibilita el acceso a un conjunto de
posiciones

Segmentacin de instrucciones
La segmentacin de instrucciones es similar al uso de una cadena de montaje en
una fbrica de manufacturacin. En las cadenas de montaje, el producto pasa a
travs de varias etapas de produccin antes de tener el producto terminado. Cada
etapa o segmento de la cadena est especializada en un rea especfica de la
lnea de produccin y lleva a cabo siempre la misma actividad. Esta tecnologa es
aplicada en el diseo de procesadores eficientes. A estos procesadores se les
conoce como pipeline processors.
Un pipeline processor est compuesto por una lista de segmentos lineales y
secuenciales en donde cada segmento lleva a cabo una tarea o un grupo de
tareas computacionales. Puede ser representado grficamente en dos
dimensiones, en donde en el eje vertical encontramos los segmentos que
componen el pipeline y en el segmento horizontal representamos el tiempo.
Conjunto de instrucciones: Caractersticas y funciones
La segmentacin de instrucciones es similar al uso de una cadena de montaje en
una fbrica de manufacturacin. En las cadenas de montaje, el producto pasa a
travs de varias etapas de produccin antes de tener el producto terminado. Cada
etapa o segmento de la cadena est especializada en un rea especfica de la
lnea de produccin y lleva a cabo siempre la misma actividad. Esta tecnologa es
aplicada en el diseo de procesadores eficientes.

A estos procesadores se les conoce como pipeline processors. Estos estn


compuestos por una lista de segmentos lineales y secuenciales en donde cada
segmento lleva a cabo una tarea o un grupo de tareas computacionales. Los datos
que provienen del exterior se introducen en el sistema para ser procesados. La
computadora realiza operaciones con los datos que tiene almacenados en
memoria, produce nuevos datos o informacin para uso externo. Las arquitecturas
y los conjuntos de instrucciones se pueden clasificar considerando los siguientes
aspectos:
- Almacenamiento de operandos en la CPU: dnde se ubican los operandos
aparte de la memoria.
- Nmero de operandos explcitos por instruccin: cuntos operandos se
expresan en forma explcita en una instruccin tpica. Normalmente son 0,
1, 2 y 3.
- Posicin del operando: Puede cualquier operando estar en memoria?, o
deben estar algunos o todos en los registros internos de la CPU. Cmo se
especifica la direccin de memoria (modos de direccionamiento
disponibles).
Operaciones: Qu operaciones estn disponibles en el conjunto de instrucciones y
tipo y tamao de operandos y cmo se especifican.

Conjunto de instrucciones. Caractersticas y Funciones


Caractersticas
Los conjuntos de instrucciones de las mquinas deben tender a poseer una serie
de propiedades, bastante ideales e imprecisas, que pueden resumirse en las
siguientes:

El conjunto de instrucciones de un computador debe ser completo en el


sentido de que se pueda construir un programa para evaluar una funcin
computable usando una cantidad de memoria razonable y empleando un
tiempo moderado, es decir, el nmero de instrucciones de ese programa no
debe ser demasiado elevado.
Los juegos de instrucciones tambin tienen que ser eficientes, esto significa
que las funciones ms necesarias deben poder realizarse usando pocas
instrucciones.
El conjunto de instrucciones de una mquina debe ser regular, es decir
debe ser simtrico (por ejemplo, si existe una instruccin de
desplazamiento a la izquierda, debe haber otra de desplazamiento a la
derecha, etc.) y ortogonal, es decir, deben poder combinarse, en la medida
de lo posible, todas las operaciones con todos los tipos de datos y modos
de direccionamiento.

En muchas ocasiones, tambin se le debe exigir a un computador que su


juego de instrucciones sea compatible con modelos anteriores.

Tipo de Instrucciones
Una mquina puede llegar a funcionar con un juego de instrucciones muy limitado
(recurdese, por ejemplo, la mquina de Turing que slo tiene 4 instrucciones,
incluso se han diseado mquinas tericas con menos instrucciones), esto
simplificara mucho los circuitos de la mquina. Sin embargo, un conjunto de
instrucciones demasiado simplificado origina, como consecuencia, unos
programas demasiado complejos e ineficientes. Es necesario encontrar un
compromiso entre la simplicidad del hardware y del software. Un mnimo para
llegar a ese compromiso se consigue con los tipos de instrucciones siguientes:
Instrucciones de transferencia de datos.
Instrucciones aritmticas.
Instrucciones lgicas.
Instrucciones de control del flujo del programa (bifurcaciones, bucles,
procedimientos, etc.)
Instrucciones de entrada y salida.

En los apartados siguientes iremos viendo con detalle algunos de estos tipos de
instrucciones.
Si bien es cierto que el conjunto de instrucciones debe de cumplir unos mnimos
para conseguir una mnima eficiencia en los programas, tambin se ver que sta
no se aumenta indefinidamente al incrementar el nmero de instrucciones de la
mquina.

Modos de direccionamiento y formatos


El campo de operacin de una instruccin especifica la operacin que se debe
realizar. Esta debe ser ejecutada sobre algunos datos almacenados en registros
del computador o en palabras de memoria, es decir, sobre los operandos. El modo
de direccionamiento especifica la forma de interpretar la informacin contenida en
cada campo de operando para localizar, en base a esta informacin, el operando .
-

Direccionamiento Inmediato.

El operando es un nmero que forma parte de la instruccin. No se necesita


calcular la direccin absoluta. La instruccin contiene al propio objeto. Se emplea
cuando la instruccin contiene un valor constante. El tamao del operando viene
determinado por el espacio reservado para l en el formato de instruccin.

Direccionamiento Directo (pgina cero).

Una forma de acelerar el direccionamiento extendido, sera usar el


direccionamiento paginado, donde la EA se forma de la siguiente manera: el byte
ms significativo de la direccin se obtiene de un registro, llamado de pgina y el
byte menos significativo de la direccin se especifica por un byte que se da como
operando de la instruccin. Para esto se hace necesario un registro extra: el
registro de pgina, que indica el nmero de pgina a emplear. Cada pgina tiene
256 bytes. La direccin del operando viene incluida en la instruccin, aqu el
procesador calcula la direccin real.
-

Direccionamiento De Registro.

Los operandos o datos se encuentran en registros. No se necesita calcular el Dir.


Absoluta.Transfiere un byte o palabra desde el registro fuente o localidad en
memoria, hasta el registro o localidad destino en la memoria
-

Direccionamiento relativo.

En este modo el operando se encuentra en una direccin relativa a la instruccin


ejecutada, es decir, la direccin efectiva se forma sumando al contenido del PC
actual, un nmero (dato) denominado desplazamiento (u "offset").
-

Direccionamiento inherente o implcito.

Un caso particular muy importante de este direccionamiento lo constituyen las


instrucciones del manejo de pila (stack). En el caso de insercin (PUSH) de datos
en la pila, el operando de origen est en un registro y la direccin de destino en el
puntero de pila (stack Pointer). En el caso de extraccin (PULL O POP) es en el
sentido inverso. Son instrucciones del tipo de 1 byte de longitud.
- Direccionamiento extendido o absoluto.
Este modo de direccionamiento consiste en poder acceder a cualquier palabra
contenida en la memoria principal, por medio de la direccin absoluta de memoria
explicitada como bytes en el operando de la instruccin. Es el mtodo ms fcil
para direccionar un lugar de memoria. La instruccin contiene la direccin del
operando (direccin absoluta de memoria) directamente especificada en 2 bytes
de memoria (microprocesadores de 8 bits de datos y 16 bits de direcciones),
permitiendo acceder al espacio total de direcciones memoria (64K). Estas son
instrucciones de 3 bytes de longitud. Este tipo de direccionamiento incluye
instrucciones del tipo LDA A, DIR; STA A, DIR.
- Direccionamiento indexado.
En este modo de direccionamiento, la EA se genera por la suma de un registro,
llamado registro ndice con un valor que est contenido como uno de los
operandos en la instruccin. Conceptualmente, el valor dato en la instruccin es la

direccin base de una tabla o arreglo, y el registro ndice es el desplazamiento de


la base.
El procesador calcula la direccin efectiva (real o absoluta sumando a DS o a ES
SI o DI respectivamente) ms un desplazamiento. Similar al direccionamiento
relativo a registro base. El operando se encuentra en memoria. Registro ndice:
se modifica a menudo en la ejecucin del programa.
- Direccionamiento indirecto.
En este modo de direccionamiento, se da una referencia intermedia donde se halla
la direccin efectiva del operando. Esta referencia puede ser: El operando se
encuentra en memoria y la instruccin contiene una direccin que se emplea para
leer en memoria una direccin intermedia que ser la verdadera direccin del
objeto buscado.
1) A travs de una direccin de memoria. Este es ms flexible pero ms
lento.
2) Por medio de un registro de la CPU.
- Direccionamiento indirecto indexado.
Este modo de direccionamiento consiste en realizar, primero, una indireccin, y
luego, indexar la direccin para hallar la direccin efectiva. Generalmente, se usan
en pgina 0. La direccin del operando es una direccin, cuyo contenido junto al
siguiente lugar de memoria da una direccin que ser indexada por el registro Y,
sta direccin contiene el dato a operar.
- Direccionamiento indexado-indirecto.
Este mtodo consiste en realizar, primero, una indexacin de la direccin del
operando (en pg.0), y luego, una indireccin.
- Direccionamiento Memoria Principal.
Se refieren a los distintos modos de acceder a lugares de la memoria principal.
Un mismo tipo de instruccin puede usar distintos modos de direccionamiento
para acceder a un determinado elemento. No todos los microprocesadores
proveen todos los modos de direccionamiento.
El espacio de direccionamiento de un procesador se puede dividir en 3 clases:
1Registros del procesador.
2Memoria principal.
3Dispositivos externos.

Você também pode gostar