12 procesador short.ppt [modo de compatibilidad]
Post on 16-Jul-2022
9 Views
Preview:
TRANSCRIPT
El procesadorDatapath y control
Universidad de Sonora Arquitectura de Computadoras 2
Introducción� En esta parte del curso contiene:
� Las principales técnicas usadas en el diseño de un procesador.
� La construcción del datapath y del control.
� Estudiaremos la implementación de una versión reducida de MIPS.
Universidad de Sonora Arquitectura de Computadoras 3
Definiciones� El procesador o CPU (unidad central de
procesamiento) sigue las instrucciones del programa al pie de la letra. Suma y compara números, ordena activarse a los dispositivos de I/O, etc.
� El procesador consta de dos componentes:
� El datapath. Ejecuta operaciones aritméticas y lógicas.
� El control. Ordena al datapath, memoria y dispositivos de I/O lo que hay que hacer de acuerdo al programa.
Universidad de Sonora Arquitectura de Computadoras 4
MIPS simplificado� Las instrucciones se hacen en un ciclo de reloj.
� Comienzan a ejecutarse en un flanco de reloj y terminan en el siguiente flanco.
Universidad de Sonora Arquitectura de Computadoras 5
MIPS simplificado� Tres tipos de instrucciones:
1.Instrucciones de referencia a memoria: load word (lw) y store word (sw).
2.Instrucciones aritmético-lógicas: suma (add), resta (sub), and, or y set on less than (slt).
3.Instrucciones de brincos: brinca si igual (beq) y brinco incondicional (j).
Implementación� La mayoría de las instrucciones utilizan registros:
� add $t0, $t1, $t2
� mult $s1, $s2
� lw $t0, 8($t1)
� beq $t1, $t2, ciclo
� En MIPS, cada registro puede guardar un número de 4 bytes (32 bits).
� Los registros se almacenan en un componente llamado banco de registros (register file en inglés).
Universidad de Sonora Arquitectura de Computadoras 6
Universidad de Sonora Arquitectura de Computadoras 7
Banco de registros� El banco de registros permite leer o escribir un
registro.
� Para leer un registro:
� Entrada: número de registro.
� Salida: dato contenido en el registro.
� Para escribir un registro:
� Entrada: número de registro, dato y una señal de reloj para controlar la escritura.
Universidad de Sonora Arquitectura de Computadoras 8
Banco de registros� Dos puertos de lectura y uno de escritura.
Universidad de Sonora Arquitectura de Computadoras 9
Implementación� La implementación de las distintas instrucciones
tiene varias acciones en común.
� Los primeros dos pasos son iguales:
1. Enviar el PC (contador de programa) a la memoria y sacar la siguiente instrucción (ciclo de fetch).
2. Leer uno o dos registros.
� Lo siguiente depende de la clase de instrucción, pero es parecido sin importar el opcode exacto.
Universidad de Sonora Arquitectura de Computadoras 10
Implementación� Todas las instrucciones, excepto el brinco
incondicional (instrucción j), usan la ALU (unidad aritmético-lógica).
� Las instrucciones de referencia a memoria para calcular direcciones.
� Las instrucciones aritmético-lógicas para su operación.
� Los brincos para evaluar la condición.
Universidad de Sonora Arquitectura de Computadoras 11
Implementación� Después de usar la ALU:
� Las instrucciones de referencia a memoria accesan la memoria para cargar o guardar un dato.
� Las instrucciones aritmético-lógicas guardan el dato de la ALU en un registro.
� Los brincos, dependiendo de la condición, cambian el contador de programa (PC) o lo incrementan en 4.
Universidad de Sonora Arquitectura de Computadoras 12
Datapath� Realiza operaciones aritméticas y lógicas.
� Elementos del datapath:
� ALU.
� Memoria de instrucciones.
� Memoria de datos.
� Banco de registros.
� Sumadores.
Universidad de Sonora Arquitectura de Computadoras 13
Primeros elementos del datapath1. Una memoria para guardar y leer instrucciones.
2. Un registro, llamado PC (contador de programa), para guardar la dirección de la instrucción actual.
3. Un sumador para incrementar el PC.
Universidad de Sonora Arquitectura de Computadoras 14
Ejecutando instrucciones� La ejecución de una instrucción comienza con dos
pasos:
1. Obtener la instrucción de la memoria.
2. Incrementar el PC para preparar la ejecución de la instrucción siguiente.
� Los tres elementos anteriores se combinan para formar un datapath que obtiene una instrucción e incrementa el PC.
Universidad de Sonora Arquitectura de Computadoras 15
Primera parte del datapath� Ciclo de fetch. Lee una instrucción e incrementa el
PC.
Universidad de Sonora Arquitectura de Computadoras 16
Segunda parte del datapath� El siguiente paso es ver como se implementan, por
separado:
1. Instrucciones aritméticas y lógicas.
2. Instrucciones de carga y guardar (load/store).
3. Brincos.
top related