Que imán hace falta para el contador de la luz

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 28,95 KB

Soluciones Cuestionario Porras


2- Dado un programa compuesto por 120 M instrucciones, todas las instrucciones están compuestas por 5 estados, la ejecución del programa se realiza en un procesador con una frecuencia de 3 Ghz, cada instrucción se ejecuta en cinco ciclos de reloj. Determine el tiempo de ejecución de dicho programa para un procesador escalar, un procesador escalar con pipeline, un procesador superescalar de grado 4, un procesador súper pipeline con tiempo de desfasaje t= 1/n con n=2 y un procesador que utiliza ambas técnicas simultáneamente súper pipeline y súper escalar.
Determine el factor de aceleración para cada caso con respecto al procesador escalar.

Solución


Etapas por instrucción: S=5

N Instrucciones: N=120

t=tiempo=536 Hz=0,00166seg


Escalar


T=NST=(120)(5)(0,00166)=1  -> En función de t -> T=600t


SuperEscalarm=4


T=(S+N-m)t=(5+120-4)(0,00166)=0,2016  -> En función de t -> T=121t


SuperPipeline t=1n con  n=2


T=[S+(N-1n)]t=[5+120-12]12=32,25 -> En función de t -> T=64,5t


Escalar/Pipeline


T=(S+N-1)t=(120+5-1)(0,00166)=0,20589


-> En función de t -> T=124t


SuperEscalar/SuperPipeline


T=[S+(N-mmn)]t=19,5t


Aceleración con respecto al escalar


  1. A=600t121t=4,96       2) A=600t124t=4,84

3) A=600t64,5t=9,3      4) A=600t19,5t=30,76


3- Un computador dispone de una caché, memoria principal y un disco utilizado para memoria virtual. Cuando se referencia una palabra que está en la caché , se requieren 20 ns para acceder a ella. Si está en memoria principal pero no en la caché, se necesita 60  ns para cargarla en la caché y entonces se inicia de nuevo la referencia. Si la palabra no está en memoria principal se necesitan 12 ms para captarla de disco, seguidos de 60 ns para copiarla en la caché, comenzando entonces nuevamente la referencia. La tasa de aciertos  de caché es 0.9 y la de memoria principal 0.6. Cuál es, en nanosegundos, el tiempo medio necesario para acceder a una palabra referenciada en este sistema.


Solución




4- Una cache asociativa por conjuntos tiene un tamaño de bloque de cuatro palabras de 16 bits y un tamaño de conjunto de 2. La caché puede acomodar un total de 4096 palabras. El tamaño de memoria principal que es transferible  a cache es de 64K x 32 bits. Diseñe la estructura de cache y muestre cómo son interpretadas las direcciones por el procesador.


Solución


(a) Los campos en los que se divide la dirección del procesador para la caché de correspondencia directa son:




La unidad caché dispone de 512 entradas que habilitan dos bloques uno por cada vía. Cada bloque tiene 6 bits de etiqueta para la comprobación, 4 palabras de 2 bytes, un bit de modificación y cuatro bits de validez uno por cada palabra.


5- Una cache asociativa por conjuntos consta de 64 líneas, divididas en conjuntos de 4 líneas. La memoria principal contiene 4k bloques de 128 palabras cada uno. Muestre el formato de direcciones de memoria principal.


Solución








6- Dadas las carácterísticas de un programa calcular el tiempo que tarda en ejecutarse el programa y su rendimiento. Se sabe que la CPU trabaja a 1GHz. El programa se compone de 60 instrucciones de tres tipos: A, B y C y cada tipo de instrucción tiene un número de microinstrucciones diferente según indica la tabla:


FALTA


Para aumentar el rendimiento se añade posteriormente una caché que ahorra 1 ciclo en accesos si el dato está en la caché y si no está dura lo mismo. El porcentaje de acierto es del  90%. Calcular el rendimiento y la aceleración del rendimiento con respecto del anterior sin caché.


Solución

