ARQUITECTURA DE SISTEMAS PARALELOS. 3º INGENIERÍA TECNICA EN INFORMÁTICA DE SISTEMAS. PRÁCTICA 6 (curso 03/04) SEGMENTACION EN EL PROCESADOR DLX

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

Download "ARQUITECTURA DE SISTEMAS PARALELOS. 3º INGENIERÍA TECNICA EN INFORMÁTICA DE SISTEMAS. PRÁCTICA 6 (curso 03/04) SEGMENTACION EN EL PROCESADOR DLX"

Transcripción

1 ARQUITECTURA DE SISTEMAS PARALELOS. 3º INGENIERÍA TECNICA EN INFORMÁTICA DE SISTEMAS. PRÁCTICA 6 (curso 03/04) SEGMENTACION EN EL PROCESADOR DLX OBJETIVOS. En esta práctica manejaremos un simulador (WinDLX, de libre distribución que se puede descargar en la dirección ) del procesador didáctico encadenado (segmentado) DLX, con dos objetivos: Familiarizarse con el juego de instrucciones de un procesador RISC típico, como es el DLX. Trabajar con el encadenamiento básico del mismo. Hay que tener en cuenta que el juego de instrucciones de los procesadores RISC está orientado a la sencillez para que el encadenamiento sea muy efectivo, de ahí que las instrucciones de que suele disponer son muy simples aunque ortogonales, y en esto difieren de las de los procesadores CISC (ej. familia x86 o 68000) a la que seguramente el alumno esté acostumbrado. En esta práctica se pretende estudiar el comportamiento de un procesador segmentado, comprobar el efecto de los bloqueos de datos y control sobre las prestaciones así como evaluar algunas técnicas para reducir estos bloqueos. INTRODUCCION. Características de la Arquitectura DLX. Aunque en clase de teoría se ha estudiado la arquitectura interna del procesador DLX, para la realización de esta práctica y el manejo de instrucciones sólo nos hace falta saber del DLX: Contiene 32 registros de 32 bits (R0 a R31) de propósito general (General Purpose Register, GPR), es decir todos sirven para todo (son ortogonales). Las únicas excepciones son el registro R0 que siempre contiene el valor cero, y el R31, que sirve para guardar la dirección de retorno en las JAL (Jump and Link, equivalentes a las llamadas a subrutinas CALL). Existen otros registros especiales y de coma flotante (FP) que no se estudian en esta práctica. Todas las instrucciones ocupan una palabra de 32 bits exactamente y deben estar alineadas en memoria (ocupar direcciones múltiplo de 4). O sea una instrucción no puede empezar en la dirección y acabar en la 20006; debe ocupar de la a la o bien de la a la Juego de instrucciones. En el anexo 1 se tiene una tabla resumen de las instrucciones del DLX y una breve explicación del juego de instrucciones, del cual a continuación explicamos los detalles más importantes. Todas las instrucciones (donde tenga sentido) son de tres operandos, es decir, se efectúa la operación sobre dos operandos fuente (situados a la derecha en la notación DLX) y el resultado lo almacenan en el registro destino (el de la izquierda). Por ejemplo: ALUoper R1, R2, R3 ; R1 < R2 oper R3 ; R2 y R3 son fuente, R1 destino. Modos de direccionamiento. Aún más reducido que el conjunto de instrucciones son los modos de direccionamiento. DLX sólo permite dos (y con ellos debemos componérnoslas para escribir cualquier código): Inmediato. Una constante de 16 bits actúa como segundo operando fuente. Por ejemplo: ALUoper R1,R2,#d16, ; R1 < R2 oper d16 ; R2 y d16 son fuente, R1 destino. d16 es un constante de 16 bits. Sólo se puede usar en instrucciones ALU, y no en las de transferencia de datos. La almohadilla # puede suprimirse. Registro base más desplazamiento. Sólo se usa en las de transferencia de datos, y nunca en las ALU las cuales sólo pueden usar registros o valores inmediatos como operandos. Por ejemplo, si usamos el paréntesis como notación del direccionamiento y el corchete como dirección de memoria, una instrucción de carga sería: Load R1, d16(r3) ; R1< [R3+d16], donde R3 es el registro base en esta instrucción y d16 una constante con signo de 16 bits. Evidentemente un tercer operando no tiene sentido en estas instrucciones de transferencia de datos. Un almacenamiento sería: Store d16(r4), R5 ; [R4+d16] < R5. Dado que el registro R0 contiene siempre el valor 0, si se usa R0 como registro base se está accediendo a los primeros 32Kb de la memoria o a los últimos 32KB (si el desplazamiento fuera negativo). Si se toma d16 como 0 se tiene un direccionamiento indexado simple. El resto de operaciones debe realizarse directamente sobre registros. Instrucciones ALU. Como se dijo antes son de tres operandos y además son todas registro-registro, es decir todo operando es un registro, y ningún operando puede estar en memoria. Nótese la regularidad de ellas: toda operación simple tiene otras tres variantes (siempre que lo permita). Por ejemplo para la suma con signo ADD, existe: 1. Suma sin signo ADDU. 2. Suma con signo y con direccionamiento inmediato (valor de 16 bits) ADDI 3. Suma sin signo y con direccionamiento inmediato (valor de 16 bits) ADDUI Evidentemente en una operación lógica (OR, XOR, AND) no tiene sentido el signo. En una multiplicación o división por razones de implementación no existe el direccionamiento inmediato. 1

