Вы находитесь на странице: 1из 9

2.

1 Organizacin del procesador


Se deben de cumplir algunos requisitos:
Captar instruccin: El procesador lee una instruccin de la memoria.
Interpretar instruccin: la instruccin se decodifica para determinar qu accin
es necesaria.
Captar datos: La ejecucin de una instruccin puede exigir leer datos de la
memoria o de un mdulo de entrada y salida.
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 un mdulo de E/S.
El procesador necesita almacenar algunos datos temporalmente, debe recordar
la posicin de la ltima instruccin de forma que pueda saber de dnde tomar
la siguiente, necesita almacenar instrucciones y datos temporalmente mientras
una instruccin est ejecutndose.
En otras palabras, el procesador necesita una pequea memoria interna.

La Unidad Central de Procesos (CPU), 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 computacin; tambin est la de hacer gestiones
a la interfaz de
entrada y salida para permitir la lectura
de los caracteres del teclado, los clicks
del ratn, mostrar las ventanas en el
monitor, etc.
Frecuentemente, en las computadoras de
un solo CPU, la velocidad de proceso se ve
frenada por la capacidad de transmitir datos de un lado al otro, entre el CPU, la
memoria y la interfaz de E/S. Antiguamente, las computadoras podan
transmitir datos en conjuntos de 8 bits, ahora las computadoras pueden
transmitir hasta 64 bits en cada tick del reloj (aunque a la fecha hay equipos de
cmputo de 128 bits, pero son dedicados a consolas de juegos).

2.2 Estructura de registros


Dentro de la CPU hay una memoria interna compuesta por un conjunto de
registros. Los registros de la CPU son:

Registros visibles al usuario: Permiten al programador de lenguaje de


mquina o ensamblador minimizar las referencias a memoria principal
optimizando el uso de los registros.
Registros de control: Son utilizados por la unidad de control para
controlar el funcionamiento de la CPU y por programas privilegiados del
sistema para controlar la ejecucin de programas.
Registro de estado: Se utiliza para tomar decisiones en funcin de
operaciones realizadas.
Registro puntero a pila.

Registros visibles al usuario


Un registro visible al usuario es aqul que puede ser referenciado por medio
del lenguaje mquina que ejecuta la CPU. Prcticamente todos los diseos
contemporneos de CPUs estn provistos de varios registros visibles al usuario,
en oposicin a disponer de un nico acumulador.
Podemos clasificarlos en:
- Uso General
- Datos
- Direcciones
- Cdigos de Condicin

Los registros de uso general pueden ser asignados por el programador a


diversas funciones. A veces, su uso dentro del repertorio de instrucciones es
para contener el operando para cualquier cdigo de operacin. Esto
proporciona una utilizacin de registros de autntico uso general. Con
frecuencia, sin embargo, existen restricciones. Por ejemplo, puede haber
registros especficos para operaciones en coma flotante. En algunos casos los
registros de uso general pueden ser utilizados para funciones de
direccionamiento. En otros casos hay una separacin clara o parcial entre
registros de datos y registros de direcciones.
Los registros de datos pueden ser usados nicamente para contener datos y no
se pueden emplear en el clculo de una direccin de operando. Los registros de
direccin pueden ser en s registros de uso ms o menos general, o pueden
estar dedicados a un modo de direccionamiento particular. El caso ms
conocido es el puntero a pila. La cantidad de registros generales o
especializados es una cuestin de diseo. No hay solucin ptima, pero la
tendencia parece ir hacia el uso de registros especializados. Otro problema de
diseo es el nmero de registros, de uso general o de datos ms direcciones,
que tienen que incluirse.
Registros de control
Hay diversos registros de la CPU que se pueden emplear para controlar su
funcionamiento. La mayora de stos, en la mayor parte de las mquinas, no
son visibles al usuario. Algunos de ellos pueden ser visibles a instrucciones de

mquina ejecutadas en un modo de control o de sistema operativo.


