12 Procesador short.ppt [Modo de compatibilidad]
Transcript of 12 Procesador short.ppt [Modo de compatibilidad]
![Page 1: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/1.jpg)
El procesadorDatapath y control
![Page 2: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/2.jpg)
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.
![Page 3: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/3.jpg)
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.
![Page 4: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/4.jpg)
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.
![Page 5: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/5.jpg)
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).
![Page 6: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/6.jpg)
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
![Page 7: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/7.jpg)
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.
![Page 8: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/8.jpg)
Universidad de Sonora Arquitectura de Computadoras 8
Banco de registros� Dos puertos de lectura y uno de escritura.
![Page 9: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/9.jpg)
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.
![Page 10: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/10.jpg)
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.
![Page 11: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/11.jpg)
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.
![Page 12: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/12.jpg)
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.
![Page 13: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/13.jpg)
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.
![Page 14: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/14.jpg)
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.
![Page 15: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/15.jpg)
Universidad de Sonora Arquitectura de Computadoras 15
Primera parte del datapath� Ciclo de fetch. Lee una instrucción e incrementa el
PC.
![Page 16: 12 Procesador short.ppt [Modo de compatibilidad]](https://reader036.fdocuments.ec/reader036/viewer/2022071623/62d2dfe4ae41920c2b643aae/html5/thumbnails/16.jpg)
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.