estructura y funcion del cpu

29
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

Upload: devsco63

Post on 01-Jul-2015

1.731 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 1

Organización y Arquitectura de Computadoras

Capítulo 11Estructura y función del CPU

Page 2: Estructura y funcion 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

Page 3: Estructura y funcion del cpu

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

Page 4: Estructura y funcion del cpu

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

Page 5: Estructura y funcion del cpu

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

Page 6: Estructura y funcion del cpu

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

Page 7: Estructura y funcion del cpu

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

Page 8: Estructura y funcion del cpu

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;

Page 9: Estructura y funcion del cpu

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

Page 10: Estructura y funcion del cpu

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?

Page 11: Estructura y funcion del cpu

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

Page 12: Estructura y funcion del cpu

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

Page 13: Estructura y funcion del cpu

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

Page 14: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 14

Ejemplos de organizaciones de registros (MC68000)

D0D1D2D3D4D5D6D7

A0A1A2A3A4A5A6A7A7’

Registro de estado

Contador del programa

Estado del programa

Registros de datos Registros de direcciones

Page 15: Estructura y funcion del cpu

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.

AXBXCXDX

SPBPSIDI

CSDSSSES

Registros generales

Punteros e índices

Segmento

Estado del programa

Page 16: Estructura y funcion del cpu

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.

EAXEBXECXEDX

ESPEBPESIEDI

CSDSSSES

Registros generales

Punteros e índices

Segmento

Estado del programa

DX

CX

BX

AX

DI

SI

BP

SP

Page 17: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 17

INICIO HALTCapturasiguiente

instrucción

Ejecutainstrucción

Ciclo Fetch (Captura) Ciclo de ejecución

Ejecución de una Instrucción

• Dos pasos:– Captura– Ejecución

Page 18: Estructura y funcion del cpu

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

Page 19: Estructura y funcion del cpu

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

Page 20: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 20

3 0 2Memoria Registros del CPU Registros del CPU

Registros del CPU Registros del CPU

Registros del CPU Registros del CPU

Memoria

Memoria Memoria

Memoria

Memoria

300301302

940941

Paso 1

PCACIR

301302

940941

300

300301302

940941

300301302

940941

300301302

940941

300301302

940941

Paso 3

Paso 5

Paso 2

Paso 4

Paso 6

1 9 4 05 9 4 1

0 0 0 30 0 0 2

1 9 4 02 9 4 1

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 00 0 0 3

0 0 0 35 9 4 1

0 0 0 52 9 4 1

0 0 0 55 9 4 1

0 0 0 52 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

Page 21: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 21

Diagrama de estados del ciclo de instrucción

Captaciónde instrucción

Cálculo de ladirección de

la instrucción

Decodificaciónde la operación

de la instrucción

Captacióndel operando

Cálculo de ladirección del

operando

Operacióncon datos

Alcacena-miento de operando

Cálculo de ladirección del

operando

Variosoperandos

Variosoperandos

Instrucción completadaCaptar la siguiente instrucción

Cadena o vectorde datos

Page 22: Estructura y funcion del cpu

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

Page 23: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 23

El ciclo de instrucción

Interrupción Indirecto

Captación

Ejecución

Page 24: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 24

Diagrama de estados del ciclo de instrucción

Captaciónde

instrucción

Cálculo de ladirección de

la instrucción

Decodificaciónde la operación

de la instrucción

Captacióndel operando

Cálculo de ladirección del

operando

Operacióncon datos

Alcacena-miento de operando

Cálculo de ladirección del

operando

Variosoperandos

Variosresultados

Instrucción completadaCaptar la siguiente instrucción

Volver a por otro dato deuna cadena o un vector

Comproba-ción de

interrupción

Interrupción

Nointerrupción

IndirecciónIndirección

Page 25: Estructura y funcion del cpu

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

Page 26: Estructura y funcion del cpu

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

Page 27: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 27

Flujo de datos, ciclo de captación

IR MBR

PC

UnidadDe control

MAR

Bus dedirecciones

Bus dedatos

Memoria

Bus decontrol

Page 28: Estructura y funcion del cpu

Estructura y Función del CPU

Arquitectura de Computadoras 28

Flujo de datos, ciclo indirecto

MBR

UnidadDe control

MAR

Bus dedirecciones

Bus dedatos

Memoria

Bus decontrol

Page 29: Estructura y funcion del cpu

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