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

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

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

Transcripción

1 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 Curso 2011/ / 43

2 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

3 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

4 Repaso: procesador multiciclo Procesador MIPS multiciclo visto en FC: Estado 2 Estado 0 LeerMem SelALUA = 0 Inicio selalub = 01 ALUOp = 00 IoD = 0 EscrIR EscrPC FuentePC = 00 (Op = LW ) o (Op = SW ) Estado 1 SelALUA = 0 selalub = 11 ALUOp = 00 Estado 6 Estado 8 (Op = Aritm-Lógicas) (Op = beq ) (Op = j ) Estado 9 Finalización de jump SelALUA = 1 selalub = 10 ALUOp = 00 Cálculo dirección de memoria Ejecución de la SelALUA = 1 operación selalub = 00 ALUOp = 10 SelALUA = 1 selalub = 00 ALUOp = 01 EscrPCCond FuentePC = 01 Finalización de salto condicional EscrPC FuentePC = 10 (Op = LW ) Estado 3 (Op = SW ) Estado 5 Estado 7 LeerMem IoD = 1 Acceso a memoria EscrMem I0D = 1 Acceso a memoria RegDest = 1 EscrReg Mem2Reg=0 Finalización de la operación Estado 4 Etapa de escritura EscrReg Mem2Reg = 1 RegDest = 0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

5 Segmentación de cauce Comparación entre la implementación multiciclo y la segmentada: Instrucciones lw $1,16($2) IF ID EX MEM WB addi $2,$2,4 IF ID EX MEM beq $3,$0,loop IF ID EX Instrucciones lw $1,16($2) IF ID EX MEM WB addi $2,$2,4 IF ID EX MEM WB beq $3,$0,loop IF ID EX MEM WB Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

6 Operaciones multiciclo Algunas operaciones tardan más de un ciclo de reloj en la etapa de ejecución Las instrucciones en punto flotante tienen la misma segmentación que las enteras, pero con las siguientes modificaciones: La etapa EX tiene diferente latencia dependiendo de la instrucción Existen diversas unidades funcionales para cada tipo de operación Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

7 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

8 Definición El paralelismo a nivel de instrucción (Instruction Level Parallelism-ILP) es la capacidad de procesar instrucciones en paralelo. Viene determinado por el número de instrucciones que pueden solaparse en las etapas de un procesador. Dos instrucciones son dependientes si se deben ejecutar en orden: 1 Indican la posibilidad de un riesgo (una instrucción no se puede ejecutar en el ciclo de reloj que le correspondería) 2 Determinan el orden en el cual se deben calcular los resultados. 3 Establecen la cantidad máxima de paralelismo que se puede obtener. Hay tres tipos de dependencias: de datos o verdaderas de nombre (antidependencias y dependencias de salida) de control Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

9 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

10 Riesgos en la ejecución El CPI ideal de un procesador segmentado es uno Sin embargo, hay situaciones, denominadas riesgos (hazards), que impiden que se ejecute la siguiente instrucción del flujo de instrucciones durante su ciclo de reloj. Tipos de riesgos Estructurales: el hardware no puede soportar la combinación de instrucciones que se quieren ejecutar en el mismo ciclo. De control: surgen del problema de determinar la instrucción correcta que se tiene que ejecutar después de un salto. De datos: surgen de la existencia de dependencias entre las instrucciones (RAW, WAW, WAR). Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

11 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

12 Unidad de control Camino de datos segmentado con las señales de control identificadas Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

13 Anticipación Permite obtener las entradas de la ALU de cualquier registro de segmentación, no solo del ID/EX Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

14 Anticipación Permite obtener las entradas de la ALU de cualquier registro de segmentación, no solo del ID/EX Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

15 Bloqueo En algunas situaciones la anticipación no evita el riesgo RAW y se hace necesario bloquear el flujo de instrucciones en el cauce Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

16 Bloqueo En algunas situaciones la anticipación no evita el riesgo RAW y se hace necesario bloquear el flujo de instrucciones en el cauce Necesitamos parar un ciclo Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

