Unidad 2: Organización del CPU

Slides:



Advertisements
Presentaciones similares
El modelo de Von Neumann
Advertisements

UNIVERSIDAD DEL VALLE DE MEXICO
Ing. María Rosa Dámaso Ríos CPU(cuarta semana)
Intoduccion a la Arquitectura y Organizaciòn del Computador
ORGANIZACIÓN COMPUTACIONAL
I S A INSTRUCTION SET ARCHITECTURE
ARQUITECTURA DE COMPUTADORES - VON NEUMANN MODEL
TEMA 2 Arquitectura de un Ordenador
Tema 4: Unidad de Control
El Microprocesador.
Profesor: Rodrigo Sanhueza F.
CICLO DE EJECUCION DE UNA INSTRUCCION
PERCY CHUMBE BUENDIA. KIZZY GUTIERREZ VALVERDE. RUTH NOEMY APAZA JARA.
Tema: Microprocesadores
Sistemas Operativos Funcionamiento general de una computadora bajo el control de un programa.
Circuitos Digitales II
Arquitectura de Computadores
El procesador: la ruta de datos y el control (II Parte)
El nivel de la Microprogramación
Arquitectura de Conjunto de Instrucciones (ISA)
Composición Interna de un Procesador
Computadora Digital Arquitectura de John Von Neumann
Microcomputadores Prof : Tatiana Marín R.. Sistema basado en microprocesador de 8 bits.
Arquitectura del Computador
ISA (Instruction Set Architecture)

Computer Architecture Notes Jan 26, 2004 Dusan Kuzmanovic Jimmy Ortegon.
ARQUITECTURA DE LOS MICROPROCESADORES DE 8 BITS
MIPS Intermedio.
MICRO Y MACRO ARQUITECTURA
Introducción a la Ingeniería en Sistemas
Modelo de Von Neumann Ana Lilia Laureano-Cruces Departamento de Sistemas Universidad Autónoma Metropolitana.
Arquitectura de Máquinas Computadoras II
Unidad 2: Segmentación Dependencias de Control Docente: ing. José Díaz Chow.
Arquitectura de Computadoras
Overview Sistemas Computacionales
Universidad Tecnológica de la Selva Ing. Emmanuel Gordillo Espinoza.
Conceptos Arquitectónicos del computador
Lenguaje de Programación cap. 1 Estructura del Computador.
El procesador Creando un solo datapath. Universidad de SonoraArquitectura de Computadoras2 Introducción 1. Crear un solo datapath a partir de los datapaths.
Funcionamiento de la CPU
Capítulo 5. El procesador: Camino de datos y control.
MICROCONTROLADORES NOCIONES BÁSICAS COMPUTO II. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
Microcomputadores Prof: Tatiana Marín R.. Lenguaje máquina = lenguaje binario InstrucciónLenguaje máquina (binario)OP ( hex)Nemónico Restar F0SUB.
Unidad 2: Segmentación Excepciones en la Segmentación Docente: Ing. José Díaz Chow ARQUITECTURA DE MÁQUINAS COMPUTADORAS III.

PROCESADOR Por: Luis Gonzaga Trujillo Cuervo USCO
Datapath para las instrucciones de carga y almacenamiento (load/store)
“Organización y Arquitectura de Computadores” William Stallings
CLASE 13.
El procesador Diseño del control.
Capítulo 4 CPU y la memoria.
Hecho por: M.C. Luis Fernando Guzmán Nateras v3 Organización de Computadoras Preparación: Examen 1 JEOPARDY.
Maquinas Digitales Funciones del Procesador Buscar instrucciones Interpretar instrucciones Buscar datos Procesar datos Escribir datos.
Informática Clase Arquitectura de la Computadora.
Principio unidad 1.
E.A.P. “INGENIERÍA DE SISTEMAS” UNIVERSIDAD PERUANA UNION.
Unidad Central de Proceso
El procesador es el cerebro del computador que se encarga de organizar, procesar la información ejecutar cálculos y en general realizar muchos procesos.
LA CPU Ing. Manuel Andrés Belalcázar S. Corporación Universitaria Autónoma del Cauca.
ARQUITECTURA DE COMPUTADORES
José Alvarado – Cristian Anzola
Estructura funcional (Von Neumann)
ARQUITECTURA DEL COMPUTADOR INTEGRANTES: CASTRO MYCHAEL ALVEAR NELSON FLORES DANILO RODRIGUEZ CARLOS IZQUIERDO HARRY INTEGRANTES: CASTRO MYCHAEL ALVEAR.
 PRESENTADO POR : ANDRES MAYORGA DANIELA PAEZ VEGA.
