PDF de programación - Tema 4 Procesador: camino de datos y unidad de control

<<>>
Imágen de pdf Tema 4 Procesador: camino de datos y unidad de control

Tema 4 Procesador: camino de datos y unidad de controlgráfica de visualizaciones

Publicado el 5 de Julio del 2017
666 visualizaciones desde el 5 de Julio del 2017
5,0 MB
48 paginas
Tema 4
Procesador: camino de
datos y unidad de control

Índice

Introducción
Estructura básica de la CPU: camino de datos y

control

El ciclo de instrucción
Diseño de un procesador monociclo
Descomposición de la ejecución en etapas
Realización multiciclo
Diseño de la unidad de control
Procesamiento de excepciones



Introducción
En este tema se estudia la Unidad Central de Procesamiento (CPU)

Camino de datos:

Es la sección del computador encargada de manipular y transformar los

datos procedentes de la memoria o los registros internos, para obtener los
resultados

Su labor es soportar el conjunto de operaciones que precisan las

instrucciones del repertorio que es capas de interpretar la unidad de control

Unidad de control:

Es la sección del computador encargada de interpretar las instrucciones del

programa y gobernar la ejecución de las mismas

La organización de los procesadores ha evolucionado con el paso
de los años, guiada por el desarrollo tecnológico y la necesidad de
obtener altas prestaciones

En este tema se analizan las ideas básicas comunes a todos los
procesadores, que sientan las bases para poder comprender los
avances en arquitectura de computadores

Introducción
El procesador es el que se encarga de ejecutar las

instrucciones especificadas por el programa.

Funciones básicas:

Captar instrucciones. El procesador debe leer instrucciones

de la memoria

Interpretar instrucciones. La instrucción debe decodificarse

para determinar qué acción es necesaria

Captar datos. La ejecución puede exigir leer datos de la

memoria o de un módulo de E/S

Procesar datos. La ejecución de una instrucción puede
exigir llevar a cabo alguna operación aritmética o lógica
Escribir datos. Los resultados de una ejecución pueden

tener que ser escritos en la memoria o en un módulo de E/S



Estructura básica de un procesador

El procesador se compone de

varias partes:

1. La unidad de control

2. La unidad aritmético-lógica

3. Un banco de registros

4. Otros registros internos, algunos

de los más importantes:
1. El contador de programa (PC)
2. El registro de instrucciones (IR)

Estructura básica de un procesador

Vamos a construir un camino de datos y su unidad de

control para dos realizaciones diferentes de un
subconjunto del repertorio de instrucciones del MIPS:
Instrucciones de acceso a memoria: lw, sw
Instrucciones aritmético-lógicas: add, sub, or, slt
Instrucción de salto condicional: beq
Instrucción de salto incondicional: j

PC

Dirección

Instrucción

Memoria de
instrucciones

Datos

Registros

nº de registro
nº de registro
nº de registro

ALU

Dirección

Memoria
de Datos

Datos



Estructura básica de un procesador

Metodología de sincronización

Las unidades funcionales se clasifican en dos tipos:

combinacionales y secuenciales

La metodología de sincronización define cuándo pueden leerse y

escribirse la diferentes señales

Asumimos sincronización por flancos

Estado 1

Lógica combinatoria

Estado 2

Ciclo de reloj

El ciclo de instrucción

El procesamiento que requiere una instrucción se denomina

ciclo de instrucción.

Ciclo básico de instrucción:

INICIO

Captura de
instrucción

Ciclo de captación

Ejecución de
la instrucción

Ciclo de ejecución

FIN



El ciclo de instrucción
Para el subconjunto de instrucciones MIPS, los dos primeros pasos son

idénticos:
Usar el contenido del PC para cargar, desde la memoria que contiene el

código, la siguiente instrucción

Leer uno o dos registros, utilizando para ello los campos de la instrucción

específicos para seleccionarlos

Memoria Procesador

0x40000000 00000001010010110100100000100000
0x40000004 10010101001010100000000000000000
0x40000008 00010001010010111111111111111011
0x4000000C 00000000100001000001000100001010

0x40000004 PC

00000001010010110100100000100000 IR

0x40000000 00000001010010110100100000100000
0x40000004
10010101001010100000000000000000
0x40000008 00010001010010111111111111111011
0x4000000C 00000000100001000001000100001010



0x40000004 PC

1001010100101010000000000000000 IR

0x40000000 00000001010010110100100000100000
0x40000004 10010101001010100000000000000000
0x40000008 00010001010010111111111111111011
0x4000000C 00000000100001000001000100001010

0x40000008 PC

1001010100101010000000000000000 IR

Diseño de un camino de datos sencillo

Procesador monociclo:

Comenzaremos por los elementos básicos y sus

funciones asociadas

Veremos los elementos necesarios para

