Está en la página 1de 29

Organizacin y Arquitectura de Computadoras

Captulo 11 Estructura y funcin del CPU

Estructura y Funcin del CPU

Arquitectura de Computadoras

Estructura del CPU


El CPU debe: Extraer instrucciones Interpretar instrucciones Extraer datos Procesar datos Escribir datos

Estructura y Funcin del CPU

Arquitectura de Computadoras

22

Registros
El CPU debe tener un espacio de trabajo (almacenamiento temporal) Llamados registros La cantidad y funcin vara dependiendo del diseo del procesador Una de las decisiones ms importantes de diseo El nivel ms alto en la jerarqua de memoria

Estructura y Funcin del CPU

Arquitectura de Computadoras

23

Registros visibles al usuario


Propsito general Datos Direcciones Cdigos de condicin

Estructura y Funcin del CPU

Arquitectura de Computadoras

24

Registros de propsito general (1)


Pueden ser verdaderamente de propsito general Pueden ser restringidos Pueden usarse para datos o direccionamiento Datos Acumulador Direccionamiento Segmento

Estructura y Funcin del CPU

Arquitectura de Computadoras

25

Registros de propsito general (2)


Hacerlos de propsito general Aumentan la flexibilidad y opciones del programador Aumenta el tamao de la instruccin y complejidad Hacerlos especializados Instrucciones ms pequeas (ms rpidas) Menor flexibilidad

Estructura y Funcin del CPU

Arquitectura de Computadoras

26

Cuntos registros de propsito general?


Entre 8 - 32 Menos Ms referencias a memoria Ms No reducen notablemente las referencias a memoria Ver RISC

Estructura y Funcin del CPU

Arquitectura de Computadoras

27

Qu tan grandes?
Lo suficientemente grandes para guardar una direccin 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;

Estructura y Funcin del CPU

Arquitectura de Computadoras

28

Registros de cdigo de condicin


Conjunto de bits individuales ejemplo. Si resultado de la ltima operacin es cero Pueden leerse (implcitamente) por programas ejemplo. Salta si es cero No se puede (normalmente) establecer por programas

Estructura y Funcin del CPU

Arquitectura de Computadoras

29

Registros de estado y de control


Contador del programa Registro decodificador de instruccin MAR = Registro de direccionamiento de memoria MBR = Registro de buffer de memoria

Qu hacen todos esos?

Estructura y Funcin del CPU

Arquitectura de Computadoras

10

30

PSW (Palabra de estado del programa)


Un conjunto de bits Incluye cdigos de condicin Signo del ltimo resultado Cero Acarreo (Carry) Igualdad Sobreflujo (Overflow) Interrupciones habilitadas o deshabilitadas Supervisor
Arquitectura de Computadoras 11

Estructura y Funcin del CPU

31

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

Estructura y Funcin del CPU

Arquitectura de Computadoras

12

32

Otros registros
Puede haber registros apuntando a: PCBs (Bloques de control de procesos)
Ver S.O.

Vectores de interrupcin
Ver S.O.

El diseo del CPU y del Sistema Operativo estn fuertemente encadenados

Estructura y Funcin del CPU

Arquitectura de Computadoras

13

33

Ejemplos de organizaciones de registros (MC68000)


Registros de datos
D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 A7

Registros de direcciones

Estado del programa


Contador del programa
Registro de estado

Estructura y Funcin del CPU

Arquitectura de Computadoras

14

Ejemplos de organizaciones de registros (8086)


Registros generales Segmento

AX BX CX DX

Acumulador Base Contador Datos

CS DS SS ES

Cdigo Datos Pila Extra

Punteros e ndices

Estado del programa


Ptr. instr. Indicadores

SP BP SI DI

Puntero de pila Puntero base ndide Fuente ndice destino

Estructura y Funcin del CPU

Arquitectura de Computadoras

15

Ejemplos de organizaciones de registros (80386-Pentium)


Registros generales Segmento
AX BX CX DX

EAX EBX ECX EDX


Punteros e ndices

CS DS SS ES

Cdigo Datos Pila Extra

Estado del programa


SP BP SI DI Ptr. instr. Indicadores, (EFLAGS)

ESP EBP ESI EDI

Estructura y Funcin del CPU

Arquitectura de Computadoras

16

Ejecucin de una Instruccin


Dos pasos: Captura Ejecucin

Ciclo Fetch (Captura)

Ciclo de ejecucin

INICIO

Captura siguiente instruccin

Ejecuta instruccin

HALT

Estructura y Funcin del CPU

Arquitectura de Computadoras

17

Ciclo de Fetch (Captura)