CPI= (Intrucciones/Prog)*CPITotal de Instrucciones = (30*3)+(20*4)+(10*2)30+20+10=3.16


1GHZ = 1ns1ns = 1x10-9s


Tprog=Total de instrucciones*CPI*1GHZ = 60*3.16*1*10-9=189,6 ns

Nprog=1Tprog=5.2*10-3


7. A) Cuál es la diferencia entre direcciones virtuales y físicas

B) Por qué la mayor parte de los sistemas utilizan páginas virtuales y físicas del mismo tamaño

C) Para qué sirve el buffer de traducción anticipada TLB

D) Para qué sirve el intercambio (swapping)


Solución

(a) Las direcciones virtuales están diseñadas para ubicar instrucciones o partes de un mismo programa en memoria virtual(disco) para no darle toda la carga de un programa a una memoria física, las direcciones físicas están directamente relacionadas con el procesador, por lo tanto, aquí se encuentran las instrucciones de un programa que se saben que van a ser ejecutadas.


(b) Porque de esta forma la cantidad de memoria desperdiciada por un proceso es el final de su última página lo que minimiza la fragmentación interna y evita la externa.


(c) Es un buffer que almacena unas pocas direcciones que han sido referenciadas frecuentemente con el objetivo de evitar que el número de página dada a la unidad de manejo de memoria sea buscado en  la tabla de páginas y obtener rápidamente el marco deseado.


(d) El intercambio (swapping) sirve para pasar datos que están en memoria que llevan mucho tiempo sin ser usados al disco duro, y de esta manera liberar espacio en la memoria. Existen 2 métodos: Swap In (pasar datos del disco a memoria) y Swap Out (pasar datos de memoria al disco).

13- Un computador maneja una Memoria Principal de 16 posiciones de 8 bits cada una, cuyos contenidos se muestran en el cuadro siguiente.



El formato de una determinada instrucción para este computador es el siguiente:



Sabiendo que los operandos y el resultado que participan en la instrucción se expresan en el formato con la dirección de la memoria donde se ubican y que el primer campo de la instrucción representada en la figura anterior corresponde al código asignado a la instrucción lógica AND, averiguar cómo se modifican los contenidos de la memoria después de haber ejecutado dicha instrucción


Solución


El primer operando que interviene en la operación AND se encuentra en la posición de memoria 0010 y su contenido es 000 000. El segundo operando ocupa la dirección 0011 y contiene 111 111. La operación será:


0000 0000 AND 1111 1111 = 0000 0000


El resultado de esta instrucción se deposita en la dirección 1111, que inicialmente contenía el valor 1111 1111, con lo que pasará a contener el valor 000 000 después de ejecutar la instrucción con el formato de la figura del enunciado. El resto de las posiciones de la memoria no se modificará.


14- Se dispone de un computador en el que el formato de las instrucciones sólo especifica dos operandos: la fuente y el destino. Los campos para dichos operandos constan de 6 bits y expresan la dirección de la memoria principal donde residen.


Indicar las posiciones de la memoria que se modificarán después de ejecutar la instrucción cuyo formato es el que se muestra en la siguiente figura.


Se conocen los siguientes datos: (a) El código de operación 0101 corresponde a la instrucción OR. (b) (000100) = 01010101. (c) (000010) = 10101010.


Solución


El resultado de la operación lógica OR es:


01010101 OR 10101010 = 1111 1111


Como el resultado de la instrucción se deposita en el operando destino, que corresponde a la dirección 000 010, ésta es la única que altera el contenido en la memoria, que pasa de contener 10101010 a 1111 1111.


17. A) Cuál son los principios a considerar para el diseño e implementación de un bus

B) Qué ventajas tiene una arquitectura de varios buses frente a otra de un bus único


Solución



1- Los buses  pueden ser en serie (bit a bit) o en paralelo (varios bits)

2- Aunque parezca que es mucho más eficiente la transferencia en paralelo, tiende a traer inconvenientes como: la frecuencia de reloj debe ser reducida.

3- Deben haber señales de control que transmitan órdenes

