Está en la página 1de 30

Ciclo de Instruccin

En su operacin bsica todos los


computadores modernos siguen un proceso
que ha permanecido sin muchos cambios
desde que Von Neumann introdujo su
modelo. A este proceso lo llamamos Ciclo
de Instruccin
Todas las computadoras tienen dos
componentes bsicos:
CPU
Memoria

Ciclo de Instruccin
La funcin del CPU es ejecutar programas
que estn almacenados en la memoria
principal, eso se logra siguiendo los
siguientes pasos:
Fase de Bsqueda: el CPU lee la instruccin
desde memoria.
Fase de descodificacin: Decodifica el
OPCODE de la instruccin.
Fase de Ejecucin: ejecuta la instruccin.

Este ciclo se repite con cada instruccin


de un programa almacenado en memoria.

Ciclo de Instruccin

Ciclo de Instruccin
Una vez que la instruccin ha sido cargada
en el IR y la Unidad de Control la ha
decodificado determinando las acciones a
seguir, comienza el ciclo de ejecucin
Los pasos que se siguen para realizar un
ciclo de instruccin dependen del tipo de
instruccin que se este procesando
Depende del cdigo de operacin (opcode)

Procesador 8085
Ejemplo: Instruccin LDA address
Esta instruccin carga el registro A con un dato
almacenado en memoria. La direccin del dato
es address.
El procesador ejecuta la fase de bsqueda:
T1: Bus Direccin IP
T2: IP IP+1
T3: IR cdigo de operacin
Decodifica cdigo de operacin
Ejecuta la instruccin

LDA address: Fase de Ejecucin


Las micro-operaciones generadas por la
unidad de control son:
T1: Bus Direccin IP
T2: IP IP + 1
T3: Z B2
T1: Bus Direccin IP
T2: IP IP + 1
T3: W B3
T1: Bus Direccin WZ
T2 y T3: ACC dato

Ciclo de Instruccin sin pipeline

PROCESADORES SIN TUBERIAS

Mejora del Ciclo de Instruccin


Los primeros microprocesadores procesaban
totalmente una instruccin antes de continuar
con la siguiente.
El procesador busca una instruccin la
decodifica y la ejecuta, luego pasa a la siguiente
instruccin repitiendo nuevamente el mismo
proceso de bsqueda, decodificacin y
ejecucin.
Observe que se sub-utilizaba el bus entre el
CPU y la memoria ya que este solo estaba
ocupado en uno de los tres pasos.

Mejora del Ciclo de Instruccin


Por otra parte para los procesadores modernos, se ha
desarrollado la tcnica de tuberas (pipelines).
Las tuberas son la forma ms comn de implementar
procesadores hoy en da porque incrementan la
capacidad del sistema.
La idea detrs de las tuberas es que mientras se
ejecuta la primera instruccin al mismo tiempo
decodifica la segunda y busca la tercera.
De esta manera se sobrelapan los procesos.

Pipeline de Mltiples Etapas


Las primeras tuberas introducidas eran
de tres etapas.
Estas utilizan todos los recursos del
sistema pero puede ocurrir conflictos que
hace que las instrucciones no sean
ejecutadas hasta que lo haya sido la
anterior.
As el procesador puede ejecutar una
instruccin por ciclo y no cada 3 como era
anteriormente.

Pipeline de Mltiples Etapas


Sabemos que con la tcnica pipeline el
procesador puede ejecutar todos los pasos de
los ciclos de instruccin en paralelo.
Por ejemplo, el Procesador Intel 80386 usa un
ciclo de ejecucin de seis etapas.
Las seis etapas y las partes del procesador que
las ejecutan se identifican en la siguiente
transparencia.
Para efectos de la explicacin que vamos hacer
asumir que cada etapa de ejecucin en el
procesador requiere de un solo perodo de reloj.

Pipeline de Mltiples Etapas


Unidad de Interfase de Bus: accesa memoria y provee
entrada-salida.
Unidad de Pre-busqueda: recibe cdigo de mquina
proporcionada por la unidad de interfase de bus y la inserta
en la cola de instrucciones.
Unidad de decodificacin de instrucciones: decodifica
instrucciones de la cola de instrucciones generando
microcdigo.
Unidad de ejecucin: ejecuta el microcdigo generado por
la unidad de decodificacin.
Unidad de Segmentacin: convierte direcciones lgicas a
direcciones lineales.
Unidad de pagina: convierte direcciones lineales en
direcciones fsicas y mantiene una lista de las pginas
recientemente accesadas.