El Computador. Computador. Máquina compuesta de elementos físicos (en su mayoría de origen electrónico) capaz de aceptar unos datos de entrada, realizar.
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
Arquitectura de Computadores IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia.
CAPITULO V Arquitectura de Von Neumann
Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela.
Transcripción de la presentación:

Unidad 2: Organización del CPU Universidad Nacional de Ingeniería Facultad de Electrotecnia y Computación Departamento de Arquitectura y Sistemas Arquitectura de Máquinas Computadoras II Unidad 2: Organización del CPU Docente: Ing. José Leónidas Díaz Chow

Organización del CPU 2.1. El Procesador 2.2. El Ciclo de Instrucción 2.3. Elementos para estructurar el procesador 2.4. Estructura básica del procesador 2.5. Arquitecturas del procesador Arquitectura de acumulador Arquitectura de pila Arquitectura de registros

2.1. El procesador ¿Qué es lo que hace?, cuál es el trabajo del procesador? >> Ejecutar instrucciones ¿Cómo lo hace? >> Procedimiento

2.2. Ciclo de instrucción Procedimiento bien establecido Fases(o sub ciclos): búsqueda y ejecución (cada fase tiene etapas o actividades) FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU CPU es construido con electrónica digital Basado en elementos que ya conocemos: MUX DEMUX Encoder Decoder + REGISTRO

2.3. Elementos para construir el CPU Analicemos las diferentes actividades que debe realizar el CPU en el ciclo de instrucción. A partir de cada actividad, definamos qué elementos constructivos debe tener. Analicemos cómo estos elementos se interconectan entre sí para funcionar: ESTRUCTURA

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU Para cargar la siguiente instrucción debe saber dónde está: Memoria. Se necesita conocer la dirección de la localidad de memoria donde está la instrucción. Saber cómo interactuar con la memoria. Estructura de interconexión: Conexión directa. Buses

2.3. Elementos para construir el CPU Interactuar con la memoria Leer instrucciones o datos. Escribir los resultados. CPU Memoria MAR @ Bus de Direcciones D MDR Bus de Datos Read MFC

2.3. Elementos para construir el CPU Llevar control de la secuencia de instrucciones Registro que apunte a la dirección de la próxima instrucción: PC (contador de programa) Se carga con dirección inicial de cada programa cuando este inicia a ejecución. CPU MAR MDR PC

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU Incrementar secuenciador Sumador de PC, para que cuando se traiga la instrucción actual, se incremente su valor en 1 para que apunte a la siguiente instrucción. CPU MAR MDR PC 1 Adder

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU MAR MDR Interpretar la instrucción Necesidad de resguardar la instrucción: IR (Instruction Register) Saber qué operación realizar (p.e. Suma, Resta, AND, etc) y con qué operandos: Decodificador. PC 1 Adder IR DECODER Unidad de Control

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU Cargar los operandos: Pueden estar en 3 diferentes partes: Instrucción: Cuando es un número definido de forma inmediata: ADD AX, 5  En IR. Memoria: En una localidad de memoria: se traen de forma similar a como se trajo la instrucción. En un registro. Estos deben estar dentro del CPU, por tanto el CPU necesita tener registros para los operandos: Registros de propósito general.

2.3. Elementos para construir el CPU Los registros de propósito general se emplean para almacenar operandos. Distintas formas de nombrarlos. Usaremos R0 … Rn CPU MAR MDR PC 1 Adder R0 IR R1 DECODER … Unidad de Control Rn

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU Ejecutar la operación: PC tiene un sumador para incrementarlo a fin que siempre apunte a la próxima instrucción. Ese mismo sumador se puede extender para realizar otras operaciones: Aritméticas Lógicas ALU

2.3. Elementos para construir el CPU MAR MDR ALU: Órgano de cálculo de la arquitectura Von Neumann. Dos entradas X, Y. Una salida: Z Z  X op Y. En nuestro ejemplo: uso de registros de retención de datos Y y Z. Se usa el Bus como contenedor para X. R0 R1 … Rn Y PC X ALU IR DECODER Z Unidad de Control

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU MAR MDR Resultado de la operación en Z en nuestro caso. Debe guardarse en donde define la instrucción: Registro o en Memoria. Resultados afectan el estado de la máquina: se deben almacenar códigos y banderas de condición que se actualicen con los cálculos. PSW. FLAGS: Z, N o S, C, V R0 R1 … Rn Y PC X ALU IR DECODER Z Unidad de Control FLAGS

2.3. Elementos para construir el CPU FASE FETCH Cargar la siguiente instrucción Incrementar el secuenciador Interpretar la Instrucción FASE EXECUTE Cargar los operandos Ejecutar la operación Guardar el resultado Verificar si hay solicitudes de interrupción