17 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

18 Procesamiento de saltos Los riesgos de control se originan a partir de las instrucciones de salto condicional que determinan la secuencia de instrucciones que hay que procesar tras ellas. Cuando se ejecuta un salto, éste puede cambiar o no el contador de programa (PC): salto efectivo / salto no efectivo. El método más simple para tratar con saltos consiste en purgar el cauce y repetir la búsqueda de la instrucción siguiente al salto una vez que se detecta el salto. Pueden provocar una mayor pérdida de rendimiento para un cauce MIPS que un riesgo de datos. Unos ciclos de parada en cada salto no parecen mucho, pero en la práctica puede suponer una pérdida del rendimiento de entre un 10 % y un 30 %, dependiendo de la frecuencia de saltos y de la latencia de los mismos (etapa en la que se decide el salto). Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

19 Predicción de salto Existen dos tipos de predicción de saltos: Predicción fija: la predicción no depende del comportamiento dinámico del salto, el hardware siempre realiza la misma predicción para cada salto. Predicción dinámica: depende del comportamiento del salto en tiempo de ejecución y cambiará si el salto cambia su comportamiento durante la ejecución. Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

20 Salto retardado Las instrucciones que se captan después de una instrucción de salto y antes de la modificación del PC se ejecutan en su totalidad. Se dice que estas instrucciones ocupan el hueco de retardo. El compilador debe ubicar después de la instrucción de salto: Una instrucción que no modifique la semántica del programa. Una NOP. La tarea del compilador es hacer las instrucciones sucesoras válidas y útiles. Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

21 Índice 1 Introducción a la segmentación de cauce 2 Dependencias y paralelismo a nivel de instrucción 3 Riesgos en la ejecución 4 Cauce segmentado en el MIPS 5 Procesamiento de saltos 6 Ejercicios Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

22 Ejercicio 1 Enunciado: Identifica todas las dependencias y su tipo en el siguiente código: 1 add $2, $5, $4 2 add $4, $2, $5 3 lw $4, 100($2) 4 sub $10, $4, $16 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

23 Ejercicio 1 Solución: 1 Dependencias verdaderas. 2 Antidependencias. 3 Dependencias de salida. add $2, $5, $4 add $4, $2, $5 lw $4, 100($2) sub $10, $4, $16 Dye r Ro lá n Ga rc ía Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

24 Ejercicio 1 Solución: 1 Dependencias verdaderas. 2 Antidependencias. 3 Dependencias de salida. add $2, $5, $4 add $4, $2, $5 lw $4, 100($2) sub $10, $4, $16 Dye r Ro lá n Ga rc ía Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

25 Ejercicio 1 Solución: 1 Dependencias verdaderas. 2 Antidependencias. 3 Dependencias de salida. add $2, $5, $4 add $4, $2, $5 lw $4, 100($2) sub $10, $4, $16 Dye r Ro lá n Ga rc ía Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

26 Ejercicio 2 Enunciado: El siguiente código se ejecuta en un procesador segmentado de 5 etapas con salto fijo no efectivo que se decide en la 2ª etapa: etiq: slt $t3, $a0, $a1 bne $t3, $0, salir lw $t0, 0($a0) add $t2, $t2, $t0 addi $a0, $a0, -4 j etiq salir: sw $t2, 0($a0) Dibuja el diagrama multiciclo para una iteración y calcula el CPI si $a0 inicialmente tenía el valor 0x1000FF10 y $a1 el valor 0x1000FF00. Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

27 Ejercicio 2 Solución (Primera iteración): Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

28 Ejercicio 2 Solución (Iteración de salida): Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

29 Ejercicio 2 Solución (CPI): CPI sec1 = 4 ciclos ent + (5 it 10 ciclos/it) + 6 ciclos sal = 60 (5 it 6 inst/it) + 3 inst sal 33 = 1,81 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

