Está en la página 1de 10

Estructura y Funci�n

del CPU
Arquitectura de Computadoras 1
Organizaci�n y Arquitectura de
Computadoras
Cap�tulo 11
Estructura y funci�n del CPU
22
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 2
Estructura del CPU
� El CPU debe:
� Extraer instrucciones
� Interpretar instrucciones
� Extraer datos
� Procesar datos
� Escribir datos
23
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 3
Registros
� El CPU debe tener un espacio de trabajo
(almacenamiento temporal)
� Llamados registros
� La cantidad y funci�n var�a dependiendo del
dise�o del procesador
� Una de las decisiones m�s importantes de dise�o
� El nivel m�s alto en la jerarqu�a de memoria
24
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 4
Registros visibles al usuario
� Prop�sito general
� Datos
� Direcciones
� C�digos de condici�n
25
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 5
Registros de prop�sito general
(1)
� Pueden ser verdaderamente de prop�sito general
� Pueden ser restringidos
� Pueden usarse para datos o direccionamiento
� Datos
� Acumulador
� Direccionamiento
� Segmento
26
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 6
Registros de prop�sito general
(2)
� Hacerlos de prop�sito general
� Aumentan la flexibilidad y opciones del
programador
� Aumenta el tama�o de la instrucci�n y
complejidad
� Hacerlos especializados
� Instrucciones m�s peque�as (m�s r�pidas)
� Menor flexibilidad
27
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 7
�Cu�ntos registros de
prop�sito general?
� Entre 8 - 32
� Menos
� M�s referencias a memoria
� M�s
� No reducen notablemente las referencias a
memoria
� Ver RISC
28
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 8
�Qu� tan grandes?
� Lo suficientemente grandes para guardar una
direcci�n completa
� Lo suficientemente grandes para guardar una
palabra completa
� Tambien es posible combinar dos registros de
datos
� Programando en C
� double int a;
� long int a;
29
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 9
Registros de c�digo de
condici�n
� Conjunto de bits individuales
� ejemplo. Si resultado de la �ltima operaci�n es
cero
� Pueden leerse (impl�citamente) por programas
� ejemplo. Salta si es cero
� No se puede (normalmente) establecer por
programas
30
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 10
Registros de estado y de
control
� Contador del programa
� Registro decodificador de instrucci�n
� MAR = Registro de direccionamiento de memoria
� MBR = Registro de buffer de memoria
� �Qu� hacen todos esos?
31
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 11
PSW (Palabra de estado del
programa)
� Un conjunto de bits
� Incluye c�digos de condici�n
� Signo del �ltimo resultado
� Cero
� Acarreo (Carry)
� Igualdad
� Sobreflujo (Overflow)
� Interrupciones habilitadas o deshabilitadas
� Supervisor
32
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 12
Modo Supervisor
� Intel ring zero
� Modo Kernel
� Permite que se ejecuten instrucciones
privilegiadas
� Usadas por el Sistema Operativo
� No disponibles para los programas de usuario
33
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 13
Otros registros
� Puede haber registros apuntando a:
� PCBs (Bloques de control de procesos)
� Ver S.O.
� Vectores de interrupci�n
� Ver S.O.
� El dise�o del CPU y del Sistema Operativo est�n
fuertemente encadenados
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 14
Ejemplos de organizaciones de
registros (MC68000)
D0
D1
D2
D3
D4
D5
D6
D7
A0
A1
A2
A3
A4
A5
A6
A7
A7�
Registro de estado
Contador del programa
Estado del programa
Registros de datos Registros de direcciones
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 15
Ejemplos de organizaciones de
registros (8086)
Datos
Contador
Base
Acumulador
�ndice destino
�ndide Fuente
Puntero base
Puntero de pila
Extra
Pila
Datos
C�digo
Indicadores
Ptr. instr.
AX
BX
CX
DX
SP
BP
SI
DI
CS
DS
SS
ES
Registros generales
Punteros e �ndices
Segmento
Estado del programa
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 16
Ejemplos de organizaciones de
registros (80386-Pentium)
Extra
Pila
Datos
C�digo
Indicadores, (EFLAGS)
Ptr. instr.
EAX
EBX
ECX
EDX
ESP
EBP
ESI
EDI
CS
DS
SS
ES
Registros generales
Punteros e �ndices
Segmento
Estado del programa
DX
CX
BX
AX
DI
SI
BP
SP
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 17
INICIO HALT
Captura
siguiente
instrucci�n
Ejecuta
instrucci�n
Ciclo Fetch (Captura) Ciclo de ejecuci�n
Ejecuci�n de una Instrucci�n
� Dos pasos:
� Captura
� Ejecuci�n
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 18
Ciclo de Fetch (Captura)
� El contador del programa (PC) tiene la direcci�n
de la siguiente instrucci�n a extraer
� El procesador extrae la instrucci�n de la
direcci�n de memoria apuntada por PC
� Incrementa PC
� Al menos que se le indique otra cosa
� La instrucci�n se carga en el registro de
instrucci�n (IR)
� El procesador interpreta la instrucci�n y ejecuta
las acciones requeridas
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 19
Ciclo de ejecuci�n
� Procesador-memoria
� Transferencia de datos entre el CPU y la memoria principal
� Procesador E/S
� Transferencia de datos entre CPU y un m�dulo de E/S
� Procesamiento de datos
� Alguna operaci�n aritm�tica o l�gica en los datos
� Control
� Alteraci�n de la secuencia de las operaciones
� ejemplo. jump
� Combinaci�n de los de arriba
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 20
3 0 2
Memoria Registros del CPU Registros del CPU
Registros del CPU Registros del CPU
Registros del CPU Registros del CPU
Memoria
Memoria Memoria
Memoria
Memoria
300
301
302
940
941
Paso 1
PC
AC
IR
301
302
940
941
300
300
301
302
940
941
300
301
302
940
941
300
301
302
940
941
300
301
302
940
941
Paso 3
Paso 5
Paso 2
Paso 4
Paso 6
1 9 4 0
5 9 4 1
0 0 0 3
0 0 0 2
2 9 4 1 1 9 4 0
PC
PC
PC
PC
PC
AC
AC
AC
AC
AC
IR
IR IR
IR IR
1 9 4 0
1 9 4 0
1 9 4 0
1 9 4 0
1 9 4 0
2 9 4 1
2 9 4 1
2 9 4 1
2 9 4 1
2 9 4 1
5 9 4 1
5 9 4 1
5 9 4 1
5 9 4 1
5 9 4 1
0 0 0 3
0 0 0 3
0 0 0 3
0 0 0 3
0 0 0 3
0 0 0 2
0 0 0 2
0 0 0 2
0 0 0 2
0 0 0 2
1 9 4 0
0 0 0 3
0 0 0 3
5 9 4 1
0 0 0 5
2 9 4 1
0 0 0 5
5 9 4 1
0 0 0 5
2 9 4 1
3 + 2 = 5
3 0 2
3 0 0
3 0 1
3 0 2
3 0 0
3 0 1
Ejemplo de la ejecuci�n de un
programa
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 21
Diagrama de estados del ciclo
de instrucci�n
Captaci�n
de instrucci�n
C�lculo de la
direcci�n de
la instrucci�n
Decodificaci�n
de la operaci�n
de la instrucci�n
Captaci�n
del operando
C�lculo de la
direcci�n del
operando
Operaci�n
con datos
Alcacenamiento
de
operando
C�lculo de la
direcci�n del
operando
Varios
operandos
Varios
operandos
Instrucci�n completada
Captar la siguiente instrucci�n
Cadena o vector
de datos
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 22
Ciclo indirecto
� Puede requerir acceso a memoria para extraer
operandos
� El direccionamiento indirecto requiere m�s
accesos a memoria
� Puede ser a trav�s de como un subciclo de
instrucci�n adicional
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 23
El ciclo de instrucci�n
Interrupci�n Indirecto
Captaci�n
Ejecuci�n
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 24
Diagrama de estados del ciclo
de instrucci�n
Captaci�n
de
instrucci�n
C�lculo de la
direcci�n de
la instrucci�n
Decodificaci�n
de la operaci�n
de la instrucci�n
Captaci�n
del operando
C�lculo de la
direcci�n del
operando
Operaci�n
con datos
Alcacenamiento
de
operando
C�lculo de la
direcci�n del
operando
Varios
operandos
Varios
resultados
Instrucci�n completada
Captar la siguiente instrucci�n
Volver a por otro dato de
una cadena o un vector
Comprobaci�n
de
interrupci�n
Interrupci�n
No
interrupci�n
Indirecci�n Indirecci�n
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 25
Flujo de datos (Extracci�n de la
instrucci�n)
� Depende del dise�o del CPU
� En general:
� Extraer
� PC contiene la direcci�n de la siguiente instrucci�n
� La direcci�n se mueve a MAR
� Se pone la direcci�n en el bus de direcciones
� La unidad de control solicita lectura a memoria
� El resultado se pone en el bus de datos, copiado a MBR, y
despu�s a IR
� Mientras tanto PC se incrementa a 1
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 26
Flujo de datos (Extracci�n de
los datos)
� Se examina IR
� Si es direccionamiento indirecto, se ejecuta el
ciclo indirecto
� Los N bits m�s de la derecha de MBR se
transfieren a MAR
� La unidad de control solicita lectura de memoria
� El resultado (direcci�n del operando) se mueve a
MBR
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 27
Flujo de datos, ciclo de
captaci�n
IR MBR
PC
Unidad
De control
MAR
Bus de
direcciones
Bus de
datos
Memoria
Bus de
control
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 28
Flujo de datos, ciclo indirecto
MBR
Unidad
De control
MAR
Bus de
direcciones
Bus de
datos
Memoria
Bus de
control
Estructura y Funci�n
del CPU
Arquitectura de Computadoras 29
Flujo de datos (Ejecuci�n)
� Puede tomar varias formas
� Depende de la instrucci�n que se est� ejecutando
� Puede incluir
� Lectura/Escritura de la memoria
� Entrada/Salida
� Transferencias de registros
� Operaciones en la ALU

También podría gustarte