AC TP Clase Gua Unificada v1 8

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 23

ARQUITECTURA DE COMPUTADORES (3.4.

072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO de CLASE Nº1


EJERCICIOS SOBRE SEÑALES ELÉCTRICAS
_______________________________________________________________________
Objetivos:
• Entender las relaciones entre las diversas unidades de uso común.
• Entender la relación de las magnitudes con el comportamiento de las señales.
• Conocer la relación existente entre las señales eléctricas y las binarias.
_______________________________________________________________________

1. Explique el significado de cada uno de los siguientes conceptos:


a) Comunicación serie y comunicación paralelo.
b) Comunicación unidireccional y bidireccional.
c) Comunicación simplex, comunicación duplex y comunicación full duplex.
d) Atenuación y relación señal-ruido.
2. Dados los siguientes gráficos que representan señales eléctricas calcular el período y
la frecuencia. Indicar si son señales analógicas o digitales. Expresar su amplitud.

3. Dados los siguientes gráficos asociados a señales eléctricas de un computador, decir


que tipo de comportamiento presentan en el tiempo. (Periódicas o aperiódicas)

1
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

4. Dados los gráficos de las señales eléctricas A y B graficar la señal Y, la señal O y la


señal XO, para los siguientes casos:
a) La señal Y vale 5V cuando A y B valen 5V
b) La señal O vale 5V cuando A o B valen 5V
c) La señal XO vale 5V cuando el valor de A es distinto al de B

5. Enumere diferentes señales que conozca, asociadas al funcionamiento del


computador o sus periféricos. Para cada una de ellas aplicar las clasificaciones
anteriores. (Tipo, magnitud, unidades, comportamiento en el tiempo)

2
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO Nº2


EJERCICIOS SOBRE SISTEMAS DE NUMERACIÓN y CÓDIGOS
_________________________________________________________________________
Objetivos:
• Familiarizarse por medio de la práctica con los métodos de conversión entre los diversos sistemas
numéricos.
• Familiarizarse con el manejo de los diversos sistemas numéricos y comprender sus particularidades.
• Familiarizarse con el manejo de las diversas unidades binarias.
• Familiarizarse con el uso de algunos códigos de uso común en las computadoras.
_________________________________________________________________
Ejercicios:
1. Ubíquese mentalmente ante el tablero de un automóvil o de su moto e indique
ejemplos de formato de la información que proporciona dicho tablero:
a) en forma analógica.
b) en forma binaria.
c) en forma digital.

2. Convertir a decimal los siguientes números expresados en hexadecimal, e indicar cuantos


bits y cuantos bytes los componen:
a) FFFF
b) 1000

3. Realizando las conversiones correspondientes, completar el siguiente cuadro de


equivalencias:

BINARIO HEXADECIMAL DECIMAL OCTAL


524
743
C7BA
10110110
11101101,1101

4. Cada una de las siguientes operaciones es correcta en, al menos, un sistema de


numeración. Determinar en cada caso la base para la cual la operación es correcta.
a) 1234 + 5432 = 6666
b) 12,1 x 20 = 302
c) 5 x 5 = 41
d) 11 x 11 = 121
e) 41/3 = 13
5. Realizar las siguientes operaciones considerando los números como magnitudes:
a) 01111 + 00101 b) 01011 + 10001
c) 11011 + 01011 d) 01101 – 00111
e) 11011 – 01111 f) 01101 – 10001
3
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

6. Representar los siguientes números en los códigos siguientes: Signo y Magnitud, código
Ca1, y código Ca2. (límite del registro: 8 bits).
a) 25
b) 10
c) -34
d) -8
7. Realice las siguientes operaciones en binario (usando convenio complemento a 2),
considerando que los números se representan con ocho bits.
a) 14 – 100 = -86
b) -64 – 96 = -160
c) -48 - 31 = -79
8. Se tiene una memoria 22010 posiciones y se quiere identificar cada una con un número
binario distinto. Indicar en números decimales cuántas posiciones son y cuántos dígitos
hexadecimales se necesitan para codificar cualquier posición. Indicar en hexadecimal el
valor de la posición 0 y de la última.
9. Se tiene una memoria 220 posiciones y se quiere identificar cada una con un número
binario distinto. Indicar en números decimales cuántas posiciones son y cuántos dígitos
hexadecimales se necesitan para codificar cualquier posición. Indicar en hexadecimal el
valor de la posición 0 y el de la última.
10. ¿Cuántos bits hacen falta para representar los números entre 010 y 99999910, y cuántos
dígitos hexadecimales se necesitan?
11. Un disco rígido especifica que es de 60GB, indique cuántos bytes y cuántos bits
exactamente almacena.
12. El tamaño de un archivo es de 1,7KB, indique cuántos bytes y cuántos bits tiene el
mismo.
13. Estimando la población de la Ciudad de Buenos Aires en 3.500.000 de personas, ¿Qué
espacio de almacenamiento se necesita para los siguientes datos, suponiendo que se
almacenan en formato ASCII?:
Documento, 4 caracteres; Apellido, 40 caracteres; Nombre, 50 caracteres; Fecha de nacimiento,
6 caracteres; Sexo, 1 caracter.

