1.2. Implementación de Procesadores Superescalares
|
|
- Joaquín Rico Araya
- hace 6 años
- Vistas:
Transcripción
1 1.2. Implementación de Procesadores Superescalares Técnicas dinámicas: Complejidad alta desde el p. de v. de estructura o arquitectura Aquí las instrucciones son las normales o clásicas : compatibilidad de código. La idea teórica es fácil si se tienen varias U.F. (ver figura) DLX ENCADENADO CON VARIAS U.F. IDEA DE DLX SUPERESCALAR Enteros Enteros FP/Ent MUL IF ID ME WB FP ADD FP/Ent DIV IF ID? FP/Ent MUL? ME WB?? IF?? ID?? ME WB ADD FP FP/Ent DIV EA Cálc Direcc Lo difícil es la complejidad de la implementación, sobre todo la emisión (ID o IS). Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 14
2 La fase de emisión juega un papel fundamental, y suele ser la más compleja y la que se alarga más al montar la superescalaridad: > Hay que detectar muchas más RAW en ella (de m instr) > Hay que decidir que instruc se pueden emitir (en función de las U.F. disponibles) > Hay que leer muchos registros a la vez (2m lecturas +m escrit. en la fase WB) > etc. Algunas máquinas (sobre todo primigenias, principios de los 90 y de sistemas empotrados), no disponen de planificación dinámica. En general, en estos procesadores, las m instrucciones deben cumplir ciertas reglas de emisión (fase ID) para que se emitan todas, (de lo contrario se emite un número menor que m). Si una se bloquea toda la cadena sería muy caro en cuanto a prestaciones: 1 ciclo de bloqueo se nota mucho más que en un encadenado. Ej.: Encadenado CPI = 1 + CPI bloq. Si CPI bloq = 0.2 A=1.2 Superescalar CPI= 1/m +CPI bloq. Si m=4, CPI bloq =0.2 A=( )/0.25 =1.8 Tb existirán bloqueos de sólo algunas instrucciones de las m posibles. Ej: Superescalar m=4, donde en cada ciclo se consiguen ejecutar sólo 3 de las 4 instrucciones: IPC=3, CPI= 1/3 A=CPI/CPI ideal = 4/3 = 1.33 EJERCICIO: dibujar croquis del cronograma de estos casos. EJERCICIO: Calcular A si: en ciclos pares se ejec. m instr, pero en los impares sólo 1. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 15
3 Idem con las penalidades de fallo de caché, de fallo de predicción de BTB, etc. Influyen mucho en las prestaciones La tendencia en máquinas de propósito general es sofisticar al máximo para evitar cualquier bloqueo y reducir penalidades. De ahí que en estas máquinas los superescalares con planif dinámica se hayan impuesto. Los sistemas empotrados suelen llevar superescalares menos agresivos (o VLIW): > Menos transistores menos consumo. > Aplicaciones específicas (y generalm. en ROM) más fácil optimizar y sintonizar. Todas poseen EMISIÓN DINÁMICA: el procesador (ID) decide en tiempo de ejecución qué instrucciones pueden emitirse a la vez y cuales no (en los VLIW la emisión es estática, o casi estática cuando se apoya en ciertos bits del compilador: el compilador debe preparar las instrucciones a emitir para que no haya riesgos estructurales y rellena con NOP para evitarlos). Según la Emisión (Issue) y Planificación (Scheduling), siguientes modelos. Esto tampoco no es una clasificación rígida, sino modelos. Existen en la realidad muchos casos intermedios (cada procesador tiene sus peculiaridades, dependiendo de las tuberías que posee). Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 16
4 Emisión Dinámica Planificación Estática (suponemos todos los bypasses). Instr. se encauzan por tuberías Dinámica (similar Algoritmo Tomasulo) Rígida (para que se emitan las m instr., deben estar en cierto orden en el código) El procesador no tiene hw para reconducir cada instr a su tubería No tiene sentido Flexible (se emitirán las m instr., sin importar el orden en que estén en el código) El procesador sí conduce cada instr a su tubería. Suelen existir reglas de emisión Superescalar planif. dinámica En los superescalares de planificación estática, suelen existir en la fase ID reglas de emisión. En ellos cada una de las m fases ID puede bloquearse por éstas (no ocurría en el DLX, excepto en las RAW de los saltos). TÉCNICAS DINÁMICAS ESPECTRO de máquinas con ILP TÉCNICAS ESTÁTICAS Superescalar con planificación dinámica, sin reglas de emisión Superescalar con planificación dinámica, pero con reglas de emisión Superescalar sin planificación dinámica, emisión dinámica (pero reglas de emisión) Superescalar sin planificación dinámica y emisión estática VLIW puro Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 17
5 Proc. Superescalares con Planificación estática Recordar : IF ID MEM WB para procesadores sin planif dinámica. CONCEPTO: EMISIÓN depende de TUBERÍAS (cadenas) Trabajaremos con un caso simple de grado m=2, donde las dos tuberías o cadenas son casi totalmente independientes (muchos de los primeros superescalares eran así): o 1 Tubería FP o 1 Tubería INT + Acceso a Memoria o La única relación entre ambas tuberías, son los Ld/St para FP. Ejemplos simples para éste: o si las instrucciones vienen por parejas INT/FP: se emiten 2 instr en ese ciclo o si todas las instrucciones son INT (programa entero) se emiten 1 instr/ciclo o Los bloqueos de emisión suelen afectar a todas las tuberías (suponemos que la fase ID no se ha completado y no se ha decodificado totalmente la instr.: no se sabe cuál es y por tanto, no se puede continuar emitiendo otras) o Los bloqueos de datos afectan por separado a cada tubería (son casi independientes) excepto en los Ld/St para FP. Para evitar cualquier bloqueo por dependencia (un bloqueo es muy caro) vamos a suponer que sólo se producen los bloqueos estrictamente necesarios. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 18
6 En lugar de: FP MUL F1,F2,F3 IF ID M1 M2 M3 MEM WBF INT SF 0(R4),F1 IF ID - - MEM WBI FP ADDF F0,F4,F5 IF ID - - A1 A2 MEM WBF INT XOR R5,R1,R2 IF ID - - MEM WBI Ahora las dos cadenas o tuberías se montan lo más independientemente posibles, y por tanto quedaría así (los bloqueos de una no afectan a la otra). FP MUL F1,F2,F3 IF ID M1 M2 M3 MEM WBF INT SF 0(R4),F1 IF ID - - MEM WBI FP ADDF F0,F4,F5 IF ID A1 A2 - (*) MEM WBF INT XOR R5,R1,R2 IF ID - - MEM WBI Se han resaltado las fases que realmente usan recursos estructurales (U.F./acc. a caché datos, puertos de los fich registros); nótese que sólo se bloquea por la RAW la segunda tubería o cadena. NOTA: el ciclo de bloqueo de la primera tubería marcado con (*), sería más correcto dibujar en WBF, puesto que MEM no hace nada para FP. Recordar. no permitimos emisión fuera de orden (out of order issue) Si se bloquea ID, se deben bloquear todas las instr. posteriores. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 19
7 Implementación (Superescalares Planif. estática) IF: Políticas de búsqueda: ventana de instrucciones > Un superescalar de grado m puede lanzar o emitir hasta m instrucciones por ciclo, de forma que la caché debe ser capaz de atender esta demanda. Aumentar el ancho del bus de datos del caché sólo supone invertir más (chip mayor o de tecnología más precisa). Recordar que lo que no se puede rebajar son los tiempos de latencia ( no se puede sobrepasar la velocidad de la luz!!) > El conjunto de instrucciones leídas en IF y susceptibles de entrar en las cadenas se le denomina ventana de instrucciones. Dos tipos de implementaciones: - Ventana fija: hasta que no se han lanzado o emitido todas las instrucciones de la ventana en su cadena correspondiente, no se puede acceder a caché a por otras m instrucciones (el búfer que recoge las instrucciones es fijo; está unido al bus). - Ventana deslizante: A medida que las instrucciones se van emitiendo a su correspondiente tubería, nuevas instrucciones son leídas de la caché para rellenar las posiciones inferiores de la ventana. Debe existir un registro (búfer) de desplazamiento. Más complejidad de IF, pero actualmente (para superesc. planif estática) es habitual que IF u otra fase prepare las m instr. siguientes para ID. Prestaciones mucho mayores sin gran complejidad. (unidad o búfer de prebúsqueda, prefetch buffer). Problema si las m instrucciones están en dos líneas distintas de caché Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 20
8 ID > Se distribuyen (emisión) las instrucciones en la fase ID por tuberías (cadenas) con los bypasses necesarios entre ellas. > Suele haber reglas de emisión o emparejamiento. Ejemplos de reglas de emisión: - No tener RAW ni WAW (Pentium y otros). Nosotros supondremos que el bloqueo se producirá en la fase que necesita el dato. - Ir en cierto orden (ej: 1º entera/ld/st/salto y 2º flotante, HP 7100) o estar balanceadas en ciertos porcentajes (ej: Una entera/ld/st/salto y otra flotante, en cualquier orden). Hw simple porque la primera tubería es entera y la segunda es flotante: usan recursos distintos, excepto instrucc. Ld/St de FP. - Aquí la planificación estática o scheduling (del compilador) puede jugar un papel importante e intentar agrupar instrucciones sin dependencias y que cumplan los criterios. En general podemos hablar de dos modelos de emisión para los de planif estática: Emisión rígida: Superescalar de planificación estática y emisión rígida. Las instrucciones son emitidas desde la ventana de instrucciones (buffer de instrucciones de la fase IF) en el mismo orden en que llegaron, de manera que si una instrucción no es para la tubería (cadena) que le corresponde por su posición en la ventana, en el siguiente ciclo repetirá su etapa ID pero para otra cadena. Si tiene ventana fija: idea similar a VLIW pero con emisión dinámica. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 21
9 (ej: 1º entera/ld/st/salto y 2º flotante, HP 7100, Alpha 21064) Sólo han de replicarse las IF, ID, y más puertos en WB. MEM se deja igual (se permite un único acc. a mem.). En se aprovechan las mismas U.F. Ej: El procesador Pentium (1992) fue un superescalar sin planif dinámica, construido alrededor de dos tuberías casi genéricas, capaces de ejecutar dos instrucciones en paralelo. Las tuberías son denominadas como U y V, y al proceso de emisión de dos instrucciones en paralelo se le llama emparejamiento. La tubería U puede ejecutar cualquier instrucción de la arquitectura Intel (tubería genérica), mientras que la tubería V puede ejecutar sólo las instrucciones simples (similares a las de un RISC, ver tabla 1). Cuando dos instrucciones se emparejan, la instrucción emitida en la tubería V es siempre la siguiente instrucción, (secuencialmente hablando según el código original) a la emitida en la tubería U. Las dos instrucciones no pueden tener dependencia RAW, ni WAW, y deben de cumplir ciertas restricciones (relacionadas con instr. CISC). Los saltos sólo pueden ser emparejados si van en la tubería V (se permite el emparejamiento de las instrucciones de comparación CMP o TEST, que escriben sobre una bandera (bit de estado), con un salto condicional (Jcc, cc=ne, EQ, GE, LE, NZ, etc.), que lea esa misma bandera). EJERCICIO: Qué tipo es? Está claro que el Pentium debe tener replicada la unidad entera (dos U.F. ALU INT, una en cada tubería). Además la decodificación de las instrucc. CISC es compleja y sólo dispone de un decodificador para ellas. Vamos a suponer que siempre se emite al menos una instrucción por ciclo (si no, sería peor que un encadenado) Emisión rígida no resulta eficiente cuando el compilador no hace una buena planificación estática al ordenar instrucciones según las cadenas. Presentará bloqueos debidos a dependencias estructurales cuando la instrucción o instrucciones no estén en el mismo orden que las cadenas. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 22
10 Emisión flexible: Superescalar de planificación estática y emisión flexible. Una instrucción de la ventana de instrucciones puede entrar en cualquier cadena que esté libre y admita dicha instrucción. Esta cualidad necesita de más complejidad en la cadena, que englobaremos en una nueva etapa SW (swap) donde las instrucciones son redirigidas a la cadena correspondiente. Esta etapa será para nosotros posterior a ID (IF ID SW MEM WB). Cuando una instrucción no pueda entrar en ninguna cadena tendrá que esperar al siguiente ciclo. > Como vemos poco a poco se va complicando la fase ID/SW (o IS), que es quizás el principal cuello de botella de los superescalares. Vamos a suponer que en la fase van todas las U.F. (Si queremos independizar la ALU INT de los accesos a memoria, sólo hace falta añadir un sumador para calcular la dirección de acceso (EA, Effective Address). MEM: Vamos a suponer sólo un acceso a la vez (estos superesc. son sencillos) WB: Habrá que escribir en el fichero INT y FP a la vez. Si los Ld/St de FP están en la primera tubería, necesitan acceder al Fich de Reg FP en WB o ID. Contención en el fichero de registros por múltiples accesos. Si además el resultado del LD es usado por la instrucción FP tendremos un riesgo RAW. O esta contención es un riesgo estructural (que podría bloquear) o se duplican los puertos del fichero de registros. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 23
11 > A pesar de ser emisión flexible, sigue bloqueándose cuando las parejas o el balanceo de instrucciones no es el adecuado. Ej.(se ha puesto un subíndice en los decodificadores para aclarar más la ejecución) Int ID Int ID SW Int - ID FP ID SW Int - ID Int ID SW FP ID FP ID SW FP ID Int ID SW FP - ID FP ID SW IPC= 6 instr/5 ciclos IPC= 6 instr/3 ciclos = 2 En proc reales, ID serían varias subetapas, y los bloqueos estarían en una de ellas. Habría que duplicar la U.F. INT como en el Pentium (el % instr. INT es mayor que el de FP), para evitar esto. Pero entonces... > Para m mayor y para evitar esto, interesa más la Planificación dinámica. Además las técnicas dinámicas aseguran la compatibilidad siempre. EJEMPLOS DE CASOS EMISIÓN Y VENTANA DE INSTR. Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 24
12 Ejemplo 2: Superescalar planif. estática Supongamos un DLX superescalar de grado 2 (sin planificación dinámica) con las siguientes reglas de emisión: o 1 tubería de operación INT/salto/Acceso a memoria o 1 tubería de FP Notar que la detección de dependencias de datos (p. ej. RAW) la hace el hardware, pero los bloqueos hardware detienen la tubería. Sería interesante que el compilador reordenara las instrucciones para atenerse a las reglas de emisión y para evitar dependencias de datos. Supongamos (similar al DLX, duración FP=4 ciclos). Las UF están totalmente segmentadas (esto es habitual hoy día). Instrucción que Instrucción Latencia genera un dato que lo usa FP ALU otra FP ALU 3 FP ALU Store (FP) 2 Load (FP) FP ALU 1 Load (FP) Store (FP) 0 Se pide: Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 25
13 a) Estudiar los conflictos estructurales b)dibujar un cronograma y hallar el IPC, y el número de ciclos por elemento del vector procesado c) Desenrollar el código dado en 5 iteraciones y reordenar en función de las reglas de emisión y las dependencias. d)comparar prestaciones y tamaño de código con el no desenrollado (notar que al desenrollar, el número de ciclos por elemento es la medida que interesa). e) Influye en el IPC la restricción en el orden de la pareja a emitir (emisión rígida/flexible)? Proponer un código donde influya. Suponer BTB que siempre acierta. Suponer que ID/SW es una sola fase ID. for (i=n-1; i>0; i++) x[i] = x[i] +s; //N es divisible por P // F2 s ; R1 &x[n-1] Loop: LD F0, 0(R1) ADDD F4, F0, F2 SD 0(R1), F4 SUBI R1, R1, 8 BNEZ R1, Loop Dpto. Arquitectura y Tecnología de Computadores. ASP2: TEMA 1: Arquitecturas encadenadas avanzadas: pág 26
6. PROCESADORES SUPERESCALARES Y VLIW
6. PROCESADORES SUPERESCALARES Y VLIW 1 PROCESADORES SUPERESCALARES Y VLIW 1. Introducción 2. El modelo VLIW 3. El cauce superescalar 4. Superescalar con algoritmo de Tomasulo 2 PROCESADORES SUPERESCALARES
Más detallesTEMA 3. PLANIFICACIÓN (SCHEDULING) DE INSTRUCCIONES Arquitectura de Sistemas Paralelos 1. pág 2. direcc MEM
TEMA 3 PLANIFICACIÓN O REORDENAMIENTO (SCHEDULING) DE INSTRUCCIONES ÍNDICE 3.. CONCEPTOS FUNDAMENTALES 3., 3.4 PLANIFICACIÓN ESTÁTICA. DESENROLLADO DE BUCLES. 3.3. PLANIFICACIÓN DINÁMICA (Algoritmo Tomasulo).
Más detallesTEMA 3 PLANIFICACIÓN O REORDENAMIENTO (SCHEDULING) DE INSTRUCCIONES ÍNDICE
TEMA 3 PLANIFICACIÓN O REORDENAMIENTO (SCHEDULING) DE INSTRUCCIONES ÍNDICE 3.1. CONCEPTOS FUNDAMENTALES 3.2, 3.4 PLANIFICACIÓN ESTÁTICA. DESENROLLADO DE BUCLES. 3.3. PLANIFICACIÓN DINÁMICA (Algoritmo Tomasulo).
Más detallesProcesadores superescalares. Introducción
Procesadores superescalares Introducción Introducción El término superescalar (superscalar) fue acuñado a fines de los 80s. Todas las CPUs modernas son superescalares. Es un desarrollo de la arquitectura
Más detallesParalelismo en monoprocesadores. Procesadores VLIW
Paralelismo en morocesadores Procesadores VLIW Profesor: Mag. Marcelo Tosini Cátedra: Arquitectura de Computadoras y técnicas Digitales Carrera: Ingeniería de Sistemas Ciclo: 4º año Arquitectura VLIW básica
Más detallesTEMA 2: PARALELISMO INTERNO EN SISTEMAS COMPUTADORES SEGMENTACION
SEGMENTACION SEGMENTACION SEGMENTACION I I I I I 1 2 3 4 5 IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB SEGMENTACION INTRODUCIR NUEVA INSTRUCCIÓN CADA CICLO 1 CICLO,
Más detallesProcesadores segmentados. El DLX.
Procesadores segmentados. El DLX. Curso 2011-2012 Características de las Arquitecturas Tipos de Arquitectura Organización de la Memoria Direccionamiento de Memoria Operaciones en el Repertorio de Instrucciones
Más detalles1. Objetivo y evolución de los procesadores ILP.
Arquitectura de Computadores Tema 3: Procesadores ILP Índice. Objetivo y evolución de los procesadores ILP. 2. Segmentación (Pipeline).. Concepto y medida de rendimiento. i 2. Pipeline de instrucciones..
Más detallesOBJETIVOS ALGUNAS CONSIDERACIONES SOBRE WINDLX
Arquitectura de Sistemas Paralelos 3 er curso de Ingeniería Técnica en Informática de Sistemas Práctica: Procesador segmentado DLX. Técnicas de optimización Curso 2005/2006 OBJETIVOS En esta práctica se
Más detallesIngeniería Informática. Ampliación de Estructura de Computadores. Curso 2010-11
6.3.3 Riesgo de Control. Los riesgos por control en DLX son menos frecuentes que los riesgos por dependencia de datos, pero al no haber una solución tan buena como el adelantamiento de datos, se convierten
Más detallesIntroducción PROCESADOR SUPERESCALAR. Paralelismo. Grado m: en cada ciclo se buscan/decodifican m instrucciones. supes
Introducción PROCESADOR SUPERESCALAR Paralelismo bus d/le eje mem es t ciclo seg =t ciclo supes Grado m: en cada ciclo se buscan/decodifican m instrucciones Introducción CICLOS POR INSTRUCCION tciclo identico
Más detallesArquitectura de Computadores. Tema 11. Pipelining Avanzado
Arquitectura de Computadores Tema 11 Pipelining Avanzado Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom 1 En qué se pone difícil Pipelining? Excepciones: hay 5 instrucciones
Más detallesSISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 3. PLANIFICACIÓN ESTÁTICA AVANZADA. TMS320C6713
SISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 3. PLANIFICACIÓN ESTÁTICA AVANZADA. TMS320C6713 OBJETIVOS. En esta práctica se trata de estudiar dos de las técnicas de planificación estática más importantes:
Más detallesExplotación del paralelismo a nivel de instrucción
Explotación del paralelismo a nivel de instrucción Arquitectura de Computadores J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato
Más detallesArquitectura de Computadores. Tema 4 PROCESADORES SEGMENTADOS
Arquitectura de Computadores Tema 4 PROCESADORES SEGMENTADOS 1. Arquitecturas RISC y CISC. 2. Unidad de Control monociclo y multiciclo. 3. Segmentación. 3.1. Ruta de datos del MIPS R2000. 3.2. Control
Más detallesIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
Más detallesSoluciones a los problemas impares. Tema 5. Memorias. Estructura de Computadores. I. T. Informática de Gestión / Sistemas
Tema 5. Soluciones a los problemas impares Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 28-29 Tema 5 Hoja: 2 / 36 Tema 5 Hoja: 3 / 36 Base teórica La memoria es el lugar en
Más detallesArquitectura de Computadores II Clase #16
Arquitectura de Computadores II Clase #16 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Organización general Superescalar Varios pipelines. 2 operaciones enteras,
Más detallesCOMPUTADORES SEGMENTADOS (DLX)
DEPARTAMENTO DE AUTOMÁTICA ARQUITECTURA Y TECNOLOGÍA DE COMPUTADORES Laboratorio de Arquitectura e Ingeniería de Computadores PRÁCTICA I COMPUTADORES SEGMENTADOS (DLX) OBJETIVO El objetivo de la práctica
Más detallesArquitectura de Computadores II Clase #7
Arquitectura de Computadores II Clase #7 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Memoria virtual 1 Recordemos: Jerarquía de Memoria Registros Instr.
Más detallesArea Académica: Sistemas Computacionales. Tema: Elementos de diseño de memoria caché
Area Académica: Sistemas Computacionales Tema: Elementos de diseño de memoria caché Profesor: Raúl Hernández Palacios Periodo: 2011 Keywords: Memory, cache memory. Tema: Elementos de diseño de memoria
Más detallesOrganización lógica Identificación de bloque
Cómo se encuentra un bloque si está en el nivel superior? La dirección se descompone en varios campos: Etiqueta (tag): se utiliza para comparar la dirección requerida por la CPU con aquellos bloques que
Más detallesProcesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción
Tema 8 Procesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción IA-64 es una arquitectura de 64 bits desarrollada conjuntamente por Intel y HP (Hewlett- Packard). Está basado en una tecnología
Más detalles202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES
202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES César Represa Pérez Carmen Rodríguez Clavería Nº de Asiento Registral 00/2013/1733 Burgos, 2013 202 Problemas de Arquitectura de Computadores 2º G.I.I 202
Más detallesARQUITECTURA DE COMPUTADORAS
ARQUITECTURA DE COMPUTADORAS Información General Objetivos Al terminar el curso, el estudiante estará capacitado para: 1. Manejar medidas de performance que permitan comparar diversos sistemas de Computadora.
Más detallesArquitectura de Computadores II Clase #7
Arquitectura de Computadores II Clase #7 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2009 Veremos Memoria virtual Resumen de ideas para mejorar performance 1 Recordemos:
Más detallesIngeniería Informática. Ampliación de Estructura de Computadores. Curso 2010-2011. 6.1 Introducción a la segmentación de Instrucciones.
SEGMENTACIÓN 6.1 Introducción a la segmentación de Instrucciones. La segmentación o pipeline es una técnica de realización de procesadores por la cual se solapa la ejecución de las instrucciones. Hoy en
Más detallesProcesador. Memoria. Ejemplo de un Procesador: MU0. Instrucciones. Direcciones. Registros. Datos. Instrucciones y datos SETI Tr.
Ejemplo de un Procesador: MU0 Instrucciones Registros Procesador Direcciones Instrucciones y datos Datos Memoria Tr. 306 float fir_filter(float input, float *coef, int n, float *history { int i; float
Más detallesAutor: Longinos Recuero Bustos
Actividad 1.1 Autor: Longinos Recuero Bustos Suponiendo que se aplica una mejora a una máquina de tal forma que el rendimiento es 20 veces superior al que tenía y considerando que la mejora únicamente
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesEl nivel ISA (II)! Conjunto de Instrucciones
El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina
Más detallesMemoria. Organización de memorias estáticas.
Memoria 1 Memoria Organización de memorias estáticas. 2 Memoria En memoria físicas con bus de datos sea bidireccional. 3 Memoria Decodificación en dos niveles. 4 Necesidad de cantidades ilimitadas de memoria
Más detallesPlanificación estática
Planificación estática Planificación de bloques básicos Planificación de bucles Planificación global Serafín Benito AIC: Planificación estática 1 Planificación de bloques básicos.. Técnica sencilla. Eficiencia
Más detallesMétodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Más detallesCICLOS DEL PROCESADOR
UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del
Más detallesResolución de los Ejercicios de la Hoja 4
Resolución de los Ejercicios de la Hoja 4 José Miguel Montañana Aliaga. Fernando Castro Rodríguez. Francisco Tirado Fernández. Dpto. de Arquitectura de Computadores y Automática Facultad de Informática.
Más detallesFecha de Introducción. Velocidad de reloj. Anchura del bus. Número de transistores. (microns) Memoria direccionable.
Los Microprocesadores MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Fecha de Introducción Velocidad de reloj Anchura del bus Número de transistores (microns) Memoria direccionable Evolución
Más detallesSuperescalares y VLIW - 1. Arquitectura de Computadores
Las técnicas que hemos visto en los capítulos anteriores las hemos utilizado para eliminar los distintos tipos de riesgos y conseguir la deseada tasa de ejecución de una instrucción por ciclo. No obstante,
Más detallesTema 4.-INTRODUCCION A LAS ARQUITECTURAS PARALELAS
Parte 2.- SISTEMAS PARALELOS Tema 4.-INTRODUCCION A LAS ARQUITECTURAS PARALELAS Anexo 2.- PROCESADORES. AVANZADOS INDICE: Capitulo 4.1.-TECNOLOGÍA DE... 2 Espacio de diseño de los procesadores... 2 Procesadores
Más detallesLECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION
ESTRUCTURA DE COMPUTADORES Pag. 14.1 LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION 1. Introducción Vamos a aplicar las ideas de microprogramación al caso de un minicomputador similar al
Más detallesOrganización del Computador 1 Memoria Cache
Organización del Computador 1 Memoria Cache Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires 2011 Memorias: Evolución Memoria cache Pioneros: Maurice Wilkes
Más detallesTEMA 4. ARQUITECTURA IA-64
TEMA 4. ARQUITECTURA IA-64 Stalling, W.Computer Organization and Architecture cap. 15 Intel IA-64 Architecture Software Developer s Manual Generalidades IA-64 Desarrollo conjunto Intel-HP Nueva arquitectura
Más detallesArquitectura e Ingeniería de Computadores
Arquitectura e Ingeniería de Computadores Tema 2 Procesadores Segmentados Curso 2-22 Contenidos Introducción: Recordatorio MPIS-DLX Excepciones y control Segmentación Riesgos: Estructurales, de datos y
Más detallesObjetivos. Objetivos. Arquitectura de Computadores. R.Mitnik
Objetivos Objetivos Arquitecturas von Neumann Otras Unidad Central de Procesamiento (CPU) Responsabilidades Requisitos Partes de una CPU ALU Control & Decode Registros Electrónica y buses 2 Índice Capítulo
Más detallesCPU MEMORIAS CACHE. Memorias caché. Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal.
MEMORIAS CACHE Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal. Tiempo ciclo memoria > tiempo de ciclo del procesador la CPU debe esperar a la memoria
Más detallesInstituto Tecnológico de Morelia
Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1a Programa 1 Modelo de arquitecturas de cómputo. 1.1 Modelos de arquitecturas de cómputo. 1.1.1 Clásicas. 1.1.2 Segmentadas. 1.1.3
Más detallesQué es Pipelining? Es una técnica de implementación en la que se superpone la ejecución de varias instrucciones.
Qué es Pipelining? Es una técnica de implementación en la que se superpone la ejecución de varias instrucciones. Aprovecha el paralelismo entre instrucciones en una corriente secuencial de instrucciones.
Más detallesIntroducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
Más detalles0.Principios del Microprocesador
There are no translations available. La revolución tecnológica en integración de componentes ha llegado a extremos insospechados, un ejemplo los procesadores Dual Core.. PROCESADORES DE DOBLE NÚCLEO ÍNDICE
Más detallesTEMA III: OPERACIONES CON LOS DATOS
CUESTIONES A TRATAR: Cual es la función de la unidad operativa? Es necesaria? Qué tipos de circuitos implementan la unidad operativa? Unidad operativa frente a ALU Qué es una operación de múltiple precisión?
Más detallesEstructura de Computadores Tema 1. Introducción a los computadores
Estructura de Computadores Tema 1. Introducción a los computadores Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido
Más detallesSíntesis arquitectónica y de alto nivel
Síntesis arquitectónica y de alto nivel Módulo 1. Concepto y fases de la Síntesis de Alto Nivel 1 Diseño de circuitos: la complejidad Tratamiento de problemas de complejidad creciente Rápido desarrollo
Más detallesArquitecturas RISC v.2014
Arquitecturas RISC v.2014 William Stallings, Organización y Arquitectura de Computadores, Capítulo 12: Computadores de repertorio reducido de instrucciones. John Hennessy David Patterson, Arquitectura
Más detallesOrganización del Computador I. Memoria Cache. Autor: Alejandro Furfaro
Organización del Computador I Memoria Cache Autor: Alejandro Furfaro - 2006 1 Memorias: Evolución Pioneros: Maurcice Wilkes con la primer memoria de tanque de mercurio para la computadora EDSAC. 2 bytes:
Más detallesMEMORIA EJERCICIO 1 EJERCICIO 2
MEMORIA EJERCICIO 1 Determinar el mapa de memoria de un procesador con 16 señales de bus de direcciones, una señal de asentimiento de bus de direcciones AS, una señal de lectura R, otra de escritura W
Más detallesTema V Generación de Código
Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.
Más detallesTecnologías y Arquitecturas
Tecnologías y Arquitecturas Parte II Andrés Djordjalian Seminario de Sistemas Embebidos 19 de mayo de 2011 Facultad de Ingeniería de la UBA 06:13 1 de 22 Temas de esta Clase Medición
Más detallesEstructura de Computadores
Estructura de Computadores Tema 4. El procesador Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido Elementos de un
Más detalles1) Se dispone de un computador de 32 bits con la siguiente estructura:
1) Se dispone de un computador de 32 bits con la siguiente estructura: MP CPU CACHE DISCO1 DISCO2... DISCO n El sistema de memoria está formado por una Memoria principal cuyo tiempo de acceso es de 550nseg
Más detallesPlanificación Dinámica - 1. Arquitectura de Computadores
Hasta ahora hemos visto que los procesadores en pipeline ejecutan varias instrucciones simultáneamente pero manteniendo el mismo orden del programa, es decir, dadas dos instrucciones i y j de un programa
Más detallesArquitectura de Computadoras. Clase 5 Posibles soluciones a atascos
Arquitectura de Computadoras Clase 5 Posibles soluciones a atascos Ejemplo de segmentación Notas de Clase 5 2 Atascos de un cauce (stall) Situaciones que impiden a la siguiente instrucción que se ejecute
Más detallesProcesadores Vectoriales
Procesadores Vectoriales Curso 2011-2012 Por qué procesamiento vectorial? La segmentación tiene límites: Si se aumenta mucho el número de etapas, baja el ciclo de reloj, pero aumentan las dependencias.
Más detallesTema 2. Arquitectura de CPU avanzadas 15/03/2011
Tema 2. Arquitectura de CPU avanzadas. Juegos CISC y RISC. Proceso paralelo. Procesadores escalares y vectoriales. Segmentación. Caches multinivel. Índice Introducción... 1 Procesadores CISC y RISC...
Más detallesArquitectura Segmentada: Conceptos básicosb
Arquitectura Segmentada: Conceptos básicosb Diseño de Sistemas Digitales EL-3310 I SEMESTRE 2008 4 ARQUITECTURA SEGMENTADA (PIPELINING) (4 SEMANAS) 4.1 Conceptos básicos de la arquitectura segmentada Paralelismo
Más detallesComplejidad computacional (Análisis de Algoritmos)
Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución
Más detallesCentro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Exámenes Ingeniería Computadores II Tutor: Antonio Rivero Cuesta Exámenes TEMA 1 Centro Asociado Palma de Mallorca Tutor: Antonio Rivero Cuesta Un procesador sin segmentación
Más detallesFUNCIONAMIENTO DEL ORDENADOR
FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores
Más detallesTema: Microprocesadores
Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1
Más detallesTema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras
Tema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras http://www.herrera.unt.edu.ar/arqcom dcohen@herrera.unt.edu.ar Temario 1. Evolución histórica. 2. Repaso de conceptos importantes.
Más detallesProcesadores Superescalares: Paralelismo Implícito a Nivel de Instrucción
Tema 7 Procesadores Superescalares: Paralelismo Implícito a Nivel de Instrucción Se denomina arquitectura superescalar a aquella implementación capaz de ejecutar más de una instrucción por ciclo de reloj.
Más detallesPRACTICA 2 Ejercicio 2
PRACTICA 2 Ejercicio 2 Simulación de Procesadores con Ejecución en Orden DESCRIPCIÓN GENERAL En esta práctica se utilizará el simulador KScalar y su interfaz gráfica con el objeto de estudiar el funcionamiento
Más detallesFundamentos de Hardware: Arquitectura de un ordenador
Fundamentos de Hardware: Arquitectura de un ordenador Jesús Moreno León Alberto Molina Coballes jesus.moreno.edu @juntadeandalucia.es Septiembre 2011 Estas diapositivas son una obra derivada de las transparencias
Más detallesParalelismo en monoprocesadores. Procesadores Superescalares
Paralelismo en monoprocesadores Procesadores Superescalares Profesor: Mag. Marcelo Tosini Cátedra: Arquitectura de Computadoras y técnicas Digitales Carrera: Ingeniería de Sistemas Ciclo: 4º año 1 Procesadores
Más detallesISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones
ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones Instruction Set Architecture (ISA) Arquitectura del conjunto de instrucciones software Conjunto de instrucciones hardware Universidad
Más detalles3 - Arquitectura interna de un up
cei@upm.es 3 - Arquitectura interna un up Componentes básicos Lenguaje ensamblador y código máquina Ciclo básico ejecución una instrucción Algunos ejemplos Universidad Politécnica Madrid Componentes básicos
Más detallesArquitectura t de Computadores
Arquitectura t de Computadores Tema 3 Segmentación (Pipelining) i 1 Índice 1. Segmentación 2. Riesgos (Hazards) 3. Forwarding 4. Implementación del pipelining 5. Tratamiento de las interrupciones 6. Complicaciones
Más detallesMemorias RAM. Basilio B. Fraguela Rodríguez. Copyright Basilio B. Fraguela 2006
Memorias RAM Basilio B. Fraguela Rodríguez Evolución de la velocidad del procesador y la memoria 1000 Ley de Moore CPU µproc 60%/año 100 10 1 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 DRAM 1990
Más detallesTema 2. Diseño del repertorio de instrucciones
Soluciones a los problemas impares Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 16 Tema 2: Hoja: 3 / 16 Base teórica Al diseñar un computador,
Más detallesArquitectura de Computadores. Apellidos, Nombre:
No se considerarán como válidas las respuestas en las que no se justifiquen los cálculos realizados No se permite el uso de ningún tipo de documentación, ni de calculadora Sólo existe una única opción
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesActividades de Teoría de Sistemas Operativos Sistemas informáticos multiusuario y en red
Actividades de Teoría de Sistemas Operativos Sistemas informáticos multiusuario y en red 53.- Cuál de las siguientes intrucciones consideras que son privilegiadas? Razónalo Leer una posición de memoria
Más detallesEspacio de direcciones de un proceso
Espacio de direcciones de un proceso Yolanda Becerra Fontal Juan José Costa Prats Facultat d'informàtica de Barcelona (FIB) Universitat Politècnica de Catalunya (UPC) BarcelonaTech 2014-2015 QP Indice
Más detallesEl Diseño de un Lenguaje Máquina
Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje
Más detallesArquitectura de los Ordenadores (Teoría) Final Junio 2008. Mañana Pág 1 APELLIDOS Y NOMBRE GRUPO Nº EXPEDIENTE
Arquitectura de los Ordenadores (Teoría) Final Junio 2008. Mañana Pág 1 1).- Dada la estructura de unidades funcionales (FD i : unidades de fetch y decodificación; EJ 1 y EJ 2 : unidades de ejecución de
Más detallesArquitectura de Computadores
Arquitectura de Computadores Ricardo.Sanz@upm.es Curso 2004-2005 Arquitectura de Computadores Arquitectura de computadores es la disciplina que estudia la organización y funcionamiento de los computadores
Más detallesTema 2: Lenguaje máquina. La interfaz entre el hardware y el software
Tema 2: Lenguaje máquina La interfaz entre el hardware y el software 1 Índice Introducción. Formatos de Instrucción. Modos de Direccionamiento. Ortogonalidad y Regularidad. Frecuencia de Utilización de
Más detallesOrganización del Computador. Memorias
Organización del Computador Memorias Jerarquía de las memorias Jerarquía de memorias en un Pentium Métricas de las memorias Capacidad de almacenamiento: en bytes o múltiplos (kb, MB, TB) Tiempo de acceso:
Más detallesArquitectura de Computadores
Arquitectura de Computadores 6. CPU Segmentada (Pipeline) 1. Conceptos Básicos 2. Causas de Ralentización Arquitectura de Computadores Segmentación (Pipeline) - 1 En los dos capítulos siguientes vamos
Más detallesArquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA
Arquitecturas RISC Características de las arquitecturas RISC Juego de instrucciones reducido (sólo las esenciales) Acceso a memoria limitado a instrucciones de carga/almacenamiento Muchos registros de
Más detallesQué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Más detallesAlgoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Más detallesOrganización de la memoria
Organización de la memoria MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Qué es la memoria? Como hemos visto hasta el momento la memoria constituye uno de los elementos básicos de una PC.
Más detallesEstructura de Computadores. Contenido. Sistema de E/S. 7.- E/S y dispositivos periféricos
Estructura de Computadores 7.- E/S y dispositivos periféricos Contenido Clasificación y tipos de periféricos Módulos de E/S. Instrucciones de E/S. Técnicas de E/S. E/S programada. E/S mediante interrupciones.
Más detallesParalelismo en monoprocesadores. Multithreading Ejecución de múltiples hebras
Paralelismo en monoprocesadores Multithreading Ejecución de múltiples hebras Profesor: Mag. Marcelo Tosini Cátedra: Arquitectura de Computadoras y técnicas Digitales Carrera: Ingeniería de Sistemas Ciclo:
Más detallesGestión de Entrada-salida
Gestión de Entrada-salida E. Campo M. Knoblauch Ó. López J. Clemente Departamento de Automática Universidad de Alcalá Sistemas Operativos Avanzados Gestión de Entrada-salida 1 / 18 Índice Introducción
Más detallesPlataformas de soporte computacional: arquitecturas avanzadas,
Plataformas de soporte computacional: arquitecturas avanzadas, sesión Diego R. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice. Arquitectura
Más detallesDiseño del procesador MIPS R2000
Diseño del procesador MIPS R2000 Aula Virtual IS09 Sergio Barrachina Mir Área de Arquitectura y Tecnología de Computadores Dpt. de Ingeniería y Ciencia de los Computadores Universidad Jaume I Índice 1.
Más detallesEjemplo, generación de #s aleatorios
Ejemplo, generación de #s aleatorios Supón que tienes un generador de números aleatorios enteros [0,2] con distribución uniforme, y tu necesitas generar números con distribución uniforme [0,4]. Alguien
Más detallesTema 1. Introducción a la arquitectura de computadores: diseño, coste y rendimiento
Soluciones a los problemas impares Tema 1. Introducción a la arquitectura de computadores: diseño, coste y rendimiento Arquitectura de Computadores I Curso 2009-2010 Tema 1: Hoja: 2 / 18 Tema 1: Hoja:
Más detallesMemoria Cache. Departamento de Arquitectura de Computadores
Memoria Cache Departamento de Arquitectura de Computadores Índice Introducción. Conceptos básicos Características de los sistemas de memoria Jerarquías de memoria Memoria Principal Características físicas
Más detalles