30 Ejercicio 3 Enunciado: Considere la siguiente secuencia de instrucciones empleada para una copia de memoria a memoria: lw $6, 100($5) sw $6, 200($5) Muestre los cambios necesarios en el camino de datos para permitir que un código como este se ejecute sin bloqueos. Incluya las ecuaciones de anticipación para cada una de las señales de control de cada multiplexor. Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

31 Ejercicio 3 Solución: EX/MEM MemWrite MEM/WB MemtoReg MEM MUX MUX MEM/WB RegisterRd EX/MEM RegisterRd Forwarding unit (MEM/WB RegisterRd == EX/MEM RegisterRd) and EX/MEM.MemWrite and MEM/WB.MemtoReg=0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

32 Ejercicio 4 Enunciado: Calcular el CPI de un camino de datos segmentado con el siguiente repertorio de instrucciones: 22 % cargas, 11 % almacenamientos, 49 % tipo R, 16 % saltos y 2 % bifurcaciones. Suponer que la mitad del tiempo la instrucción que sigue a una instrucción de carga depende del resultado de la carga. Considerar que las bifurcaciones tienen siempre 1 ciclo de reloj de retardo (CPI j =2). Suponer además que el 25 % de los saltos son efectivos. Cuántas veces es más rápida una máquina segmentada (con CPI = 1), que no retarda la segmentación, si se compara con la máquina descrita? Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

33 Ejercicio 4 Solución a): CPI = 0, 22 (0, 5 1+0, 5 2)+ 0, , , 16 (0, , 75 1)+0, 02 2 = 1,17 Solución b): R maq1 R maq2 = CPI maq2 CPI maq1 = 1,17 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

34 Ejercicio 5 (I) Enunciado: a) Supongamos un procesador segmentado de 4 etapas (IF, ID, EX/MEM y WB) con salto fijo no efectivo. En la etapa EX/MEM se realiza la ejecución de las instrucciones o el acceso a memoria y en WB se realiza la post-escritura. Además, este procesador tiene una unidad de anticipación en la etapa EX/MEM y una unidad de detección en la etapa ID. Es posible ejecutar el siguiente código sin introducir ninguna burbuja? lw $t0, 0($a0) add $t2, $t2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

35 Ejercicio 5 (y II) b) Muestra el diagrama multiciclo del siguiente código: addi $8, $0, 0 etiq: lw $2, 0($4) addi $4, $4, 4 add $9, $9, $2 addi $8, $8, 1 slti $1, $8, 2 bne $1, $0, etiq addi $9, $9, 1 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

36 Ejercicio 5 Solución (a): lw $t0, 0($a0) add $t2, $t2, $t0 IF ID EX/MEM WB IF ID EX/MEM WB $t0 García Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

37 Ejercicio 5 Solución (b): addi $8, $0, 0 etiq: lw $2, 0($4) addi $4, $4, 4 add $9, $9, $2 addi $8, $8, 1 slti $1, $8, 2 bne $1, $0, etiq addi $9, $9, 1 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 IF $8 ID EX/MEM WB IF ID EX/MEM WB IF Siguiente iteración Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

38 Ejercicio 6 (I) Enunciado: En un procesador segmentado MIPS con salto fijo no efectivo, en donde el salto se decide en la etapa ID y tiene una unidad de anticipación en la etapa de EX, es decir, se anticipan los datos a la ALU o unidades de punto flotante, se está ejecutando el siguiente código: Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $f2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $f2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

39 Ejercicio 6 (y II) Suponiendo que la latencia de la unidad de multiplicación en punto flotante es de 4, la de suma en punto flotante de 2 y ambas unidades son segmentadas, a) Dibuja el diagrama multiciclo para una iteración donde el salto fuese efectivo. b) Cómo se puede mejorar el rendimiento de la secuencia anterior reordenando el código? c) Dibuja el diagrama multiciclo para una iteración donde el salto fuese efectivo si en lugar de salto fijo no efectivo se utiliza salto retardado. d) Cómo se puede aprovechar el hueco del salto con la técnica de salto retardado en el código de este ejercicio? Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

