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

Imágen de pdf Tema 4 El procesador: camino de datos y unidad de control

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

Publicado el 5 de Julio del 2017
678 visualizaciones desde el 5 de Julio del 2017
1,4 MB
75 paginas
Creado hace 15a (14/11/2008)
Tema 4
El 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

Memoria deinstruccionesInstrucciónDirecciónMemoria de DatosDirecciónDatosDatosnº de registronº de registronº de registroRegistrosPCALU 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 1Estado 2Ciclo de relojLógica combinatoria 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

0x40000000 000000010100101101001000001000000x40000004 100101010010101000000000000000000x40000008 000100010100101111111111111110110x4000000C 000000001000010000010001000010100x40000004 PC00000001010010110100100000100000 IR0x40000000 00000001010010110100100000100000 0x40000008 000100010100101111111111111110110x4000000C 000000001000010000010001000010100x40000004100101010010101000000000000000000x40000004 PC1001010100101010000000000000000 IR0x40000000 000000010100101101001000001000000x40000004 100101010010101000000000000000000x40000008 000100010100101111111111111110110x4000000C 000000001000010000010001000010100x40000008 PC1001010100101010000000000000000 IRMemoria Procesador 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

Memoria deinstruccionesInstrucciónDirecciónPCSumador4 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ónEscribirRegReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROS3Operación de la ALUCeroResultadode la ALUALU 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

Memoria de DatosDirecciónDato aescribirDatoleídoInstrucción16323Operación de la ALUEscribirRegLeerMemEscribirMemReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROSCeroResultadode la ALUALUExtensiónde signo 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

Instrucción1632EscribirRegReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROS3Operación de la ALUCeroALUExtensiónde signoDesp.2 bits ala izq.ResultadoSumadorPC +4 del camino de datos de instruccionesDestino saltoDecidir si se hace el salto 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ón1632EscribirRegFuenteALUMem2regReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROSMemoria de DatosDirecciónDato aescribirDatoleído3Operación de la ALULeerMemEscribirMemCeroResultadode la ALUALUExtensiónde signoMuxMux Diseño de un camino de datos sencillo

Incorporamos gestión de PC

1632EscribirRegFuenteALUMem2regReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROSMemoria de DatosDirecciónDato aescribirDatoleído3Operación de la ALULeerMemEscribirMemCeroResultadode la ALUALUExtensiónde signoMuxMuxMemoria deinstruccionesInstrucciónDirecciónde lecturaPCSumador4 Diseño de un camino de datos sencillo
Añadimos saltos condicionales

1632EscribirRegFuenteALUMem2regOrigen del PCReg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROSMemoria de DatosDirecciónDato aescribirDatoleído3Operación de la ALULeerMemEscribirMemCeroResultadode la ALUALUExtensiónde signoMuxMuxMuxMemoria deinstruccionesInstrucciónDirecciónde lecturaPCSumador4Desp.2 bits ala izq.ResultadoSumador Inconvenientes de la implementación
monociclo

 El ciclo de reloj está definido por la instrucción

más lenta

 No es posible reutilizar ninguna unidad funcional

 Estos inconvenientes se verían agravados en

una arquitectura más compleja que la
arquitectura MIPS

Evaluación del rendimiento

√ Supóngase los tiempos de ejecución de las unidades

funcionales siguientes:
 Acceso a memoria: 2ns

 ALU y sumadores: 2ns

 Acceso a registros: 1ns

√ ¿Cúal de las siguientes realizaciones será más rápida?

 Una realización en la que cada instrucción se ejecuta en un ciclo

de tamaño fijo (cada instrucción tarda lo que tardaría la más
lenta).

 Una realización donde cada instrucción se ejecuta en un ciclo de

longitud variable (cada instrucción tarda únicamente lo
necesario)

Cálculo del ciclo de reloj

2 ns2 ns

2 ns2 ns

2 ns2 ns

1 ns1 ns

2 ns2 ns

2 ns2 ns

Reg. delectura 1Dato a escribirDatoleído 1Datoleído 2Reg. delectura 2Reg. deescrituraREGISTROSCeroResultadode la ALUALUExtensiónde signoControlMuxMuxMemoria deinstruccionesInstrucciónDirecciónde lecturaPCSumador4Desp.2 bits ala izq.Desp.2 bits ala izq.Inst. [25-21]Inst. [20-16]Inst. [15-11]Inst. [31-26]Inst. [25-0]2628Dirección de jump. [31-0]PC + 4 [31-28]1632Controlde laALUResultadoSumadorInst. [15-0]Inst. [5-0]Memoria de DatosDirecciónDato aescribirDatoleídoMuxMuxMuxEscribirRegSaltoIncondRegDestFuente ALUSalt CondALUopMem2regLeerMemEscribirMem Cálculo del ciclo de reloj

Tipo de
instrucción

Aritmética

lw

sw

Cargar
instrucción

Lectura de
registros

Cargar
instrucción

Lectura de
registros

Cargar
instrucción

Lectura de
registros

Unidades funcionales utilizadas por cada tipo de instrucción

ns

Escritura de
registros

Lectura
memoria

Escritura de
registros

Escritura en
memoria

ALU

ALU

ALU

ALU

6

8

7
  • Links de descarga
http://lwp-l.com/pdf4909

Comentarios de: Tema 4 El 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