2 Finalmente existen unas instrucciones que valoran o inicializan a cierto o falso (en inglés set ) un registro destino comparando los dos fuente, están pensadas para instrucciones condicionales, por ejemplo SET if GREATER OR EQUAL (Inicializa comparando si es mayor o igual): SGE R13, R21, R22 ; R13 < (R21 >= R22). Existen las siguientes: LT, if LESS THAN, si menor que GT, if GREATER THAN, si mayor que LE, if LESS OR EQUAL, si menor o igual que GE, if GREATER OR EQUAL, si mayor o igual que EQ, if EQUAL, si es igual que NE, if NOT EQUAL, si no es igual que Transferencia de datos (Ld/St). Son muy simples ya que sólo pueden usar el direccionamiento antes mencionado. También tienen variantes en función de si se lee (Load) un dato con o sin signo, y de si se lee/escribe una palabra de 32 bits (Word), una media palabra de 16 bits (Half word) o un Byte. Por ejemplo LHU lee de memoria 16 bits sin signo (Unsigned Half): LHU R7, -23(R0) ; R7 < (extensión a 32 bits sin signo de la media palabra de [R0-23]) (recuerde que R0 siempre contiene 0). Una característica habitual en todos los RISC y que también se tiene en DLX es la ausencia de la instrucción genérica de movimiento de datos MOV. Dada la simplicidad del acceso a memoria de éstos no se permite ningún tipo de movimiento entre datos de memoria (habría que suplirlo con varios Ld/St), pero tampoco existe el MOV entre registros, ni tampoco de un valor inmediato a un registro. Estas últimas instrucciones se sustituyen por cualquier operación que no afecte al registro fuente, por ejemplo: MOV R3, R4 se convierte en ADD R3, R4, R0 ; ya que R0 siempre vale 0. O bien MOV R3, R4 se convierte en ADDI R3, R4, 0. MOV R3, d16 se convierte en ADDI R3, R0, d16 ; ya que R0 siempre vale 0. Aunque parece que esto va a llevar a una pérdida de tiempo, por tener que realizar una operación de suma donde no haría falta hacerla, se verá cuando se estudie la arquitectura del DLX que no implica ningún retraso o pérdida de rendimiento. Tan sólo se ha requerido la adición de una instrucción para cargar valor inmediato de 16 bits sobre la parte alta (16 bits MSB) de un registro de 32 bits; por ejemplo, MOV R9, d32 no existe por razones de formato de instrucciones, y debe convertirse en: LHI R9, d16 (altos) ADDUI R9, R0, d16 (bajos) ALGUNAS CONSIDERACIONES SOBRE WINDLX WinDLX es un simulador de fácil manejo (basado en ventanas y menús simples) que emula completamente el DLX, tanto en la cadena de ejecución, como en los contenidos de la memoria, del fichero de registros, y de los registros temporales de la cadena. Además permite modificar varios parámetros de las unidades aritméticas de ejecución. Por tanto requiere de seis ventanas para detallar toda la información (las tres primeras son las más importantes): Register Window. Esta ventana enseña el contenido de los registros de usuario (R0-R31 y los de FP F0-F31 y D0-D30) y los temporales. De estos últimos, en esta práctica sólo vamos a trabajar con: PC, contiene la dirección de la próxima instrucción a cargar, que siempre será múltiplo de cuatro, dado que toda instrucción DLX ocupa una palabra de 32 bits. Cada ciclo de reloj se incrementará en 4 y por tanto capturará una instrucción nueva. IMAR. Contiene la dirección con la que se accede a la memoria para cargar una instrucción (por eso siempre valdrá 4 menos que el PC, excepto en los saltos). IR. Contiene la instrucción que se ha capturado, o sea el código de operación (opcode) de 32 bits. El significado de cada uno de los bits o campos de tal opcode se estudiará en teoría, pero responde a un modelo muy simple, ya que se trata de un procesador puramente RISC. A y B. Son dos registros temporales que cargan el valor de los operandos fuente-registros de una instrucción (si ésta solamente tiene un operando fuente en registro, sólo A o B contendrán un valor real). ALU y ALUHI. Están a la salida de la ALU entera, de forma que se contenido es el resultado de la operación aritmético-lógica. ALUHI es la parte alta (16 bits MSB). DMAR. Contiene la dirección con la que se accede a la memoria para acceder a un dato en una instrucción Ld/St. Clock Cycle Diagram Window. Muestra la cadena de ejecución de las instrucciones para cada ciclo de reloj. Al ser DLX un procesador encadenado ( pipeline, segmentado o encauzado), se ejecutan varias instrucciones a la vez y en cadena. Como el DLX subdivide cada instrucción en 5 etapas o fases (cuyo estudio profundo se estudia en la teoría, sólo vamos a comentar que para instrucciones enteras éstas se llaman IF--ID--EX--MEM-- WB), se están ejecutando 5 instrucciones a la vez, cada una de ellas en fases distintas, como se ve en la siguiente figura. La ejecución en cadena complica la visualización del contenido de los registros como se explica más adelante. A su vez, haciendo doble clic con el ratón sobre una instrucción sale información completa de la ejecución de esa instrucción. 2

