ISA (Instruction Set Architecture)

Slides:



Advertisements
Presentaciones similares
Equipo #3 Unidad III: ALU Efraín Corral Eduardo Castillo Elías Alarcón
Advertisements

Instrucciones de operación sobre datos
El modelo de Von Neumann
UNIVERSIDAD DEL VALLE DE MEXICO
Compiladores e intérpretes
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS CHAPULTEPEC
ORGANIZACIÓN COMPUTACIONAL
Arquitectura de Computadores I
I S A INSTRUCTION SET ARCHITECTURE
ARQUITECTURA DE COMPUTADORES - VON NEUMANN MODEL
REPUBLICA BOLIVARIANA DE VENEZUELA. MINISTERIO DEL PODER POPULAR PARA LA DEFENSA. UNIVERSIDAD NACIONAL EXPERIMENTAL DE LA FUERZA ARMADA NACIONAL. NÚCLEO.
Fermín Sánchez Carracedo Universitat Politècnica de Catalunya
Circuitos Digitales II Alineamiento en Memoria y Ejecución de un programa Semana No.8 Semestre Prof. Gustavo Patiño Prof. Eugenio.
Sistemas Operativos Funcionamiento general de una computadora bajo el control de un programa.
CLASE 10.
CLASE 12.
Circuitos Digitales II
Circuitos Digitales II Elementos sobre la Arquitectura del Conjunto de Instrucciones Semana No.2 Semestre Prof. Gustavo Patiño
Circuitos Digitales II Elementos sobre la Arquitectura del Conjunto de Instrucciones Semana No.2 Semestre Prof. Gustavo Patiño
Arquitectura de Conjunto de Instrucciones (ISA)
Composición Interna de un Procesador
CLASE 11.
Aritmética y Computadores. Refresco de aritmética binaria. Operaciones aritméticas y lógicas. Construcción de una ALU para MIPS. Multiplicación y División.
Computer Architecture Notes Jan 26, 2004 Dusan Kuzmanovic Jimmy Ortegon.
Práctica 7 AOC. Gestión de la pila Una pila es una estructura de datos caracterizada por que el último dato que se almacena es el primero que se obtiene.
MIPS Intermedio.
Unidad 2: Organización del CPU
Datapath para las instrucciones de brinco
© Prof. José Mª Foces Morán PCSpim: SPIM sobre Windows Ventana principal de PCSpim Consola: permite interactuar con el programa que está siendo.
(CC) , José M. Foces-Morán.
Arquitecturas de Computadoras Curso Propedéutico
Instrucciones: FORMATO DE INSTRUCCIONES

Instrucciones Aritméticas Instrucciones Aritméticas Instrucciones Aritméticas Instrucciones Aritméticas Instrucciones Transferencia de Datos Instrucciones.
CONCEPTOS FUNDAMENTALES FORMAS DE ALMACENAR INFORMACION UNIDAD BASE DE INFORMACION: BIT BYTE = 8 BITS UN KILOBYTE = 1024 BYTES UN MEGABYTE = 1024 KILOBYTES.
Organización del Computador I Verano MIPS (1 de 2) Basado en el capítulo 3 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 13.
Laboratorio de Organización del Computador. Cómo nos podemos comunicar con un computador Add A, B CA0 Ensamblador Hexadecimal Binario.
El procesador Creando un solo datapath. Universidad de SonoraArquitectura de Computadoras2 Introducción 1. Crear un solo datapath a partir de los datapaths.
Microcomputadores Prof: Tatiana Marín R.. Lenguaje máquina = lenguaje binario InstrucciónLenguaje máquina (binario)OP ( hex)Nemónico Restar F0SUB.
Unidad aritmético lógica
Tema 2: Lenguaje máquina
Organización del Computador
Arquitectura de Von Neumann
Introducción Sebastián Sánchez Prieto. Introducción 2  S2P, OGP & IGT Sistemas, complejidad y modelos Un ordenador es un sistema complejo que.
Datapath para las instrucciones de carga y almacenamiento (load/store)
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 11.
Organización del Computador
Organización del Computador 1
CLASE 13.
El procesador Diseño del control.
ARQUITECTURA DE COMPUTADORES - I.S.A. -CODIFICACION ISA
Capítulo 4 CPU y la memoria.
Informática Clase Arquitectura de la Computadora.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 10.
Maquinas Digitales UNIDADES DE CONTROL.
Principio unidad 1.
E.A.P. “INGENIERÍA DE SISTEMAS” UNIVERSIDAD PERUANA UNION.
Unidad Central de Proceso
Aprende el arte de la ingeniería inversa
ARQUITECTURA DE COMPUTADORES
MIPS Intermedio.
Arquitecturas de Computadoras Capitulo 2 Aritmética de enteros.
Introducción MSc. Rina Arauz.
CAPITULO V Arquitectura de Von Neumann
Arquitectura de PCs Arquitectura básica del PC. Introducción El PC es el resultado de una especificación técnica de IBM El hardware se organiza de forma.
Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela.
Organización de computadoras
El procesador Diseño del control.
El procesador Datapath y control.
Transcripción de la presentación:

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

