PROCESADORES SUPERESCALARES

Slides:



Advertisements
Presentaciones similares
Org. y Arquitectura del Computador
Advertisements

Arquitectura RISC & CISC y DSP
Procesadores Superescalares
A REA DE TECNOLOGIA ELECTRONICA U NIVERSIDAD DE O VIEDO LECCION 5 – ARQUITECTURA INTERNA DE LOS PIC - 1F.F. LINERA ARQUITECTURA BASICA. CARACTERISTICA.
UNIVERSIDAD DEL VALLE DE MEXICO
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS CHAPULTEPEC
Estructuras segmentadas
Arquitectura de Computadores I
Arquitectura de Computadores I PIPELINING. Pipelining Un pipeline es una serie de etapas, en donde en cada etapa se realiza una porción de una tarea.
Scheduling dinámico Scoreboarding.
Base de Datos Distribuidas FUNDAMENTOS DE BASES DE DATOS DISTRIBUIDAS
INTRODUCCIÓN A JAVA.
Computación PROGRAMACIÓN.
Pipelines: Riesgos.
EMISION MULTIPLE DE INSTRUCCIONES
Arquitectura de Conjunto de Instrucciones (ISA)
Mejoras a las Máquinas Von Neumann
Este obra se publica bajo unalicencia de Creative Commons Reconocimiento- NoComercial-CompartirIgual 3.0 España.licencia de Creative Commons Reconocimiento-
Procesadores VLIW y procesadores vectoriales
PROCESO DE PRODUCCIÓN Preguntas:
TEMA II PROCESADORES SUPERESCALARES Fuente imágenes: Prof. Morillo.
PROCESAMIENTO PARALELO.  Organización lógica ◦ Visión que tiene el programados  Capacidad de expresar tareas paralelas (Estructura de control)  Método.
Universidad de SonoraArquitectura de Computadoras1 PROGRAMA CION PARALELA Y DISTRIBUIDA PRESENTA: JESUS BECERRIL PACHECO MODELOS DE ACCESO A LA MEMORIA.
Arquitectura del Computador
CPU “Microprocesador de datos” Bus “ Transporte de los datos”
TRADUCTOR DE UN PROGRAMA
PLANIFICACIÓN DINÁMICA DE INSTRUCCIONES
INGENIERIA DE COMPUTADORES II
PROGRAMACIÓN PARALELA Tema 4: Metodología de la programación
Procesamiento paralelo
Segmentación No Lineal
SOFTWARE DE PROGRAMACIÓN
Pipelines Paralelismo Temporal y Espacial Ciclo de ejecución
Memoria Cachés. Universidad de SonoraArquitectura de Computadoras2 Introducción Caché es el nivel de memoria situada entre el procesador y la memoria.
Procesadores VLIW y procesadores vectoriales
Scheduling dinámico Algoritmo de Tomasulo.
INTRODUCCIÓN FACTORES QUE IMPULSAN LA RENOVACIÓN EN ARQUITECTURA
Organización de Computadoras
Funcionamiento de la CPU
Unidad 2: Segmentación Excepciones en la Segmentación Docente: Ing. José Díaz Chow ARQUITECTURA DE MÁQUINAS COMPUTADORAS III.
Inst. Tec. de Morelia ISC BASES DE DATOS DISTRIBUIDAS VERANO DEL 2006 MC. Anastacio Antolino Hernández TAXONOMÍA DE FLYNN.
INTRODUCCIÓN A JAVA. Índice ¿Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales ¿Qué ventajas tengo como desarrollador?
14 de diciembre de 2005 Universidad de Murcia1 Modelos de computadores paralelos Domingo Giménez Departamento de Informática y Sistemas Universidad de.
Arquitectura de Von Neumann
“Organización y Arquitectura de Computadores” William Stallings
Sistemas Operativos Avanzados
Cap. 6: Pipelining. Encauzamiento de procesadores
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Sánchez Manjarrez Silvana Ing. Daniel Domínguez C. México, D.F. a 13 de septiembre del 2006 Arquitectura de Computadoras Arquitecturas CISC Y RISC Campus.
Hecho por: M.C. Luis Fernando Guzmán Nateras v3 Organización de Computadoras Preparación: Examen 1 JEOPARDY.
UNID Arquitectura de Computadoras L.A.A.C. Lorena Santoyo Palafox
Tendencias Generales Dotación física Software lógica Más pequeño
Unidad 2 – Gestión de Procesos
ARQUICTECTURA DE SERVIDORES
Capítulo 8 Segmentación de Instrucciones.
TEMA II FUNDAMENTOS DEL DISENO DE COMPUTADORES
ARQUITECTURA ALTERNATIVA DE SERVIDORES SISTEMAS OPERTIVOS DE RED En un sistema operativo de red los usuarios saben que están conectados a la red y que.
PROCESADORES SUPERESCALARES
Son los atributos de un sistema que son visibles para un programador, es decir aquellos atributos que impactan directamente en la ejecución lógica de un.
Principio unidad 1.
UNIDAD 1. ORGANIZACIÓN BÁSICA Y DISEÑO DEL COMPUTADOR
Compilador Es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa.
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.
Hardware. ¿Qué es el hardware?  El hardware es la parte que puedes ver del computador, es decir todos los componentes de su estructura física.  La pantalla,
SISTEMAS OPERTIVOS DE RED Los usuarios están conectados a la red y que pueden compartir recursos. Cada equipo ejecuta con sus propios recursos su propio.
PROCESADOR.- El procesador es el cerebro del sistema, encargado de procesar toda la información. Básicamente, es el "cerebro" de la computadora. Prácticamente,
Trabajo practico: Microprocesadores Escuela: Rodolfo Walsh Rodolfo WalshRodolfo Walsh Materia: Tecnologia| Tecnologia Profesor: Gustavo Cucuzza Integrantes:
Gestión de Memoria – Parte 2
Arquitectura de Computadoras (Taller) Semestre II de 2008.
Hiperpipeline Superescalares Arquitectura de Computadoras 2012.
Transcripción de la presentación:

PROCESADORES SUPERESCALARES TEMA 2 PROCESADORES SUPERESCALARES

2.3. Características y arquitectura genérica de un procesador superescalar. Un procesador basado en segmentaciones de un único cauce tiene ciertas limitaciones en su rendimiento. En ausencia de detenciones el número máximo de instrucciones que se pueden emitir por ciclo de reloj es uno. Una alternativa para mejorar el rendimiento es reducir la duración del ciclo de reloj para aumentar el número de instrucciones ejecutadas por segundo, esto nos lleva a reducir el número de operaciones a realizar por el hardware y a aumentar la profundidad de segmentación para realizar todos los pasos que se hace en el procesamiento de una instrucción. El aumento en el número de etapas nos lleva a un aumento en el número de buffers que las separan y un aumento en las dependencias entre instrucciones. Todo esto se traduce en: Un aumento de los riesgos. Un aumento de las detenciones. Burbujas en la segmentación.

Paralelismo. Diversificación. Dinamismo. Resumiendo tenemos una pérdida mayor de ciclos, además un aumento en la frecuenta del reloj encarece el rendimiento global del procesador. Otro factor importante es que cuanto más profunda es la segmentación intervienen más transistores, incrementándose la potencia consumida y el calor a disipar. La principal diferencia de una segmentación superescalar con una clásica es que por las etapas de la segmentación pueden avanzar varias instrucciones simultáneamente, esto implica la existencia de varias unidades funcionales para que sea posible. Otra característica importante es que las instrucciones se pueden ejecutar fuera de orden, además de una segmentación más ancha. Las segmentaciones superescalares se caracterizan por tres atributos: Paralelismo. Diversificación. Dinamismo.

Paralelismo Los procesadores segmentados presentan paralelismo de máquina temporal, es decir en un mismo instante de tiempo se ejecutan varias instrucciones en diferentes etapas. En un procesador superescalar se dan al mismo tiempo el paralelismo de máquina temporal y espacial. El paralelismo de máquina temporal replica el hardware permitiendo que varias instrucciones se procesen simultáneamente en una misma etapa. El nivel de paralelismo espacial de un procesador se especifica con el término ancho o grado de la segmentación y especifica el número de instrucciones que se pueden procesar simultáneamente en una etapa.

El coste y la complejidad del hardware aumentan, hay que aumentar los puertos de lectura/escritura del fichero de registros para que varias instrucciones puedan acceder a sus operandos simultáneamente, lo mismo tenemos que hacer con las escrituras/lecturas en las cachés de datos e instrucciones, las unidades aritméticas, los buffers de contención entre etapas, etc.. No es posible replicar una segmentación escalar ya que tenemos que tener en cuenta varias complicaciones: Hay que considerar la posibilidad de ejecutar instrucciones fuera de orden El problema de la dependencia de datos y de memoria Los buffers entre etapas pasan a ser buffers complejos multientrada, que permiten pasar a unas instrucciones y a otras no. Otro elemento es incluir una red compleja de interconexión entre las entradas y las salidas de las unidades funcionales que permitan la resolución de la dependencia de datos.

Diversificación Los procesadores superescalares incluyen en la etapa de ejecución múltiples unidades funcionales diferentes e independientes, siendo habitual la existencia de varias unidades del mismo tipo.

Dinamismo Las segmentaciones superescalares se etiquetan como dinámicas al permitir la ejecución de instrucciones fuera de orden. Cuenta con los mecanismos necesarios para garantizar que se obtengan los mismos resultados, es decir que se respeta la semántica del código fuente. Una segmentación dinámica paralela utiliza buffers multientrada que permiten que las instrucciones entren y salgan de los buffers fuera de orden. La ventaja que aporta la ejecución fuera de orden es que intenta aprovechar al máximo el paralelismo que permiten las instrucciones y el que permite el hardware al disponer de múltiples unidades funcionales. Tienen la capacidad para especular, pueden realizar predicciones sobre las instrucciones que se ejecutarán tras una instrucción de salto.

Esto se traduce en: Unas instrucciones pueden adelantar a otras si no hay dependencias falsas (WAR y WAW), evitando ciclos de detención innecesarios. Una reducción de ciclos de detención por dependencias verdaderas de datos y memoria.