14. Interpretar el contenido del siguiente registro según los códigos:


0 0 1 1 0 1 1 0 0 0 1 1 1 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 1 0 0 0

MSB LSB

EASCII:
B.C.D.:
Binario 8421:
UNICODE:
HEX:
OCT:
Unsigned Integer:

4
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

15. Usando los datos del ejercicio 14, calcular el bit de paridad según lo pedido a
continuación, comenzando a enumerar los bytes a partir del LSB.
a) Paridad PAR de los Bytes 1 y 2.
b) Paridad IMPAR de los Bytes 3 y 4.
16. Usando los datos del ejercicio 14, calcular el valor de la suma (CheckSum)
a) CHECKSUM de los Bytes 1, 2, 3 y 4.
17. La siguiente secuencia de caracteres ASCII contiene un mensaje:

11000100 01000110 01001100 01010111 11000100 11010000 10111011 11010101 01010010 01001001 
INICIO DE MENSAJE

 01010001 01001100
FIN DE MENSAJE

Se sabe que por cada 7 bits de datos (ASCII) se agrega uno de paridad impar,
ocho en total. La velocidad de transmisión del mensaje fue de 110bps. Indicar la
duración de la transmisión, verificar si hubo errores, y sabiendo que el código se
ha encriptado sumándole el valor 310 a cada caracter. Desencriptar y decodificar el
mensaje.
18. Mediante el uso de la tabla EASCII, almacenar en los casilleros de memoria el siguiente
string:
¡Hola Mundo! Feliz 2012.
Comenzando en la dirección de memoria 0010h, completar la siguiente tabla:

Dirección Dato Dato (Binario)


Pos.
(Hexadecimal) (Hexadecimal) D7 D6 D5 D4 D3 D2 D1 D0
1 0 0 1 0
2
3
4
5
6
7
8
9
10
11
12
13
14
15
5
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

16
17
18
19
20
21
22
23
24
25
26
27
28

19. ¿Es posible generar una combinación decodificador-display de siete segmentos, para
representar todos los dígitos de la numeración hexadecimal? Completar la tabla de
verdad asociada.
20. Demostrar que un número representado en un sistema de numeración posicional de
base B, correr la coma un lugar hacia la izquierda equivale a dividir por la base.
21. Demostrar que un número representado en un sistema de numeración posicional de
base B, correr la coma un lugar hacia la derecha equivale a multiplicarlo por la base B.
Opcionales:
22. En el gráfico el display está representado por una hoja de planilla de
cálculo a la que se le ha aplicado la modificación de alto de fila, ancho de
columna y agrupar celdas. ¿Es posible representar el número en ese
formato cargando el dígito que se quiere representar en otra celda de la
planilla?
23. En la propuesta anterior, agregar otras cuatro celdas con los dígitos binarios.
24. ¿Se puede hacer un simulador de representación en siete segmentos usando caracteres
EASCII en la salida a partir de un input de la variable del dígito que se quiere
representar?
25. ¿Se puede hacer un simulador con representación gráfica a partir de un índice de dígitos
y código de salida almacenado en la tabla? Concluir si la función de un circuito
combinacional puede reemplazarse para la simulación por un índice asociado al código
de entrada que direccione registros de una ROM con estado de las salidas.

6
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO Nº3