40 Ejercicio 6 Solución (a): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 IF ID EX MEM WB $s2 IF ID EX MEM WB $f1 IF ID EX1 EX2 EX3 EX4 MEM WB IF ID EX MEM WB IF ID IF $f1 EX1 EX2 MEM WB ID IF $f2 EX MEM WB ID EX MEM WB IF Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

41 Ejercicio 6 Solución (b): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

42 Ejercicio 6 Solución (b): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Loop: lwc1 $f1, 4($s2) addi $s2, $s2, 4 mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

43 Ejercicio 6 Solución (c): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 addi $s2, $s2, 4 IF ID EX MEM WB $s2 IF ID EX MEM WB $f1 IF ID EX1 EX2 EX3 EX4MEM WB IF ID EX MEM WB IF ID IF $f1 EX1 EX2MEM WB ID IF $f2 EX MEM WB ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

44 Ejercicio 6 Solución (d): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

45 Ejercicio 6 Solución (d): Loop: addi $s2, $s2, 4 lwc1 $f1, 0($s2) mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 swc1 $f2, 0x7000($s2) bne $s2, $s1, Loop add $s1, $s2, $t0 Loop: lwc1 $f1, 4($s2) addi $s2, $s2, 4 mul.s $f1, $f1, $s2 lwc1 $f2, 0x7000($s2) add.s $f2, $f1, $s2 bne $s2, $s1, Loop swc1 $f2, 0x7000($s2) add $s1, $s2, $t0 Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

46 Ejercicio 7 Enunciado: Identifica todas las dependencias del siguiente código: salto: addi $4, $4, 4 lwc1 $f18, 100($4) sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto nop Si usamos el procesador MIPS habitual pero con salto retardado: a) Cuál sería el diagrama multiciclo para una iteración? b) Reordena el código para optimizar el rendimiento. Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

47 Ejercicio 7 Solución (a): 1 Dependencias verdaderas. 2 Dependencias de salida. salto: addi $4, $4, 4 lwc1 $f18, 100($4) sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto nop Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

48 Ejercicio 7 Solución (a): 1 Dependencias verdaderas. 2 Dependencias de salida. salto: addi $4, $4, 4 lwc1 $f18, 100($4) sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto nop Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

49 Ejercicio 7 Solución (b): salto: addi $4, $4, 4 lwc1 $f18, 100($4) sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto nop Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

50 Ejercicio 7 Solución (b): salto: addi $4, $4, 4 lwc1 $f18, 100($4) sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto salto: lwc1 $f18, 104($4) add $3, $6, $3 sub.s $f18, $f12, $f18 addi $4, $4, 4 beq $3, $8, salto swc1 $f18, 100($4) nop Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

51 Ejercicio 7 Solución (c): salto: addi $4, $4, 4 IF ID EX MEM WB lwc1 $f18, 100($4) IF ID EX MEM WB sub.s $f18, $f12, $f18 swc1 $f18, 100($4) add $3, $6, $3 beq $3, $8, salto $4 $f18 IF ID EX1 EX2MEM WB $f18 IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB nop Dyer Rolán García (GAC) Paralelismo a nivel de instrucción Curso 2011/ / 43

Carga de la instrucción / Decodificación y carga de registros (Figura 37) Instrucciones de salto condicional (Figura 40)

Carga de la instrucción / Decodificación y carga de registros (Figura 37) Instrucciones de salto condicional (Figura 40) Inicio Carga de la instrucción / Decodificación y carga de registros (Figura 37) de acceso a la (Figura 38) de tipo R (Figura 39) de salto condicional (Figura 40) jump (Figura 41) Figura 5.36.- Una visión

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

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

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

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

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

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

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

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

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

Ingeniería Informática. Ampliación de Estructura de Computadores. Curso 2010-2011. 6.1 Introducción a la segmentación de Instrucciones.

Ingenierí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 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

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

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 microprogramada Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción.

Más detalles