3 Code Window. Muestra información detallada (dirección de memoria, opcode y mnemotécnico) sobre el código que se ha cargado. También cada instrucción aparece en un color distinto según la etapa o fase en la que esté, como se ve en la siguiente figura (no se aprecia bien en la fotocopia en blanco y negro). También haciendo doble clic con el ratón sobre una instrucción sale información completa de la ejecución de esa instrucción. Las siguientes ventanas tiene menos importancia: Pipeline Window. Muestra un gráfico de la cadena de ejecución del DLX, dado que algunos parámetros de tal cadena se pueden configurar. Aparecen las 5 fases antedichas además de la cadena de ejecución para operaciones de coma flotante FP. Statistics Window. Da una información detallada de las estadísticas de ejecución del programa cargado. Breakpoints Window. Muestra los puntos de ruptura que el usuario ha establecido en el programa. La característica más sorprendente en un procesador encadenado y que hace que la depuración y simulación del código sea difícil de seguir es, como dijimos antes, que se ejecutan varias (cinco) instrucciones a la vez. Por tanto el contenido en un ciclo de reloj de los registros se corresponde con una de las cinco instrucciones en curso, en función de la etapa en la que estén. Así para ver los valores de los registros en la ventana Register Window, hay que saber en qué fase está cada instrucción. De los distintos menús que tiene WinDLX el único interesante para nosotros es la configuración. Se debe configurar inicialmente como se muestra en la figura siguiente, para que las direcciones no sean simbólicas, la cuenta de ciclos sea absoluta y el forwading (bypass o desvío) esté deshabilitado (se estudiará esto más adelante). También se dispone de un menú para la memoria, que permite visualizar su contenido, cambiarlo y ver los símbolos del código. 3

4 El alumno debe, por tanto, antes de asistir al laboratorio: Estudiar las características principales del ensamblador del DLX. Haber asimilado los conceptos sobre las ventanas del WinDLX. NOTA : para cargar un nuevo programa en el WinDLX hay que seleccionar File Load Code or Data. En la ventana que aparece se debe seleccionar con el cursor el archivo.s y a continuación presionar el botón select. Finalmente pulsar load. Por otro lado los directorios con nombres de más de 8 caracteres no son aceptados por el WinDLX. Por lo tanto asegúrese de que su fichero.s está tiene un path o ruta en donde no haya directorios con estas características. REALIZACIÓN DE LA PRÁCTICA. En la práctica se estudiarán sobre todo las dependencias de datos. Este tipo de dependencias surge cuando dos instrucciones próximas en el código utilizan datos comunes, y la segmentación hace que el orden de lectura o escritura de esos datos difiera del que lógicamente tendrían en la ejecución secuencial de las instrucciones. Aparecen tres tipos de dependencias de datos: 1. Dependencia real (RAW - lectura después de escritura). Una instrucción usa como datos de entrada los resultados de una instrucción anterior por lo que debe esperar a que ésta se ejecute. Ejemplo: 2. Antidependencia (WAR - escritura después de lectura). Caso contrario a la dependencia real. Una instrucción posterior modifica los datos de una instrucción anterior. Este problema no aparece en nuestro caso ya que las lecturas se hacen antes (en ID) y todas las escrituras después (en WB). Este riesgo se presenta cuando hay instrucciones que escriben anticipadamente los resultados en el curso de la instrucción, e instrucciones que leen un dato después que otra posterior realice una escritura. 3. Dependencia de salida (WAW - escritura después de escritura). Las escrituras se están realizando en un orden incorrecto, dejando en el destino el valor escrito por la instrucción i en lugar del escrito por la instrucción j (j>i). Para eliminar las dependencias de datos tenemos dos técnicas. Una sería software y consistiría en reordenar el código o introducir NOP s para evitar los conflictos (para las WAR y WAW, se puede renombrar registros por software). La segunda técnica sería hardware y consiste en utilizar distintos desvíos o bypass. Esta técnica también se denomina forwarding (adelantamiento). En el DLX las tres técnicas que se usan son realimentar la ALU con los datos contenidos en ALUOutput al final de la etapa de EXE, realimentar la ALUOutput al final de la etapa MEM, y por último, realimentar la salida de la memoria (LMD) al final de la etapa MEM. El procedimiento para probar un código consiste en escribir el código en un fichero de texto con extensión.s, cargarlo y ejecutarlo de la siguiente forma (comprobar que antes de la ejecución todos los registros están a cero, si no es así resetear el DLX). Los pasos para una ejecución simulada son: 4

