Ejercicios para el 3er parcial

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Ejercicios para el 3er parcial"

Transcripción

1 Problema 1: Representar la ejecución de las siguientes instrucciones: Add $2, $5, $4 Add $4, $2, $5 Lw $5, 100($2) Add $3, $5, $4 Beq $8, $8, s1 And $1, $2, $3 OR $4, $5, $6 s1: Sub $7, $8, $9 Ejercicios para el 3er parcial C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 Mostrar las líneas por medio de las cuales se resuelven las dependencias de datos y/o mostrar la inserción de burbujas si es que se requieren. Problema 2: Considerando los cambios hechos al HW para que los brincos puedan resolverse en la etapa 2, se tiene otra situación de riesgo: Uno de los operandos de un brinco es un resultado de una instrucción tipo R (previa al brinco): Add $3, $4, $5 Beq $7, $3, etiqueta Cómo puede resolverse esta situación? Habría que hacer otra consideración si el operando en conflicto resulta de una carga? Lw $3, 24 ( $5 ) Beq $7, $3, etiqueta Cuántos ciclos de reloj adicionales se requieren en cada caso?

2 Problema 3: Se tiene la siguiente secuencia de instrucciones: 36 SUB $10, $4, $8 40 BEQ $1, $3, AND $12, $2, $5 48 OR $13, $2, $6 52 ADD $14, $4, $2 56 SLT $15, $6, $7 72 LW $4, 50 ($7) 1) Mostrar qué ocurre cuando la instrucción sub está en la etapa WB y el salto no se realiza, marcar líneas de control principales y sus valores, así como elementos funcionales 2) Mostrar qué ocurre cuando la instrucción beq está en la etapa WB y el salto se realiza (considerar la versión mejorada cuando se pierde un solo ciclo)

3 Problema 4 Represente la siguiente secuencia de instrucciones, identifique y marque los riesgos por dependencias. Suponga que las pérdidas por dependencias de control son de 1 ciclo. 36 SUB $2, $1, $3 40 AND $4, $2, $5 44 OR $8, $2, $6 48 ADD $9, $4, $2 52 SLT $1, $6, $7 56 LW $9, 10($1) 60 BEQ $1, $1, -3 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 Problema 5: a) Determine tantas como pueda, las instrucciones que están en las 5 etapas de segmentación en la siguiente figura, si no se puede encontrar un campo en una instrucción explicar por qué.

4 b) Determinar para cada uno de los registros de segmentación (IF/ID, ID/EX,..) cada uno de los valores que se almacenan dentro de él y el tamaño en bits de cada registro (analice la figura anterior). Problema 6 Determinar el valor de cada campo en los cuatro registros de segmentación en la siguiente figura: Suponer que antes que se ejecuten las instrucciones el estado de la máquina era el siguiente: El PC tenía el valor 500 diez, la dirección de la instrucción Lw. Cada registro tenía el valor inicial 10 diez más el número de registro (por ejemplo, el registro $8 tenía el valor inicial 18 diez). Cada palabra de memoria accedida como dato tenía el valor inicial 1000 diez más la dirección del byte de la palabra (por ejemplo, Memoria[8] tenía el valor inicial 1008 diez). Determinar el valor de cada campo, incluyendo los no identificados en la figura y los innecesarios para una instrucción específica. Si usted cree que es imposible determinar el valor de un campo a partir de la información suministrada, explicar por qué. Problema 7 La razón de diseñar procesadores segmentados es conseguir mayor rendimiento, y como se ha visto, la segmentación reduce el tiempo medio de ejecución por instrucción. Los riesgos limitan las ganancias que se obtienen de la segmentación, pero las técnicas hardware y software han sido proyectadas para evitar estos límites. Un escritor de compiladores debe comprender la segmentación de la máquina objeto para que consiga el mejor rendimiento; en otro caso, detenciones inesperadas pueden echar a perder las ventajas del rendimiento segmentado. Encontrar el riesgo de este código del cuerpo del procedimiento swap # reg $2 tiene La dirección de v[k] Lw $15, 0($2) # reg $15 (temp) = v[k] Lw $16, 4($2) # reg $16 = v[k + 1] sw $16, 0($2) # v[k] = reg $16 sw $15, 4($2) #v[k + 1] = reg $15 (temp) a) Reordenar las instrucciones para que eviten tantas detenciones en la segmentación como sea posible. b) Reescribir el código considerando que se tiene una máquina sin anticipación, entonces deberá insertar instrucciones NOP cuando sea necesario