4- No puede haber colisiones de datos

5- Se debe tomar en cuenta el ancho de banda necesario. Un bus destinado a un dispositivo lento  como el teclado no puede tener el mismo ancho de banda que el bus de display o el bus de direccionamiento a memoria.

  1. Hay menos dispositivos por bus. Esto reduce el retraso de propagación, porque cada bus puede ser más corto, y reduce efectos de embotellamiento e incompatibilidad entre dispositivos.


18- Disponemos de un μP de 32 bits cuyas instrucciones de 32 bits están compuestas por dos campos: el primer byte contiene el código de operación (OPCODE) y los restantes, un operando inmediato o una dirección de operando.


A) ¿Cuál es el tamaño de memoria que se puede direccionar directamente?

B) ¿Cuántos bits necesita el contador de programa (PC) y el registro de instrucciones (IR)?

C) Discutir el impacto que se produciría en la velocidad del sistema si el μP tiene:

  • 1. Un bus de direcciones de 16 bits y un bus de datos de 16 bits

  • 2. Un bus de dirección de 32 bits y un bus de datos de 16 bits


Solución


De los 32 bits de la instrucción, si 8 bits son del opcode quedan 24 bits para la dirección de un operando.


(a) Con 24 bits se pueden direccionar hasta 224 = 16 M palabras.


(b) El contador del programa debe acceder a todo este espacio direccionable, luego el PC necesita tener 24 bits.


El registro de instrucciones debe contener a toda la instrucción de 32 bits.


Respuesta: PC de 24 bits IR de 32 bits


(c.1) Si el bus de direcciones fuese de 16 bits y el bus de datos también de 16 bits, entonces el acceso a una palabra de memoria requeriría al menos 2 ciclos de acceso, con la memoria paginada o segmentada, o bien un ciclo de máquina adicional a los dos de acceso para renovar el registro de página/segmento.


El interfaz requiere unos registros donde se mantenga la información que se transmite a trozos. Un registro de direcciones, de 24 bits al menos, que lo escribe la CPU en dos veces:


La CPU debe efectuar dos escrituras por el bus de direcciones (local) para poner toda la dirección en el registro de 24 bits.

El registro superior de 8 bits puede considerarse como un registro de página. Si las direcciones se mueven en un rango (de hast 64 K palabras) en el que no se modifica esta parte de la dirección, la CPU puede ahorrarse la escritura del registro de 8 bits en esos casos, mientras las direcciones se muevan dentro de la “página”.


(c.2) Si el bus de datos es de 32 bits el acceso a la memoria se realizará en un solo ciclo, con la memoria paginada o segmentada, y se necesitará un ciclo de máquina adicional cuando se requiera renovar el registro de página/segmento.


19. A) Explique en qué consisten los cuatro estados básicos para la ejecución de una instrucción en procesador de tipo Von  Neumann.

B) Que es un ciclo de máquina

C) Carácterísticas de las arquitecturas Harvard y Von Neumann


Solución



  1. Dispositivo de operación (DO), que ejecuta instrucciones de un conjunto especificado, llamado sistema (conjunto) de instrucciones, sobre porciones de información almacenada, separada de la memoria del dispositivo operativo (aunque en la arquitectura moderna el dispositivo operativo consume más memoria -generalmente del banco de registros-), en la que los operandos son almacenados directamente en el proceso de cálculo, en un tiempo relativamente corto

  2. Unidad de control (UC), que organiza la implementación consistente de algoritmos de decodificación de instrucciones que provienen de la memoria del dispositivo, responde a situaciones de emergencia y realiza funciones de dirección general de todos los nodos de computación. Por lo general, el DO y la UC conforman una estructura llamada CPU. Cabe señalar que el requisito es consistente, el orden de la memoria (el orden del cambio de dirección en el contador de programa) es fundamental a la hora de la ejecución de la instrucción. Por lo general, la arquitectura que no se adhiere a este principio no se considera von Neumann

  3. Memoria del dispositivo — un conjunto de celdas con identificadores únicos (direcciones), que contienen instrucciones y datos.

  4. Dispositivo de E/S (DES), que permite la comunicación con el mundo exterior de los computadores, son otros dispositivos que reciben los resultados y que le transmiten la información al computador para su procesamiento.