5 Cargar el fichero.s con la opción File, Load Code. Todo fichero que se quiera cargar ha de seleccionarse previamente en la ventana Selected Files. Corregir errores si los hubo tras la carga; vienen expresados en función de la línea donde se produjo). Ejecutar paso a paso el código (tecla F7). Han de tenerse abiertas al menos las ventanas Clock Cycle Diagram, Register y Code, para ver la evolución de la cadena. Si ha de comprobarse alguna escritura en memoria deberíamos visualizarlo en la opción Memory, Display (tecla F6). (La dirección por defecto del código empieza en 0x , apuntado por $TEXT, y la de los datos en 0x , apuntado por $DATA). Se puede resetear el DLX simulado, por ejemplo para volver a comenzar la ejecución, usando la opción File, Reset DLX. En el caso de necesitar avanzar varios ciclos, usar la tecla F8, opción Execute, Multiple cycles. Ejercicio 1. Dado el siguiente código en DLX: add r4, r0, r0 bucle: lw r1,0(r4) addi r1,r1,2 sw 0(r4),r1 lw r2,4(r4) addi r2,r2,2 sw 4(r4),r2 lw r3,8(r4) addi r3,r3,2 sw 8(r4),r3 addi r4, r4, 12 seq r5, r4, 60 beqz r5, bucle nop nop trap 0 ; instrucción para finalizar la ejecución. Ejercicio 2. Ejercicio 3. Escriba dicho código y ejecutelo en el simulador WinDLX (tenga en cuenta que la opción Configuration Enable Forwarding debe de estar deshabilitada). a) Cuántos bloqueos se producen?. De qué tipo son?. Observe en particular las instrucciones seq y beqz. b) Cuál es la duración (en ciclos) del programa? Nota: Para medir el tiempo de ejecución en ciclos del programa contaremos hasta la etapa WB (incluida) de la última instrucción útil, considerando que la instrucción Trap 0 no es útil. c) Qué valores toman R1, R2, R3, R4, y R5 y las direcciones de memoria afectadas?. A continuación reordenaremos el código para eliminar el máximo número de bloqueos teniendo en cuenta lo siguiente: - No se pueden añadir instrucciones de ningún tipo, ni siquiera NOP s. - No se pueden quitar instrucciones, no sobra ninguna. - Al final de la ejecución los valores de los registros así como las direcciones de memoria afectados tienen que ser los mismos que al final de la ejecución del programa sin reordenación. a) Escriba el código reordenado. b) Cuál es la duración (en ciclos) del programa? Hay algún bloqueo que no haya podido ser eliminado?. c) Qué aceleración se ha conseguido (Tiempo antes dividido por Tiempo después)?. Ahora activaremos la opción Configuration Enable Forwarding, con esto habremos habilitado los desvíos. A continuación, ejecutaremos el código del ejercicio 1 (el código no ordenado). a) Cuántos bloqueos se producen?. De qué tipo son?. b) Cuántas veces se utilizan los desvíos?. c) Calcule CPI Bloqueos y CPI Total. 5

6 ARQUITECTURA DE SISTEMAS PARALELOS. 3º INGENIERIA TECNICA EN INFORMATICA DE SISTEMAS. PRÁCTICA 6. CURSO 03/04. (SEGMENTACION EN EL PROCESADOR DLX) NUM. GRUPO: ALUMNOS: Ejercicio 1 1.a Bloqueos: Tipo: 1.b Duración: 1.c Ejercicio 2 2.a Código: 2.b Duración: 2.c Aceleración: Ejercicio 3 3.a Nº Bloqueos: Tipo: 3.b Nº Desvíos: 3.c CPI BLOQUEOS : CPI TOTAL : 6

OBJETIVOS ALGUNAS CONSIDERACIONES SOBRE WINDLX