5 Problema 8 En el problema anterior, se muestra cómo maximizar el rendimiento del camino de datos segmentado con anticipación y detenciones en un siguiente uso de una carga, examinar el siguiente código y reescribirlo para minimizar el rendimiento en este camino de datos - es decir, reordenar las instrucciones para que esta secuencia necesite el número máximo de ciclos de reloj para que se ejecute mientras todavía obtenga el mismo resultado -. El propósito de este ejercicio es mostrar el impacto de la planificación de instrucciones. loop: Iw $3, 0($4) # Lee siguiente palabra de fuente addi $2, $2,1 # Incrementa recuento de palabras copiadas sw $3,0($5) # Escribe un destino addi $4,$4,1 # Avanza puntero a siguiente fuente addi $5,$5,1 # Avanza puntero a siguiente destino bne $3,$0,loop # Va a loop si palabra copiada/cero Problema 9 Los programas de máquinas segmentadas se detienen con frecuencia sin anticipación o ayuda del compilador. Analizar este bucle:. mov $5, $0 Sum: Lw $10, 1000($20) addu $5, $5,$10 addiu $20, $20, -4 bne $20, $0,Sum suponer que el hardware es el que se muestra en la siguiente figura: Este camino de datos nunca se detiene ni se anticipa en las dependencias, así que se pueden añadir instrucciones nop. Reescribir el código insertando el mínimo número de instrucciones nop necesarias para la ejecución adecuada; reordenar las instrucciones, si es posible, para minimizar el número de nops mientras se conserve la exactitud. Escribir una fórmula para el número de ciclos de reloj que ejecute el bucle como una función de N, el número de palabras copiadas.

6 Problema 10: Comparar el rendimiento para una implementación de un solo ciclo de reloj (MSC), una implementación multiciclo (MMC) y una implementación segmentada (MSEG). Considerando un programa de prueba con la siguiente distribución de instrucciones: Los tiempos de operación para las principales unidades funcionales son: 2 ns para un acceso a memoria, 2 ns para la operación de la ALU, 1 ns para lectura o escritura de registros. Para la implementación segmentada suponer que la mitad de las instrucciones de carga están inmediatamente seguidas por una instrucción que usa el valor obtenido de la memoria, que una cuarta parte de los brincos si se llevaron a cabo produciendo un retrazo de 1 ciclo de reloj y que los saltos incondicionales también se ejecutan en la etapa 2 requiriendo de 1 ciclo de reloj adicional.

Fig Riesgos por dependencias de datos.

Fig Riesgos por dependencias de datos. 5.4 Riesgos por dependencia de datos Hasta el momento se han considerado secuencias de código en las que no hay dependencias de datos, en esos casos la implementación mostrada en la figura 5.23 trabaja

Más detalles

Superescalares. Scheduling estático

Superescalares. Scheduling estático Superescalares Scheduling estático Introducción La CPU ejecuta las instrucciones en orden. El compilador: Puede cambiar el orden de ejecución. Genera el paquete de emisión. Trata de prevenir o reducir

Más detalles

Segmentación: Mejora del rendimiento. IEC UTM Moisés E. Ramírez G. Segmentación

Segmentación: Mejora del rendimiento. IEC UTM Moisés E. Ramírez G. Segmentación Segmentación: Mejora del rendimiento IEC UTM Moisés E. Ramírez G. 1 Segmentación La segmentación (pipelining) es una técnica de implementación por la cual se solapa la ejecución de múltiples instrucciones.

Más detalles

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción ESTRUCTURA DE COMPUTADORES Grupo de Arquitectura de Computadores (GAC) Dyer Rolán García (GAC) Paralelismo a nivel de instrucción

Más detalles

Arquitectura de Computadores Problemas (hoja 2). Curso

Arquitectura de Computadores Problemas (hoja 2). Curso Arquitectura de Computadores Problemas (hoja 2). Curso 2012-13 1. Sea la siguiente secuencia de código de instrucciones en punto flotante para un computador similar al DLX que aplica gestión dinámica de

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores 1. Introducción 2. La CPU 3. Lenguaje Máquina 4. La Memoria 5. Sistemas de Entrada/Salida 6. Segmentación (Pipeline) MIPS 64 7. Memoria Caché 8. Arquitecturas RISC Arquitectura

Más detalles

3. SEGMENTACIÓN DEL CAUCE

3. SEGMENTACIÓN DEL CAUCE 3. SEGMENTACIÓN DEL CAUCE 1 SEGMENTACIÓN DEL CAUCE 1. Conceptos básicos 2. Etapas del MIPS64 3. Riesgos 4. Operaciones muticiclo 2 SEGMENTACIÓN DEL CAUCE 1. Conceptos básicos 3 Conceptos básicos Ciclo

Más detalles

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones Arquitectura de Computadoras Clase 4 Segmentación de Instrucciones Segmentación de cauce: Conceptos básicos La segmentación de cauce (pipelining) es una forma particularmente efectiva de organizar el hardware

Más detalles

Forwarding versus Stalling

Forwarding versus Stalling Forwarding versus Stalling Dependencias Considerar el siguiente código: 1.sub $2, $1, $3 2.and $12, $2, $5 3.or $13, $6, $2 4.add $14, $2, $2 5.sw $15, 100($2) Las instrucciones 2 a 5 dependen de $2. Universidad

Más detalles

Arquitectura de Computadores Problemas (hoja 2). Curso

Arquitectura de Computadores Problemas (hoja 2). Curso Arquitectura de Computadores Problemas (hoja 2). Curso 2006-07 1. El siguiente fragmento de código se ejecuta en un DLX con segmentación: SUB R1,R2,R3 ADD R4,R5,R6 SUB R5,R4,R8 ADD R7,R2,R3 ADD R9,R7,R3

Más detalles

Forwarding versus Stalling

Forwarding versus Stalling Forwarding versus Stalling Dependencias Considerar el siguiente código: 1.sub $2, $1, $3 2.and $12, $2, $5 3.or $13, $6, $2 4.add $14, $2, $2 5.sw $15, 100($2) Las instrucciones 2 a 5 dependen de $2. Universidad

Más detalles

El procesador. Diseño del control

El procesador. Diseño del control El procesador Diseño del control Datapath MIPS simple Universidad de Sonora Arquitectura de Computadoras 2 MIPS simple El datapath anterior cubre instrucciones: Aritméticas-lógicas: add, sub, and, or y

Más detalles

Tema 1: PROCESADORES SEGMENTADOS

Tema 1: PROCESADORES SEGMENTADOS Tema 1: PROCESADORES SEGMENTADOS 1.1. Procesadores RISC frente a procesadores CISC. 1.2. Clasificación de las arquitecturas paralelas. 1.3. Evaluación y mejora del rendimiento de un computador. 1.4. Características

Más detalles

Apellidos Nombre Grupo. Arquitectura e Ingeniería de Computadores. Examen Final (Teoría parte primer cuatrimestre). 18/06/2012

Apellidos Nombre Grupo. Arquitectura e Ingeniería de Computadores. Examen Final (Teoría parte primer cuatrimestre). 18/06/2012 Apellidos Nombre Grupo Arquitectura e Ingeniería de Computadores. Examen Final (Teoría parte primer cuatrimestre). 18/06/2012 Instrucciones.- Cada pregunta consta de cinco afirmaciones, y cada una de las

Más detalles

Tratamiento de Excepciones en MIPS

Tratamiento de Excepciones en MIPS Tratamiento de en MIPS Elías Todorovich Arquitectura I - Curso 2013 Riesgos de Control Las direcciones del PC no son secuenciales (PC = PC + 4) en los siguientes casos: Saltos condicionales (beq, bne)

Más detalles

Procesador Segmentado

Procesador Segmentado Procesador Segmentado 1 Se desea ejecutar varias instrucciones, al mismo tiempo. Se dividen las etapas mediante registros, cada instrucción puede estar ejecutándose en una etapa. Cinco etapas, pueden ejecutarse

Más detalles

Arquitectura de Computadores Problemas (hoja 4). Curso

Arquitectura de Computadores Problemas (hoja 4). Curso Arquitectura de Computadores Problemas (hoja 4). Curso 2006-07 1. Sea un computador superescalar similar a la versión Tomasulo del DLX capaz de lanzar a ejecución dos instrucciones independientes por ciclo

Más detalles

Diseño del procesador MIPS R2000

Diseñ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 detalles

EC - Bibliografía EC -

EC - Bibliografía EC - . Introducción 2. IPS 3. Segmentación 4. Riesgos estructurales 5. Riesgos de datos 6. Riesgos de control 7. Riesgos de control con riesgos LDE 8. Resumen Bibliografía Hennessy Patterson Apendice A, 4ª

Más detalles

