You are on page 1of 125

EL PROCESADOR

Ing. Miguel Aguilar

Arquitectura de Computadoras

ORGANIZACIN PROCESADOR

Ing. Miguel Aguilar

Arquitectura de Computadoras

ALU
UNIDAD ARITMETICA LOGICA

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

ENTRADAS Y SALIDAS DE LA ALU

Ing. Miguel Aguilar

Arquitectura de Computadoras

Ing. Miguel Aguilar

Arquitectura de Computadoras

10

Ing. Miguel Aguilar

Arquitectura de Computadoras

11

SIMBOLO DE ALU

Ing. Miguel Aguilar

Arquitectura de Computadoras

12

Ing. Miguel Aguilar

Arquitectura de Computadoras

13

Ing. Miguel Aguilar

Arquitectura de Computadoras

14

Ing. Miguel Aguilar

Arquitectura de Computadoras

15

Ing. Miguel Aguilar

Arquitectura de Computadoras

16

Ing. Miguel Aguilar

Arquitectura de Computadoras

17

Ing. Miguel Aguilar

Arquitectura de Computadoras

18

CAMINO DE DATOS (DATA PATH)

Ing. Miguel Aguilar

Arquitectura de Computadoras

19

Ing. Miguel Aguilar

Arquitectura de Computadoras

20

CAMINO DATOS DE ARC

Ing. Miguel Aguilar

Arquitectura de Computadoras

21

Ing. Miguel Aguilar

Arquitectura de Computadoras

22

CONJUNTO DE
INSTRUCCIONES
CARACTERISTICAS Y
FUNCIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

23

Ing. Miguel Aguilar

Arquitectura de Computadoras

24

Ing. Miguel Aguilar

Arquitectura de Computadoras

25

Ing. Miguel Aguilar

Arquitectura de Computadoras

26

Cdigo de Operacin
(Hacer esto)

Especifica la operacin a realizar (suma, E/S,


etc.). La operacin se indica mediante un
cdigo binario denominado cdigo de
operacin o, abreviadamente Opcode.

Ing. Miguel Aguilar

Arquitectura de Computadoras

27

Referencia al Operando
Fuente
(A esto)

La operacin puede implicar uno o mas


operandos fuente, es decir los operandos que
son entradas para la instruccin.

Ing. Miguel Aguilar

Arquitectura de Computadoras

28

Referencia al Operando
Resultante
(Poner la respuesta
aqu)

La operacin puede producir un


resultado.

Ing. Miguel Aguilar

Arquitectura de Computadoras

29

Referencia a la
Siguiente Instruccin
(Cuando termines,
hacer esto)

Le dice al procesador donde buscar la siguiente


instruccin despus de completar la
instruccin anterior.

Ing. Miguel Aguilar

Arquitectura de Computadoras

30

Ing. Miguel Aguilar

Arquitectura de Computadoras

31

Ing. Miguel Aguilar

Arquitectura de Computadoras

32

FORMATO DE INSTRUCCION

Ing. Miguel Aguilar

Arquitectura de Computadoras

33

Ing. Miguel Aguilar

Arquitectura de Computadoras

34

Para el entendimiento humano se


usa representacin simblica para
el Opcode.

Los operandos tambin pueden


representarse simblicamente.
ADD R,Y
Ing. Miguel Aguilar

Arquitectura de Computadoras

35

Ing. Miguel Aguilar

Arquitectura de Computadoras

36

Ing. Miguel Aguilar

Arquitectura de Computadoras

37

PROCESAMIENTO DE DATOS
INSTRUCCIONES
ARITMETICAS
Proveen capacidad
computacional para el
procesamiento
numrico de datos.
INSTRUCCIONES
LOGICAS (BOOLEANAS)
Operan sobre los bits
de una palabra.
Ing. Miguel Aguilar

Estas operaciones
son ejecutadas
principalmente
sobre datos
almacenados
temporalmente en
los registros del
procesador.

Arquitectura de Computadoras

38

Ing. Miguel Aguilar

Arquitectura de Computadoras

39

ALMACENAMIENTO DE
DATOS
Son instrucciones para mover datos
entre la memoria y los registros del
procesador.