EJERCICIOS SOBRE SISTEMAS COMBINACIONALES
_________________________________________________________________________
Objetivos:
• Resolución de problemas con circuitos combinacionales
• Entender el funcionamiento de la UAL elemental.
• Inducir el concepto de interconexión de módulos elementales para llegar a una estructura más compleja
a partir de la reutilización del diseño elemental.
• Concepto de código de operación y dato
• Resolución de problemas simples por software o hardware
• Introducción a la programación de bajo nivel mediante el código de operación (código de la máquina
real) o lenguaje de máquina y los datos relacionados.
• Relacionar los registros de la UAL con la memoria, ordenamiento de bytes.
_______________________________________________________________________
Ejercicios:
1. Construir la tabla de verdad del siguiente circuito combinacional y explicar que uso le
daría.

2. Dado el siguiente circuito combinacional resolver los siguientes puntos:

a) ¿A qué unidad de una U.C.P. responde el siguiente circuito?


7
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

b) Complete el circuito del módulo faltante.


c) Construya una tabla de verdad para el circuito completo, según el siguiente
orden de columnas: Entradas FN, … ,F0, B, A ; Salida FL.
d) En caso de existir filas o variables no utilizadas en las entradas de la tabla
anterior reemplazar la variable binaria por una X.
3. Construir la tabla de verdad de la unidad aritmética.

4. Construir tres tablas de verdad para la unidad de entrada, una para la función A, otra
para la función B, y otra para la función INC

5. Combinando la unidad de entrada y la aritmética, como se muestra a continuación,


resolver los valores para obtener:

8
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

a) Completar la tabla para la suma del OP A y el OP B.


ENA ENB INVA INC OP A OP B Salida UA C
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
b) Completar la tabla para lograr la resta OP B – OP A.
ENA ENB INVA INC OP A OP B Salida UA C
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
c) Completar la tabla para efectuar las operaciones indicadas en la salida.
ENA ENB INVA INC OP A OP B Salida UA C
X X A
X X -A
X X B
X X 1
X X -1
X X 0

6. Interconectar el siguiente módulo de UAL de 1 bit para procesar 4 bits.

9
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

a) Una vez conectado procesar como prueba de escritorio el siguiente juego


de valores A = F; B = 5 con la operación suma aritmética.
b) Considere un mapa de memoria cuyo ancho es un bit, realice un programa
para el módulo UAL de 1 bit configurado para suma aritmética. El acarreo
en caso de existir debe quedar en la UAL una vez finalizado el último paso

Pseudoinstruciones a utilizar

Cargar A XXX (Mueve contenido de XXX a A)


Cargar B XXX (Mueve contenido de XXX a B)
Descargar O XXX (Mueve O a dirección XXX)
SUMAR AB (Suma A+B, resultado en O)
Borrar C (Pone en cero el acarreo)
Fin (Fin del programa)

XXX es la dirección donde se encuentra el bit a procesar


Almacenar el resultado en las direcciones 108, 109, 10A y
10B

7. Considerando el circuito de una UAL compuesta por ocho módulos elementales vista en
clase, diseñe un circuito lógico que conectado al registro O genere una salida de 1 bit
para el flag de zero Z. Considere que para el valor cero todos los bits del registro O
(Out) deben valer cero. No utilizar el flag de acarreo C.
8. Considerando el circuito de una UAL compuesta por ocho módulos elementales vista en
clase, diseñe un circuito lógico que conectado al registro O genere una salida de 1 bit
para el flag de valor negativo N. Considere el rango de valores para números negativos
en complemento a dos en un módulo de 8 bits
9. Considerando el circuito de una UAL compuesta por ocho módulos elementales vista en
clase, realizar un programa, con pseudoinstrucciones, que permita efectuar la operación
de resta (Reg. A – Reg. B). Se trata de un programa para efectuar la resta que no
puede hacerse directamente por hardware. Se trabaja con dos posiciones de memoria
donde se almacenan previamente los valores a restar (0100h y 0101h) y el resultado
debe almacenarse en una posición asignada al resultado (0102h).

Pseudoinstrucciones a utilizar

Cargar A XXXX (Mueve contenido de XXX a A)


Cargar B XXXX (Mueve contenido de XXX a B)
Descargar O XXXX (Mueve O a dirección XXX)
SUMAR AB (Suma A + B deja resultado en O)
10
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Borrar C (Pone en cero el acarreo)


Establecer C (Pone en uno el acarreo)
Not B (Niega el contenido de B)
Fin (Fin del programa)
10. Considerando el circuito de una UAL compuesta por ocho módulos elementales vista en
clase, realizar un programa, con pseudoinstrucciones, que permita efectuar la operación
XOR entre el Reg. A y el Reg. B. Se trata de un programa para efectuar una operación
que no puede hacerse directamente por hardware en el modelo desarrollado. Se trabaja
con dos posiciones de memoria donde se almacenan previamente los valores a operar
(0100h y 0101h) y el resultado debe almacenarse en la posición asignada (0102h). Se
permite el uso de otros registros para almacenamiento transitorio (0103h a 0106h). El
programa puede resolverse basándose en la siguiente equivalencia de circuitos lógicos,
en este caso equivalencia de la función XOR.

11. Completar los casilleros faltantes de la siguiente tabla:

Nº Código de Instrucción Entrada Datos Salida Datos Operación


Bits Operación Entradas
Registro Registro
F1 F0 ENA ENB INVA INC A B Registro O C
16 0 1 1 1 0 0 C78A DE55 A OR B
16 1 0 X 1 X 1 0000 0000 NOT B
16 1 1 1 1 0 1 0000 FFFF A SUMA B
16 0 ED4F 12B0 FFFF 0
16 1 0FFF 0000 F001 0
16 1 1 0 0 0 0 BC7A 3DF5
16 1 1 0 0 0 1 1234 6987 A SUMA B
16 1 0 0 0 1 0 5678 ABCD A OR B

11
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO Nº4


EJERCICIOS SOBRE MEMORIAS Y BUSES
_________________________________________________________________________
Objetivos:
• Familiarizar al alumno con las distintas estructuras para almacenamientos de datos.
(Concepto de celda de memoria, buses de dirección datos y control. Direccionamiento. Palabra.
Unidades de almacenamiento Bit y Byte).
• Comprender las relaciones entre las operaciones que realiza la computadora y sus tiempos internos.
• Comprender relaciones entre procesos dentro de la computadora y los tiempos que insumen.
• Comprender como la computadora organiza la memoria y como la utiliza según el tipo de dato a
almacenar.
_______________________________________________________________________
Ejercicios:

1. Dado el siguiente esquema con pinout de un C.I. de memoria estática 1D, completar la
siguiente tabla.

Cantidad de líneas de datos


Valor del subíndice M
Cantidad de líneas de dirección
Valor del subíndice N
Cantidad de líneas de control
Cantidad de líneas de alimentación
Cantidad de flip flops para celdas
Cantidad de celdas básicas ( 1 bit )
Cantidad de celdas direccionables
Cantidad de bits
Cantidad de Bytes

2. Dada una memoria RAM estática 1D de las siguientes características 16 M x 1.

12
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

bits Bytes
Kbits KBytes
Mbits MBytes

3. Dado un C.I. de memoria RAM estática de 1G x 4.


a) Dibujar el diagrama de pinout del C.I.

b) Interconectar cuatro pastillas iguales para obtener un módulo de 1G x 16


usando decodificación incompleta para el inicio del mapa de memoria.Se
asume alimentación y lectoescritura cableada a todos los CI´s
c) Dibujar un mapa de memoria usando 8 bits de ancho. Indicar que rango
de bytes del mapa cubierto por cada C.I.

13
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

4. En el espacio de memoria del problema anterior se desea saber:


a) ¿cuántos registros exportados de una base de datos se pueden almacenar?
El instructivo que acompaña la exportación describe el formato del registro
como:
AC-UADE DB export module: Record format
Fields # Description Var format Var Name
1 Record key Long int r_id
2 Function value Float voltage_drop
3 Time ms Double sample_time
4 Sample description Char sample_desc [50]
End of field Unicode (U 0x002C)
End of record Unicode (U 0x003B)

El nombre de las variables se utilizarán en el programa que lee los registros


por lo que sólo debe considerarse las variables involucradas y sus
respectivos separadores.
b) En el caso que el CI N° 2 no pueda habilitarse debido a un desperfecto en
la línea de selección, ¿qué cantidad de registros se verían afectados?
5. Dibuje una memoria con direccionamiento 3D. Si el direccionamiento usa la parte alta
para ubicar 16 capas y cada capa posee 1024 registros de 256 Celdas de 32 bits c/u.
Se desea saber:
a) ¿Cuántas direcciones se necesitan para acceder a cada celda de 32
bits?
b) ¿En caso de direccionar bytes, qué líneas de direcciones se destinan a tal
fin?
c) Si el mapa de memoria que representa el espacio de almacenamiento es el
estándar, de un byte de ancho, ¿Qué líneas de dirección asignaría a la

