El Procesador

Get Started. It's Free
or sign up with your email address
Rocket clouds
El Procesador by Mind Map: El Procesador

1. NanoMips

1.1. Ruta de Datos

1.1.1. Combinacional

1.2. Ruta de Control

1.2.1. Secuencial ó combinacional

2. Ejecución Instrucción Etapas NanoMips

2.1. Fetch (F)

2.1.1. Buscar memoria instrucción apuntada PC

2.2. Decode (D)

2.2.1. Decodificación instrucción

2.3. Execution (X)

2.3.1. Ejecución operación (opcode)

2.4. Memory Access (M)

2.4.1. Acceso a memoria leer/escribir

2.5. WriteBack (W)

2.5.1. vuelca resultado a registro

3. Tipo Instrucciones

3.1. Instrucción tipo I

3.1.1. Load

3.1.1.1. F - D - X - M - W

3.1.2. Store

3.1.2.1. F - D - X - W

3.1.3. Aritmético-Lógicas

3.1.3.1. F - D - X - W

3.1.4. Saltos Condicionales

3.1.4.1. F - D - X

3.1.5. Saltos Incondicionales

3.1.5.1. F - D - X

3.2. Instrucciones tipo R

3.2.1. Aritmético-Lógicas

3.2.1.1. F - D - X - W

3.3. Instrucciones tipo J

3.3.1. Saltos Incondicionales con Direccionamiento

3.3.1.1. F - D - X

4. Diseño Procesador

4.1. Circuito Digital

4.1.1. Combinacional

4.1.2. Secuencial

4.2. Sistema Combinacional

4.2.1. Salidas en función de entradas

4.3. Sistema Secuencial

4.3.1. Salida en función de la salida de otra operación, depende estado anterior

4.3.2. Gobernados por señal de reloj

5. Procesador Secuencial

5.1. Una instrucción a la vez

5.2. Según método de temporización

5.2.1. Procesador Monociclo

5.2.1.1. CPI=1

5.2.1.2. Duración ciclo reloj fijada por la instrucción que tarda más

5.2.2. Procesado Multiciclo

5.2.2.1. CPI>1

5.2.2.2. Duración ciclo de reloj menos que monociclo

5.3. Utilización recursos según procesador

5.3.1. Monociclo

5.3.1.1. Ciclo demora tiempo instrucción mas larga

5.3.2. Multiciclo

5.3.2.1. Ciclo más rápido, da numero de ciclos que necesita cada instrucción

6. Repertorio Instrucciones

6.1. Formato

6.2. Acceso a memoria

6.2.1. LW, SW (I)

6.3. Operaciones Aritmético-Lógicas

6.3.1. ADD, SUB, AND, OR, SLT(R)

6.4. Control de Flujo

6.4.1. BEQ (I)

7. Procesadores Secuenciales: Funcionamiento, Ruta, UC

7.1. Análisis de Intrucciones

7.2. Metodología de Temporización

7.3. Selección de módulos necesarios

7.4. Ensamblar ruta de datos

7.5. Determinar puntos de control

7.6. Diseñar unidad de control

7.7. Optimización segmentación

8. Diseño Procesador Monociclo

8.1. Diseño de la ruta de Datos

8.1.1. Contador Programa

8.1.2. Memorias Instrucciones

8.1.3. Memoria Datos

8.1.4. Banco 32 registros

8.1.4.1. 4 entradas

8.1.4.2. 2 salidas

8.1.5. ALU de enteros

8.1.6. Extensor de signo

8.1.7. Desplazador a la Izquierda

8.2. Diseño de controlador

8.2.1. Unidad de Control Global

8.2.1.1. Decodifica Opcode

8.2.1.2. Configuración ruta de datos

8.2.2. Unidad de Control Local para ALU

8.2.2.1. Decodifica Funct

8.2.2.2. Genera señal ALU control

8.2.3. Decodificación Multinivel