Ciclo de Instruccin con pipeline

PROCESADORES CON TUBERIAS

Arquitectura Superescalar
En la actualidad se desarrollan procesadores
usando la tecnologa superescalar .
Un procesador superescalar tiene dos o ms
tuberas de ejecucin haciendo posible que
mltiples instrucciones se encuentren en la etapa de
ejecucin al mismo tiempo.
Para n tuberas, n instrucciones pueden ejecutase
durante el mismo ciclo de reloj.
Pentium (2 tuberas) 2 instrucciones por ciclo.
Pentium Pro (3 tuberas) 3 instrucciones por ciclo.
Pentium 4 ejecuta hasta 6 instrucciones por ciclo.

Ejemplo
Introduzcamos una segunda tubera a la ya
existente tubera de 6 etapas y asumamos que
la etapa S4 requiere dos ciclos de reloj.
En el cuadro que mostraremos, las instrucciones
impares entran en la tubera u y las pares entran
en la tubera v.
Nos damos cuenta que la presencia de la
segunda tubera elimina los ciclos de espera.

Memoria Fsica 8088


FFFFFH

8 bits

1 MB

00000H

Memoria Fsica 8086


FFFFFH

00001H
D15

FFFFEH

8 bits

8 bits

512KB

512KB

Banco 1

Banco 0

00000H
D8

D7

D0

Memoria Fsica 80286


FFFFFFH

FFFFFEH

8 bits

8 bits

000001H
D15

8 MB

8 MB

Banco 1

Banco 0

D8

000000H
D7

D0

Memoria Fsica 80386


FFFFFFFE

FFFFFFFF

0000000
7
00000003
D31

FFFFFFFD

FFFFFFFC

1G

1G

1G

Banco

Banco

Banco

00000006

00000005

00000002
D24

D23

1G

Banco

00000004

00000001
D16

D15

00000000
D8

D7

D0

MICP 8086: Arquitectura Interna

MICROPROCESADOR DE 16 BITS.

MICP 8086: Arquitectura Interna


Tiene dos unidades de procesamiento
- Unidad de Bus
- Unidad de ejecucin
La unidad de Bus tiene una cola de
instrucciones de 6 bytes.
La cola de instrucciones alimenta a la
unidad de ejecucin que es la que
decodifica y ejecuta.

MICP 80286: Arquitectura Interna


Presenta cuatro unidades de procesamieto
- Unidad de Bus
- Unidad de Instrucciones
- Unidad de Ejecucin
- Unidad de Direcciones
Las cuatro unidades de procesamiento son
independientes.
Este paralelismo ayuda a mejorar el rendimiento del
microprocesador.

MICP 80386DX: Arquitectura


Interna

Microprocesador 80386DX
Presenta 6 unidades de procesamiento
- Unidad de Bus
- Unidad de Pre-bsqueda
- Unidad de Decodificacin
- Unidad de Ejecucin
- Unidad de Segmentacin
- Unidad de Paginacin

Esto permite la ejecucin de instrucciones


mediante la tcnica de tuberas (pipeline)
conocido tambin como procesamiento en
paralelo.

Microprocesador 80386DX
Caracteristicas
Microprocesador de 32 bits
Tipo de Datos de 8, 16, 32 bits
8 Registros de Propsito General GPR (32-bit)

Espacio de Direcciones Grande


4 GB de Memoria Fsica
4 GB Tamao Mximo de Segmento
NOTA: 1MB 1024 KB, 1GB 1024MB, 1TB
1024GB.

Microprocesador 80386DX
Unidad de Pgina+Unidad de Segmentacin
Proveen el Servicio Para Administrar Memoria
Provee 4 Niveles de Proteccin durante ciclos de bus
100% compatible con 80286

Mas Caractersticas
Modo Real, Modo Protegido, Modo Virtual 8086
Optimizado para un mejor rendimiento
Ejecucin de Instrucciones mediante tuberas
Integra en el chip cachs para conversin de direcciones
20, 25, and 33 MHz clock

132 pin Grid Array Package