implementarlos

Veremos un conjunto de instrucciones básico
Veremos como implementar estas instrucciones



Diseño de un camino de datos sencillo

Contador de programa:

Cada instrucción está en una dirección de memoria dada
Almacenamos la dirección en el registro PC
Tras procesar una instrucción avanzamos el contador hasta la

siguiente instrucción

Sumador

4

PC

Dirección

Instrucción

Memoria de
instrucciones

Diseño de un camino de datos sencillo

Operaciones tipo R:

Involucran tres registros: dos de lectura y uno de

escritura

Usan la ALU para realizar las operaciones

Instrucción

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

3

Operación de la ALU

ALU

Cero
Resultado
de la ALU



Diseño de un camino de datos sencillo

Acceso a memoria:

Instrucciones lw y sw
La dirección se indica con un registro más un

desplazamiento de 16 bits con signo

El desplazamiento se extiende a 32 bits

lw $t0, 8($s0)

100011

10000

01000

0000000000001000

sw $t0, 32($s0)

101011

10000

01000

0000000000100000

Diseño de un camino de datos sencillo

Instrucción

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

16

3

Operación de la ALU

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

ALU

Cero
Resultado
de la ALU

32

Extensión
de signo

EscribirMem

Dato
leído

Dirección

Memoria
de Datos

Dato a
escribir

LeerMem



Diseño de un camino de datos sencillo

Saltos condicionales:

Evalúan si dos registros contienen ó no el mismo

valor

Si la condición se cumple aplican el salto
El salto es relativo con signo
Los 16 bits se extienden a 32 y se desplazan 2
posiciones a la izquierda para direccionar sólo
palabras completas

El PC ya se ha actualizado a PC + 4

Diseño de un camino de datos sencillo

PC +4 del camino de datos de instrucciones

Desp.
2 bits a
la izq.

Resultado
Sumador

Destino salto

3

Operación de la ALU

Cero

ALU

Decidir si se
hace el salto

Instrucción

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

16

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

32

Extensión
de signo



Diseño de un camino de datos sencillo

Todo junto:

Para construir el camino de datos hemos de

combinar los elementos explicados anteriormente

Intentaremos reutilizar parte del hardware
El hardware compartido selecciona los datos

mediante multiplexores

Parte del hardware no se podrá reutilizar y habrá que

replicarlo

Diseño de un camino de datos sencillo

Aritmética + Acceso a Memoria

Instrucción

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

16

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

Fuente
ALU

M
u
x

32

Extensión
de signo

3

Operación de la ALU

ALU

Cero
Resultado
de la ALU

EscribirMem

Mem2reg

Dato
leído

Dirección

Memoria
de Datos

Dato a
escribir

LeerMem

M
u
x



Diseño de un camino de datos sencillo
Incorporamos gestión de PC

P
C

4

Dirección
de lectura

Instrucción

Memoria de
instrucciones

Sumador

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

16

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

Fuente
ALU

M
u
x

32

Extensión
de signo

3

Operación de la ALU

ALU

Cero
Resultado
de la ALU

EscribirMem

Mem2reg

M
u
x

Dato
leído

Dirección

Memoria
de Datos

Dato a
escribir

LeerMem

Diseño de un camino de datos sencillo
Añadimos saltos condicionales

Sumador

4

P
C

Dirección
de lectura

Instrucción

Memoria de
instrucciones

Reg. de
lectura 1
Reg. de
lectura 2
Reg. de
escritura
Dato a
escribir

EscribirReg

16

S
O
R
T
S
G
E
R

I

Dato
leído 1

Dato
leído 2

Fuente
ALU

M
u
x

32

Extensión
de signo

Origen del PC

M
u
x

Resultado

Sumador

Desp.
2 bits a
la izq.

3 Operación de la ALU

ALU

Cero
Resultado
de la ALU

EscribirMem

Mem2reg

Dato
leído

Dirección

Memoria
de Datos

Dato a
escribir

LeerMem

M
u
x



Diseño de la unidad de control
Realización monociclo: señales de control

Diseño de la unidad de control
Activación de las líneas determinada por el código de operación:



Diseño de la unidad de control
Pasos en la realización de una instrucción tipo R (I):

Diseño de la unidad de control
Pasos en la realización de una instrucción tipo R (II):



Diseño de la unidad de control
Pasos en la realización de una instrucción tipo R (III):

Diseño de la unidad de control
Pasos en la realización de una instrucción tipo R (IV):



Diseño de la unidad de control
Pasos en la realización de una instrucción lw (I):

Diseño de la unidad de control
Pasos en la realización de una instrucción lw (II):



Diseño de la unidad de c
  • Links de descarga
http://lwp-l.com/pdf4905

Comentarios de: Tema 4 Procesador: camino de datos y unidad de control (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad