You are on page 1of 36

Soluciones a los

problemas impares

Tema 5. Memorias

Estructura de
Computadores

I. T. Informtica de Gestin / Sistemas

Curso 2008-2009
Tema 5 Hoja: 2 / 36
Memorias

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 3 / 36
Memorias

Base terica
La memoria es el lugar en el que se almacenan las instrucciones y los
datos para que se puedan ejecutar los programas. Sin embargo, el sistema
de memoria del computador est formado por varios tipos de memorias
con diferentes capacidades y tiempos de acceso. La idea es que parezca
que las referencias a memoria se sirven a velocidades cercanas a las de
los registros del procesador, y que adems se tiene un espacio de
memoria casi ilimitado para los programas y los datos. La memoria cach
es la responsable de la rapidez de los accesos y la memoria virtual la de la
gran capacidad del sistema de memoria.

Para que todo el sistema funcione, se disea de manera jerrquica, por el


que los diferentes bloques de informacin se van moviendo

Capacidad CP
Tiempo de U
Precio
acceso por bit

nivel 1 CACHE

nivel 2 MEMORIA PRINCIPAL

nivel 3 DISCOS / CDs / DVDs

nivel 4 UNIDADES DE CINTA

Figura 1: jerarqua de memoria

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 4 / 36
Memorias

Memoria principal

Centrndose en la memoria principal, se distinguen dos grupos de


memorias:

Memorias de las que solamente se puede leer (ROM)

Memorias en las que se puede leer y escribir (RAM)

La capacidad de la memoria principal se mide en cuantos bytes o palabras


es capaz de almacenar. La manera habitual es indicar nnK x mm en el que
nn son el nmero de direcciones que tiene la memoria con capacidad para
poder almacenar mm bits en cada una.

La capacidad de memoria viene dada por el bus de direcciones que


establece el mximo nmero de posiciones direccionables por el
computador. Si se tienen n bits para el bus de direcciones, se podr
acceder hasta un mximo de 2n posiciones.

Independientemente de cuanta memoria sea capaz de direccionar, los


computadores no los entregan con el mximo de memoria disponible, por
lo que habr que definir como se accede a las posiciones ocupadas y a las
que no estn disponibles. Esa informacin se encuentra en el mapa de
memoria del computador.

m bits 0
Memoria Mapa
Direccin Disponible usado
m-1 0 2k-1 Mapa
total

2m-1

Figura 2: esquema de memoria de un computador.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 5 / 36
Memorias

Las medidas ms empleadas para la capacidad de memoria son:

Kilobyte (KB) = 210 bytes

Megabyte (MB) = 220 bytes

Gigabyte (GB) = 230 bytes

Terabyte (TB) = 240 bytes

Aumento de la memoria en nmero de direcciones

Si se desea una memoria de 16Kx8 a partir de mdulos de memoria de


8Kx8 para un procesador con un bus de direcciones de 14 bits, se tendr
que definir cuando se accede a un mdulo o al otro.

Figura 3. Esquema de memoria solicitado

Lo primero es ver si podemos direccionar 16K con 14 bits. Para ello, se


sabe que 16K = 214 con lo que si se pueden direccionar los 16K.

Para calcular cuantos mdulos hacen falta, en este caso es muy sencillo y
se ve a simple vista, se realiza la operacin siguiente:

16k 8
x = 2 x1 = 2 mdulos de 8kx8
8k 8

De la ecuacin anterior se desprende que se necesitan dos mdulos, tal y


como reflejaba la figura 3.

Ahora se tiene que ver cuando se accede a un mdulo o al otro. Ya que los
dos mdulos son de 8K, se necesitarn 13 bits del bus de direcciones para
poder direccionar en cada mdulo esos 8K (=213). De esa forma, nos
queda nicamente un bit para determinar cuando se accede al mdulo
cero o al mdulo uno.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 6 / 36
Memorias

La informacin de cmo acceder a los mdulos se da en el mapa de


memoria, tal y como muestra la tabla siguiente:

Tabla 1: mapa de memoria de 16Kx8 a partir de dos mdulos de 8Kx8

El esquema de memoria quedara:

Figura 4 .Esquema de memoria de 16Kx8 a partir de dos mdulos de 8Kx8

Aumento de la memoria en el ancho de palabra

Si se desea una memoria de 16Kx16 a partir de mdulos de memoria de


16Kx8 para un procesador con un bus de direcciones de 14 bits, se tendr
que definir cuando se accede a un mdulo o al otro y cuantos mdulos
harn falta.

16k 16
x = 1x 2 = 2 mdulos de 16kx8
16k 8

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 7 / 36
Memorias

En este caso, se deber acceder a los dos mdulos a la vez, dado que en
un mdulo se almacenarn los 8 bits superiores y en el otro los 8 bits de
menor peso. El esquema quedara de la forma:

1.

2.

3.

4.

Figura 4 .Esquema de memoria de 16Kx16 con de dos mdulos de 16Kx8

Tambin es posible aumentar el tamao de palabra y el nmero de


posiciones de la memoria combinando los dos esquemas anteriores.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 8 / 36
Memorias

1. Una CPU cuenta con un ancho de palabra de 16 bits. Se quiere dotar a


esa CPU de una memoria con las siguientes caractersticas:

256 Kpalabras (256 K x 16) de memoria ROM.

512 Kpalabras (512 K x 16) de memoria RAM.

Disear la memoria con el menor nmero de pastillas, sabiendo que


disponemos de las siguientes y que deseamos que la RAM ocupe las
posiciones ms bajas del mapa de memoria, seguida de la ROM:

Pastillas de memoria ROM Pastillas de memoria RAM

64 K x 8 128 K x 1

128 K x 1 256 K x 8

128 K x 8

2. Una CPU cuenta con un ancho de palabra de 16 bits. Se quiere dotar a


esa CPU de una memoria con las siguientes caractersticas:

512 Kpalabras (512 K x 16) de memoria ROM.

256 Kpalabras (256 K x 16) de memoria RAM.

Disear la memoria con el menor nmero de pastillas, sabiendo que


disponemos de las siguientes y que deseamos que la RAM ocupe las
posiciones ms bajas del mapa de memoria, seguida de la ROM:

Pastillas de memoria ROM Pastillas de memoria RAM

64 K x 8 128 K x 1

128 K x 1 256 K x 8

128 K x 8

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 9 / 36
Memorias

3. La CPU de la figura cuenta con un bus de datos de 16 bits y un bus de


direcciones de 20 bits.

Se quiere disear un computador con una memoria principal de las


siguientes caractersticas:

256 Kpalabras (256 K x 16) de memoria ROM.

512 Kpalabras (512 K x 16) de memoria RAM.

La memoria ROM debe situarse en las posiciones ms altas del mapa de


memoria direccionable y la memoria RAM debe situarse en las posiciones
ms bajas.

Disear la memoria con el menor nmero de pastillas sabiendo que


disponemos de las siguientes:

Pastillas de memoria ROM Pastillas de memoria RAM

64 K x 8 128 K x 1

128 K x 1 256 K x 8

128 K x 16 256 K x 16

4. Realiza el mismo ejercicio que en el caso anterior pero suponiendo que


la RAM ocupa las posiciones ms altas del mapa de memoria y la ROM
las ms bajas.

5. La CPU de la figura se conecta al bus de datos con 16 bits, adems, el


bus de direcciones cuenta con 20 bits. Se quiere dotar a esa CPU de
una memoria, sin multiplexacin de buses, con las siguientes
caractersticas:

128 Kpalabras (128K x 16) de memoria ROM.

640 Kpalabras (640K x 16) de memoria RAM.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 10 / 36
Memorias

A19-A0
CPU

D15-D0

La memoria ROM debe situarse en las posiciones ms altas del mapa


de memoria direccionable y la memoria RAM debe situarse en las
posiciones ms bajas.

Disear la memoria con el menor nmero de pastillas sabiendo que


disponemos de:

Pastillas de memoria ROM Pastillas de memoria RAM

64 k x 8 128 k x 1

128 k x 1 256 k x 8

128 k x 16 256 k x 16

6. Realiza el mismo ejercicio que en el caso anterior pero suponiendo que


la RAM ocupa las posiciones ms altas del mapa de memoria y la ROM
las ms bajas.

7. Una CPU se conecta al bus de datos con 16 bits, adems, su bus de


direcciones cuenta con 20 bits. Se quiere dotar a esa CPU de una
memoria con las siguientes caractersticas:

640 Kpalabras x 16 de memoria ROM.

384 Kpalabras x 16 de memoria RAM.

La memoria ROM debe situarse en las posiciones ms altas del mapa de


memoria direccionable y la memoria RAM debe situarse en las posiciones
ms bajas.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 11 / 36
Memorias

Disear la memoria con el menor nmero de pastillas sabiendo que


disponemos de:

Pastillas de memoria RAM Pastillas de memoria ROM

64 k x 1 32 k x 1

128 k x 8 64 k x 1

512 k x 8 128 k x 8

8. Realiza el mismo ejercicio que en el caso anterior pero suponiendo que


la RAM ocupa las posiciones ms altas del mapa de memoria y la ROM
las ms bajas.

9. Se dispone de un PC en el cual el bus de direcciones tiene 32 bits y el


ancho de palabra es de 64 bits.

El mapa de memoria de este PC tiene dos secciones:

El rea conocida como memoria convencional (los primeros 640 Kbytes


de memoria), utilizada principalmente por el sistema operativo y
programas residentes, y

El rea entre de memoria superior (situada a continuacin, hasta


ocupar 1 Mbyte), reservada para adaptadores hardware y la ROM
BIOS, entre otros.

Los primeros 1024 Kbytes de este computador (128 Kpalabras x 64 bits) se


distribuyen de la siguiente manera:

640 Kbytes de memoria RAM (80 Kpalabras x 64 bits)

384 Kbytes de memoria ROM (48 Kpalabras x 64 bits)

Sabiendo que se dispone de mdulos de memoria de las siguientes


caractersticas:

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 12 / 36
Memorias

Mdulos RAM Mdulos ROM

2 Kpalabras x 16 16 Kpalabras x 8

32 Kpalabras x 32 16 Kpalabras x 16

64 Kpalabras x 16 64 Kpalabras x 1

Se pide:

a. Se podra disear un mapa de memoria con el tipo de pastillas


disponibles? En el caso de que no sea posible, proponga otra
opcin.

b. Indicar cuntos mdulos de memoria y de qu caractersticas


seran necesarios para disear el mapa de memoria, utilizando el
menor nmero de pastillas posible.

c. Realizar el diseo del mapa de memoria del modo que indica la


siguiente figura.

0
Mapa de memoria RAM

80K-1
80K
Mapa de memoria ROM

128K-1

d. Dibujar el esquema del mapa de memoria resultante

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 13 / 36
Memorias

10. Realizar el mismo ejercicio que en el caso anterior suponiendo que los
mdulos que se disponen son los siguientes:

Mdulos RAM Mdulos ROM

4 Kpalabras x 16 8 Kpalabras x 32

32 Kpalabras x 16 64 Kpalabras x 8

8 Kpalabras x 16 4 Kpalabras x 1

11. Se quiere disear una memoria para un circuito electrnico que se


adaptar a una tarjeta de felicitacin de cumpleaos de forma que al
abrirla suene la meloda del cumpleaos feliz. El archivo de sonido es
de tipo WAV y ocupa 384 K y el programa que reproducir la meloda
ocupar, como mximo, 128 K.

Adems se tienen que tener en cuenta los siguientes puntos:

El cliente puede pedir que el fichero de sonido sea en formato MP3 192
K con lo que el programa ocupar un mximo de 320 K. Dado que no
existirn diferentes tarjetas de felicitacin se deber cambiar el
contenido de la memoria.

Se podr cambiar las bateras sin que se pierda la informacin de las


memorias.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 14 / 36
Memorias

Se sabe que el bus de datos es de 16 bits y el de direcciones de 20 bits y


que se cuenta con los siguientes mdulos de memoria disponibles para
realizar el circuito:

Memoria ROM Memoria EEPROM Memoria RAM

128 K x 8 128 K x 8
128 K x 8
256 K x 8 256 K x 8 256 K x 8

512 K x 8 512 K x 8 512 K x 16

a. Razonar brevemente el tipo de mdulos de memoria que se


debern emplear para realizar el circuito con las especificaciones
requeridas.

b. Calcular el menor nmero de mdulos necesario para realizar las


especificaciones anteriores.

c. Realizar el mapa de memoria con una capacidad mxima para


almacenar el fichero de sonido (WAV o MP3) y el programa
correspondiente.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 15 / 36
Memorias

Solucin ejercicio 1
1. Comprobar que existe solucin
Para poder comprobarlo, debemos fijarnos en el nmero de bits que
tenemos en el bus de direcciones, y ver que con ese nmero de bits,
podemos direccionar todo el mapa de memoria.

El bus de direcciones tiene 20 lneas, desde la A19 hasta la A0, lo que


supone una capacidad de direccionamiento de 220 palabras = 1 Mpalabras.
En el caso que nos ocupa, necesitamos direccionar 512 Kpalabras de
memoria RAM y 256 Kpalabras de memoria ROM, en total 768 Kpalabras.
Por lo tanto, vemos que con los 20 bits del bus de direcciones s se puede
direccionar la memoria que se nos pide.

Por otro lado, tenemos que comprobar que el bus de datos soporte el
ancho de una palabra de memoria (16 bits). Por tanto, vamos a suponer
que el bus de datos cuenta con 16 lneas, desde la D15 hasta la D0.

2. Calcular los mdulos de memoria que sern necesarios


Para la memoria RAM, disponemos de los siguientes mdulos de memoria:

128 K x 1
512 K 16 bits
x = 4 x 16 = 64 pastillas de 128 K x 1
128 K 1 bit
Con esta posibilidad se necesitaran 4 filas de mdulos de 128 K
posiciones de memoria (para poder direccionar las 512 K posiciones de
memoria) y 16 mdulos por cada una de las filas para almacenar los 16
bits que componen una palabra.

Con lo cual, el mapa de memoria RAM resultante contara con 4 x 16 = 64


pastillas de 128 K x 1.

256 K x 8
512 K 16 bits
x = 2 x 2 = 4 pastillas de 256 K x 8
256 K 8 bits

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 16 / 36
Memorias

Con esta posibilidad se necesitaran 2 filas de mdulos de 256 K


posiciones de memoria (para poder direccionar las 512 K posiciones de
memoria) y 2 mdulos por cada una de las filas para almacenar los 16 bits
que componen una palabra (en cada uno de los mdulos se almacenarn
los 8 bits que componen las partes alta y baja de una palabra).

Con lo cual, el mapa de memoria RAM resultante contara con 2 x 2 = 4


pastillas de 256 K x 8.

Para la memoria ROM, disponemos de los siguientes mdulos de memoria:

128 K x 1
256 K 16 bits
x = 2 x 16 = 32 pastillas de 128 K x 1
128 K 1 bit
64 K x 8
256 K 16 bits
x = 4 x 2 = 8 pastillas de 64 K x 8
64 K 8 bit
128 K x 8
256 K 16 bits
x = 2 x 2 = 4 pastillas de 128 K x 8
128 K 8 bits
La solucin ms sencilla es utilizar:

2 x 2 = 4 pastillas de 256 K x 8 para la memoria RAM

2 x 2 = 4 pastillas de 128 K x 8 para la memoria ROM

3. Disear el mapa de memoria


Para disear el mapa de memoria, supondremos que la memoria RAM
ocupa las posiciones ms bajas del mapa de memoria y que la memoria
ROM se encuentra a continuacin.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 17 / 36
Memorias

En la siguiente figura se muestra un esquema del mapa de memoria


resultante:

FFFFF h 1024 K 1
Libre
C0000 h 768 K
BFFFF h 768 K 1
ROM
80000 h 512 K
7FFFF h 512 K 1
RAM
00000 h 0

Finalmente, la distribucin del mapa de memoria resultante es la que


aparece en la siguiente figura:

A19 A18 A17 A16 A0


1024 K
FFFFF h 1 1 1
1 1 1 Libre
C0000 h 0 0 0
768 K
2 fila
BFFFF h 1 1 768 K 1
1 0 1 pastillas
A0000 h 0 0 640 K
ROM
1 fila
9FFFF h 1 1 640 K 1
1 0 0 pastillas
80000 h 0 0 512 K
ROM
7FFFF h 1 1 1 512 K 1 2 fila
0 1
40000 h 0 0 0 256 K pastillas RAM
3FFFF h 1 1 1 256 K 1 1 fila
0 0
00000 h 0 0 0 0 pastillas RAM

Para poder direccionar las 256 Kpalabras (= 218 Kpalabras) de cada una de
las pastillas de memoria RAM necesitaremos 18 bits, que se corresponden
con las lneas A17..A0 del bus de direcciones. Mientras que para poder
acceder a las 128 Kpalabras (= 217 Kpalabras) de cada una de las pastillas
de memoria ROM necesitaremos 17 bits, son las lneas A16..A0 del bus de
direcciones.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 18 / 36
Memorias

Las lneas A19 y A18 del bus de direcciones, nos permitirn seleccionar la
fila de pastillas sobre la que se realizar la lectura o escritura de los datos.

Por otro lado, la primera pastilla de cada fila del mapa de memoria
almacenar la parte alta de una palabra y la segunda la parte alta.

4. Dibujar el esquema del mapa de memoria

Utilizando un decodificador de 3 entradas, lneas A19 .. A17.

Debemos considerar que en el esquema falta una lnea de lectura


conectada a todas las pastillas de memoria RAM y ROM y una lnea de
escritura conectada a todas las pastillas de memoria RAM.

Se utiliza un decodificador de tres entradas (A19..A17) y dos puertas OR


para seleccionar las filas de pastillas de memoria RAM.

Las filas de memoria ROM se seleccionan con las salidas del decodificador
101 y 100.

Bus
Busde
dedirecciones
direccionesAA1919..A
..A00

A19..A17

A16..A0 CS AA16..A CS AA16..A


111
111 CS 16..A
00 CS 16..A
00

110
110 ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
101
101
Decodific.
Decodific.100 DD15..D DD7..D
100 15..D88 7..D00
011
011
010
010
001
001
000
000 CS
CS AA16..A CS AA16..A
16..A
00 CS 16..A
00

ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
00
..D

DD15..D DD7..D
datosDD1515..D

15..D88 7..D00
de datos

CS
CS AA17..A CS AA17..A
A17..A0 17..A0 CS 17..A0
0 0
Busde

RAM
RAM256Kx8
256Kx8 RAM
RAM256Kx8
256Kx8
Bus

DD15..D DD7..D
15..D8 7..D0
8 0

CS
CS AA17..A CS AA17..A
17..A0 CS 17..A0
0 0

RAM
RAM256Kx8
256Kx8 RAM
RAM256Kx8
256Kx8
DD15..D DD7..D
15..D8 7..D0
8 0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 19 / 36
Memorias

Solucin ejercicio 3

1. Comprobar que existe solucin

El bus de direcciones tiene 20 lneas, desde la A19 hasta la A0, lo que


supone una capacidad de direccionamiento de 220 palabras = 1 Mpalabras.
En el caso que nos ocupa, necesitamos direccionar 512 Kpalabras de
memoria RAM y 256 Kpalabras de memoria ROM, en total 768 Kpalabras.
Por lo tanto, vemos que con los 20 bits del bus de direcciones s es
posible.

Por otro lado, una dato de memoria puede transmitirse por el bus de dato
puesto que cuenta con 16 lneas, desde la D15 hasta la D0.

2. Calcular los mdulos de memoria que sern necesarios

Para la memoria RAM, disponemos de los siguientes mdulos de memoria:

128 K x 1

512 K 16 bits
x = 4 x 16 = 64 pastillas de 128 K x 1
128 K 1 bit

256 K x 8

512 K 16 bits
x = 2 x 2 = 4 pastillas de 256 K x 8
256 K 8 bits

256 K x 16

512 K 16 bits
x = 2 x 1 = 2 pastillas de 256 K x 16
256 K 16 bits

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 20 / 36
Memorias

Para la memoria ROM, disponemos de los siguientes mdulos de memoria:

128 K x 1

256 K 16 bits
x = 2 x 16 = 32 pastillas de 128 K x 1
128 K 1 bit

64 K x 8

256 K 16 bits
x = 4 x 2 = 8 pastillas de 64 K x 8
64 K 8 bits

128 K x 16

256 K 16 bits
x = 2 x 1 = 2 pastillas de 128 K x 16
128 K 16 bits

2 x 1 = 2 pastillas de 256 K x 16 para la memoria RAM

2 x 1 = 2 pastillas de 128 K x 16 para la memoria ROM

3. Disear el mapa de memoria

En la siguiente figura se muestra un esquema del mapa de memoria


resultante:

FFFFF h 1024 K 1
ROM
C0000 h 768 K

BFFFF h 768 K 1
Libre
80000 h 512 K

7FFFF h 512 K 1
RAM
00000 h 0

La distribucin del mapa de memoria resultante es la que aparece a


continuacin:

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 21 / 36
Memorias

A19 A18 A17 A16 A0

2 fila
FFFFF h 1 1 1024 K 1
1 1 1 pastillas
E0000 h 0 0 896 K
ROM

1 fila
DFFFF h 1 1 896 K 1
1 1 0 pastillas
C0000 h 0 0 768 K
ROM

BFFFF h 1 1 1 768 K 1
1 0 Libre
80000 h 0 0 0 512 K

2 fila
7FFFF h 1 1 1 512 K 1
0 1 pastillas
40000 h 0 0 0 256 K
RAM

1 fila
3FFFF h 1 1 1 256 K 1
0 0 pastillas
00000 h 0 0 0 0
RAM

Para poder direccionar las 256 Kpalabras (= 218 Kpalabras) de cada una de
las pastillas de memoria RAM necesitaremos 18 bits, que se corresponden
con las lneas A17..A0 del bus de direcciones. Mientras que para poder
acceder a las 128 Kpalabras (= 217 Kpalabras) de cada una de las pastillas
de memoria ROM necesitaremos 17 bits, son las lneas A16..A0 del bus de
direcciones.

Las lneas A19 y A18 del bus de direcciones, nos permitirn seleccionar la
fila de pastillas sobre la que se realizar la lectura o escritura de los datos.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 22 / 36
Memorias

4. Dibujar el esquema del mapa de memoria

Utilizando un decodificador de 2 entradas, lneas A19 .. A18 debemos


considerar que faltara aadir una lnea de lectura conectada a todas las
pastillas de memoria RAM y ROM y una lnea de escritura conectada a
todas las pastillas de memoria RAM.

Bus
Busde
dedirecciones
direccionesAA1919..A
..A00

A19 , A18

CS
CS AA16..A
11 16..A
00
11
ROM
ROM128Kx16
128Kx16
10
10 A17
Decodificador DD15..D
Decodificador 15..D00
01
01 A16..A0

00
00
CS
CS AA16..A
16..A
00

ROM
ROM128Kx16
128Kx16

00
..D
DD15..D

datosDD1515..D
15..D00

de datos
CS
CS AA17..A
A17..A0 17..A
00
Busde

RAM
RAM256Kx16
256Kx16
Bus

DD15..D
15..D0
0

CS
CS AA17..A
17..A
00

RAM
RAM256Kx16
256Kx16
DD15..D
15..D00

Solucin ejercicio 5
1. Comprobar que existe solucin

El bus de direcciones tiene 20 lneas, desde la A19 hasta la A0, lo que


supone una capacidad de direccionamiento de 220 palabras = 1 Mpalabras.
En el caso que nos ocupa, necesitamos direccionar 640 Kpalabras de
memoria RAM y 128 Kpalabras de memoria ROM, en total 768 Kpalabras.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 23 / 36
Memorias

Por lo tanto, vemos que con los 20 bits del bus de direcciones s es
posible.

2. Calcular los mdulos de memoria que sern necesarios

Para la memoria RAM, disponemos de los siguientes mdulos de memoria:

128 K x 1

640 K 16 bits
x = 5 x 16 = 80 pastillas de 128 K x 1
128 K 1 bit

256 K x 8

640 K 16 bits
x = 3 x 2 = 6 pastillas de 256 K x 8
256 K 8 bits

256 K x 16

640 K 16 bits
x = 3 x 1 = 3 pastillas de 256 K x 16
256 K 16 bits

Para la memoria ROM, disponemos de los siguientes mdulos de memoria:

128 K x 1

128 K 16 bits
x = 1 x 16 = 16 pastillas de 128 K x 1
128 K 1 bit

64 K x 8

128 K 16 bits
x = 2 x 2 = 4 pastillas de 64 K x 8
64 K 8 bits

128 K x 16

128 K 16 bits
x = 1 x 1 = 1 pastilla de 128 K x 16
128 K 16 bits

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 24 / 36
Memorias

3 x 1 = 3 pastillas de 256 K x 16 para la memoria RAM

1 x 1 = 1 pastilla de 128 K x 16 para la memoria ROM

3. Disear el mapa de memoria

FFFFF h 1024 K 1
ROM
E0000 h 896 K

DFFFF h 896 K 1
Libre
A0000 h 640 K

9FFFF h 640 K 1
RAM
00000 h 0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 25 / 36
Memorias

A19 A18 A17 A16 A0

Fila
FFFFF h 1 1 1024 K 1
1 1 1 pastillas
E0000 h 0 0 896 K
ROM

DFFFF h 1 1 896 K 1
1 1 0
C0000 h 0 0 768 K Libre

BFFFF h 768 K 1
Zona de RAM no direccionable
A0000 h 640 K

3 fila
9FFFF h 0 1 1 640 K 1
1 0 pastillas
80000 h 0 0 0 512 K
RAM

2 fila
7FFFF h 1 1 1 512 K 1
0 1 pastillas
40000 h 0 0 0 256 K
RAM

1 fila
3FFFF h 1 1 1 256 K 1
0 0 pastillas
00000 h 0 0 0 0
RAM

Como puede observarse en el mapa de memoria, la tercera fila de pastillas


de memoria RAM no se utiliza de manera completa.

Para poder direccionar las 256 Kpalabras (= 218 Kpalabras) de cada una de
las pastillas de memoria RAM necesitaremos 18 bits, que se corresponden
con las lneas A17..A0 del bus de direcciones. Mientras que para poder
acceder a las 128 Kpalabras (= 217 Kpalabras) de cada una de las pastillas
de memoria ROM necesitaremos 17 bits, son las lneas A16..A0 del bus de
direcciones.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 26 / 36
Memorias

Las lneas A19 y A18 del bus de direcciones, nos permitirn seleccionar la
fila de pastillas sobre la que se realizar la lectura o escritura de los datos.

4. Dibujar el esquema del mapa de memoria

En la siguiente figura se muestra el esquema correspondiente a utilizar un


decodificador de 2 entradas, lneas A19 .. A18.. Debemos considerar que
faltara aadir una lnea de lectura conectada a todas las pastillas de
memoria RAM y ROM y una lnea de escritura conectada a todas las
pastillas de memoria RAM.

Bus
Busde
dedirecciones
direccionesAA1919..A
..A00
A16..A0
A19 , A18

CS
CS AA16..A
11
11 16..A
00

ROM
ROM128Kx16
128Kx16
10
10 A17
Decodificador DD15..D
Decodificador 15..D00
01
01

00
00
CS
CS AA17..A
17..A0
0

RAM
RAM256Kx16
256Kx16 00
..D

DD15..D
datosDD1515..D

15..D0
0
de datos

CS
CS AA17..A
A17..A0 17..A
00
Busde

RAM
RAM256Kx16
256Kx16
Bus

DD15..D
15..D00

CS
CS AA17..A
17..A
00

RAM
RAM256Kx16
256Kx16
DD15..D
15..D00

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 27 / 36
Memorias

Solucin ejercicio 7
1. Comprobar que existe solucin

El bus de direcciones tiene 20 lneas, desde la A19 hasta la A0, lo que


supone una capacidad de direccionamiento de 220 palabras = 1 Mpalabras.
En el caso que nos ocupa, necesitamos direccionar 640 Kpalabras de
memoria ROM y 384 Kpalabras de memoria RAM, en total 1024 Kpalabras.
Por lo tanto, vemos que con los 20 bits del bus de direcciones s se puede
direccionar la memoria que se nos pide.

2. Calcular los mdulos de memoria que sern necesarios

Para la memoria RAM, disponemos de los siguientes mdulos de memoria:

64 K x 1

384 K 16 bits
x = 6 x 16 = 96 pastillas de 64 K x 1
64 K 1 bit

512 K x 8

384 K 16 bits
x = 1 x 2 = 2 pastillas de 512 K x 8
512 K 8 bits

128 K x 8

384 K 16 bits
x = 3 x 2 = 6 pastillas de 128 K x 8
128 K 8 bits

Para la memoria ROM, disponemos de los siguientes mdulos de memoria:

32 K x 1

640 K 16 bits
x = 20 x 16 = 320 pastillas de 32 K x 1
32 K 1 bit

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 28 / 36
Memorias

64 K x 1

640 K 16 bits
x = 10 x 16 = 160 pastillas de 64 K x 1
64 K 1 bit

128 K x 8

640 K 16 bits
x = 5 x 2 = 10 pastillas de 128 K x 8
128 K 8 bits

La solucin ms sencilla es utilizar:

1 x 2 = 2 pastillas de 512 K x 8 para la memoria RAM

5 x 2 = 10 pastillas de 128 K x 8 para la memoria ROM

3. Disear el mapa de memoria

En las siguientes figuras se muestra un esquema del mapa de memoria


resultante:

FFFFF h 1024 K 1
ROM
60000 h 384 K

5FFFF h 384 K 1
RAM
00000 h 0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 29 / 36
Memorias

A19 A18 A17 A16 A0

5 fila
FFFFF h 1 1 1024 K 1
1 1 1 pastillas
E0000 h 0 0 896 K
ROM

4 fila
DFFFF h 1 1 896 K 1
1 1 0 pastillas
C0000 h 0 0 768 K
ROM

3 fila
BFFFF h 1 1 768 K 1
1 0 1 pastillas
A0000 h 0 0 640 K
ROM

2 fila
9FFFF h 1 1 640 K 1
1 0 0 pastillas
80000 h 0 0 512 K
ROM

1 fila
7FFFF h 1 1 512 K 1
0 1 1 pastillas
60000 h 0 0 384 K
ROM

Zona de RAM no direccionable


Fila pastillas
5FFFF h 1 0 1 1 384 K 1
0 RAM
00000 h 0 X 0 0 0

Como puede observarse en el mapa de memoria anterior, existe una zona


de las pastillas de memoria RAM que no va a poder utilizarse para
almacenar datos.

Para poder direccionar las 512 Kpalabras (= 219 Kpalabras) de cada una de
las pastillas de memoria RAM necesitaremos 19 bits, que se corresponden
con las lneas A18..A0 del bus de direcciones. Mientras que para poder
acceder a las 128 Kpalabras (= 217 Kpalabras) de cada una de las pastillas

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 30 / 36
Memorias

de memoria ROM necesitaremos 17 bits, son las lneas A16..A0 del bus de
direcciones.

Las lneas A19 y A18 del bus de direcciones, nos permitirn seleccionar la
fila de pastillas sobre la que se realizar la lectura o escritura de los datos.

Por otro lado, la primera pastilla de cada fila del mapa de memoria
almacenar la parte alta de una palabra y la segunda la parte alta.

4. Dibujar el esquema del mapa de memoria

El esquema de ste mapa de memoria admite diferentes soluciones, la


solucin elegida utiliza un decodificador de 3 entradas, lneas A19 .. A17, tal
y como se muestra en la siguiente figura.

Debemos considerar que en ambos esquemas falta una lnea de lectura


conectada a todas las pastillas de memoria RAM y ROM y una lnea de
escritura conectada a todas las pastillas de memoria RAM

Bus
Busde
dedirecciones
direccionesAA1919..A
..A00

A19..A17

A16..A0 CS AA16..A CS AA16..A


111
111 CS 16..A00 CS 16..A00
110
110 ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
101
101
Decodific.
Decodific.100 DD15..D DD7..D
100 15..D88 7..D00
011
011
010
010
001
001
000
000 CS
CS AA16..A CS AA16..A
16..A0 CS 16..A0
0 0

ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
DD15..D DD7..D
15..D88 7..D00

CS
CS AA16..A CS AA16..A
16..A00 CS 16..A00

ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
DD15..D DD7..D
00

15..D88 7..D00
..D
datosDD1515..D
de datos

CS
CS AA16..A CS AA16..A
16..A00 CS 16..A00
Busde

ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
Bus

A18..A0 DD15..D DD7..D


15..D88 7..D00

CS
CS AA16..A CS AA16..A
16..A00 CS 16..A00

ROM
ROM128Kx8
128Kx8 ROM
ROM128Kx8
128Kx8
DD15..D DD7..D
15..D88 7..D00

CS
CS AA18..A CS AA18..A
18..A00 CS 18..A00

RAM
RAM512Kx8
512Kx8 RAM
RAM512Kx8
512Kx8
DD15..D DD7..D
15..D8 7..D0
8 0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 31 / 36
Memorias

Solucin ejercicio 9
Apartado a)
El bus de direcciones tiene 32 lneas, lo cual permite direccionar hasta 232
= 4Gpalabras de memoria. En el caso propuesto se trata de realizar una
memoria de 128Kpalabras, para lo cual slo son necesarias 17 lneas, ya
que 217 = 128 Kpalabras.

Por otro lado, tambin hay que comprobar que el bus de datos proporciona
el ancho de palabra suficiente. El bus de datos tiene 64 bits de ancho de
palabra y la palabra de memoria es de 64 bits.

Por tanto, s, es posible disear dicho mapa de memoria.

Apartado b)

Para la memoria RAM, se dispone de los siguientes mdulos de memoria:

2 Kpalabras x 16

32 Kpalabras x 32

64 Kpalabras x 16

Realizando los siguientes clculos:

80 Kpalabras 64
x = 40 x 4 = 160 mdulos de memoria
2 Kpalabras 16
80 Kpalabras 64
x = 2,5 x 2 = 3 x 2 = 6 mdulos de memoria
32 Kpalabras 32
80 Kpalabras 64
x = 1,25 x 4 = 2 x 4 = 8 mdulos de memoria
64 Kpalabras 16

Para la memoria ROM, se dispone de los siguientes mdulos de memoria:

16 Kpalabras x 8

16 Kpalabras x 16

64 Kpalabras x 1

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 32 / 36
Memorias

Realizando los siguientes clculos:

48 Kpalabras 64
x = 3 x 8 = 24 mdulos de memoria
16 Kpalabras 8
48 Kpalabras 64
x = 3 x 4 = 12 mdulos de memoria
16 Kpalabras 16
48 Kpalabras 64
x = 0,75 x 64 = 1 x 64 = 64 mdulos de memoria
64 Kpalabras 1

Utilizando el menor nmero de mdulos posibles, el mapa de memoria


quedara definido por las siguientes pastillas de memoria:

6 RAM de 32 Kpalabras x 32, distribuidos en 3 filas y 2 columnas.

12 ROM de 16 Kpalabras x 16, distribuidos en 3 filas y 4 columnas.

Apartado c)
Para disear el mapa de memoria, es preciso averiguar el nmero de
lneas que se necesitan para direccionar cada pastilla de memoria:

Mdulos RAM de 32 Kpalabras x 32:

32 Kpalabras 2n para direccionar 32 Kpalabras se necesitan n=15 bits,


es decir, las lneas A0..A14, para cada una de las pastillas de memoria
RAM.

Las pastillas de la ltima fila de memoria RAM no se utilizarn


completamente, sino que slo ser preciso utilizar las primeras 16
Kpalabras de dichos mdulos de memoria.

Mdulos ROM de 16 Kpalabras x 16:

16 Kpalabras 2n para direccionar 16 Kpalabras se necesitan n=14 bits,


es decir, las lneas A0..A13, para cada una de las pastillas de memoria
ROM.

En este caso se utilizan completamente todos los mdulos de memoria.

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 33 / 36
Memorias

Adems, por el apartado a), sabemos que se necesitan 17 lneas para


direccionar el primer Mbyte del mapa de memoria propuesto. Por tanto, el
mapa de memoria queda de la siguiente manera:

A31 .. A17 A16 A15 A14 A13 ... A0

Mnima
0K
0 0 ... 0 direccin
0 ... 0 0 0
1 fila RAM
1 1 ... 1 Mxima
32 K-1
direccin
Mnima
32 K
0 0 ... 0 direccin
0 ... 0 0 1
2 fila de RAM
1 1 ... 1 Mxima
64 K-1
direccin
Mnima 64 K
0 0 ... 0 direccin
0 ... 0 1 0 3 fila de RAM
0 1 ... 1 Mxima
direccin 80 K-1
80K
Zona no direccionable de mdulos RAM
96 K-1
Mnima
80 K
0 ... 0 direccin
0 ... 0 1 0 1
1 fila de ROM
1 ... 1 Mxima
96 K-1
direccin
Mnima
96 K
0 ... 0 direccin
0 ... 0 1 1 0
2 fila de ROM
1 ... 1 Mxima
112 K-1
direccin
Mnima
112 K
0 ... 0 direccin
0 ... 0 1 1 1
3 fila de ROM
1 ... 1 Mxima
128 K-1
direccin

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 34 / 36
Memorias

Apartado d)

A continuacin se muestra un mapa de memoria simplificado, puesto que


se ha utilizado un solo decodificador, que permite seleccionar nicamente
la zona de memoria requerida en el problema. Adems, por simplicidad, se
han eliminado las lneas de lectura/escritura para la memoria RAM y la
lnea de lectura para la memoria ROM.

32 bits
Bus de direcciones: A31..A0
A14..A0 (15 bits)
A16..A14 (3 bits)
cs
cs AA14..A cs
14..A00 cs
AA14..A
14..A00
000
000 RAM
D RAM 32Kx32
32Kx32 RAM
RAM 32Kx32
32Kx32
e 001
001 D ..D D ..D
c D31
31..D00 D31
31..D00
o 010
010 D63..D32 D31..D0
d
i 011
011 A14..A0 (15 bits)
f
i 100
100
c cs AA14..A cs AA14..A
a 101
101 cs 14..A00 cs 14..A00
d RAM
RAM 32Kx32 RAM
RAM 32Kx32

64 bits
110
110 32Kx32 32Kx32
o D ..D D ..D
r 111 D31
31..D00 D31
31..D00
111
D63..D32 D31..D0
A14..A0 (15 bits)

cs
cs AA14..A cs
14..A00 cs
AA14..A
14..A00
RAM
RAM 32Kx32
32Kx32 RAM
RAM 32Kx32
32Kx32
DD31..D
31..D00
DD31..D
31..D00
D63..D32 D31..D0
Bus de datos: D63 ..D0

A13..A0 (14 bits)

cs
cs AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A
13..A00
ROM
ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
D63..D48 D47..D32 D31..D16 D15..D0

A13..A0 (14 bits)

cs
cs AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A
13..A00
ROM
ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
D63..D48 D47..D32 D31..D16 D15..D0

A13..A0 (14 bits)

cs
cs AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A cs
13..A00 cs
AA13..A
13..A00
ROM
ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16 ROM ROM 16Kx16
16Kx16
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
DD15..D
15..D00
D63..D48 D47..D32 D31..D16 D15..D0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 35 / 36
Memorias

Solucin ejercicio 11
Apartado a)

Dado que el contenido de la memoria se podr cambiar a peticin del


cliente y que el contenido de la memoria debe permanecer aunque se
cambie la pila, se necesitar una memoria permanente de tipo EEPROM.

Apartado b)

En los dos casos, las especificaciones de memoria, nos dan una necesidad
de 512K.

Como el bus de direcciones es de 20 bits que permite direccionar un


mximo de 1M x 16. podremos direccionar los 512K que nos piden
(solamente 19 bits A18-A0)

El menor nmero de mdulos de memoria, dado que tenemos que escoger


la opcin de mdulos EEPROM se da con dos mdulos de 512K x 8 (tipo
EEPROM)

Apartado c)
El mapa de memoria es el que se requiere para poder direccionar una
pastilla de 512Kx8 de EEPROM. Es decir, tendr una fila formada por dos
pastillas de memoria que se direccionarn a la vez, una contendr los 8
bits superiores y otra los 8 bits inferiores de cada direccin.

A19 A18 A0

FFFFF h 0 1 1024 K 1
1 Libre
80000 h 1 0 512 K

Fila de
7FFFF h 0 1 512 K 1
0 pastillas
00000 h 1 0 0K
EEPROM

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas
Tema 5 Hoja: 36 / 36
Memorias

Bus de direcciones A19-A0

A18-A0 A18-A0
A19

512K x 8 512K x 8
CS EEPROM D7-D0 CS EEPROM D7-D0
D7-D0

D15-D8

Bus de datos D15-D0

Departamento de automtica Estructura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. I. de Gestin / Sistemas