Arquitectura de Computadores - 2001

Arquitectura de Computadores - 2001 IV. Segmentación o Pipelining Alternativas de Implementación de Procesador 1. Procesador Uniciclo CPI = 1 Pero Período de Reloj Grande 2. Procesador Multiciclo CPI > 1 Pero Período de Reloj más Pequeño

Más detalles

Arquitectura del MIPS: Introducción

Arquitectura del MIPS: Introducción Arquitectura del MIPS: Introducción Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización

Más detalles

ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados

ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados Departament d Informàtica Sistemes i Computadors ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados SUGERENCIAS PARA LA RESOLUCIÓN DE LOS PROBLEMAS La ruta datos propuesta en todos

Más detalles

La Unidad de Control y el Camino de Datos

La Unidad de Control y el Camino de Datos Prof. Rodrigo Araya E. raraya@inf.utfsm.cl Universidad Técnica Federico Santa María Departamento de Informática Valparaíso, 1 er Semestre 2006 1 2 3 Contenido Veremos el diseño completo de un subconjunto

Más detalles

Pipeline (Segmentación)

Pipeline (Segmentación) Pipeline (Segmentación) Segmentación (Pipeline) Es una técnica de implementación por medio de la cual se puede traslapar la ejecución de instrucciones. En la actualidad la segmentación es una de las tecnologías

Más detalles

Arquitectura e Ingeniería de Computadores. Examen Parcial. 7/02/2012

Arquitectura e Ingeniería de Computadores. Examen Parcial. 7/02/2012 Apellidos Nombre Grupo: Arquitectura e Ingeniería de Computadores. Examen Parcial. 7/02/2012 Instrucciones.- Cada pregunta consta de cinco afirmaciones, y cada una de las afirmaciones puede ser cierta

Más detalles

Pipelining. Introducción

Pipelining. Introducción Pipelining Introducción Definición Técnica de implementación. Consiste en ejecutar traslapadas varias instrucciones al mismo tiempo. Universidad de Sonora Arquitectura de Computadoras 2 Ejemplo Pasos para

Más detalles

Fundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo)

Fundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo) 8. Diseño del Procesador Fundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo) Objetivos Plantear y modificar una ruta de datos para un repertorio de instrucciones

Más detalles

Tutorías con Grupos Reducidos (TGR) Parte 1: Evaluación de prestaciones

Tutorías con Grupos Reducidos (TGR) Parte 1: Evaluación de prestaciones Tutorías con Grupos Reducidos (TGR) Parte 1: Evaluación de prestaciones ESTRUCTURA DE COMPUTADORES Grupo de Arquitectura de Computadores (GAC) Dyer Rolán García (GAC) Evaluación de Prestaciones Curso 2011/2012

Más detalles

Introducción a paralelismo a nivel de instrucción

Introducción a paralelismo a nivel de instrucción Introducción a 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 Grupo

Más detalles

ADDI R4,R0,#2 ADDI R1,R0,#40 LOOP: LW R2,0(R1) SUBI R3,R2,#1 MUL R2,R3,R2 DIV R2,R3,R4 SW 0(R1),R2 SUBI R1,R1,#4 BNEZ R1, LOOP ADDI R4,R0,#0

ADDI R4,R0,#2 ADDI R1,R0,#40 LOOP: LW R2,0(R1) SUBI R3,R2,#1 MUL R2,R3,R2 DIV R2,R3,R4 SW 0(R1),R2 SUBI R1,R1,#4 BNEZ R1, LOOP ADDI R4,R0,#0 P2. (3 puntos) El siguiente código en ensamblador recorre un vector v, que comienza en la posición 0, calculando para cada v[i] el número de combinaciones que pueden darse con v[i] elementos tomados de

Más detalles

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA

Arquitecturas 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 detalles

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