Ing. Miguel Aguilar

Arquitectura de Computadoras

40

TRANSFERENCIA DE DATOS
Son instrucciones de Entrada/Salida
necesarias para transferir programas y datos
hacia la memoria y retornar el resultado del
computo al usuario.

Ing. Miguel Aguilar

Arquitectura de Computadoras

41

CONTROL
Son instrucciones para el control del flujo del
programa y pueden ser de Prueba (Salto
Condicional) y Ramificacin (Bifurcacin o
Salto Incondicional).
Una fraccin significativa de las
instrucciones de cualquier programa tiene
como misin cambiar la secuencia de
ejecucin de instrucciones.

Ing. Miguel Aguilar

Arquitectura de Computadoras

42

NUMERO DE DIRECCIONES
EN UNA INSTRUCCION

Ing. Miguel Aguilar

Arquitectura de Computadoras

43

INSTRUCCIN CON CUATRO (4 )


DIRECCIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

44

La mayora de las instrucciones tienen una,


dos o tres direcciones de operandos, entonces
la direccin de la siguiente instruccin es
implcita (obtenida desde el contador de
programa PC)

Ing. Miguel Aguilar

Arquitectura de Computadoras

45

INSTRUCCIN CON TRES (3 )


DIRECCIONES

Se utilizaba en las
Se utilizaba
primerasen las
primerascon
computadoras
computadoras
memorias con
memorias
pequeas
y por lo
pequeas
y por lo
tanto los campos
tanto
los campos
de direccin
de direccin
necesitaban
pocos
necesitaban
bits. pocos
bits.
Ing. Miguel Aguilar

Arquitectura de Computadoras

46

INSTRUCCIN CON DOS (2 )


DIRECCIONES

Una direccin hace


Una
direccin
hace
doble
trabajo,
doble
trabajo,y
como
operando
como
operando y
resultado.
resultado.
Ejemplo:
SUB R2 ,
Ejemplo: SUB R2 ,
R1
R1
La instruccin
La instruccin
lleva
a cabo el
lleva
calculo Ra2 cabo
- R1 yelel
calculo R2 - R1 y el
resultado se
resultado
se .
almacena
en R
2
Ing. Miguel Aguilar
almacena en R
2 .

Arquitectura de Computadoras

47

INSTRUCCIN CON UNA (1 )


DIRECCION

Ing. Miguel Aguilar

La segunda direccin esta


La segunda
direccin
esta
implcita.
Hace
referencia
Hace referencia
alimplcita.
registro Acumulador
AC,
al
registro
Acumulador
AC,
el cual contiene uno de los
el
cual contiene
uno de
operandos
y tambin
eslos
operandos
y tambin el
es
usado
para almacenar
usadoresultado.
para almacenar el
resultado.

Arquitectura de Computadoras

48

INSTRUCCIN CON CERO (0)


DIRECCIONES

Hace referencia
referencia
alHace
Stack
o Pila,
al
Stack
o los
Pila,
tanto para
tanto
para los
operandos
operandos
como
el
como el
resultado.
resultado.
Ing. Miguel Aguilar

Arquitectura de Computadoras

49

UTILIZACION DE LAS DIRECCIONES


(No para instrucciones de ramificacin)
NUMERO DE
DIRECCIONES

REPRESENTACION
SIMBOLICA

INTERPRETACION

OP A,B,C

A B OP C

OP A,B

A A OP B

OP A

AC AC OP A

OP

T (T-1) OP T

Ing. Miguel Aguilar

Arquitectura de Computadoras

50

Ing. Miguel Aguilar

Arquitectura de Computadoras

51

INSTRUCCIN CON TRES (3) DIRECCIONES


INSTRUCCION

INTERPRETACION

SUB Y, A, B

YA-B

MPY T, D, E

TDxE

ADD T, T, C

TT+C

DIV Y, Y, T

YY/T

T = Locacin para almacenar resultados


intermedios y as no alterar las locaciones de los
operandos.
Ing. Miguel Aguilar

Arquitectura de Computadoras

52

INSTRUCCIN CON DOS (2) DIRECCIONES


INSTRUCCION

INTERPRETACION

MOVE Y,A

YA

SUB Y,B

YY-B

MOVE T,D

TD

MPY T,E

TTxE

ADD T,C

TT+C

DIV Y,T

Y Y/T

Una direccin hace doble trabajo, como operando y


resultado. Para evitar alterar el valor de un operando
utiliza una instruccin MOVE para transferir uno de
los valores a una locacin temporal o de resultados
antes de realizar el calculo.
Ing. Miguel Aguilar

Arquitectura de Computadoras

53

INSTRUCCIN CON UNA (1) DIRECCION


INSTRUCCION

INTERPRETACION

LOAD D

AC D

MPY E

AC AC x E

ADD C

AC AC +C

STOR Y

Y AC

LOAD A

AC A

SUB B

AC AC B

DIV Y

AC AC / Y

STOR Y

Y AC

La segunda direccin es implcita, el


registro acumulador.

Ing. Miguel Aguilar

Arquitectura de Computadoras

54

INSTRUCCIONES CON MENOS


DIRECCIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

55

INSTRUCCIONES CON MULTIPLES


DIRECCIONES

Un aspecto a considerar es si una direccin hace referencia a una posicin


de memoria o a un registro. Ya que hay menos registros, se necesitan
menos bits para referenciarlos.
Ing. Miguel Aguilar

Arquitectura de Computadoras

56

DISEO DEL CONJUNTO


DE INSTRUCCIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

57

TIPOS DE OPERANDOS

Ing. Miguel Aguilar

Arquitectura de Computadoras

58

NUMEROS

Ing. Miguel Aguilar

Arquitectura de Computadoras

59

CARACTERES

Ing. Miguel Aguilar

Arquitectura de Computadoras

60

DATOS LOGICOS

Ing. Miguel Aguilar

Arquitectura de Computadoras

61

TIPOS DE OPERACIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

62

DIRECCIONAMIENTO

Ing. Miguel Aguilar

Arquitectura de Computadoras

63

MODO DE
DIRECCIONAMIENTO

Ing. Miguel Aguilar

Arquitectura de Computadoras

64

Las computadoras utilizan


tcnicas de direccionamiento
por dos razones:

Ing. Miguel Aguilar

Normalmente todas las arquitecturas de


computadoras proveen mas de un modo de
direccionamiento.
Arquitectura
de Computadoras

65

Cmo el procesador puede


determinar cual modo de
direccionamiento esta siendo
utilizado en una particular
instruccin?

Ing. Miguel Aguilar

Arquitectura de Computadoras

66

MODOS DE
DIRECCIONAMIENTO

Ing. Miguel Aguilar

Arquitectura de Computadoras

67

NOTACION

Ing. Miguel Aguilar

Arquitectura de Computadoras

68

DIRECCIONAMIENTO
INMEDIATO
Es la forma mas simple de
direccionamiento, en el cual el valor del
operando esta presente en la
instruccin.
Es utilizado para definir constantes o
determinar valores iniciales para las
variables.
Operando = A
Ejemplo: ADD 5
Sumar 5 (operando)
contenido del
Arquitectura deal
Computadoras

Ing. Miguel Aguilar

69

VENTAJAS

Ing. Miguel Aguilar

Arquitectura de Computadoras

DESVENTAJAS

70

DIRECCIONAMIENTO
DIRECTO
La instruccin
contiene la
direccin efectiva
del operando:
EA=A

Ing. Miguel Aguilar

Ejemplo: ADD A
Sumar el contenido de
la locacin A en
memoria al
Acumulador

Arquitectura de Computadoras

71

VENTAJAS

Ing. Miguel Aguilar

Arquitectura de Computadoras

DESVENTAJAS

72

DIRECCIONAMIENTO
INDIRECTO
La locacin de memoria
apuntada por el campo de
direccin contiene la direccin
del operando: EA = (A)
Ejemplo: ADD (A)
Suma el contenido de la
locacin apuntada por el
contenido de A al
Acumulador

Ing. Miguel Aguilar

Arquitectura de Computadoras

73

VENTAJAS

Ing. Miguel Aguilar

Arquitectura de Computadoras

DESVENTAJAS

74