OBJETIVOS ALGUNAS CONSIDERACIONES SOBRE WINDLX Arquitectura de Sistemas Paralelos 3 er curso de Ingeniería Técnica en Informática de Sistemas Práctica: Procesador segmentado DLX. Técnicas de optimización Curso 2005/2006 OBJETIVOS En esta práctica se

Más detalles

Arquitectura de Computadores Problemas (hoja 2). Curso

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

Más detalles

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

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

Más detalles

UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE ELECTROTECNIA Y COMPUTACION INGENIERIA EN COMPUTACION ARQUITECTURA DE MAQUINAS III. SIMULADOR DLX (jbz)

UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE ELECTROTECNIA Y COMPUTACION INGENIERIA EN COMPUTACION ARQUITECTURA DE MAQUINAS III. SIMULADOR DLX (jbz) UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE ELECTROTECNIA Y COMPUTACION INGENIERIA EN COMPUTACION ARQUITECTURA DE MAQUINAS III SIMULADOR DLX (jbz) Integrantes: Denis José Torres Guadamuz 2001 10500

Más detalles

Dpto. Arquitectura y Tecnología de Computadores SPD. Práctica 5. pág 1

Dpto. Arquitectura y Tecnología de Computadores SPD. Práctica 5. pág 1 SISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 5. PROCESADORES SUPERESCALARES: PLANIFICACIÓN DINÁMICA. OBJETIVOS. En esta práctica se trata de estudiar, por un lado, el aumento de prestaciones que

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

ARQUITECTURA DE COMPUTADORES. Práctica 8

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

Más detalles

TEMA 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

ARQUITECTURA DE COMPUTADORES Problemas TEMA 4: Microprocesadores avanzados

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

Más detalles

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

Arquitectura de Computadores

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

Más detalles

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

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

Más detalles

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

Guía de uso del programa AVR-Studio

Guía de uso del programa AVR-Studio Guía de uso del programa AVR-Studio El entorno de desarrollo AVR-STUDIO nos permite cargar, ensamblar y depurar los programas que escribimos en lenguaje ensamblador. Los pasos para crear un proyecto nuevo

Más detalles

Plataformas de soporte computacional: arquitecturas avanzadas,

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

Más detalles

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

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

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

Más detalles

Introducción. Instalación

Introducción. Instalación Indice Tutorial de WinDLX... 1 Indice... 2 Introducción... 3 Instalación... 3 Un completo ejemplo... 4 Arranque y configuración de WinDLX... 4 Cargando los programas... 5 Simulación... 5 Ventana Pipeline...

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

Arquitectura del CPU. Organización del Computador 1 Verano 2016

Arquitectura del CPU. Organización del Computador 1 Verano 2016 Arquitectura del CPU Organización del Computador 1 Verano 2016 Agenda De dónde venimos? Introducción: esquema de una computadora Representación de la información Circuitos Combinatorios Circuitos Secuenciales

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

Procesador MIPS - Registros

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

Más detalles

Ejercicios de Paralelismo a Nivel de Instrucción

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

Más detalles

Arquitectura de Computadoras I Ingeniería de Sistemas Curso 2017