2.3. Elementos para construir el CPU Verificar si hay solicitudes de Interrupción: Las Interrupciones son mecanismos diseñados para permitir que los dispositivos periféricos soliciten servicio al CPU a través de la señal de control INT. Al finalizar cada instrucción, el CPU verifica si se solicitan interrupciones, y de ser así, les da servicio ejecutando una rutina de servicio de interrupción, previa salvaguarda del estado de la máquina.

2.4. Estructura básica del CPU Ejecución de la instrucción

2.4. Estructura básica del CPU Dos vistas o secciones: Datapath y Control

2.5. Arquitecturas del procesador Históricamente han existido diferentes arquitecturas desde la perspectiva de cómo tratan los operandos: Arquitectura de acumulador: un solo registro en el CPU >> el acumulador. Arquitectura de pila: No se almacenan operandos dentro del CPU sino en la memoria en una estructura de datos Pila. Arquitectura de registros: Se cuentan con varios registros internos al CPU para almacenamiento de operandos. Dos opciones: 2 direcciones y 3 direcciones

2.5. Arquitecturas del procesador Arquitectura de acumulador: un solo registro en el CPU >> el acumulador.

2.5. Arquitecturas del procesador Arquitectura de acumulador: Instrucciones de Una Dirección INSTRUCCION OPERACIÓN REALIZADA   LOAD X LOAD (m) LOAD n STORE X STORE (m) ADD X ADD (m) ADD n Acc  M(X) ; X es una variable de memoria (M) Acc  M(m) ; m es una dirección de M Acc  n ; n es un número entero. M(X)  Acc ; X es una variable de M M(m)  Acc ; m es una dirección de M Acc  (Acc) + M(X) ; X es una variable de M Acc  (Acc) + M(m) ; m es una dirección de M Acc  (Acc) + n ; n es un número entero.

2.5. Arquitecturas del procesador Arquitectura de pila: Memoria tiene area de Pila. Suelen ser de empuje hacia abajo. Necesario registro para control de dinámica de la pila: SP Instrucciones para operaciones de Pila: PUSH y POP Operaciones se hacen con los elementos más arriba en la pila (TOS y NOS) y el resultado se guarda en la pila.

2.5. Arquitecturas del procesador Arquitectura de pila: Uso de SP para controlar NOS

2.5. Arquitecturas del procesador Arquitectura de pila: Instrucciones de 0 direcciones Instrucción Operación   PUSH X TOS  M(X) PUSH (m) TOS  M(m) PUSH n TOS  n POP Z M(Z)  TOS POP (m) M(m)  TOS ADD (TOS’) = (NOS) + (TOS) SUB (TOS’) = (NOS) - (TOS) MUL (TOS’) = (NOS) * (TOS) DIV (TOS’) = (NOS) / (TOS) TOS: Top of the stack. NOS: Next on the stack.

2.5. Arquitecturas del procesador Arquitectura de registros: Registros proveen almacenamiento de operandos.

2.5. Arquitecturas del procesador Arquitectura de registros: Dos arquitecturas: Instrucciones de 2 direcciones y de 3 direcciones. Dos direcciones: Solo se definen 2 operandos. Uno de ellos es fuente y destino a la vez (lectura destructiva) Tres direcciones: Se definen todos los operandos: dos operandos fuentes y un operando destino

2.5. Arquitecturas del procesador Arquitectura de registros de dos direcciones MOV Rd, Rf ; Rd  Rf MOV Rd, n ; Rd  n | n es un número MOV Rd, X ; Rd  M(X) ; X es una variable en M MOV Rd, (m) ; Rd  M(m) ; m es una dirección en M MOV X, Rf ; M(X)  Rf ; X es una variable en M MOV (m), Rf ; M(m)  Rf ; m es una dirección en M ADD Rf, Rd ; Rd  Rf + Rd SUB Rf, Rd ; Rd  Rf - Rd MUL Rf, Rd ; Rd  Rf * Rd DIV Rf, Rd ; Rd  Rf / Rd

2.5. Arquitecturas del procesador Arquitectura de registros de tres direcciones ADD Rd, Rf1, Rf2 ; Rd  Rf1 + Rf2 SUB Rd, Rf1, Rf2 ; Rd  Rf1 - Rf2 MUL Rd, Rf1, Rf2 ; Rd  Rf1 * Rf2 DIV Rd, Rf1, Rf2 ; Rd  Rf1 / Rf2 Load Rd, n ; Rd  n Load Rd, m ; Rd  M(m) Load Rd, Rf ; Rd  [Rf] Store m, Rf ; M(m)  Rf

Preguntas… Muchas gracias