Arquitectura Segmentada: Conceptos básicosb

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

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

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

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

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

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

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS ARQUIECURA DE COMPUADORES P2.1. Se tiene un sencillo sistema RISC con control en un único ciclo (similar al descrito en la asignatura). Las instrucciones son de 32 bits y los bits se distribuyen como en

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

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. 5.2 [5] < 5.3> Este ejercicio es similar al 5.1, pero ahora considere los fallos causados por permanecer en 1 (la señal es siempre 1).

Ejercicios. 5.2 [5] < 5.3> Este ejercicio es similar al 5.1, pero ahora considere los fallos causados por permanecer en 1 (la señal es siempre 1). Ejercicios 5.1 [5] < 5.3> Describa el efecto que un simple fallo permanecer como 0 (es decir, independiente de lo que debería ser, la señal es siempre 0) provocaría en los multiplexores en el camino de

Más detalles

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2 Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2 Departamento de Ingeniería de Sistemas Universidad id d de Antioquia i 2011 2 Unidad de control principal Mediante el

Más detalles

UNIDAD 4: El procesador: Camino de los datos y Control.

UNIDAD 4: El procesador: Camino de los datos y Control. UNIDAD 4: El procesador: Camino de los datos y Control. 4.1 Introducción El rendimiento de una máquina depende de tres factores clave: Conteo de Instrucciones, tiempo del ciclo de reloj y ciclos de reloj

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

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

6. PROCESADORES SUPERESCALARES Y VLIW

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 detalles

Apéndice A. Manual de usuario. Guía rápida

Apéndice A. Manual de usuario. Guía rápida Apéndice A Manual de usuario En este manual se explica como utilizar Simula3MS. En la sección A.1 se enumeran los pasos básicos para usar la herramienta. A continuación se describen de forma más detallada

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

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

Arquitectura de Computadores II Clase #16

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

Arquitectura de Computadores. Tema 11. Pipelining Avanzado

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

1. Objetivo y evolución de los procesadores ILP.

1. 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 detalles

op rs rt inmediato 6 bits 5 bits 5 bits Tipo J: Salto incondicional op

op rs rt inmediato 6 bits 5 bits 5 bits Tipo J: Salto incondicional op Arquitectura MIPS: Formato de la instrucción máquina La ruta de datos la diseñaremos para un subconjunto de instrucciones del procesador MIPS, que dispone de sólo 3 formatos de diferentes de longitud fija

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

Ingeniería Informática. Ampliación de Estructura de Computadores. Curso 2010-11

Ingenierí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 detalles

Arquitectura e Ingeniería de Computadores

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

Arquitectura t de Computadores

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

Diseño Procesador Monociclo

Diseño Procesador Monociclo Diseño Procesador Monociclo Especificación de la arquitectura del repertorio de instrucciones y de las instrucciones que podrá ejecutar el procesador. Modelo Carga-Almacenamiento. Se implementará el procesador

Más detalles

CICLOS DEL PROCESADOR

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

Sesión 11 Implementación de sentencias condicionales

Sesión 11 Implementación de sentencias condicionales INGENIERÍATÉCNICA EN INFORMÁTICA DE GESTIÓN. CURSO 2001-2002 LABORATORIO DE ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES Sesión 11 Implementación de sentencias condicionales INSTRUCCIONES DE COMPARACIÓN Y SALTOS

Más detalles

TEMA 3. PLANIFICACIÓN (SCHEDULING) DE INSTRUCCIONES Arquitectura de Sistemas Paralelos 1. pág 2. direcc MEM

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

PIPELINING: Antes de adentrarnos en el tema, veremos una analogía de un pipeline:

PIPELINING: Antes de adentrarnos en el tema, veremos una analogía de un pipeline: PIPELINING: Antes de adentrarnos en el tema, veremos una analogía de un pipeline: Observemos que la técnica de Pipelining no mejora el tiempo de cada tarea, sino el tiempo de toda la carga de trabajo.

Más detalles

FUNCIONAMIENTO DEL ORDENADOR

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

ESTRUCTURA BÁSICA DE UN ORDENADOR