Instruction Set Architecture (ISA) Arquitectura del conjunto de instrucciones software Conjunto de instrucciones hardware Universidad de Sonora Arquitectura de Computadoras

Modelo de von Neumann - Las instrucciones y los datos están en la misma memoria. - Las instrucciones son leídas de la memoria y ejecutadas en la unidad de procesamiento (CPU), una a una. - Las instrucciones son almacenadas en la misma secuencia de ejecución. - La unidad de control es responsable del control de la lectura y ejecución de las instrucciones. Universidad de Sonora Arquitectura de Computadoras

Instruction Set Architecture (ISA) ¿Qué es un conjunto de instrucciones? La frontera entre el hardware y el software Cada instrucción es directamente ejecutada por el hardware Universidad de Sonora Arquitectura de Computadoras

Instruction Set Architecture (ISA) ¿Cómo se representa? Con un formato binario. El hardware solo entiende bits. Los objetos físicos son bits, bytes, palabras (words). Tamaño típico de palabra: 4 u 8 bytes (32 o 64 bits). Universidad de Sonora Arquitectura de Computadoras

Instruction Set Architecture (ISA) Dos opciones de tamaño de las instrucciones: Fijo. Cada instrucción ocupa el mismo número de bytes. Variable. Cada instrucción ocupa distintos números de bytes. Universidad de Sonora Arquitectura de Computadoras

Abstracción Bajando el nivel de abstracción revela otras informaciones Universidad de Sonora Arquitectura de Computadoras

Ejemplo ampliado swap(int v[], int k) { int temp; temp = v[k] v[k] = v[k+1]; v[k+1] = temp; } swap: muli $2, $5, 4 add $2, $4, $2 lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31 Universidad de Sonora Arquitectura de Computadoras

Instrucciones Por lo general son operaciones simples que pueden ser ejecutadas directamente por el hardware. Se identifican por un opcode (código de operación). Ejemplo de MIPS: add $s0, $s1, $s2 El opcode es “add” (suma) Tienen operandos: 0, 1, 2 o 3. La instrucción de arriba tiene 3 operandos. Significa s0 = s1 + s2 Universidad de Sonora Arquitectura de Computadoras

Instrucciones Dos opciones de direccionamiento: Implícito. El opcode implica la dirección de los operandos. Ejemplo en una máquina de pila (stack) add La instrucción saca (pop) dos valores de la pila, hace la suma y deja (push) el resultado en la pila. Universidad de Sonora Arquitectura de Computadoras

Instrucciones Explícito. Las direcciones vienen en los operandos. Ejemplo de MIPS: add $s0, $s1, $s2 Dos operandos fuentes: s1 y s2 Un operando destino: s0 s0 = s1 + s2 Universidad de Sonora Arquitectura de Computadoras

Organización de la memoria Se puede ver como un vector (arreglo de una dimensión). Una dirección de memoria es un índice del vector. 1 2 3 4 5 Datos ... Con n bits, se puede direccionar hasta 2n – 1 datos Universidad de Sonora Arquitectura de Computadoras

Organización de la memoria Alineación. La dirección de una palabra en memoria comienza en un múltiplo del número de bytes que ocupa una palabra. Ejemplo de memoria con palabras alineadas de 4 bytes. 4 8 12 ... Datos 32 bits Universidad de Sonora Arquitectura de Computadoras

Organización de la memoria Hay dos formas de guardar una palabra multi-byte en memoria: Big-endian. El byte mas significativo se guarda en la dirección mas baja. Little-endian. El byte menos significativo se guarda en la dirección mas baja. Universidad de Sonora Arquitectura de Computadoras

Big-endian/Little-endian Ejemplo: guardar la palabra de 4 bytes 1234567816 en la dirección 1000. 0001 0010 0011 0100 0101 0110 0111 1000 Byte mas significativo Byte menos significativo Universidad de Sonora Arquitectura de Computadoras

Big-endian 0001 0010 0011 0100 0101 0110 0111 1000 Byte mas significativo Byte menos significativo 1000 1001 1002 1003 Universidad de Sonora Arquitectura de Computadoras

Little-endian 0111 1000 0101 0110 0011 0100 0001 0010 Byte menos significativo Byte mas significativo 1000 1001 1002 1003 Universidad de Sonora Arquitectura de Computadoras

Big-endian/Little-endian Intel x86 es little-endian. Sun SPARC es big-endian. Universidad de Sonora Arquitectura de Computadoras

Instrucciones típicas Aritméticas: suma (add), resta (sub), multiplicación (mul), división (div). Lógicas: and, or, xor, not. Movimiento de datos: copia (copy), carga (load), guarda (store), mueve (move). Control: brinca (jump), brinca condicional (jump if), llama subrutina (call), regresa de subrutina (ret). Sistema: llamadas a funciones del sistema operativo. Universidad de Sonora Arquitectura de Computadoras