DIRECCIONAMIENTO POR REGISTRO


Es similar al
direccionamiento
directo, solo que
hace referencia a
un registro en
lugar de una
locacin de
memoria: EA=R

Ing. Miguel Aguilar

Arquitectura de Computadoras

75

VENTAJAS

Limitado nmero de
registros de propsito
general se necesita
un pequeo campo de
direccin (3-5 bits).
Instrucciones cortas
Mas rpida bsqueda
del operando
No hay accesos a
memoria
Rpida ejecucin de
las instrucciones

Ing. Miguel Aguilar

DESVENTAJAS

Muy limitado espacio


de direcciones.

Arquitectura de Computadoras

76

DIRECCIONAMIENTO INDIRECTO POR REGISTRO

La instruccin
especifica un
registro R del
procesador cuyo
contenido es la
direccin del
operando en la
memoria :
EA = (R)
Ing. Miguel Aguilar

Arquitectura de Computadoras

77

VENTAJAS

Mayor espacio
de direcciones
2N

Ing. Miguel Aguilar

DESVENTAJAS

Un acceso a
memoria.

Arquitectura de Computadoras

78

DIRECCIONAMIENTO POR DESPLAZAMIENTO

Requiere dos campos


de direccionamiento

Combina el direccionamiento directo


e indirecto con registro.

A = Valor Base
R = Registro que
contiene el
desplazamiento

EA = A + (R)
Usos mas comunes:
Direccionamiento Relativo
Direccionamiento con
Registro base
Indexado
Ing. Miguel Aguilar

Arquitectura de Computadoras

79

DIRECCIONAMIENTO RELATIVO
El contenido del
contador de programa
PC, es decir la
direccin de la
instruccin actual se
suma al campo de
direccin de la
instruccin para
obtener la direccin
efectiva.

EA = A + (R)

suma este numero al contenido del Contador de Programa, el resultado produce una direcci
cuya posicin en la memoria es relativa a la direccin del siguiente instruccin.

Ing. Miguel Aguilar

Arquitectura de Computadoras

80

Con
Con frecuencia
frecuencia se
se utiliza
utiliza el
el direccionamiento
direccionamiento relativo
relativo con
con
instrucciones
instrucciones tipo
tipo salto,
salto, cuando
cuando la
la direccin
direccin del
del salto
salto esta
esta
en
en el
el rea
rea que
que rodea
rodea la
la palabra
palabra de
de la
la instruccin
instruccin misma
misma
Ing. Miguel Aguilar

Arquitectura de Computadoras

81

DIRECCIONAMIENTO POR REGISTRO BASE


Se
Se utiliza
utiliza en
en las
las computadoras
computadoras para
para facilitar
facilitar la
la
localizacin
localizacin de
de los
los programas
programas en
en memoria.
memoria. Cuando
Cuando se
se
mueven
mueven datos
datos yy programas
programas de
de un
un segmento
segmento a
a otro,
otro,
como
como se
se requiere
requiere en
en la
la multiprogramacin,
multiprogramacin, los
los valores
valores
de
de direccin
direccin de
de las
las instrucciones
instrucciones deben
deben reflejar
reflejar este
este
cambio
cambio de
de posicin.
posicin.

EA = A + ( R )
El campo de direccin A contiene el
desplazamiento.
Es tratada como un entero sin signo.

R contiene la direccin base de memoria.


La referencia a registro R puede ser implcita o
explicita.
Ing. Miguel Aguilar

Arquitectura de Computadoras

82

DIRECCIONAMIENTO POR
REGISTRO BASE
IMPLICITO

Ing. Miguel Aguilar

Arquitectura de Computadoras

83

DIRECCIONAMIENTO POR
REGISTRO BASE
EXPLICITO

Si
Si la
la longitud
longitud del
del campo
campo de
de direcciones
direcciones es
es K
Ky
y el
el numero
numero de
de registros
registros
posibles
es
N,
una
instruccin
puede
referenciar
cualquiera
posibles es N, una instruccin puede referenciar cualquiera de
de las
las N
N
reas
reas de
de palabras
palabras (Explicito).
(Explicito).

Ing. Miguel Aguilar

Arquitectura de Computadoras