ESTRUCTURA BÁSICA DE UN ORDENADOR ESTRUCTURA BÁSICA DE UN ORDENADOR QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... Qué son los

Más detalles

Implementación de instrucciones para el procesador MIPS de ciclo único.

Implementación de instrucciones para el procesador MIPS de ciclo único. Implementación de instrucciones para el procesador MIPS de ciclo único. 1. Introducción. El MIPS (Microprocessor without Interlock Pipeline Stages) es un conocido tipo de procesador de arquitectura RISC

Más detalles

Estructura de Computadores

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

Explotación del paralelismo a nivel de instrucción

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

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Mé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 detalles

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

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

Estructura de Computadores Tema 1. Introducción a los computadores

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

Arquitectura de Computadores

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

Tema 1. Introducción a la arquitectura de computadores: diseño, coste y rendimiento

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

LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION

LECCIÓ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 detalles

Organización del Computador I Verano. Control Multiciclo. Basado en el capítulo 5 del libro de Patterson y Hennessy

Organización del Computador I Verano. Control Multiciclo. Basado en el capítulo 5 del libro de Patterson y Hennessy Organización del Computador I Verano Control Multiciclo Basado en el capítulo 5 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Resumen Step name Instruction fetch Instruction decode/register

Más detalles

Introducción PROCESADOR SUPERESCALAR. Paralelismo. Grado m: en cada ciclo se buscan/decodifican m instrucciones. supes

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

TEMA 4. ARQUITECTURA IA-64

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

MICROPROCESADOR RISC SINTETIZABLE EN FPGA PARA FINES DOCENTES

MICROPROCESADOR RISC SINTETIZABLE EN FPGA PARA FINES DOCENTES MICROPROCESADOR RISC SINTETIZABLE EN FPGA PARA FINES DOCENTES J.D. MUÑOZ1, S. ALEXANDRES1 Y C. RODRÍGUEZ-MORCILLO2 Departamento de Electrónica y Automática. Escuela Técnica Superior de Ingeniería ICAI.

Más detalles

Paralelismo en monoprocesadores. Procesadores VLIW

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

COMPUTADORES SEGMENTADOS (DLX)

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

Práctica III Introducción a la descripción VHDL del procesador DLX

Práctica III Introducción a la descripción VHDL del procesador DLX Departamento de Ingeniería Electrónica de Sistemas Informáticos y Automática 3 Práctica III Introducción a la descripción VHDL del procesador DLX 3.1. Implementación del procesador DLX La configuración

Más detalles

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL 1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto

Más detalles

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

PRACTICA 2 Ejercicio 2

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

Arquitecturas CISC y RISC

Arquitecturas CISC y RISC Arquitecturas CISC y RISC Diseño de Sistemas Digitales EL-3310 I SEMESTRE 2008 2. ARQUITECTURA DEL CONJUNTO DE INSTRUCCIONES 2.1 Elementos de la arquitectura Clasificación de la arquitectura Organización

Más detalles

TEMA 3 PLANIFICACIÓN O REORDENAMIENTO (SCHEDULING) DE INSTRUCCIONES ÍNDICE

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

PRÁCTICAS DE ARQUITECTURA DE COMPUTADORES

PRÁCTICAS DE ARQUITECTURA DE COMPUTADORES PRÁCTICAS DE ARQUITECTURA DE COMPUTADORES PRACTICA 7 Repaso del Lenguaje Ensamblador CURSO 2005-2006 Arquitectura de Computadores. Práctica 7: Repaso del lenguaje Ensamblador 1 PRÁCTICA 7 ASPECTO TRATADO:

Más detalles

Tema V Generación de Código

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

El nivel ISA (II)! Conjunto de Instrucciones

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

ESTRUCTURAS ALGORITMICAS

ESTRUCTURAS ALGORITMICAS ESTRUCTURAS ALGORITMICAS El proceso de resolución de problemas en un ordenador conduce a la escritura de un programa y su ejecución. Las fases en el desarrollo de un programa pueden resumirse de la siguiente