8.2.3.1. U.C global decodifica opcode

8.2.3.2. Intrucción R, control local ALU decodifica Funct

8.3. Ruta de Datos y Unidad de Control

8.3.1. 8 puntos de control

9. Diseño Procesador Multiciclo

9.1. Nacen porque monociclos no son eficientes

9.1.1. Adaptación ciclo de reloj para ejecución instrucción más larga

9.2. Imposible optimizar ruta de datos

9.3. División de trabajo en etapas RISC

9.4. Cada etapa relacionada con el hardware

9.5. Reduce periodo procesador

9.6. CPI mayor a 1

9.7. Instrucción demora los ciclos necesarios

9.8. Ruta de Datos

9.8.1. Etapa F: registro instruccion

9.8.2. Etapa D: lectura operandos

9.8.3. Etapa X: operandos fuente ALU

9.8.4. Etapa M: memoria a MDR

9.8.5. Etapa W: ALUOut a registro

9.9. Cambios

9.9.1. No necesita sumadores extra

9.9.2. No dos memorias separadas

9.9.3. Mismo registro en distintas etapas ejecución de instrucción

9.10. Puntos de Control

9.10.1. No hay tabla de verdad no son constantes los valores

9.10.2. Señales se modifican en distintos ciclos de reloj

9.10.3. 13 señales de puntos de control

9.11. Unidades de Control

9.11.1. Unidad Control Global

9.11.1.1. Circuito Secuencial

9.11.1.2. Entrada Opcode

9.11.1.3. Maquina Estado, microprograma

9.11.2. Unidad Control local de ALU

9.11.3. Como maquina de estados

9.11.3.1. Conocida como cableada

9.11.3.2. 8 estados maximo 5 ciclos

9.11.3.3. F y D se ejecutan por igual para todas instrucciones

9.11.3.4. Modificación implica rediseñar toda UC

9.11.4. Unidades de control microprogramada

9.11.4.1. Memoria ROM almacena señales

9.11.4.2. Ejecutar instrucción lee de memoria en orden determinado

9.11.4.3. Cada palabra microinstrucción

9.11.4.4. Conjunto microinstrucciones es microprograma

9.11.4.5. Solo recupera 3 o 4 microinstrucciones

9.11.4.6. Codificación Horizontal: mas espacio

9.11.4.7. Codificación Vertical: menos espacio

9.11.4.8. Ventajas

9.11.4.8.1. Flexible

9.11.4.8.2. ocupa menos área

9.11.4.9. Desventaja

9.11.4.9.1. más lenta

10. Tratamiento Excepciones

10.1. Transferir control a otro programa

10.1.1. Salva estado procesador al producir excepcion

10.1.2. Corrija causa excepción

10.1.3. Reataure estado procesador

10.1.4. Causante excepción para continuar

10.2. Rutina de tratamiento de Excepción (RTE)

10.3. Interruccion vs Excepcion

10.3.1. Excepción

10.3.1.1. Evento no planificado interrumpe ejecución programa

10.3.2. Interrupción

10.3.2.1. Excepción proviene fuera microprocesador

10.4. Componentes hardware necesarios

10.4.1. Registro Excepcion

10.4.1.1. Almacenamiento tipo de excepcion para ser leido por RTE

10.4.2. Contador programa excepcion PC-4

10.4.3. Restador para PC-4

10.4.4. PC con dirección comienza RTE

10.5. Señales de Control

10.5.1. ALU_Overflor o Illegal-Opcode

10.5.2. Exception

10.5.3. ExceptionWrite y EPCWrite

10.5.3.1. control escritura

10.5.4. PCWrite control PC

10.6. Monociclo

10.6.1. Añadir señales circuito combinacional

10.7. Multiciclo

10.7.1. Modificar maquina estados

10.7.2. Nuevos microprogramas

10.7.2.1. Bifurcaciones

10.7.2.1.1. Microinstrucciones