colección de problemas sobre buses

Anuncio
ESCOLA POLITÈCNICA SUPERIOR
UNIVERSITAT DE LES ILLES BALEARS
Asignatur a:
Impar tición:
Cur so:
Pr ofesor :
Enginyer ia Tècnica Industr ial
(esp. Electr ònica Industr ial)
B.O.E. 6-Març-2001
4683-Informática Industrial (9 créditos)
2º Curso-Anual
2001-2002
Javier Antich Tobaruela
COLECCIÓN DE PROBLEMAS
SOBRE BUSES
SEGUNDO TEMA DE LA ASIGNATURA
La colección de problemas ha sido confeccionada a partir de los ejercicios
propuestos en las siguientes fuentes bibliográficas:
§
Organización y Arquitectura de Computadores, William Stallings, PrenticeHall, Cuarta Edición
§
Organización y Arquitectura de Computadores, William Stallings, PrenticeHall, Quinta Edición
§
Organización de Computadoras – Un Enfoque Estructurado, Andrew S.
Tanenbaum, Prentice-Hall, Tercera Edición
Algunos de los ejercicios han sido levemente modificados con un doble objetivo; por un
lado, facilitar al alumno la comprensión de los mismos y, por otro, profundizar en aquellos
aspectos que, en base a mi criterio personal, he encontrado más interesantes. En las fuentes
bibliográficas citadas podréis encontrar otros problemas sobre el tema que nos ocupa.
A pesar de tratarse de una colección de problemas opcional se recomienda encarecidamente
su realización, individual o en pequeños grupos, en vista al examen parcial de Febrero.
Los problemas no vienen acompañados de sus respectivas soluciones para no condicionar
sus respuestas. La resolución de algunos de ellos requiere la realización de suposiciones,
que deberán ser siempre lo más coherentes posibles dentro del contexto de cada problema.
En clase podrá plantearse cualquier duda sobre los mismos.
1
Colección de pr oblemas sobr e buses
J avier Antich Tobar uela
Pr oblema 1.- A la hipotética máquina de la figura 1 se le han añadido dos instrucciones de
E/S con los siguientes códigos de operación:
1. 0011b = Cargar AC desde E/S
2. 0111b = Almacenar AC en E/S
En estos casos, la dirección de 12 bits identifica un dispositivo concreto de E/S. Describa
paso a paso la ejecución del siguiente programa:
I1. Cargar AC desde el dispositivo 5.
I2. Sumar a AC el contenido de la posición de memoria 940hex.
I3. Almacenar AC en el dispositivo 6.
Asuma que el valor obtenido desde el dispositivo 5 es 3, y que la posición de memoria
940hex almacena un 2. Tras cada paso de la ejecución del programa, muestre el contenido de
la memoria, de los registros de la CPU y de los puertos de E/S utilizando notación
hexadecimal.
0
4
15
CodOp
Dirección
(a) Formato de instrucción
0
1
S
15
Magnitud
(b) Formato de enteros
Contador de Programa (PC) = Dirección de instrucción
Registro de Instrucción (IR) = Instrucción en ejecución
Acumulador (AC) = Almacenamiento temporal
(c) Registros internos de la CPU
0001b = Cargar AC desde memoria
0010b = Almacenar AC en memoria
0101b = Sumar a AC un dato de memoria
(d) Lista parcial de códigos de operación
Figur a 1. Principales características de una supuesta máquina
Pr oblema 2.- Considere un hipotético microprocesador capaz de generar direcciones y
datos de 16 bits.
a) ¿Cuál es el máximo espacio de direcciones de memoria al que el procesador
puede acceder directamente si se encuentra 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 se encuentra conectado a una memoria de 8 bits?.
2
Colección de pr oblemas sobr e buses
J avier Antich Tobar uela
c) ¿Qué caracterí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, ¿cuántos puertos de E/S de 8 bits puede soportar el
microprocesador? ¿y si los puertos de E/S son de 16 bits?. Razone la respuesta.
Pr oblema 3.- Considere un hipotético microprocesador de 32 bits cuyas instrucciones,
también de 32 bits, están compuestas por dos campos: el primer byte contiene el código de
operación y los restantes un operando inmediato o una dirección de operando.
a) ¿Cuál es la capacidad de memoria (en bytes) direccionable directamente?.
b) Discuta el impacto que se produciría en la velocidad del sistema si el
microprocesador tiene:
a. Un bus de dirección local de 32 bits y un bus de datos local de 16 bits, o
b.
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?.
Pr oblema 4.- Considere un computador en el que un módulo de E/S controla un teletipo
con teclado e impresora. El módulo de E/S en cuestión tiene asociados los siguientes
registros:
-
INPR: Registro de Entrada o de Teclado de 8 bits.
OUTPR: Registro de Salida o de Impresora de 8 bits.
FGI: Indicador de Entrada o de Teclado de 1 bit.
FGO: Indicador de Salida o de Impresora de 1 bit.
IEN: Habilitación de Interrupción de 1 bit.
La entrada desde teclado y la salida a impresora están controladas por el módulo de E/S.
Por su parte, el teletipo es capaz de codificar un símbolo alfanumérico mediante una
palabra de 8 bits y decodificar una palabra de 8 bits en un símbolo alfanumérico. Se pide:
a) Describir con detalle el procedimiento necesario para llevar a cabo tanto una
operación de lectura de teclado como una operación de escritura sobre
impresora. Suponed que no se hace uso del registro IEN.
b) Repetir el apartado a) asumiendo el uso de interrupciones.
Pr oblema 5.- Un sistema de memoria consta de varios módulos, todos ellos conectados a
un bus de memoria común. Cuando se solicita una escritura, el bus está ocupado durante
100 ns por el dato, la dirección y las señales de control. Durante los mismos 100 ns , y
3
Colección de pr oblemas sobr e buses
J avier Antich Tobar uela
después durante 500 ns más, el módulo de memoria direccionado ejecuta un ciclo
aceptando y almacenando el dato. La operación de los módulos de memoria puede
solaparse, pero sólo una de las solicitudes puede estar en el bus en un momento dado.
Responda a las siguientes cuestiones:
a) Asuma que hay ocho módulos conectados al bus. ¿Cuál es la máxima velocidad
segundo ) para el almacenamiento de datos en
posible (en palabras
memoria?. Realice un cronograma de apoyo.
b) ¿Y si reducimos el número de módulos a cuatro?.
Pr oblema 6.- Para ahorrar puertas lógicas, a menudo los buses se multiplexan en el
tiempo. Considere una máquina con palabras de 48 bits, un disco de 10 7 bps , y un tiempo
de ciclo de memoria principal de 600 ns . Asuma que cada transmisión a través del bus
requiere 750 ns . ¿Cuántos bits tendrían que enviarse en cada periodo de 750 ns para
ajustarse a la velocidad de transferencia del disco, y qué formato de bus elegiría?. ¿Qué
fracción del ancho de banda de memoria principal consume una operación de E/S en
disco?.
Pr oblema 7.- Suponga que tenemos k dispositivos (d 1 K d k ) conectados a una cadena de
arbitraje “Daisy Chain”. Cada dispositivo, d i , utiliza una fracción α i de la capacidad del
bus, teniendo ésta última un valor normalizado de 1.0. Se cumplen las siguientes relaciones:
k
∑α
0 < αi < 1
i =1
i
<1
Ecuación 1
¿Cómo podrían los dispositivos conectados a la cadena obtener la máxima capacidad
remanente media?. La capacidad remanente para un dispositivo se determina de la siguiente
forma:
i −1
CRi = 1 − ∑ α j
j =1
Ecuación 2
en donde el subíndice i indica la posición del dispositivo en la cadena y, por tanto, su
prioridad. Subíndices más bajos se corresponden con prioridades más altas. Comente el
significado de los resultados obtenidos y dé algún ejemplo de cuándo no son aplicables.
Pr oblema 8.- El bus VAX SBI utiliza un esquema de arbitraje distribuido síncrono. Cada
dispositivo SBI, de prioridad única, tiene una línea de solicitud de transferencia asociada
(TR, Transfer Request). El SBI tiene 16 de dichas líneas (TR0, TR1, ..., TR15), siendo TR0
la de prioridad más elevada. Cuando un dispositivo quiere utilizar el bus, realiza una
4
Colección de pr oblemas sobr e buses
J avier Antich Tobar uela
reserva de un ciclo de bus futuro, activando su línea TR durante el ciclo de bus en curso. Al
final del ciclo en curso, cada dispositivo con una reserva pendiente examina las líneas TR;
el dispositivo de mayor prioridad será dueño del siguiente ciclo de bus.
Como máximo se pueden conectar al bus 17 dispositivos. ¿Por qué?.
Pr oblema 9.- Con respecto al diagrama de tiempos de la figura 3-341, suponga que ha
bajado la velocidad del reloj a un periodo de 400 ns , en lugar de los 250 ns que tenía
inicialmente, permaneciendo las restricciones de tiempo inalteradas. ¿Cuánto tiempo
tendría la memoria para entregar un dato al bus después de la activación de la señal
MREQ, en el peor de los casos?.
Pr oblema 10.- En la figura referenciada en el problema anterior, se especifica que TRPM es
de al menos 60 ns . ¿Es siempre esta restricción necesaria?, es decir, ¿podríamos encontrar
un sistema con bus síncrono en donde se permitiera a la CPU activar MREQ antes de que
las direcciones se hubieran estabilizado?. Justifica la respuesta.
Pr oblema 11.- Señale los tiempos de transición de las líneas de direcciones de la figura 2
como TA1 y TA2 , los tiempos de transición de MREQ como TMREQ1 y TMREQ2 , y así
sucesivamente con el resto de señales. Escriba todas las desigualdades que implica el ciclo
completo de sincronización.
ADDR
Dirección de memoria por leer
MREQ
RD
SINM
Datos
DATA
SINE
Figur a 2. Cronograma de una operación de lectura sobre un bus asíncrono
Pr oblema 12.- La mayoría de los buses de 32 bits permiten lecturas y escrituras de 16 bits.
¿Existe alguna ambigüedad en cómo colocar los datos?. De ser así, explíquela y proponga
una solución no ambigua al problema.
1
Referencia a la figura 3-34 del libro Organización de Computadoras – Un Enfoque Estructurado. La podréis
encontrar en la fotocopistería.
5
Descargar