Más detalles

Estructuras en LabVIEW.

Estructuras en LabVIEW. Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While

Más detalles

Planificación estática

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

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

Objetivos. 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 detalles

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas Herramientas de Programación M.C. Juan Carlos Olivares Rojas Febrero 2011 Temario Simbología Reglas para la construcción de Diagramas Pseudocódigo Temario Tipos de Datos y Expresiones Estructuras lógicas

Más detalles

Estructura de Computadores. Capítulo 3b: Programación en

Estructura de Computadores. Capítulo 3b: Programación en Estructura de Computadores Capítulo 3b: Programación en ensamblador del MIPS. José Daniel Muñoz Frías Universidad Pontificia Comillas. ETSI ICAI. Departamento de Electrónica y Automática Estructura de

Más detalles

La eficiencia de los programas

La eficiencia de los programas La eficiencia de los programas Jordi Linares Pellicer EPSA-DSIC Índice General 1 Introducción... 2 2 El coste temporal y espacial de los programas... 2 2.1 El coste temporal medido en función de tiempos

Más detalles

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

Organización procesador MIPS

Organización procesador MIPS Organización procesador MIPS Organización MIPS Memoria CPU Registros FPU Registros Alu Mul Div Hi Lo U. Aritmética Traps Manejo de Memoria Organización MIPS Unidad Aritmética y Lógica (ALU). Unidad Aritmética

Más detalles

Tema: Microprocesadores

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

Instituto Tecnológico de Morelia

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

MANUAL DE PRÁCTICAS DEL TALLER DE PROGRAMACIÒN PRACTICA NO.6

MANUAL DE PRÁCTICAS DEL TALLER DE PROGRAMACIÒN PRACTICA NO.6 MANUAL DE PRÁCTICAS DEL TALLER DE PROGRAMACIÒN PRACTICA NO.6 NOMBRE DE LA PRÁCTICA. Estructuras secuénciales 6.1 OBJETIVO GENERAL El alumno desarrollará la habilidad para diseñar algoritmos secuenciales,

Más detalles

Qué es un programa informático?

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

Ejercicios. Arquitectura de Computadoras. José Garzía

Ejercicios. Arquitectura de Computadoras. José Garzía jercicios de rquitectura de Computadoras José Garzía n la figura se representa el diagrama de flujo de un algoritmo. B X Y +B í + 7=? No B B+ C +B Los registros, B y C tienen una longitud de 8 bits. 7

Más detalles

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Algoritmos. 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 detalles

Arquitecturas RISC v.2014

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

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

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. Sistema complejo se estudia

Más detalles

Procesadores Superescalares: Paralelismo Explícito a Nivel de Instrucción

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

Conceptos de Arquitectura de Computadoras Curso 2015

Conceptos de Arquitectura de Computadoras Curso 2015 PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.

Más detalles

Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores

Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores Departamento de Ingeniería Electrónica Facultad de Ingeniería Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores Unidad 5: IPS Pipeline Prof. Felipe Cabarcas cabarcas@udea.edu.co

Más detalles

3 - Arquitectura interna de un up

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

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son:

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son: 3. Circuitos aritméticos ticos Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Introducción La realización de operaciones aritméticas y lógicas

Más detalles

Arquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3. Departamento de Ingeniería de Sistemas Universidad de Antioquia 2011 2

Arquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3. Departamento de Ingeniería de Sistemas Universidad de Antioquia 2011 2 Arquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3 Departamento de Ingeniería de Sistemas Universidad de Antioquia 2011 2 Instrucciones de control de flujo Arquitectura de Computadores

Más detalles

Conceptos básicos de procesadores

Conceptos básicos de procesadores 1 Conceptos básicos de procesadores Contenidos 1.1. Diseño de un repertorio de instrucciones 1.2. Mecanismo completo de ejecución de una instrucción 1.3. Evaluación de prestaciones de un procesador 1.4.

Más detalles