Actividad De Aprendizaje 3... Procesador Mips.docx

  • Uploaded by: elmer villagran
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Actividad De Aprendizaje 3... Procesador Mips.docx as PDF for free.

More details

  • Words: 1,977
  • Pages: 9
ELMER ALEJANDRO VILLAGRAN VELAZQUEZ

MATRICULA: 94520

GRUPO: K050

TECNOLOGÍA ELECTRÓNICA

MTRA. PATRICIA ERENDIRA BENAVIDES MURATALLA

ACTIVIDAD DE APRENDIZAJE 3... PROCESADOR MIPS

CIUDAD DE MEXICO A 15 DE AGOSTO 2018

PROCESADOR MIPS: Con el nombre de Mips (siglas de Microprocesador without Interlocked Pipeline Stages) se conoce a toda una familia de microprocesadores de arquitectura RISC desarrollados por Mips Technologies. Los diseños del mips son utilizados en la línea de productos informáticos de Sgi; en muchos sistemas enbedidos; en dispositivos para Windows CE, router Cisco y videoconsolas como Nintendo 64 o las Sony Playstation. Playstación 2 y playstacion portable Mas recientemente, la Nasa usó uno de ellos en la sonda New Horizon Las primeras arquitecturas Mips fueron en fsfs 32 bits (generalmente rutas de datos y registros de 32 bits de ancho), si bien versiones posteriores fueron implementadas en 64 bits. Existen cinco revisiones compatibles hacia atrás del conjunto de instrucciones del Mips, llamadas Mips I Mips II Mips III Mips IV y Mips 32/64.

FORMATOS DE INSTRUCIONES El tipo de formato de las instrucciones aritméticas y lógicas es de tipo R y el número de operandos en una operación de este tipo es siempre tres. Estos operandos son siempre registros, el modo de direccionamiento empleado es, por tanto, de registro.

TIPOS DE INSTRUCIONES