Arquitectura de Computadoras I Ingeniería de Sistemas Curso 2017 Arquitectura de Computadoras I Ingeniería de Sistemas Curso 217 Práctica de Laboratorio: Microprocesador MIPS Segmentado El objetivo de esta práctica es implementar el microprocesador MIPS (visto en clase

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

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

Más detalles

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy Organización del Computador I Verano MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Arquitectura MIPS (R2000) Registros Formato de Instrucción

Más detalles

Práctica ENS:Ensamblar y depurar

Práctica ENS:Ensamblar y depurar Práctica ENS:Ensamblar y depurar 1. Objetivos Familiarizarse con el manejo básico de la herramienta µvision3 con programas escritos en lenguaje ensamblador. Depurar los programas escritos en lenguaje ensamblador

Más detalles

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES Escuela Universitaria de Informática Ingeniería de Computadores ARQUITECTURA DE COMPUTADORES PRÁCTICA Nº 3 DESENROLLADO DE BUCLES INTRODUCCIÓN Este documento contiene el enunciado de la práctica de desenrollado

Más detalles

Arquitectura de Computadores II Clase #3

Arquitectura de Computadores II Clase #3 Arquitectura de Computadores II 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

Más detalles

Práctica 2 Procesadores vectoriales (I) 1. Práctica 2. Procesadores vectoriales (I)

Práctica 2 Procesadores vectoriales (I) 1. Práctica 2. Procesadores vectoriales (I) Práctica 2 Procesadores vectoriales (I) 1 Práctica 2 Procesadores vectoriales (I) 1 Introducción El estudiante se familiarizó en el curso de Arquitectura de Computadores con los procesadores segmentados

Más detalles

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

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

Más detalles

Organización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017

Organización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017 Organización del Computador 1 CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017 Estructura de una máquina von Neumann Ciclo de Ejecución 1. 2. 3. 4. 5. 6. UC obtiene la próxima instrucción de

Más detalles

Repaso concepto de programa

Repaso concepto de programa Repaso concepto de programa ANTES se tenían sistemas cableados Datos Secuencia de funciones aritmético/lógicas Resultados Programación en hardware: cuando cambiamos las tareas, debemos cambiar el hardware

Más detalles

Tratamiento de Excepciones en MIPS

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

Más detalles

Tema 5. Segmentación: conceptos básicos

Tema 5. Segmentación: conceptos básicos Tema 5. Segmentación: conceptos básicos Organización de Computadores LUIS ENRIQUE MORENO LORENTE RAÚL PÉRULA MARTÍNEZ ALBERTO BRUNETE GONZALEZ DOMINGO MIGUEL GUINEA GARCIA ALEGRE CESAR AUGUSTO ARISMENDI

Más detalles

int vector[100]; // en principio vector tiene al menos // cien elementos aunque pueda tener más... for (i=0; i<100; i++) vector[i] = vector[i] + 1;

int vector[100]; // en principio vector tiene al menos // cien elementos aunque pueda tener más... for (i=0; i<100; i++) vector[i] = vector[i] + 1; ARQUITECTURA DE SISTEMAS PARALELOS. 3º INGENIERIA TECNICA EN INFORMATICA DE SISTEMAS. BOLETÍN DE EJERCICIOS DE Introducción al paralelismo. Curso 04/05 (SOLUCIONES) 1. Inicialmente R3 = R2 + 400. como

Más detalles

Arquitectura de Computadores II Clase #5

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

Más detalles

Arquitectura de Computadores Problemas (hoja 4). Curso

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

Más detalles

WinDLXV. Manual de usuario

WinDLXV. Manual de usuario WinDLXV Manual de usuario Septiembre, 2005 Índice general Introducción 11 Usuarios de este manual........................ 11 Requisitos mínimos........................... 12 Instalación................................

Más detalles

Definición de prestaciones

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

Más detalles

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

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

Multiplicación de matrices con DLX

Multiplicación de matrices con DLX Multiplicación de matrices con DLX Universidad de Salamanca Depto. Informática y Automática Arquitectura e Ingeniería de computadores Trabajo presentado por: Sergio Garrido Chamorro Santiago González Pérez

Más detalles

Sección de procesamiento: El camino de datos

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

Más detalles

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

Tema 4 (II) El procesador

Tema 4 (II) El procesador Tema 4 (II) El procesador Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Técnicas de control 1. Lógica cableada 2. Lógica almacenada

Más detalles

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS GAC: Grupo de Arquitectura de Computadores Dpt. Electrónica e Sistemas. Universidade da Coruña. Bibliografía Computer Organization

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

5. Procesador: camino de datos y control

5. Procesador: camino de datos y control Fundamentos de Computadores Ingeniería de Telecomunicación Departamento de Automática Escuela Politécnica Superior Curso académico 2009 2010 Contenidos 1 Control de operaciones elementales 2 3 4 5 Objetivos

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

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

Sistemas con Microprocesadores I

Sistemas con Microprocesadores I Sistemas con Microprocesadores I 1 Microcontroladores Introducción Harvard vs. von-neumann Clasificación del procesador Segmentado o Pipeline Ortogonal vs. No ortogonal 2 Microcontroladores PIC Siglas

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

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos PROGRAMACIÓN DE SHELL SCRIPTS EN LINUX El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales,

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 Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010

Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010 1. La

Más detalles

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicio 1. Dada la siguiente expresión de un lenguaje de alto nivel int a = 6; int b = 7; int c = 3; int d; d = (a+b) * (a+b); Indique

Más detalles

TEMA VI DISEÑO DEL PROCESADOR

TEMA VI DISEÑO DEL PROCESADOR TEMA VI DISEÑO DEL PROCESADOR Diseño del procesador 6.1 Repertorio de instrucciones 6.1.1 Procesadores de tres direcciones 6.1.2 Procesadores de dos direcciones 6.1.3 Procesadores de una dirección (procesadores

Más detalles

Laboratorio - Organización de la CPU

Laboratorio - Organización de la CPU Arquitectura de Computadoras - Edición 2017 Laboratorio - Organización de la CPU Objetivos Ejercitar conceptos vistos en el curso sobre diseño de circuitos digitales. Familiarizarse con el funcionamiento

Más detalles

Introducción a los procesadores ILP (Instruction-Level Parallel)

Introducción a los procesadores ILP (Instruction-Level Parallel) Introducción a los procesadores ILP (Instruction-Level Parallel) Herramientas básicas para conseguir paralelismo entre instrucciones: Encauzamiento (pipelining) Se usa en todo procesador ILP Utilizar varias

Más detalles

La Unidad de Control y el Camino de Datos

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

Más detalles

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

Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016

Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016 1. La

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

INTRODUCCIÓN USANDO EL SIMULADOR

INTRODUCCIÓN USANDO EL SIMULADOR INTRODUCCIÓN El programa es un simulador de un divisor salva-arrastre de 4 bits. Los operandos del divisor son números positivos. El dividendo tiene la forma N O.N 1 N 2 N 3 N 4 N 5 N 6, y el divisor D

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

Práctica 1 - Rendimiento *

Práctica 1 - Rendimiento * Práctica 1 - Rendimiento * Organización del Computador 1 Verano 2014 Subconjunto mínimo de ejercicios recomendado: 1 a 11 Ejercicio 1 Considere tres procesadores distintos P 1, P 2 y P 3 que ejecutan el

Más detalles

Técnicas de Programación

Técnicas de Programación Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia

Más detalles

Arquitectura de Computadores II Clase #3

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

Más detalles

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicio 1. Escriba un programa en ensamblador del MIPS 32 para calcular la suma de los 100 primeros números naturales. El programa

Más detalles

Arquitectura del MIPS: Introducción

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

Más detalles

CAPÍTULO 2 PROCESADORES SUPERESCALARES

CAPÍTULO 2 PROCESADORES SUPERESCALARES CAPÍTULO 2 PROCESADORES SUPERESCALARES INTRODUCCIÓN Características de los procesadores superescalares Paralelismo Diversificación Dinamismo Arquitectura de un procesador superescalar genérico Características

Más detalles

UNIVERSIDAD DE CASTILLA-LA MANCHA ESCUELA SUPERIOR DE INGENIERÍA INFORMÁTICA GRADO EN INFORMÁTICA TRABAJO FIN DE GRADO

UNIVERSIDAD DE CASTILLA-LA MANCHA ESCUELA SUPERIOR DE INGENIERÍA INFORMÁTICA GRADO EN INFORMÁTICA TRABAJO FIN DE GRADO UNIVERSIDAD DE CASTILLA-LA MANCHA ESCUELA SUPERIOR DE INGENIERÍA INFORMÁTICA GRADO EN INFORMÁTICA TRABAJO FIN DE GRADO IMPLEMENTACIÓN DE UNA RUTA DE DATOS SIN ADELANTAMIENTO EN EL SIMULA3MS. María Isabel

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

IS09. Introducción a los Computadores Práctica 1. Introducción al computador básico

IS09. Introducción a los Computadores Práctica 1. Introducción al computador básico IS09. Introducción a los Computadores Práctica 1. Introducción al computador básico OBJETIVOS Los objetivos que el estudiante debe alcanzar al al de esta práctica se resumen en los siguientes puntos: 1.

Más detalles

Arquitectura de Computadores I. Sistema de memoria 3 (Solución): Segmentación + Bancos

Arquitectura de Computadores I. Sistema de memoria 3 (Solución): Segmentación + Bancos Universidad del País Vasco Facultad de Informática Departamento de Arquitectura y Tecnología de Computadores Arquitectura de Computadores I Sistema de memoria 3 (Solución): Segmentación + Bancos En un

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

Bus de direcciones. Bus de datos

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

Más detalles

Práctica 4 - Microarquitectura del CPU

Práctica 4 - Microarquitectura del CPU Práctica 4 - Microarquitectura del CPU Organización del Computador 1 Verano 2011 Ejercicio 1 El siguiente esquema muestra algunos de los componentes de la microarquitectura de un modelo del procesador

Más detalles

TEMA 3 PROCESADORES VECTORIALES

TEMA 3 PROCESADORES VECTORIALES TEMA 3 PROCESADORES VECTORIALES A T 5 1 1 8 A r q u i t e c t u r a e I n g e n i e r í a d e C o m p u t a d o r e s I J u a n A n t o n i o M a e s t r o PROCESADORES VECTORIALES V e n t a j a s d e

Más detalles

... Cómo empezar en WORD anfora CAPÍTULO 1. Introducción. Cómo entrar en WORD WORD 2000 Cómo empezar en WORD 2000

... Cómo empezar en WORD anfora CAPÍTULO 1. Introducción. Cómo entrar en WORD WORD 2000 Cómo empezar en WORD 2000 CAPÍTULO 1......... Introducción Cómo empezar en WORD 2000 En este Capítulo, con el que se inicia el manual, intentaremos explicar qué es WORD 2000 y para qué sirve. WORD 2000 es un programa de procesador

Más detalles

ARQUITECTURA DE VON NEUMANN Y HARVARD

ARQUITECTURA DE VON NEUMANN Y HARVARD ARQUITECTURA DE VON NEUMANN Y HARVARD ARQUITECTURA VON NEUMANN En esta arquitectura se observa que las computadoras utilizan el mismo dispositivo de almacenamiento para datos e instrucciones conectados

Más detalles

1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura

1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura Índice 1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura 1.3.1 Arquitectura RISC 1.3.2 Arquitectura Harvard 1.3.3

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

Universidad Euskal Herriko del País Vasco Unibertsitatea Arquitectura de Computadores I Sistema de memoria 1

Universidad Euskal Herriko del País Vasco Unibertsitatea Arquitectura de Computadores I Sistema de memoria 1 Arquitectura I Sistema de memoria 1 1. En un espacio de direcciones de 64 Kbytes deben colocarse los s de memoria que se indican. Suponer que el direccionamiento de la memoria se hace al byte. Dibujar

Más detalles

Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL

Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL Cualquier duda sobre el contenido de este tema se puede enviar al foro TEORIA2. 2.1.- El tipo de datos entero (byte,

Más detalles

Práctica 7 - Microarquitectura del CPU

Práctica 7 - Microarquitectura del CPU Práctica 7 - Microarquitectura del CPU Organización del Computador 1 Primer cuatrimestre de 2012 Ejercicio 1 El siguiente esquema muestra algunos de los componentes de la microarquitectura de un modelo

Más detalles

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012 /4/22 Introducción rquitectura de Computadoras Primavera 22 Construyendo el path Esquema de implementación Simple Unidad de Control 2 Los elementos básicos de un sistema de computo son: Nos centraremos

Más detalles

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II Clase #4 Clase #4 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Contenido Unidad de control Control cableado Control microprogramado MIC-1 La Unidad de Control La instrucción

Más detalles

VB - Access Manual Visual Basic para Aplicaciones del Access 2000

VB - Access Manual Visual Basic para Aplicaciones del Access 2000 VB - Access 2000 1 Manual Visual Basic para Aplicaciones del Access 2000 VB - Access 2000 2 Índice Antes de empezar... 3 1 Fundamentos de VBA... 5 Autoevaluación 1... 47 Soluciones 1... 50 2 Introducción

Más detalles

Funciones Lógicas X10

Funciones Lógicas X10 DOCUMENTACIÓN ESPECÍFICA Funciones Lógicas X10 Módulo Zennio de 10 funciones lógicas Edición: 1.a ÍNDICE 1. Introducción... 3 1.1. Módulo de Funciones lógicas... 3 1.2. Dispositivos Zennio con módulo X10...

Más detalles

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado.

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado. 1.6. EXPRESIONES CONCEPTO: Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado. Los operandos pueden ser constantes, variables, otras expresiones e incluso funciones.

Más detalles

Organización de Computadoras. Principios de Conjuntos de Intrucciones

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

Más detalles

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

MODULO 1 - EXCEL BÁSICO

MODULO 1 - EXCEL BÁSICO SELECCIÓN Selección de una celda Para seleccionar una única celda sólo tienes que hacer clic sobre la celda. Selección de un rango de celdas Continuas: Seleccione la primera celda y con clic sostenido

Más detalles

Tema 2: Conceptos básicos. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Tema 2: Conceptos básicos. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid Tema 2: Conceptos básicos Ingeniería Informática Universidad Autónoma de Madrid 1 O B J E T I V O S Introducción a la Informática Adquirir una visión global sobre la Informática y sus aplicaciones. Conocer

Más detalles

El Diseño de un Lenguaje Máquina

El Diseño de un Lenguaje Máquina Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje

Más detalles

«Excel Básico 2013» Módulo I

«Excel Básico 2013» Módulo I «Excel Básico 2013» Módulo I ÍNDICE MÓDULO 1: EXCEL BÁSICO 2013 1. ELEMENTOS DE EXCEL 2013 02 2. INICIANDO EXCEL 2013 08 Excel Básico 2013 1 Excel Básico 2013 1. Elementos de Excel 2013 Esta herramienta

Más detalles

GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:

GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo: Cuestionario Modulo 1.1 GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo: 1001 0110. 2. qué es Dato? Definición: Es toda

Más detalles

Estructura de Computadores II

Estructura de Computadores II Estructura de Computadores II Folleto Nº 1 SEGMENTACIÓN Jesús Ruiz M. Procesador U de Datos S1+S2 S1&S2 S1-S2 S1 S2 Control Bus S1 Bus S2 Bus Dest S1^S2 S1>>S2 S1a S2 A S1 S2 L 0 1 U A Registros

Más detalles