84

APLICACIN REGISTRO BASE

Se utiliza para la relocalizacin de


programas en la memoria.
Permite direccionar todo un programa a
partir de una direccin base.
Permite la carga simultanea de varios
programas, cada uno de los cuales es
referenciado mediante un registro.

Ing. Miguel Aguilar

Arquitectura de Computadoras

85

DIRECCIONAMIENTO
INDEXADO
EA = A + ( R )
El campo de direccin A hace referencia a una
direccin de memoria.
R registro ndice contiene un desplazamiento positivo
desde esa direccin.
Es tratado como un entero sin signo
R puede ser explicito o implcito
Es un eficiente mecanismo para ejecutar operaciones
iterativas con arreglos y matrices de datos almacenados
en memoria.

Ing. Miguel Aguilar

Arquitectura de Computadoras

86

DIRECCIONAMIENTO
INDEXADO
REGISTRO IMPLICITO

Ing. Miguel Aguilar

Arquitectura de Computadoras

87

DIRECCIONAMIENTO
INDEXADO

Suponga
Suponga que
que se
se quiere
quiere sumar
sumar 1
1a
a cada
cada elemento
elemento de
de la
la lista.
lista.
Necesitamos
Necesitamos cada
cada valor,
valor, sumarle
sumarle 1
1 yy memorizar
memorizar el
el resultado.
resultado. La
La
secuencia
secuencia de
de direcciones
direcciones efectivas
efectivas necesarias
necesarias es
es A,
A, A+1,
A+1, A+2,
A+2, A+3,
A+3,
..hasta
..hasta la
la ultima
ultima posicin
posicin de
de lista.
lista.

Autoindexa
do
(R) (R) +1

Ing. Miguel Aguilar

Arquitectura de Computadoras

88

DIRECCIONAMIENTO
INDEXADO
REGISTRO
EXPLICITO

Ing. Miguel Aguilar

Arquitectura de Computadoras

89

Algunas
Algunas computadoras
computadoras disponen
disponen de
de direccionamiento
direccionamiento tanto
tanto
indirecto
indirecto como
como indexado,
indexado, yy es
es posible
posible emplear
emplear ambos
ambos en
en la
la
misma
misma instruccin.
instruccin. Hay
Hay dos
dos posibilidades
posibilidades el
el indexado
indexado se
se realiza
realiza
antes
antes o
o despus
despus del
del direccionamiento
direccionamiento indirecto.
indirecto.

Post Indexado
El indexado es ejecutado
despus de calcular la
direccin.
EA = (A) + (R)
El contenido de A es
usado para el acceso a
una locacin de memoria
que contiene la direccin
directa.
La direccin es indexada
mediante el valor del
registro ndice R.
Ing. Miguel Aguilar

Es
Es una
una tcnica
tcnica til
til para
para acceder
acceder a
a uno
uno
entre
un
numero
de
bloques
de
datos
entre un numero de bloques de datos
con
con un
un formato
formato fijo,
fijo, por
por ejemplo
ejemplo el
el
bloque
bloque de
de control
control que
que el
el sistema
sistema
operativo
operativo utiliza
utiliza para
para cada
cada proceso.
proceso.

Arquitectura de Computadoras

90

BLOQUE DE CONTROL DE PROCESOS

Para
Para cada
cada proceso
proceso del
del sistema,
sistema, el
el
sistema
sistema operativo
operativo debe
debe mantener
mantener
informacin
informacin de
de su
su estado
estado identificando
identificando
la
la situacin
situacin en
en que
que se
se encuentra
encuentra el
el
proceso
proceso yy cualquier
cualquier informacin
informacin
adicional
adicional necesaria
necesaria para
para la
la ejecucin
ejecucin
del
del mismo.
mismo. Para
Para eso,
eso, cada
cada proceso
proceso se
se
representa
representa ene
ene el
el sistema
sistema operativo
operativo
mediante
mediante un
un bloque
bloque de
de control
control de
de
procesos.
procesos.

Ing. Miguel Aguilar

Arquitectura de Computadoras

91

PRE INDEXADO

El indexado es
ejecutado antes de
calcular la direccin.
EA = (A+(R))
La locacin A+(R) no
contiene el operando
pero si la direccin de
este.
Un
Un ejemplo
ejemplo del
del uso
uso de
de esta
esta tcnica
tcnica es
es la
la construccin
construccin de
de
tablas
tablas de
de bifurcacin
bifurcacin multirama.
multirama. En
En un
un punto
punto concreto
concreto de
de
un
un programa
programa puede
puede haber
haber una
una bifurcacin
bifurcacin a
a una
una de
de entre
entre
varias
varias posiciones,
posiciones, en
en funcin
funcin de
de diversas
diversas condiciones.
condiciones.
Normalmente,
Normalmente, un
un mismo
mismo repertorio
repertorio de
de instrucciones
instrucciones no
no incluir
incluir el
el post
post
indexado
indexado y
y pre-indexado
pre-indexado simultneamente.
simultneamente.
Ing. Miguel Aguilar

Arquitectura de Computadoras

92

Ing. Miguel Aguilar

Arquitectura de Computadoras

93

Ing. Miguel Aguilar

Arquitectura de Computadoras

94

DIRECCIONAMIENTO POR PILA

Direccionamiento Indirecto por Registro


Implcito :
El Registro Puntero de Pila, Stack
pointer (SP): contiene la direccin del
elemento superior (Top) de la pila.
EA = top del stack
Los operandos estn (implcitos) en el
top del stack

Ing. Miguel Aguilar

Arquitectura de Computadoras

95

Ing. Miguel Aguilar

Arquitectura de Computadoras

96

Ing. Miguel Aguilar

Arquitectura de Computadoras

97

Ing. Miguel Aguilar

Arquitectura de Computadoras

98

Ing. Miguel Aguilar

Arquitectura de Computadoras

99

Ing. Miguel Aguilar

Arquitectura de Computadoras

100

EL PROCESADOR
ESTRUCTURA Y FUNCION

Ing. Miguel Aguilar

Arquitectura de Computadoras

101

Para entender la organizacin


del procesador debemos
considerar las cosas que puede
hacer.

Ing. Miguel Aguilar

Arquitectura de Computadoras

102

Para hacer todo lo


anterior el procesador
necesita:

Ing. Miguel Aguilar

Arquitectura de Computadoras

103

PROCESADOR Y SISTEMA
DE BUSES

Ing. Miguel Aguilar

La ALU realiza el
procesamiento de datos.
La Unidad de Control
controla el movimiento
de datos e instrucciones
hacia dentro y fuera del
procesador, adems
controla las operaciones
de la ALU.
Los registros son un
conjunto de locaciones
que constituyen la
memoria interna del
procesador.

Arquitectura de Computadoras

104

ESTRUCTURA INTERNA DEL


PROCESADOR

Ing. Miguel Aguilar

El bus interno del


procesador es necesario
para transferir datos
entre los registros y la
ALU, debido a que esta
opera solamente sobre
datos en la memoria
interna del procesador.

Arquitectura de Computadoras

105

TIPOS DE
REGISTROS

Ing. Miguel Aguilar

Arquitectura de Computadoras

106

REGISTROS VISIBLES
POR EL USUARIO

Ing. Miguel Aguilar

Arquitectura de Computadoras

107

REGISTROS DE
ESTADO Y CONTROL

Ing. Miguel Aguilar

Arquitectura de Computadoras

108

REGISTROS VISIBLES
POR EL USUARIO

Ing. Miguel Aguilar

Arquitectura de Computadoras

109

REGISTROS DE
PROPOSITO
GENERAL

Ing. Miguel Aguilar

Arquitectura de Computadoras

110

REGISTROS DE
DATOS

Ing. Miguel Aguilar

Arquitectura de Computadoras

111

REGISTROS DE
DIRECCIONES

Ing. Miguel Aguilar

Arquitectura de Computadoras

112

REGISTROS CODIGOS
DE CONDICION

Ing. Miguel Aguilar

Arquitectura de Computadoras

113

REGISTROS DE
CONTROL Y ESTADO

Ing. Miguel Aguilar

Arquitectura de Computadoras

114

PALABRA DE ESTADO
DEL PROGRAMA
(PSW)