INSTRUCIONES DE TRANSFERENCIA O DE CARGA/ ALMACENAMIENTO Los operandos para todas las operaciones aritméticas y lógicas se contienen en registros para operar con datos en memoria antes deben haberse metido estos datos en los registros. Una operación de carga (load copia información desde la memoria principal a los registros. Una operación de almacenamiento (store) copia informción de un registro a memoria principal, las instrucciones de transferencia son instrucciones de tipo I Cuando una palabra (4 bytes) se carga desde memoria en un registro o se pasa a memoria desde un registro, la dirección de memoria involucrada ha de ser múltiple de 4

INSTRUCIONES DE SALTO CONDICIONAL Lo que distingue a un computador de una simple calculadora es la habilidad de tomar daciones. Basándose en los datos de entrada y los valores creados durante la computación, el computador ejecuta diferentes instrucciones. La toma de daciones se representa comúnmente en los lenguajes de programación usando la sentencia if (si condicional), combinada a veces con sentencias go to (ir a) y éticas. El lenguaje ensamblador del Mips incluye dos instrucciones de toma de daciones, similares a una sentencia if con un go to. Estas instrucciones se muestran.

TIPOS DE OPERANDOS

2.4. Tipos de operandos El tipo de un dato viene determinado por la operación que se realice con él. Categorías generales más importantes: (1) Direcciones (2) Números (3) Caracteres (4) Datos lógicos 2(1) Direcciones En las instrucciones de control de secuencia el operando es una dirección de memoria de la instrucción a la que se salta. Pueden considerarse como números enteros sin signo que se cargan en el contador de programa. En la MIPS serán números de 32 bits. Formato: Jr. propósito: Saltar a una instrucción cuya dirección está en un registro. Descripción: PC ĸ rs rs contendrá un dato de tipo dirección. 3(2) Números (i) Enteros - Con signo, representados en complemento a 2. - Sin signo. Tamaños: byte, media palabra (half-word), palabra (Word) Instrucciones de suma en la MIPS: Formato: ADD rd, rs, propósito: Sumar enteros de 32 bits. Si ocurre desbordamiento se produce una excepción (interrupción del programa). Formato: ADD RD, rs, propósito: Sumar enteros de 32 bits. No se produce nunca una excepción.4(ii) Punto flotante IEEE 754: simple precisión (32 bits) y doble precisión (64 bits). (iii) Decimal En BCD (Decimal codificado en binario): MIPS no los tiene, tendría que programarse su tratamiento. 5(3) Caracteres Códigos binarios para representar caracteres. Estándares: -ASCII de 8 bits -EBCDIC de 8 bits (utilizado por los grandes computadores IBM) MIPSno tiene instrucciones específicas para tratamiento de caracteres. Lo que tiene es una facilidad del ensamblador para declarar cadenas de caracteres. .data cadena: ascii "accede” # defino string (4) Datos lógicos Un objeto de n bits es considerado como n datos de 1 bit. Utilizados en operaciones lógicas.

REPRESENTACIÓN DE NÚMEROS ENTEROS Y DE PUNTOS FLOTANTES

En un ordenador típico los números en punto flotante se representan de la manera descrita en el apartado anterior, pero con ciertas restricciones sobre el número de dígitos de q y m impuestas por la longitud de palabra disponible (es decir, el número de bits que se van a emplear para almacenar un número). Para ilustrar este punto, consideraremos un ordenador hipotético que denominaremos MARC-32y que dispone de una longitud de palabra de 32 bits (muy similar a la de muchos ordenadores actuales). Para representar un número en punto flotante en el MARC-32, los bits se acomodan del siguiente modo: Signo del número real x: 1 bit Signo del exponente m:

1 bit

Exponente (entero |m|):

7 bits

Mantisa (número real |q|): 23 bits

En la mayoría de los cálculos en punto flotante las mantisas se normalizan, es decir, se toman de forma que el bit más significativo (el primer bit) sea siempre '1'. Por lo tanto, la mantisa q cumple siempre la ecuación (19). Dado que la mantisa siempre se representa normalizada, el primer bit en q es siempre 1, por lo que no es necesario almacenarlo proporcionando un bit significativo adicional. Esta forma de almacenar un número en punto flotante se conoce con el nombre de técnica del 'bit fantasma'. Se dice que un número real expresado como aparece en la ecuación (18) y que satisface la ecuación (19) tiene la forma de punto flotante normalizado. Si además puede representarse exactamente con |m| ocupando 7 bits y |q| ocupando 24 bits, entonces es un número de máquina en el MARC-323 La restricción de que |m| no requiera más de 7 bits significa que:

Ya que , la MARC-32 puede manejar números tan pequeños como 10-38 y tan 38 grandes como 10 . Este no es un intervalo de valores suficientemente generoso, por lo que en muchos casos debemos recurrir a programas escritos en aritmética de doble precisión e incluso de precisión extendida. Como q debe representarse empleando no más de 24 bits significa que nuestros números de máquina tienen una precisión limitada cercana a las siete cifras decimales, ya que el bit menos significativo de la mantisa representa unidades de números expresados mediante más de siete dígitos de aproximación cuando se almacenen en el ordenador.

decimales

. Por tanto, los serán objeto

Por ejemplo: 0.5 representado en punto flotante en el MARC-32 (longitud de palabra de 32 bits) se almacena en la memoria del siguiente modo:

Ejemplo 5: Suponga un ordenador cuya notación de punto fijo consiste en palabras de longitud 32 bits repartidas del siguiente modo: 1 bit para el signo, 15 bits para la parte entera y 16 bits para la parte fraccionaria. Represente los números 26.32, y 12542.29301 en base 2 empleando esta notación de punto fijo y notación de punto flotante MARC-32 con 32 bits. Calcule el error de almacenamiento cometido en cada caso. Solución: El número 26.32 en binario se escribe del siguiente modo:

Empleando las representaciones comentadas, obtenemos:

Si expresamos el error como la diferencia entre el valor y el número realmente almacenado en el ordenador, obtenemos:

En cuanto a los otros dos números, obtenemos:

Antes de entrar con detalle en la aritmética de los números en punto flotante, es interesante notar una propiedad de estos números de especial importancia en los cálculos numéricos y que hace referencia a su densidad en la línea real. Supongamos que p, el número de bits de la mantisa, sea 24. En el intervalo (exponente f = 0) es posible representar 224 números igualmente espaciados y separados por una distancia 1/224. De modo análogo, en cualquier intervalo hay 224 números equiespaciados, pero su densidad en f 24 este caso es 2 /2 . Por ejemplo, entre 220 = 1048576 y 221 = 2097152 hay 224 = 16777216 números, pero el espaciado entre dos números sucesivos es de sólo . De este hecho se deriva inmediatamente una regla práctica: cuando es necesario comparar dos números en punto flotante relativamente grandes, es siempre preferible comparar la diferencia relativa a la magnitud de los números. En la figura (1) se representa gráficamente la separación entre dos números consecutivos en función del exponente f en el rango f = [20,30].

TIPOS DE DIRECCIONAMIENTOS UTILIZADOS POR LAS INSTRUCIONES

Modo de direccionamiento inmediato El modo inmediato es la forma más simple de direccionamiento. El operando es parte de la instrucción y, por lo tanto, ninguna referencia de memoria, distinta de la instrucción, es requerida para recuperar el operando. Este modo es rápido y se puede utilizar para definir constantes o establecer valores de variables iniciales. Este modo tiene un alcance limitado, ya que es limitado al tamaño del campo de dirección, que para la mayoría de los conjuntos de instrucciones es pequeño en comparación con la longitud de palabra. Modo de direccionamiento directo En el modo directo, el campo de dirección contiene la dirección del operando. Se requiere una única referencia de memoria para leer el operando de la localización dada. Sin embargo, sólo proporciona un espacio de direcciones limitado. Modo de direccionamiento indirecto En el modo indirecto, la celda de memoria a la que apunta el campo de dirección contiene la dirección del operando (puntero), que a su vez contiene la dirección de longitud

completa del operando. Este modo tiene un espacio de direcciones grande, a diferencia del direccionamiento inmediata y el directo, pero debido a que se requieren múltiples accesos de memoria para encontrar el operando es más lento. Modo de direccionamiento de registro El modo de registro es similar al modo directo. La diferencia clave entre los dos modos es que el campo de dirección de la instrucción se refiere a un registro en lugar de una posición de memoria. El direccionamiento de registro no tiene una dirección eficaz. Tres o cuatro bits son utilizados como campo de dirección para hacer referencia a los registros. Modo de direccionamiento indirecto de registro Este modo es similar al direccionamiento indirecto. El operando se encuentra en una celda de memoria apuntada por contenido de un registro. El registro contiene la dirección efectiva del operando. Este modo utiliza menos acceso de memoria que el direccionamiento indirecto. Este modo tiene un espacio de direcciones grande, pero es limitado al ancho de los registros disponibles para almacenar la dirección efectiva. Modo de direccionamiento de desplazamiento El modo de desplazamiento consiste en tres variaciones: 1) Direccionamiento relativo 2) Direccionamiento de registro base 3) Direccionamiento de índice Este modo puede considerarse una combinación del modo de direccionamiento indirecto y de registro. La dirección tiene dos valores: el valor base y un registro que contiene un desplazamiento entero que es sumado o restado de la base para formar la dirección efectiva de la memoria. Modo de direccionamiento de pila El modo de pila, también conocido como direccionamiento implícito, consiste en un conjunto lineal de ubicaciones referidos al último que entra y primero en salir. El operando está en la parte superior de la pila. El puntero de la pila es un registro que almacena la dirección de la parte superior de la ubicación de la pila.

TIPO DE DIRECCIONAMIENTO UTILIZADO POR LAS INSTRUCCIONES

Microprocesador: Los diseños del Mips son utilizados en la línea de productos informáticos de Sgi, en muchos sistemas embebidos; en dispositivos para Windows CE router Cisco y videoconsolas como la Nintendo 64 o las Sony Playstation Playstation 2 y playstation portable.

Las primeras arquitecturas Mips fueron implementadas en 32 bits (generalmente rutas de datos y registros de 32 bits de ancho), si bien versiones posteriores fueron implementadas en 64 bits. Formato tipo R: Utilizado por las instrucciones aritméticas y lógicas. Formato tipo I: Utilizando por las instrucciones de transferencia, las de salto condicional y las instrucciones con operandos inmediatos. Formato tipo J: Utilizando por las instrucciones de bifurcación.

Related Documents


More Documents from "ivon"

December 2019 10
December 2019 11
May 2020 5
December 2019 6