Segmentación de cauce
|
|
|
- Miguel Ángel Robles Soto
- hace 7 años
- Vistas:
Transcripción
1 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 de Computadores, 7ª Ed. Stallings. Pearson Educación, Signatura ESIIT/C.1 STA org 1
2 Guía de trabajo autónomo (4h/s) Lectura Cap.8 Hamacher Sección 12.4 Stallings 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 de Computadores, 7ª Ed. Stallings. Pearson Educación, [ Signatura ESIIT/C.1 STA org 2
3 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 3
4 Concepto de segmentación Procesador sin segmentar i1 i2 i3 i4 P Secuencia de instrucciones T i1 P i2 P i3 P i4 P T T T T 4T Tiempo 4
5 Concepto de segmentación Es posible incrementar la velocidad de procesamiento, al margen de mejoras tecnológicas, sin incrementar el número de procesadores? SOLUCIÓN Segmentación de cauce (pipelining) 5
6 Concepto de segmentación SOLUCIÓN Segmentación de cauce (pipelining) 6
7 Concepto de segmentación SEGMENTACIÓN EN UNA FÁBRICA DE AUTOMÓVILES Cadena de montaje 7
8 Concepto de segmentación Soldadura chasis Galvanizado (3,3 h) anticorrosión Pintura (4 h) Acoplamiento (7 h) motor Montaje (1,5 h) accesorioscontrol de (4,4 h) calidad 22 horas (1,5 h) SEGMENTACIÓN EN UNA FÁBRICA DE AUTOMÓVILES Subdividir el proceso en n etapas, permitiendo el solapamiento en la fabricación de automóviles 8
9 Concepto de segmentación S i : etapa de segmentación i-ésima R i : registro de segmentación de la etapa i-ésima Entrada R 1 R 2 R 3 R 4 Salida S 1 S 2 S 3 S 4 Reloj SEGMENTACIÓN EN UN PROCESADOR Subdividir el procesador en n etapas, permitiendo el solapamiento en la ejecución de instrucciones 9
10 Concepto de segmentación Las instrucciones entran por un extremo del cauce, son procesadas en distintas etapas y salen por el otro extremo. Entrada R 1 R 2 R 3 R 4 Salida S 1 S 1 S 2 S 3 S 4 S 2 S 3 S 4 Reloj T T/4 T/4 T/4 T/4 Cada instrucción individual se sigue ejecutando en un tiempo T... T c...pero hay varias instrucciones ejecutándose simultáneamente 10
11 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 11
12 Ejemplo de segmentación Búsqueda de instrucción Decodificación de instrucción / Ejecución / Lectura de registros Cálculo de direcciones Acceso a memoria Escritura de resultados 4 Suma Suma << 2 RFnt1 M u x PC Dirección de lectura Instrucción Memoria de Instrucciones RFnt2 RDst Salida 2 Datos Registros Ext. signo Salida 1 M u x Cero ALU Lectura de datos Dirección Memoria de Datos Datos M u x 12
13 IF (Instruction Fetch) ID (Instruction Decode and register fetch) EX (EXecute and effective address calculation) MEM (MEMory access) WB (Write back) 4 Suma Suma << 2 RFnt1 M u x PC Dirección de lectura Instrucción Memoria de Instrucciones RFnt2 RDst Salida 2 Datos Registros Ext. signo Salida 1 M u x Cero ALU Lectura de datos Dirección Memoria de Datos Datos M u x Reloj 13
14 Ejemplo de segmentación Cada etapa del cauce debe completarse en un ciclo de reloj Fases de captación y de memoria Si acceden a memoria principal, el acceso es varias veces más lento La caché permite acceso en un único ciclo de reloj El periodo de reloj se escoge de acuerdo a la etapa más larga del cauce 14
15 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 15
16 Aceleración R 1 R 2 R 3 R 4 S 1 S 1 S 2 S 3 S 4 S 2 S 3 S 4 Reloj Instrucc. i1 S 1 S 2 S 3 S 4 T T/4 i2 S 1 S 2 S 3 S 4 i3 S 1 S 2 S 3 S 4 i4 S 1 S 2 S 3 S 4 Segmentado i1 i2 i3 i4 P T/4 T/4 T/4 T/4 T/4 T/4 T/4 P T T T T 4T P No segmentado P Tiempo 16
17 Aceleración R 1 R 2 R 3 R 4 S 1 S 1 S 2 S 3 S 4 S 2 S 3 S 4 Reloj T T/4 S 1 i1 i2 i3 i4 Etapas S 2 S 3 S 4 i1 i2 i3 i4 i1 i2 i3 i4 i1 i2 i3 i4 Segmentado No segmentado Proc. no seg. i1 i2 i3 i4 T/4 T/4 T/4 T/4 T/4 T/4 T/4 Tiempo T T T T 4T 17
18 Aceleración R 1 R 2 R 3 R 4 S 1 S 2 S 3 S 4 Reloj Aceleración en el ejemplo = k instrucciones Aceleración ideal n etapas = T Tiempo máquina no-segmentada Tiempo máquina segmentada = kt nkt (n 1+k)T/n = (n+k 1)T 4T 7T/4 = n k La aceleración ideal coincide con el número de etapas de segmentación 18
19 Aceleración R 1 R 2 R 3 R 4 S 1 S 2 S 3 S 4 Reloj T Causas que disminuyen la aceleración Coste de la segmentación Duración del ciclo de reloj impuesto por etapa más lenta T c > T/n Riesgos (hazards) Bloqueo del avance de instrucciones 19
20 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 20
21 Riesgos Riesgo Situación que impide la ejecución de la siguiente instrucción del flujo del programa durante el ciclo de reloj designado Obliga a modificar la forma en la que avanzan las instrucciones hacia las etapas siguientes Reducción de las prestaciones logradas por la segmentación 21
22 Riesgos Supongamos las siguientes etapas: F: búsqueda (fetch) de instrucción. D: decodificación de instrucción / lectura de registros. E: ejecución / cálculo de direcciones M: acceso a memoria. W: escritura (write) de resultados. 22
23 Riesgos 4 Suma Suma RFnt1 << 2 M u x PC Dirección de lectura Instrucción Memoria de Instrucciones RFnt2 RDst Salida 2 Datos Registros Ext. signo Salida 1 M u x Cero ALU Lectura de datos Dirección Memoria de Datos Datos M u x Reloj F D E M W 23
24 Riesgos estructurales Conflicto por el empleo de recursos, dos instrucciones necesitan un mismo recurso. Ej. 1: lectura de dato + captación suponiendo una única memoria para datos e instrucciones. lw r4,20(r1) F D E M W and r7,r2,r5 F D E M W or r8,r6,r2 F D E M W add r9,r2,r2 F D E M W lw r4,20(r1) F D E M W and r7,r2,r5 F D E M W or r8,r6,r2 F D E M W add r9,r2,r2 - F D E M W 24
25 Riesgos estructurales Ej. 2: ejecución de una operación con más de un ciclo en E. add rx,rx,rx F D E M W mul rd,rs,rs F D E E E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W mul rd,rs,rs F D E E E M W add rx,rx,rx F D - - E M W add rx,rx,rx F - - D E M W add rx,rx,rx F D E M W 25
26 Riesgos estructurales Ej. 3: fallo de caché al captar una instrucción. add rx,rx,rx F D E M W sub rx,rx,rx F F F F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W sub rx,rx,rx F F F F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W add rx,rx,rx F D E M W 26
27 Riesgos estructurales Para reducir el efecto de los fallos de caché se suelen captar instrucciones antes de que sean necesarias (precaptación) y se almacenan en una cola de instrucciones. F Unidad de captación Cola de instrucciones D Unidad de decodificación E Unidad de ejecución M Unidad de memoria W Unidad de actualización 27
28 Riesgos (por dependencias) de datos Acceso a datos cuyo valor actualizado depende de la ejecución de instrucciones precedentes. sub r2,r1,r3 F D E M W and r7,r2,r5 F D E M W or r8,r6,r2 F D E M W add r9,r2,r2 F D W M W sub r2,r1,r3 F D E M W and r7,r2,r5 F D - - D E M W or r8,r6,r2 F D E M W add r9,r2,r2 F D W M W 28
29 Riesgos (por dependencias) de datos El nuevo r2 está a la salida de la ALU al terminar E. Si r2 se envía de nuevo a la ALU se elimina el retardo (register forwarding). 4 Suma Suma RFnt1 << 2 M u x PC Dirección de lectura Instrucción Memoria de Instrucciones RFnt2 RDst Salida 2 Datos Registros Ext. signo Salida 1 M u x Cero ALU Lectura de datos Dirección Memoria de Datos Datos M u x F D E M W Reloj 29
30 Riesgos (por dependencias) de datos Las dependencias de datos las descubre el hardware al decodificar las instrucciones. Alternativamente puede resolverlas el compilador: sub r2,r1,r3 F D E M W nop nop nop Ventajas: Hardware más simple Reorganizar instrucciones para hacer trabajo útil en lugar de NOP Inconveniente: Aumenta el tamaño del código F D E M W F D E M W F D E M W and r7,r2,r5 F D E M W 30
31 Riesgos de control Consecuencia de la ejecución de instrucciones de salto. Salto incondicional: br L1 F D E M W and r2,r1,r4 F D E - - sub r5,r6,r7 F D or r8,r1,r6 F L1:add r6,r1,r4 F D E M W Se pierden 3 ciclos (huecos de retardo de salto*), ya que tras captar la instrucción br, hasta después del 4º ciclo (es decir, pasados otros 3 ciclos) no se conoce la dirección de salto. *branch delay slot 31
32 Riesgos de control Importante averiguar la dirección de salto lo antes posible, por ej. en la etapa de decodificación: br L1 F D E M W and r2,r1,r4 F sub or r5,r6,r7 r8,r1,r6 L1:add r6,r1,r4 F D E M W Se pierde 1 ciclo, ya que tras captar la instrucción br, después del 2º ciclo ya se conoce la dirección de salto. 32
33 Riesgos de control Salto condicional: beq r2,r3,l1 F D E M W and r2,r1,r4 F D E M W sub r5,r6,r7 F D E M W or r8,r1,r6 F D E M W L1:add r6,r1,r4 F D E M W Si se produce el salto se pierden 3 ciclos. Si no se produce el salto, no se pierden ciclos. 33
34 Riesgos de control Degradación de prestaciones debida a los saltos. Supongamos algún mecanismo hardware que permita descartar la ejecución de las instrucciones siguientes si se produce el salto. b: nº de ciclos desperdiciados cuando se produce el salto. p b : probabilidad de que se ejecute una instrucción de salto (entre 0,15 y 0,30 normalmente) p t : probabilidad de que realmente se produzca el salto cuando se ejecuta una instrucción de salto p e = p b p t : probabilidad efectiva de que se produzca un salto CPI: nº de ciclos de reloj por instrucción (suponer CPI = 1 sin saltos) CPI = (1 p b ) (1) + p b [ p t (1 + b) + (1 p t ) (1) ] = 1 + p b p t b = 1 + p e b 34
35 Riesgos de control Fb: fracción de máximas prestaciones (relación entre el nº de ciclos CPI si no hubiera saltos y el nº de ciclos CPI con saltos) F b = p e b La degradación crece rápidamente al crecer p e (más rápidamente a medida que b es mayor) 35
36 Salto retardado (delayed branch) En lugar de desperdiciar las etapas posteriores a la de salto, una o más instrucciones parcialmente completadas se completarán antes de que el salto tenga efecto. El compilador busca instrucciones anteriores lógicamente al salto que pueda colocar tras el salto. Si el salto es condicional, las instrucciones colocadas detrás no deben afectar a la condición de salto. Antes: mov r1,#3 jmp etiq nop Después: jmp etiq mov r1,#3 36
37 Salto retardado (delayed branch) Otra posibilidad es colocar la(s) instrucción(es) destino de un salto tras el salto. Antes: call subr nop... subr: mov r3,#100 Esto no funcionaría para saltos condicionales Después: call subr+4 mov r3,# subr: mov r3,#100 No podemos subir una instrucción que sólo tiene que ejecutarse algunas veces (cuando el salto se produce) a una posición donde siempre se ejecuta. 37
38 Annulling branch Un salto de este tipo ejecuta la(s) instrucción(es) siguiente(s) sólo si el salto se produce, pero la(s) ignora si el salto no se produce. Con un salto de este tipo, el destino de un salto condicional sí puede colocarse tras el salto. Antes: bz else nop ; código then... else: mov r3,#100 Después: bz,a else+4 mov r3,#100 ; código then... else: mov r3,#100 38
39 Predicción de saltos Intentar predecir si una instrucción de salto concreta dará lugar a un salto (branch taken) o no (branch not taken). Si los resultados de las instrucciones de salto condicional fueran aleatorios, comenzar a ejecutar las instrucciones siguientes al salto desperdiciaría ciclos en la mitad de las ocasiones. Se pueden minimizar las pérdidas de ciclos inútiles si para cada instrucción de salto se puede predecir con un acierto > 50% si el salto se producirá o no. Se pueden hacer predicciones distintas si el salto es hacia direcciones menores o mayores. Tipos de predicción: Estática: se toma la misma decisión para cada tipo de instrucción Dinámica: cambia según la historia de ejecución de un programa 39
40 Predicción dinámica de saltos ST: Muy probable saltar LT: Probable saltar LNT: Probable no saltar SNT: Muy probable no saltar BT Branch taken (BT) BNT SNT LNT BNT LNT LT BT BNT BNT BT BT Branch not taken (BNT) Algoritmo de dos estados (1 bit para cada instrucción) LT BNT ST Algoritmo de cuatro estados (2 bits para cada instrucción) BT 40
41 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 41
42 Modos de direccionamiento Es deseable que un operando no necesite más de un acceso a memoria Constante Registro Indirecto a través de registro Indexado (EA= reg. + desp., o EA = reg. + reg.) Es deseable que sólo puedan acceder a memoria las instrucciones de carga y almacenamiento 42
43 Modos de direccionamiento Modo de direc. complejo, 2 accesos a memoria lw r4,(20(r1)) F D E M M W and r7,r2,r5 F D E - M W Modo de direc. más simple, 1 acceso a memoria lw r3,20(r1) F D E M W lw r4,(r3) F D E M W and r7,r2,r5 F D E M W Idéntica duración, pero hardware más sencillo 43
44 Códigos de condición Las dependencias que introducen los bits de condición dificultan al compilador reordenar el código (deseable para evitar riesgos). En el ejemplo siguiente, la decisión de saltar se produce tras la etapa E de la instrucción cmp Es deseable elegir en cada instr. si afecta o no a los cód. de condición, para reordenar el código: Antes: Después: add r1,r2 cmp r3,r4 cmp r3,r4 add r1,r2 jz etiq jz etiq Al reordenar el código, se puede tomar la decisión de salto un ciclo antes, y desperdiciar un ciclo menos tras el salto 44
45 Segmentación de cauce Concepto de segmentación Ejemplo de segmentación Aceleración Riesgos Influencia en el repertorio de instrucciones Funcionamiento superescalar 45
46 Funcionamiento superescalar Procesamiento segmentado Una instrucción tras otra Rendimiento ideal: una instrucción por ciclo Procesamiento superescalar Varias instrucciones en paralelo Necesidad de varias unidades funcionales Emisión múltiple: se puede comenzar a ejecutar más de una instrucción por ciclo de reloj Rendimiento: más de una instrucción por ciclo Es fundamental poder captar instrucciones rápidamente: conexión ancha con caché + cola de instrucciones 46
47 Funcionamiento superescalar Ej.: Procesador con dos unidades de ejecución: F Unidad de captación Cola de instrucciones D Unidad de emisión E Unidad de coma flotante M Unidad de memoria W Unidad de actualización E Unidad de enteros 47
48 Funcionamiento superescalar El efecto negativo de los riesgos es más pronunciado. El compilador puede reordenar instrucciones para evitar riesgos. fadd rx,rx,rx F D E 1 E 2 E 3 M W add rx,rx,rx F D E M W fsub rx,rx,rx F D E 1 E 2 E 3 M W sub rx,rx,rx F D E M W Las instrucciones pueden emitirse en orden y finalizar de forma desordenada (ej. add finaliza antes que fadd) Múltiples problemas y soluciones, que se verán en Arquitectura de Computadores 48
49 Core i7 (Nehalem) 4 cores/chip Segmentación: 16 etapas Superescalar: 4 instrucciones en paralelo Caches: L1: 32KB I + 32KB D L2: 256KB L3: 8MB, compartida por los 4 cores Múltiples unidades funcionales 49
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
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
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
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
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,
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
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
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..
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
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
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
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
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.
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
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.
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
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
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
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.
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
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
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.
3 - Arquitectura interna de un up
[email protected] 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
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
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
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
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
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
Tema 5: Memorias. Espacio reservado para notas del alumno
Tema 5: Memorias S Definiciones S Parámetros característicos S Jerarquía de memoria S Dispositivos de almacenamiento S Clasificación S Fundamentos de las memorias S Memoria caché / Memoria virtual S Memoria
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
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
Arquitectura de Computadores II Clase #3
Clase #3 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Registros Repertorio de instrucciones Modos de direccionamiento El stack Formatos de datos Control
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
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
Arquitectura 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:
Area 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
Organización del Computador I Verano. Memoria Virtual Basado en el capítulo 5 del libro de Patterson y Hennessy
Organización del Computador I Verano Memoria Virtual Basado en el capítulo 5 del libro de Patterson y Hennessy Verano 204 Profesora Borensztejn Memoria Virtual Memoria Virtual es la técnica que permite
Tema 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 [email protected] Temario 1. Evolución histórica. 2. Repaso de conceptos importantes.
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,
Tema 5 Repertorios de instrucciones: Modos de direccionamiento y formato
Tema 5 Repertorios de instrucciones: Modos de direccionamiento y formato Bibliografía: William Stallings Organización y Arquitectura de computadores 5ta. Edition. Editorial Pearson Educación.- Objetivos:
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
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
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
SISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega [email protected] Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
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
Estructura del Computador
Estructura del Computador 1 definiciones preliminares Estructura: es la forma en que los componentes están interrelacionados Función: la operación de cada componente individual como parte de la estructura.
Resolució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.
1. Introducción a la Arquitectura de Computadoras
1. Introducción a la Arquitectura de Computadoras M. Farias-Elinos Contenido Definiciones Estructura de una computadora Evolución de las computadoras Generaciones de computadoras Evolución de la família
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
El Diseño de un Lenguaje Máquina
Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo [email protected] Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje
CPU 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
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
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
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
Tecnologí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
Arquitectura de Computadores. Tema 11. Pipelining Avanzado
Arquitectura de Computadores Tema 11 Pipelining Avanzado Eduardo Daniel Cohen [email protected] http://www.herrera.unt.edu.ar/arqcom 1 En qué se pone difícil Pipelining? Excepciones: hay 5 instrucciones
Tema 6 (II) Jerarquía de Memoria
Tema 6 (II) Jerarquía de Memoria Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Memoria cache Introducción: Acceso a bloque y principio
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
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
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
Memoria. 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
Práctica 4 - Arquitectura CPU
Práctica 4 - Arquitectura CPU Organización del Computador 1 1er. Cuatrimestre 2006 Programación en Assembler Ejercicio 1 Dados los siguientes valores de la memoria y del registro R0 de la arquitectura
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
Ensamblador. Introducción. Dpto. Física y Arquitectura de Computadores. Universidad Miguel Hernandez
Dpto. Física y Arquitectura de Computadores Universidad Miguel Hernandez Es el lenguaje de más bajo nivel que admite una máquina. El ensamblador hace que el código binario(máquina sea transparente al usuario)
Organizacion del Computador
Universidad Nacional de Ingeniería Facultad de Ciencias Introducción a la Ciencia de la Computación Organizacion del Computador Prof: J. Solano 2011-I Objetivos Despues de estudiar este cap. el estudiante
Entorno de Ejecución del Procesador Intel Pentium
Arquitectura de Ordenadores Arquitectura del Procesador Intel Pentium Abelardo Pardo [email protected] Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Entorno de Ejecución del Procesador
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
ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES
Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Repertorio de instrucciones y modos de direccionamiento: conceptos básicos Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa
Clasificación del procesador según el número de referencias a memoria.
Estructura de Computadores Tema 1. El sistema computador Estructura general de un computador. Arquitectura de Von Neumann. Unidades generales: procesador, memoria, entrada/salida, unidad de control. Niveles
Organizació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
Procesadores 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.
Memoria Virtual. Memoria Virtual
Memoria Virtual DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 Memoria Virtual Define la relación entre memoria principal y memoria secundaria Permite crear la ilusión de una memoria principal de
Unidad 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
Arquitectura de Computadores
Arquitectura de Computadores [email protected] Curso 2004-2005 Arquitectura de Computadores Arquitectura de computadores es la disciplina que estudia la organización y funcionamiento de los computadores
TEMA II: ALMACENAMIENTO DE LA INFORMACIÓN
CUESTIONES A TRATAR: Existe un tipo único tipo de memoria en un determinado computador? Todas las memorias de un computador tienen la misma función?. Qué es la memoria interna de un computador? Por qué
ADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:
ADMINISTRACION DE LA MEMORIA Función del Administrador de Memoria Registra qué parte de memoria está libre y ocupada Asigna y libera espacio en memoria a los procesos Administra el intercambio entre la
Tema 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,
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
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 [email protected]
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
Predicción Dinámica - 1. Arquitectura de Computadores
Para conseguir el rendimiento óptimo de una instrucción por ciclo, otro de los obstáculos que nos encontramos es el de las dependencias de control, esencialmente, los saltos. Ya vimos que hay soluciones
Estructura del Computador
ARQ. DE COMPUTADORAS Arquitectura de Computadoras Villalobos Universidad Peruana Union Filial Tarapoto Semana 02.2 Estructura del Computador El modelo von Neumman Formado por 5 componentes principales:
Tema 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...
Análisis general de un Microprocesador
Análisis general de un Microprocesador Arquitectura del chip Repertorio de instrucciones Sistema mínimo Señales de control Función de cada pin del µp Herramientas de desarrollo Performance. ARQUITECTURA
Construyendo Programas más Complejos
Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo [email protected] Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más
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
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
Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Arquitectura de Computadoras. Anexo Clase 8 Buses del Sistema
Arquitectura de Computadoras Anexo Clase 8 Buses del Sistema Estructuras de interconexión Todas las unidades han de estar interconectadas. Existen distintos tipos de interconexiones para los distintos
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
Ejercicios de Arquitectura de Computadoras
Ejercicios Arquitectura Computadoras José Garzía 9 En este tipo ejercicios bemos tener siempre presentes estas tres ecuaciones: MP ( en Memoria Principal ) Cantidad en la Memoria Principal por Cantidad
Paralelismo 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
EVOLUCIÓN DE LOS PROCESADORES
EVOLUCIÓN DE LOS PROCESADORES Lecturas recomendadas: * Tanembaum, A. Organización de computadoras. Cap. 1 * Stallings, W. Organización y arquitectura de computadores. Cap. 2 Arquitectura de una computadora
Soluciones 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
INDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos
INDICE Prólogo XI 1. Operación del Computador 1 1.1. Calculadoras y Computadores 2 1.2. Computadores digitales electrónicos 5 1.3. Aplicación de los computadores a la solución de problemas 7 1.4. Aplicaciones
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
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
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
1) 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