El contador del programa (PC) tiene la direccin de la siguiente instruccin a extraer El procesador extrae la instruccin de la direccin de memoria apuntada por PC Incrementa PC Al menos que se le indique otra cosa La instruccin se carga en el registro de instruccin (IR) El procesador interpreta la instruccin y ejecuta las acciones requeridas
Estructura y Funcin del CPU Arquitectura de Computadoras 18

Ciclo de ejecucin
Procesador-memoria Transferencia de datos entre el CPU y la memoria principal Procesador E/S Transferencia de datos entre CPU y un mdulo de E/S Procesamiento de datos Alguna operacin aritmtica o lgica en los datos Control Alteracin de la secuencia de las operaciones ejemplo. jump Combinacin de los de arriba

Estructura y Funcin del CPU

Arquitectura de Computadoras

19

Ejemplo de la ejecucin de un programa


Memoria 300 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 Paso 1 Memoria 300 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 Paso 3 Memoria 300 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 941 0003 0002 Memoria Registros del CPU 3 0 0 PC 300 1 9 4 0 AC 301 5 9 4 1 IR 302 2 9 4 1 1940 940 941 0003 0002 Paso 2 Registros del CPU PC 301 AC 0005 IR 5941 3+2=5 Registros del CPU PC 300 AC 0003 IR 1940

Memoria Registros del CPU 3 0 1 PC 300 1 9 4 0 AC 301 5 9 4 1 0003 IR 302 2 9 4 1 5941 940 941 0003 0002 Paso 4

Memoria Registros del CPU 3 0 2 PC 300 1 9 4 0 AC 301 5 9 4 1 0005 IR 302 2 9 4 1 2941 940 941 0003 0002 Paso 6

Registros del CPU 330022 PC AC 0005 IR 2941

Paso 5

Estructura y Funcin del CPU

Arquitectura de Computadoras

20

Diagrama de estados del ciclo de instruccin


Captacin de instruccin Captacin del operando Alcacenamiento de operando

Varios operandos

Varios operandos

Clculo de la direccin de la instruccin

Decodificacin de la operacin de la instruccin

Clculo de la direccin del operando

Operacin con datos

Clculo de la direccin del operando

Instruccin completada Captar la siguiente instruccin

Cadena o vector de datos

Estructura y Funcin del CPU

Arquitectura de Computadoras

21

Ciclo indirecto
Puede requerir acceso a memoria para extraer operandos El direccionamiento indirecto requiere ms accesos a memoria Puede ser a travs de como un subciclo de instruccin adicional

Estructura y Funcin del CPU

Arquitectura de Computadoras

22

El ciclo de instruccin
Captacin

Interrupcin

Indirecto

Ejecucin

Estructura y Funcin del CPU

Arquitectura de Computadoras

23

Diagrama de estados del ciclo de instruccin


Indireccin
Captacin de instruccin Captacin del operando Alcacenamiento de operando

Indireccin

Varios operandos

Varios resultados

Clculo de la direccin de la instruccin

Decodificacin de la operacin de la instruccin

Clculo de la direccin del operando

Operacin con datos

Clculo de la direccin del operando

Comprobacin de interrupcin

Interrupcin

Instruccin completada Captar la siguiente instruccin

Volver a por otro dato de una cadena o un vector

No interrupcin

Estructura y Funcin del CPU

Arquitectura de Computadoras

24

Flujo de datos (Extraccin de la instruccin)


Depende del diseo del CPU En general: Extraer PC contiene la direccin de la siguiente instruccin La direccin se mueve a MAR Se pone la direccin 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 despus a IR Mientras tanto PC se incrementa a 1
Arquitectura de Computadoras 25

Estructura y Funcin del CPU

Flujo de datos (Extraccin de los datos)


Se examina IR Si es direccionamiento indirecto, se ejecuta el ciclo indirecto Los N bits ms de la derecha de MBR se transfieren a MAR La unidad de control solicita lectura de memoria El resultado (direccin del operando) se mueve a MBR

Estructura y Funcin del CPU

Arquitectura de Computadoras

26

Flujo de datos, ciclo de captacin

PC

MAR
Unidad De control

Memoria

IR

MBR
Bus de direcciones Bus de datos Bus de control 27

Estructura y Funcin del CPU

Arquitectura de Computadoras

Flujo de datos, ciclo indirecto

MAR
Unidad De control

Memoria

MBR
Bus de direcciones Estructura y Funcin del CPU Arquitectura de Computadoras Bus de datos Bus de control 28

Flujo de datos (Ejecucin)


Puede tomar varias formas Depende de la instruccin que se est ejecutando Puede incluir Lectura/Escritura de la memoria Entrada/Salida Transferencias de registros Operaciones en la ALU

Estructura y Funcin del CPU

Arquitectura de Computadoras

29

También podría gustarte