(b) Cuando un microprocesador ejecuta una instrucción este realiza una serie de operaciones o tareas básicas llamadas ciclos de máquina.


(c) 1- HARVARD: Su principal carácterística radica en que en el dispositivo computarizado solo existe un canal para acceder a la memoria FLASH y la RAM, desde la CPU, es decir, el bus de datos, de dirección, y de control es compartido entre estas dos memorias, lo que limita el acceso a ellas, pues a pesar de ser memorias de diferentes tipos solo se puede leer o escribir de una a una.

2- VON NEUMANN: Su principal carácterística era que usaba una memoria de programa (papel perforado), otra para almacenar los datos (interruptores) y cada una usaba su propio canal de comunicación. Separando de esta manera los buses de comunicación entre la memoria de programa y de datos, se puede lograr acceder en el mismo instante de tiempo a la memoria RAM y ROM.


21- Considere un microprocesador de 32 bits, con un bus externo de 16 bits, y con una entrada de reloj de 8MHz. Asuma que el procesador tiene un ciclo de bus cuya duración mínima es igual a cuatro ciclos de reloj.


Solución


(a) Cuál es la velocidad de transferencia máxima que puede sostener el microprocesador.


2 MHZ   ⇒ Por cada ciclo 16 Bits

16 ⇒  2 Bytes


2 MHZ = 1 / 2.000.000  = (500 X 10)^9 Segundos


= 16 (1/(500 X 10 )^9) = 32.000.000 bits/seg  = 32 MgBites/seg = 4 Mgbytes/seg


(b) Para incrementar sus prestaciones, ¿sería mejor hacer que su bus externo de datos sea de 32 bits o doblar la frecuencia de reloj que se suministra al microprocesador.


Lo mejor es que lo agrande, es decir, hacer que su bus externo de datos sea de 32 bits.


(c)  Establezca las suposiciones que considere y explíquelo. Ayuda: determine el número de bytes que pueden transferirse por ciclo de bus.


Para la velocidad de 4 Mgbytes/seg se obtiene una mayor eficiencia a agrandar el tamaño del  Bus.


22- Un computador con 13 líneas de direcciones tiene una memoria de 212 palabras y utiliza entrada/salida localizada en memoria.

FALTA LA B


(a) ¿Cuál es el número máximo de periféricos que pueden conectarse, suponiendo que cada uno ocupa una sola dirección?

(b) ¿Cuál es el número máximo de periféricos que pueden conectarse, suponiendo que cada uno ocupa 8 direcciones?


Solución


(a) El número máximo de periféricos que pueden conectarse, suponiendo que cada uno ocupa una sola dirección es de 212.


23- Un controlador de E/S posee un buffer para el almacenamiento temporal de los datos con una capacidad de 256 Kb. En un instante determinado inicia una operación de E/S con una impresora a una velocidad de transferencia de 256 Kb/seg. Si el controlador de E/S recibe la información que debe enviar a la impresora a una velocidad de 1Mb/seg, ¿cuánto tiempo tardará en llenarse por primera vez el buffer suponiendo que inicialmente está vacío, y que recibe y envía información simultáneamente de forma continua?


Solución


El tiempo que tarda en llenarse por primera vez el buffer suponiendo que inicialmente está vacío, y que recibe y envía información simultáneamente de forma continua es de ⅓ seg.


24- Considere un hipotético microprocesador de 32 bits cuyas instrucciones de 32 bits están compuestas por dos campos: el primer byte contiene el código de operación (codop) y los restantes un operando inmediato o una dirección de operando.

FALTA LA C


(a) Cuál es la máxima capacidad de memoria (en bytes) direccionable directamente.

(b) Discuta el impacto que se produciría en la velocidad del sistema si el microprocesador tiene:

1. Un bus de dirección local de 32 bits y un bus de datos local de 16 bits,

2. Un bus de dirección local de 16 bits y un bus de datos local de 16 bits


(c) Cuántos bits necesitan el contador de programa y el registro de instrucción.


Solución


(a) Cuál es la máxima capacidad de memoria (en bytes) direccionable directamente.



(b) 1. Un bus direcciones local  de 32 bits y un bus de datos local de 16 bits


Se ve afectada la velocidad por que se coge los primeros 16 bits y leer de la memoria después de ello se coje en los 16 bits restantes. Y con ello se produce un retardo en el proceso y se  debe emplear circuito de delay o de retraso.


2. Un bus direcciones local  de 16 bits y un bus de datos local de 16 bits


Como podemos ver en el caso anterior se afecta la velocidad por las causas anteriormente nombradas en este caso es diferente por que  la velocidad es mejor no hay necesidad de emplear ningún retardo.


25- Considere un microprocesador hipotético que genera direcciones de 16 bits (por ejemplo, suponga que el contador de programa y el registro de dirección son de 16 bits) y tiene un bus de datos de 16 bits.

FALTA LA D


(a) Cuál es el máximo espacio de direcciones de memoria al que el procesador puede acceder directamente si está conectado a una memoria de 16 bits.

(b) Cuál es el máximo espacio de direcciones de memoria al que el procesador puede acceder directamente si está conectado a una memoria de 8 bits.

(c) Qué carácterísticas de la arquitectura permitirán a este procesador acceder a un espacio de E/S separado.

(d) Si una instrucción de entrada o de salida puede especificar un número de puerto de E/S de 8 bits, y cuántos puertos de E/S de 8 bits puede soportar el microprocesador? (cuántos puertos de E/S de 16 bits. Explíquelo.


Solución


(a) La máxima velocidad que puedo obtener son los 16 bits de la memoria.


(b) La máxima velocidad que puedo obtener son los 8 bits de la memoria pero para traer los datos tendría que tener  2 memorias cada una de ellas con 8 bits.


(c) Mayor agilidad por parte del procesador.


28- Calcule el ancho de banda de bus necesario para exhibir una película de  Súper VGA (1024 X 768) en color real RGB (8 bits / píxel por cada banda de color)  a 30 cuadros/seg. Suponga que los datos deben pasar por el bus dos veces, una vez del DVD a la memoria y una vez de la memoria a la pantalla.


Solución


1024 x 748 = 786432 pixeles

8  bits por píxel ⇒ 786432 * 8 = 6291456 bits

30 frames per second ⇒ Necesita 6291456 bits 30 veces cada segundo

188 Megabits


29- Cuál es el ancho de banda de un sistema de memoria capaz de transferir 64 bits de datos por cada acceso, con una latencia de 25 ns por operación.


Solución


(a)

64 bits ⇒ 8 bytes

8 bytes / 25 ns = 0,32 MB/ns


33. Un procesador segmentado tiene una frecuencia de reloj de 2.5 GHz y ejecuta un programa de 1.5 millones de instrucciones. El cauce tiene cinco etapas y las instrucciones se emiten a una frecuencia de una por ciclo de reloj. Cuál es la aceleración de este procesador para este programa en comparación con un procesador no segmentado. Cuáles son los MIPS  del procesador segmentado.


S=5f=2,56HzCPI=1N=1,5M


Si tengo un ciclo por instrucción y 1,5M de instrucciones, va a necesitar hacer 1,5M de ciclos -> Ciclos de reloj = 1,5M


tiempo=t=Nf=1,5M2,56Hz=610-4seg


Para segmentado


T=[S+(N-1)]t=[5+(1,5M-1)(6


10

-4


)= 900,0024


Para no segmentado


T=NSt=(1,5M)(5)(6


10

-4


)=4500


Aceleración comparativa


A=


T(no segmentado)


T(segmentado)

=
4500

900,0024


5


Mips procesador segmentado


Mips=f
CPI=2,56Hz
110
6=2500

Entradas relacionadas: