Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
El Procesador por Mind Map: El Procesador

1. Diseño de un Procesador

1.1. Módulos

1.1.1. Ruta de Datos

1.1.2. Unidad de control

1.2. Circuito digital

1.2.1. Combinacional + secuencial

1.3. Sistema Combinacional

1.4. Sistema Secuencial

2. Procesador secuencial

2.1. Hasta que no termina de ejecutar una instrucción no comienza a ejecutar la siguiente

2.2. Procesador monociclo

2.2.1. Cada instrucción se completa en un único ciclo de reloj

2.2.2. CPI = 1

2.2.3. La duración del ciclo de reloj viene fijada por la instrucción que más tarde en ejecutarse

2.3. Procesador multiciclo

2.3.1. Cada instrucción puede tardar más de un ciclo en ejecutarse

2.3.2. CPI > 1

2.3.3. La duración del ciclo de reloj es menor que para monociclo

2.3.4. Se establece que la duración de un ciclo = duración de la etapa más larga

3. nanoMIPS

3.1. Repertorio de instrucciones

3.1.1. Acceso a memoria

3.1.1.1. LW, SW : tipo I

3.1.2. Operaciones aritmético-lógicas

3.1.2.1. ADD, SUB, AND, OR, SLT: tipo R

3.1.3. Control de flujo

3.1.3.1. BEQ: tipo I

3.2. ruta de datos monociclo

3.2.1. Contador de programa : pc

3.2.2. Memorias separadas de instrucciones y de datos:

3.2.3. banco de 32 registros

3.2.3.1. 4 entradas: 1 entrada de datos de 32 bits y 3 entradas de 5 bits para la identificación de registros 2 salidas: dos salidas de datos de 32 bits

3.2.4. Dos sumadores

3.2.4.1. uno para sumar 4 al PC y otro para el desplazamiento relativo al PC

3.2.5. ALU

3.2.5.1. BEQ, hacer una resta y comprobar si el resultado es cero

3.2.6. Extensor de signo

3.2.7. Desplazador a la izquierda

3.3. unidades de control monociclo

3.3.1. Unidad de control GLOBAL

3.3.1.1. Entrada: Opcode

3.3.1.2. Salidas: Genera los valores adecuados para las diferentes señales de control

3.3.1.3. PCSrc no se genera directamente

3.3.1.4. Se suele diseñar mediante decodificadores y puertas OR

3.3.2. Unidad de control LOCAL

3.3.2.1. Entradas <--- ALUOp, Funct

3.3.2.2. Salida ---> Genera la señal ALUControl

3.3.3. Decodificación Multinivel

3.4. ruta de datos multiciclo

3.4.1. Etapa F → Registro de instrucción IR

3.4.2. Etapa D → Lectura de operandos, A y B

3.4.3. Etapa X → Operandos fuente ALU en A y B

3.4.4. Etapa M → De memoria a MDR

3.4.5. Etapa W → De ALUOut a registro

3.4.6. No son necesarios sumadores extra

3.4.7. No son necesarias dos memorias separadas

3.4.8. Un mismo recurso puede usarse en diferentes etapas de la ejecución de una instrucción

3.5. unidades de control multiciclo

3.5.1. Unidad de control global

3.5.1.1. Circuito secuencial

3.5.1.2. Entrada ← opcode

3.5.1.3. Se puede diseñar como máquina de estados o mediante microprograma

3.5.2. Unidad de control local de la ALU

4. Unidades de control como máquina de estados

4.1. También llamada cableada

4.2. 8 estados que se ejecutan en un máximo de cinco ciclos

4.3. Los ciclos F y D se ejecutan para todas las instrucciones por igual

4.4. Cada tipo de instrucción evoluciona por unos estados diferentes

4.5. Problemas cuando se modifica una única instrucción, hay que re-diseñar toda la unidad de control

5. Excepción Vs Interrupción

5.1. Excepción: evento no planificado que interrumpe la ejecución de un programa

5.2. Interrupción: una excepción que proviene de fuera del microprocesador

6. Componentes hardware necesarios

6.1. Registro Exception

6.2. EPC

6.3. Restador

7. Objetivos

7.1. ruta de datos

7.2. ruta de control

7.3. Arquitectura MIPS simplificada y nanoMIPS

8. Ejecución de una instrucción

8.1. Fetch (F)

8.2. Decode (D)

8.3. Execution (X)

8.4. Memory Access (M)

8.5. Writeback (W)

9. Diseño de la ruta de datos de un procesador multiciclo

9.1. Se utiliza una división del trabajo en etapas típica de los procesadores con repertorio RISC

9.2. Cada etapa está relacionada con el hardware de la ruta de datos que se utiliza

9.3. Cada etapa debe completarse en 1 ciclo de reloj

9.4. Se reduce el periodo del procesador

9.5. El CPI medio será mayor que 1

9.6. Cada instrucción tarda en ejecutarse tantos ciclos como sea necesario

10. Unidades de control microprogramada

10.1. Memoria ROM que almacena vectores con el valor de las señales de control

10.2. Cada palabra es una microinstrucción

10.3. El conjunto de microinstrucciones que permiten ejecutar una instrucción es un microprograma

10.4. Codificación horizontal

10.5. Codificación vertical

11. Tipos de excepciones

11.1. Interrupciones de E/S

11.2. Llamadas al Sistema Operativo

11.3. Puntos de ruptura

11.4. Códigos de operación inválidos

11.5. Overflow o desbordamiento en la ALU

11.6. Fallos de página

11.7. Accesos a memoria no alineados

11.8. Violación de zonas protegidas de memoria

11.9. Fallos de hardware

11.10. Fallos de alimentación

12. Señales de control

12.1. ALU_overflow e Ilegal_opcode

12.2. Exception: para escribir el código de las excepciones en el registro Exception

12.3. ExceptionWrite y EPCWrite: para controlar la escritura en los dos nuevos registros

12.4. PCWrite: para controlar la carga del PC