14
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

memoria y cuales omitiría?


d) Especifique las lineas del CI y las líneas de memoria del mapa
6. Construir un mapa de memoria a partir de la dirección (00100 h) de ancho 8 bits y
almacenar en forma consecutiva los siguientes números ordenados según el mandato de
almacenamiento B (Big endian) o L (Little endian). Expresar la cantidad de bytes
ocupados en hexadecimal y guardarlo como Big endian en la mínima cantidad de
memoria posible al final de la lista. Cada posición de memoria utilizada debe tener su
dirección expresada en hexadecimal.
0x12, B
0x34, L
0x3467, B
0xA1BC, B
0xB342, L
0xA543DF8A, L
0xCDEB1234, B
7. Una memoria transfiere páginas de 1K y posee 1MB, su bus de datos es de 8 bits. Se
desea separar los bits de dirección en dos partes; uno para direccionar la página y los
restantes para direccionar los bytes dentro de la página. ¿Cuántas líneas de dirección
totales se necesitan, cuántas para páginas y cuántas para bytes en la página?
8. Considere una memoria RAM dinámica a la que deba darse un ciclo de refresco 64 veces
por milisegundo. Cada operación de refresco requiere 150ns. Un ciclo de memoria
requiere 250ns. ¿Cuál es el tiempo total de funcionamiento de la memoria que se pierde
debido a los refrescos?
9. Teniendo un bus que funciona a 300Mhz y tiene 32 bits de ancho. Suponga que el 25%
del ancho de banda del Bus se desperdicia debido al arbitraje y otras cabeceras de
control, ¿Cuál es el ancho de banda neto del Bus disponible para otros dispositivos de
I/O si el CPU utiliza 512 MB/s?
10. Suponiendo que se posee un disco SATA 1 que transfiere a un máximo de 1,5Gb/s y que
el rendimiento del Bus es de 80%. ¿Cuánto tardará en transferirse al disco un archivo de
150 MB.?
11. Si un bus sincrónico tiene un ciclo de acceso a memoria de 4 ciclos de clock, calcule, ¿A
qué frecuencia de clock opera el bus si se tardaron 6.5 ms en transferir la cantidad de
1,5 MB de datos? (considere que el ancho del bus de datos es de 16 bits).

15
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO Nº5


EJERCICIOS SOBRE ASSEMBLER x86
_________________________________________________________________________
Objetivos:
• Familiarizar al alumno con el uso de lenguaje assembler.
• Relacionar la ubicación de los códigos de operación con las posiciones de memoria.
• Comprender la relación entre en contenido de la memoria y el programa en ejecución.
_______________________________________________________________________
Desarrollo del Trabajo Práctico:
1. Dado el siguiente programa:
Columna 1 Columna 2 Columna 3
14D3:7A10 B9 D0 07 MOV CX,7D0h
14D3:7A13 B8 00 B8 MOV AX,0B800h
14D3:7A16 8E D8 MOV DS,AX
14D3:7A18 BB 00 00 MOV BX,0
14D3:7A1B C6 07 20 MOV BYTE PTR [BX],32
14D3:7A1E 43 INC BX
14D3:7A1F 43 INC BX
14D3:7A20 49 DEC CX
14D3:7A21 75 F8 JNZ -8
Indicar:
a) ¿Cuál es el significado de la columna uno?
b) ¿En qué lenguaje de programación está escrito el contenido de la columna
dos?
c) ¿En qué lenguaje de programación está escrito el contenido de la columna
3?
d) ¿Cuántas instrucciones de tres bytes hay y cuáles son?
e) ¿Cuántas instrucciones de dos bytes hay y cuáles son?
f) ¿Cuántas instrucciones de un byte hay y cuáles son?
g) ¿Cuántos bytes ocupa el programa?
h) ¿Cuál es el byte que se halla en la posición absoluta de memoria
11655510?, ¿pertenece a un código de operación o a una dato?
i) ¿Cuál son las direcciones absolutas de memoria de inicio y de fin del
programa? (expresarlas en decimal, hexadecimal y binario).
j) Completar la siguiente tabla, con el contenido en binario de cada posición
de memoria:

16
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Dirección Dirección Contenido


Base 10 Base 16 b7 b6 b5 b4 b3 b2 b1 b0

2. El contenido de la posición de memoria 0200 tiene un dato de 8 bits. Realizar un


programa con su correspondiente diagrama de flujo, que coloque en la posición de
memoria 0201 el nibble más significativo del dato, tomando en cuenta que el nibble
menos significativo debe ser 0.
3. El “Debug” es un programa que viene con los SO’s de Microsoft® de hasta 32bits,
a) Realizar una breve descripción de su utilidad.
b) Enumerar cada uno de los comandos que posee.
c) Detallar la función y los resultados de la ejecución de los comandos.
d) Indicar cual es la correlación entre la palabra de estado y la información
reportada por en pantalla por el debug cuando se ejecuta el comando “r”.
e) Calcular las direcciones absolutas de los segmentos de memoria utilizados
y la de sus punteros asociados. (realizar un mapa de la memoria usada).
4. ¿Cuál es el procedimiento que permite pasar de lenguaje Assembler a lenguaje de
máquina?
5. ¿En qué código se encuentra escrito el lenguaje de máquina y en qué código se
presenta para visualización?

17
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

TRABAJO PRÁCTICO Nº6


Modelo básico de computador basado en microprocesador
_________________________________________________________________________
Objetivos:
• Relacionar los módulos básicos de un computador.
• Dimensionar los buses, ver su relación con los registros para operaciones y direccionamiento.
• Establecer el origen y el destino de las señales que por ellos circulen.
• Introducción a las señales de control de lecto-escritura, reinicio, interrupción y reloj.
_______________________________________________________________________
Introducción de contexto:

Nuestro modelo de computadora posee la siguiente descripción:

Registros Uso general A, B opcional O


Condición y banderas CR Flags N Z V C E
Contador de programa PC
Puntero de pila SP
Índice IX

Registros Interfaz de microprocesador:

Datos de Memoria MDR (No admiten programación).


Direcciones de Memoria MAR (No admite programación).
Control CTL (Varias señales entrantes y salientes).

A, B, (General Purpose Registers) Operaciones aritmético lógicas, Contadores, Resguardos…


O (Out Register o Acumulador) En el modelo almacena los resultados de las operaciones de la UAL.
CR (Condition Register o PSW Program Status Word)
N Flag de signo del resultado de una operación UAL.
Z Flag de cero del resultado de una operación UAL.
V Flag de Overflow o desborde con pérdida de información.
C Flag de Acarreo o desborde de suma sin pérdida de información.
E Flag de error en la operación, Paridad, Instrucción no valida etc…
PC (Program Counter) Puntero a la dirección de memoria asociada a la instrucción en ejecución.
SP (Stack Pointer) Apunta a una dirección de memoria donde se apilaran los registros.
IX (Registro Indice) Puntero, direccionamiento indirecto. Otras funciones; contador auxiliar, resguardo.

Registros de interfaz no programables

MDR (Memory Data Register).


MAR (Memory Address Register).

Módulos del Modelo

UCP Unidad Central de Proceso (CPU Central Processing Unit).


UC Unidad de Control (CU Control Unit).
UAL Unidad Aritmético Lógica (ALU Arithmetic Logic Unit).

RAM Memoria principal de lecto-escritura “Memoria de acceso aleatorio (Random Access Memory)”.
ROM Memoria de lectura solamente (Read Only Memory).
E/S Canal de Entrada-Salida (I/O Input / Output Channel).

18
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Desarrollo del Trabajo Práctico:


Datos del problema:
El tamaño de palabra o líneas del bus de datos: 16 bits.
El tamaño del espacio de direcciones o las líneas del bus de direcciones: 16MB.
Tamaño y posición de la memoria RAM (Tamaño dado, al comienzo del mapa): 7MB.
Tamaño y posición de la memoria ROM (Tamaño dado al final del mapa): 256KB.
Tamaño y posición del mapa de E/S. (Tamaño dado a partir de la mitad del mapa): 2MB.

Manejo de nombres de las líneas y subíndices:


Direcciones: A0… An
Datos: D0… Dn
Control: Según definición.
Alimentación: Según definición.

Con los datos suministrados calcular los subíndices, nombre de las señales relacionadas con direcciones y
datos.
Representar el sentido de las señales del bus y la cantidad de líneas calculadas. Especialmente en los
espacios de direcciones RAM, ROM y E/S, relacionarlos con los tamaños asignados en el problema.
Calcular los valores de direcciones pedidos en el mapa.
Representar en que zona operan los registros SP y los vectores IRQ y Reset.
Distribuir e indicar el sentido de la señal R/W. (En el modelo se indica su acción en ROM de lectura
solamente por una razón de sincronismo, puede no representarse)
Las señales de alimentación V2 y V3 se agregan al módulo de E/S para alimentar por ejemplo las
comunicaciones (RS-232, etc.). Mientras que V1 y retorno (GND) van a los cuatro módulos representados.

Completar el gráfico con los datos asignados indicando: los buses, cantidad de líneas y subíndices

Palabra del Procesador (Processor Word): ………………………


Tamaño del bus de datos (D Bus Size): …………………………
Espacio de direcciones (Address Space): …………...................
Tamaño del bus de direcciones (A Bus Size): …...................

Representar el origen, destino y sentido de las líneas del bus de control (R/W, RESET, IRQ, CLK).

Lectoescritura R read (1), W no-write (0).


Reinicio RESET
Pedido de Interrupción IRQ (Interrupt Request)
Reloj CLK (Clock)

Representar el bus de alimentación con V1, V2, -V3 y GND, indicando cuales llegan a cada módulo.
Tensiones de alimentación (Vx Voltage Supply)
Retorno de alimentación o tierra (GND Ground)

19
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

20
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Completar el siguiente mapa de memoria con los siguientes datos asignados:

• Representando la memoria RAM disponible: en la parte baja.


• Representando la ROM disponible: en la parte Alta.
• El espacio de E/S: comienza en el medio del mapa y avanza hacia la parte alta.
• Posicionar los vectores: SP, RESET e IRQ.

Tamaño de:
RAM (base 10)…………….. Bytes: ………..…..… Palabras: …………..….

Tamaño de:
ROM (base 10)…………….. Bytes: ………....…… Palabras: …….…….….

Espacio de:
E/S (base 10)………………. Bytes: ………....…… Palabras: .………….….

Dirección del Puntero de pila (base 16): .……………………...............................

Dirección de Vector de arranque o RESET (base 16): …...………………………

Dirección de Vector de interrupción (base 16): .…………………...……………...

Nota: (base 10) expresado en decimal, (base 16) expresado en hexadecimal.

21
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Dirección Alta

22
ARQUITECTURA DE COMPUTADORES (3.4.072)
2017 - Guía de Trabajos Prácticos

Aclaraciones para la resolución:

Objetivo detallado:

Práctica sobre un modelo elemental de procesador dentro de un esquema de computador simple


interconectado por “buses” (Datos, Direcciones, Control y Alimentación).

UAL (ALU)
Asociar el tamaño de palabra con las líneas del bus de datos y los registros de la UAL.
Concepto de Registro de condición y las principales banderas.

Memoria
Asociar el espacio de direcciones con las líneas del bus de direcciones y los registros de direccionamiento.
Concepto de puntero IX e IY, SP, PC,
Representación del espacio de memoria en un mapa asociado.
El “byte” como unidad de medida para cuantificar un espacio de almacenamiento.
Representación del almacenamiento de palabras de más de un “byte” en el mapa.
Manejo de nombres de las líneas y subíndices.

Control
Concepto de vectores asociados a una acción del hardware. IRQ y Reset.
Relación con SP y concepto de pila.
Sincronismo, las señales de Reloj.
Señal de lecto-escritura.

Alimentación
Concepto de alimentación de los dispositivos.
Representación de las líneas de alimentación y distribución de energía.
En el modelo se asignaron tres tensiones y un retorno del circuito o GND.

Restricciones del modelo empleado


No contempla cola de pre búsqueda de instrucciones.
No contempla multiplexado de los buses.
No se representan los módulos decodificadores de direcciones ni señales de habilitación.
Las tensiones de alimentación y la señal de Reset ingresan al bus desde otros módulos no representados.

23

También podría gustarte