Naturalmente, mquinas diferentes tendrn diferentes organizaciones de
registros y usar distinta terminologa. Se enumera aqu una lista
razonablemente completa de tipos de registros, con una breve descripcin. Son
esenciales cuatro registros para la ejecucin de una instruccin: el contador de
programa, el registro de direccin, el registro de instruccin y el registro de
datos. El contador de programa contiene una direccin de instruccin.
Tpicamente, la CPU actualiza el 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 el registro de instruccin, donde son
analizados el cdigo de operacin y los campos de operando. Se intercambian
datos con la memoria por medio de registro de direcciones y el de datos. En un
sistema con organizacin de bus, el de direcciones se conecta directamente al
bus de direcciones, y el de datos directamente al bus de datos. Los registros
visibles al usuario, sucesivamente, intercambian datos con el de datos. Los
cuatro registros que 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 al
de datos y a los registros visibles al usuario. Como alternativa, puede haber
registros intermedios adicionales en el lmite de la ALU; estos registros sirven
como registros de entrada y salida de la ALU e intercambian datos con el de
datos y los registros visibles al usuario.
Registro de estado
Todos los diseos de CPUs incluyen un registro o un conjunto de registros,
conocidos a menudo como palabra de estado de programa "programa status
word", PSW), que contiene informacin de estado. La PSW contiene tpicamente
cdigos de condicin adems de otra informacin de estado. Entre los campos
comunes o indicadores se incluyen los expresados en la tabla.

Registro puntero a pila


El registro puntero a pila permite almacenar la direccin de acceso a la
memoria pila. Veremos su funcionamiento al tratar las subrutinas.

2.3 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 perodo 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 un ordenador) o micro controlador (por ejemplo un reproductor de
MP3) realice una tarea (programa) primero debe buscar cada instruccin en la
memoria principal y luego ejecutarla.
QU ES UN CICLO FETCH?
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 micro controlador (por
ejemplo un reproductor de MP3) realice una tarea (programa) primero debe
buscar cada instruccin en la memoria principal y luego ejecutarla.

Segmentacin de Instrucciones.
La segmentacin o pipeline es una tcnica de realizacin de procesadores por
la cual se solapa la ejecucin de las instrucciones. Hoy en da es la tcnica
clave para la realizacin de CPU rpidas.
La idea bsica de la segmentacin se puede extraer de una cadena de montaje
de coches. Los coches no se montan uno a uno, si no que su construccin se
divide en fases sucesivas y el montaje del coche se realiza tal como este va
avanzando por estas fases. De esta forma cada fase est trabajando
simultneamente en la construccin de un coche diferente. De esta forma, la
construccin de un coche cuesta el mismo tiempo que antes, pero ahora la
frecuencia con que salen los coches construidos es mucho mayor (tantos como
fases tenga su construccin).
Cada uno de estas fases se denomina segmento o etapa de segmentacin. Al
igual que en los coches, la productividad de un computador va a depender del

nmero de instrucciones que acaben por unidad de tiempo, y no de lo que le


cueste a una instruccin individual.
Conjunto de instrucciones: Caracteristicas y funciones
Operaciones

aritmticas

lgicas

Estas instrucciones son realizadas por la ALU de la mquina. Las podemos


considerar agrupadas
en
varios
tipos:
Operaciones

puramente

aritmticas

A este apartado pertenecen aquellas instrucciones que realizan operaciones


aritmticas con los operandos, como suma, resta, etc. Alteran las banderas de
estado.
Instruccin Funcin
ADC

Sumar dos operandos y aadir el acarreo.

ADD

Sumar dos operandos sin aadir el acarreo.

DEC

Decrementa operando en 1.

DIV

Divisin sin signo.

IDIV

Divisin considerando los signos de los operando


s.

Multiplicacin considerando los signos de los oper Operaciones


puramente
andos.
lgicas
INC
Incremeta el operando en 1.
A
este
MUL
Multiplicacin sin considerar los signos.
apartado
pertenecen
NEG
Cambiar el signo del operando.
aquellas
instrucciones
SBB
Resta aadiendo el acarreo.
que realizan
operaciones a
SUB
Resta sin acarreo.
nivel
de
bit (operacion
es de tipo lgica o de aritmtica binaria) con los operandos. Al igual que
las anteriores,
alteran
las
banderas
de
estado.
IMUL

Instruccin

Funcin

AND

Realiza un <Y> lgico.

NOT

Realiza un <NO> lgico.

OR

Realiza una <O> lgica.

XOR

Realiza una <O> exclusiva .

Operaciones

de

manejo

de

bits

Pertenecen a este apartado aquellas instrucciones que realizan traslaciones


(rotaciones) con los bits del operando. Al igual que las anteriores, alteran las
banderas
de
estado.
Instruccin

Funcin

RCL

Rota a la izquierda a travs del acarreo.

RCR

Rota a la derecha considerando el acarreo.

ROL

Rotacin a la izquierda.

ROR

Rotacin a la derecha.

SAL/SHL

Desplazamiento a la izquierda.

SAR/SHR

Desplazamiento hacia la derecha.

conversiones de
de representacin

los

operandos

para

Operaciones
de
conversin
transformarlos

Instruccin

Funcin

AAA

Ajusta el valor ASCII de una suma.

AAD

Ajuste del valor ASCII de una divisn.

AAM

Ajuste del valor ASCII de una multiplicacin.

AAS

Ajuste del valor ASCII de una resta.

CBW

Convierte un byte en un word.

CWD

Convierte un word en un double word.

DAA

Ajuste decimal en una suma.

DAS

Ajuste decimal en una resta.

Instrucciones

de

Realizan
en otro tipo
numrica.

comparacin

Las instrucciones de comparacin permiten alterar las banderas de estado de


la mquina y, con ello, tomar decisiones cambiando el flujo de un programa.

Estas operaciones realizan internamente alguna operacin (por lo general la


resta), pero no almacenan el resultado de esa operacin, sino que nicamente
actualizan
las
banderas
de
estado.
El 8086 dispone de las siguientes instrucciones de comparacin:
Instruccin

Funcin

CMP

Comparar dos operandos y actualizar banderas.

CMPS

Comparar cadenas de un byte o de una palabra.

TEST

Comparar dos operandos utilizando operacin A


ND.

2.4
Casos

de estudio de CPU reales


i-8086
Los modos de direccionamiento del 8086 (Crawford & Gelsinger, 1987) son
muy irregulares.
Los registros del procesador, se usan para contener los datos con que se est
trabajando puesto que el acceso a los registros es mucho ms rpido que los
accesos a memoria. Se pueden realizar operaciones aritmticas y lgicas,
comparaciones, entre otras.
Hay un campo para un registro (reg), que especifica uno de los operandos, y
otros dos campos (mod y r/m) para el otro.
Los modos del 8086 son indirectos por registro, indexados o directos por
registro
Motorola 68000
En el Motorola 68000 el mismo direccionamiento lleva implcito el tipo de
registro sobre el que trabaja (direcciones o datos).
Est basado en dos bancos de 8 registros de 32 bits. Un banco es de datos (Dn)
y el otro de punteros (An). Adems contiene un contador de programa de 32
bits y un registro de estado de 16 bits.
Los registros de datos (D0 a D7) se pueden usar como registros de 32 bits (.l),
16 bits (.w) y 8 bits (.b). Cualquiera de ellos puede usarse como acumulador,
ndice o puntero.

BIBLIOGRAFIA:
http://arquitecturadecomputadoras5s.blogspot.mx/2012/09/organizacion-delprocesador.html
http://www.portalhuarpe.com.ar/medhime20/Sitios%20con
%20Medhime/Computaci%C3%B3n/COMPUTACION/Menu/modulo%205/5-6.htm
http://es.wikipedia.org/wiki/Ciclo_de_instrucci%C3%B3n
https://es.scribd.com/doc/30420235/Ciclo-Fetch
http://www.uv.es/varnau/AEC_610.pdf
http://doomsdaylost.blogspot.mx/2012/09/conjunto-de-instrucciones.html

Вам также может понравиться