Ing. Miguel Aguilar

Arquitectura de Computadoras

115

EJEMPLO ORGANIZACIN DE
REGISTROS EN PROCESADORES

Ing. Miguel Aguilar

Arquitectura de Computadoras

116

EL CICLO DE INSTRUCCION
Bsqueda
Ejecucin
Interrupcin
Debemos introducir un subciclo
adicional, conocido como ciclo
indirecto.

Ing. Miguel Aguilar

Arquitectura de Computadoras

117

EL CICLO INDIRECTO
Sabemos que la ejecucin de una
instruccin puede involucrar uno o
mas operandos en memoria, cada
uno de los cuales requiere un
acceso a memoria.
Es mas, si es usado
direccionamiento indirecto,
entonces se requieren accesos
adicionales
a
memoria
Ing. Miguel Aguilar
Arquitectura de Computadoras

118

EL CICLO DE INSTRUCCION
La lnea principal de actividad
consiste en la bsqueda y
ejecucin de la instruccin.
Despus, una instruccin es
buscada y examinada para
determinar si implica algn
ciclo indirecto.
Si existe ciclo indirecto, los
operandos son buscados
usando direccionamiento
indirecto.
Despus de la ejecucin una
interrupcin puede ser
procesada antes de buscar la
siguiente instruccin.

Ing. Miguel Aguilar

Arquitectura de Computadoras

119

Una vez que la instruccin es trada desde memoria, sus


operandos deben ser identificados.
Cada operando debe ser buscado y esto este proceso requiere
direccionamiento indirecto.
Una vez que el Opcode es ejecutado, un proceso similar puede
ser necesario para almacenar el resultado en memoria principal.

Ing. Miguel Aguilar

Arquitectura de Computadoras

120

FLUJO DE DATOS EN UN
PROCESADOR

Ing. Miguel Aguilar

Arquitectura de Computadoras

121

CICLO DE BUSQUEDA
CPU
PC

MAR
MEMOR
IA

UNIDA
D DE
CONTR
OL

IR

MBR

PC contiene la
direccin de la
siguiente instruccin.
La direccin es
cargada en el MAR.
La direccin es
colocada en el bus de
direcciones.
La Unidad de Control
enva una seal de
solicitud de lectura.
El resultado es
colocado en el bus de
datos, copiado en el
MBR, y luego a IR.
Mientras tanto el PC es
incrementado en 1.

BUS
BUS
BUS
DIRECCIONES
DATOS CONTROL

Ing. Miguel Aguilar

Arquitectura de Computadoras

122

CICLO INDIRECTO
CPU
MAR
MEMOR
IA

UNIDA
D DE
CONTR
OL

IR

IR es examinado
Si el
direccionamiento es
indirecto , el ciclo
indirecto es
ejecutado.
Los N bits mas a la
derecha del MBR son
transferidos al MAR.
La Unidad de Control
solicita una lectura
de memoria.
El resultado
(direccin del
operando) es
cargado en el MBR.

MBR

BUS
BUS
BUS
DIRECCIONES
DATOS CONTROL

Ing. Miguel Aguilar

Arquitectura de Computadoras

123

CICLO DE INTERRUPCION
CPU
PC

ISR

MAR

MEMOR
IA

UNIDA
D DE
CONTR
OL

MBR

La direccin actual del


PC es salvada para
permitir retomar el
programa despus de la
interrupcin.
El contenido del PC
es copiado al MBR.
Especial locacin de
memoria (puntero de
pila) cargado al MAR.
El contenido del MBR
es escrito en
memoria.
PC es cargado con la
direccin del ISR.
La siguiente instruccin
(primera del ISR) puede
ser buscada.

BUS
BUS
BUS
DIRECCIONES
DATOS CONTROL

Ing. Miguel Aguilar

Arquitectura de Computadoras

124

CICLO DE EJECUCION
Puede tomar muchas formas.
Depende de la instruccin que esta siendo
ejecutada.
Puede incluir:

Transferencia de registros
Lectura/Escritura en memoria
Entrada/Salida
Operaciones de la ALU

Ing. Miguel Aguilar

Arquitectura de Computadoras

125

You might also like