ISA (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 detalles

Sección de procesamiento: El camino de datos

Sección de procesamiento: El camino de datos Sección de procesamiento: El camino de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución

Más detalles

Ejercicios de Paralelismo a Nivel de Instrucción

Ejercicios de Paralelismo a Nivel de Instrucción Ejercicios de Paralelismo a Nivel de Instrucción J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato Arquitectura de Computadores Grupo

Más detalles

Arquitectura e Ingeniería de Computadores Problemas (hoja 3). Curso

Arquitectura e Ingeniería de Computadores Problemas (hoja 3). Curso Arquitectura e Ingeniería de Computadores Problemas (hoja 3). Curso 2006-07 1. Sea la siguiente secuencia de código de instrucciones en punto flotante para un computador similar al DLX que aplica gestión

Más detalles

ARQUITECTURA DE COMPUTADORES. Práctica 8

ARQUITECTURA DE COMPUTADORES. Práctica 8 ARQUITECTURA DE COMPUTADORES Práctica 8 Procesadores Segmentados: Introducción al simulador DLXIDE Evaluación de las prestaciones de la segmentación en el DLX Práctica 8: Procesadores Segmentados 1 de

Más detalles

Tema 4: Diseño de un microprocesador

Tema 4: Diseño de un microprocesador Tema : Diseño de un microprocesador Febrero de Tema : Diseño de un microprocesador Febrero de / 7 Índice Introducción Visión general de la implementación El camino de datos Control del camino de datos

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: implementación uniciclo Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción. 2. Construcción

Más detalles

Plataformas de soporte computacional: arquitecturas avanzadas,

Plataformas de soporte computacional: arquitecturas avanzadas, Plataformas de soporte computacional: arquitecturas avanzadas, sesión 2 Diego. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice 1. Segmentación

Más detalles

Segmentación de instrucciones

Segmentación de instrucciones 7HPD6HJPHQWDFLyQGH,QVWUXFFLRQHV 2EMHWLYRV 5HIHUHQFLDV (WDSDVGHXQFDXFH 3DURQHV HVWUXFWXUDOHV SRUGHSHQGHQFLDGHGDWRV SRUGHSHQGHQFLDGHFRQWURO 0RGLILFDFLyQGHXQFDXFHSDUDRSHUDFLRQHVPXOWLFLFOR (MHPSORHO0,365 1

Más detalles

Tema 2. Diseño del repertorio de instrucciones

Tema 2. Diseño del repertorio de instrucciones Enunciados de problemas Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 10 Tema 2: Hoja: 3 / 10 Base teórica Al diseñar un computador, uno

Más detalles

Arquitectura y Tecnología de Computadores. Curso 07/08

Arquitectura y Tecnología de Computadores. Curso 07/08 Arquitectura y Tecnología de Computadores. Curso 07/08 Arquitecturas Paralelas. Practica V RIESGOS EN PROCESADORES SEGMENTADOS (II) Ejecución real sobre el MIPS R3000 1. Objetivo: Evaluar la incidencia

Más detalles

Pipelining o Segmentación de Instrucciones

Pipelining o Segmentación de Instrucciones Pipelining o Segmentación de Instrucciones La segmentación de instrucciones es similar al uso de una cadena de montaje en una fábrica de manufacturación. En las cadenas de montaje, el producto pasa a través

Más detalles

UNIDAD 5: Mejora del rendimiento con la segmentación.

UNIDAD 5: Mejora del rendimiento con la segmentación. UNIDAD 5: Mejora del rendimiento con la segmentación. 5.1 Un resumen de segmentación La segmentación (pipelining) es una técnica de implementación por la cual se solapa la ejecución de múltiples instrucciones.

Más detalles

Procesador MIPS - Registros

Procesador MIPS - Registros MIPS Microprocessor without Interlocked Pipeline Stages Surgió a comienzos de los 80 en Stanford. Sintetiza las principales ideas de RISC. Arquitectura eficiente y simple. 1 Procesador MIPS - Registros

Más detalles

Formatos de Instrucción en el MIPS R3000

Formatos de Instrucción en el MIPS R3000 Area Arquitectura Computadores Formatos Instrucción en el IPS R3000 6 5 5 16 C.O. rs1 rd Carga /Almacenamiento Saltos Condicionales 6 5 5 5 11 C.O. rs1 rs2 rd Operaciones AL 6 26 C.O. Saltos Incondicionales

Más detalles

Plataformas de soporte computacional: arquitecturas avanzadas,

Plataformas 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 detalles

Arquitectura de Computadoras. Clase 8 Procesadores superescalares

Arquitectura de Computadoras. Clase 8 Procesadores superescalares Arquitectura de Computadoras Clase 8 Procesadores superescalares Procesador Escalar Ejecución secuencial de instrucciones F: búsqueda D: decodificación F D ALU F D ALU F D ALU Instrucción 1 Instrucción

Más detalles

Qué 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. 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 detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema 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 detalles

El procesador. Datapath para las instrucciones de brinco

El procesador. Datapath para las instrucciones de brinco El procesador Datapath para las instrucciones de brinco Instrucciones de brinco Dos tipos de instrucciones de brincos: 1. Brinco condicional. beq $t0, $t1, Etiqueta ; if t0 == t1 goto Etiqueta 2. Brinco

Más detalles

El procesador. Datapath y control

El procesador. Datapath y control El procesador Datapath y control Introducción En esta parte del curso contiene: Las principales técnicas usadas en el diseño de un procesador. La construcción del datapath y del control. Estudiaremos la

Más detalles

Definición de prestaciones

Definición de prestaciones Definición de prestaciones En términos de velocidad. Diferentes puntos de vista: Tiempo de ejecución. Productividad (throughput) Medidas utilizadas En función de la duración del ciclo de reloj y del número

Más detalles

EXAMEN DE ARQUITECTURA II Septiembre, 2010

EXAMEN DE ARQUITECTURA II Septiembre, 2010 NOMBRE Y APELLIDOS DEL ALUMNO: EXAMEN DE ARQUITECTURA II Septiembre, 2010 El examen consta de dos bloques de cuestiones de teoría y otro de ejercicios, algunos de ellos con respuestas de opción múltiple.

Más detalles

Arquitectura de Computadores. Tema 4 PROCESADORES SEGMENTADOS

Arquitectura 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 detalles

FUNDAMENTOS DE COMPUTADORES 18 de junio de Examen parcial del 2º cuatrimestre.

FUNDAMENTOS DE COMPUTADORES 18 de junio de Examen parcial del 2º cuatrimestre. FUNDAMENTOS DE COMPUTADORES 18 de junio de 2014. Examen parcial del 2º cuatrimestre. Nombre DNI Apellidos Grupo Ejercicio 1 (2.5 puntos) Para el computador MIPS estudiado en clase, responder a las siguientes

Más detalles

INTRUCCIONES: LENGUAJE MAQUINA

INTRUCCIONES: LENGUAJE MAQUINA INTRUCCIONES: LENGUAJE MAQUINA 1.- INTRODUCCION Conceptos importantes Instrucción: Orden al hardware del Computador Repertorio de Instrucciones Lenguaje Máquina (ML) Lenguaje Ensamblador (AL) Lenguaje

Más detalles

Soluciones a ejercicios de Paralelismo a Nivel de instrucción

Soluciones a ejercicios de Paralelismo a Nivel de instrucción Soluciones a ejercicios de Paralelismo a Nivel de instrucción J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato Arquitectura de Computadores

Más detalles

Ejercicios del tema 4. El procesador

Ejercicios del tema 4. El procesador jercicios del tema 4. l procesador jercicio 1. Considere un procesador de 32 bits con una frecuencia de reloj de 500 MHz con la estructura del mostrado en el jercicio 3. La memoria se direcciona por bytes

Más detalles

Pipeline o Segmentación Encausada

Pipeline o Segmentación Encausada Pipeline o Segmentación Encausada Material Elaborado por el Profesor Ricardo González A partir de Materiales de las Profesoras Angela Di Serio Patterson David, Hennessy John Organización y Diseño de Computadores

Más detalles

Ejercicios del tema 4. El procesador

Ejercicios del tema 4. El procesador Ejercicios del tema 4. El procesador Estructura del procesador elemental WepSIM Address Bus Data Bus Control Bus C0 Ta Internal Bus RA RB RC LC MAR T9 Memory MRdy BE ADDR DATA R W A31-A0 BE3-BE0 D31-D0

Más detalles

Riesgos en la Segmentación

Riesgos en la Segmentación Arquitectura (09/10) Area Arquitectura Riesgos en la Segmentación Tipos riesgos Soluciones Rendimiento real teniendo en cuenta los riesgos Ejemplo procesador segmentado sencillo Riesgos Estructurales.

Más detalles

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017 Aspectos avanzados de arquitectura de computadoras Pipeline Facultad de Ingeniería - Universidad de la República Curso 2017 Objetivo Mejorar el rendimiento Incrementar frecuencia de reloj? Ancho de los

Más detalles

Superescalares. Scheduling dinámico: algoritmo de Tomasulo

Superescalares. Scheduling dinámico: algoritmo de Tomasulo Superescalares Scheduling dinámico: algoritmo de Tomasulo Introducción Scheduling dinámico significa que la CPU (el hardware) puede reordenar las instrucciones. La mayoría de las CPUs de escritorio son

Más detalles

Procesador Segmentado

Procesador Segmentado Organización del Computador I Verano Procesador Segmentado Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Segmentación Descompone una determinada operación

Más detalles

Procesadores superescalares. Introducción

Procesadores 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 detalles

TEMA 2: PARALELISMO INTERNO EN SISTEMAS COMPUTADORES SEGMENTACION

TEMA 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 detalles

Microarquitectura: DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR

Microarquitectura: DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR Microarquitectura: implementación multiciclo DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR 3.1 Esquema básico de un microprocesador

Más detalles

Arquitectura de Computadoras. Clase 5 Posibles soluciones a atascos

Arquitectura 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 detalles

El repertorio de instrucciones

El repertorio de instrucciones El repertorio de instrucciones Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización

Más detalles

OBJETIVOS ALGUNAS CONSIDERACIONES SOBRE WINDLX

OBJETIVOS 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 detalles

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos: Unidades principales en la implementación Data El procesador: camino de datos y control IEC UTM Moisés E. Ramírez G. 1 Register # PC Address Instruction Instruction Registers Register # ALU memory Register

Más detalles

Tema 6. Introducción a la segmentación avanzada: Riesgos

Tema 6. Introducción a la segmentación avanzada: Riesgos Tema 6. Introducción a la segmentación avanzada: Riesgos Organización de Computadores LUIS ENRIQUE MORENO LORENTE RAÚL PÉRULA MARTÍNEZ ALBERTO BRUNETE GONZALEZ DOMINGO MIGUEL GUINEA GARCIA ALEGRE CESAR

Más detalles

Bus de direcciones. Bus de datos

Bus de direcciones. Bus de datos 1) INTRODUCCIÓN A LA MÁQUINA SENCILLA La máquina sencilla (MS) es un computador concebido para fines exclusivamente didácticos. MS sólo dispone de dos bloques: Unidad Central de Proceso y memoria principal.

Más detalles

#define MAX 1024 void escala_vect (float A[MAX], float B[MAX], float k) { int i; for (i=0; i < MAX; i++) B[i]=k*A[i]; }

#define MAX 1024 void escala_vect (float A[MAX], float B[MAX], float k) { int i; for (i=0; i < MAX; i++) B[i]=k*A[i]; } PROBLEMA 1 Memoria Cache (10 puntos) Supongamos un sistema con un procesador que lanza direcciones de 32 bits. Dispone de dos caches, una para instrucciones y otra para datos, de 8 KBytes cada una. La

Más detalles

Unidad 3. Facultad de Ciencias Departamento de Electrónica

Unidad 3. Facultad de Ciencias Departamento de Electrónica Universidad Autónoma de San Luis Potosí Facultad de Ciencias Departamento de Electrónica Unidad 3 Instrucciones: Lenguaje de la Computadora Dra. Ruth M. Aguilar Ponce Primavera Unidad 3 Operaciones del

Más detalles

Organización de Computadoras. Principios de Conjuntos de Intrucciones

Organización de Computadoras. Principios de Conjuntos de Intrucciones Organización de Computadoras Principios de Conjuntos de Intrucciones Clasifición de las ISA Secuencia de Código para C = A + B Stack Acumulador Registro (Reg-Mem) Registro (load-store) Push A Load A Load

Más detalles

Procesadores Superescalares

Procesadores Superescalares Departamento de Electrónica y Circuitos EC3731 Arquitectura del Computador II Prof. Osberth De Castro Prof. Juan C. Regidor Prof. Mónica Parada Segmentación de Cauce y Paralelismo Multiples unidades de

Más detalles

Tema 3 (I) Fundamentos de la programación en ensamblador

Tema 3 (I) Fundamentos de la programación en ensamblador Tema 3 (I) Fundamentos de la programación en ensamblador Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Fundamentos básicos de la

Más detalles

Introducción a la arquitectura de computadores

Introducció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 detalles

Paralelismo al nivel de instrucciones

Paralelismo al nivel de instrucciones Paralelismo al nivel de instrucciones Arquitectura de Computadoras M. C. Felipe Santiago Espinosa Mayo de 2017 Qué es la segmentación o pipelining? O Técnica para la generación de paralelismo en microprocesadores.

Más detalles

Segmentación del ciclo de instrucción

Segmentación del ciclo de instrucción Segmentación del ciclo de instrucción William Stallings, Organización y Arquitectura de Computadores, Capítulo 11: Estructura y función de la CPU. John Hennessy David Patterson, Arquitectura de Computadores

Más detalles

MICROPROCESADOR. Multiciclo

MICROPROCESADOR. Multiciclo MICROPROCESADOR Multiciclo Ejemplo Tiempos de operación. Unidades de memoria: 10 ns. Alu y sumadores: 10 ns Archivo de registros (lectura y escritura): 5 ns. Suponiendo que los multiplexores, unidad de

Más detalles

Procesadores segmentados. El DLX.

Procesadores 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 detalles

202 PROBLEMAS DE ARQUITECTURA DE COMPUTADORES

202 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 detalles

3. Instrucciones: lenguaje de la máquina

3. Instrucciones: lenguaje de la máquina 3. Instrucciones: lenguaje de la máquina Fundamentos de Computadores Ingeniería de Telecomunicación Raúl Durán Díaz Departamento de Automática Escuela Politécnica Superior Curso académico 2009 2010 Raúl

Más detalles

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel. Tema 2: Arquitectura del repertorio de instrucciones Visión del computador que tiene el programador en bajo nivel. Lo que el programador en lenguaje ensamblador debe conocer para escribir programas: (1)

Más detalles

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores Terecer Certamen

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores Terecer Certamen UNVESA TECNCA FEECO SANTA AA EPATAENTO E EECTONCA EO311 Estructuras de Computadores 1. Se tiene la siguiente secuencia de instrucciones assembler PS: a) eterminar los riesgos que se producen en la ejecución

Más detalles

Nombre: Carnet: Examen Parcial 1 (35 Puntos)

Nombre: Carnet: Examen Parcial 1 (35 Puntos) Universidad simón Bolívar Departamento de Electrónica y Circuitos / Sección de Sistemas Digitales EC7 Arquitectura del Computador II Trimestre Abril Julio de 008 0/0/008 Nombre: Carnet: Examen Parcial

Más detalles

ALU. Unidad aritmético-lógica

ALU. Unidad aritmético-lógica ALU Unidad aritmético-lógica Definición La ALU (unidad aritmético-lógica) es el dispositivo que se encarga de realizar: a) Operaciones aritméticas (suma, resta, etc.). b) Operaciones lógicas (and, or,

Más detalles

Segmentación de cauce

Segmentación de cauce Segmentación de cauce 11ª Semana Bibliografía: [HAM03] Cap.8 Organización de Computadores. Hamacher, Vranesic, Zaki. McGraw-Hill 2003 Signatura ESIIT/C.1 HAM org [STA8] Sec.12.4 Organización y Arquitectura

Más detalles

Tema 5 (III) Jerarquía de Memoria

Tema 5 (III) Jerarquía de Memoria Grupo ARCOS Tema 5 (III) Jerarquía de Memoria Estructura de Computadores Grado en Ingeniería Informática Contenidos 1 Tipos de memoria 2 Jerarquía de memoria 3 Memoria principal 4 Memoria caché 5 Memoria

Más detalles

1) En un DLX con segmentación ejecutamos el siguiente fragmento de código:

1) En un DLX con segmentación ejecutamos el siguiente fragmento de código: Arquitectura e Ingeniería de Computadores. Examen Parcial (Problemas). 10/02/2009 1) En un DLX con segmentación ejecutamos el siguiente fragmento de código: ADDI r3,r0,#3 L1 : SUBD F2,F6,F8 SUBD F4,F8,F6

Más detalles

Arquitectura de Computadores II Clase #5

Arquitectura de Computadores II Clase #5 Arquitectura de Computadores II Clase #5 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Algunas ideas para mejorar el rendimiento Obvio: incrementar la frecuencia

Más detalles

Estrategias de predicción dinámicas.

Estrategias de predicción dinámicas. Estrategias de predicción dinámicas. Las técnicas que vamos a ver ahora para predicción de saltos se basan en información conocida sólo en tiempo de ejecución. Dos estructuras son necesarias para realizar

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores 1. Introducción 2. La CPU 3. Lenguaje Máquina 4. La Memoria 5. Sistemas de Entrada/Salida 6. Segmentación (Pipeline) 7. Memoria Caché 8. Arquitecturas RISC Arquitectura de

Más detalles

Segmentación del ciclo de instrucción

Segmentación del ciclo de instrucción Segmentación del ciclo de instrucción v.2012 William Stallings, Organización y Arquitectura de Computadores, Capítulo 11: Estructura y función de la CPU. John Hennessy David Patterson, Arquitectura de

Más detalles

Autor: Longinos Recuero Bustos

Autor: 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 detalles